message: always generate row
diff: @@ -152,12 +152,13 @@ function downloadArmor(items: DimItem[], nameMap: { [key: string]: string }) {
  Equippable: equippable(item),
  [item.isDestiny1() ? 'Light' : 'Power']: item.primStat && item.primStat.value
  };
  - if (item.isDestiny2() && item.masterworkInfo) {
  - row['Masterwork Type'] = item.masterworkInfo.statName;
  - row['Masterwork Tier'] = item.masterworkInfo.statValue
  - ? item.masterworkInfo.statValue <= 10
  + if (item.isDestiny2()) {
  + row['Masterwork Type'] = item.masterworkInfo && item.masterworkInfo.statName;
  + row['Masterwork Tier'] =
  + item.masterworkInfo && item.masterworkInfo.statValue
  + ? item.masterworkInfo.statValue <= 5
  ? item.masterworkInfo.statValue
  - : 10
  + : 5
  : undefined;
  }
  row.Owner = nameMap[item.owner];
  @@ -242,9 +243,10 @@ function downloadWeapons(items: DimItem[], nameMap: { [key: string]: string }) {
  [item.isDestiny1() ? 'Light' : 'Power']: item.primStat && item.primStat.value,
  Dmg: item.dmg ? `${capitalizeFirstLetter(item.dmg)}` : 'Kinetic'
  };
  - if (item.isDestiny2() && item.masterworkInfo) {
  - row['Masterwork Type'] = item.masterworkInfo.statName;
  - row['Masterwork Tier'] = item.masterworkInfo.statValue
  + if (item.isDestiny2()) {
  + row['Masterwork Type'] = item.masterworkInfo && item.masterworkInfo.statName;
  + row['Masterwork Tier'] =
  + item.masterworkInfo && item.masterworkInfo.statValue
  ? item.masterworkInfo.statValue <= 10
  ? item.masterworkInfo.statValue
  : 10
  @@ -338,10 +340,11 @@ function downloadWeapons(items: DimItem[], nameMap: { [key: string]: string }) {
  row.Reload = stats.reload;
  row.Mag = stats.magazine;
  row.Equip = stats.equipSpeed;
  - row.DrawTime = stats.drawtime;
  - row.ChargeTime = stats.chargetime;
  + row['Charge Time'] = stats.chargetime;
  + if (item.isDestiny2()) {
  + row['Draw Time'] = stats.drawtime;
  row.Accuracy = stats.accuracy;
  -
  + }
  row.Notes = item.dimInfo.notes;
  addPerks(row, item, maxPerks);
  