#include <iostream>
#include <cstring>

#define NMAX 4000
#define NUMS 63

typedef unsigned long long unum;

const int nbits = sizeof(unum)*8;

unum
scalar_product_mod2(unum *row, unum *col, int n)
{
	unum res, bit, sum;
	sum = 0U;
	for(int i = 0; i < n; i++)
		sum ^= row[i] & col[i];
	res = 0U;
	for(; sum != 0; sum >>= 1)
		res ^= sum & 1;
	return res;
}

int
main(int argc, char *argv[])
{
	int  nums, n;
	unum bit, count;
	unum rows[NMAX][NUMS];
	unum cols[NMAX][NUMS];
	char buf[NMAX+2];

	std::memset(rows, 0, NMAX*NUMS*sizeof(unum));
	std::memset(cols, 0, NMAX*NUMS*sizeof(unum));
	std::memset(buf, 0, NMAX+2);
	std::cin.sync_with_stdio(false);
	std::cin >> n;
	std::cin.getline(buf, 0);

	for(int i = 0; i < n; i++) {
		std::cin.getline(buf, n+1);
		for(int j = 0; j < n; j++) {
			bit = buf[j] - '0';
			rows[i][j/nbits] |= bit << j%nbits;
			cols[j][i/nbits] |= bit << i%nbits;
		}
	}

	count = 0;
	nums = n/nbits + 1;
	if(nums > NUMS)
		nums = NUMS;
	for(int i = 0; i < n; i++)
		for(int j = 0; j < n; j++)
			count += scalar_product_mod2(rows[i], cols[j], nums);
	
	std::cout << count << std::endl;

	return 0;
}