	.file	"992632.c"
	.intel_syntax noprefix
	.text
	.section	.rodata
	.align 32
	.type	yysccsid, @object
	.size	yysccsid, 36
yysccsid:
	.string	"@(#)yaccpar\t1.9 (Berkeley) 02/21/93"
	.align 32
	.type	calc2_lhs, @object
	.size	calc2_lhs, 38
calc2_lhs:
	.value	-1
	.value	0
	.value	0
	.value	0
	.value	1
	.value	1
	.value	2
	.value	2
	.value	2
	.value	2
	.value	2
	.value	2
	.value	2
	.value	2
	.value	2
	.value	2
	.value	2
	.value	3
	.value	3
	.align 32
	.type	calc2_len, @object
	.size	calc2_len, 38
calc2_len:
	.value	2
	.value	0
	.value	3
	.value	3
	.value	1
	.value	3
	.value	3
	.value	3
	.value	3
	.value	3
	.value	3
	.value	3
	.value	3
	.value	3
	.value	2
	.value	1
	.value	1
	.value	1
	.value	2
	.align 32
	.type	calc2_defred, @object
	.size	calc2_defred, 66
calc2_defred:
	.value	1
	.value	0
	.value	0
	.value	17
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	3
	.value	0
	.value	15
	.value	14
	.value	0
	.value	2
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	18
	.value	0
	.value	6
	.value	0
	.value	0
	.value	0
	.value	0
	.value	9
	.value	10
	.value	11
	.align 8
	.type	calc2_dgoto, @object
	.size	calc2_dgoto, 8
calc2_dgoto:
	.value	1
	.value	7
	.value	8
	.value	9
	.align 32
	.type	calc2_sindex, @object
	.size	calc2_sindex, 66
calc2_sindex:
	.value	0
	.value	-40
	.value	-7
	.value	0
	.value	-55
	.value	-38
	.value	-38
	.value	1
	.value	-29
	.value	-247
	.value	0
	.value	-38
	.value	0
	.value	0
	.value	22
	.value	0
	.value	-38
	.value	-38
	.value	-38
	.value	-38
	.value	-38
	.value	-38
	.value	-38
	.value	0
	.value	-29
	.value	0
	.value	51
	.value	60
	.value	-20
	.value	-20
	.value	0
	.value	0
	.value	0
	.align 32
	.type	calc2_rindex, @object
	.size	calc2_rindex, 66
calc2_rindex:
	.value	0
	.value	0
	.value	0
	.value	0
	.value	2
	.value	0
	.value	0
	.value	0
	.value	9
	.value	-9
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	10
	.value	0
	.value	-6
	.value	14
	.value	5
	.value	13
	.value	0
	.value	0
	.value	0
	.align 8
	.type	calc2_gindex, @object
	.size	calc2_gindex, 8
calc2_gindex:
	.value	0
	.value	0
	.value	65
	.value	0
	.align 32
	.type	calc2_table, @object
	.size	calc2_table, 442
calc2_table:
	.value	6
	.value	16
	.value	6
	.value	10
	.value	13
	.value	5
	.value	11
	.value	5
	.value	22
	.value	17
	.value	23
	.value	15
	.value	15
	.value	20
	.value	18
	.value	7
	.value	19
	.value	22
	.value	21
	.value	4
	.value	5
	.value	0
	.value	20
	.value	8
	.value	12
	.value	0
	.value	0
	.value	21
	.value	16
	.value	16
	.value	0
	.value	0
	.value	16
	.value	16
	.value	16
	.value	13
	.value	16
	.value	0
	.value	16
	.value	15
	.value	15
	.value	0
	.value	0
	.value	7
	.value	15
	.value	15
	.value	7
	.value	15
	.value	7
	.value	15
	.value	7
	.value	8
	.value	12
	.value	0
	.value	8
	.value	12
	.value	8
	.value	0
	.value	8
	.value	22
	.value	17
	.value	0
	.value	0
	.value	25
	.value	20
	.value	18
	.value	0
	.value	19
	.value	0
	.value	21
	.value	13
	.value	14
	.value	0
	.value	0
	.value	0
	.value	0
	.value	24
	.value	0
	.value	0
	.value	0
	.value	0
	.value	26
	.value	27
	.value	28
	.value	29
	.value	30
	.value	31
	.value	32
	.value	22
	.value	17
	.value	0
	.value	0
	.value	0
	.value	20
	.value	18
	.value	16
	.value	19
	.value	22
	.value	21
	.value	0
	.value	0
	.value	0
	.value	20
	.value	18
	.value	0
	.value	19
	.value	0
	.value	21
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	16
	.value	0
	.value	0
	.value	13
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	15
	.value	0
	.value	0
	.value	7
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	8
	.value	12
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	16
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	0
	.value	2
	.value	3
	.value	4
	.value	3
	.value	12
	.align 32
	.type	calc2_check, @object
	.size	calc2_check, 442
calc2_check:
	.value	40
	.value	10
	.value	40
	.value	10
	.value	10
	.value	45
	.value	61
	.value	45
	.value	37
	.value	38
	.value	257
	.value	10
	.value	10
	.value	42
	.value	43
	.value	10
	.value	45
	.value	37
	.value	47
	.value	10
	.value	10
	.value	-1
	.value	42
	.value	10
	.value	10
	.value	-1
	.value	-1
	.value	47
	.value	37
	.value	38
	.value	-1
	.value	-1
	.value	41
	.value	42
	.value	43
	.value	41
	.value	45
	.value	-1
	.value	47
	.value	37
	.value	38
	.value	-1
	.value	-1
	.value	38
	.value	42
	.value	43
	.value	41
	.value	45
	.value	43
	.value	47
	.value	45
	.value	38
	.value	38
	.value	-1
	.value	41
	.value	41
	.value	43
	.value	-1
	.value	45
	.value	37
	.value	38
	.value	-1
	.value	-1
	.value	41
	.value	42
	.value	43
	.value	-1
	.value	45
	.value	-1
	.value	47
	.value	5
	.value	6
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	11
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	16
	.value	17
	.value	18
	.value	19
	.value	20
	.value	21
	.value	22
	.value	37
	.value	38
	.value	-1
	.value	-1
	.value	-1
	.value	42
	.value	43
	.value	124
	.value	45
	.value	37
	.value	47
	.value	-1
	.value	-1
	.value	-1
	.value	42
	.value	43
	.value	-1
	.value	45
	.value	-1
	.value	47
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	124
	.value	-1
	.value	-1
	.value	124
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	124
	.value	-1
	.value	-1
	.value	124
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	124
	.value	124
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	124
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	-1
	.value	256
	.value	257
	.value	258
	.value	257
	.value	258
	.globl	calc2_debug
	.bss
	.align 4
	.type	calc2_debug, @object
	.size	calc2_debug, 4
calc2_debug:
	.zero	4
	.globl	calc2_nerrs
	.align 4
	.type	calc2_nerrs, @object
	.size	calc2_nerrs, 4
calc2_nerrs:
	.zero	4
	.globl	calc2_errflag
	.align 4
	.type	calc2_errflag, @object
	.size	calc2_errflag, 4
calc2_errflag:
	.zero	4
	.globl	calc2_char
	.align 4
	.type	calc2_char, @object
	.size	calc2_char, 4
calc2_char:
	.zero	4
	.globl	calc2_val
	.align 4
	.type	calc2_val, @object
	.size	calc2_val, 4
calc2_val:
	.zero	4
	.globl	calc2_lval
	.align 4
	.type	calc2_lval, @object
	.size	calc2_lval, 4
calc2_lval:
	.zero	4
	.local	yystack
	.comm	yystack,48,32
	.text
	.globl	main
	.type	main, @function
main:
.LFB0:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	add	rsp, -128
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	DWORD PTR -116[rbp], 10
	jmp	.L2
.L3:
	lea	rdx, -116[rbp]
	lea	rax, -112[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	calc2_parse
.L2:
	mov	rax, QWORD PTR stdin[rip]
	mov	rdi, rax
	call	feof@PLT
	test	eax, eax
	je	.L3
	mov	eax, 0
	mov	rcx, QWORD PTR -8[rbp]
	sub	rcx, QWORD PTR fs:40
	je	.L5
	call	__stack_chk_fail@PLT
.L5:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE0:
	.size	main, .-main
	.section	.rodata
.LC0:
	.string	"%s\n"
	.text
	.type	calc2_error, @function
calc2_error:
.LFB1:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	QWORD PTR -24[rbp], rdx
	mov	rax, QWORD PTR stderr[rip]
	mov	rdx, QWORD PTR -24[rbp]
	lea	rsi, .LC0[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE1:
	.size	calc2_error, .-calc2_error
	.globl	calc2_lex
	.type	calc2_lex, @function
calc2_lex:
.LFB2:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	nop
.L8:
	call	getchar@PLT
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], 32
	je	.L8
	call	__ctype_b_loc@PLT
	mov	rdx, QWORD PTR [rax]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movzx	eax, WORD PTR [rax]
	movzx	eax, ax
	and	eax, 512
	test	eax, eax
	je	.L9
	mov	eax, DWORD PTR -4[rbp]
	sub	eax, 97
	mov	DWORD PTR calc2_lval[rip], eax
	mov	eax, 258
	jmp	.L10
.L9:
	call	__ctype_b_loc@PLT
	mov	rdx, QWORD PTR [rax]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	add	rax, rax
	add	rax, rdx
	movzx	eax, WORD PTR [rax]
	movzx	eax, ax
	and	eax, 2048
	test	eax, eax
	je	.L11
	mov	eax, DWORD PTR -4[rbp]
	lea	edx, -48[rax]
	mov	rax, QWORD PTR -24[rbp]
	mov	ecx, DWORD PTR [rax]
	mov	eax, edx
	cdq
	idiv	ecx
	mov	eax, edx
	mov	DWORD PTR calc2_lval[rip], eax
	mov	eax, 257
	jmp	.L10
.L11:
	mov	eax, DWORD PTR -4[rbp]
.L10:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE2:
	.size	calc2_lex, .-calc2_lex
	.type	yygrowstack, @function
yygrowstack:
.LFB9:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	QWORD PTR -40[rbp], rdi
	mov	rax, QWORD PTR -40[rbp]
	mov	eax, DWORD PTR [rax]
	mov	DWORD PTR -24[rbp], eax
	cmp	DWORD PTR -24[rbp], 0
	jne	.L13
	mov	DWORD PTR -24[rbp], 200
	jmp	.L14
.L13:
	cmp	DWORD PTR -24[rbp], 9999
	jbe	.L15
	mov	eax, -1
	jmp	.L16
.L15:
	sal	DWORD PTR -24[rbp]
	cmp	DWORD PTR -24[rbp], 10000
	jbe	.L14
	mov	DWORD PTR -24[rbp], 10000
.L14:
	mov	rax, QWORD PTR -40[rbp]
	mov	rdx, QWORD PTR 16[rax]
	mov	rax, QWORD PTR -40[rbp]
	mov	rcx, QWORD PTR 8[rax]
	mov	rax, rdx
	sub	rax, rcx
	sar	rax
	mov	DWORD PTR -20[rbp], eax
	mov	eax, DWORD PTR -24[rbp]
	lea	rdx, [rax+rax]
	mov	rax, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR 8[rax]
	mov	rsi, rdx
	mov	rdi, rax
	call	realloc@PLT
	mov	QWORD PTR -16[rbp], rax
	cmp	QWORD PTR -16[rbp], 0
	jne	.L17
	mov	eax, -1
	jmp	.L16
.L17:
	mov	rax, QWORD PTR -40[rbp]
	mov	rdx, QWORD PTR -16[rbp]
	mov	QWORD PTR 8[rax], rdx
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	lea	rdx, [rax+rax]
	mov	rax, QWORD PTR -16[rbp]
	add	rdx, rax
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR 16[rax], rdx
	mov	eax, DWORD PTR -24[rbp]
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -40[rbp]
	mov	rax, QWORD PTR 32[rax]
	mov	rsi, rdx
	mov	rdi, rax
	call	realloc@PLT
	mov	QWORD PTR -8[rbp], rax
	cmp	QWORD PTR -8[rbp], 0
	jne	.L18
	mov	eax, -1
	jmp	.L16
.L18:
	mov	rax, QWORD PTR -40[rbp]
	mov	rdx, QWORD PTR -8[rbp]
	mov	QWORD PTR 32[rax], rdx
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -8[rbp]
	add	rdx, rax
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR 40[rax], rdx
	mov	rax, QWORD PTR -40[rbp]
	mov	edx, DWORD PTR -24[rbp]
	mov	DWORD PTR [rax], edx
	mov	rax, QWORD PTR -40[rbp]
	mov	rdx, QWORD PTR 8[rax]
	mov	eax, DWORD PTR -24[rbp]
	add	rax, rax
	sub	rax, 2
	add	rdx, rax
	mov	rax, QWORD PTR -40[rbp]
	mov	QWORD PTR 24[rax], rdx
	mov	eax, 0
.L16:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE9:
	.size	yygrowstack, .-yygrowstack
	.section	.rodata
.LC1:
	.string	"syntax error"
.LC2:
	.string	"%d\n"
.LC3:
	.string	"yacc stack overflow"
	.text
	.globl	calc2_parse
	.type	calc2_parse, @function
calc2_parse:
.LFB10:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	DWORD PTR calc2_nerrs[rip], 0
	mov	DWORD PTR calc2_errflag[rip], 0
	mov	DWORD PTR calc2_char[rip], -1
	mov	DWORD PTR -8[rbp], 0
	mov	rax, QWORD PTR yystack[rip+8]
	test	rax, rax
	jne	.L20
	lea	rdi, yystack[rip]
	call	yygrowstack
	test	eax, eax
	jne	.L70
.L20:
	mov	rax, QWORD PTR yystack[rip+8]
	mov	QWORD PTR yystack[rip+16], rax
	mov	rax, QWORD PTR yystack[rip+32]
	mov	QWORD PTR yystack[rip+40], rax
	mov	DWORD PTR -8[rbp], 0
	mov	rax, QWORD PTR yystack[rip+16]
	mov	WORD PTR [rax], 0
.L22:
	mov	eax, DWORD PTR -8[rbp]
	cdqe
	lea	rdx, [rax+rax]
	lea	rax, calc2_defred[rip]
	movzx	eax, WORD PTR [rdx+rax]
	cwde
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], 0
	jne	.L71
	mov	eax, DWORD PTR calc2_char[rip]
	test	eax, eax
	jns	.L25
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	calc2_lex
	mov	DWORD PTR calc2_char[rip], eax
	mov	eax, DWORD PTR calc2_char[rip]
	test	eax, eax
	jns	.L25
	mov	DWORD PTR calc2_char[rip], 0
.L25:
	mov	eax, DWORD PTR -8[rbp]
	cdqe
	lea	rdx, [rax+rax]
	lea	rax, calc2_sindex[rip]
	movzx	eax, WORD PTR [rdx+rax]
	cwde
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], 0
	je	.L26
	mov	eax, DWORD PTR calc2_char[rip]
	add	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], 0
	js	.L26
	cmp	DWORD PTR -12[rbp], 220
	jg	.L26
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	lea	rdx, [rax+rax]
	lea	rax, calc2_check[rip]
	movzx	eax, WORD PTR [rdx+rax]
	movsx	edx, ax
	mov	eax, DWORD PTR calc2_char[rip]
	cmp	edx, eax
	jne	.L26
	mov	rdx, QWORD PTR yystack[rip+16]
	mov	rax, QWORD PTR yystack[rip+24]
	cmp	rdx, rax
	jb	.L27
	lea	rdi, yystack[rip]
	call	yygrowstack
	test	eax, eax
	jne	.L72
