protected static long getStartPositionHashCode() {
   // must be done after the bitboards are initialized in ChPosition -> cannot do it in
   // static of ChAbstractPosition
   if (s_startPositionHashCode == 0L) {
     AbstractMutablePosition startPos = new LightWeightPosition();
     FEN.initFromFEN(startPos, FEN.START_POSITION, true);
     s_startPositionHashCode = new Position(startPos).getHashCode(); // do after bitBoard init
   }
   return s_startPositionHashCode;
 }
 public String toString() {
   return FEN.getFEN(this);
 }
 public String getFEN() {
   return FEN.getFEN(this);
 }