First draft of static factory method