adjust format
fix bugs