	.file	"237777.c"
	.intel_syntax noprefix
	.text
	.data
	.align 4
	.type	m_u, @object
	.size	m_u, 4
m_u:
	.long	521288629
	.align 4
	.type	m_v, @object
	.size	m_v, 4
m_v:
	.long	362436069
	.text
	.globl	simplerng_setstate
	.type	simplerng_setstate, @function
simplerng_setstate:
.LFB6:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	DWORD PTR -4[rbp], edi
	mov	DWORD PTR -8[rbp], esi
	mov	eax, DWORD PTR -4[rbp]
	mov	DWORD PTR m_u[rip], eax
	mov	eax, DWORD PTR -8[rbp]
	mov	DWORD PTR m_v[rip], eax
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE6:
	.size	simplerng_setstate, .-simplerng_setstate
	.globl	simplerng_getstate
	.type	simplerng_getstate, @function
simplerng_getstate:
.LFB7:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	edx, DWORD PTR m_u[rip]
	mov	rax, QWORD PTR -8[rbp]
	mov	DWORD PTR [rax], edx
	mov	edx, DWORD PTR m_v[rip]
	mov	rax, QWORD PTR -16[rbp]
	mov	DWORD PTR [rax], edx
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE7:
	.size	simplerng_getstate, .-simplerng_getstate
	.globl	simplerng_srand
	.type	simplerng_srand, @function
simplerng_srand:
.LFB8:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	DWORD PTR -4[rbp], edi
	mov	eax, DWORD PTR -4[rbp]
	mov	edi, eax
	call	srand@PLT
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE8:
	.size	simplerng_srand, .-simplerng_srand
	.globl	simplerng_getuniform_pr
	.type	simplerng_getuniform_pr, @function
