diff --git a/python/misc_utils/clock_offset_corrector.py b/python/misc_utils/clock_offset_corrector.py
index 403b513..b75d682 100644
--- a/python/misc_utils/clock_offset_corrector.py
+++ b/python/misc_utils/clock_offset_corrector.py
@@ -14,19 +14,16 @@
 import grgsm
 import math
 
-class clock_offset_corrector(gr.hier_block2):
+class clock_offset_corrector(grgsm.hier_block):
 
     def __init__(self, fc=936.6e6, ppm=0, samp_rate_in=1625000.0/6.0*4.0):
-        gr.hier_block2.__init__(
+        grgsm.hier_block.__init__(
             self, "Clock offset corrector",
             gr.io_signature(1, 1, gr.sizeof_gr_complex*1),
             gr.io_signature(1, 1, gr.sizeof_gr_complex*1),
         )
-        if version(gr.version()) >= version('3.7.9'):
-            self.message_port_register_hier_in("ppm_in")
-        else:
-            self.message_port_register_hier_out("ppm_in")
-
+        self.message_port_register_hier_in("ppm_in")
+        
         ##################################################
         # Parameters
         ##################################################
diff --git a/python/misc_utils/hier_block.py b/python/misc_utils/hier_block.py
new file mode 100644
index 0000000..a3ca1e6
--- /dev/null
+++ b/python/misc_utils/hier_block.py
@@ -0,0 +1,19 @@
+from gnuradio import gr
+from distutils.version import LooseVersion as version
+
+#class created to solve incompatibility of reginstration of message inputs
+#that was introduced in gnuradio 3.7.9
+
+class hier_block(gr.hier_block2):
+    def message_port_register_hier_in(self, port_id):
+        if version(gr.version()) >= version('3.7.9'):
+            super(hier_block, self).message_port_register_hier_in(port_id)
+        else:
+            super(hier_block, self).message_port_register_hier_out(port_id)
+
+    def message_port_register_hier_out(self, port_id):
+        if version(gr.version()) >= version('3.7.9'):
+            super(hier_block, self).message_port_register_hier_out(port_id)
+        else:
+            super(hier_block, self).message_port_register_hier_in(port_id)
+
