function sevenhills_debug_object(obj){"use strict";var html=arguments[1]?arguments[1]:false;var recursive=arguments[2]?arguments[2]:false;var showMethods=arguments[3]?arguments[3]:false;var level=arguments[4]?arguments[4]:0;var dispStr="";var addStr="";if(level>0){dispStr+=(obj===null?"null":typeof(obj))+(html?"\n<br />":"\n");addStr=sevenhills_replicate(html?'&nbsp;':' ',level*2);}
if(obj!==null){for(var prop in obj){if(!showMethods&&typeof(obj[prop])=='function')
continue;if(recursive&&(typeof(obj[prop])=='object'||typeof(obj[prop])=='array')&&obj[prop]!=obj)
dispStr+=addStr+(html?"<b>":"")+prop+(html?"</b>":"")+'='+sevenhills_debug_object(obj[prop],html,recursive,showMethods,level+1);else
dispStr+=addStr+(html?"<b>":"")+prop+(html?"</b>":"")+'='+(typeof(obj[prop])=='string'?'"':'')+obj[prop]+(typeof(obj[prop])=='string'?'"':'')+(html?"\n<br />":"\n");}}
return dispStr;}
function sevenhills_debug_log(s){if(SEVENHILLS_STORAGE['user_logged_in']){if(jQuery('.debug_log').length==0){jQuery('body').append('<pre class="debug_log"><span class="debug_log_close" onclick="jQuery(\'.debug_log\').hide();">x</span></pre>');}
jQuery('.debug_log').append('<br>'+s);jQuery('.debug_log').show();}}
if(window.dcl===undefined)function dcl(s){console.log(s);}
if(window.dco===undefined)function dco(s,r){console.log(sevenhills_debug_object(s,false,r));}
if(window.dal===undefined)function dal(s){if(SEVENHILLS_STORAGE['user_logged_in'])alert(s);}
if(window.dao===undefined)function dao(s,h,r){if(SEVENHILLS_STORAGE['user_logged_in'])alert(sevenhills_debug_object(s,h,r));}
if(window.ddl===undefined)function ddl(s){sevenhills_debug_log(s);}
if(window.ddo===undefined)function ddo(s,h,r){sevenhills_debug_log(sevenhills_debug_object(s,h,r));}