improve layout, add some explanation