code: def get_word(value):
      
      if value[0] in CFWS_LEADER:
          leader, value = get_cfws(value)
      else:
          leader = None
      if value[0]=='"':
          token, value = get_quoted_string(value)
      elif value[0] in SPECIALS:
          raise errors.HeaderParseError("Expected 'atom' or 'quoted-string' "
                                        "but found '{}'".format(value))
      else:
          token, value = get_atom(value)
      if leader is not None:
          token[:0] = [leader]
      return token, value
docs: word = atom / quoted-string
  
      Either atom or quoted-string may start with CFWS.  We have to peel off this
      CFWS first to determine which type of word to parse.  Afterward we splice
      the leading CFWS, if any, into the parsed sub-token.
  
      If neither an atom or a quoted-string is found before the next special, a
      HeaderParseError is raised.
  
      The token returned is either an Atom or a QuotedString, as appropriate.
      This means the 'word' level of the formal grammar is not represented in the
      parse tree; this is because having that extra layer when manipulating the
      parse tree is more confusing than it is helpful.