piano mode mostly implemented