	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_greek_UTF_8_stem               ## -- Begin function greek_UTF_8_stem
	.p2align	4, 0x90
_greek_UTF_8_stem:                      ## @greek_UTF_8_stem
	.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	$24, %rsp
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	leaq	4(%rdi), %r12
	movq	4(%rdi), %rax
	movq	%rax, (%rdi)
	leaq	8(%rdi), %r15
	movq	%rdi, -56(%rbp)                 ## 8-byte Spill
	callq	_r_tolower
	movl	%eax, %ebx
	shrl	$31, %eax
	testl	%ebx, %ebx
	movl	$2, %ecx
	cmovnel	%eax, %ecx
	testb	$1, %cl
	jne	LBB0_2
## %bb.1:
	movl	(%r15), %eax
	movl	%eax, (%r12)
	jmp	LBB0_3
LBB0_2:
	movl	%ebx, %r14d
	testl	%eax, %eax
	jne	LBB0_159
LBB0_3:
	movq	-56(%rbp), %r14                 ## 8-byte Reload
	movq	%r14, %rdi
	callq	_r_has_min_length
	testl	%eax, %eax
	jle	LBB0_4
## %bb.5:
	movq	%r12, -48(%rbp)                 ## 8-byte Spill
	movq	16(%r14), %rax
	movl	$1, (%rax)
	movl	4(%r14), %r12d
	movl	8(%r14), %r13d
	movq	%r14, %rdi
	callq	_r_step1
	movl	%eax, %r14d
	shrl	$31, %eax
	testl	%r14d, %r14d
	cmovnsl	%ebx, %r14d
	movl	$3, %ecx
	cmovnel	%eax, %ecx
	cmovel	%ebx, %r14d
	cmpl	$3, %ecx
	je	LBB0_7
## %bb.6:
	testl	%ecx, %ecx
	jne	LBB0_8
LBB0_7:
	subl	%r13d, %r12d
	movl	(%r15), %ebx
	addl	%ebx, %r12d
	movl	%r12d, %r13d
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movl	%r12d, (%rax)
LBB0_10:
	movq	-56(%rbp), %r12                 ## 8-byte Reload
	movq	%r12, %rdi
	callq	_r_steps1
	movl	%eax, %ecx
	shrl	$31, %ecx
	testl	%eax, %eax
	cmovnsl	%r14d, %eax
	movl	$4, %edx
	cmovnel	%ecx, %edx
	cmovnel	%eax, %r14d
	testb	$1, %dl
	jne	LBB0_12
## %bb.11:
	movl	%r13d, %eax
	subl	%ebx, %eax
	movl	(%r15), %ebx
	addl	%ebx, %eax
	movl	%eax, %r13d
	movq	-48(%rbp), %rcx                 ## 8-byte Reload
	movl	%eax, (%rcx)
LBB0_14:
	movq	%r12, %rdi
	callq	_r_steps2
	movl	%eax, %ecx
	shrl	$31, %ecx
	testl	%eax, %eax
	cmovnsl	%r14d, %eax
	movl	$5, %edx
	cmovnel	%ecx, %edx
	cmovnel	%eax, %r14d
	cmpl	$5, %edx
	je	LBB0_16
## %bb.15:
	testl	%edx, %edx
	jne	LBB0_17
LBB0_16:
	movl	%r13d, %eax
	subl	%ebx, %eax
	movl	(%r15), %ebx
	addl	%ebx, %eax
	movl	%eax, %r13d
	movq	-48(%rbp), %rcx                 ## 8-byte Reload
	movl	%eax, (%rcx)
LBB0_19:
	movq	%r12, %rdi
	callq	_r_steps3
	movl	%eax, %ecx
	shrl	$31, %ecx
	testl	%eax, %eax
	cmovnsl	%r14d, %eax
	movl	$6, %edx
	cmovnel	%ecx, %edx
	cmovnel	%eax, %r14d
	cmpl	$6, %edx
	je	LBB0_21
## %bb.20:
	testl	%edx, %edx
	jne	LBB0_22
LBB0_21:
	movl	%r13d, %eax
	subl	%ebx, %eax
	movl	(%r15), %ebx
	addl	%ebx, %eax
	movl	%eax, %r13d
	movq	-48(%rbp), %rcx                 ## 8-byte Reload
	movl	%eax, (%rcx)
LBB0_24:
	movq	%r12, %rdi
	callq	_r_steps4
	movl	%eax, %ecx
	shrl	$31, %ecx
	testl	%eax, %eax
	cmovnsl	%r14d, %eax
	movl	$7, %edx
	cmovnel	%ecx, %edx
	cmovnel	%eax, %r14d
	cmpl	$7, %edx
	je	LBB0_26
## %bb.25:
	testl	%edx, %edx
	jne	LBB0_27
LBB0_26:
	movl	%r13d, %eax
	subl	%ebx, %eax
	movl	(%r15), %ebx
	addl	%ebx, %eax
	movl	%eax, %r13d
	movq	-48(%rbp), %rcx                 ## 8-byte Reload
	movl	%eax, (%rcx)
	jmp	LBB0_29
LBB0_4:
	movl	%eax, %r14d
	jmp	LBB0_159
LBB0_8:
	testl	%eax, %eax
	jne	LBB0_159
## %bb.9:
	movl	(%r15), %ebx
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movl	(%rax), %r13d
	jmp	LBB0_10
LBB0_12:
	testl	%ecx, %ecx
	jne	LBB0_159
## %bb.13:
	movl	(%r15), %ebx
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movl	(%rax), %r13d
	jmp	LBB0_14
LBB0_17:
	testl	%ecx, %ecx
	jne	LBB0_159
## %bb.18:
	movl	(%r15), %ebx
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movl	(%rax), %r13d
	jmp	LBB0_19
LBB0_22:
	testl	%ecx, %ecx
	jne	LBB0_159
## %bb.23:
	movl	(%r15), %ebx
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movl	(%rax), %r13d
	jmp	LBB0_24
LBB0_27:
	testl	%ecx, %ecx
	jne	LBB0_159
## %bb.28:
	movl	(%r15), %ebx
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movl	(%rax), %r13d
LBB0_29:
	movq	%r12, %rdi
	callq	_r_steps5
	movl	%eax, %ecx
	shrl	$31, %ecx
	testl	%eax, %eax
	cmovnsl	%r14d, %eax
	movl	$8, %edx
	cmovnel	%ecx, %edx
	cmovnel	%eax, %r14d
	testb	$1, %dl
	jne	LBB0_31
## %bb.30:
	movl	%r13d, %eax
	subl	%ebx, %eax
	movl	(%r15), %ebx
	addl	%ebx, %eax
	movl	%eax, %r13d
	movq	-48(%rbp), %rcx                 ## 8-byte Reload
	movl	%eax, (%rcx)
