!function(n,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(n=n||self).IntlMessageFormat=t()}(this,function(){"use strict";function t(n,t){this.locales=[];this.formats={number:{},date:{},time:{}};this.pluralNumberFormat=null;this.currentPlural=null;this.pluralStack=[];this.locales=n;this.formats=t}function a(n){this.id=n}function e(){return null!==f&&f.apply(this,arguments)||this}function v(n,t,i,r,u){this.id=n;this.offset=i;this.options=r;this.pluralRules=new Intl.PluralRules(u,{type:t?"ordinal":"cardinal"})}function o(n,t,i,r){var u=y.call(this,n)||this;return u.offset=t,u.numberFormat=i,u.string=r,u}function p(n,t){this.id=n;this.options=t}function i(n,t,r,u){this.message=n;this.expected=t;this.found=r;this.location=u;this.name="SyntaxError";"function"==typeof Error.captureStackTrace&&Error.captureStackTrace(this,i)}function b(){this.constructor=s}function et(n,t){return t?r({},n,{date:function(n,t){return t?r({},n||{},t||{},Object.keys(n).reduce(function(i,u){return i[u]=r({},n[u],t[u]||{}),i},{})):n}(n.date,t.date)}):n}function k(n,t){var i=c.call(this,n)||this;return i.variableId=t,i}function n(t,i,r){var f=this,u,e;if(void 0===i&&(i=n.defaultLocale),this.format=function(n){try{return function n(t,i){for(var r,u,o,f="",e=0,s=t;e<s.length;e++)if(r=s[e],"string"!=typeof r){if(u=r.id,!(i&&u in i))throw new ot("A value must be provided for: "+u,u);o=i[u];f+=r.options?n(r.getOption(o),i):r.format(o)}else f+=r;return f}(f.pattern,n)}catch(n){throw n.variableId?new Error("The intl string context variable '"+n.variableId+"' was not provided to the string '"+f.message+"'"):n;}},u="string"==typeof t?n.__parse(t):t,!u||"messageFormatPattern"!==u.type)throw new TypeError("A message must be provided as a String or AST.");e=et(n.formats,r);this._locale=function(n){"string"==typeof n&&(n=[n]);try{return Intl.NumberFormat.supportedLocalesOf(n,{localeMatcher:"lookup"})[0]}catch(n){return d.defaultLocale}}(i||[]);this.pattern=new g(i,e).compile(u);this.message=t}var u,l=(u=function(n,t){return(u=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])})(n,t)},function(n,t){function i(){this.constructor=n}u(n,t);n.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)}),g=(t.prototype.compile=function(n){return this.pluralStack=[],this.currentPlural=null,this.pluralNumberFormat=null,this.compileMessage(n)},t.prototype.compileMessage=function(n){var r=this,t,i;if(!n||"messageFormatPattern"!==n.type)throw new Error('Message AST is not of type: "messageFormatPattern"');if(t=n.elements,i=t.filter(function(n){return"messageTextElement"===n.type||"argumentElement"===n.type}).map(function(n){return"messageTextElement"===n.type?r.compileMessageText(n):r.compileArgument(n)}),i.length!==t.length)throw new Error("Message element does not have a valid type");return i},t.prototype.compileMessageText=function(n){return this.currentPlural&&/(^|[^\\])#/g.test(n.value)?(this.pluralNumberFormat||(this.pluralNumberFormat=new Intl.NumberFormat(this.locales)),new it(this.currentPlural.id,this.currentPlural.format.offset,this.pluralNumberFormat,n.value)):n.value.replace(/\\#/g,"#")},t.prototype.compileArgument=function(n){var t=n.format,i=n.id,u,r;if(!t)return new nt(i);u=this.formats;r=this.locales;switch(t.type){case"numberFormat":return{id:i,format:new Intl.NumberFormat(r,u.number[t.style]).format};case"dateFormat":return{id:i,format:new Intl.DateTimeFormat(r,u.date[t.style]).format};case"timeFormat":return{id:i,format:new Intl.DateTimeFormat(r,u.time[t.style]).format};case"pluralFormat":return new tt(i,t.ordinal,t.offset,this.compileOptions(n),r);case"selectFormat":return new rt(i,this.compileOptions(n));default:throw new Error("Message element does not have a valid format type");}},t.prototype.compileOptions=function(n){var r=this,t=n.format,u=t.options,i;return this.pluralStack.push(this.currentPlural),this.currentPlural="pluralFormat"===t.type?n:null,i=u.reduce(function(n,t){return n[t.selector]=r.compileMessage(t.value),n},{}),this.currentPlural=this.pluralStack.pop(),i},t),f,nt=(l(e,f=a),e.prototype.format=function(n){return n||"number"==typeof n?"string"==typeof n?n:String(n):""},e),tt=(v.prototype.getOption=function(n){var t=this.options;return t["="+n]||t[this.pluralRules.select(n-this.offset)]||t.other},v),y,it=(l(o,y=a),o.prototype.format=function(n){var t=this.numberFormat.format(n-this.offset);return this.string.replace(/(^|[^\\])#/g,"$1"+t).replace(/\\#/g,"#")},o),rt=(p.prototype.getOption=function(n){var t=this.options;return t[n]||t.other},p),s,w,ut=(s=i,w=Error,b.prototype=w.prototype,s.prototype=new b,i.buildMessage=function(n,t){function i(n){return n.charCodeAt(0).toString(16).toUpperCase()}function f(n){return n.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,function(n){return"\\x0"+i(n)}).replace(/[\x10-\x1F\x7F-\x9F]/g,function(n){return"\\x"+i(n)})}function r(n){return n.replace(/\\/g,"\\\\").replace(/\]/g,"\\]").replace(/\^/g,"\\^").replace(/-/g,"\\-").replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,function(n){return"\\x0"+i(n)}).replace(/[\x10-\x1F\x7F-\x9F]/g,function(n){return"\\x"+i(n)})}var u,e={literal:function(n){return'"'+f(n.text)+'"'},"class":function(n){for(var i="",t=0;t<n.parts.length;t++)i+=n.parts[t]instanceof Array?r(n.parts[t][0])+"-"+r(n.parts[t][1]):r(n.parts[t]);return"["+(n.inverted?"^":"")+i+"]"},any:function(){return"any character"},end:function(){return"end of input"},other:function(n){return n.description}};return"Expected "+function(n){for(var r,u,t=new Array(n.length),i=0;i<n.length;i++)t[i]=(u=n[i],e[u.type](u));if(t.sort(),0<t.length){for(r=i=1;i<t.length;i++)t[i-1]!==t[i]&&(t[r]=t[i],r++);t.length=r}switch(t.length){case 1:return t[0];case 2:return t[0]+" or "+t[1];default:return t.slice(0,-1).join(", ")+", or "+t[t.length-1]}}(n)+" but "+((u=t)?'"'+f(u)+'"':"end of input")+" found."},{SyntaxError:i,parse:function(n,t){function l(){return it(s,u)}function h(n,t){return{type:"literal",text:n,ignoreCase:t}}function a(n,t,i){return{type:"class",parts:n,inverted:t,ignoreCase:i}}function oi(n){return{type:"other",description:n}}function si(t){var r,i=p[t];if(i)return i;for(r=t-1;!p[r];)r--;for(i={line:(i=p[r]).line,column:i.column};r<t;)10===n.charCodeAt(r)?(i.line++,i.column=1):i.column++,r++;return p[t]=i}function it(n,t){var i=si(n),r=si(t);return{start:{offset:n,line:i.line,column:i.column},end:{offset:t,line:r.line,column:r.column}}}function e(n){u<c||(c<u&&(c=u,tt=[]),tt.push(n))}function hi(){return ci()}function ci(){var i,n,t;for(i=u,n=[],t=li();t!==r;)n.push(t),t=li();return n!==r&&(s=i,n=pi(n)),i=n}function li(){var t;return(t=function(){var i,t;return i=u,(t=function(){var f,t,i,e,h,c;if(t=[],i=f=u,(i=(e=o())!==r?(h=k())!==r&&(c=o())!==r?e=[e,h,c]:(u=i,r):(u=i,r))!==r)for(;i!==r;)t.push(i),i=u,e=o(),i=e!==r&&(h=k())!==r&&(c=o())!==r?e=[e,h,c]:(u=i,r);else t=r;return t!==r&&(s=f,t=wi(t)),(f=t)===r&&(f=u,t=rt(),f=t!==r?n.substring(f,u):t),f}())!==r&&(s=i,t=bi(t)),i=t}())===r&&(t=function(){var t,l,a,i,h,c,p;return t=u,123===n.charCodeAt(u)?(l=ct,u++):(l=r,0===f&&e(lt)),t=l!==r?o()!==r&&(a=function(){var i,o,t;if((i=ut())===r){if(i=u,o=[],st.test(n.charAt(u))?(t=n.charAt(u),u++):(t=r,0===f&&e(ht)),t!==r)for(;t!==r;)o.push(t),st.test(n.charAt(u))?(t=n.charAt(u),u++):(t=r,0===f&&e(ht));else o=r;i=o!==r?n.substring(i,u):o}return i}())!==r&&o()!==r?(i=u,44===n.charCodeAt(u)?(h=v,u++):(h=r,0===f&&e(y)),(i=h!==r&&(c=o())!==r&&(p=function(){var t;return(t=function(){var i,t,h,c,l,a;return i=u,n.substr(u,6)===yt?(t=yt,u+=6):(t=r,0===f&&e(di)),t===r&&(n.substr(u,4)===pt?(t=pt,u+=4):(t=r,0===f&&e(gi)),t===r&&(n.substr(u,4)===wt?(t=wt,u+=4):(t=r,0===f&&e(nr)))),i=t!==r?o()!==r?(h=u,44===n.charCodeAt(u)?(c=v,u++):(c=r,0===f&&e(y)),(h=c!==r&&(l=o())!==r&&(a=k())!==r?c=[c,l,a]:(u=h,r))===r&&(h=null),h!==r?(s=i,t=tr(t,h)):(u=i,r)):(u=i,r):(u=i,r)}())===r&&(t=function(){var t,i,h,c;return t=u,n.substr(u,6)===bt?(i=bt,u+=6):(i=r,0===f&&e(ir)),t=i!==r?o()!==r?(44===n.charCodeAt(u)?(h=v,u++):(h=r,0===f&&e(y)),h!==r&&o()!==r&&(c=ai())!==r?(s=t,i=rr(c)):(u=t,r)):(u=t,r):(u=t,r)}())===r&&(t=function(){var t,i,h,c;return t=u,n.substr(u,13)===kt?(i=kt,u+=13):(i=r,0===f&&e(ur)),t=i!==r?o()!==r?(44===n.charCodeAt(u)?(h=v,u++):(h=r,0===f&&e(y)),h!==r&&o()!==r&&(c=ai())!==r?(s=t,i=fr(c)):(u=t,r)):(u=t,r):(u=t,r)}())===r&&(t=function(){var t,h,l,i,c;if(t=u,n.substr(u,6)===dt?(h=dt,u+=6):(h=r,0===f&&e(er)),h!==r)if(o()!==r)if(44===n.charCodeAt(u)?(l=v,u++):(l=r,0===f&&e(y)),l!==r)if(o()!==r){if(i=[],(c=w())!==r)for(;c!==r;)i.push(c),c=w();else i=r;t=i!==r?(s=t,h=or(i)):(u=t,r)}else u=t,t=r;else u=t,t=r;else u=t,t=r;else u=t,t=r;return t}()),t}())!==r?h=[h,c,p]:(u=i,r))===r&&(i=null),i!==r&&(h=o())!==r?(125===n.charCodeAt(u)?(c=at,u++):(c=r,0===f&&e(vt)),c!==r?(s=t,l=ki(a,i)):(u=t,r)):(u=t,r)):(u=t,r):(u=t,r)}()),t}function w(){var t,c,i,l,h;return t=u,t=o()!==r&&(c=function(){var t,o,i,s;return o=t=u,61===n.charCodeAt(u)?(i=sr,u++):(i=r,0===f&&e(hr)),(t=(o=i!==r&&(s=ut())!==r?i=[i,s]:(u=o,r))!==r?n.substring(t,u):o)===r&&(t=k()),t}())!==r&&o()!==r?(123===n.charCodeAt(u)?(i=ct,u++):(i=r,0===f&&e(lt)),i!==r&&(l=ci())!==r?(125===n.charCodeAt(u)?(h=at,u++):(h=r,0===f&&e(vt)),h!==r?(s=t,cr(c,l)):(u=t,r)):(u=t,r)):(u=t,r)}function ai(){var t,i,h,c;if(t=u,(i=function(){var t,i,h;return t=u,n.substr(u,7)===gt?(i=gt,u+=7):(i=r,0===f&&e(lr)),t=i!==r&&o()!==r&&(h=ut())!==r?(s=t,i=ar(h)):(u=t,r)}())===r&&(i=null),i!==r)if(o()!==r){if(h=[],(c=w())!==r)for(;c!==r;)h.push(c),c=w();else h=r;t=h!==r?(s=t,i=vr(i,h)):(u=t,r)}else u=t,t=r;else u=t,t=r;return t}function rt(){var i,t;if(f++,i=[],ni.test(n.charAt(u))?(t=n.charAt(u),u++):(t=r,0===f&&e(ti)),t!==r)for(;t!==r;)i.push(t),ni.test(n.charAt(u))?(t=n.charAt(u),u++):(t=r,0===f&&e(ti));else i=r;return f--,i===r&&(t=r,0===f&&e(yr)),i}function o(){var t,i,o;for(f++,t=u,i=[],o=rt();o!==r;)i.push(o),o=rt();return t=i!==r?n.substring(t,u):i,f--,t===r&&(i=r,0===f&&e(pr)),t}function vi(){var t;return wr.test(n.charAt(u))?(t=n.charAt(u),u++):(t=r,0===f&&e(br)),t}function b(){var t;return kr.test(n.charAt(u))?(t=n.charAt(u),u++):(t=r,0===f&&e(dr)),t}function ut(){var l,t,i,o,h,c;if(l=u,48===n.charCodeAt(u)?(t=gr,u++):(t=r,0===f&&e(nu)),t===r){if(i=t=u,tu.test(n.charAt(u))?(o=n.charAt(u),u++):(o=r,0===f&&e(iu)),o!==r){for(h=[],c=vi();c!==r;)h.push(c),c=vi();i=h!==r?o=[o,h]:(u=i,r)}else u=i,i=r;t=i!==r?n.substring(t,u):i}return t!==r&&(s=l,t=ru(t)),l=t}function yi(){var i,t,o,h,c,l,a,v;return uu.test(n.charAt(u))?(i=n.charAt(u),u++):(i=r,0===f&&e(fu)),i===r&&(i=u,n.substr(u,2)===ii?(t=ii,u+=2):(t=r,0===f&&e(eu)),t!==r&&(s=i,t=ou()),(i=t)===r&&(i=u,n.substr(u,2)===ri?(t=ri,u+=2):(t=r,0===f&&e(su)),t!==r&&(s=i,t=hu()),(i=t)===r&&(i=u,n.substr(u,2)===ui?(t=ui,u+=2):(t=r,0===f&&e(cu)),t!==r&&(s=i,t=lu()),(i=t)===r&&(i=u,n.substr(u,2)===fi?(t=fi,u+=2):(t=r,0===f&&e(au)),t!==r&&(s=i,t=vu()),(i=t)===r&&(i=u,n.substr(u,2)===ei?(t=ei,u+=2):(t=r,0===f&&e(yu)),i=t!==r?(h=o=u,(o=(h=(c=b())!==r&&(l=b())!==r&&(a=b())!==r&&(v=b())!==r?c=[c,l,a,v]:(u=h,r))!==r?n.substring(o,u):h)!==r?(s=i,t=pu(o)):(u=i,r)):(u=i,r)))))),i}function k(){var i,n,t;if(i=u,n=[],(t=yi())!==r)for(;t!==r;)n.push(t),t=yi();else n=r;return n!==r&&(s=i,n=wu(n)),i=n}t=void 0!==t?t:{};var d,g,nt,ft,r={},et={start:hi},ot=hi,pi=function(n){return{type:"messageFormatPattern",elements:n,location:l()}},wi=function(n){return n.reduce(function(n,t){return n.concat(t)},[]).join("")},bi=function(n){return{type:"messageTextElement",value:n,location:l()}},st=/^[^ \t\n\r,.+={}#]/,ht=a([" ","\t","\n","\r",",",".","+","=","{","}","#"],!0,!1),ct="{",lt=h("{",!1),v=",",y=h(",",!1),at="}",vt=h("}",!1),ki=function(n,t){return{type:"argumentElement",id:n,format:t&&t[2],location:l()}},yt="number",di=h("number",!1),pt="date",gi=h("date",!1),wt="time",nr=h("time",!1),tr=function(n,t){return{type:n+"Format",style:t&&t[2],location:l()}},bt="plural",ir=h("plural",!1),rr=function(n){return{type:n.type,ordinal:!1,offset:n.offset||0,options:n.options,location:l()}},kt="selectordinal",ur=h("selectordinal",!1),fr=function(n){return{type:n.type,ordinal:!0,offset:n.offset||0,options:n.options,location:l()}},dt="select",er=h("select",!1),or=function(n){return{type:"selectFormat",options:n,location:l()}},sr="=",hr=h("=",!1),cr=function(n,t){return{type:"optionalFormatPattern",selector:n,value:t,location:l()}},gt="offset:",lr=h("offset:",!1),ar=function(n){return n},vr=function(n,t){return{type:"pluralFormat",offset:n,options:t,location:l()}},yr=oi("whitespace"),ni=/^[ \t\n\r]/,ti=a([" ","\t","\n","\r"],!1,!1),pr=oi("optionalWhitespace"),wr=/^[0-9]/,br=a([["0","9"]],!1,!1),kr=/^[0-9a-f]/i,dr=a([["0","9"],["a","f"]],!1,!0),gr="0",nu=h("0",!1),tu=/^[1-9]/,iu=a([["1","9"]],!1,!1),ru=function(n){return parseInt(n,10)},uu=/^[^{}\\\0-\x1F\x7F \t\n\r]/,fu=a(["{","}","\\",["\0","\x1f"],""," ","\t","\n","\r"],!0,!1),ii="\\\\",eu=h("\\\\",!1),ou=function(){return"\\"},ri="\\#",su=h("\\#",!1),hu=function(){return"\\#"},ui="\\{",cu=h("\\{",!1),lu=function(){return"{"},fi="\\}",au=h("\\}",!1),vu=function(){return"}"},ei="\\u",yu=h("\\u",!1),pu=function(n){return String.fromCharCode(parseInt(n,16))},wu=function(n){return n.join("")},u=0,s=0,p=[{line:1,column:1}],c=0,tt=[],f=0;if("startRule"in t){if(!(t.startRule in et))throw new Error("Can't start parsing from rule \""+t.startRule+'".');ot=et[t.startRule]}if((d=ot())!==r&&u===n.length)return d;throw d!==r&&u<n.length&&e({type:"end"}),g=tt,nt=c<n.length?n.charAt(c):null,ft=c<n.length?it(c,c+1):it(c,c),new i(i.buildMessage(g,nt),g,nt,ft);}}),h,ft=(h=function(n,t){return(h=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])})(n,t)},function(n,t){function i(){this.constructor=n}h(n,t);n.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)}),r=function(){return(r=Object.assign||function(n){for(var r,i,t=1,u=arguments.length;t<u;t++)for(i in r=arguments[t])Object.prototype.hasOwnProperty.call(r,i)&&(n[i]=r[i]);return n}).apply(this,arguments)},c,ot=(c=Error,ft(k,c),k),d=(n.prototype.resolvedOptions=function(){return{locale:this._locale}},n.defaultLocale="en",n.formats={number:{currency:{style:"currency"},percent:{style:"percent"}},date:{short:{month:"numeric",day:"numeric",year:"2-digit"},medium:{month:"short",day:"numeric",year:"numeric"},long:{month:"long",day:"numeric",year:"numeric"},full:{weekday:"long",month:"long",day:"numeric",year:"numeric"}},time:{short:{hour:"numeric",minute:"numeric"},medium:{hour:"numeric",minute:"numeric",second:"numeric"},long:{hour:"numeric",minute:"numeric",second:"numeric",timeZoneName:"short"},full:{hour:"numeric",minute:"numeric",second:"numeric",timeZoneName:"short"}}},n.__parse=ut.parse,n);return d});var copyObj={ebook:{en:"ebook"},audiobook:{en:"audiobook"},video:{en:"video"},magazine:{en:"magazine"},music:{en:"music"},audio:{en:"audio"},siteTitle:{en:"OverDrive: Free ebooks, audiobooks & movies from your library."},siteDescription:{en:"Thousands of libraries & schools offer free digital content thru OverDrive's suite of products/services. Learn more about Libby, Kanopy, Sora & Teaching Books."},detailsPage:{seriesLabel:{en:"Series"},IsbnLabel:{en:"ISBN"},formatLabel:{en:"Format"},authorLabel:{en:"Author"},narratorLabel:{en:"Narrator"},publisherLabel:{en:"Publisher"},releaseLabel:{en:"Release"},ratingLabel:{en:"Rating"},shareLabel:{en:"Share"},subjectsLabel:{en:"Subjects"},editionLabel:{en:"Edition"},byAuthor:{en:"By {authorLink}"},sampleListen:{en:"Listen to a Sample"},sampleRead:{en:"Read a Sample"},sampleWatch:{en:"Watch a Sample"},addtoFavorites:{en:"Add Book To Favorites"},availableToBuy:{en:"Available to buy"},readMore:{en:"...read more"},alsoAvailableAs:{ebook:{en:"Also available as an <strong>ebook<\/strong>"},audiobook:{en:"Also available as an <strong>audiobook<\/strong>"},video:{en:"Also available as a <strong>video<\/strong>"}},savedLibraries:{savedLibrariesHeader:{en:"Your saved libraries"},addAnotherLibrary:{en:"Add another library"},viewSite:{en:"View site"},findItInLibby:{en:"Find it in Libby"},viewSchoolSite:{en:"Find it in Sora"},noLibrariesHaveThisBook:{en:"We're sorry! It doesn't look like any of your saved libraries have this book yet."},contactLibrary:{en:"Contact your library to request a digital copy of this book."},findInAll:{en:"Find in other nearby digital libraries."}},librarySearch:{searchHeader:{en:"Search for a digital library with this title"},searchLabel:{en:"Search by city, ZIP code, or library name"},locationDetection:{en:"Learn more about precise location detection"},results:{en:"Title found at these libraries:"},availabilityLabel:{en:"availability"},locationLabel:{en:"Location"},viewMore:{en:"View more libraries..."}},series:{seriesHeader:{en:"{seriesName} Series"},booksLabel:{en:"Show books matching language"},numberInSeriesLabel:{en:"Book {num} in the {seriesName} series, {title}"},titleInSeriesLabel:{en:"Book in the {seriesName} series, {title}"}},viewFullscreen:{en:"View sample in fullscreen"},readLess:{en:"read less"}},selectLibraryPage:{loginToLibrary:{en:"Log in to library with {systemName}"}},findInLibrariesPage:{backToTitleLink:{en:"Back to {titleLink}"},findDigitalLibrary:{en:"Find a Digital Library"},nearYou:{en:"with <span>{title}<\/span> near you."},search:{en:"Search"},showing:{en:"Showing :"},publicLibraries:{en:"Public Libraries"},schools:{en:"K-12 Schools"},libraryNameLabel:{en:"Library Name"},distanceLabel:{en:"Distance"},showAll:{en:"Show All"},loading:{en:"Loading..."},libraryDistance:{en:"{distance} mi"},getInstantCard:{en:"Get an Instant Card"},needLibraryCard:{en:"Need a library card?"},findInOtherLibraries:{en:"Find in other nearby digital libraries."},noLibrariesFound:{en:"Sorry, no libraries found."},pleaseTryAgain:{en:"Please try searching again. If you still can’t find a library, there are a couple possible reasons:"},doesNotHaveTitle:{en:"The library doesn’t have this title in their digital collection."},doesNotOfferTitle:{en:"The library doesn’t offer digital titles through OverDrive."},showingTitles:{en:"Showing 1-{num} of {total} entries"}},masthead:{skipToContent:{en:"Skip to content"},findALibrary:{en:"Find a Library"},about:{en:"About"},browseCollections:{en:"Browse Collections"},apps:{en:"Apps"},accountSettings:{en:"Account Settings"},savedLibraries:{en:"Saved Libraries"},signOut:{en:"Sign Out"},signIn:{en:"Sign In"},odTagLine:{en:"Borrow eBooks, audiobooks, and videos from thousands of public libraries worldwide."},searchPlaceholder:{en:"Search by title or author"}},librariesPage:{findALibrary:{en:"Find a library or school that uses OverDrive"},go:{en:"Go"},enterQuery:{en:"Enter library name, location, or postal code: "},seeAllBranches:{en:"See All Branches"},seeDigitalCollection:{en:"See Digital Collection"},seeLess:{en:"See Less"},radiusLabel:{en:"Radius:"},numMiles:{en:"{num} miles"},publicLibrary:{en:"Public Library"},school:{en:"K-12 School"},sortingLabel:{en:"Sort By:"},distance:{en:"Distance"},alpha:{en:"Alphabetically"},showMoreResults:{en:"Show more results"},noLibrariesHeader:{en:"We're sorry! No libraries or schools found."},checkSpelling:{en:"Check the spelling, try searching by postal code, or try another location."},searchInApp:{en:'Try downloading the <a class="no-libraries-link" href="https://www.overdrive.com/apps/libby" target="_blank" rel="noreferrer">Libby app<\/a> (for libraries) or <a class="no-libraries-link" href="https://www.overdrive.com/apps/sora/" target="_blank" rel="noreferrer">Sora app<\/a> (for schools) and searching in the app.'},stillCantfindLibrary:{en:"If you still can't find your library or school, they may not offer digital titles through OverDrive yet."},askYourLibrary:{en:"Ask a library or school staff member to visit {link} to learn about building a digital book collection with OverDrive."},ourCompanyWebsite:{en:"our company website"},lookingForKanopy:{en:'Looking for a library that offers Kanopy? <a class="no-libraries-link" href="https://www.kanopy.com/en/signup/find/publiclibrary" target="_blank" rel="noreferrer">Use the library finder on the Kanopy site<\/a>.'}},aboutPage:{pageTitle:{en:"About"},pageHeader:{en:"New to OverDrive?"},tagline:{en:"Learn how to read digital books from your library or school for free."},getStartedHeader:{en:"How to get started"},stepOne:{en:"Step 1: Install one of our apps"},forPublicLibraries:{en:"(for public libraries)"},libbyDescription:{en:"The quickest & easiest way to borrow & read digital books from your public library."},libbyAppAltText:{en:"Libby app on iphone and ipad"},forSchools:{en:"(for schools)"},soraDescription:{en:"Borrow and read digital books from your school."},soraAppAltText:{en:"Sora app on iphone and ipad"},overdriveAppDescription:{en:"Our original app for borrowing from libraries and schools. Recommended for devices that don't work with Libby or Sora."},overdriveAppAltText:{en:"OverDrive app on iphone and ipad"},stepTwo:{en:"Step 2: Find your library or school"},stepTwoLibrary:{en:"Step 2: Find your library"},stepTwoSchool:{en:"Step 2: Find your school"},findLibraryLibby:{en:"Find your library in the app and sign in with your library card. Some libraries will let you sign up for an instant card using your phone number."},findLibrarySora:{en:"Find your school (or enter your school's setup code) and sign in with your school credentials."},findLibraryOverdriveApp:{en:"Sign in to the app, find your library or school, and sign in with your library card or school credentials."},stepThree:{en:"Step 3: Browse, borrow, and read"},borrowAndRead:{en:"Borrow and read books instantly or place a hold on a book to join the waitlist."},helpHeading:{en:"Need more help?"},helpTagline:{en:"Visit our help sites for getting started guides, how-to steps, and troubleshooting tips."},libbyHelp:{en:"Libby Help"},libbyGettingStarted:{en:"Getting started with Libby"},soraHelp:{en:"Sora Help"},soraGettingStarted:{en:"Getting started with Sora"},overdriveHelp:{en:"OverDrive Help"},overdriveGettingStarted:{en:"Getting started with the OverDrive app"},aboutOverDriveHeading:{en:"About OverDrive"},aboutOverDriveDescription:{en:"We are a global distributor of digital ebooks, audiobooks, & magazines and develop the software and platforms for libraries and schools to provide access to patrons and students. With our apps, readers can access digital books for free (in many formats) anytime, anywhere. Millions of readers enjoy using our apps daily, and we’re trusted by more than 43,000 public libraries, K-12 schools, colleges and universities, and corporations in 75 countries worldwide."},learnMore:{en:"Learn more about our company"},lookingToJoin:{en:"Looking to join the OverDrive Team?"},openPositions:{en:"See our open positions"},partnerHeading:{en:"Looking to partner with OverDrive?"},partnerTagline:{en:"Find out how libraries, schools, colleges, corporations, and publishers are working with us to increase circulations and sales."},getToKnowOverDrive:{en:"Get to know OverDrive"},isOverDriveFree:{en:"Is OverDrive free to use?"},isOverDriveFreeAnswer:{en:"Yes, it’s completely free. It’s free to install our apps, and there are no subscription costs, no in-app purchases, and no late fees. All you need is a valid library card from your library or credentials from your school."},doesMyLibraryUseOverDrive:{en:"Does my library/school use OverDrive?"},doesMyLibraryUseOverDriveAnswer:{en:'You can search for your library or school <a href="/libraries" target="_blank" rel="noreferrer" data-ga-action="exit" data-ga-location="FAQs">here<\/a> to see if they offer digital content from us.'},whichBooksAreAvailable:{en:"What books are available through OverDrive?"},whichBooksAreAvailableAnswer:{en:"From the classics to NYT bestsellers, your library or school chooses which digital titles they’d like to provide. This means they can tailor their content directly to your community’s needs. OverDrive is only for digital titles. It doesn’t include any physical materials from your library or school."}},explorePage:{headerTitle:{en:"Explore our collection"},featuredCollection:{en:"Featured Collections"},headerSubtitle:{en:"There's something for everybody"},seeAllTitles:{en:"See all {num} titles"},newCollections:{en:"New Collections"},biography:{en:"Biography"},business:{en:"Business"},children:{en:"Children"},fantasy:{en:"Fantasy"},fiction:{en:"Fiction"},history:{en:"History"},literature:{en:"Literature"},mystery:{en:"Mystery"},nonfiction:{en:"Nonfiction"},religion:{en:"Religion"},romance:{en:"Romance"},scienceFiction:{en:"Science Fiction"},suspense:{en:"Suspense"},technology:{en:"Technology"},thriller:{en:"Thriller"},travel:{en:"Travel"},youngAdult:{en:"Young Adult"},seeAllSubjects:{en:"See main subjects"},viewAllTitles:{en:"View all titles"},exploreOverDriveCollection:{en:"Explore OverDrive's collection archive"}},collectionsPage:{pageNumber:{en:"Page 1 of 1"},titles:{en:"Titles:"},sortMostPopular:{en:"Most to least popular"},sortLeastPopular:{en:"Least to most popular"},sortAToZ:{en:"Title: A - Z"},sortZToA:{en:"Title: Z - A"},sortNewest:{en:"Newest to oldest"},sortOldest:{en:"Oldest to newest"},sortHighRating:{en:"Rating: High to low"},sortLowRating:{en:"Rating: Low to high"},subject:{en:"Subject"},creator:{en:"Creator"},apply:{en:"Apply"},clear:{en:"Clear all"},reset:{en:"Reset all"},filters:{en:"Filters"},results:{en:"{num} Results"},back:{en:"Back"},save:{en:"Save"},noResults:{en:"There are no results for this combination of filters."},showResults:{en:"Show results"},sort:{en:"Sort"},readMore:{en:"Read more"}},ariaLabels:{searchBySeries:{en:"Search by series, {seriesName}"},searchBySubject:{en:"Search by subject, {subjectName}"},searchByAuthor:{en:"Search by author, {authorName}"},searchByNarrator:{en:"Search by narrator, {narratorName}"},searchByPublisher:{en:"Search by publisher, {publisherName}"},showContent:{en:"Show content"},home:{en:"Home"},openNavigation:{en:"Open navigation"},closeNavigation:{en:"Close navigation"},openAccountMenu:{en:"Open account menu"},backToTitle:{en:"Go back to {title}"},libraryLink:{en:"Find {title} in {app} at {libraryName} ({consortiumName})"},getLibraryCard:{en:"Get a library card from {libraryName}"},getInstantCard:{en:"Get an instant digital card from {libraryName}"},showAllLibraries:{en:"Show all libraries"},publicLibraryFilter:{en:"Public library filter"},schoolLibraryFilter:{en:"School library filter"},starRatingLabel:{en:"{title} has a rating of {num,plural,one{# star}other{# stars}}"},locationButton:{en:"Use my location"},filterButton:{en:"Filter options"},searchButton:{en:"Search"}},altText:{shareOnFacebook:{en:"Share on Facebook"},shareOnPinterest:{en:"Share on Pinterest"},amazonLogo:{en:"Amazon logo"},ibooksLogo:{en:"iBooks logo"},koboLogo:{en:"Kobo logo"},soraLogo:{en:"Sora logo"},overdriveLogo:{en:"OverDrive logo"},filledStarRating:{en:"Filled star rating"},emptyStarRating:{en:"Empty star rating"},halfStarRating:{en:"Half star rating"},libbyIcon:{en:"Libby app icon"},soraIcon:{en:"Sora app icon"},odappIcon:{en:"OverDrive app icon"},appStoreButton:{en:"App Store button"},playStoreButton:{en:"Google Play Store button"}},appsPage:{heading:{en:"Our award-winning apps for reading ebooks and audiobooks for free"},headingODAppSunset:{en:"Enjoy free ebooks, audiobooks, and streaming videos with these apps by OverDrive"},overDriveAppDescription:{en:"Our original app for borrowing digital content from libraries and schools."},kanopyAppDescription:{en:"The leading provider of films for libraries that inspire, entertain, and educate."},libbyAppDescription:{en:"Explore your public library’s digital collection and start reading with only a few taps."},soraAppDescription:{en:"Discover and read ebooks and audiobooks offered by your school, whether it’s for class or for fun."},pcMagazineLogo:{en:"PC Magazine logo"},timeMagazineLogo:{en:"Time Magazine logo"},googlePlayLogo:{en:"Google Play logo"},aaslLogo:{en:"AASL Logo"},smartMediaIcon:{en:"Smart Media icon"},bestSoftware:{en:"Best Software {year}"},bestApps:{en:"Best Apps {year}"},crystalAppleRecipient:{en:"{year} AASL Crystal Apple Recipient"},smartMediaAward:{en:"{year} Smart Media Award"},testimonialHeader:{en:"What people are saying…"},testimonial1:{en:"It is useful if you want to read or just listen. And it has many categories to choose from and so many different books. I highly recommend this app. Also, it is ad free!"},testimonial1Author:{en:"Davis Family"},testimonial2:{en:"Amazing, i just spend days reading ,its ssoo cool 😍🤗🤩😘🤩"},testimonial2Author:{en:"Narasimha Vaka"},testimonial3:{en:"Love love love the app. Have yet to have an issue. No way I'd survive long trips without it!"},testimonial3Author:{en:"Palacios Family"},testimonial4:{en:"I absolutely love Libby. It's been amazing using it while driving, at the gym or other places where actually holding the book isn't ideal"},testimonial4Author:{en:"G. Wilson"},testimonial5:{en:"I love being able to borrow books rather than buying them! Good selection"},testimonial5Author:{en:"Linda Smith"},testimonial6:{en:"Love using this app for audio books from the library."},testimonial6Author:{en:"Trudy Conway"},previousSlide:{en:"Previous slide"},nextSlide:{en:"Next slide"}},close:{en:"Close"},embed:{en:"Embed"},search:{en:"Search"},searchTitles:{en:"Search Titles"},series:{en:"series"},title:{en:"title"},creator:{en:"author"},privacyPolicy:{en:"Privacy Policy"},cookieSettings:{cookieSettingsLabel:{en:"Cookie settings"},cookieSettingsHeader:{en:"Cookie Settings"},confirm:{en:"Confirm Cookie Settings"},description:{en:"OverDrive uses cookies and similar technologies to improve your experience, monitor our performance, and understand overall usage trends for OverDrive services (including OverDrive websites and apps). We use this information to create a better experience for all users. Please review the types of cookies we use below."},learnMoreAboutCookies:{en:'To learn more about cookies, please see our <a target="_blank" rel="noreferrer" href="https://company.cdn.overdrive.com/policies/cookie-policy.htm">cookie policy<\/a>.'},learnMoreAboutPrivacy:{en:'To learn more about how we use and protect your data, please see our <a target="_blank" rel="noreferrer" href="https://company.cdn.overdrive.com/policies/privacy-policy.htm">privacy policy<\/a>.'},requiredCookiesLabel:{en:"Required Cookies"},requiredCookiesDescription:{en:"These cookies allow you to explore OverDrive services and use our core features. Without these cookies, we can't provide services to you."},performanceCookiesLabel:{en:"Performance and reliability cookies"},performanceCookiesDescription:{en:"These cookies allow us to monitor OverDrive's performance and reliability. They alert us when OverDrive services are not working as expected. Without these cookies, we won't know if you have any performance-related issues that we may be able to address."},researchCookiesLabel:{en:"Research and analytics cookies"},researchCookiesDescription:{en:"These cookies help us understand user behavior within our services. For example, they let us know which features and sections are most popular. This information helps us design a better experience for all users."},remarketingCookiesLabel:{en:"Remarketing and targeting cookies (<em>OverDrive websites only<\/em>)"},remarketingCookiesDescription:{en:'These cookies make OverDrive services, their content, and advertisements for OverDrive products or services more relevant to your interests, limit the number of ads, and measure the effectiveness of ads. These cookies are <strong>not<\/strong> in products such as Libby, Sora, and the Kanopy app or in libraries\' OverDrive collection websites. For more information about cookies, visit the <a href="https://consumer.ftc.gov/articles/how-websites-and-apps-collect-and-use-your-information" target="_blank" rel="noreferrer">U.S. Federal Trade Commission (FTC)<\/a>, <a href="https://allaboutcookies.org" target="_blank" rel="noreferrer">All About Cookies<\/a>, and <a href="https://youronlinechoices.eu/" target="_blank" rel="noreferrer">Your Online Choices (EU)<\/a>.'},remarketingAdditionalInfo:{en:"<em>*Opting out of research cookies will automatically opt you out of remarketing cookies and vice versa.<\/em>"}},cookieBanner:{notice:{en:'OverDrive uses cookies to enhance our website, learn more about our users, and match your experience to your preferences. This may include the use of third-party cookies. <a href="/policies/cookie-policy" target="_blank" rel="noreferrer">Learn more about how we use cookies<\/a> or <a role="button" tabindex="0" class="banner-cookie-button">adjust your cookie settings<\/a>.'}},faq:{en:"FAQ"},libby:{en:"Libby"},meetLibby:{en:"Get Libby"},sora:{en:"Sora"},discoverSora:{en:"Download Sora"},watchKanopy:{en:"Watch Kanopy"},overdrive:{en:"OverDrive"},overdriveApp:{en:"OverDrive app"},english:{en:"English"},french:{en:"French"},tlsEarlyWarningMessage:{en:"Your device will not be able to access overdrive.com after October 30, 2020. {learnMoreLink}"},learnMore:{en:"Learn more"},homePage:{slogan:{en:"Enjoy ebooks and audiobooks for free"},subSlogan:{en:"Ebooks, audiobooks, magazines and more are available for free through your local library or school"}},appCard:{sectionHeader:{en:"Meet our award-winning reading apps"},sectionSubheader:{en:"Start borrowing and reading with a library card or access through your school - no fees or subscription costs."},libbyIntendedAudience:{en:"For Everyone"},libbyDescription:{en:"All over the world, millions of people read their library books with Libby."},soraIntendedAudience:{en:"For Students"},soraDescription:{en:"Getting ebooks and audiobooks from your school is quick and easy with Sora."}},preventLoginBanner:{en:"You've tried to change your password too many times. Please try logging in again later."},accountPage:{tooManyCreateAttempts:{en:"You cannot create another account at this time."},aboutToExceedChangePasswordAttempts:{en:"You are about to exceed the number of attmepts allowed, which will log you out for 30 minutes."}}},SiteCopy=function(){var t="en",n={},i=function(i,u){let f;if(n.hasOwnProperty(i))f=n[i];else{let u=r(i);if(u===null)return null;f=new IntlMessageFormat(u,t);n[i]=f}return f===null?null:(u||(u={}),f.format(u))},r=function(n){let i=n+"."+t;try{return i.split(".").reduce(function(n,t){return n&&n[t]?n[t]:null},copyObj)}catch(r){console.log("Error retriving copy for key "+i+" "+r)}return""};return{get:i}};window.OverDrive.SiteCopy=SiteCopy()