hide constructor for factory