LBB0_33:
	movq	%r12, %rdi
	callq	_r_steps6
	movl	%eax, %ecx
	shrl	$31, %ecx
	testl	%eax, %eax
	cmovnsl	%r14d, %eax
	movl	$9, %edx
	cmovnel	%ecx, %edx
	cmovnel	%eax, %r14d
	cmpl	$9, %edx
	je	LBB0_35
## %bb.34:
	testl	%edx, %edx
	jne	LBB0_36
LBB0_35:
	movl	%r13d, %eax
	subl	%ebx, %eax
	movl	(%r15), %ebx
	addl	%ebx, %eax
	movl	%eax, %r13d
	movq	-48(%rbp), %rcx                 ## 8-byte Reload
	movl	%eax, (%rcx)
	jmp	LBB0_38
LBB0_31:
	testl	%ecx, %ecx
	jne	LBB0_159
## %bb.32:
	movl	(%r15), %ebx
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movl	(%rax), %r13d
	jmp	LBB0_33
LBB0_36:
	testl	%ecx, %ecx
	jne	LBB0_159
## %bb.37:
	movl	(%r15), %ebx
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movl	(%rax), %r13d
LBB0_38:
	movq	%r12, %rdi
	callq	_r_steps7
	movl	%eax, %ecx
	shrl	$31, %ecx
	testl	%eax, %eax
	cmovnsl	%r14d, %eax
	movl	$10, %edx
	cmovnel	%ecx, %edx
	cmovnel	%eax, %r14d
	cmpl	$10, %edx
	je	LBB0_40
## %bb.39:
	testl	%edx, %edx
	jne	LBB0_41
LBB0_40:
	movl	%r13d, %eax
	subl	%ebx, %eax
	movl	(%r15), %ebx
	addl	%ebx, %eax
	movl	%eax, %r13d
	movq	-48(%rbp), %rcx                 ## 8-byte Reload
	movl	%eax, (%rcx)
LBB0_43:
	movq	%r12, %rdi
	callq	_r_steps8
	movl	%eax, %ecx
	shrl	$31, %ecx
	testl	%eax, %eax
	cmovnsl	%r14d, %eax
	movl	$11, %edx
	cmovnel	%ecx, %edx
	cmovnel	%eax, %r14d
	cmpl	$11, %edx
	je	LBB0_45
## %bb.44:
	testl	%edx, %edx
	jne	LBB0_46
LBB0_45:
	movl	%r13d, %eax
	subl	%ebx, %eax
	movl	(%r15), %ebx
	addl	%ebx, %eax
	movl	%eax, %r13d
	movq	-48(%rbp), %rcx                 ## 8-byte Reload
	movl	%eax, (%rcx)
	jmp	LBB0_48
LBB0_41:
	testl	%ecx, %ecx
	jne	LBB0_159
## %bb.42:
	movl	(%r15), %ebx
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movl	(%rax), %r13d
	jmp	LBB0_43
LBB0_46:
	testl	%ecx, %ecx
	jne	LBB0_159
## %bb.47:
	movl	(%r15), %ebx
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movl	(%rax), %r13d
LBB0_48:
	movq	%r12, %rdi
	callq	_r_steps9
	movl	%eax, %ecx
	shrl	$31, %ecx
	testl	%eax, %eax
	cmovnsl	%r14d, %eax
	movl	$12, %edx
	cmovnel	%ecx, %edx
	cmovnel	%eax, %r14d
	cmpl	$12, %edx
	je	LBB0_50
## %bb.49:
	testl	%edx, %edx
	jne	LBB0_51
LBB0_50:
	movl	%r13d, %eax
	subl	%ebx, %eax
	movl	(%r15), %ebx
	addl	%ebx, %eax
	movl	%eax, %r13d
	movq	-48(%rbp), %rcx                 ## 8-byte Reload
	movl	%eax, (%rcx)
LBB0_53:
	movq	%r12, %rdi
	callq	_r_steps10
	movl	%eax, %ecx
	shrl	$31, %ecx
	testl	%eax, %eax
	cmovnsl	%r14d, %eax
	movl	$13, %edx
	cmovnel	%ecx, %edx
	cmovnel	%eax, %r14d
	cmpl	$13, %edx
	je	LBB0_55
## %bb.54:
	testl	%edx, %edx
	jne	LBB0_56
LBB0_55:
	movl	%r13d, %eax
	subl	%ebx, %eax
	movl	(%r15), %ebx
	addl	%ebx, %eax
	movl	%eax, %r13d
	movq	-48(%rbp), %rcx                 ## 8-byte Reload
	movl	%eax, (%rcx)
LBB0_58:
	movq	%r12, %rdi
	callq	_r_step2a
	movl	%eax, %ecx
	shrl	$31, %ecx
	testl	%eax, %eax
	cmovnsl	%r14d, %eax
	movl	$14, %edx
	cmovnel	%ecx, %edx
	cmovnel	%eax, %r14d
	cmpl	$14, %edx
	je	LBB0_60
## %bb.59:
	testl	%edx, %edx
	jne	LBB0_61
LBB0_60:
	movl	%r13d, %eax
	subl	%ebx, %eax
	movl	(%r15), %ebx
	addl	%ebx, %eax
	movl	%eax, %r13d
	movq	-48(%rbp), %rcx                 ## 8-byte Reload
	movl	%eax, (%rcx)
LBB0_63:
	movq	%r12, %rdi
	callq	_r_step2b
	movl	%eax, %ecx
	shrl	$31, %ecx
	testl	%eax, %eax
	cmovnsl	%r14d, %eax
	movl	$15, %edx
	cmovnel	%ecx, %edx
	cmovnel	%eax, %r14d
	cmpl	$15, %edx
	je	LBB0_65
## %bb.64:
	testl	%edx, %edx
	jne	LBB0_66
LBB0_65:
	movl	%r13d, %eax
	subl	%ebx, %eax
	movl	(%r15), %ebx
	addl	%ebx, %eax
	movl	%eax, %r13d
	movq	-48(%rbp), %rcx                 ## 8-byte Reload
	movl	%eax, (%rcx)
	jmp	LBB0_68
LBB0_51:
	testl	%ecx, %ecx
	jne	LBB0_159
## %bb.52:
	movl	(%r15), %ebx
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movl	(%rax), %r13d
	jmp	LBB0_53
LBB0_56:
	testl	%ecx, %ecx
	jne	LBB0_159
## %bb.57:
	movl	(%r15), %ebx
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movl	(%rax), %r13d
	jmp	LBB0_58
LBB0_61:
	testl	%ecx, %ecx
	jne	LBB0_159
## %bb.62:
	movl	(%r15), %ebx
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movl	(%rax), %r13d
	jmp	LBB0_63
LBB0_66:
	testl	%ecx, %ecx
	jne	LBB0_159
## %bb.67:
	movl	(%r15), %ebx
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movl	(%rax), %r13d
LBB0_68:
	movq	%r12, %rdi
	callq	_r_step2c
	movl	%eax, %ecx
	shrl	$31, %ecx
	testl	%eax, %eax
	cmovnsl	%r14d, %eax
	movl	$16, %edx
	cmovnel	%ecx, %edx
	cmovnel	%eax, %r14d
	testb	$1, %dl
	jne	LBB0_70
