140148ed6:	5b                   	pop    %rbx
140148ed7:	5e                   	pop    %rsi
140148ed8:	c3                   	ret
140148ed9:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140148ee0:	41 54                	push   %r12
140148ee2:	55                   	push   %rbp
140148ee3:	57                   	push   %rdi
140148ee4:	56                   	push   %rsi
140148ee5:	53                   	push   %rbx
140148ee6:	48 83 c4 80          	add    $0xffffffffffffff80,%rsp
140148eea:	4c 8b 25 ff fb 0e 00 	mov    0xefbff(%rip),%r12        # 0x140238af0
140148ef1:	49 8b 3c 24          	mov    (%r12),%rdi
140148ef5:	48 89 7c 24 78       	mov    %rdi,0x78(%rsp)
140148efa:	48 8d 7c 24 30       	lea    0x30(%rsp),%rdi
140148eff:	48 89 d6             	mov    %rdx,%rsi
140148f02:	48 89 ca             	mov    %rcx,%rdx
140148f05:	48 8d 6c 24 28       	lea    0x28(%rsp),%rbp
140148f0a:	48 89 f9             	mov    %rdi,%rcx
140148f0d:	e8 5e 16 ee ff       	call   0x14002a570
140148f12:	48 83 7e 08 00       	cmpq   $0x0,0x8(%rsi)
140148f17:	74 5f                	je     0x140148f78
140148f19:	31 db                	xor    %ebx,%ebx
140148f1b:	48 8d 6c 24 28       	lea    0x28(%rsp),%rbp
140148f20:	eb 21                	jmp    0x140148f43
140148f22:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
140148f28:	48 8b 06             	mov    (%rsi),%rax
140148f2b:	48 8b 04 d8          	mov    (%rax,%rbx,8),%rax
140148f2f:	48 f7 d0             	not    %rax
140148f32:	48 23 44 24 28       	and    0x28(%rsp),%rax
140148f37:	75 57                	jne    0x140148f90
140148f39:	48 83 c3 01          	add    $0x1,%rbx
140148f3d:	48 3b 5e 08          	cmp    0x8(%rsi),%rbx
140148f41:	73 35                	jae    0x140148f78
140148f43:	48 89 fa             	mov    %rdi,%rdx
140148f46:	48 89 e9             	mov    %rbp,%rcx
140148f49:	e8 32 15 ee ff       	call   0x14002a480
140148f4e:	85 c0                	test   %eax,%eax
140148f50:	75 d6                	jne    0x140148f28
140148f52:	b8 01 00 00 00       	mov    $0x1,%eax
140148f57:	48 8b 54 24 78       	mov    0x78(%rsp),%rdx
140148f5c:	49 2b 14 24          	sub    (%r12),%rdx
140148f60:	75 32                	jne    0x140148f94
140148f62:	48 83 ec 80          	sub    $0xffffffffffffff80,%rsp
140148f66:	5b                   	pop    %rbx
140148f67:	5e                   	pop    %rsi
140148f68:	5f                   	pop    %rdi
140148f69:	5d                   	pop    %rbp
140148f6a:	41 5c                	pop    %r12
140148f6c:	c3                   	ret
140148f6d:	0f 1f 00             	nopl   (%rax)
140148f70:	48 83 7c 24 28 00    	cmpq   $0x0,0x28(%rsp)
140148f76:	75 18                	jne    0x140148f90
140148f78:	48 89 fa             	mov    %rdi,%rdx
140148f7b:	48 89 e9             	mov    %rbp,%rcx
140148f7e:	e8 fd 14 ee ff       	call   0x14002a480
140148f83:	85 c0                	test   %eax,%eax
140148f85:	75 e9                	jne    0x140148f70
140148f87:	eb c9                	jmp    0x140148f52
140148f89:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140148f90:	31 c0                	xor    %eax,%eax
140148f92:	eb c3                	jmp    0x140148f57
140148f94:	e8 d7 b8 09 00       	call   0x1401e4870
140148f99:	90                   	nop
140148f9a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
140148fa0:	41 54                	push   %r12
140148fa2:	55                   	push   %rbp
140148fa3:	57                   	push   %rdi
140148fa4:	56                   	push   %rsi
140148fa5:	53                   	push   %rbx
140148fa6:	48 83 c4 80          	add    $0xffffffffffffff80,%rsp
140148faa:	4c 8b 25 3f fb 0e 00 	mov    0xefb3f(%rip),%r12        # 0x140238af0
140148fb1:	49 8b 3c 24          	mov    (%r12),%rdi
140148fb5:	48 89 7c 24 78       	mov    %rdi,0x78(%rsp)
140148fba:	48 8b 79 08          	mov    0x8(%rcx),%rdi
140148fbe:	48 89 d3             	mov    %rdx,%rbx
140148fc1:	48 8b 52 18          	mov    0x18(%rdx),%rdx
140148fc5:	48 89 ce             	mov    %rcx,%rsi
140148fc8:	48 c1 ea 06          	shr    $0x6,%rdx
140148fcc:	48 83 c2 01          	add    $0x1,%rdx
140148fd0:	48 39 d7             	cmp    %rdx,%rdi
140148fd3:	72 5b                	jb     0x140149030
140148fd5:	48 8d 7c 24 30       	lea    0x30(%rsp),%rdi
140148fda:	48 89 da             	mov    %rbx,%rdx
140148fdd:	48 8d 6c 24 28       	lea    0x28(%rsp),%rbp
140148fe2:	31 db                	xor    %ebx,%ebx
140148fe4:	48 89 f9             	mov    %rdi,%rcx
140148fe7:	e8 84 15 ee ff       	call   0x14002a570
140148fec:	eb 14                	jmp    0x140149002
140148fee:	66 90                	xchg   %ax,%ax
140148ff0:	48 8b 06             	mov    (%rsi),%rax
140148ff3:	48 8b 54 24 28       	mov    0x28(%rsp),%rdx
140148ff8:	48 01 d8             	add    %rbx,%rax
140148ffb:	48 83 c3 08          	add    $0x8,%rbx
140148fff:	48 09 10             	or     %rdx,(%rax)
140149002:	48 89 fa             	mov    %rdi,%rdx
140149005:	48 89 e9             	mov    %rbp,%rcx
140149008:	e8 73 14 ee ff       	call   0x14002a480
14014900d:	85 c0                	test   %eax,%eax
14014900f:	75 df                	jne    0x140148ff0
140149011:	48 8b 44 24 78       	mov    0x78(%rsp),%rax
140149016:	49 2b 04 24          	sub    (%r12),%rax
14014901a:	75 46                	jne    0x140149062
14014901c:	48 83 ec 80          	sub    $0xffffffffffffff80,%rsp
140149020:	5b                   	pop    %rbx
140149021:	5e                   	pop    %rsi
140149022:	5f                   	pop    %rdi
140149023:	5d                   	pop    %rbp
140149024:	41 5c                	pop    %r12
140149026:	c3                   	ret
140149027:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
14014902e:	00 00
140149030:	48 89 51 08          	mov    %rdx,0x8(%rcx)
140149034:	48 8b 09             	mov    (%rcx),%rcx
140149037:	48 c1 e2 03          	shl    $0x3,%rdx
14014903b:	e8 00 1c f8 ff       	call   0x1400cac40
140149040:	48 8b 56 08          	mov    0x8(%rsi),%rdx
140149044:	48 89 06             	mov    %rax,(%rsi)
140149047:	48 8d 0c f8          	lea    (%rax,%rdi,8),%rcx
14014904b:	48 29 fa             	sub    %rdi,%rdx
14014904e:	4c 8d 04 d5 00 00 00 	lea    0x0(,%rdx,8),%r8
140149055:	00
140149056:	31 d2                	xor    %edx,%edx
140149058:	e8 a3 0d 0a 00       	call   0x1401e9e00
14014905d:	e9 73 ff ff ff       	jmp    0x140148fd5
140149062:	e8 09 b8 09 00       	call   0x1401e4870
140149067:	90                   	nop
140149068:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
14014906f:	00
140149070:	56                   	push   %rsi
140149071:	53                   	push   %rbx
140149072:	4c 8b 41 08          	mov    0x8(%rcx),%r8
140149076:	4d 85 c0             	test   %r8,%r8
140149079:	74 7b                	je     0x1401490f6
14014907b:	49 ba 55 55 55 55 55 	movabs $0x5555555555555555,%r10
140149082:	55 55 55
140149085:	48 8b 11             	mov    (%rcx),%rdx
140149088:	49 b9 33 33 33 33 33 	movabs $0x3333333333333333,%r9
14014908f:	33 33 33
140149092:	48 b9 0f 0f 0f 0f 0f 	movabs $0xf0f0f0f0f0f0f0f,%rcx
140149099:	0f 0f 0f
14014909c:	49 bb 01 01 01 01 01 	movabs $0x101010101010101,%r11
1401490a3:	01 01 01
1401490a6:	4a 8d 1c c2          	lea    (%rdx,%r8,8),%rbx
1401490aa:	45 31 c0             	xor    %r8d,%r8d
1401490ad:	0f 1f 00             	nopl   (%rax)
1401490b0:	48 8b 32             	mov    (%rdx),%rsi
1401490b3:	48 83 c2 08          	add    $0x8,%rdx
1401490b7:	48 89 f0             	mov    %rsi,%rax
1401490ba:	4c 21 d6             	and    %r10,%rsi
1401490bd:	48 d1 e8             	shr    $1,%rax
1401490c0:	4c 21 d0             	and    %r10,%rax
1401490c3:	48 01 f0             	add    %rsi,%rax
1401490c6:	48 89 c6             	mov    %rax,%rsi
1401490c9:	48 c1 e8 02          	shr    $0x2,%rax
1401490cd:	4c 21 ce             	and    %r9,%rsi
1401490d0:	4c 21 c8             	and    %r9,%rax
1401490d3:	48 01 f0             	add    %rsi,%rax
1401490d6:	48 89 c6             	mov    %rax,%rsi
1401490d9:	48 c1 e8 04          	shr    $0x4,%rax
1401490dd:	48 21 ce             	and    %rcx,%rsi
1401490e0:	48 21 c8             	and    %rcx,%rax
1401490e3:	48 01 f0             	add    %rsi,%rax
1401490e6:	49 0f af c3          	imul   %r11,%rax
1401490ea:	48 c1 e8 38          	shr    $0x38,%rax
1401490ee:	49 01 c0             	add    %rax,%r8
1401490f1:	48 39 d3             	cmp    %rdx,%rbx
1401490f4:	75 ba                	jne    0x1401490b0
1401490f6:	4c 89 c0             	mov    %r8,%rax
1401490f9:	5b                   	pop    %rbx
1401490fa:	5e                   	pop    %rsi
1401490fb:	c3                   	ret
1401490fc:	0f 1f 40 00          	nopl   0x0(%rax)
140149100:	41 56                	push   %r14
140149102:	41 55                	push   %r13
140149104:	41 54                	push   %r12
140149106:	55                   	push   %rbp
140149107:	57                   	push   %rdi
140149108:	56                   	push   %rsi
140149109:	53                   	push   %rbx
14014910a:	48 83 c4 80          	add    $0xffffffffffffff80,%rsp
14014910e:	4c 8b 35 db f9 0e 00 	mov    0xef9db(%rip),%r14        # 0x140238af0
140149115:	31 db                	xor    %ebx,%ebx
140149117:	48 bd 55 55 55 55 55 	movabs $0x5555555555555555,%rbp
14014911e:	55 55 55
140149121:	48 bf 33 33 33 33 33 	movabs $0x3333333333333333,%rdi
140149128:	33 33 33
14014912b:	48 be 0f 0f 0f 0f 0f 	movabs $0xf0f0f0f0f0f0f0f,%rsi
140149132:	0f 0f 0f
140149135:	4d 8b 26             	mov    (%r14),%r12
140149138:	4c 89 64 24 78       	mov    %r12,0x78(%rsp)
14014913d:	4c 8d 64 24 30       	lea    0x30(%rsp),%r12
140149142:	48 89 ca             	mov    %rcx,%rdx
140149145:	4c 8d 6c 24 28       	lea    0x28(%rsp),%r13
14014914a:	4c 89 e1             	mov    %r12,%rcx
14014914d:	e8 1e 14 ee ff       	call   0x14002a570
140149152:	eb 4d                	jmp    0x1401491a1
140149154:	0f 1f 40 00          	nopl   0x0(%rax)
140149158:	48 8b 54 24 28       	mov    0x28(%rsp),%rdx
14014915d:	48 89 d0             	mov    %rdx,%rax
140149160:	48 21 ea             	and    %rbp,%rdx
140149163:	48 d1 e8             	shr    $1,%rax
140149166:	48 21 e8             	and    %rbp,%rax
140149169:	48 01 d0             	add    %rdx,%rax
14014916c:	48 89 c2             	mov    %rax,%rdx
14014916f:	48 c1 e8 02          	shr    $0x2,%rax
140149173:	48 21 fa             	and    %rdi,%rdx
140149176:	48 21 f8             	and    %rdi,%rax
140149179:	48 01 d0             	add    %rdx,%rax
14014917c:	48 89 c2             	mov    %rax,%rdx
14014917f:	48 c1 e8 04          	shr    $0x4,%rax
140149183:	48 21 f2             	and    %rsi,%rdx
140149186:	48 21 f0             	and    %rsi,%rax
140149189:	48 01 d0             	add    %rdx,%rax
14014918c:	48 ba 01 01 01 01 01 	movabs $0x101010101010101,%rdx
140149193:	01 01 01
140149196:	48 0f af c2          	imul   %rdx,%rax
14014919a:	48 c1 e8 38          	shr    $0x38,%rax
14014919e:	48 01 c3             	add    %rax,%rbx
1401491a1:	4c 89 e2             	mov    %r12,%rdx
1401491a4:	4c 89 e9             	mov    %r13,%rcx
1401491a7:	e8 d4 12 ee ff       	call   0x14002a480
1401491ac:	85 c0                	test   %eax,%eax
1401491ae:	75 a8                	jne    0x140149158
1401491b0:	48 8b 44 24 78       	mov    0x78(%rsp),%rax
1401491b5:	49 2b 06             	sub    (%r14),%rax
1401491b8:	75 12                	jne    0x1401491cc
1401491ba:	48 89 d8             	mov    %rbx,%rax
1401491bd:	48 83 ec 80          	sub    $0xffffffffffffff80,%rsp
1401491c1:	5b                   	pop    %rbx
1401491c2:	5e                   	pop    %rsi
1401491c3:	5f                   	pop    %rdi
1401491c4:	5d                   	pop    %rbp
1401491c5:	41 5c                	pop    %r12
1401491c7:	41 5d                	pop    %r13
1401491c9:	41 5e                	pop    %r14
1401491cb:	c3                   	ret
1401491cc:	e8 9f b6 09 00       	call   0x1401e4870
1401491d1:	90                   	nop
1401491d2:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
1401491d9:	00 00 00 00
1401491dd:	0f 1f 00             	nopl   (%rax)
1401491e0:	48 8b 51 08          	mov    0x8(%rcx),%rdx
1401491e4:	48 85 d2             	test   %rdx,%rdx
1401491e7:	74 1f                	je     0x140149208
1401491e9:	48 8b 09             	mov    (%rcx),%rcx
1401491ec:	31 c0                	xor    %eax,%eax
1401491ee:	eb 09                	jmp    0x1401491f9
1401491f0:	48 83 c0 01          	add    $0x1,%rax
1401491f4:	48 39 d0             	cmp    %rdx,%rax
1401491f7:	74 0f                	je     0x140149208
1401491f9:	48 83 3c c1 00       	cmpq   $0x0,(%rcx,%rax,8)
1401491fe:	74 f0                	je     0x1401491f0
140149200:	31 c0                	xor    %eax,%eax
140149202:	c3                   	ret
140149203:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140149208:	b8 01 00 00 00       	mov    $0x1,%eax
14014920d:	c3                   	ret
14014920e:	66 90                	xchg   %ax,%ax
140149210:	48 8b 41 08          	mov    0x8(%rcx),%rax
140149214:	4c 8b 42 08          	mov    0x8(%rdx),%r8
140149218:	4c 39 c0             	cmp    %r8,%rax
14014921b:	72 43                	jb     0x140149260
14014921d:	4d 85 c0             	test   %r8,%r8
140149220:	74 56                	je     0x140149278
140149222:	4c 8b 0a             	mov    (%rdx),%r9
140149225:	31 c0                	xor    %eax,%eax
140149227:	48 8b 11             	mov    (%rcx),%rdx
14014922a:	eb 1d                	jmp    0x140149249
14014922c:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
140149233:	00 00 00 00
140149237:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
14014923e:	00 00
140149240:	48 83 c0 01          	add    $0x1,%rax
140149244:	49 39 c0             	cmp    %rax,%r8
140149247:	74 2f                	je     0x140149278
140149249:	4c 8b 14 c2          	mov    (%rdx,%rax,8),%r10
14014924d:	4d 39 14 c1          	cmp    %r10,(%r9,%rax,8)
140149251:	74 ed                	je     0x140149240
140149253:	31 c0                	xor    %eax,%eax
140149255:	c3                   	ret
140149256:	66 2e 0f 1f 84 00 00 	cs nopw 0x0(%rax,%rax,1)
14014925d:	00 00 00
140149260:	48 85 c0             	test   %rax,%rax
140149263:	74 49                	je     0x1401492ae
140149265:	49 89 c0             	mov    %rax,%r8
140149268:	48 89 c8             	mov    %rcx,%rax
14014926b:	48 89 d1             	mov    %rdx,%rcx
14014926e:	48 89 c2             	mov    %rax,%rdx
140149271:	eb af                	jmp    0x140149222
140149273:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140149278:	48 8b 41 08          	mov    0x8(%rcx),%rax
14014927c:	49 39 c0             	cmp    %rax,%r8
14014927f:	73 27                	jae    0x1401492a8
140149281:	48 8b 11             	mov    (%rcx),%rdx
140149284:	eb 13                	jmp    0x140149299
140149286:	66 2e 0f 1f 84 00 00 	cs nopw 0x0(%rax,%rax,1)
14014928d:	00 00 00
140149290:	49 83 c0 01          	add    $0x1,%r8
140149294:	4c 39 c0             	cmp    %r8,%rax
140149297:	74 0f                	je     0x1401492a8
140149299:	4a 83 3c c2 00       	cmpq   $0x0,(%rdx,%r8,8)
14014929e:	74 f0                	je     0x140149290
1401492a0:	eb b1                	jmp    0x140149253
1401492a2:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
1401492a8:	b8 01 00 00 00       	mov    $0x1,%eax
1401492ad:	c3                   	ret
1401492ae:	4c 89 c0             	mov    %r8,%rax
1401492b1:	48 89 d1             	mov    %rdx,%rcx
1401492b4:	45 31 c0             	xor    %r8d,%r8d
1401492b7:	eb c8                	jmp    0x140149281
1401492b9:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
1401492c0:	41 54                	push   %r12
1401492c2:	55                   	push   %rbp
1401492c3:	57                   	push   %rdi
1401492c4:	56                   	push   %rsi
1401492c5:	53                   	push   %rbx
1401492c6:	48 83 c4 80          	add    $0xffffffffffffff80,%rsp
1401492ca:	4c 8b 25 1f f8 0e 00 	mov    0xef81f(%rip),%r12        # 0x140238af0
1401492d1:	31 db                	xor    %ebx,%ebx
1401492d3:	49 8b 3c 24          	mov    (%r12),%rdi
1401492d7:	48 89 7c 24 78       	mov    %rdi,0x78(%rsp)
1401492dc:	48 8d 7c 24 30       	lea    0x30(%rsp),%rdi
1401492e1:	48 89 ce             	mov    %rcx,%rsi
1401492e4:	48 8d 6c 24 28       	lea    0x28(%rsp),%rbp
1401492e9:	48 89 f9             	mov    %rdi,%rcx
1401492ec:	e8 7f 12 ee ff       	call   0x14002a570
1401492f1:	eb 1e                	jmp    0x140149311
1401492f3:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1401492f8:	31 c0                	xor    %eax,%eax
1401492fa:	48 39 d3             	cmp    %rdx,%rbx
1401492fd:	73 0b                	jae    0x14014930a
1401492ff:	48 8b 06             	mov    (%rsi),%rax
140149302:	48 8b 04 d8          	mov    (%rax,%rbx,8),%rax
140149306:	48 83 c3 01          	add    $0x1,%rbx
14014930a:	48 39 44 24 28       	cmp    %rax,0x28(%rsp)
14014930f:	75 5f                	jne    0x140149370
140149311:	48 89 fa             	mov    %rdi,%rdx
140149314:	48 89 e9             	mov    %rbp,%rcx
140149317:	e8 64 11 ee ff       	call   0x14002a480
14014931c:	48 8b 56 08          	mov    0x8(%rsi),%rdx
140149320:	85 c0                	test   %eax,%eax
140149322:	75 d4                	jne    0x1401492f8
140149324:	48 39 d3             	cmp    %rdx,%rbx
140149327:	73 37                	jae    0x140149360
140149329:	48 8b 0e             	mov    (%rsi),%rcx
14014932c:	eb 0b                	jmp    0x140149339
14014932e:	66 90                	xchg   %ax,%ax
140149330:	48 83 c3 01          	add    $0x1,%rbx
140149334:	48 39 d3             	cmp    %rdx,%rbx
140149337:	74 27                	je     0x140149360