import sys

import math



import heapq



def input():

    return sys.stdin.readline().rstrip()





def tc():

    N = int(eval(input()))







def main():

    N = int(eval(input()))



    dp = [0]*(N+1)

    rt = int(N **0.5) +2

    for i in range(1,rt):

        for j in range(1,rt):

            for k in range(1,rt):

                case =int( i**2 + j **2 + k **2 + i*j + i*k + j*k )

                if case <=N:

                    dp[case] +=1





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

        print((dp[l]))





















if __name__ == "__main__":

    main()

import sys

import math



import heapq



def input():

    return sys.stdin.readline().rstrip()





def tc():

    N = int(eval(input()))







def main():

    N = int(eval(input()))



    dp = [0]*(N+1)

    rt = int(N **0.5) +2

    for i in range(1,rt):

        for j in range(1,rt):

            if int( i**2 + j **2 + 1 + i*j + i*1 + j*1 ) >N:

                break

            for k in range(1,rt):

                case =int( i**2 + j **2 + k **2 + i*j + i*k + j*k )

                if case <=N:

                    dp[case] +=1

                else:

                    break



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

        print((dp[l]))





















if __name__ == "__main__":

    main()

import sys
import math
import heapq


def input():
    return sys.stdin.readline().rstrip()


def tc():
    N = int(eval(input()))


def main():
    N = int(eval(input()))
    dp = [0] * (N + 1)
    rt = int(N**0.5) + 2
    for i in range(1, rt):
        for j in range(1, rt):
            for k in range(1, rt):
                case = int(i**2 + j**2 + k**2 + i * j + i * k + j * k)
                if case <= N:
                    dp[case] += 1
    for l in range(1, N + 1):
        print((dp[l]))


if __name__ == "__main__":
    main()

import sys
import math
import heapq


def input():
    return sys.stdin.readline().rstrip()


def tc():
    N = int(eval(input()))


def main():
    N = int(eval(input()))
    dp = [0] * (N + 1)
    rt = int(N**0.5) + 2
    for i in range(1, rt):
        for j in range(1, rt):
            if int(i**2 + j**2 + 1 + i * j + i * 1 + j * 1) > N:
                break
            for k in range(1, rt):
                case = int(i**2 + j**2 + k**2 + i * j + i * k + j * k)
                if case <= N:
                    dp[case] += 1
                else:
                    break
    for l in range(1, N + 1):
        print((dp[l]))


if __name__ == "__main__":
    main()

+            if int(i**2 + j**2 + 1 + i * j + i * 1 + j * 1) > N: +                break +                else: +                    break