[ANN] fpGUI Toolkit v2.1.0 release
Graeme Geldenhuys via fpc-pascal <[email protected]> Mon, 27 Apr 2026 18:34:55 +0100
| Newsgroups | gmane.comp.compilers.free-pascal.general |
|---|---|
| Message-ID | <2686621.XlxY0qsZeH@graeme-linux-desktop> |
SGkgZXZlcnlvbmUsCgpJJ20gaGFwcHkgdG8gYW5ub3VuY2UgYSBodWdlIG5ldyByZWxlYXNlIG9m IGZwR1VJIOKAlCB3aXRoIHNvbWUgbWFzc2l2ZSAKaW1wcm92ZW1lbnRzLCBuZXcgZmVhdHVyZXMs IG5ldyBhcHBsaWNhdGlvbnMgYW5kIHBsZW50eSBvZiBidWcgZml4ZXMuCgogICBodHRwczovL2dp dGh1Yi5jb20vZ3JhZW1lZy9mcEdVSQoKRmVlZGJhY2ssIGJ1ZyByZXBvcnRzLCBhbmQgcXVlc3Rp b25zIGFyZSB3ZWxjb21lIGFzIGFsd2F5cy4gSSBtb3N0bHkgbW9uaXRvciAKdGhlIEdpdEh1YiBi dWd0cmFja2VyIGFuZCB0aGUgZnBHVUkgc3VwcG9ydCBuZXdzZ3JvdXAgLSBzZWUgd2Vic2l0ZSBm b3IgCmRldGFpbHMuCgoKPT0gQnVpbGQgY29tbWFuZHMgPT0KCkZyYW1ld29yayBhbmQgYXBwbGlj YXRpb25zIGNhbiBiZSBidWlsdCB3aXRoIFBhc0J1aWxkOgoKICAgaHR0cHM6Ly9naXRodWIuY29t L2dyYWVtZWcvUGFzQnVpbGQKCiogRm9yIExpbnV4ICYgRnJlZUJTRAogICBwYXNidWlsZCBjb21w aWxlIC1wIHVuaXggICAgICAgIChidWlsZHMgZnJhbWV3b3JrICYgdG9vbHMpCiogRm9yIFdpbmRv d3MKICAgcGFzYnVpbGQgY29tcGlsZSAtcCB3aW5kb3dzICAgICAoYnVpbGRzIGZyYW1ld29yayAm IHRvb2xzKQoqIEZvciBtYWNPUwogICBwYXNidWlsZCBjb21waWxlIC1wIG1hY29zICAgICAgIChi dWlsZHMgZnJhbWV3b3JrICYgdG9vbHMpCgoKPT0gQ2hhbmdlbG9nID09Cgp2Mi4xLjAgKDIwMjYt MDQtMjcpCgogIC0gRXZlbnQgTG9vcCBSZWFyY2hpdGVjdHVyZQogICAgKiBXb3JrZXIgdGhyZWFk cyBjYW4gbm93IHdha2UgdGhlIG1haW4gZXZlbnQgbG9vcCBpbnN0YW50bHkgb24gYWxsCiAgICAg IHBsYXRmb3JtcyB3aXRob3V0IHdhaXRpbmcgZm9yIG1vdXNlIG1vdmVtZW50IG9yIHRpbWVyIGV4 cGlyeS4KICAgICogVFRocmVhZC5RdWV1ZSgpIGFuZCBUVGhyZWFkLlN5bmNocm9uaXplKCkgd2Fr ZSB0aGUgZXZlbnQgbG9vcAogICAgICBhdXRvbWF0aWNhbGx5IHZpYSBGUEMncyBXYWtlTWFpblRo cmVhZCBob29rLgogICAgKiBEdXBsaWNhdGUgRlBHTV9QQUlOVCBhbmQgRlBHTV9SRVNJWkUgbWVz c2FnZXMgZm9yIHRoZSBzYW1lIHdpZGdldAogICAgICBhcmUgY29hbGVzY2VkLCByZWR1Y2luZyBy ZWR1bmRhbnQgcHJvY2Vzc2luZyB1bmRlciBoaWdoIGxvYWQuCiAgICAqIE5ldyBUZnBnQXN5bmNU YXNrIGNsYXNzIGZvciBiYWNrZ3JvdW5kIHRhc2tzIHRoYXQgc2FmZWx5IHB1Ymxpc2gKICAgICAg cHJvZ3Jlc3MgdXBkYXRlcyB0byB0aGUgR1VJIHRocmVhZCAoU3dpbmdXb3JrZXItaW5zcGlyZWQp LgogICAgKiBOZXcgZnBnSW52b2tlTGF0ZXIoKSBzY2hlZHVsZXMgd29yayBvbiB0aGUgbWFpbiB0 aHJlYWQgZnJvbSBhbnkKICAgICAgdGhyZWFkLgogIC0gSHlicmlkIENhbnZhcyAobmV3KSDigJQg bm93IGRlZmF1bHQgb24gYWxsIHBsYXRmb3JtcwogICAgKiBUaGUgQWdnUGFzIGh5YnJpZCBjYW52 YXMgaXMgbm93IHRoZSBkZWZhdWx0IG9uIGFsbCBwbGF0Zm9ybXMuCiAgICAgIE5vIGV4dHJhIGJ1 aWxkIHByb2ZpbGUgaXMgcmVxdWlyZWQ7IHRoZSAnYWdnJyBhbmQgJ2ZyZWV0eXBlJwogICAgICBw cm9maWxlcyBoYXZlIGJlZW4gcmVtb3ZlZC4KICAgICogQ2FjaGVkIGJpdG1hcCBnbHlwaCByZW5k ZXJpbmcgZm9yIGZhc3Qgc3ludGF4LWhpZ2hsaWdodGVkIHRleHQuCiAgICAqIFBsYXRmb3JtIGJ1 ZmZlciBtYW5hZ2VycyBhZGRlZCBmb3IgV2luZG93cyAoR0RJKSBhbmQgbWFjT1MgKENvY29hKS4K ICAgICogUGVyZm9ybWFuY2U6IGZhc3QtcGF0aCBmb3Igb3BhcXVlIHJlY3RhbmdsZSBmaWxscywg YnlwYXNzaW5nIEFnZ1BhcwogICAgICBibGVuZGluZyB3aGVuIGFscGhhIGlzIG5vdCBuZWVkZWQu CiAgICAqIEZpeGVkIHNldmVyYWwgV2luZG93cy1zcGVjaWZpYyByZW5kZXJpbmcgaXNzdWVzOiB1 cHNpZGUtZG93biB0ZXh0IG9uCiAgICAgIDMyLWJpdCBGUEMgMy4yLjIsIGxheW91dCBub3QgYXBw bGllZCBvbiBmaXJzdCBzaG93IG9mIG1vZGFsIGRpYWxvZ3MsCiAgICAgIGFuZCBhIGNvbXBpbGF0 aW9uIGVycm9yIG9uIDMyLWJpdCB0YXJnZXRzLgogIC0gRnVzaW9uIFN0eWxlIChuZXcpCiAgICAq IEFkZGVkIEZ1c2lvbiBMaWdodCBhbmQgRnVzaW9uIERhcmsgYXBwbGljYXRpb24gc3R5bGVzLCBp bnNwaXJlZCBieQogICAgICBRdDUgRnVzaW9uLiBGdXNpb24gTGlnaHQgaXMgbm93IHRoZSBkZWZh dWx0IElERSBzdHlsZS4KICAgICogRnVzaW9uLXN0eWxlIHBhZ2UgY29udHJvbCB0YWJzIGFuZCBi b2R5IHJlbmRlcmluZy4KICAgICogQ2hlY2tib3gsIHJhZGlvIGJ1dHRvbiwgYW5kIHByb2dyZXNz IGJhciBwYWludGluZyBkZWxlZ2F0ZWQgdG8KICAgICAgVGZwZ1N0eWxlLCBlbmFibGluZyBwZXIt c3R5bGUgY3VzdG9taXNhdGlvbi4KICAgICogQW5ub3VuY2VtZW50IHdpdGggZWFybHkgc2NyZWVu c2hvdHMgKGh0dHBzOi8vZ2l0aHViLmNvbS9ncmFlbWVnL2ZwR1VJLwpkaXNjdXNzaW9ucy8xNzEp CiAgLSBIaURQSSBpbXByb3ZlbWVudHMKICAgICogSW1wcm92ZWQgSGlEUEkgc2NhbGluZyBmb3Ig dGhlIEdESSAoV2luZG93cykgYW5kIFgxMSBiYWNrZW5kcy4KICAtIE1heGltdXMgSURFCiAgICAq IFBhc0J1aWxkIGJhY2tlbmQgaW50ZWdyYXRpb246IFRQYXNCdWlsZFByb2plY3RCYWNrZW5kCiAg ICAgIGJyaWRnZXMgdGhlIElERSB3aXRoIHRoZSBQYXNCdWlsZCBidWlsZCBzeXN0ZW0uCiAgICAq IFByb2plY3QgdHJlZSByZWRlc2lnbjogZGlzcGxheXMgbW9kdWxlcywgZGVwZW5kZW5jaWVzLAog ICAgICBhbmQgYnVpbGQgcHJvZmlsZXMgYXMgdHJlZSBub2RlcyB3aXRoIGFjY2VudCBjb2xvdXIg Y2F0ZWdvcnkgaGVhZGVycy4KICAgICogTXVsdGktbW9kdWxlIFVJIHdpdGggYWdncmVnYXRvciBw cm9qZWN0IHN1cHBvcnQuCiAgICAqIERlcGVuZGVuY3kgdHJlZSB2aXN1YWxpc2F0aW9uIGFkZGVk IHRvIHRoZSBwcm9qZWN0IHRyZWUuCiAgICAqIEJ1aWxkIGFjdGlvbnM6IGNsZWFuLCByZWJ1aWxk LCBhbmQgdGVzdCBhZGRlZCB0byBJREUgdG9vbGJhci4KICAgICogSU5JIGFuZCBYTUwgc3ludGF4 IGhpZ2hsaWdodGluZyBhZGRlZC4KICAgICogTWlnTGF5b3V0IHVzZWQgdGhyb3VnaG91dCB0aGUg SURFIFVJLCBpbmNsdWRpbmcgYSBUZnBnTWlnU3BsaXR0ZXIKICAgICAgYW5kIE1pZ0xheW91dC1t YW5hZ2VkIHN0YXR1cyBiYXIuCiAgICAqIFNlc3Npb24gcGVyc2lzdGVuY2U6IG9wZW4gZmlsZXMs IHdpbmRvdyBsYXlvdXQsIGFuZCBmaWxlIGRpYWxvZwogICAgICBkaXJlY3RvcmllcyBhcmUgc2F2 ZWQgYW5kIHJlc3RvcmVkIHBlciBwcm9qZWN0LgogICAgKiBFZGl0IG1lbnU6IER1cGxpY2F0ZSBM aW5lLCBEZWxldGUgTGluZSwgVW5kbywgYW5kIFJlZG8gYWRkZWQuCiAgICAqIFN0YXR1cyBiYXIg c2hvd3MgY3Vyc29yIHBvc2l0aW9uLCBmaWxlIHBhdGgsIGFuZCBjdXJyZW50IGdpdCBicmFuY2gu CiAgICAqIEdvIHRvIERlY2xhcmF0aW9uIChDdHJsK0IgLyBDdHJsK0NsaWNrKSB3aXRoIGNyb3Nz LXVuaXQgcmVzb2x1dGlvbgogICAgICBpbmNsdWRpbmcgRlBDIFJUTCBhbmQgcGFja2FnZXMuCiAg ICAqIEZpbmQgVXNhZ2VzIChBbHQrRjcpIHdpdGggaGlnaGxpZ2h0ZWQgY29udGV4dCBjb2x1bW4u CiAgICAqIFF1aWNrIERvY3VtZW50YXRpb24gcG9wdXAgKEN0cmwrRjEpLgogICAgKiBOYXZpZ2F0 ZSB0byBGaWxlIGFuZCBOYXZpZ2F0ZSB0byBTeW1ib2wgZGlhbG9ncyB3aXRoIGZ1enp5IG1hdGNo aW5nLgogICAgKiBDdXJzb3IgaGlzdG9yeSBiYWNrL2ZvcndhcmQgbmF2aWdhdGlvbi4KICAgICog Q3VzdG9tIFBhc2NhbCB0b2tlbmlzZXIgcmVwbGFjaW5nIHZlbmRvcmVkIGZjbC1wYXNzcmMsIHVz ZWQgYnkgdGhlCiAgICAgIGhpZ2hsaWdodGVyLCBzeW1ib2wgZmluZGVyLCBwcm9jZWR1cmUgbGlz dCwgYW5kIGRlY2xhcmF0aW9uIGZpbmRlci4KICAgICogRGVidWcgc2Vzc2lvbiBsaWZlY3ljbGU6 IEY5IHN0YXJ0cyBhIGRlYnVnIHJ1biwgQ3RybCtGMiBzdG9wcyBpdC4KICAgICogQnJlYWtwb2lu dHMgcGFuZWwgYW5kIGZ1bGwgYnJlYWtwb2ludCBhZGQvcmVtb3ZlIG1hbmFnZW1lbnQ7IGxpdmUK ICAgICAgYnJlYWtwb2ludHMgcm91dGVkIHRocm91Z2ggdGhlIHB0cmFjZSBvd25lciB0aHJlYWQu CiAgICAqIEV4ZWN1dGlvbiBsaW5lIGhpZ2hsaWdodGVkIGluIHRoZSBlZGl0b3IgYXQgZWFjaCBk ZWJ1Z2dlciBzdG9wLgogICAgKiBWYXJpYWJsZXMgcGFuZWwgc2hvd2luZyBMb2NhbHMgYW5kIEds b2JhbHMgZ3JvdXBzOyBTaG93IEdsb2JhbHMKICAgICAgdG9nZ2xlIHBlcnNpc3RlZCBhY3Jvc3Mg c2Vzc2lvbnMuCiAgICAqIENhbGwgU3RhY2sgcGFuZWwuCiAgICAqIFdhdGNoZXMgcGFuZWwuCiAg ICAqIEV2YWx1YXRlIEV4cHJlc3Npb24gZGlhbG9nLgogICAgKiBFeGNlcHRpb24gbm90aWZpY2F0 aW9uIGJhci4KICAgICogT1BERi9QRFIgaW50ZWdyYXRpb24gdmlhIGEgZGVkaWNhdGVkIGRlYnVn Z2VyIHdvcmtlciB0aHJlYWQuCiAgICAgIFJlcXVpcmVzIEZQQyAzLjMuMSArIE9QREYgZGVidWcg Zm9ybWF0IHN1cHBvcnQuCiAgICAgIExpbnV4IHg4Nl82NCBvbmx5LCB1bnRpbCBPUERGIHN1cHBv cnQgbW9yZSBwbGF0Zm9ybXMuCiAgICAqIFN1cHBvcnQgZm9yIGJ1aWxkaW5nIHRoZSBJREUgd2l0 aCBGUEMgMy4yLjIgdmlhIGEgc3R1YiBkZWJ1Z2dlcgogICAgICBhZGFwdGVyIChPUERGIGRlcGVu ZGVuY2llcyBkaXNhYmxlZCBieSBkZWZhdWx0KS4KICAgICogQ3Jvc3MtbW9kdWxlIHNvdXJjZSBm aWxlIHJlc29sdXRpb24gZm9yIEN0cmwrQiBuYXZpZ2F0aW9uIGFuZAogICAgICBkZWJ1Z2dlciBz dG9wLWxpbmUgbG9va3VwLgogICAgKiAnUmVvcGVuIGxhc3QgcHJvamVjdCBvbiBzdGFydHVwJyBw cmVmZXJlbmNlIGFkZGVkLgogICAgKiBNZXNzYWdlcyB0YWIgbm93IGFjdGl2YXRlcyBhdXRvbWF0 aWNhbGx5IHdoZW4gYSBidWlsZCBpcyB0cmlnZ2VyZWQuCiAgICAqIFF1aWNrIERvY3VtZW50YXRp b24gcG9wdXAgc2lnbmF0dXJlIHNlYXJjaCBzdG9wcyBhdCB0aGUKICAgICAgY2xhc3MvcmVjb3Jk IGRlY2xhcmF0aW9uIGhlYWRlci4KICAgICogUGFzY2FsIG1vZGlmaWVycyBhbmQgZGlyZWN0aXZl cyAodmlydHVhbCwgb3ZlcnJpZGUsIHN0ZGNhbGwsIGV0Yy4pCiAgICAgIG5vdyBoaWdobGlnaHRl ZCBhcyBzZWNvbmRhcnkga2V5d29yZHMuCiAgLSBEb2NWaWV3CiAgICAqIFByb2plY3QgcmVzdHJ1 Y3R1cmVkIGFuZCBhZGRlZCBhcyBhIFBhc0J1aWxkIG1vZHVsZS4KICAgICogRml4ZWQgcmVuZGVy aW5nIHN0b3BwaW5nIHByZW1hdHVyZWx5LCBsZWF2aW5nIGEgYmxhbmsgYXJlYSBhdCB0aGUKICAg ICAgYm90dG9tIG9mIHRoZSBkb2N1bWVudC4KICAgICogRml4ZWQgRG9jVmlldyBzdGF0dXNiYXIg Y29sb3VyIGJlaW5nIHJlc2V0IHRvIHRoZSB3cm9uZyBkZWZhdWx0LgogICAgKiBEb2NWaWV3IG5h dmlnYXRpb24gdG9vbGJhciBub3cgdXNlcyBzb21lIEhWSUYgdmVjdG9yIGljb25zLgogIC0gVUkg RGVzaWduZXIKICAgICogQWRkZWQgc3R5bGUgcHJldmlldyBzdXBwb3J0LCBzaG93aW5nIHRoZSBk ZXNpZ25lciBmb3JtIGluIHRoZQogICAgICB1c2VyLXNlbGVjdGVkIHN0eWxlLgogIC0gRnJhbWV3 b3JrIEJ1ZyBGaXhlcwogICAgKiBGaXhlZCBGcmVlVHlwZSBmb250IG1ldHJpY3MgcHJvZHVjaW5n IHNxdWFzaGVkIGxpbmUgc3BhY2luZy4KICAgICogRml4ZWQgWE9SIHNlbGVjdGlvbiByZW5kZXJp bmcgaW4gVGZwZ01lbW8g4oCUIG5vdyB1c2VzIHByb3BlciB0aGVtZQogICAgICBjb2xvdXJzIGlu c3RlYWQgb2YgWE9SIHBpeGVsIGludmVyc2lvbi4KICAgICogRml4ZWQgT3Blbi9TYXZlIGRpYWxv ZyBncmlkIG5vdCBncm93aW5nIGNvcnJlY3RseSBvbiByZXNpemUuCiAgICAqIEZpeGVkIHBhZ2Vj b250cm9sIHRhYiByZW5kZXJpbmcgdG8gYmUgZm9udCBhbmQgRFBJIGF3YXJlLgogICAgKiBGaXhl ZCBDb2NvYSBoeWJyaWQgY2FudmFzIHJlbmRlcmluZyAoZHJhd1JlY3QgaW5zdGVhZCBvZiBsb2Nr Rm9jdXMpLgogICAgKiBGaXhlZCBDb2NvYSBmb250IG1ldHJpY3MgYW5kIHBvcHVwIHdpbmRvdyB2 aXNpYmlsaXR5LgogICAgKiBGaXhlZCBGcmVlVHlwZSBmb250IGNhY2hlIG5vdCBiZWluZyBlbmFi bGVkIG9uIFdpbmRvd3MuCiAgICAqIEZpeGVkIGluZGV4IG91dCBvZiBib3VuZHMgaW4gRmlsZSBP cGVuIGRpYWxvZyB1bmRlciBtYWNPUy4KICAgICogQ29tcGF0aWJpbGl0eSBmaXggZm9yIHVwY29t aW5nIEZQQyAzLjMueCByZWxlYXNlLgogICAgKiBBZGRlZCB3cE1haW5Gb3JtQ2VudGVyIHdpbmRv dyBwb3NpdGlvbiBvcHRpb247IGNlbnRyYWxpc2VkIHdpbmRvdwogICAgICBwb3NpdGlvbmluZyBs b2dpYyBpbnRvIGZwZ19mb3JtLnBhcy4KICAgICogRXhwZXJpbWVudGFsIG11bHRpLW1vbml0b3Ig YW5kIHBlci1zY3JlZW4gRFBJIHN1cHBvcnQuCiAgICAqIEZpeGVkIHNldmVyYWwgYm91bmRzLWNo ZWNraW5nIGlzc3VlcyBpbiB0aGUgdGV4dCBlZGl0b3IgY29tcG9uZW50LgogICAgKiBEZXByZWNh dGVkIG9sZCBEcmF3WFhYIHdpZGdldCBwYWludCBtZXRob2RzIGluIFRmcGdDYW52YXMuCiAgICAq IEZpeGVkIENvbWJvQm94IHRleHQgbm90IGNsaXBwZWQgdG8gZXhjbHVkZSB0aGUgZHJvcGRvd24g YnV0dG9uIGFyZWEuCiAgICAqIEZpeGVkIFRmcGdMYWJlbCBub3QgYXV0by1zaXppbmcgdG8gdGV4 dCBjb250ZW50IHdoZW4gbm8KICAgICAgUHJlZmVycmVkU2l6ZSB3YXMgc2V0LgogICAgKiBGaXhl ZCBkZXZlbG9wZXItc2V0IHRleHQgY29sb3VyIGlnbm9yZWQgYnkgc3R5bGUgRHJhd1N0cmluZy4K ICAgICogRml4ZWQgcG9wdXAgY2FsZW5kYXIgZ2VuZXJhdGluZyBkZXByZWNhdGlvbiB3YXJuaW5n cy4KICAtIENvZGUgSHlnaWVuZQogICAgKiBSZXBsYWNlZCBidW5kbGVkIFN5blJlZ0V4cHIgd2l0 aCBGUEMncyBzdGFuZGFyZCBSZWdFeHByIHVuaXQuCiAgICAqIFJlcGxhY2VkIGJ1bmRsZWQgbVBh c0xleCB3aXRoIEZQQydzIGZjbC1wYXNzcmMgZm9yIFByb2NlZHVyZSBMaXN0LgogICAgKiBSZXBs YWNlZCBidW5kbGVkIHNoYTEucGFzIChENS1lcmEpIHdpdGggRlBDJ3Mgc3RhbmRhcmQgaGFzaCBw YWNrYWdlLgogICAgKiBSZW1vdmVkIENhaXJvIHJlbmRlcmluZyBiYWNrZW5kLgogICAgKiBSZW1v dmVkIFZMQyB1bml0cyAobm93IHBhcnQgb2YgRlBDJ3MgRnJlZSBDb21wb25lbnQgTGlicmFyeSku CiAgICAqIFJlbW92ZWQgTWlnTGF5b3V0IEphdmEgcmVmZXJlbmNlIHNvdXJjZSAocG9ydGluZyBj b21wbGV0ZSkuCiAgICAqIFJlbW92ZWQgdW51c2VkIGFuZCBlbXB0eSBzdHlsZSB1bml0cy4KICAg ICogUmVtb3ZlZCB2ZW5kb3JlZCBmY2wtcGFzc3JjIChyZXBsYWNlZCBieSBjdXN0b20gUGFzY2Fs IHRva2VuaXNlcikuCiAgICAqIE1vdmVkIGRvY3VtZW50YXRpb24gYW5kIExhemFydXMgSURFIGlu dGVncmF0aW9uIHBhY2thZ2Ugb3V0IG9mIHRoZQogICAgICBmcmFtZXdvcmsgc291cmNlIHRyZWUu CiAgICAqIExlZ2FjeSBBZ2cyRCBjYW52YXMgbW92ZWQgb3V0IG9mIHRoZSBmcmFtZXdvcmsgc291 cmNlIHRvCiAgICAgIGV4dHJhcy9hZ2dwYXMvLgogICAgKiBHREkgJiBYMTEgbmF0aXZlIGNhbnZh cyBjbGFzc2VzIG1hcmtlZCAiRGVwcmVjYXRlZCIgZm9yIGZ1dHVyZQogICAgICByZW1vdmFsLgog ICAgKiBUZnBnQ2FudmFzLkRyYXdYWFggbWV0aG9kcyBmb3Igd2lkZ2V0IHBhaW50aW5nIG1hcmtl ZCAiZGVwcmVjYXRlZCIKICAgICAgZm9yIGZ1dHVyZSByZW1vdmFsLgogIC0gSFZJRiAoSGFpa3Ug VmVjdG9yIEljb24gRmlsZSkgSWNvbiBGb3JtYXQKICAgICogTmV3IEhWSUYgYmluYXJ5IHJlYWRl ciB3aXRoIEFnZ1BhcyByZW5kZXJlciBhbmQgdW5pdCB0ZXN0cy4KICAgICogTmV3IEhWSUYgYmlu YXJ5IHdyaXRlciB3aXRoIHVuaXQgdGVzdHMuCiAgICAqIHN2ZzJodmlmIENMSSB0b29sIGNvbnZl cnRzIFNWRyBmaWxlcyB0byBIVklGOyAtLWluYyBmbGFnIGVtaXRzIGEKICAgICAgUGFzY2FsIGJ5 dGUtYXJyYXkgaW5jbHVkZSBmaWxlIGZvciBlbWJlZGRpbmcgaWNvbnMgaW4gc291cmNlLgogICAg KiBodmlmX2R1bXAgaW5zcGVjdGlvbiB0b29sIGZvciBleGFtaW5pbmcgSFZJRiBiaW5hcnkgZmls ZXMuCiAgICAqIEZ1bGwgcmVuZGVyaW5nIHBpcGVsaW5lOiBtdWx0aS1zdG9wIGdyYWRpZW50IExV VCwgZ3JhZGllbnQgc3Ryb2tlcywKICAgICAgdHJhbnNmb3JtcywgYXJjIHNlZ21lbnRzLCBhbmQg TE9EIHZpc2liaWxpdHkgc2NhbGUuCiAgICAqIFRmcGdJY29uU3RvcmU6IERQSS1hd2FyZSBIVklG IGljb24gcmVnaXN0cnk7IGZwZ0ljb25zIGdsb2JhbAogICAgICBpbml0aWFsaXNlZCBhdXRvbWF0 aWNhbGx5IGluIFRmcGdBcHBsaWNhdGlvbi4KICAgICogSFZJRiBpY29ucyB3aXJlZCBpbnRvIGNv cmUgZnJhbWV3b3JrIHdpZGdldHMuCiAgICAqIE5ldyBJY29uTmFtZSBhbmQgSWNvblNpemUgcHJv cGVydGllcyBvbiBUZnBnQmFzZUJ1dHRvbiBmb3IKICAgICAgaWNvbi1zdG9yZeKAk2RyaXZlbiBi dXR0b24gaWNvbnMuCiAgICAqIGltYWdlY29udmVydCB1dGlsaXR5IGFkZGVkIHRvIHRoZSBQYXNC dWlsZCBlY29zeXN0ZW0uCiAgLSBWZXJ0ZXggSFZJRiBJY29uIEVkaXRvciAobmV3IGFwcGxpY2F0 aW9uKQogICAgKiBBbm5vdW5jZW1lbnQgdGhyZWFkIHdpdGggc2NyZWVuc2hvdCAoaHR0cHM6Ly9n aXRodWIuY29tL2dyYWVtZWcvZnBHVUkvCmRpc2N1c3Npb25zLzE4MikKICAgICogRnVsbCBIVklG IHZlY3RvciBpY29uIGVkaXRvciBhZGRlZCB0byB0aGUgcHJpbWFyeSBidWlsZC4KICAgICogVG9v bHM6IFNlbGVjdCwgTm9kZSBlZGl0LCBQYW4sIFpvb20sIFJlY3RhbmdsZSwgRWxsaXBzZSwgYW5k IFBlbi4KICAgICogQm91bmRpbmcgYm94IGFuZCBhZmZpbmUgdHJhbnNmb3JtIGludGVyYWN0aW9u czsgU2hpZnQrZHJhZyBmb3IKICAgICAgdW5pZm9ybSBzY2FsZSwgQ3RybCtkcmFnIGZvciBzaGVh ci4KICAgICogR3JhZGllbnQgc3R5bGUgZWRpdGluZyB3aXRoIG11bHRpLXN0b3AgcmFtcCB3aWRn ZXQgYW5kIGVkaXRvciBwb3B1cC4KICAgICogR3JpZCBvdmVybGF5IHdpdGggY29uZmlndXJhYmxl IHNuYXAtdG8tZ3JpZC4KICAgICogT2JqZWN0IHRyZWUgd2l0aCBpbmxpbmUgcmVuYW1lIGFuZCBz aWRlY2FyIG1ldGFkYXRhIGZpbGUuCiAgICAqIEJlemllciBwYXRoIG91dGxpbmUgb3ZlcmxheSBp biBub2RlLWVkaXQgbW9kZS4KICAgICogVW5kbyBzdXBwb3J0IGZvciBwYXRoIGFuZCBzaGFwZSBw cm9wZXJ0eSBlZGl0cy4KICAgICogRmlsZSA+IE5ldywgT3BlbiwgU2F2ZSAoLmh2aWYpLCBFeHBv cnQgYXMgLmluYywgYW5kIEV4cG9ydCBhcyBQTkcKICAgICAgYXQgMTYvMzIvNDgvNjQgcHguCiAg ICAqIEZpbGUgPiBPcGVuIFJlY2VudCB3aXRoIHBlcnNpc3RlbnQgbGFzdC11c2VkIGRpcmVjdG9y eS4KICAgICogV2luZG93IHBvc2l0aW9uIGFuZCBzaXplIHJlc3RvcmVkIGFjcm9zcyBzZXNzaW9u cy4KCgpSZWdhcmRzLAogIC0gR3JhZW1lIC0KCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KZnBjLXBhc2NhbCBtYWlsbGlzdCAgLSAgZnBjLXBhc2NhbEBs aXN0cy5mcmVlcGFzY2FsLm9yZwpodHRwczovL2xpc3RzLmZyZWVwYXNjYWwub3JnL2NnaS1iaW4v bWFpbG1hbi9saXN0aW5mby9mcGMtcGFzY2FsCg==