// File: Kingsford-Group[P]ghost2/src/readFromGexf.hpp
// Function: getNodes(std::basic_ifstream<char, std::char_traits<char>>*, Graph*, boost::unordered::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, boost::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>>*)
void getNodes(ifstream *fin, Graph *target, idtoval *itv)
{
  string cur = nextTag(fin);
  while(cur.substr(0,5) != "nodes")
  {
    cur = nextTag(fin);
    if(cur == "<EOF>") {cout << "read nodes error\n"; break;}
  }
  string curid;
  while(cur != "/nodes")
  {
    cur = nextTag(fin);
    if(cur == "<EOF>") {cout << "read nodes error\n"; break;}
    string id = extract(cur,"id");
    if(id != "<EOS>")
      curid = id;
    string value = extract(cur,"value");
    if(value != "<EOS>")
    {
      (*target).addVertex(value);
      (*itv)[curid] = value;
    }
  }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x220, %rsp            # imm = 0x220
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq -0x8(%rbp), %rsi
leaq -0x38(%rbp), %rdi
callq 0x12580
xorl %eax, %eax
movl %eax, %edx
leaq -0x58(%rbp), %rdi
leaq -0x38(%rbp), %rsi
movl $0x5, %ecx
callq 0x10740
jmp 0x12f4c
leaq 0xa97c9(%rip), %rsi     # 0xbc71c
leaq -0x58(%rbp), %rdi
callq 0x23540
movb %al, -0x1b9(%rbp)
jmp 0x12f64
leaq -0x58(%rbp), %rdi
callq 0x10460
movb -0x1b9(%rbp), %al
testb $0x1, %al
jne 0x12f7c
jmp 0x13026
movq -0x8(%rbp), %rsi
leaq -0x88(%rbp), %rdi
callq 0x12580
jmp 0x12f8e
leaq -0x38(%rbp), %rdi
movq %rdi, -0x1c8(%rbp)
leaq -0x88(%rbp), %rsi
movq %rsi, -0x1d0(%rbp)
callq 0x108a0
movq -0x1d0(%rbp), %rdi
callq 0x10460
movq -0x1c8(%rbp), %rdi
leaq 0xa970d(%rip), %rsi     # 0xbc6d3
callq 0x233d0
movb %al, -0x1ba(%rbp)
jmp 0x12fd3
movb -0x1ba(%rbp), %al
testb $0x1, %al
jne 0x12fdf
jmp 0x13021
movq 0x11dfb2(%rip), %rdi    # 0x130f98
leaq 0xa971c(%rip), %rsi     # 0xbc709
callq 0x106c0
jmp 0x12ff4
jmp 0x13026
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
jmp 0x133df
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
leaq -0x58(%rbp), %rdi
callq 0x10460
jmp 0x133df
jmp 0x12f34
leaq -0xa8(%rbp), %rdi
callq 0x109f0
leaq 0xa96e2(%rip), %rsi     # 0xbc71b
leaq -0x38(%rbp), %rdi
callq 0x23540
movb %al, -0x1d1(%rbp)
jmp 0x1304a
movb -0x1d1(%rbp), %al
testb $0x1, %al
jne 0x13059
jmp 0x133b5
movq -0x8(%rbp), %rsi
leaq -0xc8(%rbp), %rdi
callq 0x12580
jmp 0x1306b
leaq -0x38(%rbp), %rdi
movq %rdi, -0x1e0(%rbp)
leaq -0xc8(%rbp), %rsi
movq %rsi, -0x1e8(%rbp)
callq 0x108a0
movq -0x1e8(%rbp), %rdi
callq 0x10460
movq -0x1e0(%rbp), %rdi
leaq 0xa9630(%rip), %rsi     # 0xbc6d3
callq 0x233d0
movb %al, -0x1d2(%rbp)
jmp 0x130b0
movb -0x1d2(%rbp), %al
testb $0x1, %al
jne 0x130bc
jmp 0x130e7
movq 0x11ded5(%rip), %rdi    # 0x130f98
leaq 0xa963f(%rip), %rsi     # 0xbc709
callq 0x106c0
jmp 0x130d1
jmp 0x133b5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
jmp 0x133d3
leaq -0x108(%rbp), %rdi
leaq -0x38(%rbp), %rsi
callq 0x10300
jmp 0x130f9
leaq -0x129(%rbp), %rdi
movq %rdi, -0x1f0(%rbp)
callq 0x10ce0
movq -0x1f0(%rbp), %rdx
leaq 0xac4ab(%rip), %rsi     # 0xbf5c5
leaq -0x128(%rbp), %rdi
callq 0x23400
jmp 0x13128
leaq -0xe8(%rbp), %rdi
leaq -0x108(%rbp), %rsi
leaq -0x128(%rbp), %rdx
callq 0x12780
jmp 0x13144
leaq -0x128(%rbp), %rdi
callq 0x10460
leaq -0x129(%rbp), %rdi
callq 0x10770
leaq -0x108(%rbp), %rdi
callq 0x10460
leaq 0xa956c(%rip), %rsi     # 0xbc6db
leaq -0xe8(%rbp), %rdi
callq 0x23540
movb %al, -0x1f1(%rbp)
jmp 0x13183
movb -0x1f1(%rbp), %al
testb $0x1, %al
jne 0x1318f
jmp 0x131fa
leaq -0xa8(%rbp), %rdi
leaq -0xe8(%rbp), %rsi
callq 0x10070
jmp 0x131a4
jmp 0x131fa
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
jmp 0x131cc
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
leaq -0x128(%rbp), %rdi
callq 0x10460
leaq -0x129(%rbp), %rdi
callq 0x10770
leaq -0x108(%rbp), %rdi
callq 0x10460
jmp 0x133d3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
jmp 0x133a7
leaq -0x170(%rbp), %rdi
leaq -0x38(%rbp), %rsi
callq 0x10300
jmp 0x1320c
leaq -0x191(%rbp), %rdi
movq %rdi, -0x200(%rbp)
callq 0x10ce0
movq -0x200(%rbp), %rdx
leaq 0xa94f5(%rip), %rsi     # 0xbc722
leaq -0x190(%rbp), %rdi
callq 0x23400
jmp 0x1323b
leaq -0x150(%rbp), %rdi
leaq -0x170(%rbp), %rsi
leaq -0x190(%rbp), %rdx
callq 0x12780
jmp 0x13257
leaq -0x190(%rbp), %rdi
callq 0x10460
leaq -0x191(%rbp), %rdi
callq 0x10770
leaq -0x170(%rbp), %rdi
callq 0x10460
leaq 0xa9459(%rip), %rsi     # 0xbc6db
leaq -0x150(%rbp), %rdi
callq 0x23540
movb %al, -0x201(%rbp)
jmp 0x13296
movb -0x201(%rbp), %al
testb $0x1, %al
jne 0x132a5
jmp 0x1337e
movq -0x10(%rbp), %rax
movq %rax, -0x210(%rbp)
leaq -0x1b8(%rbp), %rdi
leaq -0x150(%rbp), %rsi
callq 0x10300
jmp 0x132c5
movq -0x210(%rbp), %rdi
leaq -0x1b8(%rbp), %rsi
callq 0x239b0
jmp 0x132da
leaq -0x1b8(%rbp), %rdi
callq 0x10460
movq -0x18(%rbp), %rdi
leaq -0xa8(%rbp), %rsi
callq 0x23a30
movq %rax, -0x218(%rbp)
jmp 0x132ff
movq -0x218(%rbp), %rdi
leaq -0x150(%rbp), %rsi
callq 0x10070
jmp 0x13314
jmp 0x1337e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
jmp 0x1333c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
leaq -0x190(%rbp), %rdi
callq 0x10460
leaq -0x191(%rbp), %rdi
callq 0x10770
leaq -0x170(%rbp), %rdi
callq 0x10460
jmp 0x133a7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
jmp 0x1339b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
leaq -0x1b8(%rbp), %rdi
callq 0x10460
jmp 0x1339b
leaq -0x150(%rbp), %rdi
callq 0x10460
leaq -0xe8(%rbp), %rdi
callq 0x10460
jmp 0x13032
leaq -0x150(%rbp), %rdi
callq 0x10460
leaq -0xe8(%rbp), %rdi
callq 0x10460
jmp 0x133d3
leaq -0xa8(%rbp), %rdi
callq 0x10460
leaq -0x38(%rbp), %rdi
callq 0x10460
addq $0x220, %rsp            # imm = 0x220
popq %rbp
retq
leaq -0xa8(%rbp), %rdi
callq 0x10460
leaq -0x38(%rbp), %rdi
callq 0x10460
movq -0x60(%rbp), %rdi
callq 0x10cc0
nopw %cs:(%rax,%rax)