basic layout, which will undoubtedly change