Program: distinctness

x86 assembly:
	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_isDistinct                     ## -- Begin function isDistinct
	.p2align	4, 0x90
_isDistinct:                            ## @isDistinct
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	subq	$1616, %rsp                     ## imm = 0x650
	movq	___stack_chk_guard@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, -8(%rbp)
	movq	%rdi, -1568(%rbp)
	movq	%rsi, -1576(%rbp)
	movq	-1576(%rbp), %rax
	movl	$2147483647, (%rax)             ## imm = 0x7FFFFFFF
	movl	$0, -1580(%rbp)
LBB0_1:                                 ## =>This Inner Loop Header: Depth=1
	cmpl	$128, -1580(%rbp)
	jge	LBB0_4
## %bb.2:                               ##   in Loop: Header=BB0_1 Depth=1
	movslq	-1580(%rbp), %rcx
	leaq	-1552(%rbp), %rax
	imulq	$12, %rcx, %rcx
	addq	%rcx, %rax
	movl	$2147483647, (%rax)             ## imm = 0x7FFFFFFF
	movslq	-1580(%rbp), %rcx
	leaq	-1552(%rbp), %rax
	imulq	$12, %rcx, %rcx
	addq	%rcx, %rax
	movl	$2147483647, 4(%rax)            ## imm = 0x7FFFFFFF
	movslq	-1580(%rbp), %rcx
	leaq	-1552(%rbp), %rax
	imulq	$12, %rcx, %rcx
	addq	%rcx, %rax
	movl	$2147483647, 8(%rax)            ## imm = 0x7FFFFFFF
## %bb.3:                               ##   in Loop: Header=BB0_1 Depth=1
	movl	-1580(%rbp), %eax
	addl	$1, %eax
	movl	%eax, -1580(%rbp)
	jmp	LBB0_1
LBB0_4:
	movq	-1568(%rbp), %rax
	movl	(%rax), %eax
	movl	%eax, -1552(%rbp)
	movl	$0, -1584(%rbp)
	movl	$1, -1588(%rbp)
LBB0_5:                                 ## =>This Loop Header: Depth=1
                                        ##     Child Loop BB0_7 Depth 2
	cmpl	$128, -1588(%rbp)
	jge	LBB0_23
## %bb.6:                               ##   in Loop: Header=BB0_5 Depth=1
	movl	$0, -1592(%rbp)
	movl	-1552(%rbp), %eax
	movl	%eax, -1596(%rbp)
	movl	-1548(%rbp), %eax
	movl	%eax, -1600(%rbp)
	movl	-1544(%rbp), %eax
	movl	%eax, -1604(%rbp)
LBB0_7:                                 ##   Parent Loop BB0_5 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	cmpl	$2147483647, -1596(%rbp)        ## imm = 0x7FFFFFFF
	je	LBB0_21
## %bb.8:                               ##   in Loop: Header=BB0_7 Depth=2
	movq	-1568(%rbp), %rax
	movslq	-1588(%rbp), %rcx
	movl	(%rax,%rcx,4), %eax
	cmpl	-1596(%rbp), %eax
	jle	LBB0_13
## %bb.9:                               ##   in Loop: Header=BB0_7 Depth=2
	cmpl	$2147483647, -1604(%rbp)        ## imm = 0x7FFFFFFF
	je	LBB0_11
## %bb.10:                              ##   in Loop: Header=BB0_7 Depth=2
	movslq	-1604(%rbp), %rcx
	leaq	-1552(%rbp), %rax
	imulq	$12, %rcx, %rcx
	addq	%rcx, %rax
	movl	(%rax), %eax
	movl	%eax, -1596(%rbp)
	movslq	-1604(%rbp), %rcx
	leaq	-1552(%rbp), %rax
	imulq	$12, %rcx, %rcx
	addq	%rcx, %rax
	movl	4(%rax), %eax
	movl	%eax, -1600(%rbp)
	movl	-1604(%rbp), %eax
	movl	%eax, -1592(%rbp)
	movslq	-1604(%rbp), %rcx
	leaq	-1552(%rbp), %rax
	imulq	$12, %rcx, %rcx
	addq	%rcx, %rax
	movl	8(%rax), %eax
	movl	%eax, -1604(%rbp)
	jmp	LBB0_12
LBB0_11:                                ##   in Loop: Header=BB0_5 Depth=1
	movq	-1568(%rbp), %rax
	movslq	-1588(%rbp), %rcx
	movl	(%rax,%rcx,4), %ecx
	movl	-1584(%rbp), %eax
	addl	$1, %eax
	movslq	%eax, %rdx
	leaq	-1552(%rbp), %rax
	imulq	$12, %rdx, %rdx
	addq	%rdx, %rax
	movl	%ecx, (%rax)
	movl	-1584(%rbp), %ecx
	addl	$1, %ecx
	movslq	-1592(%rbp), %rdx
	leaq	-1552(%rbp), %rax
	imulq	$12, %rdx, %rdx
	addq	%rdx, %rax
	movl	%ecx, 8(%rax)
	movl	-1584(%rbp), %eax
	addl	$1, %eax
	movl	%eax, -1584(%rbp)
	jmp	LBB0_21
LBB0_12:                                ##   in Loop: Header=BB0_7 Depth=2
	jmp	LBB0_20
