// File: /workspace/github_c_makefile_star2_O3/mishun[P]plantri/plantri.c
// Function: min5_dispatch
static void
min5_dispatch(void)

/* Case of minimum degree == 5, except for polygons and polytopes. */
{
    int i,startingsize,nbtot,nbop,hint,nbangles;
    EDGE *prevA[MAXN],*bangle[MAXE/2];

    if (minimumdeg <= 0) minimumdeg = 5;
    if (minconnec <= 0) minconnec = 3;
    startingsize = 12;

    CHECKRANGE(maxnv,"n",startingsize,MAXN);
    CHECKRANGE(minconnec,"-c",3,5);
    CHECKRANGE(minimumdeg,"-m",5,5);

    INCOMPAT(tswitch,"-m5 or -c5","-t");
    INCOMPAT(qswitch,"-m5 or -c5","-q");
    INCOMPAT(edgebound[0]>=0,"-m5 without -p","-e");
    INCOMPAT(maxfacesize>=0,"-m5 without -p","-f");
    
    if (dswitch) strcpy(outtypename,"cubic graphs");
    else         strcpy(outtypename,"triangulations");

    open_output_file();

    needgroup = Gswitch;

    hint = MIN(maxnv-5,27);
    if (maxnv >= 35) ++hint;
    if (maxnv >= 38) ++hint;
    initialize_splitting(startingsize,hint,maxnv-5);
    if (splitlevel == 0 && res > 0) return;

    xconnec = minconnec;

    initialize_min5();
    canon(degree,numbering,&nbtot,&nbop);
    
    if (minconnec < 5)
    {
        all_5_bangles(bangle,&nbangles);
#ifdef FAST_FILTER_MIN5
        if (FAST_FILTER_MIN5)
#endif
        scanmin5(nbtot,nbop,splitlevel==12,prevA,0,bangle,nbangles);
        if (vswitch && !xswitch)
        {
            fprintf(msgfile,"By connectivity: ");
            for (i = minconnec; i <= 5; ++i)
            {
                if (i > minconnec) fprintf(msgfile," ");
                PRINTBIG(msgfile,nout[i]);
	        fprintf(msgfile," %d-conn",i);
                if (i < 5) fprintf(msgfile,";");
            }
            fprintf(msgfile,"\n");
    
	    if (oswitch)
	    {
                fprintf(msgfile,"By connectivity (O-P): ");
                for (i = minconnec; i <= 5; ++i)
                {
                    if (i > minconnec) fprintf(msgfile," ");
                    PRINTBIG(msgfile,nout_op[i]);
	            fprintf(msgfile," %d-conn",i);
                    if (i < 5) fprintf(msgfile,";");
                }
                fprintf(msgfile,"\n");
	    }
        }
    }
    else
#ifdef FAST_FILTER_MIN5
        if (FAST_FILTER_MIN5)
#endif
        scanmin5c(nbtot,nbop,splitlevel==12,prevA,0);
}

