layout
fix bugs