.L27:
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	lea	rdx, [rax+rax]
	lea	rax, calc2_table[rip]
	movzx	eax, WORD PTR [rdx+rax]
	cwde
	mov	DWORD PTR -8[rbp], eax
	mov	rax, QWORD PTR yystack[rip+16]
	add	rax, 2
	mov	QWORD PTR yystack[rip+16], rax
	mov	rax, QWORD PTR yystack[rip+16]
	mov	edx, DWORD PTR -12[rbp]
	movsx	rdx, edx
	lea	rcx, [rdx+rdx]
	lea	rdx, calc2_table[rip]
	movzx	edx, WORD PTR [rcx+rdx]
	mov	WORD PTR [rax], dx
	mov	rax, QWORD PTR yystack[rip+40]
	add	rax, 4
	mov	QWORD PTR yystack[rip+40], rax
	mov	rax, QWORD PTR yystack[rip+40]
	mov	edx, DWORD PTR calc2_lval[rip]
	mov	DWORD PTR [rax], edx
	mov	DWORD PTR calc2_char[rip], -1
	mov	eax, DWORD PTR calc2_errflag[rip]
	test	eax, eax
	jle	.L22
	mov	eax, DWORD PTR calc2_errflag[rip]
	sub	eax, 1
	mov	DWORD PTR calc2_errflag[rip], eax
	jmp	.L22
.L26:
	mov	eax, DWORD PTR -8[rbp]
	cdqe
	lea	rdx, [rax+rax]
	lea	rax, calc2_rindex[rip]
	movzx	eax, WORD PTR [rdx+rax]
	cwde
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], 0
	je	.L29
	mov	eax, DWORD PTR calc2_char[rip]
	add	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], 0
	js	.L29
	cmp	DWORD PTR -12[rbp], 220
	jg	.L29
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	lea	rdx, [rax+rax]
	lea	rax, calc2_check[rip]
	movzx	eax, WORD PTR [rdx+rax]
	movsx	edx, ax
	mov	eax, DWORD PTR calc2_char[rip]
	cmp	edx, eax
	jne	.L29
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	lea	rdx, [rax+rax]
	lea	rax, calc2_table[rip]
	movzx	eax, WORD PTR [rdx+rax]
	cwde
	mov	DWORD PTR -12[rbp], eax
	jmp	.L24
.L29:
	mov	eax, DWORD PTR calc2_errflag[rip]
	test	eax, eax
	jne	.L73
	mov	rcx, QWORD PTR -32[rbp]
	mov	rax, QWORD PTR -24[rbp]
	lea	rdx, .LC1[rip]
	mov	rsi, rcx
	mov	rdi, rax
	call	calc2_error
	nop
.L32:
	mov	eax, DWORD PTR calc2_nerrs[rip]
	add	eax, 1
	mov	DWORD PTR calc2_nerrs[rip], eax
	jmp	.L31
.L73:
	nop
.L31:
	mov	eax, DWORD PTR calc2_errflag[rip]
	cmp	eax, 2
	jg	.L33
	mov	DWORD PTR calc2_errflag[rip], 3
.L38:
	mov	rax, QWORD PTR yystack[rip+16]
	movzx	eax, WORD PTR [rax]
	cwde
	cdqe
	lea	rdx, [rax+rax]
	lea	rax, calc2_sindex[rip]
	movzx	eax, WORD PTR [rdx+rax]
	cwde
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], 0
	je	.L34
	add	DWORD PTR -12[rbp], 256
	cmp	DWORD PTR -12[rbp], 0
	js	.L34
	cmp	DWORD PTR -12[rbp], 220
	jg	.L34
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	lea	rdx, [rax+rax]
	lea	rax, calc2_check[rip]
	movzx	eax, WORD PTR [rdx+rax]
	cmp	ax, 256
	jne	.L34
	mov	rdx, QWORD PTR yystack[rip+16]
	mov	rax, QWORD PTR yystack[rip+24]
	cmp	rdx, rax
	jb	.L35
	lea	rdi, yystack[rip]
	call	yygrowstack
	test	eax, eax
	jne	.L74
.L35:
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	lea	rdx, [rax+rax]
	lea	rax, calc2_table[rip]
	movzx	eax, WORD PTR [rdx+rax]
	cwde
	mov	DWORD PTR -8[rbp], eax
	mov	rax, QWORD PTR yystack[rip+16]
	add	rax, 2
	mov	QWORD PTR yystack[rip+16], rax
	mov	rax, QWORD PTR yystack[rip+16]
	mov	edx, DWORD PTR -12[rbp]
	movsx	rdx, edx
	lea	rcx, [rdx+rdx]
	lea	rdx, calc2_table[rip]
	movzx	edx, WORD PTR [rcx+rdx]
	mov	WORD PTR [rax], dx
	mov	rax, QWORD PTR yystack[rip+40]
	add	rax, 4
	mov	QWORD PTR yystack[rip+40], rax
	mov	rax, QWORD PTR yystack[rip+40]
	mov	edx, DWORD PTR calc2_lval[rip]
	mov	DWORD PTR [rax], edx
	jmp	.L22
.L34:
	mov	rdx, QWORD PTR yystack[rip+16]
	mov	rax, QWORD PTR yystack[rip+8]
	cmp	rdx, rax
	jbe	.L75
	mov	rax, QWORD PTR yystack[rip+16]
	sub	rax, 2
	mov	QWORD PTR yystack[rip+16], rax
	mov	rax, QWORD PTR yystack[rip+40]
	sub	rax, 4
	mov	QWORD PTR yystack[rip+40], rax
	jmp	.L38
.L33:
	mov	eax, DWORD PTR calc2_char[rip]
	test	eax, eax
	je	.L76
	mov	DWORD PTR calc2_char[rip], -1
	jmp	.L22
.L71:
	nop
.L24:
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	lea	rdx, [rax+rax]
	lea	rax, calc2_len[rip]
	movzx	eax, WORD PTR [rdx+rax]
	cwde
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -4[rbp], 0
	je	.L40
	mov	rdx, QWORD PTR yystack[rip+40]
	mov	eax, 1
	sub	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 2
	add	rax, rdx
	mov	eax, DWORD PTR [rax]
	mov	DWORD PTR calc2_val[rip], eax
	jmp	.L41
.L40:
	mov	DWORD PTR calc2_val[rip], 0
.L41:
	mov	eax, DWORD PTR -12[rbp]
	sub	eax, 3
	cmp	eax, 15
	ja	.L42
	mov	eax, eax
	lea	rdx, 0[0+rax*4]
	lea	rax, .L44[rip]
	mov	eax, DWORD PTR [rdx+rax]
	cdqe
	lea	rdx, .L44[rip]
	add	rax, rdx
	notrack jmp	rax
	.section	.rodata
	.align 4
	.align 4
.L44:
	.long	.L58-.L44
	.long	.L57-.L44
	.long	.L56-.L44
	.long	.L55-.L44
	.long	.L54-.L44
	.long	.L53-.L44
	.long	.L52-.L44
	.long	.L51-.L44
	.long	.L50-.L44
	.long	.L49-.L44
	.long	.L48-.L44
	.long	.L47-.L44
	.long	.L46-.L44
	.long	.L42-.L44
	.long	.L45-.L44
	.long	.L43-.L44
	.text
.L58:
	mov	DWORD PTR calc2_errflag[rip], 0
	jmp	.L42
