// File: /workspace/github_cpp_makefile_star2_O1/tyhsu[P]Ewn/main.cpp
// Function: main
int main() {
	int cmd;
	cout << "====================================" << endl;
	cout << "------EinStein würfelt nicht!------" << endl;
	cout << "====================================" << endl;
	cout << "Please choose a mode:" << endl;
	cout << "0)Player v.s Player" << endl;
	cout << "1)AI v.s Player" << endl;
	cout << "2)AI v.s AI" << endl;
	cout << "3)Contest mode" << endl;
	cout << "4)Compare mode" << endl;
	cout << "Choose: ";
	cin >> cmd;
	cout << endl;
	Play ewn;
	if (cmd == 0)
		ewn.two_players_mode();
	else if (cmd == 1)
		ewn.player_AI_mode();
	else if (cmd == 2)
		ewn.two_AIs_mode();
	else if (cmd == 3)
		ewn.contest_AI_mode();
	else if (cmd == 4)
		ewn.compare_AI_mode();
	else
		cout << "It's not a command" << endl;
	return 0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r14
pushq %rbx
subq $0xf0, %rsp
movq 0xaaa7(%rip), %rbx      # 0xcfc8
leaq 0x7007(%rip), %r14      # 0x952f
movl $0x24, %edx
movq %rbx, %rdi
movq %r14, %rsi
callq 0x2170
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20c0
leaq 0x6ab2(%rip), %rsi      # 0x9018
movl $0x24, %edx
movq %rbx, %rdi
callq 0x2170
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20c0
movl $0x24, %edx
movq %rbx, %rdi
movq %r14, %rsi
callq 0x2170
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20c0
leaq 0x6a65(%rip), %rsi      # 0x903d
movl $0x15, %edx
movq %rbx, %rdi
callq 0x2170
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20c0
leaq 0x6a40(%rip), %rsi      # 0x9053
movl $0x13, %edx
movq %rbx, %rdi
callq 0x2170
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20c0
leaq 0x6a19(%rip), %rsi      # 0x9067
movl $0xf, %edx
movq %rbx, %rdi
callq 0x2170
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20c0
leaq 0x69ee(%rip), %rsi      # 0x9077
movl $0xb, %edx
movq %rbx, %rdi
callq 0x2170
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20c0
leaq 0x69bf(%rip), %rsi      # 0x9083
movl $0xe, %edx
movq %rbx, %rdi
callq 0x2170
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20c0
leaq 0x6993(%rip), %rsi      # 0x9092
movl $0xe, %edx
movq %rbx, %rdi
callq 0x2170
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20c0
leaq 0x6967(%rip), %rsi      # 0x90a1
movl $0x8, %edx
movq %rbx, %rdi
callq 0x2170
movq 0xa88a(%rip), %rdi      # 0xcfd8
leaq -0x14(%rbp), %r14
movq %r14, %rsi
callq 0x20a0
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20c0
leaq -0x100(%rbp), %rdi
callq 0x788a
movl (%r14), %eax
cmpq $0x4, %rax
ja 0x27ec
leaq 0x6867(%rip), %rcx      # 0x9004
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq -0x100(%rbp), %rdi
callq 0x2ad2
jmp 0x2827
leaq -0x100(%rbp), %rdi
callq 0x3c30
jmp 0x2827
leaq -0x100(%rbp), %rdi
callq 0x2f16
jmp 0x2827
leaq -0x100(%rbp), %rdi
callq 0x336a
jmp 0x2827
leaq -0x100(%rbp), %rdi
callq 0x2c5a
jmp 0x2827
leaq 0x68b7(%rip), %rsi      # 0x90aa
movl $0x12, %edx
movq %rbx, %rdi
callq 0x2170
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2130
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20c0
xorl %eax, %eax
addq $0xf0, %rsp
popq %rbx
popq %r14
popq %rbp
retq
nop