Refactor the Factory behavior out of the Helper object