type should be undefined when not present