function Promise.prototype.await(D,...)local J,I=pack(D:awaitStatus(...))local f=table.remove(I,1)return f==Promise.Status.Resolved,unpack(I,1,J-1)end

function Promise.prototype:await(...)
	local length, result = pack(self:awaitStatus(...))
	local status = table.remove(result, 1)

	return status == Promise.Status.Resolved, unpack(result, 1, length - 1)
end
