docs: def build(cls, shape_y, shape_z, sids, initvalue=0., dtype=F64):
          """
          :param shape_y: the total number of intensity measure levels
          :param shape_z: the number of inner levels
          :param sids: a set of site indices
          :param initvalue: the initial value of the probability (default 0)
          :returns: a ProbabilityMap dictionary
          """
          dic = cls(shape_y, shape_z)
          for sid in sids:
              dic.setdefault(sid, initvalue, dtype)
          return dic