code: def add_entry(self, solver, name):
      print("Running %s" % name)
      completed_normalized = solver.fit_transform(
          self.incomplete_normalized
      )
      completed = self.normalizer.inverse_transform(
          completed_normalized
      )
  
      mae = masked_mae(
          X_true=self.flattened_images,
          X_pred=completed,
          mask=self.missing_mask,
      )
      mse = masked_mse(
          X_true=self.flattened_images,
          X_pred=completed,
          mask=self.missing_mask,
      )
      print("==> %s: MSE=%0.4f MAE=%0.4f" % (name, mse, mae))
      self.mse_dict[name] = mse
      self.mae_dict[name] = mae
      self.save_images(completed, base_filename=name)
  
imports: from os import mkdir
  from os.path import exists, join
  from collections import defaultdict
  import pylab
  from sklearn.datasets import fetch_lfw_people
  from sklearn.impute import IterativeImputer
  import numpy
  from fancyimpute import SimpleFill, IterativeSVD, SoftImpute, BiScaler, KNN
  from fancyimpute.common import masked_mae, masked_mse
label_desc: Use image node_id 4 for calling the ResultsTable obj's underlying member method code with example usage: obj.add_entry(solver, name) without return types