code: @Override
  	public void enterScope() {
  		checkState(inheritableScopeCache.get() == null, "Scope has already been entered. Forgot to call exitScope()?");
  		Map<Key<?>, Object> scopeMap = newHashMap();
  		inheritableScopeCache.set(scopeMap);
  		log.debug("Entered inheritable scope.");
  	}
docs: Enters a new scope context for the current thread and its subthreads setting a scope map to
  the internal {@link ThreadLocal}.
  
  @throws IllegalStateException
  if there is already a scope context for the current thread