docs: def refresh(self):
          """Refresh an existing lock to prevent it from expiring.
          Uses a LUA (EVAL) script to ensure only a lock which we own is being overwritten.
          Returns True if refresh succeeded, False if not."""
          keys = [self.name]
          args = [self.value, self.timeout]
          # Redis docs claim EVALs are atomic, and I'm inclined to believe it.
          if hasattr(self, '_refresh_script'):
              return self._refresh_script(keys=keys, args=args) == 1
          else:
              keys_and_args = keys + args
              return self.redis.eval(self.lua_refresh, len(keys), *keys_and_args)