framework

still need to pull relevant functions from pocr