diff --git a/src/SogKripkeStateOTF.cpp b/src/SogKripkeStateOTF.cpp
index 5c34da89dd6aec8282bf6c50270c14fdbfb92ee7..8c828f256e9e4018cf9285d47eb9f7832806b144 100644
--- a/src/SogKripkeStateOTF.cpp
+++ b/src/SogKripkeStateOTF.cpp
@@ -8,23 +8,3 @@ SogKripkeStateOTF::~SogKripkeStateOTF()
     //dtor
 }
 
-SogKripkeStateOTF* SogKripkeStateOTF::clone() const
-{
-    return new SogKripkeStateOTF(*this);
-}
-
-size_t SogKripkeStateOTF::hash() const
-{
-    return m_state->getLDDValue();
-}
-
-int SogKripkeStateOTF::compare(const spot::state* other) const
-{
-    auto o = static_cast<const SogKripkeStateOTF*>(other);
-    size_t oh = o->hash();
-    size_t h = hash();
-    if (h < oh)
-        return -1;
-    else
-        return h > oh;
-}
diff --git a/src/SogKripkeStateOTF.h b/src/SogKripkeStateOTF.h
index 0e4135907296eb65794e9937c840c22aac920895..7296c12d8844ff68b4bf178ff91521197cdcdb1c 100644
--- a/src/SogKripkeStateOTF.h
+++ b/src/SogKripkeStateOTF.h
@@ -10,15 +10,30 @@ public:
     SogKripkeStateOTF(LDDState *st):m_state(st) {};
     virtual ~SogKripkeStateOTF();
 
-    SogKripkeStateOTF* clone() const override;
-    size_t hash() const override;
-
-    int compare(const spot::state* other) const override;
+    SogKripkeStateOTF* clone() const override
+    {
+        return new SogKripkeStateOTF(m_state);
+    }
+    size_t hash() const override
+    {
+        return m_state->getLDDValue();
+    }
 
-    LDDState* getLDDState()
+    int compare(const spot::state* other) const override
     {
+        auto o = static_cast<const SogKripkeStateOTF*>(other);
+        size_t oh = o->hash();
+        size_t h = hash();
+        if (h < oh)
+            return -1;
+        else
+            return h > oh;
+    }
+    LDDState* getLDDState() {
         return m_state;
     }
+protected:
+
 private:
     LDDState *m_state;
 };