links: http://pastie.org/1666447 http://cin.ufpe.br/~time-ufpe/ccs