reconstruct
fix some bugs with make