.L57:
	mov	rax, QWORD PTR yystack[rip+40]
	mov	eax, DWORD PTR [rax]
	mov	esi, eax
	lea	rdi, .LC2[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L42
.L56:
	mov	rax, QWORD PTR yystack[rip+40]
	mov	rdx, QWORD PTR yystack[rip+40]
	sub	rdx, 8
	mov	edx, DWORD PTR [rdx]
	movsx	rdx, edx
	lea	rcx, 0[0+rdx*4]
	mov	rdx, QWORD PTR -24[rbp]
	add	rdx, rcx
	mov	eax, DWORD PTR [rax]
	mov	DWORD PTR [rdx], eax
	jmp	.L42
.L55:
	mov	rax, QWORD PTR yystack[rip+40]
	mov	eax, DWORD PTR -4[rax]
	mov	DWORD PTR calc2_val[rip], eax
	jmp	.L42
.L54:
	mov	rax, QWORD PTR yystack[rip+40]
	sub	rax, 8
	mov	edx, DWORD PTR [rax]
	mov	rax, QWORD PTR yystack[rip+40]
	mov	eax, DWORD PTR [rax]
	add	eax, edx
	mov	DWORD PTR calc2_val[rip], eax
	jmp	.L42
.L53:
	mov	rax, QWORD PTR yystack[rip+40]
	sub	rax, 8
	mov	edx, DWORD PTR [rax]
	mov	rax, QWORD PTR yystack[rip+40]
	mov	ecx, DWORD PTR [rax]
	mov	eax, edx
	sub	eax, ecx
	mov	DWORD PTR calc2_val[rip], eax
	jmp	.L42
.L52:
	mov	rax, QWORD PTR yystack[rip+40]
	sub	rax, 8
	mov	edx, DWORD PTR [rax]
	mov	rax, QWORD PTR yystack[rip+40]
	mov	eax, DWORD PTR [rax]
	imul	eax, edx
	mov	DWORD PTR calc2_val[rip], eax
	jmp	.L42
.L51:
	mov	rax, QWORD PTR yystack[rip+40]
	sub	rax, 8
	mov	eax, DWORD PTR [rax]
	mov	rdx, QWORD PTR yystack[rip+40]
	mov	esi, DWORD PTR [rdx]
	cdq
	idiv	esi
	mov	DWORD PTR calc2_val[rip], eax
	jmp	.L42
.L50:
	mov	rax, QWORD PTR yystack[rip+40]
	sub	rax, 8
	mov	eax, DWORD PTR [rax]
	mov	rdx, QWORD PTR yystack[rip+40]
	mov	ecx, DWORD PTR [rdx]
	cdq
	idiv	ecx
	mov	eax, edx
	mov	DWORD PTR calc2_val[rip], eax
	jmp	.L42
.L49:
	mov	rax, QWORD PTR yystack[rip+40]
	sub	rax, 8
	mov	edx, DWORD PTR [rax]
	mov	rax, QWORD PTR yystack[rip+40]
	mov	eax, DWORD PTR [rax]
	and	eax, edx
	mov	DWORD PTR calc2_val[rip], eax
	jmp	.L42
.L48:
	mov	rax, QWORD PTR yystack[rip+40]
	sub	rax, 8
	mov	edx, DWORD PTR [rax]
	mov	rax, QWORD PTR yystack[rip+40]
	mov	eax, DWORD PTR [rax]
	or	eax, edx
	mov	DWORD PTR calc2_val[rip], eax
	jmp	.L42
.L47:
	mov	rax, QWORD PTR yystack[rip+40]
	mov	eax, DWORD PTR [rax]
	neg	eax
	mov	DWORD PTR calc2_val[rip], eax
	jmp	.L42
.L46:
	mov	rax, QWORD PTR yystack[rip+40]
	mov	eax, DWORD PTR [rax]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -24[rbp]
	add	rax, rdx
	mov	eax, DWORD PTR [rax]
	mov	DWORD PTR calc2_val[rip], eax
	jmp	.L42
.L45:
	mov	rax, QWORD PTR yystack[rip+40]
	mov	eax, DWORD PTR [rax]
	mov	DWORD PTR calc2_val[rip], eax
	mov	rax, QWORD PTR yystack[rip+40]
	mov	eax, DWORD PTR [rax]
	test	eax, eax
	jne	.L59
	mov	edx, 8
	jmp	.L60
.L59:
	mov	edx, 10
.L60:
	mov	rax, QWORD PTR -32[rbp]
	mov	DWORD PTR [rax], edx
	jmp	.L42
.L43:
	mov	rax, QWORD PTR -32[rbp]
	mov	edx, DWORD PTR [rax]
	mov	rax, QWORD PTR yystack[rip+40]
	sub	rax, 4
	mov	eax, DWORD PTR [rax]
	imul	edx, eax
	mov	rax, QWORD PTR yystack[rip+40]
	mov	eax, DWORD PTR [rax]
	add	eax, edx
	mov	DWORD PTR calc2_val[rip], eax
	nop
.L42:
	mov	rdx, QWORD PTR yystack[rip+16]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	add	rax, rax
	neg	rax
	add	rax, rdx
	mov	QWORD PTR yystack[rip+16], rax
	mov	rax, QWORD PTR yystack[rip+16]
	movzx	eax, WORD PTR [rax]
	cwde
	mov	DWORD PTR -8[rbp], eax
	mov	rdx, QWORD PTR yystack[rip+40]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	sal	rax, 2
	neg	rax
	add	rax, rdx
	mov	QWORD PTR yystack[rip+40], rax
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	lea	rdx, [rax+rax]
	lea	rax, calc2_lhs[rip]
	movzx	eax, WORD PTR [rdx+rax]
	cwde
	mov	DWORD PTR -4[rbp], eax
	cmp	DWORD PTR -8[rbp], 0
	jne	.L61
	cmp	DWORD PTR -4[rbp], 0
	jne	.L61
	mov	DWORD PTR -8[rbp], 1
	mov	rax, QWORD PTR yystack[rip+16]
	add	rax, 2
	mov	QWORD PTR yystack[rip+16], rax
	mov	rax, QWORD PTR yystack[rip+16]
	mov	WORD PTR [rax], 1
	mov	rax, QWORD PTR yystack[rip+40]
	add	rax, 4
	mov	QWORD PTR yystack[rip+40], rax
	mov	rax, QWORD PTR yystack[rip+40]
	mov	edx, DWORD PTR calc2_val[rip]
	mov	DWORD PTR [rax], edx
	mov	eax, DWORD PTR calc2_char[rip]
	test	eax, eax
	jns	.L62
	mov	rax, QWORD PTR -32[rbp]
	mov	rdi, rax
	call	calc2_lex
	mov	DWORD PTR calc2_char[rip], eax
	mov	eax, DWORD PTR calc2_char[rip]
	test	eax, eax
	jns	.L62
	mov	DWORD PTR calc2_char[rip], 0
.L62:
	mov	eax, DWORD PTR calc2_char[rip]
	test	eax, eax
	je	.L77
	jmp	.L22
.L61:
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, [rax+rax]
	lea	rax, calc2_gindex[rip]
	movzx	eax, WORD PTR [rdx+rax]
	cwde
	mov	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], 0
	je	.L65
	mov	eax, DWORD PTR -8[rbp]
	add	DWORD PTR -12[rbp], eax
	cmp	DWORD PTR -12[rbp], 0
	js	.L65
	cmp	DWORD PTR -12[rbp], 220
	jg	.L65
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	lea	rdx, [rax+rax]
	lea	rax, calc2_check[rip]
	movzx	eax, WORD PTR [rdx+rax]
	cwde
	cmp	DWORD PTR -8[rbp], eax
	jne	.L65
	mov	eax, DWORD PTR -12[rbp]
	cdqe
	lea	rdx, [rax+rax]
	lea	rax, calc2_table[rip]
	movzx	eax, WORD PTR [rdx+rax]
	cwde
	mov	DWORD PTR -8[rbp], eax
	jmp	.L66
.L65:
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rdx, [rax+rax]
	lea	rax, calc2_dgoto[rip]
	movzx	eax, WORD PTR [rdx+rax]
	cwde
	mov	DWORD PTR -8[rbp], eax
.L66:
	mov	rdx, QWORD PTR yystack[rip+16]
	mov	rax, QWORD PTR yystack[rip+24]
	cmp	rdx, rax
	jb	.L67
	lea	rdi, yystack[rip]
	call	yygrowstack
	test	eax, eax
	jne	.L78
.L67:
	mov	rax, QWORD PTR yystack[rip+16]
	add	rax, 2
	mov	QWORD PTR yystack[rip+16], rax
	mov	rax, QWORD PTR yystack[rip+16]
	mov	edx, DWORD PTR -8[rbp]
	mov	WORD PTR [rax], dx
	mov	rax, QWORD PTR yystack[rip+40]
	add	rax, 4
	mov	QWORD PTR yystack[rip+40], rax
	mov	rax, QWORD PTR yystack[rip+40]
	mov	edx, DWORD PTR calc2_val[rip]
	mov	DWORD PTR [rax], edx
	jmp	.L22
.L70:
	nop
	jmp	.L21
.L72:
	nop
	jmp	.L21
.L74:
	nop
	jmp	.L21
.L78:
	nop
.L21:
	mov	rcx, QWORD PTR -32[rbp]
	mov	rax, QWORD PTR -24[rbp]
	lea	rdx, .LC3[rip]
	mov	rsi, rcx
	mov	rdi, rax
	call	calc2_error
	jmp	.L37
