writing the framework I