MACYS.namespace("MACYS.util");MACYS.util.cache=function(A){if(A===undefined){this._exp=30*60*1000}else{this._exp=A}this._dict={};this._fireComplete=true};MACYS.util.cache.prototype.get=function(D,A,B,E,C){if(this._dict[D]){if(this.isExpired(D)){this._dict[D]=undefined}else{B.apply(E,[this._dict[D][0]]);return }}this._handler=B;this._handlerObj=E;if(C){A.apply(C,[D,this.fetched,this])}else{A.apply(E,[D,this.fetched,this])}};MACYS.util.cache.prototype.set=function(A,B){var C=new Date();this._dict[A]=[B,C.getTime()]};MACYS.util.cache.prototype.fetched=function(A){var B=new Date();this._dict[A.argument]=[A.responseText,B.getTime()];this._handler.apply(this._handlerObj,[A.responseText])};MACYS.util.cache.prototype.isExpired=function(A){var B=new Date();if(this._dict[A][1]>(B.getTime()-this._exp)){return false}return true};MACYS.util.cache.prototype.getList=function(B,A,C,E){this._origList=B;this._listResult=new Array();this._listHandler=C;this._listHandlerObj=E;for(var D=0;D<B.length;D++){this.get(B[D],A,this.listHandler,this,E)}};MACYS.util.cache.prototype.listHandler=function(B){this._listResult.push(B);if(this._origList.length==this._listResult.length){var C=new Array();for(var A=0;A<this._origList.length;A++){C.push(this._dict[this._origList[A]][0])}this._listHandler.apply(this._listHandlerObj,[C])}};