hypergeometric methods