All of the above stuff above dealing with a paired list of named values seems like huge overkill compared to:    ```  auto keys = dl.key_inputs().tree()->trees();  auto values = dl.value_inputs().tree()->trees();  for(size_t i = 0; i < keys.size(); ++i) {    keys.push_back(emitExpr(keys[i]));    values.push_back(emitExpr(values[i]));  }  ```