completed castling validation