// File: /workspace/github_cpp_makefile_star2_O3/hzy1754785321[P]warehouse-manage-system/people.cpp
// Function: People::add()
void People::add()
{
		Person *p;
		int flag;
		while(1)
		{
			cout << "\t\t\t\t\t1:inPeople" << endl << "\t\t\t\t\t2:outPeople" << endl << "\t\t\t\t\t3:commonPeople" << endl << "\t\t\t\t\t4:exit" << endl << "\t\t\t\t\tplease input the your choice:" ;
			cin >> flag;
			switch(flag)
			{
				case 1:p=new InPeople;
					   break;
				case 2:p=new OutPeople;
					   break;
				case 3:p=new CommonPeople;
					   break;
				case 4:return ;
				default:p=NULL;
						cout << "\t\t\t\t\tinput error!" << endl;
						break;
			}
			if(p!=NULL)
			{
	//			cout << "123213" << endl;
				p->setNumber();
				p->setName();
				p->setPasswd();
				p->setStop();
				this->push_back(p);
				break;
			}
		}
		return ;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movq %rdi, -0x48(%rbp)
movq 0xb53e(%rip), %r15      # 0xefd0
leaq 0x674a(%rip), %r14      # 0xa1e3
leaq 0x674f(%rip), %r12      # 0xa1ef
leaq -0x34(%rbp), %r13
movl $0xf, %edx
movq %r15, %rdi
leaq 0x66fb(%rip), %rsi      # 0xa1ae
callq 0x2240
movq (%r15), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x21c0
movsbl %al, %esi
movq %r15, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2110
movq %rax, %rbx
movl $0x10, %edx
movq %rax, %rdi
leaq 0x66cd(%rip), %rsi      # 0xa1be
callq 0x2240
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x21c0
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2110
movq %rax, %rbx
movl $0x13, %edx
movq %rax, %rdi
leaq 0x66a0(%rip), %rsi      # 0xa1cf
callq 0x2240
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x21c0
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2110
movq %rax, %rbx
movl $0xb, %edx
movq %rax, %rdi
movq %r14, %rsi
callq 0x2240
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x21c0
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2110
movl $0x22, %edx
movq %rax, %rdi
movq %r12, %rsi
callq 0x2240
movq 0xb434(%rip), %rdi      # 0xefe0
movq %r13, %rsi
callq 0x20f0
movl -0x34(%rbp), %eax
decl %eax
cmpl $0x3, %eax
jbe 0x3c06
movq $0x0, -0x30(%rbp)
movl $0x11, %edx
movq %r15, %rdi
leaq 0x65b4(%rip), %rsi      # 0xa189
callq 0x2240
movq (%r15), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x21c0
movsbl %al, %esi
movq %r15, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x2110
jmp 0x3aa4
leaq 0x63f7(%rip), %rcx      # 0xa004
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq -0x30(%rbp), %rdi
leaq -0x40(%rbp), %rbx
movq %rbx, %rsi
callq 0x250d
jmp 0x3c59
leaq -0x30(%rbp), %rdi
leaq -0x40(%rbp), %rbx
movq %rbx, %rsi
callq 0x2472
jmp 0x3c59
leaq -0x30(%rbp), %rdi
leaq -0x40(%rbp), %rbx
movq %rbx, %rsi
callq 0x23cf
movq (%rbx), %rbx
movq %rbx, %rdi
callq 0x3504
movl $0x1, 0xb582(%rip)      # 0xf1f0
movq 0xb35b(%rip), %rdi      # 0xefd0
leaq 0x6467(%rip), %rsi      # 0xa0e3
movl $0x1b, %edx
callq 0x2240
addq $0x8, %rbx
movq 0xb34f(%rip), %r15      # 0xefe0
movq (%r15), %rax
movq -0x18(%rax), %rax
movq $-0xb1, %r14
addq 0x10(%r15,%rax), %r14
movl $0xb0, %edx
movq %r15, %rdi
movq %rbx, %rsi
callq 0x2330
movq (%r15), %rax
movq -0x18(%rax), %rax
cmpl $0x0, 0x20(%r15,%rax)
jne 0x3ce5
cmpq $-0xb1, %r14
ja 0x3ce5
movq 0xb30d(%rip), %rcx      # 0xefe0
movq 0xe8(%rcx,%rax), %rdi
movq 0x10(%rdi), %rax
cmpq 0x18(%rdi), %rax
jae 0x3d55
movq -0x30(%rbp), %rbx
movl $0x1, 0xb4fd(%rip)      # 0xf1f0
movq 0xb2d6(%rip), %rdi      # 0xefd0
leaq 0x6417(%rip), %rsi      # 0xa118
movl $0x1d, %edx
callq 0x2240
leaq 0x28(%rbx), %rsi
movq 0xb2ca(%rip), %rdi      # 0xefe0
movabsq $0x7fffffffffffffff, %rdx # imm = 0x7FFFFFFFFFFFFFFF
callq 0x2330
movl $0x0, 0x6c(%rbx)
movq -0x48(%rbp), %rdi
movq 0x8(%rdi), %rsi
cmpq 0x10(%rdi), %rsi
je 0x3d47
movq %rbx, (%rsi)
addq $0x8, 0x8(%rdi)
jmp 0x3c16
leaq -0x30(%rbp), %rdx
callq 0x5b3e
jmp 0x3c16
callq 0x23a0
jmp 0x3ce5