potentially fixed issue with promise evaluation, and removed return_a