code: def pluralize(singular):
      
      if not singular:
          return ''
      plural = ABERRANT_PLURAL_MAP.get(singular)
      if plural:
          return plural
      root = singular
      try:
          if singular[-1] == 'y' and singular[-2] not in VOWELS:
              root = singular[:-1]
              suffix = 'ies'
          elif singular[-1] == 's':
              if singular[-2] in VOWELS:
                  if singular[-3:] == 'ius':
                      root = singular[:-2]
                      suffix = 'i'
                  else:
                      root = singular[:-1]
                      suffix = 'ses'
              else:
                  suffix = 'es'
          elif singular[-2:] in ('ch', 'sh'):
              suffix = 'es'
          else:
              suffix = 's'
      except IndexError:
          suffix = 's'
      plural = root + suffix
      return plural
docs: Return plural form of given lowercase singular word (English only). Based on
      ActiveState recipe http://code.activestate.com/recipes/413172/
  
      >>> pluralize('')
      ''
      >>> pluralize('goose')
      'geese'
      >>> pluralize('dolly')
      'dollies'
      >>> pluralize('genius')
      'genii'
      >>> pluralize('jones')
      'joneses'
      >>> pluralize('pass')
      'passes'
      >>> pluralize('zero')
      'zeros'
      >>> pluralize('casino')
      'casinos'
      >>> pluralize('hero')
      'heroes'
      >>> pluralize('church')
      'churches'
      >>> pluralize('x')
      'xs'
      >>> pluralize('car')
      'cars'