squashed the 3 commits all into 1