// File: /workspace/github_cpp_makefile_star2_O2/UTAP[P]APHTTP/utils/response.cpp
// Function: Response::log(bool)
void Response::log(bool showBody) {
  const string NC = "\033[0;39m";
  const string K = "\033[1m";
  const string H = "\033[34;1m";
  const string G = "\033[32m";
  const string R = "\033[31m";
  string log = "";
  log += H + string("------- Response -------") + NC + string("\n");
  log += K + string("Status:\t") + NC + (code == 200 ? G : R) +
         to_string(code) + " " + phrase + NC + string("\n");
  log += K + string("Headers:") + NC + string("\n");
  for (auto it = headers.begin(); !headers.empty() && it != headers.end(); it++)
    log += "  " + urlDecode(it->first) + ": " + urlDecode(it->second) +
           string("\n");
  if (showBody)
    log += K + string("Body:\n") + NC + body + string("\n");
  log += H + string("------------------------") + NC + string("\n");
  cerr << log << endl;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x248, %rsp            # imm = 0x248
movl %esi, %ebx
movq %rdi, %r13
leaq 0xa019(%rip), %rsi      # 0x113d3
leaq -0x160(%rbp), %rdi
leaq -0x188(%rbp), %rdx
callq 0x41a0
leaq 0xa007(%rip), %rsi      # 0x113db
leaq -0x188(%rbp), %rdi
leaq -0x1c8(%rbp), %rdx
callq 0x41a0
leaq 0x9ff2(%rip), %rsi      # 0x113e0
leaq -0x1c8(%rbp), %rdi
leaq -0x268(%rbp), %rdx
callq 0x41a0
leaq 0x9fe0(%rip), %rsi      # 0x113e8
leaq -0x268(%rbp), %r15
leaq -0x248(%rbp), %rdx
movq %r15, %rdi
callq 0x41a0
leaq 0x9fc9(%rip), %rsi      # 0x113ee
leaq -0x248(%rbp), %r12
leaq -0x120(%rbp), %rdx
movq %r12, %rdi
callq 0x41a0
leaq 0xa153(%rip), %rsi      # 0x11595
leaq -0x120(%rbp), %rdi
leaq -0xb0(%rbp), %rdx
callq 0x41a0
leaq 0x9f98(%rip), %rsi      # 0x113f4
leaq -0xd0(%rbp), %rdi
leaq -0xf8(%rbp), %rdx
callq 0x41a0
leaq -0x50(%rbp), %rdi
leaq -0x1c8(%rbp), %rsi
leaq -0xd0(%rbp), %rdx
callq 0x81e8
leaq -0x70(%rbp), %rdi
leaq -0x50(%rbp), %rsi
leaq -0x160(%rbp), %rdx
callq 0x8026
leaq 0xa1bf(%rip), %rsi      # 0x11660
leaq -0x90(%rbp), %rdi
leaq -0x140(%rbp), %rdx
callq 0x41a0
leaq -0xb0(%rbp), %rdi
leaq -0x70(%rbp), %rsi
leaq -0x90(%rbp), %rdx
callq 0x8177
leaq -0x120(%rbp), %rdi
leaq -0xb0(%rbp), %rsi
callq 0x45f0
leaq -0xb0(%rbp), %rdi
callq 0x4638
leaq -0x90(%rbp), %rdi
callq 0x4638
leaq -0x70(%rbp), %rdi
callq 0x4638
leaq -0x50(%rbp), %rdi
callq 0x4638
leaq -0xd0(%rbp), %rdi
callq 0x4638
leaq 0x9ef2(%rip), %rsi      # 0x1140d
leaq -0x228(%rbp), %rdi
leaq -0x2a(%rbp), %rdx
callq 0x41a0
leaq -0x1a8(%rbp), %rdi
leaq -0x188(%rbp), %rsi
leaq -0x228(%rbp), %rdx
callq 0x81e8
leaq -0x140(%rbp), %rdi
leaq -0x1a8(%rbp), %rsi
leaq -0x160(%rbp), %rdx
callq 0x8026
cmpl $0xc8, (%r13)
cmoveq %r15, %r12
leaq -0xf8(%rbp), %rdi
leaq -0x140(%rbp), %rsi
movq %r12, %rdx
callq 0x8026
movl (%r13), %esi
leaq -0x208(%rbp), %rdi
callq 0x66a3
leaq -0x90(%rbp), %rdi
leaq -0xf8(%rbp), %rsi
leaq -0x208(%rbp), %rdx
callq 0x8177
leaq 0xa398(%rip), %rdx      # 0x1194a
leaq -0xd0(%rbp), %rdi
leaq -0x90(%rbp), %rsi
callq 0x7ffd
leaq 0x8(%r13), %rdx
leaq -0x50(%rbp), %rdi
leaq -0xd0(%rbp), %rsi
callq 0x8026
leaq -0x70(%rbp), %rdi
leaq -0x50(%rbp), %rsi
leaq -0x160(%rbp), %rdx
callq 0x8026
leaq 0xa06c(%rip), %rsi      # 0x11660
leaq -0x1e8(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x41a0
leaq -0xb0(%rbp), %rdi
leaq -0x70(%rbp), %rsi
leaq -0x1e8(%rbp), %rdx
callq 0x8177
leaq -0x120(%rbp), %rdi
leaq -0xb0(%rbp), %rsi
callq 0x45f0
leaq -0xb0(%rbp), %rdi
callq 0x4638
leaq -0x1e8(%rbp), %rdi
callq 0x4638
leaq -0x70(%rbp), %rdi
callq 0x4638
leaq -0x50(%rbp), %rdi
callq 0x4638
leaq -0xd0(%rbp), %rdi
callq 0x4638
leaq -0x90(%rbp), %rdi
callq 0x4638
leaq -0x208(%rbp), %rdi
callq 0x4638
leaq -0xf8(%rbp), %rdi
callq 0x4638
leaq -0x140(%rbp), %rdi
callq 0x4638
leaq -0x1a8(%rbp), %rdi
callq 0x4638
leaq -0x228(%rbp), %rdi
callq 0x4638
leaq 0x9d63(%rip), %rsi      # 0x11416
leaq -0xd0(%rbp), %rdi
leaq -0xf8(%rbp), %rdx
callq 0x41a0
leaq -0x50(%rbp), %rdi
leaq -0x188(%rbp), %rsi
leaq -0xd0(%rbp), %rdx
callq 0x81e8
leaq -0x70(%rbp), %rdi
leaq -0x50(%rbp), %rsi
leaq -0x160(%rbp), %rdx
callq 0x8026
leaq 0x9f68(%rip), %rsi      # 0x11660
leaq -0x90(%rbp), %rdi
leaq -0x140(%rbp), %rdx
callq 0x41a0
leaq -0xb0(%rbp), %rdi
leaq -0x70(%rbp), %rsi
leaq -0x90(%rbp), %rdx
callq 0x8177
movl %ebx, -0xd4(%rbp)
leaq -0x120(%rbp), %rdi
leaq -0xb0(%rbp), %rsi
callq 0x45f0
leaq -0xb0(%rbp), %rdi
callq 0x4638
leaq -0x90(%rbp), %rdi
callq 0x4638
leaq -0x70(%rbp), %rdi
callq 0x4638
leaq -0x50(%rbp), %rdi
callq 0x4638
leaq -0xd0(%rbp), %rbx
movq %rbx, %rdi
callq 0x4638
movq 0x60(%r13), %r15
movq %r13, -0x100(%rbp)
leaq 0x50(%r13), %rax
movq %rax, -0x168(%rbp)
leaq -0xf8(%rbp), %r12
leaq -0x140(%rbp), %r13
movq -0x100(%rbp), %rax
cmpq $0x0, 0x70(%rax)
je 0x7894
cmpq -0x168(%rbp), %r15
je 0x7894
leaq 0x20(%r15), %rsi
leaq -0x90(%rbp), %r14
movq %r14, %rdi
callq 0xb31a
movq %rbx, %rdi
leaq 0xa175(%rip), %rsi      # 0x11949
movq %r14, %rdx
callq 0x673e
leaq -0x50(%rbp), %rdi
movq %rbx, %rsi
leaq 0x9a01(%rip), %rdx      # 0x111eb
callq 0x7ffd
leaq 0x40(%r15), %rsi
movq %r12, %rdi
callq 0xb31a
leaq -0x70(%rbp), %rdi
leaq -0x50(%rbp), %rsi
movq %r12, %rdx
callq 0x8177
movq %r13, %rdi
leaq 0x9e4b(%rip), %rsi      # 0x11660
leaq -0x1a8(%rbp), %rdx
callq 0x41a0
leaq -0xb0(%rbp), %r14
movq %r14, %rdi
leaq -0x70(%rbp), %rsi
movq %r13, %rdx
callq 0x8177
leaq -0x120(%rbp), %rdi
movq %r14, %rsi
callq 0x45f0
movq %r14, %rdi
callq 0x4638
movq %r13, %rdi
callq 0x4638
leaq -0x70(%rbp), %rdi
callq 0x4638
movq %r12, %rdi
callq 0x4638
leaq -0x50(%rbp), %rdi
callq 0x4638
movq %rbx, %rdi
callq 0x4638
leaq -0x90(%rbp), %rdi
callq 0x4638
movq %r15, %rdi
callq 0x4280
movq %rax, %r15
jmp 0x7798
cmpb $0x0, -0xd4(%rbp)
je 0x798d
leaq 0x9b77(%rip), %rsi      # 0x1141f
leaq -0x90(%rbp), %rdi
leaq -0x140(%rbp), %rdx
callq 0x41a0
leaq -0xd0(%rbp), %rdi
leaq -0x188(%rbp), %rsi
leaq -0x90(%rbp), %rdx
callq 0x81e8
movq -0x100(%rbp), %rbx
leaq -0x50(%rbp), %rdi
leaq -0xd0(%rbp), %rsi
leaq -0x160(%rbp), %rdx
callq 0x8026
addq $0x28, %rbx
leaq -0x70(%rbp), %rdi
leaq -0x50(%rbp), %rsi
movq %rbx, %rdx
callq 0x8026
leaq 0x9d52(%rip), %rsi      # 0x11660
leaq -0xf8(%rbp), %rdi
leaq -0x1a8(%rbp), %rdx
callq 0x41a0
leaq -0xb0(%rbp), %rdi
leaq -0x70(%rbp), %rsi
leaq -0xf8(%rbp), %rdx
callq 0x8177
leaq -0x120(%rbp), %rdi
leaq -0xb0(%rbp), %rsi
callq 0x45f0
leaq -0xb0(%rbp), %rdi
callq 0x4638
leaq -0xf8(%rbp), %rdi
callq 0x4638
leaq -0x70(%rbp), %rdi
callq 0x4638
leaq -0x50(%rbp), %rdi
callq 0x4638
leaq -0xd0(%rbp), %rdi
callq 0x4638
leaq -0x90(%rbp), %rdi
callq 0x4638
leaq 0x9a92(%rip), %rsi      # 0x11426
leaq -0xd0(%rbp), %rdi
leaq -0xf8(%rbp), %rdx
callq 0x41a0
leaq -0x50(%rbp), %rdi
leaq -0x1c8(%rbp), %rsi
leaq -0xd0(%rbp), %rdx
callq 0x81e8
leaq -0x70(%rbp), %rdi
leaq -0x50(%rbp), %rsi
leaq -0x160(%rbp), %rdx
callq 0x8026
leaq 0x9c87(%rip), %rsi      # 0x11660
leaq -0x90(%rbp), %rdi
leaq -0x140(%rbp), %rdx
callq 0x41a0
leaq -0xb0(%rbp), %rdi
leaq -0x70(%rbp), %rsi
leaq -0x90(%rbp), %rdx
callq 0x8177
leaq -0x120(%rbp), %rdi
leaq -0xb0(%rbp), %rsi
callq 0x45f0
leaq -0xb0(%rbp), %rdi
callq 0x4638
leaq -0x90(%rbp), %rdi
callq 0x4638
leaq -0x70(%rbp), %rdi
callq 0x4638
leaq -0x50(%rbp), %rdi
callq 0x4638
leaq -0xd0(%rbp), %rdi
callq 0x4638
movq 0x1059d(%rip), %rdi     # 0x17ff0
leaq -0x120(%rbp), %rsi
callq 0x4300
movq %rax, %rdi
callq 0x4200
leaq -0x120(%rbp), %rdi
callq 0x4638
leaq -0x248(%rbp), %rdi
callq 0x4638
leaq -0x268(%rbp), %rdi
callq 0x4638
leaq -0x1c8(%rbp), %rdi
callq 0x4638
leaq -0x188(%rbp), %rdi
callq 0x4638
leaq -0x160(%rbp), %rdi
callq 0x4638
addq $0x248, %rsp            # imm = 0x248
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %rbx
leaq -0xb0(%rbp), %rdi
callq 0x4638
jmp 0x7ad5
movq %rax, %rbx
leaq -0xf8(%rbp), %rdi
callq 0x4638
jmp 0x7ae6
movq %rax, %rbx
leaq -0x70(%rbp), %rdi
jmp 0x7cb9
jmp 0x7cc0
jmp 0x7c75
jmp 0x7c70
jmp 0x7c9c
jmp 0x7bf7
jmp 0x7c08
jmp 0x7c19
jmp 0x7c27
jmp 0x7c35
jmp 0x7c9c
jmp 0x7bf7
jmp 0x7c08
jmp 0x7c19
jmp 0x7c27
jmp 0x7c35
jmp 0x7c9c
movq %rax, %rbx
leaq -0xb0(%rbp), %rdi
callq 0x4638
jmp 0x7b53
movq %rax, %rbx
leaq -0x1e8(%rbp), %rdi
callq 0x4638
jmp 0x7b64
movq %rax, %rbx
leaq -0x70(%rbp), %rdi
callq 0x4638
jmp 0x7b72
movq %rax, %rbx
leaq -0x50(%rbp), %rdi
callq 0x4638
jmp 0x7b80
movq %rax, %rbx
leaq -0xd0(%rbp), %rdi
callq 0x4638
leaq -0x90(%rbp), %rdi
callq 0x4638
leaq -0x208(%rbp), %rdi
callq 0x4638
leaq -0xf8(%rbp), %rdi
callq 0x4638
leaq -0x140(%rbp), %rdi
callq 0x4638
leaq -0x1a8(%rbp), %rdi
callq 0x4638
leaq -0x228(%rbp), %rdi
jmp 0x7cdf
movq %rax, %rbx
jmp 0x7b8c
movq %rax, %rbx
jmp 0x7b98
movq %rax, %rbx
jmp 0x7ba4
movq %rax, %rbx
jmp 0x7bb0
movq %rax, %rbx
jmp 0x7bbc
movq %rax, %rbx
jmp 0x7bc8
jmp 0x7c9c
movq %rax, %rbx
leaq -0xb0(%rbp), %rdi
callq 0x4638
jmp 0x7c0b
movq %rax, %rbx
leaq -0x90(%rbp), %rdi
callq 0x4638
jmp 0x7c1c
movq %rax, %rbx
leaq -0x70(%rbp), %rdi
callq 0x4638
jmp 0x7c2a
movq %rax, %rbx
leaq -0x50(%rbp), %rdi
callq 0x4638
jmp 0x7c38
movq %rax, %rbx
leaq -0xd0(%rbp), %rdi
jmp 0x7cdf
jmp 0x7c9c
movq %rax, %rbx
jmp 0x7cf0
movq %rax, %rbx
jmp 0x7cfc
movq %rax, %rbx
jmp 0x7d08
movq %rax, %rbx
jmp 0x7d14
movq %rax, %rbx
jmp 0x7d20
jmp 0x7c9c
movq %rax, %rbx
jmp 0x7cd8
movq %rax, %rbx
jmp 0x7ccc
movq %rax, %rbx
leaq -0xb0(%rbp), %rdi
callq 0x4638
jmp 0x7c8e
movq %rax, %rbx
leaq -0x140(%rbp), %rdi
callq 0x4638
jmp 0x7ca9
movq %rax, %rbx
jmp 0x7ce4
movq %rax, %rbx
jmp 0x7cb2
movq %rax, %rbx
leaq -0x70(%rbp), %rdi
callq 0x4638
leaq -0xf8(%rbp), %rdi
callq 0x4638
jmp 0x7cc3
movq %rax, %rbx
leaq -0x50(%rbp), %rdi
callq 0x4638
leaq -0xd0(%rbp), %rdi
callq 0x4638
leaq -0x90(%rbp), %rdi
callq 0x4638
leaq -0x120(%rbp), %rdi
callq 0x4638
leaq -0x248(%rbp), %rdi
callq 0x4638
leaq -0x268(%rbp), %rdi
callq 0x4638
leaq -0x1c8(%rbp), %rdi
callq 0x4638
leaq -0x188(%rbp), %rdi
callq 0x4638
leaq -0x160(%rbp), %rdi
callq 0x4638
movq %rbx, %rdi
callq 0x4580