code: def _handle_author(author):
      
  
      lname = author.split(' ')
  
      try:
          auinit = lname[0][0]
          final = lname[-1].upper()
          if final in ['JR.', 'III']:
              aulast = lname[-2].upper() + " " + final.strip(".")
          else:
              aulast = final
      except IndexError:
          raise ValueError("malformed author name")
  
      return aulast, auinit
docs: Yields aulast and auinit from an author's full name.
  
      Parameters
      ----------
      author : str or unicode
          Author fullname, e.g. "Richard L. Nixon".
  
      Returns
      -------
      aulast : str
          Author surname.
      auinit : str
          Author first-initial.