• Re: [EXT] Re: Delay in Switching to Stratum 16 After Local Reference Lo

    From Miroslav Lichvar via questions Mail@21:1/5 to Windl, Ulrich on Wed Jul 2 10:43:00 2025
    Copy: [email protected] (Dave Hart)
    Copy: [email protected] ([email protected])
    Copy: [email protected] (=?iso-8859-1?Q?J=FCrgen?= Perlinger)
    Copy: [email protected] (=?iso-8859-1?Q?J=FCrgen?= Perlinger)
    Copy: [email protected] (Windl, Ulrich)

    On Wed, Jul 02, 2025 at 09:23:12AM +0000, Windl, Ulrich wrote:
    Actually, I had completely forgotten about that issue. Reading it again, it seems stratum should be 16 if all sources are unreachable (lost).

    Why should it do that?

    The idea in NTPv4 is that the decision if a source is acceptable
    should be made on the client side. If a server loses all time sources,
    its root dispersion will grow (15 ppm by default). If a client of that
    server has other sources, it can reselect when the distance becomes
    larger than that of the other sources.

    If the server quickly switches to the unsynchronized state (as recent
    ntpd versions seem to be doing), the client can no longer synchronize
    to it, even if it has no other sources available. If there are
    multiple clients of that server, their clocks will not stay in sync,
    each will be drifting on its own.

    --
    Miroslav Lichvar

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Windl, Ulrich@21:1/5 to Miroslav Lichvar on Wed Jul 2 10:23:00 2025
    Copy: [email protected] (Dave Hart)
    Copy: "[email protected] (" <[email protected])
    Copy: [email protected] (=?utf-8?B?SsO8cmdlbiBQZXJsaW5nZXI=?= ) Copy: [email protected] (=?utf-8?B?SsO8cmdlbiBQZXJsaW5nZXI=?= )
    Copy: [email protected] (Windl, Ulrich)

    TWlyb3NsYXYsDQoNCmZyb20gdGhlIFJGQyBjaXRhdGlvbnMgZm91bmQgaW4gdGhlIGJ1ZyByZXBv cnQgaXQgc2VlbXMgdG8gYmUgc3BlY2lmaWVkIGRpZmZlcmVudGx5LCBvciBJIG1pc3VuZGVyc3Rv b2QuDQoNCktpbmQgcmVnYXJkcywNClVscmljaCBXaW5kbA0KDQo+IC0tLS0tT3JpZ2luYWwgTWVz c2FnZS0tLS0tDQo+IEZyb206IE1pcm9zbGF2IExpY2h2YXIgPG1saWNodmFyQHJlZGhhdC5jb20+ DQo+IFNlbnQ6IFdlZG5lc2RheSwgSnVseSAyLCAyMDI1IDExOjQyIEFNDQo+IFRvOiBXaW5kbCwg VWxyaWNoIDx1LndpbmRsQHVrci5kZT4NCj4gQ2M6IERhdmUgSGFydCA8ZGF2ZWhhcnRAZ21haWwu Y29tPjsgcXVlc3Rpb25zQGxpc3RzLm50cC5vcmc7IErDvHJnZW4NCj4gUGVybGluZ2VyIDxqdWVy Z2VuLnBlcmxpbmdlckB0LW9ubGluZS5kZT47IErDvHJnZW4gUGVybGluZ2VyDQo+IDxwZXJsaW5n ZXJAbnRwLm9yZz47IFdpbmRsLCBVbHJpY2ggPHdpbmRsQG50cC5vcmc+DQo+IFN1YmplY3Q6IFtF WFRdIFJlOiBSZTogRGVsYXkgaW4gU3dpdGNoaW5nIHRvIFN0cmF0dW0gMTYgQWZ0ZXIgTG9jYWwg UmVmZXJlbmNlDQo+IExvc3Mgb24gbnRwZCA0LjIuOHAxOA0KPiANCj4gU2ljaGVyaGVpdHMtSGlu d2VpczogRGllc2UgRS1NYWlsIHd1cmRlIHZvbiBlaW5lciBQZXJzb24gYXXDn2VyaGFsYiBkZXMN Cj4gVUtSIGdlc2VuZGV0LiBTZWllbiBTaWUgdm9yc2ljaHRpZyB2b3IgZ2Vmw6Rsc2NodGVuIEFi c2VuZGVybiwgd2VubiBTaWUgYXVmDQo+IExpbmtzIGtsaWNrZW4sIEFuaMOkbmdlIMO2ZmZuZW4g b2RlciB3ZWl0ZXJlIEFrdGlvbmVuIGF1c2bDvGhyZW4sIGJldm9yIFNpZQ0KPiBkaWUgRWNodGhl aXQgw7xiZXJwcsO8ZnQgaGFiZW4uDQo+IA0KPiBPbiBXZWQsIEp1bCAwMiwgMjAyNSBhdCAwOToy MzoxMkFNICswMDAwLCBXaW5kbCwgVWxyaWNoIHdyb3RlOg0KPiA+IEFjdHVhbGx5LCBJIGhhZCBj b21wbGV0ZWx5IGZvcmdvdHRlbiBhYm91dCB0aGF0IGlzc3VlLiBSZWFkaW5nIGl0IGFnYWluLCBp dA0KPiBzZWVtcyBzdHJhdHVtIHNob3VsZCBiZSAxNiBpZiBhbGwgc291cmNlcyBhcmUgdW5yZWFj aGFibGUgKGxvc3QpLg0KPiANCj4gV2h5IHNob3VsZCBpdCBkbyB0aGF0Pw0KPiANCj4gVGhlIGlk ZWEgaW4gTlRQdjQgaXMgdGhhdCB0aGUgZGVjaXNpb24gaWYgYSBzb3VyY2UgaXMgYWNjZXB0YWJs ZQ0KPiBzaG91bGQgYmUgbWFkZSBvbiB0aGUgY2xpZW50IHNpZGUuIElmIGEgc2VydmVyIGxvc2Vz IGFsbCB0aW1lIHNvdXJjZXMsDQo+IGl0cyByb290IGRpc3BlcnNpb24gd2lsbCBncm93ICgxNSBw cG0gYnkgZGVmYXVsdCkuIElmIGEgY2xpZW50IG9mIHRoYXQNCj4gc2VydmVyIGhhcyBvdGhlciBz b3VyY2VzLCBpdCBjYW4gcmVzZWxlY3Qgd2hlbiB0aGUgZGlzdGFuY2UgYmVjb21lcw0KPiBsYXJn ZXIgdGhhbiB0aGF0IG9mIHRoZSBvdGhlciBzb3VyY2VzLg0KPiANCj4gSWYgdGhlIHNlcnZlciBx dWlja2x5IHN3aXRjaGVzIHRvIHRoZSB1bnN5bmNocm9uaXplZCBzdGF0ZSAoYXMgcmVjZW50DQo+ IG50cGQgdmVyc2lvbnMgc2VlbSB0byBiZSBkb2luZyksIHRoZSBjbGllbnQgY2FuIG5vIGxvbmdl ciBzeW5jaHJvbml6ZQ0KPiB0byBpdCwgZXZlbiBpZiBpdCBoYXMgbm8gb3RoZXIgc291cmNlcyBh dmFpbGFibGUuIElmIHRoZXJlIGFyZQ0KPiBtdWx0aXBsZSBjbGllbnRzIG9mIHRoYXQgc2VydmVy LCB0aGVpciBjbG9ja3Mgd2lsbCBub3Qgc3RheSBpbiBzeW5jLA0KPiBlYWNoIHdpbGwgYmUgZHJp ZnRpbmcgb24gaXRzIG93bi4NCj4gDQo+IC0tDQo+IE1pcm9zbGF2IExpY2h2YXINCg0K

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Miroslav Lichvar via questions Mail@21:1/5 to Windl, Ulrich on Wed Jul 2 14:58:00 2025
    Copy: [email protected] (Dave Hart)
    Copy: [email protected] ([email protected])
    Copy: [email protected] (=?iso-8859-1?Q?J=FCrgen?= Perlinger)
    Copy: [email protected] (=?iso-8859-1?Q?J=FCrgen?= Perlinger)
    Copy: [email protected] (Windl, Ulrich)

    On Wed, Jul 02, 2025 at 09:50:37AM +0000, Windl, Ulrich wrote:
    Miroslav,

    from the RFC citations found in the bug report it seems to be specified differently, or I misunderstood.

    If you are referring to the Figure 24 of RFC 5905, which has "return
    (UNSYNC)" for this path, there doesn't seem to be anything suggesting
    that should be handled by resetting the clock to an unsynchronized
    state.

    The clock_select() function in A.5.5.1 doesn't have a return value and
    in this case when no usable sources are present it doesn't do
    anything, it just returns.

    /*
    * There must be at least NSANE survivors to satisfy the
    * correctness assertions. Ordinarily, the Byzantine criteria
    * require four survivors, but for the demonstration here, one
    * is acceptable.
    */
    if (s.n < NSANE)
    return;

    --
    Miroslav Lichvar

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Windl, Ulrich@21:1/5 to Miroslav Lichvar on Fri Jul 4 17:08:11 2025
    Copy: [email protected] (Dave Hart)
    Copy: "[email protected] (" <[email protected])
    Copy: [email protected] (=?utf-8?B?SsO8cmdlbiBQZXJsaW5nZXI=?= ) Copy: [email protected] (=?utf-8?B?SsO8cmdlbiBQZXJsaW5nZXI=?= )
    Copy: [email protected] (Windl, Ulrich)

    V2VsbCwNCg0KV2UgY291bGQgc3RhcnQgYSBkaXNjdXNzaW9uIHdoYXQgIlVOU1lOQyIgcmVhbGx5 IG1lYW5zOg0KRG9lcyBpdCBtZWFuIHRoZSBjbG9jayBpcyBmcmVlLXJ1bm5pbmcgKG5vdCB1cGRh dGVkIGJ5IHRoZSBjbG9jayBkaXNjaXBsaW5lKSwgb3IgZG9lcyBpdCBtZWFuIHRoZSBjbG9jaydz IGVzdGltYXRlZCBvZmZzZXQgaXMgImp1c3QgdGVycmlibGUiIChsaWtlIDE2IHNlY29uZHMpPw0K V2l0aCB0aGUgZm9ybWVyIGRlZmluaXRpb25zIGl0J3MgbGlrZWx5IHRoYXQgYW4gaXNzdWUgaXMg ZGlzY292ZXJlZCBlYXJsaWVyIGJ5IG1vbml0b3JpbmcgSU1ITy4NCkkgdGhpbmsgYW4gVU5TWU5D IGNsb2NrIGNvdWxkIHN0aWxsIHByb3ZpZGUgYW4gZXN0aW1hdGVkIGFuIG1heGltdW0gZXJyb3Iu DQoNCktpbmQgcmVnYXJkcywNClVscmljaCBXaW5kbA0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2Fn ZS0tLS0tDQo+IEZyb206IE1pcm9zbGF2IExpY2h2YXIgPG1saWNodmFyQHJlZGhhdC5jb20+DQo+ IFNlbnQ6IFdlZG5lc2RheSwgSnVseSAyLCAyMDI1IDQ6NTUgUE0NCj4gVG86IFdpbmRsLCBVbHJp Y2ggPHUud2luZGxAdWtyLmRlPg0KPiBDYzogRGF2ZSBIYXJ0IDxkYXZlaGFydEBnbWFpbC5jb20+ OyBxdWVzdGlvbnNAbGlzdHMubnRwLm9yZzsgSsO8cmdlbg0KPiBQZXJsaW5nZXIgPGp1ZXJnZW4u cGVybGluZ2VyQHQtb25saW5lLmRlPjsgSsO8cmdlbiBQZXJsaW5nZXINCj4gPHBlcmxpbmdlckBu dHAub3JnPjsgV2luZGwsIFVscmljaCA8d2luZGxAbnRwLm9yZz4NCj4gU3ViamVjdDogW0VYVF0g UmU6IFJlOiBSZTogRGVsYXkgaW4gU3dpdGNoaW5nIHRvIFN0cmF0dW0gMTYgQWZ0ZXIgTG9jYWwN Cj4gUmVmZXJlbmNlIExvc3Mgb24gbnRwZCA0LjIuOHAxOA0KPiANCj4gT24gV2VkLCBKdWwgMDIs IDIwMjUgYXQgMDk6NTA6MzdBTSArMDAwMCwgV2luZGwsIFVscmljaCB3cm90ZToNCj4gPiBNaXJv c2xhdiwNCj4gPg0KPiA+IGZyb20gdGhlIFJGQyBjaXRhdGlvbnMgZm91bmQgaW4gdGhlIGJ1ZyBy ZXBvcnQgaXQgc2VlbXMgdG8gYmUgc3BlY2lmaWVkDQo+IGRpZmZlcmVudGx5LCBvciBJIG1pc3Vu ZGVyc3Rvb2QuDQo+IA0KPiBJZiB5b3UgYXJlIHJlZmVycmluZyB0byB0aGUgRmlndXJlIDI0IG9m IFJGQyA1OTA1LCB3aGljaCBoYXMgInJldHVybg0KPiAoVU5TWU5DKSIgZm9yIHRoaXMgcGF0aCwg dGhlcmUgZG9lc24ndCBzZWVtIHRvIGJlIGFueXRoaW5nIHN1Z2dlc3RpbmcNCj4gdGhhdCBzaG91 bGQgYmUgaGFuZGxlZCBieSByZXNldHRpbmcgdGhlIGNsb2NrIHRvIGFuIHVuc3luY2hyb25pemVk DQo+IHN0YXRlLg0KPiANCj4gVGhlIGNsb2NrX3NlbGVjdCgpIGZ1bmN0aW9uIGluIEEuNS41LjEg ZG9lc24ndCBoYXZlIGEgcmV0dXJuIHZhbHVlIGFuZA0KPiBpbiB0aGlzIGNhc2Ugd2hlbiBubyB1 c2FibGUgc291cmNlcyBhcmUgcHJlc2VudCBpdCBkb2Vzbid0IGRvDQo+IGFueXRoaW5nLCBpdCBq dXN0IHJldHVybnMuDQo+IA0KPiAgICAgICAgIC8qDQo+ICAgICAgICAgICogVGhlcmUgbXVzdCBi ZSBhdCBsZWFzdCBOU0FORSBzdXJ2aXZvcnMgdG8gc2F0aXNmeSB0aGUNCj4gICAgICAgICAgKiBj b3JyZWN0bmVzcyBhc3NlcnRpb25zLiAgT3JkaW5hcmlseSwgdGhlIEJ5emFudGluZSBjcml0ZXJp YQ0KPiAgICAgICAgICAqIHJlcXVpcmUgZm91ciBzdXJ2aXZvcnMsIGJ1dCBmb3IgdGhlIGRlbW9u c3RyYXRpb24gaGVyZSwgb25lDQo+ICAgICAgICAgICogaXMgYWNjZXB0YWJsZS4NCj4gICAgICAg ICAgKi8NCj4gICAgICAgICBpZiAocy5uIDwgTlNBTkUpDQo+ICAgICAgICAgICAgICAgICByZXR1 cm47DQo+IA0KPiAtLQ0KPiBNaXJvc2xhdiBMaWNodmFyDQoNCg==

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Miroslav Lichvar via questions Mail@21:1/5 to Windl, Ulrich on Mon Jul 7 09:38:00 2025
    Copy: [email protected] (Dave Hart)
    Copy: [email protected] ([email protected])
    Copy: [email protected] (=?iso-8859-1?Q?J=FCrgen?= Perlinger)
    Copy: [email protected] (=?iso-8859-1?Q?J=FCrgen?= Perlinger)
    Copy: [email protected] (Windl, Ulrich)

    On Fri, Jul 04, 2025 at 06:54:13AM +0000, Windl, Ulrich wrote:
    Well,

    We could start a discussion what "UNSYNC" really means:
    Does it mean the clock is free-running (not updated by the clock discipline), or does it mean the clock's estimated offset is "just terrible" (like 16 seconds)?

    I think in the context of the clock_select() function it means there
    is no source selected and the clock cannot be updated. The selection
    itself doesn't change the status of the clock. If it was previously
    considered to be synchronized, it will still be synchronized.

    With the former definitions it's likely that an issue is discovered earlier by monitoring IMHO.

    The monitoring can check the reachability directly and discover the
    issue even sooner, no need to wait for the orphan timeout to activate
    after the source becomes unreachable.

    --
    Miroslav Lichvar

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Windl, Ulrich@21:1/5 to Miroslav Lichvar on Mon Jul 7 10:58:00 2025
    Copy: [email protected] (Dave Hart)
    Copy: "[email protected] (" <[email protected])

    SGkhDQoNCldlbGwgdGhpbmdzIHNlZW1zIGEgYml0IG1vcmUgY29tcGxleDoNClRoZSBrZXJuZWwg Y2xvY2sgaGFzIGEgY2xvY2sgc3RhdGUsIHRvbzogSW5pdGlhbGx5IGFmdGVyIGJvb3QgaXQgaXMg dW5zeW5jaHJvbml6ZWQsIGJ1dCB3aGVuICBOVFAgdXBkYXRlcyB0aGUgY2xvY2ssIGl0IHdpbGwg YmUgc2V0IHRvIHN5bmNocm9uaXplcywgdG9nZXRoZXIgd2l0aCBhIGZldyBtb3JlIHBhcmFtZXRl cnMuDQpXaGVuIHRoZSBtYXhpbXVtIGVycm9yICh0aGUga2VybmVsIGNsb2NrIGFkdmFuY2VzIGF1 dG9tYXRpY2FsbHkpIHJlYWNoZXMgYSB0aHJlc2hvbGQsIHRoZSBjbG9jayBpcyBzZXQgdG8gdW5z eW5jaHJvbml6ZWQgYWdhaW4uIFNvIGV2ZW4gaWYgTlRQIGNyYXNoZXMsIHRoZSBrZXJuZWwgY2xv Y2sgbWF5IGluZGljYXRlIGEgc3luY2hyb25pemVkIHN0YXR1cyBmb3Igc29tZSB0aW1lLg0KSW4g Y29udHJhc3Qgd2hlbiBOVFAgaXMgY29uc2lkZXJpbmcgaXRzZWxmIFVOU05DLCB3aWxsIGl0IHNl dCB0aGUga2VybmVsIGNsb2NrIHRvIHVuc3luY2hyb25pemVkIGltbWVkaWF0ZWx5LCBvciB3aWxs IGl0IGp1c3Qgc3RvcCBzZW5kaW5nIHVwZGF0ZXMgdG8gdGhlIGtlcm5lbCBjbG9jaz8NCkFzIEkg dW5kZXJzdG9vZCB0aGUgZGlzY3Vzc2lvbiBzbyBmYXIsIHRoZSBsYXR0ZXIgaXMgdGhlIGNhc2Uu DQpXaGF0J3Mgbm90IHF1aXRlIGNsZWFyIGF0IHRoZSBtb21lbnQgaXMgd2hldGhlciBOVFAgZXZl ciByZWFkcyBiYWNrIHRoZSB2YWx1ZXMgcHJvdmlkZWQgZnJvbSB0aGUga2VybmVsIGNsb2NrLg0K DQpUcmFkaXRpb25hbGx5IE5UUCB3YXMgYXNzdW1lZCB0byBrbm93IGV2ZXJ5dGhpbmcgYWJvdXQg dGhlIGtlcm5lbCBjbG9jaywgYnV0IG1heWJlIHRvZGF5IHRoZSBrZXJuZWwgY2xvY2sga25vd3Mg aXRzIHByb3BlcnRpZXMgYmV0dGVyIHRoYW4gYSBnZW5lcmljIE5UUCB3aWxsLCByaWdodD8NClNv IEkgdGhpbmsgdGhlIGludGVyZmFjZSBiZXR3ZWVuIHRoZSBOVFAgY2xvY2sgbW9kZWwgYW5kIHRo ZSBrZXJuZWwgY2xvY2sgc2hvdWxkIGJlIGV4cGxhaW5lZCBhIGJpdCBiZXR0ZXIgaW4gdGhlIHVw Y29taW5nIHNwZWNpZmljYXRpb24uDQpBcyBJIHVuZGVyc3RhbmQgaXQgLCB0aGUgTlRQIGtlcm5l bCBjbG9jayBtb2RlbCBpcyBvcHRpb25hbCwgc3RpbGwuDQoNCktpbmQgcmVnYXJkcywNClVscmlj aCBXaW5kbA0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IE1pcm9zbGF2 IExpY2h2YXIgPG1saWNodmFyQHJlZGhhdC5jb20+DQo+IFNlbnQ6IE1vbmRheSwgSnVseSA3LCAy MDI1IDExOjM0IEFNDQo+IFRvOiBXaW5kbCwgVWxyaWNoIDx1LndpbmRsQHVrci5kZT4NCj4gQ2M6 IERhdmUgSGFydCA8ZGF2ZWhhcnRAZ21haWwuY29tPjsgcXVlc3Rpb25zQGxpc3RzLm50cC5vcmc7 IErDvHJnZW4NCj4gUGVybGluZ2VyIDxqdWVyZ2VuLnBlcmxpbmdlckB0LW9ubGluZS5kZT47IErD vHJnZW4gUGVybGluZ2VyDQo+IDxwZXJsaW5nZXJAbnRwLm9yZz47IFdpbmRsLCBVbHJpY2ggPHdp bmRsQG50cC5vcmc+DQo+IFN1YmplY3Q6IFtFWFRdIFJlOiBSZTogUmU6IFJlOiBEZWxheSBpbiBT d2l0Y2hpbmcgdG8gU3RyYXR1bSAxNiBBZnRlciBMb2NhbA0KPiBSZWZlcmVuY2UgTG9zcyBvbiBu dHBkIDQuMi44cDE4DQo+IA0KPiBTaWNoZXJoZWl0cy1IaW53ZWlzOiBEaWVzZSBFLU1haWwgd3Vy ZGUgdm9uIGVpbmVyIFBlcnNvbiBhdcOfZXJoYWxiIGRlcw0KPiBVS1IgZ2VzZW5kZXQuIFNlaWVu IFNpZSB2b3JzaWNodGlnIHZvciBnZWbDpGxzY2h0ZW4gQWJzZW5kZXJuLCB3ZW5uIFNpZSBhdWYN Cj4gTGlua3Mga2xpY2tlbiwgQW5ow6RuZ2Ugw7ZmZm5lbiBvZGVyIHdlaXRlcmUgQWt0aW9uZW4g YXVzZsO8aHJlbiwgYmV2b3IgU2llDQo+IGRpZSBFY2h0aGVpdCDDvGJlcnByw7xmdCBoYWJlbi4N Cj4gDQo+IE9uIEZyaSwgSnVsIDA0LCAyMDI1IGF0IDA2OjU0OjEzQU0gKzAwMDAsIFdpbmRsLCBV bHJpY2ggd3JvdGU6DQo+ID4gV2VsbCwNCj4gPg0KPiA+IFdlIGNvdWxkIHN0YXJ0IGEgZGlzY3Vz c2lvbiB3aGF0ICJVTlNZTkMiIHJlYWxseSBtZWFuczoNCj4gPiBEb2VzIGl0IG1lYW4gdGhlIGNs b2NrIGlzIGZyZWUtcnVubmluZyAobm90IHVwZGF0ZWQgYnkgdGhlIGNsb2NrIGRpc2NpcGxpbmUp LA0KPiBvciBkb2VzIGl0IG1lYW4gdGhlIGNsb2NrJ3MgZXN0aW1hdGVkIG9mZnNldCBpcyAianVz dCB0ZXJyaWJsZSIgKGxpa2UgMTYNCj4gc2Vjb25kcyk/DQo+IA0KPiBJIHRoaW5rIGluIHRoZSBj b250ZXh0IG9mIHRoZSBjbG9ja19zZWxlY3QoKSBmdW5jdGlvbiBpdCBtZWFucyB0aGVyZQ0KPiBp cyBubyBzb3VyY2Ugc2VsZWN0ZWQgYW5kIHRoZSBjbG9jayBjYW5ub3QgYmUgdXBkYXRlZC4gVGhl IHNlbGVjdGlvbg0KPiBpdHNlbGYgZG9lc24ndCBjaGFuZ2UgdGhlIHN0YXR1cyBvZiB0aGUgY2xv Y2suIElmIGl0IHdhcyBwcmV2aW91c2x5DQo+IGNvbnNpZGVyZWQgdG8gYmUgc3luY2hyb25pemVk LCBpdCB3aWxsIHN0aWxsIGJlIHN5bmNocm9uaXplZC4NCj4gDQo+ID4gV2l0aCB0aGUgZm9ybWVy IGRlZmluaXRpb25zIGl0J3MgbGlrZWx5IHRoYXQgYW4gaXNzdWUgaXMgZGlzY292ZXJlZCBlYXJs aWVyIGJ5DQo+IG1vbml0b3JpbmcgSU1ITy4NCj4gDQo+IFRoZSBtb25pdG9yaW5nIGNhbiBjaGVj ayB0aGUgcmVhY2hhYmlsaXR5IGRpcmVjdGx5IGFuZCBkaXNjb3ZlciB0aGUNCj4gaXNzdWUgZXZl biBzb29uZXIsIG5vIG5lZWQgdG8gd2FpdCBmb3IgdGhlIG9ycGhhbiB0aW1lb3V0IHRvIGFjdGl2 YXRlDQo+IGFmdGVyIHRoZSBzb3VyY2UgYmVjb21lcyB1bnJlYWNoYWJsZS4NCj4gDQo+IC0tDQo+ IE1pcm9zbGF2IExpY2h2YXINCg0K

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)