Given the following C code and unoptimized assembly code, your task is to generate highly optimized x86-64 assembly code.
C Code:

```c
#include<stdio.h>
#include<string.h>
int main()
{
    int i,n,t[50],m,sum=0;
    char s[50][101],x[101];

    scanf("%d",&n);
    for(i=0;i<n;i++)
    {
        scanf("%s %d",s[i],&t[i]);
    }
    scanf("%s",x);
    for(i=0;i<n;i++)
    {
        if(strcmp(s[i],x)==0)
        {
             m=i;
             break;
        }
    }
    for(i=m+1;i<n;i++)
    {
        sum+=t[i];
    }
    printf("%d",sum);

    return 0;
}
```

Unoptimized Assembly Code:

```assembly
	.file	"temp.c"
	.text
	.section	.rodata
.LC0:
	.string	"%d"
.LC1:
	.string	"%s %d"
.LC2:
	.string	"%s"
	.text
	.globl	main
	.type	main, @function
main:
.LFB0:
	.cfi_startproc
	endbr64
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register 6
	subq	$4096, %rsp
	orq	$0, (%rsp)
	subq	$1296, %rsp
	movq	%fs:40, %rax
	movq	%rax, -8(%rbp)
	xorl	%eax, %eax
	movl	$0, -5380(%rbp)
	leaq	-5392(%rbp), %rax
	movq	%rax, %rsi
	leaq	.LC0(%rip), %rax
	movq	%rax, %rdi
	movl	$0, %eax
	call	__isoc99_scanf@PLT
	movl	$0, -5388(%rbp)
	jmp	.L2
.L3:
	leaq	-5376(%rbp), %rdx
	movl	-5388(%rbp), %eax
	cltq
	salq	$2, %rax
	leaq	(%rdx,%rax), %rcx
	leaq	-5168(%rbp), %rsi
	movl	-5388(%rbp), %eax
	movslq	%eax, %rdx
	movq	%rdx, %rax
	salq	$2, %rax
	addq	%rdx, %rax
	leaq	0(,%rax,4), %rdi
	addq	%rdi, %rax
	salq	$2, %rax
	addq	%rdx, %rax
	addq	%rsi, %rax
	movq	%rcx, %rdx
	movq	%rax, %rsi
	leaq	.LC1(%rip), %rax
	movq	%rax, %rdi
	movl	$0, %eax
	call	__isoc99_scanf@PLT
	addl	$1, -5388(%rbp)
.L2:
	movl	-5392(%rbp), %eax
	cmpl	%eax, -5388(%rbp)
	jl	.L3
	leaq	-112(%rbp), %rax
	movq	%rax, %rsi
	leaq	.LC2(%rip), %rax
	movq	%rax, %rdi
	movl	$0, %eax
	call	__isoc99_scanf@PLT
	movl	$0, -5388(%rbp)
	jmp	.L4
.L7:
	leaq	-5168(%rbp), %rcx
	movl	-5388(%rbp), %eax
	movslq	%eax, %rdx
	movq	%rdx, %rax
	salq	$2, %rax
	addq	%rdx, %rax
	leaq	0(,%rax,4), %rsi
	addq	%rsi, %rax
	salq	$2, %rax
	addq	%rdx, %rax
	leaq	(%rcx,%rax), %rdx
	leaq	-112(%rbp), %rax
	movq	%rax, %rsi
	movq	%rdx, %rdi
	call	strcmp@PLT
	testl	%eax, %eax
	jne	.L5
	movl	-5388(%rbp), %eax
	movl	%eax, -5384(%rbp)
	jmp	.L6
.L5:
	addl	$1, -5388(%rbp)
.L4:
	movl	-5392(%rbp), %eax
	cmpl	%eax, -5388(%rbp)
	jl	.L7
.L6:
	movl	-5384(%rbp), %eax
	addl	$1, %eax
	movl	%eax, -5388(%rbp)
	jmp	.L8
.L9:
	movl	-5388(%rbp), %eax
	cltq
	movl	-5376(%rbp,%rax,4), %eax
	addl	%eax, -5380(%rbp)
	addl	$1, -5388(%rbp)
.L8:
	movl	-5392(%rbp), %eax
	cmpl	%eax, -5388(%rbp)
	jl	.L9
	movl	-5380(%rbp), %eax
	movl	%eax, %esi
	leaq	.LC0(%rip), %rax
	movq	%rax, %rdi
	movl	$0, %eax
	call	printf@PLT
	movl	$0, %eax
	movq	-8(%rbp), %rdx
	subq	%fs:40, %rdx
	je	.L11
	call	__stack_chk_fail@PLT
.L11:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE0:
	.size	main, .-main
	.ident	"GCC: (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0"
	.section	.note.GNU-stack,"",@progbits
	.section	.note.gnu.property,"a"
	.align 8
	.long	1f - 0f
	.long	4f - 1f
	.long	5
0:
	.string	"GNU"
1:
	.align 8
	.long	0xc0000002
	.long	3f - 2f
2:
	.long	0x3
3:
	.align 8
4:
```

