added refactor of fetch