added some more async stuff