1!function(n){n.event.special.textchange={setup:function(t,e){n(this).data("lastValue","true"===this.contentEditable?n(this).html():n(this).val()),n(this).bind("keyup.textchange",n.event.special.textchange.handler),n(this).bind("cut.textchange paste.textchange input.textchange",n.event.special.textchange.delayedHandler)},teardown:function(t){n(this).unbind(".textchange")},handler:function(t){n.event.special.textchange.triggerIfChanged(n(this))},delayedHandler:function(t){var e=n(this);setTimeout(function(){n.event.special.textchange.triggerIfChanged(e)},25)},triggerIfChanged:function(t){var e="true"===t[0].contentEditable?t.html():t.val();e!==t.data("lastValue")&&(t.trigger("textchange",[t.data("lastValue")]),t.data("lastValue",e))}},n.event.special.hastext={setup:function(t,e){n(this).bind("textchange",n.event.special.hastext.handler)},teardown:function(t){n(this).unbind("textchange",n.event.special.hastext.handler)},handler:function(t,e){""===e&&e!==n(this).val()&&n(this).trigger("hastext")}},n.event.special.notext={setup:function(t,e){n(this).bind("textchange",n.event.special.notext.handler)},teardown:function(t){n(this).unbind("textchange",n.event.special.notext.handler)},handler:function(t,e){""===n(this).val()&&n(this).val()!==e&&n(this).trigger("notext")}}}(jQuery);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.