// File: /workspace/github_cpp_makefile_star2_O3/ushitora-anqou[P]femtoyaml/./femtoyaml.hpp
// Function: femtoyaml::detail::tokenizer::do_tokenize()
void do_tokenize()
    {
        while (true) {
            st_.skip_ws();

            unroll_indent(st_.column());

            int ch = st_.peek();

            switch (ch) {
            case EOF:
                goto eof;

            case '-':
                if (!is_blankz(st_.peek(1))) break;

                roll_indent<tk_block_sequence_start>(st_.column());
                st_.next();  // skip '-'
                tks_.push_back(tk_block_entry{});

                continue;

            case ':': {
                if (!is_blankz(st_.peek(1))) break;

                auto key = tks_.back();
                tks_.pop_back();

                roll_indent<tk_block_mapping_start>(simple_key_column_);
                st_.next();  // skip ':'
                tks_.push_back(tk_key{});
                tks_.push_back(key);
                tks_.push_back(tk_value{});

                continue;
            }
            }

            simple_key_column_ = st_.column();
            tks_.push_back(fetch_plain_scalar());
        }

    eof:
        unroll_indent(-1);
        tks_.push_back(tk_eof{});
    }

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x58, %rsp
movq %rdi, %r14
leaq 0x8(%rdi), %rbx
leaq -0x68(%rbp), %r13
leaq -0x40(%rbp), %r12
leaq -0x78(%rbp), %r15
movq (%r14), %rdi
callq 0x495c
movq (%r14), %rax
movl 0x58(%rax), %esi
movq %r14, %rdi
callq 0x499c
movq (%r14), %rdi
xorl %esi, %esi
callq 0x4a0e
cmpl $0x2d, %eax
je 0x47ef
cmpl $0x3a, %eax
je 0x4748
cmpl $-0x1, %eax
jne 0x4854
jmp 0x48dc
movq (%r14), %rdi
movl $0x1, %esi
callq 0x4a0e
cmpl $0x20, %eax
je 0x4763
cmpl $0xa, %eax
jne 0x4854
movq 0x10(%r14), %rsi
addq $-0x28, %rsi
movq %r15, %rdi
callq 0x542a
movq 0x10(%r14), %rdi
addq $-0x28, %rdi
movq %rdi, 0x10(%r14)
callq 0x4b54
movl 0x24(%r14), %esi
movq %r14, %rdi
callq 0x4b8c
movq (%r14), %r13
movq %r13, %rdi
callq 0x5120
movl 0x58(%r13), %ecx
incl %ecx
cmpl $0xa, %eax
movl $0x0, %eax
cmovel %eax, %ecx
movl %ecx, 0x58(%r13)
movb $0x6, -0x30(%rbp)
movq %rbx, %rdi
leaq -0x50(%rbp), %r13
movq %r13, %rsi
callq 0x51a4
movq %r13, %rdi
callq 0x4b54
movq %rbx, %rdi
movq %r15, %rsi
callq 0x4c0c
movb $0x7, -0x30(%rbp)
movq %rbx, %rdi
movq %r13, %rsi
callq 0x51a4
movq %r13, %rdi
callq 0x4b54
jmp 0x4843
movq (%r14), %rdi
movl $0x1, %esi
callq 0x4a0e
cmpl $0x20, %eax
je 0x4806
cmpl $0xa, %eax
jne 0x4854
movq (%r14), %rax
movl 0x58(%rax), %esi
movq %r14, %rdi
callq 0x4ad4
movq (%r14), %r13
movq %r13, %rdi
callq 0x5120
movl 0x58(%r13), %ecx
incl %ecx
cmpl $0xa, %eax
movl $0x0, %eax
cmovel %eax, %ecx
movl %ecx, 0x58(%r13)
movb $0x4, -0x58(%rbp)
movq %rbx, %rdi
movq %r15, %rsi
callq 0x51a4
movq %r15, %rdi
callq 0x4b54
leaq -0x68(%rbp), %r13
jmp 0x470c
movq (%r14), %rax
movl 0x58(%rax), %eax
movl %eax, 0x24(%r14)
leaq -0x50(%rbp), %rdi
movq %r14, %rsi
callq 0x4c48
movq %r13, -0x78(%rbp)
movq -0x50(%rbp), %rax
cmpq %r12, %rax
je 0x4885
movq %rax, -0x78(%rbp)
movq -0x40(%rbp), %rax
movq %rax, -0x68(%rbp)
jmp 0x488f
movups (%r12), %xmm0
movups %xmm0, (%r13)
movq -0x48(%rbp), %rax
movq %rax, -0x70(%rbp)
movq %r12, -0x50(%rbp)
movq $0x0, -0x48(%rbp)
movb $0x0, -0x40(%rbp)
movb $0x1, -0x58(%rbp)
movq %rbx, %rdi
movq %r15, %rsi
callq 0x51a4
movq %r15, %rdi
callq 0x4b54
movq -0x50(%rbp), %rdi
cmpq %r12, %rdi
je 0x470c
movq -0x40(%rbp), %rsi
incq %rsi
callq 0x3180
jmp 0x470c
movq %r14, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
callq 0x499c
leaq -0x78(%rbp), %rsi
movb $0x0, 0x20(%rsi)
movq %rbx, %rdi
callq 0x51a4
leaq -0x78(%rbp), %rdi
callq 0x4b54
addq $0x58, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x4948
jmp 0x4917
jmp 0x4948
movq %rax, %rbx
leaq -0x50(%rbp), %rdi
callq 0x4b54
jmp 0x494b
movq %rax, %rbx
leaq -0x78(%rbp), %rdi
callq 0x4b54
movq -0x50(%rbp), %rdi
cmpq %r12, %rdi
je 0x4954
movq -0x40(%rbp), %rsi
incq %rsi
callq 0x3180
jmp 0x4954
movq %rax, %rbx
leaq -0x78(%rbp), %rdi
callq 0x4b54
movq %rbx, %rdi
callq 0x32a0