// File: TBody[P]atomicpp/atomicpp/ExternalModules/json.hpp
// Function: 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>::lexer::lexer(std::istream&)
explicit lexer(std::istream& s)
            : m_stream(&s), m_line_buffer()
        {
            // immediately abort if stream is erroneous
            if (s.fail())
            {
                JSON_THROW(std::invalid_argument("stream error"));
            }

            // fill buffer
            fill_line_buffer();

            // skip UTF-8 byte-order mark
            if (m_line_buffer.size() >= 3 and m_line_buffer.substr(0, 3) == "\xEF\xBB\xBF")
            {
                m_line_buffer[0] = ' ';
                m_line_buffer[1] = ' ';
                m_line_buffer[2] = ' ';
            }
        }

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x90, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x8(%rbp), %rdi
movq %rdi, -0x50(%rbp)
movq -0x10(%rbp), %rax
movq %rax, (%rdi)
addq $0x8, %rdi
movq %rdi, -0x60(%rbp)
callq 0x44e0
movq -0x50(%rbp), %rdi
addq $0x28, %rdi
movq %rdi, -0x58(%rbp)
callq 0x44e0
movq -0x50(%rbp), %rax
movq $0x0, 0x48(%rax)
movq $0x0, 0x50(%rax)
movq $0x0, 0x58(%rax)
movq $0x0, 0x60(%rax)
movq $0x0, 0x68(%rax)
movl $0xf, 0x70(%rax)
movq -0x10(%rbp), %rdi
movq (%rdi), %rax
movq -0x18(%rax), %rax
addq %rax, %rdi
callq 0x4030
movb %al, -0x42(%rbp)
jmp 0x950b
movb -0x42(%rbp), %al
testb $0x1, %al
jne 0x9514
jmp 0x957d
movl $0x10, %edi
callq 0x41b0
movq %rax, %rdi
movq %rdi, %rax
movq %rax, -0x68(%rbp)
leaq 0x2d497(%rip), %rsi     # 0x369c6
callq 0x4630
jmp 0x9536
movq -0x68(%rbp), %rdi
movq 0x45a97(%rip), %rsi     # 0x4efd8
movq 0x45a78(%rip), %rdx     # 0x4efc0
callq 0x45b0
jmp 0x96b2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
jmp 0x9697
movq -0x68(%rbp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
callq 0x42b0
jmp 0x9697
movq -0x50(%rbp), %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x9750
jmp 0x958c
movq -0x50(%rbp), %rdi
addq $0x8, %rdi
callq 0x4280
movq %rax, %rcx
movb $0x0, -0x41(%rbp)
xorl %eax, %eax
cmpq $0x3, %rcx
movb %al, -0x69(%rbp)
jb 0x95e8
movq -0x50(%rbp), %rsi
addq $0x8, %rsi
xorl %eax, %eax
movl %eax, %edx
leaq -0x40(%rbp), %rdi
movl $0x3, %ecx
callq 0x43d0
jmp 0x95c7
movb $0x1, -0x41(%rbp)
leaq 0x2d401(%rip), %rsi     # 0x369d3
leaq -0x40(%rbp), %rdi
callq 0x9ad0
movb %al, -0x6a(%rbp)
jmp 0x95e0
movb -0x6a(%rbp), %al
movb %al, -0x69(%rbp)
jmp 0x95e8
movb -0x69(%rbp), %al
movb %al, -0x6b(%rbp)
testb $0x1, -0x41(%rbp)
jne 0x95f6
jmp 0x95ff
leaq -0x40(%rbp), %rdi
callq 0x4220
movb -0x6b(%rbp), %al
testb $0x1, %al
jne 0x960b
jmp 0x968e
movq -0x50(%rbp), %rdi
addq $0x8, %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x4690
movq %rax, -0x78(%rbp)
jmp 0x9622
movq -0x50(%rbp), %rdi
movq -0x78(%rbp), %rax
movb $0x20, (%rax)
addq $0x8, %rdi
movl $0x1, %esi
callq 0x4690
movq %rax, -0x80(%rbp)
jmp 0x9641
movq -0x50(%rbp), %rdi
movq -0x80(%rbp), %rax
movb $0x20, (%rax)
addq $0x8, %rdi
movl $0x2, %esi
callq 0x4690
movq %rax, -0x88(%rbp)
jmp 0x9663
movq -0x88(%rbp), %rax
movb $0x20, (%rax)
jmp 0x968e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
testb $0x1, -0x41(%rbp)
jne 0x9683
jmp 0x968c
leaq -0x40(%rbp), %rdi
callq 0x4220
jmp 0x9697
addq $0x90, %rsp
popq %rbp
retq
movq -0x58(%rbp), %rdi
callq 0x4220
movq -0x60(%rbp), %rdi
callq 0x4220
movq -0x18(%rbp), %rdi
callq 0x45e0
nopw %cs:(%rax,%rax)
nopl (%rax)