code: def AddKeys(self, key_list):
          
  
          for keyname in key_list:
              if keyname not in self.header:
                  raise KeyError("'%s'" % keyname)
  
          self._keys = self._keys.union(set(key_list))
docs: Mark additional columns as being part of the superkey.
      Supplements the Keys already extracted from the FSM template.
      Useful when adding new columns to existing tables.
      Note: This will impact attempts to further 'extend' the table as the
      superkey must be common between tables for successful extension.
      Args:
        key_list: list of header entries to be included in the superkey.
      Raises:
        KeyError: If any entry in list is not a valid header entry.