switch layer_data loading to async