anchor.diff:  
   // https://msdn.microsoft.com/en-us/library/ms174969.aspx
   drop_procedure
  -    : DROP proc=(PROC | PROCEDURE) (IF EXISTS)? func_proc_name_two_part (',' func_proc_name_two_part)* ';'?
  +    : DROP proc=(PROC | PROCEDURE) (IF EXISTS)? func_proc_name_schema (',' func_proc_name_schema)* ';'?
       ;
   
   // https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-trigger-transact-sql
  
positive.code:            (
               (
                (STATUS EQUAL (ON | OFF) COMMA? )?
                (PROCEDURE_NAME EQUAL func_proc_name_three_part COMMA?)?
                (MAX_QUEUE_READERS EQUAL max_readers=DECIMAL COMMA?)?
                (EXECUTE AS (SELF | user_name=STRING | OWNER) COMMA?)?
               )
  
negative.code:     ;
  
  execute_body
      : (return_status=LOCAL_ID '=')? (func_proc_name_server_database_schema | expression) (execute_statement_arg (',' execute_statement_arg)*)? ';'?
      | '(' execute_var_string ('+' execute_var_string)* ')' (AS? (LOGIN | USER) '=' STRING)? ';'?
      ;
  
  