code: def provide_session(self, start_new=False):
          
          if self.is_global:
              self._session_info = self._global_session_info
              self._session_start = self._global_session_start
  
          if self._session_info is None or start_new or \
                  datetime.datetime.now() > self._session_start + self.SESSION_DURATION:
              self._start_new_session()
  
          return self._session_info
docs: Makes sure that session is still valid and provides session info
  
          :param start_new: If `True` it will always create a new session. Otherwise it will create a new
              session only if no session exists or the previous session timed out.
          :type start_new: bool
          :return: Current session info
          :rtype: dict