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>

int main(){
  int i;
  char rank[][4]={"AAA","AA","A","B","C","D","E"};
  double t1,t2;
  double m5[]={35.5,37.5,40.0,43.0,50.0,55.0,70.0};
  double m10[]={71.0,77.0,83.0,89.0,105.0,116.0,148.0};
	       
  while(scanf("%lf %lf",&t1,&t2)!=EOF){
    for(i=0;i<7;i++){
      if(t1<m5[i]&&t2<m10[i]){
	printf("%s\n",rank[i]);
	break;
      }
    }
    if(i==7) printf("NA\n");
  }
  return 0;
}```

Unoptimized Assembly Code:

```assembly
	.file	"temp.c"
	.text
	.section	.rodata
.LC14:
	.string	"NA"
.LC15:
	.string	"%lf %lf"
	.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	$192, %rsp
	movq	%fs:40, %rax
	movq	%rax, -8(%rbp)
	xorl	%eax, %eax
	movl	$4276545, -160(%rbp)
	movl	$16705, -156(%rbp)
	movl	$65, -152(%rbp)
	movl	$66, -148(%rbp)
	movl	$67, -144(%rbp)
	movl	$68, -140(%rbp)
	movl	$69, -136(%rbp)
	movsd	.LC0(%rip), %xmm0
	movsd	%xmm0, -128(%rbp)
	movsd	.LC1(%rip), %xmm0
	movsd	%xmm0, -120(%rbp)
	movsd	.LC2(%rip), %xmm0
	movsd	%xmm0, -112(%rbp)
	movsd	.LC3(%rip), %xmm0
	movsd	%xmm0, -104(%rbp)
	movsd	.LC4(%rip), %xmm0
	movsd	%xmm0, -96(%rbp)
	movsd	.LC5(%rip), %xmm0
	movsd	%xmm0, -88(%rbp)
	movsd	.LC6(%rip), %xmm0
	movsd	%xmm0, -80(%rbp)
	movsd	.LC7(%rip), %xmm0
	movsd	%xmm0, -64(%rbp)
	movsd	.LC8(%rip), %xmm0
	movsd	%xmm0, -56(%rbp)
	movsd	.LC9(%rip), %xmm0
	movsd	%xmm0, -48(%rbp)
	movsd	.LC10(%rip), %xmm0
	movsd	%xmm0, -40(%rbp)
	movsd	.LC11(%rip), %xmm0
	movsd	%xmm0, -32(%rbp)
	movsd	.LC12(%rip), %xmm0
	movsd	%xmm0, -24(%rbp)
	movsd	.LC13(%rip), %xmm0
	movsd	%xmm0, -16(%rbp)
	jmp	.L2
.L9:
	movl	$0, -180(%rbp)
	jmp	.L3
.L8:
	movl	-180(%rbp), %eax
	cltq
	movsd	-128(%rbp,%rax,8), %xmm0
	movsd	-176(%rbp), %xmm1
	comisd	%xmm1, %xmm0
	jbe	.L4
	movl	-180(%rbp), %eax
	cltq
	movsd	-64(%rbp,%rax,8), %xmm0
	movsd	-168(%rbp), %xmm1
	comisd	%xmm1, %xmm0
	jbe	.L4
	leaq	-160(%rbp), %rdx
	movl	-180(%rbp), %eax
	cltq
	salq	$2, %rax
	addq	%rdx, %rax
	movq	%rax, %rdi
	call	puts@PLT
	jmp	.L7
.L4:
	addl	$1, -180(%rbp)
.L3:
	cmpl	$6, -180(%rbp)
	jle	.L8
.L7:
	cmpl	$7, -180(%rbp)
	jne	.L2
	leaq	.LC14(%rip), %rax
	movq	%rax, %rdi
	call	puts@PLT
