	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function ComputeNormal
_ComputeNormal:                         ## @ComputeNormal
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	pushq	%r15
	pushq	%r14
	pushq	%r13
	pushq	%r12
	pushq	%rbx
	subq	$232, %rsp
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	%rsi, %r15
	movq	___stack_chk_guard@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, -48(%rbp)
	movq	(%rdi), %rcx
	movq	8(%rcx), %r10
	movq	(%r10), %r11
	movq	16(%r11), %rax
	movq	%rax, -96(%rbp)
	movups	(%r11), %xmm0
	movaps	%xmm0, -112(%rbp)
	movq	16(%r11), %rax
	movq	%rax, -64(%rbp)
	movdqu	(%r11), %xmm0
	movdqa	%xmm0, -80(%rbp)
	movq	%r10, -208(%rbp)
	movq	%r10, -176(%rbp)
	movq	%r10, -200(%rbp)
	movq	%r10, -168(%rbp)
	movq	%r10, -192(%rbp)
	movq	%r10, -160(%rbp)
	movq	%rcx, -216(%rbp)                ## 8-byte Spill
	cmpq	%rcx, %r10
	movq	%r10, -272(%rbp)                ## 8-byte Spill
	movq	%r11, -264(%rbp)                ## 8-byte Spill
	je	LBB0_1
## %bb.2:
	movq	%r11, %rdx
	movq	%r15, -256(%rbp)                ## 8-byte Spill
	movq	-112(%rbp), %r14
	movq	-104(%rbp), %rax
	movq	%rax, -232(%rbp)                ## 8-byte Spill
	movq	-208(%rbp), %r8
	movq	-200(%rbp), %rsi
	movq	-80(%rbp), %rcx
	movq	-72(%rbp), %rax
	movq	%rax, -224(%rbp)                ## 8-byte Spill
	movq	-176(%rbp), %r9
	movq	-168(%rbp), %r12
	movq	-96(%rbp), %rax
	movq	%rax, -240(%rbp)                ## 8-byte Spill
	movq	-192(%rbp), %r13
	movq	-64(%rbp), %rax
	movq	%rax, -248(%rbp)                ## 8-byte Spill
	movq	%rcx, %rax
	movq	%r10, %r11
	movq	%r14, %rcx
	movq	%rdx, %rbx
	.p2align	4, 0x90
LBB0_3:                                 ## =>This Inner Loop Header: Depth=1
	movq	(%rbx), %r15
	cmpq	%rcx, %r15
	cmovlq	%r10, %r8
	cmovlq	%r15, %r14
	cmovlq	%r15, %rcx
	cmpq	%rax, %r15
	cmovgq	%r15, %rax
	movq	%rax, %rdx
	movq	8(%rbx), %rax
	cmovgq	%r10, %r9
	movq	%rbx, %rdi
	movq	-232(%rbp), %rbx                ## 8-byte Reload
	cmpq	%rbx, %rax
	cmovlq	%r10, %rsi
	cmovlq	%rax, %rbx
	movq	%rbx, -232(%rbp)                ## 8-byte Spill
	movq	-224(%rbp), %rbx                ## 8-byte Reload
	cmpq	%rbx, %rax
	cmovgq	%rax, %rbx
	movq	%rbx, -224(%rbp)                ## 8-byte Spill
	cmovgq	%r10, %r12
	movq	16(%rdi), %rax
	movq	-240(%rbp), %rdi                ## 8-byte Reload
	cmpq	%rdi, %rax
	cmovlq	%r10, %r13
	cmovlq	%rax, %rdi
	movq	-248(%rbp), %rbx                ## 8-byte Reload
	cmpq	%rbx, %rax
	cmovgq	%rax, %rbx
	cmovgq	%r10, %r11
	movq	8(%r10), %r10
	cmpq	-216(%rbp), %r10                ## 8-byte Folded Reload
	je	LBB0_5
## %bb.4:                               ##   in Loop: Header=BB0_3 Depth=1
	movq	%rdi, -240(%rbp)                ## 8-byte Spill
	movq	%rbx, -248(%rbp)                ## 8-byte Spill
	movq	(%r10), %rbx
	movq	%rdx, %rax
	jmp	LBB0_3
