// File: /workspace/github_c_makefile_star2_O3/Paxa[P]fast_excel/libxlsxwriter/src/chart.c
// Function: chart_write_err_bars
STATIC void
_chart_write_err_bars(lxw_chart *self, lxw_series_error_bars *error_bars)
{
    if (!error_bars->is_set)
        return;

    lxw_xml_start_tag(self->file, "c:errBars", NULL);

    /* Write the c:errDir element, except for Column/Bar charts. */
    if (error_bars->chart_group != LXW_CHART_BAR
        && error_bars->chart_group != LXW_CHART_COLUMN) {

        _chart_write_err_dir(self, error_bars->is_x);
    }

    /* Write the c:errBarType element. */
    _chart_write_err_bar_type(self, error_bars->direction);

    /* Write the c:errValType element. */
    _chart_write_err_val_type(self, error_bars->type);

    /* Write the c:noEndCap element. */
    if (error_bars->endcap == LXW_CHART_ERROR_BAR_NO_CAP)
        _chart_write_no_end_cap(self);

    /* Write the c:val element. */
    if (error_bars->has_value)
        _chart_write_error_val(self, error_bars->value);

    /* Write the c:spPr element. */
    _chart_write_sp_pr(self, error_bars->line, NULL, NULL);

    lxw_xml_end_tag(self->file, "c:errBars");
}

// Assembly:
cmpb $0x0, 0x4(%rsi)
je 0x19a48
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x18, %rsp
movq %rsi, %r14
movq %rdi, %rbx
movq (%rdi), %rdi
leaq 0x27c06(%rip), %rsi     # 0x413e5
xorl %edx, %edx
callq 0xc350
movzbl 0x6(%r14), %eax
cmpl $0x4, %eax
je 0x197f9
cmpl $0x7, %eax
jne 0x19a49
movb 0x1(%r14), %al
xorl %r12d, %r12d
leaq 0x8(%rsp), %r15
movq %r12, (%r15)
movq %r15, 0x8(%r15)
cmpb $0x2, %al
leaq 0x27be3(%rip), %rcx     # 0x413f8
leaq 0x27be2(%rip), %rdx     # 0x413fe
cmoveq %rcx, %rdx
cmpb $0x1, %al
leaq 0x27958(%rip), %rsi     # 0x41181
cmovneq %rdx, %rsi
leaq 0x27c18(%rip), %rdi     # 0x4144c
callq 0xc030
leaq 0x1040(%rax), %rcx
movq %r12, 0x1040(%rax)
movq 0x8(%r15), %rdx
movq %rax, (%rdx)
movq %rcx, 0x8(%r15)
movq (%rbx), %rdi
leaq 0x27ba7(%rip), %rsi     # 0x41403
movq %r15, %rdx
callq 0xcc00
movq (%r15), %rdi
testq %rdi, %rdi
je 0x1988e
movq 0x1040(%rdi), %rax
movq %rax, 0x8(%rsp)
testq %rax, %rax
jne 0x19882
movq %r15, 0x10(%rsp)
callq 0xc0c0
movq 0x8(%rsp), %rdi
jmp 0x19867
movb (%r14), %al
movq $0x0, 0x8(%rsp)
movq %r15, 0x10(%rsp)
decb %al
cmpb $0x2, %al
ja 0x198b8
movzbl %al, %eax
leaq 0x26bbd(%rip), %rcx     # 0x4046c
movslq (%rcx,%rax,4), %rsi
addq %rcx, %rsi
jmp 0x198bf
leaq 0x27b6c(%rip), %rsi     # 0x4142b
leaq 0x27b86(%rip), %rdi     # 0x4144c
callq 0xc030
leaq 0x1040(%rax), %rcx
movq $0x0, 0x1040(%rax)
leaq 0x8(%rsp), %r15
movq 0x8(%r15), %rdx
movq %rax, (%rdx)
movq %rcx, 0x8(%r15)
movq (%rbx), %rdi
leaq 0x27b3b(%rip), %rsi     # 0x41432
movq %r15, %rdx
callq 0xcc00
movq (%r15), %rdi
testq %rdi, %rdi
je 0x19929
movq 0x1040(%rdi), %rax
movq %rax, 0x8(%rsp)
testq %rax, %rax
jne 0x1991d
movq %r15, 0x10(%rsp)
callq 0xc0c0
movq 0x8(%rsp), %rdi
jmp 0x19902
cmpb $0x1, 0x2(%r14)
jne 0x199a4
xorl %r12d, %r12d
movq %r12, 0x8(%rsp)
movq %r15, 0x10(%rsp)
leaq 0x27b08(%rip), %rdi     # 0x4144c
leaq 0x2bdfd(%rip), %rsi     # 0x45748
callq 0xc030
leaq 0x1040(%rax), %rcx
movq %r12, 0x1040(%rax)
movq 0x10(%rsp), %rdx
movq %rax, (%rdx)
movq %rcx, 0x10(%rsp)
movq (%rbx), %rdi
leaq 0x27aca(%rip), %rsi     # 0x4143f
movq %r15, %rdx
callq 0xcc00
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x199a4
movq 0x1040(%rdi), %rax
movq %rax, 0x8(%rsp)
testq %rax, %rax
jne 0x1999d
movq %r15, 0x10(%rsp)
callq 0xc0c0
jmp 0x1997d
cmpb $0x0, 0x3(%r14)
je 0x19a1e
movsd 0x8(%r14), %xmm0
xorl %r12d, %r12d
movq %r12, 0x8(%rsp)
movq %r15, 0x10(%rsp)
leaq 0x27a87(%rip), %rdi     # 0x4144c
callq 0xcc80
leaq 0x1040(%rax), %rcx
movq %r12, 0x1040(%rax)
movq 0x10(%rsp), %rdx
movq %rax, (%rdx)
movq %rcx, 0x10(%rsp)
movq (%rbx), %rdi
leaq 0x27a5b(%rip), %rsi     # 0x4144a
movq %r15, %rdx
callq 0xcc00
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x19a1e
movq 0x1040(%rdi), %rax
movq %rax, 0x8(%rsp)
testq %rax, %rax
jne 0x19a17
movq %r15, 0x10(%rsp)
callq 0xc0c0
jmp 0x199f7
movq 0x10(%r14), %rsi
movq %rbx, %rdi
xorl %edx, %edx
xorl %ecx, %ecx
callq 0x1520f
movq (%rbx), %rdi
leaq 0x279ad(%rip), %rsi     # 0x413e5
callq 0xc060
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
xorl %r12d, %r12d
cmpb $0x0, 0x5(%r14)
leaq 0x8(%rsp), %r15
movq %r12, (%r15)
movq %r15, 0x8(%r15)
leaq 0x28af6(%rip), %rax     # 0x4255a
leaq 0x2fcbe(%rip), %rsi     # 0x49729
cmoveq %rax, %rsi
leaq 0x279d6(%rip), %rdi     # 0x4144c
callq 0xc030
leaq 0x1040(%rax), %rcx
movq %r12, 0x1040(%rax)
movq 0x8(%r15), %rdx
movq %rax, (%rdx)
movq %rcx, 0x8(%r15)
movq (%rbx), %rdi
leaq 0x27951(%rip), %rsi     # 0x413ef
movq %r15, %rdx
callq 0xcc00
movq (%r15), %rdi
testq %rdi, %rdi
je 0x197f9
movq 0x1040(%rdi), %rax
movq %rax, 0x8(%rsp)
testq %rax, %rax
jne 0x19ac8
movq %r15, 0x10(%rsp)
callq 0xc0c0
movq 0x8(%rsp), %rdi
jmp 0x19aa9