#include #define endl '\n' using namespace std; typedef long long ll; template using pqmin = priority_queue, greater>; template using pqmax = priority_queue; typedef pair pii; using pll = pair; using ld = long double; template using vc = vector; template using vvc = vector>; template using vvvc = vector>; using vi = vc; using vl = vc; using vpi = vc; #define pb push_back #define eb emplace_back #define mp make_pair #define bg(x) begin(x) #define all(x) bg(x), end(x) #define rall(x) x.rbegin(), x.rend() #define sor(x) sort(all(x)) #define rev(x) reverse(all(x)) #define forn(i, n) for (int i = 0; i < n; i++) #define fora(i, a, b) for (int i = a; i <= b; i++) #define rofn(i, n) for (int i = n-1; i >= 0; i--) #define rofa(i, a, b) for (int i = a; i >= b; i--) #define rep(n) forn(i, n) //trencherous things bellow #define get(n) int n; cin >> n; forn(i, n) cin >> arr[i]; //debug void __print(int x) {cerr << x;} void __print(long x) {cerr << x;} void __print(long long x) {cerr << x;} void __print(unsigned x) {cerr << x;} void __print(unsigned long x) {cerr << x;} void __print(unsigned long long x) {cerr << x;} void __print(float x) {cerr << x;} void __print(double x) {cerr << x;} void __print(long double x) {cerr << x;} void __print(char x) {cerr << '\'' << x << '\'';} void __print(const char *x) {cerr << '\"' << x << '\"';} void __print(const string &x) {cerr << '\"' << x << '\"';} void __print(bool x) {cerr << (x ? "true" : "false");} template void __print(const pair &x) {cerr << '{'; __print(x.first); cerr << ','; __print(x.second); cerr << '}';} template void __print(const T &x) {int f = 0; cerr << '{'; for (auto &i: x) cerr << (f++ ? "," : ""), __print(i); cerr << "}";} void _print() {cerr << "]\n";} template void _print(T t, V... v) {__print(t); if (sizeof...(v)) cerr << ", "; _print(v...);} #ifndef ONLINE_JUDGE #define debug(x...) cerr << "[" << #x << "] = ["; _print(x) #else #define debug(x...) #endif #ifndef ONLINE_JUDGE #define debarr(arr, n) cerr << "arr: ["; forn(i, n) cerr << arr[i] << (i == n-1 ? "" : ", "); cerr << "]" << endl; #else #define debarr(x...) #endif const int mod = 1e9 + 7; //998244353 const int maxn = 2e5 + 5; void solve() { } int main() { ios_base::sync_with_stdio(0); cin.tie(0); int n; cin >> n; vector colors(8); map mapa; forn(i, n) { string s; cin >> s; int c; cin >> c; mapa[s] = c; } for (auto a : mapa) { colors[a.second]++; } for (int a : colors) cout << a << endl; }