// File: leobru[P]ACPUfont/splitter.cc
// Function: Picture::dump_marked(std::vector<int, std::allocator<int>>*, std::vector<int, std::allocator<int>>*)
void dump_marked(vector<int> * hor, vector<int> * ver) {
        FILE * f = fopen("marked.ppm", "w");
        fprintf(f, "P6\n%d %d\n%d\n", width, height, full);
        for (int i = 0; i < height; ++i) for (int j = 0; j < width; ++j) {
                int r, b, g;
                r = g = b = p(i,j);
                if (hor && std::find(hor->begin(), hor->end(), i) != hor->end()) { g = b = 0; r = full; }
                if (ver && std::find(ver->begin(), ver->end(), j) != ver->end()) { b = 0; r = g ? 0 : full; g = full; }
                putc(r, f); putc(g, f); putc(b, f);
            }
        fclose(f);
    }

// Assembly:
subq $0x88, %rsp
movq %rdi, 0x80(%rsp)
movq %rsi, 0x78(%rsp)
movq %rdx, 0x70(%rsp)
movq 0x80(%rsp), %rax
movq %rax, 0x8(%rsp)
leaq 0x32bb(%rip), %rdi      # 0x61b8
leaq 0x32bf(%rip), %rsi      # 0x61c3
callq 0x1150
movq %rax, %rcx
movq 0x8(%rsp), %rax
movq %rcx, 0x68(%rsp)
movq 0x68(%rsp), %rdi
movl 0x41c(%rax), %edx
movl 0x420(%rax), %ecx
movl 0x424(%rax), %r8d
leaq 0x3290(%rip), %rsi      # 0x61c5
movb $0x0, %al
callq 0x1190
movl $0x0, 0x64(%rsp)
movq 0x8(%rsp), %rcx
movl 0x64(%rsp), %eax
cmpl 0x420(%rcx), %eax
jge 0x311f
movl $0x0, 0x60(%rsp)
movq 0x8(%rsp), %rcx
movl 0x60(%rsp), %eax
cmpl 0x41c(%rcx), %eax
jge 0x310d
movq 0x8(%rsp), %rdi
movl 0x64(%rsp), %esi
movl 0x60(%rsp), %edx
callq 0x4410
cvttsd2si (%rax), %eax
movl %eax, 0x58(%rsp)
movl %eax, 0x54(%rsp)
movl %eax, 0x5c(%rsp)
xorl %eax, %eax
cmpq $0x0, 0x78(%rsp)
movb %al, 0x7(%rsp)
je 0x2fff
movq 0x78(%rsp), %rdi
callq 0x46a0
movq %rax, 0x40(%rsp)
movq 0x78(%rsp), %rdi
callq 0x46d0
movq %rax, 0x38(%rsp)
movq 0x40(%rsp), %rdi
movq 0x38(%rsp), %rsi
leaq 0x64(%rsp), %rdx
callq 0x4640
movq %rax, 0x48(%rsp)
movq 0x78(%rsp), %rdi
callq 0x46d0
movq %rax, 0x30(%rsp)
leaq 0x48(%rsp), %rdi
leaq 0x30(%rsp), %rsi
callq 0x4600
movb %al, 0x7(%rsp)
movb 0x7(%rsp), %al
testb $0x1, %al
jne 0x3009
jmp 0x3028
movq 0x8(%rsp), %rax
movl $0x0, 0x58(%rsp)
movl $0x0, 0x54(%rsp)
movl 0x424(%rax), %eax
movl %eax, 0x5c(%rsp)
xorl %eax, %eax
cmpq $0x0, 0x70(%rsp)
movb %al, 0x6(%rsp)
je 0x308f
movq 0x70(%rsp), %rdi
callq 0x46a0
movq %rax, 0x20(%rsp)
movq 0x70(%rsp), %rdi
callq 0x46d0
movq %rax, 0x18(%rsp)
movq 0x20(%rsp), %rdi
movq 0x18(%rsp), %rsi
leaq 0x60(%rsp), %rdx
callq 0x4640
movq %rax, 0x28(%rsp)
movq 0x70(%rsp), %rdi
callq 0x46d0
movq %rax, 0x10(%rsp)
leaq 0x28(%rsp), %rdi
leaq 0x10(%rsp), %rsi
callq 0x4600
movb %al, 0x6(%rsp)
movb 0x6(%rsp), %al
testb $0x1, %al
jne 0x3099
jmp 0x30d3
movl $0x0, 0x58(%rsp)
cmpl $0x0, 0x54(%rsp)
je 0x30af
xorl %eax, %eax
movl %eax, (%rsp)
jmp 0x30bd
movq 0x8(%rsp), %rax
movl 0x424(%rax), %eax
movl %eax, (%rsp)
movq 0x8(%rsp), %rax
movl (%rsp), %ecx
movl %ecx, 0x5c(%rsp)
movl 0x424(%rax), %eax
movl %eax, 0x54(%rsp)
movl 0x5c(%rsp), %edi
movq 0x68(%rsp), %rsi
callq 0x11f0
movl 0x54(%rsp), %edi
movq 0x68(%rsp), %rsi
callq 0x11f0
movl 0x58(%rsp), %edi
movq 0x68(%rsp), %rsi
callq 0x11f0
movl 0x60(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x60(%rsp)
jmp 0x2f61
jmp 0x310f
movl 0x64(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x64(%rsp)
jmp 0x2f44
movq 0x68(%rsp), %rdi
callq 0x1110
addq $0x88, %rsp
retq
nopw %cs:(%rax,%rax)
nopl (%rax,%rax)