anchor.diff:  %%%===================================================================
   
   %% @private
  --spec list_children_with_access_check(user_ctx:ctx(), file_ctx:ctx(), file_meta:list_opts()) ->
  +-spec list_dir_children_with_access_check(user_ctx:ctx(), file_ctx:ctx(), file_meta:list_opts()) ->
       {ok, [file_ctx:ctx()], file_meta:list_extended_info(), file_ctx:ctx()} | {error, ?EACCES}.
  -list_children_with_access_check(UserCtx, FileCtx, ListOpts) ->
  +list_dir_children_with_access_check(UserCtx, DirCtx, ListOpts) ->
       try
  -        {IsDir, FileCtx2} = file_ctx:is_dir(FileCtx),
  -        AccessRequirements = case IsDir of
  -            true -> [?TRAVERSE_ANCESTORS, ?OPERATIONS(?traverse_container_mask, ?list_container_mask)];
  -            false -> [?TRAVERSE_ANCESTORS]
  -        end,
  -        {CanonicalChildrenWhiteList, FileCtx3} = fslogic_authz:ensure_authorized_readdir(
  -            UserCtx, FileCtx2, AccessRequirements
  -        ),
  -        {Children, ExtendedInfo, FileCtx4} = file_listing:list_children(UserCtx, FileCtx3, ListOpts, CanonicalChildrenWhiteList),
  +        {CanonicalChildrenWhiteList, DirCtx2} = fslogic_authz:ensure_authorized_readdir(
  +            UserCtx, DirCtx, [?TRAVERSE_ANCESTORS, ?OPERATIONS(?traverse_container_mask, ?list_container_mask)]),
  +        {Children, ExtendedInfo, FileCtx4} = file_listing:list_children(
  +            UserCtx, DirCtx2, ListOpts, CanonicalChildrenWhiteList),
           {ok, Children, ExtendedInfo, FileCtx4}
       catch throw:?EACCES ->
           {error, ?EACCES}
       end.
  +
  +
  +%% @private
  +-spec list_reg_file_with_access_check(user_ctx:ctx(), file_ctx:ctx(), file_meta:list_opts()) ->
  +    {ok, [file_ctx:ctx()], file_meta:list_extended_info(), file_ctx:ctx()}.
  +list_reg_file_with_access_check(UserCtx, FileCtx, ListOpts) ->
  +    {CanonicalChildrenWhiteList, FileCtx2} = fslogic_authz:ensure_authorized_readdir(
  +        UserCtx, FileCtx, [?TRAVERSE_ANCESTORS]
  +    ),
  +    {Children, ExtendedInfo, FileCtx4} = file_listing:list_children(UserCtx, FileCtx2, ListOpts, CanonicalChildrenWhiteList),
  +    {ok, Children, ExtendedInfo, FileCtx4}.
   
   
   %% @private
  
positive.code:                 }
              };
          {false, FileCtx2} ->
              case list_children_with_access_check(UserCtx, FileCtx2, #{size => 1}) of
                  {ok, _, _, _} ->
                      #fuse_response{status = #status{code = ?OK},
                          fuse_response = #recursive_file_list{
                              inaccessible_paths = [],
                              entries = build_result_file_entry_list(
                                  InitialState, get_file_attrs(UserCtx, FileCtx2), <<>>)
                          }
                      };
                  {error, ?EACCES} ->
                      throw(?EACCES)
              end
      end.
  
  
  
negative.code: 
  -record(state, {
      %% values provided in options (unchanged during listing)
      start_after_path :: file_meta:path(),   % required for checking whether file, that is to be 
                                              % appended to result, is not pointed by a start_after_path 
                                              % (listing should start AFTER file with this path).
      prefix = <<>> :: prefix(),
      
      % depth of listing root file relative to space root (unchanged during listing)
  