changing layouts and a lot more