code: def exclude_paths(root, patterns, dockerfile=None):
      
  
      if dockerfile is None:
          dockerfile = 'Dockerfile'
  
      patterns.append('!' + dockerfile)
      pm = PatternMatcher(patterns)
      return set(pm.walk(root))
docs: Given a root directory path and a list of .dockerignore patterns, return
      an iterator of all paths (both regular files and directories) in the root
      directory that do *not* match any of the patterns.
  
      All paths returned are relative to the root.