function obj2str(o){
var r = [];
if(typeof o =="string") return """ o.replace(/(['"\])/g,"\$1").replace(/(n)/g,"\n").replace(/(r)/g,"\r").replace(/(t)/g,"\t") """;
if(typeof o == "object"){
if(!o.sort){
for(var i in o)
r.push(i ":" obj2str(o[i]));
if(!!document.all && !/^n?functions*toString()s*{n?s*[native code]n?s*}n?s*$/.test(o.toString)){
r.push("toString:" o.toString.toString());
}
r="{" r.join() "}"
}else{
for(var i =0;ir.push(obj2str(o[i]))
r="[" r.join() "]"
}
return r;
}
return o.toString();
}