cleaned up the structure a tad