diff --git a/benchmarks/dvmp/analysis/dvmp.h b/benchmarks/dvmp/analysis/dvmp.h
index c947d10aa432fb1fccbaaf30526a0afea737bed3..baf694cb18513527ae4438db4ec4f5f2378de084 100644
--- a/benchmarks/dvmp/analysis/dvmp.h
+++ b/benchmarks/dvmp/analysis/dvmp.h
@@ -45,9 +45,9 @@ namespace util {
     return quantities;
   }
 
-  inline double get_nu_simu(inv_quant quantities) { return quantities.nu / 1000.; }
-  inline double get_Q2_simu(inv_quant quantities) { return quantities.Q2; }
-  inline double get_x_simu(inv_quant quantities) { return quantities.x; }
+  inline double get_nu(inv_quant quantities) { return quantities.nu / 1000.; }
+  inline double get_Q2(inv_quant quantities) { return quantities.Q2; }
+  inline double get_x(inv_quant quantities) { return quantities.x; }
   inline double get_t(inv_quant quantities) { return quantities.t; }
 
   // for tracking, add later
diff --git a/benchmarks/dvmp/analysis/vm_invar.cxx b/benchmarks/dvmp/analysis/vm_invar.cxx
index 941e204754d94bf110df30d79e3313bbece4e8dc..709a062d257845b042098f9e52f6a3ce07143b41 100644
--- a/benchmarks/dvmp/analysis/vm_invar.cxx
+++ b/benchmarks/dvmp/analysis/vm_invar.cxx
@@ -82,9 +82,9 @@ int vm_invar(const std::string& config_name)
                   .Define("p_sim", util::momenta_from_simulation, {"mcparticles2"})
                   //================================================================
                   .Define("invariant_quantities", util::calc_inv_quant_simu, {"p_sim"})
-                  .Define("nu_sim", util::get_nu_simu, {"invariant_quantities"})
-                  .Define("Q2_sim", util::get_Q2_simu, {"invariant_quantities"})
-                  .Define("x_sim", util::get_x_simu, {"invariant_quantities"})
+                  .Define("nu_sim", util::get_nu, {"invariant_quantities"})
+                  .Define("Q2_sim", util::get_Q2, {"invariant_quantities"})
+                  .Define("x_sim", util::get_x, {"invariant_quantities"})
                   .Define("t_sim", util::get_t, {"invariant_quantities"});
   //================================================================
 
@@ -102,8 +102,8 @@ int vm_invar(const std::string& config_name)
 
     // Print canvas to output file
 
-    TCanvas c{"canvas2", "canvas2", 1800, 600};
-    c.Divide(3, 1, 0.0001, 0.0001);
+    TCanvas c{"canvas2", "canvas2", 1200, 900};
+    c.Divide(2, 2, 0.0001, 0.0001);
     // pad 1 nu
     c.cd(1);
     // gPad->SetLogx(false);
@@ -155,7 +155,7 @@ int vm_invar(const std::string& config_name)
     // tptr1->SetTextColor(plot::kMpOrange);
     t22->Draw();
 
-    // pad 1 nu
+    // pad 3 x
     c.cd(3);
     // gPad->SetLogx(false);
     // gPad->SetLogy(false);
@@ -179,6 +179,31 @@ int vm_invar(const std::string& config_name)
     // tptr1 = t1->AddText("reconstructed");
     // tptr1->SetTextColor(plot::kMpOrange);
     t23->Draw();
+    
+    // pad 3 x
+    c.cd(4);
+    // gPad->SetLogx(false);
+    // gPad->SetLogy(false);
+    auto& ht = *h_t_sim;
+    // histogram style
+    ht.SetLineColor(plot::kMpBlue);
+    ht.SetLineWidth(2);
+    // axes
+    ht.GetXaxis()->CenterTitle();
+    // draw everything
+    ht.DrawClone("hist");
+    // FIXME hardcoded beam configuration
+    plot::draw_label(10, 100, detector);
+    TText* tptr4;
+    auto   t4 = new TPaveText(.6, .8417, .9, .925, "NB NDC");
+    t4->SetFillColorAlpha(kWhite, 0);
+    t4->SetTextFont(43);
+    t4->SetTextSize(25);
+    tptr4 = t4->AddText("simulated");
+    tptr4->SetTextColor(plot::kMpBlue);
+    // tptr1 = t1->AddText("reconstructed");
+    // tptr1->SetTextColor(plot::kMpOrange);
+    t4->Draw();
 
     c.Print(fmt::format("{}InvariantQuantities.png", output_prefix).c_str());