Only output the optimized assembly code. Do not include any other text. Do not write any comments in the assembly code. Wrap the assembly code in ```assembly``` tags.
user
	.file	"temp.c"
	.text
	.section	.rodata.str1.1,"aMS",@progbits,1
.LC0:
	.string	"%d"
.LC1:
	.string	"%s"
.LC2:
	.string	"%s %d"
	.section	.text.startup,"ax",@progbits
	.p2align 4
	.globl	main
	.type	main, @function
main:
.LFB35:
	.cfi_startproc
	endbr64
	pushq	%r14
	.cfi_def_cfa_offset 16
	.cfi_offset 14, -16
	pushq	%r13
	.cfi_def_cfa_offset 24
	.cfi_offset 13, -24
	pushq	%r12
	.cfi_def_cfa_offset 32
	.cfi_offset 12, -32
	pushq	%rbp
	.cfi_def_cfa_offset 40
	.cfi_offset 6, -40
	pushq	%rbx
	.cfi_def_cfa_offset 48
	.cfi_offset 3, -48
	subq	$4096, %rsp
	.cfi_def_cfa_offset 4144
	orq	$0, (%rsp)
	subq	$1296, %rsp
	.cfi_def_cfa_offset 5440
	leaq	.LC0(%rip), %r12
	movq	%r12, %rdi
	movq	%fs:40, %rax
	movq	%rax, 5384(%rsp)
	xorl	%eax, %eax
	leaq	12(%rsp), %rsi
	call	__isoc99_scanf@PLT
	movl	12(%rsp), %eax
	testl	%eax, %eax
	jle	.L6
	leaq	224(%rsp), %rbp
	xorl	%ebx, %ebx
	leaq	16(%rsp), %r14
	leaq	.LC2(%rip), %r13
	.p2align 4,,10
	.p2align 3
.L5:
	leaq	(%r14,%rbx,4), %rdx
	movq	%rbp, %rsi
	movq	%r13, %rdi
	xorl	%eax, %eax
	call	__isoc99_scanf@PLT
	addq	$1, %rbx
	addq	$101, %rbp
	cmpl	%ebx, 12(%rsp)
	jg	.L5
.L6:
	leaq	5280(%rsp), %r14
	xorl	%eax, %eax
	xorl	%ebx, %ebx
	movq	%r14, %rsi
	leaq	.LC1(%rip), %rdi
	leaq	224(%rsp), %rbp
	call	__isoc99_scanf@PLT
	movl	12(%rsp), %r13d
	testl	%r13d, %r13d
	jg	.L8
	jmp	.L13
	.p2align 4,,10
	.p2align 3
.L56:
	addq	$101, %rbp
	cmpl	%ebx, %r13d
	je	.L7
.L8:
	movq	%r14, %rsi
	movq	%rbp, %rdi
	call	strcmp@PLT
	movl	%ebx, %edx
	addl	$1, %ebx
	testl	%eax, %eax
	jne	.L56
