anchor.diff:  // Unary operations have the same precedence as multiplications
   
   vectorOperation
  -    : vector powOp vectorOperation // pow is right-associative
  +    : <assoc=right> vectorOperation powOp vectorOperation
       | unaryOp vectorOperation
       | vectorOperation multOp vectorOperation
       | vectorOperation addOp vectorOperation
  
positive.code: // Selectors
  
  instantSelector
      : METRIC_NAME LEFT_BRACE labelMatcher (COMMA labelMatcher)* RIGHT_BRACE
      | METRIC_NAME LEFT_BRACE RIGHT_BRACE
      | METRIC_NAME
      | LEFT_BRACE labelMatcher (COMMA labelMatcher)* RIGHT_BRACE
      ;
  
  labelMatcher:         labelName labelMatcherOperator STRING;
  labelMatcherOperator: EQ | NE | RE | NRE;
  
  matrixSelector: instantSelector TIME_RANGE;
  
  
negative.code: 
  function: FUNCTION LEFT_PAREN parameter (COMMA parameter)* RIGHT_PAREN;
  
  parameter:     literal | vector;
  parameterList: LEFT_PAREN (parameter (COMMA parameter)*)? RIGHT_PAREN;
  
  // Aggregations
  
  