use canonical desired_source instead change_address (master)