copy of obullo framework 1.1