Removed 'this' setting on factory
Tweaked factory method return syntax
Implemented using '