code: def linked_model_for_class(self, cls, make_constants_variable=False, **kwargs):
          constructor_args = inspect.getfullargspec(cls).args
          attribute_tuples = self.attribute_tuples
          new_model = PriorModel(cls)
          for attribute_tuple in attribute_tuples:
              name = attribute_tuple.name
              if name in constructor_args or (
                      is_tuple_like_attribute_name(name) and tuple_name(name) in constructor_args):
                  attribute = kwargs[name] if name in kwargs else attribute_tuple.value
                  if make_constants_variable and isinstance(attribute, Constant):
                      new_attribute = getattr(new_model, name)
                      if isinstance(new_attribute, Prior):
                          new_attribute.mean = attribute.value
                          continue
                  setattr(new_model, name, attribute)
          return new_model