## %bb.69:
	movl	%r13d, %eax
	subl	%ebx, %eax
	movl	(%r15), %ebx
	addl	%ebx, %eax
	movl	%eax, %r13d
	movq	-48(%rbp), %rcx                 ## 8-byte Reload
	movl	%eax, (%rcx)
LBB0_72:
	movq	%r12, %rdi
	callq	_r_step2d
	movl	%eax, %ecx
	shrl	$31, %ecx
	testl	%eax, %eax
	cmovnsl	%r14d, %eax
	movl	$17, %edx
	cmovnel	%ecx, %edx
	cmovnel	%eax, %r14d
	cmpl	$17, %edx
	je	LBB0_74
## %bb.73:
	testl	%edx, %edx
	jne	LBB0_75
LBB0_74:
	movl	%r13d, %eax
	subl	%ebx, %eax
	movl	(%r15), %ebx
	addl	%ebx, %eax
	movl	%eax, %r13d
	movq	-48(%rbp), %rcx                 ## 8-byte Reload
	movl	%eax, (%rcx)
	jmp	LBB0_77
LBB0_70:
	testl	%ecx, %ecx
	jne	LBB0_159
## %bb.71:
	movl	(%r15), %ebx
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movl	(%rax), %r13d
	jmp	LBB0_72
LBB0_75:
	testl	%ecx, %ecx
	jne	LBB0_159
## %bb.76:
	movl	(%r15), %ebx
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movl	(%rax), %r13d
LBB0_77:
	movq	%r12, %rdi
	callq	_r_step3
	movl	%eax, %ecx
	shrl	$31, %ecx
	testl	%eax, %eax
	cmovnsl	%r14d, %eax
	movl	$18, %edx
	cmovnel	%ecx, %edx
	cmovnel	%eax, %r14d
	cmpl	$18, %edx
	je	LBB0_79
## %bb.78:
	testl	%edx, %edx
	jne	LBB0_80
LBB0_79:
	movl	%r13d, %eax
	subl	%ebx, %eax
	movl	(%r15), %ebx
	addl	%ebx, %eax
	movl	%eax, %r13d
	movq	-48(%rbp), %rcx                 ## 8-byte Reload
	movl	%eax, (%rcx)
LBB0_82:
	movq	%r12, %rdi
	callq	_r_step4
	movl	%eax, %ecx
	shrl	$31, %ecx
	testl	%eax, %eax
	cmovnsl	%r14d, %eax
	movl	$19, %edx
	cmovnel	%ecx, %edx
	cmovnel	%eax, %r14d
	cmpl	$19, %edx
	je	LBB0_84
## %bb.83:
	testl	%edx, %edx
	jne	LBB0_85
LBB0_84:
	movl	%r13d, %eax
	subl	%ebx, %eax
	movl	(%r15), %ebx
	addl	%ebx, %eax
	movl	%eax, %r13d
	movq	-48(%rbp), %rcx                 ## 8-byte Reload
	movl	%eax, (%rcx)
LBB0_87:
	movq	%r12, %rdi
	callq	_r_step5a
	movl	%eax, %ecx
	shrl	$31, %ecx
	testl	%eax, %eax
	cmovnsl	%r14d, %eax
	movl	$20, %edx
	cmovnel	%ecx, %edx
	cmovnel	%eax, %r14d
	cmpl	$20, %edx
	je	LBB0_89
## %bb.88:
	testl	%edx, %edx
	jne	LBB0_90
LBB0_89:
	movl	%r13d, %eax
	subl	%ebx, %eax
	movl	(%r15), %ebx
	addl	%ebx, %eax
	movl	%eax, %r13d
	movq	-48(%rbp), %rcx                 ## 8-byte Reload
	movl	%eax, (%rcx)
LBB0_92:
	movq	%r12, %rdi
	callq	_r_step5b
	movl	%eax, %ecx
	shrl	$31, %ecx
	testl	%eax, %eax
	cmovnsl	%r14d, %eax
	movl	$21, %edx
	cmovnel	%ecx, %edx
	cmovnel	%eax, %r14d
	cmpl	$21, %edx
	je	LBB0_94
## %bb.93:
	testl	%edx, %edx
	jne	LBB0_95
LBB0_94:
	movl	%r13d, %eax
	subl	%ebx, %eax
	movl	(%r15), %ebx
	addl	%ebx, %eax
	movl	%eax, %r13d
	movq	-48(%rbp), %rcx                 ## 8-byte Reload
	movl	%eax, (%rcx)
	jmp	LBB0_97
LBB0_80:
	testl	%ecx, %ecx
	jne	LBB0_159
## %bb.81:
	movl	(%r15), %ebx
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movl	(%rax), %r13d
	jmp	LBB0_82
LBB0_85:
	testl	%ecx, %ecx
	jne	LBB0_159
## %bb.86:
	movl	(%r15), %ebx
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movl	(%rax), %r13d
	jmp	LBB0_87
LBB0_90:
	testl	%ecx, %ecx
	jne	LBB0_159
## %bb.91:
	movl	(%r15), %ebx
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movl	(%rax), %r13d
	jmp	LBB0_92
LBB0_95:
	testl	%ecx, %ecx
	jne	LBB0_159
## %bb.96:
	movl	(%r15), %ebx
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movl	(%rax), %r13d
LBB0_97:
	movq	%r12, %rdi
	callq	_r_step5c
	movl	%eax, %ecx
	shrl	$31, %ecx
	testl	%eax, %eax
	cmovnsl	%r14d, %eax
	movl	$22, %edx
	cmovnel	%ecx, %edx
	cmovnel	%eax, %r14d
	cmpl	$22, %edx
	je	LBB0_99
## %bb.98:
	testl	%edx, %edx
	jne	LBB0_100
LBB0_99:
	movl	%r13d, %eax
	subl	%ebx, %eax
	movl	(%r15), %ebx
	addl	%ebx, %eax
	movl	%eax, %r13d
	movq	-48(%rbp), %rcx                 ## 8-byte Reload
	movl	%eax, (%rcx)
	jmp	LBB0_102
LBB0_100:
	testl	%ecx, %ecx
	jne	LBB0_159
## %bb.101:
	movl	(%r15), %ebx
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movl	(%rax), %r13d
LBB0_102:
	movq	%r12, %rdi
	callq	_r_step5d
	movl	%eax, %ecx
	shrl	$31, %ecx
	testl	%eax, %eax
	cmovnsl	%r14d, %eax
	movl	$23, %edx
	cmovnel	%ecx, %edx
	cmovnel	%eax, %r14d
	cmpl	$23, %edx
	je	LBB0_104
## %bb.103:
	testl	%edx, %edx
	jne	LBB0_105
LBB0_104:
	movl	%r13d, %eax
	subl	%ebx, %eax
	movl	(%r15), %ebx
	addl	%ebx, %eax
	movl	%eax, %r13d
	movq	-48(%rbp), %rcx                 ## 8-byte Reload
	movl	%eax, (%rcx)
LBB0_107:
	movq	%r12, %rdi
	callq	_r_step5e
	movl	%eax, %ecx
	shrl	$31, %ecx
	testl	%eax, %eax
	cmovnsl	%r14d, %eax
	movl	$24, %edx
	cmovnel	%ecx, %edx
	cmovnel	%eax, %r14d
	cmpl	$24, %edx
	je	LBB0_109
## %bb.108:
	testl	%edx, %edx
	jne	LBB0_110
LBB0_109:
	movl	%r13d, %eax
	subl	%ebx, %eax
	movl	(%r15), %ebx
	addl	%ebx, %eax
	movl	%eax, %r13d
	movq	-48(%rbp), %rcx                 ## 8-byte Reload
	movl	%eax, (%rcx)
	jmp	LBB0_112
LBB0_105:
	testl	%ecx, %ecx
	jne	LBB0_159
## %bb.106:
	movl	(%r15), %ebx
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movl	(%rax), %r13d
	jmp	LBB0_107
LBB0_110:
	testl	%ecx, %ecx
	jne	LBB0_159
## %bb.111:
	movl	(%r15), %ebx
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movl	(%rax), %r13d
LBB0_112:
	movq	%r12, %rdi
	callq	_r_step5f
	movl	%eax, %ecx
	shrl	$31, %ecx
	testl	%eax, %eax
	cmovnsl	%r14d, %eax
	movl	$25, %edx
	cmovnel	%ecx, %edx
	cmovnel	%eax, %r14d
	cmpl	$25, %edx
	je	LBB0_114
## %bb.113:
	testl	%edx, %edx
	jne	LBB0_115
LBB0_114:
	movl	%r13d, %eax
	subl	%ebx, %eax
	movl	(%r15), %ebx
	addl	%ebx, %eax
	movl	%eax, %r13d
	movq	-48(%rbp), %rcx                 ## 8-byte Reload
	movl	%eax, (%rcx)
	jmp	LBB0_117
LBB0_115:
	testl	%ecx, %ecx
	jne	LBB0_159
## %bb.116:
	movl	(%r15), %ebx
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movl	(%rax), %r13d
LBB0_117:
	movq	%r12, %rdi
	callq	_r_step5g
	movl	%eax, %ecx
	shrl	$31, %ecx
	testl	%eax, %eax
	cmovnsl	%r14d, %eax
	movl	$26, %edx
	cmovnel	%ecx, %edx
	cmovnel	%eax, %r14d
	cmpl	$26, %edx
	je	LBB0_119
## %bb.118:
	testl	%edx, %edx
	jne	LBB0_120
LBB0_119:
	movl	%r13d, %eax
	subl	%ebx, %eax
	movl	(%r15), %ebx
	addl	%ebx, %eax
	movl	%eax, %r13d
	movq	-48(%rbp), %rcx                 ## 8-byte Reload
	movl	%eax, (%rcx)
LBB0_122:
	movq	%r12, %rdi
	callq	_r_step5h
	movl	%eax, %ecx
	shrl	$31, %ecx
	testl	%eax, %eax
	cmovnsl	%r14d, %eax
	movl	$27, %edx
	cmovnel	%ecx, %edx
	cmovnel	%eax, %r14d
	cmpl	$27, %edx
	je	LBB0_124
## %bb.123:
	testl	%edx, %edx
	jne	LBB0_125
LBB0_124:
	movl	%r13d, %eax
	subl	%ebx, %eax
	movl	(%r15), %ebx
	addl	%ebx, %eax
	movl	%eax, %r13d
	movq	-48(%rbp), %rcx                 ## 8-byte Reload
	movl	%eax, (%rcx)
	jmp	LBB0_127
LBB0_120:
	testl	%ecx, %ecx
	jne	LBB0_159
## %bb.121:
	movl	(%r15), %ebx
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movl	(%rax), %r13d
	jmp	LBB0_122
LBB0_125:
	testl	%ecx, %ecx
	jne	LBB0_159
## %bb.126:
	movl	(%r15), %ebx
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movl	(%rax), %r13d
LBB0_127:
	movq	%r12, %rdi
	callq	_r_step5j
	movl	%eax, %ecx
	shrl	$31, %ecx
	testl	%eax, %eax
	cmovnsl	%r14d, %eax
	movl	$28, %edx
	cmovnel	%ecx, %edx
	cmovnel	%eax, %r14d
	cmpl	$28, %edx
	je	LBB0_129
## %bb.128:
	testl	%edx, %edx
	jne	LBB0_130
LBB0_129:
	movl	%r13d, %eax
	subl	%ebx, %eax
	movl	(%r15), %ebx
	addl	%ebx, %eax
	movl	%eax, %r13d
	movq	-48(%rbp), %rcx                 ## 8-byte Reload
	movl	%eax, (%rcx)
LBB0_132:
	movq	%r12, %rdi
	callq	_r_step5i
	movl	%eax, %ecx
	shrl	$31, %ecx
	testl	%eax, %eax
	cmovnsl	%r14d, %eax
	movl	$29, %edx
	cmovnel	%ecx, %edx
	cmovnel	%eax, %r14d
	cmpl	$29, %edx
	je	LBB0_134
## %bb.133:
	testl	%edx, %edx
	jne	LBB0_135
LBB0_134:
	movl	%r13d, %eax
	subl	%ebx, %eax
	movl	(%r15), %ebx
	addl	%ebx, %eax
	movl	%eax, %r13d
	movq	-48(%rbp), %rcx                 ## 8-byte Reload
	movl	%eax, (%rcx)
LBB0_137:
	movq	%r12, %rdi
	callq	_r_step5k
	movl	%eax, %ecx
	shrl	$31, %ecx
	testl	%eax, %eax
	cmovnsl	%r14d, %eax
	movl	$30, %edx
	cmovnel	%ecx, %edx
	cmovnel	%eax, %r14d
	cmpl	$30, %edx
	je	LBB0_139
## %bb.138:
	testl	%edx, %edx
	jne	LBB0_140
LBB0_139:
	movl	%r13d, %eax
	subl	%ebx, %eax
	movl	(%r15), %ebx
	addl	%ebx, %eax
	movl	%eax, %r13d
	movq	-48(%rbp), %rcx                 ## 8-byte Reload
	movl	%eax, (%rcx)
LBB0_142:
	movq	%r12, %rdi
	callq	_r_step5l
	movl	%eax, %ecx
	shrl	$31, %ecx
	testl	%eax, %eax
	cmovnsl	%r14d, %eax
	movl	$31, %edx
	cmovnel	%ecx, %edx
	cmovnel	%eax, %r14d
	cmpl	$31, %edx
	je	LBB0_144
## %bb.143:
	testl	%edx, %edx
	jne	LBB0_145
LBB0_144:
	movl	%r13d, %eax
	subl	%ebx, %eax
	movl	(%r15), %ebx
	addl	%ebx, %eax
	movl	%eax, %r13d
	movq	-48(%rbp), %rcx                 ## 8-byte Reload
	movl	%eax, (%rcx)
	jmp	LBB0_147
LBB0_130:
	testl	%ecx, %ecx
	jne	LBB0_159
## %bb.131:
	movl	(%r15), %ebx
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movl	(%rax), %r13d
	jmp	LBB0_132
LBB0_135:
	testl	%ecx, %ecx
	jne	LBB0_159
## %bb.136:
	movl	(%r15), %ebx
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movl	(%rax), %r13d
	jmp	LBB0_137
LBB0_140:
	testl	%ecx, %ecx
	jne	LBB0_159
## %bb.141:
	movl	(%r15), %ebx
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movl	(%rax), %r13d
	jmp	LBB0_142
LBB0_145:
	testl	%ecx, %ecx
	jne	LBB0_159
## %bb.146:
	movl	(%r15), %ebx
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movl	(%rax), %r13d
LBB0_147:
	movq	%r12, %rdi
	callq	_r_step5m
	movl	%eax, %ecx
	shrl	$31, %ecx
	testl	%eax, %eax
	cmovnsl	%r14d, %eax
	movl	$32, %edx
	cmovnel	%ecx, %edx
	cmovnel	%eax, %r14d
	testb	$1, %dl
	jne	LBB0_149
## %bb.148:
	movl	%r13d, %eax
	subl	%ebx, %eax
	movl	(%r15), %ebx
	addl	%ebx, %eax
	movl	%eax, %r13d
	movq	-48(%rbp), %rcx                 ## 8-byte Reload
	movl	%eax, (%rcx)
	jmp	LBB0_151
LBB0_149:
	testl	%ecx, %ecx
	jne	LBB0_159
## %bb.150:
	movl	(%r15), %ebx
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movl	(%rax), %r13d
LBB0_151:
	movq	%r12, %rdi
	callq	_r_step6
	movl	%eax, %ecx
	shrl	$31, %ecx
	testl	%eax, %eax
	cmovnsl	%r14d, %eax
	movl	$33, %edx
	cmovnel	%ecx, %edx
	cmovnel	%eax, %r14d
	cmpl	$33, %edx
	je	LBB0_153
## %bb.152:
	testl	%edx, %edx
	jne	LBB0_154
LBB0_153:
	subl	%ebx, %r13d
	addl	(%r15), %r13d
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movl	%r13d, (%rax)
LBB0_155:
	movq	%r12, %rdi
	callq	_r_step7
	movl	%eax, %ecx
	shrl	$31, %ecx
	testl	%eax, %eax
	movl	$34, %edx
	cmovnel	%ecx, %edx
	testl	%edx, %edx
	je	LBB0_158
## %bb.156:
	cmpl	$34, %edx
	je	LBB0_158
## %bb.157:
	testl	%eax, %eax
	cmovnsl	%r14d, %eax
	cmovnel	%eax, %r14d
	testl	%ecx, %ecx
	jne	LBB0_159
LBB0_158:
	movq	-56(%rbp), %rcx                 ## 8-byte Reload
	movl	(%rcx), %eax
	movl	%eax, 4(%rcx)
	movl	$1, %r14d
LBB0_159:
	movl	%r14d, %eax
	addq	$24, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
LBB0_154:
	testl	%ecx, %ecx
	je	LBB0_155
	jmp	LBB0_159
	.cfi_endproc
                                        ## -- End function
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_greek_UTF_8_stem               ; -- Begin function greek_UTF_8_stem
	.p2align	2
_greek_UTF_8_stem:                      ; @greek_UTF_8_stem
	.cfi_startproc
; %bb.0:
	stp	x26, x25, [sp, #-80]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 80
	stp	x24, x23, [sp, #16]             ; 16-byte Folded Spill
	stp	x22, x21, [sp, #32]             ; 16-byte Folded Spill
	stp	x20, x19, [sp, #48]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #64]             ; 16-byte Folded Spill
	add	x29, sp, #64
	.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
	.cfi_offset w23, -56
	.cfi_offset w24, -64
	.cfi_offset w25, -72
	.cfi_offset w26, -80
	mov	x19, x0
	mov	x21, x0
	ldr	d0, [x21, #4]!
	add	x22, x0, #8
	str	d0, [x0]
	bl	_r_tolower
	mov	x20, x0
	lsr	w8, w0, #31
	mov	w9, #2
	cmp	w0, #0
	csel	w9, w9, w8, eq
	orr	w9, w9, #0x2
	cmp	w9, #2
	b.ne	LBB0_2
; %bb.1:
	ldr	w8, [x22]
	str	w8, [x21]
	b	LBB0_3
LBB0_2:
	cbnz	w8, LBB0_158
LBB0_3:
	mov	x0, x19
	bl	_r_has_min_length
	cmp	w0, #1
	b.lt	LBB0_18
; %bb.4:
	ldr	x8, [x19, #16]
	mov	w9, #1
	str	w9, [x8]
	ldp	w25, w23, [x19, #4]
	mov	x0, x19
	bl	_r_step1
	lsr	w8, w0, #31
	cmp	w0, #0
	csel	w10, w0, w20, lt
	mov	w9, #3
	csel	w9, w9, w8, eq
	csel	w20, w20, w10, eq
	cmp	w9, #3
	b.eq	LBB0_6
; %bb.5:
	cbnz	w9, LBB0_19
LBB0_6:
	ldr	w24, [x22]
	sub	w8, w25, w23
	add	w25, w8, w24
	str	w25, [x21]
LBB0_7:
	mov	x0, x19
	bl	_r_steps1
	lsr	w8, w0, #31
	cmp	w0, #0
	csel	w9, w0, w20, lt
	mov	w10, #4
	csel	w10, w10, w8, eq
	csel	w20, w20, w9, eq
	orr	w9, w10, #0x4
	cmp	w9, #4
	b.ne	LBB0_21
; %bb.8:
	ldr	w23, [x22]
	sub	w8, w25, w24
	add	w25, w8, w23
	str	w25, [x21]
LBB0_9:
	mov	x0, x19
	bl	_r_steps2
	lsr	w8, w0, #31
	cmp	w0, #0
	csel	w10, w0, w20, lt
	mov	w9, #5
	csel	w9, w9, w8, eq
	csel	w20, w20, w10, eq
	cmp	w9, #5
	b.eq	LBB0_11
; %bb.10:
	cbnz	w9, LBB0_23
LBB0_11:
	ldr	w24, [x22]
	sub	w8, w25, w23
	add	w25, w8, w24
	str	w25, [x21]
LBB0_12:
	mov	x0, x19
	bl	_r_steps3
	lsr	w8, w0, #31
	cmp	w0, #0
	csel	w10, w0, w20, lt
	mov	w9, #6
	csel	w9, w9, w8, eq
	csel	w20, w20, w10, eq
	cmp	w9, #6
	b.eq	LBB0_14
; %bb.13:
	cbnz	w9, LBB0_25
LBB0_14:
	ldr	w23, [x22]
	sub	w8, w25, w24
	add	w25, w8, w23
	str	w25, [x21]
LBB0_15:
	mov	x0, x19
	bl	_r_steps4
	lsr	w8, w0, #31
	cmp	w0, #0
	csel	w10, w0, w20, lt
	mov	w9, #7
	csel	w9, w9, w8, eq
	csel	w20, w20, w10, eq
	cmp	w9, #7
	b.eq	LBB0_17
; %bb.16:
	cbnz	w9, LBB0_27
LBB0_17:
	ldr	w24, [x22]
	sub	w8, w25, w23
	add	w25, w8, w24
	str	w25, [x21]
	b	LBB0_29
LBB0_18:
	mov	x20, x0
	b	LBB0_158
LBB0_19:
	cbnz	w8, LBB0_158
; %bb.20:
	ldr	w24, [x22]
	ldr	w25, [x21]
	b	LBB0_7
LBB0_21:
	cbnz	w8, LBB0_158
; %bb.22:
	ldr	w23, [x22]
	ldr	w25, [x21]
	b	LBB0_9
LBB0_23:
	cbnz	w8, LBB0_158
; %bb.24:
	ldr	w24, [x22]
	ldr	w25, [x21]
	b	LBB0_12
LBB0_25:
	cbnz	w8, LBB0_158
; %bb.26:
	ldr	w23, [x22]
	ldr	w25, [x21]
	b	LBB0_15
LBB0_27:
	cbnz	w8, LBB0_158
; %bb.28:
	ldr	w24, [x22]
	ldr	w25, [x21]
LBB0_29:
	mov	x0, x19
	bl	_r_steps5
	lsr	w8, w0, #31
	cmp	w0, #0
	csel	w9, w0, w20, lt
	mov	w10, #8
	csel	w10, w10, w8, eq
	csel	w20, w20, w9, eq
	orr	w9, w10, #0x8
	cmp	w9, #8
	b.ne	LBB0_34
; %bb.30:
	ldr	w23, [x22]
	sub	w8, w25, w24
	add	w25, w8, w23
	str	w25, [x21]
LBB0_31:
	mov	x0, x19
	bl	_r_steps6
	lsr	w8, w0, #31
	cmp	w0, #0
	csel	w10, w0, w20, lt
	mov	w9, #9
	csel	w9, w9, w8, eq
	csel	w20, w20, w10, eq
	cmp	w9, #9
	b.eq	LBB0_33
; %bb.32:
	cbnz	w9, LBB0_36
LBB0_33:
	ldr	w24, [x22]
	sub	w8, w25, w23
	add	w25, w8, w24
	str	w25, [x21]
	b	LBB0_38
LBB0_34:
	cbnz	w8, LBB0_158
; %bb.35:
	ldr	w23, [x22]
	ldr	w25, [x21]
	b	LBB0_31
LBB0_36:
	cbnz	w8, LBB0_158
; %bb.37:
	ldr	w24, [x22]
	ldr	w25, [x21]
LBB0_38:
	mov	x0, x19
	bl	_r_steps7
	lsr	w8, w0, #31
	cmp	w0, #0
	csel	w10, w0, w20, lt
	mov	w9, #10
	csel	w9, w9, w8, eq
	csel	w20, w20, w10, eq
	cmp	w9, #10
	b.eq	LBB0_40
; %bb.39:
	cbnz	w9, LBB0_44
LBB0_40:
	ldr	w23, [x22]
	sub	w8, w25, w24
	add	w25, w8, w23
	str	w25, [x21]
LBB0_41:
	mov	x0, x19
	bl	_r_steps8
	lsr	w8, w0, #31
	cmp	w0, #0
	csel	w10, w0, w20, lt
	mov	w9, #11
	csel	w9, w9, w8, eq
	csel	w20, w20, w10, eq
	cmp	w9, #11
	b.eq	LBB0_43
; %bb.42:
	cbnz	w9, LBB0_46
LBB0_43:
	ldr	w24, [x22]
	sub	w8, w25, w23
	add	w25, w8, w24
	str	w25, [x21]
	b	LBB0_48
LBB0_44:
	cbnz	w8, LBB0_158
; %bb.45:
	ldr	w23, [x22]
	ldr	w25, [x21]
	b	LBB0_41
LBB0_46:
	cbnz	w8, LBB0_158
; %bb.47:
	ldr	w24, [x22]
	ldr	w25, [x21]
LBB0_48:
	mov	x0, x19
	bl	_r_steps9
	lsr	w8, w0, #31
	cmp	w0, #0
	csel	w10, w0, w20, lt
	mov	w9, #12
	csel	w9, w9, w8, eq
	csel	w20, w20, w10, eq
	cmp	w9, #12
	b.eq	LBB0_50
; %bb.49:
	cbnz	w9, LBB0_60
LBB0_50:
	ldr	w23, [x22]
	sub	w8, w25, w24
	add	w25, w8, w23
	str	w25, [x21]
LBB0_51:
	mov	x0, x19
	bl	_r_steps10
	lsr	w8, w0, #31
	cmp	w0, #0
	csel	w10, w0, w20, lt
	mov	w9, #13
	csel	w9, w9, w8, eq
	csel	w20, w20, w10, eq
	cmp	w9, #13
	b.eq	LBB0_53
; %bb.52:
	cbnz	w9, LBB0_62
LBB0_53:
	ldr	w24, [x22]
	sub	w8, w25, w23
	add	w25, w8, w24
	str	w25, [x21]
LBB0_54:
	mov	x0, x19
	bl	_r_step2a
	lsr	w8, w0, #31
	cmp	w0, #0
	csel	w10, w0, w20, lt
	mov	w9, #14
	csel	w9, w9, w8, eq
	csel	w20, w20, w10, eq
	cmp	w9, #14
	b.eq	LBB0_56
; %bb.55:
	cbnz	w9, LBB0_64
LBB0_56:
	ldr	w23, [x22]
	sub	w8, w25, w24
	add	w25, w8, w23
	str	w25, [x21]
LBB0_57:
	mov	x0, x19
	bl	_r_step2b
	lsr	w8, w0, #31
	cmp	w0, #0
	csel	w10, w0, w20, lt
	mov	w9, #15
	csel	w9, w9, w8, eq
	csel	w20, w20, w10, eq
	cmp	w9, #15
	b.eq	LBB0_59
; %bb.58:
	cbnz	w9, LBB0_66
LBB0_59:
	ldr	w24, [x22]
	sub	w8, w25, w23
	add	w25, w8, w24
	str	w25, [x21]
	b	LBB0_68
LBB0_60:
	cbnz	w8, LBB0_158
; %bb.61:
	ldr	w23, [x22]
	ldr	w25, [x21]
	b	LBB0_51
LBB0_62:
	cbnz	w8, LBB0_158
; %bb.63:
	ldr	w24, [x22]
	ldr	w25, [x21]
	b	LBB0_54
LBB0_64:
	cbnz	w8, LBB0_158
; %bb.65:
	ldr	w23, [x22]
	ldr	w25, [x21]
	b	LBB0_57
LBB0_66:
	cbnz	w8, LBB0_158
; %bb.67:
	ldr	w24, [x22]
	ldr	w25, [x21]
LBB0_68:
	mov	x0, x19
	bl	_r_step2c
	lsr	w8, w0, #31
	cmp	w0, #0
	csel	w9, w0, w20, lt
	mov	w10, #16
	csel	w10, w10, w8, eq
	csel	w20, w20, w9, eq
	orr	w9, w10, #0x10
	cmp	w9, #16
	b.ne	LBB0_73
; %bb.69:
	ldr	w23, [x22]
	sub	w8, w25, w24
	add	w25, w8, w23
	str	w25, [x21]
LBB0_70:
	mov	x0, x19
	bl	_r_step2d
	lsr	w8, w0, #31
	cmp	w0, #0
	csel	w10, w0, w20, lt
	mov	w9, #17
	csel	w9, w9, w8, eq
	csel	w20, w20, w10, eq
	cmp	w9, #17
	b.eq	LBB0_72
; %bb.71:
	cbnz	w9, LBB0_75
LBB0_72:
	ldr	w24, [x22]
	sub	w8, w25, w23
	add	w25, w8, w24
	str	w25, [x21]
	b	LBB0_77
LBB0_73:
	cbnz	w8, LBB0_158
; %bb.74:
	ldr	w23, [x22]
	ldr	w25, [x21]
	b	LBB0_70
LBB0_75:
	cbnz	w8, LBB0_158
; %bb.76:
	ldr	w24, [x22]
	ldr	w25, [x21]
LBB0_77:
	mov	x0, x19
	bl	_r_step3
	lsr	w8, w0, #31
	cmp	w0, #0
	csel	w10, w0, w20, lt
	mov	w9, #18
	csel	w9, w9, w8, eq
	csel	w20, w20, w10, eq
	cmp	w9, #18
	b.eq	LBB0_79
; %bb.78:
	cbnz	w9, LBB0_89
LBB0_79:
	ldr	w23, [x22]
	sub	w8, w25, w24
	add	w25, w8, w23
	str	w25, [x21]
LBB0_80:
	mov	x0, x19
	bl	_r_step4
	lsr	w8, w0, #31
	cmp	w0, #0
	csel	w10, w0, w20, lt
	mov	w9, #19
	csel	w9, w9, w8, eq
	csel	w20, w20, w10, eq
	cmp	w9, #19
	b.eq	LBB0_82
; %bb.81:
	cbnz	w9, LBB0_91
LBB0_82:
	ldr	w24, [x22]
	sub	w8, w25, w23
	add	w25, w8, w24
	str	w25, [x21]
LBB0_83:
	mov	x0, x19
	bl	_r_step5a
	lsr	w8, w0, #31
	cmp	w0, #0
	csel	w10, w0, w20, lt
	mov	w9, #20
	csel	w9, w9, w8, eq
	csel	w20, w20, w10, eq
	cmp	w9, #20
	b.eq	LBB0_85
; %bb.84:
	cbnz	w9, LBB0_93
LBB0_85:
	ldr	w23, [x22]
	sub	w8, w25, w24
	add	w25, w8, w23
	str	w25, [x21]
LBB0_86:
	mov	x0, x19
	bl	_r_step5b
	lsr	w8, w0, #31
	cmp	w0, #0
	csel	w10, w0, w20, lt
	mov	w9, #21
	csel	w9, w9, w8, eq
	csel	w20, w20, w10, eq
	cmp	w9, #21
	b.eq	LBB0_88
; %bb.87:
	cbnz	w9, LBB0_95
LBB0_88:
	ldr	w24, [x22]
	sub	w8, w25, w23
	add	w25, w8, w24
	str	w25, [x21]
	b	LBB0_97
LBB0_89:
	cbnz	w8, LBB0_158
; %bb.90:
	ldr	w23, [x22]
	ldr	w25, [x21]
	b	LBB0_80
LBB0_91:
	cbnz	w8, LBB0_158
; %bb.92:
	ldr	w24, [x22]
	ldr	w25, [x21]
	b	LBB0_83
LBB0_93:
	cbnz	w8, LBB0_158
; %bb.94:
	ldr	w23, [x22]
	ldr	w25, [x21]
	b	LBB0_86
LBB0_95:
	cbnz	w8, LBB0_158
; %bb.96:
	ldr	w24, [x22]
	ldr	w25, [x21]
LBB0_97:
	mov	x0, x19
	bl	_r_step5c
	lsr	w8, w0, #31
	cmp	w0, #0
	csel	w10, w0, w20, lt
	mov	w9, #22
	csel	w9, w9, w8, eq
	csel	w20, w20, w10, eq
	cmp	w9, #22
	b.eq	LBB0_99
; %bb.98:
	cbnz	w9, LBB0_100
LBB0_99:
	ldr	w23, [x22]
	sub	w8, w25, w24
	add	w25, w8, w23
	str	w25, [x21]
	b	LBB0_102
LBB0_100:
	cbnz	w8, LBB0_158
; %bb.101:
	ldr	w23, [x22]
	ldr	w25, [x21]
LBB0_102:
	mov	x0, x19
	bl	_r_step5d
	lsr	w8, w0, #31
	cmp	w0, #0
	csel	w10, w0, w20, lt
	mov	w9, #23
	csel	w9, w9, w8, eq
	csel	w20, w20, w10, eq
	cmp	w9, #23
	b.eq	LBB0_104
; %bb.103:
	cbnz	w9, LBB0_108
LBB0_104:
	ldr	w24, [x22]
	sub	w8, w25, w23
	add	w25, w8, w24
	str	w25, [x21]
LBB0_105:
	mov	x0, x19
	bl	_r_step5e
	lsr	w8, w0, #31
	cmp	w0, #0
	csel	w10, w0, w20, lt
	mov	w9, #24
	csel	w9, w9, w8, eq
	csel	w20, w20, w10, eq
	cmp	w9, #24
	b.eq	LBB0_107
; %bb.106:
	cbnz	w9, LBB0_110
LBB0_107:
	ldr	w23, [x22]
	sub	w8, w25, w24
	add	w25, w8, w23
	str	w25, [x21]
	b	LBB0_112
LBB0_108:
	cbnz	w8, LBB0_158
; %bb.109:
	ldr	w24, [x22]
	ldr	w25, [x21]
	b	LBB0_105
LBB0_110:
	cbnz	w8, LBB0_158
; %bb.111:
	ldr	w23, [x22]
	ldr	w25, [x21]
LBB0_112:
	mov	x0, x19
	bl	_r_step5f
	lsr	w8, w0, #31
	cmp	w0, #0
	csel	w10, w0, w20, lt
	mov	w9, #25
	csel	w9, w9, w8, eq
	csel	w20, w20, w10, eq
	cmp	w9, #25
	b.eq	LBB0_114
; %bb.113:
	cbnz	w9, LBB0_115
LBB0_114:
	ldr	w24, [x22]
	sub	w8, w25, w23
	add	w25, w8, w24
	str	w25, [x21]
	b	LBB0_117
LBB0_115:
	cbnz	w8, LBB0_158
; %bb.116:
	ldr	w24, [x22]
	ldr	w25, [x21]
LBB0_117:
	mov	x0, x19
	bl	_r_step5g
	lsr	w8, w0, #31
	cmp	w0, #0
	csel	w10, w0, w20, lt
	mov	w9, #26
	csel	w9, w9, w8, eq
	csel	w20, w20, w10, eq
	cmp	w9, #26
	b.eq	LBB0_119
; %bb.118:
	cbnz	w9, LBB0_123
LBB0_119:
	ldr	w23, [x22]
	sub	w8, w25, w24
	add	w25, w8, w23
	str	w25, [x21]
LBB0_120:
	mov	x0, x19
	bl	_r_step5h
	lsr	w8, w0, #31
	cmp	w0, #0
	csel	w10, w0, w20, lt
	mov	w9, #27
	csel	w9, w9, w8, eq
	csel	w20, w20, w10, eq
	cmp	w9, #27
	b.eq	LBB0_122
; %bb.121:
	cbnz	w9, LBB0_125
LBB0_122:
	ldr	w24, [x22]
	sub	w8, w25, w23
	add	w25, w8, w24
	str	w25, [x21]
	b	LBB0_127
LBB0_123:
	cbnz	w8, LBB0_158
; %bb.124:
	ldr	w23, [x22]
	ldr	w25, [x21]
	b	LBB0_120
LBB0_125:
	cbnz	w8, LBB0_158
; %bb.126:
	ldr	w24, [x22]
	ldr	w25, [x21]
LBB0_127:
	mov	x0, x19
	bl	_r_step5j
	lsr	w8, w0, #31
	cmp	w0, #0
	csel	w10, w0, w20, lt
	mov	w9, #28
	csel	w9, w9, w8, eq
	csel	w20, w20, w10, eq
	cmp	w9, #28
	b.eq	LBB0_129
; %bb.128:
	cbnz	w9, LBB0_139
LBB0_129:
	ldr	w23, [x22]
	sub	w8, w25, w24
	add	w25, w8, w23
	str	w25, [x21]
LBB0_130:
	mov	x0, x19
	bl	_r_step5i
	lsr	w8, w0, #31
	cmp	w0, #0
	csel	w10, w0, w20, lt
	mov	w9, #29
	csel	w9, w9, w8, eq
	csel	w20, w20, w10, eq
	cmp	w9, #29
	b.eq	LBB0_132
; %bb.131:
	cbnz	w9, LBB0_141
LBB0_132:
	ldr	w24, [x22]
	sub	w8, w25, w23
	add	w25, w8, w24
	str	w25, [x21]
LBB0_133:
	mov	x0, x19
	bl	_r_step5k
	lsr	w8, w0, #31
	cmp	w0, #0
	csel	w10, w0, w20, lt
	mov	w9, #30
	csel	w9, w9, w8, eq
	csel	w20, w20, w10, eq
	cmp	w9, #30
	b.eq	LBB0_135
; %bb.134:
	cbnz	w9, LBB0_143
LBB0_135:
	ldr	w23, [x22]
	sub	w8, w25, w24
	add	w25, w8, w23
	str	w25, [x21]
LBB0_136:
	mov	x0, x19
	bl	_r_step5l
	lsr	w8, w0, #31
	cmp	w0, #0
	csel	w10, w0, w20, lt
	mov	w9, #31
	csel	w9, w9, w8, eq
	csel	w20, w20, w10, eq
	cmp	w9, #31
	b.eq	LBB0_138
; %bb.137:
	cbnz	w9, LBB0_145
LBB0_138:
	ldr	w24, [x22]
	sub	w8, w25, w23
	add	w25, w8, w24
	str	w25, [x21]
	b	LBB0_147
LBB0_139:
	cbnz	w8, LBB0_158
; %bb.140:
	ldr	w23, [x22]
	ldr	w25, [x21]
	b	LBB0_130
LBB0_141:
	cbnz	w8, LBB0_158
; %bb.142:
	ldr	w24, [x22]
	ldr	w25, [x21]
	b	LBB0_133
LBB0_143:
	cbnz	w8, LBB0_158
; %bb.144:
	ldr	w23, [x22]
	ldr	w25, [x21]
	b	LBB0_136
LBB0_145:
	cbnz	w8, LBB0_158
; %bb.146:
	ldr	w24, [x22]
	ldr	w25, [x21]
LBB0_147:
	mov	x0, x19
	bl	_r_step5m
	lsr	w8, w0, #31
	cmp	w0, #0
	csel	w9, w0, w20, lt
	mov	w10, #32
	csel	w10, w10, w8, eq
	csel	w20, w20, w9, eq
	orr	w9, w10, #0x20
	cmp	w9, #32
	b.ne	LBB0_149
; %bb.148:
	ldr	w23, [x22]
	sub	w8, w25, w24
	add	w24, w8, w23
	str	w24, [x21]
	b	LBB0_151
LBB0_149:
	cbnz	w8, LBB0_158
; %bb.150:
	ldr	w23, [x22]
	ldr	w24, [x21]
LBB0_151:
	mov	x0, x19
	bl	_r_step6
	lsr	w8, w0, #31
	cmp	w0, #0
	csel	w10, w0, w20, lt
	mov	w9, #33
	csel	w9, w9, w8, eq
	csel	w20, w20, w10, eq
	cmp	w9, #33
	b.eq	LBB0_153
; %bb.152:
	cbnz	w9, LBB0_159
LBB0_153:
	ldr	w8, [x22]
	sub	w9, w24, w23
	add	w8, w9, w8
	str	w8, [x21]
LBB0_154:
	mov	x0, x19
	bl	_r_step7
	lsr	w8, w0, #31
	mov	w9, #34
	cmp	w0, #0
	csel	w9, w9, w8, eq
	cbz	w9, LBB0_157
; %bb.155:
	cmp	w9, #34
	b.eq	LBB0_157
; %bb.156:
	cmp	w0, #0
	csel	w9, w0, w20, lt
	csel	w20, w20, w9, eq
	cbnz	w8, LBB0_158
LBB0_157:
	ldr	w8, [x19]
	str	w8, [x19, #4]
	mov	w20, #1
LBB0_158:
	mov	x0, x20
	ldp	x29, x30, [sp, #64]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #48]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #32]             ; 16-byte Folded Reload
	ldp	x24, x23, [sp, #16]             ; 16-byte Folded Reload
	ldp	x26, x25, [sp], #80             ; 16-byte Folded Reload
	ret
LBB0_159:
	cbz	w8, LBB0_154
	b	LBB0_158
	.cfi_endproc
                                        ; -- End function
.subsections_via_symbols
