cleaned up structure a little