RIDES1_3_1_x


This macro analyzes data from the RIDES1 protocol set.
/**
 * Macro for data evaluation of RIDES1 
 * data on PhotosynQ.org
 * by: David M. Kramer
 * created: 2017-05-09 @ 18:15:27
 */

// Note: the following variables are for fitting the ECS decay curves when the 
// procedure written by Kevin and Greg often fails. Fortunately, Sebastian added 
// a really important new feature that allows for very flexible and useful 
// nonliear curve fitting. 

// Define the output object here
var output = {}; //dictionary to hold results

// Define the protocol set numbers for each data set

if (json.set.length==13){
	  json.set.unshift({});
}

var ECS_LEFdset=6;
var P700_DIRK_set=7;
var PAM_set=8;  //the json set 8 contains the PAM and P700 traces


// ECS DIRK trace definitions
var beginning_of_ECS=100; //Note the 100 pulses 
var length_of_ECS_subtrace=220; //The length of each subtrace. 
var number_of_ECS_subtraces=6; // number of ECS subtraces. There are currently 6 of them.
var length_of_ECS_baseline=100;  //there are 100 points in the baseline before the DIRK
var length_of_ECS_all_subtraces=beginning_of_ECS+(number_of_ECS_subtraces*length_of_ECS_subtrace);  
var ECS_averaged_trace=json.set[ECS_LEFdset].data_raw.slice(beginning_of_ECS,320);  
var begining_of_subtrace_for_linear_fit=75;
var end_of_subtrace_for_linear_fit=145;

var P700_begining_of_subtrace_for_linear_fit=55;
var P700_end_of_subtrace_for_linear_fit=170;

var beginning_of_LEFD=1421; //Note the 100 pulses 
var length_of_LEFd_subtrace=220; //The length of each subtrace. 
var length_of_LEFd_baseline=100;  //there are 100 points in the baseline before the DIRK
var LEFd_trace=json.set[ECS_LEFdset].data_raw.slice(beginning_of_LEFD,beginning_of_LEFD+length_of_LEFd_subtrace);  

// P700 DIRK trace definitions
var beginning_of_P700_DIRK=100; //Note the 100 pulses 
var length_of_P700_DIRK_subtrace=220; //The length of each subtrace. 
var number_of_P700_DIRK_subtraces=6; // number of ECS subtraces. There are currently 6 of them.
var length_of_P700_DIRK_baseline=100;  //there are 100 points in the baseline before the DIRK
var length_of_P700_DIRK_all_subtraces=beginning_of_P700_DIRK+(number_of_P700_DIRK_subtraces*length_of_P700_DIRK_subtrace);  
var P700_DIRK_averaged_trace=json.set[ECS_LEFdset].data_raw.slice(beginning_of_P700_DIRK,320);  


//reshape the PAM and P700 traces from alterrnating 1,2,1,2... to 1,1,1,1...2,2,2,2...

output.test_data_raw_PAM = json.set[PAM_set].data_raw.length;
var loPAM= json.set[PAM_set].data_raw.length;

var temp1= [];
for (var i=0; i<loPAM; i=i+2){
	temp1.push(json.set[PAM_set].data_raw[i]);
}

for (var i=1; i<loPAM+1; i=i+2){
	temp1.push(json.set[PAM_set].data_raw[i]);
}

json.set[PAM_set].data_raw=temp1; //replace the old values wiht temp1
               
// PAM fluorescence traces
//DEFINE THE STARTING AND ENDING POINTS TO USE FOR THE VARIOUS 
//PARAMETERS USED IN THE CALCULATIONS

var Fs_begin=1; //the first point to use for Fs 
var Fs_end =4; //the end point to use  for Fs

//The Fv/FM' results will be calculated using hte Avenson technique, wherein
//a series of different saturation pulse intensities are used and the 
//true saturation point is inferred by extrapolation to infinite
//intensities.

//The first FM value (Fm_1) is obtained with the highest intensity
var Fm_1_begin =101; //the first point to use for the FIRST Fmp
var Fm_1_end =130; //the end point to use  for the FIRST Fmp
var Fm_2_begin =131; //the first point to use for the FIRST Fmp
var Fm_2_end =145; //the end point to use  for the FIRST Fmp
var Fm_3_begin =146; //the first point to use for the FIRST Fmp
var Fm_3_end =160; //the end point to use  for the FIRST Fmp
var Fm_4_begin =161; //the first point to use for the FIRST Fmp
var Fm_4_end =175; //the end point to use  for the FIRST Fmp
var Fm_5_begin =176; //the first point to use for the FIRST Fmp
var Fm_5_end =190; //the end point to use  for the FIRST Fmp

//START AND STOP FOR F0'
var FoPrime_begin =191; //the first point to use for Fs 
var FoPrime_end =205; //the end point to use  for Fs

//SET THE INVERSE INTENSITIES FOR THE AVENSON INTENSITY RAMP
var inverse_intensity = [1/8000,1/7000,1/6000,1/5000];

output.pump="none";

//PSI saturation pulse parameters:
//Calculation of the DIRK delta_A_ECS 
  //output.data_raw_ECS_DIRK = json.set[ECS_LEFdset].data_raw.slice(0,1420);

var PSI_ss_beg=1; //beginning of the trace for P700 steady-state
var PSI_ss_end=18; //end of the trace for P700 steady-state
var PSI_sat1_beg=25; //beginning of the trace for P700 first saturation pulse
var PSI_sat1_end=170; //end of the trace for P700 first saturation pulse
var PSI_dark_beg=195; //beginning of the trace for P700 steady-state
var PSI_dark_end=200; //end of the trace for P700 steady-state
var PSI_sat2_beg=220; //beginning of the trace for P700 second saturation pulse
var PSI_sat2_end=270; //end of the trace for P700 second saturation pulse


// Start of analyses sections

//ECS trace analysis:

var i, j;
  for (i = 1; i < number_of_ECS_subtraces; i++) {
      var temp=json.set[ECS_LEFdset].data_raw.slice(i*length_of_ECS_subtrace+beginning_of_ECS,
                                         (i+1)*length_of_ECS_subtrace+beginning_of_ECS);
		for (j = 0; j < length_of_ECS_subtrace; j++) {
    		ECS_averaged_trace[j]=ECS_averaged_trace[j]+temp[j];
    }}

//make up a time axis. the assumption is that all the points are equally spaced in time.
   var fake_time_axis = [];
	for (var i = 1; i <= length_of_ECS_subtrace; i++) {
      ii=i.toFixed(4);
   	fake_time_axis.push(i);
  }
  //Find the best fit line to the baseline points.
  	var reg=MathLINREG(fake_time_axis.slice(begining_of_subtrace_for_linear_fit, end_of_subtrace_for_linear_fit),ECS_averaged_trace.slice(begining_of_subtrace_for_linear_fit, end_of_subtrace_for_linear_fit));
  
  //Generate a line based on the baseline linear regression over the range of values for the full trace.   
  var baseline_offset=[];
  for (j = 0; j < length_of_ECS_subtrace; j++) {
    	jj=j.toFixed(4);
		baseline_offset.push(jj*MathROUND(reg.m, 3) + MathROUND(reg.b));
  }
  
  //output.baseline_offset=baseline_offset;
   //Calculate the deltaI/I0 and convertto approximate delta_A 
	for (j = 0; j < length_of_ECS_subtrace; j++) {
    var rat= ECS_averaged_trace[j]/baseline_offset[j];
	ECS_averaged_trace[j]=-1*MathLOG(rat); //((rat-1)/-2.3);
    }
ECS_averaged_trace[120]=ECS_averaged_trace[119]; //eliminate the spike artifact at end of trace
output.ECS_averaged_trace=ECS_averaged_trace.slice(80,150);

var begin_trace_index=100;
var end_trace_index=120;
var number_of_points_to_fit=end_trace_index-begin_trace_index;
var expData=ECS_averaged_trace.slice(begin_trace_index,end_trace_index);

// Here I assume that the time difference between points was 

var time_per_point=1.5; //entger the delta time between points (only work with constant delta time) 

// Obtain best fit results for ECS decay using non-linear least squares fitting
var tdata=[];
for (i in expData) {
	tdata.push([i*time_per_point, expData[i]]);
}

var a = 1;
var b = 1;
var c = 1;
try{
	var fit = NonLinearRegression(tdata,{
	   equation: 'b + a * e(- x / c)',
	   initial: [ a, b, c ]
	});

	a= fit.parameters[0].value;
	b= fit.parameters[1].value;
	c = fit.parameters[2].value;

	var outdata=[];
	for (i in expData) {
		outdata.push(b + a*Math.exp(-1*i/c));
	}

	output.fitinput=expData;
	output.outdata=outdata;

	// Available for all parameters
	//output.p1_name = fit.parameters[0].name;
	output.ECSt_mAU = MathROUND(fit.parameters[0].value, 5);
	//output.offset = fit.parameters[1].value;
	output.tECS = MathROUND(0.001*fit.parameters[2].value, 4);
	output.gHplus = MathROUND(1000/fit.parameters[2].value, 3);
	var vHplus = output.ECSt_mAU *  output.gHplus;
	output.vHplus = MathROUND(vHplus, 3);

}
catch(e){}


//***********other possible parameters 
//output.p1_sd = fit.parameters[0].sd_error;
//output.p1_p = fit.parameters[0].p;
//output.iterations = fit.iterations;
// Some more info as text
//output.ParameterEstimates = fit.ParameterEstimates;
//output.CovarianceMatrix = fit.CovarianceMatrix;
//output.expFitArray=expFitArray;
//expReg = MathEXPINVREG(expFitArray);
//var ECS_lifetime_ms=expReg.lifetime; //the fitting procedure returns -99999 if it fails to find converge


//Calculaiton of the DIRK delta_P850 

  //output.data_raw_P700_DIRK = json.set[P700_DIRK_set].data_raw.slice(0,1420);
  //Get sum of all subtraces
  var i, j;
  for (i = 1; i < number_of_P700_DIRK_subtraces; i++) {
      var temp=json.set[P700_DIRK_set].data_raw.slice(i*length_of_P700_DIRK_subtrace+beginning_of_P700_DIRK,
                                         (i+1)*length_of_P700_DIRK_subtrace+beginning_of_P700_DIRK);
      
		for (j = 0; j < length_of_P700_DIRK_subtrace; j++) {
    		P700_DIRK_averaged_trace[j]=P700_DIRK_averaged_trace[j]+temp[j];
    }
  }

  //make up a time axis. the assumption is that all the points are equally spaced in time.
   var fake_time_axis = [];
	for (var i = 1; i <= length_of_P700_DIRK_subtrace; i++) {
      ii=i.toFixed(4);
   	fake_time_axis.push(i);
  }
  //Find the best fit line to the baseline points.
  	var reg=MathLINREG(fake_time_axis,P700_DIRK_averaged_trace);
  
  //Generate a line based on the baseline linear regression over the range of values for the full trace.   
  var baseline_offset=[];
  for (j = 0; j < length_of_P700_DIRK_subtrace; j++) {
    	jj=j.toFixed(4);
		baseline_offset.push(jj*MathROUND(reg.m, 3) + MathROUND(reg.b));
  }
  
  //output.baseline_offset=baseline_offset;
   //Calculate the deltaI/I0 and convertto approximate delta_A 
	for (j = 0; j < length_of_P700_DIRK_subtrace; j++) {
    var rat= P700_DIRK_averaged_trace[j]/baseline_offset[j];
      
	P700_DIRK_averaged_trace[j]=-1*MathLOG(rat); //((rat-1)/-2.3);
      //test=Math.LN10(rat);
    }
  //replace the artifactual data at positon 120 with the prior value
  //the point has no real valye, so this is just to better visualize the results

P700_DIRK_averaged_trace[120]=P700_DIRK_averaged_trace[119]; 
output.P700_DIRK_averaged_trace=P700_DIRK_averaged_trace.slice(P700_begining_of_subtrace_for_linear_fit, P700_end_of_subtrace_for_linear_fit);

var begin_trace_index=100;
var end_trace_index=120;
var number_of_points_to_fit=end_trace_index-begin_trace_index;
var P700expData=P700_DIRK_averaged_trace.slice(begin_trace_index,end_trace_index);

var P700_time_per_point=1.5; //entger the delta time between points (only work with constant delta time) 

// Obtain best fit results for ECS decay using non-linear least squares fitting
var P700tdata=[];
for (i in expData) {
	P700tdata.push([i*time_per_point, P700expData[i]]);
}

var a = 1;
var b = 1;
var c = 1;

