[ADD] search function with cache;