code: def flatten(l):
      
      for el in l:
          if _iterable_not_string(el):
              for s in flatten(el):
                  yield s
          else:
              yield el
docs: Flatten an arbitrarily nested sequence.
  
      Parameters
      ----------
      l : sequence
          The non string sequence to flatten
  
      Notes
      -----
      This doesn't consider strings sequences.
  
      Returns
      -------
      flattened : generator