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

```c
#include <stdio.h>
#include <stdlib.h>

/* 阿澄佳奈はいいぞ */

struct sasakikotoko {
	int A, B;
};

int umine(const void* x, const void* y) {
	int a = ((const struct sasakikotoko*)x)->B, b = ((const struct sasakikotoko*)y)->B;
	return a < b ? -1 : a > b;
}

int N;
struct sasakikotoko haisyupaabu[271828];

int main(void) {
	int i;
	int uesakasumire = 0;
	if (scanf("%d", &N) != 1) return 1;
	for (i = 0; i < N; i++) {
		if (scanf("%d%d", &haisyupaabu[i].A, &haisyupaabu[i].B) != 2) return 1;
	}
	qsort(haisyupaabu, N, sizeof(*haisyupaabu), umine);
	for (i = 0; i < N; i++) {
		uesakasumire += haisyupaabu[i].A;
		if (uesakasumire > haisyupaabu[i].B) {
			puts("No");
			return 0;
		}
	}
	puts("Yes");
	return 0;
}
```

Assembly Code:

```assembly
	.file	"temp.c"
	.text
	.p2align 4
	.globl	umine
	.type	umine, @function
umine:
.LFB39:
	.cfi_startproc
	endbr64
	movl	4(%rsi), %eax
	cmpl	%eax, 4(%rdi)
	movl	$-1, %edx
	setg	%al
	movzbl	%al, %eax
	cmovl	%edx, %eax
	ret
	.cfi_endproc
.LFE39:
	.size	umine, .-umine
	.section	.rodata.str1.1,"aMS",@progbits,1
.LC0:
	.string	"%d"
.LC1:
	.string	"%d%d"
.LC2:
	.string	"No"
.LC3:
	.string	"Yes"
	.section	.text.startup,"ax",@progbits
	.p2align 4
	.globl	main
	.type	main, @function
main:
.LFB40:
	.cfi_startproc
	endbr64
	pushq	%r13
	.cfi_def_cfa_offset 16
	.cfi_offset 13, -16
	xorl	%eax, %eax
	leaq	N(%rip), %rsi
	leaq	.LC0(%rip), %rdi
	pushq	%r12
	.cfi_def_cfa_offset 24
	.cfi_offset 12, -24
	pushq	%rbp
	.cfi_def_cfa_offset 32
	.cfi_offset 6, -32
	pushq	%rbx
	.cfi_def_cfa_offset 40
	.cfi_offset 3, -40
	subq	$8, %rsp
	.cfi_def_cfa_offset 48
	call	__isoc99_scanf@PLT
	cmpl	$1, %eax
	jne	.L9
	movslq	N(%rip), %rsi
	leaq	haisyupaabu(%rip), %r12
	testl	%esi, %esi
	jle	.L8
	movq	%r12, %rbx
	xorl	%ebp, %ebp
	leaq	.LC1(%rip), %r13
	jmp	.L10
	.p2align 4,,10
	.p2align 3
.L19:
	movslq	N(%rip), %rsi
	addl	$1, %ebp
	addq	$8, %rbx
	cmpl	%ebp, %esi
	jle	.L8
.L10:
	xorl	%eax, %eax
	leaq	4(%rbx), %rdx
	movq	%rbx, %rsi
	movq	%r13, %rdi
	call	__isoc99_scanf@PLT
	cmpl	$2, %eax
	je	.L19
.L9:
	movl	$1, %eax
.L5:
	addq	$8, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 40
	popq	%rbx
	.cfi_def_cfa_offset 32
	popq	%rbp
	.cfi_def_cfa_offset 24
	popq	%r12
	.cfi_def_cfa_offset 16
	popq	%r13
	.cfi_def_cfa_offset 8
	ret
.L8:
	.cfi_restore_state
	movl	$8, %edx
	leaq	umine(%rip), %rcx
	movq	%r12, %rdi
	call	qsort@PLT
	movl	N(%rip), %edx
	testl	%edx, %edx
	jle	.L11
	leaq	haisyupaabu(%rip), %rax
	leal	-1(%rdx), %ecx
	leaq	8(%rax), %rdx
	leaq	(%rdx,%rcx,8), %rcx
	xorl	%edx, %edx
	jmp	.L13
	.p2align 4,,10
	.p2align 3
.L12:
	addq	$8, %rax
	cmpq	%rcx, %rax
	je	.L11
.L13:
	addl	(%rax), %edx
	cmpl	%edx, 4(%rax)
	jge	.L12
	leaq	.LC2(%rip), %rdi
	call	puts@PLT
	xorl	%eax, %eax
	jmp	.L5
.L11:
	leaq	.LC3(%rip), %rdi
	call	puts@PLT
	xorl	%eax, %eax
	jmp	.L5
	.cfi_endproc
.LFE40:
	.size	main, .-main
	.globl	haisyupaabu
	.bss
	.align 32
	.type	haisyupaabu, @object
	.size	haisyupaabu, 2174624
haisyupaabu:
	.zero	2174624
	.globl	N
	.align 4
	.type	N, @object
	.size	N, 4
N:
	.zero	4
	.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.
Optimized Assembly Code:

user
```assembly
	.file	"temp.c"
	.text
	.p2align 4
	.globl	umine
	.type	umine, @function
