restruct the crawler