(1) Added optional parameters to the OverloadEvent constructor.
(2) Updated the logic for calculating fl_surplus_energy_MWh to account for non-uniform timestamp widths and base case set to uniform timestamp widths.
(3) Kept the logic for calculating fl_rms_load using the for-loop method.
(4)Added checks for missing all_timestamp_widths when equal_timestamp_spacing is set to False.
(5)Updated the calculation of self.percentage_overload to handle cases where fl_power_limit is zero.
(1) Added optional parameters to the OverloadEvent constructor. (2) Updated the logic for calculating fl_surplus_energy_MWh to account for non-uniform timestamp widths and base case set to uniform timestamp widths. (3) Kept the logic for calculating fl_rms_load using the for-loop method. (4)Added checks for missing all_timestamp_widths when equal_timestamp_spacing is set to False. (5)Updated the calculation of self.percentage_overload to handle cases where fl_power_limit is zero.