// File: ClauParser[P]ClauParser/./include/clau_parser.h
// Function: clau_parser::InFileReserver::_Scanning(char*, long, long, long*&, unsigned long&)
static void _Scanning(char* text, int64_t num, const int64_t length,
			int64_t*& token_arr, size_t& _token_arr_size) {

			size_t token_arr_size = 0;

			{

				int64_t token_first = 0;
				int64_t token_last = -1;

				size_t token_arr_count = 0;

				for (int64_t i = 0; i < length; ++i) {
					const char ch = text[i];

					switch (ch) {
					case '\"':
						token_last = i - 1;
						if (token_last - token_first + 1 > 0) {
							token_arr[num + token_arr_count] = Utility::Get(token_first + num, token_last - token_first + 1, text[token_first]);
							token_arr_count++;
						}

						token_first = i;
						token_last = i;

						token_first = i + 1;
						token_last = i + 1;

						{//
							token_arr[num + token_arr_count] = 1;
							token_arr[num + token_arr_count] += Utility::Get(i + num, 1, ch);
							token_arr_count++;
						}
						break;
					case '\\':
					{//
						token_arr[num + token_arr_count] = 1;
						token_arr[num + token_arr_count] += Utility::Get(i + num, 1, ch);
						token_arr_count++;
					}
					break;
					case '\n':
						token_last = i - 1;
						if (token_last - token_first + 1 > 0) {
							token_arr[num + token_arr_count] = Utility::Get(token_first + num, token_last - token_first + 1, text[token_first]);
							token_arr_count++;
						}
						token_first = i + 1;
						token_last = i + 1;

						{//
							token_arr[num + token_arr_count] = 1;
							token_arr[num + token_arr_count] += Utility::Get(i + num, 1, ch);
							token_arr_count++;
						}
						break;
					case '\0':
						token_last = i - 1;
						if (token_last - token_first + 1 > 0) {
							token_arr[num + token_arr_count] = Utility::Get(token_first + num, token_last - token_first + 1, text[token_first]);
							token_arr_count++;
						}
						token_first = i + 1;
						token_last = i + 1;

						{//
							token_arr[num + token_arr_count] = 1;
							token_arr[num + token_arr_count] += Utility::Get(i + num, 1, ch);
							token_arr_count++;
						}
						break;
					case  LoadDataOption::LineComment:
						token_last = i - 1;
						if (token_last - token_first + 1 > 0) {
							token_arr[num + token_arr_count] = Utility::Get(token_first + num, token_last - token_first + 1, text[token_first]);
							token_arr_count++;
						}
						token_first = i + 1;
						token_last = i + 1;

						{//
							token_arr[num + token_arr_count] = 1;
							token_arr[num + token_arr_count] += Utility::Get(i + num, 1, ch);
							token_arr_count++;
						}

						break;
					case ' ':
					case '\t':
					case '\r':
					case '\v':
					case '\f':
						token_last = i - 1;

						//if (token_last - token_first + 1 > 0) {
						token_arr[num + token_arr_count] = Utility::Get(token_first + num, token_last - token_first + 1, text[token_first]);
						token_arr_count += token_last - token_first + 1 > 0 ? 1 : 0;
						//}
						token_first = i + 1;
						token_last = i + 1;

						break;
					case LoadDataOption::Left:
						token_last = i - 1;
						if (token_last - token_first + 1 > 0) {
							token_arr[num + token_arr_count] = Utility::Get(token_first + num, token_last - token_first + 1, text[token_first]);
							token_arr_count++;
						}

						token_first = i;
						token_last = i;

						token_arr[num + token_arr_count] = Utility::Get(token_first + num, token_last - token_first + 1, text[token_first]);
						token_arr_count++;

						token_first = i + 1;
						token_last = i + 1;
						break;
					case LoadDataOption::Right:
						token_last = i - 1;
						if (token_last - token_first + 1 > 0) {
							token_arr[num + token_arr_count] = Utility::Get(token_first + num, token_last - token_first + 1, text[token_first]);
							token_arr_count++;
						}
						token_first = i;
						token_last = i;

						token_arr[num + token_arr_count] = Utility::Get(token_first + num, token_last - token_first + 1, text[token_first]);
						token_arr_count++;

						token_first = i + 1;
						token_last = i + 1;
						break;
					case LoadDataOption::Assignment:
						token_last = i - 1;
						if (token_last - token_first + 1 > 0) {
							token_arr[num + token_arr_count] = Utility::Get(token_first + num, token_last - token_first + 1, text[token_first]);
							token_arr_count++;
						}
						token_first = i;
						token_last = i;

						token_arr[num + token_arr_count] = Utility::Get(token_first + num, token_last - token_first + 1, text[token_first]);
						token_arr_count++;

						token_first = i + 1;
						token_last = i + 1;
						break;
					}

				}

				if (length - 1 - token_first + 1 > 0) {
					token_arr[num + token_arr_count] = Utility::Get(token_first + num, length - 1 - token_first + 1, text[token_first]);
					token_arr_count++;
				}
				token_arr_size = token_arr_count;
			}

			{
				_token_arr_size = token_arr_size;
			}
		}