LBB0_13:                                ##   in Loop: Header=BB0_7 Depth=2
	movq	-1568(%rbp), %rax
	movslq	-1588(%rbp), %rcx
	movl	(%rax,%rcx,4), %eax
	cmpl	-1596(%rbp), %eax
	jge	LBB0_18
## %bb.14:                              ##   in Loop: Header=BB0_7 Depth=2
	cmpl	$2147483647, -1600(%rbp)        ## imm = 0x7FFFFFFF
	je	LBB0_16
## %bb.15:                              ##   in Loop: Header=BB0_7 Depth=2
	movslq	-1600(%rbp), %rcx
	leaq	-1552(%rbp), %rax
	imulq	$12, %rcx, %rcx
	addq	%rcx, %rax
	movl	(%rax), %eax
	movl	%eax, -1596(%rbp)
	movslq	-1600(%rbp), %rcx
	leaq	-1552(%rbp), %rax
	imulq	$12, %rcx, %rcx
	addq	%rcx, %rax
	movl	8(%rax), %eax
	movl	%eax, -1604(%rbp)
	movl	-1600(%rbp), %eax
	movl	%eax, -1592(%rbp)
	movslq	-1600(%rbp), %rcx
	leaq	-1552(%rbp), %rax
	imulq	$12, %rcx, %rcx
	addq	%rcx, %rax
	movl	4(%rax), %eax
	movl	%eax, -1600(%rbp)
	jmp	LBB0_17
LBB0_16:                                ##   in Loop: Header=BB0_5 Depth=1
	movl	-1584(%rbp), %ecx
	addl	$1, %ecx
	movslq	-1592(%rbp), %rdx
	leaq	-1552(%rbp), %rax
	imulq	$12, %rdx, %rdx
	addq	%rdx, %rax
	movl	%ecx, 4(%rax)
	movq	-1568(%rbp), %rax
	movslq	-1588(%rbp), %rcx
	movl	(%rax,%rcx,4), %ecx
	movl	-1584(%rbp), %eax
	addl	$1, %eax
	movslq	%eax, %rdx
	leaq	-1552(%rbp), %rax
	imulq	$12, %rdx, %rdx
	addq	%rdx, %rax
	movl	%ecx, (%rax)
	movl	-1584(%rbp), %eax
	addl	$1, %eax
	movl	%eax, -1584(%rbp)
	jmp	LBB0_21
LBB0_17:                                ##   in Loop: Header=BB0_7 Depth=2
	jmp	LBB0_19
LBB0_18:
	movq	-1568(%rbp), %rax
	movslq	-1588(%rbp), %rcx
	movl	(%rax,%rcx,4), %ecx
	movq	-1576(%rbp), %rax
	movl	%ecx, (%rax)
	movl	$0, -1556(%rbp)
	jmp	LBB0_24
LBB0_19:                                ##   in Loop: Header=BB0_7 Depth=2
	jmp	LBB0_20
LBB0_20:                                ##   in Loop: Header=BB0_7 Depth=2
	jmp	LBB0_7
LBB0_21:                                ##   in Loop: Header=BB0_5 Depth=1
	jmp	LBB0_22
LBB0_22:                                ##   in Loop: Header=BB0_5 Depth=1
	movl	-1588(%rbp), %eax
	addl	$1, %eax
	movl	%eax, -1588(%rbp)
	jmp	LBB0_5
LBB0_23:
	movl	$1, -1556(%rbp)
LBB0_24:
	movl	-1556(%rbp), %eax
	movl	%eax, -1608(%rbp)               ## 4-byte Spill
	movq	___stack_chk_guard@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	-8(%rbp), %rcx
	cmpq	%rcx, %rax
	jne	LBB0_26
## %bb.25:
	movl	-1608(%rbp), %eax               ## 4-byte Reload
	addq	$1616, %rsp                     ## imm = 0x650
	popq	%rbp
	retq
LBB0_26:
	callq	___stack_chk_fail
	ud2
	.cfi_endproc
                                        ## -- End function
	.globl	_main                           ## -- Begin function main
	.p2align	4, 0x90
_main:                                  ## @main
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	subq	$32, %rsp
	movl	$0, -4(%rbp)
	leaq	_elements1(%rip), %rdi
	leaq	-8(%rbp), %rsi
	callq	_isDistinct
	movl	%eax, -16(%rbp)
	leaq	_elements2(%rip), %rdi
	leaq	-12(%rbp), %rsi
	callq	_isDistinct
	movl	%eax, -20(%rbp)
	cmpl	$0, -16(%rbp)
	je	LBB1_2
## %bb.1:
	leaq	L_.str(%rip), %rdi
	movb	$0, %al
	callq	_libmin_printf
	jmp	LBB1_3
LBB1_2:
	movl	-8(%rbp), %esi
	leaq	L_.str.1(%rip), %rdi
	movb	$0, %al
	callq	_libmin_printf
LBB1_3:
	cmpl	$0, -20(%rbp)
	je	LBB1_5
## %bb.4:
	leaq	L_.str.2(%rip), %rdi
	movb	$0, %al
	callq	_libmin_printf
	jmp	LBB1_6
LBB1_5:
	movl	-12(%rbp), %esi
	leaq	L_.str.3(%rip), %rdi
	movb	$0, %al
	callq	_libmin_printf
LBB1_6:
	callq	_libmin_success
	xorl	%eax, %eax
	addq	$32, %rsp
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.section	__DATA,__data
	.globl	_elements1                      ## @elements1
	.p2align	4
