code: def fill_default_configuration(self):
          logger.debug("Filling the unset properties with their default value:")
          types_creations = self.__class__.types_creations
          for o_type in types_creations:
              (_, _, inner_property, _, _) = types_creations[o_type]
              if inner_property in ['realms', 'arbiters', 'schedulers', 'reactionners',
                                    'pollers', 'brokers', 'receivers']:
                  continue
              logger.debug("  . for %s", inner_property,)
              inner_object = getattr(self, inner_property, None)
              if inner_object is None:
                  logger.debug("No %s to fill with default values", inner_property)
                  continue
              inner_object.fill_default()
          if getattr(self, 'realms', None) is not None:
              self.fill_default_realm()
              self.realms.fill_default()
              self.fill_default_satellites(self.launch_missing_daemons)
          types_creations = self.__class__.types_creations
          for o_type in types_creations:
              (_, _, inner_property, _, _) = types_creations[o_type]
              if getattr(self, inner_property, None) is None:
                  logger.debug("No %s to fill with default values", inner_property)
                  continue
              if inner_property in ['schedulers', 'reactionners', 'pollers', 'brokers', 'receivers']:
                  logger.debug("  . for %s", inner_property,)
                  inner_object = getattr(self, inner_property)
                  inner_object.fill_default()
          self.hosts.fill_predictive_missing_parameters()
          self.services.fill_predictive_missing_parameters()