.L7:
	leal	1(%rdx), %eax
	cmpl	%r13d, %eax
	jge	.L13
	movl	%r13d, %ecx
	subl	%edx, %ecx
	leal	-1(%rcx), %esi
	subl	$2, %ecx
	cmpl	$2, %ecx
	jbe	.L14
	movl	%esi, %ecx
	movslq	%eax, %rdx
	leaq	16(%rsp,%rdx,4), %rdx
	shrl	$2, %ecx
	movdqu	(%rdx), %xmm0
	cmpl	$1, %ecx
	je	.L10
	movdqu	16(%rdx), %xmm2
	paddd	%xmm2, %xmm0
	cmpl	$2, %ecx
	je	.L10
	movdqu	32(%rdx), %xmm3
	paddd	%xmm3, %xmm0
	cmpl	$3, %ecx
	je	.L10
	movdqu	48(%rdx), %xmm4
	paddd	%xmm4, %xmm0
	cmpl	$4, %ecx
	je	.L10
	movdqu	64(%rdx), %xmm5
	paddd	%xmm5, %xmm0
	cmpl	$5, %ecx
	je	.L10
	movdqu	80(%rdx), %xmm6
	paddd	%xmm6, %xmm0
	cmpl	$6, %ecx
	je	.L10
	movdqu	96(%rdx), %xmm7
	paddd	%xmm7, %xmm0
	cmpl	$7, %ecx
	je	.L10
	movdqu	112(%rdx), %xmm7
	paddd	%xmm7, %xmm0
	cmpl	$8, %ecx
	je	.L10
	movdqu	128(%rdx), %xmm6
	paddd	%xmm6, %xmm0
	cmpl	$9, %ecx
	je	.L10
	movdqu	144(%rdx), %xmm5
	paddd	%xmm5, %xmm0
	cmpl	$10, %ecx
	je	.L10
	movdqu	160(%rdx), %xmm4
	paddd	%xmm4, %xmm0
	cmpl	$11, %ecx
	je	.L10
	movdqu	176(%rdx), %xmm1
	paddd	%xmm1, %xmm0
	.p2align 4,,10
	.p2align 3
.L10:
	movdqa	%xmm0, %xmm1
	movl	%esi, %ecx
	psrldq	$8, %xmm1
	andl	$-4, %ecx
	paddd	%xmm1, %xmm0
	addl	%ecx, %eax
	movdqa	%xmm0, %xmm1
	psrldq	$4, %xmm1
	paddd	%xmm1, %xmm0
	movd	%xmm0, %edx
	cmpl	%ecx, %esi
	je	.L4
.L9:
	movslq	%eax, %rcx
	addl	16(%rsp,%rcx,4), %edx
	leal	1(%rax), %ecx
	cmpl	%r13d, %ecx
	jge	.L4
	movslq	%ecx, %rcx
	addl	$2, %eax
	addl	16(%rsp,%rcx,4), %edx
	cmpl	%eax, %r13d
	jle	.L4
	cltq
	addl	16(%rsp,%rax,4), %edx
