// File: /workspace/github_c_makefile_star2_O3/dapogon[P]cellcoal/src/cellcoal.c
// Function: PrintCommandLine
static void PrintCommandLine (FILE *fp, int argc,char **argv)
    {
	int i;

	if (readingParameterFile == NO)
		fprintf (fp, "Command line arguments (some might not affect) = %s", CommandLine);
	else
		{
		fprintf (fp, "Parameter file [\"%s\"] arguments (some might not affect) = ", parameterFile);

		/* Coalescent */
		fprintf (fp, " -n%d -s%d -l%d -e%d -g%2.1e -K%2.1e -L%2.1e -h%d", numDataSets, numCells, numSites, N, growthRate, birthRate, deathRate, numPeriods);
		for (i=1; i<=numPeriods; i++)
			fprintf (fp, " %d %d %d", Nbegin[i], Nend[i], cumDuration[i]-cumDuration[i-1]);

		/* Post-coalescent */
		fprintf (fp, " -k%2.1e", transformingBranchLengthRatio);
		fprintf (fp, " -q%2.1e", healthyTipBranchLengthRatio);
		fprintf (fp, " -i%6.4f", alphaBranches);
		if (doTreeRateSwitches == YES)
			{
			fprintf (fp, " -N%d", numTreeRateSwitches);
			for (i=0; i<numTreeRateSwitches; i++)
				fprintf (fp, " %4.2f", treeRateSwitchMultiplier[i]);
			}
		
		/* Mutation model */
		fprintf (fp, " -b%d", alphabet);
		fprintf (fp, " -c%2.1e", SNPrate);
		fprintf (fp, " -u%2.1e", mutationRate);
		fprintf (fp, " -d%2.1e", deletionRate);
		fprintf (fp, " -H%2.1e", CNLOHrate);
		fprintf (fp, " -j%d", numFixedMutations);
		fprintf (fp, " -S%d", numUserSignatures);
		for (i=0; i<numUserSignatures; i++)
			fprintf (fp, " %d %4.2f", signatureID[i], signatureWeight[i]);
		fprintf (fp, " -m%d", altModel);
		fprintf (fp, " -p%6.4f", propAltModelSites);
		fprintf (fp, " -w%6.4f", nonISMRelMutRate);
		fprintf (fp, " -f%3.2f %3.2f %3.2f %3.2f", freq[0], freq[1], freq[2], freq[3]);
		fprintf (fp, " -t%6.4f", titv);
		fprintf (fp, " -a%6.4f", alphaSites);
		fprintf (fp, " -r%3.2f %3.2f %3.2f %3.2f  %3.2f %3.2f %3.2f %3.2f %3.2f %3.2f %3.2f %3.2f %3.2f %3.2f %3.2f %3.2f", Mij[0][0], Mij[0][1], Mij[0][2], Mij[0][3]
		, Mij[1][0], Mij[1][1], Mij[1][2], Mij[1][3],  Mij[2][0], Mij[2][1], Mij[2][2], Mij[2][3],  Mij[3][0], Mij[3][1], Mij[3][2], Mij[3][3]);

		/* scWGA */
		fprintf (fp, " -D%2.1e", fixedADOrate);
		fprintf (fp, " -P%2.1e %2.1e", meanADOcell, varADOcell);
		fprintf (fp, " -Q%2.1e %2.1e", meanADOsite, varADOsite);
		fprintf (fp, " -I%2.1e %2.1e", meanAllelicImbalance, varAllelicImbalance);
		fprintf (fp, " -A%2.1e %2.1e %d", meanAmplificationError, varAmplificationError, simulateOnlyTwoTemplates);
		fprintf (fp, " -B%2.1e %2.1e", meanDoubletRate, varDoubletRate);

		/* GENOTYPING */
		fprintf (fp, " -G%2.1e %2.1e", meanGenotypingError, varGenotypingError);

		/* NGS */
		fprintf (fp, " -C%3.2f", coverage);
		fprintf (fp, " -V%6.4f", alphaCoverage);
		fprintf (fp, " -R%2.1e", haploidCoverageReduction);
		fprintf (fp, " -E%2.1e", sequencingError);
		fprintf (fp, " -X%3.2f %3.2f %3.2f %3.2f %3.2f %3.2f %3.2f %3.2f %3.2f %3.2f %3.2f %3.2f %3.2f %3.2f %3.2f %3.2f", Eij[0][0], Eij[0][1], Eij[0][2], Eij[0][3]
		, Eij[1][0], Eij[1][1], Eij[1][2], Eij[1][3],  Eij[2][0], Eij[2][1], Eij[2][2], Eij[2][3],  Eij[3][0], Eij[3][1], Eij[3][2], Eij[3][3]);

		/* Output */
		if (doPrintSNVgenotypes == YES)
			fprintf (fp, " -%d", 1);
		if (doPrintSNVhaplotypes == YES)
			fprintf (fp, " -%d", 2);
		if (doPrintFullGenotypes == YES)
			fprintf (fp, " -%d", 3);
		if (doPrintFullHaplotypes == YES)
			fprintf (fp, " -%d", 4);
		if (doPrintAncestors == YES)
			fprintf (fp, " -%d", 5);
		if (doPrintTree == YES)
			fprintf (fp, " -%d", 6);
		if (doPrintTimes == YES)
			fprintf (fp, " -%d", 7);
		if (doPrintCATG == YES)
			fprintf (fp, " -%d", 8);
		if (doPrintPILEUP == YES)
			fprintf (fp, " -%d", 9);
		if (doPrintTrueHaplotypes == YES)
			fprintf (fp, " -%c", 'Y');
		if (doPrintSeparateReplicates == YES)
			fprintf (fp, " -%c", 'v');
		if (doPrintIUPAChaplotypes == YES)
			fprintf (fp, " -%c", 'x');
		fprintf (fp, " -o%s", resultsDir);
		if (doUserTree == YES)
			fprintf (fp, " -T%s", userTreeFile);
		if (doUserGenome == YES)
			fprintf (fp, " -U%s", userGenomeFile);

		/* Other */
		if (doTumorNames == YES)
			fprintf (fp, " -%c", 'W');
		fprintf (fp, " -y%d -#%ld", noisy, originalSeed);
		}
	}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x40, %rsp
