Adicionei alguns comentários para ajudar no entedimento do código e descobri que tem um bug que não me deixa selecionar o último ponto de controle.