Failure detector class Ωk has been defined in [18] as an extension to failure detector Ω, and an algorithm has been given in [16] to solve k-set agreement using Ωk in asynchronous message-passing systems. In this paper, we extend these previous work in two directions. First, we define two new classes of failure detectors Ωk and Ωk, which are new ways of extending Ω, and show that they are equivalent to Ωk. Class Ωk is more flexible than Ωk in that it does not require the outputs to stabilize eventually, while class Ωk does not refer to other processes in its outputs. Second, we present a new algorithm that solves k-set agreement using Ωk when a majority of processes do not crash. The algorithm is a faithful extension of the Paxos algorithm [12], and thus it inherits the efficiency, flexibility, and robustness of the Paxos algorithm. In particular, it has better message complexity than the algorithm in [16]. Both the new failure detectors and the new algorith...