// File: /workspace/github_cpp_makefile_star2_O2/tdv[P]boss/boss/include/other/rapidxml-1.13/rapidxml_print.hpp
// Function: std::ostream_iterator<char, char, std::char_traits<char>> rapidxml::internal::print_attributes<std::ostream_iterator<char, char, std::char_traits<char>>, char>(std::ostream_iterator<char, char, std::char_traits<char>>, rapidxml::xml_node<char> const*, int)
inline OutIt print_attributes(OutIt out, const xml_node<Ch> *node, int flags)
        {
            for (xml_attribute<Ch> *attribute = node->first_attribute(); attribute; attribute = attribute->next_attribute())
            {
                if (attribute->name() && attribute->value())
                {
                    // Print attribute name
                    *out = Ch(' '), ++out;
                    out = copy_chars(attribute->name(), attribute->name() + attribute->name_size(), out);
                    *out = Ch('='), ++out;
                    // Print attribute value using appropriate quote type
                    if (find_char<Ch, Ch('"')>(attribute->value(), attribute->value() + attribute->value_size()))
                    {
                        *out = Ch('\''), ++out;
                        out = copy_and_expand_chars(attribute->value(), attribute->value() + attribute->value_size(), Ch('"'), out);
                        *out = Ch('\''), ++out;
                    }
                    else
                    {
                        *out = Ch('"'), ++out;
                        out = copy_and_expand_chars(attribute->value(), attribute->value() + attribute->value_size(), Ch('\''), out);
                        *out = Ch('"'), ++out;
                    }
                }
            }
            return out;
        }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x58, %rsp
movq %rsi, %r14
movq %rdi, 0x18(%rsp)
movq 0x40(%rdx), %rbp
leaq 0x8(%rsp), %r15
leaq 0xfd292(%rip), %r13     # 0x122501
leaq 0x40(%rsp), %r12
movb $0x22, %bl
testq %rbp, %rbp
je 0x253b5
movb $0x20, 0x8(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0x251a4
movq (%rbp), %rdx
testq %rdx, %rdx
je 0x252a1
movq %rdx, %rsi
movq 0x10(%rbp), %rdx
jmp 0x252a4
movq %r13, %rsi
addq %rsi, %rdx
movups (%r14), %xmm0
movaps %xmm0, 0x40(%rsp)
movq %r15, %rdi
movq %r12, %rcx
callq 0x2520c
movups 0x8(%rsp), %xmm0
movups %xmm0, (%r14)
movb $0x3d, 0x8(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0x251a4
movq 0x8(%rbp), %rsi
testq %rsi, %rsi
je 0x252e6
movq %rsi, %rdi
movq 0x18(%rbp), %rsi
jmp 0x252e9
movq %r13, %rdi
addq %rdi, %rsi
callq 0x2555c
testb %al, %al
je 0x25318
movb $0x27, %al
movb %al, 0x8(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0x251a4
movq 0x8(%rbp), %rdx
testq %rdx, %rdx
je 0x25339
movq %rdx, %rsi
movq 0x18(%rbp), %rdx
jmp 0x2533c
movb %bl, 0x8(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0x251a4
movq 0x8(%rbp), %rdx
testq %rdx, %rdx
je 0x25369
movq %rdx, %rsi
movq 0x18(%rbp), %rdx
jmp 0x2536c
movq %r13, %rsi
addq %rsi, %rdx
movups (%r14), %xmm0
movaps %xmm0, 0x30(%rsp)
movq %r15, %rdi
pushq $0x22
popq %rcx
leaq 0x30(%rsp), %r8
callq 0x253d0
movups 0x8(%rsp), %xmm0
movups %xmm0, (%r14)
movb $0x27, %al
movb %al, 0x8(%rsp)
jmp 0x25395
movq %r13, %rsi
addq %rsi, %rdx
movups (%r14), %xmm0
movaps %xmm0, 0x20(%rsp)
movq %r15, %rdi
pushq $0x27
popq %rcx
leaq 0x20(%rsp), %r8
callq 0x253d0
movups 0x8(%rsp), %xmm0
movups %xmm0, (%r14)
movb %bl, 0x8(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0x251a4
movq 0x20(%rbp), %rax
testq %rax, %rax
je 0x253ad
movq 0x30(%rbp), %rax
movq %rax, %rbp
jmp 0x25276
movups (%r14), %xmm0
movq 0x18(%rsp), %rax
movups %xmm0, (%rax)
addq $0x58, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq