header, footer, body are separated