return logger;
}
@Override
public void apply(PlanContext plan) {
Folder folder = new Folder(plan);
ResolvingVisitor resolvingVisitor = new ResolvingVisitor(plan, folder);
folder.initResolvingVisitor(resolvingVisitor);
plan.putWhiteboard(RESOLVER_MARKER, resolvingVisitor);
resolvingVisitor.resolve(plan.getPlan());
new TopLevelCaster(folder, resolvingVisitor.parametersSync).apply(plan.getPlan());
plan.getPlan().accept(ParameterCastInliner.instance);
}