http://newton.sunderland.ac.uk/~spec...s/schemes.html