some frame based improvements