diff --git a/gstlal-inspiral/bin/gstlal_inspiral b/gstlal-inspiral/bin/gstlal_inspiral
index ffe45d548298af9134e1a3aea9c6b28e85a52879..096bbcd1578129768ac7e21e11d5c1af58812e9e 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral
+++ b/gstlal-inspiral/bin/gstlal_inspiral
@@ -51,13 +51,10 @@ from gstlal import bottle
 from glue import segments
 from glue import segmentsUtils
 from glue.ligolw import ligolw
-from glue.ligolw import array
-from glue.ligolw import param
+from glue.ligolw import array as ligolw_array
+from glue.ligolw import param as ligolw_param
 from glue.ligolw import lsctables
-array.use_in(ligolw.LIGOLWContentHandler)
-param.use_in(ligolw.LIGOLWContentHandler)
-lsctables.use_in(ligolw.LIGOLWContentHandler)
-from glue.ligolw import utils
+from glue.ligolw import utils as ligolw_utils
 from glue.ligolw.utils import segments as ligolw_segments
 from pylal.datatypes import LIGOTimeGPS
 from pylal import series as lalseries
@@ -73,6 +70,12 @@ from gstlal import datasource
 from gstlal import simulation
 from gstlal import hoftcache
 
+class LIGOLWContentHandler(ligolw.LIGOLWContentHandler):
+	pass
+ligolw_array.use_in(LIGOLWContentHandler)
+ligolw_param.use_in(LIGOLWContentHandler)
+lsctables.use_in(LIGOLWContentHandler)
+
 def excepthook(*args):
 	# system exception hook that forces hard exit.  without this,
 	# exceptions that occur inside python code invoked as a call-back
@@ -323,7 +326,7 @@ if not options.check_time_stamps:
 
 
 if options.veto_segments_file is not None:
-	veto_segments = ligolw_segments.segmenttable_get_by_name(utils.load_filename(options.veto_segments_file, verbose = options.verbose, contenthandler = ligolw.LIGOLWContentHandler), options.veto_segments_name).coalesce()
+	veto_segments = ligolw_segments.segmenttable_get_by_name(ligolw_utils.load_filename(options.veto_segments_file, verbose = options.verbose, contenthandler = LIGOLWContentHandler), options.veto_segments_name).coalesce()
 else:
 	veto_segments = None
 
@@ -339,7 +342,7 @@ else:
 
 
 if options.reference_psd is not None:
-	psd = lalseries.read_psd_xmldoc(utils.load_filename(options.reference_psd, verbose = options.verbose, contenthandler = ligolw.LIGOLWContentHandler))
+	psd = lalseries.read_psd_xmldoc(ligolw_utils.load_filename(options.reference_psd, verbose = options.verbose, contenthandler = LIGOLWContentHandler))
 else:
 	psd = dict((instrument, None) for instrument in detectors.channel_dict)
 
@@ -421,7 +424,7 @@ for svd_bank, output_filename, likelihood_file in zip(svd_banks, options.output,
 
 
 	if options.data_source in ("lvshm", "framexmit"):
-		FAR = far.LocalRankingData.from_xml(utils.load_filename(likelihood_file, verbose = options.verbose, contenthandler = ligolw.LIGOLWContentHandler))
+		FAR = far.LocalRankingData.from_xml(ligolw_utils.load_filename(likelihood_file, verbose = options.verbose, contenthandler = LIGOLWContentHandler))
 	else:
 		FAR = far.LocalRankingData(segments.segment(None, None), far.ThincaCoincParamsDistributions())
 		# initialize an empty trials table with the combinations of