// File: BenLangmead[P]bowtie/./ds.h
// Function: EList<unsigned long, 128>::operator=(EList<unsigned long, 128> const&)
EList<T, S>& operator=(const EList<T, S>& o) {
		assert_eq(cat_, o.cat());
		if(o.cur_ == 0) {
			// Nothing to copy
			cur_ = 0;
			return *this;
		}
		if(list_ == NULL) {
			// cat_ should already be set
			lazyInit();
		}
		if(sz_ < o.cur_) expandNoCopy(o.cur_ + 1);
		assert_geq(sz_, o.cur_);
		cur_ = o.cur_;
		for(size_t i = 0; i < cur_; i++) {
			list_[i] = o.list_[i];
		}
		return *this;
	}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x30(%rbp)
movl (%rax), %eax
movl %eax, -0x24(%rbp)
movq -0x18(%rbp), %rdi
callq 0x379d0
movl %eax, %ecx
movl -0x24(%rbp), %eax
cmpl %ecx, %eax
je 0x374f6
movq 0x12c06(%rip), %rdi     # 0x49fc0
leaq 0x7d58(%rip), %rsi      # 0x3f119
callq 0x5360
movq %rax, %rdi
movq -0x30(%rbp), %rax
movl (%rax), %esi
callq 0x5750
movq %rax, %rdi
leaq 0x7d51(%rip), %rsi      # 0x3f12f
callq 0x5360
movq %rax, %rdi
leaq -0x1ec0d(%rip), %rsi    # 0x187e0
callq 0x5120
movq %rax, %rdi
movq -0x30(%rbp), %rax
movl (%rax), %esi
callq 0x5750
movq %rax, %rdi
leaq -0x1ebfa(%rip), %rsi    # 0x18810
callq 0x5120
movq %rax, %rdi
leaq 0x7d1b(%rip), %rsi      # 0x3f134
callq 0x5360
movq %rax, -0x40(%rbp)
movq -0x18(%rbp), %rdi
callq 0x379d0
movq -0x40(%rbp), %rdi
movl %eax, %esi
callq 0x5750
movq %rax, %rdi
leaq 0x7cef(%rip), %rsi      # 0x3f12f
callq 0x5360
movq %rax, %rdi
leaq -0x1ec6f(%rip), %rsi    # 0x187e0
callq 0x5120
movq %rax, -0x38(%rbp)
movq -0x18(%rbp), %rdi
callq 0x379d0
movq -0x38(%rbp), %rdi
movl %eax, %esi
callq 0x5750
movq %rax, %rdi
leaq -0x1ec66(%rip), %rsi    # 0x18810
callq 0x5120
movq %rax, %rdi
leaq 0xa133(%rip), %rsi      # 0x415b8
callq 0x5360
movq %rax, %rdi
movq 0x12aec(%rip), %rsi     # 0x49f80
callq 0x53c0
movq 0x12b20(%rip), %rdi     # 0x49fc0
leaq 0x94c5(%rip), %rsi      # 0x4096c
callq 0x5360
movq %rax, %rdi
leaq 0x92d4(%rip), %rsi      # 0x4078a
callq 0x5360
movq %rax, %rdi
movl $0x18b, %esi            # imm = 0x18B
callq 0x5750
movq %rax, %rdi
movq 0x12aae(%rip), %rsi     # 0x49f80
callq 0x53c0
leaq 0x918c(%rip), %rdi      # 0x4066a
leaq 0x9487(%rip), %rsi      # 0x4096c
movl $0x18b, %edx            # imm = 0x18B
leaq 0xb297(%rip), %rcx      # 0x42788
callq 0x51e0
movq -0x18(%rbp), %rax
cmpq $0x0, 0x18(%rax)
jne 0x37516
movq -0x30(%rbp), %rax
movq $0x0, 0x18(%rax)
movq %rax, -0x8(%rbp)
jmp 0x37680
movq -0x30(%rbp), %rax
cmpq $0x0, 0x8(%rax)
jne 0x3752a
movq -0x30(%rbp), %rdi
callq 0x2d130
movq -0x30(%rbp), %rax
movq 0x10(%rax), %rax
movq -0x18(%rbp), %rcx
cmpq 0x18(%rcx), %rax
jae 0x37551
movq -0x30(%rbp), %rdi
movq -0x18(%rbp), %rax
movq 0x18(%rax), %rsi
addq $0x1, %rsi
callq 0x379e0
movq -0x30(%rbp), %rax
movq 0x10(%rax), %rax
movq -0x18(%rbp), %rcx
cmpq 0x18(%rcx), %rax
jae 0x37624
movq 0x12a52(%rip), %rdi     # 0x49fc0
leaq 0x7c90(%rip), %rsi      # 0x3f205
callq 0x5360
movq %rax, %rdi
movq -0x30(%rbp), %rax
movq 0x10(%rax), %rsi
callq 0x50c0
movq %rax, %rdi
leaq 0x7c88(%rip), %rsi      # 0x3f21c
callq 0x5360
movq %rax, %rdi
movq -0x18(%rbp), %rax
movq 0x18(%rax), %rsi
callq 0x50c0
movq %rax, %rdi
leaq 0xa005(%rip), %rsi      # 0x415b8
callq 0x5360
movq %rax, %rdi
movq 0x129be(%rip), %rsi     # 0x49f80
callq 0x53c0
movq 0x129f2(%rip), %rdi     # 0x49fc0
leaq 0x9397(%rip), %rsi      # 0x4096c
callq 0x5360
movq %rax, %rdi
leaq 0x91a6(%rip), %rsi      # 0x4078a
callq 0x5360
movq %rax, %rdi
movl $0x196, %esi            # imm = 0x196
callq 0x5750
movq %rax, %rdi
movq 0x12980(%rip), %rsi     # 0x49f80
callq 0x53c0
leaq 0x905e(%rip), %rdi      # 0x4066a
leaq 0x9359(%rip), %rsi      # 0x4096c
movl $0x196, %edx            # imm = 0x196
leaq 0xb169(%rip), %rcx      # 0x42788
callq 0x51e0
movq -0x30(%rbp), %rax
movq -0x18(%rbp), %rcx
movq 0x18(%rcx), %rcx
movq %rcx, 0x18(%rax)
movq $0x0, -0x20(%rbp)
movq -0x30(%rbp), %rcx
movq -0x20(%rbp), %rax
cmpq 0x18(%rcx), %rax
jae 0x37678
movq -0x30(%rbp), %rax
movq -0x18(%rbp), %rcx
movq 0x8(%rcx), %rcx
movq -0x20(%rbp), %rdx
movq (%rcx,%rdx,8), %rdx
movq 0x8(%rax), %rax
movq -0x20(%rbp), %rcx
movq %rdx, (%rax,%rcx,8)
movq -0x20(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x20(%rbp)
jmp 0x3763c
movq -0x30(%rbp), %rax
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x40, %rsp
popq %rbp
retq
nopw (%rax,%rax)