c
if (ticks_from_now < 0) {
    ticks_from_now = 0; // Prevent underflow
} else if (ticks_from_now > UINT32_MAX - ble_npl_time_get()) {
    ticks_from_now = UINT32_MAX - ble_npl_time_get(); // Prevent overflow
}
abs_time = ble_npl_time_get() + ticks_from_now;
