async loaders first pass