http://www.fing.edu.uy/inco/cursos/sig/oblig2SIG101013.pdf