anchor.diff:  ;
   
   pr_MainControllerItemUnixDomainSocket:
  -	UNIXSOCKETS1	ASSIGNMENTCHAR1	u = (YES1 | NO1)					SEMICOLON1?
  -	{	mCfgParseResult.setUnixDomainSocket( Boolean.parseBoolean( $u.getText() ) );
  -	}
  +	UNIXSOCKETS1
  +	ASSIGNMENTCHAR1
  +	u = pr_MainControllerItemUnixDomainSocketValue
  +	SEMICOLON1?
  +	{	mCfgParseResult.setUnixDomainSocket( Boolean.parseBoolean( $u.text ) );
  +		mcSectionHandler.setUnixDomainSocketRoot( $ctx );
  +		mcSectionHandler.setUnixDomainSocket( $u.ctx );
  +	}
  +;
  +
  +pr_MainControllerItemUnixDomainSocketValue:
  +	(YES1 | NO1)
   ;
   
   pr_MainControllerItemKillTimer:
   	KILLTIMER1		ASSIGNMENTCHAR1	k = pr_ArithmeticValueExpression	SEMICOLON1?
   	{	mCfgParseResult.setKillTimer( $k.number.getValue() );
  +		mcSectionHandler.setKillTimerRoot( $ctx );
  +		mcSectionHandler.setKillTimer( $k.ctx );
   	}
   ;
   
   pr_MainControllerItemLocalAddress:
   	LOCALADDRESS1	ASSIGNMENTCHAR1	l = pr_HostName						SEMICOLON1?
  -	{	mCfgParseResult.setLocalAddress( $l.text );	}
  +	{	mCfgParseResult.setLocalAddress( $l.text );
  +		mcSectionHandler.setLocalAddressRoot( $ctx );
  +		mcSectionHandler.setLocalAddress( $l.ctx );
  +	}
   ;
   
   pr_MainControllerItemNumHcs:
   	NUMHCS1			ASSIGNMENTCHAR1	n = pr_IntegerValueExpression		SEMICOLON1?
   	{	mCfgParseResult.setNumHcs( $n.number.getIntegerValue() );
  +		mcSectionHandler.setNumHCsTextRoot( $ctx );
  +		mcSectionHandler.setNumHCsText( $n.ctx );
   	}
   ;
   
   pr_MainControllerItemTcpPort:
   	TCPPORT1		ASSIGNMENTCHAR1	t = pr_IntegerValueExpression		SEMICOLON1?
   	{	mCfgParseResult.setTcpPort( $t.number.getIntegerValue() );
  +		mcSectionHandler.setTcpPortRoot( $ctx );
  +		mcSectionHandler.setTcpPort( $t.ctx );
   	}
   ;
   
  
positive.code: parser grammar CfgParser;
  
  @header {
  import java.util.HashMap;
  
  import org.antlr.v4.runtime.tree.TerminalNodeImpl;
  import org.eclipse.titan.common.parsers.TITANMarker;
  import org.eclipse.titan.common.parsers.cfg.indices.ComponentSectionHandler;
  
negative.code: )
  ;
  
  pr_LoggingBitMask returns [ Map<LoggingBit, ParseTree> loggingBitMask ]
  @init {
  	$loggingBitMask = new EnumMap<LoggingBit, ParseTree>( LoggingBit.class );
  }:
  	pr_LoggingMaskElement [ $loggingBitMask ]
  	(	LOGICALOR11	pr_LoggingMaskElement [ $loggingBitMask ]
  	)*
  ;
  
  pr_LoggingMaskElement [ Map<LoggingBit, ParseTree> loggingBitMask ]:
  	pr_LogEventType [ $loggingBitMask ]
  |	pr_LogEventTypeSet [ $loggingBitMask ]
  |	pr_deprecatedEventTypeSet [ $loggingBitMask ]
  ;
  
  pr_LogfileName:
  