almost all chamges made