// File: /workspace/github_cpp_makefile_star2_O2/iamlouk[P]asbi/src/tokenizer.cc
// Function: tok::to_string[abi:cxx11](tok::Token)
std::string tok::to_string(Token token) {
	switch (token.type) {
	case Identifier:
		return std::string("Identifier(") + *(token.str) + ")";
	case Int:
	 	return std::string("Int(") + std::to_string(token.integer) + ")";
	case Real:
		return std::string("Real(") + std::to_string(token.real) + ")";
	case String:
		return std::string("String(\"") + *(token.str) + "\")";
	case Bool:
		return std::string("Bool(") + (token.integer ? "true" : "false") + ")";
	case Nil:       return std::string("Nil");
	case Assign:    return std::string("Assign");
	case Declare:   return std::string("Declare");
	case Plus:      return std::string("Plus");
	case Minus:     return std::string("Minus");
	case Mul:       return std::string("Mul");
	case Div:       return std::string("Div");
	case Arrow:     return std::string("Arrow");
	case KeyValue:  return std::string("KeyValue");
	case Equals:    return std::string("Equals");
	case EqualsNot: return std::string("EqualsNot");
	case Smaller:   return std::string("Smaller");
	case Bigger:    return std::string("Bigger");
	case Not:       return std::string("Not");
	case Or:        return std::string("Or");
	case And:       return std::string("And");
	case SmallerOrEqual:
		return std::string("SmallerOrEqual");
	case BiggerOrEqual:
		return std::string("BiggerOrEqual");
	case LeftBracket:
		return std::string("LeftBracket");
	case RightBracket:
		return std::string("RightBracket");
	case LeftCurlyBracket:
		return std::string("LeftCurlyBracket");
	case RightCurlyBracket:
		return std::string("RightCurlyBracket");
	case LeftSquareBracket:
		return std::string("LeftSquareBracket");
	case RightSquareBracket:
		return std::string("RightSquareBracket");
	case DoubleColon:
		return std::string("DoubleColon");
	case Comma:     return std::string("Comma");
	case Semicolon: return std::string("Semicolon");
	case Colon:     return std::string("Colon");
	case Dot:       return std::string("Dot");
	case If:        return std::string("If");
	case Else:      return std::string("Else");
	case For:       return std::string("For");
	case EOFTok:    return std::string("EOF");
	}
}

// Assembly:
pushq %r14
pushq %rbx
subq $0x68, %rsp
movq %rdx, %r14
movq %rdi, %rbx
movl %esi, %eax
leaq 0xd7d3(%rip), %rcx      # 0x143a8
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0xd88d(%rip), %rsi      # 0x14472
leaq 0x28(%rsp), %rdi
leaq 0x48(%rsp), %rdx
callq 0x60ee
leaq 0x8(%rsp), %rdi
leaq 0x28(%rsp), %rsi
movq %r14, %rdx
callq 0x7096
leaq 0xd886(%rip), %rdx      # 0x14493
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x7077
jmp 0x6da8
leaq 0xdaff(%rip), %rsi      # 0x14725
jmp 0x6ed2
leaq 0xd966(%rip), %rsi      # 0x14598
jmp 0x6ed2
leaq 0xd95f(%rip), %rsi      # 0x1459d
jmp 0x6ed2
leaq 0xd906(%rip), %rsi      # 0x14550
jmp 0x6ed2
leaq 0xd93f(%rip), %rsi      # 0x14595
jmp 0x6ed2
leaq 0xd87f(%rip), %rsi      # 0x144e1
jmp 0x6ed2
leaq 0xd862(%rip), %rsi      # 0x144d0
jmp 0x6ed2
leaq 0xd8fb(%rip), %rsi      # 0x14575
jmp 0x6ed2
leaq 0xd837(%rip), %rsi      # 0x144bd
jmp 0x6ed2
leaq 0xd803(%rip), %rsi      # 0x14495
leaq 0x28(%rsp), %rdi
leaq 0x48(%rsp), %rdx
callq 0x60ee
testl %r14d, %r14d
leaq 0xd7a6(%rip), %rax      # 0x14451
leaq 0xd79a(%rip), %rdx      # 0x1444c
cmoveq %rax, %rdx
leaq 0x8(%rsp), %rdi
leaq 0x28(%rsp), %rsi
callq 0x7077
leaq 0xd7c7(%rip), %rdx      # 0x14493
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x7077
jmp 0x6da8
leaq 0xd7dc(%rip), %rsi      # 0x144c1
jmp 0x6ed2
leaq 0xd7c2(%rip), %rsi      # 0x144b3
jmp 0x6ed2
leaq 0xd830(%rip), %rsi      # 0x1452d
jmp 0x6ed2
leaq 0xd817(%rip), %rsi      # 0x14520
jmp 0x6ed2
leaq 0xd76e(%rip), %rsi      # 0x14483
leaq 0x28(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x60ee
movq %r14, %xmm0
leaq 0x48(%rsp), %rdi
callq 0x7175
leaq 0x8(%rsp), %rdi
leaq 0x28(%rsp), %rsi
leaq 0x48(%rsp), %rdx
callq 0x70b5
leaq 0xd745(%rip), %rdx      # 0x14493
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x7077
jmp 0x6e06
leaq 0xd770(%rip), %rsi      # 0x144d7
jmp 0x6ed2
leaq 0xd716(%rip), %rsi      # 0x14489
leaq 0x28(%rsp), %rdi
leaq 0x48(%rsp), %rdx
callq 0x60ee
leaq 0x8(%rsp), %rdi
leaq 0x28(%rsp), %rsi
movq %r14, %rdx
callq 0x7096
leaq 0xd6f7(%rip), %rdx      # 0x14492
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x7077
leaq 0x8(%rsp), %rdi
jmp 0x6e15
leaq 0xd6f0(%rip), %rsi      # 0x144a6
jmp 0x6ed2
leaq 0xd6bc(%rip), %rsi      # 0x1447e
leaq 0x28(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x60ee
leaq 0x48(%rsp), %rdi
movl %r14d, %esi
callq 0x711c
leaq 0x8(%rsp), %rdi
leaq 0x28(%rsp), %rsi
leaq 0x48(%rsp), %rdx
callq 0x70b5
leaq 0xd69a(%rip), %rdx      # 0x14493
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x7077
leaq 0x8(%rsp), %rdi
callq 0x5170
leaq 0x48(%rsp), %rdi
callq 0x5170
leaq 0x28(%rsp), %rdi
callq 0x5170
jmp 0x6edf
leaq 0xd74b(%rip), %rsi      # 0x1457b
jmp 0x6ed2
leaq 0xd6ad(%rip), %rsi      # 0x144e9
jmp 0x6ed2
leaq 0xd695(%rip), %rsi      # 0x144dd
jmp 0x6ed2
leaq 0xd647(%rip), %rsi      # 0x1449b
jmp 0x6ed2
leaq 0xd693(%rip), %rsi      # 0x144f0
jmp 0x6ed2
leaq 0xd661(%rip), %rsi      # 0x144c7
jmp 0x6ed2
leaq 0xd630(%rip), %rsi      # 0x1449f
jmp 0x6ed2
leaq 0xd67f(%rip), %rsi      # 0x144f7
jmp 0x6ed2
leaq 0xd638(%rip), %rsi      # 0x144b9
jmp 0x6ed2
leaq 0xd624(%rip), %rsi      # 0x144ae
jmp 0x6ed2
leaq 0xd6f4(%rip), %rsi      # 0x14587
jmp 0x6ed2
leaq 0xd6f5(%rip), %rsi      # 0x14591
jmp 0x6ed2
leaq 0xd64e(%rip), %rsi      # 0x144f3
jmp 0x6ed2
leaq 0xd658(%rip), %rsi      # 0x14506
jmp 0x6ed2
leaq 0xd65d(%rip), %rsi      # 0x14514
jmp 0x6ed2
leaq 0xd6a2(%rip), %rsi      # 0x14562
jmp 0x6ed2
leaq 0xd6b8(%rip), %rsi      # 0x14581
jmp 0x6ed2
leaq 0xd66c(%rip), %rsi      # 0x1453e
leaq 0x8(%rsp), %rdx
movq %rbx, %rdi
callq 0x60ee
movq %rbx, %rax
addq $0x68, %rsp
popq %rbx
popq %r14
retq
jmp 0x6eec
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x5170
jmp 0x6f02
jmp 0x6eff
jmp 0x6f0b
movq %rax, %rbx
leaq 0x48(%rsp), %rdi
jmp 0x6f13
jmp 0x6f0b
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x5170
jmp 0x6f25
jmp 0x6f22
jmp 0x6f22
jmp 0x6f22
jmp 0x6f22
movq %rax, %rbx
leaq 0x28(%rsp), %rdi
callq 0x5170
jmp 0x6f3c
jmp 0x6f39
jmp 0x6f39
jmp 0x6f39
jmp 0x6f39
movq %rax, %rbx
movq %rbx, %rdi
callq 0x5600