bunch of changes!