140046e87:	b9 02 00 00 00       	mov    $0x2,%ecx
140046e8c:	e8 cf 17 0a 00       	call   0x1400e8660
140046e91:	85 c0                	test   %eax,%eax
140046e93:	0f 85 e7 00 00 00    	jne    0x140046f80
140046e99:	8b 0d d9 c1 21 00    	mov    0x21c1d9(%rip),%ecx        # 0x140263078
140046e9f:	e8 9c 2c 1a 00       	call   0x1401e9b40
140046ea4:	48 8d 0d 55 fb ff ff 	lea    -0x4ab(%rip),%rcx        # 0x140046a00
140046eab:	e8 80 0f 05 00       	call   0x140097e30
140046eb0:	8b 05 4e c1 21 00    	mov    0x21c14e(%rip),%eax        # 0x140263004
140046eb6:	85 c0                	test   %eax,%eax
140046eb8:	0f 84 92 00 00 00    	je     0x140046f50
140046ebe:	48 8b 44 24 68       	mov    0x68(%rsp),%rax
140046ec3:	48 2b 07             	sub    (%rdi),%rax
140046ec6:	0f 85 d9 00 00 00    	jne    0x140046fa5
140046ecc:	48 83 c4 78          	add    $0x78,%rsp
140046ed0:	5b                   	pop    %rbx
140046ed1:	5e                   	pop    %rsi
140046ed2:	5f                   	pop    %rdi
140046ed3:	5d                   	pop    %rbp
140046ed4:	c3                   	ret
140046ed5:	0f 1f 00             	nopl   (%rax)
140046ed8:	48 8d 0d 1e 80 1b 00 	lea    0x1b801e(%rip),%rcx        # 0x1401feefd
140046edf:	c7 05 17 c1 21 00 50 	movl   $0x50,0x21c117(%rip)        # 0x140263000
140046ee6:	00 00 00
140046ee9:	c7 05 15 c1 21 00 01 	movl   $0x1,0x21c115(%rip)        # 0x140263008
140046ef0:	00 00 00
140046ef3:	e8 e8 9f 09 00       	call   0x1400e0ee0
140046ef8:	48 85 c0             	test   %rax,%rax
140046efb:	74 2b                	je     0x140046f28
140046efd:	48 89 c1             	mov    %rax,%rcx
140046f00:	e8 bb 2d 1a 00       	call   0x1401e9cc0
140046f05:	41 89 c1             	mov    %eax,%r9d
140046f08:	85 c0                	test   %eax,%eax
140046f0a:	7e 1c                	jle    0x140046f28
140046f0c:	89 05 ee c0 21 00    	mov    %eax,0x21c0ee(%rip)        # 0x140263000
140046f12:	c7 05 ec c0 21 00 00 	movl   $0x0,0x21c0ec(%rip)        # 0x140263008
140046f19:	00 00 00
140046f1c:	e9 c3 fe ff ff       	jmp    0x140046de4
140046f21:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140046f28:	44 8b 0d d1 c0 21 00 	mov    0x21c0d1(%rip),%r9d        # 0x140263000
140046f2f:	e9 b0 fe ff ff       	jmp    0x140046de4
140046f34:	0f 1f 40 00          	nopl   0x0(%rax)
140046f38:	45 31 c0             	xor    %r8d,%r8d
140046f3b:	48 89 f2             	mov    %rsi,%rdx
140046f3e:	48 8d 0d b8 7f 1b 00 	lea    0x1b7fb8(%rip),%rcx        # 0x1401feefd
140046f45:	e8 26 53 0a 00       	call   0x1400ec270
140046f4a:	e9 bc fe ff ff       	jmp    0x140046e0b
140046f4f:	90                   	nop
140046f50:	c7 05 aa c0 21 00 01 	movl   $0x1,0x21c0aa(%rip)        # 0x140263004
140046f57:	00 00 00
140046f5a:	48 8b 44 24 68       	mov    0x68(%rsp),%rax
140046f5f:	48 2b 07             	sub    (%rdi),%rax
140046f62:	75 41                	jne    0x140046fa5
140046f64:	48 8d 0d d5 fb ff ff 	lea    -0x42b(%rip),%rcx        # 0x140046b40
140046f6b:	48 83 c4 78          	add    $0x78,%rsp
140046f6f:	5b                   	pop    %rbx
140046f70:	5e                   	pop    %rsi
140046f71:	5f                   	pop    %rdi
140046f72:	5d                   	pop    %rbp
140046f73:	e9 b8 a4 fb ff       	jmp    0x140001430
140046f78:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
140046f7f:	00
140046f80:	b9 02 00 00 00       	mov    $0x2,%ecx
140046f85:	e8 c6 2b 1a 00       	call   0x1401e9b50
140046f8a:	8b 0d e8 c0 21 00    	mov    0x21c0e8(%rip),%ecx        # 0x140263078
140046f90:	ba 02 00 00 00       	mov    $0x2,%edx
140046f95:	89 05 55 49 1a 00    	mov    %eax,0x1a4955(%rip)        # 0x1401eb8f0
140046f9b:	e8 70 16 0a 00       	call   0x1400e8610
140046fa0:	e9 f4 fe ff ff       	jmp    0x140046e99
140046fa5:	e8 c6 d8 19 00       	call   0x1401e4870
140046faa:	48 89 da             	mov    %rbx,%rdx
140046fad:	48 8d 0d 59 7f 1b 00 	lea    0x1b7f59(%rip),%rcx        # 0x1401fef0d
140046fb4:	e8 d7 c3 07 00       	call   0x1400c3390
140046fb9:	90                   	nop
140046fba:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
140046fc0:	31 d2                	xor    %edx,%edx
140046fc2:	48 8d 0d a9 7e 1b 00 	lea    0x1b7ea9(%rip),%rcx        # 0x1401fee72
140046fc9:	e9 a2 07 00 00       	jmp    0x140047770
140046fce:	66 90                	xchg   %ax,%ax
140046fd0:	48 83 ec 28          	sub    $0x28,%rsp
140046fd4:	8b 05 26 c0 21 00    	mov    0x21c026(%rip),%eax        # 0x140263000
140046fda:	85 c0                	test   %eax,%eax
140046fdc:	74 0a                	je     0x140046fe8
140046fde:	48 83 c4 28          	add    $0x28,%rsp
140046fe2:	c3                   	ret
140046fe3:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140046fe8:	48 8d 0d 0e 7f 1b 00 	lea    0x1b7f0e(%rip),%rcx        # 0x1401feefd
140046fef:	c7 05 07 c0 21 00 50 	movl   $0x50,0x21c007(%rip)        # 0x140263000
140046ff6:	00 00 00
140046ff9:	c7 05 05 c0 21 00 01 	movl   $0x1,0x21c005(%rip)        # 0x140263008
140047000:	00 00 00
140047003:	e8 d8 9e 09 00       	call   0x1400e0ee0
140047008:	48 85 c0             	test   %rax,%rax
14004700b:	74 23                	je     0x140047030
14004700d:	48 89 c1             	mov    %rax,%rcx
140047010:	e8 ab 2c 1a 00       	call   0x1401e9cc0
140047015:	85 c0                	test   %eax,%eax
140047017:	7e 17                	jle    0x140047030
140047019:	89 05 e1 bf 21 00    	mov    %eax,0x21bfe1(%rip)        # 0x140263000
14004701f:	c7 05 df bf 21 00 00 	movl   $0x0,0x21bfdf(%rip)        # 0x140263008
140047026:	00 00 00
140047029:	48 83 c4 28          	add    $0x28,%rsp
14004702d:	c3                   	ret
14004702e:	66 90                	xchg   %ax,%ax
140047030:	8b 05 ca bf 21 00    	mov    0x21bfca(%rip),%eax        # 0x140263000
140047036:	48 83 c4 28          	add    $0x28,%rsp
14004703a:	c3                   	ret
14004703b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140047040:	53                   	push   %rbx
140047041:	48 83 ec 20          	sub    $0x20,%rsp
140047045:	b9 02 00 00 00       	mov    $0x2,%ecx
14004704a:	e8 11 16 0a 00       	call   0x1400e8660
14004704f:	85 c0                	test   %eax,%eax
140047051:	75 0d                	jne    0x140047060
140047053:	48 83 c4 20          	add    $0x20,%rsp
140047057:	5b                   	pop    %rbx
140047058:	c3                   	ret
140047059:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140047060:	e8 eb 15 10 00       	call   0x140148650
140047065:	85 c0                	test   %eax,%eax
140047067:	74 7f                	je     0x1400470e8
140047069:	8b 1d 91 bf 21 00    	mov    0x21bf91(%rip),%ebx        # 0x140263000
14004706f:	85 db                	test   %ebx,%ebx
140047071:	74 2d                	je     0x1400470a0
140047073:	b9 02 00 00 00       	mov    $0x2,%ecx
140047078:	ff 15 a2 d8 1a 00    	call   *0x1ad8a2(%rip)        # 0x1401f4920
14004707e:	4c 8d 0d a5 7e 1b 00 	lea    0x1b7ea5(%rip),%r9        # 0x1401fef2a
140047085:	41 89 d8             	mov    %ebx,%r8d
140047088:	48 8d 15 9c 7e 1b 00 	lea    0x1b7e9c(%rip),%rdx        # 0x1401fef2b
14004708f:	48 89 c1             	mov    %rax,%rcx
140047092:	48 83 c4 20          	add    $0x20,%rsp
140047096:	5b                   	pop    %rbx
140047097:	e9 84 2c 1a 00       	jmp    0x1401e9d20
14004709c:	0f 1f 40 00          	nopl   0x0(%rax)
1400470a0:	48 8d 0d 56 7e 1b 00 	lea    0x1b7e56(%rip),%rcx        # 0x1401feefd
1400470a7:	c7 05 4f bf 21 00 50 	movl   $0x50,0x21bf4f(%rip)        # 0x140263000
1400470ae:	00 00 00
1400470b1:	c7 05 4d bf 21 00 01 	movl   $0x1,0x21bf4d(%rip)        # 0x140263008
1400470b8:	00 00 00
1400470bb:	e8 20 9e 09 00       	call   0x1400e0ee0
1400470c0:	48 85 c0             	test   %rax,%rax
1400470c3:	74 53                	je     0x140047118
1400470c5:	48 89 c1             	mov    %rax,%rcx
1400470c8:	e8 f3 2b 1a 00       	call   0x1401e9cc0
1400470cd:	89 c3                	mov    %eax,%ebx
1400470cf:	85 c0                	test   %eax,%eax
1400470d1:	7e 45                	jle    0x140047118
1400470d3:	89 05 27 bf 21 00    	mov    %eax,0x21bf27(%rip)        # 0x140263000
1400470d9:	c7 05 25 bf 21 00 00 	movl   $0x0,0x21bf25(%rip)        # 0x140263008
1400470e0:	00 00 00
1400470e3:	eb 8e                	jmp    0x140047073
1400470e5:	0f 1f 00             	nopl   (%rax)
1400470e8:	b9 02 00 00 00       	mov    $0x2,%ecx
1400470ed:	ff 15 2d d8 1a 00    	call   *0x1ad82d(%rip)        # 0x1401f4920
1400470f3:	41 b8 04 00 00 00    	mov    $0x4,%r8d
1400470f9:	ba 01 00 00 00       	mov    $0x1,%edx
1400470fe:	48 8d 0d 2c 7e 1b 00 	lea    0x1b7e2c(%rip),%rcx        # 0x1401fef31
140047105:	49 89 c1             	mov    %rax,%r9
140047108:	48 83 c4 20          	add    $0x20,%rsp
14004710c:	5b                   	pop    %rbx
14004710d:	e9 46 2c 1a 00       	jmp    0x1401e9d58
140047112:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
140047118:	8b 1d e2 be 21 00    	mov    0x21bee2(%rip),%ebx        # 0x140263000
14004711e:	e9 50 ff ff ff       	jmp    0x140047073
140047123:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
14004712a:	00 00 00 00
14004712e:	66 90                	xchg   %ax,%ax
140047130:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140047136:	48 89 ca             	mov    %rcx,%rdx
140047139:	48 83 f9 09          	cmp    $0x9,%rcx
14004713d:	76 38                	jbe    0x140047177
14004713f:	49 b9 cd cc cc cc cc 	movabs $0xcccccccccccccccd,%r9
140047146:	cc cc cc
140047149:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
140047150:	00 00 00 00
140047154:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
14004715b:	00 00 00 00
14004715f:	90                   	nop
140047160:	48 89 d0             	mov    %rdx,%rax
140047163:	48 89 d1             	mov    %rdx,%rcx
140047166:	41 83 c0 01          	add    $0x1,%r8d
14004716a:	49 f7 e1             	mul    %r9
14004716d:	48 c1 ea 03          	shr    $0x3,%rdx
140047171:	48 83 f9 63          	cmp    $0x63,%rcx
140047175:	77 e9                	ja     0x140047160
140047177:	44 89 c0             	mov    %r8d,%eax
14004717a:	c3                   	ret
14004717b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140047180:	53                   	push   %rbx
140047181:	48 83 ec 40          	sub    $0x40,%rsp
140047185:	48 8b 1d 64 19 1f 00 	mov    0x1f1964(%rip),%rbx        # 0x140238af0
14004718c:	48 8d 15 cd f8 ff ff 	lea    -0x733(%rip),%rdx        # 0x140046a60
140047193:	48 8b 03             	mov    (%rbx),%rax
140047196:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
14004719b:	31 c0                	xor    %eax,%eax
14004719d:	48 8b 05 5c 22 1f 00 	mov    0x1f225c(%rip),%rax        # 0x140239400
1400471a4:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
1400471a9:	4c 8d 44 24 20       	lea    0x20(%rsp),%r8
1400471ae:	c7 44 24 28 ff ff ff 	movl   $0xffffffff,0x28(%rsp)
1400471b5:	ff
1400471b6:	48 c7 44 24 30 00 00 	movq   $0x0,0x30(%rsp)
1400471bd:	00 00
1400471bf:	48 8b 08             	mov    (%rax),%rcx
1400471c2:	e8 19 d2 fc ff       	call   0x1400143e0
1400471c7:	48 8b 44 24 30       	mov    0x30(%rsp),%rax
1400471cc:	48 85 c0             	test   %rax,%rax
1400471cf:	74 07                	je     0x1400471d8
1400471d1:	48 89 05 38 be 21 00 	mov    %rax,0x21be38(%rip)        # 0x140263010
1400471d8:	8b 44 24 28          	mov    0x28(%rsp),%eax
1400471dc:	48 8b 54 24 38       	mov    0x38(%rsp),%rdx
1400471e1:	48 2b 13             	sub    (%rbx),%rdx
1400471e4:	75 06                	jne    0x1400471ec
1400471e6:	48 83 c4 40          	add    $0x40,%rsp
1400471ea:	5b                   	pop    %rbx
1400471eb:	c3                   	ret
1400471ec:	e8 7f d6 19 00       	call   0x1401e4870
1400471f1:	90                   	nop
1400471f2:	90                   	nop
1400471f3:	90                   	nop
1400471f4:	90                   	nop
1400471f5:	90                   	nop
1400471f6:	90                   	nop
1400471f7:	90                   	nop
1400471f8:	90                   	nop
1400471f9:	90                   	nop
1400471fa:	90                   	nop
1400471fb:	90                   	nop
1400471fc:	90                   	nop
1400471fd:	90                   	nop
1400471fe:	90                   	nop
1400471ff:	90                   	nop
140047200:	56                   	push   %rsi
140047201:	53                   	push   %rbx
140047202:	48 83 ec 28          	sub    $0x28,%rsp
140047206:	b8 01 00 00 00       	mov    $0x1,%eax
14004720b:	80 39 00             	cmpb   $0x0,(%rcx)
14004720e:	48 89 cb             	mov    %rcx,%rbx
140047211:	75 0d                	jne    0x140047220
140047213:	48 83 c4 28          	add    $0x28,%rsp
140047217:	5b                   	pop    %rbx
140047218:	5e                   	pop    %rsi
140047219:	c3                   	ret
14004721a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
140047220:	48 8d 15 19 7d 1b 00 	lea    0x1b7d19(%rip),%rdx        # 0x1401fef40
140047227:	48 8b 35 82 82 26 00 	mov    0x268282(%rip),%rsi        # 0x1402af4b0
14004722e:	ff d6                	call   *%rsi
140047230:	89 c2                	mov    %eax,%edx
140047232:	b8 00 04 00 00       	mov    $0x400,%eax
140047237:	85 d2                	test   %edx,%edx
140047239:	74 d8                	je     0x140047213
14004723b:	48 8d 15 00 7d 1b 00 	lea    0x1b7d00(%rip),%rdx        # 0x1401fef42
140047242:	48 89 d9             	mov    %rbx,%rcx
140047245:	ff d6                	call   *%rsi
140047247:	89 c2                	mov    %eax,%edx
140047249:	b8 00 00 10 00       	mov    $0x100000,%eax
14004724e:	85 d2                	test   %edx,%edx
140047250:	74 c1                	je     0x140047213
140047252:	48 8d 15 eb 7c 1b 00 	lea    0x1b7ceb(%rip),%rdx        # 0x1401fef44
140047259:	48 89 d9             	mov    %rbx,%rcx
14004725c:	ff d6                	call   *%rsi
14004725e:	85 c0                	test   %eax,%eax
140047260:	0f 94 c0             	sete   %al
140047263:	0f b6 c0             	movzbl %al,%eax
140047266:	48 c1 e0 1e          	shl    $0x1e,%rax
14004726a:	48 83 c4 28          	add    $0x28,%rsp
14004726e:	5b                   	pop    %rbx
14004726f:	5e                   	pop    %rsi
140047270:	c3                   	ret
140047271:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
140047278:	00 00 00 00
14004727c:	0f 1f 40 00          	nopl   0x0(%rax)
140047280:	41 55                	push   %r13
140047282:	41 54                	push   %r12
140047284:	55                   	push   %rbp
140047285:	57                   	push   %rdi
140047286:	56                   	push   %rsi
140047287:	53                   	push   %rbx
140047288:	48 83 ec 38          	sub    $0x38,%rsp
14004728c:	48 8b 2d 5d 18 1f 00 	mov    0x1f185d(%rip),%rbp        # 0x140238af0
140047293:	48 8b 45 00          	mov    0x0(%rbp),%rax
140047297:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
14004729c:	31 c0                	xor    %eax,%eax
14004729e:	48 89 cb             	mov    %rcx,%rbx
1400472a1:	48 89 d7             	mov    %rdx,%rdi
1400472a4:	4c 89 c6             	mov    %r8,%rsi
1400472a7:	48 85 c9             	test   %rcx,%rcx
1400472aa:	0f 84 a0 00 00 00    	je     0x140047350
1400472b0:	80 39 00             	cmpb   $0x0,(%rcx)
1400472b3:	0f 84 97 00 00 00    	je     0x140047350
1400472b9:	4d 85 c0             	test   %r8,%r8
1400472bc:	0f 88 ce 00 00 00    	js     0x140047390
1400472c2:	4c 8b 2d 57 81 26 00 	mov    0x268157(%rip),%r13        # 0x1402af420
1400472c9:	41 ff d5             	call   *%r13
1400472cc:	45 31 c0             	xor    %r8d,%r8d
1400472cf:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
1400472d4:	48 89 d9             	mov    %rbx,%rcx
1400472d7:	c7 00 00 00 00 00    	movl   $0x0,(%rax)
1400472dd:	e8 7e 4f 0a 00       	call   0x1400ec260
1400472e2:	49 89 c4             	mov    %rax,%r12
1400472e5:	41 ff d5             	call   *%r13
1400472e8:	83 38 22             	cmpl   $0x22,(%rax)
1400472eb:	74 43                	je     0x140047330
1400472ed:	48 8b 4c 24 20       	mov    0x20(%rsp),%rcx
1400472f2:	48 39 cb             	cmp    %rcx,%rbx
1400472f5:	0f 84 85 00 00 00    	je     0x140047380
1400472fb:	e8 00 ff ff ff       	call   0x140047200
140047300:	48 89 c1             	mov    %rax,%rcx
140047303:	48 85 c0             	test   %rax,%rax
140047306:	74 78                	je     0x140047380
140047308:	4d 85 e4             	test   %r12,%r12
14004730b:	78 53                	js     0x140047360
14004730d:	74 61                	je     0x140047370
14004730f:	48 89 f0             	mov    %rsi,%rax
140047312:	48 99                	cqto
140047314:	48 f7 f9             	idiv   %rcx
140047317:	49 39 c4             	cmp    %rax,%r12
14004731a:	7e 54                	jle    0x140047370
14004731c:	41 ff d5             	call   *%r13
14004731f:	c7 00 22 00 00 00    	movl   $0x22,(%rax)
140047325:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
14004732c:	00 00 00 00
140047330:	31 c0                	xor    %eax,%eax
140047332:	48 8b 54 24 28       	mov    0x28(%rsp),%rdx
140047337:	48 2b 55 00          	sub    0x0(%rbp),%rdx
14004733b:	75 4e                	jne    0x14004738b
14004733d:	48 83 c4 38          	add    $0x38,%rsp
140047341:	5b                   	pop    %rbx
140047342:	5e                   	pop    %rsi
140047343:	5f                   	pop    %rdi
140047344:	5d                   	pop    %rbp
140047345:	41 5c                	pop    %r12
140047347:	41 5d                	pop    %r13
140047349:	c3                   	ret
14004734a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
140047350:	ff 15 ca 80 26 00    	call   *0x2680ca(%rip)        # 0x1402af420
140047356:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
14004735c:	eb d2                	jmp    0x140047330
14004735e:	66 90                	xchg   %ax,%ax
140047360:	48 89 f0             	mov    %rsi,%rax
140047363:	48 f7 d8             	neg    %rax
140047366:	48 99                	cqto
140047368:	48 f7 f9             	idiv   %rcx
14004736b:	49 39 c4             	cmp    %rax,%r12
14004736e:	7c ac                	jl     0x14004731c
140047370:	4c 0f af e1          	imul   %rcx,%r12
140047374:	b8 01 00 00 00       	mov    $0x1,%eax
140047379:	4c 89 27             	mov    %r12,(%rdi)
14004737c:	eb b4                	jmp    0x140047332
14004737e:	66 90                	xchg   %ax,%ax
140047380:	41 ff d5             	call   *%r13