var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.findInternal=function(h,f,b){h instanceof String&&(h=String(h));for(var c=h.length,a=0;a<c;a++){var k=h[a];if(f.call(b,k,a,h))return{i:a,v:k}}return{i:-1,v:void 0}};$jscomp.ASSUME_ES5=!1;$jscomp.ASSUME_NO_NATIVE_MAP=!1;$jscomp.ASSUME_NO_NATIVE_SET=!1;$jscomp.SIMPLE_FROUND_POLYFILL=!1;
$jscomp.defineProperty=$jscomp.ASSUME_ES5||"function"==typeof Object.defineProperties?Object.defineProperty:function(h,f,b){h!=Array.prototype&&h!=Object.prototype&&(h[f]=b.value)};$jscomp.getGlobal=function(h){h=["object"==typeof window&&window,"object"==typeof self&&self,"object"==typeof global&&global,h];for(var f=0;f<h.length;++f){var b=h[f];if(b&&b.Math==Math)return b}return globalThis};$jscomp.global=$jscomp.getGlobal(this);
$jscomp.polyfill=function(h,f,b,c){if(f){b=$jscomp.global;h=h.split(".");for(c=0;c<h.length-1;c++){var a=h[c];a in b||(b[a]={});b=b[a]}h=h[h.length-1];c=b[h];f=f(c);f!=c&&null!=f&&$jscomp.defineProperty(b,h,{configurable:!0,writable:!0,value:f})}};$jscomp.polyfill("Array.prototype.find",function(h){return h?h:function(f,b){return $jscomp.findInternal(this,f,b).v}},"es6","es3");$jscomp.polyfill("Object.is",function(h){return h?h:function(f,b){return f===b?0!==f||1/f===1/b:f!==f&&b!==b}},"es6","es3");
$jscomp.polyfill("Array.prototype.includes",function(h){return h?h:function(f,b){var c=this;c instanceof String&&(c=String(c));var a=c.length;b=b||0;for(0>b&&(b=Math.max(b+a,0));b<a;b++){var k=c[b];if(k===f||Object.is(k,f))return!0}return!1}},"es7","es3");
$jscomp.checkStringArgs=function(h,f,b){if(null==h)throw new TypeError("The 'this' value for String.prototype."+b+" must not be null or undefined");if(f instanceof RegExp)throw new TypeError("First argument to String.prototype."+b+" must not be a regular expression");return h+""};$jscomp.polyfill("String.prototype.includes",function(h){return h?h:function(f,b){return-1!==$jscomp.checkStringArgs(this,f,"includes").indexOf(f,b||0)}},"es6","es3");
$jscomp.owns=function(h,f){return Object.prototype.hasOwnProperty.call(h,f)};$jscomp.polyfill("Object.values",function(h){return h?h:function(f){var b=[],c;for(c in f)$jscomp.owns(f,c)&&b.push(f[c]);return b}},"es8","es3");if("undefined"===typeof Recite||!Recite)var Recite={};
Recite=function(){function h(a){var b={persist:!0,autoEnable:!1,observeDom:!0,selectionMethod:"tooltip",rootNode:document.body,css:Recite.baseUrl+"/assets/"+Recite.version+"/css/recite.css",enableButton:".recite-enable",enableFragment:"#recite-enable",enableButtonToggle:!1,buttonDeactivateContent:"Deactivate Recite",buttonDeactivateContentElement:".recite-enable",parser:Recite.Parser.Html,autoCache:!0,defaultLanguage:null,showBrand:!0,shadowDomSupport:!1,classname:null,button:null,wrapTag:null,mode:null};
a=a||{};a=Recite.Util.merge(b,a);f(a);return a}function f(a,b){"undefined"===typeof b&&(b=Recite);Recite.Util.each(a,function(a,e){a=b[a];"undefined"!==typeof a&&(a.setOptions?a.setOptions(e):f(e,a))})}function b(b){a=h(Recite.Util.merge(a,b));try{a=h(Recite.Util.merge(a,JSON.parse("".replace("{dot}","."))))}catch(q){Recite.Debug.log("API Options are not loaded correctly")}Recite.Debug.log("Recite","(Version "+Recite.version+") Load called with options:",b);b=Recite.Sizzle(a.enableButton);
Recite.Event.publish("Recite:load");var e=Recite.Storage.Cookie.load("Recite.Persist");null!==a.enableFragment&&window.location.hash===a.enableFragment&&Recite.enable();(a.autoEnable&&!1!==e||a.persist&&!0===e)&&Recite.enable();null!==a.enableButton&&Recite.DomEvent.add(b,"click",function(){a.enableButtonToggle?c?Recite.disable():Recite.enable():Recite.enable()});Recite.Event.subscribe("Recite:ModuleEvent",function(a,b){Recite.Tracker.track(b.name,b.event)})}var c=!1,a={};return{namespace:function(){var a=
arguments,b=null,c,d;for(c=0;c<a.length;c+=1){var p=(""+a[c]).split(".");b=Recite;for(d="Recite"===p[0]?1:0;d<p.length;d+=1)b[p[d]]=b[p[d]]||{},b=b[p[d]]}return b},load:function(a){"complete"===document.readyState||"interactive"===document.readyState?b(a):Recite.DomEvent.add(window,"load",function(){b(a)})},enable:function(){if(c)return Recite.Debug.log("Recite","Already enabled, not re-enabling."),null;var b=a.autoEnable||Recite.Storage.Cookie.load("Recite.Persist");Recite.Stats.log("launch",b?"auto":
"click",null);Recite.Stats.log("page","view",self.location.href);a.persist&&Recite.Storage.Cookie.save("Recite.Persist",!0,365);a.enableButtonToggle&&(b=Recite.Sizzle(a.buttonDeactivateContentElement),Recite.Util.each(b,function(b,c){c.innerHTML=a.buttonDeactivateContent}));Recite.AssetLoader.css(a.css,function(){Recite.Debug.log("Recite","Recite CSS loaded");Recite.Controls.load(document)});Recite.Event.subscribe("Controls:loaded",function(){Recite.Preferences.load();Recite.Controls.Desktop.applyTabOrder();
Recite.Util.each(Recite.Sizzle(".recite-version"),function(a,b){b.innerHTML="Ver: "+Recite.version})});Recite.Event.subscribe("Recite.Parser:parsed",function(){a.observeDom&&Recite.Dom.Observer.observe(document.getElementById("recite-wrapper"))});Recite.Event.subscribe("Preferences:load",function(){null!==a.defaultLanguage&&null===Recite.Preferences.get("language")&&Recite.Preferences.set("language",a.defaultLanguage)});"tooltip"===a.selectionMethod?window.setTimeout(function(){if(null!==a.rootNode){var b=
a.parser.parse(a.rootNode);Recite.PlayerControls.invoke(b)}},0):"highlight"===a.selectionMethod&&(a.observeDom=!1,Recite.Selection.setOptions({playOnSelection:!0}));Recite.FrameUpdater.enabled()&&Recite.FrameUpdater.load();Recite.Docreader.enabled()&&Recite.Docreader.load();Recite.Language.Translate.init();Recite.Event.publish("Recite:enable");Recite.Debug.log("Recite","Recite enabled (Version:"+Recite.version+")");Recite.Tracker.track("enable");Recite.Stats.log("page","view",null);c=!0;Recite.Storage.Cookie.save("Recite.Persist",
!0,365)},disable:function(a){var b=Recite.Controls.disableOverlay();"undefined"!=typeof a?(Recite.Event.publish("Recite:disable"),Recite.Storage.Cookie.save("Recite.Persist",!1),Recite.Stats.log("close","direct",null),window.location.reload()):(Recite.Gui.Modal.show(Recite.Message.getMessage("toolbarCloseHeader","About to close!"),Recite.Message.getMessage("toolbarCloseDialog","You are about to close the Recite Me toolbar.  Are you sure you wish to continue? This will cause the page to be refreshed and you will lose any unsaved data."),
Recite.Message.getMessage("toolbarCloseOk","OK"),Recite.Message.getMessage("toolbarCloseCancel","Cancel"),function(){Recite.Event.publish("Recite:disable");Recite.Storage.Cookie.save("Recite.Persist",!1);Recite.Stats.log("close","confirm",null);window.location.reload()},function(){Recite.Gui.Notification.show("Close operation canceled");Recite.Stats.log("close","cancel",null);Recite.Controls.reEnableOverlay(b)}),Recite.Stats.log("close","intent",null))},isEnabled:function(){return c},getOptions:function(b){if("undefined"===
typeof b)return a;var e;b=b.split(".");var c=a;for(e=0;e<b.length;e++)if(c=c[b[e]],"undefined"===typeof c)return null;return c},version:"3.2.69",baseUrl:"https://api.reciteme.com"}}();null!==null&&null();Recite.namespace("Recite.Util");
Recite.Util=function(){var h={},f=[],b=Object.prototype.toString,c=null;f["[object Boolean]"]="boolean";f["[object Number]"]="number";f["[object String]"]="string";f["[object Function]"]="function";f["[object Array]"]="array";f["[object Date]"]="date";f["[object RegExp]"]="regexp";f["[object Object]"]="object";String.prototype.trim||(String.prototype.trim=function(){return this.replace(/^\s\s*/,"").replace(/\s\s*$/,"")},String.prototype.ltrim=function(){return this.replace(/^\s+/,"")},String.prototype.rtrim=
function(){return this.replace(/\s+$/,"")},String.prototype.fulltrim=function(){return this.replace(/(?:(?:^|\n)\s+|\s+(?:$|\n))/g,"").replace(/\s+/g," ")});return{isFunction:function(a){return"function"===Recite.Util.type(a)},isArray:Array.isArray||function(a){return"array"===Recite.Util.type(a)},isWindow:function(a){return a&&"object"===typeof a&&"setInterval"in a},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return null==a?String(a):f[b.call(a)]||"object"},clone:function(a){return ReciteJSON.parse(ReciteJSON.stringify(a))},
guid:function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(a){var b=16*Math.random()|0;return("x"==a?b:b&3|8).toString(16)})},each:function(a,b,e){var c,d=0,p=a.length,f=void 0===p;if(e)if(f)for(c in a){if(!1===b.apply(a[c],e))break}else for(;d<p&&!1!==b.apply(a[d++],e););else if(f)for(c in a){if(!1===b.call(a[c],c,a[c]))break}else for(;d<p&&!1!==b.call(a[d],d,a[d++]););return a},merge:function(a,b){for(var e in b)try{a[e]=b[e].constructor===Object?Recite.Util.merge(a[e],
b[e]):b[e]}catch(q){a[e]=b[e]}return a},inArray:function(b,c,e){if(c){if(Array.prototype.indexOf)return Array.prototype.indexOf.call(c,b,e);var a=c.length;for(e=e?0>e?Math.max(0,a+e):e:0;e<a;e++)if(e in c&&c[e]===b)return e}return-1},getWindowLocationOrigin:function(b){return b.location.origin||b.location.protocol+"//"+b.location.host},buildQueryString:function(b){var a="";Recite.Util.each(b,function(b,c){a+="&"+b+"="+encodeURIComponent(c)});return a="?"+a.substring(1)},unSetIFramePointerEvents:function(){if(null==
c){var b=Recite.Sizzle("iframe");c=[];Recite.Util.each(b,function(b,a){c.push({frame:a,state:void 0==a.style.pointerEvents?"all":a.style.pointerEvents})})}Recite.Util.each(c,function(b,a){a.frame.style.pointerEvents="none"})},reSetIFramePointerEvents:function(){null!==c&&Recite.Util.each(c,function(b,c){c.frame.style.pointerEvents=c.state})},setOptions:function(b){h=Recite.Util.merge(h,b)}}}();Recite.namespace("Event");
Recite.Event=function(){var h={},f=-1;return{publish:function(b,c){if(!h[b])return!1;setTimeout(function(){for(var a=h[b],f=a?a.length:0;f--;)a[f].func(b,c)},0);return!0},subscribe:function(b,c){h[b]||(h[b]=[]);var a=(++f).toString();h[b].push({token:a,func:c});return a},unsubscribe:function(b){for(var c in h)if(h[c])for(var a=0,f=h[c].length;a<f;a++)if(h[c][a].token===b)return h[c].splice(a,1),b;return!1}}}();Recite.namespace("Debug");
Recite.Debug=function(){var h={log:!1};return{setOptions:function(f){h=Recite.Util.merge(h,f)},enable:function(){h.log=!0},log:function(f){null===f&&(f="Recite.Debug");arguments[0]="["+f+"]";h.log&&window.console&&Function.apply.call(console.log,console,arguments)}}}();Recite.namespace("Recite.DomEvent");
Recite.DomEvent=function(){return{add:function(h,f,b){h=Recite.Util.isArray(h)?h:[h];Recite.Util.each(h,function(c,a){a.addEventListener?a.addEventListener(f,b,!1):a.attachEvent&&(a["e"+f+b]=b,a[f+b]=function(){var c=window.event;c.target=c.target||c.srcElement;a["e"+f+b](c)},a.attachEvent("on"+f,a[f+b]))})},remove:function(h,f,b){h=Recite.Util.isArray(h)?h:[h];Recite.Util.each(h,function(c,a){a.removeEventListener?a.removeEventListener(f,b,!1):a.detachEvent&&"undefined"!==typeof a[f+b]&&(a.detachEvent("on"+
f,a[f+b]),a[f+b]=null,a["e"+f+b]=null)})}}}();Recite.namespace("XDM");
Recite.XDM=function(){var h,f,b=1,c;return{postMessage:function(a,c,e){c&&(e=e||parent,window.postMessage?e.postMessage(a,c.replace(/([^:]+:\/\/[^\/]+).*/,"$1")):c&&(e.location=c.replace(/#.*$/,"")+"#"+ +new Date+b++ +"&"+a))},receiveMessage:function(b,k){window.postMessage?(b&&(c=function(a){if("string"===typeof k&&a.origin!==k||"[object Function]"===Object.prototype.toString.call(k)&&!1===k(a.origin))return!1;b(a)}),Recite.DomEvent.add(window,"message",c)):(h&&clearInterval(h),h=null,b&&(h=setInterval(function(){var a=
document.location.hash,c=/^#?\d+&/;a!==f&&c.test(a)&&(f=a,b({data:a.replace(c,"")}))},100)))}}}();
(function(){function h(b,a,d,e,l,r){l=0;for(var w=e.length;l<w;l++){var v=e[l];if(v){var g=!1;for(v=v[b];v;){if(v[c]===d){g=e[v.sizset];break}1!==v.nodeType||r||(v[c]=d,v.sizset=l);if(v.nodeName.toLowerCase()===a){g=v;break}v=v[b]}e[l]=g}}}function f(b,a,d,e,l,r){l=0;for(var w=e.length;l<w;l++){var v=e[l];if(v){var g=!1;for(v=v[b];v;){if(v[c]===d){g=e[v.sizset];break}if(1===v.nodeType)if(r||(v[c]=d,v.sizset=l),"string"!==typeof a){if(v===a){g=!0;break}}else if(0<n.filter(a,[v]).length){g=v;break}v=
v[b]}e[l]=g}}}var b=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,c="sizcache"+(Math.random()+"").replace(".",""),a=0,k=Object.prototype.toString,e=!1,q=!0,d=/\\/g,p=/\r\n/g,m=/\W/;[0,0].sort(function(){q=!1;return 0});var n=function(a,d,e,c){e=e||[];var w=d=d||document;if(1!==d.nodeType&&9!==d.nodeType)return[];if(!a||"string"!==typeof a)return e;var v,g,p,f=!0,q=n.isXML(d),m=[],y=a;do if(b.exec(""),v=b.exec(y))if(y=
v[3],m.push(v[1]),v[2]){var C=v[3];break}while(v);if(1<m.length&&x.exec(a))if(2===m.length&&l.relative[m[0]])var h=D(m[0]+m[1],d,c);else for(h=l.relative[m[0]]?[d]:n(m.shift(),d);m.length;)a=m.shift(),l.relative[a]&&(a+=m.shift()),h=D(a,h,c);else if(!c&&1<m.length&&9===d.nodeType&&!q&&l.match.ID.test(m[0])&&!l.match.ID.test(m[m.length-1])&&(v=n.find(m.shift(),d,q),d=v.expr?n.filter(v.expr,v.set)[0]:v.set[0]),d)for(v=c?{expr:m.pop(),set:r(c)}:n.find(m.pop(),1!==m.length||"~"!==m[0]&&"+"!==m[0]||!d.parentNode?
d:d.parentNode,q),h=v.expr?n.filter(v.expr,v.set):v.set,0<m.length?g=r(h):f=!1;m.length;)v=p=m.pop(),l.relative[p]?v=m.pop():p="",null==v&&(v=d),l.relative[p](g,v,q);else g=[];g||(g=h);g||n.error(p||a);if("[object Array]"===k.call(g))if(f)if(d&&1===d.nodeType)for(a=0;null!=g[a];a++)g[a]&&(!0===g[a]||1===g[a].nodeType&&n.contains(d,g[a]))&&e.push(h[a]);else for(a=0;null!=g[a];a++)g[a]&&1===g[a].nodeType&&e.push(h[a]);else e.push.apply(e,g);else r(g,e);C&&(n(C,w,e,c),n.uniqueSort(e));return e};n.uniqueSort=
function(a){if(B&&(e=q,a.sort(B),e))for(var b=1;b<a.length;b++)a[b]===a[b-1]&&a.splice(b--,1);return a};n.matches=function(a,b){return n(a,null,null,b)};n.matchesSelector=function(a,b){return 0<n(b,null,null,[a]).length};n.find=function(a,b,e){var c,w;if(!a)return[];var v=0;for(c=l.order.length;v<c;v++){var g=l.order[v];if(w=l.leftMatch[g].exec(a)){var r=w[1];w.splice(1,1);if("\\"!==r.substr(r.length-1)){w[1]=(w[1]||"").replace(d,"");var p=l.find[g](w,b,e);if(null!=p){a=a.replace(l.match[g],"");break}}}}p||
(p="undefined"!==typeof b.getElementsByTagName?b.getElementsByTagName("*"):[]);return{set:p,expr:a}};n.filter=function(a,b,d,e){for(var c,w,v,g,r,p,f,q,m=a,k=[],y=b,C=b&&b[0]&&n.isXML(b[0]);a&&b.length;){for(v in l.filter)if(null!=(c=l.leftMatch[v].exec(a))&&c[2]&&(p=l.filter[v],r=c[1],w=!1,c.splice(1,1),"\\"!==r.substr(r.length-1))){y===k&&(k=[]);if(l.preFilter[v])if(c=l.preFilter[v](c,y,d,k,e,C),!c)w=g=!0;else if(!0===c)continue;if(c)for(f=0;null!=(r=y[f]);f++)r&&(g=p(r,c,f,y),q=e^g,d&&null!=g?
q?w=!0:y[f]=!1:q&&(k.push(r),w=!0));if(void 0!==g){d||(y=k);a=a.replace(l.match[v],"");if(!w)return[];break}}if(a===m)if(null==w)n.error(a);else break;m=a}return y};n.error=function(a){throw Error("Syntax error, unrecognized expression: "+a);};var g=n.getText=function(a){var b;var d=a.nodeType;var e="";if(d)if(1===d||9===d||11===d){if("string"===typeof a.textContent)return a.textContent;if("string"===typeof a.innerText)return a.innerText.replace(p,"");for(a=a.firstChild;a;a=a.nextSibling)e+=g(a)}else{if(3===
d||4===d)return a.nodeValue}else for(d=0;b=a[d];d++)8!==b.nodeType&&(e+=g(b));return e},l=n.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,
POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(a){return a.getAttribute("href")},type:function(a){return a.getAttribute("type")}},relative:{"+":function(a,b){var d="string"===typeof b,e=d&&!m.test(b);d=d&&!e;e&&(b=b.toLowerCase());e=0;for(var c=a.length,w;e<c;e++)if(w=a[e]){for(;(w=w.previousSibling)&&1!==w.nodeType;);
a[e]=d||w&&w.nodeName.toLowerCase()===b?w||!1:w===b}d&&n.filter(b,a,!0)},">":function(a,b){var d,e="string"===typeof b,c=0,w=a.length;if(e&&!m.test(b))for(b=b.toLowerCase();c<w;c++){if(d=a[c])d=d.parentNode,a[c]=d.nodeName.toLowerCase()===b?d:!1}else{for(;c<w;c++)(d=a[c])&&(a[c]=e?d.parentNode:d.parentNode===b);e&&n.filter(b,a,!0)}},"":function(b,d,e){var c=a++,w=f;if("string"===typeof d&&!m.test(d)){var l=d=d.toLowerCase();w=h}w("parentNode",d,c,b,l,e)},"~":function(b,d,e){var c=a++,w=f;if("string"===
typeof d&&!m.test(d)){var l=d=d.toLowerCase();w=h}w("previousSibling",d,c,b,l,e)}},find:{ID:function(a,b,d){if("undefined"!==typeof b.getElementById&&!d)return(a=b.getElementById(a[1]))&&a.parentNode?[a]:[]},NAME:function(a,b){if("undefined"!==typeof b.getElementsByName){var d=[];b=b.getElementsByName(a[1]);for(var e=0,c=b.length;e<c;e++)b[e].getAttribute("name")===a[1]&&d.push(b[e]);return 0===d.length?null:d}},TAG:function(a,b){if("undefined"!==typeof b.getElementsByTagName)return b.getElementsByTagName(a[1])}},
preFilter:{CLASS:function(a,b,e,c,l,g){a=" "+a[1].replace(d,"")+" ";if(g)return a;g=0;for(var w;null!=(w=b[g]);g++)w&&(l^(w.className&&0<=(" "+w.className+" ").replace(/[\t\n\r]/g," ").indexOf(a))?e||c.push(w):e&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(d,"")},TAG:function(a,b){return a[1].replace(d,"").toLowerCase()},CHILD:function(b){if("nth"===b[1]){b[2]||n.error(b[0]);b[2]=b[2].replace(/^\+|\s*/g,"");var d=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec("even"===b[2]&&"2n"||"odd"===b[2]&&"2n+1"||
!/\D/.test(b[2])&&"0n+"+b[2]||b[2]);b[2]=d[1]+(d[2]||1)-0;b[3]=d[3]-0}else b[2]&&n.error(b[0]);b[0]=a++;return b},ATTR:function(a,b,e,c,g,r){b=a[1]=a[1].replace(d,"");!r&&l.attrMap[b]&&(a[1]=l.attrMap[b]);a[4]=(a[4]||a[5]||"").replace(d,"");"~="===a[2]&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(a,d,e,c,g){if("not"===a[1])if(1<(b.exec(a[3])||"").length||/^\w/.test(a[3]))a[3]=n(a[3],null,null,d);else return a=n.filter(a[3],d,e,1^g),e||c.push.apply(c,a),!1;else if(l.match.POS.test(a[0])||l.match.CHILD.test(a[0]))return!0;
return a},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return!1===a.disabled&&"hidden"!==a.type},disabled:function(a){return!0===a.disabled},checked:function(a){return!0===a.checked},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return!0===a.selected},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,d){return!!n(d[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),
d=a.type;return"input"===a.nodeName.toLowerCase()&&"text"===d&&(b===d||null===b)},radio:function(a){return"input"===a.nodeName.toLowerCase()&&"radio"===a.type},checkbox:function(a){return"input"===a.nodeName.toLowerCase()&&"checkbox"===a.type},file:function(a){return"input"===a.nodeName.toLowerCase()&&"file"===a.type},password:function(a){return"input"===a.nodeName.toLowerCase()&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return("input"===b||"button"===b)&&"submit"===a.type},
image:function(a){return"input"===a.nodeName.toLowerCase()&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return("input"===b||"button"===b)&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return 0===b},last:function(a,b,d,e){return b===e.length-
1},even:function(a,b){return 0===b%2},odd:function(a,b){return 1===b%2},lt:function(a,b,d){return b<d[3]-0},gt:function(a,b,d){return b>d[3]-0},nth:function(a,b,d){return d[3]-0===b},eq:function(a,b,d){return d[3]-0===b}},filter:{PSEUDO:function(a,b,d,e){var c=b[1],r=l.filters[c];if(r)return r(a,d,b,e);if("contains"===c)return 0<=(a.textContent||a.innerText||g([a])||"").indexOf(b[3]);if("not"===c){b=b[3];d=0;for(e=b.length;d<e;d++)if(b[d]===a)return!1;return!0}n.error(c)},CHILD:function(a,b){var d;
var e=b[1];var l=a;switch(e){case "only":case "first":for(;l=l.previousSibling;)if(1===l.nodeType)return!1;if("first"===e)return!0;l=a;case "last":for(;l=l.nextSibling;)if(1===l.nodeType)return!1;return!0;case "nth":e=b[2];var g=b[3];if(1===e&&0===g)return!0;b=b[0];if((d=a.parentNode)&&(d[c]!==b||!a.nodeIndex)){var r=0;for(l=d.firstChild;l;l=l.nextSibling)1===l.nodeType&&(l.nodeIndex=++r);d[c]=b}a=a.nodeIndex-g;return 0===e?0===a:0===a%e&&0<=a/e}},ID:function(a,b){return 1===a.nodeType&&a.getAttribute("id")===
b},TAG:function(a,b){return"*"===b&&1===a.nodeType||!!a.nodeName&&a.nodeName.toLowerCase()===b},CLASS:function(a,b){return-1<(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)},ATTR:function(a,b){var d=b[1];a=n.attr?n.attr(a,d):l.attrHandle[d]?l.attrHandle[d](a):null!=a[d]?a[d]:a.getAttribute(d);d=a+"";var e=b[2];b=b[4];return null==a?"!="===e:!e&&n.attr?null!=a:"="===e?d===b:"*="===e?0<=d.indexOf(b):"~="===e?0<=(" "+d+" ").indexOf(b):b?"!="===e?d!==b:"^="===e?0===d.indexOf(b):"$="===e?d.substr(d.length-
b.length)===b:"|="===e?d===b||d.substr(0,b.length+1)===b+"-":!1:d&&!1!==a},POS:function(a,b,d,e){var c=l.setFilters[b[2]];if(c)return c(a,d,b,e)}}},x=l.match.POS,u=function(a,b){return"\\"+(b-0+1)},z;for(z in l.match)l.match[z]=new RegExp(l.match[z].source+/(?![^\[]*\])(?![^\(]*\))/.source),l.leftMatch[z]=new RegExp(/(^(?:.|\r|\n)*?)/.source+l.match[z].source.replace(/\\(\d+)/g,u));l.match.globalPOS=x;var r=function(a,b){a=Array.prototype.slice.call(a,0);return b?(b.push.apply(b,a),b):a};try{Array.prototype.slice.call(document.documentElement.childNodes,
0)[0].nodeType}catch(v){r=function(a,b){var d=0;b=b||[];if("[object Array]"===k.call(a))Array.prototype.push.apply(b,a);else if("number"===typeof a.length)for(var e=a.length;d<e;d++)b.push(a[d]);else for(;a[d];d++)b.push(a[d]);return b}}if(document.documentElement.compareDocumentPosition)var B=function(a,b){return a===b?(e=!0,0):a.compareDocumentPosition&&b.compareDocumentPosition?a.compareDocumentPosition(b)&4?-1:1:a.compareDocumentPosition?-1:1};else{B=function(a,b){if(a===b)return e=!0,0;if(a.sourceIndex&&
b.sourceIndex)return a.sourceIndex-b.sourceIndex;var d=[],c=[];var l=a.parentNode;var g=b.parentNode;var r=l;if(l===g)return A(a,b);if(!l)return-1;if(!g)return 1;for(;r;)d.unshift(r),r=r.parentNode;for(r=g;r;)c.unshift(r),r=r.parentNode;l=d.length;g=c.length;for(r=0;r<l&&r<g;r++)if(d[r]!==c[r])return A(d[r],c[r]);return r===l?A(a,c[r],-1):A(d[r],b,1)};var A=function(a,b,d){if(a===b)return d;for(a=a.nextSibling;a;){if(a===b)return-1;a=a.nextSibling}return 1}}(function(){var a=document.createElement("div"),
b="script"+(new Date).getTime(),d=document.documentElement;a.innerHTML="<a name='"+b+"'/>";d.insertBefore(a,d.firstChild);document.getElementById(b)&&(l.find.ID=function(a,b,d){if("undefined"!==typeof b.getElementById&&!d)return(b=b.getElementById(a[1]))?b.id===a[1]||"undefined"!==typeof b.getAttributeNode&&b.getAttributeNode("id").nodeValue===a[1]?[b]:void 0:[]},l.filter.ID=function(a,b){var d="undefined"!==typeof a.getAttributeNode&&a.getAttributeNode("id");return 1===a.nodeType&&d&&d.nodeValue===
b});d.removeChild(a);d=a=null})();(function(){var a=document.createElement("div");a.appendChild(document.createComment(""));0<a.getElementsByTagName("*").length&&(l.find.TAG=function(a,b){b=b.getElementsByTagName(a[1]);if("*"===a[1]){a=[];for(var d=0;b[d];d++)1===b[d].nodeType&&a.push(b[d]);b=a}return b});a.innerHTML="<a href='#'></a>";a.firstChild&&"undefined"!==typeof a.firstChild.getAttribute&&"#"!==a.firstChild.getAttribute("href")&&(l.attrHandle.href=function(a){return a.getAttribute("href",
2)});a=null})();document.querySelectorAll&&function(){var a=n,b=document.createElement("div");b.innerHTML="<p class='TEST'></p>";if(!b.querySelectorAll||0!==b.querySelectorAll(".TEST").length){n=function(b,d,e,c){d=d||document;if(!c&&!n.isXML(d)){var g=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(g&&(1===d.nodeType||9===d.nodeType)){if(g[1])return r(d.getElementsByTagName(b),e);if(g[2]&&l.find.CLASS&&d.getElementsByClassName)return r(d.getElementsByClassName(g[2]),e)}if(9===d.nodeType){if("body"===
b&&d.body)return r([d.body],e);if(g&&g[3]){var p=d.getElementById(g[3]);if(p&&p.parentNode){if(p.id===g[3])return r([p],e)}else return r([],e)}try{return r(d.querySelectorAll(b),e)}catch(L){}}else if(1===d.nodeType&&"object"!==d.nodeName.toLowerCase()){g=d;var f=(p=d.getAttribute("id"))||"__sizzle__",q=d.parentNode,m=/^\s*[+~]/.test(b);p?f=f.replace(/'/g,"\\$&"):d.setAttribute("id",f);m&&q&&(d=d.parentNode);try{if(!m||q)return r(d.querySelectorAll("[id='"+f+"'] "+b),e)}catch(L){}finally{p||g.removeAttribute("id")}}}return a(b,
d,e,c)};for(var d in a)n[d]=a[d];b=null}}();(function(){var a=document.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(document.createElement("div"),"div"),e=!1;try{b.call(document.documentElement,"[test!='']:sizzle")}catch(G){e=!0}n.matchesSelector=function(a,c){c=c.replace(/=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!n.isXML(a))try{if(e||!l.match.PSEUDO.test(c)&&!/!=/.test(c)){var g=b.call(a,c);if(g||!d||a.document&&11!==a.document.nodeType)return g}}catch(E){}return 0<
n(c,null,null,[a]).length}}})();(function(){var a=document.createElement("div");a.innerHTML="<div class='test e'></div><div class='test'></div>";a.getElementsByClassName&&0!==a.getElementsByClassName("e").length&&(a.lastChild.className="e",1!==a.getElementsByClassName("e").length&&(l.order.splice(1,0,"CLASS"),l.find.CLASS=function(a,b,d){if("undefined"!==typeof b.getElementsByClassName&&!d)return b.getElementsByClassName(a[1])},a=null))})();n.contains=document.documentElement.contains?function(a,
b){return a!==b&&(a.contains?a.contains(b):!0)}:document.documentElement.compareDocumentPosition?function(a,b){return!!(a.compareDocumentPosition(b)&16)}:function(){return!1};n.isXML=function(a){return(a=(a?a.ownerDocument||a:0).documentElement)?"HTML"!==a.nodeName:!1};var D=function(a,b,d){var e,c=[],g="";for(b=b.nodeType?[b]:b;e=l.match.PSEUDO.exec(a);)g+=e[0],a=a.replace(l.match.PSEUDO,"");a=l.relative[a]?a+"*":a;e=0;for(var r=b.length;e<r;e++)n(a,b[e],c,d);return n.filter(g,c)};window.Recite.Sizzle=
n})();
(function(h){function f(a,g){a=a?a:"";g=g||{};if("object"==typeof a&&a.hasOwnProperty("_tc_id"))return a;a=b(a);var r=a.r,m=a.g,n=a.b,w=a.a,h=u(100*w)/100,x=g.format||a.format;1>r&&(r=u(r));1>m&&(m=u(m));1>n&&(n=u(n));return{ok:a.ok,format:x,_tc_id:l++,alpha:w,getAlpha:function(){return w},setAlpha:function(a){w=q(a);h=u(100*w)/100},toHsv:function(){var a=k(r,m,n);return{h:360*a.h,s:a.s,v:a.v,a:w}},toHsvString:function(){var a=k(r,m,n),b=u(360*a.h),d=u(100*a.s);a=u(100*a.v);return 1==w?"hsv("+b+", "+
d+"%, "+a+"%)":"hsva("+b+", "+d+"%, "+a+"%, "+h+")"},toHsl:function(){var a=c(r,m,n);return{h:360*a.h,s:a.s,l:a.l,a:w}},toHslString:function(){var a=c(r,m,n),b=u(360*a.h),d=u(100*a.s);a=u(100*a.l);return 1==w?"hsl("+b+", "+d+"%, "+a+"%)":"hsla("+b+", "+d+"%, "+a+"%, "+h+")"},toHex:function(a){return e(r,m,n,a)},toHexString:function(a){return"#"+e(r,m,n,a)},toRgb:function(){return{r:u(r),g:u(m),b:u(n),a:w}},toRgbString:function(){return 1==w?"rgb("+u(r)+", "+u(m)+", "+u(n)+")":"rgba("+u(r)+", "+u(m)+
", "+u(n)+", "+h+")"},toPercentageRgb:function(){return{r:u(100*d(r,255))+"%",g:u(100*d(m,255))+"%",b:u(100*d(n,255))+"%",a:w}},toPercentageRgbString:function(){return 1==w?"rgb("+u(100*d(r,255))+"%, "+u(100*d(m,255))+"%, "+u(100*d(n,255))+"%)":"rgba("+u(100*d(r,255))+"%, "+u(100*d(m,255))+"%, "+u(100*d(n,255))+"%, "+h+")"},toName:function(){return 0===w?"transparent":D[e(r,m,n,!0)]||!1},toFilter:function(a){var b=e(r,m,n),d=b,c=Math.round(255*parseFloat(w)).toString(16),l=c,q=g&&g.gradientType?"GradientType = 1, ":
"";a&&(a=f(a),d=a.toHex(),l=Math.round(255*parseFloat(a.alpha)).toString(16));return"progid:DXImageTransform.Microsoft.gradient("+q+"startColorstr=#"+p(c)+b+",endColorstr=#"+p(l)+d+")"},toString:function(a){var b=!!a;a=a||this.format;var d=!1;b=!b&&1>w&&0<w&&("hex"===a||"hex6"===a||"hex3"===a||"name"===a);"rgb"===a&&(d=this.toRgbString());"prgb"===a&&(d=this.toPercentageRgbString());if("hex"===a||"hex6"===a)d=this.toHexString();"hex3"===a&&(d=this.toHexString(!0));"name"===a&&(d=this.toName());"hsl"===
a&&(d=this.toHslString());"hsv"===a&&(d=this.toHsvString());return b?this.toRgbString():d||this.toHexString()}}}function b(b){var e={r:0,g:0,b:0},c=1,l=!1,p=!1;if("string"==typeof b)a:{b=b.replace(n,"").replace(g,"").toLowerCase();var f=!1;if(A[b])b=A[b],f=!0;else if("transparent"==b){b={r:0,g:0,b:0,a:0,format:"name"};break a}var k;b=(k=v.rgb.exec(b))?{r:k[1],g:k[2],b:k[3]}:(k=v.rgba.exec(b))?{r:k[1],g:k[2],b:k[3],a:k[4]}:(k=v.hsl.exec(b))?{h:k[1],s:k[2],l:k[3]}:(k=v.hsla.exec(b))?{h:k[1],s:k[2],
l:k[3],a:k[4]}:(k=v.hsv.exec(b))?{h:k[1],s:k[2],v:k[3]}:(k=v.hex6.exec(b))?{r:parseInt(k[1],16),g:parseInt(k[2],16),b:parseInt(k[3],16),format:f?"name":"hex"}:(k=v.hex3.exec(b))?{r:parseInt(k[1]+""+k[1],16),g:parseInt(k[2]+""+k[2],16),b:parseInt(k[3]+""+k[3],16),format:f?"name":"hex"}:!1}if("object"==typeof b){if(b.hasOwnProperty("r")&&b.hasOwnProperty("g")&&b.hasOwnProperty("b"))e=b.g,l=b.b,e={r:255*d(b.r,255),g:255*d(e,255),b:255*d(l,255)},l=!0,p="%"===String(b.r).substr(-1)?"prgb":"rgb";else if(b.hasOwnProperty("h")&&
b.hasOwnProperty("s")&&b.hasOwnProperty("v")){b.s=m(b.s);b.v=m(b.v);p=b.h;f=b.s;e=b.v;p=6*d(p,360);f=d(f,100);e=d(e,100);l=x.floor(p);var h=p-l;p=e*(1-f);k=e*(1-h*f);f=e*(1-(1-h)*f);l%=6;e={r:255*[e,k,p,p,f,e][l],g:255*[f,e,e,k,p,p][l],b:255*[p,p,f,e,e,k][l]};l=!0;p="hsv"}else b.hasOwnProperty("h")&&b.hasOwnProperty("s")&&b.hasOwnProperty("l")&&(b.s=m(b.s),b.l=m(b.l),e=a(b.h,b.s,b.l),l=!0,p="hsl");b.hasOwnProperty("a")&&(c=b.a)}c=q(c);return{ok:l,format:b.format||p,r:z(255,r(e.r,0)),g:z(255,r(e.g,
0)),b:z(255,r(e.b,0)),a:c}}function c(a,b,e){a=d(a,255);b=d(b,255);e=d(e,255);var c=r(a,b,e),l=z(a,b,e),g=(c+l)/2;if(c==l)var p=l=0;else{var f=c-l;l=.5<g?f/(2-c-l):f/(c+l);switch(c){case a:p=(b-e)/f+(b<e?6:0);break;case b:p=(e-a)/f+2;break;case e:p=(a-b)/f+4}p/=6}return{h:p,s:l,l:g}}function a(a,b,e){function c(a,b,d){0>d&&(d+=1);1<d&&--d;return d<1/6?a+6*(b-a)*d:.5>d?b:d<2/3?a+(b-a)*(2/3-d)*6:a}a=d(a,360);b=d(b,100);e=d(e,100);if(0===b)e=b=a=e;else{var l=.5>e?e*(1+b):e+b-e*b,g=2*e-l;e=c(g,l,a+1/
3);b=c(g,l,a);a=c(g,l,a-1/3)}return{r:255*e,g:255*b,b:255*a}}function k(a,b,e){a=d(a,255);b=d(b,255);e=d(e,255);var c=r(a,b,e),l=z(a,b,e),g=c-l;if(c==l)var p=0;else{switch(c){case a:p=(b-e)/g+(b<e?6:0);break;case b:p=(e-a)/g+2;break;case e:p=(a-b)/g+4}p/=6}return{h:p,s:0===c?0:g/c,v:c}}function e(a,b,d,e){a=[p(u(a).toString(16)),p(u(b).toString(16)),p(u(d).toString(16))];return e&&a[0].charAt(0)==a[0].charAt(1)&&a[1].charAt(0)==a[1].charAt(1)&&a[2].charAt(0)==a[2].charAt(1)?a[0].charAt(0)+a[1].charAt(0)+
a[2].charAt(0):a.join("")}function q(a){a=parseFloat(a);if(isNaN(a)||0>a||1<a)a=1;return a}function d(a,b){var d=a;"string"==typeof d&&-1!=d.indexOf(".")&&1===parseFloat(d)&&(a="100%");d="string"===typeof a&&-1!=a.indexOf("%");a=z(b,r(0,parseFloat(a)));d&&(a=parseInt(a*b,10)/100);return 1E-6>x.abs(a-b)?1:a%b/parseFloat(b)}function p(a){return 1==a.length?"0"+a:""+a}function m(a){1>=a&&(a=100*a+"%");return a}var n=/^[\s,#]+/,g=/\s+$/,l=0,x=Math,u=x.round,z=x.min,r=x.max,B=x.random;f.fromRatio=function(a,
b){if("object"==typeof a){var d={},e;for(e in a)a.hasOwnProperty(e)&&(d[e]="a"===e?a[e]:m(a[e]));a=d}return f(a,b)};f.equals=function(a,b){return a&&b?f(a).toRgbString()==f(b).toRgbString():!1};f.random=function(){return f.fromRatio({r:B(),g:B(),b:B()})};f.desaturate=function(a,b){b=0===b?0:b||10;a=f(a).toHsl();a.s-=b/100;a.s=z(1,r(0,a.s));return f(a)};f.saturate=function(a,b){b=0===b?0:b||10;a=f(a).toHsl();a.s+=b/100;a.s=z(1,r(0,a.s));return f(a)};f.greyscale=function(a){return f.desaturate(a,100)};
f.lighten=function(a,b){b=0===b?0:b||10;a=f(a).toHsl();a.l+=b/100;a.l=z(1,r(0,a.l));return f(a)};f.darken=function(a,b){b=0===b?0:b||10;a=f(a).toHsl();a.l-=b/100;a.l=z(1,r(0,a.l));return f(a)};f.complement=function(a){a=f(a).toHsl();a.h=(a.h+180)%360;return f(a)};f.triad=function(a){var b=f(a).toHsl(),d=b.h;return[f(a),f({h:(d+120)%360,s:b.s,l:b.l}),f({h:(d+240)%360,s:b.s,l:b.l})]};f.tetrad=function(a){var b=f(a).toHsl(),d=b.h;return[f(a),f({h:(d+90)%360,s:b.s,l:b.l}),f({h:(d+180)%360,s:b.s,l:b.l}),
f({h:(d+270)%360,s:b.s,l:b.l})]};f.splitcomplement=function(a){var b=f(a).toHsl(),d=b.h;return[f(a),f({h:(d+72)%360,s:b.s,l:b.l}),f({h:(d+216)%360,s:b.s,l:b.l})]};f.analogous=function(a,b,d){b=b||6;d=d||30;var e=f(a).toHsl();d=360/d;a=[f(a)];for(e.h=(e.h-(d*b>>1)+720)%360;--b;)e.h=(e.h+d)%360,a.push(f(e));return a};f.monochromatic=function(a,b){b=b||6;var d=f(a).toHsv();a=d.h;var e=d.s;d=d.v;for(var c=[],l=1/b;b--;)c.push(f({h:a,s:e,v:d})),d=(d+l)%1;return c};f.readability=function(a,b){a=f(a).toRgb();
b=f(b).toRgb();return{brightness:Math.abs((299*a.r+587*a.g+114*a.b)/1E3-(299*b.r+587*b.g+114*b.b)/1E3),color:Math.max(a.r,b.r)-Math.min(a.r,b.r)+Math.max(a.g,b.g)-Math.min(a.g,b.g)+Math.max(a.b,b.b)-Math.min(a.b,b.b)}};f.readable=function(a,b){a=f.readability(a,b);return 125<a.brightness&&500<a.color};f.mostReadable=function(a,b){for(var d=null,e=0,c=!1,l=0;l<b.length;l++){var g=f.readability(a,b[l]),r=125<g.brightness&&500<g.color;g=g.brightness/125*3+g.color/500;if(r&&!c||r&&c&&g>e||!r&&!c&&g>e)c=
r,e=g,d=f(b[l])}return d};var A=f.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",
darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",
gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",
lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",
olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",
slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},D=f.hexNames=function(a){var b={},d;for(d in a)a.hasOwnProperty(d)&&(b[a[d]]=d);return b}(A),v={rgb:/rgb[\s|\(]+((?:[-\+]?\d*\.\d+%?)|(?:[-\+]?\d+%?))[,|\s]+((?:[-\+]?\d*\.\d+%?)|(?:[-\+]?\d+%?))[,|\s]+((?:[-\+]?\d*\.\d+%?)|(?:[-\+]?\d+%?))\s*\)?/,rgba:/rgba[\s|\(]+((?:[-\+]?\d*\.\d+%?)|(?:[-\+]?\d+%?))[,|\s]+((?:[-\+]?\d*\.\d+%?)|(?:[-\+]?\d+%?))[,|\s]+((?:[-\+]?\d*\.\d+%?)|(?:[-\+]?\d+%?))[,|\s]+((?:[-\+]?\d*\.\d+%?)|(?:[-\+]?\d+%?))\s*\)?/,
hsl:/hsl[\s|\(]+((?:[-\+]?\d*\.\d+%?)|(?:[-\+]?\d+%?))[,|\s]+((?:[-\+]?\d*\.\d+%?)|(?:[-\+]?\d+%?))[,|\s]+((?:[-\+]?\d*\.\d+%?)|(?:[-\+]?\d+%?))\s*\)?/,hsla:/hsla[\s|\(]+((?:[-\+]?\d*\.\d+%?)|(?:[-\+]?\d+%?))[,|\s]+((?:[-\+]?\d*\.\d+%?)|(?:[-\+]?\d+%?))[,|\s]+((?:[-\+]?\d*\.\d+%?)|(?:[-\+]?\d+%?))[,|\s]+((?:[-\+]?\d*\.\d+%?)|(?:[-\+]?\d+%?))\s*\)?/,hsv:/hsv[\s|\(]+((?:[-\+]?\d*\.\d+%?)|(?:[-\+]?\d+%?))[,|\s]+((?:[-\+]?\d*\.\d+%?)|(?:[-\+]?\d+%?))[,|\s]+((?:[-\+]?\d*\.\d+%?)|(?:[-\+]?\d+%?))\s*\)?/,
hex3:/^([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/};"undefined"!==typeof module&&module.exports?module.exports=f:"undefined"!==typeof define&&define(function(){return f});window.Recite.Tinycolor=f})(this);
(function(h){function f(a,b){for(var d=a.length;d--;)if(a[d]===b)return d;return-1}function b(b){var e,l;var r=b.keyCode;-1==f(x,r)&&x.push(r);if(93==r||224==r)r=91;if(r in m)for(e in m[r]=!0,g)g[e]==r&&(c[e]=!0);else{for(d in m)m[d]=b[u[d]];if(c.filter.call(this,b)&&r in p){var k=a();for(l=0;l<p[r].length;l++){var q=p[r][l];if(q.scope==k||"all"==q.scope){var n=0<q.mods.length;for(e in m)if(!m[e]&&-1<f(q.mods,+e)||m[e]&&-1==f(q.mods,+e))n=!1;(0!=q.mods.length||m[16]||m[18]||m[17]||m[91])&&!n||!1!==
q.method(b,q)||(b.preventDefault?b.preventDefault():b.returnValue=!1,b.stopPropagation&&b.stopPropagation(),b.cancelBubble&&(b.cancelBubble=!0))}}}}}function c(a,b,d){var c=k(a);void 0===d&&(d=b,b="all");for(var g=0;g<c.length;g++){var r=[];a=c[g].split("+");1<a.length&&(r=e(a),a=[a[a.length-1]]);a=a[0];a=l[a]||a.toUpperCase().charCodeAt(0);a in p||(p[a]=[]);p[a].push({shortcut:c[g],scope:b,method:d,key:c[g],mods:r})}}function a(){return n||"all"}function k(a){a=a.replace(/\s/g,"");a=a.split(",");
""==a[a.length-1]&&(a[a.length-2]+=",");return a}function e(a){a=a.slice(0,a.length-1);for(var b=0;b<a.length;b++)a[b]=g[a[b]];return a}function q(a,b,d){a.addEventListener?a.addEventListener(b,d,!1):a.attachEvent&&a.attachEvent("on"+b,function(){d(window.event)})}var d,p={},m={16:!1,18:!1,17:!1,91:!1},n="all",g={"\u21e7":16,shift:16,"\u2325":18,alt:18,option:18,"\u2303":17,ctrl:17,control:17,"\u2318":91,command:91},l={backspace:8,tab:9,clear:12,enter:13,"return":13,esc:27,escape:27,space:32,left:37,
up:38,right:39,down:40,del:46,"delete":46,home:36,end:35,pageup:33,pagedown:34,",":188,".":190,"/":191,"`":192,"-":189,"=":187,";":186,"'":222,"[":219,"]":221,"\\":220},x=[];for(d=1;20>d;d++)l["f"+d]=111+d;var u={16:"shiftKey",18:"altKey",17:"ctrlKey",91:"metaKey"};for(d in g)c[d]=!1;q(document,"keydown",function(a){b(a)});q(document,"keyup",function(a){a=a.keyCode;var b,d=f(x,a);0<=d&&x.splice(d,1);if(93==a||224==a)a=91;if(a in m)for(b in m[a]=!1,g)g[b]==a&&(c[b]=!1)});q(window,"focus",function(){for(d in m)m[d]=
!1;for(d in g)c[d]=!1});var z=h.key;h.key=c;h.key.setScope=function(a){n=a||"all"};h.key.getScope=a;h.key.deleteScope=function(a){var b,d;for(b in p){var e=p[b];for(d=0;d<e.length;)e[d].scope===a?e.splice(d,1):d++}};h.key.filter=function(a){a=(a.target||a.srcElement).tagName;return!("INPUT"==a||"SELECT"==a||"TEXTAREA"==a)};h.key.isPressed=function(a){"string"==typeof a&&(a=l[a]||a.toUpperCase().charCodeAt(0));return-1!=f(x,a)};h.key.getPressedKeyCodes=function(){return x.slice(0)};h.key.noConflict=
function(){var a=h.key;h.key=z;return a};h.key.unbind=function(b,d){var c=[],g,f;var r=k(b);for(f=0;f<r.length;f++){var q=r[f].split("+");1<q.length&&(c=e(q),b=q[q.length-1]);b=l[b]||b.toUpperCase().charCodeAt(0);void 0===d&&(d=a());if(!p[b])break;for(g in p[b]){q=p[b][g];var m;if(m=q.scope===d)a:if(q=q.mods,q.length!=c.length)m=!1;else{for(m=0;m<q.length;m++)if(q[m]!==c[m]){m=!1;break a}m=!0}m&&(p[b][g]={})}}};"undefined"!==typeof module&&(module.exports=key);window.Recite.Key=key})(this);
Recite.AssetLoader=function(h){function f(a,b){a=h.createElement(a);for(var d in b)b.hasOwnProperty(d)&&a.setAttribute(d,b[d]);a.setAttribute("data-recite-skip","true");return a}function b(b){var d=p[b];if(d){var e=d.callback;var c=d.urls;c.shift();m=0;c.length||(e&&e.call(d.context,d.obj),p[b]=null,n[b].length&&a(b))}}function c(){var a=navigator.userAgent;q={async:!0===h.createElement("script").async};(q.webkit=/AppleWebKit\//.test(a))||(q.ie=/MSIE|Trident/.test(a))||(q.opera=/Opera/.test(a))||
(q.gecko=/Gecko\//.test(a))||(q.unknown=!0)}function a(a,g,m,z,r){var l=function(){b(a)},u="css"===a,x=[],v,w;q||c();if(g)if(g="string"===typeof g?[g]:g.concat(),u||q.async||q.gecko||q.opera)n[a].push({urls:g,callback:m,obj:z,context:r});else{var C=0;for(v=g.length;C<v;++C)n[a].push({urls:[g[C]],callback:C===v-1?m:null,obj:z,context:r})}if(!p[a]&&(w=p[a]=n[a].shift())){d||(d=h.head||h.getElementsByTagName("head")[0]);g=w.urls;C=0;for(v=g.length;C<v;++C){m=g[C];if(u)var y=q.gecko?f("style"):f("link",
{href:m,rel:"stylesheet"});else y=f("script",{src:m}),y.async=!1;y.className="lazyload";y.setAttribute("charset","utf-8");q.ie&&!u&&"onreadystatechange"in y&&!("draggable"in y)?y.onreadystatechange=function(){/loaded|complete/.test(y.readyState)&&(y.onreadystatechange=null,l())}:u&&(q.gecko||q.webkit)?q.webkit?(w.urls[C]=y.href,e()):(y.innerHTML='@import "'+m+'";',k(y)):y.onload=y.onerror=l;x.push(y)}C=0;for(v=x.length;C<v;++C)d.appendChild(x[C])}}function k(a){try{var d=!!a.sheet.cssRules}catch(u){m+=
1;200>m?setTimeout(function(){k(a)},50):d&&b("css");return}b("css")}function e(){var a=p.css,d;if(a){for(d=g.length;0<=--d;)if(g[d].href===a.urls[0]){b("css");break}m+=1;a&&(200>m?setTimeout(e,50):b("css"))}}var q,d,p={},m=0,n={css:[],js:[]},g=h.styleSheets;return{css:function(b,d,e,c){a("css",b,d,e,c)},js:function(b,d,e,c){a("js",b,d,e,c)}}}(this.document);Recite.namespace("Preset");Recite.namespace("preset");
Recite.Preset=Recite.preset=function(){return{square24:{background:Recite.baseUrl+"img/buttons/square24.gif",width:"24px",height:"24px"},square36:{background:Recite.baseUrl+"img/buttons/square36.gif",width:"36px",height:"36px"},hor24_recite:{background:Recite.baseUrl+"img/buttons/recite_hor24.gif",width:"83px",height:"24px"},hor24_recite_red:{background:Recite.baseUrl+"img/buttons/recite_hor24_red.gif",width:"83px",height:"24px"},hor48_recite:{background:Recite.baseUrl+"img/buttons/recite_hor48.gif",
width:"166px",height:"48px"},hor48_recite_red:{background:Recite.baseUrl+"img/buttons/recite_hor48_red.gif",width:"166px",height:"48px"},ver24_recite:{background:Recite.baseUrl+"img/buttons/recite_ver24.gif",width:"24px",height:"109px"},ver24_recite_red:{background:Recite.baseUrl+"img/buttons/recite_ver24_red.gif",width:"24px",height:"109px"},ver48_recite:{background:Recite.baseUrl+"img/buttons/recite_ver48.gif",width:"48px",height:"217px"},ver48_recite_red:{background:Recite.baseUrl+"img/buttons/recite_ver48_red.gif",
width:"48px",height:"217px"},hor24_speak:{background:Recite.baseUrl+"img/buttons/speak_hor24.gif",width:"79px",height:"24px"},hor24_speak_red:{background:Recite.baseUrl+"img/buttons/speak_hor24_red.gif",width:"79px",height:"24px"},hor48_speak:{background:Recite.baseUrl+"img/buttons/speak_hor48.gif",width:"158px",height:"48px"},hor48_speak_red:{background:Recite.baseUrl+"img/buttons/speak_hor48_red.gif",width:"158px",height:"48px"},ver24_speak:{background:Recite.baseUrl+"img/buttons/speak_ver24.gif",
width:"24px",height:"109px"},ver24_speak_red:{background:Recite.baseUrl+"img/buttons/speak_ver24_red.gif",width:"24px",height:"109px"},ver48_speak:{background:Recite.baseUrl+"img/buttons/speak_ver48.gif",width:"48px",height:"217px"},ver48_speak_red:{background:Recite.baseUrl+"img/buttons/speak_ver48_red.gif",width:"48px",height:"217px"},square24_png:{background:Recite.baseUrl+"img/buttons/24x24.png",width:"24px",height:"24px"},square36_png:{background:Recite.baseUrl+"img/buttons/36x36.png",width:"36px",
height:"36px"},hor24_recite_png:{background:Recite.baseUrl+"img/buttons/recite_hor24.png",width:"83px",height:"24px"},hor24_recite_red_png:{background:Recite.baseUrl+"img/buttons/recite_hor24_red.png",width:"83px",height:"24px"},hor48_recite_png:{background:Recite.baseUrl+"img/buttons/recite_hor48.png",width:"166px",height:"48px"},hor48_recite_red_png:{background:Recite.baseUrl+"img/buttons/recite_hor48_red.png",width:"166px",height:"48px"},ver24_recite_png:{background:Recite.baseUrl+"img/buttons/recite_ver24.png",
width:"24px",height:"109px"},ver24_recite_red_png:{background:Recite.baseUrl+"img/buttons/recite_ver24_red.png",width:"24px",height:"109px"},ver48_recite_png:{background:Recite.baseUrl+"img/buttons/recite_ver48.png",width:"48px",height:"217px"},ver48_recite_red_png:{background:Recite.baseUrl+"img/buttons/recite_ver48_red.png",width:"48px",height:"217px"},hor24_speak_png:{background:Recite.baseUrl+"img/buttons/speak_hor24.png",width:"79px",height:"24px"},hor24_speak_red_png:{background:Recite.baseUrl+
"img/buttons/speak_hor24_red.png",width:"79px",height:"24px"},hor48_speak_png:{background:Recite.baseUrl+"img/buttons/speak_hor48.png",width:"158px",height:"48px"},hor48_speak_red_png:{background:Recite.baseUrl+"img/buttons/speak_hor48_red.png",width:"158px",height:"48px"},ver24_speak_png:{background:Recite.baseUrl+"img/buttons/speak_ver24.png",width:"24px",height:"109px"},ver24_speak_red_png:{background:Recite.baseUrl+"img/buttons/speak_ver24_red.png",width:"24px",height:"109px"},ver48_speak_png:{background:Recite.baseUrl+
"img/buttons/speak_ver48.png",width:"48px",height:"217px"},ver48_speak_red_png:{background:Recite.baseUrl+"img/buttons/speak_ver48_red.png",width:"48px",height:"217px"}}}();Recite.namespace("Ajax");
Recite.Ajax=function(){function h(a){var b=Recite.Util.clone(e);return Recite.Util.merge(b,a)}function f(a){var b="";if(a.getResponseHeader)b=/^application\/json/.test(a.getResponseHeader("Content-Type"))?ReciteJSON.parse(a.responseText):a.responseText;else if(0<a.responseText.length)try{b=ReciteJSON.parse(a.responseText)}catch(p){b=a.responseText}return b}function b(a,b){b=h(b);var d=window.XMLHttpRequest?new XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");"GET"===b.method&&null!==b.data&&
"undefined"!==typeof b.data&&(a+=Recite.Util.buildQueryString(b.data));d.open(b.method,a,b.async,b.user,b.password);b.async&&(d.timeout=b.timeout);d.setRequestHeader("Content-Type",b.contentType);if(b.headers)for(var e in b.headers)d.setRequestHeader(e,b.headers[e]);d.onreadystatechange=function(){if(4===d.readyState){var a=f(d);200===d.status?b.success(d,a):b.error(d,a)}};null!==b.beforeSend&&b.beforeSend(d);d.send(b.data)}function c(a,b){b=h(b);var d=new XDomainRequest;"GET"===b.method&&null!==
b.data&&"undefined"!==typeof b.data&&(a+=Recite.Util.buildQueryString(b.data));d.onload=function(){var a=f(d);b.success(d,a)};d.onerror=function(){var a=f(d);b.error(d,a)};d.open(b.method,a);d.timeout=b.timeout;null!==b.beforeSend&&b.beforeSend(d);d.send(b.data)}function a(a,d){"withCredentials"in(window.XMLHttpRequest?new XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP"))?b(a,d):"undefined"!==typeof window.XDomainRequest?c(a,d):"undefined"===typeof window.flensed?Recite.AssetLoader.js(Recite.baseUrl+
"/js/flxhr/flXHR.js",function(){k(d)}):k(a,d)}function k(a,b){var d=new flensed.flXHR({autoUpdatePlayer:!1,instanceId:"recite-proxy",xmlResponseText:!1,onreadystatechange:function(a){if(4===a.readyState){var d=f(a);200===a.status?b.success(a,d):b.error(a,d)}}});d.open(b.method,a);null!==b.beforeSend&&b.beforeSend(d);d.send(b.data)}var e={method:"POST",contentType:"application/x-www-form-urlencoded",async:!0,username:null,password:null,success:function(){},error:function(){},beforeSend:null,data:null,
timeout:1E4};return{get:function(a,b,e){Recite.Debug.log("Recite.Ajax","Making AJAX request to: "+a);this.ajax(a,{method:"GET",data:b,success:e})},post:function(a,b,e){this.ajax(a,{method:"POST",data:b,success:e})},ajax:function(e,d){"undefined"!==typeof d.data&&"POST"==d.method&&"object"==Recite.Util.type(d.data)&&(d.data=ReciteJSON.stringify(d.data));return String(window.location).substr(0,Recite.baseUrl.length)==Recite.baseUrl?b(e,d):a(e,d)},nativeXDomainSupported:function(){return"undefined"!==
typeof(new XMLHttpRequest).withCredentials||"undefined"!==typeof window.XDomainRequest?!0:!1}}}();Recite.namespace("Api");
Recite.Api=function(){function h(c,a){c=b.endpoint+c;a=Recite.Util.merge({guid:a.guid,v:Recite.version},a.data);return c+Recite.Util.buildQueryString(a)}function f(c,a,f){var e=b.endpoint+c;e+=Recite.Util.buildQueryString({v:Recite.version,guid:f.guid,cid:f.cid});f.endpoint&&(e=f.endpoint);Recite.Ajax.ajax(e,{method:a,data:f.data,contentType:f.contentType,headers:f.headers,success:function(a,b){f.success&&f.success(b)},error:function(b,d){Recite.Debug.log("Recite.Api","Error occured during API call to: "+
e,d);if("undefined"!==typeof d.error)if("invalid_grant"===d.error)Recite.Debug.log("Recite.Api","Requesting a new token."),Recite.Auth.clear(),Recite.Api.call(c,a,f);else{if("invalid_token"===d.error||"invalid_referrer"===d.error||"invalid_ip"===d.error)alert("We have detected invalid usage of Recite and we have disabled future access. If you think this is an error please contact support@reciteme.com"),window.location.reload();f.error&&f.error(d)}}})}var b={endpoint:Recite.baseUrl+"/api/",guid:"dfe0c11b024676232c319d6302a9b337c11691f2"};
return{setOptions:function(c){b=Recite.Util.merge(b,c)},call:function(b,a,k){k.contentType=k.contentType||"application/x-www-form-urlencoded";"undefined"===typeof k.authRequired&&(k.authRequired=!0);k.cid=Recite.Auth.getOptions().client_id;k.authRequired?Recite.Auth.getStatus(function(e){"authorized"===e.state&&(k.guid=e.guid,f(b,a,k))}):f(b,a,k)},getUri:function(b,a){"undefined"===typeof a.authRequired&&(a.authRequired=!0);a.cid=Recite.Auth.getOptions().client_id;a.authRequired?Recite.Auth.getStatus(function(c){"authorized"===
c.state&&(a.guid=c.guid,a.success&&a.success(h(b,a)))}):a.success&&a.success(h(b,a))}}}();Recite.namespace("Recite.Dom");
Recite.Dom=function(){function h(b){if(b.nodeType===Node.TEXT_NODE)return b.textContent;try{var c=getComputedStyle(b);if(c&&"none"===c.display)return"";c="";for(var a=0;a<b.childNodes.length;a++)"RECITEWORDBYWORD"!=b.childNodes[a].tagName&&(c+=h(b.childNodes[a]));return c}catch(k){return Recite.Debug.log("Recite.Dom","Unable to get getComputedStyle() of element: "+b),Recite.Debug.log("Recite.Dom",k),""}}var f={word_filters:{},srollTopPadding:150,skipSelectors:["[aria-hidden=true]"]};return{getPosition:function(b){"undefined"!=
typeof b.positionalProxy&&null!=b.positionalProxy&&(b=b.positionalProxy);var c=0,a=0;if(b.offsetParent){do"BODY"!==b.tagName&&(c+=b.offsetLeft,a+=b.offsetTop);while(b=b.offsetParent)}return{left:c,top:a}},isCurrent:function(b){var c=Recite.Dom.getPosition(b);b=b.currentStyle;return 0!==c.left&&0!==c.top&&0<b.width&&0<b.height?!0:!1},getScroll:function(b){"undefined"===typeof b&&(b=window);var c=b.document;if(b.pageYOffset){var a=b.pageYOffset;var f=b.pageXOffset}else c.documentElement&&c.documentElement.scrollTop?
(a=c.documentElement.scrollTop,f=c.documentElement.scrollLeft):c.body&&(a=c.body.scrollTop,f=c.body.scrollLeft);return{x:f,y:a}},getStyle:function(b,c){if(b.currentStyle){c=c.replace(/(\-[a-z])/g,function(a){return a.toUpperCase().replace("-","")});var a=b.currentStyle[c]}else window.getComputedStyle&&(a=document.defaultView.getComputedStyle(b,null).getPropertyValue(c));return a},getStyles:function(b){var c;b.currentStyle?c=b.currentStyle:window.getComputedStyle&&(c=document.defaultView.getComputedStyle(b,
null));return c},getText:function(b,c){var a="";if("undefined"==typeof b)return"";if("undefined"!==typeof c)return 0===b.childNodes.length&&(a+=c.call(b)),Recite.Util.each(b.childNodes,function(b,f){a+=c.call(f)}),a.trim();"IMG"===b.tagName?a=b.getAttribute("alt"):3===b.nodeType?a=b.data:"INPUT"===b.tagName||"TEXTAREA"===b.tagName?""==b.value&&(b=b.getAttribute("placeholder"))&&(a=b+" "):a=h(b);null==a&&(a="");for(var k in f.word_filters)a=a.toLowerCase().replace(k,f.word_filters[k]);return null!=
a?a.trim():""},getAllWindows:function(b,c){c||(c=[]);b||(b=window);0===c.length&&c.push(b);b=b.frames;for(var a=0;a<b.length;a++)try{b[a].document.body,c.push(b[a]),0<b[a].frames.length&&c.concat(c,Recite.Dom.getAllWindows(b[a],c))}catch(k){}return c},prepend:function(b,c){if("string"===Recite.Util.type(b)){var a=c.ownerDocument.createElement("div");a.innerHTML=b;for(b=0;b<a.childNodes.length;b++)c.insertBefore(a.childNodes[0],c.childNodes[0])}else c.insertBefore(b,c.childNodes[0])},append:function(b,
c){if("string"===Recite.Util.type(b)){var a=c.ownerDocument.createElement("div");a.innerHTML=b;for(b=0;b<a.childNodes.length;b++)c.appendChild(a.childNodes[b])}else c.appendChild(b)},getSelected:function(){var b="";"undefined"!==typeof window.getSelection?b=window.getSelection().toString():"undefined"!==typeof document.selection&&"Text"===document.selection.type&&(b=document.selection.createRange().text);return b.replace(/^\s+|\s+$/g,"")},isDescendant:function(b,c){for(;b;){if(b===c)return!0;b=b.parentNode}return!1},
getAncestors:function(b){for(var c=null,a=[];void 0!==b&&null!==(c=b.parentNode)&&(void 0===c||1===c.nodeType);)a.push(c),b=c;return a},getWindowDimensions:function(b){var c=b.document;if("number"===typeof b.innerWidth){var a=b.innerWidth;var f=b.innerHeight}else c.documentElement&&(c.documentElement.clientWidth||c.documentElement.clientHeight)?(a=c.documentElement.clientWidth,f=c.documentElement.clientHeight):c.body&&(c.body.clientWidth||c.body.clientHeight)&&(a=c.body.clientWidth,f=c.body.clientHeight);
return{width:a,height:f}},getLanguage:function(b){var c=null;if(void 0===b)return c;if(1===b.nodeType&&void 0!==b.lang&&""!==b.lang)return b.lang.toLowerCase();var a=b.childNodes;if(void 0!==a&&void 0!=a.length&&0<a.length&&(Recite.Util.each(a,function(a,b){for(;null!==b;){if(3!==b.nodeType&&void 0!==b.lang&&""!==b.lang){c=b.lang;break}b=0<b.childNodes.length?b.childNodes[0]:null}}),null!==c))return c.toLowerCase();b=Recite.Dom.getAncestors(b);for(var f in b){a=b[f];if(void 0!==a&&a.lang&&0!==a.lang.length){c=
a.lang;break}if(void 0!==a&&1===a.nodeType&&null!==a.getAttribute("xml:lang")&&""!==a.getAttribute("xml:lang")){c=a.getAttribute("xml:lang");break}}null===c&&(f=Recite.Sizzle('meta[http-equiv="Content-Language"]'),0<f.length&&(c=f[0].getAttribute("content")));return null!==c&&"string"===typeof c?c.toLowerCase():null},getLanguageDirection:function(b){return 1===b.nodeType&&void 0!==b.dir&&""!==b.dir?b.dir.toLowerCase():"ltr"},detectLanguage:function(b,c){b&&0!=b.length?(Recite.Debug.log("Recite.Dom",
"Auto detecting language"),Recite.Api.call("language-detect","POST",{data:{q:b},contentType:"application/json",success:function(a){Recite.Debug.log("Recite.Dom","Language detected: "+a.lang);void 0!=c&&c(null!=a.lang?a.lang.toLowerCase():null)},error:function(){void 0!=c&&c(null)}})):void 0!=c&&c(null)},getNextElement:function(b,c){"undefined"==typeof c&&(c=!1);var a="recite, [data-recite-ele] "+(Recite.FrameUpdater.isActive()?", iframe":"");a=Recite.Sizzle(a);if("undefined"===b||null===b)return Recite.Debug.log("Recite.DOM",
"Current element is null - probably been removed from DOM"),a[0];for(var f=null,e=0;e<a.length;e++)if(a[e]===b||null===b||null!==f){if(null===b)f=a[0];else if("undefined"!==typeof a[e+1]){if(!Recite.Dom.isValidElement(a[e+1])){b=a[e+1];continue}f=a[e+1]}else break;b=Recite.Dom.getPosition(f);if(0>b.left||0>b.top||0==b.top&&0==b.left)b=f;else{if("IFRAME"!=f.nodeName||c)return f;Recite.Event.publish("FrameUpdater:EnterFrame",{element:f,direction:"next"});break}}return null},getPreviousElement:function(b,
c){"undefined"==typeof c&&(c=!1);var a="recite, [data-recite-ele] "+(Recite.FrameUpdater.isActive()?", iframe":"");a=Recite.Sizzle(a);if("undefined"===b||null===b)return Recite.Debug.log("Recite.DOM","getPreviousElement return 1st ele"),a[0];for(var f=null,e=a.length;0<e;e--)if(a[e]==b||null==b||null!==f){if(null==b)f=a[0];else if("undefined"!==typeof a[e-1]){if(!Recite.Dom.isValidElement(a[e-1])){b=a[e-1];continue}f=a[e-1]}else break;b=Recite.Dom.getPosition(f);if(0>b.left||0>b.top||0==b.top&&0==
b.left)b=f;else{if("IFRAME"!=f.nodeName||c)return f;Recite.Event.publish("FrameUpdater:EnterFrame",{element:f,direction:"prev"});break}}return null},getLastElement:function(){var b="recite, [data-recite-ele] "+(Recite.FrameUpdater.isActive()?", iframe":"");b=Recite.Sizzle(b);return b[b.length-1]},getFirstElement:function(){var b="recite, [data-recite-ele] "+(Recite.FrameUpdater.isActive()?", iframe":"");return Recite.Sizzle(b)[0]},isVisible:function(b){var c=Recite.Dom.getScroll(b.ownerDocument.defaultView),
a=Recite.Dom.getPosition(b);Recite.PlayerControls.getProvider().getOptions();var f=Recite.Dom.getWindowDimensions(window),e=a.top-b.offsetHeight+200,q=a.left,d=!1;e<f.height+c.y&&a.top>e&&0<q&&q<f.width+c.x&&(d=!0);return d&&Recite.Dom.isValidElement(b)},isValidElement:function(b){return null==f.skipSelectors?!0:b.matches(f.skipSelectors)?!1:"HTML"!=b.nodeName&&b.parentNode?Recite.Dom.isValidElement(b.parentNode):!0},scrollTo:function(b){var c=Recite.Dom.getPosition(b);b=c.top-b.offsetHeight;b-=f.srollTopPadding;
window.scrollTo(c.left,b)},getIndex:function(b){if("undefined"===typeof b||null===b)return null;for(var c=b.parentElement||b.parentNode,a=-1,f;c&&(f=c.childNodes[++a]);)if(f==b)return a;return-1},getPath:function(b){var c,a=[],f=Recite.Dom.getIndex(b),e=0;if("undefined"===typeof b||null===b)return null;for(;c=b.parentNode;){++e;if(-1>=f)break;b=c;a.push(f);f=Recite.Dom.getIndex(c)}return a.reverse()},getNode:function(b){var c=document.documentElement,a;if("undefined"===typeof c||null===c)return null;
for(a=1;a<b.length;){var f=b[a];"undefined"!==typeof c&&(c=c.childNodes[f]);++a}return c},setOptions:function(b){f=Recite.Util.merge(f,b)}}}();Recite.namespace("Dom.Traverser");Recite.Dom.Traverser=function(){return{traverse:function(h,f){for(var b=h.childNodes[0];null!==b;){var c=f(b);if(b.hasChildNodes()&&c)b=b.firstChild;else{for(;null===b.nextSibling&&b!==h;)b=b.parentNode;b=b===h?null:b.nextSibling}}}}};Recite.namespace("Recite.Dom.Observer");
Recite.Dom.Observer=function(){function h(){Recite.Util.each(b,function(a,b){a=b.innerHTML.length;"undefined"===typeof b.prevLength&&(b.prevLength=a);b.prevLength!==a&&(a=Recite.Parser.Html.parse(b),Recite.Event.publish("Recite.Dom.Observor:change",{affectedElements:a}),b.prevLength=b.innerHTML.length)})}var f=null,b=[],c={pollTime:1500,useMutations:!0};return{setOptions:function(a){c=Recite.Util.merge(c,a)},observe:function(a){b.push(a);null===f&&(Recite.Debug.log("Recite.Dom.Observer","Setting up body length polling."),
f=setInterval(function(){h()},c.pollTime))}}}();var ReciteJSON;ReciteJSON||(ReciteJSON={});
(function(){function h(a){return 10>a?"0"+a:a}function f(b){a.lastIndex=0;return a.test(b)?'"'+b.replace(a,function(a){var b=q[a];return"string"===typeof b?b:"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+b+'"'}function b(a,c){var p=k,g=c[a];g&&"object"===typeof g&&"function"===typeof g.toReciteJSON&&(g=g.toReciteJSON(a));"function"===typeof d&&(g=d.call(c,a,g));switch(typeof g){case "string":return f(g);case "number":return isFinite(g)?String(g):"null";case "boolean":case "null":return String(g);
case "object":if(!g)return"null";k+=e;var l=[];if("[object Array]"===Object.prototype.toString.apply(g)){var m=g.length;for(a=0;a<m;a+=1)l[a]=b(a,g)||"null";c=0===l.length?"[]":k?"[\n"+k+l.join(",\n"+k)+"\n"+p+"]":"["+l.join(",")+"]";k=p;return c}if(d&&"object"===typeof d)for(m=d.length,a=0;a<m;a+=1){if("string"===typeof d[a]){var q=d[a];(c=b(q,g))&&l.push(f(q)+(k?": ":":")+c)}}else for(q in g)Object.prototype.hasOwnProperty.call(g,q)&&(c=b(q,g))&&l.push(f(q)+(k?": ":":")+c);c=0===l.length?"{}":k?
"{\n"+k+l.join(",\n"+k)+"\n"+p+"}":"{"+l.join(",")+"}";k=p;return c}}"function"!==typeof Date.prototype.toReciteJSON&&(Date.prototype.toReciteJSON=function(a){return isFinite(this.valueOf())?this.getUTCFullYear()+"-"+h(this.getUTCMonth()+1)+"-"+h(this.getUTCDate())+"T"+h(this.getUTCHours())+":"+h(this.getUTCMinutes())+":"+h(this.getUTCSeconds())+"Z":null},String.prototype.toReciteJSON=Number.prototype.toReciteJSON=Boolean.prototype.toReciteJSON=function(a){return this.valueOf()});var c=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,
a=/[\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,k,e,q={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},d;"function"!==typeof ReciteJSON.stringify&&(ReciteJSON.stringify=function(a,c,f){var g;e=k="";if("number"===typeof f)for(g=0;g<f;g+=1)e+=" ";else"string"===typeof f&&(e=f);if((d=c)&&"function"!==typeof c&&("object"!==typeof c||"number"!==typeof c.length))throw Error("ReciteJSON.stringify");
return b("",{"":a})});"function"!==typeof ReciteJSON.parse&&(ReciteJSON.parse=function(a,b){function d(a,e){var c,g=a[e];if(g&&"object"===typeof g)for(c in g)if(Object.prototype.hasOwnProperty.call(g,c)){var l=d(g,c);void 0!==l?g[c]=l:delete g[c]}return b.call(a,e,g)}a=String(a);c.lastIndex=0;c.test(a)&&(a=a.replace(c,function(a){return"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)}));if(/^[\],:{}\s]*$/.test(a.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,
"]").replace(/(?:^|:|,)(?:\s*\[)+/g,"")))return a=eval("("+a+")"),"function"===typeof b?d({"":a},""):a;throw new SyntaxError("ReciteJSON.parse");})})();Recite.namespace("Auth");
Recite.Auth=function(){function h(b,d){"undefined"===typeof d&&(d={});var e=a.authorization_endpoint+"?response_type="+b+"&client_id="+a.client_id;null!==a.redirect_uri&&(e+="&redirect_uri="+encodeURIComponent(a.redirect_uri));null!==a.required_scope&&(e+="&scope="+a.required_scope);Recite.Util.each(d,function(a,b){e+="&"+a+"="+b});return e}function f(b,d){var c=document.createElement("div");c.setAttribute("class","recite_auth_iframe_wrapper");c.style.top=parseInt(a.popup.top)+"px";c.style.left="50%";
c.style.marginLeft=-(parseInt(a.popup.width)/2)+"px";c.style.height=Recite.Dom.getWindowDimensions(window).height/1.5;c.style.width=a.popup.width;var l=document.createElement("iframe");l.src=b;l.frameborder=0;l.width=a.popup.width;l.style.border=0;l.height=Recite.Dom.getWindowDimensions(window).height/1.5;b=document.createElement("div");b.setAttribute("class","recite_auth_iframe_close recite-sprite-auth-close");b.setAttribute("data-recite-state",d);c.appendChild(b);c.appendChild(l);document.body.appendChild(c);
Recite.DomEvent.add(l,"load",function(){Recite.DomEvent.add(Recite.Sizzle(".recite_auth_iframe_close")[0],"click",function(a){a=a.target.getAttribute("data-recite-state");e[a].parentNode.removeChild(e[a]);delete e[a]})});return c}var b=!1,c={state:null,access_token:null,expires:null,guid:"dfe0c11b024676232c319d6302a9b337c11691f2"},a={authorization_endpoint:Recite.baseUrl+"/oauth/authorize",token_endpoint:Recite.baseUrl+"/oauth/token",client_id:"059717390726eff2fe1b2f2cbba8135edcb5bc7e",redirect_uri:Recite.baseUrl+"/oauth/callback/?uri="+Recite.Util.getWindowLocationOrigin(window),
required_scope:null,type:"iframe",popup:{status:"yes",toolbar:"no",location:"no",menubar:"no",directories:"no",resizable:"no",scrollbars:"no",width:850,height:600,top:"120"}},k=[],e=[],q=[],d=!1,p=[];Recite.XDM.receiveMessage(function(a){Recite.Debug.log("Recite.Auth","Message received:",a);a=ReciteJSON.parse(a.data);if(null!==a&&"undefined"!==typeof a.access_token&&-1!==Recite.Util.inArray(a.state,p)){p.splice(Recite.Util.inArray(a.state,p),1);var f=new Date;c.access_token=a.access_token;c.expires=
Math.ceil(f.getTime()/1E3)+parseInt(a.expires_in,10);c.state="authorized";Recite.Event.publish("Auth:authorize",c);b&&Recite.Event.publish("Auth:reauthorize",c);b=!0;Recite.Util.each(q,function(a,b){b(c)});q=[];d=!1;"undefined"!==typeof e[a.state]&&(f=e[a.state],f.parentNode.removeChild(f),delete e[a.state]);"undefined"!==typeof k[a.state]&&(k[a.state].close(),delete k[a.state])}},Recite.baseUrl);return{setOptions:function(b){a=Recite.Util.merge(a,b)},getOptions:function(){return a},isAuthorized:function(){return"undefined"!=
c.guid&&"_GUID_"!=c.guid.substr(1,6)?(c.state="authorized",!0):"authorized"==c.state},clear:function(){c.state=null;c.access_token=null;c.expires=null},getStatus:function(a,b){if(this.isAuthorized())a(c);else if(!b&&this.isAuthorized())a(c);else if(q.push(a),!d){d=!0;a=Recite.Util.guid();p.push(a);b=h("token",{createGuest:1,display:0,state:a});var g=document.createElement("iframe");g.id=a;g.src=b;g.frameborder=0;g.width=0;g.height=0;e[a]=g;Recite.Debug.log("Recite.Auth","Adding iframe to dom");document.body.appendChild(g)}},
authPopup:function(){var b=Recite.Util.guid();p.push(b);var d=h("token",{state:b});if("iframe"===a.type)e[b]=f(d,b);else{var c="";Recite.Util.each(a.popup,function(a,b){c+=a+"="+b+","});c=c.substr(0,c.length-1);c+=",left="+(Math.ceil(screen.width/2)-a.popup.width/2)+",top="+(Math.ceil(screen.height/2)-a.popup.height/2);k[b]=window.open(d,b,c)}}}}();Recite.namespace("Message");
Recite.Message=function(){var h={toolbarCloseHeader:null,toolbarCloseDialog:null,toolbarCloseOk:null,toolbarCloseCancel:null,leavingCloseHeader:null,leavingCloseDialog:null,leavingCloseOk:null,leavingCloseCancel:null};return{setOptions:function(f){h=Recite.Util.merge(h,f)},getOptions:function(){return h},init:function(){},getMessage:function(f,b){return h[f]?h[f]:b}}}();Recite.namespace("Storage");
Recite.Storage=function(){var h={};return{setOptions:function(f){h=Recite.Util.merge(h,f);Recite.Storage.Cookie.setOptions(f.Cookie);Recite.Storage.Api.setOptions(f.Api);Recite.Storage.LocalStorage.setOptions(f.LocalStorage)},getOptions:function(){return h},init:function(){}}}();Recite.namespace("Storage.Cookie");
Recite.Storage.Cookie=function(){function h(b,c,a){if(a){var k=new Date;k.setTime(k.getTime()+864E5*a);a="; expires="+k.toGMTString()}else a="";b=b+"="+encodeURIComponent(c)+a+"; path=/";f.cookiesDomain&&(b+="; domain="+f.cookiesDomain);f.secure&&(b+="; secure");document.cookie=b+"; samesite = strict"}var f={cookiesDomain:"",secure:!1};return{setOptions:function(b){f=Recite.Util.merge(f,b)},save:function(b,c,a){c=ReciteJSON.stringify(c);h(b,c,a)},load:function(b,c){a:{b+="=";for(var a=document.cookie.split(";"),
f=0;f<a.length;f++){for(var e=a[f];" "==e.charAt(0);)e=e.substring(1,e.length);if(0==e.indexOf(b)){b=decodeURIComponent(e.substring(b.length,e.length));break a}}b=null}b=ReciteJSON.parse(b);c&&c(b);return b},clear:function(b){h(b,"",-1)},supported:function(){return!0}}}();Recite.namespace("Storage.LocalStorage");
Recite.Storage.LocalStorage=function(){var h={};return{save:function(f,b,c){_supported()&&window.localStorage.setItem(f,b)},load:function(f,b){return _supported()?(f=window.localStorage.getItem(f),"undefined"!==typeof b&&b(f),f):null},clear:function(f){_supported()&&window.localStorage.removeItem(f)},supported:function(){try{return"localStorage"in window&&null!==window.localStorage}catch(f){return!1}},setOptions:function(f){h=Recite.Util.merge(h,f)}}}();Recite.namespace("Storage.Api");
Recite.Storage.Api=function(){var h=["Recite.Preferences"],f={};return{save:function(b,c,a){if(!b in h)throw{name:"InvalidNamespace",message:"The provided namespace is invalid."};"Recite.Preferences"===b?Recite.Api.call("preferences","POST",{data:c,contentType:"application/json",success:function(a){Recite.Debug.log("Recite.Storage.Api","Preferences Saved.")}}):Recite.Storage.Cookie.save(b,c)},load:function(b,c){!b in h||("Recite.Preferences"===b?Recite.Api.call("preferences","GET",{success:c,error:c}):
Recite.Storage.Cookie.load(b,c))},clear:function(b){},supported:function(){return!0},setOptions:function(b){f=Recite.Util.merge(f,b)}}}();Recite.namespace("Preferences");
Recite.Preferences=function(){function h(a){Recite.Storage.Cookie.load("Recite.Preferences",function(c){null!=c&&(Recite.Debug.log("Recite.Preferences","Loading and merging cookie storage preferences"),b=a?Recite.Util.merge(c,b):c);Recite.Event.publish("Preferences:load",b)})}var f={storageEngine:Recite.Storage.Cookie,autoSave:!0},b={style:{backgroundColor:null,font:{color:null,face:null,size:null},link:{color:null},marginSize:null,textAlign:null,ruler:{enabled:!1,color:null},screenMask:{enabled:!1,
color:null},wwHighlight:{color:null},lineHeight:null,charSpacing:null},dictionary:{enabled:!1},player:{autoplay:!0,continuePlay:!1,playbackSpeed:1},textMode:{enabled:!1},playerControls:{enabled:!0},language:null,direction:"",voice:{gender:"f"},magnifier:{enabled:!1},voices:{en:"Amy"}},c=Recite.Util.clone(b);Recite.Event.subscribe("Auth:reauthorize",function(){f.storageEngine===Recite.Storage.Api&&Recite.Preferences.load()});return{setOptions:function(a){var b=!1;Recite.Util.each(a,function(a,c){"storageEngine"===
a&&(f.storageEngine=null,b=!0)});f=Recite.Util.merge(f,a);b&&Recite.Preferences.load()},save:function(a){Recite.Debug.log("Recite.Preferences","Saving preferences.");f.storageEngine.save("Recite.Preferences",b,365);f.storageEngine!==Recite.Storage.Cookie&&Recite.Storage.Cookie.save("Recite.Preferences",b,365);Recite.Gui.Notification.show("Your preferences have been saved.  To reset them press the reset button",{read:!1})},load:function(){Recite.Debug.log("Recite.Preferences","Loading preferences.");
Recite.Debug.log("Recite.Preferences","Loading primary storage preferences");var a=Recite.Util.clone(c);f.storageEngine.load("Recite.Preferences",function(c){null===c||c.error?h():(Recite.Debug.log("Recite.Preferences","Found user preferences"),b=Recite.Util.merge(a,c),f.storageEngine!==Recite.Storage.Cookie?h(b):Recite.Event.publish("Preferences:load",b))})},get:function(a){if("undefined"===typeof a)return b;var c;a=a.split(".");var e=b;for(c=0;c<a.length;c++)if(e=e[a[c]],"undefined"===typeof e)return null;
return e},set:function(a,c){var e={};"object"===Recite.Util.type(a)?e=a:e[a]=c;"player.autoplay"!=a&&"playerControls.enabled"!=a&&"player.continuePlay"!=a||Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Preferences",event:a+": "+c});Recite.Util.each(e,function(a,d){var e;a=a.split(".");var c=b;for(e=0;e<a.length-1;e++)if(c=c[a[e]],"undefined"===typeof c)return null;c[a[e]]=d});Recite.Event.publish("Preferences:set",e);f.autoSave&&Recite.Preferences.save();return null},reset:function(a){Recite.Debug.log("Recite.Preferences",
"Reset."+a);var k;var e=a.split(".");var q=b;var d=c;for(k=0;k<e.length-1;k++)q=q[e[k]],d=d[e[k]];var p=d[e[k]];"object"===Recite.Util.type(p)&&(p=Recite.Util.clone(p));q[e[k]]=p;Recite.Event.publish("Preferences:reset",{key:a,value:d});f.autoSave&&Recite.Preferences.save()},resetAll:function(){Recite.Debug.log("Recite.Preferences","ResetAll.");Recite.Event.publish("Preferences:reset");var a=f.autoSave;f.autoSave=!1;Recite.Util.each(c,function(a,b){Recite.Preferences.reset(a)});f.autoSave=a;f.autoSave&&
Recite.Preferences.save();Recite.Gui.Notification.show("Your preferences have been reset.");Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Preferences",event:"resetAll"})}}}();Recite.namespace("UI.Toggle");
Recite.UI.Toggle=function(){function h(f){var b=f.ownerDocument?f.ownerDocument:document;f.setAttribute("class","recite-ui-toggle");b=b.createElement("div");b.setAttribute("class","recite-ui-toggle-slider");b.setAttribute("data-recite-tabbable","");f.appendChild(b);Object.defineProperty?Object.defineProperty(f,"checked",{get:function(){return this._checked},set:function(b){(this._checked=b)?this.setAttribute("class",this.getAttribute("class")+" recite-ui-toggle-active"):this.setAttribute("class",
this.getAttribute("class").replace(" recite-ui-toggle-active",""));this.fireEvent?this.fireEvent("onClick"):(b=document.createEvent("Event"),b.initEvent("change",!0,!0),this.dispatchEvent(b))}}):Recite.Debug.log("Recite.UI.Toggle","defineProperty not found");f.checked=!0}return{invoke:function(f,b){f=Recite.Util.isArray(f)?f:[f];Recite.Util.each(f,function(b,a){h(a);Recite.DomEvent.add(a.childNodes[0],"click",function(a){a=a.target.parentNode;a.checked=!a.checked})})}}}();Recite.namespace("UI.Dropdown");
Recite.UI.Dropdown=function(){function h(a,c,d){c=c||"default";"undefined"===typeof k[c]&&(k[c]=[]);var e=a.getAttribute("class")||"";a.setAttribute("class",e+" recite-active");Recite.Browser.isMobile()||f(a,d);k[c].push(a);"default"!==c&&Recite.Util.each(k[c],function(d,e){"undefined"!==typeof e&&e!==a&&b(e,c)});Recite.Event.publish("DropDown:menuShown",a)}function f(a,b){Recite.Dom.getWindowDimensions(window);var d=Recite.Sizzle(".recite-controls")[0];b=Recite.Dom.getPosition(b).left-d.scrollLeft-
a.offsetWidth/2+20;0>b&&(b=0);a.style.left=b+"px"}function b(b,c){if(1===b.nodeType||3===b.nodeType){Recite.Browser.isMobile()&&(b.style.display="none",a("hide"));var d=b.getAttribute("class")||"";for(b.setAttribute("class",d.replace(" recite-active",""));-1!==(d=Recite.Util.inArray(b,k[c]));)k[c].splice(d,1);c=Recite.Sizzle(".recite-dropdown-invoke, .recite-dropdown-invoke-active, .recite-dropdown-invoke .recite-button",document);Recite.Util.each(c,function(a,b){b.setAttribute("class",b.getAttribute("class").replace("-active",
""))});Recite.Event.publish("DropDown:menuHidden",b)}}function c(a){for(var e in k)for(var d in k[e])b(k[e][d],e)}function a(a){var b="show"==a?"block":"none";a="show"==a?"none":"block";"block"==a?Recite.Sizzle("#recite-themes-reset")[0].click():Recite.UI.ColorPicker.show();Recite.Sizzle("#recite-colors-mobile-header")[0].style.display="block"==b?"block":"none";Recite.Sizzle(".recite-popup-back")[0].style.display="block"==b?"block":"none";Recite.Sizzle("#recite-colors-advanced")[0].style.display=
"block"==b?"block":"none";b=Recite.Sizzle("#recite-themes-advanced")[0];var d=Recite.Sizzle("#recite-ui-colorpicker")[0];Recite.Sizzle("#recite-swatch-reset-default")[0].style.display=a;Recite.Sizzle("#recite-themes-reset")[0].style.display=a;Recite.Sizzle("#recite-swatches")[0].style.display=a;Recite.Sizzle("#recite-themes-dropdown")[0].querySelector("hr").style.display=a;b.querySelector("hr").style.display=a;b.appendChild(d)}var k={};Recite.Event.subscribe("Recite:Style:wrappedElements",function(){var a=
Recite.Sizzle("#recite-wrapper")[0];Recite.DomEvent.add(a,"touchstart",c);Recite.DomEvent.add(a,"click",c)});return{loaded:function(){return!1},invoke:function(e,c){e=Recite.Util.isArray(e)?e:[e];Recite.Util.each(e,function(d,e){Recite.DomEvent.add(e,"click",function(d){var e=d.target,c=Recite.Sizzle(e.getAttribute("data-target"))[0],f=e.getAttribute("data-group")||"default";if("undefined"!==typeof c){Recite.DomEvent.add(c,"click",function(a){"undefined"!==typeof a.stopPropagation?a.stopPropagation():
a.cancelBubble=!0});if(Recite.Browser.isMobile()){c.style.display="block";var p=c.getAttribute("class")||"";p.includes("recite-popup-mobile")||c.setAttribute("class",p+" recite-popup-mobile");p=c.firstElementChild.getAttribute("class");Recite.Sizzle("#recite-colors-advanced")[0].style.height="500px !important";if("main"==f&&"recite-fixed-popup-close"!=p){p=document.createElement("div");p.setAttribute("class","recite-fixed-popup-close");p.setAttribute("id","recite-fixed-popup-close");var q=document.createElement("span");
q.setAttribute("class","recite-popup-back");q.innerHTML="<";q.addEventListener("click",function(){a("hide")});q.style.display="none";var m=document.createElement("span");m.setAttribute("class","recite-popup-close");m.innerHTML="x";m.addEventListener("click",function(){b(c,f)});p.appendChild(q);p.appendChild(m);c.insertBefore(p,c.firstElementChild)}"default"==f&&a("show")}/recite-active/g.test(c.getAttribute("class"))?(b(c,f),e.setAttribute("class",e.getAttribute("class").replace("-active",""))):(h(c,
f,e),e.setAttribute("class",e.getAttribute("class")+"-active"));"undefined"!==typeof d.stopPropagation?d.stopPropagation():d.cancelBubble=!0}})})},hideGroup:function(a){a=a||null;for(var e in k)null!==a&&a!==e||Recite.Util.each(k[e],function(a,e){b(e)})}}}();Recite.namespace("UI.ColorPicker");
Recite.UI.ColorPicker=function(){function h(a){var b=g.getBoundingClientRect(),d=a.clientY-(b.top+l.offsetTop);d=255<d?255:d;b=Math.abs(360*(d-0)/255-360);x.style.top=d+"px";d=Recite.Tinycolor("hsl("+Math.ceil(b)+", 100%, 50%)");u.style.backgroundColor=d.toRgbString();m&&(d=m.getColor().toHsv(),d.h=Math.ceil(b),m.setColor(d,a))}function f(a){var b=g.getBoundingClientRect(),d=b.left+u.offsetLeft,e=b.top+u.offsetTop;b=Recite.Browser.isMobile()?170:255;e=a.clientY-e;d=a.clientX-d;e=e>b-3?b-3:e;d=d>b-
3?b-3:d;e=3>e?3:e;d=3>d?3:d;if(m){var c=m.getColor().toHsv();c.v=Math.ceil(Math.abs(e-b)/b*100);c.s=Math.ceil(d/b*100);m.setColor(c,a)}r.style.top=e+D.selectorAdjust.top+"px";r.style.left=d+D.selectorAdjust.left+"px"}function b(){Recite.DomEvent.add(l,"mousedown",function(a){h(a)});Recite.DomEvent.add(l,"mouseup",function(a){h(a)});Recite.DomEvent.add(l,"mousemove",function(a){p&&h(a)})}function c(){Recite.DomEvent.add(u,"mousedown",function(a){f(a)});Recite.DomEvent.add(u,"mouseup",function(a){f(a)});
Recite.DomEvent.add(u,"mousemove",function(a){p&&f(a)})}function a(){Recite.DomEvent.add(z,"click",function(){g.style.display="none"})}function k(a){x.style.top=Math.abs(a-360)/360*100+"%";a=Recite.Tinycolor("hsl("+Math.ceil(a)+", 100%, 50%)");u.style.backgroundColor=a.toRgbString()}function e(a){var b=parseInt(Recite.Dom.getStyle(u,"width"));r.style.left=Math.ceil(b/100*100*a)+D.selectorAdjust.left+"px"}function q(a){a=Math.abs(100*a-100);var b=parseInt(Recite.Dom.getStyle(u,"height"));r.style.top=
Math.ceil(b/100*a)+D.selectorAdjust.top+"px"}function d(a){Recite.UI.ColorPicker.hide()}var p=!1,m=null,n=!1,g=null,l=null,x=null,u=null,z=null,r=null,B=0,A=0,D={selectorAdjust:{left:-5,top:-5},markup:'<div id="recite-ui-colorpicker">                    <div class="recite-colorbox-close">Close</div>                    <div class="recite-colorbox recite-sprite-colorpicker-mask">                        <div class="recite-colorselector recite-sprite-colorpicker-selector"></div>                    </div>                    <div class="recite-huebox recite-sprite-colorpicker-hue">                        <div class="recite-hueslider"></div>                    </div>                </div>'};
return{setOptions:function(a){D=Recite.Util.merge(D,a)},init:function(){Recite.DomEvent.add(document.body,"mousedown",function(a){p=!0});Recite.DomEvent.add(document.body,"mouseup",function(a){p=!1});Recite.DomEvent.add(document.body,"click",d);Recite.Browser.isMobile()?Recite.Dom.append(D.markup,Recite.Sizzle("#recite-themes-advanced")[0]):Recite.Dom.append(D.markup,document.body);g=Recite.Sizzle("#recite-ui-colorpicker")[0];z=Recite.Sizzle(".recite-colorbox-close")[0];u=Recite.Sizzle(".recite-colorbox")[0];
r=Recite.Sizzle(".recite-colorselector")[0];l=Recite.Sizzle(".recite-huebox")[0];x=Recite.Sizzle(".recite-hueslider")[0];Recite.DomEvent.add(g,"click",function(a){"undefined"!==typeof a.stopPropagation?a.stopPropagation():a.cancelBubble=!0});n=!0;c();b();a()},invoke:function(a,b){b=b||{};a=Recite.Util.isArray(a)?a:[a];n||this.init();Recite.Util.each(a,function(a,d){a="INPUT"===d.tagName?"focus":"click";d.colorPicker={};d.setColor=function(a,b,d,c){var f=void 0==b||"mouseup"==b.type;if(f||!Recite.Tinycolor.equals(a,
this.getColor()))d=!1===d?!1:!0,c=!1===c?!1:!0,a=Recite.Tinycolor(a),a.ok&&(this.colorPicker.color=a,"INPUT"===this.tagName?d&&(this.value=this.colorPicker.color.toHexString()):this.innerText=this.colorPicker.color.toHexString(),"undefined"!==typeof this.colorPicker.callback&&(c||f)&&this.colorPicker.callback(m,a,b),m===this&&(b=this.colorPicker.color.toHsv(),k(b.h),e(b.s),q(b.v)))};d.getColor=function(){return this.colorPicker.color};var c=Recite.Tinycolor(d.style.backgroundColor);c.ok?d.setColor(c):
d.setColor(Recite.Tinycolor("#000"));Recite.DomEvent.add(d,a,function(a){Recite.UI.ColorPicker.show();m=a.target;if(!Recite.Browser.isMobile()){var b=Recite.Dom.getPosition(m),d=Recite.Dom.getStyle(m,"width"),e=Recite.Sizzle("#recite-colors-advanced")[0];parseInt(Recite.Dom.getPosition(e).top);parseInt(Recite.Dom.getStyle(e,"height"));e=parseInt(Recite.Dom.getStyle(g,"height"));parseInt(Recite.Dom.getStyle(g,"width"));B=window.innerHeight/2-e/2;A=parseInt(b.left)+parseInt(d);g.style.top=B+"px";g.style.left=
A+"px"}Recite.UI.ColorPicker.invalidate();"undefined"!==typeof a.stopPropagation?a.stopPropagation():a.cancelBubble=!0});"undefined"!==typeof b.callback&&(d.colorPicker.callback=b.callback);"INPUT"===d.tagName&&Recite.DomEvent.add(d,"keyup",function(a){this.setColor(a.target.value,a,!1,!0);"undefined"!==typeof a.stopPropagation?a.stopPropagation():a.cancelBubble=!0})})},show:function(){g.style.display="block"},hide:function(){g.style.display="none"},invalidate:function(){var a=m.colorPicker.color.toHsv();
k(a.h);e(a.s);q(a.v)}}}();Recite.namespace("UI.AdvancedColors");
Recite.UI.AdvancedColors=function(){function h(a,b,d){var e=a.getAttribute("data-key"),c=b.toRgbString();f(a,b);a=Recite.Preferences.get(e);c==a||void 0==d||"mouseup"!=d.type&&"blur"!=d.type||(Recite.Debug.log("Recite.UI.AdvancedColors"," set "+e+" to "+c),Recite.Preferences.set(e,c))}function f(a,c){var d=null!=c?c.toRgbString():"transparent";a.parentNode.style.borderColor=d;b(a,d);a.value=null!=c?c.toHexString():""}function b(a,b){switch(a.getAttribute("data-key")){case "style.backgroundColor":a=Recite.Sizzle("#advanced_colors_background,#advanced_colors_text,#advanced_colors_links");
Recite.Util.each(a,function(a,c){c.style.backgroundColor=b});break;case "style.font.color":a=Recite.Sizzle("#advanced_colors_background,#advanced_colors_text,#advanced_colors_ruler,#advanced_colors_mask");Recite.Util.each(a,function(a,c){c.style.color=b});break;case "style.link.color":a=Recite.Sizzle("#advanced_colors_links");Recite.Util.each(a,function(a,c){c.style.color=b});break;case "style.screenMask.color":case "style.ruler.color":a.style.backgroundColor=b}}function c(a,b){if(void 0===a||"style"==
a||"Preferences:reset"==a&&void 0!=b&&"style"==b.key||"Preferences:set"==a||"Preferences:load"==a)Recite.Debug.log("AdvancedColors","Update Color Pickers"),Recite.Util.each(k,function(a,b){a=Recite.Preferences.get(a);void 0!=a&&"null"!=a&&""!=a.trim()?(a=Recite.Tinycolor(a),b.value!=a.toHexString()&&f(b,a)):f(b,null)})}var a={enabled:!0},k={};return{setOptions:function(b){Recite.Debug.log("UI.AdvancedColors",b);a=Recite.Util.merge(a,b)},invoke:function(b,f){Recite.Debug.log("UI.AdvancedColors","invoke "+
a.enabled);a.enabled?(b=Recite.Sizzle(b,f),Recite.Util.each(b,function(a,b){a=b.getAttribute("data-key");k[a]=b}),Recite.UI.ColorPicker.invoke(b,{callback:function(a,b,c){h(a,b,c)}}),Recite.Util.each(b,function(a,b){Recite.DomEvent.add(b,"blur",function(a){var d=Recite.Tinycolor(b.value);h(b,d,a)})}),Recite.Event.subscribe("Preferences:load",c),Recite.Event.subscribe("Preferences:reset",c),Recite.Event.subscribe("Preferences:set",c),Recite.Event.subscribe("DropDown:menuHidden",function(a,b){Recite.UI.ColorPicker.hide()})):
(b=Recite.Sizzle("#recite-themes-advanced")[0],b.parentNode.removeChild(b))}}}();Recite.namespace("Controls");
Recite.Controls=function(){function h(){Recite.Util.each(Recite.Sizzle(".recite-sprite-button-magnifier"),function(a,b){b.style.display="none"});Recite.Util.each(Recite.Sizzle(".recite-sprite-button-ruler"),function(a,b){b.style.display="none"});Recite.Util.each(Recite.Sizzle(".recite-sprite-button-mp3"),function(a,b){b.style.display="none"});Recite.Util.each(Recite.Sizzle(".recite-sprite-button-dictionary"),function(a,b){b.style.display="none"})}function f(a,b){Recite.Debug.log("Controls","Setting up custom user guide for lang: "+
a);Recite.Util.each(Recite.Sizzle(".recite-sprite-button-userguide"),function(a,d){d.setAttribute("href",b)})}function b(){var a=Recite.Dom.getLanguage(Recite.Sizzle("html")[0]);Recite.Util.each(e.languageOverrides.userGuide.languages,function(b,d){b.toLowerCase()==a.toLowerCase()?f(b,d.src):"undefined"!=typeof d.additionalLangs?Recite.Util.each(d.additionalLangs,function(b,c){c.toLowerCase()==a.toLowerCase()&&f(c,d.src)}):f(b,e.languageOverrides.userGuide["default"].src)})}function c(){var a=Recite.Dom.getLanguage(Recite.Sizzle("html")[0]);
Recite.Util.each(e.modules,function(b,d){null!==a&&"undefined"!=typeof d.localize&&d.localize(a)})}function a(a){e.enabled&&(0===e.modules.length&&(e.modules=[Recite.Controls.Desktop,Recite.Controls.Core]),Recite.Debug.log("Recite.Controls","Loading controls"),Recite.Debug.log("Recite.Controls","Getting controls content"),Recite.Ajax.get(e.url,null,function(b,d){e.enabled&&(Recite.Debug.log("Recite.Controls","Got controls content"),b=document.createElement("div"),b.innerHTML=d,q=b.childNodes[0],d=
Recite.Sizzle("body",a)[0],Recite.Dom.prepend(q,d),Recite.Browser.isMobile()&&(h(),Recite.Debug.log("Recite.Controls","Mobile controls set")),Recite.Util.each(e.modules,function(a,b){b.init();b.invoke(q)}),c(),Recite.Debug.log("Recite.Controls","Controls loaded"),k=!0,Recite.Event.publish("Controls:loaded"))}))}var k=!1,e={enabled:!0,url:Recite.baseUrl+"/assets/"+Recite.version+"/html/header.htm",modules:[],languageOverrides:{userGuide:{languages:{cy:{src:"http://reciteme.com/user-guides/welsh.pdf"},
ar:{src:"https://api.reciteme.com/common/user_guide_ar.pdf",additionalLangs:["ar-UAE","ar-AE"]}},"default":{src:"http://reciteme.com/user-guide"}}}};Recite.Event.subscribe("Translate:restore_complete",function(){c();b()});Recite.Event.subscribe("Translate:complete",function(){b()});Recite.Event.subscribe("Controls:loaded",function(){b()});var q=null;return{setOptions:function(a){Recite.Debug.log("Recite.Controls","Setting options");e=Recite.Util.merge(e,a);Recite.Controls.Mobile.setOptions(a.Mobile);
Recite.Controls.Core.setOptions(a.Core);Recite.Controls.Desktop.setOptions(a.Desktop)},load:function(b){window.self!=window.top?setTimeout(function(){a(b)},2E3):a(b)},disableOverlay:function(){var a=0;Recite.Magnifier.isEnabled()&&(a=1,Recite.Magnifier.disable());Recite.Ruler.isEnabled()&&(a=2,Recite.Ruler.disable());Recite.ScreenMask.isEnabled()&&(a=3,Recite.ScreenMask.disable());return a},reEnableOverlay:function(a){switch(a){case 1:Recite.Magnifier.enable();break;case 2:Recite.Ruler.enable();break;
case 3:Recite.ScreenMask.enable()}},disableInstanceOverlay:function(){Recite.Magnifier.disableInstance();Recite.Ruler.disableInstance();Recite.ScreenMask.disableInstance()},loaded:k,disable:function(){k&&Recite.Util.each(e.modules,function(a,b){"undefined"!=typeof b.disable&&b.disable()});e.enabled=!1}}}();Recite.namespace("Controls.Core");
Recite.Controls.Core=function(){function h(b,d){a();f()}function f(){Recite.Util.each(Recite.Sizzle(".recite-ui-toggle",document),function(a,b){a=b.getAttribute("data-preference");"undefined"!==Recite.Preferences.get(a)&&(Recite.Preferences.get(a)?b.setAttribute("class",b.getAttribute("class").replace("recite-ui-toggle-active","")+" recite-ui-toggle-active"):b.setAttribute("class",b.getAttribute("class").replace("recite-ui-toggle-active","")))});var a=Recite.Preferences.get("voice.gender");"undefined"!=
typeof a&&null!=a&&Recite.Util.each(Recite.Sizzle(".recite-voice",document),function(b,d){b=d.getAttribute("data-value");d.setAttribute("class",d.getAttribute("class").replace("active",""));-1!==b.indexOf(a)&&d.setAttribute("class",d.getAttribute("class")+" active")});var b=Recite.Preferences.get("player.playbackSpeed");b&&(Recite.Sizzle("#recite-playback-current-speed")[0].innerText=b)}function b(){}function c(a){if("undefined"===typeof a)return m;var b;a=a.split(".");var d=m;for(b=0;b<a.length;b++)if(d=
d[a[b]],"undefined"===typeof d)return null;return d}function a(){Recite.Util.each(p,function(a,b){if("undefined"!==typeof b.text){a=b.text;var e;d.tagPattern.lastIndex=0;for(var f=a;null!==(e=d.tagPattern.exec(a));){var g=c(e[1])||"";f=f.replace(e[0],g)}b.node.nodeValue=f}"undefined"!==typeof b.attributes&&Recite.Util.each(b.attributes,function(a,e){d.tagPattern.lastIndex=0;for(var f=e.value;null!==(a=d.tagPattern.exec(e.value));){var g=c(a[1]);"undefined"===typeof g&&(g=null);f=f.replace(a[0],g)}b.node.setAttribute(e.name,
f)})})}function k(a,b){var c=b.target?b.target:b.srcElement;Recite.Debug.log("event",b);b=c.getAttribute("data-key").split(" ");a=c.getAttribute("data-value").split(" ");if(b.length!==a.length)Recite.Debug.log("Recite.Controls.Core","Warning: Number of \n                keys does not match number of values.",c);else{c={};for(var f=0;f<b.length;f++){var g=b[f],p=("-"===a[f].charAt(0)?"-":"")+a[f].replace(/-/g," ");"toggle"===p&&(p=!Recite.Preferences.get(g));if(/\+|\-/.test(p[0])){var r="+"===p[0],
q=parseInt(p.replace(/[^0-9]/g,""),10),m=!1;if(r&&"0"==p[1]&&"."==p[2]||"0"==p[2]&&"."==p[3])m=!0,q/=10;var k=Recite.Preferences.get(g);k=null===k?e(g):k;p=r?k+q:k-q;m&&(p=Math.round(10*p)/10);m=g.replace("style.","").split(".");var h="";Recite.Util.each(m,function(a,b){h+=b.charAt(0).toUpperCase()+b.slice(1)});m=d.hasOwnProperty("max"+h+"Percentage")?d["max"+h+"Percentage"]:d.hasOwnProperty("max"+h)?d["max"+h]:d.defaultMax;var n=d.hasOwnProperty("min"+h+"Percentage")?d["min"+h+"Percentage"]:d.hasOwnProperty("min"+
h)?d["min"+h]:d.defaultMin;p>m&&(p=m);p<n&&(p=n);"style.font.size"==g&&(m=Recite.Preferences.get("style.zoom"),m=null===m?100:m,r=r?m+q:m-q,r>d.maxFontSizePercentage&&(r=d.maxFontSizePercentage),r<d.minFontSizePercentage&&(r=d.minFontSizePercentage),k>=d.zoomThreshold&&100<r?(c["style.font.size"]=d.zoomThreshold,g="style.zoom",p=r):100!=m&&(c["style.zoom"]=100));if(0===p.length||"null"===p)p=null}c[g]=p}Recite.Preferences.set(c)}}function e(a){if("undefined"===typeof a)return 100;var b;a=a.split(".");
var c=d.defaults;for(b=0;b<a.length;b++)if(c=c[a[b]],"undefined"===typeof c)return 100;return c}function q(a){var b=Recite.Sizzle(".recite-preference-set",a);Recite.DomEvent.add(b,"click",function(a){a.preventDefault?a.preventDefault():a.returnValue=!1;Recite.Event.publish("Controls:affect",a)});b=Recite.Sizzle(".recite-save",a);Recite.DomEvent.add(b,"click",function(a){a.preventDefault?a.preventDefault():a.returnValue=!1;Recite.Preferences.save()});b=Recite.Sizzle(".recite-reset",a);Recite.DomEvent.add(b,
"click",function(a){a.preventDefault?a.preventDefault():a.returnValue=!1;Recite.Preferences.resetAll()});b=Recite.Sizzle("#recite-toolbar-button-guide");Recite.DomEvent.add(b,"click",function(a){a.preventDefault&&(a.preventDefault?a.preventDefault():a.returnValue=!1);"undefined"!=typeof a.target&&window.open(a.target.getAttribute("href"))});Recite.DomEvent.add(Recite.Sizzle(".recite-language-set",a),"click",function(a){a=a.currentTarget?a.currentTarget:a.srcElement;var b=a.getAttribute("data-language");
a=a.getAttribute("data-text-direction");"ur"==b&&(Recite.Preferences.set("prevFontName",Recite.Preferences.get("style.font.face")),Recite.Preferences.set("style.font.face","Noto Nastaliq Urdu"));"ur"==Recite.Preferences.get("language")&&Recite.Preferences.set("style.font.face",Recite.Preferences.get("prevFontName"));"default"===b?(Recite.Preferences.set("direction",Recite.Language.Translate.getOptions().sourceDirection),Recite.Language.Translate.restore(),Recite.Preferences.set("language",null)):
(Recite.Preferences.set("language",b),Recite.Preferences.set("direction",a));Recite.Util.each(Recite.Sizzle(".recite-language-set"),function(a,d){d.setAttribute("class",d.getAttribute("class").replace(" recite-active",""));d.getAttribute("data-language")===b&&d.setAttribute("class",d.getAttribute("class")+" recite-active")})})}var d={tagPattern:/{{([A-Za-z._]+)}}/g,defaultMax:200,defaultMin:30,maxFontSizePercentage:200,minFontSizePercentage:30,zoomThreshold:150,minLineHeight:50,maxLineHeight:300,
minCharSpacing:0,maxCharSpacing:20,defaults:{style:{charSpacing:0}},minPlayerPlaybackSpeed:.5,maxPlayerPlaybackSpeed:2},p=[],m={links:{logout:Recite.baseUrl+"/user/logout"},preferences:null};return{setOptions:function(a){d=Recite.Util.merge(d,a)},init:function(){Recite.Debug.log("Recite.Controls.Core","Core controls invoked");Recite.Event.subscribe("Preferences:load",h);Recite.Event.subscribe("Preferences:set",h);Recite.Event.subscribe("Preferences:reset",h);Recite.Event.subscribe("Auth:reauthorize",
b);Recite.Event.subscribe("Controls:affect",k)},invoke:function(a){for(var b=a;null!==b;){if(3===b.nodeType&&0<b.nodeValue.trim().length){var e=b.nodeValue;if(d.tagPattern.test(e)){var f;d.tagPattern.lastIndex=0;for(var m=e;null!==(f=d.tagPattern.exec(e));){var h=c(f[1])||"";m=m.replace(f[0],h)}b.nodeValue=m;p.push({node:b,text:e})}}if(1===b.nodeType){var r=[];Recite.Util.each(b.attributes,function(a,b){a=b.value;if(d.tagPattern.test(a)){var e;d.tagPattern.lastIndex=0;for(r.push({name:b.name,value:b.value});null!==
(e=d.tagPattern.exec(a));)a=c(e[1]),"undefined"===typeof a&&(a=null),b.value=b.value.replace(e[0],a)}});0<r.length&&p.push({node:b,attributes:r})}if(b.hasChildNodes())b=b.firstChild;else{for(;null===b.nextSibling&&b!==a;)b=b.parentNode;b=b===a?null:b.nextSibling}}Recite.Util.each(Recite.Sizzle(".recite-ui-toggle",a),function(a,b){Recite.UI.Toggle.invoke(b);Recite.DomEvent.add(b,"click",function(a){a=a.currentTarget?a.currentTarget:a.srcElement;Recite.Preferences.set(a.getAttribute("data-preference"),
a.checked)})});Recite.Util.each(Recite.Sizzle(".recite-slider"),function(a,b){var d=b.getAttribute("data-type");Recite.UI.Slider.invoke(b,function(a){Recite.Event.publish("Slider:"+d,a)})});q(a)}}}();Recite.namespace("Controls.Desktop");
Recite.Controls.Desktop=function(){function h(a,b){if("play"===b||"stopped"===a.getAttribute("data-status")&&"undefined"===b)return a.setAttribute("class",a.getAttribute("class").replace("recite-sprite-button-play","recite-sprite-button-stop")),a.setAttribute("data-status","playing"),"playing";if("stop"===b||"playing"===a.getAttribute("data-status")&&"undefined"===b)return a.setAttribute("class",a.getAttribute("class").replace("recite-sprite-button-stop","recite-sprite-button-play")),a.setAttribute("data-status",
"stopped"),"stopped"}function f(){var a=Recite.Sizzle("[tabindex]");Recite.Util.each(a,function(a,b){a=parseInt(b.getAttribute("tabindex"));a>=g.tabIndexStartValue&&b.setAttribute("tabindex",a+200)})}function b(a){g.tabEnabled&&(null==m&&(m=g.tabIndexStartValue),a=Recite.Sizzle("[data-recite-tabbable]",a),Recite.Util.each(a,function(a,d){if("undefined"!=typeof d.getAttribute("data-tabbable-offset"))var e=parseInt(d.getAttribute("data-tabbable-offset"));null==d.getAttribute("tabindex")&&(a=m,isNaN(e)||
(a+=e),d.setAttribute("tabindex",a),m++,-1<(" "+d.className+" ").replace(/[\n\t]/g," ").indexOf(" recite-dropdown-invoke ")&&(e=Recite.Sizzle(d.getAttribute("data-target"))[0],b(e)),d.onfocus=function(a){var b="undefined"!=typeof a.target?a.target:a.srcElement;Recite.Util.each(Recite.Sizzle(".recite-dropdown-invoke-active"),function(a,b){a=Recite.Sizzle(b.getAttribute("data-target"))[0];Recite.Dom.isDescendant(document.activeElement,a)||b.click()});Recite.Util.each(Recite.Sizzle(".recite-dropdown"),
function(a,d){Recite.Dom.isDescendant(b,d)&&(a=Recite.Sizzle("[data-target='#"+d.getAttribute("id")+"']")[0],"undefined"!=a&&-1==(" "+a.className+" ").replace(/[\n\t]/g," ").indexOf(" recite-dropdown-invoke-active ")&&c(a))})})}))}function c(a){var b=parseInt(a.getAttribute("tabindex")),d=0;Recite.Util.each(Recite.Sizzle(".recite-button-primary"),function(a,c){a=parseInt(c.getAttribute("tabindex"));a>b&&(0==d||a<d)&&(d=a)});Recite.Sizzle("[tabindex="+d+"]")[0].focus()}function a(){Recite.Key("enter",
function(){if(null!=document.activeElement.getAttribute("data-recite-tabbable"))return document.activeElement.click(),!1});Recite.Key("space",function(){if(null!=document.activeElement.getAttribute("data-recite-tabbable"))return document.activeElement.click(),!1});Recite.Key("shift+tab",function(){var a=parseInt(document.activeElement.getAttribute("tabindex"))-1,b=Recite.Sizzle("[tabindex="+a+"]")[0],d=!1;Recite.Util.each(Recite.Sizzle(".recite-dropdown"),function(a,c){Recite.Dom.isDescendant(b,c)&&
(a=Recite.Sizzle("[data-target='#"+c.getAttribute("id")+"']")[0],-1==(" "+a.className+" ").replace(/[\n\t]/g," ").indexOf(" recite-dropdown-invoke-active ")&&(d=!0,a.focus()))});if(d)return!1})}function k(){0<g.disabledButtons.length&&Recite.Util.each(g.disabledButtons,function(a,b){p.hasOwnProperty(b)&&(a=p[b],a.hasOwnProperty("buttonClass")&&(b=Recite.Sizzle(a.buttonClass),Recite.Util.each(b,function(a,b){b.style.display="none"})),a.hasOwnProperty("module")&&Recite.hasOwnProperty(a.module)&&"function"==
typeof Recite[a.module].disable&&"function"==typeof Recite[a.module].isEnabled&&Recite[a.module].isEnabled()&&(Recite[a.module].disable(),Recite.Debug.log("Recite.Controls.Desktop","Disable button : "+a.module)))})}function e(){var a=Recite.Sizzle(".recite-controls")[0],b=Recite.Sizzle(".recite-controls-inner")[0],d=Recite.Sizzle("#recite-close")[0];a=a.offsetWidth-d.offsetWidth;b=b.offsetWidth;Recite.Debug.log("SPACE AVAILABLE : ",a);Recite.Debug.log("SPACE Required : ",b);(b=b>a)?Recite.Sizzle(".recite-fixed-more-button")[0].style.display=
"block":q();Recite.Debug.log(" Add more was ",b)}function q(){var a=Recite.Sizzle(".recite-menue-gap")[0];Recite.Sizzle(".recite-fixed-more-button")[0].style.display="none";a.style.width="40px"}function d(){var a=Recite.Sizzle(".recite-controls")[0],b=Recite.Sizzle(".recite-controls-inner")[0],d=Recite.Sizzle(".recite-fixed-more-button")[0],c=Recite.Sizzle(".recite-controls-inner button"),e=0;Recite.Util.each(c,function(a,b){a=b.offsetLeft+b.offsetWidth;a>e&&(e=a)});Recite.Debug.log("extreem",e);
d=d.offsetLeft;c=a.scrollLeft;Recite.Debug.log("offset",c);Recite.Debug.log("space",d);b=b.offsetWidth;0<e&&e<b&&(b=e);c+=d/2;c+d>e&&(c=e-d);c<=b&&(a.scrollLeft=c);c+d>=e&&q()}var p={previous:{buttonClass:".recite-sprite-button-back"},play:{buttonClass:".recite-sprite-button-play"},forward:{buttonClass:".recite-sprite-button-forward"},fontMinus:{buttonClass:".recite-sprite-button-font-minus"},font:{buttonClass:".recite-sprite-button-font"},fontPlus:{buttonClass:".recite-sprite-button-font-plus"},
themes:{buttonClass:".recite-sprite-button-themes"},ruler:{buttonClass:".recite-sprite-button-ruler",module:"Ruler",preferences:{"style.ruler.enabled":!1}},screenMask:{buttonClass:".recite-sprite-button-screenmask",module:"ScreenMask",preferences:{"style.screenMask.enabled":!1}},dictionary:{buttonClass:".recite-sprite-button-dictionary",module:"Dictionary"},translate:{buttonClass:".recite-sprite-button-translate"},textMode:{buttonClass:".recite-sprite-button-textmode"},margin:{buttonClass:".recite-sprite-button-margin"},
alignment:{buttonClass:".recite-sprite-button-alignment"},mp3:{buttonClass:".recite-sprite-button-mp3"},magnifier:{buttonClass:".recite-sprite-button-magnifier",module:"Magnifier",preferences:{"magnifier.enabled":!1}},settings:{buttonClass:".recite-sprite-button-settings"},reset:{buttonClass:".recite-sprite-button-reset"},guide:{buttonClass:".recite-sprite-button-userguide"}},m=null,n={"default":{name:"Default",native_name:"Reset",audible:!1,flag:null},af:{name:"Afrikaans",native_name:"Afrikaans",
audible:!1,flag:"sa"},sq:{name:"Albanian",native_name:"shqip",audible:!1,flag:"al"},am:{name:"Amharic",native_name:"\u12a3\u121b\u122d\u129b",audible:!1,flag:null},ar:{name:"Arabic",native_name:"\u0639\u0631\u0628\u064a",audible:!0,flag:"dz",direction:"rtl"},hy:{name:"Armenian",native_name:"\u0540\u0561\u0575\u0565\u0580\u0567\u0576",audible:!1,flag:null},az:{name:"Azerbaijani",native_name:"\u0622\u0630\u0631\u0628\u0627\u064a\u062c\u0627\u0646\u062c\u0627 \u062f\u064a\u0644\u064a",audible:!1,flag:"az"},
eu:{name:"Basque",native_name:"euskara",audible:!1,flag:null},bn:{name:"Bengali",native_name:"\u09ac\u09be\u0982\u09b2\u09be (ba\u025b\u1e45l\u0101)",audible:!1,flag:"bd"},be:{name:"Belarusian",native_name:"\u0411\u0435\u043b\u0430\u0440\u0443\u0441\u043a\u0430\u044f \u043c\u043e\u0432\u0430",audible:!1,flag:"by"},bs:{name:"Bosnian",native_name:"bosanski",audible:!1,flag:null},bg:{name:"Bulgarian",native_name:"\u0431\u044a\u043b\u0433\u0430\u0440\u0441\u043a\u0438 (b\u00e3lgarski)",audible:!1,flag:"bg"},
ca:{name:"Catalan",native_name:"catal\u00e0",audible:!1,flag:"ad"},ceb:{name:"Cebuano",native_name:"Sinugboanon",audible:!1,flag:null},ny:{name:"Chichewa",native_name:"Chiche\u0175a",audible:!1,flag:null},"zh-CN":{name:"Chinese Simplified",native_name:"\u4e2d\u56fd\u7b80\u5316",audible:!0,flag:"cn"},"zh-TW":{name:"Chinese Traditional",native_name:"\u4e2d\u570b\u50b3\u7d71",audible:!0,flag:"cn"},co:{name:"Corsican",native_name:"corsu",audible:!1,flag:null},hr:{name:"Croatian",native_name:"Hrvatski",
audible:!1,flag:"hr"},cs:{name:"Czech",native_name:"\u010de\u0161tina",audible:!0,flag:"cz"},da:{name:"Danish",native_name:"dansk",audible:!0,flag:"dk"},nl:{name:"Dutch",native_name:"Nederlands",audible:!0,flag:"nl"},"en-GB":{name:"English - GB",native_name:"English - GB",audible:!0,flag:"gb"},"en-US":{name:"English - US",native_name:"English - US",audible:!0,flag:"us"},eo:{name:"Esperanto",native_name:"Esperanto",audible:!1,flag:null},et:{name:"Estonian",native_name:"eesti keel",audible:!1,flag:"ee"},
tl:{name:"Filipino",native_name:"filipino",audible:!1,flag:"ph"},fi:{name:"Finnish",native_name:"suomi",audible:!0,flag:"fi"},"fr-FR":{name:"French - Europe",native_name:"fran\u00e7ais",audible:!0,flag:"fr"},"fr-CA":{name:"French - Canadian ",native_name:"fran\u00e7ais canadien",audible:!0,flag:"fr"},fy:{name:"Frisian (West)",native_name:"Frysk",audible:!1,flag:null},gl:{name:"Galician",native_name:"Galego",audible:!1,flag:"gl"},ka:{name:"Georgian",native_name:"\u10e5\u10d0\u10e0\u10d7\u10e3\u10da\u10d8 (k\u02bbart\u02bbuli)",
audible:!1,flag:"ge"},de:{name:"German",native_name:"Deutsch",audible:!0,flag:"de"},el:{name:"Greek",native_name:"\u03b5\u03bb\u03bb\u03b7\u03bd\u03b9\u03ba\u03ac ",audible:!0,flag:"gr"},gu:{name:"Gujarati",native_name:"\t\u0a97\u0ac1\u0a9c\u0ab0\u0abe\u0aa4\u0ac0 ",audible:!1,flag:"gu"},ht:{name:"Haitian Creole",native_name:"Krey\u00f2l ayisyen",audible:!1,flag:"ht"},ha:{name:"Hausa",native_name:"\u062d\u064e\u0648\u0652\u0633",audible:!1,flag:null},haw:{name:"Hawaiian",native_name:"\u02bb\u014dlelo Hawai\u02bbi",
audible:!1,flag:null},iw:{name:"Hebrew",native_name:"\u05e2\u05b4\u05d1\u05b0\u05e8\u05b4\u05d9\u05ea",audible:!1,flag:"il",direction:"rtl"},hi:{name:"Hindi",native_name:"\u0939\u093f\u0928\u094d\u0926\u0940",audible:!0,flag:"in"},hmn:{name:"Hmong",native_name:"Hmong",audible:!1,flag:null},hu:{name:"Hungarian",native_name:"Hungarian Magyar",audible:!0,flag:"hu"},is:{name:"Icelandic",native_name:"\u00cdslenska",audible:!1,flag:"is"},ig:{name:"Igbo",native_name:"Igbo",audible:!1,flag:null},id:{name:"Indonesian",
native_name:"Bahasa Indonesia",audible:!0,flag:"id"},ga:{name:"Irish (Gaelic)",native_name:"Gaeilge",audible:!0,flag:"ie"},it:{name:"Italian",native_name:"italiano",audible:!0,flag:"it"},ja:{name:"Japanese",native_name:"\u65e5rus\u672c\u8a9e",audible:!0,flag:"jp"},jv:{name:"Javanese",native_name:"ba\u1e63a Jawa",audible:!1,flag:null},kn:{name:"Kannada",native_name:"\u0c95\u0ca8\u0ccd\u0ca8\u0ca1 ",audible:!1,flag:"id"},kk:{name:"Kazakh",native_name:"\u049a\u0430\u0437\u0430\u049b \u0442\u0456\u043b\u0456 ",
audible:!1,flag:null},km:{name:"Khmer",native_name:"\t\u1797\u17b6\u179f\u17b6\u1781\u17d2\u1798\u17c2\u179a ",audible:!1,flag:null},ko:{name:"Korean",native_name:"\ud55c\uad6d\uc5b4 ",audible:!0,flag:"kr"},ku:{name:"Kurdish",native_name:"Kurmanji ",audible:!1,flag:null,direction:"rtl"},ky:{name:"Kyrgyz",native_name:"\u0642\u0649\u0631\u0639\u0649\u0632 ",audible:!1,flag:null},lo:{name:"Lao",native_name:"\u0e9e\u0eb2\u0eaa\u0eb2\u0ea5\u0eb2\u0ea7 ",audible:!1,flag:null},la:{name:"Latin",native_name:"Lingua Latina",
audible:!1,flag:"va"},lv:{name:"Latvian",native_name:"\tlatvie\u0161u valoda",audible:!1,flag:"lv"},lt:{name:"Lithuanian",native_name:"lietuvi\u0173 kalba",audible:!1,flag:"lt"},lb:{name:"Luxembourgish",native_name:"L\u00ebtzebuergesch",audible:!1,flag:null},mk:{name:"Macedonian",native_name:"\u043c\u0430\u043a\u0435\u0434\u043e\u043d\u0441\u043a\u0438",audible:!1,flag:"mk"},mg:{name:"Malagasy",native_name:"Fiteny Malagasy",audible:!1,flag:null},ms:{name:"Malay",native_name:"Bahasa melayu",audible:!1,
flag:"my"},ml:{name:"Malayalam",native_name:"\u0d2e\u0d32\u0d2f\u0d3e\u0d33\u0d02 ",audible:!1,flag:null},mt:{name:"Maltese",native_name:"Malti",audible:!1,flag:"mt"},mi:{name:"Maori",native_name:"\tte Reo M\u0101ori",audible:!1,flag:null},mr:{name:"Marathi",native_name:"\u092e\u0930\u093e\u0920\u0940",audible:!1,flag:null},mn:{name:"Mongolian",native_name:"\u041c\u043e\u043d\u0433\u043e\u043b",audible:!1,flag:null},my:{name:"Myanmar (Burmese)",native_name:"\t\u1017\u1019\u102c\u1005\u1000\u102c\u1038 ",
audible:!1,flag:null},ne:{name:"Nepali",native_name:"\u0928\u0947\u092a\u093e\u0932\u0940",audible:!1,flag:null},no:{name:"Norwegian",native_name:"norsk",audible:!0,flag:"no"},ps:{name:"Pashto",native_name:"\u067e\u069a\u062a\u0648",audible:!1,flag:null},fa:{name:"Persian",native_name:"\u0641\u0627\u0631\u0633\u0649",audible:!1,flag:"ir",direction:"rtl"},pl:{name:"Polish",native_name:"polski",audible:!0,flag:"pl"},pt:{name:"Portuguese",native_name:"portugu\u00eas",audible:!0,flag:"pt"},pa:{name:"Punjabi",
native_name:"\u0a2a\u0a70\u0a1c\u0a3e\u0a2c\u0a40",audible:!1,flag:null},ro:{name:"Romanian",native_name:"rom\u00e2n\u0103",audible:!0,flag:"ro"},ru:{name:"Russian",native_name:"\u0420\u0443\u0441\u0441\u043a\u0438\u0439 \u044f\u0437\u044b\u043a ",audible:!0,flag:"ru"},sm:{name:"Samoan",native_name:"Gagana Samoa",audible:!1,flag:null},gd:{name:"Scots Gaelic",native_name:"G\u00e0idhlig",audible:!0,flag:null},sr:{name:"Serbian",native_name:"\u0441\u0440\u043f\u0441\u043a\u0438",audible:!1,flag:"rs"},
st:{name:"Sesotho",native_name:"seSotho",audible:!1,flag:null},sn:{name:"Shona",native_name:"chiShona",audible:!1,flag:null},sd:{name:"Sindhi",native_name:"\u0633\u0646\u068c\u064a",audible:!1,flag:null},si:{name:"Sinhala",native_name:"\u0dc3\u0dd2\u0d82\u0dc4\u0dbd",audible:!1,flag:null},sk:{name:"Slovak",native_name:"sloven\u010dina",audible:!0,flag:"sk"},sl:{name:"Slovenian",native_name:"sloven\u0161\u010dina",audible:!1,flag:"sk"},so:{name:"Somali",native_name:"af Soomaali",audible:!1,flag:null},
"es-ES":{name:"Spanish - Europe",native_name:"espa\u00f1ol",audible:!0,flag:"es"},"es-US":{name:"Spanish - US",native_name:"espa\u00f1ol",audible:!0,flag:"es"},su:{name:"Sundanese",native_name:"Basa Sunda",audible:!1,flag:null},sw:{name:"Swahili",native_name:"Kiswahili",audible:!1,flag:"ke"},sv:{name:"Swedish",native_name:"svenska",audible:!0,flag:"se"},ta:{name:"Tamil",native_name:"\u0ba4\u0bae\u0bbf\u0bb4\u0bcd ",audible:!0,flag:"in"},tg:{name:"Tajik",native_name:"\u0442\u043e\u04b7\u0438\u043a\u0438",
audible:!1,flag:null},te:{name:"Telugu",native_name:"\u0c24\u0c46\u0c32\u0c41\u0c17\u0c41",audible:!1,flag:"in"},th:{name:"Thai",native_name:"\u0e20\u0e32\u0e29\u0e32\u0e44\u0e17\u0e22",audible:!1,flag:"th"},tr:{name:"Turkish",native_name:"T\u00fcrk\u00e7e",audible:!0,flag:"tr"},uk:{name:"Ukrainian",native_name:"\u0423\u043a\u0440\u0430\u0457\u043d\u0441\u044c\u043a\u0430",audible:!0,flag:"ua"},ur:{name:"Urdu",native_name:"\u0627\u0631\u062f\u0648",audible:!0,flag:"pk",direction:"rtl",font:"Noto Nastaliq Urdu"},
uz:{name:"Uzbek",native_name:"\t\u0623\u06c7\u0632\u0628\u06d0\u0643 \ufe97\ufef4\ufee0\u06cc o'zbek tili \u045e\u0437\u0431\u0435\u043a \u0442\u0438\u043b\u0438",audible:!1,flag:null},vi:{name:"Vietnamese",native_name:"ti\u1ebfng vi\u1ec7t",audible:!0,flag:"vn"},cy:{name:"Welsh",native_name:"Cymraeg",audible:!0,flag:"wales"},yi:{name:"Yiddish",native_name:"\u05f2\u05b4\u05d3\u05d9\u05e9",audible:!1,flag:"ua"},xh:{name:"Xhosa",native_name:"isiXhosa",audible:!1,flag:null},yo:{name:"Yoruba",native_name:"Yor\u00f9b\u00e1",
audible:!1,flag:null},zu:{name:"Zulu",native_name:"isiZulu",audible:!1,flag:null}},g={promptBeforeLeave:!0,tabEnabled:!0,tabIndexStartValue:1,autoIncrementTabIndex:!0,disabledButtons:[],fonts:[{name:"Default",font:"Default"},{name:"Arial",font:"Arial"},{name:"Verdana",font:"Verdana"},{name:"Comic-Sans-MS",font:"Comic Sans MS"},{name:"Georgia",font:"Georgia"},{name:"Tahoma",font:"Tahoma"},{name:"Lato",font:"Lato"},{name:"Trebuchet",font:"Trebuchet"},{name:"Open-Dyslexic",font:"Open Dyslexic"}],swatches:[{backgroundColor:"#000",
color:"#fff",linkColor:"#FF0000",rulerColor:"#fff",maskColor:"#fff",section:"dark"},{backgroundColor:"#000",color:"#FCED20",linkColor:"#FF0000",rulerColor:"#FCED20",maskColor:"#FCED20",section:"dark"},{backgroundColor:"#005B0E",color:"#fff",linkColor:"#FFE100",section:"dark"},{backgroundColor:"#0201FF",color:"#fff",linkColor:"#FFAB00",section:"dark"},{backgroundColor:"#C83400",color:"#FFF",linkColor:"#F5FF00",section:"dark"},{backgroundColor:"#0201FF",color:"#FFAB00",linkColor:"#fff",section:"dark"},
{backgroundColor:"#343A3F",color:"#B8BCC0",linkColor:"#FCED20",section:"dark"},{backgroundColor:"#4D4D4D",color:"#FFF",linkColor:"#ffcb53",section:"dark"},{backgroundColor:"#932191",color:"#FFF",linkColor:"#fff902",section:"dark"},{backgroundColor:"#7C1818",color:"#FFF",linkColor:"#00ff67",section:"dark"},{backgroundColor:"#F4EED9",color:"#1D1916",linkColor:"#000",rulerColor:"#1D1916",maskColor:"#1D1916",section:"light"},{backgroundColor:"#CACFD3",color:"#343A3F",linkColor:"#000",rulerColor:"#343A3F",
maskColor:"#343A3F",section:"light"},{backgroundColor:"#FFE9BD",color:"#000000",linkColor:"#000",rulerColor:"#000",maskColor:"#000",section:"light"},{backgroundColor:"#FCED20",color:"#000",linkColor:"#000",rulerColor:"#000",maskColor:"#000",section:"light"},{backgroundColor:"#FCED20",color:"#0201FF",linkColor:"#000",rulerColor:"#000",maskColor:"#000",section:"light"},{backgroundColor:"#FFFFFF",color:"#C3272B",linkColor:"#000",rulerColor:"#000",maskColor:"#000",section:"light"},{backgroundColor:"#FFFFFF",
color:"#955200",linkColor:"#000",rulerColor:"#000",maskColor:"#000",section:"light"},{backgroundColor:"#FFFFFF",color:"#007312",linkColor:"#000",rulerColor:"#000",maskColor:"#000",section:"light"},{backgroundColor:"#FFFFFF",color:"#0100FF",linkColor:"#000",rulerColor:"#000",maskColor:"#000",section:"light"},{backgroundColor:"#fff",color:"#000",linkColor:"#C00",rulerColor:"#000",maskColor:"#000",section:"light"}],pallettes:[{backgroundColor:"#FCED20",color:"#000",linkColor:"#C00",rulerColor:"#000",
maskColor:"#000"},{backgroundColor:"#FCED20",color:"#000",linkColor:"#C00",rulerColor:"#000",maskColor:"#000"},{backgroundColor:"#FCED20",color:"#000",linkColor:"#C00",rulerColor:"#000",maskColor:"#000"}],margins:[{name:"Default",value:null,icon:null},{name:"Large",value:"5%",icon:"recite-sprite-margin-large"},{name:"Medium",value:"15%",icon:"recite-sprite-margin-medium"},{name:"Small",value:"30%",icon:"recite-sprite-margin-small"}],alignments:[{name:"Default",value:null,icon:null},{name:"Left aligned",
value:"left",icon:null},{name:"Right aligned",value:"right",icon:null},{name:"Centered",value:"center",icon:null},{name:"Justified",value:"justify",icon:null}],languages:function(){var a=[],b;for(b in n)if("default"!=b){var d=n[b];d.langCode=b;a.push(d)}a=Object.values(a).sort(function(a,b){return a.name.toLowerCase()>b.name.toLowerCase()?1:-1});d={"default":n["default"]};for(b in a)d[a[b].langCode]=a[b];return d}(),simplifiedControls:!0,showLogo:!0,customLogo:!1,customLogoLink:!1,customLogoTitle:!1,
customCloseTitle:!1,repositionBackground:!0};Recite.Event.subscribe("Preferences:load",k);Recite.Event.subscribe("Preferences:set",k);Recite.Event.subscribe("Preferences:reset",k);Recite.Event.subscribe("Controls:loaded",function(){var a=Recite.Sizzle("#recite-toolbar-button-previous")[0];a&&a.focus()});return{setOptions:function(a){g=Recite.Util.merge(g,a)},getOptions:function(){return g},init:function(){},localize:function(a){Recite.Debug.log("Recite.Controls.Desktop","Localizing controls: "+a);
Recite.Language.Translate.translate(Recite.Sizzle("#recite-header")[0],a)},applyTabOrder:function(){g.autoIncrementTabIndex&&f();b();a()},disable:function(){},invoke:function(a){var b=document.body;if(g.simplifiedControls){a.setAttribute("class",a.getAttribute("class")+" recite-controls-simplified");var c=Recite.Sizzle(".recite-sprite-logo")[0],f=Recite.Sizzle("#recite-logo-header")[0];if(Recite.Browser.isMobile()){c.setAttribute("class","recite-sprite-logo-icon-mobile");f.setAttribute("class",f.getAttribute("class")+
" recite-header-logo-icon");c=Recite.Sizzle(".recite-sprite-button-magnifier")[0];var r=Recite.Sizzle(".recite-sprite-button-ruler")[0],p=Recite.Sizzle(".recite-sprite-button-screenmask")[0];c.style.display="none";r.style.display="none";p.style.display="none";null==Recite.Sizzle("#recite-fixed-more-button")[0]&&(c=Recite.Sizzle("#recite-close")[0],c.setAttribute("class","recite-close-smaller-screen"),c.innerHTML="X",c=Recite.Sizzle(".recite-controls-inner")[0],f.parentNode.removeChild(f),f.setAttribute("class",
f.getAttribute("class")+" mobileLogo"),c.appendChild(f),f=document.createElement("button"),c=Recite.Sizzle("#recite-languages-dropdown")[0],f.innerHTML="<span>&gt;</span>more",f.setAttribute("class","recite-fixed-more-button"),f.setAttribute("id","recite-fixed-more-button"),f.addEventListener("click",function(){d()}),Recite.Sizzle("#recite-dropdowns")[0].insertBefore(f,c),e());var l=Recite.Sizzle(".recite-controls")[0];l.addEventListener("scroll",function(){l.offsetWidth+l.scrollLeft>=l.scrollWidth?
q():Recite.Sizzle(".recite-fixed-more-button")[0].style.display="block"});window.addEventListener("orientationchange",function(){e()},!1);(f=Recite.Sizzle(".recite-user-guide-link")[0])&&f.setAttribute("class",f.getAttribute("class")+" recite-default-button recite-default-button-full recite-standard-border-radius");Recite.Debug.log(" Recite.Controls","mobile controls set")}else c.setAttribute("class","recite-sprite-logo-small")}k();var m=Recite.Dom.getStyle(a,"height");m=parseInt(m.replace("px",""),
10);if("tooltip"===Recite.getOptions().selectionMethod)try{Recite.PlayerControls.getProvider().setTopProtection(m)}catch(K){}if(g.repositionBackground)if(f=Recite.Dom.getStyle(b,"background-position-y"),"0%"===f)b.setAttribute("style","background-position-y:"+m+" px !important");else if(f.match(/px/i)||"top"===f)f=f.replace("px",""),f=parseInt(f,10)+parseInt(m,10),b.setAttribute("style","background-position-y:"+f+" px !important");b.style.setProperty?(b.style.setProperty("position","absolute","important"),
b.style.setProperty("top",m+"px","important"),b.style.setProperty("width","100%","important"),b.style.setProperty("margin","auto","important")):(b.style.width="100%",b.style.position="absolute",b.style.top=m+"px",b.style.margin="auto");Recite.Util.each(Recite.Sizzle("*"),function(a,b){/recite/.test(b.getAttribute("id"))||/recite/.test(b.getAttribute("class"))||"fixed"!==Recite.Dom.getStyle(b,"position")||(a=b.offsetTop,a<m&&(b.style.top=m+a+"px"))});var n=Recite.Sizzle("#recite-fonts")[0];Recite.Util.each(g.fonts,
function(a,b){a=document.createElement("div");a.setAttribute("class","recite-font recite-preference-set recite-default-button recite-default-button-full recite-standard-border-radius");a.setAttribute("data-key","style.font.face");"Default"!==b?(a.setAttribute("data-value",b.name),a.style.fontFamily=b.font):a.setAttribute("data-value","null");a.innerText=b.name;a.textContent=b.name;a.setAttribute("data-recite-tabbable","");n.appendChild(a)});Recite.Sizzle("#recite-swatches");var w=Recite.Sizzle("#recite-swatches-dark")[0],
C=Recite.Sizzle("#recite-swatches-light")[0];Recite.Util.each(g.swatches,function(a,b){a=document.createElement("div");a.setAttribute("class","recite-swatch recite-preference-set recite-standard-border-radius");a.setAttribute("data-recite-translate-skip","true");null===b.backgroundColor&&null===b.color&&null===b.linkColor?(a.setAttribute("class",a.getAttribute("class")+" recite-swatch-default"),a.textContent="Default",a.innerText="Default"):(a.textContent="A",a.innerText="A");var d="style.backgroundColor style.font.color style.link.color",
c=b.backgroundColor+" "+b.color+" "+b.linkColor;b.hasOwnProperty("rulerColor")&&(d+=" style.ruler.color",c+=" "+b.rulerColor);b.hasOwnProperty("maskColor")&&(d+=" style.screenMask.color",c+=" "+b.maskColor);b.hasOwnProperty("highlightColor")&&(d+=" style.wwHighlight.color",c+=" "+b.highlightColor);a.setAttribute("data-key",d);a.setAttribute("data-value",c);a.setAttribute("data-recite-tabbable","");a.style.color=b.color;a.style.backgroundColor=b.backgroundColor;"dark"==b.section&&w.appendChild(a);
"light"==b.section&&C.appendChild(a)});var y=Recite.Sizzle("#recite-languages")[0];Recite.Util.each(g.languages,function(a,b){var d=document.createElement("li"),c=document.createElement("div"),e=document.createElement("div");b.audible&&(e.setAttribute("class","recite_language_audible recite-sprite-audible "),d.appendChild(e));e=document.createElement("div");e.appendChild(document.createTextNode(b.name));e.setAttribute("class","recite_language_main_name_str");d.appendChild(e);"undefined"!=typeof b.native_name&&
(c.setAttribute("class","recite_language_native_name_str"),c.setAttribute("data-recite-translate-skip","false"),c.appendChild(document.createTextNode(b.native_name)),d.appendChild(c));d.setAttribute("class","recite-language-set recite-default-button recite-default-button-full recite-standard-border-radius");d.setAttribute("data-language",a);d.setAttribute("data-text-direction",b.hasOwnProperty("direction")?b.direction:"ltr");d.setAttribute("data-font",b.hasOwnProperty("font")?b.font:"");d.setAttribute("data-recite-tabbable",
"");d.setAttribute("data-recite-translate-skip","false");y.appendChild(d)});var G=Recite.Sizzle("#recite-margins")[0];Recite.Util.each(g.margins,function(a,b){a=document.createElement("div");a.setAttribute("class","recite-margin recite-preference-set");a.setAttribute("data-key","style.marginSize");a.setAttribute("data-value",b.value);var d=b.icon||null;if(null!==d){var c=document.createElement("div");c.setAttribute("class",d);c.style.margin="0 auto";c.setAttribute("data-key","style.marginSize");c.setAttribute("data-value",
b.value);a.appendChild(c)}else a.textContent=b.name,a.innerText=b.name;G.appendChild(a)});var F=Recite.Sizzle(".recite-sprite-button-margin")[0];F.style.display="none";Recite.Event.subscribe("TextMode:enabled",function(a,b){F.style.display="block"});Recite.Event.subscribe("TextMode:disabled",function(a,b){F.style.display="none"});var H=Recite.Sizzle("#recite-alignments")[0];Recite.Util.each(g.alignments,function(a,b){a=document.createElement("div");a.setAttribute("class","recite-alignment recite-preference-set");
a.setAttribute("data-key","style.textAlign");a.setAttribute("data-value",b.value);var d=b.icon||null;if(null!==d){var c=document.createElement("div");c.setAttribute("class",d);c.style.margin="0 auto";c.setAttribute("data-key","style.text-align");c.setAttribute("data-value",b.value);a.appendChild(c)}else a.textContent=b.name,a.innerText=b.name;H.appendChild(a)});var E=Recite.Sizzle(".recite-sprite-button-alignment")[0];E&&(E.style.display="none",Recite.Event.subscribe("TextMode:enabled",function(a,
b){E.style.display="block"}),Recite.Event.subscribe("TextMode:disabled",function(a,b){E.style.display="none"}));b=Recite.Sizzle(".recite-button",a);Recite.UI.Dropdown.invoke(b);Recite.Debug.log("Recite.Desktop","launch advanced");Recite.UI.AdvancedColors.invoke(".recite-colorpicker",a);var I=Recite.Sizzle(".recite-sprite-button-play")[0];Recite.DomEvent.add(I,"click",function(a){"stopped"===I.getAttribute("data-status")?Recite.PlayerControls.play():Recite.PlayerControls.stop()});Recite.Event.subscribe("Audio:ended",
function(a,b){h(I,"stop")});Recite.Event.subscribe("Audio:started",function(a,b){h(I,"play")});g.showLogo&&Recite.getOptions("showBrand")||(a=Recite.Sizzle(".recite-logo")[0],a.innerHTML="",a.setAttribute("class","custom-logo"));0!=g.customLogo&&(a=Recite.Sizzle(".recite-logo")[0],a.setAttribute("class","custom-logo"),a.innerHTML='<img src="'+g.customLogo+'" />',0!=g.customLogoLink&&(a.href=g.customLogoLink),0!=g.customLogoTitle&&(a.title=g.customLogoTitle));0!=g.customCloseTitle&&(a=Recite.Sizzle("a.recite-close"),
Recite.Util.each(a,function(a,b){b.title=g.customCloseTitle}));!1===Recite.AudioDownload.getOptions().enabled&&(a=Recite.Sizzle(".recite-sprite-button-mp3")[0],a.outerHTML="");a=Recite.Sizzle(".recite-close");Recite.getOptions("showBrand")||Recite.Util.each(a,function(a,b){b.setAttribute("title","Close Accessibility Toolbar")});Recite.DomEvent.add(a,"click",function(a){a.preventDefault()});a=Recite.Sizzle(".recite-version");Recite.DomEvent.add(a,"click",function(a){Recite.Util.each(Recite.Sizzle(".recite-auth"),
function(a,b){b.style.display="block"})});Recite.DomEvent.add(Recite.Sizzle("#recite-logo-header"),"click",function(a){if(g.promptBeforeLeave){a.preventDefault();var b=Recite.Controls.disableOverlay();Recite.Gui.Modal.show(Recite.Message.getMessage("leavingCloseHeader","Leaving Website"),Recite.Message.getMessage("leavingCloseDialog","You are about to leave this website to go to http://www.reciteme.com. Click OK or hit <em>enter</em> key to continue. Press esc key or hit <em>cancel</em> to stay on this page."),
Recite.Message.getMessage("leavingCloseOk","OK"),Recite.Message.getMessage("leavingCloseCancel","Cancel"),function(){window.open(Recite.Sizzle("#recite-logo-header")[0].getAttribute("href"),"_blank")},function(){Recite.Gui.Notification.show("Close operation canceled");Recite.Controls.reEnableOverlay(b)})}})}}}();Recite.namespace("Controls.Mobile");
Recite.Controls.Mobile=function(){function h(b,c){if("play"===c||"stopped"===b.getAttribute("data-status")&&"undefined"===c)return b.setAttribute("class",b.getAttribute("class").replace("recite-sprite-button-top-play-mobile","recite-sprite-button-top-stop-mobile")),b.setAttribute("data-status","playing"),"playing";if("stop"===c||"playing"===b.getAttribute("data-status")&&"undefined"===c)return b.setAttribute("class",b.getAttribute("class").replace("recite-sprite-button-top-stop-mobile","recite-sprite-button-top-play-mobile")),
b.setAttribute("data-status","stopped"),"stopped"}var f={fonts:"Default Arial Verdana Georgia Tahoma Trebuchet Tiresias".split(" "),swatches:[{backgroundColor:null,color:null,linkColor:null},{backgroundColor:"#000",color:"#fff",linkColor:"#C00"},{backgroundColor:"#C3272A",color:"#FFF",linkColor:"#00C"},{backgroundColor:"#F05924",color:"#FFF",linkColor:"#00C"},{backgroundColor:"#37B64B",color:"#fff",linkColor:"#2fc2ef"},{backgroundColor:"#0201FF",color:"#fff",linkColor:"#9c0001"},{backgroundColor:"#0000FE",
color:"#FCED20",linkColor:"#2fc2ef"},{backgroundColor:"#FCED20",color:"#0000FE",linkColor:"#2fc2ef"},{backgroundColor:"#fff",color:"#C3272A",linkColor:"#2fc2ef"},{backgroundColor:"#fff",color:"#F05924",linkColor:"#2fc2ef"},{backgroundColor:"#fff",color:"#37B64B",linkColor:"#C00"},{backgroundColor:"#fff",color:"#0201FF",linkColor:"#C00"},{backgroundColor:"#1DFF16",color:"#F4EED9",linkColor:"#C00"},{backgroundColor:"#CACFD3",color:"#343A3F",linkColor:"#C00"},{backgroundColor:"#F4EED9",color:"#1D1916",
linkColor:"#C00"},{backgroundColor:"#343A3F",color:"#CACFD3",linkColor:"#C00"},{backgroundColor:"#fff",color:"#000",linkColor:"#C00"}],languages:{"default":{name:"Default",flag:null},af:{name:"Afrikaans",flag:"sa"},sq:{name:"Albanian",flag:"al"},ar:{name:"Arabic",flag:"dz"},az:{name:"Azerbaijani",flag:"az"},eu:{name:"Basque",flag:null},bn:{name:"Bengali",flag:"bd"},be:{name:"Belarusian",flag:"by"},bg:{name:"Bulgarian",flag:"bg"},ca:{name:"Catalan",flag:"ad"},"zh-CN":{name:"Chinese Simplified",flag:"cn"},
"zh-TW":{name:"Chinese Traditional",flag:"cn"},hr:{name:"Croatian",flag:"hr"},cs:{name:"Czech",flag:"cz"},da:{name:"Danish",flag:"dk"},nl:{name:"Dutch",flag:"nl"},en:{name:"English",flag:"gb"},eo:{name:"Esperanto",flag:null},et:{name:"Estonian",flag:"ee"},tl:{name:"Filipino",flag:"ph"},fi:{name:"Finnish",flag:"fi"},fr:{name:"French",flag:"fr"},gl:{name:"Galician",flag:"gl"},ka:{name:"Georgian",flag:"ge"},de:{name:"German",flag:"de"},el:{name:"Greek",flag:"gr"},gu:{name:"Gujarati",flag:"gu"},ht:{name:"Haitian Creole",
flag:"ht"},iw:{name:"Hebrew",flag:"il"},hi:{name:"Hindi",flag:"in"},hu:{name:"Hungarian",flag:"hu"},is:{name:"Icelandic",flag:"is"},id:{name:"Indonesian",flag:"id"},ga:{name:"Irish",flag:"ie"},it:{name:"Italian",flag:"it"},ja:{name:"Japanese",flag:"jp"},kn:{name:"Kannada",flag:"id"},ko:{name:"Korean",flag:"kr"},la:{name:"Latin",flag:"va"},lv:{name:"Latvian",flag:"lv"},lt:{name:"Lithuanian",flag:"lt"},mk:{name:"Macedonian",flag:"mk"},ms:{name:"Malay",flag:"my"},mt:{name:"Maltese",flag:"mt"},no:{name:"Norwegian",
flag:"no"},fa:{name:"Persian",flag:"ir"},pl:{name:"Polish",flag:"pl"},pt:{name:"Portuguese",flag:"pt"},ro:{name:"Romanian",flag:"ro"},ru:{name:"Russian",flag:"ru"},sr:{name:"Serbian",flag:"rs"},sk:{name:"Slovak",flag:"sk"},sl:{name:"Slovenian",flag:"sk"},es:{name:"Spanish",flag:"es"},sw:{name:"Swahili",flag:"ke"},sv:{name:"Swedish",flag:"se"},ta:{name:"Tamil",flag:"in"},te:{name:"Telugu",flag:"in"},th:{name:"Thai",flag:"th"},tr:{name:"Turkish",flag:"tr"},uk:{name:"Ukrainian",flag:"ua"},ur:{name:"Urdu",
flag:"pk"},vi:{name:"Vietnamese",flag:"vn"},cy:{name:"Welsh",flag:"wales"},yi:{name:"Yiddish",flag:"ua"}}};return{setOptions:function(b){Recite.Debug.log("Recite.Controls.Mobile","Setting options");f=Recite.Util.merge(f,b)},init:function(){},localize:function(b){Recite.Debug.log("Recite.Controls.Desktop","Localizing controls: "+b)},invoke:function(b){var c=document.body,a=Recite.Dom.getStyle(b,"height");a=parseInt(a.replace("px",""),10)+10;c.style.position="absolute";c.style.paddingBottom=a+"px";
c.style.top=a+"px";c.style.width="100%";var k=Recite.Sizzle("#recite-fonts-list")[0];Recite.Util.each(f.fonts,function(a,b){a=document.createElement("li");var d=document.createTextNode(b);a.setAttribute("class","recite-font recite-preference-set");a.setAttribute("data-key","style.font.face");a.setAttribute("data-value",b);a.style.fontFamily=b;a.appendChild(d);k.appendChild(a)});var e=Recite.Sizzle("#recite-languages")[0];Recite.Util.each(f.languages,function(a,b){var d=document.createElement("li");
b=document.createTextNode(b.name);d.setAttribute("class","recite-language-set");d.setAttribute("data-language",a);d.appendChild(b);e.appendChild(d)});var q=Recite.Sizzle("#recite-swatches")[0];Recite.Util.each(f.swatches,function(a,b){a=document.createElement("div");a.setAttribute("class","recite-swatch recite-preference-set");null===b.backgroundColor&&null===b.color&&null===b.linkColor?(a.setAttribute("class",a.getAttribute("class")+" recite-swatch-default"),a.textContent="/",a.innerText="/"):(a.textContent=
"A",a.innerText="A");a.setAttribute("data-key","style.backgroundColor style.font.color style.link.color");a.setAttribute("data-value",b.backgroundColor+" "+b.color+" "+b.linkColor);a.style.setProperty("color",b.color,"important");a.style.backgroundColor=b.backgroundColor;q.appendChild(a)});b=Recite.Sizzle(".recite-dropdown-invoke",b);Recite.UI.Dropdown.invoke(b);b=Recite.Sizzle(".recite-language-set");Recite.DomEvent.add(b,"click",function(a){Recite.UI.Dropdown.hideGroup("main")});b=Recite.Sizzle(".recite-sprite-button-share-mobile")[0];
Recite.DomEvent.add(b,"click",function(a){ReciteAndroidInterface.sharePage(document.URL)});b=Recite.Sizzle(".recite-sprite-button-favourite-mobile")[0];Recite.DomEvent.add(b,"click",function(a){ReciteAndroidInterface.addToFavourites(document.URL)});var d=Recite.Sizzle(".recite-sprite-button-top-play-mobile")[0];Recite.DomEvent.add(d,"click",function(a){"stopped"===d.getAttribute("data-status")?Recite.PlayerControls.play():Recite.PlayerControls.stop()});Recite.Event.subscribe("Audio:ended",function(a,
b){h(d,"stop")});Recite.Event.subscribe("Audio:started",function(a,b){h(d,"play")})}}}();Recite.namespace("Recite.Parser.Html");
Recite.Parser.Html=function(){function h(a){!1!==k.bubbleEvents&&(a=Recite.Sizzle(".recite-ele"),Recite.DomEvent.add(a,"click",function(a){a.target.parentNode.click()}))}function f(a){var d=null;if(0<a.length){var c=0,e=!1;Recite.Util.each(a,function(a,b){c+=Recite.Dom.getText(b).trim().length;if("IMG"==b.nodeName||"INPUT"==b.nodeName||"TEXTAREA"==b.nodeName)e=!0,b.setAttribute(k.elementAttribute,"true"),d=b});if(c>=k.minCharacters&&!e){var f=!1;Recite.Util.each(Recite.Dom.getAncestors(a[0]),function(b,
c){/ui-datepicker/g.test(c.getAttribute("class"))&&3===a[0].nodeType&&(f=!0,d=a[0].parentNode,(b=a[0].parentNode.getAttribute("class"))&&(b=b.replace(" recite-ele","")),a[0].parentNode.setAttribute("class",b+" recite-ele"))});if(!f){d=b(a[0].ownerDocument);a[0].parentNode.insertBefore(d,a[0]);for(var g=0;g<a.length;g++){var l=a[g].parentNode.removeChild(a[g]);d.appendChild(l)}}}}return d}function b(a){a=a.createElement(k.wrapTag);a.className="recite-ele recite-ele-style";a.style.display="inline";
if(k.debug.highlightElements){var b=Math.floor(256*Math.random()),c=Math.floor(256*Math.random()),e=Math.floor(256*Math.random());try{a.style.backgroundColor="rgba("+b+","+c+","+e+",0.4)"}catch(n){a.style.backgroundColor="rgb("+b+","+c+","+e+")"}}return a}function c(a){var b=[],c=[];Recite.Util.each(k.concatenateElementExceptions,function(a,d){b.push(d.toLowerCase())});Recite.Util.each(k.concatenateTypes,function(a,b){c.push(b.toLowerCase())});Recite.Util.each(k.skipConcatenation.elementTypes,function(a,
d){b.push(d.toLowerCase())});var e=0<=Recite.Util.inArray(Recite.Dom.getStyle(a,"display"),c),f=0<=Recite.Util.inArray(a.tagName.toLowerCase(),b),g=!1;Recite.Util.each(k.skipConcatenation.selectors,function(b,d){b=Recite.Sizzle(d);Recite.Util.each(b,function(b,d){d==a&&(g=!0)})});return e&&!f&&!g}function a(b,d,f){"undefined"===typeof f&&(f=[[]]);var p=!1,h=!1;if(1===b.nodeType&&/recite-ele/g.test(b.getAttribute("class")))return f;if(b){b.shadowRoot&&1==Recite.getOptions("shadowDomSupport")&&(a(b.shadowRoot,
1,f),b.setAttribute("data-recite-shadow","true"));if(1===b.nodeType&&(0<=Recite.Util.inArray(b.tagName,k.skipElements)||"true"===b.getAttribute("data-recite-skip"))||1===b.nodeType&&0<e.length&&"BR"===b.tagName&&"BR"===e[e.length-1].tagName)return f;3===b.nodeType&&Recite.Dom.getText(b).replace(/^\s*/,"").replace(/\s*$/,"");if(1===b.nodeType){var g;if(g=c(b)){a:{if(1===b.nodeType){g=b.getElementsByTagName("*");for(var l=0;l<g.length;l++)if("block"===Recite.Dom.getStyle(g[l],"display")){g=!0;break a}}g=
!1}g=!g}if(g||"INPUT"==b.nodeName||"TEXTAREA"==b.nodeName&&"true"!==b.getAttribute("data-recite-skip"))p=!0}else 3===b.nodeType&&(p=!0);!0===p&&(e[e.length-1]!==b.previousSibling&&(f.push(e),e=[]),e.push(b),h=!0);p=0;g=b.childNodes[p];if(!h)for(;g;)a(g,d+1,f),p++,g=b.childNodes[p]}return f}var k={maxCharacters:1E3,minCharacters:1,wrapTag:"recite",elementAttribute:"data-recite-ele",concatenateTypes:["inline","inline-block"],skipConcatenation:{elementTypes:["li","img","label"],selectors:[]},skipElements:"SCRIPT STYLE SELECT OPTION FRAMESET FRAME IFRAME NOSCRIPT".split(" "),
parseImgAltAttribute:!0,bubbleEvents:!1,bubbleStyles:!0,debug:{highlightElements:!1},concatenateElementExceptions:["li"]},e=[];return{setOptions:function(a){Recite.Debug.log("Recite.Parser.Html","Setting options");k=Recite.Util.merge(k,a)},parse:function(b){var d=new Date,c=a(b,1);b=Recite.Sizzle("img");Recite.Util.each(b,function(a,b){"true"!==b.getAttribute("data-recite-skip")&&c.push([b])});0<e.length&&c.push(e);0===c[c.length-1].length&&c.pop();var k=[];Recite.Util.each(c,function(a,b){0!==b.length&&
(a=f(b),null!==a&&k.push(a))});Recite.Debug.log("Recite.Parser.Html","Parsed "+k.length+" elements in: "+((new Date).getTime()-d.getTime())+"ms");h(k);Recite.Event.publish("Recite.Parser:parsed");d=document.getElementsByTagName("*");b=0;for(var q=d.length;b<q;b++)Recite.Style.getOptions().preserve_background_images&&""!=d[b].style.backgroundImage&&d[b].setAttribute("class",d[b].getAttribute("class")+" recite-ignore-styles-background ");return k},wrapElements:function(a){Recite.Util.each(a,function(a,
b){f(b)})}}}();Recite.namespace("Recite.Parser.Selector");
Recite.Parser.Selector=function(){var h={maxCharacters:1E3,minCharacters:1,selector:".recite"};return{setOptions:function(f){Recite.Debug.log("Recite.Parser.Selector","Setting options");h=Recite.Util.merge(h,f)},parse:function(f){Recite.Debug.log("Recite.Parser.Selector","Parser invoked on element:",f);var b=Recite.Sizzle(h.selector,f);Recite.Util.each(b,function(c,a){a=Recite.Dom.getText(a);(a.length<h.minCharacters||a.length>h.maxCharacters)&&b.splice(c)});return b}}}();Recite.namespace("PlayerControls");
Recite.PlayerControls=function(){function h(){null===b.provider?b.enableMobileControls&&Recite.Browser.isMobile()?b.provider=Recite.PlayerControls.Fixed:b.provider=Recite.PlayerControls.Tooltip:"none"===b.provider?b.provider=Recite.PlayerControls.NoGUI:"disable"===b.provider&&(b.provider=null);null!=b.provider&&b.provider.init&&b.provider.init()}function f(){Recite.Preferences.get("playerControls.enabled")?Recite.PlayerControls.enable():Recite.PlayerControls.disable()}var b={provider:null,enableMobileControls:!0,
minSkipTime:300},c=null;Recite.Event.subscribe("Recite.Dom.Observor:change",function(a,b){void 0!=b&&b.hasOwnProperty("affectedElements")&&Recite.PlayerControls.invoke(b.affectedElements)});Recite.Event.subscribe("Recite:load",h);Recite.Event.subscribe("Preferences:load",f);Recite.Event.subscribe("Preferences:set",f);Recite.Event.subscribe("Preferences:reset",f);return{init:h,setOptions:function(a){a.provider&&b.provider&&b.provider.destroy();b=Recite.Util.merge(b,a);Recite.PlayerControls.Tooltip.setOptions(a.Tooltip);
Recite.PlayerControls.Fixed.setOptions(a.Fixed);Recite.PlayerControls.NoGUI.setOptions(a.NoGUI);a.provider&&a.provider.init&&b.provider.init()},invoke:function(a){null!=b.provider&&b.provider.invoke(a)},enable:function(){null!=b.provider&&b.provider.enable()},disable:function(){null!=b.provider&&b.provider.disable()},hide:function(){null!=b.provider&&b.provider.hide()},invalidate:function(){null!=b.provider&&b.provider.invalidate()},getControls:function(){return null!=b.provider?b.provider.getControls():
null},getProvider:function(){return b.provider},play:function(){Recite.Debug.log("Recite.PlayerControls PLAY",document.activeElement);return null!=b.provider?document.activeElement!==document.body?b.provider.play(document.activeElement):b.provider.play():null},stop:function(){return null!=b.provider?b.provider.stop():null},next:function(a){var f=Math.floor(Date.now());window.clearTimeout(null);if(null==c||f-c>b.minSkipTime)return Recite.Debug.log("Recite.PlayerControls","next"),Recite.FrameUpdater.isActive()&&
Recite.FrameUpdater.hasActiveChildFrame()?(Recite.FrameUpdater.activeFramePlayNext(),null):null!=b.provider?(a=b.provider.next(a),c=f,a):null;Recite.Debug.log("Recite.PlayerControls","Skipping too fast, halting")},previous:function(a){var f=Math.floor(Date.now());window.clearTimeout(null);if(null==c||f-c>b.minSkipTime)return Recite.Debug.log("Recite.PlayerControls","prev"),Recite.FrameUpdater.isActive()&&Recite.FrameUpdater.hasActiveChildFrame()?(Recite.FrameUpdater.activeFramePlayPrev(),null):null!=
b.provider?(a=b.provider.previous(a),c=f,a):null;Recite.Debug.log("Recite.PlayerControls","Skipping too fast, halting")},first:function(){var a=Math.floor(Date.now());window.clearTimeout(null);if(null==c||a-c>b.minSkipTime)return c=a,Recite.Debug.log("Recite.PlayerControls","first"),null!=b.provider?b.provider.first():null;Recite.Debug.log("Recite.PlayerControls","Skipping too fast, halting")},last:function(){var a=Math.floor(Date.now());window.clearTimeout(null);if(null==c||a-c>b.minSkipTime)return c=
a,Recite.Debug.log("Recite.PlayerControls","last"),null!=b.provider?b.provider.last():null;Recite.Debug.log("Recite.PlayerControls","Skipping too fast, halting")}}}();Recite.namespace("PlayerControls.Tooltip");
Recite.PlayerControls.Tooltip=function(){function h(a){Recite.Util.each(n,function(b,d){Recite.Dom.isDescendant(a.target,d)||a.target===d||Recite.Dom.isDescendant(a.target,g)||a.target===g||Recite.Dom.isDescendant(a.target,Recite.Sizzle("#recite-header")[0])||k(d)})}function f(){Recite.Event.unsubscribe(x);Recite.Util.each([window],function(a,b){Recite.DomEvent.remove(b,"resize",u);Recite.DomEvent.remove(b,"scroll",z);Recite.DomEvent.remove(b,"click",h)})}function b(a){if(p){clearTimeout(d.timeout);
var b=this;g!==this&&(d.timeout=setTimeout(function(){c(b)},d.intent))}}function c(a){null!==a&&(null!==g&&(null!=g.getAttribute("class")&&g.setAttribute("class",g.getAttribute("class").replace("recite-selected","")),Recite.Event.publish("Recite.Tooltip:hide",{target:g})),g=a,q(a),g.setAttribute("class",g.getAttribute("class")+" recite-selected"),Recite.Event.publish("Recite.Tooltip:show",{target:g}),Recite.Preferences.get("player.autoplay")&&Recite.PlayerControls.Tooltip.play())}function a(){Recite.Debug.log("Recite.Tooltip",
"Binding buttons for tooltip");var a=m.getElementById("recite-play");Recite.DomEvent.add(a,"click",function(a){Recite.PlayerControls.Tooltip.play()});a=m.getElementById("recite-stop");Recite.DomEvent.add(a,"click",function(a){Recite.Player.stop()});a=m.getElementById("recite-back");Recite.DomEvent.add(a,"click",function(a){Recite.Player.rewind()});a=m.getElementById("recite-forward");Recite.DomEvent.add(a,"click",function(a){Recite.Player.forward()})}function k(a){a.style.display="none";null!==g&&
(null!=g.getAttribute("class")&&g.setAttribute("class",g.getAttribute("class").replace("recite-selected","")),Recite.Event.publish("Recite.Tooltip:hide",{target:g}));g=null}function e(a){return a.style&&a.style.transform?a.style.transform:"HTML"!=a.nodeName&&a.parentNode?e(a.parentNode):""}function q(b){b&&g&&b===g&&Recite.PlayerControls.getProvider().current&&Recite.PlayerControls.getProvider().current!==b&&(b=Recite.PlayerControls.getProvider().current);var c=Recite.Sizzle("#recite-tooltip",m)[0];
"undefined"===typeof c&&(Recite.Debug.log("Recite.Tooltip","Adding tooltip to document"),c=m.createElement("div"),c.setAttribute("class","recite-tooltip small"),c.setAttribute("id","recite-tooltip"),c.style.position="absolute",c.innerHTML='<div class="recite-tooltip-content">'+d.content+'</div>                         <div class="recite-sprite-tip-bottomleft" id="recite-tip"></div>',Recite.Sizzle("body",m)[0].appendChild(c),Recite.getOptions(),!1!==Recite.Controls.Desktop.getOptions().showLogo&&!1!==
Recite.getOptions("showBrand")&&!1===Recite.Controls.Desktop.getOptions().customLogo&&(document.getElementById("recite-tooltip-logo").setAttribute("class","recite-sprite-tooltip-logo"),c.setAttribute("class","recite-tooltip")),a(m),n.push(c));var f=c;f.style.display="block";for(var r=0;r<n.length;r++)n[r]!==f&&(n[r].style.display="none");var l=m.body,p=Recite.Dom.getPosition(b);r=Recite.Dom.getScroll(b.ownerDocument.defaultView);var h=p.top-f.offsetHeight-d.adjust.y,k=p.left+("right"==d.position?
b.offsetWidth:0);c="recite-sprite-tip-bottom-left";var q=h-r.y-d.adjust.y,u=k+f.offsetWidth-r.x;f.style.position="absolute";var z=Recite.Dom.getAncestors(b);for(r=0;r<z.length;r++)"fixed"===Recite.Dom.getStyle(z[r],"position")&&(f.style.position="fixed",q=h-d.adjust.y);q<d.protect.top-d.adjust.y?(h=p.top+b.offsetHeight+d.adjust.y,c="recite-sprite-tip-top-left",u>l.clientWidth-d.protect.right&&(k=p.left-f.offsetWidth+d.adjust.x,c="recite-sprite-tip-top-right")):u>l.clientWidth&&(k=p.left-f.offsetWidth+
d.adjust.x,c="recite-sprite-tip-bottom-right");f.style.top=h+"px";f.style.left=k+"px";b&&(f.style.transform=e(b));b=m.getElementById("recite-tip");b.setAttribute("class",c);b.setAttribute("className",c)}var d={dimensions:{height:0},adjust:{x:0,y:15},protect:{top:40,right:0,bottom:0,left:0},position:"left",intent:500,timeout:null,content:'<div id="recite-tooltip-logo" data-recite-skip="true"></div>            <a id="recite-play" class= "recite-sprite-tooltip-btn recite-sprite-tooltip-play" ></a>            <a id="recite-stop" class="recite-sprite-tooltip-btn recite-sprite-tooltip-stop"></a>            <a id="recite-back" class="recite-sprite-tooltip-btn recite-sprite-tooltip-back"></a>            <a id="recite-forward" class="recite-sprite-tooltip-btn recite-sprite-tooltip-forward"></a>'},
p=!0,m,n=[],g=null,l=!1,x=null,u;var z=u=function(){g&&q(g)};return{init:function(){if(!l){x=Recite.Event.subscribe("Style:updated",Recite.PlayerControls.Tooltip.invalidate);for(var a=[window],b=0;b<a.length;b++)Recite.DomEvent.add(a[b],"resize",u),Recite.DomEvent.add(a[b],"scroll",z),Recite.DomEvent.add(a[b],"click",h);l=!0}},destroy:function(){f();l=!1},enable:function(){p=!0},disable:function(){p=!1;Recite.Util.each(n,function(a,b){k(b)})},hide:function(){Recite.Util.each(n,function(a,b){k(b)})},
setOptions:function(a){d=Recite.Util.merge(d,a)},getOptions:function(){return d},invoke:function(a){this.init();m=a.ownerDocument?a.ownerDocument:document;Recite.DomEvent.add(a,"mouseover",b);Recite.DomEvent.add(a,"mouseout",function(a){clearTimeout(d.timeout)})},invalidate:function(){g&&q(g)},play:function(a){a?(Recite.PlayerDispatcher.dispatch(a),c(a)):null===g?Recite.PlayerControls.next():Recite.PlayerDispatcher.dispatch(g)},stop:function(){Recite.Player.stop()},seekingSupported:function(){return!0},
next:function(a){"undefined"!=typeof a&&(g=a);a=Recite.Dom.getNextElement(g);if(a===g||null==a)return Recite.Debug.log("Recite.PlayerControls.Tooltip","next element same as current or null, halting"),null;c(a);Recite.Dom.isVisible(a)||Recite.Dom.scrollTo(a);return a},previous:function(a){"undefined"!=typeof a&&(g=a);a=Recite.Dom.getPreviousElement(g);if(a===g||null==a)return Recite.Debug.log("Recite.PlayerControls.Tooltip","prev element same as current or null, halting"),null;c(a);Recite.Dom.isVisible(a)||
Recite.Dom.scrollTo(a);return a},first:function(){var a=Recite.Dom.getFirstElement();if(null!=a)c(a);else return Recite.Debug.log("Recite.PlayerControls.Tooltip","no first element, halting"),null;Recite.Dom.isVisible(a)||Recite.Dom.scrollTo(a)},last:function(){var a=Recite.Dom.getLastElement();if(null!=a)c(a);else return Recite.Debug.log("Recite.PlayerControls.Tooltip","no last element, halting"),null;Recite.Dom.isVisible(a)||Recite.Dom.scrollTo(a)},setCurrent:function(a){g=a},current:g}}();Recite.namespace("PlayerControls.Fixed");
Recite.PlayerControls.Fixed=function(){function h(){l=Recite.Event.subscribe("Style:updated",Recite.PlayerControls.Tooltip.invalidate);for(var a=[window],b=0;b<a.length;b++)Recite.DomEvent.add(a[b],"resize",x),Recite.DomEvent.add(a[b],"scroll",u),Recite.DomEvent.add(a[b],"click",z)}function f(){Recite.Event.unsubscribe(l);Recite.Util.each([window],function(a,b){Recite.DomEvent.remove(b,"resize",x);Recite.DomEvent.remove(b,"scroll",u);Recite.DomEvent.remove(b,"click",z)})}function b(a){if(d){clearTimeout(q.timeout);
var b=this;n!==this&&(q.timeout=setTimeout(function(){c(b)},q.intent))}}function c(a){null!==n&&null!=n.getAttribute("class")&&n.setAttribute("class",n.getAttribute("class").replace("recite-selected",""));n=a;e(a);Recite.Preferences.get("player.autoplay")&&Recite.PlayerDispatcher.dispatch(n);n.setAttribute("class",n.getAttribute("class")+" recite-selected")}function a(){Recite.Debug.log("Recite.PlayerControls.Fixed","Binding buttons for fixed controls");var a=p.getElementById("recite-play");Recite.DomEvent.add(a,
"click",function(a){Recite.PlayerDispatcher.dispatch(n)});a=p.getElementById("recite-stop");Recite.DomEvent.add(a,"click",function(a){Recite.Player.stop()});a=p.getElementById("recite-back");Recite.DomEvent.add(a,"click",function(a){Recite.PlayerControls.previous()});a=p.getElementById("recite-forward");Recite.DomEvent.add(a,"click",function(a){Recite.PlayerControls.next()})}function k(a){a.style.display="none";null!==n&&null!=n.getAttribute("class")&&n.setAttribute("class",n.getAttribute("class").replace("recite-selected",
""));Recite.Sizzle("body",document)[0].style.paddingBottom="0px";n=null}function e(b){b=Recite.Sizzle("#recite-tooltip",p)[0];"undefined"===typeof b&&(Recite.Debug.log("Recite.PlayerControls.Fixed","Adding fixed controls to document"),b=p.createElement("div"),b.setAttribute("class","recite-tooltip-fixed"),b.setAttribute("id","recite-tooltip"),b.style.position="absolute",b.innerHTML='<div class="recite-tooltip-content">'+q.content+'</div>               <div class="recite-tip-bottomleft" id="recite-tip"></div>',
Recite.Sizzle("body",p)[0].appendChild(b),a(p),m.push(b));Recite.Debug.log("Recite.PlayerControls.Fixed","Fixed controls added to document: "+b);b.style.display="block";b.style.position="fixed";for(var d=0;d<m.length;d++)m[d]!==b&&(m[d].style.display="none");Recite.Sizzle("body",document)[0].style.paddingBottom=q.dimensions.height+"px"}var q={dimensions:{height:98},intent:500,timeout:null,content:'<a id="recite-back" class="recite-sprite-mobile-previous" onclick="Recite.PlayerControls.previous();"></a>                   <a id="recite-play" class="recite-sprite-mobile-play"></a>                   <a id="recite-stop" class="recite-sprite-mobile-stop"></a>                   <a id="recite-forward" class="recite-sprite-mobile-next" onclick="Recite.PlayerControls.next();"></a>'},
d=!0,p,m=[],n=null,g=!1,l=null,x;var u=x=function(){n&&e(n)};var z=function(a){Recite.Util.each(m,function(b,d){Recite.Dom.isDescendant(a.target,d)||a.target===d||Recite.Dom.isDescendant(a.target,n)||a.target===n||Recite.Dom.isDescendant(a.target,Recite.Sizzle("#recite-header")[0])||k(d)})};return{init:function(){g||(h(),g=!0)},destroy:function(){f();g=!1},enable:function(){d||h();d=!0},disable:function(){d&&f();d=!1},hide:function(){Recite.Util.each(m,function(a,b){k(b)})},setOptions:function(a){q=
Recite.Util.merge(q,a)},getOptions:function(){return q},invoke:function(a){Recite.Debug.log("Recite.Tooltop.Desktop","Invoking fixed playerControls");p=a.ownerDocument?a.ownerDocument:document;Recite.DomEvent.add(a,"mouseover",b);Recite.DomEvent.add(a,"mouseout",function(a){clearTimeout(q.timeout)})},invalidate:function(){n&&e(n)},seekingSupported:function(){return!0},play:function(a){a?(Recite.PlayerDispatcher.dispatch(a),c(a)):null===n?Recite.PlayerControls.next():Recite.PlayerDispatcher.dispatch(n)},
stop:function(){Recite.Player.stop()},next:function(a){"undefined"!=typeof a&&(n=a);a=Recite.Dom.getNextElement(n);a===n||null===a?Recite.Debug.log("Recite.PlayerControls.Fixed","next element same as current or null, halting"):(c(a),Recite.Dom.isVisible(a)||Recite.Dom.scrollTo(a))},previous:function(a){"undefined"!=typeof a&&(n=a);a=Recite.Dom.getPreviousElement(n);a===n||null===a?Recite.Debug.log("Recite.PlayerControls.Fixed","prev element same as current or null, halting"):(c(a),Recite.Dom.isVisible(a)||
Recite.Dom.scrollTo(a))},first:function(){var a=Recite.Dom.getFirstElement();if(null!=a)c(a);else return Recite.Debug.log("Recite.PlayerControls.Fixed","no first element, halting"),null;Recite.Dom.isVisible(a)||Recite.Dom.scrollTo(a)},last:function(){var a=Recite.Dom.getLastElement();if(null!=a)c(a);else return Recite.Debug.log("Recite.PlayerControls.Fixed","no last element, halting"),null;Recite.Dom.isVisible(a)||Recite.Dom.scrollTo(a)},current:n}}();Recite.namespace("PlayerControls.NoGUI");
Recite.PlayerControls.NoGUI=function(){function h(b){null!==b&&(null!==a&&null!=a.getAttribute("class")&&a.setAttribute("class",a.getAttribute("class").replace("recite-selected","")),a=b,a.setAttribute("class",a.getAttribute("class")+" recite-selected"),Recite.Preferences.get("player.autoplay")&&Recite.PlayerControls.NoGUI.play())}function f(e){if(c){clearTimeout(b.timeout);var f=this;a!==this&&(b.timeout=setTimeout(function(){h(f)},b.intent))}}var b={timeout:null,dimensions:{height:0}},c=!0,a=null,
k=!1;return{init:function(){k||(Recite.Event.subscribe("Style:updated",Recite.PlayerControls.Tooltip.invalidate),k=!0)},destroy:function(){k=!1},enable:function(){c=!0},disable:function(){c=!1},hide:function(){null!==a&&(null!=a.getAttribute("class")&&a.setAttribute("class",a.getAttribute("class").replace("recite-selected","")),Recite.Event.publish("Recite.Tooltip:hide",{target:a}));a=null},setOptions:function(a){b=Recite.Util.merge(b,a)},getOptions:function(){return b},invoke:function(a){this.init();
Recite.Debug.log("Recite.PlayerControls.NoGUI","Invoking NoGUI controls.");Recite.DomEvent.add(a,"mouseover",f);Recite.DomEvent.add(a,"mouseout",function(a){clearTimeout(b.timeout)})},invalidate:function(){},play:function(b){b?(Recite.PlayerDispatcher.dispatch(b),h(b)):null===a?Recite.PlayerControls.next():Recite.PlayerDispatcher.dispatch(a)},stop:function(){Recite.Player.stop()},seekingSupported:function(){return!0},next:function(b){"undefined"!=typeof b&&(a=b);b=Recite.Dom.getNextElement(a);b===
a||null===b?Recite.Debug.log("Recite.PlayerControls.NoGUI","next element same as current or null, halting"):h(b)},previous:function(b){"undefined"!=typeof b&&(a=b);b=Recite.Dom.getPreviousElement(a);b===a||null===b?Recite.Debug.log("Recite.PlayerControls.NoGUI","prev element same as current or null, halting"):h(b)},first:function(){var a=Recite.Dom.getFirstElement();if(null!=a)h(a);else return Recite.Debug.log("Recite.PlayerControls.NoGUI","no first element, halting"),null},last:function(){var a=
Recite.Dom.getLastElement();if(null!=a)h(a);else return Recite.Debug.log("Recite.PlayerControls.NoGUI","no last element, halting"),null},current:a}}();Recite.namespace("PlayerControls.MobileControls");
Recite.PlayerControls.MobileControls=function(){function h(){z=Recite.Event.subscribe("Style:updated",Recite.PlayerControls.Tooltip.invalidate);for(var a=[window],b=0;b<a.length;b++)Recite.DomEvent.add(a[b],"resize",B),Recite.DomEvent.add(a[b],"scroll",A),Recite.DomEvent.add(a[b],"click",D)}function f(){Recite.Event.unsubscribe(z);Recite.Util.each([window],function(a,b){Recite.DomEvent.remove(b,"resize",B);Recite.DomEvent.remove(b,"scroll",A);Recite.DomEvent.remove(b,"click",D)})}function b(a){if(m)if(x)x=
!1;else{Recite.Player.prepare();clearTimeout(p.timeout);var b=this;l!==this&&(p.timeout=setTimeout(function(){c(b)},p.intent))}}function c(a){null!==l&&null!=l.getAttribute("class")&&l.setAttribute("class",l.getAttribute("class").replace("recite-selected",""));l=a;d(a);Recite.Preferences.get("player.autoplay")&&(Recite.Debug.log("Recite.MobileControls","Playing audio..."),Recite.PlayerDispatcher.dispatch(l));l.setAttribute("class",l.getAttribute("class")+" recite-selected")}function a(){Recite.Debug.log("Recite.PlayerControls.MobileControls",
"Binding buttons for mobile controls");var a=n.getElementById("recite-play");Recite.DomEvent.add(a,"click",function(a){n.getElementById("recite-play");r?(e(),Recite.Player.stop(),r=!1):(q(),Recite.PlayerDispatcher.dispatch(l),r=!0)});a=n.getElementById("recite-back");Recite.DomEvent.add(a,"click",function(a){Recite.PlayerControls.Mobile.previous()});a=n.getElementById("recite-forward");Recite.DomEvent.add(a,"click",function(a){Recite.PlayerControls.next()})}function k(a){a.style.display="none";null!==
l&&null!=l.getAttribute("class")&&l.setAttribute("class",l.getAttribute("class").replace("recite-selected",""));Recite.Sizzle("body",document)[0].style.paddingBottom="0px";l=null}function e(){n.getElementById("recite-play").setAttribute("class","recite-sprite-mobile-play")}function q(){n.getElementById("recite-play").setAttribute("class","recite-sprite-mobile-stop")}function d(b){b=Recite.Sizzle("#recite-tooltip",n)[0];"undefined"===typeof b&&(Recite.Debug.log("Recite.PlayerControls.MobileControls",
"Adding mobile controls to document"),b=n.createElement("div"),b.setAttribute("class","recite-tooltip-mobile"),b.setAttribute("id","recite-tooltip"),b.style.position="absolute",b.innerHTML='<div class="recite-tooltip-content">'+p.content+'</div>               <div class="recite-tip-bottomleft" id="recite-tip"></div>',Recite.Sizzle("body",n)[0].appendChild(b),a(n),g.push(b));Recite.Debug.log("Recite.PlayerControls.MobileControls","Mobile controls added to document: "+b);b.style.display="block";b.style.position=
"mobile";for(var d=0;d<g.length;d++)g[d]!==b&&(g[d].style.display="none");Recite.Sizzle("body",document)[0].style.paddingBottom=p.dimensions.height+"px"}var p={dimensions:{height:58},intent:500,timeout:null,content:'<a id="recite-back" class="recite-sprite-mobile-previous" onclick="Recite.PlayerControls.previous();"></a>                   <a id="recite-play" class="recite-sprite-mobile-play"></a>                   <a id="recite-forward" class="recite-sprite-mobile-next" onclick="Recite.PlayerControls.next();"></a>'},
m=!0,n,g=[],l=null,x=!1,u=!1,z=null,r=!1,B;var A=B=function(){l&&d(l)};var D=function(a){Recite.Util.each(g,function(b,d){Recite.Dom.isDescendant(a.target,d)||a.target===d||Recite.Dom.isDescendant(a.target,l)||a.target===l||Recite.Dom.isDescendant(a.target,Recite.Sizzle("#recite-header")[0])||k(d)})};return{init:function(){u||(h(),u=!0)},destroy:function(){f();u=!1},enable:function(){m||h();m=!0},disable:function(){m&&f();m=!1},hide:function(){Recite.Util.each(g,function(a,b){k(b)})},setOptions:function(a){p=
Recite.Util.merge(p,a)},getOptions:function(){return p},invoke:function(a){Recite.Debug.log("Recite.Tooltop.Desktop","Invoking mobile playerControls");n=a.ownerDocument?a.ownerDocument:document;Recite.DomEvent.add(a,"touchmove",function(){x=!0});Recite.DomEvent.add(a,"click",b);Recite.Event.subscribe("Audio:started",function(){r=!0;q()});Recite.Event.subscribe("Audio:ended",function(){e()})},invalidate:function(){l&&d(l)},seekingSupported:function(){return!0},play:function(a){a?(Recite.PlayerDispatcher.dispatch(a),
c(a)):null===l?Recite.PlayerControls.next():Recite.PlayerDispatcher.dispatch(l)},stop:function(){Recite.Player.stop()},next:function(a){"undefined"!=typeof a&&(l=a);a=Recite.Dom.getNextElement(l);a===l||null===a?Recite.Debug.log("Recite.PlayerControls.MobileControls","next element same as current or null, halting"):(c(a),Recite.Dom.isVisible(a)||Recite.Dom.scrollTo(a))},previous:function(a){"undefined"!=typeof a&&(l=a);a=Recite.Dom.getPreviousElement(l);a===l||null===a?Recite.Debug.log("Recite.PlayerControls.MobileControls",
"prev element same as current or null, halting"):(c(a),Recite.Dom.isVisible(a)||Recite.Dom.scrollTo(a))},first:function(){var a=Recite.Dom.getFirstElement();if(null!=a)c(a);else return Recite.Debug.log("Recite.PlayerControls.MobileControls","no first element, halting"),null;Recite.Dom.isVisible(a)||Recite.Dom.scrollTo(a)},last:function(){var a=Recite.Dom.getLastElement();if(null!=a)c(a);else return Recite.Debug.log("Recite.PlayerControls.MobileControls","no last element, halting"),null;Recite.Dom.isVisible(a)||
Recite.Dom.scrollTo(a)},current:l}}();Recite.namespace("PlayerDispatcher");
Recite.PlayerDispatcher=function(){function h(){q="en";for(var a in e)e[a].translated=!1}function f(b){if("A"===b.tagName&&!b.getAttribute("href")||"IMG"===b.tagName&&!b.getAttribute("alt"))return e[a.readElements.SPAN];if("LABEL"===b.tagName){var d=b.getAttribute("for");if(d&&(d=document.getElementById(d))&&d.checked)return e.checked}return e[a.readElements[b.tagName]]}function b(a,c){c=void 0===c?"":c;if("undefined"==typeof a)return"";var d=f(a);if(d){var e="";d.translated?e=d.translated:d["default"]&&
(e=d["default"]);-1==c.lastIndexOf(e,0)&&(c+=e+": ")}if(!c){e=Recite.Dom.getAncestors(a);for(var g=0;g<e.length;g++)if(d=f(e[g])){e="";d.translated?e=d.translated:d["default"]&&(e=d["default"]);c+=e+": ";break}}a.nodeType===Node.TEXT_NODE?c+=Recite.Dom.getText(a)+" ":"IMG"===a.tagName&&a.getAttribute("alt")?c+=a.getAttribute("alt")+" ":"INPUT"!==a.tagName&&"TEXTAREA"!==a.tagName||""!=a.value||(d=a.getAttribute("placeholder"))&&(c+=d+" ");if(a.childNodes)for(g=0;g<a.childNodes.length;g++)c=b(a.childNodes[g],
c);return c}function c(a,c){c=Recite.Language.Locale.getWorkingPageLocale(c);var d=null,e=null;"string"===typeof a?d=a:(d=b(a),e=a.getAttribute("data-recite-voice")||null);try{if(d&&0<d.length&&(Recite.Player.play(d,c,e),Recite.getOptions().autoCache&&"string"!==typeof a)){var f=Recite.Dom.getNextElement(a,!0);f!==a&&null!=f&&setTimeout(function(){k===a&&Recite.Player.cache(b(f),c,e)},500)}}catch(l){if(l instanceof Recite.Player.PlayerException)switch(l.code){case 400:Recite.Gui.Notification.show("This language is not supported by Recite",
{play:!0})}}}var a={readElements:{A:"link",IMG:"image"}},k=null,e={link:{"default":"link",translated:!1},image:{"default":"image",translated:!1},checked:{"default":"selected",translated:!1}},q="en";Recite.Event.subscribe("Translate:begin",function(a,b){b=b["lang:"];if(b!=q){q=b;a=[];for(var d in e)a.push(e[d]["default"]);d=Recite.Language.Locale.stripLanguageLocale(b);d==Recite.Language.Translate.getOptions().sourceLanguage?h():Recite.Api.call("translate","POST",{data:{target:d,source:"en",text:a},
contentType:"application/json",success:function(a){var b=0,d;for(d in e)e[d].translated=a[b++]}})}});Recite.Event.subscribe("Translate:restore_begin",h);return{setOptions:function(b){a=Recite.Util.merge(a,b)},dispatch:function(a){(null===Recite.Player.getPlayer()||Recite.Player.getPlayer().getOptions().prepareAudio)&&Recite.Player.prepare();var b=null,d=null;"string"===typeof a?b=a:(d=Recite.Dom.getLanguage(a),k=a,b=Recite.Dom.getText(a));var e=Recite.Player.getOptions().languageDetection;2===e||
null===d&&1<=e?d=Recite.Dom.detectLanguage(b,function(b){"und"===b&&(b=null);c(a,b)}):c(a,d)}}}();Recite.namespace("Player");
Recite.Player=function(){function h(){if(b)return b;var a=Recite.Audio.AEBroker.init();a?b=a:alert("Sorry, Recite requires either an HTML5 compatible browser or Flash support. Please upgrade your browser or install Flash to use Recite.");return b}function f(a,f,e,q,d){f=f||c.language;if(!Recite.Player.languageSupported(f))throw Recite.Debug.log("Recite.Player","Language not supported:"+f),new Recite.Player.PlayerException(400,"Unsupported Language");var p=h().format();e={q:a,f:p};null!==f&&(e.l=f);
var k=Recite.Preferences.get("voice.gender");e.g=k;(k=Recite.Preferences.get("player.playbackSpeed"))||(k=1);e.s=k;Recite.Debug.log("Recite.Player","Audio request: "+a);0>a.length&&!q.cache?(Recite.Debug.log("Recite.Player","GET Request"),Recite.Api.getUri("tts",{authRequired:!0,data:e,success:function(a){Recite.Debug.log("Recite.Player","Request url: "+a);d&&d(a)}})):(Recite.Debug.log("Recite.Player","POST Request"),b.getOptions().playlist||(e.playlist=!1),b.getOptions().waitForAudioProcessing&&
(e.waitForProcessing=!0),Recite.Api.call("tts","POST",{data:e,contentType:"application/json; charset=UTF-8",success:function(a){var b=a.data;Recite.Auth.getStatus(function(a){q.cache&&d.call();var c=[];Recite.Debug.log("Recite.Player","POST Callback");void 0!==b.id?(Recite.Debug.log("Recite.Player","Playing single file"),b.url=Recite.baseUrl+"/api/tts/"+b.id+"?f="+p+"&cid="+Recite.Auth.getOptions().client_id+"&guid="+a.guid,c.push(b)):(Recite.Debug.log("Recite.Player","Playing multiple files - create a playlist"),
Recite.Util.each(b,function(b,d){d.url=Recite.baseUrl+"/api/tts/"+d.id+"?f="+p+"&cid="+Recite.Auth.getOptions().client_id+"&guid="+a.guid;Recite.Debug.log("Recite.Player","Adding to playlist: "+d.url);c.push(d);Recite.Debug.log("Recite.Player","Added to playlist: "+d.url)}));d&&(Recite.Debug.log("Recite.Player","Calling callback with playlist"),d(c))})}}));Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Player",event:"play ("+f+")"})}var b=null,c={language:null,voices:{},languages:["cy","cy-gb","en","en-gb","en-us","en-in","en-au","fr","fr-fr","fr-ca","cn","da","nl","de","de-de","hi","is","it","ja","ko","no","pl","pl-pl","pt-br","pt","ro","ru","es","es-es","es-mx","es-us","sv","tr","cy","cy-gb","en","en-gb","en-us","en-in","en-au","fr","fr-fr","fr-ca","cn","da","nl","de","de-de","hi","is","it","ja","ko","no","pl","pl-pl","pt-br","pt","ro","ru","es","es-es","es-mx","es-us","sv","tr","cy","cy-gb","en","en-gb","en-us","en-in","en-au","fr","fr-fr","fr-ca","cn","da","nl","de","de-de","hi","is","it","ja","ko","no","pl","pl-pl","pt-br","pt","ro","ru","es","es-es","es-mx","es-us","sv","tr","ar-ae","ar","zh-cn","zh-tw","cs","el","fi","sk","sk-sk","hu","hu-hu","id","ta","vi","ar-ae","ar","zh-cn","zh-tw","cs","el","fi","sk","sk-sk","hu","hu-hu","id","ta","vi","ar-ae","ar","zh-cn","zh-tw","cs","el","fi","sk","sk-sk","hu","hu-hu","id","ta","vi","ar-ae","ar","zh-cn","zh-tw","cs","el","fi","sk","sk-sk","hu","hu-hu","id","ta","vi","ar-ae","ar","zh-cn","zh-tw","cs","el","fi","sk","sk-sk","hu","hu-hu","id","ta","vi","ar-ae","ar","zh-cn","zh-tw","cs","el","fi","sk","sk-sk","hu","hu-hu","id","ta","vi","en","EN-US","en-us","en-gb","en-sc","en-au","ar-ae","ar","tr","it","ko","zh-CN","zh-TW","th","ja","id","eu","ca","cs","da","nl","fi","fr","fr-fr","de","el","hi","hu","no","pl","pt","ro","ru","sk","es","sv","gl","iw","en","EN-US","en-us","en-gb","en-sc","en-au","ar-ae","ar","tr","it","ko","zh-CN","zh-TW","th","ja","id","eu","ca","cs","da","nl","fi","fr","fr-fr","de","el","hi","hu","no","pl","pt","ro","ru","sk","es","sv","gl","iw","ar-ae","ar","zh-cn","zh-tw","cs","el","fi","sk","sk-sk","hu","hu-hu","id","ta","vi","ar-ae","ar","zh-cn","zh-tw","cs","el","fi","sk","sk-sk","hu","hu-hu","id","ta","vi","ar-ae","ar","zh-cn","zh-tw","cs","el","fi","sk","sk-sk","hu","hu-hu","id","ta","vi","ar-ae","ar","zh-cn","zh-tw","cs","el","fi","sk","sk-sk","hu","hu-hu","id","ta","vi","ar-ae","ar","zh-cn","zh-tw","cs","el","fi","sk","sk-sk","hu","hu-hu","id","ta","vi","en","EN-US","en-us","en-gb","en-sc","en-au","ar-ae","ar","tr","it","ko","zh-CN","zh-TW","th","ja","id","eu","ca","cs","da","nl","fi","fr","fr-fr","de","el","hi","hu","no","pl","pt","ro","ru","sk","es","sv","gl","iw","en","EN-US","en-us","en-gb","en-sc","en-au","ar-ae","ar","tr","it","ko","zh-CN","zh-TW","th","ja","id","eu","ca","cs","da","nl","fi","fr","fr-fr","de","el","hi","hu","no","pl","pt","ro","ru","sk","es","sv","gl","iw","en","EN-US","en-us","en-gb","en-sc","en-au","ar-ae","ar","tr","it","ko","zh-CN","zh-TW","th","ja","id","eu","ca","cs","da","nl","fi","fr","fr-fr","de","el","hi","hu","no","pl","pt","ro","ru","sk","es","sv","gl","iw","ar-ae","ar","zh-cn","zh-tw","cs","el","fi","sk","sk-sk","hu","hu-hu","id","ta","vi","ar-ae","ar","zh-cn","zh-tw","cs","el","fi","sk","sk-sk","hu","hu-hu","id","ta","vi","gd","ga","ga-ga","ur","ga","ga-ga","uk","ur","ga","ga-ga","uk","ur","ga","ga-ga","uk","ar-ae","ar","zh-cn","zh-tw","cs","el","fi","sk","sk-sk","hu","hu-hu","id","ta","vi","ur","ga","ga-ga","uk","cy","cy-gb","en","en-gb","en-us","en-in","en-au","fr","fr-fr","fr-ca","cn","da","nl","de","de-de","hi","is","it","ja","ko","no","pl","pl-pl","pt-br","pt","ro","ru","es","es-es","es-mx","es-us","sv","tr","cy","cy-gb"],
languageDetection:1};Recite.Event.subscribe("Audio:ended",function(){Recite.Debug.log("Recite.Player","-------\x3eAudio ended")});return{setOptions:function(a){c=Recite.Util.merge(c,a)},getOptions:function(){return c},init:function(){if(null===c.language){var a=document.documentElement.lang;0<a.length&&this.setOptions({language:a})}},prepare:function(){h().getOptions().prepareAudio&&(Recite.Debug.log("Recite.Player","--------------------\x3e Preloading audio..."),h().play({url:Recite.baseUrl+"/audio/blank.mp3"}))},
play:function(a,b,c){h().getOptions().playlist&&h().clearPlaylist();f(a,b.toLowerCase(),c,{},function(a){Recite.Debug.log("Recite.Player","In callback");1==a.length?(Recite.Debug.log("Recite.Player","Queue length == 1 ... "+a[0].url),h().play(a[0])):(Recite.Debug.log("Recite.Player","Queue length = "+a.length),Recite.Util.each(a,function(a,b){Recite.Debug.log("Recite.Player","Adding URL to playlist: "+b.url);h().addToPlaylist(b)}),Recite.Debug.log("Recite.Player","Play the playlist"),h().playPlaylist(),
Recite.Debug.log("Recite.Player","Finished invoking play"))})},pause:function(){h().pause()},restart:function(){h().restart()},resume:function(){h().resume()},cache:function(a,b,c){f(a,b.toLowerCase(),c,{cache:!0},function(b){Recite.Debug.log("Recite.Player","Cached audio for: "+a)})},stop:function(){h().stop()},rewind:function(){h().rewind()},forward:function(){h().forward()},setPlayer:function(a){b=a},getPlayer:function(){return b},getSupportedLanguauges:function(){return c.languages},languageSupported:function(a){return-1<
Recite.Util.inArray(a.toLowerCase(),c.languages)||null===a}}}();Recite.Player.PlayerException=function(h,f){this.code=h;this.message=f};Recite.namespace("Audio.WebAudio");
Recite.Audio.WebAudio=function(){function h(){Recite.Player.getPlayer().play(c[0]);c.splice(0,1)}function f(b){null!=a&&Recite.Audio.WebAudio.stop();Recite.Event.publish("Audio:started");a=k.createBufferSource();a.buffer=b;a.connect(k.destination);a.start(0);a.onended=function(){0<c.length?(Recite.Event.publish("Audio:playlist-item-ended"),h()):Recite.Preferences.get("player.continuePlay")?Recite.PlayerControls.next():Recite.Event.publish("Audio:ended")}}var b="",c=[],a=null,k=null,e={prepareAudio:!0,
playlist:!0,waitForAudioProcessing:!1};return{setOptions:function(a){e=Recite.Util.merge(e,a)},init:function(){Recite.Debug.log("Recite.Audio.WebAudio","Init");b=Recite.Audio.WebAudio.support();Recite.Debug.log("Recite.Audio.WebAudio","Preferred format detected as:"+b);Recite.Debug.log("Recite.Audio.WebAudio",b)},play:function(a){Recite.Debug.log("Recite.Audio.WebAudio","Webaudio play called!");var b=new XMLHttpRequest;b.open("GET",a,!0);b.responseType="arraybuffer";b.onload=function(){Recite.Debug.log("Recite.Audio.WebAudio",
"ONLOAD CALLED!");k.decodeAudioData(b.response,function(a){Recite.Debug.log("Recite.Audio.WebAudio","PLAY SOUND CALLED!");f(a)})};b.send()},stop:function(){null!=a&&(a.onended=null,a.stop(0),Recite.Event.publish("Audio:ended"))},rewind:function(){},forward:function(){},support:function(){try{var a=window.AudioContext||window.webkitAudioContext||window.mozAudioContext||window.oAudioContext||window.msAudioContext;return AudioContext?(window.AudioContext=a,k=new a,!0):!1}catch(d){return!1}},format:function(){return"mp3"},
getOptions:function(){return e},getPlaylistState:function(){return _playlistPlaying},addToPlaylist:function(a){c.push(a);return c},clearPlaylist:function(){return c=[]},playPlaylist:function(){h()},updateMeta:function(a,b){if(b&&a)for(var d=0,e=c.length;d<e;d++)c[d]&&c[d].hasOwnProperty("id")&&c[d].id==b&&(c[d].meta=a);return c}}}();Recite.namespace("Audio.HTML5");
Recite.Audio.HTML5=function(){function h(){var a=k[0];k.splice(0,1);Recite.Player.getPlayer().play(a)}function f(){Recite.Debug.log("Recite.Audio.HTML5","Moving onto next playlist item");Recite.Preferences.get("player.continuePlay")&&0>=k.length?Recite.PlayerControls.next():(Recite.Debug.log("Recite.Audio.HTML5","Playlist length: "+k.length),Recite.Event.publish("Audio:playlist-item-ended"))}function b(){var a=c.play();void 0!==a&&(a.then(function(){}),a.catch(function(a){Recite.Audio.AEBroker.stop();
Recite.WordByWord.resetSection();Recite.Gui.Notification.show("Recite would like to read this content aloud.  Please click the play button.")}))}var c=null,a="",k=[],e={prepareAudio:!0,playlist:!0,waitForAudioProcessing:!1};return{setOptions:function(a){e=Recite.Util.merge(e,a)},init:function(){Recite.Event.subscribe("Audio:playlist-item-ended",function(){0<k.length?h():Recite.Event.publish("Audio:ended")});null==c&&(Recite.Debug.log("Recite.Audio.HTML5","Init"),c=document.createElement("audio"),
a=Recite.Audio.HTML5.format(),c.addEventListener("ended",function(){f()},!1),c.addEventListener("error",function(){Recite.Debug.log("Recite.Audio.HTML5","Audio failed");f()},!1),c.addEventListener("canplay",function(){Recite.Debug.log("Recite.Audio.HTML5","Can play");b()},!1),Recite.Debug.log("Recite.Audio.HTML5","Preferred format detected as:"+a),Recite.Debug.log("Recite.Audio.Html5",a))},play:function(a){Recite.Event.publish("Audio:started");c.setAttribute("src",a);Recite.Debug.log("Recite.Audio.HTML5",
"PLAY CALLED..."+a);return c.load()},pause:function(){c.pause();Recite.Event.publish("Audio:paused")},resume:function(){c.play();Recite.Event.publish("Audio:started")},restart:function(){c.currentTime=0;c.load();c.play();Recite.Event.publish("Audio:restarted")},stop:function(){Recite.Debug.log("Recite.Audio.HTML5","STOP CALLED...");c.pause();k=[];Recite.Event.publish("Audio:ended")},rewind:function(){--c.currentTime},forward:function(){c.currentTime+=2},support:function(){var a=document.createElement("audio"),
b=!!a.canPlayType;b&&(b=new Boolean(b),b.ogg=a.canPlayType('audio/ogg; codecs="vorbis"'),b.mp3=a.canPlayType("audio/mpeg;"),b.wav=a.canPlayType('audio/wav; codecs="1"'),b.m4a=a.canPlayType("audio/x-m4a;")||a.canPlayType("audio/aac;"));return b},format:function(){var a=Recite.Audio.HTML5.support();return a.ogg?"ogg":a.mp3?"mp3":a.wav?"wav":a.m4a?"m4a":!1},getOptions:function(){return e},getPlaylistState:function(){return _playlistPlaying},addToPlaylist:function(a){k.push(a);return k},clearPlaylist:function(){Recite.Debug.log("Recite.Audio.HTML5",
"CLEAR PLAYLIST CALLED...");return k=[]},playPlaylist:function(){h()},getCurrentTime:function(){return Math.floor(1E3*c.currentTime)},updateMeta:function(a,b){if(b&&a)for(var d=0,c=k.length;d<c;d++)k[d]&&k[d].hasOwnProperty("id")&&k[d].id==b&&(k[d].meta=a);return k}}}();Recite.namespace("Audio.SoundManager");
Recite.Audio.SoundManager=function(){function h(){Recite.Player.getPlayer().play(b[0]);b.splice(0,1)}var f=null,b=[],c={path:Recite.baseUrl+"/common/js/soundmanager/soundmanager2-jsmin.js",soundmanager:{debugMode:!1,debug:!1,url:Recite.baseUrl+"/common/swf/"},prepareAudio:!0,playlist:!0,waitForAudioProcessing:!1};return{setOptions:function(a){c=Recite.Util.merge(c,a)},init:function(){Recite.Debug.log("Recite.Audio.SoundManager","Init soundmanager");Recite.Event.subscribe("Audio:ended",function(){Recite.Preferences.get("player.continuePlay")&&
Recite.PlayerControls.next()});Recite.Event.subscribe("Audio:playlist-item-ended",function(){0<b.length?h():Recite.Event.publish("Audio:ended")})},play:function(a){Recite.Debug.log("Recite.Audio.SoundManager","Play called");window.soundManager?((f=soundManager.getSoundById(a))||(f=soundManager.createSound({id:a,url:a})),soundManager.stopAll(),f.play({onload:function(a){a||(Recite.Debug.log("Recite.Audio.SoundManager","Cannot load audio file"),Recite.Event.publish("Audio:playlist-item-ended"))},onfinish:function(){Recite.Debug.log("Recite.Audio.SoundManager",
"Onfinish called");Recite.Event.publish("Audio:playlist-item-ended")},ondataerror:function(){Recite.Debug.log("Sound manager --- > Item failed: "+a);Recite.Event.publish("Audio:playlist-item-ended")}})):Recite.AssetLoader.js(c.path,function(){window.soundManager=new SoundManager;Recite.Util.each(c.soundmanager,function(a,b){soundManager[a]=b});soundManager.beginDelayedInit();soundManager.stopAll();soundManager.onready(function(){f=soundManager.createSound({id:a,url:a}).play({onload:function(a){a||
(Recite.Debug.log("Recite.Audio.SoundManager","Cannot load audio file"),Recite.Event.publish("Audio:playlist-item-ended"))},onfinish:function(){Recite.Debug.log("Recite.Audio.SoundManager","Onfinish called");Recite.Event.publish("Audio:playlist-item-ended")},ondataerror:function(){Recite.Debug.log("Sound manager --- > Item failed: "+a);Recite.Event.publish("Audio:playlist-item-ended")}})})});Recite.Event.publish("Audio:started")},preload:function(a){Recite.Audio.SoundManager.play(a)},pause:function(){f.pause();
Recite.Event.publish("Audio:paused")},resume:function(){f.resume();Recite.Event.publish("Audio:started")},restart:function(){f&&(Recite.Debug.log("Recite.Audio.Soundmanager","Restarting track"),f.setPosition(0))},stop:function(){f&&f.stop();Recite.Event.publish("Audio:ended")},rewind:function(){f&&(Recite.Debug.log("Recite.Audio.Soundmanager","Skiping backwards"),f.setPosition(f.position-500))},forward:function(){f?(Recite.Debug.log("Recite.Sudio.Soundmanager","Skiping forward"),f.setPosition(f.position+
500)):Recite.Debug.log("Recite.Sudio.Soundmanager","No sound object!?")},support:function(){return!0},format:function(){return"mp3"},addToPlaylist:function(a){b.push(a);return b},clearPlaylist:function(){return b=[]},playPlaylist:function(){h()},getOptions:function(){return c},getCurrentTime:function(){return f.position},updateMeta:function(a,c){if(c&&a)for(var e=0,f=b.length;e<f;e++)b[e]&&b[e].hasOwnProperty("id")&&b[e].id==c&&(b[e].meta=a);return b}}}();Recite.namespace("Audio.Download");
Recite.Audio.Download=function(){var h={prepareAudio:!1,playlist:!1,waitForAudioProcessing:!0};return{setOptions:function(f){h=Recite.Util.merge(h,f)},init:function(){},play:function(f){Recite.Audio.AEBroker.setDownload(!1);Recite.Debug.log("Recite.Audio.Download","PLAY");window.location.href=f+"&download=true"},stop:function(){},rewind:function(){},forward:function(){},support:function(){return!0},format:function(){return"mp3"},getOptions:function(){return h}}}();Recite.namespace("Audio.AEBroker");
Recite.Audio.AEBroker=function(){function h(){var a=Recite.Preferences.get("player.playbackSpeed");0>m?m=a:0<m&&m!=a&&(m=a,setTimeout(function(){if(p&&m==a){f();var b=Recite.Sizzle("recite.recite-selected");0<b.length&&Recite.PlayerDispatcher.dispatch(b[0])}},q.speedChangeWait))}function f(){null!=e&&e.stop()}function b(a){var f=a.id,g=a.url;if("blank.mp3"!=g.substr(g.length-9,9)){var h=c(f,"meta");if(h)e.updateMeta(h,f),p&&p.hasOwnProperty("id")&&p.id==f&&(p.meta=h);else{var k=c(f,"count");null==
k&&(k=0);k<=q.metaLoadAttempts&&Recite.Ajax.ajax(g+"&meta=true",{method:"get",success:function(a){200==a.status&&a.response&&(a=JSON.parse(a.response))&&(null!=f&&null!=k&&(d[f]={meta:a,count:k}),e.updateMeta(a,f),p&&p.hasOwnProperty("id")&&p.id==f&&(p.meta=a))},error:function(c){if(404==c.status||408==c.status)k++,null!=f&&null!=k&&(d[f]={meta:null,count:k}),k<q.metaLoadAttempts&&setTimeout(function(){b(a)},q.metaLoadPause)}})}}}function c(a,b){return d.hasOwnProperty(a)&&d[a].hasOwnProperty(b)?
d[a][b]:null}function a(){Recite.Audio.HTML5.support()?(Recite.Debug.log("Recite.Player","HTML5 Audio support detected, using Recite.Audio.HTML5 as backend."),Recite.Audio.HTML5.init(),e=Recite.Audio.HTML5):Recite.Audio.SoundManager.support()&&(Recite.Debug.log("Recite.Player","HTML5 Audio not supported, using Recite.Audio.SoundManager as backend."),Recite.Audio.SoundManager.init(),e=Recite.Audio.SoundManager)}function k(a,b){null!=e&&(a=a?e.play(a):e.play(),void 0!==a?(a.then(function(){"function"==
typeof b&&b()}),a.catch(function(a){Recite.Audio.AEBroker.stop();Recite.WordByWord.resetSection();Recite.Gui.Notification.show("Recite would like to read this content aloud.  Please click the play button.")})):"function"==typeof b&&b())}var e=null,q={metaLoadAttempts:10,metaLoadPause:500,speedChangeWait:300},d={},p=null,m=-1,n=!1;Recite.Event.subscribe("Translate:global-begin",f);Recite.Event.subscribe("Preferences:load",h);Recite.Event.subscribe("Preferences:set",h);Recite.Event.subscribe("Preferences:reset",
h);Recite.Event.subscribe("Audio:ended",function(){p=null});return{setOptions:function(a){q=Recite.Util.merge(q,a)},init:function(){if(null!=e)return this;a();return this},play:function(d){var c=null;if(d&&(d.hasOwnProperty("url")&&(c=d.url),null!=c&&"blank.mp3"==c.toLowerCase().substr(c.length-9)))return;n&&null!==c?(e.play(c),a()):((p=d)&&!p.hasOwnProperty("meta")&&b(p),k(c,"_setStartPlay"))},getMeta:function(){return p&&p.hasOwnProperty("meta")?p.meta:null},pause:function(){null!=e&&"function"==
typeof e.pause&&e.pause()},resume:function(){null!=e&&"function"==typeof e.play&&e.play()},restart:function(){null!=e&&"function"==typeof e.restart&&e.restart()},stop:function(){null!=e&&"function"==typeof e.stop&&e.stop()},rewind:function(){null!=e&&"function"==typeof e.rewind&&(e.rewind(),Recite.Event.publish("Audio:rewind"))},forward:function(){null!=e&&"function"==typeof e.forward&&(e.forward(),Recite.Event.publish("Audio:forward"))},getOptions:function(){return null!=e?Recite.Util.merge(q,e.getOptions()):
q},getPlaylistState:function(){if(null!=e)return e.getPlaylistState()},addToPlaylist:function(a){null!=e&&(e.addToPlaylist(a),!a.hasOwnProperty("meta")&&a.hasOwnProperty("id")&&a.hasOwnProperty("url")&&b(a))},clearPlaylist:function(){null!=e&&"function"==typeof e.clearPlaylist&&e.clearPlaylist()},playPlaylist:function(){null!=e&&e.playPlaylist()},format:function(){if(null!=e)return e.format()},getPlayTime:function(){return null!=e&&e.hasOwnProperty("getCurrentTime")?e.getCurrentTime():Date.now()-
0},setDownload:function(a){n=1==a;Recite.Audio.Download.init();e=Recite.Audio.Download}}}();Recite.namespace("WordByWord");
Recite.WordByWord=function(){function h(){for(var a=Recite.Sizzle("reciteword[data-highlight=1]"),b=c(),d=0;d<a.length;d++)a[d]&&(b.fg&&(a[d].style.color=b.fg),b.bg&&(a[d].style.background=b.bg))}function f(){if(null!=C)return C;var a=null;J&&(a=J.color);if(null!=a){a=a.replace("rgb(","").replace("rgba(","").replace(")","");a=a.split(",");a=b(a);var d="rgb("+(255-parseInt(a[0]))+","+(255-parseInt(a[1]))+","+(255-parseInt(a[2]))+")";a=[parseInt(a[0]),parseInt(a[1]),parseInt(a[2])];a=b(a);a="rgb("+
a[0]+","+a[1]+","+a[2]+")";return C={bg:a,fg:d}}return{bg:"black",fg:"white"}}function b(a){for(var b=0;b<a.length;b++)parseInt(a[b])<r.colorRoundingThreshold&&(a[b]=0),a[b]>255-r.colorRoundingThreshold&&(a[b]=255);return a}function c(){var a=f(),b=Recite.Preferences.get("style.wwHighlight.color"),d=Recite.Preferences.get("style.font.color"),c=Recite.Preferences.get("style.backgroundColor");return{fg:null==c||"null"==c?a.fg:c,bg:null==b||"null"==b?null==d||"null"==d?a.bg:d:b}}function a(){e();w=!0}
function k(){w=!1}function e(){r.enabled&&!w&&(z(),Recite.Audio.AEBroker.pause(),(0<Recite.Sizzle("[data-have-read]").length||0<Recite.Sizzle("reciteword[data-highlight=1]").length)&&l())}function q(){if(y&&v&&!w){var a=Recite.Audio.AEBroker.getMeta();if(F!=a&&void 0!=a){var b=r.wordCheckRate;for(var c=1,e=a.length;c<e;c++){var f=a[c].time-a[c-1].time;f<b&&(b=f)}b<r.wordCheckRate&&(r.wordCheckRate=b,u());F=a}if(a){b=Recite.Audio.AEBroker.getPlayTime();c=null;e=0;for(f=a.length;e<f;e++)a[e].time<=
b?c=a[e]:e=f+10;(a=c)&&a.hasOwnProperty("time")&&a.hasOwnProperty("value")&&(null==G||a.time!=G)&&(G=a.time,d(a.value))}}}function d(a){if(v&&!w){m();var b=p(a),d=void 0,c=Recite.Sizzle("reciteword[data-have-read]"),e=Recite.Sizzle("reciteword:not([data-have-read])"),f=void 0;if(!H&&e){var g=/^[0-9a-zA-Z]+$/,l=0;-1=="af eu ca da nl en fi fr gl de id id id ms no pt es sw sv".split(" ").indexOf(Recite.Language.Translate.getWorkingPageLanguage())&&(f=e[l],d=e[l].getAttribute("data-word-value"));for(;l<
e.length&&void 0==d;){var k=e[l].getAttribute("data-word-value");k.match(g)&&(f=e[l],d=k);l++}}if(d&&d==b&&!f.hasAttribute("data-partword"))f.setAttribute("data-highlight",1),h();else if(e=null,c&&(e=c[c.length-1]),e&&(e=e.getAttribute("data-word-value")),c=d?d.length>a.length:!1,f=d?d.length<a.length:!1,b=void 0,f&&(g=p(a),l=p(d),0==g.indexOf(l)&&(b=[d],g=g.substr(l.length),b=b.concat(g.split(A)))),void 0==b&&(b=-1<["&amp;"].indexOf(a)?[a]:a.split(A)),!(!f&&2<=b.length&&e&&d&&b.includes(e)&&b.includes(d))){for(a=
b.length-1;-1<a;a--)if(e=p(b[a]).trim(),""!=e){f=Recite.Sizzle("reciteword[data-word-value"+(H||c?"*":"")+'="'+e+'"]:not([data-have-read]):not([data-currentword])');if(0<f.length)var n=f[0];void 0!=n&&(n.setAttribute("data-highlight",1),n.setAttribute("data-currentword",1),c&&(f=n.getAttribute("data-partword"),g="",f&&(g=f),f=p(g+e),g=d?p(d):"",f!=g&&f.length<g.length?n.setAttribute("data-partword",e):n.removeAttribute("data-partword")))}Recite.Util.each(Recite.Sizzle("[data-currentword]"),function(){this.removeAttribute("data-currentword")});
H=!1;h()}}}function p(a){a=a.replace(/\u00a0/g," ");for(var b=0;b<B.length;b++)a=a.replace(B[b],"");return a}function m(){Recite.Util.each(Recite.Sizzle("reciteword[data-highlight]:not([data-partword])"),function(){var a=this,b=!1,d=Recite.Sizzle("reciteWordByWord")[0];Recite.Util.each(Recite.Sizzle("reciteword:not([data-have-read])",d),function(){if(!b&&(this.setAttribute("data-have-read",1),this.removeAttribute("data-highlight"),this.removeAttribute("style"),this==a))return b=!0,!1})})}function n(a){Recite.Util.each(Recite.Sizzle("reciteword["+
a+"]"),function(){this.removeAttribute(a)})}function g(){r.enabled&&!w&&(H=!0,G=null,n("data-have-read"),n("data-currentword"),n("data-partword"),n("data-highlight"),n("style"))}function l(){v&&y&&E&&(E.remove(),E=null,y.setAttribute("style",K));y&&(y.positionalProxy=null);v=!1;y=C=J=G=null}function x(a){try{return document.createTreeWalker(a)}catch(L){r.enabled=!1}return null}function u(){z();D=setInterval(function(){q()},r.wordCheckRate)}function z(){D&&(clearInterval(D),D=null)}var r={enabled:!1,
wordCheckRate:50,css:"",colorRoundingThreshold:75},B=[/"/g,/'/g,/\//g,/\\/g,/`/g,/-/g,/\(/g,/\)/g,/{/g,/}/g,/\[/g,/\]/g],A=/([ . !:;\u2013?,\n])/gi,D=null,v=!1,w=!1,C=null,y=null,G=null,F;Recite.Event.subscribe("Audio:started",function(){if(r.enabled&&!w){var a=Recite.Sizzle("recite.recite-selected");if(0<a.length){a=a[0];y&&y==a||(l(),v=!1,y=a);if(!v&&r.enabled&&!w&&y){E=document.createElement("reciteWordByWord");E.setAttribute("class","recite-word-by-word");E.setAttribute("data-recite-skip","true");
a=y.cloneNode(!0);J=getComputedStyle(y);c();var b=E;b:{var d=void 0;void 0==d&&(d=A);var e=x(a);if(null==e)d=a;else{var f=document.createElement(a.tagName);for(f.innerHTML=a.innerHTML;e.nextNode();){var g=e.currentNode;if(3==g.nodeType){var h=document.createElement("recitesentence");h.setAttribute("class","recite-ignore-styles-background recite-ignore-styles-color");for(var k=g.textContent.replace(/\u00a0/g," ").split(d),p=0;p<k.length;p++)if(""!=k[p].trim()){var m=document.createElement("reciteword");
m.innerText=k[p];var n=k[p];1<n.length&&(n=n.replace(/^[ '".,;:'`|\/?]/,""),n=n.replace(/[ '".,;:'`|\/?]+$/,""));"&"==n&&(n="&amp;");for(var F=0;F<B.length;F++)n=n.replace(B[F],"");m.setAttribute("data-word-value",n);m.setAttribute("class","recite-ignore-styles-background recite-ignore-styles-color");h.appendChild(m)}else m=document.createTextNode(k[p]),h.appendChild(m);k=x(f);if(null==k){d=a;break b}for(;k.nextNode();)p=k.currentNode,m=p.parentElement,3==p.nodeType&&p.textContent==g.textContent&&
"RECITEWORD"!=m.tagName&&(m.insertBefore(h,p),m.removeChild(p))}}d=f}}b.innerHTML=d.innerHTML;E.innerHTML!==a.innerHTML&&(y.parentNode.insertBefore(E,y),K=y.getAttribute("style"),E.style=r.css,E.style.color=J.color,y.setAttribute("style",K+" "+I),v=!0,y.positionalProxy=E)}z();G=null;q();u()}}});Recite.Event.subscribe("Audio:ended",e);Recite.Event.subscribe("Audio:rewind",g);Recite.Event.subscribe("Audio:forward",g);Recite.Event.subscribe("Translate:global-begin",a);Recite.Event.subscribe("Translate:restore_begin",
a);Recite.Event.subscribe("Translate:global-end",k);Recite.Event.subscribe("Translate:restore_complete",k);Recite.Event.subscribe("Preferences:load",h);Recite.Event.subscribe("Preferences:set",h);Recite.Event.subscribe("Preferences:reset",h);var H=!1,E=null,I=" ; display:none; color:transparent !IMPORTANT; background:transparent",K="",J=null;return{updateWordHighlight:function(){r.enabled&&!w&&q()},enable:function(){r.enabled=!0},disable:function(){l();r.enabled=!1},getOptions:function(){return r},
setOptions:function(a){r=Recite.Util.merge(r,a)},resetSection:function(){l()}}}();Recite.namespace("Style");
Recite.Style=function(){function h(a){var b=Recite.Sizzle("style[id=recite-style]");0===b.length?(b=a.createElement("style"),b.type="text/css",b.id="recite-style",b.setAttribute("data-recite-skip","true"),Recite.Sizzle("head",a)[0].appendChild(b)):b=b[0];return b}function f(){var b="",e=Recite.Preferences.get("style"),f=Recite.Preferences.get("textMode.enabled");null!==e.marginSize&&f&&(b+="#recite-wrapper, recitewordbyword,  #recite-dictionary * { padding: 0 "+e.marginSize+"; } body { padding-left: 0 !important; padding-right: 0 !important; margin-left: 0 !important; margin-right: 0 !important; } ",
e.marginSize!==a.marginSize&&(a.marginSize=e.marginSize,Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Style",event:"margin: "+e.marginSize})));null!==e.textAlign&&f&&(b+="#recite-wrapper, recitewordbyword, #recite-dictionary * { text-align: "+e.textAlign+"; }",e.textAlign!==a.textAlign&&(a.textAlign=e.textAlign,Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Style",event:"textAlign: "+e.textAlign})));e.font&&null!==e.font.face&&(b+="[data-recite-shadow] *, #recite-wrapper, recitewordbyword, #recite-wrapper *, #recite-dictionary * { font-family: "+
e.font.face+" !important; }",e.font.face!==a.font.face&&(a.font.face=e.font.face,Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Style",event:"font-family: "+e.font.face})));e.font&&null!==e.font.size&&(b+=".recite-ele,  recitewordbyword, #recite-dictionary * { font-size: "+e.font.size+"% !important; } ",e.font.size!==a.font.size&&(a.font.size=e.font.size,Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Style",event:"font-size: "+e.font.size+"%"})));if(e.font&&null!==e.font.color){var d=
"{color: "+e.font.color+"!important; text-shadow: none !important;}";for(f=0;f<c.foregroundColorSelectors.length;f++){var h=c.foregroundColorSelectors[f],m=":not(.recite-ignore-styles-color)";b+="#recite-wrapper "+h+m+" "+d;b+="[data-recite-shadow] "+h+m+" "+d}b=b+("#recite-wrapper "+d)+("#recite-dictionary * "+d)+("*::-webkit-input-placeholder "+d)+("*:-moz-placeholder "+d)+("*::-moz-placeholder "+d)+("*::-ms-input-placeholder "+d)+("input:not(.recite-colorpicker) "+d)+("textarea "+d)+("select "+
d)+("button "+d);e.font.color!==a.font.color&&(a.font.color=e.font.color,Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Style",event:"font-colour: "+e.font.color}))}if(e.link&&null!==e.link.color){d="{color: "+e.link.color+" !important;}";for(f=0;f<c.linkColorSelectors.length;f++)h=c.linkColorSelectors[f],m="",b+="#recite-wrapper "+h+m+" "+d,b+="[data-recite-shadow] "+h+m+" "+d;e.link.color!==a.link.color&&(a.link.color=e.link.color,Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Style",
event:"link-colour: "+e.link.color}))}if(null!==e.backgroundColor){d="{background: "+e.backgroundColor+" !important; box-shadow: none !important;}";for(f=0;f<c.backgroundColorSelectors.length;f++)h=c.backgroundColorSelectors[f],m=":not(.recite-ignore-styles-background)",b+="#recite-wrapper "+h+m+" "+d,b+="[data-recite-shadow] "+h+m+" "+d;b=b+("body, html, #recite-wrapper, #recite-dictionary, #recite-dictionary * "+d)+("input:not(.recite-colorpicker) "+d)+("textarea "+d)+("select "+d)+("button:not(#recite-header button) "+
d);e.backgroundColor!==a.backgroundColor&&(a.backgroundColor=e.backgroundColor,Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Style",event:"background-colour: "+e.backgroundColor}))}e.ruler&&null!==e.ruler.color&&e.ruler.color!==a.ruler.color&&(a.ruler.color=e.ruler.color,Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Style",event:"ruler-colour: "+e.ruler.color}));e.screenMask&&null!==e.screenMask.color&&e.screenMask.color!==a.screenMask.color&&(a.screenMask.color=e.screenMask.color,
Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Style",event:"screenMask-colour: "+e.screenMask.color}));null!==e.zoom&&void 0!==e.zoom&&(f=parseInt(e.zoom),m=f/100,b+="#recite-wrapper {  -moz-transform: scale( "+m+" , "+m+" ); /* Moz-browsers */  zoom: "+m+"; /* Other non-webkit browsers */  zoom: "+f+"%; /* Webkit browsers*/ } ",e.zoom!==a.zoom&&(a.zoom=e.zoom,Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Style",event:"zoom: "+e.zoom})));null!==e.lineHeight&&(b+=".recite-ele,  recitewordbyword, #recite-dictionary * { line-height: "+
e.lineHeight+"% !important; } ",e.lineHeight!==a.lineHeight&&(a.lineHeight=e.lineHeight,Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Style",event:"line-height: "+e.lineHeight+"%"})));null!==e.charSpacing&&(b+=".recite-ele,  recitewordbyword, #recite-dictionary * { letter-spacing: "+e.charSpacing+"px !important; } ",e.charSpacing!==a.charSpacing&&(a.charSpacing=e.charSpacing,Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Style",event:"character-spacing: "+e.charSpacing+"px"})));
return b}function b(){var a=h(window.document);if(a.styleSheet)a.styleSheet.cssText=f();else{for(var b=window.document.createTextNode(f());a.hasChildNodes();)a.removeChild(a.lastChild);a.appendChild(b)}1==Recite.getOptions("shadowDomSupport")&&(b=Recite.Sizzle("[data-recite-shadow='true']"),Recite.Util.each(b,function(b,d){b=a.cloneNode(!0);b.setAttribute("id","recite-shadow-style");if("undefined"!=typeof d.shadowRoot){var c=d.shadowRoot.querySelectorAll("#recite-shadow-style");Recite.Util.each(c,
function(a,b){b.remove()});d.shadowRoot.appendChild(b)}}));Recite.Event.publish("Style:updated",{origin:"Recite.Style"})}var c={preserve_background_images:!1,foregroundColorSelectors:["*:not(a)"],linkColorSelectors:["a"],backgroundColorSelectors:["*"]},a={marginSize:null,font:{color:null,face:null,size:null},backgroundColor:null,link:{color:null},ruler:{color:null},screenMask:{color:null,opacity:1},zoom:null,lineHeight:null,charSpacing:null};Recite.Event.subscribe("Preferences:load",function(){b()});
Recite.Event.subscribe("Preferences:set",function(){b()});Recite.Event.subscribe("Preferences:reset",function(){b()});Recite.Event.subscribe("Recite:enable",function(){var a=Recite.Sizzle("body > *",document),b=Recite.Sizzle("body",document)[0];Recite.Debug.log("Recite.Style","Wrapping body elements in a recite-wrapper.");var c=document.createElement("div");c.id="recite-wrapper";Recite.Util.each(a,function(a,b){"true"!==b.getAttribute("data-recite-skipwrap")&&(b.parentNode.removeChild(b),c.appendChild(b))});
b.appendChild(c);Recite.Event.publish("Recite:Style:wrappedElements")});return{setOptions:function(a){c=Recite.Util.merge(c,a)},getOptions:function(){return c},update:b}}();Recite.namespace("Ruler");
Recite.Ruler=function(){function h(){Recite.Preferences.get("style.ruler.enabled")?Recite.Ruler.enable():Recite.Ruler.disable();c()}function f(c){var d=Recite.Sizzle("#recite-ruler",c);if(0==d.length){var e=Recite.Sizzle("body",c)[0];d=c.createElement("div");d.id="recite-ruler";d.style.backgroundColor=b();d.style.opacity=a.opacity;e.appendChild(d)}else d=d[0];return d}function b(){var b=Recite.Preferences.get("style.ruler.color");if(null==b||"null"==b||""==b.trim())b=a.backgroundColor;return b}function c(c){if(a.enabled&&
!k){clearTimeout(a.timeout);Recite.Util.unSetIFramePointerEvents();a.timeout=setTimeout(function(){Recite.Util.reSetIFramePointerEvents()},a.intent);var d=f(document),e=c?c.clientY:0;switch(a.mode){case "bottom":void 0!=c&&(d.style.bottom=0,d.style.top=e+a.modes.bottom.yOffset+"px");break;case "top":void 0!=c&&(d.style.top=0,d.style.height=e+a.modes.top.yOffset+"px");break;case "bar":void 0!=c&&(d.style.bottom="auto",d.style.top=e+a.modes.bar.yOffset+"px"),d.style.height=a.modes.bar.height+"px"}d.style.backgroundColor=
b();d.style.opacity=a.opacity}}var a={enabled:!1,mode:"bar",backgroundColor:"#000",opacity:1,modes:{top:{yOffset:-80},bottom:{yOffset:-80},bar:{yOffset:40,height:160}},timeout:null,intent:200},k=!1,e=null;Recite.Event.subscribe("Preferences:load",h);Recite.Event.subscribe("Preferences:set",h);Recite.Event.subscribe("Preferences:reset",h);return{setOptions:function(b){a=Recite.Util.merge(a,b)},enable:function(){if(Recite.Browser.isMobile())Recite.Debug.log("Recite.Ruler","Preventing load as feature not supported on mobile"),
Recite.Gui.Notification.show("This feature is not available on your platform.",{read:!1});else if(!k&&!a.enabled){Recite.Debug.log("Recite.Ruler","Enabled ruler");Recite.PlayerControls.disable();Recite.Player.stop();Recite.ScreenMask.disable();Recite.Magnifier.disable();Recite.Sizzle("body",document);f(document);if(null==e){var b=Recite.Sizzle("iframe");e=[];Recite.Util.each(b,function(a,b){e.push({frame:b,state:void 0==b.style.pointerEvents?"all":b.style.pointerEvents})})}Recite.Util.unSetIFramePointerEvents();
Recite.DomEvent.add(document,"mousemove",c);a.enabled=!0;Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Ruler",event:"enable"});Recite.Stats.log("feature","ruler",null)}},disable:function(){if(a.enabled){Recite.Debug.log("Recite.Ruler","Disabled ruler");Recite.Util.reSetIFramePointerEvents();Recite.PlayerControls.enable();Recite.Preferences.set("style.ruler.enabled",!1);Recite.Sizzle("body",document);Recite.DomEvent.remove(document,"mousemove",c);var b=f(document);b.parentNode.removeChild(b);
a.enabled=!1;Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Ruler",event:"disable"});Recite.Event.publish("Recite.Dom.Observor:change")}},disableInstance:function(){k=!0},isEnabled:function(){return a.enabled}}}();Recite.namespace("ScreenMask");
Recite.ScreenMask=function(){function h(){Recite.Preferences.get("style.screenMask.enabled")?Recite.ScreenMask.enable():Recite.ScreenMask.disable();b()}function f(b){var e=Recite.Sizzle("#recite-screen-mask-top",b),d=Recite.Sizzle("#recite-screen-mask-bottom",b);if(0==e.length){var f=Recite.Sizzle("body",b)[0];e=b.createElement("div");e.id="recite-screen-mask-top";e.style.backgroundColor=c();e.style.opacity=a.opacity;f.appendChild(e)}else e=e[0];0==d.length?(f=Recite.Sizzle("body",b)[0],d=b.createElement("div"),
d.id="recite-screen-mask-bottom",d.style.backgroundColor=c(),d.style.opacity=a.opacity,f.appendChild(d)):d=d[0];return{top:e,bottom:d}}function b(b){if(!k){clearTimeout(a.timeout);Recite.Util.unSetIFramePointerEvents();a.timeout=setTimeout(function(){Recite.Util.reSetIFramePointerEvents()},a.intent);var e=f(document);if(a.enabled){var d=a.height/2;if(void 0!=b){var h=b.clientY+a.yOffset;b=h+d;d=h-d;e.top.style.height=(0<d?d:0)+"px";e.bottom.style.top=(0<b?b:0)+"px"}e.top.style.backgroundColor=c();
e.bottom.style.backgroundColor=c();e.top.style.opacity=a.opacity;e.bottom.style.opacity=a.opacity}}}function c(){var b=Recite.Preferences.get("style.screenMask.color");if(null==b||"null"==b||""==b.trim())b=a.backgroundColor;return b}var a={enabled:!1,height:160,yOffset:0,backgroundColor:"#000",opacity:1,timeout:null,intent:200},k=!1;Recite.Event.subscribe("Preferences:load",h);Recite.Event.subscribe("Preferences:set",h);Recite.Event.subscribe("Preferences:reset",h);return{setOptions:function(b){a=
Recite.Util.merge(a,b)},enable:function(){if(Recite.Browser.isMobile())Recite.Debug.log("Recite.ScreenMask","Preventing load as feature not supported on mobile"),Recite.Gui.Notification.show("This feature is not available on your platform.",{read:!1});else if(!k&&!a.enabled){Recite.Debug.log("Recite.ScreenMask","Enabled ScreenMask");Recite.PlayerControls.disable();Recite.Player.stop();Recite.Ruler.disable();Recite.Magnifier.disable();var c=Recite.Sizzle("body",document)[0];f(document);Recite.Util.unSetIFramePointerEvents();
Recite.DomEvent.add(c,"mousemove",b);a.enabled=!0;Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.ScreenMask",event:"enable"});Recite.Stats.log("feature","screen_mask",null)}},disable:function(){if(a.enabled){Recite.Debug.log("Recite.ScreenMask","Disabled screen mask");Recite.Preferences.set("style.screenMask.enabled",!1);Recite.Util.reSetIFramePointerEvents();Recite.PlayerControls.enable();var c=Recite.Sizzle("body",document)[0];Recite.DomEvent.remove(c,"mousemove",b);c=f(document);var h=
c.top.parentNode;h.removeChild(c.top);h.removeChild(c.bottom);a.enabled=!1;Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.ScreenMask",event:"disable"});Recite.Event.publish("Recite.Dom.Observor:change")}},isEnabled:function(){return a.enabled},disableInstance:function(){k=!0}}}();Recite.namespace("Browser");
Recite.Browser=function(){function h(){c=f(q)||"unknown browser";a=b(navigator.userAgent)||b(navigator.appVersion)||"unknown version";k=f(d)||"unknown OS"}function f(a){for(var b=0;b<a.length;b++){var d=a[b].string,c=a[b].prop;e=a[b].versionSearch||a[b].identity;if(d){if(-1!==d.indexOf(a[b].subString))return a[b].subString}else if(c)return a[b].subString}return!1}function b(a){var b=a.indexOf(e);return-1===b?!1:parseFloat(a.substring(b+e.length+1))}var c,a,k,e,q=[{string:navigator.userAgent,subString:"Chrome",
identity:"Chrome"},{string:navigator.userAgent,subString:"OmniWeb",versionSearch:"OmniWeb/",identity:"OmniWeb"},{string:navigator.vendor,subString:"Apple",identity:"Safari",versionSearch:"Version"},{prop:window.opera,subString:"Opera",identity:"Opera",versionSearch:"Version"},{string:navigator.vendor,subString:"iCab",identity:"iCab"},{string:navigator.vendor,subString:"KDE",identity:"Konqueror"},{string:navigator.userAgent,subString:"Firefox",identity:"Firefox"},{string:navigator.vendor,subString:"Camino",
identity:"Camino"},{string:navigator.userAgent,subString:"Netscape",identity:"Netscape"},{string:navigator.userAgent,subString:"MSIE",identity:"Internet Explorer",versionSearch:"MSIE"},{string:navigator.userAgent,subString:"Gecko",identity:"Mozilla",versionSearch:"rv"},{string:navigator.userAgent,subString:"Mozilla",identity:"Netscape",versionSearch:"Mozilla"}],d=[{string:navigator.platform,subString:"Win",identity:"Windows"},{string:navigator.platform,subString:"Mac",identity:"Mac"},{string:navigator.userAgent,
subString:"iPhone",identity:"iPhone/iPod"},{string:navigator.userAgent,subString:"iPad",identity:"iPad"},{string:navigator.userAgent,subString:"Android",identity:"Andriod"},{string:navigator.platform,subString:"Linux",identity:"Linux"},{string:navigator.platform,subString:"Andriod",identity:"Andriod"}];return{getName:function(){h();return c},getVersion:function(){h();return a},getOS:function(){h();return k},getData:function(){h();return{name:c,version:a,OS:k}},isMobile:function(){return"Android"===
Recite.Browser.getOS()||"iPhone"===Recite.Browser.getOS()||"iPad"===Recite.Browser.getOS()?!0:!1}}}();Recite.namespace("Selection");
Recite.Selection=function(){function h(){var b="";"undefined"!==typeof window.getSelection?b=window.getSelection().toString():"undefined"!==typeof document.selection&&"Text"===document.selection.type&&(b=document.selection.createRange().text);return b.replace(/^\s+|\s+$/g,"")}var f={playOnSelection:!1};Recite.DomEvent.add(document,"mouseup",function(b){b=h();0<b.length&&(Recite.Event.publish("Selection:textSelection",{method:"selection",text:b}),f.playOnSelection&&Recite.Player.play(b))});return{setOptions:function(b){f=
Recite.Util.merge(f,b)},getOptions:function(){return f},getTextSelection:h}}();Recite.namespace("AudioDownload");
Recite.AudioDownload=function(){function h(b){Recite.Audio.AEBroker.stop();Recite.Audio.AEBroker.clearPlaylist();Recite.Gui.Notification.show("Your download file is being created.  It will be automatically downloaded once created",{read:!1});Recite.Audio.AEBroker.setDownload(!0);Recite.PlayerDispatcher.dispatch(b);Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Audio",event:"download"})}var f={enabled:!0},b=!1;Recite.Event.subscribe("Selection:textSelection",function(c,a){"selection"===a.method&&
f.enabled&&b&&(h(a.text),b=!1)});return{setOptions:function(b){f=Recite.Util.merge(f,b)},getOptions:function(){return f},getEnabled:function(){return f.enabled},generateDownload:function(c){Recite.Debug.log("AudioDownload","Generate");f.enabled?(c=c||null)&&void 0!=c&&null!=c&&""!=c?(Recite.Debug.log("AudioDownload","Generate: "+c),h(c)):(Recite.Debug.log("AudioDownload","Listen for selection...."),Recite.Gui.Notification.show("Please select some text.",{read:!1}),b=!0):(Recite.Debug.log("AudioDownload",
"Disabled"),Recite.Gui.Notification.show("MP3 download functionality currently disabled",{read:!0}))},init:function(){}}}();Recite.namespace("TextMode");
Recite.TextMode=function(){function h(b,a){Recite.Util.each(b.styleSheets,function(b,c){a?"true"!==(c.ownerNode||c.owningElement).getAttribute("data-recite-skip")&&(c.prevState=c.disabled,c.disabled=!0):"undefined"!==typeof c.prevState?(c.disabled=c.prevState,c.prevState=null):c.disabled=!1})}var f={disableInlineStyles:!0,disableStylesheets:!0,hideElements:["img","iframe","object","embed"],textAlign:!1,defaultMarginSize:"30%"},b=[];Recite.Event.subscribe("Preferences:load",function(b,a){Recite.Preferences.get("textMode.enabled")&&
(b=Recite.Sizzle("#recite-wrapper")[0],Recite.TextMode.transform(b))});Recite.Event.subscribe("Preferences:set",function(b,a){b=Recite.Preferences.get("textMode.enabled");a=Recite.Sizzle("#recite-wrapper")[0];b?Recite.TextMode.transform(a):Recite.TextMode.restore(a)});Recite.Event.subscribe("Preferences:reset",function(){var b=Recite.Preferences.get("textMode.enabled"),a=Recite.Sizzle("#recite-wrapper")[0];!0===b?Recite.TextMode.transform(a):Recite.TextMode.restore(a)});return{setOptions:function(b){f=
Recite.Util.merge(f,b)},transform:function(c){if(!(0<=Recite.Util.inArray(c,b))){b.push(c);var a=c.ownerDocument;f.disableStylesheets&&h(a,!0);a=Recite.Sizzle("*",c);f.disableInlineStyles&&Recite.Util.each(a,function(a,b){null!==b.getAttribute("style")&&(b.setAttribute("data-recite-restore-style",b.getAttribute("style")),b.setAttribute("style",null))});f.textAlign&&Recite.Util.each(a,function(a,b){b&&b.style&&(b.style.textAlign&&b.setAttribute("data-recite-restore-text-align",b.style.textAlign),b.style.textAlign=
f.textAlign)});Recite.Util.each(f.hideElements,function(a,b){a=Recite.Sizzle(b,c);Recite.Util.each(a,function(a,b){b.setAttribute("data-recite-restore-display",Recite.Dom.getStyle(b,"display"));b.style.display="none"})});Recite.Preferences.get("style.marginSize")||Recite.Preferences.set("style.marginSize",f.defaultMarginSize);Recite.Event.publish("TextMode:enabled");Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.TextMode",event:"enable"})}},restore:function(c){var a=Recite.Util.inArray(c,
b);if(!(0>a)){var k=c.ownerDocument;f.disableStylesheets&&h(k,!1);k=Recite.Sizzle("*",c);f.textAlign&&Recite.Util.each(k,function(a,b){null!==b.getAttribute("data-recite-restore-text-align")&&b.style?b.style.textAlign=b.getAttribute("data-recite-restore-text-align"):b.style.textAlign=null});f.disableInlineStyles&&Recite.Util.each(k,function(a,b){null!==b.getAttribute("data-recite-restore-style")&&(b.setAttribute("style",b.getAttribute("data-recite-restore-style")),b.setAttribute("data-recite-restore-style",
null))});Recite.Util.each(f.hideElements,function(a,b){a=Recite.Sizzle(b,c);Recite.Util.each(a,function(a,b){null!==b.getAttribute("data-recite-restore-display")&&(b.style.display=b.getAttribute("data-recite-restore-display"),b.setAttribute("data-recite-restore-display",null))})});b.splice(a,1);Recite.Event.publish("TextMode:disabled");Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.TextMode",event:"disable"})}}}}();Recite.namespace("Recite.Dictionary");
Recite.Dictionary=function(){function h(){Recite.Preferences.get("dictionary.enabled")?Recite.Dictionary.enable():Recite.Dictionary.disable()}function f(){Recite.Sizzle("#recite-dictionary",document)[0].style.display="block";Recite.DomEvent.add(Recite.Sizzle("#recite-dictionary-inner-reveal",document)[0],"click",function(){if(""===Recite.Sizzle("#recite-dictionary-inner",document)[0].style.height){var a=Recite.Sizzle("#recite-dictionary-inner",document)[0],b=Recite.Dom.getWindowDimensions(window).height-
q.offsets.height;a.style.height=b+"px";a.style.overflow="auto";Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Dictionary",event:"enable"})}else a=Recite.Sizzle("#recite-dictionary-inner",document)[0],a.style.height="",a.style.overflow="hidden",Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Dictionary",event:"disable"})})}function b(b){var d=Recite.Sizzle("#recite-dictionary-inner-words",document)[0];d.innerHTML=b?"<h4>Recite English Dictionary</h4> <br /><br />"+b:"<h4>Recite English Dictionary</h4> <br /> Select one or more words to get definition";
b=Recite.Parser.Html.parse(d);Recite.PlayerControls.invoke(b);Recite.DomEvent.add(Recite.Sizzle(".recite-dictionary-synonym"),"click",function(b){a({text:b.target.innerHTML})})}function c(b,d){if("selection"===d.method){if(!p||""===d.text||!1===d.text||d.text===m)return!1;a(d);m=d.text}return!0}function a(a){b("Getting definition...");k(a.text.replace(/ /g,","),function(a){b("");var d="";Recite.Util.each(a,function(a,b){d+="<strong>"+unescape(b.word)+"</strong><br />"+unescape(b.definition)+"<br /><br />";
b.synonyms&&(d+="<strong>Synonyms</strong><br />",Recite.Util.each(b.synonyms,function(a,b){d+="<span class='recite-dictionary-synonym'>"+unescape(b)+"</span>,<br />"}),d+="<hr />")});b(d)})}function k(a,b){Recite.Debug.log("Recite.Dictionary","Start ajax");Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Dictionary",event:"definition: "+a});Recite.Api.call("dictionary","POST",{data:{words:escape(a)},contentType:"application/json",success:b});return!1}function e(a,b){a=document.createElement("div");
a.id="recite-dictionary";a.setAttribute("data-recite-skip","true");a.innerHTML=q.content;document.body.appendChild(a);a.className="recite-dictionary-"+q.position;"header"!==q.position&&(a.style.width=q.dimensions.width,a.style.height=q.dimensions.height);b.call()}var q={offsets:{height:140},position:"top-left",dimensions:{width:"250px",height:"400px"},content:'<div id="recite-dictionary-inner">                        <div id="recite-dictionary-inner-words">                        </div>                  </div>                  <div id="recite-dictionary-inner-reveal">                  </div>'},
d=null,p=!1,m=null;Recite.Event.subscribe("Recite.disable",function(){Recite.Dictionary.disable()});Recite.Event.subscribe("Preferences:load",h);Recite.Event.subscribe("Preferences:set",h);Recite.Event.subscribe("Preferences:reset",h);return{enable:function(){p||(0!==Recite.Dom.getLanguage(Recite.Sizzle("html")[0]).lastIndexOf("en",0)?Recite.Gui.Notification.show("Dictionary not available for this language."):(e(document,function(){f();b()}),d=Recite.Event.subscribe("Selection:textSelection",c),p=
!0,Recite.PlayerControls.disable(),Recite.Player.stop(),Recite.Debug.log("Recite.Dictionary","Dictionary enabled"),Recite.Gui.Notification.show("Recite dictionary enabled.  Select any word on the page to view it's definition"),Recite.Event.publish("Recite.Dictionary.enabled"),Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Dictionary",event:"enable"})))},disable:function(){p&&(Recite.Sizzle("#recite-dictionary",document)[0].style.display="none",Recite.Event.unsubscribe(d),p=!1,Recite.PlayerControls.enable(),
Recite.Gui.Notification.show("Dictionary disabled"),Recite.Event.publish("Recite.Dictionary.disabled"),Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Dictionary",event:"disable"}))},isEnabled:function(){return p},setOptions:function(a){q=Recite.Util.merge(q,a)}}}();Recite.namespace("Docreader");
Recite.Docreader=function(){function h(a){if(-1===a.getAttribute("href").indexOf(c.endpoint)){var b=a.getAttribute("href");var e=document.createElement("span");e.innerHTML='<a href="'+b.split("&").join("&amp;").split('"').join("&quot;").split("<").join("&lt;")+'">&nbsp;</a>';b=e.firstChild.href;c.ttl&&(b+="&ttl="+c.ttl);c.maxViews&&(b+="&max_views="+c.maxViews);a.setAttribute("href",c.endpoint+encodeURI(b))}}var f=[],b=["pdf"],c={enabled:!0,selector:"docreader",urlMatches:[],endpoint:"https://docreader.reciteme.com/doc/url?q=",
ttl:null,maxViews:null};return{setOptions:function(a){c=Recite.Util.merge(c,a)},enabled:function(){return c.enabled},setEnabled:function(a){c.enabled=a},load:function(){if(c.enabled){f=document.getElementsByTagName("a");for(var a=0;a<f.length;a++){var k=f[a];if(null!==k.getAttribute("href")){for(var e=k,q=0;q<c.urlMatches.length;q++)null!==e.getAttribute("href").match(c.urlMatches[q])&&h(e);e=k;q=e.getAttribute("href").split(".").pop();for(var d=0;d<b.length;d++)q===b[d]&&h(e);-1===k.className.indexOf(" "+
c.selector)&&-1===k.className.indexOf(c.selector+" ")&&k.className!==c.selector&&k.getAttribute("id")!==c.selector||h(k)}}}}}}();Recite.namespace("Keyboard");
Recite.Keyboard=function(){function h(){Recite.Debug.log("Recite.Keyboard","Binding keyboard keys");f.enabled&&Recite.Util.each(f.key_bindings,function(b,c){Recite.Key(b,c)})}var f={enabled:!0,key_bindings:{"ctrl+right":function(){Recite.PlayerControls.next();return!1},"ctrl+left":function(){Recite.PlayerControls.previous();return!1},"ctrl+alt+p":function(){Recite.PlayerControls.play();return!1},"ctrl+alt+f":function(){Recite.Sizzle(".recite-sprite-button-font")[0].click();return!1},"ctrl+alt+c":function(){Recite.Sizzle(".recite-sprite-button-themes")[0].click();
return!1},"ctrl+r":function(){Recite.Sizzle(".recite-sprite-button-ruler")[0].click();return!1},"ctrl+d":function(){Recite.Sizzle(".recite-sprite-button-dictionary")[0].click();return!1},"ctrl+l":function(){Recite.Sizzle(".recite-sprite-button-translate")[0].click();return!1},"ctrl+x":function(){Recite.Sizzle(".recite-sprite-button-textmode")[0].click();return!1},"ctrl+m":function(){Recite.Sizzle(".recite-sprite-button-margin")[0].click();return!1},"ctrl+shift+o":function(){Recite.Sizzle(".recite-sprite-button-settings")[0].click();
return!1},"ctrl+s":function(){Recite.Sizzle(".recite-sprite-button-save")[0].click();return!1}}};Recite.Event.subscribe("Recite:enable",h);return{setOptions:function(b){f=Recite.Util.merge(f,b)},enabled:function(){return f.enabled},setEnabled:function(b){f.enabled=b},load:function(){h()}}}();Recite.namespace("Tracker");
Recite.Tracker=function(){var h={enabled:!0};return{setOptions:function(f){h=Recite.Util.merge(h,f);Recite.Tracker.Api.setOptions(h.Api);Recite.Tracker.Direct.setOptions(h.Direct);Recite.Tracker.Ga.setOptions(h.Ga)},track:function(f,b){Recite.Debug.log("Recite.Tracker",f);Recite.Tracker.Api.track(f,b);Recite.Tracker.Ga.track(f,b)}}}();Recite.namespace("Tracker.Ga");
Recite.Tracker.Ga=function(){var h={enabled:!1,trackerName:void 0};return{setOptions:function(f){h=Recite.Util.merge(h,f)},track:function(f,b){h.enabled?(window.hasOwnProperty=window.hasOwnProperty||Object.prototype.hasOwnProperty,window.hasOwnProperty("GoogleAnalyticsObject")&&"function"==typeof window[window.GoogleAnalyticsObject]&&(Recite.Debug.log("Recite.Tracker.Ga",f),window[window.GoogleAnalyticsObject](void 0==h.trackerName?"send":h.trackerName+".send","event","ReciteMe",f+": "+b))):Recite.Debug.log("Recite.Tracker.Ga",
"Not enabled, ignoring")}}}();Recite.namespace("Tracker.Api");
Recite.Tracker.Api=function(){var h={enabled:!0};return{setOptions:function(f){h=Recite.Util.merge(h,f)},track:function(f,b){if(h.enabled){Recite.Debug.log("Recite.Tracker.Api",f);var c={};c.type=f;c.value=b;c.uri=window.location.toString();c.referrer=window.document.referrer||null;Recite.Api.call("tracking","POST",{data:{events:[c],system_info:{type:"browser",recite_version:"3.2.69",screenWidth:window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth,screenHeight:window.innerHeight||
document.documentElement.clientHeight||document.body.clientHeight}},success:function(a){Recite.Debug.log("Recite.Tracker.Api","Tracked event type: "+f)}})}else Recite.Debug.log("Recite.Tracker.Api","Not enabled, ignoring")}}}();Recite.namespace("Tracker.Direct");
Recite.Tracker.Direct=function(){var h={enabled:!1};return{setOptions:function(f){h=Recite.Util.merge(h,f)},track:function(f,b){if(h.enabled){Recite.Debug.log("Recite.Tracker.Direct",f);var c={};c.type=f;c.value=b;c.uri=window.location.toString();c.referrer=window.document.referrer||null;Recite.Api.call("tracking","POST",{data:{events:[c],system_info:{type:"browser",recite_version:"3.2.69",screenWidth:window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth,screenHeight:window.innerHeight||
document.documentElement.clientHeight||document.body.clientHeight}},headers:{Authorization:"Bearer __TRACKING_TOKEN__",Key:"__TRACKING_KEY__"},authRequired:!1,endpoint:"__TRACKING_ENDPOINT__",success:function(a){Recite.Debug.log("Recite.Tracker.Api","Tracked event type: "+f)}})}else Recite.Debug.log("Recite.Tracker.Direct","Not enabled, ignoring")}}}();Recite.namespace("Stats");
Recite.Stats=function(){function h(){var b=a+document.location.origin,c=0;if(0===b.length)return c;for(var e=0;e<b.length;e++){var f=b.charCodeAt(e);c=(c<<5)-c+f;c|=0}return c}function f(){var a=(new Date).getTime(),b=performance&&performance.now&&1E3*performance.now()||0;return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(d){var c=16*Math.random();0<a?(c=(a+c)%16|0,a=Math.floor(a/16)):(c=(b+c)%16|0,b=Math.floor(b/16));return("x"===d?c:c&3|8).toString(16)})}function b(){var a=Recite.Storage.Cookie.load("Recite.User");
if(a)return a;if(!c.consent)return null;a=f();Recite.Storage.Cookie.save("Recite.User",a);return a}var c={enabled:!1,consent:!1,statsUrl:"__STATS_URL__",trackingTime:3E3,sessionDelta:1200};"__STATS_URL__"==c.statsUrl&&(c.statsUrl="https://stats.reciteme.com");var a="__STATS_TOKEN__";"__STATS_TOKEN__"==a&&(a="nYIEapzMivjjPO85E68rUDQ7FJJkWUYU12wplBo3UEmvKXtqgxbH2P1CSPCm4GbCIoPc4i4kVIDX2ZhB");var k=[],e=null,q=!1;return{setOptions:function(a){c=Recite.Util.merge(c,a)},setConsent:function(a){c.consent=
a},log:function(a,e,f){var d=b();c.enabled&&(Recite.Debug.log("Recite.Stats","Queued Log",a,e,f),a={service_version:Recite.version,service_url:Recite.baseUrl,client_key:Recite.Auth.getOptions().client_id,user_id:d,event_category:a,event_name:e,event_value:f,uri:document.location.href,domain:document.location.hostname,path:document.location.pathname,protocol:document.location.protocol,referrer:window.document.referrer||null,screen_width:window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth,
screen_height:window.innerHeight||document.documentElement.clientHeight||document.body.clientHeight,session_delta:c.sessionDelta},k.push(a),Recite.Stats.send())},send:function(){var b=Math.floor(Date.now());null===e&&(e=b-c.trackingTime);var f=b-e;if(f<c.trackingTime)return q||(setTimeout(Recite.Stats.send,c.trackingTime-f+1),q=!0),!1;e=b;q=!1;if(0!=k.length){Recite.Debug.log("Recite.Stats","Sending Logs",k);var m=c.statsUrl+"/log";Recite.Ajax.ajax(m,{method:"POST",data:{reciteme_toolbar_events:k},
contentType:"application/json",beforeSend:function(b){b.setRequestHeader("Authorization","Bearer "+a);b.setRequestHeader("Key",h())},success:function(a,b){Recite.Debug.log("Recite.Stats","Data sent to Stats System.",b)},error:function(a,b){Recite.Debug.log("Recite.Stats","Error sending data to the Stats System. Using URI: "+m,b)}});k=[]}}}}();Recite.namespace("Language.Translate");
Recite.Language.Translate=function(){function h(){var a=Recite.Dom.getLanguage(m);null==a&&(a="en");if(null==n.sourceLanguage||n.sourceLanguage!=a)n.sourceLanguage=a;var b=Recite.Dom.getLanguageDirection(m);null==b&&(b="ltr");if(null==n.sourceDirection||n.sourceDirection!=b)n.sourceDirection=b;null==n.workingPageLanguage&&(n.workingPageLanguage=a);n.listenForPreferenceChanges?(Recite.Debug.log("Recite.Language.Translate","Listening for prerefrence changes"),Recite.Event.subscribe("Preferences:load",
e),Recite.Event.subscribe("Preferences:set",e),Recite.Event.subscribe("Preferences:reset",e)):Recite.Debug.log("Recite.Language.Translate","NOT Listening for prerefrence changes")}function f(a){if("undefined"!=typeof a.getAttribute&&("true"===a.getAttribute("data-recite-skip")||null!=n.translateIgnore&&void 0!=a.getAttribute(n.translateIgnore)))return!1;if(n.ignoreSelectors)for(var d=0;d<n.ignoreSelectors.length;d++){var c=n.ignoreSelectors[d];if(b(a,c))return!1;for(var e=Recite.Dom.getAncestors(a),
f=0;f<e.length;f++)if(b(e[f],c))return!1}return!0}function b(a,b){if("function"==typeof a.matches)return a.matches(b);if("function"==typeof a.matchesSelector)return a.matchesSelector(b);if("function"==typeof a.mozMatchesSelector)return a.mozMatchesSelector(b);if("function"==typeof a.msMatchesSelector)return a.msMatchesSelector(b);if("function"==typeof a.oMatchesSelector)return a.oMatchesSelector(b);if("function"==typeof a.webkitMatchesSelector)return a.webkitMatchesSelector(b);b=document.querySelectorAll(b);
for(var d=0;d<b.length;d++)if(b[d]==a)return!0;return!1}function c(a,b){var d={};Recite.Util.each(a,function(a,c){a=null;for("undefined"!=typeof c&&(a=c.childNodes[0]);null!==a&&"undefined"!=typeof a;){var e=!f(a);if(!e&&3===a.nodeType&&0<a.nodeValue.trim().length){if("undefined"===typeof a.originalContent||null===a.originalContent){a.originalContent=a.nodeValue;var g=Recite.Dom.getLanguage(a);a.originalLang=null!==g?g:n.sourceLanguage;a.originalParentLang=a.parentNode.lang}if(a.originalLang===b||
a.originalLang&&a.originalLang.split("-")[0]===b){if(a.nodeValue=a.originalContent,a.parentNode.lang=a.originalParentLang||null,null==a.parentNode.lang||"null"==a.parentNode.lang)a.parentNode.lang=n.sourceLanguage}else g=a.originalLang?a.originalLang.split("-")[0]:n.sourceLanguage,"undefined"===typeof d[g]&&(d[g]=[]),d[g].push(a)}if(a.hasChildNodes()&&0>Recite.Util.inArray(a.tagName,n.disallowedTags)&&!e)a=a.firstChild;else{for(;null===a.nextSibling&&a!==c;)a=a.parentNode;a=a===c?null:a.nextSibling}}});
return d}function a(a){var b=[];if("INPUT"===a.nodeName&&a.attributes&&a.attributes.type){var d=a.attributes.type.value.toLowerCase();if("submit"==d||"reset"==d||"button"==d)b=["value"]}"BUTTON"===a.nodeName&&(b=["value"]);return n.translateableAttributes.concat(b)}function k(b,d){var c={};if(0===n.translateableAttributes.length)return c;Recite.Util.each(b,function(b,e){var g=null;for("undefined"!=typeof e&&(g=e.childNodes[0]);null!==g&&"undefined"!=typeof g;){g.affectedAttributes=[];var h=!1;if("undefined"!==
typeof g.attributes&&null!==g.attributes){var l=a(g);if(f(g))for(var k=0;k<l.length;k++)for(b=0;b<g.attributes.length;b++)if(g.attributes[b].nodeName===l[k]){g.affectedAttributes.push(g.attributes[b].nodeName);"undefined"===typeof g.originalContent&&(g.originalContent=[]);if("undefined"===typeof g.originalContent[l[k]]||null===g.originalContent[l[k]])g.originalContent[l[k]]=g.getAttribute(l[k]),g.originalLang=null!==Recite.Dom.getLanguage(g)?Recite.Dom.getLanguage(g):n.sourceLanguage,g.originalParentLang=
g.parentNode.lang;if(g.originalLang===d||"string"===typeof g.originalLang&&g.originalLang.split("-")[0]===d)g.setAttribute(g.attributes[b].nodeName,g.originalContent[l[k]]),g.parentNode.lang=g.originalParentLang||n.sourceLanguage,null==g.parentNode.lang&&(g.parentNode.lang=n.sourceLanguage),h=!0}h||"undefined"===typeof g.originalLang||(b=g.originalLang.split("-")[0],"undefined"===typeof c[b]&&(c[b]=[]),c[b].push(g))}if(g.hasChildNodes()&&0>Recite.Util.inArray(g.tagName,n.disallowedTags))g=g.firstChild;
else{for(;null===g.nextSibling&&g!==e;)g=g.parentNode;g=g===e?null:g.nextSibling}}});return c}function e(){var a=Recite.Preferences.get("language");null==n.sourceLanguage&&h();var b=null===a?n.workingPageLanguage!=n.sourceLanguage:a!=n.workingPageLanguage;b&&Recite.Event.publish("Translate:global-begin");if(null!==a){if(Recite.Language.Translate.translate(Recite.Sizzle("#recite-wrapper")[0],a),Recite.Language.Translate.translate(Recite.Sizzle("#recite-header")[0],a),Recite.getOptions("shadowDomSupport")){var d=
Recite.Sizzle("[data-recite-shadow]");Recite.Util.each(d,function(b,d){"undefined"!=typeof d.shadowRoot&&Recite.Language.Translate.translate(d.shadowRoot,a)})}}else Recite.Language.Translate.restore(),Recite.Language.Translate.setWorkingPageLaguage(a);b&&Recite.Event.publish("Translate:global-end");if(null!==a)var c=Recite.Event.subscribe("Translate:complete",function(){Recite.Language.Translate.setWorkingPageLaguage(a);Recite.Event.unsubscribe(c)})}function q(a,b,d){a&&(3===a.nodeType?(d&&(a.nodeValue=
d),a.parentNode&&(a.parentNode.lang=b)):(d&&(a.innerHTML=t),a.lang=b))}var d=[],p=[],m=Recite.Sizzle("html")[0];Text.prototype.originalContent=null;Text.prototype.originalLang=null;Text.prototype.originalParentLang=null;var n={sourceLanguage:"en",sourceDirection:"ltr",workingPageLanguage:null,maxChunkSize:100,maxCharacterLimit:3E3,disallowedTags:["SCRIPT","STYLE","NOSCRIPT"],translateableAttributes:["title","alt","placeholder"],translateIgnore:"data-recite-translate-skip",ignoreSelectors:[],listenForPreferenceChanges:!0};
Recite.Event.subscribe("Recite.Dom.Observor:change",function(a,b){var d=Recite.Preferences.get("language");null!=d&&void 0!=b&&b.hasOwnProperty("affectedElements")&&Recite.Util.each(b.affectedElements,function(a,b){Recite.Debug.log("Recite.Language.Translate","DOM observer detected change");Recite.Debug.log("Recite.Language.Translate",b);void 0==b.getAttribute("lang")&&(a=Recite.Dom.getLanguage(b.textContent),a=null===a?n.sourceLanguage:a,b.setAttribute("lang",a));Recite.Language.Translate.translate(b,
d)})});return{init:function(){h()},setOptions:function(a){null!=a.sourceLanguage&&(a.workingPageLanguage=a.sourceLanguage);n=Recite.Util.merge(n,a)},getOptions:function(){return n},translate:function(a,b){Recite.Dom.getLanguage(a)!=b||b!==n.sourceLanguage&&0!==b.indexOf(n.sourceLanguage)||Recite.Language.Translate.restore();Recite.Event.publish("Translate:begin",{"lang:":b});a=Recite.Util.isArray(a)?a:[a];var e=[],f=[];e=c(a,b);f=k(a,b);for(var g in f){var h=[];Recite.Util.each(f[g],function(a,b){for(a=
0;a<b.affectedAttributes.length;a++)h.push(b.originalContent[b.affectedAttributes[a]])});a="null"!=g?g:n.sourceLanguage;var l=Recite.Language.Locale.stripLanguageLocale(a),m=Recite.Language.Locale.stripLanguageLocale(b);if(l==m||Recite.Language.Translate.getWorkingPageLanguage()==m)Recite.Util.each(f[g],function(a,d){for(a=0;a<d.affectedAttributes.length;a++)d.lang=b;p.push(d)});else{var D={target:Recite.Language.Locale.stripLanguageLocale(b),source:a,text:h};Recite.Api.call("translate","POST",{data:D,
contentType:"application/json",success:function(a){Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Language",event:"translate:"+b});for(var d in f)Recite.Util.each(f[d],function(d,c){for(d=0;d<c.affectedAttributes.length;d++)c.setAttribute(c.affectedAttributes[d],a[0]),c.lang=b,a.shift&&a.shift();p.push(c)})}})}}for(g in e){var v=[],w=0,C=[];Recite.Util.each(e[g],function(a,b){if(null!==n.maxChunkSize&&C.length>=n.maxChunkSize||null!==n.maxCharacterLimit&&w>=n.maxCharacters)v.push(C),C=[],
w=0;C.push(b.originalContent);w+=b.originalContent.length});v.push(C);Recite.Util.each(v,function(a,c){var f="null"!=g?g:n.sourceLanguage,h=Recite.Language.Locale.stripLanguageLocale(f),k=Recite.Language.Locale.stripLanguageLocale(b);h!=k?(D={target:Recite.Language.Locale.stripLanguageLocale(b),source:f,text:c},Recite.Api.call("translate","POST",{data:D,contentType:"application/json",success:function(c){Recite.Util.each(c,function(c,g){c=e[f][a*n.maxChunkSize+c];q(c,b,g);d.push(c)});Recite.Event.publish("Translate:complete");
Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Language",event:"translate:"+b})}})):(k=Recite.Language.Locale.stripLanguageLocale(b),k==Recite.Language.Locale.stripLanguageLocale(n.sourceLanguage)&&Recite.Language.Translate.restore(null,b),Recite.Util.each(e[g],function(a,d){q(d,b);Recite.Language.Translate.setWorkingPageLaguage(b)}),Recite.Event.publish("Translate:complete"),Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Language",event:"translate:"+b}))})}},restore:function(b,
c){c?Recite.Language.Translate.setWorkingPageLaguage(c):Recite.Language.Translate.resetWorkingPageLanguage();0<d.length&&(Recite.Debug.log("Language","Restoring source language"),Recite.Event.publish("Translate:restore_begin"),Recite.Util.each(d,function(a,b){b&&(b.nodeValue=b.originalContent);b.parentNode&&(b.parentNode.lang=c?c:null!==b.originalParentLang?b.originalParentLang:n.sourceLanguage)}),Recite.Util.each(p,function(b,d){var e=a(d);for(b=0;b<d.attributes.length;b++)for(var f=0;f<e.length;f++)e[f]===
d.attributes[b].nodeName&&(d.setAttribute(d.attributes[b].nodeName,d.originalContent[d.attributes[b].nodeName]),d.lang=c?c:null!==d.originalLang?d.originalLang:n.sourceLanguage)}),d=[],p=[],Recite.Event.publish("Translate:restore_complete"))},setWorkingPageLaguage:function(a){var b=Recite.Language.Locale.stripLanguageLocale(a);if(null!=b){if(null==m.originalLang||"undefined"==typeof m.originalLang)m.originalLang=Recite.Dom.getLanguage(m),m.originalLocale=Recite.Language.Locale.getLocalePreference(Recite.Dom.getLanguage(m));
if(null==m.originalDirection||"undefined"==typeof m.originalDirection)m.originalDirection=Recite.Dom.getLanguageDirection(m);"undefined"!=typeof m.getAttribute&&(m.setAttribute("lang",a),m.setAttribute("dir",Recite.Preferences.get("direction")));n.workingPageLanguage=b;Recite.Language.Locale.setWorkingPageLocale(a)}},getWorkingPageLanguage:function(){return Recite.Language.Locale.stripLanguageLocale(n.workingPageLanguage)},resetWorkingPageLanguage:function(){null===m.originalLang&&(m.originalLang=
n.sourceLanguage,m.originalLocale=Recite.Language.Locale.getLocalePreference(n.sourceLanguage));null!==m.originalLang&&"undefined"!==typeof m.originalLang&&m.setAttribute("lang",m.originalLang);null===m.originalDirection&&(m.originalDirection=n.sourceDirection);null!==m.originalDirection&&"undefined"!==typeof m.originalDirection&&m.setAttribute("dir",m.originalDirection);n.workingPageLanguage=n.sourceLanguage;Recite.Language.Locale.setWorkingPageLocale(Recite.Language.Locale.getLocalePreference(n.sourceLanguage))},
hasActiveWorkingPageLanguage:function(){return n.workingPageLanguage!=n.sourceLanguage?!0:!1}}}();Recite.namespace("Language.Locale");
Recite.Language.Locale=function(){var h={skipLanguageLocaleExceptions:["zh"],localePreferences:{},direction:"ltr",workingPageLocale:null};return{getLocalePreference:function(f){if(!f)return f;if(!Recite.Preferences.get("language"))for(var b in h.localePreferences)h.localePreferences.hasOwnProperty(f)&&(f=h.localePreferences[b]);return f.toLowerCase()},getLocalTextDirection:function(){return h.direction},setLocalTextDirection:function(f){h.direction=f},stripLanguageLocale:function(f){if(!f)return f;
var b=f.split("-");return-1!=h.skipLanguageLocaleExceptions.indexOf(b[0])?f:b[0]},setOptions:function(f){h=Recite.Util.merge(h,f)},getOptions:function(){return h},getWorkingPageLocale:function(){return h.workingPageLocale},setWorkingPageLocale:function(f){h.workingPageLocale=f}}}();Recite.namespace("Gui.Notification");
Recite.Gui.Notification=function(){function h(a){var b=document.createElement("div");b.innerHTML=a;b.id=q;b.content=a;b.setAttribute("role","alert");q++;var d=!1;Recite.Util.each(e,function(a,c){c.content==b.content&&(d=!0)});d||(e.push(b),document.body.appendChild(b));return b}function f(a){try{document.body.removeChild(a),e.splice(e.indexOf(a.id),1)}catch(p){}}function b(a,b){a.style.display="block";a.setAttribute("lang","en");k.timeout&&setTimeout(function(){f(a)},k.timeout);if(k.read)try{setTimeout(function(){Recite.Player.play(a.innerHTML)},
200)}catch(m){}k.localize&&setTimeout(function(){c(a)},200);Recite.DomEvent.add(a,"click",function(b,d){f(a)})}function c(b){var d=[];null==b?d=a():d.push(b);var c=null;Recite.Language.Translate.hasActiveWorkingPageLanguage()&&(c=Recite.Language.Translate.getWorkingPageLanguage());null==c&&(c=Recite.Dom.getLanguage(Recite.Sizzle("html")[0]));null!==c&&Recite.Language.Locale.stripLanguageLocale(c)!=Recite.Language.Translate.getOptions().sourceLanguage&&Recite.Util.each(d,function(a,b){"object"==typeof b&&
Recite.Language.Translate.translate(b,c)})}function a(){var a=Recite.Sizzle(".recite-notification");return 1<a.length?a:[]}var k={position:"top-right",timeout:4E3,read:!1,elementTopMgn:5,suppress:!1,localize:!0},e=[],q=0;return{show:function(a,c){k.suppress||Recite.Browser.isMobile()||(Recite.Gui.Notification.setOptions(c),a=h(a),a.className="recite-notification recite-notification-"+k.position,c=Recite.Sizzle(".recite-notification"),1<c.length&&(c=c[c.length-2],c=parseInt(c.offsetTop+c.offsetHeight+
k.elementTopMgn,10),a.style.top=c+"px"),b(a))},destroy:function(a){f(a)},setOptions:function(a){k=Recite.Util.merge(k,a)},getOptions:function(){return k},getActive:function(){return a()},localizeActive:function(){c()}}}();Recite.namespace("Gui.Modal");
Recite.Gui.Modal=function(){function h(a,b){Recite.DomEvent.add(d,"click",function(b){c();a.call()});Recite.DomEvent.add(p,"click",function(a){c();b.call()})}function f(a){var b=[];Recite.Util.each(Recite.Sizzle("#recite-modal [tabindex]"),function(a,c){b.push(c)});0<b.length&&(b[0].focus(),Recite.Key("tab",function(){if(document.activeElement==b[b.length-1])return b[0].focus(),!1}),Recite.Key("shift+tab",function(){if(document.activeElement==b[0])return b[b.length-1].focus(),!1}))}function b(){m||
(Recite.DomEvent.add(Recite.Sizzle("#recite-wrapper")[0],"click",function(a){Recite.Gui.Modal.hide()}),Recite.Key("enter",function(){null!=k&&document.activeElement.click()}),Recite.Key("esc",function(){null!=k&&p.click()}),m=!0)}function c(){if(null!=k){k.parentNode.removeChild(k);k=null;var a=Recite.Sizzle("#recite-wrapper")[0];a.setAttribute("class",a.getAttribute("class").replace(" recite-fade",""))}}function a(a){var b=[];null==a?null!=k&&b.push(k):b.push(a);if(0!=b.length){var c=null;Recite.Language.Translate.hasActiveWorkingPageLanguage()&&
(c=Recite.Language.Translate.getWorkingPageLanguage());null==c&&(c=Recite.Dom.getLanguage(Recite.Sizzle("html")[0]));null!==c&&Recite.Language.Locale.stripLanguageLocale(c)!=Recite.Language.Translate.getOptions().sourceLanguage&&Recite.Util.each(b,function(a,b){"object"==typeof b&&Recite.Language.Translate.translate(b,c)})}}var k=null,e=null,q=null,d=null,p=null,m=!1;Recite.Event.subscribe("Translate:restore_complete",a);Recite.Event.subscribe("Translate:complete",a);return{init:function(){b()},show:function(m,
g,l,x,u,z){b();c();if(null==k){var n=document.createElement("div");n.id="recite-modal";n.setAttribute("aria-modal","true");k=n;var B=document.createElement("div");B.id="recite-modal-header";n.appendChild(B);e=B;B=document.createElement("div");B.id="recite-modal-content";n.appendChild(B);q=B;B=document.createElement("div");B.id="recite-modal-buttons";n.appendChild(B);var A=document.createElement("a");A.id="recite-modal-button-ok";A.className="recite-modal-button";A.setAttribute("tabindex",9001);A.innerHTML=
"OK";B.appendChild(A);d=A;A=document.createElement("a");A.id="recite-modal-button-cancel";A.className="recite-modal-button";A.setAttribute("tabindex",9002);A.innerHTML="Cancel";B.appendChild(A);p=A;document.body.appendChild(n)}e.innerHTML=m;q.innerHTML=g;null!=l&&(d.innerHTML=l);null!=x&&(p.innerHTML=x);h(u,z);k.style.display="block";k.setAttribute("lang","en");f(k);m=Recite.Sizzle("#recite-wrapper")[0];m.setAttribute("class",m.getAttribute("class")+" recite-fade");a(k)},hide:function(){c()},localizeActive:function(){a()}}}();
Recite.namespace("Magnifier");
Recite.Magnifier=function(){var h;function f(){Recite.Preferences.get("magnifier.enabled")&&!u?Recite.Magnifier.enable():u&&!Recite.Preferences.get("magnifier.enabled")&&Recite.Magnifier.disable()}function b(){if(!n){if(z||!u)return!1;Recite.Debug.log("Recite.Magnifier","Rendering Magnifier ...");z=!0;if(r){l=document.createElement("div");l.className="magnifying_holder";l.id="magnifying_holder";x=document.createElement("div");x.className="magnifying_glass";x.id="magnifying_glass";l.appendChild(x);
var b=document.createElement("div");b.className="magnifying_handle";b.id="magnifying_handle";l.appendChild(b);document.body.appendChild(l)}b=document.createElement("div");b.className="magnifying_content";b.id="magnifying_content";b.innerHTML+=Recite.Sizzle("body")[0].innerHTML;c("magnifying_holder",b);k(Recite.Sizzle("#recite-header",b)[0],b);a("script",b);b.style.visibility="hidden";b.style.top=C+"px";b.style.left=w+"px";b.style.width=window.innerWidth+"px";b.style.height="auto";var d=window.getComputedStyle(Recite.Sizzle("body")[0],
null).getPropertyValue("padding-top");b.style.paddingTop=d;""!=Recite.Dom.getStyle(document.body,"background")&&(b.style.background=Recite.Dom.getStyle(document.body,"background"));x.appendChild(b);b.style.visibility="visible";g&&k(g,document);g=b;r&&(b=window.pageXOffset,l.style.top=window.pageYOffset+30+"px",l.style.left=b+30+"px",r=!1);z=!1}}function c(a,b){a=b.getElementsByClassName(a);Recite.Util.each(a,function(a,c){k(c,b)})}function a(a,b){a=b.getElementsByTagName(a);Recite.Util.each(a,function(a,
c){k(c,b)})}function k(a,b){try{a.parentNode.removeChild(a)}catch(F){Recite.Debug.log("Recite.Magnifier","Error "+F)}}function e(){document.onmousemove=function(a){var b=a.pageX-l.offsetWidth/2,c=-(Math.abs(a.pageY)*m.scale)+l.offsetHeight-20,d=-(Math.abs(a.pageX)*m.scale)+l.offsetWidth;l.style.top=a.pageY-l.offsetHeight/2+"px";l.style.left=b+"px";g.style.top=c+"px";g.style.left=d+"px"}}function q(){var a=document.getElementById("magnifying_holder");document.getElementById("magnifying_glass");var b=
document.getElementById("magnifying_content");Recite.DomEvent.add(b,"mousedown",function(a){var b=[];var c=Recite.Dom.getIndex(l),d=Recite.Dom.getPath(a.target);c=d.indexOf(c);--d[c];var e=Recite.Dom.getPath(g.querySelector("#recite-wrapper")),f=Recite.Dom.getPath(document.querySelector("#recite-wrapper"));--e[c];for(var h in e)-1>=f.indexOf(e[h])&&b.push(h);for(h in b)d.splice(b[0],1);b=Recite.Dom.getNode(d);a=a.target;"INPUT"==a.nodeName&&a.focus();try{Recite.Debug.log("Recite.Magnifier","simulate mousedown");
var k=p(v,{});d=a=null;for(var m in D)if(D[m].test("mousedown")){d=m;break}if(!d)throw new SyntaxError("Only HTMLEvents and MouseEvents interfaces are supported");if(document.createEvent)a=document.createEvent(d),"HTMLEvents"==d?a.initEvent("mousedown",k.bubbles,k.cancelable):a.initMouseEvent("mousedown",k.bubbles,k.cancelable,document.defaultView,k.button,k.pointerX,k.pointerY,k.pointerX,k.pointerY,k.ctrlKey,k.altKey,k.shiftKey,k.metaKey,k.button,b),b.dispatchEvent(a);else{k.clientX=k.pointerX;k.clientY=
k.pointerY;var n=document.createEventObject();a=p(n,k);b.fireEvent("onmousedown",a)}}catch(M){Recite.Debug.log("Recite.Magnifier","Error "+M)}});Recite.DomEvent.add(a,"mousedown",function(a){a.preventDefault();this.setAttribute("data-drag",!0);this.setAttribute("data-dragMouseTop",a.pageY);this.setAttribute("data-dragMouseLeft",a.pageX);this.setAttribute("data-dragOffsetTop",parseInt(document.defaultView.getComputedStyle(this,null).getPropertyValue("top")));this.setAttribute("data-dragOffsetLeft",
parseInt(document.defaultView.getComputedStyle(this,null).getPropertyValue("left")))});Recite.DomEvent.add(document,"mousemove",function(a){h=a.pageX;A=a.pageY;if("true"==l.getAttribute("data-drag")){a=parseInt(l.getAttribute("data-dragOffsetLeft"))+(h-l.getAttribute("data-dragMouseLeft"));var b=parseInt(l.getAttribute("data-dragOffsetTop"))+(A-l.getAttribute("data-dragMouseTop"));l.style.top=b+60+"px";l.style.left=a+"px";b=-(b*m.scale)-l.offsetHeight/2;a=-(a*m.scale)-l.offsetWidth/2;g.style.top=
b+"px";g.style.left=a+"px";w=a;C=b}});Recite.DomEvent.add(window,"mouseup",function(a){l.setAttribute("data-drag",!1)})}function d(){var a=!1;window.onkeydown=function(b){17==b.keyCode&&(l.style.borderColor="#FF9600",l.style.pointerEvents="none",g.style.pointerEvents="none",a=1==a?!1:!0);if(192==b.keyCode){b=h;var c=A,d=l;d.setAttribute("data-dragMouseTop",c);d.setAttribute("data-dragMouseLeft",b);d.setAttribute("data-dragOffsetTop",c);d.setAttribute("data-dragOffsetLeft",b);b=h-l.offsetWidth/2;c=
A-l.offsetHeight/2;b=parseInt(l.getAttribute("data-dragOffsetLeft"))+(b-l.getAttribute("data-dragMouseLeft"));c=parseInt(l.getAttribute("data-dragOffsetTop"))+(c-l.getAttribute("data-dragMouseTop"));l.style.top=c+"px";l.style.left=b+"px";c=-(c*m.scale)-l.offsetHeight/2;b=-(b*m.scale)-l.offsetWidth/2;g.style.top=c+"px";g.style.left=b+"px";w=b;C=c}};window.onkeyup=function(b){0==a&&17==b.keyCode&&(l.style.borderColor="#333333",l.style.pointerEvents="inherit",g.style.pointerEvents="inherit",a=!1)}}function p(a,
b){for(var c in b)a[c]=b[c];return a}var m={realtimeRender:!0,followMouse:!1,scale:2,allowHighlights:!1,cacheImages:!0},n=!1,g=!1,l=!1,x=!1,u=!1,z=!1,r=!0,B=null;var A=h=0;var D={HTMLEvents:/^(?:load|unload|abort|error|select|change|submit|reset|focus|blur|resize|scroll)$/,MouseEvents:/^(?:click|hover|dblclick|mouse(?:down|up|over|move|out))$/},v={pointerX:0,pointerY:0,button:0,ctrlKey:!1,altKey:!1,shiftKey:!1,metaKey:!1,bubbles:!0,cancelable:!0},w=100,C=100;Recite.Event.subscribe("Preferences:load",
f);Recite.Event.subscribe("Preferences:set",f);Recite.Event.subscribe("Preferences:reset",f);return{enable:function(){if(Recite.Browser.isMobile())Recite.Debug.log("Recite.Magnifier","Preventing load as feature not supported on mobile"),Recite.Gui.Notification.show("This feature is not available on your platform.",{read:!1});else if(!u){u=!0;n||(Recite.Ruler.disable(),Recite.ScreenMask.disable(),b(),m.followMouse?e():q(),1==m.realtimeRender&&(B=Recite.Event.subscribe("Recite.Dom.Observor:change",
b)),m.allowHighlights&&d(),Recite.Debug.log("Recite.Magnifier","Magnifier enabled"),Recite.Gui.Notification.show("Recite magnifier enabled"),Recite.Event.publish("Recite.Magnifier.enabled"),Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Magnifier",event:"enable"}),Recite.Stats.log("feature","magnifier",null));for(var a=[window],c=0;c<a.length;c++)Recite.DomEvent.add(a[c],"resize",b)}},disable:function(){if(u){u=!1;k(l,document);r=!0;Recite.Event.unsubscribe(B);Recite.Debug.log("Recite.Magnifier",
"Magnifier disabled");Recite.Gui.Notification.show("Recite magnifier disabled");Recite.Event.publish("Recite.Magnifier.disabled");Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Magnifier",event:"disable"});Recite.Preferences.set("magnifier.enabled",!1);for(var a=[window],c=0;c<a.length;c++)Recite.DomEvent.remove(a[c],"resize",b)}},toggle:function(){Recite.Magnifier.isEnabled()?Recite.Magnifier.disable():Recite.Magnifier.enable()},isEnabled:function(){return u},setOptions:function(a){m=Recite.Util.merge(m,
a)},disableInstance:function(){n=!0}}}();Recite.namespace("FrameUpdater");
Recite.FrameUpdater=function(){function h(a){var b=!1;a.hasOwnProperty("msgType")&&Recite.Util.each(u.validMessages,function(c,d){a.msgType==d&&(b=c)});return b}function f(a,b){if(d&&1==u.enable.post)for(var e=0;e<p.length;e++)("undefined"==typeof b||"undefined"!=typeof b&&-1==b.indexOf(p[e]))&&c(p[e],a)}function b(a){d&&1==u.enable.post&&c(window.top,a)}function c(a,b){if(d&&1==u.enable.post)try{var c=JSON.stringify(b);a.postMessage(c,"*")}catch(A){}}function a(a){if(d&&1==u.enable.listen&&"undefined"!=
typeof a.data)try{var b=JSON.parse(a.data);!1!==h(b)&&k(a)}catch(B){}}function k(a){var e=JSON.parse(a.data),k=h(e);if(0!=k&&d&&1==u.enable.listen){"setChildFrame"==k&&(p.push(a.source),c(a.source,{msgType:u.validMessages.HideControls}),Recite.Event.publish("Preferences:load",Recite.Preferences.get()));"HideControls"==k&&(Recite.Controls.disable(),Recite.Controls.disableInstanceOverlay());"PreferencesSet"==k&&e.hasOwnProperty("payload")&&Recite.Preferences.set(e.payload);"PreferencesReset"==k&&e.hasOwnProperty("payload")&&
Recite.Preferences.resetAll();"playerControlsShown"==k&&(m&&f({msgType:u.validMessages.playerControlsShown},[a.source]),Recite.PlayerControls.hide(),Recite.PlayerControls.stop());"disable"==k&&(m&&f({msgType:u.validMessages.disable},[a.source]),Recite.disable(!0));if("playNext"==k&&e.hasOwnProperty("payload"))if(e.payload.hasOwnProperty("playParent"))m&&(g=null,setTimeout(function(){Recite.PlayerControls.next(x)},400));else if(e.payload.hasOwnProperty("src")){if(e.payload.src==window.self.location.href){var n=
{msgType:u.validMessages.setActiveChildFrame};b(n);l=!0;Recite.PlayerControls.first()}}else e.payload.hasOwnProperty("playActiveChild")&&l&&(n=Recite.PlayerControls.next(),null==n&&"undefined"!=typeof n&&(n={msgType:u.validMessages.removeActiveChildFrame},b(n),l=!1,b({msgType:u.validMessages.playNext,payload:{playParent:!0,src:window.location.href}})));"playPrev"==k&&e.hasOwnProperty("payload")&&(e.payload.hasOwnProperty("playParent")?m&&(g=null,setTimeout(function(){Recite.PlayerControls.previous(x)},
400)):e.payload.hasOwnProperty("src")?e.payload.src==window.self.location.href&&(n={msgType:u.validMessages.setActiveChildFrame},b(n),l=!0,Recite.PlayerControls.last()):e.payload.hasOwnProperty("playActiveChild")&&l&&(n=Recite.PlayerControls.previous(),null==n&&"undefined"!=typeof n&&(n={msgType:u.validMessages.removeActiveChildFrame},b(n),l=!1,b({msgType:u.validMessages.playPrev,payload:{playParent:!0,src:window.location.href}}))));"setActiveChildFrame"==k&&(m?g=a.source:(g=null,l=!1));"removeActiveChildFrame"==
k&&(m&&(n={msgType:u.validMessages.removeActiveChildFrame},f(n,[a.source])),l=!1,g=null)}}function e(){var a={msgType:u.validMessages.PreferencesSet},c={msgType:u.validMessages.PreferencesReset},d={msgType:u.validMessages.playerControlsShown},e={msgType:u.validMessages.playNext},h={msgType:u.validMessages.playPrev};Recite.Event.subscribe("Preferences:set",function(){a.payload=Recite.Preferences.get();f(a)});Recite.Event.subscribe("Preferences:load",function(){a.payload=Recite.Preferences.get();f(a)});
Recite.Event.subscribe("Preferences:reset",function(){c.payload=Recite.Preferences.get();f(c)});Recite.Event.subscribe("Recite.Tooltip:show",function(){b({msgType:u.validMessages.removeActiveChildFrame});m?(f(d),g=null):(b(d),b({msgType:u.validMessages.setActiveChildFrame}),l=!0)});Recite.Event.subscribe("FrameUpdater:EnterFrame",function(a,b){b.hasOwnProperty("element")&&(b.hasOwnProperty("direction")&&"next"==b.direction?(e.payload={src:b.element.src},x=b.element,f(e)):b.hasOwnProperty("direction")&&
"prev"==b.direction?(h.payload={src:b.element.src},x=b.element,f(h)):(e.payload={src:b.element.src},x=b.element,f(e)))});m&&Recite.Event.subscribe("Recite:disable",function(a,b){f({msgType:u.validMessages.disable})})}function q(){Recite.Debug.log("FrameUpdater","Enabling");d||(window.top==window.self?m=!0:n=!0,d=1==u.enable.post||1==u.enable.listen,1==u.enable.listen&&window.addEventListener("message",a),1==u.enable.post&&e());n&&c(window.parent,{msgType:u.validMessages.setChildFrame});m&&(Recite.Util.each(window.frames,
function(a,b){}),Recite.Util.each(Recite.Sizzle("iframe"),function(a,b){Recite.DomEvent.add(b,"mouseover",function(){x=b})}))}var d=!1,p=[],m=null,n=null,g=null,l=!1,x=null,u={enabled:!1,enable:{post:!0,listen:!0},validOrigins:[window.location.origin],validDestinations:[window.location.origin],validMessages:{PreferencesSet:"Recite.PreferencesSet",PreferencesReset:"Recite.PreferencesReset",setChildFrame:"iknowittobetrue",playerControlsShown:"playerControlsShown",HideControls:"HideControls",playNext:"playNext",
playPrev:"playPrev",setActiveChildFrame:"setActiveChildFrame",removeActiveChildFrame:"removeActiveChildFrame",disable:"disable"},preferencesReloadDelay:100,parentSetDelay:1E3,maxTries:10};return{setOptions:function(a){u=Recite.Util.merge(u,a)},getOptions:function(){return u},load:function(){d||q()},disable:function(){d=!1},enabled:function(){return u.enabled},isActive:function(){return d},isParentFrame:function(){return m},isChildFrame:function(){return n},getActiveChildFrame:function(){return g},
hasActiveChildFrame:function(){return m&&null!=g?!0:!1},activeFramePlayNext:function(){f({msgType:u.validMessages.playNext,payload:{playActiveChild:!0}})},activeFramePlayPrev:function(){f({msgType:u.validMessages.playPrev,payload:{playActiveChild:!0}})}}}();
