diff --git a/tool/ompt_callbacks.cpp b/tool/ompt_callbacks.cpp
index 926bb336eda1002f5fd4de2ba4a5e2d68e052c7b..f73787d78bcd66c279d8340a032f9de1edf2bb48 100644
--- a/tool/ompt_callbacks.cpp
+++ b/tool/ompt_callbacks.cpp
@@ -187,9 +187,9 @@ static void ompt_decoder( ompt_dependence_t* dep, int i, void** addr, size_t* le
   if (dep[i].dependence_type & ompt_dependence_type_out)
     *mode |=KAAPI_ACCESS_MODE_W;
   if (dep[i].dependence_type & ompt_dependence_type_inout)
-    *mode |=KAAPI_ACCESS_MODE_CW;
+    *mode =KAAPI_ACCESS_MODE_R|KAAPI_ACCESS_MODE_W;
   //if (dep[i].dependence_flags.commute)
-    //*mode =KAAPI_ACCESS_MODE_R|KAAPI_ACCESS_MODE_W;
+    //*mode |=KAAPI_ACCESS_MODE_CW;
 }
 
 
diff --git a/tool/tool.cpp b/tool/tool.cpp
index d34572bff28c010657ceebc9b25ffdb3949c0846..6a17401bd6c26f5836f26bc1b46ea10734777201 100644
--- a/tool/tool.cpp
+++ b/tool/tool.cpp
@@ -75,3 +75,40 @@ extern "C" {
     return &ompt_start_tool_result;
   }
 }
+
+
+
+#if 0
+struct F {
+  void operator() ( ... )
+  {
+    Inst0;
+    Fork<F1>() ( e1 );
+    Inst1;
+    Fork<F2>() ( e2 );
+    Inst2;
+    ...
+    Fork<Fn>() ( en );
+    Instn;
+  }
+};
+
+struct F {
+  void operator() ( ... )
+  {
+    Inst0;
+    e1 = eval(e1);
+    Inst1;
+    e2 = eval(e2);
+    Inst2;
+    ...
+    en= eval(en);
+    Instn;
+
+    Fork<F1>() ( e1 );
+    Fork<F2>() ( e2 );
+    ...
+    Fork<Fn>() ( en );
+  }
+};
+#endif