code: def iteration_stats(self):
          
  
          tk = self.timer.elapsed(self.opt['IterTimer'])
          if self.xstep_itstat is None:
              objfn = (0.0,) * 3
              rsdl = (0.0,) * 2
              rho = (0.0,)
          else:
              objfn = (self.xstep_itstat.ObjFun, self.xstep_itstat.DFid,
                       self.xstep_itstat.RegL1)
              rsdl = (self.xstep_itstat.PrimalRsdl,
                      self.xstep_itstat.DualRsdl)
              rho = (self.xstep_itstat.Rho,)
  
          cnstr = np.linalg.norm(cr.zpad(self.D, self.cri.Nv) - self.G)
          dltd = np.linalg.norm(self.D - self.Dprv)
  
          tpl = (self.j,) + objfn + rsdl + rho + (cnstr, dltd, self.eta) + \
                self.itstat_extra() + (tk,)
          return type(self).IterationStats(*tpl)
docs: Construct iteration stats record tuple.