an incomplete version of overlay and push modes