// File: ahupowerdns[P]mcounter/./ext/doctest.h
// Function: doctest::(anonymous namespace)::XmlReporter::log_assert(doctest::AssertData const&)
void log_assert(const AssertData& rb) override {
            if(!rb.m_failed && !opt.success)
                return;

            std::lock_guard<std::mutex> lock(mutex);

            xml.startElement("Expression")
                    .writeAttribute("success", !rb.m_failed)
                    .writeAttribute("type", assertString(rb.m_at))
                    .writeAttribute("filename", skipPathFromFilename(rb.m_file))
                    .writeAttribute("line", line(rb.m_line));

            xml.scopedElement("Original").writeText(rb.m_expr);

            if(rb.m_threw)
                xml.scopedElement("Exception").writeText(rb.m_exception.c_str());

            if(rb.m_at & assertType::is_throws_as)
                xml.scopedElement("ExpectedException").writeText(rb.m_exception_type);
            if(rb.m_at & assertType::is_throws_with)
                xml.scopedElement("ExpectedExceptionString").writeText(rb.m_exception_string);
            if((rb.m_at & assertType::is_normal) && !rb.m_threw)
                xml.scopedElement("Expanded").writeText(rb.m_decomp.c_str());

            log_contexts();

            xml.endElement();
        }

// 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, -0x2b0(%rbp)
movq -0x10(%rbp), %rax
testb $0x1, 0x28(%rax)
jne 0x1681e
movq -0x2b0(%rbp), %rax
movq 0x78(%rax), %rax
testb $0x1, 0x6c(%rax)
jne 0x1681e
jmp 0x1732e
movq -0x2b0(%rbp), %rsi
addq $0x50, %rsi
leaq -0x18(%rbp), %rdi
callq 0x226b0
movq -0x2b0(%rbp), %rax
addq $0x8, %rax
movq %rax, -0x2c0(%rbp)
leaq -0x39(%rbp), %rdi
movq %rdi, -0x2b8(%rbp)
callq 0x6810
movq -0x2b8(%rbp), %rdx
leaq 0x22946(%rip), %rsi     # 0x391a8
leaq -0x38(%rbp), %rdi
callq 0x25b30
jmp 0x1686d
movq -0x2c0(%rbp), %rdi
leaq -0x38(%rbp), %rsi
callq 0x17cc0
movq %rax, -0x2c8(%rbp)
jmp 0x16886
leaq -0x71(%rbp), %rdi
movq %rdi, -0x2d0(%rbp)
callq 0x6810
movq -0x2d0(%rbp), %rdx
leaq 0x21f94(%rip), %rsi     # 0x38838
leaq -0x70(%rbp), %rdi
callq 0x25b30
jmp 0x168af
movq -0x2c8(%rbp), %rdi
movq -0x10(%rbp), %rax
movb 0x28(%rax), %al
notb %al
movzbl %al, %edx
andl $0x1, %edx
leaq -0x70(%rbp), %rsi
callq 0x18920
movq %rax, -0x2d8(%rbp)
jmp 0x168d7
leaq -0x99(%rbp), %rdi
movq %rdi, -0x2e0(%rbp)
callq 0x6810
movq -0x2e0(%rbp), %rdx
leaq 0x228bb(%rip), %rsi     # 0x391b3
leaq -0x98(%rbp), %rdi
callq 0x25b30
jmp 0x16906
movq -0x10(%rbp), %rax
movl 0x8(%rax), %edi
callq 0x8350
movq -0x2d8(%rbp), %rdi
movq %rax, %rdx
leaq -0x98(%rbp), %rsi
callq 0x186b0
movq %rax, -0x2e8(%rbp)
jmp 0x16931
leaq -0xc1(%rbp), %rdi
movq %rdi, -0x2f0(%rbp)
callq 0x6810
movq -0x2f0(%rbp), %rdx
leaq 0x22633(%rip), %rsi     # 0x38f85
leaq -0xc0(%rbp), %rdi
callq 0x25b30
jmp 0x16960
movq -0x10(%rbp), %rax
movq 0x10(%rax), %rdi
callq 0x8940
movq %rax, -0x2f8(%rbp)
jmp 0x16976
movq -0x2f8(%rbp), %rdx
movq -0x2e8(%rbp), %rdi
leaq -0xc0(%rbp), %rsi
callq 0x186b0
movq %rax, -0x300(%rbp)
jmp 0x16999
leaq -0xe9(%rbp), %rdi
movq %rdi, -0x308(%rbp)
callq 0x6810
movq -0x308(%rbp), %rdx
leaq 0x220c9(%rip), %rsi     # 0x38a83
leaq -0xe8(%rbp), %rdi
callq 0x25b30
jmp 0x169c8
movq -0x2b0(%rbp), %rdi
movq -0x10(%rbp), %rax
movl 0x18(%rax), %esi
callq 0x17b30
movq -0x300(%rbp), %rdi
movl %eax, -0xf0(%rbp)
leaq -0xe8(%rbp), %rsi
leaq -0xf0(%rbp), %rdx
callq 0x18820
jmp 0x169fd
leaq -0xe8(%rbp), %rdi
callq 0x6260
leaq -0xe9(%rbp), %rdi
callq 0x64e0
leaq -0xc0(%rbp), %rdi
callq 0x6260
leaq -0xc1(%rbp), %rdi
callq 0x64e0
leaq -0x98(%rbp), %rdi
callq 0x6260
leaq -0x99(%rbp), %rdi
callq 0x64e0
leaq -0x70(%rbp), %rdi
callq 0x6260
leaq -0x71(%rbp), %rdi
callq 0x64e0
leaq -0x38(%rbp), %rdi
callq 0x6260
leaq -0x39(%rbp), %rdi
callq 0x64e0
movq -0x2b0(%rbp), %rax
addq $0x8, %rax
movq %rax, -0x318(%rbp)
leaq -0x119(%rbp), %rdi
movq %rdi, -0x310(%rbp)
callq 0x6810
movq -0x310(%rbp), %rdx
leaq 0x2271c(%rip), %rsi     # 0x391b8
leaq -0x118(%rbp), %rdi
callq 0x25b30
jmp 0x16aaa
movq -0x318(%rbp), %rsi
leaq -0xf8(%rbp), %rdi
leaq -0x118(%rbp), %rdx
callq 0x17970
jmp 0x16ac6
movq -0x10(%rbp), %rax
movq 0x20(%rax), %rax
movq %rax, -0x328(%rbp)
leaq -0x141(%rbp), %rdi
movq %rdi, -0x320(%rbp)
callq 0x6810
movq -0x328(%rbp), %rsi
movq -0x320(%rbp), %rdx
leaq -0x140(%rbp), %rdi
callq 0x25b30
jmp 0x16b04
leaq -0xf8(%rbp), %rdi
leaq -0x140(%rbp), %rsi
movl $0x1, %edx
callq 0x19220
jmp 0x16b1e
leaq -0x140(%rbp), %rdi
callq 0x6260
leaq -0x141(%rbp), %rdi
callq 0x64e0
leaq -0xf8(%rbp), %rdi
callq 0x17a70
leaq -0x118(%rbp), %rdi
callq 0x6260
leaq -0x119(%rbp), %rdi
callq 0x64e0
movq -0x10(%rbp), %rax
testb $0x1, 0x29(%rax)
je 0x16e6b
movq -0x2b0(%rbp), %rax
addq $0x8, %rax
movq %rax, -0x338(%rbp)
leaq -0x171(%rbp), %rdi
movq %rdi, -0x330(%rbp)
callq 0x6810
movq -0x330(%rbp), %rdx
leaq 0x2262e(%rip), %rsi     # 0x391c9
leaq -0x170(%rbp), %rdi
callq 0x25b30
jmp 0x16ba9
movq -0x338(%rbp), %rsi
leaq -0x150(%rbp), %rdi
leaq -0x170(%rbp), %rdx
callq 0x17970
jmp 0x16bc5
movq -0x10(%rbp), %rdi
addq $0x30, %rdi
callq 0x20cd0
movq %rax, -0x340(%rbp)
jmp 0x16bdb
leaq -0x199(%rbp), %rdi
movq %rdi, -0x348(%rbp)
callq 0x6810
movq -0x340(%rbp), %rsi
movq -0x348(%rbp), %rdx
leaq -0x198(%rbp), %rdi
callq 0x25b30
jmp 0x16c0a
leaq -0x150(%rbp), %rdi
leaq -0x198(%rbp), %rsi
movl $0x1, %edx
callq 0x19220
jmp 0x16c24
leaq -0x198(%rbp), %rdi
callq 0x6260
leaq -0x199(%rbp), %rdi
callq 0x64e0
leaq -0x150(%rbp), %rdi
callq 0x17a70
leaq -0x170(%rbp), %rdi
callq 0x6260
leaq -0x171(%rbp), %rdi
callq 0x64e0
jmp 0x16e6b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x16d61
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x16d58
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x16d4f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x16d46
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x16d3a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x16d2e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x16d22
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x16d16
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x16d0a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0xe8(%rbp), %rdi
callq 0x6260
leaq -0xe9(%rbp), %rdi
callq 0x64e0
leaq -0xc0(%rbp), %rdi
callq 0x6260
leaq -0xc1(%rbp), %rdi
callq 0x64e0
leaq -0x98(%rbp), %rdi
callq 0x6260
leaq -0x99(%rbp), %rdi
callq 0x64e0
leaq -0x70(%rbp), %rdi
callq 0x6260
leaq -0x71(%rbp), %rdi
callq 0x64e0
leaq -0x38(%rbp), %rdi
callq 0x6260
leaq -0x39(%rbp), %rdi
callq 0x64e0
jmp 0x17343
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x16dd5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x16dc9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x16db1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x140(%rbp), %rdi
callq 0x6260
leaq -0x141(%rbp), %rdi
callq 0x64e0
leaq -0xf8(%rbp), %rdi
callq 0x17a70
leaq -0x118(%rbp), %rdi
callq 0x6260
leaq -0x119(%rbp), %rdi
callq 0x64e0
jmp 0x17343
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x16e5a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x16e4e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x16e42
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x16e36
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x198(%rbp), %rdi
callq 0x6260
leaq -0x199(%rbp), %rdi
callq 0x64e0
leaq -0x150(%rbp), %rdi
callq 0x17a70
leaq -0x170(%rbp), %rdi
callq 0x6260
leaq -0x171(%rbp), %rdi
callq 0x64e0
jmp 0x17343
movq -0x10(%rbp), %rax
movl 0x8(%rax), %eax
andl $0x20, %eax
cmpl $0x0, %eax
je 0x16fe8
movq -0x2b0(%rbp), %rax
addq $0x8, %rax
movq %rax, -0x358(%rbp)
leaq -0x1c9(%rbp), %rdi
movq %rdi, -0x350(%rbp)
callq 0x6810
movq -0x350(%rbp), %rdx
leaq 0x22310(%rip), %rsi     # 0x391c1
leaq -0x1c8(%rbp), %rdi
callq 0x25b30
jmp 0x16ebf
movq -0x358(%rbp), %rsi
leaq -0x1a8(%rbp), %rdi
leaq -0x1c8(%rbp), %rdx
callq 0x17970
jmp 0x16edb
movq -0x10(%rbp), %rax
movq 0x68(%rax), %rax
movq %rax, -0x368(%rbp)
leaq -0x1f1(%rbp), %rdi
movq %rdi, -0x360(%rbp)
callq 0x6810
movq -0x368(%rbp), %rsi
movq -0x360(%rbp), %rdx
leaq -0x1f0(%rbp), %rdi
callq 0x25b30
jmp 0x16f19
leaq -0x1a8(%rbp), %rdi
leaq -0x1f0(%rbp), %rsi
movl $0x1, %edx
callq 0x19220
jmp 0x16f33
leaq -0x1f0(%rbp), %rdi
callq 0x6260
leaq -0x1f1(%rbp), %rdi
callq 0x64e0
leaq -0x1a8(%rbp), %rdi
callq 0x17a70
leaq -0x1c8(%rbp), %rdi
callq 0x6260
leaq -0x1c9(%rbp), %rdi
callq 0x64e0
jmp 0x16fe8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x16fd7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x16fcb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x16fb3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x1f0(%rbp), %rdi
callq 0x6260
leaq -0x1f1(%rbp), %rdi
callq 0x64e0
leaq -0x1a8(%rbp), %rdi
callq 0x17a70
leaq -0x1c8(%rbp), %rdi
callq 0x6260
leaq -0x1c9(%rbp), %rdi
callq 0x64e0
jmp 0x17343
movq -0x10(%rbp), %rax
movl 0x8(%rax), %eax
andl $0x40, %eax
cmpl $0x0, %eax
je 0x17165
movq -0x2b0(%rbp), %rax
addq $0x8, %rax
movq %rax, -0x378(%rbp)
leaq -0x221(%rbp), %rdi
movq %rdi, -0x370(%rbp)
callq 0x6810
movq -0x370(%rbp), %rdx
leaq 0x221a5(%rip), %rsi     # 0x391d3
leaq -0x220(%rbp), %rdi
callq 0x25b30
jmp 0x1703c
movq -0x378(%rbp), %rsi
leaq -0x200(%rbp), %rdi
leaq -0x220(%rbp), %rdx
callq 0x17970
jmp 0x17058
movq -0x10(%rbp), %rax
movq 0x70(%rax), %rax
movq %rax, -0x388(%rbp)
leaq -0x249(%rbp), %rdi
movq %rdi, -0x380(%rbp)
callq 0x6810
movq -0x388(%rbp), %rsi
movq -0x380(%rbp), %rdx
leaq -0x248(%rbp), %rdi
callq 0x25b30
jmp 0x17096
leaq -0x200(%rbp), %rdi
leaq -0x248(%rbp), %rsi
movl $0x1, %edx
callq 0x19220
jmp 0x170b0
leaq -0x248(%rbp), %rdi
callq 0x6260
leaq -0x249(%rbp), %rdi
callq 0x64e0
leaq -0x200(%rbp), %rdi
callq 0x17a70
leaq -0x220(%rbp), %rdi
callq 0x6260
leaq -0x221(%rbp), %rdi
callq 0x64e0
jmp 0x17165
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x17154
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x17148
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x17130
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x248(%rbp), %rdi
callq 0x6260
leaq -0x249(%rbp), %rdi
callq 0x64e0
leaq -0x200(%rbp), %rdi
callq 0x17a70
leaq -0x220(%rbp), %rdi
callq 0x6260
leaq -0x221(%rbp), %rdi
callq 0x64e0
jmp 0x17343
movq -0x10(%rbp), %rax
movl 0x8(%rax), %eax
andl $0x8, %eax
cmpl $0x0, %eax
je 0x17305
movq -0x10(%rbp), %rax
testb $0x1, 0x29(%rax)
jne 0x17305
movq -0x2b0(%rbp), %rax
addq $0x8, %rax
movq %rax, -0x398(%rbp)
leaq -0x279(%rbp), %rdi
movq %rdi, -0x390(%rbp)
callq 0x6810
movq -0x390(%rbp), %rdx
leaq 0x22032(%rip), %rsi     # 0x391eb
leaq -0x278(%rbp), %rdi
callq 0x25b30
jmp 0x171c7
movq -0x398(%rbp), %rsi
leaq -0x258(%rbp), %rdi
leaq -0x278(%rbp), %rdx
callq 0x17970
jmp 0x171e3
movq -0x10(%rbp), %rdi
addq $0x48, %rdi
callq 0x20cd0
movq %rax, -0x3a0(%rbp)
jmp 0x171f9
leaq -0x2a1(%rbp), %rdi
movq %rdi, -0x3a8(%rbp)
callq 0x6810
movq -0x3a0(%rbp), %rsi
movq -0x3a8(%rbp), %rdx
leaq -0x2a0(%rbp), %rdi
callq 0x25b30
jmp 0x17228
leaq -0x258(%rbp), %rdi
leaq -0x2a0(%rbp), %rsi
movl $0x1, %edx
callq 0x19220
jmp 0x17242
leaq -0x2a0(%rbp), %rdi
callq 0x6260
leaq -0x2a1(%rbp), %rdi
callq 0x64e0
leaq -0x258(%rbp), %rdi
callq 0x17a70
leaq -0x278(%rbp), %rdi
callq 0x6260
leaq -0x279(%rbp), %rdi
callq 0x64e0
jmp 0x17305
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x172f7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x172eb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x172df
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
jmp 0x172d3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x2a0(%rbp), %rdi
callq 0x6260
leaq -0x2a1(%rbp), %rdi
callq 0x64e0
leaq -0x258(%rbp), %rdi
callq 0x17a70
leaq -0x278(%rbp), %rdi
callq 0x6260
leaq -0x279(%rbp), %rdi
callq 0x64e0
jmp 0x17343
movq -0x2b0(%rbp), %rdi
callq 0x19330
jmp 0x17313
movq -0x2b0(%rbp), %rdi
addq $0x8, %rdi
callq 0x17ba0
jmp 0x17325
leaq -0x18(%rbp), %rdi
callq 0x227d0
addq $0x3b0, %rsp            # imm = 0x3B0
popq %rbp
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x48(%rbp)
movl %eax, -0x4c(%rbp)
leaq -0x18(%rbp), %rdi
callq 0x227d0
movq -0x48(%rbp), %rdi
callq 0x6800
nopw %cs:(%rax,%rax)