Re: Updated dataflow semantics for RTT
Sylvain Joyeux <[email protected]> Mon, 28 Sep 2015 09:41:27 -0300
| Newsgroups | gmane.science.robotics.orocos.devel |
|---|---|
| Message-ID | <CAFENT7+QspTTN-Cvwe+Tfabv83=yyiuBUd4KStn2iV0rXOOKCA@mail.gmail.com> |
U29tZSB0aG91Z2h0cyBvbiB0aGF0IGV4ZWN1dGl2ZSBzdW1tYXJ5IChJJ20gbGlrZSBnZW9mZnJl eSwgSSBoYWQgYQpoYXJkIHRpbWUgZm9sbG93aW5nIHRoZSBmaXJzdCBlbWFpbCA6UCkKCk9uZSB0 aGluZyBJIGRlZmluaXRlbHkgd2FudCB0byB3YXJuIHlvdSBhYm91dDogZG9uJ3QgdGhpbmssIGV2 ZXIsIHRoYXQKY29kZS1nZW5lcmF0aW5nIGV2ZXJ5dGhpbmcgaXMgYSByZXBsYWNlbWVudCBmb3Ig YSB3ZWxsLWRlc2lnbmVkCmxpYnJhcnkgdGhhdCBzb2x2ZSBtb3N0IG9mIHRoZSBwcm9ibGVtcywg YWxvbmcgd2l0aCBhIGNvZGUgZ2VuZXJhdG9yCmZvciB0aGUgb25lIHBlcmNlbnQuCgpXaXRoIHRo aXMgcHJlbWlzZTogSSBhY3R1YWxseSB0aGF0IHlvdXIgcG9pbnRzIGFyZSBub3QgbWFraW5nIFJU VApvYnNvbGV0ZS4gSXQgaXMgYWN0dWFsbHkgbWFraW5nIGl0IGV2ZW4gbW9yZSByZWxldmFudCB0 aGFuIGV2ZXIuCgpSVFQgKmlzKiB0aGUgYmVzdCBzdGFydGluZyBwb2ludCB0b3dhcmRzIHNvbWV0 aGluZyB3aGVyZQpwcm9jZXNzL3RocmVhZCBwb2xpY2llcyBpcyBkZWxlZ2F0ZWQgdG8gdGhlIHRv b2xpbmcgKGVpdGhlciBhY2Nlc3NpbmcKInJhdyIgT1Mtc3BlY2lmaWMgZnVuY3Rpb25hbGl0eSBv ciBleHBvc2luZyB0aGVtIHVuZGVyIGFuCmVhc2llci10by11c2UgaW50ZXJmYWNlKS4gSXQgaXMg YWxzbyAqYWxyZWFkeSogcHJvdmlkZXMgYW4KZW5jYXBzdWxhdGlvbiBvZiBjb21wdXRhdGlvbiwg d2hpY2ggYWxsb3dzIHlvdSB0byAiaW52ZXJzZSIgdGhlCmN1cnJlbnQgdGVuZGVuY3kgYW5kIGFj dHVhbGx5IG1ha2UgeW91ciBtaWRkbGV3YXJlIGNlbnRyYWwgdG8geW91cgpjb21tdW5pY2F0aW9u IHNldHVwIC0tIGluc3RlYWQgb2YgaGlkaW5nIGl0IGJlaGluZCBhIGNvbW1vbiBBUEkuCgpTeWx2 YWluCgoKCjIwMTUtMDktMjggMjoyOCBHTVQtMDM6MDAgSGVybWFuIEJydXluaW5ja3gKPEhlcm1h bi5CcnV5bmluY2t4QG1lY2gua3VsZXV2ZW4uYmU+Ogo+IE9uIE1vbiwgMjggU2VwIDIwMTUsIEJp Z2dzR2VvZmZyZXkgd3JvdGU6Cj4KPj4gT24gMjcvOS8xNSwgMTQ6MTAsICJvcm9jb3MtZGV2LWJv dW5jZXNAbGlzdHMubWVjaC5rdWxldXZlbi5iZSBvbiBiZWhhbGYgb2YKPj4gSGVybWFuIEJydXlu aW5ja3giIDxvcm9jb3MtZGV2LWJvdW5jZXNAbGlzdHMubWVjaC5rdWxldXZlbi5iZSBvbiBiZWhh bGYgb2YKPj4gaGVybWFuLmJydXluaW5ja3hAbWVjaC5rdWxldXZlbi5iZT4gd3JvdGU6Cj4+Pgo+ Pj4KPj4+IFRoYW5rcyBmb3IgdGhpcyBuaWNlIGVmZm9ydC4gSSB0aGluayBpdCBpcyByZWFsbHkg dGltZSB0byBjb25zaWRlciBhIG5leHQKPj4+IGdlbmVyYXRpb24gb2YgT3JvY29zIFJUVC4uLgo+ Pj4KPj4+IElmIHlvdSBhbGxvdyBtZSB0byBicmluZyBpbiBteSB0d28gY2VudHMuLi4gSXQncyBw b3NzaWJsZSB0aGF0IHlvdSB3b24ndAo+Pj4gbGlrZSB0aGUKPj4+IG1lc3NhZ2UsIG9yIGZpbmQg aXQgb2ZmLXRvcGljLCBidXQgSSB0aGluayBJIHNob3VsZCBzaGFyZSBpdCB3aXRoIHlvdQo+Pj4g YW55d2F5Li4uCj4+Pgo+Pj4gVGhlIGJlc3QgZG9jdW1lbnQgSSBoYXZlIHJlYWQgYWJvdXQgY29t bXVuaWNhdGlvbiB0aGF0IGNvbm5lY3RzCj4+PiBoaWdoLXBlcmZvcm1hbmNlIHdpdGggZmxleGli aWxpdHkgYW5kIGNvbmZpZ3VyYWJpbGl0eSBpcyB0aGlzIG9uZToKPj4+Cj4+Pgo+Pj4gPGh0dHBz Oi8vZW5naW5lZXJpbmcubGlua2VkaW4uY29tL2Rpc3RyaWJ1dGVkLXN5c3RlbXMvbG9nLXdoYXQt ZXZlcnktc29mdHcKPj4+IGFyZS1lbmdpbmVlci1zaG91bGQta25vdy1hYm91dC1yZWFsLXRpbWUt ZGF0YXMtdW5pZnlpbmc+Cj4+Pgo+Pj4gSXQgY2xlYW5seSBzZXBhcmF0ZXMgdGhlIGNvbW11bmlj YXRpb24gb2YgImV2ZW50cyIgZnJvbSAoaSkgd2hhdCB0aGV5Cj4+PiBtZWFuLAo+Pj4gKGlpKSB3 aG8gaXMgaW50ZXJlc3RlZCBpbiB0aGVtLCBhbmQgKGlpaSkgd2l0aCB3aGF0IHBvbGljeSB0aGV5 IGFyZQo+Pj4gY29uc3VtZWQuCj4+Pgo+Pj4gSW4gb3VyIGN1cnJlbnQgcmVzZWFyY2ggYXQgS1Ug TGV1dmVuLCB0aGlzIGlzIGdvaW5nIHRvIGJlIF90aGVfIGJhc2lzIGZvcgo+Pj4gYWxsIGludGVy YWN0aW9uIGJldHdlZW4gYXN5bmNocm9ub3VzIGFjdGl2aXRpZXMuCj4+PiBUaGUgb3RoZXIgYmFz aXMgd2lsbCBiZSB0aGUgc2VwYXJhdGlvbiBiZXR3ZWVuIChpKSBmdW5jdGlvbmFsCj4+PiByZXF1 aXJlbWVudHMKPj4+IG9mIHRoZSBhcHBsaWNhdGlvbiwgKGlpKSAicm9sZXMgYW5kIHJlc3BvbnNp YmlsaXRpZXMiIG9mICJjb21wb25lbnRzIiwKPj4+IChpaWkpIHNvZnR3YXJlIGNvbXBvbmVudHMg dG8gaW1wbGVtZW50IGJvdGgsIGFuZCAoaXYpIGRlcGxveW1lbnQgb2YgdGhlc2UKPj4+IGNvbXBv bmVudHMgb24geW91ciBoYXJkd2FyZSBhbmQgT1MgcGxhdGZvcm1zLgo+Pj4KPj4+IEFsbCBvZiB0 aGUgYWJvdmUgYXJlIG5vdCBwcmVzZW50IGluIE9yb2NvcyBSVFQsIHdoaWNoIEkgY29uc2lkZXIg ZGVzaWduCj4+PiBmbGF3cy4KPj4+IFNvIHNvbHZpbmcgdGhlc2UgcHJvYmxlbXMgaXMgZGVmaW5p dGVseSB3b3J0aHdoaWxlLiBCdXQsIGFuZCB0aGlzIGlzIGEKPj4+IGJpZwo+Pj4gYnV0LCBteSB2 aWV3IG9uIHNvbHZpbmcgdGhlbSAod2hpY2ggaXMgY3VycmVudGx5IGJlaW5nIHRyYW5zZm9ybWVk IGludG8KPj4+IGEgZmlyc3Qgc2V0IG9mIG1vZGVscyBhbmQgY29kZSBhbmQgdG9vbHMpIGltcGxp ZXMgdGhhdCB3ZSBkbyBub3QgbmVlZAo+Pj4gT3JvY29zIFJUVCBhdCBhbGwgYW55bW9yZS4gVGhl IHJlYXNvbnMgd2h5IHdlIHN0YXJ0ZWQgUlRUIG1vcmUgdGhhbgo+Pj4gZmlmdGVlbgo+Pj4geWVh cnMgYWdvIGhhdmUgbm90IGRpc2FwcGVhcmVkLCBidXQgaGF2ZSBhbGwgYmVlbiBzb2x2ZWQgaW4g bW9yZQo+Pj4gIm1haW5zdHJlYW0iCj4+PiBzb2Z0d2FyZSBwcm9qZWN0cyB0aGFuIE9yb2Nvcy4g RmlmdGVlbiB5ZWFycyBhZ28sIHdoYXQgd2Ugd2hlcmUgYWZ0ZXIgd2FzCj4+PiBhCj4+PiAibm9k ZS1wb3J0LWNvbm5lY3RvciIgbW9kZWxsaW5nLWFuZC1jb2RpbmcgaW50ZXJmYWNlLCB3aGVyZSBu b2RlcyBjb3VsZAo+Pj4gYmUKPj4+IGRlcGxveWVkIGluIHJlYWx0aW1lIGFjdGl2aXRpZXMgb24g YW4gb3BlcmF0aW5nIHN5c3RlbS4gSXQgd2FzIHRoZSB0aW1lCj4+PiBvZgo+Pj4gc2luZ2xlIGNv cmUgQ1BVcywgd2l0aCBvbmx5IHByb3ByaWV0YXJ5IHNvbHV0aW9ucyB0byBmYXN0IG5ldHdvcmtp bmcuCj4+PiBUaG9zZQo+Pj4gZGF5cyBoYXZlIGdvbmUsIHRvZ2V0aGVyIHdpdGggdGhlIG5lZWQg dG8gdXNlIFJUVCBhcyBhIHNvZnR3YXJlIHNvbHV0aW9uLgo+Pj4KPj4+IE1vcmUgaW4gcGFydGlj dWxhciwgdGhlICJjb21tdW5pY2F0aW9uIiBhc3BlY3QgKHdoaWNoIGlzIHRoZSBjb3JlIG9mIHRo ZQo+Pj4gZG9jdW1lbnQgeW91IGRpc3RyaWJ1dGVkKSBpcyBhIGxvdCBiZXR0ZXIgdW5kZXJzdG9v ZCBhbmQgc3VwcG9ydGVkIGluCj4+PiBtYWluc3RyZWFtIHRoYW4gMTUgeWVhcnMgYWdvLiBUYWtp bmcgdGhlIG1vZGVsIG9mIHRoZSBldmVudCBsb2cgYW5kIHRoZQo+Pj4gY29ycmVzcG9uZGluZyBs b2cgcHJvY2Vzc2luZyBhcm91bmQgaXQgbWVhbnMgdGhhdCBhbGwgdGhlIHBvbGljaWVzIHRoYXQK Pj4+IHlvdXIgZG9jdW1lbnQgd2FudHMgdG8gaW50cm9kdWNlIGFzICJBUEkiIG1ldGhvZHMgY2Fu IChzaG91bGQuLi4pIGJldHRlcgo+Pj4gYmUKPj4+IHJlYWxpc2VkIGJ5IGNvbmZpZ3VyYXRpb25z IG9mIHRoZSBldmVudCBsb2cgbWVjaGFuaXNtIGluIHlvdXIKPj4+IF9hcHBsaWNhdGlvbgo+Pj4g YXJjaGl0ZWN0dXJlXzsgdGhlcmUgaXMgbm8gbmVlZCB0byBwcm92aWRlIEFQSXMgaW4gIm1pZGRs ZXdhcmUiLAo+Pj4gImZyYW1ld29ya3MiIG9yICJsaWJyYXJpZXMiLgo+Pj4KPj4+IF9UaGVfIGNv cmUgZnVuY3Rpb25hbGl0aWVzIG9mIFJUVCB0aGF0IHN0aWxsIHN1cnZpdmUgYWZ0ZXIgMTUgeWVh cnMgYXJlOgo+Pj4gLSBpdHMgaW50cm9zcGVjdGlvbiBjYXBhYmlsaXRpZXM7Cj4+PiAtIHRoZSBs b2NrLWZyZWUgZGF0YSBidWZmZXIuCj4+PiBUaGUgbGF0dGVyIGlzIGp1c3QgYSBzcGVjaWFsIGNh c2UgKCJjb25maWd1cmF0aW9uIikgb2YgdGhlIGV2ZW50IGxvZwo+Pj4gbWVjaGFuaXNtLCB0aGF0 IHByb3ZpZGVzIGFsbCBvdGhlciBwb2xpY2llcyB0aGF0IHlvdSBtZW50aW9uIChhbmQgbW9yZSEp Cj4+PiBqdXN0IHRocm91Z2ggb3RoZXIgY29uZmlndXJhdGlvbnMuCj4+PiBUaGUgaW50cm9zcGVj dGlvbiBpcyBhIGZvcm0gb2YgIm1vZGVsIGJhc2VkIiBpbXBsZW1lbnRhdGlvbiwgd2hpY2gKPj4+ IGNvbnNpZGVycyBtb2RlbHMgYXMgZmlyc3QtY2xhc3MgY2l0aXplbnMgaW4gdGhlIHNvZnR3YXJl OyB0aGlzIGlzIGdyZWF0LAo+Pj4gYW5kIHNob3VsZCBiZSBleHRlbmRlZCwgc3RhcnRpbmcgd2l0 aCBtb2RlbGxpbmcgYWxsIHRoZSByZWxldmFudCBldmVudAo+Pj4gbG9nCj4+PiBwb2xpY2llcyBl eHBsaWNpdHkuIChLVSBMZXV2ZW4gaXMgd29ya2luZyBvbiB0aGF0OyBpdCB0YWtlcyBhIGxvdCBv Zgo+Pj4gZWZmb3J0cy4uLikgTG9jay1mcmVlIGRhdGEgYnVmZmVycyBhcmUgdGhlIGNvcmUgb2Yg ZXZlbnQgbG9nIHByb2Nlc3NpbmcsCj4+PiBhbmQgYXJlIGN1cnJlbnRseSBiZXR0ZXIga25vd24g dW5kZXIgdGhlIG5ldyBidXp6d29yZCAiaW1tdXRhYmxlIGRhdGEiLgo+Pj4KPj4+IFRoZSBvdGhl ciAiZ29vZC1pbnR1aXRpb24tdGhhdC10dXJuZWQtb3V0LXRvLWJlLWJhZGx5LWltcGxlbWVudGVk IiBvZgo+Pj4gZmlmdGVlbiB5ZWFycyBhZ28gaXMgdGhhdCBvZiAic3RvcmVkIHByb2NlZHVyZXMi IChrbm93biB1bmRlciB2YXJpb3VzCj4+PiBuYW1lcywgc3VjaCBhcyAibWljcm9zZXJ2aWNlcyIs IHByb3h5IGNvbXB1dGF0aW9ucywgZXRjLikuIFJUVCBwcm92aWRlcyBhCj4+PiB2ZXJ5IGNvbXBs ZXggYW5kIGFtYmlndW91cyBBUEkgdG8gbGV0IG9uZSBjb21wb25lbnQgZXhlY3V0ZSBjb2RlIGZv cgo+Pj4gYW5vdGhlciBjb21wb25lbnQuIEFnYWluLCB0aGF0IGZ1bmN0aW9uYWxpdHkgc2hvdWxk IG5vdCBiZSBwcm92aWRlZCBieSBhbgo+Pj4gIlJQQyBBUEkiLCBidXQgYnkgbW9kZWxzIGFuZCB0 b29scyBvZiBfZGVwbG95bWVudF8uCj4+Pgo+Pj4gVGhlIGFkZGVkIHZhbHVlIG9mIE9yb2NvcyBh cyBhIHByb2plY3QgY291bGQgc2hpZnQgZnJvbSBwcm92aWRpbmcgY29kZSB0bwo+Pj4gcHJvdmlk aW5nIHByb2Zlc3Npb25hbCBxdWFsaXR5IGRvY3VtZW50YXRpb24gYW5kIHR1dG9yaWFscyBmb3Ig ImJlc3QKPj4+IHByYWN0aWNlcyIgYW5kICJwYXR0ZXJucyIsIHNvbWUgc3BlY2lmaWMgcmVhbHRp bWUtb3B0aW1pemVkCj4+PiBpbXBsZW1lbnRhdGlvbnMsIG9yIHBhdGNoZXMgdG8gdGhlIGxhcmdl IGFtb3VudCBvZiBleGlzdGluZyBsaWJyYXJpZXMKPj4+IHRoYXQKPj4+IHN1cHBvcnQgYWx1bCBv ZiB0aGUgYWJvdmUuCj4+Pgo+Pj4gSXQgaXMgdXAgdG8gdGhlIE9yb2NvcyBjb21tdW5pdHkgdG8g ZGVjaWRlIHdoZXRoZXIgdG8gZ28gdGhhdCBkaXJlY3Rpb24KPj4+IG9yCj4+PiBub3QuIEkgd291 bGQgYmUgZ2xhZCB0byBjb29wZXJhdGUgaW4gdGhhdCBkaXJlY3RvaW9uLCBiZWNhdXNlIG90aGVy d2lzZQo+Pj4gd2UKPj4+IHdpbGwgYmUgZm9yY2VkIHRvIHN0YXJ0IGEgImNvbXBldGluZyIgcHJv amVjdC4KPj4+Cj4+PiBOb3RlIHRoYXQgdGhpcyBtZXNzYWdlIGRvZXMgbm90IGNvbnRhaW4gdGhy ZWF0cyB0byAiZm9yayIgb3Igd2hhdGV2ZXIsCj4+PiBidXQKPj4+IGp1c3QgbXkgaW5zaWdodHMg YWZ0ZXIgd29ya2luZyB3aXRoIE9yb2NvcyBSVFQgZm9yIGFib3V0IGEgZGVjYWRlLCBhbmQKPj4+ IGhhdmluZyBPcm9jb3MgUlRUIHdvcmsgYWdhaW5zdCB0aGUgYXJjaGl0ZWN0dXJhbCByZXF1aXJl bWVudHMgaW4gb3VyCj4+PiByb2JvdGljcyBwcm9qZWN0cyBmb3IgdGhlIHN1YnNlcXVlbnQgZml2 ZSB5ZWFycy4uLgo+Pj4KPj4+IEkgZnJhbmtseSB0aGluayBpdCBpcyB0aW1lIHRvIHJlaW52ZW50 IHRoZSBwcm9qZWN0LiBCaWcgdGltZS4KPj4+Cj4+PiBUaGUgZWFzaWVzdCB3YXkgaXMgdG8gX2Rl cHJlY2F0ZV8gdGhpbmdzLCB0byBtYWtlIHRoZSBfY29yZV8gdGhpbmdzCj4+PiBzaW1wbGVyCj4+ PiBmb3IgdXNlcnMsIHRocm93aW5nIG91dCBtb3JlIGFuZCBtb3JlIGNvZGUgYW5kIHN0YXJ0IHVz aW5nIG90aGVyIGFscmVhZHkKPj4+IGV4aXN0aW5nIHNvZnR3YXJlIChaZXJvTVEsIGxpYmV2ZW50 LCB0aGUgbG9jay1mcmVlIGJ1ZmZlciBsaWJyYXJ5LAo+Pj4gUmV0aGlua0RCLC4uLikgaW5zdGVh ZCBvZiB0cnlpbmcgdG8gc3F1ZWV6ZSBpbiB0aGVpciBmdW5jdGlvbmFsaXRpZXMKPj4+IHdpdGhp bgo+Pj4gTklIIEFQSXMgYW5kIGltcGxlbWVudGF0aW9ucy4gIEluIHRoZSBlbmQsIFJUVCB3aWxs IGJlIGVtcHR5LCBhbmQgdGhlCj4+PiBkZXZlbG9wbWVudCBlZmZvcnRzIGNhbiB0aGVuIGZpbmFs bHkgc2hpZnQgdG8gZ2l2ZSBTeWx2YWluIGEgbXVjaCBiaWdnZXIKPj4+IGhhbmQgd2l0aCBST0NL IDotKQo+Pj4gKEp1c3QgbWFrZSBzdXJlIHRvIHJlZmFjdG9yIFJPQ0sgaW4gb3JkZXIgdG8gZGVj b3VwbGUgdGhlIF9tb2RlbHNfIGZyb20KPj4+IHRoZQo+Pj4gIFJ1YnkgYW5kIFJUVCBfaW1wbGVt ZW50YXRpb25zXyA6LSkpCj4+Pgo+Pj4gQmVzdCByZWdhcmRzLAo+Pj4KPj4+IEhlcm1hbiBCcnV5 bmluY2t4Cj4+Cj4+Cj4+IFRoZXJlIGFyZSBzb21lIHBvdGVudGlhbGx5IGludGVyZXN0aW5nIGlk ZWFzIGluIHRoZXJlLCBIZXJtYW4uIEJ1dCBlaXRoZXIKPj4geW91ciBlbWFpbCBpcyB1bmNoYXJh Y3RlcmlzdGljYWxseSBpbmNvaGVyZW50IG9yIEnigJltIHJlYWxseSBqZXQgbGFnZ2VkLgo+PiBD b3VsZCB5b3UgZXhwbGFpbiBtb3JlIGNsZWFybHkgd2hhdCB5b3UgY3VycmVudGx5IHRoaW5rIGlz IHRoZSBpZGVhbD8KPgo+Cj4gMS4gQ29tcGxldGUgc2VwYXJhdGlvbiBvZiBfYW55XyBjb21tdW5p Y2F0aW9uIHBvbGljeSBmcm9tIHRoZSBhY3Rpdml0eQo+ICAgIGV4ZWN1dGlvbiBwb2xpY2llczog dGhlcmUgYXJlIGp1c3Qgd2F5IHRvbyBtYW55IHVzZSBjYXNlcyB0aGF0IG11c3QgYmUKPiAgICBz dXBwb3J0ZWQgdG8gYnJpbmcgdGhlbSBhbGwgYmVoaW5kIG9uZSBBUEkuIChXaGljaCBpcyBhbHNv IHdoYXQgUk9TMi4wCj4gICAgdHJpZXMgdG8gZG8uKQo+IDIuICJFdmVudCBwcm9jZXNzaW5nIiBp cyB0aGUgbW9zdCBmbGV4aWJsZSBfbWVjaGFuaXNtXyB0byBidWlsZCBvdGhlcgo+ICAgICAgICAg Y29tbXVuaWNhdGlvbiBwb2xpY2llcyB1cG9uLiBUaGUgbW9zdCBpbXBvcnRhbnQgbGVzc29uIHRo YXQgX0lfCj4gbGVhcm5lZAo+ICAgICAgICAgaW4gdGhpcyBjb250ZXh0IGlzIHRoYXQgaXQgYWxs b3dzICJjbGllbnRzIiBhbmQgInNlcnZlcnMiIHRvIGNob29zZQo+ICAgIHdoYXRldmVyIHBvbGlj eSB0aGV5IGxpa2UgX2xvY2FsbHlfLCBzaW5jZSBhbGwgZGF0YSBpcyBpbW11dGFibGUuIChFeGNl cHQKPiAgICBmb3Igc29tZSAibG9uZyB0ZXJtIiBnYXJiYWdlIGNvbGxlY3Rpb24uKQo+IDMuIEV4 ZWN1dGluZyBhY3Rpdml0aWVzIGluIHJlYWx0aW1lIGN1cnJlbnRseSBkb2VzIG5vdCByZXF1aXJl IGEgc2VwYXJhdGUKPiAgICBsaWJyYXJ5L2ZyYW1ld29yayBhbnltb3JlLCBidXQgaXMgcmVhbGlz ZWQgYnkgY29udHJvbCBncm91cHMgKG9uIExpbnV4KSwKPiBvcgo+ICAgIHNpbWlsYXIgZnVuY3Rp b25hbGl0aWVzIG9uIG90aGVyIE9Tcy4KPiA0LiBTaW1pbGFybHksIHN5c3RlbWQgaGFzIChvciBp cyBpbiB0aGUgcHJvY2VzcyBvZikgdGFrZW4gb3ZlciBhbGwKPiAgICBjb25maWd1cmF0aW9uIGlz c3Vlcy4KPiA1LiBUaGUgZXhwZXJ0aXNlIHRoYXQgdGhlIFJUVCBjb21tdW5pdHkgZXhjZWxzIGlu IGlzIHRoYXQgb2YgX2Rlc2lnbmluZ18KPiAgICByZWFsdGltZSBzeXN0ZW1zLCB3aXRoIG9yIHdp dGhvdXQgdGhlIFJUVCBjb2RlLiBBbmQgdGhhdCBpcyBtb3JlIHRoYW4KPiAgICBlbm91Z2ggdG8g d2FycmFudCB0aGUgY29udGludWF0aW9uIG9mIHRoaXMgY29tbXVuaXR5LCBldmVuIHdoZW4gbm9u ZSBvZgo+ICAgIHRoZSBjb2RlIGlzIGtlcHQsIHNpbmNlICJiZXN0IHByYWN0aWNlcyIgYXJlIHVz ZWZ1bCBldmVyeXdoZXJlLgo+Cj4+IEZvciBjbGFyaXR5LCB3ZSBjYW4gc2tpcCB0aGUgY29tbWVu dHMgT3JvY29zLCBzaW5jZSB3ZeKAmXZlIGFscmVhZHkKPj4gZXN0YWJsaXNoZWQgdGhhdCB5b3Ug dGhpbmsgaXQgbmVlZHMgdG8gY2hhbmdlLgo+Cj4KPiBNeSB0aG91Z2h0cyBnbyBmdXJ0aGVyOiB0 aGVyZSBpcyBubyBuZWVkIGZvciBpdCBhbnltb3JlLgo+Cj4+IEdlb2ZmCj4KPgo+IEhlcm1hbgo+ IC0tCj4gT3JvY29zLURldiBtYWlsaW5nIGxpc3QKPiBPcm9jb3MtRGV2QGxpc3RzLm1lY2gua3Vs ZXV2ZW4uYmUKPiBodHRwOi8vbGlzdHMubWVjaC5rdWxldXZlbi5iZS9tYWlsbWFuL2xpc3RpbmZv L29yb2Nvcy1kZXYKPgotLSAKT3JvY29zLURldiBtYWlsaW5nIGxpc3QKT3JvY29zLURldkBsaXN0 cy5tZWNoLmt1bGV1dmVuLmJlCmh0dHA6Ly9saXN0cy5tZWNoLmt1bGV1dmVuLmJlL21haWxtYW4v bGlzdGluZm8vb3JvY29zLWRldgo=