docs: def get_last_thread(self):
          """
          Return the last modified thread 
          """
          cache_key = '_get_last_thread_cache'
          if not hasattr(self, cache_key):
              item = None
              res = self.thread_set.filter(visible=True).order_by('-modified')[0:1]
              if len(res)>0:
                  item = res[0]
              setattr(self, cache_key, item)
          return getattr(self, cache_key)