umine:
.LFB39:
	.cfi_startproc
	endbr64
	movl	4(%rsi), %eax
	cmpl	%eax, 4(%rdi)
	movl	$-1, %edx
	setg	%al
	movzbl	%al, %eax
	cmovl	%edx, %eax
	ret
	.cfi_endproc
.LFE39:
	.size	umine, .-umine
	.section	.rodata.str1.1,"aMS",@progbits,1
.LC0:
	.string	"%d"
.LC1:
	.string	"%d%d"
.LC2:
	.string	"No"
.LC3:
	.string	"Yes"
	.section	.text.startup,"ax",@progbits
	.p2align 4
	.globl	main
	.type	main, @function
main:
.LFB40:
	.cfi_startproc
	endbr64
	pushq	%r13
	.cfi_def_cfa_offset 16
	.cfi_offset 13, -16
	xorl	%eax, %eax
	leaq	N(%rip), %rsi
	leaq	.LC0(%rip), %rdi
	pushq	%r12
	.cfi_def_cfa_offset 24
	.cfi_offset 12, -24
	pushq	%rbp
	.cfi_def_cfa_offset 32
	.cfi_offset 6, -32
	pushq	%rbx
	.cfi_def_cfa_offset 40
	.cfi_offset 3, -40
	subq	$8, %rsp
	.cfi_def_cfa_offset 48
	call	__isoc99_scanf@PLT
	cmpl	$1, %eax
	jne	.L9
	movslq	N(%rip), %rsi
	leaq	haisyupaabu(%rip), %r12
	testl	%esi, %esi
	jle	.L8
	movq	%r12, %rbx
	xorl	%ebp, %ebp
	leaq	.LC1(%rip), %r13
	jmp	.L10
	.p2align 4,,10
	.p2align 3
.L19:
	movslq	N(%rip), %rsi
	addl	$1, %ebp
	addq	$8, %rbx
	cmpl	%ebp, %esi
	jle	.L8
.L10:
	xorl	%eax, %eax
	leaq	4(%rbx), %rdx
	movq	%rbx, %rsi
	movq	%r13, %rdi
	call	__isoc99_scanf@PLT
	cmpl	$2, %eax
	je	.L19
.L9:
	movl	$1, %eax
.L5:
	addq	$8, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 40
	popq	%rbx
	.cfi_def_cfa_offset 32
	popq	%rbp
	.cfi_def_cfa_offset 24
	popq	%r12
	.cfi_def_cfa_offset 16
	popq	%r13
	.cfi_def_cfa_offset 8
	ret
.L8:
	.cfi_restore_state
	movl	$8, %edx
	leaq	umine(%rip), %rcx
	movq	%r12, %rdi
	call	qsort@PLT
	movl	N(%rip), %edx
	testl	%edx, %edx
	jle	.L11
	leaq	haisyupaabu(%rip), %rax
	leal	-1(%rdx), %ecx
	leaq	8(%rax), %rdx
	leaq	(%rdx,%rcx,8), %rcx
	xorl	%edx, %edx
	jmp	.L13
	.p2align 4,,10
	.p2align 3
.L12:
	addq	$8, %rax
	cmpq	%rcx, %rax
	je	.L11
.L13:
	addl	(%rax), %edx
	cmpl	%edx, 4(%rax)
	jge	.L12
	leaq	.LC2(%rip), %rdi
	call	puts@PLT
	xorl	%eax, %eax
	jmp	.L5
.L11:
	leaq	.LC3(%rip), %rdi
	call	puts@PLT
	xorl	%eax, %eax
	jmp	.L5
	.cfi_endproc
