// File: /workspace/github_cpp_makefile_star2_O3/richardposner[P]BioNetFit2/src/./code/Swarm.hh
// Function: void Swarm::serialize<boost::archive::binary_iarchive>(boost::archive::binary_iarchive&, unsigned int)
void serialize(Archive& ar, const unsigned version) {
		//std::cout << " serializing swarm" << std::endl;

		ar & options;

		ar & allGenFits;
		ar & bootstrapMaps;

		ar & isMaster;
		ar & currentGeneration;
		ar & resumingSavedSwarm;
		ar & hasMutate;

		ar & runningSubParticles_;
		ar & failedSubParticles_;
		ar & finishedSubParticles_;
		ar & finishedParticles_;
		ar & freeParamMapping; //razi this keeps the mapping from models free parameters to the full list of free parameters
		ar & runningParticles_;
		ar & failedParticles_;

		ar & exePath_;
		ar & configPath_;
		ar & sConf_;

		ar & populationTopology_;
		ar & particleBestFits_;
		ar & particleBestFitsByFit_;
		ar & swarmBestFits_;
		ar & particleParamVelocities_;
		ar & particleBestParamSets_;
		ar & particleCurrParamSets_;
		ar & particleWeights_;
		ar & particleIterationCounter_;
		ar & particleToIsland_;
		ar & islandToParticle_;

		ar & permanenceCounter_;
		ar & flightCounter_;
		ar & weightedAvgPos_;
		ar & optimum_;
		ar & inertiaUpdateCounter_;
		ar & beta_;
		ar & cauchyMutator_;
	}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %r15
movq %rdi, %rbx
leaq 0x14c0(%rdi), %r14
callq 0xc49a4
movq %r15, %rdi
movq %r14, %rsi
movq %rax, %rdx
callq 0xe5cc0
leaq 0x8(%rbx), %r14
callq 0xc57e4
movq %r15, %rdi
movq %r14, %rsi
movq %rax, %rdx
callq 0xe5cc0
leaq 0x38(%rbx), %r14
callq 0xc5914
movq %r15, %rdi
movq %r14, %rsi
movq %rax, %rdx
callq 0xe5cc0
leaq 0x50(%rbx), %rsi
leaq 0x28(%r15), %r14
movq %r14, %rdi
callq 0xc7052
leaq 0x13e8(%rbx), %rsi
movq %r14, %rdi
callq 0xc6936
leaq 0x13f0(%rbx), %rsi
movq %r14, %rdi
callq 0xc7052
leaq 0x13f1(%rbx), %rsi
movq %r14, %rdi
callq 0xc7052
leaq 0x1820(%rbx), %r12
callq 0xc5d3c
movq %r15, %rdi
movq %r12, %rsi
movq %rax, %rdx
callq 0xe5cc0
leaq 0x1858(%rbx), %r12
callq 0xc5d3c
movq %r15, %rdi
movq %r12, %rsi
movq %rax, %rdx
callq 0xe5cc0
leaq 0x1890(%rbx), %r12
callq 0xc5d3c
movq %r15, %rdi
movq %r12, %rsi
movq %rax, %rdx
callq 0xe5cc0
leaq 0x18c0(%rbx), %r12
callq 0xc5d3c
movq %r15, %rdi
movq %r12, %rsi
movq %rax, %rdx
callq 0xe5cc0
leaq 0x1980(%rbx), %r12
callq 0xc5dd4
movq %r15, %rdi
movq %r12, %rsi
movq %rax, %rdx
callq 0xe5cc0
leaq 0x1998(%rbx), %r12
callq 0xc5d3c
movq %r15, %rdi
movq %r12, %rsi
movq %rax, %rdx
callq 0xe5cc0
leaq 0x19d0(%rbx), %r12
callq 0xc5d3c
movq %r15, %rdi
movq %r12, %rsi
movq %rax, %rdx
callq 0xe5cc0
leaq 0x17e0(%rbx), %rsi
movq %r14, %rdi
callq 0xea010
leaq 0x1800(%rbx), %rsi
movq %r14, %rdi
callq 0xea010
leaq 0x1938(%rbx), %r12
callq 0xc5f9c
movq %r15, %rdi
movq %r12, %rsi
movq %rax, %rdx
callq 0xe5cc0
leaq 0x1a08(%rbx), %r12
callq 0xc6034
movq %r15, %rdi
movq %r12, %rsi
movq %rax, %rdx
callq 0xe5cc0
leaq 0x1a20(%rbx), %r12
callq 0xc6164
movq %r15, %rdi
movq %r12, %rsi
movq %rax, %rdx
callq 0xe5cc0
leaq 0x1ab0(%rbx), %r12
callq 0xc6294
movq %r15, %rdi
movq %r12, %rsi
movq %rax, %rdx
callq 0xe5cc0
leaq 0x1bd0(%rbx), %r12
callq 0xc6294
movq %r15, %rdi
movq %r12, %rsi
movq %rax, %rdx
callq 0xe5cc0
leaq 0x1c90(%rbx), %r12
callq 0xc632c
movq %r15, %rdi
movq %r12, %rsi
movq %rax, %rdx
callq 0xe5cc0
leaq 0x1cc0(%rbx), %r12
callq 0xc632c
movq %r15, %rdi
movq %r12, %rsi
movq %rax, %rdx
callq 0xe5cc0
leaq 0x1400(%rbx), %r12
callq 0xc632c
movq %r15, %rdi
movq %r12, %rsi
movq %rax, %rdx
callq 0xe5cc0
leaq 0x1cf0(%rbx), %r12
callq 0xc6164
movq %r15, %rdi
movq %r12, %rsi
movq %rax, %rdx
callq 0xe5cc0
leaq 0x1950(%rbx), %r12
callq 0xc64f4
movq %r15, %rdi
movq %r12, %rsi
movq %rax, %rdx
callq 0xe5cc0
leaq 0x1d20(%rbx), %r12
callq 0xc60cc
movq %r15, %rdi
movq %r12, %rsi
movq %rax, %rdx
callq 0xe5cc0
leaq 0x1d38(%rbx), %r12
callq 0xc6034
movq %r15, %rdi
movq %r12, %rsi
movq %rax, %rdx
callq 0xe5cc0
leaq 0x1d80(%rbx), %rsi
movq %r14, %rdi
callq 0xc6936
leaq 0x1d84(%rbx), %rsi
movq %r14, %rdi
callq 0xc6936
leaq 0x1d88(%rbx), %rsi
movq %r14, %rdi
callq 0xc70d6
leaq 0x1d90(%rbx), %rsi
movq %r14, %rdi
callq 0xc70d6
leaq 0x1d98(%rbx), %rsi
movq %r14, %rdi
callq 0xc6936
leaq 0x1da0(%rbx), %rsi
movq %r14, %rdi
callq 0xc70d6
addq $0x1da8, %rbx           # imm = 0x1DA8
movq %r14, %rdi
movq %rbx, %rsi
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
jmp 0xc70d6