add check() & download()