_elements1:
	.long	25                              ## 0x19
	.long	97                              ## 0x61
	.long	1                               ## 0x1
	.long	0                               ## 0x0
	.long	36                              ## 0x24
	.long	22                              ## 0x16
	.long	74                              ## 0x4a
	.long	3                               ## 0x3
	.long	9                               ## 0x9
	.long	12                              ## 0xc
	.long	30                              ## 0x1e
	.long	81                              ## 0x51
	.long	63                              ## 0x3f
	.long	148                             ## 0x94
	.long	99                              ## 0x63
	.long	13                              ## 0xd
	.long	64                              ## 0x40
	.long	49                              ## 0x31
	.long	80                              ## 0x50
	.long	15                              ## 0xf
	.long	125                             ## 0x7d
	.long	197                             ## 0xc5
	.long	101                             ## 0x65
	.long	100                             ## 0x64
	.long	136                             ## 0x88
	.long	122                             ## 0x7a
	.long	174                             ## 0xae
	.long	103                             ## 0x67
	.long	109                             ## 0x6d
	.long	112                             ## 0x70
	.long	130                             ## 0x82
	.long	181                             ## 0xb5
	.long	163                             ## 0xa3
	.long	1148                            ## 0x47c
	.long	199                             ## 0xc7
	.long	113                             ## 0x71
	.long	164                             ## 0xa4
	.long	149                             ## 0x95
	.long	180                             ## 0xb4
	.long	115                             ## 0x73
	.long	225                             ## 0xe1
	.long	297                             ## 0x129
	.long	201                             ## 0xc9
	.long	200                             ## 0xc8
	.long	236                             ## 0xec
	.long	222                             ## 0xde
	.long	274                             ## 0x112
	.long	203                             ## 0xcb
	.long	209                             ## 0xd1
	.long	212                             ## 0xd4
	.long	230                             ## 0xe6
	.long	281                             ## 0x119
	.long	263                             ## 0x107
	.long	2148                            ## 0x864
	.long	299                             ## 0x12b
	.long	213                             ## 0xd5
	.long	264                             ## 0x108
	.long	249                             ## 0xf9
	.long	280                             ## 0x118
	.long	215                             ## 0xd7
	.long	325                             ## 0x145
	.long	397                             ## 0x18d
	.long	301                             ## 0x12d
	.long	300                             ## 0x12c
	.long	336                             ## 0x150
	.long	322                             ## 0x142
	.long	374                             ## 0x176
	.long	303                             ## 0x12f
	.long	309                             ## 0x135
	.long	312                             ## 0x138
	.long	330                             ## 0x14a
	.long	381                             ## 0x17d
	.long	363                             ## 0x16b
	.long	3148                            ## 0xc4c
	.long	399                             ## 0x18f
	.long	313                             ## 0x139
	.long	364                             ## 0x16c
	.long	349                             ## 0x15d
	.long	380                             ## 0x17c
	.long	315                             ## 0x13b
	.long	425                             ## 0x1a9
	.long	497                             ## 0x1f1
	.long	401                             ## 0x191
	.long	400                             ## 0x190
	.long	436                             ## 0x1b4
	.long	422                             ## 0x1a6
	.long	474                             ## 0x1da
	.long	403                             ## 0x193
	.long	409                             ## 0x199
	.long	412                             ## 0x19c
	.long	430                             ## 0x1ae
	.long	481                             ## 0x1e1
	.long	463                             ## 0x1cf
	.long	4148                            ## 0x1034
	.long	499                             ## 0x1f3
	.long	413                             ## 0x19d
	.long	464                             ## 0x1d0
	.long	449                             ## 0x1c1
	.long	480                             ## 0x1e0
	.long	415                             ## 0x19f
	.long	525                             ## 0x20d
	.long	597                             ## 0x255
	.long	501                             ## 0x1f5
	.long	500                             ## 0x1f4
	.long	536                             ## 0x218
	.long	522                             ## 0x20a
	.long	574                             ## 0x23e
	.long	503                             ## 0x1f7
	.long	509                             ## 0x1fd
	.long	512                             ## 0x200
	.long	530                             ## 0x212
	.long	581                             ## 0x245
	.long	563                             ## 0x233
	.long	5148                            ## 0x141c
	.long	599                             ## 0x257
	.long	513                             ## 0x201
	.long	564                             ## 0x234
	.long	549                             ## 0x225
	.long	580                             ## 0x244
	.long	515                             ## 0x203
	.long	625                             ## 0x271
	.long	697                             ## 0x2b9
	.long	601                             ## 0x259
	.long	600                             ## 0x258
	.long	636                             ## 0x27c
	.long	622                             ## 0x26e
	.long	674                             ## 0x2a2
	.long	603                             ## 0x25b

	.globl	_elements2                      ## @elements2
	.p2align	4
