Implemented snapshot functionality