various changes to layout & function