@Override
    public void put(UK key, UV value) throws Exception {
        delegatedState.put(key, value);
        changeLogger.valueElementAddedOrUpdated(getWriter(key, value), getCurrentNamespace());
    }
@Test
    public void testPutRecorded() throws Exception {
        testRecorded(
                emptyMap(),
                state -> state.put("x", "y"),
                logger -> assertTrue(logger.stateElementChanged));
    }