abstract class storable