text:
",0); _.pca=function(a,b){b=b instanceof _.oe?b:_.eca(b);a.href=_.pe(b)};_.Ce=function(a,b){a.src=_.ke(b)};_.De=function(a,b){b=b instanceof _.oe?b:_.eca(b);a.href=_.pe(b)};_.Ee=function(a,b,c){return _.ze(b,c||null)};_.Fe=function(a,b,c){return a+c*(b-a)};_.Ie=function(a,b,c){return Math.abs(a-b)<=(c||1E-6)};_.Je=function(a,b){this.x=_.$a(a)?a:0;this.y=_.$a(b)?b:0};_.Je.prototype.clone=function(){return new _.Je(this.x,this.y)};_.Je.prototype.oT=_.ba(3);_.Ke=function(a,b){return new _.Je(a.x-b.x,a.y-b.y)};_.g=_.Je.prototype;_.g.ceil=function(){this.x=Math.ceil(this.x);this.y=Math.ceil(this.y);return this};_.g.floor=function(){this.x=Math.floor(this.x);this.y=Math.floor(this.y);return this};_.g.round=function(){this.x=Math.round(this.x);this.y=Math.round(this.y);return this}; _.g.translate=function(a,b){a instanceof _.Je?(this.x+=a.x,this.y+=a.y):(this.x+=Number(a),_.cb(b)&&(this.y+=b));return this};_.g.scale=function(a,b){b=_.cb(b)?b:a;this.x*=a;this.y*=b;return this}; _.Le=function(a,b){this.width=a;this.height=b};_.Oe=function(a,b){return a==b?!0:a&&b?a.width==b.width&&a.height==b.height:!1};_.g=_.Le.prototype;_.g.clone=function(){return new _.Le(this.width,this.height)};_.g.tea=function(){return this.width*this.height};_.g.aspectRatio=function(){return this.width/this.height};_.g.Ge=function(){return!this.tea()};_.g.ceil=function(){this.width=Math.ceil(this.width);this.height=Math.ceil(this.height);return this}; _.g.floor=function(){this.width=Math.floor(this.width);this.height=Math.floor(this.height);return this};_.g.round=function(){this.width=Math.round(this.width);this.height=Math.round(this.height);return this};_.g.scale=function(a,b){b=_.cb(b)?b:a;this.width*=a;this.height*=b;return this}; var rca,uca,Aca,Bca,vca,Dca;_.Re=function(a){return a?new _.Pe(_.Qe(a)):cba||(cba=new _.Pe)};_.qca=function(a,b){return _.ab(b)?a.getElementById(b):b};_.Se=function(a,b){return(b||window.document).getElementsByTagName(String(a))}; _.Te=function(a,b,c,d){a=d||a;b=b&&"*"!=b?String(b).toUpperCase():"";if(a.querySelectorAll&&a.querySelector&&(b||c))return a.querySelectorAll(b+(c?"."+c:""));if(c&&a.getElementsByClassName){a=a.getElementsByClassName(c);if(b){d={};for(var e=0,f=0,h;h=a[f];f++)b==h.nodeName&&(d[e++]=h);d.length=e;return d}return a}a=a.getElementsByTagName(b||"*");if(c){d={};for(f=e=0;h=a[f];f++)b=h.className,"function"==typeof b.split&&_.Rb(b.split(/\s+/),c)&&(d[e++]=h);d.length=e;return d}return a}; _.sca=function(a,b){_.Qc(b,function(b,d){b&&b.Zq&&(b=b.Oj());"style"==d?a.style.cssText=b:"class"==d?a.className=b:"for"==d?a.htmlFor=b:rca.hasOwnProperty(d)?a.setAttribute(rca[d],b):_.lc(d,"aria-")||_.lc(d,"data-")?a.setAttribute(d,b):a[d]=b})};rca={cellpadding:"cellPadding",cellspacing:"cellSpacing",colspan:"colSpan",frameborder:"frameBorder",height:"height",maxlength:"maxLength",nonce:"nonce",role:"role",rowspan:"rowSpan",type:"type",usemap:"useMap",valign:"vAlign",width:"width"}; _.Ve=function(a){a=(a||window).document;a=_.Ue(a)?a.documentElement:a.body;return new _.Le(a.clientWidth,a.clientHeight)};_.Xe=function(a){var b=_.We(a);a=a.parentWindow||a.defaultView;return _.Jd&&_.Wd("10")&&a.pageYOffset!=b.scrollTop?new _.Je(b.scrollLeft,b.scrollTop):new _.Je(a.pageXOffset||b.scrollLeft,a.pageYOffset||b.scrollTop)};_.We=function(a){return a.scrollingElement?a.scrollingElement:!_.Pd&&_.Ue(a)?a.documentElement:a.body||a.documentElement}; _.Ye=function(a){return a?a.parentWindow||a.defaultView:window};_.Ze=function(a,b,c){return _.tca(window.document,arguments)};_.tca=function(a,b){var c=String(b[0]),d=b[1];if(!Wba&&d&&(d.name||d.type)){c=["<",c];d.name&&c.push(' name="',_.sc(d.name),'"');if(d.type){c.push(' type="',_.sc(d.type),'"');var e={};_.fd(e,d);delete e.type;d=e}c.push(">");c=c.join("")}c=a.createElement(c);d&&(_.ab(d)?c.className=d:_.ib(d)?c.className=d.join(" "):_.sca(c,d));2this.R&&(this.R++,a.next=this.H,this.H=a)}; var Gca,Hca,Ica,Jca;Gca=[];Hca=[];Ica=!1;_.sf=function(a){Gca[Gca.length]=a;if(Ica)for(var b=0;b=b)return a}return null};_.Gf=function(a){return a?a.__owner?a.__owner:a.parentNode&&11===a.parentNode.nodeType?a.parentNode.host:_.kf(a):null};_.rda=function(a,b,c,d){for(c||(a=_.qda(a,d));a;){if(b(a))return a;a=_.qda(a,d)}return null}; var sda=function(a,b,c){this.action=a;this.target=b||null;this.Tf=c||null},tda=function(){this.H=[]},uda=/^\.?(\w+)(?:\(([\w|=]+)\))?$/,vda={},wda=function(a){var b=vda[a];if(b)return b;b=a.split(",");for(var c=new tda,d=0;d2*this.De&&Nda(this),!0):!1}; var Nda=function(a){if(a.De!=a.H.length){for(var b=0,c=0;b=d.H.length)throw _.ag;var e=d.H[b++];return a?e:d.R[e]};return e};var dg=function(a,b){return Object.prototype.hasOwnProperty.call(a,b)}; _.Oda=function(){return _.Pd?"Webkit":_.Od?"Moz":_.Jd?"ms":_.Id?"O":null};_.fg=function(a,b,c,d){this.top=a;this.right=b;this.bottom=c;this.left=d};_.g=_.fg.prototype;_.g.wc=function(){return this.right-this.left};_.g.getHeight=function(){return this.bottom-this.top};_.g.clone=function(){return new _.fg(this.top,this.right,this.bottom,this.left)};_.g.contains=function(a){return this&&a?a instanceof _.fg?a.left>=this.left&&a.right<=this.right&&a.top>=this.top&&a.bottom<=this.bottom:a.x>=this.left&&a.x<=this.right&&a.y>=this.top&&a.y<=this.bottom:!1}; _.g.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};_.g.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};_.g.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}; _.g.translate=function(a,b){a instanceof _.Je?(this.left+=a.x,this.right+=a.x,this.top+=a.y,this.bottom+=a.y):(this.left+=a,this.right+=a,_.cb(b)&&(this.top+=b,this.bottom+=b));return this};_.g.scale=function(a,b){b=_.cb(b)?b:a;this.left*=a;this.right*=a;this.top*=b;this.bottom*=b;return this}; _.gg=function(a,b,c,d){this.left=a;this.top=b;this.width=c;this.height=d};_.gg.prototype.clone=function(){return new _.gg(this.left,this.top,this.width,this.height)};_.gg.prototype.contains=function(a){return a instanceof _.Je?a.x>=this.left&&a.x<=this.left+this.width&&a.y>=this.top&&a.y<=this.top+this.height:this.left<=a.left&&this.left+this.width>=a.left+a.width&&this.top<=a.top&&this.top+this.height>=a.top+a.height};_.gg.prototype.ty=_.ba(5); _.gg.prototype.Fd=function(){return new _.Le(this.width,this.height)};_.hg=function(a){return new _.Je(a.left,a.top)};_.g=_.gg.prototype;_.g.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};_.g.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}; _.g.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};_.g.translate=function(a,b){a instanceof _.Je?(this.left+=a.x,this.top+=a.y):(this.left+=a,_.cb(b)&&(this.top+=b));return this};_.g.scale=function(a,b){b=_.cb(b)?b:a;this.left*=a;this.width*=a;this.top*=b;this.height*=b;return this}; var Qda,Pda,Tda,Xda,Yda,Zda,$da;_.ig=function(a,b,c){if(_.ab(b))(b=Pda(a,b))&&(a.style[b]=c);else for(var d in b){c=a;var e=b[d],f=Pda(c,d);f&&(c.style[f]=e)}};Qda={};Pda=function(a,b){var c=Qda[b];if(!c){var d=sba(b);c=d;void 0===a.style[d]&&(d=_.Oda()+_.tba(d),void 0!==a.style[d]&&(c=d));Qda[b]=c}return c};_.Rda=function(a,b){var c=a.style[sba(b)];return"undefined"!==typeof c?c:a.style[Pda(a,b)]||""}; _.jg=function(a,b){var c=_.Qe(a);return c.defaultView&&c.defaultView.getComputedStyle&&(a=c.defaultView.getComputedStyle(a,null))?a[b]||a.getPropertyValue(b)||"":""};_.kg=function(a,b){return _.jg(a,b)||(a.currentStyle?a.currentStyle[b]:null)||a.style&&a.style[b]};_.lg=function(a){return _.kg(a,"position")};_.ng=function(a,b,c){if(b instanceof _.Je){var d=b.x;b=b.y}else d=b,b=c;a.style.left=_.mg(d,!1);a.style.top=_.mg(b,!1)}; _.Sda=function(a){a=a?_.Qe(a):window.document;return!_.Jd||_.Xd(9)||_.Ue(_.Re(a).H)?a.documentElement:a.body};Tda=function(a){try{var b=a.getBoundingClientRect()}catch(c){return{left:0,top:0,right:0,bottom:0}}_.Jd&&a.ownerDocument.body&&(a=a.ownerDocument,b.left-=a.documentElement.clientLeft+a.body.clientLeft,b.top-=a.documentElement.clientTop+a.body.clientTop);return b}; _.og=function(a){var b=_.Qe(a),c=new _.Je(0,0),d=_.Sda(b);if(a==d)return c;a=Tda(a);b=_.Xe(_.Re(b).H);c.x=a.left+b.x;c.y=a.top+b.y;return c};_.qg=function(a,b){a=_.pg(a);b=_.pg(b);return new _.Je(a.x-b.x,a.y-b.y)};_.Uda=function(a){a=Tda(a);return new _.Je(a.left,a.top)};_.pg=function(a){if(1==a.nodeType)return _.Uda(a);a=a.changedTouches?a.changedTouches[0]:a;return new _.Je(a.clientX,a.clientY)};_.mg=function(a,b){"number"==typeof a&&(a=(b?Math.round(a):a)+"px");return a}; _.rg=function(a){var b=_.Vda;if("none"!=_.kg(a,"display"))return b(a);var c=a.style,d=c.display,e=c.visibility,f=c.position;c.visibility="hidden";c.position="absolute";c.display="inline";a=b(a);c.display=d;c.position=f;c.visibility=e;return a};_.Vda=function(a){var b=a.offsetWidth,c=a.offsetHeight,d=_.Pd&&!b&&!c;return _.$a(b)&&!d||!a.getBoundingClientRect?new _.Le(b,c):(a=Tda(a),new _.Le(a.right-a.left,a.bottom-a.top))};_.sg=function(a){var b=_.og(a);a=_.rg(a);return new _.gg(b.x,b.y,a.width,a.height)}; _.tg=function(a,b){a.style.display=b?"":"none"};_.vg=function(a,b){var c=_.Ue(_.Re(_.Qe(a)).H);if(!_.Jd||_.Wd("10")||c&&_.Wd("8")){var d=a.style;_.Od?d.MozBoxSizing="border-box":_.Pd?d.WebkitBoxSizing="border-box":d.boxSizing="border-box";d.width=Math.max(b.width,0)+"px";d.height=Math.max(b.height,0)+"px"}else d=a.style,c?(c=_.Wda(a,"padding"),a=_.ug(a),d.pixelWidth=b.width-a.left-c.left-c.right-a.right,d.pixelHeight=b.height-a.top-c.top-c.bottom-a.bottom):(d.pixelWidth=b.width,d.pixelHeight=b.height)}; Xda=function(a,b){if(/^\d+px?$/.test(b))return(0,window.parseInt)(b,10);var c=a.style.left,d=a.runtimeStyle.left;a.runtimeStyle.left=a.currentStyle.left;a.style.left=b;b=a.style.pixelLeft;a.style.left=c;a.runtimeStyle.left=d;return+b};Yda=function(a,b){return(b=a.currentStyle?a.currentStyle[b]:null)?Xda(a,b):0}; _.Wda=function(a,b){if(_.Jd){var c=Yda(a,b+"Left"),d=Yda(a,b+"Right"),e=Yda(a,b+"Top");a=Yda(a,b+"Bottom");return new _.fg(e,d,a,c)}c=_.jg(a,b+"Left");d=_.jg(a,b+"Right");e=_.jg(a,b+"Top");a=_.jg(a,b+"Bottom");return new _.fg((0,window.parseFloat)(e),(0,window.parseFloat)(d),(0,window.parseFloat)(a),(0,window.parseFloat)(c))};Zda={thin:2,medium:4,thick:6}; $da=function(a,b){if("none"==(a.currentStyle?a.currentStyle[b+"Style"]:null))return 0;b=a.currentStyle?a.currentStyle[b+"Width"]:null;return b in Zda?Zda[b]:Xda(a,b)}; _.ug=function(a){if(_.Jd&&!_.Xd(9)){var b=$da(a,"borderLeft"),c=$da(a,"borderRight"),d=$da(a,"borderTop");a=$da(a,"borderBottom");return new _.fg(d,c,a,b)}b=_.jg(a,"borderLeftWidth");c=_.jg(a,"borderRightWidth");d=_.jg(a,"borderTopWidth");a=_.jg(a,"borderBottomWidth");return new _.fg((0,window.parseFloat)(d),(0,window.parseFloat)(c),(0,window.parseFloat)(a),(0,window.parseFloat)(b))}; /* Portions of this code are from MochiKit, received by The Closure Authors under the MIT license. All other code is Copyright 2005-2009 The Closure Authors. All Rights Reserved. */ var eea,fea,bea,iea,cea;_.wg=function(a,b){this.W=[];this.Ya=a;this.Wa=b||null;this.V=this.H=!1;this.T=void 0;this.ua=this.ub=this.ta=!1;this.ka=0;this.R=null;this.$=0};_.wg.prototype.cancel=function(a){if(this.H)this.T instanceof _.wg&&this.T.cancel();else{if(this.R){var b=this.R;delete this.R;a?b.cancel(a):(b.$--,0>=b.$&&b.cancel())}this.Ya?this.Ya.call(this.Wa,this):this.ua=!0;this.H||this.Bh(new _.xg(this))}};_.wg.prototype.Ca=function(a,b){this.ta=!1;aea(this,a,b)}; var aea=function(a,b,c){a.H=!0;a.T=c;a.V=!b;bea(a)},dea=function(a){if(a.H){if(!a.ua)throw new cea(a);a.ua=!1}};_.wg.prototype.callback=function(a){dea(this);aea(this,!0,a)};_.wg.prototype.Bh=function(a){dea(this);aea(this,!1,a)};_.Ag=function(a,b,c){return _.yg(a,b,null,c)};_.Bg=function(a,b,c){return _.yg(a,null,b,c)};eea=function(a,b,c){_.yg(a,b,b,c)};_.yg=function(a,b,c,d){a.W.push([b,c,d]);a.H&&bea(a);return a}; _.wg.prototype.then=function(a,b,c){var d,e,f=new _.ja(function(a,b){d=a;e=b});_.yg(this,d,function(a){a instanceof _.xg?f.cancel():e(a)});return f.then(a,b,c)};_.Xca(_.wg);_.Cg=function(a,b){b instanceof _.wg?_.Ag(a,(0,_.qb)(b.Ve,b)):_.Ag(a,function(){return b})};_.wg.prototype.Ve=function(a){var b=new _.wg;_.yg(this,b.callback,b.Bh,b);a&&(b.R=this,this.$++);return b};_.wg.prototype.isError=function(a){return a instanceof Error};fea=function(a){return(0,_.Hb)(a.W,function(a){return _.lb(a[1])})}; bea=function(a){if(a.ka&&a.H&&fea(a)){var b=a.ka,c=gea[b];c&&(_.Za.clearTimeout(c.H),delete gea[b]);a.ka=0}a.R&&(a.R.$--,delete a.R);b=a.T;for(var d=c=!1;a.W.length&&!a.ta;){var e=a.W.shift(),f=e[0],h=e[1];e=e[2];if(f=a.V?h:f)try{var k=f.call(e||a.Wa,b);_.$a(k)&&(a.V=a.V&&(k==b||a.isError(k)),a.T=b=k);if(Yca(b)||"function"===typeof _.Za.Promise&&b instanceof _.Za.Promise)d=!0,a.ta=!0}catch(n){b=n,a.V=!0,fea(a)||(c=!0)}}a.T=b;d&&(k=(0,_.qb)(a.Ca,a,!0),d=(0,_.qb)(a.Ca,a,!1),b instanceof _.wg?(_.yg(b, k,d),b.ub=!0):b.then(k,d));c&&(b=new hea(b),gea[b.H]=b,a.ka=b.H)};_.Dg=function(a){var b=new _.wg;b.callback(a);return b};iea=function(a){var b=new _.wg;a.then(function(a){b.callback(a)},function(a){b.Bh(a)});return b};_.jea=function(a){var b=new _.wg;b.Bh(a);return b};cea=function(a){_.vb.call(this);this.af=a};_.q(cea,_.vb);cea.prototype.message="Deferred has already fired";cea.prototype.name="AlreadyCalledError";_.xg=function(a){_.vb.call(this);this.af=a};_.q(_.xg,_.vb);_.xg.prototype.message="Deferred was canceled"; _.xg.prototype.name="CanceledError";var hea=function(a){this.H=_.Za.setTimeout((0,_.qb)(this.T,this),0);this.R=a};hea.prototype.T=function(){delete gea[this.H];throw this.R;};var gea={}; var nea,rea,kea,mea;_.Eg=function(a){a instanceof _.Eg?a=a.Qe:a[0]instanceof _.Eg&&(a=(0,_.Gb)(a,function(a,c){return _.Xb(a,c.Qe)},[]),_.dc(a));this.Qe=_.Yb(a)};_.g=_.Eg.prototype;_.g.od=function(a,b){(0,_.Bb)(this.Qe,a,b);return this};_.g.size=function(){return this.Qe.length};_.g.get=function(a){return this.Qe[a]};_.g.el=function(){return this.Qe[0]||null};_.g.xd=function(){return this.Qe.slice()};_.g.map=function(a,b){return(0,_.Fb)(this.Qe,a,b)};_.g.Fc=_.ba(7);_.g.Dc=_.ba(9); _.g.find=function(a){var b=[];this.od(function(c){c=c.querySelectorAll(String(a));for(var d=0;d<"+this.R+">: "+this.H+"-"+typeof this.H);}; _.Gg.prototype.Rb=function(a){if(null==this.H)return 0==arguments.length&≠a(this),a;if(_.bb(this.H))return this.H;if(_.ab(this.H)){var b=this.H.toLowerCase();if("true"===b||"1"===b)return!0;if("false"===b||"0"===b)return!1}throw new TypeError("Invalid boolean data <"+this.R+">: "+this.H+"-"+typeof this.H);}; _.Gg.prototype.zc=function(a){if(null==this.H)return 0==arguments.length&≠a(this),a;if(_.cb(this.H))return this.H;if(_.ab(this.H)){var b=Number(this.H);if(!(0,window.isNaN)(b)&&!_.nc(this.H))return b}throw new TypeError("Invalid numeric data <"+this.R+">: "+this.H+"-"+typeof this.H);};_.Lg=function(a){return null!=a.H};_.Gg.prototype.toString=function(){return this.Ra()};_.pea=function(){var a=_.Mg("zChJod"),b=oea;if(null==a.H)throw Error("B`"+a.R);a=a.Ra();return _.Ff(a,b)}; _.qea=function(a,b,c){if(null==a.H)return c;a=a.Ra();return _.Ff(a,b)};_.Gg.prototype.V=_.ba(14);_.Gg.prototype.T=_.ba(15);rea=/^\[([a-z0-9-]+)(="([^\\"]*)")?]$/;kea=function(a){if("string"==typeof a){if("."==a.charAt(0))return _.Ng(a.substr(1));if("["==a.charAt(0)){var b=rea.exec(a);a=-1==a.indexOf("=")?void 0:b[3];return _.Og(b[1],a)}return _.sea(a)}return a};_.Ng=function(a){return function(b){return b.getAttribute&&_.Of(b,a)}}; _.Og=function(a,b){return function(c){return _.$a(b)?c.getAttribute&&c.getAttribute(a)==b:c.hasAttribute&&c.hasAttribute(a)}};_.sea=function(a){a=a.toUpperCase();return function(b){return(b=b.tagName)&&b.toUpperCase()==a}};mea=function(){return!0}; _.Mg=function(a){var b=window.WIZ_global_data;return b&&a in b?new _.Gg(a,b[a]):new _.Gg(a,null)};_.tea=function(a){for(var b=[],c=0,d=0;d>=8);b[c++]=e}return b};var Rg,vea;Rg=null;_.uea=null;vea=null;_.Sg=function(a,b){_.wea();b=b?vea:Rg;for(var c=[],d=0;d>2;e=(e&3)<<4|h>>4;h=(h&15)<<2|n>>6;n&=63;k||(n=64,f||(h=64));c.push(b[r],b[e],b[h],b[n])}return c.join("")}; _.wea=function(){if(!Rg){Rg={};_.uea={};vea={};for(var a=0;65>a;a++)Rg[a]="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(a),_.uea[Rg[a]]=a,vea[a]="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_.".charAt(a),62<=a&&(_.uea["ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_.".charAt(a)]=a)}}; var xea,Tg,yea,zea,Bea,Cea,Fea,Gea,Eea,Hea;_.u=function(a,b){this.ih=a;this.mb=b};_.v=function(){};xea="function"==typeof window.Uint8Array; _.x=function(a,b,c,d,e,f){a.H=null;b||(b=c?[c]:[]);a.Ja=c?String(c):void 0;a.W=0===c?-1:0;a.T=b;a:{if(a.T.length&&(b=a.T.length-1,(c=a.T[b])&&"object"==typeof c&&!_.ib(c)&&!(xea&&c instanceof window.Uint8Array))){a.ka=b-a.W;a.R=c;break a}-1<=d){b.push("[...long stack...]");break}}a&&d>=a?b.push("[...reached max depth limit...]"): b.push("[end]");return b.join("")},Pea=function(a){var b=Error();if(Error.captureStackTrace)return Error.captureStackTrace(b,a),String(b.stack);try{throw b;}catch(c){b=c}return(a=b.stack)?String(a):null},Sea=function(a){var b;(b=Pea(a||Sea))||(b=Tea(a||arguments.callee.caller,[]));return b},Tea=function(a,b){var c=[];if(_.Rb(b,a))c.push("[...circular reference...]");else if(a&&50>b.length){c.push(Rea(a)+"(");for(var d=a.arguments,e=0;d&&e=a.keyCode)a.keyCode=-1}catch(b){}}; _.nh.prototype.a4=_.ba(16); var Xea;_.Wea="closure_listenable_"+(1E6*Math.random()|0);_.oh=function(a){return!(!a||!a[_.Wea])};Xea=0;var Yea=function(a,b,c,d,e){this.listener=a;this.H=null;this.src=b;this.type=c;this.capture=!!d;this.hn=e;this.key=++Xea;this.Xz=this.gJ=!1},Zea=function(a){a.Xz=!0;a.listener=null;a.H=null;a.src=null;a.hn=null};var ph=function(a){this.src=a;this.H={};this.R=0};ph.prototype.add=function(a,b,c,d,e){var f=a.toString();a=this.H[f];a||(a=this.H[f]=[],this.R++);var h=$ea(a,b,d,e);-1c.keyCode||void 0!=c.returnValue)){a:{var e=!1;if(0==c.keyCode)try{c.keyCode=-1;break a}catch(h){e=!0}if(e||void 0==c.returnValue)c.returnValue=!0}c=[];for(e=b.currentTarget;e;e=e.parentNode)c.push(e);a=a.type;for(e=c.length-1;!b.ex&&0<=e;e--){b.currentTarget=c[e];var f=kfa(c[e],a,!0,b);d=d&&f}for(e=0;!b.ex&&e>>0);efa=function(a){if(_.lb(a))return a;a[lfa]||(a[lfa]=function(b){return a.handleEvent(b)});return a[lfa]};_.sf(function(a){ifa=a(ifa)}); _.vh=function(){_.gh.call(this);this.bs=new ph(this);this.Kda=this;this.WW=null};_.q(_.vh,_.gh);_.vh.prototype[_.Wea]=!0;_.g=_.vh.prototype;_.g.qD=function(){return this.WW};_.g.lA=function(a){this.WW=a};_.g.addEventListener=function(a,b,c,d){_.rh(this,a,b,c,d)};_.g.removeEventListener=function(a,b,c,d){_.th(this,a,b,c,d)}; _.g.dispatchEvent=function(a){var b,c=this.qD();if(c)for(b=[];c;c=c.qD())b.push(c);c=this.Kda;var d=a.type||a;if(_.ab(a))a=new _.mh(a,c);else if(a instanceof _.mh)a.target=a.target||c;else{var e=a;a=new _.mh(d,c);_.fd(a,e)}e=!0;if(b)for(var f=b.length-1;!a.ex&&0<=f;f--){var h=a.currentTarget=b[f];e=h.YC(d,!0,a)&&e}a.ex||(h=a.currentTarget=c,e=h.YC(d,!0,a)&&e,a.ex||(e=h.YC(d,!1,a)&&e));if(b)for(f=0;!a.ex&&fb?null:a.substr(b+1)};_.Gh=function(a){a=a.match(_.Ah);return _.zh(a[1],a[2],a[3],a[4])};_.mfa=function(a){a=a.match(_.Ah);return _.zh(null,null,null,null,a[5],a[6],a[7])};_.nfa=function(a,b){if(a){a=a.split("&");for(var c=0;cc&&(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.substr(0,d),e,a.substr(c)];c=a[1];a[1]=b?c?c+"&"+b:b:c;return a[0]+(a[1]?"?"+a[1]:"")+a[2]};pfa=function(a,b,c){if(_.ib(b))for(var d=0;dd)return null;var e=a.indexOf("&",d);if(0>e||e>c)e=c;d+=b.length+1;return(0,window.decodeURIComponent)(a.substr(d,e-d).replace(/\+/g," "))};sfa=/[?&]($|#)/;_.Nh=function(a,b){for(var c=a.search(_.Lh),d=0,e,f=[];0<=(e=_.Kh(a,d,b,c));)f.push(a.substring(d,e)),d=Math.min(a.indexOf("&",e)+1||c,c);f.push(a.substr(d));return f.join("").replace(sfa,"$1")}; var tfa="gpcaz tab gpsrc gpsls wwc plsa plsatok prsrc apisrc vnl socpid socfid phselids plus_info ppsu _rmrp".split(" "),vfa=function(){var a=ufa;(0,_.Bb)(tfa,function(b){a=_.Nh(a,b)});return a},wfa=function(a){var b=window;return new _.ja(function(c,d){var e=b.document.documentElement,f=e.style.pointerEvents;e.style.pointerEvents="none";var h=_.ha(4E3).then(function(){d("Origin check taking too long.")}),k=function(n){var r=n.origin;n.source==b.parent&&"verify-origin-reply"==n.data&&(r==a?(h.cancel(), e.style.pointerEvents=f,b.removeEventListener("message",k),c()):d("Claimed origin "+a+" did not match parent origin: "+r))};b.addEventListener("message",k);b.parent.postMessage("verify-origin",a)})},xfa=function(a){var b=window;return b.location.origin&&b.location.ancestorOrigins?(0,_.Kb)(b.location.ancestorOrigins,function(c){return c==a||c==b.location.origin}):!1}; (function(){var a;if(window!=window.top&&(!_.kd()||window.frames!=window.top))if(_.y(_.ah,4)){if(_.kd()&&_.xd(9)||_.ld()&&_.xd(33))return;var b=_.Mg("liWUH").Ra(null);b&&(window.location.origin&&window.location.ancestorOrigins?xfa(b)||(a="Claimed origin "+b+"did not match location.ancestorOrigins."):_.ka(wfa(b),function(b){a="Origin check failed. "+b;_.De(window.location,fca);return!0}))}else a="Attempting to iframe without @AllowFraming annotation.";a&&_.De(window.location,fca)})();var ufa=window.location.href; window.BOQ_originalHref=ufa;if(window.history.replaceState){var yfa=vfa();yfa!=ufa&&window.history.replaceState(null,window.document.title||"",yfa)}; _.Oh={};_.Ph={};_.Qh={};_.Rh={};_.zfa=function(a){_.x(this,a,0,-1,null,null)};_.q(_.zfa,_.v);_.Afa=new _.u(90848875,_.zfa);_.Bfa=function(a){_.x(this,a,0,-1,null,null)};_.q(_.Bfa,_.v);_.Cfa=new _.u(154852854,_.Bfa);_.faa=function(a){_.x(this,a,0,-1,Dfa,null)};_.q(_.faa,_.v);var Dfa=[3];_.Sh=function(a,b,c){this.R=a;this.Cm=b||null;this.H=c||[]};_.Sh.prototype.toString=function(){return this.R};var Ffa;_.Efa=new _.Sh("yRRtR");Ffa=new _.Sh("pVbxBc");_.Th=new _.Sh("n73qwf");_.Gfa=new _.Sh("GHAeAc","GHAeAc");_.Hfa=new _.Sh("Wt6vjf");_.Ifa=new _.Sh("byfTOb");_.Uh=new _.Sh("LEikZe");_.Jfa=new _.Sh("rJmJrc");_.A=new _.Sh("MpJwZc");_.Kfa=new _.Sh("UUJqVe");_.Lfa=new _.Sh("lsjVmc"); _.Vh=new _.Sh("gychg",void 0,[_.Uh]);_.Wh=new _.Sh("xUdipf");_.Xh=new _.Sh("Ulmmrd",void 0,[_.Vh]);_.Yh=new _.Sh("NwH0H",void 0,[_.Wh]);var Mfa,Nfa,Pfa,Ofa;Mfa={};Nfa={};Pfa=function(a,b){var c=b?Mfa:Nfa,d=c[a.toString()];d||(Ofa(b),d=c[a.toString()]);return d};Ofa=function(a){var b=a?_.Oh:_.Qh;a=a?Mfa:Nfa;for(var c in b){var d=b[(0,window.parseInt)(c,10)],e=d.mb.prototype.Qa;e&&(a[e]=d.ih)}};_.Qfa=function(a){var b=Pfa(a.Qa,!0);return{nb:_.Ph[b],Cc:_.Oh[b],request:a}};_.Rfa=function(a){var b=Pfa(a.Qa,!1);return{nb:_.Rh[b],$b:_.Qh[b],Ub:a}}; _.Sfa={};_.Zh=function(a,b){this.H=a;this.Sf=b;a.prototype.Qa&&(_.Sfa[a.prototype.Qa]=this)};_.Zh.prototype.Ib=function(a){return new this.H(a)};_.$h=function(a){var b;a instanceof _.v?b=a.Qa:a instanceof _.Zh?b=a.H.prototype.Qa:b=a.prototype.Qa;return b}; _.ai=function(a,b,c){this.H=a;this.ng=b||void 0;this.Fx=c||{}};_.ai.prototype.ug=function(){return this.H};_.ai.prototype.V4=_.ba(17);_.C=function(a,b,c){this.R=a;this.px=b;this.YN=c;this.H=(0,window.parseInt)(a,10)||null};_.C.prototype.toString=function(){return this.R};_.C.prototype.Ib=function(a){return new _.ai(this,a)};_.C.prototype.wa=_.ba(19);_.C.prototype.matches=function(a){return this.R==a.R||this.H&&this.H.toString()==a.R||a.H&&a.H.toString()==this.R?!0:!1}; _.Tfa=function(a){return!(_.nb(a)&&(!_.$a(a.Cc)||a.Cc instanceof _.u)&&a.nb instanceof _.u)||_.$a(a.request)&&!(a.request instanceof _.v)||_.$a(a.Xv)&&!_.bb(a.Xv)||_.$a(a.Iw)&&(!_.cb(a.Iw)||0>a.Iw)?!1:!0}; _.bi=function(a){if(_.lb(a.ug))return a.ug();var b=-1;if(a instanceof _.v){var c=a.Qa;var d=Mfa[c.toString()];d||(Ofa(!0),d=Mfa[c.toString()]);d?c=!0:(d=Nfa[c.toString()],d||(Ofa(!1),d=Nfa[c.toString()]),c=d?!1:void 0);a=c?_.Qfa(a):_.Rfa(a)}a instanceof _.u?b=a.ih:a.Cc?b=a.Cc.ih:a.$b?b=a.$b.ih:a.nb&&(b=a.nb.ih);d=_.Oh[b]||_.Qh[b];a=_.Ph[b]||_.Rh[b];c=_.fb;d&&(c=d.mb);d=_.fb;a&&(d=a.mb);return new _.C(b+"",d,c)};_.ci=function(a,b){return new _.C(a.ih+"",a.mb,b?b.mb:_.fb)}; _.Ufa=function(a){var b=a.ug().H;if(null==b||0>b)return null;var c=_.Ph[b];if(c){var d=a.Fx[_.Afa.ih],e=a.Fx[_.Cfa.ih];a={nb:c,Cc:_.Oh[b],request:a.ng,Xv:d&&_.y(d,1)};e&&_.y(e,1)&&(a.Iw=_.y(e,1));return a}return(e=_.Qh[b])?a={nb:_.Rh[b],$b:e,Ub:a.ng}:null}; _.di=_.t("wZVHld");_.ei=_.t("nDa8ic");_.Vfa=_.t("o07HZc");_.fi=_.t("UjQMac");var gga,hga;_.Wfa=_.t("ti6hGc");_.Xfa=_.t("ZYIfFd");_.Yfa=_.t("TGB85e");_.Zfa=_.t("RXQi4b");_.$fa=_.t("eQsQB");_.aga=_.t("O1htCb");_.bga=_.t("g6cJHd");_.cga=_.t("otb29e");_.dga=_.t("AHmuwe");_.ega=_.t("O22p3e");_.ii=_.t("JIbuQc");_.fga=_.t("ih4XEb");_.ji=_.t("GvneHb");gga=_.t("rcuQ6b");hga=_.t("dyRcpb"); var iga=function(a){var b={},c={},d=[],e=[],f=function(a){if(!c[a]){var e=a instanceof _.Sh?a.H:[];c[a]=_.Yb(e);(0,_.Bb)(e,function(c){b[c]=b[c]||[];b[c].push(a)});e.length||d.push(a);(0,_.Bb)(e,f)}};for((0,_.Bb)(a,f);d.length;){var h=d.shift();e.push(h);b[h]&&(0,_.Bb)(b[h],function(a){_.Vb(c[a],h);c[a].length||d.push(a)})}var k={},n=[];(0,_.Bb)(e,function(a){a instanceof _.Sh&&(a=a.Cm,null==a||k[a]||(k[a]=!0,n.push(a)))});return{jHa:e,Cua:n}}; var ki=function(){_.gh.call(this)};_.q(ki,_.gh);ki.prototype.Pe=function(){};var li=function(a,b){this.H=a;this.R=b};li.prototype.execute=function(a){this.H&&(this.H.call(this.R||null,a),this.H=this.R=null)};li.prototype.abort=function(){this.R=this.H=null};_.sf(function(a){li.prototype.execute=a(li.prototype.execute)});_.mi=function(a,b){_.gh.call(this);this.W=a;this.ka=b;this.$=[];this.V=[];this.H=[]};_.q(_.mi,_.gh);_.mi.prototype.R=ki;_.mi.prototype.T=null;_.mi.prototype.getId=function(){return this.ka};var jga=function(a,b){a.V.push(new li(b,void 0))};_.mi.prototype.xe=function(){return!!this.T};var lga=function(a,b){var c=new a.R;c.Pe(b());a.T=c;c=(c=!!kga(a.H,b()))||!!kga(a.$,b());c||(a.V.length=0);return c}; _.mi.prototype.wa=function(a){(a=kga(this.V,a))&&window.setTimeout(_.xf("Module errback failures: "+a),0);this.H.length=0;this.$.length=0};var kga=function(a,b){for(var c=[],d=0;d<"+b+"> but the service was not registered in that module.")}; var I,zi,Cga,Dga;I=function(a,b){b=new _.Sh(a,a,b);return _.yi[a]=b};zi=function(a,b){Cga(b).push(a)};Cga=function(a){a=a.toString();return Dga[a]=Dga[a]||[]};Dga={};_.yi={};_.Ai=function(a){_.gh.call(this);this.V=a;this.H={}};_.q(_.Ai,_.gh);var Ega=[];_.Ai.prototype.listen=function(a,b,c,d){return _.Bi(this,a,b,c,d)};_.Bi=function(a,b,c,d,e,f){_.ib(c)||(c&&(Ega[0]=c.toString()),c=Ega);for(var h=0;hthis.Oa&&(this.Oa=c);for(var d=c-this.Ja,e=this.Ca.length;0d;)e--;_.cc(this.Ca,e,0,[a,d,b.vja]);this.Va[a]=c}; _.g.done=function(a,b,c){this.R||!this.H[a]?Li(this,"done",a,b):(b&&this.qh(b,c),this.H[a]--,0==this.H[a]&&delete this.H[a],_.ad(this.H)&&bha(this)&&(this.R=!0,_.Vb($ga,this),this.Vf=this.ka=null,this.Bd()))};_.g.Ve=function(a,b,c){this.R&&Li(this,"branch",a,b);b&&this.qh(b,c);this.H[a]?this.H[a]++:this.H[a]=1}; var bha=function(a){if(!_.Ji)return!0;if(a.Wa){var b=new _.Ii("abandoned",a);a.dispatchEvent(b);_.Ji.dispatchEvent(b);return!0}0Math.random(); Tha=function(a){var b=[];a=Rha(a);var c;a.$p[_.Th]&&(c=a.$p[_.Th][0]);c&&b.push(c);a=a.V||[];for(var d=0;dc.H.length&&c.H.push([a,b]))};hia=function(a){a.H&&((0,_.Bb)(a.H,function(a){jia(this.R,a[1],a[0])},a),a.H=null)};gia=new fia;kia=function(a){_.bj(null,a)}; var lia=function(){var a=window;if(!a.location)try{(0,_.rf)(a)}catch(c){}var b=a.location&&a.location.ancestorOrigins;if(_.$a(b))return b&&b.length?b[b.length-1]==a.location.origin:!0;try{return _.$a(a.top.location.href)}catch(c){return!1}};var cj={},mia=function(){var a={};a.location=window.document.location.toString();if(lia())try{a["top.location"]=window.top.location.toString()}catch(c){a["top.location"]="[external]"}else a["top.location"]="[external]";for(var b in cj)try{a[b]=cj[b].call()}catch(c){a[b]="[error] "+c.message}return a}; var nia=function(a){this.H=a;this.T={};this.R=[]},jia=function(a,b,c){var d=mia();d["call-stack"]=Sea();c&&(d.message=c);var e;b instanceof Error?e=b:e=b||"";b="";if(e){b=e.message||"unknown";for(var f=c=0;f>>0;b=c}c="";for(h in d)c=c+h+":"+d[h]+":";var h=b+"::"+c;b=a.T[h];b||(b={time:0,count:0},a.T[h]=b);if(1E4>(0,_.sb)()-b.time)b.count++,1==b.count&&(d=mia(),d.message="Throttling: "+h,a.H.R(e,d));else{b.count&&(d["dropped-instances"]=b.count);b.time=(0,_.sb)(); for(h=b.count=0;h<_.ij(this)?this.H.status:-1}catch(a){return-1}};_.gj.prototype.Zg=function(){try{return this.H?this.H.responseText:""}catch(a){return""}};_.gj.prototype.wa=_.ba(18);_.gj.prototype.getAllResponseHeaders=function(){return this.H&&4==_.ij(this)?this.H.getAllResponseHeaders()||"":""};_.sf(function(a){_.gj.prototype.Ya=a(_.gj.prototype.Ya)}); var jj=function(a,b,c){_.vh.call(this);this.V=b||null;this.T={};this.W=Hia;this.$=a;c||(this.H=null,_.Jd&&!_.Wd("10")?Oea((0,_.qb)(this.R,this),!1,null):(this.H=new dj((0,_.qb)(this.R,this)),fj(this.H,"setTimeout"),fj(this.H,"setInterval"),ria(this.H),Jca(this.H)))};_.q(jj,_.vh);var Iia=function(a,b){_.mh.call(this,"c");this.error=a;this.context=b};_.q(Iia,_.mh);var Hia=function(a,b,c,d){_.zia(a,null,b,c,d)}; jj.prototype.R=function(a,b){a=a.error||a;b=b?_.bd(b):{};a instanceof Error&&_.fd(b,a.__closure__error__context__984382||{});var c=_.eb("window.location.href");if(_.ab(a))var d={message:a,name:"Unknown error",lineNumber:"Not available",fileName:c,stack:"Not available"};else{var e=!1;try{d=a.lineNumber||a.line||"Not available"}catch(B){d="Not available",e=!0}try{var f=a.fileName||a.filename||a.sourceURL||_.Za.$googDebugFname||c}catch(B){f="Not available",e=!0}d=!e&&a.lineNumber&&a.fileName&&a.stack&& a.message&&a.name?a:{message:a.message||"Not available",name:a.name||"UnknownError",lineNumber:d,fileName:f,stack:a.stack||"Not available"}}if(this.V)try{this.V(d,b)}catch(B){}f=d.message.substring(0,1900);if(!(a instanceof _.vb)||a.H){a=d.fileName;c=d.lineNumber;e=d.stack;try{var h=_.Ih(this.$,"script",a,"error",f,"line",c);if(!_.ad(this.T)){var k=h,n=_.rfa(this.T);h=ofa(k,n)}n={};n.trace=e;if(b)for(var r in b)n["context."+r]=b[r];var w=_.rfa(n);_.cb(null)&&(w=w.substring(0,null));this.W(h,"POST", w,this.ka)}catch(B){_.pba("Error occurred in sending an error report.\n\n","script:",a,"\n","line:",c,"\n","error:",f,"\n","trace:",e)}}try{this.dispatchEvent(new Iia(d,b))}catch(B){}};jj.prototype.vc=function(){_.ih(this.H);jj.Ka.vc.call(this)}; var Kia=function(a){gia.init();a&&(a=new jj(a,void 0,!0),iia(new nia(a)));var b=null;a=function(a){_.Za.$googDebugFname&&a&&a.message&&!a.fileName&&(a.message+=" in "+_.Za.$googDebugFname);b?a&&a.message&&(a.message+=" [Possibly caused by: "+b+"]"):b=String(a);_.bj(null,a)};_.db("_DumpException",a,void 0);_.db("_B_err",a,void 0);(0,_.Bb)([_.Za].concat([]),_.rb(Oea,_.rb(Jia,!0),!0));_.sd()&&_.xd(28)||_.ld()&&_.xd(14)||_.kd()&&_.xd(11)||_.vd()&&_.xd(10);if(!_.Jd||_.Wd(10))a=new dj(kia),a.R=!0,a.H=!0, ria(a),fj(a,"setTimeout"),fj(a,"setInterval"),Jca(a)},Jia=function(a,b){_.xc(b.message,"Error in protected function: ")||(b.error&&b.error.stack?_.bj(null,b.error):a||_.bj(null,b))}; var Lia=function(a,b){b=b||_.Re();var c=b.Ec(),d=b.createElement("STYLE");d.type="text/css";b.getElementsByTagName("HEAD")[0].appendChild(d);d.styleSheet?d.styleSheet.cssText=a:d.appendChild(c.createTextNode(a));return d};var Mia=function(){this.H=_.pi()};Mia.prototype.init=function(){var a=this;_.db("_F_installCss",function(b){if(b&&"sentinel{}"!=b){var c=a.H.ua;if(c)if(c=Nia(c),0==c.length)Oia(b,window.document);else{c=_.Ua(c);for(var d=c.next();!d.done;d=c.next())Oia(b,d.value)}else Oia(b,window.document)}},void 0)}; var Oia=function(a,b){var c=b.styleSheets.length,d=Lia(a,new _.Pe(b));d.setAttribute("data-late-css","");b.styleSheets.length==c+1&&_.Qb(b.styleSheets,function(a){return(a.ownerNode||a.owningElement)==d})},Nia=function(a){return(0,_.Fb)(Tha(a),function(a){return a.T})}; (new Mia).init();var Pia=function(){this.H={};this.R=""},Qia={FQa:"k",$Na:"ck",HPa:"m",wOa:"exm",uOa:"excm",tNa:"am",BQa:"rt",ePa:"d",vOa:"ed",UQa:"sv",kOa:"deob",NNa:"cb",PQa:"rs",jOa:"dk",KQa:"sdch"},Tia;Pia.prototype.toString=function(){var a=[],b=(0,_.qb)(function(b){_.$a(this.H[b])&&a.push(b+"="+this.H[b])},this);b("sdch");b("k");b("ck");b("m");b("am");b("rt");"d"in this.H||_.Ria(this,!1);b("d");b("dk");b("exm");b("excm");(this.H.excm||this.H.exm)&&a.push("ed=1");b("rs");b("cb");return this.R+a.join("/")}; _.Sia=function(a,b){return a.H[b]?a.H[b]:null};_.mj=function(a,b,c){c?a.H[b]=c:delete a.H[b]};Tia=function(a,b){a.R=b};_.Ria=function(a,b){_.mj(a,"d",b?"1":"0")};_.Uia=function(a){delete a.H.m;delete a.H.exm;delete a.H.ed;delete a.H.dk};Pia.prototype.clone=function(){return _.Via(this.toString())}; _.Via=function(a){var b=new Pia,c=a.match(_.Ah)[5];_.Qc(Qia,function(a){var d=c.match("/"+a+"=([^/]+)");d&&_.mj(b,a,d[1])});var d=-1!=a.indexOf("_/ss/")?"_/ss/":"_/js/";Tia(b,a.substr(0,a.indexOf(d)+d.length));return b};_.Wia=function(a){a=_.Eh(a);return null!==a&&!!a.match("(/_/js/)|(/_/ss/)")&&!!a.match("/k=")}; _.Yia=function(a){(0,_.Xia)();return _.ne(a)};_.Xia=_.fb;var Zia=function(){};_.q(Zia,tia);Zia.prototype.H=function(){var a=new window.XMLHttpRequest;if("withCredentials"in a)return a;if("undefined"!=typeof window.XDomainRequest)return new $ia;throw Error("S");};Zia.prototype.V=function(){return{}}; var $ia=function(){this.H=new window.XDomainRequest;this.readyState=0;this.onreadystatechange=null;this.responseText="";this.status=-1;this.responseXML=null;this.statusText="";this.H.onload=(0,_.qb)(this.Qna,this);this.H.onerror=(0,_.qb)(this.u5,this);this.H.onprogress=(0,_.qb)(this.Hoa,this);this.H.ontimeout=(0,_.qb)(this.Woa,this)};_.g=$ia.prototype;_.g.open=function(a,b,c){if(null!=c&&!c)throw Error("T");this.H.open(a,b)}; _.g.send=function(a){if(a)if("string"==typeof a)this.H.send(a);else throw Error("U");else this.H.send()};_.g.abort=function(){this.H.abort()};_.g.setRequestHeader=function(){};_.g.getResponseHeader=function(a){return"content-type"==a.toLowerCase()?this.H.contentType:""};_.g.Qna=function(){this.status=200;this.responseText=this.H.responseText;aja(this,4)};_.g.u5=function(){this.status=500;this.responseText="";aja(this,4)};_.g.Woa=function(){this.u5()};_.g.Hoa=function(){this.status=200;aja(this,1)}; var aja=function(a,b){a.readyState=b;if(a.onreadystatechange)a.onreadystatechange()};$ia.prototype.getAllResponseHeaders=function(){return"content-type: "+this.H.contentType}; var oj=function(a){_.gh.call(this);this.Ja=a;this.$=_.Eh(a)||"";this.R=_.Wia(a)?_.Via(a):null;this.ub=nj(this.$,"ver");this.Va=nj(this.$,"am");this.ka=this.wa=null;this.V=new _.Ai(this);this.Fb=[];this.ua=[];this.H=[];this.Ya=new bja;this.T=[];this.Oa=!1;a=(0,_.qb)(this.Ca,this);cj.version=a};_.q(oj,_.gh);var cja=function(a,b){a.H.length&&_.Cg(b,a.H[a.H.length-1]);a.H.push(b);_.Ag(b,function(){_.Vb(this.H,b)},a)}; oj.prototype.ta=function(a,b,c,d,e,f){b=gba(a,(0,_.qb)(function(a){return _.Rb(this.ua,a)},this));var h=b[!1]||[];if(0<(b[!0]||[]).length){this.ua.length=0;if(this.H.length){var k=this.H[this.H.length-1];_.Ag(this.W,function(a){var b=new _.wg;_.Ag(k,(0,_.qb)(b.callback,b));_.Ag(b,function(){return a});return b},this)}var n=new _.wg;this.H.push(n);_.yg(this.W,function(a){window.setTimeout((0,_.qb)(function(){dja(a.code,a.url,d)&&0=B.length){if(w=gja(a,w,f))h.push(w),_.Cg(k,w.af)}else n=r(w,Math.ceil(B.length/2E3)).concat(n);w=n.shift()}var E=new _.wg;cja(a,E);_.Ag(E,(0,_.qb)(a.Wa,a,b,h,c,d,e));_.Bg(E,function(){var a=new pj;a.Sq=!0;a.errorCode=-1;this.Wa(b,[a],c,d,e)},a);_.Ag(k,function(){E.callback()}); k.callback()},gja=function(a,b,c){var d=fja(a,b,!!c);a.Fb.push(d);if(a.Oa)a=_.$e("SCRIPT"),_.Ce(a,_.Yia(d)),a.type="text/javascript",window.document.body.appendChild(a);else{var e=new pj,f=new _.gj(0a.H&&a.R.length;)jja(a,a.R.shift())},jja=function(a,b){a.H++;_.Ag(b(),function(){this.H--;ija(this)},a)},nj=function(a,b){return(a=a.match("/"+b+"=([^/]+)"))?a[1]:null}; var rj,lja;_.qj=[];rj=null;_.kja=function(a){(0,_.Bb)(_.qj,function(b){_.Ei(b,a)})};lja=function(){return(0,_.Fb)(_.qj,function(a){return a.Cm})};_.sj=function(){_.gh.call(this);this.H=null};_.q(_.sj,ki);var tj={latency:"_latency",data:"ZxDaqc",wia:"f_ldtf",Xe:"OJUrvb",request:"wmwg8b",kGa:"YFefCe",Sa:"dodICd",Qd:"XAzchc",lKa:"FCpbqb",mKa:"WhJNk"}; _.sj.prototype.Pe=function(){var a=new Zi;this.H=a;var b=_.pi();b.jaa(!0);this.R();b.XY(a);a.Ca=b;b=_.Mg("Im6cmf").Ra()+"/jserror";Kia(b);b=_.tf(_.Mg("cfb2h").Ra());cj.buildLabel=b;if(rj){b=rj.H;for(var c=0;c<_.qj.length;c++)b.push(_.qj[c])}b=window.BOQ_wizbind;var d=window.document;_.Ji=null;c=b.trigger;b=b.bind;d=new Ci(d,a);c=new Ni(c,d,a);a&&(_.ti.Ib(),_.jh(a,d));a=c.W;b((0,_.qb)(a.$,a));d.R();a=c.$;a=(0,_.qb)(a.R,a);window.wiz_progress=a;Aha(_.Vi.nq,_.Wi);_.Oi({data:Mha,QRa:Mha,Dz:Nha});_.Oi({afdata_o:Mha}); _.Oi({rb:Kha});_.Oi({DTa:Lha});a();a=[_.Uh];_.Vh.Cm=tj.data;_.Vh.H=a;_.Xh.Cm=tj.data;_.Xh.H=a;_.Wh.Cm=tj.data;_.Wh.H=a;_.Efa.Cm=tj.wia;_.Th.Cm=tj.Qd;_.Hfa.Cm=tj.Xe;_.Gfa.H=[_.Th];_.Ifa.Cm=tj.request;_.Uh.Cm=tj.request;_.Jfa.Cm=tj.kGa;_.A.Cm=tj.Sa;_.A.H=[_.Th];mja(this);window.top==window&&window.console&&((0,window.setTimeout)(window.console.log.bind(window.console,"%c%s","color: red; background: yellow; font-size: 24px;","WARNING!")),(0,window.setTimeout)(window.console.log.bind(window.console,"%c%s", "color: black; font-size: 18px;","Using this console may allow attackers to impersonate you and steal your information using an attack called Self-XSS.\nDo not enter or paste code that you do not understand.")))};var mja=function(a){function b(){var a=[tj.Xe,tj.latency,tj.lKa,tj.mKa];rj||_.Zb(a,lja());yga(_.pi(),a);rj||_.kja(c)}var c=a.H;_.qh(window,"load",function(){window.ccTick&&window.ccTick("ol");window.setTimeout(b,0)})};_.pi().t5(_.sj); _.sj.prototype.R=function(){var a=window.location.href,b="",c="";window&&window._F_cssRowKey&&(b=window._F_cssRowKey,window._F_combinedSignature&&(c=window._F_combinedSignature));if(b&&"function"!==typeof window._F_installCss)throw Error("V");var d,e=_.Za._F_jsUrl;e&&(d=hja(e));!d&&(e=window.document.getElementById("base-js"))&&(d=e.src?e.src:e.getAttribute("href"),d=hja(d));d||(d=hja(a));d||(a=window.document.getElementsByTagName("script"),d=hja(a[a.length-1].src));if(!d)throw Error("W");a=new oj(d); b&&(a.wa=b);c&&(a.ka=c);a.Oa=!1;b=_.pi();b.ka=a;b.HY(!0);(b=window.document.getElementById("base-js"))&&(b.src?b.src:b.getAttribute("href")).match("http(s)?://www.gstatic.com/.*")&&_.pi().ka.T.push("www.gstatic.com")};window.BOQ_loadedInitialJS=!0; var nja=function(a){_.x(this,a,0,-1,null,null)};_.q(nja,_.v);_.pja=function(){return!_.oja()&&(_.Pc("iPod")||_.Pc("iPhone")||_.Pc("Android")||_.Pc("IEMobile"))};_.oja=function(){return _.Pc("iPad")||_.Pc("Android")&&!_.Pc("Mobile")||_.Pc("Silk")};_.uj=function(){return!_.pja()&&!_.oja()};_.qja=function(){return _.zd()||_.Pc("iPod")?4:_.Pc("iPad")?5:_.yd()?_.oja()?3:2:_.uj()?1:0};_.rja=I("EAoStd",[_.Th]);_.vj=I("mI3LFb");_.wj=I("mdR7q",[_.Th,_.vj]);_.sja=I("MI6k7c",[_.wj]);_.xj=I("kjKdXe",[_.A,_.Th,_.wj,_.vj]);_.yj=I("XqvODd",[_.vj]);_.tja={};_.zj=function(a,b){var c=_.tja[a];c||(c=_.tja[a]=[]);c.push(b)};_.zj(_.vj,function(a){a.H=new nja;var b=a.H,c=_.qja();_.l(b,1,c);_.l(a.H,3,1);a.T=_.ch()});_.uja=null;_.Aj=function(){};_.q(_.Aj,_.gh);_.Aj.prototype.H=_.ba(27);_.Aj.prototype.R=_.ba(28);_.Aj.prototype.T=_.ba(29);_.vja=function(){};_.q(_.vja,_.Aj);_.vja.prototype.H=_.ba(26);_.pi().Yl(function(a){_.Ag(_.Si(a,[_.Uh],!0)[_.Uh],function(a){a.RC(new _.vja)})});var oea=function(a){_.x(this,a,0,-1,null,null)};_.q(oea,_.v);_.Bj=function(a){_.x(this,a,0,27,wja,null)};_.q(_.Bj,_.v);var wja=[3,20],xja=function(a){_.x(this,a,0,-1,null,null)};_.q(xja,_.v);_.yja=new _.u(175237375,xja);var zja,Bja;_.Cj=function(a){_.x(this,a,0,-1,null,null)};_.q(_.Cj,_.v);_.Aja=function(a){_.x(this,a,0,-1,zja,null)};_.q(_.Aja,_.v);zja=[1];_.Cja=function(a){_.x(this,a,0,-1,Bja,null)};_.q(_.Cja,_.v);Bja=[4,2,3];_.Dj=function(a){_.x(this,a,0,-1,null,null)};_.q(_.Dj,_.v);_.Dj.prototype.Eh=_.ba(32);_.Dj.prototype.ld=function(){return _.y(this,2)};_.Cja.prototype.Eh=_.ba(31);_.Dja=function(a){_.x(this,a,0,-1,null,null)};_.q(_.Dja,_.v);_.Cj.prototype.ri=function(){return _.z(this,_.Aja,19)}; _.Cj.prototype.Xg=_.ba(33);_.Cj.prototype.Oe=function(){return _.z(this,_.Dja,28)};_.Cj.prototype.zv=_.ba(34); _.Hj={s:function(a,b,c){return(0,window.isNaN)(c)||""==c||a.length>=Number(c)?a:a=-1Number(a)?"-":0<=b.indexOf("+")?"+":0<=b.indexOf(" ")?" ":"";0<=Number(a)&&(d=f+d);if((0,window.isNaN)(c)||d.length>=Number(c))return d;d=(0,window.isNaN)(e)?Math.abs(Number(a)).toString():Math.abs(Number(a)).toFixed(e); a=Number(c)-d.length-f.length;0<=b.indexOf("-",0)?d=f+d+(0,_.Dc)(" ",a):(b=0<=b.indexOf("0",0)?"0":" ",d=f+(0,_.Dc)(b,a)+d);return d},d:function(a,b,c,d,e,f,h,k){return _.Hj.f((0,window.parseInt)(a,10),b,c,d,0,f,h,k)}};_.Hj.i=_.Hj.d;_.Hj.u=_.Hj.d; _.Ij=function(){};_.Ij.prototype.H=_.ba(37);_.Ij.prototype.T=_.ba(38);_.Ij.prototype.R=_.ba(39);(function(a,b,c,d){var e=d||{};c&&_.uja===c||(_.zj(_.vj,function(d){var f=_.pea();d.Bz=!!_.y(f,1);null!=_.y(f,2)?d.R=_.y(f,2):e.FSa&&(d.R="https://www.google.com/log?format=json");d.FE=a;c&&_.l(d.H,2,c);d.V=b;void 0!==e.u6&&(d.u6=e.u6);void 0!==e.zL&&(d.zL=e.zL);void 0!==e.transport&&(d.transport=e.transport);void 0!==e.oP&&(d.oP=e.oP);void 0!==e.Pu&&(d.Pu=e.Pu);void 0!==e.LO&&(d.LO=e.LO);void 0!==e.Bz&&(d.Bz=e.Bz);void 0!=e.PJ&&(d.PJ=e.PJ);void 0!=e.GJ&&(d.GJ=e.GJ)}),c&&(_.uja=c))})(32,new _.Ij, 199); _.Jj=I("ws9Tlc");zi(_.Jj,"wI7Sfc");_.Kj=I("wI7Sfc",[_.Jj]);_.Lj=I("lwddkf",[_.Uh,_.Kj]);_.Eja=I("EFQ78c",[_.Uh,_.Lj]);_.Mj=I("L1AAkb",[_.Kj]);_.Fja=I("wGM7Jc");_.Gja=I("VBe3Tb");_.Nj=I("O6y8ed",[_.Th]);_.Oj=I("aW3pY",[_.Mj]);_.Pj=I("V3dDOb");_.Qj=I("v2P8cc",[_.Th,_.Oj]);_.Rj=I("A4UTCb");_.Hja=I("Fbbake",[_.Rj]);_.Ija=I("NTMZac");zi(_.Ija,"Y9atKf");_.Jja=I("Y9atKf",[_.Ija]);_.Kja=I("HXvZFd",[_.A]);zi(_.Kja,"Y9atKf");_.Sj=I("PrPYRd",[_.Ui]);_.Tj=I("hc6Ubd",[_.Sj]);_.Lja=I("QIhFr",[_.Sj]);I("FEWD7",[_.Tj]);_.Uj=I("q0xTif",[_.Jja,_.Sj]);_.Mja=I("F3ZVPc",[_.Kj]);zi(_.Mja,"NtGY3c");_.Nja=I("bQTig",[_.Kj]);zi(_.Nja,"NtGY3c");_.Vj=I("NtGY3c",[_.Mja]);_.Wj=I("SpsfSb",[_.Sj,_.Tj]);zi(_.Wj,"o02Jie");_.Oja=I("e5qFLc");_.Pja=I("pB6Zqd");_.Qja=I("o02Jie",[_.Wj]);_.Xj=I("zbML3c",[_.Pja,_.Qja,_.Vj,_.A,_.Th]);zi(_.Xj,"zemu5");_.Rja=I("Uas9Hd",[_.Xj]);var Tja;_.Sja=I("PVlQOd");zi(_.Sja,"CBlRxf");_.Zj=I("XVMNvd",[_.Kj]);zi(_.Zj,"doKs4c");Tja=I("CBlRxf",[_.Sja]);_.Uja=I("doKs4c",[_.Zj]);_.Vja=I("BVgquf",[Tja,_.Xj]);_.ak=I("SdcwHb",[_.Zj]);zi(_.ak,"CBlRxf");_.Wja=I("pjICDe",[_.Rja,_.Vh,_.Bha,_.Wj,_.Jj,_.Wi,_.Pj,_.Iha,_.Ui,_.Lj,_.ak,_.Oj,_.Vja,_.Xj,_.Kj]);zi(_.Wja,"L7Xww");_.Xja=function(){};_.Ti(_.Xja,Tja,_.Sja);_.Yja=function(){};_.Ti(_.Yja,_.Uja,_.Zj);_.Zja=I("duFQFc",[_.A,_.Sj,_.Kj]);zi(_.Zja,"iWP1Yb");_.$ja=I("GkRiKb");zi(_.$ja,"iWP1Yb");_.aka=I("iWP1Yb",[_.$ja]);_.bk=I("MdUzUe",[_.Nj,_.ak,_.Sj,_.Oj,_.Oja,_.aka]);zi(_.bk,"pB6Zqd");var bka=function(){};_.Ti(bka,_.Pja);bka.nq.V_||Aha(bka.nq,_.bk);_.cka=I("fFdwef",[_.Kj,_.Ui]);_.ck=I("ndJBDc",[_.ak,_.Sj,_.wj]);_.dka=I("nXLOLe",[_.ck]);_.eka=I("xSdFnf",[_.ck,_.Xj]);_.dk=I("I6YDgd",[_.A,_.Nj,_.Oj]);_.ek=I("Sk2cJ",[_.Xj,_.ak,_.Sj,_.Mj,_.xj,_.dk,_.Kj,_.A]);zi(_.ek,"B3Avtd");_.fk=I("vobgP");_.gk=I("fK89vb",[_.A,_.fk]);_.hk=I("D1i5N",[_.ek]);_.fka=I("qWNfQ",[_.hk]);var gka;_.ik=function(){return"_"};_.jk={};_.hka=function(a){a=_.kk(a);return gka(a)};_.kk=function(a){if(!(a instanceof _.v))return""+a;var b=_.$h(a);return _.jk[b]?(0,_.jk[b])(a):"unsupported"};_.lk=function(a){return null!=a?a:"-"};gka=function(a){return a.replace(/[;\s\|\+]/g,function(a){return"|"+a.charCodeAt(0)+"+"})};_.mk=function(a){var b=_.$h(a);a=_.lb(a)?"":_.hka(a);return{Qa:b,id:a,Hq:b+";"+a}}; _.nk=function(){this.H=[];this.R=[]};_.g=_.nk.prototype;_.g.Yf=function(){return this.H.length+this.R.length};_.g.Ge=function(){return _.Sb(this.H)&&_.Sb(this.R)};_.g.clear=function(){this.H=[];this.R=[]};_.g.contains=function(a){return _.Rb(this.H,a)||_.Rb(this.R,a)};_.g.remove=function(a){var b=this.H;var c=(0,_.Ab)(b,a);0<=c?(_.Ub(b,c),b=!0):b=!1;return b||_.Vb(this.R,a)}; _.g.Of=function(){for(var a=[],b=this.H.length-1;0<=b;--b)a.push(this.H[b]);var c=this.R.length;for(b=0;bJoralemon Street Apartments - Google+
Joralemon Street Apartments
The Art in Bloom 10th Anniversary Exhibition is coming up soon! It's a celebration of floral design inspired by art and sure to be a beautiful event! Don't miss out--get your tickets today! Art in Bloom 10th Anniversary Exhibition May 16–20, 2018 http://bit.ly/2FLSL8s
Celebrate Saint Patrick's Day with this fun and delicious Irish soda bread! It's perfect for parties and festivities, so try out the recipe today! How To Make Irish Soda Bread — Baking Lessons from The Kitchn http://bit.ly/2FIt2hs
Bring a little spring into your space with these fun and easy French country spring decorating ideas and looks! They're sure to put a smile on anyone's face, so try them out in your home today! Step By Step - French Country Spring Decorating Ideas - shabbyfufu.com http://bit.ly/2FpVyrW
Little ones and parents alike are sure to love Studio Playhouse's upcoming production of Stuart Little, starring everyone's favorite mouse on a mission! You won't want to miss out--get your tickets today! Stuart Little http://bit.ly/2FpDAG6
Joralemon Street Residents, Due to the inclement weather, the Joralemon Street offices will be closing today, March 7, 2018, at 3pm. If there is a power outage at the property, please call PSE&G at 1-800-436-7734. If you have a maintenance emergency, please call the emergency maintenance line at 201-978-7062. We anticipate reopening tomorrow for regular business hours. Be safe and warm! The Staff at Joralemon Street Apartments
All of our favorite foods in one! Would you make these? Best Avocado Crab Boat Recipe http://bit.ly/2F8UpEZ
The weather's been warm, but there's still time for winter fun! Can you ice skate? 38% off at Clary Anderson Arena http://gr.pn/2CUjopB
Looking for the perfect pup for your family? Check out these adorable mixed breed dogs that you can't help but love! Which furry friend will you give a new home to? 15 Adorable Mixed Breed Dogs You'll Fall in Love With http://bit.ly/2ozmhXY
Hitting a decorating snag? We've all been there! Check out these tips and tricks to overcoming the common decorating conundrums so you can pick up and move onto the next great project! 10 Decorating Conundrums We All Have, Solved by an Interior Designer http://bit.ly/2F2aUlu
Chocolate covered strawberries are always the right answer! Check out this delicious and romantic dish and try it out for dessert today! Best Chocolate Covered Strawberry Bites Recipe http://bit.ly/2Bu6bqs

value: This website .


text:
Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See moreDownloadStandard viewFull view of .Add to collectionMark as finishedMarked as finished. UndoRemove from libraryLook up keyword or sectionLike thisShare on social networks0Activity×Share to your social networks.TweetEmbedTable Of Contents0onstru(tions and Di ergen(es2i1e and Death "mong the .orlo(ks5otations "nd De(eptions7onest) and Dou't8nd then the .tormfell on us9or#ard in Time0 of .Results for: No results containing your search query{{& result_text }}
P. 1Baxter Stephen - The Time ShipsBaxter Stephen - The Time ShipsRatings: (0)|Views: 60
|Likes: 3Published by anuiscoolMore info:Categories:Topics, Books - Fiction, Science Fiction & FantasyPublished by: anuiscool on Jul 17, 2012Copyright:Attribution Non-commercialAvailability:Read on Scribd mobile: iPhone, iPad and Android.download as DOC, PDF, TXT or read online from ScribdFlag for inappropriate content|Add to collectionSee moreSee lesshttps://www.scribd.com/doc/100291769/Baxter-Stephen-The-Time-Ships08/14/2014pdftextoriginal You're Reading a Free Preview
2010russia Military Doctrine
A Ruby eBook
ebook for difficult eng
Critical and Opportunity Analysis of Automation and IT in...

type: global

value: This website is an American e-book and audiobook subscription service that includes one million titles.


text:
Patent US20070214320 - Multi-cache cooperation for response output caching - Google PatentsSearch Images Maps Play YouTube News Gmail Drive More »Sign inAdvanced Patent SearchPatentsCaching data. A method may be practiced, for example, in a computing environment including a server system that provides data to client systems. The server system includes a number of caches for storing data. The method allows a least expensive cache to first cache data or return data requested by a...http://www.google.com/patents/US20070214320?utm_source=gb-gplus-sharePatent US20070214320 - Multi-cache cooperation for response output cachingAdvanced Patent SearchPublication numberUS20070214320 A1Publication typeApplicationApplication numberUS 11/370,585Publication dateSep 13, 2007Filing dateMar 8, 2006Priority dateMar 8, 2006Also published asCN101401079A, CN101401079B, EP2002343A2, EP2002343A4, EP2002343B1, US7685367, WO2007102969A2, WO2007102969A3Publication number11370585, 370585, US 2007/0214320 A1, US 2007/214320 A1, US 20070214320 A1, US 20070214320A1, US 2007214320 A1, US 2007214320A1, US-A1-20070214320, US-A1-2007214320, US2007/0214320A1, US2007/214320A1, US20070214320 A1, US20070214320A1, US2007214320 A1, US2007214320A1InventorsAnil Ruia, Erik Olson, Michael VolodarskyOriginal AssigneeMicrosoft CorporationExport CitationBiBTeX, EndNote, RefManReferenced by (1), Classifications (8), Legal Events (3) External Links: USPTO, USPTO Assignment, EspacenetMulti-cache cooperation for response output caching
US 20070214320 A1Abstract
Caching data. A method may be practiced, for example, in a computing environment including a server system that provides data to client systems. The server system includes a number of caches for storing data. The method allows a least expensive cache to first cache data or return data requested by a client. The method includes receiving data to be cached at a cache. The method further includes determining that the data has not been previously cached at a preceding cache. If the data has not been previously cached at a preceding cache the data is cached at the cache. Alternatively, requests for data may be received at a first cache. If the data is at the first cache, the first cache returns the data. If the data is not at the first cache, the request for data is forwarded to a subsequent cache. Images(5) Claims(20)
1. In a computing environment including a server system that provides data to client systems, the server system comprising a plurality of caches for storing data, a method of caching data, at a least expensive cache first, requested by a client, the method comprising acts of: receiving data to be cached at a cache (302); determining that the data has not been previously cached at a preceding cache (304); and if the data has not been previously cached at a preceding cache as determined in the step of determining that the data has not been previously cached, caching the data at the cache (306). 2. The method of claim 1, wherein the preceding cache is a less costly cache than the cache. 3. The method of claim 1, further comprising forwarding the data to a subsequent cache. 4. The method of claim 3, wherein the subsequent cache is a more costly cache than the cache. 5. The method of claim 1, further comprising: determining if the cache includes functional capability for caching the data; and wherein caching the data at the cache is performed if the cache includes functional capability for caching the data. 6. The method of claim 5, wherein determining if the cache includes functional capability for caching the data comprises comparing the functional capability of the cache with a common set of settings in an object applicable to the plurality of caches. 7. The method of claim 5, wherein determining if the cache includes functional capability for caching the data comprises comparing the functional capability of the cache with a set of coordinated settings applicable to the plurality of caches. 8. The method of claim 1 further comprising: determining if the data should be cached by consulting a cache policy; and wherein caching the data at the cache is performed if the cache policy indicates that the data should be cached. 9. The method of claim 1, wherein receiving data to be cached at a cache comprises receiving the data from a preceding cache. 10. The method of claim 2, wherein the cache is a web server cache and the subsequent cache is an application level cache. 11. The method of claim 2, wherein the cache is a native cache and the subsequent cache is a managed cache. 12. In a computing environment including a server system that provides data to client systems, the server system comprising a plurality of caches for storing data, a method of providing cached data requested by a client by retrieving the data from less expensive caches first, the method comprising acts of: receiving a request for data at a cache (402); determining if the data is available at the cache (404); if the data is available at the cache, returning the requested data (406); and if the data is not available at the cache, forwarding the request to a subsequent cache (408). 13. The method of claim 12, wherein the cache is faster than the subsequent cache. 14. The method of claim 12, further comprising generating or retrieving the data from a location other than the plurality of caches if the data is not available at the plurality of caches. 15. The method of claim 14, further comprising: providing the data to the cache; determining that the data has not been previously cached at a preceding cache from among the plurality of caches; and if the data has not been previously cached at the preceding cache from among the plurality of caches as determined in the step of determining that the data has not been previously cached, caching the data at the cache. 16. The method of claim 14, wherein generating or retrieving the data comprises providing cache policy information to the plurality of caches specifying data that should be cached at the plurality of caches. 17. A computer readable medium having a plurality of data structures stored thereon, the plurality of data structures comprising: a plurality of caches (206), comprising: a first cache (108-1) having a first speed; and a second cache (108-2) coupled subsequently to the first cache, the second cache having a second speed that is slower than the first cache, wherein by being subsequently coupled to the first cache, the first cache receives data and requests for data prior to the second cache; and a policy object (108), wherein the policy object defines settings for the plurality of caches. 18. The computer readable medium of claim 17, further comprising computer executable instructions for generating and/or retrieving data. 19. The computer readable medium of claim 17, further comprising computer executable instructions for generating policy information to be stored in the policy object. 20. The computer readable medium of claim 17, wherein the second cache being coupled subsequently to the first cache allows data and requests for data to be sent from the first cache to the second cache.
BACKGROUND 1. Background and Relevant Art Computers and computing systems have affected nearly every aspect of modern living. Computers are generally involved in work, recreation, healthcare, transportation, entertainment, household management, etc. The functionality of computers has also been enhanced by their ability to be interconnected through various network connections. Computing systems may request data from other systems. This data may be obtained in a number of different ways. For example, data may be obtained by retrieving the data from a repository such as a database or other data store. Data may also be created dynamically by a system providing data. For example, asp.NET available from Microsoft Corporation of Redmond Wash. includes tools for dynamically creating web page data. Even an ordinary web server includes functionality for receiving arguments with a web page request for providing customized web page data based on the arguments in the web page request. One way to increase performance of computing systems is by output caching requested data. Caching involves storing recently requested data in a location that is quickly retrievable when a subsequent request is made for the same data. For example, data may be cached in a physical memory of a computer system such that the data can be very quickly retrieved. Various caching algorithms have been created to determine how the cached data is stored and retained. For example FIFO is an acronym for first in first out. In this scheme, data is cached in the cache location and when room needs to be created for additional cache items, the oldest items are removed from cache. Other schemes use predictive filters to determine what is cached and for how long. Often, individual components of a computer system will each have their own cache components. For example, in the web server context, a stack exists with the operating system at the bottom of the stack, a web server on top of the operating system, and applications on top of the web server. One example of this is Windows operating system hosting an IIS server hosting an asp.NET framework, all available from Microsoft Corporation of Redmond Wash. Each of the operating system, web server and applications include each their own cache. If each of these individual components cache data when working together to provide data to a client, redundant caching may be performed. This may result in resources being wasted. For example, by retaining redundant cached items in physical memory, the amount of physical memory available for caching other items is substantially reduced. The subject matter claimed herein is not limited to embodiments that solve any disadvantages or that operate only in environments such as those described above. Rather, this background is only provided to illustrate one-exemplary technology area where some embodiments described herein may be practiced. BRIEF SUMMARY One embodiment is directed to a method of caching data. The method may be practiced, for example, in a computing environment including a server system that provides data to client systems. The server system includes a number of caches for storing data. The method allows a least expensive cache to first cache data requested by a client. The method includes receiving data to be cached at a cache. The method further includes determining that the data has not been previously cached at a preceding cache. If the data has not been previously cached at a preceding cache the data is cached at the cache. Another embodiment described herein is directed to retrieving data from a cache. The method may be practiced for example, in a computing environment including a server system that provides data to client systems. The server system includes a number of caches for storing data. The method allows data to be retrieved from less expensive caches first. The method includes receiving a request for data at a cache. The method further includes determining if the data is available at the cache. If the data is available at the cache, the requested data is returned. If the data is not available at the cache, the request is forwarded to a subsequent cache. Another embodiment described herein is directed to a computer readable medium having a number of data structures stored thereon. The number of data structures includes a number of caches including a first cache having a first speed and a second cache coupled subsequently to the first cache. The second cache has a second speed that is slower than the first cache. By being subsequently coupled to the first cache, the first cache receives data and requests for data prior to the second cache. The data structures further include a policy object. The policy object defines settings for the plurality of caches. This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter. Additional features and advantages will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by the practice of the teachings herein. Features and advantages of the invention may be realized and obtained by means of the instruments and combinations particularly pointed out in the appended claims. Features of the present invention will become more fully apparent from the following description and appended claims, or may be learned by the practice of the invention as set forth hereinafter. BRIEF DESCRIPTION OF THE DRAWINGS In order to describe the manner in which the above-recited and other advantages and features can be obtained, a more particular description of the subject matter briefly described above will be rendered by reference to specific embodiments which are illustrated in the appended drawings. Understanding that these drawings depict only typical embodiments and are not therefore to be considered to be limiting in scope, embodiments will be described and explained with additional specificity and detail through the use of the accompanying drawings in which: FIG. 1 illustrates a hierarchical organization of caches; FIG. 2 illustrate a pipeline of activities for caching and requesting data; FIG. 3 illustrates a method of caching data; and FIG. 4 illustrates a method of retrieving cached data. DETAILED DESCRIPTION Embodiments herein may comprise a special purpose or general-purpose computer including various computer hardware, as discussed in greater detail below. One embodiment described herein includes a cache topology where caches are connected with one another in a hierarchical fashion. In the topology, the fastest and/or least expensive caches are accessed first for either caching data or for retrieving cached data. If a particular cache is unable to cache a given set of data, or the given set of data is not available at the cache, the data, or request for data is passed to a subsequent cache. The subsequent cache may be slower or more expensive, but may include the functionality for caching the given set of data. The cache topology may include any appropriate number of caches connected in the hierarchical fashion, with the faster and/or cheaper caches being accessible before the slower and/or more expensive caches. In one embodiment, policy information defining data to be cached may be available to the caches in the hierarchy. Thus, the caches in the hierarchy can reference the policy information, along with assessing the caches individual capabilities in determining if a given set of data should be cached at the cache. Referring now to FIG. 1, an illustrative example is shown where a cache topology 100 includes a number of caches 102-1, 102-2, and 102-N in a hierarchical arrangement. In the example shown a request for cached data 104 or data 106 to be cached may be sent to the first cache 102-1. For simplicity in explanation, a first example will now be given for the case when data 106 is sent to the first cache 102-1. When the data 106 is sent to the first cache 102-1 the first cache 102-1 can determine what type of data is being sent. The first cache 102-1 can then reference policy information 108 to determine if the data 106 should be cached. If the data 106 should be cached, the first cache 102-2 can then evaluate its own capabilities for caching data. If the data 106 is of a type that can be cached at the cache 102-1, then the data 106 will be cached at the first cache 102-1. On the other hand, if the data is not of a type that can be cached by the cache 102-1, then the data will be forwarded to a second cache 102-2. The second cache 102-2 will perform similar actions to those performed by the first cache 102-1, such as referencing the policy information 108 to determine if the data 106 should be cached and evaluating its own capabilities to determine if it is able to cache the data 106. This process can be continued onto other caches represented by the ellipsis and 102-N until a cache has cached the data 106 or no caches have cached the data 106 after having been presented with the data 106. A similar process may be performed for retrieving data. For example, a request for cached data 104 may be sent to the first cache 102-1. If the first cache 102-1 has the cached data, the cached data will be returned from the first cache 102-1. If the first cache 102-1 does not have the cached data, the first cache 102-1 will pass the request for cached data 104 to the second cache 102-2. This process can be continued through the caches represented by the ellipsis and 102-N. As described previously, the fastest and/or least expensive cache may be the first cache 102-1 with the subsequent cache being slower and/or more expensive caches. For example, in one embodiment, the first cache 102-1 may be a cache for a lower level component such as a webserver. The second cache 102-2 may be a cache for a higher level component such as an application level component such as for example ASP.net available for Microsoft corporation of Redmond Wash. In this example, the first cache 102-1 may be a native cache and the second cache 102-2 a managed cache. Native caches typically are faster and cheaper than managed caches. As described previously, FIG. 1 illustrates a cache policy 108. In some embodiments, the cache policy may include policy settings for each of the caches. For example, the cache policy may include a cache policy 108-1, 108-2, and 108-N which correspond to the caches 102-1, 102-2, and 102-N. The cache policies 108-1, 108-2, and 108-N, maybe interconnected such that all cache settings are known within the cache policy 108. This allows any cache that is able, to cached data 106. Thus, the fastest and/or cheapest cache may be used to cache data when it is able to do so based on the caches capabilities and the cache policy 108 including the cache policy for each of the caches. In alternative embodiments, the cache policy 108 may be a generalized shared configuration that each of the caches 102-1, 102-2, and 102-N are able to reference. As such, the first cache of that has the capabilities to store data 106 as specified by the cache policy 108 will store the data 106. When a cache has stored the data 106, the data 106 may be marked such that subsequent caches do not attempt to cache the data 106. In one embodiment, this may be accomplished by simply marking the data 106 as data that should not be cached. In this way, the caches 102-1, 102-2, and 102-N do not need to be designed to specifically communicate with one another. Rather a preceding cache can mark data 106 as data that should not be cached thus preventing subsequent caches from caching the data. Additionally, the model shown in FIG. 1 is highly extensible in that any number of subsequent caches can be added without the need to specially design the caches to communicate together. Referring now to FIG. 2, a workflow pipeline 200 is illustrated. The workflow pipeline 200 illustrates a request 202 being received. The request 202 maybe for example a request from a client system connected to a server system. If the request 202 can be handled by an output cache, then computing resources can be conserved by providing a response to the request 202 from a cache rather than regenerating or re-fetching the response through more expensive computing and/or network operations. Additionally, even if the response to the request 202 is not available in cache, in certain situations, the response to the request can be generated through various processes and events described in more detail below herein such that the response to the request can then be stored in cached and subsequently made available to clients requesting data in the response. A resolve cache function 204 may be performed when the request 202 is received. The resolve cache function 202 allows cached data to be returned from the caches 206 when the response to the request 202 is available in the caches 206. To obtain a cached response to the request 202, a request for cached data 104 is sent. In the embodiment shown in FIG. 2, the request for cached data 104 may be sent to the first cache 102-1 which as described above maybe a faster and/or cheaper cache. If the first cache 102-1 includes the response to the request 202 then the first cache 102-1 may return the response and prevent the request for cached data 104 from continuing to subsequent caches such as the caches 102-2 and 102-N. If the response to the request 202 is not available in the first cache 102-1 then the request for cached data 104 may be passed to a subsequent cache as described above the in conjunction with the description of FIG. 1. As described previously, subsequent caches can continue to check for a response to the request 202 until a response is found or until each of the caches has been checked for a response. FIG. 2 illustrates the decision block 208. The decision block 208 indicates that if a response is stored in one of the caches, then the response is sent to a client as indicated at 210. If a response is not stored in one of the caches, then various actions may be performed as illustrated at the events 212 to generate or retrieve a response from another location. As mentioned, FIG. 2 illustrates events 212. Events may be various activities that are performed to generate data as a response to the request 202 and/or to obtain data in response to the request 202. For example, the events 212 may include activities performed by an application level component such as asp.NET. Events 212 may include database retrieval functions for gathering data stored in a database to be used as data to satisfy the request 202. Some embodiments allow events to be performed at any appropriate level. For example, events 212 may be performed at a kernel level, a system level, and/or an application level. FIG. 2 further illustrates an update cache action 214. When data has been generated or retrieved by the events 212, the data may be stored in one of the caches 206. This allows the data to be used as a response to a subsequent request requesting the data. As described previously, the data 106 may be sent to a first cache 102-1. The first cache 102-1 references the cache policy 108. If the cache policy 108 dictates that the data 106 should be cached and the first cache 102-1 is able to cache the data 106, then the first cache 102-1 caches the data 106. Then the first cache 102-1 indicates to subsequent caches that the data 106 should not be cached. In one embodiment, this may be accomplished by marking the data 106 as data that should not be cached. Alternatively, the first cache 102-1 may send a separate message to subsequent caches, such as caches 102-2 and 102-N to not cache the data 106. FIG. 2 further illustrates a handler 216. The handler 216 may be associated with computer hardware and software represented at the events 212. The handler 216 is able to provide policy information to the cache policy 108. In particular, the handler 216 may have information available defining what particular types of data should be cached when generated by the events 212. This information can be conveyed to the cache policy 108 by the handler 216. Referring now to FIG. 3, a method 300 is illustrated for storing data. The method 300 may be practiced for example in a computing environment including a server system that provides data to client systems. The server system includes a number of caches for storing data. The method 300 includes a number of acts. For example, the method 300 includes receiving data to be cached at a cache (act 302). The method 300 further includes determining that the data has not been previously cached at a preceding cache (act 304). If the data has not been previously cached at a preceding cache, the method 300 illustrates determining if the cache policy allows the data to be cached at this cache (act 305). If the cache policy allows the data to be cached at this cache, the method 300 illustrates that the data is cached at the cache (act 306). Other wise, the data is not cached at the cache (308). Some embodiments allow for the data to be forwarded to a subsequent cache. The data may be marked such that subsequent caches do not cache the data. For example, the data may be marked as data not to be cached so that subsequent caches do not cache the data. Alternatively, the cache may communicate to subsequent caches that the data should not be cached. As described previously herein, the preceding cache may be a less costly cache than the cache. For example, as shown in FIG. 1, the first cache 102-1 may be less costly in that it is a faster cache or requires less resources than the second cache 102-2. In a similar vein, the subsequent cache may be a more costly cache than the cache. As such, the less costly and/or fastest caches have an opportunity to store data before more costly and/or slower caches. The method 300 may further include determining if the cache includes functional capability for caching the data. This may be performed at act 305 in one example. If the cache includes functional capability for caching the data then caching the data at the cache (act 306) is performed. For example, and referring once again to FIG. 1, the first cache 102-1 can reference the cache policy 108 to determine what types of data should be cached. The first cache 102-1 can then reference its own caching capabilities to determine if it has the capabilities to cache the data. As such, determining if the cache includes functional capability for catching the data may include comparing the functional capability of the cache with a common set of settings in an object, such as the cache policy 108, applicable to the number of caches. As described previously, determining if the cache includes functional capability for caching the data may include comparing the functional capability of the cache with a set of coordinated settings applicable to the plurality of caches. The coordinated settings may be a collection of individual setting for each of the caches in the plurality of caches that are able to share information. As such, a preceding cache may use policy settings from a subsequent cache in determining if the preceding cache is able to cache data. The method 300 may include determining if the data should be cached by consulting a cache policy and caching the data at the cache (act 306) if the cache policy indicates that the data should be cached. This may be performed for example at act 305. As described above, the cache policy 108 includes information dictating what types of data should be cached at the caches in the plurality of caches. The method 300 may be such that receiving data to be cached at a cache comprises receiving the data from a preceding cache. For example, a cache may receive the data from a preceding cache if the preceding cache is not able to cache the data due to functional limitations. As described previously, the caches may have varying functionalities where faster caches are accessed prior to slower caches. As such, in one embodiment, the cache may be a web server cache and the subsequent cache may be an application level cache. Similarly, the cache may be a native cache and the subsequent cache may be a managed cache. Referring now to FIG. 4, a method 400 is illustrated. The method may be practiced for example in a computing environment including a server system that provides data to client systems. The server system includes a number of caches for storing data. The method includes various acts for providing cached data requested by a client. The method includes receiving a request for data at a cache (act 402). For example, as illustrated in FIG. 2, a request 104 may be received. The method further includes determining if the data is available at the cache (act 404). For example, the first cache 102-1 if the data are requested by the request for data 104 is available at the first cache 102-1. If the data is available at the cache, the requested data is returned (act 406). For example, FIG. 2 illustrates sending a response to the client 210. If the data is not available at the cache, the request is forwarded to a subsequent cache (act 408). For example, the request 104 may be forwarded to the second cache 102-2. As described in other embodiments herein, the cache may be faster than subsequent cache. The method of claim 400 may further include generating or retrieving the data from a location other than the plurality of caches if the data is not available at the plurality of caches. For example, as illustrated in FIG. 2, various actions may be performed as illustrated by the events 212 to generate the data or to retrieve the data such as from a database or other data source. When data has been retrieved or generated, the method 400 may further include acts for providing the data to the cache, determining that the data has not been previously cached at a preceding cache from among the number of caches, and if the data has not been previously cached at the preceding cache from among the number of caches as determined in the step of determining that the data has not been previously cached, caching the data at the cache. Additionally, generating or retrieving the data may include providing cache policy information to the plurality of caches specifying data that should be cached at the plurality of caches. Embodiments may also include computer-readable media for carrying or having computer-executable instructions or data structures stored thereon. Such computer-readable media can be any available media that can be accessed by a general purpose or special purpose computer. By way of example, and not limitation, such computer-readable media can comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to carry or store desired program code means in the form of computer-executable instructions or data structures and which can be accessed by a general purpose or special purpose computer. When information is transferred or provided over a network or another communications connection (either hardwired, wireless, or a combination of hardwired or wireless) to a computer, the computer properly views the connection as a computer-readable medium. Thus, any such connection is properly termed a computer-readable medium. Combinations of the above should also be included within the scope of computer-readable media. Computer-executable instructions comprise, for example, instructions and data which cause a general purpose computer, special purpose computer, or special purpose processing device to perform a certain function or group of functions. Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims. The present invention may be embodied in other specific forms without departing from its spirit or essential characteristics. The described embodiments are to be considered in all respects only as illustrative and not restrictive. The scope of the invention is, therefore, indicated by the appended claims rather than by the foregoing description. All changes which come within the meaning and range of equivalency of the claims are to be embraced within their scope. Referenced byCiting PatentFiling datePublication dateApplicantTitleUS8996807Nov 2, 2011Mar 31, 2015Intelligent Intellectual Property Holdings 2 LlcSystems and methods for a multi-level cacheClassifications U.S. Classification711/119, 711/E12.043, 711/E12.024International ClassificationG06F12/00Cooperative ClassificationG06F12/0811, G06F12/0897European ClassificationG06F12/08B22L, G06F12/08B4LLegal EventsDateCodeEventDescriptionMar 30, 2006ASAssignmentOwner name: MICROSOFT CORPORATION, WASHINGTONFree format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:RUIA, ANIL K.;OLSON, ERIK B.;VOLODARSKY, MICHAEL;REEL/FRAME:017390/0627;SIGNING DATES FROM 20060306 TO 20060307Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:RUIA, ANIL K.;OLSON, ERIK B.;VOLODARSKY, MICHAEL;SIGNINGDATES FROM 20060306 TO 20060307;REEL/FRAME:017390/0627Owner name: MICROSOFT CORPORATION,WASHINGTONFree format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:RUIA, ANIL K.;OLSON, ERIK B.;VOLODARSKY, MICHAEL;SIGNINGDATES FROM 20060306 TO 20060307;REEL/FRAME:017390/0627Owner name: MICROSOFT CORPORATION,WASHINGTONFree format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:RUIA, ANIL K.;OLSON, ERIK B.;VOLODARSKY, MICHAEL;SIGNED BETWEEN 20060306 AND 20060307;US-ASSIGNMENT DATABASE UPDATED:20100323;REEL/FRAME:17390/627Aug 26, 2013FPAYFee paymentYear of fee payment: 4Dec 9, 2014ASAssignmentOwner name: MICROSOFT TECHNOLOGY LICENSING, LLC, WASHINGTONFree format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MICROSOFT CORPORATION;REEL/FRAME:034543/0001Effective date: 20141014RotateOriginal ImageGoogle Home - Sitemap - USPTO Bulk Downloads - Privacy Policy - Terms of Service - About Google Patents - Send FeedbackData provided by IFI CLAIMS Patent Services

value: This website is a search engine provided by Google. Handling over 3.5 billion searches per day, it has a 92% share of the global search engine market.


text:
Madison Park Brianna 6-piece Coverlet Set Sale $72.89 Was $80.99 Compare $137.99 Save 47% (82) MiZone Mackenzie 4-piece Comforter Set Sale $38.69 Was $42.99 Compare $107.04 Save 64% (23) Madison Park Brianna 9-piece Bed in a Bag with Sheet Set Today $119.99 (33) Floral 8-piece Comforter Set Sale $98.99 Was $109.99(28) Mizone Mackenzie Yellow/Grey Patterned Polyester 4-piece Quilt Set Sale $50.38 Was $55.98 Compare $86.22 Save 42% (96) Perry Ellis Asian Lilly 3-Piece Comforter Set Sale $116.72 Was $129.69 Compare $135.98 Save 14% (271) Madison Park 'Brianna' Contemporary 6-piece Duvet Cover Set Sale $85.49 Was $94.99 Compare $131.99 Save 35% (133) Madison Park Athena 7-piece Comforter Set Sale $98.99 Was $109.99 Compare $136.49 Save 27% (143) Madison Park Mason 7-piece Comforter Set Sale $105.10 Was $116.78 Compare $155.99 Save 33% (54) Glendale Embroidered 8-piece Comforter Set Sale $84.76 Was $94.18 Compare $133.99 Save 37% (15) Carmen 4-piece Comforter Set Sale $44.99 Was $49.99(373) Madison Park Bridgette Floral-pattern Cotton 7-piece Comforter Set Sale $89.99 Was $99.99 Compare $114.99 Save 22% (91) Madison Park Lafayette 7-piece Comforter Set Sale $98.99 Was $109.99(53) Madison Park Vivian Polyester Solid Tufted 7-piece Comforter Set Sale $85.49 Was $94.99 Compare $122.02 Save 30% (129) Madison Park Randall 7-piece Comforter Set Sale $105.10 Was $116.78 Compare $139.97 Save 25% (83) Mizone Blythe Yellow/Grey 4-piece Comforter Set Today $37.03 Compare $51.44 Save 28% (21) Vermont 8-piece Comforter Set Today $89.99 Compare $94.97 Save 5% (2) Chateau 9-piece Comforter Set Sale $122.39 Was $135.99(32) Next Sponsored Links What's This?
http://www.overstock.com/Bedding-Bath/Madison-Park-Brianna-7-piece-Comforter-Set/6319607/product.html?recommendation_id=662add88-8f9a-4eac-bbdb-cd30d4a58cd5&rcmndsrc=2&atcError=3

value: This website is an American internet retailer selling primarily furniture headquartered in Midvale, Utah, near Salt Lake City.


text: LeRoy A. Williams Guest Book: sign their guest book, share your condolences, or read their obituary at South Jersey Times

value: This website is a United States-based website founded in 1998, the world's largest commercial provider of online memorials. The Web site hosts obituaries and memorials for more than 70 percent of all U.S. deaths.