abstract fetching into a module