add crawl and handle function