public ChargeCycle(BatteryHistory start, BatteryHistory end, double percentCharged, TimeSpan overCharge, double chargeCapacity)
 {
     Start                = start;
     End                  = end;
     PercentCharged       = percentCharged;
     OverCharge           = overCharge;
     Capacity_mAH         = chargeCapacity;
     lazyDuration         = new Lazy <TimeSpan>(() => End.Date - Start.Date);
     lazyRate_percentHour = new Lazy <double>(() => PercentCharged / lazyDuration.Value.TotalHours);
 }
 public static bool TryParse(string raw, out BatteryHistory result)
 {
     try
     {
         result = Parse(raw);
         return(true);
     }
     catch (Exception)
     {
         result = default;
         return(false);
     }
 }