return new MessageNode((children == null) ? null : children.clone(stylesheet), (next == null) ? null : next.clone(stylesheet), terminate);
TemplateNode ret = new MessageNode(terminate); if (children != null) { ret.children = children.clone(stylesheet); } if (next != null) { ret.next = next.clone(stylesheet); } return ret;
  TemplateNode clone(Stylesheet stylesheet)  {    return new MessageNode((children == null) ? null :                           children.clone(stylesheet),                           (next == null) ? null :                           next.clone(stylesheet),                           terminate);  }