libcvd-members
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[libcvd-members] libcvd Makefile.in configure.in cvd/fast_corner... [FAS


From: Edward Rosten
Subject: [libcvd-members] libcvd Makefile.in configure.in cvd/fast_corner... [FAST_cleanup]
Date: Thu, 28 Jun 2007 01:33:03 +0000

CVSROOT:        /cvsroot/libcvd
Module name:    libcvd
Branch:         FAST_cleanup
Changes by:     Edward Rosten <edrosten>        07/06/28 01:33:00

Modified files:
        .              : Makefile.in configure.in 
        cvd            : fast_corner.h nonmax_suppression.h 
        cvd_src        : fast_corner.cxx faster_corner.cxx 
Added files:
        cvd_src        : slower_corner.cxx 
        cvd_src/fast   : fast_10_detect.cxx fast_10_score.cxx 
                         fast_11_detect.cxx fast_11_score.cxx 
                         fast_12_detect.cxx fast_12_score.cxx 
                         fast_7_detect.cxx fast_7_score.cxx 
                         fast_8_detect.cxx fast_8_score.cxx 
                         fast_9_detect.cxx fast_9_score.cxx prototypes.h 
Removed files:
        cvd_src/fast   : 10_2_0.cxx 10_2_1.cxx 11_2_0.cxx 11_2_1.cxx 
                         12_2_0.cxx 12_2_1.cxx 7_2_0.cxx 7_2_1.cxx 
                         8_2_0.cxx 8_2_1.cxx 9_2_0.cxx 9_2_1.cxx README 

Log message:
        Plain C++ detector trees replaced with trees which compute the exact 
segment
        test criterion. New trees have not been tested to find the optimal
        parameters as heavily as the old trees.
        
        FAST_N scoring now uses trees instead of a hand coded algorithm.
        
        The scoring functions have been renamed.
        
        The SSE2 detectors call the new exact tree based detectors for very 
narrow
        images.
        
        Added fast_corner_detect_9_nonmax() which returns nonmax suppressed 
FAST-9
        corners (ie the common case).

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/libcvd/Makefile.in?cvsroot=libcvd&only_with_tag=FAST_cleanup&r1=1.52.2.3&r2=1.52.2.4
http://cvs.savannah.gnu.org/viewcvs/libcvd/configure.in?cvsroot=libcvd&only_with_tag=FAST_cleanup&r1=1.85&r2=1.85.2.1
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd/fast_corner.h?cvsroot=libcvd&only_with_tag=FAST_cleanup&r1=1.14.2.2&r2=1.14.2.3
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd/nonmax_suppression.h?cvsroot=libcvd&only_with_tag=FAST_cleanup&r1=1.1.2.2&r2=1.1.2.3
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast_corner.cxx?cvsroot=libcvd&only_with_tag=FAST_cleanup&r1=1.13.2.1&r2=1.13.2.2
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/faster_corner.cxx?cvsroot=libcvd&only_with_tag=FAST_cleanup&r1=1.5.2.1&r2=1.5.2.2
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/slower_corner.cxx?cvsroot=libcvd&only_with_tag=FAST_cleanup&rev=1.1.2.1
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/fast_10_detect.cxx?cvsroot=libcvd&only_with_tag=FAST_cleanup&rev=1.1.2.1
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/fast_10_score.cxx?cvsroot=libcvd&only_with_tag=FAST_cleanup&rev=1.1.2.1
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/fast_11_detect.cxx?cvsroot=libcvd&only_with_tag=FAST_cleanup&rev=1.1.2.1
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/fast_11_score.cxx?cvsroot=libcvd&only_with_tag=FAST_cleanup&rev=1.1.2.1
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/fast_12_detect.cxx?cvsroot=libcvd&only_with_tag=FAST_cleanup&rev=1.1.2.1
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/fast_12_score.cxx?cvsroot=libcvd&only_with_tag=FAST_cleanup&rev=1.1.2.1
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/fast_7_detect.cxx?cvsroot=libcvd&only_with_tag=FAST_cleanup&rev=1.1.2.1
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/fast_7_score.cxx?cvsroot=libcvd&only_with_tag=FAST_cleanup&rev=1.1.2.1
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/fast_8_detect.cxx?cvsroot=libcvd&only_with_tag=FAST_cleanup&rev=1.1.2.1
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/fast_8_score.cxx?cvsroot=libcvd&only_with_tag=FAST_cleanup&rev=1.1.2.1
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/fast_9_detect.cxx?cvsroot=libcvd&only_with_tag=FAST_cleanup&rev=1.1.2.1
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/fast_9_score.cxx?cvsroot=libcvd&only_with_tag=FAST_cleanup&rev=1.1.2.1
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/prototypes.h?cvsroot=libcvd&only_with_tag=FAST_cleanup&rev=1.1.2.1
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/10_2_0.cxx?cvsroot=libcvd&only_with_tag=FAST_cleanup&r1=1.1&r2=0
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/10_2_1.cxx?cvsroot=libcvd&only_with_tag=FAST_cleanup&r1=1.1&r2=0
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/11_2_0.cxx?cvsroot=libcvd&only_with_tag=FAST_cleanup&r1=1.1&r2=0
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/11_2_1.cxx?cvsroot=libcvd&only_with_tag=FAST_cleanup&r1=1.1&r2=0
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/12_2_0.cxx?cvsroot=libcvd&only_with_tag=FAST_cleanup&r1=1.1&r2=0
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/12_2_1.cxx?cvsroot=libcvd&only_with_tag=FAST_cleanup&r1=1.1&r2=0
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/7_2_0.cxx?cvsroot=libcvd&only_with_tag=FAST_cleanup&r1=1.2&r2=0
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/7_2_1.cxx?cvsroot=libcvd&only_with_tag=FAST_cleanup&r1=1.2&r2=0
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/8_2_0.cxx?cvsroot=libcvd&only_with_tag=FAST_cleanup&r1=1.2&r2=0
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/8_2_1.cxx?cvsroot=libcvd&only_with_tag=FAST_cleanup&r1=1.2&r2=0
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/9_2_0.cxx?cvsroot=libcvd&only_with_tag=FAST_cleanup&r1=1.1&r2=0
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/9_2_1.cxx?cvsroot=libcvd&only_with_tag=FAST_cleanup&r1=1.1&r2=0
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/README?cvsroot=libcvd&only_with_tag=FAST_cleanup&r1=1.1&r2=0

Patches:
Index: Makefile.in
===================================================================
RCS file: /cvsroot/libcvd/libcvd/Makefile.in,v
retrieving revision 1.52.2.3
retrieving revision 1.52.2.4
diff -u -b -r1.52.2.3 -r1.52.2.4
--- Makefile.in 27 Jun 2007 23:00:03 -0000      1.52.2.3
+++ Makefile.in 28 Jun 2007 01:32:56 -0000      1.52.2.4
@@ -101,11 +101,24 @@
                        cvd_src/fast_corner.o                           \
                        cvd_src/convolution.o                           \
                        cvd_src/nonmax_suppression.o                    \
-                       cvd_src/fast/address@hidden@address@hidden@.o   \
-                       cvd_src/fast/address@hidden@address@hidden@.o   \
-                       cvd_src/fast/address@hidden@address@hidden@.o  \
                        cvd_src/timeddiskbuffer.o    \
-                       cvd_src/videosource.o
+                       cvd_src/videosource.o                           \
+                       cvd_src/fast/fast_7_detect.o                    \
+                       cvd_src/fast/fast_7_score.o                     \
+                       cvd_src/fast/fast_8_detect.o                    \
+                       cvd_src/fast/fast_8_score.o                     \
+                       cvd_src/fast/fast_9_detect.o                    \
+                       cvd_src/fast/fast_9_score.o                     \
+                       cvd_src/fast/fast_10_detect.o                   \
+                       cvd_src/fast/fast_10_score.o                    \
+                       cvd_src/fast/fast_11_detect.o                   \
+                       cvd_src/fast/fast_11_score.o                    \
+                       cvd_src/fast/fast_12_detect.o                   \
+                       cvd_src/fast/fast_12_score.o                    \
+
+                       #cvd_src/fast/address@hidden@address@hidden@.o   \
+                       #cvd_src/fast/address@hidden@address@hidden@.o   \
+                       #cvd_src/fast/address@hidden@address@hidden@.o  \
 
################################################################################
 #
 # Stuff requiring TooN
@@ -218,10 +231,7 @@
 ifeq (@have_sse2@,yes)
        CVD_OBJS+=cvd_src/faster_corner.o
 else
-       CVD_OBJS+=\
-                       cvd_src/fast/address@hidden@address@hidden@.o   \
-                       cvd_src/fast/address@hidden@address@hidden@.o  \
-                       cvd_src/fast/address@hidden@address@hidden@.o  
+       CVD_OBJS+=cvd_src/slower_corner.o
 endif
 
 

Index: configure.in
===================================================================
RCS file: /cvsroot/libcvd/libcvd/configure.in,v
retrieving revision 1.85
retrieving revision 1.85.2.1
diff -u -b -r1.85 -r1.85.2.1
--- configure.in        19 Jun 2007 21:41:14 -0000      1.85
+++ configure.in        28 Jun 2007 01:32:56 -0000      1.85.2.1
@@ -1111,42 +1111,6 @@
        dodginess_options="$dodginess_options no_posix_memalign"
 fi             
 
-################################################################################
-#
-# Fast options
-
-echo
-echo ----------------------
-echo Fast feature detection
-echo ----------------------
-
-
-fast_ptr=2
-AC_ARG_WITH(TooN, [  --with-fast-pointers=N  Number of pointers for FAST 
detectors. Answer: 2 ], [fast_ptr=$withval])
-
-fast_force=1
-AC_ARG_WITH(TooN, [  --with-fast-force=N     Force first question position for 
FAST. Answer: 0,1 ], [fast_force=$withval])
-
-if test "$fast_force" != 0 && test "$fast_force" != 1
-then
-       fast_force=1
-fi
-
-if test "$fast_ptr" != 2
-then
-       fast_ptr=2
-fi
-
-AC_MSG_CHECKING([for FAST parameter "pointers"])
-AC_MSG_RESULT($fast_ptr)
-
-AC_MSG_CHECKING([for FAST parameter "force"])
-AC_MSG_RESULT($fast_force)
-
-AC_SUBST(fast_pointers, $fast_ptr)
-AC_SUBST(fast_force, $fast_force)
-
-
 
 
################################################################################
 #

Index: cvd/fast_corner.h
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd/fast_corner.h,v
retrieving revision 1.14.2.2
retrieving revision 1.14.2.3
diff -u -b -r1.14.2.2 -r1.14.2.3
--- cvd/fast_corner.h   27 Jun 2007 23:00:03 -0000      1.14.2.2
+++ cvd/fast_corner.h   28 Jun 2007 01:32:56 -0000      1.14.2.3
@@ -10,40 +10,12 @@
 
 namespace CVD
 {
-       /** Perform a FAST feature detect on an image. The FAST feature detector
-           is described in  Fusing Points and Lines for High Performance 
Tracking,
-           E. Rosten and T. Drummond. If you use this in published work, 
please 
-               cite paper:
-          
-\verbatim
address@hidden,
-       title       =    "Fusing points and lines for high performance 
tracking.",
-       author      =    "Edward Rosten and Tom Drummond",
-       year        =    "2005",     
-       month       =    "October",     
-       pages       =    "1508--1511",     
-       volume      =    "2",     
-       booktitle   =    "IEEE International Conference on Computer Vision",    
 
-       notes       =    "Oral presentation" 
-}
-\endverbatim
-
-               This performs 12 point FAST corner detection using the 
algorithm as originally described.
-
-               You probably don't want to use this feature detector. The 9 
point FAST detector 
-               is better. See @ref fast_corner_detect_9
-          
-           @param im           The input image
-           @param corners      The resulting container of corner locations
-           @param barrier      Corner detection threshold
-           @ingroup    gVision
-       **/
-       void fast_corner_detect(const BasicImage<byte>& im, 
std::vector<ImageRef>& corners, int barrier);
   
        /** Perform non-maximal suppression on a set of FAST features. This 
cleans up
        areas where there are multiple adjacent features, using a computed score
        function to leave only the 'best' features. This function is typically 
called
-       immediately after a call to fast_corner_detect() (or one of its 
variants).
+       immediately after a call to fast_corner_detect() (or one of its 
variants). This 
+       uses the scoring function given in the paper given in @ref 
fast_corner_detect_9:
 
        @param im The image used to generate the FAST features
        @param corners The FAST features previously detected (e.g. by calling 
fast_corner_detect())
@@ -71,18 +43,6 @@
        */
        void fast_nonmax_with_scores( const BasicImage<byte>& im, const 
std::vector<ImageRef>& corners, int barrier, 
std::vector<std::pair<ImageRef,int> >& max_corners);
 
-       /** Return the score for the corner as used by fast_nonmax
-               Note that this is not the same score as used in @ref fast_score 
.
-
-               NB: This function is DEPRECATED!
-
-               @param im The image.
-               @param c The location in the image to be scored
-               @param pointer_dir Integer offsets for each of the 16 pixels in 
the ring from the centre.
-               @param barrier Corner detection threshold
-       */
-       int corner_score(const BasicImage<byte>& im, ImageRef c, const int 
*pointer_dir, int barrier);
-
        /// Perform tree based 7 point FAST feature detection. This is more 
like an edge detector.
        /// If you use this, please cite the paper given in @ref 
fast_corner_detect_9
        ///
@@ -92,6 +52,18 @@
        /// @ingroup    gVision
        void fast_corner_detect_7(const BasicImage<byte>& im, 
std::vector<ImageRef>& corners, int barrier);
 
+       
+       /// Compute the 7 point score (as the maximum threshold at which the 
point will still be detected) for
+       /// a std::vector of features.
+       ///
+       /// @param im           The input image
+       /// @param corners      The resulting container of corner locations
+       /// @param barrier      Initial corner detection threshold. Using the 
same threshold as for corner detection will produce the 
+       ///                 quickest results, but any lower value (e.g. 0) will 
produce correct results.
+       /// @ingroup    gVision
+       void fast_corner_score_7(const SubImage<byte>& i, const 
std::vector<ImageRef>& corners, int b, std::vector<int>& scores);
+
+
        /// Perform tree based 8 point FAST feature detection. This is more 
like an edge detector.
        /// If you use this, please cite the paper given in @ref 
fast_corner_detect_9
        ///
@@ -101,6 +73,16 @@
        /// @ingroup    gVision
        void fast_corner_detect_8(const BasicImage<byte>& im, 
std::vector<ImageRef>& corners, int barrier);
        
+       /// Compute the 8 point score (as the maximum threshold at which the 
point will still be detected) for
+       /// a std::vector of features.
+       ///
+       /// @param im           The input image
+       /// @param corners      The resulting container of corner locations
+       /// @param barrier      Initial corner detection threshold. Using the 
same threshold as for corner detection will produce the 
+       ///                 quickest results, but any lower value (e.g. 0) will 
produce correct results.
+       /// @ingroup    gVision
+       void fast_corner_score_8(const SubImage<byte>& i, const 
std::vector<ImageRef>& corners, int b, std::vector<int>& scores);
+
        
        /** Perform tree based 9 point FAST feature detection as described in:
            Machine Learning for High Speed Corner Detection, E. Rosten and T. 
Drummond.
@@ -114,7 +96,6 @@
        year        =    "2006",     
        month       =    "May",     
        booktitle   =    "9th European Conference on Computer Vision",
-       notes       =    "To appear"
 }
 \endverbatim
 
@@ -125,6 +106,26 @@
        **/
        void fast_corner_detect_9(const BasicImage<byte>& im, 
std::vector<ImageRef>& corners, int barrier);
 
+       /// Compute the 9 point score (as the maximum threshold at which the 
point will still be detected) for
+       /// a std::vector of features.
+       ///
+       /// @param im           The input image
+       /// @param corners      The resulting container of corner locations
+       /// @param barrier      Initial corner detection threshold. Using the 
same threshold as for corner detection will produce the 
+       ///                 quickest results, but any lower value (e.g. 0) will 
produce correct results.
+       /// @ingroup    gVision
+       void fast_corner_score_9(const SubImage<byte>& i, const 
std::vector<ImageRef>& corners, int b, std::vector<int>& scores);
+       
+
+       ///Perform FAST-9 corner detection (see @ref fast_corner_detect_9), 
with nonmaximal
+       ///suppression (see @ref fast_corner_score_9 and @ref 
nonmax_suppression)
+       ///
+       /// @param im           The input image
+       /// @param corners      The resulting container of locally maximal 
corner locations
+       /// @param barrier      Corner detection threshold
+       /// @ingroup    gVision
+       inline void fast_corner_score_9_nonmax(const BasicImage<byte>& im, 
std::vector<ImageRef>& max_corners, int barrier);
+
        /// Perform tree based 10 point FAST feature detection
        /// If you use this, please cite the paper given in @ref 
fast_corner_detect
        ///
@@ -134,6 +135,16 @@
        /// @ingroup    gVision
        void fast_corner_detect_10(const BasicImage<byte>& im, 
std::vector<ImageRef>& corners, int barrier);
 
+       /// Compute the 10 point score (as the maximum threshold at which the 
point will still be detected) for
+       /// a std::vector of features.
+       ///
+       /// @param im           The input image
+       /// @param corners      The resulting container of corner locations
+       /// @param barrier      Initial corner detection threshold. Using the 
same threshold as for corner detection will produce the 
+       ///                 quickest results, but any lower value (e.g. 0) will 
produce correct results.
+       /// @ingroup    gVision
+       void fast_corner_score_10(const SubImage<byte>& i, const 
std::vector<ImageRef>& corners, int b, std::vector<int>& scores);
+
        /// Perform tree based 11 point FAST feature detection
        /// If you use this, please cite the paper given in @ref 
fast_corner_detect_9
        ///
@@ -143,6 +154,16 @@
        /// @ingroup    gVision
        void fast_corner_detect_11(const BasicImage<byte>& im, 
std::vector<ImageRef>& corners, int barrier);
 
+       /// Compute the 11 point score (as the maximum threshold at which the 
point will still be detected) for
+       /// a std::vector of features.
+       ///
+       /// @param im           The input image
+       /// @param corners      The resulting container of corner locations
+       /// @param barrier      Initial corner detection threshold. Using the 
same threshold as for corner detection will produce the 
+       ///                 quickest results, but any lower value (e.g. 0) will 
produce correct results.
+       /// @ingroup    gVision
+       void fast_corner_score_11(const SubImage<byte>& i, const 
std::vector<ImageRef>& corners, int b, std::vector<int>& scores);
+
        /// Perform tree based 12 point FAST feature detection
        /// If you use this, please cite the paper given in @ref 
fast_corner_detect_9
        ///
@@ -152,16 +173,16 @@
        /// @ingroup    gVision
        void fast_corner_detect_12(const BasicImage<byte>& im, 
std::vector<ImageRef>& corners, int barrier);
 
-
-       /// Score corners detected by FAST as the maximum barrier at which the 
corner is still a corner.
+       /// Compute the 11 point score (as the maximum threshold at which the 
point will still be detected) for
+       /// a std::vector of features.
        ///     
        ///     @param  im              The input image
-       ///     @param corners  Detected corners
-       ///     @param ret              The returned corner scores
-       ///     @param barrier  Do not check for scores below this (can be 
negative)
-       /// @param Num          Score for Num-point corner detection
+       /// @param corners      The resulting container of corner locations
+       /// @param barrier      Initial corner detection threshold. Using the 
same threshold as for corner detection will produce the 
+       ///                 quickest results, but any lower value (e.g. 0) will 
produce correct results.
        /// @ingroup            gVision
-       template<int Num> void fast_score(const BasicImage<byte> im, const 
std::vector<ImageRef> corners, std::vector<int>& ret, int barrier);
+       void fast_corner_score_12(const SubImage<byte>& i, const 
std::vector<ImageRef>& corners, int b, std::vector<int>& scores);
+
 
 
        /// The 16 offsets from the centre pixel used in FAST feature detection.

