with new simpler Cachingmark as threadsafe