Last Updated: June 15, 2026
MS4gUHVycG9zZQpUaGlzIERpc3B1dGUgUmVzb2x1dGlvbiBQb2xpY3kgZXhwbGFpbnMgaG93IGNvbXBsYWludHMsIGRpc3B1dGVzLCBhbmQgZGlzYWdyZWVtZW50cyBiZXR3ZWVuIGN1c3RvbWVycyBhbmQgdmVuZG9ycyBhcmUgaGFuZGxlZCBvbiBXZWRyb3ouCldlZHJveiBvcGVyYXRlcyBhcyBhIHRlY2hub2xvZ3kgcGxhdGZvcm0gdGhhdCBlbmFibGVzIHVzZXJzIHRvIGRpc2NvdmVyLCBjb21wYXJlLCBjb250YWN0LCBhbmQgZW5nYWdlIHdlZGRpbmcgYW5kIGV2ZW50IHZlbmRvcnMuIFdlZHJveiBpcyBub3QgYSB3ZWRkaW5nIHBsYW5uZXIsIGV2ZW50IG9yZ2FuaXplciwgc2VydmljZSBwcm92aWRlciwgY29udHJhY3RvciwgZW1wbG95ZXIsIGFnZW50LCBvciByZXByZXNlbnRhdGl2ZSBvZiBhbnkgdmVuZG9yIGxpc3RlZCBvbiB0aGUgcGxhdGZvcm0uClRoaXMgUG9saWN5IGVzdGFibGlzaGVzIHRoZSBwcm9jZWR1cmVzIHRocm91Z2ggd2hpY2ggZGlzcHV0ZXMgbWF5IGJlIHJlcG9ydGVkIGFuZCByZXZpZXdlZCB3aGlsZSBjbGFyaWZ5aW5nIHRoZSBsaW1pdGVkIHJvbGUgb2YgV2Vkcm96IGluIGN1c3RvbWVyLXZlbmRvciBkaXNhZ3JlZW1lbnRzLgoKMi4gU2NvcGUgb2YgVGhpcyBQb2xpY3kKVGhpcyBQb2xpY3kgYXBwbGllcyB0byBkaXNwdXRlcyBhcmlzaW5nIGZyb206CuKAoiBWZW5kb3IgYm9va2luZ3MK4oCiIFZlbmRvciBjYW5jZWxsYXRpb25zCuKAoiBTZXJ2aWNlIHF1YWxpdHkgY29tcGxhaW50cwrigKIgRGVsYXllZCBzZXJ2aWNlcwrigKIgTm9uLXBlcmZvcm1hbmNlIG9mIHNlcnZpY2VzCuKAoiBNaXNyZXByZXNlbnRhdGlvbiBvZiBzZXJ2aWNlcwrigKIgUHJpY2luZyBkaXNwdXRlcwrigKIgUGF5bWVudCBkaXNhZ3JlZW1lbnRzIGJldHdlZW4gY3VzdG9tZXJzIGFuZCB2ZW5kb3JzCuKAoiBBdmFpbGFiaWxpdHktcmVsYXRlZCBkaXNwdXRlcwrigKIgQ29tbXVuaWNhdGlvbi1yZWxhdGVkIGRpc3B1dGVzCuKAoiBSZXZpZXcgYW5kIHJhdGluZyBkaXNwdXRlcwrigKIgV2VkZGluZyBTdG9yaWVzIG9yIHVzZXItZ2VuZXJhdGVkIGNvbnRlbnQgZGlzcHV0ZXMK4oCiIEFueSBpbnRlcmFjdGlvbiBmYWNpbGl0YXRlZCB0aHJvdWdoIHRoZSBXZWRyb3ogcGxhdGZvcm0KVGhpcyBQb2xpY3kgZG9lcyBub3QgYXBwbHkgdG8gZGlzcHV0ZXMgdW5yZWxhdGVkIHRvIHRoZSB1c2Ugb2YgdGhlIFBsYXRmb3JtLgoKMy4gTmF0dXJlIG9mIHRoZSBXZWRyb3ogUGxhdGZvcm0KV2Vkcm96IGlzIGEgdmVuZG9yIGRpc2NvdmVyeSBhbmQgbGVhZC1nZW5lcmF0aW9uIG1hcmtldHBsYWNlLgpXZWRyb3o6CuKAoiBQcm92aWRlcyB2ZW5kb3IgbGlzdGluZ3MK4oCiIERpc3BsYXlzIHZlbmRvciBpbmZvcm1hdGlvbgrigKIgRmFjaWxpdGF0ZXMgY3VzdG9tZXItdmVuZG9yIGNvbW11bmljYXRpb24K4oCiIFByb3ZpZGVzIGF2YWlsYWJpbGl0eSBzZWFyY2ggdG9vbHMK4oCiIFByb3ZpZGVzIGJvb2tpbmcgbWFuYWdlbWVudCB0b29scwrigKIgUHJvdmlkZXMgcGxhbm5pbmcgYW5kIHdlZGRpbmcgbWFuYWdlbWVudCBmZWF0dXJlcwpXZWRyb3ogZG9lcyBub3Q6CuKAoiBFbXBsb3kgdmVuZG9ycwrigKIgTWFuYWdlIHZlbmRvciBvcGVyYXRpb25zCuKAoiBTdXBlcnZpc2UgdmVuZG9yIHN0YWZmCuKAoiBDb250cm9sIHZlbmRvciBwcmljaW5nCuKAoiBDb250cm9sIHZlbmRvciBwZXJmb3JtYW5jZQrigKIgR3VhcmFudGVlIHZlbmRvciBhdmFpbGFiaWxpdHkK4oCiIEd1YXJhbnRlZSBib29raW5nIGNvbXBsZXRpb24K4oCiIEd1YXJhbnRlZSBjdXN0b21lciBzYXRpc2ZhY3Rpb24K4oCiIEFjdCBhcyBhIHBhcnR5IHRvIGN1c3RvbWVyLXZlbmRvciBhZ3JlZW1lbnRzCkFueSBjb250cmFjdCwgcXVvdGF0aW9uLCBib29raW5nLCBwYXltZW50IGFycmFuZ2VtZW50LCBvciBzZXJ2aWNlIGFncmVlbWVudCBpcyBlbnRlcmVkIGRpcmVjdGx5IGJldHdlZW4gdGhlIGN1c3RvbWVyIGFuZCB0aGUgdmVuZG9yLgoKNC4gQ3VzdG9tZXItVmVuZG9yIFJlbGF0aW9uc2hpcApXaGVuIGEgY3VzdG9tZXIgY2hvb3NlcyB0byBlbmdhZ2UgYSB2ZW5kb3IgdGhyb3VnaCBXZWRyb3osIHRoZSByZXN1bHRpbmcgYnVzaW5lc3MgcmVsYXRpb25zaGlwIGV4aXN0cyBzb2xlbHkgYmV0d2VlbiB0aGUgY3VzdG9tZXIgYW5kIHRoZSB2ZW5kb3IuCldlZHJveiBpcyBub3QgYSBwYXJ0eSB0bzoK4oCiIFNlcnZpY2UgYWdyZWVtZW50cwrigKIgVmVuZG9yIHF1b3RhdGlvbnMK4oCiIENvbnRyYWN0cwrigKIgSW52b2ljZXMK4oCiIEV2ZW50IGV4ZWN1dGlvbiBhZ3JlZW1lbnRzCuKAoiBQYXltZW50IGFycmFuZ2VtZW50cyBiZXR3ZWVuIGN1c3RvbWVycyBhbmQgdmVuZG9ycwpCb3RoIHBhcnRpZXMgcmVtYWluIGluZGVwZW5kZW50bHkgcmVzcG9uc2libGUgZm9yIGZ1bGZpbGxpbmcgdGhlaXIgb2JsaWdhdGlvbnMuCgo1LiBUeXBlcyBvZiBEaXNwdXRlcwpDb21tb24gZGlzcHV0ZXMgbWF5IGluY2x1ZGU6CjUuMSBWZW5kb3IgQ2FuY2VsbGF0aW9uCkV4YW1wbGVzIGluY2x1ZGU6CuKAoiBWZW5kb3IgY2FuY2VsbGluZyBiZWZvcmUgdGhlIGV2ZW50CuKAoiBWZW5kb3IgYmVjb21pbmcgdW5hdmFpbGFibGUK4oCiIFZlbmRvciBmYWlsaW5nIHRvIGF0dGVuZCB0aGUgZXZlbnQKNS4yIEN1c3RvbWVyIENhbmNlbGxhdGlvbgpFeGFtcGxlcyBpbmNsdWRlOgrigKIgQ3VzdG9tZXIgY2FuY2VsbGluZyBhIGJvb2tpbmcK4oCiIEN1c3RvbWVyIHJlZnVzaW5nIGFncmVlZCBwYXltZW50cwrigKIgQ3VzdG9tZXIgY2hhbmdpbmcgcmVxdWlyZW1lbnRzIGFmdGVyIGNvbmZpcm1hdGlvbgo1LjMgU2VydmljZSBRdWFsaXR5IENvbXBsYWludHMKRXhhbXBsZXMgaW5jbHVkZToK4oCiIFBvb3IgcGhvdG9ncmFwaHkgcXVhbGl0eQrigKIgVW5zYXRpc2ZhY3RvcnkgZGVjb3JhdGlvbiB3b3JrCuKAoiBEZWxheWVkIHNlcnZpY2UgZGVsaXZlcnkK4oCiIEZhaWx1cmUgdG8gbWVldCBhZ3JlZWQgZXhwZWN0YXRpb25zCjUuNCBQcmljaW5nIERpc3B1dGVzCkV4YW1wbGVzIGluY2x1ZGU6CuKAoiBVbmV4cGVjdGVkIGNoYXJnZXMK4oCiIFByaWNpbmcgbWlzdW5kZXJzdGFuZGluZ3MK4oCiIFBhY2thZ2UgaW5jbHVzaW9uIGRpc2FncmVlbWVudHMKNS41IEF2YWlsYWJpbGl0eSBEaXNwdXRlcwpFeGFtcGxlcyBpbmNsdWRlOgrigKIgSW5jb3JyZWN0IGF2YWlsYWJpbGl0eSBpbmZvcm1hdGlvbgrigKIgRG91YmxlIGJvb2tpbmdzCuKAoiBDYWxlbmRhciB1cGRhdGUgZmFpbHVyZXMKNS42IENvbW11bmljYXRpb24gRGlzcHV0ZXMKRXhhbXBsZXMgaW5jbHVkZToK4oCiIFVucHJvZmVzc2lvbmFsIGNvbW11bmljYXRpb24K4oCiIE1pc2xlYWRpbmcgcmVwcmVzZW50YXRpb25zCuKAoiBIYXJhc3NtZW50IG9yIGFidXNpdmUgYmVoYXZpb3IKCjYuIFJlcXVpcmVtZW50IHRvIEF0dGVtcHQgRGlyZWN0IFJlc29sdXRpb24KQmVmb3JlIGludm9sdmluZyBXZWRyb3osIGN1c3RvbWVycyBhbmQgdmVuZG9ycyBhcmUgZW5jb3VyYWdlZCB0byBtYWtlIHJlYXNvbmFibGUgZWZmb3J0cyB0byByZXNvbHZlIGRpc3B1dGVzIGRpcmVjdGx5LgpQYXJ0aWVzIHNob3VsZCBhdHRlbXB0IHRvOgrigKIgQ29tbXVuaWNhdGUgcmVzcGVjdGZ1bGx5CuKAoiBDbGFyaWZ5IG1pc3VuZGVyc3RhbmRpbmdzCuKAoiBTaGFyZSBzdXBwb3J0aW5nIGRvY3VtZW50YXRpb24K4oCiIFNlZWsgYSBtdXR1YWxseSBhY2NlcHRhYmxlIHNvbHV0aW9uCkRpcmVjdCBjb21tdW5pY2F0aW9uIG9mdGVuIHJlc29sdmVzIGRpc3B1dGVzIG1vcmUgZWZmaWNpZW50bHkgdGhhbiBmb3JtYWwgZXNjYWxhdGlvbi4KCjcuIFJlcG9ydGluZyBhIERpc3B1dGUKQSBkaXNwdXRlIG1heSBiZSByZXBvcnRlZCB0byBXZWRyb3ogdGhyb3VnaCBkZXNpZ25hdGVkIHN1cHBvcnQgY2hhbm5lbHMuCkEgZGlzcHV0ZSByZXBvcnQgc2hvdWxkIGluY2x1ZGU6CuKAoiBGdWxsIG5hbWUgb2YgY29tcGxhaW5hbnQK4oCiIEFjY291bnQgaW5mb3JtYXRpb24K4oCiIFZlbmRvciBvciBjdXN0b21lciBpbnZvbHZlZArigKIgRGVzY3JpcHRpb24gb2YgZGlzcHV0ZQrigKIgUmVsZXZhbnQgZGF0ZXMK4oCiIEJvb2tpbmcgZGV0YWlscwrigKIgU3VwcG9ydGluZyBldmlkZW5jZQpJbmNvbXBsZXRlIHN1Ym1pc3Npb25zIG1heSBkZWxheSByZXZpZXcuCgo4LiBFdmlkZW5jZSBSZXF1aXJlbWVudHMKV2Vkcm96IG1heSByZXF1ZXN0IHN1cHBvcnRpbmcgZXZpZGVuY2UgaW5jbHVkaW5nOgrigKIgU2NyZWVuc2hvdHMK4oCiIENoYXQgcmVjb3JkcwrigKIgUXVvdGF0aW9ucwrigKIgSW52b2ljZXMK4oCiIFBheW1lbnQgcmVjZWlwdHMK4oCiIENvbnRyYWN0cwrigKIgRW1haWxzCuKAoiBQb3J0Zm9saW8gbWF0ZXJpYWxzCuKAoiBFdmVudCBwaG90b2dyYXBocwrigKIgQ2FsbCByZWNvcmRpbmdzIHdoZXJlIGxlZ2FsbHkgcGVybWl0dGVkClBhcnRpZXMgYXJlIHJlc3BvbnNpYmxlIGZvciBtYWludGFpbmluZyB0aGVpciBvd24gcmVjb3Jkcy4KV2Vkcm96IGlzIG5vdCByZXNwb25zaWJsZSBmb3IgcHJlc2VydmluZyBldmlkZW5jZSBvdXRzaWRlIGl0cyBzeXN0ZW1zLgoKOS4gV2Vkcm96J3MgTGltaXRlZCBSZXZpZXcgUHJvY2VzcwpVcG9uIHJlY2VpdmluZyBhIGNvbXBsYWludCwgV2Vkcm96IG1heToK4oCiIFJldmlldyBhdmFpbGFibGUgaW5mb3JtYXRpb24K4oCiIFJlcXVlc3QgYWRkaXRpb25hbCBkb2N1bWVudGF0aW9uCuKAoiBDb250YWN0IGludm9sdmVkIHBhcnRpZXMK4oCiIEFzc2VzcyB3aGV0aGVyIFBsYXRmb3JtIHBvbGljaWVzIHdlcmUgdmlvbGF0ZWQKV2Vkcm96IG1heSB1c2UgaW5mb3JtYXRpb24gYXZhaWxhYmxlIHRocm91Z2g6CuKAoiBQbGF0Zm9ybSBtZXNzYWdlcwrigKIgVmVuZG9yIHByb2ZpbGVzCuKAoiBDdXN0b21lciBhY2NvdW50cwrigKIgQm9va2luZyByZWNvcmRzCuKAoiBSZXZpZXcgaGlzdG9yaWVzClBhcnRpY2lwYXRpb24gaW4gdGhlIHJldmlldyBwcm9jZXNzIGRvZXMgbm90IGNyZWF0ZSBhbnkgb2JsaWdhdGlvbiBmb3IgV2Vkcm96IHRvIHJlc29sdmUgdGhlIGRpc3B1dGUgaW4gZmF2b3Igb2YgZWl0aGVyIHBhcnR5LgoKMTAuIEFjdGlvbnMgV2Vkcm96IE1heSBUYWtlCklmIFdlZHJveiBkZXRlcm1pbmVzIHRoYXQgUGxhdGZvcm0gcG9saWNpZXMgbWF5IGhhdmUgYmVlbiB2aW9sYXRlZCwgaXQgbWF5IHRha2UgYWN0aW9ucyBpbmNsdWRpbmc6CuKAoiBJc3N1aW5nIHdhcm5pbmdzCuKAoiBSZW1vdmluZyBjb250ZW50CuKAoiBSZXN0cmljdGluZyBhY2NvdW50IGZlYXR1cmVzCuKAoiBTdXNwZW5kaW5nIGFjY291bnRzCuKAoiBSZW1vdmluZyByZXZpZXdzCuKAoiBSZW1vdmluZyBsaXN0aW5ncwrigKIgUmV2b2tpbmcgdmVyaWZpY2F0aW9uIHN0YXR1cwrigKIgUGVybWFuZW50bHkgdGVybWluYXRpbmcgYWNjb3VudHMKU3VjaCBhY3Rpb25zIGFyZSBpbnRlbmRlZCB0byBwcm90ZWN0IFBsYXRmb3JtIGludGVncml0eSBhbmQgYXJlIG5vdCBpbnRlbmRlZCB0byBkZXRlcm1pbmUgbGVnYWwgbGlhYmlsaXR5LgoKMTEuIEFjdGlvbnMgV2Vkcm96IFdpbGwgTm90IFRha2UKRXhjZXB0IHdoZXJlIHJlcXVpcmVkIGJ5IGxhdywgV2Vkcm96IGdlbmVyYWxseSB3aWxsIG5vdDoK4oCiIEFjdCBhcyBhIGNvdXJ0IG9yIGFyYml0cmF0b3IK4oCiIERldGVybWluZSBjb250cmFjdHVhbCBsaWFiaWxpdHkK4oCiIERldGVybWluZSBmYXVsdCBpbiBwcml2YXRlIGFncmVlbWVudHMK4oCiIEZvcmNlIHJlZnVuZHMK4oCiIEZvcmNlIHBheW1lbnRzCuKAoiBHdWFyYW50ZWUgY29tcGVuc2F0aW9uCuKAoiBFbmZvcmNlIHZlbmRvciBjb250cmFjdHMK4oCiIEVuZm9yY2UgY3VzdG9tZXIgY29udHJhY3RzCuKAoiBDYWxjdWxhdGUgZGFtYWdlcwrigKIgUHJvdmlkZSBsZWdhbCBhZHZpY2UKQ3VzdG9tZXJzIGFuZCB2ZW5kb3JzIHJlbWFpbiByZXNwb25zaWJsZSBmb3IgcHJvdGVjdGluZyB0aGVpciBvd24gbGVnYWwgaW50ZXJlc3RzLgoKMTIuIFJlZnVuZCBhbmQgQ29tcGVuc2F0aW9uIE1hdHRlcnMKUmVmdW5kIHJlcXVlc3RzIHJlbGF0aW5nIHRvIHZlbmRvciBzZXJ2aWNlcyBtdXN0IGdlbmVyYWxseSBiZSBhZGRyZXNzZWQgZGlyZWN0bHkgd2l0aCB0aGUgdmVuZG9yLgpCZWNhdXNlIFdlZHJveiBpcyBub3QgYSBwYXJ0eSB0byB2ZW5kb3Igc2VydmljZSBhZ3JlZW1lbnRzLCBXZWRyb3ogaXMgbm90IHJlc3BvbnNpYmxlIGZvcjoK4oCiIFZlbmRvciByZWZ1bmRzCuKAoiBTZXJ2aWNlIGNvbXBlbnNhdGlvbgrigKIgRXZlbnQgbG9zc2VzCuKAoiBDb25zZXF1ZW50aWFsIGRhbWFnZXMK4oCiIEN1c3RvbWVyIGRpc3NhdGlzZmFjdGlvbgpBbnkgcmVmdW5kIG9ibGlnYXRpb25zIHJlbWFpbiBzdWJqZWN0IHRvIHRoZSBhZ3JlZW1lbnQgYmV0d2VlbiB0aGUgY3VzdG9tZXIgYW5kIHZlbmRvci4KCjEzLiBFbWVyZ2VuY3kgVmVuZG9yIFJlcGxhY2VtZW50IFNpdHVhdGlvbnMKSW4gc2l0dWF0aW9ucyB3aGVyZSBhIHZlbmRvciBjYW5jZWxzIGNsb3NlIHRvIGFuIGV2ZW50IGRhdGUsIFdlZHJveiBtYXkgYXNzaXN0IHVzZXJzIGJ5IHByb3ZpZGluZyBhY2Nlc3MgdG8gb3RoZXIgdmVuZG9ycyBhdmFpbGFibGUgb24gdGhlIHNlbGVjdGVkIGRhdGUgdGhyb3VnaCB0aGUgUGxhdGZvcm0ncyBhdmFpbGFiaWxpdHkgc2VhcmNoIGZ1bmN0aW9uYWxpdHkuCkhvd2V2ZXIsIFdlZHJvejoK4oCiIERvZXMgbm90IGd1YXJhbnRlZSByZXBsYWNlbWVudCB2ZW5kb3JzCuKAoiBEb2VzIG5vdCBndWFyYW50ZWUgYXZhaWxhYmlsaXR5CuKAoiBEb2VzIG5vdCBndWFyYW50ZWUgcHJpY2luZwrigKIgRG9lcyBub3QgZ3VhcmFudGVlIHNlcnZpY2UgcXVhbGl0eQpUaGUgZmluYWwgc2VsZWN0aW9uIHJlbWFpbnMgdGhlIGN1c3RvbWVyJ3MgcmVzcG9uc2liaWxpdHkuCgoxNC4gUmV2aWV3LVJlbGF0ZWQgRGlzcHV0ZXMKRGlzcHV0ZXMgcmVnYXJkaW5nIHJldmlld3MgYW5kIHJhdGluZ3MgYXJlIGdvdmVybmVkIGJ5IHRoZSBSZXZpZXcgJiBSYXRpbmcgUG9saWN5LgpXZWRyb3ogbWF5IHJldmlldyByZXBvcnRlZCByZXZpZXdzIHRvIGRldGVybWluZSB3aGV0aGVyIHRoZXk6CuKAoiBWaW9sYXRlIFBsYXRmb3JtIHBvbGljaWVzCuKAoiBDb250YWluIHByb2hpYml0ZWQgY29udGVudArigKIgQXBwZWFyIGZyYXVkdWxlbnQK4oCiIEFwcGVhciBtYW5pcHVsYXRlZApXZWRyb3ogcmVzZXJ2ZXMgc29sZSBkaXNjcmV0aW9uIHJlZ2FyZGluZyBtb2RlcmF0aW9uIGRlY2lzaW9ucy4KCjE1LiBGcmF1ZCwgTWlzcmVwcmVzZW50YXRpb24sIGFuZCBBYnVzZQpXZWRyb3ogbWF5IGludmVzdGlnYXRlIHJlcG9ydHMgaW52b2x2aW5nOgrigKIgRmFrZSBidXNpbmVzc2VzCuKAoiBGYWtlIGJvb2tpbmdzCuKAoiBJbXBlcnNvbmF0aW9uCuKAoiBGcmF1ZHVsZW50IHRyYW5zYWN0aW9ucwrigKIgSWRlbnRpdHkgbWlzdXNlCuKAoiBGYWxzZSByZXByZXNlbnRhdGlvbnMK4oCiIFJldmlldyBtYW5pcHVsYXRpb24K4oCiIFBsYXRmb3JtIGFidXNlCldoZXJlIGFwcHJvcHJpYXRlLCBXZWRyb3ogbWF5IHN1c3BlbmQgb3IgdGVybWluYXRlIGludm9sdmVkIGFjY291bnRzLgpXZWRyb3ogbWF5IGFsc28gY29vcGVyYXRlIHdpdGggbGF3IGVuZm9yY2VtZW50IGF1dGhvcml0aWVzIHdoZXJlIGxlZ2FsbHkgcmVxdWlyZWQuCgoxNi4gTGltaXRhdGlvbiBvZiBQbGF0Zm9ybSBMaWFiaWxpdHkKVG8gdGhlIGZ1bGxlc3QgZXh0ZW50IHBlcm1pdHRlZCBieSBhcHBsaWNhYmxlIGxhdywgV2Vkcm96IHNoYWxsIG5vdCBiZSBsaWFibGUgZm9yOgrigKIgVmVuZG9yIG1pc2NvbmR1Y3QK4oCiIEN1c3RvbWVyIG1pc2NvbmR1Y3QK4oCiIENvbnRyYWN0IGJyZWFjaGVzCuKAoiBTZXJ2aWNlIGZhaWx1cmVzCuKAoiBFdmVudCBkaXNydXB0aW9ucwrigKIgTWlzc2VkIG9wcG9ydHVuaXRpZXMK4oCiIEZpbmFuY2lhbCBsb3NzZXMK4oCiIEVtb3Rpb25hbCBkaXN0cmVzcwrigKIgUmVwdXRhdGlvbiBkYW1hZ2UK4oCiIEluZGlyZWN0IGRhbWFnZXMK4oCiIENvbnNlcXVlbnRpYWwgZGFtYWdlcwpVc2VycyBhY2tub3dsZWRnZSB0aGF0IHBhcnRpY2lwYXRpb24gaW4gdHJhbnNhY3Rpb25zIHRocm91Z2ggdGhlIFBsYXRmb3JtIGlzIHVuZGVydGFrZW4gYXQgdGhlaXIgb3duIHJpc2suCgoxNy4gSW5kZXBlbmRlbnQgTGVnYWwgUmVtZWRpZXMKTm90aGluZyBpbiB0aGlzIFBvbGljeSBwcmV2ZW50cyBlaXRoZXIgcGFydHkgZnJvbSBwdXJzdWluZyByZW1lZGllcyBhdmFpbGFibGUgdW5kZXIgYXBwbGljYWJsZSBsYXcuCkN1c3RvbWVycyBhbmQgdmVuZG9ycyBtYXkgc2VlayBpbmRlcGVuZGVudCBsZWdhbCBhZHZpY2UgYW5kIHB1cnN1ZSBsZWdhbCBjbGFpbXMgdGhyb3VnaCBhcHByb3ByaWF0ZSBsZWdhbCBjaGFubmVscyB3aGVyZSBuZWNlc3NhcnkuCgoxOC4gUG9saWN5IFZpb2xhdGlvbnMKRmFpbHVyZSB0byBjb29wZXJhdGUgd2l0aCBhIGRpc3B1dGUgcmV2aWV3IHByb2Nlc3MsIHN1Ym1pc3Npb24gb2YgZmFsc2UgaW5mb3JtYXRpb24sIGZhYnJpY2F0aW9uIG9mIGV2aWRlbmNlLCBoYXJhc3NtZW50LCBhYnVzZSwgb3IgbWlzdXNlIG9mIHRoZSBkaXNwdXRlIHByb2Nlc3MgbWF5IHJlc3VsdCBpbiBlbmZvcmNlbWVudCBhY3Rpb24gYWdhaW5zdCB0aGUgcmVzcG9uc2libGUgYWNjb3VudC4KCjE5LiBNb2RpZmljYXRpb25zIHRvIFRoaXMgUG9saWN5CldlZHJveiBtYXkgbW9kaWZ5IHRoaXMgUG9saWN5IGZyb20gdGltZSB0byB0aW1lLgpVcGRhdGVkIHZlcnNpb25zIGJlY29tZSBlZmZlY3RpdmUgdXBvbiBwdWJsaWNhdGlvbiBvbiB0aGUgUGxhdGZvcm0gdW5sZXNzIG90aGVyd2lzZSBzdGF0ZWQuCkNvbnRpbnVlZCB1c2Ugb2YgdGhlIFBsYXRmb3JtIGFmdGVyIHB1YmxpY2F0aW9uIGNvbnN0aXR1dGVzIGFjY2VwdGFuY2Ugb2YgdGhlIHJldmlzZWQgUG9saWN5LgoKMjAuIENvbnRhY3QgVXMKRm9yIGRpc3B1dGUtcmVsYXRlZCBjb25jZXJucywgdXNlcnMgbWF5IGNvbnRhY3QgV2Vkcm96IHRocm91Z2ggdGhlIHN1cHBvcnQgY2hhbm5lbHMgbWFkZSBhdmFpbGFibGUgb24gdGhlIFBsYXRmb3JtLgpBbGwgZGlzcHV0ZSBzdWJtaXNzaW9ucyBzaG91bGQgaW5jbHVkZSBzdWZmaWNpZW50IGluZm9ybWF0aW9uIGFuZCBzdXBwb3J0aW5nIGRvY3VtZW50YXRpb24gdG8gZW5hYmxlIGFuIGVmZmVjdGl2ZSByZXZpZXcuCnN1cHBvcnRAd2Vkcm96LmNvbQ==