diff --git a/DDG4/CMakeLists.txt b/DDG4/CMakeLists.txt
index 3fea704f91a710de2d285155c2fa5f4ecdd43a11..6a979e97e0d2b89db346bd87eba69b05ae779846 100644
--- a/DDG4/CMakeLists.txt
+++ b/DDG4/CMakeLists.txt
@@ -78,6 +78,11 @@ install(FILES
   python/SystemOfUnits.py
   DESTINATION python)
 
+install(FILES
+  python/checkOverlaps.py
+  python/checkGeometry.py
+  DESTINATION python)
+
 install(TARGETS DD4hepG4 DD4hepG4Plugins DD4hepG4Legacy g4gdmlDisplay dd_sim
   RUNTIME DESTINATION bin
   LIBRARY DESTINATION lib
diff --git a/DDG4/examples/CLICSidSimuMarkus.py b/DDG4/examples/CLICSidSimuMarkus.py
index f89ef4ee7b71a188b3850537ad5b6055e1b039ee..653a2fb678f1c60dad23e31d9566db09acca9336 100644
--- a/DDG4/examples/CLICSidSimuMarkus.py
+++ b/DDG4/examples/CLICSidSimuMarkus.py
@@ -20,7 +20,7 @@ def run():
   example_dir = install_dir+'/examples/DDG4/examples';
   kernel.loadGeometry("file:"+install_dir+"/DDDetectors/compact/SiD.xml")
   kernel.loadXML("file:"+example_dir+"/DDG4_field.xml")
-  DDG4.importConstants(lcdd)
+  DDG4.importConstants(lcdd,debug=False)
   simple = DDG4.Simple(kernel,tracker='Geant4TrackerCombineAction')
   simple.printDetectors()
   # Configure UI
@@ -65,6 +65,7 @@ def run():
   #gen.Input = "Geant4EventReaderHepMC|/home/frankm/SW/data/data.hepmc.txt"
   #gen.Input = "Geant4EventReaderHepMC|/home/frankm/SW/data/sherpa-2.1.1_zjets.hepmc2g"
   gen.Input = "LCIOFileReader|/afs/cern.ch/user/n/nikiforo/public/Markus/muons.slcio"
+  gen.Input = "LCIOFileReader|/afs/cern.ch/user/n/nikiforo/public/Markus/geantinos.slcio"
 
   gen.OutputLevel = generator_output_level
   gen.MomentumScale = 1.0
diff --git a/DDG4/python/checkGeometry.py b/DDG4/python/checkGeometry.py
new file mode 100755
index 0000000000000000000000000000000000000000..b92144a2471a3fbf311696f1a3610089b35da0f2
--- /dev/null
+++ b/DDG4/python/checkGeometry.py
@@ -0,0 +1,60 @@
+#!/bin/python
+import sys, optparse
+
+parser = optparse.OptionParser()
+parser.description = "TGeo Geometry checking."
+
+parser.add_option("-c", "--compact", dest="compact", default=None,
+                  help="Define LCCDD style compact xml input",
+		  metavar="<FILE>")
+
+parser.add_option("-f","--full",
+		  dest="full", default=False,
+                  help="Full geometry checking",
+		  metavar="<boolean>")
+
+parser.add_option("-n", "--ntracks",
+		  dest="num_tracks", default=1000000,
+                  help="Number of tracks [requires 'full']",
+		  metavar="<integer>")
+
+parser.add_option("-x", "--vx",
+		  dest="vx", default=0.0,
+                  help="X-position of track origine vertex [requires 'full']",
+		  metavar="<double>")
+
+parser.add_option("-y", "--vy",
+		  dest="vy", default=0.0,
+                  help="Y-position of track origine vertex [requires 'full']",
+		  metavar="<double>")
+
+parser.add_option("-z", "--vz",
+		  dest="vz", default=0.0,
+                  help="Z-position of track origine vertex [requires 'full']",
+		  metavar="<double>")
+
+parser.add_option("-o", "--option", dest="option", default='ob',
+                  help="Geometry checking option default:ob",
+		  metavar="<string>")
+
+(opts, args) = parser.parse_args()
+
+if opts.compact is None:
+  print "   ",parser.format_help()
+  sys.exit(1)
+
+try:
+  import DD4hep
+except ImportError,X:
+  print 'DD4hep python interface not accessible:',X
+
+DD4hep.setPrintLevel(DD4hep.OutputLevel.ERROR)
+print '+++%s\n+++ Loading compact geometry:%s\n+++%s'%(120*'=',opts.compact,120*'=')
+lcdd = DD4hep.Geo.LCDD.getInstance()
+lcdd.fromXML(opts.compact)
+print '+++%s\n+++ Checking geometry:%s full-check:%s\n+++%s'%(120*'=',opts.compact,opts.full,120*'=')
+if opts.full:
+  print '+++ # tracks:%d vertex:(%7.3f, %7.3f, %7.3f) [cm]'%(opts.num_tracks,opts.vx,opts.vy,opts.vz,)
+  lcdd.manager().CheckGeometryFull(opts.num_tracks,opts.vx,opts.vy,opts.vz,opts.option)
+else:
+  lcdd.manager().CheckGeometry()
diff --git a/DDG4/python/checkOverlaps.py b/DDG4/python/checkOverlaps.py
new file mode 100755
index 0000000000000000000000000000000000000000..e626f3c6a49656b98ae2c260cd64c4bad830b844
--- /dev/null
+++ b/DDG4/python/checkOverlaps.py
@@ -0,0 +1,44 @@
+#!/bin/python
+import sys, optparse
+
+parser = optparse.OptionParser()
+parser.description = "Check TGeo geometries for overlaps."
+parser.add_option("-c", "--compact", dest="compact", default=None,
+                  help="Define LCCDD style compact xml input",
+		  metavar="<FILE>")
+parser.add_option("-p", "--print",
+		  dest="print_overlaps", default=True,
+                  help="Print overlap information to standard output (default:True)",
+		  metavar="<boolean>")
+parser.add_option("-q", "--quiet", 
+                  action="store_false", dest="print_overlaps",
+                  help="Do not print (disable --print)")
+parser.add_option("-t", "--tolerance", dest="tolerance", default=0.1,
+                  help="Overlap checking tolerance. Unit is in [mm]. (default:0.1 mm)",
+		  metavar="<double number>")
+parser.add_option("-o", "--option", dest="option", default='',
+                  help="Overlap checking option ('' or 's')",
+		  metavar="<string>")
+
+(opts, args) = parser.parse_args()
+
+if opts.compact is None:
+  print "   ",parser.format_help()
+  sys.exit(1)
+
+try:
+  import DD4hep
+except ImportError,X:
+  print 'DD4hep python interface not accessible:',X
+  print parser.format_help()
+  sys.exit(1)
+
+DD4hep.setPrintLevel(DD4hep.OutputLevel.ERROR)
+print '+++%s\n+++ Loading compact geometry:%s\n+++%s'%(120*'=',opts.compact,120*'=')
+lcdd = DD4hep.Geo.LCDD.getInstance()
+lcdd.fromXML(opts.compact)
+print '+++%s\n+++ Checking overlaps of geometry:%s tolerance:%f option:%s\n+++%s'%(120*'=',opts.compact,opts.tolerance,opts.option,120*'=')
+lcdd.manager().CheckOverlaps(opts.tolerance,opts.option)
+if opts.print_overlaps:
+  print '+++%s\n+++ Printing overlaps of geometry:%s\n+++%s'%(120*'=',opts.compact,120*'=')
+  lcdd.manager().PrintOverlaps()