class_docstr: A piecewise combination of multiple schedules.
code: def get(self, step):
      idx = jnp.searchsorted(self.milestones, step, side="right")
      schedule = self.schedules[idx]
      base_idx = self.milestones[idx - 1] if idx >= 1 else 0
      return schedule.get(step - base_idx)
  
imports: import abc
  import collections
  import copy
  import math
  from typing import Any, Iterable, List, Tuple, Union
  from jax import numpy
label_desc: Use image node_id 2 for calling the PiecewiseSchedule obj's underlying member method code with example usage: obj.get(step) and returns: schedule