stage 2 layout, stage 1 functionality