// File: myint[P]optparse/./optparse.h
// Function: optparse::Option::format_help[abi:cxx11](unsigned int) const
std::string format_help(const unsigned int indent=2) const
        {
            std::stringstream ss;
            std::string h = format_option_help(indent);
            unsigned int width = detail::cols();
            unsigned int opt_width = std::min(width * 3 / 10, 36u);
            bool indent_first = false;
            ss << h;

            // If the option list is too long, start a new paragraph.
            if (h.length() >= (opt_width - 1))
            {
                ss << std::endl;
                indent_first = true;
            }
            else
            {
                ss << std::string(opt_width - h.length(), ' ');
                if (help().empty())
                    ss << std::endl;
            }

            if (not help().empty())
            {
                std::string help_str = (not get_default().empty()) ? detail::str_replace(help(), "%default", get_default()) : help();
                ss << detail::str_format(help_str, opt_width, width, indent_first);
            }

            return ss.str();
        }

// Assembly:
subq $0x328, %rsp            # imm = 0x328
movq %rdi, 0xa0(%rsp)
movq %rdi, %rax
movq %rax, 0xa8(%rsp)
movq %rdi, 0x320(%rsp)
movq %rsi, 0x318(%rsp)
movl %edx, 0x314(%rsp)
movq 0x318(%rsp), %rax
movq %rax, 0xb0(%rsp)
leaq 0x188(%rsp), %rdi
callq 0x4260
movq 0xb0(%rsp), %rsi
movl 0x314(%rsp), %edx
leaq 0x168(%rsp), %rdi
callq 0x1ddd0
jmp 0x1d86c
callq 0xbf40
movl %eax, 0x9c(%rsp)
jmp 0x1d87a
movl 0x9c(%rsp), %eax
movl %eax, 0x158(%rsp)
movl 0x158(%rsp), %ecx
movl %ecx, %eax
leal (%rax,%rax,2), %eax
movl $0xcccccccd, %ecx       # imm = 0xCCCCCCCD
imulq %rcx, %rax
shrq $0x23, %rax
movl %eax, 0x150(%rsp)
movl $0x24, 0x14c(%rsp)
leaq 0x150(%rsp), %rdi
leaq 0x14c(%rsp), %rsi
callq 0x1e780
movq %rax, 0x90(%rsp)
jmp 0x1d8d2
movq 0x90(%rsp), %rax
movl (%rax), %eax
movl %eax, 0x154(%rsp)
movb $0x0, 0x14b(%rsp)
leaq 0x198(%rsp), %rdi
leaq 0x168(%rsp), %rsi
callq 0x42f0
jmp 0x1d902
leaq 0x168(%rsp), %rdi
callq 0x44a0
movq %rax, 0x88(%rsp)
jmp 0x1d919
movq 0x88(%rsp), %rax
movl 0x154(%rsp), %ecx
subl $0x1, %ecx
movl %ecx, %ecx
cmpq %rcx, %rax
jb 0x1d987
leaq 0x198(%rsp), %rdi
movq 0xf64f(%rip), %rsi      # 0x2cf90
callq 0x4380
jmp 0x1d948
movb $0x1, 0x14b(%rsp)
jmp 0x1dac1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x160(%rsp)
movl %eax, 0x15c(%rsp)
jmp 0x1dd9e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x160(%rsp)
movl %eax, 0x15c(%rsp)
jmp 0x1dd8d
leaq 0x198(%rsp), %rax
movq %rax, 0x70(%rsp)
movl 0x154(%rsp), %eax
movq %rax, 0x78(%rsp)
leaq 0x168(%rsp), %rdi
callq 0x44a0
movq %rax, 0x80(%rsp)
jmp 0x1d9b7
movq 0x80(%rsp), %rcx
movq 0x78(%rsp), %rax
subq %rcx, %rax
movq %rax, 0x60(%rsp)
leaq 0x127(%rsp), %rdi
movq %rdi, 0x68(%rsp)
callq 0x4580
movq 0x60(%rsp), %rsi
movq 0x68(%rsp), %rcx
leaq 0x128(%rsp), %rdi
movl $0x20, %edx
callq 0x4230
jmp 0x1d9fc
movq 0x70(%rsp), %rdi
leaq 0x128(%rsp), %rsi
callq 0x42f0
jmp 0x1da10
leaq 0x128(%rsp), %rdi
callq 0x4618
jmp 0x1da1f
leaq 0x127(%rsp), %rdi
callq 0x4390
movq 0xb0(%rsp), %rdi
callq 0x1e7c0
movq %rax, 0x58(%rsp)
jmp 0x1da40
movq 0x58(%rsp), %rdi
callq 0x4510
movb %al, 0x57(%rsp)
jmp 0x1da50
movb 0x57(%rsp), %al
testb $0x1, %al
jne 0x1da5a
jmp 0x1dabf
leaq 0x198(%rsp), %rdi
movq 0xf527(%rip), %rsi      # 0x2cf90
callq 0x4380
jmp 0x1da70
jmp 0x1dabf
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x160(%rsp)
movl %eax, 0x15c(%rsp)
jmp 0x1daad
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x160(%rsp)
movl %eax, 0x15c(%rsp)
leaq 0x128(%rsp), %rdi
callq 0x4618
jmp 0x1daab
jmp 0x1daad
leaq 0x127(%rsp), %rdi
callq 0x4390
jmp 0x1dd8d
jmp 0x1dac1
movq 0xb0(%rsp), %rdi
callq 0x1e7c0
movq %rax, 0x48(%rsp)
jmp 0x1dad5
movq 0x48(%rsp), %rdi
callq 0x4510
movb %al, 0x47(%rsp)
jmp 0x1dae5
movb 0x47(%rsp), %al
testb $0x1, %al
jne 0x1dd4a
jmp 0x1daf3
movq 0xb0(%rsp), %rdi
movb $0x0, 0xde(%rsp)
movb $0x0, 0xdd(%rsp)
callq 0x18f40
movq %rax, 0x38(%rsp)
jmp 0x1db17
movq 0x38(%rsp), %rdi
callq 0x4510
movb %al, 0x37(%rsp)
jmp 0x1db27
movb 0x37(%rsp), %al
testb $0x1, %al
jne 0x1dbbd
jmp 0x1db35
movq 0xb0(%rsp), %rdi
callq 0x1e7c0
movq %rax, 0x28(%rsp)
jmp 0x1db49
leaq 0xdf(%rsp), %rdi
movq %rdi, 0x20(%rsp)
callq 0x4580
movq 0x20(%rsp), %rdx
movb $0x1, 0xde(%rsp)
leaq 0x3c02(%rip), %rsi      # 0x21771
leaq 0xe0(%rsp), %rdi
callq 0x4450
jmp 0x1db7e
movq 0xb0(%rsp), %rdi
movb $0x1, 0xdd(%rsp)
callq 0x18f40
movq %rax, 0x18(%rsp)
jmp 0x1db9a
movq 0x18(%rsp), %rcx
movq 0x28(%rsp), %rsi
leaq 0x100(%rsp), %rdi
leaq 0xe0(%rsp), %rdx
callq 0x97e0
jmp 0x1dbbb
jmp 0x1dbe7
movq 0xb0(%rsp), %rdi
callq 0x1e7c0
movq %rax, 0x10(%rsp)
jmp 0x1dbd1
movq 0x10(%rsp), %rsi
leaq 0x100(%rsp), %rdi
callq 0x4130
jmp 0x1dbe5
jmp 0x1dbe7
testb $0x1, 0xdd(%rsp)
jne 0x1dbf3
jmp 0x1dc04
leaq 0xe0(%rsp), %rdi
callq 0x4618
jmp 0x1dc02
jmp 0x1dc04
testb $0x1, 0xde(%rsp)
jne 0x1dc10
jmp 0x1dc1d
leaq 0xdf(%rsp), %rdi
callq 0x4390
leaq 0x198(%rsp), %rax
movq %rax, 0x8(%rsp)
movl 0x154(%rsp), %eax
movl %eax, %edx
movl 0x158(%rsp), %eax
movl %eax, %ecx
movzbl 0x14b(%rsp), %r8d
andl $0x1, %r8d
leaq 0xb8(%rsp), %rdi
leaq 0x100(%rsp), %rsi
callq 0xba30
jmp 0x1dc60
movq 0x8(%rsp), %rdi
leaq 0xb8(%rsp), %rsi
callq 0x42f0
jmp 0x1dc74
leaq 0xb8(%rsp), %rdi
callq 0x4618
jmp 0x1dc83
leaq 0x100(%rsp), %rdi
callq 0x4618
jmp 0x1dc92
jmp 0x1dd4a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x160(%rsp)
movl %eax, 0x15c(%rsp)
jmp 0x1dce0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x160(%rsp)
movl %eax, 0x15c(%rsp)
testb $0x1, 0xdd(%rsp)
jne 0x1dccd
jmp 0x1dcde
leaq 0xe0(%rsp), %rdi
callq 0x4618
jmp 0x1dcdc
jmp 0x1dcde
jmp 0x1dce0
testb $0x1, 0xde(%rsp)
jne 0x1dcec
jmp 0x1dcf9
leaq 0xdf(%rsp), %rdi
callq 0x4390
jmp 0x1dd8d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x160(%rsp)
movl %eax, 0x15c(%rsp)
jmp 0x1dd39
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x160(%rsp)
movl %eax, 0x15c(%rsp)
leaq 0xb8(%rsp), %rdi
callq 0x4618
jmp 0x1dd37
jmp 0x1dd39
leaq 0x100(%rsp), %rdi
callq 0x4618
jmp 0x1dd48
jmp 0x1dd8d
movq 0xa0(%rsp), %rdi
leaq 0x188(%rsp), %rsi
callq 0x4320
jmp 0x1dd61
leaq 0x168(%rsp), %rdi
callq 0x4618
jmp 0x1dd70
leaq 0x188(%rsp), %rdi
callq 0x4290
movq 0xa8(%rsp), %rax
addq $0x328, %rsp            # imm = 0x328
retq
leaq 0x168(%rsp), %rdi
callq 0x4618
jmp 0x1dd9c
jmp 0x1dd9e
leaq 0x188(%rsp), %rdi
callq 0x4290
jmp 0x1ddad
jmp 0x1ddaf
movq 0x160(%rsp), %rdi
callq 0x4570
movq %rax, %rdi
callq 0xcc60
nopw %cs:(%rax,%rax)
nop