140013f0a:	53                   	push   %rbx
140013f0b:	56                   	push   %rsi
140013f0c:	57                   	push   %rdi
140013f0d:	41 54                	push   %r12
140013f0f:	41 55                	push   %r13
140013f11:	41 56                	push   %r14
140013f13:	41 57                	push   %r15
140013f15:	48 8b ec             	mov    %rsp,%rbp
140013f18:	48 83 ec 68          	sub    $0x68,%rsp
140013f1c:	33 ff                	xor    %edi,%edi
140013f1e:	45 8b f0             	mov    %r8d,%r14d
140013f21:	4c 63 e9             	movslq %ecx,%r13
140013f24:	49 8b d9             	mov    %r9,%rbx
140013f27:	48 8b f2             	mov    %rdx,%rsi
140013f2a:	45 85 c0             	test   %r8d,%r8d
140013f2d:	0f 84 f1 02 00 00    	je     0x140014224
140013f33:	48 85 d2             	test   %rdx,%rdx
140013f36:	75 37                	jne    0x140013f6f
140013f38:	41 c6 41 38 01       	movb   $0x1,0x38(%r9)
140013f3d:	45 33 c0             	xor    %r8d,%r8d
140013f40:	41 89 79 34          	mov    %edi,0x34(%r9)
140013f44:	33 d2                	xor    %edx,%edx
140013f46:	41 c6 41 30 01       	movb   $0x1,0x30(%r9)
140013f4b:	33 c9                	xor    %ecx,%ecx
140013f4d:	41 c7 41 2c 16 00 00 	movl   $0x16,0x2c(%r9)
140013f54:	00
140013f55:	45 33 c9             	xor    %r9d,%r9d
140013f58:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
140013f5d:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
140013f62:	e8 61 7b ff ff       	call   0x14000bac8
140013f67:	83 c8 ff             	or     $0xffffffff,%eax
140013f6a:	e9 b7 02 00 00       	jmp    0x140014226
140013f6f:	49 8b c5             	mov    %r13,%rax
140013f72:	48 8d 0d d7 25 01 00 	lea    0x125d7(%rip),%rcx        # 0x140026550
140013f79:	83 e0 3f             	and    $0x3f,%eax
140013f7c:	4d 8b e5             	mov    %r13,%r12
140013f7f:	49 c1 fc 06          	sar    $0x6,%r12
140013f83:	4c 8d 3c c0          	lea    (%rax,%rax,8),%r15
140013f87:	4a 8b 0c e1          	mov    (%rcx,%r12,8),%rcx
140013f8b:	42 8a 44 f9 39       	mov    0x39(%rcx,%r15,8),%al
140013f90:	88 45 c8             	mov    %al,-0x38(%rbp)
140013f93:	fe c8                	dec    %al
140013f95:	3c 01                	cmp    $0x1,%al
140013f97:	77 09                	ja     0x140013fa2
140013f99:	41 8b c6             	mov    %r14d,%eax
140013f9c:	f7 d0                	not    %eax
140013f9e:	a8 01                	test   $0x1,%al
140013fa0:	74 96                	je     0x140013f38
140013fa2:	42 f6 44 f9 38 20    	testb  $0x20,0x38(%rcx,%r15,8)
140013fa8:	74 0e                	je     0x140013fb8
140013faa:	33 d2                	xor    %edx,%edx
140013fac:	41 8b cd             	mov    %r13d,%ecx
140013faf:	44 8d 42 02          	lea    0x2(%rdx),%r8d
140013fb3:	e8 68 18 00 00       	call   0x140015820
140013fb8:	41 8b cd             	mov    %r13d,%ecx
140013fbb:	48 89 7d e0          	mov    %rdi,-0x20(%rbp)
140013fbf:	e8 14 f2 ff ff       	call   0x1400131d8
140013fc4:	33 c9                	xor    %ecx,%ecx
140013fc6:	4c 8d 05 83 25 01 00 	lea    0x12583(%rip),%r8        # 0x140026550
140013fcd:	85 c0                	test   %eax,%eax
140013fcf:	0f 84 1b 01 00 00    	je     0x1400140f0
140013fd5:	4b 8b 04 e0          	mov    (%r8,%r12,8),%rax
140013fd9:	42 38 4c f8 38       	cmp    %cl,0x38(%rax,%r15,8)
140013fde:	0f 8d 0c 01 00 00    	jge    0x1400140f0
140013fe4:	38 4b 28             	cmp    %cl,0x28(%rbx)
140013fe7:	75 11                	jne    0x140013ffa
140013fe9:	48 8b cb             	mov    %rbx,%rcx
140013fec:	e8 6f 58 ff ff       	call   0x140009860
140013ff1:	33 c9                	xor    %ecx,%ecx
140013ff3:	4c 8d 05 56 25 01 00 	lea    0x12556(%rip),%r8        # 0x140026550
140013ffa:	48 8b 43 18          	mov    0x18(%rbx),%rax
140013ffe:	48 39 88 38 01 00 00 	cmp    %rcx,0x138(%rax)
140014005:	75 0f                	jne    0x140014016
140014007:	4b 8b 04 e0          	mov    (%r8,%r12,8),%rax
14001400b:	42 38 4c f8 39       	cmp    %cl,0x39(%rax,%r15,8)
140014010:	0f 84 da 00 00 00    	je     0x1400140f0
140014016:	89 4d f0             	mov    %ecx,-0x10(%rbp)
140014019:	48 8d 55 f0          	lea    -0x10(%rbp),%rdx
14001401d:	4b 8b 0c e0          	mov    (%r8,%r12,8),%rcx
140014021:	4a 8b 4c f9 28       	mov    0x28(%rcx,%r15,8),%rcx
140014026:	ff 15 b4 40 00 00    	call   *0x40b4(%rip)        # 0x1400180e0
14001402c:	85 c0                	test   %eax,%eax
14001402e:	0f 84 b5 00 00 00    	je     0x1400140e9
140014034:	0f be 4d c8          	movsbl -0x38(%rbp),%ecx
140014038:	85 c9                	test   %ecx,%ecx
14001403a:	0f 84 86 00 00 00    	je     0x1400140c6
140014040:	83 e9 01             	sub    $0x1,%ecx
140014043:	74 09                	je     0x14001404e
140014045:	83 f9 01             	cmp    $0x1,%ecx
140014048:	0f 85 50 01 00 00    	jne    0x14001419e
14001404e:	4e 8d 24 36          	lea    (%rsi,%r14,1),%r12
140014052:	48 89 7d d0          	mov    %rdi,-0x30(%rbp)
140014056:	4c 8b fe             	mov    %rsi,%r15
140014059:	49 3b f4             	cmp    %r12,%rsi
14001405c:	0f 83 32 01 00 00    	jae    0x140014194
140014062:	44 8b 75 d4          	mov    -0x2c(%rbp),%r14d
140014066:	41 0f b7 07          	movzwl (%r15),%eax
14001406a:	0f b7 c8             	movzwl %ax,%ecx
14001406d:	66 89 45 c8          	mov    %ax,-0x38(%rbp)
140014071:	e8 46 1a 00 00       	call   0x140015abc
140014076:	0f b7 4d c8          	movzwl -0x38(%rbp),%ecx
14001407a:	66 3b c1             	cmp    %cx,%ax
14001407d:	75 39                	jne    0x1400140b8
14001407f:	41 83 c6 02          	add    $0x2,%r14d
140014083:	44 89 75 d4          	mov    %r14d,-0x2c(%rbp)
140014087:	66 83 f9 0a          	cmp    $0xa,%cx
14001408b:	75 1d                	jne    0x1400140aa
14001408d:	b9 0d 00 00 00       	mov    $0xd,%ecx
140014092:	e8 25 1a 00 00       	call   0x140015abc
140014097:	b9 0d 00 00 00       	mov    $0xd,%ecx
14001409c:	66 3b c1             	cmp    %cx,%ax
14001409f:	75 17                	jne    0x1400140b8
1400140a1:	41 ff c6             	inc    %r14d
1400140a4:	44 89 75 d4          	mov    %r14d,-0x2c(%rbp)
1400140a8:	ff c7                	inc    %edi
1400140aa:	49 83 c7 02          	add    $0x2,%r15
1400140ae:	4d 3b fc             	cmp    %r12,%r15
1400140b1:	72 b3                	jb     0x140014066
1400140b3:	e9 dc 00 00 00       	jmp    0x140014194
1400140b8:	ff 15 da 3f 00 00    	call   *0x3fda(%rip)        # 0x140018098
1400140be:	89 45 d0             	mov    %eax,-0x30(%rbp)
1400140c1:	e9 ce 00 00 00       	jmp    0x140014194
1400140c6:	45 8b ce             	mov    %r14d,%r9d
1400140c9:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
1400140ce:	4c 8b c6             	mov    %rsi,%r8
1400140d1:	48 8d 4d d0          	lea    -0x30(%rbp),%rcx
1400140d5:	41 8b d5             	mov    %r13d,%edx
1400140d8:	e8 df f4 ff ff       	call   0x1400135bc
1400140dd:	f2 0f 10 00          	movsd  (%rax),%xmm0
1400140e1:	8b 78 08             	mov    0x8(%rax),%edi
1400140e4:	e9 b0 00 00 00       	jmp    0x140014199
1400140e9:	4c 8d 05 60 24 01 00 	lea    0x12460(%rip),%r8        # 0x140026550
1400140f0:	49 8b cd             	mov    %r13,%rcx
1400140f3:	49 8b c5             	mov    %r13,%rax
1400140f6:	48 c1 f8 06          	sar    $0x6,%rax
1400140fa:	83 e1 3f             	and    $0x3f,%ecx
1400140fd:	49 8b 14 c0          	mov    (%r8,%rax,8),%rdx
140014101:	48 8d 0c c9          	lea    (%rcx,%rcx,8),%rcx
140014105:	40 38 7c ca 38       	cmp    %dil,0x38(%rdx,%rcx,8)
14001410a:	7d 55                	jge    0x140014161
14001410c:	0f be 4d c8          	movsbl -0x38(%rbp),%ecx
140014110:	85 c9                	test   %ecx,%ecx
140014112:	74 36                	je     0x14001414a
140014114:	83 e9 01             	sub    $0x1,%ecx
140014117:	74 1d                	je     0x140014136
140014119:	83 f9 01             	cmp    $0x1,%ecx
14001411c:	0f 85 83 00 00 00    	jne    0x1400141a5
140014122:	45 8b ce             	mov    %r14d,%r9d
140014125:	48 8d 4d d0          	lea    -0x30(%rbp),%rcx
140014129:	4c 8b c6             	mov    %rsi,%r8
14001412c:	41 8b d5             	mov    %r13d,%edx
14001412f:	e8 24 fa ff ff       	call   0x140013b58
140014134:	eb a7                	jmp    0x1400140dd
140014136:	45 8b ce             	mov    %r14d,%r9d
140014139:	48 8d 4d d0          	lea    -0x30(%rbp),%rcx
14001413d:	4c 8b c6             	mov    %rsi,%r8
140014140:	41 8b d5             	mov    %r13d,%edx
140014143:	e8 2c fb ff ff       	call   0x140013c74
140014148:	eb 93                	jmp    0x1400140dd
14001414a:	45 8b ce             	mov    %r14d,%r9d
14001414d:	48 8d 4d d0          	lea    -0x30(%rbp),%rcx
140014151:	4c 8b c6             	mov    %rsi,%r8
140014154:	41 8b d5             	mov    %r13d,%edx
140014157:	e8 f4 f8 ff ff       	call   0x140013a50
14001415c:	e9 7c ff ff ff       	jmp    0x1400140dd
140014161:	48 8b 4c ca 28       	mov    0x28(%rdx,%rcx,8),%rcx
140014166:	4c 8d 4d d4          	lea    -0x2c(%rbp),%r9
14001416a:	33 c0                	xor    %eax,%eax
14001416c:	48 8b d6             	mov    %rsi,%rdx
14001416f:	48 21 44 24 20       	and    %rax,0x20(%rsp)
140014174:	45 8b c6             	mov    %r14d,%r8d
140014177:	48 89 45 d0          	mov    %rax,-0x30(%rbp)
14001417b:	89 45 d8             	mov    %eax,-0x28(%rbp)
14001417e:	ff 15 64 40 00 00    	call   *0x4064(%rip)        # 0x1400181e8
140014184:	85 c0                	test   %eax,%eax
140014186:	75 09                	jne    0x140014191
140014188:	ff 15 0a 3f 00 00    	call   *0x3f0a(%rip)        # 0x140018098
14001418e:	89 45 d0             	mov    %eax,-0x30(%rbp)
140014191:	8b 7d d8             	mov    -0x28(%rbp),%edi
140014194:	f2 0f 10 45 d0       	movsd  -0x30(%rbp),%xmm0
140014199:	f2 0f 11 45 e0       	movsd  %xmm0,-0x20(%rbp)
14001419e:	4c 8d 05 ab 23 01 00 	lea    0x123ab(%rip),%r8        # 0x140026550
1400141a5:	48 8b 45 e0          	mov    -0x20(%rbp),%rax
1400141a9:	48 c1 e8 20          	shr    $0x20,%rax
1400141ad:	85 c0                	test   %eax,%eax
1400141af:	75 6c                	jne    0x14001421d
1400141b1:	8b 45 e0             	mov    -0x20(%rbp),%eax
1400141b4:	85 c0                	test   %eax,%eax
1400141b6:	74 2c                	je     0x1400141e4
1400141b8:	83 f8 05             	cmp    $0x5,%eax
1400141bb:	75 17                	jne    0x1400141d4
1400141bd:	c6 43 30 01          	movb   $0x1,0x30(%rbx)
1400141c1:	c7 43 2c 09 00 00 00 	movl   $0x9,0x2c(%rbx)
1400141c8:	c6 43 38 01          	movb   $0x1,0x38(%rbx)
1400141cc:	89 43 34             	mov    %eax,0x34(%rbx)
1400141cf:	e9 93 fd ff ff       	jmp    0x140013f67
1400141d4:	8b 4d e0             	mov    -0x20(%rbp),%ecx
1400141d7:	48 8b d3             	mov    %rbx,%rdx
1400141da:	e8 d9 7a ff ff       	call   0x14000bcb8
1400141df:	e9 83 fd ff ff       	jmp    0x140013f67
1400141e4:	49 8b cd             	mov    %r13,%rcx
1400141e7:	49 8b c5             	mov    %r13,%rax
1400141ea:	48 c1 f8 06          	sar    $0x6,%rax
1400141ee:	83 e1 3f             	and    $0x3f,%ecx
1400141f1:	49 8b 04 c0          	mov    (%r8,%rax,8),%rax
1400141f5:	48 8d 0c c9          	lea    (%rcx,%rcx,8),%rcx
1400141f9:	f6 44 c8 38 40       	testb  $0x40,0x38(%rax,%rcx,8)
1400141fe:	74 05                	je     0x140014205
140014200:	80 3e 1a             	cmpb   $0x1a,(%rsi)
140014203:	74 1f                	je     0x140014224
140014205:	83 63 34 00          	andl   $0x0,0x34(%rbx)
140014209:	c6 43 30 01          	movb   $0x1,0x30(%rbx)
14001420d:	c7 43 2c 1c 00 00 00 	movl   $0x1c,0x2c(%rbx)
140014214:	c6 43 38 01          	movb   $0x1,0x38(%rbx)
140014218:	e9 4a fd ff ff       	jmp    0x140013f67
14001421d:	8b 45 e4             	mov    -0x1c(%rbp),%eax
140014220:	2b c7                	sub    %edi,%eax
140014222:	eb 02                	jmp    0x140014226
140014224:	33 c0                	xor    %eax,%eax
140014226:	48 83 c4 68          	add    $0x68,%rsp
14001422a:	41 5f                	pop    %r15
14001422c:	41 5e                	pop    %r14
14001422e:	41 5d                	pop    %r13
140014230:	41 5c                	pop    %r12
140014232:	5f                   	pop    %rdi
140014233:	5e                   	pop    %rsi
140014234:	5b                   	pop    %rbx
140014235:	5d                   	pop    %rbp
140014236:	c3                   	ret
140014237:	cc                   	int3
140014238:	cc                   	int3
140014239:	cc                   	int3
14001423a:	cc                   	int3
14001423b:	cc                   	int3
14001423c:	cc                   	int3
14001423d:	cc                   	int3
14001423e:	cc                   	int3
14001423f:	cc                   	int3
140014240:	41 54                	push   %r12
140014242:	41 55                	push   %r13
140014244:	41 56                	push   %r14
140014246:	41 57                	push   %r15
140014248:	48 81 ec 48 04 00 00 	sub    $0x448,%rsp
14001424f:	48 8b 05 aa 0d 01 00 	mov    0x10daa(%rip),%rax        # 0x140025000
140014256:	48 33 c4             	xor    %rsp,%rax
140014259:	48 89 84 24 10 04 00 	mov    %rax,0x410(%rsp)
140014260:	00
140014261:	4d 8b e1             	mov    %r9,%r12
140014264:	4d 8b f0             	mov    %r8,%r14
140014267:	4c 8b fa             	mov    %rdx,%r15
14001426a:	4c 8b e9             	mov    %rcx,%r13
14001426d:	48 85 c9             	test   %rcx,%rcx
140014270:	75 1a                	jne    0x14001428c
140014272:	48 85 d2             	test   %rdx,%rdx
140014275:	74 15                	je     0x14001428c
140014277:	e8 84 7a ff ff       	call   0x14000bd00
14001427c:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
140014282:	e8 f9 78 ff ff       	call   0x14000bb80
140014287:	e9 2c 03 00 00       	jmp    0x1400145b8
14001428c:	4d 85 f6             	test   %r14,%r14
14001428f:	74 e6                	je     0x140014277
140014291:	4d 85 e4             	test   %r12,%r12
140014294:	74 e1                	je     0x140014277
140014296:	49 8b cc             	mov    %r12,%rcx
140014299:	e8 5e 18 00 00       	call   0x140015afc
14001429e:	33 d2                	xor    %edx,%edx
1400142a0:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
1400142a5:	41 b8 f0 01 00 00    	mov    $0x1f0,%r8d
1400142ab:	e8 10 2a 00 00       	call   0x140016cc0
1400142b0:	33 d2                	xor    %edx,%edx
1400142b2:	48 8d 8c 24 20 02 00 	lea    0x220(%rsp),%rcx
1400142b9:	00
1400142ba:	41 b8 f0 01 00 00    	mov    $0x1f0,%r8d
1400142c0:	e8 fb 29 00 00       	call   0x140016cc0
1400142c5:	49 83 ff 02          	cmp    $0x2,%r15
1400142c9:	0f 82 e9 02 00 00    	jb     0x1400145b8
1400142cf:	49 ff cf             	dec    %r15
1400142d2:	48 89 9c 24 40 04 00 	mov    %rbx,0x440(%rsp)
1400142d9:	00
1400142da:	4d 0f af fe          	imul   %r14,%r15
1400142de:	48 89 ac 24 38 04 00 	mov    %rbp,0x438(%rsp)
1400142e5:	00
1400142e6:	4d 03 fd             	add    %r13,%r15
1400142e9:	48 89 b4 24 30 04 00 	mov    %rsi,0x430(%rsp)
1400142f0:	00
1400142f1:	33 c9                	xor    %ecx,%ecx
1400142f3:	48 89 bc 24 28 04 00 	mov    %rdi,0x428(%rsp)
1400142fa:	00
1400142fb:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
140014300:	33 d2                	xor    %edx,%edx
140014302:	49 8b c7             	mov    %r15,%rax
140014305:	49 2b c5             	sub    %r13,%rax
140014308:	49 f7 f6             	div    %r14
14001430b:	48 8d 58 01          	lea    0x1(%rax),%rbx
14001430f:	48 83 fb 08          	cmp    $0x8,%rbx
140014313:	0f 87 8b 00 00 00    	ja     0x1400143a4
140014319:	4d 3b fd             	cmp    %r13,%r15
14001431c:	76 65                	jbe    0x140014383
14001431e:	4b 8d 34 2e          	lea    (%r14,%r13,1),%rsi
140014322:	49 8b dd             	mov    %r13,%rbx
140014325:	48 8b fe             	mov    %rsi,%rdi
140014328:	49 3b f7             	cmp    %r15,%rsi
14001432b:	77 20                	ja     0x14001434d
14001432d:	0f 1f 00             	nopl   (%rax)
140014330:	48 8b d3             	mov    %rbx,%rdx
140014333:	48 8b cf             	mov    %rdi,%rcx
140014336:	41 ff d4             	call   *%r12
140014339:	85 c0                	test   %eax,%eax
14001433b:	48 8b cf             	mov    %rdi,%rcx
14001433e:	48 0f 4e cb          	cmovle %rbx,%rcx
140014342:	49 03 fe             	add    %r14,%rdi
140014345:	48 8b d9             	mov    %rcx,%rbx
140014348:	49 3b ff             	cmp    %r15,%rdi
14001434b:	76 e3                	jbe    0x140014330
14001434d:	4d 8b c6             	mov    %r14,%r8
140014350:	49 8b d7             	mov    %r15,%rdx
140014353:	49 3b df             	cmp    %r15,%rbx
140014356:	74 1e                	je     0x140014376
140014358:	49 2b df             	sub    %r15,%rbx
14001435b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140014360:	0f b6 02             	movzbl (%rdx),%eax
140014363:	0f b6 0c 13          	movzbl (%rbx,%rdx,1),%ecx
140014367:	88 04 13             	mov    %al,(%rbx,%rdx,1)
14001436a:	88 0a                	mov    %cl,(%rdx)
14001436c:	48 8d 52 01          	lea    0x1(%rdx),%rdx
140014370:	49 83 e8 01          	sub    $0x1,%r8
140014374:	75 ea                	jne    0x140014360
140014376:	4d 2b fe             	sub    %r14,%r15
140014379:	4d 3b fd             	cmp    %r13,%r15
14001437c:	77 a4                	ja     0x140014322
14001437e:	48 8b 4c 24 20       	mov    0x20(%rsp),%rcx
140014383:	48 83 e9 01          	sub    $0x1,%rcx
140014387:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
14001438c:	0f 88 06 02 00 00    	js     0x140014598
140014392:	4c 8b 6c cc 30       	mov    0x30(%rsp,%rcx,8),%r13
140014397:	4c 8b bc cc 20 02 00 	mov    0x220(%rsp,%rcx,8),%r15
14001439e:	00
14001439f:	e9 5c ff ff ff       	jmp    0x140014300
1400143a4:	48 d1 eb             	shr    $1,%rbx
1400143a7:	49 8b cd             	mov    %r13,%rcx
1400143aa:	49 0f af de          	imul   %r14,%rbx
1400143ae:	4a 8d 3c 2b          	lea    (%rbx,%r13,1),%rdi
1400143b2:	48 8b d7             	mov    %rdi,%rdx
1400143b5:	41 ff d4             	call   *%r12
1400143b8:	85 c0                	test   %eax,%eax
1400143ba:	7e 2f                	jle    0x1400143eb
1400143bc:	4d 8b ce             	mov    %r14,%r9
1400143bf:	4c 8b c7             	mov    %rdi,%r8
1400143c2:	4c 3b ef             	cmp    %rdi,%r13
1400143c5:	74 24                	je     0x1400143eb