anchor.diff:          break;
         }
   
  -      res.add(lineParserRes.value);
  +      res.add(lineParserRes.value + "\n");
         position = lineParserRes.position;
       }
   
  -    return success([new FencedCodeBlock(res.join("\n"), fenceType, fenceSize, new InfoString(infoString))]).run(s, position);
  +    return success([new FencedCodeBlock(res.join(), fenceType, fenceSize, new InfoString(infoString))]).run(s, position);
     });
   
     //
  
positive.code:           break;
  
          case 4: // Possible fenced code start
            // TODO
            if (buffer.length > 0) {
              buildBuffer();
  
  
negative.code:           addItem();
  
            line = res.value[3];
            indent = res.value[1] + res.value[2].length;
            int size = min(line.length, 4);
            String substring = line.substring(0, size);
            if (substring != "    ") {
              indent += size - substring.trimLeft().length;
            }
  
            res = testForFencedCodeBlockAsFirstListBlock(res, res.value[1], res.value[2]);
  
            _updateListStack(stackPosition, indent);
  
  