\'; return ob_get_clean(); } }', '/AdelieDebug/Debug/EventObserver.php' => 'class AdelieDebug_Debug_EventObserver { protected $name = \'\'; protected $logger = null; public function __construct($name, AdelieDebug_Debug_Logger $logger) { $this->name = $name; $this->logger = $logger; } public function invoke() { $this->logger->addTriggerDelegate($this->name); } }', '/AdelieDebug/Debug/Function.php' => 'function adump() { $args = func_get_args(); array_unshift($args, 1); call_user_func_array(array(\'AdelieDebug_Debug_Dump\', \'dumpbt\'), $args); } function atrace() { AdelieDebug_Debug_Trace::trace(1); } function awhich($variable) { $which = new AdelieDebug_Debug_Which(); $result = $which->which($variable); call_user_func(array(\'AdelieDebug_Debug_Dump\', \'dumpbt\'), 1, $result); } function asynop($object, $highlight = true) { AdelieDebug_Debug_Synopsys::synopsys($object, $highlight, 2); }', '/AdelieDebug/Debug/Shutdown.php' => 'class AdelieDebug_Debug_Shutdown { protected $callbacks = array(); public function add($callback) { $this->callbacks[] = $callback; } public function register() { register_shutdown_function(array($this, \'report\')); } public function report() { foreach ( $this->callbacks as $callback ) { call_user_func($callback); } } }', '/AdelieDebug/Debug/Reporter/Html/Reportable.php' => 'class AdelieDebug_Debug_Reporter_Html_Reportable { public function __construct() { } public function isReportable() { if ( $this->isCli() === true ) { return false; } if ( $this->isHtmlContent() === false ) { return false; } if ( $this->isXMLHttpRequest() === true ) { return false; } if ( defined(\'ADELIE_DEBUG_DISABLE\') === true ) { return false; } return true; } public function isCli() { return ( PHP_SAPI === \'cli\' ); } public function isHtmlContent() { $headers = headers_list(); foreach ( $headers as $header ) { $header = trim($header); if ( preg_match(\'#content-type:#i\', $header) > 0 and preg_match(\'#content-type:\\s*text/html#i\', $header) == 0 ) { return false; } } return true; } public function isXMLHttpRequest() { if ( isset($_SERVER[\'HTTP_X_REQUESTED_WITH\']) === false ) { return false; } if ( $_SERVER[\'HTTP_X_REQUESTED_WITH\'] === \'XMLHttpRequest\' ) { return true; } return false; } }', '/AdelieDebug/Debug/Reporter/Html.php' => 'class AdelieDebug_Debug_Reporter_Html extends AdelieDebug_Debug_Reporter { protected $reportable = null; public function setUp() { $this->reportable = new AdelieDebug_Debug_Reporter_Html_Reportable(); } public function report() { if ( $this->reportable->isReportable() === false ) { return; } $this->_printContents(); } protected function _printContents() { $application = new AdelieDebug_Application(); $application->setPathinfo(\'/debug/report\'); $application->setParameter(\'logger\', $this->logger); $application->setParameter(\'via\', __CLASS__); $application->setUp(); $application->run(); $result = $application->getResult(); echo $result; } }', '/AdelieDebug/Debug/Reporter/Console.php' => 'class AdelieDebug_Debug_Reporter_Console extends AdelieDebug_Debug_Reporter { public function report() { if ( defined(\'ADELIE_DEBUG_DISABLE_CONSOLE_LOG\') === true ) { return; } if ( isset($_SESSION) === false ) { $_SESSION = array(); } $sentHeaders = headers_list(); $requests = array( \'$_GET\' => $_GET, \'$_POST\' => $_POST, \'$_SESSION\' => $_SESSION, \'$_COOKIE\' => $_COOKIE, \'$_FILES\' => $_FILES, \'$_SERVER\' => $_SERVER, ); $request = new AdelieDebug_Core_Request(); $data = array( \'time\' => time(), \'url\' => $request->getUrl(), \'errorSummary\' => $this->logger->getErrorSummary(), \'timeline\' => $this->logger->getLogs(), \'sentHeaders\' => $sentHeaders, \'requests\' => $requests, ); $filename = XOOPS_CACHE_PATH.\'/AdelieDebugLog_\'.date(\'YmdHis\').\'_\'.uniqid().\'.json\'; file_put_contents($filename, json_encode($data)); } }', '/AdelieDebug/Debug/Trace.php' => 'class AdelieDebug_Debug_Trace { protected static $logger = null; public static function setLogger(AdelieDebug_Debug_Logger $logger) { self::$logger = $logger; } public static function trace($minus = 0, $return = false) { $exception = new Exception(); $trace = $exception->getTraceAsString(); for ( $i = 0; $i < $minus; $i ++ ) { $trace = preg_replace("/.*\\n#1([^\\d])/s", \'#1$1\', $trace); $trace = preg_replace_callback(\'/^#(\\d+)/m\', function($m) { return \'#\' . ($m[1] - 1); }, $trace); } if ( $return === true ) { return $trace; } else { self::$logger->addTrace($trace); } } public static function getCalled($level = 0, $html = true) { $level = $level + 1; $trace = array( \'file\' => \'Unknown file\', \'line\' => 0, ); $traces = debug_backtrace(); if ( isset($traces[$level]) === true ) { $trace = array_merge($trace, $traces[$level]); } $called = sprintf("Called in %s on line %s", $trace[\'file\'], $trace[\'line\']); if ( $html === true ) { $called = \'
\'.$called."
"; } return $called; } }', '/AdelieDebug/Debug/ErrorHandler.php' => 'class AdelieDebug_Debug_ErrorHandler { protected $errorTypes = array ( E_ERROR => \'ERROR\', E_WARNING => \'WARNING\', E_PARSE => \'PARSING ERROR\', E_NOTICE => \'NOTICE\', E_CORE_ERROR => \'CORE ERROR\', E_CORE_WARNING => \'CORE WARNING\', E_COMPILE_ERROR => \'COMPILE ERROR\', E_COMPILE_WARNING => \'COMPILE WARNING\', E_USER_ERROR => \'USER ERROR\', E_USER_WARNING => \'USER WARNING\', E_USER_NOTICE => \'USER NOTICE\', E_STRICT => \'STRICT NOTICE\', E_RECOVERABLE_ERROR => \'RECOVERABLE ERROR\', ); protected $logger = null; public function __construct(AdelieDebug_Debug_Logger $logger) { $this->logger = $logger; $this->_setUpErrorTypes(); } public function register() { set_error_handler(array($this, \'callback\')); } public function callback($level, $message, $file, $line) { if ( ( $level & error_reporting() ) != $level ) { return true; } $trace = $this->_backtrace(3); $this->_add($level, $message, $file, $line, $trace); return true; } public function catchFatal() { $error = error_get_last(); if( $error === null ) { return; } if ( $error[\'type\'] !== E_ERROR ) { return; } $this->_add($error[\'type\'], $error[\'message\'], $error[\'file\'], $error[\'line\'], "Unable to backtrace fatal error..."); } protected function _backtrace($ignore = 1) { $output = \'\'; $backtrace = debug_backtrace(); $index = 0; for ( $i = 0; $i < $ignore; $i ++ ) { array_shift($backtrace); } foreach ( $backtrace as $index => $bt ) { $args = \'\'; if ( isset($bt[\'class\']) === true ) { $function = $bt[\'class\'].$bt[\'type\'].$bt[\'function\']; } else { $function = $bt[\'function\']; } if ( isset($bt[\'line\']) === true ) { $line = $bt[\'line\']; } else { $line = \'?\'; } if ( isset($bt[\'file\']) === true ) { $file = $bt[\'file\']; } else { $file = \'?\'; } $output .= sprintf(\'#%u %s(%s) called at [%s:%s]\'."\\n", $index, $function, $args, $file, $line); $index += 1; } return $output; } protected function _setUpErrorTypes() { if ( version_compare(PHP_VERSION, \'5.2\', \'>=\') === true ) { $this->errorTypes[E_RECOVERABLE_ERROR] = \'RECOVERABLE ERROR\'; } if ( version_compare(PHP_VERSION, \'5.3\', \'>=\') === true ) { $this->errorTypes[E_DEPRECATED] = \'DEPRECATED\'; $this->errorTypes[E_USER_DEPRECATED] = \'USER_DEPRECATED\'; } } protected function _getFormatedError(array $error, $format = "{type}: {message} in {file} on line {line}") { $message = str_replace(\'{type}\', $error[\'type\'], $format); $message = str_replace(\'{message}\', $error[\'message\'], $message); $message = str_replace(\'{file}\', $error[\'file\'], $message); $message = str_replace(\'{line}\', $error[\'line\'], $message); return $message; } protected function _add($level, $message, $file, $line, $trace) { $error = array( \'type\' => $this->_getType($level), \'level\' => $level, \'message\' => $message, \'file\' => $file, \'line\' => $line, ); $message = $this->_getFormatedError($error); $this->logger->addPhpError($message, $trace); } protected function _getType($level) { if ( isset($this->errorTypes[$level]) === true ) { return $this->errorTypes[$level]; } return \'UNKNOWN ERROR(\'.$level.\')\'; } }', '/AdelieDebug/Debug/Which.php' => 'class AdelieDebug_Debug_Which { public function __construct() { } public function which($variable) { $type = gettype($variable); $method = \'which\'.ucfirst($type); if ( method_exists($this, $method) === true ) { $result = $this->$method($variable); } else { $result = false; } if ( $result === false ) { $result = "Not found: ".$type; } $result = \'Which: \'.$result; return $result; } public function whichObject($object) { return $this->whichClass(get_class($object)); } public function whichString($string) { if ( preg_match(\'/^[a-zA-Z_\\x7f-\\xff][a-zA-Z0-9_\\x7f-\\xff]*$/\', $string) > 0 ) { $found = array(); if ( class_exists($string) === true ) { $found[] = $this->whichClass($string); } if ( function_exists($string) === true ) { $found[] = $this->whichFunction($string); } if ( defined($string) === true ) { } $found = implode("\\n", $found); return $found; } return false; } public function whichClass($class) { $reflectionClass = new ReflectionClass($class); $filename = $reflectionClass->getFileName(); $line = $reflectionClass->getStartLine(); if ( $filename === false ) { $filename = \'unknown\'; } if ( $line === false ) { $line = \'0\'; } return sprintf("Class \'%s\' defined in %s at line %s", $class, $filename, $line); } public function whichFunction($function) { $reflectionFunction = new ReflectionFunction($function); $filename = $reflectionFunction->getFileName(); $line = $reflectionFunction->getStartLine(); if ( $filename === false ) { $filename = \'unknown\'; } if ( $line === false ) { $line = \'0\'; } return sprintf("Function \'%s\' defined in %s at line %s", $function, $filename, $line); } }', '/AdelieDebug/Debug/PHPInfo.php' => 'class AdelieDebug_Debug_PHPInfo { protected $config = array( \'memory\' => array( \'memory_peak_usage\' => array(\'memoryPeakUsage\'), \'memory_limit\' => array(\'ini\', \'memory_limit\'), ), \'encoding\' => array( \'output_buffering\' => array(\'iniOnOff\', \'output_buffering\'), \'default_charset\' => array(\'ini\', \'default_charset\'), \'mbstring.language\' => array(\'ini\', \'mbstring.language\'), \'mbstring.encoding_translation\' => array(\'iniOnOff\', \'mbstring.encoding_translation\'), \'mbstring.http_input\' => array(\'ini\', \'mbstring.http_input\'), \'mbstring.http_output\' => array(\'ini\', \'mbstring.http_output\'), \'mbstring.internal_encoding\' => array(\'ini\', \'mbstring.internal_encoding\'), \'mbstring.substitute_character\' => array(\'ini\', \'mbstring.substitute_character\'), \'mbstring.detect_order\' => array(\'ini\', \'mbstring.detect_order\'), ), ); public function summary() { $summary = array(); foreach ( $this->config as $categoryName => $info ) { $summary[$categoryName] = array(); foreach ( $info as $name => $callback ) { $summary[$categoryName][$name] = $this->_get($callback); } } return $summary; } protected function _get(array $callback) { $method = \'_\'.array_shift($callback); if ( method_exists($this, $method) === false ) { throw new RuntimeException(__CLASS__.\': method does not exit: \'.$method); } return call_user_func_array(array($this, $method), $callback); } protected function _memoryPeakUsage() { return AdelieDebug_TextFormat::bytes(memory_get_peak_usage()); } protected function _ini($name) { return ini_get($name); } protected function _iniOnOff($name) { if ( ini_get($name) ) { return \'On\'; } else { return \'Off\'; } } }', '/AdelieDebug/Debug/Main.php' => 'class AdelieDebug_Debug_Main { protected $logger = null; protected $errorHandler = null; protected $exceptionHandler = null; protected $reporter = null; protected $shutdown = null; public function __construct() { } public function __isset($name) { return isset($this->$name); } public function __get($name) { return $this->$name; } public function run() { $this->enableErrorReporting(); $this->_setUp(); } public function enableErrorReporting() { if ( defined(\'ADELIE_DEBUG_ERROR_REPORTING\') ) { error_reporting(ADELIE_DEBUG_ERROR_REPORTING); } else { error_reporting(-1); } ini_set(\'log_errors\', true); ini_set(\'display_errors\', true); } protected function _setUp() { $this->_setUpLogger(); $this->_setUpErrorHandler(); $this->_setUpExceptionHandler(); $this->_setUpReporter(); $this->_setUpShutdown(); $this->_setUpFunctions(); } protected function _setUpLogger() { $this->logger = new AdelieDebug_Debug_Logger(); } protected function _setUpErrorHandler() { $this->errorHandler = new AdelieDebug_Debug_ErrorHandler($this->logger); $this->errorHandler->register(); } protected function _setUpExceptionHandler() { $this->exceptionHandler = new AdelieDebug_Debug_ExceptionHandler($this->logger); $this->exceptionHandler->register(); } protected function _setUpReporter() { $this->reporter = new AdelieDebug_Debug_Reporter_Html($this->logger); $this->reporter->setUp(); } protected function _setUpShutdown() { $this->shutdown = new AdelieDebug_Debug_Shutdown($this->logger); $this->shutdown->add(array($this->errorHandler, \'catchFatal\')); $this->shutdown->add(array($this->reporter, \'report\')); $this->shutdown->register(); } protected function _setUpFunctions() { AdelieDebug_Debug_Dump::setLogger($this->logger); AdelieDebug_Debug_Trace::setLogger($this->logger); AdelieDebug_Debug_Synopsys::setLogger($this->logger); $this->_loadFunctions(); } protected function _setUpDelegateManagerProxy() { $root = XCube_Root::getSingleton(); $root->mDelegateManager = new AdelieDebug_Debug_DelegateManagerProxy($root->mDelegateManager, $this->logger); } protected function _loadFunctions() { if ( defined(\'ADELIE_DEBUG_BUILD\') === true ) { eval(AdelieDebug_Archive::$archive[\'/AdelieDebug/Debug/Function.php\']); } else { require_once dirname(__FILE__).\'/Function.php\'; } } }', '/AdelieDebug/Debug/XoopsDebugger.php' => 'if ( class_exists(\'Legacy_AbstractDebugger\') === false and class_exists(\'Xcore_AbstractDebugger\') ) { class Legacy_AbstractDebugger extends Xcore_AbstractDebugger {} } class AdelieDebug_Debug_XoopsDebugger extends Legacy_AbstractDebugger { protected $logger = null; protected $isDebugRenderSystem = false; public function __construct(AdelieDebug_Debug_Logger $logger) { $this->logger = $logger; } public function enableDebugRenderSystem() { $this->isDebugRenderSystem = true; } public function prepare() { $GLOBALS[\'xoopsErrorHandler\'] =& AdelieDebug_Debug_XoopsErrorHandler::getInstanceWrapper(); $GLOBALS[\'xoopsErrorHandler\']->activate(false); $xoopsLogger = AdelieDebug_Debug_XoopsLogger::getInstance(); $xoopsLogger->setLogger($this->logger); $xoopsLogger->importParent(); $GLOBALS[\'xoopsLogger\'] =& $xoopsLogger; $root = XCube_Root::getSingleton(); $root->mController->mLogger = $xoopsLogger; $root->mController->mDB->setLogger($xoopsLogger); } public function isDebugRenderSystem() { return $this->isDebugRenderSystem; } }', '/AdelieDebug/File/js/jquery-1.7.min.js' => '/*! jQuery v1.7 jquery.com | jquery.org/license */
(function(a,b){function cA(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cx(a){if(!cm[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){cn||(cn=c.createElement("iframe"),cn.frameBorder=cn.width=cn.height=0),b.appendChild(cn);if(!co||!cn.createElement)co=(cn.contentWindow||cn.contentDocument).document,co.write((c.compatMode==="CSS1Compat"?"":"")+""),co.close();d=co.createElement(a),co.body.appendChild(d),e=f.css(d,"display"),b.removeChild(cn)}cm[a]=e}return cm[a]}function cw(a,b){var c={};f.each(cs.concat.apply([],cs.slice(0,b)),function(){c[this]=a});return c}function cv(){ct=b}function cu(){setTimeout(cv,0);return ct=f.now()}function cl(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ck(){try{return new a.XMLHttpRequest}catch(b){}}function ce(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g0){c!=="border"&&f.each(e,function(){c||(d-=parseFloat(f.css(a,"padding"+this))||0),c==="margin"?d+=parseFloat(f.css(a,c+this))||0:d-=parseFloat(f.css(a,"border"+this+"Width"))||0});return d+"px"}d=bB(a,b,b);if(d<0||d==null)d=a.style[b]||0;d=parseFloat(d)||0,c&&f.each(e,function(){d+=parseFloat(f.css(a,"padding"+this))||0,c!=="padding"&&(d+=parseFloat(f.css(a,"border"+this+"Width"))||0),c==="margin"&&(d+=parseFloat(f.css(a,c+this))||0)});return d+"px"}function br(a,b){b.src?f.ajax({url:b.src,async:!1,dataType:"script"}):f.globalEval((b.text||b.textContent||b.innerHTML||"").replace(bi,"/*$0*/")),b.parentNode&&b.parentNode.removeChild(b)}function bq(a){var b=(a.nodeName||"").toLowerCase();b==="input"?bp(a):b!=="script"&&typeof a.getElementsByTagName!="undefined"&&f.grep(a.getElementsByTagName("input"),bp)}function bp(a){if(a.type==="checkbox"||a.type==="radio")a.defaultChecked=a.checked}function bo(a){return typeof a.getElementsByTagName!="undefined"?a.getElementsByTagName("*"):typeof a.querySelectorAll!="undefined"?a.querySelectorAll("*"):[]}function bn(a,b){var c;if(b.nodeType===1){b.clearAttributes&&b.clearAttributes(),b.mergeAttributes&&b.mergeAttributes(a),c=b.nodeName.toLowerCase();if(c==="object")b.outerHTML=a.outerHTML;else if(c!=="input"||a.type!=="checkbox"&&a.type!=="radio"){if(c==="option")b.selected=a.defaultSelected;else if(c==="input"||c==="textarea")b.defaultValue=a.defaultValue}else a.checked&&(b.defaultChecked=b.checked=a.checked),b.value!==a.value&&(b.value=a.value);b.removeAttribute(f.expando)}}function bm(a,b){if(b.nodeType===1&&!!f.hasData(a)){var c,d,e,g=f._data(a),h=f._data(b,g),i=g.events;if(i){delete h.handle,h.events={};for(c in i)for(d=0,e=i[c].length;d=0===c})}function V(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function N(){return!0}function M(){return!1}function n(a,b,c){var d=b+"defer",e=b+"queue",g=b+"mark",h=f._data(a,d);h&&(c==="queue"||!f._data(a,e))&&(c==="mark"||!f._data(a,g))&&setTimeout(function(){!f._data(a,e)&&!f._data(a,g)&&(f.removeData(a,d,!0),h.fire())},0)}function m(a){for(var b in a){if(b==="data"&&f.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function l(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(k,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNumeric(d)?parseFloat(d):j.test(d)?f.parseJSON(d):d}catch(g){}f.data(a,c,d)}else d=b}return d}function h(a){var b=g[a]={},c,d;a=a.split(/\\s+/);for(c=0,d=a.length;c)[^>]*$|#([\\w\\-]*)$)/,j=/\\S/,k=/^\\s+/,l=/\\s+$/,m=/\\d/,n=/^<(\\w+)\\s*\\/?>(?:<\\/\\1>)?$/,o=/^[\\],:{}\\s]*$/,p=/\\\\(?:["\\\\\\/bfnrt]|u[0-9a-fA-F]{4})/g,q=/"[^"\\\\\\n\\r]*"|true|false|null|-?\\d+(?:\\.\\d*)?(?:[eE][+\\-]?\\d+)?/g,r=/(?:^|:|,)(?:\\s*\\[)+/g,s=/(webkit)[ \\/]([\\w.]+)/,t=/(opera)(?:.*version)?[ \\/]([\\w.]+)/,u=/(msie) ([\\w.]+)/,v=/(mozilla)(?:.*? rv:([\\w.]+))?/,w=/-([a-z]|[0-9])/ig,x=/^-ms-/,y=function(a,b){return(b+"").toUpperCase()},z=d.userAgent,A,B,C,D=Object.prototype.toString,E=Object.prototype.hasOwnProperty,F=Array.prototype.push,G=Array.prototype.slice,H=String.prototype.trim,I=Array.prototype.indexOf,J={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=n.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.7",length:0,size:function(){return this.length},toArray:function(){return G.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?F.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),B.add(a);return this},eq:function(a){return a===-1?this.slice(a):this.slice(a,+a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(G.apply(this,arguments),"slice",G.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:F,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j0)return;B.fireWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").unbind("ready")}},bindReady:function(){if(!B){B=e.Callbacks("once memory");if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",C,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",C),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&K()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNumeric:function(a){return a!=null&&m.test(a)&&!isNaN(a)},type:function(a){return a==null?String(a):J[D.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!E.call(a,"constructor")&&!E.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||E.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw a},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(o.test(b.replace(p,"@").replace(q,"]").replace(r,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(x,"ms-").replace(w,y)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i1?i.call(arguments,0):b,j.notifyWith(k,e)}}function l(a){return function(c){b[a]=arguments.length>1?i.call(arguments,0):c,--g||j.resolveWith(j,b)}}var b=i.call(arguments,0),c=0,d=b.length,e=Array(d),g=d,h=d,j=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred(),k=j.promise();if(d>1){for(;c
a",d=a.getElementsByTagName("*"),e=a.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=a.getElementsByTagName("input")[0],k={leadingWhitespace:a.firstChild.nodeType===3,tbody:!a.getElementsByTagName("tbody").length,htmlSerialize:!!a.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,unknownElems:!!a.getElementsByTagName("nav").length,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:a.className!=="t",enctype:!!c.createElement("form").enctype,submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,k.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,k.optDisabled=!h.disabled;try{delete a.test}catch(v){k.deleteExpando=!1}!a.addEventListener&&a.attachEvent&&a.fireEvent&&(a.attachEvent("onclick",function(){k.noCloneEvent=!1}),a.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),k.radioValue=i.value==="t",i.setAttribute("checked","checked"),a.appendChild(i),l=c.createDocumentFragment(),l.appendChild(a.lastChild),k.checkClone=l.cloneNode(!0).cloneNode(!0).lastChild.checked,a.innerHTML="",a.style.width=a.style.paddingLeft="1px",m=c.getElementsByTagName("body")[0],o=c.createElement(m?"div":"body"),p={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"},m&&f.extend(p,{position:"absolute",left:"-999px",top:"-999px"});for(t in p)o.style[t]=p[t];o.appendChild(a),n=m||b,n.insertBefore(o,n.firstChild),k.appendChecked=i.checked,k.boxModel=a.offsetWidth===2,"zoom"in a.style&&(a.style.display="inline",a.style.zoom=1,k.inlineBlockNeedsLayout=a.offsetWidth===2,a.style.display="",a.innerHTML="",k.shrinkWrapBlocks=a.offsetWidth!==2),a.innerHTML="
t
",q=a.getElementsByTagName("td"),u=q[0].offsetHeight===0,q[0].style.display="",q[1].style.display="none",k.reliableHiddenOffsets=u&&q[0].offsetHeight===0,a.innerHTML="",c.defaultView&&c.defaultView.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",a.appendChild(j),k.reliableMarginRight=(parseInt((c.defaultView.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0);if(a.attachEvent)for(t in{submit:1,change:1,focusin:1})s="on"+t,u=s in a,u||(a.setAttribute(s,"return;"),u=typeof a[s]=="function"),k[t+"Bubbles"]=u;f(function(){var a,b,d,e,g,h,i=1,j="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;",l="visibility:hidden;border:0;",n="style=\'"+j+"border:5px solid #000;padding:0;\'",p="