.LFE40:
	.size	main, .-main
	.globl	haisyupaabu
	.bss
	.align 32
	.type	haisyupaabu, @object
	.size	haisyupaabu, 2174624
haisyupaabu:
	.zero	2174624
	.globl	N
	.align 4
	.type	N, @object
	.size	N, 4
N:
	.zero	4
	.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
```assembly
	.file	"temp.c"
	.text
	.p2align 4
	.globl	umine
	.type	umine, @function
umine:
.LFB39:
	.cfi_startproc
	endbr64
	movl	4(%rsi), %eax
	cmpl	%eax, 4(%rdi)
	movl	$-1, %edx
	setg	%al
	movzbl	%al, %eax
	cmovl	%edx, %eax
	ret
	.cfi_endproc
.LFE39:
	.size	umine, .-umine
	.section	.rodata.str1.1,"aMS",@progbits,1
.LC0:
	.string	"%d"
.LC1:
	.string	"%d%d"
.LC2:
	.string	"No"
.LC3:
	.string	"Yes"
	.section	.text.startup,"ax",@progbits
	.p2align 4
	.globl	main
	.type	main, @function
main:
.LFB40:
	.cfi_startproc
	endbr64
	pushq	%r13
	.cfi_def_cfa_offset 16
	.cfi_offset 13, -16
	xorl	%eax, %eax
	leaq	N(%rip), %rsi
	leaq	.LC0(%rip), %rdi
	pushq	%r12
	.cfi_def_cfa_offset 24
	.cfi_offset 12, -24
	pushq	%rbp
	.cfi_def_cfa_offset 32
	.cfi_offset 6, -32
	pushq	%rbx
	.cfi_def_cfa_offset 40
	.cfi_offset 3, -40
	subq	$8, %rsp
	.cfi_def_cfa_offset 48
	call	__isoc99_scanf@PLT
	cmpl	$1, %eax
	jne	.L9
	movslq	N(%rip), %rsi
	leaq	haisyupaabu(%rip), %r12
	testl	%esi, %esi
	jle	.L8
	movq	%r12, %rbx
	xorl	%ebp, %ebp
	leaq	.LC1(%rip), %r13
	jmp	.L10
	.p2align 4,,10
	.p2align 3
.L19:
	movslq	N(%rip), %rsi
	addl	$1, %ebp
	addq	$8, %rbx
	cmpl	%ebp, %esi
	jle	.L8
.L10:
	xorl	%eax, %eax
	leaq	4(%rbx), %rdx
	movq	%rbx, %rsi
	movq	%r13, %rdi
	call	__isoc99_scanf@PLT
	cmpl	$2, %eax
	je	.L19
.L9:
	movl	$1, %eax
.L5:
	addq	$8, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 40
	popq	%rbx
	.cfi_def_cfa_offset 32
	popq	%rbp
	.cfi_def_cfa_offset 24
	popq	%r12
	.cfi_def_cfa_offset 16
	popq	%r13
	.cfi_def_cfa_offset 8
	ret
.L8:
	.cfi_restore_state
	movl	$8, %edx
	leaq	umine(%rip), %rcx
	movq	%r12, %rdi
	call	qsort@PLT
	movl	N(%rip), %edx
	testl	%edx, %edx
	jle	.L11
	leaq	haisyupaabu(%rip), %rax
	leal	-1(%rdx), %ecx
	leaq	8(%rax), %rdx
	leaq	(%rdx,%rcx,8), %rcx
	xorl	%edx, %edx
	jmp	.L13
	.p2align 4,,10
	.p2align 3
.L12:
	addq	$8, %rax
	cmpq	%rcx, %rax
	je	.L11
.L13:
	addl	(%rax), %edx
	cmpl	%edx, 4(%rax)
	jge	.L12
	leaq	.LC2(%rip), %rdi
	call	puts@PLT
	xorl	%eax, %eax
	jmp	.L5
.L11:
	leaq	.LC3(%rip), %rdi
	call	puts@PLT
	xorl	%eax, %eax
	jmp	.L5
	.cfi_endproc
.LFE40:
	.size	main, .-main
	.globl	haisyupaabu
	.bss
	.align 32
	.type	haisyupaabu, @object
	.size	haisyupaabu, 2174624
haisyupaabu:
	.zero	2174624
	.globl	N
	.align 4
	.type	N, @object
	.size	N, 4
N:
	.zero	4
	.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:
```
```c
#include <stdio.h>
#include <stdlib.h>

/* 阿澄佳奈はいいぞ */

struct sasakikotoko {
	int A, B;
};

int umine(const void* x, const void* y) {
	int a = ((const struct sasakikotoko*)x)->B, b = ((const struct sasakikotoko*)y)->B;
	return a < b ? -1 : a > b;
}

int N;
struct sasakikotoko haisyupaabu[271828];

int main(void) {
	int i;
	int uesakasumire = 0;
	if (scanf("%d", &N) != 1) return 1;
	for (i = 0; i < N; i++) {
		if (scanf("%d%d", &haisyupaabu[i].A, &haisyupaabu[i].B) != 2) return 1;
	}
	qsort(haisyupaabu, N, sizeof(*haisyupaabu), umine);
	for (i = 0; i < N; i++) {
		uesakasumire += haisyupaabu[i].A;
		if (uesakasumire > haisyupaabu[i].B) {
			puts("No");
			return 0;
		}
	}
	puts("Yes");
	return 0;
}
```
Given the following C code, your task is to generate highly optimized x86-64 assembly code.
C Code:

