anchor.diff:  %% Converts Uuid, SpaceId and Share id to share guid (allowing for guest read)
   %% @end
   %%--------------------------------------------------------------------
  --spec pack_share_guid(file_meta:uuid(), od_space:id(), od_share:id() | undefined) ->
  -    od_share:share_guid().
  +-spec pack_share_guid(file_meta_uuid(), space_id(), share_id() | undefined) ->
  +    share_root_file_guid().
   pack_share_guid(FileUuid, SpaceId, undefined) ->
       pack_guid(FileUuid, SpaceId);
   pack_share_guid(FileUuid, SpaceId, ShareId) ->
  
positive.code:     end.
  
  
  %%--------------------------------------------------------------------
  %% @doc
  %% Returns file's Uuid and its SpaceId for given file's Guid.
  %% @end
  %%--------------------------------------------------------------------
  -spec unpack_guid(FileGuid :: fslogic_worker:file_guid()) ->
      {file_meta:uuid(), od_space:id() | undefined}.
  unpack_guid(FileGuid) ->
      {FileUuid, SpaceId, _ShareId} = unpack_share_guid(FileGuid),
      {FileUuid, SpaceId}.
  
negative.code: %% Returns file's Uuid, its spaceId and its shareId for given file's share Guid.
  %% @end
  %%--------------------------------------------------------------------
  -spec unpack_share_guid(share_root_file_guid()) ->
      {file_meta_uuid(), undefined | space_id(), share_id() | undefined}.
  unpack_share_guid(ShareGuid) ->
      try binary:split(http_utils:base64url_decode(ShareGuid), <<?GUID_SEPARATOR>>, [global]) of
          [<<?SHARE_GUID_PREFIX>>, FileUuid, SpaceId, ShareId] ->
  