"Fossies" - the Fresh Open Source Software Archive

Member "mathmod-branches-r508-trunk/pariso/isosurface/TableMap.h" (8 Mar 2021, 40965 Bytes) of package /linux/misc/mathmod-11.0-source.zip:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) C and C++ source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file. For more information about "TableMap.h" see the Fossies "Dox" file reference documentation and the latest Fossies "Diffs" side-by-side code changes report: 10.1_vs_11.0.

    1 /***************************************************************************
    2  *   Copyright (C) 2021 by Abderrahman Taha                                *
    3  *                                                                         *
    4  *                                                                         *
    5  *   This program is free software; you can redistribute it and/or modify  *
    6  *   it under the terms of the GNU General Public License as published by  *
    7  *   the Free Software Foundation; either version 2 of the License, or     *
    8  *   (at your option) any later version.                                   *
    9  *                                                                         *
   10  *   This program is distributed in the hope that it will be useful,       *
   11  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
   12  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
   13  *   GNU General Public License for more details.                          *
   14  *                                                                         *
   15  *   You should have received a copy of the GNU General Public License     *
   16  *   along with this program; if not, write to the                         *
   17  *   Free Software Foundation, Inc.,                                       *
   18  *   51 Franklin Street, Fifth Floor,Boston, MA 02110-11301 USA             *
   19  ***************************************************************************/
   20 #ifndef TABLEMAP_H
   21 #define TABLEMAP_H
   22 
   23 #endif // TABLEMAP_H
   24 
   25 
   26 
   27 
   28 unsigned int triTable_min[256][19] =
   29 {
   30     {111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 0, 111, 111},
   31     {0, 8, 3, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 3, 111},
   32     {0, 1, 9, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 3, 111},
   33     {1, 9, 8, 3, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 4, 111},
   34     {1, 2, 10, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 3, 111},
   35     {0, 8, 3, 1, 2, 10, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 3, 3},
   36     {9, 0, 2, 10, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 4, 111},
   37     {2, 10, 9, 8, 3, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
   38     {3, 11, 2, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 3, 111},
   39     {0, 8, 11, 2, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 4, 111},
   40     {1, 9, 0, 2, 3, 11, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 3, 3},
   41     {1, 9, 8, 11, 2, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
   42     {3, 11, 10, 1, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 4, 111},
   43     {0, 8, 11, 10, 1, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
   44     {3, 11, 10, 9, 0, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
   45     {9, 8, 11, 10, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 4, 111},
   46     {4, 7, 8, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 3, 111},
   47     {4, 7, 3, 0, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 4, 111},
   48     {0, 1, 9, 8, 4, 7, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 3, 3},
   49     {4, 7, 3, 1, 9, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
   50     {1, 2, 10, 8, 4, 7, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 3, 3},
   51     {3, 0, 4, 7, 1, 2, 10, 111,111, 111, 111, 111, 111, 111, 111, 111, 2, 4, 3},
   52     {9, 0, 2, 10, 8, 4, 7, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 4, 3},
   53     {2, 10, 9, 4, 7, 3, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
   54     {8, 4, 7, 3, 11, 2, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 3, 3},
   55     {11, 2, 0, 4, 7, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
   56     {9, 0, 1, 8, 4, 7, 2, 3, 11, 111, 111, 111, 111, 111, 111, 111, 3, 111, 111},
   57     {4, 7, 11, 2, 1, 9, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
   58     {3, 11, 10, 1, 7, 8, 4, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 4, 3},
   59     {1, 0, 4, 7, 11, 10, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
   60     {9, 0, 3, 11, 10, 4, 7, 8, 111, 111, 111, 111, 111, 111, 111, 111, 2, 5, 3},
   61     {4, 7, 11, 10, 9, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
   62     {9, 5, 4, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 3, 111},
   63     {9, 5, 4, 0, 8, 3, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 3, 3},
   64     {0, 1, 5, 4, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 4, 111},
   65     {8, 3, 1, 5, 4, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
   66     {1, 2, 10, 9, 5, 4, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 3, 3},
   67     {3, 0, 8, 1, 2, 10, 4, 9, 5, 111, 111, 111, 111, 111, 111, 111, 3, 111, 111},
   68     {5, 4, 0, 2, 10, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
   69     {2, 10, 5, 4, 8, 3, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
   70     {9, 5, 4, 2, 3, 11, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 3, 3},
   71     {0, 8, 11, 2, 4, 9, 5, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 4, 3},
   72     {0, 1, 5, 4, 2, 3, 11, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 4, 3},
   73     {2, 1, 5, 4, 8, 11, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
   74     {10, 1, 3, 11, 9, 5, 4, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 4, 3},
   75     {0, 8, 11, 10, 1, 4, 9, 5, 111, 111, 111, 111, 111, 111, 111, 111, 2, 5, 3},
   76     {5, 4, 0, 3, 11, 10, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
   77     {5, 4, 8, 11, 10, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
   78     {9, 5, 7, 8, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 4, 111},
   79     {9, 5, 7, 3, 0, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
   80     {0, 1, 5, 7, 8, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
   81     {1, 5, 7, 3, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 4, 111},
   82     {9, 5, 7, 8, 10, 1, 2, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 4, 3},
   83     {9, 5, 7, 3, 0, 10, 1, 2, 111, 111, 111, 111, 111, 111, 111, 111, 2, 5, 3},
   84     {8, 0, 2, 10, 5, 7, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
   85     {2, 10, 5, 7, 3, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
   86     {7, 8, 9, 5, 3, 11, 2, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 4, 3},
   87     {9, 5, 7, 11, 2, 0, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
   88     {0, 1, 5, 7, 8, 2, 3, 11, 111, 111, 111, 111, 111, 111, 111, 111, 2, 5, 3},
   89     {11, 2, 1, 5, 7, 111, 111, 1, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
   90     {9, 5, 7, 8, 1, 3, 11, 10, 111, 111, 111, 111, 111, 111, 111, 111, 2, 4, 4},
   91     {5, 7, 11, 10, 1, 0, 9, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 7, 111},
   92     {11, 10, 5, 7, 8, 0, 3, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 7, 111},
   93     {11, 10, 5, 7, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 4, 111},
   94     {10, 6, 5, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 3, 111},
   95     {0, 8, 3, 5, 10, 6, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 3, 3},
   96     {9, 0, 1, 5, 10, 6, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 3, 3},
   97     {1, 9, 8, 3, 5, 10, 6, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 4, 3},
   98     {1, 2, 6, 5, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 4, 111},
   99     {1, 2, 6, 5, 3, 0, 8, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 4, 3},
  100     {9, 0, 2, 6, 5, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  101     {5, 9, 8, 3, 2, 6, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  102     {2, 3, 11, 10, 6, 5, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 3, 3},
  103     {11, 2, 0, 8, 10, 6, 5, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 4, 3},
  104     {0, 1, 9, 2, 3, 11, 5, 10, 6, 111, 111, 111, 111, 111, 111, 111, 3, 111, 111},
  105     {1, 9, 8, 11, 2, 5, 10, 6, 111, 5, 10, 6, 111, 111, 111, 111, 2, 5, 3},
  106     {6, 5, 1, 3, 11, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  107     {0, 8, 11, 6, 5, 1, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  108     {3, 11, 6, 5, 9, 0, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  109     {6, 5, 9, 8, 11, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  110     {5, 10, 6, 4, 7, 8, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 3, 3},
  111     {4, 7, 3, 0, 6, 5, 10, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 4, 3},
  112     {1, 9, 0, 5, 10, 6, 8, 4, 7, 111, 111, 111, 111, 111, 111, 111, 3, 111, 111},
  113     {1, 9, 4, 7, 3,  10, 6, 5, 111, 111, 111, 111, 111, 111, 111, 111, 2, 5, 3},
  114     {6, 5, 1, 2, 4, 7, 8, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 4, 3},
  115     {1, 2, 6, 5, 3, 0, 4, 7, 111, 111, 111, 111, 111, 111, 111, 111, 2, 4, 4},
  116     {9, 0, 2, 6, 5, 8, 4, 7, 111, 111, 111, 111, 111, 111, 111, 111, 2, 5, 3},
  117     {7, 3, 2, 6, 5, 9, 4, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 7, 111},
  118     {3, 11, 2, 7, 8, 4, 10, 6, 5, 111, 111, 111, 111, 111, 111, 111, 3, 111, 111},
  119     {4, 7, 11, 2, 0, 5, 10, 6, 111, 111, 111, 111, 111, 111, 111, 111, 2, 5, 3},
  120     {0, 1, 9, 4, 7, 8, 2, 3, 11, 5, 10, 6, 111, 111, 111, 111, 4, 111, 111},
  121     {9, 4, 7, 11, 2, 1, 5, 10, 6, 111, 111, 111, 111, 111, 111, 111, 2, 6, 3},
  122     {3, 11, 6, 5, 1, 8, 4, 7, 111, 111, 111, 111, 111, 111, 111, 111, 2, 5, 3},
  123     {5, 1, 0, 4, 7, 11, 6, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 7, 111},
  124     {0, 3, 11, 6, 5, 9, 8, 4, 7, 111, 111, 111, 111, 111, 111, 111, 2, 6, 3},
  125     {6, 5, 9, 4, 7, 11, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  126     {10, 6, 4, 9, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 4, 111},
  127     {4, 9, 10, 6, 8, 3, 0, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 4, 3},
  128     {10, 6, 4, 0, 1, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  129     {8, 3, 1, 10, 6, 4, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  130     {1, 2, 6, 4, 9, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  131     {1, 2, 6, 4, 9, 3, 0, 8, 111, 111, 111, 111, 111, 111, 111, 111, 2, 5, 3},
  132     {0, 2, 6, 4, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 4, 111},
  133     {8, 3, 2, 6, 4, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  134     {10, 6, 4, 9, 11, 2, 3, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 4, 3},
  135     {0, 8, 11, 2, 4, 9, 10, 6, 111, 111, 111, 111, 111, 111, 111, 111, 2, 4, 4},
  136     {0, 1, 10, 6, 4, 3, 11, 2, 111, 111, 111, 111, 111, 111, 111, 111, 2, 5, 3},
  137     {6, 4, 8, 11, 2, 1, 10, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 7, 111},
  138     {9, 1, 3, 11, 6, 4, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  139     {8, 11, 6, 4, 9, 1, 0, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 7, 111},
  140     {3, 11, 6, 4, 0, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  141     {6, 4, 8, 11, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 4, 111},
  142     {7, 8, 9, 10, 6, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  143     {0, 9, 10, 6, 7, 3, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  144     {10, 6, 7, 8, 0, 1, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  145     {10, 6, 7, 3, 1, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  146     {1, 2, 6, 7, 8, 9, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  147     {2, 6, 7, 3, 0, 9, 1, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 7, 111},
  148     {7, 8, 0, 2, 6, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  149     {7, 3, 2, 6, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 4, 111},
  150     {10, 6, 7, 8, 9, 2, 3, 11, 111, 111, 111, 111, 111, 111, 111, 111, 2, 5, 3},
  151     {2, 0, 9, 10, 6, 7, 11, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 7, 111},
  152     {1, 10, 6, 7, 8, 0, 2, 3, 11, 111, 111, 111, 111, 111, 111, 111, 2, 6, 3},
  153     {11, 2, 1, 10, 6, 7, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  154     {8, 9, 1, 3, 11, 6, 7, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 7, 111},
  155     {0, 9, 1, 11, 6, 7, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 3, 3},
  156     {7, 8, 0, 3, 11, 6, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  157     {7, 11, 6, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 3, 111},
  158     {7, 6, 11, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 3, 111},
  159     {3, 0, 8, 11, 7, 6, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 3, 3},
  160     {0, 1, 9, 11, 7, 6, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 3, 3},
  161     {8, 3, 1, 9, 7, 6, 11, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 4, 3},
  162     {10, 1, 2, 6, 11, 7, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 3, 3},
  163     {1, 2, 10, 3, 0, 8, 6, 11, 7, 111, 111, 111, 111, 111, 111, 111, 3, 111, 111},
  164     {2, 10, 9, 0, 6, 11, 7, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 4, 3},
  165     { 2, 10, 9, 8, 3, 11, 7, 6, 111, 111, 111, 111,111, 111, 111, 111, 2, 5, 3},
  166     {7, 6, 2, 3, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 4, 111},
  167     {7, 6, 2, 0, 8, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  168     {2, 3, 7, 6, 0, 1, 9, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 4, 3},
  169     {1, 9, 8, 7, 6, 2, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  170     {10, 1, 3, 7, 6, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  171     {10, 1, 0, 8, 7, 6, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  172     {0, 3, 7, 6, 10, 9, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  173     {7, 6, 10, 9, 8, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  174     {6, 11, 8, 4, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 4, 111},
  175     {3, 0, 4, 6, 11, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  176     {8, 4, 6, 11, 9, 0, 1, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 4, 3},
  177     {9, 4, 6, 11, 3, 1, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  178     {6, 11, 8, 4, 2, 10, 1, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 4, 3},
  179     {3, 0, 4, 6, 11, 1, 2, 10, 111, 111, 111, 111, 111, 111, 111, 111, 2, 5, 3},
  180     {4, 6, 11, 8, 0, 2, 10, 9, 111, 111, 111, 111, 111, 111, 111, 111, 2, 4, 4},
  181     {10, 9, 4, 6, 11, 3, 2, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 7, 111},
  182     {8, 4, 6, 2, 3, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  183     {0, 4, 6, 2, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 4, 111},
  184     {2, 3, 8, 4, 6, 1, 9, 0, 111, 111, 111, 111, 111, 111, 111, 111, 2, 5, 3},
  185     {1, 9, 4, 6, 2, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  186     {8, 4, 6, 10, 1, 3, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  187     {10, 1, 0, 4, 6, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  188     {4, 6, 10, 9, 0, 3, 8, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 7, 111},
  189     {10, 9, 4, 6, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 4, 111},
  190     {4, 9, 5, 7, 6, 11, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 3, 3},
  191     {0, 8, 3, 4, 9, 5, 11, 7, 6, 111, 111, 111, 111, 111, 111, 111, 3, 111, 111},
  192     {5, 4, 0, 1, 7, 6, 11, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 4, 3},
  193     {8, 3, 1, 5, 4, 11, 7, 6, 111, 111, 111, 111, 111, 111, 111, 111, 2, 5, 3},
  194     {9, 5, 4, 10, 1, 2, 7, 6, 11, 111, 111, 111, 111, 111, 111, 111, 3, 111, 111},
  195     {6, 11, 7, 1, 2, 10, 0, 8, 3, 4, 9, 5, 111, 111, 111, 111, 4, 111, 111},
  196     {5, 4, 0, 2, 10, 7, 6, 11, 111, 111, 111, 111, 111, 111, 111, 111, 2, 5, 3},
  197     {3, 2, 10, 5, 4, 8, 11, 7, 6, 111, 111, 111, 111, 111, 111, 111, 2, 6, 3},
  198     {7, 6, 2, 3, 5, 4, 9, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 4, 3},
  199     {0, 8, 7, 6, 2, 9, 5, 4, 111, 111, 111, 111, 111, 111, 111, 111, 2, 5, 3},
  200     {3, 7, 6, 2, 1, 5, 4, 0, 111, 111, 111, 111, 111, 111, 111, 111, 2, 4, 4},
  201     {6, 2, 1, 5, 4, 8, 7, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 7, 111},
  202     {10, 1, 3, 7, 6, 9, 5, 4, 111, 111, 111, 111, 111, 111, 111, 111, 2, 5, 3},
  203     {1, 0, 8, 7, 6, 10, 9, 5, 4, 111, 111, 111, 111, 111, 111, 111, 2, 6, 3},
  204     {4, 0, 3, 7, 6, 10, 5, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 7, 111},
  205     {7, 6, 10, 5, 4, 8, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  206     {6, 11, 8, 9, 5, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  207     {3, 0, 9, 5, 6, 11, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  208     {0, 1, 5, 6, 11, 8, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  209     {6, 11, 3, 1, 5, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  210     {9, 5, 6, 11, 8, 1, 2, 10, 111, 111, 111, 111, 111, 111, 111, 111, 2, 5, 3},
  211     {0, 9, 5, 6, 11, 3, 1, 2, 10, 111, 111, 111, 111, 111, 111, 111, 2, 6, 3},
  212     {11, 8, 0, 2, 10, 5, 6, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 7, 111},
  213     {6, 11, 3, 2, 10, 5, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  214     {5, 6, 2, 3, 8, 9, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  215     {9, 5, 6, 2, 0, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  216     {1, 5, 6, 2, 3, 8, 0, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 7, 111},
  217     {1, 5, 6, 2, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 4, 111},
  218     {1, 3, 8, 9, 5, 6, 10, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 7, 111},
  219     {10, 1, 0, 9, 5, 6, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  220     {0, 3, 8, 5, 6, 10, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 3, 3},
  221     {10, 5, 6, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 3, 111},
  222     {11, 7, 5, 10, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 4, 111},
  223     {11, 7, 5, 10, 8, 3, 0, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 4, 3},
  224     {5, 10, 11, 7, 1, 9, 0, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 4, 3},
  225     {10, 11, 7, 5, 9, 8, 3, 1, 111, 111, 111, 111, 111, 111, 111, 111, 2, 4, 4},
  226     {11, 7, 5, 1, 2, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  227     {1, 2, 11, 7, 5, 0, 8, 3, 111, 111, 111, 111, 111, 111, 111, 111, 2, 5, 3},
  228     {9, 0, 2, 11, 7, 5, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  229     {7, 5, 9, 8, 3, 2, 11, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 7, 111},
  230     {2, 3, 7, 5, 10, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  231     {8, 7, 5, 10, 2, 0, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  232     {5, 10, 2, 3, 7, 9, 0, 1, 111, 111, 111, 111, 111, 111, 111, 111, 2, 5, 3},
  233     {9, 8, 7, 5, 10, 2, 1, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 7, 111},
  234     {1, 3, 7, 5, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 4, 111},
  235     {0, 8, 7, 5, 1, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  236     {9, 0, 3, 7, 5, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  237     {9, 8, 7, 5, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 4, 111},
  238     {5, 10, 11, 8, 4, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  239     {5, 10, 11, 3, 0, 4, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  240     {8, 4, 5, 10, 11, 0, 1, 9, 111, 111, 111, 111, 111, 111, 111, 111, 2, 5, 3},
  241     {10, 11, 3, 1, 9, 4, 5, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 7, 111},
  242     {2, 11, 8, 4, 5, 1, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  243     {0, 4, 5, 1, 2, 11, 3, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 7, 111},
  244     {0, 2, 11, 8, 4, 5, 9, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 7, 111},
  245     {9, 4, 5, 2, 11, 3, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 3, 3},
  246     {2, 3, 8, 4, 5, 10, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  247     {5, 10, 2, 0, 4, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  248     {3, 8, 4, 5, 10, 2, 0, 1, 9, 111, 111, 111, 111, 111, 111, 111, 2, 6, 3},
  249     {5, 10, 2, 1, 9, 4, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  250     {8, 4, 5, 1, 3, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  251     {0, 4, 5, 1, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 4, 111},
  252     {8, 4, 5, 9, 0, 3, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  253     {9, 4, 5, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 3, 111},
  254     {4, 9, 10, 11, 7, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  255     {4, 9, 10, 11, 7, 0, 8, 3, 111, 111, 111, 111, 111, 111, 111, 111, 2, 5, 3},
  256     {1, 10, 11, 7, 4, 0, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  257     {3, 1, 10, 11, 7, 4, 8, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 7, 111},
  258     {4, 9, 1, 2, 11, 7, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  259     {9, 1, 2, 11, 7, 4, 0, 8, 3, 111, 111, 111, 111, 111, 111, 111, 2, 6, 3},
  260     {11, 7, 4, 0, 2, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  261     {11, 7, 4, 8, 3, 2, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  262     {2, 3, 7, 4, 9, 10, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  263     {9, 10, 2, 0, 8, 7, 4, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 7, 111},
  264     {3, 7, 4, 0, 1, 10, 2, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 7, 111},
  265     {1, 10, 2, 8, 7, 4, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 2, 3, 3},
  266     {4, 9, 1, 3, 7, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  267     {4, 9, 1, 7, 8, 7, 1, 0, 111, 111, 111, 111, 111, 111, 111, 111, 2, 4, 4},
  268     {4, 0, 3, 7, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 4, 111},
  269     {4, 8, 7, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 3, 111},
  270     {9, 10, 11, 8, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 4, 111},
  271     {3, 0, 9, 10, 11, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  272     {0, 1, 10, 11, 8, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  273     {3, 1, 10, 11, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 4, 111},
  274     {1, 2, 11, 8, 9, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  275     {3, 0, 9, 1, 2, 11, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  276     {0, 2, 11, 8, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 4, 111},
  277     {3, 2, 11, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 3, 111},
  278     {2, 3, 8, 9, 10, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 5, 111},
  279     {9, 10, 2, 0, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 4, 111},
  280     {2, 3, 8, 0, 1, 10, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 6, 111},
  281     {1, 10, 2, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 3, 111},
  282     {1, 3, 8, 9, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 4, 111},
  283     {0, 9, 1, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 3, 111},
  284     {0, 3, 8, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 1, 3, 111},
  285     {111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 0, 111, 111}
  286 };
  287 
  288 unsigned int triTable[256][16] =
  289 {
  290     {111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  291     {0, 8, 3, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  292     {0, 1, 9, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  293     {1, 8, 3, 9, 8, 1, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  294     {1, 2, 10, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  295     {0, 8, 3, 1, 2, 10, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  296     {9, 2, 10, 0, 2, 9, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  297     {2, 8, 3, 2, 10, 8, 10, 9, 8, 111, 111, 111, 111, 111, 111, 111},
  298     {3, 11, 2, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  299     {0, 11, 2, 8, 11, 0, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  300     {1, 9, 0, 2, 3, 11, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  301     {1, 11, 2, 1, 9, 11, 9, 8, 11, 111, 111, 111, 111, 111, 111, 111},
  302     {3, 10, 1, 11, 10, 3, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  303     {0, 10, 1, 0, 8, 10, 8, 11, 10, 111, 111, 111, 111, 111, 111, 111},
  304     {3, 9, 0, 3, 11, 9, 11, 10, 9, 111, 111, 111, 111, 111, 111, 111},
  305     {9, 8, 10, 10, 8, 11, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  306     {4, 7, 8, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  307     {4, 3, 0, 7, 3, 4, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  308     {0, 1, 9, 8, 4, 7, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  309     {4, 1, 9, 4, 7, 1, 7, 3, 1, 111, 111, 111, 111, 111, 111, 111},
  310     {1, 2, 10, 8, 4, 7, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  311     {3, 4, 7, 3, 0, 4, 1, 2, 10, 111, 111, 111, 111, 111, 111, 111},
  312     {9, 2, 10, 9, 0, 2, 8, 4, 7, 111, 111, 111, 111, 111, 111, 111},
  313     {2, 10, 9, 2, 9, 7, 2, 7, 3, 7, 9, 4, 111, 111, 111, 111},
  314     {8, 4, 7, 3, 11, 2, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  315     {11, 4, 7, 11, 2, 4, 2, 0, 4, 111, 111, 111, 111, 111, 111, 111},
  316     {9, 0, 1, 8, 4, 7, 2, 3, 11, 111, 111, 111, 111, 111, 111, 111},
  317     {4, 7, 11, 9, 4, 11, 9, 11, 2, 9, 2, 1, 111, 111, 111, 111},
  318     {3, 10, 1, 3, 11, 10, 7, 8, 4, 111, 111, 111, 111, 111, 111, 111},
  319     {1, 11, 10, 1, 4, 11, 1, 0, 4, 7, 11, 4, 111, 111, 111, 111},
  320     {9, 0, 11, 9, 11, 10, 11, 0, 3, 4, 7, 8, 111, 111, 111, 111},
  321     {4, 7, 11, 4, 11, 9, 9, 11, 10, 111, 111, 111, 111, 111, 111, 111},
  322     {9, 5, 4, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  323     {9, 5, 4, 0, 8, 3, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  324     {0, 5, 4, 1, 5, 0, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  325     {8, 5, 4, 8, 3, 5, 3, 1, 5, 111, 111, 111, 111, 111, 111, 111},
  326     {1, 2, 10, 9, 5, 4, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  327     {3, 0, 8, 1, 2, 10, 4, 9, 5, 111, 111, 111, 111, 111, 111, 111},
  328     {5, 2, 10, 5, 4, 2, 4, 0, 2, 111, 111, 111, 111, 111, 111, 111},
  329     {2, 10, 5, 3, 2, 5, 3, 5, 4, 3, 4, 8, 111, 111, 111, 111},
  330     {9, 5, 4, 2, 3, 11, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  331     {0, 11, 2, 0, 8, 11, 4, 9, 5, 111, 111, 111, 111, 111, 111, 111},
  332     {0, 5, 4, 0, 1, 5, 2, 3, 11, 111, 111, 111, 111, 111, 111, 111},
  333     {2, 1, 5, 2, 5, 8, 2, 8, 11, 4, 8, 5, 111, 111, 111, 111},
  334     {10, 3, 11, 10, 1, 3, 9, 5, 4, 111, 111, 111, 111, 111, 111, 111},
  335     {4, 9, 5, 0, 8, 1, 8, 10, 1, 8, 11, 10, 111, 111, 111, 111},
  336     {5, 4, 0, 5, 0, 11, 5, 11, 10, 11, 0, 3, 111, 111, 111, 111},
  337     {5, 4, 8, 5, 8, 10, 10, 8, 11, 111, 111, 111, 111, 111, 111, 111},
  338     {9, 7, 8, 5, 7, 9, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  339     {9, 3, 0, 9, 5, 3, 5, 7, 3, 111, 111, 111, 111, 111, 111, 111},
  340     {0, 7, 8, 0, 1, 7, 1, 5, 7, 111, 111, 111, 111, 111, 111, 111},
  341     {1, 5, 3, 3, 5, 7, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  342     {9, 7, 8, 9, 5, 7, 10, 1, 2, 111, 111, 111, 111, 111, 111, 111},
  343     {9, 5, 0, 5, 3, 0, 5, 7, 3, 10, 1, 2, 111, 111, 111, 111},
  344     {8, 0, 2, 8, 2, 5, 8, 5, 7, 10, 5, 2, 111, 111, 111, 111},
  345     {2, 10, 5, 2, 5, 3, 3, 5, 7, 111, 111, 111, 111, 111, 111, 111},
  346     {7, 9, 5, 7, 8, 9, 3, 11, 2, 111, 111, 111, 111, 111, 111, 111},
  347     {9, 5, 7, 9, 7, 2, 9, 2, 0, 2, 7, 11, 111, 111, 111, 111},
  348     {2, 3, 11, 0, 1, 8, 1, 7, 8, 1, 5, 7, 111, 111, 111, 111},
  349     {11, 2, 1, 11, 1, 7, 7, 1, 5, 111, 111, 111, 111, 111, 111, 111},
  350     {9, 5, 8, 8, 5, 7, 10, 1, 3, 10, 3, 11, 111, 111, 111, 111},
  351     {5, 7, 0, 5, 0, 9, 7, 11, 0, 1, 0, 10, 11, 10, 0, 111},
  352     {11, 10, 0, 11, 0, 3, 10, 5, 0, 8, 0, 7, 5, 7, 0, 111},
  353     {11, 10, 5, 7, 11, 5, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  354     {10, 6, 5, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  355     {0, 8, 3, 5, 10, 6, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  356     {9, 0, 1, 5, 10, 6, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  357     {1, 8, 3, 1, 9, 8, 5, 10, 6, 111, 111, 111, 111, 111, 111, 111},
  358     {1, 6, 5, 2, 6, 1, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  359     {1, 6, 5, 1, 2, 6, 3, 0, 8, 111, 111, 111, 111, 111, 111, 111},
  360     {9, 6, 5, 9, 0, 6, 0, 2, 6, 111, 111, 111, 111, 111, 111, 111},
  361     {5, 9, 8, 5, 8, 2, 5, 2, 6, 3, 2, 8, 111, 111, 111, 111},
  362     {2, 3, 11, 10, 6, 5, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  363     {11, 0, 8, 11, 2, 0, 10, 6, 5, 111, 111, 111, 111, 111, 111, 111},
  364     {0, 1, 9, 2, 3, 11, 5, 10, 6, 111, 111, 111, 111, 111, 111, 111},
  365     {5, 10, 6, 1, 9, 2, 9, 11, 2, 9, 8, 11, 111, 111, 111, 111},
  366     {6, 3, 11, 6, 5, 3, 5, 1, 3, 111, 111, 111, 111, 111, 111, 111},
  367     {0, 8, 11, 0, 11, 5, 0, 5, 1, 5, 11, 6, 111, 111, 111, 111},
  368     {3, 11, 6, 0, 3, 6, 0, 6, 5, 0, 5, 9, 111, 111, 111, 111},
  369     {6, 5, 9, 6, 9, 11, 11, 9, 8, 111, 111, 111, 111, 111, 111, 111},
  370     {5, 10, 6, 4, 7, 8, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  371     {4, 3, 0, 4, 7, 3, 6, 5, 10, 111, 111, 111, 111, 111, 111, 111},
  372     {1, 9, 0, 5, 10, 6, 8, 4, 7, 111, 111, 111, 111, 111, 111, 111},
  373     {10, 6, 5, 1, 9, 7, 1, 7, 3, 7, 9, 4, 111, 111, 111, 111},
  374     {6, 1, 2, 6, 5, 1, 4, 7, 8, 111, 111, 111, 111, 111, 111, 111},
  375     {1, 2, 5, 5, 2, 6, 3, 0, 4, 3, 4, 7, 111, 111, 111, 111},
  376     {8, 4, 7, 9, 0, 5, 0, 6, 5, 0, 2, 6, 111, 111, 111, 111},
  377     {7, 3, 9, 7, 9, 4, 3, 2, 9, 5, 9, 6, 2, 6, 9, 111},
  378     {3, 11, 2, 7, 8, 4, 10, 6, 5, 111, 111, 111, 111, 111, 111, 111},
  379     {5, 10, 6, 4, 7, 2, 4, 2, 0, 2, 7, 11, 111, 111, 111, 111},
  380     {0, 1, 9, 4, 7, 8, 2, 3, 11, 5, 10, 6, 111, 111, 111, 111},
  381     {9, 2, 1, 9, 11, 2, 9, 4, 11, 7, 11, 4, 5, 10, 6, 111},
  382     {8, 4, 7, 3, 11, 5, 3, 5, 1, 5, 11, 6, 111, 111, 111, 111},
  383     {5, 1, 11, 5, 11, 6, 1, 0, 11, 7, 11, 4, 0, 4, 11, 111},
  384     {0, 5, 9, 0, 6, 5, 0, 3, 6, 11, 6, 3, 8, 4, 7, 111},
  385     {6, 5, 9, 6, 9, 11, 4, 7, 9, 7, 11, 9, 111, 111, 111, 111},
  386     {10, 4, 9, 6, 4, 10, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  387     {4, 10, 6, 4, 9, 10, 0, 8, 3, 111, 111, 111, 111, 111, 111, 111},
  388     {10, 0, 1, 10, 6, 0, 6, 4, 0, 111, 111, 111, 111, 111, 111, 111},
  389     {8, 3, 1, 8, 1, 6, 8, 6, 4, 6, 1, 10, 111, 111, 111, 111},
  390     {1, 4, 9, 1, 2, 4, 2, 6, 4, 111, 111, 111, 111, 111, 111, 111},
  391     {3, 0, 8, 1, 2, 9, 2, 4, 9, 2, 6, 4, 111, 111, 111, 111},
  392     {0, 2, 4, 4, 2, 6, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  393     {8, 3, 2, 8, 2, 4, 4, 2, 6, 111, 111, 111, 111, 111, 111, 111},
  394     {10, 4, 9, 10, 6, 4, 11, 2, 3, 111, 111, 111, 111, 111, 111, 111},
  395     {0, 8, 2, 2, 8, 11, 4, 9, 10, 4, 10, 6, 111, 111, 111, 111},
  396     {3, 11, 2, 0, 1, 6, 0, 6, 4, 6, 1, 10, 111, 111, 111, 111},
  397     {6, 4, 1, 6, 1, 10, 4, 8, 1, 2, 1, 11, 8, 11, 1, 111},
  398     {9, 6, 4, 9, 3, 6, 9, 1, 3, 11, 6, 3, 111, 111, 111, 111},
  399     {8, 11, 1, 8, 1, 0, 11, 6, 1, 9, 1, 4, 6, 4, 1, 111},
  400     {3, 11, 6, 3, 6, 0, 0, 6, 4, 111, 111, 111, 111, 111, 111, 111},
  401     {6, 4, 8, 11, 6, 8, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  402     {7, 10, 6, 7, 8, 10, 8, 9, 10, 111, 111, 111, 111, 111, 111, 111},
  403     {0, 7, 3, 0, 10, 7, 0, 9, 10, 6, 7, 10, 111, 111, 111, 111},
  404     {10, 6, 7, 1, 10, 7, 1, 7, 8, 1, 8, 0, 111, 111, 111, 111},
  405     {10, 6, 7, 10, 7, 1, 1, 7, 3, 111, 111, 111, 111, 111, 111, 111},
  406     {1, 2, 6, 1, 6, 8, 1, 8, 9, 8, 6, 7, 111, 111, 111, 111},
  407     {2, 6, 9, 2, 9, 1, 6, 7, 9, 0, 9, 3, 7, 3, 9, 111},
  408     {7, 8, 0, 7, 0, 6, 6, 0, 2, 111, 111, 111, 111, 111, 111, 111},
  409     {7, 3, 2, 6, 7, 2, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  410     {2, 3, 11, 10, 6, 8, 10, 8, 9, 8, 6, 7, 111, 111, 111, 111},
  411     {2, 0, 7, 2, 7, 11, 0, 9, 7, 6, 7, 10, 9, 10, 7, 111},
  412     {1, 8, 0, 1, 7, 8, 1, 10, 7, 6, 7, 10, 2, 3, 11, 111},
  413     {11, 2, 1, 11, 1, 7, 10, 6, 1, 6, 7, 1, 111, 111, 111, 111},
  414     {8, 9, 6, 8, 6, 7, 9, 1, 6, 11, 6, 3, 1, 3, 6, 111},
  415     {0, 9, 1, 11, 6, 7, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  416     {7, 8, 0, 7, 0, 6, 3, 11, 0, 11, 6, 0, 111, 111, 111, 111},
  417     {7, 11, 6, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  418     {7, 6, 11, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  419     {3, 0, 8, 11, 7, 6, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  420     {0, 1, 9, 11, 7, 6, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  421     {8, 1, 9, 8, 3, 1, 11, 7, 6, 111, 111, 111, 111, 111, 111, 111},
  422     {10, 1, 2, 6, 11, 7, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  423     {1, 2, 10, 3, 0, 8, 6, 11, 7, 111, 111, 111, 111, 111, 111, 111},
  424     {2, 9, 0, 2, 10, 9, 6, 11, 7, 111, 111, 111, 111, 111, 111, 111},
  425     {6, 11, 7, 2, 10, 3, 10, 8, 3, 10, 9, 8, 111, 111, 111, 111},
  426     {7, 2, 3, 6, 2, 7, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  427     {7, 0, 8, 7, 6, 0, 6, 2, 0, 111, 111, 111, 111, 111, 111, 111},
  428     {2, 7, 6, 2, 3, 7, 0, 1, 9, 111, 111, 111, 111, 111, 111, 111},
  429     {1, 6, 2, 1, 8, 6, 1, 9, 8, 8, 7, 6, 111, 111, 111, 111},
  430     {10, 7, 6, 10, 1, 7, 1, 3, 7, 111, 111, 111, 111, 111, 111, 111},
  431     {10, 7, 6, 1, 7, 10, 1, 8, 7, 1, 0, 8, 111, 111, 111, 111},
  432     {0, 3, 7, 0, 7, 10, 0, 10, 9, 6, 10, 7, 111, 111, 111, 111},
  433     {7, 6, 10, 7, 10, 8, 8, 10, 9, 111, 111, 111, 111, 111, 111, 111},
  434     {6, 8, 4, 11, 8, 6, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  435     {3, 6, 11, 3, 0, 6, 0, 4, 6, 111, 111, 111, 111, 111, 111, 111},
  436     {8, 6, 11, 8, 4, 6, 9, 0, 1, 111, 111, 111, 111, 111, 111, 111},
  437     {9, 4, 6, 9, 6, 3, 9, 3, 1, 11, 3, 6, 111, 111, 111, 111},
  438     {6, 8, 4, 6, 11, 8, 2, 10, 1, 111, 111, 111, 111, 111, 111, 111},
  439     {1, 2, 10, 3, 0, 11, 0, 6, 11, 0, 4, 6, 111, 111, 111, 111},
  440     {4, 11, 8, 4, 6, 11, 0, 2, 9, 2, 10, 9, 111, 111, 111, 111},
  441     {10, 9, 3, 10, 3, 2, 9, 4, 3, 11, 3, 6, 4, 6, 3, 111},
  442     {8, 2, 3, 8, 4, 2, 4, 6, 2, 111, 111, 111, 111, 111, 111, 111},
  443     {0, 4, 2, 4, 6, 2, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  444     {1, 9, 0, 2, 3, 4, 2, 4, 6, 4, 3, 8, 111, 111, 111, 111},
  445     {1, 9, 4, 1, 4, 2, 2, 4, 6, 111, 111, 111, 111, 111, 111, 111},
  446     {8, 1, 3, 8, 6, 1, 8, 4, 6, 6, 10, 1, 111, 111, 111, 111},
  447     {10, 1, 0, 10, 0, 6, 6, 0, 4, 111, 111, 111, 111, 111, 111, 111},
  448     {4, 6, 3, 4, 3, 8, 6, 10, 3, 0, 3, 9, 10, 9, 3, 111},
  449     {10, 9, 4, 6, 10, 4, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  450     {4, 9, 5, 7, 6, 11, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  451     {0, 8, 3, 4, 9, 5, 11, 7, 6, 111, 111, 111, 111, 111, 111, 111},
  452     {5, 0, 1, 5, 4, 0, 7, 6, 11, 111, 111, 111, 111, 111, 111, 111},
  453     {11, 7, 6, 8, 3, 4, 3, 5, 4, 3, 1, 5, 111, 111, 111, 111},
  454     {9, 5, 4, 10, 1, 2, 7, 6, 11, 111, 111, 111, 111, 111, 111, 111},
  455     {6, 11, 7, 1, 2, 10, 0, 8, 3, 4, 9, 5, 111, 111, 111, 111},
  456     {7, 6, 11, 5, 4, 10, 4, 2, 10, 4, 0, 2, 111, 111, 111, 111},
  457     {3, 4, 8, 3, 5, 4, 3, 2, 5, 10, 5, 2, 11, 7, 6, 111},
  458     {7, 2, 3, 7, 6, 2, 5, 4, 9, 111, 111, 111, 111, 111, 111, 111},
  459     {9, 5, 4, 0, 8, 6, 0, 6, 2, 6, 8, 7, 111, 111, 111, 111},
  460     {3, 6, 2, 3, 7, 6, 1, 5, 0, 5, 4, 0, 111, 111, 111, 111},
  461     {6, 2, 8, 6, 8, 7, 2, 1, 8, 4, 8, 5, 1, 5, 8, 111},
  462     {9, 5, 4, 10, 1, 6, 1, 7, 6, 1, 3, 7, 111, 111, 111, 111},
  463     {1, 6, 10, 1, 7, 6, 1, 0, 7, 8, 7, 0, 9, 5, 4, 111},
  464     {4, 0, 10, 4, 10, 5, 0, 3, 10, 6, 10, 7, 3, 7, 10, 111},
  465     {7, 6, 10, 7, 10, 8, 5, 4, 10, 4, 8, 10, 111, 111, 111, 111},
  466     {6, 9, 5, 6, 11, 9, 11, 8, 9, 111, 111, 111, 111, 111, 111, 111},
  467     {3, 6, 11, 0, 6, 3, 0, 5, 6, 0, 9, 5, 111, 111, 111, 111},
  468     {0, 11, 8, 0, 5, 11, 0, 1, 5, 5, 6, 11, 111, 111, 111, 111},
  469     {6, 11, 3, 6, 3, 5, 5, 3, 1, 111, 111, 111, 111, 111, 111, 111},
  470     {1, 2, 10, 9, 5, 11, 9, 11, 8, 11, 5, 6, 111, 111, 111, 111},
  471     {0, 11, 3, 0, 6, 11, 0, 9, 6, 5, 6, 9, 1, 2, 10, 111},
  472     {11, 8, 5, 11, 5, 6, 8, 0, 5, 10, 5, 2, 0, 2, 5, 111},
  473     {6, 11, 3, 6, 3, 5, 2, 10, 3, 10, 5, 3, 111, 111, 111, 111},
  474     {5, 8, 9, 5, 2, 8, 5, 6, 2, 3, 8, 2, 111, 111, 111, 111},
  475     {9, 5, 6, 9, 6, 0, 0, 6, 2, 111, 111, 111, 111, 111, 111, 111},
  476     {1, 5, 8, 1, 8, 0, 5, 6, 8, 3, 8, 2, 6, 2, 8, 111},
  477     {1, 5, 6, 2, 1, 6, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  478     {1, 3, 6, 1, 6, 10, 3, 8, 6, 5, 6, 9, 8, 9, 6, 111},
  479     {10, 1, 0, 10, 0, 6, 9, 5, 0, 5, 6, 0, 111, 111, 111, 111},
  480     {0, 3, 8, 5, 6, 10, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  481     {10, 5, 6, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  482     {11, 5, 10, 7, 5, 11, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  483     {11, 5, 10, 11, 7, 5, 8, 3, 0, 111, 111, 111, 111, 111, 111, 111},
  484     {5, 11, 7, 5, 10, 11, 1, 9, 0, 111, 111, 111, 111, 111, 111, 111},
  485     {10, 7, 5, 10, 11, 7, 9, 8, 1, 8, 3, 1, 111, 111, 111, 111},
  486     {11, 1, 2, 11, 7, 1, 7, 5, 1, 111, 111, 111, 111, 111, 111, 111},
  487     {0, 8, 3, 1, 2, 7, 1, 7, 5, 7, 2, 11, 111, 111, 111, 111},
  488     {9, 7, 5, 9, 2, 7, 9, 0, 2, 2, 11, 7, 111, 111, 111, 111},
  489     {7, 5, 2, 7, 2, 11, 5, 9, 2, 3, 2, 8, 9, 8, 2, 111},
  490     {2, 5, 10, 2, 3, 5, 3, 7, 5, 111, 111, 111, 111, 111, 111, 111},
  491     {8, 2, 0, 8, 5, 2, 8, 7, 5, 10, 2, 5, 111, 111, 111, 111},
  492     {9, 0, 1, 5, 10, 3, 5, 3, 7, 3, 10, 2, 111, 111, 111, 111},
  493     {9, 8, 2, 9, 2, 1, 8, 7, 2, 10, 2, 5, 7, 5, 2, 111},
  494     {1, 3, 5, 3, 7, 5, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  495     {0, 8, 7, 0, 7, 1, 1, 7, 5, 111, 111, 111, 111, 111, 111, 111},
  496     {9, 0, 3, 9, 3, 5, 5, 3, 7, 111, 111, 111, 111, 111, 111, 111},
  497     {9, 8, 7, 5, 9, 7, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  498     {5, 8, 4, 5, 10, 8, 10, 11, 8, 111, 111, 111, 111, 111, 111, 111},
  499     {5, 0, 4, 5, 11, 0, 5, 10, 11, 11, 3, 0, 111, 111, 111, 111},
  500     {0, 1, 9, 8, 4, 10, 8, 10, 11, 10, 4, 5, 111, 111, 111, 111},
  501     {10, 11, 4, 10, 4, 5, 11, 3, 4, 9, 4, 1, 3, 1, 4, 111},
  502     {2, 5, 1, 2, 8, 5, 2, 11, 8, 4, 5, 8, 111, 111, 111, 111},
  503     {0, 4, 11, 0, 11, 3, 4, 5, 11, 2, 11, 1, 5, 1, 11, 111},
  504     {0, 2, 5, 0, 5, 9, 2, 11, 5, 4, 5, 8, 11, 8, 5, 111},
  505     {9, 4, 5, 2, 11, 3, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  506     {2, 5, 10, 3, 5, 2, 3, 4, 5, 3, 8, 4, 111, 111, 111, 111},
  507     {5, 10, 2, 5, 2, 4, 4, 2, 0, 111, 111, 111, 111, 111, 111, 111},
  508     {3, 10, 2, 3, 5, 10, 3, 8, 5, 4, 5, 8, 0, 1, 9, 111},
  509     {5, 10, 2, 5, 2, 4, 1, 9, 2, 9, 4, 2, 111, 111, 111, 111},
  510     {8, 4, 5, 8, 5, 3, 3, 5, 1, 111, 111, 111, 111, 111, 111, 111},
  511     {0, 4, 5, 1, 0, 5, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  512     {8, 4, 5, 8, 5, 3, 9, 0, 5, 0, 3, 5, 111, 111, 111, 111},
  513     {9, 4, 5, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  514     {4, 11, 7, 4, 9, 11, 9, 10, 11, 111, 111, 111, 111, 111, 111, 111},
  515     {0, 8, 3, 4, 9, 7, 9, 11, 7, 9, 10, 11, 111, 111, 111, 111},
  516     {1, 10, 11, 1, 11, 4, 1, 4, 0, 7, 4, 11, 111, 111, 111, 111},
  517     {3, 1, 4, 3, 4, 8, 1, 10, 4, 7, 4, 11, 10, 11, 4, 111},
  518     {4, 11, 7, 9, 11, 4, 9, 2, 11, 9, 1, 2, 111, 111, 111, 111},
  519     {9, 7, 4, 9, 11, 7, 9, 1, 11, 2, 11, 1, 0, 8, 3, 111},
  520     {11, 7, 4, 11, 4, 2, 2, 4, 0, 111, 111, 111, 111, 111, 111, 111},
  521     {11, 7, 4, 11, 4, 2, 8, 3, 4, 3, 2, 4, 111, 111, 111, 111},
  522     {2, 9, 10, 2, 7, 9, 2, 3, 7, 7, 4, 9, 111, 111, 111, 111},
  523     {9, 10, 7, 9, 7, 4, 10, 2, 7, 8, 7, 0, 2, 0, 7, 111},
  524     {3, 7, 10, 3, 10, 2, 7, 4, 10, 1, 10, 0, 4, 0, 10, 111},
  525     {1, 10, 2, 8, 7, 4, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  526     {4, 9, 1, 4, 1, 7, 7, 1, 3, 111, 111, 111, 111, 111, 111, 111},
  527     {4, 9, 1, 4, 1, 7, 0, 8, 1, 8, 7, 1, 111, 111, 111, 111},
  528     {4, 0, 3, 7, 4, 3, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  529     {4, 8, 7, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  530     {9, 10, 8, 10, 11, 8, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  531     {3, 0, 9, 3, 9, 11, 11, 9, 10, 111, 111, 111, 111, 111, 111, 111},
  532     {0, 1, 10, 0, 10, 8, 8, 10, 11, 111, 111, 111, 111, 111, 111, 111},
  533     {3, 1, 10, 11, 3, 10, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  534     {1, 2, 11, 1, 11, 9, 9, 11, 8, 111, 111, 111, 111, 111, 111, 111},
  535     {3, 0, 9, 3, 9, 11, 1, 2, 9, 2, 11, 9, 111, 111, 111, 111},
  536     {0, 2, 11, 8, 0, 11, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  537     {3, 2, 11, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  538     {2, 3, 8, 2, 8, 10, 10, 8, 9, 111, 111, 111, 111, 111, 111, 111},
  539     {9, 10, 2, 0, 9, 2, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  540     {2, 3, 8, 2, 8, 10, 0, 1, 8, 1, 10, 8, 111, 111, 111, 111},
  541     {1, 10, 2, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  542     {1, 3, 8, 9, 1, 8, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  543     {0, 9, 1, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  544     {0, 3, 8, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111},
  545     {111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111}
  546 };