_elements2:
	.long	25                              ## 0x19
	.long	97                              ## 0x61
	.long	1                               ## 0x1
	.long	0                               ## 0x0
	.long	36                              ## 0x24
	.long	22                              ## 0x16
	.long	74                              ## 0x4a
	.long	3                               ## 0x3
	.long	99                              ## 0x63
	.long	12                              ## 0xc
	.long	30                              ## 0x1e
	.long	81                              ## 0x51
	.long	63                              ## 0x3f
	.long	148                             ## 0x94
	.long	99                              ## 0x63
	.long	13                              ## 0xd
	.long	64                              ## 0x40
	.long	49                              ## 0x31
	.long	99                              ## 0x63
	.long	15                              ## 0xf
	.long	125                             ## 0x7d
	.long	197                             ## 0xc5
	.long	101                             ## 0x65
	.long	100                             ## 0x64
	.long	136                             ## 0x88
	.long	122                             ## 0x7a
	.long	174                             ## 0xae
	.long	103                             ## 0x67
	.long	199                             ## 0xc7
	.long	112                             ## 0x70
	.long	130                             ## 0x82
	.long	181                             ## 0xb5
	.long	163                             ## 0xa3
	.long	1148                            ## 0x47c
	.long	119                             ## 0x77
	.long	113                             ## 0x71
	.long	164                             ## 0xa4
	.long	149                             ## 0x95
	.long	199                             ## 0xc7
	.long	115                             ## 0x73
	.long	225                             ## 0xe1
	.long	297                             ## 0x129
	.long	201                             ## 0xc9
	.long	200                             ## 0xc8
	.long	236                             ## 0xec
	.long	222                             ## 0xde
	.long	274                             ## 0x112
	.long	203                             ## 0xcb
	.long	299                             ## 0x12b
	.long	212                             ## 0xd4
	.long	230                             ## 0xe6
	.long	281                             ## 0x119
	.long	263                             ## 0x107
	.long	2148                            ## 0x864
	.long	229                             ## 0xe5
	.long	213                             ## 0xd5
	.long	264                             ## 0x108
	.long	249                             ## 0xf9
	.long	299                             ## 0x12b
	.long	215                             ## 0xd7
	.long	325                             ## 0x145
	.long	397                             ## 0x18d
	.long	301                             ## 0x12d
	.long	300                             ## 0x12c
	.long	336                             ## 0x150
	.long	322                             ## 0x142
	.long	374                             ## 0x176
	.long	303                             ## 0x12f
	.long	399                             ## 0x18f
	.long	312                             ## 0x138
	.long	330                             ## 0x14a
	.long	381                             ## 0x17d
	.long	363                             ## 0x16b
	.long	3148                            ## 0xc4c
	.long	339                             ## 0x153
	.long	313                             ## 0x139
	.long	364                             ## 0x16c
	.long	349                             ## 0x15d
	.long	399                             ## 0x18f
	.long	315                             ## 0x13b
	.long	425                             ## 0x1a9
	.long	497                             ## 0x1f1
	.long	401                             ## 0x191
	.long	400                             ## 0x190
	.long	436                             ## 0x1b4
	.long	422                             ## 0x1a6
	.long	474                             ## 0x1da
	.long	403                             ## 0x193
	.long	409                             ## 0x199
	.long	412                             ## 0x19c
	.long	430                             ## 0x1ae
	.long	481                             ## 0x1e1
	.long	463                             ## 0x1cf
	.long	4148                            ## 0x1034
	.long	499                             ## 0x1f3
	.long	413                             ## 0x19d
	.long	464                             ## 0x1d0
	.long	449                             ## 0x1c1
	.long	480                             ## 0x1e0
	.long	415                             ## 0x19f
	.long	525                             ## 0x20d
	.long	597                             ## 0x255
	.long	501                             ## 0x1f5
	.long	500                             ## 0x1f4
	.long	536                             ## 0x218
	.long	522                             ## 0x20a
	.long	574                             ## 0x23e
	.long	503                             ## 0x1f7
	.long	509                             ## 0x1fd
	.long	512                             ## 0x200
	.long	530                             ## 0x212
	.long	581                             ## 0x245
	.long	563                             ## 0x233
	.long	5148                            ## 0x141c
	.long	599                             ## 0x257
	.long	513                             ## 0x201
	.long	564                             ## 0x234
	.long	549                             ## 0x225
	.long	580                             ## 0x244
	.long	515                             ## 0x203
	.long	625                             ## 0x271
	.long	697                             ## 0x2b9
	.long	601                             ## 0x259
	.long	600                             ## 0x258
	.long	636                             ## 0x27c
	.long	622                             ## 0x26e
	.long	674                             ## 0x2a2
	.long	603                             ## 0x25b

	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"The elements of `elements1' are distinct\n"

L_.str.1:                               ## @.str.1
	.asciz	"The elements of `elements1' are not distinct (e.g., %d is duplicated)\n"

L_.str.2:                               ## @.str.2
	.asciz	"The elements of `elements2' are distinct\n"

L_.str.3:                               ## @.str.3
	.asciz	"The elements of `elements2' are not distinct (e.g., %d is duplicated)\n"

.subsections_via_symbols


ARM64 assembly:
	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_isDistinct                     ; -- Begin function isDistinct
	.p2align	2
_isDistinct:                            ; @isDistinct
	.cfi_startproc
