finished,but  not tested
free some space