don't force the usage of typeName