// File: nompelis[P]INTecplotLib/main.cpp
// Function: main
int main( int argc, char *argv[] )
{
   char *fname = (char *) (argv[1]);

//while(1) {

   inTec_File f( fname );
   f.OpenRead();
   f.Parse();
   f.Close();
   inTec_Zone *z = f.GetZone( 0 );
   z->Dump( (char*) "CRAPCRAP.dat");//HACK

   printf("Zone type: %d \n", z->GetType() );
   printf("Zone variables: %d \n", z->GetNumVariables() );
   printf("Zone (not real) im: %ld \n",z->GetNumIndices( 1 ) );
   printf("Zone (not real) jm: %ld \n",z->GetNumIndices( 2 ) );
   printf("Zone (not real) km: %ld \n",z->GetNumIndices( 3 ) );
   printf("Zone nodes: %ld elements: %ld \n",
             z->GetNumNodes(), z->GetNumElements() );
   const unsigned long* icon = z->GetConnectivityPtr();
   printf(" %ld %ld %ld %ld \n",icon[0],icon[1],icon[2],icon[3]);
// 41 42 2 1
// 42 43 3 2
// 43 44 4 3
   const double* d = z->GetVariablePtr( 0 );
   printf(" %16.9e %16.9e %16.9e \n", d[0], d[1], d[2] );
//  5.000000000E-02 5.214617101E-02 5.437147251E-02


  printf("========================= LOOP ==========================\n");
//}

   return(0);
}

// Assembly:
subq $0x228, %rsp            # imm = 0x228
movl $0x0, 0x224(%rsp)
movl %edi, 0x220(%rsp)
movq %rsi, 0x218(%rsp)
movq 0x218(%rsp), %rax
movq 0x8(%rax), %rax
movq %rax, 0x210(%rsp)
movq 0x210(%rsp), %rsi
leaq 0x80(%rsp), %rdi
movq %rdi, 0x50(%rsp)
callq 0x10d0
movq 0x50(%rsp), %rdi
callq 0x1110
jmp 0x128b
leaq 0x80(%rsp), %rdi
callq 0x1030
jmp 0x129a
leaq 0x80(%rsp), %rdi
callq 0x10a0
jmp 0x12a9
leaq 0x80(%rsp), %rdi
xorl %esi, %esi
callq 0x1100
movq %rax, 0x48(%rsp)
jmp 0x12bf
movq 0x48(%rsp), %rax
movq %rax, 0x68(%rsp)
movq 0x68(%rsp), %rdi
leaq 0xd2f(%rip), %rsi       # 0x2004
callq 0x1120
jmp 0x12dc
movq 0x68(%rsp), %rdi
callq 0x1050
movl %eax, 0x44(%rsp)
jmp 0x12ec
movl 0x44(%rsp), %esi
leaq 0xd1a(%rip), %rdi       # 0x2011
xorl %eax, %eax
callq 0x1040
jmp 0x1300
movq 0x68(%rsp), %rdi
callq 0x10c0
movl %eax, 0x40(%rsp)
jmp 0x1310
movl 0x40(%rsp), %esi
leaq 0xd06(%rip), %rdi       # 0x2021
xorl %eax, %eax
callq 0x1040
jmp 0x1324
movq 0x68(%rsp), %rdi
movl $0x1, %esi
callq 0x10e0
movq %rax, 0x38(%rsp)
jmp 0x133a
movq 0x38(%rsp), %rsi
leaq 0xcf0(%rip), %rdi       # 0x2036
xorl %eax, %eax
callq 0x1040
jmp 0x134f
movq 0x68(%rsp), %rdi
movl $0x2, %esi
callq 0x10e0
movq %rax, 0x30(%rsp)
jmp 0x1365
movq 0x30(%rsp), %rsi
leaq 0xcdf(%rip), %rdi       # 0x2050
xorl %eax, %eax
callq 0x1040
jmp 0x137a
movq 0x68(%rsp), %rdi
movl $0x3, %esi
callq 0x10e0
movq %rax, 0x28(%rsp)
jmp 0x1390
movq 0x28(%rsp), %rsi
leaq 0xcce(%rip), %rdi       # 0x206a
xorl %eax, %eax
callq 0x1040
jmp 0x13a5
movq 0x68(%rsp), %rdi
callq 0x10b0
movq %rax, 0x20(%rsp)
jmp 0x13b6
movq 0x68(%rsp), %rdi
callq 0x1060
movq %rax, 0x18(%rsp)
jmp 0x13c7
movq 0x18(%rsp), %rdx
movq 0x20(%rsp), %rsi
leaq 0xcac(%rip), %rdi       # 0x2084
xorl %eax, %eax
callq 0x1040
jmp 0x13e1
movq 0x68(%rsp), %rdi
callq 0x1070
movq %rax, 0x10(%rsp)
jmp 0x13f2
movq 0x10(%rsp), %rax
movq %rax, 0x60(%rsp)
movq 0x60(%rsp), %rax
movq (%rax), %rsi
movq 0x8(%rax), %rdx
movq 0x10(%rax), %rcx
movq 0x18(%rax), %r8
leaq 0xc8d(%rip), %rdi       # 0x20a4
xorl %eax, %eax
callq 0x1040
jmp 0x1420
movq 0x68(%rsp), %rdi
xorl %esi, %esi
callq 0x1080
movq %rax, 0x8(%rsp)
jmp 0x1433
movq 0x8(%rsp), %rax
movq %rax, 0x58(%rsp)
movq 0x58(%rsp), %rax
movsd (%rax), %xmm0
movsd 0x8(%rax), %xmm1
movsd 0x10(%rax), %xmm2
leaq 0xc60(%rip), %rdi       # 0x20b7
movb $0x3, %al
callq 0x1040
jmp 0x1460
leaq 0xc68(%rip), %rdi       # 0x20cf
xorl %eax, %eax
callq 0x1040
jmp 0x1470
movl $0x0, 0x224(%rsp)
leaq 0x80(%rsp), %rdi
callq 0x1090
movl 0x224(%rsp), %eax
addq $0x228, %rsp            # imm = 0x228
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x78(%rsp)
movl %eax, 0x74(%rsp)
leaq 0x80(%rsp), %rdi
callq 0x1090
movq 0x78(%rsp), %rdi
callq 0x10f0