.L2:
	leaq	-168(%rbp), %rdx
	leaq	-176(%rbp), %rax
	movq	%rax, %rsi
	leaq	.LC15(%rip), %rax
	movq	%rax, %rdi
	movl	$0, %eax
	call	__isoc99_scanf@PLT
	cmpl	$-1, %eax
	jne	.L9
	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
	.section	.rodata
	.align 8
.LC0:
	.long	0
	.long	1078050816
	.align 8
.LC1:
	.long	0
	.long	1078116352
	.align 8
.LC2:
	.long	0
	.long	1078198272
	.align 8
.LC3:
	.long	0
	.long	1078296576
	.align 8
.LC4:
	.long	0
	.long	1078525952
	.align 8
.LC5:
	.long	0
	.long	1078689792
	.align 8
.LC6:
	.long	0
	.long	1079083008
	.align 8
.LC7:
	.long	0
	.long	1079099392
	.align 8
.LC8:
	.long	0
	.long	1079197696
	.align 8
.LC9:
	.long	0
	.long	1079296000
	.align 8
.LC10:
	.long	0
	.long	1079394304
	.align 8
.LC11:
	.long	0
	.long	1079656448
	.align 8
.LC12:
	.long	0
	.long	1079836672
	.align 8
.LC13:
	.long	0
	.long	1080197120
	.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
.LC2:
	.string	"NA"
.LC3:
	.string	"%lf %lf"
	.section	.text.startup,"ax",@progbits
	.p2align 4
	.globl	main
	.type	main, @function
main:
.LFB23:
	.cfi_startproc
	endbr64
	pushq	%r12
	.cfi_def_cfa_offset 16
	.cfi_offset 12, -16
	pushq	%rbp
	.cfi_def_cfa_offset 24
	.cfi_offset 6, -24
	pushq	%rbx
	.cfi_def_cfa_offset 32
	.cfi_offset 3, -32
	leaq	.LC3(%rip), %rbx
	subq	$64, %rsp
	.cfi_def_cfa_offset 96
	movdqa	.LC0(%rip), %xmm0
	movq	%fs:40, %rax
	movq	%rax, 56(%rsp)
	xorl	%eax, %eax
	movq	.LC1(%rip), %rax
	movl	$69, 40(%rsp)
	movq	%rsp, %rbp
	movaps	%xmm0, 16(%rsp)
	leaq	8(%rsp), %r12
	movq	%rax, 32(%rsp)
.L4:
	xorl	%eax, %eax
	movq	%r12, %rdx
	movq	%rbp, %rsi
	movq	%rbx, %rdi
	call	__isoc99_scanf@PLT
	cmpl	$-1, %eax
	je	.L5
	movsd	(%rsp), %xmm0
	movsd	.LC4(%rip), %xmm2
	comisd	%xmm0, %xmm2
	jbe	.L6
	movsd	.LC5(%rip), %xmm1
	comisd	8(%rsp), %xmm1
	ja	.L8
.L6:
	movsd	.LC6(%rip), %xmm3
	comisd	%xmm0, %xmm3
	jbe	.L9
	movsd	.LC7(%rip), %xmm1
	comisd	8(%rsp), %xmm1
	ja	.L11
.L9:
	movsd	.LC8(%rip), %xmm4
	comisd	%xmm0, %xmm4
	jbe	.L12
	movsd	.LC9(%rip), %xmm1
	comisd	8(%rsp), %xmm1
	ja	.L14
.L12:
	movsd	.LC10(%rip), %xmm5
	comisd	%xmm0, %xmm5
	jbe	.L15
	movsd	.LC11(%rip), %xmm1
	comisd	8(%rsp), %xmm1
	ja	.L17
.L15:
	movsd	.LC12(%rip), %xmm1
	comisd	%xmm0, %xmm1
	jbe	.L18
	movsd	.LC13(%rip), %xmm1
	comisd	8(%rsp), %xmm1
	ja	.L20
.L18:
	movsd	.LC14(%rip), %xmm1
	comisd	%xmm0, %xmm1
	jbe	.L21
	movsd	.LC15(%rip), %xmm1
	comisd	8(%rsp), %xmm1
	ja	.L23