// Assembly:
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x7f0, %rsp            # imm = 0x7F0
movl 0x20f94(%rip), %eax     # 0x261b8
testl %eax, %eax
jg 0x5237
movl $0x5, 0x20f86(%rip)     # 0x261b8
movl $0x5, %eax
movl 0x20e73(%rip), %ecx     # 0x260b0
testl %ecx, %ecx
jg 0x5250
movl $0x3, 0x20e65(%rip)     # 0x260b0
movl $0x3, %ecx
movl 0x2101a(%rip), %edx     # 0x26270
addl $-0x41, %edx
cmpl $-0x36, %edx
jbe 0x5627
addl $-0x6, %ecx
cmpl $-0x4, %ecx
jbe 0x562c
cmpl $0x5, %eax
jne 0x5631
cmpb $0x1, 0x20e36(%rip)     # 0x260b4
je 0x5636
cmpb $0x1, 0x20f29(%rip)     # 0x261b4
je 0x563b
cmpl $0x0, 0x20fc4(%rip)     # 0x2625c
jns 0x5640
cmpl $0x0, 0x20fbf(%rip)     # 0x26264
jns 0x5645
cmpb $0x1, 0x20f9a(%rip)     # 0x2624c
jne 0x52d1
movabsq $0x73687061726720, %rax # imm = 0x73687061726720
movq %rax, 0x20f30(%rip)     # 0x261f5
movabsq $0x7267206369627563, %rax # imm = 0x7267206369627563
jmp 0x52ec
movabsq $0x736e6f6974616c, %rax # imm = 0x736E6F6974616C
movq %rax, 0x20f15(%rip)     # 0x261f7
movabsq $0x6c75676e61697274, %rax # imm = 0x6C75676E61697274
movq %rax, 0x20efd(%rip)     # 0x261f0
callq 0x5d37
movzbl 0x20f45(%rip), %ecx     # 0x26244
movl 0x20f6b(%rip), %eax     # 0x26270
cmpl $0x20, %eax
movl $0x20, %edx
cmovll %eax, %edx
movl %ecx, 0x226ca(%rip)     # 0x279e0
xorl %ecx, %ecx
cmpl $0x23, %eax
setge %cl
addl %edx, %ecx
xorl %edx, %edx
cmpl $0x26, %eax
setge %dl
addl %ecx, %edx
leal -0x5(%rax), %ecx
movzbl 0x20f24(%rip), %esi     # 0x26258
addl %esi, %edx
addl $-0x5, %edx
cmpl %ecx, %edx
cmovll %edx, %ecx
xorl %edx, %edx
cmpl $0x11, %eax
movl $0xc, %eax
cmovll %edx, %eax
leal -0x1(%rcx), %esi
cmpl $0xb, %esi
cmovael %ecx, %eax
cmpl $0x1, 0x20f11(%rip)     # 0x2626c
cmovel %edx, %eax
movl %eax, 0x22680(%rip)     # 0x279e4
movl 0x20efe(%rip), %ecx     # 0x26268
movl %ecx, 0x2858b0(%rip)    # 0x28ac20
testl %eax, %eax
sete %al
testl %ecx, %ecx
setg %cl
testb %cl, %al
jne 0x5616
movl 0x20d28(%rip), %eax     # 0x260b0
movl %eax, 0x20ee6(%rip)     # 0x26274
callq 0xeba1
leaq 0x22856(%rip), %rdi     # 0x27bf0
leaq 0x18(%rsp), %rsi
leaq 0x14(%rsp), %rdx
callq 0x62d6
cmpl $0x4, 0x20d00(%rip)     # 0x260b0
jg 0x55f5
leaq 0x220(%rsp), %rbx
leaq 0x1c(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xfdc6
movl 0x18(%rsp), %edi
movl 0x14(%rsp), %esi
xorl %edx, %edx
cmpl $0xc, 0x22605(%rip)     # 0x279e4
sete %dl
movl (%r14), %eax
movl %eax, (%rsp)
leaq 0x20(%rsp), %rcx
xorl %r8d, %r8d
movq %rbx, %r9
callq 0xfe41
cmpb $0x1, 0x20de5(%rip)     # 0x261e4
jne 0x5616
testb $0x1, 0x20cac(%rip)     # 0x260b8
jne 0x5616
movq 0x20dcf(%rip), %rcx     # 0x261e8
leaq 0x1afe2(%rip), %rdi     # 0x20402
movl $0x11, %esi
movl $0x1, %edx
callq 0x10e0
movslq 0x20c7a(%rip), %rbx     # 0x260b0
cmpq $0x5, %rbx
jg 0x54eb
movq %rbx, %rax
shlq $0x4, %rax
leaq 0x20c82(%rip), %rcx     # 0x260d0
leaq (%rax,%rcx), %r13
addq $0x8, %r13
leaq 0x1ad8b(%rip), %r14     # 0x201e8
leaq 0x1afbc(%rip), %r15     # 0x20420
leaq 0x1ad81(%rip), %r12     # 0x201ec
movslq 0x20c3e(%rip), %rax     # 0x260b0
cmpq %rax, %rbx
jle 0x5488
movq 0x20d6a(%rip), %rsi     # 0x261e8
movl $0x20, %edi
callq 0x1040
movq -0x8(%r13), %rdx
movq (%r13), %rcx
movq 0x20d51(%rip), %rdi     # 0x261e8
testq %rdx, %rdx
je 0x54a8
movq %r12, %rsi
xorl %eax, %eax
callq 0x1060
jmp 0x54b5
movq %r14, %rsi
movq %rcx, %rdx
xorl %eax, %eax
callq 0x1060
movq 0x20d2c(%rip), %rdi     # 0x261e8
movq %r15, %rsi
movl %ebx, %edx
xorl %eax, %eax
callq 0x1060
cmpq $0x5, %rbx
je 0x54eb
movq 0x20d13(%rip), %rsi     # 0x261e8
movl $0x3b, %edi
callq 0x1040
incq %rbx
addq $0x10, %r13
cmpl $0x6, %ebx
jne 0x546b
movq 0x20cf6(%rip), %rsi     # 0x261e8
movl $0xa, %edi
callq 0x1040
cmpb $0x1, 0x20cdd(%rip)     # 0x261e0
jne 0x5616
movq 0x20cd8(%rip), %rcx     # 0x261e8
leaq 0x1af12(%rip), %rdi     # 0x20429
movl $0x17, %esi
movl $0x1, %edx
callq 0x10e0
movslq 0x20b83(%rip), %rbx     # 0x260b0
cmpq $0x5, %rbx
jg 0x55e2
movq %rbx, %rax
shlq $0x4, %rax
leaq 0x20beb(%rip), %rcx     # 0x26130
leaq (%rax,%rcx), %r13
addq $0x8, %r13
leaq 0x1ac94(%rip), %r14     # 0x201e8
leaq 0x1aec5(%rip), %r15     # 0x20420
leaq 0x1ac8a(%rip), %r12     # 0x201ec
movslq 0x20b47(%rip), %rax     # 0x260b0
cmpq %rax, %rbx
jle 0x557f
movq 0x20c73(%rip), %rsi     # 0x261e8
movl $0x20, %edi
callq 0x1040
movq -0x8(%r13), %rdx
movq (%r13), %rcx
movq 0x20c5a(%rip), %rdi     # 0x261e8
testq %rdx, %rdx
je 0x559f
movq %r12, %rsi
xorl %eax, %eax
callq 0x1060
jmp 0x55ac
movq %r14, %rsi
movq %rcx, %rdx
xorl %eax, %eax
callq 0x1060
movq 0x20c35(%rip), %rdi     # 0x261e8
movq %r15, %rsi
movl %ebx, %edx
xorl %eax, %eax
callq 0x1060
cmpq $0x5, %rbx
je 0x55e2
movq 0x20c1c(%rip), %rsi     # 0x261e8
movl $0x3b, %edi
callq 0x1040
incq %rbx
addq $0x10, %r13
cmpl $0x6, %ebx
jne 0x5562
movq 0x20bff(%rip), %rsi     # 0x261e8
movl $0xa, %edi
callq 0x1040
jmp 0x5616
movl 0x18(%rsp), %edi
movl 0x14(%rsp), %esi
xorl %edx, %edx
cmpl $0xc, 0x223de(%rip)     # 0x279e4
sete %dl
leaq 0x20(%rsp), %rcx
xorl %r8d, %r8d
callq 0x1eafd
addq $0x7f0, %rsp            # imm = 0x7F0
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
retq
callq 0x1fdf
callq 0x1f99
callq 0x1e7e
callq 0x1f63
callq 0x1f2d
callq 0x1ef7
callq 0x1ec1