This class implement mapping by set partitioning for any square or rectangular constellation (including the trivial BPSK case). It is not suited for M-PSK with M>4 or QAM-Cross-Constellations (e.g. non-rectangular 32-QAM).The most sensitive bit is mapped to the MSB position. As a consequence, each subset (or partition) consists of a coherent set of mapping indices. Example: For 64-QAM, The first partitioning step divides the constellation into symbols 0..31 and 32..63. The subsets after the second step are 0..15, 16..31, 32..47 and 48..63. Mapping the most sensitive Bit to the LSB, in contrast, would lead to a seperation of even and odd indices in the first partitioning step.