presto-main/src/main/java/io/prestosql/sql/planner/optimizations/UnaliasSymbolReferences.java/UnaliasSymbolReferences/visitUnnest
class UnaliasSymbolReferences:        @Override
        public PlanNode visitUnnest(UnnestNode node, RewriteContext<Void> context)
        {
            PlanNode source = context.rewrite(node.getSource());
            ImmutableMap.Builder<Symbol, List<Symbol>> builder = ImmutableMap.builder();
            for (Map.Entry<Symbol, List<Symbol>> entry : node.getUnnestSymbols().entrySet()) {
                builder.put(canonicalize(entry.getKey()), entry.getValue());
            }
            return new UnnestNode(
                    node.getId(),
                    source,
                    canonicalizeAndDistinct(node.getReplicateSymbols()),
                    builder.build(),
                    node.getOrdinalitySymbol(),
                    node.getJoinType(),
                    node.getFilter().map(this::canonicalize));
        }