(function(){var GBS_HOST = "https://books.google.com/";var f,aa=[];function ba(a){return function(){return aa[a].apply(this,arguments)}}function ca(a,b){return aa[a]=b}function da(a){var b=0;return function(){return b>>0)+"_",e=0;return b}); ia("Symbol.iterator",function(a){if(a)return a;a=Symbol("Symbol.iterator");for(var b="Array Int8Array Uint8Array Uint8ClampedArray Int16Array Uint16Array Int32Array Uint32Array Float32Array Float64Array".split(" "),c=0;c=e}});ia("String.prototype.startsWith",function(a){return a?a:function(b,c){var d=Ma(this,b,"startsWith"),e=d.length,g=b.length;c=Math.max(0,Math.min(c|0,d.length));for(var h=0;h=g}}); ia("Number.isFinite",function(a){return a?a:function(b){return"number"!==typeof b?!1:!isNaN(b)&&Infinity!==b&&-Infinity!==b}});ia("String.prototype.repeat",function(a){return a?a:function(b){var c=Ma(this,null,"repeat");if(0>b||1342177279>>=1)c+=c;return d}}); function Na(a,b){a instanceof String&&(a+="");var c=0,d=!1,e={next:function(){if(!d&&cc&&(c=Math.max(c+e,0));c>>0),Xa=0;function Ya(a,b,c){return a.call.apply(a.bind,arguments)}function Za(a,b,c){if(!a)throw Error();if(2c&&(c=Math.max(0,a.length+c));if("string"===typeof a)return"string"!==typeof b||1!=b.length?-1:a.lastIndexOf(b,c); for(;0<=c;c--)if(c in a&&a[c]===b)return c;return-1},v=Array.prototype.forEach?function(a,b,c){Array.prototype.forEach.call(a,b,c)}:function(a,b,c){for(var d=a.length,e="string"===typeof a?a.split(""):a,g=0;gb?null:"string"===typeof a?a.charAt(b):a[b]} function nb(a,b,c){for(var d=a.length,e="string"===typeof a?a.split(""):a,g=0;g=arguments.length?Array.prototype.slice.call(a,b):Array.prototype.slice.call(a,b,c)}function yb(a,b){a.sort(b||zb)} function zb(a,b){return a>b?1:ab&&Array.prototype.push.apply(a,a.splice(0,-b))}return a}function Db(a,b){return tb.apply([],kb(a,b))};function Eb(a){return"string"==typeof a.className?a.className:a.getAttribute&&a.getAttribute("class")||""}function Fb(a){return a.classList?a.classList:Eb(a).match(/\S+/g)||[]}function Gb(a,b){"string"==typeof a.className?a.className=b:a.setAttribute&&a.setAttribute("class",b)}function Hb(a,b){return a.classList?a.classList.contains(b):ob(Fb(a),b)}function w(a,b){if(a.classList)a.classList.add(b);else if(!Hb(a,b)){var c=Eb(a);Gb(a,c+(0")&&(a=a.replace(Zb,">"));-1!=a.indexOf('"')&&(a=a.replace($b,"""));-1!=a.indexOf("'")&&(a=a.replace(ac,"'"));-1!=a.indexOf("\x00")&&(a=a.replace(bc,"�"));return a}var Wb=/&/g,Yb=//g,$b=/"/g,ac=/'/g,bc=/\x00/g,Vb=/[\x00&<>"']/;function cc(a,b){return-1!=a.indexOf(b)} function dc(a,b){var c=0;a=Tb(String(a)).split(".");b=Tb(String(b)).split(".");for(var d=Math.max(a.length,b.length),e=0;0==c&&eb?1:0};function fc(){var a=q.navigator;return a&&(a=a.userAgent)?a:""}var gc,hc=q.navigator;gc=hc?hc.userAgentData||null:null;function ic(a){return Mb?gc?gc.brands.some(function(b){return(b=b.brand)&&cc(b,a)}):!1:!1}function z(a){return cc(fc(),a)};function jc(){return Mb?!!gc&&0parseFloat(Nc)){Mc=String(Pc);break a}}Mc=Nc}var Qc=Mc,Rc={};function Sc(a){return wc(Rc,a,function(){return 0<=dc(Qc,a)})}function Tc(a){return Number(Uc)>=a}var Vc; if(q.document&&A){var Wc=Lc();Vc=Wc?Wc:parseInt(Qc,10)||void 0}else Vc=void 0;var Uc=Vc;var Xc=A||Bc;function Yc(){return!0}function Zc(){return null}function $c(){}function ad(a){return a}function bd(a,b){function c(){}c.prototype=a.prototype;var d=new c;a.apply(d,Array.prototype.slice.call(arguments,1));return d}function cd(a){var b=!1,c;return function(){b||(c=a(),b=!0);return c}};function dd(a,b,c){for(var d in a)b.call(c,a[d],d,a)}function ed(a,b){for(var c in a)if(b.call(void 0,a[c],c,a))return!0;return!1}function fd(a){var b=[],c=0,d;for(d in a)b[c++]=d;return b}function gd(a,b){for(var c in a)if(a[c]==b)return!0;return!1}function hd(a,b){for(var c in a)if(b.call(void 0,a[c],c,a))return c}function id(){var a=jd,b;for(b in a)return!1;return!0}function kd(a,b,c){if(null!==a&&b in a)throw Error('The object already contains the key "'+b+'"');a[b]=c} function ld(a){var b={},c;for(c in a)b[c]=a[c];return b}var md="constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" ");function nd(a,b){for(var c,d,e=1;ea.length?"&":"")+encodeURIComponent(d)+"="+encodeURIComponent(String(h)))}}return b};function Fd(a){this.g=a}Fd.prototype.toString=function(){return this.g.toString()};Fd.prototype.Qd=!0;Fd.prototype.ld=function(){return this.g.toString()};function Gd(a){return a instanceof Fd&&a.constructor===Fd?a.g:"type_error:SafeUrl"}var Hd=/^data:(.*);base64,[a-z0-9+\/]+=*$/i,Id=/^(?:(?:https?|mailto|ftp):|[^:/?#]*(?:[/?#]|$))/i; function Jd(a){a instanceof Fd||(a="object"==typeof a&&a.Qd?a.ld():String(a),Id.test(a)?a=Kd(a):(a=String(a).replace(/(%0A|%0D)/g,""),a=a.match(Hd)?Kd(a):null));return a||Ld}var Md;try{new URL("s://g"),Md=!0}catch(a){Md=!1}var Nd=Md; function Od(a){if(a instanceof Fd)return a;a="object"==typeof a&&a.Qd?a.ld():String(a);a:{var b=a;if(Nd){try{var c=new URL(b)}catch(d){b="https:";break a}b=c.protocol}else b:{c=document.createElement("a");try{c.href=b}catch(d){b=void 0;break b}b=c.protocol;b=":"===b||""===b?"https:":b}}"javascript:"===b&&(a="about:invalid#zClosurez");return Kd(a)}var Pd={};function Kd(a){return new Fd(a,Pd)}var Ld=Kd("about:invalid#zClosurez");var Qd={};function Rd(a){this.g=a;this.Qd=!0}Rd.prototype.ld=function(){return this.g};Rd.prototype.toString=function(){return this.g.toString()};function Sd(a){return a instanceof Rd&&a.constructor===Rd?a.g:"type_error:SafeStyle"} function Td(a){var b="",c;for(c in a)if(Object.prototype.hasOwnProperty.call(a,c)){if(!/^[-_a-zA-Z0-9]+$/.test(c))throw Error("Name allows only [-_a-zA-Z0-9], got: "+c);var d=a[c];null!=d&&(d=Array.isArray(d)?d.map(Ud).join(" "):Ud(d),b+=c+":"+d+";")}return b?new Rd(b,Qd):Vd}var Vd=new Rd("",Qd); function Ud(a){if(a instanceof Fd)return'url("'+Gd(a).replace(/+~[\]()=\\^$|]+$/.test(c))throw Error("Selector allows only [-_a-zA-Z0-9#.:* ,>+~[\\]()=\\^$|] and strings, got: "+a);a:{for(var d={"(":")","[":"]"},e=[],g=0;g":(c=te(c),b+=">"+je(c).toString()+"");return le(b)} function ue(a){var b="";if(a)for(var c in a)if(Object.prototype.hasOwnProperty.call(a,c)){if(!pe.test(c))throw Error("");var d=a[c];if(null!=d){var e=c;if(d instanceof sd)d=vd(d);else if("style"==e.toLowerCase()){if(!Ua(d))throw Error("");d instanceof Rd||(d=Td(d));d=Sd(d)}else{if(/^on/i.test(e))throw Error("");if(e.toLowerCase()in ve)if(d instanceof zd)d=Ad(d).toString();else if(d instanceof Fd)d=Gd(d);else if("string"===typeof d)d=Jd(d).ld();else throw Error("");}d.Qd&&(d=d.ld());e=e+'="'+Ub(String(d))+ '"';b+=" "+e}}return b}var pe=/^[a-zA-Z0-9-]+$/,ve={action:!0,cite:!0,data:!0,formaction:!0,href:!0,manifest:!0,poster:!0,src:!0},qe={APPLET:!0,BASE:!0,EMBED:!0,IFRAME:!0,LINK:!0,MATH:!0,META:!0,OBJECT:!0,SCRIPT:!0,STYLE:!0,SVG:!0,TEMPLATE:!0},we=le(""),se=new ie(q.trustedTypes&&q.trustedTypes.emptyHTML||"",he);var xe=cd(function(){var a=document.createElement("div"),b=document.createElement("div");b.appendChild(document.createElement("div"));a.appendChild(b);b=a.firstChild.firstChild;a.innerHTML=je(se);return!b.parentElement});function ye(a,b){if(xe())for(;a.lastChild;)a.removeChild(a.lastChild);a.innerHTML=je(b)}function ze(a,b){var c=Ae(a.ownerDocument&&a.ownerDocument.defaultView);c&&a.setAttribute("nonce",c);a.src=Ad(b)}function Be(a,b){b=b instanceof Fd?b:Od(b);a.href=Gd(b)} function Ce(a,b){b=b instanceof Fd?b:Od(b);a.replace(Gd(b))}function Ae(a){return De("script[nonce]",a)}var Ee=/^[\w+/_-]+[=]{0,2}$/;function De(a,b){b=(b||q).document;return b.querySelector?(a=b.querySelector(a))&&(a=a.nonce||a.getAttribute("nonce"))&&Ee.test(a)?a:"":""};function Fe(a,b,c){return Math.min(Math.max(a,b),c)};function B(a,b){this.x=void 0!==a?a:0;this.y=void 0!==b?b:0}f=B.prototype;f.clone=function(){return new B(this.x,this.y)};function Ge(a,b){return a==b?!0:a&&b?a.x==b.x&&a.y==b.y:!1}function He(a,b){var c=a.x-b.x;a=a.y-b.y;return Math.sqrt(c*c+a*a)}function Ie(a,b){return new B(a.x-b.x,a.y-b.y)}f.ceil=function(){this.x=Math.ceil(this.x);this.y=Math.ceil(this.y);return this};f.floor=function(){this.x=Math.floor(this.x);this.y=Math.floor(this.y);return this}; f.round=function(){this.x=Math.round(this.x);this.y=Math.round(this.y);return this};f.Jj=function(a,b){this.x*=a;this.y*="number"===typeof b?b:a;return this};function Je(a,b){this.width=a;this.height=b}function Ke(a,b){return a==b?!0:a&&b?a.width==b.width&&a.height==b.height:!1}f=Je.prototype;f.clone=function(){return new Je(this.width,this.height)};f.aspectRatio=function(){return this.width/this.height};f.Jc=ba(5);f.ceil=function(){this.width=Math.ceil(this.width);this.height=Math.ceil(this.height);return this};f.floor=function(){this.width=Math.floor(this.width);this.height=Math.floor(this.height);return this}; f.round=function(){this.width=Math.round(this.width);this.height=Math.round(this.height);return this};function Le(a,b){for(var c=a.split("%s"),d="",e=Array.prototype.slice.call(arguments,1);e.length&&1",""":'"'};var c=q.document.createElement("div");return a.replace(Ue,function(d,e){var g=b[d];if(g)return g;"#"==e.charAt(0)&&(e=Number("0"+e.slice(1)),isNaN(e)||(g=String.fromCharCode(e)));g||(g=le(d+" "),ye(c,g),g=c.firstChild.nodeValue.slice(0,-1));return b[d]=g})} function Te(a){return a.replace(/&([^;]+);/g,function(b,c){switch(c){case "amp":return"&";case "lt":return"<";case "gt":return">";case "quot":return'"';default:return"#"!=c.charAt(0)||(c=Number("0"+c.slice(1)),isNaN(c))?b:String.fromCharCode(c)}})}var Ue=/&([^;\s<&]+);?/g;function Ve(a,b){a.length>b&&(a=a.substring(0,b-3)+"...");return a}function We(a){return String(a).replace(/([-()\[\]{}+?*.$\^|,:#a}function Rf(a){var b=[];Sf(a,b,!0);a=b.join("");a=a.replace(/ \xAD /g," ").replace(/\xAD/g,"");a=a.replace(/\u200B/g,"");a=a.replace(/ +/g," ");" "!=a&&(a=a.replace(/^\s*/,""));return a}function Tf(a){var b=[];Sf(a,b,!1);return b.join("")} function Sf(a,b,c){if(!(a.nodeName in Mf))if(3==a.nodeType)c?b.push(String(a.nodeValue).replace(/(\r\n|\r|\n)/g,"")):b.push(a.nodeValue);else if(a.nodeName in Nf)b.push(Nf[a.nodeName]);else for(a=a.firstChild;a;)Sf(a,b,c),a=a.nextSibling}function Uf(a){return Vf(a,function(b){return"DIV"==b.nodeName&&"string"===typeof b.className&&ob(b.className.split(/\s+/),"slider-box")})}function Vf(a,b){for(var c=0;a;){if(b(a))return a;a=a.parentNode;c++}return null} function Wf(a){try{var b=a&&a.activeElement;return b&&b.nodeName?b:null}catch(c){return null}}function cf(a){this.g=a||q.document||document}f=cf.prototype;f.ha=function(a){return ef(this.g,a)};f.getElementsByTagName=function(a,b){return(b||this.g).getElementsByTagName(String(a))};f.Oa=function(a,b,c){return uf(this.g,arguments)};function Xf(a,b){return vf(a.g,b)}function Yf(a){a=a.g;return a.parentWindow||a.defaultView}f.appendChild=yf;f.dm=zf;f.hm=Af;f.qu=Bf;f.pu=Cf;f.di=I;f.Wn=Ff;f.Yn=Gf;f.su=If; f.fm=Kf;function Zf(){}Zf.prototype.next=function(){return $f};var $f={done:!0,value:void 0};Zf.prototype.Xe=function(){return this};var ag={}; function bg(a){var b=ag.hasOwnProperty(a)?ag[a]:null;if(b)return b;65536~\\.\\[:]+)","g"),1);b=dg(b,c,RegExp("(\\.[^\\s\\+>~\\.\\[:]+)","g"),2);b=dg(b,c,/(::[^\s\+>~\.\[:]+|:first-line|:first-letter|:before|:after)/gi,3); b=dg(b,c,/(:[\w-]+\([^\)]*\))/gi,2);b=dg(b,c,/(:[^\s\+>~\.\[:]+)/g,2);b=b.replace(/[\*\s\+>~]/g," ");b=b.replace(/[#\.]/g," ");dg(b,c,/([^\s\+>~\.\[:]+)/g,3);b=c;return ag[a]=b}function dg(a,b,c,d){return a.replace(c,function(e){b[d]+=1;return Array(e.length+1).join(" ")})}function cg(a,b){return a.replace(b,function(c){return Array(c.length+1).join("A")})};var eg={rgb:!0,rgba:!0,alpha:!0,rect:!0,image:!0,"linear-gradient":!0,"radial-gradient":!0,"repeating-linear-gradient":!0,"repeating-radial-gradient":!0,"cubic-bezier":!0,matrix:!0,perspective:!0,rotate:!0,rotate3d:!0,rotatex:!0,rotatey:!0,steps:!0,rotatez:!0,scale:!0,scale3d:!0,scalex:!0,scaley:!0,scalez:!0,skew:!0,skewx:!0,skewy:!0,translate:!0,translate3d:!0,translatex:!0,translatey:!0,translatez:!0},fg=/[\n\f\r"'()*<>]/g,gg={"\n":"%0a","\f":"%0c","\r":"%0d",'"':"%22","'":"%27","(":"%28",")":"%29", "*":"%2a","<":"%3c",">":"%3e"};function hg(a){return gg[a]} function ig(a,b,c){b=Tb(b);if(""==b)return null;var d=String(b.slice(0,4)).toLowerCase();if(0==("url("d;d++){var e="\"'".charAt(d);if(b.charAt(0)==e&&b.charAt(b.length-1)==e){b=b.substring(1,b.length-1);break a}}a=c?(a=c(b,a))&&"about:invalid#zClosurez"!=Gd(a)?'url("'+Gd(a).replace(fg,hg)+'")':null:null}return a}if(0document.documentMode){if(!b[c].call)throw Error("IE Clobbering detected");}else if("function"!=typeof b[c])throw Error("Clobbering detected");return b[c].apply(b,d)}function Ig(a){return Gg(rg,a,"attributes",function(b){return b instanceof NamedNodeMap})} function Jg(a,b,c){try{Hg(ug,a,"setAttribute",[b,c])}catch(d){if(-1==d.message.indexOf("A security problem occurred"))throw d;}}function Kg(a){return Gg(Bg,a,"style",function(b){return b instanceof CSSStyleDeclaration})}function Lg(a){return Gg(Cg,a,"sheet",function(b){return b instanceof CSSStyleSheet})}function Mg(a){return Gg(yg,a,"nodeName",function(b){return"string"==typeof b})}function Ng(a){return Gg(zg,a,"nodeType",function(b){return"number"==typeof b})} function Og(a){return Gg(Ag,a,"parentNode",function(b){return!(b&&"string"==typeof b.name&&b.name&&"parentnode"==b.name.toLowerCase())})}function Pg(a,b){return Hg(Dg,a,a.getPropertyValue?"getPropertyValue":"getAttribute",[b])||""}function Qg(a,b,c){Hg(Eg,a,a.setProperty?"setProperty":"setAttribute",[b,c])}function Rg(a){return Gg(Fg,a,"namespaceURI",function(b){return"string"==typeof b})};var Sg=A&&10>document.documentMode?null:RegExp("\\s*([^\\s'\",]+[^'\",]*(('([^'\\r\\n\\f\\\\]|\\\\[^])*')|(\"([^\"\\r\\n\\f\\\\]|\\\\[^])*\")|[^'\",])*)","g"),Tg={"-webkit-border-horizontal-spacing":!0,"-webkit-border-vertical-spacing":!0}; function Ug(a,b,c){var d=[];Vg(ub(a.cssRules)).forEach(function(e){if(b&&!/[a-zA-Z][\w-:\.]*/.test(b))throw Error("Invalid container id");if(!(b&&A&&10==document.documentMode&&/\\['"]/.test(e.selectorText))){var g=b?e.selectorText.replace(Sg,"#"+b+" $1"):e.selectorText;d.push(de(g,Wg(e.style,c)))}});return ee(d)}function Vg(a){return a.filter(function(b){return b instanceof CSSStyleRule||b.type==CSSRule.STYLE_RULE})} function Xg(a,b,c){a=Yg("");return null==a||null==a.sheet?ge:Ug(a.sheet,void 0!=b?b:null,c)}function Yg(a){a=le(""+a+"");return(new DOMParser).parseFromString(je(a),"text/html").body.children[0]} function Wg(a,b){if(!a)return Vd;var c=document.createElement("div").style;Zg(a).forEach(function(d){var e=Bc&&d in Tg?d:d.replace(/^-(?:apple|css|epub|khtml|moz|mso?|o|rim|wap|webkit|xv)-(?=[a-z])/i,"");Pb(e,"--")||Pb(e,"var")||(d=Pg(a,d),d=ig(e,d,b),null!=d&&Qg(c,e,d))});return new Rd(c.cssText||"",Qd)} function $g(a){var b=Array.from(Hg(wg,a,"getElementsByTagName",["STYLE"])),c=Db(b,function(h){return ub(Lg(h).cssRules)});c=Vg(c);for(var d=[],e=0;e=a.left&&b.right<=a.right&&b.top>=a.top&&b.bottom<=a.bottom:b.x>=a.left&&b.x<=a.right&&b.y>=a.top&&b.y<=a.bottom:!1}function eh(a,b){var c=b.xa.right?b.x-a.right:0;a=b.ya.bottom?b.y-a.bottom:0;return Math.sqrt(c*c+a*a)} f.ceil=function(){this.top=Math.ceil(this.top);this.right=Math.ceil(this.right);this.bottom=Math.ceil(this.bottom);this.left=Math.ceil(this.left);return this};f.floor=function(){this.top=Math.floor(this.top);this.right=Math.floor(this.right);this.bottom=Math.floor(this.bottom);this.left=Math.floor(this.left);return this};f.round=function(){this.top=Math.round(this.top);this.right=Math.round(this.right);this.bottom=Math.round(this.bottom);this.left=Math.round(this.left);return this};function fh(a,b,c,d){this.left=a;this.top=b;this.width=c;this.height=d}f=fh.prototype;f.clone=function(){return new fh(this.left,this.top,this.width,this.height)};function gh(a){return new bh(a.top,a.left+a.width,a.top+a.height,a.left)}function hh(a){return new fh(a.left,a.top,a.right-a.left,a.bottom-a.top)} function ih(a,b){var c=Math.max(a.left,b.left),d=Math.min(a.left+a.width,b.left+b.width);if(c<=d){var e=Math.max(a.top,b.top);b=Math.min(a.top+a.height,b.top+b.height);if(e<=b)return a.left=c,a.top=e,a.width=d-c,a.height=b-e,!0}return!1}function jh(a,b){var c=Math.max(a.left,b.left),d=Math.min(a.left+a.width,b.left+b.width);if(c<=d){var e=Math.max(a.top,b.top);a=Math.min(a.top+a.height,b.top+b.height);if(e<=a)return new fh(c,e,d-c,a-e)}return null} function kh(a,b){return a.left<=b.left+b.width&&b.left<=a.left+a.width&&a.top<=b.top+b.height&&b.top<=a.top+a.height}function lh(a,b){if(!a||!b)return null;a=new fh(a.left,a.top,a.width,a.height);var c=Math.max(a.left+a.width,b.left+b.width),d=Math.max(a.top+a.height,b.top+b.height);a.left=Math.min(a.left,b.left);a.top=Math.min(a.top,b.top);a.width=c-a.left;a.height=d-a.top;return a}f.getSize=function(){return new Je(this.width,this.height)}; f.ceil=function(){this.left=Math.ceil(this.left);this.top=Math.ceil(this.top);this.width=Math.ceil(this.width);this.height=Math.ceil(this.height);return this};f.floor=function(){this.left=Math.floor(this.left);this.top=Math.floor(this.top);this.width=Math.floor(this.width);this.height=Math.floor(this.height);return this};f.round=function(){this.left=Math.round(this.left);this.top=Math.round(this.top);this.width=Math.round(this.width);this.height=Math.round(this.height);return this};function K(a,b,c){if("string"===typeof b)(b=mh(a,b))&&(a.style[b]=c);else for(var d in b){c=a;var e=b[d],g=mh(c,d);g&&(c.style[g]=e)}}var nh={};function mh(a,b){var c=nh[b];if(!c){var d=$e(b);c=d;void 0===a.style[d]&&(d=(Bc?"Webkit":Ac?"Moz":A?"ms":null)+af(d),void 0!==a.style[d]&&(c=d));nh[b]=c}return c}function oh(a,b){var c=a.style[$e(b)];return"undefined"!==typeof c?c:a.style[mh(a,b)]||""} function ph(a,b){var c=df(a);return c.defaultView&&c.defaultView.getComputedStyle&&(a=c.defaultView.getComputedStyle(a,null))?a[b]||a.getPropertyValue(b)||"":""}function qh(a,b){return a.currentStyle?a.currentStyle[b]:null}function rh(a,b){return ph(a,b)||qh(a,b)||a.style&&a.style[b]}function sh(a,b,c){if(b instanceof B){var d=b.x;b=b.y}else d=b,b=c;a.style.left=th(d,!1);a.style.top=th(b,!1)}function uh(a){return new B(a.offsetLeft,a.offsetTop)} function vh(a){a=a?df(a):document;return!A||Tc(9)||qf(bf(a).g)?a.documentElement:a.body}function wh(a){try{return a.getBoundingClientRect()}catch(b){return{left:0,top:0,right:0,bottom:0}}} function xh(a){if(A&&!Tc(8))return a.offsetParent;var b=df(a),c=rh(a,"position"),d="fixed"==c||"absolute"==c;for(a=a.parentNode;a&&a!=b;a=a.parentNode)if(11==a.nodeType&&a.host&&(a=a.host),c=rh(a,"position"),d=d&&"static"==c&&a!=b.documentElement&&a!=b.body,!d&&(a.scrollWidth>a.clientWidth||a.scrollHeight>a.clientHeight||"fixed"==c||"absolute"==c||"relative"==c))return a;return null} function yh(a){for(var b=new bh(0,Infinity,Infinity,0),c=bf(a),d=c.g.body,e=c.g.documentElement,g=sf(c.g);a=xh(a);)if(!(A&&0==a.clientWidth||Bc&&0==a.clientHeight&&a==d)&&a!=d&&a!=e&&"visible"!=rh(a,"overflow")){var h=zh(a),k=new B(a.clientLeft,a.clientTop);h.x+=k.x;h.y+=k.y;b.top=Math.max(b.top,h.y);b.right=Math.min(b.right,h.x+a.clientWidth);b.bottom=Math.min(b.bottom,h.y+a.clientHeight);b.left=Math.max(b.left,h.x)}d=g.scrollLeft;g=g.scrollTop;b.left=Math.max(b.left,d);b.top=Math.max(b.top,g);c= pf(Yf(c));b.right=Math.min(b.right,d+c.width);b.bottom=Math.min(b.bottom,g+c.height);return 0<=b.top&&0<=b.left&&b.bottom>b.top&&b.right>b.left?b:null} function Ah(a,b){b=b||sf(document);var c=b||sf(document);var d=zh(a),e=zh(c),g=Bh(c);if(c==sf(document)){var h=d.x-c.scrollLeft;d=d.y-c.scrollTop;A&&!Tc(10)&&(h+=g.left,d+=g.top)}else h=d.x-e.x-g.left,d=d.y-e.y-g.top;a=Ch(a);g=c.clientHeight-a.height;e=c.scrollLeft;var k=c.scrollTop;e+=Math.min(h,Math.max(h-(c.clientWidth-a.width),0));k+=Math.min(d,Math.max(d-g,0));c=new B(e,k);b.scrollLeft=c.x;b.scrollTop=c.y} function zh(a){var b=df(a),c=new B(0,0),d=vh(b);if(a==d)return c;a=wh(a);b=rf(bf(b).g);c.x=a.left+b.x;c.y=a.top+b.y;return c}function Dh(a,b){a=Eh(a);b=Eh(b);return new B(a.x-b.x,a.y-b.y)}function Fh(a){a=wh(a);return new B(a.left,a.top)}function Eh(a){if(1==a.nodeType)return Fh(a);a=a.changedTouches?a.changedTouches[0]:a;return new B(a.clientX,a.clientY)}function Gh(a,b,c){var d=zh(a);b instanceof B&&(c=b.y,b=b.x);sh(a,a.offsetLeft+(b-d.x),a.offsetTop+(Number(c)-d.y))} function L(a,b,c){if(b instanceof Je)c=b.height,b=b.width;else if(void 0==c)throw Error("missing height argument");Hh(a,b);a.style.height=th(c,!0)}function th(a,b){"number"==typeof a&&(a=(b?Math.round(a):a)+"px");return a}function Hh(a,b){a.style.width=th(b,!0)}function M(a){var b=Ch;if("none"!=rh(a,"display"))return b(a);var c=a.style,d=c.display,e=c.visibility,g=c.position;c.visibility="hidden";c.position="absolute";c.display="inline";a=b(a);c.display=d;c.position=g;c.visibility=e;return a} function Ch(a){var b=a.offsetWidth,c=a.offsetHeight,d=Bc&&!b&&!c;return(void 0===b||d)&&a.getBoundingClientRect?(a=wh(a),new Je(a.right-a.left,a.bottom-a.top)):new Je(b,c)}function Ih(a){var b=zh(a);a=M(a);return new fh(b.x,b.y,a.width,a.height)}function Jh(a,b){a=a.style;"opacity"in a?a.opacity=b:"MozOpacity"in a?a.MozOpacity=b:"filter"in a&&(a.filter=""===b?"":"alpha(opacity="+100*Number(b)+")")}function N(a,b){a.style.display=b?"":"none"}function Kh(a){return"none"!=a.style.display} function Lh(a){return"rtl"==rh(a,"direction")}var Mh=Ac?"MozUserSelect":Bc||yc?"WebkitUserSelect":null;function Nh(a,b,c){c=c?null:a.getElementsByTagName("*");if(Mh){if(b=b?"none":"",a.style&&(a.style[Mh]=b),c){a=0;for(var d;d=c[a];a++)d.style&&(d.style[Mh]=b)}}else if(A&&(b=b?"on":"",a.setAttribute("unselectable",b),c))for(a=0;d=c[a];a++)d.setAttribute("unselectable",b)}function Oh(a,b){Ph(a,b,"border-box")} function Qh(a){var b=df(a),c=A&&a.currentStyle;if(c&&qf(bf(b).g)&&"auto"!=c.width&&"auto"!=c.height&&!c.boxSizing)return b=Rh(a,c.width,"width","pixelWidth"),a=Rh(a,c.height,"height","pixelHeight"),new Je(b,a);c=new Je(a.offsetWidth,a.offsetHeight);if(A){b=Sh(a,"paddingLeft");var d=Sh(a,"paddingRight"),e=Sh(a,"paddingTop"),g=Sh(a,"paddingBottom");b=new bh(e,d,g,b)}else b=ph(a,"paddingLeft"),d=ph(a,"paddingRight"),e=ph(a,"paddingTop"),g=ph(a,"paddingBottom"),b=new bh(parseFloat(e),parseFloat(d),parseFloat(g), parseFloat(b));a=Bh(a);return new Je(c.width-a.left-b.left-b.right-a.right,c.height-a.top-b.top-b.bottom-a.bottom)}function Ph(a,b,c){a=a.style;Ac?a.MozBoxSizing=c:Bc?a.WebkitBoxSizing=c:a.boxSizing=c;a.width=Math.max(b.width,0)+"px";a.height=Math.max(b.height,0)+"px"}function Rh(a,b,c,d){if(/^\d+px?$/.test(b))return parseInt(b,10);var e=a.style[c],g=a.runtimeStyle[c];a.runtimeStyle[c]=a.currentStyle[c];a.style[c]=b;b=a.style[d];a.style[c]=e;a.runtimeStyle[c]=g;return+b} function Sh(a,b){return(b=qh(a,b))?Rh(a,b,"left","pixelLeft"):0}var Th={thin:2,medium:4,thick:6};function Uh(a,b){if("none"==qh(a,b+"Style"))return 0;b=qh(a,b+"Width");return b in Th?Th[b]:Rh(a,b,"left","pixelLeft")} function Bh(a){if(A&&!Tc(9)){var b=Uh(a,"borderLeft"),c=Uh(a,"borderRight"),d=Uh(a,"borderTop");a=Uh(a,"borderBottom");return new bh(d,c,a,b)}b=ph(a,"borderLeftWidth");c=ph(a,"borderRightWidth");d=ph(a,"borderTopWidth");a=ph(a,"borderBottomWidth");return new bh(parseFloat(d),parseFloat(c),parseFloat(a),parseFloat(b))};/* SPDX-License-Identifier: Apache-2.0 */ var Vh="function"===typeof URL;function Wh(a){if(!Vh){a:{var b=document.createElement("a");try{b.href=a}catch(c){a=void 0;break a}a=b.protocol;a=":"===a||""===a?"https:":a}return a}try{b=new URL(a)}catch(c){return"https:"}return b.protocol}var Xh=["data:","http:","https:","mailto:","ftp:"];function Yh(a){if("javascript:"!==Wh(a))return a}function Zh(a){return a instanceof Fd?Gd(a):Yh(a)};function $h(a,b){b=Zh(b);void 0!==b&&(a.href=b)};function ai(){}function bi(a){this.g=a}n(bi,ai);bi.prototype.toString=function(){return this.g};function O(a,b){1===a.nodeType&&ci(a);a.innerHTML=je(b)}function di(a,b,c){var d="beforebegin"===b||"afterend"===b?a.parentElement:a;null!==d&&ci(d);a.insertAdjacentHTML(b,je(c))}function ei(a,b){var c=fi;if(0===c.length)throw Error("");if(c.map(function(d){if(d instanceof bi)d=d.g;else throw Error("");return d}).every(function(d){return 0!=="value".indexOf(d)}))throw Error('Attribute "value" does not match any of the allowed prefixes.');a.setAttribute("value",b)} function ci(a){a=a.tagName;if("SCRIPT"===a||"STYLE"===a)throw Error("");};function gi(a,b){a.src=Ad(b);var c,d;(c=(b=null==(d=(c=(a.ownerDocument&&a.ownerDocument.defaultView||window).document).querySelector)?void 0:d.call(c,"script[nonce]"))?b.nonce||b.getAttribute("nonce")||"":"")&&a.setAttribute("nonce",c)};function hi(a,b){b=Zh(b);void 0!==b&&(a.href=b)};function ii(a){this.hl=a}function ji(a){return new ii(function(b){return b.substr(0,a.length+1).toLowerCase()===a+":"})}var ki=[ji("data"),ji("http"),ji("https"),ji("mailto"),ji("ftp"),new ii(function(a){return/^[^:]*([/?#]|$)/.test(a)})];function li(a){var b=void 0===b?ki:b;a:{b=void 0===b?ki:b;for(var c=0;c"+b+""),$g(b),b=b.innerHTML);b=le(b);var c=document.createElement("template");if(ti&&"content"in c)ye(c,b),c=c.content;else{var d=document.implementation.createHTMLDocument("x");c=d.body;ye(d.body,b)}b=document.createTreeWalker(c,NodeFilter.SHOW_ELEMENT|NodeFilter.SHOW_TEXT,null,!1);for(c=pi? new WeakMap:new ri;d=b.nextNode();){c:{var e=d;switch(Ng(e)){case 3:e=Li(this,e);break c;case 1:if("TEMPLATE"==Mg(e).toUpperCase())e=null;else{var g=Mg(e).toUpperCase();if(g in this.s||"http://www.w3.org/1999/xhtml"!=Rg(e))var h=null;else this.j[g]?h=document.createElement(g):(h=H("SPAN"),this.ma&&Jg(h,"data-sanitizer-original-tag",g.toLowerCase()));if(h){var k=h,l=Ig(e);if(null!=l)for(var m=0;g=l[m];m++)if(g.specified){var p=e;var x=g;var C=x.name;if(Pb(C,"data-sanitizer-"))x=null;else{var E=Mg(p); x=x.value;var G={tagName:Tb(E).toLowerCase(),attributeName:Tb(C).toLowerCase()},P={Ck:void 0};"style"==G.attributeName&&(P.Ck=Kg(p));p=Ki(E,C);p in this.i?(C=this.i[p],x=C(x,G,P)):(C=Ki(null,C),C in this.i?(C=this.i[C],x=C(x,G,P)):x=null)}null!==x&&Jg(k,g.name,x)}e=h}else e=null}break c;default:e=null}}if(e){if(1==Ng(e)&&c.set(d,e),d=Og(d),g=!1,d)h=Ng(d),k=Mg(d).toLowerCase(),l=Og(d),11!=h||l?"body"==k&&l&&(h=Og(l))&&!Og(h)&&(g=!0):g=!0,h=null,g||!d?h=a:1==Ng(d)&&(h=c.get(d)),h.content&&(h=h.content), h.appendChild(e)}else Af(d)}c.clear&&c.clear()}else a=H("SPAN");0")+1,a.lastIndexOf(""));b.Gw&&(a=a.replace(/(\t+)/g,'$1'));return le(a)} function Oi(a){var b={nonce:Ae()};b=void 0===b?{}:b;a=(a instanceof yd&&a.constructor===yd?a.g:"type_error:SafeScript").toString();var c=""+a+"\x3c/script>"))}function Ni(a){return a.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")} function Pi(a){var b=Mi("");return le(a.map(function(c){return je(Mi(c))}).join(je(b).toString()))}var Qi=/^[a-z][a-z\d-]*$/i,Ri="APPLET BASE EMBED IFRAME LINK MATH META OBJECT SCRIPT STYLE SVG TEMPLATE".split(" "),Si="AREA BR COL COMMAND HR IMG INPUT KEYGEN PARAM SOURCE TRACK WBR".split(" "),Ti=["action","formaction","href"];function Ui(a){if(!Qi.test(a))throw Error("");if(-1!==Ri.indexOf(a.toUpperCase()))throw Error("");} function Vi(a,b,c){Ui(a);var d="<"+a;b&&(d+=Wi(b));Array.isArray(c)||(c=void 0===c?[]:[c]);-1!==Si.indexOf(a.toUpperCase())?d+=">":(b=Pi(c.map(function(e){return e instanceof ie?e:Mi(String(e))})),d+=">"+b.toString()+"");return le(d)} function Wi(a){for(var b="",c=Object.keys(a),d=0;d")+1,a.lastIndexOf(">>0);function Xj(a){if("function"===typeof a)return a;a[gk]||(a[gk]=function(b){return a.handleEvent(b)});return a[gk]};function hk(a){Cj.call(this);this.s=a;this.j={}}u(hk,Cj);var ik=[];f=hk.prototype;f.ka=function(a,b,c,d){return jk(this,a,b,c,d)};function kk(a,b,c,d,e){jk(a,b,c,d,!1,e)}function jk(a,b,c,d,e,g){Array.isArray(c)||(c&&(ik[0]=c.toString()),c=ik);for(var h=0;h=a.keyCode)return!1;if(sk(a.keyCode))return!0;switch(a.keyCode){case 18:case 20:case 93:case 17:case 40:case 35:case 27:case 36:case 45:case 37:case 224:case 91:case 144:case 12:case 34:case 33:case 19:case 255:case 44:case 39:case 145:case 16:case 38:case 252:case 224:case 92:return!1;case 0:return!Ac;default:return 166>a.keyCode||183=a||96<=a&&106>=a||65<=a&&90>=a||(Bc||yc)&&0==a)return!0;switch(a){case 32:case 43:case 63:case 64:case 107:case 109:case 110:case 111:case 186:case 59:case 189:case 187:case 61:case 188:case 190:case 191:case 192:case 222:case 219:case 220:case 221:case 163:case 58:return!0;case 173:return Ac;default:return!1}}function uk(a){if(Ac)a=vk(a);else if(Dc&&Bc)switch(a){case 93:a=91}return a} function vk(a){switch(a){case 61:return 187;case 59:return 186;case 173:return 189;case 224:return 91;case 0:return 224;default:return a}};function wk(a){if(a.kc&&"function"==typeof a.kc)return a.kc();if("undefined"!==typeof Map&&a instanceof Map||"undefined"!==typeof Set&&a instanceof Set)return Array.from(a.values());if("string"===typeof a)return a.split("");if(Ta(a)){for(var b=[],c=a.length,d=0;dc&&(c=a.length);var d=a.indexOf("?");if(0>d||d>c){d=c;var e=""}else e=a.substring(d+1,c);a=[a.slice(0,d),e,a.slice(c)];c=a[1];a[1]=b?c?c+"&"+b:b:c;a=a[0]+(a[1]?"?"+a[1]:"")+a[2]}return a}function Ck(a,b,c,d){for(var e=c.length;0<=(b=a.indexOf(c,b))&&bd)return null;var e=b.indexOf("&",d);if(0>e||e>c)e=c;d+=a.length+1;return Pe(b.slice(d,-1!==e?e:0))}var Fk=/[?&]($|#)/;function S(a,b){this.g=this.O=this.o="";this.V=null;this.i=this.l="";this.s=!1;var c;a instanceof S?(this.s=void 0!==b?b:a.s,Gk(this,a.o),this.O=a.O,this.g=a.g,Hk(this,a.V),Ik(this,a.l),Jk(this,a.j.clone()),Kk(this,a.i)):a&&(c=String(a).match(zk))?(this.s=!!b,Gk(this,c[1]||"",!0),this.O=Lk(c[2]||""),this.g=Lk(c[3]||"",!0),Hk(this,c[4]),Ik(this,c[5]||"",!0),Jk(this,c[6]||"",!0),Kk(this,c[7]||"",!0)):(this.s=!!b,this.j=new Mk(null,this.s))} S.prototype.toString=function(){var a=[],b=this.o;b&&a.push(Nk(b,Ok,!0),":");var c=this.g;if(c||"file"==b)a.push("//"),(b=this.O)&&a.push(Nk(b,Ok,!0),"@"),a.push(encodeURIComponent(String(c)).replace(/%25([0-9a-fA-F]{2})/g,"%$1")),c=this.V,null!=c&&a.push(":",String(c));if(c=this.l)this.g&&"/"!=c.charAt(0)&&a.push("/"),a.push(Nk(c,"/"==c.charAt(0)?Pk:Qk,!0));(c=this.j.toString())&&a.push("?",c);(c=this.i)&&a.push("#",Nk(c,Rk));return a.join("")}; S.prototype.resolve=function(a){var b=this.clone(),c=!!a.o;c?Gk(b,a.o):c=!!a.O;c?b.O=a.O:c=!!a.g;c?b.g=a.g:c=null!=a.V;var d=a.l;if(c)Hk(b,a.V);else if(c=!!a.l){if("/"!=d.charAt(0))if(this.g&&!this.l)d="/"+d;else{var e=b.l.lastIndexOf("/");-1!=e&&(d=b.l.slice(0,e+1)+d)}e=d;if(".."==e||"."==e)d="";else if(cc(e,"./")||cc(e,"/.")){d=Pb(e,"/");e=e.split("/");for(var g=[],h=0;hb)throw Error("Bad port number "+b);a.V=b}else a.V=null}function Ik(a,b,c){a.l=c?Lk(b,!0):b}function Jk(a,b,c){b instanceof Mk?(a.j=b,Sk(a.j,a.s)):(c||(b=Nk(b,Tk)),a.j=new Mk(b,a.s))} S.prototype.getQuery=function(){return this.j.toString()};function T(a,b,c){a.j.set(b,c);return a}function U(a,b){return a.j.get(b)}function Kk(a,b,c){a.i=c?Lk(b):b;return a}function Uk(a,b){a.j.remove(b);return a}function Lk(a,b){return a?b?decodeURI(a.replace(/%25/g,"%2525")):decodeURIComponent(a):""}function Nk(a,b,c){return"string"===typeof a?(a=encodeURI(a).replace(b,Vk),c&&(a=a.replace(/%25([0-9a-fA-F]{2})/g,"%$1")),a):null} function Vk(a){a=a.charCodeAt(0);return"%"+(a>>4&15).toString(16)+(a&15).toString(16)}var Ok=/[#\/\?@]/g,Qk=/[#\?:]/g,Pk=/[#\?]/g,Tk=/[#\?@]/g,Rk=/#/g;function Mk(a,b){this.i=this.g=null;this.j=a||null;this.l=!!b}function Wk(a){a.g||(a.g=new Map,a.i=0,a.j&&Ak(a.j,function(b,c){a.add(Pe(b),c)}))} function Xk(a){var b=xk(a);if("undefined"==typeof b)throw Error("Keys are undefined");var c=new Mk(null);a=wk(a);for(var d=0;da.i&&(a.i++,b.next=a.g,a.g=b)};function jl(a,b){var c=a;b&&(c=r(a,b));c=kl(c);"function"!==typeof q.setImmediate||q.Window&&q.Window.prototype&&(jc()||!z("Edge"))&&q.Window.prototype.setImmediate==q.setImmediate?(ll||(ll=ml()),ll(c)):q.setImmediate(c)}var ll; function ml(){var a=q.MessageChannel;"undefined"===typeof a&&"undefined"!==typeof window&&window.postMessage&&window.addEventListener&&!z("Presto")&&(a=function(){var e=H("IFRAME");e.style.display="none";document.documentElement.appendChild(e);var g=e.contentWindow;e=g.document;e.open();e.close();var h="callImmediate"+Math.random(),k="file:"==g.location.protocol?"*":g.location.protocol+"//"+g.location.host;e=r(function(l){if(("*"==k||l.origin==k)&&l.data==h)this.port1.onmessage()},this);g.addEventListener("message", e,!1);this.port1={};this.port2={postMessage:function(){g.postMessage(h,k)}}});if("undefined"!==typeof a&&!lc()){var b=new a,c={},d=c;b.port1.onmessage=function(){if(void 0!==c.next){c=c.next;var e=c.cb;c.cb=null;e()}};return function(e){d.next={cb:e};d=d.next;b.port2.postMessage(0)}}return function(e){q.setTimeout(e,0)}}var kl=ad;function nl(a){q.setTimeout(function(){throw a;},0)};function ol(){this.i=this.g=null}ol.prototype.add=function(a,b){var c=pl.get();c.set(a,b);this.i?this.i.next=c:this.g=c;this.i=c};ol.prototype.remove=function(){var a=null;this.g&&(a=this.g,this.g=this.g.next,this.g||(this.i=null),a.next=null);return a};var pl=new hl(function(){return new ql},function(a){return a.reset()});function ql(){this.next=this.g=this.Be=null}ql.prototype.set=function(a,b){this.Be=a;this.g=b;this.next=null};ql.prototype.reset=function(){this.next=this.g=this.Be=null};var rl,sl=!1,ul=new ol;function vl(a,b){rl||wl();sl||(rl(),sl=!0);ul.add(a,b)}function wl(){if(q.Promise&&q.Promise.resolve){var a=q.Promise.resolve(void 0);rl=function(){a.then(xl)}}else rl=function(){jl(xl)}}function xl(){for(var a;a=ul.remove();){try{a.Be.call(a.g)}catch(b){nl(b)}il(pl,a)}sl=!1};function yl(a){if(!a)return!1;try{return!!a.$goog_Thenable}catch(b){return!1}};function zl(a){this.g=0;this.O=void 0;this.l=this.i=this.j=null;this.o=this.s=!1;if(a!=$c)try{var b=this;a.call(void 0,function(c){Al(b,2,c)},function(c){Al(b,3,c)})}catch(c){Al(this,3,c)}}function Bl(){this.next=this.context=this.i=this.j=this.g=null;this.l=!1}Bl.prototype.reset=function(){this.context=this.i=this.j=this.g=null;this.l=!1};var Cl=new hl(function(){return new Bl},function(a){a.reset()});function Dl(a,b,c){var d=Cl.get();d.j=a;d.i=b;d.context=c;return d} function El(){var a,b,c=new zl(function(d,e){a=d;b=e});return new Fl(c,a,b)}zl.prototype.then=function(a,b,c){return Gl(this,"function"===typeof a?a:null,"function"===typeof b?b:null,c)};zl.prototype.$goog_Thenable=!0;zl.prototype.cancel=function(a){if(0==this.g){var b=new Hl(a);vl(function(){Il(this,b)},this)}}; function Il(a,b){if(0==a.g)if(a.j){var c=a.j;if(c.i){for(var d=0,e=null,g=null,h=c.i;h&&(h.l||(d++,h.g==a&&(e=h),!(e&&1=b})}function pm(a,b){return a.g.find(function(c){return dh(gh(lm(c)),b)})};function qm(){this.g=[];this.cells=[]}u(qm,mm);f=qm.prototype;f.im=0;f.fi=0;f.marginRight=0;f.ei=0;f.Yk=0;f.Ej=0;f.Rp=!1;f.tb=function(){return this.rb};f.Db=function(){return this.Bb}; function rm(a){a.O();for(var b=a.im,c=0;cthis.ma)if(this.dispatchEvent(new jn("start",this,a.clientX,a.clientY,a)))this.i=!0;else{this.Id||this.Gi(a);return}}c=mn(this,b,c);b=c.x;c=c.y;this.i&&this.dispatchEvent(new jn("beforedrag",this,a.clientX,a.clientY,a,b,c))&&(nn(this,a,b,c),a.preventDefault())}}; function mn(a,b,c){var d=rf(bf(a.j).g);b+=d.x-a.qa.x;c+=d.y-a.qa.y;a.qa=d;a.deltaX+=b;a.deltaY+=c;return new B(kn(a,a.deltaX),ln(a,a.deltaY))}f.Wu=function(a){var b=mn(this,0,0);a.clientX=this.clientX;a.clientY=this.clientY;nn(this,a,b.x,b.y)};function nn(a,b,c,d){a.Ek(c,d);a.dispatchEvent(new jn("drag",a,b.clientX,b.clientY,b,c,d))}function kn(a,b){var c=a.na;a=isNaN(c.left)?null:c.left;c=isNaN(c.width)?0:c.width;return Math.min(null!=a?a+c:Infinity,Math.max(null!=a?a:-Infinity,b))} function ln(a,b){var c=a.na;a=isNaN(c.top)?null:c.top;c=isNaN(c.height)?0:c.height;return Math.min(null!=a?a+c:Infinity,Math.max(null!=a?a:-Infinity,b))}f.Ek=function(a,b){this.target.style.left=a+"px";this.target.style.top=b+"px"};function jn(a,b,c,d,e,g,h){Fj.call(this,a);this.clientX=c;this.clientY=d;this.i=e;this.left=void 0!==g?g:b.deltaX;this.top=void 0!==h?h:b.deltaY}u(jn,Fj);function on(a){this.Bd=new Map;var b=arguments.length;if(1b||b>Gn(this))throw Error("Child component index out of bounds");this.ma&&this.O||(this.ma={},this.O=[]);if(a.getParent()==this){var d=a.getId();this.ma[d]=a;qb(this.O,a)}else kd(this.ma,a.getId(),a);a.he(this);wb(this.O,b,0,a);a.Va&&this.Va&&a.getParent()==this?(c=this.Ib(),(c.childNodes[b]||null)!=a.ha()&&(a.ha().parentElement==c&&c.removeChild(a.ha()),b=c.childNodes[b]||null,c.insertBefore(a.ha(),b))):c? (this.va||this.Qa(),b=Hn(this,b+1),Dn(a,this.Ib(),b?b.va:null)):this.Va&&!a.Va&&a.va&&a.va.parentNode&&1==a.va.parentNode.nodeType&&a.Ka()};f.Ib=function(){return this.va};function In(a){null==a.Kb&&(a.Kb=Lh(a.Va?a.va:a.g.g.body));return a.Kb}function Gn(a){return a.O?a.O.length:0}function Cn(a,b){a.ma&&b?(a=a.ma,b=(null!==a&&b in a?a[b]:void 0)||null):b=null;return b}function Hn(a,b){return a.O?a.O[b]||null:null}function Fn(a,b,c){a.O&&a.O.forEach(b,c)} function Jn(a,b){return a.O&&b?a.O.indexOf(b):-1}f.removeChild=function(a,b){if(a){var c="string"===typeof a?a:a.getId();a=Cn(this,c);if(c&&a){var d=this.ma;c in d&&delete d[c];qb(this.O,a);b&&(a.jc(),a.va&&I(a.va));a.he(null)}}if(!a)throw Error("Child is not in parent component");return a};function Kn(a,b){this.va=a;this.i=b};function Ln(a,b){R.call(this);this.l=new hk(this);this.hg(a||null);b&&(this.ig=b)}u(Ln,R);f=Ln.prototype;f.va=null;f.Dn=!0;f.Cn=null;f.Re=!1;f.ll=-1;f.dj=-1;f.Rn=!0;f.ig="toggle_display";f.getType=function(){return this.ig};f.ha=function(){return this.va};f.hg=function(a){Mn(this);this.va=a};function Nn(a,b){Mn(a);a.Dn=b}function Mn(a){if(a.Re)throw Error("Can not change this state of the popup while showing.");}f.isVisible=function(){return this.Re}; f.Aa=function(a){this.Ga&&this.Ga.stop();this.qa&&this.qa.stop();if(a){if(!this.Re&&this.zl()){if(!this.va)throw Error("Caller must call setElement before trying to show the popup");this.fg();a=df(this.va);if(this.Dn)if(this.l.ka(a,"mousedown",this.So,!0),A){try{var b=a.activeElement}catch(d){}for(;b&&"IFRAME"==b.nodeName;){try{var c=Lf(b)}catch(d){break}a=c;b=a.activeElement}this.l.ka(a,"mousedown",this.So,!0);this.l.ka(a,"deactivate",this.Ro)}else this.l.ka(a,"blur",this.Ro);"toggle_display"==this.ig? (this.va.style.visibility="visible",N(this.va,!0)):"move_offscreen"==this.ig&&this.fg();this.Re=!0;this.ll=Date.now();this.dj=-1;this.Ga?(Wj(this.Ga,"end",this.ii,!1,this),this.Ga.play()):this.ii()}}else On(this)};f.fg=function(){};function On(a,b){a.Re&&a.dispatchEvent({type:"beforehide",target:b})&&(a.l&&mk(a.l),a.Re=!1,a.dj=Date.now(),a.qa?(Wj(a.qa,"end",t(a.In,b),!1,a),a.qa.play()):a.In(b))} f.In=function(a){"toggle_display"==this.ig?this.fu():"move_offscreen"==this.ig&&(this.va.style.top="-10000px");this.Ug(a)};f.fu=function(){this.va.style.visibility="hidden";N(this.va,!1)};f.zl=function(){return this.dispatchEvent("beforeshow")};f.ii=function(){this.dispatchEvent("show")};f.Ug=function(a){this.dispatchEvent({type:"hide",target:a})};f.So=function(a){a=a.target;Kf(this.va,a)||Pn(this,a)||150>Date.now()-this.ll||On(this,a)}; f.Ro=function(a){if(this.Rn){var b=df(this.va);if("undefined"!=typeof document.activeElement){if(a=b.activeElement,!a||Kf(this.va,a)||"BODY"==a.tagName||Pn(this,a))return}else if(a.target!=b)return;150>Date.now()-this.ll||On(this)}};function Pn(a,b){return lb(a.Cn||[],function(c){return b===c||Kf(c,b)})}f.ua=function(){Ln.oa.ua.call(this);this.l.Ea();Bj(this.Ga);Bj(this.qa);delete this.va;delete this.l;delete this.Cn};function Qn(a,b){zn.call(this,b);this.Ff=!!a;this.qa=null;this.wc=tn({Mo:this.rj},this);tn({Mo:this.Pp},this)}u(Qn,zn);f=Qn.prototype;f.Lk=null;f.li=!1;f.hd=null;f.xc=null;f.Ud=null;f.tk=!1;f.Vg=function(){return"goog-modalpopup"};f.rh=function(){return this.hd};f.Qa=function(){Qn.oa.Qa.call(this);var a=this.ha();Ib(a,Tb(this.Vg()).split(" "));Qf(a,!0);N(a,!1);Rn(this);Sn(this)}; function Rn(a){if(a.Ff&&!a.xc){var b=a.g.Oa("IFRAME",{frameborder:0,style:"border:0;vertical-align:bottom;"});b.src=Ad(vn).toString();a.xc=b;a.xc.className=a.Vg()+"-bg";N(a.xc,!1);Jh(a.xc,0)}a.hd||(a.hd=a.g.Oa("DIV",a.Vg()+"-bg"),N(a.hd,!1))}function Sn(a){a.Ud||(a.Ud=Xf(a.g,"SPAN"),N(a.Ud,!1),Qf(a.Ud,!0),a.Ud.style.position="absolute")}f.qp=function(){this.tk=!1};f.hi=function(a){return!!a&&"DIV"==a.tagName}; f.Nb=function(a){Qn.oa.Nb.call(this,a);a=Tb(this.Vg()).split(" ");Ib(this.ha(),a);Rn(this);Sn(this);Qf(this.ha(),!0);N(this.ha(),!1)};f.Ka=function(){this.xc&&Bf(this.xc,this.ha());Bf(this.hd,this.ha());Qn.oa.Ka.call(this);Cf(this.Ud,this.ha());this.Lk=new wn(this.g.g);Z(this).ka(this.Lk,"focusin",this.Ru);Tn(this,!1)};f.jc=function(){this.isVisible()&&this.Aa(!1);Bj(this.Lk);Qn.oa.jc.call(this);I(this.xc);I(this.hd);I(this.Ud)}; f.Aa=function(a){if(a!=this.li)if(this.wa&&this.wa.stop(),this.Ia&&this.Ia.stop(),this.ta&&this.ta.stop(),this.Ga&&this.Ga.stop(),this.Va&&Tn(this,a),a){if(this.dispatchEvent("beforeshow")){try{this.qa=this.g.g.activeElement}catch(e){}this.Pp();Z(this).ka(Yf(this.g),"resize",this.rj).ka(Yf(this.g),"orientationchange",this.wc);Un(this,!0);this.focus();this.li=!0;this.wa&&this.Ia?(Wj(this.wa,"end",this.ki,!1,this),this.Ia.play(),this.wa.play()):this.ki()}}else if(this.dispatchEvent("beforehide")){Z(this).Ta(Yf(this.g), "resize",this.rj).Ta(Yf(this.g),"orientationchange",this.wc);this.li=!1;this.ta&&this.Ga?(Wj(this.ta,"end",this.ji,!1,this),this.Ga.play(),this.ta.play()):this.ji();a:{try{var b=this.g,c=b.g.body,d=b.g.activeElement||c;if(!this.qa||this.qa==c){this.qa=null;break a}(d==c||b.fm(this.ha(),d))&&this.qa.focus()}catch(e){}this.qa=null}}}; function Tn(a,b){a.bc||(a.bc=new Kn(a.va,a.g));a=a.bc;if(b){a.g||(a.g=[]);b=a.i.Wn(a.i.g.body);for(var c=0;c=qo&&(Jh(this.g,a),this.j=a)};f.tf=function(){this.j=-1;po.oa.tf.call(this)};f.Je=function(){this.j=-1;po.oa.Je.call(this)};f.show=function(){this.g.style.display=""};f.kb=function(){this.g.style.display="none"};function ro(a,b,c){po.call(this,a,1,0,b,c)}u(ro,po);ro.prototype.tf=function(){this.show();ro.oa.tf.call(this)};ro.prototype.Je=function(){this.kb();ro.oa.Je.call(this)}; function so(a,b,c,d,e){if(3!=b.length||3!=c.length)throw Error("Start and end points must be 3D");oo.call(this,a,b,c,d,e)}u(so,oo);so.prototype.dg=function(){for(var a=[],b=0;b2*this.size&&Ao(this),a=!0):a=!1;return a};function Ao(a){if(a.size!=a.g.length){for(var b=0,c=0;b=d.g.length)return $f;var g=d.g[b++];return{value:a?g:d.i[g],done:!1}};return e};function Co(a,b){return Object.prototype.hasOwnProperty.call(a,b)};function Eo(){this.i=new zo;this.g=new Fo("");this.g.next=this.g.g=this.g}f=Eo.prototype;f.get=function(a,b){return(a=this.i.get(a))?a.value:b};f.set=function(a,b){var c=this.i.get(a);c?c.value=b:(c=new Fo(a,b),this.i.set(a,c),a=c,a.g=this.g.g,a.next=this.g,this.g.g=a,a.g.next=a)};f.shift=function(){return Go(this,this.g.next)};f.pop=function(){return Go(this,this.g.g)};f.remove=function(a){return(a=this.i.get(a))?(a.remove(),this.i.remove(a.key),!0):!1};f.Jc=ba(1); f.Xd=function(){return this.map(function(a,b){return b})};f.kc=function(){return this.map(function(a){return a})};f.forEach=function(a,b){for(var c=this.g.next;c!=this.g;c=c.next)a.call(b,c.value,c.key,this)};f.map=function(a,b){for(var c=[],d=this.g.next;d!=this.g;d=d.next)c.push(a.call(b,d.value,d.key,this));return c};f.some=function(a,b){for(var c=this.g.next;c!=this.g;c=c.next)if(a.call(b,c.value,c.key,this))return!0;return!1}; f.every=function(a,b){for(var c=this.g.next;c!=this.g;c=c.next)if(!a.call(b,c.value,c.key,this))return!1;return!0};function Go(a,b){a.g!=b&&(b.remove(),a.i.remove(b.key));return b.value}function Fo(a,b){this.key=a;this.value=b}Fo.prototype.remove=function(){this.g.next=this.next;this.next.g=this.g;delete this.g;delete this.next};function Ho(){R.call(this);this.i=new Eo}u(Ho,R);Ho.prototype.j=function(a){a.sort(Io);v(a,function(b){b.he(this)},this);this.i=new Eo;v(a,function(b){this.i.set(b.La(),b)},this);this.dispatchEvent("update")};function Io(a,b){return Jo(a)-Jo(b)}function Ko(a){return a.i.kc()}function Lo(a,b,c){a=Ko(a);for(var d=-1,e=0;e=b.V&&b.cancel())}this.qa?this.qa.call(this.Ja,this):this.ma=!0;this.j||(a=new Qo(this),Ro(this),So(this,!1,a))}};Po.prototype.na=function(a,b){this.O=!1;So(this,a,b)}; function So(a,b,c){a.j=!0;a.i=c;a.l=!b;To(a)}function Ro(a){if(a.j){if(!a.ma)throw new Uo(a);a.ma=!1}}Po.prototype.ug=function(a){Ro(this);So(this,!0,a)};function Vo(a,b,c,d){a.o.push([b,c,d]);a.j&&To(a)}Po.prototype.then=function(a,b,c){var d,e,g=new zl(function(h,k){e=h;d=k});Vo(this,e,function(h){h instanceof Qo?g.cancel():d(h);return Wo},this);return g.then(a,b,c)};Po.prototype.$goog_Thenable=!0;function Xo(a){return lb(a.o,function(b){return"function"===typeof b[1]})}var Wo={}; function To(a){if(a.s&&a.j&&Xo(a)){var b=a.s,c=Yo[b];c&&(q.clearTimeout(c.ub),delete Yo[b]);a.s=0}a.g&&(a.g.V--,delete a.g);b=a.i;for(var d=c=!1;a.o.length&&!a.O;){var e=a.o.shift(),g=e[0],h=e[1];e=e[2];if(g=a.l?h:g)try{var k=g.call(e||a.Ja,b);k===Wo&&(k=void 0);void 0!==k&&(a.l=a.l&&(k==b||k instanceof Error),a.i=b=k);if(yl(b)||"function"===typeof q.Promise&&b instanceof q.Promise)d=!0,a.O=!0}catch(l){b=l,a.l=!0,Xo(a)||(c=!0)}}a.i=b;d&&(k=r(a.na,a,!0),d=r(a.na,a,!1),b instanceof Po?(Vo(b,k,d),b.ta= !0):b.then(k,d));c&&(b=new Zo(b),Yo[b.ub]=b,a.s=b.ub)}function Uo(){cb.call(this)}u(Uo,cb);Uo.prototype.message="Deferred has already fired";Uo.prototype.name="AlreadyCalledError";function Qo(){cb.call(this)}u(Qo,cb);Qo.prototype.message="Deferred was canceled";Qo.prototype.name="CanceledError";function Zo(a){this.ub=q.setTimeout(r(this.i,this),0);this.g=a}Zo.prototype.i=function(){delete Yo[this.ub];throw this.g;};var Yo={};function $o(a,b){var c=b||{};b=c.document||document;var d=Ad(a).toString(),e=Xf(new cf(b),"SCRIPT"),g={xp:e,ag:void 0},h=new Po(ap,g),k=null,l=null!=c.timeout?c.timeout:5E3;0a.length?"":a[1]};function Pp(a){R.call(this);this.ob={};a&&this.Dd(a)}u(Pp,R);f=Pp.prototype;f.me=function(){return this.ob.w||this.getParent().g.width};f.Zd=function(){return this.ob.h||this.getParent().g.height};function wm(a){return a.me()/a.Zd()}f.getSize=function(){return new Je(this.me(),this.Zd())};f.Dd=function(a){for(var b in a)this.ob[b]=a[b];this.dispatchEvent("update")};f.he=function(a){this.s=a};f.getParent=function(){return this.s};f.hb=function(){return this.ob.title}; f.Ce=function(){var a=this.hb();return a?"Page "+a:""};function Jo(a){return a.ob.order}f.wd=function(a){if(this.ob.src&&a){var b=new S(this.ob.src);T(b,"w",a.width);return b.toString()}return this.ob.src};f.La=function(){return this.ob.pid};function Qp(a,b,c){if(8>=pc()){var d=[];d[0]=Q(a,"readystatechange",t(Rp,a,t(Sp,b),d))}else Wj(a,"load",t(Sp,b));c&&Wj(a,"error",t(Sp,c))}function Sp(a){V(a)}function Rp(a,b,c){if("complete"!=a.readyState)return!0;ek(c[0]);b();return!1}var Tp=H("div");function Up(a){if(a)if(A){Tp.appendChild(a);var b=t(I,a);Qp(a,b,b);a.src="//www.google.com/images/cleardot.gif"}else a.src="//www.google.com/images/cleardot.gif",I(a)};function Vp(a,b,c,d,e,g,h){R.call(this);this.s=a;this.rb=b;this.Bb=c;this.j=d;this.i=e;this.ma=g;this.O=h;this.l=Math.ceil(this.rb/this.j);this.o=Math.ceil(this.Bb/this.i);this.g=[];for(a=0;ab)return a[c]}else for(c=a.length-1;0<=c;c--)if(a[c]Math.abs(e-d)})});a.push.apply(a,c);yb(a);return a};function Aq(a,b){Ho.call(this);this.O={};a&&(this.ep=a.prefix,this.Co=a.image_prefix||a.prefix,a=kb(a.page,function(c){c=new this.l(c);b&&(c.zd=b);return c},this),this.j(a))}u(Aq,Ho);Aq.prototype.Zk=function(a){a=a.page;for(var b=0;b>11&1023;return 0===a?536870912:a};var Rq={};function Sq(a){return null!==a&&"object"===typeof a&&!Array.isArray(a)&&a.constructor===Object}var Tq,Uq=[];Lq(Uq,55);Tq=Object.freeze(Uq);var Vq;function Wq(a,b){Vq=b;a=new a(b);Vq=void 0;return a} function Xq(a,b,c){null==a&&(a=Vq);Vq=void 0;if(null==a){var d=96;c?(a=[c],d|=512):a=[];b&&(d=d&-2095105|(b&1023)<<11)}else{if(!Array.isArray(a))throw Error();d=Kq(a);if(d&64)return a;d|=64;if(c&&(d|=512,c!==a[0]))throw Error();a:{c=a;var e=c.length;if(e){var g=e-1,h=c[g];if(Sq(h)){d|=256;b=+!!(d&512)-1;e=g-b;1024<=e&&(Yq(c,b,h),e=1023);d=d&-2095105|(e&1023)<<11;break a}}b&&(h=+!!(d&512)-1,b=Math.max(b,e-h),1024e;e++){var g=c.concat(d[e].split(""));Dq[e]=g;for(var h=0;h>2];l=b[(l&3)<<4|m>>4];m=b[(m&15)<<2|k>>6];k=b[k&63];c[e++]=h+l+m+k}h=0;k=d;switch(a.length-g){case 2:h=a[g+1],k=b[(h&15)<<2]||d;case 1:a=a[g],c[e]=b[a>>2]+b[(a&3)<<4|h>>4]+k+d}a=c.join("")}return a}}return a};function $q(a,b,c){a=Array.prototype.slice.call(a);var d=a.length,e=b&256?a[d-1]:void 0;d+=e?-1:0;for(b=b&512?1:0;b=Qq(b)){if(b&256)return a[a.length-1][c]}else{var e=a.length;if(d&&b&256&&(d=a[e-1][c],null!=d))return d;b=c+(+!!(b&512)-1);if(b=g||e){e=b;if(b&256)g=a[a.length-1];else{if(null==d)return;g=a[g+(+!!(b&512)-1)]={};e|=256}g[c]=d;e!==b&&Lq(a,e)}else a[c+(+!!(b&512)-1)]=d,b&256&&(a=a[a.length-1],c in a&&delete a[c])} function ir(a,b){a=fr(a,b);a=null==a?a:"boolean"===typeof a||"number"===typeof a?!!a:void 0;return null!=a?a:!1}function jr(a,b,c){if(null!=c){if("boolean"!==typeof c)throw Error("Expected boolean but got "+Ra(c)+": "+c);c=!!c}var d=a.Ic,e=Mq(d);if(e&2)throw Error();hr(d,e,b,!1===c?void 0:c);return a};function kr(a,b,c){this.Ic=Xq(a,b,c)}kr.prototype.toJSON=function(){var a=br(this.Ic,cr,void 0,void 0,!1,!1);return lr(this,a,!0)};kr.prototype.clone=function(){var a=this.Ic;return Wq(this.constructor,er(a,Mq(a),!1))};kr.prototype.tl=Rq;kr.prototype.toString=function(){return lr(this,this.Ic,!1).toString()}; function lr(a,b,c){var d=a.constructor.Jw,e=Qq(Mq(c?a.Ic:b)),g=!1;if(d){if(!c){b=Array.prototype.slice.call(b);var h;if(b.length&&Sq(h=b[b.length-1]))for(g=0;g=e){Object.assign(b[b.length-1]={},h);break}g=!0}e=b;c=!c;h=Mq(a.Ic);a=Qq(h);h=+!!(h&512)-1;for(var k,l,m=0;mthis.g.width?this.l.wd(this.j):Gr.prototype.i.call(this)};function Ir(a,b,c,d,e){X.call(this);this.Og(a.Fa());this.N=a;this.i=c;this.na=[];this.nm=d;L(d,c);this.qa=yr(this);K(this.qa,"backgroundColor","#fff");L(this.qa,c);if(this.wa=void 0!==e?e:!0)a=yr(this),L(a,c),this.ta=new Jr(a),this.ta.show();b&&(this.l=b,this.g.ka(b,"update",this.kg),Cp(b))}u(Ir,X);f=Ir.prototype;f.getSize=function(){return this.i};f.Da=function(){return this.l};function Kr(a,b){a.na.push(b);b.ne(a)}f.kg=function(){};function Lr(a){a.dispatchEvent("load");a.wa&&a.ta.kb()} function yr(a){var b=H("div");W(b,!0);K(b,{position:"absolute",left:0,top:0});a.nm.appendChild(b);return b}f.Ma=function(){v(this.na,function(a){a.Ea()});this.na=null;this.o&&I(this.o)};function Mr(a){a.s=yr(a);L(a.s,a.getSize());K(a.s,{backgroundImage:"url(//www.google.com/images/cleardot.gif)",backgroundRepeat:"repeat"});a.g.ka(a.s,"mousedown",a.oq);a.g.ka(a.s,"dragstart",Gj)}f.oq=function(a){a.display=this;Nr.dispatchEvent(a)};var Nr=new R; function Jr(a){this.g=a;a={position:"absolute",left:0,color:"#808080",fontSize:"13px",backgroundColor:"white"};for(var b=0;2>b;b++){var c=H("div");W(c);K(c,a);this.g.appendChild(c);c.textContent="Loading...";a.bottom=0}}Jr.prototype.show=function(a){K(this.g,{display:a?"none":""})};Jr.prototype.kb=function(){this.show(!0)};Ir.prototype.Kl=function(){Or(this)};function Or(a,b){a.o&&I(a.o);a.o=yr(a);new Pr(a.o,a.getSize(),b)} function Pr(a,b,c){this.g=a;K(a,{backgroundColor:"#FFF",textAlign:"center"});L(a,b);O(a,sj.g(c||""));W(this.g)};function Qr(a,b,c){Ir.call(this,a,b.Da(),b.g,c);this.Og(Rr);a=yr(this);this.V=new Sr(b.g,a);a=yr(this);this.O=new Sr(b.g,a);Mr(this);Nh(c,!0);w(c,"pageImageDisplay");this.ma=b;b.Da()&&this.kg()}n(Qr,Ir);f=Qr.prototype;f.mb=function(a){hq(a,"output",null);Ir.prototype.mb.call(this,a);a.wd()&&this.kg()}; f.kg=function(){var a=this.Da(),b=this.ma.i();if(b&&!this.j){b=Tr(b);Wj(this.V,"load",r(this.pq,this,a,b,this.getSize().width));Ur(this.V,[b]);var c=tp(this.N.Kb,a.La());c.push(b);Ur(this.O,c);this.j=!0;a==this.N.Da()&&this.dispatchEvent("fetch")}kq(a,[16,8])&&(a=Le('

%s
',Lp("/googlebooks/restricted_logo.gif"),"You have either reached a page that is unavailable for viewing or reached your viewing limit for this book."),Or(this, a),Lr(this))};f.pq=function(a,b,c){a==this.N.Da()&&this.dispatchEvent("loaded");this.O.empty();var d=this.N.Kb;a=a.La();d.g[a]=d.g[a]||{};d.g[a][c]=b;Lr(this)};f.lc=ba(13);f.Ma=function(){this.j=!1;this.V.empty();this.O.empty();Ir.prototype.Ma.call(this)};var Rr=new R,Tr=ad;function Sr(a,b){R.call(this);this.i=a;this.j=b;this.rf=!1;this.g=H("IMG");bn(this.g,"Page");this.g.width=this.i.width;this.j.appendChild(this.g);W(this.j)}n(Sr,R);Sr.prototype.empty=function(){for(var a;a=Gf(this.j);)Up(a)}; function Ur(a,b){Qp(a.g,r(a.l,a,a.g));for(var c=0;cc.width||Math.abs(b.y-a.y)>c.height?this.Ed(a):(this.l&&(this.l.Ea(),this.l=null),this.l=new Lm([b.x,b.y],[a.x,a.y],250+250*Fe(He(b,a)/800,0,1),Om),Q(this.l,"animate",r(this.rm,this)),Q(this.l,"end",r(this.qq,this)),this.dispatchEvent("movestart"),Wj(this,"movestart",r(this.l.Ea,this.l)),this.l.play())};f.rm=function(a){a=a.coords.map(Math.round);this.Uc(new B(a[0],a[1]))};f.qq=function(a){this.rm(a);this.dispatchEvent("moveend")}; f.Ab=function(){return this.j};f.De=ba(14);f.Hc=function(){return new B(Math.round(this.Fb.x+this.i.width/2),Math.round(this.Fb.y+this.i.height/2))};f.Ie=function(a){return new B(Math.round(a.x+this.i.width/2*-1),Math.round(a.y+this.i.height/2*-1))};f.ua=function(){Vr.oa.ua.call(this);this.O.Ma()};f.Kk=function(a){null==this.V&&(this.V=a);this.V.style.opacity=0;this.na.start()};f.Ns=function(){var a=this;this.na.stop();N(this.V,!0);V(function(){a.V.style.opacity=1})};f.om=1;function as(a,b,c,d){Ir.call(this,a,b.Da(),b.g,c,d);this.ma=yr(this);Mr(this);b.Da()&&this.kg();this.N=a;this.O=Q(this.N.Fa(),"update",this.Ba,!1,this)}n(as,Ir);as.prototype.kg=function(){var a=this.Da(),b=a.wd(),c=this.N.Wa().Qi(),d=a.na;if(b&&d&&!this.j){var e=Zp(d,this.getSize().height);"number"===typeof e&&(d=$p(d,e),b=new S(b),T(b,"zoom",e),T(b,"pg",a.ta),b=b.toString(),this.V=new Vp(this.ma,d,this.getSize().height,c.Lj,c.Kj,r(c.co,c,b,d,this.getSize().height),null),this.j=!0,this.Ba())}}; as.prototype.Ba=function(){if(this.j){var a=yh(this.ma);if(a){var b=Eh(this.ma);a.top-=b.y;a.bottom-=b.y;a.left-=b.x;a.right-=b.x;0Math.abs(e[0])&&(d.x=e[1]||d.x,d.y=e[2]||d.y)});this.O||(this.O=new Rl(100),this.g.ka(this.O,"tick",this.xq));this.V=d;d.x||d.y?this.O.start():this.O.stop()}}};f.xq=function(){var a=this.V,b=this.Ca;$r(b,new B(15*a.x,15*a.y),r(b.Ed,b))}; f.Ks=function(){ek(this.s);Bj(this.O);this.O=null};function ls(){this.o="Selection copied to clipboard";this.g=!1;var a=F("DIV","entity-page-snackbar"),b=F("SPAN","entity-page-snackbar-text");J(b,this.o);a.appendChild(b);Y(a,"hidden",!0);document.body.appendChild(a);this.l=a}ls.prototype.show=function(){this.g?(this.i(),V(r(this.j,this),500)):this.j();V(r(this.i,this),6E3)};ls.prototype.j=function(){K(this.l,"bottom","0");this.g=!0};ls.prototype.i=function(){K(this.l,"bottom","-48px");this.g=!1};function ms(a){this.i=a;this.l=new ls;this.j=ns(this)}ms.prototype.ha=function(){return this.j};function ns(a){var b=F("DIV");Ib(b,["entity-page-copy-button","entity-page-action-chip"]);var c=F("SPAN");w(c,"entity-page-action-chip-icon");var d=F("SPAN");w(d,"entity-page-action-chip-label");J(d,"Copy");b.appendChild(c);b.appendChild(d);Q(b,"click",r(a.g,a));Ym(b,"button");Qf(b,!0);Q(b,"keydown",function(e){32!=e.keyCode&&13!=e.keyCode||a.g.call(a)});return b} ms.prototype.g=function(){this.i.focus();this.i.select();document.execCommand("copy");this.l.show()};function os(){}os.prototype.Mc=function(){};function ps(a,b,c,d,e,g,h,k,l){var m=qs(c),p=Ih(a),x=yh(a);x&&ih(p,hh(x));x=bf(a);var C=bf(c);if(x.g!=C.g){var E=x.g.body;C=Yf(C);var G=new B(0,0),P=tf(df(E));if(vc(P,"parent")){var Sa=E;do{var Qb=P==C?zh(Sa):Fh(Sa);G.x+=Qb.x;G.y+=Qb.y}while(P&&P!=C&&P!=P.parent&&(Sa=P.frameElement)&&(P=P.parent))}E=Ie(G,zh(E));!A||Tc(9)||qf(x.g)||(E=Ie(E,rf(x.g)));p.left+=E.x;p.top+=E.y}a=rs(a,b);b=p.left;a&4?b+=p.width:a&2&&(b+=p.width/2);p=new B(b,p.top+(a&1?p.height:0));p=Ie(p,m);e&&(p.x+=(a&4?-1:1)*e.x,p.y+= (a&1?-1:1)*e.y);if(h)if(l)var ua=l;else if(ua=yh(c))ua.top-=m.y,ua.right-=m.x,ua.bottom-=m.y,ua.left-=m.x;return ss(p,c,d,g,ua,h,k)} function qs(a){if(a=a.offsetParent){var b="HTML"==a.tagName||"BODY"==a.tagName;if(!b||"static"!=rh(a,"position")){var c=zh(a);if(!b){b=Lh(a);var d;if(d=b){d=og&&0<=dc(en,10);var e;if(e=Kc)e=0<=dc(cn,10);var g=ng&&0<=dc(en,85);d=Ac||d||e||g}b=d?-a.scrollLeft:b&&!zc&&"visible"!=rh(a,"overflowX")?a.scrollWidth-a.clientWidth-a.scrollLeft:a.scrollLeft;c=Ie(c,new B(b,a.scrollTop))}}}return c||new B} function ss(a,b,c,d,e,g,h){a=a.clone();var k=rs(b,c);c=M(b);h=h?h.clone():c.clone();a=a.clone();h=h.clone();var l=0;if(d||0!=k)k&4?a.x-=h.width+(d?d.right:0):k&2?a.x-=h.width/2:d&&(a.x+=d.left),k&1?a.y-=h.height+(d?d.bottom:0):d&&(a.y+=d.top);g&&(e?(d=h,k=0,65==(g&65)&&(a.x=e.right)&&(g&=-2),132==(g&132)&&(a.y=e.bottom)&&(g&=-5),a.xe.right&&(d.width=Math.min(e.right-a.x,l+d.width-e.left), d.width=Math.max(d.width,0),k|=4)),a.x+d.width>e.right&&g&1&&(a.x=Math.max(e.right-d.width,e.left),k|=1),g&2&&(k|=(a.xe.right?32:0)),a.ye.bottom&&(d.height=Math.min(e.bottom-a.y,l+d.height-e.top),d.height=Math.max(d.height,0),k|=8)),a.y+d.height>e.bottom&&g&4&&(a.y=Math.max(e.bottom-d.height,e.top),k|=2),g&8&&(k|=(a.ye.bottom?128:0)),e=k):e=256,l=e);e=new fh(0, 0,0,0);e.left=a.x;e.top=a.y;e.width=h.width;e.height=h.height;a=l;if(a&496)return a;sh(b,new B(e.left,e.top));h=e.getSize();Ke(c,h)||Oh(b,h);return a}function rs(a,b){return(b&8&&Lh(a)?b^4:b)&-9};function ts(a,b){this.wb=8;this.Ia=b||void 0;Ln.call(this,a)}u(ts,Ln);function us(a,b){a.wb=b;a.isVisible()&&a.fg()}ts.prototype.jd=function(){return this.Ia||null};ts.prototype.setPosition=function(a){this.Ia=a||void 0;this.isVisible()&&this.fg()};ts.prototype.fg=function(){if(this.Ia){var a=!this.isVisible()&&"move_offscreen"!=this.getType(),b=this.ha();a&&(b.style.visibility="hidden",N(b,!0));this.Ia.Mc(b,this.wb,this.ql);a&&N(b,!1)}};function vs(a){ts.call(this,a);Nn(this,!1);this.i=new hk;this.g=aq();w(a,"viewport-selection-popup");ws&&ws.Ea();ws=this}n(vs,ts);vs.prototype.j=function(){this.dispatchEvent("close");this.Ea()}; function xs(a,b,c){var d=a.g?D("selection-popup-table"):a.ha(),e=a.g?H("TR"):H("div");w(e,"selection-popup-select-container");d.appendChild(e);d=a.g?H("TD"):H("div");w(d,"selection-popup-select-label");e.appendChild(d);d.appendChild(xf(b));d=a.g?H("TD"):H("div");e.appendChild(d);b=H("input");b.value=c;w(b,"viewport-input");d.appendChild(b);Nh(b,!1);a.g&&(c=H("TD"),e.appendChild(c),e=(new ms(b)).ha(),c.appendChild(e));a.i.ka(b,"mousedown",ys)}function ys(a){a.stopPropagation()} vs.prototype.ua=function(){I(this.ha());ts.prototype.ua.call(this);this.i.Ea()};var ws=null;function zs(a,b){this.g=a instanceof B?a:new B(a,b)}u(zs,os);zs.prototype.Mc=function(a,b,c,d){var e=df(a);var g=e.body;e=e.documentElement;e=new B(g.scrollLeft||e.scrollLeft,g.scrollTop||e.scrollTop);g=this.g.x+e.x;e=this.g.y+e.y;var h=qs(a);g-=h.x;e-=h.y;ss(new B(g,e),a,b,c,null,null,d)};function As(a,b){zs.call(this,a,b)}u(As,zs);As.prototype.i=0;As.prototype.l=function(a){this.i=a};As.prototype.Mc=function(a,b,c,d){var e=vh(a);e=yh(e);var g=sf(bf(a).g);g=new B(this.g.x+g.scrollLeft,this.g.y+g.scrollTop);var h=b,k=ss(g,a,h,c,e,10,d);if(0!=(k&496)){if(k&16||k&32)h^=4;if(k&64||k&128)h^=1;k=ss(g,a,h,c,e,10,d);0!=(k&496)&&ss(g,a,b,c,e,this.i,d)}};function Bs(a){Ar.call(this,"#4a95d6");this.j=a}n(Bs,Ar);Bs.prototype.ne=function(a){Ar.prototype.ne.call(this,a);K(this.l,{cursor:"pointer"});this.g.ka(this.l,"mousedown",Cs)};function Cs(a){a.stopPropagation()} function is(a,b,c,d){a.jg();kb(b,r(a.Qn,a));a.s&&ek(a.s);a.o&&a.o.Ea();b=H("div");document.body.appendChild(b);var e=es(a.O);if(e){var g=zh(a.l);b=new vs(b);if(c&&d){var h=a.Da(),k=h.wd();if(k){var l=new S(k);d=[d.left,d.top,d.width,d.height].join();T(l,"ci",d);T(l,"edge",0);l=l.toString();var m=new S(h.zc());T(m,"ci",d);T(m,"source","bookclip");m=Le('',m.toString(),l)}d=m;Af(b.ha());m=b.ha();h=H("IMG");h.src="/googlebooks/images/material/close_black_24dp.png";w(h, "selection-popup-close");m.appendChild(h);b.i.qf(h,"click",r(b.j,b));h=F("DIV",{},"Share this clip");w(h,"selection-popup-title");m.appendChild(h);b.g&&(h=F("TABLE",{id:"selection-popup-table"}),m.appendChild(h));c&&(xs(b,"Selection text",c),m=H("DIV"),w(m,"selection-popup-translate-container"),b.g?(h=Gf(D("selection-popup-table")),k=H("TD"),h.appendChild(k),k.appendChild(m)):b.ha().appendChild(m),h=new S("https://translate.google.com/translate_t"),T(h,"text",c),T(h,"sl","auto"),T(h,"tl","auto"), c=H("A"),c.href=h.toString(),c.target="_blank",b.g&&(h=F("SPAN"),Ib(h,["selection-popup-translate-icon","entity-page-action-chip-icon"]),c.appendChild(h)),h=F("SPAN"),J(h,"Translate"),w(h,"entity-page-action-chip-label"),c.appendChild(h),h=H("SPAN"),J(h,"\u00bb"),w(h,"selection-popup-translate-arrow"),c.appendChild(h),w(c,"selection-popup-translate-link"),w(c,"entity-page-action-chip"),m.appendChild(c));l&&xs(b,"Image",l);d&&xs(b,"Embed",d)}else c=H("DIV"),J(c,"Loading..."),w(c,"selection-popup-loading-msg"), b.ha().appendChild(c);us(b,4);a.o=b;c=g.x+e.left+e.width;e=g.y+e.top+e.height;g=M(b.ha()).width;24>c-g&&(c=g+24);V(t(Ds,b,new As(new B(c,e))));a.s=Wj(b,"close",r(a.jg,a))}}function Ds(a,b){a.Id||(a.setPosition(b),a.Aa(!0))}Bs.prototype.jg=function(){Ar.prototype.jg.call(this);this.o&&this.o.Ea()};Bs.prototype.ua=function(){Ar.prototype.ua.call(this);this.o&&this.o.Ea();this.s&&ek(this.s)};function Es(a,b,c){return a.Wa().Qi()?new as(a,b,c):new Qr(a,b,c)}function Fs(a,b){if(b instanceof Qr){Kr(b,new bs(a.Xa()));Kr(b,new Er);var c=new Bs(a.Ab()),d=new js(c,a.Fa());Kr(b,d);Kr(b,c);Kr(b,new Fr(a))}};function Gs(a,b){X.call(this);this.N=a;b=Math.floor(b/2);var c=Math.floor(b/this.N.ab().g.aspectRatio());this.j=new Je(b,c);this.i=H("div");K(this.i,{position:"absolute",backgroundColor:"white",top:0,left:0});this.na=[];a.Fa().s.i.appendChild(this.i);this.l=H("div");this.s=H("div");this.na.push(Q(this.l,"dblclick",r(this.Bt,this)));a={overflow:"hidden",backgroundColor:"#fcfcfc",position:"absolute",border:"1px solid #ccc"};K(this.l,a);K(this.s,a);this.i.appendChild(this.l);this.i.appendChild(this.s); this.V=H("div");this.ma=H("div");this.l.appendChild(this.V);this.s.appendChild(this.ma);Hs(this)}n(Gs,Pm);function Hs(a){a.o&&a.o.Ma();a.O&&a.O.Ma();Af(a.V);Af(a.ma);Oh(a.l,a.j);Oh(a.s,a.j);a.o=Es(a.N,new Gr(a.qa,a.j),a.V);Fs(a.N,a.o);a.ta=new zr(!0);Kr(a.o,a.ta);a.O=Es(a.N,new Gr(a.wa,a.j),a.ma);a.Ba=new zr(!1);Fs(a.N,a.O);Kr(a.O,a.Ba)}f=Gs.prototype;f.setPosition=function(a){0>a.x&&(a.x=0);sh(this.i,a)};f.Bt=function(a){a.preventDefault();a.stopPropagation();this.N.qb("previous")}; f.Aa=function(a){K(this.i,{display:a?"":"none"})};f.Oc=function(){K(this.l,{left:0,top:0});K(this.s,{left:this.j.width+"px",top:0})};f.Md=function(){return jb([this.qa,this.wa],function(a){return!!a})};f.Ma=function(){this.o.Ma();this.O.Ma();for(var a;a=this.na.pop();)ek(a);this.i.parentNode&&I(this.i)};function Is(a){return 2*a};function Js(a){this.N=a}n(Js,Xp);Js.prototype.render=function(a){var b=new Gs(this.N,a.getSize().width);b.setPosition(a.jd());b.Oc();b.Aa(!0);return this.g=b};function Ks(a,b){var c=a.match(Ls);return c?Number(c[1])*b[c[2]]:Number(a)}var Ls=/^(-?\d+\.?\d*)([KMGTPEZYkmun]?)B?$/,Ms={"":1,n:1E-9,u:1E-6,m:.001,k:1E3,K:1E3,M:1E6,G:1E9,T:1E12,P:1E15,E:1E18,Z:1E21,Y:1E24},Ns={"":1,n:Math.pow(1024,-3),u:Math.pow(1024,-2),m:1/1024,k:1024,K:1024,M:Math.pow(1024,2),G:Math.pow(1024,3),T:Math.pow(1024,4),P:Math.pow(1024,5),E:Math.pow(1024,6),Z:Math.pow(1024,7),Y:Math.pow(1024,8)};function Os(a,b){var c=Ps(a),d=Ps(b);0==Jo(a)||0==Jo(b)?d="This is a preview. The total pages displayed will be limited.":"number"!==typeof c||"number"!==typeof d||c>=d||1==Math.abs(c-d)?d="Some pages are omitted from this book preview.":Qs(a,b)?d="Page "+(--d+" is not part of this book preview."):(a=++c+"",d=--d+"",d="Pages "+a+" to "+d+" are not shown in this preview.");return d}function Ps(a){a=a.hb();var b;/[^0-9]/.test(a)||Sb(a)?b=null:b=Rb(a,"B")?Ks(a,Ns):Ks(a,Ms);return b} function Qs(a,b){a=Ps(a);b=Ps(b);return 0==a+1-(b-1)};function Rs(a,b,c){R.call(this);this.N=a;this.j=b;this.o=M(b).width;this.s=c;this.i=!1;this.g=xm()}n(Rs,R);Rs.prototype.nf=function(){return this.i};function Ss(a,b){if(b!=a.i){a.i=b;var c=a.N.Fa().s.i;N(c,!1);M(c);[t(Ts,a.j,a.s,a.o,a.g,b),r(a.l,a),t(N,c,!0)].forEach(V)}}Rs.prototype.l=function(){this.dispatchEvent("change")};function Ts(a,b,c,d,e){var g=b.style.width;d=d?"right":"left";e?(b.style[d]="0",b.style.width=g+c):(b.style[d]="",b.style.width="");N(a,!e)};var Us=null;function Vs(a,b){hk.call(this);this.i=Us;this.N=a;this.g=b;this.N.Wa().O||(this.ka(this.N,"pageturn",this.l),this.ka(this.g,"dispose",this.Ea))}n(Vs,hk);Vs.prototype.l=function(){var a=this.g.o.g.Md()[0]||new Pp,b=this.g.o.g.Md()[1]||new Pp,c=this.O,d=this.o,e=d?Jo(d):-1,g=Jo(a)||-1,h=Jo(b)||-1,k=Math.max(c?Jo(c):-1,e),l=Math.max(g,h);if(Math.abs(l-k)>this.g.om){if(0l-k&&(m=-1!=h?b:a,p=d);1"+e));w(c,"separator-message");w(c,"separator-pubinfo-message")}w(a,"separator-pubinfo");w(d,"separator-pubinfo")}else a=c.insertRow(-1).insertCell(-1),w(a,"separator-message"),a.textContent=Os(this.l,this.j);Nh(this.i, !0);W(this.i)}n(dt,Pm);dt.prototype.nb=function(a){L(this.i,a)};dt.prototype.setPosition=function(a){sh(this.i,a)};dt.prototype.Ma=function(){I(this.i)};function et(a,b,c,d){this.Ej=this.Yk=10;this.ei=this.fi=20;b=Math.floor((b-20)/(100+this.Yk));d&&2a?pb(b,a):pb(b,1500));return new xq(kb(b,nt))};f.xg=function(a){return this.o(a)}; f.getSize=function(){if(this.j.hasChildNodes()){var a=Qh(this.j.childNodes[0]).width;a=new Je(a,this.i.height)}else a=this.i;return a};function st(a){var b=new uq;vq(b,vm,new ht(a,t(bd,mt,a.Cb,a,a.s.i)));vq(b,pr,new vr(a.Cb,function(c){return new dt(a.s.i,c)}));return b}f.Sv=function(){if(this.wa){var a=om(this.rc,this.Hc().y);a&&a.Da&&(a=a.Da(),this.Cb.Da()!=a&&(this.Gh=!0,this.Cb.Ad(a.La()),this.Gh=!1))}this.wa=!0}; f.Jt=function(){var a=this.Cb.Da(),b=this.Cb.ab(),c=Mo(b,a.La());if(!c)a:{c=Jo(a);b=Ko(b);for(a=b.length-1;0<=a;a--){var d=b[a];if(Jo(d)<=c){c=d;break a}}c=null}a=this.Fb;b=this.Eb();d=b.yc(c);a=Ie(a,d.jd());b=this.xg(b.s());c=b.yc(c).jd();c=new B(c.x+a.x,c.y+a.y);this.Tc(b);this.Ed(c)};f.yq=function(){this.O.Ma();this.ac()}; f.Ik=function(a){if(a.ao&&a.O){var b=a.O;if(null!=a.ma)var c=a.ma;else a.ma=new or(this.s.i),c=a.ma;c.g=this.s.i;if(D("focus_article_div")){var d=D("focus_article_div");I(d)}d=this.Eb().yc(a);a=d.tb()/a.me();if(b.Mf()&&(b=b.Mf())){var e=b[0];if(e&&4==e.length){b=a*e[0]+d.Yd();d=a*e[1]+d.kd();var g=a*e[2];a*=e[3];e=H("DIV");e.setAttribute("id","focus_article_div");W(e,!0);Jh(e,.3);K(e,{position:"absolute",left:b+"px",top:d+"px",width:g+"px",height:a+"px",cursor:"pointer",backgroundColor:"#36C",border:"2px solid #00F"}); c.g.appendChild(e)}}}};function ut(a,b,c,d,e){X.call(this);this.N=a;this.Ca=b;this.l=c;var g=H("div");K(g,{position:"absolute"});e=e.width-2;sh(g,d.x+(xm()?e:0),d.y);b.s.i.appendChild(g);this.i=g;b=Math.floor(e/wm(c));g=new Je(e,b);this.j=H("div");this.i.appendChild(this.j);K(this.j,{padding:"1px",position:"absolute"});this.o();b=H("div");this.j.appendChild(b);K(b,{overflow:"hidden",backgroundColor:"#fcfcfc"});L(b,g);this.j.appendChild(b);d=H("IMG");d.title=c.Ce();this.O=d;e=S;var h=new S(c.s.Co);T(h,"pg",c.La());c.ob.sig&& T(h,"sig",c.ob.sig);e=new e(h.toString());T(e,"zoom","1");T(e,"img","1");T(e,"w",g.width);if(g=this.N.Wa().nd)T(e,"imgtk",g),T(e,"jtp",Jo(c));d.src=e.toString();b.appendChild(d);K(this.j,"cursor","pointer");this.g.ka(this.j,"click",this.s);this.g.ka(a,"pagechange",this.o)}n(ut,Pm);ut.prototype.o=function(){var a=!1,b=this.N.Da();b&&b==this.l&&(a=!0);K(this.j,"backgroundColor",a?"#6B90DA":"#ccc")};ut.prototype.s=function(){this.N.Wb(qt);this.N.mb(this.l);vt.dispatchEvent("click")}; ut.prototype.Ma=function(){Up(this.O);I(this.i)};var vt=new R;function wt(a,b){this.N=a;this.Ca=b}n(wt,Xp);wt.prototype.render=function(a){return new ut(this.N,this.Ca,a.Da(),a.jd(),a.getSize())};function xt(a){var b=a.Ab();K(b,{overflow:"hidden"});var c=new pt(this,b);ft.call(this,a,c);this.g.ka(this,"move",this.ac);K(b,{overflow:"auto"});Xr(this,yt(this));this.Tc(zt(this));Yr(this,new jt(this));V(r(this.ac,this),0);this.g.ka(this,"resize",this.o);var d=D("subscription-bar");d&&(this.Kk(d),V(function(){N(d,!1)},600))}u(xt,ft);xt.prototype.Od=function(a){a=this.Eb().yc(a).jd();this.Ed(new B(void 0,a.y-40))}; function zt(a){var b=a.Cb.Wa().wc;return new et(a.Cb.ab(),aq()?Math.min(a.getSize().width,1120):a.getSize().width,b,b)}xt.prototype.o=function(){this.Tc(zt(this));this.Od(this.Cb.Da())};function yt(a){var b=new uq;vq(b,vm,new wt(a.Cb,a));return b};function At(a){this.vc=a.Title;this.i=a.Pid;this.g=a.PgNum}At.prototype.hb=function(){return this.vc};At.prototype.getId=function(){return this.i};function Bt(a,b,c,d){Ij.call(this,d);this.type="key";this.keyCode=a;this.charCode=b;this.repeat=c}u(Bt,Ij);function Ct(a,b){R.call(this);a&&this.attach(a,b)}u(Ct,R);f=Ct.prototype;f.va=null;f.aj=null;f.jl=null;f.cj=null;f.Qc=-1;f.oe=-1;f.Nj=!1; var Dt={3:13,12:144,63232:38,63233:40,63234:37,63235:39,63236:112,63237:113,63238:114,63239:115,63240:116,63241:117,63242:118,63243:119,63244:120,63245:121,63246:122,63247:123,63248:44,63272:46,63273:36,63275:35,63276:33,63277:34,63289:144,63302:45},Et={Up:38,Down:40,Left:37,Right:39,Enter:13,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,"U+007F":46,Home:36,End:35,PageUp:33,PageDown:34,Insert:45},Ft=Dc&&Ac;f=Ct.prototype; f.zq=function(a){if(Bc||yc)if(17==this.Qc&&!a.ctrlKey||18==this.Qc&&!a.altKey||Dc&&91==this.Qc&&!a.metaKey)this.oe=this.Qc=-1;-1==this.Qc&&(a.ctrlKey&&17!=a.keyCode?this.Qc=17:a.altKey&&18!=a.keyCode?this.Qc=18:a.metaKey&&91!=a.keyCode&&(this.Qc=91));tk(a.keyCode,this.Qc,a.shiftKey,a.ctrlKey,a.altKey,a.metaKey)?(this.oe=uk(a.keyCode),Ft&&(this.Nj=a.altKey)):this.handleEvent(a)};f.Aq=function(a){this.oe=this.Qc=-1;this.Nj=a.altKey}; f.handleEvent=function(a){var b=a.Ob,c=b.altKey;if(A&&"keypress"==a.type){var d=this.oe;var e=13!=d&&27!=d?b.keyCode:0}else(Bc||yc)&&"keypress"==a.type?(d=this.oe,e=0<=b.charCode&&63232>b.charCode&&sk(d)?b.charCode:0):("keypress"==a.type?(Ft&&(c=this.Nj),b.keyCode==b.charCode?32>b.keyCode?(d=b.keyCode,e=0):(d=this.oe,e=b.charCode):(d=b.keyCode||this.oe,e=b.charCode||0)):(d=b.keyCode||this.oe,e=b.charCode||0),Dc&&63==e&&224==d&&(d=191));var g=d=uk(d);d?63232<=d&&d in Dt?g=Dt[d]:25==d&&a.shiftKey&& (g=9):b.keyIdentifier&&b.keyIdentifier in Et&&(g=Et[b.keyIdentifier]);if(!Ac||"keypress"!=a.type||tk(g,this.Qc,a.shiftKey,a.ctrlKey,c,a.metaKey))a=g==this.Qc,this.Qc=g,b=new Bt(g,e,a,b),b.altKey=c,this.dispatchEvent(b)};f.ha=function(){return this.va};f.attach=function(a,b){this.cj&&Gt(this);this.va=a;this.aj=Q(this.va,"keypress",this,b);this.jl=Q(this.va,"keydown",this.zq,b,this);this.cj=Q(this.va,"keyup",this.Aq,b,this)}; function Gt(a){a.aj&&(ek(a.aj),ek(a.jl),ek(a.cj),a.aj=null,a.jl=null,a.cj=null);a.va=null;a.Qc=-1;a.oe=-1}f.ua=function(){Ct.oa.ua.call(this);Gt(this)};function Ht(){}var It;Qa(Ht);var Jt={button:"pressed",checkbox:"checked",menuitem:"selected",menuitemcheckbox:"checked",menuitemradio:"checked",radio:"checked",tab:"selected",treeitem:"selected"};f=Ht.prototype;f.lg=function(){};f.Nc=function(a){return a.g.Oa("DIV",Kt(this,a).join(" "),a.Dc())};f.Fc=function(a){return a};function Lt(a,b,c){(a=a.ha?a.ha():a)&&(c?Ib:Kb)(a,[b])}f.mi=function(){return!0}; f.Rb=function(a,b){b.id&&a.Ng(b.id);var c=this.Fc(b);c&&c.firstChild?Mt(a,c.firstChild.nextSibling?ub(c.childNodes):c.firstChild):a.ng=null;var d=0,e=this.Ra(),g=this.Ra(),h=!1,k=!1,l=ub(Fb(b));l.forEach(function(m){h||m!=e?k||m!=g?d|=this.Pi(m):k=!0:(h=!0,g==e&&(k=!0));1==this.Pi(m)&&Of(c)&&Qf(c,!1)},this);a.qe=d;h||(l.push(e),g==e&&(k=!0));k||l.push(g);(a=a.Kd)&&l.push.apply(l,a);h&&k&&!a||Gb(b,l.join(" "));return b};f.ni=function(a){In(a)&&this.tm(a.ha(),!0);a.isEnabled()&&this.Zg(a,a.isVisible())}; function Nt(a,b,c){if(a=c||a.lg())c=b.getAttribute("role")||null,a!=c&&Ym(b,a)}function Ot(a,b,c){var d=b.Na;null!=d&&a.Ph(c,d);b.isVisible()||Y(c,"hidden",!b.isVisible());b.isEnabled()||a.je(c,1,!b.isEnabled());Pt(b,8)&&a.je(c,8,Qt(b,8));Pt(b,16)&&a.je(c,16,Qt(b,16));Pt(b,64)&&a.je(c,64,b.md())}f.Ph=function(a,b){bn(a,b)};f.Oj=function(a,b){Nh(a,!b,!A)};f.tm=function(a,b){Lt(a,this.Ra()+"-rtl",b)};f.sm=function(a){var b;return Pt(a,32)&&(b=a.ha())?Of(b):!1}; f.Zg=function(a,b){var c;if(Pt(a,32)&&(c=a.ha())){if(!b&&Qt(a,32)){try{c.blur()}catch(d){}Qt(a,32)&&a.oi(null)}Of(c)!=b&&Qf(c,b)}};f.Aa=function(a,b){N(a,b);a&&Y(a,"hidden",!b)};f.Vc=function(a,b,c){var d=a.ha();if(d){var e=this.sh(b);e&&Lt(a,e,c);this.je(d,b,c)}};f.je=function(a,b,c){It||(It={1:"disabled",8:"selected",16:"checked",64:"expanded"});b=It[b];var d=a.getAttribute("role")||null;d&&(d=Jt[d]||b,b="checked"==b||"selected"==b?d:b);b&&Y(a,b,c)}; f.mg=function(a,b){var c=this.Fc(a);c&&(Af(c),b&&("string"===typeof b?J(c,b):(a=function(d){if(d){var e=df(c);c.appendChild("string"===typeof d?e.createTextNode(d):d)}},Array.isArray(b)?b.forEach(a):!Ta(b)||"nodeType"in b?a(b):ub(b).forEach(a))))};f.Ra=function(){return"goog-control"};function Kt(a,b){var c=a.Ra(),d=[c],e=a.Ra();e!=c&&d.push(e);c=b.qe;for(e=[];c;){var g=c&-c;e.push(a.sh(g));c&=~g}d.push.apply(d,e);(a=b.Kd)&&d.push.apply(d,a);return d}f.sh=function(a){this.i||Rt(this);return this.i[a]}; f.Pi=function(a){if(!this.qa){this.i||Rt(this);var b=this.i,c={},d;for(d in b)c[b[d]]=d;this.qa=c}a=parseInt(this.qa[a],10);return isNaN(a)?0:a};function Rt(a){var b=a.Ra();a.i={1:b+"-disabled",2:b+"-hover",4:b+"-active",8:b+"-selected",16:b+"-checked",32:b+"-focused",64:b+"-open"}};function St(){}u(St,Ht);Qa(St);f=St.prototype;f.lg=function(){return"button"};f.je=function(a,b,c){switch(b){case 8:case 16:Y(a,"pressed",c);break;default:case 64:case 1:St.oa.je.call(this,a,b,c)}};f.Nc=function(a){var b=St.oa.Nc.call(this,a);this.yf(b,a.hf());var c=a.yb();c&&this.uc(b,c);Pt(a,16)&&this.je(b,16,Qt(a,16));return b};f.Rb=function(a,b){b=St.oa.Rb.call(this,a,b);var c=this.yb(b);a.Ba=c;a.V=this.hf(b);Pt(a,16)&&this.je(b,16,Qt(a,16));return b};f.yb=function(){};f.uc=function(){}; f.hf=function(a){return a.title};f.yf=function(a,b){a&&(b?a.title=b:a.removeAttribute("title"))};f.mc=function(a,b){var c=In(a),d=this.Ra()+"-collapse-left",e=this.Ra()+"-collapse-right",g=c?e:d;b&1?Tt(a,g):Ut(a,g);c=c?d:e;b&2?Tt(a,c):Ut(a,c)};f.Ra=function(){return"goog-button"};var Vt={qg:"mousedown",rg:"mouseup",hh:"mousecancel",gw:"mousemove",iw:"mouseover",hw:"mouseout",ew:"mouseenter",fw:"mouseleave"};function Wt(a,b){if(!a)throw Error("Invalid class name "+a);if("function"!==typeof b)throw Error("Invalid decorator function "+b);Xt[a]=b}var Yt={},Xt={};function Zt(a,b,c){zn.call(this,c);if(!b){for(b=this.constructor;b;){var d=Va(b);if(d=Yt[d])break;b=(b=Object.getPrototypeOf(b.prototype))&&b.constructor}b=d?"function"===typeof d.Jb?d.Jb():new d:null}this.j=b;this.ng=void 0!==a?a:null;this.Na=null}u(Zt,zn);f=Zt.prototype;f.ng=null;f.qe=0;f.Xh=39;f.Gf=255;f.Wh=0;f.ri=!0;f.Kd=null;f.Pj=!0;f.um=null;function $t(a,b){a.Va&&b!=a.Pj&&au(a,b);a.Pj=b}f.vd=function(){return this.j};function Tt(a,b){b&&(a.Kd?ob(a.Kd,b)||a.Kd.push(b):a.Kd=[b],Lt(a,b,!0))} function Ut(a,b){b&&a.Kd&&qb(a.Kd,b)&&(0==a.Kd.length&&(a.Kd=null),Lt(a,b,!1))}f.Qa=function(){var a=this.j.Nc(this);this.va=a;Nt(this.j,a,this.ff());this.j.Oj(a,!1);this.isVisible()||this.j.Aa(a,!1)};f.ff=function(){return this.um};f.Rh=ba(8);f.Ph=function(a){this.Na=a;var b=this.ha();b&&this.j.Ph(b,a)};f.Ib=function(){return this.j.Fc(this.ha())};f.hi=function(a){return this.j.mi(a)};f.Nb=function(a){this.va=a=this.j.Rb(this,a);Nt(this.j,a,this.ff());this.j.Oj(a,!1);this.ri="none"!=a.style.display}; f.Ka=function(){Zt.oa.Ka.call(this);Ot(this.j,this,this.va);this.j.ni(this);if(this.Xh&-2&&(this.Pj&&au(this,!0),Pt(this,32))){var a=this.ha();if(a){var b=this.l||(this.l=new Ct);b.attach(a);Z(this).ka(b,"key",this.Pc).ka(a,"focus",this.Bq).ka(a,"blur",this.oi)}}}; function au(a,b){var c=Z(a),d=a.ha();b?(c.ka(d,Vt.qg,a.Te).ka(d,[Vt.rg,Vt.hh],a.de).ka(d,"mouseover",a.Ee).ka(d,"mouseout",a.Vk),a.Ch!=$c&&c.ka(d,"contextmenu",a.Ch),A&&!a.qa&&(a.qa=new bu(a),Dj(a,a.qa))):(c.Ta(d,Vt.qg,a.Te).Ta(d,[Vt.rg,Vt.hh],a.de).Ta(d,"mouseover",a.Ee).Ta(d,"mouseout",a.Vk),a.Ch!=$c&&c.Ta(d,"contextmenu",a.Ch),A&&(Bj(a.qa),a.qa=null))}f.jc=function(){Zt.oa.jc.call(this);this.l&&Gt(this.l);this.isVisible()&&this.isEnabled()&&this.j.Zg(this,!1)}; f.ua=function(){Zt.oa.ua.call(this);this.l&&(this.l.Ea(),delete this.l);delete this.j;this.qa=this.Kd=this.ng=null};f.Dc=function(){return this.ng};function cu(a,b){a.j.mg(a.ha(),b);a.ng=b}function Mt(a,b){a.ng=b}f.Bg=function(){var a=this.Dc();if(!a)return"";a="string"===typeof a?a:Array.isArray(a)?a.map(Tf).join(""):Rf(a);return Oe(a)};f.isVisible=function(){return this.ri}; f.Aa=function(a,b){return b||this.ri!=a&&this.dispatchEvent(a?"show":"hide")?((b=this.ha())&&this.j.Aa(b,a),this.isEnabled()&&this.j.Zg(this,a),this.ri=a,!0):!1};f.isEnabled=function(){return!Qt(this,1)};f.lb=function(a){var b=this.getParent();b&&"function"==typeof b.isEnabled&&!b.isEnabled()||!du(this,1,!a)||(a||(eu(this,!1),this.Sc(!1)),this.isVisible()&&this.j.Zg(this,a),this.Vc(1,!a,!0))};f.Sc=function(a){du(this,2,a)&&this.Vc(2,a)};f.isActive=function(){return Qt(this,4)}; function eu(a,b){du(a,4,b)&&a.Vc(4,b)}f.Il=function(a){du(this,8,a)&&this.Vc(8,a)};f.Xf=function(a){du(this,16,a)&&this.Vc(16,a)};f.uj=function(a){du(this,32,a)&&this.Vc(32,a)};f.md=function(){return Qt(this,64)};f.Qb=function(a){du(this,64,a)&&this.Vc(64,a)};function Qt(a,b){return!!(a.qe&b)}f.Vc=function(a,b,c){c||1!=a?Pt(this,a)&&b!=Qt(this,a)&&(this.j.Vc(this,a,b),this.qe=b?this.qe|a:this.qe&~a):this.lb(!b)};function Pt(a,b){return!!(a.Xh&b)} f.Vb=function(a,b){if(this.Va&&Qt(this,a)&&!b)throw Error("Component already rendered");!b&&Qt(this,a)&&this.Vc(a,!1);this.Xh=b?this.Xh|a:this.Xh&~a};function fu(a,b){return!!(a.Gf&b)&&Pt(a,b)}function du(a,b,c){return Pt(a,b)&&Qt(a,b)!=c&&(!(a.Wh&b)||a.dispatchEvent(Bn(b,c)))&&!a.Id}f.Ee=function(a){!gu(a,this.ha())&&this.dispatchEvent("enter")&&this.isEnabled()&&fu(this,2)&&this.Sc(!0)};f.Vk=function(a){!gu(a,this.ha())&&this.dispatchEvent("leave")&&(fu(this,4)&&eu(this,!1),fu(this,2)&&this.Sc(!1))}; f.Ch=$c;function gu(a,b){return!!a.relatedTarget&&Kf(b,a.relatedTarget)}f.Te=function(a){this.isEnabled()&&(fu(this,2)&&this.Sc(!0),Kj(a)&&(fu(this,4)&&eu(this,!0),this.j&&this.j.sm(this)&&this.ha().focus()));Kj(a)&&a.preventDefault()};f.de=function(a){this.isEnabled()&&(fu(this,2)&&this.Sc(!0),this.isActive()&&this.vf(a)&&fu(this,4)&&eu(this,!1))}; f.vf=function(a){fu(this,16)&&this.Xf(!Qt(this,16));fu(this,8)&&this.Il(!0);fu(this,64)&&this.Qb(!this.md());var b=new Fj("action",this);a&&(b.altKey=a.altKey,b.ctrlKey=a.ctrlKey,b.metaKey=a.metaKey,b.shiftKey=a.shiftKey,b.Bl=a.Bl);return this.dispatchEvent(b)};f.Bq=function(){fu(this,32)&&this.uj(!0)};f.oi=function(){fu(this,4)&&eu(this,!1);fu(this,32)&&this.uj(!1)};f.Pc=function(a){return this.isVisible()&&this.isEnabled()&&this.be(a)?(a.preventDefault(),a.stopPropagation(),!0):!1}; f.be=function(a){return 13==a.keyCode&&this.vf(a)};if("function"!==typeof Zt)throw Error("Invalid component class "+Zt);if("function"!==typeof Ht)throw Error("Invalid renderer class "+Ht);var hu=Va(Zt);Yt[hu]=Ht;Wt("goog-control",function(){return new Zt(null)});function bu(a){Cj.call(this);this.g=a;this.i=!1;this.j=new hk(this);Dj(this,this.j);a=this.g.va;this.j.ka(a,Vt.qg,this.o).ka(a,Vt.rg,this.s).ka(a,"click",this.l)}u(bu,Cj);var iu=!A||Tc(9);bu.prototype.o=function(){this.i=!1}; bu.prototype.s=function(){this.i=!0};function ju(a,b){if(!iu)return a.button=0,a.type=b,a;var c=document.createEvent("MouseEvents");c.initMouseEvent(b,a.bubbles,a.cancelable,a.view||null,a.detail,a.screenX,a.screenY,a.clientX,a.clientY,a.ctrlKey,a.altKey,a.shiftKey,a.metaKey,0,a.relatedTarget||null);return c} bu.prototype.l=function(a){if(this.i)this.i=!1;else{var b=a.Ob,c=b.button,d=b.type,e=ju(b,"mousedown");this.g.Te(new Ij(e,a.currentTarget));e=ju(b,"mouseup");this.g.de(new Ij(e,a.currentTarget));iu||(b.button=c,b.type=d)}};bu.prototype.ua=function(){this.g=null;bu.oa.ua.call(this)};function ku(){}u(ku,St);Qa(ku);f=ku.prototype;f.lg=function(){};f.Nc=function(a){$t(a,!1);a.Gf&=-256;a.Vb(32,!1);return a.g.Oa("BUTTON",{"class":Kt(this,a).join(" "),disabled:!a.isEnabled(),title:a.hf()||"",value:a.yb()||""},a.Bg()||"")};f.mi=function(a){return"BUTTON"==a.tagName||"INPUT"==a.tagName&&("button"==a.type||"submit"==a.type||"reset"==a.type)};f.Rb=function(a,b){$t(a,!1);a.Gf&=-256;a.Vb(32,!1);if(b.disabled){var c=this.sh(1);w(b,c)}return ku.oa.Rb.call(this,a,b)}; f.ni=function(a){Z(a).ka(a.ha(),"click",a.vf)};f.Oj=function(){};f.tm=function(){};f.sm=function(a){return a.isEnabled()};f.Zg=function(){};f.Vc=function(a,b,c){ku.oa.Vc.call(this,a,b,c);(a=a.ha())&&1==b&&(a.disabled=c)};f.yb=function(a){return a.value};f.uc=function(a,b){a&&(a.value=b)};f.je=function(){};function lu(a,b,c){Zt.call(this,a,b||ku.Jb(),c)}u(lu,Zt);f=lu.prototype;f.yb=function(){return this.Ba};f.uc=function(a){this.Ba=a;this.vd().uc(this.ha(),a)};f.hf=function(){return this.V};f.yf=function(a){this.V=a;this.vd().yf(this.ha(),a)};f.mc=function(a){this.vd().mc(this,a)};f.ua=function(){lu.oa.ua.call(this);delete this.Ba;delete this.V};f.Ka=function(){lu.oa.Ka.call(this);if(Pt(this,32)){var a=this.ha();a&&Z(this).ka(a,"keyup",this.be)}}; f.be=function(a){return 13==a.keyCode&&"key"==a.type||32==a.keyCode&&"keyup"==a.type?this.vf(a):32==a.keyCode};Wt("goog-button",function(){return new lu(null)});function mu(a,b,c,d){d=void 0===d?!1:d;X.call(this);this.N=a;this.o=b;this.j=this.N.Wa().ui;this.V=!!this.N.Wa().ui;this.na=!!this.N.Wa().Zh;this.l=aq(c);this.s=d;if(this.V){a:{a=this.N.ab();for(b=0;b=Jo(c)&&e<=d){a=b;break a}}a=-1}this.ma=a}}n(mu,X);f=mu.prototype; f.render=function(a,b){b=void 0===b?2:b;this.i=H("div");document.body.appendChild(this.i);V(r(this.Cq,this));this.qa=a;this.V?(this.s&&(this.O=b),nu(this)):this.na?(w(this.i,"base-image-toc-div"),a=this.N.Wa().Zh,(b=Mo(this.N.ab(),a))&&ou(this,b),1=Jo(e[0]||e[1])&&aemail or IM"));this.ha().appendChild(a);this.l=H("input");L(this.l,"100%","auto");this.ha().appendChild(this.l);this.V&&(a=F("DIV",{style:"font-size: 13px; padding-top: 7px;"},"Embed"),this.ha().appendChild(a),this.s=H("input"),L(this.s,"100%","auto"),this.ha().appendChild(this.s));a=this.N.Da();b=(new S(window.location)).i;var c=new S(a.zc()); Kk(c,b);this.l.value=c.toString();V(t(yu,this.l));this.V&&(a=new S(a.zc()),T(a,"output","embed"),this.s.value=zu(a.toString()))};xu.prototype.Jl=function(){wu.prototype.Jl.call(this);this.g.ka(this.l,"click",t(yu,this.l));this.V&&this.g.ka(this.s,"click",t(yu,this.s))};function yu(a){a.select()}function zu(a){return Le('',a)};function Au(a,b){var c=this;this.N=a;this.j=b;this.g=pk();this.i=D("flow-top-div")?!0:!1;(new hk(this)).ka(this.g,"resize",function(){var d=c.N.Fa(),e=d.Eb(),g=d.Hc();c.resize();c.N.Fa().Ae();d=c.N.Fa();e=Um(new Tm(e,d.Eb()),g);d.Ed(d.Ie(e))}).ka(this.N,"searchupdate",function(){var d=D("gb-ogen-mobile-appbar");if(d){var e=c.g.getSize().height;d=d.getBoundingClientRect().height;e-=d;d=c.g.getSize().width;c.N.nb(new Je(d,e));c.i&&L(c.j,new Je(d,e))}}).ka(window,"load",this.resize)} Au.prototype.resize=function(){var a=this.g.getSize().height,b=this.g.getSize().width,c=Math.round(zh(this.j).y);a=Math.max(0,a-c);this.N.nb(new Je(b,a));this.i&&L(this.j,new Je(b,a))};function Bu(){Cu(this)}function Du(a){ek(a.g);a.g=Wj(document.body,"mousedown",function(){Jb(document.body,"focus-outline-enabled");Cu(a)},{capture:!0})}function Cu(a){ek(a.g);a.g=Q(document.body,"keydown",function(b){9===b.keyCode&&(w(document.body,"focus-outline-enabled"),Du(a))})};function Eu(a,b,c,d){d=void 0===d?!1:d;ts.call(this);var e=this;this.vc=a;this.i=b;this.g=c?c:null;this.hg(Fu(this));if(d){var g=D("ep-lb");Q(this,"hide",function(){K(g,"visibility","hidden")});Q(this,"beforeshow",function(){K(g,"visibility","visible");y(e.ha(),"lightbox-dialog",!0)})}}n(Eu,ts); function Fu(a){var b=F("DIV");Ib(b,["popup-menu","goog-menu","goog-menu-vertical"]);Ym(b,"dialog");b.setAttribute("tabindex","-1");document.body.appendChild(b);if(""!=a.vc){var c=F("DIV",{"class":"popup-menu-header"});b.appendChild(c);var d=F("SPAN",{"class":"popup-menu-title"});J(d,a.vc);c.appendChild(d);d=F("DIV",{"class":"popup-menu-close"});bn(d,"Close popup");var e=F("IMG");e.src="/googlebooks/images/material/close_black_24dp.png";L(e,24,24);Y(e,"hidden",!0);d.appendChild(e);Q(d,"click",function(){a.Aa(!1); a.g&&a.g()});Q(d,"keydown",function(g){if(32==g.keyCode||13==g.keyCode)a.Aa(!1),a.g&&a.g()});Ym(d,"button");Qf(d,!0);c.appendChild(d)}b.appendChild(a.i);return b};function Gu(a,b,c){this.g=a;this.i=b;this.O=c}u(Gu,os);Gu.prototype.Mc=function(a,b,c){ps(this.g,this.i,a,b,void 0,c,this.O)};function Hu(a,b,c,d){Gu.call(this,a,b);this.j=c?5:0;this.o=d||void 0}u(Hu,Gu);Hu.prototype.s=function(){return this.j};Hu.prototype.l=function(a){this.j=a};Hu.prototype.Mc=function(a,b,c,d){var e=ps(this.g,this.i,a,b,null,c,10,d,this.o);if(e&496){var g=Iu(e,this.i);b=Iu(e,b);e=ps(this.g,g,a,b,null,c,10,d,this.o);e&496&&(g=Iu(e,g),b=Iu(e,b),ps(this.g,g,a,b,null,c,this.j,d,this.o))}};function Iu(a,b){a&48&&(b^=4);a&192&&(b^=1);return b};function Ju(a,b,c,d,e){this.g=a;this.N=b;this.s=c;this.ma=D("epo-welcome");this.O=D("epo-keyboard");this.j=D("epo-plain-text");this.l=D("epo-plain-text-only");this.o=D("entity-page-toggle-viewport-mode-link");this.V=D("epo-share-link");this.i=e;Ku(this,d);Lu(this,!1)} function Ku(a,b){if(a.s)a.l&&Mu(a,b);else{var c=new Eu("",a.ma,function(){});Ib(c.ha(),["onboarding-popup","onboarding-fixed-popup","onboarding-welcome-popup"]);Nn(c,!1);var d=D("epo-keyboard-text");O(d,qj(Rf(d)));var e=new Eu("",a.O,function(){});Ib(e.ha(),["onboarding-popup","onboarding-fixed-popup"]);Nn(e,!1);d=gf("A",d)[0];d.id="ep-keyboard-link";w(d,"onboarding-link");Qf(d,!0);Nu(d,function(){a.N.qb("showkeyboardshortcuts")});if(a.j){var g=new Eu("",a.j,function(){});Ib(g.ha(),["onboarding-popup", "onboarding-plain-text-popup"])}d=new Eu("",a.V,function(){});Ib(d.ha(),["onboarding-popup","onboarding-share-popup"]);var h=D("entity-page-clip");us(d,5);d.setPosition(new Hu(h,4,!0));Nn(d,!1);Ou(a,c,e,g,d);Pu(a,c,e,g,d);if(a.i)switch(a.i){case 0:c.Aa(!0);break;case 1:e.Aa(!0);break;case 2:g?Qu(a,g,b):d.Aa(!0);break;default:d.Aa(!0)}else c.Aa(!0)}} function Ou(a,b,c,d,e){var g=D("epo-welcome-next");Nu(g,function(){a.i++;b.Aa(!1);c.Aa(!0);Lu(a,!1)});g=D("epo-keyboard-next");Nu(g,function(){a.i++;c.Aa(!1);d?Qu(a,d):e.Aa(!0);Lu(a,!1)});a.j&&d&&(g=D("epo-plain-text-next"),Nu(g,function(){a.i++;a.g.Aa(!1);Nn(a.g,!0);d.Aa(!1);e.Aa(!0);Lu(a,!1)}))} function Pu(a,b,c,d,e){document.querySelectorAll(".onboarding-link").forEach(function(h){"ep-keyboard-link"!=h.id&&Nu(h,function(){b.Aa(!1);c.Aa(!1);d&&(d.Aa(!1),a.g.Aa(!1),Nn(a.g,!0));e.Aa(!1);Ru(a)})});var g=D("epo-done");Nu(g,function(){e.Aa(!1);Ru(a)})}function Mu(a,b){var c=new Eu("",a.l,function(){});Ib(c.ha(),["onboarding-popup","onboarding-plain-text-popup"]);Qu(a,c,b);b=D("epo-done-only");Nu(b,function(){c.Aa(!1);a.g.Aa(!1);Nn(a.g,!0);Ru(a)})} function Qu(a,b,c){void 0!==c&&c||(Nn(a.g,!1),a.g.Aa(!0));a=D("entity-page-more-menu-content");us(b,0);b.setPosition(new Hu(a,4,!0));Nn(b,!1);b.Aa(!0)}function Ru(a){Lu(a,!0);a.j?lp(!0):lp(!1)}function Lu(a,b){if(a.o){var c=new S(a.o.href);b?(Uk(c,"ovso"),Uk(c,"ovsopt"),Uk(c,"op")):a.s&&a.l?T(c,"ovsopt","1"):(T(c,"ovso","1"),T(c,"op",a.i));$h(a.o,li(c.toString()))}}function Nu(a,b){Q(a,"click",function(){b()});Q(a,"keydown",function(c){32!=c.keyCode&&13!=c.keyCode||b()})};function Su(a,b){X.call(this);this.Ca=a;this.j=b;this.i=H("div");a.s.i.appendChild(this.i);w(this.i,"sitb_result");Qf(this.i,!0);Ym(this.i,"link");Y(this.i,"disabled",!0);Cc?(K(this.i,"width",b.getSize().width+"px"),K(this.i,"min-height",b.getSize().height+"px")):(sh(this.i,b.jd()),L(this.i,b.getSize()));a=H("div");w(a,"sitb-result-header");this.i.appendChild(a);this.l=H("div");w(this.l,"sitb-result-page-link");b=(b=b.g.i)?"Page "+b:"Page";J(this.l,b);bn(this.l,"Search result: "+b);a.appendChild(this.l); this.o=H("div");w(this.o,"sitb-result-content");this.i.appendChild(this.o);if(a=Mo(this.Ca.N.ab(),this.j.g.La())){b=this.Ca.N.Xa().getQuery();var c=a.ob.snippetSrc;c&&b==qp(c)?Tu(this,c):(b=a.df(),"entity_page"==U(b,"source")?T(b,"source","entity_page_gbs_snippet"):T(b,"source","gbs_snippet"),fq(a,b,r(this.O,this)))}else Uu(this)}n(Su,Pm);Su.prototype.s=function(a){this.Ca.ta(a.g,void 0)};Su.prototype.O=function(a){(a=a.ob.snippetSrc)?Tu(this,a):Uu(this)}; function Tu(a,b){Af(a.o);var c=H("IMG");c.src=b;Vu(a);b=a.j.getSize().width-25;K(c,{width:b+"px"});a.o.appendChild(c)}function Vu(a){w(a.i,"sitb-result-clickable");w(a.l,"sitb-result-link");var b=Rf(a.l);O(a.l,qj(b+" »"));Y(a.i,"disabled",!1);a.g.ka(a.i,"click",r(a.s,a,a.j));a.g.ka(a.i,"keydown",function(c){32!=c.keyCode&&13!=c.keyCode||a.s(a.j)})} function Uu(a){Af(a.o);var b=H("div");w(b,"sitb-result-snippet");a.o.appendChild(b);Cc||K(b,{width:Math.floor(.75*a.j.getSize().width)+"px"});O(b,pj.g(a.j.g.g));b=H("div");w(b,"sitb-result-explanatory-link");a.o.appendChild(b);var c=Mo(a.Ca.N.ab(),a.j.g.La());c&&c.wd()&&!kq(c,[4,8,16])&&c.l(2)?(Vu(a),O(b,qj((Cc?"No image for result.":"We couldn't make an image for this result.")+"  ")),a=H("span"),c=Cc||aq()?"Click to view":"Click to view the whole page.",O(a,qj(c)),b.appendChild(a),w(a, "sitb-result-link")):(O(b,qj("No preview available for this page.  ")),Cc||(a=H("a"),w(a,"sitb-result-buy-link"),O(a,qj("Buy this book.")),b.appendChild(a),b=new S(window.location.href),T(b,"sitesec","buy"),T(b,"source","gbs_snippet"),Uk(b,"printsec"),a.href=b.toString()))}Su.prototype.Ma=function(){I(this.i);this.Ea()};function Wu(a){this.Ca=a}n(Wu,Xp);Wu.prototype.render=function(a){return new Su(this.Ca,a)};function Xu(a){this.g=a}n(Xu,km);function Yu(a,b){qr.call(this,1);this.o=a;this.V=b;this.Ej=this.ei=this.fi=20;a.vb&&(a.vb.forEach(r(this.l,this)),rm(this))}n(Yu,qr);Yu.prototype.l=function(a){a=new Xu(a);var b=Math.min(this.V-16,600);a.nb(new Je(b,Math.round(124/600*b+42)));this.Pa(a)};function Zu(a){var b=a.Ab();K(b,"overflow","hidden");var c=new pt(this,b);Vr.call(this,c);this.N=a;Cc||Yr(this,new jt(this));this.g.ka(this,"move",this.ac);var d=D("subscription-bar");d&&(this.Kk(d),V(function(){N(d,!1)},600));Xr(this,$u(this));av(b)}u(Zu,Vr);function bv(a,b){b!=a.o&&(a.o=b,cv(a))}function av(a){K(a,"overflow","auto");K(a,{overflowX:"auto",overflowY:"scroll"});nf(a,{dir:"ltr"})}function $u(a){var b=new uq;vq(b,Xu,new Wu(a));return b}Zu.prototype.resize=function(){cv(this)}; function cv(a){var b=new Yu(a.o,a.getSize().width);a.Tc(b);a.ac()}function dv(a,b){a.ta=b};function ev(a){this.g=a||{}}ev.prototype.kc=function(){return this.g};ev.prototype.Wb=function(a){var b=hd(fv,function(c){return c==a});this.g.v=b};ev.prototype.getQuery=function(){return this.g.q};var fv={onepage:qt,twopage:ru,thumbnail:xt,snippet:Zu};function gv(a){Fj.call(this,"navigate");this.o=a}u(gv,Fj);function hv(){return Mb&&gc?gc.mobile:!(Mb&&gc?!gc.mobile&&(z("iPad")||z("Android")||z("Silk")):z("iPad")||z("Android")&&!z("Mobile")||z("Silk"))&&(z("iPod")||z("iPhone")||z("Android")||z("IEMobile"))};var iv=new WeakMap;function jv(a,b){a=[a];for(var c=b.length-1;0<=c;--c)a.push(typeof b[c],b[c]);return a.join("\v")};function kv(a,b,c,d){R.call(this);if(a&&!b)throw Error("Can't use invisible history without providing a blank page.");if(c)var e=c;else{e="history_state"+lv;var g=me("input",{type:"text",name:e,id:e,style:wd("display:none")});document.write(je(g));e=D(e)}this.s=e;this.g=c?tf(df(c)):window;this.ma=b;A&&!b&&(this.ma="https"==window.location.protocol?Dd(vd(wd("https:///"))):Dd(vd(wd('javascript:""'))));this.Sa=new Rl(150);Dj(this,this.Sa);this.i=!a;this.j=new hk(this);if(a||mv){if(d)var h=d;else{a="history_iframe"+ lv;b={id:a,style:wd("display:none"),sandbox:void 0};c={};c.src=this.ma||null;c.srcdoc=null;d={sandbox:""};e={};for(var k in c)Object.prototype.hasOwnProperty.call(c,k)&&(e[k]=c[k]);for(var l in d)Object.prototype.hasOwnProperty.call(d,l)&&(e[l]=d[l]);if(b)for(h in b)if(Object.prototype.hasOwnProperty.call(b,h)){k=h.toLowerCase();if(k in c)throw Error("");k in d&&delete e[k];e[h]=b[h]}h=oe("iframe",e);document.write(je(h));h=D(a)}this.O=h;this.qa=!0}mv&&(this.j.ka(this.g,"load",this.Qu),this.na=this.V= !1);this.i?nv(this,ov(this),!0):pv(this,this.s.value);lv++}u(kv,R);kv.prototype.Pb=!1;kv.prototype.o=!1;kv.prototype.l=null;var qv=function(a,b){function c(g){var h=la(g);g=h.next().value;h=ma(h);return a.apply(g,h)}function d(g){g=la(g);g.next();g=ma(g);return b(e,g)}b=void 0===b?jv:b;var e=Va(a);return function(){var g=Ha.apply(0,arguments),h=this||q,k=iv.get(h);k||(k={},iv.set(h,k));return wc(k,[this].concat(na(g)),c,d)}}(function(){return A?Tc(8):"onhashchange"in q}),mv=A&&!Tc(8);f=kv.prototype; f.Jg=null;f.ua=function(){kv.oa.ua.call(this);this.j.Ea();this.lb(!1)};f.lb=function(a){if(a!=this.Pb)if(mv&&!this.V)this.na=a;else if(a)if(Ac&&this.j.ka(this.g,"pageshow",this.Xu),qv()&&this.i)this.j.ka(this.g,"hashchange",this.Su),this.Pb=!0,this.dispatchEvent(new gv(ov(this),!1));else{if(!A||hv()||this.V)this.j.ka(this.Sa,"tick",r(this.vm,this,!0)),this.Pb=!0,mv||(this.l=ov(this),this.dispatchEvent(new gv(ov(this),!1))),this.Sa.start()}else this.Pb=!1,mk(this.j),this.Sa.stop()}; f.Qu=function(){this.V=!0;this.s.value&&pv(this,this.s.value,!0);this.lb(this.na)};f.Xu=function(a){a.Ob.persisted&&(this.lb(!1),this.lb(!0))};f.Su=function(){var a=rv(this.g);a!=this.l&&sv(this,a,!0)};function ov(a){return null!=a.Jg?a.Jg:a.i?rv(a.g):tv(a)||""}function uv(a,b){ov(a)!=b&&(a.i?(nv(a,b,!1),qv()||A&&!hv()&&pv(a,b,!1),a.Pb&&a.vm(!1)):(pv(a,b,!1),a.Jg=a.l=a.s.value=b,a.dispatchEvent(new gv(b,!1))))}function rv(a){a=a.location.href;var b=a.indexOf("#");return 0>b?"":a.substring(b+1)} function nv(a,b,c){a=a.g.location;var d=a.href.split("#")[0],e=cc(a.href,"#");if(mv||e||b)d+="#"+b;d!=a.href&&(b=Kd(d),c?Ce(a,b):Be(a,b))}function pv(a,b,c){if(a.qa||b!=tv(a))if(a.qa=!1,b=encodeURIComponent(String(b)),A){var d=Lf(a.O);d.open("text/html",c?"replace":void 0);c=te(me("title",{},a.g.document.title),me("body",{},b));d.write(je(c));d.close()}else d=Ad(a.ma).toString()+"#"+b,(a=a.O.contentWindow)&&(c?Ce(a.location,d):Be(a.location,d))} function tv(a){if(A)return a=Lf(a.O),a.body?Pe(a.body.innerHTML):null;var b=a.O.contentWindow;if(b){try{var c=Pe(rv(b))}catch(d){return a.o||(1!=a.o&&Sl(a.Sa,1E4),a.o=!0),null}a.o&&(0!=a.o&&Sl(a.Sa,150),a.o=!1);return c||null}return null}f.vm=function(a){if(this.i){var b=rv(this.g);b!=this.l&&sv(this,b,a)}if(!this.i||mv)if(b=tv(this)||"",null==this.Jg||b==this.Jg)this.Jg=null,b!=this.l&&sv(this,b,a)}; function sv(a,b,c){a.l=a.s.value=b;a.i?(mv&&pv(a,b),nv(a,b)):pv(a,b);a.dispatchEvent(new gv(ov(a),c))}var lv=0;function vv(a,b){this.g=new kv;Q(this.g,"navigate",r(this.o,this));this.N=a;this.i=b}vv.prototype.o=function(a){wv(this,a.o)};function wv(a,b){if(!(a.l&&""==b||a.j))if((A||Bc)&&""==b)window.history.go(-2);else if(b){var c={},d=new Mk(b);v(d.Xd(),function(e){var g=d.get(e);g in xv&&(g=xv[g]);c[e]=g});b=new ev(c);a.N.Wb(fv[b.g.v]||qt);Ss(a.i,!!b.g.f);void 0!==b.getQuery()&&pp(a.N.Xa(),b.getQuery())}} vv.prototype.lb=function(a){this.l=!0;this.g.lb(a);A&&(a=(new S(window.location)).i,wv(this,a));this.l=!1};vv.prototype.update=function(){var a=new ev;a.Wb(this.N.O);a.g.q=this.N.Xa().getQuery();a.g.f=this.i.nf();a=Xk(a.kc()).toString();this.j=!0;uv(this.g,a);this.j=!1};var xv={"true":!0,"false":!1};function yv(a,b,c,d,e,g,h){var k=this;a&&(this.N=a,this.Kb=b);if(this.Ba=c)this.nd=!1;this.Lc=!!d;this.wc=!!e;this.Na=g;this.Hb=void 0===h?!1:h;this.O=D("entity-page-toc");this.Ja=D("entity-page-toc-label");this.Lb=!1;if(this.ma=D("entity-page-pagination"))this.wa=D("entity-page-prev"),this.ta=D("entity-page-next"),this.Ua=D("entity-page-floating-hover");this.Ga=D("entity-page-zoom-in");this.Ia=D("entity-page-zoom-out");this.na=D("entity-page-one-page");this.s=D("entity-page-two-page");this.o=D("entity-page-thumbnail"); this.V=D("entity-page-link");this.Gd=D("entity-page-link-menu-content");this.wb=D("entity-page-share-input");this.od=D("entity-page-embed-input");this.j=D("entity-page-clip");this.qa=D("entity-page-more");this.Hd=D("entity-page-more-menu-content");this.Ya=!1;this.Ha=D("entity-page-volume-info");D("flow-top-div")&&(this.g=D("flow-top-div"),this.i=(a=Number(U(new S(window.location.href),"zoom")))?a:2,zv(this,this.i),Q(this.N,"searchupdate",function(){Av(k)}));this.l=!0;Bv(this);Cv(this);Dv(this);Ev(this); Fv(this);Gv(this);Hv(this);Iv(this);Jv(this);Kv(this);new Bu;fp(Lv(this))} function Bv(a){if(a.N){var b=a.N.Wa(),c=!!b.ui;b=(b=b.Zh)&&a.N.ab()&&!!Mo(a.N.ab(),b);c||b?(a.Lb=!0,a.g?(c=D("jtp").value||"Contents",J(a.Ja,c)):J(a.Ja,a.N.Da().Ce()||"Contents"),Mv(a.O,function(){var d=lf("base-image-toc-div");lf("scroll-toc-div")||d||(new mu(a.N,a.O,a.Na,!!a.g)).render(8,a.i)}),Q(a.N,"pagechange",function(){var d=a.N.Da().Ce()||"Contents";a.Ja&&O(a.Ja,qj(d))})):(J(a.Ja,"Contents unavailable"),Ib(a.O,["toolbar-button-disabled","toc-button-unavailable"]),Y(a.O,"disabled",!0))}else J(a.Ja, "Contents unavailable"),Ib(a.O,["toolbar-button-disabled","toc-button-unavailable"]),Y(a.O,"disabled",!0)}function Cv(a){a.ma&&(a.N&&(Mv(a.wa,function(){a.wa.hasAttribute("href")||a.N.qb("previous")}),Mv(a.ta,function(){a.ta.hasAttribute("href")||a.N.qb("next")})),a.wa.setAttribute("title","Previous Page"),a.ta.setAttribute("title","Next Page"))} function Dv(a){Mv(a.Ga,function(){a.g?Nv(a):a.N&&a.N.qb("zoomin")});Mv(a.Ia,function(){a.g?Ov(a):a.N&&a.N.qb("zoomout")});a.g&&Q(document.body,"keydown",function(b){107==b.keyCode||187==b.keyCode||61==b.keyCode?Nv(a):(109==b.keyCode||189==b.keyCode||173==b.keyCode)&&Ov(a)});a.Ga.setAttribute("title","Zoom in");a.Ia.setAttribute("title","Zoom out")} function Ev(a){Mv(a.na,function(){Pv(a,qt)});a.na.setAttribute("title","Single page view");a.Lc?(Mv(a.s,function(){Pv(a,ru)}),a.s.setAttribute("title","Two page view")):(y(a.s,"toolbar-button-disabled",!0),a.s.setAttribute("title","Two page view unavailable"),Y(a.s,"disabled",!0));a.wc?(Mv(a.o,function(){Pv(a,xt)}),a.o.setAttribute("title","Thumbnail view")):(y(a.o,"toolbar-button-disabled",!0),a.o.setAttribute("title","Thumbnail view unavailable"),Y(a.o,"disabled",!0));a.N&&(Q(a.N,"viewportmodechange", function(){Qv(a)}),Qv(a))} function Fv(a){var b=(new ms(a.wb)).ha();D("entity-page-share-copy-container").appendChild(b);b=(new ms(a.od)).ha();D("entity-page-embed-copy-container").appendChild(b);var c=new Eu("Link to this result",a.Gd,function(){a.V.focus()});us(c,5);c.setPosition(new Hu(a.V,4,!0));c.Aa(!1);var d=new S(a.wb.value);Mv(a.V,function(){if(c.Re||150>Date.now()-c.dj)c.Aa(!1);else{c.Aa(!0);c.ha().focus();if(a.N){Rv(a,d);a.g&&T(d,"bksoutput","text");var e=a.N.Xa().getQuery();e?a.N.O==Zu?(Uk(d,"dq"),Uk(d,"pg"),T(d, "bsq",e)):(Uk(d,"bsq"),T(d,"dq",e)):(Uk(d,"bsq"),Uk(d,"dq"))}else(e=je(pj.g((new S(window.location.href)).i)).toString())&&T(d,"bsq",e);a.wb.value=d.toString();a.N&&(e=new S(a.N.Da().zc()),Uk(e,"source"),T(e,"output","embed"),a.od.value=zu(e.toString()))}});a.V.setAttribute("title","Link to this result")} function Gv(a){if(a.Ba){var b=D("entity-page-selection-bar"),c=D("entity-page-exit-selection"),d=D("entity-page-toolbar");Mv(a.j,function(){a.nd=!a.nd;a.Ba(!0);y(b,"menu-hidden",!1);c.focus();Y(d,"hidden",!0)});Mv(c,function(){a.Ba(!1);y(b,"menu-hidden",!0);a.j.focus();Y(d,"hidden",!1)});a.j.setAttribute("title","Select a clip")}else y(a.j,"toolbar-button-disabled",!0),Y(a.j,"disabled",!0),a.j.setAttribute("title","Select a clip unavailable")} function Hv(a){Sv(a);Tv(a);Uv(a);var b=new Eu("",a.Hd,function(){a.qa.focus()});us(b,4);b.setPosition(new Hu(a.qa,5,!0));w(b.ha(),"more-actions-popup");b.Aa(!1);Vv(a,b);var c=D("entity-page-toggle-viewport-mode-link");c&&a.Hb&&(b.Aa(!0),c.focus());Mv(a.qa,function(){if(b.Re||150>Date.now()-b.dj)b.Aa(!1),a.qa.focus();else if(b.Aa(!0),b.ha().focus(),c){var e=new S(c.href);Rv(a,e);a.g&&(Uk(e,"zoom"),Uk(e,"num"),Uk(e,"scoring"));Uk(e,"q");var g=a.N.Xa().getQuery();if(g){if(T(e,"dq",g),!a.g){g=D("search-results-summ"); var h=g.hasAttribute("data-result-num")?g.getAttribute("data-result-num"):0;T(e,"num",h);g=g.hasAttribute("data-search-sort")?g.getAttribute("data-search-sort"):"n";T(e,"scoring",g)}}else Uk(e,"dq");$h(c,li(e.toString()))}});a.qa.setAttribute("title","More actions menu");Q(b,"show",function(){a.Ya=!0;a.l=!0;Wv(a)});Q(b,"hide",function(){a.Ya=!1;a.l=!1;Xv(a)});if(a.Na.showViewportOnboarding||a.Na.showViewportPlainTextOnboarding){var d=Number(U(new S(window.location.href),"op"));new Ju(b,a.N,!!a.Na.showViewportPlainTextOnboarding, a.Hb,d?d:0)}}function Vv(a,b){var c=D("entity-page-store"),d=D("gb-mobile-buy-section");if(c&&d&&(d=mf("TABLE","gb-mobile-buy-table",d))){var e=new Eu("",d,function(){a.qa.focus()});us(e,0);e.setPosition(new Hu(c,4,!0));w(e.ha(),"buy-table-popup");e.Aa(!1);Mv(c,function(){e.Aa(!0);e.ha().focus()},!0);b.ha().querySelectorAll(".more-actions-menu-link").forEach(function(g){g!=c&&Q(g,"mouseenter",function(){e.Aa(!1)})});Q(e.ha(),"mouseleave",function(){e.Aa(!1)})}} function Iv(a){var b=D("ep-keyboard-shortcuts");if(b&&a.N){var c=new Eu("",b,function(){},!0);w(c.ha(),"keyboard-shortcuts-popup");b=D("ep-keyboard-close");Mv(b,function(){c.Aa(!1)});Q(a.N,"keyboardshortcutsopened",function(){c.Aa(!0)})}}function Uv(a){var b=D("entity-page-keyboard");b&&a.N&&Mv(b,function(){a.N.qb("showkeyboardshortcuts")})} function Tv(a){var b=D("entity-page-copyright-page-id");if(b&&a.N){var c=D("entity-page-copyright");b=Rf(b);var d=Mo(a.N.ab(),b);Mv(c,function(){a.N.mb(d)})}}function Sv(a){var b=D("entity-page-toggle-viewport-mode-link");if(b){var c=a.g?!0:!1;y(b,"checked",c);Y(b,"pressed",c);Mv(b,function(){y(b,"checked",!c);Y(b,"pressed",!c)})}} function Qv(a){a.N.O==qt?(Yv(a,!0),Zv(a,!0),$v(a,!0),aw(a,!0),bw(a,!0),Y(a.na,"current","true"),Y(a.s,"current","false"),Y(a.o,"current","false")):a.N.O==ru?(Yv(a,!0),Zv(a,!0),$v(a,!0),aw(a,!0),bw(a,!0),Y(a.na,"current","false"),Y(a.s,"current","true"),Y(a.o,"current","false")):a.N.O==xt?(Yv(a,!0),Zv(a,!1),$v(a,!0),aw(a,!0),bw(a,!1),Y(a.na,"current","false"),Y(a.s,"current","false"),Y(a.o,"current","true")):(Yv(a,!1),Zv(a,!1),$v(a,!1),aw(a,!1),bw(a,!1));var b=a.N.O;a.ma&&b!=Zu&&!a.g&&(y(a.ma,"one-page-view", b==qt),y(a.Ha,"one-page-view",b==qt),y(a.ma,"two-page-view",b==ru),y(a.Ha,"two-page-view",b==ru),y(a.ma,"thumbnail-view",b==xt),y(a.Ha,"thumbnail-view",b==xt))}function Pv(a,b){a.N&&a.N.O!=b&&(a.N.Wb(b),!a.N.Xa().getQuery()&&a.Kb&&a.Kb.update())}function Yv(a,b){y(a.na,"toolbar-button-disabled",!b);Y(a.na,"disabled",!b);a.Lc&&(y(a.s,"toolbar-button-disabled",!b),Y(a.s,"disabled",!b));a.wc&&(y(a.o,"toolbar-button-disabled",!b),Y(a.o,"disabled",!b))} function Zv(a,b){y(a.Ia,"toolbar-button-disabled",!b);Y(a.Ia,"disabled",!b);y(a.Ga,"toolbar-button-disabled",!b);Y(a.Ga,"disabled",!b)}function $v(a,b){y(a.wa,"toolbar-button-disabled",!b);Y(a.wa,"disabled",!b);y(a.ta,"toolbar-button-disabled",!b);Y(a.ta,"disabled",!b)}function aw(a,b){a.Lb&&(y(a.O,"toolbar-button-disabled",!b),Y(a.O,"disabled",!b))}function bw(a,b){a.Ba&&(y(a.j,"toolbar-button-disabled",!b),Y(a.j,"disabled",!b))}function Rv(a,b){a=new S(a.N.Da().zc());T(b,"pg",U(a,"pg"))} function Nv(a){5>a.i&&(a.i+=1,zv(a,a.i))}function Ov(a){1=b.left:a.left+54<=b.right;a=lf("scroll-background");if(!a)return!1;a=Gf(a);if(!a)return!1;a=a.getBoundingClientRect();return xm()?a.right>=b.left:a.left<=b.right}function Wv(a){ew(a,!0);y(a.Ua,"listen-for-hover",!1);a.bc&&Tl(a.bc)} function ew(a,b){y(a.Ha,"floating-button-group-hidden",!b);a.ma&&y(a.ma,"floating-button-group-hidden",!b)}function Lv(a){return{focusSearch:function(){D("search_form_input").focus()},updateSearch:function(b){pp(a.N.Xa(),b);a.Kb&&a.Kb.update()},goToPage:function(b){b&&a.N.Ad(b)}}};function fw(a,b){this.g=a;this.l=b}function gw(a,b){var c=H("DIV");w(c,"sitb-content");var d=H("H4");w(d,"sitb-result-header");var e=H("DIV"),g=a.g.i;g=g?"Page "+g:"Page";J(e,g);bn(d,"Search result: "+g);d.appendChild(e);b&&!a.l&&(a=H("SPAN"),w(a,"sitb-no-preview-msg"),J(a,"No preview available for this page."),d.appendChild(a));c.appendChild(d);return c};function hw(a){this.g=a}Qa(hw);function iw(a,b){a&&(a.tabIndex=b?0:-1)}f=hw.prototype;f.Qj=function(a){return"DIV"==a.tagName};function jw(a,b,c){c.id&&b.Ng(c.id);var d=a.og(),e=!1,g=Fb(c);g&&Array.prototype.forEach.call(g,function(h){h==d?e=!0:h&&(h==d+"-disabled"?b.lb(!1):h==d+"-horizontal"?kw(b,"horizontal"):h==d+"-vertical"&&kw(b,"vertical"))},a);e||w(c,d);lw(a,b,c);return c} function lw(a,b,c){if(c)for(var d=c.firstChild,e;d&&d.parentNode==c;){e=d.nextSibling;if(1==d.nodeType){var g=a.uh(d);g&&(g.va=d,b.isEnabled()||g.lb(!1),b.Za(g),En(g,d))}else d.nodeValue&&""!=Tb(d.nodeValue)||c.removeChild(d);d=e}}f.uh=function(a){a:{a=Fb(a);for(var b=0,c=a.length;bthis.Yb&&b<=this.Yb?this.Yb++:athis.Yb&&this.Yb--}; f.removeChild=function(a,b){if(a="string"===typeof a?Cn(this,a):a){var c=Jn(this,a);-1!=c&&(c==this.Yb?(a.Sc(!1),this.Yb=-1):cb?c-1:b},0)}function uw(a){ww(a,function(b,c){return(b+1)%c},a.Yb)}function tw(a){ww(a,function(b,c){b--;return 0>b?c-1:b},a.Yb)} function ww(a,b,c){c=0>c?Jn(a,a.Zb):c;var d=Gn(a);c=b.call(a,c,d);for(var e=0;e<=d;){var g=Hn(a,c);if(g&&a.En(g)){a.Td(c);break}e++;c=b.call(a,c,d)}}f.En=function(a){return a.isVisible()&&a.isEnabled()&&Pt(a,2)};function xw(a){zn.call(this);this.j=a?a:null;var b=this.g;a=b.ha("gb-mobile-buy-panel");var c=b.ha("gb-mobile-buy-button"),d=b.ha("gb-mobile-buy-close-button");b=b.ha("volume-left");a&&c&&d&&b&&(this.i=new mw,En(this.i,a),this.o=c,this.V=d,En(this,b),this.i.Aa(!1))}n(xw,zn); xw.prototype.Ka=function(){var a=this;Z(this).ka(this.o,"click",this.l).ka(this.o,"keydown",function(b){32!=b.keyCode&&13!=b.keyCode||a.l()}).ka(this.V,"click",this.l).ka(this.V,"keydown",function(b){32!=b.keyCode&&13!=b.keyCode||a.l()})}; xw.prototype.l=function(){if(this.i.isVisible()){this.i.Aa(!1);Jb(this.i.Ib(),"gb-mobile-buy-panel-visible");this.j&&(this.j.style.overflowX="auto",this.j.style.overflowY="scroll");this.o.focus();for(var a=la(document.querySelectorAll('[role="alert"],#volume-center,.aria-hide-on-menu-open')),b=a.next();!b.done;b=a.next())b.value.removeAttribute("aria-hidden")}else this.i.Aa(!0),w(this.i.Ib(),"gb-mobile-buy-panel-visible"),this.j&&(this.j.style.overflowX="hidden",this.j.style.overflowY="hidden"),this.i.Ib().focus(), yw(this)};function yw(a){var b=a.i.Ib().querySelectorAll('[role="button"],[href]'),c=b[0],d=b[b.length-1];Z(a).ka(a.i.Ib(),"keydown",function(e){9==e.keyCode&&(e.shiftKey?document.activeElement===c&&(e.preventDefault(),d.focus()):document.activeElement===d&&(e.preventDefault(),c.focus()))});a=la(document.querySelectorAll('[role="alert"],#volume-center,.aria-hide-on-menu-open'));for(b=a.next();!b.done;b=a.next())Y(b.value,"hidden",!0)};function zw(a){this.Ic=Xq(a)}n(zw,kr);f=zw.prototype;f.getEnableSsEngine=function(){return ir(this,2)};f.getEnableAwr=function(){return ir(this,3)};f.getAlohaAutoGaRollout=function(){return ir(this,5)};f.getEnableConfigurator=function(){return ir(this,6)};f.getEnableMweb=function(){return ir(this,7)};f.getEnableCtlConsentCheckbox=function(){return ir(this,8)};f.getEnableIframe=function(){return ir(this,9)};f.getEnableScreenshotNudge=function(){return ir(this,10)}; f.getEnableWebStartupConfigEndpoint=function(){return ir(this,11)};f.getEnableJunkNudge=function(){return ir(this,12)};f.getEnableConfiguratorLocale=function(){return ir(this,13)};f.getEnableTinyNoPointer=function(){return ir(this,14)};f.getEnableSupportSessionLogging=function(){return ir(this,15)};f.getEnableFileUploadForScreenshot=function(){return ir(this,16)};f.getEnableDirectDeflectionForSingleCategory=function(){return ir(this,17)};f.getEnableImageSanitization=function(){return ir(this,18)}; f.getEnableAlohaBinarySplit=function(){return ir(this,19)};f.getEnableDbFeedbackIntents=function(){return ir(this,20)};f.getEnableMarkMandatoryFieldsWithRequired=function(){return ir(this,21)};f.getEnableFeedbackCategoryCustomUi=function(){return ir(this,22)};f.getEnableRealtimeCtl=function(){return ir(this,23)};function Aw(a){this.Ic=Xq(a)}n(Aw,kr);function Bw(a){return Cw.some(function(b){return b.test(a)})}var Cw=[/https:\/\/sandbox\.google\.com\/tools\/feedback/,/https:\/\/feedback-frontend-qual[a-z0-9.]*\.google\.com\/inapp/,/https:\/\/feedback-frontend-qual[a-z0-9.]*\.google\.com\/tools\/feedback/,/https:\/\/.*\.googleusercontent\.com\/inapp/];var Dw="af;am;ar-EG;ar-JO;ar-MA;ar-SA;ar-XB;ar;az;be;bg;bn;bs;ca;cs;cy;da;de-AT;de-CH;de;el;en;en-GB;en-AU;en-CA;en-IE;en-IN;en-NZ;en-SG;en-XA;en-XC;en-ZA;es;es-419;es-AR;es-BO;es-CL;es-CO;es-CR;es-DO;es-EC;es-GT;es-HN;es-MX;es-NI;es-PA;es-PE;es-PR;es-PY;es-SV;es-US;es-UY;es-VE;et;eu;fa;fi;fil;fr-CA;fr-CH;fr;gl;gsw;gu;he;hi;hr;hu;hy;id;in;is;it;iw;ja;ka;kk;km;kn;ko;ky;ln;lo;lt;lv;mk;ml;mn;mo;mr;ms;my;nb;ne;nl;no;pa;pl;pt;pt-BR;pt-PT;ro;ru;si;sk;sl;sq;sr-Latn;sr;sv;sw;ta;te;th;tl;tr;uk ; ur ; uz ; vi ; zh;zh-CN;zh-HK;zh-TW;zu".split(";"); function Ew(a){var b;return null==(b=a.formContent)?void 0:b.locale};var Fw=ka(["https://www.gstatic.com/uservoice/feedback/client/web/","/main_light_binary.js"]),Gw=ka(["https://www.gstatic.com/uservoice/feedback/client/web/","/main_binary__",".js"]);function Hw(a,b){var c=Ew(a);c=(c&&Dw.includes(c)?Ew(a):"en").replaceAll("-","_").toLowerCase();var d;a=(null==(d=a.initializationData)?0:d.useNightlyRelease)?"nightly":"live";var e;return(null==b?0:null==(e=b.getEnableAlohaBinarySplit)?0:e.call(b))?tj(Fw,a):tj(Gw,a,c)};var Iw,Jw;function Kw(a,b,c,d){if(Iw)return Iw;var e=Hw(a,d);return Iw=b.feedbackV2GlobalObject?Promise.resolve(b.feedbackV2GlobalObject):new Promise(function(g,h){var k=H("SCRIPT");gi(k,e);k.onload=function(){b.feedbackV2GlobalObject?g(b.feedbackV2GlobalObject):h("feedbackV2GlobalObject not found on window.")};k.onerror=function(){h("Feedback binary script tag failed to load: "+e.toString())};c.body.appendChild(k)})} function Lw(a,b,c,d){if(Jw)return Jw;var e=Hw(a,d);return Jw=b.feedbackV2GlobalObject?Promise.resolve(b.feedbackV2GlobalObject):new Promise(function(g,h){var k=H("SCRIPT");gi(k,e);k.onload=function(){b.feedbackV2GlobalObject?g(b.feedbackV2GlobalObject):h("feedbackV2GlobalObject not found on window.")};k.onerror=function(){h("Feedback binary script tag failed to load: "+e.toString())};c.body.appendChild(k)})} function Mw(a,b,c,d,e){e=void 0===e?!0:e;var g,h,k,l,m;return Ga(function(p){switch(p.g){case 1:return g=Date.now(),za(p,Kw(a,c,d,b),2);case 2:h=p.j;if(!(e||(null==(l=a.initializationData)?0:l.useNightlyRelease)||(null==(m=a.initializationData)?0:m.isLocalServer))){k=h.initializeFeedbackClient(a,g,b);p.g=3;break}return za(p,h.initializeFeedbackClientAsync(a,g,b),4);case 4:k=p.j;case 3:return k.initiateAloha(),p.return(k)}})} function Nw(a,b,c,d){var e,g,h;return Ga(function(k){if(1==k.g)return e=Date.now(),za(k,Lw(a,c,d.document,b),2);if(3!=k.g)return g=k.j,za(k,g.initializeFeedbackClientAsync(a,e,b,d),3);h=k.j;h.initiateAloha();return k.return(h)})} function Ow(a,b,c){var d=!0;d=void 0===d?!0:d;var e,g,h,k,l,m,p,x,C,E;return Ga(function(G){e=c||q;if(null==(g=b)?0:null==(k=(h=g).getEnableAlohaBinarySplit)?0:k.call(h)){l=e;if(l.isFormOpened)throw m=Error("Form is either loading or already opened"),m.name="DuplicateFormError",m;l.isFormOpened=!0;a.callbacks=a.callbacks||{};p=a.callbacks.onClose||function(){};a.callbacks.onClose=function(P){l.isFormOpened=!1;p(P)};try{return G.return(Nw(a,b,l,e))}catch(P){throw l.isFormOpened=!1,P;}}else{x=e;if(x.isFormOpened)throw C= Error("Form is either loading or already opened"),C.name="DuplicateFormError",C;x.isFormOpened=!0;a.callbacks=a.callbacks||{};E=a.callbacks.onClose||function(){};a.callbacks.onClose=function(P){x.isFormOpened=!1;E(P)};try{return G.return(Mw(a,b,x,e.document,d))}catch(P){throw x.isFormOpened=!1,P;}}})};function Pw(a,b){return Ga(function(c){return c.return(new Promise(function(d){var e=Qw(null!=b?b:"")+"/aloha_form_properties?productId="+a;Yl(e,function(g){g=g.target;var h=null;try{var k=JSON.stringify(hm(g,")]}'\n"));if(null==k||""==k)h=new Aw;else{var l=JSON.parse(k);if(!Array.isArray(l))throw Error(void 0);Iq(l,32);h=Wq(Aw,l)}}catch(m){k=new Aw;l=new zw;l=jr(l,5,!0);l=jr(l,2,!0);l=jr(l,4,!1);l=jr(l,8,!0);l=jr(l,9,!0);l=jr(l,7,!0);l=jr(l,10,!0);l=jr(l,12,!0);l=jr(l,13,!1);l=jr(l,14,!0);l=jr(l, 15,!0);l=jr(l,20,!1);null==l&&(l=void 0);g=k.Ic;h=Mq(g);if(h&2)throw Error();hr(g,h,1,l);h=k}d(h)},"GET","",{},2E3,!0)}))})}function Qw(a){return Bw(a)?a:"https://www.google.com/tools/feedback"};function Rw(a,b,c){a.timeOfStartCall=(new Date).getTime();var d=c||q,e=d.document,g=a.nonce||Ae(d);g&&!a.nonce&&(a.nonce=g);if("help"==a.flow){var h=Pa("document.location.href",d);!a.helpCenterContext&&h&&(a.helpCenterContext=h.substring(0,1200));h=!0;if(b&&JSON&&JSON.stringify){var k=JSON.stringify(b);(h=1200>=k.length)&&(a.psdJson=k)}h||(b={invalidPsd:!0})}b=[a,b,c];d.GOOGLE_FEEDBACK_START_ARGUMENTS=b;c=a.feedbackServerUri||"//www.google.com/tools/feedback";if(h=d.GOOGLE_FEEDBACK_START)h.apply(d, b);else{d=c+"/load.js?";for(var l in a)b=a[l],null==b||Ua(b)||(d+=encodeURIComponent(l)+"="+encodeURIComponent(b)+"&");a=Xf(bf(e),"SCRIPT");g&&a.setAttribute("nonce",g);gi(a,Dd(d));e.body.appendChild(a)}} function Sw(a,b,c,d){var e,g;Ga(function(h){e=c||q;var k="DEV"===a.serverEnvironment,l=c||q;l=a.nonce||Ae(l);k={integrationKeys:{productId:a.productId,feedbackBucket:a.bucket,triggerId:a.triggerId},callbacks:{onClose:a.callback,onLoad:a.onLoadCallback},formContent:{locale:a.locale,disableScreenshot:a.disableScreenshotting,productDisplayName:void 0,announcement:void 0,issueCategories:void 0,includeSeveritySelection:void 0,customImageSrc:void 0,thankYouMessage:void 0,Rw:void 0,defaultFormInputValues:void 0, defaultFormInputValuesString:void 0,abuseLink:a.abuseLink,additionalDataConsent:a.additionalDataConsent},initializationData:{isLocalServer:k,nonce:l,useNightlyRelease:k,feedbackJsUrl:void 0,feedbackCssUrl:void 0,feedbackJsUrlSerialized:void 0,feedbackCssUrlSerialized:void 0,submissionServerUri:a.feedbackServerUri,colorScheme:a.colorScheme},extraData:{productVersion:a.productVersion,authUser:a.authuser,configuratorId:a.configuratorId,customZIndex:a.customZIndex,tinyNoPointer:a.tinyNoPointer,allowNonLoggedInFeedback:a.allowNonLoggedInFeedback, enableAnonymousFeedback:a.enableAnonymousFeedback}};b&&(l=new Map(Object.entries(b)),k.extraData.productSpecificData=l);g=k;return za(h,Ow(g,d,e),0)})} function Tw(a,b,c){try{if("help"===a.flow){var d=a.helpCenterPath.replace(/^\//,"");mi(c||window,li("https://support.google.com/"+d))}else"submit"===a.flow?Rw(a,b,c):Pw(a.productId,a.feedbackServerUri).then(function(e){var g=void 0===g?!1:g;var h=e.Ic;var k=Mq(h),l=gr(h,k,1,g);var m=!1;if(null==l||"object"!==typeof l||(m=Array.isArray(l))||l.tl!==Rq)if(m){var p=m=Kq(l);0===p&&(p|=k&32);p|=k&2;p!==m&&Lq(l,p);m=new zw(l)}else m=void 0;else m=l;m!==l&&null!=m&&hr(h,k,1,m,g);h=m;null!=h&&(e=e.Ic,k=Mq(e), k&2||(l=h,m=l.Ic,p=Mq(m),l=p&2?Wq(l.constructor,er(m,p,!1)):l,l!==h&&(h=l,hr(e,k,1,h,g))));g=h;e=!Cc||(null==g?void 0:g.getEnableMweb());h=!a.tinyNoPointer||(null==g?void 0:g.getEnableTinyNoPointer());!g||g.getAlohaAutoGaRollout()&&e&&h?Sw(a,b,c,g):Rw(a,b,c)},function(e){e&&"DuplicateFormError"!==e.name&&Rw(a,b,c)})}catch(e){Sw(a,b,c,null)}}ab("userfeedback.api.startFeedback",Tw);function Uw(a,b,c){zn.call(this);if(this.j=D("gb-mobile-appbar-back-button"))Z(this).ka(this.j,"click",this.l),Vw(this);(this.i=D("gb-mobile-appbar-more"))&&Ww(this);var d=D("gb-mobile-appbar-search-button");d&&b&&(Q(d,"click",function(){Xw(b,c)}),Q(d,"keydown",function(e){32!=e.keyCode&&13!=e.keyCode||Xw(b,c)}));new xw(a)}n(Uw,zn); function Ww(a){var b=D("gb-mobile-more-menu");if(b){var c=new ts(b);us(c,4);c.setPosition(new Hu(a.i,4));c.Aa(!1);Q(a.i,"click",function(){Yw(b,c)});Q(a.i,"keydown",function(d){32!=d.keyCode&&13!=d.keyCode||Yw(b,c)})}else I(a.i)}function Yw(a,b){Jb(a,"more-menu-hidden");b.Aa(!0);b.ha().focus();a=kf("more-menu-link");for(var c=0;c"+(e.j+1+" of ")+(e.i.o.vb.length+" in this book for ")+(bt(e.i.o)+"")));e=a.i.N;b=Mo(e.ab(),b.La());if(!b)return null;var g=e.Fa();g instanceof qt||g instanceof ru||(a.i.l==ru?e.Wb(ru):e.Wb(qt));if(c)return e.Ad(c),null;if(d)return zp(e,d),null;e.Bh(b); return b}Jx.prototype.ua=function(){Bj(this.s);X.prototype.ua.call(this)};var Tx="ganpub ganclk dapp source_ip source_country source_domain authuser".split(" ");function Ux(a){var b=void 0===b?window.location.href:b;var c=new S(b);T(a,"hl","en");(b=U(c,"output"))&&T(a,"output",b);b=U(c,"source");"ge-ipad-app"==b?(T(a,"dapp","2"),Uk(a,"output")):"ge-tablet-app"==b?(T(a,"dapp","4"),Uk(a,"output")):"ge-ip-app"==b?T(a,"dapp","1"):"ge-android-app"==b&&T(a,"dapp","3");U(c,"authuser")||Uk(a,"authuser");Tx.forEach(function(d){var e=U(c,d);e&&T(a,d,e)})};function Vx(){this.g=[]}u(Vx,Ht);Qa(Vx);function Wx(a,b){var c=a.g[b];if(!c){switch(b){case 0:c=a.Ra()+"-highlight";break;case 1:c=a.Ra()+"-checkbox";break;case 2:c=a.Ra()+"-content"}a.g[b]=c}return c}f=Vx.prototype;f.lg=function(){return"menuitem"};f.Nc=function(a){var b=a.g.Oa("DIV",Kt(this,a).join(" "),Xx(this,a.Dc(),a.g));Yx(this,a,b,Pt(a,8)||Pt(a,16));return b};f.Fc=function(a){return a&&a.firstChild}; f.Rb=function(a,b){var c=Gf(b),d=Wx(this,2);c&&Hb(c,d)||b.appendChild(Xx(this,b.childNodes,a.g));Hb(b,"goog-option")&&(a.Qh(!0),this.Qh(a,b,!0));return Vx.oa.Rb.call(this,a,b)};f.mg=function(a,b){var c=this.Fc(a),d=Zx(this,a)?c.firstChild:null;Vx.oa.mg.call(this,a,b);d&&!Zx(this,a)&&c.insertBefore(d,c.firstChild||null)};function Xx(a,b,c){a=Wx(a,2);return c.Oa("DIV",a,b)}f.zp=function(a,b,c){a&&b&&Yx(this,a,b,c)};f.Qh=function(a,b,c){a&&b&&Yx(this,a,b,c)}; function Zx(a,b){return(b=a.Fc(b))?(b=b.firstChild,a=Wx(a,1),!!b&&If(b)&&Hb(b,a)):!1}function Yx(a,b,c,d){Nt(a,c,b.ff());Ot(a,b,c);d!=Zx(a,c)&&(y(c,"goog-option",d),c=a.Fc(c),d?(a=Wx(a,1),c.insertBefore(b.g.Oa("DIV",a),c.firstChild||null)):c.removeChild(c.firstChild))}f.sh=function(a){switch(a){case 2:return Wx(this,0);case 16:case 8:return"goog-option-selected";default:return Vx.oa.sh.call(this,a)}}; f.Pi=function(a){var b=Wx(this,0);switch(a){case "goog-option-selected":return 16;case b:return 2;default:return Vx.oa.Pi.call(this,a)}};f.Ra=function(){return"goog-menuitem"};function $x(a,b,c,d){Zt.call(this,a,d||Vx.Jb(),c);this.uc(b)}u($x,Zt);f=$x.prototype;f.yb=function(){var a=this.vl;return null!=a?a:this.Bg()};f.uc=function(a){this.vl=a};f.Vb=function(a,b){$x.oa.Vb.call(this,a,b);switch(a){case 8:Qt(this,16)&&!b&&this.Xf(!1);(a=this.ha())&&this.vd().zp(this,a,b);break;case 16:(a=this.ha())&&this.vd().Qh(this,a,b)}};f.zp=function(a){this.Vb(8,a)};f.Qh=function(a){this.Vb(16,a)}; f.Bg=function(){var a=this.Dc();return Array.isArray(a)?(a=kb(a,function(b){return If(b)&&(Hb(b,"goog-menuitem-accel")||Hb(b,"goog-menuitem-mnemonic-separator"))?"":Tf(b)}).join(""),Oe(a)):$x.oa.Bg.call(this)};f.de=function(a){var b=this.getParent();if(b){var c=b.l;b.l=null;if(c&&"number"===typeof a.clientX&&Ge(c,new B(a.clientX,a.clientY)))return}$x.oa.de.call(this,a)};f.be=function(a){return a.keyCode==this.ul&&this.vf(a)?!0:$x.oa.be.call(this,a)};f.Rs=function(){return this.ul}; Wt("goog-menuitem",function(){return new $x(null)});$x.prototype.ff=function(){return Pt(this,16)?"menuitemcheckbox":Pt(this,8)?"menuitemradio":$x.oa.ff.call(this)};$x.prototype.getParent=function(){return Zt.prototype.getParent.call(this)};$x.prototype.Gg=function(){return Zt.prototype.Gg.call(this)};function ay(a,b,c,d){Hu.call(this,a,b,c||d);(c||d)&&this.l(65|(d?32:132))}u(ay,Hu);function by(){}u(by,Ht);Qa(by);by.prototype.Ra=function(){return"goog-menuheader"};function cy(a,b,c){Zt.call(this,a,c||by.Jb(),b);this.Vb(1,!1);this.Vb(2,!1);this.Vb(4,!1);this.Vb(32,!1);this.qe=1}u(cy,Zt);Wt("goog-menuheader",function(){return new cy(null)});function dy(){}u(dy,Ht);Qa(dy);dy.prototype.Nc=function(a){return a.g.Oa("DIV",this.Ra())};dy.prototype.Rb=function(a,b){b.id&&a.Ng(b.id);if("HR"==b.tagName){var c=b;b=this.Nc(a);Bf(b,c);I(c)}else w(b,this.Ra());return b};dy.prototype.mg=function(){};dy.prototype.Ra=function(){return"goog-menuseparator"};function ey(a,b){Zt.call(this,null,a||dy.Jb(),b);this.Vb(1,!1);this.Vb(2,!1);this.Vb(4,!1);this.Vb(32,!1);this.qe=1}u(ey,Zt);ey.prototype.Ka=function(){ey.oa.Ka.call(this);var a=this.ha();Ym(a,"separator")};Wt("goog-menuseparator",function(){return new ey});function fy(a){this.g=a||"menu"}u(fy,hw);Qa(fy);f=fy.prototype;f.Qj=function(a){return"UL"==a.tagName||fy.oa.Qj.call(this,a)};f.uh=function(a){return"HR"==a.tagName?new ey:fy.oa.uh.call(this,a)};f.Vd=function(a,b){return Kf(a.ha(),b)};f.og=function(){return"goog-menu"};f.Rj=function(a){fy.oa.Rj.call(this,a);a=a.ha();Y(a,"haspopup","true")};function gy(a){ey.call(this,dy.Jb(),a)}u(gy,ey);Wt("goog-menuseparator",function(){return new ey});function hy(a,b){mw.call(this,"vertical",b||fy.Jb(),a);vw(this,!1)}u(hy,mw);f=hy.prototype;f.mk=!0;f.Vd=function(a){if(this.vd().Vd(this,a))return!0;for(var b=0,c=Gn(this);bDate.now()-a.Ho);g&&a.Tl?a.kb():a.dispatchEvent("beforeshow")&&(c="undefined"!=typeof c?c:8,e||(a.ha().style.visibility="hidden"),N(a.ha(),!0),b.Mc(a.ha(),c,d),e||(a.ha().style.visibility="visible"),a.Td(-1),a.Aa(!0))}f.kb=function(){this.isVisible()&&(this.Aa(!1),this.isVisible()||(this.Ho=Date.now()))};f.Lu=function(){this.kb()};f.Yu=function(a){ly(this,a)}; f.Zu=function(a){32!=a.keyCode&&13!=a.keyCode&&40!=a.keyCode||ly(this,a);40==a.keyCode&&rw(this)};function ly(a,b){for(var c=a.i.Xd(),d=0;d"+(a.i.o.vb.length+" results in this book for ")+(bt(a.i.o)+"")));Rx(a,!0)} function oy(a){bq()||(xy(a,D("search-result-prev"),function(){yy(a,a.j,-1)},"Previous result"),xy(a,D("search-result-next"),function(){yy(a,a.j,1)},"Next result"));xy(a,D("search-result-viewall"),function(){Px(a.i)},"View all");xy(a,D("search-close"),function(){a.Ha()},"Close search")} function py(a){var b=H("SPAN");O(b,qj("-  "));w(b,"search-bar-link-spacer");a.s.appendChild(b);zy(a,a.s,"\u2039 Previous",function(){yy(a,a.j,-1)},"Previous");b=H("SPAN");O(b,qj("  "));w(b,"search-bar-link-spacer");a.s.appendChild(b);zy(a,a.s,"Next \u203a",function(){yy(a,a.j,1)},"Next");b=H("SPAN");O(b,qj("  -  "));w(b,"search-bar-link-spacer");a.s.appendChild(b);zy(a,a.s,"View all",function(){Px(a.i)})} function ry(a){a.ma.appendChild(a.O);var b=H("SPAN");O(b,qj("-  "));w(b,"search-bar-link-spacer");a.O.appendChild(b);a.O.appendChild(xf("Order by: "));a.O.appendChild(a.Ga);zy(a,a.Ga,"relevance",function(){Ay(a,"r")},"Order by relevance");b=H("SPAN");O(b,qj(" | pages"));a.Ga.appendChild(b);a.O.appendChild(a.Ia);b=H("SPAN");O(b,qj("relevance | "));a.Ia.appendChild(b);zy(a,a.Ia,"pages",function(){Ay(a,"n")},"Order by pages")} function qy(a){a.V=a.o?D("sort-dropdown-button"):F("A",{"class":"search-bar-sort-dropdown-link"});var b=a.o?D("sort-dropdown-label"):F("SPAN",{"class":"search-bar-sort-dropdown-text"});J(b,"Order by ");a.na=F("SPAN",{"class":"search-bar-sort-dropdown-selected"});J(a.na,"pages");var c=a.V;bn(c,"Order by pages");c.setAttribute("title","Order by pages");b.appendChild(a.na);b=new jy;var d=new $x("relevance");d.Ph("Order by relevance");b.Za(d,!0);w(d.ha(),"search-bar-sort-dropdown-item");var e=new $x("pages"); e.Ph("Order by pages");b.Za(e,!0);Ib(e.ha(),["search-bar-sort-dropdown-item","search-bar-sort-dropdown-item-selected"]);b.Tl=!0;a.ta?b.render(a.O):b.render(document.body);w(b.ha(),"sort-dropdown-menu");c=H("SPAN");c.id="current-sort-label";J(c,"Current");N(c,!1);b.ha().appendChild(c);Y(e.ha(),"describedby","current-sort-label");a.qa?(b.attach(a.V,12,13),w(b.ha(),"popup-menu")):b.attach(a.V,13,12);a.g.ka(b,"action",function(g){By(a,g,d.ha(),e.ha())});a.g.ka(b,"keydown",function(g){32!=g.keyCode&&13!= g.keyCode||By(a,g,d.ha(),e.ha())});a.ta&&a.g.ka(b,"beforeshow",function(){var g=a.V.offsetWidth-32;Hh(d.ha(),g);Hh(e.ha(),g)})}function sy(a){var b=H("SPAN");w(b,"search-bar-close-link-container");a.qa?a.Ba.appendChild(b):a.ma.appendChild(b);a.g.ka(b,"click",a.Ha);var c=zy(a,b,"Clear search",function(){a.Ha()});w(c,"search-bar-close-link");c=H("IMG");c.src="/googlebooks/images/close_x.gif";w(c,"search-bar-close-img");b.appendChild(c)} function Rx(a,b){N(vy,!b);N(a.O,b);a.o?(N(a.s,!b),b=!b&&1==a.i.o.vb.length,y(a.s,"toolbar-button-disabled",b),Y(a.s,"disabled",b)):N(a.s,!b&&1=c.length&&(a.j=0);0>a.j&&(a.j=c.length-1);if(a.j!=d){var g=c[a.j];Ox(a.i,g)?(e=Kk(T(T(T(new S(b.href),"pg",g.La()),"num",a.j),"scoring",a.i.j),""),$h(b,li(e.toString())),Ox(a.i,c[d])):Ey(a,b,c,d,e)}}my.prototype.ua=function(){X.prototype.ua.call(this);Bj(this.wa);N(vy,!0);I(this.ma);null!=Cy&&Cy.resize();this.o&&(Sx(this,!1),I(lf("sort-dropdown-menu")),Af(this.l))}; function zy(a,b,c,d,e){var g=H("SPAN");w(g,"search-bar-link");Ym(g,"link");bn(g,e?e:c);Qf(g,!0);b.appendChild(g);g.innerText=c;a.g.ka(g,"click",d);a.g.ka(g,"keydown",function(h){32!=h.keyCode&&13!=h.keyCode||d()});return g}function xy(a,b,c,d){bn(b,d);b.setAttribute("title",d);a.g.ka(b,"click",c);a.g.ka(b,"keydown",function(e){32!=e.keyCode&&13!=e.keyCode||c()})}my.prototype.Ha=function(){var a=this.i;pp(a.i.N.Xa(),"");bq()&&px(a.l,!1);(a=this.i.i)&&a.o&&a.o.update()}; function yy(a,b,c){var d=a.i.o.vb.length;a.j+=c;a.j>=d&&(a.j=0);0>a.j&&(a.j=d-1);a.j!=b&&(Ox(a.i,a.i.o.vb[a.j])||yy(a,b,c))}function Ay(a,b){(a=a.i.i)&&a.update(b)} function By(a,b,c,d){if((b=b.target.Dc())&&a.na){var e=a.V;switch(b){case "pages":Ay(a,"n");J(a.na,"pages");bn(e,"Order by pages");e.setAttribute("title","Order by pages");y(d,"search-bar-sort-dropdown-item-selected",!0);Y(d,"describedby","current-sort-label");y(c,"search-bar-sort-dropdown-item-selected",!1);c.removeAttribute("aria-describedby");break;case "relevance":Ay(a,"r"),J(a.na,"relevance"),bn(e,"Order by relevance"),e.setAttribute("title","Order by relevance"),y(c,"search-bar-sort-dropdown-item-selected", !0),Y(c,"describedby","current-sort-label"),y(d,"search-bar-sort-dropdown-item-selected",!1),d.removeAttribute("aria-describedby")}}} function wy(a,b){a.V&&(y(a.V,"search-bar-sort-dropdown-disabled",!b),Y(a.V,"disabled",!b));var c="n"==a.i.j;b&&!c&&(J(a.na,"relevance"),b=a.V,bn(b,"Order by relevance"),b.setAttribute("title","Order by relevance"),b=kf("search-bar-sort-dropdown-item"),y(b[0],"search-bar-sort-dropdown-item-selected",!0),Y(b[0],"describedby","current-sort-label"),y(b[1],"search-bar-sort-dropdown-item-selected",!1),b[1].removeAttribute("aria-describedby"));a.o&&a.l.setAttribute("data-search-sort",a.i.j)} function Sx(a,b){a.ta?(N(D("gb-mobile-search"),b),N(D("gb-mobile-search-buttons"),b)):(y(D("entity-page-search-nav"),"hide-search-nav",!b),y(D("search-results-summ"),"hide-search-nav",!b),y(D("search-close"),"hide-search-nav",!b))}var ny,vy,Cy;function Fy(a,b,c,d){X.call(this);var e=this;this.N=a;this.s=b;this.o=c;this.O=d;this.V=Cc&&d&&d.isOgenEligibleMobileViewport;this.g.ka(a.Xa(),"change",function(){e.update("r")})}n(Fy,X); Fy.prototype.update=function(a,b,c){this.i?(this.i.Ea(),this.i=null):(this.N.O&&(this.l=this.N.O),this.j=new my(this.O));var d=this.N.Xa().getQuery();b&&!b.search_query_escaped&&0c.N.tb()?Jy(c,-20,0):c.N.qb("previous")},!1,!0),Hy(this,39,function(){c.N.O==ru&& c.N.Fa().Eb().getSize().width>c.N.tb()?Jy(c,20,0):c.N.qb("next")},!1,!0),Hy(this,32,function(d){d.shiftKey?Iy(c,-1):Iy(c,1)},!0,!0),Hy(this,74,function(){c.N.qb("next")},!0),Hy(this,75,function(){c.N.qb("previous")},!0),Ky(this,"+",function(){c.N.qb("zoomin")}),Ky(this,"-",function(){c.N.qb("zoomout")}),Ky(this,"=",function(){c.N.qb("zoomin")}));Ky(this,"?",function(){c.N.qb("showkeyboardshortcuts")})}function Ky(a,b,c){a.i[b]=t(Ly,c,!0,void 0)}function Hy(a,b,c,d,e){a.j[b]=t(Ly,c,d,e)} function Ly(a,b,c,d){b&&d.repeat||d.ctrlKey||d.altKey||d.metaKey||My[d.target.tagName.toUpperCase()]||(c&&d.preventDefault(),a(d))}function Iy(a,b){var c=a.g?a.g.clientHeight:a.N.Fa().getSize().height;Jy(a,0,Math.floor(b*c*.75))}function Jy(a,b,c){a.g?a.g.scrollTop+=c:(a=a.N.Fa(),$r(a,new B(b,c),r(a.Ed,a)))}var My={BUTTON:!0,INPUT:!0,SELECT:!0,TEXTAREA:!0};function Ny(a){this.Ic=Xq(a)}n(Ny,kr);var Oy=function(a){return function(b){b=JSON.parse(b);if(!Array.isArray(b))throw Error("Expected jspb data to be an array, got "+Ra(b)+": "+b);Iq(b,34);return new a(b)}}(Ny);var Py;function Qy(){var a=Py||(Py=Oy('[null,null,null,null,null,"(function(){\'use strict\';/*\\n\\n Copyright The Closure Library Authors.\\n SPDX-License-Identifier: Apache-2.0\\n*/\\nvar e\\u003dthis||self;function f(a){return a};var h;function k(a){this.g\\u003da}k.prototype.toString\\u003dfunction(){return this.g+\\"\\"};var l\\u003d{};function m(a){if(void 0\\u003d\\u003d\\u003dh){var c\\u003dnull;var b\\u003de.trustedTypes;if(b\\u0026\\u0026b.createPolicy){try{c\\u003db.createPolicy(\\"goog#html\\",{createHTML:f,createScript:f,createScriptURL:f})}catch(d){e.console\\u0026\\u0026e.console.error(d.message)}h\\u003dc}else h\\u003dc}a\\u003d(c\\u003dh)?c.createScriptURL(a):a;return new k(a,l)};/*\\n\\n SPDX-License-Identifier: Apache-2.0\\n*/\\nif(!function(){if(self.origin)return\\"null\\"\\u003d\\u003d\\u003dself.origin;if(\\"\\"!\\u003d\\u003dlocation.host)return!1;try{return window.parent.escape(\\"\\"),!1}catch(a){return!0}}())throw Error(\\"sandboxing error\\");\\nwindow.addEventListener(\\"message\\",function(a){var c\\u003da.ports[0];a\\u003da.data;var b\\u003da.callbackName.split(\\".\\"),d\\u003dwindow;\\"window\\"\\u003d\\u003d\\u003db[0]\\u0026\\u0026b.shift();for(var g\\u003d0;g\\u003cb.length-1;g++)d[b[g]]\\u003d{},d\\u003dd[b[g]];d[b[b.length-1]]\\u003dfunction(n){c.postMessage(JSON.stringify(n))};b\\u003ddocument.createElement(\\"script\\");a\\u003dm(a.url);b.src\\u003da instanceof k\\u0026\\u0026a.constructor\\u003d\\u003d\\u003dk?a.g:\\"type_error:TrustedResourceUrl\\";document.body.appendChild(b)},!0);}).call(this);\\n"]')); if(!a)return null;a=fr(a,6);a=null==a||"string"===typeof a?a:void 0;if(null===a||void 0===a)a=null;else{var b=rd();a=b?b.createScript(a):a;a=new yd(a,xd)}return a};function Ry(a){this.url=a;this.timeout=5E3;this.l="callback";this.g=this.i=null}function Sy(a){var b=void 0===b?{}:b;a.g=El();var c=new S(a.url),d=new Map;d.set("callback",a.l);c.j.cq(Xk(b),d);Ty(a).then(function(){Uy(a,c.toString())}).then(function(){return a.g.promise}).then(function(){Vy(a)},function(){Vy(a)});0":">","`":"`","\u0085":"…","\u00a0":" ","\u2028":"
","\u2029":"
"};function kz(a){return pz[a]} var jz=/[\x00\x22\x26\x27\x3c\x3e]/g,oz=/[\x00\x22\x27\x3c\x3e]/g,qz=/^(?!on|src|(?:action|archive|background|cite|classid|codebase|content|data|dsync|href|http-equiv|longdesc|style|usemap)\s*$)(?:[a-z0-9_$:-]*)$/i,mz=/<(?:!|\/?([a-zA-Z][a-zA-Z0-9:\-]*))(?:[^>'"]|"[^"]*"|'[^']*')*>/g,nz=/"+hz(null!=c?c:"")+"")};function uz(a,b){this.j=a;this.s=!!b;this.l={0:this.j+"-arrowright",1:this.j+"-arrowup",2:this.j+"-arrowdown",3:this.j+"-arrowleft"}}n(uz,os);f=uz.prototype;f.tj=function(a){this.i=a};f.setPosition=function(a,b,c,d){null!=a&&(this.vk=a);null!=b&&(this.rk=b);"number"===typeof c&&(this.An=Math.max(c,15));"number"===typeof d&&(this.xl=d)};f.Mc=function(a,b,c){a=this.rk;2==a&&(a=0);vz(this,this.vk,a,2==this.rk?wz(this.vk)?this.g.offsetHeight/2:this.g.offsetWidth/2:this.An,0,c)}; function vz(a,b,c,d,e,g){if(a.i){var h=xz(b,c);var k=a.i;var l=a.g,m=a.Ca,p=M(k);a:{p=(wz(b)?p.height/2:p.width/2)-d;var x=rs(k,h);if(m)m=m.clone(),l&&(l=qs(l),m.left+=l.x,m.right+=l.x,m.top+=l.y,m.bottom+=l.y);else if(m=yh(k),!m){k=p;break a}k=gh(Ih(k));wz(b)?k.topm.bottom&&x&1&&(p-=k.bottom-m.bottom):k.leftm.right&&x&4&&(p-=k.right-m.right);k=p}k=wz(b)?new B(a.xl,k):new B(k,a.xl);p=wz(b)?6:9;a.nk&&2==e&&(p=wz(b)?4:1); x=b^3;wz(b)&&"rtl"==a.i.dir&&(x=b);h=ps(a.i,xz(x,c),a.g,h,k,g,a.bl?p:0,void 0,a.Ca);if(2!=e&&h&496){vz(a,b^3,c,d,a.nk&&0==e?1:2,g);return}!a.s||h&496||(e=parseFloat(a.g.style.left),g=parseFloat(a.g.style.top),isFinite(e)&&0==e%1&&isFinite(g)&&0==g%1||sh(a.g,Math.round(e),Math.round(g)))}yz(a,b,c,d)} function yz(a,b,c,d){var e=a.o;dd(a.l,function(g){y(e,g,!1)},a);w(e,a.l[b]);e.style.top=e.style.left=e.style.right=e.style.bottom="";a.i?(c=Dh(a.i,a.g),d=zz(a.i,b),wz(b)?e.style.top=Az(c.y+d.y,a.g.offsetHeight-15)+"px":e.style.left=Az(c.x+d.x,a.g.offsetWidth-15)+"px"):e.style[0==c?wz(b)?"top":"left":wz(b)?"bottom":"right"]=d+"px"}function Az(a,b){return 15>b?15:Fe(a,15,b)}function xz(a,b){switch(a){case 2:return 0==b?1:5;case 1:return 0==b?0:4;case 0:return 0==b?12:13;default:return 0==b?8:9}} function zz(a,b){var c=0,d=0;a=M(a);switch(b){case 2:c=a.width/2;break;case 1:c=a.width/2;d=a.height;break;case 0:d=a.height/2;break;case 3:c=a.width,d=a.height/2}return new B(c,d)}function wz(a){return 0==a||3==a}f.bl=!1;f.rk=2;f.An=20;f.vk=3;f.Ca=null;f.xl=-5;f.nk=!1;function Bz(a){Cj.call(this);this.i=a||bf()}n(Bz,Cj);Bz.prototype.o=function(){Ym(this.ha(),"tooltip");Y(this.ha(),"live","polite")};function Cz(a){Bz.call(this,a);this.g=this.i.Oa("DIV",Dz()+"-contentId");this.j=this.i.Oa("DIV",Dz()+"-arrow",this.i.Oa("DIV",Dz()+"-arrowimplbefore"),this.i.Oa("DIV",Dz()+"-arrowimplafter"));this.l=this.i.Oa("DIV",{"class":Dz(),role:"tooltip"},this.g,this.j);this.o()}n(Cz,Bz);function Dz(){return"jfk-tooltip"}Cz.prototype.ha=function(){return this.l};Cz.prototype.ua=function(){Bz.prototype.ua.call(this);this.l&&I(this.l)};function Ez(a){Cz.call(this,a)}n(Ez,Cz);Ez.prototype.o=function(){Ym(this.ha(),"tooltip")};function Fz(a){return Re(Tb(a.replace(Gz,function(b,c){return Hz.test(c)?"":" "}).replace(/[\t\n ]+/g," ")))}var Hz=/^(?:abbr|acronym|address|b|em|i|small|strong|su[bp]|u)$/i,Gz=/<[!\/]?([a-z0-9]+)([\/ ][^>]*)?>/gi;function Iz(a){a=a||bf();var b=Va(a.g);Jz[b]||(Jz[b]=new Kz(a))}function Lz(a,b){var c=b instanceof ie?Fz(je(b).toString()):b;a.removeAttribute("title");a.removeAttribute("data-tooltip-contained");a.removeAttribute("data-tooltip");b?(b instanceof ie?a.j=b:(a.setAttribute("data-tooltip",b),a.j=null),a.setAttribute("aria-label",c)):(a.j=null,a.removeAttribute("aria-label"));Iz(bf(a))}var Jz={}; function Kz(a){hk.call(this);this.ta=a;this.qa=new Em(this.Nv,0,this);Dj(this,this.qa);var b=tf();this.V="function"===typeof b.MutationObserver?new b.MutationObserver(r(this.Ys,this)):null;a=a.g;this.ka(a,"mouseout mousedown click blur focusout keydown".split(" "),this.us,!0);this.ka(a,["mouseover","focus","focusin"],this.yv,!0)}n(Kz,hk);f=Kz.prototype;f.ua=function(){Mz(this);hk.prototype.ua.call(this)}; function Nz(a,b){switch(b.type){case "mousedown":case "mouseover":case "mouseout":case "click":a.wa=!1;break;case "keydown":a.wa=!0}}f.yv=function(a){this.V&&this.V.disconnect();Nz(this,a);var b=a.target;a="focus"==a.type||"focusin"==a.type;var c=this.g&&Kf(this.g.g,b);if(this.wa||!a||c){this.Ba=a;if(a=b&&b.getAttribute&&this.V)a=b.getAttribute("role")||null,a=ob(Xm,a);a&&(this.V.observe(b,{attributes:!0}),(a=$m(b))&&(b=a));this.l=b}else this.l=null;Oz(this)}; f.us=function(a){Nz(this,a);var b=a.target;b=this.g&&Kf(this.g.g,b);if("mousedown"!=a.type&&"click"!=a.type||!b)this.l=null,Oz(this)};f.Ys=function(a){v(a,r(function(b){var c=$m(b.target);c&&"aria-activedescendant"==b.attributeName&&(this.l=c,Oz(this))},this))};function Oz(a){if(!(a.qa.isActive()&&a.i&&a.O)){Mz(a);var b=null!=a.O?a.O:50;a.qa.start(a.i?b:300)}}function Mz(a){a.ma&&(Tl(a.ma),a.ma=0,a.i=null)} f.Nv=function(){if(!this.l)Pz(this),this.O=this.i=null;else if(!(this.i&&this.g&&Kf(this.g.ha(),this.l))||this.i.getAttribute("data-tooltip-unhoverable")){var a=Vf(this.l,function(k){return k.getAttribute&&(k.getAttribute("data-tooltip-contained")||k.getAttribute("data-tooltip")||k.j)&&!k.getAttribute("data-tooltip-suspended")}),b=!1;this.i&&this.i!=a&&(Pz(this),this.O=this.i=null,b=!0);if(!this.i&&a&&(this.i=a,!(a.getAttribute("data-tooltip-only-on-overflow")&&a.offsetWidth>=a.scrollWidth&&a.offsetHeight>= a.scrollHeight||this.Ba&&"mouse"==a.getAttribute("data-tooltip-trigger")))){var c=se;if(a.getAttribute("data-tooltip-contained"))for(var d=kf("jfk-tooltip-data",a),e=0;e=eh(this.Ha,this.O))}if(b){if(this.Th(),this.Tb=null,b=this.ma)b.Tb=null}else 3==wx(this)&&this.vg();Zz.oa.Hg.call(this,a)};f.Xk=function(){this.Tb!=this.ha()&&(this.ai=!1,this.Tb=this.ha())};f.Rk=function(){return this.ai?100:Zz.oa.Rk.call(this)};function aA(a,b){a=new Zz(a);a.Hl(sj.g(b.innerHTML));a.className="buy-tip-card";a.ta=new bh(5,5,5,5);a.Fi=!0;a.Pg=500;a.Fh=250};function bA(a,b){this.Bb=a||200;this.rb=b||108;X.call(this)}u(bA,X);bA.prototype.Db=function(){return this.Bb};bA.prototype.tb=function(){return this.rb};function cA(a){ux.call(this,a,void 0,void 0);this.Rn=!1;this.Fi=!0;this.Pg=500}n(cA,Zz);cA.prototype.zj=function(a,b){b||(b=new Hu(a,9,!0));Zz.prototype.zj.call(this,a,b)};cA.prototype.className="unified-hovercard";function dA(a,b,c){Cj.call(this);this.i=null;this.data=a;this.g=b;this.maxWidth=c||500}n(dA,Cj);dA.prototype.ua=function(){this.i&&this.i.Ea()};function eA(a){return a.i||(a.i=new hk(a))} dA.prototype.j=function(a){var b=F("DIV"),c=new S(this.data.ya.Ig||this.data.ya.gp);this.data.ya.source&&T(c,"source",this.data.ya.source);var d=this.data.hb();this.data.ya.Gp&&(d+=": "+this.data.ya.Gp);d=F("A",{},d);d.classList.add(this.g+"-title");$h(d,c.toString());b.appendChild(d);a.appendChild(b);fA(this,a);this.data.ya.Ql&&(c=new yi,b=F("DIV",this.g+"-snippet"),O(b,c.g(this.data.ya.Ql+" ")),c=F("A",{},"more \u00bb"),c.classList.add(this.g+"-more-link"),$h(c,this.data.ya.Ig),b.appendChild(c), a.appendChild(b))}; function fA(a,b){var c="",d=F("DIV"),e=a.data.ya.sk;if(!Sb(Ye(e))){c=e.split(/\s*,\s*/g);e=c.length;if(!e)return;var g=F("SPAN","author"),h=e-1,k=xf(", ");v(c,function(l,m){var p=l?l.replace(gA,""):"";p=Me(p);l=new S(Le('/ebooks?output=ws2&as_brr=5&q=inauthor:"%s"',p));Ux(l);p=F("A",{},p);$h(p,l.toString());g.appendChild(p);m)|(<\/b>)/ig,iA={VIEW_PAGES_PARTIAL:2,VIEW_PAGES_ALL:5,VIEW_PAGES_PARTIAL_FIXED:6,VIEW_PURCHASED:7,VIEW_GOOGLE_EDITIONS_PREVIEW:8};function jA(){this.ya={}}f=jA.prototype;f.hb=function(){return this.ya.title};f.Ub=function(){return this.ya.Vl};f.Sd=function(){return this.ya.Sd};f.el=function(){return this.ya.el};f.Rf=function(){return this.ya.Rf};f.Ih=function(){return this.ya.Ih};function kA(){this.g=[]}f=kA.prototype;f.getId=function(){return this.ub};f.Ng=function(a){this.ub=a};f.hb=function(){return this.vc};f.Cg=function(){return this.l};function lA(a,b,c){mA(a,b)||null==a.V||!a.j?c&&c(null):nA(b,a.V.clone(),r(a.ns,a,b,c||function(){}))}function oA(a,b,c){mA(a,b)&&null!=a.ma&&a.na?nA(b,a.ma.clone(),r(a.Cs,a,b,c||function(){})):c&&c(null)}function nA(a,b,c){T(b,"id",a);Yl(b,c,"POST")}f.ns=function(a,b,c){var d=null;fm(c.target)&&(d=new jA,d.ya.Vl=a,this.g.push(d));b(d)}; f.Cs=function(a,b,c){var d=null;fm(c.target)&&(d=mA(this,a),pA(this,d));b(d)};function pA(a,b){sb(a.g,function(c){return c.Ub()==b.Ub()})}function mA(a,b){return mb(a.g,function(c){return c&&c.Ub()==b})};function qA(a){this.ya={};this.ya.title=a.title;this.ya.Gp=a.subtitle;this.ya.sk=a.authors;this.ya.gp=a.preview_url;this.ya.Ig=a.info_url;this.ya.mj=a.pub_date;this.ya.Qo=a.num_pages;this.ya.Sp=a.viewability;this.ya.Ow=a.subject;this.ya.Jp=a.thumbnail_url;this.ya.Ql=a.snippet;this.ya.Bw=a.list_price;this.ya.wp=a.sale_price;this.ya.Lw=a.sale_price_better;this.ya.Ku=a.offer_price;this.ya.xk=a.buy_url;this.ya.jp=a.read_url;this.ya.Yi=a.is_free_ebook||!1;this.ya.Wi=a.in_my_ebooks||!1;this.ya.Cw=a.my_ebooks_url|| "";this.ya.Iw=a.rating_score||0;this.ya.Dw=a.num_reviews||0;this.ya.Sd=a.is_purchased||!1;this.ya.Hh=a.is_ebook||!1;this.ya.Sw=a.write_review_url||"";this.ya.Qs=a.add_to_my_ebooks_url||"";this.ya.ev=a.preview_ebook_url||"";this.ya.Kw=a.reviews_url||"";this.ya.Fj=a.view_order_url||"";this.ya.rw=a.add_to_my_ebooks_url;this.ya.ms=a.add_to_my_ebooks_url_is_on_play||!1;this.ya.Ui=a.has_flowing_text||!1;this.ya.Vi=a.has_scanned_text||!1;var b=Np(a.info_url);this.ya.Vl=b;this.ya.tw=a.canonical_atb_url|| "";this.ya.el=a.is_rentable||!1;this.ya.Tf=a.is_pre_order||!1;this.ya.Zo=a.on_sale_date||"";this.ya.Rf=a.is_pre_ordered||!1;this.ya.Aw=a.issue_volume_count||0;this.ya.Ih=a.is_volume_cancelled||!1;this.ya.ps=a.cancelled_reason||"0";switch(a.rental_state){case 1:this.ya.oj=1;break;case 2:this.ya.oj=2}this.ya.ov=a.rental_end_utc||0}n(qA,jA);function rA(a){this.g=[];this.Ng(a.id);this.o=a.owner_uid;this.vc=a.title;this.l=a.description;this.ta=a.num_volumes;this.te=a.access||"0";this.Ja=a.can_modify_metadata;this.O=a.predefined;this.na=a.can_remove_volumes;this.j=a.can_add_volumes;this.qa=a.can_only_add_ebooks||!1;this.V=new S(a.add_vol_base_url);this.ma=new S(a.del_vol_base_url);void 0!==a.paused&&(this.i=a.paused,this.s=a.pause_bookshelf_url);a.volumes&&(this.g=kb(a.volumes,function(b){return new qA(b)}))}n(rA,kA);function sA(){X.call(this);this.j=[];this.i=[]}u(sA,X);function tA(a){var b=new S(tf().location);b=new S(b);return a===parseInt(U(b,"as_coll"),10)}function uA(a,b,c){vA(a,b.getId())||(a=b.O?a.j:a.i,c?wb(a,void 0,0,b):a.push(b))}function wA(a,b,c){var d=1==b.te;a=new S(a);T(a,"cl_title",b.hb());T(a,"cl_mode",d?"public":"private");b="cl_des="+encodeURIComponent(String(b.Cg()));Yl(a,c,"POST",b)} sA.prototype.s=function(a){a=a.target;if(fm(a)){a=new rA(hm(a));var b=vA(this,a.getId());b.vc=a.hb();b.l=a.Cg();b.te=a.te;b=new Fj("update",this);b.shelf=a;this.dispatchEvent(b)}};sA.prototype.o=function(a,b){b=b.target;fm(b)&&(b=new rA(hm(b)),uA(this,b,a),a=new Fj("add",this),a.shelf=b,this.dispatchEvent(a))};function xA(a,b){a.l=new S(b);T(a.l,"jscmd","ClCreate")}function vA(a,b){return mb(yA(a),function(c){return c.getId()==b})}function yA(a){return Bb(a.j,a.i)};function zA(a,b){var c=F("A",{},"View order");$h(c,a);c.classList.add(b);return c};function AA(a,b,c){dA.call(this,a,b,c);U(new S(this.data.ya.Ig),"dapp")}n(AA,dA); AA.prototype.render=function(a){Af(a);var b=F("DIV",this.g),c=F("DIV",this.g+"-meta");this.j(c);var d=F("DIV",this.data.ya.Hh?this.g+"-footer":this.g+"-footer-nonebook"),e=F("DIV",this.g+"-footer-inner");if(this.data.ya.Hh)if(this.data.Ih()&&tA(1))BA(this,e);else if(this.data.ya.Tf&&!this.data.Sd()||this.data.Rf()){var g=F("DIV",this.g+"-pre-order-date");g.textContent="Available on: "+this.data.ya.Zo;e.appendChild(g);this.data.Rf()&&tA(1)&&BA(this,e)}else if(this.data.Sd()&&tA(1))CA(this,e),BA(this, e);else{CA(this,e);g=!this.data.Sd()&&!this.data.ya.Yi;var h=this.data.ya.Yi&&!this.data.ya.Wi;if(g||h){g=F("SPAN",{"class":this.g+"-footer-inner-right"});if(h=this.data.ya.ev||this.data.ya.jp){for(var k=h.search(Dk),l=0,m,p=[];0<=(m=Ck(h,l,"source",k));)p.push(h.substring(l,m)),l=Math.min(h.indexOf("&",m)+1||k,k);p.push(h.slice(l));h=p.join("").replace(Fk,"$1");h=Bk(h,"source","ebookstore")}h&&(k=F("A",{id:"unified-hovercard-preview-link"},"preview it"),$h(k,h),g.appendChild(k));e.appendChild(g)}}d.appendChild(e); b.appendChild(c);b.appendChild(d);a.appendChild(b);M(a).width>this.maxWidth&&L(a,this.maxWidth,"")}; AA.prototype.j=function(a){if(!(this.data.Sd()||this.data.Rf()||this.data.Ih())&&this.data.ya.Fj&&tA(1)){var b=F("IMG",{src:"/googlebooks/images/purchase_error.gif","class":this.g+"-error-icon"});b=F("DIV",this.g+"-card-error",b,"Credit card declined:");if(this.data.ya.Fj){var c=zA(this.data.ya.Fj,"primary"),d=F("SPAN");d.innerText=" ";b.appendChild(d);b.appendChild(c)}a.appendChild(b)}dA.prototype.j.call(this,a);b=F("DIV",this.g+"-book-options");this.data.ya.Hh?(this.data.ya.Yi?this.data.ya.Wi? DA(this,b):hA(this,b,"Read eBook",this.data.ya.Qs,!this.data.ya.ms,void 0,"unified-hovercard-free-btn"):this.data.Rf()?(c=F("SPAN",this.g+"-pre-ordered","Pre-ordered"),b.appendChild(c)):this.data.Ih()&&tA(1)?(c=F("DIV",this.g+"-cancelled"),d=this.data.ya.ps,0==d?J(c,"Cancelled - by customer request"):1==d?J(c,"Cancelled - problem with eBook"):2==d?J(c,"Cancelled - price change"):3==d?J(c,"Cancelled - publisher cancellation"):J(c,"Cancelled"),b.appendChild(c)):this.data.Sd()||this.data.ya.Wi?!this.data.Sd()&& this.data.ya.Wi?EA(this,b):this.data.Sd()&&DA(this,b):EA(this,b),tA(7)&&(c=F("SPAN",this.g+"-offline-remove-options"),d=F("SPAN",{id:"unified-hovercard-remove-from-ebooks","class":this.g+"-fake-link"},"Remove from My eBooks"),d.id="hovercard-remove-from-my-ebooks",c.appendChild(d),b.appendChild(c))):(c=this.data.ya.gp,gd(iA,this.data.ya.Sp)&&!Sb(c)?hA(this,b,"Preview",c,void 0,void 0,"unified-hovercard-preview-sample"):hA(this,b,"Preview",c,!1,!0,"unified-hovercard-preview-sample"));a.appendChild(b)}; function BA(a,b){var c=F("DIV",{id:"unified-hovercard-purchased-shelf-links","class":a.g+"-order-links-container"}),d=a.data.ya.Fj;d&&(d=zA(d,""),c.appendChild(d));a.data.Rf()||(d=F("DIV",{id:"unified-hovercard-delete-forever","class":a.g+"-footer-fake-link"},"Delete forever"),w(d,a.g+"-footer-action-link"),d.id="hovercard-delete-forever",c.appendChild(d));b.appendChild(c)} function EA(a,b){a.data.ya.Tf&&!a.data.Sd()?hA(a,b,"Pre-order eBook - "+a.data.ya.wp,a.data.ya.xk,void 0,void 0,"unified-hovercard-buy-btn"):a.data.el()?hA(a,b,"EBOOK FROM "+a.data.ya.Ku,a.data.ya.xk,void 0,void 0,"unified-hovercard-buy-btn"):hA(a,b,"Buy eBook - "+a.data.ya.wp,a.data.ya.xk,void 0,void 0,"unified-hovercard-buy-btn")}function DA(a,b){hA(a,b,"Read now",a.data.ya.jp,void 0,void 0,"unified-hovercard-read-now")} function CA(a,b){var c=F("DIV",a.g+"-supported-devices"),d=a.g+"-device-type",e=a.g+"-device-supported",g=a.g+"-device-not-supported",h=F("SPAN",d,"Web"),k=F("SPAN",d,"Tablet / iPad"),l=F("SPAN",d,"eReader");d=F("SPAN",d,"Smartphone");var m=F("SPAN","goog-inline-block"),p=F("SPAN","goog-inline-block"),x=F("SPAN","goog-inline-block"),C=F("SPAN","goog-inline-block");a.data.ya.Ui?(w(m,e),w(p,e),w(x,e),w(C,e)):(a.data.ya.Vi?(w(m,e),w(p,e)):(w(m,g),w(p,g)),w(x,g),w(C,g));c.appendChild(m);c.appendChild(h); c.appendChild(p);c.appendChild(k);c.appendChild(x);c.appendChild(l);c.appendChild(C);c.appendChild(d);b.appendChild(c)};function FA(a,b,c){cA.call(this,a);this.Kb=xm();this.j=this.wa=this.o=null;this.Hb=b;this.i=null;this.Lb=!!c;this.render(b);GA(this)}n(FA,cA);FA.prototype.ua=function(){eA(this.i).Ea();I(this.ha())};FA.prototype.Kh=function(a,b){cA.prototype.Kh.call(this,a,b);this.isVisible()&&(this.ql=this.Kb?new bh(0,-2,0,0):new bh(0,0,0,-2),this.isVisible()&&this.fg(),this.o=this.g,HA(this))}; FA.prototype.render=function(a){this.i&&(this.i.Ea(),this.j=this.wa=null);this.i=new AA(a,this.className,435,this.Lb);this.i.render(this.ha());GA(this);this.isVisible()&&HA(this)}; function HA(a){var b=F("DIV"),c=F("DIV");var d=Ih(a.o||null);var e=Ih(a.ha());if(d){d.top=Math.ceil(d.top);e.top=Math.ceil(e.top);d.left=Math.ceil(d.left);e.left=Math.ceil(e.left);var g=e.top>=d.top,h=jh(e,d);h||(h=new fh(d.left,0,d.width,0));d=a.Kb?e.left+e.width-h.left-(h.width/2+12):h.left-e.left+(h.width/2-12);e={x:0=a?"Expiring soon":48>=a?a+" hours":c+" days"):a="",this.l=F("SPAN",["bookcard-badge","bookcard-sample-label"],a),b.appendChild(this.l)):!this.o||this.i.Sd()||this.i.ya.Yi||(this.l=F("SPAN",["bookcard-badge","bookcard-sample-label"], "Sample"),b.appendChild(this.l));Wj(b,"mouseover",this.na.bind(this,b))};IA.prototype.ma=function(){this.dispatchEvent("render");JA.dispatchEvent("complete");this.l&&Hh(this.l,M(this.j).width)};IA.prototype.na=function(a,b){(new FA(a,this.i)).Ee(b)};function KA(a,b,c){IA.call(this,a,b-40,c);this.s=F("DIV","slider-annotation");this.O=!1}n(KA,IA);KA.prototype.Oc=function(a){Wj(this,"render",r(this.qa,this));IA.prototype.Oc.call(this,a);a.appendChild(this.s)};KA.prototype.qa=function(a){this.O||(a.stopPropagation(),a=this.V(),this.s.appendChild(a),this.O=!0,this.dispatchEvent("render"))};function LA(a,b,c){KA.call(this,a,b,c)}n(LA,KA);LA.prototype.Oc=function(a){KA.prototype.Oc.call(this,a)};LA.prototype.V=function(){var a=this.i,b=H("DIV"),c=F("A",{className:"slider-annotation-title"},xf(a.hb()));$h(c,a.ya.Ig);b.appendChild(c);if(a=a.ya.sk)a=F("DIV","slider-annotation-author",xf(a)),b.appendChild(a);L(b,M(this.j).width+5,"");return b};function MA(){this.g=NA;this.ag=5E3}var OA=0;MA.prototype.send=function(a,b,c,d){a=a?ld(a):{};d=d||"_"+(OA++).toString(36)+Date.now().toString(36);var e="_callbacks___"+d;b&&(q[e]=PA(d,b),a.callback=e);b={timeout:this.ag,ts:!0};e=Bd.exec(Ad(this.g).toString());var g=e[3]||"";e=Dd(e[1]+Ed("?",e[2]||"",a)+Ed("#",g));b=$o(e,b);Vo(b,null,QA(d,a,c));return{ub:d,Jn:b}};MA.prototype.cancel=function(a){a&&(a.Jn&&a.Jn.cancel(),a.ub&&RA(a.ub,!1))};function QA(a,b,c){return function(){RA(a,!1);c&&c(b)}} function PA(a,b){return function(c){RA(a,!0);b.apply(void 0,arguments)}}function RA(a,b){a="_callbacks___"+a;if(q[a])if(b)try{delete q[a]}catch(c){q[a]=void 0}else q[a]=$c};function SA(a,b,c){R.call(this);this.V=a;this.na=c;this.j=b;Q(b,["hilite","select","canceldismiss","dismiss"],this.handleEvent,!1,this);this.s=null;this.i=[];this.l=-1;this.g=0;this.o=this.O=null;this.ta={}}u(SA,R);f=SA.prototype;f.Sj=!0;f.qk=!1;f.vd=function(){return this.j}; f.handleEvent=function(a){var b=this.V;if(a.target==this.j)switch(a.type){case "hilite":this.Fe(a.xf);break;case "select":var c=!1;if("number"===typeof a.xf){a=a.xf;var d=this.i[TA(this,a)];c=!!d&&b.fl&&b.fl(d);d&&!c&&this.l!=a&&this.Fe(a)}c||this.Vf();break;case "canceldismiss":UA(this);break;case "dismiss":VA(this)}};f.md=function(){return this.j.isVisible()}; function WA(a){for(var b=a.g+a.i.length-1,c=a.l,d=0;d=a.g&&cb||b>=a.i.length?-1:b}f.update=function(a){this.na.update(a)};function YA(a){var b=0,c=0;$A(a)&&(b=a.selectionStart,c=-1);return[b,c]}function $A(a){try{return"number"==typeof a.selectionStart}catch(b){return!1}};function aB(a,b,c,d){Cj.call(this);d=d||150;this.j=null!=c?c:!0;this.o=a||",;";this.qa=this.o.charAt(0);a=this.j?"[\\s"+this.o+"]+":"[\\s]+";this.na=new RegExp("^"+a+"|"+a+"$","g");this.ma=new RegExp("\\s*["+this.o+"]$");this.O=b||"";this.ta=this.j;this.Sa=0b.g)c--;else{b.qk&&c==b.g&&b.Fe(-1);break}if(b.Fe(c))break a}a.preventDefault();return!0}break;case 9:if(!this.g.md()||a.shiftKey)this.g.ye();else if(this.update(),this.g.Vf()&&this.ta)return a.preventDefault(),!0;break;case 13:if(this.g.md()){if(this.update(),this.g.Vf())return a.preventDefault(), a.stopPropagation(),!0}else this.g.ye();break;case 27:if(this.g.md())return this.g.ye(),a.preventDefault(),a.stopPropagation(),!0;break;case 229:if(!this.Af)return this.Af||(this.i.ka(this.Mb,"keyup",this.Vo),this.i.ka(this.Mb,"keypress",this.Uo),this.Af=!0),!0}return dB(this,a)};function dB(a,b){var c=a.j&&b.charCode&&-1!=a.o.indexOf(String.fromCharCode(b.charCode));c&&a.update();return c&&a.g.Vf()?(b.preventDefault(),!0):!1}f.zt=function(){return!1};f.xm=function(a){cB(this,a.target||null)}; function cB(a,b){mk(a.s);a.g&&UA(a.g);b!=a.Mb&&(a.Mb=b,a.Sa&&(a.Sa.start(),a.i.ka(a.Sa,"tick",a.zm)),a.ml=a.yb(),a.l.attach(a.Mb),a.i.ka(a.l,"key",a.ym),a.i.ka(a.Mb,"mousedown",a.Wo),A&&a.i.ka(a.Mb,"keypress",a.To))}f.Kq=function(){this.Mb&&(this.i.Ta(this.l,"key",this.ym),Gt(this.l),this.i.Ta(this.Mb,"keyup",this.zt),this.i.Ta(this.Mb,"mousedown",this.Wo),A&&this.i.Ta(this.Mb,"keypress",this.To),this.Af&&eB(this),this.Mb=null,this.Sa&&(this.Sa.stop(),this.i.Ta(this.Sa,"tick",this.zm)),this.g&&VA(this.g))}; f.zm=function(){this.update()};f.Tu=function(a){this.xm(a)};f.ym=function(a){this.V=a.keyCode;this.g&&this.Pc(a)};f.Uo=function(){this.Af&&229!=this.V&&eB(this)};f.Vo=function(a){this.Af&&(13==a.keyCode||77==a.keyCode&&a.ctrlKey)&&eB(this)};f.Wo=function(){};function eB(a){a.Af&&(a.Af=!1,a.i.Ta(a.Mb,"keypress",a.Uo),a.i.Ta(a.Mb,"keyup",a.Vo))}f.To=function(a){dB(this,a)}; f.update=function(a){if(this.Mb&&(a||this.yb()!=this.ml)){if(a||!this.Dl){a=YA(this.Mb)[0];var b=this.yb();a=ZA(this,b)[XA(this,b,a)];a=this.na?String(a).replace(this.na,""):a;this.g&&(this.g.O=this.Mb,b=this.g,this.yb(),b.s!=a&&(b.s=a,b.V.np(b.s,10,r(b.Bu,b)),UA(b)))}this.ml=this.yb()}this.Dl=!1};function XA(a,b,c){a=ZA(a,b);if(c==b.length)return a.length-1;for(var d=b=0,e=0;dd;d++)e=2*d,b.nodeValue=c[e],g=Xf(a.g,"B"),g.className=a.Ha,a.g.appendChild(g,a.g.g.createTextNode(String(c[e+1]))),g=b.parentNode.insertBefore(g, b.nextSibling),b.parentNode.insertBefore(a.g.g.createTextNode(""),g.nextSibling),b=g.nextSibling;b.nodeValue=c.slice(2).join("");a.wa=!0}else d&&kB(a,b,d)}}else for(b=b.firstChild;b;)d=b.nextSibling,kB(a,b,c),b=d}function lB(a){var b="";if(!a)return b;Array.isArray(a)&&(a=a.filter(function(c){return!Sb(Ye(c))}));Array.isArray(a)?b=0$a()-this.ta)&&this.dispatchEvent({type:"hilite",xf:this.i[a].id})};var nB=ka(["//suggestqueries.google.com/complete/search"]);function oB(a,b,c,d){this.qa=a;this.ma=null;this.Ha=c||null;this.Ba="boolean"===typeof b?b:!0;this.wa=d||0;b=new pB;c=new qB(this.Ha||a,this.wa);c.qa=!0;d=new aB(null,null,!1);SA.call(this,b,c,d);d.g=this;d.Jq(a);this.O=a;this.Sj=!1;this.qk=!0;Q(this,"update",r(this.Ga,this))}u(oB,SA);oB.prototype.Vf=function(){this.Ia=this.qa.value;oB.oa.Vf.call(this);return!1}; oB.prototype.Ga=function(a){a.xf&&(a=this.qa.form,this.ma||(this.ma=F("INPUT",{type:"hidden",name:"oq"}),a.appendChild(this.ma)),this.ma.value=this.Ia,this.Ba&&a.submit())};function pB(){}var NA=tj(nB);pB.prototype.np=function(a,b,c){a={client:"books",ds:"bo",q:a};c=r(this.g,this,c);this.i&&this.i.cancel();this.i=new MA;this.i.send(a,c)};pB.prototype.g=function(a,b){var c=Array.prototype.map.call(b[1],function(d){return d[0]});a(b[0],c)};function qB(a,b){fB.call(this);this.Ga=a;this.Ia=b||0} u(qB,fB);qB.prototype.Tj=function(){qB.oa.Tj.call(this);var a=0,b=D("gbfwa");b||(b=lf("gbqfwa"));b&&(a=b.offsetTop+b.offsetHeight-1);Array.prototype.forEach.call(hf("div","ac-renderer"),function(c){a&&K(c,"top",a+"px");K(c,"width",M(this.Ga).width-2+"px");K(c,"left",parseInt(c.style.left,10)+this.Ia+"px")},this)};function rB(a,b,c,d,e){X.call(this);this.O=a;this.s=b;this.qa=e;this.Bb="number"===typeof d?d:this.s?200:80;this.s||w(this.O,"slider-small");this.V=[];this.j=H("A");this.j.textContent=xm()?"\u203a":"\u2039";this.j.setAttribute("title","Scroll left");Nh(this.j,!0);this.O.appendChild(this.j);this.i=H("div");w(this.i,"slider-drawables");this.O.appendChild(this.i);this.o=H("A");this.o.textContent=xm()?"\u2039":"\u203a";this.o.setAttribute("title","Scroll right");Nh(this.o,!0);this.O.appendChild(this.o); this.g.ka(this.j,"click",this.wl.bind(this,-.75));this.g.ka(this.o,"click",this.wl.bind(this,.75));this.bi();this.g.ka(this.j,"click",this.wl.bind(this,-.75));this.resize();this.ma=0;this.na=8<=pc()&&!Sc("9")&&xm();c&&sB(this,c)}u(rB,X);function tB(a){var b=Math.ceil(1.25*uB(a));b=Math.min(a.V.length,a.ma+b);v(a.V.slice(a.ma,b),r(a.Hs,a));a.bi();a.ma=b;b>=a.V.length&&a.dispatchEvent("render")}f=rB.prototype; f.Hs=function(a){var b=F("DIV",{"class":"goog-inline-block slider-loading"});this.i.appendChild(b);var c=F("DIV",{"class":"goog-inline-block slider-drawable"});N(c,!1);this.i.appendChild(c);this.g.qf(a,"render",this.Js.bind(this,b,c));a.Oc(c)};f.Js=function(a,b){I(a);this.bi();N(b,!0)};function sB(a,b){b=b.map(function(c){return this.s?new LA(c,this.Bb):new IA(c,this.Bb,this.qa)},a);vB(a,b)}function vB(a,b){vb(a.V,b);tB(a)} f.wl=function(a){(xm()?0>a:0=this.i.scrollWidth-M(this.i).width;this.j.className=a?"slider-button slider-button-left slider-button-disabled":"slider-button slider-button-left";this.o.className=b?"slider-button slider-button-right slider-button-disabled":"slider-button slider-button-right"};f.resize=function(){this.bi()}; function uB(a){var b=a.s?110:50;return Math.ceil(M(a.i).width/b)};function wB(a,b,c){X.call(this);this.i=a;this.source=b?b:"gbs_bookshelf_slider";this.V=0;this.o=new ok;this.qa=this.o.getSize();this.ma="";this.ta="boolean"===typeof c?!c:!1;Wj(this.o,"resize",r(this.Dm,this))}n(wB,X);f=wB.prototype;f.Dm=function(){this.o.getSize().width>this.qa.width?this.nh():Wj(this.o,"resize",r(this.Dm,this))};f.render=function(a){this.s=a;this.j=this.Sk(a);this.g.ka(this.j,"render",r(this.nh,this))};f.Sk=function(){return new rB(this.s,!0,void 0,void 0,this.i.getId())}; f.nh=function(){this.j.resize();var a=Math.ceil(1.25*uB(this.j))+1,b=this.df(this.V,a);b&&(this.V+=a,Yl(b,r(this.Zt,this)))};f.Ag=ba(18);f.Zt=function(a){a=a.target;if(fm(a)){if((a=(new rA(hm(a))).g)&&a.length){var b=Np(a[a.length-1].ya.Ig);this.ma!=b&&(this.ma=b,vB(this.j,xB(this,a)));(a=Uf(this.ha()))&&Jh(a,1)}else 0==this.j.ma&&this.mp();this.dispatchEvent("success")}};function xB(a,b){return a.Dk(b).map(function(c){return this.j.s?new LA(c,200,this.i.getId()):new IA(c,80,this.i.getId())},a)} f.mp=function(){};f.ha=function(){return this.s};f.Dk=function(a){return this.source?a.map(function(b){b.ya.source=this.source;return b},this):a};function yB(a,b,c){$x.call(this,a,b,c);this.Qh(!0)}u(yB,$x);Wt("goog-checkbox-menuitem",function(){return new yB(null)});function zB(a){yB.call(this,Re(a.hb()),a.getId());this.i=a}n(zB,yB);zB.prototype.Nb=function(a){yB.prototype.Nb.call(this,a);if(this.i.te){var b=(a=1==this.i.te)?"Public bookshelf":"Private bookshelf";a=F("IMG",{src:"/googlebooks/images/sharing_"+(a?"public":"private")+".gif",alt:b,title:b,style:"padding-top:2px;padding-left:8px;float:"+(xm()?"left":"right")});a=F("DIV","goog-menuitem-accel",a,xf(String(this.i.ta)));Df(this.Ib(),a,1)}};function AB(a,b,c){c=void 0===c?!1:c;jy.call(this);this.j=a;this.o=b;this.V=c}n(AB,jy);f=AB.prototype;f.Qa=function(){jy.prototype.Qa.call(this);yA(this.o).forEach(this.ks,this)};f.Ka=function(){jy.prototype.Ka.call(this);this.ha().style.maxHeight="200px";this.ha().style.overflowY="scroll";var a=Z(this);a.ka(this.ha(),"mouseout",this.Mq);a.ka(this.ha(),"scroll",this.Nq)};f.Mq=function(a){Kf(this.ha(),a.relatedTarget)||this.Aa(!1)}; f.wt=function(a){var b=a.target,c=b.i,d=this.j.Ub();Qt(b,16)?lA(c,d):oA(c,d);this.dispatchEvent("g");a.stopPropagation()};f.Nq=function(a){a.stopPropagation()};f.ks=function(a){var b=!Sb(Ye(a.hb())),c=a.j&&(!a.qa||this.j.ma),d=!!mA(a,this.j.Ub());b&&(c||d)&&(b=new zB(a),b.Xf(d),b.lb(this.o.nl!=a.getId()||this.V),this.Za(b,!0),Z(this).ka(b,"action",this.wt))};function BB(a){var b=[];Fn(a,function(c){c instanceof zB&&Qt(c,16)&&b.push(c.i)});return b};function CB(a,b,c){Tz.call(this,null,null,c?5:0);this.i=new AB(a,b);this.i.he(this);Dj(this,this.i);this.o=new Image(16,16);this.o.src="/googlebooks/images/my_library_logo.png";this.Vb(64,!0)}n(CB,Tz);f=CB.prototype;f.Qa=function(){Tz.prototype.Qa.call(this);w(this.ha(),"add-to-library")}; function DB(a){a.i.Va||a.i.render();var b=BB(a.i);switch(b.length){case 0:var c="Add to my library";break;case 1:c="Added to "+b[0].hb();break;default:c="Added to "+b.length+" shelves"}0l.endOffset)l={startOffset:e.startOffset, Qg:e.Qg,endOffset:l.endOffset,lh:l.lh};e=gb(d)}d.push(l);e=l}k.i&&rb(g,h)}}function XB(a,b){this.startOffset=a;this.Qg=void 0;this.endOffset=a;this.lh=void 0;this.i=!1;this.g=b};function YB(a,b){var c=void 0;c=void 0===c?Infinity:c;b=new VB(b);c=void 0===c?Infinity:c;var d=void 0===d?[]:d;var e=" ",g,h=RB(a);for(g=0;g=c&&(d.length=c);return d};function ZB(a){var b=SB(a);a=$B();Array.prototype.forEach.call(a,function(c){aC(b,c)})}function $B(){var a=[],b=ub(kf("patent-text")),c=lf("patent-title");for(c&&b.push(c);c=b.pop();)3==c.nodeType?a.push(c):vb(b,c.childNodes);return a} function aC(a,b){var c=Tf(b);a=YB(c,a);if(a.length){var d=[],e=0;a.forEach(function(g){d.push(c.substring(e,g.startOffset),Vi("span",{"class":"patent-text-highlight"},c.substring(g.startOffset,g.endOffset)));e=g.endOffset});d.push(c.substring(e));a=H("span");O(a,Pi(d));Ef(a,b)}};function bC(){$x.call(this,"Turn off highlighting");var a=Ek("dq")||Ek("q");a&&ZB(a);this.Pb=!0}n(bC,$x);bC.prototype.Ka=function(){$x.prototype.Ka.call(this);Z(this).ka(this,"action",this.i)};bC.prototype.i=function(){this.Pb=!this.Pb;y(window.document.body,"patent-highlight-disabled",!this.Pb);cu(this,this.Pb?"Turn off highlighting":"Turn on highlighting")};function cC(){}u(cC,dy);Qa(cC);cC.prototype.Nc=function(a){return a.g.Oa("DIV",Kt(this,a).join(" ")+" goog-inline-block","\u00a0")};cC.prototype.Rb=function(a,b){b=cC.oa.Rb.call(this,a,b);w(b,"goog-inline-block");return b};cC.prototype.Ra=function(){return"goog-toolbar-separator"};function dC(){}u(dC,St);Qa(dC);f=dC.prototype;f.Nc=function(a){var b=Kt(this,a);b=a.g.Oa("DIV","goog-inline-block "+b.join(" "),this.Ei(a.Dc(),a.g));this.yf(b,a.hf());return b};f.lg=function(){return"button"};f.Fc=function(a){return a&&a.firstChild&&a.firstChild.firstChild};f.Ei=function(a,b){return b.Oa("DIV","goog-inline-block "+(this.Ra()+"-outer-box"),b.Oa("DIV","goog-inline-block "+(this.Ra()+"-inner-box"),a))};f.mi=function(a){return"DIV"==a.tagName}; f.Rb=function(a,b){eC(b,!0);eC(b,!1);a:{var c=a.g.Yn(b);var d=this.Ra()+"-outer-box";if(c&&Hb(c,d)&&(c=a.g.Yn(c),d=this.Ra()+"-inner-box",c&&Hb(c,d))){c=!0;break a}c=!1}c||b.appendChild(this.Ei(b.childNodes,a.g));Ib(b,["goog-inline-block",this.Ra()]);return dC.oa.Rb.call(this,a,b)};f.Ra=function(){return"goog-custom-button"}; function eC(a,b){if(a)for(var c=b?a.firstChild:a.lastChild,d;c&&c.parentNode==a;){d=b?c.nextSibling:c.previousSibling;if(3==c.nodeType){var e=c.nodeValue;if(""==Tb(e))a.removeChild(c);else{c.nodeValue=b?e.replace(/^[\s\xa0]+/,""):e.replace(/[\s\xa0]+$/,"");break}}else break;c=d}};function fC(){}u(fC,dC);Qa(fC);fC.prototype.Ra=function(){return"goog-toolbar-button"};function gC(){this.g="toolbar"}u(gC,hw);Qa(gC);gC.prototype.uh=function(a){return"HR"==a.tagName?new ey(cC.Jb()):gC.oa.uh.call(this,a)};gC.prototype.og=function(){return"goog-toolbar"};gC.prototype.Xn=function(){return"horizontal"};function hC(a){gC.call(this);this.i=a}u(hC,gC);var iC={};hC.prototype.og=function(){return this.i||"ocean-chrome-toolbar"};function jC(a){R.call(this);this.g=[];kC(this,a)}u(jC,R);f=jC.prototype;f.Wf=null;f.Uj=null;function lC(a,b){a.Uj=b}function kC(a,b){b&&(b.forEach(function(c){mC(this,c,!1)},a),vb(a.g,b))}f.Pa=function(a){this.Ye(a,this.g.length)};f.Ye=function(a,b){a&&(mC(this,a,!1),wb(this.g,b,0,a))};f.Ld=function(){return ub(this.g)};f.Ne=function(a){a!=this.Wf&&(mC(this,this.Wf,!1),this.Wf=a,mC(this,a,!0));this.dispatchEvent("select")};f.ua=function(){jC.oa.ua.call(this);delete this.g;this.Wf=null}; function mC(a,b,c){b&&("function"==typeof a.Uj?a.Uj(b,c):"function"==typeof b.Il&&b.Il(c))};function nC(a,b,c){mw.call(this,b,a||gC.Jb(),c)}u(nC,mw);nC.prototype.wi=function(a){nC.oa.wi.call(this,a);this.ee||rw(this)};function oC(a,b,c){lu.call(this,a,b||fC.Jb(),c)}u(oC,lu);Wt("goog-toolbar-button",function(){return new oC(null)});function pC(a,b){ey.call(this,a||cC.Jb(),b)}u(pC,ey);Wt("goog-toolbar-separator",function(){return new pC});function qC(a){a=a||"viewport-chrome-toolbar";a=iC[a]||(iC[a]=new hC(a));nC.call(this,a);this.wa={};this.l=new hk(this)}n(qC,nC);function rC(a,b,c,d){b.Vb(16,!0);if(c){var e=a.wa[c];e||(e=new jC,lC(e,function(g,h){g&&g.Xf(h)}),a.wa[c]=e);e.Pa(b);b.Gf&=-17;Q(b,"action",function(g){e.Ne(g.target)});d&&e.Ne(b)}else b.Vc(16,!!d)}function sC(a,b){a.wa.viewport&&a.wa.viewport.Ne(b)}qC.prototype.ua=function(){nC.prototype.ua.call(this);this.l.Ea();dd(this.wa,function(a){a.Ea()})};function tC(){}u(tC,St);Qa(tC);f=tC.prototype;f.Nc=function(a){var b=Kt(this,a);b=a.g.Oa("DIV","goog-inline-block "+b.join(" "),a.Dc());this.yf(b,a.hf());return b};f.lg=function(){return"button"};f.mi=function(a){return"DIV"==a.tagName};f.Rb=function(a,b){w(b,"goog-inline-block");return tC.oa.Rb.call(this,a,b)};f.yb=function(){return""};f.Ra=function(){return"goog-flat-button"};Wt("goog-flat-button",function(){return new lu(null,tC.Jb())});function uC(){}u(uC,dC);Qa(uC);uC.prototype.Fc=function(a){return uC.oa.Fc.call(this,a&&a.firstChild)};uC.prototype.Rb=function(a,b){var c=hf("*","goog-menu",b)[0];if(c){N(c,!1);df(c).body.appendChild(c);var d=new hy;En(d,c);a.Me(d)}return uC.oa.Rb.call(this,a,b)};uC.prototype.Ei=function(a,b){return uC.oa.Ei.call(this,[b.Oa("DIV","goog-inline-block "+(this.Ra()+"-caption"),a),b.Oa("DIV","goog-inline-block "+(this.Ra()+"-dropdown"),"\u00a0")],b)};uC.prototype.Ra=function(){return"goog-menu-button"};function vC(){this.g=[]}u(vC,Vx);Qa(vC);vC.prototype.Nc=function(a){var b=vC.oa.Nc.call(this,a);w(b,"goog-submenu");wC(this,a,b);return b};vC.prototype.Rb=function(a,b){b=vC.oa.Rb.call(this,a,b);w(b,"goog-submenu");wC(this,a,b);var c=hf("DIV","goog-menu",b);if(c.length){var d=new hy(a.g);c=c[0];N(c,!1);a.g.g.body.appendChild(c);En(d,c);a.Me(d,!0)}return b};vC.prototype.mg=function(a,b){var c=this.Fc(a),d=c&&c.lastChild;vC.oa.mg.call(this,a,b);d&&c.lastChild!=d&&Hb(d,"goog-submenu-arrow")&&c.appendChild(d)}; vC.prototype.ni=function(a){vC.oa.ni.call(this,a);var b=a.Ib(),c=jf(a.g.g,"SPAN","goog-submenu-arrow",b)[0];xC(a,c);c!=b.lastChild&&b.appendChild(c);a=a.ha();Y(a,"haspopup","true")};function wC(a,b,c){var d=b.g.Oa("SPAN");d.className="goog-submenu-arrow";xC(b,d);a.Fc(c).appendChild(d)}function xC(a,b){In(a)?(w(b,"goog-submenu-arrow-rtl"),J(b,"\u25c4")):(Jb(b,"goog-submenu-arrow-rtl"),J(b,"\u25ba"))};function yC(a,b,c,d){$x.call(this,a,b,c,d||vC.Jb())}u(yC,$x);f=yC.prototype;f.ah=null;f.Pl=null;f.rl=!1;f.nc=null;f.Hi=!1;f.Ka=function(){yC.oa.Ka.call(this);Z(this).ka(this.getParent(),"hide",this.Xo);this.nc&&zC(this,this.nc,!0)};f.jc=function(){Z(this).Ta(this.getParent(),"hide",this.Xo);this.nc&&(zC(this,this.nc,!1),this.Hi||(this.nc.jc(),I(this.nc.ha())));yC.oa.jc.call(this)};f.ua=function(){this.nc&&!this.Hi&&this.nc.Ea();this.nc=null;yC.oa.ua.call(this)}; f.Sc=function(a){yC.oa.Sc.call(this,a);a||(this.ah&&Tl(this.ah),this.ah=V(this.ze,218,this))};f.Ol=function(){var a=this.getParent();a&&qw(a)==this&&(AC(this,!0),BC(this))};f.ze=function(){var a=this.nc;a&&a.getParent()==this&&(AC(this,!1),Fn(a,function(b){"function"==typeof b.ze&&b.ze()}))};function CC(a){a.ah&&Tl(a.ah);a.Pl&&Tl(a.Pl)}f.Aa=function(a,b){(a=yC.oa.Aa.call(this,a,b))&&!this.isVisible()&&this.ze();return a}; function BC(a){Fn(a.getParent(),function(b){b!=this&&"function"==typeof b.ze&&(b.ze(),CC(b))},a)}f.Pc=function(a){var b=a.keyCode,c=In(this)?37:39,d=In(this)?39:37;if(!this.rl){if(!this.isEnabled()||b!=c&&13!=b&&b!=this.ul)return!1;this.Ol();rw(DC(this));CC(this)}else if(!DC(this).Pc(a))if(b==d)this.ze();else return!1;a.preventDefault();return!0};f.Nu=function(){this.nc.getParent()==this&&(CC(this),this.Gg().Sc(this),BC(this))};f.Xo=function(a){a.target==this.Gg()&&(this.ze(),CC(this))}; f.Ee=function(a){this.isEnabled()&&(CC(this),this.Pl=V(this.Ol,218,this));yC.oa.Ee.call(this,a)};f.vf=function(a){CC(this);if(Pt(this,8)||Pt(this,16))return yC.oa.vf.call(this,a);this.Ol();return!0}; function AC(a,b){!b&&DC(a)&&DC(a).Td(-1);a.dispatchEvent(Bn(64,b));var c=DC(a);b!=a.rl&&y(a.ha(),"goog-submenu-open",b);if(b!=c.isVisible()&&(b&&(c.Va||c.render(),c.Td(-1)),c.Aa(b),b)){c=new Hu(a.ha(),12,!1);var d=DC(a),e=d.ha();d.isVisible()||(e.style.visibility="hidden",N(e,!0));c.Mc(e,8);d.isVisible()||(N(e,!1),e.style.visibility="visible")}a.rl=b}function zC(a,b,c){var d=Z(a);(c?d.ka:d.Ta).call(d,b,"enter",a.Nu)}f.Pa=function(a){DC(this).Za(a,!0)};f.Ye=function(a,b){DC(this).tg(a,b,!0)}; f.Ld=function(){return DC(this).Ld()};function DC(a){a.nc?a.Hi&&a.nc.getParent()!=a&&a.nc.he(a):a.Me(new hy(a.g),!0);a.nc.ha()||a.nc.Qa();return a.nc}f.Me=function(a,b){var c=this.nc;a!=c&&(c&&(this.ze(),this.Va&&zC(this,c,!1)),this.nc=a,this.Hi=!b,a&&(a.he(this),a.Aa(!1,!0),iy(a,!1),vw(a,!1),this.Va&&zC(this,a,!0)))};f.Vd=function(a){return DC(this).Vd(a)};Wt("goog-submenu",function(){return new yC(null)});function EC(a,b,c,d,e){lu.call(this,a,c||uC.Jb(),d);this.Vb(64,!0);this.o=new ay(null,9);b&&this.Me(b);this.Sa=new Rl(500);this.Ya=e||fy.Jb()}u(EC,lu);f=EC.prototype;f.Ka=function(){EC.oa.Ka.call(this);FC(this,!0);this.i&&GC(this,this.i,!0);Y(this.va,"haspopup",!!this.i)};f.jc=function(){EC.oa.jc.call(this);FC(this,!1);if(this.i){this.Qb(!1);this.i.jc();GC(this,this.i,!1);var a=this.i.ha();a&&I(a)}};f.ua=function(){EC.oa.ua.call(this);this.i&&(this.i.Ea(),delete this.i);delete this.wb;this.Sa.Ea()}; f.Te=function(a){EC.oa.Te.call(this,a);this.isActive()&&(this.Qb(!this.md(),a),this.i&&(a=this.md(),this.i.ee=a))};f.de=function(a){EC.oa.de.call(this,a);this.i&&!this.isActive()&&(this.i.ee=!1)};f.vf=function(){eu(this,!1);return!0};f.gt=function(a){this.i&&this.i.isVisible()&&!this.Vd(a.target)&&this.Qb(!1)};f.Vd=function(a){return a&&Kf(this.ha(),a)||this.i&&this.i.Vd(a)||!1}; f.be=function(a){if(32==a.keyCode){if(a.preventDefault(),"keyup"!=a.type)return!0}else if("key"!=a.type)return!1;if(this.i&&this.i.isVisible()){var b=13==a.keyCode||32==a.keyCode,c=this.i.Pc(a);return c&&this.i&&this.i.Zb instanceof yC||27!=a.keyCode&&!b?c:(this.Qb(!1),!0)}return 40==a.keyCode||38==a.keyCode||32==a.keyCode||13==a.keyCode?(this.Qb(!0,a),!0):!1};f.Uk=function(){this.Qb(!1)};f.oi=function(a){this.Qb(!1);EC.oa.oi.call(this,a)}; function HC(a){a.i||a.Me(new hy(a.g,a.Ya));return a.i||null}f.Me=function(a){var b=this.i;a!=b&&(b&&(this.Qb(!1),this.Va&&GC(this,b,!1),delete this.i),this.Va&&Y(this.va,"haspopup",!!a),a&&(this.i=a,a.he(this),a.Aa(!1),iy(a,!1),this.Va&&GC(this,a,!0)));return b};f.Pa=function(a){HC(this).Za(a,!0)};f.Ye=function(a,b){HC(this).tg(a,b,!0)};f.Aa=function(a,b){(a=EC.oa.Aa.call(this,a,b))&&!this.isVisible()&&this.Qb(!1);return a};f.lb=function(a){EC.oa.lb.call(this,a);this.isEnabled()||this.Qb(!1)}; f.Qb=function(a,b){EC.oa.Qb.call(this,a);if(this.i&&Qt(this,64)==a){if(a)this.i.Va||this.i.render(),this.wa=yh(this.ha()),this.Ua=Ih(this.ha()),IC(this),!b||40!=b.keyCode&&38!=b.keyCode?this.i.Td(-1):rw(this.i);else{eu(this,!1);this.i.ee=!1;var c=this.ha();c&&(Y(c,"activedescendant",""),Y(c,"owns",""));null!=this.ta&&(this.ta=void 0,(c=this.i.ha())&&L(c,"",""))}this.i.Aa(a,!1,b);this.Id||(b=Z(this),c=a?b.ka:b.Ta,c.call(b,this.g.g,"mousedown",this.gt,!0),c.call(b,this.Sa,"tick",this.Sq),a?this.Sa.start(): this.Sa.stop())}this.i&&this.i.ha()&&this.i.va.removeAttribute("aria-hidden")};function IC(a){if(a.i.Va){var b=a.wb||a.ha(),c=a.o;a.o.g=b;b=a.i.ha();a.i.isVisible()||(b.style.visibility="hidden",N(b,!0));!a.ta&&a.o.s&&a.o.j&32&&(a.ta=M(b));c.Mc(b,c.i^1,null,a.ta);a.i.isVisible()||(N(b,!1),b.style.visibility="visible")}} f.Sq=function(){var a=Ih(this.ha()),b=yh(this.ha());var c=this.Ua;(c=!(c==a||c&&a&&c.left==a.left&&c.width==a.width&&c.top==a.top&&c.height==a.height))||(c=this.wa,c=!(c==b||c&&b&&c.top==b.top&&c.right==b.right&&c.bottom==b.bottom&&c.left==b.left));c&&(this.i.Va&&b&&this.wa&&b.tb()h;h++){for(var k=vf(d,"TR"),l=0;2>l;l++)k.appendChild(vf(d,"TD"));g.appendChild(k)}w(e,this.className+"-table-layout");d=e.rows[0].cells;g=RC(this);d[0].appendChild(g);g=SC(this);d[1].appendChild(g);g=F("DIV",this.className+"-link"); h=F("A",{target:"_blank"},"Help with devices & formats");k=new S(window.location.href);l=new S("/support/bin/answer.py?answer=1062949");k=U(k,"hl")?T(l,"hl",U(k,"hl")).toString():"/support/bin/answer.py?answer=1062949";$h(h,k);g.appendChild(h);d[1].appendChild(g);c.appendChild(e);e=this.o;if((d=e.Lc)&&!e.Tf&&e.Ya){var m;e.Hb&&Vm.jw&&(m="Read the book");m=F("P",this.className+"-additional",F("A",{href:d},m));c.appendChild(m)}if(e.Ha||e.Ia)if(d=e.Kb,g=e.Ua,d||g)m=F("P",this.className+"-additional", xf("Download ")),d&&(h=F("A",{href:d},"EPUB"),m.appendChild(h)),g&&(d&&m.appendChild(xf(", ")),d=F("A",{href:g},"PDF"),m.appendChild(d)),m.appendChild(xf(" - ")),e=e.Ub(),d=(new S(window.location.href)).l.split("/"),d=new S("/"+d[1]),Ux(d),T(d,"output","acs_help"),T(d,"id",e),e=F("A",{href:d.toString()},"read eReader instructions"),m.appendChild(e),c.appendChild(m);m=F("A",{target:"_blank"},"Learn more about books on Google Play");$h(m,"https://books.google.com/support/bin/topic.py?topic=28528"); this.j=F("DIV",this.className+"-footer",m);b=F("DIV",b,c,this.j);w(b,this.className+"-device-content");a.appendChild(b)}}; function RC(a){var b=F("UL",a.className+"-list"),c=F("H4",null,"Good for:");b.appendChild(c);var d=a.className+"-device-type";c=a.className+"-device-supported";var e=a.className+"-device-not-supported",g=a.className+"-device-unknown-supported",h=F("A",{"class":d,href:"/help/ebooks/webreader.html"},"Web"),k=F("A",{"class":d,href:"/help/ebooks/devices.html"},"Tablet / iPad"),l=F("A",{"class":d,href:"/help/ebooks/ereader.html"},"eReader"),m=F("A",{"class":d,href:"/help/ebooks/devices.html"},"Smartphone"), p=a.o.Ui,x=a.o.Vi,C=a.o.Tf;d=new hk(a);h=F("LI",null,h);C?d.ka(h,"mouseover",t(a.i,"The format of this book is currently unknown. We will update this when we receive the information from the publisher.")):(p||x)&&d.ka(h,"mouseover",t(a.i,"This eBook, like all Google eBooks, is formatted to be readable on the web."));d.ka(h,"mouseout",a.wa);b.appendChild(h);k=F("LI",null,k);C?d.ka(k,"mouseover",t(a.i,"The format of this book is currently unknown. We will update this when we receive the information from the publisher.")): (p||x)&&d.ka(k,"mouseover",t(a.i,"This eBook, like all Google eBooks, is formatted to be readable on tablet devices like Android tablets and the iPad."));d.ka(k,"mouseout",a.wa);b.appendChild(k);l=F("LI",null,l);d.ka(l,"mouseover",function(){C?this.i("The format of this book is currently unknown. We will update this when we receive the information from the publisher."):p?this.i("This Google eBook includes flowing text, so you can adjust the font to read comfortably on an eReader."):this.i("This Google eBook does not include flowing text, so you cannot adjust the font on an eReader.")}); d.ka(l,"mouseout",a.wa);b.appendChild(l);m=F("LI",null,m);d.ka(m,"mouseover",function(){C?this.i("The format of this book is currently unknown. We will update this when we receive the information from the publisher."):p&&x?this.i("This eBook is good for smartphones like Android and iPhone / iPod touch."):p?this.i("This Google eBook includes flowing text so you can adjust the font to read comfortably on the small screen of a smartphone."):this.i("This eBook may be hard to read on smartphones like Android and iPhone / iPod touch.")}); d.ka(m,"mouseout",a.wa);b.appendChild(m);C?(w(h,g),w(k,g),w(l,g),w(m,g)):p?(w(h,c),w(k,c),w(l,c),w(m,c)):(x?(w(h,c),w(k,c)):(w(h,e),w(k,e)),w(l,e),w(m,e));return b} function SC(a){var b=F("UL",a.className+"-list"),c=F("H4",null,"Features:");b.appendChild(c);var d=a.className+"-device-supported",e=a.className+"-device-not-supported",g=a.className+"-device-unknown-supported";c=F("A",{},"Flowing text");$h(c,"/support/bin/answer.py?answer=1062949");var h=F("A",{},"Scanned pages");$h(h,"/support/bin/answer.py?answer=1062949");var k=a.o.Ui,l=a.o.Vi,m=a.o.Tf;m?(c=F("LI",g,c),d=F("LI",g,h)):(c=F("LI",k?d:e,c),d=F("LI",l?d:e,h));e=new hk(a);e.ka(c,"mouseover",function(){m? this.i("The format of this book is currently unknown. We will update this when we receive the information from the publisher."):k?this.i("This eBook includes flowing text, so you can adjust the font size and style to read comfortably on any device."):this.i("This book does not include flowing text, so you cannot adjust the font. Instead, you see images of pages, with a fixed layout. This is good for larger screens, but not always ideal for eReaders and smartphones.")});e.ka(c,"mouseout",a.wa);e.ka(d, "mouseover",function(){m?this.i("The format of this book is currently unknown. We will update this when we receive the information from the publisher."):l?this.i("This eBook includes scanned pages, so pages appear as they would in a printed book."):this.i("This eBook does not include scanned pages, which retain the format of a printed book. Instead, the text can be adjusted and it flows to fit any screen.")});e.ka(d,"mouseout",a.wa);b.appendChild(c);b.appendChild(d);return b} QC.prototype.wa=function(){Af(this.j);var a=F("A",{target:"_blank"},"Learn more about books on Google Play");$h(a,"https://books.google.com/support/bin/topic.py?topic=28528");this.j.appendChild(a)};QC.prototype.i=function(a){Af(this.j);"string"===typeof a?this.j.appendChild(xf(a)):this.j.appendChild(a)};function TC(a,b){Tz.call(this,b,void 0,3);this.o=a}n(TC,Tz);TC.prototype.render=function(a){Tz.prototype.render.call(this,a);w(this.ha(),"gb-get-book")};TC.prototype.Ka=function(){Tz.prototype.Ka.call(this);var a=this.ha();this.i=new QC(a,this.o);this.i.render();a=D("menu_container");(a=lf("about_title",a))&&I(a)}; function UC(){var a=D("gb-buy-options-trigger");if(a&&a.parentNode&&a.parentNode.parentNode?!Hb(a.parentNode.parentNode,"jfk-button"):1){a=D("gb-buy-options-trigger");var b=D("buy");if(a&&b){Jb(b,"about_content");var c=F("SPAN","gb-buy-options-arrow","\u25bc");a.appendChild(c);w(b,"gb-buy-options-list");w(b,"unified-hovercard");ps(a,9,b,8);N(b,!1);Q(document,"mousedown",t(VC,a,b))}}}function VC(a,b,c){a=Kf(a,c.target);c=Kf(b,c.target);var d=Kh(b);a||c||!d?a&&(N(b,!d),d||Jh(b,1)):N(b,!1)};function WC(a,b,c,d,e,g){function h(l){if(l){l.tabIndex=0;Ym(l,k.ta);w(l,"goog-zippy-header");l&&k.ma.ka(l,"click",k.na);var m=k;l&&(m.O.attach(l),m.V.ka(m.O,"key",m.qa))}}R.call(this);this.s=e||bf();this.i=this.s.ha(a)||null;this.l=this.s.ha(d||null);this.o="function"===typeof b?b:null;this.ta=g||"tab";this.j=this.o||!b?null:this.s.ha(b);this.g=1==c;void 0!==c||this.o||(this.l?this.g=Kh(this.l):this.i&&(this.g=Hb(this.i,"goog-zippy-expanded")));this.V=new hk(this);this.O=new Ct;this.ma=new hk(this); var k=this;h(this.i);h(this.l);this.Le(this.g)}u(WC,R);WC.prototype.ua=function(){WC.oa.ua.call(this);Bj(this.V);Bj(this.O);Bj(this.ma)};WC.prototype.Le=function(a){this.j?N(this.j,a):a&&this.o&&(this.j=this.o());this.j&&w(this.j,"goog-zippy-content");this.l?(N(this.i,!a),N(this.l,a)):this.i&&(y(this.i,"goog-zippy-expanded",a),y(this.i,"goog-zippy-collapsed",!a),Y(this.i,"expanded",a));this.g=a;this.dispatchEvent(new XC("toggle",this,this.g))}; WC.prototype.qa=function(a){if(13==a.keyCode||32==a.keyCode)this.Le(!this.g),this.dispatchEvent(new XC("action",this,this.g,a)),a.preventDefault(),a.stopPropagation()};WC.prototype.na=function(a){this.Le(!this.g);this.dispatchEvent(new XC("action",this,this.g,a))};function XC(a,b){Fj.call(this,a,b)}u(XC,Fj);function YC(a,b,c,d){if(b.child_node&&0a.i){var c=a.g.scrollTop,d=a.g.scrollLeft;a.g.value=a.g.value.substring(0,a.i);b=a.i;a.g.scrollTop=c;a.g.scrollLeft=d}a.l&&J(a.l,String(1==a.o?b:a.i-b))}pD.prototype.ua=function(){pD.oa.ua.call(this);delete this.g;this.j.Ea();this.j=null};function rD(a,b,c,d,e){lD.call(this,a,b,null,!0);this.Ua=c;this.Hb=d;this.Ba=e}n(rD,lD); rD.prototype.Qa=function(){lD.prototype.Qa.call(this);this.o=sD(this,"Name","input");this.Ya=sD(this,"Description (optional)","textarea");var a=this.Ib(),b=F("DIV",{"class":"ccd-label"}),c=H("span");c.textContent="Visibility";b.appendChild(c);a.appendChild(b);a=F("SPAN",{className:"ccd-mode-indicator"});c=F("IMG",{src:"/googlebooks/images/sharing_public.gif",style:"vertical-align:-2px;padding:0 2px"});var d=H("span");d.textContent="Public";a.appendChild(c);a.appendChild(d); b.appendChild(a);c=F("SPAN",{className:"ccd-mode-indicator"});d=F("IMG",{src:"/googlebooks/images/sharing_private.gif",style:"vertical-align:-2px;"});var e=H("span");e.textContent="Private";c.appendChild(d);c.appendChild(e);b.appendChild(c);d=F("SPAN",{"class":"ccd-mode-link"});d.textContent="Make public";b.appendChild(d);Q(d,"click",r(this.Ha,this,!0));e=F("SPAN",{"class":"ccd-mode-link"});e.textContent="Make private";b.appendChild(e);Q(e,"click",r(this.Ha,this,!1));this.Hd=[a,e];this.Gd=[c,d];null!= this.Ba&&(nf(this.Ba,{"class":"ccd-mode-link"}),b.appendChild(this.Ba));this.Ha(!0);this.V=F("DIV",{"class":"ccd-error"});this.Ib().appendChild(this.V);this.Lb=F("P","ccd-footnote","Please note that the contents and title of Public bookshelves can be viewed and shared by others.");this.Ib().appendChild(this.Lb);this.i&&tD(this);Ip.IsZipitFolderCollectionEnabled||(b=this.j,a=jo(b,"ok"),K(a,"fontWeight","bold"),w(a,"gb-button"),w(jo(b,"cancel"),"gb-button"))}; function tD(a){a.o.value=Re(a.i.hb());a.o.disabled=a.i.O;a.Ya.value=Re(a.i.Cg());a.Ha(1==a.i.te);a.o.disabled&&K(a.o,"background","#f2f2f2")}function sD(a,b,c){var d=a.Ib();a=F("DIV",{"class":"gb-bookshelf-dialog-container"});d.appendChild(a);d=F("DIV",{"class":"ccd-label"});O(d,Aj(b));a.appendChild(d);b=F(c,{"class":"ccd-input"});"input"==c?(nf(b,{type:"text"}),b.setAttribute("maxlength",100)):"textarea"==c&&(nf(b,{rows:6,cols:50}),new pD(b,H("span"),500));a.appendChild(b);return b} rD.prototype.Ha=function(a){this.od=a;v(this.Hd,function(b){N(b,a)});v(this.Gd,function(b){N(b,!a)})}; rD.prototype.Na=function(a){var b=this.o.value;if("cancel"==a.key)return!0;if(Sb(b))return this.V.textContent="Please enter a title for this bookshelf.",!1;if(this.Hb&&!this.Hb(b))return this.V.textContent="Another bookshelf already has that title. Please enter a different title.",!1;a=this.i||new kA;a.vc=b;a.l=this.Ya.value;a.te=this.od?1:2;if(this.i){b=this.Ua;var c=new S(b.Np);T(c,"as_coll",a.getId());wA(c,a,r(b.s,b))}else b=this.Ua,wA(b.l,a,r(b.o,b,!0));return!0}; rD.prototype.ua=function(){delete this.Ua;delete this.Ba;delete this.i;delete this.V;delete this.Lb;delete this.o;delete this.Ya;delete this.Hb;lD.prototype.ua.call(this)};function uD(a,b,c,d,e){X.call(this);this.O=a;this.j=b;this.s=c;this.i=d;this.O&&(this.l=kb(this.O.childNodes,vD),this.i&&vb(this.l,kb(this.i.childNodes,vD)));this.o=e;V(r(this.Xq,this))}u(uD,X);f=uD.prototype;f.Xq=function(){this.j&&this.i&&this.g.ka(this.j,"click",this.Mp);this.s&&this.g.ka(this.s,"click",this.et);this.g.ka(this.o,"add",this.ls)}; function vD(a){var b=hf("SPAN","sidebar-collection-title",a)[0];b||(b=hf("SPAN","hp-collection-title",a)[0]);if(!b)return"";a=Tb(Ne(Rf(b)));return Tb(a.split("(")[0])}f.et=function(){var a=new rD("Create new bookshelf","Create bookshelf",this.o,r(this.vu,this));a.render();a.Aa(!0)};f.vu=function(a){var b=Tb(Ne(a)).toLowerCase();return!lb(this.l,function(c){return c.toLowerCase()==b})}; f.ls=function(a){a=a.shelf;var b=Tb(Ne(a.hb())),c=1==a.te;this.l.push(b);var d=new S("/books");Ux(d);T(d,"as_coll",a.getId());T(d,"source","gbs_lp_bookshelf_list");if(Ip.IsBooksUnifiedLeftNavEnabled){a=F("LI",{"class":"left-nav-shelf-item"});var e=F("A",{"class":"sidebar-link"});$h(e,d.toString());d=F("SPAN");w(d,"sidebar-collection-title");O(d,pj.g(b+" (0)"));e.appendChild(d);a.appendChild(e);c=D("hidden-my-library-expanded");Bf(a,c);kD(!0,"my-library")}else a=H("DIV"),e=F("A",{"class":"hp-bookshelf-link", style:"line-height:19px"}),$h(e,d.toString()),d=F("SPAN",{"class":"hp-collection-title"}),O(d,pj.g(b)),e.appendChild(d),a.appendChild(e),b=c?"Public bookshelf":"Private bookshelf",c=F("IMG",{"class":"hp-bookshelf-access",src:"/googlebooks/images/sharing_"+(c?"public":"private")+".gif",title:b,alt:b,width:14,height:14}),a.appendChild(c),c=F("DIV",{style:"clear:both"}),a.appendChild(c),Cf(a,D("csStart"))}; f.Mp=function(a){a.preventDefault();a=!Kh(this.i);N(this.i,a);a?(ps(this.j,9,this.i,8),200