SLAMflex SE  0.1.0
SLAMflex provides detection and tracking of dominant planes for smartphone devices. This plane can then be used to show AR content relative to the plane orientation. The detection of plane is performed in the field of view of the smartphone camera. In subsequent frames it is tracked. The interface returns the plane position and orientation.
fast_10_score.cpp
Go to the documentation of this file.
1 #include <vector>
2 #include <climits>
3 #include "image.h"
4 #include "byte.h"
5 
6 
7 // This is mechanically generated code.
8 
9 using namespace std;
10 namespace CVD
11 {
12 
13 static inline bool test_gt_set(int a, int b, int& min_diff)
14 {
15  if(a > b)
16  {
17  if(a-b < min_diff)
18  min_diff = a-b;
19 
20  return 1;
21  }
22  return 0;
23 }
24 
25 inline int fast_corner_score_10(const byte* cache_0, const int offset[], int b)
26 {
27  b++;
28  //This function computes the score for a pixel which is known to be
29  //a corner at barrier b. So we start looking at b+1 and above to
30  //establish where it stops becoming a corner.
31  for(;;)
32  {
33  int cb = *cache_0 + b;
34  int c_b= *cache_0 - b;
35  int min_diff = INT_MAX;
36  if(test_gt_set(*(cache_0 + offset[0]), cb, min_diff))
37  if(test_gt_set(*(cache_0 + offset[8]), cb, min_diff))
38  if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
39  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
40  if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
41  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
42  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
43  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
44  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
45  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
46  b += min_diff;
47  else
48  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
49  b += min_diff;
50  else
51  break;
52  else if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
53  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
54  if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
55  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
56  b += min_diff;
57  else
58  break;
59  else
60  break;
61  else
62  break;
63  else
64  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
65  if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
66  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
67  b += min_diff;
68  else
69  break;
70  else
71  break;
72  else
73  break;
74  else if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
75  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
76  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
77  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
78  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
79  b += min_diff;
80  else
81  break;
82  else
83  break;
84  else
85  break;
86  else
87  break;
88  else
89  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
90  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
91  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
92  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
93  b += min_diff;
94  else
95  break;
96  else
97  break;
98  else
99  break;
100  else
101  break;
102  else if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
103  if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
104  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
105  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
106  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
107  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
108  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
109  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
110  b += min_diff;
111  else
112  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
113  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
114  b += min_diff;
115  else
116  break;
117  else
118  break;
119  else
120  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
121  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
122  b += min_diff;
123  else
124  break;
125  else
126  break;
127  else
128  break;
129  else
130  break;
131  else
132  break;
133  else
134  break;
135  else
136  break;
137  else
138  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
139  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
140  if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
141  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
142  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
143  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
144  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
145  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
146  b += min_diff;
147  else
148  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
149  b += min_diff;
150  else
151  break;
152  else
153  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
154  b += min_diff;
155  else
156  break;
157  else if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
158  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
159  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
160  b += min_diff;
161  else
162  break;
163  else
164  break;
165  else
166  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
167  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
168  b += min_diff;
169  else
170  break;
171  else
172  break;
173  else
174  break;
175  else
176  break;
177  else
178  break;
179  else
180  break;
181  else
182  break;
183  else if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
184  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
185  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
186  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
187  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
188  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
189  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
190  b += min_diff;
191  else
192  if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
193  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
194  b += min_diff;
195  else
196  break;
197  else
198  break;
199  else
200  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
201  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
202  if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
203  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
204  b += min_diff;
205  else
206  break;
207  else
208  break;
209  else
210  break;
211  else
212  break;
213  else
214  break;
215  else
216  break;
217  else
218  break;
219  else
220  break;
221  else
222  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
223  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
224  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
225  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
226  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
227  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
228  b += min_diff;
229  else
230  if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
231  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
232  b += min_diff;
233  else
234  break;
235  else
236  break;
237  else if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
238  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
239  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
240  if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
241  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
242  b += min_diff;
243  else
244  break;
245  else
246  break;
247  else
248  break;
249  else
250  break;
251  else
252  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
253  if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
254  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
255  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
256  b += min_diff;
257  else
258  break;
259  else
260  break;
261  else
262  break;
263  else
264  break;
265  else
266  break;
267  else
268  break;
269  else
270  break;
271  else
272  break;
273  else if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
274  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
275  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
276  if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
277  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
278  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
279  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
280  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
281  b += min_diff;
282  else
283  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
284  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
285  b += min_diff;
286  else
287  break;
288  else
289  break;
290  else
291  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
292  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
293  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
294  b += min_diff;
295  else
296  break;
297  else
298  break;
299  else
300  break;
301  else
302  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
303  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
304  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
305  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
306  b += min_diff;
307  else
308  break;
309  else
310  break;
311  else
312  break;
313  else
314  break;
315  else
316  break;
317  else
318  break;
319  else
320  break;
321  else
322  break;
323  else
324  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
325  if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
326  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
327  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
328  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
329  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
330  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
331  b += min_diff;
332  else if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
333  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
334  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
335  b += min_diff;
336  else
337  break;
338  else
339  break;
340  else
341  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
342  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
343  b += min_diff;
344  else
345  break;
346  else
347  break;
348  else if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
349  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
350  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
351  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
352  b += min_diff;
353  else
354  break;
355  else
356  break;
357  else
358  break;
359  else
360  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
361  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
362  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
363  b += min_diff;
364  else
365  break;
366  else
367  break;
368  else
369  break;
370  else if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
371  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
372  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
373  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
374  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
375  b += min_diff;
376  else
377  break;
378  else
379  break;
380  else
381  break;
382  else
383  break;
384  else
385  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
386  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
387  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
388  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
389  b += min_diff;
390  else
391  break;
392  else
393  break;
394  else
395  break;
396  else
397  break;
398  else
399  break;
400  else
401  break;
402  else
403  break;
404  else
405  break;
406  else if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
407  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
408  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
409  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
410  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
411  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
412  if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
413  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
414  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
415  b += min_diff;
416  else
417  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
418  b += min_diff;
419  else
420  break;
421  else
422  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
423  if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
424  b += min_diff;
425  else
426  break;
427  else
428  break;
429  else
430  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
431  if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
432  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
433  b += min_diff;
434  else
435  break;
436  else
437  break;
438  else
439  break;
440  else
441  break;
442  else
443  break;
444  else
445  break;
446  else
447  break;
448  else
449  break;
450  else
451  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
452  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
453  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
454  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
455  if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
456  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
457  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
458  if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
459  b += min_diff;
460  else
461  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
462  b += min_diff;
463  else
464  break;
465  else
466  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
467  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
468  b += min_diff;
469  else
470  break;
471  else
472  break;
473  else
474  break;
475  else if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
476  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
477  if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
478  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
479  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
480  b += min_diff;
481  else
482  break;
483  else
484  break;
485  else
486  break;
487  else
488  break;
489  else
490  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
491  if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
492  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
493  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
494  b += min_diff;
495  else
496  break;
497  else
498  break;
499  else
500  break;
501  else
502  break;
503  else
504  break;
505  else
506  break;
507  else
508  break;
509  else
510  break;
511  else if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
512  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
513  if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
514  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
515  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
516  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
517  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
518  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
519  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
520  b += min_diff;
521  else
522  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
523  b += min_diff;
524  else
525  break;
526  else
527  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
528  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
529  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
530  b += min_diff;
531  else
532  break;
533  else
534  break;
535  else
536  break;
537  else
538  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
539  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
540  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
541  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
542  b += min_diff;
543  else
544  break;
545  else
546  break;
547  else
548  break;
549  else
550  break;
551  else
552  break;
553  else
554  break;
555  else
556  break;
557  else
558  break;
559  else
560  break;
561  else
562  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
563  if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
564  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
565  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
566  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
567  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
568  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
569  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
570  b += min_diff;
571  else
572  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
573  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
574  b += min_diff;
575  else
576  break;
577  else
578  break;
579  else
580  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
581  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
582  b += min_diff;
583  else
584  break;
585  else
586  break;
587  else
588  break;
589  else
590  break;
591  else
592  break;
593  else if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
594  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
595  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
596  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
597  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
598  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
599  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
600  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
601  b += min_diff;
602  else
603  break;
604  else
605  break;
606  else
607  break;
608  else
609  break;
610  else
611  break;
612  else
613  break;
614  else
615  break;
616  else
617  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
618  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
619  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
620  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
621  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
622  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
623  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
624  b += min_diff;
625  else
626  break;
627  else
628  break;
629  else
630  break;
631  else
632  break;
633  else
634  break;
635  else
636  break;
637  else
638  break;
639  else
640  break;
641  else
642  break;
643  else if(test_gt_set(c_b, *(cache_0 + offset[8]), min_diff))
644  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
645  if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
646  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
647  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
648  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
649  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
650  if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
651  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
652  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
653  b += min_diff;
654  else
655  if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
656  b += min_diff;
657  else
658  break;
659  else
660  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
661  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
662  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
663  b += min_diff;
664  else
665  break;
666  else
667  break;
668  else
669  break;
670  else
671  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
672  if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
673  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
674  b += min_diff;
675  else
676  break;
677  else
678  break;
679  else
680  break;
681  else
682  if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
683  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
684  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
685  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
686  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
687  b += min_diff;
688  else
689  break;
690  else
691  break;
692  else
693  break;
694  else
695  break;
696  else
697  break;
698  else
699  break;
700  else
701  break;
702  else
703  break;
704  else if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
705  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
706  if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
707  if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
708  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
709  if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
710  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
711  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
712  if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
713  b += min_diff;
714  else
715  break;
716  else
717  break;
718  else
719  break;
720  else
721  break;
722  else
723  break;
724  else
725  break;
726  else
727  break;
728  else
729  break;
730  else
731  break;
732  else if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
733  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
734  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
735  if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
736  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
737  if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
738  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
739  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
740  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
741  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
742  b += min_diff;
743  else
744  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
745  b += min_diff;
746  else
747  break;
748  else
749  break;
750  else
751  break;
752  else
753  break;
754  else
755  break;
756  else
757  break;
758  else
759  break;
760  else
761  break;
762  else if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
763  if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
764  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
765  if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
766  if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
767  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
768  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
769  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
770  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
771  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
772  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
773  b += min_diff;
774  else
775  break;
776  else
777  break;
778  else
779  break;
780  else
781  break;
782  else
783  break;
784  else
785  break;
786  else
787  break;
788  else
789  break;
790  else
791  break;
792  else if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
793  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
794  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
795  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
796  if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
797  if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
798  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
799  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
800  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
801  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
802  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
803  b += min_diff;
804  else
805  break;
806  else
807  break;
808  else
809  break;
810  else
811  break;
812  else
813  break;
814  else
815  break;
816  else
817  break;
818  else
819  break;
820  else if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
821  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
822  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
823  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
824  if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
825  if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
826  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
827  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
828  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
829  b += min_diff;
830  else
831  break;
832  else
833  break;
834  else
835  break;
836  else
837  break;
838  else
839  break;
840  else
841  break;
842  else
843  break;
844  else if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
845  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
846  if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
847  if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
848  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
849  b += min_diff;
850  else
851  break;
852  else
853  break;
854  else
855  break;
856  else
857  break;
858  else
859  break;
860  else
861  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
862  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
863  if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
864  if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
865  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
866  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
867  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
868  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
869  b += min_diff;
870  else
871  break;
872  else
873  break;
874  else
875  break;
876  else
877  break;
878  else
879  break;
880  else
881  break;
882  else
883  break;
884  else
885  break;
886  else if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
887  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
888  if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
889  if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
890  if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
891  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
892  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
893  b += min_diff;
894  else
895  break;
896  else
897  break;
898  else
899  break;
900  else
901  break;
902  else
903  break;
904  else if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
905  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
906  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
907  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
908  if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
909  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
910  b += min_diff;
911  else
912  break;
913  else
914  break;
915  else
916  break;
917  else if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
918  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
919  if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
920  b += min_diff;
921  else
922  if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
923  b += min_diff;
924  else
925  break;
926  else
927  break;
928  else
929  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
930  if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
931  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
932  b += min_diff;
933  else
934  break;
935  else
936  break;
937  else
938  break;
939  else
940  break;
941  else
942  if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
943  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
944  if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
945  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
946  if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
947  b += min_diff;
948  else
949  break;
950  else
951  break;
952  else
953  break;
954  else
955  break;
956  else
957  break;
958  else
959  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
960  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
961  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
962  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
963  if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
964  if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
965  b += min_diff;
966  else
967  break;
968  else
969  break;
970  else
971  break;
972  else
973  break;
974  else
975  break;
976  else
977  break;
978  else
979  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
980  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
981  if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
982  if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
983  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
984  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
985  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
986  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
987  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
988  b += min_diff;
989  else
990  break;
991  else
992  break;
993  else
994  break;
995  else
996  break;
997  else
998  break;
999  else
1000  break;
1001  else
1002  break;
1003  else
1004  break;
1005  else
1006  break;
1007  else
1008  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
1009  if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
1010  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
1011  if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
1012  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
1013  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
1014  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
1015  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
1016  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
1017  b += min_diff;
1018  else
1019  break;
1020  else
1021  break;
1022  else
1023  break;
1024  else
1025  break;
1026  else
1027  break;
1028  else
1029  break;
1030  else
1031  break;
1032  else
1033  break;
1034  else
1035  break;
1036  else
1037  if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
1038  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
1039  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
1040  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
1041  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
1042  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
1043  if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
1044  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
1045  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
1046  b += min_diff;
1047  else
1048  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
1049  b += min_diff;
1050  else
1051  break;
1052  else
1053  break;
1054  else
1055  break;
1056  else
1057  break;
1058  else if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
1059  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
1060  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
1061  if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
1062  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
1063  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
1064  b += min_diff;
1065  else
1066  break;
1067  else
1068  break;
1069  else
1070  break;
1071  else
1072  break;
1073  else
1074  break;
1075  else
1076  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
1077  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
1078  if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
1079  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
1080  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
1081  b += min_diff;
1082  else
1083  break;
1084  else
1085  break;
1086  else
1087  break;
1088  else
1089  break;
1090  else
1091  break;
1092  else
1093  break;
1094  else
1095  break;
1096  else
1097  break;
1098  else if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
1099  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
1100  if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
1101  if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
1102  if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
1103  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
1104  if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
1105  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
1106  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
1107  b += min_diff;
1108  else
1109  break;
1110  else
1111  break;
1112  else
1113  break;
1114  else
1115  break;
1116  else
1117  break;
1118  else
1119  break;
1120  else
1121  break;
1122  else
1123  break;
1124  else
1125  break;
1126  else
1127  if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
1128  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
1129  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
1130  if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
1131  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
1132  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
1133  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
1134  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
1135  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
1136  b += min_diff;
1137  else
1138  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
1139  b += min_diff;
1140  else
1141  break;
1142  else if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
1143  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
1144  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
1145  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
1146  b += min_diff;
1147  else
1148  break;
1149  else
1150  break;
1151  else
1152  break;
1153  else
1154  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
1155  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
1156  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
1157  b += min_diff;
1158  else
1159  break;
1160  else
1161  break;
1162  else
1163  break;
1164  else
1165  break;
1166  else
1167  break;
1168  else if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
1169  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
1170  if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
1171  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
1172  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
1173  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
1174  b += min_diff;
1175  else
1176  break;
1177  else
1178  break;
1179  else
1180  break;
1181  else
1182  break;
1183  else
1184  break;
1185  else
1186  if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
1187  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
1188  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
1189  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
1190  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
1191  b += min_diff;
1192  else
1193  break;
1194  else
1195  break;
1196  else
1197  break;
1198  else
1199  break;
1200  else
1201  break;
1202  else
1203  break;
1204  else if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
1205  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
1206  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
1207  if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
1208  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
1209  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
1210  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
1211  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
1212  b += min_diff;
1213  else
1214  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
1215  b += min_diff;
1216  else
1217  break;
1218  else
1219  break;
1220  else
1221  break;
1222  else
1223  break;
1224  else
1225  break;
1226  else
1227  break;
1228  else
1229  break;
1230  else
1231  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
1232  if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
1233  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
1234  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
1235  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
1236  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
1237  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
1238  b += min_diff;
1239  else
1240  break;
1241  else
1242  break;
1243  else
1244  break;
1245  else if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
1246  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
1247  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
1248  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
1249  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
1250  b += min_diff;
1251  else
1252  break;
1253  else
1254  break;
1255  else
1256  break;
1257  else
1258  break;
1259  else
1260  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
1261  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
1262  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
1263  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
1264  b += min_diff;
1265  else
1266  break;
1267  else
1268  break;
1269  else
1270  break;
1271  else
1272  break;
1273  else
1274  break;
1275  else
1276  break;
1277  else
1278  break;
1279  else
1280  break;
1281  else if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
1282  if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
1283  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
1284  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
1285  if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
1286  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
1287  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
1288  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
1289  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
1290  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
1291  b += min_diff;
1292  else
1293  break;
1294  else
1295  break;
1296  else
1297  break;
1298  else
1299  break;
1300  else
1301  break;
1302  else
1303  break;
1304  else
1305  break;
1306  else
1307  break;
1308  else
1309  break;
1310  else
1311  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
1312  if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
1313  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
1314  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
1315  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
1316  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
1317  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
1318  if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
1319  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
1320  b += min_diff;
1321  else
1322  break;
1323  else
1324  break;
1325  else
1326  break;
1327  else
1328  break;
1329  else
1330  break;
1331  else
1332  break;
1333  else
1334  break;
1335  else
1336  break;
1337  else
1338  break;
1339  else if(test_gt_set(c_b, *(cache_0 + offset[0]), min_diff))
1340  if(test_gt_set(*(cache_0 + offset[8]), cb, min_diff))
1341  if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
1342  if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
1343  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
1344  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
1345  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
1346  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
1347  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
1348  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
1349  if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
1350  b += min_diff;
1351  else
1352  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
1353  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
1354  b += min_diff;
1355  else
1356  break;
1357  else
1358  break;
1359  else
1360  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
1361  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
1362  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
1363  b += min_diff;
1364  else
1365  break;
1366  else
1367  break;
1368  else
1369  break;
1370  else
1371  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
1372  if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
1373  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
1374  b += min_diff;
1375  else
1376  break;
1377  else
1378  break;
1379  else
1380  break;
1381  else if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
1382  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
1383  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
1384  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
1385  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
1386  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
1387  b += min_diff;
1388  else
1389  break;
1390  else
1391  break;
1392  else
1393  break;
1394  else
1395  break;
1396  else
1397  break;
1398  else
1399  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
1400  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
1401  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
1402  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
1403  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
1404  b += min_diff;
1405  else
1406  break;
1407  else
1408  break;
1409  else
1410  break;
1411  else
1412  break;
1413  else
1414  break;
1415  else
1416  break;
1417  else
1418  break;
1419  else
1420  break;
1421  else
1422  break;
1423  else if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
1424  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
1425  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
1426  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
1427  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
1428  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
1429  if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
1430  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
1431  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
1432  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
1433  b += min_diff;
1434  else
1435  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
1436  b += min_diff;
1437  else
1438  break;
1439  else
1440  break;
1441  else
1442  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
1443  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
1444  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
1445  b += min_diff;
1446  else
1447  break;
1448  else
1449  break;
1450  else
1451  break;
1452  else
1453  break;
1454  else
1455  break;
1456  else
1457  break;
1458  else
1459  break;
1460  else if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
1461  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
1462  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
1463  if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
1464  if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
1465  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
1466  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
1467  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
1468  b += min_diff;
1469  else
1470  break;
1471  else
1472  break;
1473  else
1474  break;
1475  else
1476  break;
1477  else
1478  break;
1479  else
1480  break;
1481  else
1482  break;
1483  else
1484  break;
1485  else if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
1486  if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
1487  if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
1488  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
1489  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
1490  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
1491  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
1492  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
1493  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
1494  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
1495  b += min_diff;
1496  else
1497  break;
1498  else
1499  break;
1500  else
1501  break;
1502  else
1503  break;
1504  else
1505  break;
1506  else
1507  break;
1508  else
1509  break;
1510  else if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
1511  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
1512  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
1513  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
1514  if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
1515  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
1516  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
1517  b += min_diff;
1518  else
1519  break;
1520  else
1521  break;
1522  else
1523  break;
1524  else
1525  break;
1526  else
1527  break;
1528  else
1529  break;
1530  else
1531  break;
1532  else if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
1533  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
1534  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
1535  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
1536  if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
1537  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
1538  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
1539  if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
1540  b += min_diff;
1541  else
1542  break;
1543  else
1544  break;
1545  else
1546  break;
1547  else
1548  if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
1549  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
1550  if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
1551  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
1552  b += min_diff;
1553  else
1554  break;
1555  else
1556  break;
1557  else
1558  break;
1559  else
1560  break;
1561  else if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
1562  if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
1563  if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
1564  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
1565  b += min_diff;
1566  else
1567  break;
1568  else
1569  if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
1570  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
1571  b += min_diff;
1572  else
1573  break;
1574  else
1575  break;
1576  else
1577  if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
1578  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
1579  if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
1580  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
1581  b += min_diff;
1582  else
1583  break;
1584  else
1585  break;
1586  else
1587  break;
1588  else
1589  break;
1590  else
1591  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
1592  if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
1593  if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
1594  if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
1595  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
1596  b += min_diff;
1597  else
1598  break;
1599  else
1600  break;
1601  else
1602  break;
1603  else if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
1604  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
1605  if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
1606  b += min_diff;
1607  else
1608  break;
1609  else
1610  break;
1611  else
1612  if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
1613  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
1614  if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
1615  b += min_diff;
1616  else
1617  break;
1618  else
1619  break;
1620  else
1621  break;
1622  else
1623  break;
1624  else
1625  break;
1626  else
1627  break;
1628  else
1629  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
1630  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
1631  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
1632  if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
1633  if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
1634  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
1635  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
1636  b += min_diff;
1637  else
1638  break;
1639  else
1640  break;
1641  else
1642  break;
1643  else
1644  break;
1645  else
1646  break;
1647  else
1648  break;
1649  else
1650  break;
1651  else
1652  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
1653  if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
1654  if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
1655  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
1656  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
1657  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
1658  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
1659  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
1660  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
1661  b += min_diff;
1662  else
1663  break;
1664  else
1665  break;
1666  else
1667  break;
1668  else
1669  break;
1670  else
1671  break;
1672  else
1673  break;
1674  else
1675  break;
1676  else
1677  break;
1678  else if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
1679  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
1680  if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
1681  if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
1682  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
1683  if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
1684  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
1685  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
1686  b += min_diff;
1687  else
1688  break;
1689  else
1690  break;
1691  else
1692  break;
1693  else
1694  break;
1695  else
1696  break;
1697  else
1698  break;
1699  else
1700  break;
1701  else
1702  break;
1703  else
1704  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
1705  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
1706  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
1707  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
1708  if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
1709  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
1710  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
1711  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
1712  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
1713  b += min_diff;
1714  else
1715  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
1716  b += min_diff;
1717  else
1718  break;
1719  else
1720  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
1721  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
1722  b += min_diff;
1723  else
1724  break;
1725  else
1726  break;
1727  else
1728  break;
1729  else
1730  if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
1731  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
1732  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
1733  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
1734  b += min_diff;
1735  else
1736  break;
1737  else
1738  break;
1739  else
1740  break;
1741  else
1742  break;
1743  else
1744  break;
1745  else
1746  break;
1747  else
1748  break;
1749  else
1750  break;
1751  else
1752  break;
1753  else if(test_gt_set(c_b, *(cache_0 + offset[8]), min_diff))
1754  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
1755  if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
1756  if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
1757  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
1758  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
1759  if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
1760  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
1761  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
1762  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
1763  if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
1764  if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
1765  b += min_diff;
1766  else
1767  break;
1768  else
1769  break;
1770  else if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
1771  b += min_diff;
1772  else
1773  if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
1774  if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
1775  b += min_diff;
1776  else
1777  break;
1778  else
1779  break;
1780  else
1781  break;
1782  else
1783  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
1784  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
1785  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
1786  b += min_diff;
1787  else
1788  break;
1789  else
1790  break;
1791  else
1792  break;
1793  else
1794  break;
1795  else
1796  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
1797  if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
1798  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
1799  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
1800  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
1801  if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
1802  b += min_diff;
1803  else
1804  break;
1805  else
1806  break;
1807  else
1808  break;
1809  else
1810  break;
1811  else
1812  break;
1813  else
1814  break;
1815  else
1816  break;
1817  else
1818  break;
1819  else
1820  break;
1821  else if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
1822  if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
1823  if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
1824  if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
1825  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
1826  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
1827  if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
1828  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
1829  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
1830  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
1831  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
1832  if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
1833  b += min_diff;
1834  else
1835  break;
1836  else
1837  break;
1838  else if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
1839  b += min_diff;
1840  else
1841  if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
1842  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
1843  b += min_diff;
1844  else
1845  break;
1846  else
1847  break;
1848  else
1849  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
1850  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
1851  b += min_diff;
1852  else
1853  break;
1854  else
1855  break;
1856  else
1857  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
1858  if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
1859  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
1860  b += min_diff;
1861  else
1862  break;
1863  else
1864  break;
1865  else
1866  break;
1867  else
1868  if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
1869  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
1870  if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
1871  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
1872  b += min_diff;
1873  else
1874  break;
1875  else
1876  break;
1877  else
1878  break;
1879  else
1880  break;
1881  else
1882  break;
1883  else
1884  break;
1885  else
1886  break;
1887  else
1888  break;
1889  else if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
1890  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
1891  if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
1892  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
1893  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
1894  if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
1895  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
1896  if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
1897  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
1898  b += min_diff;
1899  else
1900  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
1901  b += min_diff;
1902  else
1903  break;
1904  else
1905  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
1906  if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
1907  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
1908  b += min_diff;
1909  else
1910  break;
1911  else
1912  break;
1913  else
1914  break;
1915  else
1916  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
1917  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
1918  if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
1919  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
1920  b += min_diff;
1921  else
1922  break;
1923  else
1924  break;
1925  else
1926  break;
1927  else
1928  break;
1929  else
1930  break;
1931  else
1932  break;
1933  else
1934  break;
1935  else
1936  break;
1937  else if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
1938  if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
1939  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
1940  if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
1941  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
1942  if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
1943  if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
1944  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
1945  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
1946  b += min_diff;
1947  else
1948  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
1949  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
1950  b += min_diff;
1951  else
1952  break;
1953  else
1954  break;
1955  else
1956  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
1957  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
1958  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
1959  b += min_diff;
1960  else
1961  break;
1962  else
1963  break;
1964  else
1965  break;
1966  else
1967  break;
1968  else
1969  break;
1970  else
1971  break;
1972  else
1973  break;
1974  else
1975  break;
1976  else if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
1977  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
1978  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
1979  if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
1980  if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
1981  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
1982  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
1983  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
1984  b += min_diff;
1985  else
1986  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
1987  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
1988  if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
1989  b += min_diff;
1990  else
1991  break;
1992  else
1993  break;
1994  else
1995  break;
1996  else
1997  break;
1998  else
1999  break;
2000  else
2001  break;
2002  else
2003  break;
2004  else
2005  break;
2006  else if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
2007  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
2008  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
2009  if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
2010  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
2011  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
2012  b += min_diff;
2013  else
2014  break;
2015  else
2016  break;
2017  else
2018  break;
2019  else
2020  break;
2021  else if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
2022  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
2023  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
2024  if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
2025  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
2026  b += min_diff;
2027  else
2028  break;
2029  else
2030  break;
2031  else
2032  break;
2033  else if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
2034  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
2035  b += min_diff;
2036  else
2037  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
2038  b += min_diff;
2039  else
2040  break;
2041  else
2042  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
2043  if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
2044  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
2045  b += min_diff;
2046  else
2047  break;
2048  else
2049  break;
2050  else
2051  break;
2052  else
2053  if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
2054  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
2055  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
2056  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
2057  b += min_diff;
2058  else
2059  break;
2060  else
2061  break;
2062  else
2063  break;
2064  else
2065  break;
2066  else
2067  if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
2068  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
2069  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
2070  if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
2071  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
2072  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
2073  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
2074  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
2075  if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
2076  b += min_diff;
2077  else
2078  break;
2079  else
2080  break;
2081  else
2082  break;
2083  else if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
2084  b += min_diff;
2085  else
2086  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
2087  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
2088  if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
2089  b += min_diff;
2090  else
2091  break;
2092  else
2093  break;
2094  else
2095  break;
2096  else
2097  break;
2098  else
2099  break;
2100  else
2101  break;
2102  else
2103  break;
2104  else
2105  break;
2106  else
2107  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
2108  if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
2109  if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
2110  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
2111  if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
2112  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
2113  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
2114  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
2115  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
2116  b += min_diff;
2117  else
2118  break;
2119  else
2120  break;
2121  else
2122  break;
2123  else if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
2124  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
2125  b += min_diff;
2126  else
2127  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
2128  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
2129  b += min_diff;
2130  else
2131  break;
2132  else
2133  break;
2134  else
2135  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
2136  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
2137  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
2138  b += min_diff;
2139  else
2140  break;
2141  else
2142  break;
2143  else
2144  break;
2145  else
2146  break;
2147  else
2148  break;
2149  else
2150  break;
2151  else
2152  break;
2153  else
2154  break;
2155  else
2156  if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
2157  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
2158  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
2159  if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
2160  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
2161  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
2162  if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
2163  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
2164  b += min_diff;
2165  else
2166  break;
2167  else
2168  break;
2169  else
2170  break;
2171  else if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
2172  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
2173  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
2174  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
2175  if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
2176  b += min_diff;
2177  else
2178  break;
2179  else
2180  break;
2181  else
2182  break;
2183  else if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
2184  if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
2185  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
2186  if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
2187  b += min_diff;
2188  else
2189  break;
2190  else
2191  break;
2192  else if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
2193  b += min_diff;
2194  else
2195  if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
2196  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
2197  b += min_diff;
2198  else
2199  break;
2200  else
2201  break;
2202  else
2203  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
2204  if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
2205  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
2206  b += min_diff;
2207  else
2208  break;
2209  else
2210  break;
2211  else
2212  break;
2213  else
2214  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
2215  if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
2216  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
2217  b += min_diff;
2218  else
2219  break;
2220  else
2221  break;
2222  else
2223  break;
2224  else
2225  break;
2226  else
2227  break;
2228  else
2229  break;
2230  else
2231  break;
2232  else
2233  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
2234  if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
2235  if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
2236  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
2237  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
2238  if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
2239  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
2240  if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
2241  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
2242  b += min_diff;
2243  else
2244  break;
2245  else
2246  break;
2247  else
2248  break;
2249  else
2250  break;
2251  else if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
2252  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
2253  if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
2254  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
2255  b += min_diff;
2256  else
2257  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
2258  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
2259  b += min_diff;
2260  else
2261  break;
2262  else
2263  break;
2264  else
2265  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
2266  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
2267  b += min_diff;
2268  else
2269  break;
2270  else
2271  break;
2272  else
2273  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
2274  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
2275  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
2276  b += min_diff;
2277  else
2278  break;
2279  else
2280  break;
2281  else
2282  break;
2283  else
2284  if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
2285  if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
2286  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
2287  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
2288  b += min_diff;
2289  else
2290  break;
2291  else
2292  break;
2293  else
2294  break;
2295  else
2296  break;
2297  else
2298  break;
2299  else
2300  break;
2301  else
2302  break;
2303  else
2304  break;
2305  else
2306  if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
2307  if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
2308  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
2309  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
2310  if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
2311  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
2312  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
2313  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
2314  if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
2315  if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
2316  b += min_diff;
2317  else
2318  break;
2319  else
2320  break;
2321  else
2322  break;
2323  else if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
2324  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
2325  b += min_diff;
2326  else
2327  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
2328  b += min_diff;
2329  else
2330  break;
2331  else
2332  if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
2333  if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
2334  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
2335  b += min_diff;
2336  else
2337  break;
2338  else
2339  break;
2340  else
2341  break;
2342  else
2343  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
2344  if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
2345  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
2346  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
2347  b += min_diff;
2348  else
2349  break;
2350  else
2351  break;
2352  else
2353  break;
2354  else
2355  break;
2356  else
2357  break;
2358  else
2359  break;
2360  else
2361  break;
2362  else
2363  break;
2364  else
2365  break;
2366  else
2367  if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
2368  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
2369  if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
2370  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
2371  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
2372  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
2373  if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
2374  if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
2375  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
2376  if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
2377  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
2378  b += min_diff;
2379  else
2380  break;
2381  else
2382  break;
2383  else
2384  break;
2385  else
2386  break;
2387  else
2388  break;
2389  else
2390  break;
2391  else if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
2392  if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
2393  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
2394  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
2395  if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
2396  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
2397  b += min_diff;
2398  else
2399  break;
2400  else
2401  break;
2402  else
2403  break;
2404  else
2405  break;
2406  else
2407  break;
2408  else
2409  if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
2410  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
2411  if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
2412  if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
2413  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
2414  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
2415  b += min_diff;
2416  else
2417  break;
2418  else
2419  break;
2420  else
2421  break;
2422  else
2423  break;
2424  else
2425  break;
2426  else
2427  break;
2428  else
2429  break;
2430  else
2431  break;
2432  else if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
2433  if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
2434  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
2435  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
2436  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
2437  if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
2438  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
2439  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
2440  if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
2441  b += min_diff;
2442  else
2443  break;
2444  else
2445  break;
2446  else
2447  break;
2448  else
2449  break;
2450  else
2451  break;
2452  else
2453  break;
2454  else
2455  break;
2456  else if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
2457  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
2458  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
2459  if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
2460  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
2461  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
2462  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
2463  if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
2464  b += min_diff;
2465  else
2466  break;
2467  else
2468  break;
2469  else
2470  break;
2471  else
2472  break;
2473  else
2474  break;
2475  else if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
2476  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
2477  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
2478  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
2479  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
2480  if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
2481  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
2482  b += min_diff;
2483  else
2484  break;
2485  else
2486  break;
2487  else
2488  break;
2489  else if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
2490  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
2491  b += min_diff;
2492  else
2493  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
2494  b += min_diff;
2495  else
2496  break;
2497  else
2498  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
2499  if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
2500  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
2501  b += min_diff;
2502  else
2503  break;
2504  else
2505  break;
2506  else
2507  break;
2508  else
2509  break;
2510  else
2511  break;
2512  else
2513  if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
2514  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
2515  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
2516  if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
2517  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
2518  b += min_diff;
2519  else
2520  break;
2521  else
2522  break;
2523  else
2524  break;
2525  else
2526  break;
2527  else
2528  break;
2529  else
2530  break;
2531  else
2532  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
2533  if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
2534  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
2535  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
2536  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
2537  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
2538  if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
2539  b += min_diff;
2540  else
2541  break;
2542  else
2543  break;
2544  else
2545  break;
2546  else
2547  break;
2548  else
2549  break;
2550  else
2551  break;
2552  else
2553  break;
2554  else
2555  if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
2556  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
2557  if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
2558  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
2559  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
2560  if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
2561  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
2562  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
2563  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
2564  b += min_diff;
2565  else
2566  break;
2567  else
2568  break;
2569  else
2570  break;
2571  else
2572  break;
2573  else
2574  break;
2575  else if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
2576  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
2577  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
2578  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
2579  if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
2580  b += min_diff;
2581  else
2582  break;
2583  else
2584  break;
2585  else
2586  break;
2587  else
2588  break;
2589  else
2590  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
2591  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
2592  if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
2593  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
2594  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
2595  b += min_diff;
2596  else
2597  break;
2598  else
2599  break;
2600  else
2601  break;
2602  else
2603  break;
2604  else
2605  break;
2606  else
2607  break;
2608  else
2609  break;
2610  else
2611  break;
2612  else
2613  break;
2614  else
2615  if(test_gt_set(*(cache_0 + offset[8]), cb, min_diff))
2616  if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
2617  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
2618  if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
2619  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
2620  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
2621  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
2622  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
2623  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
2624  if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
2625  b += min_diff;
2626  else if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
2627  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
2628  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
2629  b += min_diff;
2630  else
2631  break;
2632  else
2633  break;
2634  else
2635  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
2636  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
2637  b += min_diff;
2638  else
2639  break;
2640  else
2641  break;
2642  else if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
2643  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
2644  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
2645  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
2646  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
2647  b += min_diff;
2648  else
2649  break;
2650  else
2651  break;
2652  else
2653  break;
2654  else
2655  break;
2656  else
2657  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
2658  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
2659  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
2660  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
2661  b += min_diff;
2662  else
2663  break;
2664  else
2665  break;
2666  else
2667  break;
2668  else
2669  break;
2670  else
2671  break;
2672  else
2673  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
2674  if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
2675  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
2676  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
2677  b += min_diff;
2678  else
2679  break;
2680  else
2681  break;
2682  else
2683  break;
2684  else
2685  break;
2686  else
2687  break;
2688  else
2689  break;
2690  else if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
2691  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
2692  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
2693  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
2694  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
2695  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
2696  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
2697  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
2698  b += min_diff;
2699  else
2700  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
2701  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
2702  b += min_diff;
2703  else
2704  break;
2705  else
2706  break;
2707  else
2708  if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
2709  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
2710  b += min_diff;
2711  else
2712  break;
2713  else
2714  break;
2715  else
2716  break;
2717  else
2718  break;
2719  else
2720  break;
2721  else
2722  break;
2723  else
2724  break;
2725  else
2726  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
2727  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
2728  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
2729  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
2730  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
2731  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
2732  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
2733  b += min_diff;
2734  else if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
2735  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
2736  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
2737  b += min_diff;
2738  else
2739  break;
2740  else
2741  break;
2742  else
2743  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
2744  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
2745  b += min_diff;
2746  else
2747  break;
2748  else
2749  break;
2750  else
2751  break;
2752  else
2753  break;
2754  else if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
2755  if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
2756  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
2757  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
2758  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
2759  b += min_diff;
2760  else
2761  break;
2762  else
2763  break;
2764  else
2765  break;
2766  else
2767  break;
2768  else
2769  if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
2770  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
2771  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
2772  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
2773  b += min_diff;
2774  else
2775  break;
2776  else
2777  break;
2778  else
2779  break;
2780  else
2781  break;
2782  else
2783  break;
2784  else
2785  break;
2786  else
2787  break;
2788  else if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
2789  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
2790  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
2791  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
2792  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
2793  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
2794  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
2795  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
2796  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
2797  b += min_diff;
2798  else
2799  break;
2800  else
2801  break;
2802  else
2803  break;
2804  else
2805  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
2806  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
2807  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
2808  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
2809  b += min_diff;
2810  else
2811  break;
2812  else
2813  break;
2814  else
2815  break;
2816  else
2817  break;
2818  else
2819  break;
2820  else
2821  break;
2822  else
2823  break;
2824  else
2825  break;
2826  else
2827  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
2828  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
2829  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
2830  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
2831  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
2832  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
2833  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
2834  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
2835  b += min_diff;
2836  else
2837  break;
2838  else
2839  break;
2840  else
2841  break;
2842  else
2843  break;
2844  else if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
2845  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
2846  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
2847  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
2848  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
2849  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
2850  b += min_diff;
2851  else
2852  break;
2853  else
2854  break;
2855  else
2856  break;
2857  else
2858  break;
2859  else
2860  break;
2861  else
2862  if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
2863  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
2864  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
2865  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
2866  if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
2867  b += min_diff;
2868  else
2869  break;
2870  else
2871  break;
2872  else
2873  break;
2874  else
2875  break;
2876  else
2877  break;
2878  else
2879  break;
2880  else
2881  break;
2882  else
2883  break;
2884  else
2885  break;
2886  else if(test_gt_set(c_b, *(cache_0 + offset[8]), min_diff))
2887  if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
2888  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
2889  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
2890  if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
2891  if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
2892  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
2893  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
2894  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
2895  if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
2896  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
2897  b += min_diff;
2898  else
2899  break;
2900  else
2901  break;
2902  else
2903  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
2904  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
2905  if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
2906  b += min_diff;
2907  else
2908  break;
2909  else
2910  break;
2911  else
2912  break;
2913  else
2914  break;
2915  else
2916  break;
2917  else
2918  break;
2919  else
2920  break;
2921  else
2922  break;
2923  else if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
2924  if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
2925  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
2926  if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
2927  if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
2928  if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
2929  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
2930  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
2931  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
2932  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
2933  b += min_diff;
2934  else
2935  break;
2936  else
2937  break;
2938  else
2939  break;
2940  else
2941  break;
2942  else
2943  break;
2944  else if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
2945  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
2946  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
2947  if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
2948  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
2949  b += min_diff;
2950  else
2951  break;
2952  else
2953  break;
2954  else
2955  break;
2956  else
2957  break;
2958  else
2959  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
2960  if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
2961  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
2962  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
2963  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
2964  b += min_diff;
2965  else
2966  break;
2967  else
2968  break;
2969  else
2970  break;
2971  else
2972  break;
2973  else
2974  break;
2975  else
2976  break;
2977  else if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
2978  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
2979  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
2980  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
2981  if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
2982  if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
2983  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
2984  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
2985  b += min_diff;
2986  else
2987  break;
2988  else
2989  break;
2990  else
2991  break;
2992  else
2993  break;
2994  else
2995  break;
2996  else if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
2997  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
2998  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
2999  if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
3000  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
3001  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
3002  b += min_diff;
3003  else
3004  break;
3005  else
3006  break;
3007  else
3008  break;
3009  else if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
3010  if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
3011  b += min_diff;
3012  else
3013  if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
3014  b += min_diff;
3015  else
3016  break;
3017  else
3018  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
3019  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
3020  if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
3021  b += min_diff;
3022  else
3023  break;
3024  else
3025  break;
3026  else
3027  break;
3028  else
3029  break;
3030  else
3031  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
3032  if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
3033  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
3034  if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
3035  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
3036  b += min_diff;
3037  else
3038  break;
3039  else
3040  break;
3041  else
3042  break;
3043  else
3044  break;
3045  else
3046  break;
3047  else
3048  break;
3049  else
3050  if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
3051  if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
3052  if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
3053  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
3054  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
3055  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
3056  b += min_diff;
3057  else
3058  break;
3059  else
3060  break;
3061  else
3062  break;
3063  else
3064  break;
3065  else
3066  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
3067  if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
3068  if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
3069  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
3070  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
3071  b += min_diff;
3072  else
3073  break;
3074  else
3075  break;
3076  else
3077  break;
3078  else
3079  break;
3080  else
3081  break;
3082  else
3083  break;
3084  else
3085  break;
3086  else
3087  if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
3088  if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
3089  if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
3090  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
3091  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
3092  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
3093  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
3094  if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
3095  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
3096  b += min_diff;
3097  else
3098  break;
3099  else
3100  break;
3101  else
3102  break;
3103  else
3104  break;
3105  else
3106  break;
3107  else if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
3108  if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
3109  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
3110  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
3111  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
3112  b += min_diff;
3113  else
3114  break;
3115  else
3116  break;
3117  else
3118  break;
3119  else
3120  break;
3121  else
3122  if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
3123  if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
3124  if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
3125  if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
3126  if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
3127  b += min_diff;
3128  else
3129  break;
3130  else
3131  break;
3132  else
3133  break;
3134  else
3135  break;
3136  else
3137  break;
3138  else
3139  break;
3140  else
3141  break;
3142  else
3143  break;
3144  else
3145  break;
3146  else
3147  break;
3148 
3149  }
3150 
3151  return b-1;
3152 }
3153 
3154 void fast_corner_score_10(const SubImage<byte>& i, const vector<ImageRef>& corners, int b, vector<int>& scores)
3155 {
3156  scores.resize(corners.size());
3157  int pixel[16] = {
3158  0 + i.row_stride() * 3,
3159  1 + i.row_stride() * 3,
3160  2 + i.row_stride() * 2,
3161  3 + i.row_stride() * 1,
3162  3 + i.row_stride() * 0,
3163  3 + i.row_stride() * -1,
3164  2 + i.row_stride() * -2,
3165  1 + i.row_stride() * -3,
3166  0 + i.row_stride() * -3,
3167  -1 + i.row_stride() * -3,
3168  -2 + i.row_stride() * -2,
3169  -3 + i.row_stride() * -1,
3170  -3 + i.row_stride() * 0,
3171  -3 + i.row_stride() * 1,
3172  -2 + i.row_stride() * 2,
3173  -1 + i.row_stride() * 3,
3174  };
3175  for(unsigned int n=0; n < corners.size(); n++)
3176  scores[n] = fast_corner_score_10(&i[corners[n]], pixel, b);
3177 }
3178 
3179 }
void fast_corner_score_10(const SubImage< byte > &i, const vector< ImageRef > &corners, int b, vector< int > &scores)
Definition: abs.h:24
int row_stride() const
What is the row stride of the image?
Definition: image.h:376
unsigned char byte
Definition: byte.h:28
static bool test_gt_set(int a, int b, int &min_diff)