// File: /workspace/github_cpp_makefile_star2_O2/ChanTsune[P]py_string/./py_string.hpp
// Function: bool py::format_parser::format<float, nullptr>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, float, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&)
bool format(std::string r, T target, std::string &dst)
  {
    std::smatch sub;
    std::stringstream stm;
    string str;
    bool result = std::regex_match(r, sub, format_spce_regex);
    if (result) {
      bool negative = target < 0;
      target = negative ? -target : target;
      char fill_char = util::_get_fill_char(sub.str(2));
      size_t pad_size = util::_get_size(sub.str(7));
      size_t dp = 6;
      if (!sub.str(9).empty()) {
        dp = std::stoul(sub.str(9).substr(1));
      }

      if (sub.str(10) == "e") {
        stm << std::scientific << std::setprecision(dp) << target;
        str = stm.str();
      } else if (sub.str(10) == "E") {
        stm << std::scientific << std::uppercase << std::setprecision(dp)
            << target;
        str = stm.str();
      } else if (sub.str(10) == "f" || sub.str(10) == "F") {
        stm << std::fixed << std::setprecision(dp) << target;
        str = stm.str();
      } else if (!sub.str(10).empty()
                 && (sub.str(10) == "g" || sub.str(10) == "n")) {
        stm << std::fixed << std::setprecision(dp) << target;
        str = stm.str();
      } else if (sub.str(10) == "G") {
        stm << std::scientific << std::uppercase << std::setprecision(dp)
            << target;
        str = stm.str();
      } else if (sub.str(10) == "%") {
        stm << std::fixed << std::setprecision(dp) << target * 100 << "%";
        str = stm.str();
      } else {
        dp = util::decimal_place(target);
        dp = dp == 0 ? 1 : dp;
        stm << std::fixed << std::setprecision(dp) << target;
        str = stm.str();
      }

      _sign_format(str, sub.str(4), negative);

      if (!sub.str(6).empty()) {
        fill_char = '0';
        util::__format_eq(str, fill_char, pad_size);
        dst = str;
      } else if (sub.str(3) == "=") {
        util::__format_eq(str, fill_char, pad_size);
        dst = str;
      } else if (sub.str(3) == "<") {
        dst = str.ljust(pad_size, fill_char);
      } else if (sub.str(3) == "^") {
        dst = str.center(pad_size, fill_char);
      } else {
        dst = str.rjust(pad_size, fill_char);
      }
    }
    return result;
  }

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x2c8, %rsp            # imm = 0x2C8
movq %rsi, %r14
movaps %xmm0, -0xe0(%rbp)
movq %rdi, %rbx
xorps %xmm0, %xmm0
movaps %xmm0, -0x60(%rbp)
movaps %xmm0, -0x70(%rbp)
leaq -0x2c8(%rbp), %rdi
callq 0x4240
leaq -0x90(%rbp), %rax
movq %rax, -0x10(%rax)
andq $0x0, -0x8(%rax)
movb $0x0, (%rax)
leaq 0x100dd(%rip), %rdx     # 0x23718
leaq -0x70(%rbp), %rsi
movq %rbx, %rdi
xorl %ecx, %ecx
callq 0x133b4
movl %eax, %ebx
testb %al, %al
je 0x13a06
leaq -0x140(%rbp), %rdi
leaq -0x70(%rbp), %rsi
pushq $0x2
popq %rdx
callq 0x13152
cmpq $0x0, -0x138(%rbp)
je 0x1367c
movq -0x140(%rbp), %rax
movb (%rax), %r13b
jmp 0x1367f
movb $0x20, %r13b
leaq -0x140(%rbp), %rdi
callq 0x4170
leaq -0x120(%rbp), %rdi
leaq -0x70(%rbp), %rsi
pushq $0x7
popq %rdx
callq 0x13152
leaq -0x120(%rbp), %rdi
callq 0x133d4
movq %rax, -0xc8(%rbp)
leaq -0x120(%rbp), %rdi
callq 0x4170
leaq -0x50(%rbp), %rdi
leaq -0x70(%rbp), %rsi
pushq $0x9
popq %rdx
callq 0x13152
leaq -0x50(%rbp), %rdi
movq 0x8(%rdi), %r15
callq 0x4170
testq %r15, %r15
je 0x13733
leaq -0xc0(%rbp), %rdi
leaq -0x70(%rbp), %rsi
pushq $0x9
popq %rdx
callq 0x13152
leaq -0x50(%rbp), %rdi
leaq -0xc0(%rbp), %rsi
pushq $0x1
popq %rdx
pushq $-0x1
popq %rcx
callq 0x4340
leaq -0x50(%rbp), %rdi
pushq $0xa
popq %rdx
xorl %esi, %esi
callq 0x14536
movq %rax, %r12
leaq -0x50(%rbp), %rdi
callq 0x4170
leaq -0xc0(%rbp), %rdi
callq 0x4170
movslq %r12d, %r15
jmp 0x13737
pushq $0x6
popq %r15
movb %r13b, -0x29(%rbp)
leaq -0x50(%rbp), %rdi
leaq -0x70(%rbp), %rsi
pushq $0xa
popq %rdx
callq 0x13152
movaps 0x38ee(%rip), %xmm1     # 0x17040
movaps -0xe0(%rbp), %xmm0
xorps %xmm0, %xmm1
maxss %xmm0, %xmm1
movaps %xmm1, -0x80(%rbp)
leaq 0x4014(%rip), %rsi      # 0x1777f
leaq -0x50(%rbp), %r12
movq %r12, %rdi
callq 0xa554
movl %eax, %r13d
movq %r12, %rdi
callq 0x4170
testb %r13b, %r13b
je 0x137d8
leaq -0x2b8(%rbp), %rdi
movq (%rdi), %rax
movq -0x18(%rax), %rcx
movl $0xfffffefb, %edx       # imm = 0xFFFFFEFB
andl -0x2a0(%rbp,%rcx), %edx
orl $0x100, %edx            # imm = 0x100
movl %edx, -0x2a0(%rbp,%rcx)
movq -0x18(%rax), %rax
movq %r15, -0x2b0(%rbp,%rax)
movaps -0x80(%rbp), %xmm0
callq 0x4270
leaq -0x2b0(%rbp), %rsi
leaq -0x50(%rbp), %rdi
callq 0x44b0
jmp 0x13862
leaq -0x50(%rbp), %rdi
leaq -0x70(%rbp), %rsi
pushq $0xa
popq %rdx
callq 0x13152
leaq 0x3fc9(%rip), %rsi      # 0x177b8
movq %r12, %rdi
callq 0xa554
movl %eax, %r13d
movq %r12, %rdi
callq 0x4170
testb %r13b, %r13b
je 0x1386e
leaq -0x2b8(%rbp), %rdi
movq (%rdi), %rax
movq -0x18(%rax), %rcx
movl $0xfffffefb, %edx       # imm = 0xFFFFFEFB
andl -0x2a0(%rbp,%rcx), %edx
orl $0x100, %edx            # imm = 0x100
movl %edx, -0x2a0(%rbp,%rcx)
movq -0x18(%rax), %rcx
orl $0x4000, -0x2a0(%rbp,%rcx) # imm = 0x4000
movq -0x18(%rax), %rax
movq %r15, -0x2b0(%rbp,%rax)
movaps -0x80(%rbp), %xmm0
callq 0x4270
leaq -0x2b0(%rbp), %rsi
leaq -0x50(%rbp), %rdi
callq 0x44b0
leaq -0xa0(%rbp), %rdi
jmp 0x13937
leaq -0x50(%rbp), %rdi
leaq -0x70(%rbp), %rsi
pushq $0xa
popq %rdx
callq 0x13152
leaq 0x4109(%rip), %rsi      # 0x1798e
leaq -0x50(%rbp), %rdi
callq 0xa554
testb %al, %al
je 0x1389d
leaq -0x50(%rbp), %rdi
callq 0x4170
jmp 0x138e3
leaq -0xc0(%rbp), %rdi
leaq -0x70(%rbp), %rsi
pushq $0xa
popq %rdx
callq 0x13152
leaq 0x4069(%rip), %rsi      # 0x17920
leaq -0xc0(%rbp), %r12
movq %r12, %rdi
callq 0xa554
movl %eax, %r13d
movq %r12, %rdi
callq 0x4170
leaq -0x50(%rbp), %rdi
callq 0x4170
testb %r13b, %r13b
je 0x13ace
leaq -0x2b8(%rbp), %rdi
movq (%rdi), %rax
movq -0x18(%rax), %rcx
movl $0xfffffefb, %edx       # imm = 0xFFFFFEFB
andl -0x2a0(%rbp,%rcx), %edx
orl $0x4, %edx
movl %edx, -0x2a0(%rbp,%rcx)
movq -0x18(%rax), %rax
movq %r15, -0x2b0(%rbp,%rax)
movaps -0x80(%rbp), %xmm0
callq 0x4270
leaq -0x2b0(%rbp), %rsi
leaq -0x50(%rbp), %rdi
callq 0x44b0
leaq -0xa0(%rbp), %rdi
leaq -0x50(%rbp), %r12
movq %r12, %rsi
callq 0x43e0
movq %r12, %rdi
callq 0x4170
leaq -0x100(%rbp), %rdi
leaq -0x70(%rbp), %rsi
pushq $0x4
popq %rdx
callq 0x13152
xorps %xmm0, %xmm0
xorl %edx, %edx
ucomiss -0xe0(%rbp), %xmm0
seta %dl
leaq -0xa0(%rbp), %rdi
leaq -0x100(%rbp), %rsi
callq 0x13eb0
leaq -0x100(%rbp), %rdi
callq 0x4170
leaq -0x50(%rbp), %rdi
leaq -0x70(%rbp), %rsi
pushq $0x6
popq %rdx
callq 0x13152
leaq -0x50(%rbp), %rdi
movq 0x8(%rdi), %r15
callq 0x4170
movb $0x30, %al
testq %r15, %r15
movq -0xc8(%rbp), %r15
jne 0x139e5
leaq -0x50(%rbp), %rdi
leaq -0x70(%rbp), %rsi
pushq $0x3
popq %rdx
callq 0x13152
leaq 0x37e7(%rip), %rsi      # 0x171b1
movq %r12, %rdi
callq 0xa554
movl %eax, %r13d
movq %r12, %rdi
callq 0x4170
testb %r13b, %r13b
je 0x13a3b
movb -0x29(%rbp), %al
movsbl %al, %esi
leaq -0xa0(%rbp), %rdi
movq %r15, %rdx
callq 0x13f22
leaq -0xa0(%rbp), %rsi
movq %r14, %rdi
callq 0x41d0
leaq -0xa0(%rbp), %rdi
callq 0x4170
leaq -0x2c8(%rbp), %rdi
callq 0x4280
leaq -0x70(%rbp), %rdi
callq 0x10b62
movl %ebx, %eax
addq $0x2c8, %rsp            # imm = 0x2C8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq -0x50(%rbp), %rdi
leaq -0x70(%rbp), %rsi
pushq $0x3
popq %rdx
callq 0x13152
leaq 0x40bf(%rip), %rsi      # 0x17b11
movq %r12, %rdi
callq 0xa554
movl %eax, %r13d
movq %r12, %rdi
callq 0x4170
testb %r13b, %r13b
je 0x13a86
movsbl -0x29(%rbp), %ecx
leaq -0x50(%rbp), %rdi
leaq -0xa0(%rbp), %rsi
movq %r15, %rdx
callq 0x1415c
jmp 0x13b40
leaq -0x50(%rbp), %rdi
leaq -0x70(%rbp), %rsi
pushq $0x3
popq %rdx
callq 0x13152
leaq 0x4076(%rip), %rsi      # 0x17b13
movq %r12, %rdi
callq 0xa554
movl %eax, %r13d
movq %r12, %rdi
callq 0x4170
testb %r13b, %r13b
je 0x13b29
movsbl -0x29(%rbp), %ecx
leaq -0x50(%rbp), %rdi
leaq -0xa0(%rbp), %rsi
movq %r15, %rdx
callq 0x14208
jmp 0x13b40
leaq -0x50(%rbp), %rdi
leaq -0x70(%rbp), %rsi
pushq $0xa
popq %rdx
callq 0x13152
cmpq $0x0, -0x48(%rbp)
je 0x13b5c
leaq -0xc0(%rbp), %rdi
leaq -0x70(%rbp), %rsi
pushq $0xa
popq %rdx
callq 0x13152
leaq 0x3e91(%rip), %rsi      # 0x17990
leaq -0xc0(%rbp), %rdi
callq 0xa554
testb %al, %al
je 0x13b6a
leaq -0xc0(%rbp), %rdi
callq 0x4170
leaq -0x50(%rbp), %rdi
callq 0x4170
jmp 0x13bb8
movsbl -0x29(%rbp), %ecx
leaq -0x50(%rbp), %rdi
leaq -0xa0(%rbp), %rsi
movq %r15, %rdx
callq 0x14334
leaq -0x50(%rbp), %r15
movq %r14, %rdi
movq %r15, %rsi
callq 0x43e0
movq %r15, %rdi
callq 0x4170
jmp 0x13a06
leaq -0x50(%rbp), %rdi
callq 0x4170
jmp 0x13c06
leaq -0x2e8(%rbp), %rdi
leaq -0x70(%rbp), %rsi
pushq $0xa
popq %rdx
callq 0x13152
leaq 0x3d0c(%rip), %rsi      # 0x17890
leaq -0x2e8(%rbp), %r12
movq %r12, %rdi
callq 0xa554
movl %eax, %r13d
movq %r12, %rdi
callq 0x4170
leaq -0xc0(%rbp), %rdi
callq 0x4170
leaq -0x50(%rbp), %rdi
callq 0x4170
testb %r13b, %r13b
je 0x13c06
leaq -0x2b8(%rbp), %rdi
movq (%rdi), %rax
movq -0x18(%rax), %rcx
movl $0xfffffefb, %edx       # imm = 0xFFFFFEFB
andl -0x2a0(%rbp,%rcx), %edx
orl $0x4, %edx
movl %edx, -0x2a0(%rbp,%rcx)
movq -0x18(%rax), %rax
movq %r15, -0x2b0(%rbp,%rax)
movaps -0x80(%rbp), %xmm0
callq 0x4270
leaq -0x2b0(%rbp), %rsi
leaq -0x50(%rbp), %rdi
callq 0x44b0
jmp 0x1392c
leaq -0x50(%rbp), %rdi
leaq -0x70(%rbp), %rsi
pushq $0xa
popq %rdx
callq 0x13152
leaq 0x3d05(%rip), %rsi      # 0x17922
leaq -0x50(%rbp), %r12
movq %r12, %rdi
callq 0xa554
movl %eax, %r13d
movq %r12, %rdi
callq 0x4170
testb %r13b, %r13b
je 0x13c99
leaq -0x2b8(%rbp), %rdi
movq (%rdi), %rax
movq -0x18(%rax), %rcx
movl $0xfffffefb, %edx       # imm = 0xFFFFFEFB
andl -0x2a0(%rbp,%rcx), %edx
orl $0x100, %edx            # imm = 0x100
movl %edx, -0x2a0(%rbp,%rcx)
movq -0x18(%rax), %rcx
orl $0x4000, -0x2a0(%rbp,%rcx) # imm = 0x4000
movq -0x18(%rax), %rax
movq %r15, -0x2b0(%rbp,%rax)
movaps -0x80(%rbp), %xmm0
callq 0x4270
leaq -0x2b0(%rbp), %rsi
leaq -0x50(%rbp), %rdi
callq 0x44b0
jmp 0x13862
leaq -0x50(%rbp), %rdi
leaq -0x70(%rbp), %rsi
pushq $0xa
popq %rdx
callq 0x13152
leaq 0x3e53(%rip), %rsi      # 0x17b03
movq %r12, %rdi
callq 0xa554
movl %eax, %r13d
movq %r12, %rdi
callq 0x4170
testb %r13b, %r13b
je 0x13d2d
leaq -0x2b8(%rbp), %rdi
movq (%rdi), %rax
movq -0x18(%rax), %rcx
movl $0xfffffefb, %edx       # imm = 0xFFFFFEFB
andl -0x2a0(%rbp,%rcx), %edx
orl $0x4, %edx
movl %edx, -0x2a0(%rbp,%rcx)
movq -0x18(%rax), %rax
movq %r15, -0x2b0(%rbp,%rax)
movaps -0x80(%rbp), %xmm0
mulss 0x3404(%rip), %xmm0     # 0x17108
callq 0x4270
leaq 0x3df3(%rip), %rsi      # 0x17b03
movq %rax, %rdi
callq 0x42f0
leaq -0x2b0(%rbp), %rsi
leaq -0x50(%rbp), %rdi
callq 0x44b0
jmp 0x13862
movaps -0x80(%rbp), %xmm0
callq 0x146bc
leaq -0x2b8(%rbp), %rdi
movq (%rdi), %rcx
movq -0x18(%rcx), %rdx
movl $0xfffffefb, %esi       # imm = 0xFFFFFEFB
andl -0x2a0(%rbp,%rdx), %esi
orl $0x4, %esi
cmpq $0x1, %rax
adcq $0x0, %rax
movl %esi, -0x2a0(%rbp,%rdx)
movq -0x18(%rcx), %rcx
cltq
movq %rax, -0x2b0(%rbp,%rcx)
movaps -0x80(%rbp), %xmm0
callq 0x4270
leaq -0x2b0(%rbp), %rsi
leaq -0x50(%rbp), %rdi
callq 0x44b0
jmp 0x13862
jmp 0x13e24
jmp 0x13e24
jmp 0x13e24
jmp 0x13e24
movq %rax, %rbx
leaq -0xc0(%rbp), %rdi
callq 0x4170
jmp 0x13dc6
jmp 0x13e24
jmp 0x13e24
jmp 0x13dc3
jmp 0x13e24
jmp 0x13e24
jmp 0x13e24
jmp 0x13e24
jmp 0x13e24
movq %rax, %rbx
leaq -0x50(%rbp), %rdi
jmp 0x13e12
jmp 0x13e24
jmp 0x13e24
jmp 0x13e24
jmp 0x13e24
jmp 0x13e24
jmp 0x13e24
jmp 0x13e24
movq %rax, %rbx
leaq -0x50(%rbp), %rdi
callq 0x4170
jmp 0x13deb
movq %rax, %rbx
leaq -0xc0(%rbp), %rdi
jmp 0x13e12
jmp 0x13e24
jmp 0x13e24
movq %rax, %rbx
leaq -0x100(%rbp), %rdi
jmp 0x13e12
jmp 0x13e24
jmp 0x13e24
movq %rax, %rbx
leaq -0x120(%rbp), %rdi
callq 0x4170
jmp 0x13e27
jmp 0x13e24
jmp 0x13e24
jmp 0x13e24
movq %rax, %rbx
jmp 0x13e3f
movq %rax, %rbx
leaq -0xa0(%rbp), %rdi
callq 0x4170
leaq -0x2c8(%rbp), %rdi
callq 0x4280
leaq -0x70(%rbp), %rdi
callq 0x10b62
movq %rbx, %rdi
callq 0x4540