Source:
<code>public ExpressionAnalysis( Map<NodeRef<Expression>, Type> expressionTypes, Map<NodeRef<Expression>, Type> expressionCoercions, Set<NodeRef<InPredicate>> subqueryInPredicates, Set<NodeRef<SubqueryExpression>> scalarSubqueries, Set<NodeRef<ExistsPredicate>> existsSubqueries, Map<NodeRef<Expression>, FieldId> columnReferences, Set<NodeRef<Expression>> typeOnlyCoercions, Set<NodeRef<QuantifiedComparisonExpression>> quantifiedComparisons, Map<NodeRef<Identifier>, LambdaArgumentDeclaration> lambdaArgumentReferences) { <START> this.expressionTypes = new LinkedHashMap<>(requireNonNull(expressionTypes, "expressionTypes is null")); <END> this.expressionCoercions = new LinkedHashMap<>(requireNonNull(expressionCoercions, "expressionCoercions is null")); this.typeOnlyCoercions = new LinkedHashSet<>(requireNonNull(typeOnlyCoercions, "typeOnlyCoercions is null")); this.columnReferences = new LinkedHashMap<>(requireNonNull(columnReferences, "columnReferences is null")); this.subqueryInPredicates = new LinkedHashSet<>(requireNonNull(subqueryInPredicates, "subqueryInPredicates is null")); this.scalarSubqueries = new LinkedHashSet<>(requireNonNull(scalarSubqueries, "subqueryInPredicates is null")); this.existsSubqueries = new LinkedHashSet<>(requireNonNull(existsSubqueries, "existsSubqueries is null")); this.quantifiedComparisons = new LinkedHashSet<>(requireNonNull(quantifiedComparisons, "quantifiedComparisons is null")); this.lambdaArgumentReferences = new LinkedHashMap<>(requireNonNull(lambdaArgumentReferences, "lambdaArgumentReferences is null")); }</code><technical_language>wrap unmodifiableSet in constructor return field reference get* methods</technical_language>

Target:
public ExpressionAnalysis( Map<NodeRef<Expression>, Type> expressionTypes, Map<NodeRef<Expression>, Type> expressionCoercions, Set<NodeRef<InPredicate>> subqueryInPredicates, Set<NodeRef<SubqueryExpression>> scalarSubqueries, Set<NodeRef<ExistsPredicate>> existsSubqueries, Map<NodeRef<Expression>, FieldId> columnReferences, Set<NodeRef<Expression>> typeOnlyCoercions, Set<NodeRef<QuantifiedComparisonExpression>> quantifiedComparisons, Map<NodeRef<Identifier>, LambdaArgumentDeclaration> lambdaArgumentReferences) { this.expressionTypes = ImmutableMap.copyOf(requireNonNull(expressionTypes, "expressionTypes is null")); this.expressionCoercions = ImmutableMap.copyOf(requireNonNull(expressionCoercions, "expressionCoercions is null")); this.typeOnlyCoercions = ImmutableSet.copyOf(requireNonNull(typeOnlyCoercions, "typeOnlyCoercions is null")); this.columnReferences = ImmutableMap.copyOf(requireNonNull(columnReferences, "columnReferences is null")); this.subqueryInPredicates = ImmutableSet.copyOf(requireNonNull(subqueryInPredicates, "subqueryInPredicates is null")); this.scalarSubqueries = ImmutableSet.copyOf(requireNonNull(scalarSubqueries, "subqueryInPredicates is null")); this.existsSubqueries = ImmutableSet.copyOf(requireNonNull(existsSubqueries, "existsSubqueries is null")); this.quantifiedComparisons = ImmutableSet.copyOf(requireNonNull(quantifiedComparisons, "quantifiedComparisons is null")); this.lambdaArgumentReferences = ImmutableMap.copyOf(requireNonNull(lambdaArgumentReferences, "lambdaArgumentReferences is null")); }