final changes I promise