simplerng_getuniform_pr:
.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, 32
	mov	QWORD PTR -24[rbp], rdi
	mov	QWORD PTR -32[rbp], rsi
	mov	rdx, QWORD PTR -32[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rdx
	mov	rdi, rax
	call	simplerng_getuint_pr
	mov	DWORD PTR -4[rbp], eax
	mov	eax, DWORD PTR -4[rbp]
	test	rax, rax
	js	.L5
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, rax
	jmp	.L6
.L5:
	mov	rdx, rax
	shr	rdx
	and	eax, 1
	or	rdx, rax
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, rdx
	addsd	xmm0, xmm0
.L6:
	movsd	xmm1, QWORD PTR .LC0[rip]
	mulsd	xmm0, xmm1
	movq	rax, xmm0
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE9:
	.size	simplerng_getuniform_pr, .-simplerng_getuniform_pr
	.globl	simplerng_getuint_pr
	.type	simplerng_getuint_pr, @function
simplerng_getuint_pr:
.LFB10:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	QWORD PTR -8[rbp], rdi
	mov	QWORD PTR -16[rbp], rsi
	mov	rax, QWORD PTR -16[rbp]
	mov	eax, DWORD PTR [rax]
	movzx	eax, ax
	imul	edx, eax, 36969
	mov	rax, QWORD PTR -16[rbp]
	mov	eax, DWORD PTR [rax]
	shr	eax, 16
	add	edx, eax
	mov	rax, QWORD PTR -16[rbp]
	mov	DWORD PTR [rax], edx
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR [rax]
	movzx	eax, ax
	imul	edx, eax, 18000
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR [rax]
	shr	eax, 16
	add	edx, eax
	mov	rax, QWORD PTR -8[rbp]
	mov	DWORD PTR [rax], edx
	mov	rax, QWORD PTR -16[rbp]
	mov	eax, DWORD PTR [rax]
	sal	eax, 16
	mov	edx, eax
	mov	rax, QWORD PTR -8[rbp]
	mov	eax, DWORD PTR [rax]
	add	eax, edx
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE10:
	.size	simplerng_getuint_pr, .-simplerng_getuint_pr
	.globl	simplerng_getuniform
	.type	simplerng_getuniform, @function
simplerng_getuniform:
.LFB11:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	rand@PLT
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	movsd	xmm0, QWORD PTR .LC1[rip]
	mulsd	xmm0, xmm1
	movq	rax, xmm0
	movq	xmm0, rax
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE11:
	.size	simplerng_getuniform, .-simplerng_getuniform
	.globl	simplerng_getuint
	.type	simplerng_getuint, @function
simplerng_getuint:
.LFB12:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	lea	rsi, m_v[rip]
	lea	rdi, m_u[rip]
	call	simplerng_getuint_pr
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE12:
	.size	simplerng_getuint, .-simplerng_getuint
	.globl	simplerng_getnorm
	.type	simplerng_getnorm, @function
simplerng_getnorm:
.LFB13:
	.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	eax, DWORD PTR saved.5[rip]
	test	eax, eax
	jne	.L15
	call	simplerng_getuniform
	movq	rax, xmm0
	mov	QWORD PTR -32[rbp], rax
	call	simplerng_getuniform
	movq	rax, xmm0
	mov	QWORD PTR -24[rbp], rax
	mov	rax, QWORD PTR -32[rbp]
	movq	xmm0, rax
	call	log@PLT
	movsd	xmm1, QWORD PTR .LC2[rip]
	mulsd	xmm0, xmm1
	movq	rax, xmm0
	movq	xmm0, rax
	call	sqrt@PLT
	movq	rax, xmm0
	mov	QWORD PTR -16[rbp], rax
	movsd	xmm1, QWORD PTR -24[rbp]
	movsd	xmm0, QWORD PTR .LC3[rip]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	mov	rax, QWORD PTR -8[rbp]
	movq	xmm0, rax
	call	cos@PLT
	movq	rax, xmm0
	movq	xmm0, rax
	mulsd	xmm0, QWORD PTR -16[rbp]
	movsd	QWORD PTR y.4[rip], xmm0
	mov	DWORD PTR saved.5[rip], 1
	mov	rax, QWORD PTR -8[rbp]
	movq	xmm0, rax
	call	sin@PLT
	movq	rax, xmm0
	movq	xmm0, rax
	mulsd	xmm0, QWORD PTR -16[rbp]
	jmp	.L16
.L15:
	mov	DWORD PTR saved.5[rip], 0
	movsd	xmm0, QWORD PTR y.4[rip]
.L16:
	movq	rax, xmm0
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE13:
	.size	simplerng_getnorm, .-simplerng_getnorm
	.globl	simplerng_getpoisson
	.type	simplerng_getpoisson, @function
simplerng_getpoisson:
.LFB14:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	movsd	QWORD PTR -8[rbp], xmm0
	pxor	xmm0, xmm0
	comisd	xmm0, QWORD PTR -8[rbp]
	jbe	.L18
	pxor	xmm0, xmm0
	movsd	QWORD PTR -8[rbp], xmm0
.L18:
	movsd	xmm0, QWORD PTR .LC5[rip]
	comisd	xmm0, QWORD PTR -8[rbp]
	jbe	.L26
	mov	rax, QWORD PTR -8[rbp]
	movq	xmm0, rax
	call	simplerng_poisson_small
	jmp	.L23
.L26:
	mov	rax, QWORD PTR -8[rbp]
	movq	xmm0, rax
	call	simplerng_poisson_large
.L23:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE14:
	.size	simplerng_getpoisson, .-simplerng_getpoisson
	.globl	simplerng_poisson_small
	.type	simplerng_poisson_small, @function
simplerng_poisson_small:
.LFB15:
	.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
	movsd	QWORD PTR -40[rbp], xmm0
	movsd	xmm0, QWORD PTR .LC6[rip]
	movsd	QWORD PTR -16[rbp], xmm0
	movsd	xmm0, QWORD PTR -40[rbp]
	movq	xmm1, QWORD PTR .LC7[rip]
	xorpd	xmm0, xmm1
	movq	rax, xmm0
	movq	xmm0, rax
	call	exp@PLT
	movq	rax, xmm0
	mov	QWORD PTR -8[rbp], rax
	mov	DWORD PTR -20[rbp], 0
.L28:
	add	DWORD PTR -20[rbp], 1
	call	simplerng_getuniform
	movsd	xmm1, QWORD PTR -16[rbp]
	mulsd	xmm0, xmm1
	movsd	QWORD PTR -16[rbp], xmm0
	movsd	xmm0, QWORD PTR -16[rbp]
	comisd	xmm0, QWORD PTR -8[rbp]
	ja	.L28
	mov	eax, DWORD PTR -20[rbp]
	sub	eax, 1
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE15:
	.size	simplerng_poisson_small, .-simplerng_poisson_small
	.globl	simplerng_poisson_large
	.type	simplerng_poisson_large, @function
simplerng_poisson_large:
.LFB16:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 96
	movsd	QWORD PTR -88[rbp], xmm0
	movsd	xmm0, QWORD PTR old_lambda.3[rip]
	ucomisd	xmm0, QWORD PTR -88[rbp]
	jp	.L38
	comisd	xmm0, QWORD PTR -88[rbp]
	je	.L37
.L38:
	movsd	xmm0, QWORD PTR .LC8[rip]
	movapd	xmm1, xmm0
	divsd	xmm1, QWORD PTR -88[rbp]
	movsd	xmm0, QWORD PTR .LC9[rip]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -64[rbp], xmm0
	movsd	xmm1, QWORD PTR -88[rbp]
	movsd	xmm0, QWORD PTR .LC10[rip]
	mulsd	xmm1, xmm0
	movq	rax, xmm1
	movq	xmm0, rax
	call	sqrt@PLT
	movapd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC11[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR beta.2[rip], xmm0
	movsd	xmm0, QWORD PTR beta.2[rip]
	mulsd	xmm0, QWORD PTR -88[rbp]
	movsd	QWORD PTR alpha.1[rip], xmm0
	mov	rax, QWORD PTR -64[rbp]
	movq	xmm0, rax
	call	log@PLT
	movq	rax, xmm0
	movq	xmm2, rax
	subsd	xmm2, QWORD PTR -88[rbp]
	movsd	QWORD PTR -96[rbp], xmm2
	mov	rax, QWORD PTR beta.2[rip]
	movq	xmm0, rax
	call	log@PLT
	movapd	xmm1, xmm0
	movsd	xmm0, QWORD PTR -96[rbp]
	subsd	xmm0, xmm1
	movsd	QWORD PTR k.0[rip], xmm0
	movsd	xmm0, QWORD PTR -88[rbp]
	movsd	QWORD PTR old_lambda.3[rip], xmm0
.L37:
	call	simplerng_getuniform
	movq	rax, xmm0
	mov	QWORD PTR -56[rbp], rax
	movsd	xmm3, QWORD PTR alpha.1[rip]
	movsd	QWORD PTR -96[rbp], xmm3
	movsd	xmm0, QWORD PTR .LC6[rip]
	subsd	xmm0, QWORD PTR -56[rbp]
	movapd	xmm4, xmm0
	divsd	xmm4, QWORD PTR -56[rbp]
	movq	rax, xmm4
	movq	xmm0, rax
	call	log@PLT
	movapd	xmm1, xmm0
	movsd	xmm0, QWORD PTR -96[rbp]
	subsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR beta.2[rip]
	divsd	xmm0, xmm1
	movsd	QWORD PTR -48[rbp], xmm0
	movsd	xmm1, QWORD PTR -48[rbp]
	movsd	xmm0, QWORD PTR .LC12[rip]
	addsd	xmm1, xmm0
	movq	rax, xmm1
	movq	xmm0, rax
	call	floor@PLT
	cvttsd2si	eax, xmm0
	mov	DWORD PTR -68[rbp], eax
	cmp	DWORD PTR -68[rbp], 0
	js	.L41
	call	simplerng_getuniform
	movq	rax, xmm0
	mov	QWORD PTR -40[rbp], rax
	movsd	xmm0, QWORD PTR alpha.1[rip]
	movsd	xmm1, QWORD PTR beta.2[rip]
	mulsd	xmm1, QWORD PTR -48[rbp]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -32[rbp], xmm0
	mov	rax, QWORD PTR -32[rbp]
	movq	xmm0, rax
	call	exp@PLT
	movsd	xmm1, QWORD PTR .LC6[rip]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -24[rbp], xmm0
	movsd	xmm0, QWORD PTR -24[rbp]
	movapd	xmm1, xmm0
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR -40[rbp]
	divsd	xmm0, xmm1
	movq	rax, xmm0
	movq	xmm0, rax
	call	log@PLT
	movsd	xmm1, QWORD PTR -32[rbp]
	addsd	xmm0, xmm1
	movsd	QWORD PTR -16[rbp], xmm0
	pxor	xmm5, xmm5
	cvtsi2sd	xmm5, DWORD PTR -68[rbp]
	movsd	QWORD PTR -96[rbp], xmm5
	mov	rax, QWORD PTR -88[rbp]
	movq	xmm0, rax
	call	log@PLT
	movsd	xmm1, QWORD PTR -96[rbp]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR k.0[rip]
	addsd	xmm1, xmm0
	movsd	QWORD PTR -96[rbp], xmm1
	mov	eax, DWORD PTR -68[rbp]
	mov	edi, eax
	call	simplerng_logfactorial
	movapd	xmm1, xmm0
	movsd	xmm0, QWORD PTR -96[rbp]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	comisd	xmm0, QWORD PTR -16[rbp]
	jb	.L34
	mov	eax, DWORD PTR -68[rbp]
	jmp	.L40
.L41:
	nop
.L34:
	jmp	.L37
.L40:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE16:
	.size	simplerng_poisson_large, .-simplerng_poisson_large
	.data
	.align 32
	.type	lf, @object
	.size	lf, 2040
lf:
	.long	0
	.long	0
	.long	0
	.long	0
	.long	-17155604
	.long	1072049730
	.long	-97902590
	.long	1073523467
	.long	2089954554
	.long	1074359463
	.long	1011120585
	.long	1074996836
	.long	986644938
	.long	1075466535
	.long	-215102416
	.long	1075907809
	.long	-2097367283
	.long	1076180366
	.long	564656079
	.long	1076468361
	.long	-1869263595
	.long	1076770165
	.long	1060801908
	.long	1076986007
	.long	383058243
	.long	1077148858
	.long	-1673841971
	.long	1077316954
	.long	-552195517
	.long	1077489907
	.long	-1505766585
	.long	1077667382
	.long	102701701
	.long	1077849087
	.long	1060058426
	.long	1077985446
	.long	-220860846
	.long	1078080157
	.long	1396062597
	.long	1078176641
	.long	2062383038
	.long	1078274805
	.long	1681158825
	.long	1078374568
	.long	-1415033082
	.long	1078475855
	.long	-1954190779
	.long	1078578599
	.long	55479572
	.long	1078682738
	.long	583886311
	.long	1078788214
	.long	1903978388
	.long	1078894975
	.long	-1233235986
	.long	1078993838
	.long	-1926036929
	.long	1079048433
	.long	1402040880
	.long	1079103603
	.long	-1957048091
	.long	1079159328
	.long	-39953856
	.long	1079215590
	.long	-1684791165
	.long	1079272373
	.long	1664798282
	.long	1079329660
	.long	1195939514
	.long	1079387436
	.long	434181719
	.long	1079445687
	.long	2041735000
	.long	1079504399
	.long	-1054589546
	.long	1079563560
	.long	-145598557
	.long	1079623158
	.long	-1030318063
	.long	1079683182
	.long	1550855074
	.long	1079743621
	.long	-2036555516
	.long	1079804464
	.long	-2126638355
	.long	1079865702
	.long	32422479
	.long	1079927326
	.long	732339440
	.long	1079989326
	.long	1135467936
	.long	1080042487
	.long	2124684968
	.long	1080073851
	.long	-412982677
	.long	1080105391
	.long	-934042279
	.long	1080137104
	.long	-1827901757
	.long	1080168986
	.long	-571793615
	.long	1080201033
	.long	1642619701
	.long	1080233243
	.long	-124576293
	.long	1080265611
	.long	-1707890994
	.long	1080298136
	.long	1544728345
	.long	1080330814
	.long	1860208401
	.long	1080363642
	.long	490330740
	.long	1080396618
	.long	-901298361
	.long	1080429738
	.long	-260736647
	.long	1080463001
	.long	541307589
	.long	1080496405
	.long	-14230439
	.long	1080529945
	.long	1182756793
	.long	1080563622
	.long	-1029656928
	.long	1080597431
	.long	1374144355
	.long	1080631372
	.long	-471751491
	.long	1080665441
	.long	2021541384
	.long	1080699638
	.long	525375270
	.long	1080733960
	.long	-153495632
	.long	1080768404
	.long	736081442
	.long	1080802971
	.long	-120826122
	.long	1080837656
	.long	-1525182209
	.long	1080872460
	.long	-2068269130
	.long	1080907380
	.long	-140486031
	.long	1080942414
	.long	1765370864
	.long	1080977562
	.long	1341215049
	.long	1081012821
	.long	751198595
	.long	1081048190
	.long	-982633375
	.long	1081082761
	.long	-7641813
	.long	1081100553
	.long	333181539
	.long	1081118399
	.long	1443017001
	.long	1081136296
	.long	502829866
	.long	1081154245
	.long	-941406410
	.long	1081172244
	.long	-1276255828
	.long	1081190294
	.long	1176726846
	.long	1081208394
	.long	-431274283
	.long	1081226542
	.long	-3724959
	.long	1081244739
	.long	24301654
	.long	1081262985
	.long	1569003862
	.long	1081281277
	.long	-1988980965
	.long	1081299616
	.long	-36615866
	.long	1081318001
	.long	910036471
	.long	1081336433
	.long	-1321032853
	.long	1081354909
	.long	-264421108
	.long	1081373430
	.long	2001277030
	.long	1081391996
	.long	-853037212
	.long	1081410605
	.long	2066458199
	.long	1081429258
	.long	220447980
	.long	1081447954
	.long	289888796
	.long	1081466692
	.long	404962285
	.long	1081485472
	.long	-1266183071
	.long	1081504293
	.long	2071357878
	.long	1081523156
	.long	68343966
	.long	1081542060
	.long	-409929794
	.long	1081561003
	.long	-1054450674
	.long	1081579987
	.long	771438205
	.long	1081599011
	.long	-853802136
	.long	1081618073
	.long	1064027390
	.long	1081637175
	.long	664191515
	.long	1081656315
	.long	705020767
	.long	1081675493
	.long	-321795917
	.long	1081694708
	.long	397947339
	.long	1081713962
	.long	1410290781
	.long	1081733252
	.long	1287355181
	.long	1081752579
	.long	-1373353670
	.long	1081771942
	.long	640318656
	.long	1081791342
	.long	1679691190
	.long	1081810777
	.long	414491627
	.long	1081830248
	.long	-167747318
	.long	1081849753
	.long	-1352205619
	.long	1081869294
	.long	-107404762
	.long	1081888869
	.long	-1970654196
	.long	1081908479
	.long	426258666
	.long	1081928123
	.long	1586755510
	.long	1081947800
	.long	328843794
	.long	1081967511
	.long	-215359837
	.long	1081987254
	.long	-1190025397
	.long	1082007031
	.long	573878472
	.long	1082026841
	.long	-326749822
	.long	1082046682
	.long	-687694516
	.long	1082066556
	.long	-1582730201
	.long	1082086462
	.long	225919466
	.long	1082106400
	.long	-597701363
	.long	1082126368
	.long	1755593053
	.long	1082138400
	.long	-671000771
	.long	1082148415
	.long	-1633458707
	.long	1082158446
	.long	-1621663687
	.long	1082168492
	.long	-1118267805
	.long	1082178553
	.long	-598851227
	.long	1082188629
	.long	-532076503
	.long	1082198720
	.long	-1379838401
	.long	1082208826
	.long	697557840
	.long	1082218947
	.long	956353218
	.long	1082229082
	.long	-1045900546
	.long	1082239231
	.long	-1450474559
	.long	1082249395
	.long	-687527170
	.long	1082259573
	.long	818737091
	.long	1082269766
	.long	-1645022542
	.long	1082279972
	.long	98466701
	.long	1082290193
	.long	1347171186
	.long	1082300427
	.long	1699507008
	.long	1082310675
	.long	759262686
	.long	1082320937
	.long	-1864507937
	.long	1082331212
	.long	2032344637
	.long	1082341501
	.long	-815807040
	.long	1082351803
	.long	2100174003
	.long	1082362119
	.long	1819452580
	.long	1082372448
	.long	-2024101425
	.long	1082382790
	.long	-1202004512
	.long	1082393145
	.long	-366085167
	.long	1082403513
	.long	131298447
	.long	1082413895
	.long	-57793506
	.long	1082424288
	.long	-1276965121
	.long	1082434695
	.long	429402004
	.long	1082445115
	.long	431168319
	.long	1082455547
	.long	-1602738424
	.long	1082465991
	.long	-1704397944
	.long	1082476448
	.long	-196904993
	.long	1082486917
	.long	-1694440562
	.long	1082497399
	.long	2077527784
	.long	1082507893
	.long	-2077560319
	.long	1082518399
	.long	-1582784042
	.long	1082528917
	.long	-1037479029
	.long	1082539447
	.long	-742464108
	.long	1082549989
	.long	-995070326
	.long	1082560543
	.long	-2089201256
	.long	1082571109
	.long	-20424622
	.long	1082581686
	.long	629068227
	.long	1082592276
	.long	-424692073
	.long	1082602876
	.long	832492092
	.long	1082613489
	.long	-171970355
	.long	1082624112
	.long	582357427
	.long	1082634748
	.long	-1470980398
	.long	1082645394
	.long	1989453850
	.long	1082656052
	.long	2108171124
	.long	1082666721
	.long	-1377488685
	.long	1082677401
	.long	-137403807
	.long	1082688092
	.long	1276446877
	.long	1082698795
	.long	-1685159341
	.long	1082709508
	.long	-683831199
	.long	1082720232
	.long	-263410413
	.long	1082730967
	.long	-670144741
	.long	1082741713
	.long	2147270652
	.long	1082752470
	.long	-642216492
	.long	1082763237
	.long	-687284111
	.long	1082774015
	.long	1775921561
	.long	1082784804
	.long	-2076252052
	.long	1082795603
	.long	409769956
	.long	1082806413
	.long	415080491
	.long	1082817233
	.long	2007993077
	.long	1082828063
	.long	669170319
	.long	1082838904
	.long	471458759
	.long	1082849755
	.long	1194953324
	.long	1082860616
	.long	-1673035666
	.long	1082871487
	.long	241854362
	.long	1082882369
	.long	-1863764552
	.long	1082893260
	.long	388676395
	.long	1082904162
	.long	-1800066078
	.long	1082915073
	.long	-47338855
	.long	1082925994
	.long	1146607197
	.long	1082936926
	.long	1578457672
	.long	1082947867
	.long	1046839117
	.long	1082958818
	.long	-647708623
	.long	1082969778
	.long	592207753
	.long	1082980749
	.long	275906489
	.long	1082991729
	.long	-1790493482
	.long	1083002718
	.long	-1504098168
	.long	1083013717
	.long	944801720
	.long	1083024726
	.long	1072706066
	.long	1083035744
	.long	-1307184310
	.long	1083046771
	.long	-2084991445
	.long	1083057808
	.long	-1444118202
	.long	1083068854
	.long	433696083
	.long	1083079910
	.long	-926614230
	.long	1083090974
	.long	-1408561313
	.long	1083102048
	.long	-1189027501
	.long	1083113131
	.long	-443319325
	.long	1083124223
	.long	654811514
	.long	1083135325
	.long	1933147549
	.long	1083146435
	.long	-1073981969
	.long	1083157554
	.long	54148223
	.long	1083168683
	.long	427418052
	.long	1083179414
	.long	580901176
	.long	1083184987
	.long	-1742381556
	.long	1083190564
	.long	1965792067
	.long	1083196146
	.long	-1260492335
	.long	1083201732
	.long	1383345581
	.long	1083207323
	.long	1227731814
	.long	1083212918
	.long	-1806299560
	.long	1083218517
	.long	792885109
	.long	1083224121
	.long	357706901
	.long	1083229729
	.long	1106137175
	.long	1083235341
	.long	-1333147005
	.long	1083240957
	.long	1554065666
	.long	1083246578
	.long	1102741829
	.long	1083252203
	.long	1533366848
	.long	1083257832
	.long	-1522899247
	.long	1083263465
	.long	450607278
	.long	1083269103
	.long	-1208724530
	.long	1083274744
	.long	2016950842
	.long	1083280390
	.long	1466189919
	.long	1083286040
	.long	1363024336
	.long	1083291694
	.long	1637084786
	.long	1083297352
	.long	-2076405736
	.long	1083303014
	.long	-1256769394
	.long	1083308680
	.long	-267683836
	.long	1083314350
	.text
	.globl	simplerng_logfactorial
	.type	simplerng_logfactorial, @function
simplerng_logfactorial:
.LFB17:
	.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	DWORD PTR -20[rbp], edi
	cmp	DWORD PTR -20[rbp], 0
	jns	.L43
	pxor	xmm0, xmm0
	jmp	.L44
.L43:
	cmp	DWORD PTR -20[rbp], 254
	jle	.L45
	mov	eax, DWORD PTR -20[rbp]
	add	eax, 1
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	movsd	QWORD PTR -8[rbp], xmm0
	movsd	xmm0, QWORD PTR -8[rbp]
	movsd	xmm1, QWORD PTR .LC12[rip]
	subsd	xmm0, xmm1
	movsd	QWORD PTR -32[rbp], xmm0
	mov	rax, QWORD PTR -8[rbp]
	movq	xmm0, rax
	call	log@PLT
	mulsd	xmm0, QWORD PTR -32[rbp]
	movapd	xmm1, xmm0
	subsd	xmm1, QWORD PTR -8[rbp]
	movsd	xmm0, QWORD PTR .LC13[rip]
	addsd	xmm1, xmm0
	movsd	xmm2, QWORD PTR -8[rbp]
	movsd	xmm0, QWORD PTR .LC14[rip]
	mulsd	xmm2, xmm0
	movsd	xmm0, QWORD PTR .LC6[rip]
	divsd	xmm0, xmm2
	addsd	xmm0, xmm1
	jmp	.L44
.L45:
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	lea	rdx, 0[0+rax*8]
	lea	rax, lf[rip]
	movsd	xmm0, QWORD PTR [rdx+rax]
.L44:
	movq	rax, xmm0
	movq	xmm0, rax
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE17:
	.size	simplerng_logfactorial, .-simplerng_logfactorial
	.local	saved.5
	.comm	saved.5,4,4
	.local	y.4
	.comm	y.4,8,8
	.data
	.align 8
	.type	old_lambda.3, @object
	.size	old_lambda.3, 8
old_lambda.3:
	.long	0
	.long	-1053916034
	.local	beta.2
	.comm	beta.2,8,8
	.local	alpha.1
	.comm	alpha.1,8,8
	.local	k.0
	.comm	k.0,8,8
	.section	.rodata
	.align 8
.LC0:
	.long	-2097153
	.long	1039138815
	.align 8
.LC1:
	.long	0
	.long	1040187392
	.align 8
.LC2:
	.long	0
	.long	-1073741824
	.align 8
.LC3:
	.long	1413754136
	.long	1075388923
	.align 8
.LC5:
	.long	0
	.long	1076756480
	.align 8
.LC6:
	.long	0
	.long	1072693248
	.align 16
.LC7:
	.long	0
	.long	-2147483648
	.long	0
	.long	0
	.align 8
.LC8:
	.long	-1374389535
	.long	1074454855
	.align 8
.LC9:
	.long	-1786706395
	.long	1072204611
	.align 8
.LC10:
	.long	0
	.long	1074266112
	.align 8
.LC11:
	.long	1413754136
	.long	1074340347
	.align 8
.LC12:
	.long	0
	.long	1071644672
	.align 8
.LC13:
	.long	-932921676
	.long	1072523249
	.align 8
.LC14:
	.long	0
	.long	1076363264
	.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	"237777.c"
	.text
	.data
	.align	2
	.type	m_u, %object
	.size	m_u, 4
m_u:
	.word	521288629
	.align	2
	.type	m_v, %object
	.size	m_v, 4
m_v:
	.word	362436069
	.text
	.align	2
	.global	simplerng_setstate
	.syntax unified
	.arm
	.fpu softvfp
	.type	simplerng_setstate, %function
simplerng_setstate:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	ldr	r2, .L2
	ldr	r3, [fp, #-8]
	str	r3, [r2]
	ldr	r2, .L2+4
	ldr	r3, [fp, #-12]
	str	r3, [r2]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L3:
	.align	2
.L2:
	.word	m_u
	.word	m_v
	.size	simplerng_setstate, .-simplerng_setstate
	.align	2
	.global	simplerng_getstate
	.syntax unified
	.arm
	.fpu softvfp
	.type	simplerng_getstate, %function
simplerng_getstate:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	ldr	r3, .L5
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	str	r2, [r3]
	ldr	r3, .L5+4
	ldr	r2, [r3]
	ldr	r3, [fp, #-12]
	str	r2, [r3]
	nop
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L6:
	.align	2
.L5:
	.word	m_u
	.word	m_v
	.size	simplerng_getstate, .-simplerng_getstate
	.align	2
	.global	simplerng_srand
	.syntax unified
	.arm
	.fpu softvfp
	.type	simplerng_srand, %function
simplerng_srand:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	srand
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
	.size	simplerng_srand, .-simplerng_srand
	.global	__aeabi_ui2d
	.global	__aeabi_dmul
	.align	2
	.global	simplerng_getuniform_pr
	.syntax unified
	.arm
	.fpu softvfp
	.type	simplerng_getuniform_pr, %function
simplerng_getuniform_pr:
	@ 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]
	str	r1, [fp, #-20]
	ldr	r1, [fp, #-20]
	ldr	r0, [fp, #-16]
	bl	simplerng_getuint_pr
	str	r0, [fp, #-8]
	ldr	r0, [fp, #-8]
	bl	__aeabi_ui2d
	mvn	r2, #2097152
	ldr	r3, .L10
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L11:
	.align	2
.L10:
	.word	1039138815
	.size	simplerng_getuniform_pr, .-simplerng_getuniform_pr
	.align	2
	.global	simplerng_getuint_pr
	.syntax unified
	.arm
	.fpu softvfp
	.type	simplerng_getuint_pr, %function
simplerng_getuint_pr:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	@ link register save eliminated.
	str	fp, [sp, #-4]!
	add	fp, sp, #0
	sub	sp, sp, #12
	str	r0, [fp, #-8]
	str	r1, [fp, #-12]
	ldr	r3, [fp, #-12]
	ldr	r3, [r3]
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	ldr	r2, .L14
	mul	r2, r3, r2
	ldr	r3, [fp, #-12]
	ldr	r3, [r3]
	lsr	r3, r3, #16
	add	r2, r2, r3
	ldr	r3, [fp, #-12]
	str	r2, [r3]
	ldr	r3, [fp, #-8]
	ldr	r3, [r3]
	lsl	r2, r3, #16
	lsr	r2, r2, #16
	mov	r3, r2
	lsl	r3, r3, #2
	add	r3, r3, r2
	lsl	r2, r3, #4
	sub	r2, r2, r3
	lsl	r3, r2, #4
	sub	r3, r3, r2
	lsl	r3, r3, #4
	mov	r2, r3
	ldr	r3, [fp, #-8]
	ldr	r3, [r3]
	lsr	r3, r3, #16
	add	r2, r2, r3
	ldr	r3, [fp, #-8]
	str	r2, [r3]
	ldr	r3, [fp, #-12]
	ldr	r3, [r3]
	lsl	r2, r3, #16
	ldr	r3, [fp, #-8]
	ldr	r3, [r3]
	add	r3, r2, r3
	mov	r0, r3
	add	sp, fp, #0
	@ sp needed
	ldr	fp, [sp], #4
	bx	lr
.L15:
	.align	2
.L14:
	.word	36969
	.size	simplerng_getuint_pr, .-simplerng_getuint_pr
	.global	__aeabi_i2d
	.align	2
	.global	simplerng_getuniform
	.syntax unified
	.arm
	.fpu softvfp
	.type	simplerng_getuniform, %function
simplerng_getuniform:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	rand
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, #0
	mov	r3, #1040187392
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	pop	{fp, pc}
	.size	simplerng_getuniform, .-simplerng_getuniform
	.align	2
	.global	simplerng_getuint
	.syntax unified
	.arm
	.fpu softvfp
	.type	simplerng_getuint, %function
simplerng_getuint:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	ldr	r1, .L20
	ldr	r0, .L20+4
	bl	simplerng_getuint_pr
	mov	r3, r0
	mov	r0, r3
	pop	{fp, pc}
.L21:
	.align	2
.L20:
	.word	m_v
	.word	m_u
	.size	simplerng_getuint, .-simplerng_getuint
	.align	2
	.global	simplerng_getnorm
	.syntax unified
	.arm
	.fpu softvfp
	.type	simplerng_getnorm, %function
simplerng_getnorm:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	ldr	r3, .L25
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L23
	bl	simplerng_getuniform
	str	r0, [fp, #-36]
	str	r1, [fp, #-32]
	bl	simplerng_getuniform
	str	r0, [fp, #-28]
	str	r1, [fp, #-24]
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	log
	mov	r2, #0
	mov	r3, #-1073741824
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	sqrt
	str	r0, [fp, #-20]
	str	r1, [fp, #-16]
	ldr	r2, .L25+4
	ldr	r3, .L25+8
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	cos
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L25+12
	stm	r1, {r2-r3}
	ldr	r3, .L25
	mov	r2, #1
	str	r2, [r3]
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	sin
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	b	.L24
.L23:
	ldr	r3, .L25
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L25+12
	ldmia	r3, {r2-r3}
.L24:
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L26:
	.align	2
.L25:
	.word	saved.5862
	.word	1413754136
	.word	1075388923
	.word	y.5863
	.size	simplerng_getnorm, .-simplerng_getnorm
	.global	__aeabi_dcmplt
	.align	2
	.global	simplerng_getpoisson
	.syntax unified
	.arm
	.fpu softvfp
	.type	simplerng_getpoisson, %function
simplerng_getpoisson:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-12]
	str	r1, [fp, #-8]
	mov	r2, #0
	mov	r3, #0
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L28
	mov	r2, #0
	mov	r3, #0
	str	r2, [fp, #-12]
	str	r3, [fp, #-8]
.L28:
	mov	r2, #0
	ldr	r3, .L37
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L36
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	simplerng_poisson_small
	mov	r3, r0
	b	.L33
.L36:
	sub	r1, fp, #12
	ldmia	r1, {r0-r1}
	bl	simplerng_poisson_large
	mov	r3, r0
.L33:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L38:
	.align	2
.L37:
	.word	1076756480
	.size	simplerng_getpoisson, .-simplerng_getpoisson
	.global	__aeabi_dcmpgt
	.align	2
	.global	simplerng_poisson_small
	.syntax unified
	.arm
	.fpu softvfp
	.type	simplerng_poisson_small, %function
simplerng_poisson_small:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #32
	str	r0, [fp, #-36]
	str	r1, [fp, #-32]
	mov	r0, #0
	ldr	r1, .L42
	str	r0, [fp, #-20]
	str	r1, [fp, #-16]
	ldr	r2, [fp, #-36]
	ldr	r1, [fp, #-32]
	eor	r3, r1, #-2147483648
	mov	r0, r2
	mov	r1, r3
	bl	exp
	str	r0, [fp, #-12]
	str	r1, [fp, #-8]
	mov	r3, #0
	str	r3, [fp, #-24]
.L40:
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	str	r3, [fp, #-24]
	bl	simplerng_getuniform
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	sub	r3, fp, #12
	ldmia	r3, {r2-r3}
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpgt
	mov	r3, r0
	cmp	r3, #0
	bne	.L40
	ldr	r3, [fp, #-24]
	sub	r3, r3, #1
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L43:
	.align	2
.L42:
	.word	1072693248
	.size	simplerng_poisson_small, .-simplerng_poisson_small
	.global	__aeabi_dcmpeq
	.global	__aeabi_ddiv
	.global	__aeabi_dsub
	.global	__aeabi_dadd
	.global	__aeabi_d2iz
	.global	__aeabi_dcmple
	.align	2
	.global	simplerng_poisson_large
	.syntax unified
	.arm
	.fpu softvfp
	.type	simplerng_poisson_large, %function
simplerng_poisson_large:
	@ args = 0, pretend = 0, frame = 80
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #80
	str	r0, [fp, #-92]
	str	r1, [fp, #-88]
	ldr	r3, .L56
	ldmia	r3, {r2-r3}
	sub	r1, fp, #92
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L51
	sub	r3, fp, #92
	ldmia	r3, {r2-r3}
	ldr	r0, .L56+4
	ldr	r1, .L56+8
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L56+12
	ldr	r1, .L56+16
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-76]
	str	r3, [fp, #-72]
	mov	r2, #0
	ldr	r3, .L56+20
	sub	r1, fp, #92
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	sqrt
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L56+24
	ldr	r1, .L56+28
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L56+32
	stm	r1, {r2-r3}
	ldr	r3, .L56+32
	ldmia	r3, {r0-r1}
	sub	r3, fp, #92
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L56+36
	stm	r1, {r2-r3}
	sub	r1, fp, #76
	ldmia	r1, {r0-r1}
	bl	log
	sub	r3, fp, #92
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L56+32
	ldmia	r3, {r2-r3}
	mov	r0, r2
	mov	r1, r3
	bl	log
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L56+40
	stm	r1, {r2-r3}
	ldr	r1, .L56
	sub	r3, fp, #92
	ldmia	r3, {r2-r3}
	stm	r1, {r2-r3}
.L51:
	bl	simplerng_getuniform
	str	r0, [fp, #-68]
	str	r1, [fp, #-64]
	ldr	r3, .L56+36
	ldmia	r3, {r4-r5}
	sub	r3, fp, #68
	ldmia	r3, {r2-r3}
	mov	r0, #0
	ldr	r1, .L56+44
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #68
	ldmia	r3, {r2-r3}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	log
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L56+32
	ldmia	r3, {r2-r3}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-60]
	str	r3, [fp, #-56]
	mov	r2, #0
	ldr	r3, .L56+48
	sub	r1, fp, #60
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	floor
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2iz
	mov	r3, r0
	str	r3, [fp, #-80]
	ldr	r3, [fp, #-80]
	cmp	r3, #0
	blt	.L55
	bl	simplerng_getuniform
	str	r0, [fp, #-52]
	str	r1, [fp, #-48]
	ldr	r3, .L56+36
	ldmia	r3, {r4-r5}
	ldr	r3, .L56+32
	ldmia	r3, {r0-r1}
	sub	r3, fp, #60
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-44]
	str	r3, [fp, #-40]
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	exp
	mov	r2, #0
	ldr	r3, .L56+44
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-36]
	str	r3, [fp, #-32]
	sub	r3, fp, #36
	ldmia	r3, {r2-r3}
	sub	r1, fp, #36
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #52
	ldmia	r1, {r0-r1}
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	log
	mov	r2, r0
	mov	r3, r1
	sub	r1, fp, #44
	ldmia	r1, {r0-r1}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r0, [fp, #-80]
	bl	__aeabi_i2d
	mov	r4, r0
	mov	r5, r1
	sub	r1, fp, #92
	ldmia	r1, {r0-r1}
	bl	log
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, .L56+40
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r0, [fp, #-80]
	bl	simplerng_logfactorial
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	sub	r1, fp, #28
	ldmia	r1, {r0-r1}
	bl	__aeabi_dcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L48
	ldr	r3, [fp, #-80]
	b	.L54
.L55:
	nop
.L48:
	b	.L51
.L54:
	mov	r0, r3
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L57:
	.align	2
.L56:
	.word	old_lambda.5881
	.word	-1374389535
	.word	1074454855
	.word	-1786706395
	.word	1072204611
	.word	1074266112
	.word	1413754136
	.word	1074340347
	.word	beta.5878
	.word	alpha.5879
	.word	k.5880
	.word	1072693248
	.word	1071644672
	.size	simplerng_poisson_large, .-simplerng_poisson_large
	.data
	.align	3
	.type	lf, %object
	.size	lf, 2040
lf:
	.word	0
	.word	0
	.word	0
	.word	0
	.word	4277811692
	.word	1072049730
	.word	4197064706
	.word	1073523467
	.word	2089954554
	.word	1074359463
	.word	1011120585
	.word	1074996836
	.word	986644938
	.word	1075466535
	.word	4079864880
	.word	1075907809
	.word	2197600013
	.word	1076180366
	.word	564656079
	.word	1076468361
	.word	2425703701
	.word	1076770165
	.word	1060801908
	.word	1076986007
	.word	383058243
	.word	1077148858
	.word	2621125325
	.word	1077316954
	.word	3742771779
	.word	1077489907
	.word	2789200711
	.word	1077667382
	.word	102701701
	.word	1077849087
	.word	1060058426
	.word	1077985446
	.word	4074106450
	.word	1078080157
	.word	1396062597
	.word	1078176641
	.word	2062383038
	.word	1078274805
	.word	1681158825
	.word	1078374568
	.word	2879934214
	.word	1078475855
	.word	2340776517
	.word	1078578599
	.word	55479572
	.word	1078682738
	.word	583886311
	.word	1078788214
	.word	1903978388
	.word	1078894975
	.word	3061731310
	.word	1078993838
	.word	2368930367
	.word	1079048433
	.word	1402040880
	.word	1079103603
	.word	2337919205
	.word	1079159328
	.word	4255013440
	.word	1079215590
	.word	2610176131
	.word	1079272373
	.word	1664798282
	.word	1079329660
	.word	1195939514
	.word	1079387436
	.word	434181719
	.word	1079445687
	.word	2041735000
	.word	1079504399
	.word	3240377750
	.word	1079563560
	.word	4149368739
	.word	1079623158
	.word	3264649233
	.word	1079683182
	.word	1550855074
	.word	1079743621
	.word	2258411780
	.word	1079804464
	.word	2168328941
	.word	1079865702
	.word	32422479
	.word	1079927326
	.word	732339440
	.word	1079989326
	.word	1135467936
	.word	1080042487
	.word	2124684968
	.word	1080073851
	.word	3881984619
	.word	1080105391
	.word	3360925017
	.word	1080137104
	.word	2467065539
	.word	1080168986
	.word	3723173681
	.word	1080201033
	.word	1642619701
	.word	1080233243
	.word	4170391003
	.word	1080265611
	.word	2587076302
	.word	1080298136
	.word	1544728345
	.word	1080330814
	.word	1860208401
	.word	1080363642
	.word	490330740
	.word	1080396618
	.word	3393668935
	.word	1080429738
	.word	4034230649
	.word	1080463001
	.word	541307589
	.word	1080496405
	.word	4280736857
	.word	1080529945
	.word	1182756793
	.word	1080563622
	.word	3265310368
	.word	1080597431
	.word	1374144355
	.word	1080631372
	.word	3823215805
	.word	1080665441
	.word	2021541384
	.word	1080699638
	.word	525375270
	.word	1080733960
	.word	4141471664
	.word	1080768404
	.word	736081442
	.word	1080802971
	.word	4174141174
	.word	1080837656
	.word	2769785087
	.word	1080872460
	.word	2226698166
	.word	1080907380
	.word	4154481265
	.word	1080942414
	.word	1765370864
	.word	1080977562
	.word	1341215049
	.word	1081012821
	.word	751198595
	.word	1081048190
	.word	3312333921
	.word	1081082761
	.word	4287325483
	.word	1081100553
	.word	333181539
	.word	1081118399
	.word	1443017001
	.word	1081136296
	.word	502829866
	.word	1081154245
	.word	3353560886
	.word	1081172244
	.word	3018711468
	.word	1081190294
	.word	1176726846
	.word	1081208394
	.word	3863693013
	.word	1081226542
	.word	4291242337
	.word	1081244739
	.word	24301654
	.word	1081262985
	.word	1569003862
	.word	1081281277
	.word	2305986331
	.word	1081299616
	.word	4258351430
	.word	1081318001
	.word	910036471
	.word	1081336433
	.word	2973934443
	.word	1081354909
	.word	4030546188
	.word	1081373430
	.word	2001277030
	.word	1081391996
	.word	3441930084
	.word	1081410605
	.word	2066458199
	.word	1081429258
	.word	220447980
	.word	1081447954
	.word	289888796
	.word	1081466692
	.word	404962285
	.word	1081485472
	.word	3028784225
	.word	1081504293
	.word	2071357878
	.word	1081523156
	.word	68343966
	.word	1081542060
	.word	3885037502
	.word	1081561003
	.word	3240516622
	.word	1081579987
	.word	771438205
	.word	1081599011
	.word	3441165160
	.word	1081618073
	.word	1064027390
	.word	1081637175
	.word	664191515
	.word	1081656315
	.word	705020767
	.word	1081675493
	.word	3973171379
	.word	1081694708
	.word	397947339
	.word	1081713962
	.word	1410290781
	.word	1081733252
	.word	1287355181
	.word	1081752579
	.word	2921613626
	.word	1081771942
	.word	640318656
	.word	1081791342
	.word	1679691190
	.word	1081810777
	.word	414491627
	.word	1081830248
	.word	4127219978
	.word	1081849753
	.word	2942761677
	.word	1081869294
	.word	4187562534
	.word	1081888869
	.word	2324313100
	.word	1081908479
	.word	426258666
	.word	1081928123
	.word	1586755510
	.word	1081947800
	.word	328843794
	.word	1081967511
	.word	4079607459
	.word	1081987254
	.word	3104941899
	.word	1082007031
	.word	573878472
	.word	1082026841
	.word	3968217474
	.word	1082046682
	.word	3607272780
	.word	1082066556
	.word	2712237095
	.word	1082086462
	.word	225919466
	.word	1082106400
	.word	3697265933
	.word	1082126368
	.word	1755593053
	.word	1082138400
	.word	3623966525
	.word	1082148415
	.word	2661508589
	.word	1082158446
	.word	2673303609
	.word	1082168492
	.word	3176699491
	.word	1082178553
	.word	3696116069
	.word	1082188629
	.word	3762890793
	.word	1082198720
	.word	2915128895
	.word	1082208826
	.word	697557840
	.word	1082218947
	.word	956353218
	.word	1082229082
	.word	3249066750
	.word	1082239231
	.word	2844492737
	.word	1082249395
	.word	3607440126
	.word	1082259573
	.word	818737091
	.word	1082269766
	.word	2649944754
	.word	1082279972
	.word	98466701
	.word	1082290193
	.word	1347171186
	.word	1082300427
	.word	1699507008
	.word	1082310675
	.word	759262686
	.word	1082320937
	.word	2430459359
	.word	1082331212
	.word	2032344637
	.word	1082341501
	.word	3479160256
	.word	1082351803
	.word	2100174003
	.word	1082362119
	.word	1819452580
	.word	1082372448
	.word	2270865871
	.word	1082382790
	.word	3092962784
	.word	1082393145
	.word	3928882129
	.word	1082403513
	.word	131298447
	.word	1082413895
	.word	4237173790
	.word	1082424288
	.word	3018002175
	.word	1082434695
	.word	429402004
	.word	1082445115
	.word	431168319
	.word	1082455547
	.word	2692228872
	.word	1082465991
	.word	2590569352
	.word	1082476448
	.word	4098062303
	.word	1082486917
	.word	2600526734
	.word	1082497399
	.word	2077527784
	.word	1082507893
	.word	2217406977
	.word	1082518399
	.word	2712183254
	.word	1082528917
	.word	3257488267
	.word	1082539447
	.word	3552503188
	.word	1082549989
	.word	3299896970
	.word	1082560543
	.word	2205766040
	.word	1082571109
	.word	4274542674
	.word	1082581686
	.word	629068227
	.word	1082592276
	.word	3870275223
	.word	1082602876
	.word	832492092
	.word	1082613489
	.word	4122996941
	.word	1082624112
	.word	582357427
	.word	1082634748
	.word	2823986898
	.word	1082645394
	.word	1989453850
	.word	1082656052
	.word	2108171124
	.word	1082666721
	.word	2917478611
	.word	1082677401
	.word	4157563489
	.word	1082688092
	.word	1276446877
	.word	1082698795
	.word	2609807955
	.word	1082709508
	.word	3611136097
	.word	1082720232
	.word	4031556883
	.word	1082730967
	.word	3624822555
	.word	1082741713
	.word	2147270652
	.word	1082752470
	.word	3652750804
	.word	1082763237
	.word	3607683185
	.word	1082774015
	.word	1775921561
	.word	1082784804
	.word	2218715244
	.word	1082795603
	.word	409769956
	.word	1082806413
	.word	415080491
	.word	1082817233
	.word	2007993077
	.word	1082828063
	.word	669170319
	.word	1082838904
	.word	471458759
	.word	1082849755
	.word	1194953324
	.word	1082860616
	.word	2621931630
	.word	1082871487
	.word	241854362
	.word	1082882369
	.word	2431202744
	.word	1082893260
	.word	388676395
	.word	1082904162
	.word	2494901218
	.word	1082915073
	.word	4247628441
	.word	1082925994
	.word	1146607197
	.word	1082936926
	.word	1578457672
	.word	1082947867
	.word	1046839117
	.word	1082958818
	.word	3647258673
	.word	1082969778
	.word	592207753
	.word	1082980749
	.word	275906489
	.word	1082991729
	.word	2504473814
	.word	1083002718
	.word	2790869128
	.word	1083013717
	.word	944801720
	.word	1083024726
	.word	1072706066
	.word	1083035744
	.word	2987782986
	.word	1083046771
	.word	2209975851
	.word	1083057808
	.word	2850849094
	.word	1083068854
	.word	433696083
	.word	1083079910
	.word	3368353066
	.word	1083090974
	.word	2886405983
	.word	1083102048
	.word	3105939795
	.word	1083113131
	.word	3851647971
	.word	1083124223
	.word	654811514
	.word	1083135325
	.word	1933147549
	.word	1083146435
	.word	3220985327
	.word	1083157554
	.word	54148223
	.word	1083168683
	.word	427418052
	.word	1083179414
	.word	580901176
	.word	1083184987
	.word	2552585740
	.word	1083190564
	.word	1965792067
	.word	1083196146
	.word	3034474961
	.word	1083201732
	.word	1383345581
	.word	1083207323
	.word	1227731814
	.word	1083212918
	.word	2488667736
	.word	1083218517
	.word	792885109
	.word	1083224121
	.word	357706901
	.word	1083229729
	.word	1106137175
	.word	1083235341
	.word	2961820291
	.word	1083240957
	.word	1554065666
	.word	1083246578
	.word	1102741829
	.word	1083252203
	.word	1533366848
	.word	1083257832
	.word	2772068049
	.word	1083263465
	.word	450607278
	.word	1083269103
	.word	3086242766
	.word	1083274744
	.word	2016950842
	.word	1083280390
	.word	1466189919
	.word	1083286040
	.word	1363024336
	.word	1083291694
	.word	1637084786
	.word	1083297352
	.word	2218561560
	.word	1083303014
	.word	3038197902
	.word	1083308680
	.word	4027283460
	.word	1083314350
	.text
	.align	2
	.global	simplerng_logfactorial
	.syntax unified
	.arm
	.fpu softvfp
	.type	simplerng_logfactorial, %function
simplerng_logfactorial:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #16
	str	r0, [fp, #-24]
	ldr	r3, [fp, #-24]
	cmp	r3, #0
	bge	.L59
	mov	r2, #0
	mov	r3, #0
	b	.L60
.L59:
	ldr	r3, [fp, #-24]
	cmp	r3, #254
	ble	.L61
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	mov	r2, #0
	ldr	r3, .L62
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	log
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r2, .L62+4
	ldr	r3, .L62+8
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	mov	r2, #0
	ldr	r3, .L62+12
	sub	r1, fp, #20
	ldmia	r1, {r0-r1}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, #0
	ldr	r1, .L62+16
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	b	.L60
.L61:
	ldr	r2, .L62+20
	ldr	r3, [fp, #-24]
	lsl	r3, r3, #3
	add	r3, r2, r3
	ldmia	r3, {r2-r3}
.L60:
	mov	r0, r2
	mov	r1, r3
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L63:
	.align	2
.L62:
	.word	1071644672
	.word	-932921676
	.word	1072523249
	.word	1076363264
	.word	1072693248
	.word	lf
	.size	simplerng_logfactorial, .-simplerng_logfactorial
	.local	saved.5862
	.comm	saved.5862,4,4
	.local	y.5863
	.comm	y.5863,8,8
	.data
	.align	3
	.type	old_lambda.5881, %object
	.size	old_lambda.5881, 8
old_lambda.5881:
	.word	0
	.word	-1053916034
	.local	beta.5878
	.comm	beta.5878,8,8
	.local	alpha.5879
	.comm	alpha.5879,8,8
	.local	k.5880
	.comm	k.5880,8,8
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
