minor structure changes
minor structure changes