// File: /workspace/github_cpp_makefile_star2_O3/SYZYGYfpga[P]syzygy-tools/include/json.hpp
// Function: nlohmann::detail::parser<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>>::throw_exception() const
[[noreturn]] void throw_exception() const
    {
        std::string error_msg = "syntax error - ";
        if (last_token == token_type::parse_error)
        {
            error_msg += std::string(m_lexer.get_error_message()) + "; last read: '" +
                         m_lexer.get_token_string() + "'";
        }
        else
        {
            error_msg += "unexpected " + std::string(lexer_t::token_type_name(last_token));
        }

        if (expected != token_type::uninitialized)
        {
            error_msg += "; expected " + std::string(lexer_t::token_type_name(expected));
        }

        JSON_THROW(parse_error::create(101, m_lexer.get_position(), error_msg));
    }

// Assembly:
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xd0, %rsp
movq %rdi, %rbx
leaq 0xa0(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x33c9(%rip), %rsi      # 0xa00f
leaq 0x33d1(%rip), %rdx      # 0xa01e
leaq 0x90(%rsp), %rdi
callq 0x4a48
movl 0x28(%rbx), %edi
cmpl $0xe, %edi
jne 0x6cb4
movq 0x88(%rbx), %rsi
leaq 0xb0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3100
leaq 0x339d(%rip), %rsi      # 0xa01f
leaq 0xb0(%rsp), %rdi
callq 0x33e0
leaq 0x30(%rbx), %rsi
leaq 0x60(%rsp), %r14
movq %r14, -0x10(%r14)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x6d0e
movups (%rcx), %xmm0
movups %xmm0, (%r14)
jmp 0x6d1b
callq 0x7096
leaq 0x30(%rsp), %rdi
leaq 0x50(%rsp), %rdx
movq %rax, %rsi
callq 0x3100
leaq 0x335c(%rip), %rcx      # 0xa02e
leaq 0x30(%rsp), %rdi
movl $0xb, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x3280
leaq 0x20(%rsp), %r14
movq %r14, -0x10(%r14)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x6d9b
movups (%rcx), %xmm0
movups %xmm0, (%r14)
jmp 0x6da8
movq %rdx, 0x50(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x60(%rsp)
movq 0x8(%rax), %rdx
movq %rdx, 0x58(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x70(%rsp), %rdi
callq 0x652e
movq 0x50(%rsp), %rcx
movq 0x58(%rsp), %r8
movq 0x78(%rsp), %rdx
leaq (%rdx,%r8), %rax
movl $0xf, %edi
cmpq %r14, %rcx
je 0x6d5f
movq 0x60(%rsp), %rdi
leaq 0x80(%rsp), %r12
movq -0x10(%r12), %rsi
cmpq %rdi, %rax
jbe 0x6d8c
movl $0xf, %edi
cmpq %r12, %rsi
je 0x6d83
movq 0x80(%rsp), %rdi
cmpq %rdi, %rax
jbe 0x6eb2
leaq 0x50(%rsp), %rdi
callq 0x30a0
jmp 0x6ec0
movq %rdx, 0x10(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x20(%rsp)
movq 0x8(%rax), %rdx
movq %rdx, 0x18(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x10(%rsp), %rsi
movq 0x18(%rsp), %rdx
leaq 0x90(%rsp), %rdi
callq 0x30a0
movq 0x10(%rsp), %rdi
cmpq %r14, %rdi
je 0x6de6
callq 0x3220
leaq 0x40(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x6df9
callq 0x3220
movl 0xb4(%rbx), %edi
testl %edi, %edi
jne 0x6e3f
movl $0x28, %edi
callq 0x3130
movq %rax, %r14
movq 0x48(%rbx), %rdx
leaq 0x90(%rsp), %rcx
movq %rax, %rdi
movl $0x65, %esi
callq 0x70b4
leaq 0x6ea8(%rip), %rsi      # 0xdcd8
leaq 0x9ad(%rip), %rdx       # 0x77e4
movq %r14, %rdi
callq 0x3370
callq 0x7096
leaq 0x30(%rsp), %rdi
leaq 0x50(%rsp), %rdx
movq %rax, %rsi
callq 0x3100
leaq 0x31dd(%rip), %rsi      # 0xa03a
leaq 0x10(%rsp), %rdi
leaq 0x30(%rsp), %rdx
callq 0x64bd
movq 0x10(%rsp), %rsi
movq 0x18(%rsp), %rdx
leaq 0x90(%rsp), %rdi
callq 0x30a0
leaq 0x20(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x6e96
callq 0x3220
leaq 0x40(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x6e03
callq 0x3220
jmp 0x6e03
leaq 0x70(%rsp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x3280
leaq 0x40(%rsp), %rdx
movq %rdx, -0x10(%rdx)
movq (%rax), %rsi
leaq 0x10(%rax), %rcx
cmpq %rcx, %rsi
jne 0x6edd
movups (%rcx), %xmm0
movups %xmm0, (%rdx)
jmp 0x6eea
movq %rsi, 0x30(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x40(%rsp)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x38(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0x311e(%rip), %rsi      # 0xa02c
leaq 0x30(%rsp), %rdi
callq 0x33e0
leaq 0x20(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x6f3a
movups (%rcx), %xmm0
movups %xmm0, (%r13)
jmp 0x6f47
movq %rdx, 0x10(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x20(%rsp)
movq 0x8(%rax), %rdx
movq %rdx, 0x18(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x10(%rsp), %rsi
movq 0x18(%rsp), %rdx
leaq 0x90(%rsp), %rdi
callq 0x30a0
movq 0x10(%rsp), %rdi
cmpq %r13, %rdi
je 0x6f85
callq 0x3220
leaq 0x40(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x6f98
callq 0x3220
movq 0x70(%rsp), %rdi
cmpq %r12, %rdi
je 0x6fa7
callq 0x3220
movq 0x50(%rsp), %rdi
cmpq %r14, %rdi
je 0x6fb6
callq 0x3220
leaq 0xc0(%rsp), %rax
jmp 0x6deb
movq %rax, %rbx
leaq 0x20(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
jne 0x7036
jmp 0x7054
movq %rax, %rbx
movq 0x10(%rsp), %rdi
cmpq %r13, %rdi
je 0x6fef
callq 0x3220
jmp 0x6fef
jmp 0x7051
movq %rax, %rbx
leaq 0x40(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x7018
callq 0x3220
jmp 0x7018
jmp 0x7078
jmp 0x7078
movq %rax, %rbx
movq %r14, %rdi
callq 0x31a0
jmp 0x707b
movq %rax, %rbx
movq 0x70(%rsp), %rdi
cmpq %r12, %rdi
je 0x7040
callq 0x3220
jmp 0x7040
movq %rax, %rbx
movq 0x10(%rsp), %rdi
cmpq %r14, %rdi
je 0x7054
callq 0x3220
jmp 0x7054
movq %rax, %rbx
movq 0x50(%rsp), %rdi
cmpq %r14, %rdi
je 0x705e
callq 0x3220
jmp 0x705e
movq %rax, %rbx
leaq 0x40(%rsp), %rax
jmp 0x7066
movq %rax, %rbx
leaq 0xc0(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x707b
callq 0x3220
jmp 0x707b
jmp 0x7078
movq %rax, %rbx
movq 0x90(%rsp), %rdi
cmpq %r15, %rdi
je 0x708d
callq 0x3220
movq %rbx, %rdi
callq 0x3390
nop