change layout & fix a bug