code: def add_prior(self, twig=None, **kwargs):
          
  
          raise NotImplementedError
  
          param = self.get_parameter(twig=twig, **kwargs)
          # TODO: make sure param is a float parameter?
  
          func = _get_add_func(_distributions, 'prior')
  
          # TODO: send smart defaults for priors based on limits of parameter
          params = func(**kwargs)
  
          metawargs = {k: v for k, v in params.meta.items()
                       if k not in ['uniqueid', 'uniquetwig', 'twig']}
          metawargs['context'] = 'prior'
  
          logger.info("adding prior on '{}' parameter".format(param.uniquetwig))
          self._attach_params(params, **metawargs)
  
          redo_kwargs = deepcopy(kwargs)
          redo_kwargs['func'] = func.func_name
          self._add_history(redo_func='add_prior',
                            redo_kwargs=redo_kwargs,
                            undo_func='remove_prior',
                            undo_kwargs={'twig': param.uniquetwig})
  
          # return params
          return self.get_prior(**metawargs)
docs: [NOT IMPLEMENTED]
  
          :raises NotImplementedError: because it isn't