// File: /workspace/github_cpp_makefile_star2_O1/Luthaf[P]zeopp/material.cc
// Function: MATERIAL::PLDvisualize(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
void MATERIAL::PLDvisualize(string basefilename, string visformat){

  fstream output;

  // Three data structures storing information about 
  vector<Point> NodesFracCoord;
  vector<int> NodesSegmentIDs;
  vector<double> NodesSize;

  string filename_vis;
  if(visformat == "ZEOVIS") filename_vis = basefilename + ".zpld_segments";
  if(visformat == "VISIT") filename_vis = basefilename + ".vpld_segments";
  if(visformat == "LIVERPOOL") filename_vis = basefilename + ".lpld_segments";
  output.open(filename_vis.data(), fstream::out);

  accessAnalysis.getPLDvisData(&NodesFracCoord, &NodesSegmentIDs, &NodesSize, "INITSEGMAP");
  NEWreportPointsValue(output, &atmnet, &NodesFracCoord, &NodesSegmentIDs, &NodesSize, visformat);

  output.close();

  if(visformat == "ZEOVIS") filename_vis = basefilename + ".zpld_segmentdi";
  if(visformat == "VISIT") filename_vis = basefilename + ".vpld_segmentdi";
  if(visformat == "LIVERPOOL") filename_vis = basefilename + ".lpld_segmentdi";
  output.open(filename_vis.data(), fstream::out);

  accessAnalysis.getPLDvisData(&NodesFracCoord, &NodesSegmentIDs, &NodesSize, "INITSEGDINODE");
  NEWreportPointsValue(output, &atmnet, &NodesFracCoord, &NodesSegmentIDs, &NodesSize, visformat);

  output.close();

  if(visformat == "ZEOVIS") filename_vis = basefilename + ".zpld_segmentpld";
  if(visformat == "VISIT") filename_vis = basefilename + ".vpld_segmentpld";
  if(visformat == "LIVERPOOL") filename_vis = basefilename + ".lpld_segmentpld";
  output.open(filename_vis.data(), fstream::out);

  accessAnalysis.getPLDvisData(&NodesFracCoord, &NodesSegmentIDs, &NodesSize, "PLDNODES");
  NEWreportPointsValue(output, &atmnet, &NodesFracCoord, &NodesSegmentIDs, &NodesSize, visformat);

  output.close();

  if(visformat == "ZEOVIS") filename_vis = basefilename + ".zpld_segmentdf";
  if(visformat == "VISIT") filename_vis = basefilename + ".vpld_segmentdf";
  if(visformat == "LIVERPOOL") filename_vis = basefilename + ".lpld_segmentdf";
  output.open(filename_vis.data(), fstream::out);

  accessAnalysis.getPLDvisData(&NodesFracCoord, &NodesSegmentIDs, &NodesSize, "DFSPHERES");
  NEWreportPointsValue(output, &atmnet, &NodesFracCoord, &NodesSegmentIDs, &NodesSize, visformat);

  output.close();
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x3a8, %rsp            # imm = 0x3A8
movq %rdx, %r14
movq %rsi, %r15
movq %rdi, %rbx
leaq 0x198(%rsp), %rdi
callq 0x4520
xorl %eax, %eax
movq %rax, 0x90(%rsp)
xorps %xmm0, %xmm0
movaps %xmm0, 0x80(%rsp)
movq %rax, 0x70(%rsp)
movaps %xmm0, 0x60(%rsp)
movq %rax, 0x50(%rsp)
movaps %xmm0, 0x40(%rsp)
leaq 0x30(%rsp), %rcx
movq %rcx, -0x10(%rcx)
movq %rax, -0x8(%rcx)
movb $0x0, (%rcx)
leaq 0x478ed(%rip), %rsi     # 0x1535c0
movq %r14, %rdi
callq 0x4170
testl %eax, %eax
jne 0x10bd2f
leaq 0x10(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%r15), %rsi
movq 0x8(%r15), %rdx
addq %rsi, %rdx
movq %rsp, %rdi
callq 0xf32a
leaq 0x4d912(%rip), %rsi     # 0x159613
movq %rsp, %rdi
callq 0x4820
leaq 0x20(%rsp), %rdi
movq %rsp, %r12
movq %r12, %rsi
callq 0x4540
movq (%r12), %rdi
cmpq %r13, %rdi
je 0x10bd2f
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x4470
leaq 0x478c1(%rip), %rsi     # 0x1535f7
movq %r14, %rdi
callq 0x4170
testl %eax, %eax
jne 0x10bd92
leaq 0x10(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%r15), %rsi
movq 0x8(%r15), %rdx
addq %rsi, %rdx
movq %rsp, %rdi
callq 0xf32a
leaq 0x4d8be(%rip), %rsi     # 0x159622
movq %rsp, %rdi
callq 0x4820
leaq 0x20(%rsp), %rdi
movq %rsp, %r12
movq %r12, %rsi
callq 0x4540
movq (%r12), %rdi
cmpq %r13, %rdi
je 0x10bd92
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x4470
leaq 0x47870(%rip), %rsi     # 0x153609
movq %r14, %rdi
callq 0x4170
testl %eax, %eax
jne 0x10bdf5
leaq 0x10(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%r15), %rsi
movq 0x8(%r15), %rdx
addq %rsi, %rdx
movq %rsp, %rdi
callq 0xf32a
leaq 0x4d86a(%rip), %rsi     # 0x159631
movq %rsp, %rdi
callq 0x4820
leaq 0x20(%rsp), %rdi
movq %rsp, %r12
movq %r12, %rsi
callq 0x4540
movq (%r12), %rdi
cmpq %r13, %rdi
je 0x10bdf5
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x4470
movq 0x20(%rsp), %rsi
leaq 0x198(%rsp), %rdi
movl $0x10, %edx
callq 0x43d0
leaq 0x188(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x4c34a(%rip), %rsi     # 0x158169
leaq 0x4c34d(%rip), %rdx     # 0x158173
leaq 0x178(%rsp), %rdi
callq 0x2263c
leaq 0x990(%rbx), %r12
leaq 0x80(%rsp), %rsi
leaq 0x60(%rsp), %rdx
leaq 0x40(%rsp), %rcx
leaq 0x178(%rsp), %r8
movq %r12, %rdi
callq 0x989ca
movq 0x178(%rsp), %rdi
cmpq %r13, %rdi
je 0x10be79
movq 0x188(%rsp), %rsi
incq %rsi
callq 0x4470
leaq 0x168(%rsp), %rbp
movq %rbp, -0x10(%rbp)
movq (%r14), %rsi
movq 0x8(%r14), %rdx
addq %rsi, %rdx
leaq 0x158(%rsp), %rdi
callq 0xf32a
leaq 0x1a8(%rsp), %rdi
leaq 0x80(%rsp), %rdx
leaq 0x60(%rsp), %rcx
leaq 0x40(%rsp), %r8
leaq 0x158(%rsp), %r9
movq %rbx, %rsi
callq 0x3d276
movq 0x158(%rsp), %rdi
cmpq %rbp, %rdi
je 0x10bee3
movq 0x168(%rsp), %rsi
incq %rsi
callq 0x4470
leaq 0x198(%rsp), %rdi
callq 0x4090
leaq 0x476c9(%rip), %rsi     # 0x1535c0
movq %r14, %rdi
callq 0x4170
testl %eax, %eax
jne 0x10bf53
leaq 0x10(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%r15), %rsi
movq 0x8(%r15), %rdx
addq %rsi, %rdx
movq %rsp, %rdi
callq 0xf32a
leaq 0x4d71b(%rip), %rsi     # 0x159640
movq %rsp, %rdi
callq 0x4820
leaq 0x20(%rsp), %rdi
movq %rsp, %rbp
movq %rbp, %rsi
callq 0x4540
movq (%rbp), %rdi
cmpq %r13, %rdi
je 0x10bf53
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x4470
leaq 0x4769d(%rip), %rsi     # 0x1535f7
movq %r14, %rdi
callq 0x4170
testl %eax, %eax
jne 0x10bfb6
leaq 0x10(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%r15), %rsi
movq 0x8(%r15), %rdx
addq %rsi, %rdx
movq %rsp, %rdi
callq 0xf32a
leaq 0x4d6c8(%rip), %rsi     # 0x159650
movq %rsp, %rdi
callq 0x4820
leaq 0x20(%rsp), %rdi
movq %rsp, %rbp
movq %rbp, %rsi
callq 0x4540
movq (%rbp), %rdi
cmpq %r13, %rdi
je 0x10bfb6
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x4470
leaq 0x4764c(%rip), %rsi     # 0x153609
movq %r14, %rdi
callq 0x4170
testl %eax, %eax
jne 0x10c019
leaq 0x10(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%r15), %rsi
movq 0x8(%r15), %rdx
addq %rsi, %rdx
movq %rsp, %rdi
callq 0xf32a
leaq 0x4d675(%rip), %rsi     # 0x159660
movq %rsp, %rdi
callq 0x4820
leaq 0x20(%rsp), %rdi
movq %rsp, %rbp
movq %rbp, %rsi
callq 0x4540
movq (%rbp), %rdi
cmpq %r13, %rdi
je 0x10c019
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x4470
movq 0x20(%rsp), %rsi
leaq 0x198(%rsp), %rdi
movl $0x10, %edx
callq 0x43d0
leaq 0x148(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x4c13d(%rip), %rsi     # 0x158180
leaq 0x4c143(%rip), %rdx     # 0x15818d
leaq 0x138(%rsp), %rdi
callq 0x2263c
leaq 0x80(%rsp), %rsi
leaq 0x60(%rsp), %rdx
leaq 0x40(%rsp), %rcx
leaq 0x138(%rsp), %r8
movq %r12, %rdi
callq 0x989ca
movq 0x138(%rsp), %rdi
cmpq %r13, %rdi
je 0x10c096
movq 0x148(%rsp), %rsi
incq %rsi
callq 0x4470
leaq 0x128(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%r14), %rsi
movq 0x8(%r14), %rdx
addq %rsi, %rdx
leaq 0x118(%rsp), %rdi
callq 0xf32a
leaq 0x80(%rsp), %rdx
leaq 0x60(%rsp), %rcx
leaq 0x40(%rsp), %r8
leaq 0x118(%rsp), %r9
leaq 0x1a8(%rsp), %rdi
movq %rbx, %rsi
callq 0x3d276
movq 0x118(%rsp), %rdi
cmpq %r13, %rdi
je 0x10c100
movq 0x128(%rsp), %rsi
incq %rsi
callq 0x4470
leaq 0x198(%rsp), %rdi
callq 0x4090
leaq 0x474ac(%rip), %rsi     # 0x1535c0
movq %r14, %rdi
callq 0x4170
testl %eax, %eax
jne 0x10c170
leaq 0x10(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%r15), %rsi
movq 0x8(%r15), %rdx
addq %rsi, %rdx
movq %rsp, %rdi
callq 0xf32a
leaq 0x4d52e(%rip), %rsi     # 0x159670
movq %rsp, %rdi
callq 0x4820
leaq 0x20(%rsp), %rdi
movq %rsp, %rbp
movq %rbp, %rsi
callq 0x4540
movq (%rbp), %rdi
cmpq %r13, %rdi
je 0x10c170
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x4470
leaq 0x47480(%rip), %rsi     # 0x1535f7
movq %r14, %rdi
callq 0x4170
testl %eax, %eax
jne 0x10c1d3
leaq 0x10(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%r15), %rsi
movq 0x8(%r15), %rdx
addq %rsi, %rdx
movq %rsp, %rdi
callq 0xf32a
leaq 0x4d4dc(%rip), %rsi     # 0x159681
movq %rsp, %rdi
callq 0x4820
leaq 0x20(%rsp), %rdi
movq %rsp, %rbp
movq %rbp, %rsi
callq 0x4540
movq (%rbp), %rdi
cmpq %r13, %rdi
je 0x10c1d3
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x4470
leaq 0x4742f(%rip), %rsi     # 0x153609
movq %r14, %rdi
callq 0x4170
testl %eax, %eax
jne 0x10c236
leaq 0x10(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%r15), %rsi
movq 0x8(%r15), %rdx
addq %rsi, %rdx
movq %rsp, %rdi
callq 0xf32a
leaq 0x4d48a(%rip), %rsi     # 0x159692
movq %rsp, %rdi
callq 0x4820
leaq 0x20(%rsp), %rdi
movq %rsp, %rbp
movq %rbp, %rsi
callq 0x4540
movq (%rbp), %rdi
cmpq %r13, %rdi
je 0x10c236
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x4470
movq 0x20(%rsp), %rsi
leaq 0x198(%rsp), %rdi
movl $0x10, %edx
callq 0x43d0
leaq 0x108(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x4bf2e(%rip), %rsi     # 0x15818e
leaq 0x4bf2f(%rip), %rdx     # 0x158196
leaq 0xf8(%rsp), %rdi
callq 0x2263c
leaq 0x80(%rsp), %rsi
leaq 0x60(%rsp), %rdx
leaq 0x40(%rsp), %rcx
leaq 0xf8(%rsp), %r8
movq %r12, %rdi
callq 0x989ca
movq 0xf8(%rsp), %rdi
cmpq %r13, %rdi
je 0x10c2b3
movq 0x108(%rsp), %rsi
incq %rsi
callq 0x4470
leaq 0xe8(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%r14), %rsi
movq 0x8(%r14), %rdx
addq %rsi, %rdx
leaq 0xd8(%rsp), %rdi
callq 0xf32a
leaq 0x80(%rsp), %rdx
leaq 0x60(%rsp), %rcx
leaq 0x40(%rsp), %r8
leaq 0xd8(%rsp), %r9
leaq 0x1a8(%rsp), %rdi
movq %rbx, %rsi
callq 0x3d276
movq 0xd8(%rsp), %rdi
cmpq %r13, %rdi
je 0x10c31d
movq 0xe8(%rsp), %rsi
incq %rsi
callq 0x4470
leaq 0x198(%rsp), %rdi
callq 0x4090
leaq 0x4728f(%rip), %rsi     # 0x1535c0
movq %r14, %rdi
callq 0x4170
testl %eax, %eax
jne 0x10c38d
leaq 0x10(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%r15), %rsi
movq 0x8(%r15), %rdx
addq %rsi, %rdx
movq %rsp, %rdi
callq 0xf32a
leaq 0x4d344(%rip), %rsi     # 0x1596a3
movq %rsp, %rdi
callq 0x4820
leaq 0x20(%rsp), %rdi
movq %rsp, %rbp
movq %rbp, %rsi
callq 0x4540
movq (%rbp), %rdi
cmpq %r13, %rdi
je 0x10c38d
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x4470
leaq 0x47263(%rip), %rsi     # 0x1535f7
movq %r14, %rdi
callq 0x4170
testl %eax, %eax
jne 0x10c3f0
leaq 0x10(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%r15), %rsi
movq 0x8(%r15), %rdx
addq %rsi, %rdx
movq %rsp, %rdi
callq 0xf32a
leaq 0x4d2f1(%rip), %rsi     # 0x1596b3
movq %rsp, %rdi
callq 0x4820
leaq 0x20(%rsp), %rdi
movq %rsp, %rbp
movq %rbp, %rsi
callq 0x4540
movq (%rbp), %rdi
cmpq %r13, %rdi
je 0x10c3f0
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x4470
leaq 0x47212(%rip), %rsi     # 0x153609
movq %r14, %rdi
callq 0x4170
testl %eax, %eax
jne 0x10c452
leaq 0x10(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%r15), %rsi
movq 0x8(%r15), %rdx
addq %rsi, %rdx
movq %rsp, %rdi
callq 0xf32a
leaq 0x4d29e(%rip), %rsi     # 0x1596c3
movq %rsp, %rdi
callq 0x4820
leaq 0x20(%rsp), %rdi
movq %rsp, %r15
movq %r15, %rsi
callq 0x4540
movq (%r15), %rdi
cmpq %r13, %rdi
je 0x10c452
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x4470
movq 0x20(%rsp), %rsi
leaq 0x198(%rsp), %rdi
movl $0x10, %edx
callq 0x43d0
leaq 0xc8(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x4bd1b(%rip), %rsi     # 0x158197
leaq 0x4bd1d(%rip), %rdx     # 0x1581a0
leaq 0xb8(%rsp), %rdi
callq 0x2263c
leaq 0x80(%rsp), %rsi
leaq 0x60(%rsp), %rdx
leaq 0x40(%rsp), %rcx
leaq 0xb8(%rsp), %r8
movq %r12, %rdi
callq 0x989ca
movq 0xb8(%rsp), %rdi
cmpq %r15, %rdi
je 0x10c4cf
movq 0xc8(%rsp), %rsi
incq %rsi
callq 0x4470
leaq 0xa8(%rsp), %r15
movq %r15, -0x10(%r15)
movq (%r14), %rsi
movq 0x8(%r14), %rdx
addq %rsi, %rdx
leaq 0x98(%rsp), %rdi
callq 0xf32a
leaq 0x80(%rsp), %rdx
leaq 0x60(%rsp), %rcx
leaq 0x40(%rsp), %r8
leaq 0x98(%rsp), %r9
leaq 0x1a8(%rsp), %rdi
movq %rbx, %rsi
callq 0x3d276
movq 0x98(%rsp), %rdi
cmpq %r15, %rdi
je 0x10c539
movq 0xa8(%rsp), %rsi
incq %rsi
callq 0x4470
leaq 0x198(%rsp), %rdi
callq 0x4090
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x10c562
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x4470
movq 0x40(%rsp), %rdi
testq %rdi, %rdi
je 0x10c579
movq 0x50(%rsp), %rsi
subq %rdi, %rsi
callq 0x4470
movq 0x60(%rsp), %rdi
testq %rdi, %rdi
je 0x10c590
movq 0x70(%rsp), %rsi
subq %rdi, %rsi
callq 0x4470
movq 0x80(%rsp), %rdi
testq %rdi, %rdi
je 0x10c5ad
movq 0x90(%rsp), %rsi
subq %rdi, %rsi
callq 0x4470
leaq 0x198(%rsp), %rdi
callq 0x4110
addq $0x3a8, %rsp            # imm = 0x3A8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x10c614
jmp 0x10c614
jmp 0x10c73a
jmp 0x10c614
jmp 0x10c73a
jmp 0x10c73a
jmp 0x10c614
jmp 0x10c614
jmp 0x10c73a
jmp 0x10c614
jmp 0x10c73a
jmp 0x10c73a
jmp 0x10c614
jmp 0x10c614
jmp 0x10c73a
jmp 0x10c614
jmp 0x10c73a
jmp 0x10c73a
jmp 0x10c614
jmp 0x10c614
jmp 0x10c73a
movq %rax, %rbx
movq (%rsp), %rdi
cmpq %r13, %rdi
je 0x10c73d
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x4470
jmp 0x10c73d
jmp 0x10c73a
jmp 0x10c73a
movq %rax, %rbx
movq 0x98(%rsp), %rdi
cmpq %r15, %rdi
je 0x10c73d
movq 0xa8(%rsp), %rsi
jmp 0x10c629
movq %rax, %rbx
movq 0xb8(%rsp), %rdi
cmpq %r15, %rdi
je 0x10c73d
movq 0xc8(%rsp), %rsi
jmp 0x10c629
jmp 0x10c73a
movq %rax, %rbx
movq 0xd8(%rsp), %rdi
cmpq %r13, %rdi
je 0x10c73d
movq 0xe8(%rsp), %rsi
jmp 0x10c629
movq %rax, %rbx
movq 0xf8(%rsp), %rdi
cmpq %r13, %rdi
je 0x10c73d
movq 0x108(%rsp), %rsi
jmp 0x10c629
jmp 0x10c73a
movq %rax, %rbx
movq 0x118(%rsp), %rdi
cmpq %r13, %rdi
je 0x10c73d
movq 0x128(%rsp), %rsi
jmp 0x10c629
movq %rax, %rbx
movq 0x138(%rsp), %rdi
cmpq %r13, %rdi
je 0x10c73d
movq 0x148(%rsp), %rsi
jmp 0x10c629
jmp 0x10c73a
movq %rax, %rbx
movq 0x158(%rsp), %rdi
cmpq %rbp, %rdi
je 0x10c73d
movq 0x168(%rsp), %rsi
jmp 0x10c629
movq %rax, %rbx
movq 0x178(%rsp), %rdi
cmpq %r13, %rdi
je 0x10c73d
movq 0x188(%rsp), %rsi
jmp 0x10c629
jmp 0x10c73a
movq %rax, %rbx
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x10c759
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x4470
movq 0x40(%rsp), %rdi
testq %rdi, %rdi
je 0x10c770
movq 0x50(%rsp), %rsi
subq %rdi, %rsi
callq 0x4470
movq 0x60(%rsp), %rdi
testq %rdi, %rdi
je 0x10c787
movq 0x70(%rsp), %rsi
subq %rdi, %rsi
callq 0x4470
movq 0x80(%rsp), %rdi
testq %rdi, %rdi
je 0x10c7a4
movq 0x90(%rsp), %rsi
subq %rdi, %rsi
callq 0x4470
leaq 0x198(%rsp), %rdi
callq 0x4110
movq %rbx, %rdi
callq 0x4780
nopl (%rax)