}
}
@Test
public void testPermuteBlk() throws IOException {
PermutationByBlock p = new PermutationByBlock(64);
int tempD = D;
D = 64;
NBitSignature s = getRandomSignature();
System.out.println(s + "\n========================");
int cntBits = s.countSetBits();
System.out.println(s.countSetBits());
int loopcnt = 0;
NBitSignature permutedS = new NBitSignature(D);
while (true) {
try {
ArrayListOfIntsWritable a = p.nextPermutation();
s.perm(a, permutedS);
System.out.println((loopcnt++) + "\n" + permutedS);
assertTrue(cntBits == permutedS.countSetBits());
// System.out.println(permutedS);
} catch (RuntimeException e) {