added tribal factory method