function parseUri(e){var d=parseUri.options,a=d.parser[d.strictMode?"strict":"loose"].exec(e),c={},b=14;while(b--){c[d.key[b]]=a[b]||""}c[d.q.name]={};c[d.key[12]].replace(d.q.parser,function(g,f,h){if(f){c[d.q.name][f]=h}});return c}parseUri.options={strictMode:false,key:["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"],q:{name:"queryKey",parser:/(?:^|&)([^&=]*)=?([^&]*)/g},parser:{strict:/^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*):?([^:@]*))?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/,loose:/^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*):?([^:@]*))?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/}};String.prototype.endsWith=function(a){return(this.match(a+"$")==a)};getUrl=function(){if(typeof(sikbox_url)=="undefined"){sikbox_url=""}return sikbox_url};setStats=function(c,a,b){url=getUrl()+"php/stats.php";q="?q="+c;s="&s="+a;t="&t="+b;url=url+q+s+t+"&callback=?";jQuery.getJSON(url);jQuery("script[src*='sikbox.com/php/stats.php']").remove()};selectItem=function(a,b){if(a.extra){setStats(b,a.extra[0],1);location.href=a.extra[0]}};getParameter=function(c,b){b=b.replace(/[\[]/,"\\[").replace(/[\]]/,"\\]");var a="[\\?&]"+b+"=([^&#]*)";var e=new RegExp(a);var d=e.exec(c);if(d==null){return""}else{return d[1]}};google={url:"http://ajax.googleapis.com/ajax/services/search/",key:"ABQIAAAAm_U5X3msZlIawwmBL471ORRjBtBuxop4MVJXpby6MXC7lXAdoRR-qQf4Wb33MOCWYM6VWdaYCdMLKQ",imagesearch:function(b,a,c){_url=this.url+"images?v=1.0&rsz=large&q="+escape(b)+"+site:"+escape(a)+"&callback=?";jQuery.getJSON(_url,function(d){results=d.responseData;c(results)})},paginate:function(d,b,a,c,e){if(c=="next"){_index=a+1}else{_index=a-1}start="&start="+(8*_index);pageurl=this.url+"images?v=1.0&rsz=large&q="+escape(d)+"+site:"+escape(b)+start+"&callback=?";jQuery.getJSON(pageurl,function(f){results=f.responseData;e(results)})}};yahooSearchBoss={boss_url:"http://boss.yahooapis.com/ysearch/web/v1/",params:"&format=json&callback=?",appid:"?appid=kNuTm_nV34GvU0QGUJ4x7UWXPP8CANV9VPa.Spsah_b.2eLRII9vBXP4hkU6r_PIm.4Ftw--",paginate:function(c,b,a,d){start="&start="+getParameter(a,"start");count="&count="+getParameter(a,"count");sites="&sites="+escape(b);yahoo=this.boss_url+c+this.appid+count+sites+start+this.params;jQuery.getJSON(yahoo,function(e){results=e.ysearchresponse;d(results)})},search:function(c,a,b,d){yahoo=this.boss_url;count="&count="+b;sites="";if(a!=""){uri=parseUri(a);sites="&sites="+escape(uri.host)}yahoo+=c+this.appid+count+sites+this.params;jQuery.getJSON(yahoo,function(e){results=e.ysearchresponse;d(results)})}};jQuery.autocomplete=function(e,C){var v=this;var I=jQuery(e).attr("autocomplete","off");if(C.inputClass){I.addClass(C.inputClass)}jQuery("."+C.resultsClass).remove();var w=document.createElement("div");var j=jQuery(w);j.fadeOut().addClass(C.resultsClass).css("position","absolute");if(C.width>0){j.css("width",C.width)}jQuery("body").append(w);e.autocompleter=v;var S=null;var G="";var T=-1;var m={};var L=false;var n=false;var b=null;var H=false;var l=false;var y="web";var a=0;var W=0;var R="";var A="";function p(){m={};m.data={};m.length=0}p();if(C.data!=null){var z="",Z={},r=[];if(typeof C.url!="string"){C.cacheLength=1}for(var X=0;X<C.data.length;X++){r=((typeof C.data[X]=="string")?[C.data[X]]:C.data[X]);if(r[0].length>0){z=r[0].substring(0,1).toLowerCase();if(!Z[z]){Z[z]=[]}Z[z].push(r)}}for(var V in Z){C.cacheLength++;f(V,Z[V])}}I.keydown(function(i){b=i.keyCode;switch(i.keyCode){case 37:i.preventDefault();jQuery(".sikbox_results .pagination .previous").click();break;case 38:i.preventDefault();N(-1);break;case 39:i.preventDefault();jQuery(".sikbox_results .pagination .next").click();break;case 40:i.preventDefault();N(1);break;case 9:case 13:if(I.val()==A){if(P()){I.get(0).blur();i.preventDefault()}}default:T=-1;if(S){clearTimeout(S)}S=setTimeout(function(){B();A=I.val()},C.delay);break}}).focus(function(){n=true;l=false}).blur(function(){n=false;if(l==false){d()}});D();j.mousedown(function(i){if(i.button==2){l=true}else{l=false}});jQuery("*").click(function(i){orginal_target=jQuery(i.originalTarget);if(jQuery(i.currentTarget).is(".sikbox_results")==false&&orginal_target.is("#imagesearch")==false&&orginal_target.is("#nextimageset")==false&&orginal_target.is("#previousimageset")==false){l=false;d()}});jQuery("*").keydown(function(i){if(i.keyCode==27){l=false;d();I.select()}});function B(){if(b==46||(b>8&&b<32&&b!=13)){I.select();return j.fadeOut()}var i=I.val();G=i;if(i.length>=C.minChars){I.addClass(C.loadingClass);M(i)}else{j.fadeOut()}}function N(k){var i=jQuery("li",w);if(!i){return}T+=k;if(T<0){T=0}else{if(T>=i.size()){T=i.size()-1}}i.find("div").removeClass("hover");i.removeClass("hover");jQuery(i[T]).find("div").addClass("hover");jQuery(i[T]).addClass("hover")}function P(){var i=jQuery("li.hover",w)[0];if(!i){var k=jQuery("li",w);if(C.selectOnly){if(k.length==1){i=k[0]}}else{if(C.selectFirst){i=k[0]}}}if(i){x(i);return true}else{return false}}function x(i){if(!i){i=document.createElement("li");i.extra=[];i.selectValue=""}var k=jQuery.trim(i.selectValue?i.selectValue:i.innerHTML);e.lastSelected=k;G=k;if(jQuery(i).find(".pagination").html()==null){j.html("");D();if(C.onItemSelect){setTimeout(function(){C.onItemSelect(i,I.val())},1)}}}function c(ab,k){var aa=I.get(0);if(aa.createTextRange){var i=aa.createTextRange();i.collapse(true);i.moveStart("character",ab);i.moveEnd("character",k);i.select()}else{if(aa.setSelectionRange){aa.setSelectionRange(ab,k)}else{if(aa.selectionStart){aa.selectionStart=ab;aa.selectionEnd=k}}}aa.focus()}function F(i){if(b!=8){I.val(I.val()+i.substring(G.length));c(G.length,i.length)}}function O(){pright=I.css("padding-right");pleft=I.css("padding-left");pright=parseInt(pright.replace("px",""));pleft=parseInt(pleft.replace("px",""));inputWidth=pright+pleft+I.width();C.width="305";if(parseInt(inputWidth)>305){C.width=parseInt(inputWidth)}var k=J(e);var i=(C.width>inputWidth)?C.width:inputWidth;offsetMiddle=k.z/2;xleft=k.x;if(xleft<=offsetMiddle){j.css({width:parseInt(i)+"px",top:(k.y+e.offsetHeight)+"px",left:k.x+"px"}).fadeIn("slow")}else{difwidth=i-inputWidth;newleft=k.x-difwidth;j.css({width:parseInt(i)+"px",top:(k.y+e.offsetHeight)+"px",left:newleft+"px"}).fadeIn("slow")}}function d(){if(S){clearTimeout(S)}S=setTimeout(D,200)}function D(){if(S){clearTimeout(S)}if(j.is(":visible")&&!H&&!l&&!C.testing){I.removeClass(C.loadingClass);j.fadeOut()}if(C.mustMatch){var i=I.val();if(i!=e.lastSelected){x(null)}}}function h(aa,k,i){if(k){if(W==a){I.removeClass(C.loadingClass);w.innerHTML="";if(i==null){setStats(aa,C.url,0)}if(jQuery.browser.msie){j.append(document.createElement("iframe"))}w.appendChild(U(k));jQuery(".sikbox_results .pagination .next").click(function(){I.addClass(C.loadingClass);H=true;if(jQuery(this).attr("id")=="nextimageset"){google.paginate(aa,C.url,R.cursor.currentPageIndex,"next",function(ab){H=false;R=ab;ab=E(ab.results);I.focus();h(aa,ab);jQuery(".sikbox_results ul").addClass("images")})}else{yahooSearchBoss.paginate(aa,C.url,R.nextpage,function(ab){H=false;R=ab;ab=g(ab.resultset_web);I.focus();h(aa,ab,"next")})}});jQuery(".sikbox_results .pagination .previous").click(function(){I.addClass(C.loadingClass);H=true;if(jQuery(this).attr("id")=="previousimageset"){google.paginate(aa,C.url,R.cursor.currentPageIndex,"previous",function(ab){H=false;R=ab;ab=E(ab.results);I.focus();h(aa,ab);jQuery(".sikbox_results ul").addClass("images")})}else{yahooSearchBoss.paginate(aa,C.url,R.prevpage,function(ab){H=false;R=ab;ab=g(ab.resultset_web);I.focus();h(aa,ab,"prev")})}});jQuery(w).find("ul").before('<div class="header"></div>');jQuery(w).find("ul").after('<div class="footer"></div>');jQuery(w).find("ul").wrap('<div class="content"></div>');jQuery(w).find("ul").before('<div class="type"><div id="imagesearch"></div> <div id="websearch"></div> </div>');jQuery("#imagesearch").click(function(){H=true;I.addClass(C.loadingClass);y="image";google.imagesearch(aa,C.url,function(ab){H=false;R=ab;ab=E(ab.results);h(aa,ab);jQuery(".sikbox_results ul").addClass("images")})});jQuery("#websearch").click(function(){I.addClass(C.loadingClass);H=true;y="web";yahooSearchBoss.search(aa,C.url,C.maxItemsToShow,function(ab){H=false;R=ab;ab=g(ab.resultset_web);h(aa,ab)})});if(C.autoFill&&(I.val().toLowerCase()==aa.toLowerCase())){F(k[0][0])}O()}}else{D()}}function g(k){var i=[];if(k){jQuery.each(k,function(ab){var ac=[];title=k[ab].title;ac[0]=title.replace(C.removeFromTitle,"");ac[1]=k[ab].url;ac[2]=k[ab]["abstract"];ac[3]="text";i[ab]=ac})}else{var aa=[];aa[0]="No results for "+I.val();aa[1]="#";aa[2]="";aa[3]="noresults";i[0]=aa}return i}function E(k){var i=[];if(k!=""){jQuery.each(k,function(ab){var ac=[];ac[0]=decodeURI(k[ab].tbUrl);ac[1]=k[ab].originalContextUrl;ac[2]=k[ab].contentNoFormatting;ac[3]="image";i[ab]=ac})}else{var aa=[];aa[0]="No images for "+I.val();aa[1]="#";aa[2]="";aa[3]="noresults";i[0]=aa}return i}function U(ab){var ae=document.createElement("ul");var ad=ab.length;for(var ac=0;ac<ad;ac++){var ah=ab[ac];if(!ah){continue}var af=document.createElement("li");var k=null;if(ah.length>1){k=[];for(var aa=1;aa<ah.length;aa++){k[k.length]=ah[aa]}}af.extra=k;target="";if(C.openNewWindow){target='target="_blank"'}if(ah[3]=="image"){jQuery(af).addClass("image");jQuery(af).append('<div class="result"><a href="'+ah[1]+'"'+target+'><img src="'+ah[0]+'"></a></div>')}else{if(ah[3]=="text"){jQuery(af).addClass("text");jQuery(af).append('<div class="result"><a href="'+ah[1]+'"'+target+">"+ah[0]+"</a></div>")}else{jQuery(af).append('<div class="noresults">'+ah[0]+"</div>")}}ae.appendChild(af);jQuery(af).find(".result").append('<div class="expand"></div>');jQuery(af).find(".result").append('<div class="abstract">'+ah[2]+"</div>");jQuery(af).find(".expand").toggle(function(){jQuery(this).parent().find(".abstract").fadeIn();l=true},function(){jQuery(this).parent().find(".abstract").hide();l=true});jQuery(af).find(".result a").click(function(){setStats(I.val(),jQuery(this).attr("href"),1)});o(ae,af)}var ag=document.createElement("li");prevpage="";nextpage="";if(typeof R!="undefined"&&ah[3]!="noresults"){if(typeof R.cursor!="undefined"){if(parseInt(R.cursor.currentPageIndex)>0){prevpage='<div class="previous" id="previousimageset">Previous</div>'}if(parseInt(R.cursor.currentPageIndex)<(parseInt(R.cursor.pages.length)-1)){nextpage='<div class="next" id="nextimageset">Next</div>'}}if(typeof R.prevpage!="undefined"){prevpage='<div class="previous">Previous</div>'}if(typeof R.nextpage!="undefined"){nextpage='<div class="next">Next</div>'}}if(nextpage!=""||prevpage!=""){pagehtml="<div class='pagination'>"+prevpage+nextpage+"</div>";jQuery(ag).append(pagehtml);jQuery(ag).addClass("pagination");ae.appendChild(ag);o(ae,ag)}return ae}function o(k,i){jQuery(i).hover(function(){jQuery("li",k).find("div").removeClass("hover");jQuery(this).find("div").addClass("hover");T=jQuery("li",k).indexOf(jQuery(this).get(0))},function(){jQuery(this).removeClass("hover")})}function M(k){if(!C.matchCase){k=k.toLowerCase()}var i=C.cacheLength?Y(k):null;if(i){h(k,i)}else{if(k.length>1){++a;if(y=="image"){google.imagesearch(k,C.url,function(aa){R=aa;++W;aa=E(aa.results);h(k,aa);jQuery(".sikbox_results ul").addClass("images")})}else{yahooSearchBoss.search(k,C.url,C.maxItemsToShow,function(aa){R=aa;++W;aa=g(aa.resultset_web);h(k,aa)})}}}}function u(ab){var k=C.url+"?q="+encodeURI(ab);for(var aa in C.extraParams){k+="&"+aa+"="+encodeURI(C.extraParams[aa])}return k}function Y(af){if(!af){return null}if(m.data[af]){return m.data[af]}if(C.matchSubset){for(var ad=af.length-1;ad>=C.minChars;ad--){var aa=af.substr(0,ad);var ag=m.data[aa];if(ag){var ae=[];for(var ab=0;ab<ag.length;ab++){var k=ag[ab];var ac=k[0];if(K(ac,af)){ae[ae.length]=k}}return ae}}}return null}function K(ab,aa){if(!C.matchCase){ab=ab.toLowerCase()}var k=ab.indexOf(aa);if(k==-1){return false}return k==0||C.matchContains}this.flushCache=function(){p()};this.show=function(){B()};this.setExtraParams=function(i){C.extraParams=i};this.setUrl=function(i){C.url=i};this.getUrl=function(){return C.url};this.setMaxItemsToShow=function(i){C.maxItemsToShow=i};this.findValue=function(){var k=I.val();if(!C.matchCase){k=k.toLowerCase()}var i=C.cacheLength?Y(k):null;if(i){Q(k,i)}else{if((typeof C.url=="string")&&(C.url.length>0)){jQuery.get(u(k),function(aa){aa=g(aa);f(k,aa);Q(k,aa)})}else{Q(k,null)}}};function Q(af,ae){var ac=(ae)?ae.length:0;var aa=null;for(var ad=0;ad<ac;ad++){var ag=ae[ad];if(ag[0].toLowerCase()==af.toLowerCase()){aa=document.createElement("li");if(C.formatItem){aa.innerHTML=C.formatItem(ag,ad,ac);aa.selectValue=ag[0]}else{aa.innerHTML=ag[0];aa.selectValue=ag[0]}var k=null;if(ag.length>1){k=[];for(var ab=1;ab<ag.length;ab++){k[k.length]=ag[ab]}}aa.extra=k}}if(C.onFindValue){setTimeout(function(){C.onFindValue(aa)},1)}}function f(k,i){if(!i||!k||!C.cacheLength){return}if(!m.length||m.length>C.cacheLength){p();m.length++}else{if(!m[k]){m.length++}}m.data[k]=i}function J(k){var aa=k.offsetLeft||0;var i=k.offsetTop||0;while(k=k.offsetParent){aa+=k.offsetLeft;i+=k.offsetTop;curwidth=k.offsetWidth}return{x:aa,y:i,z:curwidth}}};jQuery.fn.autocomplete=function(b,a,c){a=a||{};a.url=b;a.data=((typeof c=="object")&&(c.constructor==Array))?c:null;a.inputClass=a.inputClass||"input";a.resultsClass=a.resultsClass||"sikbox_results";a.lineSeparator=a.lineSeparator||"\n";a.cellSeparator=a.cellSeparator||"|";a.minChars=a.minChars||1;a.delay=a.delay||400;a.matchCase=a.matchCase||0;a.matchSubset=a.matchSubset||1;a.matchContains=a.matchContains||0;a.cacheLength=a.cacheLength||1;a.mustMatch=a.mustMatch||0;a.extraParams=a.extraParams||{};a.loadingClass=a.loadingClass||"sikbox_loading";a.selectFirst=a.selectFirst||false;a.selectOnly=a.selectOnly||false;a.maxItemsToShow=a.maxItemsToShow||10;a.autoFill=a.autoFill||false;a.width=parseInt(a.width,10)||0;a.onItemSelect=selectItem;a.removeFromTitle=a.removeFromTitle||"";a.openNewWindow=a.openNewWindow||false;a.testing=a.testing||false;this.each(function(){var d=this;new jQuery.autocomplete(d,a)});return this};jQuery.fn.autocompleteArray=function(b,a){return this.autocomplete(null,a,b)};jQuery.fn.indexOf=function(b){for(var a=0;a<this.length;a++){if(this[a]==b){return a}}return -1};