(function(b){b.extend(b.fn,{livequery:function(f,e,d){var c=this,g;if(b.isFunction(f)){d=e,e=f,f=undefined}b.each(b.livequery.queries,function(h,j){if(c.selector==j.selector&&c.context==j.context&&f==j.type&&(!e||e.jQuerylqguid==j.fn.jQuerylqguid)&&(!d||d.jQuerylqguid==j.fn2.jQuerylqguid)){return(g=j)&&false}});g=g||new b.livequery(this.selector,this.context,f,e,d);g.stopped=false;b.livequery.run(g.id);return this},expire:function(f,e,d){var c=this;if(b.isFunction(f)){d=e,e=f,f=undefined}b.each(b.livequery.queries,function(g,h){if(c.selector==h.selector&&c.context==h.context&&(!f||f==h.type)&&(!e||e.jQuerylqguid==h.fn.jQuerylqguid)&&(!d||d.jQuerylqguid==h.fn2.jQuerylqguid)&&!this.stopped){b.livequery.stop(h.id)}});return this}});b.livequery=function(c,e,g,f,d){this.selector=c;this.context=e||document;this.type=g;this.fn=f;this.fn2=d;this.elements=[];this.stopped=false;this.id=b.livequery.queries.push(this)-1;f.jQuerylqguid=f.jQuerylqguid||b.livequery.guid++;if(d){d.jQuerylqguid=d.jQuerylqguid||b.livequery.guid++}return this};b.livequery.prototype={stop:function(){var c=this;if(this.type){this.elements.unbind(this.type,this.fn)}else{if(this.fn2){this.elements.each(function(d,e){c.fn2.apply(e)})}}this.elements=[];this.stopped=true},run:function(){if(this.stopped){return}var e=this;var f=this.elements,d=b(this.selector,this.context),c=d.not(f);this.elements=d;if(this.type){c.bind(this.type,this.fn);if(f.length>0){b.each(f,function(g,h){if(b.inArray(h,d)<0){b.event.remove(h,e.type,e.fn)}})}}else{c.each(function(){e.fn.apply(this)});if(this.fn2&&f.length>0){b.each(f,function(g,h){if(b.inArray(h,d)<0){e.fn2.apply(h)}})}}}};b.extend(b.livequery,{guid:0,queries:[],queue:[],running:false,timeout:null,checkQueue:function(){if(b.livequery.running&&b.livequery.queue.length){var c=b.livequery.queue.length;while(c--){b.livequery.queries[b.livequery.queue.shift()].run()}}},pause:function(){b.livequery.running=false},play:function(){b.livequery.running=true;b.livequery.run()},registerPlugin:function(){b.each(arguments,function(d,e){if(!b.fn[e]){return}var c=b.fn[e];b.fn[e]=function(){var f=c.apply(this,arguments);b.livequery.run();return f}})},run:function(c){if(c!=undefined){if(b.inArray(c,b.livequery.queue)<0){b.livequery.queue.push(c)}}else{b.each(b.livequery.queries,function(d){if(b.inArray(d,b.livequery.queue)<0){b.livequery.queue.push(d)}})}if(b.livequery.timeout){clearTimeout(b.livequery.timeout)}b.livequery.timeout=setTimeout(b.livequery.checkQueue,20)},stop:function(c){if(c!=undefined){b.livequery.queries[c].stop()}else{b.each(b.livequery.queries,function(d){b.livequery.queries[d].stop()})}}});b.livequery.registerPlugin("append","prepend","after","before","wrap","attr","removeAttr","addClass","removeClass","toggleClass","empty","remove");b(function(){b.livequery.play()});var a=b.prototype.init;b.prototype.init=function(d,f){var e=a.apply(this,arguments);if(d&&d.selector){e.context=d.context,e.selector=d.selector}if(typeof d=="string"){e.context=f||document,e.selector=d}return e};b.prototype.init.prototype=b.prototype})(jQuery);