def METHOD_NAME(self, *args: str) -> Optional[str]:
    new_state_candidates = list(map(lambda x: datetime.datetime.strptime(x, self.DATETIME_FORMAT), filter(None, args)))
    if not new_state_candidates:
        return
    max_dt = max(new_state_candidates)
    # `.%f` gives us microseconds, we need milliseconds
    (dt, micro) = max_dt.strftime(self.DATETIME_FORMAT).split(".")
    return "%s.%03dZ" % (dt, int(micro[:-1:]) / 1000)