generalized storage