140e0536f:	4c 03 d1             	add    %rcx,%r10
140e05372:	41 8a d3             	mov    %r11b,%dl
140e05375:	45 84 ed             	test   %r13b,%r13b
140e05378:	74 66                	je     0x140e053e0
140e0537a:	45 84 f6             	test   %r14b,%r14b
140e0537d:	75 49                	jne    0x140e053c8
140e0537f:	48 85 ff             	test   %rdi,%rdi
140e05382:	74 44                	je     0x140e053c8
140e05384:	49 3b ca             	cmp    %r10,%rcx
140e05387:	74 05                	je     0x140e0538e
140e05389:	8a 11                	mov    (%rcx),%dl
140e0538b:	48 ff c1             	inc    %rcx
140e0538e:	48 ff cf             	dec    %rdi
140e05391:	8d 42 ff             	lea    -0x1(%rdx),%eax
140e05394:	3c 7d                	cmp    $0x7d,%al
140e05396:	77 e2                	ja     0x140e0537a
140e05398:	48 85 ff             	test   %rdi,%rdi
140e0539b:	74 16                	je     0x140e053b3
140e0539d:	48 8d 45 97          	lea    -0x69(%rbp),%rax
140e053a1:	49 83 f9 0f          	cmp    $0xf,%r9
140e053a5:	49 0f 47 c0          	cmova  %r8,%rax
140e053a9:	38 14 38             	cmp    %dl,(%rax,%rdi,1)
140e053ac:	75 15                	jne    0x140e053c3
140e053ae:	48 85 ff             	test   %rdi,%rdi
140e053b1:	75 c7                	jne    0x140e0537a
140e053b3:	48 8d 45 97          	lea    -0x69(%rbp),%rax
140e053b7:	49 83 f9 0f          	cmp    $0xf,%r9
140e053bb:	49 0f 47 c0          	cmova  %r8,%rax
140e053bf:	38 10                	cmp    %dl,(%rax)
140e053c1:	7e b7                	jle    0x140e0537a
140e053c3:	41 b6 01             	mov    $0x1,%r14b
140e053c6:	eb b2                	jmp    0x140e0537a
140e053c8:	48 8b 45 87          	mov    -0x79(%rbp),%rax
140e053cc:	45 84 e4             	test   %r12b,%r12b
140e053cf:	75 06                	jne    0x140e053d7
140e053d1:	c6 00 30             	movb   $0x30,(%rax)
140e053d4:	48 ff c0             	inc    %rax
140e053d7:	44 88 18             	mov    %r11b,(%rax)
140e053da:	44 88 75 84          	mov    %r14b,-0x7c(%rbp)
140e053de:	eb 07                	jmp    0x140e053e7
140e053e0:	40 f6 d6             	not    %sil
140e053e3:	44 88 5d 84          	mov    %r11b,-0x7c(%rbp)
140e053e7:	40 88 75 83          	mov    %sil,-0x7d(%rbp)
140e053eb:	0f b7 5d 83          	movzwl -0x7d(%rbp),%ebx
140e053ef:	48 8d 4d 97          	lea    -0x69(%rbp),%rcx
140e053f3:	e8 58 26 39 ff       	call   0x140197a50
140e053f8:	90                   	nop
140e053f9:	48 8d 4d b7          	lea    -0x49(%rbp),%rcx
140e053fd:	e8 4e 26 39 ff       	call   0x140197a50
140e05402:	0f b7 c3             	movzwl %bx,%eax
140e05405:	48 8b 4d 0f          	mov    0xf(%rbp),%rcx
140e05409:	48 33 cc             	xor    %rsp,%rcx
140e0540c:	e8 ef 60 01 00       	call   0x140e1b500
140e05411:	48 8b 9c 24 28 01 00 	mov    0x128(%rsp),%rbx
140e05418:	00
140e05419:	48 81 c4 d0 00 00 00 	add    $0xd0,%rsp
140e05420:	41 5f                	pop    %r15
140e05422:	41 5e                	pop    %r14
140e05424:	41 5d                	pop    %r13
140e05426:	41 5c                	pop    %r12
140e05428:	5f                   	pop    %rdi
140e05429:	5e                   	pop    %rsi
140e0542a:	5d                   	pop    %rbp
140e0542b:	c3                   	ret
140e0542c:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140e05431:	55                   	push   %rbp
140e05432:	56                   	push   %rsi
140e05433:	57                   	push   %rdi
140e05434:	41 54                	push   %r12
140e05436:	41 55                	push   %r13
140e05438:	41 56                	push   %r14
140e0543a:	41 57                	push   %r15
140e0543c:	48 8d 6c 24 e1       	lea    -0x1f(%rsp),%rbp
140e05441:	48 81 ec d0 00 00 00 	sub    $0xd0,%rsp
140e05448:	48 8b 05 b1 3a 5b 00 	mov    0x5b3ab1(%rip),%rax        # 0x1413b8f00
140e0544f:	48 33 c4             	xor    %rsp,%rax
140e05452:	48 89 45 0f          	mov    %rax,0xf(%rbp)
140e05456:	45 8b f1             	mov    %r9d,%r14d
140e05459:	44 89 4d 87          	mov    %r9d,-0x79(%rbp)
140e0545d:	4d 8b e8             	mov    %r8,%r13
140e05460:	4c 89 45 8f          	mov    %r8,-0x71(%rbp)
140e05464:	48 8b da             	mov    %rdx,%rbx
140e05467:	4c 8b e1             	mov    %rcx,%r12
140e0546a:	48 8b 75 7f          	mov    0x7f(%rbp),%rsi
140e0546e:	48 8b ce             	mov    %rsi,%rcx
140e05471:	e8 5a cf b5 ff       	call   0x1409623d0
140e05476:	48 8b f8             	mov    %rax,%rdi
140e05479:	48 8b 08             	mov    (%rax),%rcx
140e0547c:	48 8b 41 28          	mov    0x28(%rcx),%rax
140e05480:	48 8d 55 b7          	lea    -0x49(%rbp),%rdx
140e05484:	48 8b cf             	mov    %rdi,%rcx
140e05487:	ff 15 93 e5 17 00    	call   *0x17e593(%rip)        # 0x140f83a20
140e0548d:	90                   	nop
140e0548e:	48 83 7d c7 00       	cmpq   $0x0,-0x39(%rbp)
140e05493:	75 0c                	jne    0x140e054a1
140e05495:	33 ff                	xor    %edi,%edi
140e05497:	44 0f b7 ff          	movzwl %di,%r15d
140e0549b:	66 89 7d 83          	mov    %di,-0x7d(%rbp)
140e0549f:	eb 1a                	jmp    0x140e054bb
140e054a1:	48 8b 07             	mov    (%rdi),%rax
140e054a4:	48 8b cf             	mov    %rdi,%rcx
140e054a7:	48 8b 40 20          	mov    0x20(%rax),%rax
140e054ab:	ff 15 6f e5 17 00    	call   *0x17e56f(%rip)        # 0x140f83a20
140e054b1:	44 0f b7 f8          	movzwl %ax,%r15d
140e054b5:	66 89 45 83          	mov    %ax,-0x7d(%rbp)
140e054b9:	33 ff                	xor    %edi,%edi
140e054bb:	48 8b ce             	mov    %rsi,%rcx
140e054be:	e8 ed cc b5 ff       	call   0x1409621b0
140e054c3:	4c 8b d0             	mov    %rax,%r10
140e054c6:	48 8b 08             	mov    (%rax),%rcx
140e054c9:	48 8b 41 58          	mov    0x58(%rcx),%rax
140e054cd:	4c 8d 4d d7          	lea    -0x29(%rbp),%r9
140e054d1:	4c 8d 05 e3 b3 3d 00 	lea    0x3db3e3(%rip),%r8        # 0x1411e08bb
140e054d8:	48 8d 15 c1 b3 3d 00 	lea    0x3db3c1(%rip),%rdx        # 0x1411e08a0
140e054df:	49 8b ca             	mov    %r10,%rcx
140e054e2:	ff 15 38 e5 17 00    	call   *0x17e538(%rip)        # 0x140f83a20
140e054e8:	40 88 7d 80          	mov    %dil,-0x80(%rbp)
140e054ec:	be ff ff 00 00       	mov    $0xffff,%esi
140e054f1:	66 45 85 ff          	test   %r15w,%r15w
140e054f5:	0f 84 ed 00 00 00    	je     0x140e055e8
140e054fb:	49 8b d5             	mov    %r13,%rdx
140e054fe:	48 8b cb             	mov    %rbx,%rcx
140e05501:	e8 a2 1b 01 00       	call   0x140e170a8
140e05506:	84 c0                	test   %al,%al
140e05508:	0f 85 da 00 00 00    	jne    0x140e055e8
140e0550e:	48 8d 7b 0a          	lea    0xa(%rbx),%rdi
140e05512:	48 8b f7             	mov    %rdi,%rsi
140e05515:	45 33 c0             	xor    %r8d,%r8d
140e05518:	41 be ff ff 00 00    	mov    $0xffff,%r14d
140e0551e:	44 38 43 08          	cmp    %r8b,0x8(%rbx)
140e05522:	75 47                	jne    0x140e0556b
140e05524:	48 8b 0b             	mov    (%rbx),%rcx
140e05527:	48 85 c9             	test   %rcx,%rcx
140e0552a:	74 38                	je     0x140e05564
140e0552c:	48 8b 41 38          	mov    0x38(%rcx),%rax
140e05530:	48 8b 10             	mov    (%rax),%rdx
140e05533:	48 85 d2             	test   %rdx,%rdx
140e05536:	74 0e                	je     0x140e05546
140e05538:	48 8b 41 50          	mov    0x50(%rcx),%rax
140e0553c:	44 39 00             	cmp    %r8d,(%rax)
140e0553f:	7e 05                	jle    0x140e05546
140e05541:	0f b7 02             	movzwl (%rdx),%eax
140e05544:	eb 10                	jmp    0x140e05556
140e05546:	48 8b 01             	mov    (%rcx),%rax
140e05549:	48 8b 40 30          	mov    0x30(%rax),%rax
140e0554d:	ff 15 cd e4 17 00    	call   *0x17e4cd(%rip)        # 0x140f83a20
140e05553:	45 33 c0             	xor    %r8d,%r8d
140e05556:	66 44 3b f0          	cmp    %ax,%r14w
140e0555a:	74 08                	je     0x140e05564
140e0555c:	66 89 06             	mov    %ax,(%rsi)
140e0555f:	48 8b fe             	mov    %rsi,%rdi
140e05562:	eb 03                	jmp    0x140e05567
140e05564:	4c 89 03             	mov    %r8,(%rbx)
140e05567:	c6 43 08 01          	movb   $0x1,0x8(%rbx)
140e0556b:	66 44 39 3f          	cmp    %r15w,(%rdi)
140e0556f:	75 6c                	jne    0x140e055dd
140e05571:	48 8b 0b             	mov    (%rbx),%rcx
140e05574:	48 85 c9             	test   %rcx,%rcx
140e05577:	74 42                	je     0x140e055bb
140e05579:	48 8b 41 38          	mov    0x38(%rcx),%rax
140e0557d:	4c 39 00             	cmp    %r8,(%rax)
140e05580:	74 1e                	je     0x140e055a0
140e05582:	48 8b 41 50          	mov    0x50(%rcx),%rax
140e05586:	44 39 00             	cmp    %r8d,(%rax)
140e05589:	7e 15                	jle    0x140e055a0
140e0558b:	ff 08                	decl   (%rax)
140e0558d:	48 8b 49 38          	mov    0x38(%rcx),%rcx
140e05591:	48 8b 11             	mov    (%rcx),%rdx
140e05594:	48 8d 42 02          	lea    0x2(%rdx),%rax
140e05598:	48 89 01             	mov    %rax,(%rcx)
140e0559b:	0f b7 02             	movzwl (%rdx),%eax
140e0559e:	eb 10                	jmp    0x140e055b0
140e055a0:	48 8b 01             	mov    (%rcx),%rax
140e055a3:	48 8b 40 38          	mov    0x38(%rax),%rax
140e055a7:	ff 15 73 e4 17 00    	call   *0x17e473(%rip)        # 0x140f83a20
140e055ad:	45 33 c0             	xor    %r8d,%r8d
140e055b0:	66 44 3b f0          	cmp    %ax,%r14w
140e055b4:	74 05                	je     0x140e055bb
140e055b6:	41 8a c0             	mov    %r8b,%al
140e055b9:	eb 05                	jmp    0x140e055c0
140e055bb:	4c 89 03             	mov    %r8,(%rbx)
140e055be:	b0 01                	mov    $0x1,%al
140e055c0:	88 43 08             	mov    %al,0x8(%rbx)
140e055c3:	c6 45 80 01          	movb   $0x1,-0x80(%rbp)
140e055c7:	49 8b d5             	mov    %r13,%rdx
140e055ca:	48 8b cb             	mov    %rbx,%rcx
140e055cd:	e8 d6 1a 01 00       	call   0x140e170a8
140e055d2:	45 33 c0             	xor    %r8d,%r8d
140e055d5:	84 c0                	test   %al,%al
140e055d7:	0f 84 41 ff ff ff    	je     0x140e0551e
140e055dd:	44 8b 75 87          	mov    -0x79(%rbp),%r14d
140e055e1:	33 ff                	xor    %edi,%edi
140e055e3:	be ff ff 00 00       	mov    $0xffff,%esi
140e055e8:	4c 89 65 87          	mov    %r12,-0x79(%rbp)
140e055ec:	49 8b d5             	mov    %r13,%rdx
140e055ef:	48 8b cb             	mov    %rbx,%rcx
140e055f2:	e8 b1 1a 01 00       	call   0x140e170a8
140e055f7:	84 c0                	test   %al,%al
140e055f9:	0f 85 5c 01 00 00    	jne    0x140e0575b
140e055ff:	8a 4b 08             	mov    0x8(%rbx),%cl
140e05602:	84 c9                	test   %cl,%cl
140e05604:	75 42                	jne    0x140e05648
140e05606:	48 8b 0b             	mov    (%rbx),%rcx
140e05609:	48 85 c9             	test   %rcx,%rcx
140e0560c:	74 31                	je     0x140e0563f
140e0560e:	48 8b 41 38          	mov    0x38(%rcx),%rax
140e05612:	48 8b 10             	mov    (%rax),%rdx
140e05615:	48 85 d2             	test   %rdx,%rdx
140e05618:	74 0d                	je     0x140e05627
140e0561a:	48 8b 41 50          	mov    0x50(%rcx),%rax
140e0561e:	39 38                	cmp    %edi,(%rax)
140e05620:	7e 05                	jle    0x140e05627
140e05622:	0f b7 02             	movzwl (%rdx),%eax
140e05625:	eb 0d                	jmp    0x140e05634
140e05627:	48 8b 01             	mov    (%rcx),%rax
140e0562a:	48 8b 40 30          	mov    0x30(%rax),%rax
140e0562e:	ff 15 ec e3 17 00    	call   *0x17e3ec(%rip)        # 0x140f83a20
140e05634:	66 3b f0             	cmp    %ax,%si
140e05637:	74 06                	je     0x140e0563f
140e05639:	66 89 43 0a          	mov    %ax,0xa(%rbx)
140e0563d:	eb 03                	jmp    0x140e05642
140e0563f:	48 89 3b             	mov    %rdi,(%rbx)
140e05642:	c6 43 08 01          	movb   $0x1,0x8(%rbx)
140e05646:	b1 01                	mov    $0x1,%cl
140e05648:	0f b7 43 0a          	movzwl 0xa(%rbx),%eax
140e0564c:	66 3b 45 05          	cmp    0x5(%rbp),%ax
140e05650:	75 60                	jne    0x140e056b2
140e05652:	41 c6 04 24 2b       	movb   $0x2b,(%r12)
140e05657:	49 8d 44 24 01       	lea    0x1(%r12),%rax
140e0565c:	48 89 45 87          	mov    %rax,-0x79(%rbp)
140e05660:	48 8b 0b             	mov    (%rbx),%rcx
140e05663:	48 85 c9             	test   %rcx,%rcx
140e05666:	74 3d                	je     0x140e056a5
140e05668:	48 8b 41 38          	mov    0x38(%rcx),%rax
140e0566c:	48 39 38             	cmp    %rdi,(%rax)
140e0566f:	74 1d                	je     0x140e0568e
140e05671:	48 8b 41 50          	mov    0x50(%rcx),%rax
140e05675:	39 38                	cmp    %edi,(%rax)
140e05677:	7e 15                	jle    0x140e0568e
140e05679:	ff 08                	decl   (%rax)
140e0567b:	48 8b 49 38          	mov    0x38(%rcx),%rcx
140e0567f:	48 8b 11             	mov    (%rcx),%rdx
140e05682:	48 8d 42 02          	lea    0x2(%rdx),%rax
140e05686:	48 89 01             	mov    %rax,(%rcx)
140e05689:	0f b7 02             	movzwl (%rdx),%eax
140e0568c:	eb 0d                	jmp    0x140e0569b
140e0568e:	48 8b 01             	mov    (%rcx),%rax
140e05691:	48 8b 40 38          	mov    0x38(%rax),%rax
140e05695:	ff 15 85 e3 17 00    	call   *0x17e385(%rip)        # 0x140f83a20
140e0569b:	66 3b f0             	cmp    %ax,%si
140e0569e:	74 05                	je     0x140e056a5
140e056a0:	40 8a c7             	mov    %dil,%al
140e056a3:	eb 05                	jmp    0x140e056aa
140e056a5:	48 89 3b             	mov    %rdi,(%rbx)
140e056a8:	b0 01                	mov    $0x1,%al
140e056aa:	88 43 08             	mov    %al,0x8(%rbx)
140e056ad:	e9 a9 00 00 00       	jmp    0x140e0575b
140e056b2:	84 c9                	test   %cl,%cl
140e056b4:	75 44                	jne    0x140e056fa
140e056b6:	48 8b 0b             	mov    (%rbx),%rcx
140e056b9:	48 85 c9             	test   %rcx,%rcx
140e056bc:	74 31                	je     0x140e056ef
140e056be:	48 8b 41 38          	mov    0x38(%rcx),%rax
140e056c2:	48 8b 10             	mov    (%rax),%rdx
140e056c5:	48 85 d2             	test   %rdx,%rdx
140e056c8:	74 0d                	je     0x140e056d7
140e056ca:	48 8b 41 50          	mov    0x50(%rcx),%rax
140e056ce:	39 38                	cmp    %edi,(%rax)
140e056d0:	7e 05                	jle    0x140e056d7
140e056d2:	0f b7 02             	movzwl (%rdx),%eax
140e056d5:	eb 0d                	jmp    0x140e056e4
140e056d7:	48 8b 01             	mov    (%rcx),%rax
140e056da:	48 8b 40 30          	mov    0x30(%rax),%rax
140e056de:	ff 15 3c e3 17 00    	call   *0x17e33c(%rip)        # 0x140f83a20
140e056e4:	66 3b f0             	cmp    %ax,%si
140e056e7:	74 06                	je     0x140e056ef
140e056e9:	66 89 43 0a          	mov    %ax,0xa(%rbx)
140e056ed:	eb 07                	jmp    0x140e056f6
140e056ef:	48 89 3b             	mov    %rdi,(%rbx)
140e056f2:	0f b7 43 0a          	movzwl 0xa(%rbx),%eax
140e056f6:	c6 43 08 01          	movb   $0x1,0x8(%rbx)
140e056fa:	66 3b 45 03          	cmp    0x3(%rbp),%ax
140e056fe:	75 5b                	jne    0x140e0575b
140e05700:	41 c6 04 24 2d       	movb   $0x2d,(%r12)
140e05705:	49 8d 44 24 01       	lea    0x1(%r12),%rax
140e0570a:	48 89 45 87          	mov    %rax,-0x79(%rbp)
140e0570e:	48 8b 0b             	mov    (%rbx),%rcx
140e05711:	48 85 c9             	test   %rcx,%rcx
140e05714:	74 3e                	je     0x140e05754
140e05716:	48 8b 41 38          	mov    0x38(%rcx),%rax
140e0571a:	48 39 38             	cmp    %rdi,(%rax)
140e0571d:	74 1d                	je     0x140e0573c
140e0571f:	48 8b 41 50          	mov    0x50(%rcx),%rax
140e05723:	39 38                	cmp    %edi,(%rax)
140e05725:	7e 15                	jle    0x140e0573c
140e05727:	ff 08                	decl   (%rax)
140e05729:	48 8b 49 38          	mov    0x38(%rcx),%rcx
140e0572d:	48 8b 11             	mov    (%rcx),%rdx
140e05730:	48 8d 42 02          	lea    0x2(%rdx),%rax
140e05734:	48 89 01             	mov    %rax,(%rcx)
140e05737:	0f b7 02             	movzwl (%rdx),%eax
140e0573a:	eb 0d                	jmp    0x140e05749
140e0573c:	48 8b 01             	mov    (%rcx),%rax
140e0573f:	48 8b 40 38          	mov    0x38(%rax),%rax
140e05743:	ff 15 d7 e2 17 00    	call   *0x17e2d7(%rip)        # 0x140f83a20
140e05749:	66 3b f0             	cmp    %ax,%si
140e0574c:	74 06                	je     0x140e05754
140e0574e:	40 88 7b 08          	mov    %dil,0x8(%rbx)
140e05752:	eb 07                	jmp    0x140e0575b
140e05754:	48 89 3b             	mov    %rdi,(%rbx)
140e05757:	c6 43 08 01          	movb   $0x1,0x8(%rbx)
140e0575b:	66 45 85 ff          	test   %r15w,%r15w
140e0575f:	0f 84 b6 00 00 00    	je     0x140e0581b
140e05765:	e9 9e 00 00 00       	jmp    0x140e05808
140e0576a:	40 38 7b 08          	cmp    %dil,0x8(%rbx)
140e0576e:	75 40                	jne    0x140e057b0
140e05770:	48 8b 0b             	mov    (%rbx),%rcx
140e05773:	48 85 c9             	test   %rcx,%rcx
140e05776:	74 31                	je     0x140e057a9
140e05778:	48 8b 41 38          	mov    0x38(%rcx),%rax
140e0577c:	48 8b 10             	mov    (%rax),%rdx
140e0577f:	48 85 d2             	test   %rdx,%rdx
140e05782:	74 0d                	je     0x140e05791
140e05784:	48 8b 41 50          	mov    0x50(%rcx),%rax
140e05788:	39 38                	cmp    %edi,(%rax)
140e0578a:	7e 05                	jle    0x140e05791
140e0578c:	0f b7 02             	movzwl (%rdx),%eax
140e0578f:	eb 0d                	jmp    0x140e0579e
140e05791:	48 8b 01             	mov    (%rcx),%rax
140e05794:	48 8b 40 30          	mov    0x30(%rax),%rax
140e05798:	ff 15 82 e2 17 00    	call   *0x17e282(%rip)        # 0x140f83a20
140e0579e:	66 3b f0             	cmp    %ax,%si
140e057a1:	74 06                	je     0x140e057a9
140e057a3:	66 89 43 0a          	mov    %ax,0xa(%rbx)
140e057a7:	eb 03                	jmp    0x140e057ac
140e057a9:	48 89 3b             	mov    %rdi,(%rbx)
140e057ac:	c6 43 08 01          	movb   $0x1,0x8(%rbx)
140e057b0:	66 44 39 7b 0a       	cmp    %r15w,0xa(%rbx)
140e057b5:	75 64                	jne    0x140e0581b
140e057b7:	48 8b 0b             	mov    (%rbx),%rcx
140e057ba:	48 85 c9             	test   %rcx,%rcx
140e057bd:	74 3d                	je     0x140e057fc
140e057bf:	48 8b 41 38          	mov    0x38(%rcx),%rax
140e057c3:	48 39 38             	cmp    %rdi,(%rax)
140e057c6:	74 1d                	je     0x140e057e5
140e057c8:	48 8b 41 50          	mov    0x50(%rcx),%rax
140e057cc:	39 38                	cmp    %edi,(%rax)
140e057ce:	7e 15                	jle    0x140e057e5
140e057d0:	ff 08                	decl   (%rax)
140e057d2:	48 8b 49 38          	mov    0x38(%rcx),%rcx