public void prepend(Move[] movesToPrepend){
  Move[] newMoves=new Move[maxSize];
  System.arraycopy(movesToPrepend,0,newMoves,0,movesToPrepend.length);
  System.arraycopy(moves,0,newMoves,movesToPrepend.length,size);
  moves=newMoves;
  size+=movesToPrepend.length;
}

public void prepend ( Move [ ] movesToPrepend ) { Move [ ] newMoves = new Move [ maxSize ] ; System . arraycopy ( movesToPrepend , 0 , newMoves , 0 , movesToPrepend . length ) ; System . arraycopy ( moves , 0 , newMoves , movesToPrepend . length , size ) ; moves = newMoves ; size += movesToPrepend . length ; }
prepends the moves to the beginning of this list .
