massive changes made