code: function _getRealHeader(expectedHeader, actualHeader, fieldNames) {
  	// Stores for each existing field the postion in the array
  	let fieldMap = {};
  
  	for (let i = 0; i < expectedHeader.length; i++) {
  		let found = false;
  		for (let j = 0; j < actualHeader.length; j++) {
  			if (Array.isArray(expectedHeader[i])) {
  				for (let k = 0; k < expectedHeader[i].length; k++) {
  					if (expectedHeader[i][k] === actualHeader[j]) {
  						found = true;
  						fieldMap[j] = fieldNames[i];
  					}
  				}
  			} else {
  				if (expectedHeader[i] === actualHeader[j]) {
  					found = true;
  					fieldMap[j] = fieldNames[i];
  				}
  			}
  			if (found) {
  				break;
  			}
  		}
  	}
  
  	return fieldMap;
  }
docs: /*
  Compares an expected array against an actual array and checks that all the columns
  from the expected array exists in the actual array. Each missing value will be returned
  
  @param expectedHeader The expected array
  @param actualHeader The actual array
  @param fieldNames The fieldNames to use for each field.
  @return fieldMap This maps the fieldNames to the position in the array.