1004207dd:	4c 89 c7             	mov    %r8,%rdi
1004207e0:	e8 cb 12 00 00       	call   100421ab0 <.text+0x20ab0>
1004207e5:	48 85 c0             	test   %rax,%rax
1004207e8:	74 0e                	je     1004207f8 <.text+0x1f7f8>
1004207ea:	48 83 c4 20          	add    $0x20,%rsp
1004207ee:	5b                   	pop    %rbx
1004207ef:	5e                   	pop    %rsi
1004207f0:	5f                   	pop    %rdi
1004207f1:	c3                   	ret
1004207f2:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
1004207f8:	48 85 db             	test   %rbx,%rbx
1004207fb:	74 0a                	je     100420807 <.text+0x1f807>
1004207fd:	48 85 f6             	test   %rsi,%rsi
100420800:	74 e8                	je     1004207ea <.text+0x1f7ea>
100420802:	48 85 ff             	test   %rdi,%rdi
100420805:	74 e3                	je     1004207ea <.text+0x1f7ea>
100420807:	e8 b4 04 00 00       	call   100420cc0 <.text+0x1fcc0>
10042080c:	90                   	nop
10042080d:	0f 1f 00             	nopl   (%rax)
100420810:	48 83 ec 28          	sub    $0x28,%rsp
100420814:	e8 47 11 00 00       	call   100421960 <.text+0x20960>
100420819:	48 85 c0             	test   %rax,%rax
10042081c:	74 05                	je     100420823 <.text+0x1f823>
10042081e:	48 83 c4 28          	add    $0x28,%rsp
100420822:	c3                   	ret
100420823:	e8 98 04 00 00       	call   100420cc0 <.text+0x1fcc0>
100420828:	90                   	nop
100420829:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
100420830:	48 83 ec 28          	sub    $0x28,%rsp
100420834:	e8 27 11 00 00       	call   100421960 <.text+0x20960>
100420839:	48 85 c0             	test   %rax,%rax
10042083c:	74 05                	je     100420843 <.text+0x1f843>
10042083e:	48 83 c4 28          	add    $0x28,%rsp
100420842:	c3                   	ret
100420843:	e8 78 04 00 00       	call   100420cc0 <.text+0x1fcc0>
100420848:	90                   	nop
100420849:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
100420850:	eb be                	jmp    100420810 <.text+0x1f810>
100420852:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
100420859:	00 00 00 00
10042085d:	0f 1f 00             	nopl   (%rax)
100420860:	56                   	push   %rsi
100420861:	53                   	push   %rbx
100420862:	48 83 ec 28          	sub    $0x28,%rsp
100420866:	48 89 ce             	mov    %rcx,%rsi
100420869:	48 89 d3             	mov    %rdx,%rbx
10042086c:	e8 2f 12 00 00       	call   100421aa0 <.text+0x20aa0>
100420871:	48 85 c0             	test   %rax,%rax
100420874:	74 07                	je     10042087d <.text+0x1f87d>
100420876:	48 83 c4 28          	add    $0x28,%rsp
10042087a:	5b                   	pop    %rbx
10042087b:	5e                   	pop    %rsi
10042087c:	c3                   	ret
10042087d:	48 85 f6             	test   %rsi,%rsi
100420880:	74 05                	je     100420887 <.text+0x1f887>
100420882:	48 85 db             	test   %rbx,%rbx
100420885:	74 ef                	je     100420876 <.text+0x1f876>
100420887:	e8 34 04 00 00       	call   100420cc0 <.text+0x1fcc0>
10042088c:	90                   	nop
10042088d:	0f 1f 00             	nopl   (%rax)
100420890:	48 83 ec 28          	sub    $0x28,%rsp
100420894:	31 c0                	xor    %eax,%eax
100420896:	48 85 d2             	test   %rdx,%rdx
100420899:	0f 94 c0             	sete   %al
10042089c:	48 09 c2             	or     %rax,%rdx
10042089f:	e8 fc 11 00 00       	call   100421aa0 <.text+0x20aa0>
1004208a4:	48 85 c0             	test   %rax,%rax
1004208a7:	74 05                	je     1004208ae <.text+0x1f8ae>
1004208a9:	48 83 c4 28          	add    $0x28,%rsp
1004208ad:	c3                   	ret
1004208ae:	e8 0d 04 00 00       	call   100420cc0 <.text+0x1fcc0>
1004208b3:	90                   	nop
1004208b4:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
1004208bb:	00 00 00 00
1004208bf:	90                   	nop
1004208c0:	57                   	push   %rdi
1004208c1:	56                   	push   %rsi
1004208c2:	53                   	push   %rbx
1004208c3:	48 83 ec 20          	sub    $0x20,%rsp
1004208c7:	48 89 cb             	mov    %rcx,%rbx
1004208ca:	48 89 d6             	mov    %rdx,%rsi
1004208cd:	4c 89 c7             	mov    %r8,%rdi
1004208d0:	e8 db 11 00 00       	call   100421ab0 <.text+0x20ab0>
1004208d5:	48 85 c0             	test   %rax,%rax
1004208d8:	74 0e                	je     1004208e8 <.text+0x1f8e8>
1004208da:	48 83 c4 20          	add    $0x20,%rsp
1004208de:	5b                   	pop    %rbx
1004208df:	5e                   	pop    %rsi
1004208e0:	5f                   	pop    %rdi
1004208e1:	c3                   	ret
1004208e2:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
1004208e8:	48 85 db             	test   %rbx,%rbx
1004208eb:	74 0a                	je     1004208f7 <.text+0x1f8f7>
1004208ed:	48 85 f6             	test   %rsi,%rsi
1004208f0:	74 e8                	je     1004208da <.text+0x1f8da>
1004208f2:	48 85 ff             	test   %rdi,%rdi
1004208f5:	74 e3                	je     1004208da <.text+0x1f8da>
1004208f7:	e8 c4 03 00 00       	call   100420cc0 <.text+0x1fcc0>
1004208fc:	90                   	nop
1004208fd:	0f 1f 00             	nopl   (%rax)
100420900:	48 83 ec 28          	sub    $0x28,%rsp
100420904:	48 85 d2             	test   %rdx,%rdx
100420907:	74 17                	je     100420920 <.text+0x1f920>
100420909:	4d 85 c0             	test   %r8,%r8
10042090c:	74 12                	je     100420920 <.text+0x1f920>
10042090e:	e8 9d 11 00 00       	call   100421ab0 <.text+0x20ab0>
100420913:	48 85 c0             	test   %rax,%rax
100420916:	74 15                	je     10042092d <.text+0x1f92d>
100420918:	48 83 c4 28          	add    $0x28,%rsp
10042091c:	c3                   	ret
10042091d:	0f 1f 00             	nopl   (%rax)
100420920:	ba 01 00 00 00       	mov    $0x1,%edx
100420925:	41 b8 01 00 00 00    	mov    $0x1,%r8d
10042092b:	eb e1                	jmp    10042090e <.text+0x1f90e>
10042092d:	e8 8e 03 00 00       	call   100420cc0 <.text+0x1fcc0>
100420932:	90                   	nop
100420933:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
10042093a:	00 00 00 00
10042093e:	66 90                	xchg   %ax,%ax
100420940:	48 83 ec 28          	sub    $0x28,%rsp
100420944:	49 89 d0             	mov    %rdx,%r8
100420947:	48 89 ca             	mov    %rcx,%rdx
10042094a:	31 c9                	xor    %ecx,%ecx
10042094c:	e8 5f 11 00 00       	call   100421ab0 <.text+0x20ab0>
100420951:	48 85 c0             	test   %rax,%rax
100420954:	74 0a                	je     100420960 <.text+0x1f960>
100420956:	48 83 c4 28          	add    $0x28,%rsp
10042095a:	c3                   	ret
10042095b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
100420960:	e8 5b 03 00 00       	call   100420cc0 <.text+0x1fcc0>
100420965:	90                   	nop
100420966:	66 2e 0f 1f 84 00 00 	cs nopw 0x0(%rax,%rax,1)
10042096d:	00 00 00
100420970:	48 83 ec 28          	sub    $0x28,%rsp
100420974:	49 89 d0             	mov    %rdx,%r8
100420977:	48 85 c9             	test   %rcx,%rcx
10042097a:	74 1c                	je     100420998 <.text+0x1f998>
10042097c:	48 89 ca             	mov    %rcx,%rdx
10042097f:	4d 85 c0             	test   %r8,%r8
100420982:	74 14                	je     100420998 <.text+0x1f998>
100420984:	31 c9                	xor    %ecx,%ecx
100420986:	e8 25 11 00 00       	call   100421ab0 <.text+0x20ab0>
10042098b:	48 85 c0             	test   %rax,%rax
10042098e:	74 15                	je     1004209a5 <.text+0x1f9a5>
100420990:	48 83 c4 28          	add    $0x28,%rsp
100420994:	c3                   	ret
100420995:	0f 1f 00             	nopl   (%rax)
100420998:	ba 01 00 00 00       	mov    $0x1,%edx
10042099d:	41 b8 01 00 00 00    	mov    $0x1,%r8d
1004209a3:	eb df                	jmp    100420984 <.text+0x1f984>
1004209a5:	e8 16 03 00 00       	call   100420cc0 <.text+0x1fcc0>
1004209aa:	90                   	nop
1004209ab:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1004209b0:	56                   	push   %rsi
1004209b1:	53                   	push   %rbx
1004209b2:	48 83 ec 28          	sub    $0x28,%rsp
1004209b6:	48 8b 1a             	mov    (%rdx),%rbx
1004209b9:	48 89 d6             	mov    %rdx,%rsi
1004209bc:	48 85 c9             	test   %rcx,%rcx
1004209bf:	74 3f                	je     100420a00 <.text+0x1fa00>
1004209c1:	48 89 d8             	mov    %rbx,%rax
1004209c4:	48 d1 e8             	shr    $1,%rax
1004209c7:	48 83 c0 01          	add    $0x1,%rax
1004209cb:	48 01 c3             	add    %rax,%rbx
1004209ce:	72 25                	jb     1004209f5 <.text+0x1f9f5>
1004209d0:	41 b8 01 00 00 00    	mov    $0x1,%r8d
1004209d6:	48 89 da             	mov    %rbx,%rdx
1004209d9:	e8 d2 10 00 00       	call   100421ab0 <.text+0x20ab0>
1004209de:	48 85 c0             	test   %rax,%rax
1004209e1:	74 0d                	je     1004209f0 <.text+0x1f9f0>
1004209e3:	48 89 1e             	mov    %rbx,(%rsi)
1004209e6:	48 83 c4 28          	add    $0x28,%rsp
1004209ea:	5b                   	pop    %rbx
1004209eb:	5e                   	pop    %rsi
1004209ec:	c3                   	ret
1004209ed:	0f 1f 00             	nopl   (%rax)
1004209f0:	48 85 db             	test   %rbx,%rbx
1004209f3:	74 ee                	je     1004209e3 <.text+0x1f9e3>
1004209f5:	e8 c6 02 00 00       	call   100420cc0 <.text+0x1fcc0>
1004209fa:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
100420a00:	48 85 db             	test   %rbx,%rbx
100420a03:	b8 80 00 00 00       	mov    $0x80,%eax
100420a08:	41 b8 01 00 00 00    	mov    $0x1,%r8d
100420a0e:	48 0f 44 d8          	cmove  %rax,%rbx
100420a12:	48 89 da             	mov    %rbx,%rdx
100420a15:	e8 96 10 00 00       	call   100421ab0 <.text+0x20ab0>
100420a1a:	48 85 c0             	test   %rax,%rax
100420a1d:	74 d6                	je     1004209f5 <.text+0x1f9f5>
100420a1f:	48 89 1e             	mov    %rbx,(%rsi)
100420a22:	48 83 c4 28          	add    $0x28,%rsp
100420a26:	5b                   	pop    %rbx
100420a27:	5e                   	pop    %rsi
100420a28:	c3                   	ret
100420a29:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
100420a30:	57                   	push   %rdi
100420a31:	56                   	push   %rsi
100420a32:	53                   	push   %rbx
100420a33:	48 83 ec 20          	sub    $0x20,%rsp
100420a37:	48 8b 1a             	mov    (%rdx),%rbx
100420a3a:	48 89 d6             	mov    %rdx,%rsi
100420a3d:	4c 89 c7             	mov    %r8,%rdi
100420a40:	48 85 c9             	test   %rcx,%rcx
100420a43:	74 3b                	je     100420a80 <.text+0x1fa80>
100420a45:	48 89 d8             	mov    %rbx,%rax
100420a48:	48 d1 e8             	shr    $1,%rax
100420a4b:	48 83 c0 01          	add    $0x1,%rax
100420a4f:	48 01 c3             	add    %rax,%rbx
100420a52:	72 26                	jb     100420a7a <.text+0x1fa7a>
100420a54:	48 89 da             	mov    %rbx,%rdx
100420a57:	e8 54 10 00 00       	call   100421ab0 <.text+0x20ab0>
100420a5c:	48 85 c0             	test   %rax,%rax
100420a5f:	74 0f                	je     100420a70 <.text+0x1fa70>
100420a61:	48 89 1e             	mov    %rbx,(%rsi)
100420a64:	48 83 c4 20          	add    $0x20,%rsp
100420a68:	5b                   	pop    %rbx
100420a69:	5e                   	pop    %rsi
100420a6a:	5f                   	pop    %rdi
100420a6b:	c3                   	ret
100420a6c:	0f 1f 40 00          	nopl   0x0(%rax)
100420a70:	48 85 db             	test   %rbx,%rbx
100420a73:	74 ec                	je     100420a61 <.text+0x1fa61>
100420a75:	48 85 ff             	test   %rdi,%rdi
100420a78:	74 e7                	je     100420a61 <.text+0x1fa61>
100420a7a:	e8 41 02 00 00       	call   100420cc0 <.text+0x1fcc0>
100420a7f:	90                   	nop
100420a80:	48 85 db             	test   %rbx,%rbx
100420a83:	75 1a                	jne    100420a9f <.text+0x1fa9f>
100420a85:	31 d2                	xor    %edx,%edx
100420a87:	b8 80 00 00 00       	mov    $0x80,%eax
100420a8c:	49 f7 f0             	div    %r8
100420a8f:	31 d2                	xor    %edx,%edx
100420a91:	49 81 f8 80 00 00 00 	cmp    $0x80,%r8
100420a98:	0f 97 c2             	seta   %dl
100420a9b:	48 8d 1c 10          	lea    (%rax,%rdx,1),%rbx
100420a9f:	31 c9                	xor    %ecx,%ecx
100420aa1:	49 89 f8             	mov    %rdi,%r8
100420aa4:	48 89 da             	mov    %rbx,%rdx
100420aa7:	e8 04 10 00 00       	call   100421ab0 <.text+0x20ab0>
100420aac:	48 85 c0             	test   %rax,%rax
100420aaf:	74 c9                	je     100420a7a <.text+0x1fa7a>
100420ab1:	48 89 1e             	mov    %rbx,(%rsi)
100420ab4:	48 83 c4 20          	add    $0x20,%rsp
100420ab8:	5b                   	pop    %rbx
100420ab9:	5e                   	pop    %rsi
100420aba:	5f                   	pop    %rdi
100420abb:	c3                   	ret
100420abc:	0f 1f 40 00          	nopl   0x0(%rax)
100420ac0:	55                   	push   %rbp
100420ac1:	57                   	push   %rdi
100420ac2:	56                   	push   %rsi
100420ac3:	53                   	push   %rbx
100420ac4:	48 83 ec 28          	sub    $0x28,%rsp
100420ac8:	4c 8b 54 24 70       	mov    0x70(%rsp),%r10
100420acd:	48 89 cd             	mov    %rcx,%rbp
100420ad0:	48 8b 0a             	mov    (%rdx),%rcx
100420ad3:	48 89 d7             	mov    %rdx,%rdi
100420ad6:	48 89 cb             	mov    %rcx,%rbx
100420ad9:	48 d1 fb             	sar    $1,%rbx
100420adc:	48 01 cb             	add    %rcx,%rbx
100420adf:	0f 80 af 00 00 00    	jo     100420b94 <.text+0x1fb94>
100420ae5:	4c 39 cb             	cmp    %r9,%rbx
100420ae8:	4c 89 c8             	mov    %r9,%rax
100420aeb:	48 0f 4e c3          	cmovle %rbx,%rax
100420aef:	4d 85 c9             	test   %r9,%r9
100420af2:	48 0f 49 d8          	cmovns %rax,%rbx
100420af6:	48 89 de             	mov    %rbx,%rsi
100420af9:	49 0f af f2          	imul   %r10,%rsi
100420afd:	0f 80 85 00 00 00    	jo     100420b88 <.text+0x1fb88>
100420b03:	48 83 fe 7f          	cmp    $0x7f,%rsi
100420b07:	7e 4f                	jle    100420b58 <.text+0x1fb58>
100420b09:	48 85 ed             	test   %rbp,%rbp
100420b0c:	74 62                	je     100420b70 <.text+0x1fb70>
100420b0e:	66 90                	xchg   %ax,%ax
100420b10:	48 89 d8             	mov    %rbx,%rax
100420b13:	48 29 c8             	sub    %rcx,%rax
100420b16:	4c 39 c0             	cmp    %r8,%rax
100420b19:	7d 1b                	jge    100420b36 <.text+0x1fb36>
100420b1b:	4c 01 c1             	add    %r8,%rcx
100420b1e:	48 89 cb             	mov    %rcx,%rbx
100420b21:	70 60                	jo     100420b83 <.text+0x1fb83>
100420b23:	4c 39 c9             	cmp    %r9,%rcx
100420b26:	7e 05                	jle    100420b2d <.text+0x1fb2d>
100420b28:	4d 85 c9             	test   %r9,%r9
100420b2b:	79 56                	jns    100420b83 <.text+0x1fb83>
100420b2d:	49 0f af ca          	imul   %r10,%rcx
100420b31:	48 89 ce             	mov    %rcx,%rsi
100420b34:	70 4d                	jo     100420b83 <.text+0x1fb83>
100420b36:	48 89 f2             	mov    %rsi,%rdx
100420b39:	48 89 e9             	mov    %rbp,%rcx
100420b3c:	e8 5f 0f 00 00       	call   100421aa0 <.text+0x20aa0>
100420b41:	48 85 c0             	test   %rax,%rax
100420b44:	74 33                	je     100420b79 <.text+0x1fb79>
100420b46:	48 89 1f             	mov    %rbx,(%rdi)
100420b49:	48 83 c4 28          	add    $0x28,%rsp
100420b4d:	5b                   	pop    %rbx
100420b4e:	5e                   	pop    %rsi
100420b4f:	5f                   	pop    %rdi
100420b50:	5d                   	pop    %rbp
100420b51:	c3                   	ret
100420b52:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
100420b58:	be 80 00 00 00       	mov    $0x80,%esi
100420b5d:	48 89 f0             	mov    %rsi,%rax
100420b60:	48 99                	cqto
100420b62:	49 f7 fa             	idiv   %r10
100420b65:	48 89 c3             	mov    %rax,%rbx
100420b68:	48 29 d6             	sub    %rdx,%rsi
100420b6b:	48 85 ed             	test   %rbp,%rbp
100420b6e:	75 a0                	jne    100420b10 <.text+0x1fb10>
100420b70:	48 c7 07 00 00 00 00 	movq   $0x0,(%rdi)
100420b77:	eb 97                	jmp    100420b10 <.text+0x1fb10>
100420b79:	48 85 ed             	test   %rbp,%rbp
100420b7c:	74 05                	je     100420b83 <.text+0x1fb83>
100420b7e:	48 85 f6             	test   %rsi,%rsi
100420b81:	74 c3                	je     100420b46 <.text+0x1fb46>
100420b83:	e8 38 01 00 00       	call   100420cc0 <.text+0x1fcc0>
100420b88:	48 be ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rsi
100420b8f:	ff ff 7f
100420b92:	eb c9                	jmp    100420b5d <.text+0x1fb5d>
100420b94:	48 bb ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rbx
100420b9b:	ff ff 7f
100420b9e:	e9 42 ff ff ff       	jmp    100420ae5 <.text+0x1fae5>
100420ba3:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
100420baa:	00 00 00 00
100420bae:	66 90                	xchg   %ax,%ax
100420bb0:	48 83 ec 28          	sub    $0x28,%rsp
100420bb4:	e8 17 0b 00 00       	call   1004216d0 <.text+0x206d0>
100420bb9:	48 85 c0             	test   %rax,%rax
100420bbc:	74 05                	je     100420bc3 <.text+0x1fbc3>
100420bbe:	48 83 c4 28          	add    $0x28,%rsp
100420bc2:	c3                   	ret
100420bc3:	e8 f8 00 00 00       	call   100420cc0 <.text+0x1fcc0>
100420bc8:	90                   	nop
100420bc9:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
100420bd0:	ba 01 00 00 00       	mov    $0x1,%edx
100420bd5:	eb d9                	jmp    100420bb0 <.text+0x1fbb0>
100420bd7:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
100420bde:	00 00
100420be0:	48 83 ec 28          	sub    $0x28,%rsp
100420be4:	e8 e7 0a 00 00       	call   1004216d0 <.text+0x206d0>
100420be9:	48 85 c0             	test   %rax,%rax
100420bec:	74 05                	je     100420bf3 <.text+0x1fbf3>
100420bee:	48 83 c4 28          	add    $0x28,%rsp
100420bf2:	c3                   	ret
100420bf3:	e8 c8 00 00 00       	call   100420cc0 <.text+0x1fcc0>
100420bf8:	90                   	nop
100420bf9:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
100420c00:	ba 01 00 00 00       	mov    $0x1,%edx
100420c05:	eb d9                	jmp    100420be0 <.text+0x1fbe0>
100420c07:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
100420c0e:	00 00