window.onload = function() { 
    var pathwayList = new List('pathway-search', {
        valueNames: ['name'],
        indexAsync: true
    }); 
    var geneList = new List('gene-search', {
        valueNames: ['name'],
        indexAsync: true
    }); 
    $('.search').on("keyup", function(){
        pathwayList.search($(".search").val());
        geneList.search($(".search").val());
    }); 

}; 

@@ -35,367 +35,424 @@
 var 
-pathwayList = new List('pathway-search', %7B%0A        valueNames: %5B'name'%5D,%0A        indexAsync: true%0A    %7D); %0A
+cache = %7B%7D;%0A    $( %22#input%22 ).autocomplete(%7B%0A      minLength: 2,%0A      source: function( request, response ) %7B%0A     
    
- 
 var 
-geneList = new List('gene-search', %7B%0A        valueNames: %5B'name'%5D,%0A        indexAsync: true%0A    %7D); %0A    $('.search').on(%22keyup%22, function()%7B%0A        pathwayList.search($(%22.search%22).val());%0A        geneList.search($(%22.search%22).val());%0A    %7D); %0A
+term = request%5B%22term%22%5D;%0A        if ( term in cache ) %7B%0A          response( cache%5B term %5D );%0A          return;%0A        %7D%0A        $.getJSON(%22/search%22, request, function( data, status, xhr ) %7B%0A            cache%5B term %5D = data.Terms;%0A            response( data.Terms );%0A        %7D);%0A      %7D%0A    %7D);
 %0A%7D; 

remove filter now old search