Moved to a more logic structure