docs: def flattened(value, split=None):
      """
      Args:
          value: Possibly nested arguments (sequence of lists, nested lists)
          split (int | str | unicode | (str | unicode, int) | None): How to split values:
              - None: simply flatten, no further processing
              - one char string: split() on specified char
              - SANITIZED: discard all None items
              - UNIQUE: each value will appear only once
              - SHELL:  filter out sequences of the form ["-f", None] (handy for simplified cmd line specification)
  
      Returns:
          list: 'value' flattened out (leaves from all involved lists/tuples)
      """
      result = []
      separator = None
      mode = 0
      if isinstance(split, tuple):
          separator, mode = split
      elif isinstance(split, int):
          mode = split
      else:
          separator = split
      _flatten(result, value, separator, mode)
      return result