1(function(a){a.fn.extend({autocomplete:function(b,c){var d=typeof b=="string";c=a.extend({},a.Autocompleter.defaults,{url:d?b:null,data:d?null:b,delay:d?a.Autocompleter.defaults.delay:10,max:c&&!c.scroll?10:150},c);c.highlight=c.highlight||function(a){return a};c.formatMatch=c.formatMatch||c.formatItem;return this.each(function(){new a.Autocompleter(this,c)})},result:function(a){return this.bind("result",a)},search:function(a){return this.trigger("search",[a])},flushCache:function(){return this.trigger("flushCache")},setOptions:function(a){return this.trigger("setOptions",[a])},unautocomplete:function(){return this.trigger("unautocomplete")}});a.Autocompleter=function(b,c){function n(){var d=l.selected();if(!d) 2return!1;var f=d.result;g=f;if(c.multiple){var h=p(e.val());if(h.length>1){var i=c.multipleSeparator.length;var j=a(b).selection().start;var k,m=0;a.each(h,function(a,b){m+=b.length;if(j<=m){k=a;return!1} 3m+=i});h[k]=f;f=h.join(c.multipleSeparator)} 4f+=c.multipleSeparator} 5e.val(f);t();e.trigger("result",[d.data,d.value]);return!0} 6function o(a,b){if(j==d.DEL){l.hide();return} 7var f=e.val();if(!b&&f==g) 8return;g=f;f=q(f);if(f.length>=c.minChars){e.addClass(c.loadingClass);if(!c.matchCase) 9f=f.toLowerCase();v(f,u,t)}else{x();l.hide()}} 10function p(b){if(!b) 11return[""];if(!c.multiple) 12return[a.trim(b)];return a.map(b.split(c.multipleSeparator),function(c){return a.trim(b).length?a.trim(c):null})} 13function q(d){if(!c.multiple) 14return d;var e=p(d);if(e.length==1) 15return e[0];var f=a(b).selection().start;if(f==d.length){e=p(d)}else{e=p(d.replace(d.substring(f),""))} 16return e[e.length-1]} 17function r(f,h){if(c.autoFill&&q(e.val()).toLowerCase()==f.toLowerCase()&&j!=d.BACKSPACE){e.val(e.val()+h.substring(q(g).length));a(b).selection(g.length,g.length+h.length)}} 18function s(){clearTimeout(f);f=setTimeout(t,200)} 19function t(){var a=l.visible();l.hide();clearTimeout(f);x();if(c.mustMatch){e.search(function(a){if(!a){if(c.multiple){var b=p(e.val()).slice(0,-1);e.val(b.join(c.multipleSeparator)+(b.length?c.multipleSeparator:""))}else{e.val("");e.trigger("result",null)}}})}} 20function u(a,b){if(b&&b.length&&i){x();l.display(b,a);r(a,b[0].value);l.show()}else{t()}} 21function v(d,e,f){if(!c.matchCase) 22d=d.toLowerCase();var g=h.load(d);if(g&&g.length){e(d,g)}else if(typeof c.url=="string"&&c.url.length>0){var i={timestamp:+(new Date)};a.each(c.extraParams,function(a,b){i[a]=typeof b=="function"?b():b});a.ajax({mode:"abort",port:"autocomplete"+b.name,dataType:c.dataType,url:c.url,data:a.extend({q:q(d),limit:c.max},i),success:function(a){var b=c.parse&&c.parse(a)||w(a);h.add(d,b);e(d,b)}})}else{l.emptyList();f(d)}} 23function w(b){var d=[];var e=b.split("\n");for(var f=0;f<e.length;f++){var g=a.trim(e[f]);if(g){g=g.split("|");d[d.length]={data:g,value:g[0],result:c.formatResult&&c.formatResult(g,g[0])||g[0]}}} 24return d} 25function x(){e.removeClass(c.loadingClass)} 26var d={UP:38,DOWN:40,DEL:46,TAB:9,RETURN:13,ESC:27,COMMA:188,PAGEUP:33,PAGEDOWN:34,BACKSPACE:8};var e=a(b).attr("autocomplete","off").addClass(c.inputClass);var f;var g="";var h=a.Autocompleter.Cache(c);var i=0;var j;var k={mouseDownOnSelect:!1};var l=a.Autocompleter.Select(c,b,n,k);var m;a.browser.opera&&a(b.form).bind("submit.autocomplete",function(){if(m){m=!1;return!1}});e.bind((a.browser.opera?"keypress":"keydown")+".autocomplete",function(b){i=1;j=b.keyCode;switch(b.keyCode){case d.UP:b.preventDefault();if(l.visible()){l.prev()}else{o(0,!0)} 27break;case d.DOWN:b.preventDefault();if(l.visible()){l.next()}else{o(0,!0)} 28break;case d.PAGEUP:b.preventDefault();if(l.visible()){l.pageUp()}else{o(0,!0)} 29break;case d.PAGEDOWN:b.preventDefault();if(l.visible()){l.pageDown()}else{o(0,!0)} 30break;case c.multiple&&a.trim(c.multipleSeparator)==","&&d.COMMA:case d.TAB:case d.RETURN:if(n()){b.preventDefault();m=!0;return!1} 31break;case d.ESC:l.hide();break;default:clearTimeout(f);f=setTimeout(o,c.delay);break}}).focus(function(){i++}).blur(function(){i=0;if(!k.mouseDownOnSelect){s()}}).click(function(){if(i++>1&&!l.visible()){o(0,!0)}}).bind("search",function(){function c(a,c){var d;if(c&&c.length){for(var f=0;f<c.length;f++){if(c[f].result.toLowerCase()==a.toLowerCase()){d=c[f];break}}} 32if(typeof b=="function") 33b(d);else e.trigger("result",d&&[d.data,d.value])} 34var b=arguments.length>1?arguments[1]:null;a.each(p(e.val()),function(a,b){v(b,c,c)})}).bind("flushCache",function(){h.flush()}).bind("setOptions",function(){a.extend(c,arguments[1]);if("data"in arguments[1])
35h.populate()}).bind("unautocomplete",function(){l.unbind();e.unbind();a(b.form).unbind(".autocomplete")})};a.Autocompleter.defaults={inputClass:"ac_input",resultsClass:"ac_results",loadingClass:"ac_loading",minChars:1,delay:400,matchCase:!1,matchSubset:!0,matchContains:!1,cacheLength:10,max:100,mustMatch:!1,extraParams:{},selectFirst:!0,formatItem:function(a){return a[0]},formatMatch:null,autoFill:!1,width:0,multiple:!1,multipleSeparator:", ",highlight:function(a,b){return a.replace(new RegExp("(?![^&;]+;)(?!<[^<>]*)("+b.replace(/([\^\$\(\)\[\]\{\}\*\.\+\?\|\\])/gi,"\\$1")+")(?![^<>]*>)(?![^&;]+;)","gi"),"<strong>$1</strong>")},scroll:!0,scrollHeight:180};a.Autocompleter.Cache=function(b){function e(a,c){if(!b.matchCase) 36a=a.toLowerCase();var d=a.indexOf(c);if(b.matchContains=="word"){d=a.toLowerCase().search("\\b"+c.toLowerCase())} 37if(d==-1) 38return!1;return d==0||b.matchContains} 39function f(a,e){if(d>b.cacheLength){h()} 40if(!c[a]){d++} 41c[a]=e} 42function g(){if(!b.data) 43return!1;var c={},d=0;if(!b.url) 44b.cacheLength=1;c[""]=[];for(var e=0,g=b.data.length;e<g;e++){var h=b.data[e];h=typeof h=="string"?[h]:h;var i=b.formatMatch(h,e+1,b.data.length);if(i===!1) 45continue;var j=i.charAt(0).toLowerCase();if(!c[j]) 46c[j]=[];var k={value:i,data:h,result:b.formatResult&&b.formatResult(h)||i};c[j].push(k);if(d++<b.max){c[""].push(k)}} 47a.each(c,function(a,c){b.cacheLength++;f(a,c)})} 48function h(){c={};d=0} 49var c={};var d=0;setTimeout(g,25);return{flush:h,add:f,populate:g,load:function(f){if(!b.cacheLength||!d) 50return null;if(!b.url&&b.matchContains){var g=[];for(var h in c){if(h.length>0){var i=c[h];a.each(i,function(a,b){if(e(b.value,f)){g.push(b)}})}} 51return g}else if(c[f]){return c[f]}else if(b.matchSubset){for(var j=f.length-1;j>=b.minChars;j--){var i=c[f.substr(0,j)];if(i){var g=[];a.each(i,function(a,b){if(e(b.value,f)){g[g.length]=b}});return g}}} 52return null}}};a.Autocompleter.Select=function(b,c,d,e){function n(){if(!k) 53return;if(c.id=="searchbox") 54l=a("<div/>").hide().addClass(b.resultsClass).addClass('ac_results-fixed').appendTo(document.body);else l=a("<div/>").hide().addClass(b.resultsClass).css("position","absolute").css("zIndex","9").appendTo(document.body);m=a("<ul/>").appendTo(l).mouseover(function(b){if(o(b).nodeName&&o(b).nodeName.toUpperCase()=="LI"){h=a("li",m).removeClass(f.ACTIVE).index(o(b));a(o(b)).addClass(f.ACTIVE)}}).click(function(b){a(o(b)).addClass(f.ACTIVE);d();c.focus();return!1}).mousedown(function(){e.mouseDownOnSelect=!0}).mouseup(function(){e.mouseDownOnSelect=!1});if(b.width>0) 55l.css("width",b.width);k=!1} 56function o(a){var b=a.target;while(b&&b.tagName!="LI") 57b=b.parentNode;if(!b) 58return[];return b} 59function p(a){g.slice(h,h+1).removeClass(f.ACTIVE);q(a);var c=g.slice(h,h+1).addClass(f.ACTIVE);if(b.scroll){var d=0;g.slice(0,h).each(function(){d+=this.offsetHeight});if(d+c[0].offsetHeight-m.scrollTop()>m[0].clientHeight){m.scrollTop(d+c[0].offsetHeight-m.innerHeight())}else if(d<m.scrollTop()){m.scrollTop(d)}}} 60function q(a){h+=a;if(h<0){h=g.size()-1}else if(h>=g.size()){h=0}} 61function r(a){return b.max&&b.max<a?b.max:a} 62function s(){m.empty();var c=r(i.length);for(var d=0;d<c;d++){if(!i[d]) 63continue;var e=b.formatItem(i[d].data,d+1,c,i[d].value,j);if(e===!1) 64continue;var k=a("<li/>").html(b.highlight(e,j)).addClass(d%2==0?"ac_even":"ac_odd").appendTo(m)[0];a.data(k,"ac_data",i[d])} 65g=m.find("li");if(b.selectFirst){g.slice(0,1).addClass(f.ACTIVE);h=0} 66if(a.fn.bgiframe) 67m.bgiframe()} 68var f={ACTIVE:"ac_over"};var g,h=-1,i,j="",k=!0,l,m;return{display:function(a,b){n();i=a;j=b;s()},next:function(){p(1)},prev:function(){p(-1)},pageUp:function(){if(h!=0&&h-8<0){p(-h)}else{p(-8)}},pageDown:function(){if(h!=g.size()-1&&h+8>g.size()){p(g.size()-1-h)}else{p(8)}},hide:function(){l&&l.hide();g&&g.removeClass(f.ACTIVE);h=-1},visible:function(){return l&&l.is(":visible")},current:function(){return this.visible()&&(g.filter("."+f.ACTIVE)[0]||b.selectFirst&&g[0])},show:function(){var d=a(c).offset();l.css({width:typeof b.width=="string"||b.width>0?b.width:a(c).width(),top:d.top+c.offsetHeight,left:d.left}).show();if(b.scroll){m.scrollTop(0);m.css({maxHeight:b.scrollHeight,overflow:"auto"});if(a.browser.msie&&typeof document.body.style.maxHeight==="undefined"){var e=0;g.each(function(){e+=this.offsetHeight});var f=e>b.scrollHeight;m.css("height",f?b.scrollHeight:e);if(!f){g.width(m.width()-parseInt(g.css("padding-left"))-parseInt(g.css("padding-right")))}}}},selected:function(){var b=g&&g.filter("."+f.ACTIVE).removeClass(f.ACTIVE);return b&&b.length&&a.data(b[0],"ac_data")},emptyList:function(){m&&m.empty()},unbind:function(){l&&l.remove()}}};a.fn.selection=function(a,b){if(a!==undefined){return this.each(function(){if(this.createTextRange){var c=this.createTextRange();if(b===undefined||a==b){c.move("character",a);c.select()}else{c.collapse(!0);c.moveStart("character",a);c.moveEnd("character",b);c.select()}}else if(this.setSelectionRange){this.setSelectionRange(a,b)}else if(this.selectionStart){this.selectionStart=a;this.selectionEnd=b}})} 69var c=this[0];if(c.createTextRange){var d=document.selection.createRange(),e=c.value,f="<->",g=d.text.length;d.text=f;var h=c.value.indexOf(f);c.value=e;this.selection(h,h+g);return{start:h,end:h+g}}else if(c.selectionStart!==undefined){return{start:c.selectionStart,end:c.selectionEnd}}}})(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.