// File: yeonnic[P]solparser/././argx.hpp
// Function: args::Command::GetDescription[abi:cxx11](args::HelpParams const&, unsigned int) const
virtual std::vector<std::tuple<std::string, std::string, unsigned>> GetDescription(const HelpParams &params, const unsigned int indent) const override
            {
                std::vector<std::tuple<std::string, std::string, unsigned>> descriptions;
                unsigned addindent = 0;

                UpdateSubparserHelp(params);

                if (!Matched())
                {
                    if (params.showCommandFullHelp)
                    {
                        std::ostringstream s;
                        bool empty = true;
                        for (const auto &progline: GetCommandProgramLine(params))
                        {
                            if (!empty)
                            {
                                s << ' ';
                            }
                            else
                            {
                                empty = false;
                            }

                            s << progline;
                        }

                        descriptions.emplace_back(s.str(), "", indent);
                    }
                    else
                    {
                        descriptions.emplace_back(Name(), help, indent);
                    }

                    if (!params.showCommandChildren && !params.showCommandFullHelp)
                    {
                        return descriptions;
                    }

                    addindent = 1;
                }

                if (params.showCommandFullHelp && !Matched())
                {
                    descriptions.emplace_back("", "", indent + addindent);
                    descriptions.emplace_back(Description().empty() ? Help() : Description(), "", indent + addindent);
                    descriptions.emplace_back("", "", indent + addindent);
                }

                for (Base *child: Children())
                {
                    if ((child->GetOptions() & Options::HiddenFromDescription) != Options::None)
                    {
                        continue;
                    }

                    auto groupDescriptions = child->GetDescription(params, indent + addindent);
                    descriptions.insert(
                                        std::end(descriptions),
                                        std::make_move_iterator(std::begin(groupDescriptions)),
                                        std::make_move_iterator(std::end(groupDescriptions)));
                }

                for (auto childDescription: subparserDescription)
                {
                    std::get<2>(childDescription) += indent + addindent;
                    descriptions.push_back(std::move(childDescription));
                }

                if (params.showCommandFullHelp && !Matched())
                {
                    descriptions.emplace_back("", "", indent + addindent);
                    if (!Epilog().empty())
                    {
                        descriptions.emplace_back(Epilog(), "", indent + addindent);
                        descriptions.emplace_back("", "", indent + addindent);
                    }
                }

                return descriptions;
            }

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x380, %rsp            # imm = 0x380
movq %rdi, -0x318(%rbp)
movq %rdi, %rax
movq %rax, -0x310(%rbp)
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movl %ecx, -0x1c(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x308(%rbp)
movb $0x0, -0x1d(%rbp)
callq 0xb7b0
movq -0x308(%rbp), %rdi
movl $0x0, -0x24(%rbp)
movq -0x18(%rbp), %rsi
callq 0x15950
jmp 0xa708
movq -0x308(%rbp), %rdi
movq (%rdi), %rax
callq *0x10(%rax)
testb $0x1, %al
jne 0xa941
movq -0x18(%rbp), %rax
testb $0x1, 0xc9(%rax)
je 0xa8cf
leaq -0x1b0(%rbp), %rdi
callq 0x64b0
jmp 0xa73c
movq -0x308(%rbp), %rsi
movb $0x1, -0x1b1(%rbp)
movq -0x18(%rbp), %rdx
leaq -0x1d8(%rbp), %rdi
callq 0x15a70
jmp 0xa75c
leaq -0x1d8(%rbp), %rax
movq %rax, -0x1c0(%rbp)
movq -0x1c0(%rbp), %rdi
callq 0x13da0
movq %rax, -0x1e0(%rbp)
movq -0x1c0(%rbp), %rdi
callq 0x14490
movq %rax, -0x1e8(%rbp)
leaq -0x1e0(%rbp), %rdi
leaq -0x1e8(%rbp), %rsi
callq 0x16010
testb $0x1, %al
jne 0xa7da
leaq -0x1d8(%rbp), %rdi
callq 0x13c70
jmp 0xa857
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x30(%rbp)
movl %eax, -0x34(%rbp)
jmp 0xae29
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x30(%rbp)
movl %eax, -0x34(%rbp)
jmp 0xa8be
leaq -0x1e0(%rbp), %rdi
callq 0x152b0
movq %rax, -0x1f0(%rbp)
testb $0x1, -0x1b1(%rbp)
jne 0xa828
leaq -0x1b0(%rbp), %rdi
movl $0x20, %esi
callq 0x63c0
jmp 0xa809
jmp 0xa82f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x30(%rbp)
movl %eax, -0x34(%rbp)
leaq -0x1d8(%rbp), %rdi
callq 0x13c70
jmp 0xa8be
movb $0x0, -0x1b1(%rbp)
movq -0x1f0(%rbp), %rsi
leaq -0x1b0(%rbp), %rdi
callq 0x62d0
jmp 0xa844
jmp 0xa846
leaq -0x1e0(%rbp), %rdi
callq 0x15120
jmp 0xa790
leaq -0x210(%rbp), %rdi
leaq -0x1b0(%rbp), %rsi
callq 0x6340
jmp 0xa86c
movq -0x318(%rbp), %rdi
leaq 0x2c800(%rip), %rdx     # 0x3707a
leaq -0x210(%rbp), %rsi
leaq -0x1c(%rbp), %rcx
callq 0x16050
jmp 0xa88c
leaq -0x210(%rbp), %rdi
callq 0x61f0
leaq -0x1b0(%rbp), %rdi
callq 0x60b0
jmp 0xa90d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x30(%rbp)
movl %eax, -0x34(%rbp)
leaq -0x210(%rbp), %rdi
callq 0x61f0
leaq -0x1b0(%rbp), %rdi
callq 0x60b0
jmp 0xae29
movq -0x308(%rbp), %rdi
callq 0x16170
movq %rax, -0x320(%rbp)
jmp 0xa8e4
movq -0x320(%rbp), %rsi
movq -0x318(%rbp), %rdi
movq -0x308(%rbp), %rdx
addq $0x88, %rdx
leaq -0x1c(%rbp), %rcx
callq 0x160e0
jmp 0xa90b
jmp 0xa90d
movq -0x18(%rbp), %rax
testb $0x1, 0xc8(%rax)
jne 0xa93a
movq -0x18(%rbp), %rax
testb $0x1, 0xc9(%rax)
jne 0xa93a
movb $0x1, -0x1d(%rbp)
movl $0x1, -0x214(%rbp)
jmp 0xae07
movl $0x1, -0x24(%rbp)
movq -0x18(%rbp), %rax
testb $0x1, 0xc9(%rax)
je 0xaa65
movq -0x308(%rbp), %rdi
movq (%rdi), %rax
callq *0x10(%rax)
testb $0x1, %al
jne 0xaa65
movq -0x318(%rbp), %rdi
movl -0x1c(%rbp), %eax
movl -0x24(%rbp), %ecx
addl %ecx, %eax
movl %eax, -0x218(%rbp)
leaq 0x2c6f7(%rip), %rdx     # 0x3707a
leaq -0x218(%rbp), %rcx
movq %rdx, %rsi
callq 0x16190
jmp 0xa994
movq -0x308(%rbp), %rdi
callq 0x162b0
movq %rax, -0x328(%rbp)
jmp 0xa9a9
movq -0x328(%rbp), %rdi
callq 0x65c0
testb $0x1, %al
jne 0xa9bb
jmp 0xa9e0
movq -0x308(%rbp), %rdi
callq 0x162d0
movq %rax, -0x330(%rbp)
jmp 0xa9d0
movq -0x330(%rbp), %rax
movq %rax, -0x338(%rbp)
jmp 0xaa05
movq -0x308(%rbp), %rdi
callq 0x162b0
movq %rax, -0x340(%rbp)
jmp 0xa9f5
movq -0x340(%rbp), %rax
movq %rax, -0x338(%rbp)
jmp 0xaa05
movq -0x318(%rbp), %rdi
movq -0x338(%rbp), %rsi
movl -0x1c(%rbp), %eax
movl -0x24(%rbp), %ecx
addl %ecx, %eax
movl %eax, -0x21c(%rbp)
leaq 0x2c652(%rip), %rdx     # 0x3707a
leaq -0x21c(%rbp), %rcx
callq 0x16220
jmp 0xaa36
movq -0x318(%rbp), %rdi
movl -0x1c(%rbp), %eax
movl -0x24(%rbp), %ecx
addl %ecx, %eax
movl %eax, -0x220(%rbp)
leaq 0x2c628(%rip), %rdx     # 0x3707a
leaq -0x220(%rbp), %rcx
movq %rdx, %rsi
callq 0x16190
jmp 0xaa63
jmp 0xaa65
movq -0x308(%rbp), %rdi
callq 0xdc60
movq %rax, -0x228(%rbp)
movq -0x228(%rbp), %rdi
callq 0xdc80
movq %rax, -0x230(%rbp)
movq -0x228(%rbp), %rdi
callq 0xdcb0
movq %rax, -0x238(%rbp)
leaq -0x230(%rbp), %rdi
leaq -0x238(%rbp), %rsi
callq 0xdce0
testb $0x1, %al
jne 0xaaba
jmp 0xac1b
leaq -0x230(%rbp), %rdi
callq 0xdd20
movq (%rax), %rax
movq %rax, -0x240(%rbp)
movq -0x240(%rbp), %rdi
callq 0xde40
movl %eax, %edi
movl $0x8, %esi
callq 0xde20
cmpl $0x0, %eax
je 0xaaf2
jmp 0xabed
movq -0x240(%rbp), %rsi
movq -0x18(%rbp), %rdx
movl -0x1c(%rbp), %ecx
movl -0x24(%rbp), %eax
addl %eax, %ecx
movq (%rsi), %rax
movq 0x20(%rax), %rax
leaq -0x258(%rbp), %rdi
callq *%rax
jmp 0xab17
movq -0x318(%rbp), %rdi
callq 0xdf10
movq %rax, -0x268(%rbp)
leaq -0x260(%rbp), %rdi
leaq -0x268(%rbp), %rsi
callq 0xdf40
leaq -0x258(%rbp), %rdi
callq 0xdfb0
movq %rax, -0x278(%rbp)
movq -0x278(%rbp), %rdi
callq 0xdf80
movq %rax, -0x348(%rbp)
jmp 0xab65
movq -0x348(%rbp), %rax
movq %rax, -0x270(%rbp)
leaq -0x258(%rbp), %rdi
callq 0xdf10
movq %rax, -0x288(%rbp)
movq -0x288(%rbp), %rdi
callq 0xdf80
movq %rax, -0x350(%rbp)
jmp 0xab9b
movq -0x318(%rbp), %rdi
movq -0x350(%rbp), %rax
movq %rax, -0x280(%rbp)
movq -0x260(%rbp), %rsi
movq -0x270(%rbp), %rdx
movq -0x280(%rbp), %rcx
callq 0xde60
movq %rax, -0x358(%rbp)
jmp 0xabd3
movq -0x358(%rbp), %rax
movq %rax, -0x290(%rbp)
leaq -0x258(%rbp), %rdi
callq 0xdfe0
leaq -0x230(%rbp), %rdi
callq 0xdd40
jmp 0xaa9e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x30(%rbp)
movl %eax, -0x34(%rbp)
leaq -0x258(%rbp), %rdi
callq 0xdfe0
jmp 0xae29
movq -0x308(%rbp), %rax
addq $0x138, %rax            # imm = 0x138
movq %rax, -0x298(%rbp)
movq -0x298(%rbp), %rdi
callq 0xe660
movq %rax, -0x2a0(%rbp)
movq -0x298(%rbp), %rdi
callq 0xe2e0
movq %rax, -0x2a8(%rbp)
leaq -0x2a0(%rbp), %rdi
leaq -0x2a8(%rbp), %rsi
callq 0x162f0
testb $0x1, %al
jne 0xac71
jmp 0xad0a
leaq -0x2a0(%rbp), %rdi
callq 0xfe90
movq %rax, %rsi
leaq -0x2f0(%rbp), %rdi
callq 0xd510
jmp 0xac8e
movl -0x1c(%rbp), %eax
movl -0x24(%rbp), %ecx
addl %ecx, %eax
movl %eax, -0x364(%rbp)
leaq -0x2f0(%rbp), %rdi
movq %rdi, -0x360(%rbp)
callq 0xca90
movl -0x364(%rbp), %edx
movq -0x318(%rbp), %rdi
movq -0x360(%rbp), %rsi
movl (%rax), %ecx
addl %edx, %ecx
movl %ecx, (%rax)
callq 0x16330
jmp 0xacd0
leaq -0x2f0(%rbp), %rdi
callq 0xcba0
leaq -0x2a0(%rbp), %rdi
callq 0xfd00
jmp 0xac55
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x30(%rbp)
movl %eax, -0x34(%rbp)
leaq -0x2f0(%rbp), %rdi
callq 0xcba0
jmp 0xae29
movq -0x18(%rbp), %rax
testb $0x1, 0xc9(%rax)
je 0xadf9
movq -0x308(%rbp), %rdi
movq (%rdi), %rax
callq *0x10(%rax)
testb $0x1, %al
jne 0xadf9
movq -0x318(%rbp), %rdi
movl -0x1c(%rbp), %eax
movl -0x24(%rbp), %ecx
addl %ecx, %eax
movl %eax, -0x2f4(%rbp)
leaq 0x2c32e(%rip), %rdx     # 0x3707a
leaq -0x2f4(%rbp), %rcx
movq %rdx, %rsi
callq 0x16190
jmp 0xad5d
movq -0x308(%rbp), %rdi
callq 0x16360
movq %rax, -0x370(%rbp)
jmp 0xad72
movq -0x370(%rbp), %rdi
callq 0x65c0
testb $0x1, %al
jne 0xadf7
movq -0x308(%rbp), %rdi
callq 0x16360
movq %rax, -0x378(%rbp)
jmp 0xad97
movq -0x378(%rbp), %rsi
movq -0x318(%rbp), %rdi
movl -0x1c(%rbp), %eax
movl -0x24(%rbp), %ecx
addl %ecx, %eax
movl %eax, -0x2f8(%rbp)
leaq 0x2c2c0(%rip), %rdx     # 0x3707a
leaq -0x2f8(%rbp), %rcx
callq 0x16220
jmp 0xadc8
movq -0x318(%rbp), %rdi
movl -0x1c(%rbp), %eax
movl -0x24(%rbp), %ecx
addl %ecx, %eax
movl %eax, -0x2fc(%rbp)
leaq 0x2c296(%rip), %rdx     # 0x3707a
leaq -0x2fc(%rbp), %rcx
movq %rdx, %rsi
callq 0x16190
jmp 0xadf5
jmp 0xadf7
jmp 0xadf9
movb $0x1, -0x1d(%rbp)
movl $0x1, -0x214(%rbp)
testb $0x1, -0x1d(%rbp)
jne 0xae19
movq -0x318(%rbp), %rdi
callq 0xdfe0
movq -0x310(%rbp), %rax
addq $0x380, %rsp            # imm = 0x380
popq %rbp
retq
movq -0x318(%rbp), %rdi
callq 0xdfe0
movq -0x30(%rbp), %rdi
callq 0x6620
nop