Purtroppo, per la complessità della funzione e la sua forte dipendenza dallo stato dei dati, è praticamente impossibile risalire al problema senza fare debugging con il programma attivo.