Implemented goes online/offline storage
Refactor