uses space for saving