completed the store abstraction