CachedValue.hpp