lots of changes to layout