anchor.diff:      end,
   
       Path = lists:flatten([
  +        #idp_group{type = OriginGroupType, name = Origin},
           #idp_group{type = TopGroupType, name = hd(Groups)},
           [#idp_group{type = SubGroupsType, name = G, privileges = member} || G <- tl(Groups)]
       ]),
  
positive.code:         <<"urn:mace:egi.eu:group:fedcloud.egi.eu:role=vm_operator#aai.egi.eu">>,
          #{},
          #idp_entitlement{idp = egi, path = [
              #idp_group{type = team, name = <<"fedcloud.egi.eu">>, privileges = member}
          ], privileges = member}
      },
      {
          <<"urn:mace:egi.eu:group:fedcloud.egi.eu:child:role=member#aai.egi.eu">>,
          #{},
          #idp_entitlement{idp = egi, path = [
              #idp_group{type = team, name = <<"fedcloud.egi.eu">>, privileges = member},
              #idp_group{type = team, name = <<"child">>, privileges = member}
          ], privileges = member}
  
negative.code: parse_egi_entitlement(<<"urn:mace:egi.eu:group:", Group/binary>>, ParserConfig) ->
      % Strip out the prefix standard for EGI
  
      OriginGroupType = maps:get(originGroupType, ParserConfig, organization),
      TopGroupType = maps:get(topGroupType, ParserConfig, team),
      SubGroupsType = maps:get(subGroupsType, ParserConfig, team),
  
      [GroupStructureEncoded, Origin] = binary:split(Group, <<"#">>),
      % Replace plus sings with spaces
      GroupStructure = binary:replace(GroupStructureEncoded, <<"+">>, <<" ">>, [global]),
      GroupTokens = binary:split(GroupStructure, <<":">>, [global, trim_all]),
  