made framework global so it doesn't have to be required individually