func (s *Session) History() QAPairs {
	s.mu.Lock()
	defer s.mu.Unlock()
	var qa []QAPair
	for i := 1; ; i++ {
		if v, ok := s.Decoded[fmt.Sprintf("interaction_%d_other", i)].(string); ok && v != "" {
			qa = append([]QAPair{{s.Decoded[fmt.Sprintf("interaction_%d", i)].(string),
				s.Decoded[fmt.Sprintf("interaction_%d_other", i)].(string)}}, qa...)
		} else {
			return qa
		}
	}
}
func (s *Session) History() QAPairs {
	s.mu.Lock()
	defer s.mu.Unlock()
	var qa []QAPair
	for i := 1; ; i++ {
		if v, ok := s.Decoded[fmt.Sprintf("interaction_%d_other", i)].(string); ok && v != "" {
			qa = append([]QAPair{{s.Decoded[fmt.Sprintf("interaction_%d", i)].(string),
				s.Decoded[fmt.Sprintf("interaction_%d_other", i)].(string)}}, qa...)
		} else {
			return qa
		}
	}
}
// History returns an array of QApair of upto 100 interactions that have happened in Session.