docs: def lnprior(self,theta):
          """ Logarithm of the prior """
          params,priors = self.params,self.priors
          kwargs = dict(list(zip(params,theta)))
          err = np.seterr(invalid='raise')
          try:
              lnprior = np.sum(np.log([priors[k](v) for k,v in list(kwargs.items())]))
          except (FloatingPointError,ValueError):
              lnprior = -np.inf
          np.seterr(**err)
          return lnprior