See http://www.dm.unipi.it/~angella.