if("undefined"===typeof Recite||!Recite)var Recite={};
Recite=function(){function g(a,c){"undefined"===typeof c&&(c=Recite);Recite.Util.each(a,function(a,b){var d=c[a];"undefined"!==typeof d&&(d.setOptions?d.setOptions(b):g(b,d))})}function e(a){var c,f={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,classname:null,button:null,wrapTag:null,mode:null};c=a||{};c=Recite.Util.merge(f,c);g(c);b=c;Recite.Debug.log("Recite","(Version "+Recite.version+") Load called with options:",a);a=Recite.Sizzle(b.enableButton);Recite.Event.publish("Recite:load");c=Recite.Storage.Cookie.load("Recite.Persist");null!==b.enableFragment&&window.location.hash===b.enableFragment&&Recite.enable();(b.autoEnable&&!1!==c||b.persist&&!0===c)&&Recite.enable();
null!==b.enableButton&&Recite.DomEvent.add(a,"click",function(){b.enableButtonToggle?d?Recite.disable():Recite.enable():Recite.enable()});Recite.Event.subscribe("Recite:ModuleEvent",function(c,a){Recite.Tracker.track(a.name,a.event)})}var d=!1,b={};return{namespace:function(){var a=arguments,c=null,f,b,d;for(f=0;f<a.length;f+=1){d=(""+a[f]).split(".");c=Recite;for(b="Recite"===d[0]?1:0;b<d.length;b+=1)c[d[b]]=c[d[b]]||{},c=c[d[b]]}return c},load:function(a){"complete"===document.readyState||"interactive"===
document.readyState?e(a):Recite.DomEvent.add(window,"load",function(){e(a)})},enable:function(){if(d)return Recite.Debug.log("Recite","Already enabled, not re-enabling."),null;b.persist&&Recite.Storage.Cookie.save("Recite.Persist",!0);if(b.enableButtonToggle){var a=Recite.Sizzle(b.buttonDeactivateContentElement);Recite.Util.each(a,function(c,a){a.innerHTML=b.buttonDeactivateContent})}Recite.AssetLoader.css(b.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.Event.subscribe("Preferences:load",function(){null!==b.defaultLanguage&&null===Recite.Preferences.get("language")&&Recite.Preferences.set("language",b.defaultLanguage);b.observeDom&&Recite.Dom.Observer.observe(document.getElementById("recite-wrapper"))});"tooltip"===b.selectionMethod?window.setTimeout(function(){if(null!==b.rootNode){var c=b.parser.parse(b.rootNode);Recite.PlayerControls.invoke(c)}},
0):"highlight"===b.selectionMethod&&(b.observeDom=!1,Recite.Selection.setOptions({playOnSelection:!0}));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");d=!0;Recite.Storage.Cookie.save("Recite.Persist",!0)},disable:function(){var a=Recite.Controls.disableOverlay();Recite.Gui.Modal.show("About to close!","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.",
"OK","Cancel",function(){Recite.Event.publish("Recite:disable");Recite.Storage.Cookie.save("Recite.Persist",!1);window.location.reload()},function(){Recite.Gui.Notification.show("Close operation canceled");Recite.Controls.reEnableOverlay(a)})},isEnabled:function(){return d},getOptions:function(a){if("undefined"===typeof a)return b;var c,f,a=a.split(".");c=b;for(f=0;f<a.length;f++)if(c=c[a[f]],"undefined"===typeof c)return null;return c},version:"3.2.21",baseUrl:"http://api.reciteme.com"}}();
null!==null&&null();Recite.namespace("Recite.Util");
Recite.Util=function(){var g=[],e=Object.prototype.toString,d=null;g["[object Boolean]"]="boolean";g["[object Number]"]="number";g["[object String]"]="string";g["[object Function]"]="function";g["[object Array]"]="array";g["[object Date]"]="date";g["[object RegExp]"]="regexp";g["[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(b){return"function"===Recite.Util.type(b)},isArray:Array.isArray||function(b){return"array"===Recite.Util.type(b)},isWindow:function(b){return b&&"object"===typeof b&&"setInterval"in b},isNumeric:function(b){return!isNaN(parseFloat(b))&&isFinite(b)},type:function(b){return null==b?String(b):g[e.call(b)]||"object"},clone:function(b){return ReciteJSON.parse(ReciteJSON.stringify(b))},
guid:function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(b){var a=16*Math.random()|0;return("x"==b?a:a&3|8).toString(16)})},each:function(b,a,c){var f,d=0,e=b.length,h=void 0===e;if(c)if(h)for(f in b){if(!1===a.apply(b[f],c))break}else for(;d<e&&!1!==a.apply(b[d++],c););else if(h)for(f in b){if(!1===a.call(b[f],f,b[f]))break}else for(;d<e&&!1!==a.call(b[d],d,b[d++]););return b},merge:function(b,a){for(var c in a)try{b[c]=a[c].constructor===Object?Recite.Util.merge(b[c],
a[c]):a[c]}catch(f){b[c]=a[c]}return b},inArray:function(b,a,c){var f;if(a){if(Array.prototype.indexOf)return Array.prototype.indexOf.call(a,b,c);f=a.length;for(c=c?0>c?Math.max(0,f+c):c:0;c<f;c++)if(c in a&&a[c]===b)return c}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(c,b){a+="&"+c+"="+encodeURIComponent(b)});return a="?"+a.substring(1)},unSetIFramePointerEvents:function(){if(null==
d){var b=Recite.Sizzle("iframe");d=[];Recite.Util.each(b,function(a,c){d.push({frame:c,state:void 0==c.style.pointerEvents?"all":c.style.pointerEvents})})}Recite.Util.each(d,function(a,c){c.frame.style.pointerEvents="none"})},reSetIFramePointerEvents:function(){null!==d&&Recite.Util.each(d,function(b,a){a.frame.style.pointerEvents=a.state})}}}();Recite.namespace("Event");
Recite.Event=function(){var g={},e=-1;return{publish:function(d,b){if(!g[d])return!1;setTimeout(function(){for(var a=g[d],c=a?a.length:0;c--;)a[c].func(d,b)},0);return!0},subscribe:function(d,b){g[d]||(g[d]=[]);var a=(++e).toString();g[d].push({token:a,func:b});return a},unsubscribe:function(d){for(var b in g)if(g[b])for(var a=0,c=g[b].length;a<c;a++)if(g[b][a].token===d)return g[b].splice(a,1),d;return!1}}}();Recite.namespace("Debug");
Recite.Debug=function(){var g={log:!1};return{setOptions:function(e){g=Recite.Util.merge(g,e)},enable:function(){g.log=!0},log:function(e){null===e&&(e="Recite.Debug");arguments[0]="["+e+"]";g.log&&window.console&&Function.apply.call(console.log,console,arguments)}}}();Recite.namespace("Recite.DomEvent");
Recite.DomEvent=function(){return{add:function(g,e,d){g=Recite.Util.isArray(g)?g:[g];Recite.Util.each(g,function(b,a){a.addEventListener?a.addEventListener(e,d,!1):a.attachEvent&&(a["e"+e+d]=d,a[e+d]=function(){var c=window.event;c.target=c.target||c.srcElement;a["e"+e+d](c)},a.attachEvent("on"+e,a[e+d]))})},remove:function(g,e,d){g=Recite.Util.isArray(g)?g:[g];Recite.Util.each(g,function(b,a){a.removeEventListener?a.removeEventListener(e,d,!1):a.detachEvent&&"undefined"!==typeof a[e+d]&&(a.detachEvent("on"+
e,a[e+d]),a[e+d]=null,a["e"+e+d]=null)})}}}();Recite.namespace("XDM");
Recite.XDM=function(){var g,e,d=1,b;return{postMessage:function(a,c,b){c&&(b=b||parent,window.postMessage?b.postMessage(a,c.replace(/([^:]+:\/\/[^\/]+).*/,"$1")):c&&(b.location=c.replace(/#.*$/,"")+"#"+ +new Date+d++ +"&"+a))},receiveMessage:function(a,c){window.postMessage?(a&&(b=function(b){if("string"===typeof c&&b.origin!==c||"[object Function]"===Object.prototype.toString.call(c)&&!1===c(b.origin))return!1;a(b)}),Recite.DomEvent.add(window,"message",b)):(g&&clearInterval(g),g=null,a&&(g=setInterval(function(){var c=
document.location.hash,b=/^#?\d+&/;c!==e&&b.test(c)&&(e=c,a({data:c.replace(b,"")}))},100)))}}}();
(function(){function g(c,a,d,f,h,e){for(var h=0,i=f.length;h<i;h++){var j=f[h];if(j){for(var g=!1,j=j[c];j;){if(j[b]===d){g=f[j.sizset];break}1===j.nodeType&&!e&&(j[b]=d,j.sizset=h);if(j.nodeName.toLowerCase()===a){g=j;break}j=j[c]}f[h]=g}}}function e(c,a,d,f,h,e){for(var h=0,j=f.length;h<j;h++){var i=f[h];if(i){for(var g=!1,i=i[c];i;){if(i[b]===d){g=f[i.sizset];break}if(1===i.nodeType)if(e||(i[b]=d,i.sizset=h),"string"!==typeof a){if(i===a){g=!0;break}}else if(0<k.filter(a,[i]).length){g=i;break}i=
i[c]}f[h]=g}}}var d=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,b="sizcache"+(Math.random()+"").replace(".",""),a=0,c=Object.prototype.toString,f=!1,i=!0,j=/\\/g,h=/\r\n/g,n=/\W/;[0,0].sort(function(){i=!1;return 0});var k=function(a,b,f,h){var f=f||[],e=b=b||document;if(1!==b.nodeType&&9!==b.nodeType)return[];if(!a||"string"!==typeof a)return f;var i,j,g,n,m,z=!0,A=k.isXML(b),B=[],p=a;do if(d.exec(""),i=d.exec(p))if(p=
i[3],B.push(i[1]),i[2]){n=i[3];break}while(i);if(1<B.length&&u.exec(a))if(2===B.length&&l.relative[B[0]])j=L(B[0]+B[1],b,h);else for(j=l.relative[B[0]]?[b]:k(B.shift(),b);B.length;)a=B.shift(),l.relative[a]&&(a+=B.shift()),j=L(a,j,h);else if(!h&&(1<B.length&&9===b.nodeType&&!A&&l.match.ID.test(B[0])&&!l.match.ID.test(B[B.length-1]))&&(i=k.find(B.shift(),b,A),b=i.expr?k.filter(i.expr,i.set)[0]:i.set[0]),b){i=h?{expr:B.pop(),set:q(h)}:k.find(B.pop(),1===B.length&&("~"===B[0]||"+"===B[0])&&b.parentNode?
b.parentNode:b,A);j=i.expr?k.filter(i.expr,i.set):i.set;for(0<B.length?g=q(j):z=!1;B.length;)i=m=B.pop(),l.relative[m]?i=B.pop():m="",null==i&&(i=b),l.relative[m](g,i,A)}else g=[];g||(g=j);g||k.error(m||a);if("[object Array]"===c.call(g))if(z)if(b&&1===b.nodeType)for(a=0;null!=g[a];a++)g[a]&&(!0===g[a]||1===g[a].nodeType&&k.contains(b,g[a]))&&f.push(j[a]);else for(a=0;null!=g[a];a++)g[a]&&1===g[a].nodeType&&f.push(j[a]);else f.push.apply(f,g);else q(g,f);n&&(k(n,e,f,h),k.uniqueSort(f));return f};
k.uniqueSort=function(a){if(w&&(f=i,a.sort(w),f))for(var c=1;c<a.length;c++)a[c]===a[c-1]&&a.splice(c--,1);return a};k.matches=function(a,c){return k(a,null,null,c)};k.matchesSelector=function(a,c){return 0<k(c,null,null,[a]).length};k.find=function(a,c,b){var f,d,h,e,i,g;if(!a)return[];d=0;for(h=l.order.length;d<h;d++)if(i=l.order[d],e=l.leftMatch[i].exec(a))if(g=e[1],e.splice(1,1),"\\"!==g.substr(g.length-1)&&(e[1]=(e[1]||"").replace(j,""),f=l.find[i](e,c,b),null!=f)){a=a.replace(l.match[i],"");
break}f||(f="undefined"!==typeof c.getElementsByTagName?c.getElementsByTagName("*"):[]);return{set:f,expr:a}};k.filter=function(a,c,b,f){for(var d,h,e,i,j,g,n,m,z=a,q=[],A=c,B=c&&c[0]&&k.isXML(c[0]);a&&c.length;){for(e in l.filter)if(null!=(d=l.leftMatch[e].exec(a))&&d[2])if(g=l.filter[e],j=d[1],h=!1,d.splice(1,1),"\\"!==j.substr(j.length-1)){A===q&&(q=[]);if(l.preFilter[e])if(d=l.preFilter[e](d,A,b,q,f,B)){if(!0===d)continue}else h=i=!0;if(d)for(n=0;null!=(j=A[n]);n++)j&&(i=g(j,d,n,A),m=f^i,b&&null!=
i?m?h=!0:A[n]=!1:m&&(q.push(j),h=!0));if(void 0!==i){b||(A=q);a=a.replace(l.match[e],"");if(!h)return[];break}}if(a===z)if(null==h)k.error(a);else break;z=a}return A};k.error=function(a){throw Error("Syntax error, unrecognized expression: "+a);};var p=k.getText=function(a){var c,b;c=a.nodeType;var f="";if(c)if(1===c||9===c||11===c){if("string"===typeof a.textContent)return a.textContent;if("string"===typeof a.innerText)return a.innerText.replace(h,"");for(a=a.firstChild;a;a=a.nextSibling)f+=p(a)}else{if(3===
c||4===c)return a.nodeValue}else for(c=0;b=a[c];c++)8!==b.nodeType&&(f+=p(b));return f},l=k.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,c){var b="string"===typeof c,f=b&&!n.test(c),b=b&&!f;f&&(c=c.toLowerCase());for(var f=0,d=a.length,h;f<d;f++)if(h=a[f]){for(;(h=h.previousSibling)&&1!==h.nodeType;);
a[f]=b||h&&h.nodeName.toLowerCase()===c?h||!1:h===c}b&&k.filter(c,a,!0)},">":function(a,c){var b,f="string"===typeof c,d=0,h=a.length;if(f&&!n.test(c))for(c=c.toLowerCase();d<h;d++){if(b=a[d])b=b.parentNode,a[d]=b.nodeName.toLowerCase()===c?b:!1}else{for(;d<h;d++)(b=a[d])&&(a[d]=f?b.parentNode:b.parentNode===c);f&&k.filter(c,a,!0)}},"":function(c,b,f){var d,h=a++,i=e;"string"===typeof b&&!n.test(b)&&(d=b=b.toLowerCase(),i=g);i("parentNode",b,h,c,d,f)},"~":function(c,b,f){var d,h=a++,i=e;"string"===
typeof b&&!n.test(b)&&(d=b=b.toLowerCase(),i=g);i("previousSibling",b,h,c,d,f)}},find:{ID:function(a,c,b){if("undefined"!==typeof c.getElementById&&!b)return(a=c.getElementById(a[1]))&&a.parentNode?[a]:[]},NAME:function(a,c){if("undefined"!==typeof c.getElementsByName){for(var b=[],f=c.getElementsByName(a[1]),d=0,h=f.length;d<h;d++)f[d].getAttribute("name")===a[1]&&b.push(f[d]);return 0===b.length?null:b}},TAG:function(a,c){if("undefined"!==typeof c.getElementsByTagName)return c.getElementsByTagName(a[1])}},
preFilter:{CLASS:function(a,c,b,f,d,h){a=" "+a[1].replace(j,"")+" ";if(h)return a;for(var h=0,e;null!=(e=c[h]);h++)e&&(d^(e.className&&0<=(" "+e.className+" ").replace(/[\t\n\r]/g," ").indexOf(a))?b||f.push(e):b&&(c[h]=!1));return!1},ID:function(a){return a[1].replace(j,"")},TAG:function(a){return a[1].replace(j,"").toLowerCase()},CHILD:function(c){if("nth"===c[1]){c[2]||k.error(c[0]);c[2]=c[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec("even"===c[2]&&"2n"||"odd"===c[2]&&"2n+1"||
!/\D/.test(c[2])&&"0n+"+c[2]||c[2]);c[2]=b[1]+(b[2]||1)-0;c[3]=b[3]-0}else c[2]&&k.error(c[0]);c[0]=a++;return c},ATTR:function(a,c,b,f,d,h){c=a[1]=a[1].replace(j,"");!h&&l.attrMap[c]&&(a[1]=l.attrMap[c]);a[4]=(a[4]||a[5]||"").replace(j,"");"~="===a[2]&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(a,c,b,f,h){if("not"===a[1])if(1<(d.exec(a[3])||"").length||/^\w/.test(a[3]))a[3]=k(a[3],null,null,c);else return a=k.filter(a[3],c,b,1^h),b||f.push.apply(f,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,c,b){return!!k(b[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var c=a.getAttribute("type"),
b=a.type;return"input"===a.nodeName.toLowerCase()&&"text"===b&&(c===b||null===c)},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 c=a.nodeName.toLowerCase();return("input"===c||"button"===c)&&"submit"===a.type},
image:function(a){return"input"===a.nodeName.toLowerCase()&&"image"===a.type},reset:function(a){var c=a.nodeName.toLowerCase();return("input"===c||"button"===c)&&"reset"===a.type},button:function(a){var c=a.nodeName.toLowerCase();return"input"===c&&"button"===a.type||"button"===c},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,c){return 0===c},last:function(a,c,b,f){return c===f.length-
1},even:function(a,c){return 0===c%2},odd:function(a,c){return 1===c%2},lt:function(a,c,b){return c<b[3]-0},gt:function(a,c,b){return c>b[3]-0},nth:function(a,c,b){return b[3]-0===c},eq:function(a,c,b){return b[3]-0===c}},filter:{PSEUDO:function(a,c,b,f){var d=c[1],h=l.filters[d];if(h)return h(a,b,c,f);if("contains"===d)return 0<=(a.textContent||a.innerText||p([a])||"").indexOf(c[3]);if("not"===d){c=c[3];b=0;for(f=c.length;b<f;b++)if(c[b]===a)return!1;return!0}k.error(d)},CHILD:function(a,c){var f,
d,h,e,i,j;f=c[1];j=a;switch(f){case "only":case "first":for(;j=j.previousSibling;)if(1===j.nodeType)return!1;if("first"===f)return!0;j=a;case "last":for(;j=j.nextSibling;)if(1===j.nodeType)return!1;return!0;case "nth":f=c[2];d=c[3];if(1===f&&0===d)return!0;h=c[0];if((e=a.parentNode)&&(e[b]!==h||!a.nodeIndex)){i=0;for(j=e.firstChild;j;j=j.nextSibling)1===j.nodeType&&(j.nodeIndex=++i);e[b]=h}j=a.nodeIndex-d;return 0===f?0===j:0===j%f&&0<=j/f}},ID:function(a,c){return 1===a.nodeType&&a.getAttribute("id")===
c},TAG:function(a,c){return"*"===c&&1===a.nodeType||!!a.nodeName&&a.nodeName.toLowerCase()===c},CLASS:function(a,c){return-1<(" "+(a.className||a.getAttribute("class"))+" ").indexOf(c)},ATTR:function(a,c){var b=c[1],b=k.attr?k.attr(a,b):l.attrHandle[b]?l.attrHandle[b](a):null!=a[b]?a[b]:a.getAttribute(b),f=b+"",d=c[2],h=c[4];return null==b?"!="===d:!d&&k.attr?null!=b:"="===d?f===h:"*="===d?0<=f.indexOf(h):"~="===d?0<=(" "+f+" ").indexOf(h):!h?f&&!1!==b:"!="===d?f!==h:"^="===d?0===f.indexOf(h):"$="===
d?f.substr(f.length-h.length)===h:"|="===d?f===h||f.substr(0,h.length+1)===h+"-":!1},POS:function(a,c,b,f){var d=l.setFilters[c[2]];if(d)return d(a,b,c,f)}}},u=l.match.POS,m=function(a,c){return"\\"+(c-0+1)},r;for(r in l.match)l.match[r]=RegExp(l.match[r].source+/(?![^\[]*\])(?![^\(]*\))/.source),l.leftMatch[r]=RegExp(/(^(?:.|\r|\n)*?)/.source+l.match[r].source.replace(/\\(\d+)/g,m));l.match.globalPOS=u;var q=function(a,c){a=Array.prototype.slice.call(a,0);return c?(c.push.apply(c,a),c):a};try{Array.prototype.slice.call(document.documentElement.childNodes,
0)[0].nodeType}catch(s){q=function(a,b){var f=0,d=b||[];if("[object Array]"===c.call(a))Array.prototype.push.apply(d,a);else if("number"===typeof a.length)for(var h=a.length;f<h;f++)d.push(a[f]);else for(;a[f];f++)d.push(a[f]);return d}}var w,t;document.documentElement.compareDocumentPosition?w=function(a,c){return a===c?(f=!0,0):!a.compareDocumentPosition||!c.compareDocumentPosition?a.compareDocumentPosition?-1:1:a.compareDocumentPosition(c)&4?-1:1}:(w=function(a,c){if(a===c)return f=!0,0;if(a.sourceIndex&&
c.sourceIndex)return a.sourceIndex-c.sourceIndex;var b,d,h=[],e=[];b=a.parentNode;d=c.parentNode;var i=b;if(b===d)return t(a,c);if(b){if(!d)return 1}else return-1;for(;i;)h.unshift(i),i=i.parentNode;for(i=d;i;)e.unshift(i),i=i.parentNode;b=h.length;d=e.length;for(i=0;i<b&&i<d;i++)if(h[i]!==e[i])return t(h[i],e[i]);return i===b?t(a,e[i],-1):t(h[i],c,1)},t=function(a,c,b){if(a===c)return b;for(a=a.nextSibling;a;){if(a===c)return-1;a=a.nextSibling}return 1});m=document.createElement("div");r="script"+
(new Date).getTime();var C=document.documentElement;m.innerHTML="<a name='"+r+"'/>";C.insertBefore(m,C.firstChild);document.getElementById(r)&&(l.find.ID=function(a,c,b){if("undefined"!==typeof c.getElementById&&!b)return(c=c.getElementById(a[1]))?c.id===a[1]||"undefined"!==typeof c.getAttributeNode&&c.getAttributeNode("id").nodeValue===a[1]?[c]:void 0:[]},l.filter.ID=function(a,c){var b="undefined"!==typeof a.getAttributeNode&&a.getAttributeNode("id");return 1===a.nodeType&&b&&b.nodeValue===c});
C.removeChild(m);C=m=null;m=document.createElement("div");m.appendChild(document.createComment(""));0<m.getElementsByTagName("*").length&&(l.find.TAG=function(a,c){var b=c.getElementsByTagName(a[1]);if("*"===a[1]){for(var f=[],d=0;b[d];d++)1===b[d].nodeType&&f.push(b[d]);b=f}return b});m.innerHTML="<a href='#'></a>";m.firstChild&&("undefined"!==typeof m.firstChild.getAttribute&&"#"!==m.firstChild.getAttribute("href"))&&(l.attrHandle.href=function(a){return a.getAttribute("href",2)});m=null;if(document.querySelectorAll){var y=
k,m=document.createElement("div");m.innerHTML="<p class='TEST'></p>";if(!(m.querySelectorAll&&0===m.querySelectorAll(".TEST").length)){var k=function(a,c,b,f){c=c||document;if(!f&&!k.isXML(c)){var d=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(a);if(d&&(1===c.nodeType||9===c.nodeType)){if(d[1])return q(c.getElementsByTagName(a),b);if(d[2]&&l.find.CLASS&&c.getElementsByClassName)return q(c.getElementsByClassName(d[2]),b)}if(9===c.nodeType){if("body"===a&&c.body)return q([c.body],b);if(d&&d[3]){var h=
c.getElementById(d[3]);if(h&&h.parentNode){if(h.id===d[3])return q([h],b)}else return q([],b)}try{return q(c.querySelectorAll(a),b)}catch(e){}}else if(1===c.nodeType&&"object"!==c.nodeName.toLowerCase()){var d=c,i=(h=c.getAttribute("id"))||"__sizzle__",j=c.parentNode,g=/^\s*[+~]/.test(a);h?i=i.replace(/'/g,"\\$&"):c.setAttribute("id",i);g&&j&&(c=c.parentNode);try{if(!g||j)return q(c.querySelectorAll("[id='"+i+"'] "+a),b)}catch(n){}finally{h||d.removeAttribute("id")}}}return y(a,c,b,f)},A;for(A in y)k[A]=
y[A];m=null}}A=document.documentElement;var B=A.matchesSelector||A.mozMatchesSelector||A.webkitMatchesSelector||A.msMatchesSelector;if(B){var z=!B.call(document.createElement("div"),"div"),v=!1;try{B.call(document.documentElement,"[test!='']:sizzle")}catch(M){v=!0}k.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!k.isXML(a))try{if(v||!l.match.PSEUDO.test(c)&&!/!=/.test(c)){var b=B.call(a,c);if(b||!z||a.document&&11!==a.document.nodeType)return b}}catch(f){}return 0<
k(c,null,null,[a]).length}}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,c,b){if("undefined"!==typeof c.getElementsByClassName&&!b)return c.getElementsByClassName(a[1])},A=null));k.contains=document.documentElement.contains?function(a,c){return a!==c&&(a.contains?
a.contains(c):!0)}:document.documentElement.compareDocumentPosition?function(a,c){return!!(a.compareDocumentPosition(c)&16)}:function(){return!1};k.isXML=function(a){return(a=(a?a.ownerDocument||a:0).documentElement)?"HTML"!==a.nodeName:!1};var L=function(a,c,b){for(var f,d=[],h="",c=c.nodeType?[c]:c;f=l.match.PSEUDO.exec(a);)h+=f[0],a=a.replace(l.match.PSEUDO,"");a=l.relative[a]?a+"*":a;f=0;for(var e=c.length;f<e;f++)k(a,c[f],d,b);return k.filter(h,d)};window.Recite.Sizzle=k})();
(function(){function g(m,q){var z,v,w,t,s,m=m?m:"",q=q||{};if("object"==typeof m&&m.hasOwnProperty("_tc_id"))return m;v=m;s=t=w=0;var J=1,H=z=!1;if("string"==typeof v)a:{v=v.replace(j,"").replace(h,"").toLowerCase();var I=!1;if(r[v])v=r[v],I=!0;else if("transparent"==v){v={r:0,g:0,b:0,a:0,format:"name"};break a}var x;v=(x=y.rgb.exec(v))?{r:x[1],g:x[2],b:x[3]}:(x=y.rgba.exec(v))?{r:x[1],g:x[2],b:x[3],a:x[4]}:(x=y.hsl.exec(v))?{h:x[1],s:x[2],l:x[3]}:(x=y.hsla.exec(v))?{h:x[1],s:x[2],l:x[3],a:x[4]}:
(x=y.hsv.exec(v))?{h:x[1],s:x[2],v:x[3]}:(x=y.hex6.exec(v))?{r:parseInt(x[1],16),g:parseInt(x[2],16),b:parseInt(x[3],16),format:I?"name":"hex"}:(x=y.hex3.exec(v))?{r:parseInt(x[1]+""+x[1],16),g:parseInt(x[2]+""+x[2],16),b:parseInt(x[3]+""+x[3],16),format:I?"name":"hex"}:!1}"object"==typeof v&&(v.hasOwnProperty("r")&&v.hasOwnProperty("g")&&v.hasOwnProperty("b")?(w=255*c(v.r,255),t=255*c(v.g,255),s=255*c(v.b,255),z=!0,H="%"===String(v.r).substr(-1)?"prgb":"rgb"):v.hasOwnProperty("h")&&v.hasOwnProperty("s")&&
v.hasOwnProperty("v")?(v.s=i(v.s),v.v=i(v.v),z=v.h,t=v.s,s=v.v,z=6*c(z,360),t=c(t,100),s=c(s,100),w=k.floor(z),x=z-w,z=s*(1-t),H=s*(1-x*t),x=s*(1-(1-x)*t),I=w%6,w=255*[s,H,z,z,x,s][I],t=255*[x,s,s,H,z,z][I],s=255*[z,z,x,s,s,H][I],z=!0,H="hsv"):v.hasOwnProperty("h")&&(v.hasOwnProperty("s")&&v.hasOwnProperty("l"))&&(v.s=i(v.s),v.l=i(v.l),w=v.h,z=v.s,s=v.l,t=function(a,c,b){0>b&&(b+=1);1<b&&(b-=1);return b<1/6?a+6*(c-a)*b:0.5>b?c:b<2/3?a+6*(c-a)*(2/3-b):a},w=c(w,360),z=c(z,100),s=c(s,100),0===z?z=s=
H=s:(H=0.5>s?s*(1+z):s+z-s*z,x=2*s-H,z=t(x,H,w+1/3),s=t(x,H,w),H=t(x,H,w-1/3)),w=255*z,t=255*s,s=255*H,z=!0,H="hsl"),v.hasOwnProperty("a")&&(J=v.a));J=a(J);v=v.format||H;w=l(255,u(w,0));t=l(255,u(t,0));s=l(255,u(s,0));var D=w,E=t,F=s,G=J,K=p(100*G)/100,J=q.format||v;1>D&&(D=p(D));1>E&&(E=p(E));1>F&&(F=p(F));return{ok:z,format:J,_tc_id:n++,alpha:G,getAlpha:function(){return G},setAlpha:function(c){G=a(c);K=p(100*G)/100},toHsv:function(){var a=d(D,E,F);return{h:360*a.h,s:a.s,v:a.v,a:G}},toHsvString:function(){var a=
d(D,E,F),c=p(360*a.h),b=p(100*a.s),a=p(100*a.v);return 1==G?"hsv("+c+", "+b+"%, "+a+"%)":"hsva("+c+", "+b+"%, "+a+"%, "+K+")"},toHsl:function(){var a=e(D,E,F);return{h:360*a.h,s:a.s,l:a.l,a:G}},toHslString:function(){var a=e(D,E,F),c=p(360*a.h),b=p(100*a.s),a=p(100*a.l);return 1==G?"hsl("+c+", "+b+"%, "+a+"%)":"hsla("+c+", "+b+"%, "+a+"%, "+K+")"},toHex:function(a){return b(D,E,F,a)},toHexString:function(a){return"#"+b(D,E,F,a)},toRgb:function(){return{r:p(D),g:p(E),b:p(F),a:G}},toRgbString:function(){return 1==
G?"rgb("+p(D)+", "+p(E)+", "+p(F)+")":"rgba("+p(D)+", "+p(E)+", "+p(F)+", "+K+")"},toPercentageRgb:function(){return{r:p(100*c(D,255))+"%",g:p(100*c(E,255))+"%",b:p(100*c(F,255))+"%",a:G}},toPercentageRgbString:function(){return 1==G?"rgb("+p(100*c(D,255))+"%, "+p(100*c(E,255))+"%, "+p(100*c(F,255))+"%)":"rgba("+p(100*c(D,255))+"%, "+p(100*c(E,255))+"%, "+p(100*c(F,255))+"%, "+K+")"},toName:function(){return 0===G?"transparent":C[b(D,E,F,!0)]||!1},toFilter:function(a){var c=b(D,E,F),d=c,h=Math.round(255*
parseFloat(G)).toString(16),e=h,i=q&&q.gradientType?"GradientType = 1, ":"";a&&(a=g(a),d=a.toHex(),e=Math.round(255*parseFloat(a.alpha)).toString(16));return"progid:DXImageTransform.Microsoft.gradient("+i+"startColorstr=#"+f(h)+c+",endColorstr=#"+f(e)+d+")"},toString:function(a){var c=!!a,a=a||this.format,b=!1,c=!c&&(1>G&&0<G)&&("hex"===a||"hex6"===a||"hex3"===a||"name"===a);"rgb"===a&&(b=this.toRgbString());"prgb"===a&&(b=this.toPercentageRgbString());if("hex"===a||"hex6"===a)b=this.toHexString();
"hex3"===a&&(b=this.toHexString(!0));"name"===a&&(b=this.toName());"hsl"===a&&(b=this.toHslString());"hsv"===a&&(b=this.toHsvString());return c?this.toRgbString():b||this.toHexString()}}}function e(a,b,f){var a=c(a,255),b=c(b,255),f=c(f,255),d=u(a,b,f),h=l(a,b,f),e,i=(d+h)/2;if(d==h)e=h=0;else{var j=d-h,h=0.5<i?j/(2-d-h):j/(d+h);switch(d){case a:e=(b-f)/j+(b<f?6:0);break;case b:e=(f-a)/j+2;break;case f:e=(a-b)/j+4}e/=6}return{h:e,s:h,l:i}}function d(a,b,f){var a=c(a,255),b=c(b,255),f=c(f,255),d=u(a,
b,f),h=l(a,b,f),e,i=d-h;if(d==h)e=0;else{switch(d){case a:e=(b-f)/i+(b<f?6:0);break;case b:e=(f-a)/i+2;break;case f:e=(a-b)/i+4}e/=6}return{h:e,s:0===d?0:i/d,v:d}}function b(a,c,b,d){a=[f(p(a).toString(16)),f(p(c).toString(16)),f(p(b).toString(16))];return d&&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 a(a){a=parseFloat(a);if(isNaN(a)||0>a||1<a)a=1;return a}function c(a,c){"string"==
typeof a&&(-1!=a.indexOf(".")&&1===parseFloat(a))&&(a="100%");var b="string"===typeof a&&-1!=a.indexOf("%"),a=l(c,u(0,parseFloat(a)));b&&(a=parseInt(a*c,10)/100);return 1E-6>k.abs(a-c)?1:a%c/parseFloat(c)}function f(a){return 1==a.length?"0"+a:""+a}function i(a){1>=a&&(a=100*a+"%");return a}var j=/^[\s,#]+/,h=/\s+$/,n=0,k=Math,p=k.round,l=k.min,u=k.max,m=k.random;g.fromRatio=function(a,c){if("object"==typeof a){var b={},f;for(f in a)a.hasOwnProperty(f)&&(b[f]="a"===f?a[f]:i(a[f]));a=b}return g(a,
c)};g.equals=function(a,c){return!a||!c?!1:g(a).toRgbString()==g(c).toRgbString()};g.random=function(){return g.fromRatio({r:m(),g:m(),b:m()})};g.desaturate=function(a,c){var c=0===c?0:c||10,b=g(a).toHsl();b.s-=c/100;b.s=l(1,u(0,b.s));return g(b)};g.saturate=function(a,c){var c=0===c?0:c||10,b=g(a).toHsl();b.s+=c/100;b.s=l(1,u(0,b.s));return g(b)};g.greyscale=function(a){return g.desaturate(a,100)};g.lighten=function(a,c){var c=0===c?0:c||10,b=g(a).toHsl();b.l+=c/100;b.l=l(1,u(0,b.l));return g(b)};
g.darken=function(a,c){var c=0===c?0:c||10,b=g(a).toHsl();b.l-=c/100;b.l=l(1,u(0,b.l));return g(b)};g.complement=function(a){a=g(a).toHsl();a.h=(a.h+180)%360;return g(a)};g.triad=function(a){var c=g(a).toHsl(),b=c.h;return[g(a),g({h:(b+120)%360,s:c.s,l:c.l}),g({h:(b+240)%360,s:c.s,l:c.l})]};g.tetrad=function(a){var c=g(a).toHsl(),b=c.h;return[g(a),g({h:(b+90)%360,s:c.s,l:c.l}),g({h:(b+180)%360,s:c.s,l:c.l}),g({h:(b+270)%360,s:c.s,l:c.l})]};g.splitcomplement=function(a){var c=g(a).toHsl(),b=c.h;return[g(a),
g({h:(b+72)%360,s:c.s,l:c.l}),g({h:(b+216)%360,s:c.s,l:c.l})]};g.analogous=function(a,c,b){var c=c||6,b=b||30,f=g(a).toHsl(),b=360/b,a=[g(a)];for(f.h=(f.h-(b*c>>1)+720)%360;--c;)f.h=(f.h+b)%360,a.push(g(f));return a};g.monochromatic=function(a,c){for(var c=c||6,b=g(a).toHsv(),f=b.h,d=b.s,b=b.v,h=[],e=1/c;c--;)h.push(g({h:f,s:d,v:b})),b=(b+e)%1;return h};g.readability=function(a,c){var b=g(a).toRgb(),f=g(c).toRgb(),d=(299*b.r+587*b.g+114*b.b)/1E3,h=(299*f.r+587*f.g+114*f.b)/1E3,b=Math.max(b.r,f.r)-
Math.min(b.r,f.r)+Math.max(b.g,f.g)-Math.min(b.g,f.g)+Math.max(b.b,f.b)-Math.min(b.b,f.b);return{brightness:Math.abs(d-h),color:b}};g.readable=function(a,c){var b=g.readability(a,c);return 125<b.brightness&&500<b.color};g.mostReadable=function(a,c){for(var b=null,f=0,d=!1,h=0;h<c.length;h++){var e=g.readability(a,c[h]),i=125<e.brightness&&500<e.color,e=3*(e.brightness/125)+e.color/500;if(i&&!d||i&&d&&e>f||!i&&!d&&e>f)d=i,f=e,b=g(c[h])}return b};var r=g.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"},q=g,s=r,w={},t;for(t in s)s.hasOwnProperty(t)&&(w[s[t]]=t);var C=q.hexNames=w,y;y={rgb:RegExp("rgb[\\s|\\(]+((?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?))[,|\\s]+((?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?))[,|\\s]+((?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?))\\s*\\)?"),rgba:RegExp("rgba[\\s|\\(]+((?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?))[,|\\s]+((?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?))[,|\\s]+((?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?))[,|\\s]+((?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?))\\s*\\)?"),
hsl:RegExp("hsl[\\s|\\(]+((?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?))[,|\\s]+((?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?))[,|\\s]+((?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?))\\s*\\)?"),hsla:RegExp("hsla[\\s|\\(]+((?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?))[,|\\s]+((?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?))[,|\\s]+((?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?))[,|\\s]+((?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?))\\s*\\)?"),hsv:RegExp("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=g:"undefined"!==typeof define&&define(function(){return g});window.Recite.Tinycolor=g})(this);
(function(g){function e(a,c){for(var b=a.length;b--;)if(a[b]===c)return b;return-1}function d(c){var f,d,i,g,k,l;f=c.keyCode;-1==e(u,f)&&u.push(f);if(93==f||224==f)f=91;if(f in n)for(i in n[f]=!0,p)p[i]==f&&(b[i]=!0);else{for(j in n)n[j]=c[m[j]];if(b.filter.call(this,c)&&f in h){l=a();for(g=0;g<h[f].length;g++)if(d=h[f][g],d.scope==l||"all"==d.scope){k=0<d.mods.length;for(i in n)if(!n[i]&&-1<e(d.mods,+i)||n[i]&&-1==e(d.mods,+i))k=!1;if((0==d.mods.length&&!n[16]&&!n[18]&&!n[17]&&!n[91]||k)&&!1===d.method(c,
d))c.preventDefault?c.preventDefault():c.returnValue=!1,c.stopPropagation&&c.stopPropagation(),c.cancelBubble&&(c.cancelBubble=!0)}}}}function b(a,b,d){var e,i;e=c(a);void 0===d&&(d=b,b="all");for(var j=0;j<e.length;j++)i=[],a=e[j].split("+"),1<a.length&&(i=f(a),a=[a[a.length-1]]),a=a[0],a=l[a]||a.toUpperCase().charCodeAt(0),a in h||(h[a]=[]),h[a].push({shortcut:e[j],scope:b,method:d,key:e[j],mods:i})}function a(){return k||"all"}function c(a){a=a.replace(/\s/g,"");a=a.split(",");""==a[a.length-1]&&
(a[a.length-2]+=",");return a}function f(a){for(var a=a.slice(0,a.length-1),c=0;c<a.length;c++)a[c]=p[a[c]];return a}function i(a,c,b){a.addEventListener?a.addEventListener(c,b,!1):a.attachEvent&&a.attachEvent("on"+c,function(){b(window.event)})}var j,h={},n={16:!1,18:!1,17:!1,91:!1},k="all",p={"\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},u=[];for(j=1;20>j;j++)l["f"+j]=111+j;var m={16:"shiftKey",18:"altKey",17:"ctrlKey",91:"metaKey"};for(j in p)b[j]=!1;i(document,"keydown",function(a){d(a)});i(document,"keyup",function(a){var a=a.keyCode,c,f=e(u,a);0<=f&&u.splice(f,1);if(93==a||224==a)a=91;if(a in n)for(c in n[a]=!1,p)p[c]==a&&(b[c]=!1)});i(window,"focus",function(){for(j in n)n[j]=
!1;for(j in p)b[j]=!1});var r=g.key;g.key=b;g.key.setScope=function(a){k=a||"all"};g.key.getScope=a;g.key.deleteScope=function(a){var c,b,f;for(c in h){b=h[c];for(f=0;f<b.length;)b[f].scope===a?b.splice(f,1):f++}};g.key.filter=function(a){a=(a.target||a.srcElement).tagName;return!("INPUT"==a||"SELECT"==a||"TEXTAREA"==a)};g.key.isPressed=function(a){"string"==typeof a&&(a=l[a]||a.toUpperCase().charCodeAt(0));return-1!=e(u,a)};g.key.getPressedKeyCodes=function(){return u.slice(0)};g.key.noConflict=
function(){var a=g.key;g.key=r;return a};g.key.unbind=function(b,d){var e,i,j=[],g,n;e=c(b);for(n=0;n<e.length;n++){i=e[n].split("+");1<i.length&&(j=f(i),b=i[i.length-1]);b=l[b]||b.toUpperCase().charCodeAt(0);void 0===d&&(d=a());if(!h[b])break;for(g in h[b]){i=h[b][g];var k;if(k=i.scope===d)a:if(i=i.mods,i.length!=j.length)k=!1;else{for(k=0;k<i.length;k++)if(i[k]!==j[k]){k=!1;break a}k=!0}k&&(h[b][g]={})}}};"undefined"!==typeof module&&(module.exports=key);window.Recite.Key=key})(this);
Recite.AssetLoader=function(g){function e(a,c){var b=g.createElement(a),f;for(f in c)c.hasOwnProperty(f)&&b.setAttribute(f,c[f]);b.setAttribute("data-recite-skip","true");return b}function d(a){var c=j[a],f,d;c&&(f=c.callback,d=c.urls,d.shift(),h=0,d.length||(f&&f.call(c.context,c.obj),j[a]=null,n[a].length&&b(a)))}function b(b,h,k,m,r){var q=function(){d(b)},s="css"===b,w=[],t,C,y,A;f||(t=navigator.userAgent,f={async:!0===g.createElement("script").async},(f.webkit=/AppleWebKit\//.test(t))||(f.ie=
/MSIE|Trident/.test(t))||(f.opera=/Opera/.test(t))||(f.gecko=/Gecko\//.test(t))||(f.unknown=!0));if(h)if(h="string"===typeof h?[h]:h.concat(),s||f.async||f.gecko||f.opera)n[b].push({urls:h,callback:k,obj:m,context:r});else{t=0;for(C=h.length;t<C;++t)n[b].push({urls:[h[t]],callback:t===C-1?k:null,obj:m,context:r})}if(!j[b]&&(A=j[b]=n[b].shift())){i||(i=g.head||g.getElementsByTagName("head")[0]);h=A.urls;t=0;for(C=h.length;t<C;++t)k=h[t],s?y=f.gecko?e("style"):e("link",{href:k,rel:"stylesheet"}):(y=
e("script",{src:k}),y.async=!1),y.className="lazyload",y.setAttribute("charset","utf-8"),f.ie&&!s&&"onreadystatechange"in y&&!("draggable"in y)?y.onreadystatechange=function(){/loaded|complete/.test(y.readyState)&&(y.onreadystatechange=null,q())}:s&&(f.gecko||f.webkit)?f.webkit?(A.urls[t]=y.href,c()):(y.innerHTML='@import "'+k+'";',a(y)):y.onload=y.onerror=q,w.push(y);t=0;for(C=w.length;t<C;++t)i.appendChild(w[t])}}function a(c){var b;try{b=!!c.sheet.cssRules}catch(f){h+=1;200>h?setTimeout(function(){a(c)},
50):b&&d("css");return}d("css")}function c(){var a=j.css,b;if(a){for(b=k.length;0<=--b;)if(k[b].href===a.urls[0]){d("css");break}h+=1;a&&(200>h?setTimeout(c,50):d("css"))}}var f,i,j={},h=0,n={css:[],js:[]},k=g.styleSheets;return{css:function(a,c,f,d){b("css",a,c,f,d)},js:function(a,c,f,d){b("js",a,c,f,d)}}}(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 g(c){var b=Recite.Util.clone(a);return Recite.Util.merge(b,c)}function e(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(d){b=a.responseText}return b}function d(a,b){var b=g(b),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);d.timeout=b.timeout;d.setRequestHeader("Content-Type",b.contentType);d.onreadystatechange=function(){if(4===d.readyState){var a=e(d);200===d.status?b.success(d,a):b.error(d,a)}};null!==b.beforeSend&&b.beforeSend(d);d.send(b.data)}function b(a,b){var d=new flensed.flXHR({autoUpdatePlayer:!1,instanceId:"recite-proxy",xmlResponseText:!1,onreadystatechange:function(a){if(4===a.readyState){var c=
e(a);200===a.status?b.success(a,c):b.error(a,c)}}});d.open(b.method,a);null!==b.beforeSend&&b.beforeSend(d);d.send(b.data)}var a={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,d){Recite.Debug.log("Recite.Ajax","Making AJAX request to: "+a);this.ajax(a,{method:"GET",data:b,success:d})},post:function(a,b,d){this.ajax(a,{method:"POST",data:b,success:d})},
ajax:function(a,f){"undefined"!==typeof f.data&&("POST"==f.method&&"object"==Recite.Util.type(f.data))&&(f.data=ReciteJSON.stringify(f.data));if(String(window.location).substr(0,Recite.baseUrl.length)==Recite.baseUrl)return d(a,f);if("withCredentials"in(window.XMLHttpRequest?new XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP")))d(a,f);else if("undefined"!==typeof window.XDomainRequest){var i=a,j=f,j=g(j),h=new XDomainRequest;"GET"===j.method&&(null!==j.data&&"undefined"!==typeof j.data)&&
(i+=Recite.Util.buildQueryString(j.data));h.onload=function(){var a=e(h);j.success(h,a)};h.onerror=function(){var a=e(h);j.error(h,a)};h.open(j.method,i);h.timeout=j.timeout;null!==j.beforeSend&&j.beforeSend(h);h.send(j.data)}else"undefined"===typeof window.flensed?Recite.AssetLoader.js(Recite.baseUrl+"/js/flxhr/flXHR.js",function(){b(f)}):b(a,f)},nativeXDomainSupported:function(){return"undefined"!==typeof(new XMLHttpRequest).withCredentials||"undefined"!==typeof window.XDomainRequest?!0:!1}}}();
Recite.namespace("Api");
Recite.Api=function(){function g(b,a){var c=d.endpoint+b,f=Recite.Util.merge({access_token:a.access_token,v:Recite.version},a.data);return c+Recite.Util.buildQueryString(f)}function e(b,a,c){var f=d.endpoint+b,f=f+Recite.Util.buildQueryString({access_token:c.access_token,v:Recite.version});Recite.Ajax.ajax(f,{method:a,data:c.data,contentType:c.contentType,success:function(a,b){c.success&&c.success(b)},error:function(d,e){Recite.Debug.log("Recite.Api","Error occured during API call to: "+f,e);if("undefined"!==
typeof e.error)if("invalid_grant"===e.error)Recite.Debug.log("Recite.Api","Requesting a new token."),Recite.Auth.clear(),Recite.Api.call(b,a,c);else{if("invalid_token"===e.error||"invalid_referrer"===e.error||"invalid_ip"===e.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();c.error&&c.error(e)}}})}var d={endpoint:Recite.baseUrl+"/api/"};return{setOptions:function(b){d=
Recite.Util.merge(d,b)},call:function(b,a,c){c.contentType=c.contentType||"application/x-www-form-urlencoded";"undefined"===typeof c.authRequired&&(c.authRequired=!0);c.authRequired?Recite.Auth.getStatus(function(d){"authorized"===d.state&&(c.access_token=d.access_token,e(b,a,c))}):e(b,a,c)},getUri:function(b,a){"undefined"===typeof a.authRequired&&(a.authRequired=!0);a.authRequired?Recite.Auth.getStatus(function(c){"authorized"===c.state&&(a.access_token=c.access_token,a.success&&a.success(g(b,a)))}):
a.success&&a.success(g(b,a))}}}();Recite.namespace("Recite.Dom");
Recite.Dom=function(){var g={word_filters:{}};return{getPosition:function(e){var d=0,b=0;if(e.offsetParent){do"BODY"!==e.tagName&&(d+=e.offsetLeft,b+=e.offsetTop);while(e=e.offsetParent)}return{left:d,top:b}},isCurrent:function(e){var d=Recite.Dom.getPosition(e),e=e.currentStyle;return 0!==d.left&&0!==d.top&&0<e.width&&0<e.height?!0:!1},getScroll:function(e){"undefined"===typeof e&&(e=window);var d=e.document,b,a;e.pageYOffset?(a=e.pageYOffset,b=e.pageXOffset):d.documentElement&&d.documentElement.scrollTop?
(a=d.documentElement.scrollTop,b=d.documentElement.scrollLeft):d.body&&(a=d.body.scrollTop,b=d.body.scrollLeft);return{x:b,y:a}},getStyle:function(e,d){var b;e.currentStyle?(d=d.replace(/(\-[a-z])/g,function(a){return a.toUpperCase().replace("-","")}),b=e.currentStyle[d]):window.getComputedStyle&&(b=document.defaultView.getComputedStyle(e,null).getPropertyValue(d));return b},getStyles:function(e){var d;e.currentStyle?d=e.currentStyle:window.getComputedStyle&&(d=document.defaultView.getComputedStyle(e,
null));return d},getText:function(e,d){var b="";if("undefined"!==typeof d)return 0===e.childNodes.length&&(b+=d.call(e)),Recite.Util.each(e.childNodes,function(a,f){b+=d.call(f)}),b.trim();var b="IMG"===e.tagName?e.getAttribute("alt"):3===e.nodeType?e.data:e.textContent||e.innerText||"",a;for(a in g.word_filters)b=b.toLowerCase().replace(a,g.word_filters[a]);return null!=b?b.trim():""},getAllWindows:function(e,d){d||(d=[]);e||(e=window);0===d.length&&d.push(e);for(var b=e.frames,a=0;a<b.length;a++)try{b[a].document.body,
d.push(b[a]),0<b[a].frames.length&&d.concat(d,Recite.Dom.getAllWindows(b[a],d))}catch(c){}return d},prepend:function(e,d){if("string"===Recite.Util.type(e)){var b=d.ownerDocument.createElement("div");b.innerHTML=e;for(var a=0;a<b.childNodes.length;a++)d.insertBefore(b.childNodes[0],d.childNodes[0])}else d.insertBefore(e,d.childNodes[0])},append:function(e,d){if("string"===Recite.Util.type(e)){var b=d.ownerDocument.createElement("div");b.innerHTML=e;for(var a=0;a<b.childNodes.length;a++)d.appendChild(b.childNodes[a])}else d.appendChild(e)},
getSelected:function(){var e="";"undefined"!==typeof window.getSelection?e=window.getSelection().toString():"undefined"!==typeof document.selection&&"Text"===document.selection.type&&(e=document.selection.createRange().text);return e.replace(/^\s+|\s+$/g,"")},isDescendant:function(e,d){for(;e;){if(e===d)return!0;e=e.parentNode}return!1},getAncestors:function(e){for(var d=null,b=[];void 0!==e&&null!==(d=e.parentNode)&&!(void 0!==d&&1!==d.nodeType);)b.push(d),e=d;return b},getWindowDimensions:function(e){var d=
e.document,b,a;if("number"===typeof e.innerWidth)b=e.innerWidth,a=e.innerHeight;else if(d.documentElement&&(d.documentElement.clientWidth||d.documentElement.clientHeight))b=d.documentElement.clientWidth,a=d.documentElement.clientHeight;else if(d.body&&(d.body.clientWidth||d.body.clientHeight))b=d.body.clientWidth,a=d.body.clientHeight;return{width:b,height:a}},getLanguage:function(e){var d=null;if(void 0===e)return d;if(1===e.nodeType&&""!==e.lang)return e.lang;var b=e.childNodes;if(void 0!==b&&(void 0!=
b.length&&0<b.length)&&(Recite.Util.each(b,function(a,b){for(;null!==b;){if(3!==b.nodeType&&void 0!==b.lang&&""!==b.lang){d=b.lang;break}b=0<b.childNodes.length?b.childNodes[0]:null}}),null!==d))return d;var e=Recite.Dom.getAncestors(e),a;for(a in e){b=e[a];if(void 0!==b&&b.lang&&0!==b.lang.length){d=b.lang;break}if(void 0!==b&&1===b.nodeType&&null!==b.getAttribute("xml:lang")&&""!==b.getAttribute("xml:lang")){d=b.getAttribute("xml:lang");break}}null===d&&(a=Recite.Sizzle('meta[http-equiv="Content-Language"]'),
0<a.length&&(d=a[0].getAttribute("content")));return null!==d&&"string"===typeof d?d.toLowerCase():null},detectLanguage:function(e,d){!e||0==e.length?void 0!=d&&d(null):(Recite.Debug.log("Recite.Dom","Auto detecting language"),Recite.Api.call("language-detect","POST",{data:{q:e},contentType:"application/json",success:function(b){Recite.Debug.log("Recite.Dom","Language detected: "+b.lang);void 0!=d&&d(null!=b.lang?b.lang.toLowerCase():null)},error:function(){void 0!=d&&d(null)}}))},getNextElement:function(e){var d=
Recite.Sizzle("recite");if("undefined"===e||null===e)return Recite.Debug.log("Recite.DOM","Current element is null - probably been removed from DOM"),d[0];for(var b=null,a=0;a<d.length;a++)if(d[a]===e||null===e||null!==b)if(b=null===e?d[0]:"undefined"!==typeof d[a+1]?d[a+1]:d[0],e=Recite.Dom.getPosition(b),0>e.left||0>e.top||0==e.top&&0==e.left)e=b;else return b;return d[0]},getPreviousElement:function(e){var d=Recite.Sizzle("recite");if("undefined"===e||null===e)return Recite.Debug.log("Recite.DOM",
"getPreviousElement return 1st ele"),d[0];for(var b=null,a=d.length;0<a;a--)if(d[a]==e||null==e||null!==b){if(null==e)b=d[0];else if("undefined"!==typeof d[a-1])b=d[a-1];else break;e=Recite.Dom.getPosition(b);if(0>e.left||0>e.top||0==e.top&&0==e.left)e=b;else return b}return d[0]},isVisible:function(e){var d=Recite.Dom.getScroll(e.ownerDocument.defaultView),b=Recite.Dom.getPosition(e);Recite.PlayerControls.getProvider().getOptions();var a=Recite.Dom.getWindowDimensions(window),e=b.top-e.offsetHeight+
200,c=b.left,f=!1;e<a.height+d.y&&(b.top>e&&0<c&&c<a.width+d.x)&&(f=!0);return f},scrollTo:function(e){var d=Recite.Dom.getPosition(e);window.scrollTo(d.left,d.top-e.offsetHeight)},getIndex:function(e){if("undefined"===typeof e||null===e)return null;for(var d=e.parentElement||e.parentNode,b=-1,a;d&&(a=d.childNodes[++b]);)if(a==e)return b;return-1},getPath:function(e){var d,b=[],a=Recite.Dom.getIndex(e),c=0;if("undefined"===typeof e||null===e)return null;for(;d=e.parentNode;){++c;if(-1>=a)break;e=
d;b.push(a);a=Recite.Dom.getIndex(d)}return b.reverse()},getNode:function(e){var d=document.documentElement,b=0,a;if("undefined"===typeof d||null===d)return null;for(b=1;b<e.length;)a=e[b],"undefined"!==typeof d&&(d=d.childNodes[a]),++b;return d},setOptions:function(e){g=Recite.Util.merge(g,e)}}}();Recite.namespace("Dom.Traverser");
Recite.Dom.Traverser=function(){return{traverse:function(g,e){for(var d=g.childNodes[0];null!==d;){var b=e(d);if(d.hasChildNodes()&&b)d=d.firstChild;else{for(;null===d.nextSibling&&d!==g;)d=d.parentNode;d=d===g?null:d.nextSibling}}}}};Recite.namespace("Recite.Dom.Observer");
Recite.Dom.Observer=function(){var g=null,e=[],d={pollTime:1500,useMutations:!0};return{setOptions:function(b){d=Recite.Util.merge(d,b)},observe:function(b){e.push(b);null===g&&(Recite.Debug.log("Recite.Dom.Observer","Setting up body length polling."),g=setInterval(function(){Recite.Util.each(e,function(a,c){var b=c.innerHTML.length;"undefined"===typeof c.prevLength&&(c.prevLength=b);c.prevLength!==b&&(b=Recite.Parser.Html.parse(c),Recite.Event.publish("Recite.Dom.Observor:change",{affectedElements:b}),
c.prevLength=c.innerHTML.length)})},d.pollTime))}}}();var ReciteJSON;ReciteJSON||(ReciteJSON={});
(function(){function g(a){return 10>a?"0"+a:a}function e(c){a.lastIndex=0;return a.test(c)?'"'+c.replace(a,function(a){var c=i[a];return"string"===typeof c?c:"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+c+'"'}function d(a,b){var i,g,l,u,m=c,r,q=b[a];q&&("object"===typeof q&&"function"===typeof q.toReciteJSON)&&(q=q.toReciteJSON(a));"function"===typeof j&&(q=j.call(b,a,q));switch(typeof q){case "string":return e(q);case "number":return isFinite(q)?String(q):"null";case "boolean":case "null":return String(q);
case "object":if(!q)return"null";c+=f;r=[];if("[object Array]"===Object.prototype.toString.apply(q)){u=q.length;for(i=0;i<u;i+=1)r[i]=d(i,q)||"null";l=0===r.length?"[]":c?"[\n"+c+r.join(",\n"+c)+"\n"+m+"]":"["+r.join(",")+"]";c=m;return l}if(j&&"object"===typeof j){u=j.length;for(i=0;i<u;i+=1)"string"===typeof j[i]&&(g=j[i],(l=d(g,q))&&r.push(e(g)+(c?": ":":")+l))}else for(g in q)Object.prototype.hasOwnProperty.call(q,g)&&(l=d(g,q))&&r.push(e(g)+(c?": ":":")+l);l=0===r.length?"{}":c?"{\n"+c+r.join(",\n"+
c)+"\n"+m+"}":"{"+r.join(",")+"}";c=m;return l}}"function"!==typeof Date.prototype.toReciteJSON&&(Date.prototype.toReciteJSON=function(){return isFinite(this.valueOf())?this.getUTCFullYear()+"-"+g(this.getUTCMonth()+1)+"-"+g(this.getUTCDate())+"T"+g(this.getUTCHours())+":"+g(this.getUTCMinutes())+":"+g(this.getUTCSeconds())+"Z":null},String.prototype.toReciteJSON=Number.prototype.toReciteJSON=Boolean.prototype.toReciteJSON=function(){return this.valueOf()});var b=/[\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,c,f,i={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},j;"function"!==typeof ReciteJSON.stringify&&(ReciteJSON.stringify=function(a,b,e){var i;f=c="";if("number"===typeof e)for(i=0;i<e;i+=1)f+=" ";else"string"===typeof e&&(f=e);if((j=b)&&"function"!==typeof b&&("object"!==typeof b||"number"!==typeof b.length))throw Error("ReciteJSON.stringify");
return d("",{"":a})});"function"!==typeof ReciteJSON.parse&&(ReciteJSON.parse=function(a,c){function d(a,b){var f,h,e=a[b];if(e&&"object"===typeof e)for(f in e)Object.prototype.hasOwnProperty.call(e,f)&&(h=d(e,f),void 0!==h?e[f]=h:delete e[f]);return c.call(a,b,e)}var f,a=String(a);b.lastIndex=0;b.test(a)&&(a=a.replace(b,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 f=eval("("+a+")"),"function"===typeof c?d({"":f},""):f;throw new SyntaxError("ReciteJSON.parse");})})();Recite.namespace("Auth");
Recite.Auth=function(){function g(a,c){"undefined"===typeof c&&(c={});var d=b.authorization_endpoint+"?response_type="+a+"&client_id="+b.client_id;null!==b.redirect_uri&&(d+="&redirect_uri="+encodeURIComponent(b.redirect_uri));null!==b.required_scope&&(d+="&scope="+b.required_scope);Recite.Util.each(c,function(a,c){d+="&"+a+"="+c});return d}var e=!1,d={state:null,access_token:null,expires:null},b={authorization_endpoint:Recite.baseUrl+"/oauth/authorize",token_endpoint:Recite.baseUrl+"/oauth/token",
client_id:"a90bda88ea701bd15b0440eee2d89915a23b96a5",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"}},a=[],c=[],f=[],i=!1,j=[];Recite.XDM.receiveMessage(function(b){Recite.Debug.log("Recite.Auth","Message received:",b);b=ReciteJSON.parse(b.data);if(null!==b&&"undefined"!==typeof b.access_token&&-1!==Recite.Util.inArray(b.state,
j)){j.splice(Recite.Util.inArray(b.state,j),1);var g=new Date;d.access_token=b.access_token;d.expires=Math.ceil(g.getTime()/1E3)+parseInt(b.expires_in,10);d.state="authorized";Recite.Event.publish("Auth:authorize",d);e&&Recite.Event.publish("Auth:reauthorize",d);e=!0;Recite.Util.each(f,function(a,c){c(d)});f=[];i=!1;"undefined"!==typeof c[b.state]&&(g=c[b.state],g.parentNode.removeChild(g),delete c[b.state]);"undefined"!==typeof a[b.state]&&(a[b.state].close(),delete a[b.state])}},Recite.baseUrl);
return{setOptions:function(a){b=Recite.Util.merge(b,a)},isAuthorized:function(){return"authorized"===d.state},clear:function(){d.state=null;d.access_token=null;d.expires=null},getStatus:function(a,b){if(!b&&this.isAuthorized())a(d);else if(f.push(a),!i){i=!0;var e=Recite.Util.guid();j.push(e);var p=g("token",{createGuest:1,display:0,state:e}),l=document.createElement("iframe");l.id=e;l.src=p;l.frameborder=0;l.width=0;l.height=0;c[e]=l;Recite.Debug.log("Recite.Auth","Adding iframe to dom");document.body.appendChild(l)}},
authPopup:function(){var d=Recite.Util.guid();j.push(d);var f=g("token",{state:d});if("iframe"===b.type){var e=document.createElement("div");e.setAttribute("class","recite_auth_iframe_wrapper");e.style.top=parseInt(b.popup.top)+"px";e.style.left="50%";e.style.marginLeft=0-parseInt(b.popup.width)/2+"px";e.style.height=Recite.Dom.getWindowDimensions(window).height/1.5;e.style.width=b.popup.width;var i=document.createElement("iframe");i.src=f;i.frameborder=0;i.width=b.popup.width;i.style.border=0;i.height=
Recite.Dom.getWindowDimensions(window).height/1.5;f=document.createElement("div");f.setAttribute("class","recite_auth_iframe_close recite-sprite-auth-close");f.setAttribute("data-recite-state",d);e.appendChild(f);e.appendChild(i);document.body.appendChild(e);Recite.DomEvent.add(i,"load",function(){Recite.DomEvent.add(Recite.Sizzle(".recite_auth_iframe_close")[0],"click",function(a){a=a.target.getAttribute("data-recite-state");c[a].parentNode.removeChild(c[a]);delete c[a]})});c[d]=e}else{var l="";
Recite.Util.each(b.popup,function(a,c){l+=a+"="+c+","});l=l.substr(0,l.length-1);e=Math.ceil(screen.width/2)-b.popup.width/2;i=Math.ceil(screen.height/2)-b.popup.height/2;l+=",left="+e+",top="+i;a[d]=window.open(f,d,l)}}}}();Recite.namespace("Storage.Cookie");
Recite.Storage.Cookie=function(){function g(e,d,b){if(b){var a=new Date;a.setTime(a.getTime()+864E5*b);b="; expires="+a.toGMTString()}else b="";document.cookie=e+"="+encodeURIComponent(d)+b+"; path=/"}return{save:function(e,d){var b=ReciteJSON.stringify(d);g(e,b)},load:function(e,d){var b;a:{b=e+"=";for(var a=document.cookie.split(";"),c=0;c<a.length;c++){for(var f=a[c];" "==f.charAt(0);)f=f.substring(1,f.length);if(0==f.indexOf(b)){b=decodeURIComponent(f.substring(b.length,f.length));break a}}b=
null}b=ReciteJSON.parse(b);d&&d(b);return b},clear:function(e){g(e,"",-1)},supported:function(){return!0}}}();Recite.namespace("Storage.LocalStorage");
Recite.Storage.LocalStorage=function(){return{save:function(g,e){_supported()&&window.localStorage.setItem(g,e)},load:function(g,e){if(_supported()){var d=window.localStorage.getItem(g);"undefined"!==typeof e&&e(d);return d}return null},clear:function(g){_supported()&&window.localStorage.removeItem(g)},supported:function(){try{return"localStorage"in window&&null!==window.localStorage}catch(g){return!1}}}}();Recite.namespace("Storage.Api");
Recite.Storage.Api=function(){var g=["Recite.Preferences"];return{save:function(e,d){if(!e in g)throw{name:"InvalidNamespace",message:"The provided namespace is invalid."};"Recite.Preferences"===e?Recite.Api.call("preferences","POST",{data:d,contentType:"application/json",success:function(){Recite.Debug.log("Recite.Storage.Api","Preferences Saved.")}}):Recite.Storage.Cookie.save(e,d)},load:function(e,d){!e in g||("Recite.Preferences"===e?Recite.Api.call("preferences","GET",{success:d,error:d}):Recite.Storage.Cookie.load(e,
d))},clear:function(){},supported:function(){return!0}}}();Recite.namespace("Preferences");
Recite.Preferences=function(){var g={storageEngine:Recite.Storage.Api,autoSave:!0},e={style:{backgroundColor:null,font:{color:null,face:null,size:null},link:{color:null},marginSize:null,ruler:{enabled:!1,color:null},screenMask:{enabled:!1,color:null},lineHeight:null,charSpacing:null},dictionary:{enabled:!1},player:{autoplay:!0,continuePlay:!1},textMode:{enabled:!1},playerControls:{enabled:!0},language:null,voices:{en:"Serena"},magnifier:{enabled:!1}},d=Recite.Util.clone(e);Recite.Event.subscribe("Auth:reauthorize",
function(){g.storageEngine===Recite.Storage.Api&&Recite.Preferences.load()});return{setOptions:function(b){var a=!1;Recite.Util.each(b,function(c){"storageEngine"===c&&(a=!0)});g=Recite.Util.merge(g,b);a&&Recite.Preferences.load()},save:function(){Recite.Debug.log("Recite.Preferences","Saving preferences.");g.storageEngine.save("Recite.Preferences",e);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.");g.storageEngine.load("Recite.Preferences",function(b){if(null!==b){var a=Recite.Util.clone(d);Recite.Debug.log("Recite.Preferences","Found user preferences");e=Recite.Util.merge(a,b)}Recite.Event.publish("Preferences:load",b)})},get:function(b){if("undefined"===typeof b)return e;var a,c,b=b.split(".");a=e;for(c=0;c<b.length;c++)if(a=a[b[c]],"undefined"===typeof a)return null;return a},set:function(b,a){var c={};"object"===Recite.Util.type(b)?c=b:c[b]=a;("player.autoplay"==
b||"playerControls.enabled"==b||"player.continuePlay"==b)&&Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Preferences",event:b+": "+a});Recite.Util.each(c,function(a,c){var b,d,g;b=a.split(".");d=e;for(g=0;g<b.length-1;g++)if(d=d[b[g]],"undefined"===typeof d)return null;d[b[g]]=c});Recite.Event.publish("Preferences:set",c);g.autoSave&&Recite.Preferences.save();return null},reset:function(b){Recite.Debug.log("Recite.Preferences","Reset."+b);var a,c,f,i;a=b.split(".");c=e;i=d;for(f=0;f<a.length-
1;f++)c=c[a[f]],i=i[a[f]];var j=i[a[f]];"object"===Recite.Util.type(j)&&(j=Recite.Util.clone(j));c[a[f]]=j;Recite.Event.publish("Preferences:reset",{key:b,value:i});g.autoSave&&Recite.Preferences.save()},resetAll:function(){Recite.Debug.log("Recite.Preferences","ResetAll.");Recite.Event.publish("Preferences:reset");var b=g.autoSave;g.autoSave=!1;Recite.Util.each(d,function(a){Recite.Preferences.reset(a)});g.autoSave=b;g.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(){return{invoke:function(g){g=Recite.Util.isArray(g)?g:[g];Recite.Util.each(g,function(e,d){var b=d.ownerDocument?d.ownerDocument:document;d.setAttribute("class","recite-ui-toggle");b=b.createElement("div");b.setAttribute("class","recite-ui-toggle-slider");b.setAttribute("data-recite-tabbable","");d.appendChild(b);Object.defineProperty?Object.defineProperty(d,"checked",{get:function(){return this._checked},set:function(a){(this._checked=a)?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"):(a=document.createEvent("Event"),a.initEvent("change",!0,!0),this.dispatchEvent(a))}}):Recite.Debug.log("Recite.UI.Toggle","defineProperty not found");d.checked=!0;Recite.DomEvent.add(d.childNodes[0],"click",function(a){a=a.target.parentNode;a.checked=!a.checked})})}}}();Recite.namespace("UI.Dropdown");
Recite.UI.Dropdown=function(){function g(b,a){if(!(1!==b.nodeType&&3!==b.nodeType)){var c=b.getAttribute("class")||"";for(b.setAttribute("class",c.replace(" recite-active",""));-1!==(c=Recite.Util.inArray(b,d[a]));)d[a].splice(c,1);c=Recite.Sizzle(".recite-dropdown-invoke, .recite-dropdown-invoke-active, .recite-dropdown-invoke .recite-button",document);Recite.Util.each(c,function(a,c){c.setAttribute("class",c.getAttribute("class").replace("-active",""))});Recite.Event.publish("DropDown:menuHidden",
b)}}function e(){for(var b in d)for(var a in d[b])g(d[b][a],b)}var d={};return{loaded:function(){return!1},invoke:function(b){var a=Recite.Sizzle("#recite-wrapper")[0];Recite.DomEvent.add(a,"touchstart",e);Recite.DomEvent.add(a,"click",e);b=Recite.Util.isArray(b)?b:[b];Recite.Util.each(b,function(a,b){Recite.DomEvent.add(b,"click",function(a){var c=a.target,b=Recite.Sizzle(c.getAttribute("data-target"))[0],f=c.getAttribute("data-group")||"default";if("undefined"!==typeof b){Recite.DomEvent.add(b,
"click",function(a){"undefined"!==typeof a.stopPropagation?a.stopPropagation():a.cancelBubble=!0});if(/recite-active/g.test(b.getAttribute("class")))g(b,f),c.setAttribute("class",c.getAttribute("class").replace("-active",""));else{var e=f,e=e||"default";"undefined"===typeof d[e]&&(d[e]=[]);f=b.getAttribute("class")||"";b.setAttribute("class",f+" recite-active");var f=Recite.Sizzle(".recite-controls")[0],p=Recite.Dom.getPosition(c);b.style.left=p.left-f.scrollLeft+"px";d[e].push(b);"default"!==e&&
Recite.Util.each(d[e],function(a,c){"undefined"!==typeof c&&c!==b&&g(c,e)});Recite.Event.publish("DropDown:menuShown",b);c.setAttribute("class",c.getAttribute("class")+"-active")}"undefined"!==typeof a.stopPropagation?a.stopPropagation():a.cancelBubble=!0}})})},hideGroup:function(b){var b=b||null,a;for(a in d)null!==b&&b!==a||Recite.Util.each(d[a],function(a,b){g(b)})}}}();Recite.namespace("UI.ColorPicker");
Recite.UI.ColorPicker=function(){function g(a){var c=a.clientY-(m+n.offsetTop),c=255<c?255:c,b=Math.abs(360*(c-0)/255+0-360);k.style.top=c+"px";c=Recite.Tinycolor("hsl("+Math.ceil(b)+", 100%, 50%)");p.style.backgroundColor=c.toRgbString();c=i.getColor().toHsv();c.h=Math.ceil(b);i.setColor(c,a)}function e(a){var c=a.clientY-(m+p.offsetTop),b=a.clientX-(r+p.offsetLeft),c=252<c?252:c,b=252<b?252:b,c=3>c?3:c,b=3>b?3:b,d=i.getColor().toHsv();d.v=Math.ceil(100*(Math.abs(c-255)/255));d.s=Math.ceil(100*(b/
255));i.setColor(d,a);u.style.top=c+q.selectorAdjust.top+"px";u.style.left=b+q.selectorAdjust.left+"px"}function d(a){var c=100*(Math.abs(a-360)/360);k.style.top=c+"%";a=Recite.Tinycolor("hsl("+Math.ceil(a)+", 100%, 50%)");p.style.backgroundColor=a.toRgbString()}function b(a){var c=parseInt(Recite.Dom.getStyle(p,"width")),a=Math.ceil(c/100*100*a);u.style.left=a+q.selectorAdjust.left+"px"}function a(a){var a=Math.abs(100*a-100),c=parseInt(Recite.Dom.getStyle(p,"height")),a=Math.ceil(c/100*a);u.style.top=
a+q.selectorAdjust.top+"px"}function c(){Recite.UI.ColorPicker.hide()}var f=!1,i=null,j=!1,h=null,n=null,k=null,p=null,l=null,u=null,m=0,r=0,q={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){q=Recite.Util.merge(q,a)},init:function(){Recite.DomEvent.add(document.body,"mousedown",function(){f=!0});Recite.DomEvent.add(document.body,"mouseup",function(){f=!1});Recite.DomEvent.add(document.body,"click",c);Recite.Dom.append(q.markup,document.body);h=Recite.Sizzle("#recite-ui-colorpicker")[0];l=Recite.Sizzle(".recite-colorbox-close")[0];p=Recite.Sizzle(".recite-colorbox")[0];u=Recite.Sizzle(".recite-colorselector")[0];n=Recite.Sizzle(".recite-huebox")[0];k=Recite.Sizzle(".recite-hueslider")[0];
Recite.DomEvent.add(h,"click",function(a){"undefined"!==typeof a.stopPropagation?a.stopPropagation():a.cancelBubble=!0});j=!0;Recite.DomEvent.add(p,"mousedown",function(a){e(a)});Recite.DomEvent.add(p,"mouseup",function(a){e(a)});Recite.DomEvent.add(p,"mousemove",function(a){f&&e(a)});Recite.DomEvent.add(n,"mousedown",function(a){g(a)});Recite.DomEvent.add(n,"mouseup",function(a){g(a)});Recite.DomEvent.add(n,"mousemove",function(a){f&&g(a)});Recite.DomEvent.add(l,"click",function(){h.style.display=
"none"})},invoke:function(c,f){f=f||{};c=Recite.Util.isArray(c)?c:[c];j||this.init();Recite.Util.each(c,function(c,e){var g="INPUT"===e.tagName?"focus":"click";e.colorPicker={};e.setColor=function(c,f,e,h){var g=void 0==f||"mouseup"==f.type;if(g||!Recite.Tinycolor.equals(c,this.getColor()))e=!1===e?!1:!0,h=!1===h?!1:!0,c=Recite.Tinycolor(c),c.ok&&(this.colorPicker.color=c,"INPUT"===this.tagName?e&&(this.value=this.colorPicker.color.toHexString()):this.innerText=this.colorPicker.color.toHexString(),
"undefined"!==typeof this.colorPicker.callback&&(h||g)&&this.colorPicker.callback(i,c,f),i===this&&(f=this.colorPicker.color.toHsv(),d(f.h),b(f.s),a(f.v)))};e.getColor=function(){return this.colorPicker.color};var j=Recite.Tinycolor(e.style.backgroundColor);j.ok?e.setColor(j):e.setColor(Recite.Tinycolor("#000"));Recite.DomEvent.add(e,g,function(a){Recite.UI.ColorPicker.show();i=a.target;var c=Recite.Dom.getPosition(i),b=Recite.Dom.getStyle(i,"width"),d=Recite.Sizzle("#recite-colors-advanced")[0],
f=parseInt(Recite.Dom.getPosition(d).top),d=parseInt(Recite.Dom.getStyle(d,"height")),f=f+d+50,d=parseInt(Recite.Dom.getStyle(h,"height"));m=c.top;m+d>f&&(m=f-d);r=parseInt(c.left)+parseInt(b);h.style.top=m+"px";h.style.left=r+"px";Recite.UI.ColorPicker.invalidate();"undefined"!==typeof a.stopPropagation?a.stopPropagation():a.cancelBubble=!0});"undefined"!==typeof f.callback&&(e.colorPicker.callback=f.callback);"INPUT"===e.tagName&&Recite.DomEvent.add(e,"keyup",function(a){this.setColor(a.target.value,
a,!1,!0);"undefined"!==typeof a.stopPropagation?a.stopPropagation():a.cancelBubble=!0})})},show:function(){h.style.display="block"},hide:function(){h.style.display="none"},invalidate:function(){var c=i.colorPicker.color.toHsv();d(c.h);b(c.s);a(c.v)}}}();Recite.namespace("UI.AdvancedColors");
Recite.UI.AdvancedColors=function(){function g(a,b,d){var g=a.getAttribute("data-key"),h=b.toRgbString();e(a,b);a=Recite.Preferences.get(g);if(h!=a&&void 0!=d&&("mouseup"==d.type||"blur"==d.type))Recite.Debug.log("Recite.UI.AdvancedColors"," set "+g+" to "+h),Recite.Preferences.set(g,h)}function e(a,b){var d=null!=b?b.toRgbString():"transparent";a.parentNode.style.borderColor=d;switch(a.getAttribute("data-key")){case "style.backgroundColor":var e=Recite.Sizzle("#advanced_colors_background,#advanced_colors_text,#advanced_colors_links");
Recite.Util.each(e,function(a,c){c.style.backgroundColor=d});break;case "style.font.color":e=Recite.Sizzle("#advanced_colors_background,#advanced_colors_text,#advanced_colors_ruler,#advanced_colors_mask");Recite.Util.each(e,function(a,c){c.style.color=d});break;case "style.link.color":e=Recite.Sizzle("#advanced_colors_links");Recite.Util.each(e,function(a,c){c.style.color=d});break;case "style.screenMask.color":case "style.ruler.color":a.style.backgroundColor=d}a.value=null!=b?b.toHexString():""}
function d(c,b){if(void 0===c||"style"==c||"Preferences:reset"==c&&void 0!=b&&"style"==b.key||"Preferences:set"==c||"Preferences:load"==c)Recite.Debug.log("AdvancedColors","Update Color Pickers"),Recite.Util.each(a,function(a,c){var b=Recite.Preferences.get(a);void 0!=b&&"null"!=b&&""!=b.trim()?(b=Recite.Tinycolor(b),c.value!=b.toHexString()&&e(c,b)):e(c,null)})}var b={enabled:!0},a={};return{setOptions:function(a){Recite.Debug.log("UI.AdvancedColors",a);b=Recite.Util.merge(b,a)},invoke:function(c,
f){Recite.Debug.log("UI.AdvancedColors","invoke "+b.enabled);if(b.enabled){var e=Recite.Sizzle(c,f);Recite.Util.each(e,function(c,b){var d=b.getAttribute("data-key");a[d]=b});Recite.UI.ColorPicker.invoke(e,{callback:function(a,c,b){g(a,c,b)}});Recite.Util.each(e,function(a,c){Recite.DomEvent.add(c,"blur",function(a){var b=Recite.Tinycolor(c.value);g(c,b,a)})});Recite.Event.subscribe("Preferences:load",d);Recite.Event.subscribe("Preferences:reset",d);Recite.Event.subscribe("Preferences:set",d);Recite.Event.subscribe("DropDown:menuHidden",
function(){Recite.UI.ColorPicker.hide()})}else e=Recite.Sizzle("#recite-themes-advanced")[0],e.parentNode.removeChild(e)}}}();Recite.namespace("Controls");
Recite.Controls=function(){function g(){var d=Recite.Dom.getLanguage(Recite.Sizzle("html")[0]);Recite.Util.each(e.modules,function(b,a){null!==d&&"undefined"!=typeof a.localize&&a.localize(d)})}var e={enabled:!0,url:Recite.baseUrl+"/assets/"+Recite.version+"/html/header.htm",modules:[]};Recite.Event.subscribe("Translate:restore_complete",function(){g()});return{setOptions:function(d){Recite.Debug.log("Recite.Controls","Setting options");e=Recite.Util.merge(e,d);Recite.Controls.Mobile.setOptions(d.Mobile);
Recite.Controls.Core.setOptions(d.Core);Recite.Controls.Desktop.setOptions(d.Desktop)},load:function(d){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,a){Recite.Debug.log("Recite.Controls","Got controls content");var c=document.createElement("div");c.innerHTML=a;var f=c.childNodes[0],c=Recite.Sizzle("body",
d)[0];Recite.Dom.prepend(f,c);Recite.Browser.isMobile()&&(Recite.Util.each(Recite.Sizzle(".recite-sprite-button-magnifier"),function(a,c){c.style.display="none"}),Recite.Util.each(Recite.Sizzle(".recite-sprite-button-ruler"),function(a,c){c.style.display="none"}));Recite.Util.each(e.modules,function(a,c){c.init();c.invoke(f)});g();Recite.Debug.log("Recite.Controls","Controls loaded");Recite.Controls.loaded=!0;Recite.Event.publish("Controls:loaded")}))},disableOverlay:function(){var d=0;Recite.Magnifier.isEnabled()&&
(d=1,Recite.Magnifier.disable());Recite.Ruler.isEnabled()&&(d=2,Recite.Ruler.disable());Recite.ScreenMask.isEnabled()&&(d=3,Recite.ScreenMask.disable());return d},reEnableOverlay:function(d){switch(d){case 1:Recite.Magnifier.enable();break;case 2:Recite.Ruler.enable();break;case 3:Recite.ScreenMask.enable()}},loaded:!1}}();Recite.namespace("Controls.Core");
Recite.Controls.Core=function(){function g(){b();Recite.Util.each(Recite.Sizzle(".recite-ui-toggle",document),function(a,c){var b=c.getAttribute("data-preference");"undefined"!==Recite.Preferences.get(b)&&(Recite.Preferences.get(b)?c.setAttribute("class",c.getAttribute("class").replace("recite-ui-toggle-active","")+" recite-ui-toggle-active"):c.setAttribute("class",c.getAttribute("class").replace("recite-ui-toggle-active","")))});var a=Recite.Preferences.get("voices");("undefined"!=typeof a.en&&null!=
a.en||"undefined"!=typeof a["en-gb"]&&null!=a["en-gb"])&&Recite.Util.each(Recite.Sizzle(".recite-voice",document),function(c,b){var d=b.getAttribute("data-value");b.setAttribute("class",b.getAttribute("class").replace("active",""));-1!==d.indexOf(a.en)&&b.setAttribute("class",b.getAttribute("class")+" active");b})}function e(){Recite.Api.call("user","GET",{success:function(a){i.user=a;b()}})}function d(a){if("undefined"===typeof a)return i;var c,b,a=a.split(".");c=i;for(b=0;b<a.length;b++)if(c=c[a[b]],
"undefined"===typeof c)return null;return c}function b(){Recite.Util.each(f,function(a,b){if("undefined"!==typeof b.text){var f=b.text,e;c.tagPattern.lastIndex=0;for(var i=f;null!==(e=c.tagPattern.exec(f));)var g=d(e[1])||"",i=i.replace(e[0],g);b.node.nodeValue=i}"undefined"!==typeof b.attributes&&Recite.Util.each(b.attributes,function(a,f){var e;c.tagPattern.lastIndex=0;for(var i=f.value;null!==(e=c.tagPattern.exec(f.value));){var g=d(e[1]);"undefined"===typeof g&&(g=null);i=i.replace(e[0],g)}b.node.setAttribute(f.name,
i)})})}function a(a,b){var d=b.target?b.target:b.srcElement;Recite.Debug.log("event",b);var f=d.getAttribute("data-key").split(" "),e=d.getAttribute("data-value").split(" ");if(f.length!==e.length)Recite.Debug.log("Recite.Controls.Core","Warning: Number of \n                keys does not match number of values.",d);else{for(var d={},i=0;i<f.length;i++){var g=f[i],m=("-"===e[i].charAt(0)?"-":"")+e[i].replace(/-/g," ");"toggle"===m&&(m=!Recite.Preferences.get(g));if(/\+|\-/.test(m[0])){var r="+"===
m[0],q=parseInt(m.replace(/[^0-9]/g,""),10),s=Recite.Preferences.get(g);if(null===s)a:if("undefined"===typeof g)m=100;else{for(var w=s=m=void 0,m=g.split("."),s=c.defaults,w=0;w<m.length;w++)if(s=s[m[w]],"undefined"===typeof s){m=100;break a}m=s}else m=s;var s=m,m=r?s+q:s-q,w=g.replace("style.","").split("."),t="";Recite.Util.each(w,function(a,c){t+=c.charAt(0).toUpperCase()+c.slice(1)});var w=c.hasOwnProperty("max"+t+"Percentage")?c["max"+t+"Percentage"]:c.hasOwnProperty("max"+t)?c["max"+t]:c.defaultMax,
C=c.hasOwnProperty("min"+t+"Percentage")?c["min"+t+"Percentage"]:c.hasOwnProperty("min"+t)?c["min"+t]:c.defaultMin;m>w&&(m=w);m<C&&(m=C);"style.font.size"==g&&(w=Recite.Preferences.get("style.zoom"),w=null===w?100:w,r=r?w+q:w-q,r>c.maxFontSizePercentage&&(r=c.maxFontSizePercentage),r<c.minFontSizePercentage&&(r=c.minFontSizePercentage),s>=c.zoomThreshold&&100<r?(d["style.font.size"]=c.zoomThreshold,g="style.zoom",m=r):100!=w&&(d["style.zoom"]=100));if(0===m.length||"null"===m)m=null}d[g]=m}Recite.Preferences.set(d)}}
var c={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}}},f=[],i={links:{logout:Recite.baseUrl+"/user/logout"},preferences:null};return{setOptions:function(a){c=Recite.Util.merge(c,a)},init:function(){Recite.Debug.log("Recite.Controls.Core","Core controls invoked");Recite.Event.subscribe("Preferences:load",g);Recite.Event.subscribe("Preferences:set",
g);Recite.Event.subscribe("Preferences:reset",g);Recite.Event.subscribe("Auth:reauthorize",e);Recite.Event.subscribe("Controls:affect",a)},invoke:function(a){for(var b=a;null!==b;){if(3===b.nodeType&&0<b.nodeValue.trim().length){var i=b.nodeValue;if(c.tagPattern.test(i)){var g;c.tagPattern.lastIndex=0;for(var p=i;null!==(g=c.tagPattern.exec(i));)var l=d(g[1])||"",p=p.replace(g[0],l);b.nodeValue=p;f.push({node:b,text:i})}}if(1===b.nodeType){var u=[];Recite.Util.each(b.attributes,function(a,b){var f=
b.value;if(c.tagPattern.test(f)){var e;c.tagPattern.lastIndex=0;for(u.push({name:b.name,value:b.value});null!==(e=c.tagPattern.exec(f));)f=d(e[1]),"undefined"===typeof f&&(f=null),b.value=b.value.replace(e[0],f)}});0<u.length&&f.push({node:b,attributes:u})}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,c){Recite.UI.Toggle.invoke(c);Recite.DomEvent.add(c,"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,c){var b=c.getAttribute("data-type");Recite.UI.Slider.invoke(c,function(a){Recite.Event.publish("Slider:"+b,a)})});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()});Recite.DomEvent.add(Recite.Sizzle(".recite-language-set",a),"click",function(a){var c=(a.currentTarget?a.currentTarget:a.srcElement).getAttribute("data-language");"default"===c?(Recite.Language.Translate.restore(),
Recite.Preferences.set("language",null)):Recite.Preferences.set("language",c);Recite.Util.each(Recite.Sizzle(".recite-language-set"),function(a,b){b.getAttribute("data-language")===c?b.setAttribute("class",b.getAttribute("class")+" recite-active"):b.setAttribute("class",b.getAttribute("class").replace(" recite-active",""))})});e()}}}();Recite.namespace("Controls.Desktop");
Recite.Controls.Desktop=function(){function g(a,c){if("play"===c||"stopped"===a.getAttribute("data-status")&&"undefined"===c)return a.setAttribute("class",a.getAttribute("class").replace("recite-sprite-button-play","recite-sprite-button-stop")),a.setAttribute("data-status","playing"),"playing";if("stop"===c||"playing"===a.getAttribute("data-status")&&"undefined"===c)return a.setAttribute("class",a.getAttribute("class").replace("recite-sprite-button-stop","recite-sprite-button-play")),a.setAttribute("data-status",
"stopped"),"stopped"}function e(b){c.tabEnabled&&(null==a&&(a=c.tabIndexStartValue),b=Recite.Sizzle("[data-recite-tabbable]",b),Recite.Util.each(b,function(c,b){if("undefined"!=typeof b.getAttribute("data-tabbable-offset"))var d=parseInt(b.getAttribute("data-tabbable-offset"));if(null==b.getAttribute("tabindex")){var f=a;isNaN(d)||(f+=d);b.setAttribute("tabindex",f);a++;-1<(" "+b.className+" ").replace(/[\n\t]/g," ").indexOf(" recite-dropdown-invoke ")&&(d=Recite.Sizzle(b.getAttribute("data-target"))[0],
e(d));b.onfocus=function(a){var c="undefined"!=typeof a.target?a.target:a.srcElement;Recite.Util.each(Recite.Sizzle(".recite-dropdown-invoke-active"),function(a,c){var b=Recite.Sizzle(c.getAttribute("data-target"))[0];Recite.Dom.isDescendant(document.activeElement,b)||c.click()});Recite.Util.each(Recite.Sizzle(".recite-dropdown"),function(a,b){if(Recite.Dom.isDescendant(c,b)){var d=Recite.Sizzle("[data-target='#"+b.getAttribute("id")+"']")[0];if("undefined"!=d&&-1==(" "+d.className+" ").replace(/[\n\t]/g,
" ").indexOf(" recite-dropdown-invoke-active ")){var f=parseInt(d.getAttribute("tabindex")),e=0;Recite.Util.each(Recite.Sizzle(".recite-button-primary"),function(a,c){var b=parseInt(c.getAttribute("tabindex"));if(b>f&&(0==e||b<e))e=b});Recite.Sizzle("[tabindex="+e+"]")[0].focus()}}})}}}))}function d(){0<c.disabledButtons.length&&Recite.Util.each(c.disabledButtons,function(a,c){if(b.hasOwnProperty(c)){var d=b[c];if(d.hasOwnProperty("buttonClass")){var e=Recite.Sizzle(d.buttonClass);Recite.Util.each(e,
function(a,c){c.style.display="none"})}d.hasOwnProperty("module")&&(Recite.hasOwnProperty(d.module)&&"function"==typeof Recite[d.module].disable&&"function"==typeof Recite[d.module].isEnabled&&Recite[d.module].isEnabled())&&(Recite[d.module].disable(),Recite.Debug.log("Recite.Controls.Desktop","Disable button : "+d.module))}})}var b={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"},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"}},a=null,c={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:"Trebuchet",font:"Trebuchet"},{name:"Tiresias",font:"Tiresias"},{name:"Open-Dyslexic",font:"Open Dyslexic"}],swatches:[{backgroundColor:null,color:null,linkColor:null,rulerColor:"",maskColor:""},{backgroundColor:"#000",color:"#fff",linkColor:"#C00",rulerColor:"#fff",maskColor:"#fff"},
{backgroundColor:"#000",color:"#FCED20",linkColor:"#C00",rulerColor:"#FCED20",maskColor:"#FCED20"},{backgroundColor:"#343A3F",color:"#CACFD3",linkColor:"#C00",rulerColor:"#CACFD3",maskColor:"#CACFD3"},{backgroundColor:"#CACFD3",color:"#343A3F",linkColor:"#C00",rulerColor:"#343A3F",maskColor:"#343A3F"},{backgroundColor:"#F05924",color:"#FFF",linkColor:"#00C"},{backgroundColor:"#37B64B",color:"#fff",linkColor:"#2fc2ef"},{backgroundColor:"#0201FF",color:"#fff",linkColor:"#9c0001"},{backgroundColor:"#0000FE",
color:"#FCED20",linkColor:"#2fc2ef",rulerColor:"#FCED20",maskColor:"#FCED20"},{backgroundColor:"#fff",color:"#C3272A",linkColor:"#2fc2ef",rulerColor:"#C3272A",maskColor:"#C3272A"},{backgroundColor:"#fff",color:"#F05924",linkColor:"#2fc2ef",rulerColor:"#F05924",maskColor:"#F05924"},{backgroundColor:"#fff",color:"#37B64B",linkColor:"#C00",rulerColor:"#37B64B",maskColor:"#37B64B"},{backgroundColor:"#fff",color:"#0201FF",linkColor:"#C00",rulerColor:"#0201FF",maskColor:"#0201FF"},{backgroundColor:"#F4EED9",
color:"#1D1916",linkColor:"#C00",rulerColor:"#1D1916",maskColor:"#1D1916"},{backgroundColor:"#fff",color:"#000",linkColor:"#C00",rulerColor:"#000",maskColor:"#000"},{backgroundColor:"#FCED20",color:"#000",linkColor:"#C00",rulerColor:"#000",maskColor:"#000"}],languages:{"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:"\u0627\u0644\u0644\u0628\u0646\u0627\u0646\u064a\u0629",audible:!0,flag:"dz"},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:!0,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:!0,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:{name:"English",native_name:"English",audible:!0,flag:"gb"},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:{name:"French",native_name:"fran\u00e7ais",audible:!0,flag:"fr"},fy:{name:"Frisian (West)",native_name:"Frysk",
audible:!1,flag:null},gl:{name:"Galician",native_name:"Galego",audible:!0,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:!0,flag:"il"},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 magyaChichewar",
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:!1,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},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"},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:"limba",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:!1,flag:null},
sr:{name:"Serbian",native_name:"\u0441\u0440\u043f\u0441\u043a\u0438",audible:!1,flag:"rs"},nso:{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:{name:"Spanish",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:!1,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:!0,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:!1,flag:"ua"},ur:{name:"Urdu",native_name:"\u0627\u0631\u062f\u0648",audible:!1,flag:"pk"},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:!1,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}},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"}],simplifiedControls:!0,showLogo:!0,customLogo:!1,customLogoLink:!1,customLogoTitle:!1,customCloseTitle:!1,repositionBackground:!0};Recite.Event.subscribe("Preferences:load",d);Recite.Event.subscribe("Preferences:set",d);Recite.Event.subscribe("Preferences:reset",d);return{setOptions:function(a){c=Recite.Util.merge(c,a)},getOptions:function(){return c},
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(){if(c.autoIncrementTabIndex){var a=Recite.Sizzle("[tabindex]");Recite.Util.each(a,function(a,b){var d=parseInt(b.getAttribute("tabindex"));d>=c.tabIndexStartValue&&b.setAttribute("tabindex",d+200)})}e();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,c=Recite.Sizzle("[tabindex="+a+"]")[0],b=!1;Recite.Util.each(Recite.Sizzle(".recite-dropdown"),function(a,d){if(Recite.Dom.isDescendant(c,d)){var f=Recite.Sizzle("[data-target='#"+d.getAttribute("id")+"']")[0];-1==(" "+f.className+" ").replace(/[\n\t]/g,
" ").indexOf(" recite-dropdown-invoke-active ")&&(b=!0,f.focus())}});if(b)return!1})},invoke:function(a){var b=document.body;if(c.simplifiedControls){a.setAttribute("class",a.getAttribute("class")+" recite-controls-simplified");var e=Recite.Sizzle(".recite-sprite-logo")[0],h=Recite.Sizzle("#recite-logo-header")[0];if(Recite.Browser.isMobile()){e.setAttribute("class","recite-sprite-logo-icon");h.setAttribute("class",h.getAttribute("class")+" recite-header-logo-icon");var e=Recite.Sizzle(".recite-sprite-button-magnifier")[0],
h=Recite.Sizzle(".recite-sprite-button-ruler")[0],n=Recite.Sizzle(".recite-sprite-button-screenmask")[0];e.style.display="none";h.style.display="none";n.style.display="none"}else e.setAttribute("class","recite-sprite-logo-small")}d();var k=Recite.Dom.getStyle(a,"height"),k=parseInt(k.replace("px",""),10);if("tooltip"===Recite.getOptions().selectionMethod)try{Recite.PlayerControls.getProvider().setTopProtection(k)}catch(p){}if(c.repositionBackground)if(e=Recite.Dom.getStyle(b,"background-position-y"),
"0%"===e)b.setAttribute("style","background-position-y:"+k+" px !important");else if(e.match(/px/i)||"top"===e)e=e.replace("px",""),e=parseInt(e,10)+parseInt(k,10),b.setAttribute("style","background-position-y:"+e+" px !important");b.style.setProperty?(b.style.setProperty("position","absolute","important"),b.style.setProperty("top",k+"px","important"),b.style.setProperty("width","100%","important")):(b.style.width="100%",b.style.position="absolute",b.style.top=k+"px");Recite.Util.each(Recite.Sizzle("*"),
function(a,c){if(!/recite/.test(c.getAttribute("id"))&&!/recite/.test(c.getAttribute("class"))&&"fixed"===Recite.Dom.getStyle(c,"position")){var b=c.offsetTop;b<k&&(c.style.top=k+b+"px")}});var l=Recite.Sizzle("#recite-fonts")[0];Recite.Util.each(c.fonts,function(a,c){var b=document.createElement("div");b.setAttribute("class","recite-font recite-preference-set");b.setAttribute("data-key","style.font.face");"Default"!==c?(b.setAttribute("data-value",c.name),b.style.fontFamily=c.font):b.setAttribute("data-value",
"null");b.innerText=c.name;b.textContent=c.name;b.setAttribute("data-recite-tabbable","");l.appendChild(b)});var u=Recite.Sizzle("#recite-swatches")[0];Recite.Util.each(c.swatches,function(a,c){var b=document.createElement("div");b.setAttribute("class","recite-swatch recite-preference-set");b.setAttribute("data-recite-translate-skip","true");null===c.backgroundColor&&null===c.color&&null===c.linkColor?(b.setAttribute("class",b.getAttribute("class")+" recite-swatch-default"),b.textContent="Default",
b.innerText="Default"):(b.textContent="A",b.innerText="A");var d="style.backgroundColor style.font.color style.link.color",f=c.backgroundColor+" "+c.color+" "+c.linkColor;c.hasOwnProperty("rulerColor")&&(d+=" style.ruler.color",f+=" "+c.rulerColor);c.hasOwnProperty("maskColor")&&(d+=" style.screenMask.color",f+=" "+c.maskColor);b.setAttribute("data-key",d);b.setAttribute("data-value",f);b.setAttribute("data-recite-tabbable","");b.style.color=c.color;b.style.backgroundColor=c.backgroundColor;u.appendChild(b)});
var m=Recite.Sizzle("#recite-languages")[0];Recite.Util.each(c.languages,function(a,c){var b=document.createElement("li"),d=document.createElement("div"),f=document.createElement("div");c.audible&&(f.setAttribute("class","recite_language_audible recite-sprite-audible"),b.appendChild(f));b.appendChild(document.createTextNode(c.name));"undefined"!=typeof c.native_name&&(b.appendChild(document.createElement("br")),d.setAttribute("class","recite_language_native_name_str"),d.setAttribute("data-recite-translate-skip",
"false"),d.appendChild(document.createTextNode(c.native_name)),b.appendChild(d));b.setAttribute("class","recite-language-set");b.setAttribute("data-language",a);b.setAttribute("data-recite-tabbable","");b.setAttribute("data-recite-translate-skip","false");m.appendChild(b)});var r=Recite.Sizzle("#recite-margins")[0];Recite.Util.each(c.margins,function(a,b){var c=document.createElement("div");c.setAttribute("class","recite-margin recite-preference-set");c.setAttribute("data-key","style.marginSize");
c.setAttribute("data-value",b.value);var d=b.icon||null;if(null!==d){var f=document.createElement("div");f.setAttribute("class",d);f.style.margin="0 auto";f.setAttribute("data-key","style.marginSize");f.setAttribute("data-value",b.value);c.appendChild(f)}else c.textContent=b.name,c.innerText=b.name;r.appendChild(c)});var q=Recite.Sizzle(".recite-sprite-button-margin")[0];q.style.display="none";Recite.Event.subscribe("TextMode:enabled",function(){q.style.display="block"});Recite.Event.subscribe("TextMode:disabled",
function(){q.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 s=Recite.Sizzle(".recite-sprite-button-play")[0];Recite.DomEvent.add(s,"click",function(){"stopped"===s.getAttribute("data-status")?Recite.PlayerControls.play():Recite.PlayerControls.stop()});Recite.Event.subscribe("Audio:ended",function(){g(s,"stop")});Recite.Event.subscribe("Audio:started",
function(){g(s,"play")});if(!c.showLogo||!Recite.getOptions("showBrand"))a=Recite.Sizzle(".recite-logo")[0],a.innerHTML="",a.setAttribute("class","custom-logo");!1!=c.customLogo&&(a=Recite.Sizzle(".recite-logo")[0],a.setAttribute("class","custom-logo"),a.innerHTML='<img src="'+c.customLogo+'" height="80" />',!1!=c.customLogoLink&&(a.href=c.customLogoLink),!1!=c.customLogoTitle&&(a.title=c.customLogoTitle));!1!=c.customCloseTitle&&(a=Recite.Sizzle("a.recite-close"),Recite.Util.each(a,function(a,b){b.title=
c.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()});Recite.DomEvent.add(Recite.Sizzle("#recite-logo-header"),"click",function(a){if(c.promptBeforeLeave){a.preventDefault();var b=Recite.Controls.disableOverlay();
Recite.Gui.Modal.show("Leaving Website","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.","OK","Cancel",function(){window.location.href=Recite.Sizzle("#recite-logo-header")[0].getAttribute("href")},function(){Recite.Gui.Notification.show("Close operation canceled");Recite.Controls.reEnableOverlay(b)})}})}}}();Recite.namespace("Controls.Mobile");
Recite.Controls.Mobile=function(){function g(d,b){if("play"===b||"stopped"===d.getAttribute("data-status")&&"undefined"===b)return d.setAttribute("class",d.getAttribute("class").replace("recite-sprite-button-top-play-mobile","recite-sprite-button-top-stop-mobile")),d.setAttribute("data-status","playing"),"playing";if("stop"===b||"playing"===d.getAttribute("data-status")&&"undefined"===b)return d.setAttribute("class",d.getAttribute("class").replace("recite-sprite-button-top-stop-mobile","recite-sprite-button-top-play-mobile")),
d.setAttribute("data-status","stopped"),"stopped"}var e={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(d){Recite.Debug.log("Recite.Controls.Mobile","Setting options");e=Recite.Util.merge(e,d)},init:function(){},localize:function(d){Recite.Debug.log("Recite.Controls.Desktop","Localizing controls: "+d)},invoke:function(d){var b=document.body,a=Recite.Dom.getStyle(d,"height"),a=parseInt(a.replace("px",""),10)+10;b.style.position="absolute";b.style.paddingBottom=a+"px";
b.style.top=a+"px";b.style.width="100%";var c=Recite.Sizzle("#recite-fonts-list")[0];Recite.Util.each(e.fonts,function(a,b){var d=document.createElement("li"),f=document.createTextNode(b);d.setAttribute("class","recite-font recite-preference-set");d.setAttribute("data-key","style.font.face");d.setAttribute("data-value",b);d.style.fontFamily=b;d.appendChild(f);c.appendChild(d)});var f=Recite.Sizzle("#recite-languages")[0];Recite.Util.each(e.languages,function(a,b){var c=document.createElement("li"),
d=document.createTextNode(b.name);c.setAttribute("class","recite-language-set");c.setAttribute("data-language",a);c.appendChild(d);f.appendChild(c)});var i=Recite.Sizzle("#recite-swatches")[0];Recite.Util.each(e.swatches,function(a,b){var c=document.createElement("div");c.setAttribute("class","recite-swatch recite-preference-set");null===b.backgroundColor&&null===b.color&&null===b.linkColor?(c.setAttribute("class",c.getAttribute("class")+" recite-swatch-default"),c.textContent="/",c.innerText="/"):
(c.textContent="A",c.innerText="A");c.setAttribute("data-key","style.backgroundColor style.font.color style.link.color");c.setAttribute("data-value",b.backgroundColor+" "+b.color+" "+b.linkColor);c.style.setProperty("color",b.color,"important");c.style.backgroundColor=b.backgroundColor;i.appendChild(c)});d=Recite.Sizzle(".recite-dropdown-invoke",d);Recite.UI.Dropdown.invoke(d);d=Recite.Sizzle(".recite-language-set");Recite.DomEvent.add(d,"click",function(){Recite.UI.Dropdown.hideGroup("main")});d=
Recite.Sizzle(".recite-sprite-button-share-mobile")[0];Recite.DomEvent.add(d,"click",function(){ReciteAndroidInterface.sharePage(document.URL)});d=Recite.Sizzle(".recite-sprite-button-favourite-mobile")[0];Recite.DomEvent.add(d,"click",function(){ReciteAndroidInterface.addToFavourites(document.URL)});var j=Recite.Sizzle(".recite-sprite-button-top-play-mobile")[0];Recite.DomEvent.add(j,"click",function(){"stopped"===j.getAttribute("data-status")?Recite.PlayerControls.play():Recite.PlayerControls.stop()});
Recite.Event.subscribe("Audio:ended",function(){g(j,"stop")});Recite.Event.subscribe("Audio:started",function(){g(j,"play")})}}}();Recite.namespace("Recite.Parser.Html");
Recite.Parser.Html=function(){function g(a){if(0<a.length){var b=0;Recite.Util.each(a,function(a,d){b+=Recite.Dom.getText(d).trim().length});if(b>=d.minCharacters){var f=!1;Recite.Util.each(Recite.Dom.getAncestors(a[0]),function(b,c){if(/ui-datepicker/g.test(c.getAttribute("class"))&&3===a[0].nodeType){f=!0;e=a[0].parentNode;var d=a[0].parentNode.getAttribute("class");d&&(d=d.replace(" recite-ele",""));a[0].parentNode.setAttribute("class",d+" recite-ele")}});if(!f){var e,g=a[0].ownerDocument.createElement(d.wrapTag);
g.className="recite-ele recite-ele-style";g.style.display="inline";if(d.debug.highlightElements){var h=Math.floor(256*Math.random()),n=Math.floor(256*Math.random()),k=Math.floor(256*Math.random());try{g.style.backgroundColor="rgba("+h+","+n+","+k+",0.4)"}catch(p){g.style.backgroundColor="rgb("+h+","+n+","+k+")"}}e=g;a[0].parentNode.insertBefore(e,a[0]);for(g=0;g<a.length;g++)h=a[g].parentNode.removeChild(a[g]),e.appendChild(h)}return e}}return null}function e(a,c,f){"undefined"===typeof f&&(f=[[]]);
var g=!1,j=!1;if(1===a.nodeType&&/recite-ele/g.test(a.getAttribute("class")))return f;if(a){if(1===a.nodeType&&(0<=Recite.Util.inArray(a.tagName,d.skipElements)||"true"===a.getAttribute("data-recite-skip"))||1===a.nodeType&&0<b.length&&"BR"===a.tagName&&"BR"===b[b.length-1].tagName)return f;3===a.nodeType&&Recite.Dom.getText(a).replace(/^\s*/,"").replace(/\s*$/,"");if(1===a.nodeType){var h=0<=Recite.Util.inArray(Recite.Dom.getStyle(a,"display"),d.concatenateTypes),n=0<=Recite.Util.inArray(a.tagName,
d.concatenateElementExceptions);if(h=h&&!n){a:{if(1===a.nodeType){h=a.getElementsByTagName("*");for(n=0;n<h.length;n++)if("block"===Recite.Dom.getStyle(h[n],"display")){h=!0;break a}}h=!1}h=!h}h&&(g=!0)}else 3===a.nodeType&&(g=!0);!0===g&&(b[b.length-1]!==a.previousSibling&&(f.push(b),b=[]),b.push(a),j=!0);g=0;h=a.childNodes[g];if(!j)for(;h;)e(h,c+1,f),g++,h=a.childNodes[g]}return f}var d={maxCharacters:1E3,minCharacters:1,wrapTag:"recite",concatenateTypes:["inline","inline-block"],concatenateElementExceptions:["LI"],
skipElements:"SCRIPT STYLE SELECT OPTION IMG FRAMESET FRAME IFRAME NOSCRIPT".split(" "),parseImgAltAttribute:!0,bubbleEvents:!1,bubbleStyles:!0,debug:{highlightElements:!1}},b=[];return{setOptions:function(a){Recite.Debug.log("Recite.Parser.Html","Setting options");d=Recite.Util.merge(d,a)},parse:function(a){var c=new Date,f=e(a,1);0<b.length&&f.push(b);0===f[f.length-1].length&&f.pop();var i=[];Recite.Util.each(f,function(a,b){if(0!==b.length){var c=g(b);null!==c&&i.push(c)}});if(d.parseImgAltAttribute){var j=
Recite.Sizzle("img[data-recite-skip!=true]",a);Recite.Util.each(j,function(a,b){if(b)if(null===b.getAttribute("alt")||0===b.getAttribute("alt").length)j.splice(a,1);else if(d.debug.highlightElements){var c=Math.floor(256*Math.random()),f=Math.floor(256*Math.random()),e=Math.floor(256*Math.random());try{b.style.backgroundColor="rgba("+c+","+f+","+e+",0.4)"}catch(g){b.style.backgroundColor="rgb("+c+","+f+","+e+")"}}});Recite.PlayerControls.invoke(j)}Recite.Debug.log("Recite.Parser.Html","Parsed "+i.length+
" elements in: "+((new Date).getTime()-c.getTime())+"ms");!1!==d.bubbleEvents&&(a=Recite.Sizzle(".recite-ele"),Recite.DomEvent.add(a,"click",function(a){a.target.parentNode.click()}));Recite.Event.publish("Recite.Parser:parsed");a=document.getElementsByTagName("*");c=0;for(f=a.length;c<f;c++)Recite.Style.getOptions().preserve_background_images&&""!=a[c].style.backgroundImage&&a[c].setAttribute("class",a[c].getAttribute("class")+" recite-ignore-styles-background ");return i},wrapElements:function(a){Recite.Util.each(a,
function(a,b){g(b)})}}}();Recite.namespace("Recite.Parser.Selector");
Recite.Parser.Selector=function(){var g={maxCharacters:1E3,minCharacters:1,selector:".recite"};return{setOptions:function(e){Recite.Debug.log("Recite.Parser.Selector","Setting options");g=Recite.Util.merge(g,e)},parse:function(e){Recite.Debug.log("Recite.Parser.Selector","Parser invoked on element:",e);var d=Recite.Sizzle(g.selector,e);Recite.Util.each(d,function(b,a){var c=Recite.Dom.getText(a);(c.length<g.minCharacters||c.length>g.maxCharacters)&&d.splice(b)});return d}}}();Recite.namespace("PlayerControls");
Recite.PlayerControls=function(){function g(){null===d.provider?d.provider=d.enableMobileControls&&Recite.Browser.isMobile()?Recite.PlayerControls.Fixed:Recite.PlayerControls.Tooltip:"none"===d.provider?d.provider=Recite.PlayerControls.NoGUI:"disable"===d.provider&&(d.provider=null);null!=d.provider&&d.provider.init&&d.provider.init()}function e(){Recite.Preferences.get("playerControls.enabled")?Recite.PlayerControls.enable():Recite.PlayerControls.disable()}var d={provider:null,enableMobileControls:!0,
minSkipTime:700},b=null;Recite.Event.subscribe("Recite.Dom.Observor:change",function(a,b){void 0!=b&&b.hasOwnProperty("affectedElements")&&(Recite.PlayerControls.invoke(b.affectedElements),Recite.PlayerControls.invalidate())});Recite.Event.subscribe("Recite:load",g);Recite.Event.subscribe("Preferences:load",e);Recite.Event.subscribe("Preferences:set",e);Recite.Event.subscribe("Preferences:reset",e);return{init:g,setOptions:function(a){a.provider&&d.provider&&d.provider.destroy();d=Recite.Util.merge(d,
a);Recite.PlayerControls.Tooltip.setOptions(a.Tooltip);Recite.PlayerControls.Fixed.setOptions(a.Fixed);Recite.PlayerControls.NoGUI.setOptions(a.NoGUI);a.provider&&a.provider.init&&d.provider.init()},invoke:function(a){null!=d.provider&&d.provider.invoke(a)},enable:function(){null!=d.provider&&d.provider.enable()},disable:function(){null!=d.provider&&d.provider.disable()},invalidate:function(){null!=d.provider&&d.provider.invalidate()},getControls:function(){return null!=d.provider?d.provider.getControls():
null},getProvider:function(){return d.provider},play:function(){return null!=d.provider?d.provider.play():null},stop:function(){return null!=d.provider?d.provider.stop():null},next:function(){var a=Math.floor(Date.now());window.clearTimeout(null);if(null==b||a-b>d.minSkipTime)return b=a,Recite.Debug.log("Recite.PlayerControls","next"),null!=d.provider?d.provider.next():null;Recite.Debug.log("Recite.PlayerControls","Skipping too fast, halting")},previous:function(){var a=Math.floor(Date.now());window.clearTimeout(null);
if(null==b||a-b>d.minSkipTime)return b=a,Recite.Player.stop(),Recite.Debug.log("Recite.PlayerControls","prev"),null!=d.provider?d.provider.previous():null;Recite.Debug.log("Recite.PlayerControls","Skipping too fast, halting")}}}();Recite.namespace("PlayerControls.Tooltip");
Recite.PlayerControls.Tooltip=function(){function g(a){Recite.Util.each(j,function(c,d){!Recite.Dom.isDescendant(a.target,d)&&(a.target!==d&&!Recite.Dom.isDescendant(a.target,h)&&a.target!==h&&!Recite.Dom.isDescendant(a.target,Recite.Sizzle("#recite-header")[0]))&&b(d)})}function e(){if(f){clearTimeout(c.timeout);var a=this;h!==this&&(c.timeout=setTimeout(function(){d(a)},c.intent))}}function d(b){null!==b&&(null!==h&&(h.setAttribute("class",h.getAttribute("class").replace("recite-selected","")),
Recite.Event.publish("Recite.Tooltip:hide",{target:h})),h=b,a(b),h.setAttribute("class",h.getAttribute("class")+" recite-selected"),Recite.Event.publish("Recite.Tooltip:show",{target:h}),Recite.Preferences.get("player.autoplay")&&Recite.PlayerControls.Tooltip.play())}function b(a){a.style.display="none";null!==h&&(h.setAttribute("class",h.getAttribute("class").replace("recite-selected","")),Recite.Event.publish("Recite.Tooltip:hide",{target:h}));h=null}function a(a){var b,d=Recite.Sizzle("#recite-tooltip",
i)[0];"undefined"===typeof d&&(Recite.Debug.log("Recite.Tooltip","Adding tooltip to document"),d=i.createElement("div"),d.setAttribute("class","recite-tooltip small"),d.setAttribute("id","recite-tooltip"),d.style.position="absolute",d.innerHTML='<div class="recite-tooltip-content">'+c.content+'</div>                         <div class="recite-sprite-tip-bottomleft" id="recite-tip"></div>',Recite.Sizzle("body",i)[0].appendChild(d),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"),d.setAttribute("class","recite-tooltip")),Recite.Debug.log("Recite.Tooltip","Binding buttons for tooltip"),b=i.getElementById("recite-play"),Recite.DomEvent.add(b,"click",function(){Recite.PlayerControls.Tooltip.play()}),b=i.getElementById("recite-stop"),Recite.DomEvent.add(b,"click",function(){Recite.Player.stop()}),
b=i.getElementById("recite-back"),Recite.DomEvent.add(b,"click",function(){Recite.Player.rewind()}),b=i.getElementById("recite-forward"),Recite.DomEvent.add(b,"click",function(){Recite.Player.forward()}),j.push(d));b=d;b.style.display="block";for(var f=0;f<j.length;f++)j[f]!==b&&(j[f].style.display="none");var e=i.body,g=Recite.Dom.getPosition(a),f=Recite.Dom.getScroll(a.ownerDocument.defaultView),h=g.top-b.offsetHeight-c.adjust.y,k=g.left+("right"==c.position?a.offsetWidth:0),d="recite-sprite-tip-bottom-left",
n=h-f.y-c.adjust.y,l=k+b.offsetWidth-f.x;b.style.position="absolute";for(var p=Recite.Dom.getAncestors(a),f=0;f<p.length;f++)"fixed"===Recite.Dom.getStyle(p[f],"position")&&(b.style.position="fixed",n=h-c.adjust.y);n<c.protect.top-c.adjust.y?(h=g.top+a.offsetHeight+c.adjust.y,d="recite-sprite-tip-top-left",l>e.clientWidth-c.protect.right&&(k=g.left-b.offsetWidth+c.adjust.x,d="recite-sprite-tip-top-right")):l>e.clientWidth&&(k=g.left-b.offsetWidth+c.adjust.x,d="recite-sprite-tip-bottom-right");b.style.top=
h+"px";b.style.left=k+"px";a=i.getElementById("recite-tip");a.setAttribute("class",d);a.setAttribute("className",d)}var c={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>'},
f=!0,i,j=[],h=null,n=!1,k=null,p,l;p=l=function(){h&&a(h)};return{init:function(){if(!n){k=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",l),Recite.DomEvent.add(a[b],"scroll",p),Recite.DomEvent.add(a[b],"click",g);n=!0}},destroy:function(){Recite.Event.unsubscribe(k);Recite.Util.each([window],function(a,b){Recite.DomEvent.remove(b,"resize",l);Recite.DomEvent.remove(b,"scroll",p);Recite.DomEvent.remove(b,
"click",g)});n=!1},enable:function(){f=!0},disable:function(){f=!1;Recite.Util.each(j,function(a,c){b(c)})},setOptions:function(a){c=Recite.Util.merge(c,a)},getOptions:function(){return c},invoke:function(a){this.init();Recite.Debug.log("Recite.PlayerControls.Tooltip","Invoking tooltip controls.");i=a.ownerDocument?a.ownerDocument:document;Recite.DomEvent.add(a,"mouseover",e);Recite.DomEvent.add(a,"mouseout",function(){clearTimeout(c.timeout)})},invalidate:function(){h&&a(h)},play:function(a){a?(Recite.PlayerDispatcher.dispatch(a),
d(a)):null===h?Recite.PlayerControls.next():Recite.PlayerDispatcher.dispatch(h)},stop:function(){Recite.Player.stop()},seekingSupported:function(){return!0},next:function(){var a=Recite.Dom.getNextElement(h);a===h?Recite.Debug.log("Recite.PlayerControls.Tooltip","next element same as current, halting"):d(a);Recite.Dom.isVisible(a)||Recite.Dom.scrollTo(a)},previous:function(){var a=Recite.Dom.getPreviousElement(h);d(a);Recite.Dom.isVisible(a)||Recite.Dom.scrollTo(a)},current:h}}();Recite.namespace("PlayerControls.Fixed");
Recite.PlayerControls.Fixed=function(){function g(){k=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",l),Recite.DomEvent.add(a[b],"scroll",p),Recite.DomEvent.add(a[b],"click",u)}function e(){Recite.Event.unsubscribe(k);Recite.Util.each([window],function(a,b){Recite.DomEvent.remove(b,"resize",l);Recite.DomEvent.remove(b,"scroll",p);Recite.DomEvent.remove(b,"click",u)})}function d(){if(f){clearTimeout(c.timeout);
var a=this;h!==this&&(c.timeout=setTimeout(function(){b(a)},c.intent))}}function b(b){null!==h&&h.setAttribute("class",h.getAttribute("class").replace("recite-selected",""));h=b;a(b);Recite.Preferences.get("player.autoplay")&&Recite.PlayerDispatcher.dispatch(h);h.setAttribute("class",h.getAttribute("class")+" recite-selected")}function a(){var a;a=Recite.Sizzle("#recite-tooltip",i)[0];if("undefined"===typeof a){Recite.Debug.log("Recite.PlayerControls.Fixed","Adding fixed controls to document");a=
i.createElement("div");a.setAttribute("class","recite-tooltip-fixed");a.setAttribute("id","recite-tooltip");a.style.position="absolute";a.innerHTML='<div class="recite-tooltip-content">'+c.content+'</div>               <div class="recite-tip-bottomleft" id="recite-tip"></div>';Recite.Sizzle("body",i)[0].appendChild(a);Recite.Debug.log("Recite.PlayerControls.Fixed","Binding buttons for fixed controls");var b=i.getElementById("recite-play");Recite.DomEvent.add(b,"click",function(){Recite.PlayerDispatcher.dispatch(h)});
b=i.getElementById("recite-stop");Recite.DomEvent.add(b,"click",function(){Recite.Player.stop()});b=i.getElementById("recite-back");Recite.DomEvent.add(b,"click",function(){Recite.PlayerControls.previous()});b=i.getElementById("recite-forward");Recite.DomEvent.add(b,"click",function(){Recite.PlayerControls.next()});j.push(a)}Recite.Debug.log("Recite.PlayerControls.Fixed","Fixed controls added to document: "+a);a.style.display="block";a.style.position="fixed";for(b=0;b<j.length;b++)j[b]!==a&&(j[b].style.display=
"none");Recite.Sizzle("body",document)[0].style.paddingBottom=c.dimensions.height+"px"}var c={dimensions:{height:98},intent:500,timeout:null,content:'<a id="recite-play" class="recite-sprite-fixed-play"></a><a id="recite-stop" class="recite-sprite-fixed-stop"></a>               <a id="recite-back" class="recite-sprite-fixed-previous"></a><a id="recite-forward" class="recite-sprite-fixed-next"></a>'},f=!0,i,j=[],h=null,n=!1,k=null,p,l;p=l=function(){h&&a(h)};var u=function(a){Recite.Util.each(j,function(b,
c){!Recite.Dom.isDescendant(a.target,c)&&(a.target!==c&&!Recite.Dom.isDescendant(a.target,h)&&a.target!==h&&!Recite.Dom.isDescendant(a.target,Recite.Sizzle("#recite-header")[0]))&&(c.style.display="none",null!==h&&h.setAttribute("class",h.getAttribute("class").replace("recite-selected","")),Recite.Sizzle("body",document)[0].style.paddingBottom="0px",h=null)})};return{init:function(){n||(g(),n=!0)},destroy:function(){e();n=!1},enable:function(){f||g();f=!0},disable:function(){f&&e();f=!1},setOptions:function(a){c=
Recite.Util.merge(c,a)},getOptions:function(){return c},invoke:function(a){Recite.Debug.log("Recite.Tooltop.Desktop","Invoking fixed playerControls");i=a.ownerDocument?a.ownerDocument:document;Recite.DomEvent.add(a,"mouseover",d);Recite.DomEvent.add(a,"mouseout",function(){clearTimeout(c.timeout)})},invalidate:function(){h&&a(h)},seekingSupported:function(){return!0},play:function(a){a?(Recite.PlayerDispatcher.dispatch(a),b(a)):null===h?Recite.PlayerControls.next():Recite.PlayerDispatcher.dispatch(h)},
stop:function(){Recite.Player.stop()},next:function(){var a=Recite.Dom.getNextElement(h);a===h||null===a?Recite.Debug.log("Recite.PlayerControls.Fixed","next element same as current, halting"):(b(a),Recite.Dom.isVisible(a)||Recite.Dom.scrollTo(a))},previous:function(){var a=Recite.Dom.getPreviousElement(h);b(a);Recite.Dom.isVisible(a)||Recite.Dom.scrollTo(a)},current:h}}();Recite.namespace("PlayerControls.NoGUI");
Recite.PlayerControls.NoGUI=function(){function g(b){null!==b&&(null!==a&&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 e(){if(b){clearTimeout(d.timeout);var c=this;a!==this&&(d.timeout=setTimeout(function(){g(c)},d.intent))}}var d={timeout:null,dimensions:{height:0}},b=!0,a=null,c=!1;return{init:function(){c||
(Recite.Event.subscribe("Style:updated",Recite.PlayerControls.Tooltip.invalidate),c=!0)},destroy:function(){c=!1},enable:function(){b=!0},disable:function(){b=!1},setOptions:function(a){d=Recite.Util.merge(d,a)},getOptions:function(){return d},invoke:function(a){this.init();Recite.Debug.log("Recite.PlayerControls.NoGUI","Invoking NoGUI controls.");Recite.DomEvent.add(a,"mouseover",e);Recite.DomEvent.add(a,"mouseout",function(){clearTimeout(d.timeout)})},invalidate:function(){},play:function(b){b?
(Recite.PlayerDispatcher.dispatch(b),g(b)):null===a?Recite.PlayerControls.next():Recite.PlayerDispatcher.dispatch(a)},stop:function(){Recite.Player.stop()},seekingSupported:function(){return!0},next:function(){var b=Recite.Dom.getNextElement(a);b===a||null===b?Recite.Debug.log("Recite.PlayerControls.NoGUI","next element same as current, halting"):g(b)},previous:function(){var b=Recite.Dom.getPreviousElement(a);g(b)},current:a}}();Recite.namespace("PlayerControls.MobileControls");
Recite.PlayerControls.MobileControls=function(){function g(){u=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",q),Recite.DomEvent.add(a[b],"scroll",r),Recite.DomEvent.add(a[b],"click",s)}function e(){Recite.Event.unsubscribe(u);Recite.Util.each([window],function(a,b){Recite.DomEvent.remove(b,"resize",q);Recite.DomEvent.remove(b,"scroll",r);Recite.DomEvent.remove(b,"click",s)})}function d(){if(j)if(p)p=
!1;else{Recite.Player.prepare();clearTimeout(i.timeout);var a=this;k!==this&&(i.timeout=setTimeout(function(){b(a)},i.intent))}}function b(a){null!==k&&k.setAttribute("class",k.getAttribute("class").replace("recite-selected",""));k=a;f(a);Recite.Preferences.get("player.autoplay")&&(Recite.Debug.log("Recite.MobileControls","Playing audio..."),Recite.PlayerDispatcher.dispatch(k));k.setAttribute("class",k.getAttribute("class")+" recite-selected")}function a(){h.getElementById("recite-play").setAttribute("class",
"recite-sprite-mobile-play")}function c(){h.getElementById("recite-play").setAttribute("class","recite-sprite-mobile-stop")}function f(){var b;b=Recite.Sizzle("#recite-tooltip",h)[0];if("undefined"===typeof b){Recite.Debug.log("Recite.PlayerControls.MobileControls","Adding mobile controls to document");b=h.createElement("div");b.setAttribute("class","recite-tooltip-mobile");b.setAttribute("id","recite-tooltip");b.style.position="absolute";b.innerHTML='<div class="recite-tooltip-content">'+i.content+
'</div>               <div class="recite-tip-bottomleft" id="recite-tip"></div>';Recite.Sizzle("body",h)[0].appendChild(b);Recite.Debug.log("Recite.PlayerControls.MobileControls","Binding buttons for mobile controls");var d=h.getElementById("recite-play");Recite.DomEvent.add(d,"click",function(){h.getElementById("recite-play");m?(a(),Recite.Player.stop(),m=!1):(c(),Recite.PlayerDispatcher.dispatch(k),m=!0)});d=h.getElementById("recite-back");Recite.DomEvent.add(d,"click",function(){Recite.PlayerControls.Mobile.previous()});
d=h.getElementById("recite-forward");Recite.DomEvent.add(d,"click",function(){Recite.PlayerControls.next()});n.push(b)}Recite.Debug.log("Recite.PlayerControls.MobileControls","Mobile controls added to document: "+b);b.style.display="block";b.style.position="mobile";for(d=0;d<n.length;d++)n[d]!==b&&(n[d].style.display="none");Recite.Sizzle("body",document)[0].style.paddingBottom=i.dimensions.height+"px"}var i={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>'},
j=!0,h,n=[],k=null,p=!1,l=!1,u=null,m=!1,r,q;r=q=function(){k&&f(k)};var s=function(a){Recite.Util.each(n,function(b,c){!Recite.Dom.isDescendant(a.target,c)&&(a.target!==c&&!Recite.Dom.isDescendant(a.target,k)&&a.target!==k&&!Recite.Dom.isDescendant(a.target,Recite.Sizzle("#recite-header")[0]))&&(c.style.display="none",null!==k&&k.setAttribute("class",k.getAttribute("class").replace("recite-selected","")),Recite.Sizzle("body",document)[0].style.paddingBottom="0px",k=null)})};return{init:function(){l||
(g(),l=!0)},destroy:function(){e();l=!1},enable:function(){j||g();j=!0},disable:function(){j&&e();j=!1},setOptions:function(a){i=Recite.Util.merge(i,a)},getOptions:function(){return i},invoke:function(b){Recite.Debug.log("Recite.Tooltop.Desktop","Invoking mobile playerControls");h=b.ownerDocument?b.ownerDocument:document;Recite.DomEvent.add(b,"touchmove",function(){p=!0});Recite.DomEvent.add(b,"click",d);Recite.Event.subscribe("Audio:started",function(){m=!0;c()});Recite.Event.subscribe("Audio:ended",
function(){a()});Recite.event},invalidate:function(){k&&f(k)},seekingSupported:function(){return!0},play:function(a){a?(Recite.PlayerDispatcher.dispatch(a),b(a)):null===k?Recite.PlayerControls.next():Recite.PlayerDispatcher.dispatch(k)},stop:function(){Recite.Player.stop()},next:function(){var a=Recite.Dom.getNextElement(k);a===k||null===a?Recite.Debug.log("Recite.PlayerControls.MobileControls","next element same as current, halting"):(b(a),Recite.Dom.isVisible(a)||Recite.Dom.scrollTo(a))},previous:function(){var a=
Recite.Dom.getPreviousElement(k);b(a);Recite.Dom.isVisible(a)||Recite.Dom.scrollTo(a)},current:k}}();Recite.namespace("PlayerDispatcher");
Recite.PlayerDispatcher=function(){function g(a){var b=Recite.Dom.getText(a);Recite.Util.each(d.readElements,function(d,e){a.tagName===d&&""!==b&&(b=e+". "+b)});return b}function e(a,c){var d=null,e=null;"string"===typeof a?d=a:(d=g(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 j=Recite.Dom.getNextElement(a);j!==a&&setTimeout(function(){b===a&&Recite.Player.cache(g(j),c,e)},500)}}catch(h){if(h instanceof
Recite.Player.PlayerException)switch(h.code){case 400:Recite.Gui.Notification.show("This language is not supported by Recite",{play:!0})}}}var d={readElements:{A:"Link",IMG:"Image"}},b=null;return{setOptions:function(a){d=Recite.Util.merge(d,a)},dispatch:function(a){(null===Recite.Player.getPlayer()||Recite.Player.getPlayer().getOptions().prepareAudio)&&Recite.Player.prepare();var c=null,d=null;"string"===typeof a?c=a:(d=Recite.Dom.getLanguage(a),b=a,c=Recite.Dom.getText(a));var g=Recite.Player.getOptions().languageDetection;
2===g||null===d&&1<=g?d=Recite.Dom.detectLanguage(c,function(b){"und"===b&&(b=null);e(a,b)}):e(a,d)}}}();Recite.namespace("Player");
Recite.Player=function(){function g(){if(b)return b;Recite.Audio.HTML5.support()?(Recite.Debug.log("Recite.Player","HTML5 Audio support detected, using Recite.Audio.HTML5 as backend."),Recite.Audio.HTML5.init(),b=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(),b=Recite.Audio.SoundManager):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 e(c,f,e,j,h){f=f||a.language;e=e||null;if(!Recite.Player.languageSupported(f))throw Recite.Debug.log("Recite.Player","Language not supported:"+f),new Recite.Player.PlayerException(400,"Unsupported Language");var n=g().format(),k={q:c,f:n};if(null!==f){k.l=f;var e=d(f)||e,p=Recite.Preferences.get("voices");"undefined"!==typeof p[f]&&(null!=p[f]&&null===d(f))&&(e=p[f]);null!==e&&(k.vo=e)}Recite.Debug.log("Recite.Player","Audio request: "+c);0>c.length&&!j.cache?(Recite.Debug.log("Recite.Player",
"GET Request"),Recite.Api.getUri("tts",{authRequired:!0,data:k,success:function(a){Recite.Debug.log("Recite.Player","Request url: "+a);h&&h(a)}})):(Recite.Debug.log("Recite.Player","POST Request"),b.getOptions().playlist||(k.playlist=!1),b.getOptions().waitForAudioProcessing&&(k.waitForProcessing=!0),Recite.Api.call("tts","POST",{data:k,contentType:"application/json; charset=UTF-8",success:function(a){var b=a.data;Recite.Auth.getStatus(function(a){j.cache&&h.call();var c=[];Recite.Debug.log("Recite.Player",
"POST Callback");void 0!==b.id?(Recite.Debug.log("Recite.Player","Playing single file"),c.push(Recite.baseUrl+"/api/tts/"+b.id+"?f="+n+"&access_token="+a.access_token)):(Recite.Debug.log("Recite.Player","Playing multiple files - create a playlist"),Recite.Util.each(b,function(b,d){Recite.Debug.log("Recite.Player","Adding to playlist: "+d.id);c.push(Recite.baseUrl+"/api/tts/"+d.id+"?f="+n+"&access_token="+a.access_token);Recite.Debug.log("Recite.Player","Added to playlist: "+d.id)}));h&&(Recite.Debug.log("Recite.Player",
"Calling callback with playlist"),h(c))})}}));Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Player",event:"play ("+f+")"})}function d(b){return"undefined"!==typeof a.voices[b]?a.voices[b]:null}var b=null,a={language:null,voices:{},languages:["en","en-us","en-gb","ar-ae","ar","tr","it","ko","zh-CN","zh-TW","th","ja","id","eu","ca","cs","da","nl","fi","fr","de","el","hi","hu","no","pl","pt","ro","ru","sk","es","sv","gl","iw","en","en-us","en-gb","ar-ae","ar","tr","it","ko","zh-CN","zh-TW","th","ja","id","eu","ca","cs","da","nl","fi","fr","de","el","hi","hu","no","pl","pt","ro","ru","sk","es","sv","gl","iw","cy","cy-gb","cy","cy-gb","en","en-us","en-gb","ar-ae","ar","tr","it","ko","zh-CN","zh-TW","th","ja","id","eu","ca","cs","da","nl","fi","fr","de","el","hi","hu","no","pl","pt","ro","ru","sk","es","sv","gl","iw","cy","cy-gb"],languageDetection:1};Recite.Event.subscribe("Audio:ended",function(){Recite.Debug.log("Recite.Player","-------\>Audio ended")});return{setOptions:function(b){a=Recite.Util.merge(a,b)},getOptions:function(){return a},init:function(){if(null===
a.language){var b=document.documentElement.lang;0<b.length&&this.setOptions({language:b})}},prepare:function(){g().getOptions().prepareAudio&&(Recite.Debug.log("Recite.Player","--------------------\> Preloading audio..."),g().play(Recite.baseUrl+"/audio/blank.mp3"))},play:function(a,b,d){g().getOptions().playlist&&g().clearPlaylist();e(a,b,d,{},function(a){Recite.Debug.log("Recite.Player","In callback");1==a.length?(Recite.Debug.log("Recite.Player","Queue length == 1 ... "+a[0]),g().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);g().addToPlaylist(b)}),Recite.Debug.log("Recite.Player","Play the playlist"),g().playPlaylist(),Recite.Debug.log("Recite.Player","Finished invoking play"))})},pause:function(){g().pause()},restart:function(){g().restart()},resume:function(){g().resume()},cache:function(a,b,d){e(a,b,d,{cache:!0},function(){Recite.Debug.log("Recite.Player","Cached audio for: "+a)})},stop:function(){g().stop()},
rewind:function(){g().rewind()},forward:function(){g().forward()},setPlayer:function(a){b=a},getPlayer:function(){return b},getSupportedLanguauges:function(){return a.languages},languageSupported:function(b){return-1<Recite.Util.inArray(b,a.languages)||null===b}}}();Recite.Player.PlayerException=function(g,e){this.code=g;this.message=e};Recite.namespace("Audio.WebAudio");
Recite.Audio.WebAudio=function(){function g(){Recite.Player.getPlayer().play(d[0]);d.splice(0,1)}var e="",d=[],b=null,a=null,c={prepareAudio:!0,playlist:!0,waitForAudioProcessing:!1};return{setOptions:function(a){c=Recite.Util.merge(c,a)},init:function(){Recite.Debug.log("Recite.Audio.WebAudio","Init");e=Recite.Audio.WebAudio.support();Recite.Debug.log("Recite.Audio.WebAudio","Preferred format detected as:"+e);Recite.Debug.log("Recite.Audio.WebAudio",e)},play:function(c){Recite.Debug.log("Recite.Audio.WebAudio",
"Webaudio play called!");var e=new XMLHttpRequest;e.open("GET",c,!0);e.responseType="arraybuffer";e.onload=function(){Recite.Debug.log("Recite.Audio.WebAudio","ONLOAD CALLED!");a.decodeAudioData(e.response,function(c){Recite.Debug.log("Recite.Audio.WebAudio","PLAY SOUND CALLED!");null!=b&&Recite.Audio.WebAudio.stop();Recite.Event.publish("Audio:started");b=a.createBufferSource();b.buffer=c;b.connect(a.destination);b.start(0);b.onended=function(){0<d.length?(Recite.Event.publish("Audio:playlist-item-ended"),
g()):Recite.Preferences.get("player.continuePlay")?Recite.PlayerControls.next():Recite.Event.publish("Audio:ended")}})};e.send()},stop:function(){null!=b&&(b.onended=null,b.stop(0),Recite.Event.publish("Audio:ended"))},rewind:function(){},forward:function(){},support:function(){try{var b=window.AudioContext||window.webkitAudioContext||window.mozAudioContext||window.oAudioContext||window.msAudioContext;return AudioContext?(window.AudioContext=b,a=new b,!0):!1}catch(c){return!1}},format:function(){return"mp3"},
getOptions:function(){return c},getPlaylistState:function(){return _playlistPlaying},addToPlaylist:function(a){d.push(a);return d},clearPlaylist:function(){return d=[]},playPlaylist:function(){g()}}}();Recite.namespace("Audio.HTML5");
Recite.Audio.HTML5=function(){function g(){var b=a[0];a.splice(0,1);Recite.Player.getPlayer().play(b)}function e(){Recite.Debug.log("Recite.Audio.HTML5","Moving onto next playlist item");Recite.Preferences.get("player.continuePlay")&&0>=a.length?Recite.PlayerControls.next():(Recite.Debug.log("Recite.Audio.HTML5","Playlist length: "+a.length),Recite.Event.publish("Audio:playlist-item-ended"))}var d=null,b="",a=[],c={prepareAudio:!0,playlist:!0,waitForAudioProcessing:!1};return{setOptions:function(a){c=
Recite.Util.merge(c,a)},init:function(){Recite.Event.subscribe("Audio:playlist-item-ended",function(){0<a.length?g():Recite.Event.publish("Audio:ended")});null==d&&(Recite.Debug.log("Recite.Audio.HTML5","Init"),d=document.createElement("audio"),b=Recite.Audio.HTML5.format(),d.addEventListener("ended",function(){e()},!1),d.addEventListener("error",function(){Recite.Debug.log("Recite.Audio.HTML5","Audio failed");e()},!1),d.addEventListener("canplay",function(){Recite.Debug.log("Recite.Audio.HTML5",
"Can play");d.play()},!1),Recite.Debug.log("Recite.Audio.HTML5","Preferred format detected as:"+b),Recite.Debug.log("Recite.Audio.Html5",b))},play:function(a){Recite.Event.publish("Audio:started");d.setAttribute("src",a);d.load();Recite.Debug.log("Recite.Audio.HTML5","PLAY CALLED..."+a)},pause:function(){d.pause();Recite.Event.publish("Audio:paused")},resume:function(){d.play();Recite.Event.publish("Audio:started")},restart:function(){d.currentTime=0;d.load();d.play()},stop:function(){Recite.Debug.log("Recite.Audio.HTML5",
"STOP CALLED...");d.pause();a=[];Recite.Event.publish("Audio:ended")},rewind:function(){d.currentTime-=1},forward:function(){d.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 c},getPlaylistState:function(){return _playlistPlaying},addToPlaylist:function(b){a.push(b);return a},clearPlaylist:function(){Recite.Debug.log("Recite.Audio.HTML5","CLEAR PLAYLIST CALLED...");return a=[]},playPlaylist:function(){g()}}}();Recite.namespace("Audio.SoundManager");
Recite.Audio.SoundManager=function(){function g(){Recite.Player.getPlayer().play(d[0]);d.splice(0,1)}var e=null,d=[],b={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){b=Recite.Util.merge(b,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<d.length?g():Recite.Event.publish("Audio:ended")})},play:function(a){Recite.Debug.log("Recite.Audio.SoundManager","Play called");window.soundManager?((e=soundManager.getSoundById(a))||(e=soundManager.createSound({id:a,url:a})),soundManager.stopAll(),e.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(b.path,function(){window.soundManager=new SoundManager;Recite.Util.each(b.soundmanager,function(a,b){soundManager[a]=b});soundManager.beginDelayedInit();soundManager.stopAll();soundManager.onready(function(){e=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(){e.pause();
Recite.Event.publish("Audio:paused")},resume:function(){e.resume();Recite.Event.publish("Audio:started")},restart:function(){e&&(Recite.Debug.log("Recite.Audio.Soundmanager","Restarting track"),e.setPosition(0))},stop:function(){e&&e.stop();Recite.Event.publish("Audio:ended")},rewind:function(){e&&(Recite.Debug.log("Recite.Audio.Soundmanager","Skiping backwards"),e.setPosition(e.position-500))},forward:function(){e?(Recite.Debug.log("Recite.Sudio.Soundmanager","Skiping forward"),e.setPosition(e.position+
500)):Recite.Debug.log("Recite.Sudio.Soundmanager","No sound object!?")},support:function(){return!0},format:function(){return"mp3"},addToPlaylist:function(a){d.push(a);return d},clearPlaylist:function(){return d=[]},playPlaylist:function(){g()},getOptions:function(){return b}}}();Recite.namespace("Audio.Download");
Recite.Audio.Download=function(){var g={prepareAudio:!1,playlist:!1,waitForAudioProcessing:!0};return{setOptions:function(e){g=Recite.Util.merge(g,e)},init:function(){},play:function(e){Recite.Player.setPlayer(null);Recite.Debug.log("Recite.Audio.Download","PLAY");window.location.href=e+"&download=true"},stop:function(){},rewind:function(){},forward:function(){},support:function(){return!0},format:function(){return"mp3"},getOptions:function(){return g}}}();Recite.namespace("Style");
Recite.Style=function(){function g(){var a="",c=Recite.Preferences.get("style"),d=Recite.Preferences.get("textMode.enabled");null!==c.marginSize&&d&&(a+="#recite-wrapper, #recite-dictionary * { padding: 0 "+c.marginSize+"; } body { padding-left: 0 !important; padding-right: 0 !important; margin-left: 0 !important; margin-right: 0 !important; } ",c.marginSize!==b.marginSize&&(b.marginSize=c.marginSize,Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Style",event:"margin: "+c.marginSize})));
null!==c.font.face&&(a+="#recite-wrapper, #recite-wrapper *, #recite-dictionary * { font-family: "+c.font.face+" !important; }",c.font.face!==b.font.face&&(b.font.face=c.font.face,Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Style",event:"font-family: "+c.font.face})));null!==c.font.size&&(a+=".recite-ele, #recite-dictionary * { font-size: "+c.font.size+"% !important; } ",c.font.size!==b.font.size&&(b.font.size=c.font.size,Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Style",
event:"font-size: "+c.font.size+"%"})));null!==c.font.color&&(a+="#recite-wrapper, #recite-wrapper *, #recite-dictionary * { color: "+c.font.color+" !important; text-shadow: none !important; }",a+="*::-webkit-input-placeholder { color: "+c.font.color+" !important; }",a+="*:-moz-placeholder { color: "+c.font.color+" !important; }",a+="*::-moz-placeholder { color: "+c.font.color+" !important; }",a+="*::-ms-input-placeholder { color: "+c.font.color+" !important; }",a+="input:not(.recite-colorpicker) { color: "+
c.font.color+" !important; }",a+="textarea { color: "+c.font.color+" !important; }",a+="select { color: "+c.font.color+" !important; }",a+="button { color: "+c.font.color+" !important; }",c.font.color!==b.font.color&&(b.font.color=c.font.color,Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Style",event:"font-colour: "+c.font.color})));null!==c.link.color&&(a+="#recite-wrapper a { color: "+c.link.color+" !important; } ",c.link.color!==b.link.color&&(b.link.color=c.link.color,Recite.Event.publish("Recite:ModuleEvent",
{name:"Recite.Style",event:"link-colour: "+c.link.color})));null!==c.backgroundColor&&(a+="#recite-wrapper *:not(.recite-ignore-styles-background), #recite-dictionary, #recite-dictionary * { background: "+c.backgroundColor+" !important; box-shadow: none !important; }",a+="body, html, #recite-wrapper { background: "+c.backgroundColor+" !important; }",a+=":before {background: "+c.backgroundColor+" !important}",a+="input:not(.recite-colorpicker) { background: "+c.backgroundColor+" !important; }",a+=
"textarea { background: "+c.backgroundColor+" !important; }",a+="select { background: "+c.backgroundColor+" !important; }",a+="button { background: "+c.backgroundColor+" !important; }",c.backgroundColor!==b.backgroundColor&&(b.backgroundColor=c.backgroundColor,Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Style",event:"background-colour: "+c.backgroundColor})));null!==c.ruler.color&&c.ruler.color!==b.ruler.color&&(b.ruler.color=c.ruler.color,Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Style",
event:"ruler-colour: "+c.ruler.color}));null!==c.screenMask.color&&c.screenMask.color!==b.screenMask.color&&(b.screenMask.color=c.screenMask.color,Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Style",event:"screenMask-colour: "+c.screenMask.color}));if(null!==c.zoom&&void 0!==c.zoom){var d=parseInt(c.zoom),e=d/100,a=a+("#recite-wrapper {  -moz-transform: scale( "+e+" , "+e+" ); /* Moz-browsers */  zoom: "+e+"; /* Other non-webkit browsers */  zoom: "+d+"%; /* Webkit browsers*/ } ");c.zoom!==
b.zoom&&(b.zoom=c.zoom,Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Style",event:"zoom: "+c.zoom}))}null!==c.lineHeight&&(a+=".recite-ele, #recite-dictionary * { line-height: "+c.lineHeight+"% !important; } ",c.lineHeight!==b.lineHeight&&(b.lineHeight=c.lineHeight,Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Style",event:"line-height: "+c.lineHeight+"%"})));null!==c.charSpacing&&(a+=".recite-ele, #recite-dictionary * { letter-spacing: "+c.charSpacing+"px !important; } ",c.charSpacing!==
b.charSpacing&&(b.charSpacing=c.charSpacing,Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Style",event:"character-spacing: "+c.charSpacing+"px"})));return a}function e(){var a;a=window.document;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];a=b;if(a.styleSheet)a.styleSheet.cssText=g();else{for(b=window.document.createTextNode(g());a.hasChildNodes();)a.removeChild(a.lastChild);
a.appendChild(b)}Recite.Event.publish("Style:updated",{origin:"Recite.Style"})}var d={preserve_background_images:!1},b={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(){e()});Recite.Event.subscribe("Preferences:set",function(){e()});Recite.Event.subscribe("Preferences:reset",function(){e()});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 d=document.createElement("div");d.id="recite-wrapper";Recite.Util.each(a,function(a,b){"true"!==b.getAttribute("data-recite-skipwrap")&&(b.parentNode.removeChild(b),d.appendChild(b))});b.appendChild(d)});return{setOptions:function(a){d=Recite.Util.merge(d,a)},getOptions:function(){return d},update:e}}();Recite.namespace("Ruler");
Recite.Ruler=function(){function g(){Recite.Preferences.get("style.ruler.enabled")?Recite.Ruler.enable():Recite.Ruler.disable();b()}function e(b){var c=Recite.Sizzle("#recite-ruler",b);if(0==c.length){var e=Recite.Sizzle("body",b)[0],c=b.createElement("div");c.id="recite-ruler";c.style.backgroundColor=d();c.style.opacity=a.opacity;e.appendChild(c)}else c=c[0];return c}function d(){var b=Recite.Preferences.get("style.ruler.color");if(null==b||"null"==b||""==b.trim())b=a.backgroundColor;return b}function b(b){if(a.enabled){clearTimeout(a.timeout);
Recite.Util.unSetIFramePointerEvents();a.timeout=setTimeout(function(){Recite.Util.reSetIFramePointerEvents()},a.intent);var c=e(document);switch(a.mode){case "bottom":void 0!=b&&(c.style.bottom=0,c.style.top=b.screenY+a.modes.bottom.yOffset+"px");break;case "top":void 0!=b&&(c.style.top=0,c.style.height=b.screenY+a.modes.top.yOffset+"px");break;case "bar":void 0!=b&&(c.style.bottom="auto",c.style.top=b.screenY+a.modes.bar.yOffset+"px"),c.style.height=a.modes.bar.height+"px"}c.style.backgroundColor=
d();c.style.opacity=a.opacity}}var a={enabled:!1,mode:"bar",backgroundColor:"#000",opacity:1,modes:{top:{yOffset:-80},bottom:{yOffset:-80},bar:{yOffset:-80,height:160}},timeout:null,intent:200},c=null;Recite.Event.subscribe("Preferences:load",g);Recite.Event.subscribe("Preferences:set",g);Recite.Event.subscribe("Preferences:reset",g);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(!a.enabled){Recite.Debug.log("Recite.Ruler","Enabled ruler");Recite.PlayerControls.disable();Recite.Player.stop();Recite.ScreenMask.disable();Recite.Magnifier.disable();var d=Recite.Sizzle("body",document)[0];e(document);if(null==c){var g=Recite.Sizzle("iframe");c=[];Recite.Util.each(g,function(a,b){c.push({frame:b,state:void 0==b.style.pointerEvents?"all":b.style.pointerEvents})})}Recite.Util.unSetIFramePointerEvents();
Recite.DomEvent.add(d,"mousemove",b);a.enabled=!0;Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Ruler",event:"enable"})}},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);var c=Recite.Sizzle("body",document)[0];Recite.DomEvent.remove(c,"mousemove",b);c=e(document);c.parentNode.removeChild(c);a.enabled=!1;Recite.Event.publish("Recite:ModuleEvent",
{name:"Recite.Ruler",event:"disable"});Recite.Event.publish("Recite.Dom.Observor:change")}},isEnabled:function(){return a.enabled}}}();Recite.namespace("ScreenMask");
Recite.ScreenMask=function(){function g(){Recite.Preferences.get("style.screenMask.enabled")?Recite.ScreenMask.enable():Recite.ScreenMask.disable();d()}function e(c){var d=Recite.Sizzle("#recite-screen-mask-top",c),e=Recite.Sizzle("#recite-screen-mask-bottom",c);if(0==d.length){var g=Recite.Sizzle("body",c)[0],d=c.createElement("div");d.id="recite-screen-mask-top";d.style.backgroundColor=b();d.style.opacity=a.opacity;g.appendChild(d)}else d=d[0];0==e.length?(g=Recite.Sizzle("body",c)[0],e=c.createElement("div"),
e.id="recite-screen-mask-bottom",e.style.backgroundColor=b(),e.style.opacity=a.opacity,g.appendChild(e)):e=e[0];return{top:d,bottom:e}}function d(c){clearTimeout(a.timeout);Recite.Util.unSetIFramePointerEvents();a.timeout=setTimeout(function(){Recite.Util.reSetIFramePointerEvents()},a.intent);var d=e(document);if(a.enabled){var g=a.height/2;if(void 0!=c){var j=c.clientY+a.yOffset,c=j+g,g=j-g;d.top.style.height=(0<g?g:0)+"px";d.bottom.style.top=(0<c?c:0)+"px"}d.top.style.backgroundColor=b();d.bottom.style.backgroundColor=
b();d.top.style.opacity=a.opacity;d.bottom.style.opacity=a.opacity}}function b(){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};Recite.Event.subscribe("Preferences:load",g);Recite.Event.subscribe("Preferences:set",g);Recite.Event.subscribe("Preferences:reset",g);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(!a.enabled){Recite.Debug.log("Recite.ScreenMask","Enabled ScreenMask");Recite.PlayerControls.disable();Recite.Player.stop();Recite.Ruler.disable();Recite.Magnifier.disable();var b=Recite.Sizzle("body",document)[0];e(document);Recite.Util.unSetIFramePointerEvents();Recite.DomEvent.add(b,"mousemove",d);a.enabled=!0;Recite.Event.publish("Recite:ModuleEvent",
{name:"Recite.ScreenMask",event:"enable"})}},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 b=Recite.Sizzle("body",document)[0];Recite.DomEvent.remove(b,"mousemove",d);var b=e(document),f=b.top.parentNode;f.removeChild(b.top);f.removeChild(b.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}}}();Recite.namespace("Browser");
Recite.Browser=function(){function g(){b=e(i)||"unknown browser";a=d(navigator.userAgent)||d(navigator.appVersion)||"unknown version";c=e(j)||"unknown OS"}function e(a){for(var b=0;b<a.length;b++){var c=a[b].string,d=a[b].prop;f=a[b].versionSearch||a[b].identity;if(c){if(-1!==c.indexOf(a[b].subString))return a[b].subString}else if(d)return a[b].subString}return!1}function d(a){var b=a.indexOf(f);return-1===b?!1:parseFloat(a.substring(b+f.length+1))}var b,a,c,f,i=[{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"}],j=[{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(){g();return b},getVersion:function(){g();return a},getOS:function(){g();return c},getData:function(){g();return{name:b,version:a,OS:c}},isMobile:function(){return"Android"===
Recite.Browser.getOS()||"iPhone"===Recite.Browser.getOS()||"iPad"===Recite.Browser.getOS()?!0:!1}}}();Recite.namespace("Selection");
Recite.Selection=function(){function g(){var d="";"undefined"!==typeof window.getSelection?d=window.getSelection().toString():"undefined"!==typeof document.selection&&"Text"===document.selection.type&&(d=document.selection.createRange().text);return d.replace(/^\s+|\s+$/g,"")}var e={playOnSelection:!1};Recite.DomEvent.add(document,"mouseup",function(){var d=g();0<d.length&&(Recite.Event.publish("Selection:textSelection",{method:"selection",text:d}),e.playOnSelection&&Recite.Player.play(d))});return{setOptions:function(d){e=
Recite.Util.merge(e,d)},getOptions:function(){return e},getTextSelection:g}}();Recite.namespace("AudioDownload");
Recite.AudioDownload=function(){function g(a){Recite.Player.stop();Recite.Gui.Notification.show("Your download file is being created.  It will be automatically downloaded once created",{read:!1});Recite.Player.setPlayer(Recite.Audio.Download);Recite.PlayerDispatcher.dispatch(a);Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Audio",event:"download"});d=null}var e={enabled:!0},d=null,b=!1;Recite.Event.subscribe("Selection:textSelection",function(a,c){"selection"===c.method&&e.enabled&&(b&&
(g(c.text),b=!1),d=c.text)});return{setOptions:function(a){e=Recite.Util.merge(e,a)},getOptions:function(){return e},getEnabled:function(){return e.enabled},generateDownload:function(a){e.enabled?(a||(a=d),a?g(a):(Recite.Gui.Notification.show("Please select some text.",{read:!0}),b=!0)):Recite.Gui.Notification.show("MP3 download functionality currently disabled",{read:!0})},init:function(){}}}();Recite.namespace("TextMode");
Recite.TextMode=function(){function g(b,a){Recite.Util.each(b.styleSheets,function(b,d){if(a){if("true"!==(d.ownerNode||d.owningElement).getAttribute("data-recite-skip"))d.prevState=d.disabled,d.disabled=!0}else"undefined"!==typeof d.prevState?(d.disabled=d.prevState,d.prevState=null):d.disabled=!1})}var e={disableInlineStyles:!0,disableStylesheets:!0,hideElements:["img","iframe","object","embed"]},d=[];Recite.Event.subscribe("Preferences:load",function(){if(Recite.Preferences.get("textMode.enabled")){var b=
Recite.Sizzle("#recite-wrapper")[0];Recite.TextMode.transform(b)}});Recite.Event.subscribe("Preferences:set",function(){var 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){e=
Recite.Util.merge(e,b)},transform:function(b){if(!(0<=Recite.Util.inArray(b,d))){d.push(b);var a=b.ownerDocument;e.disableStylesheets&&g(a,!0);a=Recite.Sizzle("*",b);e.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))});Recite.Util.each(e.hideElements,function(a,d){var e=Recite.Sizzle(d,b);Recite.Util.each(e,function(a,b){b.setAttribute("data-recite-restore-display",
Recite.Dom.getStyle(b,"display"));b.style.display="none"})});Recite.Event.publish("TextMode:enabled");Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.TextMode",event:"enable"})}},restore:function(b){var a=Recite.Util.inArray(b,d);if(!(0>a)){var c=b.ownerDocument;e.disableStylesheets&&g(c,!1);c=Recite.Sizzle("*",b);e.disableInlineStyles&&Recite.Util.each(c,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(e.hideElements,function(a,c){var d=Recite.Sizzle(c,b);Recite.Util.each(d,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))})});d.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 g(){Recite.Preferences.get("dictionary.enabled")?Recite.Dictionary.enable():Recite.Dictionary.disable()}function e(a){var c=Recite.Sizzle("#recite-dictionary-inner-words",document)[0];c.innerHTML=a?"<strong>Recite English Dictionary</strong> <br /><br />"+a:"<strong>Recite English Dictionary</strong> <br /> Select one or more words to get definition";a=Recite.Parser.Html.parse(c);Recite.PlayerControls.invoke(a);Recite.DomEvent.add(Recite.Sizzle(".recite-dictionary-synonym"),
"click",function(a){b({text:a.target.innerHTML})})}function d(a,c){if("selection"===c.method){if(!f||""===c.text||!1===c.text||c.text===i)return!1;b(c);i=c.text}return!0}function b(a){e("Getting definition...");a=a.text.replace(/ /g,",");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:function(a){e("");var b=
"";Recite.Util.each(a,function(a,c){b+="<strong>"+unescape(c.word)+"</strong><br />"+unescape(c.definition)+"<br /><br />";c.synonyms&&(b+="<strong>Synonyms</strong><br />",Recite.Util.each(c.synonyms,function(a,c){b+="<span class='recite-dictionary-synonym'>"+unescape(c)+"</span>,<br />"}),b+="<hr />")});e(b)}})}var a={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>'},
c=null,f=!1,i=null;Recite.Event.subscribe("Recite.disable",function(){Recite.Dictionary.disable()});Recite.Event.subscribe("Preferences:load",g);Recite.Event.subscribe("Preferences:set",g);Recite.Event.subscribe("Preferences:reset",g);return{enable:function(){if(!f){var b=document.createElement("div");b.id="recite-dictionary";b.setAttribute("data-recite-skip","true");b.innerHTML=a.content;document.body.appendChild(b);b.className="recite-dictionary-"+a.position;"header"!==a.position&&(b.style.width=
a.dimensions.width,b.style.height=a.dimensions.height);(function(){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 b=Recite.Sizzle("#recite-dictionary-inner",document)[0],c=Recite.Dom.getWindowDimensions(window).height-a.offsets.height;b.style.height=c+"px";b.style.overflow="auto";Recite.Event.publish("Recite:ModuleEvent",
{name:"Recite.Dictionary",event:"enable"})}else b=Recite.Sizzle("#recite-dictionary-inner",document)[0],b.style.height="",b.style.overflow="hidden",Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Dictionary",event:"disable"})});e()}).call();c=Recite.Event.subscribe("Selection:textSelection",d);f=!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(){f&&(Recite.Sizzle("#recite-dictionary",document)[0].style.display="none",Recite.Event.unsubscribe(c),f=!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 f},
setOptions:function(b){a=Recite.Util.merge(a,b)}}}();Recite.namespace("Docreader");
Recite.Docreader=function(){function g(b){b.setAttribute("href",a.endpoint+encodeURI(e(b.getAttribute("href"))))}function e(a){var b=document.createElement("span");b.innerHTML='<a href="'+a.split("&").join("&amp;").split('"').join("&quot;").split("<").join("&lt;")+'">&nbsp;</a>';return b.firstChild.href}var d=[],b=["pdf"],a={enabled:!0,selector:"docreader",urlMatches:[],endpoint:"http://docreader.reciteme.com/doc/url?q="};return{setOptions:function(b){a=Recite.Util.merge(a,b)},enabled:function(){return a.enabled},setEnabled:function(b){a.enabled=
b},load:function(){if(a.enabled){d=document.getElementsByTagName("a");for(var c=0;c<d.length;c++){var e=d[c];if(null!==e.getAttribute("href")){for(var i=e,j=0;j<a.urlMatches.length;j++)null!==i.getAttribute("href").match(a.urlMatches[j])&&g(i);for(var i=e,j=i.getAttribute("href").split(".").pop(),h=0;h<b.length;h++)j===b[h]&&g(i);(e.className===a.selector||e.getAttribute("id")===a.selector)&&g(e)}}}}}}();Recite.namespace("Keyboard");
Recite.Keyboard=function(){function g(){Recite.Debug.log("Recite.Keyboard","Binding keyboard keys");e.enabled&&Recite.Util.each(e.key_bindings,function(d,b){Recite.Key(d,b)})}var e={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",g);return{setOptions:function(d){e=Recite.Util.merge(e,d)},enabled:function(){return e.enabled},setEnabled:function(d){e.enabled=d},load:function(){g()}}}();Recite.namespace("Tracker");
Recite.Tracker=function(){var g={enabled:!0};return{setOptions:function(e){g=Recite.Util.merge(g,e);Recite.Tracker.Api.setOptions(g.Api);Recite.Tracker.Ga.setOptions(g.Ga)},track:function(e,d){Recite.Debug.log("Recite.Tracker",e);Recite.Tracker.Api.track(e,d);Recite.Tracker.Ga.track(e,d)}}}();Recite.namespace("Tracker.Ga");
Recite.Tracker.Ga=function(){var g={enabled:!1,trackerName:void 0};return{setOptions:function(e){g=Recite.Util.merge(g,e)},track:function(e,d){g.enabled?(window.hasOwnProperty=window.hasOwnProperty||Object.prototype.hasOwnProperty,window.hasOwnProperty("GoogleAnalyticsObject")&&"function"==typeof window[window.GoogleAnalyticsObject]&&(Recite.Debug.log("Recite.Tracker.Ga",e),window[window.GoogleAnalyticsObject](void 0==g.trackerName?"send":g.trackerName+".send","event","ReciteMe",e+": "+d))):Recite.Debug.log("Recite.Tracker.Ga",
"Not enabled, ignoring")}}}();Recite.namespace("Tracker.Api");
Recite.Tracker.Api=function(){var g={enabled:!0};return{setOptions:function(e){g=Recite.Util.merge(g,e)},track:function(e,d){if(g.enabled){Recite.Debug.log("Recite.Tracker.Api",e);var b={};b.type=e;b.value=d;b.uri=window.location.toString();b.referrer=window.document.referrer||null;Recite.Api.call("tracking","POST",{data:{events:[b],system_info:{type:"browser",recite_version:"3.2.21",screenWidth:window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth,screenHeight:window.innerHeight||
document.documentElement.clientHeight||document.body.clientHeight}},success:function(){Recite.Debug.log("Recite.Tracker.Api","Tracked event type: "+e)}})}}}}();Recite.namespace("Language.Translate");
Recite.Language.Translate=function(){function g(){var b=Recite.Dom.getLanguage(a);null==b&&(b="en");null==c.sourceLanguage&&(c.sourceLanguage=b);null==c.workingPageLanguage&&(c.workingPageLanguage=b)}function e(){var a=Recite.Preferences.get("language");null==c.sourceLanguage&&g();null!==a?(Recite.Language.Translate.translate(Recite.Sizzle("#recite-wrapper")[0],a),Recite.Language.Translate.translate(Recite.Sizzle("#recite-header")[0],a)):(Recite.Language.Translate.restore(),Recite.Language.Translate.setWorkingPageLaguage(a));
if(null!==a)var b=Recite.Event.subscribe("Translate:complete",function(){Recite.Language.Translate.setWorkingPageLaguage(a);Recite.Event.unsubscribe(b)})}var d=[],b=[],a=Recite.Sizzle("html")[0];Text.prototype.originalContent=null;Text.prototype.originalLang=null;Text.prototype.originalParentLang=null;var c={sourceLanguage:null,workingPageLanguage:null,maxChunkSize:100,maxCharacterLimit:3E3,disallowedTags:["SCRIPT","STYLE"],translateableAttributes:["title","alt","placeholder"],translateIgnore:"data-recite-translate-skip"};
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);if(void 0==b.getAttribute("lang")){var e=Recite.Dom.getLanguage(b.textContent),e=null===e?c.sourceLanguage:e;b.setAttribute("lang",e)}Recite.Language.Translate.translate(b,
d)})});Recite.Event.subscribe("Preferences:load",e);Recite.Event.subscribe("Preferences:set",e);Recite.Event.subscribe("Preferences:reset",e);return{init:function(){g()},setOptions:function(a){null!=a.sourceLanguage&&(a.workingPageLanguage=a.sourceLanguage);c=Recite.Util.merge(c,a)},getOptions:function(){return c},translate:function(a,e){if(Recite.Dom.getLanguage(a)==e&&(e===c.sourceLanguage||0===e.indexOf(c.sourceLanguage)))Recite.Language.Translate.restore();else{Recite.Event.publish("Translate:begin");
var a=Recite.Util.isArray(a)?a:[a],g=[],h=[],n=e,k={};Recite.Util.each(a,function(a,b){var d=null;for("undefined"!=typeof b&&(d=b.childNodes[0]);null!==d;){var e=!1;if("undefined"!=typeof d.getAttribute&&("true"===d.getAttribute("data-recite-skip")||null!=c.translateIgnore&&void 0!=d.getAttribute(c.translateIgnore)))e=!0;if(!e&&3===d.nodeType&&0<d.nodeValue.trim().length){if("undefined"===typeof d.originalContent||null===d.originalContent){d.originalContent=d.nodeValue;var f=Recite.Dom.getLanguage(d);
d.originalLang=null!==f?f:c.sourceLanguage;d.originalParentLang=d.parentNode.lang}d.originalLang===n||d.originalLang.split("-")[0]===n?(d.nodeValue=d.originalContent,d.parentNode.lang=d.originalParentLang||null):(f=d.originalLang.split("-")[0],"undefined"===typeof k[f]&&(k[f]=[]),k[f].push(d))}if(d.hasChildNodes()&&0>Recite.Util.inArray(d.tagName,c.disallowedTags)&&!e)d=d.firstChild;else{for(;null===d.nextSibling&&d!==b;)d=d.parentNode;d=d===b?null:d.nextSibling}}});g=k;var p=e,l={};0!==c.translateableAttributes.length&&
Recite.Util.each(a,function(a,b){var d=null;for("undefined"!=typeof b&&(d=b.childNodes[0]);null!==d;){d.affectedAttributes=[];var e=!1;if("undefined"!==typeof d.attributes&&null!==d.attributes){for(var f=0;f<c.translateableAttributes.length;f++)for(a=0;a<d.attributes.length;a++)if(d.attributes[a].nodeName===c.translateableAttributes[f]){d.affectedAttributes.push(d.attributes[a].nodeName);"undefined"===typeof d.originalContent&&(d.originalContent=[]);if("undefined"===typeof d.originalContent[c.translateableAttributes[f]]||
null===d.originalContent[c.translateableAttributes[f]])d.originalContent[c.translateableAttributes[f]]=d.getAttribute(c.translateableAttributes[f]),d.originalLang=null!==Recite.Dom.getLanguage(d)?Recite.Dom.getLanguage(d):c.sourceLanguage,d.originalParentLang=d.parentNode.lang;if(d.originalLang===p||"string"===typeof d.originalLang&&d.originalLang.split("-")[0]===p)d.setAttribute(d.attributes[a].nodeName,d.originalContent[c.translateableAttributes[f]]),d.parentNode.lang=d.originalParentLang||null,
e=!0}!e&&"undefined"!==typeof d.originalLang&&(e=d.originalLang.split("-")[0],"undefined"===typeof l[e]&&(l[e]=[]),l[e].push(d))}if(d.hasChildNodes()&&0>Recite.Util.inArray(d.tagName,c.disallowedTags))d=d.firstChild;else{for(;null===d.nextSibling&&d!==b;)d=d.parentNode;d=d===b?null:d.nextSibling}}});h=l;for(var u in h){var m=[];Recite.Util.each(h[u],function(a,b){for(var c=0;c<b.affectedAttributes.length;c++)m.push(b.originalContent[b.affectedAttributes[c]])});var r=u,q=-1!==r.indexOf("-")?r.substring(0,
r.indexOf("-")):r,s=-1!==e.indexOf("-")?e.substring(0,e.indexOf("-")):e;"zh"!==q&&(r=q);"zh"!==s&&(e=s);if(r!=e){var w={target:e,source:r,text:m};Recite.Api.call("translate","POST",{data:w,contentType:"application/json",success:function(a){Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Language",event:"translate:"+e});for(var c in h)Recite.Util.each(h[c],function(c,d){for(var e=0;e<d.affectedAttributes.length;e++)d.setAttribute(d.affectedAttributes[e],a[0]),a.shift();b.push(d)})}})}}for(u in g){var t=
[],C=0,y=[];Recite.Util.each(g[u],function(a,b){if(null!==c.maxChunkSize&&y.length>=c.maxChunkSize||null!==c.maxCharacterLimit&&C>=c.maxCharacters)t.push(y),y=[],C=0;y.push(b.originalContent);C+=b.originalContent.length});t.push(y);Recite.Util.each(t,function(a,b){var f=u,h=-1!==f.indexOf("-")?f.substring(0,f.indexOf("-")):f,k=-1!==e.indexOf("-")?e.substring(0,e.indexOf("-")):e;"zh"!==h&&(f=h);"zh"!==k&&(e=k);f!=e&&(w={target:e,source:f,text:b},Recite.Api.call("translate","POST",{data:w,contentType:"application/json",
success:function(b){Recite.Util.each(b,function(b,h){var k=g[f][a*c.maxChunkSize+b];3===k.nodeType?(k.nodeValue=h,k.parentNode.lang=e):(k.innerHTML=h,k.lang=e);d.push(k)});Recite.Event.publish("Translate:complete");Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Language",event:"translate:"+e})}}))})}}},restore:function(){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.nodeValue=b.originalContent;b.parentNode.lang=null!==b.originalParentLang?b.originalParentLang:c.sourceLanguage}),Recite.Util.each(b,function(a,b){for(a=0;a<b.attributes.length;a++)for(var d=0;d<c.translateableAttributes.length;d++)c.translateableAttributes[d]===b.attributes[a].nodeName&&(b.setAttribute(b.attributes[a].nodeName,b.originalContent[b.attributes[a].nodeName]),b.lang=null!==b.originalLang?b.originalLang:c.sourceLanguage)}),d=[],b=[],Recite.Event.publish("Translate:restore_complete"))},
setWorkingPageLaguage:function(b){if(null!=b){if(null==a.originalLang||"undefined"==typeof a.originalLang)a.originalLang=Recite.Dom.getLanguage(a);"undefined"!=typeof a.getAttribute&&a.setAttribute("lang",b);c.workingPageLanguage=b}},getWorkingPageLanguage:function(){return c.workingPageLanguage},resetWorkingPageLanguage:function(){null!==a.originalLang&&"undefined"!==typeof a.originalLang&&a.setAttribute("lang",a.originalLang);c.workingPageLanguage=c.sourceLanguage},hasActiveWorkingPageLanguage:function(){return c.workingPageLanguage!=
c.sourceLanguage?!0:!1}}}();Recite.namespace("Gui.Notification");
Recite.Gui.Notification=function(){function g(b){try{document.body.removeChild(b),a.splice(a.indexOf(b.id),1)}catch(c){}}function e(a){var b=[];null==a?b=d():b.push(a);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.Util.each(b,function(a,b){"object"==typeof b&&Recite.Language.Translate.translate(b,c)})}function d(){var a=Recite.Sizzle(".recite-notification");
return 1<a.length?a:[]}var b={position:"top-right",timeout:4E3,read:!1,elementTopMgn:5,suppress:!1,localize:!0},a=[],c=0;Recite.Event.subscribe("Translate:restore_complete",e);Recite.Event.subscribe("Translate:complete",e);return{show:function(d,i){if(!b.suppress&&!Recite.Browser.isMobile()){Recite.Gui.Notification.setOptions(i);var j=document.createElement("div");j.innerHTML=d;j.id=c;j.content=d;c++;var h=!1;Recite.Util.each(a,function(a,b){b.content==j.content&&(h=!0)});h||(a.push(j),document.body.appendChild(j));
j.className="recite-notification recite-notification-"+b.position;var n=Recite.Sizzle(".recite-notification");1<n.length&&(n=n[n.length-2],n=parseInt(n.offsetTop+n.offsetHeight+b.elementTopMgn,10),j.style.top=n+"px");j.style.display="block";j.setAttribute("lang","en");b.timeout&&setTimeout(function(){g(j)},b.timeout);if(b.read)try{Recite.Player.play(j.innerHTML)}catch(k){}b.localize&&e(j);Recite.DomEvent.add(j,"click",function(){g(j)})}},destroy:function(a){g(a)},setOptions:function(a){b=Recite.Util.merge(b,
a)},getActive:function(){return d()},localizeActive:function(){e()}}}();Recite.namespace("Gui.Modal");
Recite.Gui.Modal=function(){function g(){j||(Recite.DomEvent.add(Recite.Sizzle("#recite-wrapper")[0],"click",function(){Recite.Gui.Modal.hide()}),Recite.Key("enter",function(){null!=b&&document.activeElement.click()}),Recite.Key("esc",function(){null!=b&&i.click()}),j=!0)}function e(){if(null!=b){b.parentNode.removeChild(b);b=null;var a=Recite.Sizzle("#recite-wrapper")[0];a.setAttribute("class",a.getAttribute("class").replace(" recite-fade",""))}}function d(a){var c=[];null==a?null!=b&&c.push(b):
c.push(a);if(0!=c.length){var d=null;Recite.Language.Translate.hasActiveWorkingPageLanguage()&&(d=Recite.Language.Translate.getWorkingPageLanguage());null==d&&(d=Recite.Dom.getLanguage(Recite.Sizzle("html")[0]));null!==d&&Recite.Util.each(c,function(a,b){"object"==typeof b&&Recite.Language.Translate.translate(b,d)})}}var b=null,a=null,c=null,f=null,i=null,j=!1;Recite.Event.subscribe("Translate:restore_complete",d);Recite.Event.subscribe("Translate:complete",d);return{init:function(){g()},show:function(h,
j,k,p,l,u){g();e();if(null==b){var m=document.createElement("div");m.id="recite-modal";b=m;var r=document.createElement("div");r.id="recite-modal-header";m.appendChild(r);a=r;r=document.createElement("div");r.id="recite-modal-content";m.appendChild(r);c=r;r=document.createElement("div");r.id="recite-modal-buttons";m.appendChild(r);var q=document.createElement("a");q.id="recite-modal-button-ok";q.className="recite-modal-button";q.setAttribute("tabindex",9001);q.innerHTML="OK";r.appendChild(q);f=q;
q=document.createElement("a");q.id="recite-modal-button-cancel";q.className="recite-modal-button";q.setAttribute("tabindex",9002);q.innerHTML="Cancel";r.appendChild(q);i=q;document.body.appendChild(m)}a.innerHTML=h;c.innerHTML=j;null!=k&&(f.innerHTML=k);null!=p&&(i.innerHTML=p);Recite.DomEvent.add(f,"click",function(){e();l.call()});Recite.DomEvent.add(i,"click",function(){e();u.call()});b.style.display="block";b.setAttribute("lang","en");f.focus();h=Recite.Sizzle("#recite-wrapper")[0];h.setAttribute("class",
h.getAttribute("class")+" recite-fade");d(b)},hide:function(){e()},localizeActive:function(){d()}}}();Recite.namespace("Magnifier");
Recite.Magnifier=function(){var g,e;function d(){Recite.Preferences.get("magnifier.enabled")&&!m?Recite.Magnifier.enable():m&&!Recite.Preferences.get("magnifier.enabled")&&Recite.Magnifier.disable()}function b(){var a=document.documentElement.scrollTop||document.body.scrollTop;Recite.Sizzle("#recite-header")[0].style.top=a-60+"px"}function a(){if(r||!m)return!1;Recite.Debug.log("Recite.Magnifier","Rendering Magnifier ...");r=!0;if(q){h=document.createElement("div");h.className=p;h.id=p;n=document.createElement("div");
n.className=k;n.id=k;h.appendChild(n);var a=document.createElement("div");a.className=u;a.id=u;h.appendChild(a);document.body.appendChild(h)}var b=document.createElement("div");b.className=l;b.id=l;b.innerHTML+=Recite.Sizzle("body")[0].innerHTML;a=b.getElementsByClassName(p);Recite.Util.each(a,function(a,d){c(d,b)});c(Recite.Sizzle("#recite-header",b)[0],b);a=b.getElementsByTagName("script");Recite.Util.each(a,function(a,d){c(d,b)});b.style.visibility="hidden";b.style.top=y+"px";b.style.left=C+"px";
b.style.width=window.innerWidth+"px";b.style.height="auto";a=window.getComputedStyle(Recite.Sizzle("body")[0],null).getPropertyValue("padding-top");b.style.paddingTop=a;""!=Recite.Dom.getStyle(document.body,"background")&&(b.style.background=Recite.Dom.getStyle(document.body,"background"));n.appendChild(b);b.style.visibility="visible";j&&c(j,document);j=b;q&&(a=window.pageXOffset,h.style.top=window.pageYOffset+30+"px",h.style.left=a+30+"px",q=!1);r=!1}function c(a){try{a.parentNode.removeChild(a)}catch(b){Recite.Debug.log("Recite.Magnifier",
"Error "+b)}}function f(a,b){for(var c in b)a[c]=b[c];return a}var i={realtimeRender:!0,followMouse:!1,scale:2,allowHighlights:!1,cacheImages:!0},j=!1,h=!1,n=!1,k="magnifying_glass",p="magnifying_holder",l="magnifying_content",u="magnifying_handle",m=!1,r=!1,q=!0,s=null;e=g=0;var w={HTMLEvents:/^(?:load|unload|abort|error|select|change|submit|reset|focus|blur|resize|scroll)$/,MouseEvents:/^(?:click|hover|dblclick|mouse(?:down|up|over|move|out))$/},t={pointerX:0,pointerY:0,button:0,ctrlKey:!1,altKey:!1,
shiftKey:!1,metaKey:!1,bubbles:!0,cancelable:!0},C=100,y=100;Recite.Event.subscribe("Preferences:load",d);Recite.Event.subscribe("Preferences:set",d);Recite.Event.subscribe("Preferences:reset",d);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(!m){m=!0;Recite.Ruler.disable();Recite.ScreenMask.disable();a();
if(i.followMouse)document.onmousemove=function(a){var b=a.pageY-h.offsetHeight/2,c=a.pageX-h.offsetWidth/2,d=-(Math.abs(a.pageY)*i.scale)+h.offsetHeight-20,a=-(Math.abs(a.pageX)*i.scale)+h.offsetWidth;h.style.top=b+"px";h.style.left=c+"px";j.style.top=d+"px";j.style.left=a+"px"};else{var c=document.getElementById(p);document.getElementById(k);var d=document.getElementById(l);Recite.DomEvent.add(d,"mousedown",function(a){var b;b=[];var c=Recite.Dom.getIndex(h),d=Recite.Dom.getPath(a.target),c=d.indexOf(c);
d[c]-=1;var e=Recite.Dom.getPath(j.querySelector("#recite-wrapper")),g=Recite.Dom.getPath(document.querySelector("#recite-wrapper"));e[c]-=1;for(var i in e)-1>=g.indexOf(e[i])&&b.push(i);for(i 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=f(t,{}),d=a=null,l;for(l in w)if(w[l].test("mousedown")){d=l;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 m=document.createEventObject(),a=f(m,k);b.fireEvent("onmousedown",a)}}catch(n){Recite.Debug.log("Recite.Magnifier","Error "+n)}});Recite.DomEvent.add(c,
"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){g=a.pageX;e=a.pageY;if("true"==
h.getAttribute("data-drag")){var a=parseInt(h.getAttribute("data-dragOffsetLeft"))+(g-h.getAttribute("data-dragMouseLeft")),b=parseInt(h.getAttribute("data-dragOffsetTop"))+(e-h.getAttribute("data-dragMouseTop"));h.style.top=b+60+"px";h.style.left=a+"px";b=-(b*i.scale)-h.offsetHeight/2;a=-(a*i.scale)-h.offsetWidth/2;j.style.top=b+"px";j.style.left=a+"px";C=a;y=b}});Recite.DomEvent.add(window,"mouseup",function(){h.setAttribute("data-drag",!1)})}!0==i.realtimeRender&&(s=Recite.Event.subscribe("Recite.Dom.Observor:change",
a));if(i.allowHighlights){var n=!1;window.onkeydown=function(a){17==a.keyCode&&(h.style.borderColor="#FF9600",h.style.pointerEvents="none",j.style.pointerEvents="none",n=!0==n?!1:!0);if(192==a.keyCode){var a=g,b=e,c=h;c.setAttribute("data-dragMouseTop",b);c.setAttribute("data-dragMouseLeft",a);c.setAttribute("data-dragOffsetTop",b);c.setAttribute("data-dragOffsetLeft",a);a=g-h.offsetWidth/2;b=e-h.offsetHeight/2;a=parseInt(h.getAttribute("data-dragOffsetLeft"))+(a-h.getAttribute("data-dragMouseLeft"));
b=parseInt(h.getAttribute("data-dragOffsetTop"))+(b-h.getAttribute("data-dragMouseTop"));h.style.top=b+"px";h.style.left=a+"px";b=-(b*i.scale)-h.offsetHeight/2;a=-(a*i.scale)-h.offsetWidth/2;j.style.top=b+"px";j.style.left=a+"px";C=a;y=b}};window.onkeyup=function(a){!1==n&&17==a.keyCode&&(h.style.borderColor="#333333",h.style.pointerEvents="inherit",j.style.pointerEvents="inherit",n=!1)}}Recite.Debug.log("Recite.Magnifier","Magnifier enabled");Recite.Gui.Notification.show("Recite magnifier enabled");
Recite.Event.publish("Recite.Magnifier.enabled");Recite.Sizzle("#recite-header")[0].style.position="absolute";Recite.Sizzle("#recite-header")[0].style.top="-60px";b();Recite.DomEvent.add(window,"scroll",b);Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Magnifier",event:"enable"});c=[window];for(d=0;d<c.length;d++)Recite.DomEvent.add(c[d],"resize",a)}},disable:function(){if(m){m=!1;c(h,document);q=!0;Recite.Event.unsubscribe(s);Recite.Debug.log("Recite.Magnifier","Magnifier disabled");Recite.Gui.Notification.show("Recite magnifier disabled");
Recite.Event.publish("Recite.Magnifier.disabled");Recite.Sizzle("#recite-header")[0].style.position="fixed";Recite.Sizzle("#recite-header")[0].style.top="0px";Recite.DomEvent.remove(window,"scroll",b);Recite.Event.publish("Recite:ModuleEvent",{name:"Recite.Magnifier",event:"disable"});Recite.Preferences.set("magnifier.enabled",!1);for(var d=[window],e=0;e<d.length;e++)Recite.DomEvent.remove(d[e],"resize",a)}},toggle:function(){Recite.Magnifier.isEnabled()?Recite.Magnifier.disable():Recite.Magnifier.enable()},
isEnabled:function(){return m},setOptions:function(a){i=Recite.Util.merge(i,a)}}}();
