Source: http://www-fourier.univ-grenoble-alpes.fr/~ycolver/bill.pdf