15       template class PiecePairEvalTableBase<PiecePairPieceTable>;
 
   16       template class PiecePairEval<PiecePairWithStand<PiecePairPieceTable>,PiecePairPieceTable>;
 
   17       template class PiecePairWithStand<PiecePairPieceTable>;
 
   35 setUp(
const char *filename)
 const 
   37   if (! PiecePairRawEval::setUp(filename))
 
   40   for (
unsigned int i=0; i<maxPairIndex; ++i)
 
   42     values[i] = PiecePairRawTable::Table.value(i)
 
   47   for (
int y=1; y<=9; ++y)
 
   49     for (
int x=1; x<=9; ++x)
 
   51       const Square position(x,y);
 
   57         const unsigned int index = indexOf(position, ptypeo);
 
   64   static const CArray<Ptype,2> gold_silver = {{ 
GOLD, 
SILVER }};
 
   65   for (
size_t i=0; i<gold_silver.size(); ++i) {
 
   66     const Ptype ptype = gold_silver[i];
 
   68     for (
int y=7; y<=9; ++y) {
 
   69       Square right(1,y), left(9,y);
 
   72       values[selfIndexOf(index_r)] = values[selfIndexOf(index_r)]*4/5;
 
   73       values[selfIndexOf(index_l)] = values[selfIndexOf(index_l)]*4/5;
 
   75       right = right.rotate180();
 
   79       values[selfIndexOf(index_r)] = values[selfIndexOf(index_r)]*4/5;
 
   80       values[selfIndexOf(index_l)] = values[selfIndexOf(index_l)]*4/5;    
 
   82     for (
int x=1; x<=9; ++x) {
 
   85       values[selfIndexOf(index)] = values[selfIndexOf(index)] * 2/3;
 
   89       values[selfIndexOf(index)] = values[selfIndexOf(index)] * 2/3;      
 
   92   for (
int y=1; y<=6; ++y) {
 
   93     for (
int x=1; x<=9; ++x) {
 
   96       values[selfIndexOf(index)] = values[selfIndexOf(index)] * 6/7;
 
  100       values[selfIndexOf(index)] = values[selfIndexOf(index)] * 6/7;
 
  103   for (
int y=7; y<=9; ++y) {
 
  104     Square right(2,y), left(8,y);
 
  107     values[selfIndexOf(index_r)] = values[selfIndexOf(index_r)]*7/8;
 
  108     values[selfIndexOf(index_l)] = values[selfIndexOf(index_l)]*7/8;
 
  110     right = right.rotate180();
 
  114     values[selfIndexOf(index_r)] = values[selfIndexOf(index_r)]*7/8;
 
  115     values[selfIndexOf(index_l)] = values[selfIndexOf(index_l)]*7/8;
 
  119   for (
int y=1; y<=9; ++y)
 
  121     for (
int x=1; x<=9; ++x)
 
  123       const Square position(x,y);
 
  129         const unsigned int index = indexOf(position, ptypeo);
 
  141   CArray<int, PTYPE_SIZE> values;
 
  142   std::copy(w, w+(
int)
PTYPE_SIZE, values.begin());
 
  143   PiecePairPieceTable::Piece_Value.reset(values);