anchor.diff:    Parser nilLiteral() =>
         super.nilLiteral().map((input) => LiteralValueNode<void>(input, null));
   
  -  Parser numberLiteral() => super
  -      .numberLiteral()
  -      .map((input) => LiteralValueNode<num>(input, buildNumber(input.value)));
  +  Parser numberLiteral() => super.numberLiteral().map(buildLiteralNumber);
   
     Parser parens() =>
         super.parens().map((input) => input[1]..surroundWith(input[0], input[2]));
  
positive.code:     LiteralArrayNode<T>(input[1].cast<LiteralNode<T>>().toList())
        ..surroundWith(input[0], input[2]);
  
  Node buildMessageNodes(ValueNode receiver, dynamic messages) => messages.fold(
      receiver,
      (receiver, parts) => parts == null || parts.isEmpty
  
negative.code:       super.trueLiteral().map((input) => LiteralValueNode<bool>(input, true));
  
    Parser variable() => super.variable().map((input) => VariableNode(input));
  }
  
  String buildString(String input) =>
  