code: def test_invalid_get_synced_durations_histogram_percentiles(
      self,
  ) -> None:
      with self.assertRaisesRegex(
          ValueError, "Percentile must be between 0 and 100"
      ):
          get_synced_durations_histogram({}, percentiles=(-1,))
      with self.assertRaisesRegex(
          ValueError, "Percentile must be between 0 and 100"
      ):
          get_synced_durations_histogram({}, percentiles=(101,))
  
imports: import os
  import time
  import unittest
  from datetime import timedelta
  from random import random
  from unittest import mock
  from unittest.mock import Mock, patch
  import torch
  import torch.distributed
  from pyre_extensions import none_throws
  from torchtnt.utils.test_utils import skip_if_not_distributed, skip_if_not_gpu, spawn_multi_process
  from torchtnt.utils.timer import BoundedTimer, FullSyncPeriodicTimer, get_durations_histogram, get_recorded_durations_table, get_synced_durations_histogram, get_timer_summary, log_elapsed_time, logger, Timer
label_desc: Use image node_id 7 for calling the TimerTest obj's underlying member method code with example usage: obj.test_invalid_get_synced_durations_histogram_percentiles() without return types