// File: /workspace/github_c_makefile_star2_O2/mishun[P]plantri/plantri.c
// Function: got_one
static void
got_one(int nbtot, int nbop, int connec)

/* This is called when a complete output graph is formed.  The main 
   purpose is to write the graph and to collect some stats. */
{
    int doflip,wt;
#ifdef STATS
    int numroot;
#ifdef STATS2
    int num2,i;
#endif
#endif

    if (xswitch && connec != xconnec) return;

    doflip = oswitch && (nbop == nbtot || nbop == 0);
    wt = doflip ? 2 : 1;

    if (Vswitch)
    {
	if (nbtot == 1 || (oswitch && nbop == 1))
	{
	    ADDBIG(nout_V,wt);
	    return;
	}
    }

#ifdef FILTER
    if (!FILTER(nbtot,nbop,doflip)) return;
#endif

    ADDBIG(nout[connec],1);
    if (oswitch) ADDBIG(nout_op[connec],wt);

    if (pswitch)
    {
	if (oswitch) ADDBIG(nout_e_op[ne/2],wt);
	ADDBIG(nout_e[ne/2],1);
    }

    if (polygonsize == 0)
    {
	if (oswitch) ADDBIG(nout_p_op[outside_face_size],wt);
	ADDBIG(nout_p[outside_face_size],1);
    }

#ifdef STATS
    if (polygonsize < 0)
    {
	numroot = wt * numedgeorbits(nbtot,nbop);
	ADDBIG(numrooted,numroot);
	if (pswitch) ADDBIG(numrooted_e[ne/2],numroot);
        if (degree[nv-1] < 6) ADDBIG(nummindeg[degree[nv-1]],wt);
    }
    else
    {
        numroot = wt * numorbitsonface(nbtot,nbop,code_edge);
        ADDBIG(numrooted,numroot);
        ADDBIG(numbigface[degree[missing_vertex]],numroot);
    }
    if (needgroup && nbtot == 1) ADDBIG(ntriv,wt);
#ifdef STATS2
    num2 = 0;
    for (i = 0; i < nv; ++i) if (degree[i] == 2) ++num2;
    ADDBIG(numtwos[num2],wt);
#endif
#endif

    if (!uswitch)
    {
	gotone_nbop = nbop;
	gotone_nbtot = nbtot;
        if (dswitch) (*write_dual_graph)(outfile,doflip);
        else         (*write_graph)(outfile,doflip);
    }
}

