code: def set_session_info(self, info):
          '''
          :type info: :class:`~kitty.data.data_manager.SessionInfo`
          :param info: info to set
          '''
          if not self.info:
              self.info = SessionInfo()
              info_d = self.info.as_dict()
              ks = []
              vs = []
              for k, v in info_d.items():
                  ks.append(k)
                  vs.append(v)
              self.insert(ks, vs)
          changed = self.info.copy(info)
          if changed:
              self.update(self.info.as_dict()f set_session_info(self, info):
          '''
          :type info: :class:`~kitty.data.data_manager.SessionInfo`
          :param info: info to set
          '''
          if not self.info:
              self.info = SessionInfo()
              info_d = self.info.as_dict()
              ks = []
              vs = []
              for k, v in info_d.items():
                  ks.append(k)
                  vs.append(v)
              self.insert(ks, vs)
          changed = self.info.copy(info)
          if changed:
              self.update(self.info.as_dict())
docs: :type info: :class:`~kitty.data.data_manager.SessionInfo`
          :param info: info to set