```c
#include <stdio.h>
#include <stdlib.h>

/* 阿澄佳奈はいいぞ */

struct sasakikotoko {
	int A, B;
};

int umine(const void* x, const void* y) {
	int a = ((const struct sasakikotoko*)x)->B, b = ((const struct sasakikotoko*)y)->B;
	return a < b ? -1 : a > b;
}

int N;
struct sasakikotoko haisyupaabu[271828];

int main(void) {
	int i;
	int uesakasumire = 0;
	if (scanf("%d", &N) != 1) return 1;
	for (i = 0; i < N; i++) {
		if (scanf("%d%d", &haisyupaabu[i].A, &haisyupaabu[i].B) != 2) return 1;
	}
	qsort(haisyupaabu, N, sizeof(*haisyupaabu), umine);
	for (i = 0; i < N; i++) {
		uesakasumire += haisyupaabu[i].A;
		if (uesakasumire > haisyupaabu[i].B) {
			puts("No");
			return 0;
		}
	}
	puts("Yes");
	return 0;
}
```

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.
Optimized Assembly Code:

3
334 1000
334 1000
334 1100
 30
384 8895
1725 9791
170 1024
4 11105
2 6
578 1815
702 3352
143 5141
1420 6980
24 1602
849 999
76 7586
85 5570
444 4991
719 11090
470 10708
1137 4547
455 9003
110 9901
15 8578
718 3692
104 1286
3 4
366 12143
7 6649
610 2374
152 7324
4 7042
292 11386
334 5720
 5
2 4
1 8
1 8
4 9
3 12
 3
334 1000
334 1100
334 1100
 5
2 4
1 8
0 8
4 9
3 12
 30
384 8895
1725 9791
170 1024
4 11105
2 6
578 1815
702 3352
143 5141
1420 11731
24 1602
849 999
76 7586
85 5570
444 4991
719 11090
470 10708
1137 4547
455 9003
110 9901
15 8578
718 3692
104 1286
3 4
366 12143
7 6649
610 2374
152 7324
4 7042
292 11386
334 5720
 3
334 1000
146 1100
334 1100
 5
2 4
1 8
0 8
4 9
3 4
 30
384 8895
1725 9791
170 1024
4 11105
2 6
578 1815
702 3352
143 5141
1420 11731
24 1602
849 999
76 7586
85 5570
444 4991
719 11090
470 10708
1137 4547
455 9003
110 9901
15 8578
718 3692
4 1286
3 4
366 12143
7 6649
610 2374
152 7324
4 7042
292 11386
334 5720
 3
334 1000
146 1100
334 1000

Yes
 No
 Yes
 Yes
 Yes
 No
 Yes
 No
 No
 Yes

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

