basic layout, revised functionality