// File: minimind[P]simple-graph/unittest/catch.hpp
// Function: Catch::TestRegistry::registerTest(Catch::TestCase const&)
virtual void registerTest( TestCase const& testCase ) {
            std::string name = testCase.getTestCaseInfo().name;
            if( name == "" ) {
                std::ostringstream oss;
                oss << "Anonymous test case " << ++m_unnamedCount;
                return registerTest( testCase.withName( oss.str() ) );
            }

            if( m_functions.find( testCase ) == m_functions.end() ) {
                m_functions.insert( testCase );
                m_functionsInOrder.push_back( testCase );
                if( !testCase.isHidden() )
                    m_nonHiddenFunctions.push_back( testCase );
            }
            else {
                TestCase const& prev = *m_functions.find( testCase );
                {
                    Colour colourGuard( Colour::Red );
                    std::cerr   << "error: TEST_CASE( \"" << name << "\" ) already defined.\n"
                                << "\tFirst seen at " << prev.getTestCaseInfo().lineInfo << "\n"
                                << "\tRedefined at " << testCase.getTestCaseInfo().lineInfo << std::endl;
                }
                exit(1);
            }
        }

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x3b0, %rsp            # imm = 0x3B0
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x340(%rbp)
movq -0x10(%rbp), %rdi
callq 0xe410
movq %rax, %rsi
leaq -0x30(%rbp), %rdi
movq %rdi, -0x338(%rbp)
callq 0xb220
movq -0x338(%rbp), %rdi
leaq 0x62d20(%rip), %rsi     # 0x79528
callq 0x13680
movb %al, -0x32a(%rbp)
jmp 0x16815
movb -0x32a(%rbp), %al
testb $0x1, %al
jne 0x16824
jmp 0x16958
leaq -0x1b8(%rbp), %rdi
callq 0xb700
jmp 0x16832
leaq 0x6293e(%rip), %rsi     # 0x79177
leaq -0x1b8(%rbp), %rdi
callq 0xb520
movq %rax, -0x348(%rbp)
jmp 0x1684e
movq -0x348(%rbp), %rdi
movq -0x340(%rbp), %rax
movq 0x68(%rax), %rsi
incq %rsi
movq %rsi, 0x68(%rax)
callq 0xb0f0
jmp 0x1686e
movq -0x10(%rbp), %rax
movq %rax, -0x350(%rbp)
leaq -0x2f0(%rbp), %rdi
leaq -0x1b8(%rbp), %rsi
callq 0xb560
jmp 0x1688e
movq -0x350(%rbp), %rsi
leaq -0x2d0(%rbp), %rdi
leaq -0x2f0(%rbp), %rdx
callq 0xe120
jmp 0x168aa
movq -0x340(%rbp), %rdi
movq (%rdi), %rax
movq 0x20(%rax), %rax
leaq -0x2d0(%rbp), %rsi
callq *%rax
jmp 0x168c3
leaq -0x2d0(%rbp), %rdi
callq 0x13590
leaq -0x2f0(%rbp), %rdi
callq 0xb330
movl $0x1, -0x2f4(%rbp)
leaq -0x1b8(%rbp), %rdi
callq 0xb100
jmp 0x16bc8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
jmp 0x16bda
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
jmp 0x16947
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
jmp 0x1693b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
leaq -0x2d0(%rbp), %rdi
callq 0x13590
leaq -0x2f0(%rbp), %rdi
callq 0xb330
leaq -0x1b8(%rbp), %rdi
callq 0xb100
jmp 0x16bda
movq -0x340(%rbp), %rdi
addq $0x8, %rdi
movq -0x10(%rbp), %rsi
callq 0x373c0
movq %rax, -0x358(%rbp)
jmp 0x16975
movq -0x340(%rbp), %rdi
movq -0x358(%rbp), %rax
movq %rax, -0x300(%rbp)
addq $0x8, %rdi
callq 0x37420
movq %rax, -0x308(%rbp)
leaq -0x300(%rbp), %rdi
leaq -0x308(%rbp), %rsi
callq 0x37390
testb $0x1, %al
jne 0x169b3
jmp 0x16a30
movq -0x340(%rbp), %rdi
addq $0x8, %rdi
movq -0x10(%rbp), %rsi
callq 0x37860
movb %dl, -0x361(%rbp)
movq %rax, -0x360(%rbp)
jmp 0x169d6
movq -0x340(%rbp), %rdi
movb -0x361(%rbp), %al
movq -0x360(%rbp), %rcx
movq %rcx, -0x318(%rbp)
movb %al, -0x310(%rbp)
addq $0x38, %rdi
movq -0x10(%rbp), %rsi
callq 0x3f470
jmp 0x16a06
movq -0x10(%rbp), %rdi
callq 0xdfd0
testb $0x1, %al
jne 0x16a2b
movq -0x340(%rbp), %rdi
addq $0x50, %rdi
movq -0x10(%rbp), %rsi
callq 0x3f470
jmp 0x16a29
jmp 0x16a2b
jmp 0x16bbe
movq -0x340(%rbp), %rdi
addq $0x8, %rdi
movq -0x10(%rbp), %rsi
callq 0x373c0
movq %rax, -0x370(%rbp)
jmp 0x16a4d
movq -0x370(%rbp), %rax
movq %rax, -0x328(%rbp)
leaq -0x328(%rbp), %rdi
callq 0x3ff40
movq %rax, -0x320(%rbp)
leaq -0x329(%rbp), %rdi
movl $0x2, %esi
callq 0xd210
jmp 0x16a81
movq 0x96560(%rip), %rdi     # 0xacfe8
leaq 0x626fd(%rip), %rsi     # 0x7918c
callq 0xb520
movq %rax, -0x378(%rbp)
jmp 0x16a9d
movq -0x378(%rbp), %rdi
leaq -0x30(%rbp), %rsi
callq 0xb4c0
movq %rax, -0x380(%rbp)
jmp 0x16ab6
movq -0x380(%rbp), %rdi
leaq 0x626dc(%rip), %rsi     # 0x791a0
callq 0xb520
movq %rax, -0x388(%rbp)
jmp 0x16ad2
movq -0x388(%rbp), %rdi
leaq 0x61d42(%rip), %rsi     # 0x78822
callq 0xb520
movq %rax, -0x390(%rbp)
jmp 0x16aee
movq -0x320(%rbp), %rdi
callq 0xe410
movq -0x390(%rbp), %rdi
movq %rax, %rsi
addq $0xe0, %rsi
callq 0xcef0
movq %rax, -0x398(%rbp)
jmp 0x16b19
movq -0x398(%rbp), %rdi
leaq 0x62a00(%rip), %rsi     # 0x79527
callq 0xb520
movq %rax, -0x3a0(%rbp)
jmp 0x16b35
movq -0x3a0(%rbp), %rdi
leaq 0x61cef(%rip), %rsi     # 0x78832
callq 0xb520
movq %rax, -0x3a8(%rbp)
jmp 0x16b51
movq -0x10(%rbp), %rdi
callq 0xe410
movq -0x3a8(%rbp), %rdi
movq %rax, %rsi
addq $0xe0, %rsi
callq 0xcef0
movq %rax, -0x3b0(%rbp)
jmp 0x16b79
movq -0x3b0(%rbp), %rdi
movq 0x963f9(%rip), %rsi     # 0xacf80
callq 0xb5a0
jmp 0x16b8e
leaq -0x329(%rbp), %rdi
callq 0xd290
movl $0x1, %edi
callq 0xb660
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
leaq -0x329(%rbp), %rdi
callq 0xd290
jmp 0x16bda
movl $0x0, -0x2f4(%rbp)
leaq -0x30(%rbp), %rdi
callq 0xb330
addq $0x3b0, %rsp            # imm = 0x3B0
popq %rbp
retq
leaq -0x30(%rbp), %rdi
callq 0xb330
movq -0x38(%rbp), %rdi
callq 0xb920
nopl (%rax)