// File: cqbqdd11519[P]DockerClient/rapidjson/include/rapidjson/reader.h
// Function: void rapidjson::GenericReader<rapidjson::UTF8<char>, rapidjson::UTF8<char>, rapidjson::CrtAllocator>::ParseArray<0u, rapidjson::GenericStringStream<rapidjson::UTF8<char>>, rapidjson::GenericDocument<rapidjson::UTF8<char>, rapidjson::MemoryPoolAllocator<rapidjson::CrtAllocator>, rapidjson::CrtAllocator>>(rapidjson::GenericStringStream<rapidjson::UTF8<char>>&, rapidjson::GenericDocument<rapidjson::UTF8<char>, rapidjson::MemoryPoolAllocator<rapidjson::CrtAllocator>, rapidjson::CrtAllocator>&)
void ParseArray(InputStream& is, Handler& handler) {
        RAPIDJSON_ASSERT(is.Peek() == '[');
        is.Take();  // Skip '['

        if (RAPIDJSON_UNLIKELY(!handler.StartArray()))
            RAPIDJSON_PARSE_ERROR(kParseErrorTermination, is.Tell());

        SkipWhitespaceAndComments<parseFlags>(is);
        RAPIDJSON_PARSE_ERROR_EARLY_RETURN_VOID;

        if (Consume(is, ']')) {
            if (RAPIDJSON_UNLIKELY(!handler.EndArray(0))) // empty array
                RAPIDJSON_PARSE_ERROR(kParseErrorTermination, is.Tell());
            return;
        }

        for (SizeType elementCount = 0;;) {
            ParseValue<parseFlags>(is, handler);
            RAPIDJSON_PARSE_ERROR_EARLY_RETURN_VOID;

            ++elementCount;
            SkipWhitespaceAndComments<parseFlags>(is);
            RAPIDJSON_PARSE_ERROR_EARLY_RETURN_VOID;

            if (Consume(is, ',')) {
                SkipWhitespaceAndComments<parseFlags>(is);
                RAPIDJSON_PARSE_ERROR_EARLY_RETURN_VOID;
            }
            else if (Consume(is, ']')) {
                if (RAPIDJSON_UNLIKELY(!handler.EndArray(elementCount)))
                    RAPIDJSON_PARSE_ERROR(kParseErrorTermination, is.Tell());
                return;
            }
            else
                RAPIDJSON_PARSE_ERROR(kParseErrorArrayMissCommaOrSquareBracket, is.Tell());

            if (parseFlags & kParseTrailingCommasFlag) {
                if (is.Peek() == ']') {
                    if (RAPIDJSON_UNLIKELY(!handler.EndArray(elementCount)))
                        RAPIDJSON_PARSE_ERROR(kParseErrorTermination, is.Tell());
                    is.Take();
                    return;
                }
            }
        }
    }

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x28(%rbp)
movq -0x10(%rbp), %rdi
callq 0xebe0
movsbl %al, %eax
cmpl $0x5b, %eax
jne 0x1a2ff
jmp 0x1a31e
leaq 0x63e5(%rip), %rdi      # 0x206eb
leaq 0x548d(%rip), %rsi      # 0x1f79a
movl $0x328, %edx            # imm = 0x328
leaq 0x63e3(%rip), %rcx      # 0x206fc
callq 0xe600
movq -0x10(%rbp), %rdi
callq 0xee40
movq -0x18(%rbp), %rdi
callq 0xe7f0
xorb $-0x1, %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x1a33c
jmp 0x1a3ac
jmp 0x1a33e
jmp 0x1a340
movq -0x28(%rbp), %rdi
callq 0xeb20
xorb $-0x1, %al
testb $0x1, %al
jne 0x1a351
jmp 0x1a353
jmp 0x1a372
leaq 0x542f(%rip), %rdi      # 0x1f789
leaq 0x5439(%rip), %rsi      # 0x1f79a
movl $0x32c, %edx            # imm = 0x32C
leaq 0x638f(%rip), %rcx      # 0x206fc
callq 0xe600
movq -0x10(%rbp), %rdi
callq 0xf330
movq -0x28(%rbp), %rdi
movq %rax, %rdx
movl $0x10, %esi
callq 0xe410
jmp 0x1a38e
movq -0x28(%rbp), %rdi
callq 0xeb20
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x1a3a1
jmp 0x1a3a6
jmp 0x1a62a
jmp 0x1a3a8
jmp 0x1a3aa
jmp 0x1a3ac
movq -0x28(%rbp), %rdi
movq -0x10(%rbp), %rsi
callq 0xeaa0
movq -0x28(%rbp), %rdi
callq 0xeb20
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x1a3cc
jmp 0x1a3d1
jmp 0x1a62a
jmp 0x1a3d3
movq -0x10(%rbp), %rdi
movl $0x5d, %esi
callq 0xe210
testb $0x1, %al
jne 0x1a3ea
jmp 0x1a476
movq -0x18(%rbp), %rdi
xorl %esi, %esi
callq 0xf220
xorb $-0x1, %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x1a401
jmp 0x1a471
jmp 0x1a403
jmp 0x1a405
movq -0x28(%rbp), %rdi
callq 0xeb20
xorb $-0x1, %al
testb $0x1, %al
jne 0x1a416
jmp 0x1a418
jmp 0x1a437
leaq 0x536a(%rip), %rdi      # 0x1f789
leaq 0x5374(%rip), %rsi      # 0x1f79a
movl $0x333, %edx            # imm = 0x333
leaq 0x62ca(%rip), %rcx      # 0x206fc
callq 0xe600
movq -0x10(%rbp), %rdi
callq 0xf330
movq -0x28(%rbp), %rdi
movq %rax, %rdx
movl $0x10, %esi
callq 0xe410
jmp 0x1a453
movq -0x28(%rbp), %rdi
callq 0xeb20
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x1a466
jmp 0x1a46b
jmp 0x1a62a
jmp 0x1a46d
jmp 0x1a46f
jmp 0x1a471
jmp 0x1a62a
movl $0x0, -0x1c(%rbp)
movq -0x28(%rbp), %rdi
movq -0x10(%rbp), %rsi
movq -0x18(%rbp), %rdx
callq 0xe160
movq -0x28(%rbp), %rdi
callq 0xeb20
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x1a4a1
jmp 0x1a4a6
jmp 0x1a62a
jmp 0x1a4a8
movq -0x28(%rbp), %rdi
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
movq -0x10(%rbp), %rsi
callq 0xeaa0
movq -0x28(%rbp), %rdi
callq 0xeb20
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x1a4d1
jmp 0x1a4d6
jmp 0x1a62a
jmp 0x1a4d8
movq -0x10(%rbp), %rdi
movl $0x2c, %esi
callq 0xe210
testb $0x1, %al
jne 0x1a4ec
jmp 0x1a518
movq -0x28(%rbp), %rdi
movq -0x10(%rbp), %rsi
callq 0xeaa0
movq -0x28(%rbp), %rdi
callq 0xeb20
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x1a50c
jmp 0x1a511
jmp 0x1a62a
jmp 0x1a513
jmp 0x1a625
movq -0x10(%rbp), %rdi
movl $0x5d, %esi
callq 0xe210
testb $0x1, %al
jne 0x1a52f
jmp 0x1a5b6
movq -0x18(%rbp), %rdi
movl -0x1c(%rbp), %esi
callq 0xf220
xorb $-0x1, %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x1a547
jmp 0x1a5b4
jmp 0x1a549
jmp 0x1a54b
movq -0x28(%rbp), %rdi
callq 0xeb20
xorb $-0x1, %al
testb $0x1, %al
jne 0x1a55c
jmp 0x1a55e
jmp 0x1a57d
leaq 0x5224(%rip), %rdi      # 0x1f789
leaq 0x522e(%rip), %rsi      # 0x1f79a
movl $0x345, %edx            # imm = 0x345
leaq 0x6184(%rip), %rcx      # 0x206fc
callq 0xe600
movq -0x10(%rbp), %rdi
callq 0xf330
movq -0x28(%rbp), %rdi
movq %rax, %rdx
movl $0x10, %esi
callq 0xe410
jmp 0x1a599
movq -0x28(%rbp), %rdi
callq 0xeb20
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x1a5ac
jmp 0x1a5ae
jmp 0x1a62a
jmp 0x1a5b0
jmp 0x1a5b2
jmp 0x1a5b4
jmp 0x1a62a
jmp 0x1a5b8
jmp 0x1a5ba
movq -0x28(%rbp), %rdi
callq 0xeb20
xorb $-0x1, %al
testb $0x1, %al
jne 0x1a5cb
jmp 0x1a5cd
jmp 0x1a5ec
leaq 0x51b5(%rip), %rdi      # 0x1f789
leaq 0x51bf(%rip), %rsi      # 0x1f79a
movl $0x349, %edx            # imm = 0x349
leaq 0x6115(%rip), %rcx      # 0x206fc
callq 0xe600
movq -0x10(%rbp), %rdi
callq 0xf330
movq -0x28(%rbp), %rdi
movq %rax, %rdx
movl $0x7, %esi
callq 0xe410
jmp 0x1a608
movq -0x28(%rbp), %rdi
callq 0xeb20
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x1a61b
jmp 0x1a61d
jmp 0x1a62a
jmp 0x1a61f
jmp 0x1a621
jmp 0x1a623
jmp 0x1a625
jmp 0x1a47d
addq $0x30, %rsp
popq %rbp
retq