// Assembly:
cmpb $0x1, 0x1db17(%rip)     # 0x240a8
jne 0x659f
cmpl %edx, 0x1dccb(%rip)     # 0x24264
jne 0x67e1
movb 0x1dc2a(%rip), %r9b     # 0x241d0
cmpb $0x1, %r9b
jne 0x65c1
cmpl %edi, %esi
sete %al
testl %esi, %esi
sete %cl
orb %al, %cl
movzbl %cl, %ecx
leaq 0x1(%rcx), %r8
jmp 0x65c7
pushq $0x1
popq %r8
xorl %ecx, %ecx
cmpb $0x1, 0x1dc52(%rip)     # 0x24220
jne 0x661d
cmpl $0x1, %edi
setne %al
cmpl $0x1, %esi
setne %r10b
movl %r9d, %r11d
xorb $0x1, %r11b
orb %r10b, %r11b
testb %r11b, %al
jne 0x661d
addq 0x1db95(%rip), %r8      # 0x24188
movq %r8, 0x1db8e(%rip)      # 0x24188
cmpq $0x3b9aca00, %r8        # imm = 0x3B9ACA00
jl 0x67e1
incq 0x1db72(%rip)           # 0x24180
addq $-0x3b9aca00, %r8       # imm = 0xC4653600
movq %r8, 0x1db6c(%rip)      # 0x24188
retq
movslq %edx, %rax
shlq $0x4, %rax
leaq 0x1da95(%rip), %rdx     # 0x240c0
movq 0x8(%rax,%rdx), %r10
leaq 0x1(%r10), %r11
movq %r11, 0x8(%rax,%rdx)
cmpq $0x3b9ac9ff, %r10       # imm = 0x3B9AC9FF
jl 0x6653
addq %rax, %rdx
incq (%rdx)
addq $-0x3b9ac9ff, %r10      # imm = 0xC4653601
movq %r10, 0x8(%rdx)
pushq $0x2
popq %r10
testb %r9b, %r9b
je 0x66db
leaq 0x1dabd(%rip), %rdx     # 0x24120
movq 0x8(%rax,%rdx), %r11
addq %r8, %r11
movq %r11, 0x8(%rax,%rdx)
cmpq $0x3b9aca00, %r11       # imm = 0x3B9ACA00
jl 0x668a
addq %rax, %rdx
incq (%rdx)
addq $-0x3b9aca00, %r11      # imm = 0xC4653600
movq %r11, 0x8(%rdx)
cmpb $0x0, 0x1db07(%rip)     # 0x24198
je 0x6745
movl 0x23bf67(%rip), %eax    # 0x242604
cltd
idivl %r10d
cltq
shlq $0x4, %rax
leaq 0x1e772(%rip), %r11     # 0x24e20
movq 0x8(%rax,%r11), %rdx
addq %r8, %rdx
movq %rdx, 0x8(%rax,%r11)
cmpq $0x3b9aca00, %rdx       # imm = 0x3B9ACA00
jl 0x66e8
addq %r11, %rax
addq $0x8, %rax
incq -0x8(%rax)
addq $-0x3b9aca00, %rdx      # imm = 0xC4653600
movq %rdx, (%rax)
jmp 0x66e8
cmpb $0x0, 0x1dab6(%rip)     # 0x24198
je 0x6790
movl 0x23bf16(%rip), %eax    # 0x242604
cltd
idivl %r10d
cltq
shlq $0x4, %rax
leaq 0x1db71(%rip), %r10     # 0x24270
movq 0x8(%rax,%r10), %rdx
leaq 0x1(%rdx), %r11
movq %r11, 0x8(%rax,%r10)
cmpq $0x3b9ac9ff, %rdx       # imm = 0x3B9AC9FF
jl 0x672b
addq %r10, %rax
addq $0x8, %rax
incq -0x8(%rax)
addq $-0x3b9ac9ff, %rdx      # imm = 0xC4653601
movq %rdx, (%rax)
cmpl $0x0, 0x1da6e(%rip)     # 0x241a0
jne 0x67d8
movl 0x28b702(%rip), %eax    # 0x291e40
testb %r9b, %r9b
jne 0x6758
jmp 0x679f
cmpl $0x0, 0x1da54(%rip)     # 0x241a0
jne 0x67d8
movl 0x28b6e8(%rip), %eax    # 0x291e40
movslq %eax, %rdx
shlq $0x4, %rdx
leaq 0x28b2ca(%rip), %r9     # 0x291a30
addq 0x8(%rdx,%r9), %r8
movq %r8, 0x8(%rdx,%r9)
cmpq $0x3b9aca00, %r8        # imm = 0x3B9ACA00
jl 0x679f
addq %r9, %rdx
addq $0x8, %rdx
incq -0x8(%rdx)
addq $-0x3b9aca00, %r8       # imm = 0xC4653600
movq %r8, (%rdx)
jmp 0x679f
cmpl $0x0, 0x1da09(%rip)     # 0x241a0
jne 0x67d8
movl 0x28b6a1(%rip), %eax    # 0x291e40
cltq
shlq $0x4, %rax
leaq 0x28b6a4(%rip), %r8     # 0x291e50
movq 0x8(%rax,%r8), %rdx
leaq 0x1(%rdx), %r9
movq %r9, 0x8(%rax,%r8)
cmpq $0x3b9ac9ff, %rdx       # imm = 0x3B9AC9FF
jl 0x67d8
addq %r8, %rax
addq $0x8, %rax
incq -0x8(%rax)
addq $-0x3b9ac9ff, %rdx      # imm = 0xC4653601
movq %rdx, (%rax)
cmpb $0x0, 0x1da35(%rip)     # 0x24214
je 0x67e2
retq
movl %esi, 0x23be10(%rip)    # 0x2425f8
movl %edi, 0x23be0e(%rip)    # 0x2425fc
movq 0x23bdeb(%rip), %rdi    # 0x2425e0
cmpb $0x1, 0x1da40(%rip)     # 0x2423c
jne 0x6807
movq 0x23bde3(%rip), %rax    # 0x2425e8
jmp 0x680e
movq 0x23bde2(%rip), %rax    # 0x2425f0
movl %ecx, %esi
jmpq *%rax