I think we don't need to pass the variable values all around. Let's keep them at the top level together with schema. Maybe?