// File: /workspace/github_cpp_makefile_star2_O1/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 0x3389(%rip), %rsi      # 0xa00f
leaq 0x3391(%rip), %rdx      # 0xa01e
leaq 0x90(%rsp), %rdi
callq 0x4950
movl 0x28(%rbx), %edi
cmpl $0xe, %edi
jne 0x6cf4
movq 0x88(%rbx), %rsi
leaq 0xb0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3100
leaq 0x335d(%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 0x6d4e
movups (%rcx), %xmm0
movups %xmm0, (%r14)
jmp 0x6d5b
callq 0x70d8
leaq 0x30(%rsp), %rdi
leaq 0x50(%rsp), %rdx
movq %rax, %rsi
callq 0x3100
leaq 0x331c(%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 0x6ddd
movups (%rcx), %xmm0
movups %xmm0, (%r14)
jmp 0x6dea
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 0x656c
movq 0x50(%rsp), %rcx
movq 0x58(%rsp), %r8
movq 0x78(%rsp), %rdx
leaq (%rdx,%r8), %rax
movl $0xf, %esi
cmpq %r14, %rcx
je 0x6d9f
movq 0x60(%rsp), %rsi
leaq 0x80(%rsp), %r12
cmpq %rsi, %rax
jbe 0x6dc9
movl $0xf, %esi
cmpq %r12, 0x70(%rsp)
je 0x6dc0
movq 0x80(%rsp), %rsi
cmpq %rsi, %rax
jbe 0x6ef4
movq 0x70(%rsp), %rsi
leaq 0x50(%rsp), %rdi
callq 0x30a0
jmp 0x6f02
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 0x6e28
callq 0x3220
leaq 0x40(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x6e3b
callq 0x3220
movl 0xb4(%rbx), %edi
testl %edi, %edi
jne 0x6e81
movl $0x28, %edi
callq 0x3130
movq %rax, %r14
movq 0x48(%rbx), %rdx
leaq 0x90(%rsp), %rcx
movq %rax, %rdi
movl $0x65, %esi
callq 0x70f6
leaq 0x6e66(%rip), %rsi      # 0xdcd8
leaq 0x9d3(%rip), %rdx       # 0x784c
movq %r14, %rdi
callq 0x3370
callq 0x70d8
leaq 0x30(%rsp), %rdi
leaq 0x50(%rsp), %rdx
movq %rax, %rsi
callq 0x3100
leaq 0x319b(%rip), %rsi      # 0xa03a
leaq 0x10(%rsp), %rdi
leaq 0x30(%rsp), %rdx
callq 0x64fb
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 0x6ed8
callq 0x3220
leaq 0x40(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x6e45
callq 0x3220
jmp 0x6e45
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 0x6f1f
movups (%rcx), %xmm0
movups %xmm0, (%rdx)
jmp 0x6f2c
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 0x30dc(%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 0x6f7c
movups (%rcx), %xmm0
movups %xmm0, (%r13)
jmp 0x6f89
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 0x6fc7
callq 0x3220
leaq 0x40(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x6fda
callq 0x3220
movq 0x70(%rsp), %rdi
cmpq %r12, %rdi
je 0x6fe9
callq 0x3220
movq 0x50(%rsp), %rdi
cmpq %r14, %rdi
je 0x6ff8
callq 0x3220
leaq 0xc0(%rsp), %rax
jmp 0x6e2d
movq %rax, %rbx
leaq 0x20(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
jne 0x7078
jmp 0x7096
movq %rax, %rbx
movq 0x10(%rsp), %rdi
cmpq %r13, %rdi
je 0x7031
callq 0x3220
jmp 0x7031
jmp 0x7093
movq %rax, %rbx
leaq 0x40(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x705a
callq 0x3220
jmp 0x705a
jmp 0x70ba
jmp 0x70ba
movq %rax, %rbx
movq %r14, %rdi
callq 0x31a0
jmp 0x70bd
movq %rax, %rbx
movq 0x70(%rsp), %rdi
cmpq %r12, %rdi
je 0x7082
callq 0x3220
jmp 0x7082
movq %rax, %rbx
movq 0x10(%rsp), %rdi
cmpq %r14, %rdi
je 0x7096
callq 0x3220
jmp 0x7096
movq %rax, %rbx
movq 0x50(%rsp), %rdi
cmpq %r14, %rdi
je 0x70a0
callq 0x3220
jmp 0x70a0
movq %rax, %rbx
leaq 0x40(%rsp), %rax
jmp 0x70a8
movq %rax, %rbx
leaq 0xc0(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x70bd
callq 0x3220
jmp 0x70bd
jmp 0x70ba
movq %rax, %rbx
movq 0x90(%rsp), %rdi
cmpq %r15, %rdi
je 0x70cf
callq 0x3220
movq %rbx, %rdi
callq 0x3390
nop