try{
	var fit = NonLinearRegression(P700tdata,{
	   equation: 'b + a * e(- x / c)',
	   initial: [ a, b, c ]
	});

	a= fit.parameters[0].value;
	b= fit.parameters[1].value;
	c = fit.parameters[2].value;

	var P700_outdata=[];
	for (i in expData) {
		P700_outdata.push(b + a*Math.exp(-1*i/c));
	}

	output.P700_fitinput=P700_outdata;
	output.P700_outdata=outdata;

	// Available for all parameters
	output.P700_DIRK_ampl = MathROUND(a, 5);

	output.tP700 = MathROUND(0.001*c, 4);
	output.kP700 = MathROUND(1000/c, 4);
	var v_initial_P700 = output.P700_DIRK_ampl *  output.kP700;
	output.v_initial_P700 = MathROUND(v_initial_P700, 7);
}
catch(e){}

// Display the DIRKf results and calculate LEFd

  output.LEFd_trace = LEFd_trace;

  // Display of PAM result and calculation of the fluorescence parameters
//************************************************************************************************
  //Calculate the PAM fluorescence paramters
  
  output.data_raw_PAM = json.set[PAM_set].data_raw.slice(0,310);
  data=json.set[PAM_set].data_raw.slice(0,310);
  
// Set our Apparent FmPrime, 3 FmPrime steps, and Fs to calculate both traditional fv/fm and new Multi-phase flash fv/fm
//----------------------------

//get the values for representative Fs 
var baseline=0; //for the time being, do not use baseline

//GET THE VALUES FOR Fs
var Fs = MathMEAN(data.slice(Fs_begin,Fs_end)) - baseline; // take only the first 4 values in the Fs range, excluding the very first
var Fs_std = MathSTDEV(data.slice(Fs_begin,Fs_end)); // create standard deviation for this value for error checking
//output.Fs=Fs;

//GET THE VALUES FOR THE 5 Fm' ILLUMINATION CONDITIONS

var sat_vals = data.slice(Fm_1_begin,Fm_1_end).sort();  // sort the saturating light values from low to high
var AFmP = MathMEAN(sat_vals.slice(2,20)) - baseline; // take the 18 largest values and average them
var AFmP_std = MathSTDEV(sat_vals); // create standard deviation for this value for error checking
//output.AFmP=AFmP;
  
sat_vals = data.slice(Fm_5_begin,Fm_5_end).sort();  // sort the saturating light values from low to high
var FmP_end = MathMEAN(sat_vals.slice(2,23)) - baseline; // take the 21 largest values and average them
var FmP_end_std = MathSTDEV(sat_vals); // create standard deviation for this value for error checking
//output.FmP_end=FmP_end;
  
sat_vals = data.slice(Fm_2_begin,Fm_2_end).sort();  // sort the saturating light values from low to high
var FmP_step1 = MathMEAN(sat_vals.slice(2,6)) - baseline; // take the 4 largest values and average them
var FmP_step1_std = MathSTDEV(sat_vals); // create standard deviation for this value for error checking
//output.FmP_step1=FmP_step1;
  
sat_vals = data.slice(Fm_3_begin,Fm_3_end).sort();  // sort the saturating light values from low to high
var FmP_step2 = MathMEAN(sat_vals.slice(2,6)) - baseline; // take the 4 largest values and average them
var FmP_step2_std = MathSTDEV(sat_vals); // create standard deviation for this value for error checking
//output.FmP_step2=FmP_step2;
  
sat_vals = data.slice(Fm_4_begin,Fm_4_end).sort();  // sort the saturating light values from low to high
var FmP_step3 = MathMEAN(sat_vals.slice(2,6)) - baseline; // take the 4 largest values and average them
var FmP_step3_std = MathSTDEV(sat_vals); // create standard deviation for this value for error checking
//output.FmP_ste32=FmP_step3;
  
// Calculations for F0'
// ----------------------------
var FoPrime_values =   data.slice(FoPrime_begin,FoPrime_end).sort();
  
//var FoPrime = MathMEAN(FoPrime_values.slice(5,10)) - baseline;
var FoPrime = MathMIN(FoPrime_values);
var FoPrime_std = MathSTDEV(FoPrime_values); // create standard deviation for this value for error checking

//output.FoPrime_values=FoPrime_values;
  
// Calculations for corrected FmPrime using multi-phase flash
// ----------------------------
var reg = MathLINREG(inverse_intensity, [AFmP,FmP_step1,FmP_step2,FmP_step3]);

// Calculate Phi2 w/ and w/out multi-phase flash
// ----------------------------
var fvfm_noMPF = (AFmP-Fs)/AFmP;
var fvfm_MPF = (reg.b-Fs)/reg.b;


// Calculate NPQt, PhiNPQ, PhiNO, qL w/ and w/out multi-phase flash
// ----------------------------
var npqt_MPF = (4.88 / ((reg.b / FoPrime) -1) )-1;
var npqt_noMPF = (4.88 / ((AFmP / FoPrime) -1) )-1;
var qL_MPF = ((reg.b - Fs)*FoPrime)/((reg.b-FoPrime)*Fs);
var qL_noMPF = ((AFmP - Fs)*FoPrime)/((AFmP-FoPrime)*Fs);
var PhiNO_MPF = 1/(npqt_MPF + 1 + qL_MPF*4.88); //based on equation 52 in Kramer et al., 2004 PRES
var PhiNO_noMPF = 1/(npqt_noMPF + 1 + qL_noMPF*4.88); //based on equation 52 in Kramer et al., 2004 PRES
var PhiNPQ_MPF = 1-fvfm_MPF-PhiNO_MPF; //based on equation 53 in Kramer et al., 2004 PRES 
var PhiNPQ_noMPF = 1-fvfm_noMPF-PhiNO_noMPF; //based on equation 53 in Kramer et al., 2004 PRES 
var qP_MPF = (reg.b - Fs)/(reg.b - FoPrime);
var qP_noMPF = (FmPrime - Fs)/(FmPrime - FoPrime);
var FvP_FmP_MPF = (reg.b-FoPrime)/reg.b;
var FvP_FmP_noMPF = (AFmP-FoPrime)/AFmP;

// Create the variables to be printed (assume to use the MPF values unless there is a good reason not to)
// ----------------------------
var fvfm = fvfm_MPF;
var npqt = npqt_MPF;
var PhiNO = PhiNO_MPF;
var PhiNPQ = PhiNPQ_MPF;
var qL = qL_MPF;
var FmPrime = reg.b;
var qP = qP_MPF;
var FvP_FmP = FvP_FmP_MPF;
/****************OUTPUT VALUES FROM MACRO *******************/

// if any of the flag conditions are true, then create the 'flag' object.  Otherwise, do not create the flag object.
// for now since flag system isn't fully implemented, also create as separate objects so they will be displayed
// ----------------------------

// If multi-phase flash steps are flat or positive slope, then just use the normal Phi2, NPQt, PhiNPQ, PhiNO... etc.
// If Phi2 or NPQt is less than zero, make zero and give user warning.  If Phi2 is higher than .85, give user danger flag.
// ----------------------------
if (reg.m > 0) {
  fvfm = fvfm_noMPF;
  npqt = npqt_noMPF;
  PhiNO = PhiNO_noMPF;
  PhiNPQ = PhiNPQ_noMPF;
  qL = qL_noMPF;
  FmPrime = AFmP;
  qP = qP_noMPF;
  FvP_FmP = FvP_FmP_noMPF;
  
  if (fvfm <= 0) {
    output.Phi2= 0;
  //  	output.flag.warning.push("Phi2 is negative (should be positive).  It has been set to zero, but check raw trace and consider excluding this point.  To see original negative value, see Phi2_noMPF variable");
    output["warning 2"] = "Phi2 is negative (should be positive).  It has been set to zero, but check raw trace and consider excluding this point.  To see original negative value, see Phi2_noMPF variable";
  }
  if (fvfm >=0.85) {
//  	output.flag.danger.push("Phi2 above the normal range (0 - 0.85).  Please check the raw trace and consider excluding this point.");
	output["danger 5"] = "Phi2 above the normal range (0 - 0.85).  Please check the raw trace and consider excluding this point.";
  }
  else {
	  outputPhi2 		= MathROUND(fvfm,3);
  }
  
  if (npqt <= 0) {
    output.NPQt= 0;
//  	output.flag.warning.push("NPQt is negative (should be positive)!  It has been set to zero, but check raw trace and consider excluding this point.  To see original negative NPQt value, see NPQt_noMPF variable");
	output["warning 1"] = "NPQt is negative (should be positive).  It has been set to zero, but check raw trace and consider excluding this point.  To see original negative value, see NPQt_noMPF variable";
  }
  else {
	  output.NPQt= MathROUND(npqt,3);
  }
	  output.qL= MathROUND(qL,3);
	  output.PhiNPQ= MathROUND(PhiNPQ,3);
	  output.PhiNO= MathROUND(PhiNO,3);
	  output.FvP_over_FmP = MathROUND(FvP_FmP,3);
	  outputqP = MathROUND(qP,3);
}

// Otherwise, use the multi-phase flash calculation for Phi2, NPQt, PhiNPQ, PhiNO... etc.
// If Phi2 or NPQt is less than zero, make zero and give user warning.  If Phi2 is higher than .85, give user danger flag.
// ----------------------------
else {
  if (fvfm <= 0) {
    output.Phi2 = 0;
//  	output.flag.warning.push("Phi2 is negative (should be positive).  It has been set to zero, but check raw trace and consider excluding this point.  To see original negative value, see Phi2_MPF variable");
	output["warning 2"] = "Phi2 is negative (should be positive).  It has been set to zero, but check raw trace and consider excluding this point.  To see original negative value, see Phi2_MPF variable";
  }
  if (fvfm >=0.85) {
//  	output.flag.danger.push("Phi2 above the normal range (0 - 0.85).  Please check the raw trace and consider excluding this point.");
	output["danger 5"] = "Phi2 above the normal range (0 - 0.85).  Please check the raw trace and consider excluding this point.";
  }
  else {
  	output.Phi2= MathROUND(fvfm,3);
  }
  if (npqt <= 0) {
    output.NPQt= 0;
//  	output.flag.warning.push("NPQt is negative (should be positive)!  It has been set to zero, but check raw trace and consider excluding this point.  To see original negative NPQt value, see NPQt_MPF variable");
	output["warning 3"] = "NPQt value is negative (should be positive).  It has been set to zero, but check raw trace and consider excluding this point.  To see original negative value, see NPQt_MPF variable";
  }
  else {
	  output.NPQt= MathROUND(npqt,3);
  }
	  output.qL= MathROUND(qL,3);
	  output.PhiNPQ = MathROUND(PhiNPQ,3);
	  output.PhiNO= MathROUND(PhiNO,3);
	  output.FvP_over_FmP= MathROUND(FvP_FmP,3);
	  output.qP= MathROUND(qP,3);
}

// only display LEF if there is a light intensity measurement > 0 
// ----------------------------

var light_intensity=json.set[ECS_LEFdset].light_intensity;

//if (typeof output.light_intensity != "undefined" && output.light_intensity > 0) {
output.LEF= MathROUND((output.Phi2 * 0.45 * light_intensity),3);
//}

//}

// Calculate Standard Deviation for Warning or Danger flags (out of bounds measurement)
// ----------------------------

if (Fs_std > 100	) {
//  	output.flag.danger.push("noisy Fs");
	output["danger 1"] = "noisy Fs";
}
if (AFmP_std > 200) {
//  	output.flag.danger.push("noisy FmPrime");
	output["danger 2"] = "noisy FmPrime";
}
if (FmP_step1_std > 60 | FmP_step2_std > 60 | FmP_step3_std > 60 | FmP_end_std > 200) {
//  	output.flag.danger.push("noisy multi-phase flash steps");
	output["danger 3"] = "noisy  multi-phase flash steps";
}
if (FoPrime_std > 150) {
//  	output.flag.danger.push("noisy FoPrime");
	output["danger 4"] = "noisy FoPrime";
}
  
 //ANALYZE THE PHI-PSI DATA  

var ctrace=json.set[PAM_set].data_raw;
var PSI_trace_beg=310;
var PSI_trace_end=615;
var PSI_trace_length=PSI_trace_end-PSI_trace_beg;
var PSI_data=json.set[PAM_set].data_raw.slice(PSI_trace_beg,PSI_trace_end);
var PSI_dark_raw=MathMEAN(PSI_data.slice(PSI_dark_beg,PSI_dark_end));
var PSI_data_absorbance=[];

