int version; read(paramtop, "version", version);
try {  read(inputtop, "Param", input.param);
void read(XMLReader& xml, const string& path, Param_t& param){  XMLReader paramtop(xml, path);  int version;  read(paramtop, "version", version);  switch (version)   {  case 9:    /**************************************************************************/    param.Wl_snk = false;    break;  case 10:    /**************************************************************************/    read(paramtop, "Wl_snk", param.Wl_snk);    break;  default:    /**************************************************************************/    QDPIO::cerr << "Input parameter version " << version << " unsupported." << endl;    QDP_abort(1);  }  read(paramtop, "Pt_snk", param.Pt_snk);  read(paramtop, "Sl_snk", param.Sl_snk);  read(paramtop, "MesonP", param.MesonP);  read(paramtop, "CurrentP", param.CurrentP);  read(paramtop, "BaryonP", param.BaryonP);  read(paramtop, "time_rev", param.time_rev);  read(paramtop, "mom2_max", param.mom2_max);  read(paramtop, "avg_equiv_mom", param.avg_equiv_mom);  read(paramtop, "wvf_kind", param.wvf_kind);  read(paramtop, "wvf_param", param.wvf_param);  read(paramtop, "wvfIntPar", param.wvfIntPar);  if (param.wvf_param.size() != param.wvfIntPar.size())  {    QDPIO::cerr << "wvf_param size inconsistent with wvfintpar size" << endl;    QDP_abort(1);  }  read(paramtop, "nrow", param.nrow);}