added pawn movement validation