all the changes shown below are this way because i converted tabs to spaces... no other changes were made unless noted