// File: /workspace/github_cpp_makefile_star2_O3/El-Duder1no[P]geometry/src/structFill.cpp
// Function: structFill(Circle&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
bool structFill(Circle& a, std::string text)
{
    std::string x, y, r, figure;
    float xF, yF, rF;
    const char* temp;

    enter(text, figure, x, y, r);

    if (figure != "circle") {
        return false;
    }

    temp = x.c_str();
    if (isdigit(temp[0]) || temp[0] == '-') {
        xF = stof(x);
        a.x = xF;
    } else {
        return false;
    }

    temp = y.c_str();
    if (isdigit(temp[0]) || temp[0] == '-') {
        yF = stof(y);
        a.y = yF;
    } else {
        return false;
    }

    temp = r.c_str();
    if (isdigit(temp[0])) {
        rF = stof(r);
        if (rF < 0)
            return false;
        a.r = rF;
    } else {
        return false;
    }

    return true;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xb8, %rsp
movq %rdi, %rbx
leaq 0x28(%rsp), %r15
movq %r15, -0x10(%r15)
xorl %eax, %eax
movq %rax, -0x8(%r15)
movb %al, (%r15)
leaq 0x48(%rsp), %rcx
movq %rcx, -0x10(%rcx)
movq %rax, -0x8(%rcx)
movb %al, (%rcx)
leaq 0xa8(%rsp), %r13
movq %r13, -0x10(%r13)
movq %rax, -0x8(%r13)
movb %al, (%r13)
leaq 0x88(%rsp), %rbp
movq %rbp, -0x10(%rbp)
movq %rax, -0x8(%rbp)
movb %al, (%rbp)
leaq 0x68(%rsp), %r14
movq %r14, -0x10(%r14)
movq (%rsi), %rax
movq 0x8(%rsi), %rdx
addq %rax, %rdx
leaq 0x58(%rsp), %rdi
movq %rax, %rsi
callq 0x4ed88
leaq 0x58(%rsp), %rdi
leaq 0x78(%rsp), %rsi
leaq 0x18(%rsp), %rdx
leaq 0x38(%rsp), %rcx
leaq 0x98(%rsp), %r8
callq 0x4f1e0
movq 0x58(%rsp), %rdi
cmpq %r14, %rdi
je 0x4ef04
movq 0x68(%rsp), %rsi
incq %rsi
callq 0x95e0
leaq 0x5bf5(%rip), %rsi      # 0x54b00
leaq 0x78(%rsp), %rdi
callq 0x9180
testl %eax, %eax
je 0x4ef20
xorl %ebx, %ebx
jmp 0x4f061
movq 0x18(%rsp), %r15
movsbl (%r15), %eax
cmpl $0x2d, %eax
setne %cl
addl $-0x30, %eax
cmpl $0xa, %eax
setae %al
testb %al, %cl
jne 0x4f05a
callq 0x9080
movq %rax, %r14
movl (%rax), %eax
movl %eax, 0xc(%rsp)
movl $0x0, (%r14)
leaq 0x10(%rsp), %r12
movq %r15, %rdi
movq %r12, %rsi
callq 0x9950
cmpq %r15, (%r12)
je 0x4f103
movl (%r14), %r12d
testl %r12d, %r12d
je 0x4ef89
cmpl $0x22, %r12d
jne 0x4ef91
leaq 0x5b83(%rip), %rdi      # 0x54b07
callq 0x9a20
movl 0xc(%rsp), %r12d
movl %r12d, (%r14)
movss %xmm0, (%rbx)
movq 0x38(%rsp), %r15
movsbl (%r15), %eax
cmpl $0x2d, %eax
setne %cl
addl $-0x30, %eax
cmpl $0xa, %eax
setae %al
testb %al, %cl
jne 0x4f05a
movl $0x0, (%r14)
leaq 0x10(%rsp), %rsi
movq %r15, %rdi
callq 0x9950
leaq 0x10(%rsp), %rax
cmpq %r15, (%rax)
je 0x4f10f
movl (%r14), %eax
testl %eax, %eax
je 0x4eff3
movl %eax, 0xc(%rsp)
cmpl $0x22, %eax
jne 0x4effb
leaq 0x5b19(%rip), %rdi      # 0x54b07
callq 0x9a20
movl %r12d, (%r14)
movl %r12d, 0xc(%rsp)
movss %xmm0, 0x4(%rbx)
movq 0x98(%rsp), %r15
movsbl (%r15), %eax
addl $-0x30, %eax
cmpl $0x9, %eax
ja 0x4f05a
movl $0x0, (%r14)
leaq 0x10(%rsp), %r12
movq %r15, %rdi
movq %r12, %rsi
callq 0x9950
cmpq %r15, (%r12)
je 0x4f11b
movl (%r14), %eax
testl %eax, %eax
je 0x4f0df
cmpl $0x22, %eax
leaq 0x28(%rsp), %r15
jne 0x4f0eb
leaq 0x5ab2(%rip), %rdi      # 0x54b07
callq 0x9a20
xorl %ebx, %ebx
leaq 0x28(%rsp), %r15
movq 0x78(%rsp), %rdi
cmpq %rbp, %rdi
je 0x4f07b
movq 0x88(%rsp), %rsi
incq %rsi
callq 0x95e0
movq 0x98(%rsp), %rdi
cmpq %r13, %rdi
je 0x4f098
movq 0xa8(%rsp), %rsi
incq %rsi
callq 0x95e0
movq 0x38(%rsp), %rdi
leaq 0x48(%rsp), %rax
cmpq %rax, %rdi
je 0x4f0b4
movq 0x48(%rsp), %rsi
incq %rsi
callq 0x95e0
movq 0x18(%rsp), %rdi
cmpq %r15, %rdi
je 0x4f0cb
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x95e0
movl %ebx, %eax
addq $0xb8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movl 0xc(%rsp), %eax
movl %eax, (%r14)
leaq 0x28(%rsp), %r15
xorps %xmm1, %xmm1
ucomiss %xmm0, %xmm1
ja 0x4ef19
movss %xmm0, 0x8(%rbx)
movb $0x1, %bl
jmp 0x4f061
leaq 0x59fd(%rip), %rdi      # 0x54b07
callq 0x9350
leaq 0x59f1(%rip), %rdi      # 0x54b07
callq 0x9350
leaq 0x59e5(%rip), %rdi      # 0x54b07
callq 0x9350
jmp 0x4f137
movq %rax, %rbx
cmpl $0x0, (%r14)
jne 0x4f168
movl %r12d, (%r14)
jmp 0x4f168
movq %rax, %rbx
cmpl $0x0, (%r14)
jne 0x4f168
movl 0xc(%rsp), %eax
movl %eax, (%r14)
jmp 0x4f168
movq %rax, %rbx
movq 0x58(%rsp), %rdi
cmpq %r14, %rdi
je 0x4f168
movq 0x68(%rsp), %rsi
incq %rsi
callq 0x95e0
jmp 0x4f168
movq %rax, %rbx
movq 0x78(%rsp), %rdi
cmpq %rbp, %rdi
je 0x4f182
movq 0x88(%rsp), %rsi
incq %rsi
callq 0x95e0
movq 0x98(%rsp), %rdi
cmpq %r13, %rdi
je 0x4f19f
movq 0xa8(%rsp), %rsi
incq %rsi
callq 0x95e0
movq 0x38(%rsp), %rdi
leaq 0x48(%rsp), %rax
cmpq %rax, %rdi
je 0x4f1bb
movq 0x48(%rsp), %rsi
incq %rsi
callq 0x95e0
movq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rax
cmpq %rax, %rdi
je 0x4f1d7
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x95e0
movq %rbx, %rdi
callq 0x9c50
nop