code: def _get_changes(rsync_out):
      '''
      Get changes from the rsync successful output.
      '''
      copied = list()
      deleted = list()
  
      for line in rsync_out.split("\n\n")[0].split("\n")[1:]:
          if line.startswith("deleting "):
              deleted.append(line.split(" ", 1)[-1])
          else:
              copied.append(line)
  
      ret = {
          'copied': os.linesep.join(sorted(copied)) or "N/A",
          'deleted': os.linesep.join(sorted(deleted)) or "N/A",
      }
  
      # Return whether anything really changed
      ret['changed'] = not ((ret['copied'] == 'N/A') and (ret['deleted'] == 'N/A'))
  
      return ref _get_changes(rsync_out):
      '''
      Get changes from the rsync successful output.
      '''
      copied = list()
      deleted = list()
  
      for line in rsync_out.split("\n\n")[0].split("\n")[1:]:
          if line.startswith("deleting "):
              deleted.append(line.split(" ", 1)[-1])
          else:
              copied.append(line)
  
      ret = {
          'copied': os.linesep.join(sorted(copied)) or "N/A",
          'deleted': os.linesep.join(sorted(deleted)) or "N/A",
      }
  
      # Return whether anything really changed
      ret['changed'] = not ((ret['copied'] == 'N/A') and (ret['deleted'] == 'N/A'))
  
      return ret
docs: Get changes from the rsync successful output.