; %bb.0:
	stp	x28, x27, [sp, #-32]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 32
	stp	x29, x30, [sp, #16]             ; 16-byte Folded Spill
	add	x29, sp, #16
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w27, -24
	.cfi_offset w28, -32
	sub	sp, sp, #1600
	adrp	x8, ___stack_chk_guard@GOTPAGE
	ldr	x8, [x8, ___stack_chk_guard@GOTPAGEOFF]
	ldr	x8, [x8]
	stur	x8, [x29, #-24]
	str	x0, [sp, #40]
	str	x1, [sp, #32]
	ldr	x9, [sp, #32]
	mov	w8, #2147483647
	str	w8, [x9]
	str	wzr, [sp, #28]
	b	LBB0_1
LBB0_1:                                 ; =>This Inner Loop Header: Depth=1
	ldr	w8, [sp, #28]
	subs	w8, w8, #128
	cset	w8, ge
	tbnz	w8, #0, LBB0_4
	b	LBB0_2
LBB0_2:                                 ;   in Loop: Header=BB0_1 Depth=1
	ldrsw	x8, [sp, #28]
	mov	x11, #12
	mul	x10, x8, x11
	add	x9, sp, #56
	mov	w8, #2147483647
	str	w8, [x9, x10]
	ldrsw	x10, [sp, #28]
	mul	x12, x10, x11
	mov	x10, x9
	add	x10, x10, x12
	str	w8, [x10, #4]
	ldrsw	x10, [sp, #28]
	mul	x10, x10, x11
	add	x9, x9, x10
	str	w8, [x9, #8]
	b	LBB0_3
LBB0_3:                                 ;   in Loop: Header=BB0_1 Depth=1
	ldr	w8, [sp, #28]
	add	w8, w8, #1
	str	w8, [sp, #28]
	b	LBB0_1
LBB0_4:
	ldr	x8, [sp, #40]
	ldr	w8, [x8]
	str	w8, [sp, #56]
	str	wzr, [sp, #24]
	mov	w8, #1
	str	w8, [sp, #20]
	b	LBB0_5
LBB0_5:                                 ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB0_7 Depth 2
	ldr	w8, [sp, #20]
	subs	w8, w8, #128
	cset	w8, ge
	tbnz	w8, #0, LBB0_23
	b	LBB0_6
LBB0_6:                                 ;   in Loop: Header=BB0_5 Depth=1
	str	wzr, [sp, #16]
	ldr	w8, [sp, #56]
	str	w8, [sp, #12]
	ldr	w8, [sp, #60]
	str	w8, [sp, #8]
	ldr	w8, [sp, #64]
	str	w8, [sp, #4]
	b	LBB0_7
LBB0_7:                                 ;   Parent Loop BB0_5 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	ldr	w8, [sp, #12]
	mov	w9, #2147483647
	subs	w8, w8, w9
	cset	w8, eq
	tbnz	w8, #0, LBB0_21
	b	LBB0_8
LBB0_8:                                 ;   in Loop: Header=BB0_7 Depth=2
	ldr	x8, [sp, #40]
	ldrsw	x9, [sp, #20]
	ldr	w8, [x8, x9, lsl #2]
	ldr	w9, [sp, #12]
	subs	w8, w8, w9
	cset	w8, le
	tbnz	w8, #0, LBB0_13
	b	LBB0_9
LBB0_9:                                 ;   in Loop: Header=BB0_7 Depth=2
	ldr	w8, [sp, #4]
	mov	w9, #2147483647
	subs	w8, w8, w9
	cset	w8, eq
	tbnz	w8, #0, LBB0_11
	b	LBB0_10
LBB0_10:                                ;   in Loop: Header=BB0_7 Depth=2
	ldrsw	x8, [sp, #4]
	mov	x10, #12
	mul	x9, x8, x10
	add	x8, sp, #56
	ldr	w9, [x8, x9]
	str	w9, [sp, #12]
	ldrsw	x9, [sp, #4]
	mul	x11, x9, x10
	mov	x9, x8
	add	x9, x9, x11
	ldr	w9, [x9, #4]
	str	w9, [sp, #8]
	ldr	w9, [sp, #4]
	str	w9, [sp, #16]
	ldrsw	x9, [sp, #4]
	mul	x9, x9, x10
	add	x8, x8, x9
	ldr	w8, [x8, #8]
	str	w8, [sp, #4]
	b	LBB0_12
LBB0_11:                                ;   in Loop: Header=BB0_5 Depth=1
	ldr	x8, [sp, #40]
	ldrsw	x9, [sp, #20]
	ldr	w8, [x8, x9, lsl #2]
	ldr	w9, [sp, #24]
	add	w9, w9, #1
	mov	x11, #12
	mov	w10, #12
	smull	x10, w9, w10
	add	x9, sp, #56
	str	w8, [x9, x10]
	ldr	w8, [sp, #24]
	add	w8, w8, #1
	ldrsw	x10, [sp, #16]
	mul	x10, x10, x11
	add	x9, x9, x10
	str	w8, [x9, #8]
	ldr	w8, [sp, #24]
	add	w8, w8, #1
	str	w8, [sp, #24]
	b	LBB0_21
LBB0_12:                                ;   in Loop: Header=BB0_7 Depth=2
	b	LBB0_20
LBB0_13:                                ;   in Loop: Header=BB0_7 Depth=2
	ldr	x8, [sp, #40]
	ldrsw	x9, [sp, #20]
	ldr	w8, [x8, x9, lsl #2]
	ldr	w9, [sp, #12]
	subs	w8, w8, w9
	cset	w8, ge
	tbnz	w8, #0, LBB0_18
	b	LBB0_14
LBB0_14:                                ;   in Loop: Header=BB0_7 Depth=2
	ldr	w8, [sp, #8]
	mov	w9, #2147483647
	subs	w8, w8, w9
	cset	w8, eq
	tbnz	w8, #0, LBB0_16
	b	LBB0_15
LBB0_15:                                ;   in Loop: Header=BB0_7 Depth=2
	ldrsw	x8, [sp, #8]
	mov	x10, #12
	mul	x9, x8, x10
	add	x8, sp, #56
	ldr	w9, [x8, x9]
	str	w9, [sp, #12]
	ldrsw	x9, [sp, #8]
	mul	x11, x9, x10
	mov	x9, x8
	add	x9, x9, x11
	ldr	w9, [x9, #8]
	str	w9, [sp, #4]
	ldr	w9, [sp, #8]
	str	w9, [sp, #16]
	ldrsw	x9, [sp, #8]
	mul	x9, x9, x10
	add	x8, x8, x9
	ldr	w8, [x8, #4]
	str	w8, [sp, #8]
	b	LBB0_17
LBB0_16:                                ;   in Loop: Header=BB0_5 Depth=1
	ldr	w8, [sp, #24]
	add	w8, w8, #1
	ldrsw	x9, [sp, #16]
	mov	x10, #12
	mul	x11, x9, x10
	add	x9, sp, #56
	mov	x10, x9
	add	x10, x10, x11
	str	w8, [x10, #4]
	ldr	x8, [sp, #40]
	ldrsw	x10, [sp, #20]
	ldr	w8, [x8, x10, lsl #2]
	ldr	w10, [sp, #24]
	add	w10, w10, #1
	mov	w11, #12
	smull	x10, w10, w11
	str	w8, [x9, x10]
	ldr	w8, [sp, #24]
	add	w8, w8, #1
	str	w8, [sp, #24]
	b	LBB0_21
LBB0_17:                                ;   in Loop: Header=BB0_7 Depth=2
	b	LBB0_19
LBB0_18:
	ldr	x8, [sp, #40]
	ldrsw	x9, [sp, #20]
	ldr	w8, [x8, x9, lsl #2]
	ldr	x9, [sp, #32]
	str	w8, [x9]
	str	wzr, [sp, #52]
	b	LBB0_24
LBB0_19:                                ;   in Loop: Header=BB0_7 Depth=2
	b	LBB0_20
LBB0_20:                                ;   in Loop: Header=BB0_7 Depth=2
	b	LBB0_7
LBB0_21:                                ;   in Loop: Header=BB0_5 Depth=1
	b	LBB0_22
LBB0_22:                                ;   in Loop: Header=BB0_5 Depth=1
	ldr	w8, [sp, #20]
	add	w8, w8, #1
	str	w8, [sp, #20]
	b	LBB0_5
LBB0_23:
	mov	w8, #1
	str	w8, [sp, #52]
	b	LBB0_24
LBB0_24:
	ldr	w8, [sp, #52]
	str	w8, [sp]                        ; 4-byte Folded Spill
	ldur	x9, [x29, #-24]
	adrp	x8, ___stack_chk_guard@GOTPAGE
	ldr	x8, [x8, ___stack_chk_guard@GOTPAGEOFF]
	ldr	x8, [x8]
	subs	x8, x8, x9
	cset	w8, eq
	tbnz	w8, #0, LBB0_26
	b	LBB0_25
LBB0_25:
	bl	___stack_chk_fail
LBB0_26:
	ldr	w0, [sp]                        ; 4-byte Folded Reload
	add	sp, sp, #1600
	ldp	x29, x30, [sp, #16]             ; 16-byte Folded Reload
	ldp	x28, x27, [sp], #32             ; 16-byte Folded Reload
	ret
	.cfi_endproc
                                        ; -- End function
	.globl	_main                           ; -- Begin function main
	.p2align	2
_main:                                  ; @main
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #48
	.cfi_def_cfa_offset 48
	stp	x29, x30, [sp, #32]             ; 16-byte Folded Spill
	add	x29, sp, #32
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	stur	wzr, [x29, #-4]
	adrp	x0, _elements1@PAGE
	add	x0, x0, _elements1@PAGEOFF
	sub	x1, x29, #8
	bl	_isDistinct
	str	w0, [sp, #16]
	adrp	x0, _elements2@PAGE
	add	x0, x0, _elements2@PAGEOFF
	sub	x1, x29, #12
	bl	_isDistinct
	str	w0, [sp, #12]
	ldr	w8, [sp, #16]
	subs	w8, w8, #0
	cset	w8, eq
	tbnz	w8, #0, LBB1_2
	b	LBB1_1
LBB1_1:
	adrp	x0, l_.str@PAGE
	add	x0, x0, l_.str@PAGEOFF
	bl	_libmin_printf
	b	LBB1_3
LBB1_2:
	ldur	w9, [x29, #-8]
                                        ; implicit-def: $x8
	mov	x8, x9
	mov	x9, sp
	str	x8, [x9]
	adrp	x0, l_.str.1@PAGE
	add	x0, x0, l_.str.1@PAGEOFF
	bl	_libmin_printf
	b	LBB1_3
LBB1_3:
	ldr	w8, [sp, #12]
	subs	w8, w8, #0
	cset	w8, eq
	tbnz	w8, #0, LBB1_5
	b	LBB1_4
LBB1_4:
	adrp	x0, l_.str.2@PAGE
	add	x0, x0, l_.str.2@PAGEOFF
	bl	_libmin_printf
	b	LBB1_6
LBB1_5:
	ldur	w9, [x29, #-12]
                                        ; implicit-def: $x8
	mov	x8, x9
	mov	x9, sp
	str	x8, [x9]
	adrp	x0, l_.str.3@PAGE
	add	x0, x0, l_.str.3@PAGEOFF
	bl	_libmin_printf
	b	LBB1_6
LBB1_6:
	bl	_libmin_success
	mov	w0, #0
	ldp	x29, x30, [sp, #32]             ; 16-byte Folded Reload
	add	sp, sp, #48
	ret
	.cfi_endproc
                                        ; -- End function
	.section	__DATA,__data
	.globl	_elements1                      ; @elements1
	.p2align	2
_elements1:
	.long	25                              ; 0x19
	.long	97                              ; 0x61
	.long	1                               ; 0x1
	.long	0                               ; 0x0
	.long	36                              ; 0x24
	.long	22                              ; 0x16
	.long	74                              ; 0x4a
	.long	3                               ; 0x3
	.long	9                               ; 0x9
	.long	12                              ; 0xc
	.long	30                              ; 0x1e
	.long	81                              ; 0x51
	.long	63                              ; 0x3f
	.long	148                             ; 0x94
	.long	99                              ; 0x63
	.long	13                              ; 0xd
	.long	64                              ; 0x40
	.long	49                              ; 0x31
	.long	80                              ; 0x50
	.long	15                              ; 0xf
	.long	125                             ; 0x7d
	.long	197                             ; 0xc5
	.long	101                             ; 0x65
	.long	100                             ; 0x64
	.long	136                             ; 0x88
	.long	122                             ; 0x7a
	.long	174                             ; 0xae
	.long	103                             ; 0x67
	.long	109                             ; 0x6d
	.long	112                             ; 0x70
	.long	130                             ; 0x82
	.long	181                             ; 0xb5
	.long	163                             ; 0xa3
	.long	1148                            ; 0x47c
	.long	199                             ; 0xc7
	.long	113                             ; 0x71
	.long	164                             ; 0xa4
	.long	149                             ; 0x95
	.long	180                             ; 0xb4
	.long	115                             ; 0x73
	.long	225                             ; 0xe1
	.long	297                             ; 0x129
	.long	201                             ; 0xc9
	.long	200                             ; 0xc8
	.long	236                             ; 0xec
	.long	222                             ; 0xde
	.long	274                             ; 0x112
	.long	203                             ; 0xcb
	.long	209                             ; 0xd1
	.long	212                             ; 0xd4
	.long	230                             ; 0xe6
	.long	281                             ; 0x119
	.long	263                             ; 0x107
	.long	2148                            ; 0x864
	.long	299                             ; 0x12b
	.long	213                             ; 0xd5
	.long	264                             ; 0x108
	.long	249                             ; 0xf9
	.long	280                             ; 0x118
	.long	215                             ; 0xd7
	.long	325                             ; 0x145
	.long	397                             ; 0x18d
	.long	301                             ; 0x12d
	.long	300                             ; 0x12c
	.long	336                             ; 0x150
	.long	322                             ; 0x142
	.long	374                             ; 0x176
	.long	303                             ; 0x12f
	.long	309                             ; 0x135
	.long	312                             ; 0x138
	.long	330                             ; 0x14a
	.long	381                             ; 0x17d
	.long	363                             ; 0x16b
	.long	3148                            ; 0xc4c
	.long	399                             ; 0x18f
	.long	313                             ; 0x139
	.long	364                             ; 0x16c
	.long	349                             ; 0x15d
	.long	380                             ; 0x17c
	.long	315                             ; 0x13b
	.long	425                             ; 0x1a9
	.long	497                             ; 0x1f1
	.long	401                             ; 0x191
	.long	400                             ; 0x190
	.long	436                             ; 0x1b4
	.long	422                             ; 0x1a6
	.long	474                             ; 0x1da
	.long	403                             ; 0x193
	.long	409                             ; 0x199
	.long	412                             ; 0x19c
	.long	430                             ; 0x1ae
	.long	481                             ; 0x1e1
	.long	463                             ; 0x1cf
	.long	4148                            ; 0x1034
	.long	499                             ; 0x1f3
	.long	413                             ; 0x19d
	.long	464                             ; 0x1d0
	.long	449                             ; 0x1c1
	.long	480                             ; 0x1e0
	.long	415                             ; 0x19f
	.long	525                             ; 0x20d
	.long	597                             ; 0x255
	.long	501                             ; 0x1f5
	.long	500                             ; 0x1f4
	.long	536                             ; 0x218
	.long	522                             ; 0x20a
	.long	574                             ; 0x23e
	.long	503                             ; 0x1f7
	.long	509                             ; 0x1fd
	.long	512                             ; 0x200
	.long	530                             ; 0x212
	.long	581                             ; 0x245
	.long	563                             ; 0x233
	.long	5148                            ; 0x141c
	.long	599                             ; 0x257
	.long	513                             ; 0x201
	.long	564                             ; 0x234
	.long	549                             ; 0x225
	.long	580                             ; 0x244
	.long	515                             ; 0x203
	.long	625                             ; 0x271
	.long	697                             ; 0x2b9
	.long	601                             ; 0x259
	.long	600                             ; 0x258
	.long	636                             ; 0x27c
	.long	622                             ; 0x26e
	.long	674                             ; 0x2a2
	.long	603                             ; 0x25b

	.globl	_elements2                      ; @elements2
	.p2align	2
_elements2:
	.long	25                              ; 0x19
	.long	97                              ; 0x61
	.long	1                               ; 0x1
	.long	0                               ; 0x0
	.long	36                              ; 0x24
	.long	22                              ; 0x16
	.long	74                              ; 0x4a
	.long	3                               ; 0x3
	.long	99                              ; 0x63
	.long	12                              ; 0xc
	.long	30                              ; 0x1e
	.long	81                              ; 0x51
	.long	63                              ; 0x3f
	.long	148                             ; 0x94
	.long	99                              ; 0x63
	.long	13                              ; 0xd
	.long	64                              ; 0x40
	.long	49                              ; 0x31
	.long	99                              ; 0x63
	.long	15                              ; 0xf
	.long	125                             ; 0x7d
	.long	197                             ; 0xc5
	.long	101                             ; 0x65
	.long	100                             ; 0x64
	.long	136                             ; 0x88
	.long	122                             ; 0x7a
	.long	174                             ; 0xae
	.long	103                             ; 0x67
	.long	199                             ; 0xc7
	.long	112                             ; 0x70
	.long	130                             ; 0x82
	.long	181                             ; 0xb5
	.long	163                             ; 0xa3
	.long	1148                            ; 0x47c
	.long	119                             ; 0x77
	.long	113                             ; 0x71
	.long	164                             ; 0xa4
	.long	149                             ; 0x95
	.long	199                             ; 0xc7
	.long	115                             ; 0x73
	.long	225                             ; 0xe1
	.long	297                             ; 0x129
	.long	201                             ; 0xc9
	.long	200                             ; 0xc8
	.long	236                             ; 0xec
	.long	222                             ; 0xde
	.long	274                             ; 0x112
	.long	203                             ; 0xcb
	.long	299                             ; 0x12b
	.long	212                             ; 0xd4
	.long	230                             ; 0xe6
	.long	281                             ; 0x119
	.long	263                             ; 0x107
	.long	2148                            ; 0x864
	.long	229                             ; 0xe5
	.long	213                             ; 0xd5
	.long	264                             ; 0x108
	.long	249                             ; 0xf9
	.long	299                             ; 0x12b
	.long	215                             ; 0xd7
	.long	325                             ; 0x145
	.long	397                             ; 0x18d
	.long	301                             ; 0x12d
	.long	300                             ; 0x12c
	.long	336                             ; 0x150
	.long	322                             ; 0x142
	.long	374                             ; 0x176
	.long	303                             ; 0x12f
	.long	399                             ; 0x18f
	.long	312                             ; 0x138
	.long	330                             ; 0x14a
	.long	381                             ; 0x17d
	.long	363                             ; 0x16b
	.long	3148                            ; 0xc4c
	.long	339                             ; 0x153
	.long	313                             ; 0x139
	.long	364                             ; 0x16c
	.long	349                             ; 0x15d
	.long	399                             ; 0x18f
	.long	315                             ; 0x13b
	.long	425                             ; 0x1a9
	.long	497                             ; 0x1f1
	.long	401                             ; 0x191
	.long	400                             ; 0x190
	.long	436                             ; 0x1b4
	.long	422                             ; 0x1a6
	.long	474                             ; 0x1da
	.long	403                             ; 0x193
	.long	409                             ; 0x199
	.long	412                             ; 0x19c
	.long	430                             ; 0x1ae
	.long	481                             ; 0x1e1
	.long	463                             ; 0x1cf
	.long	4148                            ; 0x1034
	.long	499                             ; 0x1f3
	.long	413                             ; 0x19d
	.long	464                             ; 0x1d0
	.long	449                             ; 0x1c1
	.long	480                             ; 0x1e0
	.long	415                             ; 0x19f
	.long	525                             ; 0x20d
	.long	597                             ; 0x255
	.long	501                             ; 0x1f5
	.long	500                             ; 0x1f4
	.long	536                             ; 0x218
	.long	522                             ; 0x20a
	.long	574                             ; 0x23e
	.long	503                             ; 0x1f7
	.long	509                             ; 0x1fd
	.long	512                             ; 0x200
	.long	530                             ; 0x212
	.long	581                             ; 0x245
	.long	563                             ; 0x233
	.long	5148                            ; 0x141c
	.long	599                             ; 0x257
	.long	513                             ; 0x201
	.long	564                             ; 0x234
	.long	549                             ; 0x225
	.long	580                             ; 0x244
	.long	515                             ; 0x203
	.long	625                             ; 0x271
	.long	697                             ; 0x2b9
	.long	601                             ; 0x259
	.long	600                             ; 0x258
	.long	636                             ; 0x27c
	.long	622                             ; 0x26e
	.long	674                             ; 0x2a2
	.long	603                             ; 0x25b

	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"The elements of `elements1' are distinct\n"

l_.str.1:                               ; @.str.1
	.asciz	"The elements of `elements1' are not distinct (e.g., %d is duplicated)\n"

l_.str.2:                               ; @.str.2
	.asciz	"The elements of `elements2' are distinct\n"

l_.str.3:                               ; @.str.3
	.asciz	"The elements of `elements2' are not distinct (e.g., %d is duplicated)\n"

.subsections_via_symbols