// File: Konano[P]UselessDatabase/./json.hpp
// Function: nlohmann::detail::iter_impl<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>>::operator->() const
pointer operator->() const
    {
        assert(m_object != nullptr);

        switch (m_object->m_type)
        {
            case value_t::object:
            {
                assert(m_it.object_iterator != m_object->m_value.object->end());
                return &(m_it.object_iterator->second);
            }

            case value_t::array:
            {
                assert(m_it.array_iterator != m_object->m_value.array->end());
                return &*m_it.array_iterator;
            }

            default:
            {
                if (JSON_HEDLEY_LIKELY(m_it.primitive_iterator.is_begin()))
                {
                    return m_object;
                }

                JSON_THROW(invalid_iterator::create(214, "cannot get value"));
            }
        }
    }

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x90, %rsp
movq %rdi, -0x10(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x60(%rbp)
cmpq $0x0, (%rax)
je 0x2b82f
jmp 0x2b84e
leaq 0x56034(%rip), %rdi     # 0x8186a
leaq 0x53304(%rip), %rsi     # 0x7eb41
movl $0x2571, %edx           # imm = 0x2571
leaq 0x5625a(%rip), %rcx     # 0x81aa3
callq 0x6350
movq -0x60(%rbp), %rax
movq (%rax), %rax
movb (%rax), %al
movb %al, -0x61(%rbp)
subb $0x1, %al
je 0x2b86c
jmp 0x2b860
movb -0x61(%rbp), %al
subb $0x2, %al
je 0x2b8d9
jmp 0x2b94a
movq -0x60(%rbp), %rax
movq %rax, %rcx
addq $0x8, %rcx
movq %rcx, -0x70(%rbp)
movq (%rax), %rax
movq 0x8(%rax), %rdi
callq 0x18290
movq -0x70(%rbp), %rdi
movq %rax, -0x18(%rbp)
leaq -0x18(%rbp), %rsi
callq 0x182c0
testb $0x1, %al
jne 0x2b89e
jmp 0x2b8a0
jmp 0x2b8bf
leaq 0x56275(%rip), %rdi     # 0x81b1c
leaq 0x53293(%rip), %rsi     # 0x7eb41
movl $0x2577, %edx           # imm = 0x2577
leaq 0x561e9(%rip), %rcx     # 0x81aa3
callq 0x6350
movq -0x60(%rbp), %rdi
addq $0x8, %rdi
callq 0x2c760
addq $0x20, %rax
movq %rax, -0x8(%rbp)
jmp 0x2ba26
movq -0x60(%rbp), %rax
movq %rax, %rcx
addq $0x8, %rcx
addq $0x8, %rcx
movq %rcx, -0x78(%rbp)
movq (%rax), %rax
movq 0x8(%rax), %rdi
callq 0x15e40
movq -0x78(%rbp), %rdi
movq %rax, -0x20(%rbp)
leaq -0x20(%rbp), %rsi
callq 0x2c780
testb $0x1, %al
jne 0x2b90f
jmp 0x2b911
jmp 0x2b930
leaq 0x5623c(%rip), %rdi     # 0x81b54
leaq 0x53222(%rip), %rsi     # 0x7eb41
movl $0x257d, %edx           # imm = 0x257D
leaq 0x56178(%rip), %rcx     # 0x81aa3
callq 0x6350
movq -0x60(%rbp), %rdi
addq $0x8, %rdi
addq $0x8, %rdi
callq 0x15eb0
movq %rax, -0x8(%rbp)
jmp 0x2ba26
movq -0x60(%rbp), %rdi
addq $0x8, %rdi
addq $0x10, %rdi
callq 0x2c7c0
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x2b965
jmp 0x2b975
movq -0x60(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x8(%rbp)
jmp 0x2ba26
movb $0x1, -0x55(%rbp)
movl $0x20, %edi
callq 0x62a0
movq %rax, -0x88(%rbp)
leaq -0x41(%rbp), %rdi
movq %rdi, -0x80(%rbp)
callq 0x68a0
movq -0x80(%rbp), %rdx
leaq 0x561e8(%rip), %rsi     # 0x81b8a
leaq -0x40(%rbp), %rdi
callq 0xc020
jmp 0x2b9ad
movq -0x88(%rbp), %rdi
movl $0xd6, %esi
leaq -0x40(%rbp), %rdx
callq 0x2c460
jmp 0x2b9c4
movq -0x88(%rbp), %rdi
movb $0x0, -0x55(%rbp)
leaq 0x85022(%rip), %rsi     # 0xb09f8
leaq 0xbd3(%rip), %rdx       # 0x2c5b0
callq 0x6850
jmp 0x2ba3c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x50(%rbp)
movl %eax, -0x54(%rbp)
jmp 0x2ba07
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x50(%rbp)
movl %eax, -0x54(%rbp)
leaq -0x40(%rbp), %rdi
callq 0x6340
leaq -0x41(%rbp), %rdi
callq 0x6530
testb $0x1, -0x55(%rbp)
jne 0x2ba18
jmp 0x2ba24
movq -0x88(%rbp), %rdi
callq 0x63a0
jmp 0x2ba33
movq -0x8(%rbp), %rax
addq $0x90, %rsp
popq %rbp
retq
movq -0x50(%rbp), %rdi
callq 0x6890
nopl (%rax)