base setup for type