+
+/// Endgames member definitions
+
+template<> const Endgames::EFMap& Endgames::map<EF>() const { return maps.first; }
+template<> const Endgames::SFMap& Endgames::map<SF>() const { return maps.second; }
+
+Endgames::Endgames() {
+
+ add<Value, KPK>("KPK");
+ add<Value, KNNK>("KNNK");
+ add<Value, KBNK>("KBNK");
+ add<Value, KRKP>("KRKP");
+ add<Value, KRKB>("KRKB");
+ add<Value, KRKN>("KRKN");
+ add<Value, KQKR>("KQKR");
+ add<Value, KBBKN>("KBBKN");
+
+ add<ScaleFactor, KNPK>("KNPK");
+ add<ScaleFactor, KRPKR>("KRPKR");
+ add<ScaleFactor, KBPKB>("KBPKB");
+ add<ScaleFactor, KBPKN>("KBPKN");
+ add<ScaleFactor, KBPPKB>("KBPPKB");
+ add<ScaleFactor, KRPPKRP>("KRPPKRP");