// File: /workspace/github_cpp_makefile_star2_O3/eryxcc[P]lois/tests/autotest.cpp
// Function: drawTree(std::vector<lois::term, std::allocator<lois::term>>&, int)
void drawTree(vector<term>& v, int from) {
  cout << v[from];
  int children = 0;

  for(size_t i=0; i<v.size(); i++) if(i>from && strindex[i][i] == from)
    cout << "=" << v[i];
    
  for(size_t i=0; i<v.size(); i++) 
    if(strindex[from][i] == from && strindex[i][i] != from && strindex[from][from] != i) {
      bool direct = true;
      for(size_t j=0; j<v.size(); j++) 
        if(i!=j && j != from && strindex[from][j] == from && strindex[i][j] == j)
          direct = false;
      if(direct) {
        if(!children) cout << "["; else cout << ", ";
        children++;
        drawTree(v, i);
        }
      }

  if(children) cout << "]";
  }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movl %esi, %ebx
movslq %esi, %rbp
movq %rdi, 0x10(%rsp)
movq (%rdi), %rax
movq %rbp, %rcx
shlq $0x4, %rcx
movq (%rax,%rcx), %rdi
testq %rdi, %rdi
je 0x8365
movq (%rdi), %rax
movq 0x49c70(%rip), %rsi     # 0x51fd0
callq *0x10(%rax)
jmp 0x837d
movq 0x49c64(%rip), %rdi     # 0x51fd0
leaq 0x36d80(%rip), %rsi     # 0x3f0f3
movl $0xb, %edx
callq 0x72c0
movq 0x10(%rsp), %rsi
movq 0x8(%rsi), %rax
cmpq (%rsi), %rax
je 0x8574
leaq 0x49faa(%rip), %r13     # 0x52340
xorl %r12d, %r12d
movq 0x49c30(%rip), %r14     # 0x51fd0
xorl %r15d, %r15d
movl %ebx, 0xc(%rsp)
cmpq %rbp, %r15
jbe 0x83fd
cmpl %ebx, (%r13)
jne 0x83fd
movl $0x1, %edx
movq %rsi, %rbx
movq %r14, %rdi
leaq 0x38238(%rip), %rsi     # 0x405fc
callq 0x72c0
movq (%rbx), %rax
movq (%rax,%r12), %rdi
testq %rdi, %rdi
je 0x83e0
movq (%rdi), %rax
movq %r14, %rsi
callq *0x10(%rax)
jmp 0x83f4
movl $0xb, %edx
movq %r14, %rdi
leaq 0x36d04(%rip), %rsi     # 0x3f0f3
callq 0x72c0
movq 0x10(%rsp), %rsi
movl 0xc(%rsp), %ebx
incq %r15
movq (%rsi), %rax
movq 0x8(%rsi), %rcx
movq %rcx, %rdx
subq %rax, %rdx
sarq $0x4, %rdx
addq $0x44, %r13
addq $0x10, %r12
cmpq %rdx, %r15
jb 0x83a7
movq %rcx, %rdx
subq %rax, %rdx
je 0x8574
sarq $0x4, %rdx
leaq 0x49f0b(%rip), %r10     # 0x52340
movq %rbp, %r12
shlq $0x6, %r12
leaq (%r10,%r12), %r11
leaq (%r11,%rbp,4), %rdi
xorl %r15d, %r15d
movq %r10, %r13
movl $0x0, 0x8(%rsp)
movq %r11, 0x20(%rsp)
movq %rdi, 0x18(%rsp)
movq 0x10(%rsp), %r14
cmpl %ebx, (%r11,%r15,4)
jne 0x852d
movq %r15, %rsi
shlq $0x6, %rsi
addq %r10, %rsi
cmpl %ebx, (%rsi,%r15,4)
je 0x852d
movslq (%rdi), %rsi
cmpq %rsi, %r15
je 0x852d
cmpq $0x1, %rdx
adcq $0x0, %rdx
movb $0x1, %sil
xorl %edi, %edi
cmpq %rdi, %r15
sete %r8b
cmpq %rdi, %rbp
sete %r9b
orb %r8b, %r9b
jne 0x84c4
leaq (%r12,%rdi,4), %r8
cmpl %ebx, (%r10,%r8)
jne 0x84c4
movslq (%r13,%rdi,4), %r8
cmpq %r8, %rdi
setne %r8b
andb %r8b, %sil
incq %rdi
cmpq %rdi, %rdx
jne 0x8498
testb $0x1, %sil
je 0x8528
cmpl $0x0, 0x8(%rsp)
je 0x84ee
movl $0x2, %edx
movq 0x49aeb(%rip), %rdi     # 0x51fd0
leaq 0x384f1(%rip), %rsi     # 0x409dd
jmp 0x8501
movl $0x1, %edx
movq 0x49ad6(%rip), %rdi     # 0x51fd0
leaq 0x3848e(%rip), %rsi     # 0x4098f
callq 0x72c0
incl 0x8(%rsp)
movq %r14, %rdi
movl %r15d, %esi
callq 0x832b
movq (%r14), %rax
movq 0x8(%r14), %rcx
leaq 0x49e1d(%rip), %r10     # 0x52340
movq 0x20(%rsp), %r11
movq 0x18(%rsp), %rdi
incq %r15
movq %rcx, %rdx
subq %rax, %rdx
sarq $0x4, %rdx
addq $0x40, %r13
cmpq %rdx, %r15
jb 0x8461
cmpl $0x0, 0x8(%rsp)
je 0x8574
movq 0x49a7b(%rip), %rdi     # 0x51fd0
leaq 0x38d41(%rip), %rsi     # 0x4129d
movl $0x1, %edx
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x72c0
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq