io non l'ho testata, la logica è corretta prova a testarla e a fare del debug, purtroppo sono incasinato e non ho tempo altrimenti l'avrei fatto io