Re: Need help determining sliced archive corruption
Denis Corbin via Dar-support <[email protected]> Fri, 19 Jun 2026 17:56:45 +0200
| Newsgroups | gmane.comp.sysutils.backup.dar.support |
|---|---|
| Message-ID | <[email protected]> |
TGUgMTgvMDYvMjAyNiDDoCAyMjo0NSwgbWFubmlubyBhIMOpY3JpdMKgOgo+IEhpIERlbmlzLAoK SGkgTWFubmlubywKCj4gCj4gV2UgaGF2ZSBwb3dlcmVkIGRvd24gYm90aCBzeXN0ZW1zIGFuZCBy YW4gbWVtdGVzdDg2KyBmb3Igb25lIGZ1bGwgcGFzcy4gCj4gTm8gUkFNIGVycm9ycyB3ZXJlIGRl dGVjdGVkLgoKR29vZCB0aGluZy4gVGhhbmtzIGZvciBoYXZpbmcgdGFrZW4gdGhlIHRpbWUgdG8g dGVzdCBpdC4gVGhpcyBtZWFucyBhbHNvIAp0aGF0IHRoZSBoYXNoICgtLWhhc2gpIGdlbmVyYXRl ZCBieSBkYXIgc2hvdWxkIGJlIHNpZ25pZmljYW50LCBhcyB0aGV5IAphcmUgY29tcHV0ZWQgaW4g bWVtb3J5LCB0aHVzIHlvdSBjYW4gZnVydGhlciBrbm93IHdoZXRoZXIgc3RvcmFnZSBoYXMgCmJy b3VnaHQgc29tZSBjb3JydXB0aW9uIG9yIG5vdC4KCj4gCj4gSnVzdCBiZWZvcmUgdGhlIHNodXRk b3duLCBvbmUgb2YgdGhvc2Ugc3lzdGVtcyBoYXMgY3JlYXRlZCBhIGZ1bGwgZGFyIAo+IGFyY2hp dmUgd2l0aCB0aGUgc2FtZSBraW5kIG9mIGNvcnJ1cHRpb24gKGRpcmVjdCBtb2RlIGRvZXNuJ3Qg d29yaywgLXQgCj4gLTAgcmVwb3J0cyA1IENSQyBlcnJvcnMpLiBBZnRlciBwb3dlcmluZyBpdCBv biBhbmQgbWFudWFsbHkgcnVubmluZyBmdWxsIAo+IGRhciBiYWNrdXAsIGEgdmFsaWQgYXJjaGl2 ZSB3YXMgcHJvZHVjZWQuCgp0aGlzIGlzIHF1aXRlIHdlaXJkLi4uIHdlIGdldCBjbG9zZSB0byB0 aGUgaW52b2NhdGlvbiBvZiB0aGUgY29zbWljIApwYXJ0aWNsZSB0aGF0IGhhdmUgY2hhbmdlZCBz b21ldGhpbmcgc29tZXdoZXJlIGluIHNvbWUgbWVtb3J5IHJlc2lkZW50IApjb2RlLi4uIChJJ20g YWxtb3N0IGtpZGRpbmchKQoKPiAKPiBTaW5jZSB3ZSBzZWVtIHRvIGJlIG91dCBvZiBpZGVhcywg SSB3aWxsIGhhdmUgdG8ga2VlcCBhbiBleWUgb24gdGhlIAo+IGJhY2t1cHMgY29taW5nIGZyb20g dGhlc2UgdHdvIHN5c3RlbXMgYW5kIGxldCB5b3Uga25vdyBpZiBpdCBoYXBwZW5zIAo+IGFnYWlu LiBJIGhhdmUgZW5hYmxlZCAtLWhhc2ggYW5kIHdlIG5vdyBrbm93IHRoYXQgdGhlIFJBTSBpcyBm aW5lIHNvIAo+IHdlJ2QgYmUgYSBzdGVwIGZvcndhcmQgaWYgaXQgZG9lcyBoYXBwZW4uCgpleGFj dGx5Cgo+IAo+IE5COiB0eXBvIG9uIGRhcigxKTogIlRoZXNlIGhhc2ggZmlsZXMgY2FuIGJlIHBy b2Nlc3NlcyBieSBtZDVzdW0iIC0gcy8gCj4gcHJvY2Vzc2VzL3Byb2Nlc3NlZC8KCk9oISBJJ2xs IHdpbGwgZml4IHRoYXQgc2hvcnRseSwgdGhhbmtzIHlvdSBmb3IgdGhlIGZlZWRiYWNrLgoKWy4u Ll0KCj4gCj4+Pj4+IDIuIEJ5dGUgc2l6ZXMgb2Ygbm9uL2xhc3Qgc2xpY2VzIHdvdWxkIGFsbG93 IGJhc2ljIGludGVncml0eSBjaGVjayBidXQKPj4+Pj4gKDEpIGBmaWxlYCBkb2Vzbid0IHNob3cg dGhlbTsgKDIpIGRhciBkb2Vzbid0IHNob3cgdGhlbSBpbiAtbCAtMCBtb2RlCj4+Pj4+IChzbyB1 bmFibGUgdG8gZXh0cmFjdCBmcm9tIGludmFsaWQgZmlsZSk7ICgzKSBkYXIgLWwgLXEgd29ya3Mg b24KPj4+Pj4gaXNvbGF0ZWQgY2F0YWxvZ3VlIGJ1dCBvbmx5IHJlcG9ydHMgbm9uLWxhc3Qgc2xp Y2Ugc2l6ZSAtIGdpdmVuIG91cgo+Pj4+PiBwcm9ibGVtIGhlcmUgaXMgbGlrZWx5IGxhc3Qgc2xp Y2UgYmVpbmcgdHJ1bmNhdGVkLCBpdCBkb2Vzbid0IHJlYWxseQo+Pj4+PiBoZWxwLgo+Pgo+PiBk YXIgaGFzIG5vIG5lZWQgdG8gc2hvdyB0aGlzIGluZm9ybWF0aW9uIHRvIHdvcmsgbm9ybWFsbHks IGVpdGhlciB0aGlzCj4+IGlzIHRoZSBleHBlY3RlZCBzbGljZSBvciBhIHdhcm5pbmcgc2hvd3Mg dG8gdGhlIHVzZXJzIGZvciB0aGV5IHRha2UgdGhlCj4+IGNvcnJlY3RpdmUgYWN0aW9uLgo+IAo+ IEl0IGFscmVhZHkgc2hvd3MgYSBsb3Qgb2YgaW5mbyAoaW5jbHVkaW5nIHNpemVzKSBpbiAtbCAt cSBtb2RlLiBXaHkgbm90IAo+IG1ha2UgaXQgYXZhaWxhYmxlIGluIHNlcXVlbnRpYWwgcmVhZCBt b2RlPwoKYmVjYXVzZSB0aGlzIGluZm9ybWF0aW9uIGlzIG5vdCBzdG9yZWQgaW5zaWRlIHRoZSBh cmNoaXZlIGRhdGEsIGJ1dCAKZm91bmQgaW4gdGhlIG1ldGFkYXRhIChoZXJlIHRoZSBmaWxlbmFt ZXMpIHdpdGggaW4gYWRkaXRpb24gdGhlIHNpZGUgCmVmZmVjdCBvZiBjb2RlIG1vZHVsYXJpdHk6 CgpGb2xsb3dzIHRoZSBtb2R1bGFyaXR5IGV4cGxhaW5lZCBpbiBhIGxvbmcgYW5zd2VyLCBza2lw IG92ZXIgaXQgaWYgeW91IApkb24ndCB3YW50IHRvIGtub3duIHRoZSBsaWJkYXIgaW50ZXJuYWxz OgoKYXQgdGhlIGJvdHRvbSBmbG9vciB0YWtlcyBwbGFjZSBlaXRoZXI6Ci0gYSBzYXIgb2JqZWN0 IChzZWdtZW50IGFuZCByZWFzc2VtYmx5KSB3aGljaCBtYW5hZ2VzIHNsaWNlcyBhbmQgZXhwb3Nl cyAKdG8gdGhlIHVwcGVyIGxldmVsIGEgdmlydHVhbCBsYXJnZSBmaWxlCi0gb3IgYSB0cml2aWFs X3NhciBvYmplY3QsIHdoaWNoIG1pbWljcyB0aGUgc2FyIGJlaGF2aW9yIHdoZW4gdGhlIGRhdGEg CmlzIHJlYWQgZnJvbSBhIHBpcGUKLSBhIHphcGV0dGUgd2hpY2ggaXMgYSByZW1vdGUgY29udHJv bCBvZiBhIHNhciBvciB0cml2aWFsX3NhciBob3N0ZWQgaW4gCmRhcl9zbGF2ZSBwcm9ncmFtLgoK QXQgdGhlIG5leHQgZmxvb3JzLCB5b3Ugd2lsbCBmaW5kIHNvbWUgb3IgYWxsIHBvc3NpYmxlIG9w dGlvbnM6Ci0gYW4gZW5jcnlwdGlvbiBsYXllciAob2YgYSBjYWNoZSBsYXllciBpZiBubyBlbmNy eXB0aW9uIGlzIHVzZWQpCi0gZXNjYXBlIGxheWVyIHdoaWNoIGFkZHMvcmVhZCB0YXBlIG1hcmsg bmVlZGVkIHRvIGludGVybGFjZSBmaWxlJ3MgZGF0YSAKYW5kIHRoZWlyIG1ldGFkYXRhCi0gY29t cHJlc3Npb24gbGF5ZXIgb24gdG9wLgoKVGhpcyBzdGFjayBvZiBvYmplY3RzLCByZWFkaW5nIGZy b20gZWFjaCBvdGhlcnMsIGlzIHByb3ZpZGVkIHRvIGFuIAphcmNoaXZlIG9iamVjdCAod2hpY2gg cmVhbGl6ZXMgdGhlIGZsb29yIDMgdG8gNiBkZXBlbmRpbmcgb24gdGhlIApleGlzdGVuY2Ugb2Yg bGF5ZXJzIGJlbG93IGl0KSBhbmQgdGhpcyBvYmplY3QganVzdCBoYXZlIGFjY2VzcyB0bzoKLSB0 aGUgdW5jaXBoZXJlZCwgZGVzaW50ZXJsYWNlZCwgZGVjb21wcmVzc2VkIGRhdGEgaW4gdGhlIGZv cm0gb2YgYSAKdmlydHVhbCBzaW5nbGUgYmlnIGZpbGUgY29udGFpbmluZyBhbGwgZGF0YSBhbmQg RUEgb2YgYWxsIHNhdmVkIGZpbGVzLgotIGFuZCBhcyBhbiBvcHRpb24gKGlmIHRhcGUgbWFya3Mg YXJlIHByZXNlbnQgaW4gdGhlIGFyY2hpdmUpIGFuIGFjY2VzcyAKdG8gdGhlIGVzY2FwZSBsYXll ciB0byBzZWVrIGZvcndhcmQgKGZsb29yIDIpIGZvciB0aGUgbmV4dCBtYXJrIG9mIGEgCmdpdmVu IHR5cGUuCgpJbiBkaXJlY3QgbW9kZSB0aGUgbGlzdGluZyBwcm9jZXNzIG9ubHkgaW52b2x2ZXMg cmVhZGluZyB0aGUgY2F0YWxvZ3VlIApzdG9yZWQgaW4gbWVtb3J5LCB3aGljaCBoYXMgYmVlbiBs b2FkZWQgYnkgb3BlbmluZyB0aGUgbGFzdCBzbGljZSBhdCAKd2hpY2ggdGltZSBsaWJkYXIgY2Fu IGdldCB0aGUgbGFzdCBzbGljZSBudW1iZXIgYW5kIGl0cyBzaXplLCB3aGljaCBub25lIAphcmUg c3RvcmVkIGluIHRoZSBhcmNoaXZlLCBiZWNhdXNlIHN0b3JpbmcgdGhlbSBtaWdodCBjaGFuZ2Ug dGhlbSBpZiBmb3IgCmV4YW1wbGUgdGhpcyBhZGRpdGlvbiB3b3VsZCBjcmVhdGUgYSBuZXcgc2xp Y2UuCgpJbiBzZXF1ZW50aWFsIHJlYWQgbW9kZSwgYXQgdGhlIHRvcCBvZiB0aGUgc3RhY2sgdGhl IGFyY2hpdmUgYXZvaWRzIApyZWFkaW5nIGFueSBmaWxlc3lzdGVtIG1ldGFkYXRhLCBpdCBkb2Vz IG5vdCBzZWVrKCkgZm9yd2FyZCBvciBiYWNrd2FyZCAKaW4gdGhpcyB2aXJ0dWFsIGJpZyBmaWxl LCBidXQganVzdCByZWFkKCkuIEV2ZW50dWFsbHkgaXQgdXNlcyB0aGUgaGFuZGxlIApwcm92aWRl ZCBieSB0aGUgZXNjYXBlIGxheWVyIHRvIHJlYWQgZm9yd2FyZCB1cCB0byB0aGUgbmV4dCB0YXBl IG1hcmsgb2YgCmEgZ2l2ZW4gdHlwZSAodG8gZmV0Y2ggdGhlIG5leHQgZmlsZSBtZXRhZGF0YTog ZmlsZW5hbWUsIG93bmVyc2hpcCwgCnBlcm1pc3Npb24sIGRhdGVzLi4uKSBzdG9yZWQgaW4tYmFu ZC4gQnV0IGFzIHRoZSBzdGFjayBtYXkgYmUgc2l0dGluZyBvbiAKYSBuYW1lZCBvciBldmVuIGFu b255bW91cyBwaXBlIGZvciB3aGljaCB0aGVyZSBpcyBub3Qgc3VjaCBmaWxlc3lzdGVtIAptZXRh ZGF0YSBhcyB0aGUgZmlsZW5hbWUsIHRoZSBjb2RlIGF2b2lkcyBzZWVraW5nKCkgYXQgYSBnaXZl biBwb3NpdGlvbiAKYW5kIHdvcmtzIHRoZSBzYW1lIHdoYXRldmVyIHRoZSB1bmRlcm5lYXRoIHN0 YWNrIGNvbnRlbnQgaXMgKHNsaWNlZCwgCnVuc2xpY2VkLCBwaXBlLCByZW1vdGUgY29udHJvbCBv ZiBkYXJfc2xhdmUpLgoKTW9yZW92ZXIsIGJvdGggYXBwcm9hY2hlcyBzaGFyZSB0aGUgc2FtZSBm aWx0ZXJpbmcgY29kZSAoaXRzIG9uZSBsZXZlbCAKYWJvdmUgdGhlIGFyY2hpdmUpIGFuZCBoZXJl IHRoZSBiZWxvdyBsYXllcnMgYXJlIGNvbXBsZXRlbHkgYWJzdHJhY3RlZC4KCkl0IG9ubHkgaGFz IGFjY2VzcyB0byB0aGUgY2F0YWxvZ3VlIChvciB0aGUgZXNjYXBlX2NhdGFsb2d1ZSBvYmplY3Qg aW4gCnNlcXVlbnRpYWwtcmVhZCBtb2RlKSByZWFkIHRoZSBuZXh0IGVudHJ5LCBjb25zaWRlciB0 aGUgZmlsdGVyIHVzZWQgCihiYXNlZCBvbiBmaWxlbmFtZSwgcGF0aCwgRUEuLi4pIGFuZCBldmVu dHVhbGx5IGRvIHNvbWV0aGluZyB3aXRoIGl0IAoobGlzdGluZyBvciBmZXRjaGluZyB0aGUgZGF0 YSBmb3IgdGVzdGluZywgcmVzdG9yYXRpb24sLi4uKSBiZWZvcmUgCmxvb3Bpbmcgd2l0aCB0aGUg bmV4dCBhcmNoaXZlIGVudHJ5LgoKV2hhdCBpcyBhYnN0cmFjdGVkIGF0IHRoaXMgbGF5ZXIgaXMg dGhlIHdheSB0aGUgc2F2ZWQgZmlsZSBtZXRhdGFkYSBpcyAKZmV0Y2hlZDoKLSBpbiBkaXJlY3Qg bW9kZSB0aGlzIGlzIGFscmVhZHkgbG9hZGVkIGluIG1lbW9yeSBpbiB0aGUgY2F0YWxvZ3VlIApv YmplY3QsIHRoaXMgaXMganVzdCBhIG1lbW9yeSByZWFkIGluIHRoaXMgZGF0YS1zdHJ1Y3R1cmUu Ci0gaW4gc2VxdWVudGlhbC1yZWFkIG1vZGUsIHRoZSBlc2NhcGVfY2F0YWxvZ3VlIHdoZW4gYXNr ZWQgZm9yIHRoZSBuZXh0IAplbnRyeSwgZHJpdmVzIHRoZSBlc2NhcGVfbGF5ZXIgdG8gcmVhZCgp IHVwIHRvIHRoZSBuZXh0IG1hcmssIGZldGNoZXMgCnJlYWRzIHRoZSBtZXRhZGF0YSBhbmQgYnVp bGRzIGEgY2F0YWxvZ3VlIGluIG1lbW9yeSBkdXJpbmcgdGhpcyBwcm9jZXNzLgooZXNjYXBlX2Nh dGFsb2d1ZSBpbmhlcml0cyBmcm9tIGNsYXNzIGVzY2FwZSkuCgpJbiBzZXF1ZW50aWFsIHJlYWQg bW9kZSB3aGVuIGxpc3RpbmcgdGhlIGRldGFpbHMgb2YgYW4gYXJjaGl2ZSAoLWwgLXEpLCAKdGhl IG9mZnNldCBhbmQgc2l6ZSBvZiB0aGUgbGFzdCBzbGljZSBhcmUgbm90IGF2YWlsYWJsZSBiZWNh dXNlIHRoZSAKYmVsb3cgbGF5ZXIgbWF5IGJlIGp1c3QgYSBwaXBlIG5vciBhIGZpbGUgYW5kIHRo aXMgY29kZSBtdXN0IHdvcmtzIHRoZSAKc2FtZSBvbiBwaXBlcywgc2luZ2xlIHNsaWNlZCwgbXVs dGktc2xpY2VkIGFyY2hpdmUgb3IgcmVtb3RlIGNvbnRyb2wgZm9yIApkYXJfc2xhdmUuCgpTbyB5 ZXMsIHRoaXMgaXMgYSBsb25nIGV4cGxhbmF0aW9uIHRvIHNheSBJIHdpbGwgbm90IGJyZWFrIHRo aXMgCmFic3RyYWN0aW9uIG1ha2luZyBhIGhvbGUgaW4gYWxsIHRoZSBmbG9vcnMgdG8gZXhwb3Nl IHNvbWV0aGluZyB0aGF0IGhhcyAKbm90IHRvIGJlIGtub3cgYXQgdGhpcyBhIGhpZ2hlciBsZXZl bC4gIEhhdmluZyBhYnN0cmFjdGlvbiBiZXR3ZWVuIHBhcnRzIApvZiBjb2RlIGVhc2UgbWFpbnRl bmFuY2UsIGV2b2x1dGlvbiBhbmQgcmVkdWNlIHRoZSByaXNrIG9mIGJ1Z3MuIFNvIEknbSAKc29y cnkgSSdsbCBub3QgYnJlYWsgdGhhdC4KCkhlcmUgSSB3aWxsIHJhdGhlciBoaWRlIGJlaGluZCB0 aGUgImRlc2lnbiIgcHJpbmNpcGxlIGFuZCB0aGUgZmFjdCBhIApkZXNpZ24gaXMgYSBjaG9pY2Us IGEgcG9saWN5LgoKClsuLi5dCgo+Pj4KPj4+IE9rYXksIHRoZSBhYmlsaXR5IHRvIHZpZXcgdGhl IGRldGFpbHMgb2Ygc2xpY2UtbGF5b3V0IGluIC0wIG1vZGUgd291bGQKPj4+IGJlIHdlbGNvbWUu IEknZCBzYXkgYW55IGhlYWRlciBpbmZvIGF2YWlsYWJsZSB0byBkYXIgc2hvdWxkIGJlIG1hZGUK Pj4+IHZpc2libGUgb24gZXF1YWwgdGVybXMuCj4+Cj4+IEkgZ3Vlc3Mgd2hlbiB5b3UgZHJpdmUg YSBjYXIsIHlvdSBkb24ndCBzZWVuIGFsbCB0aGUgaW50ZXJuYWwgc2Vuc29yCj4+IHZhbHVlcyAo dGhlcmUgaXMgYSBsb3Qgb2YgdGhlbSBpbiB0b2RheSdzIGNhciksIGJ1dCBvdmVyIHRoZSBjbGFz c2ljYWwKPj4gZmV3IGluZGljYXRvcnMgKG9pbCB0ZW1wZXJhdHVyZSwgc3BlZWQsIG1vdG9yIFJQ TSwuLi4pIHRoaXMgaXMgb25seSB3aGVuCj4+IHNvbWV0aGluZyB3cm9uZyBoYXBwZW5zIHRoYXQg dGhlc2UgaW50ZXJuYWwgc2Vuc29ycyB0cmlnZ2VyIGFuIGFsYXJtIG9uCj4+IHlvdXIgY2FyIGRh c2hib2FyZCBpbiBodW1hbiB1bmRlcnN0YW5kYWJsZSBmb3JtLCBubz8KPiAKPiBUaGlzIGlzIHdo eSBJJ20gYWx3YXlzIGFkZGluZyAiaW4gLTAgbW9kZSIuIFRoaXMgbW9kZSBpcyBleGFjdGx5IGZv ciAKPiAid2hlbiBzb21ldGhpbmcgd3JvbmcgaGFwcGVucyIsIHJpZ2h0PwoKTm8uIFRoZSBzZXF1 ZW50aWFsLXJlYWQgbW9kZSBpcyBtYWlubHkgdG8gY29wZSB3aXRoIGRldmljZXMgdGhhdCBkbyBu b3QgCnByb3ZpZGUgZGlyZWN0IGFjY2VzcyBtb2RlIHRvIGEgZ2l2ZW4gb2Zmc2V0IG9mIGEgZmls ZS4gSXQgd2FzIAphYnNvbHV0ZWx5IG5vdCBwYXJ0IG9mIHRoZSBpbml0aWFsIGRlc2lnbiBidXQg Y291bGQgYmUgYWRkZWQgLS0tIHRoYW5rcyAKdG8gbGliZGFyIGludGVybmFsIGFic3RyYWN0aW9u cyBhbmQgbW9kdWxhcml0eSAtLS0gdG8gYWRkcmVzcyBtYWlubHkgCnRhcGUgc3VwcG9ydCBhbmQg YXMgYSBzaWRlIHVzZSBjYXNlIHRoZSByZWFkaW5nIHRocm91Z2ggYW55IHR5cGUgb2YgCnBpcGVk IGRhdGEuCgpUb2RheSBpdCBpcyBkaXNjb3VyYWdlZCB0byByZW1vdmUgdGFwZSBtYXJrcyB3aGls ZSB0aGlzIHdvdWxkIHNwZWVkIHVwIAp0aGUgYmFja3VwIGFuZCByZWFkaW5nIHByb2Nlc3Nlcywg YmVjYXVzZSB0YXBlIG1hcmtzICh3aXRoIHRoZSBtZXRhZGF0YSAKdGhhdCBmb2xsb3dzKSBjYW4g YWxzbyBiZSB1c2VkIHRvIHJlYnVpbGQgdGhlIGludGVybmFsIGNhdGFsb2d1ZSBvZiBhIAp0cnVu Y2F0ZWQgYXJjaGl2ZSAoLXkgb3B0aW9uKSwgaXQgcHJvdmlkZXMgc2F2ZWQgZmlsZXMgbWV0YWRh dGEgCnJlZHVuZGFuY3kgd2l0aGluIGEgZ2l2ZW4gYXJjaGl2ZS4KCkhvd2V2ZXIgeW91IHNob3Vs ZCBjb25zaWRlciB0aGUgc2VxdWVudGlhbC1yZWFkIG1vZGUgYXMgcmVzdHJpY3RlZCBtb2RlIApv ZiBvcGVyYXRpb24gKGR1ZSB0byB0aGUgdGFwZS9waXBlIGNvbnRleHQgdGhhdCBpcyB0aGUgdGFy Z2V0IGhlcmUpLiBUaGUgCmRpcmVjdCAoYW5kIG9yaWdpbmFsKSBtb2RlIG9mIG9wZXJhdGlvbiBp cyBtdWNoIG1vcmUgZWZmaWNpZW50IGFzIGl0IApkaXJlY3RseSByZWFkcyBhbmQgb25seSByZWFk cyB0aGUgbmVlZGVkIGRhdGEgZm9yIHJlc3RvcmF0aW9uLCB0ZXN0aW5nLCAKbGlzdGluZywgZGlm ZmluZywuLi4gZXNwZWNpYWxseSB3aGVuIHVzaW5nIGZpbHRlcmluZyBtZWNoYW5pc21zLgoKPiAK Pj4gRm9yIGRhciB0aGlzIGlzIHRoZSBzYW1lLCBmaXJzdCBpdCB3b3VsZCBuZWVkIGEgbG90IG9m IHdvcmsgdG8gZXhwb3NlCj4+IGV2ZXJ5dGhpbmcgYW5kIHNlY29uZCBpdCB3b3VsZCBsZWFkIHRv IGFuIHVucmVhZGFibGUgb3V0cHV0LCBkYXIgaXMKPj4gYWxyZWFkeSB0b28gbXVjaCB0YWxrYXRp dmUgdG8gbXkgc3RhbmRwb2ludCBhbmQgSSBndWVzcyB0byB0aGUgY29tbW9uCj4+IG9waW5pb24u Cj4gCj4gVmVyYm9zZSBoZWFkZXIgaW5mbyBvdXRwdXQgaXMgbWVhbnQgZm9yIHNwZWNpZmljIG1v ZGVzICgtbCAtcSksIG5vdCAKPiByZWd1bGFyIG1vZHVzIG9wZXJhbmRpLgoKSSd2ZSBhZGRlZCB0 aGUgZm9sbG93aW5nIGluIHRoZSBUT0RPIGxpc3QgKGF0IHNvdXJjZWZvcmdlKSA6IGV4cG9zZSB0 aGUgCmludGVybmFsX25hbWUgYW5kIGRhdGFfbmFtZSBhIGdpdmVuIGFyY2hpdmUgaW4gdGhhdCAt bCAtcSBtb2RlIChvciAtbCAKLXYpLiBUaGlzIHdpbGwgYmUgYSBwZXIgYXJjaGl2ZSBpbmZvcm1h dGlvbiBhbmQgbm90IHBlciBzbGljZSwgYXMgZGFyIApkb2VzIG5vdCBoYW5kbGUgc2xpY2VzIGlu ZGl2aWR1YWxseS4KCj4gCj4+IEFub3RoZXIgbWlzdGFrZSB5b3UgYXBwYXJlbnRseSBkbyBpcyB0 byBjb25zaWRlciBkYXIgd291bGQgbWFuaXB1bGF0ZSBhCj4+IHNsaWNlIGluZGl2aWR1YWxseS4g RGFyIG1hbmlwdWxhdGUgYXQgb25jZSBhIHNldCBvZiBzbGljZSwgKmJ5IGRlc2lnbiouCj4+IFVz aW5nIHRoZSBzZXF1ZW50aWFsLXJlYWQgbW9kZSB0byBmZWVkIGEgYXJiaXRyYXJ5IHNsaWNlIGlu IHRoZSBob3BlIHRvCj4+IGdldCBzb21lIGluZm9ybWF0aW9uIG9mIGl0IGlzIGp1c3QgbWlzdXNl IG9mIGRhci4KPiAKPiBJIG5ldmVyIHNhaWQgSSB3YW50ZWQgdG8gZmVlZCByYW5kb20gc2xpY2Vz IHRvIGRhci4gSSBvbmx5IHNhaWQgdGhhdCAKPiAidGhlIGFiaWxpdHkgdG8gdmlldyB0aGUgZGV0 YWlscyBvZiBzbGljZS1sYXlvdXQgaW4gLTAgbW9kZSB3b3VsZAo+IGJlIHdlbGNvbWUiLiBDdXJy ZW50bHksIC1sIC1xIHdvcmtzIGJ1dCAtbCAtcSAtMCBkb2Vzbid0LCBldmVuIGlmIEkgZmVlZCAK PiBpdCB0aGUgZmlyc3Qgc2xpY2UuCgpPSywgSSBtaXN1bmRlcnN0b29kIHdoYXQgeW91IGV4cGVj dGVkIHRvIGRvLCBzb3JyeS4KClsuLi5dCgo+Pgo+PiBJZiBieSAiYnVja2V0IiB5b3UgbWVhbiB0 aG9zZSBvZiBhbiBTMyBzdG9yYWdlIG9yIEF6dXJlIEJsb2IgU3RvcmFnZSwKPj4gd2h5IG5vdCB1 c2luZyB0aGUgbWV0YWRhdGEgeW91IGNhbiBhc3NpZ24gdG8gdGhlc2Ugb2JqZWN0cyB0byByZWNv cmQgdGhlCj4+IHNsaWNlIGluZm9ybWF0aW9uPz8/Cj4+Cj4+IFRoaXMgd291bGQgcHJldHR5IG1h a2Ugc2Vuc2UsIG5vPwo+IAo+IFdlIGRvbid0IHVzZSBTMywgd2UgdXNlIGEgaG9tZWJyZXcgc3lz dGVtLiBJIG9ubHkgdXNlZCB0aGUgdGVybSAiYnVja2V0IiAKPiBhcyBvdXIgc3lzdGVtIHNvbWV3 aGF0IHJlc2VtYmxlcyBhbiBvYmplY3Qgc3RvcmFnZS4KCkkgdGhpbmsgeW91ciBob21lYnJldyBz eXN0ZW0gaXMgbWlzc2luZyBtZXRhZGF0YSBzdXBwb3J0LiBXaXRob3V0IGl0LCAKeW91IGFyZSBz dHVjayB0byB0aGUgdGhlbSBzYW1lIGFwcHJvYWNoIGFzIHRhcGVzIGFuZCBhbGwgdGhlIApyZXN0 cmljdGlvbnMgaXQgaGFzLiBJbiBmYWN0LCB5b3VyIGhvbWVicmV3IHN5c3RlbSBpcyBwcm9iYWJs eSBldmVuIG1vcmUgCnJlc3RyaWN0aXZlIHRoYW4gYSB0YXBlIHN5c3RlbSwgYXMgdXNlcnMgdXN1 YWxseSBhZGQgYSBzdGlja2VyIG9uIHRoZWlyIAp0YXBlcyB3aGVuIG1hbnVhbGx5IGhhbmRsZWQg b3IgdGhlIHJvYm90IGlzIGhvcGVmdWxseSBhYmxlIHRvIGxvY2F0ZSAKd2hpY2ggdGFwZSB0byBs b2FkIHdpdGhvdXQgcmVhZGluZyBlYWNoIHRhcGUgb25lIGJ5IG9uZSB0byBmaW5kIHRoZSBnb29k IApvbmUhIC0+IG1ldGFkYXRhLgoKTm93LCBJJ20gc29ycnkgdG8gc2F5IHNvIGJ1dCwgaWYgeW91 IG5lZWQgdG8ga2VlcCB0aGlzIG1ldGFkYXRhIAphc3NvY2lhdGVkIHRvIHRoZSBzbGljZSBkYXRh IChtZXRhZGF0YSBkYXIgcmVsaWVzIG9uIGJ1dCB3aGljaCB5b3UgCnN1cHByZXNzZWQgd2hlbiB5 b3UgcmVtb3ZlZCB0aGUgc2xpY2UgZmlsZW5hbWVzKSB0aGF0J3MgeW91ciBkdXR5IHRvIApoYXZl IHlvdXIgaG93ZWJyZXcgc3RvcmFnZSBzeXN0ZW0gY2FycnlpbmcgdGhpcyBuZWVkLCBlaXRoZXIg Ynk6Ci0gd3JhcHBpbmcgdGhlIHNsaWNlcyB3aXRoaW4gYSBmaWxlIGZvcm1hdCB0aGF0IGNvbnRh aW5zIHRoZSBzbGljZSAKbnVtYmVyIGZvbGxvd2VkIGJ5IHRoZSBzbGljZSBjb250ZW50ICh0aG91 Z2h0IHRoaXMgd291bGQgYmUgaW5lZmZpY2llbnQgCmFzIGl0IHdvdWxkIHJlcXVpcmUgdG8gbG9h ZCBhbmQgcmVhZCBhIHNsaWNlIHRvIGtub3cgd2hldGhlciB0aGlzIGlzIHRoZSAKZ29vZCBvbmUp LAotIG9yIGFkZCBzdXBwb3J0IGZvciBtZXRhZGF0YSBiZXNpZGUgdGhlIGZpbGUvc2xpY2UgZGF0 YSB0byBzdG9yZSB0aGlzIAppbmZvcm1hdGlvbiAoc2xpY2UgbnVtYmVyKS4KCkRvaW5nIHRoaXMg aW5zaWRlIGRhciBmb3JtYXQgd291bGQgbGVhZCB0byBhZGQgYSBmaW5pdGUgc2l6ZSBmaWVsZCB0 byAKc3RvcmUgc2xpY2UgbnVtYmVyLCB3aGljaCB3b3VsZCBsaW1pdCB0aGUgbnVtYmVyIG9mIHNs aWNlcyBhIApiYWNrdXAvYXJjaGl2ZSBjYW4gaGF2ZSwgd2hpY2ggSSBoYXZlIG1hbmFnZWQgdG8g YXZvaWQgc2luY2UgZGF5IDEgLS0tIApzZWUgaW5maW5pbnQgZmFtaWx5IGNsYXNzZXMgdG8gaGFu ZGxlIGFyYml0cmFyaWx5IGxhcmdlIGludGVnZXJzLCBhIHBvc3QgClkySyBzeW1wdG9tIDspLgoK Wy4uLl0KCj4+IFNvIHRvIGZhY2Ugc29tZSBkYXRhIGNvcnJ1cHRpb24sIHlvdSBhc2sgYWxsIGFw cGxpY2F0aW9ucyB0byBhZGQgdGhlCj4+IG5lY2Vzc2FyeSByZWR1bmRhbnQgaW5mb3JtYXRpb24g dGhhdCBjb3VsZCBiZSBsb3N0IGJ5IHRoZSBzdG9yYWdlIAo+PiBzb2x1dGlvbj8KPiAKPiBJIG1l cmVseSBwcm9wb3NlIHRvIGZ1cnRoZXIgcmVjb3ZlcnkgbW9kZSAoLTApIGFscmVhZHkgZXhpdGlu ZyBpbiBkYXIuIAo+IFdoeSB3b3VsZCBkYXIgYWRkIHRhcGUgbWFya3MgaWYgaXQgdHJ1c3RlZCB0 aGUgc3RvcmFnZT8gCgpOb3QgYSBsYWNrIG9mIHRydXN0IHRvd2FyZCB0aGUgc3RvcmFnZSwgYnV0 IGEgbGFjayBvZiBmZWF0dXJlOiBUYXBlIAptYXJrcyBhcmUgdXNlZCB0byBpZGVudGlmeSB0aGUg bmV4dCBmaWxlIGp1c3QgYnkgdXNpbmcgdGhlIHJlYWQoKSBzeXN0ZW0gCmNhbGwsIHRoaXMgaXMg bmVlZGVkIHdoZW4gdGhlIHVuZGVybHlpbmcgbWVkaWEgaGFzIG5vdCBzdXBwb3J0IHRvIHNlZWso KSAKdG8gYSBnaXZlbiBvZmZzZXQgKHBpcGVzKSBvciBoYXMgc28gcG9vciBwZXJmb3JtYW5jZSBk b2luZyBzbyB0aGF0IGl0IGlzIApiZXR0ZXIgdXNpbmcgcmVhZCAodGFwZSBkcml2ZXMpLgoKPiBX aHkgd291bGQgaXQgYWRkIAo+IFVVSURzIGludG8gZXZlcnkgc2xpY2UgaGVhZGVyIGlmIHlvdSBp bnNpc3Qgb24gc3RvcmFnZSBpbnRlZ3JpdHk/IAoKdG8gYXZvaWQgdXNlcnMgKGFzIEkgYW0pIHRv IG1ha2UgYSBtaXN0YWtlIG9mIG1peGluZyBzbGljZXMgb2YgZGlmZmVyZW50IAphcmNoaXZlcyB3 aXRob3V0IGJlaW5nIG5vdGlmaWVkLgoKPiBXaHkgCj4gaW1wbGVtZW50IC0wIGluIHRoZSBmaXJz dCBwbGFjZSB3aXRoIHRoaXMgbWluZHNldD8KCmFzIHdyaXR0ZW4gYWJvdmUgLTAgbW9kZSB3YXMg YWRkZWQgbGF0ZXIgdG8gYWRkcmVzcyB0YXBlIGFuZCBwaXBlIHN1cHBvcnQuCgo+IAo+PiBJIHRo aW5rIHlvdSBoYXZlIHRvIHRha2UgZGFyIGZvciB3aGF0IGl0IGlzOiBhIHRvb2wgdGhhdCBleHBl Y3RzIHNsaWNlcwo+PiBuYW1lcyBvZiB0aGF0IGZvcm1hdCA8YmFzZW5hbWU+LjxzbGljZSBudW1i ZXI+LmRhciB3aGljaCBpcyBob3dldmVyCj4+IGZsZXhpYmxlIGVub3VnaCBmb3IgdGhvc2Ugc2xp Y2VzIGJlIGZlZCB0aHJvdWdoIHBpcGVzIG9yIG90aGVyCj4+IG1lY2hhbmlzbXMsIGxpa2UgZmls ZSByZWdlbmVyYXRpb24gYmFzZWQgb24gYmxvYnMgb3Igb3RoZXIgb3BhcXVlIGRhdGEKPj4gc3Ry dWN0dXJlIGFzIHlvdSBkZXNjcmliZWQuwqAgQnV0IHRoaXMgaXMgb24gdGhlIHN0b3JhZ2Ugc2lk ZSB0byBoYW5kbGUKPj4gZmFpbHVyZXMgYW5kIHByb3ZpZGUgdGhlIG5lY2Vzc2FyeSBlbnZpcm9u bWVudCB0byBhZGFwdCB0byB0aGUgdG9vbAo+PiB3aGljaCBhcmUgZXhwZWN0ZWQgdG8gYmUgdXNl ZC4uLiBub3QgdGhlIGludmVyc2UuCj4gCj4gV2h5IHN0b3JlIFVVSUQgdGhlbj8gPGJhc2VuYW1l PiBpcyBleHBlY3RlZCB0byBiZSB1bmlxdWUsIHJpZ2h0PyBXaHkgbm90IAo+IHVzZSB0aGF0LCB0 cnVzdCB0aGF0IHRoZSB1c2VyIHdpbGwgbWFrZSBzdXJlIHRvIG5hbWUgYWxsIHNsaWNlcyAKPiBj b3JyZWN0bHkgKGlmIHlvdSByZXF1aXJlIHRoYXQgdXNlciBtYWludGFpbnMgPHNsaWNlIG51bWJl cj4gaGltc2VsZiwgCj4gZXh0ZW5kaW5nIHRoaXMgcmVxdWlyZW1lbnQgdG8gPGJhc2VuYW1lPi48 c2xpY2UgbnVtYmVyPiBpcyBhbGwgdGhlIG1vcmUgCj4gbG9naWNhbCkgYW5kIGZvcmVnbyBhbnkg Y2hlY2tzIGZvciBzbGljZSBjb3JyZXNwb25kZW5jZT8KClRoaXMgaXMgbm90IGJlY2F1c2UgeW91 IGhhdmUgYSBzZWF0IGJlbHQgaW4geW91ciBjYXIgdGhhdCB5b3VyIGFyZSBmcmVlIAphbmQgc2Fm ZSB0byBidW1wIGludG8gYW55IHRyZWUuCgpUaGlzIGZlYXR1cmUgaXMgbXkgc2VhdCBiZWx0IHRv IHJlZHVjZSBteSB0aW1lIHNwZW50IGluIHN1cHBvcnQgcmVxdWVzdCAKYW5kIHRvIGVhc2UgZmF1 bHQgaXNvbGF0aW9uOiBJZiB1c2VycyBhcmUgbm90aWZpZWQgd2hlbiB0aGV5IG1peCBzbGljZXMg Cm9mIGRpZmZlcmVudCBiYWNrdXBzL2FyY2hpdmVzLCB0aGUgZG8gbm90IG5lZWQgdG8gYW5kIHVz dWFsbHkgZG9uJ3QgY29tZSAKdG8gbWUuIFRob3VnaCwgdGhpcyBtYXkgbm90IGNhdGNoIGFsbCB0 eXBlIG9mIGh1bWFuIGVycm9yIGFzIGEgc2VhdCBiZWx0IApjYW5ub3QgcHJldmVudCBhbGwgaW5q dXJpZXMsIGJldHRlciBoYXZpbmcgaXQgdGhhbiBub3RoaW5nLgoKPiAKPj4gTW9yZW92ZXIgcmVh ZGluZyBibG9icyBtZXRhZGF0YSBpcyB2ZXJ5IGxpZ2h0LCB3aGlsZSBpbnN0ZWFkIGZldGNoaW5n Cj4+IHRoZSBtYW55IG1lZ2FieXRlcyBvZiBhIG9iamVjdC9ibG9iL3NsaWNlIHRvIGp1c3QgcGFz cyBpdCB0byBhIHRvb2wKPj4gKGZpbGUgY29tbWFuZCBvciBkYXIpIHRoYXQgd291bGQgdGVsbHMg eW91IHRoaXMgaXMgbm90IHRoZSBnb29kIHNsaWNlIGlzCj4+IHVuLW9wdGltYWwgYXQgYWxsIGFu ZCBxdWl0ZSBjb3N0bHkgKCQpLCBubz8KPiAKPiBJdCBpcywgYnV0IHdlIGF2b2lkIHRoYXQgYnkg ZXhhbWluaW5nIGRhdGUgb2YgYWRtaXNzaW9uIHNpbmNlIHRoZXJlJ3MgYSAKPiBwcmVkaWN0YWJs ZSB0aW1lIGdhcCBiZXR3ZWVuIGluY29taW5nIHNsaWNlcyBhbmQgYXJjaGl2ZXMuIEkgdXNlIGBm aWxlYCAKPiBhZnRlciBmZXRjaGluZyB0aGUgZGF0YSBvbmx5IHdoZW4gaW52ZXN0aWdhdGluZyBp c3N1ZXMuCgpTb3JyeSB0byBzYXkgc28gYWdhaW4sIGJ1dCB0aGF0J3MgeW91ciBjaG9pY2UgYW5k IGRlc2lnbiAoYW5kIHBvbGljeSksIEkgCnJlc3BlY3QgaXQgYW5kIEkgd2lsbCBubyBtb3JlIGRp c2N1c3MgYWJvdXQgdGhlIG1ldGFkYXRhIHN1cHBvcnQgSSB0aGluayAKeW91ciBob21lYnJldyBz dG9yYWdlIGlzIGxhY2tpbmcuCgpPbiBteSBzaWRlIHRvbyBJIGhhdmUgbXkgZGVzaWduLCBjaG9p Y2UgYW5kIHBvbGljeSB3aXRoIGRhci9saWJkYXI6IEkgCmRvbid0IHdhbnQgdG8gc3VwcG9ydCB1 c2VyIHNwZWNpZmljL2hvbWVicmV3IHN0b3JhZ2Ugc3lzdGVtcy4KCgpbLi4uXQo+Pgo+PiBzYW1l IHJlbWFyayBhcyBhYm92ZTogdGhlIGJ1Y2tldC9vYmplY3QvYmxvYiBtZXRhZGF0YSBpcyB0aGUg bG9naWNhbAo+PiBwbGFjZSBvZiB0aGUgc2xpY2UgaW5mb3JtYXRpb24geW91IHJlbW92ZSBmcm9t IGZpbGVzeXN0ZW0gbWV0YWRhdGEgKD0KPj4gZmlsZW5hbWUpLgo+Pgo+PiBZb3UgaGF2ZSB0byBm aW5kIGEgd2F5IHRvIHRyYW5zbGF0ZSBmcm9tIGZpbGVzeXN0ZW0gbWV0YWRhdGEgdG8KPj4gUzMv YnVja2V0L29iamV0L2Jsb2IgbWV0YWRhdGEgYW5kIHZpY2UgdmVyc2EsIHRoaXMgaXMgbm90IHRo ZSBwdXJwb3NlIG9mCj4+IHRvIGRvIHRoYXQgdmVyeSBjb250ZXh0IHNwZWNpZmljIHRhc2suCj4g Cj4gWW91IHNlZW0gdG8gYmUgY29uc3RhbnRseSBtaXNpbnRlcnByZXRpbmcgbXkgd29yZHMgaW4g c3BpdGUgb2YgbWUgCj4gZXhwbGljaXRseSBzdGF0aW5nIHRoYXQgYWxsIG15IHN1Z2dlc3Rpb25z IGFyZSBjb25jZXJuaW5nIHJlY292ZXJ5IG1vZGUsIAo+IG5vdCBub3JtYWwgb3BlcmF0aW9uLiAK Cml0IHdhcyBub3QgaW50ZW50aW9uYWwsIHNvcnJ5Cgo+IFdlIGhhdmUgYmVlbiB1c2luZyBvdXIg KGFyZ3VhYmx5IHdlaXJkKSBzdG9yYWdlIAo+IHN5c3RlbSBhbG9uZyB3aXRoIGRhciBmb3Igb3Zl ciBhIGRlY2FkZSBhbmQgaXQgd29ya3MganVzdCBmaW5lIC0gd2l0aG91dCAKPiBkYXIncyBidWls dC1pbiBzbGljZSBjb3VudGVycywgZXh0cmEgVVVJRHMsIGV0Yy4gQnV0IG91ciBjdXJyZW50IHBy b2JsZW0gCj4gaGlnaGxpZ2h0ZWQgd2hhdCBJIGJlbGlldmUgaXMgYSBzaG9ydGNvbWluZyBvbiBk YXIncyBkaWFnbm9zdGljL3JlY292ZXJ5IAo+IHNpZGUgYW5kIEkgc2ltcGx5IHByb3Bvc2Ugc29t ZSBpbXByb3ZlbWVudHMgKHZlcnkgbW9kZXN0IHJlYWxseSkuCgpBcyBtZW50aW9uZWQgYWJvdmUs IEkgaGF2ZSBhZGRlZCBhIGZlYXR1cmUgcmVxdWVzdCBpbiB0aGUgdG9kbyBsaXN0IHRvIApleHBv c2UgdGhlIGludGVybmFsX25hbWUgYW5kIGRhdGFfbmFtZXMgb2YgYW4gYXJjaGl2ZSB3aGVuIHVz aW5nIC1sIC1xIAoob3IgLWwgLXYpLAoKPiBJIGV2ZW4gCj4gbWVudGlvbmVkIHRoYXQgaXQgbWln aHQgY29tZSBpbiBoYW5keSBmb3Igb3RoZXIgY2FzZXMgKGJyb2tlbiBGQVQgd2l0aCAKPiB1bmF2 YWlsYWJsZSBmaWxlIG5hbWVzKS4gQWdhaW4sIGl0IHNlZW1zIHZlcnkgaW4tbGluZSB3aXRoIHRo ZSBleGlzdGluZyAKPiB0YXBlIG1hcmtzIGFuZCBzZXF1ZW50aWFsIHJlYWRpbmcgbW9kZS4KCklm IHlvdSBuZWVkIGEgcm9idXN0IGZpbGVzeXN0ZW0gb3IgZmFjZSB0byBmaWxlc3lzdGVtIGNvcnJ1 cHRpb25zLCB0aGlzIAppcyBhIGZpbGVzeXN0ZW0gZmVhdHVyZSB0aGF0IGlzIG5lZWRlZCAoUkFJ RCwgam91cm5hbHMsIC4uLikgYnV0IGZvciAKdGhvc2UgYXMgSSBhbSB0aGF0IGRvIG5vdCB3YW50 IHNvIHJvYnVzdCBmaWxlc3lzdGVtLCB3ZSBkbyBiYWNrdXBzIDspLgoKQWRkaW5nIGEgc2xpY2Ug bnVtYmVyIGluc2lkZSBlYWNoIHNsaWNlIHdvdWxkIG5vdCBoZWxwIG11Y2g6IGlmIGEgZmlsZSAK KHNsaWNlKSBpcyByZXRyaWV2ZWQgaW4gZGlmZmVyZW50IGJsb2Nrcy9maWxlcywgZHVlIHRvIGZp bGVzeXN0ZW0gCmNvcnJ1cHRpb24sIGl0IHdpbGwgbm90IHRlbGwgeW91IGhvdyB0byBzdGljayB0 aGVtIGJhY2sgdG9nZXRoZXIsIAphc3N1bWluZyBubyBwYXJ0IGlzIG1pc3NpbmcsIHdoaWNoIGlz IGltcHJvYmFibGUgaW4gdGhhdCBjb250ZXh0LgoKPiAKPj4+PiB3aHkgb25seSA0IGJ5dGVzPyBU aGlzIHdvdWxkIGxpbWl0IHRoZSBudW1iZXIgb2Ygc2xpY2VzLi4uIGV2ZW4gaWYgCj4+Pj4gdG9k YXkKPj4+PiB5b3UgdGhpbmsgaXQgaXMgbGFyZ2UgZW5vdWdoLCB0aGlzIGlzIHRoZSBzYW1lIHdh eSBvZiB0aGlua2luZyB0aGF0IGxlZAo+Pj4+IHRvIHRoZSB5ZWFyIDIwMDAgYnVnLCB0aGUgcHJv YmxlbSBvZiB5ZWFyIDIwMzgsIHRoZSB1cHBlciBhbmQgaGlnaAo+Pj4+IG1lbW9yeSBpbiBET1Mg c29tZSBkZWNhZGVzIGFnbywgdGhlIDIgR0IgZmlsZXMgYm91bmRhcnkgKGFuZCBuZWVkIG9mCj4+ Pj4gbGFyZ2UgZmlsZSBzdXBwb3J0KS4uLiBhbmQgc28gZm9ydGguCj4+Pgo+Pj4gSSB1bmRlcnN0 YW5kIHlvdXIgcG9pbnQuIEJ1dCBldmVuIGlmIHdlIHRha2UgMSBLaUIgcGVyIHNsaWNlLCAyXjMy Cj4+PiBzbGljZXMgd291bGQgYWRkIHVwIHRvIDQuNCBUaUIgb2YgZGF0YS4uLiBhbmQgbW9yZSAi cmVhbGlzdGljIiAxIE1pQgo+Pj4gcGVyIHNsaWNlIHdvdWxkIGJlIDQuNSBQaUIuLi4gYnV0IGlm IHRoYXQgaXMgYSBjb25jZXJuLCB5b3UgY291bGQgdXNlCj4+PiA2NCBiaXRzLCB0aGF0IHdvdWxk IGJlIChsZXQgbWUgbG9vayB0aGF0IHVwIG9uIFdpa2lwZWRpYSkgYXJvdW5kIDIKPj4+IGV4YWJ5 dGVzIG9mIGRhdGEgaWYgZWFjaCBzbGljZSBvbmx5IGhlbGQgMSBieXRlIG9mIHBheWxvYWQuLi4g SSdtCj4+PiBhZnJhaWQgd2UnZCBuZWVkIG1vcmUgdGhhbiBxdWFudHVtIGNvbXB1dGVycyB0byBj cm9zcyB0aGF0IGJvdW5kYXJ5Li4uCj4+Cj4+IGFuIHNvIG5vdywgdGhlIHNtYWxsZXN0IHNsaWNl IHdoaWNoIGlzIGEgZmV3IHRlbnMgb2YgYnl0ZXMgd291bGQgYmVjb21lcwo+PiBhIGZldyBraWxv Ynl0ZXMuLi4gd2hhdCBhIHdhc3RlLi4uCj4gCj4gV2hhdCdzIHRoZSBwcmFjdGljYWwgcmVhc29u IGZvciBoYXZpbmcgb3ZlciA0IGJpbGxpb25zIG9mIHNsaWNlcywgZWFjaCBhIAo+IGZldyB0ZW5z IG9mIGJ5dGVzPyBCZXNpZGVzLCB0aGUgY291bnRlciBtYXkgYmUgcm90YXRpbmcsIGl0J3Mgb25s eSBhIAo+IGhpbnQgYW55d2F5LgoKdGhpcyBpcyB3aGF0IHRoZXkgc2F5IHdoZW4gc3RvcmluZyB5 ZWFycyBvbiAyIGRpZ2l0cyBsYXN0IGNlbnR1cnksIG9yIApzb3RyaW5nIGRhdGVzIGFzIGEgbnVt YmVyIG9mIHNlY29uZHMgc2luY2UgMTk2OSBlbmRlZCBpbiBhIDMyIGJpdCBmaWVsZHMgCih5ZWFy IDIwMzggcHJvYmxlbSwgd2UgYXJlIGdldHRpbmcgdG8gaXQuLi4pLCBhbmQgc28gZm9ydGguCgpJ IHdvdWxkIHJldmVyc2UgdGhlIHF1ZXN0aW9uOiB3aHkgbGltaXRpbmcgdGhlIG51bWJlciBvZiBz bGljZXMgYW5kIHRodXMgCnRoZSBvdmVyYWxsIGJhY2t1cCBzaXplIChiZWNhdXNlIHNsaWNlIHNp emUgZGVwZW5kcyBvbiB0aGUgdW5kZXJseWluZyAKZmlsZXN5c3RlbSBhYmlsaXR5IHRvIHN1cHBv cnQgdGhlbSkgd2hlbiB5b3UgY2FuIGF2b2lkIGl0PwoKPiAKPj4+PiBBIGJldHRlciBhcHByb2Fj aCBjb3VsZCBiZSB0byBhZGQgYSByYW5kb20gZml4ZWQgc2l6ZSBmaWVsZCBhdCBlbmQgb2YKPj4+ PiBzbGljZSBhbmQgaGF2ZSB0aGlzIHNhbWUgcmFuZG9tIHZhbHVlIGF0IHRoZSBiZWdpbm5pbmcg b2YgdGhlIG5leHQuIEJ1dAo+Pj4+IEkgZG9uJ3Qgc2VlIHRoZSB1c2UgY2FzZSBhcyBtZW50aW9u ZWQgZWFybGllciBhYm91dCBudW1iZXIgb2Ygc2xpY2VzIGluCj4+Pj4gZmlsZW5hbWVzLgo+Pj4K Pj4+IElmIHdlJ3JlIGluIHRoZSB0ZXJyaXRvcnkgd2hlcmUgMl4zMiBzbGljZXMgbWF5IG5vdCBi ZSBlbm91Z2gsIG91cgo+Pj4gcmFuZG9tIG51bWJlcnMgbWF5IG5vdCBiZSByYW5kb20gZW5vdWdo IHRvbywgZXNwZWNpYWxseSB3aXRoaW4KPj4+IG1pbGxpb25zIG9mIHNsaWNlcy4uLiBJZiB3ZSB3 ZXJlIGNob29zaW5nLCBJJ2QganVzdCB1c2UgYSBmaXhlZCBsZW5ndGgKPj4+IG51bWVyaWMgZmll bGQgZm9yIHRoZSBzYWtlIG9mIHNpbXBsaWNpdHkuIFZMUSBpZiB5b3UgbXVzdCwgYWx0aG91Z2gK Pj4+IEknZCBncmFkZSB0aGF0IGFzIGFuIG92ZXJraWxsLi4uCj4+Cj4+IHdoeSBhICJmaXhlZCBs ZW5ndGggbnVtZXJpYyBmaWVsZCIgd291bGQgYmUgZW5vdWdoIGluIHRoZSAiMl4zMgo+PiB0ZXJy aXRvcnkiIHdoaWxlIGEgInJhbmRvbSBudW1iZXIiICh3aGljaCBzaXplIGlzIHN0aWxsIHVuZGVm aW5lZCkgd291bGQKPj4gbm90Pwo+IAo+IEkgYXNzdW1lZCB0aGF0IGJvdGggZmllbGRzIHdvdWxk IGJlIG9mIHRoZSBzYW1lIHNpemUgYmVjYXVzZSBhIHJhbmRvbSAKPiBudW1iZXIgZmllbGQgdGhh dCdzIHdpZGVyIHRoYW4gYSBmaXhlZCBudW1iZXIgZmllbGQgbG9va3MgcG9pbnRsZXNzIHRvIAo+ IG1lIC0gaXQgdGFrZXMgbW9yZSBzcGFjZSwgaXQgZG9lc24ndCBndWFyYW50ZWUgdW5pcXVlbmVz cyBldmVuIHdpdGhpbiAKPiBpdHMgcmFuZ2UsIGl0IGRvZXNuJ3QgYWxsb3cgY29tcGFyaW5nIHBv c2l0aW9ucywgZXRjLiBXaGF0J3MgdGhlIAo+IGFkdmFudGFnZSBvZiBzdWNoIGEgcmFuZG9tIGZp ZWxkPwoKdGhlIGFkdmFudGFnZSBpbiB0aGF0IHBhcnRpY3VsYXIgY2FzZSBpcyB0aGUgZml4ZXMg d2lkdGggc2l6ZSwgd2hpY2ggCmhlcmUgaXMgaW50ZXJlc3RpbmcgdG8ga25vdyBhdCB3aGljaCB0 aW1lLCB3aGlsZSB3cml0aW5nIGRvd24gYSBzbGljZSwgCnlvdSBzdG9wIGFkZGluZyBkYXRhIHRv IHN0YXJ0IGFkZGluZyB0aGlzIHJhbmRvbSBmaWVsZC4KCkl0IGlzIGFsc28gbmVjZXNzYXJ5IGF0 IHJlYWRpbmcgdGltZSB0byB0cmFuc2xhdGUgdGhlIGxvY2F0aW9uIG9mIGEgCnNhdmVkIGZpbGUg ZGF0YSwgc3RvcmVkIGFzIGFuIG9mZnNldCBpbiB0aGUgdmlydHVhbCBiaWcgZmlsZSBJIGV4cGxh aW5lZCAKYWJvdmUsIGludG8gYSBzbGljZSBudW1iZXIgYW5kIG9mZnNldCBpbiB0aGF0IHNsaWNl LiBIYXZpbmcgdmFyaWFibGUgCndpZHRoIGZpZWxkIHRvIHN0b3JlIHNsaWNlcyBudW1iZXIgd291 bGQgbWFrZSBpdCBpbXBvc3NpYmxlIHdpdGhvdXQgCnJlYWRpbmcgYWxsIHNsaWNlcyBoZWFkZXIg YW5kIHRyYWlsZXJzLi4uIGFuZCBzdG9yaW5nIHNsaWNlIHNpemVzIGluIGEgCmZpeGVkIHdpZHRo IGZpZWxkIHdvdWxkIGxvb2sgbGlrZSBvbmUgc2hvb3RpbmcgYXQgaGlzIGZvb3QuCgo+IAo+PiB3 aGF0IGxlbmd0aCAoaW4gYnl0ZSwgZm9yIGV4YW1wbGUpIHdvdWxkIHlvdSBnaXZlIHRvIHRoaXMg InNpbXBsZQo+PiBjdXJyZW50IHNsaWNlIGluZGV4Ij8KPiAKPiBQcmFjdGljYWxseSwgMiBieXRl cyBhbmQgYWxsb3cgaXQgdG8gb3ZlcmZsb3cuIEkgZG9uJ3QgaGF2ZSBzdGF0aXN0aWNzIAoKdGhh dCdzIHByZWNpc2VseSB0aGUgcG9pbnQ6IGV2ZW4gdGhlIGZvbGxvd2luZyByZWZlcmVuY2VzIGRv IG5vdCByZWZsZWN0IAp0aGUgdmFyaWV0eSBvZiB1c2UgY2FzZXMgZGFyIGN1cnJlbnRseSBhZGRy ZXNzZXM6CgpodHRwOi8vZGFyLmxpbnV4LmZyZWUuZnIvZG9jL1JlZmVyZW5jZXMuaHRtbAoKSSB3 aWxsIHRoaXMgbm90IGxpbWl0IHRoaXMgdG8gYWRkcmVzcyBhIHVzZXIgc3BlY2lmaWMgY29udGV4 dC4KCj4gYnV0IEkgZG9uJ3QgdGhpbmsgNjVrKyBzbGljZXMgcGVyIGFyY2hpdmUgYXJlIGEgbm9y bSwgYW5kIGV2ZW4gaWYgdGhpcyAKPiBwcmFjdGljZSBleGlzdHMgc29tZXdoZXJlLCBhIHJvdGF0 aW5nIDE2LWJpdCBjb3VudGVyIHdvdWxkIG1ha2UgaXQgMl4xNiAKPiB0aW1lcyBsZXNzIGxpa2Vs eSB0aGF0IGFuIGluY29ycmVjdCBvcmRlcmluZyBvZiBzbGljZXMgd291bGQgZ28gCj4gdW5kZXRl Y3RlZCAoYW5kIDJeMTYgdGltZXMgZWFzaWVyIHRvIGRldGVybWluZSB0aGUgbnVtYmVyIG9mIGFu eSBnaXZlbiAKPiBzbGljZSkgY29tcGFyZWQgdG8gd2hlbiB0aGVyZSdzIG5vIHN1Y2ggY291bnRl ciBhdCBhbGwuIE9uIGRhcidzIHNpZGUsIAo+IHRoZSBjaGVjayB3b3VsZCBzaW1wbHkgZ28gZnJv bSAwIHRvIDJeMTYsIHRoZW4gb3ZlcmZsb3cgYW5kIHJlcGVhdC4KPiAKClJlZ2FyZHMsCkRlbmlz CgoKCgo=