#include "bits/stdc++.h"
using namespace std;

int exp(int a, int b, int mod) {
	long long res{1}, z{a};
	while (b) {
		if (b&1) res = (res*z)%mod;
		z = (z*z)%mod;
		b /= 2;
	}
	return res;
}

int main()
{
	ios::sync_with_stdio(0);
	cin.tie(0), cout.tie(0);
	
	int n;
	string s;
	cin >> n >> s;
	int z = count(s.begin(), s.end(), '1');
	int l{}, g{};
	for (int i = 0; i < n; i++) {
		if (s[i] == '1') {
			if (z != 1) l = (l + exp(2, n - i - 1, z - 1))%(z - 1);
			g = (g + exp(2, n - i - 1, z + 1))%(z + 1);
		}
	}
	
	for (int i = 0; i < n; i++) {
		int k{}, ans{1};
		if (s[i] == '0') {
			k = (0ll + g + exp(2, n - i - 1, z + 1))%(z + 1);
		} else {
			if (z != 1) k = (0ll + l - exp(2, n - i - 1, z - 1) + z - 1)%(z - 1);
			else ans = 0;
		}
		while (k) {
			k %= __builtin_popcount(k);
			ans++;
		}
		cout << ans << '\n';
	}
}