type is required