more work on framework