// Assembly:
subq $0x68, %rsp
movq %rdi, 0x60(%rsp)
movq %rsi, 0x58(%rsp)
movq %rdx, 0x50(%rsp)
movq %rcx, 0x48(%rsp)
movq %r8, 0x40(%rsp)
movq $0x0, 0x38(%rsp)
movq $0x0, 0x30(%rsp)
movq $-0x1, 0x28(%rsp)
movq $0x0, 0x20(%rsp)
movq $0x0, 0x18(%rsp)
movq 0x18(%rsp), %rax
cmpq 0x50(%rsp), %rax
jge 0xfd84
movq 0x60(%rsp), %rax
movq 0x18(%rsp), %rcx
movb (%rax,%rcx), %al
movb %al, 0x17(%rsp)
movsbl 0x17(%rsp), %eax
movl %eax, %ecx
movq %rcx, 0x8(%rsp)
subl $0x7d, %eax
ja 0xfd6f
movq 0x8(%rsp), %rax
leaq 0xcc74(%rip), %rcx      # 0x1c210
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq 0x18(%rsp), %rax
subq $0x1, %rax
movq %rax, 0x28(%rsp)
movq 0x28(%rsp), %rax
subq 0x30(%rsp), %rax
addq $0x1, %rax
cmpq $0x0, %rax
jle 0xf619
movq 0x30(%rsp), %rdi
addq 0x58(%rsp), %rdi
movq 0x28(%rsp), %rsi
subq 0x30(%rsp), %rsi
addq $0x1, %rsi
movq 0x60(%rsp), %rax
movq 0x30(%rsp), %rcx
movsbl (%rax,%rcx), %edx
callq 0xe900
movq %rax, %rdx
movq 0x48(%rsp), %rax
movq (%rax), %rax
movq 0x58(%rsp), %rcx
addq 0x20(%rsp), %rcx
movq %rdx, (%rax,%rcx,8)
movq 0x20(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x20(%rsp)
movq 0x18(%rsp), %rax
movq %rax, 0x30(%rsp)
movq 0x18(%rsp), %rax
movq %rax, 0x28(%rsp)
movq 0x18(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x30(%rsp)
movq 0x18(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x28(%rsp)
movq 0x48(%rsp), %rax
movq (%rax), %rax
movq 0x58(%rsp), %rcx
addq 0x20(%rsp), %rcx
movq $0x1, (%rax,%rcx,8)
movq 0x18(%rsp), %rdi
addq 0x58(%rsp), %rdi
movl $0x1, %esi
movsbl 0x17(%rsp), %edx
callq 0xe900
movq %rax, %rdx
movq 0x48(%rsp), %rax
movq (%rax), %rax
movq 0x58(%rsp), %rcx
addq 0x20(%rsp), %rcx
addq (%rax,%rcx,8), %rdx
movq %rdx, (%rax,%rcx,8)
movq 0x20(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x20(%rsp)
jmp 0xfd6f
movq 0x48(%rsp), %rax
movq (%rax), %rax
movq 0x58(%rsp), %rcx
addq 0x20(%rsp), %rcx
movq $0x1, (%rax,%rcx,8)
movq 0x18(%rsp), %rdi
addq 0x58(%rsp), %rdi
movl $0x1, %esi
movsbl 0x17(%rsp), %edx
callq 0xe900
movq %rax, %rdx
movq 0x48(%rsp), %rax
movq (%rax), %rax
movq 0x58(%rsp), %rcx
addq 0x20(%rsp), %rcx
addq (%rax,%rcx,8), %rdx
movq %rdx, (%rax,%rcx,8)
movq 0x20(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x20(%rsp)
jmp 0xfd6f
movq 0x18(%rsp), %rax
subq $0x1, %rax
movq %rax, 0x28(%rsp)
movq 0x28(%rsp), %rax
subq 0x30(%rsp), %rax
addq $0x1, %rax
cmpq $0x0, %rax
jle 0xf783
movq 0x30(%rsp), %rdi
addq 0x58(%rsp), %rdi
movq 0x28(%rsp), %rsi
subq 0x30(%rsp), %rsi
addq $0x1, %rsi
movq 0x60(%rsp), %rax
movq 0x30(%rsp), %rcx
movsbl (%rax,%rcx), %edx
callq 0xe900
movq %rax, %rdx
movq 0x48(%rsp), %rax
movq (%rax), %rax
movq 0x58(%rsp), %rcx
addq 0x20(%rsp), %rcx
movq %rdx, (%rax,%rcx,8)
movq 0x20(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x20(%rsp)
movq 0x18(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x30(%rsp)
movq 0x18(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x28(%rsp)
movq 0x48(%rsp), %rax
movq (%rax), %rax
movq 0x58(%rsp), %rcx
addq 0x20(%rsp), %rcx
movq $0x1, (%rax,%rcx,8)
movq 0x18(%rsp), %rdi
addq 0x58(%rsp), %rdi
movl $0x1, %esi
movsbl 0x17(%rsp), %edx
callq 0xe900
movq %rax, %rdx
movq 0x48(%rsp), %rax
movq (%rax), %rax
movq 0x58(%rsp), %rcx
addq 0x20(%rsp), %rcx
addq (%rax,%rcx,8), %rdx
movq %rdx, (%rax,%rcx,8)
movq 0x20(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x20(%rsp)
jmp 0xfd6f
movq 0x18(%rsp), %rax
subq $0x1, %rax
movq %rax, 0x28(%rsp)
movq 0x28(%rsp), %rax
subq 0x30(%rsp), %rax
addq $0x1, %rax
cmpq $0x0, %rax
jle 0xf876
movq 0x30(%rsp), %rdi
addq 0x58(%rsp), %rdi
movq 0x28(%rsp), %rsi
subq 0x30(%rsp), %rsi
addq $0x1, %rsi
movq 0x60(%rsp), %rax
movq 0x30(%rsp), %rcx
movsbl (%rax,%rcx), %edx
callq 0xe900
movq %rax, %rdx
movq 0x48(%rsp), %rax
movq (%rax), %rax
movq 0x58(%rsp), %rcx
addq 0x20(%rsp), %rcx
movq %rdx, (%rax,%rcx,8)
movq 0x20(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x20(%rsp)
movq 0x18(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x30(%rsp)
movq 0x18(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x28(%rsp)
movq 0x48(%rsp), %rax
movq (%rax), %rax
movq 0x58(%rsp), %rcx
addq 0x20(%rsp), %rcx
movq $0x1, (%rax,%rcx,8)
movq 0x18(%rsp), %rdi
addq 0x58(%rsp), %rdi
movl $0x1, %esi
movsbl 0x17(%rsp), %edx
callq 0xe900
movq %rax, %rdx
movq 0x48(%rsp), %rax
movq (%rax), %rax
movq 0x58(%rsp), %rcx
addq 0x20(%rsp), %rcx
addq (%rax,%rcx,8), %rdx
movq %rdx, (%rax,%rcx,8)
movq 0x20(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x20(%rsp)
jmp 0xfd6f
movq 0x18(%rsp), %rax
subq $0x1, %rax
movq %rax, 0x28(%rsp)
movq 0x28(%rsp), %rax
subq 0x30(%rsp), %rax
addq $0x1, %rax
cmpq $0x0, %rax
jle 0xf969
movq 0x30(%rsp), %rdi
addq 0x58(%rsp), %rdi
movq 0x28(%rsp), %rsi
subq 0x30(%rsp), %rsi
addq $0x1, %rsi
movq 0x60(%rsp), %rax
movq 0x30(%rsp), %rcx
movsbl (%rax,%rcx), %edx
callq 0xe900
movq %rax, %rdx
movq 0x48(%rsp), %rax
movq (%rax), %rax
movq 0x58(%rsp), %rcx
addq 0x20(%rsp), %rcx
movq %rdx, (%rax,%rcx,8)
movq 0x20(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x20(%rsp)
movq 0x18(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x30(%rsp)
movq 0x18(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x28(%rsp)
movq 0x48(%rsp), %rax
movq (%rax), %rax
movq 0x58(%rsp), %rcx
addq 0x20(%rsp), %rcx
movq $0x1, (%rax,%rcx,8)
movq 0x18(%rsp), %rdi
addq 0x58(%rsp), %rdi
movl $0x1, %esi
movsbl 0x17(%rsp), %edx
callq 0xe900
movq %rax, %rdx
movq 0x48(%rsp), %rax
movq (%rax), %rax
movq 0x58(%rsp), %rcx
addq 0x20(%rsp), %rcx
addq (%rax,%rcx,8), %rdx
movq %rdx, (%rax,%rcx,8)
movq 0x20(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x20(%rsp)
jmp 0xfd6f
movq 0x18(%rsp), %rax
subq $0x1, %rax
movq %rax, 0x28(%rsp)
movq 0x30(%rsp), %rdi
addq 0x58(%rsp), %rdi
movq 0x28(%rsp), %rsi
subq 0x30(%rsp), %rsi
addq $0x1, %rsi
movq 0x60(%rsp), %rax
movq 0x30(%rsp), %rcx
movsbl (%rax,%rcx), %edx
callq 0xe900
movq %rax, %rdx
movq 0x48(%rsp), %rax
movq (%rax), %rax
movq 0x58(%rsp), %rcx
addq 0x20(%rsp), %rcx
movq %rdx, (%rax,%rcx,8)
movq 0x28(%rsp), %rdx
subq 0x30(%rsp), %rdx
addq $0x1, %rdx
xorl %eax, %eax
movl $0x1, %ecx
cmpq $0x0, %rdx
cmovgl %ecx, %eax
cltq
addq 0x20(%rsp), %rax
movq %rax, 0x20(%rsp)
movq 0x18(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x30(%rsp)
movq 0x18(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x28(%rsp)
jmp 0xfd6f
movq 0x18(%rsp), %rax
subq $0x1, %rax
movq %rax, 0x28(%rsp)
movq 0x28(%rsp), %rax
subq 0x30(%rsp), %rax
addq $0x1, %rax
cmpq $0x0, %rax
jle 0xfaf7
movq 0x30(%rsp), %rdi
addq 0x58(%rsp), %rdi
movq 0x28(%rsp), %rsi
subq 0x30(%rsp), %rsi
addq $0x1, %rsi
movq 0x60(%rsp), %rax
movq 0x30(%rsp), %rcx
movsbl (%rax,%rcx), %edx
callq 0xe900
movq %rax, %rdx
movq 0x48(%rsp), %rax
movq (%rax), %rax
movq 0x58(%rsp), %rcx
addq 0x20(%rsp), %rcx
movq %rdx, (%rax,%rcx,8)
movq 0x20(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x20(%rsp)
movq 0x18(%rsp), %rax
movq %rax, 0x30(%rsp)
movq 0x18(%rsp), %rax
movq %rax, 0x28(%rsp)
movq 0x30(%rsp), %rdi
addq 0x58(%rsp), %rdi
movq 0x28(%rsp), %rsi
subq 0x30(%rsp), %rsi
addq $0x1, %rsi
movq 0x60(%rsp), %rax
movq 0x30(%rsp), %rcx
movsbl (%rax,%rcx), %edx
callq 0xe900
movq %rax, %rdx
movq 0x48(%rsp), %rax
movq (%rax), %rax
movq 0x58(%rsp), %rcx
addq 0x20(%rsp), %rcx
movq %rdx, (%rax,%rcx,8)
movq 0x20(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x20(%rsp)
movq 0x18(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x30(%rsp)
movq 0x18(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x28(%rsp)
jmp 0xfd6f
movq 0x18(%rsp), %rax
subq $0x1, %rax
movq %rax, 0x28(%rsp)
movq 0x28(%rsp), %rax
subq 0x30(%rsp), %rax
addq $0x1, %rax
cmpq $0x0, %rax
jle 0xfbf2
movq 0x30(%rsp), %rdi
addq 0x58(%rsp), %rdi
movq 0x28(%rsp), %rsi
subq 0x30(%rsp), %rsi
addq $0x1, %rsi
movq 0x60(%rsp), %rax
movq 0x30(%rsp), %rcx
movsbl (%rax,%rcx), %edx
callq 0xe900
movq %rax, %rdx
movq 0x48(%rsp), %rax
movq (%rax), %rax
movq 0x58(%rsp), %rcx
addq 0x20(%rsp), %rcx
movq %rdx, (%rax,%rcx,8)
movq 0x20(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x20(%rsp)
movq 0x18(%rsp), %rax
movq %rax, 0x30(%rsp)
movq 0x18(%rsp), %rax
movq %rax, 0x28(%rsp)
movq 0x30(%rsp), %rdi
addq 0x58(%rsp), %rdi
movq 0x28(%rsp), %rsi
subq 0x30(%rsp), %rsi
addq $0x1, %rsi
movq 0x60(%rsp), %rax
movq 0x30(%rsp), %rcx
movsbl (%rax,%rcx), %edx
callq 0xe900
movq %rax, %rdx
movq 0x48(%rsp), %rax
movq (%rax), %rax
movq 0x58(%rsp), %rcx
addq 0x20(%rsp), %rcx
movq %rdx, (%rax,%rcx,8)
movq 0x20(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x20(%rsp)
movq 0x18(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x30(%rsp)
movq 0x18(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x28(%rsp)
jmp 0xfd6f
movq 0x18(%rsp), %rax
subq $0x1, %rax
movq %rax, 0x28(%rsp)
movq 0x28(%rsp), %rax
subq 0x30(%rsp), %rax
addq $0x1, %rax
cmpq $0x0, %rax
jle 0xfced
movq 0x30(%rsp), %rdi
addq 0x58(%rsp), %rdi
movq 0x28(%rsp), %rsi
subq 0x30(%rsp), %rsi
addq $0x1, %rsi
movq 0x60(%rsp), %rax
movq 0x30(%rsp), %rcx
movsbl (%rax,%rcx), %edx
callq 0xe900
movq %rax, %rdx
movq 0x48(%rsp), %rax
movq (%rax), %rax
movq 0x58(%rsp), %rcx
addq 0x20(%rsp), %rcx
movq %rdx, (%rax,%rcx,8)
movq 0x20(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x20(%rsp)
movq 0x18(%rsp), %rax
movq %rax, 0x30(%rsp)
movq 0x18(%rsp), %rax
movq %rax, 0x28(%rsp)
movq 0x30(%rsp), %rdi
addq 0x58(%rsp), %rdi
movq 0x28(%rsp), %rsi
subq 0x30(%rsp), %rsi
addq $0x1, %rsi
movq 0x60(%rsp), %rax
movq 0x30(%rsp), %rcx
movsbl (%rax,%rcx), %edx
callq 0xe900
movq %rax, %rdx
movq 0x48(%rsp), %rax
movq (%rax), %rax
movq 0x58(%rsp), %rcx
addq 0x20(%rsp), %rcx
movq %rdx, (%rax,%rcx,8)
movq 0x20(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x20(%rsp)
movq 0x18(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x30(%rsp)
movq 0x18(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x28(%rsp)
jmp 0xfd71
movq 0x18(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x18(%rsp)
jmp 0xf55a
movq 0x50(%rsp), %rax
subq $0x1, %rax
subq 0x30(%rsp), %rax
addq $0x1, %rax
cmpq $0x0, %rax
jle 0xfdf2
movq 0x30(%rsp), %rdi
addq 0x58(%rsp), %rdi
movq 0x50(%rsp), %rsi
subq $0x1, %rsi
subq 0x30(%rsp), %rsi
addq $0x1, %rsi
movq 0x60(%rsp), %rax
movq 0x30(%rsp), %rcx
movsbl (%rax,%rcx), %edx
callq 0xe900
movq %rax, %rdx
movq 0x48(%rsp), %rax
movq (%rax), %rax
movq 0x58(%rsp), %rcx
addq 0x20(%rsp), %rcx
movq %rdx, (%rax,%rcx,8)
movq 0x20(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x20(%rsp)
movq 0x20(%rsp), %rax
movq %rax, 0x38(%rsp)
movq 0x38(%rsp), %rcx
movq 0x40(%rsp), %rax
movq %rcx, (%rax)
addq $0x68, %rsp
retq
nop