anchor.diff:          code.setAttribute("statements",d);
           setReturnVariables(code, d);
          }
  -    | (variable[code]) => variable[code]
  +    | (variableDecl[code]) => variableDecl[code]
       | (datasetdecl[code]) => datasetdecl[code]
   
       |   (functioncallStatNoAssign) => d=functioncallStatNoAssign
  
positive.code: 
  compoundStat[StringTemplate code]
      :   LCURLY
      ( declORstat[code] )*
          RCURLY
      ;
  
  compoundBody[StringTemplate code]
      :    ( declORstat[code] )*
      ;
  
  declORstat[StringTemplate code]
  {StringTemplate s=null;}
      :
      (variable[code]) => variable[code]
      |  (datasetdecl[code]) => datasetdecl[code]
      |  s=statement
         {
  
negative.code: program returns [StringTemplate code=template("program")]
      :
      (nsdecl[code])*        //namespace declaration
      (topLevelStatement[code])*
      ;
  
  nsdecl [StringTemplate code]
  