Updated docs with factory method