return new this(function executor(resolve,reject){
            if (typeof resolve != "function" || typeof reject != "function") {
                throw TypeError("Not a function");
            }