docs: private String[] handleDeprecation(DeprecationContext deprecations,
  	                                   String name) {
  		if (null != name) {
  			name = name.trim();
  		}
  		// Initialize the return value with requested name
  		String[] names = new String[]{name};
  		// Deprecated keys are logged once and an updated names are returned
  		DeprecatedKeyInfo keyInfo = deprecations.getDeprecatedKeyMap().get(name);
  		if (keyInfo != null) {
  			if (!keyInfo.getAndSetAccessed()) {
  				logDeprecation(keyInfo.getWarningMessage(name));
  			}
  			// Override return value for deprecated keys
  			names = keyInfo.newKeys;
  		}
  		// If there are no overlay values we can return early
  		Properties overlayProperties = getOverlay();
  		if (overlayProperties.isEmpty()) {
  			return names;
  		}
  		// Update properties and overlays with reverse lookup values
  		for (String n : names) {
  			String deprecatedKey = deprecations.getReverseDeprecatedKeyMap().get(n);
  			if (deprecatedKey != null && !overlayProperties.containsKey(n)) {
  				String deprecatedValue = overlayProperties.getProperty(deprecatedKey);
  				if (deprecatedValue != null) {
  					getProps().setProperty(n, deprecatedValue);
  					overlayProperties.setProperty(n, deprecatedValue);
  				}
  			}
  		}
  		return names;
  	}