public virtual Object Visit(ASTBlock node, Object data) { data = node.ChildrenAccept(this, data); return(data); }