codigo terminado, tests OK salvo error raro de valgrind en MULPS