import sys from collections import defaultdict def main(): N, M = map(int, sys.stdin.readline().split()) f = [0] * (N + 1) # DP1: Processing d dp1 = defaultdict(int) for d in range(M + 1): t = d * d if t <= N: dp1[(d, t)] += 1 # DP2: Processing c dp2 = defaultdict(int) for (s_prev, t_prev), cnt in dp1.items(): for c in range(M + 1): new_s = s_prev + c new_t = t_prev + c * new_s if new_t > N: continue dp2[(new_s, new_t)] += cnt # DP3: Processing b dp3 = defaultdict(int) for (s_prev, t_prev), cnt in dp2.items(): for b in range(M + 1): new_s = s_prev + b new_t = t_prev + b * new_s if new_t > N: continue dp3[(new_s, new_t)] += cnt # Processing a and accumulate results into f for (s_prev, t_prev), cnt in dp3.items(): for a in range(M + 1): new_t = t_prev + a * (s_prev + a) if new_t <= N: f[new_t] += cnt for n in range(N + 1): print(f[n]) if __name__ == "__main__": main()