framework and some stubs