diff --git a/Processes/Pythia/Random.cc b/Processes/Pythia/Random.cc
index 8fcbcf4ee7274ba36252f7969306073f3cffddd5..0d08403ca1d890a062e2632124079c6a3cb220f6 100644
--- a/Processes/Pythia/Random.cc
+++ b/Processes/Pythia/Random.cc
@@ -12,9 +12,6 @@
 
 namespace corsika::process::pythia {
 
-  double Random::flat() {
-    std::uniform_real_distribution<double> dist;
-    return dist(fRNG);
-  }
+  double Random::flat() { return fDist(fRNG); }
 
 } // namespace corsika::process::pythia
diff --git a/Processes/Pythia/Random.h b/Processes/Pythia/Random.h
index 276fc532ca53ac84b708e8ad12cb16fbaed01c9a..cd35fc4eeafcbdf4ec507cf54ab966271a8183f0 100644
--- a/Processes/Pythia/Random.h
+++ b/Processes/Pythia/Random.h
@@ -23,6 +23,7 @@ namespace corsika::process {
       double flat();
 
     private:
+      std::uniform_real_distribution<double> fDist;
       corsika::random::RNG& fRNG =
           corsika::random::RNGManager::GetInstance().GetRandomStream("pythia");
     };