docs: def lastname(random=random, *args, **kwargs):
      """
      Return a first name!
  
      >>> mock_random.seed(0)
      >>> lastname(random=mock_random)
      'chimp'
      >>> mock_random.seed(1)
      >>> lastname(random=mock_random, capitalize=True)
      'Wonderful'
      >>> mock_random.seed(2)
      >>> lastname(random=mock_random, slugify=True)
      'poopbritches'
  
      >>> [lastname(random=mock_random) for x in range(0,10)]
      ['wonderful', 'chimp', 'onionmighty', 'magnificentslap', 'smellmouse', 'secretbale', 'boatbenchtwirl', 'spectacularmice', 'incrediblebritches', 'poopbritches']
  
  
      """
      types = [
          "{noun}",
          "{adjective}",
          "{noun}{second_noun}",
          "{adjective}{noun}",
          "{adjective}{plural}",
          "{noun}{verb}",
          "{noun}{container}",
          "{verb}{noun}",
          "{adjective}{verb}",
          "{noun}{adjective}",
          "{noun}{firstname}",
          "{noun}{title}",
          "{adjective}{title}",
          "{adjective}-{noun}",
          "{adjective}-{plural}"
      ]
  
      return random.choice(types).format(noun=noun(random=random),
                                         second_noun=noun(random=random),
                                         adjective=adjective(random=random),
                                         plural=plural(random=random),
                                         container=container(random=random),
                                         verb=verb(random=random),
                                         firstname=firstname(random=random),
                                         title=title(random=random))