3 #ifndef _SEARCHWINDOW_H 
    4 #define _SEARCHWINDOW_H 
   37     template <Player P, 
class EvalBase>
 
   44       template <
class Recorder>
 
   48                              const Recorder& recorder) 
 
   55         if (record.template hasGreaterLowerBound<P>(limit, w.
alpha(), 
 
   62             recorder.tableHitLowerBound(P, table_value, w.
beta(), 
limit);
 
   67         if (record.template hasLesserUpperBound<P>(limit, w.
beta(), table_value))
 
   73             recorder.tableHitUpperBound(P, table_value, w.
alpha(), 
limit);
 
   98     template <Player P, 
class EvalBase, 
bool best_move_extension>
 
  110       template <
class Recorder>
 
  114                              int& val, 
const Recorder& recorder)
 
  116         const int lookUpLimit = (best_move_extension ? limit + 200 : 
limit);
 
  122         if (record.template hasGreaterLowerBound<P>
 
  123             (lookUpLimit, w.
beta(), table_value))
 
  126           recorder.tableHitLowerBound(P, table_value, w.
beta(), 
limit);
 
  131         if (record.template hasLesserUpperBound<P>
 
  132             (lookUpLimit, w.
alpha(), table_value))
 
  135           recorder.tableHitUpperBound(P, table_value, w.
alpha(), 
limit);