40      3,  3,  4,  4,  5,  5,  5,  6,  6,  6,  7,  7,  7,  7,  7,  8,
 
   41      8,  8,  8,  8,  9,  9,  9,  9,  9,  9,  9,  9, 10, 10, 10, 10,
 
   42     10, 10, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 12, 12,
 
   43     12, 12, 12, 12, 12, 12, 12, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
   44     13, 13, 13, 13, 13, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
   45     14, 14, 14, 14, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
   46     15, 15, 15, 15, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
   47     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
   48     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
   49     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 15, 15, 15, 15,
 
   50     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 14, 14, 14,
 
   51     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 13, 13, 13,
 
   52     13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 12, 12, 12, 12, 12, 12,
 
   53     12, 12, 12, 12, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 10, 10,
 
   54     10, 10, 10, 10, 10, 10,  9,  9,  9,  9,  9,  9,  9,  8,  8,  8,
 
   55      8,  8,  8,  7,  7,  7,  7,  7,  6,  6,  6,  5,  5,  4,  4,  4,
 
   59      3,  4,  4,  4,  5,  5,  5,  6,  6,  6,  7,  7,  7,  7,  7,  7,
 
   60      8,  8,  8,  8,  8,  8,  8,  8,  9,  9,  9,  9,  9,  9,  9,  9,
 
   61     10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11,
 
   62     11, 11, 11, 11, 11, 11, 11, 12, 12, 12, 12, 12, 12, 12, 12, 12,
 
   63     12, 12, 12, 12, 12, 12, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
   64     13, 13, 13, 13, 13, 13, 13, 13, 14, 14, 14, 14, 14, 14, 14, 14,
 
   65     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15,
 
   66     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
   67     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
   68     15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
   69     14, 14, 14, 14, 14, 14, 14, 14, 14, 13, 13, 13, 13, 13, 13, 13,
 
   70     13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 12, 12, 12, 12,
 
   71     12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 11, 11, 11, 11, 11,
 
   72     11, 11, 11, 11, 11, 11, 11, 10, 10, 10, 10, 10, 10, 10, 10, 10,
 
   73     10, 10,  9,  9,  9,  9,  9,  9,  9,  8,  8,  8,  8,  8,  8,  8,
 
   74      8,  7,  7,  7,  7,  7,  7,  6,  6,  6,  6,  5,  5,  4,  4,  4,
 
   78      1,  3,  4,  5,  6,  7,  7,  8,  9,  9, 10, 10, 10, 10, 11, 11,
 
   79     11, 12, 12, 12, 12, 12, 13, 13, 13, 13, 13, 14, 14, 14, 14, 14,
 
   80     14, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 16, 16, 16,
 
   81     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
   82     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
   83     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
   84     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
   85     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
   86     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
   87     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
   88     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
   89     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
   90     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
   91     16, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 14,
 
   92     14, 14, 14, 14, 14, 13, 13, 13, 13, 13, 13, 12, 12, 12, 12, 12,
 
   93     11, 11, 11, 10, 10, 10,  9,  9,  9,  8,  8,  7,  6,  5,  5,  3,
 
   97      2,  2,  4,  4,  6,  7,  9,  9, 10, 11, 11, 11, 12, 12, 12, 13,
 
   98     13, 13, 13, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 15, 15, 15,
 
   99     15, 15, 15, 15, 15, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  100     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  101     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  102     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  103     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  104     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  105     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  106     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  107     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  108     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  109     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  110     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 15, 15, 15, 15, 15,
 
  111     15, 15, 15, 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 13, 13,
 
  112     13, 13, 12, 12, 12, 11, 11, 11, 10,  9,  9,  8,  6,  4,  3,  3,
 
  116      3,  3,  4,  4,  5,  5,  6,  6,  6,  7,  7,  7,  7,  7,  8,  8,
 
  117      8,  8,  8,  9,  9,  9,  9,  9,  9,  9, 10, 10, 10, 10, 10, 10,
 
  118     10, 11, 11, 11, 11, 11, 11, 11, 11, 12, 12, 12, 12, 12, 12, 12,
 
  119     12, 12, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 14,
 
  120     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 15,
 
  121     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 16,
 
  122     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  123     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  124     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  125     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  126     16, 16, 16, 16, 16, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  127     15, 15, 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  128     14, 14, 14, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 12,
 
  129     12, 12, 12, 12, 12, 12, 12, 12, 11, 11, 11, 11, 11, 11, 11, 11,
 
  130     11, 10, 10, 10, 10, 10, 10, 10,  9,  9,  9,  9,  9,  9,  8,  8,
 
  131      8,  8,  8,  8,  7,  7,  7,  7,  6,  6,  6,  6,  5,  4,  4,  3,
 
  135      1,  2,  4,  6,  9, 10, 11, 11, 12, 12, 13, 13, 13, 14, 14, 14,
 
  136     14, 14, 15, 15, 15, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  137     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  138     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  139     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  140     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  141     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  142     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  143     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  144     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  145     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  146     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  147     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  148     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  149     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 15, 15, 15, 15, 15,
 
  150     14, 14, 14, 14, 14, 13, 13, 13, 12, 12, 11, 11, 10,  8,  5,  3,
 
  154      3,  3,  4,  4,  5,  5,  5,  6,  6,  6,  7,  7,  7,  7,  7,  8,
 
  155      8,  8,  8,  8,  9,  9,  9,  9,  9,  9,  9,  9, 10, 10, 10, 10,
 
  156     10, 10, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 12, 12,
 
  157     12, 12, 12, 12, 12, 12, 12, 12, 13, 13, 13, 13, 13, 13, 13, 13,
 
  158     13, 13, 13, 13, 13, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  159     14, 14, 14, 14, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  160     15, 15, 15, 15, 15, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  161     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  162     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  163     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 15, 15, 15,
 
  164     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 14,
 
  165     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 13, 13,
 
  166     13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 12, 12, 12, 12, 12, 12,
 
  167     12, 12, 12, 12, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 10, 10,
 
  168     10, 10, 10, 10, 10, 10,  9,  9,  9,  9,  9,  9,  9,  8,  8,  8,
 
  169      8,  8,  8,  7,  7,  7,  7,  7,  6,  6,  6,  5,  5,  4,  4,  4,
 
  173      1,  2,  4,  6,  8,  9, 10, 10, 11, 11, 12, 12, 12, 13, 13, 14,
 
  174     14, 14, 14, 14, 15, 15, 15, 15, 15, 16, 16, 16, 16, 16, 16, 16,
 
  175     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  176     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  177     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  178     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  179     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  180     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  181     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  182     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  183     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  184     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  185     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  186     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  187     16, 16, 16, 16, 16, 16, 16, 16, 16, 15, 15, 15, 15, 15, 14, 14,
 
  188     14, 14, 13, 13, 13, 12, 12, 11, 11, 10, 10,  9,  8,  7,  6,  3,
 
  192      3,  3,  4,  4,  5,  5,  6,  6,  6,  7,  7,  7,  7,  7,  8,  8,
 
  193      8,  8,  8,  9,  9,  9,  9,  9,  9,  9, 10, 10, 10, 10, 10, 10,
 
  194     10, 11, 11, 11, 11, 11, 11, 11, 11, 12, 12, 12, 12, 12, 12, 12,
 
  195     12, 12, 12, 12, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 14, 14,
 
  196     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 15,
 
  197     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 16,
 
  198     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  199     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  200     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  201     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  202     16, 16, 16, 16, 16, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  203     15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  204     14, 14, 14, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 12,
 
  205     12, 12, 12, 12, 12, 12, 12, 12, 12, 11, 11, 11, 11, 11, 11, 11,
 
  206     11, 10, 10, 10, 10, 10, 10, 10,  9,  9,  9,  9,  9,  9,  8,  8,
 
  207      8,  8,  8,  8,  7,  7,  7,  7,  6,  6,  6,  6,  5,  4,  4,  3,
 
  211      1,  2,  4,  6,  8,  9,  9, 10, 11, 11, 12, 12, 13, 13, 13, 14,
 
  212     14, 14, 14, 15, 15, 15, 15, 15, 15, 16, 16, 16, 16, 16, 16, 16,
 
  213     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  214     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  215     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  216     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  217     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  218     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  219     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  220     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  221     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  222     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  223     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  224     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  225     16, 16, 16, 16, 16, 16, 16, 16, 16, 15, 15, 15, 15, 15, 15, 14,
 
  226     14, 14, 14, 13, 13, 12, 12, 12, 11, 11, 10,  9,  8,  7,  6,  3,
 
  230      3,  5,  5,  5,  6,  6,  6,  6,  6,  6,  6,  6,  7,  7,  7,  7,
 
  231      7,  7,  7,  7,  7,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,
 
  232      8,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
 
  233      9,  9,  9,  9, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
 
  234     10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 11,
 
  235     11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
 
  236     11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 12, 12, 12, 12, 12, 12,
 
  237     12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
 
  238     12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
 
  239     12, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
  240     13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
  241     13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
  242     13, 13, 13, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  243     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  244     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  245     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  246     14, 14, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  247     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  248     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  249     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  250     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  251     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 16,
 
  252     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  253     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  254     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  255     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  256     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  257     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  258     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  259     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  260     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  261     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  262     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  263     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  264     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  265     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  266     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  267     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  268     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  269     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  270     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  271     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  272     16, 16, 16, 16, 16, 16, 16, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  273     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  274     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  275     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  276     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  277     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  278     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  279     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  280     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  281     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  282     13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
  283     13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
  284     13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
  285     13, 13, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
 
  286     12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
 
  287     12, 12, 12, 12, 12, 12, 12, 12, 11, 11, 11, 11, 11, 11, 11, 11,
 
  288     11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
 
  289     11, 11, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
 
  290     10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,  9,  9,  9,  9,
 
  291      9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
 
  292      8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  7,  7,  7,  7,
 
  293      7,  7,  7,  7,  7,  6,  6,  6,  6,  6,  6,  6,  6,  5,  5,  5,
 
  297      4,  5,  5,  5,  5,  5,  5,  6,  6,  6,  6,  6,  6,  7,  7,  7,
 
  298      7,  7,  7,  7,  7,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,
 
  299      8,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
 
  300      9,  9,  9, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
 
  301     10, 10, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11,
 
  302     11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
 
  303     11, 11, 11, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
 
  304     12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
 
  305     13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
  306     13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
  307     13, 13, 13, 13, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  308     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  309     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  310     14, 14, 14, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  311     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  312     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  313     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  314     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 16, 16, 16, 16, 16, 16,
 
  315     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  316     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  317     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  318     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  319     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  320     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  321     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  322     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  323     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  324     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  325     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  326     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  327     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  328     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  329     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  330     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  331     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  332     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  333     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  334     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  335     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  336     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  337     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  338     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  339     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  340     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  341     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  342     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  343     16, 16, 16, 16, 16, 16, 16, 16, 15, 15, 15, 15, 15, 15, 15, 15,
 
  344     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  345     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  346     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  347     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  348     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  349     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  350     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 13, 13,
 
  351     13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
  352     13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
  353     13, 13, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
 
  354     12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 11,
 
  355     11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
 
  356     11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 10, 10, 10, 10, 10, 10,
 
  357     10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,  9,
 
  358      9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
 
  359      8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  7,  7,  7,
 
  360      7,  7,  7,  7,  6,  6,  6,  6,  6,  6,  6,  5,  5,  5,  5,  5,
 
  364      2,  3,  4,  4,  5,  5,  6,  7,  7,  8,  8,  9,  9,  9,  9, 10,
 
  365     10, 10, 10, 11, 11, 11, 11, 11, 11, 12, 12, 12, 12, 12, 12, 12,
 
  366     13, 13, 13, 13, 13, 13, 13, 13, 13, 14, 14, 14, 14, 14, 14, 14,
 
  367     14, 14, 14, 14, 14, 14, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  368     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  369     15, 15, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  370     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  371     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  372     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  373     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  374     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  375     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  376     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  377     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  378     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  379     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  380     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  381     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  382     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  383     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  384     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  385     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  386     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  387     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  388     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  389     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  390     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  391     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  392     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  393     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  394     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  395     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  396     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  397     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  398     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  399     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  400     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  401     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  402     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  403     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  404     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  405     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  406     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  407     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  408     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  409     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  410     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  411     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  412     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  413     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  414     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  415     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  416     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  417     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  418     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  419     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  420     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  421     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  422     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 15, 15,
 
  423     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  424     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 14, 14, 14, 14, 14, 14,
 
  425     14, 14, 14, 14, 14, 14, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
  426     13, 12, 12, 12, 12, 12, 12, 11, 11, 11, 11, 11, 11, 11, 10, 10,
 
  427     10, 10, 10,  9,  9,  9,  8,  8,  8,  7,  6,  5,  5,  4,  4,  3,
 
  431      2,  3,  3,  4,  5,  5,  6,  7,  8,  9,  9, 10, 10, 10, 11, 11,
 
  432     12, 12, 12, 12, 12, 13, 13, 13, 13, 13, 13, 14, 14, 14, 14, 14,
 
  433     14, 14, 14, 14, 14, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  434     15, 15, 15, 15, 15, 15, 15, 15, 15, 16, 16, 16, 16, 16, 16, 16,
 
  435     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  436     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  437     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  438     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  439     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  440     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  441     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  442     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  443     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  444     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  445     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  446     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  447     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  448     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  449     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  450     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  451     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  452     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  453     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  454     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  455     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  456     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  457     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  458     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  459     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  460     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  461     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  462     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  463     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  464     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  465     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  466     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  467     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  468     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  469     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  470     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  471     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  472     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  473     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  474     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  475     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  476     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  477     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  478     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  479     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  480     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  481     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  482     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  483     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  484     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  485     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  486     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  487     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  488     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  489     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  490     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  491     16, 16, 16, 16, 16, 16, 16, 16, 16, 15, 15, 15, 15, 15, 15, 15,
 
  492     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 14, 14, 14,
 
  493     14, 14, 14, 14, 14, 14, 14, 13, 13, 13, 13, 13, 13, 12, 12, 12,
 
  494     12, 11, 11, 11, 10, 10,  9,  9,  8,  8,  7,  6,  5,  4,  4,  3,
 
  498      4,  5,  5,  5,  6,  6,  6,  6,  6,  6,  6,  6,  6,  7,  7,  7,
 
  499      7,  7,  7,  7,  7,  7,  7,  8,  8,  8,  8,  8,  8,  8,  8,  8,
 
  500      8,  8,  8,  8,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
 
  501      9,  9,  9,  9,  9,  9,  9, 10, 10, 10, 10, 10, 10, 10, 10, 10,
 
  502     10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
 
  503     10, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
 
  504     11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 12, 12, 12,
 
  505     12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
 
  506     12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
 
  507     13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
  508     13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
  509     13, 13, 13, 13, 13, 13, 13, 13, 14, 14, 14, 14, 14, 14, 14, 14,
 
  510     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  511     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  512     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15,
 
  513     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  514     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  515     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  516     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  517     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 16, 16, 16, 16, 16, 16,
 
  518     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  519     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  520     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  521     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  522     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  523     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  524     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  525     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  526     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  527     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  528     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  529     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  530     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  531     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  532     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  533     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  534     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  535     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  536     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  537     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  538     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  539     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  540     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  541     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  542     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 15, 15, 15, 15, 15, 15,
 
  543     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  544     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  545     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  546     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  547     15, 15, 15, 15, 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  548     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  549     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  550     14, 14, 14, 14, 14, 14, 14, 14, 14, 13, 13, 13, 13, 13, 13, 13,
 
  551     13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
  552     13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
  553     13, 13, 13, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
 
  554     12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
 
  555     12, 12, 12, 12, 12, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
 
  556     11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
 
  557     11, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
 
  558     10, 10, 10, 10, 10, 10, 10, 10, 10, 10,  9,  9,  9,  9,  9,  9,
 
  559      9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  8,  8,  8,
 
  560      8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  7,  7,  7,  7,  7,  7,
 
  561      7,  7,  7,  7,  6,  6,  6,  6,  6,  6,  6,  6,  5,  5,  5,  5,
 
  565      3,  4,  4,  5,  5,  5,  5,  5,  5,  6,  6,  6,  6,  7,  7,  7,
 
  566      8,  8,  9,  9,  9, 10, 10, 10, 10, 11, 11, 11, 11, 11, 11, 12,
 
  567     12, 12, 12, 12, 12, 12, 12, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
  568     13, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  569     14, 14, 14, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  570     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  571     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 16, 16, 16, 16, 16, 16,
 
  572     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  573     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  574     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  575     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  576     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  577     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  578     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  579     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  580     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  581     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  582     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  583     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  584     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  585     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  586     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  587     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  588     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  589     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  590     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  591     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  592     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  593     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  594     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  595     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  596     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  597     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  598     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  599     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  600     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  601     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  602     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  603     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  604     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  605     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  606     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  607     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  608     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  609     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  610     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  611     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  612     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  613     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  614     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  615     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  616     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  617     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  618     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  619     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  620     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  621     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  622     16, 16, 16, 16, 16, 16, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  623     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  624     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 14, 14, 14,
 
  625     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 13,
 
  626     13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 12, 12, 12, 12, 12, 12,
 
  627     12, 12, 11, 11, 11, 11, 11, 11, 10, 10, 10, 10,  9,  9,  9,  9,
 
  628      8,  7,  7,  7,  6,  6,  6,  6,  6,  5,  5,  5,  5,  4,  4,  4,
 
  632      4,  5,  5,  5,  5,  5,  5,  6,  6,  6,  6,  6,  6,  7,  7,  7,
 
  633      7,  7,  7,  7,  7,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,
 
  634      8,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
 
  635      9,  9,  9, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
 
  636     10, 10, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11,
 
  637     11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
 
  638     11, 11, 11, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
 
  639     12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
 
  640     13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
  641     13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
  642     13, 13, 13, 13, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  643     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  644     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  645     14, 14, 14, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  646     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  647     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  648     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  649     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 16, 16, 16, 16, 16, 16,
 
  650     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  651     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  652     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  653     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  654     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  655     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  656     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  657     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  658     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  659     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  660     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  661     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  662     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  663     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  664     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  665     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  666     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  667     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  668     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  669     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  670     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  671     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  672     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  673     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  674     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  675     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  676     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  677     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  678     16, 16, 16, 16, 16, 16, 16, 16, 15, 15, 15, 15, 15, 15, 15, 15,
 
  679     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  680     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  681     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  682     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  683     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  684     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  685     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 13, 13,
 
  686     13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
  687     13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
  688     13, 13, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
 
  689     12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 11,
 
  690     11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
 
  691     11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 10, 10, 10, 10, 10, 10,
 
  692     10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,  9,
 
  693      9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
 
  694      8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  7,  7,  7,
 
  695      7,  7,  7,  7,  6,  6,  6,  6,  6,  6,  6,  5,  5,  5,  5,  5,
 
  699      3,  5,  5,  5,  6,  6,  6,  6,  6,  6,  6,  6,  7,  7,  7,  7,
 
  700      7,  7,  7,  7,  7,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,
 
  701      8,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
 
  702      9,  9,  9,  9, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
 
  703     10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 11,
 
  704     11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
 
  705     11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 12, 12, 12, 12, 12, 12,
 
  706     12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
 
  707     12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
 
  708     12, 12, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
  709     13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
  710     13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
  711     13, 13, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  712     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  713     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  714     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  715     14, 14, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  716     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  717     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  718     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  719     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  720     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 16,
 
  721     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  722     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  723     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  724     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  725     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  726     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  727     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  728     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  729     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  730     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  731     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  732     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  733     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  734     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  735     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  736     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  737     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  738     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  739     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  740     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  741     16, 16, 16, 16, 16, 16, 16, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  742     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  743     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  744     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  745     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  746     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  747     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  748     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  749     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  750     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  751     14, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
  752     13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
  753     13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
  754     13, 13, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
 
  755     12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
 
  756     12, 12, 12, 12, 12, 12, 12, 12, 11, 11, 11, 11, 11, 11, 11, 11,
 
  757     11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
 
  758     11, 11, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
 
  759     10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,  9,  9,  9,  9,
 
  760      9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
 
  761      8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  7,  7,  7,  7,
 
  762      7,  7,  7,  7,  7,  6,  6,  6,  6,  6,  6,  6,  6,  5,  5,  5,
 
  766      2,  3,  3,  4,  5,  6,  7,  7,  8,  8,  8,  9,  9, 10, 10, 10,
 
  767     10, 11, 11, 11, 11, 11, 12, 12, 12, 12, 12, 13, 13, 13, 13, 13,
 
  768     13, 13, 13, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  769     14, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  770     15, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  771     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  772     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  773     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  774     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  775     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  776     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  777     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  778     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  779     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  780     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  781     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  782     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  783     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  784     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  785     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  786     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  787     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  788     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  789     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  790     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  791     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  792     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  793     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  794     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  795     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  796     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  797     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  798     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  799     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  800     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  801     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  802     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  803     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  804     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  805     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  806     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  807     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  808     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  809     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  810     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  811     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  812     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  813     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  814     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  815     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  816     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  817     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  818     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  819     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  820     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  821     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  822     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  823     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  824     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  825     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  826     16, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  827     15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 13, 13,
 
  828     13, 13, 13, 13, 13, 12, 12, 12, 12, 12, 12, 12, 11, 11, 11, 11,
 
  829     10, 10, 10, 10,  9,  9,  9,  8,  8,  7,  7,  6,  5,  4,  4,  3,
 
  833      2,  4,  4,  4,  5,  6,  6,  6,  7,  7,  7,  8,  8,  8,  9,  9,
 
  834      9,  9,  9,  9, 10, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11,
 
  835     11, 11, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 13, 13,
 
  836     13, 13, 13, 13, 13, 13, 13, 13, 13, 14, 14, 14, 14, 14, 14, 14,
 
  837     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 15,
 
  838     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  839     15, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  840     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  841     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  842     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  843     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  844     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  845     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  846     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  847     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  848     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  849     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  850     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  851     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  852     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  853     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  854     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  855     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  856     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  857     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  858     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  859     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  860     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  861     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  862     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  863     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  864     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  865     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  866     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  867     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  868     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  869     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  870     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  871     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  872     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  873     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  874     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  875     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  876     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  877     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  878     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  879     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  880     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  881     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  882     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  883     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  884     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  885     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  886     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  887     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  888     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  889     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  890     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  891     16, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  892     15, 15, 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  893     14, 14, 14, 14, 14, 14, 14, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
  894     13, 13, 13, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 11,
 
  895     11, 11, 11, 11, 11, 11, 11, 10, 10, 10, 10, 10, 10,  9,  9,  9,
 
  896      9,  9,  8,  8,  8,  8,  7,  7,  7,  6,  6,  5,  5,  4,  4,  3,
 
  900      3,  3,  4,  4,  5,  5,  6,  6,  6,  7,  7,  7,  7,  7,  8,  8,
 
  901      8,  8,  8,  9,  9,  9,  9,  9,  9,  9, 10, 10, 10, 10, 10, 10,
 
  902     10, 10, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 12,
 
  903     12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 13, 13, 13, 13,
 
  904     13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 14, 14, 14, 14, 14,
 
  905     14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 15, 15, 15, 15, 15,
 
  906     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  907     15, 15, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  908     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  909     16, 16, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  910     15, 15, 15, 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  911     14, 14, 14, 14, 14, 14, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
  912     13, 13, 13, 13, 13, 13, 13, 12, 12, 12, 12, 12, 12, 12, 12, 12,
 
  913     12, 12, 12, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 10, 10,
 
  914     10, 10, 10, 10, 10, 10, 10,  9,  9,  9,  9,  9,  9,  9,  8,  8,
 
  915      8,  8,  8,  7,  7,  7,  7,  7,  6,  6,  6,  5,  5,  5,  4,  3,
 
  919      1,  3,  5,  6,  8,  8,  9, 10, 10, 11, 11, 12, 12, 13, 13, 13,
 
  920     14, 14, 14, 14, 14, 14, 15, 15, 15, 15, 15, 15, 16, 16, 16, 16,
 
  921     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  922     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  923     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  924     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  925     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  926     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  927     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  928     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  929     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  930     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  931     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  932     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  933     16, 16, 16, 16, 16, 16, 15, 15, 15, 15, 15, 14, 14, 14, 14, 14,
 
  934     14, 13, 13, 13, 12, 12, 11, 11, 10, 10,  9,  8,  8,  6,  5,  2,
 
  938      3,  3,  4,  4,  5,  5,  6,  6,  7,  7,  7,  7,  7,  7,  8,  8,
 
  939      8,  8,  8,  9,  9,  9,  9,  9,  9,  9,  9, 10, 10, 10, 10, 10,
 
  940     10, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 12,
 
  941     12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 13, 13, 13, 13, 13,
 
  942     13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 14, 14, 14, 14, 14,
 
  943     14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 15, 15, 15, 15,
 
  944     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  945     15, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  946     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  947     16, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  948     15, 15, 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  949     14, 14, 14, 14, 14, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
  950     13, 13, 13, 13, 13, 13, 13, 12, 12, 12, 12, 12, 12, 12, 12, 12,
 
  951     12, 12, 12, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 10,
 
  952     10, 10, 10, 10, 10, 10, 10,  9,  9,  9,  9,  9,  9,  9,  8,  8,
 
  953      8,  8,  8,  7,  7,  7,  7,  7,  7,  6,  6,  6,  5,  4,  4,  3,
 
  957      1,  3,  4,  6,  6,  7,  8,  8,  9,  9, 10, 10, 10, 11, 11, 11,
 
  958     12, 12, 12, 12, 13, 13, 13, 13, 13, 14, 14, 14, 14, 15, 15, 15,
 
  959     15, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  960     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  961     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  962     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  963     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  964     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  965     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  966     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  967     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  968     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  969     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  970     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 15, 15, 15,
 
  971     15, 15, 15, 15, 14, 14, 14, 14, 14, 13, 13, 13, 13, 12, 12, 12,
 
  972     12, 11, 11, 11, 10, 10, 10,  9,  9,  8,  8,  7,  7,  5,  4,  3,
 
  976      3,  4,  4,  4,  5,  5,  6,  6,  6,  7,  7,  7,  7,  8,  8,  8,
 
  977      8,  8,  8,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
 
  978      9,  9,  9, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
 
  979     10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11, 11,
 
  980     11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
 
  981     11, 11, 11, 11, 11, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
 
  982     12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
 
  983     12, 12, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
  984     13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 14, 14, 14, 14, 14, 14,
 
  985     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
  986     14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  987     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  988     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  989     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  990     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
  991     15, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  992     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  993     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  994     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  995     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  996     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  997     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  998     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
  999     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1000     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1001     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1002     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1003     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1004     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1005     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1006     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1007     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1008     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1009     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1010     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1011     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1012     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1013     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1014     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1015     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1016     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1017     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1018     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1019     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1020     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1021     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1022     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1023     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1024     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 15,
 
 1025     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
 1026     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
 1027     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
 1028     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
 1029     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 14, 14, 14,
 
 1030     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
 1031     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 13, 13, 13, 13, 13, 13,
 
 1032     13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 12,
 
 1033     12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
 
 1034     12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 11, 11, 11, 11,
 
 1035     11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
 
 1036     11, 11, 11, 11, 11, 11, 11, 10, 10, 10, 10, 10, 10, 10, 10, 10,
 
 1037     10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,  9,  9,
 
 1038      9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  8,  8,  8,
 
 1039      8,  8,  8,  8,  7,  7,  7,  7,  6,  6,  6,  5,  5,  4,  4,  4,
 
 1043      2,  3,  4,  4,  6,  6,  7,  7,  7,  7,  7,  7,  8,  8,  8,  8,
 
 1044      9,  9,  9, 10, 10, 10, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11,
 
 1045     11, 11, 11, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 13,
 
 1046     13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 14, 14, 14, 14,
 
 1047     14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 15,
 
 1048     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
 1049     15, 15, 15, 15, 15, 15, 15, 15, 15, 16, 16, 16, 16, 16, 16, 16,
 
 1050     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1051     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1052     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1053     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1054     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1055     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1056     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1057     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1058     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1059     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1060     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1061     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1062     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1063     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1064     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1065     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1066     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1067     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1068     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1069     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1070     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1071     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1072     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1073     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1074     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1075     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1076     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1077     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1078     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1079     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1080     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1081     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1082     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1083     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1084     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1085     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1086     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1087     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1088     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1089     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1090     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1091     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1092     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1093     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1094     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1095     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1096     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1097     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1098     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1099     16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
 
 1100     16, 16, 16, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
 1101     15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
 
 1102     15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
 
 1103     14, 14, 14, 14, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
 
 1104     13, 13, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 11, 11,
 
 1105     11, 11, 11, 11, 11, 10, 10, 10, 10, 10, 10, 10, 10,  9,  9,  9,
 
 1106      9,  8,  8,  8,  8,  7,  7,  7,  7,  7,  7,  6,  6,  4,  4,  3,
 
 1112     uint16_t *dst_y, *dst_u, *dst_v, *dst_a;
 
 1115     dst_a = (uint16_t *)p->
