{
int *printed_elements = snewn(size, int);
int *equal_elements = snewn(size, int);
{
int *printed_elements = snewn(size, int);
int *equal_elements = snewn(size, int);
for (i = 0; i < size; i++) {
/* Bottom bit of each element of this array stores whether that element
* is opposite to its parent, which starts off as false */
for (i = 0; i < size; i++) {
/* Bottom bit of each element of this array stores whether that element
* is opposite to its parent, which starts off as false */