type ahead implemented