use a temp dir
fix bug