oauth2/oauth2-jose/src/main/java/org/springframework/security/oauth2/jwt/MappedJwtClaimSetConverter.java
public static MappedJwtClaimSetConverter withDefaults
			(Map<String, Converter<Object, ?>> claimConverters) {
		Assert.notNull(claimConverters, "claimConverters cannot be null");

		Map<String, Converter<Object, ?>> claimNameToConverter = new HashMap<>();
		claimNameToConverter.put(JwtClaimNames.AUD, AUDIENCE_CONVERTER);
		claimNameToConverter.put(JwtClaimNames.EXP, TEMPORAL_CONVERTER);
		claimNameToConverter.put(JwtClaimNames.IAT, TEMPORAL_CONVERTER);
		claimNameToConverter.put(JwtClaimNames.ISS, ISSUER_CONVERTER);
		claimNameToConverter.put(JwtClaimNames.JTI, STRING_CONVERTER);
		claimNameToConverter.put(JwtClaimNames.NBF, TEMPORAL_CONVERTER);
		claimNameToConverter.put(JwtClaimNames.SUB, STRING_CONVERTER);
		claimNameToConverter.putAll(claimConverters);

		return new MappedJwtClaimSetConverter(claimNameToConverter);
	}
public static MappedJwtClaimSetConverter withDefaults
			(Map<String, Converter<Object, ?>> claimConverters) {
		Assert.notNull(claimConverters, "claimConverters cannot be null");

		Map<String, Converter<Object, ?>> claimNameToConverter = new HashMap<>();
		claimNameToConverter.put(JwtClaimNames.AUD, AUDIENCE_CONVERTER);
		claimNameToConverter.put(JwtClaimNames.EXP, TEMPORAL_CONVERTER);
		claimNameToConverter.put(JwtClaimNames.IAT, TEMPORAL_CONVERTER);
		claimNameToConverter.put(JwtClaimNames.ISS, ISSUER_CONVERTER);
		claimNameToConverter.put(JwtClaimNames.JTI, STRING_CONVERTER);
		claimNameToConverter.put(JwtClaimNames.NBF, TEMPORAL_CONVERTER);
		claimNameToConverter.put(JwtClaimNames.SUB, STRING_CONVERTER);
		claimNameToConverter.putAll(claimConverters);

		return new MappedJwtClaimSetConverter(claimNameToConverter);
	}
Construct a {@link MappedJwtClaimSetConverter}, overriding individual claim
converters with the provided {@link Map} of {@link Converter}s.

For example, the following would give an instance that is configured with only the default
claim converters:

<pre>
MappedJwtClaimSetConverter.withDefaults(Collections.emptyMap());
</pre>

Or, the following would supply a custom converter for the subject, leaving the other defaults
in place:

<pre>
MappedJwtClaimsSetConverter.withDefaults(
Collections.singletonMap(JwtClaimNames.SUB, new UserDetailsServiceJwtSubjectConverter()));
</pre>

To completely replace the underlying {@link Map} of converters, {@see MappedJwtClaimSetConverter(Map)}.

@param claimConverters
@return An instance of {@link MappedJwtClaimSetConverter} that contains the converters provided,
plus any defaults that were not overridden.