layout changes with more variables