Cleaned up the structure a bit