ZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2lkbGUucnN0IGIvRG9jL2xpYnJhcnkvaWRsZS5yc3QKaW5kZXggOWVkNjczZi4uMjc5NzA1NyAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvaWRsZS5yc3QKKysrIGIvRG9jL2xpYnJhcnkvaWRsZS5yc3QKQEAgLTEwLDcgKzEwLDcgQEAKIAogLi4gbW9kdWxlYXV0aG9yOjogR3VpZG8gdmFuIFJvc3N1bSA8Z3VpZG9AcHl0aG9uLm9yZz4KIAotSURMRSBpcyB0aGUgUHl0aG9uIElERSBidWlsdCB3aXRoIHRoZSA6bW9kOmB0a2ludGVyYCBHVUkgdG9vbGtpdC4KK0lETEUgaXMgUHl0aG9uJ3MgSW50ZWdyYXRlZCBEZXZlbG9wbWVudCBhbmQgTGVhcm5pbmcgRW52aXJvbm1lbnQuCiAKIElETEUgaGFzIHRoZSBmb2xsb3dpbmcgZmVhdHVyZXM6CiAKZGlmZiAtLWdpdCBhL0xpYi9pZGxlbGliL1JFQURNRS50eHQgYi9MaWIvaWRsZWxpYi9SRUFETUUudHh0CmluZGV4IDEwMWY3ZWIuLmI1NjYzYzIgMTAwNjQ0Ci0tLSBhL0xpYi9pZGxlbGliL1JFQURNRS50eHQKKysrIGIvTGliL2lkbGVsaWIvUkVBRE1FLnR4dApAQCAtMSw2MyArMSwyMjkgQEAKLUlETEUgaXMgUHl0aG9uJ3MgVGtpbnRlci1iYXNlZCBJbnRlZ3JhdGVkIERldmVMb3BtZW50IEVudmlyb25tZW50LgorUkVBRE1FLnR4dDogYW4gaW5kZXggdG8gaWRsZWxpYiBmaWxlcyBhbmQgdGhlIElETEUgbWVudS4KIAotSURMRSBlbXBoYXNpemVzIGEgbGlnaHR3ZWlnaHQsIGNsZWFuIGRlc2lnbiB3aXRoIGEgc2ltcGxlIHVzZXIgaW50ZXJmYWNlLgotQWx0aG91Z2ggaXQgaXMgc3VpdGFibGUgZm9yIGJlZ2lubmVycywgZXZlbiBhZHZhbmNlZCB1c2VycyB3aWxsIGZpbmQgdGhhdAotSURMRSBoYXMgZXZlcnl0aGluZyB0aGV5IHJlYWxseSBuZWVkIHRvIGRldmVsb3AgcHVyZSBQeXRob24gY29kZS4KK0lETEUgaXMgUHl0aG9uknMgSW50ZWdyYXRlZCBEZXZlbG9wbWVudCBhbmQgTGVhcm5pbmcKK0Vudmlyb25tZW50LiAgVGhlIHVzZXIgZG9jdW1lbnRhdGlvbiBpcyBwYXJ0IG9mIHRoZSBMaWJyYXJ5IFJlZmVyZW5jZSBhbmQKK2lzIGF2YWlsYWJsZSBpbiBJRExFIGJ5IHNlbGVjdGluZyBIZWxwID0+IElETEUgSGVscC4gIFRoaXMgUkVBRE1FIGRvY3VtZW50cworaWRsZWxpYiBmb3IgSURMRSBkZXZlbG9wZXJzIGFuZCBjdXJpb3VzIHVzZXJzLgogCi1JRExFIGZlYXR1cmVzIGEgbXVsdGktd2luZG93IHRleHQgZWRpdG9yIHdpdGggbXVsdGlwbGUgdW5kbywgUHl0aG9uIGNvbG9yaXppbmcsCi1hbmQgbWFueSBvdGhlciBjYXBhYmlsaXRpZXMsIGUuZy4gc21hcnQgaW5kZW50LCBjYWxsIHRpcHMsIGFuZCBhdXRvY29tcGxldGlvbi4KK0lETEVMSUIgRklMRVMgbGlzdHMgZmlsZXMgYWxwaGFiZXRpY2FsbHkgYnkgY2F0ZWdvcnksCit3aXRoIGEgc2hvcnQgZGVzY3JpcHRpb24gb2YgZWFjaC4KIAotVGhlIGVkaXRvciBoYXMgY29tcHJlaGVuc2l2ZSBzZWFyY2ggZnVuY3Rpb25zLCBpbmNsdWRpbmcgc2VhcmNoaW5nIHRocm91Z2gKLW11bHRpcGxlIGZpbGVzLiAgQ2xhc3MgYnJvd3NlcnMgYW5kIHBhdGggYnJvd3NlcnMgcHJvdmlkZSBmYXN0IGFjY2VzcyB0bwotY29kZSBvYmplY3RzIGZyb20gYSB0b3AgbGV2ZWwgdmlld3BvaW50IHdpdGhvdXQgZGVhbGluZyB3aXRoIGNvZGUgZm9sZGluZy4KK0lETEUgTUVOVSBzaG93IHRoZSBtZW51IHRyZWUsIGFubm90YXRlZCB3aXRoIHRoZSBtb2R1bGUKK29yIG1vZHVsZSBvYmplY3QgdGhhdCBpbXBsZW1lbnRzIHRoZSBjb3JyZXNwb25kaW5nIGZ1bmN0aW9uLgogCi1UaGVyZSBpcyBhIFB5dGhvbiBTaGVsbCB3aW5kb3cgd2hpY2ggZmVhdHVyZXMgY29sb3JpemluZyBhbmQgY29tbWFuZCByZWNhbGwuCi0KLUlETEUgZXhlY3V0ZXMgUHl0aG9uIGNvZGUgaW4gYSBzZXBhcmF0ZSBwcm9jZXNzLCB3aGljaCBpcyByZXN0YXJ0ZWQgZm9yIGVhY2gKLVJ1biAoRjUpIGluaXRpYXRlZCBmcm9tIGFuIGVkaXRvciB3aW5kb3cuICBUaGUgZW52aXJvbm1lbnQgY2FuIGFsc28gYmUgCi1yZXN0YXJ0ZWQgZnJvbSB0aGUgU2hlbGwgd2luZG93IHdpdGhvdXQgcmVzdGFydGluZyBJRExFLgotCi1UaGlzIGVuaGFuY2VtZW50IGhhcyBvZnRlbiBiZWVuIHJlcXVlc3RlZCwgYW5kIGlzIG5vdyBmaW5hbGx5IGF2YWlsYWJsZS4gIFRoZQotbWFnaWMgInJlbG9hZC9pbXBvcnQgKiIgaW5jYW50YXRpb25zIGFyZSBubyBsb25nZXIgcmVxdWlyZWQgd2hlbiBlZGl0aW5nIGFuZAotdGVzdGluZyBhIG1vZHVsZSB0d28gb3IgdGhyZWUgc3RlcHMgZG93biB0aGUgaW1wb3J0IGNoYWluLgotCi0oUGVyc29uYWwgZmlyZXdhbGwgc29mdHdhcmUgbWF5IHdhcm4gYWJvdXQgdGhlIGNvbm5lY3Rpb24gSURMRSBtYWtlcyB0byBpdHMKLXN1YnByb2Nlc3MgdXNpbmcgdGhpcyBjb21wdXRlcidzIGludGVybmFsIGxvb3BiYWNrIGludGVyZmFjZS4gIFRoaXMgY29ubmVjdGlvbgotaXMgbm90IHZpc2libGUgb24gYW55IGV4dGVybmFsIGludGVyZmFjZSBhbmQgbm8gZGF0YSBpcyBzZW50IHRvIG9yIHJlY2VpdmVkCi1mcm9tIHRoZSBJbnRlcm5ldC4pCi0KLUl0IGlzIHBvc3NpYmxlIHRvIGludGVycnVwdCB0aWdodGx5IGxvb3BpbmcgdXNlciBjb2RlLCBldmVuIG9uIFdpbmRvd3MuCi0KLUFwcGxpY2F0aW9ucyB3aGljaCBjYW5ub3Qgc3VwcG9ydCBzdWJwcm9jZXNzZXMgYW5kL29yIHNvY2tldHMgY2FuIHN0aWxsIHJ1bgotSURMRSBpbiBhIHNpbmdsZSBwcm9jZXNzLgotCi1JRExFIGhhcyBhbiBpbnRlZ3JhdGVkIGRlYnVnZ2VyIHdpdGggc3RlcHBpbmcsIHBlcnNpc3RlbnQgYnJlYWtwb2ludHMsIGFuZCBjYWxsCi1zdGFjayB2aXNpYmlsaXR5LgotCi1UaGVyZSBpcyBhIEdVSSBjb25maWd1cmF0aW9uIG1hbmFnZXIgd2hpY2ggbWFrZXMgaXQgZWFzeSB0byBzZWxlY3QgZm9udHMsCi1jb2xvcnMsIGtleWJpbmRpbmdzLCBhbmQgc3RhcnR1cCBvcHRpb25zLiAgVGhpcyBmYWNpbGl0eSBpbmNsdWRlcyBhIGZlYXR1cmUKLXdoaWNoIGFsbG93cyB0aGUgdXNlciB0byBzcGVjaWZ5IGFkZGl0aW9uYWwgaGVscCBzb3VyY2VzLCBlaXRoZXIgbG9jYWxseSBvciBvbgotdGhlIHdlYi4KLQotSURMRSBpcyBjb2RlZCBpbiAxMDAlIHB1cmUgUHl0aG9uLCB1c2luZyB0aGUgVGtpbnRlciBHVUkgdG9vbGtpdCAoVGsvVGNsKQotYW5kIGlzIGNyb3NzLXBsYXRmb3JtLCB3b3JraW5nIG9uIFVuaXgsIE1hYywgYW5kIFdpbmRvd3MuCi0KLUlETEUgYWNjZXB0cyBjb21tYW5kIGxpbmUgYXJndW1lbnRzLiAgVHJ5IGlkbGUgLWggdG8gc2VlIHRoZSBvcHRpb25zLgorVGhpcyBmaWxlIGlzIGRlc2NyaXB0aXZlLCBub3QgcHJlc2NyaXB0aXZlLCBhbmQgbWF5IGhhdmUgZXJyb3JzCithbmQgb21pc3Npb25zIGFuZCBsYWcgYmVoaW5kIGNoYW5nZXMgaW4gaWRsZWxpYi4KIAogCi1JZiB5b3UgZmluZCBidWdzIG9yIGhhdmUgc3VnZ2VzdGlvbnMsIGxldCB1cyBrbm93IGFib3V0IHRoZW0gYnkgdXNpbmcgdGhlCi1QeXRob24gQnVnIFRyYWNrZXI6CitJRExFTElCIEZJTEVTCitJbXBsZW1ldGF0aW9uIGZpbGVzIG5vdCBpbiBJRExFIE1FTlUgYXJlIG1hcmtlZCAobmltKS4KK0RlcHJlY2F0ZWQgZmlsZXMgYW5kIG9iamVjdHMgYXJlIGxpc3RlZCBzZXBhcmF0ZWx5IGFzIHRoZSBlbmQuCiAKLWh0dHA6Ly9zb3VyY2Vmb3JnZS5uZXQvcHJvamVjdHMvcHl0aG9uCitTdGFydHVwCistLS0tLS0tCitfX2luaXRfXy5weSAgIyBpbXBvcnQsIGRvZXMgbm90aGluZworX19tYWluX18ucHkgICMgLW0sIHN0YXJ0cyBJRExFCitpZGxlLmJhdAoraWRsZS5weQoraWRsZS5weXcKIAotUGF0Y2hlcyBhcmUgYWx3YXlzIGFwcHJlY2lhdGVkIGF0IHRoZSBQeXRob24gUGF0Y2ggVHJhY2tlciwgYW5kIGNoYW5nZQotcmVxdWVzdHMgc2hvdWxkIGJlIHBvc3RlZCB0byB0aGUgUkZFIFRyYWNrZXIuCitJbXBsZW1lbnRhdGlvbgorLS0tLS0tLS0tLS0tLS0KK0F1dG9Db21wbGV0ZS5weSAgICMgQ29tcGxldGUgYXR0cmlidXRlIG5hbWVzIG9yIGZpbGVuYW1lcy4KK0F1dG9Db21wbGV0ZVdpbmRvdy5weSAgIyBEaXNwbGF5IGNvbXBsZXRpb25zLgorQXV0b0V4cGFuZC5weSAgICAgIyBFeHBhbmQgd29yZCB3aXRoIHByZXZpb3VzIHdvcmQgaW4gZmlsZS4KK0JpbmRpbmdzLnB5ICAgICAgICMgRGVmaW5lIG1vc3Qgb2YgSURMRSBtZW51LgorQ2FsbFRpcFdpbmRvdy5weSAgIyBEaXNwbGF5IGNhbGx0aXAuCitDYWxsVGlwcy5weSAgICAgICAjIENyZWF0ZSBjYWxsdGlwIHRleHQuCitDbGFzc0Jyb3dzZXIucHkgICAjIENyZWF0ZSBtb2R1bGUgYnJvd3NlciB3aW5kb3cuCitDb2RlQ29udGV4dC5weSAgICAjIFNob3cgY29tcG91bmQgc3RhdGVtZW50IGhlYWRlcnMgb3RoZXJ3aXNlIG5vdCB2aXNpYmxlLgorQ29sb3JEZWxlZ2F0b3IucHkgIyBDb2xvcml6ZSB0ZXh0IChuaW0pLgorRGVidWdnZXIucHkgICAgICAgIyBEZWJ1ZyBjb2RlIHJ1biBmcm9tIGVkaXRvcjsgc2hvdyB3aW5kb3cuCitEZWxlZ2F0b3IucHkgICAgICAjIERlZmluZSBiYXNlIGNsYXNzIGZvciBkZWxlZ2F0b3JzIChuaW0pLgorRWRpdG9yV2luZG93LnB5ICAgIyBEZWZpbmUgbW9zdCBvZiBlZGl0b3IgYW5kIHV0aWxpdHkgZnVuY3Rpb25zLgorRmlsZUxpc3QucHkgICAgICAgIyBPcGVuIGZpbGVzIGFuZCBtYW5hZ2UgbGlzdCBvZiBvcGVuIHdpbmRvd3MgKG5pbSkuCitGb3JtYXRQYXJhZ3JhcGgucHkjIFJlLXdyYXAgbXVsdGlsaW5lIHN0cmluZ3MgYW5kIGNvbW1lbnRzLgorR3JlcERpYWxvZy5weSAgICAgIyBGaW5kIGFsbCBvY2N1cnJlbmNlcyBvZiBwYXR0ZXJuIGluIG11bHRpcGxlIGZpbGVzLgorSHlwZXJQYXJzZXIucHkgICAgIyBQYXJzZSBjb2RlIGFyb3VuZCBhIGdpdmVuIGluZGV4LgorSU9CaW5kaW5nLnB5ICAgICAgIyBPcGVuLCByZWFkLCBhbmQgd3JpdGUgZmlsZXMKK0lkbGVIaXN0b3J5LnB5ICAgICMgR2V0IHByZXZpb3VzIG9yIG5leHQgdXNlciBpbnB1dCBpbiBzaGVsbCAobmltKQorTXVsdGlDYWxsLnB5ICAgICAgIyBXcmFwIHRrIHdpZGdldCB0byBhbGxvdyBtdWx0aXBsZSBjYWxscyBwZXIgZXZlbnQgKG5pbSkuCitNdWx0aVN0YXR1c0Jhci5weSAjIERlZmluZSBzdGF0dXMgYmFyIGZvciB3aW5kb3dzIChuaW0pLgorT2JqZWN0QnJvd3Nlci5weSAgIyBEZWZpbmUgY2xhc3MgdXNlZCBpbiBTdGFja1ZpZXdlciAobmltKS4KK091dHB1dFdpbmRvdy5weSAgICMgQ3JlYXRlIHdpbmRvdyBmb3IgZ3JlcCBvdXRwdXQuCitQYXJlbk1hdGNoLnB5ICAgICAjIE1hdGNoIGZlbmNlcG9zdHM6ICgpLCBbXSwgYW5kIHt9LgorUGF0aEJyb3dzZXIucHkgICAgIyBDcmVhdGUgcGF0aCBicm93c2VyIHdpbmRvdy4KK1BlcmNvbGF0b3IucHkgICAgICMgTWFuYWdlIGRlbGVnYXRvciBzdGFjayAobmltKS4KK1B5UGFyc2UucHkgICAgICAgICMgR2l2ZSBpbmZvcm1hdGlvbiBvbiBjb2RlIGluZGVudGF0aW9uCitQeVNoZWxsLnB5ICAgICAgICAjIFN0YXJ0IElETEUsIG1hbmFnZSBzaGVsbCwgY29tcGxldGUgZWRpdG9yIHdpbmRvdworUmVtb3RlRGVidWdnZXIucHkgIyBEZWJ1ZyBjb2RlIHJ1biBpbiByZW1vdGUgcHJvY2Vzcy4KK1JlbW90ZU9iamVjdEJyb3dzZXIucHkgIyBDb21tdW5pY2F0ZSBvYmplY3RzIGJldHdlZW4gcHJvY2Vzc2VzIHdpdGggcnBjIChuaW0pLgorUmVwbGFjZURpYWxvZy5weSAgIyBTZWFyY2ggYW5kIHJlcGxhY2UgcGF0dGVybiBpbiB0ZXh0LgorUnN0cmlwRXh0ZW5zaW9uLnB5IyBTdHJpcCB0cmFpbGluZyB3aGl0ZXNwYWNlCitTY3JpcHRCaW5kaW5nLnB5ICAjIENoZWNrIGFuZCBydW4gdXNlciBjb2RlLgorU2Nyb2xsZWRMaXN0LnB5ICAgIyBEZWZpbmUgU2Nyb2xsZWRMaXN0IHdpZGdldCBmb3IgSURMRSAobmltKS4KK1NlYXJjaERpYWxvZy5weSAgICMgU2VhcmNoIGZvciBwYXR0ZXJuIGluIHRleHQuCitTZWFyY2hEaWFsb2dCYXNlLnB5ICAjIERlZmluZSBiYXNlIGZvciBzZWFyY2gsIHJlcGxhY2UsIGFuZCBncmVwIGRpYWxvZ3MuCitTZWFyY2hFbmdpbmUucHkgICAjIERlZmluZSBlbmdpbmUgZm9yIGFsbCAzIHNlYXJjaCBkaWFsb2dzLgorU3RhY2tWaWV3ZXIucHkgICAgIyBWaWV3IHN0YWNrIGFmdGVyIGV4Y2VwdGlvbi4KK1RyZWVXaWRnZXQucHkgICAgICMgRGVmaW5lIHRyZWUgd2lkZ2VyLCB1c2VkIGluIGJyb3dzZXJzIChuaW0pLgorVW5kb0RlbGVnYXRvci5weSAgIyBNYW5hZ2UgdW5kbyBzdGFjay4KK1dpZGdldFJlZGlyZWN0b3IucHkgIyBJbnRlcmNlcHQgd2lkZ2V0IHN1YmNvbW1hbmRzIChmb3IgcGVyY29sYXRvcikgKG5pbSkuCitXaW5kb3dMaXN0LnB5ICAgICAjIE1hbmFnZSB3aW5kb3cgbGlzdCBhbmQgZGVmaW5lIGxpc3RlZCB0b3AgbGV2ZWwuCitab29tSGVpZ2h0LnB5ICAgICAjIFpvb20gd2luZG93IHRvIGZ1bGwgaGVpZ2h0IG9mIHNjcmVlbi4KK2Fib3V0RGlhbG9nLnB5ICAgICMgRGlzcGxheSBBYm91dCBJRExFIGRpYWxvZy4KK2NvbmZpZ0RpYWxvZy5weSAgICMgRGlzcGxheSB1c2VyIGNvbmZpZ3VyYXRpb24gZGlhbG9ncy4KK2NvbmZpZ0hhbmRsZXIucHkgICMgTG9hZCwgZmV0Y2gsIGFuZCBzYXZlIGNvbmZpZ3VyYXRpb24gKG5pbSkuCitjb25maWdIZWxwU291cmNlRWRpdC5weSAgIyBTcGVjaWZ5IGhlbHAgc291cmNlLgorY29uZmlnU2VjdGlvbk5hbWVEaWFsb2cucHkgICMgU3BlZmlmeSB1c2VyIGNvbmZpZyBzZWN0aW9uIG5hbWUKK2R5bk9wdGlvbk1lbnVXaWRnZXQucHkgICMgZGVmaW5lIG11dGFibGUgT3B0aW9uTWVudSB3aWRnZXQgKG5pbSkuCitoZWxwLnB5ICAgICAgICAgICAjIERpc3BsYXkgSURMRSdzIGh0bWwgZG9jLgora2V5YmluZGluZ0RpYWxvZy5weSAgIyBDaGFuZ2Uga2V5YmluZGluZ3MuCittYWNvc3hTdXBwb3J0LnB5ICAjIEhlbHAgSURMRSBydW4gb24gTWFjcyAobmltKS4KK3JwYy5weSAgICAgICAgICAgICMgQ29tbXVpY2F0ZSBiZXR3ZWVuIGlkbGUgYW5kIHVzZXIgcHJvY2Vzc2VzIChuaW0pLgorcnVuLnB5ICAgICAgICAgICAgIyBNYW5hZ2UgdXNlciBjb2RlIGV4ZWN1dGlvbiBzdWJwcm9jZXNzLgordGFiYmVkcGFnZXMucHkgICAgIyBEZWZpbmUgdGFiYmVkIHBhZ2VzIHdpZGdldCAobmltKS4KK3RleHRWaWV3LnB5ICAgICAgICMgRGVmaW5lIHJlYWQtb25seSB0ZXh0IHdpZGdldCAobmltKS4KIAotRm9yIGZ1cnRoZXIgZGV0YWlscyBhbmQgbGlua3MsIHJlYWQgdGhlIEhlbHAgZmlsZXMgYW5kIGNoZWNrIHRoZSBJRExFIGhvbWUKLXBhZ2UgYXQKK0NvbmZpZ3VyYXRpb24KKy0tLS0tLS0tLS0tLS0KK2NvbmZpZy1leHRlbnNpb25zLmRlZiAjIERlZmF1bHRzIGZvciBleHRlbnNpb25zCitjb25maWctaGlnaGxpZ2h0LmRlZiAgIyBEZWZhdWx0cyBmb3IgY29sb3JpemluZworY29uZmlnLWtleXMuZGVmICAgICAgICMgRGVmYXVsdHMgZm9yIGtleSBiaW5kaW5ncworY29uZmlnLW1haW4uZGVmICAgICAgICMgRGVmYWk7dHMgZnByIGZvbnQgYW5kIGdlbmVhbAogCi1odHRwOi8vd3d3LnB5dGhvbi5vcmcvaWRsZS8KK1RleHQKKy0tLS0KK0NSRURJVFMudHh0ICAjIG5vdCBtYWludGFpbmVkLCBkaXNwbGF5ZWQgYnkgQWJvdXQgSURMRQorSElTVE9SWS50eHQgICMgTkVXUyB1cCB0byBKdWx5IDIwMDEKK05FV1MudHh0ICAgICAjIGNvbW1pdHMsIGRpc3BsYXllZCBieSBBYm91dCBJRExFCitSRUFETUUudHh0ICAgIyB0aGlzIGZpbGUsIGRpc3BsZXllZCBieSBBYm91dCBJRExFCitUT0RPLnR4dCAgICAgIyBuZWVkcyByZXZpZXcKK2V4dGVuZC50eHQgICAjIGFib3V0IHdyaXRpbmcgZXh0ZW5zaW9ucworaGVscC5odG1sICAgICMgY29weSBvZiBpZGxlLmh0bWwgaW4gZG9jcywgZGlzcGxheWVkIGJ5IElETEUgSGVscAogCi1UaGVyZSBpcyBhIG1haWwgbGlzdCBmb3IgSURMRTogaWRsZS1kZXZAcHl0aG9uLm9yZy4gIFlvdSBjYW4gam9pbiBhdAorU3ViZGlyZWN0b3JpZXMKKy0tLS0tLS0tLS0tLS0tCitJY29ucyAgIyBzbWFsbCBpbWFnZSBmaWxlcworaWRsZV90ZXN0ICAjIGZpbGVzIGZvciBodW1hbiB0ZXN0IGFuZCBhdXRvbWF0ZWQgdW5pdCB0ZXN0cwogCi1odHRwOi8vbWFpbC5weXRob24ub3JnL21haWxtYW4vbGlzdGluZm8vaWRsZS1kZXYKK1VudXNlZCBhbmQgRGVwcmVjYXRlZCBmaWxlcyBhbmQgb2JqZWN0cyAobmltKQorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitFZGl0b3JXaW5kb3cucHk6IEhlbHBkaWFsb2cgYW5kIGhlbHBEaWFsb2cKK1Rvb2xUaXAucHk6IHVudXNlZC4KK2hlbHAudHh0CitpZGxldmVyLnB5CisKKworSURMRSBNRU5VUworVG9wIGxldmVsIGl0ZW1zIGFuZCBtb3N0IHN1Ym1lbnUgaXRlbXMgYXJlIGRlZmluZWQgaW4gQmluZGluZ3MuCitFeHRlbnN0aW9ucyBhZGQgc3VibWVudSBpdGVtcyB3aGVuIGFjdGl2ZS4gIFRoZSBuYW1lcyBnaXZlbiBhcmUKK2ZvdW5kLCBxdW90ZWQsIGluIG9uZSBvZiB0aGVzZSBtb2R1bGVzLCBwYWlyZWQgd2l0aCBhICc8PHBzZXVkb2V2ZW50Pj4nLgorRWFjaCBwc2V1ZG9ldmVudCBpcyBib3VuZCB0byBhbiBldmVudCBoYW5kbGVyLiAgU29tZSBldmVudCBoYW5kbGVycworY2FsbCBhbm90aGVyIGZ1bmN0aW9uIHRoYXQgZG9lcyB0aGUgYWN0dWFsIHdvcmsuICBUaGUgYW5ub3RhdGlvbnMgYmVsb3cKK2FyZSBpbnRlbmRlZCB0byBhdCBsZWFzdCBnaXZlIHRoZSBtb2R1bGUgd2hlcmUgdGhlIGFjdHVhbCB3b3JrIGlzIGRvbmUuCisKK0ZpbGUgICMgSU9CaW5kaWcgZXhjZXB0IGFzIG5vdGVkCisgIE5ldyBGaWxlCisgIE9wZW4uLi4gICMgSU9CaW5kaW5nLm9wZW4KKyAgT3BlbiBNb2R1bGUKKyAgUmVjZW50IEZpbGVzCisgIENsYXNzIEJyb3dzZXIgICMgQ2xhc3MgQnJvd3NlcgorICBQYXRoIEJyb3dzZXIgICMgUGF0aCBCcm93c2VyCisgIC0tLQorICBTYXZlICAjIElEQmluZGluZy5zYXZlCisgIFNhdmUgQXMuLi4gICMgSU9CaW5kaW5nLnNhdmVfYXMKKyAgU2F2ZSBDb3B5IEFzLi4uICAjIElPQmluZGxpbmcuc2F2ZV9hX2NvcHkKKyAgLS0tCisgIFByaW50IFdpbmRvdyAgIyBJT0JpbmRpbmcucHJpbnRfd2luZG93CisgIC0tLQorICBDbG9zZQorICBFeGl0CisKK0VkaXQKKyAgVW5kbyAgIyB1bmRvRGVsZWdhdG9yCisgIFJlZG8gICMgdW5kb0RlbGVnYXRvcgorICAtLS0KKyAgQ3V0CisgIENvcHkKKyAgUGFzdGUKKyAgU2VsZWN0IEFsbAorICAtLS0gICMgTmV4dCA1IGl0ZW1zIHVzZSBTZWFyY2hFbmdpbmU7IGRpYWxvZ3MgdXNlIFNlYXJjaERpYWxvZ0Jhc2UKKyAgRmluZCAgIyBTZWFyY2ggRGlhbG9nCisgIEZpbmQgQWdhaW4KKyAgRmluZCBTZWxlY3Rpb24KKyAgRmluZCBpbiBGaWxlcy4uLiAgIyBHcmVwRGlhbG9nCisgIFJlcGxhY2UuLi4gICMgUmVwbGFjZURpYWxvZworICBHbyB0byBMaW5lCisgIFNob3cgQ29tcGxldGlvbnMgICMgQXV0b0NvbXBsZXRlIGV4dGVuc2lvbiBhbmQgQXV0b0NvbXBsZXRlV2lkb3cgKCZIUCkKKyAgRXhwYW5kIFdvcmQgICMgQXV0b0V4cGFuZCBleHRlbnNpb24KKyAgU2hvdyBjYWxsIHRpcCAgIyBDYWxsdGlwcyBleHRlbnNpb24gYW5kIENhbGx0aXBXaW5kb3cgKCYgSHlwZXJwYXJzZXIpCisgIFNob3cgc3Vycm91bmRpbmcgcGFyZW5zICAjIFBhcmVuTWF0Y2ggKCYgSHlwZXJwYXJzZXIpCisKK1NoZWxsICAjIFB5U2hlbGwKKyAgVmlldyBMYXN0IFJlc3RhcnQgICMgUHlTaGVsbC4/CisgIFJlc3RhcnQgU2hlbGwgICMgUHlTaGVsbC4/CisKK0RlYnVnIChTaGVsbCBvbmx5KQorICBHbyB0byBGaWxlL0xpbmUKKyAgRGVidWdnZXIgICMgRGVidWdnZXIsIFJlbW90ZURlYnVnZ2VyCisgIFN0YWNrIFZpZXdlciAgIyBTdGFja1ZpZXdlcgorICBBdXRvLW9wZW4gU3RhY2sgVmlld2VyICAjIFN0YWNrVmlld2VyCisKK0Zvcm1hdCAoRWRpdG9yIG9ubHkpCisgIEluZGVudCBSZWdpb24KKyAgRGVkZW50IFJlZ2lvbgorICBDb21tZW50IE91dCBSZWdpb24KKyAgVW5jb21tZW50IFJlZ2lvbgorICBUYWJpZnkgUmVnaW9uCisgIFVudGFiaWZ5IFJlZ2lvbgorICBUb2dnbGUgVGFicworICBOZXcgSW5kZW50IFdpZHRoCisgIEZvcm1hdCBQYXJhZ3JhcGggICMgRm9ybWF0UGFyYWdyYXBoIGV4dGVuc2lvbgorICAtLS0KKyAgU3RyaXAgdGFpbGluZyB3aGl0ZXNwYWNlICAjIFJzdHJpcEV4dGVuc2lvbiBleHRlbnNpb24KKworUnVuIChFZGl0b3Igb25seSkKKyAgUHl0aG9uIFNoZWxsICAjIFB5U2hlbGwKKyAgLS0tCisgIENoZWNrIE1vZHVsZSAgIyBTY3JpcHRCaW5kaW5nCisgIFJ1biBNb2R1bGUgICMgU2NyaXB0QmluZGluZworCitPcHRpb25zCisgIENvbmZpZ3VyZSBJRExFICAjIGNvbmZpZ0RpYWxvZworICAgICh0YWJzIGluIHRoZSBkaWFsb2cpCisgICAgRm9udCB0YWIgICMgb25maWctbWFpbi5kZWYKKyAgICBIaWdobGlnaHQgdGFiICAjIGNvbmZpZ1NlY3Rpb25OYW1lRGlhbG9nLCBjb25maWctaGlnaGxpZ2h0LmRlZgorICAgIEtleXMgdGFiICAjIGtleWJpbmRpbmdEaWFsb2csIGNvbmZpZ1NlY3Rpb25OYW1lRGlhbG9nLCBvbmZpZy1rZXVzLmRlZgorICAgIEdlbmVyYWwgdGFiICAjIGNvbmZpZ0hlbHBTb3VyY2VFZGl0LCBjb25maWctbWFpbi5kZWYKKyAgQ29uZmlndXJlIEV4dGVuc2lvbnMgICMgY29uZmlnRGlhbG9nCisgICAgWHl6IHRhYiAgIyB4eXoucHksIGNvbmZpZy1leHRlbnNpb25zLmRlZgorICAtLS0KKyAgQ29kZSBDb250ZXh0IChlZGl0b3Igb25seSkgICMgQ29kZUNvbnRleHQgZXh0ZW5zaW9uCisKK1dpbmRvdworICBab29taGVpZ2h0ICAjIFpvb21IZWlnaHQgZXh0ZW5zaW9uCisgIC0tLQorICA8b3BlbiB3aW5kb3dzPiAgIyBXaW5kb3dMaXN0CisKK0hlbHAKKyAgQWJvdXQgSURMRSAgIyBhYm91dERpYWxvZworICAtLS0KKyAgSURMRSBIZWxwICAjIGhlbHAKKyAgUHl0aG9uIERvYworICBUdXJ0bGUgRGVtbworICAtLS0KKyAgPG90aGVyIGhlbHAgc291cmNlcz4KKworPENvbnRleHQgTWVudT4gKHJpZ2h0IGNsaWNrKQorRGVmaW5lZCBpbiBFZGl0b3JXaW5kb3csIFB5U2hlbGwsIE91dHB1dAorICAgQ3V0CisgICBDb3B5CisgICBQYXN0ZQorICAgLS0tCisgICBHbyB0byBmaWxlL2xpbmUgKHNoZWxsIGFuZCBvdXRwdXQgb25seSkKKyAgIFNldCBCcmVha3BvaW50IChlZGl0b3Igb25seSkKKyAgIENsZWFyIEJyZWFrcG9pbnQgKGVkaXRvciBvbmx5KQorIERlZmluZWQgaW4gRGVidWdnZXIKKyAgIEdvIHRvIHNvdXJjZSBsaW5lCisgICBTaG93IHN0YWNrIGZyYW1lCmRpZmYgLS1naXQgYS9MaWIvaWRsZWxpYi9oZWxwLmh0bWwgYi9MaWIvaWRsZWxpYi9oZWxwLmh0bWwKaW5kZXggZjc1YWNjNC4uNjhmNGUwYyAxMDA2NDQKLS0tIGEvTGliL2lkbGVsaWIvaGVscC5odG1sCisrKyBiL0xpYi9pZGxlbGliL2hlbHAuaHRtbApAQCAtNzUsNyArNzUsNyBAQAogCiAgIDxkaXYgY2xhc3M9InNlY3Rpb24iIGlkPSJpZGxlIj4KIDxzcGFuIGlkPSJpZDEiPjwvc3Bhbj48aDE+MjQuNi4gSURMRTxhIGNsYXNzPSJoZWFkZXJsaW5rIiBocmVmPSIjaWRsZSIgdGl0bGU9IlBlcm1hbGluayB0byB0aGlzIGhlYWRsaW5lIj7CtjwvYT48L2gxPgotPHAgaWQ9ImluZGV4LTAiPklETEUgaXMgdGhlIFB5dGhvbiBJREUgYnVpbHQgd2l0aCB0aGUgPHR0IGNsYXNzPSJ4cmVmIHB5IHB5LW1vZCBkb2N1dGlscyBsaXRlcmFsIj48c3BhbiBjbGFzcz0icHJlIj50a2ludGVyPC9zcGFuPjwvdHQ+IEdVSSB0b29sa2l0LjwvcD4KKzxwIGlkPSJpbmRleC0wIj5JRExFIGlzIFB5dGhvbiYjODIxNztzIEludGVncmF0ZWQgRGV2ZWxvcG1lbnQgYW5kIExlYXJuaW5nIEVudmlyb25tZW50LjwvcD4KIDxwPklETEUgaGFzIHRoZSBmb2xsb3dpbmcgZmVhdHVyZXM6PC9wPgogPHVsIGNsYXNzPSJzaW1wbGUiPgogPGxpPmNvZGVkIGluIDEwMCUgcHVyZSBQeXRob24sIHVzaW5nIHRoZSA8dHQgY2xhc3M9InhyZWYgcHkgcHktbW9kIGRvY3V0aWxzIGxpdGVyYWwiPjxzcGFuIGNsYXNzPSJwcmUiPnRraW50ZXI8L3NwYW4+PC90dD4gR1VJIHRvb2xraXQ8L2xpPgpAQCAtNjk5LDcgKzY5OSw3IEBACiAgICAgVGhlIFB5dGhvbiBTb2Z0d2FyZSBGb3VuZGF0aW9uIGlzIGEgbm9uLXByb2ZpdCBjb3Jwb3JhdGlvbi4KICAgICA8YSBocmVmPSJodHRwczovL3d3dy5weXRob24ub3JnL3BzZi9kb25hdGlvbnMvIj5QbGVhc2UgZG9uYXRlLjwvYT4KICAgICA8YnIgLz4KLSAgICBMYXN0IHVwZGF0ZWQgb24gU2VwIDI5LCAyMDE1LgorICAgIExhc3QgdXBkYXRlZCBvbiBPY3QgMDIsIDIwMTUuCiAgICAgPGEgaHJlZj0iLi4vYnVncy5odG1sIj5Gb3VuZCBhIGJ1ZzwvYT4/CiAgICAgPGJyIC8+CiAgICAgQ3JlYXRlZCB1c2luZyA8YSBocmVmPSJodHRwOi8vc3BoaW54LnBvY29vLm9yZy8iPlNwaGlueDwvYT4gMS4yLjMuCg==