add hg download function