// File: xelia-it[P]mustache/third-party/catch2/single_include/catch2/catch.hpp
// Function: Catch::ConsoleReporter::printTotals(Catch::Totals const&)
void ConsoleReporter::printTotals( Totals const& totals ) {
    if (totals.testCases.total() == 0) {
        stream << Colour(Colour::Warning) << "No tests ran\n";
    } else if (totals.assertions.total() > 0 && totals.testCases.allPassed()) {
        stream << Colour(Colour::ResultSuccess) << "All tests passed";
        stream << " ("
            << pluralise(totals.assertions.passed, "assertion") << " in "
            << pluralise(totals.testCases.passed, "test case") << ')'
            << '\n';
    } else {

        std::vector<SummaryColumn> columns;
        columns.push_back(SummaryColumn("", Colour::None)
                          .addRow(totals.testCases.total())
                          .addRow(totals.assertions.total()));
        columns.push_back(SummaryColumn("passed", Colour::Success)
                          .addRow(totals.testCases.passed)
                          .addRow(totals.assertions.passed));
        columns.push_back(SummaryColumn("failed", Colour::ResultError)
                          .addRow(totals.testCases.failed)
                          .addRow(totals.assertions.failed));
        columns.push_back(SummaryColumn("failed as expected", Colour::ResultExpectedFailure)
                          .addRow(totals.testCases.failedButOk)
                          .addRow(totals.assertions.failedButOk));

        printSummaryRow("test cases", columns, 0);
        printSummaryRow("assertions", columns, 1);
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x570, %rsp            # imm = 0x570
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x4d8(%rbp)
movq -0x10(%rbp), %rdi
addq $0x20, %rdi
callq 0x645a0
cmpq $0x0, %rax
jne 0x728a4
movq -0x4d8(%rbp), %rax
movq 0x18(%rax), %rax
movq %rax, -0x4e8(%rbp)
leaq -0x11(%rbp), %rdi
movq %rdi, -0x4e0(%rbp)
movl $0x16, %esi
callq 0x5aea0
movq -0x4e8(%rbp), %rdi
movq -0x4e0(%rbp), %rsi
callq 0x5b120
movq %rax, %rdi
leaq 0xcd447(%rip), %rsi     # 0x13fcbc
callq 0x52710
jmp 0x7287c
leaq -0x11(%rbp), %rdi
callq 0x5afc0
jmp 0x7322d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x11(%rbp), %rdi
callq 0x5afc0
jmp 0x73236
movq -0x10(%rbp), %rdi
addq $0x8, %rdi
callq 0x645a0
cmpq $0x0, %rax
jbe 0x72b5d
movq -0x10(%rbp), %rdi
addq $0x20, %rdi
callq 0x6e030
testb $0x1, %al
jne 0x728d1
jmp 0x72b5d
movq -0x4d8(%rbp), %rax
movq 0x18(%rax), %rax
movq %rax, -0x4f8(%rbp)
leaq -0x25(%rbp), %rdi
movq %rdi, -0x4f0(%rbp)
movl $0x13, %esi
callq 0x5aea0
movq -0x4f8(%rbp), %rdi
movq -0x4f0(%rbp), %rsi
callq 0x5b120
movq %rax, %rdi
leaq 0xcd3b5(%rip), %rsi     # 0x13fcca
callq 0x52710
jmp 0x7291c
leaq -0x25(%rbp), %rdi
callq 0x5afc0
movq -0x4d8(%rbp), %rax
movq 0x18(%rax), %rdi
leaq 0xcd3a4(%rip), %rsi     # 0x13fcdb
callq 0x52710
movq %rax, -0x510(%rbp)
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rax
movq %rax, -0x508(%rbp)
leaq -0x71(%rbp), %rdi
movq %rdi, -0x500(%rbp)
callq 0x52ca0
movq -0x500(%rbp), %rdx
leaq 0xcd36e(%rip), %rsi     # 0x13fcde
leaq -0x70(%rbp), %rdi
callq 0x529e0
jmp 0x7297b
movq -0x508(%rbp), %rsi
leaq -0x50(%rbp), %rdi
leaq -0x70(%rbp), %rdx
callq 0x68340
jmp 0x72991
movq -0x510(%rbp), %rdi
leaq -0x50(%rbp), %rsi
callq 0x5de70
movq %rax, -0x518(%rbp)
jmp 0x729aa
movq -0x518(%rbp), %rdi
leaq 0xcd330(%rip), %rsi     # 0x13fce8
callq 0x52710
movq %rax, -0x520(%rbp)
jmp 0x729c6
movq -0x10(%rbp), %rax
movq 0x20(%rax), %rax
movq %rax, -0x530(%rbp)
leaq -0xc1(%rbp), %rdi
movq %rdi, -0x528(%rbp)
callq 0x52ca0
movq -0x528(%rbp), %rdx
leaq 0xcc7c4(%rip), %rsi     # 0x13f1ba
leaq -0xc0(%rbp), %rdi
callq 0x529e0
jmp 0x72a04
movq -0x530(%rbp), %rsi
leaq -0xa0(%rbp), %rdi
leaq -0xc0(%rbp), %rdx
callq 0x68340
jmp 0x72a20
movq -0x520(%rbp), %rdi
leaq -0xa0(%rbp), %rsi
callq 0x5de70
movq %rax, -0x538(%rbp)
jmp 0x72a3c
movq -0x538(%rbp), %rdi
movl $0x29, %esi
callq 0x52870
movq %rax, -0x540(%rbp)
jmp 0x72a56
movq -0x540(%rbp), %rdi
movl $0xa, %esi
callq 0x52870
jmp 0x72a69
leaq -0xa0(%rbp), %rdi
callq 0x8d610
leaq -0xc0(%rbp), %rdi
callq 0x52e58
leaq -0xc1(%rbp), %rdi
callq 0x527d0
leaq -0x50(%rbp), %rdi
callq 0x8d610
leaq -0x70(%rbp), %rdi
callq 0x52e58
leaq -0x71(%rbp), %rdi
callq 0x527d0
jmp 0x7322b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x25(%rbp), %rdi
callq 0x5afc0
jmp 0x73236
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
jmp 0x72b4f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
jmp 0x72b46
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
jmp 0x72b3d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
jmp 0x72b31
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
jmp 0x72b25
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0xa0(%rbp), %rdi
callq 0x8d610
leaq -0xc0(%rbp), %rdi
callq 0x52e58
leaq -0xc1(%rbp), %rdi
callq 0x527d0
leaq -0x50(%rbp), %rdi
callq 0x8d610
leaq -0x70(%rbp), %rdi
callq 0x52e58
leaq -0x71(%rbp), %rdi
callq 0x527d0
jmp 0x73236
leaq -0xe0(%rbp), %rdi
callq 0x94ad0
leaq -0x1c1(%rbp), %rdi
movq %rdi, -0x548(%rbp)
callq 0x52ca0
movq -0x548(%rbp), %rdx
leaq 0xcc405(%rip), %rsi     # 0x13ef8f
leaq -0x1c0(%rbp), %rdi
callq 0x529e0
jmp 0x72b98
leaq -0x1a0(%rbp), %rdi
leaq -0x1c0(%rbp), %rsi
xorl %edx, %edx
callq 0x94b20
jmp 0x72baf
movq -0x10(%rbp), %rdi
addq $0x20, %rdi
callq 0x645a0
movq %rax, %rdx
leaq -0x160(%rbp), %rdi
leaq -0x1a0(%rbp), %rsi
callq 0x94b60
jmp 0x72bd4
movq -0x10(%rbp), %rdi
addq $0x8, %rdi
callq 0x645a0
movq %rax, %rdx
leaq -0x120(%rbp), %rdi
leaq -0x160(%rbp), %rsi
callq 0x94b60
jmp 0x72bf9
leaq -0xe0(%rbp), %rdi
leaq -0x120(%rbp), %rsi
callq 0x94af0
jmp 0x72c0e
leaq -0x120(%rbp), %rdi
callq 0x94d70
leaq -0x160(%rbp), %rdi
callq 0x94d70
leaq -0x1a0(%rbp), %rdi
callq 0x94d70
leaq -0x1c0(%rbp), %rdi
callq 0x52e58
leaq -0x1c1(%rbp), %rdi
callq 0x527d0
leaq -0x2a9(%rbp), %rdi
movq %rdi, -0x550(%rbp)
callq 0x52ca0
movq -0x550(%rbp), %rdx
leaq 0xcd069(%rip), %rsi     # 0x13fcd4
leaq -0x2a8(%rbp), %rdi
callq 0x529e0
jmp 0x72c79
leaq -0x288(%rbp), %rdi
leaq -0x2a8(%rbp), %rsi
movl $0x3, %edx
callq 0x94b20
jmp 0x72c93
movq -0x10(%rbp), %rax
movq 0x20(%rax), %rdx
leaq -0x248(%rbp), %rdi
leaq -0x288(%rbp), %rsi
callq 0x94b60
jmp 0x72cb0
movq -0x10(%rbp), %rax
movq 0x8(%rax), %rdx
leaq -0x208(%rbp), %rdi
leaq -0x248(%rbp), %rsi
callq 0x94b60
jmp 0x72ccd
leaq -0xe0(%rbp), %rdi
leaq -0x208(%rbp), %rsi
callq 0x94af0
jmp 0x72ce2
leaq -0x208(%rbp), %rdi
callq 0x94d70
leaq -0x248(%rbp), %rdi
callq 0x94d70
leaq -0x288(%rbp), %rdi
callq 0x94d70
leaq -0x2a8(%rbp), %rdi
callq 0x52e58
leaq -0x2a9(%rbp), %rdi
callq 0x527d0
leaq -0x391(%rbp), %rdi
movq %rdi, -0x558(%rbp)
callq 0x52ca0
movq -0x558(%rbp), %rdx
leaq 0xccfae(%rip), %rsi     # 0x13fced
leaq -0x390(%rbp), %rdi
callq 0x529e0
jmp 0x72d4d
leaq -0x370(%rbp), %rdi
leaq -0x390(%rbp), %rsi
movl $0x12, %edx
callq 0x94b20
jmp 0x72d67
movq -0x10(%rbp), %rax
movq 0x28(%rax), %rdx
leaq -0x330(%rbp), %rdi
leaq -0x370(%rbp), %rsi
callq 0x94b60
jmp 0x72d84
movq -0x10(%rbp), %rax
movq 0x10(%rax), %rdx
leaq -0x2f0(%rbp), %rdi
leaq -0x330(%rbp), %rsi
callq 0x94b60
jmp 0x72da1
leaq -0xe0(%rbp), %rdi
leaq -0x2f0(%rbp), %rsi
callq 0x94af0
jmp 0x72db6
leaq -0x2f0(%rbp), %rdi
callq 0x94d70
leaq -0x330(%rbp), %rdi
callq 0x94d70
leaq -0x370(%rbp), %rdi
callq 0x94d70
leaq -0x390(%rbp), %rdi
callq 0x52e58
leaq -0x391(%rbp), %rdi
callq 0x527d0
leaq -0x479(%rbp), %rdi
movq %rdi, -0x560(%rbp)
callq 0x52ca0
movq -0x560(%rbp), %rdx
leaq 0xccee1(%rip), %rsi     # 0x13fcf4
leaq -0x478(%rbp), %rdi
callq 0x529e0
jmp 0x72e21
leaq -0x458(%rbp), %rdi
leaq -0x478(%rbp), %rsi
movl $0x16, %edx
callq 0x94b20
jmp 0x72e3b
movq -0x10(%rbp), %rax
movq 0x30(%rax), %rdx
leaq -0x418(%rbp), %rdi
leaq -0x458(%rbp), %rsi
callq 0x94b60
jmp 0x72e58
movq -0x10(%rbp), %rax
movq 0x18(%rax), %rdx
leaq -0x3d8(%rbp), %rdi
leaq -0x418(%rbp), %rsi
callq 0x94b60
jmp 0x72e75
leaq -0xe0(%rbp), %rdi
leaq -0x3d8(%rbp), %rsi
callq 0x94af0
jmp 0x72e8a
leaq -0x3d8(%rbp), %rdi
callq 0x94d70
leaq -0x418(%rbp), %rdi
callq 0x94d70
leaq -0x458(%rbp), %rdi
callq 0x94d70
leaq -0x478(%rbp), %rdi
callq 0x52e58
leaq -0x479(%rbp), %rdi
callq 0x527d0
leaq -0x4a1(%rbp), %rdi
movq %rdi, -0x568(%rbp)
callq 0x52ca0
movq -0x568(%rbp), %rdx
leaq 0xcb9f3(%rip), %rsi     # 0x13e8da
leaq -0x4a0(%rbp), %rdi
callq 0x529e0
jmp 0x72ef5
movq -0x4d8(%rbp), %rdi
xorl %eax, %eax
movl %eax, %ecx
leaq -0x4a0(%rbp), %rsi
leaq -0xe0(%rbp), %rdx
callq 0x74110
jmp 0x72f15
leaq -0x4a0(%rbp), %rdi
callq 0x52e58
leaq -0x4a1(%rbp), %rdi
callq 0x527d0
leaq -0x4c9(%rbp), %rdi
movq %rdi, -0x570(%rbp)
callq 0x52ca0
movq -0x570(%rbp), %rdx
leaq 0xccdb9(%rip), %rsi     # 0x13fd07
leaq -0x4c8(%rbp), %rdi
callq 0x529e0
jmp 0x72f5c
movq -0x4d8(%rbp), %rdi
leaq -0x4c8(%rbp), %rsi
leaq -0xe0(%rbp), %rdx
movl $0x1, %ecx
callq 0x74110
jmp 0x72f7d
leaq -0x4c8(%rbp), %rdi
callq 0x52e58
leaq -0x4c9(%rbp), %rdi
callq 0x527d0
leaq -0xe0(%rbp), %rdi
callq 0x94da0
jmp 0x7322b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
jmp 0x7301a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
jmp 0x7300e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
jmp 0x73002
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
jmp 0x72ff6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x120(%rbp), %rdi
callq 0x94d70
leaq -0x160(%rbp), %rdi
callq 0x94d70
leaq -0x1a0(%rbp), %rdi
callq 0x94d70
leaq -0x1c0(%rbp), %rdi
callq 0x52e58
leaq -0x1c1(%rbp), %rdi
callq 0x527d0
jmp 0x7321d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
jmp 0x7309f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
jmp 0x73093
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
jmp 0x73087
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
jmp 0x7307b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x208(%rbp), %rdi
callq 0x94d70
leaq -0x248(%rbp), %rdi
callq 0x94d70
leaq -0x288(%rbp), %rdi
callq 0x94d70
leaq -0x2a8(%rbp), %rdi
callq 0x52e58
leaq -0x2a9(%rbp), %rdi
callq 0x527d0
jmp 0x7321d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
jmp 0x73124
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
jmp 0x73118
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
jmp 0x7310c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
jmp 0x73100
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x2f0(%rbp), %rdi
callq 0x94d70
leaq -0x330(%rbp), %rdi
callq 0x94d70
leaq -0x370(%rbp), %rdi
callq 0x94d70
leaq -0x390(%rbp), %rdi
callq 0x52e58
leaq -0x391(%rbp), %rdi
callq 0x527d0
jmp 0x7321d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
jmp 0x731a9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
jmp 0x7319d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
jmp 0x73191
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
jmp 0x73185
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x3d8(%rbp), %rdi
callq 0x94d70
leaq -0x418(%rbp), %rdi
callq 0x94d70
leaq -0x458(%rbp), %rdi
callq 0x94d70
leaq -0x478(%rbp), %rdi
callq 0x52e58
leaq -0x479(%rbp), %rdi
callq 0x527d0
jmp 0x7321d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
jmp 0x731dd
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x4a0(%rbp), %rdi
callq 0x52e58
leaq -0x4a1(%rbp), %rdi
callq 0x527d0
jmp 0x7321d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
jmp 0x73211
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x4c8(%rbp), %rdi
callq 0x52e58
leaq -0x4c9(%rbp), %rdi
callq 0x527d0
leaq -0xe0(%rbp), %rdi
callq 0x94da0
jmp 0x73236
jmp 0x7322d
addq $0x570, %rsp            # imm = 0x570
popq %rbp
retq
movq -0x20(%rbp), %rdi
callq 0x52c90
nop