// File: micahcc[P]polygon_skeleton/./simple_svg.hpp
// Function: svg::Document::toString[abi:cxx11]() const
std::string toString() const
        {
            std::stringstream ss;
            ss << "<?xml " << attribute("version", "1.0") << attribute("standalone", "no")
                << "?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\" "
                << "\"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n<svg "
                << attribute("width", layout.dimensions.width, "px")
                << attribute("height", layout.dimensions.height, "px")
                << attribute("xmlns", "http://www.w3.org/2000/svg")
                << attribute("version", "1.1") << ">\n" << body_nodes_str << elemEnd("svg");
            return ss.str();
        }

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x580, %rsp            # imm = 0x580
movq %rdi, -0x4b0(%rbp)
movq %rdi, %rax
movq %rax, -0x4a8(%rbp)
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x4a0(%rbp)
leaq -0x198(%rbp), %rdi
callq 0x31a0
leaq -0x188(%rbp), %rdi
leaq 0x1b5ed(%rip), %rsi     # 0x230e6
callq 0x3250
movq %rax, -0x498(%rbp)
jmp 0x7b07
leaq -0x1e9(%rbp), %rdi
movq %rdi, -0x4b8(%rbp)
callq 0x3410
movq -0x4b8(%rbp), %rdx
leaq 0x1b5c5(%rip), %rsi     # 0x230ed
leaq -0x1e8(%rbp), %rdi
callq 0x3310
jmp 0x7b36
leaq -0x211(%rbp), %rdi
movq %rdi, -0x4c0(%rbp)
callq 0x3410
movq -0x4c0(%rbp), %rdx
leaq 0x1bc4b(%rip), %rsi     # 0x237a2
leaq -0x210(%rbp), %rdi
callq 0x3310
jmp 0x7b65
leaq 0x1b589(%rip), %rdx     # 0x230f5
leaq -0x1c8(%rbp), %rdi
leaq -0x1e8(%rbp), %rsi
leaq -0x210(%rbp), %rcx
callq 0x8580
jmp 0x7b88
movq -0x498(%rbp), %rdi
leaq -0x1c8(%rbp), %rsi
callq 0x3220
movq %rax, -0x4c8(%rbp)
jmp 0x7ba4
leaq -0x259(%rbp), %rdi
movq %rdi, -0x4d0(%rbp)
callq 0x3410
movq -0x4d0(%rbp), %rdx
leaq 0x1b534(%rip), %rsi     # 0x230f9
leaq -0x258(%rbp), %rdi
callq 0x3310
jmp 0x7bd3
leaq -0x281(%rbp), %rdi
movq %rdi, -0x4d8(%rbp)
callq 0x3410
movq -0x4d8(%rbp), %rdx
leaq 0x1bbae(%rip), %rsi     # 0x237a2
leaq -0x280(%rbp), %rdi
callq 0x3310
jmp 0x7c02
leaq 0x1b4fb(%rip), %rdx     # 0x23104
leaq -0x238(%rbp), %rdi
leaq -0x258(%rbp), %rsi
leaq -0x280(%rbp), %rcx
callq 0x8690
jmp 0x7c25
movq -0x4c8(%rbp), %rdi
leaq -0x238(%rbp), %rsi
callq 0x3220
movq %rax, -0x4e0(%rbp)
jmp 0x7c41
movq -0x4e0(%rbp), %rdi
leaq 0x1b4b8(%rip), %rsi     # 0x23107
callq 0x3250
movq %rax, -0x4e8(%rbp)
jmp 0x7c5d
movq -0x4e8(%rbp), %rdi
leaq 0x1b4cf(%rip), %rsi     # 0x2313a
callq 0x3250
movq %rax, -0x4f0(%rbp)
jmp 0x7c79
leaq -0x2c9(%rbp), %rdi
movq %rdi, -0x4f8(%rbp)
callq 0x3410
movq -0x4f8(%rbp), %rdx
leaq 0x1b405(%rip), %rsi     # 0x2309f
leaq -0x2c8(%rbp), %rdi
callq 0x3310
jmp 0x7ca8
movq -0x4a0(%rbp), %rax
addq $0x20, %rax
movq %rax, -0x508(%rbp)
leaq -0x2f1(%rbp), %rdi
movq %rdi, -0x500(%rbp)
callq 0x3410
movq -0x500(%rbp), %rdx
leaq 0x1b499(%rip), %rsi     # 0x23174
leaq -0x2f0(%rbp), %rdi
callq 0x3310
jmp 0x7ce9
movq -0x508(%rbp), %rdx
leaq -0x2a8(%rbp), %rdi
leaq -0x2c8(%rbp), %rsi
leaq -0x2f0(%rbp), %rcx
callq 0x5990
jmp 0x7d0c
movq -0x4f0(%rbp), %rdi
leaq -0x2a8(%rbp), %rsi
callq 0x3220
movq %rax, -0x510(%rbp)
jmp 0x7d28
leaq -0x339(%rbp), %rdi
movq %rdi, -0x518(%rbp)
callq 0x3410
movq -0x518(%rbp), %rdx
leaq 0x1b42e(%rip), %rsi     # 0x23177
leaq -0x338(%rbp), %rdi
callq 0x3310
jmp 0x7d57
movq -0x4a0(%rbp), %rax
addq $0x28, %rax
movq %rax, -0x528(%rbp)
leaq -0x361(%rbp), %rdi
movq %rdi, -0x520(%rbp)
callq 0x3410
movq -0x520(%rbp), %rdx
leaq 0x1b3ea(%rip), %rsi     # 0x23174
leaq -0x360(%rbp), %rdi
callq 0x3310
jmp 0x7d98
movq -0x528(%rbp), %rdx
leaq -0x318(%rbp), %rdi
leaq -0x338(%rbp), %rsi
leaq -0x360(%rbp), %rcx
callq 0x5990
jmp 0x7dbb
movq -0x510(%rbp), %rdi
leaq -0x318(%rbp), %rsi
callq 0x3220
movq %rax, -0x530(%rbp)
jmp 0x7dd7
leaq -0x3a9(%rbp), %rdi
movq %rdi, -0x538(%rbp)
callq 0x3410
movq -0x538(%rbp), %rdx
leaq 0x1b386(%rip), %rsi     # 0x2317e
leaq -0x3a8(%rbp), %rdi
callq 0x3310
jmp 0x7e06
leaq -0x3d1(%rbp), %rdi
movq %rdi, -0x540(%rbp)
callq 0x3410
movq -0x540(%rbp), %rdx
leaq 0x1b97b(%rip), %rsi     # 0x237a2
leaq -0x3d0(%rbp), %rdi
callq 0x3310
jmp 0x7e35
leaq 0x1b348(%rip), %rdx     # 0x23184
leaq -0x388(%rbp), %rdi
leaq -0x3a8(%rbp), %rsi
leaq -0x3d0(%rbp), %rcx
callq 0x87a0
jmp 0x7e58
movq -0x530(%rbp), %rdi
leaq -0x388(%rbp), %rsi
callq 0x3220
movq %rax, -0x548(%rbp)
jmp 0x7e74
leaq -0x419(%rbp), %rdi
movq %rdi, -0x550(%rbp)
callq 0x3410
movq -0x550(%rbp), %rdx
leaq 0x1b258(%rip), %rsi     # 0x230ed
leaq -0x418(%rbp), %rdi
callq 0x3310
jmp 0x7ea3
leaq -0x441(%rbp), %rdi
movq %rdi, -0x558(%rbp)
callq 0x3410
movq -0x558(%rbp), %rdx
leaq 0x1b8de(%rip), %rsi     # 0x237a2
leaq -0x440(%rbp), %rdi
callq 0x3310
jmp 0x7ed2
leaq 0x1b2c6(%rip), %rdx     # 0x2319f
leaq -0x3f8(%rbp), %rdi
leaq -0x418(%rbp), %rsi
leaq -0x440(%rbp), %rcx
callq 0x8580
jmp 0x7ef5
movq -0x548(%rbp), %rdi
leaq -0x3f8(%rbp), %rsi
callq 0x3220
movq %rax, -0x560(%rbp)
jmp 0x7f11
movq -0x560(%rbp), %rdi
leaq 0x1b1b8(%rip), %rsi     # 0x230d7
callq 0x3250
movq %rax, -0x568(%rbp)
jmp 0x7f2d
movq -0x568(%rbp), %rdi
movq -0x4a0(%rbp), %rsi
addq $0x50, %rsi
callq 0x3220
movq %rax, -0x570(%rbp)
jmp 0x7f4d
leaq -0x489(%rbp), %rdi
movq %rdi, -0x578(%rbp)
callq 0x3410
movq -0x578(%rbp), %rdx
leaq 0x1b105(%rip), %rsi     # 0x23073
leaq -0x488(%rbp), %rdi
callq 0x3310
jmp 0x7f7c
leaq -0x468(%rbp), %rdi
leaq -0x488(%rbp), %rsi
callq 0x40e0
jmp 0x7f91
movq -0x570(%rbp), %rdi
leaq -0x468(%rbp), %rsi
callq 0x3220
jmp 0x7fa6
leaq -0x468(%rbp), %rdi
callq 0x3160
leaq -0x488(%rbp), %rdi
callq 0x3160
leaq -0x489(%rbp), %rdi
callq 0x32a0
leaq -0x3f8(%rbp), %rdi
callq 0x3160
leaq -0x440(%rbp), %rdi
callq 0x3160
leaq -0x441(%rbp), %rdi
callq 0x32a0
leaq -0x418(%rbp), %rdi
callq 0x3160
leaq -0x419(%rbp), %rdi
callq 0x32a0
leaq -0x388(%rbp), %rdi
callq 0x3160
leaq -0x3d0(%rbp), %rdi
callq 0x3160
leaq -0x3d1(%rbp), %rdi
callq 0x32a0
leaq -0x3a8(%rbp), %rdi
callq 0x3160
leaq -0x3a9(%rbp), %rdi
callq 0x32a0
leaq -0x318(%rbp), %rdi
callq 0x3160
leaq -0x360(%rbp), %rdi
callq 0x3160
leaq -0x361(%rbp), %rdi
callq 0x32a0
leaq -0x338(%rbp), %rdi
callq 0x3160
leaq -0x339(%rbp), %rdi
callq 0x32a0
leaq -0x2a8(%rbp), %rdi
callq 0x3160
leaq -0x2f0(%rbp), %rdi
callq 0x3160
leaq -0x2f1(%rbp), %rdi
callq 0x32a0
leaq -0x2c8(%rbp), %rdi
callq 0x3160
leaq -0x2c9(%rbp), %rdi
callq 0x32a0
leaq -0x238(%rbp), %rdi
callq 0x3160
leaq -0x280(%rbp), %rdi
callq 0x3160
leaq -0x281(%rbp), %rdi
callq 0x32a0
leaq -0x258(%rbp), %rdi
callq 0x3160
leaq -0x259(%rbp), %rdi
callq 0x32a0
leaq -0x1c8(%rbp), %rdi
callq 0x3160
leaq -0x210(%rbp), %rdi
callq 0x3160
leaq -0x211(%rbp), %rdi
callq 0x32a0
leaq -0x1e8(%rbp), %rdi
callq 0x3160
leaq -0x1e9(%rbp), %rdi
callq 0x32a0
movq -0x4b0(%rbp), %rdi
leaq -0x198(%rbp), %rsi
callq 0x3240
jmp 0x8147
leaq -0x198(%rbp), %rdi
callq 0x31c0
movq -0x4a8(%rbp), %rax
addq $0x580, %rsp            # imm = 0x580
popq %rbp
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a0(%rbp)
movl %eax, -0x1a4(%rbp)
jmp 0x8562
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a0(%rbp)
movl %eax, -0x1a4(%rbp)
jmp 0x8556
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a0(%rbp)
movl %eax, -0x1a4(%rbp)
jmp 0x853e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a0(%rbp)
movl %eax, -0x1a4(%rbp)
jmp 0x8532
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a0(%rbp)
movl %eax, -0x1a4(%rbp)
jmp 0x8526
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a0(%rbp)
movl %eax, -0x1a4(%rbp)
jmp 0x851a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a0(%rbp)
movl %eax, -0x1a4(%rbp)
jmp 0x8502
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a0(%rbp)
movl %eax, -0x1a4(%rbp)
jmp 0x84f6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a0(%rbp)
movl %eax, -0x1a4(%rbp)
jmp 0x84ea
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a0(%rbp)
movl %eax, -0x1a4(%rbp)
jmp 0x84de
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a0(%rbp)
movl %eax, -0x1a4(%rbp)
jmp 0x84c6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a0(%rbp)
movl %eax, -0x1a4(%rbp)
jmp 0x84ba
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a0(%rbp)
movl %eax, -0x1a4(%rbp)
jmp 0x84ae
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a0(%rbp)
movl %eax, -0x1a4(%rbp)
jmp 0x84a2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a0(%rbp)
movl %eax, -0x1a4(%rbp)
jmp 0x848a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a0(%rbp)
movl %eax, -0x1a4(%rbp)
jmp 0x847e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a0(%rbp)
movl %eax, -0x1a4(%rbp)
jmp 0x8472
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a0(%rbp)
movl %eax, -0x1a4(%rbp)
jmp 0x8466
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a0(%rbp)
movl %eax, -0x1a4(%rbp)
jmp 0x844e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a0(%rbp)
movl %eax, -0x1a4(%rbp)
jmp 0x8442
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a0(%rbp)
movl %eax, -0x1a4(%rbp)
jmp 0x8436
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a0(%rbp)
movl %eax, -0x1a4(%rbp)
jmp 0x842a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a0(%rbp)
movl %eax, -0x1a4(%rbp)
jmp 0x8412
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a0(%rbp)
movl %eax, -0x1a4(%rbp)
jmp 0x8406
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a0(%rbp)
movl %eax, -0x1a4(%rbp)
jmp 0x83fa
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a0(%rbp)
movl %eax, -0x1a4(%rbp)
jmp 0x83ee
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a0(%rbp)
movl %eax, -0x1a4(%rbp)
jmp 0x83e2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a0(%rbp)
movl %eax, -0x1a4(%rbp)
leaq -0x468(%rbp), %rdi
callq 0x3160
leaq -0x488(%rbp), %rdi
callq 0x3160
leaq -0x489(%rbp), %rdi
callq 0x32a0
leaq -0x3f8(%rbp), %rdi
callq 0x3160
leaq -0x440(%rbp), %rdi
callq 0x3160
leaq -0x441(%rbp), %rdi
callq 0x32a0
leaq -0x418(%rbp), %rdi
callq 0x3160
leaq -0x419(%rbp), %rdi
callq 0x32a0
leaq -0x388(%rbp), %rdi
callq 0x3160
leaq -0x3d0(%rbp), %rdi
callq 0x3160
leaq -0x3d1(%rbp), %rdi
callq 0x32a0
leaq -0x3a8(%rbp), %rdi
callq 0x3160
leaq -0x3a9(%rbp), %rdi
callq 0x32a0
leaq -0x318(%rbp), %rdi
callq 0x3160
leaq -0x360(%rbp), %rdi
callq 0x3160
leaq -0x361(%rbp), %rdi
callq 0x32a0
leaq -0x338(%rbp), %rdi
callq 0x3160
leaq -0x339(%rbp), %rdi
callq 0x32a0
leaq -0x2a8(%rbp), %rdi
callq 0x3160
leaq -0x2f0(%rbp), %rdi
callq 0x3160
leaq -0x2f1(%rbp), %rdi
callq 0x32a0
leaq -0x2c8(%rbp), %rdi
callq 0x3160
leaq -0x2c9(%rbp), %rdi
callq 0x32a0
leaq -0x238(%rbp), %rdi
callq 0x3160
leaq -0x280(%rbp), %rdi
callq 0x3160
leaq -0x281(%rbp), %rdi
callq 0x32a0
leaq -0x258(%rbp), %rdi
callq 0x3160
leaq -0x259(%rbp), %rdi
callq 0x32a0
leaq -0x1c8(%rbp), %rdi
callq 0x3160
leaq -0x210(%rbp), %rdi
callq 0x3160
leaq -0x211(%rbp), %rdi
callq 0x32a0
leaq -0x1e8(%rbp), %rdi
callq 0x3160
leaq -0x1e9(%rbp), %rdi
callq 0x32a0
leaq -0x198(%rbp), %rdi
callq 0x31c0
movq -0x1a0(%rbp), %rdi
callq 0x3400
nopw (%rax,%rax)