Switched matrix multiply and binary arithmetic to return promises