diff --git a/src/problem.cpp b/src/problem.cpp
index 46cdb2eb85d804a215a6d74dd3456142201f40d1..3989d2695e61c95b5b3b1068131f40461c9621ab 100644
--- a/src/problem.cpp
+++ b/src/problem.cpp
@@ -822,6 +822,12 @@ void Problem::print(int depth, bool constr_by, bool metric, bool state_blocks)
                     }
                     else
                         cout << " -> S-";
+                    if (C->isMotion())
+                    {
+                        auto CM = std::static_pointer_cast<CaptureMotion>(C);
+                        if (CM->getOriginFramePtr())
+                            cout << " -> OF" << CM->getOriginFramePtr()->id();
+                    }
 
                     cout << ((depth < 3) ? " -- " + std::to_string(C->getFeatureList().size()) + "f" : "");
                     if (constr_by)