Further logic / structure changes