Olá,
A função que salva o estado do contrato está sendo chamada dentro da classe Program, porém, também seria possível chamar essa função dentro da função Avanca, seguindo o fluxo do projeto normalmente. As duas possibilidades tem o mesmo resultado final, porém tem ganhos diferentes, uma te da mais clareza a prima vista do que está sendo feito, e outra te da mais garantias do comportamento esperado. Nesse caso, há alguma recomendação de critérios a serem utilizados para decisão?
Grato