some more changes. some should probably be local