Condensed some things to make it clea(n/r)er