diff --git a/src/operator/MetaOperatorDefs/Leaky.cpp b/src/operator/MetaOperatorDefs/Leaky.cpp
index 450f2d1c3deb4bfb2e545f59af12b52258c5c654..425d47a497fdc550b223b6e35cf173dbdd37d907 100644
--- a/src/operator/MetaOperatorDefs/Leaky.cpp
+++ b/src/operator/MetaOperatorDefs/Leaky.cpp
@@ -65,7 +65,7 @@ std::shared_ptr<Node> Leaky(const int nbTimeSteps, const float threshold, const
     addNode->addChild(subNode, 0, 0);
     reset->addChild(subNode, 0, 1);
 
-    // U[t] = Input[T] + beta * U[T-1] - S[T-1]
+    // U[t] = (Input[T] + beta * U[T-1]) - S[T-1]
     subNode->addChild(potentialMem, 0, 0);
 
     // U[T] - U_th
@@ -96,7 +96,7 @@ std::shared_ptr<Node> Leaky(const int nbTimeSteps, const float threshold, const
     // This way, we can plug a stack operator after or node, and get correct results
     microGraph->setOrderedOutputs({//{potentialMem, memorizeOpDataOutputIndex},
                                    //{spikeMem, memorizeOpDataOutputIndex}
-                                   {addNode, 0},
+                                   {subNode, 0},
                                    {hsNode, 0}});
 
     auto metaOp = MetaOperator(/*type*/ "Leaky",