introduced layers to handle multiple viewports