from collections import Counter



def resolve():

  N = int(eval(input()))

  A = [int(x) for x in input().split(" ")]

  collection = Counter(A)

  for i in range(1, N + 1):

    print((collection[i]))

  # results = [str(A.count(i))+'\n' for i in range(1, N+1)]

  # print('\n'.join(results))



if __name__ == "__main__":

  resolve()
def resolve():

  N = int(eval(input()))

  A = [int(x) for x in input().split(" ")]

  results = [0] * N

  for a in A:

    results[a-1] += 1

  for r in results:

    print(r)



if __name__ == "__main__":

  resolve()
from collections import Counter


def resolve():
    N = int(eval(input()))
    A = [int(x) for x in input().split(" ")]
    collection = Counter(A)
    for i in range(1, N + 1):
        print((collection[i]))
    # results = [str(A.count(i))+'\n' for i in range(1, N+1)]
    # print('\n'.join(results))


if __name__ == "__main__":
    resolve()

def resolve():
    N = int(eval(input()))
    A = [int(x) for x in input().split(" ")]
    results = [0] * N
    for a in A:
        results[a - 1] += 1
    for r in results:
        print(r)


if __name__ == "__main__":
    resolve()

-from collections import Counter - - -    collection = Counter(A) -    for i in range(1, N + 1): -        print((collection[i])) -    # results = [str(A.count(i))+'\n' for i in range(1, N+1)] -    # print('\n'.join(results)) +    results = [0] * N +    for a in A: +        results[a - 1] += 1 +    for r in results: +        print(r)