store: refactor