for (var i=0; i<PSI_trace_length; i++){
  	  PSI_data_absorbance.push(MathLOG(PSI_dark_raw/PSI_data[i]));
  }
  var PSI_dark=MathMEAN(PSI_data_absorbance.slice(PSI_dark_beg,PSI_dark_end));
  var PSI_ss=MathMEAN(PSI_data_absorbance.slice(PSI_ss_beg,PSI_ss_end));
  var PSI_sat1=MathMEAN(PSI_data_absorbance.slice(PSI_sat1_beg,PSI_sat1_end));
  var PSI_sat2=MathMEAN(PSI_data_absorbance.slice(PSI_sat2_beg,PSI_sat2_end));
  var PSI_ss=1000*MathMEAN(PSI_data_absorbance.slice(PSI_ss_beg,PSI_ss_end));
  var PSI_sat1_vals = PSI_data_absorbance.slice(PSI_sat1_beg,PSI_sat1_end).sort();  // sort the saturating light values from low to high
  var length_of_sat1=PSI_sat1_end-PSI_sat1_beg;
  var top_20_percent=(length_of_sat1*0.8);
  var PSI_sat1 = 1000*MathMEAN(PSI_sat1_vals.slice(top_20_percent,length_of_sat1)); // take the top 20% largest values and average them
  var PSI_sat2_vals = PSI_data_absorbance.slice(PSI_sat2_beg,PSI_sat2_end).sort();  // sort the saturating light values from low to high
  var length_of_sat2=PSI_sat2_end-PSI_sat2_beg;
  var top_20_percent=(length_of_sat2*0.8);
  var PSI_sat2 = 1000*MathMEAN(PSI_sat2_vals.slice(top_20_percent,length_of_sat2)); // take the top 20% largest values and average them
  var PSI_ox=PSI_ss/PSI_sat2;
  var PSI_act=PSI_sat2;
  var PSI_open=(PSI_sat1-PSI_ss)/PSI_sat2;
  var PSI_or=1-PSI_sat1/PSI_sat2;
  output.PSI_data_absorbance=PSI_data_absorbance;

  output.PSI_act=MathROUND(PSI_act, 3);
  output.PSI_open =MathROUND(PSI_open, 3);
  output.PSI_or =MathROUND(PSI_or, 3);
  output.PSI_ox =MathROUND(PSI_ox, 3);
    //output.PSI_dark=PSI_dark;
  //output.PSI_ss = PSI_ss; //MathROUND(PSI_ss, 3);
  //output.PSI_sat1 =MathROUND(PSI_sat1, 3);
  //output.PSI_sat2 =MathROUND(PSI_sat2, 3);

	//output.data_raw_PSI =PSI_data;
   //output.PSI_dark_beg=PSI_dark_beg;
   //output.PSI_dark_end=PSI_dark_end;

// Humidity changes
    var humidity_kinetics=[json.set[4].humidity,
                        json.set[5].humidity,
                        json.set[ECS_LEFdset].humidity,
                        json.set[P700_DIRK_set].humidity,
                        json.set[PAM_set].humidity,
                        json.set[9].humidity,
                        json.set[10].humidity,
                        json.set[11].humidity,
                        json.set[10].humidity,
                        json.set[11].humidity
                       ];
  	output.humidity_K=humidity_kinetics;
  	output.humidity_K_T=humidity_kinetics.join(", ");

    var humidity2_kinetics=[json.set[4].humidity2,
                        json.set[5].humidity2,
                        json.set[ECS_LEFdset].humidity2,
                        json.set[P700_DIRK_set].humidity2,
                        json.set[PAM_set].humidity2,
                        json.set[9].humidity2,
                        json.set[10].humidity2,
                        json.set[11].humidity2,
                        json.set[10].humidity2,
                        json.set[11].humidity2
                       ];
  	output.humidity2_K=humidity2_kinetics;
  	output.humidity2_K_T=humidity2_kinetics.join(", ");

var diff_humidity_kinetics=[];
for (i in output.humidity2_K){
  	 var temp_d=MathROUND((output.humidity2_K[i]-output.humidity_K[i]), 2);
 	 diff_humidity_kinetics.push(temp_d);
}
output.diff_humidity_kinetics=diff_humidity_kinetics;

output.diff_humidity=diff_humidity_kinetics[8];



   // changes in leaf contactless_temp
  
    var air_temp_kinetics=[json.set[4].temperature,
                                json.set[5].temperature, 
                                json.set[ECS_LEFdset].temperature, 
                                json.set[P700_DIRK_set].temperature, 
                                json.set[PAM_set].temperature, 
                                json.set[9].temperature, 
                                json.set[10].temperature, 
                                json.set[9].temperature, 
                                json.set[10].temperature 
                       ];
    
     var contactless_temp_kinetics=[json.set[4].contactless_temp,
                                json.set[5].contactless_temp,
                                json.set[ECS_LEFdset].contactless_temp,
                                json.set[P700_DIRK_set].contactless_temp,
                                json.set[PAM_set].contactless_temp,
                                json.set[9].contactless_temp,
                                json.set[10].contactless_temp,
								json.set[9].contactless_temp,
                                json.set[10].contactless_temp

                       ];


  output.air_temp_kinetics=air_temp_kinetics;
  
  output.LEAF_temp_kinetics=contactless_temp_kinetics;
 //output.LEAF_temp_=contactless_temp_kinetics.join(", ");

  
var leaf_T_K = contactless_temp_kinetics[7]+273.3;
var Rel_hum=output.humidity2_K[8];
var Air_T_K = air_temp_kinetics[8]+273.3;

var m=100.0*leaf_T_K - (Rel_hum*Air_T_K);

output.diff_humidity_norm_T=MathROUND((1000*diff_humidity_kinetics[8]/m), 3);

var air_flow=new Array();

for (var i=1; i<12 ; i++){
  	air_flow.push(json.set[i].air_flow);
}

output.air_flow=air_flow;

 //var light_intensity=json.set[ECS_LEFdset].light_intensity;
  output.light_intensity= light_intensity;                       
  var ambient_RH=json.set[5].humidity2;
  output.ambient_RH=MathROUND(ambient_RH,3);
  var ambient_temperature=json.set[4].temperature;
  output.ambient_temperature=ambient_temperature;
  var leaf_RH=json.set[10].humidity2;
  output.leaf_RH=MathROUND(leaf_RH, 2);
  leaf_temperature = json.set[ECS_LEFdset].contactless_temp;
  output.leaf_temperature=leaf_temperature;

  var leaf_air_difference_temperature = leaf_temperature-ambient_temperature;
  output.leaf_air_difference_temperature=MathROUND(leaf_air_difference_temperature,3);
  var leaf_air_difference_temperature_norm = leaf_temperature-ambient_temperature;
  output.leaf_air_difference_temperature_norm=MathROUND(1000*leaf_air_difference_temperature/(273.3+leaf_temperature),3);



// CALCULATIONS FOR ABSORBANCE / SPAD PORTION OF THE TRACE
//----------------------------
var SPAD_set=12;
var calib_set=12;
var abs_starts = 0; //1180; // when does the Phi2 measurement start
var data = json.set[SPAD_set].data_raw;
var lights = [1,2,3,4,6,8,9,10];// define the lights to have absorbance measured
var wavelengths = ["530","650","605","420","940","850","730","880"];// define the lights to have absorbance measured
var raw_at_blank1 = [0,0,0,0,0,0,0,0];
var raw_at_blank2 = [0,0,0,0,0,0,0,0];
var raw_at_blank3 = [0,0,0,0,0,0,0,0];
var abs_at_blank1 = [0,0,0,0,0,0,0,0];
var abs_at_blank2 = [0,0,0,0,0,0,0,0];
var abs_at_blank3 = [0,0,0,0,0,0,0,0];
var trans_at_blank1 = [0,0,0,0,0,0,0,0];
var trans_at_blank2 = [0,0,0,0,0,0,0,0];
var trans_at_blank3 = [0,0,0,0,0,0,0,0];
var spad_at_blank1 = [0,0,0,0,0,0,0,0];
var spad_at_blank2 = [0,0,0,0,0,0,0,0];
var spad_at_blank3 = [0,0,0,0,0,0,0,0];
var minolta_spad1 = 0;
var minolta_spad2 = 0;
var minolta_spad3 = 0;
var minolta_spad = 0;
var minolta_spad_averages = 0;
var choose = 0;
var light;
var wavelengthString;
var pulses = 10;// number of pulses in a cycle

/* // this is what the recall object looks like --> 
"recall":{"colorcal_blank1[1]":0.000000,"colorcal_blank1[2]":0.000000,"colorcal_blank1[3]":0.000000,"colorcal_blank1[4]":0.00000
0,"colorcal_blank1[6]":0.000000,"colorcal_blank1[8]":0.000000,"colorcal_blank1[9]":0.000000,"colorcal_blank1[10]":0.000000,"colo
rcal_blank2[1]":0.000000,"colorcal_blank2[2]":0.000000,"colorcal_blank2[3]":0.000000,"colorcal_blank2[4]":0.000000,"colorcal_bla
nk2[6]":0.000000,"colorcal_blank2[8]":0.000000,"colorcal_blank2[9]":0.000000,"colorcal_blank2[10]":0.000000,"colorcal_blank3[1]"
:0.000000,"colorcal_blank3[2]":0.000000,"colorcal_blank3[3]":0.000000,"colorcal_blank3[4]":0.000000,"colorcal_blank3[6]":0.00000
0,"colorcal_blank3[8]":0.000000,"colorcal_blank3[9]":0.000000,"colorcal_blank3[10]":0.000000},
*/

/*
** Loop through the lights.  If it's zero, skip it.  If it's not in the acceptable range (>500 but <65534 (max)) skip it.
** Then choose the first blank (starting with 1 moving to 3) which fulfills this criteria
** Otherwise, calculate absorbance and transmittance and a 'spad'-like value using LED 6 (940 on clamp) to calibrate thickness
*/
//----------------------------

for (var i = 0;i<lights.length;i++) { // loop through and save one averaged 'point' for each of the cycles
  light = lights[i]; //json.set[PAM_set].data_raw[1];
  wavelengthString = wavelengths[i];                                                    
  //var value1 = MathMEDIAN(json.set[PAM_set].data_raw.slice((abs_starts + i*pulses+2),(abs_starts + i*pulses+8)));
  var value1 = MathMEDIAN(json.set[SPAD_set].data_raw.slice((abs_starts + i*pulses+2),(abs_starts + i*pulses+8)));
  var value2 = MathMEDIAN(json.set[SPAD_set].data_raw.slice((abs_starts + i*pulses+82),(abs_starts + i*pulses+88)));
  var value3 = MathMEDIAN(json.set[SPAD_set].data_raw.slice((abs_starts + i*pulses+162),(abs_starts + i*pulses+168)));
  raw_at_blank1[light] = value1;
  raw_at_blank2[light] = value2;
  raw_at_blank3[light] = value3;
  
 output.value1=value1;
 output.value2=value2;
 output.value3=value3;
  
 output.lights_length=lights.length;
 raw_at_blank1[light] = value1;
 raw_at_blank2[light] = value2;
 raw_at_blank3[light] = value3;
  
  if (json.set[calib_set].recall["colorcal_blank1["+light+"]"] != 0 && raw_at_blank1[light] > 500 && raw_at_blank1[light] < 65534) {
    abs_at_blank1[light] = MathROUND(-1*MathLOG(raw_at_blank1[light]/json.set[calib_set].recall["colorcal_blank1["+light+"]"]),3);
//    trans_at_blank1[light] = MathROUND(raw_at_blank1[light]/json.set[calib_set].recall["colorcal_blank1["+light+"]"],3);
//	output ["light".concat(light.toString(),"_transmittance")]  = trans_at_blank1[light];
    output ["absorbance_".concat(wavelengthString)]  = abs_at_blank1[light];
//	output ["light".concat(light.toString(),"_blank1")]  = json.set[calib_set].recall["colorcal_blank1["+light+"]"];
  }
  
}

//output.test= json.set[12].data_raw; //MathMEAN(json.set[PAM_set].data_raw.slice(10,20)); //(abs_starts + i*pulses+2),(abs_starts + i*pulses+8)));

// so the raw value needs to be >~2000, while the 940 needs to be greater than ~5000, otherwise it's out of range
// the acceptable range is different for each blank (1,2,3) thus a separate if statement for each blank.
// once you hit an intensity which is within the acceptable range, then keep that value and skip the rest


for (var i = 0;i<8;i++) { // loop through and save one averaged SPAD value for each of the cycles.  If we have additional calibration values (like minolta spad) use those and output that value
  light = lights[i];
  wavelengthString = wavelengths[i];
  spad_at_blank2[light] = MathROUND(100*MathLOG((raw_at_blank2[6] / json.set[calib_set].recall["colorcal_blank2[6]"])/(raw_at_blank2[light] / json.set[calib_set].recall["colorcal_blank2["+light+"]"])),2);
  spad_at_blank1[light] = MathROUND(100*MathLOG((raw_at_blank1[6] / json.set[calib_set].recall["colorcal_blank1[6]"])/(raw_at_blank1[light] / json.set[calib_set].recall["colorcal_blank1["+light+"]"])),2);
  spad_at_blank3[light] = MathROUND(100*MathLOG((raw_at_blank3[6] / json.set[calib_set].recall["colorcal_blank3[6]"])/(raw_at_blank3[light] / json.set[calib_set].recall["colorcal_blank3["+light+"]"])),2);
  if (light == 2) { // if it's the red light, the also calculate minolta spad
    //output ["light".concat(light.toString(),"_raw1")]  = raw_at_blank1[light];
    //output ["light6_raw1"]  = raw_at_blank1[6];
    //output ["spad_raw1"]  = spad_at_blank1[2];
    //output ["light".concat(light.toString(),"_raw2")]  = raw_at_blank2[light];
    //output ["light6_raw2"]  = raw_at_blank2[6];
    //output ["spad_raw2"]  = spad_at_blank2[2];
    //output ["light".concat(light.toString(),"_raw3")]  = raw_at_blank3[light];
    //output ["light6_raw3"]  = raw_at_blank3[6];
    //output ["spad_raw3"]  = spad_at_blank3[2];
  }
  if (json.set[calib_set].recall["colorcal_blank1["+light+"]"] != 0 && raw_at_blank1[light] > 30 && raw_at_blank1[light] < 65534 
      && raw_at_blank1[6] > 4500 && raw_at_blank1[6] < 65534) {
    if (light == 2) { // if it's the red light, the also calculate minolta spad
      minolta_spad = (spad_at_blank1[2] - json.set[calib_set].recall["colorcal_intensity1_yint[2]"]) / json.set[calib_set].recall["colorcal_intensity1_slope[2]"];	
      output ["SPAD_".concat(wavelengthString)]  = MathROUND(minolta_spad,2);
      //output ["SPAD_".concat(wavelengthString,"_intensity")]  = 1;
        choose = 1;
      continue;
    }
    else if (light != 6) {
      //output ["SPAD_".concat(wavelengthString)] = MathROUND(spad_at_blank1[light],2);
      //output ["SPAD_".concat(wavelengthString,"_intensity")] = 1;
//      output ["SPAD1_".concat(wavelengthString)] = MathROUND(spad_at_blank1[light],2);
//      output ["SPAD1_".concat(wavelengthString,"_intensity")] = 1;
      continue;
    }
  }
  if (json.set[calib_set].recall["colorcal_blank2["+light+"]"] != 0 && raw_at_blank2[light] > 500 && raw_at_blank2[light] < 65534 
      && raw_at_blank2[6] > 3000 && raw_at_blank2[6] < 65534) {
    if (light == 2) { // if it's the red light, the also calculate minolta spad
      minolta_spad = (spad_at_blank2[2] - json.set[calib_set].recall["colorcal_intensity2_yint[2]"]) / json.set[calib_set].recall["colorcal_intensity2_slope[2]"];
      output ["SPAD_".concat(wavelengthString)] = MathROUND(minolta_spad,2);
      output ["SPAD_".concat(wavelengthString,"_intensity")] = 2;
        choose = 2;
      continue;
    }
    else if (light != 6) {
      //output ["SPAD_".concat(wavelengthString)] = MathROUND(spad_at_blank2[light],2);
      output ["SPAD_".concat(wavelengthString,"_intensity")] = 2;
//      output ["SPAD2_".concat(wavelengthString)] = MathROUND(spad_at_blank2[light],2);
//      output ["SPAD2_".concat(wavelengthString,"_intensity")] = 2;
      continue;
    }
  }

  output.SPAD=MathROUND(minolta_spad, 2);
  if (json.set[calib_set].recall["colorcal_blank3["+light+"]"] != 0 && raw_at_blank3[light] > 750 && raw_at_blank3[light] < 65534 
      && raw_at_blank3[6] > 3000 && raw_at_blank3[6] < 65534) {
    if (light == 2) { // if it's the red light, the also calculate minolta spad
      minolta_spad = (spad_at_blank3[2] - json.set[calib_set].recall["colorcal_intensity3_yint[2]"]) / json.set[calib_set].recall["colorcal_intensity3_slope[2]"];
      output ["SPAD_".concat(wavelengthString)]  = MathROUND(minolta_spad,2);
      output ["SPAD_".concat(wavelengthString,"_intensity")]  = 3;
      choose = 3;
      continue;
    }
    else if (light != 6) {
      output ["SPAD_".concat(wavelengthString)] = MathROUND(spad_at_blank3[light],2);
      output ["SPAD_".concat(wavelengthString,"_intensity")] = 3;
//      output ["SPAD3_".concat(wavelengthString)] = MathROUND(spad_at_blank3[light],2);
//      output ["SPAD3_".concat(wavelengthString,"_intensity")] = 3;
      continue;
    }
  }
}

if (choose == 0) {
  output ["SPAD_650"]  = 0;
  danger("Chlorophyll content SPAD is outside the acceptable range.  The leaf may be too thick, too thin, or have holes in it.", output);
}
else if (minolta_spad <= 2) {
  danger("Chlorophyll Content SPAD is very low.  If leaf is visibly green, ensure leaf completely covers the light guide and retry.  If still too low, consider recalibrating device.", output);
}
else if (minolta_spad >= 100) {
  danger("Chlorophyll Content SPAD is very high.  If this value is associated with a typical leaf, consider recalibrating device.", output);
}


output.thick1=json.set[2].thickness;
output.thick2=json.set[ECS_LEFdset].thickness;
output.thick3=json.set[PAM_set].thickness;
output.thick4=json.set[calib_set].thickness;
output.angle=json.set[4].angle


// Return data
return output;
{
  "time": 1505327004592,
  "device_name": "MultispeQ",
  "device_version": "1",
  "device_id": "01:12:38:16",
  "device_battery": 100,
  "device_firmware": 1.21,
  "sample": [
    [
      {
        "time": 1505327004592,
        "protocol_id": 1,
        "set": [
          {
            "time": 1505327004601,
            "label": "",
            "air_flow": -1,
            "data_raw": [

            ]
          },
          {
            "time": 1505327004924,
            "label": "",
            "air_flow": -1,
            "data_raw": [

            ]
          },
          {
            "time": 1505327005644,
            "label": "",
            "air_flow": -1,
            "data_raw": [

            ]
          },
          {
            "time": 1505327006365,
            "label": "",
            "light_intensity": 16.504,
            "r": 16,
            "g": 8,
            "b": 5,
            "light_intensity_raw": 28,
            "temperature": 27.81,
            "humidity": 37.563,
            "pressure": 977.662,
            "temperature2": 28.03,
            "humidity2": 37.326,
            "pressure2": 976.917,
            "contactless_temp": 25.63,
            "compass_direction": "E",
            "compass": 90,
            "angle": 2.98,
            "angle_direction": "S",
            "pitch": 2.98,
            "roll": 0.17,
            "air_flow": -1,
            "data_raw": [

            ]
          },
          {
            "time": 1505327006526,
            "label": "",
            "light_intensity": 16.504,
            "r": 16,
            "g": 8,
            "b": 5,
            "light_intensity_raw": 28,
            "temperature": 27.82,
            "humidity": 37.575,
            "pressure": 977.709,
            "temperature2": 28.03,
            "humidity2": 37.337,
            "pressure2": 976.882,
            "contactless_temp": 25.63,
            "thickness": 5.93,
            "compass_direction": "E",
            "compass": 90,
            "angle": 8.974,
            "angle_direction": "NE",
            "pitch": -6.09,
            "roll": 6.61,
            "air_flow": -1,
            "data_raw": [

            ]
          },
          {
            "time": 1505327006663,
            "label": "",
            "light_intensity": 16.504,
            "r": 16,
            "g": 8,
            "b": 5,
            "light_intensity_raw": 28,
            "temperature": 27.82,
            "humidity": 37.575,
            "pressure": 977.692,
            "temperature2": 28.03,
            "humidity2": 37.348,
            "pressure2": 976.871,
            "contactless_temp": 27.9,
            "thickness": 0.29,
            "air_flow": -1,
            "data_raw": [
              50011,
              49840,
              49839,
              49834,
              49833,
              49829,
              49830,
              49836,
              49823,
              49829,
              49826,
              49818,
              49820,
              49815,
              49821,
              49824,
              49808,
              49815,
              49814,
              49814,
              49818,
              49813,
              49813,
              49812,
              49806,
              49815,
              49809,
              49809,
              49809,
              49805,
              49803,
              49814,
              49801,
              49806,
              49809,
              49801,
              49799,
              49801,
              49803,
              49804,
              49798,
              49803,
              49797,
              49795,
              49797,
              49793,
              49795,
              49790,
              49789,
              49791,
              49795,
              49791,
              49792,
              49786,
              49789,
              49791,
              49794,
              49791,
              49791,
              49781,
              49792,
              49787,
              49784,
              49787,
              49778,
              49792,
              49791,
              49783,
              49790,
              49779,
              49777,
              49787,
              49775,
              49782,
              49789,
              49783,
              49777,
              49777,
              49782,
              49783,
              49784,
              49782,
              49782,
              49778,
              49776,
              49783,
              49775,
              49777,
              49776,
              49776,
              49782,
              49767,
              49776,
              49779,
              49769,
              49771,
              49769,
              49777,
              49787,
              49775,
              49780,
              49783,
              49772,
              49774,
              49763,
              49766,
              49773,
              49769,
              49776,
              49782,
              49771,
              49777,
              49771,
              49770,
              49783,
              49766,
              49773,
              49779,
              49773,
              49772,
              49766,
              49766,
              49773,
              49767,
              49775,
              49775,
              49767,
              49772,
              49769,
              49759,
              49776,
              49773,
              49772,
              49776,
              49767,
              49769,
              49772,
              49771,
              49771,
              49767,
              49779,
              49781,
              49771,
              49775,
              49777,
              49771,
              49778,
              49771,
              49777,
              49779,
              49769,
              49770,
              49775,
              49771,
              49775,
              49767,
              49773,
              49776,
              49770,
              49771,
              49771,
              49771,
              49775,
              49767,
              49773,
              49775,
              49767,
              49772,
              49770,
              49767,
              49777,
              49769,
              49769,
              49770,
              49766,
              49771,
              49774,
              49768,
              49777,
              49773,
              49760,
              49763,
              49754,
              49763,
              49771,
              49767,
              49767,
              49771,
              49766,
              49775,
              49771,
              49775,
              49770,
              49767,
              49770,
              49783,
              49775,
              49776,
              49770,
              49772,
              49775,
              49770,
              49782,
              49785,
              49779,
              49782,
              49783,
              49785,
              49783,
              49783,
              49789,
              49797,
              49785,
              49793,
              49796,
              49789,
              49797,
              49786,
              49788,
              49807,
              49803,
              49799,
              49799,
              49791,
              49799,
              49796,
              49798,
              49797,
              49795,
              49792,
              49795,
              49787,
              49797,
              49792,
              49798,
              49799,
              49784,
              49791,
              49790,
              49785,
              49790,
              49781,
              49789,
              49791,
              49788,
              49785,
              49789,
              49783,
              49790,
              49782,
              49780,
              49791,
              49783,
              49784,
              49791,
              49782,
              49794,
              49791,
              49783,
              49784,
              49781,
              49794,
              49791,
              49779,
              49785,
              49779,
              49778,
              49789,
              49791,
              49798,
              49795,
              49785,
              49787,
              49791,
              49776,
              49789,
              49783,
              49790,
              49795,
              49787,
              49791,
              49800,
              49784,
              49790,
              49788,
              49797,
              49794,
              49790,
              49792,
              49791,
              49790,
              49791,
              49791,
              49788,
              49795,
              49793,
              49798,
              49795,
              49785,
              49786,
              49790,
              49785,
              49792,
              49789,
              49795,
              49794,
              49785,
              49795,
              49786,
              49786,
              49791,
              49787,
              49787,
              49791,
              49787,
              49794,
              49787,
              49777,
              49791,
              49790,
              49787,
              49799,
              49795,
              49797,
              49798,
              49792,
              49798,
              49799,
              49797,
              49799,
              49797,
              49797,
              49803,
              49794,
              49792,
              49798,
              49795,
              49797,
              49799,
              49795,
              49804,
              49798,
              49799,
              49804,
              49798,
              49799,
              49797,
              49802,
              49798,
              49793,
              49797,
              49785,
              49794,
              49797,
              49797,
              49798,
              49807,
              49794,
              49795,
              49792,
              49795,
              49798,
              49797,
              49799,
              49811,
              49789,
              49799,
              49798,
              49801,
              49801,
              49799,
              49803,
              49806,
              49797,
              49803,
              49809,
              49802,
              49799,
              49802,
              49806,
              49813,
              49803,
              49809,
              49815,
              49804,
              49808,
              49806,
              49809,
              49811,
              49807,
              49806,
              49809,
              49801,
              49804,
              49807,
              49799,
              49805,
              49798,
              49807,
              49812,
              49804,
              49805,
              49803,
              49800,
              49806,
              49799,
              49807,
              49812,
              49807,
              49809,
              49815,
              49806,
              49814,
              49811,
              49815,
              49817,
              49804,
              49807,
              49818,
              49810,
              49817,
              49807,
              49819,
              49827,
              49816,
              49819,
              49825,
              49817,
              49822,
              49825,
              49824,
              49827,
              49819,
              49829,
              49831,
              49824,
              49827,
              49831,
              49825,
              49835,
              49833,
              49831,
              49832,
              49823,
              49826,
              49833,
              49821,
              49826,
              49814,
              49813,
              49828,
              49814,
              49823,
              49825,
              49819,
              49827,
              49816,
              49821,
              49818,
              49813,
              49827,
              49826,
              49809,
              49819,
              49825,
              49827,
              49829,
              49821,
              49824,
              49826,
              49821,
              49823,
              49814,
              49821,
              49824,
              49819,
              49828,
              49830,
              49814,
              49822,
              49825,
              49819,
              49827,
              49819,
              49830,
              49823,
              49828,
              49827,
              49827,
              49823,
              49823,
              49829,
              49825,
              49822,
              49818,
              49828,
              49822,
              49822,
              49823,
              49823,
              49821,
              49825,
              49817,
              49819,
              49815,
              49817,
              49817,
              49809,
              49817,
              49823,
              49814,
              49823,
              49823,
              49820,
              49824,
              49823,
              49819,
              49827,
              49823,
              49822,
              49830,
              49815,
              49823,
              49824,
              49822,
              49831,
              49822,
              49827,
              49835,
              49827,
              49826,
              49818,
              49818,
              49829,
              49823,
              49827,
              49827,
              49823,
              49823,
              49824,
              49819,
              49819,
              49823,
              49823,
              49827,
              49827,
              49827,
              49831,
              49827,
              49831,
              49828,
              49833,
              49827,
              49818,
              49831,
              49832,
              49831,
              49830,
              49831,
              49830,
              49827,
              49829,
              49827,
              49831,
              49826,
              49831,
              49826,
              49830,
              49831,
              49827,
              49831,
              49839,
              49827,
              49839,
              49834,
              49830,
              49828,
              49823,
              49819,
              49826,
              49820,
              49829,
              49831,
              49827,
              49835,
              49823,
              49834,
              49828,
              49823,
              49839,
              49825,
              49829,
              49829,
              49830,
              49839,
              49842,
              49831,
              49843,
              49837,
              49830,
              49831,
              49829,
              49835,
              49835,
              49837,
              49837,
              49841,
              49834,
              49831,
              49832,
              49837,
              49840,
              49833,
              49833,
              49838,
              49831,
              49823,
              49830,
              49833,
              49827,
              49823,
              49826,
              49833,
              49833,
              49835,
              49832,
              49828,
              49834,
              49828,
              49822,
              49836,
              49830,
              49829,
              49835,
              49831,
              49834,
              49839,
              49839,
              49839,
              49831,
              49841,
              49836,
              49830,
              49841,
              49839,
              49844,
              49848,
              49843,
              49855,
              49855,
              49847,
              49851,
              49847,
              49849,
              49862,
              49854,
              49855,
              49861,
              49849,
              49855,
              49866,
              49863,
              49866,
              49857,
              49861,
              49862,
              49856,
              49854,
              49842,
              49849,
              49851,
              49840,
              49852,
              49854,
              49847,
              49857,
              49858,
              49843,
              49854,
              49845,
              49850,
              49855,
              49849,
              49853,
              49847,
              49844,
              49846,
              49847,
              49850,
              49858,
              49843,
              49852,
              49858,
              49850,
              49849,
              49853,
              49853,
              49853,
              49845,
              49862,
              49859,
              49837,
              49845,
              49841,
              49849,
              49856,
              49843,
              49845,
              49853,
              49841,
              49849,
              49853,
              49845,
              49847,
              49847,
              49845,
              49854,
              49841,
              49852,
              49847,
              49838,
              49845,
              49843,
              49850,
              49846,
              49843,
              49846,
              49854,
              49850,
              49851,
              49840,
              49849,
              49854,
              49839,
              49847,
              49848,
              49843,
              49855,
              49846,
              49854,
              49849,
              49843,
              49846,
              49848,
              49845,
              49853,
              49851,
              49847,
              49858,
              49846,
              49847,
              49849,
              49850,
              49852,
              49854,
              49843,
              49848,
              49854,
              49855,
              49854,
              49855,
              49849,
              49853,
              49845,
              49848,
              49842,
              49844,
              49846,
              49846,
              49839,
              49851,
              49846,
              49851,
              49855,
              49847,
              49855,
              49845,
              49855,
              49852,
              49841,
              49845,
              49847,
              49850,
              49855,
              49846,
              49856,
              49855,
              49846,
              49857,
              49856,
              49848,
              49859,
              49847,
              49850,
              49856,
              49851,
              49857,
              49859,
              49845,
              49862,
              49851,
              49847,
              49850,
              49851,
              49848,
              49859,
              49849,
              49857,
              49855,
              49856,
              49857,
              49849,
              49855,
              49857,
              49847,
              49861,
              49843,
              49850,
              49859,
              49856,
              49857,
              49857,
              49849,
              49853,
              49854,
              49848,
              49853,
              49852,
              49857,
              49860,
              49853,
              49861,
              49856,
              49852,
              49865,
              49857,
              49858,
              49855,
              49857,
              49855,
              49859,
              49855,
              49856,
              49856,
              49856,
              49865,
              49855,
              49863,
              49863,
              49861,
              49853,
              49854,
              49862,
              49860,
              49855,
              49859,
              49864,
              49851,
              49860,
              49855,
              49863,
              49861,
              49851,
              49861,
              49869,
              49861,
              49867,
              49865,
              49867,
              49873,
              49870,
              49876,
              49875,
              49870,
              49871,
              49871,
              49873,
              49881,
              49875,
              49885,
              49888,
              49870,
              49887,
              49876,
              49879,
              49881,
              49875,
              49873,
              49868,
              49860,
              49866,
              49870,
              49871,
              49875,
              49867,
              49875,
              49871,
              49870,
              49878,
              49873,
              49871,
              49869,
              49862,
              49870,
              49874,
              49867,
              49873,
              49863,
              49860,
              49867,
              49866,
              49866,
              49875,
              49871,
              49877,
              49874,
              49869,
              49874,
              49870,
              49869,
              49881,
              49865,
              49873,
              49869,
              49864,
              49870,
              49866,
              49861,
              49874,
              49865,
              49872,
              49870,
              49868,
              49876,
              49869,
              49865,
              49869,
              49861,
              49871,
              49871,
              49865,
              49871,
              49871,
              49864,
              49882,
              49865,
              49871,
              49877,
              49862,
              49874,
              49869,
              49867,
              49867,
              49867,
              49874,
              49872,
              49870,
              49873,
              49868,
              49870,
              49872,
              49871,
              49873,
              49876,
              49865,
              49868,
              49871,
              49862,
              49870,
              49867,
              49863,
              49871,
              49867,
              49871,
              49874,
              49863,
              49878,
              49868,
              49866,
              49871,
              49860,
              49875,
              49875,
              49858,
              49875,
              49873,
              49875,
              49867,
              49870,
              49874,
              49872,
              49871,
              49873,
              49867,
              49872,
              49871,
              49871,
              49873,
              49876,
              49871,
              49875,
              49878,
              49869,
              49875,
              49858,
              49875,
              49871,
              49863,
              49870,
              49878,
              49879,
              49876,
              49859,
              49871,
              49877,
              49866,
              49879,
              49878,
              49878,
              49869,
              49871,
              49865,
              49882,
              49871,
              49877,
              49878,
              49867,
              49877,
              49871,
              49869,
              49873,
              49871,
              49877,
              49875,
              49879,
              49869,
              49871,
              49881,
              49878,
              49872,
              49879,
              49877,
              49866,
              49877,
              49874,
              49870,
              49881,
              49873,
              49880,
              49882,
              49871,
              49880,
              49884,
              49877,
              49883,
              49873,
              49881,
              49881,
              49863,
              49872,
              49885,
              49873,
              49882,
              49873,
              49871,
              49875,
              49871,
              49873,
              49876,
              49874,
              49875,
              49884,
              49884,
              49878,
              49873,
              49879,
              49882,
              49875,
              49884,
              49883,
              49873,
              49875,
              49883,
              49888,
              49891,
              49886,
              49891,
              49887,
              49884,
              49892,
              49891,
              49891,
              49898,
              49891,
              49901,
              49906,
              49894,
              49902,
              49899,
              49905,
              49919,
              49897,
              49907,
              49905,
              49891,
              49893,
              49895,
              49891,
              49894,
              49890,
              49900,
              49899,
              49886,
              49895,
              49893,
              49881,
              49887,
              49881,
              49891,
              49884,
              49888,
              49887,
              49886,
              49885,
              49893,
              49882,
              49885,
              49895,
              49882,
              49882,
              49887,
              49876,
              49889,
              49885,
              49885,
              49890,
              49883,
              49887,
              49890,
              49885,
              49893,
              49888,
              49886,
              49885,
              49887,
              49889,
              49889,
              49881,
              49887,
              49885,
              49880,
              49886,
              49881,
              49882,
              49892,
              49880,
              49891,
              49894,
              49886,
              49886,
              49883,
              49891,
              49891,
              49883,
              49890,
              49894,
              49885,
              49894,
              49885,
              49889,
              49891,
              49886,
              49884,
              49889,
              49885,
              49880,
              49887,
              49887,
              49894,
              49888,
              49895,
              49891,
              49890,
              49895,
              49889,
              49885,
              49892,
              49887,
              49893,
              49890,
              49887,
              49890,
              49889,
              49889,
              49895,
              49887,
              49888,
              49891,
              49882,
              49888,
              49892,
              49883,
              49886,
              49883,
              49886,
              49889,
              49875,
              49889,
              49892,
              49880,
              49891,
              49883,
              49893,
              49885,
              49881,
              49890,
              49893,
              49874,
              49891,
              49885,
              49883,
              49891,
              49888,
              49899,
              49888,
              49883,
              49893,
              49889,
              49889,
              49894,
              49878,
              49895,
              49887,
              49887,
              49889,
              49894,
              49889,
              49892,
              49885,
              49891,
              49896,
              49890,
              49894,
              49895,
              49892,
              49892,
              49891,
              49893,
              49895,
              49889,
              49891,
              49887,
              49884,
              49895,
              49892,
              49891,
              49890,
              49890,
              49893,
              49890,
              49886,
              49883,
              49875,
              49873,
              49886,
              49889,
              49892,
              49893,
              49883,
              49895,
              49891,
              49891,
              49895,
              49892,
              49895,
              49893,
              49889,
              49892,
              49889,
              49895,
              49893,
              49889,
              49889,
              49893,
              49887,
              49895,
              49899,
              49893,
              49895,
              49895,
              49893,
              49901,
              49894,
              49895,
              49891,
              49894,
              49899,
              49879,
              49893,
              49895,
              49889,
              49897,
              49894,
              49892,
              49905,
              49893,
              49894,
              49903,
              49903,
              49905,
              49907,
              49900,
              49916,
              49906,
              49901,
              49925,
              49910,
              49917,
              49918,
              49911,
              49924,
              49919,
              49906,
              49915,
              49908,
              49913,
              49907,
              49907,
              49906,
              49911,
              49900,
              49903,
              49907,
              49901,
              49911,
              49911,
              49906,
              49907,
              49899,
              49911,
              49895,
              49904,
              49907,
              49899,
              49903,
              49912,
              49903,
              49909,
              49906,
              49898,
              49911,
              49900,
              49903,
              49913,
              49900,
              49904,
              49905,
              49897,
              49903,
              49905,
              49903,
              49901,
              49893,
              49898,
              49911,
              49898,
              49908,
              49903,
              49894,
              49906,
              49897,
              49903,
              49905,
              49895,
              49901,
              49892,
              49899,
              49893,
              49899,
              49902,
              49907,
              49895,
              49895,
              49902,
              49891,
              49904,
              49897,
              49900,
              49902,
              49891,
              49897,
              49899,
              49894,
              49901,
              49895,
              49899,
              49908,
              49893,
              49899,
              49898,
              49901,
              49899,
              49898,
              49895,
              49903,
              49895,
              49903,
              49903,
              49893,
              49899,
              49894,
              49893,
              49903,
              49894,
              49896,
              49901,
              49902,
              49900,
              49900,
              49893,
              8692,
              8402,
              8421,
              8439,
              8447,
              8466,
              8478,
              8488,
              8496,
              8502,
              8517,
              8521,
              8526,
              8540,
              8543,
              8546,
              8556,
              8556,
              8568,
              8571,
              8540,
              8507,
              8477,
              8452,
              8434,
              8409,
              8395,
              8380,
              8357,
              8351,
              8336,
              8323,
              8314,
              8295,
              8295,
              8283,
              8270,
              8264,
              8259,
              8247,
              8286,
              8305,
              8341,
              8371,
              8389,
              8417,
              8435,
              8446,
              8467,
              8476,
              8491,
              8503,
              8507,
              8525,
              8529,
              8532,
              8543,
              8549,
              8553,
              8562,
              8564,
              8575,
              8580,
              8580,
              8588,
              8593,
              8593,
              8601,
              8600,
              8611,
              8613,
              8610,
              8617,
              8622,
              8617,
              8627,
              8624,
              8631,
              8635,
              8634,
              8643,
              8643,
              8641,
              8646,
              8647,
              8649,
              8655,
              8649,
              8655,
              8658,
              8653,
              8662,
              8664,
              8664,
              8668,
              8666,
              8673,
              8673,
              8669,
              8675,
              8677,
              8675,
              8680,
              8678,
              8682,
              8683,
              8679,
              8689,
              8690,
              8687,
              8692,
              8688,
              8694,
              8695,
              8690,
              8696,
              8698,
              8695,
              8702,
              8695,
              8703,
              8707,
              8701,
              8710,
              8711,
              8708,
              8713,
              8710,
              8711,
              8717,
              8711,
              8719,
              8719,
              8714,
              8719,
              8717,
              8718,
              8722,
              8718,
              8723
            ]
          },
          {
            "time": 1505327010626,
            "label": "",
            "light_intensity": 16.5,
            "r": 16,
            "g": 8,
            "b": 5,
            "light_intensity_raw": 28,
            "temperature": 27.82,
            "humidity": 37.607,
            "pressure": 977.73,
            "temperature2": 28.03,
            "humidity2": 37.369,
            "pressure2": 976.859,
            "contactless_temp": 26.53,
            "air_flow": -1,
            "data_raw": [
              51027,
              50907,
              50895,
              50923,
              50923,
              50907,
              50914,
              50907,
              50895,
              50905,
              50912,
              50901,
              50901,
              50910,
              50917,
              50903,
              50911,
              50919,
              50926,
              50914,
              50921,
              50931,
              50905,
              50914,
              50907,
              50935,
              50925,
              50929,
              50942,
              50925,
              50895,
              50902,
              50914,
              50910,
              50922,
              50924,
              50919,
              50929,
              50927,
              50906,
              50928,
              50908,
              50929,
              50911,
              50899,
              50907,
              50893,
              50894,
              50904,
              50916,
              50911,
              50915,
              50919,
              50918,
              50916,
              50914,
              50916,
              50918,
              50921,
              50923,
              50923,
              50919,
              50932,
              50921,
              50927,
              50934,
              50927,
              50920,
              50917,
              50907,
              50913,
              50923,
              50915,
              50916,
              50917,
              50903,
              50907,
              50917,
              50925,
              50915,
              50910,
              50911,
              50901,
              50919,
              50917,
              50917,
              50913,
              50929,
              50909,
              50910,
              50919,
              50912,
              50907,
              50909,
              50923,
              50916,
              50895,
              50903,
              50898,
              50907,
              50903,
              50917,
              50903,
              50907,
              50910,
              50915,
              50901,
              50898,
              50911,
              50921,
              50917,
              50903,
              50910,
              50897,
              50900,
              50910,
              50917,
              50935,
              50931,
              50923,
              50904,
              50929,
              50928,
              50908,
              50925,
              50911,
              50916,
              50912,
              50907,
              50912,
              50911,
              50915,
              50917,
              50931,
              50931,
              50917,
              50911,
              50918,
              50930,
              50918,
              50905,
              50914,
              50923,
              50907,
              50905,
              50935,
              50911,
              50895,
              50905,
              50917,
              50916,
              50920,
              50909,
              50914,
              50925,
              50917,
              50923,
              50911,
              50919,
              50917,
              50906,
              50903,
              50920,
              50912,
              50924,
              50919,
              50917,
              50901,
              50913,
              50931,
              50927,
              50918,
              50902,
              50910,
              50909,
              50918,
              50918,
              50929,
              50903,
              50922,
              50916,
              50905,
              50915,
              50908,
              50910,
              50901,
              50906,
              50914,
              50907,
              50909,
              50917,
              50917,
              50916,
              50927,
              50919,
              50910,
              50927,
              50932,
              50918,
              50909,
              50911,
              50905,
              50893,
              50921,
              50928,
              50931,
              50901,
              50899,
              50925,
              50915,
              50925,
              50918,
              50903,
              50914,
              50921,
              50923,
              50914,
              50911,
              50902,
              50923,
              50987,
              50920,
              50923,
              50919,
              50929,
              50919,
              50927,
              50919,
              50906,
              50897,
              50903,
              50918,
              50915,
              50910,
              50915,
              50924,
              50903,
              50902,
              50898,
              50903,
              50911,
              50899,
              50904,
              50909,
              50905,
              50917,
              50891,
              50907,
              50889,
              50871,
              50891,
              50897,
              50882,
              50905,
              50903,
              50895,
              50902,
              50912,
              50905,
              50914,
              50903,
              50908,
              50899,
              50902,
              50904,
              50895,
              50895,
              50901,
              50890,
              50895,
              50883,
              50892,
              50921,
              50908,
              50919,
              50913,
              50897,
              50893,
              50887,
              50892,
              50887,
              50895,
              50885,
              50876,
              50891,
              50895,
              50879,
              50877,
              50896,
              50887,
              50871,
              50887,
              50889,
              50891,
              50870,
              50879,
              50884,
              50892,
              50895,
              50889,
              50888,
              50890,
              50895,
              50887,
              50879,
              50903,
              50908,
              50891,
              50886,
              50891,
              50893,
              50885,
              50871,
              50895,
              50893,
              50896,
              50911,
              50907,
              50913,
              50907,
              50897,
              50892,
              50887,
              50897,
              50883,
              50890,
              50893,
              50893,
              50888,
              50891,
              50887,
              50870,
              50882,
              50883,
              50901,
              50878,
              50876,
              50891,
              50881,
              50911,
              50886,
              50879,
              50904,
              50900,
              50893,
              50899,
              50874,
              50909,
              50902,
              50895,
              50892,
              50897,
              50881,
              50887,
              50898,
              50882,
              50905,
              50899,
              50898,
              50887,
              50889,
              50905,
              50883,
              50879,
              50890,
              50869,
              50883,
              50880,
              50885,
              50879,
              50867,
              50895,
              50891,
              50887,
              50890,
              50880,
              50890,
              50884,
              50888,
              50867,
              50871,
              50881,
              50891,
              50868,
              50870,
              50883,
              50862,
              50871,
              50871,
              50878,
              50879,
              50859,
              50859,
              50881,
              50868,
              50886,
              50886,
              50876,
              50881,
              50862,
              50865,
              50863,
              50870,
              50887,
              50886,
              50879,
              50886,
              50863,
              50875,
              50886,
              50907,
              50911,
              50891,
              50899,
              50899,
              50897,
              50909,
              50894,
              50894,
              50887,
              50896,
              50893,
              50904,
              50897,
              50903,
              50897,
              50887,
              50897,
              50884,
              50891,
              50878,
              50873,
              50900,
              50889,
              50901,
              50899,
              50877,
              50903,
              50904,
              50885,
              50951,
              50893,
              50907,
              50902,
              50883,
              50895,
              50879,
              50898,
              50893,
              50902,
              50887,
              50898,
              50887,
              50879,
              50886,
              50892,
              50893,
              50889,
              50915,
              50887,
              50887,
              50902,
              50884,
              50903,
              50879,
              50894,
              50894,
              50875,
              50898,
              50905,
              50887,
              50881,
              50902,
              50891,
              50893,
              50899,
              50895,
              50898,
              50895,
              50902,
              50891,
              50893,
              50902,
              50909,
              50894,
              50891,
              50887,
              50886,
              50882,
              50871,
              50879,
              50875,
              50879,
              50898,
              50866,
              50871,
              50881,
              50878,
              50887,
              50881,
              50880,
              50879,
              50881,
              50885,
              50876,
              50874,
              50869,
              50881,
              50883,
              50882,
              50890,
              50887,
              50869,
              50882,
              50869,
              50859,
              50859,
              50848,
              50862,
              50867,
              50871,
              50884,
              50873,
              50869,
              50861,
              50849,
              50855,
              50871,
              50863,
              50866,
              50857,
              50869,
              50875,
              50882,
              50887,
              50882,
              50882,
              50876,
              50871,
              50887,
              50901,
              50887,
              50888,
              50891,
              50883,
              50893,
              50895,
              50897,
              50884,
              50879,
              50885,
              50891,
              50883,
              50874,
              50871,
              50889,
              50902,
              50885,
              50886,
              50884,
              50881,
              50894,
              50884,
              50894,
              50899,
              50870,
              50891,
              50883,
              50866,
              50864,
              50859,
              50886,
              50889,
              50866,
              50854,
              50867,
              50876,
              50879,
              50865,
              50873,
              50879,
              50867,
              50870,
              50883,
              50883,
              50884,
              50887,
              50884,
              50887,
              50883,
              50885,
              50859,
              50875,
              50868,
              50864,
              50878,
              50854,
              50879,
              50875,
              50877,
              50871,
              50871,
              50859,
              50878,
              50877,
              50878,
              50878,
              50871,
              50883,
              50862,
              50869,
              50877,
              50842,
              50873,
              50889,
              50868,
              50873,
              50882,
              50881,
              50876,
              50874,
              50884,
              50879,
              50854,
              50853,
              50874,
              50867,
              50866,
              50851,
              50875,
              50867,
              50868,
              50874,
              50858,
              50872,
              50885,
              50871,
              50885,
              50867,
              50877,
              50873,
              50883,
              50882,
              50880,
              50882,
              50887,
              50891,
              50886,
              50883,
              50897,
              50894,
              50909,
              50896,
              50898,
              50881,
              50897,
              50890,
              50883,
              50882,
              50885,
              50970,
              50898,
              50902,
              50883,
              50892,
              50915,
              50901,
              50908,
              50895,
              50907,
              50901,
              50897,
              50895,
              50904,
              50892,
              50909,
              50911,
              50900,
              50903,
              50899,
              50884,
              50879,
              50908,
              50891,
              50919,
              50911,
              50882,
              50890,
              50886,
              50900,
              50907,
              50885,
              50913,
              50891,
              50894,
              50881,
              50887,
              50892,
              50899,
              50911,
              50911,
              50901,
              50903,
              50888,
              50903,
              50915,
              50905,
              50891,
              50895,
              50887,
              50903,
              50882,
              50895,
              50901,
              50897,
              50877,
              50895,
              50895,
              50908,
              50895,
              50881,
              50891,
              50892,
              50894,
              50900,
              50897,
              50899,
              50915,
              50909,
              50906,
              50894,
              50882,
              50882,
              50879,
              50891,
              50876,
              50873,
              50881,
              50895,
              50910,
              50883,
              50879,
              50897,
              50889,
              50891,
              50902,
              50887,
              50897,
              50915,
              50903,
              50886,
              50895,
              50879,
              50879,
              50893,
              50911,
              50903,
              50901,
              50886,
              50871,
              50879,
              50876,
              50873,
              50887,
              50893,
              50889,
              50901,
              50869,
              50907,
              50895,
              50900,
              50903,
              50898,
              50902,
              50907,
              50907,
              50898,
              50895,
              50895,
              50898,
              50904,
              50897,
              50894,
              50883,
              50879,
              50878,
              50875,
              50871,
              50883,
              50897,
              50897,
              50887,
              50901,
              50899,
              50896,
              50885,
              50891,
              50878,
              50893,
              50889,
              50880,
              50879,
              50872,
              50894,
              50878,
              50881,
              50871,
              50892,
              50885,
              50889,
              50904,
              50889,
              50876,
              50871,
              50872,
              50871,
              50881,
              50899,
              50895,
              50914,
              50898,
              50901,
              50901,
              50901,
              50892,
              50882,
              50896,
              50879,
              50877,
              50894,
              50898,
              50875,
              50873,
              50883,
              50889,
              50863,
              50869,
              50872,
              50891,
              50910,
              50930,
              50898,
              50886,
              50879,
              50882,
              50885,
              50891,
              50891,
              50874,
              50871,
              50895,
              50889,
              50910,
              50893,
              50895,
              50887,
              50877,
              50875,
              50890,
              50879,
              50903,
              50886,
              50873,
              50893,
              50872,
              50862,
              50879,
              50888,
              50893,
              50891,
              50887,
              50875,
              50869,
              50889,
              50881,
              50860,
              50882,
              50866,
              50896,
              50895,
              50971,
              50898,
              50896,
              50899,
              50903,
              50879,
              50895,
              50899,
              50882,
              50901,
              50893,
              50879,
              50861,
              50882,
              50871,
              50885,
              50875,
              50887,
              50873,
              50880,
              50884,
              50864,
              50878,
              50869,
              50863,
              50885,
              50875,
              50883,
              50873,
              50887,
              50886,
              50881,
              50870,
              50883,
              50895,
              50894,
              50889,
              50861,
              50887,
              50875,
              50877,
              50879,
              50882,
              50886,
              50899,
              50896,
              50905,
              50915,
              50895,
              50903,
              50894,
              50904,
              50894,
              50897,
              50899,
              50894,
              50893,
              50900,
              50894,
              50904,
              50886,
              50877,
              50881,
              50903,
              50893,
              50882,
              50897,
              50890,
              50900,
              50895,
              50881,
              50895,
              50904,
              50914,
              50886,
              50907,
              50902,
              50893,
              50907,
              50878,
              50874,
              50894,
              50887,
              50886,
              50886,
              50903,
              50901,
              50878,
              50888,
              50895,
              50885,
              50896,
              50894,
              50893,
              50898,
              50889,
              50897,
              50886,
              50892,
              50888,
              50884,
              50879,
              50899,
              50879,
              50879,
              50869,
              50875,
              50874,
              50887,
              50891,
              50866,
              50879,
              50890,
              50876,
              50876,
              50884,
              50866,
              50880,
              50899,
              50879,
              50882,
              50889,
              50883,
              50877,
              50864,
              50871,
              50886,
              50883,
              50881,
              50880,
              50882,
              50877,
              50889,
              50887,
              50865,
              50889,
              50899,
              50891,
              50895,
              50873,
              50873,
              50852,
              50858,
              50874,
              50870,
              50875,
              50881,
              50872,
              50880,
              50877,
              50890,
              50895,
              50885,
              50878,
              50895,
              50883,
              50881,
              50870,
              50862,
              50897,
              50874,
              50867,
              50889,
              50876,
              50893,
              50873,
              50871,
              50879,
              50895,
              50881,
              50895,
              50891,
              50877,
              50886,
              50880,
              50879,
              50895,
              50897,
              50894,
              50910,
              50888,
              50879,
              50891,
              50892,
              50882,
              50891,
              50905,
              50878,
              50879,
              50886,
              50873,
              50882,
              50844,
              50861,
              50879,
              50875,
              50881,
              50894,
              50882,
              50870,
              50883,
              50881,
              50881,
              50893,
              50894,
              50875,
              50859,
              50873,
              50865,
              50861,
              50882,
              50888,
              50879,
              50902,
              50900,
              50887,
              50897,
              50887,
              50907,
              50895,
              50975,
              50887,
              50902,
              50894,
              50898,
              50893,
              50897,
              50884,
              50883,
              50881,
              50861,
              50895,
              50889,
              50874,
              50873,
              50892,
              50884,
              50913,
              50882,
              50875,
              50886,
              50886,
              50871,
              50881,
              50885,
              50891,
              50868,
              50883,
              50908,
              50877,
              50887,
              50878,
              50885,
              50871,
              50876,
              50864,
              50875,
              50855,
              50873,
              50876,
              50860,
              50873,
              50876,
              50883,
              50883,
              50852,
              50851,
              50870,
              50877,
              50871,
              50886,
              50876,
              50885,
              50870,
              50865,
              50875,
              50882,
              50872,
              50871,
              50861,
              50887,
              50863,
              50875,
              50870,
              50887,
              50869,
              50870,
              50865,
              50871,
              50865,
              50871,
              50885,
              50882,
              50891,
              50879,
              50901,
              50902,
              50878,
              50870,
              50879,
              50875,
              50883,
              50865,
              50872,
              50883,
              50871,
              50876,
              50876,
              50863,
              50883,
              50855,
              50897,
              50874,
              50861,
              50885,
              50871,
              50838,
              50850,
              50861,
              50855,
              50870,
              50884,
              50877,
              50873,
              50883,
              50883,
              50857,
              50886,
              50883,
              50885,
              50874,
              50868,
              50878,
              50868,
              50879,
              50877,
              50892,
              50889,
              50879,
              50865,
              50892,
              50892,
              50882,
              50883,
              50875,
              50907,
              50868,
              50876,
              50898,
              50875,
              50872,
              50887,
              50877,
              50898,
              50898,
              50883,
              50889,
              50884,
              50890,
              50891,
              50882,
              50897,
              50903,
              50890,
              50885,
              50885,
              50894,
              50886,
              50885,
              50901,
              50886,
              50891,
              50876,
              50870,
              50885,
              50885,
              50865,
              50883,
              50884,
              50885,
              50882,
              50866,
              50895,
              50881,
              50865,
              50887,
              50893,
              50895,
              50881,
              50879,
              50892,
              50895,
              50877,
              50890,
              50877,
              50886,
              50879,
              50886,
              50897,
              50885,
              50891,
              50882,
              50868,
              50888,
              50871,
              50857,
              50855,
              50872,
              50859,
              50879,
              50889,
              50894,
              50898,
              50895,
              50891,
              50891,
              50896,
              50904,
              50909,
              50909,
              50891,
              50884,
              50887,
              50886,
              50896,
              50886,
              50895,
              50892,
              50889,
              50899,
              50903,
              50899,
              50895,
              50894,
              50910,
              50887,
              50874,
              50898,
              50895,
              50898,
              50978,
              50882,
              50881,
              50911,
              50909,
              50887,
              50906,
              50892,
              50899,
              50885,
              50911,
              50909,
              50909,
              50907,
              50896,
              50879,
              50886,
              50875,
              50887,
              50878,
              50885,
              50886,
              50870,
              50885,
              50866,
              50863,
              50857,
              50858,
              50872,
              50867,
              50867,
              50877,
              50886,
              50866,
              50877,
              50878,
              50863,
              50893,
              50892,
              50886,
              50883,
              50870,
              50863,
              50855,
              50878,
              50883,
              50858,
              50876,
              50866,
              50851,
              50855,
              50862,
              50867,
              50854,
              50844,
              50879,
              50863,
              50854,
              50870,
              50872,
              50874,
              50903,
              50893,
              50881,
              50875,
              50875,
              50889,
              50882,
              50895,
              50879,
              50877,
              50874,
              50892,
              50881,
              50886,
              50886,
              50892,
              50879,
              50849,
              50854,
              50861,
              50881,
              50863,
              50882,
              50877,
              50882,
              50892,
              50890,
              50891,
              50891,
              50869,
              50869,
              50876,
              50883,
              50869,
              50884,
              50855,
              50872,
              50886,
              50881,
              50887,
              50880,
              50871,
              50867,
              50877,
              50883,
              50879,
              50896,
              50882,
              50884,
              50875,
              50884,
              50872,
              50871,
              50890,
              50871,
              50881,
              50893,
              50863,
              50894,
              50906,
              50883,
              50870,
              50867,
              50870,
              50870,
              50875,
              50885,
              50890,
              50886,
              50890,
              50881,
              50874,
              50859,
              50891,
              50888,
              50875,
              50854,
              50853,
              50868,
              50858,
              50852,
              50867,
              50851,
              50853,
              50861,
              50866,
              50867,
              50856,
              50855,
              50873,
              50857,
              50866,
              50843,
              50854,
              50875,
              50867,
              50855,
              50859,
              50838,
              50858,
              50857,
              50857,
              50835,
              50863,
              50863,
              50869,
              50846,
              50874,
              50877,
              50865,
              50874,
              50881,
              50875,
              50869,
              50857,
              50879,
              50849,
              50869,
              50871,
              50863,
              50867,
              50871,
              50870,
              50874,
              50882,
              50869,
              50864,
              50873,
              50879,
              50872,
              50861,
              50869,
              50859,
              50863,
              50880,
              50889,
              50878,
              50894,
              50875,
              50864,
              50844,
              50851,
              50850,
              50855,
              50862,
              50859,
              50859,
              50864,
              50859,
              50869,
              50865,
              50877,
              50883,
              50884,
              50880,
              50863,
              50881,
              50883,
              50887,
              50965,
              50884,
              50880,
              50891,
              50887,
              50873,
              50887,
              50873,
              50895,
              50885,
              50875,
              50874,
              50849,
              50867,
              50867,
              50856,
              50843,
              50859,
              50859,
              50863,
              50863,
              50873,
              50883,
              50860,
              50863,
              50881,
              50875,
              50875,
              50874,
              50886,
              50887,
              50879,
              50885,
              50884,
              50881,
              50893,
              50891,
              50887,
              50902,
              50883,
              50857,
              50855,
              50867,
              50867,
              50869,
              50871,
              50873,
              50857,
              50871,
              50871,
              50867,
              50870,
              50865,
              50877,
              50864,
              50851,
              50859,
              50867,
              50877,
              50881,
              50868,
              50877,
              50885,
              50869,
              50867,
              50855,
              50878,
              50853,
              50863,
              50865,
              50852,
              50875,
              50863,
              50877,
              50876,
              50884,
              50886,
              50877,
              50874,
              50875,
              50878,
              50886,
              50901,
              50891,
              50873,
              50879,
              50881,
              50879,
              50890,
              50889,
              50893,
              50885,
              50881,
              50889,
              50883,
              50898,
              50897,
              50866,
              50884,
              50898
            ]
          },
          {
            "time": 1505327013329,
            "label": "",
            "light_intensity": 16.5,
            "r": 16,
            "g": 8,
            "b": 5,
            "light_intensity_raw": 28,
            "temperature": 27.82,
            "humidity": 37.64,
            "pressure": 977.697,
            "temperature2": 28.03,
            "humidity2": 37.402,
            "pressure2": 976.919,
            "contactless_temp": 26.71,
            "thickness": 0.28,
            "compass_direction": "W",
            "compass": 270,
            "angle": 2.358,
            "angle_direction": "N",
            "pitch": 2.27,
            "roll": -0.64,
            "air_flow": -1,
            "data_raw": [
              1550,
              50940,
              1685,
              50927,
              1786,
              50878,
              1857,
              50921,
              1906,
              50897,
              1949,
              50895,
              1985,
              50900,
              2001,
              50887,
              2023,
              50877,
              2048,
              50877,
              2063,
              50882,
              2069,
              50864,
              2084,
              50869,
              2092,
              50883,
              2093,
              50885,
              2104,
              50865,
              2113,
              50887,
              2115,
              50870,
              2115,
              50892,
              2121,
              50892,
              2124,
              50882,
              2120,
              50887,
              2130,
              50879,
              2130,
              50855,
              2127,
              50890,
              2127,
              50867,
              2131,
              50865,
              2132,
              50854,
              2128,
              50866,
              2130,
              50859,
              2133,
              50880,
              2129,
              50849,
              2128,
              50857,
              2133,
              50877,
              2134,
              50869,
              2129,
              50881,
              2132,
              50867,
              2134,
              50875,
              2128,
              50862,
              2130,
              50878,
              2131,
              50886,
              2133,
              50874,
              2128,
              50855,
              2132,
              50854,
              2132,
              50863,
              2127,
              50889,
              2127,
              50854,
              2130,
              50855,
              2129,
              50882,
              2124,
              50889,
              2130,
              50863,
              2133,
              50872,
              2126,
              50881,
              2127,
              50853,
              2131,
              50886,
              2131,
              50862,
              2125,
              50875,
              2127,
              50879,
              2131,
              50871,
              2125,
              50881,
              2127,
              50877,
              2128,
              50878,
              2130,
              50881,
              2125,
              50905,
              2130,
              50892,
              2132,
              50876,
              2125,
              50884,
              2129,
              50888,
              2131,
              50854,
              2129,
              50867,
              2127,
              50875,
              2129,
              50878,
              2132,
              50881,
              2127,
              50898,
              2131,
              50891,
              2134,
              50893,
              2131,
              50868,
              2128,
              50857,
              2134,
              50882,
              2135,
              50910,
              2127,
              50872,
              2133,
              50894,
              2131,
              50879,
              2132,
              50888,
              2127,
              50873,
              2134,
              50871,
              2134,
              50889,
              2131,
              50891,
              2134,
              50884,
              2135,
              50865,
              2130,
              50875,
              2131,
              50873,
              2135,
              50887,
              2135,
              50900,
              2133,
              50881,
              2135,
              50891,
              2136,
              50911,
              2130,
              50889,
              2135,
              50859,
              2137,
              50885,
              3319,
              50906,
              3578,
              50823,
              3709,
              50786,
              3763,
              50758,
              3802,
              50751,
              3814,
              50742,
              3835,
              50781,
              3839,
              50767,
              3838,
              50777,
              3846,
              50778,
              3845,
              50753,
              3843,
              50774,
              3851,
              50798,
              3844,
              50761,
              3852,
              50800,
              3849,
              50785,
              3845,
              50763,
              3854,
              50805,
              3847,
              50790,
              3843,
              50798,
              3852,
              50793,
              3848,
              50806,
              3842,
              50815,
              3849,
              50817,
              3842,
              50811,
              3840,
              50827,
              3845,
              50834,
              3844,
              50820,
              3842,
              50847,
              3846,
              50833,
              3842,
              50839,
              3851,
              50836,
              3848,
              50865,
              3840,
              50879,
              3847,
              50873,
              3847,
              50845,
              3838,
              50849,
              3842,
              50850,
              3838,
              50827,
              3842,
              50848,
              3841,
              50861,
              3834,
              50855,
              3838,
              50855,
              3838,
              50839,
              3839,
              50856,
              3842,
              50836,
              3833,
              50851,
              3839,
              50860,
              3835,
              50859,
              3833,
              50838,
              3839,
              50861,
              3828,
              50863,
              3835,
              50874,
              3828,
              50851,
              3834,
              50851,
              3829,
              50856,
              3826,
              50874,
              3831,
              50873,
              3822,
              50868,
              3831,
              50874,
              3828,
              50861,
              3834,
              50861,
              3833,
              50867,
              3824,
              50871,
              3827,
              50884,
              3829,
              50872,
              3827,
              50885,
              3823,
              50861,
              3827,
              50874,
              3822,
              50875,
              3828,
              50883,
              3818,
              50887,
              3824,
              50894,
              3820,
              50889,
              3822,
              50887,
              3823,
              50875,
              3820,
              50865,
              3820,
              50881,
              3819,
              50885,
              3820,
              50885,
              3813,
              50884,
              3817,
              50871,
              3813,
              50897,
              3815,
              50853,
              3812,
              50879,
              3810,
              50847,
              3812,
              50874,
              3812,
              50868,
              3807,
              50874,
              3810,
              50854,
              3675,
              50880,
              3428,
              50901,
              3244,
              50903,
              3083,
              50917,
              2961,
              50919,
              2854,
              50919,
              2765,
              50929,
              2697,
              50918,
              2640,
              50924,
              2585,
              50950,
              2542,
              50935,
              2503,
              50942,
              2466,
              50970,
              2441,
              50953,
              2415,
              50963,
              1925,
              50804,
              1845,
              50809,
              1807,
              50788,
              1765,
              50844,
              1743,
              50861,
              1710,
              50826,
              1695,
              50849,
              1674,
              50869,
              1652,
              50845,
              1639,
              50859,
              1629,
              50879,
              1605,
              50889,
              1598,
              50899,
              1587,
              50911,
              1569,
              50911,
              1559,
              50982,
              3078,
              50869,
              3269,
              50811,
              3365,
              50759,
              3405,
              50759,
              3429,
              50760,
              3435,
              50734,
              3442,
              50738,
              3443,
              50740,
              3446,
              50751,
              3448,
              50758,
              3446,
              50749,
              3447,
              50756,
              3438,
              50745,
              3445,
              50740,
              3445,
              50727,
              3441,
              50733,
              3444,
              50740,
              3440,
              50727,
              3434,
              50731,
              3441,
              50766,
              3431,
              50751,
              3439,
              50765,
              3432,
              50763,
              3428,
              50746,
              3433,
              50752,
              3431,
              50759,
              3427,
              50775,
              3431,
              50785,
              3423,
              50770,
              3434,
              50771,
              3433,
              50783,
              3423,
              50777,
              3428,
              50783,
              3423,
              50760,
              3425,
              50769,
              3424,
              50775,
              3421,
              50767,
              3420,
              50774,
              3414,
              50797,
              3418,
              50797,
              3414,
              50775,
              3417,
              50778,
              3413,
              50780,
              3415,
              50806,
              3421,
              50778,
              3412,
              50786,
              3415,
              50784,
              3407,
              50767,
              3411,
              50763,
              3405,
              50781,
              3408,
              50789,
              3401,
              50785,
              3408,
              50770,
              3400,
              50784,
              3403,
              50781,
              3399,
              50778,
              3401,
              50780,
              3397,
              50784,
              3399,
              50773,
              3397,
              50792,
              3394,
              50808,
              3394,
              50791,
              3387,
              50795,
              3391,
              50798,
              3381,
              50793,
              3391,
              50810,
              3382,
              50819,
              3387,
              50810,
              3385,
              50785,
              3383,
              50808,
              3380,
              50810,
              3378,
              50814,
              3380,
              50833,
              3375,
              50828,
              3273,
              50863,
              3109,
              50869,
              2978,
              50884,
              2883,
              50903,
              2798,
              50922,
              2738,
              50875,
              2686,
              50895,
              2633,
              50917,
              2597,
              50905,
              2567,
              50934,
              2533,
              50914,
              2509,
              50941,
              2493,
              50931,
              2473,
              50939,
              2454,
              50917
            ]
          },
          {
            "time": 1505327019735,
            "label": "",
            "light_intensity": 18.942,
            "r": 19,
            "g": 8,
            "b": 5,
            "light_intensity_raw": 32,
            "temperature": 27.82,
            "humidity": 37.866,
            "pressure": 977.661,
            "temperature2": 28.03,
            "humidity2": 37.609,
            "pressure2": 976.888,
            "contactless_temp": 26.89,
            "thickness": 0.28,
            "compass_direction": "W",
            "compass": 270,
            "angle": 2.036,
            "angle_direction": "N",
            "pitch": 2.03,
            "roll": -0.17,
            "air_flow": -1,
            "data_raw": [

            ]
          },
          {
            "time": 1505327020178,
            "label": "",
            "light_intensity": 16.835,
            "r": 17,
            "g": 8,
            "b": 5,
            "light_intensity_raw": 29,
            "temperature": 27.82,
            "humidity": 37.876,
            "pressure": 977.683,
            "temperature2": 28.03,
            "humidity2": 37.609,
            "pressure2": 976.9,
            "contactless_temp": 26.99,
            "thickness": 0.28,
            "compass_direction": "W",
            "compass": 270,
            "angle": 2.061,
            "angle_direction": "N",
            "pitch": 2.05,
            "roll": -0.18,
            "air_flow": -1,
            "data_raw": [

            ]
          },
          {
            "time": 1505327020616,
            "label": "",
            "light_intensity": 16.504,
            "r": 16,
            "g": 8,
            "b": 5,
            "light_intensity_raw": 28,
            "temperature": 27.82,
            "humidity": 37.876,
            "pressure": 977.685,
            "temperature2": 28.03,
            "humidity2": 37.609,
            "pressure2": 976.914,
            "contactless_temp": 26.93,
            "thickness": 0.28,
            "compass_direction": "E",
            "compass": 90,
            "angle": 2.279,
            "angle_direction": "S",
            "pitch": 2.28,
            "roll": 0,
            "air_flow": -1,
            "data_raw": [

            ]
          },
          {
            "time": 1505327021055,
            "label": "",
            "detector_read1": 11766,
            "detector_read2": 5415,
            "light_intensity": 16.504,
            "r": 16,
            "g": 8,
            "b": 5,
            "light_intensity_raw": 28,
            "temperature": 27.82,
            "humidity": 37.887,
            "pressure": 977.688,
            "temperature2": 28.04,
            "humidity2": 37.621,
            "pressure2": 976.895,
            "contactless_temp": 26.93,
            "thickness": 0.28,
            "compass_direction": "W",
            "compass": 270,
            "angle": 2.478,
            "angle_direction": "N",
            "pitch": 2.44,
            "roll": -0.41,
            "air_flow": -1,
            "recall": {
              "time": 1505327021463,
              "colorcal_blank1[1]": 16540.5,
              "colorcal_blank1[2]": 27504,
              "colorcal_blank1[3]": 29952,
              "colorcal_blank1[4]": 37125.5,
              "colorcal_blank1[6]": 39609.5,
              "colorcal_blank1[8]": 39662,
              "colorcal_blank1[9]": 30323,
              "colorcal_blank1[10]": 38384.5,
              "colorcal_blank2[1]": 21346.5,
              "colorcal_blank2[2]": 19350,
              "colorcal_blank2[3]": 22990.5,
              "colorcal_blank2[4]": 19232.5,
              "colorcal_blank2[6]": 16765.5,
              "colorcal_blank2[8]": 18623,
              "colorcal_blank2[9]": 18288.5,
              "colorcal_blank2[10]": 16169,
              "colorcal_blank3[1]": 18712.5,
              "colorcal_blank3[2]": 10274.5,
              "colorcal_blank3[3]": 20166.5,
              "colorcal_blank3[4]": 14065,
              "colorcal_blank3[6]": 5995.5,
              "colorcal_blank3[8]": 6848,
              "colorcal_blank3[9]": 5393.5,
              "colorcal_blank3[10]": 5898.5,
              "colorcal_intensity1_slope[2]": 2.356,
              "colorcal_intensity1_yint[2]": 1.3,
              "colorcal_intensity2_slope[2]": 2.387,
              "colorcal_intensity2_yint[2]": 3.3,
              "colorcal_intensity3_slope[2]": 2.577,
              "colorcal_intensity3_yint[2]": -17.2,
              "ir_baseline_slope[5]": 11173,
              "ir_baseline_yint[5]": 17443.5,
              "ir_baseline_slope[3]": 636,
              "ir_baseline_yint[3]": 835
            },
            "data_raw": [
              1644,
              1404,
              1406,
              1403,
              1391,
              1399,
              1400,
              1393,
              1394,
              1387,
              457,
              534,
              541,
              535,
              539,
              538,
              535,
              539,
              536,
              542,
              2886,
              1501,
              1477,
              1471,
              1471,
              1467,
              1471,
              1466,
              1471,
              1470,
              835,
              193,
              183,
              183,
              180,
              184,
              182,
              184,
              183,
              180,
              37418,
              13833,
              13640,
              13623,
              13611,
              13603,
              13603,
              13603,
              13594,
              13594,
              15804,
              15511,
              15517,
              15510,
              15519,
              15513,
              15523,
              15522,
              15520,
              15520,
              20001,
              13489,
              13415,
              13413,
              13410,
              13403,
              13409,
              13400,
              13406,
              13402,
              18963,
              14755,
              14690,
              14687,
              14679,
              14683,
              14682,
              14674,
              14678,
              14672,
              12994,
              16377,
              16426,
              16425,
              16425,
              16423,
              16431,
              16425,
              16423,
              16432,
              2567,
              3263,
              3273,
              3270,
              3277,
              3274,
              3278,
              3278,
              3275,
              3279,
              8137,
              10922,
              10947,
              10951,
              10954,
              10951,
              10952,
              10951,
              10955,
              10951,
              639,
              845,
              845,
              851,
              845,
              850,
              847,
              848,
              849,
              843,
              40021,
              49382,
              49441,
              49446,
              49446,
              49451,
              49449,
              49458,
              49445,
              49458,
              43512,
              54812,
              54887,
              54886,
              54899,
              54893,
              54895,
              54905,
              54905,
              54909,
              34482,
              44713,
              44787,
              44786,
              44794,
              44788,
              44797,
              44797,
              44797,
              44799,
              35687,
              47198,
              47270,
              47258,
              47254,
              47238,
              47237,
              47219,
              47215,
              47207,
              55093,
              65535,
              65535,
              65535,
              65535,
              65535,
              65535,
              65535,
              65535,
              65535,
              5827,
              7046,
              7052,
              7058,
              7058,
              7062,
              7063,
              7062,
              7065,
              7062,
              37110,
              55073,
              55193,
              55169,
              55147,
              55136,
              55110,
              55109,
              55094,
              55082,
              2057,
              3101,
              3117,
              3111,
              3116,
              3113,
              3111,
              3114,
              3109,
              3114,
              49439,
              49439,
              49444,
              49439,
              49439,
              49435,
              49443,
              49447,
              49445,
              49447,
              54879,
              54889,
              54886,
              54871,
              54875,
              54869,
              54876,
              54873,
              54874,
              54884,
              44838,
              44837,
              44831,
              44838,
              44833,
              44836,
              44839,
              44831,
              44839,
              44835,
              47291,
              47265,
              47248,
              47238,
              47223,
              47220,
              47206,
              47196,
              47191,
              47175
            ]
          },
          {
            "time": 1505327021489,
            "label": "",
            "air_flow": -1,
            "data_raw": [

            ]
          }
        ],
        "data_raw": [

        ]
      }
    ]
  ],
  "app_os": "darwin-16.7.0",
  "app_name": "PhotosynQ",
  "app_version": "0.0.25",
  "app_device": "x64",
  "location": false,
  "time_offset": "America/Detroit"
}
Dave in cap img 4615
Created by

David M. Kramer


Protocol connections:
1
Latest Update:
Sep 2017