docs: def tryload(self, cfgstr=None):
          """
          Like load, but returns None if the load fails
          """
          if cfgstr is None:
              cfgstr = self.cfgstr
          if cfgstr is None:
              import warnings
              warnings.warn('No cfgstr given in Cacher constructor or call')
              cfgstr = ''
          # assert cfgstr is not None, (
          #     'must specify cfgstr in constructor or call')
          if not self.enabled:
              if self.verbose > 0:
                  print('[cache] ... %s Cacher disabled' % (self.fname))
              return None
          try:
              if self.verbose > 1:
                  print('[cache] tryload fname=%s' % (self.fname,))
                  # if self.verbose > 2:
                  #     print('[cache] cfgstr=%r' % (cfgstr,))
              return self.load(cfgstr)
          except IOError:
              if self.verbose > 0:
                  print('[cache] ... %s Cacher miss' % (self.fname))