// File: /workspace/github_cpp_makefile_star2_O3/big-data-lab-team[P]OrpailleCC/./src/mondrian_coarse.hpp
// Function: CoarseMondrianForest<double, funct, KappaMetrics<2, false>, 4, 2, 6000>::node_csv(int, int, int, int, MondrianNode<4, 2> const&) const
void node_csv(int const tree_id, int const node_id, int const depth, int const leaf, Node const& node) const{
	cout << "Narval:" << total_count << "," << tree_id << "," << node_id << "," << depth << ","
		<< node.parent << "," << node.child_right << "," << node.child_left << ","
		<< node.tau << "," << node.split_dimension << "," << node.split_value << "," << leaf << "," << node.forced_extend << ",";
	for(int i = 0; i < feature_count; ++i){
		cout << node.bound_lower[i] << "," << node.bound_upper[i] << ",";
	}
	for(int i = 0; i < label_count; ++i){
		cout << node.counters[i] << ",";
	}
	cout << endl;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq %r9, %r14
movl %r8d, 0x4(%rsp)
movl %ecx, (%rsp)
movl %edx, %r13d
movl %esi, %ebp
movq %rdi, %r15
movq 0x2945(%rip), %rbx      # 0x7fd8
leaq 0xa77(%rip), %rsi       # 0x6111
movl $0x7, %edx
movq %rbx, %rdi
callq 0x1090
movl 0x17b4(%r15), %esi
movq %rbx, %rdi
callq 0x1050
movq %rax, %r12
leaq 0xa40(%rip), %r15       # 0x6100
movl $0x1, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x1090
movq %r12, %rdi
movl %ebp, %esi
callq 0x10c0
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x1090
movq %r12, %rdi
movl %r13d, %esi
callq 0x10c0
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x1090
movq %r12, %rdi
movl (%rsp), %esi
callq 0x10c0
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x1090
movl 0x58(%r14), %esi
movq %r12, %rdi
callq 0x10c0
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x1090
movl 0x54(%r14), %esi
movq %r12, %rdi
callq 0x10c0
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x1090
movl 0x50(%r14), %esi
movq %r12, %rdi
callq 0x10c0
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x1090
movsd 0x60(%r14), %xmm0
movq %r12, %rdi
callq 0x10b0
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x1090
movl (%r14), %esi
movq %r12, %rdi
callq 0x10c0
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x1090
movsd 0x8(%r14), %xmm0
movq %r12, %rdi
callq 0x10b0
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x1090
movq %r12, %rdi
movl 0x4(%rsp), %esi
callq 0x10c0
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x1090
movl 0x70(%r14), %esi
movq %r12, %rdi
callq 0x10c0
movl $0x1, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x1090
movq $-0x4, %r13
movsd 0x30(%r14,%r13,8), %xmm0
movq %rbx, %rdi
callq 0x10b0
movq %rax, %r12
movl $0x1, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x1090
movsd 0x50(%r14,%r13,8), %xmm0
movq %r12, %rdi
callq 0x10b0
movl $0x1, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x1090
incq %r13
jne 0x5828
movl 0x68(%r14), %esi
movq %rbx, %rdi
callq 0x10c0
leaq 0x87f(%rip), %r15       # 0x6100
movl $0x1, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x1090
movl 0x6c(%r14), %esi
movq %rbx, %rdi
callq 0x10c0
movl $0x1, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x1090
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x1080
movsbl %al, %esi
movq %rbx, %rdi
callq 0x1030
movq %rax, %rdi
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x1060