funciona no 2.x e 4.x mas tem um bug quando executa 2 vez uma dá erro
outra não!
corrigido o bug mas não com a solução mais elegante eu acho!