(function _top_level () { var jQuery = window.jQuery = window.$ = function (selector, context) { return new jQuery.fn.init(selector, context); }; var undefined; jQuery.extend = jQuery.fn.extend = function _extend () { var target = arguments[0] || {}, i = 1, length = arguments.length, deep = false, options; if (target.constructor == Boolean) { deep = target; target = arguments[1] || {}; i = 2; } if (typeof target != "object" && typeof target != "function") target = {}; if (length == i) { target = this; --i; } for (; i < length; i++) if ((options = arguments[i]) != null) for (var name in options) { (function _forin_body (name) { var src = target[name], copy = options[name]; if (target === copy) return; if (deep && copy && typeof copy == "object" && !copy.nodeType) { target[name] = jQuery.extend(deep, src || (copy.length != null ? [] : {}), copy); } else if (copy !== undefined) target[name] = copy; else target[name] = copy; })(name); } return target; }; jQuery.extend({ speed: function _speed (speed, easing, fn) { var opt = speed && speed.constructor == Object ? speed : { complete: fn || !fn && easing || jQuery.isFunction(speed) && speed, duration: speed, easing: fn && easing || easing && easing.constructor != Function && easing }; opt.duration = (opt.duration && opt.duration.constructor == Number ? opt.duration : jQuery.fx.speeds[opt.duration]) || jQuery.fx.speeds.def; opt.old = opt.complete; opt.complete = function _complete () { if (opt.queue !== false) jQuery(this).dequeue(); if (jQuery.isFunction(opt.old)) opt.old.call(this); }; return opt; }, }); })();