code: function tryCatchReject(f, x, thisArg, next) {
  			try {
  				next.become(getHandler(f.call(thisArg, x)));
  			} catch(e) {
  				next.become(new Rejected(e));
  			}
  		}
docs: Return f.call(thisArg, x), or if it throws return a rejected promise for
  the thrown exception