Adding explicit factory methods