code: protected LightweightTypeReference doNormalizeElementType(LightweightTypeReference actual, LightweightTypeReference expected) {
  		if (matchesExpectation(actual, expected)) {
  			return expected;
  		}
  		return normalizeFunctionTypeReference(actual);
  	}
docs: If the expected type is not a wildcard, it may supersede the actual element type.