memento + singleton changes