```c
#include <stdio.h>
#include <stdlib.h>

/* 阿澄佳奈はいいぞ */

struct sasakikotoko {
	int A, B;
};

int umine(const void* x, const void* y) {
	int a = ((const struct sasakikotoko*)x)->B, b = ((const struct sasakikotoko*)y)->B;
	return a < b ? -1 : a > b;
}

int N;
struct sasakikotoko haisyupaabu[271828];

int main(void) {
	int i;
	int uesakasumire = 0;
	if (scanf("%d", &N) != 1) return 1;
	for (i = 0; i < N; i++) {
		if (scanf("%d%d", &haisyupaabu[i].A, &haisyupaabu[i].B) != 2) return 1;
	}
	qsort(haisyupaabu, N, sizeof(*haisyupaabu), umine);
	for (i = 0; i < N; i++) {
		uesakasumire += haisyupaabu[i].A;
		if (uesakasumire > haisyupaabu[i].B) {
			puts("No");
			return 0;
		}
	}
	puts("Yes");
	return 0;
}
```

Assembly Code:

```assembly
	.file	"temp.c"
	.text
	.p2align 4
	.globl	umine
	.type	umine, @function
umine:
.LFB39:
	.cfi_startproc
	endbr64
	movl	4(%rsi), %eax
	cmpl	%eax, 4(%rdi)
	movl	$-1, %edx
	setg	%al
	movzbl	%al, %eax
	cmovl	%edx, %eax
	ret
	.cfi_endproc
.LFE39:
	.size	umine, .-umine
	.section	.rodata.str1.1,"aMS",@progbits,1
.LC0:
	.string	"%d"
.LC1:
	.string	"%d%d"
.LC2:
	.string	"No"
.LC3:
	.string	"Yes"
	.section	.text.startup,"ax",@progbits
	.p2align 4
	.globl	main
	.type	main, @function
main:
.LFB40:
	.cfi_startproc
	endbr64
	pushq	%r13
	.cfi_def_cfa_offset 16
	.cfi_offset 13, -16
	xorl	%eax, %eax
	leaq	N(%rip), %rsi
	leaq	.LC0(%rip), %rdi
	pushq	%r12
	.cfi_def_cfa_offset 24
	.cfi_offset 12, -24
	pushq	%rbp
	.cfi_def_cfa_offset 32
	.cfi_offset 6, -32
	pushq	%rbx
	.cfi_def_cfa_offset 40
	.cfi_offset 3, -40
	subq	$8, %rsp
	.cfi_def_cfa_offset 48
	call	__isoc99_scanf@PLT
	cmpl	$1, %eax
	jne	.L9
	movslq	N(%rip), %rsi
	leaq	haisyupaabu(%rip), %r12
	testl	%esi, %esi
	jle	.L8
	movq	%r12, %rbx
	xorl	%ebp, %ebp
	leaq	.LC1(%rip), %r13
	jmp	.L10
	.p2align 4,,10
	.p2align 3
.L19:
	movslq	N(%rip), %rsi
	addl	$1, %ebp
	addq	$8, %rbx
	cmpl	%ebp, %esi
	jle	.L8
.L10:
	xorl	%eax, %eax
	leaq	4(%rbx), %rdx
	movq	%rbx, %rsi
	movq	%r13, %rdi
	call	__isoc99_scanf@PLT
	cmpl	$2, %eax
	je	.L19
.L9:
	movl	$1, %eax
.L5:
	addq	$8, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 40
	popq	%rbx
	.cfi_def_cfa_offset 32
	popq	%rbp
	.cfi_def_cfa_offset 24
	popq	%r12
	.cfi_def_cfa_offset 16
	popq	%r13
	.cfi_def_cfa_offset 8
	ret
.L8:
	.cfi_restore_state
	movl	$8, %edx
	leaq	umine(%rip), %rcx
	movq	%r12, %rdi
	call	qsort@PLT
	movl	N(%rip), %edx
	testl	%edx, %edx
	jle	.L11
	leaq	haisyupaabu(%rip), %rax
	leal	-1(%rdx), %ecx
	leaq	8(%rax), %rdx
	leaq	(%rdx,%rcx,8), %rcx
	xorl	%edx, %edx
	jmp	.L13
	.p2align 4,,10
	.p2align 3
.L12:
	addq	$8, %rax
	cmpq	%rcx, %rax
	je	.L11
.L13:
	addl	(%rax), %edx
	cmpl	%edx, 4(%rax)
	jge	.L12
	leaq	.LC2(%rip), %rdi
	call	puts@PLT
	xorl	%eax, %eax
	jmp	.L5
.L11:
	leaq	.LC3(%rip), %rdi
	call	puts@PLT
	xorl	%eax, %eax
	jmp	.L5
	.cfi_endproc
.LFE40:
	.size	main, .-main
	.globl	haisyupaabu
	.bss
	.align 32
	.type	haisyupaabu, @object
	.size	haisyupaabu, 2174624
haisyupaabu:
	.zero	2174624
	.globl	N
	.align 4
	.type	N, @object
	.size	N, 4
N:
	.zero	4
	.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.
Optimized Assembly Code:

train
```assembly
	.file	"temp.c"
	.text
	.p2align 4
	.globl	umine
	.type	umine, @function
