Lets just build that so that we don't have to do so many logic checks