LBB0_5:
	movq	%r14, -112(%rbp)
	movq	%r8, -208(%rbp)
	movq	%rdx, -80(%rbp)
	movq	%r9, -176(%rbp)
	movq	-232(%rbp), %r8                 ## 8-byte Reload
	movq	%r8, -104(%rbp)
	movq	%rsi, -200(%rbp)
	movq	-224(%rbp), %rax                ## 8-byte Reload
	movq	%rax, -72(%rbp)
	movq	%r12, -168(%rbp)
	movq	%rdi, -96(%rbp)
	movq	%r13, -192(%rbp)
	movq	%rbx, -64(%rbp)
	movq	%r11, -160(%rbp)
	movq	-256(%rbp), %r15                ## 8-byte Reload
	jmp	LBB0_6
LBB0_1:
	movq	-80(%rbp), %rdx
	movq	-72(%rbp), %rax
	movq	-112(%rbp), %rcx
	movq	-104(%rbp), %r8
	movq	-64(%rbp), %rbx
	movq	-96(%rbp), %rdi
LBB0_6:
	subq	%rcx, %rdx
	subq	%r8, %rax
	xorl	%ecx, %ecx
	cmpq	%rdx, %rax
	setg	%cl
	subq	%rdi, %rbx
	movq	-80(%rbp,%rcx,8), %rax
	subq	-112(%rbp,%rcx,8), %rax
	cmpq	%rax, %rbx
	movl	$2, %eax
	cmovleq	%rcx, %rax
	movq	-112(%rbp,%rax,8), %rcx
	cmpq	-80(%rbp,%rax,8), %rcx
	jge	LBB0_7
## %bb.8:
	movq	-208(%rbp,%rax,8), %rcx
	movq	-176(%rbp,%rax,8), %rax
	movq	(%rcx), %rcx
	movq	(%rax), %r14
	movdqu	(%rcx), %xmm0
	movdqu	(%r14), %xmm1
	psubq	%xmm1, %xmm0
	movdqa	%xmm0, -144(%rbp)
	movq	16(%rcx), %r9
	subq	16(%r14), %r9
	movq	%r9, -128(%rbp)
	movq	-272(%rbp), %r12                ## 8-byte Reload
	cmpq	-216(%rbp), %r12                ## 8-byte Folded Reload
	je	LBB0_15
## %bb.9:
	pextrq	$1, %xmm0, %r10
	movq	%xmm0, %r11
	xorl	%r8d, %r8d
	movq	-264(%rbp), %rax                ## 8-byte Reload
	.p2align	4, 0x90
LBB0_10:                                ## =>This Inner Loop Header: Depth=1
	movq	(%rax), %rcx
	movq	8(%rax), %rdx
	subq	(%r14), %rcx
	subq	8(%r14), %rdx
	movq	16(%rax), %rbx
	subq	16(%r14), %rbx
	movq	%rbx, %rdi
	imulq	%r10, %rdi
	movq	%rdx, %rsi
	imulq	%r9, %rsi
	subq	%rsi, %rdi
	movq	%rcx, %rax
	imulq	%r9, %rax
	imulq	%r11, %rbx
	subq	%rbx, %rax
	imulq	%r11, %rdx
	imulq	%r10, %rcx
	subq	%rcx, %rdx
	movq	%rdi, %rcx
	imulq	%rdi, %rcx
	movq	%rax, %rsi
	imulq	%rax, %rsi
	movq	%rdx, %rbx
	imulq	%rdx, %rbx
	addq	%rsi, %rbx
	addq	%rcx, %rbx
	cmpq	%r8, %rbx
	jle	LBB0_12
## %bb.11:                              ##   in Loop: Header=BB0_10 Depth=1
	movq	%rdi, (%r15)
	movq	%rax, 8(%r15)
	movq	%rdx, 16(%r15)
	movq	%rbx, %r8
LBB0_12:                                ##   in Loop: Header=BB0_10 Depth=1
	movq	8(%r12), %r12
	cmpq	-216(%rbp), %r12                ## 8-byte Folded Reload
	je	LBB0_14
