docs: def agg_value(self, *tagnames):
          """
          :param tagnames:
              tagnames of lengths T1, T2, ... respectively
          :returns:
              the values of the exposure aggregated by tagnames as an array
              of shape (T1, T2, ..., L)
          """
          aval = numpy.zeros((len(self), len(self.loss_types)), F32)  # (A, L)
          for asset in self:
              for lti, lt in enumerate(self.loss_types):
                  if lt == 'occupants':
                      aval[asset['ordinal'], lti] = asset[lt + '_None']
                  else:
                      aval[asset['ordinal'], lti] = asset['value-' + lt]
          return self.aggregate_by(list(tagnames), aval)