.L75:
	nop
	jmp	.L37
.L76:
	nop
.L37:
	mov	eax, 1
	jmp	.L68
.L77:
	nop
.L64:
	mov	eax, 0
.L68:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE10:
	.size	calc2_parse, .-calc2_parse
	.ident	"GCC: (Ubuntu 10.5.0-1ubuntu1~20.04) 10.5.0"
	.section	.note.GNU-stack,"",@progbits
	.section	.note.gnu.property,"a"
	.align 8
	.long	 1f - 0f
	.long	 4f - 1f
	.long	 5
0:
	.string	 "GNU"
1:
	.align 8
	.long	 0xc0000002
	.long	 3f - 2f
2:
	.long	 0x3
3:
	.align 8
4:

	.arch armv5t
	.eabi_attribute 20, 1
	.eabi_attribute 21, 1
	.eabi_attribute 23, 3
	.eabi_attribute 24, 1
	.eabi_attribute 25, 1
	.eabi_attribute 26, 2
	.eabi_attribute 30, 6
	.eabi_attribute 34, 0
	.eabi_attribute 18, 4
	.file	"992632.c"
	.text
	.section	.rodata
	.align	2
	.type	yysccsid, %object
	.size	yysccsid, 36
yysccsid:
	.ascii	"@(#)yaccpar\0111.9 (Berkeley) 02/21/93\000"
	.align	2
	.type	calc2_lhs, %object
	.size	calc2_lhs, 38
calc2_lhs:
	.short	-1
	.short	0
	.short	0
	.short	0
	.short	1
	.short	1
	.short	2
	.short	2
	.short	2
	.short	2
	.short	2
	.short	2
	.short	2
	.short	2
	.short	2
	.short	2
	.short	2
	.short	3
	.short	3
	.align	2
	.type	calc2_len, %object
	.size	calc2_len, 38
calc2_len:
	.short	2
	.short	0
	.short	3
	.short	3
	.short	1
	.short	3
	.short	3
	.short	3
	.short	3
	.short	3
	.short	3
	.short	3
	.short	3
	.short	3
	.short	2
	.short	1
	.short	1
	.short	1
	.short	2
	.align	2
	.type	calc2_defred, %object
	.size	calc2_defred, 66
calc2_defred:
	.short	1
	.short	0
	.short	0
	.short	17
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	3
	.short	0
	.short	15
	.short	14
	.short	0
	.short	2
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	18
	.short	0
	.short	6
	.short	0
	.short	0
	.short	0
	.short	0
	.short	9
	.short	10
	.short	11
	.align	2
	.type	calc2_dgoto, %object
	.size	calc2_dgoto, 8
calc2_dgoto:
	.short	1
	.short	7
	.short	8
	.short	9
	.align	2
	.type	calc2_sindex, %object
	.size	calc2_sindex, 66
calc2_sindex:
	.short	0
	.short	-40
	.short	-7
	.short	0
	.short	-55
	.short	-38
	.short	-38
	.short	1
	.short	-29
	.short	-247
	.short	0
	.short	-38
	.short	0
	.short	0
	.short	22
	.short	0
	.short	-38
	.short	-38
	.short	-38
	.short	-38
	.short	-38
	.short	-38
	.short	-38
	.short	0
	.short	-29
	.short	0
	.short	51
	.short	60
	.short	-20
	.short	-20
	.short	0
	.short	0
	.short	0
	.align	2
	.type	calc2_rindex, %object
	.size	calc2_rindex, 66
calc2_rindex:
	.short	0
	.short	0
	.short	0
	.short	0
	.short	2
	.short	0
	.short	0
	.short	0
	.short	9
	.short	-9
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	10
	.short	0
	.short	-6
	.short	14
	.short	5
	.short	13
	.short	0
	.short	0
	.short	0
	.align	2
	.type	calc2_gindex, %object
	.size	calc2_gindex, 8
calc2_gindex:
	.short	0
	.short	0
	.short	65
	.short	0
	.align	2
	.type	calc2_table, %object
	.size	calc2_table, 442
calc2_table:
	.short	6
	.short	16
	.short	6
	.short	10
	.short	13
	.short	5
	.short	11
	.short	5
	.short	22
	.short	17
	.short	23
	.short	15
	.short	15
	.short	20
	.short	18
	.short	7
	.short	19
	.short	22
	.short	21
	.short	4
	.short	5
	.short	0
	.short	20
	.short	8
	.short	12
	.short	0
	.short	0
	.short	21
	.short	16
	.short	16
	.short	0
	.short	0
	.short	16
	.short	16
	.short	16
	.short	13
	.short	16
	.short	0
	.short	16
	.short	15
	.short	15
	.short	0
	.short	0
	.short	7
	.short	15
	.short	15
	.short	7
	.short	15
	.short	7
	.short	15
	.short	7
	.short	8
	.short	12
	.short	0
	.short	8
	.short	12
	.short	8
	.short	0
	.short	8
	.short	22
	.short	17
	.short	0
	.short	0
	.short	25
	.short	20
	.short	18
	.short	0
	.short	19
	.short	0
	.short	21
	.short	13
	.short	14
	.short	0
	.short	0
	.short	0
	.short	0
	.short	24
	.short	0
	.short	0
	.short	0
	.short	0
	.short	26
	.short	27
	.short	28
	.short	29
	.short	30
	.short	31
	.short	32
	.short	22
	.short	17
	.short	0
	.short	0
	.short	0
	.short	20
	.short	18
	.short	16
	.short	19
	.short	22
	.short	21
	.short	0
	.short	0
	.short	0
	.short	20
	.short	18
	.short	0
	.short	19
	.short	0
	.short	21
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	16
	.short	0
	.short	0
	.short	13
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	15
	.short	0
	.short	0
	.short	7
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	8
	.short	12
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	16
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	0
	.short	2
	.short	3
	.short	4
	.short	3
	.short	12
	.align	2
	.type	calc2_check, %object
	.size	calc2_check, 442
calc2_check:
	.short	40
	.short	10
	.short	40
	.short	10
	.short	10
	.short	45
	.short	61
	.short	45
	.short	37
	.short	38
	.short	257
	.short	10
	.short	10
	.short	42
	.short	43
	.short	10
	.short	45
	.short	37
	.short	47
	.short	10
	.short	10
	.short	-1
	.short	42
	.short	10
	.short	10
	.short	-1
	.short	-1
	.short	47
	.short	37
	.short	38
	.short	-1
	.short	-1
	.short	41
	.short	42
	.short	43
	.short	41
	.short	45
	.short	-1
	.short	47
	.short	37
	.short	38
	.short	-1
	.short	-1
	.short	38
	.short	42
	.short	43
	.short	41
	.short	45
	.short	43
	.short	47
	.short	45
	.short	38
	.short	38
	.short	-1
	.short	41
	.short	41
	.short	43
	.short	-1
	.short	45
	.short	37
	.short	38
	.short	-1
	.short	-1
	.short	41
	.short	42
	.short	43
	.short	-1
	.short	45
	.short	-1
	.short	47
	.short	5
	.short	6
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	11
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	16
	.short	17
	.short	18
	.short	19
	.short	20
	.short	21
	.short	22
	.short	37
	.short	38
	.short	-1
	.short	-1
	.short	-1
	.short	42
	.short	43
	.short	124
	.short	45
	.short	37
	.short	47
	.short	-1
	.short	-1
	.short	-1
	.short	42
	.short	43
	.short	-1
	.short	45
	.short	-1
	.short	47
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	124
	.short	-1
	.short	-1
	.short	124
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	124
	.short	-1
	.short	-1
	.short	124
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	124
	.short	124
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	124
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	-1
	.short	256
	.short	257
	.short	258
	.short	257
	.short	258
	.comm	calc2_debug,4,4
	.comm	calc2_nerrs,4,4
	.comm	calc2_errflag,4,4
	.comm	calc2_char,4,4
	.comm	calc2_val,4,4
	.comm	calc2_lval,4,4
	.local	yystack
	.comm	yystack,24,4
	.align	2
