using beaker instead of global variable dp... need to test thoroughly