refactored read/write on SetCancel, SetSubVer