// File: /workspace/github_cpp_makefile_star2_O1/eryxcc[P]lois/tests/../include/lois.h
// Function: std::ostream& lois::operator<<<lois::lpair<lois::term, lois::term>>(std::ostream&, lois::SimpleSetOf<lois::lpair<lois::term, lois::term>> const&)
std::ostream& operator << (std::ostream & os, const SimpleSetOf<T>& e) {
  os << e.a; // os << e.a;
  bool comma = false;
  for(size_t i=0; i<e.var.size(); i++) {
    if(comma) os << sym.sfecomma; else os << sym.sfepipe;
    os << e.var[i]; os << sym.in; os << e.var[i]->dom->name;
    comma = true;
    }
  if(!e.phi.isTrue()) {
    if(comma) os << sym.sfecomma; else os << sym.sfepipe;
    os << e.phi;
    }
  return os;
  }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x138, %rsp            # imm = 0x138
movq %rsi, %r14
movq %rdi, %rbx
movq 0x28(%rsi), %rax
movq %rax, 0x118(%rsp)
movq 0x30(%rsi), %rax
movq %rax, 0x120(%rsp)
testq %rax, %rax
je 0x241a5
movq 0x2ee31(%rip), %rcx     # 0x52fc8
cmpb $0x0, (%rcx)
je 0x241a1
incl 0x8(%rax)
jmp 0x241a5
lock
incl 0x8(%rax)
movq 0x38(%r14), %rax
movq %rax, 0x128(%rsp)
movq 0x40(%r14), %rax
movq %rax, 0x130(%rsp)
testq %rax, %rax
je 0x241d7
movq 0x2edff(%rip), %rcx     # 0x52fc8
cmpb $0x0, (%rcx)
je 0x241d3
incl 0x8(%rax)
jmp 0x241d7
lock
incl 0x8(%rax)
leaq 0x118(%rsp), %rsi
movq %rbx, %rdi
callq 0x23168
movq 0x130(%rsp), %rdi
testq %rdi, %rdi
je 0x241f9
callq 0x13308
movq 0x120(%rsp), %rdi
testq %rdi, %rdi
je 0x2420b
callq 0x13308
movq (%r14), %rax
movq 0x8(%r14), %rcx
movq %rax, 0xc0(%rsp)
movq %rcx, 0xb8(%rsp)
cmpq %rax, %rcx
je 0x244e3
xorl %r12d, %r12d
leaq 0x2d1cb(%rip), %rbp     # 0x51400
leaq 0x2f6ac(%rip), %r15     # 0x538e8
xorl %r13d, %r13d
xorl %eax, %eax
testb $0x1, %al
je 0x24281
movq %rbp, 0x80(%rsp)
movq 0x128(%r15), %rcx
movq 0x130(%r15), %rax
movq %rcx, 0x88(%rsp)
movq %rax, 0x90(%rsp)
testq %rax, %rax
je 0x242bc
movq 0x2ed51(%rip), %rcx     # 0x52fc8
cmpb $0x0, (%rcx)
je 0x242b8
incl 0x8(%rax)
jmp 0x242bc
movq %rbp, 0x68(%rsp)
movq 0x110(%r15), %rcx
movq 0x118(%r15), %rax
movq %rcx, 0x70(%rsp)
movq %rax, 0x78(%rsp)
testq %rax, %rax
je 0x24335
movq 0x2ed1a(%rip), %rcx     # 0x52fc8
cmpb $0x0, (%rcx)
je 0x24331
incl 0x8(%rax)
jmp 0x24335
lock
incl 0x8(%rax)
leaq 0x108(%rsp), %rdi
leaq 0x80(%rsp), %rsi
callq 0x10644
movq 0x108(%rsp), %rsi
movq (%rsi), %rax
movq %rsp, %rdi
callq *(%rax)
movq (%rsp), %rsi
movq 0x8(%rsp), %rdx
movq %rbx, %rdi
callq 0x72c0
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x2430d
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x7280
movq 0x110(%rsp), %rdi
testq %rdi, %rdi
je 0x2431f
callq 0x13308
movq %rbp, 0x80(%rsp)
movq 0x90(%rsp), %rdi
jmp 0x2439f
lock
incl 0x8(%rax)
leaq 0xf8(%rsp), %rdi
leaq 0x68(%rsp), %rsi
callq 0x10644
movq 0xf8(%rsp), %rsi
movq (%rsi), %rax
movq %rsp, %rdi
callq *(%rax)
movq (%rsp), %rsi
movq 0x8(%rsp), %rdx
movq %rbx, %rdi
callq 0x72c0
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x24383
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x7280
movq 0x100(%rsp), %rdi
testq %rdi, %rdi
je 0x24395
callq 0x13308
movq %rbp, 0x68(%rsp)
movq 0x78(%rsp), %rdi
testq %rdi, %rdi
je 0x243a9
callq 0x13308
movq (%r14), %rax
movq (%rax,%r12), %rcx
movq %rcx, 0xa8(%rsp)
movq 0x8(%rax,%r12), %rax
movq %rax, 0xb0(%rsp)
testq %rax, %rax
je 0x243df
movq 0x2ebf7(%rip), %rcx     # 0x52fc8
cmpb $0x0, (%rcx)
je 0x243db
incl 0x8(%rax)
jmp 0x243df
lock
incl 0x8(%rax)
movq %rbx, %rdi
leaq 0xa8(%rsp), %rsi
callq 0x2a0f7
movq 0xb0(%rsp), %rdi
testq %rdi, %rdi
je 0x24401
callq 0x13308
movq %rbp, 0x50(%rsp)
movq 0x98(%r15), %rcx
movq 0xa0(%r15), %rax
movq %rcx, 0x58(%rsp)
movq %rax, 0x60(%rsp)
testq %rax, %rax
je 0x24438
movq 0x2eb9e(%rip), %rcx     # 0x52fc8
cmpb $0x0, (%rcx)
je 0x24434
incl 0x8(%rax)
jmp 0x24438
lock
incl 0x8(%rax)
leaq 0xe8(%rsp), %rdi
leaq 0x50(%rsp), %rsi
callq 0x10644
movq 0xe8(%rsp), %rsi
movq (%rsi), %rax
movq %rsp, %rdi
callq *(%rax)
movq (%rsp), %rsi
movq 0x8(%rsp), %rdx
movq %rbx, %rdi
callq 0x72c0
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x24486
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x7280
movq 0xf0(%rsp), %rdi
testq %rdi, %rdi
je 0x24498
callq 0x13308
movq %rbp, 0x50(%rsp)
movq 0x60(%rsp), %rdi
testq %rdi, %rdi
je 0x244ac
callq 0x13308
movq (%r14), %rax
movq (%rax,%r12), %rax
movq 0x10(%rax), %rax
movq (%rax), %rsi
movq 0x8(%rax), %rdx
movq %rbx, %rdi
callq 0x72c0
incq %r13
movq 0x8(%r14), %rcx
subq (%r14), %rcx
sarq $0x4, %rcx
addq $0x10, %r12
movb $0x1, %al
cmpq %rcx, %r13
jb 0x24241
movq 0x18(%r14), %rax
leaq 0x2f2c2(%rip), %rcx     # 0x537b0
cmpq (%rcx), %rax
je 0x246cb
movq 0xb8(%rsp), %rax
cmpq 0xc0(%rsp), %rax
je 0x2454a
leaq 0x2cef0(%rip), %r15     # 0x51400
movq %r15, 0x38(%rsp)
leaq 0x2f3cc(%rip), %rax     # 0x538e8
movq 0x128(%rax), %rcx
movq 0x130(%rax), %rax
movq %rcx, 0x40(%rsp)
movq %rax, 0x48(%rsp)
testq %rax, %rax
je 0x24593
movq 0x2ea88(%rip), %rcx     # 0x52fc8
cmpb $0x0, (%rcx)
je 0x2458f
incl 0x8(%rax)
jmp 0x24593
leaq 0x2ceaf(%rip), %r15     # 0x51400
movq %r15, 0x20(%rsp)
leaq 0x2f38b(%rip), %rax     # 0x538e8
movq 0x110(%rax), %rcx
movq 0x118(%rax), %rax
movq %rcx, 0x28(%rsp)
movq %rax, 0x30(%rsp)
testq %rax, %rax
je 0x24603
movq 0x2ea43(%rip), %rcx     # 0x52fc8
cmpb $0x0, (%rcx)
je 0x245ff
incl 0x8(%rax)
jmp 0x24603
lock
incl 0x8(%rax)
leaq 0xd8(%rsp), %rdi
leaq 0x38(%rsp), %rsi
callq 0x10644
movq 0xd8(%rsp), %rsi
movq (%rsi), %rax
movq %rsp, %rdi
callq *(%rax)
movq (%rsp), %rsi
movq 0x8(%rsp), %rdx
movq %rbx, %rdi
callq 0x72c0
leaq 0x10(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x245e1
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x7280
movq 0xe0(%rsp), %rdi
testq %rdi, %rdi
je 0x245f3
callq 0x13308
movq %r15, 0x38(%rsp)
movq 0x48(%rsp), %rdi
jmp 0x2466d
lock
incl 0x8(%rax)
leaq 0xc8(%rsp), %rdi
leaq 0x20(%rsp), %rsi
callq 0x10644
movq 0xc8(%rsp), %rsi
movq (%rsi), %rax
movq %rsp, %rdi
callq *(%rax)
movq (%rsp), %rsi
movq 0x8(%rsp), %rdx
movq %rbx, %rdi
callq 0x72c0
leaq 0x10(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x24651
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x7280
movq 0xd0(%rsp), %rdi
testq %rdi, %rdi
je 0x24663
callq 0x13308
movq %r15, 0x20(%rsp)
movq 0x30(%rsp), %rdi
testq %rdi, %rdi
je 0x24677
callq 0x13308
movq 0x18(%r14), %rax
movq %rax, 0x98(%rsp)
movq 0x20(%r14), %rax
movq %rax, 0xa0(%rsp)
testq %rax, %rax
je 0x246a9
movq 0x2e92d(%rip), %rcx     # 0x52fc8
cmpb $0x0, (%rcx)
je 0x246a5
incl 0x8(%rax)
jmp 0x246a9
lock
incl 0x8(%rax)
leaq 0x98(%rsp), %rsi
movq %rbx, %rdi
callq 0x29634
movq 0xa0(%rsp), %rdi
testq %rdi, %rdi
je 0x246cb
callq 0x13308
movq %rbx, %rax
addq $0x138, %rsp            # imm = 0x138
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %rbx
leaq 0x10(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x24703
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x7280
jmp 0x24703
movq %rax, %rbx
movq 0xd0(%rsp), %rdi
testq %rdi, %rdi
je 0x2471a
callq 0x13308
jmp 0x2471a
movq %rax, %rbx
movq %r15, 0x20(%rsp)
movq 0x30(%rsp), %rdi
jmp 0x2487d
movq %rax, %rbx
leaq 0x10(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x2474c
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x7280
jmp 0x2474c
movq %rax, %rbx
movq 0xe0(%rsp), %rdi
testq %rdi, %rdi
je 0x24763
callq 0x13308
jmp 0x24763
movq %rax, %rbx
movq %r15, 0x38(%rsp)
movq 0x48(%rsp), %rdi
jmp 0x2487d
movq %rax, %rbx
movq 0xa0(%rsp), %rdi
jmp 0x2487d
movq %rax, %rbx
leaq 0x118(%rsp), %rdi
callq 0x119a8
jmp 0x24887
movq %rax, %rbx
jmp 0x247d6
movq %rax, %rbx
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x247c4
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x7280
jmp 0x247c4
movq %rax, %rbx
jmp 0x24808
movq %rax, %rbx
movq 0x100(%rsp), %rdi
testq %rdi, %rdi
je 0x247d6
callq 0x13308
movq %rbp, 0x68(%rsp)
movq 0x78(%rsp), %rdi
jmp 0x2487d
movq %rax, %rbx
jmp 0x2481a
movq %rax, %rbx
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x24808
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x7280
movq 0x110(%rsp), %rdi
testq %rdi, %rdi
je 0x2481a
callq 0x13308
movq %rbp, 0x80(%rsp)
movq 0x90(%rsp), %rdi
jmp 0x2487d
movq %rax, %rbx
movq 0xb0(%rsp), %rdi
jmp 0x2487d
movq %rax, %rbx
jmp 0x24873
movq %rax, %rbx
jmp 0x24861
movq %rax, %rbx
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x24861
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x7280
movq 0xf0(%rsp), %rdi
testq %rdi, %rdi
je 0x24873
callq 0x13308
movq %rbp, 0x50(%rsp)
movq 0x60(%rsp), %rdi
testq %rdi, %rdi
je 0x24887
callq 0x13308
movq %rbx, %rdi
callq 0x7430
nop