// File: ArashPartow[P]exprtk-extras/exprtk_gnuplot_multi.cpp
// Function: main
int main()
{
   exprtk_gnuplot_fx plotter;

   plotter
   .add_curve(
      exprtk_fx_curve()
         .set_expression("sin(2 * pi * x) + cos(x / 2 * pi)")
         .set_domain(-5,+5)
         .set_title("ExprTk Curve 1"))

   .add_curve(
      exprtk_fx_curve()
         .set_expression("clamp(-1.0,sin(2 * pi * x) + cos(x / 2 * pi),+1.0)")
         .set_domain(-5,+5)
         .set_title("ExprTk Curve 2"));

   plotter.plot();

   return 0;
}

// Assembly:
subq $0x228, %rsp            # imm = 0x228
movl $0x0, 0x224(%rsp)
leaq 0x1d0(%rsp), %rdi
callq 0x118cf0
xorps %xmm0, %xmm0
movaps %xmm0, 0x1c0(%rsp)
movaps %xmm0, 0x1b0(%rsp)
movaps %xmm0, 0x1a0(%rsp)
movaps %xmm0, 0x190(%rsp)
movaps %xmm0, 0x180(%rsp)
movaps %xmm0, 0x170(%rsp)
leaq 0x170(%rsp), %rdi
callq 0x118d30
leaq 0x14f(%rsp), %rdi
movq %rdi, 0x58(%rsp)
callq 0x1116c0
movq 0x58(%rsp), %rdx
leaq 0x331ee2(%rip), %rsi    # 0x44a54f
leaq 0x150(%rsp), %rdi
callq 0x118c30
jmp 0x11867c
leaq 0x170(%rsp), %rdi
leaq 0x150(%rsp), %rsi
callq 0x118d60
movq %rax, 0x50(%rsp)
jmp 0x118698
movq 0x50(%rsp), %rdi
movsd 0x32c963(%rip), %xmm0   # 0x445008
movsd 0x32c963(%rip), %xmm1   # 0x445010
callq 0x118d90
movq %rax, 0x48(%rsp)
jmp 0x1186b9
leaq 0x117(%rsp), %rdi
movq %rdi, 0x40(%rsp)
callq 0x1116c0
movq 0x40(%rsp), %rdx
leaq 0x331e9a(%rip), %rsi    # 0x44a571
leaq 0x118(%rsp), %rdi
callq 0x118c30
jmp 0x1186e6
movq 0x48(%rsp), %rdi
leaq 0x118(%rsp), %rsi
callq 0x118dc0
movq %rax, 0x38(%rsp)
jmp 0x1186ff
movq 0x38(%rsp), %rsi
leaq 0x1d0(%rsp), %rdi
callq 0x118d00
movq %rax, 0x30(%rsp)
jmp 0x118718
xorps %xmm0, %xmm0
movaps %xmm0, 0x100(%rsp)
movaps %xmm0, 0xf0(%rsp)
movaps %xmm0, 0xe0(%rsp)
movaps %xmm0, 0xd0(%rsp)
movaps %xmm0, 0xc0(%rsp)
movaps %xmm0, 0xb0(%rsp)
leaq 0xb0(%rsp), %rdi
callq 0x118d30
leaq 0x8f(%rsp), %rdi
movq %rdi, 0x28(%rsp)
callq 0x1116c0
movq 0x28(%rsp), %rdx
leaq 0x331e0a(%rip), %rsi    # 0x44a580
leaq 0x90(%rsp), %rdi
callq 0x118c30
jmp 0x118785
leaq 0xb0(%rsp), %rdi
leaq 0x90(%rsp), %rsi
callq 0x118d60
movq %rax, 0x20(%rsp)
jmp 0x1187a1
movq 0x20(%rsp), %rdi
movsd 0x32c85a(%rip), %xmm0   # 0x445008
movsd 0x32c85a(%rip), %xmm1   # 0x445010
callq 0x118d90
movq %rax, 0x18(%rsp)
jmp 0x1187c2
leaq 0x67(%rsp), %rdi
movq %rdi, 0x10(%rsp)
callq 0x1116c0
movq 0x10(%rsp), %rdx
leaq 0x331dd6(%rip), %rsi    # 0x44a5b3
leaq 0x68(%rsp), %rdi
callq 0x118c30
jmp 0x1187e9
movq 0x18(%rsp), %rdi
leaq 0x68(%rsp), %rsi
callq 0x118dc0
movq %rax, 0x8(%rsp)
jmp 0x1187ff
movq 0x8(%rsp), %rsi
movq 0x30(%rsp), %rdi
callq 0x118d00
jmp 0x118810
leaq 0x68(%rsp), %rdi
callq 0x111818
leaq 0x67(%rsp), %rdi
callq 0x111800
leaq 0x90(%rsp), %rdi
callq 0x111818
leaq 0x8f(%rsp), %rdi
callq 0x111800
leaq 0xb0(%rsp), %rdi
callq 0x118df0
leaq 0x118(%rsp), %rdi
callq 0x111818
leaq 0x117(%rsp), %rdi
callq 0x111800
leaq 0x150(%rsp), %rdi
callq 0x111818
leaq 0x14f(%rsp), %rdi
callq 0x111800
leaq 0x170(%rsp), %rdi
callq 0x118df0
leaq 0x1d0(%rsp), %rdi
callq 0x118e20
jmp 0x11889b
movl $0x0, 0x224(%rsp)
leaq 0x1d0(%rsp), %rdi
callq 0x118ec0
movl 0x224(%rsp), %eax
addq $0x228, %rsp            # imm = 0x228
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x140(%rsp)
movl %eax, 0x13c(%rsp)
jmp 0x1189de
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x140(%rsp)
movl %eax, 0x13c(%rsp)
jmp 0x1189d1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x140(%rsp)
movl %eax, 0x13c(%rsp)
jmp 0x1189c4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x140(%rsp)
movl %eax, 0x13c(%rsp)
jmp 0x1189b7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x140(%rsp)
movl %eax, 0x13c(%rsp)
jmp 0x11899d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x140(%rsp)
movl %eax, 0x13c(%rsp)
jmp 0x118990
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x140(%rsp)
movl %eax, 0x13c(%rsp)
jmp 0x118986
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x140(%rsp)
movl %eax, 0x13c(%rsp)
leaq 0x68(%rsp), %rdi
callq 0x111818
leaq 0x67(%rsp), %rdi
callq 0x111800
leaq 0x90(%rsp), %rdi
callq 0x111818
leaq 0x8f(%rsp), %rdi
callq 0x111800
leaq 0xb0(%rsp), %rdi
callq 0x118df0
leaq 0x118(%rsp), %rdi
callq 0x111818
leaq 0x117(%rsp), %rdi
callq 0x111800
leaq 0x150(%rsp), %rdi
callq 0x111818
leaq 0x14f(%rsp), %rdi
callq 0x111800
leaq 0x170(%rsp), %rdi
callq 0x118df0
jmp 0x118a0e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x140(%rsp)
movl %eax, 0x13c(%rsp)
leaq 0x1d0(%rsp), %rdi
callq 0x118ec0
movq 0x140(%rsp), %rdi
callq 0x111490
nopl (%rax,%rax)