umine:
.LFB39:
	.cfi_startproc
	endbr64
	movl	4(%rsi), %eax
	cmpl	%eax, 4(%rdi)
	movl	$-1, %edx
	setg	%al
	movzbl	%al, %eax
	cmovl	%edx, %eax
	ret
	.cfi_endproc
.LFE39:
	.size	umine, .-umine
	.section	.rodata.str1.1,"aMS",@progbits,1
.LC0:
	.string	"%d"
.LC1:
	.string	"%d%d"
.LC2:
	.string	"No"
.LC3:
	.string	"Yes"
	.section	.text.startup,"ax",@progbits
	.p2align 4
	.globl	main
	.type	main, @function
main:
.LFB40:
	.cfi_startproc
	endbr64
	pushq	%r13
	.cfi_def_cfa_offset 16
	.cfi_offset 13, -16
	xorl	%eax, %eax
	leaq	N(%rip), %rsi
	leaq	.LC0(%rip), %rdi
	pushq	%r12
	.cfi_def_cfa_offset 24
	.cfi_offset 12, -24
	pushq	%rbp
	.cfi_def_cfa_offset 32
	.cfi_offset 6, -32
	pushq	%rbx
	.cfi_def_cfa_offset 40
	.cfi_offset 3, -40
	subq	$8, %rsp
	.cfi_def_cfa_offset 48
	call	__isoc99_scanf@PLT
	cmpl	$1, %eax
	jne	.L9
	movslq	N(%rip), %rsi
	leaq	haisyupaabu(%rip), %r12
	testl	%esi, %esi
	jle	.L8
	movq	%r12, %rbx
	xorl	%ebp, %ebp
	leaq	.LC1(%rip), %r13
	jmp	.L10
	.p2align 4,,10
	.p2align 3
.L19:
	movslq	N(%rip), %rsi
	addl	$1, %ebp
	addq	$8, %rbx
	cmpl	%ebp, %esi
	jle	.L8
.L10:
	xorl	%eax, %eax
	leaq	4(%rbx), %rdx
	movq	%rbx, %rsi
	movq	%r13, %rdi
	call	__isoc99_scanf@PLT
	cmpl	$2, %eax
	je	.L19
.L9:
	movl	$1, %eax
.L5:
	addq	$8, %rsp
	.cfi_remember_state
	.cfi_def_cfa_offset 40
	popq	%rbx
	.cfi_def_cfa_offset 32
	popq	%rbp
	.cfi_def_cfa_offset 24
	popq	%r12
	.cfi_def_cfa_offset 16
	popq	%r13
	.cfi_def_cfa_offset 8
	ret
.L8:
	.cfi_restore_state
	movl	$8, %edx
	leaq	umine(%rip), %rcx
	movq	%r12, %rdi
	call	qsort@PLT
	movl	N(%rip), %edx
	testl	%edx, %edx
	jle	.L11
	leaq	haisyupaabu(%rip), %rax
	leal	-1(%rdx), %ecx
	leaq	8(%rax), %rdx
	leaq	(%rdx,%rcx,8), %rcx
	xorl	%edx, %edx
	jmp	.L13
	.p2align 4,,10
	.p2align 3
.L12:
	addq	$8, %rax
	cmpq	%rcx, %rax
	je	.L11
.L13:
	addl	(%rax), %edx
	cmpl	%edx, 4(%rax)
	jge	.L12
	leaq	.LC2(%rip), %rdi
	call	puts@PLT
	xorl	%eax, %eax
	jmp	.L5
.L11:
	leaq	.LC3(%rip), %rdi
	call	puts@PLT
	xorl	%eax, %eax
	jmp	.L5
	.cfi_endproc
.LFE40:
	.size	main, .-main
	.globl	haisyupaabu
	.bss
	.align 32
	.type	haisyupaabu, @object
	.size	haisyupaabu, 2174624
haisyupaabu:
	.zero	2174624
	.globl	N
	.align 4
	.type	N, @object
	.size	N, 4
N:
	.zero	4
	.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:
```