// File: /workspace/github_cpp_makefile_star2_O2/PeterDenton[P]Nu-Pert/src/Mixed.cpp
// Function: Mixed::UMNSm(double, double, int)
Matrix<std::complex<double> > UMNSm(double a, double delta, int order)
{
	double t12m = atan2(sqrt(s12msq(a, order)), sqrt(c12msq(a, order)));
	double t13m = atan2(sqrt(s13msq(a, order)), sqrt(c13msq(a, order)));
	double t23m = atan2(sqrt(s23msq(a, delta, order)), sqrt(c23msq(a, delta, order)));
	double deltam = atan2(sdeltam(a, delta, order), cdeltam(a, delta, order));

	Matrix<std::complex<double> > U12m = U12(t12m);
	Matrix<std::complex<double> > U13m = U13(t13m);
	Matrix<std::complex<double> > U23m = U23(deltam, t23m);

	return U23m * U13m * U12m;
}

// Assembly:
pushq %rbp
pushq %rbx
subq $0xc8, %rsp
movl %esi, %ebp
movsd %xmm1, 0x28(%rsp)
movq %rdi, %rbx
movsd %xmm0, 0x8(%rsp)
movl %esi, %edi
callq 0x9026
xorpd %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jb 0x96a2
sqrtsd %xmm0, %xmm0
jmp 0x96a7
callq 0x2120
movsd %xmm0, 0x20(%rsp)
movsd 0x8(%rsp), %xmm0
movl %ebp, %edi
callq 0x9127
ucomisd 0x2c96(%rip), %xmm0     # 0xc358
jb 0x96ca
sqrtsd %xmm0, %xmm1
jmp 0x96d3
callq 0x2120
movapd %xmm0, %xmm1
movsd 0x20(%rsp), %xmm0
callq 0x2050
movsd %xmm0, 0x20(%rsp)
movsd 0x8(%rsp), %xmm0
movl %ebp, %edi
callq 0x913f
xorpd %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jb 0x9701
sqrtsd %xmm0, %xmm0
jmp 0x9706
callq 0x2120
movsd %xmm0, 0x18(%rsp)
movsd 0x8(%rsp), %xmm0
movl %ebp, %edi
callq 0x91d4
ucomisd 0x2c37(%rip), %xmm0     # 0xc358
jb 0x9729
sqrtsd %xmm0, %xmm1
jmp 0x9732
callq 0x2120
movapd %xmm0, %xmm1
movsd 0x18(%rsp), %xmm0
callq 0x2050
movsd %xmm0, 0x18(%rsp)
movsd 0x8(%rsp), %xmm0
movsd 0x28(%rsp), %xmm1
movl %ebp, %edi
callq 0x91ec
xorpd %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jb 0x9766
sqrtsd %xmm0, %xmm0
jmp 0x976b
callq 0x2120
movsd %xmm0, 0x10(%rsp)
movsd 0x8(%rsp), %xmm0
movsd 0x28(%rsp), %xmm1
movl %ebp, %edi
callq 0x92ef
ucomisd 0x2bcc(%rip), %xmm0     # 0xc358
jb 0x9794
sqrtsd %xmm0, %xmm1
jmp 0x979d
callq 0x2120
movapd %xmm0, %xmm1
movsd 0x10(%rsp), %xmm0
callq 0x2050
movsd %xmm0, 0x30(%rsp)
movsd 0x8(%rsp), %xmm0
movsd 0x28(%rsp), %xmm1
movl %ebp, %edi
callq 0x94e4
movsd %xmm0, 0x10(%rsp)
movsd 0x8(%rsp), %xmm0
movsd 0x28(%rsp), %xmm1
movl %ebp, %edi
callq 0x9307
movaps %xmm0, %xmm1
movsd 0x10(%rsp), %xmm0
callq 0x2050
movsd %xmm0, 0x8(%rsp)
leaq 0xb0(%rsp), %rdi
movsd 0x20(%rsp), %xmm0
callq 0x3a8f
leaq 0x98(%rsp), %rdi
movsd 0x18(%rsp), %xmm0
callq 0x3985
leaq 0x80(%rsp), %rdi
movsd 0x8(%rsp), %xmm0
movsd 0x30(%rsp), %xmm1
callq 0x382e
leaq 0x50(%rsp), %rdi
leaq 0x98(%rsp), %rsi
callq 0x8724
leaq 0x68(%rsp), %rdi
leaq 0x80(%rsp), %rsi
leaq 0x50(%rsp), %rdx
callq 0x8a32
leaq 0x38(%rsp), %rdi
leaq 0xb0(%rsp), %rsi
callq 0x8724
leaq 0x68(%rsp), %rsi
leaq 0x38(%rsp), %rdx
movq %rbx, %rdi
callq 0x8a32
leaq 0x38(%rsp), %rdi
callq 0x87a2
leaq 0x68(%rsp), %rdi
callq 0x87a2
leaq 0x50(%rsp), %rdi
callq 0x87a2
leaq 0x80(%rsp), %rdi
callq 0x87a2
leaq 0x98(%rsp), %rdi
callq 0x87a2
leaq 0xb0(%rsp), %rdi
callq 0x87a2
movq %rbx, %rax
addq $0xc8, %rsp
popq %rbx
popq %rbp
retq
movq %rax, %rbx
leaq 0x38(%rsp), %rdi
callq 0x87a2
jmp 0x98de
movq %rax, %rbx
leaq 0x68(%rsp), %rdi
callq 0x87a2
jmp 0x98ed
movq %rax, %rbx
leaq 0x50(%rsp), %rdi
callq 0x87a2
jmp 0x98fc
movq %rax, %rbx
leaq 0x80(%rsp), %rdi
callq 0x87a2
jmp 0x990e
movq %rax, %rbx
leaq 0x98(%rsp), %rdi
callq 0x87a2
leaq 0xb0(%rsp), %rdi
callq 0x87a2
movq %rbx, %rdi
callq 0x2280
movq %rax, %rbx
jmp 0x991b