Refactoed add method to make more sense