Simple factory method implementation