## %bb.13:                              ##   in Loop: Header=BB0_10 Depth=1
	movq	(%r12), %rax
	jmp	LBB0_10
LBB0_7:
	pxor	%xmm0, %xmm0
	movdqu	%xmm0, (%r15)
	addq	$16, %r15
	jmp	LBB0_16
LBB0_14:
	testq	%r8, %r8
	jg	LBB0_17
LBB0_15:
	pxor	%xmm0, %xmm0
	movdqu	%xmm0, (%r15)
	movq	$0, 16(%r15)
	leaq	-144(%rbp), %rdi
	callq	_LongAxis
	leaq	(%r15,%rax,8), %r15
LBB0_16:
	movq	$1, (%r15)
LBB0_17:
	movq	___stack_chk_guard@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	cmpq	-48(%rbp), %rax
	jne	LBB0_19
## %bb.18:
	addq	$232, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
LBB0_19:
	callq	___stack_chk_fail
	.cfi_endproc
                                        ## -- End function
	.no_dead_strip	_ComputeNormal
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function ComputeNormal
_ComputeNormal:                         ; @ComputeNormal
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #192
	.cfi_def_cfa_offset 192
	stp	x22, x21, [sp, #144]            ; 16-byte Folded Spill
	stp	x20, x19, [sp, #160]            ; 16-byte Folded Spill
	stp	x29, x30, [sp, #176]            ; 16-byte Folded Spill
	add	x29, sp, #176
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
	.cfi_offset w21, -40
	.cfi_offset w22, -48
	mov	x19, x1
Lloh0:
	adrp	x8, ___stack_chk_guard@GOTPAGE
Lloh1:
	ldr	x8, [x8, ___stack_chk_guard@GOTPAGEOFF]
Lloh2:
	ldr	x8, [x8]
	stur	x8, [x29, #-40]
	ldr	x8, [x0]
	ldr	x9, [x8, #8]
	ldr	x10, [x9]
	ldr	q0, [x10]
	str	q0, [sp, #80]
	ldr	x11, [x10, #16]
	str	x11, [sp, #96]
	stur	q0, [x29, #-64]
	stur	x11, [x29, #-48]
	stp	x9, x9, [sp]
	stp	x9, x9, [sp, #24]
	str	x9, [sp, #16]
	str	x9, [sp, #40]
	cmp	x9, x8
	b.eq	LBB0_5
; %bb.1:
	ldp	x17, x12, [sp, #80]
	ldp	x0, x1, [sp]
	ldp	x13, x11, [x29, #-64]
	ldp	x2, x3, [sp, #24]
	ldr	x14, [sp, #96]
	ldr	x4, [sp, #16]
	mov	x5, x9
	mov	x15, x17
	mov	x7, x10
	mov	x6, x9
	ldur	x16, [x29, #-48]
LBB0_2:                                 ; =>This Inner Loop Header: Depth=1
	ldp	x20, x21, [x7]
	cmp	x20, x15
	csel	x0, x6, x0, lt
	csel	x17, x20, x17, lt
	csel	x15, x20, x15, lt
	cmp	x20, x13
	csel	x2, x6, x2, gt
	csel	x13, x20, x13, gt
	cmp	x21, x12
	csel	x1, x6, x1, lt
	csel	x12, x21, x12, lt
	cmp	x21, x11
	csel	x3, x6, x3, gt
	csel	x11, x21, x11, gt
	ldr	x7, [x7, #16]
	cmp	x7, x14
	csel	x4, x6, x4, lt
	csel	x14, x7, x14, lt
	cmp	x7, x16
	csel	x5, x6, x5, gt
	csel	x16, x7, x16, gt
	ldr	x6, [x6, #8]
	cmp	x6, x8
	b.eq	LBB0_4
; %bb.3:                                ;   in Loop: Header=BB0_2 Depth=1
	ldr	x7, [x6]
	b	LBB0_2
LBB0_4:
	stp	x17, x12, [sp, #80]
	stp	x0, x1, [sp]
	stp	x13, x11, [x29, #-64]
	stp	x2, x3, [sp, #24]
	str	x14, [sp, #96]
	str	x4, [sp, #16]
	stur	x16, [x29, #-48]
	str	x5, [sp, #40]
	b	LBB0_6
LBB0_5:
	ldp	x13, x11, [x29, #-64]
	ldp	x15, x12, [sp, #80]
	ldur	x16, [x29, #-48]
	ldr	x14, [sp, #96]
LBB0_6:
	sub	x11, x11, x12
	sub	x12, x13, x15
	cmp	x11, x12
	cset	w11, gt
	sub	x12, x16, x14
	sub	x13, x29, #64
	sub	x14, x29, #64
	bfi	x14, x11, #3, #1
	ldr	x14, [x14]
	add	x15, sp, #80
	add	x16, sp, #80
	bfi	x16, x11, #3, #1
	ldr	x16, [x16]
	sub	x14, x14, x16
	cmp	x12, x14
	mov	w12, #2
	csel	x11, x12, x11, gt
	lsl	x11, x11, #3
	ldr	x12, [x15, x11]
	ldr	x13, [x13, x11]
	cmp	x12, x13
	b.ge	LBB0_13
; %bb.7:
	mov	x12, sp
	ldr	x12, [x12, x11]
	add	x13, sp, #24
	ldr	x11, [x13, x11]
	ldr	x12, [x12]
	ldr	x11, [x11]
	ldr	q0, [x12]
	ldr	q1, [x11]
	sub.2d	v0, v0, v1
	str	q0, [sp, #48]
	ldr	x12, [x12, #16]
	ldr	x13, [x11, #16]
	sub	x12, x12, x13
	str	x12, [sp, #64]
	cmp	x9, x8
	b.eq	LBB0_15
; %bb.8:
	mov	x15, #0
	mov.d	x13, v0[1]
	fmov	x14, d0
LBB0_9:                                 ; =>This Inner Loop Header: Depth=1
	ldp	x16, x17, [x10]
	ldp	x0, x1, [x11]
	sub	x0, x16, x0
	sub	x17, x17, x1
	ldr	x10, [x10, #16]
	ldr	x16, [x11, #16]
	sub	x16, x10, x16
	mul	x10, x17, x12
	neg	x10, x10
	madd	x10, x16, x13, x10
	mul	x16, x16, x14
	neg	x16, x16
	madd	x16, x0, x12, x16
	mul	x0, x0, x13
	neg	x0, x0
	madd	x17, x17, x14, x0
	mul	x0, x17, x17
	madd	x0, x16, x16, x0
	madd	x0, x10, x10, x0
	cmp	x0, x15
	b.le	LBB0_11
; %bb.10:                               ;   in Loop: Header=BB0_9 Depth=1
	stp	x10, x16, [x19]
	mov	x15, x0
	str	x17, [x19, #16]
LBB0_11:                                ;   in Loop: Header=BB0_9 Depth=1
	ldr	x9, [x9, #8]
	cmp	x9, x8
	b.eq	LBB0_14
; %bb.12:                               ;   in Loop: Header=BB0_9 Depth=1
	ldr	x10, [x9]
	b	LBB0_9
LBB0_13:
	add	x8, x19, #16
	stp	xzr, xzr, [x19]
	b	LBB0_16
LBB0_14:
	cmp	x15, #0
	b.gt	LBB0_17
LBB0_15:
	stp	xzr, xzr, [x19]
	str	xzr, [x19, #16]
	add	x0, sp, #48
	bl	_LongAxis
	add	x8, x19, x0, lsl #3
LBB0_16:
	mov	w9, #1
	str	x9, [x8]
LBB0_17:
	ldur	x8, [x29, #-40]
Lloh3:
	adrp	x9, ___stack_chk_guard@GOTPAGE
Lloh4:
	ldr	x9, [x9, ___stack_chk_guard@GOTPAGEOFF]
Lloh5:
	ldr	x9, [x9]
	cmp	x9, x8
	b.ne	LBB0_19
; %bb.18:
	ldp	x29, x30, [sp, #176]            ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #160]            ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #144]            ; 16-byte Folded Reload
	add	sp, sp, #192
	ret
LBB0_19:
	bl	___stack_chk_fail
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.cfi_endproc
                                        ; -- End function
	.no_dead_strip	_ComputeNormal
.subsections_via_symbols
