We best make this async.