Index: /trunk/Mars/mjobs/MJSimulation.cc
===================================================================
--- /trunk/Mars/mjobs/MJSimulation.cc	(revision 19705)
+++ /trunk/Mars/mjobs/MJSimulation.cc	(revision 19706)
@@ -817,6 +817,11 @@
             fFileOut = fFileOut.Remove(dot);
     }
+
+    const char *regex = fRunNumber<0 ?
+        "s/[cC][eE][rR]([0-9]+)(-[tT][eE][lL]([0-9]+))?/%s\\/00$1.%03d%%s_MonteCarlo$3.root/" :
+        "s/[cC][eE][rR][0-9]+([0-9][0-9][0-9])(-[tT][eE][lL]([0-9]+))?/%s\\/%08d.$1%%s_MonteCarlo$3.root/";
+
     const char *fmt = fFileOut.IsNull() ?
-        Form("s/[cC][eE][rR]([0-9]+)([0-9][0-9][0-9])(-[tT][eE][lL][0-9]+)?/%s\\/%08d.$2%%s_MonteCarlo$1.root/", Esc(fPathOut).Data(), header.GetRunNumber()) :
+        Form(regex, Esc(fPathOut).Data(), header.GetRunNumber()) :
         Form("%s/%s%%s.root", Esc(fPathOut).Data(), Esc(fFileOut).Data());
 