.L4:
	xorl	%eax, %eax
	movq	%r12, %rsi
	movl	$1, %edi
	call	__printf_chk@PLT
	movq	5384(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L57
	addq	$5392, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 48
	xorl	%eax, %eax
	popq	%rbx
	.cfi_def_cfa_offset 40
	popq	%rbp
	.cfi_def_cfa_offset 32
	popq	%r12
	.cfi_def_cfa_offset 24
	popq	%r13
	.cfi_def_cfa_offset 16
	popq	%r14
	.cfi_def_cfa_offset 8
	ret
.L13:
	.cfi_restore_state
	xorl	%edx, %edx
	jmp	.L4
.L14:
	xorl	%edx, %edx
	jmp	.L9
.L57:
	call	__stack_chk_fail@PLT
	.cfi_endproc
.LFE35:
	.size	main, .-main
	.ident	"GCC: (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0"
	.section	.note.GNU-stack,"",@progbits
	.section	.note.gnu.property,"a"
	.align 8
	.long	1f - 0f
	.long	4f - 1f
	.long	5
0:
	.string	"GNU"
1:
	.align 8
	.long	0xc0000002
	.long	3f - 2f
2:
	.long	0x3
3:
	.align 8
4:

rule
	.file	"temp.c"
	.text
	.section	.rodata.str1.1,"aMS",@progbits,1
.LC0:
	.string	"%d"
.LC1:
	.string	"%s"
.LC2:
	.string	"%s %d"
	.section	.text.startup,"ax",@progbits
	.p2align 4
	.globl	main
	.type	main, @function
main:
.LFB35:
	.cfi_startproc
	endbr64
	pushq	%r14
	.cfi_def_cfa_offset 16
	.cfi_offset 14, -16
	pushq	%r13
	.cfi_def_cfa_offset 24
	.cfi_offset 13, -24
	pushq	%r12
	.cfi_def_cfa_offset 32
	.cfi_offset 12, -32
	pushq	%rbp
	.cfi_def_cfa_offset 40
	.cfi_offset 6, -40
	pushq	%rbx
	.cfi_def_cfa_offset 48
	.cfi_offset 3, -48
	subq	$4096, %rsp
	.cfi_def_cfa_offset 4144
	orq	$0, (%rsp)
	subq	$1296, %rsp
	.cfi_def_cfa_offset 5440
	leaq	.LC0(%rip), %r12
	movq	%r12, %rdi
	movq	%fs:40, %rax
	movq	%rax, 5384(%rsp)
	xorl	%eax, %eax
	leaq	12(%rsp), %rsi
	call	__isoc99_scanf@PLT
	movl	12(%rsp), %eax
	testl	%eax, %eax
	jle	.L6
	leaq	224(%rsp), %rbp
	xorl	%ebx, %ebx
	leaq	16(%rsp), %r14
	leaq	.LC2(%rip), %r13
	.p2align 4,,10
	.p2align 3
.L5:
	leaq	(%r14,%rbx,4), %rdx
	movq	%rbp, %rsi
	movq	%r13, %rdi
	xorl	%eax, %eax
	call	__isoc99_scanf@PLT
	addq	$1, %rbx
	addq	$101, %rbp
	cmpl	%ebx, 12(%rsp)
	jg	.L5
.L6:
	leaq	5280(%rsp), %r14
	xorl	%eax, %eax
	xorl	%ebx, %ebx
	movq	%r14, %rsi
	leaq	.LC1(%rip), %rdi
	leaq	224(%rsp), %rbp
	call	__isoc99_scanf@PLT
	movl	12(%rsp), %r13d
	testl	%r13d, %r13d
	jg	.L8
	jmp	.L13
	.p2align 4,,10
	.p2align 3
.L56:
	addq	$101, %rbp
	cmpl	%ebx, %r13d
	je	.L7
.L8:
	movq	%r14, %rsi
	movq	%rbp, %rdi
	call	strcmp@PLT
	movl	%ebx, %edx
	addl	$1, %ebx
	testl	%eax, %eax
	jne	.L56
.L7:
	leal	1(%rdx), %eax
	cmpl	%r13d, %eax
	jge	.L13
	movl	%r13d, %ecx
	subl	%edx, %ecx
	leal	-1(%rcx), %esi
	subl	$2, %ecx
	cmpl	$2, %ecx
	jbe	.L14
	movl	%esi, %ecx
	movslq	%eax, %rdx
	leaq	16(%rsp,%rdx,4), %rdx
	shrl	$2, %ecx
	movdqu	(%rdx), %xmm0
	cmpl	$1, %ecx
	je	.L10
	movdqu	16(%rdx), %xmm2
	paddd	%xmm2, %xmm0
	cmpl	$2, %ecx
	je	.L10
	movdqu	32(%rdx), %xmm3
	paddd	%xmm3, %xmm0
	cmpl	$3, %ecx
	je	.L10
	movdqu	48(%rdx), %xmm4
	paddd	%xmm4, %xmm0
	cmpl	$4, %ecx
	je	.L10
	movdqu	64(%rdx), %xmm5
	paddd	%xmm5, %xmm0
	cmpl	$5, %ecx
	je	.L10
	movdqu	80(%rdx), %xmm6
	paddd	%xmm6, %xmm0
	cmpl	$6, %ecx
	je	.L10
	movdqu	96(%rdx), %xmm7
	paddd	%xmm7, %xmm0
	cmpl	$7, %ecx
	je	.L10
	movdqu	112(%rdx), %xmm7
	paddd	%xmm7, %xmm0
	cmpl	$8, %ecx
	je	.L10
	movdqu	128(%rdx), %xmm6
	paddd	%xmm6, %xmm0
	cmpl	$9, %ecx
	je	.L10
	movdqu	144(%rdx), %xmm5
	paddd	%xmm5, %xmm0
	cmpl	$10, %ecx
	je	.L10
	movdqu	160(%rdx), %xmm4
	paddd	%xmm4, %xmm0
	cmpl	$11, %ecx
	je	.L10
	movdqu	176(%rdx), %xmm1
	paddd	%xmm1, %xmm0
	.p2align 4,,10
	.p2align 3
.L10:
	movdqa	%xmm0, %xmm1
	movl	%esi, %ecx
	psrldq	$8, %xmm1
	andl	$-4, %ecx
	paddd	%xmm1, %xmm0
	addl	%ecx, %eax
	movdqa	%xmm0, %xmm1
	psrldq	$4, %xmm1
	paddd	%xmm1, %xmm0
	movd	%xmm0, %edx
	cmpl	%ecx, %esi
	je	.L4
.L9:
	movslq	%eax, %rcx
	addl	16(%rsp,%rcx,4), %edx
	leal	1(%rax), %ecx
	cmpl	%r13d, %ecx
	jge	.L4
	movslq	%ecx, %rcx
	addl	$2, %eax
	addl	16(%rsp,%rcx,4), %edx
	cmpl	%eax, %r13d
	jle	.L4
	cltq
	addl	16(%rsp,%rax,4), %edx
.L4:
	xorl	%eax, %eax
	movq	%r12, %rsi
	movl	$1, %edi
	call	__printf_chk@PLT
	movq	5384(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L57
	addq	$5392, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 48
	xorl	%eax, %eax
	popq	%rbx
	.cfi_def_cfa_offset 40
	popq	%rbp
	.cfi_def_cfa_offset 32
	popq	%r12
	.cfi_def_cfa_offset 24
	popq	%r13
	.cfi_def_cfa_offset 16
	popq	%r14
	.cfi_def_cfa_offset 8
	ret
.L13:
	.cfi_restore_state
	xorl	%edx, %edx
	jmp	.L4
.L14:
	xorl	%edx, %edx
	jmp	.L9
.L57:
	call	__stack_chk_fail@PLT
	.cfi_endproc
.LFE35:
	.size	main, .-main
	.ident	"GCC: (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0"
	.section	.note.GNU-stack,"",@progbits
	.section	.note.gnu.property,"a"
	.align 8
	.long	1f - 0f
	.long	4f - 1f
	.long	5
0:
	.string	"GNU"
1:
	.align 8
	.long	0xc0000002
	.long	3f - 2f
2:
	.long	0x3
3:
	.align 8
4:

#include<stdio.h>
#include<string.h>
int main()
{
    int i,n,t[50],m,sum=0;
    char s[50][101],x[101];

    scanf("%d",&n);
    for(i=0;i<n;i++)
    {
        scanf("%s %d",s[i],&t[i]);
    }
    scanf("%s",x);
    for(i=0;i<n;i++)
    {
        if(strcmp(s[i],x)==0)
        {
             m=i;
             break;
        }
    }
    for(i=m+1;i<n;i++)
    {
        sum+=t[i];
    }
    printf("%d",sum);

    return 0;
}

15
ypnxn 279
kgjgwx 464
qquhuwq 327
rxing 549
pmuduhznoaqu 832
dagktgdarveusju 595
wunfagppcoi 200
dhavrncwfw 720
jpcmigg 658
wrczqxycivdqn 639
mcmkkbnjfeod 992
zstythbkgkvqth 130
twflegsjz 467
dswxxrxuzzfhkp 989
szfwtzfpnscgue 958
pmuduhznoaqu
 1
abcde 0000
abcde
 15
ypnxn 279
kgjfwx 464
qquhuwq 327
rxing 549
pmuduhznoaqu 832
dagktgdarveusju 595
wunfagppcoi 200
dhavrncwfw 720
jpcmigg 658
wrczqxycivdqn 639
mcmkkbnjfeod 992
zstythbkgkvqth 130
twflegsjz 809
dswxxrxuzzfhkp 989
szfwtzfpnscgue 958
pmuduhznoaqu
 15
ynpxn 307
jgfjwx 127
qquhuwq 319
rxing 549
pmuduhznoaqu 832
dagktgdarveusju 595
iunfagppcow 200
dhavrncwfw 1135
ggimcpj 658
wrczqxycivdqn 639
mcmkkbnjfeod 992
zstythbkgkwqth 130
twflegsjz 809
dswzxrxuzxfhkp 989
szfwtzfpnscgue 958
pmuduhznoaqu
 3
dwango 2
sixth 5
prelims 4
dwango
 15
ypnxn 279
kgjgwx 464
qquhuwq 327
rxing 549
pmuduhznoaqu 832
dagktgdarveusju 595
wunfagppcoi 200
dhavrncwfw 720
jpcmigg 658
wrczqxycivdqn 639
mcmkkbnjfeod 992
zstythbkgkvqth 130
twflegsjz 467
dswxxrxuzzfhkp 1344
szfwtzfpnscgue 958
pmuduhznoaqu
 15
ypnxn 279
kgjfwx 464
qquhuwq 327
rxing 549
pmuduhznoaqu 832
dagktgdarveusju 595
wunfagppcoi 200
dhavrncwfw 720
jpcmigg 1050
wrczqxycivdqn 639
mcmkkbnjfeod 992
zstythbkgkvqth 130
twflegsjz 467
dswxxrxuzzfhkp 989
szfwtzfpnscgue 958
pmuduhznoaqu
 15
ynpxn 279
jgjfwx 127
qquhuwq 319
rxing 549
pmuduhznoaqu 832
dagktgdarveusju 595
iunfagppcow 200
dhavrncwfw 720
ggimcpj 658
wrczqxycivdqn 19
mcmkkbnjfeod 992
zstythbkgkwqth 130
twflegsjz 809
dswzxrxuzxfhkp 989
szfwtzfpnscgue 958
pmuduhznoaqu
 15
ynpxn 279
jgfjwx 127
qquhuwq 319
rxing 549
pmuduhznoaqu 832
dagktgdarveusju 595
iunfagppcow 200
dhavrncwfw 720
ggimcpj 658
wrczqxycivdqn 639
mcmkkbnjfeod 327
zstythbkgkwqth 130
twflegsjz 809
dswzxrxuzxfhkp 989
szfwtzfpnscgue 958
pmuduhznoaqu
 3
dwango 2
sixth 5
prelims 7
dwango

6348 0 6690 7105 9 6703 6740 6070 6025 12
Given the following C code and unoptimized assembly code, your task is to generate highly optimized x86-64 assembly code.
C Code:

```c
#include<stdio.h>
#include<string.h>
int main()
{
    int i,n,t[50],m,sum=0;
    char s[50][101],x[101];

    scanf("%d",&n);
    for(i=0;i<n;i++)
    {
        scanf("%s %d",s[i],&t[i]);
    }
    scanf("%s",x);
    for(i=0;i<n;i++)
    {
        if(strcmp(s[i],x)==0)
        {
             m=i;
             break;
        }
    }
    for(i=m+1;i<n;i++)
    {
        sum+=t[i];
    }
    printf("%d",sum);

    return 0;
}
```

Unoptimized Assembly Code:

```assembly
	.file	"temp.c"
	.text
	.section	.rodata
.LC0:
	.string	"%d"
.LC1:
	.string	"%s %d"
.LC2:
	.string	"%s"
	.text
	.globl	main
	.type	main, @function
main:
.LFB0:
	.cfi_startproc
	endbr64
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register 6
	subq	$4096, %rsp
	orq	$0, (%rsp)
	subq	$1296, %rsp
	movq	%fs:40, %rax
	movq	%rax, -8(%rbp)
	xorl	%eax, %eax
	movl	$0, -5380(%rbp)
	leaq	-5392(%rbp), %rax
	movq	%rax, %rsi
	leaq	.LC0(%rip), %rax
	movq	%rax, %rdi
	movl	$0, %eax
	call	__isoc99_scanf@PLT
	movl	$0, -5388(%rbp)
	jmp	.L2
.L3:
	leaq	-5376(%rbp), %rdx
	movl	-5388(%rbp), %eax
	cltq
	salq	$2, %rax
	leaq	(%rdx,%rax), %rcx
	leaq	-5168(%rbp), %rsi
	movl	-5388(%rbp), %eax
	movslq	%eax, %rdx
	movq	%rdx, %rax
	salq	$2, %rax
	addq	%rdx, %rax
	leaq	0(,%rax,4), %rdi
	addq	%rdi, %rax
	salq	$2, %rax
	addq	%rdx, %rax
	addq	%rsi, %rax
	movq	%rcx, %rdx
	movq	%rax, %rsi
	leaq	.LC1(%rip), %rax
	movq	%rax, %rdi
	movl	$0, %eax
	call	__isoc99_scanf@PLT
	addl	$1, -5388(%rbp)
.L2:
	movl	-5392(%rbp), %eax
	cmpl	%eax, -5388(%rbp)
	jl	.L3
	leaq	-112(%rbp), %rax
	movq	%rax, %rsi
	leaq	.LC2(%rip), %rax
	movq	%rax, %rdi
	movl	$0, %eax
	call	__isoc99_scanf@PLT
	movl	$0, -5388(%rbp)
	jmp	.L4
.L7:
	leaq	-5168(%rbp), %rcx
	movl	-5388(%rbp), %eax
	movslq	%eax, %rdx
	movq	%rdx, %rax
	salq	$2, %rax
	addq	%rdx, %rax
	leaq	0(,%rax,4), %rsi
	addq	%rsi, %rax
	salq	$2, %rax
	addq	%rdx, %rax
	leaq	(%rcx,%rax), %rdx
	leaq	-112(%rbp), %rax
	movq	%rax, %rsi
	movq	%rdx, %rdi
	call	strcmp@PLT
	testl	%eax, %eax
	jne	.L5
	movl	-5388(%rbp), %eax
	movl	%eax, -5384(%rbp)
	jmp	.L6
.L5:
	addl	$1, -5388(%rbp)
.L4:
	movl	-5392(%rbp), %eax
	cmpl	%eax, -5388(%rbp)
	jl	.L7
.L6:
	movl	-5384(%rbp), %eax
	addl	$1, %eax
	movl	%eax, -5388(%rbp)
	jmp	.L8
.L9:
	movl	-5388(%rbp), %eax
	cltq
	movl	-5376(%rbp,%rax,4), %eax
	addl	%eax, -5380(%rbp)
	addl	$1, -5388(%rbp)
.L8:
	movl	-5392(%rbp), %eax
	cmpl	%eax, -5388(%rbp)
	jl	.L9
	movl	-5380(%rbp), %eax
	movl	%eax, %esi
	leaq	.LC0(%rip), %rax
	movq	%rax, %rdi
	movl	$0, %eax
	call	printf@PLT
	movl	$0, %eax
	movq	-8(%rbp), %rdx
	subq	%fs:40, %rdx
	je	.L11
	call	__stack_chk_fail@PLT
.L11:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE0:
	.size	main, .-main
	.ident	"GCC: (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0"
	.section	.note.GNU-stack,"",@progbits
	.section	.note.gnu.property,"a"
	.align 8
	.long	1f - 0f
	.long	4f - 1f
	.long	5
0:
	.string	"GNU"
1:
	.align 8
	.long	0xc0000002
	.long	3f - 2f
2:
	.long	0x3
3:
	.align 8
4:
```

Only output the optimized assembly code. Do not include any other text. Do not write any comments in the assembly code. Wrap the assembly code in ```assembly``` tags.
train
	.file	"temp.c"
	.text
	.section	.rodata
.LC0:
	.string	"%d"
.LC1:
	.string	"%s %d"
.LC2:
	.string	"%s"
	.text
	.globl	main
	.type	main, @function
main:
.LFB0:
	.cfi_startproc
	endbr64
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register 6
	subq	$4096, %rsp
	orq	$0, (%rsp)
	subq	$1296, %rsp
	movq	%fs:40, %rax
	movq	%rax, -8(%rbp)
	xorl	%eax, %eax
	movl	$0, -5380(%rbp)
	leaq	-5392(%rbp), %rax
	movq	%rax, %rsi
	leaq	.LC0(%rip), %rax
	movq	%rax, %rdi
	movl	$0, %eax
	call	__isoc99_scanf@PLT
	movl	$0, -5388(%rbp)
	jmp	.L2
.L3:
	leaq	-5376(%rbp), %rdx
	movl	-5388(%rbp), %eax
	cltq
	salq	$2, %rax
	leaq	(%rdx,%rax), %rcx
	leaq	-5168(%rbp), %rsi
	movl	-5388(%rbp), %eax
	movslq	%eax, %rdx
	movq	%rdx, %rax
	salq	$2, %rax
	addq	%rdx, %rax
	leaq	0(,%rax,4), %rdi
	addq	%rdi, %rax
	salq	$2, %rax
	addq	%rdx, %rax
	addq	%rsi, %rax
	movq	%rcx, %rdx
	movq	%rax, %rsi
	leaq	.LC1(%rip), %rax
	movq	%rax, %rdi
	movl	$0, %eax
	call	__isoc99_scanf@PLT
	addl	$1, -5388(%rbp)
.L2:
	movl	-5392(%rbp), %eax
	cmpl	%eax, -5388(%rbp)
	jl	.L3
	leaq	-112(%rbp), %rax
	movq	%rax, %rsi
	leaq	.LC2(%rip), %rax
	movq	%rax, %rdi
	movl	$0, %eax
	call	__isoc99_scanf@PLT
	movl	$0, -5388(%rbp)
	jmp	.L4
.L7:
	leaq	-5168(%rbp), %rcx
	movl	-5388(%rbp), %eax
	movslq	%eax, %rdx
	movq	%rdx, %rax
	salq	$2, %rax
	addq	%rdx, %rax
	leaq	0(,%rax,4), %rsi
	addq	%rsi, %rax
	salq	$2, %rax
	addq	%rdx, %rax
	leaq	(%rcx,%rax), %rdx
	leaq	-112(%rbp), %rax
	movq	%rax, %rsi
	movq	%rdx, %rdi
	call	strcmp@PLT
	testl	%eax, %eax
	jne	.L5
	movl	-5388(%rbp), %eax
	movl	%eax, -5384(%rbp)
	jmp	.L6
.L5:
	addl	$1, -5388(%rbp)
.L4:
	movl	-5392(%rbp), %eax
	cmpl	%eax, -5388(%rbp)
	jl	.L7
.L6:
	movl	-5384(%rbp), %eax
	addl	$1, %eax
	movl	%eax, -5388(%rbp)
	jmp	.L8
.L9:
	movl	-5388(%rbp), %eax
	cltq
	movl	-5376(%rbp,%rax,4), %eax
	addl	%eax, -5380(%rbp)
	addl	$1, -5388(%rbp)
.L8:
	movl	-5392(%rbp), %eax
	cmpl	%eax, -5388(%rbp)
	jl	.L9
	movl	-5380(%rbp), %eax
	movl	%eax, %esi
	leaq	.LC0(%rip), %rax
	movq	%rax, %rdi
	movl	$0, %eax
	call	printf@PLT
	movl	$0, %eax
	movq	-8(%rbp), %rdx
	subq	%fs:40, %rdx
	je	.L11
	call	__stack_chk_fail@PLT
.L11:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE0:
	.size	main, .-main
	.ident	"GCC: (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0"
	.section	.note.GNU-stack,"",@progbits
	.section	.note.gnu.property,"a"
	.align 8
	.long	1f - 0f
	.long	4f - 1f
	.long	5
0:
	.string	"GNU"
1:
	.align 8
	.long	0xc0000002
	.long	3f - 2f
2:
	.long	0x3
3:
	.align 8
4:
