14 size_t sequence_length = 0;
17 for (i = 0; i < length; i++)
19 if (data[i] % multiple == 0)
25 if (sequence_length > 1)
27 size_t start = i - sequence_length;
28 size_t end = start + sequence_length - 1;
31 for (j = 0; j < sequence_length / 2; j++)
34 data[start + j] = data[end - j];
44 if (sequence_length > 1)
46 size_t start = length - sequence_length;
47 size_t end = start + sequence_length - 1;
50 for (j = 0; j < sequence_length / 2; j++)
53 data[start + j] = data[end - j];
77 big_half = (length + 1) / 2;
79 for (i = 0; i < length; i++)
85 next = (i < big_half) ? (i * 2) : ((length - 1 - i) * 2 + 1);
88 if ((data[i] & 0x7F) != 0)
96 while (j != i && j > i)
98 j = (j < big_half) ? (j * 2) : ((length - 1 - j) * 2 + 1);
110 if ((temp & 0x7F) != 0)
116 j = (j < big_half) ? (j * 2) : ((length - 1 - j) * 2 + 1);
119 if ((temp & 0x7F) != 0)
136 for (i = 0; i < length; i++)
142 next = (i % 2 == 0) ? (i / 2) : (length - 1 - (i - 1) / 2);
145 if ((data[i] & 0x7F) != 0)
153 while (j != i && j > i)
155 j = (j % 2 == 0) ? (j / 2) : (length - 1 - (j - 1) / 2);
167 if ((temp & 0x7F) != 0)
173 j = (j % 2 == 0) ? (j / 2) : (length - 1 - (j - 1) / 2);
176 if ((temp & 0x7F) != 0)