movq %rdi, %rbx
cmpb $0x0, 0x230b1(%rip)     # 0x36528
je 0x13be8
leaq 0x14d25(%rip), %rsi     # 0x281a9
leaq 0x23025(%rip), %rdx     # 0x364b0
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
movl 0x22d05(%rip), %edx     # 0x361a0
movl 0x22d03(%rip), %ecx     # 0x361a4
movl 0x22d00(%rip), %r8d     # 0x361a8
movl 0x22cfd(%rip), %r9d     # 0x361ac
movsd 0x22d09(%rip), %xmm0    # 0x361c0
movsd 0x22d09(%rip), %xmm1    # 0x361c8
movsd 0x22d09(%rip), %xmm2    # 0x361d0
movl 0x22ce3(%rip), %eax     # 0x361b0
movl %eax, (%rsp)
leaq 0x14d0d(%rip), %rsi     # 0x281e4
movq %rbx, %rdi
movb $0x3, %al
callq 0x21c0
cmpl $0x0, 0x22cc8(%rip)     # 0x361b0
jle 0x13538
leaq 0x15078(%rip), %r14     # 0x28569
xorl %r15d, %r15d
movq 0x24235(%rip), %rax     # 0x37730
movl 0x4(%rax,%r15,4), %edx
movq 0x24221(%rip), %rax     # 0x37728
movl 0x4(%rax,%r15,4), %ecx
movq 0x24225(%rip), %rax     # 0x37738
movl 0x4(%rax,%r15,4), %r8d
subl (%rax,%r15,4), %r8d
movq %rbx, %rdi
movq %r14, %rsi
xorl %eax, %eax
callq 0x21c0
movslq 0x22c80(%rip), %rax     # 0x361b0
incq %r15
cmpq %rax, %r15
jl 0x134f4
movsd 0x22e98(%rip), %xmm0    # 0x363d8
leaq 0x14ccf(%rip), %rsi     # 0x28216
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x22e87(%rip), %xmm0    # 0x363e0
leaq 0x14cbf(%rip), %rsi     # 0x2821f
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x22dfe(%rip), %xmm0    # 0x36370
leaq 0x14caf(%rip), %rsi     # 0x28228
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
cmpb $0x1, 0x22c62(%rip)     # 0x361ec
jne 0x135df
movl 0x22c5e(%rip), %edx     # 0x361f0
leaq 0x14c98(%rip), %rsi     # 0x28231
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpl $0x0, 0x22c46(%rip)     # 0x361f0
jle 0x135df
xorl %r15d, %r15d
leaq 0x13dd4(%rip), %r14     # 0x2738a
movq 0x2414b(%rip), %rax     # 0x37708
movsd (%rax,%r15,8), %xmm0
movq %rbx, %rdi
movq %r14, %rsi
movb $0x1, %al
callq 0x21c0
incq %r15
movslq 0x22c16(%rip), %rax     # 0x361f0
cmpq %rax, %r15
jl 0x135b6
movl 0x22c0f(%rip), %edx     # 0x361f4
leaq 0x14c4b(%rip), %rsi     # 0x28237
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
movsd 0x22be2(%rip), %xmm0    # 0x361e0
leaq 0x14c38(%rip), %rsi     # 0x2823d
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x22bc1(%rip), %xmm0    # 0x361d8
leaq 0x14c28(%rip), %rsi     # 0x28246
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x23fe0(%rip), %xmm0    # 0x37610
leaq 0x14c18(%rip), %rsi     # 0x2824f
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x23faf(%rip), %xmm0    # 0x375f8
leaq 0x14c08(%rip), %rsi     # 0x28258
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movl 0x24148(%rip), %edx     # 0x377a8
leaq 0x14bfa(%rip), %rsi     # 0x28261
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
movl 0x22d59(%rip), %edx     # 0x363d0
leaq 0x14be9(%rip), %rsi     # 0x28267
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpl $0x0, 0x22d41(%rip)     # 0x363d0
jle 0x136cf
xorl %r15d, %r15d
leaq 0x14bd2(%rip), %r14     # 0x2826d
movq 0x2404e(%rip), %rax     # 0x376f0
movl (%rax,%r15,4), %edx
movq 0x2403b(%rip), %rax     # 0x376e8
movsd (%rax,%r15,8), %xmm0
movq %rbx, %rdi
movq %r14, %rsi
movb $0x1, %al
callq 0x21c0
incq %r15
movslq 0x22d06(%rip), %rax     # 0x363d0
cmpq %rax, %r15
jl 0x1369b
movl 0x22b23(%rip), %edx     # 0x361f8
leaq 0x14b9b(%rip), %rsi     # 0x28277
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
movsd 0x22b12(%rip), %xmm0    # 0x36200
leaq 0x14b88(%rip), %rsi     # 0x2827d
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x22b01(%rip), %xmm0    # 0x36208
leaq 0x14b78(%rip), %rsi     # 0x28286
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x22af0(%rip), %xmm0    # 0x36210
movsd 0x22af0(%rip), %xmm1    # 0x36218
movsd 0x22af0(%rip), %xmm2    # 0x36220
movsd 0x22af0(%rip), %xmm3    # 0x36228
leaq 0x14b50(%rip), %rsi     # 0x2828f
movq %rbx, %rdi
movb $0x4, %al
callq 0x21c0
movsd 0x22adf(%rip), %xmm0    # 0x36230
leaq 0x14b52(%rip), %rsi     # 0x282aa
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x22bfe(%rip), %xmm0    # 0x36368
leaq 0x14b42(%rip), %rsi     # 0x282b3
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x22abd(%rip), %xmm0    # 0x36240
movsd 0x22abd(%rip), %xmm1    # 0x36248
movsd 0x22abd(%rip), %xmm2    # 0x36250
movsd 0x22abd(%rip), %xmm3    # 0x36258
movsd 0x22abd(%rip), %xmm4    # 0x36260
movsd 0x22abd(%rip), %xmm5    # 0x36268
movsd 0x22abd(%rip), %xmm6    # 0x36270
movsd 0x22abd(%rip), %xmm7    # 0x36278
movaps 0x22abd(%rip), %xmm8    # 0x36280
movaps 0x22ac5(%rip), %xmm9    # 0x36290
movaps 0x22acd(%rip), %xmm10   # 0x362a0
movaps 0x22ad5(%rip), %xmm11   # 0x362b0
movups %xmm11, 0x30(%rsp)
movups %xmm10, 0x20(%rsp)
movups %xmm9, 0x10(%rsp)
movups %xmm8, (%rsp)
leaq 0x14ac3(%rip), %rsi     # 0x282bc
movq %rbx, %rdi
movb $0x8, %al
callq 0x21c0
movsd 0x22bed(%rip), %xmm0    # 0x363f8
leaq 0x14b0e(%rip), %rsi     # 0x28320
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x22bf4(%rip), %xmm0    # 0x36418
movsd 0x22bf4(%rip), %xmm1    # 0x36420
leaq 0x14af6(%rip), %rsi     # 0x28329
movq %rbx, %rdi
movb $0x2, %al
callq 0x21c0
movsd 0x22be3(%rip), %xmm0    # 0x36428
movsd 0x22be3(%rip), %xmm1    # 0x36430
leaq 0x14ae4(%rip), %rsi     # 0x28338
movq %rbx, %rdi
movb $0x2, %al
callq 0x21c0
movsd 0x22c12(%rip), %xmm0    # 0x36478
movsd 0x22c12(%rip), %xmm1    # 0x36480
leaq 0x14ad2(%rip), %rsi     # 0x28347
movq %rbx, %rdi
movb $0x2, %al
callq 0x21c0
movsd 0x22bc9(%rip), %xmm0    # 0x36450
movsd 0x22bc9(%rip), %xmm1    # 0x36458
movl 0x22bcb(%rip), %edx     # 0x36460
leaq 0x14aba(%rip), %rsi     # 0x28356
movq %rbx, %rdi
movb $0x2, %al
callq 0x21c0
movsd 0x22bda(%rip), %xmm0    # 0x36488
movsd 0x22bda(%rip), %xmm1    # 0x36490
leaq 0x14aab(%rip), %rsi     # 0x28368
movq %rbx, %rdi
movb $0x2, %al
callq 0x21c0
movsd 0x22b71(%rip), %xmm0    # 0x36440
movsd 0x22b71(%rip), %xmm1    # 0x36448
leaq 0x14a99(%rip), %rsi     # 0x28377
movq %rbx, %rdi
movb $0x2, %al
callq 0x21c0
movsd 0x22af8(%rip), %xmm0    # 0x363e8
leaq 0x14a8f(%rip), %rsi     # 0x28386
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x22a6f(%rip), %xmm0    # 0x36378
leaq 0x14a7f(%rip), %rsi     # 0x2838f
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x22b46(%rip), %xmm0    # 0x36468
leaq 0x14a6f(%rip), %rsi     # 0x28398
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x22afd(%rip), %xmm0    # 0x36438
leaq 0x14a5f(%rip), %rsi     # 0x283a1
movq %rbx, %rdi
movb $0x1, %al
callq 0x21c0
movsd 0x2297c(%rip), %xmm0    # 0x362d0
movsd 0x2297c(%rip), %xmm1    # 0x362d8
movsd 0x2297c(%rip), %xmm2    # 0x362e0
movsd 0x2297c(%rip), %xmm3    # 0x362e8
movsd 0x2297c(%rip), %xmm4    # 0x362f0
movsd 0x2297c(%rip), %xmm5    # 0x362f8
movsd 0x2297c(%rip), %xmm6    # 0x36300
movsd 0x2297c(%rip), %xmm7    # 0x36308
movaps 0x2297c(%rip), %xmm8    # 0x36310
movaps 0x22984(%rip), %xmm9    # 0x36320
movaps 0x2298c(%rip), %xmm10   # 0x36330
movaps 0x22994(%rip), %xmm11   # 0x36340
movups %xmm11, 0x30(%rsp)
movups %xmm10, 0x20(%rsp)
movups %xmm9, 0x10(%rsp)
movups %xmm8, (%rsp)
leaq 0x149e0(%rip), %rsi     # 0x283aa
movq %rbx, %rdi
movb $0x8, %al
callq 0x21c0
cmpb $0x1, 0x229b1(%rip)     # 0x3638c
jne 0x139f3
leaq 0x14a29(%rip), %rsi     # 0x2840d
movq %rbx, %rdi
movl $0x1, %edx
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x22996(%rip)     # 0x36390
jne 0x13a12
leaq 0x14a0a(%rip), %rsi     # 0x2840d
movq %rbx, %rdi
movl $0x2, %edx
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x22983(%rip)     # 0x3639c
jne 0x13a31
leaq 0x149eb(%rip), %rsi     # 0x2840d
movq %rbx, %rdi
movl $0x3, %edx
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x22960(%rip)     # 0x36398
jne 0x13a50
leaq 0x149cc(%rip), %rsi     # 0x2840d
movq %rbx, %rdi
movl $0x4, %edx
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x22951(%rip)     # 0x363a8
jne 0x13a6f
leaq 0x149ad(%rip), %rsi     # 0x2840d
movq %rbx, %rdi
movl $0x5, %edx
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x2292a(%rip)     # 0x363a0
jne 0x13a8e
leaq 0x1498e(%rip), %rsi     # 0x2840d
movq %rbx, %rdi
movl $0x6, %edx
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x2290f(%rip)     # 0x363a4
jne 0x13aad
leaq 0x1496f(%rip), %rsi     # 0x2840d
movq %rbx, %rdi
movl $0x7, %edx
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x22904(%rip)     # 0x363b8
jne 0x13acc
leaq 0x14950(%rip), %rsi     # 0x2840d
movq %rbx, %rdi
movl $0x8, %edx
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x228e9(%rip)     # 0x363bc
jne 0x13aeb
leaq 0x14931(%rip), %rsi     # 0x2840d
movq %rbx, %rdi
movl $0x9, %edx
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x228a2(%rip)     # 0x36394
jne 0x13b0a
leaq 0x14917(%rip), %rsi     # 0x28412
movq %rbx, %rdi
movl $0x59, %edx
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x228b3(%rip)     # 0x363c4
jne 0x13b29
leaq 0x148f8(%rip), %rsi     # 0x28412
movq %rbx, %rdi
movl $0x76, %edx
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x22898(%rip)     # 0x363c8
jne 0x13b48
leaq 0x148d9(%rip), %rsi     # 0x28412
movq %rbx, %rdi
movl $0x78, %edx
xorl %eax, %eax
callq 0x21c0
leaq 0x148c8(%rip), %rsi     # 0x28417
leaq 0x22d7a(%rip), %rdx     # 0x368d0
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x2281d(%rip)     # 0x36384
jne 0x13b81
leaq 0x148ad(%rip), %rsi     # 0x2841d
leaq 0x23659(%rip), %rdx     # 0x371d0
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x22800(%rip)     # 0x36388
jne 0x13ba2
leaq 0x14892(%rip), %rsi     # 0x28423
leaq 0x236b8(%rip), %rdx     # 0x37250
movq %rbx, %rdi
xorl %eax, %eax
callq 0x21c0
cmpb $0x1, 0x22807(%rip)     # 0x363b0
jne 0x13bc1
leaq 0x14860(%rip), %rsi     # 0x28412
movq %rbx, %rdi
movl $0x57, %edx
xorl %eax, %eax
callq 0x21c0
movl 0x228e1(%rip), %edx     # 0x364a8
movq 0x22afa(%rip), %rcx     # 0x366c8
leaq 0x14854(%rip), %rsi     # 0x28429
movq %rbx, %rdi
xorl %eax, %eax
addq $0x40, %rsp
popq %rbx
popq %r14
popq %r15
jmp 0x21c0
movq 0x23ae9(%rip), %rdx     # 0x376d8
leaq 0x1457f(%rip), %rsi     # 0x28175
movq %rbx, %rdi
xorl %eax, %eax
addq $0x40, %rsp
popq %rbx
popq %r14
popq %r15
jmp 0x21c0