anchor.diff:     ;
   
   name_of_gate_instance
  -   : gate_instance_identifier (range)?
  +   : gate_instance_identifier (range_)?
      ;
   
   // 3.2 Primitive strengths
  
positive.code:    | net_type (drive_strength)? ('signed')? (delay3)? list_of_net_decl_assignments ';'
     | 'trireg' (drive_strength)? ('signed')? (delay3)? list_of_net_decl_assignments ';'
     | 'trireg' (charge_strength)? ('signed')? (delay3)? list_of_net_identifiers ';'
     | 'trireg' (charge_strength)? ('vectored' | 'scalared')? ('signed')? range (delay3)? list_of_net_identifiers ';'
     | 'trireg' (drive_strength)? ('vectored' | 'scalared')? ('signed')? range (delay3)? list_of_net_decl_assignments ';'
     | net_type (drive_strength)? ('vectored' | 'scalared')? ('signed')? range (delay3)? list_of_net_decl_assignments ';'
     | net_type ('vectored' | 'scalared')? ('signed')? range (delay3)? list_of_net_identifiers ';'
     ;
  
  // 2.2 Declaration data types
  
negative.code: 
  udp_instantiation : udp_identifier ( drive_strength )? ( delay2 )? udp_instance ( ',' udp_instance )* ';' ;
  udp_instance : ( name_of_udp_instance )? '(' output_terminal ',' input_terminal ( ',' input_terminal )* ')' ;
  name_of_udp_instance : udp_instance_identifier ( range_ )? ;
  
  */
  continuous_assign
  