type and layout