Memento Pattern.