Re: On time64 and Large File Support
Paul Eggert <[email protected]> Fri, 20 Jan 2023 01:56:30 -0800
| Newsgroups | dev.linux.lists.c-std-porting |
|---|---|
| Organization | UCLA Computer Science Department |
| Message-ID | <[email protected]> |
This is a multi-part message in MIME format. --------------a0ILeQslYpd8AwO4hJBK86pe Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 2022-12-30 14:12, Paul Eggert wrote: > I'm attaching a proposed patch to Autoconf master documentation in two > forms. Zack, any further thoughts on that Autoconf patch? If not, I'm inclined to install it as it doesn't change behavior, only documentation, and Sam wrote that he was happy with the patch. For convenience I'm reattaching the same patch to this email. Also, is there anything else blocking a new Autoconf release? --------------a0ILeQslYpd8AwO4hJBK86pe Content-Type: text/x-patch; charset=UTF-8; name="0001-Improve-year-2038-documentation.patch" Content-Disposition: attachment; filename="0001-Improve-year-2038-documentation.patch" Content-Transfer-Encoding: base64 RnJvbSAzZTlmMTE1OWFlOTE0NWM1MGQwNDhhNzQ0MjJkZDg0NjRhNmE4ZjZmIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQYXVsIEVnZ2VydCA8ZWdnZXJ0QGNzLnVjbGEuZWR1 PgpEYXRlOiBGcmksIDMwIERlYyAyMDIyIDEyOjQ4OjM5IC0wODAwClN1YmplY3Q6IFtQQVRD SF0gSW1wcm92ZSB5ZWFyLTIwMzggZG9jdW1lbnRhdGlvbgpNSU1FLVZlcnNpb246IDEuMApD b250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLTgKQ29udGVudC1UcmFuc2Zl ci1FbmNvZGluZzogOGJpdAoKKiBORVdTLCBkb2MvYXV0b2NvbmYudGV4aSAoU3lzdGVtIFNl cnZpY2VzKToKSW1wcm92ZSBkb2N1bWVudGF0aW9uIGZvciBiZWhhdmlvciBvZiBsYXJnZWZp bGUgYW5kIHllYXItMjAzOCBzdXBwb3J0LgpTYXkgdGhhdCBpbiB0aGUgY3VycmVudCBpbXBs ZW1lbnRhdGlvbiwgeWVhci0yMDM4IHN1cHBvcnQKcmVxdWlyZXMgbGFyZ2VmaWxlIHN1cHBv cnQuICBTYXkgdGhhdCB5ZWFyLTIwMzggc3VwcG9ydAptYXR0ZXJzIG9ubHkgZm9yIEdOVS9M aW51eCBnbGliYyAyLjM0KyBvbiAzMi1iaXQgeDg2IGFuZCBBUk0uClByZWZlciBicmV2aXR5 IHdoZW4gdGhpcyBkb2VzIG5vdCBodXJ0IHVuZGVyc3RhbmRhYmlsaXR5Owpmb3IgZXhhbXBs ZSwgcHJlZmVyIGFjdGl2ZSB0byBwYXNzaXZlIHZvaWNlLgpQcmVmZXIg4oCcd2lkZXLigJ0g dG8g4oCcbGFyZ2Vy4oCdIHdoZW4gdGFsa2luZyBhYm91dCB0aGUgbnVtYmVyIG9mCmJpdHMg aW4gYW4gaW50ZWdlciwgYXMgdGhpcyB0ZXJtaW5vbG9neSBpcyBtb3JlIHN0YW5kYXJkLgpU b25lIGRvd24gdGhlIHdvcmRpbmcgaW4gd2FybmluZ3MgYWJvdXQgZW5hYmxpbmcgeWVhci0y MDM4IHN1cHBvcnQsCnVzZSBzaW1pbGFyIHdvcmRpbmcgaW4gd2FybmluZ3MgYWJvdXQgZW5h YmxpbmcgbGFyZ2VmaWxlIHN1cHBvcnQsCmFuZCB3YXJuIGFsc28gYWJvdXQgZGlzYWJsaW5n IGxhcmdlZmlsZSBhbmQgeWVhci0yMDM4IHN1cHBvcnQuCk5vIG5lZWQgZm9yIEBlbXBoLiAg QWxzbyBtZW50aW9uIHJsaW1fdC4KQmUgYSBiaXQgbW9yZSBjYXJlZnVsIGFib3V0IHNheWlu ZyDigJwyIEdpQuKAnSByYXRoZXIgdGhhbiDigJwyIEdC4oCdLgpNZW50aW9uIHRoYXQgYSBm dXR1cmUgdmVyc2lvbiBvZiBBdXRvY29uZiBtaWdodCBjaGFuZ2UKQUNfU1lTX0xBUkdFRklM RSB0byBkZWZhdWx0IHRvIC0tZW5hYmxlLXllYXIyMDM4LCBzaW5jZQpzb21ldGhpbmcgaGFz IGdvdHRhIGhhcHBlbiBiZWZvcmUgMjAzOC4KQ29hbGVzY2UgZGVzY3JpcHRpb25zIG9mIC0t ZW5hYmxlLWxhcmdlZmlsZSBhbmQgLS1lbmFibGUteWVhcjIwMzgKdG8gc2ltcGxpZnkgZG9j dW1lbnRhdGlvbi4gIE1lbnRpb24gdGhhdCB0aGUgb25seSBzeXN0ZW0gd2hlcmUKQUNfU1lT X0xBUkdFRklMRSBjaGFuZ2VzIENDIGlzIElSSVggYW5kIHRoYXQgdGhlc2Ugc3lzdGVtcwph cmUgb2Jzb2xldGUuICBTYXkgdGhhdCDigJhzdGF04oCZIGNhbiBmYWlsIGR1ZSB0byB0aW1l X3QKb3ZlcmZsb3cuICBTYXkgdGhhdCB5b3UgY2Fu4oCZdCBwb3J0YWJseSBwcmludCB0aW1l X3Qgd2l0aCAlbGQuClNheSB0aGF0IGJpbmFyeSBjb21wYXRpYmlsdHkgcHJvYmxlbXMgYWxz byBjYW4gb2NjdXIgd2hlbiBvbmUKbGlicmFyeSBpcyBsaW5raW5nIHRvIGFtb3RoZXI7IGl0 4oCZcyBub3QganVzdCBhcHBzIHZzIGxpYnJhcmllcy4KTWVudGlvbiB0aGUgcG9zc2liaWxp dHkgb2YgbW9kaWZ5aW5nIGxpYnJhcmllcyB0byBzdXBwb3J0IGJvdGgKMzItIGFuZCA2NC1i aXQgaW50ZXJmYWNlcy4gIFdhcm4gbW9yZSBjb25zaXN0ZW50bHkgYWJvdXQKQUJJIGNvbXBh dGliaWxpdHkgaXNzdWVzLCBidXQgcHV0IHRoZSBidWxrIG9mIHRoaXMgdGV4dAppbiBvbmUg bG9jYXRpb24gdGhhdCB0aGUgb3RoZXIgbG9jYXRpb25zIHJlZmVyIHRvLgotLS0KIE5FV1Mg ICAgICAgICAgICAgIHwgIDU3ICsrKysrKysrLS0tLS0tLS0KIGRvYy9hdXRvY29uZi50ZXhp IHwgMTY1ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K IDIgZmlsZXMgY2hhbmdlZCwgMTEzIGluc2VydGlvbnMoKyksIDEwOSBkZWxldGlvbnMoLSkK CmRpZmYgLS1naXQgYS9ORVdTIGIvTkVXUwppbmRleCBlYWZkN2Q2OS4uMGY3MTYyOGQgMTAw NjQ0Ci0tLSBhL05FV1MKKysrIGIvTkVXUwpAQCAtMjcsMzYgKzI3LDMzIEBAIEdOVSBBdXRv Y29uZiBORVdTIC0gVXNlciB2aXNpYmxlIGNoYW5nZXMuCiAKICoqIE5ldyBmZWF0dXJlcwog Ci0qKiogTmV3IG1hY3JvcyBBQ19TWVNfWUVBUjIwMzggYW5kIEFDX1NZU19ZRUFSMjAzOF9S RVFVSVJFRC4KLSAgVGhlc2UgbWFjcm9zIGF0dGVtcHQgdG8gZW5sYXJnZSB0aW1lX3QgdG8g NjQgYml0cywgb24gc3lzdGVtcyB3aGVyZQotICBpdCBoYXMgaGlzdG9yaWNhbGx5IGJlZW4g b25seSAzMiBiaXRzIHdpZGUsIGFuZCB0aGVyZWZvcmUgKGFzc3VtaW5nCi0gIHRoZSB1c3Vh bCBVbml4IGVwb2NoKSBjYW5ub3QgcmVwcmVzZW50IGRhdGVzIGFmdGVyIG1pZC1KYW51YXJ5 IG9mCi0gIDIwMzggKGhlbmNlIHRoZSBuYW1lcykuICBUaGUgZGlmZmVyZW5jZSBiZXR3ZWVu IHRoZSB0d28gaXMgdGhhdAotICBBQ19TWVNfWUVBUjIwMzhfUkVRVUlSRUQgdW5jb25kaXRp b25hbGx5IGNhdXNlcyAnY29uZmlndXJlJyB0byBlcnJvcgotICBvdXQgaWYgNjQtYml0IHRp bWVfdCBpcyBub3QgYXZhaWxhYmxlLgotCi0gIEVubGFyZ2luZyB0aW1lX3QgdG8gNjQgYml0 cyBpcyBsaWtlbHkgdG8gaGF2ZSB0aGUgc2lkZSBlZmZlY3Qgb2YKLSAgZW5sYXJnaW5nIG9m Zl90IGFuZCByZWxhdGVkIHR5cGVzIHRvIDY0IGJpdHMgYXMgd2VsbCwgYXMgaWYgeW91Ci0g IGhhZCB1c2VkIEFDX1NZU19MQVJHRUZJTEUuICBTZWUgdGhlIG1hbnVhbCBmb3IgZGV0YWls cy4KLQotICBMaWJyYXJ5IGF1dGhvcnMgc2hvdWxkIGJlIGNhdXRpb3VzIGFib3V0IGFkZGlu ZyB0aGVzZSBtYWNyb3MgdG8KLSAgdGhlaXIgY29uZmlndXJlIHNjcmlwdHM7IHRoZXkgY2Fu IGJyZWFrIGJpbmFyeSBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LgotCi0qKiogTmV3IG1hY3Jv IEFDX1NZU19MQVJHRUZJTEVfUkVRVUlSRUQuCi0gIFRoaXMgbWFjcm8gaXMgdGhlIHNhbWUg YXMgdGhlIGV4aXN0aW5nIEFDX1NZU19MQVJHRUZJTEUgZXhjZXB0IHRoYXQKLSAgaXQgd2ls bCBjYXVzZSAnY29uZmlndXJlJyB0byBlcnJvciBvdXQgaWYgNjQtYml0IG9mZl90IGlzIG5v dCBhdmFpbGFibGUsCi0gIGFuZCBpdCBkb2VzIG5vdCBwcm92aWRlIGEgLS1kaXNhYmxlLWxh cmdlZmlsZSBvcHRpb24uCi0KLSoqKiBBQ19TWVNfTEFSR0VGSUxFIG5vdyBvcHRpb25hbGx5 IGFycmFuZ2VzIHRvIGVubGFyZ2UgdGltZV90LgotICBBcyBhbiBleHBlcmltZW50YWwgbWVh c3VyZSB0byBtYWtlIGl0IGVhc2llciB0byByZWJ1aWxkIG9sZCBwcm9ncmFtcwotICB3aXRo IHN1cHBvcnQgZm9yIGRhdGVzIGFmdGVyIEphbiAyMDM4LCBpZiB5b3UgcmVnZW5lcmF0ZSBh bnkgY29uZmlndXJlCi0gIHNjcmlwdCB0aGF0IHVzZXMgQUNfU1lTX0xBUkdFRklMRSAoYnV0 IG5vdCBBQ19TWVNfWUVBUjIwMzgpIHVzaW5nCi0gIEF1dG9jb25mIDIuNzIsIGl0IHdpbGwg Z2FpbiBhbiAtLWVuYWJsZS15ZWFyMjAzOCBvcHRpb24uICBXaGVuIHRoZQotICBwcm9ncmFt IGlzIGNvbmZpZ3VyZWQgd2l0aCB0aGlzIG9wdGlvbiwgdGltZV90IHdpbGwgYmUgZW5sYXJn ZWQgaWYKLSAgcG9zc2libGUsIGFzIGlmIEFDX1NZU19ZRUFSMjAzOCBoYWQgYmVlbiB1c2Vk LgotCi0gIFVzaW5nIHRoaXMgb3B0aW9uIGluIGEgbGlicmFyeSBidWlsZCBhbHNvIHBvdGVu dGlhbGx5IGJyZWFrcyBiaW5hcnkKLSAgYmFja3dhcmQgY29tcGF0aWJpbGl0eS4KKyoqKiBO ZXcgbWFjcm8gQUNfU1lTX1lFQVIyMDM4LgorICBUaGlzIGNhdXNlcyAnY29uZmlndXJlJyB0 byB3aWRlbiB0aW1lX3QgaWYgcG9zc2libGUgb24gc3lzdGVtcyB3aGVyZQorICB0aW1lX3Qg YnkgZGVmYXVsdCBjYW5ub3QgcmVwcmVzZW50IGZpbGUgYW5kIG90aGVyIHRpbWVzdGFtcHMg YWZ0ZXIKKyAgSmFudWFyeSAyMDM4LiAgV2lkZW5pbmcgaXMgcG9zc2libGUgb25seSBvbiAz Mi1iaXQgR05VL0xpbnV4IHg4NiBhbmQKKyAgQVJNIHN5c3RlbXMgd2l0aCBnbGliYyAyLjM0 IG9yIGxhdGVyLiAgVG8gcHJldmVudCB3aWRlbmluZywKKyAgY29uZmlndXJlIHdpdGggLS1k aXNhYmxlLXllYXIyMDM4LgorCisgIFRoaXMgbWFjcm8gYWxzbyBoYXMgdGhlIGVmZmVjdHMg YXMgQUNfU1lTX0xBUkdFRklMRSwgYmVjYXVzZSBpbgorICBwcmFjdGljZSB0aW1lX3QgY2Fu bm90IGJlIHdpZGVuZWQgd2l0aG91dCBsYXJnZS1maWxlIHN5cHBvcnQuCisKKyAgQXBwbGlj YXRpb24gYW5kIGxpYnJhcnkgYnVpbGRlcnMgc2hvdWxkIHRha2UgY2FyZSB0aGF0IHBhY2th Z2VzCisgIGNvbmZpZ3VyZWQgd2l0aCAtLWVuYWJsZS15ZWFyMjAzOCBhbmQgLS1kaXNhYmxl LXllYXIyMDM4IG9wdGlvbnMKKyAgYXJlIGNvbmZpZ3VyZWQgY29uc2lzdGVudGx5LCB0byBh dm9pZCBicmVha2luZyBiaW5hcnkgY29tcGF0aWJpbGl0eS4KKyAgVGhpcyBpcyBzaW1pbGFy IHRvIGxvbmdzdGFuZGluZyBjb25zaXN0ZW5jeSByZXF1aXJlbWVudHMgd2l0aAorICAtLWVu YWJsZS1sYXJnZWZpbGUgYW5kIC0tZGlzYWJsZS1sYXJnZWZpbGUuCisKKyoqKiBBQ19TWVNf TEFSR0VGSUxFIG5vdyBvcHRpb25hbGx5IGFycmFuZ2VzIHRvIHdpZGVuIHRpbWVfdC4KKyAg SXQgbm93IGFjdHMgbGlrZSBBQ19TWVNfWUVBUjIwMzgsIGV4Y2VwdCAnY29uZmlndXJlJyBk ZWZhdWx0cyB0bworICAtLWRpc2FibGUteWVhcjIwMzggdW5sZXNzIEFDX1NZU19ZRUFSMjAz OCBpcyBhbHNvIHByZXNlbnQuCisgIEFzIHdpdGggQUNfU1lTX1lFQVIyMDM4LCBhcHBsaWNh dGlvbiBhbmQgbGlicmFyeSBidWlsZGVycyBzaG91bGQKKyAgY29uZmlndXJlIGNvbnNpc3Rl bnRseS4KKworKioqIE5ldyBtYWNyb3MgQUNfU1lTX0xBUkdFRklMRV9SRVFVSVJFRCBhbmQg QUNfU1lTX1lFQVIyMDM4X1JFUVVJUkVELgorICBUaGVzZSBhY3QgbGlrZSBBQ19TWVNfTEFS R0VGSUxFIGFuZCBBQ19TWVNfWUVBUjIwMzggcmVzcGVjdGl2ZWx5LAorICBleGNlcHQgdGhh dCB0aGV5IHJlcXVpcmUgbGFyZ2UtZmlsZSBhbmQgeWVhci0yMDM4IHN1cHBvcnQgcmVzcGVj dGl2ZWx5LgorICBBcyB3aXRoIEFDX1NZU19ZRUFSMjAzOCwgYXBwbGljYXRpb24gYW5kIGxp YnJhcnkgYnVpbGRlcnMgc2hvdWxkCisgIGNvbmZpZ3VyZSBjb25zaXN0ZW50bHkuCiAKICoq KiBBQ19VU0VfU1lTVEVNX0VYVEVOU0lPTlMgbm93IGVuYWJsZXMgQzIzIEFubmV4IEYgZXh0 ZW5zaW9ucwogICBieSBkZWZpbmluZyBfX1NURENfV0FOVF9JRUNfNjA1NTlfRVhUX18uCmRp ZmYgLS1naXQgYS9kb2MvYXV0b2NvbmYudGV4aSBiL2RvYy9hdXRvY29uZi50ZXhpCmluZGV4 IGRmOTYyODBiLi5jZTIxNDI4NCAxMDA2NDQKLS0tIGEvZG9jL2F1dG9jb25mLnRleGkKKysr IGIvZG9jL2F1dG9jb25mLnRleGkKQEAgLTg3OTgsNzEgKzg3OTgsMTA5IEBAIGlmIHRoZSBz eXN0ZW0gc3VwcG9ydHMgQHNhbXB7IyF9LCBAc2FtcHtub30gaWYgbm90LgogQGRlZm1hYyBB Q19TWVNfTEFSR0VGSUxFCiBAYWNpbmRleHtTWVNfTEFSR0VGSUxFfQogQGN2aW5kZXggX0ZJ TEVfT0ZGU0VUX0JJVFMKK0BjdmluZGV4IF9USU1FX0JJVFMKIEBvdmluZGV4IENDCiBAY2lu ZGV4IExhcmdlIGZpbGUgc3VwcG9ydAogQGNpbmRleCBMRlMKLUlmIHRoZSBkZWZhdWx0IEBj b2Rle29mZl90fSB0eXBlIGlzIGEgMzItYml0IGludGVnZXIsIGFuZCB0aGVyZWZvcmUKLWNh bm5vdCBiZSB1c2VkIHRvIHdvcmsgd2l0aCBmaWxlcyBsYXJnZXIgdGhhbiA0IGdpZ2FieXRl cywgYXJyYW5nZSB0bwotbWFrZSBhIGxhcmdlciBAY29kZXtvZmZfdH0gYXZhaWxhYmxlLCBp ZiB0aGUgc3lzdGVtIHN1cHBvcnRzIHRoaXMuCi1TZXZlcmFsIG90aGVyIHR5cGVzIHJlbGF0 ZWQgdG8gdGhlIHNpemVzIG9mIGZpbGVzIGFuZCBmaWxlIHN5c3RlbXMgd2lsbAotYWxzbyBi ZSBlbmxhcmdlZDogQGNvZGV7aW5vX3R9LCBAY29kZXtibGtjbnRfdH0sIEBjb2Rle2ZzYmxr Y250X3R9LAotQGNvZGV7ZnNmaWxjbnRfdH0sIGFuZCBwb3NzaWJseSBAY29kZXtkZXZfdH0u Ci0KLUlmIGEgbGFyZ2UgQGNvZGV7b2ZmX3R9IGlzIGF2YWlsYWJsZSAod2hldGhlciBvciBu b3QgYW55IGFycmFuZ2VtZW50cwotd2VyZSBuZWNlc3NhcnkpLCB0aGUgc2hlbGwgdmFyaWFi bGUgQGNvZGV7YWNfaGF2ZV9sYXJnZWZpbGV9IHdpbGwgYmUgc2V0Ci10byBAc2FtcHt5ZXN9 OyBpZiBub3QsIGl0IHdpbGwgYmUgc2V0IHRvIEBzYW1we25vfS4KLQotUHJlcHJvY2Vzc29y IG1hY3JvcyB3aWxsIGJlIGRlZmluZWQgaWYgbmVjZXNzYXJ5IHRvIG1ha2UgYSBsYXJnZXIK LUBjb2Rle29mZl90fSBhdmFpbGFibGUuICAoRm9yIGV4YW1wbGUsIG9uIG1hbnkgc3lzdGVt cyB0aGUgbWFjcm8KLUBjb2Rle19GSUxFX09GRlNFVF9CSVRTfSB3aWxsIGJlIGRlZmluZWQu KSAgU29tZSBvZiB0aGVzZSBtYWNyb3Mgb25seQotd29yayBpZiB0aGV5IGFyZSBkZWZpbmVk IGJlZm9yZSB0aGUgZmlyc3Qgc3lzdGVtIGhlYWRlciBpcyBpbmNsdWRlZDsKK0lmIHRoZSBk ZWZhdWx0IEBjb2Rle29mZl90fSB0eXBlIGlzIGEgMzItYml0IGludGVnZXIsCithbmQgdGhl cmVmb3JlIGNhbm5vdCBiZSB1c2VkIHdpdGggZmlsZXMgMiBHaUIgb3IgbGFyZ2VyLAorbWFr ZSBhIHdpZGVyIEBjb2Rle29mZl90fSBhdmFpbGFibGUgaWYgdGhlIHN5c3RlbSBzdXBwb3J0 cyBpdC4KK1NpbWlsYXJseSwgd2lkZW4gb3RoZXIgdHlwZXMgcmVsYXRlZCB0byBzaXplcyBv ZiBmaWxlcyBhbmQgZmlsZSBzeXN0ZW1zCitpZiBwb3NzaWJsZS4gIFRoZXNlIHR5cGVzIG1h eSBpbmNsdWRlIEBjb2Rle2Jsa2NudF90fSwgQGNvZGV7ZGV2X3R9LAorQGNvZGV7aW5vX3R9 LCBAY29kZXtmc2Jsa2NudF90fSwgQGNvZGV7ZnNmaWxjbnRfdH0sIGFuZCBAY29kZXtybGlt X3R9LgorCitBbHNvLCBhcnJhbmdlIGZvciBhIEBjb21tYW5ke2NvbmZpZ3VyZX0gb3B0aW9u IEBjb2Rley0tZW5hYmxlLXllYXIyMDM4fQordG8gcmVxdWVzdCB3aWRlbmluZyB0aGUgdHlw ZSBAY29kZXt0aW1lX3R9IGFzIG5lZWRlZCB0byByZXByZXNlbnQgZmlsZQord2FuZCBvdGhl ciB0aW1lc3RhbXBzIGFmdGVyIEphbnVhcnkgMjAzOC4gIFRoaXMgd2lkZW5pbmcgaXMgcG9z c2libGUKK29ubHkgb24gMzItYml0IEdOVS9MaW51eCB4ODYgYW5kIEFSTSBzeXN0ZW1zIHdp dGggZ2xpYmMgMi4zNCBvciBsYXRlci4KK0lmIHllYXItMjAzOCBzdXBwb3J0IGlzIHJlcXVl c3RlZCBidXQgQGNvbW1hbmR7Y29uZmlndXJlfSBmYWlscyB0byBmaW5kIGEgd2F5Cit0byB3 aWRlbiBAY29kZXt0aW1lX3R9IGFuZCBpbnNwZWN0aW9uIG9mIHRoZSBzeXN0ZW0gc3VnZ2Vz dHMgdGhhdAordGhpcyBmZWF0dXJlIGlzIGF2YWlsYWJsZSBzb21laG93LCBAY29tbWFuZHtj b25maWd1cmV9IHdpbGwgZXJyb3Igb3V0LgorSWYgeW91IHdhbnQgdGhlIGRlZmF1bHQgdG8g YmUgQGNvZGV7LS1lbmFibGUteWVhcjIwMzh9LCB5b3UgY2FuIHVzZQorQGNvZGV7QUNfU1lT X1lFQVIyMDM4fSBpbnN0ZWFkIG9mIEBjb2Rle0FDX1NZU19MQVJHRUZJTEV9LgorSW4gb3Ro ZXIgd29yZHMsIG9sZGVyIHBhY2thZ2VzIHRoYXQgaGF2ZSBsb25nIHVzZWQgQGNvZGV7QUNf U1lTX0xBUkdFRklMRX0KK2NhbiBoYXZlIHllYXItMjAzOCBzdXBwb3J0IG9uIDMyLWJpdCBH TlUvTGludXggeDg2IGFuZCBBUk0gc3lzdGVtcyBlaXRoZXIgYnkKK3JlZ2VuZXJhdGluZyBA ZmlsZXtjb25maWd1cmV9IHdpdGggY3VycmVudCBBdXRvY29uZiBhbmQgY29uZmlndXJpbmcg d2l0aAorQG9wdGlvbnstLWVuYWJsZS15ZWFyMjAzOH0sIG9yIGJ5IHVzaW5nIEBjb2Rle0FD X1NZU19ZRUFSMjAzOH0gYW5kCitjb25maWd1cmluZyB3aXRob3V0IEBvcHRpb257LS1kaXNh YmxlLXllYXIyMDM4fS4KK0EgZnV0dXJlIHZlcnNpb24gb2YgQXV0b2NvbmYgbWlnaHQgY2hh bmdlIHRoZSBAY29kZXtBQ19TWVNfTEFSR0VGSUxFfQorZGVmYXVsdCB0byBAY29kZXstLWVu YWJsZS15ZWFyMjAzOH07IGlmIGFuZCB3aGVuIHRoYXQgaGFwcGVucywKK0Bjb2Rle0FDX1NZ U19MQVJHRUZJTEV9IGFuZCBAY29kZXtBQ19TWVNfWUVBUjIwMzh9IHdpbGwgYmVjb21lIGVx dWl2YWxlbnQuCitAeHJlZntBQ19TWVNfWUVBUjIwMzh9LgorCitTZXQgdGhlIHNoZWxsIHZh cmlhYmxlIEBjb2Rle2FjX2hhdmVfbGFyZ2VmaWxlfSB0byB0byBAc2FtcHt5ZXN9IG9yCitA Y29kZXtub30gZGVwZW5kaW5nIG9uIHdoZXRoZXIgYSB3aWRlIEBjb2Rle29mZl90fSBpcyBh dmFpbGFibGUsCityZWdhcmRsZXNzIG9mIHdoZXRoZXIgYXJyYW5nZW1lbnRzIHdlcmUgbmVj ZXNzYXJ5LgorU2ltaWxhcmx5LCBzZXQgdGhlIHNoZWxsIHZhcmlhYmxlIEBjb2Rle2FjX2hh dmVfeWVhcjIwMzh9IHRvIEBjb2Rle3llc30KK29yIEBjb2Rle25vfSBkZXBlbmRpbmcgb24g d2hldGhlciBhIHdpZGUtZW5vdWdoIEBjb2Rle3RpbWVfdH0gaXMgYXZhaWxhYmxlLgorCitE ZWZpbmUgcHJlcHJvY2Vzc29yIG1hY3JvcyBpZiBuZWNlc3NhcnkgdG8gbWFrZSB0eXBlcyB3 aWRlcjsKK2ZvciBleGFtcGxlLCBvbiBHTlUvTGludXggc3lzdGVtcyB0aGUgbWFjcm9zIEBj b2Rle19GSUxFX09GRlNFVF9CSVRTfQorYW5kIEBjb2Rle19USU1FX0JJVFN9IGNhbiBiZSBk ZWZpbmVkLiAgU29tZSBvZiB0aGVzZSBtYWNyb3Mgd29yayBvbmx5IGlmCitkZWZpbmVkIGJl Zm9yZSB0aGUgZmlyc3Qgc3lzdGVtIGhlYWRlciBpcyBpbmNsdWRlZDsKIHRoZXJlZm9yZSwg d2hlbiB1c2luZyB0aGlzIG1hY3JvIGluIGNvbmNlcnQgd2l0aAogQGNvZGV7QUNfQ09ORklH X0hFQURFUlN9LCBtYWtlIHN1cmUgdGhhdCBAZmlsZXtjb25maWcuaH0gaXMgaW5jbHVkZWQK IGJlZm9yZSBhbnkgc3lzdGVtIGhlYWRlcnMuCiAKLU9uIGEgZmV3IG9sZGVyIHN5c3RlbXMs IHRoZSBvdXRwdXQgdmFyaWFibGUgQGNvZGV7Q0N9IHdpbGwgYWxzbyBiZQotY2hhbmdlZCB0 byBhZGQgc3BlY2lhbCBjb21waWxlciBvcHRpb25zIHRoYXQgYXJlIG5lZWRlZCB0byBlbmFi bGUgbGFyZ2UKLUBjb2Rle29mZl90fS4KK09uIG9ic29sZXRlIElSSVggc3lzdGVtcywgYWxz byBjaGFuZ2UgdGhlIG91dHB1dCB2YXJpYWJsZSBAY29kZXtDQ30gdG8KK2FkZCBjb21waWxl ciBvcHRpb25zIG5lZWRlZCBmb3Igd2lkZSBAY29kZXtvZmZfdH0uCiAKIExhcmdlLWZpbGUg c3VwcG9ydCBjYW4gYmUgZGlzYWJsZWQgYnkgY29uZmlndXJpbmcgd2l0aCB0aGUKLUBvcHRp b257LS1kaXNhYmxlLWxhcmdlZmlsZX0gb3B0aW9uLiAgTm90ZSB0aGF0IHRoaXMgaGFzIG5v IGVmZmVjdCBvbgotc3lzdGVtcyB3aGVyZSBAY29kZXtvZmZfdH0gaXMgNjQgYml0cyBvciBs YXJnZXIgYnkgZGVmYXVsdC4gIERpc2FibGluZwotbGFyZ2UtZmlsZSBzdXBwb3J0IGNhbiBo YXZlIHN1cnByaXNpbmcgZWZmZWN0cywgc3VjaCBhcyBjYXVzaW5nCi1mdW5jdGlvbnMgbGlr ZSBAY29kZXtyZWFkZGlyfSBhbmQgQGNvZGV7c3RhdH0gdG8gZmFpbCBvbiBzbWFsbCBmaWxl cwotKGJlY2F1c2UgdGhlaXIgQGVtcGh7aW5vZGUgbnVtYmVyc30gYXJlIHVucmVwcmVzZW50 YWJsZSkuCitAb3B0aW9uey0tZGlzYWJsZS1sYXJnZWZpbGV9IG9wdGlvbiwgYW5kIHllYXIt MjAzOCBzdXBwb3J0IGNhbgorYmUgZW5hYmxlZCBhbmQgZGlzYWJsZWQgdmlhIHRoZSBAb3B0 aW9uey0tZW5hYmxlLXllYXIyMDM4fSBhbmQKK0BvcHRpb257LS1kaXNhYmxlLXllYXIyMDM4 fSBvcHRpb25zLiAgVGhlc2Ugb3B0aW9ucyBoYXZlIG5vIGVmZmVjdCBvbgorc3lzdGVtcyB3 aGVyZSB0eXBlcyBhcmUgd2lkZSBlbm91Z2ggYnkgZGVmYXVsdC4KK0xhcmdlLWZpbGUgc3Vw cG9ydCBpcyByZXF1aXJlZCBmb3IgeWVhci0yMDM4IHN1cHBvcnQ6IGlmIHlvdSBjb25maWd1 cmUKK3dpdGggQG9wdGlvbnstLWRpc2FibGUtbGFyZ2VmaWxlfSBvbiBhIHBsYXRmb3JtIHdp dGggMzItYml0CitAY29kZXt0aW1lX3R9LCB0aGVuIHllYXItMjAzOCBzdXBwb3J0IGlzIG5v dCBhdmFpbGFibGUuCisKK0Rpc2FibGluZyBsYXJnZS1maWxlIG9yIHllYXItMjAzOCBzdXBw b3J0IGNhbiBoYXZlIHN1cnByaXNpbmcgZWZmZWN0cywKK3N1Y2ggYXMgY2F1c2luZyBmdW5j dGlvbnMgbGlrZSBAY29kZXtyZWFkZGlyfSBhbmQgQGNvZGV7c3RhdH0gdG8gZmFpbAorZXZl biBvbiBhIHNtYWxsIGZpbGUgYmVjYXVzZSBpdHMgaW5vZGUgbnVtYmVyIG9yIHRpbWVzdGFt cCBpcyBvdXQgb2YgcmFuZ2UuCiAKIFJlZ2FyZGxlc3Mgb2Ygd2hldGhlciB5b3UgdXNlIHRo aXMgbWFjcm8sIHBvcnRhYmxlIHByb2dyYW1zIHNob3VsZCBub3QKIGFzc3VtZSB0aGF0IGFu eSBvZiB0aGUgdHlwZXMgbGlzdGVkIGFib3ZlIGZpdCBpbnRvIGEgQGNvZGV7bG9uZyBpbnR9 LgotRm9yIGV4YW1wbGUsIGl0IGlzIG5vdCBjb3JyZWN0IHRvIHByaW50IGFuIGFyYml0cmFy eSBAY29kZXtvZmZfdH0gdmFsdWUKLUBjb2Rle1h9IHdpdGggQGNvZGV7cHJpbnRmICgiJWxk IiwgKGxvbmcgaW50KSBYKX0uCitGb3IgZXhhbXBsZSwgaXQgaXMgbm90IHBvcnRhYmxlIHRv IHByaW50IGFuIGFyYml0cmFyeSBAY29kZXtvZmZfdH0gb3IKK0Bjb2Rle3RpbWVfdH0gdmFs dWUgQGNvZGV7WH0gd2l0aCBAY29kZXtwcmludGYgKCIlbGQiLCAobG9uZyBpbnQpIFgpfS4K IAotTm90ZSB0aGF0IHRoZSBzdGFuZGFyZCBDIGxpYnJhcnkgZnVuY3Rpb25zIEBjb2Rle2Zz ZWVrfSBhbmQgQGNvZGV7ZnRlbGx9CitUaGUgc3RhbmRhcmQgQyBsaWJyYXJ5IGZ1bmN0aW9u cyBAY29kZXtmc2Vla30gYW5kIEBjb2Rle2Z0ZWxsfQogZG8gbm90IHVzZSBAY29kZXtvZmZf dH0uICBJZiB5b3UgbmVlZCB0byB1c2UgZWl0aGVyIG9mIHRoZXNlIGZ1bmN0aW9ucywKIHlv dSBzaG91bGQgdXNlIEBjb2Rle0FDX0ZVTkNfRlNFRUtPfSBhcyB3ZWxsIGFzIEBjb2Rle0FD X1NZU19MQVJHRUZJTEV9LAotYW5kIHRoZW4gdXNlIHRoZWlyIFBvc2l4IHJlcGxhY2VtZW50 cyBAY29kZXtmc2Vla299IGFuZCBAY29kZXtmdGVsbG99LAotd2hpY2ggQGVtcGh7ZG99IHVz ZSBAY29kZXtvZmZfdH0sIHdoZW4gYXZhaWxhYmxlLiAgQHhyZWZ7QUNfRlVOQ19GU0VFS099 LgotCi1BcyBvZiBBdXRvY29uZiAyLjcyLCBAY29kZXtBQ19TWVNfTEFSR0VGSUxFfSBhbHNv IEBlbXBoe29wdGlvbmFsbHl9Ci1hcnJhbmdlcyB0byBlbmxhcmdlIEBjb2Rle3RpbWVfdH0u ICBUaGlzIGlzIHRvIG1ha2UgaXQgZWFzaWVyIHRvIGJ1aWxkCi1wcm9ncmFtcyB0aGF0IHN1 cHBvcnQgdGltZXN0YW1wcyBhZnRlciAyMDM4OyBtYW55IGNvbmZpZ3VyZSBzY3JpcHRzIHdp bGwKLW5vdCBuZWVkIHRvIGJlIG1vZGlmaWVkLCBvbmx5IHJlZ2VuZXJhdGVkIHdpdGggbmV3 ZXIgQXV0b2NvbmYuICBXaGVuCi1AY29kZXtBQ19TWVNfTEFSR0VGSUxFfSBpcyB1c2VkLCBh bmQgQGNvZGV7QUNfU1lTX1lFQVIyMDM4fSBpcwotQGVtcGh7bm90fSB1c2VkLCBAY29kZXt0 aW1lX3R9IHdpbGwgbm9ybWFsbHkgYmUgbGVmdCBhdCB0aGUgc3lzdGVtJ3MKLWRlZmF1bHQg c2l6ZSwgYnV0IHlvdSBjYW4gcmVxdWVzdCBpdCBiZSBlbmxhcmdlZCBieSBjb25maWd1cmlu ZyB3aXRoIHRoZQotQG9wdGlvbnstLWVuYWJsZS15ZWFyMjAzOH0gb3B0aW9uLiAgKFdoZW4g QGNvZGV7QUNfU1lTX1lFQVIyMDM4fSBpcyBhbHNvCi11c2VkLCBAY29kZXt0aW1lX3R9IGlz IGVubGFyZ2VkIGlmIHBvc3NpYmxlLiAgQHhyZWZ7QUNfU1lTX1lFQVIyMDM4fS4pCithbmQg dGhlbiB1c2UgdGhlaXIgUG9zaXggcmVwbGFjZW1lbnRzIEBjb2Rle2ZzZWVrb30gYW5kIEBj b2Rle2Z0ZWxsb30uCitAeHJlZntBQ19GVU5DX0ZTRUVLT30uCisKK1doZW4gdXNpbmcgQGNv ZGV7QUNfU1lTX0xBUkdFRklMRX0gaW4gZGlmZmVyZW50IHBhY2thZ2VzIHRoYXQgYXJlIGxp bmtlZAordG9nZXRoZXIgYW5kIHRoYXQgaGF2ZSBpbnRlcmZhY2VzIHRoYXQgZGVwZW5kIG9u IHRoZSB3aWR0aCBvZiBAY29kZXtvZmZfdH0sCitAY29kZXt0aW1lX3R9IG9yIHJlbGF0ZWQg dHlwZXMsIHRoZSBzaW1wbGVzdCB0aGluZyBpcyB0byBjb25maWd1cmUgYWxsCitjb21wb25l bnRzIHRoZSBzYW1lIHdheS4gIEZvciBleGFtcGxlLCBpZiBhbiBhcHBsaWNhdGlvbiB1c2Vz CitAY29kZXtBQ19TWVNfTEFSR0VGSUxFfSBhbmQgaXMgY29uZmlndXJlZCB3aXRoCitAb3B0 aW9uey0tZW5hYmxlLXllYXIyMDM4fSwgbGlicmFyaWVzIGl0IGxpbmtzIHRvIHdpdGggYW4g QGNvZGV7b2ZmX3R9LQorb3IgQGNvZGV7dGltZV90fS1kZXBlbmRlbnQgaW50ZXJmYWNlIHNo b3VsZCBiZSBjb25maWd1cmVkIGVxdWl2YWxlbnRseS4KK0FsdGVybmF0aXZlbHksIHlvdSBj YW4gbW9kaWZ5IGxpYnJhcmllcyB0byBzdXBwb3J0IGJvdGggMzItIGFuZCA2NC1iaXQKK2lu dGVyZmFjZXMgdGhvdWdoIHRoaXMgaXMgbW9yZSB3b3JrIGFuZCBmZXcgbGlicmFyaWVzIG90 aGVyIHRoYW4gdGhlIEMKK2xpYnJhcnkgaXRzZWxmIGFyZSBtb2RpZmllZCBpbiB0aGlzIHdh eS4KKworQXBwbGljYXRpb25zIGFuZCBsaWJyYXJpZXMgc2hvdWxkIGJlIGNvbmZpZ3VyZWQg Y29tcGF0aWJseS4KK0lmIEBjb2Rle29mZl90fSwgQGNvZGV7dGltZV90fSBvciByZWxhdGVk IHR5cGVzIGFwcGVhciBpbiBhIGxpYnJhcnkncworcHVibGljIGludGVyZmFjZSwgZW5hYmxp bmcgb3IgZGlzYWJsaW5nIHRoZSBsaWJyYXJ5J3MgbGFyZ2UtZmlsZSBvcgoreWVhci0yMDM4 IHN1cHBvcnQgbWF5IGJyZWFrIGJpbmFyeSBjb21wYXRpYmlsaXR5IHdpdGggYXBwbGljYXRp b25zIG9yCit3aXRoIG90aGVyIGxpYnJhcmllcy4gIFNpbWlsYXJseSwgaWYgYW4gYXBwbGlj YXRpb24gbGlua3MgdG8gYSBzdWNoIGEKK2xpYnJhcnksIGVuYWJsaW5nIG9yIGRpc2FibGlu ZyB0aGUgYXBwbGljYXRpb24ncyBsYXJnZS1maWxlIHN1cHBvcnQgbWF5CiticmVhayBiaW5h cnkgY29tcGF0aWJpbGl0eSB3aXRoIHRoYXQgbGlicmFyeS4KIEBlbmQgZGVmbWFjCiAKIEBk ZWZtYWMgQUNfU1lTX0xBUkdFRklMRV9SRVFVSVJFRAogQGFjaW5kZXh7U1lTX0xBUkdFRklM RV9SRVFVSVJFRH0KIFRoaXMgbWFjcm8gaGFzIHRoZSBzYW1lIGVmZmVjdCBhcyBAY29kZXtB Q19TWVNfTEFSR0VGSUxFfSwKIGJ1dCBhbHNvIGRlY2xhcmVzIHRoYXQgdGhlIHByb2dyYW0g YmVpbmcgY29uZmlndXJlZAotQGVtcGh7cmVxdWlyZXN9IHN1cHBvcnQgZm9yIGxhcmdlIGZp bGVzLgorcmVxdWlyZXMgc3VwcG9ydCBmb3IgbGFyZ2UgZmlsZXMuCiBJZiBhIGxhcmdlIEBj b2Rle29mZl90fSBpcyB1bmF2YWlsYWJsZSwKIEBjb21tYW5ke2NvbmZpZ3VyZX0gd2lsbCBl cnJvciBvdXQuCiBUaGUgQG9wdGlvbnstLWRpc2FibGUtbGFyZ2VmaWxlfSBvcHRpb24gd2ls bCBub3QgYmUgYXZhaWxhYmxlLgotQGVuZCBkZWZtYWMKIAorTGFyZ2UtZmlsZSBhbmQgeWVh ci0yMDM4IHN1cHBvcnQgZm9yIGFwcGxpY2F0aW9ucyBhbmQgbGlicmFyaWVzIHNob3VsZAor YmUgY29uZmlndXJlZCBjb21wYXRpYmx5LiAgQHhyZWZ7QUNfU1lTX0xBUkdFRklMRX0uCitA ZW5kIGRlZm1hYwogCiBAYW5jaG9ye0FDX1NZU19MT05HX0ZJTEVfTkFNRVN9CiBAZGVmbWFj IEFDX1NZU19MT05HX0ZJTEVfTkFNRVMKQEAgLTg4ODUsNTUgKzg5MjMsMjQgQEAgc3lzdGVt LiAgSWYgc28sIHNldCB0aGUgc2hlbGwgdmFyaWFibGUgQGNvZGV7YWNfY3Zfc3lzX3Bvc2l4 X3Rlcm1pb3N9IHRvCiBAYW5jaG9ye0FDX1NZU19ZRUFSMjAzOH0KIEBkZWZtYWMgQUNfU1lT X1lFQVIyMDM4CiBAYWNpbmRleHtTWVNfWUVBUjIwMzh9Ci1AY3ZpbmRleCBfVElNRV9CSVRT CiBAY2luZGV4IFllYXIgMjAzOAotSWYgdGhlIGRlZmF1bHQgQGNvZGV7dGltZV90fSB0eXBl IGlzIGEgc2lnbmVkIDMyLWJpdCBpbnRlZ2VyLAotYW5kIHRoZXJlZm9yZSAoYXNzdW1pbmcg dGhlIHVzdWFsIFVuaXggZXBvY2gpIGNhbm5vdCByZXByZXNlbnQKLXRpbWVzdGFtcHMgYWZ0 ZXIgbWlkLUphbnVhcnkgb2YgMjAzOCwgYXJyYW5nZSB0byBtYWtlIGEgbGFyZ2VyCi1AY29k ZXt0aW1lX3R9IGF2YWlsYWJsZSwgaWYgdGhlIHN5c3RlbSBzdXBwb3J0cyB0aGlzLgotCi1J ZiBhIGxhcmdlIEBjb2Rle3RpbWVfdH0gaXMgYXZhaWxhYmxlICh3aGV0aGVyIG9yIG5vdCBh bnkgYXJyYW5nZW1lbnRzCi13ZXJlIG5lY2Vzc2FyeSksIHRoZSBzaGVsbCB2YXJpYWJsZSBA Y29kZXthY19oYXZlX3llYXIyMDM4fSB3aWxsIGJlIHNldAotdG8gQHNhbXB7eWVzfTsgaWYg bm90LCBpdCB3aWxsIGJlIHNldCB0byBAc2FtcHtub30uCi0KLVByZXByb2Nlc3NvciBtYWNy b3Mgd2lsbCBiZSBkZWZpbmVkIGlmIG5lY2Vzc2FyeSB0byBtYWtlIGEgbGFyZ2VyCi1AY29k ZXt0aW1lX3R9IGF2YWlsYWJsZS4gIChGb3IgZXhhbXBsZSwgb24gc29tZSBzeXN0ZW1zIHRo ZSBtYWNybwotQGNvZGV7X1RJTUVfQklUU30gd2lsbCBiZSBkZWZpbmVkLikgIFNvbWUgb2Yg dGhlc2UgbWFjcm9zIG9ubHkgd29yayBpZgotdGhleSBhcmUgZGVmaW5lZCBiZWZvcmUgdGhl IGZpcnN0IHN5c3RlbSBoZWFkZXIgaXMgaW5jbHVkZWQ7IHRoZXJlZm9yZSwKLXdoZW4gdXNp bmcgdGhpcyBtYWNybyBpbiBjb25jZXJ0IHdpdGggQGNvZGV7QUNfQ09ORklHX0hFQURFUlN9 LCBtYWtlCi1zdXJlIHRoYXQgQGZpbGV7Y29uZmlnLmh9IGlzIGluY2x1ZGVkIGJlZm9yZSBh bnkgc3lzdGVtIGhlYWRlcnMuCi0KLVN1cHBvcnQgZm9yIHRpbWVzdGFtcHMgYWZ0ZXIgMjAz OCBjYW4gYmUgZGlzYWJsZWQgYnkgY29uZmlndXJpbmcgd2l0aAotdGhlIEBvcHRpb257LS1k aXNhYmxlLXllYXIyMDM4fSBvcHRpb24uICBOb3RlIHRoYXQgdGhpcyBoYXMgbm8gZWZmZWN0 IG9uCi1zeXN0ZW1zIHdoZXJlIEBjb2Rle3RpbWVfdH0gaXMgNjQgYml0cyBvciBsYXJnZXIg YnkgZGVmYXVsdC4KLUlmIHRoaXMgb3B0aW9uIGlzIEBlbXBoe25vdH0gZ2l2ZW4sIGFuZCBA Y29tbWFuZHtjb25maWd1cmV9IGZhaWxzIHRvCi1maW5kIGEgd2F5IHRvIGVuYWJsZSBhIGxh cmdlIEBjb2Rle3RpbWVfdH0sIGJ1dCBpbnNwZWN0aW9uIG9mIHRoZQotc3lzdGVtIHN1Z2dl c3RzIHRoYXQgdGhpcyBmZWF0dXJlIGlzIGF2YWlsYWJsZSBAZW1waHtzb21laG93fSwgaXQg d2lsbAotZXJyb3Igb3V0LgotCi1SZWdhcmRsZXNzIG9mIHdoZXRoZXIgeW91IHVzZSB0aGlz IG1hY3JvLCBwb3J0YWJsZSBwcm9ncmFtcyBzaG91bGQgbm90Ci1hc3N1bWUgdGhhdCBAY29k ZXt0aW1lX3R9IGZpdHMgaW50byBAY29kZXtsb25nIGludH0uICBGb3IgZXhhbXBsZSwgaXQg aXMKLW5vdCBjb3JyZWN0IHRvIHByaW50IGFuIGFyYml0cmFyeSBAY29kZXt0aW1lX3R9IHZh bHVlIEBjb2Rle1h9IHdpdGgKLUBjb2Rle3ByaW50ZiAoIiVsZCIsIChsb25nIGludCkgWCl9 LgotCi1Ac3Ryb25ne0NhdXRpb246fSBJZiB5b3UgYXJlIGRldmVsb3BpbmcgYSBzaGFyZWQg bGlicmFyeSwgYW5kCi1AY29kZXt0aW1lX3R9IGFwcGVhcnMgYW55d2hlcmUgaW4geW91ciBs aWJyYXJ5J3MgcHVibGljIGludGVyZmFjZSwgdXNlCi1vZiB0aGlzIG1hY3JvIG1heSBicmVh ayBiaW5hcnkgY29tcGF0aWJpbGl0eSB3aXRoIG9sZGVyIGV4ZWN1dGFibGVzLgorVGhpcyBp cyBsaWtlIEBjb2Rle0FDX1NZU19MQVJHRUZJTEV9IGV4Y2VwdCBpdCBkZWZhdWx0cyB0byBl bmFibGluZworaW5zdGVhZCBvZiBkaXNhYmxpbmcgeWVhci0yMDM4IHN1cHBvcnQuICBZZWFy LTIwMzggc3VwcG9ydCBmb3IKK2FwcGxpY2F0aW9ucyBhbmQgbGlicmFyaWVzIHNob3VsZCBi ZSBjb25maWd1cmVkIGNvbXBhdGlibHkuCitAeHJlZntBQ19TWVNfTEFSR0VGSUxFfS4KIEBl bmQgZGVmbWFjCiAKIEBkZWZtYWMgQUNfU1lTX1lFQVIyMDM4X1JFUVVJUkVECiBAYWNpbmRl eHtTWVNfWUVBUjIwMzhfUkVRVUlSRUR9CiBUaGlzIG1hY3JvIGhhcyB0aGUgc2FtZSBlZmZl Y3QgYXMgQGNvZGV7QUNfU1lTX1lFQVIyMDM4fSwKIGJ1dCBhbHNvIGRlY2xhcmVzIHRoYXQg dGhlIHByb2dyYW0gYmVpbmcgY29uZmlndXJlZAotQGVtcGh7cmVxdWlyZXN9IHN1cHBvcnQg Zm9yIHRpbWVzdGFtcHMgYWZ0ZXIgbWlkLUphbnVhcnkgb2YgMjAzOC4KK3JlcXVpcmVzIHN1 cHBvcnQgZm9yIHRpbWVzdGFtcHMgYWZ0ZXIgbWlkLUphbnVhcnkgb2YgMjAzOC4KIElmIGEg bGFyZ2UgQGNvZGV7dGltZV90fSBpcyB1bmF2YWlsYWJsZSwKLUBjb21tYW5ke2NvbmZpZ3Vy ZX0gd2lsbCBAZW1waHt1bmNvbmRpdGlvbmFsbHl9IGVycm9yIG91dAotKHVubGlrZSB0aGUg YmVoYXZpb3Igb2YgQGNvZGV7QUNfU1lTX1lFQVIyMDM4fSkuCitAY29tbWFuZHtjb25maWd1 cmV9IHdpbGwgdW5jb25kaXRpb25hbGx5IGVycm9yIG91dC4KIFRoZSBAb3B0aW9uey0tZGlz YWJsZS15ZWFyMjAzOH0gb3B0aW9uIHdpbGwgbm90IGJlIGF2YWlsYWJsZS4KIAotQHN0cm9u Z3tDYXV0aW9uOn0gSWYgeW91IGFyZSBkZXZlbG9waW5nIGEgc2hhcmVkIGxpYnJhcnksIGFu ZAotQGNvZGV7dGltZV90fSBhcHBlYXJzIGFueXdoZXJlIGluIHlvdXIgbGlicmFyeSdzIHB1 YmxpYyBpbnRlcmZhY2UsIHVzZQotb2YgdGhpcyBtYWNybyBtYXkgYnJlYWsgYmluYXJ5IGNv bXBhdGliaWxpdHkgd2l0aCBvbGRlciBleGVjdXRhYmxlcy4KK1llYXItMjAzOCBzdXBwb3J0 IGZvciBhcHBsaWNhdGlvbnMgYW5kIGxpYnJhcmllcyBzaG91bGQgYmUgY29uZmlndXJlZAor Y29tcGF0aWJseS4gIEB4cmVme0FDX1NZU19ZRUFSMjAzOH0uCiBAZW5kIGRlZm1hYwogCiBA bm9kZSBDIGFuZCBQb3NpeCBWYXJpYW50cwotLSAKMi4zOC4xCgo= --------------a0ILeQslYpd8AwO4hJBK86pe--