docs: def MultipartArchiving(firstPartExtractList, otherPartSkippedList, archiveDir, otherPartFilePath = None):
    """
    Archive all parts of multi-part compressed file.
  
    If file has been extracted (via part1) then move all subsequent parts directly to archive directory.
    If file has not been extracted then if part >1 add to other part skipped list and only archive
    when the first part is sent for archiving.
  
    Parameters
    ----------
      firstPartExtractList : list
        File directory to search.
  
      otherPartSkippedList : list
        List which any file matches will be added to.
  
      archiveDir : list
        List of directories to ignore in recursive lookup (currently unused).
  
      otherPartFilePath : list [optional : default = None]
        List of supported file formats to search for.
    """
    if otherPartFilePath is None:
      for filePath in list(otherPartSkippedList):
        MultipartArchiving(firstPartExtractList, otherPartSkippedList, archiveDir, filePath)
    else:
      baseFileName = re.findall("(.+?)[.]part.+?rar", otherPartFilePath)[0]
  
      if baseFileName in firstPartExtractList:
        util.ArchiveProcessedFile(otherPartFilePath, archiveDir)
        if otherPartFilePath in otherPartSkippedList:
          otherPartSkippedList.remove(otherPartFilePath)
      elif otherPartFilePath not in otherPartSkippedList:
        otherPartSkippedList.append(otherPartFilePath)