gonna make a framework on top of this thing