Fix factory method