// File: /workspace/github_c_makefile_star2_O3/georgeweigt[P]sassafras/sassafras.c
// Function: print_anova_table_part1
void
print_anova_table_part1(void)
{
	char **a;

	a = (char **) xmalloc(4 * 6 * sizeof (char *));

	// 1st row

	A(0, 0) = strdup("Source");
	A(0, 1) = strdup("DF");
	A(0, 2) = strdup("Sum of Squares");
	A(0, 3) = strdup("Mean Square");
	A(0, 4) = strdup("F Value");
	A(0, 5) = strdup("Pr > F");

	// 2nd row

	A(1, 0) = strdup("Model");

	snprintf(bigbuf, BIGBUFLEN, "%d", npar - 1);
	A(1, 1) = strdup(bigbuf);

	snprintf(bigbuf, BIGBUFLEN, "%0.8f", ssr);
	A(1, 2) = strdup(bigbuf);

	snprintf(bigbuf, BIGBUFLEN, "%0.8f", msr);
	A(1, 3) = strdup(bigbuf);

	snprintf(bigbuf, BIGBUFLEN, "%0.2f", fval);
	A(1, 4) = strdup(bigbuf);

	snprintf(bigbuf, BIGBUFLEN, "%0.4f", pval);
	A(1, 5) = strdup(bigbuf);

	// 3rd row

	A(2, 0) = strdup("Error");

	snprintf(bigbuf, BIGBUFLEN, "%d", nobs - npar);
	A(2, 1) = strdup(bigbuf);

	snprintf(bigbuf, BIGBUFLEN, "%0.8f", sse);
	A(2, 2) = strdup(bigbuf);

	snprintf(bigbuf, BIGBUFLEN, "%0.8f", mse);
	A(2, 3) = strdup(bigbuf);

	A(2, 4) = strdup("");
	A(2, 5) = strdup("");

	// 4th row

	A(3, 0) = strdup("Total");

	snprintf(bigbuf, BIGBUFLEN, "%d", nobs - 1);
	A(3, 1) = strdup(bigbuf);

	snprintf(bigbuf, BIGBUFLEN, "%0.8f", css);
	A(3, 2) = strdup(bigbuf);

	A(3, 3) = strdup("");
	A(3, 4) = strdup("");
	A(3, 5) = strdup("");

	bigbuf[0] = 1; // left justify
	bigbuf[1] = 0;
	bigbuf[2] = 0;
	bigbuf[3] = 0;
	bigbuf[4] = 0;
	bigbuf[5] = 0;

	print_table_and_free(a, 4, 6, bigbuf);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movl $0xc0, %edi
callq 0x2190
testq %rax, %rax
je 0x6ad1
movq %rax, %rbx
leaq 0x5014(%rip), %rdi      # 0xb82a
callq 0x2220
movq %rax, (%rbx)
leaq 0x500c(%rip), %rdi      # 0xb831
callq 0x2220
movq %rax, 0x8(%rbx)
leaq 0x4fff(%rip), %rdi      # 0xb834
callq 0x2220
movq %rax, 0x10(%rbx)
leaq 0x4ffe(%rip), %rdi      # 0xb843
callq 0x2220
movq %rax, 0x18(%rbx)
leaq 0x4ffa(%rip), %rdi      # 0xb84f
callq 0x2220
movq %rax, 0x20(%rbx)
leaq 0x4ff2(%rip), %rdi      # 0xb857
callq 0x2220
movq %rax, 0x28(%rbx)
leaq 0x4fe9(%rip), %rdi      # 0xb85e
callq 0x2220
movq %rax, 0x30(%rbx)
movl 0xe1d4(%rip), %ecx      # 0x14a58
decl %ecx
leaq 0xc643(%rip), %r14      # 0x12ed0
leaq 0x4b90(%rip), %r15      # 0xb424
movl $0xfa0, %esi            # imm = 0xFA0
movq %r14, %rdi
movq %r15, %rdx
xorl %eax, %eax
callq 0x20e0
movq %r14, %rdi
callq 0x2220
movq %rax, 0x38(%rbx)
movsd 0xe1c6(%rip), %xmm0     # 0x14a80
leaq 0x4ab7(%rip), %r12      # 0xb378
movl $0xfa0, %esi            # imm = 0xFA0
movq %r14, %rdi
movq %r12, %rdx
movb $0x1, %al
callq 0x20e0
movq %r14, %rdi
callq 0x2220
movq %rax, 0x40(%rbx)
movsd 0xe1a1(%rip), %xmm0     # 0x14a88
movl $0xfa0, %esi            # imm = 0xFA0
movq %r14, %rdi
movq %r12, %rdx
movb $0x1, %al
callq 0x20e0
movq %r14, %rdi
callq 0x2220
movq %rax, 0x48(%rbx)
movsd 0xe183(%rip), %xmm0     # 0x14a90
leaq 0x4a40(%rip), %rdx      # 0xb354
movl $0xfa0, %esi            # imm = 0xFA0
movq %r14, %rdi
movb $0x1, %al
callq 0x20e0
movq %r14, %rdi
callq 0x2220
movq %rax, 0x50(%rbx)
movsd 0xe161(%rip), %xmm0     # 0x14a98
leaq 0x4a22(%rip), %rdx      # 0xb360
movl $0xfa0, %esi            # imm = 0xFA0
movq %r14, %rdi
movb $0x1, %al
callq 0x20e0
movq %r14, %rdi
callq 0x2220
movq %rax, 0x58(%rbx)
leaq 0x4f04(%rip), %rdi      # 0xb864
callq 0x2220
movq %rax, 0x60(%rbx)
movl 0xe0e5(%rip), %ecx      # 0x14a54
subl 0xe0e3(%rip), %ecx      # 0x14a58
movl $0xfa0, %esi            # imm = 0xFA0
movq %r14, %rdi
movq %r15, %rdx
xorl %eax, %eax
callq 0x20e0
movq %r14, %rdi
callq 0x2220
movq %rax, 0x68(%rbx)
movsd 0xe0cd(%rip), %xmm0     # 0x14a68
movl $0xfa0, %esi            # imm = 0xFA0
movq %r14, %rdi
movq %r12, %rdx
movb $0x1, %al
callq 0x20e0
movq %r14, %rdi
callq 0x2220
movq %rax, 0x70(%rbx)
movsd 0xe0af(%rip), %xmm0     # 0x14a70
movl $0xfa0, %esi            # imm = 0xFA0
movq %r14, %rdi
movq %r12, %rdx
movb $0x1, %al
callq 0x20e0
movq %r14, %rdi
callq 0x2220
movq %rax, 0x78(%rbx)
leaq 0x4add(%rip), %r13      # 0xb4c3
movq %r13, %rdi
callq 0x2220
movq %rax, 0x80(%rbx)
movq %r13, %rdi
callq 0x2220
movq %rax, 0x88(%rbx)
leaq 0x4e5f(%rip), %rdi      # 0xb86a
callq 0x2220
movq %rax, 0x90(%rbx)
movl 0xe037(%rip), %ecx      # 0x14a54
decl %ecx
movl $0xfa0, %esi            # imm = 0xFA0
movq %r14, %rdi
movq %r15, %rdx
xorl %eax, %eax
callq 0x20e0
movq %r14, %rdi
callq 0x2220
movq %rax, 0x98(%rbx)
movsd 0xe058(%rip), %xmm0     # 0x14aa0
movl $0xfa0, %esi            # imm = 0xFA0
movq %r14, %rdi
movq %r12, %rdx
movb $0x1, %al
callq 0x20e0
movq %r14, %rdi
callq 0x2220
movq %rax, 0xa0(%rbx)
movq %r13, %rdi
callq 0x2220
movq %rax, 0xa8(%rbx)
movq %r13, %rdi
callq 0x2220
movq %rax, 0xb0(%rbx)
movq %r13, %rdi
callq 0x2220
movq %rax, 0xb8(%rbx)
movb $0x1, 0xc433(%rip)      # 0x12ed0
movb $0x0, 0xc431(%rip)      # 0x12ed5
movl $0x0, 0xc423(%rip)      # 0x12ed1
movq %rbx, %rdi
movl $0x4, %esi
movl $0x6, %edx
movq %r14, %rcx
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x470d
movl $0x1, %edi
callq 0x2200