// File: king1600[P]cordpp/./include/json.h
// Function: nlohmann::detail::lexer<nlohmann::basic_json<std::map, std::vector, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, bool, long, unsigned long, double, std::allocator, nlohmann::adl_serializer>>::get_token_string() const
std::string get_token_string() const
    {
        // get the raw byte sequence of the last token
        std::string s = ia->read(start_pos, chars_read - start_pos);

        // escape control characters
        std::string result;
        for (auto c : s)
        {
            if (c == '\0' or c == std::char_traits<char>::eof())
            {
                // ignore EOF
                continue;
            }
            else if ('\x00' <= c and c <= '\x1f')
            {
                // escape control characters
                std::stringstream ss;
                ss << "<U+" << std::setw(4) << std::uppercase << std::setfill('0')
                   << std::hex << static_cast<int>(c) << ">";
                result += ss.str();
            }
            else
            {
                // add character as is
                result.push_back(c);
            }
        }

        return result;
    }

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x280, %rsp            # imm = 0x280
movq %rdi, -0x220(%rbp)
movq %rdi, %rax
movq %rax, -0x230(%rbp)
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x10(%rbp), %rdi
movq %rdi, -0x228(%rbp)
callq 0x47620
movq %rax, %rsi
movq -0x228(%rbp), %rax
movq 0x20(%rax), %rdx
movq 0x18(%rax), %rcx
subq 0x20(%rax), %rcx
movq (%rsi), %rax
leaq -0x30(%rbp), %rdi
callq *0x8(%rax)
movq -0x220(%rbp), %rdi
movb $0x0, -0x31(%rbp)
callq 0xc4e0
leaq -0x30(%rbp), %rax
movq %rax, -0x40(%rbp)
movq -0x40(%rbp), %rdi
callq 0xc670
movq %rax, -0x48(%rbp)
movq -0x40(%rbp), %rdi
callq 0xc740
movq %rax, -0x50(%rbp)
leaq -0x48(%rbp), %rdi
leaq -0x50(%rbp), %rsi
callq 0x496f0
testb $0x1, %al
jne 0x48d1c
jmp 0x48f32
leaq -0x48(%rbp), %rdi
callq 0x49730
movb (%rax), %al
movb %al, -0x51(%rbp)
movsbl -0x51(%rbp), %eax
cmpl $0x0, %eax
je 0x48d4e
movsbl -0x51(%rbp), %eax
movl %eax, -0x234(%rbp)
callq 0x18d90
movl %eax, %ecx
movl -0x234(%rbp), %eax
cmpl %ecx, %eax
jne 0x48d53
jmp 0x48f24
movsbl -0x51(%rbp), %ecx
xorl %eax, %eax
cmpl %ecx, %eax
jg 0x48f0c
movsbl -0x51(%rbp), %eax
cmpl $0x1f, %eax
jg 0x48f0c
leaq -0x1e0(%rbp), %rdi
callq 0xc470
jmp 0x48d7c
leaq -0x1d0(%rbp), %rdi
leaq 0x4a0c8(%rip), %rsi     # 0x92e52
callq 0xc7e0
movq %rax, -0x240(%rbp)
jmp 0x48d98
movl $0x4, %edi
callq 0x49750
movl %eax, -0x244(%rbp)
jmp 0x48daa
movq -0x240(%rbp), %rdi
movl -0x244(%rbp), %eax
movl %eax, -0x1f0(%rbp)
movl -0x1f0(%rbp), %esi
callq 0xc700
movq %rax, -0x250(%rbp)
jmp 0x48dd1
movq -0x250(%rbp), %rdi
leaq 0x991(%rip), %rsi       # 0x49770
callq 0xcf90
movq %rax, -0x258(%rbp)
jmp 0x48ded
movl $0x30, %edi
callq 0x497a0
movb %al, -0x259(%rbp)
jmp 0x48dff
movq -0x258(%rbp), %rdi
movb -0x259(%rbp), %al
movb %al, -0x1f1(%rbp)
movzbl -0x1f1(%rbp), %esi
callq 0xc990
movq %rax, -0x268(%rbp)
jmp 0x48e27
movq -0x268(%rbp), %rdi
leaq 0x98b(%rip), %rsi       # 0x497c0
callq 0xcf90
movq %rax, -0x270(%rbp)
jmp 0x48e43
movq -0x270(%rbp), %rdi
movsbl -0x51(%rbp), %esi
callq 0xc4a0
movq %rax, -0x278(%rbp)
jmp 0x48e5c
movq -0x278(%rbp), %rdi
leaq 0x4880a(%rip), %rsi     # 0x91674
callq 0xc7e0
jmp 0x48e71
leaq -0x218(%rbp), %rdi
leaq -0x1e0(%rbp), %rsi
callq 0xc940
jmp 0x48e86
movq -0x220(%rbp), %rdi
leaq -0x218(%rbp), %rsi
callq 0xc100
jmp 0x48e9b
leaq -0x218(%rbp), %rdi
callq 0xcfb8
leaq -0x1e0(%rbp), %rdi
callq 0xc550
jmp 0x48f20
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1e8(%rbp)
movl %eax, -0x1ec(%rbp)
jmp 0x48f61
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1e8(%rbp)
movl %eax, -0x1ec(%rbp)
jmp 0x48efe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1e8(%rbp)
movl %eax, -0x1ec(%rbp)
leaq -0x218(%rbp), %rdi
callq 0xcfb8
leaq -0x1e0(%rbp), %rdi
callq 0xc550
jmp 0x48f61
movq -0x220(%rbp), %rdi
movsbl -0x51(%rbp), %esi
callq 0xcf00
jmp 0x48f1e
jmp 0x48f20
jmp 0x48f22
jmp 0x48f24
leaq -0x48(%rbp), %rdi
callq 0x497f0
jmp 0x48d06
movb $0x1, -0x31(%rbp)
testb $0x1, -0x31(%rbp)
jne 0x48f48
movq -0x220(%rbp), %rdi
callq 0xcfb8
leaq -0x30(%rbp), %rdi
callq 0xcfb8
movq -0x230(%rbp), %rax
addq $0x280, %rsp            # imm = 0x280
popq %rbp
retq
movq -0x220(%rbp), %rdi
callq 0xcfb8
leaq -0x30(%rbp), %rdi
callq 0xcfb8
movq -0x1e8(%rbp), %rdi
callq 0xc8c0
nopw %cs:(%rax,%rax)
nopl (%rax)