(function($){function toIntegersAtLease(n) {return n<10?'0'+n:n;} Date.prototype.toJSON=function(date) {return this.getUTCFullYear()+'-'+ toIntegersAtLease(this.getUTCMonth())+'-'+ toIntegersAtLease(this.getUTCDate());};var escapeable=/["\\\x00-\x1f\x7f-\x9f]/g;var meta={'\b':'\\b','\t':'\\t','\n':'\\n','\f':'\\f','\r':'\\r','"':'\\"','\\':'\\\\'};$.quoteString=function(string) {if(escapeable.test(string)) {return'"'+string.replace(escapeable,function(a) {var c=meta[a];if(typeof c==='string'){return c;} c=a.charCodeAt();return'\\u00'+Math.floor(c/16).toString(16)+(c%16).toString(16);})+'"';} return'"'+string+'"';};$.toJSON=function(o,compact) {var type=typeof(o);if(type=="undefined") return"undefined";else if(type=="number"||type=="boolean") return o+"";else if(o===null) return"null";if(type=="string") {return $.quoteString(o);} if(type=="object"&&typeof o.toJSON=="function") return o.toJSON(compact);if(type!="function"&&typeof(o.length)=="number") {var ret=[];for(var i=0;i<o.length;i++){ret.push($.toJSON(o[i],compact));} if(compact) return"["+ret.join(",")+"]";else return"["+ret.join(", ")+"]";} if(type=="function"){throw new TypeError("Unable to convert object of type 'function' to json.");} var ret=[];for(var k in o){var name;type=typeof(k);if(type=="number") name='"'+k+'"';else if(type=="string") name=$.quoteString(k);else continue;var val=$.toJSON(o[k],compact);if(typeof(val)!="string"){continue;} if(compact) ret.push(name+":"+val);else ret.push(name+": "+val);} return"{"+ret.join(", ")+"}";};$.compactJSON=function(o) {return $.toJSON(o,true);};$.evalJSON=function(src) {return eval("("+src+")");};$.secureEvalJSON=function(src) {var filtered=src;filtered=filtered.replace(/\\["\\\/bfnrtu]/g,'@');filtered=filtered.replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,']');filtered=filtered.replace(/(?:^|:|,)(?:\s*\[)+/g,'');if(/^[\],:{}\s]*$/.test(filtered)) return eval("("+src+")");else throw new SyntaxError("Error parsing JSON, source is not valid.");};})(jQuery);