My Attempt to figure all of this out