// File: /workspace/github_cpp_makefile_star2_O1/statgen[P]statgen/lib/tclap-1.2.0/examples/../include/tclap/ValueArg.h
// Function: TCLAP::ValueArg<Vect3D>::processArg(int*, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>&)
bool ValueArg<T>::processArg(int *i, std::vector<std::string>& args)
{
    if ( _ignoreable && Arg::ignoreRest() )
		return false;

    if ( _hasBlanks( args[*i] ) )
		return false;

    std::string flag = args[*i];

    std::string value = "";
    trimFlag( flag, value );

    if ( argMatches( flag ) )
    {
        if ( _alreadySet )
			throw( CmdLineParseException("Argument already set!", toString()) );

        if ( Arg::delimiter() != ' ' && value == "" )
			throw( ArgParseException( 
							"Couldn't find delimiter for this argument!",
                             toString() ) );

        if ( value == "" )
        {
            (*i)++;
            if ( static_cast<unsigned int>(*i) < args.size() ) 
				_extractValue( args[*i] );
            else
				throw( ArgParseException("Missing a value for this argument!",
                                                    toString() ) );
        }
        else
			_extractValue( value );
				
        _alreadySet = true;
        _checkWithVisitor();
        return true;
    }	
    else
		return false;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x88, %rsp
movq %rdx, %r14
movq %rsi, %r15
movq %rdi, %rbx
cmpb $0x1, 0xa0(%rdi)
jne 0x9bc2
cmpb $0x0, 0x562a(%rip)      # 0xf1ea
jne 0x9c08
movslq (%r15), %rcx
movq (%r14), %rdx
shlq $0x5, %rcx
leaq (%rdx,%rcx), %rax
movq 0x8(%rdx,%rcx), %rcx
cmpq $0x2, %rcx
setae %dl
jb 0x9c04
movq (%rax), %rdx
cmpb $0x7, 0x1(%rdx)
je 0x9c08
movl $0x2, %edi
movq %rdi, %rsi
cmpq %rdi, %rcx
je 0x9bfe
leaq 0x1(%rsi), %rdi
cmpb $0x7, (%rdx,%rsi)
jne 0x9bec
cmpq %rsi, %rcx
seta %dl
testb %dl, %dl
je 0x9c1e
xorl %ebp, %ebp
movl %ebp, %eax
addq $0x88, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0x58(%rsp), %rcx
movq %rcx, -0x10(%rcx)
movq (%rax), %rsi
movq 0x8(%rax), %rdx
addq %rsi, %rdx
leaq 0x48(%rsp), %rdi
callq 0x7330
leaq 0x78(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x17ce(%rip), %rdx      # 0xb419
leaq 0x68(%rsp), %rdi
movq %rdx, %rsi
callq 0x6fd8
movq (%rbx), %rax
leaq 0x48(%rsp), %rsi
leaq 0x68(%rsp), %r12
movq %rbx, %rdi
movq %r12, %rdx
callq *0x50(%rax)
movq (%rbx), %rax
leaq 0x48(%rsp), %rsi
movq %rbx, %rdi
callq *0x30(%rax)
movl %eax, %ebp
testb %al, %al
je 0x9d15
cmpb $0x1, 0x91(%rbx)
je 0x9d51
cmpb $0x20, 0x551e(%rip)     # 0xf1b8
je 0x9cb5
leaq 0x1776(%rip), %rsi      # 0xb419
leaq 0x68(%rsp), %rdi
callq 0x3070
testl %eax, %eax
je 0x9dbf
leaq 0x175d(%rip), %rsi      # 0xb419
movq %r12, %rdi
callq 0x3070
testl %eax, %eax
jne 0x9cf1
movslq (%r15), %rax
incq %rax
movl %eax, (%r15)
movl %eax, %ecx
movq (%r14), %r12
movq 0x8(%r14), %rdx
subq %r12, %rdx
sarq $0x5, %rdx
cmpq %rcx, %rdx
jbe 0x9e2a
shlq $0x5, %rax
addq %rax, %r12
movq %rbx, %rdi
movq %r12, %rsi
callq 0xa1ba
movb $0x1, 0x91(%rbx)
movq 0x98(%rbx), %rdi
testq %rdi, %rdi
je 0x9d15
movq (%rdi), %rax
callq *0x10(%rax)
movq 0x68(%rsp), %rdi
cmpq %r13, %rdi
je 0x9d2c
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x31c0
movq 0x48(%rsp), %rdi
leaq 0x58(%rsp), %rax
cmpq %rax, %rdi
je 0x9c0a
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x31c0
jmp 0x9c0a
movl $0x68, %edi
callq 0x30e0
movq %rax, %r14
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x1296(%rip), %rsi      # 0xb004
leaq 0x12a4(%rip), %rdx      # 0xb019
leaq 0x8(%rsp), %rdi
callq 0x6fd8
movq (%rbx), %rax
leaq 0x28(%rsp), %rdi
movq %rbx, %rsi
callq *0x38(%rax)
movb $0x1, %bpl
leaq 0x8(%rsp), %rsi
leaq 0x28(%rsp), %rdx
movq %r14, %rdi
callq 0x3d98
xorl %ebp, %ebp
leaq 0x4bcd(%rip), %rsi      # 0xe978
leaq 0x3a8(%rip), %rdx       # 0xa15a
movq %r14, %rdi
callq 0x32e0
jmp 0x9e93
movl $0x68, %edi
callq 0x30e0
movq %rax, %r14
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x153f(%rip), %rsi      # 0xb31b
leaq 0x1562(%rip), %rdx      # 0xb345
leaq 0x8(%rsp), %rdi
callq 0x6fd8
movq (%rbx), %rax
leaq 0x28(%rsp), %rdi
movq %rbx, %rsi
callq *0x38(%rax)
movb $0x1, %bpl
leaq 0x8(%rsp), %rsi
leaq 0x28(%rsp), %rdx
movq %r14, %rdi
callq 0x9f8e
xorl %ebp, %ebp
leaq 0x4f47(%rip), %rsi      # 0xed60
leaq 0x33a(%rip), %rdx       # 0xa15a
movq %r14, %rdi
callq 0x32e0
jmp 0x9e93
movl $0x68, %edi
callq 0x30e0
movq %rax, %r14
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x14ff(%rip), %rsi      # 0xb346
leaq 0x151a(%rip), %rdx      # 0xb368
leaq 0x8(%rsp), %rdi
callq 0x6fd8
movq (%rbx), %rax
leaq 0x28(%rsp), %rdi
movq %rbx, %rsi
callq *0x38(%rax)
movb $0x1, %bpl
leaq 0x8(%rsp), %rsi
leaq 0x28(%rsp), %rdx
movq %r14, %rdi
callq 0x9f8e
xorl %ebp, %ebp
leaq 0x4edc(%rip), %rsi      # 0xed60
leaq 0x2cf(%rip), %rdx       # 0xa15a
movq %r14, %rdi
callq 0x32e0
jmp 0x9e9f
jmp 0x9ebf
jmp 0x9e9f
jmp 0x9ebf
jmp 0x9ede
jmp 0x9ede
movq %rax, %rbx
leaq 0x38(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x9ec5
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x31c0
jmp 0x9ec5
movq %rax, %rbx
movb $0x1, %bpl
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0x9ee4
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x31c0
jmp 0x9ee4
movq %rax, %rbx
movb $0x1, %bpl
testb %bpl, %bpl
je 0x9efb
movq %r14, %rdi
callq 0x3150
jmp 0x9efb
movq %rax, %rbx
jmp 0x9f12
movq %rax, %rbx
movq 0x68(%rsp), %rdi
cmpq %r13, %rdi
je 0x9f12
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x31c0
movq 0x48(%rsp), %rdi
leaq 0x58(%rsp), %rax
cmpq %rax, %rdi
je 0x9f2e
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x31c0
movq %rbx, %rdi
callq 0x3300