anchor.diff:      'Automation Type',
       'Budget',
       'Spent',
  -    'Start Date',
  -    'End Date'
  +    'Current Pacing %',
  +    'Start_Date',
  +    'End_Date',
     ];
  -
   
     /// Waits for Office APIs to be ready and then creates
     /// a new spreadsheet with [sheetName] and populates the spreadsheet with
  
positive.code:       final range = table.getDataBodyRange();
        final format = range.conditionalFormats.add('Custom');
  
        // Excel formula DATEDIF(dateA, dateB, "D") calculates the difference
        // between two dates in days, where dateB must be after or equal to dateA.
        // i.e. DATEDIF("7/1/2020", "7/31/2020", "D") = 30
        //
        // This formula calculates:
        // (spent / budget) / (current duration / flight duration)
        //
        // If current duration or flight duration is less than 1 day, then
        // the formula calculates:
        // (spent / budget) / (time elapsed since flight start / 24)
        // Time elapsed has the granularity of hours and minutes.
        // i.e. TEXT("1/1/2020 10:20:00 AM" - "1/1/2020 12:00:00 AM", "h.mm")
        //      = 10.2
        final formula = ''' 
        IF(OR(DATEDIF($_startDateColumn, $_endDateColumn, "D") = 0, 
              DATEDIF($_startDateColumn, NOW(), "D") = 0),
           ($_spentColumn/$_budgetColumn) / 
           (
             TEXT(NOW()-$_startDateColumn, "h.mm") / 24
           ), 
           ($_spentColumn/$_budgetColumn) /
           (
             DATEDIF($_startDateColumn, NOW(), "D") /
             DATEDIF($_startDateColumn, $_endDateColumn, "D")
           )) < $_thresholdAddress
        ''';
  
        // remove all tabs, newlines, and whitespace from the formula.
        format.custom.rule.formula = formula.replaceAll(RegExp(r'\s+'), '');
  
        format.custom.format.fill.color = _underpacingFormatFill;
        format.custom.format.font.color = _underpacingFormatFont;
  
negative.code:       Util.convertMicrosToStandardUnitString(
            Int64.parseInt(budgetAmountMicros));
  
    /// Uses Excel built-in formula to calculate current pacing percentage.
    ///
    /// The formula calculates:
    /// (spent / budget) / (current duration / flight duration)
    /// where duration has granularity of hours. And if current duration is less
    /// than 1 day or 10% of the total flight duration, it will show
    /// 'not_enough_information".
    static String _calculateCurrentPacingPercentage() {
      // (dateA - dateB) returns the difference between two dates in days,
      // and with fractions showing the difference between times in seconds.
      //
      // MROUND(dateA - dateB, 1/24) rounds the difference to hours.
      //
      // Only inflight IOs are displayed in the table, so current duration will
      // not have negative values.
      // And the final pacing percentage is rounded to two decimal places.
      final formula = '''
      =IF(AND(
          NOW() - [Start_Date] > 1,
          MROUND(NOW() - [Start_Date], 1/24) > 0.1 * ([End_Date] - [Start_Date])
          ),
  
          ROUND(
          ([Spent] / [Budget]) /
          (
            MROUND(NOW() - [Start_Date], 1/24) / ([End_Date] - [Start_Date])
          ), 2),
  
          "not_enough_information"
          )
      ''';
  
      return formula.replaceAll(RegExp(r'\s+'), '');
    }
  
    /// Converts proto [Date] into Excel date time format.
    static String _calculateDate(
            InsertionOrder_Budget_BudgetSegment_DateRange_Date date) =>
  