def defaults(self_):
    """
        Return {parameter_name:parameter.default} for all non-constant
        Parameters.

        Note that a Parameter for which instantiate==True has its default
        instantiated.
        """
    self = self_.self
    d = {}
    for param_name, param in self.param.objects('existing').items():
        if param.constant:
            pass
        elif param.instantiate:
            self.param._instantiate_param(param, dict_=d, key=param_name)
        else:
            d[param_name] = param.default
    return d
