module KramdownRFC

def self.authorps_from_hash(au)

def self.authorps_from_hash(au)
  aups = KramdownRFC::ParameterSet.new(au)
  if n = aups[:name]
    warn "** both name #{n} and fullname #{fn} are set on one author" if fn = aups.rest["fullname"]
    aups.rest["fullname"] = n
    usename = true
  end
  ["fullname", "ins", "initials", "surname"].each do |an|
    treat_multi_attribute_member(aups, an)
  end
  handle_ins(aups, :ins, "initials", "surname")
  handle_ins(aups, :asciiIns, "asciiInitials", "asciiSurname")
  # hack ("heuristic for") initials and surname from name
  # -- only works for people with exactly one last name and uncomplicated first names
  # -- add surname for people with more than one last name
  if usename
    handle_name(aups, "fullname", "initials", "surname")
    handle_name(aups, "asciiFullname", "asciiInitials", "asciiSurname")
  end
  aups
end