anchor.diff:  	true ->
   	    [Index] = ParseState#parse_state.current_id,
   	    NewId = [Index + 1],
  -	    Mapping = [{SubactionName, NewId} | ParseState#parse_state.subaction_name_id_mapping], 
  +	    Mapping = [{SubactionName, NewId} | ParseState#parse_state.subaction_name_id_mapping],
   	    %% the subaction doesn't do anything so the node isn't stored in the graph
   	    %% parse content of subaction
  -	    ParseState2 = parse_xml(get_next_element(subaction, Content), 
  +	    ParseState2 = parse_xml(get_next_element(subaction, Content),
   				    ParseState#parse_state{current_id = NewId,
   							   subaction_name_id_mapping = Mapping}),
   	    %% then parse the remaining subactions
  
positive.code: %%--------------------------------------------------------------------
  %% Function: get_cond(Conditions, SwitchName, ExtraArgs, ParseState)
  %%           Conditions = #xmlElement.content
  %%           SwitchName = 'address-switch' | 'language-switch' | 
  %%                        'priority-switch' | 'string-switch' | 
  %%                        'time-switch' | lookup | proxy
  %%           ExtraArgs  = includes any other switch specific arguments
  %%           ParseState = parse_state record()
  %% Descrip.: retrieve the match operator and value (to compare request
  %%           against), as well as the destination of a successful 
  %%           match
  %% Returns : {CondVal, Targets}
  %%           Targets = #xmlElement from Conditions - the process_targets/2 call does the checking of 
  %%           CondVal = value returned, depends on the switch type 
  %%           (SwitchName), as seen below:
  %%
  %% * address-switch
  %%           CondVal = list() of 
  %%                     {{address__is, Val}, Dest} | 
  %%                     {{address__contains, Val}, Dest} | 
  %%                     {{'address__subdomain-of', Val}, Dest} | 
  %%                     {'not-present', Dest} | 
  %%                     {otherwise, Dest} 
  %% * language-switch
  %%           CondVal = list() of 
  %%                     {{language__matches, Val}, Dest} | 
  %%                     {'not-present', Dest} | 
  %%                     {otherwise, Dest} 
  %% * priority-switch
  %%           CondVal = list() of 
  %%                     {{priority__less, Val}, Dest} | 
  %%                     {{priority__greater, Val}, Dest} | 
  %%                     {{priority__equal, Val}, Dest} | 
  %%                     {otherwise, Dest} 
  %% * string-switch
  %%           CondVal = list() of 
  %%                     {{string__is, Val}, Dest} | 
  %%                     {{string__contains, Val}, Dest} | 
  %%                     {'not-present', Dest} | 
  %%                     {otherwise, Dest} 
  %% * time-switch
  %%           CondVal = list() of 
  %%                     {time_switch__cond_8 record(), Dest} |
  %%                     {time_switch__cond_7 record(), Dest} |
  %%                     {time_switch__cond_5 record(), Dest} |
  %%                     {time_switch__cond_4 record(), Dest} |
  %%                     {time_switch__cond_2 record(), Dest} |
  %%                     {otherwise, Dest} 
  %% * lookup
  %%           CondVal = list() of 
  %%                     {success, Dest} | 
  %%                     {notfound, Dest} | 
  %%                     {failure, Dest} 
  %% * proxy
  %%           CondVal = list() of 
  %%                     {busy, Dest} |
  %%                     {noanswer, Dest} |
  %%                     {redirection, Dest} |
  
negative.code: %%--------------------------------------------------------------------
  %% Function: parse_xml_main(CPLscript)
  %%           CPLscript = xmlElement, the toplevel tag of the xml code
  %% Descrip.: the cpl tag can contain subaction tags and a incoming
  %%           and/or outgoing tag
  %% Returns : throw() | parse_state record()
  %% Note    : CPL expects tags in order: ancillary, subaction,
  %%           incoming, outgoing - the order of incoming/outgoing isn't
  %%           clearly defined in RFC 3880 and not enforced in the code
  %% Note    : the 'ancillary' tag is ignored - it isn't defined to do
  %%           anything in RFC 3880
  %%--------------------------------------------------------------------
  parse_xml_main(#xmlElement{name = cpl} = CPLscript) ->
  