code: def create_explicit(bounds):
      
      safe_bounds = sorted(float(x) for x in bounds)
      if len(safe_bounds) != len(set(safe_bounds)):
          raise ValueError(u'Detected two elements of bounds that are the same')
      return sc_messages.Distribution(
          bucketCounts=[0] * (len(safe_bounds) + 1),
          explicitBuckets=sc_messages.ExplicitBuckets(bounds=safe_bounds))
docs: Creates a new instance of distribution with explicit buckets.
  
      bounds is an iterable of ordered floats that define the explicit buckets
  
      Args:
         bounds (iterable[float]): initializes the bounds
  
      Return:
         :class:`endpoints_management.gen.servicecontrol_v1_messages.Distribution`
  
      Raises:
         ValueError: if the args are invalid for creating an instance