.LC0:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	main
	.syntax unified
	.arm
	.fpu softvfp
	.type	main, %function
main:
	@ args = 0, pretend = 0, frame = 112
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #112
	ldr	r3, .L6
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	mov	r3, #10
	str	r3, [fp, #-116]
	b	.L2
.L3:
	sub	r2, fp, #116
	sub	r3, fp, #112
	mov	r1, r2
	mov	r0, r3
	bl	calc2_parse
.L2:
	ldr	r3, .L6+4
	ldr	r3, [r3]
	mov	r0, r3
	bl	feof
	mov	r3, r0
	cmp	r3, #0
	beq	.L3
	mov	r3, #0
	ldr	r2, .L6
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L5
	bl	__stack_chk_fail
.L5:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L7:
	.align	2
.L6:
	.word	.LC0
	.word	stdin
	.size	main, .-main
	.section	.rodata
	.align	2
.LC1:
	.ascii	"%s\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	calc2_error, %function
calc2_error:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	str	r2, [fp, #-16]
	ldr	r3, .L9
	ldr	r3, [r3]
	ldr	r2, [fp, #-16]
	ldr	r1, .L9+4
	mov	r0, r3
	bl	fprintf
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L10:
	.align	2
.L9:
	.word	stderr
	.word	.LC1
	.size	calc2_error, .-calc2_error
	.global	__aeabi_idivmod
	.align	2
	.global	calc2_lex
	.syntax unified
	.arm
	.fpu softvfp
	.type	calc2_lex, %function
calc2_lex:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #16
	str	r0, [fp, #-16]
	nop
.L12:
	bl	getchar
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #32
	beq	.L12
	bl	__ctype_b_loc
	mov	r3, r0
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrh	r3, [r3]
	and	r3, r3, #512
	cmp	r3, #0
	beq	.L13
	ldr	r3, [fp, #-8]
	sub	r3, r3, #97
	ldr	r2, .L16
	str	r3, [r2]
	ldr	r3, .L16+4
	b	.L14
.L13:
	bl	__ctype_b_loc
	mov	r3, r0
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrh	r3, [r3]
	and	r3, r3, #2048
	cmp	r3, #0
	beq	.L15
	ldr	r3, [fp, #-8]
	sub	r2, r3, #48
	ldr	r3, [fp, #-16]
	ldr	r3, [r3]
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_idivmod
	mov	r3, r1
	mov	r2, r3
	ldr	r3, .L16
	str	r2, [r3]
	ldr	r3, .L16+8
	b	.L14
.L15:
	ldr	r3, [fp, #-8]
.L14:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L17:
	.align	2
.L16:
	.word	calc2_lval
	.word	258
	.word	257
	.size	calc2_lex, .-calc2_lex
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	yygrowstack, %function
yygrowstack:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-24]
	ldr	r3, [fp, #-24]
	ldr	r3, [r3]
	str	r3, [fp, #-20]
	ldr	r3, [fp, #-20]
	cmp	r3, #0
	bne	.L19
	mov	r3, #200
	str	r3, [fp, #-20]
	b	.L20
.L19:
	ldr	r3, [fp, #-20]
	ldr	r2, .L25
	cmp	r3, r2
	bls	.L21
	mvn	r3, #0
	b	.L22
.L21:
	ldr	r3, [fp, #-20]
	lsl	r3, r3, #1
	str	r3, [fp, #-20]
	ldr	r3, [fp, #-20]
	ldr	r2, .L25+4
	cmp	r3, r2
	bls	.L20
	ldr	r3, .L25+4
	str	r3, [fp, #-20]
.L20:
	ldr	r3, [fp, #-24]
	ldr	r2, [r3, #8]
	ldr	r3, [fp, #-24]
	ldr	r3, [r3, #4]
	sub	r3, r2, r3
	asr	r3, r3, #1
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-24]
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-20]
	lsl	r3, r3, #1
	mov	r1, r3
	mov	r0, r2
	bl	realloc
	str	r0, [fp, #-12]
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	bne	.L23
	mvn	r3, #0
	b	.L22
.L23:
	ldr	r3, [fp, #-24]
	ldr	r2, [fp, #-12]
	str	r2, [r3, #4]
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #1
	ldr	r2, [fp, #-12]
	add	r2, r2, r3
	ldr	r3, [fp, #-24]
	str	r2, [r3, #8]
	ldr	r3, [fp, #-24]
	ldr	r2, [r3, #16]
	ldr	r3, [fp, #-20]
	lsl	r3, r3, #2
	mov	r1, r3
	mov	r0, r2
	bl	realloc
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bne	.L24
	mvn	r3, #0
	b	.L22
.L24:
	ldr	r3, [fp, #-24]
	ldr	r2, [fp, #-8]
	str	r2, [r3, #16]
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-8]
	add	r2, r2, r3
	ldr	r3, [fp, #-24]
	str	r2, [r3, #20]
	ldr	r3, [fp, #-24]
	ldr	r2, [fp, #-20]
	str	r2, [r3]
	ldr	r3, [fp, #-24]
	ldr	r2, [r3, #4]
	ldr	r3, [fp, #-20]
	sub	r3, r3, #-2147483647
	lsl	r3, r3, #1
	add	r2, r2, r3
	ldr	r3, [fp, #-24]
	str	r2, [r3, #12]
	mov	r3, #0
.L22:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L26:
	.align	2
.L25:
	.word	9999
	.word	10000
	.size	yygrowstack, .-yygrowstack
	.section	.rodata
	.align	2
.LC2:
	.ascii	"syntax error\000"
	.align	2
.LC3:
	.ascii	"%d\012\000"
	.global	__aeabi_idiv
	.align	2
.LC4:
	.ascii	"yacc stack overflow\000"
	.text
	.align	2
	.global	calc2_parse
	.syntax unified
	.arm
	.fpu softvfp
	.type	calc2_parse, %function
calc2_parse:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	str	r0, [fp, #-24]
	str	r1, [fp, #-28]
	ldr	r3, .L87
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L87+4
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L87+8
	mvn	r2, #0
	str	r2, [r3]
	mov	r3, #0
	str	r3, [fp, #-12]
	ldr	r3, .L87+12
	ldr	r3, [r3, #4]
	cmp	r3, #0
	bne	.L28
	ldr	r0, .L87+12
	bl	yygrowstack
	mov	r3, r0
	cmp	r3, #0
	bne	.L78
.L28:
	ldr	r3, .L87+12
	ldr	r3, [r3, #4]
	ldr	r2, .L87+12
	str	r3, [r2, #8]
	ldr	r3, .L87+12
	ldr	r3, [r3, #16]
	ldr	r2, .L87+12
	str	r3, [r2, #20]
	mov	r3, #0
	str	r3, [fp, #-12]
	ldr	r3, .L87+12
	ldr	r3, [r3, #8]
	mov	r2, #0
	strh	r2, [r3]	@ movhi
.L30:
	ldr	r2, .L87+16
	ldr	r3, [fp, #-12]
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrsh	r3, [r3]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	bne	.L79
	ldr	r3, .L87+8
	ldr	r3, [r3]
	cmp	r3, #0
	bge	.L33
	ldr	r0, [fp, #-28]
	bl	calc2_lex
	mov	r3, r0
	ldr	r2, .L87+8
	str	r3, [r2]
	ldr	r3, .L87+8
	ldr	r3, [r3]
	cmp	r3, #0
	bge	.L33
	ldr	r3, .L87+8
	mov	r2, #0
	str	r2, [r3]
.L33:
	ldr	r2, .L87+20
	ldr	r3, [fp, #-12]
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrsh	r3, [r3]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	beq	.L34
	ldr	r3, .L87+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	blt	.L34
	ldr	r3, [fp, #-16]
	cmp	r3, #220
	bgt	.L34
	ldr	r2, .L87+24
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrsh	r3, [r3]
	mov	r2, r3
	ldr	r3, .L87+8
	ldr	r3, [r3]
	cmp	r2, r3
	bne	.L34
	ldr	r3, .L87+12
	ldr	r2, [r3, #8]
	ldr	r3, .L87+12
	ldr	r3, [r3, #12]
	cmp	r2, r3
	bcc	.L35
	ldr	r0, .L87+12
	bl	yygrowstack
	mov	r3, r0
	cmp	r3, #0
	bne	.L80
.L35:
	ldr	r2, .L87+28
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrsh	r3, [r3]
	str	r3, [fp, #-12]
	ldr	r3, .L87+12
	ldr	r3, [r3, #8]
	add	r3, r3, #2
	ldr	r2, .L87+12
	str	r3, [r2, #8]
	ldr	r3, .L87+12
	ldr	r3, [r3, #8]
	ldr	r1, .L87+28
	ldr	r2, [fp, #-16]
	lsl	r2, r2, #1
	add	r2, r1, r2
	ldrsh	r2, [r2]
	strh	r2, [r3]	@ movhi
	ldr	r3, .L87+12
	ldr	r3, [r3, #20]
	add	r3, r3, #4
	ldr	r2, .L87+12
	str	r3, [r2, #20]
	ldr	r3, .L87+12
	ldr	r3, [r3, #20]
	ldr	r2, .L87+32
	ldr	r2, [r2]
	str	r2, [r3]
	ldr	r3, .L87+8
	mvn	r2, #0
	str	r2, [r3]
	ldr	r3, .L87+4
	ldr	r3, [r3]
	cmp	r3, #0
	ble	.L30
	ldr	r3, .L87+4
	ldr	r3, [r3]
	sub	r3, r3, #1
	ldr	r2, .L87+4
	str	r3, [r2]
	b	.L30
.L34:
	ldr	r2, .L87+36
	ldr	r3, [fp, #-12]
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrsh	r3, [r3]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	beq	.L37
	ldr	r3, .L87+8
	ldr	r3, [r3]
	ldr	r2, [fp, #-16]
	add	r3, r2, r3
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	blt	.L37
	ldr	r3, [fp, #-16]
	cmp	r3, #220
	bgt	.L37
	ldr	r2, .L87+24
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrsh	r3, [r3]
	mov	r2, r3
	ldr	r3, .L87+8
	ldr	r3, [r3]
	cmp	r2, r3
	bne	.L37
	ldr	r2, .L87+28
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrsh	r3, [r3]
	str	r3, [fp, #-16]
	b	.L32
.L37:
	ldr	r3, .L87+4
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L81
	ldr	r2, .L87+40
	ldr	r1, [fp, #-28]
	ldr	r0, [fp, #-24]
	bl	calc2_error
	nop
.L40:
	ldr	r3, .L87
	ldr	r3, [r3]
	add	r3, r3, #1
	ldr	r2, .L87
	str	r3, [r2]
	b	.L39
.L81:
	nop
.L39:
	ldr	r3, .L87+4
	ldr	r3, [r3]
	cmp	r3, #2
	bgt	.L41
	ldr	r3, .L87+4
	mov	r2, #3
	str	r2, [r3]
.L46:
	ldr	r3, .L87+12
	ldr	r3, [r3, #8]
	ldrsh	r3, [r3]
	ldr	r2, .L87+20
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrsh	r3, [r3]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	beq	.L42
	ldr	r3, [fp, #-16]
	add	r3, r3, #256
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	blt	.L42
	ldr	r3, [fp, #-16]
	cmp	r3, #220
	bgt	.L42
	ldr	r2, .L87+24
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrsh	r3, [r3]
	cmp	r3, #256
	bne	.L42
	ldr	r3, .L87+12
	ldr	r2, [r3, #8]
	ldr	r3, .L87+12
	ldr	r3, [r3, #12]
	cmp	r2, r3
	bcc	.L43
	ldr	r0, .L87+12
	bl	yygrowstack
	mov	r3, r0
	cmp	r3, #0
	bne	.L82
.L43:
	ldr	r2, .L87+28
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrsh	r3, [r3]
	str	r3, [fp, #-12]
	ldr	r3, .L87+12
	ldr	r3, [r3, #8]
	add	r3, r3, #2
	ldr	r2, .L87+12
	str	r3, [r2, #8]
	ldr	r3, .L87+12
	ldr	r3, [r3, #8]
	ldr	r1, .L87+28
	ldr	r2, [fp, #-16]
	lsl	r2, r2, #1
	add	r2, r1, r2
	ldrsh	r2, [r2]
	strh	r2, [r3]	@ movhi
	ldr	r3, .L87+12
	ldr	r3, [r3, #20]
	add	r3, r3, #4
	ldr	r2, .L87+12
	str	r3, [r2, #20]
	ldr	r3, .L87+12
	ldr	r3, [r3, #20]
	ldr	r2, .L87+32
	ldr	r2, [r2]
	str	r2, [r3]
	b	.L30
.L42:
	ldr	r3, .L87+12
	ldr	r2, [r3, #8]
	ldr	r3, .L87+12
	ldr	r3, [r3, #4]
	cmp	r2, r3
	bls	.L83
	ldr	r3, .L87+12
	ldr	r3, [r3, #8]
	sub	r3, r3, #2
	ldr	r2, .L87+12
	str	r3, [r2, #8]
	ldr	r3, .L87+12
	ldr	r3, [r3, #20]
	sub	r3, r3, #4
	ldr	r2, .L87+12
	str	r3, [r2, #20]
	b	.L46
.L41:
	ldr	r3, .L87+8
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L84
	ldr	r3, .L87+8
	mvn	r2, #0
	str	r2, [r3]
	b	.L30
.L79:
	nop
.L32:
	ldr	r2, .L87+44
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrsh	r3, [r3]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	beq	.L48
	ldr	r3, .L87+12
	ldr	r2, [r3, #20]
	ldr	r3, [fp, #-8]
	rsb	r3, r3, #1
	lsl	r3, r3, #2
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r2, .L87+48
	str	r3, [r2]
	b	.L49
.L48:
	ldr	r3, .L87+48
	mov	r2, #0
	str	r2, [r3]
.L49:
	ldr	r3, [fp, #-16]
	sub	r3, r3, #3
	cmp	r3, #15
	ldrls	pc, [pc, r3, asl #2]
	b	.L50
.L52:
	.word	.L66
	.word	.L65
	.word	.L64
	.word	.L63
	.word	.L62
	.word	.L61
	.word	.L60
	.word	.L59
	.word	.L58
	.word	.L57
	.word	.L56
	.word	.L55
	.word	.L54
	.word	.L50
	.word	.L53
	.word	.L51
.L66:
	ldr	r3, .L87+4
	mov	r2, #0
	str	r2, [r3]
	b	.L50
.L65:
	ldr	r3, .L87+12
	ldr	r3, [r3, #20]
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L87+52
	bl	printf
	b	.L50
.L64:
	ldr	r3, .L87+12
	ldr	r2, [r3, #20]
	ldr	r3, .L87+12
	ldr	r3, [r3, #20]
	sub	r3, r3, #8
	ldr	r3, [r3]
	lsl	r3, r3, #2
	ldr	r1, [fp, #-24]
	add	r3, r1, r3
	ldr	r2, [r2]
	str	r2, [r3]
	b	.L50
.L63:
	ldr	r3, .L87+12
	ldr	r3, [r3, #20]
	ldr	r3, [r3, #-4]
	ldr	r2, .L87+48
	str	r3, [r2]
	b	.L50
.L62:
	ldr	r3, .L87+12
	ldr	r3, [r3, #20]
	sub	r3, r3, #8
	ldr	r2, [r3]
	ldr	r3, .L87+12
	ldr	r3, [r3, #20]
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L87+48
	str	r3, [r2]
	b	.L50
.L61:
	ldr	r3, .L87+12
	ldr	r3, [r3, #20]
	sub	r3, r3, #8
	ldr	r2, [r3]
	ldr	r3, .L87+12
	ldr	r3, [r3, #20]
	ldr	r3, [r3]
	sub	r3, r2, r3
	ldr	r2, .L87+48
	str	r3, [r2]
	b	.L50
.L60:
	ldr	r3, .L87+12
	ldr	r3, [r3, #20]
	sub	r3, r3, #8
	ldr	r3, [r3]
	ldr	r2, .L87+12
	ldr	r2, [r2, #20]
	ldr	r2, [r2]
	mul	r3, r2, r3
	ldr	r2, .L87+48
	str	r3, [r2]
	b	.L50
.L59:
	ldr	r3, .L87+12
	ldr	r3, [r3, #20]
	sub	r3, r3, #8
	ldr	r2, [r3]
	ldr	r3, .L87+12
	ldr	r3, [r3, #20]
	ldr	r3, [r3]
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_idiv
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L87+48
	str	r2, [r3]
	b	.L50
.L58:
	ldr	r3, .L87+12
	ldr	r3, [r3, #20]
	sub	r3, r3, #8
	ldr	r2, [r3]
	ldr	r3, .L87+12
	ldr	r3, [r3, #20]
	ldr	r3, [r3]
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_idivmod
	mov	r3, r1
	mov	r2, r3
	ldr	r3, .L87+48
	str	r2, [r3]
	b	.L50
.L57:
	ldr	r3, .L87+12
	ldr	r3, [r3, #20]
	sub	r3, r3, #8
	ldr	r2, [r3]
	ldr	r3, .L87+12
	ldr	r3, [r3, #20]
	ldr	r3, [r3]
	and	r3, r3, r2
	ldr	r2, .L87+48
	str	r3, [r2]
	b	.L50
.L56:
	ldr	r3, .L87+12
	ldr	r3, [r3, #20]
	sub	r3, r3, #8
	ldr	r2, [r3]
	ldr	r3, .L87+12
	ldr	r3, [r3, #20]
	ldr	r3, [r3]
	orr	r3, r2, r3
	ldr	r2, .L87+48
	str	r3, [r2]
	b	.L50
.L55:
	ldr	r3, .L87+12
	ldr	r3, [r3, #20]
	ldr	r3, [r3]
	rsb	r3, r3, #0
	ldr	r2, .L87+48
	str	r3, [r2]
	b	.L50
.L54:
	ldr	r3, .L87+12
	ldr	r3, [r3, #20]
	ldr	r3, [r3]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-24]
	add	r3, r2, r3
	ldr	r3, [r3]
	ldr	r2, .L87+48
	str	r3, [r2]
	b	.L50
.L53:
	ldr	r3, .L87+12
	ldr	r3, [r3, #20]
	ldr	r3, [r3]
	ldr	r2, .L87+48
	str	r3, [r2]
	ldr	r3, .L87+12
	ldr	r3, [r3, #20]
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L67
	mov	r2, #8
	b	.L68
.L67:
	mov	r2, #10
.L68:
	ldr	r3, [fp, #-28]
	str	r2, [r3]
	b	.L50
.L51:
	ldr	r3, [fp, #-28]
	ldr	r3, [r3]
	ldr	r2, .L87+12
	ldr	r2, [r2, #20]
	sub	r2, r2, #4
	ldr	r2, [r2]
	mul	r2, r3, r2
	ldr	r3, .L87+12
	ldr	r3, [r3, #20]
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L87+48
	str	r3, [r2]
	nop
.L50:
	ldr	r3, .L87+12
	ldr	r2, [r3, #8]
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #1
	rsb	r3, r3, #0
	add	r3, r2, r3
	ldr	r2, .L87+12
	str	r3, [r2, #8]
	ldr	r3, .L87+12
	ldr	r3, [r3, #8]
	ldrsh	r3, [r3]
	str	r3, [fp, #-12]
	ldr	r3, .L87+12
	ldr	r2, [r3, #20]
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #2
	rsb	r3, r3, #0
	add	r3, r2, r3
	ldr	r2, .L87+12
	str	r3, [r2, #20]
	ldr	r2, .L87+56
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrsh	r3, [r3]
	str	r3, [fp, #-8]
	ldr	r3, [fp, #-12]
	cmp	r3, #0
	bne	.L69
	ldr	r3, [fp, #-8]
	cmp	r3, #0
	bne	.L69
	mov	r3, #1
	str	r3, [fp, #-12]
	ldr	r3, .L87+12
	ldr	r3, [r3, #8]
	add	r3, r3, #2
	ldr	r2, .L87+12
	str	r3, [r2, #8]
	ldr	r3, .L87+12
	ldr	r3, [r3, #8]
	mov	r2, #1
	strh	r2, [r3]	@ movhi
	ldr	r3, .L87+12
	ldr	r3, [r3, #20]
	add	r3, r3, #4
	ldr	r2, .L87+12
	str	r3, [r2, #20]
	ldr	r3, .L87+12
	ldr	r3, [r3, #20]
	ldr	r2, .L87+48
	ldr	r2, [r2]
	str	r2, [r3]
	ldr	r3, .L87+8
	ldr	r3, [r3]
	cmp	r3, #0
	bge	.L70
	ldr	r0, [fp, #-28]
	bl	calc2_lex
	mov	r3, r0
	ldr	r2, .L87+8
	str	r3, [r2]
	ldr	r3, .L87+8
	ldr	r3, [r3]
	cmp	r3, #0
	bge	.L70
	ldr	r3, .L87+8
	mov	r2, #0
	str	r2, [r3]
.L70:
	ldr	r3, .L87+8
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L85
	b	.L30
.L69:
	ldr	r2, .L87+60
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrsh	r3, [r3]
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	beq	.L73
	ldr	r2, [fp, #-16]
	ldr	r3, [fp, #-12]
	add	r3, r2, r3
	str	r3, [fp, #-16]
	ldr	r3, [fp, #-16]
	cmp	r3, #0
	blt	.L73
	ldr	r3, [fp, #-16]
	cmp	r3, #220
	bgt	.L73
	ldr	r2, .L87+24
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrsh	r3, [r3]
	mov	r2, r3
	ldr	r3, [fp, #-12]
	cmp	r3, r2
	bne	.L73
	ldr	r2, .L87+28
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrsh	r3, [r3]
	str	r3, [fp, #-12]
	b	.L74
.L73:
	ldr	r2, .L87+64
	ldr	r3, [fp, #-8]
	lsl	r3, r3, #1
	add	r3, r2, r3
	ldrsh	r3, [r3]
	str	r3, [fp, #-12]
.L74:
	ldr	r3, .L87+12
	ldr	r2, [r3, #8]
	ldr	r3, .L87+12
	ldr	r3, [r3, #12]
	cmp	r2, r3
	bcc	.L75
	ldr	r0, .L87+12
	bl	yygrowstack
	mov	r3, r0
	cmp	r3, #0
	bne	.L86
.L75:
	ldr	r3, .L87+12
	ldr	r3, [r3, #8]
	add	r3, r3, #2
	ldr	r2, .L87+12
	str	r3, [r2, #8]
	ldr	r3, .L87+12
	ldr	r3, [r3, #8]
	ldr	r2, [fp, #-12]
	lsl	r2, r2, #16
	asr	r2, r2, #16
	strh	r2, [r3]	@ movhi
	ldr	r3, .L87+12
	ldr	r3, [r3, #20]
	add	r3, r3, #4
	ldr	r2, .L87+12
	str	r3, [r2, #20]
	ldr	r3, .L87+12
	ldr	r3, [r3, #20]
	ldr	r2, .L87+48
	ldr	r2, [r2]
	str	r2, [r3]
	b	.L30
.L78:
	nop
	b	.L29
.L80:
	nop
	b	.L29
.L82:
	nop
	b	.L29
.L86:
	nop
.L29:
	ldr	r2, .L87+68
	ldr	r1, [fp, #-28]
	ldr	r0, [fp, #-24]
	bl	calc2_error
	b	.L45
.L83:
	nop
	b	.L45
.L84:
	nop
.L45:
	mov	r3, #1
	b	.L76
.L85:
	nop
.L72:
	mov	r3, #0
.L76:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L88:
	.align	2
.L87:
	.word	calc2_nerrs
	.word	calc2_errflag
	.word	calc2_char
	.word	yystack
	.word	calc2_defred
	.word	calc2_sindex
	.word	calc2_check
	.word	calc2_table
	.word	calc2_lval
	.word	calc2_rindex
	.word	.LC2
	.word	calc2_len
	.word	calc2_val
	.word	.LC3
	.word	calc2_lhs
	.word	calc2_gindex
	.word	calc2_dgoto
	.word	.LC4
	.size	calc2_parse, .-calc2_parse
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
