update main opt