added fetcher and permutator factory