docs: def best_url(self, size=None, external=False):
          '''
          Provide the best thumbnail for downscaling.
  
          If there is no match, provide the bigger if exists or the original
          '''
          if not self.thumbnail_sizes:
              return self.url
          elif not size:
              self.thumbnail_sizes.sort()
              best_size = self.thumbnail_sizes[-1]
          else:
              self.thumbnail_sizes.sort()
              index = bisect.bisect_left(self.thumbnail_sizes, size)
              if index >= len(self.thumbnail_sizes):
                  best_size = self.thumbnail_sizes[-1]
              else:
                  best_size = self.thumbnail_sizes[index]
          filename = self.thumbnail(best_size)
          return self.fs.url(filename, external=external) if filename else None