Index: cvd/nonmax_suppression.h
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd/Attic/nonmax_suppression.h,v
retrieving revision 1.1.2.2
retrieving revision 1.1.2.3
diff -u -b -r1.1.2.2 -r1.1.2.3
--- cvd/nonmax_suppression.h    27 Jun 2007 23:00:03 -0000      1.1.2.2
+++ cvd/nonmax_suppression.h    28 Jun 2007 01:32:56 -0000      1.1.2.3
@@ -7,7 +7,7 @@
 
 namespace CVD
 {
-       /**Perform nonmaximal suppression on a set of features.
+       /**Perform nonmaximal suppression on a set of features, in a 3 by 3 
window.
 
        @param corners The corner locations
        @param scores  The corners' scores
@@ -17,7 +17,7 @@
        void nonmax_suppression(const std::vector<ImageRef>& corners, const 
std::vector<int>& scores, std::vector<ImageRef>& nmax_corners);
 
 
-       /**Perform nonmaximal suppression on a set of features.
+       /**Perform nonmaximal suppression on a set of features, in a 3 by 3 
window.
 
        @param corners The corner locations
        @param scores  The corners' scores

Index: cvd_src/fast_corner.cxx
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd_src/fast_corner.cxx,v
retrieving revision 1.13.2.1
retrieving revision 1.13.2.2
diff -u -b -r1.13.2.1 -r1.13.2.2
--- cvd_src/fast_corner.cxx     27 Jun 2007 23:00:04 -0000      1.13.2.1
+++ cvd_src/fast_corner.cxx     28 Jun 2007 01:32:56 -0000      1.13.2.2
@@ -1,5 +1,6 @@
 #include <cvd/fast_corner.h>
 #include <cvd/nonmax_suppression.h>
+#include "cvd_src/fast/prototypes.h"
 
 using namespace CVD;
 using namespace std;
@@ -27,298 +28,9 @@
        ImageRef(-1,3),
 };
 
-ImageRef dir[17]=
-{
-       ImageRef(0,3),
-       ImageRef(1,3),
-       ImageRef(2,2),
-       ImageRef(3,1),
-       ImageRef(3,0),
-       ImageRef(3,-1),
-       ImageRef(2,-2),
-       ImageRef(1,-3),
-       ImageRef(0,-3),
-       ImageRef(-1,-3),
-       ImageRef(-2,-2),
-       ImageRef(-3,-1),
-       ImageRef(-3,0),
-       ImageRef(-3,1),
-       ImageRef(-2,2),
-       ImageRef(-1,3),
-       ImageRef(0,0)
-};
-
-inline int is_corner_positive(const byte* imp, const int *pointer_dir, int cb)
-{
-       int num_for_corner = 12;
-
-       int num_consecutive=0;
-       int first_cons=0;
-       int val;
-       for(int i=0; i<16; i++)
-       {
-               val = imp[pointer_dir[i]];
-               if(val > cb)
-               {
-                       num_consecutive++;
-                       
-                       if(num_consecutive == num_for_corner)
-                               return 1;
-               } 
-               else
-               {
-                       if(num_consecutive == i)
-                               first_cons=i;
-
-                       num_consecutive=0;
-               }
-       }
-       
-       return first_cons+num_consecutive >=num_for_corner;
-}
-
-inline int is_corner_negative(const byte* imp, const int *pointer_dir, int c_b)
-{
-       int num_for_corner = 12;
-       int num_consecutive=0;
-       int first_cons=0;
-       int val;
-       for(int i=0; i<16; i++)
-       {
-               val = imp[pointer_dir[i]];
-               if(val < c_b)
-               {
-                       num_consecutive++;
-
-                       if(num_consecutive == num_for_corner)
-                               return 2;
-               } 
-               else 
-               {
-                       if(num_consecutive == i)
-                               first_cons=i;
-
-                       num_consecutive=0;
-               }
-       }
-
-       return first_cons+num_consecutive >=num_for_corner;
-}
-
-void fast_corner_detect(const BasicImage<byte>& im, vector<ImageRef>& corners, 
int barrier)
-{
-       int boundary = 3, y;
-       const byte* imp, *line_max, *line_min;
-       
-
-       //Create a list of integer pointer offstes, corresponding to the 
-       //direction offsets in dir[]
-       int     pointer_dir[16];
-       for(int i=0; i < 16; i++)
-               pointer_dir[i] = dir[i].x + dir[i].y * im.size().x;
-       
-       const byte* high_row, *low_row;
-
-       int num_above;  //Number of pixels above center+barrier in value
-       int num_below;
-       int cb;                 //center + barrier
-       int c_b;                //center - barrier
-
-       for(y = boundary ; y < im.size().y - boundary; y++)
-       {
-               imp = &im[ImageRef(boundary, y)];
-               high_row = &im[ImageRef(boundary, y-3)];
-               low_row = &im[ImageRef(boundary, y+3)];
-               line_max = &im[ImageRef(im.size().x - boundary, y)];
-               line_min = imp - boundary;
-
-               for(; imp < line_max; imp++, high_row++, low_row++)
-               {
-                       cb = *imp + barrier;
-                       c_b = *imp - barrier;
-                       
-                       //Look above first, then below
-                       num_above= (*high_row > cb);
-                       num_below= (*high_row < c_b);
-                       num_above+= (*low_row > cb);
-                       num_below+= (*low_row < c_b);
-
-                       if(!num_above && !num_below)
-                               continue;
-                       
-                       //Look left
-                       num_above+= (*(imp-3) > cb);
-                       num_below+= (*(imp-3) < c_b);
-
-                       if(num_above&2) //num_above is 2 or 3
-                       {       
-                               if(!(num_above & 1)) //num_above is 2
-                                       num_above+= (*(imp+3) > cb);
-                               
-                               //Only do a detailed look of num_above is 3
-                               if((num_above &1) && is_corner_positive(imp, 
pointer_dir, cb))
-                                       
corners.push_back(ImageRef(imp-line_min, y));
-                       }
-                       else if(num_below & 2)
-                       {
-                               if(!(num_below & 1)) //num_above is 2
-                                       num_below+= (*(imp+3) < c_b);
-
-                               if((num_below &1) && is_corner_negative(imp, 
pointer_dir, c_b))
-                                       
corners.push_back(ImageRef(imp-line_min, y));
-                       }
-               }
-       }
-}
-
-
-
 struct CornerPositive { inline static int sub(int a, int b) { return a-b; } };
 struct CornerNegative { inline static int sub(int a, int b) { return b-a; } };
 
-template<class Type, int num_for_corner> inline int is_corner_with_diff(const 
byte* imp, int c_and_b)
-{
-       //templating on num_for_corner makes a small increase in speed.
-
-       //Return amount by which the worst good pixel passes the test
-       //or 0 if its not a corner.
-       int num_consecutive=0;
-       int first_cons=0;
-       int val;
-       int min_good_diff=INT_MAX;
-       
-       //This is an approximation of 
-
-       for(int i=0; i<16; i++)
-       {
-               val = Type::sub(imp[i], c_and_b);
-
-               if(val > 0)
-               {
-                       if(val < min_good_diff)
-                               min_good_diff = val;
-
-                       num_consecutive++;
-                       
-                       if(num_consecutive == num_for_corner)
-                               return min_good_diff;
-               } 
-               else
-               {
-                       if(num_consecutive == i)
-                               first_cons=i;
-
-
-                       num_consecutive=0;
-               }
-       }
-       
-       if(first_cons+num_consecutive >=num_for_corner)
-               return min_good_diff;
-       else 
-               return 0;
-}
-
-
-//For N <=8, features can be positive or negatve OR BOTH!
-template<int Num, bool n_is_lessthan_or_equal_to_8> struct MaxThreshold
-{
-       static int eval(const byte* imp, const int *pointer_dir, int start)
-       {       
-               //Could start at t=0, but this saves 25% of the number of 
is_corner_with_diff calls.
-               //average of 3.01 instead of 4.20 calls
-               int t=start+1;
-               int s;
-
-               //Benchmarking shows that this step is worth the effort:
-               //0.77 versus 0.79 us per feature on a PIII 1GHz.
-               byte data[16];
-               for(int i=0; i < 16; i++)
-                       data[i] = imp[pointer_dir[i]];
-
-               s = is_corner_with_diff<CornerPositive,Num>(data, *imp+t);
-               if(s > 0)
-               {
-                       while(s)
-                       {
-                               t += s;
-                               s = 
is_corner_with_diff<CornerPositive,Num>(data, *imp+t);
-                       }
-                       return t-1;
-               }
-
-               s = is_corner_with_diff<CornerNegative,Num>(data, *imp-t);
-               if(s > 0)
-               {
-                       while(s)
-                       {
-                               t += s;
-                               s = 
is_corner_with_diff<CornerNegative,Num>(data, *imp-t);
-                       }
-                       return t-1;
-               }
-               return t-1;
-       }
-};
-
-
-//For N <=8, features can be positive or negatve OR BOTH!
-template<int Num> struct MaxThreshold<Num, true>
-{
-       static int eval(const byte* imp, const int *pointer_dir, int start)
-       {       
-               int t=start+1;
-               int s;
-
-               byte data[16];
-               for(int i=0; i < 16; i++)
-                       data[i] = imp[pointer_dir[i]];
-               
-
-               //Test brighter corners
-               s = is_corner_with_diff<CornerPositive,Num>(data, *imp+t);
-               while(s)
-               {
-                       t += s;
-                       s = is_corner_with_diff<CornerPositive,Num>(data, 
*imp+t);
-               }
-               
-               //Test darker corners with the new threshold
-               s = is_corner_with_diff<CornerNegative,Num>(data, *imp-t);
-               while(s)
-               {
-                       t += s;
-                       s = is_corner_with_diff<CornerNegative,Num>(data, 
*imp-t);
-               }
-               return t-1;
-       }
-};
-
-template<int Num> void fast_score(const BasicImage<byte> im, const 
vector<ImageRef> corners, vector<int>& ret, int start)
-{
-       int     pointer_dir[16];
-       for(int i=0; i < 16; i++)
-               pointer_dir[i] = fast_pixel_ring[i].x + fast_pixel_ring[i].y * 
im.size().x;
-       
-       ret.resize(corners.size());
-       
-       for(unsigned int i=0; i < corners.size(); i++)
-               ret[i] = MaxThreshold<Num, (Num <=8)>::eval(&im[corners[i]], 
pointer_dir, start);
-}
-
-
-void _fast_score_inst()
-{      
-       vector<ImageRef> c;
-       vector<int> s;
-       Image<byte> i;
-       fast_score<7>(i,c,s,1);
-       fast_score<8>(i,c,s,1);
-       fast_score<9>(i,c,s,1);
-       fast_score<10>(i,c,s,1);
-       fast_score<11>(i,c,s,1);
-       fast_score<12>(i,c,s,1);
-}
 
 int old_style_corner_score(const BasicImage<byte>& im, ImageRef c, const int 
*pointer_dir, int barrier)
 {
@@ -383,4 +95,28 @@
 }
 
 
+void fast_corner_detect_9_nonmax(const BasicImage<byte>& I, 
std::vector<ImageRef>& corners, int barrier)
+{
+       vector<ImageRef> c;
+       vector<int> s;
+       fast_corner_detect_9(I, c, barrier);
+       fast_corner_score_9(I, c, barrier, s);
+       nonmax_suppression(c, s, corners);
+}
+
+void fast_corner_detect_7(const BasicImage<byte>& I, std::vector<ImageRef>& 
corners, int barrier)
+{
+       fast_corner_detect_plain_7(I, corners, barrier);
+}
+
+void fast_corner_detect_8(const BasicImage<byte>& I, std::vector<ImageRef>& 
corners, int barrier)
+{
+       fast_corner_detect_plain_8(I, corners, barrier);
+}
+
+void fast_corner_detect_11(const BasicImage<byte>& I, std::vector<ImageRef>& 
corners, int barrier)
+{
+       fast_corner_detect_plain_11(I, corners, barrier);
+}
+
 }

Index: cvd_src/faster_corner.cxx
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd_src/faster_corner.cxx,v
retrieving revision 1.5.2.1
retrieving revision 1.5.2.2
diff -u -b -r1.5.2.1 -r1.5.2.2
--- cvd_src/faster_corner.cxx   27 Jun 2007 22:37:30 -0000      1.5.2.1
+++ cvd_src/faster_corner.cxx   28 Jun 2007 01:32:56 -0000      1.5.2.2
@@ -9,12 +9,13 @@
 #if (CVD_HAVE_EMMINTRIN && CVD_HAVE_SSE2)
 #include <emmintrin.h>
 
+#include "cvd_src/fast/prototypes.h"
+
 namespace CVD
 {
-
-    #include <cvd_src/corner_9.h>    
-    #include <cvd_src/corner_10.h>    
-    #include <cvd_src/corner_12.h>    
+    #include "cvd_src/corner_9.h"    
+    #include "cvd_src/corner_10.h"    
+    #include "cvd_src/corner_12.h"    
 
     struct Less { template <class T1, class T2> static bool eval(const T1 a, 
const T2 b) { return a < b; }};
     struct Greater { template <class T1, class T2> static bool eval(const T1 
a, const T2 b) { return b < a; }};
@@ -132,7 +133,7 @@
     void fast_corner_detect_12(const BasicImage<byte>& I, 
std::vector<ImageRef>& corners, int barrier)
     {
        if (I.size().x < 22) {
-           fast_corner_detect_12(I,corners,barrier);
+           fast_corner_detect_plain_12(I,corners,barrier);
            return;
        } else if (I.size().x < 22 || I.size().y < 7)
            return;
@@ -300,7 +301,7 @@
     void fast_corner_detect_10(const BasicImage<byte>& I, 
std::vector<ImageRef>& corners, int barrier)
     {
        if (I.size().x < 22) {
-           fast_corner_detect_10(I,corners,barrier);
+           fast_corner_detect_plain_10(I,corners,barrier);
            return;
        } else if (I.size().x < 22 || I.size().y < 7)
            return;
@@ -521,7 +522,7 @@
     void fast_corner_detect_9(const BasicImage<byte>& I, 
std::vector<ImageRef>& corners, int barrier)
     {
        if (I.size().x < 22) {
-           fast_corner_detect_9(I,corners,barrier);
+           fast_corner_detect_plain_9(I,corners,barrier);
            return;
        } else if (I.size().x < 22 || I.size().y < 7)
            return;

Index: cvd_src/slower_corner.cxx
===================================================================
RCS file: cvd_src/slower_corner.cxx
diff -N cvd_src/slower_corner.cxx
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ cvd_src/slower_corner.cxx   28 Jun 2007 01:32:57 -0000      1.1.2.1
@@ -0,0 +1,28 @@
+#include <cvd/fast_corner.h>
+
+using namespace std;
+
+namespace CVD
+{
+
+
+
+       void fast_corner_detect_plain_9(const SubImage<byte>& i, 
vector<ImageRef>& corners, int b);
+    void fast_corner_detect_plain_10(const SubImage<byte>& i, 
vector<ImageRef>& corners, int b);
+    void fast_corner_detect_plain_12(const SubImage<byte>& i, 
vector<ImageRef>& corners, int b);
+
+       void fast_corner_detect_9(const SubImage<byte>& i, vector<ImageRef>& 
corners, int b)
+       {
+               fast_corner_detect_plain_9(i, corners, b);
+       }
+
+       void fast_corner_detect_10(const SubImage<byte>& i, vector<ImageRef>& 
corners, int b)
+       {
+               fast_corner_detect_plain_9(i, corners, b);
+       }
+
+       void fast_corner_detect_2(const SubImage<byte>& i, vector<ImageRef>& 
corners, int b)
+       {
+               fast_corner_detect_plain_9(i, corners, b);
+       }
+}

Index: cvd_src/fast/fast_10_detect.cxx
===================================================================
RCS file: cvd_src/fast/fast_10_detect.cxx
diff -N cvd_src/fast/fast_10_detect.cxx
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ cvd_src/fast/fast_10_detect.cxx     28 Jun 2007 01:32:58 -0000      1.1.2.1
@@ -0,0 +1,3165 @@
+#include <vector>
+#include <cvd/image.h>
+#include <cvd/byte.h>
+
+// This is mechanically generated code. 
+
+using namespace std;
+namespace CVD
+{
+void fast_corner_detect_plain_10(const SubImage<byte>& i, vector<ImageRef>& 
corners, int b)
+{
+       int y, cb, c_b;
+       const byte  *line_max, *line_min;
+       const byte* cache_0;
+
+       int pixel[16] = {
+               0 + i.row_stride() * 3,
+               1 + i.row_stride() * 3,
+               2 + i.row_stride() * 2,
+               3 + i.row_stride() * 1,
+               3 + i.row_stride() * 0,
+               3 + i.row_stride() * -1,
+               2 + i.row_stride() * -2,
+               1 + i.row_stride() * -3,
+               0 + i.row_stride() * -3,
+               -1 + i.row_stride() * -3,
+               -2 + i.row_stride() * -2,
+               -3 + i.row_stride() * -1,
+               -3 + i.row_stride() * 0,
+               -3 + i.row_stride() * 1,
+               -2 + i.row_stride() * 2,
+               -1 + i.row_stride() * 3,
+       };
+
+       for(y = 3 ; y < i.size().y - 3; y++)
+       {
+               cache_0 = &i[y][3];
+               line_min = cache_0 - 3;
+               line_max = &i[y][i.size().x - 3];
+
+
+               for(; cache_0 < line_max;cache_0++)
+               {
+                       cb = *cache_0 + b;
+                       c_b= *cache_0 - b;
+  
+                       if(*(cache_0 + pixel[0]) > cb)
+                        if(*(cache_0 + pixel[8]) > cb)
+                         if(*(cache_0 + pixel[3]) > cb)
+                          if(*(cache_0 + pixel[5]) > cb)
+                           if(*(cache_0 + pixel[2]) > cb)
+                            if(*(cache_0 + pixel[6]) > cb)
+                             if(*(cache_0 + 3) > cb)
+                              if(*(cache_0 + pixel[7]) > cb)
+                               if(*(cache_0 + pixel[1]) > cb)
+                                if(*(cache_0 + pixel[9]) > cb)
+                                 goto success;
+                                else
+                                 if(*(cache_0 + pixel[15]) > cb)
+                                  goto success;
+                                 else
+                                  continue;
+                               else if(*(cache_0 + pixel[1]) < c_b)
+                                if(*(cache_0 + pixel[9]) > cb)
+                                 if(*(cache_0 + pixel[10]) > cb)
+                                  if(*(cache_0 + pixel[11]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                if(*(cache_0 + pixel[11]) > cb)
+                                 if(*(cache_0 + pixel[10]) > cb)
+                                  if(*(cache_0 + pixel[9]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else if(*(cache_0 + pixel[7]) < c_b)
+                               if(*(cache_0 + pixel[1]) > cb)
+                                if(*(cache_0 + pixel[13]) > cb)
+                                 if(*(cache_0 + pixel[14]) > cb)
+                                  if(*(cache_0 + pixel[15]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               if(*(cache_0 + pixel[13]) > cb)
+                                if(*(cache_0 + pixel[14]) > cb)
+                                 if(*(cache_0 + pixel[15]) > cb)
+                                  if(*(cache_0 + pixel[1]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else if(*(cache_0 + 3) < c_b)
+                              if(*(cache_0 + pixel[10]) > cb)
+                               if(*(cache_0 + pixel[11]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + pixel[1]) > cb)
+                                    if(*(cache_0 + pixel[15]) > cb)
+                                     goto success;
+                                    else
+                                     if(*(cache_0 + pixel[7]) > cb)
+                                      if(*(cache_0 + pixel[9]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                   else
+                                    if(*(cache_0 + pixel[7]) > cb)
+                                     if(*(cache_0 + pixel[9]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              if(*(cache_0 + -3) > cb)
+                               if(*(cache_0 + pixel[14]) > cb)
+                                if(*(cache_0 + pixel[10]) > cb)
+                                 if(*(cache_0 + pixel[11]) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + pixel[1]) > cb)
+                                    if(*(cache_0 + pixel[7]) > cb)
+                                     if(*(cache_0 + pixel[9]) > cb)
+                                      goto success;
+                                     else
+                                      if(*(cache_0 + pixel[15]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                    else
+                                     if(*(cache_0 + pixel[15]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                   else if(*(cache_0 + pixel[1]) < c_b)
+                                    if(*(cache_0 + pixel[7]) > cb)
+                                     if(*(cache_0 + pixel[9]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    if(*(cache_0 + pixel[9]) > cb)
+                                     if(*(cache_0 + pixel[7]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else if(*(cache_0 + pixel[6]) < c_b)
+                             if(*(cache_0 + -3) > cb)
+                              if(*(cache_0 + pixel[13]) > cb)
+                               if(*(cache_0 + pixel[14]) > cb)
+                                if(*(cache_0 + pixel[15]) > cb)
+                                 if(*(cache_0 + pixel[1]) > cb)
+                                  if(*(cache_0 + 3) > cb)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[10]) > cb)
+                                    if(*(cache_0 + pixel[11]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  if(*(cache_0 + pixel[7]) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    if(*(cache_0 + pixel[10]) > cb)
+                                     if(*(cache_0 + pixel[11]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             if(*(cache_0 + -3) > cb)
+                              if(*(cache_0 + pixel[14]) > cb)
+                               if(*(cache_0 + pixel[15]) > cb)
+                                if(*(cache_0 + pixel[13]) > cb)
+                                 if(*(cache_0 + pixel[1]) > cb)
+                                  if(*(cache_0 + 3) > cb)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[10]) > cb)
+                                    if(*(cache_0 + pixel[11]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else if(*(cache_0 + pixel[1]) < c_b)
+                                  if(*(cache_0 + pixel[7]) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    if(*(cache_0 + pixel[10]) > cb)
+                                     if(*(cache_0 + pixel[11]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  if(*(cache_0 + pixel[7]) > cb)
+                                   if(*(cache_0 + pixel[10]) > cb)
+                                    if(*(cache_0 + pixel[11]) > cb)
+                                     if(*(cache_0 + pixel[9]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                           else if(*(cache_0 + pixel[2]) < c_b)
+                            if(*(cache_0 + -3) > cb)
+                             if(*(cache_0 + pixel[9]) > cb)
+                              if(*(cache_0 + pixel[10]) > cb)
+                               if(*(cache_0 + pixel[11]) > cb)
+                                if(*(cache_0 + pixel[7]) > cb)
+                                 if(*(cache_0 + pixel[6]) > cb)
+                                  if(*(cache_0 + 3) > cb)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    if(*(cache_0 + pixel[14]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    if(*(cache_0 + pixel[15]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 if(*(cache_0 + pixel[1]) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    if(*(cache_0 + pixel[15]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            if(*(cache_0 + pixel[11]) > cb)
+                             if(*(cache_0 + pixel[10]) > cb)
+                              if(*(cache_0 + -3) > cb)
+                               if(*(cache_0 + pixel[9]) > cb)
+                                if(*(cache_0 + pixel[7]) > cb)
+                                 if(*(cache_0 + pixel[6]) > cb)
+                                  if(*(cache_0 + 3) > cb)
+                                   goto success;
+                                  else if(*(cache_0 + 3) < c_b)
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    if(*(cache_0 + pixel[14]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    if(*(cache_0 + pixel[13]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else if(*(cache_0 + pixel[6]) < c_b)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    if(*(cache_0 + pixel[15]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    if(*(cache_0 + pixel[15]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else if(*(cache_0 + pixel[7]) < c_b)
+                                 if(*(cache_0 + pixel[1]) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    if(*(cache_0 + pixel[15]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 if(*(cache_0 + pixel[14]) > cb)
+                                  if(*(cache_0 + pixel[1]) > cb)
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    if(*(cache_0 + pixel[15]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                          else if(*(cache_0 + pixel[5]) < c_b)
+                           if(*(cache_0 + pixel[13]) > cb)
+                            if(*(cache_0 + pixel[11]) > cb)
+                             if(*(cache_0 + -3) > cb)
+                              if(*(cache_0 + pixel[14]) > cb)
+                               if(*(cache_0 + pixel[15]) > cb)
+                                if(*(cache_0 + pixel[10]) > cb)
+                                 if(*(cache_0 + pixel[9]) > cb)
+                                  if(*(cache_0 + pixel[1]) > cb)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[7]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                 else
+                                  if(*(cache_0 + pixel[1]) > cb)
+                                   if(*(cache_0 + pixel[2]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 if(*(cache_0 + pixel[1]) > cb)
+                                  if(*(cache_0 + pixel[2]) > cb)
+                                   if(*(cache_0 + 3) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           if(*(cache_0 + -3) > cb)
+                            if(*(cache_0 + pixel[14]) > cb)
+                             if(*(cache_0 + pixel[11]) > cb)
+                              if(*(cache_0 + pixel[15]) > cb)
+                               if(*(cache_0 + pixel[10]) > cb)
+                                if(*(cache_0 + pixel[13]) > cb)
+                                 if(*(cache_0 + pixel[1]) > cb)
+                                  if(*(cache_0 + pixel[2]) > cb)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                 else
+                                  if(*(cache_0 + pixel[7]) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                               else if(*(cache_0 + pixel[10]) < c_b)
+                                if(*(cache_0 + pixel[1]) > cb)
+                                 if(*(cache_0 + pixel[2]) > cb)
+                                  if(*(cache_0 + 3) > cb)
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                if(*(cache_0 + 3) > cb)
+                                 if(*(cache_0 + pixel[2]) > cb)
+                                  if(*(cache_0 + pixel[1]) > cb)
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                         else if(*(cache_0 + pixel[3]) < c_b)
+                          if(*(cache_0 + -3) > cb)
+                           if(*(cache_0 + pixel[10]) > cb)
+                            if(*(cache_0 + pixel[13]) > cb)
+                             if(*(cache_0 + pixel[9]) > cb)
+                              if(*(cache_0 + pixel[11]) > cb)
+                               if(*(cache_0 + pixel[14]) > cb)
+                                if(*(cache_0 + pixel[15]) > cb)
+                                 if(*(cache_0 + pixel[7]) > cb)
+                                  goto success;
+                                 else
+                                  if(*(cache_0 + pixel[1]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                else
+                                 if(*(cache_0 + pixel[5]) > cb)
+                                  if(*(cache_0 + pixel[6]) > cb)
+                                   if(*(cache_0 + pixel[7]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                if(*(cache_0 + 3) > cb)
+                                 if(*(cache_0 + pixel[5]) > cb)
+                                  if(*(cache_0 + pixel[6]) > cb)
+                                   if(*(cache_0 + pixel[7]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           continue;
+                         else
+                          if(*(cache_0 + -3) > cb)
+                           if(*(cache_0 + pixel[10]) > cb)
+                            if(*(cache_0 + pixel[14]) > cb)
+                             if(*(cache_0 + pixel[11]) > cb)
+                              if(*(cache_0 + pixel[13]) > cb)
+                               if(*(cache_0 + pixel[9]) > cb)
+                                if(*(cache_0 + pixel[7]) > cb)
+                                 if(*(cache_0 + pixel[15]) > cb)
+                                  goto success;
+                                 else
+                                  if(*(cache_0 + pixel[5]) > cb)
+                                   if(*(cache_0 + pixel[6]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 if(*(cache_0 + pixel[1]) > cb)
+                                  if(*(cache_0 + pixel[15]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else if(*(cache_0 + pixel[14]) < c_b)
+                             if(*(cache_0 + 3) > cb)
+                              if(*(cache_0 + pixel[5]) > cb)
+                               if(*(cache_0 + pixel[6]) > cb)
+                                if(*(cache_0 + pixel[7]) > cb)
+                                 if(*(cache_0 + pixel[9]) > cb)
+                                  if(*(cache_0 + pixel[11]) > cb)
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             if(*(cache_0 + 3) > cb)
+                              if(*(cache_0 + pixel[13]) > cb)
+                               if(*(cache_0 + pixel[6]) > cb)
+                                if(*(cache_0 + pixel[11]) > cb)
+                                 if(*(cache_0 + pixel[7]) > cb)
+                                  if(*(cache_0 + pixel[5]) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                           else
+                            continue;
+                          else
+                           continue;
+                        else if(*(cache_0 + pixel[8]) < c_b)
+                         if(*(cache_0 + pixel[11]) > cb)
+                          if(*(cache_0 + pixel[2]) > cb)
+                           if(*(cache_0 + pixel[15]) > cb)
+                            if(*(cache_0 + pixel[1]) > cb)
+                             if(*(cache_0 + pixel[14]) > cb)
+                              if(*(cache_0 + pixel[13]) > cb)
+                               if(*(cache_0 + pixel[3]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + 3) > cb)
+                                  goto success;
+                                 else
+                                  if(*(cache_0 + pixel[10]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                else
+                                 if(*(cache_0 + 3) > cb)
+                                  if(*(cache_0 + pixel[5]) > cb)
+                                   if(*(cache_0 + pixel[6]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                if(*(cache_0 + pixel[9]) > cb)
+                                 if(*(cache_0 + pixel[10]) > cb)
+                                  if(*(cache_0 + -3) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               if(*(cache_0 + pixel[3]) > cb)
+                                if(*(cache_0 + 3) > cb)
+                                 if(*(cache_0 + pixel[5]) > cb)
+                                  if(*(cache_0 + pixel[6]) > cb)
+                                   if(*(cache_0 + pixel[7]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else if(*(cache_0 + pixel[2]) < c_b)
+                           if(*(cache_0 + pixel[1]) < c_b)
+                            if(*(cache_0 + pixel[3]) < c_b)
+                             if(*(cache_0 + 3) < c_b)
+                              if(*(cache_0 + pixel[5]) < c_b)
+                               if(*(cache_0 + pixel[6]) < c_b)
+                                if(*(cache_0 + pixel[7]) < c_b)
+                                 if(*(cache_0 + pixel[9]) < c_b)
+                                  if(*(cache_0 + pixel[10]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           continue;
+                         else if(*(cache_0 + pixel[11]) < c_b)
+                          if(*(cache_0 + pixel[6]) > cb)
+                           if(*(cache_0 + pixel[14]) > cb)
+                            if(*(cache_0 + pixel[3]) > cb)
+                             if(*(cache_0 + pixel[1]) > cb)
+                              if(*(cache_0 + pixel[2]) > cb)
+                               if(*(cache_0 + 3) > cb)
+                                if(*(cache_0 + pixel[5]) > cb)
+                                 if(*(cache_0 + pixel[15]) > cb)
+                                  if(*(cache_0 + pixel[7]) > cb)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else if(*(cache_0 + pixel[6]) < c_b)
+                           if(*(cache_0 + pixel[10]) > cb)
+                            if(*(cache_0 + pixel[1]) > cb)
+                             if(*(cache_0 + pixel[2]) > cb)
+                              if(*(cache_0 + pixel[3]) > cb)
+                               if(*(cache_0 + 3) > cb)
+                                if(*(cache_0 + pixel[5]) > cb)
+                                 if(*(cache_0 + -3) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    if(*(cache_0 + pixel[15]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else if(*(cache_0 + pixel[10]) < c_b)
+                            if(*(cache_0 + pixel[5]) > cb)
+                             if(*(cache_0 + pixel[7]) > cb)
+                              if(*(cache_0 + pixel[1]) > cb)
+                               if(*(cache_0 + pixel[2]) > cb)
+                                if(*(cache_0 + pixel[3]) > cb)
+                                 if(*(cache_0 + 3) > cb)
+                                  if(*(cache_0 + -3) > cb)
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    if(*(cache_0 + pixel[14]) > cb)
+                                     if(*(cache_0 + pixel[15]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else if(*(cache_0 + pixel[7]) < c_b)
+                              if(*(cache_0 + pixel[14]) > cb)
+                               if(*(cache_0 + -3) > cb)
+                                if(*(cache_0 + pixel[1]) > cb)
+                                 if(*(cache_0 + pixel[2]) > cb)
+                                  if(*(cache_0 + pixel[3]) > cb)
+                                   if(*(cache_0 + 3) > cb)
+                                    if(*(cache_0 + pixel[13]) > cb)
+                                     if(*(cache_0 + pixel[15]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else if(*(cache_0 + pixel[14]) < c_b)
+                               if(*(cache_0 + pixel[9]) < c_b)
+                                if(*(cache_0 + -3) < c_b)
+                                 if(*(cache_0 + pixel[13]) < c_b)
+                                  if(*(cache_0 + pixel[15]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              if(*(cache_0 + -3) > cb)
+                               if(*(cache_0 + pixel[1]) > cb)
+                                if(*(cache_0 + pixel[2]) > cb)
+                                 if(*(cache_0 + pixel[3]) > cb)
+                                  if(*(cache_0 + 3) > cb)
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    if(*(cache_0 + pixel[14]) > cb)
+                                     if(*(cache_0 + pixel[15]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else if(*(cache_0 + pixel[5]) < c_b)
+                             if(*(cache_0 + -3) > cb)
+                              if(*(cache_0 + pixel[2]) < c_b)
+                               if(*(cache_0 + pixel[3]) < c_b)
+                                if(*(cache_0 + 3) < c_b)
+                                 if(*(cache_0 + pixel[7]) < c_b)
+                                  if(*(cache_0 + pixel[9]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else if(*(cache_0 + -3) < c_b)
+                              if(*(cache_0 + pixel[9]) < c_b)
+                               if(*(cache_0 + 3) > cb)
+                                if(*(cache_0 + pixel[7]) < c_b)
+                                 if(*(cache_0 + pixel[13]) < c_b)
+                                  if(*(cache_0 + pixel[14]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else if(*(cache_0 + 3) < c_b)
+                                if(*(cache_0 + pixel[7]) < c_b)
+                                 if(*(cache_0 + pixel[13]) < c_b)
+                                  goto success;
+                                 else
+                                  if(*(cache_0 + pixel[3]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                               else
+                                if(*(cache_0 + pixel[14]) < c_b)
+                                 if(*(cache_0 + pixel[13]) < c_b)
+                                  if(*(cache_0 + pixel[7]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               continue;
+                             else
+                              if(*(cache_0 + pixel[2]) < c_b)
+                               if(*(cache_0 + pixel[7]) < c_b)
+                                if(*(cache_0 + pixel[3]) < c_b)
+                                 if(*(cache_0 + pixel[9]) < c_b)
+                                  if(*(cache_0 + 3) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else
+                             if(*(cache_0 + pixel[15]) < c_b)
+                              if(*(cache_0 + pixel[14]) < c_b)
+                               if(*(cache_0 + pixel[7]) < c_b)
+                                if(*(cache_0 + pixel[9]) < c_b)
+                                 if(*(cache_0 + -3) < c_b)
+                                  if(*(cache_0 + pixel[13]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                           else
+                            if(*(cache_0 + -3) > cb)
+                             if(*(cache_0 + pixel[1]) > cb)
+                              if(*(cache_0 + pixel[2]) > cb)
+                               if(*(cache_0 + pixel[3]) > cb)
+                                if(*(cache_0 + 3) > cb)
+                                 if(*(cache_0 + pixel[5]) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    if(*(cache_0 + pixel[15]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                          else
+                           if(*(cache_0 + -3) > cb)
+                            if(*(cache_0 + pixel[3]) > cb)
+                             if(*(cache_0 + pixel[1]) > cb)
+                              if(*(cache_0 + pixel[2]) > cb)
+                               if(*(cache_0 + 3) > cb)
+                                if(*(cache_0 + pixel[5]) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + pixel[15]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                         else
+                          if(*(cache_0 + pixel[3]) > cb)
+                           if(*(cache_0 + pixel[5]) > cb)
+                            if(*(cache_0 + pixel[14]) > cb)
+                             if(*(cache_0 + pixel[15]) > cb)
+                              if(*(cache_0 + pixel[13]) > cb)
+                               if(*(cache_0 + pixel[1]) > cb)
+                                if(*(cache_0 + pixel[2]) > cb)
+                                 if(*(cache_0 + 3) > cb)
+                                  if(*(cache_0 + pixel[6]) > cb)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + -3) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else if(*(cache_0 + pixel[13]) < c_b)
+                               if(*(cache_0 + pixel[6]) > cb)
+                                if(*(cache_0 + pixel[1]) > cb)
+                                 if(*(cache_0 + pixel[2]) > cb)
+                                  if(*(cache_0 + 3) > cb)
+                                   if(*(cache_0 + pixel[7]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               if(*(cache_0 + pixel[7]) > cb)
+                                if(*(cache_0 + pixel[1]) > cb)
+                                 if(*(cache_0 + pixel[2]) > cb)
+                                  if(*(cache_0 + 3) > cb)
+                                   if(*(cache_0 + pixel[6]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else if(*(cache_0 + pixel[3]) < c_b)
+                           if(*(cache_0 + pixel[1]) < c_b)
+                            if(*(cache_0 + pixel[10]) < c_b)
+                             if(*(cache_0 + pixel[2]) < c_b)
+                              if(*(cache_0 + 3) < c_b)
+                               if(*(cache_0 + pixel[5]) < c_b)
+                                if(*(cache_0 + pixel[6]) < c_b)
+                                 if(*(cache_0 + pixel[7]) < c_b)
+                                  if(*(cache_0 + pixel[9]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           continue;
+                        else
+                         if(*(cache_0 + pixel[3]) > cb)
+                          if(*(cache_0 + pixel[14]) > cb)
+                           if(*(cache_0 + -3) > cb)
+                            if(*(cache_0 + pixel[2]) > cb)
+                             if(*(cache_0 + 3) > cb)
+                              if(*(cache_0 + pixel[15]) > cb)
+                               if(*(cache_0 + pixel[1]) > cb)
+                                if(*(cache_0 + pixel[13]) > cb)
+                                 if(*(cache_0 + pixel[11]) > cb)
+                                  goto success;
+                                 else
+                                  if(*(cache_0 + pixel[5]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                else if(*(cache_0 + pixel[13]) < c_b)
+                                 if(*(cache_0 + pixel[5]) > cb)
+                                  if(*(cache_0 + pixel[6]) > cb)
+                                   if(*(cache_0 + pixel[7]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 if(*(cache_0 + pixel[7]) > cb)
+                                  if(*(cache_0 + pixel[5]) > cb)
+                                   if(*(cache_0 + pixel[6]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else if(*(cache_0 + 3) < c_b)
+                              if(*(cache_0 + pixel[1]) > cb)
+                               if(*(cache_0 + pixel[10]) > cb)
+                                if(*(cache_0 + pixel[11]) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[15]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              if(*(cache_0 + pixel[10]) > cb)
+                               if(*(cache_0 + pixel[13]) > cb)
+                                if(*(cache_0 + pixel[11]) > cb)
+                                 if(*(cache_0 + pixel[15]) > cb)
+                                  if(*(cache_0 + pixel[1]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else
+                             continue;
+                           else if(*(cache_0 + -3) < c_b)
+                            if(*(cache_0 + pixel[6]) > cb)
+                             if(*(cache_0 + pixel[1]) > cb)
+                              if(*(cache_0 + pixel[2]) > cb)
+                               if(*(cache_0 + 3) > cb)
+                                if(*(cache_0 + pixel[5]) > cb)
+                                 if(*(cache_0 + pixel[15]) > cb)
+                                  if(*(cache_0 + pixel[7]) > cb)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            if(*(cache_0 + pixel[6]) > cb)
+                             if(*(cache_0 + pixel[2]) > cb)
+                              if(*(cache_0 + pixel[5]) > cb)
+                               if(*(cache_0 + pixel[13]) > cb)
+                                if(*(cache_0 + pixel[15]) > cb)
+                                 if(*(cache_0 + 3) > cb)
+                                  if(*(cache_0 + pixel[1]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else if(*(cache_0 + pixel[13]) < c_b)
+                                if(*(cache_0 + pixel[1]) > cb)
+                                 if(*(cache_0 + 3) > cb)
+                                  if(*(cache_0 + pixel[7]) > cb)
+                                   if(*(cache_0 + pixel[15]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                if(*(cache_0 + pixel[7]) > cb)
+                                 if(*(cache_0 + pixel[15]) > cb)
+                                  if(*(cache_0 + 3) > cb)
+                                   if(*(cache_0 + pixel[1]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                          else
+                           continue;
+                         else if(*(cache_0 + pixel[3]) < c_b)
+                          if(*(cache_0 + pixel[2]) > cb)
+                           if(*(cache_0 + pixel[9]) > cb)
+                            if(*(cache_0 + pixel[1]) > cb)
+                             if(*(cache_0 + pixel[10]) > cb)
+                              if(*(cache_0 + pixel[11]) > cb)
+                               if(*(cache_0 + -3) > cb)
+                                if(*(cache_0 + pixel[13]) > cb)
+                                 if(*(cache_0 + pixel[14]) > cb)
+                                  if(*(cache_0 + pixel[15]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           continue;
+                         else
+                          if(*(cache_0 + pixel[9]) > cb)
+                           if(*(cache_0 + pixel[2]) > cb)
+                            if(*(cache_0 + -3) > cb)
+                             if(*(cache_0 + pixel[14]) > cb)
+                              if(*(cache_0 + pixel[11]) > cb)
+                               if(*(cache_0 + pixel[13]) > cb)
+                                if(*(cache_0 + pixel[15]) > cb)
+                                 if(*(cache_0 + pixel[10]) > cb)
+                                  if(*(cache_0 + pixel[1]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           continue;
+                       else if(*(cache_0 + pixel[0]) < c_b)
+                        if(*(cache_0 + pixel[8]) > cb)
+                         if(*(cache_0 + pixel[2]) > cb)
+                          if(*(cache_0 + pixel[10]) > cb)
+                           if(*(cache_0 + pixel[6]) > cb)
+                            if(*(cache_0 + pixel[7]) > cb)
+                             if(*(cache_0 + pixel[9]) > cb)
+                              if(*(cache_0 + pixel[5]) > cb)
+                               if(*(cache_0 + pixel[11]) > cb)
+                                if(*(cache_0 + 3) > cb)
+                                 if(*(cache_0 + pixel[3]) > cb)
+                                  goto success;
+                                 else
+                                  if(*(cache_0 + -3) > cb)
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 if(*(cache_0 + -3) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                if(*(cache_0 + pixel[1]) > cb)
+                                 if(*(cache_0 + pixel[3]) > cb)
+                                  if(*(cache_0 + 3) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else if(*(cache_0 + pixel[5]) < c_b)
+                               if(*(cache_0 + pixel[11]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + pixel[15]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               if(*(cache_0 + pixel[13]) > cb)
+                                if(*(cache_0 + pixel[11]) > cb)
+                                 if(*(cache_0 + -3) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + pixel[15]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           continue;
+                         else if(*(cache_0 + pixel[2]) < c_b)
+                          if(*(cache_0 + pixel[13]) > cb)
+                           if(*(cache_0 + pixel[6]) > cb)
+                            if(*(cache_0 + pixel[11]) > cb)
+                             if(*(cache_0 + pixel[9]) > cb)
+                              if(*(cache_0 + pixel[7]) > cb)
+                               if(*(cache_0 + pixel[10]) > cb)
+                                if(*(cache_0 + pixel[5]) > cb)
+                                 if(*(cache_0 + -3) > cb)
+                                  if(*(cache_0 + 3) > cb)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 if(*(cache_0 + pixel[15]) > cb)
+                                  if(*(cache_0 + -3) > cb)
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else if(*(cache_0 + pixel[6]) < c_b)
+                            if(*(cache_0 + pixel[7]) < c_b)
+                             if(*(cache_0 + pixel[1]) < c_b)
+                              if(*(cache_0 + pixel[3]) < c_b)
+                               if(*(cache_0 + 3) < c_b)
+                                if(*(cache_0 + pixel[5]) < c_b)
+                                 if(*(cache_0 + pixel[14]) < c_b)
+                                  if(*(cache_0 + pixel[15]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else if(*(cache_0 + pixel[13]) < c_b)
+                           if(*(cache_0 + pixel[3]) > cb)
+                            if(*(cache_0 + pixel[10]) > cb)
+                             if(*(cache_0 + pixel[7]) > cb)
+                              if(*(cache_0 + 3) > cb)
+                               if(*(cache_0 + pixel[5]) > cb)
+                                if(*(cache_0 + pixel[6]) > cb)
+                                 if(*(cache_0 + pixel[9]) > cb)
+                                  if(*(cache_0 + pixel[11]) > cb)
+                                   if(*(cache_0 + -3) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else if(*(cache_0 + pixel[10]) < c_b)
+                             if(*(cache_0 + pixel[9]) < c_b)
+                              if(*(cache_0 + pixel[1]) < c_b)
+                               if(*(cache_0 + pixel[11]) < c_b)
+                                if(*(cache_0 + -3) < c_b)
+                                 if(*(cache_0 + pixel[14]) < c_b)
+                                  if(*(cache_0 + pixel[15]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else if(*(cache_0 + pixel[3]) < c_b)
+                            if(*(cache_0 + pixel[15]) < c_b)
+                             if(*(cache_0 + pixel[1]) < c_b)
+                              if(*(cache_0 + pixel[5]) > cb)
+                               if(*(cache_0 + pixel[10]) < c_b)
+                                if(*(cache_0 + pixel[14]) < c_b)
+                                 if(*(cache_0 + pixel[11]) < c_b)
+                                  if(*(cache_0 + -3) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                if(*(cache_0 + 3) < c_b)
+                                 if(*(cache_0 + pixel[11]) < c_b)
+                                  if(*(cache_0 + -3) < c_b)
+                                   if(*(cache_0 + pixel[14]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else if(*(cache_0 + pixel[5]) < c_b)
+                               if(*(cache_0 + 3) < c_b)
+                                if(*(cache_0 + pixel[6]) < c_b)
+                                 if(*(cache_0 + pixel[14]) < c_b)
+                                  goto success;
+                                 else
+                                  continue;
+                                else
+                                 if(*(cache_0 + -3) < c_b)
+                                  if(*(cache_0 + pixel[14]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                if(*(cache_0 + pixel[10]) < c_b)
+                                 if(*(cache_0 + pixel[11]) < c_b)
+                                  if(*(cache_0 + -3) < c_b)
+                                   if(*(cache_0 + pixel[14]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               if(*(cache_0 + pixel[11]) < c_b)
+                                if(*(cache_0 + pixel[10]) > cb)
+                                 if(*(cache_0 + 3) < c_b)
+                                  if(*(cache_0 + -3) < c_b)
+                                   if(*(cache_0 + pixel[14]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else if(*(cache_0 + pixel[10]) < c_b)
+                                 if(*(cache_0 + pixel[14]) < c_b)
+                                  if(*(cache_0 + -3) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 if(*(cache_0 + 3) < c_b)
+                                  if(*(cache_0 + pixel[14]) < c_b)
+                                   if(*(cache_0 + -3) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            if(*(cache_0 + pixel[9]) < c_b)
+                             if(*(cache_0 + pixel[11]) < c_b)
+                              if(*(cache_0 + pixel[1]) < c_b)
+                               if(*(cache_0 + pixel[10]) < c_b)
+                                if(*(cache_0 + -3) < c_b)
+                                 if(*(cache_0 + pixel[14]) < c_b)
+                                  if(*(cache_0 + pixel[15]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                          else
+                           if(*(cache_0 + pixel[7]) > cb)
+                            if(*(cache_0 + pixel[3]) > cb)
+                             if(*(cache_0 + pixel[10]) > cb)
+                              if(*(cache_0 + 3) > cb)
+                               if(*(cache_0 + pixel[5]) > cb)
+                                if(*(cache_0 + pixel[6]) > cb)
+                                 if(*(cache_0 + pixel[9]) > cb)
+                                  if(*(cache_0 + pixel[11]) > cb)
+                                   if(*(cache_0 + -3) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else if(*(cache_0 + pixel[7]) < c_b)
+                            if(*(cache_0 + pixel[1]) < c_b)
+                             if(*(cache_0 + pixel[3]) < c_b)
+                              if(*(cache_0 + 3) < c_b)
+                               if(*(cache_0 + pixel[5]) < c_b)
+                                if(*(cache_0 + pixel[6]) < c_b)
+                                 if(*(cache_0 + pixel[14]) < c_b)
+                                  if(*(cache_0 + pixel[15]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                         else
+                          if(*(cache_0 + -3) > cb)
+                           if(*(cache_0 + pixel[6]) > cb)
+                            if(*(cache_0 + pixel[11]) > cb)
+                             if(*(cache_0 + pixel[9]) > cb)
+                              if(*(cache_0 + pixel[10]) > cb)
+                               if(*(cache_0 + pixel[13]) > cb)
+                                if(*(cache_0 + pixel[7]) > cb)
+                                 if(*(cache_0 + pixel[5]) > cb)
+                                  if(*(cache_0 + 3) > cb)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                 else
+                                  if(*(cache_0 + pixel[15]) > cb)
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                               else
+                                if(*(cache_0 + pixel[3]) > cb)
+                                 if(*(cache_0 + 3) > cb)
+                                  if(*(cache_0 + pixel[5]) > cb)
+                                   if(*(cache_0 + pixel[7]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           continue;
+                        else if(*(cache_0 + pixel[8]) < c_b)
+                         if(*(cache_0 + 3) > cb)
+                          if(*(cache_0 + -3) < c_b)
+                           if(*(cache_0 + pixel[10]) < c_b)
+                            if(*(cache_0 + pixel[14]) < c_b)
+                             if(*(cache_0 + pixel[15]) < c_b)
+                              if(*(cache_0 + pixel[13]) < c_b)
+                               if(*(cache_0 + pixel[1]) < c_b)
+                                if(*(cache_0 + pixel[11]) < c_b)
+                                 if(*(cache_0 + pixel[9]) > cb)
+                                  if(*(cache_0 + pixel[2]) < c_b)
+                                   if(*(cache_0 + pixel[3]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else if(*(cache_0 + pixel[9]) < c_b)
+                                  goto success;
+                                 else
+                                  if(*(cache_0 + pixel[3]) < c_b)
+                                   if(*(cache_0 + pixel[2]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                               else
+                                if(*(cache_0 + pixel[7]) < c_b)
+                                 if(*(cache_0 + pixel[9]) < c_b)
+                                  if(*(cache_0 + pixel[11]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               continue;
+                             else
+                              if(*(cache_0 + pixel[5]) < c_b)
+                               if(*(cache_0 + pixel[6]) < c_b)
+                                if(*(cache_0 + pixel[7]) < c_b)
+                                 if(*(cache_0 + pixel[9]) < c_b)
+                                  if(*(cache_0 + pixel[11]) < c_b)
+                                   if(*(cache_0 + pixel[13]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           continue;
+                         else if(*(cache_0 + 3) < c_b)
+                          if(*(cache_0 + pixel[2]) > cb)
+                           if(*(cache_0 + pixel[10]) < c_b)
+                            if(*(cache_0 + -3) < c_b)
+                             if(*(cache_0 + pixel[11]) < c_b)
+                              if(*(cache_0 + pixel[9]) < c_b)
+                               if(*(cache_0 + pixel[13]) < c_b)
+                                if(*(cache_0 + pixel[14]) < c_b)
+                                 if(*(cache_0 + pixel[7]) < c_b)
+                                  if(*(cache_0 + pixel[15]) > cb)
+                                   if(*(cache_0 + pixel[5]) < c_b)
+                                    if(*(cache_0 + pixel[6]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else if(*(cache_0 + pixel[15]) < c_b)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[6]) < c_b)
+                                    if(*(cache_0 + pixel[5]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  if(*(cache_0 + pixel[1]) < c_b)
+                                   if(*(cache_0 + pixel[15]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 if(*(cache_0 + pixel[5]) < c_b)
+                                  if(*(cache_0 + pixel[6]) < c_b)
+                                   if(*(cache_0 + pixel[7]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                if(*(cache_0 + pixel[3]) < c_b)
+                                 if(*(cache_0 + pixel[5]) < c_b)
+                                  if(*(cache_0 + pixel[6]) < c_b)
+                                   if(*(cache_0 + pixel[7]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else if(*(cache_0 + pixel[2]) < c_b)
+                           if(*(cache_0 + pixel[6]) > cb)
+                            if(*(cache_0 + pixel[13]) < c_b)
+                             if(*(cache_0 + pixel[14]) < c_b)
+                              if(*(cache_0 + pixel[15]) < c_b)
+                               if(*(cache_0 + -3) < c_b)
+                                if(*(cache_0 + pixel[1]) < c_b)
+                                 if(*(cache_0 + pixel[3]) < c_b)
+                                  if(*(cache_0 + pixel[11]) < c_b)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[5]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                 else
+                                  if(*(cache_0 + pixel[9]) < c_b)
+                                   if(*(cache_0 + pixel[10]) < c_b)
+                                    if(*(cache_0 + pixel[11]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 if(*(cache_0 + pixel[7]) < c_b)
+                                  if(*(cache_0 + pixel[9]) < c_b)
+                                   if(*(cache_0 + pixel[10]) < c_b)
+                                    if(*(cache_0 + pixel[11]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else if(*(cache_0 + pixel[6]) < c_b)
+                            if(*(cache_0 + pixel[3]) > cb)
+                             if(*(cache_0 + pixel[9]) < c_b)
+                              if(*(cache_0 + pixel[10]) < c_b)
+                               if(*(cache_0 + pixel[11]) < c_b)
+                                if(*(cache_0 + -3) < c_b)
+                                 if(*(cache_0 + pixel[13]) < c_b)
+                                  if(*(cache_0 + pixel[7]) < c_b)
+                                   if(*(cache_0 + pixel[5]) < c_b)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[14]) < c_b)
+                                     if(*(cache_0 + pixel[15]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                  else
+                                   if(*(cache_0 + pixel[1]) < c_b)
+                                    if(*(cache_0 + pixel[14]) < c_b)
+                                     if(*(cache_0 + pixel[15]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else if(*(cache_0 + pixel[3]) < c_b)
+                             if(*(cache_0 + pixel[5]) > cb)
+                              if(*(cache_0 + pixel[11]) < c_b)
+                               if(*(cache_0 + -3) < c_b)
+                                if(*(cache_0 + pixel[13]) < c_b)
+                                 if(*(cache_0 + pixel[14]) < c_b)
+                                  if(*(cache_0 + pixel[15]) < c_b)
+                                   if(*(cache_0 + pixel[1]) < c_b)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[7]) < c_b)
+                                     if(*(cache_0 + pixel[9]) < c_b)
+                                      if(*(cache_0 + pixel[10]) < c_b)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else if(*(cache_0 + pixel[5]) < c_b)
+                              if(*(cache_0 + pixel[7]) > cb)
+                               if(*(cache_0 + pixel[1]) < c_b)
+                                if(*(cache_0 + pixel[13]) < c_b)
+                                 if(*(cache_0 + pixel[14]) < c_b)
+                                  if(*(cache_0 + pixel[15]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else if(*(cache_0 + pixel[7]) < c_b)
+                               if(*(cache_0 + pixel[1]) > cb)
+                                if(*(cache_0 + pixel[9]) < c_b)
+                                 if(*(cache_0 + pixel[10]) < c_b)
+                                  if(*(cache_0 + pixel[11]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else if(*(cache_0 + pixel[1]) < c_b)
+                                if(*(cache_0 + pixel[9]) < c_b)
+                                 goto success;
+                                else
+                                 if(*(cache_0 + pixel[15]) < c_b)
+                                  goto success;
+                                 else
+                                  continue;
+                               else
+                                if(*(cache_0 + pixel[11]) < c_b)
+                                 if(*(cache_0 + pixel[10]) < c_b)
+                                  if(*(cache_0 + pixel[9]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               if(*(cache_0 + pixel[13]) < c_b)
+                                if(*(cache_0 + pixel[15]) < c_b)
+                                 if(*(cache_0 + pixel[14]) < c_b)
+                                  if(*(cache_0 + pixel[1]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else
+                              if(*(cache_0 + -3) < c_b)
+                               if(*(cache_0 + pixel[14]) < c_b)
+                                if(*(cache_0 + pixel[11]) < c_b)
+                                 if(*(cache_0 + pixel[13]) < c_b)
+                                  if(*(cache_0 + pixel[15]) < c_b)
+                                   if(*(cache_0 + pixel[1]) > cb)
+                                    if(*(cache_0 + pixel[7]) < c_b)
+                                     if(*(cache_0 + pixel[9]) < c_b)
+                                      if(*(cache_0 + pixel[10]) < c_b)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else if(*(cache_0 + pixel[1]) < c_b)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[9]) < c_b)
+                                     if(*(cache_0 + pixel[7]) < c_b)
+                                      if(*(cache_0 + pixel[10]) < c_b)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else
+                             if(*(cache_0 + pixel[11]) < c_b)
+                              if(*(cache_0 + pixel[13]) < c_b)
+                               if(*(cache_0 + pixel[10]) < c_b)
+                                if(*(cache_0 + pixel[9]) < c_b)
+                                 if(*(cache_0 + -3) < c_b)
+                                  if(*(cache_0 + pixel[7]) > cb)
+                                   if(*(cache_0 + pixel[1]) < c_b)
+                                    if(*(cache_0 + pixel[14]) < c_b)
+                                     if(*(cache_0 + pixel[15]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else if(*(cache_0 + pixel[7]) < c_b)
+                                   if(*(cache_0 + pixel[5]) < c_b)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[14]) < c_b)
+                                     if(*(cache_0 + pixel[15]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                  else
+                                   if(*(cache_0 + pixel[15]) < c_b)
+                                    if(*(cache_0 + pixel[1]) < c_b)
+                                     if(*(cache_0 + pixel[14]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                           else
+                            if(*(cache_0 + -3) < c_b)
+                             if(*(cache_0 + pixel[14]) < c_b)
+                              if(*(cache_0 + pixel[15]) < c_b)
+                               if(*(cache_0 + pixel[13]) < c_b)
+                                if(*(cache_0 + pixel[11]) > cb)
+                                 if(*(cache_0 + pixel[1]) < c_b)
+                                  if(*(cache_0 + pixel[3]) < c_b)
+                                   if(*(cache_0 + pixel[5]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else if(*(cache_0 + pixel[11]) < c_b)
+                                 if(*(cache_0 + pixel[1]) > cb)
+                                  if(*(cache_0 + pixel[7]) < c_b)
+                                   if(*(cache_0 + pixel[9]) < c_b)
+                                    if(*(cache_0 + pixel[10]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else if(*(cache_0 + pixel[1]) < c_b)
+                                  if(*(cache_0 + pixel[3]) > cb)
+                                   if(*(cache_0 + pixel[9]) < c_b)
+                                    if(*(cache_0 + pixel[10]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else if(*(cache_0 + pixel[3]) < c_b)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[10]) < c_b)
+                                    if(*(cache_0 + pixel[9]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  if(*(cache_0 + pixel[7]) < c_b)
+                                   if(*(cache_0 + pixel[10]) < c_b)
+                                    if(*(cache_0 + pixel[9]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 if(*(cache_0 + pixel[5]) < c_b)
+                                  if(*(cache_0 + pixel[3]) < c_b)
+                                   if(*(cache_0 + pixel[1]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                          else
+                           if(*(cache_0 + pixel[11]) < c_b)
+                            if(*(cache_0 + pixel[10]) < c_b)
+                             if(*(cache_0 + -3) < c_b)
+                              if(*(cache_0 + pixel[9]) < c_b)
+                               if(*(cache_0 + pixel[13]) > cb)
+                                if(*(cache_0 + pixel[3]) < c_b)
+                                 if(*(cache_0 + pixel[5]) < c_b)
+                                  if(*(cache_0 + pixel[6]) < c_b)
+                                   if(*(cache_0 + pixel[7]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else if(*(cache_0 + pixel[13]) < c_b)
+                                if(*(cache_0 + pixel[7]) < c_b)
+                                 if(*(cache_0 + pixel[6]) < c_b)
+                                  if(*(cache_0 + pixel[5]) < c_b)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[14]) < c_b)
+                                    if(*(cache_0 + pixel[15]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  if(*(cache_0 + pixel[14]) < c_b)
+                                   if(*(cache_0 + pixel[15]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 if(*(cache_0 + pixel[1]) < c_b)
+                                  if(*(cache_0 + pixel[14]) < c_b)
+                                   if(*(cache_0 + pixel[15]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                if(*(cache_0 + pixel[3]) < c_b)
+                                 if(*(cache_0 + pixel[6]) < c_b)
+                                  if(*(cache_0 + pixel[7]) < c_b)
+                                   if(*(cache_0 + pixel[5]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                         else
+                          if(*(cache_0 + -3) < c_b)
+                           if(*(cache_0 + pixel[10]) < c_b)
+                            if(*(cache_0 + pixel[14]) < c_b)
+                             if(*(cache_0 + pixel[11]) < c_b)
+                              if(*(cache_0 + pixel[13]) < c_b)
+                               if(*(cache_0 + pixel[15]) < c_b)
+                                if(*(cache_0 + pixel[9]) > cb)
+                                 if(*(cache_0 + pixel[1]) < c_b)
+                                  if(*(cache_0 + pixel[2]) < c_b)
+                                   if(*(cache_0 + pixel[3]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else if(*(cache_0 + pixel[9]) < c_b)
+                                 if(*(cache_0 + pixel[1]) < c_b)
+                                  goto success;
+                                 else
+                                  if(*(cache_0 + pixel[7]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                else
+                                 if(*(cache_0 + pixel[3]) < c_b)
+                                  if(*(cache_0 + pixel[2]) < c_b)
+                                   if(*(cache_0 + pixel[1]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                if(*(cache_0 + pixel[5]) < c_b)
+                                 if(*(cache_0 + pixel[6]) < c_b)
+                                  if(*(cache_0 + pixel[7]) < c_b)
+                                   if(*(cache_0 + pixel[9]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           continue;
+                        else
+                         if(*(cache_0 + pixel[2]) < c_b)
+                          if(*(cache_0 + -3) > cb)
+                           if(*(cache_0 + pixel[6]) < c_b)
+                            if(*(cache_0 + pixel[14]) < c_b)
+                             if(*(cache_0 + pixel[7]) > cb)
+                              if(*(cache_0 + pixel[1]) < c_b)
+                               if(*(cache_0 + pixel[3]) < c_b)
+                                if(*(cache_0 + 3) < c_b)
+                                 if(*(cache_0 + pixel[5]) < c_b)
+                                  if(*(cache_0 + pixel[13]) < c_b)
+                                   if(*(cache_0 + pixel[15]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else if(*(cache_0 + pixel[7]) < c_b)
+                              if(*(cache_0 + 3) < c_b)
+                               if(*(cache_0 + pixel[5]) < c_b)
+                                if(*(cache_0 + pixel[1]) < c_b)
+                                 if(*(cache_0 + pixel[3]) < c_b)
+                                  if(*(cache_0 + pixel[15]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              if(*(cache_0 + pixel[13]) < c_b)
+                               if(*(cache_0 + pixel[1]) < c_b)
+                                if(*(cache_0 + pixel[3]) < c_b)
+                                 if(*(cache_0 + 3) < c_b)
+                                  if(*(cache_0 + pixel[5]) < c_b)
+                                   if(*(cache_0 + pixel[15]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else if(*(cache_0 + -3) < c_b)
+                           if(*(cache_0 + pixel[3]) > cb)
+                            if(*(cache_0 + pixel[9]) < c_b)
+                             if(*(cache_0 + pixel[11]) < c_b)
+                              if(*(cache_0 + pixel[14]) < c_b)
+                               if(*(cache_0 + pixel[13]) < c_b)
+                                if(*(cache_0 + pixel[15]) < c_b)
+                                 if(*(cache_0 + pixel[1]) < c_b)
+                                  if(*(cache_0 + pixel[10]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else if(*(cache_0 + pixel[3]) < c_b)
+                            if(*(cache_0 + pixel[14]) < c_b)
+                             if(*(cache_0 + 3) > cb)
+                              if(*(cache_0 + pixel[10]) < c_b)
+                               if(*(cache_0 + pixel[15]) < c_b)
+                                if(*(cache_0 + pixel[1]) < c_b)
+                                 if(*(cache_0 + pixel[11]) < c_b)
+                                  if(*(cache_0 + pixel[13]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else if(*(cache_0 + 3) < c_b)
+                              if(*(cache_0 + pixel[15]) < c_b)
+                               if(*(cache_0 + pixel[1]) < c_b)
+                                if(*(cache_0 + pixel[13]) > cb)
+                                 if(*(cache_0 + pixel[5]) < c_b)
+                                  if(*(cache_0 + pixel[6]) < c_b)
+                                   if(*(cache_0 + pixel[7]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else if(*(cache_0 + pixel[13]) < c_b)
+                                 if(*(cache_0 + pixel[5]) < c_b)
+                                  goto success;
+                                 else
+                                  if(*(cache_0 + pixel[11]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                else
+                                 if(*(cache_0 + pixel[7]) < c_b)
+                                  if(*(cache_0 + pixel[6]) < c_b)
+                                   if(*(cache_0 + pixel[5]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              if(*(cache_0 + pixel[10]) < c_b)
+                               if(*(cache_0 + pixel[11]) < c_b)
+                                if(*(cache_0 + pixel[15]) < c_b)
+                                 if(*(cache_0 + pixel[13]) < c_b)
+                                  if(*(cache_0 + pixel[1]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else
+                             continue;
+                           else
+                            if(*(cache_0 + pixel[9]) < c_b)
+                             if(*(cache_0 + pixel[10]) < c_b)
+                              if(*(cache_0 + pixel[14]) < c_b)
+                               if(*(cache_0 + pixel[11]) < c_b)
+                                if(*(cache_0 + pixel[15]) < c_b)
+                                 if(*(cache_0 + pixel[1]) < c_b)
+                                  if(*(cache_0 + pixel[13]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                          else
+                           if(*(cache_0 + pixel[6]) < c_b)
+                            if(*(cache_0 + pixel[14]) < c_b)
+                             if(*(cache_0 + 3) < c_b)
+                              if(*(cache_0 + pixel[13]) > cb)
+                               if(*(cache_0 + pixel[7]) < c_b)
+                                if(*(cache_0 + pixel[3]) < c_b)
+                                 if(*(cache_0 + pixel[1]) < c_b)
+                                  if(*(cache_0 + pixel[5]) < c_b)
+                                   if(*(cache_0 + pixel[15]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else if(*(cache_0 + pixel[13]) < c_b)
+                               if(*(cache_0 + pixel[5]) < c_b)
+                                if(*(cache_0 + pixel[15]) < c_b)
+                                 if(*(cache_0 + pixel[1]) < c_b)
+                                  if(*(cache_0 + pixel[3]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               if(*(cache_0 + pixel[7]) < c_b)
+                                if(*(cache_0 + pixel[15]) < c_b)
+                                 if(*(cache_0 + pixel[3]) < c_b)
+                                  if(*(cache_0 + pixel[5]) < c_b)
+                                   if(*(cache_0 + pixel[1]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                         else
+                          continue;
+                       else
+                        if(*(cache_0 + pixel[8]) > cb)
+                         if(*(cache_0 + pixel[10]) > cb)
+                          if(*(cache_0 + 3) > cb)
+                           if(*(cache_0 + pixel[2]) > cb)
+                            if(*(cache_0 + pixel[6]) > cb)
+                             if(*(cache_0 + pixel[7]) > cb)
+                              if(*(cache_0 + pixel[11]) > cb)
+                               if(*(cache_0 + pixel[9]) > cb)
+                                if(*(cache_0 + pixel[5]) > cb)
+                                 if(*(cache_0 + pixel[3]) > cb)
+                                  goto success;
+                                 else if(*(cache_0 + pixel[3]) < c_b)
+                                  if(*(cache_0 + -3) > cb)
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + -3) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else if(*(cache_0 + pixel[5]) < c_b)
+                                 if(*(cache_0 + -3) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    if(*(cache_0 + pixel[15]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 if(*(cache_0 + pixel[15]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + -3) > cb)
+                                    if(*(cache_0 + pixel[13]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                              else
+                               if(*(cache_0 + pixel[1]) > cb)
+                                if(*(cache_0 + pixel[3]) > cb)
+                                 if(*(cache_0 + pixel[5]) > cb)
+                                  if(*(cache_0 + pixel[9]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else if(*(cache_0 + pixel[2]) < c_b)
+                            if(*(cache_0 + pixel[11]) > cb)
+                             if(*(cache_0 + -3) > cb)
+                              if(*(cache_0 + pixel[9]) > cb)
+                               if(*(cache_0 + pixel[6]) > cb)
+                                if(*(cache_0 + pixel[7]) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[5]) > cb)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    if(*(cache_0 + pixel[15]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  if(*(cache_0 + pixel[3]) > cb)
+                                   if(*(cache_0 + pixel[5]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            if(*(cache_0 + -3) > cb)
+                             if(*(cache_0 + pixel[6]) > cb)
+                              if(*(cache_0 + pixel[11]) > cb)
+                               if(*(cache_0 + pixel[13]) > cb)
+                                if(*(cache_0 + pixel[7]) > cb)
+                                 if(*(cache_0 + pixel[9]) > cb)
+                                  if(*(cache_0 + pixel[5]) > cb)
+                                   goto success;
+                                  else if(*(cache_0 + pixel[5]) < c_b)
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    if(*(cache_0 + pixel[15]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   if(*(cache_0 + pixel[15]) > cb)
+                                    if(*(cache_0 + pixel[14]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else if(*(cache_0 + pixel[13]) < c_b)
+                                if(*(cache_0 + pixel[3]) > cb)
+                                 if(*(cache_0 + pixel[5]) > cb)
+                                  if(*(cache_0 + pixel[7]) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                if(*(cache_0 + pixel[3]) > cb)
+                                 if(*(cache_0 + pixel[7]) > cb)
+                                  if(*(cache_0 + pixel[9]) > cb)
+                                   if(*(cache_0 + pixel[5]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                          else if(*(cache_0 + 3) < c_b)
+                           if(*(cache_0 + pixel[6]) > cb)
+                            if(*(cache_0 + pixel[14]) > cb)
+                             if(*(cache_0 + pixel[13]) > cb)
+                              if(*(cache_0 + pixel[7]) > cb)
+                               if(*(cache_0 + pixel[15]) > cb)
+                                if(*(cache_0 + pixel[9]) > cb)
+                                 if(*(cache_0 + pixel[11]) > cb)
+                                  if(*(cache_0 + -3) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                if(*(cache_0 + pixel[5]) > cb)
+                                 if(*(cache_0 + pixel[9]) > cb)
+                                  if(*(cache_0 + pixel[11]) > cb)
+                                   if(*(cache_0 + -3) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           if(*(cache_0 + pixel[14]) > cb)
+                            if(*(cache_0 + pixel[6]) > cb)
+                             if(*(cache_0 + -3) > cb)
+                              if(*(cache_0 + pixel[5]) > cb)
+                               if(*(cache_0 + pixel[11]) > cb)
+                                if(*(cache_0 + pixel[9]) > cb)
+                                 if(*(cache_0 + pixel[7]) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else if(*(cache_0 + pixel[5]) < c_b)
+                               if(*(cache_0 + pixel[15]) > cb)
+                                if(*(cache_0 + pixel[7]) > cb)
+                                 if(*(cache_0 + pixel[9]) > cb)
+                                  if(*(cache_0 + pixel[11]) > cb)
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               if(*(cache_0 + pixel[15]) > cb)
+                                if(*(cache_0 + pixel[11]) > cb)
+                                 if(*(cache_0 + pixel[9]) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + pixel[7]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                         else
+                          continue;
+                        else if(*(cache_0 + pixel[8]) < c_b)
+                         if(*(cache_0 + pixel[10]) < c_b)
+                          if(*(cache_0 + 3) > cb)
+                           if(*(cache_0 + pixel[14]) < c_b)
+                            if(*(cache_0 + pixel[6]) < c_b)
+                             if(*(cache_0 + -3) < c_b)
+                              if(*(cache_0 + pixel[9]) < c_b)
+                               if(*(cache_0 + pixel[11]) < c_b)
+                                if(*(cache_0 + pixel[15]) < c_b)
+                                 if(*(cache_0 + pixel[13]) < c_b)
+                                  if(*(cache_0 + pixel[7]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 if(*(cache_0 + pixel[5]) < c_b)
+                                  if(*(cache_0 + pixel[7]) < c_b)
+                                   if(*(cache_0 + pixel[13]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else if(*(cache_0 + 3) < c_b)
+                           if(*(cache_0 + pixel[6]) < c_b)
+                            if(*(cache_0 + -3) > cb)
+                             if(*(cache_0 + pixel[2]) < c_b)
+                              if(*(cache_0 + pixel[1]) > cb)
+                               if(*(cache_0 + pixel[3]) < c_b)
+                                if(*(cache_0 + pixel[5]) < c_b)
+                                 if(*(cache_0 + pixel[7]) < c_b)
+                                  if(*(cache_0 + pixel[9]) < c_b)
+                                   if(*(cache_0 + pixel[11]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else if(*(cache_0 + pixel[1]) < c_b)
+                               if(*(cache_0 + pixel[5]) < c_b)
+                                if(*(cache_0 + pixel[9]) < c_b)
+                                 if(*(cache_0 + pixel[3]) < c_b)
+                                  if(*(cache_0 + pixel[7]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               if(*(cache_0 + pixel[11]) < c_b)
+                                if(*(cache_0 + pixel[3]) < c_b)
+                                 if(*(cache_0 + pixel[5]) < c_b)
+                                  if(*(cache_0 + pixel[7]) < c_b)
+                                   if(*(cache_0 + pixel[9]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else
+                              continue;
+                            else if(*(cache_0 + -3) < c_b)
+                             if(*(cache_0 + pixel[7]) < c_b)
+                              if(*(cache_0 + pixel[11]) > cb)
+                               if(*(cache_0 + pixel[1]) < c_b)
+                                if(*(cache_0 + pixel[2]) < c_b)
+                                 if(*(cache_0 + pixel[3]) < c_b)
+                                  if(*(cache_0 + pixel[5]) < c_b)
+                                   if(*(cache_0 + pixel[9]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else if(*(cache_0 + pixel[11]) < c_b)
+                               if(*(cache_0 + pixel[9]) < c_b)
+                                if(*(cache_0 + pixel[5]) > cb)
+                                 if(*(cache_0 + pixel[13]) < c_b)
+                                  if(*(cache_0 + pixel[14]) < c_b)
+                                   if(*(cache_0 + pixel[15]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else if(*(cache_0 + pixel[5]) < c_b)
+                                 if(*(cache_0 + pixel[13]) < c_b)
+                                  goto success;
+                                 else
+                                  if(*(cache_0 + pixel[3]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                else
+                                 if(*(cache_0 + pixel[15]) < c_b)
+                                  if(*(cache_0 + pixel[14]) < c_b)
+                                   if(*(cache_0 + pixel[13]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                              else
+                               if(*(cache_0 + pixel[1]) < c_b)
+                                if(*(cache_0 + pixel[2]) < c_b)
+                                 if(*(cache_0 + pixel[9]) < c_b)
+                                  if(*(cache_0 + pixel[3]) < c_b)
+                                   if(*(cache_0 + pixel[5]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else
+                              continue;
+                            else
+                             if(*(cache_0 + pixel[2]) < c_b)
+                              if(*(cache_0 + pixel[1]) < c_b)
+                               if(*(cache_0 + pixel[3]) < c_b)
+                                if(*(cache_0 + pixel[7]) < c_b)
+                                 if(*(cache_0 + pixel[9]) < c_b)
+                                  if(*(cache_0 + pixel[5]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               if(*(cache_0 + pixel[11]) < c_b)
+                                if(*(cache_0 + pixel[3]) < c_b)
+                                 if(*(cache_0 + pixel[5]) < c_b)
+                                  if(*(cache_0 + pixel[7]) < c_b)
+                                   if(*(cache_0 + pixel[9]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else
+                              continue;
+                           else
+                            continue;
+                          else
+                           if(*(cache_0 + pixel[14]) < c_b)
+                            if(*(cache_0 + pixel[6]) < c_b)
+                             if(*(cache_0 + -3) < c_b)
+                              if(*(cache_0 + pixel[5]) > cb)
+                               if(*(cache_0 + pixel[9]) < c_b)
+                                if(*(cache_0 + pixel[7]) < c_b)
+                                 if(*(cache_0 + pixel[11]) < c_b)
+                                  if(*(cache_0 + pixel[13]) < c_b)
+                                   if(*(cache_0 + pixel[15]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else if(*(cache_0 + pixel[5]) < c_b)
+                               if(*(cache_0 + pixel[13]) < c_b)
+                                if(*(cache_0 + pixel[11]) < c_b)
+                                 if(*(cache_0 + pixel[7]) < c_b)
+                                  if(*(cache_0 + pixel[9]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               if(*(cache_0 + pixel[15]) < c_b)
+                                if(*(cache_0 + pixel[13]) < c_b)
+                                 if(*(cache_0 + pixel[7]) < c_b)
+                                  if(*(cache_0 + pixel[9]) < c_b)
+                                   if(*(cache_0 + pixel[11]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                         else
+                          continue;
+                        else
+                         continue;
+
+                       success:
+                               corners.push_back(ImageRef(cache_0-line_min, 
y));
+               }
+       }
+}
+}

Index: cvd_src/fast/fast_10_score.cxx
===================================================================
RCS file: cvd_src/fast/fast_10_score.cxx
diff -N cvd_src/fast/fast_10_score.cxx
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ cvd_src/fast/fast_10_score.cxx      28 Jun 2007 01:32:58 -0000      1.1.2.1
@@ -0,0 +1,3177 @@
+#include <vector>
+#include <cvd/image.h>
+#include <cvd/byte.h>
+
+// This is mechanically generated code. 
+
+using namespace std;
+namespace CVD
+{
+
+static inline bool test_gt_set(int a, int b, int& min_diff)
+{
+       if(a > b)
+       {
+               if(a-b < min_diff)
+                       min_diff = a-b;
+
+               return 1;
+       }
+       return 0;
+}
+
+inline int fast_corner_score_10(const byte* cache_0, const int offset[], int b)
+{      
+       b++;
+       //This function computes the score for a pixel which is known to be 
+       //a corner at barrier b. So we start looking at b+1 and above to 
+       //establish where it stops becoming a corner.
+       for(;;)
+       {
+               int cb = *cache_0 + b;
+               int c_b= *cache_0 - b;
+               int min_diff = INT_MAX;
+               if(test_gt_set(*(cache_0 + offset[0]), cb, min_diff))
+                if(test_gt_set(*(cache_0 + offset[8]), cb, min_diff))
+                 if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                   if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                         b += min_diff;
+                        else
+                         if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                          b += min_diff;
+                         else
+                          break;
+                       else if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                        if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                      else if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                       if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                     else if(test_gt_set(c_b, *(cache_0 + offset[4]), 
min_diff))
+                      if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[1]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             if(test_gt_set(*(cache_0 + offset[7]), cb, 
min_diff))
+                              if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                               b += min_diff;
+                              else
+                               break;
+                             else
+                              break;
+                           else
+                            if(test_gt_set(*(cache_0 + offset[7]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[1]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[7]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                               b += min_diff;
+                              else
+                               break;
+                            else
+                             if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                           else if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[7]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[7]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                    else if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                     if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                           b += min_diff;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[10]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[10]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                           b += min_diff;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[10]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                         else if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                          if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[10]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[10]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                   else if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                    if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                           b += min_diff;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                           b += min_diff;
+                          else if(test_gt_set(c_b, *(cache_0 + offset[4]), 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                         else if(test_gt_set(c_b, *(cache_0 + offset[6]), 
min_diff))
+                          if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                        else if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                         if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                  else if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                   if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                           b += min_diff;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[7]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                         else
+                          if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[2]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[4]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                           b += min_diff;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                         else
+                          if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         break;
+                       else if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                        if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                 else if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                   if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                          b += min_diff;
+                         else
+                          if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                        else
+                         if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[7]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[7]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   break;
+                 else
+                  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                   if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                          b += min_diff;
+                         else
+                          if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[6]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                     if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                   else
+                    break;
+                  else
+                   break;
+                else if(test_gt_set(c_b, *(cache_0 + offset[8]), min_diff))
+                 if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                  if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                   if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                          b += min_diff;
+                         else
+                          if(test_gt_set(*(cache_0 + offset[10]), cb, 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                        else
+                         if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[6]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                      else
+                       if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[7]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                   if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   break;
+                 else if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                   if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                           b += min_diff;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                   if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                    if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                      if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[4]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                    else if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                     if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                       if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else if(test_gt_set(c_b, *(cache_0 + offset[4]), 
min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                          b += min_diff;
+                         else
+                          if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                        else
+                         break;
+                       else
+                        if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                      else
+                       break;
+                     else
+                      if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[4]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                    else
+                     if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                   else
+                    if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                  else
+                   if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                 else
+                  if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                   if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                           b += min_diff;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                       if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[7]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[6]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                   if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   break;
+                else
+                 if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                   if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                          b += min_diff;
+                         else
+                          if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                        else if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                         if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[7]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[6]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        break;
+                      else
+                       break;
+                     else if(test_gt_set(c_b, *(cache_0 + offset[4]), 
min_diff))
+                      if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                    else
+                     break;
+                   else if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                    if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                           b += min_diff;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                        if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[1]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                  else
+                   break;
+                 else if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                  if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                   if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   break;
+                 else
+                  if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                   if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   break;
+               else if(test_gt_set(c_b, *(cache_0 + offset[0]), min_diff))
+                if(test_gt_set(*(cache_0 + offset[8]), cb, min_diff))
+                 if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                  if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                   if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                          b += min_diff;
+                         else
+                          if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                      else if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                       if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   break;
+                 else if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                   if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                           b += min_diff;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                         else
+                          break;
+                        else
+                         if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                   if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                      if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                      else if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                          b += min_diff;
+                         else
+                          break;
+                        else
+                         if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                      else
+                       if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                        if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                  else
+                   if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                 else
+                  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                   if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                           b += min_diff;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                         else
+                          if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         break;
+                       else
+                        if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[7]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   break;
+                else if(test_gt_set(c_b, *(cache_0 + offset[8]), min_diff))
+                 if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                  if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                   if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                         if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[2]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                          b += min_diff;
+                         else
+                          if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[2]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         break;
+                       else
+                        if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                      else
+                       break;
+                     else
+                      if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   break;
+                 else if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                  if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                   if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                          if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[6]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                           b += min_diff;
+                          else
+                           if(test_gt_set(c_b, *(cache_0 + offset[6]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[6]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[6]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                   if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                           b += min_diff;
+                          else
+                           if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                         else
+                          if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                    if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                            b += min_diff;
+                           else
+                            if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                          else
+                           if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                     if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                            b += min_diff;
+                           else
+                            if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                              if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                               b += min_diff;
+                              else
+                               break;
+                             else
+                              break;
+                            else
+                             break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                      if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                       if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                         b += min_diff;
+                        else
+                         if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                          b += min_diff;
+                         else
+                          break;
+                       else
+                        if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                      else
+                       if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                     else
+                      if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[1]), cb, 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                              if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                               b += min_diff;
+                              else
+                               break;
+                             else
+                              break;
+                            else
+                             break;
+                           else if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                            b += min_diff;
+                           else
+                            if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                              if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                               b += min_diff;
+                              else
+                               break;
+                             else
+                              break;
+                            else
+                             break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                    else
+                     if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                          if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                          else if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                            b += min_diff;
+                           else
+                            if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                          else
+                           if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                   else
+                    if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                        if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                         if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                          if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                           b += min_diff;
+                          else
+                           if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                  else
+                   if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                       if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[6]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                           b += min_diff;
+                          else
+                           if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                 else
+                  if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                   if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
+                        if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[2]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                          b += min_diff;
+                         else
+                          if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                        else
+                         if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[2]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   break;
+                else
+                 if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                   if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                     if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                    else
+                     break;
+                   else
+                    break;
+                  else if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                   if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                     if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else if(test_gt_set(c_b, *(cache_0 + offset[4]), 
min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                        if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[6]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                          b += min_diff;
+                         else
+                          if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                        else
+                         if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[6]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                    else
+                     break;
+                   else
+                    if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                  else
+                   if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                      if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                 else
+                  break;
+               else
+                if(test_gt_set(*(cache_0 + offset[8]), cb, min_diff))
+                 if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                   if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                          b += min_diff;
+                         else if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                          if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                        else if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                         if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        break;
+                      else
+                       if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                     else
+                      break;
+                    else
+                     break;
+                   else if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                    if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                           b += min_diff;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[5]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                           b += min_diff;
+                          else if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          break;
+                        else
+                         break;
+                       else if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                        if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[5]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                  else if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                   if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                       if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[7]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                 else
+                  break;
+                else if(test_gt_set(c_b, *(cache_0 + offset[8]), min_diff))
+                 if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                   if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                   if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                    if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                      if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                     else
+                      break;
+                    else if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                      if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                        if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                          b += min_diff;
+                         else
+                          if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                        else
+                         if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        break;
+                      else
+                       if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                     else
+                      break;
+                    else
+                     if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                     else
+                      break;
+                   else
+                    break;
+                  else
+                   if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                      if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                 else
+                  break;
+                else
+                 break;
+
+       }
+
+       return b-1;
+}
+
+void fast_corner_score_10(const SubImage<byte>& i, const vector<ImageRef>& 
corners, int b, vector<int>& scores)
+{
+       scores.resize(corners.size());
+               int pixel[16] = {
+               0 + i.row_stride() * 3,
+               1 + i.row_stride() * 3,
+               2 + i.row_stride() * 2,
+               3 + i.row_stride() * 1,
+               3 + i.row_stride() * 0,
+               3 + i.row_stride() * -1,
+               2 + i.row_stride() * -2,
+               1 + i.row_stride() * -3,
+               0 + i.row_stride() * -3,
+               -1 + i.row_stride() * -3,
+               -2 + i.row_stride() * -2,
+               -3 + i.row_stride() * -1,
+               -3 + i.row_stride() * 0,
+               -3 + i.row_stride() * 1,
+               -2 + i.row_stride() * 2,
+               -1 + i.row_stride() * 3,
+       };
+       for(unsigned int n=0; n < corners.size(); n++)
+               scores[n] = fast_corner_score_10(&i[corners[n]], pixel, b);
+}
+
+}

Index: cvd_src/fast/fast_11_detect.cxx
===================================================================
RCS file: cvd_src/fast/fast_11_detect.cxx
diff -N cvd_src/fast/fast_11_detect.cxx
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ cvd_src/fast/fast_11_detect.cxx     28 Jun 2007 01:32:58 -0000      1.1.2.1
@@ -0,0 +1,2588 @@
+#include <vector>
+#include <cvd/image.h>
+#include <cvd/byte.h>
+
+// This is mechanically generated code. 
+
+using namespace std;
+namespace CVD
+{
+void fast_corner_detect_plain_11(const SubImage<byte>& i, vector<ImageRef>& 
corners, int b)
+{
+       int y, cb, c_b;
+       const byte  *line_max, *line_min;
+       const byte* cache_0;
+
+       int pixel[16] = {
+               0 + i.row_stride() * 3,
+               1 + i.row_stride() * 3,
+               2 + i.row_stride() * 2,
+               3 + i.row_stride() * 1,
+               3 + i.row_stride() * 0,
+               3 + i.row_stride() * -1,
+               2 + i.row_stride() * -2,
+               1 + i.row_stride() * -3,
+               0 + i.row_stride() * -3,
+               -1 + i.row_stride() * -3,
+               -2 + i.row_stride() * -2,
+               -3 + i.row_stride() * -1,
+               -3 + i.row_stride() * 0,
+               -3 + i.row_stride() * 1,
+               -2 + i.row_stride() * 2,
+               -1 + i.row_stride() * 3,
+       };
+
+       for(y = 3 ; y < i.size().y - 3; y++)
+       {
+               cache_0 = &i[y][3];
+               line_min = cache_0 - 3;
+               line_max = &i[y][i.size().x - 3];
+
+
+               for(; cache_0 < line_max;cache_0++)
+               {
+                       cb = *cache_0 + b;
+                       c_b= *cache_0 - b;
+  
+                       if(*(cache_0 + pixel[0]) > cb)
+                        if(*(cache_0 + pixel[8]) > cb)
+                         if(*(cache_0 + pixel[3]) > cb)
+                          if(*(cache_0 + pixel[6]) > cb)
+                           if(*(cache_0 + pixel[2]) > cb)
+                            if(*(cache_0 + 3) > cb)
+                             if(*(cache_0 + pixel[15]) > cb)
+                              if(*(cache_0 + pixel[7]) > cb)
+                               if(*(cache_0 + pixel[5]) > cb)
+                                if(*(cache_0 + pixel[1]) > cb)
+                                 if(*(cache_0 + pixel[9]) > cb)
+                                  goto success;
+                                 else
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                else if(*(cache_0 + pixel[1]) < c_b)
+                                 if(*(cache_0 + pixel[9]) > cb)
+                                  if(*(cache_0 + pixel[10]) > cb)
+                                   if(*(cache_0 + pixel[11]) > cb)
+                                    if(*(cache_0 + -3) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 if(*(cache_0 + pixel[11]) > cb)
+                                  if(*(cache_0 + pixel[10]) > cb)
+                                   if(*(cache_0 + -3) > cb)
+                                    if(*(cache_0 + pixel[9]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else if(*(cache_0 + pixel[5]) < c_b)
+                                if(*(cache_0 + pixel[10]) > cb)
+                                 if(*(cache_0 + pixel[11]) > cb)
+                                  if(*(cache_0 + -3) > cb)
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    if(*(cache_0 + pixel[14]) > cb)
+                                     if(*(cache_0 + pixel[9]) > cb)
+                                      goto success;
+                                     else
+                                      if(*(cache_0 + pixel[1]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                if(*(cache_0 + pixel[11]) > cb)
+                                 if(*(cache_0 + pixel[10]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    if(*(cache_0 + pixel[1]) > cb)
+                                     if(*(cache_0 + -3) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     if(*(cache_0 + pixel[9]) > cb)
+                                      if(*(cache_0 + -3) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else if(*(cache_0 + pixel[7]) < c_b)
+                               if(*(cache_0 + pixel[1]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + pixel[5]) > cb)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[10]) > cb)
+                                     if(*(cache_0 + pixel[11]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               if(*(cache_0 + -3) > cb)
+                                if(*(cache_0 + pixel[14]) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[5]) > cb)
+                                   if(*(cache_0 + pixel[1]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else if(*(cache_0 + pixel[5]) < c_b)
+                                   if(*(cache_0 + pixel[1]) > cb)
+                                    if(*(cache_0 + pixel[10]) > cb)
+                                     if(*(cache_0 + pixel[11]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   if(*(cache_0 + pixel[10]) > cb)
+                                    if(*(cache_0 + pixel[11]) > cb)
+                                     if(*(cache_0 + pixel[1]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else if(*(cache_0 + pixel[15]) < c_b)
+                              if(*(cache_0 + pixel[5]) > cb)
+                               if(*(cache_0 + pixel[7]) > cb)
+                                if(*(cache_0 + pixel[9]) > cb)
+                                 if(*(cache_0 + pixel[10]) > cb)
+                                  if(*(cache_0 + pixel[1]) > cb)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[11]) > cb)
+                                    if(*(cache_0 + -3) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              if(*(cache_0 + pixel[10]) > cb)
+                               if(*(cache_0 + pixel[7]) > cb)
+                                if(*(cache_0 + pixel[5]) > cb)
+                                 if(*(cache_0 + pixel[1]) > cb)
+                                  if(*(cache_0 + pixel[9]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else if(*(cache_0 + pixel[1]) < c_b)
+                                  if(*(cache_0 + pixel[9]) > cb)
+                                   if(*(cache_0 + pixel[11]) > cb)
+                                    if(*(cache_0 + -3) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  if(*(cache_0 + -3) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    if(*(cache_0 + pixel[11]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else if(*(cache_0 + 3) < c_b)
+                             if(*(cache_0 + pixel[9]) > cb)
+                              if(*(cache_0 + pixel[10]) > cb)
+                               if(*(cache_0 + pixel[11]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + pixel[15]) > cb)
+                                    if(*(cache_0 + pixel[7]) > cb)
+                                     goto success;
+                                    else
+                                     if(*(cache_0 + pixel[1]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             if(*(cache_0 + -3) > cb)
+                              if(*(cache_0 + pixel[14]) > cb)
+                               if(*(cache_0 + pixel[10]) > cb)
+                                if(*(cache_0 + pixel[11]) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[15]) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    if(*(cache_0 + pixel[1]) > cb)
+                                     goto success;
+                                    else
+                                     if(*(cache_0 + pixel[7]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                           else if(*(cache_0 + pixel[2]) < c_b)
+                            if(*(cache_0 + pixel[11]) > cb)
+                             if(*(cache_0 + pixel[7]) > cb)
+                              if(*(cache_0 + pixel[9]) > cb)
+                               if(*(cache_0 + pixel[10]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[15]) > cb)
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + 3) > cb)
+                                     if(*(cache_0 + pixel[5]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                  else
+                                   if(*(cache_0 + 3) > cb)
+                                    if(*(cache_0 + pixel[5]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            if(*(cache_0 + pixel[11]) > cb)
+                             if(*(cache_0 + pixel[10]) > cb)
+                              if(*(cache_0 + pixel[13]) > cb)
+                               if(*(cache_0 + pixel[9]) > cb)
+                                if(*(cache_0 + pixel[7]) > cb)
+                                 if(*(cache_0 + -3) > cb)
+                                  if(*(cache_0 + pixel[15]) > cb)
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    goto success;
+                                   else if(*(cache_0 + pixel[14]) < c_b)
+                                    if(*(cache_0 + 3) > cb)
+                                     if(*(cache_0 + pixel[5]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    if(*(cache_0 + pixel[5]) > cb)
+                                     if(*(cache_0 + 3) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                  else
+                                   if(*(cache_0 + 3) > cb)
+                                    if(*(cache_0 + pixel[5]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                          else if(*(cache_0 + pixel[6]) < c_b)
+                           if(*(cache_0 + pixel[13]) > cb)
+                            if(*(cache_0 + pixel[11]) > cb)
+                             if(*(cache_0 + pixel[1]) > cb)
+                              if(*(cache_0 + -3) > cb)
+                               if(*(cache_0 + pixel[14]) > cb)
+                                if(*(cache_0 + pixel[15]) > cb)
+                                 if(*(cache_0 + pixel[2]) > cb)
+                                  if(*(cache_0 + 3) > cb)
+                                   if(*(cache_0 + pixel[5]) > cb)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[10]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                  else
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    if(*(cache_0 + pixel[10]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  if(*(cache_0 + pixel[7]) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    if(*(cache_0 + pixel[10]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           if(*(cache_0 + -3) > cb)
+                            if(*(cache_0 + pixel[14]) > cb)
+                             if(*(cache_0 + pixel[1]) > cb)
+                              if(*(cache_0 + pixel[11]) > cb)
+                               if(*(cache_0 + pixel[15]) > cb)
+                                if(*(cache_0 + pixel[10]) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[2]) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + 3) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                  else
+                                   if(*(cache_0 + pixel[7]) > cb)
+                                    if(*(cache_0 + pixel[9]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else if(*(cache_0 + pixel[10]) < c_b)
+                                 if(*(cache_0 + pixel[2]) > cb)
+                                  if(*(cache_0 + 3) > cb)
+                                   if(*(cache_0 + pixel[5]) > cb)
+                                    if(*(cache_0 + pixel[13]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 if(*(cache_0 + pixel[5]) > cb)
+                                  if(*(cache_0 + pixel[2]) > cb)
+                                   if(*(cache_0 + 3) > cb)
+                                    if(*(cache_0 + pixel[13]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                         else if(*(cache_0 + pixel[3]) < c_b)
+                          if(*(cache_0 + pixel[14]) > cb)
+                           if(*(cache_0 + -3) > cb)
+                            if(*(cache_0 + pixel[10]) > cb)
+                             if(*(cache_0 + pixel[13]) > cb)
+                              if(*(cache_0 + pixel[9]) > cb)
+                               if(*(cache_0 + pixel[11]) > cb)
+                                if(*(cache_0 + pixel[15]) > cb)
+                                 if(*(cache_0 + pixel[7]) > cb)
+                                  if(*(cache_0 + pixel[6]) > cb)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[1]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                 else if(*(cache_0 + pixel[7]) < c_b)
+                                  if(*(cache_0 + pixel[1]) > cb)
+                                   if(*(cache_0 + pixel[2]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  if(*(cache_0 + pixel[2]) > cb)
+                                   if(*(cache_0 + pixel[1]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 if(*(cache_0 + 3) > cb)
+                                  if(*(cache_0 + pixel[5]) > cb)
+                                   if(*(cache_0 + pixel[6]) > cb)
+                                    if(*(cache_0 + pixel[7]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           continue;
+                         else
+                          if(*(cache_0 + -3) > cb)
+                           if(*(cache_0 + pixel[10]) > cb)
+                            if(*(cache_0 + pixel[14]) > cb)
+                             if(*(cache_0 + pixel[11]) > cb)
+                              if(*(cache_0 + pixel[13]) > cb)
+                               if(*(cache_0 + pixel[7]) > cb)
+                                if(*(cache_0 + pixel[15]) > cb)
+                                 if(*(cache_0 + pixel[9]) > cb)
+                                  if(*(cache_0 + pixel[1]) > cb)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[6]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else if(*(cache_0 + pixel[15]) < c_b)
+                                 if(*(cache_0 + 3) > cb)
+                                  if(*(cache_0 + pixel[5]) > cb)
+                                   if(*(cache_0 + pixel[6]) > cb)
+                                    if(*(cache_0 + pixel[9]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 if(*(cache_0 + 3) > cb)
+                                  if(*(cache_0 + pixel[6]) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    if(*(cache_0 + pixel[5]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else if(*(cache_0 + pixel[7]) < c_b)
+                                if(*(cache_0 + pixel[1]) > cb)
+                                 if(*(cache_0 + pixel[2]) > cb)
+                                  if(*(cache_0 + pixel[9]) > cb)
+                                   if(*(cache_0 + pixel[15]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                if(*(cache_0 + pixel[2]) > cb)
+                                 if(*(cache_0 + pixel[15]) > cb)
+                                  if(*(cache_0 + pixel[1]) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           continue;
+                        else if(*(cache_0 + pixel[8]) < c_b)
+                         if(*(cache_0 + pixel[11]) > cb)
+                          if(*(cache_0 + pixel[3]) > cb)
+                           if(*(cache_0 + pixel[14]) > cb)
+                            if(*(cache_0 + pixel[2]) > cb)
+                             if(*(cache_0 + pixel[1]) > cb)
+                              if(*(cache_0 + pixel[13]) > cb)
+                               if(*(cache_0 + pixel[15]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[10]) > cb)
+                                  if(*(cache_0 + 3) > cb)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                 else if(*(cache_0 + pixel[10]) < c_b)
+                                  if(*(cache_0 + 3) > cb)
+                                   if(*(cache_0 + pixel[5]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  if(*(cache_0 + pixel[5]) > cb)
+                                   if(*(cache_0 + 3) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 if(*(cache_0 + 3) > cb)
+                                  if(*(cache_0 + pixel[5]) > cb)
+                                   if(*(cache_0 + pixel[6]) > cb)
+                                    if(*(cache_0 + pixel[7]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           continue;
+                         else if(*(cache_0 + pixel[11]) < c_b)
+                          if(*(cache_0 + pixel[5]) > cb)
+                           if(*(cache_0 + pixel[13]) > cb)
+                            if(*(cache_0 + pixel[1]) > cb)
+                             if(*(cache_0 + pixel[2]) > cb)
+                              if(*(cache_0 + pixel[3]) > cb)
+                               if(*(cache_0 + 3) > cb)
+                                if(*(cache_0 + pixel[6]) > cb)
+                                 if(*(cache_0 + pixel[14]) > cb)
+                                  if(*(cache_0 + pixel[15]) > cb)
+                                   if(*(cache_0 + pixel[7]) > cb)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + -3) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else if(*(cache_0 + pixel[5]) < c_b)
+                           if(*(cache_0 + -3) < c_b)
+                            if(*(cache_0 + 3) > cb)
+                             if(*(cache_0 + pixel[6]) < c_b)
+                              if(*(cache_0 + pixel[7]) < c_b)
+                               if(*(cache_0 + pixel[9]) < c_b)
+                                if(*(cache_0 + pixel[10]) < c_b)
+                                 if(*(cache_0 + pixel[13]) < c_b)
+                                  if(*(cache_0 + pixel[14]) < c_b)
+                                   if(*(cache_0 + pixel[15]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else if(*(cache_0 + 3) < c_b)
+                             if(*(cache_0 + pixel[6]) < c_b)
+                              if(*(cache_0 + pixel[10]) < c_b)
+                               if(*(cache_0 + pixel[9]) < c_b)
+                                if(*(cache_0 + pixel[2]) < c_b)
+                                 if(*(cache_0 + pixel[3]) > cb)
+                                  if(*(cache_0 + pixel[7]) < c_b)
+                                   if(*(cache_0 + pixel[13]) < c_b)
+                                    if(*(cache_0 + pixel[14]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else if(*(cache_0 + pixel[3]) < c_b)
+                                  if(*(cache_0 + pixel[7]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  if(*(cache_0 + pixel[13]) < c_b)
+                                   if(*(cache_0 + pixel[7]) < c_b)
+                                    if(*(cache_0 + pixel[14]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 if(*(cache_0 + pixel[13]) < c_b)
+                                  if(*(cache_0 + pixel[3]) > cb)
+                                   if(*(cache_0 + pixel[7]) < c_b)
+                                    if(*(cache_0 + pixel[14]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else if(*(cache_0 + pixel[3]) < c_b)
+                                   if(*(cache_0 + pixel[7]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   if(*(cache_0 + pixel[14]) < c_b)
+                                    if(*(cache_0 + pixel[7]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             if(*(cache_0 + pixel[15]) < c_b)
+                              if(*(cache_0 + pixel[6]) < c_b)
+                               if(*(cache_0 + pixel[7]) < c_b)
+                                if(*(cache_0 + pixel[9]) < c_b)
+                                 if(*(cache_0 + pixel[10]) < c_b)
+                                  if(*(cache_0 + pixel[13]) < c_b)
+                                   if(*(cache_0 + pixel[14]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                           else
+                            if(*(cache_0 + pixel[1]) < c_b)
+                             if(*(cache_0 + pixel[2]) < c_b)
+                              if(*(cache_0 + pixel[3]) < c_b)
+                               if(*(cache_0 + 3) < c_b)
+                                if(*(cache_0 + pixel[6]) < c_b)
+                                 if(*(cache_0 + pixel[7]) < c_b)
+                                  if(*(cache_0 + pixel[9]) < c_b)
+                                   if(*(cache_0 + pixel[10]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                          else
+                           continue;
+                         else
+                          if(*(cache_0 + pixel[6]) > cb)
+                           if(*(cache_0 + pixel[13]) > cb)
+                            if(*(cache_0 + 3) > cb)
+                             if(*(cache_0 + pixel[15]) > cb)
+                              if(*(cache_0 + pixel[3]) > cb)
+                               if(*(cache_0 + pixel[1]) > cb)
+                                if(*(cache_0 + pixel[2]) > cb)
+                                 if(*(cache_0 + pixel[5]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + pixel[7]) > cb)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + -3) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           continue;
+                        else
+                         if(*(cache_0 + pixel[3]) > cb)
+                          if(*(cache_0 + -3) > cb)
+                           if(*(cache_0 + pixel[14]) > cb)
+                            if(*(cache_0 + 3) > cb)
+                             if(*(cache_0 + pixel[2]) > cb)
+                              if(*(cache_0 + pixel[15]) > cb)
+                               if(*(cache_0 + pixel[11]) > cb)
+                                if(*(cache_0 + pixel[1]) > cb)
+                                 if(*(cache_0 + pixel[5]) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  if(*(cache_0 + pixel[10]) > cb)
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                               else if(*(cache_0 + pixel[11]) < c_b)
+                                if(*(cache_0 + pixel[1]) > cb)
+                                 if(*(cache_0 + pixel[5]) > cb)
+                                  if(*(cache_0 + pixel[6]) > cb)
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                if(*(cache_0 + pixel[6]) > cb)
+                                 if(*(cache_0 + pixel[5]) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + pixel[1]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else if(*(cache_0 + 3) < c_b)
+                             if(*(cache_0 + pixel[1]) > cb)
+                              if(*(cache_0 + pixel[2]) > cb)
+                               if(*(cache_0 + pixel[9]) > cb)
+                                if(*(cache_0 + pixel[10]) > cb)
+                                 if(*(cache_0 + pixel[11]) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + pixel[15]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             if(*(cache_0 + pixel[9]) > cb)
+                              if(*(cache_0 + pixel[10]) > cb)
+                               if(*(cache_0 + pixel[13]) > cb)
+                                if(*(cache_0 + pixel[15]) > cb)
+                                 if(*(cache_0 + pixel[11]) > cb)
+                                  if(*(cache_0 + pixel[2]) > cb)
+                                   if(*(cache_0 + pixel[1]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                           else
+                            continue;
+                          else if(*(cache_0 + -3) < c_b)
+                           if(*(cache_0 + pixel[13]) > cb)
+                            if(*(cache_0 + pixel[1]) > cb)
+                             if(*(cache_0 + pixel[2]) > cb)
+                              if(*(cache_0 + 3) > cb)
+                               if(*(cache_0 + pixel[5]) > cb)
+                                if(*(cache_0 + pixel[6]) > cb)
+                                 if(*(cache_0 + pixel[7]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + pixel[15]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           if(*(cache_0 + pixel[7]) > cb)
+                            if(*(cache_0 + pixel[13]) > cb)
+                             if(*(cache_0 + pixel[5]) > cb)
+                              if(*(cache_0 + pixel[2]) > cb)
+                               if(*(cache_0 + pixel[15]) > cb)
+                                if(*(cache_0 + pixel[6]) > cb)
+                                 if(*(cache_0 + 3) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + pixel[1]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                         else
+                          continue;
+                       else if(*(cache_0 + pixel[0]) < c_b)
+                        if(*(cache_0 + pixel[8]) > cb)
+                         if(*(cache_0 + pixel[3]) > cb)
+                          if(*(cache_0 + pixel[11]) > cb)
+                           if(*(cache_0 + pixel[6]) > cb)
+                            if(*(cache_0 + pixel[10]) > cb)
+                             if(*(cache_0 + pixel[7]) > cb)
+                              if(*(cache_0 + pixel[5]) > cb)
+                               if(*(cache_0 + pixel[9]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + 3) > cb)
+                                  if(*(cache_0 + pixel[2]) > cb)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                 else
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    if(*(cache_0 + pixel[15]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 if(*(cache_0 + pixel[1]) > cb)
+                                  if(*(cache_0 + pixel[2]) > cb)
+                                   if(*(cache_0 + 3) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           continue;
+                         else if(*(cache_0 + pixel[3]) < c_b)
+                          if(*(cache_0 + pixel[13]) > cb)
+                           if(*(cache_0 + pixel[5]) > cb)
+                            if(*(cache_0 + pixel[6]) > cb)
+                             if(*(cache_0 + pixel[7]) > cb)
+                              if(*(cache_0 + pixel[9]) > cb)
+                               if(*(cache_0 + pixel[10]) > cb)
+                                if(*(cache_0 + pixel[11]) > cb)
+                                 if(*(cache_0 + -3) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + 3) > cb)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[15]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else if(*(cache_0 + pixel[13]) < c_b)
+                           if(*(cache_0 + 3) > cb)
+                            if(*(cache_0 + pixel[9]) < c_b)
+                             if(*(cache_0 + pixel[1]) < c_b)
+                              if(*(cache_0 + pixel[2]) < c_b)
+                               if(*(cache_0 + pixel[10]) < c_b)
+                                if(*(cache_0 + pixel[11]) < c_b)
+                                 if(*(cache_0 + -3) < c_b)
+                                  if(*(cache_0 + pixel[14]) < c_b)
+                                   if(*(cache_0 + pixel[15]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else if(*(cache_0 + 3) < c_b)
+                            if(*(cache_0 + pixel[14]) < c_b)
+                             if(*(cache_0 + pixel[2]) < c_b)
+                              if(*(cache_0 + -3) > cb)
+                               if(*(cache_0 + pixel[1]) < c_b)
+                                if(*(cache_0 + pixel[5]) < c_b)
+                                 if(*(cache_0 + pixel[6]) < c_b)
+                                  if(*(cache_0 + pixel[7]) < c_b)
+                                   if(*(cache_0 + pixel[15]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else if(*(cache_0 + -3) < c_b)
+                               if(*(cache_0 + pixel[11]) < c_b)
+                                if(*(cache_0 + pixel[15]) < c_b)
+                                 if(*(cache_0 + pixel[5]) > cb)
+                                  if(*(cache_0 + pixel[1]) < c_b)
+                                   if(*(cache_0 + pixel[10]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else if(*(cache_0 + pixel[5]) < c_b)
+                                  if(*(cache_0 + pixel[1]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  if(*(cache_0 + pixel[10]) < c_b)
+                                   if(*(cache_0 + pixel[1]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                               else
+                                if(*(cache_0 + pixel[6]) < c_b)
+                                 if(*(cache_0 + pixel[1]) < c_b)
+                                  if(*(cache_0 + pixel[5]) < c_b)
+                                   if(*(cache_0 + pixel[15]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               if(*(cache_0 + pixel[7]) < c_b)
+                                if(*(cache_0 + pixel[1]) < c_b)
+                                 if(*(cache_0 + pixel[5]) < c_b)
+                                  if(*(cache_0 + pixel[6]) < c_b)
+                                   if(*(cache_0 + pixel[15]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            if(*(cache_0 + pixel[9]) < c_b)
+                             if(*(cache_0 + pixel[11]) < c_b)
+                              if(*(cache_0 + pixel[2]) < c_b)
+                               if(*(cache_0 + pixel[1]) < c_b)
+                                if(*(cache_0 + pixel[10]) < c_b)
+                                 if(*(cache_0 + -3) < c_b)
+                                  if(*(cache_0 + pixel[14]) < c_b)
+                                   if(*(cache_0 + pixel[15]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                          else
+                           continue;
+                         else
+                          if(*(cache_0 + pixel[14]) > cb)
+                           if(*(cache_0 + pixel[5]) > cb)
+                            if(*(cache_0 + pixel[11]) > cb)
+                             if(*(cache_0 + pixel[6]) > cb)
+                              if(*(cache_0 + pixel[7]) > cb)
+                               if(*(cache_0 + pixel[9]) > cb)
+                                if(*(cache_0 + pixel[10]) > cb)
+                                 if(*(cache_0 + -3) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + 3) > cb)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[15]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           continue;
+                        else if(*(cache_0 + pixel[8]) < c_b)
+                         if(*(cache_0 + 3) > cb)
+                          if(*(cache_0 + -3) < c_b)
+                           if(*(cache_0 + pixel[10]) < c_b)
+                            if(*(cache_0 + pixel[14]) < c_b)
+                             if(*(cache_0 + pixel[15]) < c_b)
+                              if(*(cache_0 + pixel[1]) > cb)
+                               if(*(cache_0 + pixel[6]) < c_b)
+                                if(*(cache_0 + pixel[7]) < c_b)
+                                 if(*(cache_0 + pixel[9]) < c_b)
+                                  if(*(cache_0 + pixel[11]) < c_b)
+                                   if(*(cache_0 + pixel[13]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else if(*(cache_0 + pixel[1]) < c_b)
+                               if(*(cache_0 + pixel[13]) < c_b)
+                                if(*(cache_0 + pixel[9]) < c_b)
+                                 if(*(cache_0 + pixel[2]) < c_b)
+                                  if(*(cache_0 + pixel[11]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  if(*(cache_0 + pixel[7]) < c_b)
+                                   if(*(cache_0 + pixel[11]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               if(*(cache_0 + pixel[6]) < c_b)
+                                if(*(cache_0 + pixel[7]) < c_b)
+                                 if(*(cache_0 + pixel[9]) < c_b)
+                                  if(*(cache_0 + pixel[13]) < c_b)
+                                   if(*(cache_0 + pixel[11]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           continue;
+                         else if(*(cache_0 + 3) < c_b)
+                          if(*(cache_0 + pixel[2]) > cb)
+                           if(*(cache_0 + pixel[10]) < c_b)
+                            if(*(cache_0 + -3) < c_b)
+                             if(*(cache_0 + pixel[13]) < c_b)
+                              if(*(cache_0 + pixel[9]) < c_b)
+                               if(*(cache_0 + pixel[11]) < c_b)
+                                if(*(cache_0 + pixel[7]) < c_b)
+                                 if(*(cache_0 + pixel[6]) < c_b)
+                                  if(*(cache_0 + pixel[5]) < c_b)
+                                   if(*(cache_0 + pixel[14]) < c_b)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[3]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                  else
+                                   if(*(cache_0 + pixel[14]) < c_b)
+                                    if(*(cache_0 + pixel[15]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  if(*(cache_0 + pixel[1]) < c_b)
+                                   if(*(cache_0 + pixel[14]) < c_b)
+                                    if(*(cache_0 + pixel[15]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else if(*(cache_0 + pixel[2]) < c_b)
+                           if(*(cache_0 + pixel[6]) > cb)
+                            if(*(cache_0 + pixel[13]) < c_b)
+                             if(*(cache_0 + pixel[14]) < c_b)
+                              if(*(cache_0 + pixel[15]) < c_b)
+                               if(*(cache_0 + pixel[11]) < c_b)
+                                if(*(cache_0 + pixel[1]) < c_b)
+                                 if(*(cache_0 + -3) < c_b)
+                                  if(*(cache_0 + pixel[3]) < c_b)
+                                   if(*(cache_0 + pixel[10]) < c_b)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[5]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                  else
+                                   if(*(cache_0 + pixel[9]) < c_b)
+                                    if(*(cache_0 + pixel[10]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else if(*(cache_0 + pixel[6]) < c_b)
+                            if(*(cache_0 + pixel[10]) > cb)
+                             if(*(cache_0 + pixel[15]) < c_b)
+                              if(*(cache_0 + pixel[1]) < c_b)
+                               if(*(cache_0 + pixel[5]) < c_b)
+                                if(*(cache_0 + pixel[14]) < c_b)
+                                 if(*(cache_0 + pixel[3]) < c_b)
+                                  if(*(cache_0 + pixel[7]) < c_b)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + -3) < c_b)
+                                    if(*(cache_0 + pixel[13]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 if(*(cache_0 + pixel[9]) < c_b)
+                                  if(*(cache_0 + pixel[3]) < c_b)
+                                   if(*(cache_0 + pixel[7]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else if(*(cache_0 + pixel[10]) < c_b)
+                             if(*(cache_0 + pixel[3]) > cb)
+                              if(*(cache_0 + pixel[9]) < c_b)
+                               if(*(cache_0 + pixel[11]) < c_b)
+                                if(*(cache_0 + -3) < c_b)
+                                 if(*(cache_0 + pixel[13]) < c_b)
+                                  if(*(cache_0 + pixel[14]) < c_b)
+                                   if(*(cache_0 + pixel[15]) < c_b)
+                                    if(*(cache_0 + pixel[7]) < c_b)
+                                     goto success;
+                                    else
+                                     if(*(cache_0 + pixel[1]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                   else
+                                    if(*(cache_0 + pixel[5]) < c_b)
+                                     if(*(cache_0 + pixel[7]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else if(*(cache_0 + pixel[3]) < c_b)
+                              if(*(cache_0 + pixel[5]) > cb)
+                               if(*(cache_0 + pixel[11]) < c_b)
+                                if(*(cache_0 + -3) < c_b)
+                                 if(*(cache_0 + pixel[13]) < c_b)
+                                  if(*(cache_0 + pixel[14]) < c_b)
+                                   if(*(cache_0 + pixel[15]) < c_b)
+                                    if(*(cache_0 + pixel[1]) < c_b)
+                                     goto success;
+                                    else
+                                     if(*(cache_0 + pixel[7]) < c_b)
+                                      if(*(cache_0 + pixel[9]) < c_b)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else if(*(cache_0 + pixel[5]) < c_b)
+                               if(*(cache_0 + pixel[7]) > cb)
+                                if(*(cache_0 + pixel[1]) < c_b)
+                                 if(*(cache_0 + -3) < c_b)
+                                  if(*(cache_0 + pixel[13]) < c_b)
+                                   if(*(cache_0 + pixel[14]) < c_b)
+                                    if(*(cache_0 + pixel[15]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else if(*(cache_0 + pixel[7]) < c_b)
+                                if(*(cache_0 + pixel[1]) > cb)
+                                 if(*(cache_0 + pixel[9]) < c_b)
+                                  if(*(cache_0 + pixel[11]) < c_b)
+                                   if(*(cache_0 + -3) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else if(*(cache_0 + pixel[1]) < c_b)
+                                 if(*(cache_0 + pixel[9]) < c_b)
+                                  goto success;
+                                 else
+                                  if(*(cache_0 + pixel[14]) < c_b)
+                                   if(*(cache_0 + pixel[15]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 if(*(cache_0 + -3) < c_b)
+                                  if(*(cache_0 + pixel[11]) < c_b)
+                                   if(*(cache_0 + pixel[9]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                if(*(cache_0 + pixel[14]) < c_b)
+                                 if(*(cache_0 + -3) < c_b)
+                                  if(*(cache_0 + pixel[15]) < c_b)
+                                   if(*(cache_0 + pixel[1]) < c_b)
+                                    if(*(cache_0 + pixel[13]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               if(*(cache_0 + -3) < c_b)
+                                if(*(cache_0 + pixel[14]) < c_b)
+                                 if(*(cache_0 + pixel[11]) < c_b)
+                                  if(*(cache_0 + pixel[13]) < c_b)
+                                   if(*(cache_0 + pixel[15]) < c_b)
+                                    if(*(cache_0 + pixel[1]) < c_b)
+                                     goto success;
+                                    else
+                                     if(*(cache_0 + pixel[7]) < c_b)
+                                      if(*(cache_0 + pixel[9]) < c_b)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else
+                              if(*(cache_0 + -3) < c_b)
+                               if(*(cache_0 + pixel[14]) < c_b)
+                                if(*(cache_0 + pixel[11]) < c_b)
+                                 if(*(cache_0 + pixel[13]) < c_b)
+                                  if(*(cache_0 + pixel[9]) < c_b)
+                                   if(*(cache_0 + pixel[7]) < c_b)
+                                    if(*(cache_0 + pixel[15]) < c_b)
+                                     goto success;
+                                    else
+                                     if(*(cache_0 + pixel[5]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                   else
+                                    if(*(cache_0 + pixel[1]) < c_b)
+                                     if(*(cache_0 + pixel[15]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else
+                             if(*(cache_0 + pixel[15]) < c_b)
+                              if(*(cache_0 + pixel[3]) < c_b)
+                               if(*(cache_0 + pixel[5]) < c_b)
+                                if(*(cache_0 + pixel[1]) < c_b)
+                                 if(*(cache_0 + pixel[9]) < c_b)
+                                  if(*(cache_0 + pixel[7]) < c_b)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + -3) < c_b)
+                                    if(*(cache_0 + pixel[13]) < c_b)
+                                     if(*(cache_0 + pixel[14]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  if(*(cache_0 + pixel[14]) < c_b)
+                                   if(*(cache_0 + pixel[7]) < c_b)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + -3) < c_b)
+                                     if(*(cache_0 + pixel[13]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                           else
+                            if(*(cache_0 + -3) < c_b)
+                             if(*(cache_0 + pixel[14]) < c_b)
+                              if(*(cache_0 + pixel[11]) < c_b)
+                               if(*(cache_0 + pixel[15]) < c_b)
+                                if(*(cache_0 + pixel[13]) < c_b)
+                                 if(*(cache_0 + pixel[1]) < c_b)
+                                  if(*(cache_0 + pixel[10]) > cb)
+                                   if(*(cache_0 + pixel[3]) < c_b)
+                                    if(*(cache_0 + pixel[5]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else if(*(cache_0 + pixel[10]) < c_b)
+                                   if(*(cache_0 + pixel[9]) < c_b)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[3]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                  else
+                                   if(*(cache_0 + pixel[5]) < c_b)
+                                    if(*(cache_0 + pixel[3]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                          else
+                           if(*(cache_0 + pixel[11]) < c_b)
+                            if(*(cache_0 + pixel[13]) < c_b)
+                             if(*(cache_0 + pixel[10]) < c_b)
+                              if(*(cache_0 + pixel[7]) < c_b)
+                               if(*(cache_0 + -3) < c_b)
+                                if(*(cache_0 + pixel[9]) < c_b)
+                                 if(*(cache_0 + pixel[14]) > cb)
+                                  if(*(cache_0 + pixel[3]) < c_b)
+                                   if(*(cache_0 + pixel[5]) < c_b)
+                                    if(*(cache_0 + pixel[6]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else if(*(cache_0 + pixel[14]) < c_b)
+                                  if(*(cache_0 + pixel[6]) < c_b)
+                                   if(*(cache_0 + pixel[5]) < c_b)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[15]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                  else
+                                   if(*(cache_0 + pixel[1]) < c_b)
+                                    if(*(cache_0 + pixel[15]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  if(*(cache_0 + pixel[3]) < c_b)
+                                   if(*(cache_0 + pixel[6]) < c_b)
+                                    if(*(cache_0 + pixel[5]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                         else
+                          if(*(cache_0 + -3) < c_b)
+                           if(*(cache_0 + pixel[10]) < c_b)
+                            if(*(cache_0 + pixel[14]) < c_b)
+                             if(*(cache_0 + pixel[11]) < c_b)
+                              if(*(cache_0 + pixel[13]) < c_b)
+                               if(*(cache_0 + pixel[9]) < c_b)
+                                if(*(cache_0 + pixel[2]) > cb)
+                                 if(*(cache_0 + pixel[7]) < c_b)
+                                  if(*(cache_0 + pixel[1]) < c_b)
+                                   if(*(cache_0 + pixel[15]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   if(*(cache_0 + pixel[6]) < c_b)
+                                    if(*(cache_0 + pixel[15]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else if(*(cache_0 + pixel[2]) < c_b)
+                                 if(*(cache_0 + pixel[15]) < c_b)
+                                  if(*(cache_0 + pixel[1]) < c_b)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[6]) < c_b)
+                                    if(*(cache_0 + pixel[7]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 if(*(cache_0 + pixel[7]) < c_b)
+                                  if(*(cache_0 + pixel[15]) < c_b)
+                                   if(*(cache_0 + pixel[1]) < c_b)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[6]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           continue;
+                        else
+                         if(*(cache_0 + pixel[3]) < c_b)
+                          if(*(cache_0 + -3) > cb)
+                           if(*(cache_0 + pixel[13]) < c_b)
+                            if(*(cache_0 + pixel[6]) < c_b)
+                             if(*(cache_0 + pixel[1]) < c_b)
+                              if(*(cache_0 + pixel[2]) < c_b)
+                               if(*(cache_0 + 3) < c_b)
+                                if(*(cache_0 + pixel[5]) < c_b)
+                                 if(*(cache_0 + pixel[7]) < c_b)
+                                  if(*(cache_0 + pixel[14]) < c_b)
+                                   if(*(cache_0 + pixel[15]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else if(*(cache_0 + -3) < c_b)
+                           if(*(cache_0 + pixel[14]) < c_b)
+                            if(*(cache_0 + pixel[2]) < c_b)
+                             if(*(cache_0 + pixel[5]) > cb)
+                              if(*(cache_0 + pixel[9]) > cb)
+                               if(*(cache_0 + 3) < c_b)
+                                if(*(cache_0 + pixel[1]) < c_b)
+                                 if(*(cache_0 + pixel[10]) < c_b)
+                                  if(*(cache_0 + pixel[11]) < c_b)
+                                   if(*(cache_0 + pixel[13]) < c_b)
+                                    if(*(cache_0 + pixel[15]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else if(*(cache_0 + pixel[9]) < c_b)
+                               if(*(cache_0 + pixel[11]) < c_b)
+                                if(*(cache_0 + pixel[1]) < c_b)
+                                 if(*(cache_0 + pixel[13]) < c_b)
+                                  if(*(cache_0 + pixel[15]) < c_b)
+                                   if(*(cache_0 + pixel[10]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               if(*(cache_0 + 3) < c_b)
+                                if(*(cache_0 + pixel[10]) < c_b)
+                                 if(*(cache_0 + pixel[1]) < c_b)
+                                  if(*(cache_0 + pixel[11]) < c_b)
+                                   if(*(cache_0 + pixel[13]) < c_b)
+                                    if(*(cache_0 + pixel[15]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else if(*(cache_0 + pixel[5]) < c_b)
+                              if(*(cache_0 + pixel[15]) < c_b)
+                               if(*(cache_0 + pixel[11]) > cb)
+                                if(*(cache_0 + pixel[6]) < c_b)
+                                 if(*(cache_0 + pixel[1]) < c_b)
+                                  if(*(cache_0 + 3) < c_b)
+                                   if(*(cache_0 + pixel[13]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else if(*(cache_0 + pixel[11]) < c_b)
+                                if(*(cache_0 + pixel[1]) < c_b)
+                                 if(*(cache_0 + pixel[13]) < c_b)
+                                  if(*(cache_0 + 3) < c_b)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[9]) < c_b)
+                                    if(*(cache_0 + pixel[10]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                if(*(cache_0 + pixel[6]) < c_b)
+                                 if(*(cache_0 + pixel[13]) < c_b)
+                                  if(*(cache_0 + 3) < c_b)
+                                   if(*(cache_0 + pixel[1]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               continue;
+                             else
+                              if(*(cache_0 + pixel[10]) < c_b)
+                               if(*(cache_0 + pixel[9]) > cb)
+                                if(*(cache_0 + 3) < c_b)
+                                 if(*(cache_0 + pixel[1]) < c_b)
+                                  if(*(cache_0 + pixel[11]) < c_b)
+                                   if(*(cache_0 + pixel[13]) < c_b)
+                                    if(*(cache_0 + pixel[15]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else if(*(cache_0 + pixel[9]) < c_b)
+                                if(*(cache_0 + pixel[11]) < c_b)
+                                 if(*(cache_0 + pixel[15]) < c_b)
+                                  if(*(cache_0 + pixel[1]) < c_b)
+                                   if(*(cache_0 + pixel[13]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                if(*(cache_0 + 3) < c_b)
+                                 if(*(cache_0 + pixel[11]) < c_b)
+                                  if(*(cache_0 + pixel[15]) < c_b)
+                                   if(*(cache_0 + pixel[1]) < c_b)
+                                    if(*(cache_0 + pixel[13]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           if(*(cache_0 + pixel[7]) < c_b)
+                            if(*(cache_0 + pixel[13]) < c_b)
+                             if(*(cache_0 + pixel[6]) < c_b)
+                              if(*(cache_0 + pixel[14]) < c_b)
+                               if(*(cache_0 + pixel[5]) < c_b)
+                                if(*(cache_0 + pixel[2]) < c_b)
+                                 if(*(cache_0 + pixel[1]) < c_b)
+                                  if(*(cache_0 + pixel[15]) < c_b)
+                                   if(*(cache_0 + 3) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                         else
+                          continue;
+                       else
+                        if(*(cache_0 + pixel[8]) > cb)
+                         if(*(cache_0 + pixel[11]) > cb)
+                          if(*(cache_0 + 3) > cb)
+                           if(*(cache_0 + pixel[6]) > cb)
+                            if(*(cache_0 + pixel[10]) > cb)
+                             if(*(cache_0 + pixel[2]) > cb)
+                              if(*(cache_0 + pixel[7]) > cb)
+                               if(*(cache_0 + pixel[5]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[3]) > cb)
+                                  if(*(cache_0 + pixel[9]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else if(*(cache_0 + pixel[3]) < c_b)
+                                  if(*(cache_0 + pixel[9]) > cb)
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    if(*(cache_0 + pixel[14]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    if(*(cache_0 + pixel[13]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else if(*(cache_0 + -3) < c_b)
+                                 if(*(cache_0 + pixel[1]) > cb)
+                                  if(*(cache_0 + pixel[3]) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 if(*(cache_0 + pixel[1]) > cb)
+                                  if(*(cache_0 + pixel[9]) > cb)
+                                   if(*(cache_0 + pixel[3]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else if(*(cache_0 + pixel[2]) < c_b)
+                              if(*(cache_0 + pixel[13]) > cb)
+                               if(*(cache_0 + pixel[9]) > cb)
+                                if(*(cache_0 + pixel[5]) > cb)
+                                 if(*(cache_0 + pixel[7]) > cb)
+                                  if(*(cache_0 + pixel[3]) > cb)
+                                   if(*(cache_0 + -3) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else if(*(cache_0 + pixel[3]) < c_b)
+                                   if(*(cache_0 + -3) > cb)
+                                    if(*(cache_0 + pixel[14]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    if(*(cache_0 + -3) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              if(*(cache_0 + pixel[13]) > cb)
+                               if(*(cache_0 + pixel[14]) > cb)
+                                if(*(cache_0 + pixel[9]) > cb)
+                                 if(*(cache_0 + pixel[7]) > cb)
+                                  if(*(cache_0 + pixel[5]) > cb)
+                                   if(*(cache_0 + -3) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else if(*(cache_0 + pixel[14]) < c_b)
+                                if(*(cache_0 + pixel[3]) > cb)
+                                 if(*(cache_0 + pixel[5]) > cb)
+                                  if(*(cache_0 + pixel[7]) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    if(*(cache_0 + -3) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                if(*(cache_0 + pixel[3]) > cb)
+                                 if(*(cache_0 + pixel[7]) > cb)
+                                  if(*(cache_0 + -3) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    if(*(cache_0 + pixel[5]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else if(*(cache_0 + 3) < c_b)
+                           if(*(cache_0 + pixel[5]) > cb)
+                            if(*(cache_0 + pixel[15]) > cb)
+                             if(*(cache_0 + pixel[6]) > cb)
+                              if(*(cache_0 + pixel[7]) > cb)
+                               if(*(cache_0 + pixel[9]) > cb)
+                                if(*(cache_0 + pixel[10]) > cb)
+                                 if(*(cache_0 + -3) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           if(*(cache_0 + pixel[15]) > cb)
+                            if(*(cache_0 + pixel[5]) > cb)
+                             if(*(cache_0 + pixel[13]) > cb)
+                              if(*(cache_0 + pixel[10]) > cb)
+                               if(*(cache_0 + pixel[6]) > cb)
+                                if(*(cache_0 + pixel[14]) > cb)
+                                 if(*(cache_0 + pixel[9]) > cb)
+                                  if(*(cache_0 + pixel[7]) > cb)
+                                   if(*(cache_0 + -3) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                         else
+                          continue;
+                        else if(*(cache_0 + pixel[8]) < c_b)
+                         if(*(cache_0 + pixel[11]) < c_b)
+                          if(*(cache_0 + 3) > cb)
+                           if(*(cache_0 + pixel[5]) < c_b)
+                            if(*(cache_0 + pixel[13]) < c_b)
+                             if(*(cache_0 + pixel[6]) < c_b)
+                              if(*(cache_0 + pixel[7]) < c_b)
+                               if(*(cache_0 + pixel[9]) < c_b)
+                                if(*(cache_0 + pixel[10]) < c_b)
+                                 if(*(cache_0 + -3) < c_b)
+                                  if(*(cache_0 + pixel[14]) < c_b)
+                                   if(*(cache_0 + pixel[15]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else if(*(cache_0 + 3) < c_b)
+                           if(*(cache_0 + pixel[6]) < c_b)
+                            if(*(cache_0 + pixel[13]) > cb)
+                             if(*(cache_0 + pixel[2]) < c_b)
+                              if(*(cache_0 + pixel[9]) < c_b)
+                               if(*(cache_0 + pixel[5]) < c_b)
+                                if(*(cache_0 + pixel[1]) > cb)
+                                 if(*(cache_0 + pixel[3]) < c_b)
+                                  if(*(cache_0 + pixel[7]) < c_b)
+                                   if(*(cache_0 + pixel[10]) < c_b)
+                                    if(*(cache_0 + -3) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else if(*(cache_0 + pixel[1]) < c_b)
+                                 if(*(cache_0 + pixel[10]) < c_b)
+                                  if(*(cache_0 + pixel[3]) < c_b)
+                                   if(*(cache_0 + pixel[7]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 if(*(cache_0 + -3) < c_b)
+                                  if(*(cache_0 + pixel[3]) < c_b)
+                                   if(*(cache_0 + pixel[7]) < c_b)
+                                    if(*(cache_0 + pixel[10]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else if(*(cache_0 + pixel[13]) < c_b)
+                             if(*(cache_0 + pixel[10]) < c_b)
+                              if(*(cache_0 + pixel[7]) < c_b)
+                               if(*(cache_0 + pixel[5]) < c_b)
+                                if(*(cache_0 + pixel[3]) > cb)
+                                 if(*(cache_0 + pixel[9]) < c_b)
+                                  if(*(cache_0 + -3) < c_b)
+                                   if(*(cache_0 + pixel[14]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else if(*(cache_0 + pixel[3]) < c_b)
+                                 if(*(cache_0 + pixel[9]) < c_b)
+                                  if(*(cache_0 + -3) < c_b)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[1]) < c_b)
+                                    if(*(cache_0 + pixel[2]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 if(*(cache_0 + pixel[14]) < c_b)
+                                  if(*(cache_0 + -3) < c_b)
+                                   if(*(cache_0 + pixel[9]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             if(*(cache_0 + pixel[2]) < c_b)
+                              if(*(cache_0 + pixel[10]) < c_b)
+                               if(*(cache_0 + pixel[1]) > cb)
+                                if(*(cache_0 + pixel[3]) < c_b)
+                                 if(*(cache_0 + pixel[5]) < c_b)
+                                  if(*(cache_0 + pixel[7]) < c_b)
+                                   if(*(cache_0 + pixel[9]) < c_b)
+                                    if(*(cache_0 + -3) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else if(*(cache_0 + pixel[1]) < c_b)
+                                if(*(cache_0 + pixel[3]) < c_b)
+                                 if(*(cache_0 + pixel[7]) < c_b)
+                                  if(*(cache_0 + pixel[9]) < c_b)
+                                   if(*(cache_0 + pixel[5]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                if(*(cache_0 + -3) < c_b)
+                                 if(*(cache_0 + pixel[3]) < c_b)
+                                  if(*(cache_0 + pixel[5]) < c_b)
+                                   if(*(cache_0 + pixel[9]) < c_b)
+                                    if(*(cache_0 + pixel[7]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                           else
+                            continue;
+                          else
+                           if(*(cache_0 + pixel[15]) < c_b)
+                            if(*(cache_0 + pixel[5]) < c_b)
+                             if(*(cache_0 + pixel[14]) < c_b)
+                              if(*(cache_0 + pixel[6]) < c_b)
+                               if(*(cache_0 + pixel[13]) < c_b)
+                                if(*(cache_0 + pixel[10]) < c_b)
+                                 if(*(cache_0 + pixel[9]) < c_b)
+                                  if(*(cache_0 + pixel[7]) < c_b)
+                                   if(*(cache_0 + -3) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                         else
+                          continue;
+                        else
+                         continue;
+
+                       success:
+                               corners.push_back(ImageRef(cache_0-line_min, 
y));
+               }
+       }
+}
+}

Index: cvd_src/fast/fast_11_score.cxx
===================================================================
RCS file: cvd_src/fast/fast_11_score.cxx
diff -N cvd_src/fast/fast_11_score.cxx
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ cvd_src/fast/fast_11_score.cxx      28 Jun 2007 01:32:58 -0000      1.1.2.1
@@ -0,0 +1,2600 @@
+#include <vector>
+#include <cvd/image.h>
+#include <cvd/byte.h>
+
+// This is mechanically generated code. 
+
+using namespace std;
+namespace CVD
+{
+
+static inline bool test_gt_set(int a, int b, int& min_diff)
+{
+       if(a > b)
+       {
+               if(a-b < min_diff)
+                       min_diff = a-b;
+
+               return 1;
+       }
+       return 0;
+}
+
+inline int fast_corner_score_11(const byte* cache_0, const int offset[], int b)
+{      
+       b++;
+       //This function computes the score for a pixel which is known to be 
+       //a corner at barrier b. So we start looking at b+1 and above to 
+       //establish where it stops becoming a corner.
+       for(;;)
+       {
+               int cb = *cache_0 + b;
+               int c_b= *cache_0 - b;
+               int min_diff = INT_MAX;
+               if(test_gt_set(*(cache_0 + offset[0]), cb, min_diff))
+                if(test_gt_set(*(cache_0 + offset[8]), cb, min_diff))
+                 if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                   if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                          b += min_diff;
+                         else
+                          if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                        else if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                         if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[10]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[10]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                        if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              if(test_gt_set(*(cache_0 + offset[1]), cb, 
min_diff))
+                               b += min_diff;
+                              else
+                               break;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[1]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                              if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                               b += min_diff;
+                              else
+                               break;
+                             else
+                              break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                      else if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                       if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[5]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            if(test_gt_set(*(cache_0 + offset[10]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[1]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[1]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[10]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[10]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[1]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                     else if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                      if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                           b += min_diff;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                          if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                    else if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                     if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[7]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             if(test_gt_set(*(cache_0 + offset[1]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[1]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             if(test_gt_set(*(cache_0 + offset[7]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                   else if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                    if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            if(test_gt_set(*(cache_0 + offset[4]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[5]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[4]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[5]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                            b += min_diff;
+                           else if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[4]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[5]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            if(test_gt_set(*(cache_0 + offset[5]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[4]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[4]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[5]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                  else if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                   if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[5]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            if(test_gt_set(*(cache_0 + offset[10]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[10]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[10]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            if(test_gt_set(*(cache_0 + offset[4]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[7]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          break;
+                        else if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                         if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[5]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[4]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                 else if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                   if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                           b += min_diff;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[1]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                         else if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                          if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[2]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[1]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[6]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[7]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   break;
+                 else
+                  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                   if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                           b += min_diff;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[6]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                         else
+                          break;
+                        else if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                         if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[6]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[5]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                        if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   break;
+                else if(test_gt_set(c_b, *(cache_0 + offset[8]), min_diff))
+                 if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                  if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                   if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                           b += min_diff;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                         else if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                          if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[5]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[4]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[6]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[7]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   break;
+                 else if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                  if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                   if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[7]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                   if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                    if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                         if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                          if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                   else
+                    if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                  else
+                   break;
+                 else
+                  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                   if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[7]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   break;
+                else
+                 if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                   if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          if(test_gt_set(*(cache_0 + offset[10]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         break;
+                       else if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                        if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[1]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                      else
+                       break;
+                     else
+                      break;
+                    else if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                     if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[1]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                   else
+                    break;
+                  else if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                   if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[1]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                 else
+                  break;
+               else if(test_gt_set(c_b, *(cache_0 + offset[0]), min_diff))
+                if(test_gt_set(*(cache_0 + offset[8]), cb, min_diff))
+                 if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                  if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                   if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                           b += min_diff;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                         else
+                          if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[4]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   break;
+                 else if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                  if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                   if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[4]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                   if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                      if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
+                         if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         break;
+                       else
+                        if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                      else
+                       if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[6]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                  else
+                   break;
+                 else
+                  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                   if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[4]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   break;
+                else if(test_gt_set(c_b, *(cache_0 + offset[8]), min_diff))
+                 if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                  if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                   if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
+                      if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else
+                          if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   break;
+                 else if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                  if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                   if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                            b += min_diff;
+                           else
+                            if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                          else
+                           if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                   if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                            b += min_diff;
+                           else
+                            if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                          else
+                           if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                    if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                           b += min_diff;
+                          else
+                           if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          break;
+                        else
+                         if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                     if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                             b += min_diff;
+                            else
+                             if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                           else
+                            if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                      if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                             b += min_diff;
+                            else
+                             if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                              if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                               b += min_diff;
+                              else
+                               break;
+                             else
+                              break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                       if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                        if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                          b += min_diff;
+                         else
+                          if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                      else
+                       if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                             b += min_diff;
+                            else
+                             if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                              if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                               b += min_diff;
+                              else
+                               break;
+                             else
+                              break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                     else
+                      if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                             b += min_diff;
+                            else
+                             if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                           else
+                            if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                    else
+                     if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                           b += min_diff;
+                          else
+                           if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                            b += min_diff;
+                           else
+                            if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                          else
+                           break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                   else
+                    if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                          if(test_gt_set(*(cache_0 + offset[10]), cb, 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                            b += min_diff;
+                           else
+                            if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                          else
+                           if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                  else
+                   if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                         if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[6]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[6]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                            b += min_diff;
+                           else
+                            if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                          else
+                           if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[6]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                 else
+                  if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                   if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                        if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           if(test_gt_set(c_b, *(cache_0 + offset[6]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          break;
+                        else if(test_gt_set(c_b, *(cache_0 + offset[2]), 
min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                           b += min_diff;
+                          else
+                           if(test_gt_set(c_b, *(cache_0 + offset[6]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          break;
+                        else
+                         if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                            b += min_diff;
+                           else
+                            if(test_gt_set(c_b, *(cache_0 + offset[6]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   break;
+                else
+                 if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                   if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                   if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                     if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                     else if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
+                       if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[4]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[4]), 
min_diff))
+                           b += min_diff;
+                          else
+                           if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[4]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                      else
+                       break;
+                     else
+                      if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                       if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                      else
+                       break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[4]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                 else
+                  break;
+               else
+                if(test_gt_set(*(cache_0 + offset[8]), cb, min_diff))
+                 if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                   if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                           b += min_diff;
+                          else
+                           break;
+                         else if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                          if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                        else if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                         if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[3]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        break;
+                      else
+                       break;
+                     else if(test_gt_set(c_b, *(cache_0 + offset[2]), 
min_diff))
+                      if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                        if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[5]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                      else
+                       break;
+                    else
+                     break;
+                   else
+                    break;
+                  else if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                   if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                 else
+                  break;
+                else if(test_gt_set(c_b, *(cache_0 + offset[8]), min_diff))
+                 if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                   if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                   if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                    if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                        if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                        if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                           b += min_diff;
+                          else
+                           if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[2]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          break;
+                        else
+                         if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                       if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                      else
+                       break;
+                     else
+                      break;
+                   else
+                    break;
+                  else
+                   if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                 else
+                  break;
+                else
+                 break;
+
+       }
+
+       return b-1;
+}
+
+void fast_corner_score_11(const SubImage<byte>& i, const vector<ImageRef>& 
corners, int b, vector<int>& scores)
+{
+       scores.resize(corners.size());
+               int pixel[16] = {
+               0 + i.row_stride() * 3,
+               1 + i.row_stride() * 3,
+               2 + i.row_stride() * 2,
+               3 + i.row_stride() * 1,
+               3 + i.row_stride() * 0,
+               3 + i.row_stride() * -1,
+               2 + i.row_stride() * -2,
+               1 + i.row_stride() * -3,
+               0 + i.row_stride() * -3,
+               -1 + i.row_stride() * -3,
+               -2 + i.row_stride() * -2,
+               -3 + i.row_stride() * -1,
+               -3 + i.row_stride() * 0,
+               -3 + i.row_stride() * 1,
+               -2 + i.row_stride() * 2,
+               -1 + i.row_stride() * 3,
+       };
+       for(unsigned int n=0; n < corners.size(); n++)
+               scores[n] = fast_corner_score_11(&i[corners[n]], pixel, b);
+}
+
+}

Index: cvd_src/fast/fast_12_detect.cxx
===================================================================
RCS file: cvd_src/fast/fast_12_detect.cxx
diff -N cvd_src/fast/fast_12_detect.cxx
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ cvd_src/fast/fast_12_detect.cxx     28 Jun 2007 01:32:59 -0000      1.1.2.1
@@ -0,0 +1,2260 @@
+#include <vector>
+#include <cvd/image.h>
+#include <cvd/byte.h>
+
+// This is mechanically generated code. 
+
+using namespace std;
+namespace CVD
+{
+void fast_corner_detect_plain_12(const SubImage<byte>& i, vector<ImageRef>& 
corners, int b)
+{
+       int y, cb, c_b;
+       const byte  *line_max, *line_min;
+       const byte* cache_0;
+
+       int pixel[16] = {
+               0 + i.row_stride() * 3,
+               1 + i.row_stride() * 3,
+               2 + i.row_stride() * 2,
+               3 + i.row_stride() * 1,
+               3 + i.row_stride() * 0,
+               3 + i.row_stride() * -1,
+               2 + i.row_stride() * -2,
+               1 + i.row_stride() * -3,
+               0 + i.row_stride() * -3,
+               -1 + i.row_stride() * -3,
+               -2 + i.row_stride() * -2,
+               -3 + i.row_stride() * -1,
+               -3 + i.row_stride() * 0,
+               -3 + i.row_stride() * 1,
+               -2 + i.row_stride() * 2,
+               -1 + i.row_stride() * 3,
+       };
+
+       for(y = 3 ; y < i.size().y - 3; y++)
+       {
+               cache_0 = &i[y][3];
+               line_min = cache_0 - 3;
+               line_max = &i[y][i.size().x - 3];
+
+
+               for(; cache_0 < line_max;cache_0++)
+               {
+                       cb = *cache_0 + b;
+                       c_b= *cache_0 - b;
+  
+                       if(*(cache_0 + pixel[8]) > cb)
+                        if(*(cache_0 + pixel[0]) > cb)
+                         if(*(cache_0 + pixel[3]) > cb)
+                          if(*(cache_0 + pixel[6]) > cb)
+                           if(*(cache_0 + pixel[2]) > cb)
+                            if(*(cache_0 + pixel[14]) > cb)
+                             if(*(cache_0 + 3) > cb)
+                              if(*(cache_0 + pixel[5]) > cb)
+                               if(*(cache_0 + pixel[15]) > cb)
+                                if(*(cache_0 + pixel[7]) > cb)
+                                 if(*(cache_0 + pixel[1]) > cb)
+                                  if(*(cache_0 + pixel[9]) > cb)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                 else if(*(cache_0 + pixel[1]) < c_b)
+                                  if(*(cache_0 + pixel[9]) > cb)
+                                   if(*(cache_0 + pixel[10]) > cb)
+                                    if(*(cache_0 + pixel[11]) > cb)
+                                     if(*(cache_0 + -3) > cb)
+                                      if(*(cache_0 + pixel[13]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  if(*(cache_0 + pixel[11]) > cb)
+                                   if(*(cache_0 + pixel[10]) > cb)
+                                    if(*(cache_0 + -3) > cb)
+                                     if(*(cache_0 + pixel[13]) > cb)
+                                      if(*(cache_0 + pixel[9]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else if(*(cache_0 + pixel[7]) < c_b)
+                                 if(*(cache_0 + pixel[1]) > cb)
+                                  if(*(cache_0 + pixel[11]) > cb)
+                                   if(*(cache_0 + -3) > cb)
+                                    if(*(cache_0 + pixel[13]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 if(*(cache_0 + pixel[11]) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + pixel[1]) > cb)
+                                    if(*(cache_0 + -3) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else if(*(cache_0 + pixel[15]) < c_b)
+                                if(*(cache_0 + pixel[7]) > cb)
+                                 if(*(cache_0 + pixel[9]) > cb)
+                                  if(*(cache_0 + pixel[10]) > cb)
+                                   if(*(cache_0 + pixel[11]) > cb)
+                                    if(*(cache_0 + pixel[1]) > cb)
+                                     goto success;
+                                    else
+                                     if(*(cache_0 + -3) > cb)
+                                      if(*(cache_0 + pixel[13]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                if(*(cache_0 + pixel[10]) > cb)
+                                 if(*(cache_0 + pixel[11]) > cb)
+                                  if(*(cache_0 + pixel[7]) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    if(*(cache_0 + pixel[1]) > cb)
+                                     goto success;
+                                    else
+                                     if(*(cache_0 + -3) > cb)
+                                      if(*(cache_0 + pixel[13]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else if(*(cache_0 + pixel[5]) < c_b)
+                               if(*(cache_0 + pixel[1]) > cb)
+                                if(*(cache_0 + pixel[9]) > cb)
+                                 if(*(cache_0 + pixel[10]) > cb)
+                                  if(*(cache_0 + pixel[11]) > cb)
+                                   if(*(cache_0 + -3) > cb)
+                                    if(*(cache_0 + pixel[13]) > cb)
+                                     if(*(cache_0 + pixel[15]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               if(*(cache_0 + pixel[11]) > cb)
+                                if(*(cache_0 + pixel[9]) > cb)
+                                 if(*(cache_0 + pixel[15]) > cb)
+                                  if(*(cache_0 + pixel[10]) > cb)
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    if(*(cache_0 + pixel[1]) > cb)
+                                     if(*(cache_0 + -3) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else if(*(cache_0 + 3) < c_b)
+                              if(*(cache_0 + pixel[9]) > cb)
+                               if(*(cache_0 + pixel[10]) > cb)
+                                if(*(cache_0 + pixel[11]) > cb)
+                                 if(*(cache_0 + -3) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + pixel[15]) > cb)
+                                    if(*(cache_0 + pixel[1]) > cb)
+                                     goto success;
+                                    else
+                                     if(*(cache_0 + pixel[5]) > cb)
+                                      if(*(cache_0 + pixel[7]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              if(*(cache_0 + -3) > cb)
+                               if(*(cache_0 + pixel[10]) > cb)
+                                if(*(cache_0 + pixel[11]) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[15]) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    if(*(cache_0 + pixel[1]) > cb)
+                                     goto success;
+                                    else
+                                     if(*(cache_0 + pixel[5]) > cb)
+                                      if(*(cache_0 + pixel[7]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else if(*(cache_0 + pixel[14]) < c_b)
+                             if(*(cache_0 + pixel[9]) > cb)
+                              if(*(cache_0 + 3) > cb)
+                               if(*(cache_0 + pixel[5]) > cb)
+                                if(*(cache_0 + pixel[7]) > cb)
+                                 if(*(cache_0 + pixel[10]) > cb)
+                                  if(*(cache_0 + pixel[1]) > cb)
+                                   if(*(cache_0 + pixel[11]) > cb)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[15]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                  else
+                                   if(*(cache_0 + pixel[11]) > cb)
+                                    if(*(cache_0 + -3) > cb)
+                                     if(*(cache_0 + pixel[13]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             if(*(cache_0 + pixel[10]) > cb)
+                              if(*(cache_0 + pixel[5]) > cb)
+                               if(*(cache_0 + pixel[7]) > cb)
+                                if(*(cache_0 + pixel[15]) > cb)
+                                 if(*(cache_0 + 3) > cb)
+                                  if(*(cache_0 + pixel[1]) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else if(*(cache_0 + pixel[1]) < c_b)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    if(*(cache_0 + pixel[11]) > cb)
+                                     if(*(cache_0 + -3) > cb)
+                                      if(*(cache_0 + pixel[13]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   if(*(cache_0 + pixel[11]) > cb)
+                                    if(*(cache_0 + pixel[13]) > cb)
+                                     if(*(cache_0 + -3) > cb)
+                                      if(*(cache_0 + pixel[9]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else if(*(cache_0 + pixel[15]) < c_b)
+                                 if(*(cache_0 + 3) > cb)
+                                  if(*(cache_0 + pixel[9]) > cb)
+                                   if(*(cache_0 + pixel[11]) > cb)
+                                    if(*(cache_0 + pixel[1]) > cb)
+                                     goto success;
+                                    else
+                                     if(*(cache_0 + -3) > cb)
+                                      if(*(cache_0 + pixel[13]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 if(*(cache_0 + pixel[11]) > cb)
+                                  if(*(cache_0 + 3) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    if(*(cache_0 + pixel[1]) > cb)
+                                     goto success;
+                                    else if(*(cache_0 + pixel[1]) < c_b)
+                                     if(*(cache_0 + -3) > cb)
+                                      if(*(cache_0 + pixel[13]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                    else
+                                     if(*(cache_0 + pixel[13]) > cb)
+                                      if(*(cache_0 + -3) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                           else if(*(cache_0 + pixel[2]) < c_b)
+                            if(*(cache_0 + pixel[11]) > cb)
+                             if(*(cache_0 + pixel[7]) > cb)
+                              if(*(cache_0 + pixel[9]) > cb)
+                               if(*(cache_0 + pixel[10]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + pixel[15]) > cb)
+                                    if(*(cache_0 + pixel[5]) > cb)
+                                     goto success;
+                                    else
+                                     if(*(cache_0 + pixel[1]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                   else
+                                    if(*(cache_0 + 3) > cb)
+                                     if(*(cache_0 + pixel[5]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            if(*(cache_0 + pixel[11]) > cb)
+                             if(*(cache_0 + pixel[10]) > cb)
+                              if(*(cache_0 + pixel[13]) > cb)
+                               if(*(cache_0 + pixel[14]) > cb)
+                                if(*(cache_0 + pixel[9]) > cb)
+                                 if(*(cache_0 + -3) > cb)
+                                  if(*(cache_0 + pixel[7]) > cb)
+                                   if(*(cache_0 + pixel[5]) > cb)
+                                    if(*(cache_0 + 3) > cb)
+                                     goto success;
+                                    else
+                                     if(*(cache_0 + pixel[15]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                   else
+                                    if(*(cache_0 + pixel[1]) > cb)
+                                     if(*(cache_0 + pixel[15]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                          else if(*(cache_0 + pixel[6]) < c_b)
+                           if(*(cache_0 + pixel[13]) > cb)
+                            if(*(cache_0 + pixel[2]) > cb)
+                             if(*(cache_0 + pixel[1]) > cb)
+                              if(*(cache_0 + pixel[10]) > cb)
+                               if(*(cache_0 + pixel[11]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[14]) > cb)
+                                  if(*(cache_0 + pixel[15]) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + 3) > cb)
+                                     if(*(cache_0 + pixel[5]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           if(*(cache_0 + -3) > cb)
+                            if(*(cache_0 + pixel[14]) > cb)
+                             if(*(cache_0 + pixel[2]) > cb)
+                              if(*(cache_0 + pixel[10]) > cb)
+                               if(*(cache_0 + pixel[15]) > cb)
+                                if(*(cache_0 + pixel[1]) > cb)
+                                 if(*(cache_0 + pixel[11]) > cb)
+                                  if(*(cache_0 + pixel[9]) > cb)
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else if(*(cache_0 + pixel[9]) < c_b)
+                                   if(*(cache_0 + 3) > cb)
+                                    if(*(cache_0 + pixel[5]) > cb)
+                                     if(*(cache_0 + pixel[13]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   if(*(cache_0 + pixel[5]) > cb)
+                                    if(*(cache_0 + pixel[13]) > cb)
+                                     if(*(cache_0 + 3) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                         else if(*(cache_0 + pixel[3]) < c_b)
+                          if(*(cache_0 + pixel[14]) > cb)
+                           if(*(cache_0 + pixel[7]) > cb)
+                            if(*(cache_0 + pixel[11]) > cb)
+                             if(*(cache_0 + -3) > cb)
+                              if(*(cache_0 + pixel[9]) > cb)
+                               if(*(cache_0 + pixel[10]) > cb)
+                                if(*(cache_0 + pixel[13]) > cb)
+                                 if(*(cache_0 + pixel[1]) > cb)
+                                  if(*(cache_0 + pixel[15]) > cb)
+                                   if(*(cache_0 + pixel[6]) > cb)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[2]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  if(*(cache_0 + pixel[5]) > cb)
+                                   if(*(cache_0 + pixel[6]) > cb)
+                                    if(*(cache_0 + pixel[15]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           continue;
+                         else
+                          if(*(cache_0 + -3) > cb)
+                           if(*(cache_0 + pixel[10]) > cb)
+                            if(*(cache_0 + pixel[14]) > cb)
+                             if(*(cache_0 + pixel[7]) > cb)
+                              if(*(cache_0 + pixel[11]) > cb)
+                               if(*(cache_0 + pixel[1]) > cb)
+                                if(*(cache_0 + pixel[15]) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[6]) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   if(*(cache_0 + pixel[2]) > cb)
+                                    if(*(cache_0 + pixel[9]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else if(*(cache_0 + pixel[1]) < c_b)
+                                if(*(cache_0 + pixel[5]) > cb)
+                                 if(*(cache_0 + pixel[6]) > cb)
+                                  if(*(cache_0 + pixel[9]) > cb)
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    if(*(cache_0 + pixel[15]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                if(*(cache_0 + pixel[5]) > cb)
+                                 if(*(cache_0 + pixel[15]) > cb)
+                                  if(*(cache_0 + pixel[6]) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    if(*(cache_0 + pixel[13]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           continue;
+                        else if(*(cache_0 + pixel[0]) < c_b)
+                         if(*(cache_0 + 3) > cb)
+                          if(*(cache_0 + -3) > cb)
+                           if(*(cache_0 + pixel[11]) > cb)
+                            if(*(cache_0 + pixel[7]) > cb)
+                             if(*(cache_0 + pixel[9]) > cb)
+                              if(*(cache_0 + pixel[5]) > cb)
+                               if(*(cache_0 + pixel[6]) > cb)
+                                if(*(cache_0 + pixel[10]) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[3]) > cb)
+                                   if(*(cache_0 + pixel[2]) > cb)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[14]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                  else
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    if(*(cache_0 + pixel[15]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  if(*(cache_0 + pixel[1]) > cb)
+                                   if(*(cache_0 + pixel[2]) > cb)
+                                    if(*(cache_0 + pixel[3]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           continue;
+                         else if(*(cache_0 + 3) < c_b)
+                          if(*(cache_0 + -3) < c_b)
+                           if(*(cache_0 + pixel[2]) < c_b)
+                            if(*(cache_0 + pixel[14]) < c_b)
+                             if(*(cache_0 + pixel[11]) > cb)
+                              if(*(cache_0 + pixel[6]) < c_b)
+                               if(*(cache_0 + pixel[1]) < c_b)
+                                if(*(cache_0 + pixel[3]) < c_b)
+                                 if(*(cache_0 + pixel[5]) < c_b)
+                                  if(*(cache_0 + pixel[7]) < c_b)
+                                   if(*(cache_0 + pixel[13]) < c_b)
+                                    if(*(cache_0 + pixel[15]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else if(*(cache_0 + pixel[11]) < c_b)
+                              if(*(cache_0 + pixel[5]) > cb)
+                               if(*(cache_0 + pixel[1]) < c_b)
+                                if(*(cache_0 + pixel[3]) < c_b)
+                                 if(*(cache_0 + pixel[9]) < c_b)
+                                  if(*(cache_0 + pixel[10]) < c_b)
+                                   if(*(cache_0 + pixel[13]) < c_b)
+                                    if(*(cache_0 + pixel[15]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else if(*(cache_0 + pixel[5]) < c_b)
+                               if(*(cache_0 + pixel[3]) < c_b)
+                                if(*(cache_0 + pixel[15]) < c_b)
+                                 if(*(cache_0 + pixel[7]) > cb)
+                                  if(*(cache_0 + pixel[10]) > cb)
+                                   if(*(cache_0 + pixel[1]) < c_b)
+                                    if(*(cache_0 + pixel[6]) < c_b)
+                                     if(*(cache_0 + pixel[13]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else if(*(cache_0 + pixel[10]) < c_b)
+                                   if(*(cache_0 + pixel[1]) < c_b)
+                                    if(*(cache_0 + pixel[13]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   if(*(cache_0 + pixel[6]) < c_b)
+                                    if(*(cache_0 + pixel[1]) < c_b)
+                                     if(*(cache_0 + pixel[13]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else if(*(cache_0 + pixel[7]) < c_b)
+                                  if(*(cache_0 + pixel[1]) < c_b)
+                                   if(*(cache_0 + pixel[13]) < c_b)
+                                    if(*(cache_0 + pixel[10]) < c_b)
+                                     goto success;
+                                    else
+                                     if(*(cache_0 + pixel[6]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  if(*(cache_0 + pixel[9]) > cb)
+                                   if(*(cache_0 + pixel[6]) > cb)
+                                    if(*(cache_0 + pixel[10]) < c_b)
+                                     if(*(cache_0 + pixel[1]) < c_b)
+                                      if(*(cache_0 + pixel[13]) < c_b)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else if(*(cache_0 + pixel[6]) < c_b)
+                                    if(*(cache_0 + pixel[1]) < c_b)
+                                     if(*(cache_0 + pixel[13]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    if(*(cache_0 + pixel[1]) < c_b)
+                                     if(*(cache_0 + pixel[10]) < c_b)
+                                      if(*(cache_0 + pixel[13]) < c_b)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                  else if(*(cache_0 + pixel[9]) < c_b)
+                                   if(*(cache_0 + pixel[1]) < c_b)
+                                    if(*(cache_0 + pixel[13]) < c_b)
+                                     if(*(cache_0 + pixel[10]) < c_b)
+                                      goto success;
+                                     else
+                                      if(*(cache_0 + pixel[6]) < c_b)
+                                       goto success;
+                                      else
+                                       continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   if(*(cache_0 + pixel[1]) < c_b)
+                                    if(*(cache_0 + pixel[13]) < c_b)
+                                     if(*(cache_0 + pixel[6]) < c_b)
+                                      goto success;
+                                     else
+                                      if(*(cache_0 + pixel[10]) < c_b)
+                                       goto success;
+                                      else
+                                       continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               if(*(cache_0 + pixel[9]) < c_b)
+                                if(*(cache_0 + pixel[1]) < c_b)
+                                 if(*(cache_0 + pixel[3]) < c_b)
+                                  if(*(cache_0 + pixel[10]) < c_b)
+                                   if(*(cache_0 + pixel[13]) < c_b)
+                                    if(*(cache_0 + pixel[15]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else
+                              if(*(cache_0 + pixel[7]) < c_b)
+                               if(*(cache_0 + pixel[1]) < c_b)
+                                if(*(cache_0 + pixel[3]) < c_b)
+                                 if(*(cache_0 + pixel[5]) < c_b)
+                                  if(*(cache_0 + pixel[6]) < c_b)
+                                   if(*(cache_0 + pixel[13]) < c_b)
+                                    if(*(cache_0 + pixel[15]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           continue;
+                         else
+                          continue;
+                        else
+                         if(*(cache_0 + -3) > cb)
+                          if(*(cache_0 + 3) > cb)
+                           if(*(cache_0 + pixel[6]) > cb)
+                            if(*(cache_0 + pixel[10]) > cb)
+                             if(*(cache_0 + pixel[3]) > cb)
+                              if(*(cache_0 + pixel[11]) > cb)
+                               if(*(cache_0 + pixel[7]) > cb)
+                                if(*(cache_0 + pixel[5]) > cb)
+                                 if(*(cache_0 + pixel[9]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[1]) > cb)
+                                     if(*(cache_0 + pixel[2]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                  else
+                                   if(*(cache_0 + pixel[2]) > cb)
+                                    if(*(cache_0 + pixel[13]) > cb)
+                                     goto success;
+                                    else
+                                     if(*(cache_0 + pixel[1]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else if(*(cache_0 + pixel[3]) < c_b)
+                              if(*(cache_0 + pixel[5]) > cb)
+                               if(*(cache_0 + pixel[7]) > cb)
+                                if(*(cache_0 + pixel[9]) > cb)
+                                 if(*(cache_0 + pixel[11]) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    if(*(cache_0 + pixel[15]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              if(*(cache_0 + pixel[15]) > cb)
+                               if(*(cache_0 + pixel[14]) > cb)
+                                if(*(cache_0 + pixel[9]) > cb)
+                                 if(*(cache_0 + pixel[11]) > cb)
+                                  if(*(cache_0 + pixel[5]) > cb)
+                                   if(*(cache_0 + pixel[7]) > cb)
+                                    if(*(cache_0 + pixel[13]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           continue;
+                         else
+                          continue;
+                       else if(*(cache_0 + pixel[8]) < c_b)
+                        if(*(cache_0 + pixel[0]) > cb)
+                         if(*(cache_0 + -3) > cb)
+                          if(*(cache_0 + 3) > cb)
+                           if(*(cache_0 + pixel[14]) > cb)
+                            if(*(cache_0 + pixel[2]) > cb)
+                             if(*(cache_0 + pixel[1]) > cb)
+                              if(*(cache_0 + pixel[3]) > cb)
+                               if(*(cache_0 + pixel[13]) > cb)
+                                if(*(cache_0 + pixel[15]) > cb)
+                                 if(*(cache_0 + pixel[5]) > cb)
+                                  if(*(cache_0 + pixel[6]) > cb)
+                                   if(*(cache_0 + pixel[7]) > cb)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[11]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                  else
+                                   if(*(cache_0 + pixel[10]) > cb)
+                                    if(*(cache_0 + pixel[11]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  if(*(cache_0 + pixel[9]) > cb)
+                                   if(*(cache_0 + pixel[10]) > cb)
+                                    if(*(cache_0 + pixel[11]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           continue;
+                         else if(*(cache_0 + -3) < c_b)
+                          if(*(cache_0 + 3) < c_b)
+                           if(*(cache_0 + pixel[10]) < c_b)
+                            if(*(cache_0 + pixel[6]) < c_b)
+                             if(*(cache_0 + pixel[2]) > cb)
+                              if(*(cache_0 + pixel[14]) < c_b)
+                               if(*(cache_0 + pixel[5]) < c_b)
+                                if(*(cache_0 + pixel[7]) < c_b)
+                                 if(*(cache_0 + pixel[9]) < c_b)
+                                  if(*(cache_0 + pixel[11]) < c_b)
+                                   if(*(cache_0 + pixel[13]) < c_b)
+                                    if(*(cache_0 + pixel[15]) < c_b)
+                                     goto success;
+                                    else
+                                     if(*(cache_0 + pixel[3]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else if(*(cache_0 + pixel[2]) < c_b)
+                              if(*(cache_0 + pixel[11]) < c_b)
+                               if(*(cache_0 + pixel[13]) < c_b)
+                                if(*(cache_0 + pixel[5]) < c_b)
+                                 if(*(cache_0 + pixel[7]) < c_b)
+                                  if(*(cache_0 + pixel[9]) < c_b)
+                                   if(*(cache_0 + pixel[3]) < c_b)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[14]) < c_b)
+                                     if(*(cache_0 + pixel[15]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                if(*(cache_0 + pixel[1]) < c_b)
+                                 if(*(cache_0 + pixel[3]) < c_b)
+                                  if(*(cache_0 + pixel[5]) < c_b)
+                                   if(*(cache_0 + pixel[7]) < c_b)
+                                    if(*(cache_0 + pixel[9]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               continue;
+                             else
+                              if(*(cache_0 + pixel[14]) < c_b)
+                               if(*(cache_0 + pixel[13]) < c_b)
+                                if(*(cache_0 + pixel[7]) < c_b)
+                                 if(*(cache_0 + pixel[3]) > cb)
+                                  if(*(cache_0 + pixel[5]) < c_b)
+                                   if(*(cache_0 + pixel[9]) < c_b)
+                                    if(*(cache_0 + pixel[11]) < c_b)
+                                     if(*(cache_0 + pixel[15]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else if(*(cache_0 + pixel[3]) < c_b)
+                                  if(*(cache_0 + pixel[5]) < c_b)
+                                   if(*(cache_0 + pixel[9]) < c_b)
+                                    if(*(cache_0 + pixel[11]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  if(*(cache_0 + pixel[15]) < c_b)
+                                   if(*(cache_0 + pixel[5]) < c_b)
+                                    if(*(cache_0 + pixel[9]) < c_b)
+                                     if(*(cache_0 + pixel[11]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           continue;
+                         else
+                          continue;
+                        else if(*(cache_0 + pixel[0]) < c_b)
+                         if(*(cache_0 + pixel[3]) > cb)
+                          if(*(cache_0 + -3) < c_b)
+                           if(*(cache_0 + pixel[7]) < c_b)
+                            if(*(cache_0 + pixel[14]) < c_b)
+                             if(*(cache_0 + pixel[10]) < c_b)
+                              if(*(cache_0 + pixel[6]) > cb)
+                               if(*(cache_0 + pixel[2]) < c_b)
+                                if(*(cache_0 + pixel[1]) < c_b)
+                                 if(*(cache_0 + pixel[9]) < c_b)
+                                  if(*(cache_0 + pixel[11]) < c_b)
+                                   if(*(cache_0 + pixel[13]) < c_b)
+                                    if(*(cache_0 + pixel[15]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else if(*(cache_0 + pixel[6]) < c_b)
+                               if(*(cache_0 + pixel[13]) < c_b)
+                                if(*(cache_0 + pixel[15]) < c_b)
+                                 if(*(cache_0 + pixel[9]) < c_b)
+                                  if(*(cache_0 + pixel[11]) < c_b)
+                                   if(*(cache_0 + pixel[1]) < c_b)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[5]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               if(*(cache_0 + pixel[2]) < c_b)
+                                if(*(cache_0 + pixel[13]) < c_b)
+                                 if(*(cache_0 + pixel[15]) < c_b)
+                                  if(*(cache_0 + pixel[1]) < c_b)
+                                   if(*(cache_0 + pixel[9]) < c_b)
+                                    if(*(cache_0 + pixel[11]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           continue;
+                         else if(*(cache_0 + pixel[3]) < c_b)
+                          if(*(cache_0 + pixel[10]) > cb)
+                           if(*(cache_0 + pixel[14]) < c_b)
+                            if(*(cache_0 + pixel[5]) < c_b)
+                             if(*(cache_0 + pixel[1]) < c_b)
+                              if(*(cache_0 + pixel[2]) < c_b)
+                               if(*(cache_0 + 3) < c_b)
+                                if(*(cache_0 + pixel[6]) < c_b)
+                                 if(*(cache_0 + pixel[15]) < c_b)
+                                  if(*(cache_0 + -3) < c_b)
+                                   if(*(cache_0 + pixel[13]) < c_b)
+                                    if(*(cache_0 + pixel[11]) < c_b)
+                                     goto success;
+                                    else
+                                     if(*(cache_0 + pixel[7]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                   else
+                                    if(*(cache_0 + pixel[7]) < c_b)
+                                     if(*(cache_0 + pixel[9]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                  else
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    if(*(cache_0 + pixel[7]) < c_b)
+                                     if(*(cache_0 + pixel[13]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else if(*(cache_0 + pixel[9]) < c_b)
+                                    if(*(cache_0 + pixel[7]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    if(*(cache_0 + pixel[13]) < c_b)
+                                     if(*(cache_0 + pixel[7]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else if(*(cache_0 + pixel[10]) < c_b)
+                           if(*(cache_0 + pixel[5]) > cb)
+                            if(*(cache_0 + pixel[14]) < c_b)
+                             if(*(cache_0 + pixel[15]) < c_b)
+                              if(*(cache_0 + pixel[11]) < c_b)
+                               if(*(cache_0 + pixel[9]) < c_b)
+                                if(*(cache_0 + pixel[2]) > cb)
+                                 if(*(cache_0 + pixel[1]) < c_b)
+                                  if(*(cache_0 + pixel[6]) < c_b)
+                                   if(*(cache_0 + pixel[7]) < c_b)
+                                    if(*(cache_0 + -3) < c_b)
+                                     if(*(cache_0 + pixel[13]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else if(*(cache_0 + pixel[2]) < c_b)
+                                 if(*(cache_0 + pixel[1]) < c_b)
+                                  if(*(cache_0 + -3) < c_b)
+                                   if(*(cache_0 + pixel[13]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 if(*(cache_0 + pixel[7]) < c_b)
+                                  if(*(cache_0 + pixel[1]) < c_b)
+                                   if(*(cache_0 + pixel[6]) < c_b)
+                                    if(*(cache_0 + -3) < c_b)
+                                     if(*(cache_0 + pixel[13]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else if(*(cache_0 + pixel[5]) < c_b)
+                            if(*(cache_0 + pixel[2]) > cb)
+                             if(*(cache_0 + pixel[11]) < c_b)
+                              if(*(cache_0 + pixel[6]) < c_b)
+                               if(*(cache_0 + pixel[7]) < c_b)
+                                if(*(cache_0 + pixel[9]) < c_b)
+                                 if(*(cache_0 + -3) < c_b)
+                                  if(*(cache_0 + pixel[13]) < c_b)
+                                   if(*(cache_0 + pixel[14]) < c_b)
+                                    if(*(cache_0 + pixel[15]) < c_b)
+                                     goto success;
+                                    else
+                                     if(*(cache_0 + 3) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else if(*(cache_0 + pixel[2]) < c_b)
+                             if(*(cache_0 + pixel[6]) > cb)
+                              if(*(cache_0 + pixel[11]) < c_b)
+                               if(*(cache_0 + pixel[1]) < c_b)
+                                if(*(cache_0 + -3) < c_b)
+                                 if(*(cache_0 + pixel[13]) < c_b)
+                                  if(*(cache_0 + pixel[14]) < c_b)
+                                   if(*(cache_0 + pixel[15]) < c_b)
+                                    if(*(cache_0 + pixel[9]) < c_b)
+                                     goto success;
+                                    else
+                                     if(*(cache_0 + 3) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else if(*(cache_0 + pixel[6]) < c_b)
+                              if(*(cache_0 + 3) > cb)
+                               if(*(cache_0 + pixel[9]) < c_b)
+                                if(*(cache_0 + pixel[11]) < c_b)
+                                 if(*(cache_0 + -3) < c_b)
+                                  if(*(cache_0 + pixel[13]) < c_b)
+                                   if(*(cache_0 + pixel[14]) < c_b)
+                                    if(*(cache_0 + pixel[15]) < c_b)
+                                     if(*(cache_0 + pixel[7]) < c_b)
+                                      goto success;
+                                     else
+                                      if(*(cache_0 + pixel[1]) < c_b)
+                                       goto success;
+                                      else
+                                       continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else if(*(cache_0 + 3) < c_b)
+                               if(*(cache_0 + pixel[15]) > cb)
+                                if(*(cache_0 + pixel[7]) < c_b)
+                                 if(*(cache_0 + pixel[9]) < c_b)
+                                  if(*(cache_0 + pixel[11]) < c_b)
+                                   if(*(cache_0 + pixel[1]) < c_b)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + -3) < c_b)
+                                     if(*(cache_0 + pixel[13]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else if(*(cache_0 + pixel[15]) < c_b)
+                                if(*(cache_0 + pixel[1]) > cb)
+                                 if(*(cache_0 + pixel[7]) < c_b)
+                                  if(*(cache_0 + pixel[9]) < c_b)
+                                   if(*(cache_0 + pixel[11]) < c_b)
+                                    if(*(cache_0 + -3) < c_b)
+                                     if(*(cache_0 + pixel[13]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else if(*(cache_0 + pixel[1]) < c_b)
+                                 if(*(cache_0 + pixel[7]) > cb)
+                                  if(*(cache_0 + pixel[11]) < c_b)
+                                   if(*(cache_0 + -3) < c_b)
+                                    if(*(cache_0 + pixel[13]) < c_b)
+                                     if(*(cache_0 + pixel[14]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else if(*(cache_0 + pixel[7]) < c_b)
+                                  if(*(cache_0 + pixel[9]) < c_b)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[13]) < c_b)
+                                    if(*(cache_0 + pixel[14]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  if(*(cache_0 + -3) < c_b)
+                                   if(*(cache_0 + pixel[14]) < c_b)
+                                    if(*(cache_0 + pixel[11]) < c_b)
+                                     if(*(cache_0 + pixel[13]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 if(*(cache_0 + -3) < c_b)
+                                  if(*(cache_0 + pixel[13]) < c_b)
+                                   if(*(cache_0 + pixel[7]) < c_b)
+                                    if(*(cache_0 + pixel[9]) < c_b)
+                                     if(*(cache_0 + pixel[11]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                if(*(cache_0 + pixel[11]) < c_b)
+                                 if(*(cache_0 + pixel[7]) < c_b)
+                                  if(*(cache_0 + pixel[9]) < c_b)
+                                   if(*(cache_0 + pixel[1]) > cb)
+                                    if(*(cache_0 + -3) < c_b)
+                                     if(*(cache_0 + pixel[13]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else if(*(cache_0 + pixel[1]) < c_b)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[13]) < c_b)
+                                     if(*(cache_0 + -3) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               if(*(cache_0 + -3) < c_b)
+                                if(*(cache_0 + pixel[14]) < c_b)
+                                 if(*(cache_0 + pixel[11]) < c_b)
+                                  if(*(cache_0 + pixel[13]) < c_b)
+                                   if(*(cache_0 + pixel[15]) < c_b)
+                                    if(*(cache_0 + pixel[9]) < c_b)
+                                     if(*(cache_0 + pixel[1]) < c_b)
+                                      goto success;
+                                     else
+                                      if(*(cache_0 + pixel[7]) < c_b)
+                                       goto success;
+                                      else
+                                       continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else
+                              if(*(cache_0 + pixel[14]) < c_b)
+                               if(*(cache_0 + -3) < c_b)
+                                if(*(cache_0 + pixel[15]) < c_b)
+                                 if(*(cache_0 + pixel[11]) < c_b)
+                                  if(*(cache_0 + pixel[13]) < c_b)
+                                   if(*(cache_0 + pixel[1]) < c_b)
+                                    if(*(cache_0 + pixel[9]) < c_b)
+                                     goto success;
+                                    else
+                                     if(*(cache_0 + 3) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else
+                             if(*(cache_0 + -3) < c_b)
+                              if(*(cache_0 + pixel[14]) < c_b)
+                               if(*(cache_0 + pixel[6]) < c_b)
+                                if(*(cache_0 + pixel[11]) < c_b)
+                                 if(*(cache_0 + pixel[13]) < c_b)
+                                  if(*(cache_0 + pixel[7]) < c_b)
+                                   if(*(cache_0 + pixel[9]) < c_b)
+                                    if(*(cache_0 + pixel[15]) < c_b)
+                                     goto success;
+                                    else
+                                     if(*(cache_0 + 3) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                           else
+                            if(*(cache_0 + -3) < c_b)
+                             if(*(cache_0 + pixel[14]) < c_b)
+                              if(*(cache_0 + pixel[1]) < c_b)
+                               if(*(cache_0 + pixel[11]) < c_b)
+                                if(*(cache_0 + pixel[13]) < c_b)
+                                 if(*(cache_0 + pixel[15]) < c_b)
+                                  if(*(cache_0 + pixel[9]) < c_b)
+                                   if(*(cache_0 + pixel[2]) < c_b)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[6]) < c_b)
+                                     if(*(cache_0 + pixel[7]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                          else
+                           if(*(cache_0 + pixel[14]) < c_b)
+                            if(*(cache_0 + pixel[6]) < c_b)
+                             if(*(cache_0 + pixel[2]) < c_b)
+                              if(*(cache_0 + 3) < c_b)
+                               if(*(cache_0 + pixel[15]) < c_b)
+                                if(*(cache_0 + pixel[5]) < c_b)
+                                 if(*(cache_0 + pixel[1]) < c_b)
+                                  if(*(cache_0 + pixel[7]) < c_b)
+                                   if(*(cache_0 + pixel[9]) < c_b)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[13]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                  else
+                                   if(*(cache_0 + pixel[11]) < c_b)
+                                    if(*(cache_0 + -3) < c_b)
+                                     if(*(cache_0 + pixel[13]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                         else
+                          if(*(cache_0 + -3) < c_b)
+                           if(*(cache_0 + pixel[10]) < c_b)
+                            if(*(cache_0 + pixel[7]) < c_b)
+                             if(*(cache_0 + pixel[14]) < c_b)
+                              if(*(cache_0 + pixel[11]) < c_b)
+                               if(*(cache_0 + pixel[6]) > cb)
+                                if(*(cache_0 + pixel[2]) < c_b)
+                                 if(*(cache_0 + pixel[1]) < c_b)
+                                  if(*(cache_0 + pixel[9]) < c_b)
+                                   if(*(cache_0 + pixel[13]) < c_b)
+                                    if(*(cache_0 + pixel[15]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else if(*(cache_0 + pixel[6]) < c_b)
+                                if(*(cache_0 + pixel[13]) < c_b)
+                                 if(*(cache_0 + pixel[15]) < c_b)
+                                  if(*(cache_0 + pixel[9]) < c_b)
+                                   if(*(cache_0 + pixel[1]) < c_b)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[5]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                if(*(cache_0 + pixel[2]) < c_b)
+                                 if(*(cache_0 + pixel[9]) < c_b)
+                                  if(*(cache_0 + pixel[1]) < c_b)
+                                   if(*(cache_0 + pixel[13]) < c_b)
+                                    if(*(cache_0 + pixel[15]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           continue;
+                        else
+                         if(*(cache_0 + -3) < c_b)
+                          if(*(cache_0 + 3) < c_b)
+                           if(*(cache_0 + pixel[6]) < c_b)
+                            if(*(cache_0 + pixel[10]) < c_b)
+                             if(*(cache_0 + pixel[2]) > cb)
+                              if(*(cache_0 + pixel[14]) < c_b)
+                               if(*(cache_0 + pixel[13]) < c_b)
+                                if(*(cache_0 + pixel[5]) < c_b)
+                                 if(*(cache_0 + pixel[7]) < c_b)
+                                  if(*(cache_0 + pixel[3]) > cb)
+                                   if(*(cache_0 + pixel[9]) < c_b)
+                                    if(*(cache_0 + pixel[11]) < c_b)
+                                     if(*(cache_0 + pixel[15]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else if(*(cache_0 + pixel[3]) < c_b)
+                                   if(*(cache_0 + pixel[9]) < c_b)
+                                    if(*(cache_0 + pixel[11]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   if(*(cache_0 + pixel[15]) < c_b)
+                                    if(*(cache_0 + pixel[9]) < c_b)
+                                     if(*(cache_0 + pixel[11]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else if(*(cache_0 + pixel[2]) < c_b)
+                              if(*(cache_0 + pixel[11]) < c_b)
+                               if(*(cache_0 + pixel[7]) < c_b)
+                                if(*(cache_0 + pixel[5]) < c_b)
+                                 if(*(cache_0 + pixel[9]) < c_b)
+                                  if(*(cache_0 + pixel[13]) < c_b)
+                                   if(*(cache_0 + pixel[3]) > cb)
+                                    if(*(cache_0 + pixel[14]) < c_b)
+                                     if(*(cache_0 + pixel[15]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else if(*(cache_0 + pixel[3]) < c_b)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[15]) < c_b)
+                                     if(*(cache_0 + pixel[14]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                  else
+                                   if(*(cache_0 + pixel[1]) < c_b)
+                                    if(*(cache_0 + pixel[3]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              if(*(cache_0 + pixel[14]) < c_b)
+                               if(*(cache_0 + pixel[13]) < c_b)
+                                if(*(cache_0 + pixel[5]) < c_b)
+                                 if(*(cache_0 + pixel[3]) > cb)
+                                  if(*(cache_0 + pixel[7]) < c_b)
+                                   if(*(cache_0 + pixel[9]) < c_b)
+                                    if(*(cache_0 + pixel[11]) < c_b)
+                                     if(*(cache_0 + pixel[15]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else if(*(cache_0 + pixel[3]) < c_b)
+                                  if(*(cache_0 + pixel[11]) < c_b)
+                                   if(*(cache_0 + pixel[7]) < c_b)
+                                    if(*(cache_0 + pixel[9]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  if(*(cache_0 + pixel[15]) < c_b)
+                                   if(*(cache_0 + pixel[9]) < c_b)
+                                    if(*(cache_0 + pixel[7]) < c_b)
+                                     if(*(cache_0 + pixel[11]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           continue;
+                         else
+                          continue;
+                       else
+                        if(*(cache_0 + pixel[0]) > cb)
+                         if(*(cache_0 + 3) > cb)
+                          if(*(cache_0 + -3) > cb)
+                           if(*(cache_0 + pixel[14]) > cb)
+                            if(*(cache_0 + pixel[2]) > cb)
+                             if(*(cache_0 + pixel[10]) > cb)
+                              if(*(cache_0 + pixel[15]) > cb)
+                               if(*(cache_0 + pixel[5]) > cb)
+                                if(*(cache_0 + pixel[3]) > cb)
+                                 if(*(cache_0 + pixel[1]) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + pixel[11]) > cb)
+                                    goto success;
+                                   else if(*(cache_0 + pixel[11]) < c_b)
+                                    if(*(cache_0 + pixel[6]) > cb)
+                                     if(*(cache_0 + pixel[7]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    if(*(cache_0 + pixel[7]) > cb)
+                                     if(*(cache_0 + pixel[6]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else if(*(cache_0 + pixel[5]) < c_b)
+                                if(*(cache_0 + pixel[1]) > cb)
+                                 if(*(cache_0 + pixel[3]) > cb)
+                                  if(*(cache_0 + pixel[9]) > cb)
+                                   if(*(cache_0 + pixel[11]) > cb)
+                                    if(*(cache_0 + pixel[13]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                if(*(cache_0 + pixel[9]) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[11]) > cb)
+                                   if(*(cache_0 + pixel[1]) > cb)
+                                    if(*(cache_0 + pixel[3]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               continue;
+                             else if(*(cache_0 + pixel[10]) < c_b)
+                              if(*(cache_0 + pixel[1]) > cb)
+                               if(*(cache_0 + pixel[3]) > cb)
+                                if(*(cache_0 + pixel[5]) > cb)
+                                 if(*(cache_0 + pixel[6]) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + pixel[15]) > cb)
+                                    if(*(cache_0 + pixel[11]) > cb)
+                                     goto success;
+                                    else
+                                     if(*(cache_0 + pixel[7]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              if(*(cache_0 + pixel[6]) > cb)
+                               if(*(cache_0 + pixel[15]) > cb)
+                                if(*(cache_0 + pixel[3]) > cb)
+                                 if(*(cache_0 + pixel[7]) > cb)
+                                  if(*(cache_0 + pixel[5]) > cb)
+                                   if(*(cache_0 + pixel[1]) > cb)
+                                    if(*(cache_0 + pixel[13]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else if(*(cache_0 + pixel[7]) < c_b)
+                                  if(*(cache_0 + pixel[1]) > cb)
+                                   if(*(cache_0 + pixel[5]) > cb)
+                                    if(*(cache_0 + pixel[11]) > cb)
+                                     if(*(cache_0 + pixel[13]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  if(*(cache_0 + pixel[11]) > cb)
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    if(*(cache_0 + pixel[1]) > cb)
+                                     if(*(cache_0 + pixel[5]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           continue;
+                         else
+                          continue;
+                        else if(*(cache_0 + pixel[0]) < c_b)
+                         if(*(cache_0 + 3) < c_b)
+                          if(*(cache_0 + -3) < c_b)
+                           if(*(cache_0 + pixel[14]) < c_b)
+                            if(*(cache_0 + pixel[2]) < c_b)
+                             if(*(cache_0 + pixel[11]) > cb)
+                              if(*(cache_0 + pixel[6]) < c_b)
+                               if(*(cache_0 + pixel[1]) < c_b)
+                                if(*(cache_0 + pixel[3]) < c_b)
+                                 if(*(cache_0 + pixel[5]) < c_b)
+                                  if(*(cache_0 + pixel[7]) < c_b)
+                                   if(*(cache_0 + pixel[13]) < c_b)
+                                    if(*(cache_0 + pixel[15]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else if(*(cache_0 + pixel[11]) < c_b)
+                              if(*(cache_0 + pixel[3]) < c_b)
+                               if(*(cache_0 + pixel[15]) < c_b)
+                                if(*(cache_0 + pixel[5]) > cb)
+                                 if(*(cache_0 + pixel[9]) < c_b)
+                                  if(*(cache_0 + pixel[1]) < c_b)
+                                   if(*(cache_0 + pixel[10]) < c_b)
+                                    if(*(cache_0 + pixel[13]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else if(*(cache_0 + pixel[5]) < c_b)
+                                 if(*(cache_0 + pixel[1]) < c_b)
+                                  if(*(cache_0 + pixel[10]) < c_b)
+                                   if(*(cache_0 + pixel[13]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   if(*(cache_0 + pixel[6]) < c_b)
+                                    if(*(cache_0 + pixel[13]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 if(*(cache_0 + pixel[9]) < c_b)
+                                  if(*(cache_0 + pixel[10]) < c_b)
+                                   if(*(cache_0 + pixel[13]) < c_b)
+                                    if(*(cache_0 + pixel[1]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              if(*(cache_0 + pixel[7]) < c_b)
+                               if(*(cache_0 + pixel[6]) < c_b)
+                                if(*(cache_0 + pixel[13]) < c_b)
+                                 if(*(cache_0 + pixel[3]) < c_b)
+                                  if(*(cache_0 + pixel[1]) < c_b)
+                                   if(*(cache_0 + pixel[15]) < c_b)
+                                    if(*(cache_0 + pixel[5]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           continue;
+                         else
+                          continue;
+                        else
+                         continue;
+
+                       success:
+                               corners.push_back(ImageRef(cache_0-line_min, 
y));
+               }
+       }
+}
+}

Index: cvd_src/fast/fast_12_score.cxx
===================================================================
RCS file: cvd_src/fast/fast_12_score.cxx
diff -N cvd_src/fast/fast_12_score.cxx
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ cvd_src/fast/fast_12_score.cxx      28 Jun 2007 01:32:59 -0000      1.1.2.1
@@ -0,0 +1,2272 @@
+#include <vector>
+#include <cvd/image.h>
+#include <cvd/byte.h>
+
+// This is mechanically generated code. 
+
+using namespace std;
+namespace CVD
+{
+
+static inline bool test_gt_set(int a, int b, int& min_diff)
+{
+       if(a > b)
+       {
+               if(a-b < min_diff)
+                       min_diff = a-b;
+
+               return 1;
+       }
+       return 0;
+}
+
+inline int fast_corner_score_12(const byte* cache_0, const int offset[], int b)
+{      
+       b++;
+       //This function computes the score for a pixel which is known to be 
+       //a corner at barrier b. So we start looking at b+1 and above to 
+       //establish where it stops becoming a corner.
+       for(;;)
+       {
+               int cb = *cache_0 + b;
+               int c_b= *cache_0 - b;
+               int min_diff = INT_MAX;
+               if(test_gt_set(*(cache_0 + offset[8]), cb, min_diff))
+                if(test_gt_set(*(cache_0 + offset[0]), cb, min_diff))
+                 if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                  if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                   if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                           b += min_diff;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                         else if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                          if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[10]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                              if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                               b += min_diff;
+                              else
+                               break;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[10]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                              if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                               b += min_diff;
+                              else
+                               break;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                        else if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                         if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[1]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                        if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[10]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[1]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                              if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                               b += min_diff;
+                              else
+                               break;
+                             else
+                              break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[1]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                              if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                               b += min_diff;
+                              else
+                               break;
+                             else
+                              break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                      else if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                       if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[10]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[1]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                     else if(test_gt_set(c_b, *(cache_0 + offset[4]), 
min_diff))
+                      if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[1]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             if(test_gt_set(*(cache_0 + offset[5]), cb, 
min_diff))
+                              if(test_gt_set(*(cache_0 + offset[7]), cb, 
min_diff))
+                               b += min_diff;
+                              else
+                               break;
+                             else
+                              break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[1]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             if(test_gt_set(*(cache_0 + offset[5]), cb, 
min_diff))
+                              if(test_gt_set(*(cache_0 + offset[7]), cb, 
min_diff))
+                               b += min_diff;
+                              else
+                               break;
+                             else
+                              break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                    else if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                     if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                              if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                               b += min_diff;
+                              else
+                               break;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                              if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                               b += min_diff;
+                              else
+                               break;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          break;
+                        else if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                         if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[1]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                              if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                               b += min_diff;
+                              else
+                               break;
+                             else
+                              break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[1]), cb, 
min_diff))
+                             b += min_diff;
+                            else if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                              if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                               b += min_diff;
+                              else
+                               break;
+                             else
+                              break;
+                            else
+                             if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                              if(test_gt_set(*(cache_0 + offset[12]), cb, 
min_diff))
+                               b += min_diff;
+                              else
+                               break;
+                             else
+                              break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                   else if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                    if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[5]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             if(test_gt_set(*(cache_0 + offset[1]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                           else
+                            if(test_gt_set(*(cache_0 + offset[4]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[5]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[5]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[4]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                           else
+                            if(test_gt_set(*(cache_0 + offset[1]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                  else if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                   if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            if(test_gt_set(*(cache_0 + offset[4]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[5]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[4]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[5]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[5]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[4]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                 else if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                  if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                   if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[6]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            if(test_gt_set(*(cache_0 + offset[2]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                          else
+                           break;
+                         else
+                          if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[6]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   break;
+                 else
+                  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                   if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[2]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          break;
+                        else
+                         break;
+                       else if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                        if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   break;
+                else if(test_gt_set(c_b, *(cache_0 + offset[0]), min_diff))
+                 if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                   if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[2]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[2]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[3]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   break;
+                 else if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                  if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                   if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                     if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                      if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
+                         if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[10]), cb, 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[6]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                          else if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           if(test_gt_set(c_b, *(cache_0 + offset[6]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                         else if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                             b += min_diff;
+                            else
+                             if(test_gt_set(c_b, *(cache_0 + offset[6]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[6]), cb, 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                              if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                               b += min_diff;
+                              else
+                               break;
+                             else
+                              break;
+                            else
+                             break;
+                           else if(test_gt_set(c_b, *(cache_0 + offset[6]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                              if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                               b += min_diff;
+                              else
+                               break;
+                             else
+                              break;
+                            else
+                             break;
+                          else if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                              b += min_diff;
+                             else
+                              if(test_gt_set(c_b, *(cache_0 + offset[6]), 
min_diff))
+                               b += min_diff;
+                              else
+                               break;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[6]), 
min_diff))
+                              b += min_diff;
+                             else
+                              if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                               b += min_diff;
+                              else
+                               break;
+                            else
+                             break;
+                           else
+                            break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                     else
+                      if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[6]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   break;
+                 else
+                  break;
+                else
+                 if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                   if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            if(test_gt_set(*(cache_0 + offset[1]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[2]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[2]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             if(test_gt_set(*(cache_0 + offset[1]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                           else
+                            break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                      if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[14]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[7]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   break;
+                 else
+                  break;
+               else if(test_gt_set(c_b, *(cache_0 + offset[8]), min_diff))
+                if(test_gt_set(*(cache_0 + offset[0]), cb, min_diff))
+                 if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                  if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                   if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[7]), cb, 
min_diff))
+                            b += min_diff;
+                           else
+                            if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[10]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[10]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   break;
+                 else if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                  if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                   if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                     if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                             b += min_diff;
+                            else
+                             if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else if(test_gt_set(c_b, *(cache_0 + offset[2]), 
min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                            b += min_diff;
+                           else
+                            if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                      else
+                       break;
+                     else
+                      if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                         if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   break;
+                 else
+                  break;
+                else if(test_gt_set(c_b, *(cache_0 + offset[0]), min_diff))
+                 if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                  if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                   if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                      if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else if(test_gt_set(c_b, *(cache_0 + offset[6]), 
min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                            b += min_diff;
+                           else
+                            if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   break;
+                 else if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                  if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                   if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                             b += min_diff;
+                            else
+                             if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                           else
+                            if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                          else
+                           if(test_gt_set(*(cache_0 + offset[9]), cb, 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                   if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                        if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[6]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else if(test_gt_set(c_b, *(cache_0 + offset[2]), 
min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[6]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                    if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                             b += min_diff;
+                            else
+                             if(test_gt_set(c_b, *(cache_0 + offset[4]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                     if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                             b += min_diff;
+                            else
+                             if(test_gt_set(c_b, *(cache_0 + offset[4]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else if(test_gt_set(c_b, *(cache_0 + offset[6]), 
min_diff))
+                      if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                              b += min_diff;
+                             else
+                              if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                               b += min_diff;
+                              else
+                               break;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else if(test_gt_set(c_b, *(cache_0 + offset[4]), 
min_diff))
+                       if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                            b += min_diff;
+                           else
+                            if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                        if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                         if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                           b += min_diff;
+                          else
+                           if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[1]), cb, 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                            b += min_diff;
+                           else
+                            if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                      else
+                       if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                              b += min_diff;
+                             else
+                              if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                               b += min_diff;
+                              else
+                               break;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                     else
+                      if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                             b += min_diff;
+                            else
+                             if(test_gt_set(c_b, *(cache_0 + offset[4]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                    else
+                     if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                             b += min_diff;
+                            else
+                             if(test_gt_set(c_b, *(cache_0 + offset[4]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                   else
+                    if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[2]), 
min_diff))
+                            b += min_diff;
+                           else
+                            if(test_gt_set(c_b, *(cache_0 + offset[6]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                  else
+                   if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                            b += min_diff;
+                           else
+                            if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                          else
+                           if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[12]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                 else
+                  if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                   if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                     if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                       if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else if(test_gt_set(c_b, *(cache_0 + offset[6]), 
min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                            b += min_diff;
+                           else
+                            if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                      else
+                       break;
+                     else
+                      break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   break;
+                else
+                 if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                  if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                   if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[10]), min_diff))
+                     if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                          if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                          else if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else if(test_gt_set(c_b, *(cache_0 + offset[2]), 
min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[11]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[3]), cb, 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                            b += min_diff;
+                           else
+                            if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[14]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                          else
+                           if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                         if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else if(test_gt_set(c_b, *(cache_0 + offset[3]), 
min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[9]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                             if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   break;
+                 else
+                  break;
+               else
+                if(test_gt_set(*(cache_0 + offset[0]), cb, min_diff))
+                 if(test_gt_set(*(cache_0 + offset[4]), cb, min_diff))
+                  if(test_gt_set(*(cache_0 + offset[12]), cb, min_diff))
+                   if(test_gt_set(*(cache_0 + offset[14]), cb, min_diff))
+                    if(test_gt_set(*(cache_0 + offset[2]), cb, min_diff))
+                     if(test_gt_set(*(cache_0 + offset[10]), cb, min_diff))
+                      if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                            b += min_diff;
+                           else if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[6]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[7]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            if(test_gt_set(*(cache_0 + offset[7]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[6]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                        if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        if(test_gt_set(*(cache_0 + offset[9]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[13]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[1]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[3]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                      else
+                       break;
+                     else if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                      if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[15]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             if(test_gt_set(*(cache_0 + offset[7]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      if(test_gt_set(*(cache_0 + offset[6]), cb, min_diff))
+                       if(test_gt_set(*(cache_0 + offset[15]), cb, min_diff))
+                        if(test_gt_set(*(cache_0 + offset[3]), cb, min_diff))
+                         if(test_gt_set(*(cache_0 + offset[7]), cb, min_diff))
+                          if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[1]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                          if(test_gt_set(*(cache_0 + offset[1]), cb, min_diff))
+                           if(test_gt_set(*(cache_0 + offset[5]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          if(test_gt_set(*(cache_0 + offset[11]), cb, 
min_diff))
+                           if(test_gt_set(*(cache_0 + offset[13]), cb, 
min_diff))
+                            if(test_gt_set(*(cache_0 + offset[1]), cb, 
min_diff))
+                             if(test_gt_set(*(cache_0 + offset[5]), cb, 
min_diff))
+                              b += min_diff;
+                             else
+                              break;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   break;
+                 else
+                  break;
+                else if(test_gt_set(c_b, *(cache_0 + offset[0]), min_diff))
+                 if(test_gt_set(c_b, *(cache_0 + offset[4]), min_diff))
+                  if(test_gt_set(c_b, *(cache_0 + offset[12]), min_diff))
+                   if(test_gt_set(c_b, *(cache_0 + offset[14]), min_diff))
+                    if(test_gt_set(c_b, *(cache_0 + offset[2]), min_diff))
+                     if(test_gt_set(*(cache_0 + offset[11]), cb, min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[5]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[7]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                     else if(test_gt_set(c_b, *(cache_0 + offset[11]), 
min_diff))
+                      if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[15]), min_diff))
+                        if(test_gt_set(*(cache_0 + offset[5]), cb, min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[1]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                            b += min_diff;
+                           else
+                            break;
+                          else
+                           if(test_gt_set(c_b, *(cache_0 + offset[6]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                         else
+                          break;
+                        else
+                         if(test_gt_set(c_b, *(cache_0 + offset[9]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[10]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[13]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                       else
+                        break;
+                      else
+                       break;
+                     else
+                      if(test_gt_set(c_b, *(cache_0 + offset[7]), min_diff))
+                       if(test_gt_set(c_b, *(cache_0 + offset[6]), min_diff))
+                        if(test_gt_set(c_b, *(cache_0 + offset[13]), min_diff))
+                         if(test_gt_set(c_b, *(cache_0 + offset[3]), min_diff))
+                          if(test_gt_set(c_b, *(cache_0 + offset[1]), 
min_diff))
+                           if(test_gt_set(c_b, *(cache_0 + offset[15]), 
min_diff))
+                            if(test_gt_set(c_b, *(cache_0 + offset[5]), 
min_diff))
+                             b += min_diff;
+                            else
+                             break;
+                           else
+                            break;
+                          else
+                           break;
+                         else
+                          break;
+                        else
+                         break;
+                       else
+                        break;
+                      else
+                       break;
+                    else
+                     break;
+                   else
+                    break;
+                  else
+                   break;
+                 else
+                  break;
+                else
+                 break;
+
+       }
+
+       return b-1;
+}
+
+void fast_corner_score_12(const SubImage<byte>& i, const vector<ImageRef>& 
corners, int b, vector<int>& scores)
+{
+       scores.resize(corners.size());
+               int pixel[16] = {
+               0 + i.row_stride() * 3,
+               1 + i.row_stride() * 3,
+               2 + i.row_stride() * 2,
+               3 + i.row_stride() * 1,
+               3 + i.row_stride() * 0,
+               3 + i.row_stride() * -1,
+               2 + i.row_stride() * -2,
+               1 + i.row_stride() * -3,
+               0 + i.row_stride() * -3,
+               -1 + i.row_stride() * -3,
+               -2 + i.row_stride() * -2,
+               -3 + i.row_stride() * -1,
+               -3 + i.row_stride() * 0,
+               -3 + i.row_stride() * 1,
+               -2 + i.row_stride() * 2,
+               -1 + i.row_stride() * 3,
+       };
+       for(unsigned int n=0; n < corners.size(); n++)
+               scores[n] = fast_corner_score_12(&i[corners[n]], pixel, b);
+}
+
+}

Index: cvd_src/fast/fast_7_detect.cxx
===================================================================
RCS file: cvd_src/fast/fast_7_detect.cxx
diff -N cvd_src/fast/fast_7_detect.cxx
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ cvd_src/fast/fast_7_detect.cxx      28 Jun 2007 01:32:59 -0000      1.1.2.1
@@ -0,0 +1,16052 @@
+#include <vector>
+#include <cvd/image.h>
+#include <cvd/byte.h>
+
+// This is mechanically generated code. 
+
+using namespace std;
+namespace CVD
+{
+void fast_corner_detect_plain_7(const SubImage<byte>& i, vector<ImageRef>& 
corners, int b)
+{
+       int y, cb, c_b;
+       const byte  *line_max, *line_min;
+       const byte* cache_0;
+
+       int pixel[16] = {
+               0 + i.row_stride() * 3,
+               1 + i.row_stride() * 3,
+               2 + i.row_stride() * 2,
+               3 + i.row_stride() * 1,
+               3 + i.row_stride() * 0,
+               3 + i.row_stride() * -1,
+               2 + i.row_stride() * -2,
+               1 + i.row_stride() * -3,
+               0 + i.row_stride() * -3,
+               -1 + i.row_stride() * -3,
+               -2 + i.row_stride() * -2,
+               -3 + i.row_stride() * -1,
+               -3 + i.row_stride() * 0,
+               -3 + i.row_stride() * 1,
+               -2 + i.row_stride() * 2,
+               -1 + i.row_stride() * 3,
+       };
+
+       for(y = 3 ; y < i.size().y - 3; y++)
+       {
+               cache_0 = &i[y][3];
+               line_min = cache_0 - 3;
+               line_max = &i[y][i.size().x - 3];
+
+
+               for(; cache_0 < line_max;cache_0++)
+               {
+                       cb = *cache_0 + b;
+                       c_b= *cache_0 - b;
+  
+                       if(*(cache_0 + pixel[0]) > cb)
+                        if(*(cache_0 + pixel[8]) > cb)
+                         if(*(cache_0 + 3) > cb)
+                          if(*(cache_0 + pixel[5]) > cb)
+                           if(*(cache_0 + pixel[6]) > cb)
+                            if(*(cache_0 + pixel[3]) > cb)
+                             if(*(cache_0 + pixel[2]) > cb)
+                              if(*(cache_0 + pixel[1]) > cb)
+                               goto success;
+                              else if(*(cache_0 + pixel[1]) < c_b)
+                               if(*(cache_0 + pixel[7]) > cb)
+                                goto success;
+                               else
+                                if(*(cache_0 + pixel[10]) > cb)
+                                 if(*(cache_0 + pixel[11]) > cb)
+                                  if(*(cache_0 + -3) > cb)
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    if(*(cache_0 + pixel[14]) > cb)
+                                     if(*(cache_0 + pixel[15]) > cb)
+                                      goto success;
+                                     else
+                                      if(*(cache_0 + pixel[9]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else if(*(cache_0 + pixel[10]) < c_b)
+                                 if(*(cache_0 + pixel[9]) < c_b)
+                                  if(*(cache_0 + pixel[11]) < c_b)
+                                   if(*(cache_0 + -3) < c_b)
+                                    if(*(cache_0 + pixel[13]) < c_b)
+                                     if(*(cache_0 + pixel[14]) < c_b)
+                                      if(*(cache_0 + pixel[15]) < c_b)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               if(*(cache_0 + pixel[7]) > cb)
+                                goto success;
+                               else if(*(cache_0 + pixel[7]) < c_b)
+                                if(*(cache_0 + pixel[10]) > cb)
+                                 if(*(cache_0 + pixel[11]) > cb)
+                                  if(*(cache_0 + -3) > cb)
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    if(*(cache_0 + pixel[14]) > cb)
+                                     if(*(cache_0 + pixel[15]) > cb)
+                                      goto success;
+                                     else
+                                      if(*(cache_0 + pixel[9]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else if(*(cache_0 + pixel[10]) < c_b)
+                                 if(*(cache_0 + pixel[9]) < c_b)
+                                  if(*(cache_0 + pixel[11]) < c_b)
+                                   if(*(cache_0 + -3) < c_b)
+                                    if(*(cache_0 + pixel[13]) < c_b)
+                                     if(*(cache_0 + pixel[14]) < c_b)
+                                      if(*(cache_0 + pixel[15]) < c_b)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                if(*(cache_0 + pixel[11]) > cb)
+                                 if(*(cache_0 + pixel[14]) > cb)
+                                  if(*(cache_0 + -3) > cb)
+                                   if(*(cache_0 + pixel[10]) > cb)
+                                    if(*(cache_0 + pixel[13]) > cb)
+                                     if(*(cache_0 + pixel[15]) > cb)
+                                      goto success;
+                                     else
+                                      if(*(cache_0 + pixel[9]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else if(*(cache_0 + pixel[11]) < c_b)
+                                 if(*(cache_0 + pixel[9]) < c_b)
+                                  if(*(cache_0 + pixel[10]) < c_b)
+                                   if(*(cache_0 + -3) < c_b)
+                                    if(*(cache_0 + pixel[13]) < c_b)
+                                     if(*(cache_0 + pixel[14]) < c_b)
+                                      if(*(cache_0 + pixel[15]) < c_b)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                             else if(*(cache_0 + pixel[2]) < c_b)
+                              if(*(cache_0 + pixel[9]) > cb)
+                               if(*(cache_0 + pixel[7]) > cb)
+                                goto success;
+                               else
+                                if(*(cache_0 + pixel[11]) > cb)
+                                 if(*(cache_0 + -3) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    if(*(cache_0 + pixel[10]) > cb)
+                                     goto success;
+                                    else
+                                     if(*(cache_0 + pixel[1]) > cb)
+                                      if(*(cache_0 + pixel[15]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else if(*(cache_0 + pixel[9]) < c_b)
+                               if(*(cache_0 + pixel[11]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + pixel[15]) > cb)
+                                    if(*(cache_0 + pixel[10]) > cb)
+                                     goto success;
+                                    else
+                                     if(*(cache_0 + pixel[1]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else if(*(cache_0 + pixel[11]) < c_b)
+                                if(*(cache_0 + pixel[10]) < c_b)
+                                 if(*(cache_0 + -3) < c_b)
+                                  if(*(cache_0 + pixel[13]) < c_b)
+                                   if(*(cache_0 + pixel[14]) < c_b)
+                                    if(*(cache_0 + pixel[15]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               if(*(cache_0 + pixel[11]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + pixel[15]) > cb)
+                                    if(*(cache_0 + pixel[10]) > cb)
+                                     goto success;
+                                    else
+                                     if(*(cache_0 + pixel[1]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else
+                              if(*(cache_0 + pixel[9]) > cb)
+                               if(*(cache_0 + pixel[7]) > cb)
+                                goto success;
+                               else if(*(cache_0 + pixel[7]) < c_b)
+                                if(*(cache_0 + pixel[11]) > cb)
+                                 if(*(cache_0 + -3) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    if(*(cache_0 + pixel[10]) > cb)
+                                     goto success;
+                                    else
+                                     if(*(cache_0 + pixel[1]) > cb)
+                                      if(*(cache_0 + pixel[15]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                if(*(cache_0 + pixel[11]) > cb)
+                                 if(*(cache_0 + pixel[14]) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + pixel[10]) > cb)
+                                    if(*(cache_0 + -3) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    if(*(cache_0 + pixel[1]) > cb)
+                                     if(*(cache_0 + -3) > cb)
+                                      if(*(cache_0 + pixel[15]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else if(*(cache_0 + pixel[9]) < c_b)
+                               if(*(cache_0 + pixel[11]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + pixel[15]) > cb)
+                                    if(*(cache_0 + pixel[10]) > cb)
+                                     goto success;
+                                    else
+                                     if(*(cache_0 + pixel[1]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else if(*(cache_0 + pixel[11]) < c_b)
+                                if(*(cache_0 + pixel[10]) < c_b)
+                                 if(*(cache_0 + -3) < c_b)
+                                  if(*(cache_0 + pixel[13]) < c_b)
+                                   if(*(cache_0 + pixel[14]) < c_b)
+                                    if(*(cache_0 + pixel[15]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               if(*(cache_0 + pixel[11]) > cb)
+                                if(*(cache_0 + pixel[13]) > cb)
+                                 if(*(cache_0 + pixel[14]) > cb)
+                                  if(*(cache_0 + pixel[1]) > cb)
+                                   if(*(cache_0 + -3) > cb)
+                                    if(*(cache_0 + pixel[15]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else if(*(cache_0 + pixel[1]) < c_b)
+                                   if(*(cache_0 + pixel[10]) > cb)
+                                    if(*(cache_0 + -3) > cb)
+                                     if(*(cache_0 + pixel[15]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   if(*(cache_0 + pixel[10]) > cb)
+                                    if(*(cache_0 + pixel[15]) > cb)
+                                     if(*(cache_0 + -3) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                            else if(*(cache_0 + pixel[3]) < c_b)
+                             if(*(cache_0 + pixel[10]) > cb)
+                              if(*(cache_0 + pixel[9]) > cb)
+                               if(*(cache_0 + pixel[7]) > cb)
+                                goto success;
+                               else
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + pixel[11]) > cb)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[1]) > cb)
+                                     if(*(cache_0 + pixel[2]) > cb)
+                                      if(*(cache_0 + pixel[15]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               if(*(cache_0 + -3) > cb)
+                                if(*(cache_0 + pixel[13]) > cb)
+                                 if(*(cache_0 + pixel[14]) > cb)
+                                  if(*(cache_0 + pixel[15]) > cb)
+                                   if(*(cache_0 + pixel[11]) > cb)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[1]) > cb)
+                                     if(*(cache_0 + pixel[2]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else if(*(cache_0 + pixel[10]) < c_b)
+                              if(*(cache_0 + -3) > cb)
+                               if(*(cache_0 + pixel[1]) > cb)
+                                if(*(cache_0 + pixel[13]) > cb)
+                                 if(*(cache_0 + pixel[14]) > cb)
+                                  if(*(cache_0 + pixel[15]) > cb)
+                                   if(*(cache_0 + pixel[2]) > cb)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[11]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else if(*(cache_0 + -3) < c_b)
+                               if(*(cache_0 + pixel[9]) < c_b)
+                                if(*(cache_0 + pixel[11]) < c_b)
+                                 if(*(cache_0 + pixel[13]) < c_b)
+                                  if(*(cache_0 + pixel[14]) < c_b)
+                                   if(*(cache_0 + pixel[15]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              if(*(cache_0 + pixel[1]) > cb)
+                               if(*(cache_0 + -3) > cb)
+                                if(*(cache_0 + pixel[13]) > cb)
+                                 if(*(cache_0 + pixel[14]) > cb)
+                                  if(*(cache_0 + pixel[15]) > cb)
+                                   if(*(cache_0 + pixel[2]) > cb)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[11]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else
+                             if(*(cache_0 + pixel[10]) > cb)
+                              if(*(cache_0 + pixel[7]) > cb)
+                               if(*(cache_0 + pixel[9]) > cb)
+                                goto success;
+                               else if(*(cache_0 + pixel[9]) < c_b)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + pixel[15]) > cb)
+                                    if(*(cache_0 + pixel[11]) > cb)
+                                     goto success;
+                                    else
+                                     if(*(cache_0 + pixel[1]) > cb)
+                                      if(*(cache_0 + pixel[2]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[15]) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + pixel[11]) > cb)
+                                    if(*(cache_0 + pixel[14]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else if(*(cache_0 + pixel[11]) < c_b)
+                                    if(*(cache_0 + pixel[1]) > cb)
+                                     if(*(cache_0 + pixel[2]) > cb)
+                                      if(*(cache_0 + pixel[14]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    if(*(cache_0 + pixel[2]) > cb)
+                                     if(*(cache_0 + pixel[14]) > cb)
+                                      if(*(cache_0 + pixel[1]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else if(*(cache_0 + pixel[7]) < c_b)
+                               if(*(cache_0 + -3) > cb)
+                                if(*(cache_0 + pixel[13]) > cb)
+                                 if(*(cache_0 + pixel[14]) > cb)
+                                  if(*(cache_0 + pixel[11]) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[15]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                  else
+                                   if(*(cache_0 + pixel[1]) > cb)
+                                    if(*(cache_0 + pixel[2]) > cb)
+                                     if(*(cache_0 + pixel[15]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               if(*(cache_0 + -3) > cb)
+                                if(*(cache_0 + pixel[13]) > cb)
+                                 if(*(cache_0 + pixel[14]) > cb)
+                                  if(*(cache_0 + pixel[11]) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[15]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                  else if(*(cache_0 + pixel[11]) < c_b)
+                                   if(*(cache_0 + pixel[1]) > cb)
+                                    if(*(cache_0 + pixel[2]) > cb)
+                                     if(*(cache_0 + pixel[15]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   if(*(cache_0 + pixel[2]) > cb)
+                                    if(*(cache_0 + pixel[1]) > cb)
+                                     if(*(cache_0 + pixel[15]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else if(*(cache_0 + pixel[10]) < c_b)
+                              if(*(cache_0 + pixel[13]) > cb)
+                               if(*(cache_0 + pixel[1]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[14]) > cb)
+                                  if(*(cache_0 + pixel[15]) > cb)
+                                   if(*(cache_0 + pixel[2]) > cb)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[11]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else if(*(cache_0 + pixel[13]) < c_b)
+                               if(*(cache_0 + pixel[9]) < c_b)
+                                if(*(cache_0 + pixel[11]) < c_b)
+                                 if(*(cache_0 + -3) < c_b)
+                                  if(*(cache_0 + pixel[14]) < c_b)
+                                   if(*(cache_0 + pixel[15]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              if(*(cache_0 + -3) > cb)
+                               if(*(cache_0 + pixel[1]) > cb)
+                                if(*(cache_0 + pixel[15]) > cb)
+                                 if(*(cache_0 + pixel[2]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  if(*(cache_0 + pixel[11]) > cb)
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    if(*(cache_0 + pixel[14]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                           else if(*(cache_0 + pixel[6]) < c_b)
+                            if(*(cache_0 + pixel[15]) > cb)
+                             if(*(cache_0 + pixel[1]) > cb)
+                              if(*(cache_0 + pixel[2]) > cb)
+                               if(*(cache_0 + pixel[3]) > cb)
+                                goto success;
+                               else
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[7]) > cb)
+                                    if(*(cache_0 + pixel[9]) > cb)
+                                     if(*(cache_0 + pixel[10]) > cb)
+                                      if(*(cache_0 + pixel[11]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               if(*(cache_0 + pixel[11]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[7]) > cb)
+                                    if(*(cache_0 + pixel[9]) > cb)
+                                     if(*(cache_0 + pixel[10]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else
+                              if(*(cache_0 + pixel[10]) > cb)
+                               if(*(cache_0 + pixel[11]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[7]) > cb)
+                                    if(*(cache_0 + pixel[9]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else if(*(cache_0 + pixel[15]) < c_b)
+                             if(*(cache_0 + pixel[9]) > cb)
+                              if(*(cache_0 + pixel[10]) > cb)
+                               if(*(cache_0 + pixel[11]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[7]) > cb)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else if(*(cache_0 + pixel[9]) < c_b)
+                              if(*(cache_0 + pixel[10]) < c_b)
+                               if(*(cache_0 + pixel[11]) < c_b)
+                                if(*(cache_0 + -3) < c_b)
+                                 if(*(cache_0 + pixel[13]) < c_b)
+                                  if(*(cache_0 + pixel[14]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             if(*(cache_0 + pixel[9]) > cb)
+                              if(*(cache_0 + pixel[10]) > cb)
+                               if(*(cache_0 + pixel[11]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[7]) > cb)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                           else
+                            if(*(cache_0 + pixel[15]) > cb)
+                             if(*(cache_0 + pixel[2]) > cb)
+                              if(*(cache_0 + pixel[1]) > cb)
+                               if(*(cache_0 + pixel[3]) > cb)
+                                goto success;
+                               else if(*(cache_0 + pixel[3]) < c_b)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[7]) > cb)
+                                    if(*(cache_0 + pixel[9]) > cb)
+                                     if(*(cache_0 + pixel[10]) > cb)
+                                      if(*(cache_0 + pixel[11]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[14]) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else if(*(cache_0 + pixel[14]) < c_b)
+                                  if(*(cache_0 + pixel[7]) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    if(*(cache_0 + pixel[10]) > cb)
+                                     if(*(cache_0 + pixel[11]) > cb)
+                                      if(*(cache_0 + pixel[13]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  if(*(cache_0 + pixel[7]) > cb)
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    if(*(cache_0 + pixel[9]) > cb)
+                                     if(*(cache_0 + pixel[11]) > cb)
+                                      if(*(cache_0 + pixel[10]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                              else if(*(cache_0 + pixel[1]) < c_b)
+                               if(*(cache_0 + pixel[10]) > cb)
+                                if(*(cache_0 + pixel[11]) > cb)
+                                 if(*(cache_0 + -3) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[7]) > cb)
+                                     if(*(cache_0 + pixel[9]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               if(*(cache_0 + -3) > cb)
+                                if(*(cache_0 + pixel[11]) > cb)
+                                 if(*(cache_0 + pixel[10]) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[7]) > cb)
+                                     if(*(cache_0 + pixel[9]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else if(*(cache_0 + pixel[2]) < c_b)
+                              if(*(cache_0 + pixel[11]) > cb)
+                               if(*(cache_0 + -3) > cb)
+                                if(*(cache_0 + pixel[13]) > cb)
+                                 if(*(cache_0 + pixel[14]) > cb)
+                                  if(*(cache_0 + pixel[1]) > cb)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[10]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                 else
+                                  if(*(cache_0 + pixel[7]) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    if(*(cache_0 + pixel[10]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              if(*(cache_0 + pixel[11]) > cb)
+                               if(*(cache_0 + -3) > cb)
+                                if(*(cache_0 + pixel[13]) > cb)
+                                 if(*(cache_0 + pixel[10]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[7]) > cb)
+                                    if(*(cache_0 + pixel[9]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  if(*(cache_0 + pixel[1]) > cb)
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else if(*(cache_0 + pixel[15]) < c_b)
+                             if(*(cache_0 + pixel[9]) > cb)
+                              if(*(cache_0 + pixel[10]) > cb)
+                               if(*(cache_0 + pixel[11]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[7]) > cb)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else if(*(cache_0 + pixel[9]) < c_b)
+                              if(*(cache_0 + pixel[10]) < c_b)
+                               if(*(cache_0 + pixel[11]) < c_b)
+                                if(*(cache_0 + -3) < c_b)
+                                 if(*(cache_0 + pixel[13]) < c_b)
+                                  if(*(cache_0 + pixel[14]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             if(*(cache_0 + -3) > cb)
+                              if(*(cache_0 + pixel[13]) > cb)
+                               if(*(cache_0 + pixel[7]) > cb)
+                                if(*(cache_0 + pixel[10]) > cb)
+                                 if(*(cache_0 + pixel[11]) > cb)
+                                  if(*(cache_0 + pixel[9]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else if(*(cache_0 + pixel[7]) < c_b)
+                                if(*(cache_0 + pixel[9]) > cb)
+                                 if(*(cache_0 + pixel[10]) > cb)
+                                  if(*(cache_0 + pixel[11]) > cb)
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                if(*(cache_0 + pixel[14]) > cb)
+                                 if(*(cache_0 + pixel[10]) > cb)
+                                  if(*(cache_0 + pixel[11]) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                          else if(*(cache_0 + pixel[5]) < c_b)
+                           if(*(cache_0 + pixel[14]) > cb)
+                            if(*(cache_0 + pixel[15]) > cb)
+                             if(*(cache_0 + pixel[1]) > cb)
+                              if(*(cache_0 + pixel[2]) > cb)
+                               if(*(cache_0 + pixel[3]) > cb)
+                                goto success;
+                               else
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  goto success;
+                                 else
+                                  if(*(cache_0 + pixel[6]) > cb)
+                                   if(*(cache_0 + pixel[7]) > cb)
+                                    if(*(cache_0 + pixel[9]) > cb)
+                                     if(*(cache_0 + pixel[10]) > cb)
+                                      if(*(cache_0 + pixel[11]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                              else
+                               if(*(cache_0 + pixel[11]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  goto success;
+                                 else
+                                  if(*(cache_0 + pixel[6]) > cb)
+                                   if(*(cache_0 + pixel[7]) > cb)
+                                    if(*(cache_0 + pixel[9]) > cb)
+                                     if(*(cache_0 + pixel[10]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else
+                              if(*(cache_0 + pixel[10]) > cb)
+                               if(*(cache_0 + pixel[11]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  goto success;
+                                 else
+                                  if(*(cache_0 + pixel[6]) > cb)
+                                   if(*(cache_0 + pixel[7]) > cb)
+                                    if(*(cache_0 + pixel[9]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else
+                             if(*(cache_0 + pixel[9]) > cb)
+                              if(*(cache_0 + pixel[10]) > cb)
+                               if(*(cache_0 + pixel[11]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  goto success;
+                                 else
+                                  if(*(cache_0 + pixel[6]) > cb)
+                                   if(*(cache_0 + pixel[7]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                           else if(*(cache_0 + pixel[14]) < c_b)
+                            if(*(cache_0 + pixel[9]) > cb)
+                             if(*(cache_0 + pixel[7]) > cb)
+                              if(*(cache_0 + pixel[10]) > cb)
+                               if(*(cache_0 + pixel[11]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[6]) > cb)
+                                  goto success;
+                                 else
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else if(*(cache_0 + pixel[9]) < c_b)
+                             if(*(cache_0 + pixel[10]) < c_b)
+                              if(*(cache_0 + pixel[11]) < c_b)
+                               if(*(cache_0 + -3) < c_b)
+                                if(*(cache_0 + pixel[13]) < c_b)
+                                 if(*(cache_0 + pixel[15]) < c_b)
+                                  goto success;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            if(*(cache_0 + pixel[7]) > cb)
+                             if(*(cache_0 + pixel[9]) > cb)
+                              if(*(cache_0 + pixel[10]) > cb)
+                               if(*(cache_0 + pixel[11]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[6]) > cb)
+                                  goto success;
+                                 else
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                          else
+                           if(*(cache_0 + pixel[14]) > cb)
+                            if(*(cache_0 + pixel[2]) > cb)
+                             if(*(cache_0 + pixel[1]) > cb)
+                              if(*(cache_0 + pixel[3]) > cb)
+                               if(*(cache_0 + pixel[15]) > cb)
+                                goto success;
+                               else if(*(cache_0 + pixel[15]) < c_b)
+                                if(*(cache_0 + pixel[9]) > cb)
+                                 if(*(cache_0 + pixel[10]) > cb)
+                                  if(*(cache_0 + pixel[11]) > cb)
+                                   if(*(cache_0 + -3) > cb)
+                                    if(*(cache_0 + pixel[13]) > cb)
+                                     goto success;
+                                    else
+                                     if(*(cache_0 + pixel[6]) > cb)
+                                      if(*(cache_0 + pixel[7]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[11]) > cb)
+                                  if(*(cache_0 + pixel[9]) > cb)
+                                   if(*(cache_0 + pixel[10]) > cb)
+                                    if(*(cache_0 + pixel[13]) > cb)
+                                     goto success;
+                                    else
+                                     if(*(cache_0 + pixel[6]) > cb)
+                                      if(*(cache_0 + pixel[7]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else if(*(cache_0 + pixel[3]) < c_b)
+                               if(*(cache_0 + -3) > cb)
+                                if(*(cache_0 + pixel[13]) > cb)
+                                 if(*(cache_0 + pixel[15]) > cb)
+                                  goto success;
+                                 else
+                                  if(*(cache_0 + pixel[9]) > cb)
+                                   if(*(cache_0 + pixel[10]) > cb)
+                                    if(*(cache_0 + pixel[11]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 if(*(cache_0 + pixel[6]) > cb)
+                                  if(*(cache_0 + pixel[7]) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    if(*(cache_0 + pixel[10]) > cb)
+                                     if(*(cache_0 + pixel[11]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                              else
+                               if(*(cache_0 + -3) > cb)
+                                if(*(cache_0 + pixel[13]) > cb)
+                                 if(*(cache_0 + pixel[15]) > cb)
+                                  goto success;
+                                 else if(*(cache_0 + pixel[15]) < c_b)
+                                  if(*(cache_0 + pixel[9]) > cb)
+                                   if(*(cache_0 + pixel[10]) > cb)
+                                    if(*(cache_0 + pixel[11]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  if(*(cache_0 + pixel[10]) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    if(*(cache_0 + pixel[11]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 if(*(cache_0 + pixel[6]) > cb)
+                                  if(*(cache_0 + pixel[7]) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    if(*(cache_0 + pixel[10]) > cb)
+                                     if(*(cache_0 + pixel[11]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                             else if(*(cache_0 + pixel[1]) < c_b)
+                              if(*(cache_0 + pixel[10]) > cb)
+                               if(*(cache_0 + pixel[11]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[9]) > cb)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[15]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                 else
+                                  if(*(cache_0 + pixel[6]) > cb)
+                                   if(*(cache_0 + pixel[7]) > cb)
+                                    if(*(cache_0 + pixel[9]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              if(*(cache_0 + pixel[11]) > cb)
+                               if(*(cache_0 + pixel[10]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[15]) > cb)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                 else
+                                  if(*(cache_0 + pixel[6]) > cb)
+                                   if(*(cache_0 + pixel[7]) > cb)
+                                    if(*(cache_0 + pixel[9]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else if(*(cache_0 + pixel[2]) < c_b)
+                             if(*(cache_0 + pixel[11]) > cb)
+                              if(*(cache_0 + -3) > cb)
+                               if(*(cache_0 + pixel[13]) > cb)
+                                if(*(cache_0 + pixel[10]) > cb)
+                                 if(*(cache_0 + pixel[9]) > cb)
+                                  goto success;
+                                 else
+                                  if(*(cache_0 + pixel[15]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                else
+                                 if(*(cache_0 + pixel[1]) > cb)
+                                  if(*(cache_0 + pixel[15]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                if(*(cache_0 + pixel[6]) > cb)
+                                 if(*(cache_0 + pixel[7]) > cb)
+                                  if(*(cache_0 + pixel[9]) > cb)
+                                   if(*(cache_0 + pixel[10]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             if(*(cache_0 + pixel[11]) > cb)
+                              if(*(cache_0 + -3) > cb)
+                               if(*(cache_0 + pixel[10]) > cb)
+                                if(*(cache_0 + pixel[13]) > cb)
+                                 if(*(cache_0 + pixel[15]) > cb)
+                                  goto success;
+                                 else
+                                  if(*(cache_0 + pixel[9]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                else if(*(cache_0 + pixel[13]) < c_b)
+                                 if(*(cache_0 + pixel[6]) > cb)
+                                  if(*(cache_0 + pixel[7]) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 if(*(cache_0 + pixel[7]) > cb)
+                                  if(*(cache_0 + pixel[6]) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                if(*(cache_0 + pixel[1]) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[15]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                           else if(*(cache_0 + pixel[14]) < c_b)
+                            if(*(cache_0 + pixel[11]) > cb)
+                             if(*(cache_0 + pixel[7]) > cb)
+                              if(*(cache_0 + pixel[9]) > cb)
+                               if(*(cache_0 + pixel[10]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[6]) > cb)
+                                  goto success;
+                                 else
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else if(*(cache_0 + pixel[11]) < c_b)
+                             if(*(cache_0 + pixel[9]) < c_b)
+                              if(*(cache_0 + pixel[10]) < c_b)
+                               if(*(cache_0 + -3) < c_b)
+                                if(*(cache_0 + pixel[13]) < c_b)
+                                 if(*(cache_0 + pixel[15]) < c_b)
+                                  goto success;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            if(*(cache_0 + -3) > cb)
+                             if(*(cache_0 + pixel[7]) > cb)
+                              if(*(cache_0 + pixel[10]) > cb)
+                               if(*(cache_0 + pixel[11]) > cb)
+                                if(*(cache_0 + pixel[13]) > cb)
+                                 if(*(cache_0 + pixel[9]) > cb)
+                                  goto success;
+                                 else
+                                  continue;
+                                else
+                                 if(*(cache_0 + pixel[6]) > cb)
+                                  if(*(cache_0 + pixel[9]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                         else if(*(cache_0 + 3) < c_b)
+                          if(*(cache_0 + pixel[11]) > cb)
+                           if(*(cache_0 + pixel[10]) > cb)
+                            if(*(cache_0 + -3) > cb)
+                             if(*(cache_0 + pixel[13]) > cb)
+                              if(*(cache_0 + pixel[14]) > cb)
+                               if(*(cache_0 + pixel[15]) > cb)
+                                goto success;
+                               else
+                                if(*(cache_0 + pixel[9]) > cb)
+                                 goto success;
+                                else
+                                 if(*(cache_0 + pixel[1]) < c_b)
+                                  if(*(cache_0 + pixel[2]) < c_b)
+                                   if(*(cache_0 + pixel[3]) < c_b)
+                                    if(*(cache_0 + pixel[5]) < c_b)
+                                     if(*(cache_0 + pixel[6]) < c_b)
+                                      if(*(cache_0 + pixel[7]) < c_b)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                              else
+                               if(*(cache_0 + pixel[9]) > cb)
+                                if(*(cache_0 + pixel[7]) > cb)
+                                 goto success;
+                                else if(*(cache_0 + pixel[7]) < c_b)
+                                 if(*(cache_0 + pixel[1]) < c_b)
+                                  if(*(cache_0 + pixel[2]) < c_b)
+                                   if(*(cache_0 + pixel[3]) < c_b)
+                                    if(*(cache_0 + pixel[5]) < c_b)
+                                     if(*(cache_0 + pixel[6]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                if(*(cache_0 + pixel[1]) < c_b)
+                                 if(*(cache_0 + pixel[2]) < c_b)
+                                  if(*(cache_0 + pixel[3]) < c_b)
+                                   if(*(cache_0 + pixel[5]) < c_b)
+                                    if(*(cache_0 + pixel[6]) < c_b)
+                                     if(*(cache_0 + pixel[7]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                             else if(*(cache_0 + pixel[13]) < c_b)
+                              if(*(cache_0 + pixel[9]) > cb)
+                               if(*(cache_0 + pixel[6]) > cb)
+                                if(*(cache_0 + pixel[7]) > cb)
+                                 goto success;
+                                else
+                                 continue;
+                               else if(*(cache_0 + pixel[6]) < c_b)
+                                if(*(cache_0 + pixel[1]) < c_b)
+                                 if(*(cache_0 + pixel[2]) < c_b)
+                                  if(*(cache_0 + pixel[3]) < c_b)
+                                   if(*(cache_0 + pixel[5]) < c_b)
+                                    if(*(cache_0 + pixel[7]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               if(*(cache_0 + pixel[1]) < c_b)
+                                if(*(cache_0 + pixel[2]) < c_b)
+                                 if(*(cache_0 + pixel[3]) < c_b)
+                                  if(*(cache_0 + pixel[5]) < c_b)
+                                   if(*(cache_0 + pixel[6]) < c_b)
+                                    if(*(cache_0 + pixel[7]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else
+                              if(*(cache_0 + pixel[6]) > cb)
+                               if(*(cache_0 + pixel[7]) > cb)
+                                if(*(cache_0 + pixel[9]) > cb)
+                                 goto success;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else if(*(cache_0 + pixel[6]) < c_b)
+                               if(*(cache_0 + pixel[1]) < c_b)
+                                if(*(cache_0 + pixel[2]) < c_b)
+                                 if(*(cache_0 + pixel[3]) < c_b)
+                                  if(*(cache_0 + pixel[5]) < c_b)
+                                   if(*(cache_0 + pixel[7]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else if(*(cache_0 + -3) < c_b)
+                             if(*(cache_0 + pixel[9]) > cb)
+                              if(*(cache_0 + pixel[5]) > cb)
+                               if(*(cache_0 + pixel[6]) > cb)
+                                if(*(cache_0 + pixel[7]) > cb)
+                                 goto success;
+                                else
+                                 if(*(cache_0 + pixel[1]) > cb)
+                                  if(*(cache_0 + pixel[2]) > cb)
+                                   if(*(cache_0 + pixel[3]) > cb)
+                                    if(*(cache_0 + pixel[13]) > cb)
+                                     if(*(cache_0 + pixel[14]) > cb)
+                                      if(*(cache_0 + pixel[15]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                if(*(cache_0 + pixel[1]) > cb)
+                                 if(*(cache_0 + pixel[2]) > cb)
+                                  if(*(cache_0 + pixel[3]) > cb)
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    if(*(cache_0 + pixel[14]) > cb)
+                                     if(*(cache_0 + pixel[15]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else if(*(cache_0 + pixel[5]) < c_b)
+                               if(*(cache_0 + pixel[1]) > cb)
+                                if(*(cache_0 + pixel[2]) > cb)
+                                 if(*(cache_0 + pixel[3]) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    if(*(cache_0 + pixel[15]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else if(*(cache_0 + pixel[1]) < c_b)
+                                if(*(cache_0 + pixel[2]) < c_b)
+                                 if(*(cache_0 + pixel[3]) < c_b)
+                                  if(*(cache_0 + pixel[6]) < c_b)
+                                   if(*(cache_0 + pixel[7]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               if(*(cache_0 + pixel[1]) > cb)
+                                if(*(cache_0 + pixel[2]) > cb)
+                                 if(*(cache_0 + pixel[3]) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    if(*(cache_0 + pixel[15]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else
+                              if(*(cache_0 + pixel[1]) > cb)
+                               if(*(cache_0 + pixel[2]) > cb)
+                                if(*(cache_0 + pixel[3]) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + pixel[15]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else if(*(cache_0 + pixel[1]) < c_b)
+                               if(*(cache_0 + pixel[2]) < c_b)
+                                if(*(cache_0 + pixel[3]) < c_b)
+                                 if(*(cache_0 + pixel[5]) < c_b)
+                                  if(*(cache_0 + pixel[6]) < c_b)
+                                   if(*(cache_0 + pixel[7]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else
+                             if(*(cache_0 + pixel[9]) > cb)
+                              if(*(cache_0 + pixel[7]) > cb)
+                               if(*(cache_0 + pixel[5]) > cb)
+                                if(*(cache_0 + pixel[6]) > cb)
+                                 goto success;
+                                else
+                                 if(*(cache_0 + pixel[1]) > cb)
+                                  if(*(cache_0 + pixel[2]) > cb)
+                                   if(*(cache_0 + pixel[3]) > cb)
+                                    if(*(cache_0 + pixel[13]) > cb)
+                                     if(*(cache_0 + pixel[14]) > cb)
+                                      if(*(cache_0 + pixel[15]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                if(*(cache_0 + pixel[1]) > cb)
+                                 if(*(cache_0 + pixel[2]) > cb)
+                                  if(*(cache_0 + pixel[3]) > cb)
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    if(*(cache_0 + pixel[14]) > cb)
+                                     if(*(cache_0 + pixel[15]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else if(*(cache_0 + pixel[7]) < c_b)
+                               if(*(cache_0 + pixel[1]) > cb)
+                                if(*(cache_0 + pixel[2]) > cb)
+                                 if(*(cache_0 + pixel[3]) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    if(*(cache_0 + pixel[15]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else if(*(cache_0 + pixel[1]) < c_b)
+                                if(*(cache_0 + pixel[2]) < c_b)
+                                 if(*(cache_0 + pixel[3]) < c_b)
+                                  if(*(cache_0 + pixel[5]) < c_b)
+                                   if(*(cache_0 + pixel[6]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               if(*(cache_0 + pixel[1]) > cb)
+                                if(*(cache_0 + pixel[2]) > cb)
+                                 if(*(cache_0 + pixel[3]) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    if(*(cache_0 + pixel[15]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else
+                              if(*(cache_0 + pixel[1]) > cb)
+                               if(*(cache_0 + pixel[2]) > cb)
+                                if(*(cache_0 + pixel[3]) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + pixel[15]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else if(*(cache_0 + pixel[1]) < c_b)
+                               if(*(cache_0 + pixel[2]) < c_b)
+                                if(*(cache_0 + pixel[3]) < c_b)
+                                 if(*(cache_0 + pixel[5]) < c_b)
+                                  if(*(cache_0 + pixel[6]) < c_b)
+                                   if(*(cache_0 + pixel[7]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                           else if(*(cache_0 + pixel[10]) < c_b)
+                            if(*(cache_0 + pixel[15]) > cb)
+                             if(*(cache_0 + pixel[14]) > cb)
+                              if(*(cache_0 + pixel[13]) > cb)
+                               if(*(cache_0 + pixel[1]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 goto success;
+                                else
+                                 if(*(cache_0 + pixel[2]) > cb)
+                                  if(*(cache_0 + pixel[3]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else if(*(cache_0 + pixel[1]) < c_b)
+                                if(*(cache_0 + pixel[2]) < c_b)
+                                 if(*(cache_0 + pixel[3]) < c_b)
+                                  if(*(cache_0 + pixel[5]) < c_b)
+                                   if(*(cache_0 + pixel[6]) < c_b)
+                                    if(*(cache_0 + pixel[7]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               if(*(cache_0 + pixel[1]) < c_b)
+                                if(*(cache_0 + pixel[2]) < c_b)
+                                 if(*(cache_0 + pixel[3]) < c_b)
+                                  if(*(cache_0 + pixel[5]) < c_b)
+                                   if(*(cache_0 + pixel[6]) < c_b)
+                                    if(*(cache_0 + pixel[7]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else
+                              if(*(cache_0 + pixel[1]) < c_b)
+                               if(*(cache_0 + pixel[2]) < c_b)
+                                if(*(cache_0 + pixel[3]) < c_b)
+                                 if(*(cache_0 + pixel[5]) < c_b)
+                                  if(*(cache_0 + pixel[6]) < c_b)
+                                   if(*(cache_0 + pixel[7]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else
+                             if(*(cache_0 + pixel[1]) < c_b)
+                              if(*(cache_0 + pixel[2]) < c_b)
+                               if(*(cache_0 + pixel[3]) < c_b)
+                                if(*(cache_0 + pixel[5]) < c_b)
+                                 if(*(cache_0 + pixel[6]) < c_b)
+                                  if(*(cache_0 + pixel[7]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                           else
+                            if(*(cache_0 + pixel[13]) > cb)
+                             if(*(cache_0 + pixel[15]) > cb)
+                              if(*(cache_0 + pixel[14]) > cb)
+                               if(*(cache_0 + pixel[1]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 goto success;
+                                else
+                                 if(*(cache_0 + pixel[2]) > cb)
+                                  if(*(cache_0 + pixel[3]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else if(*(cache_0 + pixel[1]) < c_b)
+                                if(*(cache_0 + pixel[2]) < c_b)
+                                 if(*(cache_0 + pixel[3]) < c_b)
+                                  if(*(cache_0 + pixel[5]) < c_b)
+                                   if(*(cache_0 + pixel[6]) < c_b)
+                                    if(*(cache_0 + pixel[7]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               if(*(cache_0 + pixel[1]) < c_b)
+                                if(*(cache_0 + pixel[2]) < c_b)
+                                 if(*(cache_0 + pixel[3]) < c_b)
+                                  if(*(cache_0 + pixel[5]) < c_b)
+                                   if(*(cache_0 + pixel[6]) < c_b)
+                                    if(*(cache_0 + pixel[7]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else
+                              if(*(cache_0 + pixel[1]) < c_b)
+                               if(*(cache_0 + pixel[2]) < c_b)
+                                if(*(cache_0 + pixel[3]) < c_b)
+                                 if(*(cache_0 + pixel[5]) < c_b)
+                                  if(*(cache_0 + pixel[6]) < c_b)
+                                   if(*(cache_0 + pixel[7]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else
+                             if(*(cache_0 + pixel[1]) < c_b)
+                              if(*(cache_0 + pixel[2]) < c_b)
+                               if(*(cache_0 + pixel[3]) < c_b)
+                                if(*(cache_0 + pixel[5]) < c_b)
+                                 if(*(cache_0 + pixel[6]) < c_b)
+                                  if(*(cache_0 + pixel[7]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                          else if(*(cache_0 + pixel[11]) < c_b)
+                           if(*(cache_0 + pixel[15]) > cb)
+                            if(*(cache_0 + pixel[14]) > cb)
+                             if(*(cache_0 + pixel[13]) > cb)
+                              if(*(cache_0 + pixel[1]) > cb)
+                               if(*(cache_0 + pixel[2]) > cb)
+                                if(*(cache_0 + pixel[3]) > cb)
+                                 goto success;
+                                else
+                                 if(*(cache_0 + -3) > cb)
+                                  goto success;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                              else if(*(cache_0 + pixel[1]) < c_b)
+                               if(*(cache_0 + pixel[2]) < c_b)
+                                if(*(cache_0 + pixel[3]) < c_b)
+                                 if(*(cache_0 + pixel[5]) < c_b)
+                                  if(*(cache_0 + pixel[6]) < c_b)
+                                   if(*(cache_0 + pixel[7]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              if(*(cache_0 + pixel[1]) < c_b)
+                               if(*(cache_0 + pixel[2]) < c_b)
+                                if(*(cache_0 + pixel[3]) < c_b)
+                                 if(*(cache_0 + pixel[5]) < c_b)
+                                  if(*(cache_0 + pixel[6]) < c_b)
+                                   if(*(cache_0 + pixel[7]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else
+                             if(*(cache_0 + pixel[1]) < c_b)
+                              if(*(cache_0 + pixel[2]) < c_b)
+                               if(*(cache_0 + pixel[3]) < c_b)
+                                if(*(cache_0 + pixel[5]) < c_b)
+                                 if(*(cache_0 + pixel[6]) < c_b)
+                                  if(*(cache_0 + pixel[7]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                           else if(*(cache_0 + pixel[15]) < c_b)
+                            if(*(cache_0 + pixel[14]) < c_b)
+                             if(*(cache_0 + pixel[13]) < c_b)
+                              if(*(cache_0 + -3) < c_b)
+                               if(*(cache_0 + pixel[9]) < c_b)
+                                if(*(cache_0 + pixel[10]) < c_b)
+                                 goto success;
+                                else
+                                 if(*(cache_0 + pixel[1]) < c_b)
+                                  if(*(cache_0 + pixel[2]) < c_b)
+                                   if(*(cache_0 + pixel[3]) < c_b)
+                                    if(*(cache_0 + pixel[5]) < c_b)
+                                     if(*(cache_0 + pixel[6]) < c_b)
+                                      if(*(cache_0 + pixel[7]) < c_b)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                if(*(cache_0 + pixel[1]) < c_b)
+                                 if(*(cache_0 + pixel[2]) < c_b)
+                                  if(*(cache_0 + pixel[3]) < c_b)
+                                   if(*(cache_0 + pixel[5]) < c_b)
+                                    if(*(cache_0 + pixel[6]) < c_b)
+                                     if(*(cache_0 + pixel[7]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               if(*(cache_0 + pixel[1]) < c_b)
+                                if(*(cache_0 + pixel[2]) < c_b)
+                                 if(*(cache_0 + pixel[3]) < c_b)
+                                  if(*(cache_0 + pixel[5]) < c_b)
+                                   if(*(cache_0 + pixel[6]) < c_b)
+                                    if(*(cache_0 + pixel[7]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else
+                              if(*(cache_0 + pixel[1]) < c_b)
+                               if(*(cache_0 + pixel[2]) < c_b)
+                                if(*(cache_0 + pixel[3]) < c_b)
+                                 if(*(cache_0 + pixel[5]) < c_b)
+                                  if(*(cache_0 + pixel[6]) < c_b)
+                                   if(*(cache_0 + pixel[7]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else
+                             if(*(cache_0 + pixel[1]) < c_b)
+                              if(*(cache_0 + pixel[2]) < c_b)
+                               if(*(cache_0 + pixel[3]) < c_b)
+                                if(*(cache_0 + pixel[5]) < c_b)
+                                 if(*(cache_0 + pixel[6]) < c_b)
+                                  if(*(cache_0 + pixel[7]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                           else
+                            if(*(cache_0 + pixel[1]) < c_b)
+                             if(*(cache_0 + pixel[2]) < c_b)
+                              if(*(cache_0 + pixel[3]) < c_b)
+                               if(*(cache_0 + pixel[5]) < c_b)
+                                if(*(cache_0 + pixel[6]) < c_b)
+                                 if(*(cache_0 + pixel[7]) < c_b)
+                                  goto success;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                          else
+                           if(*(cache_0 + pixel[2]) > cb)
+                            if(*(cache_0 + pixel[13]) > cb)
+                             if(*(cache_0 + pixel[14]) > cb)
+                              if(*(cache_0 + pixel[15]) > cb)
+                               if(*(cache_0 + pixel[1]) > cb)
+                                if(*(cache_0 + pixel[3]) > cb)
+                                 goto success;
+                                else
+                                 if(*(cache_0 + -3) > cb)
+                                  goto success;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else if(*(cache_0 + pixel[2]) < c_b)
+                            if(*(cache_0 + pixel[1]) < c_b)
+                             if(*(cache_0 + pixel[3]) < c_b)
+                              if(*(cache_0 + pixel[5]) < c_b)
+                               if(*(cache_0 + pixel[6]) < c_b)
+                                if(*(cache_0 + pixel[7]) < c_b)
+                                 goto success;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                         else
+                          if(*(cache_0 + pixel[11]) > cb)
+                           if(*(cache_0 + pixel[13]) > cb)
+                            if(*(cache_0 + -3) > cb)
+                             if(*(cache_0 + pixel[14]) > cb)
+                              if(*(cache_0 + pixel[10]) > cb)
+                               if(*(cache_0 + pixel[9]) > cb)
+                                goto success;
+                               else
+                                if(*(cache_0 + pixel[15]) > cb)
+                                 goto success;
+                                else
+                                 continue;
+                              else
+                               if(*(cache_0 + pixel[1]) > cb)
+                                if(*(cache_0 + pixel[15]) > cb)
+                                 goto success;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else if(*(cache_0 + pixel[14]) < c_b)
+                              if(*(cache_0 + pixel[7]) > cb)
+                               if(*(cache_0 + pixel[9]) > cb)
+                                if(*(cache_0 + pixel[10]) > cb)
+                                 goto success;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              if(*(cache_0 + pixel[7]) > cb)
+                               if(*(cache_0 + pixel[10]) > cb)
+                                if(*(cache_0 + pixel[9]) > cb)
+                                 goto success;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else if(*(cache_0 + -3) < c_b)
+                             if(*(cache_0 + pixel[1]) > cb)
+                              if(*(cache_0 + pixel[15]) > cb)
+                               if(*(cache_0 + pixel[2]) > cb)
+                                if(*(cache_0 + pixel[3]) > cb)
+                                 if(*(cache_0 + pixel[14]) > cb)
+                                  goto success;
+                                 else
+                                  if(*(cache_0 + pixel[5]) > cb)
+                                   if(*(cache_0 + pixel[6]) > cb)
+                                    if(*(cache_0 + pixel[7]) > cb)
+                                     if(*(cache_0 + pixel[9]) > cb)
+                                      if(*(cache_0 + pixel[10]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 if(*(cache_0 + pixel[5]) > cb)
+                                  if(*(cache_0 + pixel[6]) > cb)
+                                   if(*(cache_0 + pixel[7]) > cb)
+                                    if(*(cache_0 + pixel[9]) > cb)
+                                     if(*(cache_0 + pixel[10]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                if(*(cache_0 + pixel[5]) > cb)
+                                 if(*(cache_0 + pixel[6]) > cb)
+                                  if(*(cache_0 + pixel[7]) > cb)
+                                   if(*(cache_0 + pixel[9]) > cb)
+                                    if(*(cache_0 + pixel[10]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               if(*(cache_0 + pixel[5]) > cb)
+                                if(*(cache_0 + pixel[6]) > cb)
+                                 if(*(cache_0 + pixel[7]) > cb)
+                                  if(*(cache_0 + pixel[9]) > cb)
+                                   if(*(cache_0 + pixel[10]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else
+                              if(*(cache_0 + pixel[5]) > cb)
+                               if(*(cache_0 + pixel[6]) > cb)
+                                if(*(cache_0 + pixel[7]) > cb)
+                                 if(*(cache_0 + pixel[9]) > cb)
+                                  if(*(cache_0 + pixel[10]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else
+                             if(*(cache_0 + pixel[6]) > cb)
+                              if(*(cache_0 + pixel[5]) > cb)
+                               if(*(cache_0 + pixel[10]) > cb)
+                                if(*(cache_0 + pixel[7]) > cb)
+                                 if(*(cache_0 + pixel[9]) > cb)
+                                  goto success;
+                                 else if(*(cache_0 + pixel[9]) < c_b)
+                                  if(*(cache_0 + pixel[1]) > cb)
+                                   if(*(cache_0 + pixel[2]) > cb)
+                                    if(*(cache_0 + pixel[3]) > cb)
+                                     if(*(cache_0 + pixel[14]) > cb)
+                                      if(*(cache_0 + pixel[15]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  if(*(cache_0 + pixel[3]) > cb)
+                                   if(*(cache_0 + pixel[2]) > cb)
+                                    if(*(cache_0 + pixel[1]) > cb)
+                                     if(*(cache_0 + pixel[14]) > cb)
+                                      if(*(cache_0 + pixel[15]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else if(*(cache_0 + pixel[7]) < c_b)
+                                 if(*(cache_0 + pixel[1]) > cb)
+                                  if(*(cache_0 + pixel[2]) > cb)
+                                   if(*(cache_0 + pixel[3]) > cb)
+                                    if(*(cache_0 + pixel[14]) > cb)
+                                     if(*(cache_0 + pixel[15]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 if(*(cache_0 + pixel[3]) > cb)
+                                  if(*(cache_0 + pixel[2]) > cb)
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    if(*(cache_0 + pixel[1]) > cb)
+                                     if(*(cache_0 + pixel[15]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else if(*(cache_0 + pixel[10]) < c_b)
+                                if(*(cache_0 + pixel[1]) > cb)
+                                 if(*(cache_0 + pixel[2]) > cb)
+                                  if(*(cache_0 + pixel[3]) > cb)
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    if(*(cache_0 + pixel[15]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                if(*(cache_0 + pixel[3]) > cb)
+                                 if(*(cache_0 + pixel[1]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + pixel[15]) > cb)
+                                    if(*(cache_0 + pixel[2]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else if(*(cache_0 + pixel[5]) < c_b)
+                               if(*(cache_0 + pixel[1]) > cb)
+                                if(*(cache_0 + pixel[2]) > cb)
+                                 if(*(cache_0 + pixel[3]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + pixel[15]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               if(*(cache_0 + pixel[3]) > cb)
+                                if(*(cache_0 + pixel[15]) > cb)
+                                 if(*(cache_0 + pixel[1]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + pixel[2]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else if(*(cache_0 + pixel[6]) < c_b)
+                              if(*(cache_0 + pixel[1]) > cb)
+                               if(*(cache_0 + pixel[2]) > cb)
+                                if(*(cache_0 + pixel[3]) > cb)
+                                 if(*(cache_0 + pixel[14]) > cb)
+                                  if(*(cache_0 + pixel[15]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              if(*(cache_0 + pixel[3]) > cb)
+                               if(*(cache_0 + pixel[1]) > cb)
+                                if(*(cache_0 + pixel[2]) > cb)
+                                 if(*(cache_0 + pixel[14]) > cb)
+                                  if(*(cache_0 + pixel[15]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                           else if(*(cache_0 + pixel[13]) < c_b)
+                            if(*(cache_0 + pixel[6]) > cb)
+                             if(*(cache_0 + pixel[7]) > cb)
+                              if(*(cache_0 + pixel[9]) > cb)
+                               if(*(cache_0 + pixel[10]) > cb)
+                                if(*(cache_0 + pixel[5]) > cb)
+                                 goto success;
+                                else
+                                 if(*(cache_0 + -3) > cb)
+                                  goto success;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            if(*(cache_0 + pixel[6]) > cb)
+                             if(*(cache_0 + pixel[5]) > cb)
+                              if(*(cache_0 + pixel[10]) > cb)
+                               if(*(cache_0 + pixel[7]) > cb)
+                                if(*(cache_0 + pixel[9]) > cb)
+                                 goto success;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else if(*(cache_0 + pixel[5]) < c_b)
+                              if(*(cache_0 + pixel[7]) > cb)
+                               if(*(cache_0 + pixel[9]) > cb)
+                                if(*(cache_0 + pixel[10]) > cb)
+                                 if(*(cache_0 + -3) > cb)
+                                  goto success;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              if(*(cache_0 + -3) > cb)
+                               if(*(cache_0 + pixel[10]) > cb)
+                                if(*(cache_0 + pixel[9]) > cb)
+                                 if(*(cache_0 + pixel[7]) > cb)
+                                  goto success;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else
+                             continue;
+                          else if(*(cache_0 + pixel[11]) < c_b)
+                           if(*(cache_0 + pixel[14]) > cb)
+                            if(*(cache_0 + pixel[13]) > cb)
+                             if(*(cache_0 + pixel[2]) > cb)
+                              if(*(cache_0 + pixel[1]) > cb)
+                               if(*(cache_0 + pixel[15]) > cb)
+                                if(*(cache_0 + pixel[3]) > cb)
+                                 goto success;
+                                else
+                                 if(*(cache_0 + -3) > cb)
+                                  goto success;
+                                 else
+                                  continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else if(*(cache_0 + pixel[14]) < c_b)
+                            if(*(cache_0 + pixel[9]) < c_b)
+                             if(*(cache_0 + pixel[10]) < c_b)
+                              if(*(cache_0 + -3) < c_b)
+                               if(*(cache_0 + pixel[13]) < c_b)
+                                if(*(cache_0 + pixel[15]) < c_b)
+                                 goto success;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                          else
+                           if(*(cache_0 + pixel[13]) > cb)
+                            if(*(cache_0 + pixel[2]) > cb)
+                             if(*(cache_0 + -3) > cb)
+                              if(*(cache_0 + pixel[14]) > cb)
+                               if(*(cache_0 + pixel[15]) > cb)
+                                if(*(cache_0 + pixel[1]) > cb)
+                                 goto success;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else if(*(cache_0 + -3) < c_b)
+                              if(*(cache_0 + pixel[1]) > cb)
+                               if(*(cache_0 + pixel[3]) > cb)
+                                if(*(cache_0 + pixel[14]) > cb)
+                                 if(*(cache_0 + pixel[15]) > cb)
+                                  goto success;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              if(*(cache_0 + pixel[3]) > cb)
+                               if(*(cache_0 + pixel[14]) > cb)
+                                if(*(cache_0 + pixel[15]) > cb)
+                                 if(*(cache_0 + pixel[1]) > cb)
+                                  goto success;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else
+                             continue;
+                           else
+                            continue;
+                        else if(*(cache_0 + pixel[8]) < c_b)
+                         if(*(cache_0 + pixel[9]) > cb)
+                          if(*(cache_0 + pixel[1]) > cb)
+                           if(*(cache_0 + pixel[15]) > cb)
+                            if(*(cache_0 + pixel[14]) > cb)
+                             if(*(cache_0 + pixel[13]) > cb)
+                              if(*(cache_0 + -3) > cb)
+                               if(*(cache_0 + pixel[2]) > cb)
+                                goto success;
+                               else if(*(cache_0 + pixel[2]) < c_b)
+                                if(*(cache_0 + pixel[11]) > cb)
+                                 goto success;
+                                else
+                                 if(*(cache_0 + pixel[3]) < c_b)
+                                  if(*(cache_0 + 3) < c_b)
+                                   if(*(cache_0 + pixel[5]) < c_b)
+                                    if(*(cache_0 + pixel[6]) < c_b)
+                                     if(*(cache_0 + pixel[7]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                if(*(cache_0 + pixel[11]) > cb)
+                                 goto success;
+                                else
+                                 continue;
+                              else
+                               if(*(cache_0 + pixel[2]) > cb)
+                                if(*(cache_0 + pixel[3]) > cb)
+                                 goto success;
+                                else
+                                 continue;
+                               else if(*(cache_0 + pixel[2]) < c_b)
+                                if(*(cache_0 + pixel[3]) < c_b)
+                                 if(*(cache_0 + 3) < c_b)
+                                  if(*(cache_0 + pixel[5]) < c_b)
+                                   if(*(cache_0 + pixel[6]) < c_b)
+                                    if(*(cache_0 + pixel[7]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else
+                              if(*(cache_0 + pixel[2]) > cb)
+                               if(*(cache_0 + pixel[3]) > cb)
+                                if(*(cache_0 + 3) > cb)
+                                 goto success;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else if(*(cache_0 + pixel[2]) < c_b)
+                               if(*(cache_0 + pixel[3]) < c_b)
+                                if(*(cache_0 + 3) < c_b)
+                                 if(*(cache_0 + pixel[5]) < c_b)
+                                  if(*(cache_0 + pixel[6]) < c_b)
+                                   if(*(cache_0 + pixel[7]) < c_b)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else
+                             if(*(cache_0 + pixel[2]) > cb)
+                              if(*(cache_0 + pixel[3]) > cb)
+                               if(*(cache_0 + 3) > cb)
+                                if(*(cache_0 + pixel[5]) > cb)
+                                 goto success;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else if(*(cache_0 + pixel[2]) < c_b)
+                              if(*(cache_0 + pixel[3]) < c_b)
+                               if(*(cache_0 + 3) < c_b)
+                                if(*(cache_0 + pixel[5]) < c_b)
+                                 if(*(cache_0 + pixel[6]) < c_b)
+                                  if(*(cache_0 + pixel[7]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                           else
+                            if(*(cache_0 + pixel[2]) > cb)
+                             if(*(cache_0 + pixel[3]) > cb)
+                              if(*(cache_0 + 3) > cb)
+                               if(*(cache_0 + pixel[5]) > cb)
+                                if(*(cache_0 + pixel[6]) > cb)
+                                 goto success;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else if(*(cache_0 + pixel[2]) < c_b)
+                             if(*(cache_0 + pixel[3]) < c_b)
+                              if(*(cache_0 + 3) < c_b)
+                               if(*(cache_0 + pixel[5]) < c_b)
+                                if(*(cache_0 + pixel[6]) < c_b)
+                                 if(*(cache_0 + pixel[7]) < c_b)
+                                  goto success;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                          else if(*(cache_0 + pixel[1]) < c_b)
+                           if(*(cache_0 + pixel[2]) < c_b)
+                            if(*(cache_0 + pixel[7]) < c_b)
+                             if(*(cache_0 + pixel[6]) < c_b)
+                              if(*(cache_0 + pixel[5]) < c_b)
+                               if(*(cache_0 + pixel[3]) < c_b)
+                                if(*(cache_0 + 3) < c_b)
+                                 goto success;
+                                else
+                                 if(*(cache_0 + pixel[10]) > cb)
+                                  if(*(cache_0 + pixel[11]) > cb)
+                                   if(*(cache_0 + -3) > cb)
+                                    if(*(cache_0 + pixel[13]) > cb)
+                                     if(*(cache_0 + pixel[14]) > cb)
+                                      if(*(cache_0 + pixel[15]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                if(*(cache_0 + pixel[10]) > cb)
+                                 if(*(cache_0 + pixel[11]) > cb)
+                                  if(*(cache_0 + -3) > cb)
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    if(*(cache_0 + pixel[14]) > cb)
+                                     if(*(cache_0 + pixel[15]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               if(*(cache_0 + pixel[10]) > cb)
+                                if(*(cache_0 + pixel[11]) > cb)
+                                 if(*(cache_0 + -3) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    if(*(cache_0 + pixel[15]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else
+                              if(*(cache_0 + pixel[10]) > cb)
+                               if(*(cache_0 + pixel[11]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + pixel[15]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else
+                             if(*(cache_0 + pixel[10]) > cb)
+                              if(*(cache_0 + pixel[11]) > cb)
+                               if(*(cache_0 + -3) > cb)
+                                if(*(cache_0 + pixel[13]) > cb)
+                                 if(*(cache_0 + pixel[14]) > cb)
+                                  if(*(cache_0 + pixel[15]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                           else
+                            if(*(cache_0 + pixel[10]) > cb)
+                             if(*(cache_0 + pixel[11]) > cb)
+                              if(*(cache_0 + -3) > cb)
+                               if(*(cache_0 + pixel[13]) > cb)
+                                if(*(cache_0 + pixel[14]) > cb)
+                                 if(*(cache_0 + pixel[15]) > cb)
+                                  goto success;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                          else
+                           if(*(cache_0 + pixel[2]) > cb)
+                            if(*(cache_0 + pixel[10]) > cb)
+                             if(*(cache_0 + pixel[11]) > cb)
+                              if(*(cache_0 + -3) > cb)
+                               if(*(cache_0 + pixel[13]) > cb)
+                                if(*(cache_0 + pixel[14]) > cb)
+                                 if(*(cache_0 + pixel[15]) > cb)
+                                  goto success;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else if(*(cache_0 + pixel[2]) < c_b)
+                            if(*(cache_0 + pixel[7]) < c_b)
+                             if(*(cache_0 + pixel[6]) < c_b)
+                              if(*(cache_0 + pixel[5]) < c_b)
+                               if(*(cache_0 + pixel[3]) < c_b)
+                                if(*(cache_0 + 3) < c_b)
+                                 goto success;
+                                else
+                                 if(*(cache_0 + pixel[10]) > cb)
+                                  if(*(cache_0 + pixel[11]) > cb)
+                                   if(*(cache_0 + -3) > cb)
+                                    if(*(cache_0 + pixel[13]) > cb)
+                                     if(*(cache_0 + pixel[14]) > cb)
+                                      if(*(cache_0 + pixel[15]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                if(*(cache_0 + pixel[10]) > cb)
+                                 if(*(cache_0 + pixel[11]) > cb)
+                                  if(*(cache_0 + -3) > cb)
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    if(*(cache_0 + pixel[14]) > cb)
+                                     if(*(cache_0 + pixel[15]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               if(*(cache_0 + pixel[10]) > cb)
+                                if(*(cache_0 + pixel[11]) > cb)
+                                 if(*(cache_0 + -3) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    if(*(cache_0 + pixel[15]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else
+                              if(*(cache_0 + pixel[10]) > cb)
+                               if(*(cache_0 + pixel[11]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + pixel[15]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else
+                             if(*(cache_0 + pixel[10]) > cb)
+                              if(*(cache_0 + pixel[11]) > cb)
+                               if(*(cache_0 + -3) > cb)
+                                if(*(cache_0 + pixel[13]) > cb)
+                                 if(*(cache_0 + pixel[14]) > cb)
+                                  if(*(cache_0 + pixel[15]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                           else
+                            if(*(cache_0 + pixel[13]) > cb)
+                             if(*(cache_0 + pixel[10]) > cb)
+                              if(*(cache_0 + pixel[11]) > cb)
+                               if(*(cache_0 + -3) > cb)
+                                if(*(cache_0 + pixel[14]) > cb)
+                                 if(*(cache_0 + pixel[15]) > cb)
+                                  goto success;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                         else if(*(cache_0 + pixel[9]) < c_b)
+                          if(*(cache_0 + pixel[7]) > cb)
+                           if(*(cache_0 + pixel[1]) > cb)
+                            if(*(cache_0 + pixel[2]) > cb)
+                             if(*(cache_0 + pixel[3]) > cb)
+                              if(*(cache_0 + pixel[15]) > cb)
+                               if(*(cache_0 + 3) > cb)
+                                if(*(cache_0 + pixel[14]) > cb)
+                                 goto success;
+                                else if(*(cache_0 + pixel[14]) < c_b)
+                                 if(*(cache_0 + pixel[5]) > cb)
+                                  goto success;
+                                 else
+                                  if(*(cache_0 + pixel[10]) < c_b)
+                                   if(*(cache_0 + pixel[11]) < c_b)
+                                    if(*(cache_0 + -3) < c_b)
+                                     if(*(cache_0 + pixel[13]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 if(*(cache_0 + pixel[5]) > cb)
+                                  goto success;
+                                 else
+                                  continue;
+                               else
+                                if(*(cache_0 + pixel[14]) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  goto success;
+                                 else
+                                  continue;
+                                else if(*(cache_0 + pixel[14]) < c_b)
+                                 if(*(cache_0 + pixel[10]) < c_b)
+                                  if(*(cache_0 + pixel[11]) < c_b)
+                                   if(*(cache_0 + -3) < c_b)
+                                    if(*(cache_0 + pixel[13]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               if(*(cache_0 + 3) > cb)
+                                if(*(cache_0 + pixel[5]) > cb)
+                                 if(*(cache_0 + pixel[6]) > cb)
+                                  goto success;
+                                 else
+                                  if(*(cache_0 + pixel[10]) < c_b)
+                                   if(*(cache_0 + pixel[11]) < c_b)
+                                    if(*(cache_0 + -3) < c_b)
+                                     if(*(cache_0 + pixel[13]) < c_b)
+                                      if(*(cache_0 + pixel[14]) < c_b)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 if(*(cache_0 + pixel[10]) < c_b)
+                                  if(*(cache_0 + pixel[11]) < c_b)
+                                   if(*(cache_0 + -3) < c_b)
+                                    if(*(cache_0 + pixel[13]) < c_b)
+                                     if(*(cache_0 + pixel[14]) < c_b)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                if(*(cache_0 + pixel[10]) < c_b)
+                                 if(*(cache_0 + pixel[11]) < c_b)
+                                  if(*(cache_0 + -3) < c_b)
+                                   if(*(cache_0 + pixel[13]) < c_b)
+                                    if(*(cache_0 + pixel[14]) < c_b)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                             else
+                              if(*(cache_0 + -3) > cb)
+                               if(*(cache_0 + pixel[13]) > cb)
+                                if(*(cache_0 + pixel[14]) > cb)
+                                 if(*(cache_0 + pixel[15]) > cb)
+                                  goto success;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else if(*(cache_0 + -3) < c_b)
+                               if(*(cache_0 + pixel[10]) < c_b)
+                                if(*(cache_0 + pixel[11]) < c_b)
+                                 if(*(cache_0 + pixel[13]) < c_b)
+                                  if(*(cache_0 + pixel[14]) < c_b)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else
+                             if(*(cache_0 + pixel[11]) > cb)
+                              if(*(cache_0 + -3) > cb)
+                               if(*(cache_0 + pixel[13]) > cb)
+                                if(*(cache_0 + pixel[14]) > cb)
+                                 if(*(cache_0 + pixel[15]) > cb)
+                                  goto success;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else if(*(cache_0 + pixel[11]) < c_b)
+                              if(*(cache_0 + pixel[10]) < c_b)
+                               if(*(cache_0 + -3) < c_b)
+                                if(*(cache_0 + pixel[13]) < c_b)
+                                 if(*(cache_0 + pixel[14]) < c_b)
+                                  goto success;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                           else if(*(cache_0 + pixel[1]) < c_b)
+                            if(*(cache_0 + pixel[10]) > cb)
+                             if(*(cache_0 + pixel[11]) > cb)
+                              if(*(cache_0 + -3) > cb)
+                               if(*(cache_0 + pixel[13]) > cb)
+                                if(*(cache_0 + pixel[14]) > cb)
+                                 if(*(cache_0 + pixel[15]) > cb)
+                                  goto success;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else if(*(cache_0 + pixel[10]) < c_b)
+                             if(*(cache_0 + pixel[11]) < c_b)
+                              if(*(cache_0 + -3) < c_b)
+                               if(*(cache_0 + pixel[13]) < c_b)
+                                if(*(cache_0 + pixel[14]) < c_b)
+                                 goto success;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                           else
+                            if(*(cache_0 + -3) > cb)
+                             if(*(cache_0 + pixel[10]) > cb)
+                              if(*(cache_0 + pixel[11]) > cb)
+                               if(*(cache_0 + pixel[13]) > cb)
+                                if(*(cache_0 + pixel[14]) > cb)
+                                 if(*(cache_0 + pixel[15]) > cb)
+                                  goto success;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else if(*(cache_0 + -3) < c_b)
+                             if(*(cache_0 + pixel[10]) < c_b)
+                              if(*(cache_0 + pixel[11]) < c_b)
+                               if(*(cache_0 + pixel[13]) < c_b)
+                                if(*(cache_0 + pixel[14]) < c_b)
+                                 goto success;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                             else
+                              continue;
+                            else
+                             continue;
+                          else if(*(cache_0 + pixel[7]) < c_b)
+                           if(*(cache_0 + pixel[10]) > cb)
+                            if(*(cache_0 + pixel[6]) > cb)
+                             if(*(cache_0 + pixel[1]) > cb)
+                              if(*(cache_0 + pixel[2]) > cb)
+                               if(*(cache_0 + pixel[3]) > cb)
+                                if(*(cache_0 + 3) > cb)
+                                 if(*(cache_0 + pixel[5]) > cb)
+                                  goto success;
+                                 else
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + pixel[15]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + pixel[15]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + pixel[15]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               if(*(cache_0 + pixel[11]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + pixel[15]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else
+                              if(*(cache_0 + pixel[11]) > cb)
+                               if(*(cache_0 + -3) > cb)
+                                if(*(cache_0 + pixel[13]) > cb)
+                                 if(*(cache_0 + pixel[14]) > cb)
+                                  if(*(cache_0 + pixel[15]) > cb)
+                                   goto success;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else if(*(cache_0 + pixel[6]) < c_b)
+                             if(*(cache_0 + pixel[3]) > cb)
+                              if(*(cache_0 + pixel[15]) > cb)
+                               if(*(cache_0 + pixel[1]) > cb)
+                                if(*(cache_0 + pixel[2]) > cb)
+                                 if(*(cache_0 + pixel[14]) > cb)
+                                  if(*(cache_0 + 3) > cb)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                 else
+                                  if(*(cache_0 + 3) > cb)
+                                   if(*(cache_0 + pixel[5]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 if(*(cache_0 + pixel[11]) > cb)
+                                  if(*(cache_0 + -3) > cb)
+                                   if(*(cache_0 + pixel[13]) > cb)
+                                    if(*(cache_0 + pixel[14]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                if(*(cache_0 + pixel[11]) > cb)
+                                 if(*(cache_0 + -3) > cb)
+                                  if(*(cache_0 + pixel[13]) > cb)
+                                   if(*(cache_0 + pixel[14]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               continue;
+                             else if(*(cache_0 + pixel[3]) < c_b)
+                              if(*(cache_0 + pixel[5]) < c_b)
+                               if(*(cache_0 + 3) < c_b)
+                                goto success;
+                               else
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[13]) > cb)
+                                  if(*(cache_0 + pixel[14]) > cb)
+                                   if(*(cache_0 + pixel[15]) > cb)
+                                    if(*(cache_0 + pixel[11]) > cb)
+                                     goto success;
+                                    else
+                                     if(*(cache_0 + pixel[1]) > cb)
+                                      if(*(cache_0 + pixel[2]) > cb)
+                                       goto success;
+                                      else
+                                       continue;
+                                     else
+                                      continue;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else
+                               if(*(cache_0 + -3) > cb)
+                                if(*(cache_0 + pixel[13]) > cb)
+                                 if(*(cache_0 + pixel[14]) > cb)
+                                  if(*(cache_0 + pixel[15]) > cb)
+                                   if(*(cache_0 + pixel[11]) > cb)
+                                    goto success;
+                                   else
+                                    if(*(cache_0 + pixel[1]) > cb)
+                                     if(*(cache_0 + pixel[2]) > cb)
+                                      goto success;
+                                     else
+                                      continue;
+                                    else
+                                     continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                             else
+                              if(*(cache_0 + pixel[13]) > cb)
+                               if(*(cache_0 + pixel[15]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[14]) > cb)
+                                  if(*(cache_0 + pixel[11]) > cb)
+                                   goto success;
+                                  else
+                                   if(*(cache_0 + pixel[1]) > cb)
+                                    if(*(cache_0 + pixel[2]) > cb)
+                                     goto success;
+                                    else
+                                     continue;
+                                   else
+                                    continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               continue;
+                            else
+                             if(*(cache_0 + pixel[15]) > cb)
+                              if(*(cache_0 + pixel[14]) > cb)
+                               if(*(cache_0 + pixel[13]) > cb)
+                                if(*(cache_0 + -3) > cb)
+                                 if(*(cache_0 + pixel[11]) > cb)
+                                  goto success;
+                                 else
+                                  if(*(cache_0 + pixel[1]) > cb)
+                                   if(*(cache_0 + pixel[2]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                else
+                                 if(*(cache_0 + pixel[1]) > cb)
+                                  if(*(cache_0 + pixel[2]) > cb)
+                                   if(*(cache_0 + pixel[3]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                               else
+                                if(*(cache_0 + pixel[1]) > cb)
+                                 if(*(cache_0 + pixel[2]) > cb)
+                                  if(*(cache_0 + pixel[3]) > cb)
+                                   if(*(cache_0 + 3) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                              else if(*(cache_0 + pixel[14]) < c_b)
+                               if(*(cache_0 + pixel[1]) > cb)
+                                if(*(cache_0 + pixel[2]) > cb)
+                                 if(*(cache_0 + pixel[3]) > cb)
+                                  if(*(cache_0 + 3) > cb)
+                                   if(*(cache_0 + pixel[5]) > cb)
+                                    goto success;
+                                   else
+                                    continue;
+                                  else
+                                   continue;
+                                 else
+                                  continue;
+                                else
+                                 continue;
+                               else
+                                continue;
+                              else
+                               if(*(cache_0 + pixel[2]) > cb)
+                                if(*(cache_0 + pixel[1]) > cb)
+                                 if(*(cache_0 + pixel[3]) > cb)
+                                  if(*(cache_0 + 3) > cb)
+                                   if(*(cache_0 + pixel[5]) > cb)
+                                    goto success;
+                                   else
+