struct SparseMatrix {
  struct RowHeader *rows;
  struct ColHeader *cols;
}
;
struct timeval {
  long tv_sec;
  long tv_usec;
}
;
struct ColHeader {
  short col;
  short whichUnknown;
  double colScaleFactor;
  struct ElementNode *celems;
  struct ColHeader *ncolH;
  struct ColHeader *pcolH;
}
;
struct ElementNode {
  short row;
  short col;
  long markowitzProduct;
  double value;
  struct ElementNode *nrowE;
  struct ElementNode *prowE;
  struct ElementNode *ncolE;
  struct ElementNode *pcolE;
}
;
enum fp_pi_type
{
    fp_pi_infinite = 0, 
    fp_pi_66 = 1, 
    fp_pi_53 = 2
};
struct _iobuf {
  int _cnt;
  unsigned char *_ptr;
  unsigned char *_base;
  int _bufsiz;
  short _flag;
  char _file;
}
;
struct mallinfo {
  int arena;
  int ordblks;
  int smblks;
  int hblks;
  int hblkhd;
  int usmblks;
  int fsmblks;
  int uordblks;
  int fordblks;
  int keepcost;
  int mxfast;
  int nlblks;
  int grain;
  int uordbytes;
  int allocated;
  int treeoverhead;
}
;
struct RowHeader {
  short row;
  struct ElementNode *relems;
  struct RowHeader *nrowH;
  struct RowHeader *prowH;
}
;
struct rusage {
  struct timeval ru_utime;
  struct timeval ru_stime;
  long ru_maxrss;
  long ru_ixrss;
  long ru_idrss;
  long ru_isrss;
  long ru_minflt;
  long ru_majflt;
  long ru_nswap;
  long ru_inblock;
  long ru_oublock;
  long ru_msgsnd;
  long ru_msgrcv;
  long ru_nsignals;
  long ru_nvcsw;
  long ru_nivcsw;
}
;
enum fp_direction_type
{
    fp_nearest = 0, 
    fp_tozero = 1, 
    fp_positive = 2, 
    fp_negative = 3
};
enum fp_precision_type
{
    fp_extended = 0, 
    fp_single = 1, 
    fp_double = 2, 
    fp_precision_3 = 3
};
enum fp_class_type
{
    fp_zero = 0, 
    fp_subnormal = 1, 
    fp_normal = 2, 
    fp_infinity = 3, 
    fp_quiet = 4, 
    fp_signaling = 5
};
struct tm {
  int tm_sec;
  int tm_min;
  int tm_hour;
  int tm_mday;
  int tm_mon;
  int tm_year;
  int tm_wday;
  int tm_yday;
  int tm_isdst;
  char *tm_zone;
  long tm_gmtoff;
}
;