.L21:
	movsd	.LC16(%rip), %xmm1
	comisd	%xmm0, %xmm1
	ja	.L37
.L24:
	leaq	.LC2(%rip), %rdi
	call	puts@PLT
	jmp	.L4
	.p2align 4,,10
	.p2align 3
.L37:
	movsd	.LC17(%rip), %xmm0
	comisd	8(%rsp), %xmm0
	jbe	.L24
	leaq	40(%rsp), %rdi
	call	puts@PLT
	jmp	.L4
.L5:
	movq	56(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L38
	addq	$64, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 32
	xorl	%eax, %eax
	popq	%rbx
	.cfi_def_cfa_offset 24
	popq	%rbp
	.cfi_def_cfa_offset 16
	popq	%r12
	.cfi_def_cfa_offset 8
	ret
.L11:
	.cfi_restore_state
	leaq	20(%rsp), %rdi
	call	puts@PLT
	jmp	.L4
.L14:
	leaq	24(%rsp), %rdi
	call	puts@PLT
	jmp	.L4
.L17:
	leaq	28(%rsp), %rdi
	call	puts@PLT
	jmp	.L4
.L20:
	leaq	32(%rsp), %rdi
	call	puts@PLT
	jmp	.L4
.L23:
	leaq	36(%rsp), %rdi
	call	puts@PLT
	jmp	.L4
.L8:
	leaq	16(%rsp), %rdi
	call	puts@PLT
	jmp	.L4
.L38:
	call	__stack_chk_fail@PLT
	.cfi_endproc
.LFE23:
	.size	main, .-main
	.section	.rodata.cst16,"aM",@progbits,16
	.align 16
.LC0:
	.long	4276545
	.long	16705
	.long	65
	.long	66
	.section	.rodata.cst8,"aM",@progbits,8
	.align 8
.LC1:
	.long	67
	.long	68
	.align 8
.LC4:
	.long	0
	.long	1078050816
	.align 8
.LC5:
	.long	0
	.long	1079099392
	.align 8
.LC6:
	.long	0
	.long	1078116352
	.align 8
.LC7:
	.long	0
	.long	1079197696
	.align 8
.LC8:
	.long	0
	.long	1078198272
	.align 8
.LC9:
	.long	0
	.long	1079296000
	.align 8
.LC10:
	.long	0
	.long	1078296576
	.align 8
.LC11:
	.long	0
	.long	1079394304
	.align 8
.LC12:
	.long	0
	.long	1078525952
	.align 8
.LC13:
	.long	0
	.long	1079656448
	.align 8
.LC14:
	.long	0
	.long	1078689792
	.align 8
.LC15:
	.long	0
	.long	1079836672
	.align 8
.LC16:
	.long	0
	.long	1079083008
	.align 8
.LC17:
	.long	0
	.long	1080197120
	.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
.LC2:
	.string	"NA"
.LC3:
	.string	"%lf %lf"
	.section	.text.startup,"ax",@progbits
	.p2align 4
	.globl	main
	.type	main, @function
main:
.LFB23:
	.cfi_startproc
	endbr64
	pushq	%r12
	.cfi_def_cfa_offset 16
	.cfi_offset 12, -16
	pushq	%rbp
	.cfi_def_cfa_offset 24
	.cfi_offset 6, -24
	pushq	%rbx
	.cfi_def_cfa_offset 32
	.cfi_offset 3, -32
	leaq	.LC3(%rip), %rbx
	subq	$64, %rsp
	.cfi_def_cfa_offset 96
	movdqa	.LC0(%rip), %xmm0
	movq	%fs:40, %rax
	movq	%rax, 56(%rsp)
	xorl	%eax, %eax
	movq	.LC1(%rip), %rax
	movl	$69, 40(%rsp)
	movq	%rsp, %rbp
	movaps	%xmm0, 16(%rsp)
	leaq	8(%rsp), %r12
	movq	%rax, 32(%rsp)
.L4:
	xorl	%eax, %eax
	movq	%r12, %rdx
	movq	%rbp, %rsi
	movq	%rbx, %rdi
	call	__isoc99_scanf@PLT
	cmpl	$-1, %eax
	je	.L5
	movsd	(%rsp), %xmm0
	movsd	.LC4(%rip), %xmm2
	comisd	%xmm0, %xmm2
	jbe	.L6
	movsd	.LC5(%rip), %xmm1
	comisd	8(%rsp), %xmm1
	ja	.L8
.L6:
	movsd	.LC6(%rip), %xmm3
	comisd	%xmm0, %xmm3
	jbe	.L9
	movsd	.LC7(%rip), %xmm1
	comisd	8(%rsp), %xmm1
	ja	.L11
.L9:
	movsd	.LC8(%rip), %xmm4
	comisd	%xmm0, %xmm4
	jbe	.L12
	movsd	.LC9(%rip), %xmm1
	comisd	8(%rsp), %xmm1
	ja	.L14
.L12:
	movsd	.LC10(%rip), %xmm5
	comisd	%xmm0, %xmm5
	jbe	.L15
	movsd	.LC11(%rip), %xmm1
	comisd	8(%rsp), %xmm1
	ja	.L17
.L15:
	movsd	.LC12(%rip), %xmm1
	comisd	%xmm0, %xmm1
	jbe	.L18
	movsd	.LC13(%rip), %xmm1
	comisd	8(%rsp), %xmm1
	ja	.L20
.L18:
	movsd	.LC14(%rip), %xmm1
	comisd	%xmm0, %xmm1
	jbe	.L21
	movsd	.LC15(%rip), %xmm1
	comisd	8(%rsp), %xmm1
	ja	.L23
.L21:
	movsd	.LC16(%rip), %xmm1
	comisd	%xmm0, %xmm1
	ja	.L37
.L24:
	leaq	.LC2(%rip), %rdi
	call	puts@PLT
	jmp	.L4
	.p2align 4,,10
	.p2align 3
.L37:
	movsd	.LC17(%rip), %xmm0
	comisd	8(%rsp), %xmm0
	jbe	.L24
	leaq	40(%rsp), %rdi
	call	puts@PLT
	jmp	.L4
.L5:
	movq	56(%rsp), %rax
	subq	%fs:40, %rax
	jne	.L38
	addq	$64, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 32
	xorl	%eax, %eax
	popq	%rbx
	.cfi_def_cfa_offset 24
	popq	%rbp
	.cfi_def_cfa_offset 16
	popq	%r12
	.cfi_def_cfa_offset 8
	ret
.L11:
	.cfi_restore_state
	leaq	20(%rsp), %rdi
	call	puts@PLT
	jmp	.L4
.L14:
	leaq	24(%rsp), %rdi
	call	puts@PLT
	jmp	.L4
.L17:
	leaq	28(%rsp), %rdi
	call	puts@PLT
	jmp	.L4
.L20:
	leaq	32(%rsp), %rdi
	call	puts@PLT
	jmp	.L4
.L23:
	leaq	36(%rsp), %rdi
	call	puts@PLT
	jmp	.L4
.L8:
	leaq	16(%rsp), %rdi
	call	puts@PLT
	jmp	.L4
.L38:
	call	__stack_chk_fail@PLT
	.cfi_endproc
.LFE23:
	.size	main, .-main
	.section	.rodata.cst16,"aM",@progbits,16
	.align 16
.LC0:
	.long	4276545
	.long	16705
	.long	65
	.long	66
	.section	.rodata.cst8,"aM",@progbits,8
	.align 8
.LC1:
	.long	67
	.long	68
	.align 8
.LC4:
	.long	0
	.long	1078050816
	.align 8
.LC5:
	.long	0
	.long	1079099392
	.align 8
.LC6:
	.long	0
	.long	1078116352
	.align 8
.LC7:
	.long	0
	.long	1079197696
	.align 8
.LC8:
	.long	0
	.long	1078198272
	.align 8
.LC9:
	.long	0
	.long	1079296000
	.align 8
.LC10:
	.long	0
	.long	1078296576
	.align 8
.LC11:
	.long	0
	.long	1079394304
	.align 8
.LC12:
	.long	0
	.long	1078525952
	.align 8
.LC13:
	.long	0
	.long	1079656448
	.align 8
.LC14:
	.long	0
	.long	1078689792
	.align 8
.LC15:
	.long	0
	.long	1079836672
	.align 8
.LC16:
	.long	0
	.long	1079083008
	.align 8
.LC17:
	.long	0
	.long	1080197120
	.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>

int main(){
  int i;
  char rank[][4]={"AAA","AA","A","B","C","D","E"};
  double t1,t2;
  double m5[]={35.5,37.5,40.0,43.0,50.0,55.0,70.0};
  double m10[]={71.0,77.0,83.0,89.0,105.0,116.0,148.0};
	       
  while(scanf("%lf %lf",&t1,&t2)!=EOF){
    for(i=0;i<7;i++){
      if(t1<m5[i]&&t2<m10[i]){
	printf("%s\n",rank[i]);
	break;
      }
    }
    if(i==7) printf("NA\n");
  }
  return 0;
}
40.0 70.15273874709118
72.5 140.51
 43.236780306897465 72.47791800727414
76.48007184592961 143.3245253779178
 50.825010742906116 75.69989732783311
82.26479437960049 146.33206365267094
 55.48794721361476 79.14473639758064
86.53074549795734 149.70848351203585
 70.02963720383003 94.72312922368101
103.91489947609344 168.84078141503855
 40.0 70.15273874709118
73.39358812211353 140.51
 40.0 70.26540141125885
73.39358812211353 140.51
 40.991466890252646 70.26540141125885
73.39358812211353 140.51
 40.991466890252646 70.71729331330802
73.39358812211353 140.51
 40.991466890252646 70.71729331330802
73.89035215619808 140.51

B
NA
 C
NA
 D
NA
 E
NA
 NA
NA
 B
NA
 B
NA
 B
NA
 B
NA
 B
NA

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>

int main(){
  int i;
  char rank[][4]={"AAA","AA","A","B","C","D","E"};
  double t1,t2;
  double m5[]={35.5,37.5,40.0,43.0,50.0,55.0,70.0};
  double m10[]={71.0,77.0,83.0,89.0,105.0,116.0,148.0};
	       
  while(scanf("%lf %lf",&t1,&t2)!=EOF){
    for(i=0;i<7;i++){
      if(t1<m5[i]&&t2<m10[i]){
	printf("%s\n",rank[i]);
	break;
      }
    }
    if(i==7) printf("NA\n");
  }
  return 0;
}```

Unoptimized Assembly Code:

```assembly
	.file	"temp.c"
	.text
	.section	.rodata
.LC14:
	.string	"NA"
.LC15:
	.string	"%lf %lf"
	.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	$192, %rsp
	movq	%fs:40, %rax
	movq	%rax, -8(%rbp)
	xorl	%eax, %eax
	movl	$4276545, -160(%rbp)
	movl	$16705, -156(%rbp)
	movl	$65, -152(%rbp)
	movl	$66, -148(%rbp)
	movl	$67, -144(%rbp)
	movl	$68, -140(%rbp)
	movl	$69, -136(%rbp)
	movsd	.LC0(%rip), %xmm0
	movsd	%xmm0, -128(%rbp)
	movsd	.LC1(%rip), %xmm0
	movsd	%xmm0, -120(%rbp)
	movsd	.LC2(%rip), %xmm0
	movsd	%xmm0, -112(%rbp)
	movsd	.LC3(%rip), %xmm0
	movsd	%xmm0, -104(%rbp)
	movsd	.LC4(%rip), %xmm0
	movsd	%xmm0, -96(%rbp)
	movsd	.LC5(%rip), %xmm0
	movsd	%xmm0, -88(%rbp)
	movsd	.LC6(%rip), %xmm0
	movsd	%xmm0, -80(%rbp)
	movsd	.LC7(%rip), %xmm0
	movsd	%xmm0, -64(%rbp)
	movsd	.LC8(%rip), %xmm0
	movsd	%xmm0, -56(%rbp)
	movsd	.LC9(%rip), %xmm0
	movsd	%xmm0, -48(%rbp)
	movsd	.LC10(%rip), %xmm0
	movsd	%xmm0, -40(%rbp)
	movsd	.LC11(%rip), %xmm0
	movsd	%xmm0, -32(%rbp)
	movsd	.LC12(%rip), %xmm0
	movsd	%xmm0, -24(%rbp)
	movsd	.LC13(%rip), %xmm0
	movsd	%xmm0, -16(%rbp)
	jmp	.L2
.L9:
	movl	$0, -180(%rbp)
	jmp	.L3
.L8:
	movl	-180(%rbp), %eax
	cltq
	movsd	-128(%rbp,%rax,8), %xmm0
	movsd	-176(%rbp), %xmm1
	comisd	%xmm1, %xmm0
	jbe	.L4
	movl	-180(%rbp), %eax
	cltq
	movsd	-64(%rbp,%rax,8), %xmm0
	movsd	-168(%rbp), %xmm1
	comisd	%xmm1, %xmm0
	jbe	.L4
	leaq	-160(%rbp), %rdx
	movl	-180(%rbp), %eax
	cltq
	salq	$2, %rax
	addq	%rdx, %rax
	movq	%rax, %rdi
	call	puts@PLT
	jmp	.L7
.L4:
	addl	$1, -180(%rbp)
.L3:
	cmpl	$6, -180(%rbp)
	jle	.L8
.L7:
	cmpl	$7, -180(%rbp)
	jne	.L2
	leaq	.LC14(%rip), %rax
	movq	%rax, %rdi
	call	puts@PLT
.L2:
	leaq	-168(%rbp), %rdx
	leaq	-176(%rbp), %rax
	movq	%rax, %rsi
	leaq	.LC15(%rip), %rax
	movq	%rax, %rdi
	movl	$0, %eax
	call	__isoc99_scanf@PLT
	cmpl	$-1, %eax
	jne	.L9
	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
	.section	.rodata
	.align 8
.LC0:
	.long	0
	.long	1078050816
	.align 8
.LC1:
	.long	0
	.long	1078116352
	.align 8
.LC2:
	.long	0
	.long	1078198272
	.align 8
.LC3:
	.long	0
	.long	1078296576
	.align 8
.LC4:
	.long	0
	.long	1078525952
	.align 8
.LC5:
	.long	0
	.long	1078689792
	.align 8
.LC6:
	.long	0
	.long	1079083008
	.align 8
.LC7:
	.long	0
	.long	1079099392
	.align 8
.LC8:
	.long	0
	.long	1079197696
	.align 8
.LC9:
	.long	0
	.long	1079296000
	.align 8
.LC10:
	.long	0
	.long	1079394304
	.align 8
.LC11:
	.long	0
	.long	1079656448
	.align 8
.LC12:
	.long	0
	.long	1079836672
	.align 8
.LC13:
	.long	0
	.long	1080197120
	.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.
val
	.file	"temp.c"
	.text
	.section	.rodata
.LC14:
	.string	"NA"
.LC15:
	.string	"%lf %lf"
	.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	$192, %rsp
	movq	%fs:40, %rax
	movq	%rax, -8(%rbp)
	xorl	%eax, %eax
	movl	$4276545, -160(%rbp)
	movl	$16705, -156(%rbp)
	movl	$65, -152(%rbp)
	movl	$66, -148(%rbp)
	movl	$67, -144(%rbp)
	movl	$68, -140(%rbp)
	movl	$69, -136(%rbp)
	movsd	.LC0(%rip), %xmm0
	movsd	%xmm0, -128(%rbp)
	movsd	.LC1(%rip), %xmm0
	movsd	%xmm0, -120(%rbp)
	movsd	.LC2(%rip), %xmm0
	movsd	%xmm0, -112(%rbp)
	movsd	.LC3(%rip), %xmm0
	movsd	%xmm0, -104(%rbp)
	movsd	.LC4(%rip), %xmm0
	movsd	%xmm0, -96(%rbp)
	movsd	.LC5(%rip), %xmm0
	movsd	%xmm0, -88(%rbp)
	movsd	.LC6(%rip), %xmm0
	movsd	%xmm0, -80(%rbp)
	movsd	.LC7(%rip), %xmm0
	movsd	%xmm0, -64(%rbp)
	movsd	.LC8(%rip), %xmm0
	movsd	%xmm0, -56(%rbp)
	movsd	.LC9(%rip), %xmm0
	movsd	%xmm0, -48(%rbp)
	movsd	.LC10(%rip), %xmm0
	movsd	%xmm0, -40(%rbp)
	movsd	.LC11(%rip), %xmm0
	movsd	%xmm0, -32(%rbp)
	movsd	.LC12(%rip), %xmm0
	movsd	%xmm0, -24(%rbp)
	movsd	.LC13(%rip), %xmm0
	movsd	%xmm0, -16(%rbp)
	jmp	.L2
.L9:
	movl	$0, -180(%rbp)
	jmp	.L3
.L8:
	movl	-180(%rbp), %eax
	cltq
	movsd	-128(%rbp,%rax,8), %xmm0
	movsd	-176(%rbp), %xmm1
	comisd	%xmm1, %xmm0
	jbe	.L4
	movl	-180(%rbp), %eax
	cltq
	movsd	-64(%rbp,%rax,8), %xmm0
	movsd	-168(%rbp), %xmm1
	comisd	%xmm1, %xmm0
	jbe	.L4
	leaq	-160(%rbp), %rdx
	movl	-180(%rbp), %eax
	cltq
	salq	$2, %rax
	addq	%rdx, %rax
	movq	%rax, %rdi
	call	puts@PLT
	jmp	.L7
.L4:
	addl	$1, -180(%rbp)
.L3:
	cmpl	$6, -180(%rbp)
	jle	.L8
.L7:
	cmpl	$7, -180(%rbp)
	jne	.L2
	leaq	.LC14(%rip), %rax
	movq	%rax, %rdi
	call	puts@PLT
.L2:
	leaq	-168(%rbp), %rdx
	leaq	-176(%rbp), %rax
	movq	%rax, %rsi
	leaq	.LC15(%rip), %rax
	movq	%rax, %rdi
	movl	$0, %eax
	call	__isoc99_scanf@PLT
	cmpl	$-1, %eax
	jne	.L9
	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
	.section	.rodata
	.align 8
.LC0:
	.long	0
	.long	1078050816
	.align 8
.LC1:
	.long	0
	.long	1078116352
	.align 8
.LC2:
	.long	0
	.long	1078198272
	.align 8
.LC3:
	.long	0
	.long	1078296576
	.align 8
.LC4:
	.long	0
	.long	1078525952
	.align 8
.LC5:
	.long	0
	.long	1078689792
	.align 8
.LC6:
	.long	0
	.long	1079083008
	.align 8
.LC7:
	.long	0
	.long	1079099392
	.align 8
.LC8:
	.long	0
	.long	1079197696
	.align 8
.LC9:
	.long	0
	.long	1079296000
	.align 8
.LC10:
	.long	0
	.long	1079394304
	.align 8
.LC11:
	.long	0
	.long	1079656448
	.align 8
.LC12:
	.long	0
	.long	1079836672
	.align 8
.LC13:
	.long	0
	.long	1080197120
	.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:
