.text

	.globl	ap_2
	.globl	ap_3
	.globl	ap_4
	.globl	ap_5
	.globl	ap_6
	.globl	ap_7
	.globl	ap_8
	.globl	ap_9
	.globl	ap_10
	.globl	ap_11
	.globl	ap_12
	.globl	ap_13
	.globl	ap_14
	.globl	ap_15
	.globl	ap_16
	.globl	ap_17
	.globl	ap_18
	.globl	ap_19
	.globl	ap_20
	.globl	ap_21
	.globl	ap_22
	.globl	ap_23
	.globl	ap_24
	.globl	ap_25
	.globl	ap_26
	.globl	ap_27
	.globl	ap_28
	.globl	ap_29
	.globl	ap_30
	.globl	ap_31
	.globl	ap_32

	.globl	add_empty_node_2
	.globl	add_empty_node_3
	.globl	add_empty_node_4
	.globl	add_empty_node_5
	.globl	add_empty_node_6
	.globl	add_empty_node_7
	.globl	add_empty_node_8
	.globl	add_empty_node_9
	.globl	add_empty_node_10
	.globl	add_empty_node_11
	.globl	add_empty_node_12
	.globl	add_empty_node_13
	.globl	add_empty_node_14
	.globl	add_empty_node_15
	.globl	add_empty_node_16
	.globl	add_empty_node_17
	.globl	add_empty_node_18
	.globl	add_empty_node_19
	.globl	add_empty_node_20
	.globl	add_empty_node_21
	.globl	add_empty_node_22
	.globl	add_empty_node_23
	.globl	add_empty_node_24
	.globl	add_empty_node_25
	.globl	add_empty_node_26
	.globl	add_empty_node_27
	.globl	add_empty_node_28
	.globl	add_empty_node_29
	.globl	add_empty_node_30
	.globl	add_empty_node_31
	.globl	add_empty_node_32

	.globl	yet_args_needed
	.globl	yet_args_needed_0
	.globl	yet_args_needed_1
	.globl	yet_args_needed_2
	.globl	yet_args_needed_3
	.globl	yet_args_needed_4
	.globl	yet_args_needed_5
	.globl	yet_args_needed_6
	.globl	yet_args_needed_7
	.globl	yet_args_needed_8
	.globl	yet_args_needed_9
	.globl	yet_args_needed_10
	.globl	yet_args_needed_11
	.globl	yet_args_needed_12
	.globl	yet_args_needed_13
	.globl	yet_args_needed_14
	.globl	yet_args_needed_15
	.globl	yet_args_needed_16
	.globl	yet_args_needed_17
	.globl	yet_args_needed_18
	.globl	yet_args_needed_19
	.globl	yet_args_needed_20
	.globl	yet_args_needed_21
	.globl	yet_args_needed_22
	.globl	yet_args_needed_23
	.globl	yet_args_needed_24
	.globl	yet_args_needed_25
	.globl	yet_args_needed_26
	.globl	yet_args_needed_27
	.globl	yet_args_needed_28
	.globl	yet_args_needed_29
	.globl	yet_args_needed_30
	.globl	yet_args_needed_31

ap_32:
	ldr	ASTACK_3,[ASTACK_2]
	mov	BSTACK_1,#32*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap

	str	ASTACK_0,[ASTACK_PTR],#4
	mov	ASTACK_0,ASTACK_1
	mov	ASTACK_1,ASTACK_2
	b	no_fast_ap32

ap_31:
	ldr	ASTACK_3,[ASTACK_2]
	mov	BSTACK_1,#31*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap

	str	ASTACK_0,[ASTACK_PTR],#4
	mov	ASTACK_0,ASTACK_1
	mov	ASTACK_1,ASTACK_2
	b	no_fast_ap31

ap_30:
	ldr	ASTACK_3,[ASTACK_2]
	mov	BSTACK_1,#30*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap

	str	ASTACK_0,[ASTACK_PTR],#4
	mov	ASTACK_0,ASTACK_1
	mov	ASTACK_1,ASTACK_2
	b	no_fast_ap30

ap_29:
	ldr	ASTACK_3,[ASTACK_2]
	mov	BSTACK_1,#29*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap

	str	ASTACK_0,[ASTACK_PTR],#4
	mov	ASTACK_0,ASTACK_1
	mov	ASTACK_1,ASTACK_2
	b	no_fast_ap29

ap_28:
	ldr	ASTACK_3,[ASTACK_2]
	mov	BSTACK_1,#28*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap

	str	ASTACK_0,[ASTACK_PTR],#4
	mov	ASTACK_0,ASTACK_1
	mov	ASTACK_1,ASTACK_2
	b	no_fast_ap28

ap_27:
	ldr	ASTACK_3,[ASTACK_2]
	mov	BSTACK_1,#27*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap

	str	ASTACK_0,[ASTACK_PTR],#4
	mov	ASTACK_0,ASTACK_1
	mov	ASTACK_1,ASTACK_2
	b	no_fast_ap27

ap_26:
	ldr	ASTACK_3,[ASTACK_2]
	mov	BSTACK_1,#26*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap

	str	ASTACK_0,[ASTACK_PTR],#4
	mov	ASTACK_0,ASTACK_1
	mov	ASTACK_1,ASTACK_2
	b	no_fast_ap26

ap_25:
	ldr	ASTACK_3,[ASTACK_2]
	mov	BSTACK_1,#25*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap

	str	ASTACK_0,[ASTACK_PTR],#4
	mov	ASTACK_0,ASTACK_1
	mov	ASTACK_1,ASTACK_2
	b	no_fast_ap25

ap_24:
	ldr	ASTACK_3,[ASTACK_2]
	mov	BSTACK_1,#24*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap

	str	ASTACK_0,[ASTACK_PTR],#4
	mov	ASTACK_0,ASTACK_1
	mov	ASTACK_1,ASTACK_2
	b	no_fast_ap24

ap_23:
	ldr	ASTACK_3,[ASTACK_2]
	mov	BSTACK_1,#23*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap

	str	ASTACK_0,[ASTACK_PTR],#4
	mov	ASTACK_0,ASTACK_1
	mov	ASTACK_1,ASTACK_2
	b	no_fast_ap23

ap_22:
	ldr	ASTACK_3,[ASTACK_2]
	mov	BSTACK_1,#22*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap

	str	ASTACK_0,[ASTACK_PTR],#4
	mov	ASTACK_0,ASTACK_1
	mov	ASTACK_1,ASTACK_2
	b	no_fast_ap22

ap_21:
	ldr	ASTACK_3,[ASTACK_2]
	mov	BSTACK_1,#21*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap

	str	ASTACK_0,[ASTACK_PTR],#4
	mov	ASTACK_0,ASTACK_1
	mov	ASTACK_1,ASTACK_2
	b	no_fast_ap21

ap_20:
	ldr	ASTACK_3,[ASTACK_2]
	mov	BSTACK_1,#20*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap

	str	ASTACK_0,[ASTACK_PTR],#4
	mov	ASTACK_0,ASTACK_1
	mov	ASTACK_1,ASTACK_2
	b	no_fast_ap20

ap_19:
	ldr	ASTACK_3,[ASTACK_2]
	mov	BSTACK_1,#19*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap

	str	ASTACK_0,[ASTACK_PTR],#4
	mov	ASTACK_0,ASTACK_1
	mov	ASTACK_1,ASTACK_2
	b	no_fast_ap19

ap_18:
	ldr	ASTACK_3,[ASTACK_2]
	mov	BSTACK_1,#18*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap

	str	ASTACK_0,[ASTACK_PTR],#4
	mov	ASTACK_0,ASTACK_1
	mov	ASTACK_1,ASTACK_2
	b	no_fast_ap18

ap_17:
	ldr	ASTACK_3,[ASTACK_2]
	mov	BSTACK_1,#17*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap

	str	ASTACK_0,[ASTACK_PTR],#4
	mov	ASTACK_0,ASTACK_1
	mov	ASTACK_1,ASTACK_2
	b	no_fast_ap17

ap_16:
	ldr	ASTACK_3,[ASTACK_2]
	mov	BSTACK_1,#16*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap

	str	ASTACK_0,[ASTACK_PTR],#4
	mov	ASTACK_0,ASTACK_1
	mov	ASTACK_1,ASTACK_2
	b	no_fast_ap16

ap_15:
	ldr	ASTACK_3,[ASTACK_2]
	mov	BSTACK_1,#15*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap

	str	ASTACK_0,[ASTACK_PTR],#4
	mov	ASTACK_0,ASTACK_1
	mov	ASTACK_1,ASTACK_2
	b	no_fast_ap15

ap_14:
	ldr	ASTACK_3,[ASTACK_2]
	mov	BSTACK_1,#14*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap

	str	ASTACK_0,[ASTACK_PTR],#4
	mov	ASTACK_0,ASTACK_1
	mov	ASTACK_1,ASTACK_2
	b	no_fast_ap14

ap_13:
	ldr	ASTACK_3,[ASTACK_2]
	mov	BSTACK_1,#13*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap

	str	ASTACK_0,[ASTACK_PTR],#4
	mov	ASTACK_0,ASTACK_1
	mov	ASTACK_1,ASTACK_2
	b	no_fast_ap13

ap_12:
	ldr	ASTACK_3,[ASTACK_2]
	mov	BSTACK_1,#12*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap

	str	ASTACK_0,[ASTACK_PTR],#4
	mov	ASTACK_0,ASTACK_1
	mov	ASTACK_1,ASTACK_2
	b	no_fast_ap12

ap_11:
	ldr	ASTACK_3,[ASTACK_2]
	mov	BSTACK_1,#11*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap

	str	ASTACK_0,[ASTACK_PTR],#4
	mov	ASTACK_0,ASTACK_1
	mov	ASTACK_1,ASTACK_2
	b	no_fast_ap11

ap_10:
	ldr	ASTACK_3,[ASTACK_2]
	mov	BSTACK_1,#10*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap

	str	ASTACK_0,[ASTACK_PTR],#4
	mov	ASTACK_0,ASTACK_1
	mov	ASTACK_1,ASTACK_2
	b	no_fast_ap10

ap_9:
	ldr	ASTACK_3,[ASTACK_2]
	mov	BSTACK_1,#9*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap

	str	ASTACK_0,[ASTACK_PTR],#4
	mov	ASTACK_0,ASTACK_1
	mov	ASTACK_1,ASTACK_2
	b	no_fast_ap9

ap_8:
	ldr	ASTACK_3,[ASTACK_2]
	mov	BSTACK_1,#8*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap

	str	ASTACK_0,[ASTACK_PTR],#4
	mov	ASTACK_0,ASTACK_1
	mov	ASTACK_1,ASTACK_2
	b	no_fast_ap8

ap_7:
	ldr	ASTACK_3,[ASTACK_2]
	mov	BSTACK_1,#7*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap

	str	ASTACK_0,[ASTACK_PTR],#4
	mov	ASTACK_0,ASTACK_1
	mov	ASTACK_1,ASTACK_2
	b	no_fast_ap7

ap_6:
	ldr	ASTACK_3,[ASTACK_2]
	mov	BSTACK_1,#6*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap

	str	ASTACK_0,[ASTACK_PTR],#4
	mov	ASTACK_0,ASTACK_1
	mov	ASTACK_1,ASTACK_2
	b	no_fast_ap6

ap_5:
	ldr	ASTACK_3,[ASTACK_2]
	mov	BSTACK_1,#5*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap

	str	ASTACK_0,[ASTACK_PTR],#4
	mov	ASTACK_0,ASTACK_1
	mov	ASTACK_1,ASTACK_2
	b	no_fast_ap5

ap_4:
	ldr	ASTACK_3,[ASTACK_2]
	mov	BSTACK_1,#4*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap

	str	ASTACK_0,[ASTACK_PTR],#4
	mov	ASTACK_0,ASTACK_1
	mov	ASTACK_1,ASTACK_2
	b	no_fast_ap4

ap_3:
	ldr	ASTACK_3,[ASTACK_2]
	mov	BSTACK_1,#3*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap

	str	ASTACK_0,[ASTACK_PTR],#4
	mov	ASTACK_0,ASTACK_1
	mov	ASTACK_1,ASTACK_2
	b	no_fast_ap3

ap_2:
	ldr	ASTACK_3,[ASTACK_2]
	mov	BSTACK_1,#2*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	bne	no_fast_ap2_

fast_ap_2_2_:
	add	BSTACK_1,BSTACK_1,ASTACK_3
	ldrh	BSTACK_0,[ASTACK_3,#-2]
	ldr	BSTACK_2,[BSTACK_1,#-6]
.ifdef PROFILE
	sub	BSTACK_2,BSTACK_2,#16
.else
	sub	BSTACK_2,BSTACK_2,#8
.endif
	cmp	BSTACK_0,#1
	blo	repl_args_0_2
	beq	repl_args_1

	cmp	BSTACK_0,#3
	blo	repl_args_2

	str	ASTACK_1,[ASTACK_PTR,#4]
	str	ASTACK_0,[ASTACK_PTR],#8

	ldr	ASTACK_1,[ASTACK_2,#8]

	b	fast_ap_

no_fast_ap2_:
	str	ASTACK_0,[ASTACK_PTR],#4
	mov	ASTACK_0,ASTACK_1
	mov	ASTACK_1,ASTACK_2
	b	no_fast_ap2

fast_ap_2_2:
	mov	ASTACK_2,ASTACK_1
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!
	b	fast_ap_2_2_

fast_ap_2:
	mov	ASTACK_2,ASTACK_1
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!

fast_ap:
	add	BSTACK_1,BSTACK_1,ASTACK_3
	ldrh	BSTACK_0,[ASTACK_3,#-2]
	ldr	BSTACK_2,[BSTACK_1,#-6]
.ifdef PROFILE
	sub	BSTACK_2,BSTACK_2,#16
.else
	sub	BSTACK_2,BSTACK_2,#8
.endif
	cmp	BSTACK_0,#1
	blo	repl_args_0
	beq	repl_args_1

	cmp	BSTACK_0,#3
	blo	repl_args_2

	str	ASTACK_1,[ASTACK_PTR,#4]
	str	ASTACK_0,[ASTACK_PTR],#8

	ldr	ASTACK_1,[ASTACK_2,#8]

fast_ap_:
	ldr	ASTACK_2,[ASTACK_2,#4]
	beq	repl_args_3

	cmp	BSTACK_0,#5
	blo	repl_args_4
	beq	repl_args_5

	cmp	BSTACK_0,#7
	blo	repl_args_6

	sub	BSTACK_0,BSTACK_0,#2

repl_args_7_:
	ldr	BSTACK_3,[ASTACK_1,BSTACK_0,lsl #2]
	str	BSTACK_3,[ASTACK_PTR],#4
	sub	BSTACK_0,BSTACK_0,#1
	cmp	BSTACK_0,#6-2
	bne	repl_args_7_

repl_args_6:
	ldr	BSTACK_0,[ASTACK_1,#16]
	str	BSTACK_0,[ASTACK_PTR],#12
	ldr	BSTACK_0,[ASTACK_1,#12]
	str	BSTACK_0,[ASTACK_PTR,#-8]
	ldr	BSTACK_0,[ASTACK_1,#8]
	str	BSTACK_0,[ASTACK_PTR,#-4]
	ldr	ASTACK_0,[ASTACK_1,#4]
	ldr	ASTACK_1,[ASTACK_1]
	bx	BSTACK_2

repl_args_0:
	mov	ASTACK_2,ASTACK_1
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!
repl_args_0_2:
	bx	BSTACK_2

repl_args_1:
	ldr	ASTACK_2,[ASTACK_2,#4]
	bx	BSTACK_2

repl_args_2:
	str	ASTACK_0,[ASTACK_PTR],#4
	mov	ASTACK_0,ASTACK_1
	ldr	ASTACK_1,[ASTACK_2,#8]
	ldr	ASTACK_2,[ASTACK_2,#4]
	bx	BSTACK_2

repl_args_3:
	ldr	ASTACK_0,[ASTACK_1,#4]
	ldr	ASTACK_1,[ASTACK_1]
	bx	BSTACK_2

repl_args_4:
	ldr	BSTACK_0,[ASTACK_1,#8]
	str	BSTACK_0,[ASTACK_PTR],#4
	ldr	ASTACK_0,[ASTACK_1,#4]
	ldr	ASTACK_1,[ASTACK_1]
	bx	BSTACK_2

repl_args_5:
	ldr	BSTACK_0,[ASTACK_1,#12]
	str	BSTACK_0,[ASTACK_PTR],#8
	ldr	BSTACK_0,[ASTACK_1,#8]
	str	BSTACK_0,[ASTACK_PTR,#-4]
	ldr	ASTACK_0,[ASTACK_1,#4]
	ldr	ASTACK_1,[ASTACK_1]
	bx	BSTACK_2

no_fast_ap32:
	ldr	SCRATCH_REG,[ASTACK_3,#2]
	.align
	add	lr,pc,#7
	str	lr,[sp,#-4]!
	blx	SCRATCH_REG
	ldr	ASTACK_3,[ASTACK_0]
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!

	mov	BSTACK_1,#31*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap_2

no_fast_ap31:
	ldr	SCRATCH_REG,[ASTACK_3,#2]
	.align
	add	lr,pc,#7
	str	lr,[sp,#-4]!
	blx	SCRATCH_REG
	ldr	ASTACK_3,[ASTACK_0]
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!

	mov	BSTACK_1,#30*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap_2

no_fast_ap30:
	ldr	SCRATCH_REG,[ASTACK_3,#2]
	.align
	add	lr,pc,#7
	str	lr,[sp,#-4]!
	blx	SCRATCH_REG
	ldr	ASTACK_3,[ASTACK_0]
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!

	mov	BSTACK_1,#29*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap_2

no_fast_ap29:
	ldr	SCRATCH_REG,[ASTACK_3,#2]
	.align
	add	lr,pc,#7
	str	lr,[sp,#-4]!
	blx	SCRATCH_REG
	ldr	ASTACK_3,[ASTACK_0]
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!

	mov	BSTACK_1,#28*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap_2

no_fast_ap28:
	ldr	SCRATCH_REG,[ASTACK_3,#2]
	.align
	add	lr,pc,#7
	str	lr,[sp,#-4]!
	blx	SCRATCH_REG
	ldr	ASTACK_3,[ASTACK_0]
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!

	mov	BSTACK_1,#27*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap_2

no_fast_ap27:
	ldr	SCRATCH_REG,[ASTACK_3,#2]
	.align
	add	lr,pc,#7
	str	lr,[sp,#-4]!
	blx	SCRATCH_REG
	ldr	ASTACK_3,[ASTACK_0]
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!

	mov	BSTACK_1,#26*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap_2

no_fast_ap26:
	ldr	SCRATCH_REG,[ASTACK_3,#2]
	.align
	add	lr,pc,#7
	str	lr,[sp,#-4]!
	blx	SCRATCH_REG
	ldr	ASTACK_3,[ASTACK_0]
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!

	mov	BSTACK_1,#25*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap_2

no_fast_ap25:
	ldr	SCRATCH_REG,[ASTACK_3,#2]
	.align
	add	lr,pc,#7
	str	lr,[sp,#-4]!
	blx	SCRATCH_REG
	ldr	ASTACK_3,[ASTACK_0]
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!

	mov	BSTACK_1,#24*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap_2

no_fast_ap24:
	ldr	SCRATCH_REG,[ASTACK_3,#2]
	.align
	add	lr,pc,#7
	str	lr,[sp,#-4]!
	blx	SCRATCH_REG
	ldr	ASTACK_3,[ASTACK_0]
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!

	mov	BSTACK_1,#23*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap_2

no_fast_ap23:
	ldr	SCRATCH_REG,[ASTACK_3,#2]
	.align
	add	lr,pc,#7
	str	lr,[sp,#-4]!
	blx	SCRATCH_REG
	ldr	ASTACK_3,[ASTACK_0]
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!

	mov	BSTACK_1,#22*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap_2

no_fast_ap22:
	ldr	SCRATCH_REG,[ASTACK_3,#2]
	.align
	add	lr,pc,#7
	str	lr,[sp,#-4]!
	blx	SCRATCH_REG
	ldr	ASTACK_3,[ASTACK_0]
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!

	mov	BSTACK_1,#21*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap_2

no_fast_ap21:
	ldr	SCRATCH_REG,[ASTACK_3,#2]
	.align
	add	lr,pc,#7
	str	lr,[sp,#-4]!
	blx	SCRATCH_REG
	ldr	ASTACK_3,[ASTACK_0]
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!

	mov	BSTACK_1,#20*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap_2

no_fast_ap20:
	ldr	SCRATCH_REG,[ASTACK_3,#2]
	.align
	add	lr,pc,#7
	str	lr,[sp,#-4]!
	blx	SCRATCH_REG
	ldr	ASTACK_3,[ASTACK_0]
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!

	mov	BSTACK_1,#19*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap_2

no_fast_ap19:
	ldr	SCRATCH_REG,[ASTACK_3,#2]
	.align
	add	lr,pc,#7
	str	lr,[sp,#-4]!
	blx	SCRATCH_REG
	ldr	ASTACK_3,[ASTACK_0]
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!

	mov	BSTACK_1,#18*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap_2

no_fast_ap18:
	ldr	SCRATCH_REG,[ASTACK_3,#2]
	.align
	add	lr,pc,#7
	str	lr,[sp,#-4]!
	blx	SCRATCH_REG
	ldr	ASTACK_3,[ASTACK_0]
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!

	mov	BSTACK_1,#17*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap_2

no_fast_ap17:
	ldr	SCRATCH_REG,[ASTACK_3,#2]
	.align
	add	lr,pc,#7
	str	lr,[sp,#-4]!
	blx	SCRATCH_REG
	ldr	ASTACK_3,[ASTACK_0]
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!

	mov	BSTACK_1,#16*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap_2

no_fast_ap16:
	ldr	SCRATCH_REG,[ASTACK_3,#2]
	.align
	add	lr,pc,#7
	str	lr,[sp,#-4]!
	blx	SCRATCH_REG
	ldr	ASTACK_3,[ASTACK_0]
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!

	mov	BSTACK_1,#15*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap_2

no_fast_ap15:
	ldr	SCRATCH_REG,[ASTACK_3,#2]
	.align
	add	lr,pc,#7
	str	lr,[sp,#-4]!
	blx	SCRATCH_REG
	ldr	ASTACK_3,[ASTACK_0]
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!

	mov	BSTACK_1,#14*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap_2

no_fast_ap14:
	ldr	SCRATCH_REG,[ASTACK_3,#2]
	.align
	add	lr,pc,#7
	str	lr,[sp,#-4]!
	blx	SCRATCH_REG
	ldr	ASTACK_3,[ASTACK_0]
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!

	mov	BSTACK_1,#13*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap_2

no_fast_ap13:
	ldr	SCRATCH_REG,[ASTACK_3,#2]
	.align
	add	lr,pc,#7
	str	lr,[sp,#-4]!
	blx	SCRATCH_REG
	ldr	ASTACK_3,[ASTACK_0]
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!

	mov	BSTACK_1,#12*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap_2

no_fast_ap12:
	ldr	SCRATCH_REG,[ASTACK_3,#2]
	.align
	add	lr,pc,#7
	str	lr,[sp,#-4]!
	blx	SCRATCH_REG
	ldr	ASTACK_3,[ASTACK_0]
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!

	mov	BSTACK_1,#11*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap_2

no_fast_ap11:
	ldr	SCRATCH_REG,[ASTACK_3,#2]
	.align
	add	lr,pc,#7
	str	lr,[sp,#-4]!
	blx	SCRATCH_REG
	ldr	ASTACK_3,[ASTACK_0]
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!

	mov	BSTACK_1,#10*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap_2

no_fast_ap10:
	ldr	SCRATCH_REG,[ASTACK_3,#2]
	.align
	add	lr,pc,#7
	str	lr,[sp,#-4]!
	blx	SCRATCH_REG
	ldr	ASTACK_3,[ASTACK_0]
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!

	mov	BSTACK_1,#9*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap_2

no_fast_ap9:
	ldr	SCRATCH_REG,[ASTACK_3,#2]
	.align
	add	lr,pc,#7
	str	lr,[sp,#-4]!
	blx	SCRATCH_REG
	ldr	ASTACK_3,[ASTACK_0]
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!

	mov	BSTACK_1,#8*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap_2

no_fast_ap8:
	ldr	SCRATCH_REG,[ASTACK_3,#2]
	.align
	add	lr,pc,#7
	str	lr,[sp,#-4]!
	blx	SCRATCH_REG
	ldr	ASTACK_3,[ASTACK_0]
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!

	mov	BSTACK_1,#7*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap_2

no_fast_ap7:
	ldr	SCRATCH_REG,[ASTACK_3,#2]
	.align
	add	lr,pc,#7
	str	lr,[sp,#-4]!
	blx	SCRATCH_REG
	ldr	ASTACK_3,[ASTACK_0]
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!

	mov	BSTACK_1,#6*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap_2

no_fast_ap6:
	ldr	SCRATCH_REG,[ASTACK_3,#2]
	.align
	add	lr,pc,#7
	str	lr,[sp,#-4]!
	blx	SCRATCH_REG
	ldr	ASTACK_3,[ASTACK_0]
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!

	mov	BSTACK_1,#5*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap_2

no_fast_ap5:
	ldr	SCRATCH_REG,[ASTACK_3,#2]
	.align
	add	lr,pc,#7
	str	lr,[sp,#-4]!
	blx	SCRATCH_REG
	ldr	ASTACK_3,[ASTACK_0]
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!

	mov	BSTACK_1,#4*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap_2

no_fast_ap4:
	ldr	SCRATCH_REG,[ASTACK_3,#2]
	.align
	add	lr,pc,#7
	str	lr,[sp,#-4]!
	blx	SCRATCH_REG
	ldr	ASTACK_3,[ASTACK_0]
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!

	mov	BSTACK_1,#3*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap_2

no_fast_ap3:
	ldr	SCRATCH_REG,[ASTACK_3,#2]
	.align
	add	lr,pc,#7
	str	lr,[sp,#-4]!
	blx	SCRATCH_REG
	ldr	ASTACK_3,[ASTACK_0]
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!

	mov	BSTACK_1,#2*8
	ldrh	SCRATCH_REG,[ASTACK_3]
	cmp	SCRATCH_REG,BSTACK_1
	beq	fast_ap_2_2

no_fast_ap2:
	ldr	SCRATCH_REG,[ASTACK_3,#2]
	.align
	add	lr,pc,#7
	str	lr,[sp,#-4]!
	blx	SCRATCH_REG
	ldr	ASTACK_2,[ASTACK_0]
	mov	ASTACK_1,ASTACK_0
	ldr	ASTACK_0,[ASTACK_PTR,#-4]!
	ldr	SCRATCH_REG,[ASTACK_2,#2]
	bx	SCRATCH_REG

	.ltorg

add_empty_node_2:
	subs	HEAP_FREE,HEAP_FREE,#3
	blo	add_empty_node_2_gc
add_empty_node_2_gc_:
	lao	SCRATCH_REG,__cycle__in__spine,1
	mov	ASTACK_2,ASTACK_1
	mov	ASTACK_1,ASTACK_0
	mov	ASTACK_0,HEAP_PTR
	otoa	SCRATCH_REG,__cycle__in__spine,1
	str	SCRATCH_REG,[HEAP_PTR],#12
	bx	lr
add_empty_node_2_gc:
	str	lr,[sp,#-4]!
	bl	collect_2
	ldr	lr,[sp],#4
	b	add_empty_node_2_gc_

add_empty_node_3:
	subs	HEAP_FREE,HEAP_FREE,#3
	blo	add_empty_node_3_gc
add_empty_node_3_gc_:
	lao	SCRATCH_REG,__cycle__in__spine,2
	str	HEAP_PTR,[ASTACK_PTR],#4
	otoa	SCRATCH_REG,__cycle__in__spine,2
	str	SCRATCH_REG,[HEAP_PTR],#12
	bx	lr
add_empty_node_3_gc:
	str	lr,[sp,#-4]!
	bl	collect_3
	ldr	lr,[sp],#4
	b	add_empty_node_3_gc_

add_empty_node_4:
	subs	HEAP_FREE,HEAP_FREE,#3
	blo	add_empty_node_4_gc
add_empty_node_4_gc_:
	ldr	ASTACK_3,[ASTACK_PTR,#-4]
	str	ASTACK_3,[ASTACK_PTR]
	str	HEAP_PTR,[ASTACK_PTR,#-4]
	lao	SCRATCH_REG,__cycle__in__spine,3
	add	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,__cycle__in__spine,3
	str	SCRATCH_REG,[HEAP_PTR],#12
	bx	lr
add_empty_node_4_gc:
	str	lr,[sp,#-4]!
	bl	collect_3
	ldr	lr,[sp],#4
	b	add_empty_node_4_gc_

add_empty_node_5:
	subs	HEAP_FREE,HEAP_FREE,#3
	blo	add_empty_node_5_gc
add_empty_node_5_gc_:
	ldr	ASTACK_3,[ASTACK_PTR,#-4]
	str	ASTACK_3,[ASTACK_PTR]
	ldr	ASTACK_3,[ASTACK_PTR,#-8]
	str	ASTACK_3,[ASTACK_PTR,#-4]
	str	HEAP_PTR,[ASTACK_PTR,#-8]
	lao	SCRATCH_REG,__cycle__in__spine,4
	add	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,__cycle__in__spine,4
	str	SCRATCH_REG,[HEAP_PTR],#12
	bx	lr
add_empty_node_5_gc:
	str	lr,[sp,#-4]!
	bl	collect_3
	ldr	lr,[sp],#4
	b	add_empty_node_5_gc_

add_empty_node_6:
	subs	HEAP_FREE,HEAP_FREE,#3
	blo	add_empty_node_6_gc
add_empty_node_6_gc_:
	ldr	ASTACK_3,[ASTACK_PTR,#-4]
	str	ASTACK_3,[ASTACK_PTR]
	ldr	ASTACK_3,[ASTACK_PTR,#-8]
	str	ASTACK_3,[ASTACK_PTR,#-4]
	ldr	ASTACK_3,[ASTACK_PTR,#-12]
	str	ASTACK_3,[ASTACK_PTR,#-8]
	str	HEAP_PTR,[ASTACK_PTR,#-12]
	lao	SCRATCH_REG,__cycle__in__spine,5
	add	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,__cycle__in__spine,5
	str	SCRATCH_REG,[HEAP_PTR],#12
	bx	lr
add_empty_node_6_gc:
	bl	collect_3
	b	add_empty_node_6_gc_

add_empty_node_7:
	subs	HEAP_FREE,HEAP_FREE,#3
	blo	add_empty_node_7_gc
add_empty_node_7_gc_:
	ldr	ASTACK_3,[ASTACK_PTR,#-4]
	str	ASTACK_3,[ASTACK_PTR]
	ldr	ASTACK_3,[ASTACK_PTR,#-8]
	str	ASTACK_3,[ASTACK_PTR,#-4]
	ldr	ASTACK_3,[ASTACK_PTR,#-12]
	str	ASTACK_3,[ASTACK_PTR,#-8]
	ldr	ASTACK_3,[ASTACK_PTR,#-16]
	str	ASTACK_3,[ASTACK_PTR,#-12]
	str	HEAP_PTR,[ASTACK_PTR,#-16]
	lao	SCRATCH_REG,__cycle__in__spine,6
	add	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,__cycle__in__spine,6
	str	SCRATCH_REG,[HEAP_PTR],#12
	bx	lr
add_empty_node_7_gc:
	bl	collect_3
	b	add_empty_node_7_gc_

add_empty_node_8:
	subs	HEAP_FREE,HEAP_FREE,#3
	blo	add_empty_node_8_gc
add_empty_node_8_gc_:
	ldr	ASTACK_3,[ASTACK_PTR,#-4]
	str	ASTACK_3,[ASTACK_PTR]
	ldr	ASTACK_3,[ASTACK_PTR,#-8]
	str	ASTACK_3,[ASTACK_PTR,#-4]
	ldr	ASTACK_3,[ASTACK_PTR,#-12]
	str	ASTACK_3,[ASTACK_PTR,#-8]
	ldr	ASTACK_3,[ASTACK_PTR,#-16]
	str	ASTACK_3,[ASTACK_PTR,#-12]
	ldr	ASTACK_3,[ASTACK_PTR,#-20]
	str	ASTACK_3,[ASTACK_PTR,#-16]
	str	HEAP_PTR,[ASTACK_PTR,#-20]
	lao	SCRATCH_REG,__cycle__in__spine,7
	add	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,__cycle__in__spine,7
	str	SCRATCH_REG,[HEAP_PTR],#12
	bx	lr
add_empty_node_8_gc:
	bl	collect_3
	b	add_empty_node_8_gc_

add_empty_node_9:
	subs	HEAP_FREE,HEAP_FREE,#3
	blo	add_empty_node_9_gc
add_empty_node_9_gc_:
	ldr	ASTACK_3,[ASTACK_PTR,#-4]
	str	ASTACK_3,[ASTACK_PTR]
	ldr	ASTACK_3,[ASTACK_PTR,#-8]
	str	ASTACK_3,[ASTACK_PTR,#-4]
	ldr	ASTACK_3,[ASTACK_PTR,#-12]
	str	ASTACK_3,[ASTACK_PTR,#-8]
	ldr	ASTACK_3,[ASTACK_PTR,#-16]
	str	ASTACK_3,[ASTACK_PTR,#-12]
	ldr	ASTACK_3,[ASTACK_PTR,#-20]
	str	ASTACK_3,[ASTACK_PTR,#-16]
	ldr	ASTACK_3,[ASTACK_PTR,#-24]
	str	ASTACK_3,[ASTACK_PTR,#-20]
	str	HEAP_PTR,[ASTACK_PTR,#-24]
	lao	SCRATCH_REG,__cycle__in__spine,8
	add	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,__cycle__in__spine,8
	str	SCRATCH_REG,[HEAP_PTR],#12
	bx	lr
add_empty_node_9_gc:
	bl	collect_3
	b	add_empty_node_9_gc_

add_empty_node_10:
	subs	HEAP_FREE,HEAP_FREE,#3
	blo	add_empty_node_10_gc
add_empty_node_10_gc_:
	ldr	ASTACK_3,[ASTACK_PTR,#-4]
	str	ASTACK_3,[ASTACK_PTR]
	ldr	ASTACK_3,[ASTACK_PTR,#-8]
	str	ASTACK_3,[ASTACK_PTR,#-4]
	ldr	ASTACK_3,[ASTACK_PTR,#-12]
	str	ASTACK_3,[ASTACK_PTR,#-8]
	ldr	ASTACK_3,[ASTACK_PTR,#-16]
	str	ASTACK_3,[ASTACK_PTR,#-12]
	ldr	ASTACK_3,[ASTACK_PTR,#-20]
	str	ASTACK_3,[ASTACK_PTR,#-16]
	ldr	ASTACK_3,[ASTACK_PTR,#-24]
	str	ASTACK_3,[ASTACK_PTR,#-20]
	ldr	ASTACK_3,[ASTACK_PTR,#-28]
	str	ASTACK_3,[ASTACK_PTR,#-24]
	str	HEAP_PTR,[ASTACK_PTR,#-28]
	lao	SCRATCH_REG,__cycle__in__spine,9
	add	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,__cycle__in__spine,9
	str	SCRATCH_REG,[HEAP_PTR],#12
	bx	lr
add_empty_node_10_gc:
	bl	collect_3
	b	add_empty_node_10_gc_

add_empty_node_31:
	mov	BSTACK_1,#7
	b	add_empty_node_11_
add_empty_node_27:
	mov	BSTACK_1,#6
	b	add_empty_node_11_
add_empty_node_23:
	mov	BSTACK_1,#5
	b	add_empty_node_11_
add_empty_node_19:
	mov	BSTACK_1,#4
	b	add_empty_node_11_
add_empty_node_15:
	mov	BSTACK_1,#3
	b	add_empty_node_11_
add_empty_node_11:
	mov	BSTACK_1,#2
add_empty_node_11_:
	subs	HEAP_FREE,HEAP_FREE,#3
	blo	add_empty_node_11_gc
add_empty_node_11_gc_:
	mov	BSTACK_0,ASTACK_PTR
add_empty_node_11_lp:
	ldr	ASTACK_3,[BSTACK_0,#-4]
	str	ASTACK_3,[BSTACK_0]
	ldr	ASTACK_3,[BSTACK_0,#-8]
	str	ASTACK_3,[BSTACK_0,#-4]
	ldr	ASTACK_3,[BSTACK_0,#-12]
	str	ASTACK_3,[BSTACK_0,#-8]
	ldr	ASTACK_3,[BSTACK_0,#-16]
	str	ASTACK_3,[BSTACK_0,#-12]
	sub	BSTACK_0,BSTACK_0,#16
	subs	BSTACK_1,BSTACK_1,#1
	bne	add_empty_node_11_lp
	str	HEAP_PTR,[BSTACK_0]
	lao	SCRATCH_REG,__cycle__in__spine,10
	add	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,__cycle__in__spine,10
	str	SCRATCH_REG,[HEAP_PTR],#12
	bx	lr
add_empty_node_11_gc:
	bl	collect_3
	b	add_empty_node_11_gc_

add_empty_node_32:
	mov	BSTACK_1,#7
	b	add_empty_node_12_
add_empty_node_28:
	mov	BSTACK_1,#6
	b	add_empty_node_12_
add_empty_node_24:
	mov	BSTACK_1,#5
	b	add_empty_node_12_
add_empty_node_20:
	mov	BSTACK_1,#4
	b	add_empty_node_12_
add_empty_node_16:
	mov	BSTACK_1,#3
	b	add_empty_node_12_
add_empty_node_12:
	mov	BSTACK_1,#2
add_empty_node_12_:
	subs	HEAP_FREE,HEAP_FREE,#3
	blo	add_empty_node_12_gc
add_empty_node_12_gc_:
	mov	BSTACK_0,ASTACK_PTR
	ldr	ASTACK_3,[ASTACK_PTR,#-4]
	str	ASTACK_3,[ASTACK_PTR]
add_empty_node_12_lp:
	ldr	ASTACK_3,[BSTACK_0,#-8]
	str	ASTACK_3,[BSTACK_0,#-4]
	ldr	ASTACK_3,[BSTACK_0,#-12]
	str	ASTACK_3,[BSTACK_0,#-8]
	ldr	ASTACK_3,[BSTACK_0,#-16]
	str	ASTACK_3,[BSTACK_0,#-12]
	ldr	ASTACK_3,[BSTACK_0,#-20]
	str	ASTACK_3,[BSTACK_0,#-16]!
	subs	BSTACK_1,BSTACK_1,#1
	bne	add_empty_node_12_lp
	str	HEAP_PTR,[BSTACK_0,#-4]
	lao	SCRATCH_REG,__cycle__in__spine,11
	add	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,__cycle__in__spine,11
	str	SCRATCH_REG,[HEAP_PTR],#12
	bx	lr
add_empty_node_12_gc:
	bl	collect_3
	b	add_empty_node_12_gc_

add_empty_node_29:
	mov	BSTACK_1,#6
	b	add_empty_node_13_
add_empty_node_25:
	mov	BSTACK_1,#5
	b	add_empty_node_13_
add_empty_node_21:
	mov	BSTACK_1,#4
	b	add_empty_node_13_
add_empty_node_17:
	mov	BSTACK_1,#3
	b	add_empty_node_13_
add_empty_node_13:
	mov	BSTACK_1,#2
add_empty_node_13_:
	subs	HEAP_FREE,HEAP_FREE,#3
	blo	add_empty_node_13_gc
add_empty_node_13_gc_:
	mov	BSTACK_0,ASTACK_PTR
	ldr	ASTACK_3,[ASTACK_PTR,#-4]
	str	ASTACK_3,[ASTACK_PTR]
	ldr	ASTACK_3,[ASTACK_PTR,#-8]
	str	ASTACK_3,[ASTACK_PTR,#-4]
add_empty_node_13_lp:
	ldr	ASTACK_3,[BSTACK_0,#-12]
	str	ASTACK_3,[BSTACK_0,#-8]
	ldr	ASTACK_3,[BSTACK_0,#-16]
	str	ASTACK_3,[BSTACK_0,#-12]
	ldr	ASTACK_3,[BSTACK_0,#-20]
	str	ASTACK_3,[BSTACK_0,#-16]
	ldr	ASTACK_3,[BSTACK_0,#-24]
	str	ASTACK_3,[BSTACK_0,#-20]
	sub	BSTACK_0,BSTACK_0,#16
	subs	BSTACK_1,BSTACK_1,#1
	bne	add_empty_node_13_lp
	str	HEAP_PTR,[BSTACK_0,#-8]
	lao	SCRATCH_REG,__cycle__in__spine,12
	add	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,__cycle__in__spine,12
	str	SCRATCH_REG,[HEAP_PTR],#12
	bx	lr
add_empty_node_13_gc:
	bl	collect_3
	b	add_empty_node_13_gc_

add_empty_node_30:
	mov	BSTACK_1,#6
	b	add_empty_node_14_
add_empty_node_26:
	mov	BSTACK_1,#5
	b	add_empty_node_14_
add_empty_node_22:
	mov	BSTACK_1,#4
	b	add_empty_node_14_
add_empty_node_18:
	mov	BSTACK_1,#3
	b	add_empty_node_14_
add_empty_node_14:
	mov	BSTACK_1,#2
	b	add_empty_node_14_
add_empty_node_14_:
	subs	HEAP_FREE,HEAP_FREE,#3
	blo	add_empty_node_14_gc
add_empty_node_14_gc:
	mov	BSTACK_0,ASTACK_PTR
	ldr	ASTACK_3,[ASTACK_PTR,#-4]
	str	ASTACK_3,[ASTACK_PTR]
	ldr	ASTACK_3,[ASTACK_PTR,#-8]
	str	ASTACK_3,[ASTACK_PTR,#-4]
	ldr	ASTACK_3,[ASTACK_PTR,#-12]
	str	ASTACK_3,[ASTACK_PTR,#-8]
add_empty_node_14_lp:
	ldr	ASTACK_3,[BSTACK_0,#-16]
	str	ASTACK_3,[BSTACK_0,#-12]
	ldr	ASTACK_3,[BSTACK_0,#-20]
	str	ASTACK_3,[BSTACK_0,#-16]
	ldr	ASTACK_3,[BSTACK_0,#-24]
	str	ASTACK_3,[BSTACK_0,#-20]
	ldr	ASTACK_3,[BSTACK_0,#-28]
	str	ASTACK_3,[BSTACK_0,#-24]
	sub	BSTACK_0,BSTACK_0,#16
	subs	BSTACK_1,BSTACK_1,#1
	bne	add_empty_node_14_lp
	str	HEAP_PTR,[BSTACK_0,#-12]
	lao	SCRATCH_REG,__cycle__in__spine,13
	add	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,__cycle__in__spine,13
	str	SCRATCH_REG,[HEAP_PTR],#12
	bx	lr
add_empty_node_14_gc_:
	bl	collect_3
	b	add_empty_node_14_gc_

.ifdef PIC
	lto	__cycle__in__spine,1
	lto	__cycle__in__spine,2
	lto	__cycle__in__spine,3
	lto	__cycle__in__spine,4
	lto	__cycle__in__spine,5
	lto	__cycle__in__spine,6
	lto	__cycle__in__spine,7
	lto	__cycle__in__spine,8
	lto	__cycle__in__spine,9
	lto	__cycle__in__spine,10
	lto	__cycle__in__spine,11
	lto	__cycle__in__spine,12
	lto	__cycle__in__spine,13
.endif
	.ltorg

yet_args_needed_0:
	subs	HEAP_FREE,HEAP_FREE,#2
	blo	yet_args_needed_0_gc
yet_args_needed_0_gc_r:
	str	ASTACK_0,[HEAP_PTR,#4]
	ldr	BSTACK_0,[ASTACK_1]
	mov	ASTACK_0,HEAP_PTR
	add	BSTACK_0,BSTACK_0,#8
	str	BSTACK_0,[HEAP_PTR],#8
	ldr	pc,[sp],#4

yet_args_needed_0_gc:
	bl	collect_2
	b	yet_args_needed_0_gc_r


	.p2align	2
	subs	HEAP_FREE,HEAP_FREE,#3
	b	build_node_2
.ifdef PROFILE
	nop
	nop
.endif
yet_args_needed_1:
	subs	HEAP_FREE,HEAP_FREE,#3
	blo	yet_args_needed_1_gc
yet_args_needed_1_gc_r:
	str	ASTACK_0,[HEAP_PTR,#8]
	ldr	BSTACK_0,[ASTACK_1]
	mov	ASTACK_0,HEAP_PTR
	add	BSTACK_0,BSTACK_0,#8
	str	BSTACK_0,[HEAP_PTR]
	ldr	BSTACK_1,[ASTACK_1,#4]
	str	BSTACK_1,[HEAP_PTR,#4]
	add	HEAP_PTR,HEAP_PTR,#12
	ldr	pc,[sp],#4

yet_args_needed_1_gc:
	bl	collect_2
	b	yet_args_needed_1_gc_r

build_node_2:
	blo	build_node_2_gc
build_node_2_gc_r:
	str	BSTACK_1,[HEAP_PTR]
	str	ASTACK_1,[HEAP_PTR,#4]
	str	ASTACK_0,[HEAP_PTR,#8]
	mov	ASTACK_0,HEAP_PTR
	add	HEAP_PTR,HEAP_PTR,#12
	ldr	pc,[sp],#4

build_node_2_gc:
	bl	collect_2
	b	build_node_2_gc_r


	.p2align	2	
	subs	HEAP_FREE,HEAP_FREE,#5
	b	build_node_3
.ifdef PROFILE
	nop
	nop
.endif
yet_args_needed_2:
	subs	HEAP_FREE,HEAP_FREE,#5
	blo	gc_22
gc_r_22:
	ldr	BSTACK_0,[ASTACK_1]
	str	ASTACK_0,[HEAP_PTR,#4]
	add	BSTACK_0,BSTACK_0,#8
	ldr	ASTACK_2,[ASTACK_1,#4]
	str	BSTACK_0,[HEAP_PTR,#8]
	add	ASTACK_0,HEAP_PTR,#8
	str	ASTACK_2,[HEAP_PTR,#12]
	ldr	ASTACK_2,[ASTACK_1,#8]
	str	ASTACK_2,[HEAP_PTR]
	str	HEAP_PTR,[HEAP_PTR,#16]
	add	HEAP_PTR,HEAP_PTR,#20
	ldr	pc,[sp],#4

gc_22:	bl	collect_2
	b	gc_r_22

build_node_3:
	blo	build_node_3_gc
build_node_3_gc_r:
	str	BSTACK_1,[HEAP_PTR]
	add	ASTACK_2,HEAP_PTR,#12
	str	ASTACK_1,[HEAP_PTR,#4]
	str	ASTACK_2,[HEAP_PTR,#8]
	str	ASTACK_0,[HEAP_PTR,#12]
	mov	ASTACK_0,HEAP_PTR
	ldr	ASTACK_2,[ASTACK_PTR,#-4]
	subs	ASTACK_PTR,ASTACK_PTR,#4
	str	ASTACK_2,[HEAP_PTR,#16]
	add	HEAP_PTR,HEAP_PTR,#20
	ldr	pc,[sp],#4

build_node_3_gc:
	bl	collect_2
	b	build_node_3_gc_r


	.p2align	2	
	subs	HEAP_FREE,HEAP_FREE,#6
	b	build_node_4
.ifdef PROFILE
	nop
	nop
.endif
yet_args_needed_3:
	subs	HEAP_FREE,HEAP_FREE,#6
	blo	gc_23
gc_r_23:
	ldr	BSTACK_0,[ASTACK_1]
	str	ASTACK_0,[HEAP_PTR,#8]
	add	BSTACK_0,BSTACK_0,#8
	ldr	ASTACK_2,[ASTACK_1,#4]
	str	BSTACK_0,[HEAP_PTR,#12]
	ldr	ASTACK_1,[ASTACK_1,#8]
	str	ASTACK_2,[HEAP_PTR,#16]
	ldr	ASTACK_2,[ASTACK_1]
	str	HEAP_PTR,[HEAP_PTR,#20]
	str	ASTACK_2,[HEAP_PTR]
	ldr	ASTACK_2,[ASTACK_1,#4]
	add	ASTACK_0,HEAP_PTR,#12
	str	ASTACK_2,[HEAP_PTR,#4]
	add	HEAP_PTR,HEAP_PTR,#24
	ldr	pc,[sp],#4

gc_23:	bl	collect_2
	b	gc_r_23

build_node_4:
	blo	build_node_4_gc
build_node_4_gc_r:
	str	BSTACK_1,[HEAP_PTR]
	add	ASTACK_2,HEAP_PTR,#12
	str	ASTACK_1,[HEAP_PTR,#4]
	str	ASTACK_2,[HEAP_PTR,#8]
	str	ASTACK_0,[HEAP_PTR,#12]
	mov	ASTACK_0,HEAP_PTR
	ldr	ASTACK_2,[ASTACK_PTR,#-4]
	str	ASTACK_2,[HEAP_PTR,#16]
	ldr	ASTACK_2,[ASTACK_PTR,#-8]
	subs	ASTACK_PTR,ASTACK_PTR,#8
	str	ASTACK_2,[HEAP_PTR,#20]
	add	HEAP_PTR,HEAP_PTR,#24
	ldr	pc,[sp],#4

build_node_4_gc:
	bl	collect_2
	b	build_node_4_gc_r


	.p2align	2
	subs	HEAP_FREE,HEAP_FREE,#7
	b	build_node_5
.ifdef PROFILE
	nop
	nop
.endif
yet_args_needed_4:
	subs	HEAP_FREE,HEAP_FREE,#7
	blo	gc_24
gc_r_24:
	ldr	BSTACK_0,[ASTACK_1]
	str	ASTACK_0,[HEAP_PTR,#12]
	add	BSTACK_0,BSTACK_0,#8
	ldr	ASTACK_2,[ASTACK_1,#4]
	str	BSTACK_0,[HEAP_PTR,#16]
	ldr	ASTACK_1,[ASTACK_1,#8]
	str	ASTACK_2,[HEAP_PTR,#20]
	ldr	ASTACK_2,[ASTACK_1]
	str	HEAP_PTR,[HEAP_PTR,#24]
	str	ASTACK_2,[HEAP_PTR]
	ldr	ASTACK_2,[ASTACK_1,#4]
	add	ASTACK_0,HEAP_PTR,#16
	str	ASTACK_2,[HEAP_PTR,#4]
	ldr	ASTACK_2,[ASTACK_1,#8]
	str	ASTACK_2,[HEAP_PTR,#8]
	add	HEAP_PTR,HEAP_PTR,#28
	ldr	pc,[sp],#4

gc_24:	bl	collect_2
	b	gc_r_24

build_node_5:
	blo	build_node_5_gc
build_node_5_gc_r:
	str	BSTACK_1,[HEAP_PTR]
	add	ASTACK_2,HEAP_PTR,#12
	str	ASTACK_1,[HEAP_PTR,#4]
	str	ASTACK_2,[HEAP_PTR,#8]
	str	ASTACK_0,[HEAP_PTR,#12]
	mov	ASTACK_0,HEAP_PTR
	ldr	ASTACK_2,[ASTACK_PTR,#-4]
	str	ASTACK_2,[HEAP_PTR,#16]
	ldr	ASTACK_2,[ASTACK_PTR,#-8]
	str	ASTACK_2,[HEAP_PTR,#20]
	ldr	ASTACK_2,[ASTACK_PTR,#-12]
	subs	ASTACK_PTR,ASTACK_PTR,#12
	str	ASTACK_2,[HEAP_PTR,#24]
	add	HEAP_PTR,HEAP_PTR,#28
	ldr	pc,[sp],#4

build_node_5_gc:
	bl	collect_2
	b	build_node_5_gc_r


	.p2align	2	
	mov	BSTACK_0,#8
	b	build_node_
.ifdef PROFILE
	nop
	nop
.endif
yet_args_needed_5:
	ldr	BSTACK_1,[ASTACK_1]
	mov	BSTACK_0,#8
	b	yet_args_needed_


	.p2align	2	
	mov	BSTACK_0,#9
	b	build_node_
.ifdef PROFILE
	nop
	nop
.endif
yet_args_needed_6:
	ldr	BSTACK_1,[ASTACK_1]
	mov	BSTACK_0,#9
	b	yet_args_needed_

	.p2align	2
	mov	BSTACK_0,#10
	b	build_node_
.ifdef PROFILE
	nop
	nop
.endif
yet_args_needed_7:
	ldr	BSTACK_1,[ASTACK_1]
	mov	BSTACK_0,#10
	b	yet_args_needed_

	.p2align	2
	mov	BSTACK_0,#11
	b	build_node_
.ifdef PROFILE
	nop
	nop
.endif
yet_args_needed_8:
	ldr	BSTACK_1,[ASTACK_1]
	mov	BSTACK_0,#11
	b	yet_args_needed_

	.p2align	2
	mov	BSTACK_0,#12
	b	build_node_
.ifdef PROFILE
	nop
	nop
.endif
yet_args_needed_9:
	ldr	BSTACK_1,[ASTACK_1]
	mov	BSTACK_0,#12
	b	yet_args_needed_

	.p2align	2
	mov	BSTACK_0,#13
	b	build_node_
.ifdef PROFILE
	nop
	nop
.endif
yet_args_needed_10:
	ldr	BSTACK_1,[ASTACK_1]
	mov	BSTACK_0,#13
	b	yet_args_needed_

	.p2align	2
	mov	BSTACK_0,#14
	b	build_node_
.ifdef PROFILE
	nop
	nop
.endif
yet_args_needed_11:
	ldr	BSTACK_1,[ASTACK_1]
	mov	BSTACK_0,#14
	b	yet_args_needed_

	.p2align	2
	mov	BSTACK_0,#15
	b	build_node_
.ifdef PROFILE
	nop
	nop
.endif
yet_args_needed_12:
	ldr	BSTACK_1,[ASTACK_1]
	mov	BSTACK_0,#15
	b	yet_args_needed_

	.p2align	2
	mov	BSTACK_0,#16
	b	build_node_
.ifdef PROFILE
	nop
	nop
.endif
yet_args_needed_13:
	ldr	BSTACK_1,[ASTACK_1]
	mov	BSTACK_0,#16
	b	yet_args_needed_

	.p2align	2
	mov	BSTACK_0,#17
	b	build_node_
.ifdef PROFILE
	nop
	nop
.endif
yet_args_needed_14:
	ldr	BSTACK_1,[ASTACK_1]
	mov	BSTACK_0,#17
	b	yet_args_needed_

	.p2align	2
	mov	BSTACK_0,#18
	b	build_node_
.ifdef PROFILE
	nop
	nop
.endif
yet_args_needed_15:
	ldr	BSTACK_1,[ASTACK_1]
	mov	BSTACK_0,#18
	b	yet_args_needed_

	.p2align	2
	mov	BSTACK_0,#19
	b	build_node_
.ifdef PROFILE
	nop
	nop
.endif
yet_args_needed_16:
	ldr	BSTACK_1,[ASTACK_1]
	mov	BSTACK_0,#19
	b	yet_args_needed_

	.p2align	2
	mov	BSTACK_0,#20
	b	build_node_
.ifdef PROFILE
	nop
	nop
.endif
yet_args_needed_17:
	ldr	BSTACK_1,[ASTACK_1]
	mov	BSTACK_0,#20
	b	yet_args_needed_

	.p2align	2
	mov	BSTACK_0,#21
	b	build_node_
.ifdef PROFILE
	nop
	nop
.endif
yet_args_needed_18:
	ldr	BSTACK_1,[ASTACK_1]
	mov	BSTACK_0,#21
	b	yet_args_needed_

	.p2align	2
	mov	BSTACK_0,#22
	b	build_node_
.ifdef PROFILE
	nop
	nop
.endif
yet_args_needed_19:
	ldr	BSTACK_1,[ASTACK_1]
	mov	BSTACK_0,#22
	b	yet_args_needed_

	.p2align	2
	mov	BSTACK_0,#23
	b	build_node_
.ifdef PROFILE
	nop
	nop
.endif
yet_args_needed_20:
	ldr	BSTACK_1,[ASTACK_1]
	mov	BSTACK_0,#23
	b	yet_args_needed_

	.p2align	2
	mov	BSTACK_0,#24
	b	build_node_
.ifdef PROFILE
	nop
	nop
.endif
yet_args_needed_21:
	ldr	BSTACK_1,[ASTACK_1]
	mov	BSTACK_0,#24
	b	yet_args_needed_

	.p2align	2
	mov	BSTACK_0,#25
	b	build_node_
.ifdef PROFILE
	nop
	nop
.endif
yet_args_needed_22:
	ldr	BSTACK_1,[ASTACK_1]
	mov	BSTACK_0,#25
	b	yet_args_needed_

	.p2align	2	
	mov	BSTACK_0,#26
	b	build_node_
.ifdef PROFILE
	nop
	nop
.endif
yet_args_needed_23:
	ldr	BSTACK_1,[ASTACK_1]
	mov	BSTACK_0,#26
	b	yet_args_needed_

	.p2align	2
	mov	BSTACK_0,#27
	b	build_node_
.ifdef PROFILE
	nop
	nop
.endif
yet_args_needed_24:
	ldr	BSTACK_1,[ASTACK_1]
	mov	BSTACK_0,#27
	b	yet_args_needed_

	.p2align	2	
	mov	BSTACK_0,#28
	b	build_node_
.ifdef PROFILE
	nop
	nop
.endif
yet_args_needed_25:
	ldr	BSTACK_1,[ASTACK_1]
	mov	BSTACK_0,#28
	b	yet_args_needed_

	.p2align	2
	mov	BSTACK_0,#29
	b	build_node_
.ifdef PROFILE
	nop
	nop
.endif
yet_args_needed_26:
	ldr	BSTACK_1,[ASTACK_1]
	mov	BSTACK_0,#29
	b	yet_args_needed_

	.p2align	2
	mov	BSTACK_0,#30
	b	build_node_
.ifdef PROFILE
	nop
	nop
.endif
yet_args_needed_27:
	ldr	BSTACK_1,[ASTACK_1]
	mov	BSTACK_0,#30
	b	yet_args_needed_

	.p2align	2
	mov	BSTACK_0,#31
	b	build_node_
.ifdef PROFILE
	nop
	nop
.endif
yet_args_needed_28:
	ldr	BSTACK_1,[ASTACK_1]
	mov	BSTACK_0,#31
	b	yet_args_needed_

	.p2align	2
	mov	BSTACK_0,#32
	b	build_node_
.ifdef PROFILE
	nop
	nop
.endif
yet_args_needed_29:
	ldr	BSTACK_1,[ASTACK_1]
	mov	BSTACK_0,#32
	b	yet_args_needed_

	.p2align	2
	mov	BSTACK_0,#33
	b	build_node_
.ifdef PROFILE
	nop
	nop
.endif
yet_args_needed_30:
	ldr	BSTACK_1,[ASTACK_1]
	mov	BSTACK_0,#33
	b	yet_args_needed_

	.p2align	2
	mov	BSTACK_0,#34
	b	build_node_
.ifdef PROFILE
	nop
	nop
.endif
yet_args_needed_31:
	ldr	BSTACK_1,[ASTACK_1]
	mov	BSTACK_0,#34
	b	yet_args_needed_

yet_args_needed:
@ for more than 4 arguments
	ldr	BSTACK_1,[ASTACK_1]
	ldrh	BSTACK_0,[BSTACK_1,#-2]
	add	BSTACK_0,BSTACK_0,#3
yet_args_needed_:
	subs	HEAP_FREE,HEAP_FREE,BSTACK_0
	blo	yet_args_needed_gc
yet_args_needed_gc_r:
	subs	BSTACK_0,BSTACK_0,#3+1+4
	str	BSTACK_1,[sp,#-4]!
	str	ASTACK_0,[sp,#-4]!
	ldr	BSTACK_1,[ASTACK_1,#4]
	ldr	ASTACK_1,[ASTACK_1,#8]
	mov	ASTACK_2,HEAP_PTR
	ldr	ASTACK_0,[ASTACK_1]
	str	ASTACK_0,[HEAP_PTR]
	ldr	ASTACK_0,[ASTACK_1,#4]
	str	ASTACK_0,[HEAP_PTR,#4]
	ldr	ASTACK_0,[ASTACK_1,#8]
	str	ASTACK_0,[HEAP_PTR,#8]
	add	ASTACK_1,ASTACK_1,#12
	add	HEAP_PTR,HEAP_PTR,#12

yet_args_needed_cp_a:
	ldr	ASTACK_0,[ASTACK_1],#4
	str	ASTACK_0,[HEAP_PTR],#4
	subs	BSTACK_0,BSTACK_0,#1
	bge	yet_args_needed_cp_a

	ldr	ASTACK_0,[sp],#4
	str	ASTACK_0,[HEAP_PTR]
	ldr	BSTACK_0,[sp],#4
	add	BSTACK_0,BSTACK_0,#8
	str	BSTACK_0,[HEAP_PTR,#4]
	add	ASTACK_0,HEAP_PTR,#4
	str	BSTACK_1,[HEAP_PTR,#8]
	str	ASTACK_2,[HEAP_PTR,#12]
	add	HEAP_PTR,HEAP_PTR,#16
	ldr	pc,[sp],#4

yet_args_needed_gc:
	bl	collect_2
	b	yet_args_needed_gc_r

build_node_:
	subs	HEAP_FREE,HEAP_FREE,BSTACK_0
	blo	build_node_gc
build_node_gc_r:
	str	BSTACK_1,[HEAP_PTR]
	add	ASTACK_2,HEAP_PTR,#12
	str	ASTACK_1,[HEAP_PTR,#4]
	str	ASTACK_2,[HEAP_PTR,#8]
	str	ASTACK_0,[HEAP_PTR,#12]
	mov	ASTACK_0,HEAP_PTR
	ldr	ASTACK_2,[ASTACK_PTR,#-4]
	str	ASTACK_2,[HEAP_PTR,#16]
	ldr	ASTACK_2,[ASTACK_PTR,#-8]
	str	ASTACK_2,[HEAP_PTR,#20]
	ldr	ASTACK_2,[ASTACK_PTR,#-12]
	subs	ASTACK_PTR,ASTACK_PTR,#12
	str	ASTACK_2,[HEAP_PTR,#24]
	add	HEAP_PTR,HEAP_PTR,#28

	subs	BSTACK_0,BSTACK_0,#5+2
build_node_cp_a:
	ldr	ASTACK_2,[ASTACK_PTR,#-4]!
	str	ASTACK_2,[HEAP_PTR],#4
	subs	BSTACK_0,BSTACK_0,#1
	bne	build_node_cp_a

	ldr	pc,[sp],#4

build_node_gc:
	bl	collect_2
	b	build_node_gc_r

	.globl	apupd_1
	.globl	apupd_2
	.globl	apupd_3
	.globl	apupd_4
	.globl	apupd_5
	.globl	apupd_6
	.globl	apupd_7
	.globl	apupd_8
	.globl	apupd_9
	.globl	apupd_10
	.globl	apupd_11
	.globl	apupd_12
	.globl	apupd_13
	.globl	apupd_14
	.globl	apupd_15
	.globl	apupd_16
	.globl	apupd_17
	.globl	apupd_18
	.globl	apupd_19
	.globl	apupd_20
	.globl	apupd_21
	.globl	apupd_22
	.globl	apupd_23
	.globl	apupd_24
	.globl	apupd_25
	.globl	apupd_26
	.globl	apupd_27
	.globl	apupd_28
	.globl	apupd_29
	.globl	apupd_30
	.globl	apupd_31
	.globl	apupd_32
	.globl	e__system__nind

apupd_1:
	ldr	SCRATCH_REG,[sp]
	lao	ASTACK_2,apupd_upd,0
	otoa	ASTACK_2,apupd_upd,0
	cmp	SCRATCH_REG,ASTACK_2
	lao	ASTACK_2,ap_1,0
	bne	ap_upd

	ldr	ASTACK_2,[ASTACK_PTR,#-4]
	ldr	BSTACK_0,[ASTACK_PTR,#-8]
	lao	SCRATCH_REG,e__system__nind,23
	subs	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,e__system__nind,23
	str	SCRATCH_REG,[ASTACK_2]
	str	BSTACK_0,[ASTACK_2,#4]
ap_1:
	ldr	ASTACK_2,[ASTACK_1]
	ldr	SCRATCH_REG,[ASTACK_2,#2]
	bx	SCRATCH_REG

apupd_2:
	ldr	SCRATCH_REG,[sp]
	lao	ASTACK_2,apupd_upd,1
	otoa	ASTACK_2,apupd_upd,1
	cmp	SCRATCH_REG,ASTACK_2
	lao	ASTACK_2,ap_2,0
	bne	ap_upd

	ldr	ASTACK_2,[ASTACK_PTR,#-8]
	ldr	BSTACK_0,[ASTACK_PTR,#-12]
	ldr	BSTACK_1,[ASTACK_PTR,#-4]
	str	BSTACK_1,[ASTACK_PTR,#-8]
	lao	SCRATCH_REG,e__system__nind,24
	subs	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,e__system__nind,24
	str	SCRATCH_REG,[ASTACK_2]
	str	BSTACK_0,[ASTACK_2,#4]
	b	ap_2

apupd_3:
	ldr	SCRATCH_REG,[sp]
	lao	ASTACK_2,apupd_upd,2
	otoa	ASTACK_2,apupd_upd,2
	cmp	SCRATCH_REG,ASTACK_2
	lao	ASTACK_2,ap_3,0
	bne	ap_upd

	ldr	ASTACK_2,[ASTACK_PTR,#-12]
	ldr	BSTACK_0,[ASTACK_PTR,#-16]
	ldr	BSTACK_1,[ASTACK_PTR,#-8]
	str	BSTACK_1,[ASTACK_PTR,#-12]
	ldr	BSTACK_1,[ASTACK_PTR,#-4]
	str	BSTACK_1,[ASTACK_PTR,#-8]
	lao	SCRATCH_REG,e__system__nind,25
	subs	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,e__system__nind,25
	str	SCRATCH_REG,[ASTACK_2]
	str	BSTACK_0,[ASTACK_2,#4]
	b	ap_3

apupd_4:
	ldr	SCRATCH_REG,[sp]
	lao	ASTACK_2,apupd_upd,3
	otoa	ASTACK_2,apupd_upd,3
	cmp	SCRATCH_REG,ASTACK_2
	lao	ASTACK_2,ap_4,0
	bne	ap_upd

	ldr	ASTACK_2,[ASTACK_PTR,#-16]
	ldr	BSTACK_0,[ASTACK_PTR,#-20]
	ldr	BSTACK_1,[ASTACK_PTR,#-12]
	str	BSTACK_1,[ASTACK_PTR,#-16]
	ldr	BSTACK_1,[ASTACK_PTR,#-8]
	str	BSTACK_1,[ASTACK_PTR,#-12]
	ldr	BSTACK_1,[ASTACK_PTR,#-4]
	str	BSTACK_1,[ASTACK_PTR,#-8]
	lao	SCRATCH_REG,e__system__nind,26
	subs	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,e__system__nind,26
	str	SCRATCH_REG,[ASTACK_2]
	str	BSTACK_0,[ASTACK_2,#4]
	b	ap_4

apupd_5:
	ldr	SCRATCH_REG,[sp]
	lao	ASTACK_2,apupd_upd,4
	otoa	ASTACK_2,apupd_upd,4
	cmp	SCRATCH_REG,ASTACK_2
	lao	ASTACK_2,ap_5,0
	bne	ap_upd

	ldr	ASTACK_2,[ASTACK_PTR,#-20]
	ldr	BSTACK_0,[ASTACK_PTR,#-24]
	ldr	BSTACK_1,[ASTACK_PTR,#-16]
	str	BSTACK_1,[ASTACK_PTR,#-20]
	ldr	BSTACK_1,[ASTACK_PTR,#-12]
	str	BSTACK_1,[ASTACK_PTR,#-16]
	ldr	BSTACK_1,[ASTACK_PTR,#-8]
	str	BSTACK_1,[ASTACK_PTR,#-12]
	ldr	BSTACK_1,[ASTACK_PTR,#-4]
	str	BSTACK_1,[ASTACK_PTR,#-8]
	lao	SCRATCH_REG,e__system__nind,27
	subs	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,e__system__nind,27
	str	SCRATCH_REG,[ASTACK_2]
	str	BSTACK_0,[ASTACK_2,#4]
	b	ap_5

apupd_6:
	ldr	SCRATCH_REG,[sp]
	lao	ASTACK_2,apupd_upd,5
	otoa	ASTACK_2,apupd_upd,5
	cmp	SCRATCH_REG,ASTACK_2
	lao	ASTACK_2,ap_6,0
	bne	ap_upd

	ldr	ASTACK_2,[ASTACK_PTR,#-24]
	ldr	BSTACK_0,[ASTACK_PTR,#-28]
	ldr	BSTACK_1,[ASTACK_PTR,#-20]
	str	BSTACK_1,[ASTACK_PTR,#-24]
	ldr	BSTACK_1,[ASTACK_PTR,#-16]
	str	BSTACK_1,[ASTACK_PTR,#-20]
	ldr	BSTACK_1,[ASTACK_PTR,#-12]
	str	BSTACK_1,[ASTACK_PTR,#-16]
	ldr	BSTACK_1,[ASTACK_PTR,#-8]
	str	BSTACK_1,[ASTACK_PTR,#-12]
	ldr	BSTACK_1,[ASTACK_PTR,#-4]
	str	BSTACK_1,[ASTACK_PTR,#-8]
	lao	SCRATCH_REG,e__system__nind,28
	subs	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,e__system__nind,28
	str	SCRATCH_REG,[ASTACK_2]
	str	BSTACK_0,[ASTACK_2,#4]
	b	ap_6

apupd_7:
	ldr	SCRATCH_REG,[sp]
	lao	ASTACK_2,apupd_upd,6
	otoa	ASTACK_2,apupd_upd,6
	cmp	SCRATCH_REG,ASTACK_2
	lao	ASTACK_2,ap_7,0
	bne	ap_upd

	ldr	ASTACK_2,[ASTACK_PTR,#-28]
	ldr	BSTACK_0,[ASTACK_PTR,#-32]
	.align
	add	lr,pc,#9
	str	lr,[sp,#-4]!
	bl	move_8
	lao	SCRATCH_REG,e__system__nind,29
	subs	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,e__system__nind,29
	str	SCRATCH_REG,[ASTACK_2]
	str	BSTACK_0,[ASTACK_2,#4]
	b	ap_7

apupd_8:
	ldr	SCRATCH_REG,[sp]
	lao	ASTACK_2,apupd_upd,7
	otoa	ASTACK_2,apupd_upd,7
	cmp	SCRATCH_REG,ASTACK_2
	lao	ASTACK_2,ap_8,0
	bne	ap_upd

	ldr	ASTACK_2,[ASTACK_PTR,#-32]
	ldr	BSTACK_0,[ASTACK_PTR,#-36]
	.align
	add	lr,pc,#9
	str	lr,[sp,#-4]!
	bl	move_9
	lao	SCRATCH_REG,e__system__nind,30
	subs	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,e__system__nind,30
	str	SCRATCH_REG,[ASTACK_2]
	str	BSTACK_0,[ASTACK_2,#4]
	b	ap_8

apupd_9:
	ldr	SCRATCH_REG,[sp]
	lao	ASTACK_2,apupd_upd,8
	otoa	ASTACK_2,apupd_upd,8
	cmp	SCRATCH_REG,ASTACK_2
	lao	ASTACK_2,ap_9,0
	bne	ap_upd

	ldr	ASTACK_2,[ASTACK_PTR,#-36]
	ldr	BSTACK_0,[ASTACK_PTR,#-40]
	.align
	add	lr,pc,#9
	str	lr,[sp,#-4]!
	bl	move_10
	lao	SCRATCH_REG,e__system__nind,31
	subs	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,e__system__nind,31
	str	SCRATCH_REG,[ASTACK_2]
	str	BSTACK_0,[ASTACK_2,#4]
	b	ap_9

apupd_10:
	ldr	SCRATCH_REG,[sp]
	lao	ASTACK_2,apupd_upd,9
	otoa	ASTACK_2,apupd_upd,9
	cmp	SCRATCH_REG,ASTACK_2
	lao	ASTACK_2,ap_10,0
	bne	ap_upd

	ldr	ASTACK_2,[ASTACK_PTR,#-40]
	ldr	BSTACK_0,[ASTACK_PTR,#-44]
	.align
	add	lr,pc,#9
	str	lr,[sp,#-4]!
	bl	move_11
	lao	SCRATCH_REG,e__system__nind,32
	subs	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,e__system__nind,32
	str	SCRATCH_REG,[ASTACK_2]
	str	BSTACK_0,[ASTACK_2,#4]
	b	ap_10

apupd_11:
	ldr	SCRATCH_REG,[sp]
	lao	ASTACK_2,apupd_upd,10
	otoa	ASTACK_2,apupd_upd,10
	cmp	SCRATCH_REG,ASTACK_2
	lao	ASTACK_2,ap_11,0
	bne	ap_upd

	ldr	ASTACK_2,[ASTACK_PTR,#-44]
	ldr	BSTACK_0,[ASTACK_PTR,#-48]
	.align
	add	lr,pc,#9
	str	lr,[sp,#-4]!
	bl	move_12
	lao	SCRATCH_REG,e__system__nind,33
	subs	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,e__system__nind,33
	str	SCRATCH_REG,[ASTACK_2]
	str	BSTACK_0,[ASTACK_2,#4]
	b	ap_11

apupd_12:
	ldr	SCRATCH_REG,[sp]
	lao	ASTACK_2,apupd_upd,11
	otoa	ASTACK_2,apupd_upd,11
	cmp	SCRATCH_REG,ASTACK_2
	lao	ASTACK_2,ap_12,0
	bne	ap_upd

	ldr	ASTACK_2,[ASTACK_PTR,#-48]
	ldr	BSTACK_0,[ASTACK_PTR,#-52]
	.align
	add	lr,pc,#9
	str	lr,[sp,#-4]!
	bl	move_13
	lao	SCRATCH_REG,e__system__nind,34
	subs	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,e__system__nind,34
	str	SCRATCH_REG,[ASTACK_2]
	str	BSTACK_0,[ASTACK_2,#4]
	b	ap_12

apupd_13:
	ldr	SCRATCH_REG,[sp]
	lao	ASTACK_2,apupd_upd,12
	otoa	ASTACK_2,apupd_upd,12
	cmp	SCRATCH_REG,ASTACK_2
	lao	ASTACK_2,ap_13,0
	bne	ap_upd

	ldr	ASTACK_2,[ASTACK_PTR,#-52]
	ldr	BSTACK_0,[ASTACK_PTR,#-56]
	.align
	add	lr,pc,#9
	str	lr,[sp,#-4]!
	bl	move_14
	lao	SCRATCH_REG,e__system__nind,35
	subs	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,e__system__nind,35
	str	SCRATCH_REG,[ASTACK_2]
	str	BSTACK_0,[ASTACK_2,#4]
	b	ap_13

apupd_14:
	ldr	SCRATCH_REG,[sp]
	lao	ASTACK_2,apupd_upd,13
	otoa	ASTACK_2,apupd_upd,13
	cmp	SCRATCH_REG,ASTACK_2
	lao	ASTACK_2,ap_14,0
	bne	ap_upd

	ldr	ASTACK_2,[ASTACK_PTR,#-56]
	ldr	BSTACK_0,[ASTACK_PTR,#-60]
	.align
	add	lr,pc,#9
	str	lr,[sp,#-4]!
	bl	move_15
	lao	SCRATCH_REG,e__system__nind,36
	subs	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,e__system__nind,36
	str	SCRATCH_REG,[ASTACK_2]
	str	BSTACK_0,[ASTACK_2,#4]
	b	ap_14

apupd_15:
	ldr	SCRATCH_REG,[sp]
	lao	ASTACK_2,apupd_upd,14
	otoa	ASTACK_2,apupd_upd,14
	cmp	SCRATCH_REG,ASTACK_2
	lao	ASTACK_2,ap_15,0
	bne	ap_upd

	ldr	ASTACK_2,[ASTACK_PTR,#-60]
	ldr	BSTACK_0,[ASTACK_PTR,#-64]
	.align
	add	lr,pc,#9
	str	lr,[sp,#-4]!
	bl	move_16
	lao	SCRATCH_REG,e__system__nind,37
	subs	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,e__system__nind,37
	str	SCRATCH_REG,[ASTACK_2]
	str	BSTACK_0,[ASTACK_2,#4]
	b	ap_15

apupd_16:
	ldr	SCRATCH_REG,[sp]
	lao	ASTACK_2,apupd_upd,15
	otoa	ASTACK_2,apupd_upd,15
	cmp	SCRATCH_REG,ASTACK_2
	lao	ASTACK_2,ap_16,0
	bne	ap_upd

	ldr	ASTACK_2,[ASTACK_PTR,#-64]
	ldr	BSTACK_0,[ASTACK_PTR,#-68]
	.align
	add	lr,pc,#9
	str	lr,[sp,#-4]!
	bl	move_17
	lao	SCRATCH_REG,e__system__nind,38
	subs	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,e__system__nind,38
	str	SCRATCH_REG,[ASTACK_2]
	str	BSTACK_0,[ASTACK_2,#4]
	b	ap_16

apupd_17:
	ldr	SCRATCH_REG,[sp]
	lao	ASTACK_2,apupd_upd,16
	otoa	ASTACK_2,apupd_upd,16
	cmp	SCRATCH_REG,ASTACK_2
	lao	ASTACK_2,ap_17,0
	bne	ap_upd

	ldr	ASTACK_2,[ASTACK_PTR,#-68]
	ldr	BSTACK_0,[ASTACK_PTR,#-72]
	.align
	add	lr,pc,#9
	str	lr,[sp,#-4]!
	bl	move_18
	lao	SCRATCH_REG,e__system__nind,39
	subs	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,e__system__nind,39
	str	SCRATCH_REG,[ASTACK_2]
	str	BSTACK_0,[ASTACK_2,#4]
	b	ap_17

apupd_18:
	ldr	SCRATCH_REG,[sp]
	lao	ASTACK_2,apupd_upd,17
	otoa	ASTACK_2,apupd_upd,17
	cmp	SCRATCH_REG,ASTACK_2
	lao	ASTACK_2,ap_18,0
	bne	ap_upd

	ldr	ASTACK_2,[ASTACK_PTR,#-72]
	ldr	BSTACK_0,[ASTACK_PTR,#-76]
	.align
	add	lr,pc,#9
	str	lr,[sp,#-4]!
	bl	move_19
	lao	SCRATCH_REG,e__system__nind,40
	subs	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,e__system__nind,40
	str	SCRATCH_REG,[ASTACK_2]
	str	BSTACK_0,[ASTACK_2,#4]
	b	ap_18

apupd_19:
	ldr	SCRATCH_REG,[sp]
	lao	ASTACK_2,apupd_upd,18
	otoa	ASTACK_2,apupd_upd,18
	cmp	SCRATCH_REG,ASTACK_2
	lao	ASTACK_2,ap_19,0
	bne	ap_upd

	ldr	ASTACK_2,[ASTACK_PTR,#-76]
	ldr	BSTACK_0,[ASTACK_PTR,#-80]
	.align
	add	lr,pc,#9
	str	lr,[sp,#-4]!
	bl	move_20
	lao	SCRATCH_REG,e__system__nind,41
	subs	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,e__system__nind,41
	str	SCRATCH_REG,[ASTACK_2]
	str	BSTACK_0,[ASTACK_2,#4]
	b	ap_19

apupd_20:
	ldr	SCRATCH_REG,[sp]
	lao	ASTACK_2,apupd_upd,19
	otoa	ASTACK_2,apupd_upd,19
	cmp	SCRATCH_REG,ASTACK_2
	lao	ASTACK_2,ap_20,0
	bne	ap_upd

	ldr	ASTACK_2,[ASTACK_PTR,#-80]
	ldr	BSTACK_0,[ASTACK_PTR,#-84]
	.align
	add	lr,pc,#9
	str	lr,[sp,#-4]!
	bl	move_21
	lao	SCRATCH_REG,e__system__nind,42
	subs	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,e__system__nind,42
	str	SCRATCH_REG,[ASTACK_2]
	str	BSTACK_0,[ASTACK_2,#4]
	b	ap_20

apupd_21:
	ldr	SCRATCH_REG,[sp]
	lao	ASTACK_2,apupd_upd,20
	otoa	ASTACK_2,apupd_upd,20
	cmp	SCRATCH_REG,ASTACK_2
	lao	ASTACK_2,ap_21,0
	bne	ap_upd

	ldr	ASTACK_2,[ASTACK_PTR,#-84]
	ldr	BSTACK_0,[ASTACK_PTR,#-88]
	.align
	add	lr,pc,#9
	str	lr,[sp,#-4]!
	bl	move_22
	lao	SCRATCH_REG,e__system__nind,43
	subs	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,e__system__nind,43
	str	SCRATCH_REG,[ASTACK_2]
	str	BSTACK_0,[ASTACK_2,#4]
	b	ap_21

apupd_22:
	ldr	SCRATCH_REG,[sp]
	lao	ASTACK_2,apupd_upd,21
	otoa	ASTACK_2,apupd_upd,21
	cmp	SCRATCH_REG,ASTACK_2
	lao	ASTACK_2,ap_22,0
	bne	ap_upd

	ldr	ASTACK_2,[ASTACK_PTR,#-88]
	ldr	BSTACK_0,[ASTACK_PTR,#-92]
	.align
	add	lr,pc,#9
	str	lr,[sp,#-4]!
	bl	move_23
	lao	SCRATCH_REG,e__system__nind,44
	subs	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,e__system__nind,44
	str	SCRATCH_REG,[ASTACK_2]
	str	BSTACK_0,[ASTACK_2,#4]
	b	ap_22

apupd_23:
	ldr	SCRATCH_REG,[sp]
	lao	ASTACK_2,apupd_upd,22
	otoa	ASTACK_2,apupd_upd,22
	cmp	SCRATCH_REG,ASTACK_2
	lao	ASTACK_2,ap_23,0
	bne	ap_upd

	ldr	ASTACK_2,[ASTACK_PTR,#-92]
	ldr	BSTACK_0,[ASTACK_PTR,#-96]
	.align
	add	lr,pc,#9
	str	lr,[sp,#-4]!
	bl	move_24
	lao	SCRATCH_REG,e__system__nind,45
	subs	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,e__system__nind,45
	str	SCRATCH_REG,[ASTACK_2]
	str	BSTACK_0,[ASTACK_2,#4]
	b	ap_23

apupd_24:
	ldr	SCRATCH_REG,[sp]
	lao	ASTACK_2,apupd_upd,23
	otoa	ASTACK_2,apupd_upd,23
	cmp	SCRATCH_REG,ASTACK_2
	lao	ASTACK_2,ap_24,0
	bne	ap_upd

	ldr	ASTACK_2,[ASTACK_PTR,#-96]
	ldr	BSTACK_0,[ASTACK_PTR,#-100]
	.align
	add	lr,pc,#9
	str	lr,[sp,#-4]!
	bl	move_25
	lao	SCRATCH_REG,e__system__nind,46
	subs	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,e__system__nind,46
	str	SCRATCH_REG,[ASTACK_2]
	str	BSTACK_0,[ASTACK_2,#4]
	b	ap_24

apupd_25:
	ldr	SCRATCH_REG,[sp]
	lao	ASTACK_2,apupd_upd,24
	otoa	ASTACK_2,apupd_upd,24
	cmp	SCRATCH_REG,ASTACK_2
	lao	ASTACK_2,ap_25,0
	bne	ap_upd

	ldr	ASTACK_2,[ASTACK_PTR,#-100]
	ldr	BSTACK_0,[ASTACK_PTR,#-104]
	.align
	add	lr,pc,#9
	str	lr,[sp,#-4]!
	bl	move_26
	lao	SCRATCH_REG,e__system__nind,47
	subs	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,e__system__nind,47
	str	SCRATCH_REG,[ASTACK_2]
	str	BSTACK_0,[ASTACK_2,#4]
	b	ap_25

apupd_26:
	ldr	SCRATCH_REG,[sp]
	lao	ASTACK_2,apupd_upd,25
	otoa	ASTACK_2,apupd_upd,25
	cmp	SCRATCH_REG,ASTACK_2
	lao	ASTACK_2,ap_26,0
	bne	ap_upd

	ldr	ASTACK_2,[ASTACK_PTR,#-104]
	ldr	BSTACK_0,[ASTACK_PTR,#-108]
	.align
	add	lr,pc,#9
	str	lr,[sp,#-4]!
	bl	move_27
	lao	SCRATCH_REG,e__system__nind,48
	subs	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,e__system__nind,48
	str	SCRATCH_REG,[ASTACK_2]
	str	BSTACK_0,[ASTACK_2,#4]
	b	ap_26

apupd_27:
	ldr	SCRATCH_REG,[sp]
	lao	ASTACK_2,apupd_upd,26
	otoa	ASTACK_2,apupd_upd,26
	cmp	SCRATCH_REG,ASTACK_2
	lao	ASTACK_2,ap_27,0
	bne	ap_upd

	ldr	ASTACK_2,[ASTACK_PTR,#-108]
	ldr	BSTACK_0,[ASTACK_PTR,#-112]
	.align
	add	lr,pc,#9
	str	lr,[sp,#-4]!
	bl	move_28
	lao	SCRATCH_REG,e__system__nind,49
	subs	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,e__system__nind,49
	str	SCRATCH_REG,[ASTACK_2]
	str	BSTACK_0,[ASTACK_2,#4]
	b	ap_27

apupd_28:
	ldr	SCRATCH_REG,[sp]
	lao	ASTACK_2,apupd_upd,27
	otoa	ASTACK_2,apupd_upd,27
	cmp	SCRATCH_REG,ASTACK_2
	lao	ASTACK_2,ap_28,0
	bne	ap_upd

	ldr	ASTACK_2,[ASTACK_PTR,#-112]
	ldr	BSTACK_0,[ASTACK_PTR,#-116]
	.align
	add	lr,pc,#9
	str	lr,[sp,#-4]!
	bl	move_29
	lao	SCRATCH_REG,e__system__nind,50
	subs	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,e__system__nind,50
	str	SCRATCH_REG,[ASTACK_2]
	str	BSTACK_0,[ASTACK_2,#4]
	b	ap_28

apupd_29:
	ldr	SCRATCH_REG,[sp]
	lao	ASTACK_2,apupd_upd,28
	otoa	ASTACK_2,apupd_upd,28
	cmp	SCRATCH_REG,ASTACK_2
	lao	ASTACK_2,ap_29,0
	bne	ap_upd

	ldr	ASTACK_2,[ASTACK_PTR,#-116]
	ldr	BSTACK_0,[ASTACK_PTR,#-120]
	.align
	add	lr,pc,#9
	str	lr,[sp,#-4]!
	bl	move_30
	lao	SCRATCH_REG,e__system__nind,51
	subs	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,e__system__nind,51
	str	SCRATCH_REG,[ASTACK_2]
	str	BSTACK_0,[ASTACK_2,#4]
	b	ap_29

apupd_30:
	ldr	SCRATCH_REG,[sp]
	lao	ASTACK_2,apupd_upd,29
	otoa	ASTACK_2,apupd_upd,29
	cmp	SCRATCH_REG,ASTACK_2
	lao	ASTACK_2,ap_30,0
	bne	ap_upd

	ldr	ASTACK_2,[ASTACK_PTR,#-120]
	ldr	BSTACK_0,[ASTACK_PTR,#-124]
	.align
	add	lr,pc,#9
	str	lr,[sp,#-4]!
	bl	move_31
	lao	SCRATCH_REG,e__system__nind,52
	subs	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,e__system__nind,52
	str	SCRATCH_REG,[ASTACK_2]
	str	BSTACK_0,[ASTACK_2,#4]
	b	ap_30

apupd_31:
	ldr	SCRATCH_REG,[sp]
	lao	ASTACK_2,apupd_upd,30
	otoa	ASTACK_2,apupd_upd,30
	cmp	SCRATCH_REG,ASTACK_2
	lao	ASTACK_2,ap_31,0
	bne	ap_upd

	ldr	ASTACK_2,[ASTACK_PTR,#-124]
	ldr	BSTACK_0,[ASTACK_PTR,#-128]
	.align
	add	lr,pc,#9
	str	lr,[sp,#-4]!
	bl	move_32
	lao	SCRATCH_REG,e__system__nind,53
	subs	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,e__system__nind,53
	str	SCRATCH_REG,[ASTACK_2]
	str	BSTACK_0,[ASTACK_2,#4]
	b	ap_31

apupd_32:
	ldr	SCRATCH_REG,[sp]
	lao	ASTACK_2,apupd_upd,31
	otoa	ASTACK_2,apupd_upd,31
	cmp	SCRATCH_REG,ASTACK_2
	lao	ASTACK_2,ap_32,0
	bne	ap_upd

	ldr	ASTACK_2,[ASTACK_PTR,#-128]
	ldr	BSTACK_0,[ASTACK_PTR,#-132]
	.align
	add	lr,pc,#9
	str	lr,[sp,#-4]!
	bl	move_33
	lao	SCRATCH_REG,e__system__nind,54
	subs	ASTACK_PTR,ASTACK_PTR,#4
	otoa	SCRATCH_REG,e__system__nind,54
	str	SCRATCH_REG,[ASTACK_2]
	str	BSTACK_0,[ASTACK_2,#4]
	b	ap_32

ap_upd:
.ifdef PIC
ap_1__u0:
ap_2__u0:
ap_3__u0:
ap_4__u0:
ap_5__u0:
ap_6__u0:
ap_7__u0:
ap_8__u0:
ap_9__u0:
ap_10__u0:
ap_11__u0:
ap_12__u0:
ap_13__u0:
ap_14__u0:
ap_15__u0:
ap_16__u0:
ap_17__u0:
ap_18__u0:
ap_19__u0:
ap_20__u0:
ap_21__u0:
ap_22__u0:
ap_23__u0:
ap_24__u0:
ap_25__u0:
ap_26__u0:
ap_27__u0:
ap_28__u0:
ap_29__u0:
ap_30__u0:
ap_31__u0:
ap_32__u0:
	add	ASTACK_2,ASTACK_2,pc
.endif
	.align
	add	lr,pc,#7
	str	lr,[sp,#-4]!
	blx	ASTACK_2
apupd_upd:
	ldr	ASTACK_1,[ASTACK_PTR,#-4]
	subs	ASTACK_PTR,ASTACK_PTR,#4
	ldr	BSTACK_0,[ASTACK_0]
	str	BSTACK_0,[ASTACK_1]
	ldr	BSTACK_0,[ASTACK_0,#4]
	str	BSTACK_0,[ASTACK_1,#4]
	ldr	BSTACK_0,[ASTACK_0,#8]
	mov	ASTACK_0,ASTACK_1
	str	BSTACK_0,[ASTACK_1,#8]	
	ldr	pc,[sp],#4

move_33:
	ldr	BSTACK_1,[ASTACK_PTR,#-124]
	str	BSTACK_1,[ASTACK_PTR,#-128]
move_32:
	ldr	BSTACK_1,[ASTACK_PTR,#-120]
	str	BSTACK_1,[ASTACK_PTR,#-124]
move_31:
	ldr	BSTACK_1,[ASTACK_PTR,#-116]
	str	BSTACK_1,[ASTACK_PTR,#-120]
move_30:
	ldr	BSTACK_1,[ASTACK_PTR,#-112]
	str	BSTACK_1,[ASTACK_PTR,#-116]
move_29:
	ldr	BSTACK_1,[ASTACK_PTR,#-108]
	str	BSTACK_1,[ASTACK_PTR,#-112]
move_28:
	ldr	BSTACK_1,[ASTACK_PTR,#-104]
	str	BSTACK_1,[ASTACK_PTR,#-108]
move_27:
	ldr	BSTACK_1,[ASTACK_PTR,#-100]
	str	BSTACK_1,[ASTACK_PTR,#-104]
move_26:
	ldr	BSTACK_1,[ASTACK_PTR,#-96]
	str	BSTACK_1,[ASTACK_PTR,#-100]
move_25:
	ldr	BSTACK_1,[ASTACK_PTR,#-92]
	str	BSTACK_1,[ASTACK_PTR,#-96]
move_24:
	ldr	BSTACK_1,[ASTACK_PTR,#-88]
	str	BSTACK_1,[ASTACK_PTR,#-92]
move_23:
	ldr	BSTACK_1,[ASTACK_PTR,#-84]
	str	BSTACK_1,[ASTACK_PTR,#-88]
move_22:
	ldr	BSTACK_1,[ASTACK_PTR,#-80]
	str	BSTACK_1,[ASTACK_PTR,#-84]
move_21:
	ldr	BSTACK_1,[ASTACK_PTR,#-76]
	str	BSTACK_1,[ASTACK_PTR,#-80]
move_20:
	ldr	BSTACK_1,[ASTACK_PTR,#-72]
	str	BSTACK_1,[ASTACK_PTR,#-76]
move_19:
	ldr	BSTACK_1,[ASTACK_PTR,#-68]
	str	BSTACK_1,[ASTACK_PTR,#-72]
move_18:
	ldr	BSTACK_1,[ASTACK_PTR,#-64]
	str	BSTACK_1,[ASTACK_PTR,#-68]
move_17:
	ldr	BSTACK_1,[ASTACK_PTR,#-60]
	str	BSTACK_1,[ASTACK_PTR,#-64]
move_16:
	ldr	BSTACK_1,[ASTACK_PTR,#-56]
	str	BSTACK_1,[ASTACK_PTR,#-60]
move_15:
	ldr	BSTACK_1,[ASTACK_PTR,#-52]
	str	BSTACK_1,[ASTACK_PTR,#-56]
move_14:
	ldr	BSTACK_1,[ASTACK_PTR,#-48]
	str	BSTACK_1,[ASTACK_PTR,#-52]
move_13:
	ldr	BSTACK_1,[ASTACK_PTR,#-44]
	str	BSTACK_1,[ASTACK_PTR,#-48]
move_12:
	ldr	BSTACK_1,[ASTACK_PTR,#-40]
	str	BSTACK_1,[ASTACK_PTR,#-44]
move_11:
	ldr	BSTACK_1,[ASTACK_PTR,#-36]
	str	BSTACK_1,[ASTACK_PTR,#-40]
move_10:
	ldr	BSTACK_1,[ASTACK_PTR,#-32]
	str	BSTACK_1,[ASTACK_PTR,#-36]
move_9:
	ldr	BSTACK_1,[ASTACK_PTR,#-28]
	str	BSTACK_1,[ASTACK_PTR,#-32]
move_8:
	ldr	BSTACK_1,[ASTACK_PTR,#-24]
	str	BSTACK_1,[ASTACK_PTR,#-28]
move_7:
	ldr	BSTACK_1,[ASTACK_PTR,#-20]
	str	BSTACK_1,[ASTACK_PTR,#-24]
	ldr	BSTACK_1,[ASTACK_PTR,#-16]
	str	BSTACK_1,[ASTACK_PTR,#-20]
	ldr	BSTACK_1,[ASTACK_PTR,#-12]
	str	BSTACK_1,[ASTACK_PTR,#-16]
	ldr	BSTACK_1,[ASTACK_PTR,#-8]
	str	BSTACK_1,[ASTACK_PTR,#-12]
	ldr	BSTACK_1,[ASTACK_PTR,#-4]
	str	BSTACK_1,[ASTACK_PTR,#-8]
	ldr	pc,[sp],#4

.ifdef PIC
	lto	apupd_upd,0
	lto	ap_1,0
	lto	e__system__nind,23
	lto	apupd_upd,1
	lto	ap_2,0
	lto	e__system__nind,24
	lto	apupd_upd,2
	lto	ap_3,0
	lto	e__system__nind,25
	lto	apupd_upd,3
	lto	ap_4,0
	lto	e__system__nind,26
	lto	apupd_upd,4
	lto	ap_5,0
	lto	e__system__nind,27
	lto	apupd_upd,5
	lto	ap_6,0
	lto	e__system__nind,28
	lto	apupd_upd,6
	lto	ap_7,0
	lto	e__system__nind,29
	lto	apupd_upd,7
	lto	ap_8,0
	lto	e__system__nind,30
	lto	apupd_upd,8
	lto	ap_9,0
	lto	e__system__nind,31
	lto	apupd_upd,9
	lto	ap_10,0
	lto	e__system__nind,32
	lto	apupd_upd,10
	lto	ap_11,0
	lto	e__system__nind,33
	lto	apupd_upd,11
	lto	ap_12,0
	lto	e__system__nind,34
	lto	apupd_upd,12
	lto	ap_13,0
	lto	e__system__nind,35
	lto	apupd_upd,13
	lto	ap_14,0
	lto	e__system__nind,36
	lto	apupd_upd,14
	lto	ap_15,0
	lto	e__system__nind,37
	lto	apupd_upd,15
	lto	ap_16,0
	lto	e__system__nind,38
	lto	apupd_upd,16
	lto	ap_17,0
	lto	e__system__nind,39
	lto	apupd_upd,17
	lto	ap_18,0
	lto	e__system__nind,40
	lto	apupd_upd,18
	lto	ap_19,0
	lto	e__system__nind,41
	lto	apupd_upd,19
	lto	ap_20,0
	lto	e__system__nind,42
	lto	apupd_upd,20
	lto	ap_21,0
	lto	e__system__nind,43
	lto	apupd_upd,21
	lto	ap_22,0
	lto	e__system__nind,44
	lto	apupd_upd,22
	lto	ap_23,0
	lto	e__system__nind,45
	lto	apupd_upd,23
	lto	ap_24,0
	lto	e__system__nind,46
	lto	apupd_upd,24
	lto	ap_25,0
	lto	e__system__nind,47
	lto	apupd_upd,25
	lto	ap_26,0
	lto	e__system__nind,48
	lto	apupd_upd,26
	lto	ap_27,0
	lto	e__system__nind,49
	lto	apupd_upd,27
	lto	ap_28,0
	lto	e__system__nind,50
	lto	apupd_upd,28
	lto	ap_29,0
	lto	e__system__nind,51
	lto	apupd_upd,29
	lto	ap_30,0
	lto	e__system__nind,52
	lto	apupd_upd,30
	lto	ap_31,0
	lto	e__system__nind,53
	lto	apupd_upd,31
	lto	ap_32,0
	lto	e__system__nind,54
.endif