data[3];
 
 1116     dst_y = (uint16_t *)p->
data[0];
 
 1117     dst_u = (uint16_t *)p->
data[1];
 
 1118     dst_v = (uint16_t *)p->
data[2];
 
 1120     for (y = 0; y < avctx->
height; y++) {
 
 1122             for (x = 0; x < avctx->
width; x++) {
 
 1129             int pred[4] = { 502, 512, 512, 502 };
 
 1131             for (x = 0; x < avctx->
width; x++) {
 
 1139                 dst_a[x] = pred[3] = (a + pred[3]) & 0x3ff;
 
 1140                 dst_y[x] = pred[0] = (y + pred[0]) & 0x3ff;
 
 1141                 dst_u[x] = pred[1] = (u + pred[1]) & 0x3ff;
 
 1142                 dst_v[x] = pred[2] = (v + pred[2]) & 0x3ff;
 
 1156     uint16_t *dst_y, *dst_u, *dst_v, *dst_a;
 
 1159     dst_a = (uint16_t *)p->
data[3];
 
 1160     dst_y = (uint16_t *)p->
data[0];
 
 1161     dst_u = (uint16_t *)p->
data[1];
 
 1162     dst_v = (uint16_t *)p->
data[2];
 
 1165         for (x = 0; x < avctx->
width; x++) {
 
 1172         int pred[4] = { 502, 512, 512, 502 };
 
 1174         for (x = 0; x < avctx->
width; x++) {
 
 1182             dst_a[x] = pred[3] = (a + pred[3]) & 0x3ff;
 
 1183             dst_y[x] = pred[0] = (y + pred[0]) & 0x3ff;
 
 1184             dst_u[x] = pred[1] = (u + pred[1]) & 0x3ff;
 
 1185             dst_v[x] = pred[2] = (v + pred[2]) & 0x3ff;
 
 1194     for (y = 1; y < avctx->
height; y++) {
 
 1196             for (x = 0; x < avctx->
width; x++) {
 
 1203             int pred_TL[4], pred_L[4], pred_T[4];
 
 1206             pred_TL[0] = pred_L[0] = dst_y[-p->
linesize[0] / 2];
 
 1207             pred_TL[1] = pred_L[1] = dst_u[-p->
linesize[1] / 2];
 
 1208             pred_TL[2] = pred_L[2] = dst_v[-p->
linesize[2] / 2];
 
 1209             pred_TL[3] = pred_L[3] = dst_a[-p->
linesize[3] / 2];
 
 1211             for (x = 0; x < avctx->
width; x++) {
 
 1212                 pred_T[0] = dst_y[-p->
linesize[0] / 2 + x];
 
 1213                 pred_T[1] = dst_u[-p->
linesize[1] / 2 + x];
 
 1214                 pred_T[2] = dst_v[-p->
linesize[2] / 2 + x];
 
 1215                 pred_T[3] = dst_a[-p->
linesize[3] / 2 + x];
 
 1222                 dst_a[x] = pred_L[3] = (a + ((3 * (pred_T[3] + pred_L[3]) - 2 * pred_TL[3]) >> 2)) & 0x3ff;
 
 1223                 dst_y[x] = pred_L[0] = (y + ((3 * (pred_T[0] + pred_L[0]) - 2 * pred_TL[0]) >> 2)) & 0x3ff;
 
 1224                 dst_u[x] = pred_L[1] = (u + ((3 * (pred_T[1] + pred_L[1]) - 2 * pred_TL[1]) >> 2)) & 0x3ff;
 
 1225                 dst_v[x] = pred_L[2] = (v + ((3 * (pred_T[2] + pred_L[2]) - 2 * pred_TL[2]) >> 2)) & 0x3ff;
 
 1227                 pred_TL[0] = pred_T[0];
 
 1228                 pred_TL[1] = pred_T[1];
 
 1229                 pred_TL[2] = pred_T[2];
 
 1230                 pred_TL[3] = pred_T[3];
 
 1244     uint16_t *dst_y, *dst_u, *dst_v;
 
 1247     dst_y = (uint16_t *)p->
data[0];
 
 1248     dst_u = (uint16_t *)p->
data[1];
 
 1249     dst_v = (uint16_t *)p->
data[2];
 
 1253             for (x = 0; x < avctx->
width; x++) {
 
 1259             int pred[4] = { 502, 512, 512, 512 };
 
 1261             for (x = 0; x < avctx->
width; x++) {
 
 1268                 dst_y[x] = pred[0] = (y + pred[0]) & 0x3ff;
 
 1269                 dst_u[x] = pred[1] = (u + pred[1]) & 0x3ff;
 
 1270                 dst_v[x] = pred[2] = (v + pred[2]) & 0x3ff;
 
 1283     uint16_t *dst_y, *dst_u, *dst_v;
 
 1286     dst_y = (uint16_t *)p->
data[0];
 
 1287     dst_u = (uint16_t *)p->
data[1];
 
 1288     dst_v = (uint16_t *)p->
data[2];
 
 1291         for (x = 0; x < avctx->
width; x++) {
 
 1297         int pred[4] = { 502, 512, 512, 512 };
 
 1299         for (x = 0; x < avctx->
width; x++) {
 
 1306             dst_y[x] = pred[0] = (y + pred[0]) & 0x3ff;
 
 1307             dst_u[x] = pred[1] = (u + pred[1]) & 0x3ff;
 
 1308             dst_v[x] = pred[2] = (v + pred[2]) & 0x3ff;
 
 1316     for (y = 1; y < avctx->
height; y++) {
 
 1318             for (x = 0; x < avctx->
width; x++) {
 
 1324             int pred_TL[4], pred_L[4], pred_T[4];
 
 1327             pred_TL[0] = pred_L[0] = dst_y[-p->
linesize[0] / 2];
 
 1328             pred_TL[1] = pred_L[1] = dst_u[-p->
linesize[1] / 2];
 
 1329             pred_TL[2] = pred_L[2] = dst_v[-p->
linesize[2] / 2];
 
 1331             for (x = 0; x < avctx->
width; x++) {
 
 1332                 pred_T[0] = dst_y[-p->
linesize[0] / 2 + x];
 
 1333                 pred_T[1] = dst_u[-p->
linesize[1] / 2 + x];
 
 1334                 pred_T[2] = dst_v[-p->
linesize[2] / 2 + x];
 
 1340                 dst_y[x] = pred_L[0] = (y + ((3 * (pred_T[0] + pred_L[0]) - 2 * pred_TL[0]) >> 2)) & 0x3ff;
 
 1341                 dst_u[x] = pred_L[1] = (u + ((3 * (pred_T[1] + pred_L[1]) - 2 * pred_TL[1]) >> 2)) & 0x3ff;
 
 1342                 dst_v[x] = pred_L[2] = (v + ((3 * (pred_T[2] + pred_L[2]) - 2 * pred_TL[2]) >> 2)) & 0x3ff;
 
 1344                 pred_TL[0] = pred_T[0];
 
 1345                 pred_TL[1] = pred_T[1];
 
 1346                 pred_TL[2] = pred_T[2];
 
 1359     uint16_t *dst_y, *dst_u, *dst_v;
 
 1362     dst_y = (uint16_t *)p->
data[0];
 
 1363     dst_u = (uint16_t *)p->
data[1];
 
 1364     dst_v = (uint16_t *)p->
data[2];
 
 1368             for (x = 0; x < avctx->
width; x += 2) {
 
 1375             int pred[4] = { 502, 512, 512, 0 };
 
 1377             for (x = 0; x < avctx->
width; x += 2) {
 
 1385                 dst_y[x    ] = pred[0] = (y1 + pred[0]) & 0x3ff;
 
 1386                 dst_u[x / 2] = pred[1] = (u  + pred[1]) & 0x3ff;
 
 1387                 dst_y[x + 1] = pred[0] = (y2 + pred[0]) & 0x3ff;
 
 1388                 dst_v[x / 2] = pred[2] = (v  + pred[2]) & 0x3ff;
 
 1401     uint16_t *dst_y, *dst_u, *dst_v;
 
 1404     dst_y = (uint16_t *)p->
data[0];
 
 1405     dst_u = (uint16_t *)p->
data[1];
 
 1406     dst_v = (uint16_t *)p->
data[2];
 
 1409         for (x = 0; x < avctx->
width; x += 2) {
 
 1416         int pred[4] = { 502, 512, 512, 0 };
 
 1418         for (x = 0; x < avctx->
width; x += 2) {
 
 1426             dst_y[x    ] = pred[0] = (y1 + pred[0]) & 0x3ff;
 
 1427             dst_u[x / 2] = pred[1] = (u  + pred[1]) & 0x3ff;
 
 1428             dst_y[x + 1] = pred[0] = (y2 + pred[0]) & 0x3ff;
 
 1429             dst_v[x / 2] = pred[2] = (v  + pred[2]) & 0x3ff;
 
 1437     for (y = 1; y < avctx->
height; y++) {
 
 1439             for (x = 0; x < avctx->
width; x += 2) {
 
 1446             int pred_TL[6], pred_L[6], pred_T[6];
 
 1449             pred_TL[0] = pred_L[0] = dst_y[-p->
linesize[0] / 2];
 
 1450             pred_TL[1] = pred_L[1] = dst_u[-p->
linesize[1] / 2];
 
 1451             pred_TL[2] = pred_L[2] = dst_v[-p->
linesize[2] / 2];
 
 1453             for (x = 0; x < avctx->
width; x += 2) {
 
 1454                 pred_T[0] = dst_y[-p->
linesize[0] / 2 + x];
 
 1455                 pred_T[3] = dst_y[-p->
linesize[0] / 2 + x + 1];
 
 1456                 pred_T[1] = dst_u[-p->
linesize[1] / 2 + x / 2];
 
 1457                 pred_T[2] = dst_v[-p->
linesize[2] / 2 + x / 2];
 
 1464                 dst_y[x    ] = pred_L[0] = (y1 + ((3 * (pred_T[0] + pred_L[0]) - 2 * pred_TL[0]) >> 2)) & 0x3ff;
 
 1465                 dst_u[x / 2] = pred_L[1] = (u + (((pred_L[1] - pred_TL[1]) >> 1) + pred_T[1])) & 0x3ff;
 
 1466                 dst_y[x + 1] = pred_L[0] = (y2 + ((3 * (pred_T[3] + pred_L[0]) - 2 * pred_T[0]) >> 2)) & 0x3ff;
 
 1467                 dst_v[x / 2] = pred_L[2] = (v + (((pred_L[2] - pred_TL[2]) >> 1) + pred_T[2])) & 0x3ff;
 
 1469                 pred_TL[0] = pred_T[3];
 
 1470                 pred_TL[1] = pred_T[1];
 
 1471                 pred_TL[2] = pred_T[2];
 
 1484     uint16_t *dst_y, *dst_u, *dst_v, *dst_a;
 
 1487     dst_y = (uint16_t *)p->
data[0];
 
 1488     dst_u = (uint16_t *)p->
data[1];
 
 1489     dst_v = (uint16_t *)p->
data[2];
 
 1490     dst_a = (uint16_t *)p->
data[3];
 
 1492     for (y = 0; y < avctx->
height; y++) {
 
 1494             for (x = 0; x < avctx->
width; x += 2) {
 
 1503             int pred[4] = { 502, 512, 512, 502 };
 
 1505             for (x = 0; x < avctx->
width; x += 2) {
 
 1506                 int y1, y2, 
u, v, 
a1, 
a2;
 
 1515                 dst_y[x    ] = pred[0] = (y1 + pred[0]) & 0x3ff;
 
 1516                 dst_u[x / 2] = pred[1] = (u  + pred[1]) & 0x3ff;
 
 1517                 dst_y[x + 1] = pred[0] = (y2 + pred[0]) & 0x3ff;
 
 1518                 dst_a[x    ] = pred[3] = (a1 + pred[3]) & 0x3ff;
 
 1519                 dst_v[x / 2] = pred[2] = (v  + pred[2]) & 0x3ff;
 
 1520                 dst_a[x + 1] = pred[3] = (a2 + pred[3]) & 0x3ff;
 
 1534     uint16_t *dst_y, *dst_u, *dst_v, *dst_a;
 
 1537     dst_y = (uint16_t *)p->
data[0];
 
 1538     dst_u = (uint16_t *)p->
data[1];
 
 1539     dst_v = (uint16_t *)p->
data[2];
 
 1540     dst_a = (uint16_t *)p->
data[3];
 
 1543         for (x = 0; x < avctx->
width; x += 2) {
 
 1552         int pred[4] = { 502, 512, 512, 502 };
 
 1554         for (x = 0; x < avctx->
width; x += 2) {
 
 1555             int y1, y2, 
u, v, 
a1, 
a2;
 
 1564             dst_y[x    ] = pred[0] = (y1 + pred[0]) & 0x3ff;
 
 1565             dst_u[x / 2] = pred[1] = (u  + pred[1]) & 0x3ff;
 
 1566             dst_y[x + 1] = pred[0] = (y2 + pred[0]) & 0x3ff;
 
 1567             dst_a[x    ] = pred[3] = (a1 + pred[3]) & 0x3ff;
 
 1568             dst_v[x / 2] = pred[2] = (v  + pred[2]) & 0x3ff;
 
 1569             dst_a[x + 1] = pred[3] = (a2 + pred[3]) & 0x3ff;
 
 1578     for (y = 1; y < avctx->
height; y++) {
 
 1580             for (x = 0; x < avctx->
width; x += 2) {
 
 1589             int pred_TL[6], pred_L[6], pred_T[6];
 
 1590             int y1, y2, 
u, v, 
a1, 
a2;
 
 1592             pred_TL[0] = pred_L[0] = dst_y[-p->
linesize[0] / 2];
 
 1593             pred_TL[1] = pred_L[1] = dst_u[-p->
linesize[1] / 2];
 
 1594             pred_TL[2] = pred_L[2] = dst_v[-p->
linesize[2] / 2];
 
 1595             pred_TL[4] = pred_L[4] = dst_a[-p->
linesize[3] / 2];
 
 1597             for (x = 0; x < avctx->
width; x += 2) {
 
 1598                 pred_T[0] = dst_y[-p->
linesize[0] / 2 + x];
 
 1599                 pred_T[3] = dst_y[-p->
linesize[0] / 2 + x + 1];
 
 1600                 pred_T[1] = dst_u[-p->
linesize[1] / 2 + x / 2];
 
 1601                 pred_T[2] = dst_v[-p->
linesize[2] / 2 + x / 2];
 
 1602                 pred_T[4] = dst_a[-p->
linesize[3] / 2 + x];
 
 1603                 pred_T[5] = dst_a[-p->
linesize[3] / 2 + x + 1];
 
 1612                 dst_y[x    ] = pred_L[0] = (y1 + ((3 * (pred_T[0] + pred_L[0]) - 2 * pred_TL[0]) >> 2)) & 0x3ff;
 
 1613                 dst_u[x / 2] = pred_L[1] = (u + (((pred_L[1] - pred_TL[1]) >> 1) + pred_T[1])) & 0x3ff;
 
 1614                 dst_y[x + 1] = pred_L[0] = (y2 + ((3 * (pred_T[3] + pred_L[0]) - 2 * pred_T[0]) >> 2)) & 0x3ff;
 
 1615                 dst_v[x / 2] = pred_L[2] = (v + (((pred_L[2] - pred_TL[2]) >> 1) + pred_T[2])) & 0x3ff;
 
 1616                 dst_a[x    ] = pred_L[4] = (a1 + ((3 * (pred_T[4] + pred_L[4]) - 2 * pred_TL[4]) >> 2)) & 0x3ff;
 
 1617                 dst_a[x + 1] = pred_L[4] = (a2 + ((3 * (pred_T[5] + pred_L[4]) - 2 * pred_T[4]) >> 2)) & 0x3ff;
 
 1619                 pred_TL[0] = pred_T[3];
 
 1620                 pred_TL[1] = pred_T[1];
 
 1621                 pred_TL[2] = pred_T[2];
 
 1622                 pred_TL[4] = pred_T[5];
 
 1636     uint8_t *dst_y, *dst_u, *dst_v, *dst_a;
 
 1644     for (y = 0; y < avctx->
height; y += 1) {
 
 1646             for (x = 0; x < avctx->
width; x += 2) {
 
 1655             int pred[4] = { 125, -128, -128, 125 };
 
 1657             for (x = 0; x < avctx->
width; x += 2) {
 
 1658                 int y1, y2, 
u, v, 
a1, 
a2;
 
 1667                 dst_y[x    ] = pred[0] = (y1 + pred[0]) & 0xff;
 
 1668                 dst_y[x + 1] = pred[0] = (y2 + pred[0]) & 0xff;
 
 1669                 dst_u[x / 2] = pred[1] = (u  + pred[1]) & 0xff;
 
 1670                 dst_v[x / 2] = pred[2] = (v  + pred[2]) & 0xff;
 
 1671                 dst_a[x    ] = pred[3] = (a1 + pred[3]) & 0xff;
 
 1672                 dst_a[x + 1] = pred[3] = (a2 + pred[3]) & 0xff;
 
 1686     uint8_t *dst_y, *dst_u, *dst_v, *dst_a;
 
 1695         for (x = 0; x < avctx->
width; x += 2) {
 
 1704         int pred[4] = { 125, -128, -128, 125 };
 
 1706         for (x = 0; x < avctx->
width; x += 2) {
 
 1707             int y1, y2, 
u, v, 
a1, 
a2;
 
 1716             dst_y[x    ] = pred[0] = (y1 + pred[0]) & 0xff;
 
 1717             dst_u[x / 2] = pred[1] = (u  + pred[1]) & 0xff;
 
 1718             dst_y[x + 1] = pred[0] = (y2 + pred[0]) & 0xff;
 
 1719             dst_a[x    ] = pred[3] = (a1 + pred[3]) & 0xff;
 
 1720             dst_v[x / 2] = pred[2] = (v  + pred[2]) & 0xff;
 
 1721             dst_a[x + 1] = pred[3] = (a2 + pred[3]) & 0xff;
 
 1730     for (y = 1; y < avctx->
height; y++) {
 
 1732             for (x = 0; x < avctx->
width; x += 2) {
 
 1741             int pred_TL[6], pred_L[6], pred_T[6];
 
 1742             int y1, y2, 
u, v, 
a1, 
a2;
 
 1744             pred_TL[0] = pred_L[0] = dst_y[-p->
linesize[0]];
 
 1745             pred_TL[1] = pred_L[1] = dst_u[-p->
linesize[1]];
 
 1746             pred_TL[2] = pred_L[2] = dst_v[-p->
linesize[2]];
 
 1747             pred_TL[4] = pred_L[4] = dst_a[-p->
linesize[3]];
 
 1749             for (x = 0; x < avctx->
width; x += 2) {
 
 1750                 pred_T[0] = dst_y[-p->
linesize[0] + x];
 
 1751                 pred_T[3] = dst_y[-p->
linesize[0] + x + 1];
 
 1752                 pred_T[1] = dst_u[-p->
linesize[1] + x / 2];
 
 1753                 pred_T[2] = dst_v[-p->
linesize[2] + x / 2];
 
 1754                 pred_T[4] = dst_a[-p->
linesize[3] + x];
 
 1755                 pred_T[5] = dst_a[-p->
linesize[3] + x + 1];
 
 1764                 dst_y[x    ] = pred_L[0] = (y1 + ((3 * (pred_T[0] + pred_L[0]) - 2 * pred_TL[0]) >> 2)) & 0xff;
 
 1765                 dst_u[x / 2] = pred_L[1] = (u + (((pred_L[1] - pred_TL[1]) >> 1) + pred_T[1])) & 0xff;
 
 1766                 dst_y[x + 1] = pred_L[0] = (y2 + ((3 * (pred_T[3] + pred_L[0]) - 2 * pred_T[0]) >> 2)) & 0xff;
 
 1767                 dst_v[x / 2] = pred_L[2] = (v + (((pred_L[2] - pred_TL[2]) >> 1) + pred_T[2])) & 0xff;
 
 1768                 dst_a[x    ] = pred_L[4] = (a1 + ((3 * (pred_T[4] + pred_L[4]) - 2 * pred_TL[4]) >> 2)) & 0xff;
 
 1769                 dst_a[x + 1] = pred_L[4] = (a2 + ((3 * (pred_T[5] + pred_L[4]) - 2 * pred_T[4]) >> 2)) & 0xff;
 
 1771                 pred_TL[0] = pred_T[3];
 
 1772                 pred_TL[1] = pred_T[1];
 
 1773                 pred_TL[2] = pred_T[2];
 
 1774                 pred_TL[4] = pred_T[5];
 
 1788     uint8_t *dst_y, *dst_u, *dst_v;
 
 1796         for (x = 0; x < avctx->
width; x += 2) {
 
 1798             dst_u[x / 2] = 
get_bits(gb, 8) + 128;
 
 1800             dst_v[x / 2] = 
get_bits(gb, 8) + 128;
 
 1803         int pred[4] = { -128, 128, 128, 0 };
 
 1805         for (x = 0; x < avctx->
width; x += 2) {
 
 1813             dst_y[x    ] = pred[0] = (y1 + pred[0]) & 0xff;
 
 1814             dst_u[x / 2] = pred[1] = (u  + pred[1]) & 0xff;
 
 1815             dst_y[x + 1] = pred[0] = (y2 + pred[0]) & 0xff;
 
 1816             dst_v[x / 2] = pred[2] = (v  + pred[2]) & 0xff;
 
 1824     for (y = 1; y < avctx->
height; y++) {
 
 1826             for (x = 0; x < avctx->
width; x += 2) {
 
 1828                 dst_u[x / 2] = 
get_bits(gb, 8) + 128;
 
 1830                 dst_v[x / 2] = 
get_bits(gb, 8) + 128;
 
 1833             int pred_TL[4], pred_L[4], pred_T[4];
 
 1836             pred_TL[0] = pred_L[0] = dst_y[-p->
linesize[0]];
 
 1837             pred_TL[1] = pred_L[1] = dst_u[-p->
linesize[1]];
 
 1838             pred_TL[2] = pred_L[2] = dst_v[-p->
linesize[2]];
 
 1840             for (x = 0; x < avctx->
width; x += 2) {
 
 1841                 pred_T[0] = dst_y[-p->
linesize[0] + x];
 
 1842                 pred_T[3] = dst_y[-p->
linesize[0] + x + 1];
 
 1843                 pred_T[1] = dst_u[-p->
linesize[1] + x / 2];
 
 1844                 pred_T[2] = dst_v[-p->
linesize[2] + x / 2];
 
 1851                 dst_y[x    ] = pred_L[0] = (y1 + ((3 * (pred_T[0] + pred_L[0]) - 2 * pred_TL[0]) >> 2)) & 0xff;
 
 1852                 dst_u[x / 2] = pred_L[1] = (u + (((pred_L[1] - pred_TL[1]) >> 1) + pred_T[1])) & 0xff;
 
 1853                 dst_y[x + 1] = pred_L[0] = (y2 + ((3 * (pred_T[3] + pred_L[0]) - 2 * pred_T[0]) >> 2)) & 0xff;
 
 1854                 dst_v[x / 2] = pred_L[2] = (v + (((pred_L[2] - pred_TL[2]) >> 1) + pred_T[2])) & 0xff;
 
 1856                 pred_TL[0] = pred_T[3];
 
 1857                 pred_TL[1] = pred_T[1];
 
 1858                 pred_TL[2] = pred_T[2];
 
 1871     uint8_t *dst_y, *dst_u, *dst_v;
 
 1879         for (x = 0; x < avctx->
width; x += 2) {
 
 1886         int pred[4] = { 125, -128, -128, 0 };
 
 1888         for (x = 0; x < avctx->
width; x += 2) {
 
 1896             dst_y[x    ] = pred[0] = (y1 + pred[0]) & 0xff;
 
 1897             dst_u[x / 2] = pred[1] = (u  + pred[1]) & 0xff;
 
 1898             dst_y[x + 1] = pred[0] = (y2 + pred[0]) & 0xff;
 
 1899             dst_v[x / 2] = pred[2] = (v  + pred[2]) & 0xff;
 
 1907     for (y = 1; y < avctx->
height; y++) {
 
 1909             for (x = 0; x < avctx->
width; x += 2) {
 
 1919             pred_L[0] = dst_y[-p->
linesize[0]];
 
 1920             pred_L[1] = dst_u[-p->
linesize[1]];
 
 1921             pred_L[2] = dst_v[-p->
linesize[2]];
 
 1923             for (x = 0; x < avctx->
width; x += 2) {
 
 1929                 dst_y[x    ] = pred_L[0] = (y1 + pred_L[0]) & 0xff;
 
 1930                 dst_u[x / 2] = pred_L[1] = (u  + pred_L[1]) & 0xff;
 
 1931                 dst_y[x + 1] = pred_L[0] = (y2 + pred_L[0]) & 0xff;
 
 1932                 dst_v[x / 2] = pred_L[2] = (v +  pred_L[2]) & 0xff;
 
 1945     uint8_t *dst_y, *dst_u, *dst_v;
 
 1953         for (x = 0; x < avctx->
width; x += 2) {
 
 1960         int pred[4] = { 125, -128, -128, 0 };
 
 1962         for (x = 0; x < avctx->
width; x += 2) {
 
 1970             dst_y[x    ] = pred[0] = (y1 + pred[0]) & 0xff;
 
 1971             dst_u[x / 2] = pred[1] = (u  + pred[1]) & 0xff;
 
 1972             dst_y[x + 1] = pred[0] = (y2 + pred[0]) & 0xff;
 
 1973             dst_v[x / 2] = pred[2] = (v  + pred[2]) & 0xff;
 
 1981     for (y = 1; y < avctx->
height; y++) {
 
 1983             for (x = 0; x < avctx->
width; x += 2) {
 
 1990             int pred_TL[4], pred_L[4], pred_T[4];
 
 1993             pred_TL[0] = pred_L[0] = dst_y[-p->
linesize[0]];
 
 1994             pred_TL[1] = pred_L[1] = dst_u[-p->
linesize[1]];
 
 1995             pred_TL[2] = pred_L[2] = dst_v[-p->
linesize[2]];
 
 1997             for (x = 0; x < avctx->
width; x += 2) {
 
 1998                 pred_T[0] = dst_y[-p->
linesize[0] + x];
 
 1999                 pred_T[3] = dst_y[-p->
linesize[0] + x + 1];
 
 2000                 pred_T[1] = dst_u[-p->
linesize[1] + x / 2];
 
 2001                 pred_T[2] = dst_v[-p->
linesize[2] + x / 2];
 
 2008                 dst_y[x    ] = pred_L[0] = (y1 + ((3 * (pred_T[0] + pred_L[0]) - 2 * pred_TL[0]) >> 2)) & 0xff;
 
 2009                 dst_u[x / 2] = pred_L[1] = (u + (((pred_L[1] - pred_TL[1]) >> 1) + pred_T[1])) & 0xff;
 
 2010                 dst_y[x + 1] = pred_L[0] = (y2 + ((3 * (pred_T[3] + pred_L[0]) - 2 * pred_T[0]) >> 2)) & 0xff;
 
 2011                 dst_v[x / 2] = pred_L[2] = (v + (((pred_L[2] - pred_TL[2]) >> 1) + pred_T[2])) & 0xff;
 
 2013                 pred_TL[0] = pred_T[3];
 
 2014                 pred_TL[1] = pred_T[1];
 
 2015                 pred_TL[2] = pred_T[2];
 
 2028     uint8_t *dst_y, *dst_u, *dst_v;
 
 2036         for (x = 0; x < avctx->
width; x++) {
 
 2042         int pred[4] = { s->
alt ? 125 : -146, -128, -128, -128 };
 
 2044         for (x = 0; x < avctx->
width; x++) {
 
 2051             dst_y[x] = pred[0] = (y + pred[0]) & 0xff;
 
 2052             dst_u[x] = pred[1] = (u + pred[1]) & 0xff;
 
 2053             dst_v[x] = pred[2] = (v + pred[2]) & 0xff;
 
 2061     for (y = 1; y < avctx->
height; y++) {
 
 2063             for (x = 0; x < avctx->
width; x++) {
 
 2072             pred_L[0] = dst_y[-p->
linesize[0]];
 
 2073             pred_L[1] = dst_u[-p->
linesize[1]];
 
 2074             pred_L[2] = dst_v[-p->
linesize[2]];
 
 2076             for (x = 0; x < avctx->
width; x++) {
 
 2081                 dst_y[x] = pred_L[0] = (y + pred_L[0]) & 0xff;
 
 2082                 dst_u[x] = pred_L[1] = (u + pred_L[1]) & 0xff;
 
 2083                 dst_v[x] = pred_L[2] = (v + pred_L[2]) & 0xff;
 
 2096     uint8_t *dst_y, *dst_u, *dst_v;
 
 2104         for (x = 0; x < avctx->
width; x++) {
 
 2110         int pred[4] = { s->
alt ? 125 : -146, -128, -128, -128 };
 
 2112         for (x = 0; x < avctx->
width; x++) {
 
 2119             dst_y[x] = pred[0] = (y + pred[0]) & 0xff;
 
 2120             dst_u[x] = pred[1] = (u + pred[1]) & 0xff;
 
 2121             dst_v[x] = pred[2] = (v + pred[2]) & 0xff;
 
 2129     for (y = 1; y < avctx->
height; y++) {
 
 2131             for (x = 0; x < avctx->
width; x++) {
 
 2137             int pred_TL[4], pred_L[4], pred_T[4];
 
 2140             pred_TL[0] = pred_L[0] = dst_y[-p->
linesize[0]];
 
 2141             pred_TL[1] = pred_L[1] = dst_u[-p->
linesize[1]];
 
 2142             pred_TL[2] = pred_L[2] = dst_v[-p->
linesize[2]];
 
 2144             for (x = 0; x < avctx->
width; x++) {
 
 2145                 pred_T[0] = dst_y[-p->
linesize[0] + x];
 
 2146                 pred_T[1] = dst_u[-p->
linesize[1] + x];
 
 2147                 pred_T[2] = dst_v[-p->
linesize[2] + x];
 
 2153                 dst_y[x] = pred_L[0] = (y + ((3 * (pred_T[0] + pred_L[0]) - 2 * pred_TL[0]) >> 2)) & 0xff;
 
 2154                 dst_u[x] = pred_L[1] = (u + ((3 * (pred_T[1] + pred_L[1]) - 2 * pred_TL[1]) >> 2)) & 0xff;
 
 2155                 dst_v[x] = pred_L[2] = (v + ((3 * (pred_T[2] + pred_L[2]) - 2 * pred_TL[2]) >> 2)) & 0xff;
 
 2157                 pred_TL[0] = pred_T[0];
 
 2158                 pred_TL[1] = pred_T[1];
 
 2159                 pred_TL[2] = pred_T[2];
 
 2172     uint8_t *dst_a, *dst_y, *dst_u, *dst_v;
 
 2181         for (x = 0; x < avctx->
width; x++) {
 
 2188         int pred[4] = { 125, 125, -128, -128 };
 
 2190         for (x = 0; x < avctx->
width; x++) {
 
 2198             dst_a[x] = pred[0] = (a + pred[0]) & 0xff;
 
 2199             dst_y[x] = pred[1] = (y + pred[1]) & 0xff;
 
 2200             dst_u[x] = pred[2] = (u + pred[2]) & 0xff;
 
 2201             dst_v[x] = pred[3] = (v + pred[3]) & 0xff;
 
 2210     for (y = 1; y < avctx->
height; y++) {
 
 2212             for (x = 0; x < avctx->
width; x++) {
 
 2222             pred_L[0] = dst_a[-p->
linesize[3]];
 
 2223             pred_L[1] = dst_y[-p->
linesize[0]];
 
 2224             pred_L[2] = dst_u[-p->
linesize[1]];
 
 2225             pred_L[3] = dst_v[-p->
linesize[2]];
 
 2227             for (x = 0; x < avctx->
width; x++) {
 
 2233                 dst_a[x] = pred_L[0] = (a + pred_L[0]) & 0xff;
 
 2234                 dst_y[x] = pred_L[1] = (y + pred_L[1]) & 0xff;
 
 2235                 dst_u[x] = pred_L[2] = (u + pred_L[2]) & 0xff;
 
 2236                 dst_v[x] = pred_L[3] = (v + pred_L[3]) & 0xff;
 
 2250     uint8_t *dst_a, *dst_y, *dst_u, *dst_v;
 
 2259         for (x = 0; x < avctx->
width; x++) {
 
 2266         int pred[4] = { 125, 125, -128, -128 };
 
 2268         for (x = 0; x < avctx->
width; x++) {
 
 2276             dst_a[x] = pred[0] = (a + pred[0]) & 0xff;
 
 2277             dst_y[x] = pred[1] = (y + pred[1]) & 0xff;
 
 2278             dst_u[x] = pred[2] = (u + pred[2]) & 0xff;
 
 2279             dst_v[x] = pred[3] = (v + pred[3]) & 0xff;
 
 2288     for (y = 1; y < avctx->
height; y++) {
 
 2290             for (x = 0; x < avctx->
width; x++) {
 
 2297             int pred_TL[4], pred_L[4], pred_T[4];
 
 2300             pred_TL[0] = pred_L[0] = dst_a[-p->
linesize[3]];
 
 2301             pred_TL[1] = pred_L[1] = dst_y[-p->
linesize[0]];
 
 2302             pred_TL[2] = pred_L[2] = dst_u[-p->
linesize[1]];
 
 2303             pred_TL[3] = pred_L[3] = dst_v[-p->
linesize[2]];
 
 2305             for (x = 0; x < avctx->
width; x++) {
 
 2306                 pred_T[0] = dst_a[-p->
linesize[3] + x];
 
 2307                 pred_T[1] = dst_y[-p->
linesize[0] + x];
 
 2308                 pred_T[2] = dst_u[-p->
linesize[1] + x];
 
 2309                 pred_T[3] = dst_v[-p->
linesize[2] + x];
 
 2316                 dst_a[x] = pred_L[0] = (a + ((3 * (pred_T[0] + pred_L[0]) - 2 * pred_TL[0]) >> 2)) & 0xff;
 
 2317                 dst_y[x] = pred_L[1] = (y + ((3 * (pred_T[1] + pred_L[1]) - 2 * pred_TL[1]) >> 2)) & 0xff;
 
 2318                 dst_u[x] = pred_L[2] = (u + ((3 * (pred_T[2] + pred_L[2]) - 2 * pred_TL[2]) >> 2)) & 0xff;
 
 2319                 dst_v[x] = pred_L[3] = (v + ((3 * (pred_T[3] + pred_L[3]) - 2 * pred_TL[3]) >> 2)) & 0xff;
 
 2321                 pred_TL[0] = pred_T[0];
 
 2322                 pred_TL[1] = pred_T[1];
 
 2323                 pred_TL[2] = pred_T[2];
 
 2324                 pred_TL[3] = pred_T[3];
 
 2338     uint16_t *dst_r, *dst_g, *dst_b, *dst_a;
 
 2341     dst_r = (uint16_t *)p->
data[2];
 
 2342     dst_g = (uint16_t *)p->
data[0];
 
 2343     dst_b = (uint16_t *)p->
data[1];
 
 2344     dst_a = (uint16_t *)p->
data[3];
 
 2346     for (y = 0; y < avctx->
height; y++) {
 
 2348             for (x = 0; x < avctx->
width; x++) {
 
 2355             int pred[4] = { 512, 512, 512, 512 };
 
 2357             for (x = 0; x < avctx->
width; x++) {
 
 2365                 dst_a[x] = pred[3] = (a + pred[3]) & 0x3ff;
 
 2366                 dst_r[x] = pred[0] = (r + pred[0]) & 0x3ff;
 
 2367                 dst_g[x] = pred[1] = (r + g + pred[1]) & 0x3ff;
 
 2368                 dst_b[x] = pred[2] = (r + g + b + pred[2]) & 0x3ff;
 
 2382     uint16_t *dst_r, *dst_g, *dst_b, *dst_a;
 
 2385     dst_r = (uint16_t *)p->
data[2];
 
 2386     dst_g = (uint16_t *)p->
data[0];
 
 2387     dst_b = (uint16_t *)p->
data[1];
 
 2388     dst_a = (uint16_t *)p->
data[3];
 
 2391         for (x = 0; x < avctx->
width; x++) {
 
 2398         int pred[4] = { 512, 512, 512, 512 };
 
 2400         for (x = 0; x < avctx->
width; x++) {
 
 2408             dst_a[x] = pred[3] = (a + pred[3]) & 0x3ff;
 
 2409             dst_r[x] = pred[0] = (r + pred[0]) & 0x3ff;
 
 2410             dst_g[x] = pred[1] = (r + g + pred[1]) & 0x3ff;
 
 2411             dst_b[x] = pred[2] = (r + g + b + pred[2]) & 0x3ff;
 
 2420     for (y = 1; y < avctx->
height; y++) {
 
 2422             for (x = 0; x < avctx->
width; x++) {
 
 2429             int pred_TL[4], pred_L[4], pred_T[4];
 
 2432             pred_TL[0] = pred_L[0] = dst_r[-p->
linesize[2] / 2];
 
 2433             pred_TL[1] = pred_L[1] = dst_g[-p->
linesize[0] / 2];
 
 2434             pred_TL[2] = pred_L[2] = dst_b[-p->
linesize[1] / 2];
 
 2435             pred_TL[3] = pred_L[3] = dst_a[-p->
linesize[3] / 2];
 
 2437             for (x = 0; x < avctx->
width; x++) {
 
 2438                 pred_T[0] = dst_r[-p->
linesize[2] / 2 + x];
 
 2439                 pred_T[1] = dst_g[-p->
linesize[0] / 2 + x];
 
 2440                 pred_T[2] = dst_b[-p->
linesize[1] / 2 + x];
 
 2441                 pred_T[3] = dst_a[-p->
linesize[3] / 2 + x];
 
 2448                 dst_a[x] = pred_L[3] = (a + ((3 * (pred_T[3] + pred_L[3]) - 2 * pred_TL[3]) >> 2)) & 0x3ff;
 
 2449                 dst_r[x] = pred_L[0] = (r + ((3 * (pred_T[0] + pred_L[0]) - 2 * pred_TL[0]) >> 2)) & 0x3ff;
 
 2450                 dst_g[x] = pred_L[1] = (r + g + ((3 * (pred_T[1] + pred_L[1]) - 2 * pred_TL[1]) >> 2)) & 0x3ff;
 
 2451                 dst_b[x] = pred_L[2] = (r + g + b + ((3 * (pred_T[2] + pred_L[2]) - 2 * pred_TL[2]) >> 2)) & 0x3ff;
 
 2453                 pred_TL[0] = pred_T[0];
 
 2454                 pred_TL[1] = pred_T[1];
 
 2455                 pred_TL[2] = pred_T[2];
 
 2456                 pred_TL[3] = pred_T[3];
 
 2470     uint16_t *dst_r, *dst_g, *dst_b;
 
 2473     dst_r = (uint16_t *)p->
data[2];
 
 2474     dst_g = (uint16_t *)p->
data[0];
 
 2475     dst_b = (uint16_t *)p->
data[1];
 
 2479             for (x = 0; x < avctx->
width; x++) {
 
 2485             int pred[4] = { 512, 512, 512, 0 };
 
 2487             for (x = 0; x < avctx->
width; x++) {
 
 2494                 dst_r[x] = pred[0] = (r + pred[0]) & 0x3ff;
 
 2495                 dst_g[x] = pred[1] = (r + g + pred[1]) & 0x3ff;
 
 2496                 dst_b[x] = pred[2] = (r + g + b + pred[2]) & 0x3ff;
 
 2509     uint16_t *dst_r, *dst_g, *dst_b;
 
 2512     dst_r = (uint16_t *)p->
data[2];
 
 2513     dst_g = (uint16_t *)p->
data[0];
 
 2514     dst_b = (uint16_t *)p->
data[1];
 
 2517         for (x = 0; x < avctx->
width; x++) {
 
 2523         int pred[4] = { 512, 512, 512, 0 };
 
 2525         for (x = 0; x < avctx->
width; x++) {
 
 2532             dst_r[x] = pred[0] = (r + pred[0]) & 0x3ff;
 
 2533             dst_g[x] = pred[1] = (r + g + pred[1]) & 0x3ff;
 
 2534             dst_b[x] = pred[2] = (r + g + b + pred[2]) & 0x3ff;
 
 2542     for (y = 1; y < avctx->
height; y++) {
 
 2544             for (x = 0; x < avctx->
width; x++) {
 
 2550             int pred_TL[4], pred_L[4], pred_T[4];
 
 2553             pred_TL[0] = pred_L[0] = dst_r[-p->
linesize[2] / 2];
 
 2554             pred_TL[1] = pred_L[1] = dst_g[-p->
linesize[0] / 2];
 
 2555             pred_TL[2] = pred_L[2] = dst_b[-p->
linesize[1] / 2];
 
 2557             for (x = 0; x < avctx->
width; x++) {
 
 2558                 pred_T[0] = dst_r[-p->
linesize[2] / 2 + x];
 
 2559                 pred_T[1] = dst_g[-p->
linesize[0] / 2 + x];
 
 2560                 pred_T[2] = dst_b[-p->
linesize[1] / 2 + x];
 
 2566                 dst_r[x] = pred_L[0] = (r + ((3 * (pred_T[0] + pred_L[0]) - 2 * pred_TL[0]) >> 2)) & 0x3ff;
 
 2567                 dst_g[x] = pred_L[1] = (r + g + ((3 * (pred_T[1] + pred_L[1]) - 2 * pred_TL[1]) >> 2)) & 0x3ff;
 
 2568                 dst_b[x] = pred_L[2] = (r + g + b + ((3 * (pred_T[2] + pred_L[2]) - 2 * pred_TL[2]) >> 2)) & 0x3ff;
 
 2570                 pred_TL[0] = pred_T[0];
 
 2571                 pred_TL[1] = pred_T[1];
 
 2572                 pred_TL[2] = pred_T[2];
 
 2590         for (x = 0; x < avctx->
width; x++) {
 
 2597         int pred[4] = { -128, -128, -128, -128 };
 
 2599         for (x = 0; x < avctx->
width; x++) {
 
 2607             dst[4 * x + 0] = pred[0] = (a + pred[0]) & 0xff;
 
 2608             dst[4 * x + 1] = pred[1] = (r + pred[1]) & 0xff;
 
 2609             dst[4 * x + 2] = pred[2] = (r + g + pred[2]) & 0xff;
 
 2610             dst[4 * x + 3] = pred[3] = (r + g + b + pred[3]) & 0xff;
 
 2615     for (y = 1; y < avctx->
height; y++) {
 
 2617             for (x = 0; x < avctx->
width; x++) {
 
 2627             pred_L[0] = dst[-p->
linesize[0] + 0];
 
 2628             pred_L[1] = dst[-p->
linesize[0] + 1];
 
 2629             pred_L[2] = dst[-p->
linesize[0] + 2];
 
 2630             pred_L[3] = dst[-p->
linesize[0] + 3];
 
 2632             for (x = 0; x < avctx->
width; x++) {
 
 2638                 dst[4 * x + 0] = pred_L[0] = (a + pred_L[0]) & 0xff;
 
 2639                 dst[4 * x + 1] = pred_L[1] = (r + pred_L[1]) & 0xff;
 
 2640                 dst[4 * x + 2] = pred_L[2] = (r + g + pred_L[2]) & 0xff;
 
 2641                 dst[4 * x + 3] = pred_L[3] = (r + g + b + pred_L[3]) & 0xff;
 
 2656         for (x = 0; x < avctx->
width; x++) {
 
 2663         int pred[4] = { -128, -128, -128, -128 };
 
 2665         for (x = 0; x < avctx->
width; x++) {
 
 2673             dst[4 * x + 0] = pred[0] = (a + pred[0]) & 0xff;
 
 2674             dst[4 * x + 1] = pred[1] = (r + pred[1]) & 0xff;
 
 2675             dst[4 * x + 2] = pred[2] = (r + g + pred[2]) & 0xff;
 
 2676             dst[4 * x + 3] = pred[3] = (r + g + b + pred[3]) & 0xff;
 
 2681     for (y = 1; y < avctx->
height; y++) {
 
 2683             for (x = 0; x < avctx->
width; x++) {
 
 2690             int pred_TL[4], pred_L[4], pred_T[4];
 
 2693             pred_TL[0] = pred_L[0] = dst[-p->
linesize[0] + 0];
 
 2694             pred_TL[1] = pred_L[1] = dst[-p->
linesize[0] + 1];
 
 2695             pred_TL[2] = pred_L[2] = dst[-p->
linesize[0] + 2];
 
 2696             pred_TL[3] = pred_L[3] = dst[-p->
linesize[0] + 3];
 
 2698             for (x = 0; x < avctx->
width; x++) {
 
 2699                 pred_T[0] = dst[-p->
linesize[0] + 4 * x + 0];
 
 2700                 pred_T[1] = dst[-p->
linesize[0] + 4 * x + 1];
 
 2701                 pred_T[2] = dst[-p->
linesize[0] + 4 * x + 2];
 
 2702                 pred_T[3] = dst[-p->
linesize[0] + 4 * x + 3];
 
 2709                 dst[4 * x + 0] = pred_L[0] = (a + ((3 * (pred_T[0] + pred_L[0]) - 2 * pred_TL[0]) >> 2)) & 0xff;
 
 2710                 dst[4 * x + 1] = pred_L[1] = (r + ((3 * (pred_T[1] + pred_L[1]) - 2 * pred_TL[1]) >> 2)) & 0xff;
 
 2711                 dst[4 * x + 2] = pred_L[2] = (r + g + ((3 * (pred_T[2] + pred_L[2]) - 2 * pred_TL[2]) >> 2)) & 0xff;
 
 2712                 dst[4 * x + 3] = pred_L[3] = (r + g + b + ((3 * (pred_T[3] + pred_L[3]) - 2 * pred_TL[3]) >> 2)) & 0xff;
 
 2714                 pred_TL[0] = pred_T[0];
 
 2715                 pred_TL[1] = pred_T[1];
 
 2716                 pred_TL[2] = pred_T[2];
 
 2717                 pred_TL[3] = pred_T[3];
 
 2732         for (x = 0; x < avctx->
width; x++) {
 
 2738         int pred[4] = { -128, -128, -128, -128 };
 
 2740         for (x = 0; x < avctx->
width; x++) {
 
 2747             dst[4 * x + 0] = pred[0] = (r + pred[0]) & 0xff;
 
 2748             dst[4 * x + 1] = pred[1] = (r + g + pred[1]) & 0xff;
 
 2749             dst[4 * x + 2] = pred[2] = (r + g + b + pred[2]) & 0xff;
 
 2754     for (y = 1; y < avctx->
height; y++) {
 
 2756             for (x = 0; x < avctx->
width; x++) {
 
 2765             pred_L[0] = dst[-p->
linesize[0] + 0];
 
 2766             pred_L[1] = dst[-p->
linesize[0] + 1];
 
 2767             pred_L[2] = dst[-p->
linesize[0] + 2];
 
 2769             for (x = 0; x < avctx->
width; x++) {
 
 2774                 dst[4 * x + 0] = pred_L[0] = (r + pred_L[0]) & 0xff;
 
 2775                 dst[4 * x + 1] = pred_L[1] = (r + g + pred_L[1]) & 0xff;
 
 2776                 dst[4 * x + 2] = pred_L[2] = (r + g + b + pred_L[2]) & 0xff;
 
 2791         for (x = 0; x < avctx->
width; x++) {
 
 2797         int pred[4] = { -128, -128, -128, -128 };
 
 2799         for (x = 0; x < avctx->
width; x++) {
 
 2806             dst[4 * x + 0] = pred[0] = (r + pred[0]) & 0xff;
 
 2807             dst[4 * x + 1] = pred[1] = (r + g + pred[1]) & 0xff;
 
 2808             dst[4 * x + 2] = pred[2] = (r + g + b + pred[2]) & 0xff;
 
 2813     for (y = 1; y < avctx->
height; y++) {
 
 2815             for (x = 0; x < avctx->
width; x++) {
 
 2821             int pred_TL[4], pred_L[4], pred_T[4];
 
 2824             pred_TL[0] = pred_L[0] = dst[-p->
linesize[0] + 0];
 
 2825             pred_TL[1] = pred_L[1] = dst[-p->
linesize[0] + 1];
 
 2826             pred_TL[2] = pred_L[2] = dst[-p->
linesize[0] + 2];
 
 2828             for (x = 0; x < avctx->
width; x++) {
 
 2829                 pred_T[0] = dst[-p->
linesize[0] + 4 * x + 0];
 
 2830                 pred_T[1] = dst[-p->
linesize[0] + 4 * x + 1];
 
 2831                 pred_T[2] = dst[-p->
linesize[0] + 4 * x + 2];
 
 2837                 dst[4 * x + 0] = pred_L[0] = (r + ((3 * (pred_T[0] + pred_L[0]) - 2 * pred_TL[0]) >> 2)) & 0xff;
 
 2838                 dst[4 * x + 1] = pred_L[1] = (r + g + ((3 * (pred_T[1] + pred_L[1]) - 2 * pred_TL[1]) >> 2)) & 0xff;
 
 2839                 dst[4 * x + 2] = pred_L[2] = (r + g + b + ((3 * (pred_T[2] + pred_L[2]) - 2 * pred_TL[2]) >> 2)) & 0xff;
 
 2841                 pred_TL[0] = pred_T[0];
 
 2842                 pred_TL[1] = pred_T[1];
 
 2843                 pred_TL[2] = pred_T[2];
 
 2852     uint32_t codes[1024];
 
 2854     uint16_t syms[1024];
 
 2859     for (i = 0; i < 
count; i++) {
 
 2860         codes[i]  = index >> (32 - len[i]);
 
 2863         index += 1ULL << (32 - len[i]);
 
 2868                               bits,  
sizeof(*bits),  
sizeof(*bits),
 
 2869                               codes, 
sizeof(*codes), 
sizeof(*codes),
 
 2870                               syms,  
sizeof(*syms),  
sizeof(*syms), 0);
 
 2874                         void *
data, 
int *got_frame,
 
 2882     char format_str[32];
 
 2885     if (avpkt->
size <= 20)
 
 2897     case MKTAG(
' ', 
'R', 
'G', 
'B'):
 
 2900         if (s->
format != format) {
 
 2905     case MKTAG(
' ', 
'r', 
'G', 
'B'):
 
 2908         if (s->
format != format) {
 
 2913     case MKTAG(
'A', 
'R', 
'G', 
'X'):
 
 2916         if (s->
format != format) {
 
 2921     case MKTAG(
'A', 
'r', 
'G', 
'X'):
 
 2924         if (s->
format != format) {
 
 2929     case MKTAG(
'R', 
'G', 
'B', 
'X'):
 
 2932         if (s->
format != format) {
 
 2937     case MKTAG(
'r', 
'G', 
'B', 
'X'):
 
 2940         if (s->
format != format) {
 
 2945     case MKTAG(
'A', 
'R', 
'G', 
'B'):
 
 2948         if (s->
format != format) {
 
 2953     case MKTAG(
'A', 
'r', 
'G', 
'B'):
 
 2956         if (s->
format != format) {
 
 2961     case MKTAG(
'A', 
'Y', 
'B', 
'R'):
 
 2962     case MKTAG(
'A', 
'Y', 
'b', 
'R'):
 
 2965         if (s->
format != format) {
 
 2970     case MKTAG(
'A', 
'y', 
'B', 
'R'):
 
 2971     case MKTAG(
'A', 
'y', 
'b', 
'R'):
 
 2974         if (s->
format != format) {
 
 2979     case MKTAG(
' ', 
'Y', 
'B', 
'R'):
 
 2981     case MKTAG(
' ', 
'Y', 
'b', 
'R'):
 
 2984         if (s->
format != format) {
 
 2989     case MKTAG(
' ', 
'y', 
'B', 
'R'):
 
 2991     case MKTAG(
' ', 
'y', 
'b', 
'R'):
 
 2994         if (s->
format != format) {
 
 2999     case MKTAG(
'Y', 
'B', 
'R', 0x0a):
 
 3002         if (s->
format != format) {
 
 3007     case MKTAG(
'y', 
'B', 
'R', 0x0a):
 
 3010         if (s->
format != format) {
 
 3015     case MKTAG(
'C', 
'A', 
'4', 
'p'):
 
 3018         if (s->
format != format) {
 
 3023     case MKTAG(
'C', 
'A', 
'4', 
'i'):
 
 3026         if (s->
format != format) {
 
 3031     case MKTAG(
'B', 
'Y', 
'R', 
'Y'):
 
 3034         if (s->
format != format) {
 
 3039     case MKTAG(
'B', 
'Y', 
'R', 
'y'):
 
 3042         if (s->
format != format) {
 
 3047     case MKTAG(
'Y', 
'b', 
'Y', 
'r'):
 
 3050         if (s->
format != format) {
 
 3055     case MKTAG(
'C', 
'8', 
'2', 
'p'):
 
 3058         if (s->
format != format) {
 
 3063     case MKTAG(
'C', 
'8', 
'2', 
'i'):
 
 3066         if (s->
format != format) {
 
 3071     case MKTAG(0xa2, 
'Y', 
'R', 
'Y'):
 
 3074         if (s->
format != format) {
 
 3079     case MKTAG(0xa2, 
'Y', 
'R', 
'y'):
 
 3082         if (s->
format != format) {
 
 3087     case MKTAG(
'C', 
'A', 
'2', 
'p'):
 
 3090         if (s->
format != format) {
 
 3095     case MKTAG(
'C', 
'A', 
'2', 
'i'):
 
 3098         if (s->
format != format) {
 
 3108     if (s->
format != format) {
 
 3136     memset(&s->
vlc[0], 0, 
sizeof(s->
vlc[0]));
 
 3137     memset(&s->
vlc[1], 0, 
sizeof(s->
vlc[1]));
 
 3154     .
name             = 
"sheervideo",
 
static const uint8_t l_u_yry10i[1024]
 
static av_cold int decode_end(AVCodecContext *avctx)
 
static const uint8_t l_y_ybri[256]
 
#define AVERROR_INVALIDDATA
Invalid data found when processing input. 
 
static void decode_c82p(AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
This structure describes decoded (raw) audio or video data. 
 
static const uint8_t l_y_ybr10[1024]
 
ptrdiff_t const GLvoid * data
 
static const uint8_t l_u_ybr[256]
 
static void decode_ca2p(AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static void decode_byryi(AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
#define AV_PIX_FMT_GBRAP10
 
#define AV_PIX_FMT_YUVA422P10
 
planar YUV 4:4:4, 24bpp, (1 Cr & Cb sample per 1x1 Y samples) 
 
static unsigned int get_bits(GetBitContext *s, int n)
Read 1-25 bits. 
 
static int init_thread_copy(AVCodecContext *avctx)
 
static void decode_aybri(AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static void decode_ybr10(AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static void decode_rgbx(AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
int ff_init_vlc_sparse(VLC *vlc_arg, int nb_bits, int nb_codes, const void *bits, int bits_wrap, int bits_size, const void *codes, int codes_wrap, int codes_size, const void *symbols, int symbols_wrap, int symbols_size, int flags)
 
#define AV_PIX_FMT_GBRP10
 
enum AVPixelFormat pix_fmt
Pixel format, see AV_PIX_FMT_xxx. 
 
static void decode_ca2i(AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
size_t av_get_codec_tag_string(char *buf, size_t buf_size, unsigned int codec_tag)
Put a string representing the codec tag codec_tag in buf. 
 
static const uint8_t l_g_rgb[256]
 
static const uint8_t l_y_byry[256]
 
static int build_vlc(VLC *vlc, const uint8_t *len, int count)
 
void void avpriv_request_sample(void *avc, const char *msg,...) av_printf_format(2
Log a generic warning message about a missing feature. 
 
static int decode_frame(AVCodecContext *avctx, void *data, int *got_frame, AVPacket *avpkt)
 
static const uint8_t l_g_rgbx[1024]
 
packed RGB 8:8:8, 32bpp, RGBXRGBX... X=unused/undefined 
 
AVCodec ff_sheervideo_decoder
 
Multithreading support functions. 
 
static const uint8_t l_y_yry10[1024]
 
static void decode_argbi(AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static void decode_rgbi(AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static const uint8_t l_u_ybr10i[1024]
 
bitstream reader API header. 
 
static void decode_argxi(AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static void decode_aybr(AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static const uint8_t l_y_ybyr[256]
 
planar YUV 4:2:2 24bpp, (1 Cr & Cb sample per 2x1 Y & A samples) 
 
static const uint8_t l_r_rgbxi[1024]
 
static void decode_rgb(AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
 
#define AV_LOG_DEBUG
Stuff which is only useful for libav* developers. 
 
static const uint8_t l_g_rgbi[256]
 
const char * name
Name of the codec implementation. 
 
#define AV_PIX_FMT_YUV444P10
 
packed ARGB 8:8:8:8, 32bpp, ARGBARGB... 
 
#define AV_CODEC_CAP_FRAME_THREADS
Codec supports frame-level multithreading. 
 
static void decode_c82i(AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
planar YUV 4:2:2, 16bpp, (1 Cr & Cb sample per 2x1 Y samples) 
 
#define ONLY_IF_THREADS_ENABLED(x)
Define a function with only the non-default version specified. 
 
static const uint8_t l_y_yry10i[1024]
 
static const uint8_t l_r_rgb[256]
 
enum AVPictureType pict_type
Picture type of the frame. 
 
int width
picture width / height. 
 
static void decode_byry(AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
typedef void(APIENTRY *FF_PFNGLACTIVETEXTUREPROC)(GLenum texture)
 
static const uint8_t l_u_byry[256]
 
static av_always_inline int get_vlc2(GetBitContext *s, VLC_TYPE(*table)[2], int bits, int max_depth)
Parse a vlc code. 
 
#define AV_PIX_FMT_YUVA444P10
 
static void decode_argx(AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static const float pred[4]
 
#define AVERROR_PATCHWELCOME
Not yet implemented in FFmpeg, patches welcome. 
 
static void decode_argb(AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static const uint8_t l_g_rgbxi[1024]
 
Libavcodec external API header. 
 
int linesize[AV_NUM_DATA_POINTERS]
For video, size in bytes of each picture line. 
 
static int init_get_bits8(GetBitContext *s, const uint8_t *buffer, int byte_size)
Initialize GetBitContext. 
 
planar YUV 4:4:4 32bpp, (1 Cr & Cb sample per 1x1 Y & A samples) 
 
static void decode_ca4p(AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
int ff_thread_get_buffer(AVCodecContext *avctx, ThreadFrame *f, int flags)
Wrapper around get_buffer() for frame-multithreaded codecs. 
 
main external API structure. 
 
static void decode_ca4i(AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static unsigned int get_bits1(GetBitContext *s)
 
static const char * format
 
static void decode_ybri(AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static const uint8_t l_u_yry10[1024]
 
static const uint8_t l_r_rgbx[1024]
 
void(* decode_frame)(AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
#define AV_PIX_FMT_YUV422P10
 
uint8_t * data[AV_NUM_DATA_POINTERS]
pointer to the picture/channel planes. 
 
static void decode_yry10(AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
common internal api header. 
 
static const uint8_t l_y_ybr10i[1024]
 
static void decode_ybr10i(AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static const uint8_t l_u_ybri[256]
 
static const uint8_t l_r_rgbi[256]
 
static void decode_rgbxi(AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static const uint8_t l_u_byryi[256]
 
VLC_TYPE(* table)[2]
code, bits 
 
static void decode_ybr(AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
int key_frame
1 -> keyframe, 0-> not 
 
static const uint8_t l_y_ybr[256]
 
#define MKTAG(a, b, c, d)
 
static const uint8_t l_y_byryi[256]
 
static void decode_ybyr(AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
uint64_t_TMPL AV_WL64 unsigned int_TMPL AV_RL32
 
This structure stores compressed data. 
 
void ff_free_vlc(VLC *vlc)
 
#define AV_CODEC_CAP_DR1
Codec uses get_buffer() for allocating buffers and supports custom allocators. 
 
static void decode_yry10i(AVCodecContext *avctx, AVFrame *p, GetBitContext *gb)
 
static const uint8_t l_u_ybyr[256]
 
static const uint8_t l_u_ybr10[1024]