#include "libscl.h"
using namespace scl;
using namespace std;

int main(int argc, char** argp, char** envp)
{

  ifstream fin;
  ofstream fout;

  INTEGER drop = 1610;
  INTEGER n = 11916 - drop;

  intvec Date(n,1); 
  intvec yyyy(n,1), mm(n,1), dd(n,1), yyy(n,1);
  realmat Cnsmr(n,1), Manuf(n,1), HiTec(n,1), Hlth(n,1), Other(n,1);

  string filename = "industries.dat";
  fin.open(filename.c_str());
  if (!fin.good()) error("Error, cannot open, " + filename);

  for (INTEGER t=1; t<=drop; ++t) {
    string line;
    getline(fin,line);
  }

  for (INTEGER t=1; t<=n; ++t) {
    fin >> Date[t] >> Cnsmr[t] >> Manuf[t] >> HiTec[t] >> Hlth[t] >> Other[t];
    yyyy[t] = Date[t]/10000;
    mm[t] = Date[t] - yyyy[t]*10000;
    mm[t] /= 100;
    dd[t] = Date[t] - yyyy[t]*10000;
    dd[t] -= mm[t]*100;
    yyy[t] = yyyy[t]/10;
  }

  fin.close();
  fin.clear();

  filename = "snp_fit_to_industries_data.sig";
  fin.open(filename.c_str());
  if (!fin.good()) error("Error, cannot open, " + filename);

  filename = "condcorr.dat";
  fout.open(filename.c_str());
  if (!fout.good()) error("Error, cannot open, " + filename);

  realmat v11(n,1), v12(n,1), v22(n,1), c12(n,1);

  for (INTEGER t=1; t<=n; ++t) {
    fin >> v11[t] >> v12[t] >> v22[t];
    c12[t] = v12[t]/sqrt(v11[t]*v22[t]);
    if (yyy[t]<201) {
      fout << fmt('d',3,yyy[t]) << fmt('d',6,yyyy[t]) << fmt('d',4,mm[t]) 
            << fmt('d',4,dd[t]) << fmt('f',10,5,c12[t]) << '\n';
    }
  }

  fin.close();
  fin.clear();

  fout.close();
  fout.clear();

  return 0;
}
