navigation/type factory