diff --git a/reading_machine/src/Config.cpp b/reading_machine/src/Config.cpp
index 4e5b42e4eba6e9499bc2a9326bace871e432277e..50e7f6180d9f95eb316f345473be75033d19782d 100644
--- a/reading_machine/src/Config.cpp
+++ b/reading_machine/src/Config.cpp
@@ -375,8 +375,9 @@ bool Config::isComment(std::size_t lineIndex) const
 
 bool Config::isCommentPredicted(std::size_t lineIndex) const
 {
-  auto & col0 = getAsFeature(0, lineIndex);
-  return !util::isEmpty(col0) and col0.get()[0] == '#';
+  auto & col0Pred = getAsFeature(0, lineIndex);
+  auto & col0Gold = getConst(0, lineIndex, 0);
+  return (!util::isEmpty(col0Pred) and col0Pred.get()[0] == '#') or (!util::isEmpty(col0Gold) and col0Gold.get()[0] == '#');
 }
 
 bool Config::isMultiword(std::size_t lineIndex) const
diff --git a/torch_modules/src/FocusedColumnLSTM.cpp b/torch_modules/src/FocusedColumnLSTM.cpp
index 9b5f52fba36b9af59ef4634c2bdc3728babc621d..4e0da0ebb99e7aab3abe9f18b89301df0a448591 100644
--- a/torch_modules/src/FocusedColumnLSTM.cpp
+++ b/torch_modules/src/FocusedColumnLSTM.cpp
@@ -78,6 +78,11 @@ void FocusedColumnLSTMImpl::addToContext(std::vector<std::vector<long>> & contex
         else if (config.isEmptyNodePredicted(index))
           elements.emplace_back("ID(EMPTYNODE)");
       }
+      else if (column == "EOS")
+      {
+        bool isEOS = config.getAsFeature(Config::EOSColName, index) == Config::EOSSymbol1;
+        elements.emplace_back(fmt::format("EOS({})", isEOS));
+      }
       else
       {
         elements.emplace_back(config.getAsFeature(column, index));