import itertools

import math

import collections



def func(x,y,z):

    return x**2+y**2+z**2+x*y+y*z+z*x

 

n = int(eval(input()))

s = int(math.sqrt(n))

nums = list(range(1,s))

arr = []

com = list(itertools.product(nums, repeat=3))

for i in range(len(com)):

    # print(com)

    ans = func(com[i][0],com[i][1],com[i][2])

    arr.append(ans)

 



c = collections.Counter(arr)

for i in range(n):

    print((c[i+1]))
import itertools

import math

import collections



def func(x,y,z):

    return x**2+y**2+z**2+x*y+y*z+z*x

 

n = int(eval(input()))

 

ans = 0

arr = []

for x in range(1,100):

    for y in range(1,100):

        for z in range(1,100):

            ans = func(x,y,z)

            arr.append(ans)

            if ans > n:

                break

 



c = collections.Counter(arr)

for i in range(n):

    print((c[i+1]))
import itertools
import math
import collections


def func(x, y, z):
    return x**2 + y**2 + z**2 + x * y + y * z + z * x


n = int(eval(input()))
s = int(math.sqrt(n))
nums = list(range(1, s))
arr = []
com = list(itertools.product(nums, repeat=3))
for i in range(len(com)):
    # print(com)
    ans = func(com[i][0], com[i][1], com[i][2])
    arr.append(ans)
c = collections.Counter(arr)
for i in range(n):
    print((c[i + 1]))

import itertools
import math
import collections


def func(x, y, z):
    return x**2 + y**2 + z**2 + x * y + y * z + z * x


n = int(eval(input()))
ans = 0
arr = []
for x in range(1, 100):
    for y in range(1, 100):
        for z in range(1, 100):
            ans = func(x, y, z)
            arr.append(ans)
            if ans > n:
                break
c = collections.Counter(arr)
for i in range(n):
    print((c[i + 1]))

-s = int(math.sqrt(n)) -nums = list(range(1, s)) +ans = 0 -com = list(itertools.product(nums, repeat=3)) -for i in range(len(com)): -    # print(com) -    ans = func(com[i][0], com[i][1], com[i][2]) -    arr.append(ans) +for x in range(1, 100): +    for y in range(1, 100): +        for z in range(1, 100): +            ans = func(x, y, z) +            arr.append(ans) +            if ans > n: +                break