promises are now structs