Added more structure and other stuff