async def METHOD_NAME(c, s, a, b) -> None:
    def f(x, lock=None):
        with lock:
            return x + 1
    # note, the creation of Lock needs to be done inside a cluster
    for lock in [
        HDF5_LOCK,
        Lock(),
        Lock("filename.nc"),
        CombinedLock([HDF5_LOCK]),
        CombinedLock([HDF5_LOCK, Lock("filename.nc")]),
    ]:
        futures = c.map(f, list(range(10)), lock=lock)
        await c.gather(futures)
        lock2 = pickle.loads(pickle.dumps(lock))
        assert type(lock) == type(lock2)