// File: /workspace/github_cpp_makefile_star2_O2/tewalds[P]pentagod/./gtp.h
// Function: GTPclient::GTPclient(_IO_FILE*, _IO_FILE*, _IO_FILE*)
GTPclient(FILE * i = stdin, FILE * o = stdout, FILE * l = NULL){
		in = i;
		out = o;
		logfile = l;
		longest_cmd = 0;
		running = false;

		newcallback("list_commands",    bind(&GTPclient::gtp_list_commands,    this, _1, false), "List the commands");
		newcallback("help",             bind(&GTPclient::gtp_list_commands,    this, _1, true),  "List the commands, with descriptions");
		newcallback("quit",             bind(&GTPclient::gtp_quit,             this, _1), "Quit the program");
		newcallback("exit",             bind(&GTPclient::gtp_quit,             this, _1), "Alias for quit");
		newcallback("protocol_version", bind(&GTPclient::gtp_protocol_version, this, _1), "Show the gtp protocol version");
		newcallback("logfile",          bind(&GTPclient::gtp_logfile,          this, _1), "Start logging the gtp commands to this file, disabled in server mode");
		newcallback("lognote",          bind(&GTPclient::gtp_lognote,          this, _1), "Add a comment to the logfile");
		newcallback("logend",           bind(&GTPclient::gtp_logend,           this, _1), "Stop logging");
	}

// Assembly:
pushq %r14
pushq %rbx
subq $0x248, %rsp            # imm = 0x248
vxorps %xmm0, %xmm0, %xmm0
andq $0x0, 0x28(%rdi)
movq %rdi, %rbx
vmovups %xmm0, 0x18(%rdi)
movq %rsi, (%rdi)
movq %rdx, 0x8(%rdi)
movq %rcx, 0x10(%rdi)
andl $0x0, 0x30(%rdi)
movb $0x0, 0x34(%rdi)
leaq 0x15f39(%rip), %rsi     # 0x1c85e
leaq 0x228(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x7d6(%rip), %r14       # 0x7114
leaq 0x28(%rsp), %rsi
movq %r14, (%rsi)
andq $0x0, 0x8(%rsi)
movb $0x0, 0x10(%rsi)
movq %rbx, 0x18(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x7270
leaq 0x15f08(%rip), %rsi     # 0x1c86c
leaq 0x208(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x228(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x208(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x208(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x228(%rsp), %rdi
callq 0x4130
leaq 0x1598a(%rip), %rsi     # 0x1c348
leaq 0x1e8(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x28(%rsp), %rsi
movq %r14, (%rsi)
andq $0x0, 0x8(%rsi)
movb $0x1, 0x10(%rsi)
movq %rbx, 0x18(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x7270
leaq 0x15e88(%rip), %rsi     # 0x1c87e
leaq 0x1c8(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x1e8(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x1c8(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x1c8(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x1e8(%rsp), %rdi
callq 0x4130
leaq 0x15e73(%rip), %rsi     # 0x1c8c3
leaq 0x1a8(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x84f(%rip), %r14       # 0x72b8
leaq 0x28(%rsp), %rsi
movq %r14, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x7318
leaq 0x15e18(%rip), %rsi     # 0x1c8a3
leaq 0x188(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x1a8(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x188(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x188(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x1a8(%rsp), %rdi
callq 0x4130
leaq 0x15dcf(%rip), %rsi     # 0x1c8b4
leaq 0x168(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x28(%rsp), %rsi
movq %r14, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x7318
leaq 0x15da0(%rip), %rsi     # 0x1c8b9
leaq 0x148(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x168(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x148(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x148(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x168(%rsp), %rdi
callq 0x4130
leaq 0x15d55(%rip), %rsi     # 0x1c8c8
leaq 0x128(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x7d4(%rip), %rax       # 0x7360
leaq 0x28(%rsp), %rsi
movq %rax, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x7318
leaq 0x15d2b(%rip), %rsi     # 0x1c8d9
leaq 0x108(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x128(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x108(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x108(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x128(%rsp), %rdi
callq 0x4130
leaq 0x15d51(%rip), %rsi     # 0x1c959
leaq 0xe8(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x79b(%rip), %rax       # 0x73bc
leaq 0x28(%rsp), %rsi
movq %rax, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x7318
leaq 0x15cb4(%rip), %rsi     # 0x1c8f7
leaq 0xc8(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0xe8(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0xc8(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0xc8(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0xe8(%rsp), %rdi
callq 0x4130
leaq 0x15c9f(%rip), %rsi     # 0x1c93c
leaq 0xa8(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x806(%rip), %rax       # 0x74bc
leaq 0x28(%rsp), %rsi
movq %rax, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x7318
leaq 0x15c6c(%rip), %rsi     # 0x1c944
leaq 0x88(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0xa8(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x88(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x88(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0xa8(%rsp), %rdi
callq 0x4130
leaq 0x15c2f(%rip), %rsi     # 0x1c961
leaq 0x68(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x40f0
leaq 0x842(%rip), %rax       # 0x758a
leaq 0x28(%rsp), %rsi
movq %rax, (%rsi)
andq $0x0, 0x8(%rsi)
movq %rbx, 0x10(%rsi)
leaq 0x8(%rsp), %rdi
callq 0x7318
leaq 0x15bfe(%rip), %rsi     # 0x1c968
leaq 0x48(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x40f0
leaq 0x68(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x48(%rsp), %rcx
movq %rbx, %rdi
callq 0x6fc2
leaq 0x48(%rsp), %rdi
callq 0x4130
leaq 0x8(%rsp), %rdi
callq 0x70f8
leaq 0x68(%rsp), %rdi
callq 0x4130
addq $0x248, %rsp            # imm = 0x248
popq %rbx
popq %r14
retq
leaq 0x48(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x6dcb
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x6dda
movq %rax, %r14
leaq 0x68(%rsp), %rdi
jmp 0x6f4d
jmp 0x6f54
leaq 0x88(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x6dfe
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x6e0d
movq %rax, %r14
leaq 0xa8(%rsp), %rdi
jmp 0x6f4d
jmp 0x6f54
leaq 0xc8(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x6e34
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x6e43
movq %rax, %r14
leaq 0xe8(%rsp), %rdi
jmp 0x6f4d
jmp 0x6f54
leaq 0x108(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x6e6a
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x6e79
movq %rax, %r14
leaq 0x128(%rsp), %rdi
jmp 0x6f4d
jmp 0x6f54
leaq 0x148(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x6ea0
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x6eaf
movq %rax, %r14
leaq 0x168(%rsp), %rdi
jmp 0x6f4d
jmp 0x6f54
leaq 0x188(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x6ed6
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x6ee5
movq %rax, %r14
leaq 0x1a8(%rsp), %rdi
jmp 0x6f4d
jmp 0x6f54
leaq 0x1c8(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x6f06
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x6f15
movq %rax, %r14
leaq 0x1e8(%rsp), %rdi
jmp 0x6f4d
jmp 0x6f54
leaq 0x208(%rsp), %rdi
movq %rax, %r14
callq 0x4130
jmp 0x6f36
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x70f8
jmp 0x6f45
movq %rax, %r14
leaq 0x228(%rsp), %rdi
callq 0x4130
jmp 0x6f57
movq %rax, %r14
addq $0x18, %rbx
movq %rbx, %rdi
callq 0x75f0
movq %r14, %rdi
callq 0x4590
nop