basic implementation of Store