work in progress on the nice structured async task