more structure created to be implemented