from typing import List
from typing import Optional
from typing import Tuple


def split_by(items: List[str],
             separator: Optional[str] = None) -> Tuple[List[str], List[str]]:
  """If the separator is present in the list, returns a 2-tuple of

  - the items before the separator,
  - all items after the separator.

  If the separator isn't present, returns a tuple of

  - (the original list, [])

  """
  if separator is None:
    separator = '--'

  try:
    idx = items.index(separator)
    return items[0:idx], items[idx + 1:]
  except ValueError:
    return (items, [])