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b3J0IGZvciBYZW5Nb3Rpb24gYW5kIHZNb3Rpb24uKQAoS1ZNKSBUaGUgZGVzdGluYXRpb24gaG9zdCBtdXN0IGJlIGluIHRoZSBzYW1lIGNsdXN0ZXIgYXMgdGhlIG9yaWdpbmFsIGhvc3QuIChPbiBYZW5TZXJ2ZXIgYW5kIFZNd2FyZSwgVk0gbGl2ZSBtaWdyYXRpb24gZnJvbSBvbmUgY2x1c3RlciB0byBhbm90aGVyIGlzIGVuYWJsZWQgYnkgQ2xvdWRTdGFjayBzdXBwb3J0IGZvciBYZW5Nb3Rpb24gYW5kIHZNb3Rpb24uKQAoU2tpcCB0aGlzIHN0ZXAgaWYgeW91IGhhdmUgZW5hYmxlZCBkeW5hbWljIFZNIHNjYWxpbmc7IHNlZSA6cmVmOmBjcHUtYW5kLW1lbW9yeS1zY2FsaW5nYC4pAChTdXBwb3J0ZWQgb24gVk13YXJlIGFuZCBYZW5TZXJ2ZXIpAChWTXdhcmUpIElmIHJlc291cmNlcyBhcmUgbm90IGF2YWlsYWJsZSBvbiB0aGUgY3VycmVudCBob3N0LCBzY2FsaW5nIHVwIHdpbGwgZmFpbCBvbiBWTXdhcmUgYmVjYXVzZSBvZiBhIGtub3duIGlzc3VlIHdoZXJlIENsb3VkU3RhY2sgYW5kIHZDZW50ZXIgY2FsY3VsYXRlIHRoZSBhdmFpbGFibGUgY2FwYWNpdHkgZGlmZmVyZW50bHkuIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgYGh0dHBzOi8vaXNzdWVzLmFwYWNoZS5vcmcvamlyYS9icm93c2UvQ0xPVURTVEFDSy0xODA5IDxodHRwczovL2lzc3Vlcy5hcGFjaGUub3JnL2ppcmEvYnJvd3NlL0NMT1VEU1RBQ0stMTgwOT5gXy4AKFhlblNlcnZlciBvbmx5KSBJZiB5b3Ugd2FudCB0byBib290IGZyb20gdGhpcyBJU08gaW4gUFYgbW9kZSwgY2hvb3NlIE90aGVyIFBWICgzMi1iaXQpIG9yIE90aGVyIFBWICg2NC1iaXQpAChYZW5TZXJ2ZXIpIFdpbmRvd3MgVk1zIHJ1bm5pbmcgb24gWGVuU2VydmVyIHJlcXVpcmUgUFYgZHJpdmVycywgd2hpY2ggbWF5IGJlIHByb3ZpZGVkIGluIHRoZSB0ZW1wbGF0ZSBvciBhZGRlZCBhZnRlciB0aGUgVk0gaXMgY3JlYXRlZC4gVGhlIFBWIGRyaXZlcnMgYXJlIG5lY2Vzc2FyeSBmb3IgZXNzZW50aWFsIG1hbmFnZW1lbnQgZnVuY3Rpb25zIHN1Y2ggYXMgbW91bnRpbmcgYWRkaXRpb25hbCB2b2x1bWVzIGFuZCBJU08gaW1hZ2VzLCBsaXZlIG1pZ3JhdGlvbiwgYW5kIGdyYWNlZnVsIHNodXRkb3duLgAqKkJvb3RhYmxlKio6IFdoZXRoZXIgb3Igbm90IGEgZ3Vlc3QgY291bGQgYm9vdCBvZmYgdGhpcyBJU08gaW1hZ2UuIEZvciBleGFtcGxlLCBhIENlbnRPUyBJU08gaXMgYm9vdGFibGUsIGEgTWljcm9zb2Z0IE9mZmljZSBJU08gaXMgbm90IGJvb3RhYmxlLgAqKkRlc2NyaXB0aW9uKio6IERpc3BsYXkgdGVzdCBmb3IgdGhlIElTTyBpbWFnZS4gRm9yIGV4YW1wbGUsIENlbnRPUyA2LjIgNjQtYml0LgAqKkRpc3BsYXkgbmFtZSoqOiBFbnRlciBhIG5ldyBkaXNwbGF5IG5hbWUgaWYgeW91IHdhbnQgdG8gY2hhbmdlIHRoZSBuYW1lIG9mIHRoZSBWTS4AKipFeHRyYWN0YWJsZSoqOiBDaG9vc2UgWWVzIGlmIHRoZSBJU08gc2hvdWxkIGJlIGF2YWlsYWJsZSBmb3IgZXh0cmFjdGlvbi4AKipGZWF0dXJlZCoqOiBDaG9vc2UgWWVzIGlmIHlvdSB3b3VsZCBsaWtlIHRoaXMgSVNPIHRvIGJlIG1vcmUgcHJvbWluZW50IGZvciB1c2VycyB0byBzZWxlY3QuIFRoZSBJU08gd2lsbCBhcHBlYXIgaW4gdGhlIEZlYXR1cmVkIElTT3MgbGlzdC4gT25seSBhbiBhZG1pbmlzdHJhdG9yIGNhbiBtYWtlIGFuIElTTyBGZWF0dXJlZC4AKipHUFUgcGFzc3Rocm91Z2gqKjogR1BVIHBhc3N0aHJvdWdoIHJlcHJlc2VudHMgYSBwaHlzaWNhbCBHUFUgd2hpY2ggY2FuIGJlIGRpcmVjdGx5IGFzc2lnbmVkIHRvIGEgVk0uIEdQVSBwYXNzdGhyb3VnaCBjYW4gYmUgdXNlZCBvbiBhIGh5cGVydmlzb3IgYWxvbmdzaWRlIEdSSUQgdkdQVSwgd2l0aCBzb21lIHJlc3RyaWN0aW9uczogQSBHUklEIHBoeXNpY2FsIEdQVSBjYW4gZWl0aGVyIGhvc3QgR1JJRCB2R1BVcyBvciBiZSB1c2VkIGFzIHBhc3N0aHJvdWdoLCBidXQgbm90IGJvdGggYXQgdGhlIHNhbWUgdGltZS4AKipHUklEIHZHUFUqKjogR1JJRCB2R1BVIGVuYWJsZXMgbXVsdGlwbGUgVk1zIHRvIHNoYXJlIGEgc2luZ2xlIHBoeXNpY2FsIEdQVS4gVGhlIFZNcyBydW4gYW4gTlZJRElBIGRyaXZlciBzdGFjayBhbmQgZ2V0IGRpcmVjdCBhY2Nlc3MgdG8gdGhlIEdQVS4gR1JJRCBwaHlzaWNhbCBHUFVzIGFyZSBjYXBhYmxlIG9mIHN1cHBvcnRpbmcgbXVsdGlwbGUgdmlydHVhbCBHUFUgZGV2aWNlcyAodkdQVXMpIHRoYXQgY2FuIGJlIGFzc2lnbmVkIGRpcmVjdGx5IHRvIGd1ZXN0IFZNcy4gR3Vlc3QgVk1zIHVzZSBHUklEIHZpcnR1YWwgR1BVcyBpbiB0aGUgc2FtZSBtYW5uZXIgYXMgYSBwaHlzaWNhbCBHUFUgdGhhdCBoYXMgYmVlbiBwYXNzZWQgdGhyb3VnaCBieSB0aGUgaHlwZXJ2aXNvcjogYW4gTlZJRElBIGRyaXZlciBsb2FkZWQgaW4gdGhlIGd1ZXN0IFZNIHByb3ZpZGVzIGRpcmVjdCBhY2Nlc3MgdG8gdGhlIEdQVSBmb3IgcGVyZm9ybWFuY2UtY3JpdGljYWwgZmFzdCBwYXRocywgYW5kIGEgcGFyYXZpcnR1YWxpemVkIGludGVyZmFjZSB0byB0aGUgR1JJRCBWaXJ0dWFsIEdQVSBNYW5hZ2VyLCB3aGljaCBpcyB1c2VkIGZvciBub25wZXJmb3JtYW50IG1hbmFnZW1lbnQgb3BlcmF0aW9ucy4gTlZJRElBIEdSSUQgVmlydHVhbCBHUFUgTWFuYWdlciBmb3IgWGVuU2VydmVyIHJ1bnMgaW4gZG9tMC4gQ2xvdWRTdGFjayBwcm92aWRlcyB5b3Ugd2l0aCB0aGUgZm9sbG93aW5nIGNhcGFiaWxpdGllczoAKipHcm91cCoqOiBFbnRlciB0aGUgZ3JvdXAgbmFtZSBmb3IgdGhlIFZNLgAqKkltcG9ydGFudCoqOiBXYWl0IGZvciB0aGUgSVNPIHRvIGZpbmlzaCBkb3dubG9hZGluZy4gSWYgeW91IG1vdmUgb24gdG8gdGhlIG5leHQgdGFzayBhbmQgdHJ5IHRvIHVzZSB0aGUgSVNPIHJpZ2h0IGF3YXksIGl0IHdpbGwgYXBwZWFyIHRvIGZhaWwuIFRoZSBlbnRpcmUgSVNPIG11c3QgYmUgYXZhaWxhYmxlIGJlZm9yZSBDbG91ZFN0YWNrIGNhbiB3b3JrIHdpdGggaXQuACoqTmFtZSoqOiBTaG9ydCBuYW1lIGZvciB0aGUgSVNPIGltYWdlLiBGb3IgZXhhbXBsZSwgQ2VudE9TIDYuMiA2NC1iaXQuACoqT1MgVHlwZSoqOiBTZWxlY3QgdGhlIGRlc2lyZWQgb3BlcmF0aW5nIHN5c3RlbS4AKipPUyBUeXBlKio6IFRoaXMgaGVscHMgQ2xvdWRTdGFjayBhbmQgdGhlIGh5cGVydmlzb3IgcGVyZm9ybSBjZXJ0YWluIG9wZXJhdGlvbnMgYW5kIG1ha2UgYXNzdW1wdGlvbnMgdGhhdCBpbXByb3ZlIHRoZSBwZXJmb3JtYW5jZSBvZiB0aGUgZ3Vlc3QuIFNlbGVjdCBvbmUgb2YgdGhlIGZvbGxvd2luZy4AKipQdWJsaWMqKjogQ2hvb3NlIFllcyBpZiB0aGlzIElTTyBzaG91bGQgYmUgYXZhaWxhYmxlIHRvIG90aGVyIHVzZXJzLgAqKlVSTCoqOiBUaGUgVVJMIHRoYXQgaG9zdHMgdGhlIElTTyBpbWFnZS4gVGhlIE1hbmFnZW1lbnQgU2VydmVyIG11c3QgYmUgYWJsZSB0byBhY2Nlc3MgdGhpcyBsb2NhdGlvbiB2aWEgSFRUUC4gSWYgbmVlZGVkIHlvdSBjYW4gcGxhY2UgdGhlIElTTyBpbWFnZSBkaXJlY3RseSBvbiB0aGUgTWFuYWdlbWVudCBTZXJ2ZXIAKipab25lKio6IENob29zZSB0aGUgem9uZSB3aGVyZSB5b3Ugd2FudCB0aGUgSVNPIHRvIGJlIGF2YWlsYWJsZSwgb3IgQWxsIFpvbmVzIHRvIG1ha2UgaXQgYXZhaWxhYmxlIHRocm91Z2hvdXQgQ2xvdWRTdGFjay4AQSBTZXJ2aWNlIE9mZmVyaW5nIGNhbm5vdCBiZSBjcmVhdGVkIHdpdGggdGhlIEdQVSB2YWx1ZXMgdGhhdCBhcmUgbm90IHN1cHBvcnRlZCBieSBDbG91ZFN0YWNrIFVJLiBIb3dldmVyLCB5b3UgY2FuIG1ha2UgYW4gQVBJIGNhbGwgdG8gYWNoaWV2ZSB0aGlzLgBBIHJlYm9vdCBpcyBhIHN0b3AgZm9sbG93ZWQgYnkgYSBzdGFydC4AQSBydW5uaW5nIHZpcnR1YWwgbWFjaGluZSBtYXkgZmFpbCBiZWNhdXNlIG9mIGhhcmR3YXJlIG9yIG5ldHdvcmsgaXNzdWVzLiBBIGZhaWxlZCB2aXJ0dWFsIG1hY2hpbmUgaXMgaW4gdGhlIGRvd24gc3RhdGUuAEEgc2FtcGxlIGN1cmwgY29tbWFuZCB0byBjcmVhdGUgYSBuZXcgaW5zdGFuY2UgaXM6AEEgc3RvcCB3aWxsIGF0dGVtcHQgdG8gZ3JhY2VmdWxseSBzaHV0IGRvd24gdGhlIG9wZXJhdGluZyBzeXN0ZW0sIHdoaWNoIHR5cGljYWxseSBpbnZvbHZlcyB0ZXJtaW5hdGluZyBhbGwgdGhlIHJ1bm5pbmcgYXBwbGljYXRpb25zLiBJZiB0aGUgb3BlcmF0aW9uIHN5c3RlbSBjYW5ub3QgYmUgc3RvcHBlZCwgaXQgd2lsbCBiZSBmb3JjZWZ1bGx5IHRlcm1pbmF0ZWQuIFRoaXMgaGFzIHRoZSBzYW1lIGVmZmVjdCBhcyBwdWxsaW5nIHRoZSBwb3dlciBjb3JkIHRvIGEgcGh5c2ljYWwgbWFjaGluZS4AQWJvdXQgV29ya2luZyB3aXRoIFZpcnR1YWwgTWFjaGluZXMAQWNjZXNzIHVzZXItZGF0YSBieSBydW5uaW5nIHRoZSBmb2xsb3dpbmcgY29tbWFuZCB1c2luZyB0aGUgcmVzdWx0IG9mIHRoZSBhYm92ZSBjb21tYW5kAEFjY2Vzc2VkIHVzZXItZGF0YSBmcm9tIFZNLiBPbmNlIHRoZSBJUCBhZGRyZXNzIG9mIHRoZSB2aXJ0dWFsIHJvdXRlciBpcyBrbm93biwgdXNlIHRoZSBmb2xsb3dpbmcgc3RlcHMgdG8gcmV0cmlldmUgdXNlci1kYXRhOgBBY2Nlc3NpbmcgVk1zAEFkZCB0aGUgaG9zdCB0byBDbG91ZFN0YWNrLiBDbG91ZFN0YWNrIGNoZWNrcyBpZiB0aGUgaG9zdCBpcyBHUFUtZW5hYmxlZCBvciBub3QuIENsb3VkU3RhY2sgcXVlcmllcyB0aGUgaG9zdCBhbmQgZGV0ZWN0IGlmIGl0J3MgR1BVIGVuYWJsZWQuAEFkZGluZyBYZW5TZXJ2ZXIgaG9zdHMgd2l0aCBHUFUvdkdQVSBjYXBhYmlsaXR5IHByb3Zpc2lvbmVkIGJ5IHRoZSBhZG1pbmlzdHJhdG9yLgBBZGRpbmcgYW4gSVNPAEFmZmluaXR5IEdyb3VwcwBBZmZpbml0eSBncm91cHMuIEJ5IGRlZmluaW5nIGFmZmluaXR5IGdyb3VwcyBhbmQgYXNzaWduaW5nIFZNcyB0byB0aGVtLCB0aGUgdXNlciBvciBhZG1pbmlzdHJhdG9yIGNhbiBpbmZsdWVuY2UgKGJ1dCBub3QgZGljdGF0ZSkgd2hpY2ggVk1zIHNob3VsZCBydW4gb24gc2VwYXJhdGUgaG9zdHMuIFRoaXMgZmVhdHVyZSBpcyB0byBsZXQgdXNlcnMgc3BlY2lmeSB0aGF0IGNlcnRhaW4gVk1zIHdvbid0IGJlIG9uIHRoZSBzYW1lIGhvc3QuAEFmdGVyIGEgVk0gaXMgY3JlYXRlZCwgeW91IGNhbiBtb2RpZnkgdGhlIGRpc3BsYXkgbmFtZSwgb3BlcmF0aW5nIHN5c3RlbSwgYW5kIHRoZSBncm91cCBpdCBiZWxvbmdzIHRvLgBBZnRlciB5b3Ugc2F2ZSB0aGUgU1NIIGtleXBhaXIgZmlsZSwgeW91IG11c3QgY3JlYXRlIGFuIGluc3RhbmNlIGJ5IHVzaW5nIHRoZSB0ZW1wbGF0ZSB0aGF0IHlvdSBjcmVhdGVkIGF0IGBTZWN0aW9uIDUuMi4xLCDigJwgQ3JlYXRpbmcgYW4gSW5zdGFuY2UgVGVtcGxhdGUgdGhhdCBTdXBwb3J0cyBTU0ggS2V5c+KAnSA8I2NyZWF0ZS1zc2gtdGVtcGxhdGU+YF9fLiBFbnN1cmUgdGhhdCB5b3UgdXNlIHRoZSBzYW1lIFNTSCBrZXkgbmFtZSB0aGF0IHlvdSBjcmVhdGVkIGF0IGBTZWN0aW9uIDUuMi4yLCDigJxDcmVhdGluZyB0aGUgU1NIIEtleXBhaXLigJ0gPCNjcmVhdGUtc3NoLWtleXBhaXI+YF9fLgBBbGxvd2luZyBhbiB1c2VyIHRvIGFkZCBHUFUvdkdQVSBzdXBwb3J0IHRvIGEgVk0gd2l0aG91dCBHUFUvdkdQVSBzdXBwb3J0IGJ5IGNoYW5naW5nIHRoZSBTZXJ2aWNlIE9mZmVyaW5nIGFuZCB2aWNlLXZlcnNhLgBBbHRlcm5hdGVseSwgeW91IGNhbiBjaG9vc2UgdG8gZGVwbG95IGEgVk0gd2l0aG91dCBHUFUgc3VwcG9ydCwgYW5kIGF0IGEgbGF0ZXIgcG9pbnQsIHlvdSBjYW4gY2hhbmdlIHRoZSBzeXN0ZW0gb2ZmZXJpbmcuIFlvdSBjYW4gYWNoaWV2ZSB0aGlzIGJ5IG9mZmxpbmUgdXBncmFkZTogc3RvcCB0aGUgVk0sIHVwZ3JhZGUgdGhlIFNlcnZpY2UgT2ZmZXJpbmcgdG8gdGhlIG9uZSB3aXRoIHZHUFUsIHRoZW4gc3RhcnQgdGhlIFZNLiBJbiB0aGlzIGNhc2UsIENsb3VkU3RhY2sgZ2V0cyBhIGxpc3Qgb2YgaG9zdHMgd2hpY2ggaGF2ZSBlbm91Z2ggY2FwYWNpdHkgdG8gaG9zdCB0aGUgVk0uIElmIHRoZXJlIGlzIGEgR1BVLWVuYWJsZWQgaG9zdCwgQ2xvdWRTdGFjayByZW9yZGVycyB0aGlzIGhvc3QgbGlzdCBhbmQgcGxhY2UgdGhlIEdQVS1lbmFibGVkIGhvc3RzIGF0IHRoZSBib3R0b20gb2YgdGhlIGxpc3QuAEFueSBWTSB0aGF0IGlzIGEgbWVtYmVyIG9mIHRoZSBhZmZpbml0eSBncm91cCB3aWxsIGJlIGRpc2Fzc29jaWF0ZWQgZnJvbSB0aGUgZ3JvdXAuIFRoZSBmb3JtZXIgZ3JvdXAgbWVtYmVycyB3aWxsIGNvbnRpbnVlIHRvIHJ1biBub3JtYWxseSBvbiB0aGUgY3VycmVudCBob3N0cywgYnV0IGlmIHRoZSBWTSBpcyByZXN0YXJ0ZWQsIGl0IHdpbGwgbm8gbG9uZ2VyIGZvbGxvdyB0aGUgaG9zdCBhbGxvY2F0aW9uIHJ1bGVzIGZyb20gaXRzIGZvcm1lciBhZmZpbml0eSBncm91cC4AQW55IG90aGVyIEdQVSBHcm91cABBbnkgdXNlciBjYW4gYWNjZXNzIHRoZWlyIG93biB2aXJ0dWFsIG1hY2hpbmVzLiBUaGUgYWRtaW5pc3RyYXRvciBjYW4gYWNjZXNzIGFsbCBWTXMgcnVubmluZyBpbiB0aGUgY2xvdWQuAEFwcGVuZGluZyBhIERpc3BsYXkgTmFtZSB0byB0aGUgR3Vlc3QgVk3igJlzIEludGVybmFsIE5hbWUAQXNzaWduIGEgTmV3IFZNIHRvIGFuIEFmZmluaXR5IEdyb3VwAEFzc2lnbmluZyBHUFUvdkdQVSB0byBHdWVzdCBWTXMAQXNzaWduaW5nIFZNcyB0byBIb3N0cwBBdCBhbnkgcG9pbnQgaW4gdGltZSwgZWFjaCB2aXJ0dWFsIG1hY2hpbmUgaW5zdGFuY2UgaXMgcnVubmluZyBvbiBhIHNpbmdsZSBob3N0LiBIb3cgZG9lcyBDbG91ZFN0YWNrIGRldGVybWluZSB3aGljaCBob3N0IHRvIHBsYWNlIGEgVk0gb24/IFRoZXJlIGFyZSBzZXZlcmFsIHdheXM6AEF0dGFjaGluZyBhbiBJU08gdG8gYSBWTQBBdXRvbWF0aWMgZGVmYXVsdCBob3N0IGFsbG9jYXRpb24uIENsb3VkU3RhY2sgY2FuIGF1dG9tYXRpY2FsbHkgcGljayB0aGUgbW9zdCBhcHByb3ByaWF0ZSBob3N0IHRvIHJ1biBlYWNoIHZpcnR1YWwgbWFjaGluZS4AQmUgc3VyZSB0aGF0IHRoZSBoYXJkd2FyZSB5b3UgaGF2ZSBhbGxvd3Mgc3RhcnRpbmcgdGhlIHNlbGVjdGVkIHNlcnZpY2Ugb2ZmZXJpbmcuAEJlIHN1cmUgdGhlIGZvbGxvd2luZyBhcmUgaW5zdGFsbGVkIG9uIGVhY2ggVk06AEJlY2F1c2UgZWFjaCBjbG91ZCB1c2VyIGhhcyB0aGVpciBvd24gU1NIIGtleSwgb25lIGNsb3VkIHVzZXIgY2Fubm90IGxvZyBpbiB0byBhbm90aGVyIGNsb3VkIHVzZXIncyBpbnN0YW5jZXMgdW5sZXNzIHRoZXkgc2hhcmUgdGhlaXIgU1NIIGtleSBmaWxlcy4gVXNpbmcgYSBzaW5nbGUgU1NIIGtleSBwYWlyLCB5b3UgY2FuIG1hbmFnZSBtdWx0aXBsZSBpbnN0YW5jZXMuAEJlZm9yZSBjb250aW51aW5nIHdpdGggY29uZmlndXJhdGlvbiwgY29uc2lkZXIgdGhlIGZvbGxvd2luZzoAQmVmb3JlIHByb2NlZWRpbmcsIGVuc3VyZSB0aGF0IHlvdSBoYXZlIHRoZXNlIHByZXJlcXVpc2l0ZXM6AEJlc3QgUHJhY3RpY2VzIGZvciBWaXJ0dWFsIE1hY2hpbmVzAEJ5IGRlZmluaW5nIGFmZmluaXR5IGdyb3VwcyBhbmQgYXNzaWduaW5nIFZNcyB0byB0aGVtLCB0aGUgdXNlciBvciBhZG1pbmlzdHJhdG9yIGNhbiBpbmZsdWVuY2UgKGJ1dCBub3QgZGljdGF0ZSkgd2hpY2ggVk1zIHNob3VsZCBydW4gb24gc2VwYXJhdGUgaG9zdHMuIFRoaXMgZmVhdHVyZSBpcyB0byBsZXQgdXNlcnMgc3BlY2lmeSB0aGF0IFZNcyB3aXRoIHRoZSBzYW1lIOKAnGhvc3QgYW50aS1hZmZpbml0eeKAnSB0eXBlIHdvbuKAmXQgYmUgb24gdGhlIHNhbWUgaG9zdC4gVGhpcyBzZXJ2ZXMgdG8gaW5jcmVhc2UgZmF1bHQgdG9sZXJhbmNlLiBJZiBhIGhvc3QgZmFpbHMsIGFub3RoZXIgVk0gb2ZmZXJpbmcgdGhlIHNhbWUgc2VydmljZSAoZm9yIGV4YW1wbGUsIGhvc3RpbmcgdGhlIHVzZXIncyB3ZWJzaXRlKSBpcyBzdGlsbCB1cCBhbmQgcnVubmluZyBvbiBhbm90aGVyIGhvc3QuAENQVSBhbmQgTWVtb3J5IFNjYWxpbmcgZm9yIFJ1bm5pbmcgVk1zAENlbnRPUyA1LjMAQ2VudE9TIDUuNABDZW50T1MgNS41AENoYW5nZSBBZmZpbml0eSBHcm91cCBmb3IgYW4gRXhpc3RpbmcgVk0AQ2hhbmdpbmcgYSBWTSdzIEJhc2UgSW1hZ2UAQ2hhbmdpbmcgdGhlIFNlcnZpY2UgT2ZmZXJpbmcgZm9yIGEgVk0AQ2hhbmdpbmcgdGhlIFZNIE5hbWUsIE9TLCBvciBHcm91cABDaG9vc2UgdGhlIFZNIHRoYXQgeW91IHdhbnQgdG8gZGVsZXRlLgBDaG9vc2UgdGhlIFZNIHRoYXQgeW91IHdhbnQgdG8gbWlncmF0ZS4AQ2hvb3NlIHRoZSBWTSB0aGF0IHlvdSB3YW50IHRvIHdvcmsgd2l0aC4AQ2hvb3NlIHRoZSB2aXJ0dWFsIG1hY2hpbmUgeW91IHdhbnQgdG8gd29yayB3aXRoLgBDbGljayBBZGQgSVNPLgBDbGljayBBZGQgSW5zdGFuY2UuAENsaWNrIEFkZCBhZmZpbml0eSBncm91cC4gSW4gdGhlIGRpYWxvZyBib3gsIGZpbGwgaW4gdGhlIGZvbGxvd2luZyBmaWVsZHM6AENsaWNrIEFwcGx5LgBDbGljayBEZWxldGUuAENsaWNrIEVkaXQuIHxFZGl0QnV0dG9uLnBuZ3wAQ2xpY2sgSW5zdGFuY2VzLCB0aGVuIGNsaWNrIHRoZSBuYW1lIG9mIGEgcnVubmluZyBWTS4AQ2xpY2sgSW5zdGFuY2VzLgBDbGljayBPSy4AQ2xpY2sgU3VibWl0IGFuZCB5b3VyIFZNIHdpbGwgYmUgY3JlYXRlZCBhbmQgc3RhcnRlZC4AQ2xpY2sgVmlldyBJbnN0YW5jZXMuIFRoZSBtZW1iZXJzIG9mIHRoZSBncm91cCBhcmUgbGlzdGVkLgBDbGljayBWaWV3IFZNIFNuYXBzaG90cy4AQ2xpY2sgdGhlIEF0dGFjaCBJU08gYnV0dG9uLiB8aXNvLnBuZ3wAQ2xpY2sgdGhlIENoYW5nZSBBZmZpbml0eSBidXR0b24uIHxjaGFuZ2UtYWZmaW5pdHktYnV0dG9uLnBuZ3wAQ2xpY2sgdGhlIENoYW5nZSBTZXJ2aWNlIGJ1dHRvbi4gfENoYW5nZVNlcnZpY2VCdXR0b24ucG5nfABDbGljayB0aGUgRGVzdHJveSBJbnN0YW5jZSBidXR0b24uIHxEZXN0cm95aW5zdGFuY2UucG5nfABDbGljayB0aGUgRHluYW1pY2FsbHkgU2NhbGFibGUgY2hlY2tib3guAENsaWNrIHRoZSBFZGl0IGJ1dHRvbi4AQ2xpY2sgdGhlIE1pZ3JhdGUgSW5zdGFuY2UgYnV0dG9uLiB8TWlncmF0ZWluc3RhbmNlLnBuZ3wAQ2xpY2sgdGhlIFN0b3AgYnV0dG9uIHRvIHN0b3AgdGhlIFZNLiB8U3RvcEJ1dHRvbi5wbmd8AENsaWNrIHRoZSBUYWtlIFZNIFNuYXBzaG90IGJ1dHRvbi4gfFZNU25hcHNob3RCdXR0b24ucG5nfABDbGljayB0aGUgVmlldyBDb25zb2xlIGJ1dHRvbiB8Y29uc29sZS1pY29uLnBuZ3wuAENsaWNrIHRoZSBuYW1lIG9mIHRoZSBWTSB5b3Ugd2FudCB0byBzbmFwc2hvdC4AQ2xpY2sgdGhlIG5hbWUgb2YgdGhlIFZNIHlvdSB3YW50IHRvIHdvcmsgd2l0aC4AQ2xpY2sgdGhlIG5hbWUgb2YgdGhlIGdyb3VwIHlvdSBhcmUgaW50ZXJlc3RlZCBpbi4AQ2xvdWRTdGFjayBhbHNvIHByb3ZpZGVzIGEgcGx1Z2dhYmxlIGludGVyZmFjZSBmb3IgYWRkaW5nIG5ldyBhbGxvY2F0b3JzLiBUaGVzZSBjdXN0b20gYWxsb2NhdG9ycyBjYW4gcHJvdmlkZSBhbnkgcG9saWN5IHRoZSBhZG1pbmlzdHJhdG9yIGRlc2lyZXMuAENsb3VkU3RhY2sgY2FuIGRlcGxveSBndWVzdCBWTXMgd2l0aCBHcmFwaGljcyBQcm9jZXNzaW5nIFVuaXQgKEdQVSkgb3IgVmlydHVhbCBHcmFwaGljcyBQcm9jZXNzaW5nIFVuaXQgKHZHUFUpIGNhcGFiaWxpdGllcyBvbiBYZW5TZXJ2ZXIgaG9zdHMuIEF0IHRoZSB0aW1lIG9mIFZNIGRlcGxveW1lbnQgb3IgYXQgYSBsYXRlciBzdGFnZSwgeW91IGNhbiBhc3NpZ24gYSBwaHlzaWNhbCBHUFUgKCBrbm93biBhcyBHUFUtcGFzc3Rocm91Z2gpIG9yIGEgcG9ydGlvbiBvZiBhIHBoeXNpY2FsIEdQVSBjYXJkICh2R1BVKSB0byBhIGd1ZXN0IFZNIGJ5IGNoYW5naW5nIHRoZSBTZXJ2aWNlIE9mZmVyaW5nLiBXaXRoIHRoaXMgY2FwYWJpbGl0eSwgdGhlIFZNcyBydW5uaW5nIG9uIENsb3VkU3RhY2sgbWVldCB0aGUgaW50ZW5zaXZlIGdyYXBoaWNhbCBwcm9jZXNzaW5nIHJlcXVpcmVtZW50IGJ5IG1lYW5zIG9mIHRoZSBoaWdoIGNvbXB1dGF0aW9uIHBvd2VyIG9mIEdQVS92R1BVLCBhbmQgQ2xvdWRTdGFjayB1c2VycyBjYW4gcnVuIG11bHRpbWVkaWEgcmljaCBhcHBsaWNhdGlvbnMsIHN1Y2ggYXMgQXV0by1DQUQsIHRoYXQgdGhleSBvdGhlcndpc2UgZW5qb3kgYXQgdGhlaXIgZGVzayBvbiBhIHZpcnR1YWxpemVkIGVudmlyb25tZW50LiBDbG91ZFN0YWNrIGxldmVyYWdlcyB0aGUgWGVuU2VydmVyIHN1cHBvcnQgZm9yIE5WSURJQSBHUklEIEtlcGxlciAxIGFuZCAyIHNlcmllcyB0byBydW4gR1BVL3ZHUFUgZW5hYmxlZCBWTXMuIE5WSURJQSBHUklEIGNhcmRzIGFsbG93cyBzaGFyaW5nIGEgc2luZ2xlIEdQVSBjYXJkcyBhbW9uZyBtdWx0aXBsZSBWTXMgYnkgY3JlYXRpbmcgdkdQVXMgZm9yIGVhY2ggVk0uIFdpdGggdkdQVSB0ZWNobm9sb2d5LCB0aGUgZ3JhcGhpY3MgY29tbWFuZHMgZnJvbSBlYWNoIFZNIGFyZSBwYXNzZWQgZGlyZWN0bHkgdG8gdGhlIHVuZGVybHlpbmcgZGVkaWNhdGVkIEdQVSwgd2l0aG91dCB0aGUgaW50ZXJ2ZW50aW9uIG9mIHRoZSBoeXBlcnZpc29yLiBUaGlzIGFsbG93cyB0aGUgR1BVIGhhcmR3YXJlIHRvIGJlIHRpbWUtc2xpY2VkIGFuZCBzaGFyZWQgYWNyb3NzIG11bHRpcGxlIFZNcy4gWGVuU2VydmVyIGhvc3RzIHVzZSB0aGUgR1BVIGNhcmRzIGluIGZvbGxvd2luZyB3YXlzOgBDbG91ZFN0YWNrIGNhbm5vdCBkaXN0aW5ndWlzaCBhIGd1ZXN0IFZNIHRoYXQgd2FzIHNodXQgZG93biBieSB0aGUgdXNlciAoc3VjaCBhcyB3aXRoIHRoZSDigJxzaHV0ZG93buKAnSBjb21tYW5kIGluIExpbnV4KSBmcm9tIGEgVk0gdGhhdCBzaHV0IGRvd24gdW5leHBlY3RlZGx5LiBJZiBhbiBIQS1lbmFibGVkIFZNIGlzIHNodXQgZG93biBmcm9tIGluc2lkZSB0aGUgVk0sIENsb3VkU3RhY2sgd2lsbCByZXN0YXJ0IGl0LiBUbyBzaHV0IGRvd24gYW4gSEEtZW5hYmxlZCBWTSwgeW91IG11c3QgZ28gdGhyb3VnaCB0aGUgQ2xvdWRTdGFjayBVSSBvciBBUEkuAENsb3VkU3RhY2sgZG9lcyBub3QgcmVzdHJpY3QgdGhlIGRlcGxveW1lbnQgb2YgR1BVLWVuYWJsZWQgVk1zIHdpdGggZ3Vlc3QgT1MgdHlwZXMgdGhhdCBhcmUgbm90IHN1cHBvcnRlZCBieSBYZW5TZXJ2ZXIgZm9yIEdQVS92R1BVIGZ1bmN0aW9uYWxpdHkuIFRoZSBkZXBsb3ltZW50IHdvdWxkIGJlIHN1Y2Nlc3NmdWwgYW5kIGEgR1BVL3ZHUFUgd2lsbCBhbHNvIGdldCBhbGxvY2F0ZWQgZm9yIFZNczsgaG93ZXZlciwgZHVlIHRvIG1pc3NpbmcgZ3Vlc3QgT1MgZHJpdmVycywgVk0gd291bGQgbm90IGJlIGFibGUgdG8gbGV2ZXJhZ2UgR1BVIHJlc291cmNlcy4gVGhlcmVmb3JlLCBpdCBpcyByZWNvbW1lbmRlZCB0byB1c2UgR1BVLWVuYWJsZWQgc2VydmljZSBvZmZlcmluZyBvbmx5IHdpdGggc3VwcG9ydGVkIGd1ZXN0IE9TLgBDbG91ZFN0YWNrIGZvbGxvd3MgdGhlIGJlbG93IHNlcXVlbmNlIG9mIG9wZXJhdGlvbnMgdG8gcHJvdmlkZSBHUFUvdkdQVSBzdXBwb3J0IGZvciBWTXM6AENsb3VkU3RhY2sgcHJlc2VydmVzIHRoZSBzdGF0ZSBvZiB0aGUgdmlydHVhbCBtYWNoaW5lIGhhcmQgZGlzayB1bnRpbCB0aGUgbWFjaGluZSBpcyBkZXN0cm95ZWQuAENsb3VkU3RhY2sgcHJvdmlkZXMgQVBJIGFjY2VzcyB0byBhdHRhY2ggdXAgdG8gMktCIG9mIGRhdGEgYWZ0ZXIgYmFzZTY0IGVuY29kaW5nIHRvIGEgZGVwbG95ZWQgVk0uIFVzaW5nIEhUVFAgUE9TVCh2aWEgUE9TVCBib2R5KSwgeW91IGNhbiBzZW5kIHVwIHRvIDMySyBvZiBkYXRhIGFmdGVyIGJhc2U2NCBlbmNvZGluZy4gRGVwbG95ZWQgVk1zIGFsc28gaGF2ZSBhY2Nlc3MgdG8gaW5zdGFuY2UgbWV0YWRhdGEgdmlhIHRoZSB2aXJ0dWFsIHJvdXRlci4AQ2xvdWRTdGFjayBwcm92aWRlcyBhZG1pbmlzdHJhdG9ycyB3aXRoIGNvbXBsZXRlIGNvbnRyb2wgb3ZlciB0aGUgbGlmZWN5Y2xlIG9mIGFsbCBndWVzdCBWTXMgZXhlY3V0aW5nIGluIHRoZSBjbG91ZC4gQ2xvdWRTdGFjayBwcm92aWRlcyBzZXZlcmFsIGd1ZXN0IG1hbmFnZW1lbnQgb3BlcmF0aW9ucyBmb3IgZW5kIHVzZXJzIGFuZCBhZG1pbmlzdHJhdG9ycy4gVk1zIG1heSBiZSBzdG9wcGVkLCBzdGFydGVkLCByZWJvb3RlZCwgYW5kIGRlc3Ryb3llZC4AQ2xvdWRTdGFjayBzZWFyY2hlcyBmb3IgaG9zdHMgYXZhaWxhYmxlIGZvciBWTSBtaWdyYXRpb24sIHdoaWNoIHNhdGlzZmllcyBHUFUgcmVxdWlyZW1lbnQuIElmIHRoZSBob3N0IGlzIGF2YWlsYWJsZSwgc3RvcCB0aGUgICAgIFZNIGluIHRoZSBjdXJyZW50IGhvc3QgYW5kIHBlcmZvcm0gdGhlIFZNIG1pZ3JhdGlvbiB0YXNrLiBJZiB0aGUgVk0gbWlncmF0aW9uIGlzIHN1Y2Nlc3NmdWwsIHRoZSByZW1haW5pbmcgR1BVIGNhcGFjaXR5IGlzICAgICB1cGRhdGVkIGZvciBib3RoIHRoZSBob3N0cyBhY2NvcmRpbmdseS4AQ2xvdWRTdGFjayBzdXBwb3J0cyBJU09zIGFuZCB0aGVpciBhdHRhY2htZW50IHRvIGd1ZXN0IFZNcy4gQW4gSVNPIGlzIGEgcmVhZC1vbmx5IGZpbGUgdGhhdCBoYXMgYW4gSVNPL0NELVJPTSBzdHlsZSBmaWxlIHN5c3RlbS4gVXNlcnMgY2FuIHVwbG9hZCB0aGVpciBvd24gSVNPcyBhbmQgbW91bnQgdGhlbSBvbiB0aGVpciBndWVzdCBWTXMuAENsb3VkU3RhY2sgd2lsbCBub3QgY2hlY2sgdG8gYmUgc3VyZSB0aGF0IHRoZSBuZXcgQ1BVIGFuZCBSQU0gbGV2ZWxzIGFyZSBjb21wYXRpYmxlIHdpdGggdGhlIE9TIHJ1bm5pbmcgb24gdGhlIFZNLgBDb25maWd1cmF0aW9uIFNldHRpbmcgTmFtZQBDb25maWd1cmluZyBEeW5hbWljIENQVSBhbmQgUkFNIFNjYWxpbmcAQ29uZmlndXJpbmcgVk0gU25hcHNob3RzAENvbnRpbnVlIHdpdGggYW55IG9mIHRoZSBmb2xsb3dpbmcgb3BlcmF0aW9uczoAQ29weSB0aGUgZmlsZSB0byAvZXRjL2luaXQuZC4AQ29weSB0aGUga2V5IGRhdGEgaW50byBhIGZpbGUuIFRoZSBmaWxlIGxvb2tzIGxpa2UgdGhpczoAQ3JlYXRlIGEgY29tcHV0ZSBvZmZlcmluZyB3aXRoIEdQVS92R1BVIHN1cHBvcnQ6IEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgYENyZWF0aW5nIGEgTmV3IENvbXB1dGUgT2ZmZXJpbmcgPCNjcmVhdGluZy1hLW5ldy1jb21wdXRlLW9mZmVyaW5nPmBfXy4uAENyZWF0ZSBhIG5ldyBpbnN0YW5jZSBieSB1c2luZyB0aGUgdGVtcGxhdGUgcHJvdmlkZWQgYnkgY2xvdWRzdGFjay4AQ3JlYXRlIGFuIGluc3RhbmNlIHRlbXBsYXRlIHRoYXQgc3VwcG9ydHMgU1NIIEtleXMuAENyZWF0ZSBkYXRhc291cmNlIGNvbmZpZ3VyYXRpb24gZmlsZTogYGAvZXRjL2Nsb3VkL2Nsb3VkLmNmZy5kLzk5X2Nsb3Vkc3RhY2suY2ZnYGAAQ3JlYXRlIGVhY2ggVk0gZnJvbSBhIHRlbXBsYXRlIHRoYXQgYWxyZWFkeSBoYXMgdGhlIHRvb2xzIGluc3RhbGxlZDsgb3IsAENyZWF0ZSB0aGUgVk0gYXMgdXN1YWwsIGFzIGRlc2NyaWJlZCBpbiBg4oCcQ3JlYXRpbmcgVk1z4oCdIDx2aXJ0dWFsX21hY2hpbmVzLmh0bWwjY3JlYXRpbmctdm1zPmBfLiBJbiB0aGUgQWRkIEluc3RhbmNlIHdpemFyZCwgdGhlcmUgaXMgYSBuZXcgQWZmaW5pdHkgdGFiIHdoZXJlIHlvdSBjYW4gc2VsZWN0IHRoZSBhZmZpbml0eSBncm91cC4AQ3JlYXRlIHZpcnR1YWwgbWFjaGluZSB0aHJ1IHRoZSBBUEk6IGBkZXBsb3lWaXJ0dWFsTWFjaGluZSA8aHR0cDovL2Nsb3Vkc3RhY2suYXBhY2hlLm9yZy9kb2NzL2FwaS9hcGlkb2NzLTQuNS91c2VyL2RlcGxveVZpcnR1YWxNYWNoaW5lLmh0bWw+YF8gdXNpbmcgdGhlIHBhcmFtZXRlciBgYHVzZXJkYXRhPWBgIHRvIGluY2x1ZGUgdXNlci1kYXRhIGZvcm1hdGVkIGluIGBiYXNlNjQgPGh0dHBzOi8vd3d3LmJhc2U2NGVuY29kZS5vcmcvPmBfLgBDcmVhdGluZyBWTXMAQ3JlYXRpbmcgYSBDb21wdXRlIE9mZmVyaW5nIHdpdGggR1BVL3ZHUFUgY2FwYWJpbGl0eS4AQ3JlYXRpbmcgYSBOZXcgQWZmaW5pdHkgR3JvdXAAQ3JlYXRpbmcgYW4gSW5zdGFuY2UAQ3JlYXRpbmcgYW4gSW5zdGFuY2UgVGVtcGxhdGUgdGhhdCBTdXBwb3J0cyBTU0ggS2V5cwBDcmVhdGluZyB0aGUgU1NIIEtleXBhaXIARGViaWFuIEdOVS9MaW51eABEZWxldGUgYW4gQWZmaW5pdHkgR3JvdXAARGVsZXRpbmcgVk1zAERlcGVuZGluZyBvbiB3aGF0IHlvdSB3YW50IHRvIGRvOgBEZXBsb3kgYSBWTSB3aXRoIEdQVS92R1BVIHN1cHBvcnQgYnkgc2VsZWN0aW5nIGFwcHJvcHJpYXRlIFNlcnZpY2UgT2ZmZXJpbmcuIENsb3VkU3RhY2sgZGVjaWRlIHdoaWNoIGhvc3QgdG8gY2hvb3NlIGZvciBWTSBkZXBsb3ltZW50IGJhc2VkIG9uIGZvbGxvd2luZyBjcml0ZXJpYToARGVwbG95IGEgVk0uAERlcGxveWluZyBWTXMgR1BVL3ZHUFUgY2FwYWJpbGl0eSBpcyBub3Qgc3VwcG9ydGVkIGlmIGhvc3RzIGFyZSBub3QgYXZhaWxhYmxlIHdpdGggZW5vdWdoIEdQVSBjYXBhY2l0eS4ARGVwbG95aW5nIGEgVk0gd2l0aCBHUFUvdkdQVSBjYXBhYmlsaXR5LgBEZXNjcmlwdGlvbgBEZXNjcmlwdGlvbi4gQW55IGRlc2lyZWQgdGV4dCB0byB0ZWxsIG1vcmUgYWJvdXQgdGhlIHB1cnBvc2Ugb2YgdGhlIGdyb3VwLgBEZXN0cm95IGEgVk0uAERlc3Ryb3lpbmcgYSBWTSB3aXRoIEdQVS92R1BVIGNhcGFiaWxpdHkuAERldmljZQBEaXNhYmxpbmcgR1BVIGF0IENsdXN0ZXIgbGV2ZWwgaXMgbm90IHN1cHBvcnRlZC4ARGlzcGxheSBuYW1lAERpc3BsYXkgbmFtZSDigJMgdGhlIG5hbWUgZGlzcGxheWVkIGluIHRoZSBDbG91ZFN0YWNrIHdlYiBVSS4gQ2FuIGJlIHNldCBieSB0aGUgdXNlci4gRGVmYXVsdHMgdG8gaW5zdGFuY2UgbmFtZS4ARG93bmxvYWQgdGhlIGNsb3Vkc3RhY2sgc2NyaXB0IGZyb20gYFRoZSBTU0ggS2V5IEdlbiBTY3JpcHQgPGh0dHA6Ly9zb3VyY2Vmb3JnZS5uZXQvcHJvamVjdHMvY2xvdWRzdGFjay9maWxlcy9TU0glMjBLZXklMjBHZW4lMjBTY3JpcHQvPmBfIHRvIHRoZSBpbnN0YW5jZSB5b3UgaGF2ZSBjcmVhdGVkLgBEeW5hbWljIENQVSBhbmQgUkFNIHNjYWxpbmcgY2FuIGJlIHVzZWQgaW4gdGhlIGZvbGxvd2luZyBjYXNlczoARHluYW1pYyBzY2FsaW5nIGlzIG5vdCBzdXBwb3J0ZWQuIEhvd2V2ZXIsIHlvdSBjYW4gY2hvb3NlIHRvIGRlcGxveSBhIFZNIHdpdGhvdXQgR1BVIHN1cHBvcnQsIGFuZCBhdCBhIGxhdGVyIHBvaW50LCB5b3UgY2FuIGNoYW5nZSB0aGUgc3lzdGVtIG9mZmVyaW5nIHRvIHVwZ3JhZGUgdG8gdGhlIG9uZSB3aXRoIHZHUFUuIFlvdSBjYW4gYWNoaWV2ZSB0aGlzIGJ5IG9mZmxpbmUgdXBncmFkZTogc3RvcCB0aGUgVk0sIHVwZ3JhZGUgdGhlIFNlcnZpY2UgT2ZmZXJpbmcgdG8gdGhlIG9uZSB3aXRoIHZHUFUsIHRoZW4gc3RhcnQgdGhlIFZNLgBFYWNoIG5ldyBWTSBpcyBhbGxvY2F0ZWQgb25lIHB1YmxpYyBJUCBhZGRyZXNzLiBXaGVuIHRoZSBWTSBpcyBzdGFydGVkLCBDbG91ZFN0YWNrIGF1dG9tYXRpY2FsbHkgY3JlYXRlcyBhIHN0YXRpYyBOQVQgYmV0d2VlbiB0aGlzIHB1YmxpYyBJUCBhZGRyZXNzIGFuZCB0aGUgcHJpdmF0ZSBJUCBhZGRyZXNzIG9mIHRoZSBWTS4ARW5kIHVzZXIgcHJlZmVyZW5jZXMuIFVzZXJzIGNhbiBub3QgY29udHJvbCBleGFjdGx5IHdoaWNoIGhvc3Qgd2lsbCBydW4gYSBnaXZlbiBWTSBpbnN0YW5jZSwgYnV0IHRoZXkgY2FuIHNwZWNpZnkgYSB6b25lIGZvciB0aGUgVk0uIENsb3VkU3RhY2sgaXMgdGhlbiByZXN0cmljdGVkIHRvIGFsbG9jYXRpbmcgdGhlIFZNIG9ubHkgdG8gb25lIG9mIHRoZSBob3N0cyBpbiB0aGF0IHpvbmUuAEVuc3VyZSB0aGF0IFhlblNlcnZlciBob3N0IGlzIHJlYWR5IHdpdGggR1BVIGluc3RhbGxlZCBhbmQgY29uZmlndXJlZC4gRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSBgQ2l0cml4IDNEIEdyYXBoaWNzIFBhY2sgPGh0dHBzOi8vd3d3LmNpdHJpeC5jb20vZ28vcHJpdmF0ZS92Z3B1Lmh0bWw+YF8uAEVuc3VyZSB0aGF0IHlvdSBhZGp1c3QgdGhlc2UgdmFsdWVzIHRvIG1lZXQgeW91ciBuZWVkcy4gSWYgeW91IGFyZSBtYWtpbmcgdGhlIEFQSSBjYWxsIGZyb20gYSBkaWZmZXJlbnQgc2VydmVyLCB5b3VyIFVSTC9QT1JUIHdpbGwgYmUgZGlmZmVyZW50LCBhbmQgeW91IHdpbGwgbmVlZCB0byB1c2UgdGhlIEFQSSBrZXlzLgBFdmVyeSBWTSBpcyBjcmVhdGVkIGZyb20gYSBiYXNlIGltYWdlLCB3aGljaCBpcyBhIHRlbXBsYXRlIG9yIElTTyB3aGljaCBoYXMgYmVlbiBjcmVhdGVkIGFuZCBzdG9yZWQgaW4gQ2xvdWRTdGFjay4gQm90aCBjbG91ZCBhZG1pbmlzdHJhdG9ycyBhbmQgZW5kIHVzZXJzIGNhbiBjcmVhdGUgYW5kIG1vZGlmeSB0ZW1wbGF0ZXMsIElTT3MsIGFuZCBWTXMuAEV2ZXJ5IGd1ZXN0IFZNIGhhcyBhbiBpbnRlcm5hbCBuYW1lLiBUaGUgaG9zdCB1c2VzIHRoZSBpbnRlcm5hbCBuYW1lIHRvIGlkZW50aWZ5IHRoZSBndWVzdCBWTXMuIENsb3VkU3RhY2sgZ2l2ZXMgeW91IGFuIG9wdGlvbiB0byBwcm92aWRlIGEgZ3Vlc3QgVk0gd2l0aCBhIGRpc3BsYXkgbmFtZS4gWW91IGNhbiBzZXQgdGhpcyBkaXNwbGF5IG5hbWUgYXMgdGhlIGludGVybmFsIG5hbWUgc28gdGhhdCB0aGUgdkNlbnRlciBjYW4gdXNlIGl0IHRvIGlkZW50aWZ5IHRoZSBndWVzdCBWTS4gQSBuZXcgZ2xvYmFsIHBhcmFtZXRlciwgdm0uaW5zdGFuY2VuYW1lLmZsYWcsIGhhcyBub3cgYmVlbiBhZGRlZCB0byBhY2hpZXZlIHRoaXMgZnVuY3Rpb25hbGl0eS4ARmFsc2UARmVkb3JhIDEwAEZlZG9yYSAxMQBGZWRvcmEgMTIARmVkb3JhIDEzAEZlZG9yYSA5AEZvciBWTXMgdG8gd29yayBhcyBleHBlY3RlZCBhbmQgcHJvdmlkZSBleGNlbGxlbnQgc2VydmljZSwgZm9sbG93IHRoZXNlIGd1aWRlbGluZXMuAEZvciBYZW5TZXJ2ZXIsIGluc3RhbGwgUFYgZHJpdmVycyBhbmQgWGVuIHRvb2xzIG9uIGVhY2ggVk0uIFRoaXMgd2lsbCBlbmFibGUgbGl2ZSBtaWdyYXRpb24gYW5kIGNsZWFuIGd1ZXN0IHNodXRkb3duLiBYZW4gdG9vbHMgYXJlIHJlcXVpcmVkIGluIG9yZGVyIGZvciBkeW5hbWljIENQVSBhbmQgUkFNIHNjYWxpbmcgdG8gd29yay4ARm9yIGV4YW1wbGUsIGZyb20gYSBMaW51eCBPUywgcnVuOgBGb3IgZXhhbXBsZSwgbWFrZSBhIGNhbGwgZnJvbSB0aGUgY2xvdWRzdGFjayBzZXJ2ZXIgdG8gY3JlYXRlIGEgU1NIIGtleXBhaXIgY2FsbGVkICJrZXlwYWlyLWRvYyIgZm9yIHRoZSBhZG1pbiBhY2NvdW50IGluIHRoZSByb290IGRvbWFpbjoARm9yIGV4YW1wbGUsIHN1cHBvc2UgdGhlcmUgaXMgYSB0ZW1wbGF0ZSBiYXNlZCBvbiBhIHBhcnRpY3VsYXIgb3BlcmF0aW5nIHN5c3RlbSwgYW5kIHRoZSBPUyB2ZW5kb3IgcmVsZWFzZXMgYSBzb2Z0d2FyZSBwYXRjaC4gVGhlIGFkbWluaXN0cmF0b3Igb3IgdXNlciBuYXR1cmFsbHkgd2FudHMgdG8gYXBwbHkgdGhlIHBhdGNoIGFuZCB0aGVuIG1ha2Ugc3VyZSBleGlzdGluZyBWTXMgc3RhcnQgdXNpbmcgaXQuIFdoZXRoZXIgYSBzb2Z0d2FyZSB1cGRhdGUgaXMgaW52b2x2ZWQgb3Igbm90LCBpdCdzIGFsc28gcG9zc2libGUgdG8gc2ltcGx5IHN3aXRjaCBhIFZNIGZyb20gaXRzIGN1cnJlbnQgdGVtcGxhdGUgdG8gYW55IG90aGVyIGRlc2lyZWQgdGVtcGxhdGUuAEZvciBtb3JlIGluZm9ybWF0aW9uIG9uIGNyZWF0aW5nIGEgbmV3IGluc3RhbmNlLCBzZWUARm9yIHNlY3VyZSBlbnZpcm9ubWVudHMsIGFuZCB0byBlbnN1cmUgdGhhdCBWTSBzdGF0ZSBpcyBub3QgcGVyc2lzdGVkIGFjcm9zcyByZWJvb3RzLCB5b3UgY2FuIHJlc2V0IHRoZSByb290IGRpc2suIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgYOKAnFJlc2V0IFZNIHRvIE5ldyBSb290IERpc2sgb24gUmVib2904oCdIDxzdG9yYWdlLmh0bWwjcmVzZXQtdm0tdG8tbmV3LXJvb3QtZGlzay1vbi1yZWJvb3Q+YF8uAEZvciBzZWN1cml0eSByZWFzb24sIHRoZSBpbnRlcm5hbCBuYW1lIG9mIHRoZSBWTSBpcyB2aXNpYmxlIG9ubHkgdG8gdGhlIHJvb3QgYWRtaW4uAEZvciB2U3BoZXJlLCBpbnN0YWxsIFZNd2FyZSBUb29scyBvbiBlYWNoIFZNLiBUaGlzIHdpbGwgZW5hYmxlIGNvbnNvbGUgdmlldyB0byB3b3JrIHByb3Blcmx5LiBWTXdhcmUgVG9vbHMgYXJlIHJlcXVpcmVkIGluIG9yZGVyIGZvciBkeW5hbWljIENQVSBhbmQgUkFNIHNjYWxpbmcgdG8gd29yay4ARnJvbSBoZXJlLCB5b3UgY2FuIGNsaWNrIHRoZSBuYW1lIG9mIGFueSBWTSBpbiB0aGUgbGlzdCB0byBhY2Nlc3MgYWxsIGl0cyBkZXRhaWxzIGFuZCBjb250cm9scy4ARnJvbSB0aGUgbGlzdCBvZiBzdWl0YWJsZSBob3N0cywgY2hvb3NlIHRoZSBvbmUgdG8gd2hpY2ggeW91IHdhbnQgdG8gbW92ZSB0aGUgVk0uAEdQVQBHUFUgcmVzb3VyY2VzIGFyZSByZWxlYXNlZCBhdXRvbWF0aWNhbGx5IHdoZW4geW91IHN0b3AgYSBWTS4gT25jZSB0aGUgZGVzdHJveSBWTSBpcyBzdWNjZXNzZnVsLCBDbG91ZFN0YWNrIHdpbGwgbWFrZSBhIHJlc291cmNlIGNhbGwgdG8gdGhlIGhvc3QgdG8gZ2V0IHRoZSByZW1haW5pbmcgR1BVIGNhcGFjaXR5IGluIHRoZSBjYXJkIGFuZCB1cGRhdGUgdGhlIGRhdGFiYXNlIGFjY29yZGluZ2x5LgBHUFUvdkdQVSBBc3NpZ25tZW50IFdvcmtmbG93AEdQVS92UEdVIGZ1bmN0aW9uYWxpdHkgaXMgc3VwcG9ydGVkIGZvciBmb2xsb3dpbmcgSFZNIGd1ZXN0IG9wZXJhdGluZyBzeXN0ZW1zOiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIGBDaXRyaXggM0QgR3JhcGhpY3MgUGFjayA8aHR0cHM6Ly93d3cuY2l0cml4LmNvbS9nby9wcml2YXRlL3ZncHUuaHRtbD5gXy4AR1JJRCBLMTAwAEdSSUQgSzEyMFEAR1JJRCBLMTQwUQBHUklEIEsyMDAAR1JJRCBLMjIwUQBHUklEIEsyNDBRAEdSSUQgSzI2MFEAR2l2ZSB0aGUgbmVjZXNzYXJ5IHBlcm1pc3Npb25zIG9uIHRoZSBzY3JpcHQ6AEdyb3VwIG9mIE5WSURJQSBDb3Jwb3JhdGlvbiBHSzEwNEdMIFtHUklEIEsyXSBHUFVzAEdyb3VwIG9mIE5WSURJQSBDb3Jwb3JhdGlvbiBHSzEwN0dMIFtHUklEIEsxXSBHUFVzAEd1ZXN0IFZNcyBjYW4gYmUgY29uZmlndXJlZCB0byBiZSBIaWdobHkgQXZhaWxhYmxlIChIQSkuIEFuIEhBLWVuYWJsZWQgVk0gaXMgbW9uaXRvcmVkIGJ5IHRoZSBzeXN0ZW0uIElmIHRoZSBzeXN0ZW0gZGV0ZWN0cyB0aGF0IHRoZSBWTSBpcyBkb3duLCBpdCB3aWxsIGF0dGVtcHQgdG8gcmVzdGFydCB0aGUgVk0sIHBvc3NpYmx5IG9uIGEgZGlmZmVyZW50IGhvc3QuIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgSEEtRW5hYmxlZCBWaXJ0dWFsIE1hY2hpbmVzIG9uAEd1ZXN0IFZNcyBoYXZlIGEgbmFtZSBhbmQgZ3JvdXAuIFZNIG5hbWVzIGFuZCBncm91cHMgYXJlIG9wYXF1ZSB0byBDbG91ZFN0YWNrIGFuZCBhcmUgYXZhaWxhYmxlIGZvciBlbmQgdXNlcnMgdG8gb3JnYW5pemUgdGhlaXIgVk1zLiBFYWNoIFZNIGNhbiBoYXZlIHRocmVlIG5hbWVzIGZvciB1c2UgaW4gZGlmZmVyZW50IGNvbnRleHRzLiBPbmx5IHR3byBvZiB0aGVzZSBuYW1lcyBjYW4gYmUgY29udHJvbGxlZCBieSB0aGUgdXNlcjoASG9zdCBoYXMgR1BVIGNhcmRzIGluIGl0LiBJbiBjYXNlIG9mIHZHUFUsIENsb3VkU3RhY2sgY2hlY2tzIGlmIGNhcmRzIGhhdmUgdGhlIHJlcXVpcmVkIHZHUFUgdHlwZSBzdXBwb3J0IGFuZCBlbm91Z2ggY2FwYWNpdHkgYXZhaWxhYmxlLiBIYXZpbmcgbm8gYXBwcm9wcmlhdGUgaG9zdHMgcmVzdWx0cyBpbiBhbiBJbnN1ZmZpY2llbnRTZXJ2ZXJDYXBhY2l0eSBleGNlcHRpb24uAEhvc3QgdGFncy4gVGhlIGFkbWluaXN0cmF0b3IgY2FuIGFzc2lnbiB0YWdzIHRvIGhvc3RzLiBUaGVzZSB0YWdzIGNhbiBiZSB1c2VkIHRvIHNwZWNpZnkgd2hpY2ggaG9zdCBhIFZNIHNob3VsZCB1c2UuIFRoZSBDbG91ZFN0YWNrIGFkbWluaXN0cmF0b3IgZGVjaWRlcyB3aGV0aGVyIHRvIGRlZmluZSBob3N0IHRhZ3MsIHRoZW4gY3JlYXRlIGEgc2VydmljZSBvZmZlcmluZyB1c2luZyB0aG9zZSB0YWdzIGFuZCBvZmZlciBpdCB0byB0aGUgdXNlci4ASG9zdG5hbWUgb24gdGhlIFZNAEhvdyB0byBEeW5hbWljYWxseSBTY2FsZSBDUFUgYW5kIFJBTQBJU08gaW1hZ2VzIG1heSBiZSBzdG9yZWQgaW4gdGhlIHN5c3RlbSBhbmQgbWFkZSBhdmFpbGFibGUgd2l0aCBhIHByaXZhY3kgbGV2ZWwgc2ltaWxhciB0byB0ZW1wbGF0ZXMuIElTTyBpbWFnZXMgYXJlIGNsYXNzaWZpZWQgYXMgZWl0aGVyIGJvb3RhYmxlIG9yIG5vdCBib290YWJsZS4gQSBib290YWJsZSBJU08gaW1hZ2UgaXMgb25lIHRoYXQgY29udGFpbnMgYW4gT1MgaW1hZ2UuIENsb3VkU3RhY2sgYWxsb3dzIGEgdXNlciB0byBib290IGEgZ3Vlc3QgVk0gb2ZmIG9mIGFuIElTTyBpbWFnZS4gVXNlcnMgY2FuIGFsc28gYXR0YWNoIElTTyBpbWFnZXMgdG8gZ3Vlc3QgVk1zLiBGb3IgZXhhbXBsZSwgdGhpcyBlbmFibGVzIGluc3RhbGxpbmcgUFYgZHJpdmVycyBpbnRvIFdpbmRvd3MuIElTTyBpbWFnZXMgYXJlIG5vdCBoeXBlcnZpc29yLXNwZWNpZmljLgBJU09zIGFyZSB1cGxvYWRlZCBiYXNlZCBvbiBhIFVSTC4gSFRUUCBpcyB0aGUgc3VwcG9ydGVkIHByb3RvY29sLiBPbmNlIHRoZSBJU08gaXMgYXZhaWxhYmxlIHZpYSBIVFRQIHNwZWNpZnkgYW4gdXBsb2FkIFVSTCBzdWNoIGFzIGh0dHA6Ly9teS53ZWIuc2VydmVyL2ZpbGVuYW1lLmlzby4ASVNPcyBtYXkgYmUgcHVibGljIG9yIHByaXZhdGUsIGxpa2UgdGVtcGxhdGVzLklTT3MgYXJlIG5vdCBoeXBlcnZpc29yLXNwZWNpZmljLiBUaGF0IGlzLCBhIGd1ZXN0IG9uIHZTcGhlcmUgY2FuIG1vdW50IHRoZSBleGFjdCBzYW1lIGltYWdlIHRoYXQgYSBndWVzdCBvbiBLVk0gY2FuIG1vdW50LgBJZiBhIFZNIGhhcyBzb21lIHN0b3JlZCBzbmFwc2hvdHMsIHlvdSBjYW4ndCBhdHRhY2ggbmV3IHZvbHVtZSB0byB0aGUgVk0gb3IgZGVsZXRlIGFueSBleGlzdGluZyB2b2x1bWVzLiBJZiB5b3UgY2hhbmdlIHRoZSB2b2x1bWVzIG9uIHRoZSBWTSwgaXQgd291bGQgYmVjb21lIGltcG9zc2libGUgdG8gcmVzdG9yZSB0aGUgVk0gc25hcHNob3Qgd2hpY2ggd2FzIGNyZWF0ZWQgd2l0aCB0aGUgcHJldmlvdXMgdm9sdW1lIHN0cnVjdHVyZS4gSWYgeW91IHdhbnQgdG8gYXR0YWNoIGEgdm9sdW1lIHRvIHN1Y2ggYSBWTSwgZmlyc3QgZGVsZXRlIGl0cyBzbmFwc2hvdHMuAElmIGEgcG9ydCBpcyBvcGVuIGJ1dCB5b3UgY2FuIG5vdCBhY2Nlc3MgdGhlIFZNIHVzaW5nIHNzaCwgaXTigJlzIHBvc3NpYmxlIHRoYXQgc3NoIGlzIG5vdCBhbHJlYWR5IGVuYWJsZWQgb24gdGhlIFZNLiBUaGlzIHdpbGwgZGVwZW5kIG9uIHdoZXRoZXIgc3NoIGlzIGVuYWJsZWQgaW4gdGhlIHRlbXBsYXRlIHlvdSBwaWNrZWQgd2hlbiBjcmVhdGluZyB0aGUgVk0uIEFjY2VzcyB0aGUgVk0gdGhyb3VnaCB0aGUgQ2xvdWRTdGFjayBVSSBhbmQgZW5hYmxlIHNzaCBvbiB0aGUgbWFjaGluZSB1c2luZyB0aGUgY29tbWFuZHMgZm9yIHRoZSBWTeKAmXMgb3BlcmF0aW5nIHN5c3RlbS4ASWYgYSBzbmFwc2hvdCBpcyBhbHJlYWR5IGluIHByb2dyZXNzLCB0aGVuIGNsaWNraW5nIHRoaXMgYnV0dG9uIHdpbGwgaGF2ZSBubyBlZmZlY3QuAElmIGEgdXNlciBkZXBsb3lzIGEgdmlydHVhbCBtYWNoaW5lIHdpdGggYSB0ZW1wbGF0ZSB0aGF0IGRvZXMgbm90IGhhdmUgWGVuIHRvb2xzIG9yIFZNd2FyZSBUb29scywgYW5kIGxhdGVyIGluc3RhbGxzIHRoZSB0b29scyBvbiB0aGUgVk0sIHRoZW4gdGhlIHVzZXIgY2FuIGluZm9ybSBDbG91ZFN0YWNrIHVzaW5nIHRoZSB1cGRhdGVWaXJ0dWFsTWFjaGluZSBBUEkuIEFmdGVyIGluc3RhbGxpbmcgdGhlIHRvb2xzIGFuZCB1cGRhdGluZyB0aGUgdmlydHVhbCBtYWNoaW5lLCBzdG9wIGFuZCBzdGFydCB0aGUgVk0uAElmIGVsYXN0aWMgSVAgaXMgaW4gdXNlICh3aXRoIHRoZSBOZXRTY2FsZXIgbG9hZCBiYWxhbmNlciksIHRoZSBJUCBhZGRyZXNzIGluaXRpYWxseSBhbGxvY2F0ZWQgdG8gdGhlIG5ldyBWTSBpcyBub3QgbWFya2VkIGFzIGVsYXN0aWMuIFRoZSB1c2VyIG11c3QgcmVwbGFjZSB0aGUgYXV0b21hdGljYWxseSBjb25maWd1cmVkIElQIHdpdGggYSBzcGVjaWZpY2FsbHkgYWNxdWlyZWQgZWxhc3RpYyBJUCwgYW5kIHNldCB1cCB0aGUgc3RhdGljIE5BVCBtYXBwaW5nIGJldHdlZW4gdGhpcyBuZXcgSVAgYW5kIHRoZSBndWVzdCBWTeKAmXMgcHJpdmF0ZSBJUC4gVGhlIFZN4oCZcyBvcmlnaW5hbCBJUCBhZGRyZXNzIGlzIHRoZW4gcmVsZWFzZWQgYW5kIHJldHVybmVkIHRvIHRoZSBwb29sIG9mIGF2YWlsYWJsZSBwdWJsaWMgSVBzLiBPcHRpb25hbGx5LCB5b3UgY2FuIGFsc28gZGVjaWRlIG5vdCB0byBhbGxvY2F0ZSBhIHB1YmxpYyBJUCB0byBhIFZNIGluIGFuIEVJUC1lbmFibGVkIEJhc2ljIHpvbmUuIEZvciBtb3JlIGluZm9ybWF0aW9uIG9uIEVsYXN0aWMgSVAsIHNlZSBg4oCcQWJvdXQgRWxhc3RpYyBJUOKAnSA8bmV0d29ya2luZzIuaHRtbCNhYm91dC1lbGFzdGljLWlwPmBfLgBJZiB0aGUgT1MgVHlwZSBvZiB0aGUgSVNPIGlzIG5vdCBsaXN0ZWQgb3IgaWYgdGhlIElTTyBpcyBub3QgYm9vdGFibGUsIGNob29zZSBPdGhlci4ASWYgdGhlIFZNJ3Mgc3RvcmFnZSBoYXMgdG8gYmUgbWlncmF0ZWQgYWxvbmcgd2l0aCB0aGUgVk0sIHRoaXMgd2lsbCBiZSBub3RlZCBpbiB0aGUgaG9zdCBsaXN0LiBDbG91ZFN0YWNrIHdpbGwgdGFrZSBjYXJlIG9mIHRoZSBzdG9yYWdlIG1pZ3JhdGlvbiBmb3IgeW91LgBJZiB0aGUgbmV0d29yayBoYXMgYW4gZXh0ZXJuYWwgZmlyZXdhbGwgZGV2aWNlLCB5b3Ugd2lsbCBuZWVkIHRvIGNyZWF0ZSBhIGZpcmV3YWxsIHJ1bGUgdG8gYWxsb3cgYWNjZXNzLiBTZWUgYOKAnElQIEZvcndhcmRpbmcgYW5kIEZpcmV3YWxsaW5n4oCdIDxuZXR3b3JraW5nMi5odG1sI2lwLWZvcndhcmRpbmctYW5kLWZpcmV3YWxsaW5nPmBfLgBJZiB0aGUgb3BlcmF0aW5nIHN5c3RlbSBvZiB5b3VyIGRlc2lyZWQgSVNPIGltYWdlIGlzIGxpc3RlZCwgY2hvb3NlIGl0LgBJZiB5b3UgYXJlIHVwZ3JhZGluZyBmcm9tIGEgcHJldmlvdXMgdmVyc2lvbiBvZiBDbG91ZFN0YWNrLCBhbmQgeW91IHdhbnQgeW91ciBleGlzdGluZyBWTXMgY3JlYXRlZCB3aXRoIHByZXZpb3VzIHZlcnNpb25zIHRvIGhhdmUgdGhlIGR5bmFtaWMgc2NhbGluZyBjYXBhYmlsaXR5LCB1cGRhdGUgdGhlIFZNcyB1c2luZyB0aGUgZm9sbG93aW5nIHN0ZXBzOgBJZiB5b3UgbmVlZCBtb3JlIGluZm9ybWF0aW9uIGFib3V0IFZNIHNuYXBzaG90cyBvbiBWTXdhcmUsIGNoZWNrIG91dCB0aGUgVk13YXJlIGRvY3VtZW50YXRpb24gYW5kIHRoZSBWTXdhcmUgS25vd2xlZGdlIEJhc2UsIGVzcGVjaWFsbHkgYFVuZGVyc3RhbmRpbmcgdmlydHVhbCBtYWNoaW5lIHNuYXBzaG90cyA8aHR0cDovL2tiLnZtd2FyZS5jb20vc2VsZnNlcnZpY2UvbWljcm9zaXRlcy9zZWFyY2guZG8/Y21kPWRpc3BsYXlLQyZleHRlcm5hbElkPTEwMTUxODA+YF8uAEluIENsb3VkU3RhY2ssIHlvdSBjYW4gY2hhbmdlIGFuIGV4aXN0aW5nIFZNJ3MgYmFzZSBpbWFnZSBmcm9tIG9uZSB0ZW1wbGF0ZSB0byBhbm90aGVyLCBvciBmcm9tIG9uZSBJU08gdG8gYW5vdGhlci4gKFlvdSBjYW4gbm90IGNoYW5nZSBmcm9tIGFuIElTTyB0byBhIHRlbXBsYXRlLCBvciBmcm9tIGEgdGVtcGxhdGUgdG8gYW4gSVNPKS4ASW4gU2VsZWN0IFZpZXcsIGNob29zZSBJU09zLgBJbiBhZGRpdGlvbiB0byB0aGUgZXhpc3RpbmcgQ2xvdWRTdGFjayBhYmlsaXR5IHRvIHNuYXBzaG90IGluZGl2aWR1YWwgVk0gdm9sdW1lcywgeW91IGNhbiB0YWtlIGEgVk0gc25hcHNob3QgdG8gcHJlc2VydmUgYWxsIHRoZSBWTSdzIGRhdGEgdm9sdW1lcyBhcyB3ZWxsIGFzIChvcHRpb25hbGx5KSBpdHMgQ1BVL21lbW9yeSBzdGF0ZS4gVGhpcyBpcyB1c2VmdWwgZm9yIHF1aWNrIHJlc3RvcmUgb2YgYSBWTS4gRm9yIGV4YW1wbGUsIHlvdSBjYW4gc25hcHNob3QgYSBWTSwgdGhlbiBtYWtlIGNoYW5nZXMgc3VjaCBhcyBzb2Z0d2FyZSB1cGdyYWRlcy4gSWYgYW55dGhpbmcgZ29lcyB3cm9uZywgc2ltcGx5IHJlc3RvcmUgdGhlIFZNIHRvIGl0cyBwcmV2aW91cyBzdGF0ZSB1c2luZyB0aGUgcHJldmlvdXNseSBzYXZlZCBWTSBzbmFwc2hvdC4ASW4gYWRkaXRpb24gdG8gdGhlIHVzZXJuYW1lIGFuZCBwYXNzd29yZCBhdXRoZW50aWNhdGlvbiwgQ2xvdWRTdGFjayBzdXBwb3J0cyB1c2luZyBTU0gga2V5cyB0byBsb2cgaW4gdG8gdGhlIGNsb3VkIGluZnJhc3RydWN0dXJlIGZvciBhZGRpdGlvbmFsIHNlY3VyaXR5LiBZb3UgY2FuIHVzZSB0aGUgY3JlYXRlU1NIS2V5UGFpciBBUEkgdG8gZ2VuZXJhdGUgdGhlIFNTSCBrZXlzLgBJbiB0aGUgQWRkIElTTyBzY3JlZW4sIHByb3ZpZGUgdGhlIGZvbGxvd2luZzoASW4gdGhlIEF0dGFjaCBJU08gZGlhbG9nIGJveCwgc2VsZWN0IHRoZSBkZXNpcmVkIElTTy4ASW4gdGhlIGxlZnQgbmF2aWdhdGlvbiBiYXIsIGNsaWNrIEFmZmluaXR5IEdyb3Vwcy4ASW4gdGhlIGxlZnQgbmF2aWdhdGlvbiBiYXIsIGNsaWNrIEluc3RhbmNlcy4ASW4gdGhlIGxlZnQgbmF2aWdhdGlvbiBiYXIsIGNsaWNrIFRlbXBsYXRlcy4ASW4gdGhlIGxlZnQgbmF2aWdhdGlvbiwgY2xpY2sgSW5zdGFuY2VzLgBJbiB0aGUgbGlzdCBvZiBzbmFwc2hvdHMsIGNsaWNrIHRoZSBuYW1lIG9mIHRoZSBzbmFwc2hvdCB5b3Ugd2FudCB0byB3b3JrIHdpdGguAEluc3RhbGwgUmVxdWlyZWQgVG9vbHMgYW5kIERyaXZlcnMASW5zdGFsbCBYZW4gdG9vbHMgKGZvciBYZW5TZXJ2ZXIgaG9zdHMpIG9yIFZNd2FyZSBUb29scyAoZm9yIFZNd2FyZSBob3N0cykgb24gZWFjaCBWTSBpZiB0aGV5IGFyZSBub3QgYWxyZWFkeSBpbnN0YWxsZWQuAEluc3RhbGwgY2xvdWQtaW5pdCBwYWNrYWdlIGludG8gYSB0ZW1wbGF0ZToASW5zdGFuY2UgbmFtZSDigJMgYSB1bmlxdWUsIGltbXV0YWJsZSBJRCB0aGF0IGlzIGdlbmVyYXRlZCBieSBDbG91ZFN0YWNrIGFuZCBjYW4gbm90IGJlIG1vZGlmaWVkIGJ5IHRoZSB1c2VyLiBUaGlzIG5hbWUgY29uZm9ybXMgdG8gdGhlIHJlcXVpcmVtZW50cyBpbiBJRVRGIFJGQyAxMTIzLgBJbnN0YW5jZSB0eXBlIHByZWZlcmVuY2VzLiBDbG91ZFN0YWNrIGFkbWluaXN0cmF0b3JzIGNhbiBzcGVjaWZ5IHRoYXQgY2VydGFpbiBob3N0cyBzaG91bGQgaGF2ZSBhIHByZWZlcmVuY2UgZm9yIHBhcnRpY3VsYXIgdHlwZXMgb2YgZ3Vlc3QgaW5zdGFuY2VzLiBGb3IgZXhhbXBsZSwgYW4gYWRtaW5pc3RyYXRvciBjb3VsZCBzdGF0ZSB0aGF0IGEgaG9zdCBzaG91bGQgaGF2ZSBhIHByZWZlcmVuY2UgdG8gcnVuIFdpbmRvd3MgZ3Vlc3RzLiBUaGUgZGVmYXVsdCBob3N0IGFsbG9jYXRvciB3aWxsIGF0dGVtcHQgdG8gcGxhY2UgZ3Vlc3RzIG9mIHRoYXQgT1MgdHlwZSBvbiBzdWNoIGhvc3RzIGZpcnN0LiBJZiBubyBzdWNoIGhvc3QgaXMgYXZhaWxhYmxlLCB0aGUgYWxsb2NhdG9yIHdpbGwgcGxhY2UgdGhlIGluc3RhbmNlIHdoZXJldmVyIHRoZXJlIGlzIHN1ZmZpY2llbnQgcGh5c2ljYWwgY2FwYWNpdHkuAEludGVybmFsIE5hbWUASXQgaXMgbm90IGFsd2F5cyBwb3NzaWJsZSB0byBhY2N1cmF0ZWx5IHByZWRpY3QgdGhlIENQVSBhbmQgUkFNIHJlcXVpcmVtZW50cyB3aGVuIHlvdSBmaXJzdCBkZXBsb3kgYSBWTS4gWW91IG1pZ2h0IG5lZWQgdG8gaW5jcmVhc2UgdGhlc2UgcmVzb3VyY2VzIGF0IGFueSB0aW1lIGR1cmluZyB0aGUgbGlmZSBvZiBhIFZNLiBZb3UgY2FuIGR5bmFtaWNhbGx5IG1vZGlmeSBDUFUgYW5kIFJBTSBsZXZlbHMgdG8gc2NhbGUgdXAgdGhlc2UgcmVzb3VyY2VzIGZvciBhIHJ1bm5pbmcgVk0gd2l0aG91dCBpbmN1cnJpbmcgYW55IGRvd250aW1lLgBJdCBpcyBub3QgcmVjb21tZW5kZWQgdG8gY2hvb3NlIGFuIG9sZGVyIHZlcnNpb24gb2YgdGhlIE9TIHRoYW4gdGhlIHZlcnNpb24gaW4gdGhlIGltYWdlLiBGb3IgZXhhbXBsZSwgY2hvb3NpbmcgQ2VudE9TIDUuNCB0byBzdXBwb3J0IGEgQ2VudE9TIDYuMiBpbWFnZSB3aWxsIHVzdWFsbHkgbm90IHdvcmsuIEluIHRoZXNlIGNhc2VzLCBjaG9vc2UgT3RoZXIuAExpbWl0YXRpb25zAExpbWl0YXRpb25zIG9uIFZNIFNuYXBzaG90cwBMaW1pdGluZyBHUFUgcmVzb3VyY2VzIHBlciBBY2NvdW50L0RvbWFpbiBpcyBub3Qgc3VwcG9ydGVkLgBMaXZlIG1pZ3JhdGlvbiBvZiBHUFUvdkdQVSBlbmFibGVkIFZNIGlzIG5vdCBzdXBwb3J0ZWQuAExvZyBpbiB0byB0aGUgQ2xvdWRTdGFjayBVSSBhcyBhIHVzZXIgb3IgYWRtaW4uAExvZyBpbiB0byB0aGUgQ2xvdWRTdGFjayBVSSBhcyBhIHVzZXIgb3IgYWRtaW5pc3RyYXRvci4ATG9nIGluIHRvIHRoZSBDbG91ZFN0YWNrIFVJIGFzIGFuIGFkbWluaXN0cmF0b3Igb3IgZW5kIHVzZXIuAExvZyBpbiB0byB0aGUgQ2xvdWRTdGFjayBVSSBhcyBhbiBhZG1pbmlzdHJhdG9yIG9yIHVzZXIuAExvZ2dpbmcgSW4gVXNpbmcgdGhlIFNTSCBLZXlwYWlyAE1ha2Ugc3VyZSB0aGUgem9uZS1sZXZlbCBzZXR0aW5nIGVuYWJsZS5keW5hbWljLnNjYWxlLnZtIGlzIHNldCB0byB0cnVlLiBJbiB0aGUgbGVmdCBuYXZpZ2F0aW9uIGJhciBvZiB0aGUgQ2xvdWRTdGFjayBVSSwgY2xpY2sgSW5mcmFzdHJ1Y3R1cmUsIHRoZW4gY2xpY2sgWm9uZXMsIGNsaWNrIHRoZSB6b25lIHlvdSB3YW50LCBhbmQgY2xpY2sgdGhlIFNldHRpbmdzIHRhYi4ATWFrZSB0aGUgZGVzaXJlZCBjaGFuZ2VzIHRvIHRoZSBmb2xsb3dpbmc6AE1hbmFnaW5nIEdQVSBjYXJkcyBjYXBhY2l0eS4ATWV0YSBEYXRhIGNhbiBiZSBhY2Nlc3NlZCBzaW1pbGFybHksIHVzaW5nIGEgVVJMIG9mIHRoZSBmb3JtIGBgaHR0cDovLzEwLjEuMS4xL2xhdGVzdC9tZXRhLWRhdGEve21ldGFkYXRhIHR5cGV9YGAuIChGb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHksIHRoZSBwcmV2aW91cyBVUkwgYGBodHRwOi8vMTAuMS4xLjEvbGF0ZXN0L3ttZXRhZGF0YSB0eXBlfWBgIGlzIGFsc28gc3VwcG9ydGVkLikgRm9yIG1ldGFkYXRhIHR5cGUsIHVzZSBvbmUgb2YgdGhlIGZvbGxvd2luZzoATWlncmF0ZSBhIFZNLgBNaWdyYXRpbmcgVk1zIChjb2xkIG1pZ3JhdGlvbikgd2l0aCBHUFUvdkdQVSBjYXBhYmlsaXR5LgBNb25pdG9yIFZNcyBmb3IgTWF4IENhcGFjaXR5AE1vdmluZyBWTXMgQmV0d2VlbiBIb3N0cyAoTWFudWFsIExpdmUgTWlncmF0aW9uKQBOVklESUEgR1JJRCBLMSAoMTYgR2lCIHZpZGVvIFJBTSkgQU5EIEsyICg4IEdpQiBvZiB2aWRlbyBSQU0pIGNhcmRzIHN1cHBvcnRzIGhvbW9nZW5lb3VzIHZpcnR1YWwgR1BVcywgaW1wbGllcyB0aGF0IGF0IGFueSBnaXZlbiB0aW1lLCB0aGUgdkdQVXMgcmVzaWRlbnQgb24gYSBzaW5nbGUgcGh5c2ljYWwgR1BVIG11c3QgYmUgYWxsIG9mIHRoZSBzYW1lIHR5cGUuIEhvd2V2ZXIsIHRoaXMgcmVzdHJpY3Rpb24gZG9lc24ndCBleHRlbmQgYWNyb3NzIHBoeXNpY2FsIEdQVXMgb24gdGhlIHNhbWUgY2FyZC4gRWFjaCBwaHlzaWNhbCBHUFUgb24gYSBLMSBvciBLMiBtYXkgaG9zdCBkaWZmZXJlbnQgdHlwZXMgb2YgdmlydHVhbCBHUFUgYXQgdGhlIHNhbWUgdGltZS4gRm9yIGV4YW1wbGUsIGEgR1JJRCBLMiBjYXJkIGhhcyB0d28gcGh5c2ljYWwgR1BVcywgYW5kIHN1cHBvcnRzIGZvdXIgdHlwZXMgb2YgdmlydHVhbCBHUFU7IEdSSUQgSzIwMCwgR1JJRCBLMjIwUSwgR1JJRCBLMjQwUSwgQU5EIEdSSUQgSzI2MFEuAE5WSURJQSBkcml2ZXIgbXVzdCBiZSBpbnN0YWxsZWQgdG8gZW5hYmxlIHZHUFUgb3BlcmF0aW9uIGFzIGZvciBhIHBoeXNpY2FsIE5WSURJQSBHUFUuAE5hbWUgb24gdkNlbnRlcgBOYW1lIOKAkyBob3N0IG5hbWUgdGhhdCB0aGUgREhDUCBzZXJ2ZXIgYXNzaWducyB0byB0aGUgVk0uIENhbiBiZSBzZXQgYnkgdGhlIHVzZXIuIERlZmF1bHRzIHRvIGluc3RhbmNlIG5hbWUATmFtZS4gR2l2ZSB0aGUgZ3JvdXAgYSBuYW1lLgBOYXZpZ2F0ZSB0byB0aGUgVk0gYXMgZGVzY3JpYmVkIGluIHRoZSBlYXJsaWVyIHN0ZXBzLgBOZXcgVk1zIHRoYXQgYXJlIGNyZWF0ZWQgYWZ0ZXIgdGhlIGluc3RhbGxhdGlvbiBvZiBDbG91ZFN0YWNrIDQuMiBjYW4gdXNlIHRoZSBkeW5hbWljIHNjYWxpbmcgZmVhdHVyZS4gSWYgeW91IGFyZSB1cGdyYWRpbmcgZnJvbSBhIHByZXZpb3VzIHZlcnNpb24gb2YgQ2xvdWRTdGFjaywgeW91ciBleGlzdGluZyBWTXMgY3JlYXRlZCB3aXRoIHByZXZpb3VzIHZlcnNpb25zIHdpbGwgbm90IGhhdmUgdGhlIGR5bmFtaWMgc2NhbGluZyBjYXBhYmlsaXR5IHVubGVzcyB5b3UgdXBkYXRlIHRoZW0gdXNpbmcgdGhlIGZvbGxvd2luZyBwcm9jZWR1cmUuAE5vAE5vdGlmaWNhdGlvbiB0aHJlc2hvbGRzIGZvciBHUFUgcmVzb3VyY2UgaXMgbm90IHN1cHBvcnRlZC4ATnVtYmVyIG9mIHNlY29uZHMgdG8gd2FpdCBmb3IgYSBzbmFwc2hvdCBqb2IgdG8gc3VjY2VlZCBiZWZvcmUgZGVjbGFyaW5nIGZhaWx1cmUgYW5kIGlzc3VpbmcgYW4gZXJyb3IuAE9uIFZNcyBydW5uaW5nIExpbnV4IDY0LWJpdCBhbmQgV2luZG93cyA3IDMyLWJpdCBvcGVyYXRpbmcgc3lzdGVtcywgaWYgdGhlIFZNIGlzIGluaXRpYWxseSBhc3NpZ25lZCBhIFJBTSBvZiBsZXNzIHRoYW4gMyBHQiwgaXQgY2FuIGJlIGR5bmFtaWNhbGx5IHNjYWxlZCB1cCB0byAzIEdCLCBidXQgbm90IG1vcmUuIFRoaXMgaXMgZHVlIHRvIGEga25vd24gaXNzdWUgd2l0aCB0aGVzZSBvcGVyYXRpbmcgc3lzdGVtcywgd2hpY2ggd2lsbCBmcmVlemUgaWYgYW4gYXR0ZW1wdCBpcyBtYWRlIHRvIGR5bmFtaWNhbGx5IHNjYWxlIGZyb20gbGVzcyB0aGFuIDMgR0IgdG8gbW9yZSB0aGFuIDMgR0IuAE9uY2UgYSBWTSBpbnN0YW5jZSBpcyBjcmVhdGVkLCB5b3UgY2FuIHN0b3AsIHJlc3RhcnQsIG9yIGRlbGV0ZSBpdCBhcyBuZWVkZWQuIEluIHRoZSBDbG91ZFN0YWNrIFVJLCBjbGljayBJbnN0YW5jZXMsIHNlbGVjdCB0aGUgVk0sIGFuZCB1c2UgdGhlIFN0b3AsIFN0YXJ0LCBSZWJvb3QsIGFuZCBEZXN0cm95IGJ1dHRvbnMuAE9uY2UgYSB2aXJ0dWFsIG1hY2hpbmUgaXMgZGVzdHJveWVkLCBpdCBjYW5ub3QgYmUgcmVjb3ZlcmVkLiBBbGwgdGhlIHJlc291cmNlcyB1c2VkIGJ5IHRoZSB2aXJ0dWFsIG1hY2hpbmUgd2lsbCBiZSByZWNsYWltZWQgYnkgdGhlIHN5c3RlbS4gVGhpcyBpbmNsdWRlcyB0aGUgdmlydHVhbCBtYWNoaW5l4oCZcyBJUCBhZGRyZXNzLgBPdGhlciBQVgBQcmVyZXF1aXNpdGVzIGFuZCBTeXN0ZW0gUmVxdWlyZW1lbnRzAFByb3ZpZGUgYSBuYW1lIGFuZCBkZXNjcmlwdGlvbi4gVGhlc2Ugd2lsbCBiZSBkaXNwbGF5ZWQgaW4gdGhlIFZNIFNuYXBzaG90cyBsaXN0LgBRdWVyeWluZyBob3N0cyB0byBvYnRhaW4gaW5mb3JtYXRpb24gYWJvdXQgdGhlIEdQVSBjYXJkcywgc3VwcG9ydGVkIHZHUFUgdHlwZXMgaW4gY2FzZSBvZiBHUklEIGNhcmRzLCBhbmQgY2FwYWNpdHkgb2YgdGhlIGNhcmRzLgBRdWllc2NlIFZNOiBjaGVjayB0aGlzIGJveCBpZiB5b3Ugd2FudCB0byBxdWllc2NlIHRoZSBmaWxlIHN5c3RlbSBvbiB0aGUgVk0gYmVmb3JlIHRha2luZyB0aGUgc25hcHNob3QuIE5vdCBzdXBwb3J0ZWQgb24gWGVuU2VydmVyIHdoZW4gdXNlZCB3aXRoIENsb3VkU3RhY2stcHJvdmlkZWQgcHJpbWFyeSBzdG9yYWdlLgBSZWQgSGF0IEVudGVycHJpc2UgTGludXggNS4zAFJlZCBIYXQgRW50ZXJwcmlzZSBMaW51eCA1LjQAUmVkIEhhdCBFbnRlcnByaXNlIExpbnV4IDUuNQBSZWQgSGF0IEVudGVycHJpc2UgTGludXggNgBSZWZlciB0byBgQ2xvdWQtSW5pdCBDbG91ZFN0YWNrIGRhdGFzb3VyY2UgPGh0dHA6Ly9jbG91ZGluaXQucmVhZHRoZWRvY3Mub3JnL2VuL2xhdGVzdC90b3BpY3MvZGF0YXNvdXJjZXMuaHRtbCNjbG91ZHN0YWNrPmBfIGRvY3VtZW50YXRpb24gZm9yIGxhdGVzdCBjYXBhYmlsaXRpZXMuIENsb3VkLUluaXQgYW5kIENsb3VkLUluaXQgQ2xvdWRTdGFjayBkYXRhc291cmNlIGFyZSBub3Qgc3VwcG9ydGVkIGJ5IEFwYWNoZSBDbG91ZFN0YWNrIGNvbW11bml0eS4AUmVzZXR0aW5nIFNTSCBLZXlzAFJlc2V0dGluZyB0aGUgVmlydHVhbCBNYWNoaW5lIFJvb3QgVm9sdW1lIG9uIFJlYm9vdABSZXN0YXJ0IHRoZSBWTS4AUnVuIHRoZSBmb2xsb3dpbmcgY29tbWFuZCB0byBmaW5kIHRoZSB2aXJ0dWFsIHJvdXRlci4AUnVuIHRoZSBmb2xsb3dpbmcgY3VybCBjb21tYW5kOgBSdW4gdGhlIHNjcmlwdCB3aGlsZSBzdGFydGluZyB1cCB0aGUgb3BlcmF0aW5nIHN5c3RlbToAU2F2ZSB0aGUgZmlsZS4AU2VsZWN0IElTTyBCb290LCBhbmQgZm9sbG93IHRoZSBzdGVwcyBpbiB0aGUgd2l6YXJkLgBTZWxlY3QgYSB0ZW1wbGF0ZSwgdGhlbiBmb2xsb3cgdGhlIHN0ZXBzIGluIHRoZSB3aXphcmQuIEZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IGhvdyB0aGUgdGVtcGxhdGVzIGNhbWUgdG8gYmUgaW4gdGhpcyBsaXN0LCBzZWUgYCpXb3JraW5nIHdpdGggVGVtcGxhdGVzKiA8dGVtcGxhdGVzLmh0bWw+YF8uAFNlbGVjdCBhIHpvbmUuAFNlbGVjdCB0aGUgVk0gdGhhdCB5b3Ugd2FudCB0byBtb2RpZnkuAFNlbGVjdCB0aGUgb2ZmZXJpbmcgeW91IHdhbnQgdG8gYXBwbHkgdG8gdGhlIHNlbGVjdGVkIFZNLgBTdG9wIHRoZSBWTSBieSBjbGlja2luZyB0aGUgU3RvcCBidXR0b24uAFN0b3AgdGhlIFZNLgBTdG9wIHRoZSBpbnN0YW5jZS4AU3RvcHBpbmcgYW5kIFN0YXJ0aW5nIFZNcwBTdWJzdGl0dXRlIHRoZSB0ZW1wbGF0ZSwgc2VydmljZSBvZmZlcmluZyBhbmQgc2VjdXJpdHkgZ3JvdXAgSURzIChpZiB5b3UgYXJlIHVzaW5nIHRoZSBzZWN1cml0eSBncm91cCBmZWF0dXJlKSB0aGF0IGFyZSBpbiB5b3VyIGNsb3VkIGVudmlyb25tZW50LgBTdXBwb3J0ZWQgR1BVIERldmljZXMAU3lzdGVtIFZNcyBvbiBWTXdhcmUuAFRoZSAtaSBwYXJhbWV0ZXIgdGVsbHMgdGhlIHNzaCBjbGllbnQgdG8gdXNlIGEgc3NoIGtleSBmb3VuZCBhdCB+Ly5zc2gva2V5cGFpci1kb2MuAFRoZSBDaGFuZ2Ugc2VydmljZSBkaWFsb2cgYm94IGlzIGRpc3BsYXllZC4AVGhlIENsb3VkU3RhY2sgYWRtaW5pc3RyYXRvciBjYW4gbW92ZSBhIHJ1bm5pbmcgVk0gZnJvbSBvbmUgaG9zdCB0byBhbm90aGVyIHdpdGhvdXQgaW50ZXJydXB0aW5nIHNlcnZpY2UgdG8gdXNlcnMgb3IgZ29pbmcgaW50byBtYWludGVuYW5jZSBtb2RlLiBUaGlzIGlzIGNhbGxlZCBtYW51YWwgbGl2ZSBtaWdyYXRpb24sIGFuZCBjYW4gYmUgZG9uZSB1bmRlciB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6AFRoZSBDbG91ZFN0YWNrIGFkbWluaXN0cmF0b3Igc2hvdWxkIG1vbml0b3IgdGhlIHRvdGFsIG51bWJlciBvZiBWTSBpbnN0YW5jZXMgaW4gZWFjaCBjbHVzdGVyLCBhbmQgZGlzYWJsZSBhbGxvY2F0aW9uIHRvIHRoZSBjbHVzdGVyIGlmIHRoZSB0b3RhbCBpcyBhcHByb2FjaGluZyB0aGUgbWF4aW11bSB0aGF0IHRoZSBoeXBlcnZpc29yIGNhbiBoYW5kbGUuIEJlIHN1cmUgdG8gbGVhdmUgYSBzYWZldHkgbWFyZ2luIHRvIGFsbG93IGZvciB0aGUgcG9zc2liaWxpdHkgb2Ygb25lIG9yIG1vcmUgaG9zdHMgZmFpbGluZywgd2hpY2ggd291bGQgaW5jcmVhc2UgdGhlIFZNIGxvYWQgb24gdGhlIG90aGVyIGhvc3RzIGFzIHRoZSBWTXMgYXJlIGF1dG9tYXRpY2FsbHkgcmVkZXBsb3llZC4gQ29uc3VsdCB0aGUgZG9jdW1lbnRhdGlvbiBmb3IgeW91ciBjaG9zZW4gaHlwZXJ2aXNvciB0byBmaW5kIHRoZSBtYXhpbXVtIHBlcm1pdHRlZCBudW1iZXIgb2YgVk1zIHBlciBob3N0LCB0aGVuIHVzZSBDbG91ZFN0YWNrIGdsb2JhbCBjb25maWd1cmF0aW9uIHNldHRpbmdzIHRvIHNldCB0aGlzIGFzIHRoZSBkZWZhdWx0IGxpbWl0LiBNb25pdG9yIHRoZSBWTSBhY3Rpdml0eSBpbiBlYWNoIGNsdXN0ZXIgYXQgYWxsIHRpbWVzLiBLZWVwIHRoZSB0b3RhbCBudW1iZXIgb2YgVk1zIGJlbG93IGEgc2FmZSBsZXZlbCB0aGF0IGFsbG93cyBmb3IgdGhlIG9jY2FzaW9uYWwgaG9zdCBmYWlsdXJlLiBGb3IgZXhhbXBsZSwgaWYgdGhlcmUgYXJlIE4gaG9zdHMgaW4gdGhlIGNsdXN0ZXIsIGFuZCB5b3Ugd2FudCB0byBhbGxvdyBmb3Igb25lIGhvc3QgaW4gdGhlIGNsdXN0ZXIgdG8gYmUgZG93biBhdCBhbnkgZ2l2ZW4gdGltZSwgdGhlIHRvdGFsIG51bWJlciBvZiBWTSBpbnN0YW5jZXMgeW91IGNhbiBwZXJtaXQgaW4gdGhlIGNsdXN0ZXIgaXMgYXQgbW9zdCAoTi0xKSBcKiAocGVyLWhvc3QtbGltaXQpLiBPbmNlIGEgY2x1c3RlciByZWFjaGVzIHRoaXMgbnVtYmVyIG9mIFZNcywgdXNlIHRoZSBDbG91ZFN0YWNrIFVJIHRvIGRpc2FibGUgYWxsb2NhdGlvbiBvZiBtb3JlIFZNcyB0byB0aGUgY2x1c3Rlci4AVGhlIE1hbmFnZW1lbnQgU2VydmVyIHdpbGwgZG93bmxvYWQgdGhlIElTTy4gRGVwZW5kaW5nIG9uIHRoZSBzaXplIG9mIHRoZSBJU08sIHRoaXMgbWF5IHRha2UgYSBsb25nIHRpbWUuIFRoZSBJU08gc3RhdHVzIGNvbHVtbiB3aWxsIGRpc3BsYXkgUmVhZHkgb25jZSBpdCBoYXMgYmVlbiBzdWNjZXNzZnVsbHkgZG93bmxvYWRlZCBpbnRvIHNlY29uZGFyeSBzdG9yYWdlLiBDbGlja2luZyBSZWZyZXNoIHVwZGF0ZXMgdGhlIGRvd25sb2FkIHBlcmNlbnRhZ2UuAFRoZSBWTSBpcyBydW5uaW5nLiBTdG9wcGVkIFZNcyBjYW4gbm90IGJlIGxpdmUgbWlncmF0ZWQuAFRoZSBWTSBtdXN0IGhhdmUgc29tZSBwb3J0IG9wZW4gdG8gaW5jb21pbmcgdHJhZmZpYy4gRm9yIGV4YW1wbGUsIGluIGEgYmFzaWMgem9uZSwgYSBuZXcgVk0gbWlnaHQgYmUgYXNzaWduZWQgdG8gYSBzZWN1cml0eSBncm91cCB3aGljaCBhbGxvd3MgaW5jb21pbmcgdHJhZmZpYy4gVGhpcyBkZXBlbmRzIG9uIHdoYXQgc2VjdXJpdHkgZ3JvdXAgeW91IHBpY2tlZCB3aGVuIGNyZWF0aW5nIHRoZSBWTS4gSW4gb3RoZXIgY2FzZXMsIHlvdSBjYW4gb3BlbiBhIHBvcnQgYnkgc2V0dGluZyB1cCBhIHBvcnQgZm9yd2FyZGluZyBwb2xpY3kuIFNlZSBg4oCcSVAgRm9yd2FyZGluZyBhbmQgRmlyZXdhbGxpbmfigJ0gPG5ldHdvcmtpbmcyLmh0bWwjaXAtZm9yd2FyZGluZy1hbmQtZmlyZXdhbGxpbmc+YF8uAFRoZSBjbG91ZCBhZG1pbmlzdHJhdG9yIGNhbiB1c2UgZ2xvYmFsIGNvbmZpZ3VyYXRpb24gdmFyaWFibGVzIHRvIGNvbnRyb2wgdGhlIGJlaGF2aW9yIG9mIFZNIHNuYXBzaG90cy4gVG8gc2V0IHRoZXNlIHZhcmlhYmxlcywgZ28gdGhyb3VnaCB0aGUgR2xvYmFsIFNldHRpbmdzIGFyZWEgb2YgdGhlIENsb3VkU3RhY2sgVUkuAFRoZSBkZWZhdWx0IGZvcm1hdCBvZiB0aGUgaW50ZXJuYWwgbmFtZSBpcyBpLTx1c2VyXF9pZD4tPHZtXF9pZD4tPGluc3RhbmNlLm5hbWU+LCB3aGVyZSBpbnN0YW5jZS5uYW1lIGlzIGEgZ2xvYmFsIHBhcmFtZXRlci4gSG93ZXZlciwgSWYgdm0uaW5zdGFuY2VuYW1lLmZsYWcgaXMgc2V0IHRvIHRydWUsIGFuZCBpZiBhIGRpc3BsYXkgbmFtZSBpcyBwcm92aWRlZCBkdXJpbmcgdGhlIGNyZWF0aW9uIG9mIGEgZ3Vlc3QgVk0sIHRoZSBkaXNwbGF5IG5hbWUgaXMgYXBwZW5kZWQgdG8gdGhlIGludGVybmFsIG5hbWUgb2YgdGhlIGd1ZXN0IFZNIG9uIHRoZSBob3N0LiBUaGlzIG1ha2VzIHRoZSBpbnRlcm5hbCBuYW1lIGZvcm1hdCBhcyBpLTx1c2VyXF9pZD4tPHZtXF9pZD4tPGRpc3BsYXlOYW1lPi4gVGhlIGRlZmF1bHQgdmFsdWUgb2Ygdm0uaW5zdGFuY2VuYW1lLmZsYWcgaXMgc2V0IHRvIGZhbHNlLiBUaGlzIGZlYXR1cmUgaXMgaW50ZW5kZWQgdG8gbWFrZSB0aGUgY29ycmVsYXRpb24gYmV0d2VlbiBpbnN0YW5jZSBuYW1lcyBhbmQgaW50ZXJuYWwgbmFtZXMgZWFzaWVyIGluIGxhcmdlIGRhdGEgY2VudGVyIGRlcGxveW1lbnRzLgBUaGUgZGVzdGluYXRpb24gaG9zdCBtdXN0IGhhdmUgZW5vdWdoIGF2YWlsYWJsZSBjYXBhY2l0eS4gSWYgbm90LCB0aGUgVk0gd2lsbCByZW1haW4gaW4gdGhlICJtaWdyYXRpbmciIHN0YXRlIHVudGlsIG1lbW9yeSBiZWNvbWVzIGF2YWlsYWJsZS4AVGhlIGZvbGxvd2luZyB0YWJsZSBleHBsYWlucyBob3cgYSBWTSBuYW1lIGlzIGRpc3BsYXllZCBpbiBkaWZmZXJlbnQgc2NlbmFyaW9zLgBUaGUgbWF4aW11bSBudW1iZXIgb2YgVk0gc25hcHNob3RzIHRoYXQgY2FuIGJlIHNhdmVkIGZvciBhbnkgZ2l2ZW4gdmlydHVhbCBtYWNoaW5lIGluIHRoZSBjbG91ZC4gVGhlIHRvdGFsIHBvc3NpYmxlIG51bWJlciBvZiBWTSBzbmFwc2hvdHMgaW4gdGhlIGNsb3VkIGlzIChudW1iZXIgb2YgVk1zKSBcKiB2bXNuYXBzaG90cy5tYXguIElmIHRoZSBudW1iZXIgb2Ygc25hcHNob3RzIGZvciBhbnkgVk0gZXZlciBoaXRzIHRoZSBtYXhpbXVtLCB0aGUgb2xkZXIgb25lcyBhcmUgcmVtb3ZlZCBieSB0aGUgc25hcHNob3QgZXhwdW5nZSBqb2IuAFRoZSBuZXcgcmVxdWVzdGVkIENQVSBhbmQgUkFNIHZhbHVlcyBtdXN0IGJlIHdpdGhpbiB0aGUgY29uc3RyYWludHMgYWxsb3dlZCBieSB0aGUgaHlwZXJ2aXNvciBhbmQgdGhlIFZNIG9wZXJhdGluZyBzeXN0ZW0uAFRoZSBvdXRwdXQgaXMgc29tZXRoaW5nIHNpbWlsYXIgdG8gd2hhdCBpcyBnaXZlbiBiZWxvdzoAVGhlIHJvb3QgYWRtaW5pc3RyYXRvciBpcyBsb2dnZWQgaW4uIERvbWFpbiBhZG1pbnMgYW5kIHVzZXJzIGNhbiBub3QgcGVyZm9ybSBtYW51YWwgbGl2ZSBtaWdyYXRpb24gb2YgVk1zLgBUaGUgc2NvcGUgb2YgYW4gYWZmaW5pdHkgZ3JvdXAgaXMgcGVyIHVzZXIgYWNjb3VudC4AVGhlIHNuYXBzaG90IGlzIGNyZWF0ZWQgdXNpbmcgdGhlIGh5cGVydmlzb3IncyBuYXRpdmUgc25hcHNob3QgZmFjaWxpdHkuIFRoZSBWTSBzbmFwc2hvdCBpbmNsdWRlcyBub3Qgb25seSB0aGUgZGF0YSB2b2x1bWVzLCBidXQgb3B0aW9uYWxseSBhbHNvIHdoZXRoZXIgdGhlIFZNIGlzIHJ1bm5pbmcgb3IgdHVybmVkIG9mZiAoQ1BVIHN0YXRlKSBhbmQgdGhlIG1lbW9yeSBjb250ZW50cy4gVGhlIHNuYXBzaG90IGlzIHN0b3JlZCBpbiBDbG91ZFN0YWNrJ3MgcHJpbWFyeSBzdG9yYWdlLgBUaGUgc3lzdGVtIHBsYWNlcyB0aGUgdmlydHVhbCBtYWNoaW5lIGludG8gdGhlIGRvd24gc3RhdGUgaWYgaXQgZG9lcyBub3QgcmVjZWl2ZSB0aGUgaGVhcnRiZWF0IGZyb20gdGhlIGh5cGVydmlzb3IgZm9yIHRocmVlIG1pbnV0ZXMuAFRoZSBzeXN0ZW0gd2lsbCBzdGFydCB0aGUgdmlydHVhbCBtYWNoaW5lIGZyb20gdGhlIGRvd24gc3RhdGUgYXV0b21hdGljYWxseSBpZiB0aGUgdmlydHVhbCBtYWNoaW5lIGlzIG1hcmtlZCBhcyBIQS1lbmFibGVkLgBUaGUgdXNlciBjYW4gbWFudWFsbHkgcmVzdGFydCB0aGUgdmlydHVhbCBtYWNoaW5lIGZyb20gdGhlIGRvd24gc3RhdGUuAFRoZSB2R1BVLWVuYWJsZWQgWGVuU2VydmVyIDYuMiBhbmQgbGF0ZXIgdmVyc2lvbnMuIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgYENpdHJpeCAzRCBHcmFwaGljcyBQYWNrIDxodHRwczovL3d3dy5jaXRyaXguY29tL2dvL3ByaXZhdGUvdmdwdS5odG1sPmBfLgBUaGlzIGV4YW1wbGUgdXNlIGNsb3VkLWluaXQgdG8gVXBncmFkZSBPcGVyYXRpbmctU3lzdGVtIG9mIHRoZSBuZXdseSBjcmVhdGVkIFZNOgBUbyBhY2Nlc3MgYSBWTSBkaXJlY3RseSBvdmVyIHRoZSBuZXR3b3JrOgBUbyBhY2Nlc3MgYSBWTSB0aHJvdWdoIHRoZSBDbG91ZFN0YWNrIFVJOgBUbyBhZGQgYW4gYWZmaW5pdHkgZ3JvdXA6AFRvIGFzc2lnbiBhIG5ldyBWTSB0byBhbiBhZmZpbml0eSBncm91cDoAVG8gYXNzaWduIGFuIGV4aXN0aW5nIFZNIHRvIGFuIGFmZmluaXR5IGdyb3VwOgBUbyBiZSBzdXJlIHRoYXQgWGVuIHRvb2xzIG9yIFZNd2FyZSBUb29scyBpcyBpbnN0YWxsZWQsIHVzZSBvbmUgb2YgdGhlIGZvbGxvd2luZyB0ZWNobmlxdWVzOgBUbyBjaGFuZ2UgYSBWTSdzIGJhc2UgaW1hZ2UsIGNhbGwgdGhlIHJlc3RvcmVWaXJ0dWFsTWFjaGluZSBBUEkgY29tbWFuZCBhbmQgcGFzcyBpbiB0aGUgdmlydHVhbCBtYWNoaW5lIElEIGFuZCBhIG5ldyB0ZW1wbGF0ZSBJRC4gVGhlIHRlbXBsYXRlIElEIHBhcmFtZXRlciBtYXkgcmVmZXIgdG8gZWl0aGVyIGEgdGVtcGxhdGUgb3IgYW4gSVNPLCBkZXBlbmRpbmcgb24gd2hpY2ggdHlwZSBvZiBiYXNlIGltYWdlIHRoZSBWTSB3YXMgYWxyZWFkeSB1c2luZyAoaXQgbXVzdCBtYXRjaCB0aGUgcHJldmlvdXMgdHlwZSBvZiBpbWFnZSkuIFdoZW4gdGhpcyBjYWxsIG9jY3VycywgdGhlIFZNJ3Mgcm9vdCBkaXNrIGlzIGZpcnN0IGRlc3Ryb3llZCwgdGhlbiBhIG5ldyByb290IGRpc2sgaXMgY3JlYXRlZCBmcm9tIHRoZSBzb3VyY2UgZGVzaWduYXRlZCBpbiB0aGUgdGVtcGxhdGUgSUQgcGFyYW1ldGVyLiBUaGUgbmV3IHJvb3QgZGlzayBpcyBhdHRhY2hlZCB0byB0aGUgVk0sIGFuZCBub3cgdGhlIFZNIGlzIGJhc2VkIG9uIHRoZSBuZXcgdGVtcGxhdGUuAFRvIGNvbmZpZ3VyZSB0aGlzIGZlYXR1cmUsIHVzZSB0aGUgZm9sbG93aW5nIG5ldyBnbG9iYWwgY29uZmlndXJhdGlvbiB2YXJpYWJsZXM6AFRvIGNyZWF0ZSBhIFZNIGZyb20gYSB0ZW1wbGF0ZToAVG8gY3JlYXRlIGEgVk0gZnJvbSBhbiBJU086AFRvIGNyZWF0ZSBhIFZNIHNuYXBzaG90IHVzaW5nIHRoZSBDbG91ZFN0YWNrIFVJOgBUbyBkZWxldGUgYSBzbmFwc2hvdCBvciByZXN0b3JlIGEgVk0gdG8gdGhlIHN0YXRlIHNhdmVkIGluIGEgcGFydGljdWxhciBzbmFwc2hvdDoAVG8gZGVsZXRlIGEgdmlydHVhbCBtYWNoaW5lOgBUbyBkZWxldGUgYW4gYWZmaW5pdHkgZ3JvdXA6AFRvIGRlbGV0ZSB0aGUgc25hcHNob3QsIGNsaWNrIHRoZSBEZWxldGUgYnV0dG9uLiB8ZGVsZXRlLWJ1dHRvbi5wbmd8AFRvIGRlbGl2ZXIgaGlnaCBmcmFtZXMgZnJvbSBtdWx0aXBsZSBoZWFkcyBvbiB2R1BVLCBpbnN0YWxsIFhlbkRlc2t0b3Agd2l0aCBIRFggM0QgUHJvIHJlbW90ZSBncmFwaGljcy4AVG8gbWFrZSBhZGRpdGlvbmFsIG9wZXJhdGluZyBzeXN0ZW0gb3Igb3RoZXIgc29mdHdhcmUgYXZhaWxhYmxlIGZvciB1c2Ugd2l0aCBndWVzdCBWTXMsIHlvdSBjYW4gYWRkIGFuIElTTy4gVGhlIElTTyBpcyB0eXBpY2FsbHkgdGhvdWdodCBvZiBhcyBhbiBvcGVyYXRpbmcgc3lzdGVtIGltYWdlLCBidXQgeW91IGNhbiBhbHNvIGFkZCBJU09zIGZvciBvdGhlciB0eXBlcyBvZiBzb2Z0d2FyZSwgc3VjaCBhcyBkZXNrdG9wIGFwcGxpY2F0aW9ucyB0aGF0IHlvdSB3YW50IHRvIGJlIGluc3RhbGxlZCBhcyBwYXJ0IG9mIGEgdGVtcGxhdGUuAFRvIG1hbnVhbGx5IGxpdmUgbWlncmF0ZSBhIHZpcnR1YWwgbWFjaGluZQBUbyBtb2RpZnkgdGhlIENQVSBhbmQvb3IgUkFNIGNhcGFjaXR5IG9mIGEgdmlydHVhbCBtYWNoaW5lLCB5b3UgbmVlZCB0byBjaGFuZ2UgdGhlIGNvbXB1dGUgb2ZmZXJpbmcgb2YgdGhlIFZNIHRvIGEgbmV3IGNvbXB1dGUgb2ZmZXJpbmcgdGhhdCBoYXMgdGhlIGRlc2lyZWQgQ1BVIGFuZCBSQU0gdmFsdWVzLiBZb3UgY2FuIHVzZSB0aGUgc2FtZSBzdGVwcyBkZXNjcmliZWQgYWJvdmUgaW4gYOKAnENoYW5naW5nIHRoZSBTZXJ2aWNlIE9mZmVyaW5nIGZvciBhIFZN4oCdIDwjY2hhbmdpbmctdGhlLXNlcnZpY2Utb2ZmZXJpbmctZm9yLWEtdm0+YF8sIGJ1dCBza2lwIHRoZSBzdGVwIHdoZXJlIHlvdSBzdG9wIHRoZSB2aXJ0dWFsIG1hY2hpbmUuIE9mIGNvdXJzZSwgeW91IG1pZ2h0IGhhdmUgdG8gY3JlYXRlIGEgbmV3IGNvbXB1dGUgb2ZmZXJpbmcgZmlyc3QuAFRvIHJldmVydCB0byB0aGUgc25hcHNob3QsIGNsaWNrIHRoZSBSZXZlcnQgYnV0dG9uLiB8cmV2ZXJ0LXZtLnBuZ3wAVG8gc2VlIHdoaWNoIFZNcyBhcmUgY3VycmVudGx5IGFzc2lnbmVkIHRvIGEgcGFydGljdWxhciBhZmZpbml0eSBncm91cDoAVG8gdGVzdCB5b3VyIFNTSCBrZXkgZ2VuZXJhdGlvbiBpcyBzdWNjZXNzZnVsLCBjaGVjayB3aGV0aGVyIHlvdSBjYW4gbG9nIGluIHRvIHRoZSBjbG91ZCBzZXR1cC4AVG8gdXBncmFkZSBvciBkb3duZ3JhZGUgdGhlIGxldmVsIG9mIGNvbXB1dGUgcmVzb3VyY2VzIGF2YWlsYWJsZSB0byBhIHZpcnR1YWwgbWFjaGluZSwgeW91IGNhbiBjaGFuZ2UgdGhlIFZNJ3MgY29tcHV0ZSBvZmZlcmluZy4AVHJ1ZQBUeXBlAFR5cGUuIFRoZSBvbmx5IHN1cHBvcnRlZCB0eXBlIHNoaXBwZWQgd2l0aCBDbG91ZFN0YWNrIGlzIEhvc3QgQW50aS1BZmZpbml0eS4gVGhpcyBpbmRpY2F0ZXMgdGhhdCB0aGUgVk1zIGluIHRoaXMgZ3JvdXAgc2hvdWxkIGF2b2lkIGJlaW5nIHBsYWNlZCBvbiB0aGUgc2FtZSBob3N0IHdpdGggZWFjaCBvdGhlci4gSWYgeW91IHNlZSBvdGhlciB0eXBlcyBpbiB0aGlzIGxpc3QsIGl0IG1lYW5zIHRoYXQgeW91ciBpbnN0YWxsYXRpb24gb2YgQ2xvdWRTdGFjayBoYXMgYmVlbiBleHRlbmRlZCB3aXRoIGN1c3RvbWl6ZWQgYWZmaW5pdHkgZ3JvdXAgcGx1Z2lucy4AVVVJRABVcGRhdGluZyBFeGlzdGluZyBWTXMAVXNlciBWTXMgb24gaG9zdHMgcnVubmluZyBWTXdhcmUgYW5kIFhlblNlcnZlci4AVXNlci1EYXRhIGFuZCBNZXRhLURhdGEAVXNlci1Qcm92aWRlZCBEaXNwbGF5IE5hbWUAVXNlcnMgY2FuIGRlbGV0ZSB0aGVpciBvd24gdmlydHVhbCBtYWNoaW5lcy4gQSBydW5uaW5nIHZpcnR1YWwgbWFjaGluZSB3aWxsIGJlIGFicnVwdGx5IHN0b3BwZWQgYmVmb3JlIGl0IGlzIGRlbGV0ZWQuIEFkbWluaXN0cmF0b3JzIGNhbiBkZWxldGUgYW55IHZpcnR1YWwgbWFjaGluZXMuAFVzaW5nIENsb3VkLUluaXQAVXNpbmcgU1NIIEtleXMgZm9yIEF1dGhlbnRpY2F0aW9uAFVzaW5nIFZNIFNuYXBzaG90cwBWTSBMaWZlY3ljbGUAVk0gc25hcHNob3RzIGFyZSBkZWxldGVkIGF1dG9tYXRpY2FsbHkgd2hlbiBhIFZNIGlzIGRlc3Ryb3llZC4gWW91IGRvbid0IGhhdmUgdG8gbWFudWFsbHkgZGVsZXRlIHRoZSBzbmFwc2hvdHMgaW4gdGhpcyBjYXNlLgBWTSBzbmFwc2hvdHMgY2FuIGhhdmUgYSBwYXJlbnQvY2hpbGQgcmVsYXRpb25zaGlwLiBFYWNoIHN1Y2Nlc3NpdmUgc25hcHNob3Qgb2YgdGhlIHNhbWUgVk0gaXMgdGhlIGNoaWxkIG9mIHRoZSBzbmFwc2hvdCB0aGF0IGNhbWUgYmVmb3JlIGl0LiBFYWNoIHRpbWUgeW91IHRha2UgYW4gYWRkaXRpb25hbCBzbmFwc2hvdCBvZiB0aGUgc2FtZSBWTSwgaXQgc2F2ZXMgb25seSB0aGUgZGlmZmVyZW5jZXMgYmV0d2VlbiB0aGUgY3VycmVudCBzdGF0ZSBvZiB0aGUgVk0gYW5kIHRoZSBzdGF0ZSBzdG9yZWQgaW4gdGhlIG1vc3QgcmVjZW50IHByZXZpb3VzIHNuYXBzaG90LiBUaGUgcHJldmlvdXMgc25hcHNob3QgYmVjb21lcyBhIHBhcmVudCwgYW5kIHRoZSBuZXcgc25hcHNob3QgaXMgaXRzIGNoaWxkLiBJdCBpcyBwb3NzaWJsZSB0byBjcmVhdGUgYSBsb25nIGNoYWluIG9mIHRoZXNlIHBhcmVudC9jaGlsZCBzbmFwc2hvdHMsIHdoaWNoIGFtb3VudCB0byBhICJyZWRvIiByZWNvcmQgbGVhZGluZyBmcm9tIHRoZSBjdXJyZW50IHN0YXRlIG9mIHRoZSBWTSBiYWNrIHRvIHRoZSBvcmlnaW5hbC4AVk0gc25hcHNob3RzIHdoaWNoIGluY2x1ZGUgYm90aCBkYXRhIHZvbHVtZXMgYW5kIG1lbW9yeSBjYW4ndCBiZSBrZXB0IGlmIHlvdSBjaGFuZ2UgdGhlIFZNJ3Mgc2VydmljZSBvZmZlcmluZy4gQW55IGV4aXN0aW5nIFZNIHNuYXBzaG90cyBvZiB0aGlzIHR5cGUgd2lsbCBiZSBkaXNjYXJkZWQuAFZNd2FyZSBUb29scyBvciBYZW5TZXJ2ZXIgVG9vbHMgbXVzdCBiZSBpbnN0YWxsZWQgb24gdGhlIHZpcnR1YWwgbWFjaGluZS4AVmVydGljYWwgYW5kIGhvcml6b250YWwgYWxsb2NhdGlvbi4gVmVydGljYWwgYWxsb2NhdGlvbiBjb25zdW1lcyBhbGwgdGhlIHJlc291cmNlcyBvZiBhIGdpdmVuIGhvc3QgYmVmb3JlIGFsbG9jYXRpbmcgYW55IGd1ZXN0cyBvbiBhIHNlY29uZCBob3N0LiBUaGlzIHJlZHVjZXMgcG93ZXIgY29uc3VtcHRpb24gaW4gdGhlIGNsb3VkLiBIb3Jpem9udGFsIGFsbG9jYXRpb24gcGxhY2VzIGEgZ3Vlc3Qgb24gZWFjaCBob3N0IGluIGEgcm91bmQtcm9iaW4gZmFzaGlvbi4gVGhpcyBtYXkgeWllbGQgYmV0dGVyIHBlcmZvcm1hbmNlIHRvIHRoZSBndWVzdHMgaW4gc29tZSBjYXNlcy4AVmlldyBNZW1iZXJzIG9mIGFuIEFmZmluaXR5IEdyb3VwAFZpcnR1YWwgTWFjaGluZSBTbmFwc2hvdHMAVmlydHVhbCBtYWNoaW5lcyBhcmUgdXN1YWxseSBjcmVhdGVkIGZyb20gYSB0ZW1wbGF0ZS4gVXNlcnMgY2FuIGFsc28gY3JlYXRlIGJsYW5rIHZpcnR1YWwgbWFjaGluZXMuIEEgYmxhbmsgdmlydHVhbCBtYWNoaW5lIGlzIGEgdmlydHVhbCBtYWNoaW5lIHdpdGhvdXQgYW4gT1MgdGVtcGxhdGUuIFVzZXJzIGNhbiBhdHRhY2ggYW4gSVNPIGZpbGUgYW5kIGluc3RhbGwgdGhlIE9TIGZyb20gdGhlIENEL0RWRC1ST00uAFZpcnR1YWwgbWFjaGluZXMgY2FuIGJlIGluIHRoZSBmb2xsb3dpbmcgc3RhdGVzOgBXaGVuIHJlZ2lzdGVyaW5nIGEgbmV3IHRlbXBsYXRlLCB0aGUgYWRtaW5pc3RyYXRvciBvciB1c2VyIGNhbiBpbmRpY2F0ZSB3aGV0aGVyIHRvb2xzIGFyZSBpbnN0YWxsZWQgb24gdGhlIHRlbXBsYXRlLiBUaGlzIGNhbiBiZSBkb25lIHRocm91Z2ggdGhlIFVJIG9yIHVzaW5nIHRoZSB1cGRhdGVUZW1wbGF0ZSBBUEk7IG9yLABXaGVuIHNjYWxpbmcgbWVtb3J5IG9yIENQVSBmb3IgYSBMaW51eCBWTSBvbiBWTXdhcmUsIHlvdSBtaWdodCBuZWVkIHRvIHJ1biBzY3JpcHRzIGluIGFkZGl0aW9uIHRvIHRoZSBvdGhlciBzdGVwcyBtZW50aW9uZWQgYWJvdmUuIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgYEhvdCBhZGRpbmcgbWVtb3J5IGluIExpbnV4ICgxMDEyNzY0KSA8aHR0cDovL2tiLnZtd2FyZS5jb20vc2VsZnNlcnZpY2UvbWljcm9zaXRlcy9zZWFyY2guZG8/bGFuZ3VhZ2U9ZW5fVVMmY21kPWRpc3BsYXlLQyZleHRlcm5hbElkPTEwMTI3NjQ+YF8gaW4gdGhlIFZNd2FyZSBLbm93bGVkZ2UgQmFzZS4AV2hlbiB0aGlzIG9wdGlvbiBpcyB1c2VkIHdpdGggQ2xvdWRTdGFjay1wcm92aWRlZCBwcmltYXJ5IHN0b3JhZ2UsIHRoZSBxdWllc2NlIG9wZXJhdGlvbiBpcyBwZXJmb3JtZWQgYnkgdGhlIHVuZGVybHlpbmcgaHlwZXJ2aXNvciAoVk13YXJlIGlzIHN1cHBvcnRlZCkuIFdoZW4gdXNlZCB3aXRoIGFub3RoZXIgcHJpbWFyeSBzdG9yYWdlIHZlbmRvcidzIHBsdWdpbiwgdGhlIHF1aWVzY2Ugb3BlcmF0aW9uIGlzIHByb3ZpZGVkIGFjY29yZGluZyB0byB0aGUgdmVuZG9yJ3MgaW1wbGVtZW50YXRpb24uAFdoZW4geW91IHN1Ym1pdCBhIGR5bmFtaWMgc2NhbGluZyByZXF1ZXN0LCB0aGUgcmVzb3VyY2VzIHdpbGwgYmUgc2NhbGVkIHVwIG9uIHRoZSBjdXJyZW50IGhvc3QgaWYgcG9zc2libGUuIElmIHRoZSBob3N0IGRvZXMgbm90IGhhdmUgZW5vdWdoIHJlc291cmNlcywgdGhlIFZNIHdpbGwgYmUgbGl2ZSBtaWdyYXRlZCB0byBhbm90aGVyIGhvc3QgaW4gdGhlIHNhbWUgY2x1c3Rlci4gSWYgdGhlcmUgaXMgbm8gaG9zdCBpbiB0aGUgY2x1c3RlciB0aGF0IGNhbiBmdWxmaWxsIHRoZSByZXF1ZXN0ZWQgbGV2ZWwgb2YgQ1BVIGFuZCBSQU0sIHRoZSBzY2FsaW5nIG9wZXJhdGlvbiB3aWxsIGZhaWwuIFRoZSBWTSB3aWxsIGNvbnRpbnVlIHRvIHJ1biBhcyBpdCB3YXMgYmVmb3JlLgBXaW5kb3dzIDcgKHg4NiBhbmQgeDY0KQBXaW5kb3dzIDggKHg4NiBhbmQgeDY0KQBXaW5kb3dzIDguMSAoIkJsdWUiKSAoeDg2IGFuZCB4NjQpAFdpbmRvd3MgU2VydmVyIDIwMDggUjIAV2luZG93cyBTZXJ2ZXIgMjAxMgBXaW5kb3dzIFNlcnZlciAyMDEyIFIyIChzZXJ2ZXIgZXF1aXZhbGVudCBvZiAiQmx1ZSIpAFdpdGggdGhlIEFQSSBjb21tYW5kIHJlc2V0U1NIS2V5Rm9yVmlydHVhbE1hY2hpbmUsIGEgdXNlciBjYW4gc2V0IG9yIHJlc2V0IHRoZSBTU0gga2V5cGFpciBhc3NpZ25lZCB0byBhIHZpcnR1YWwgbWFjaGluZS4gQSBsb3N0IG9yIGNvbXByb21pc2VkIFNTSCBrZXlwYWlyIGNhbiBiZSBjaGFuZ2VkLCBhbmQgdGhlIHVzZXIgY2FuIGFjY2VzcyB0aGUgVk0gYnkgdXNpbmcgdGhlIG5ldyBrZXlwYWlyLiBKdXN0IGNyZWF0ZSBvciByZWdpc3RlciBhIG5ldyBrZXlwYWlyLCB0aGVuIGNhbGwgcmVzZXRTU0hLZXlGb3JWaXJ0dWFsTWFjaGluZS4AV29ya2luZyB3aXRoIElTT3MAV29ya2luZyB3aXRoIFZpcnR1YWwgTWFjaGluZXMAWGVuU2VydmVyIHRvb2xzIGFyZSBpbnN0YWxsZWQgaW4gdGhlIFZNIHRvIGdldCBtYXhpbXVtIHBlcmZvcm1hbmNlIG9uIFhlblNlcnZlciwgcmVnYXJkbGVzcyBvZiB0eXBlIG9mIHZHUFUgeW91IGFyZSB1c2luZy4gV2l0aG91dCB0aGUgb3B0aW1pemVkIG5ldHdvcmtpbmcgYW5kIHN0b3JhZ2UgZHJpdmVycyB0aGF0IHRoZSBYZW5TZXJ2ZXIgdG9vbHMgcHJvdmlkZSwgcmVtb3RlIGdyYXBoaWNzIGFwcGxpY2F0aW9ucyBydW5uaW5nIG9uIEdSSUQgdkdQVSB3aWxsIG5vdCBkZWxpdmVyIG1heGltdW0gcGVyZm9ybWFuY2UuAFllcwBZb3UgY2FuIGFsc28gb21pdCB0aGUgdGVtcGxhdGUgSUQgcGFyYW1ldGVyIGZyb20gdGhlIHJlc3RvcmVWaXJ0dWFsTWFjaGluZSBjYWxsLiBJbiB0aGlzIGNhc2UsIHRoZSBWTSdzIHJvb3QgZGlzayBpcyBkZXN0cm95ZWQgYW5kIHJlY3JlYXRlZCwgYnV0IGZyb20gdGhlIHNhbWUgdGVtcGxhdGUgb3IgSVNPIHRoYXQgd2FzIGFscmVhZHkgaW4gdXNlIGJ5IHRoZSBWTS4AWW91IGNhbiBhcHBlbmQgdGhlIGRpc3BsYXkgbmFtZSBvZiBhIGd1ZXN0IFZNIHRvIGl0cyBpbnRlcm5hbCBuYW1lLiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIGDigJxBcHBlbmRpbmcgYSBEaXNwbGF5IE5hbWUgdG8gdGhlIEd1ZXN0IFZN4oCZcyBJbnRlcm5hbCBOYW1l4oCdIDwjYXBwZW5kaW5nLWEtZGlzcGxheS1uYW1lLXRvLXRoZS1ndWVzdC12bXMtaW50ZXJuYWwtbmFtZT5gXy4AWW91IGNhbiBjcmVhdGUgYSBWTSB3aXRob3V0IHN0YXJ0aW5nIGl0LiBZb3UgY2FuIGRldGVybWluZSB3aGV0aGVyIHRoZSBWTSBuZWVkcyB0byBiZSBzdGFydGVkIGFzIHBhcnQgb2YgdGhlIFZNIGRlcGxveW1lbnQuIEEgcmVxdWVzdCBwYXJhbWV0ZXIsIHN0YXJ0Vk0sIGluIHRoZSBkZXBsb3lWbSBBUEkgcHJvdmlkZXMgdGhpcyBmZWF0dXJlLiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIHRoZSBEZXZlbG9wZXIncyBHdWlkZS4AWW91IGNhbiBub3QgZG8gZHluYW1pYyBzY2FsaW5nIGZvciBzeXN0ZW0gVk1zIG9uIFhlblNlcnZlci4AWW91IGNhbid0IG1ha2UgYSBWTSBzbmFwc2hvdCBhdCB0aGUgc2FtZSB0aW1lIGFzIHlvdSBhcmUgdGFraW5nIGEgdm9sdW1lIHNuYXBzaG90LgBZb3UgY2Fubm90IGNyZWF0ZSB0aGUgaW5zdGFuY2UgYnkgdXNpbmcgdGhlIEdVSSBhdCB0aGlzIHRpbWUgYW5kIGFzc29jaWF0ZSB0aGUgaW5zdGFuY2Ugd2l0aCB0aGUgbmV3bHkgY3JlYXRlZCBTU0gga2V5cGFpci4AWW91IG11c3QgbWFrZSBhIGNhbGwgdG8gdGhlIGNyZWF0ZVNTSEtleVBhaXIgYXBpIG1ldGhvZC4gWW91IGNhbiBlaXRoZXIgdXNlIHRoZSBDbG91ZFN0YWNrIFB5dGhvbiBBUEkgbGlicmFyeSBvciB0aGUgY3VybCBjb21tYW5kcyB0byBtYWtlIHRoZSBjYWxsIHRvIHRoZSBjbG91ZHN0YWNrIGFwaS4AWW91IHNob3VsZCB1c2Ugb25seSBDbG91ZFN0YWNrIHRvIGNyZWF0ZSBWTSBzbmFwc2hvdHMgb24gaG9zdHMgbWFuYWdlZCBieSBDbG91ZFN0YWNrLiBBbnkgc25hcHNob3RzIHRoYXQgeW91IG1ha2UgZGlyZWN0bHkgb24gdGhlIGh5cGVydmlzb3Igd2lsbCBub3QgYmUgdHJhY2tlZCBpbiBDbG91ZFN0YWNrLgBgQ2xvdWQtSW5pdCA8aHR0cHM6Ly9jbG91ZGluaXQucmVhZHRoZWRvY3Mub3JnL2VuL2xhdGVzdD5gXyBjYW4gYmUgdXNlIHRvIGFjY2VzcyBhbiBpbnRlcnByZXQgdXNlci1kYXRhIGZyb20gdmlydHVhbCBtYWNoaW5lcy4gQ2xvdWQtSW5pdCBiZSBpbnN0YWxsZWQgaW50byB0ZW1wbGF0ZXMgYW5kIGFsc28gcmVxdWlyZSBDbG91ZFN0YWNrIHBhc3N3b3JkIGFuZCBzc2hrZXkgc2NyaXB0cyAoOnJlZjpgYWRkaW5nLXBhc3N3b3JkLW1hbmFnZW1lbnQtdG8tdGVtcGxhdGVzYCBhbmQgYHVzaW5nIHNzaCBrZXlzIDx2aXJ0dWFsX21hY2hpbmVzLmh0bWwjdXNpbmctc3NoLWtleXMtZm9yLWF1dGhlbnRpY2F0aW9uPmBfKS4gVXNlciBwYXNzd29yZCBtYW5hZ2VtZW50IGFuZCBgYHJlc2V0U1NIS2V5Rm9yVmlydHVhbE1hY2hpbmVgYCBBUEkgYXJlIG5vdCB5ZXQgc3VwcG9ydGVkIGJ5IGNsb3VkLWluaXQuAGBgYXZhaWxhYmlsaXR5LXpvbmVgYC4gVGhlIFpvbmUgbmFtZQBgYGluc3RhbmNlLWlkYGAuIFRoZSBpbnN0YW5jZSBuYW1lIG9mIHRoZSBWTQBgYGxvY2FsLWhvc3RuYW1lYGAuIFRoZSBob3N0bmFtZSBvZiB0aGUgVk0AYGBsb2NhbC1pcHY0YGAuIFRoZSBndWVzdCBJUCBvZiB0aGUgVk0AYGBwdWJsaWMtaG9zdG5hbWVgYC4gVGhpcyBpcyB0aGUgc2FtZSBhcyBwdWJsaWMtaXB2NABgYHB1YmxpYy1pcHY0YGAuIFRoZSBmaXJzdCBwdWJsaWMgSVAgZm9yIHRoZSByb3V0ZXIuIChFLmcuIHRoZSBmaXJzdCBJUCBvZiBldGgyKQBgYHNlcnZpY2Utb2ZmZXJpbmdgYC4gQSBkZXNjcmlwdGlvbiBvZiB0aGUgVk1zIHNlcnZpY2Ugb2ZmZXJpbmcAYmFzZTY0IGZvcm1hdGVkOgBlbmFibGUuZHluYW1pYy5zY2FsZS52bTogU2V0IHRvIFRydWUgdG8gZW5hYmxlIHRoZSBmZWF0dXJlLiBCeSBkZWZhdWx0LCB0aGUgZmVhdHVyZSBpcyB0dXJuZWQgb2ZmLgBpLTx1c2VyXF9pZD4tPHZtXF9pZD4tPGluc3RhbmNlLm5hbWU+AGktPHVzZXJcX2lkPi08dm1cX2lkPi1kaXNwbGF5TmFtZQBzY2FsZS5yZXRyeTogSG93IG1hbnkgdGltZXMgdG8gYXR0ZW1wdCB0aGUgc2NhbGluZyBvcGVyYXRpb24uIERlZmF1bHQgPSAyLgB1c2VyLWRhdGEgZXhhbXBsZQB2R1BVAHZtLmluc3RhbmNlbmFtZS5mbGFnAHZtc25hcHNob3QuY3JlYXRlLndhaXQAdm1zbmFwc2hvdHMubWF4AHxiYXNpYy1kZXBsb3ltZW50LnBuZ3wAUHJvamVjdC1JZC1WZXJzaW9uOiBBcGFjaGUgQ2xvdWRTdGFjayBBZG1pbmlzdHJhdGlvbiBSVEQKUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IApQT1QtQ3JlYXRpb24tRGF0ZTogMjAxNi0wOC0yMiAxMzo1NSswMjAwClBPLVJldmlzaW9uLURhdGU6IDIwMTctMDMtMjIgMjI6MTUrMDEwMApMYW5ndWFnZS1UZWFtOiBGcmVuY2ggKGh0dHA6Ly93d3cudHJhbnNpZmV4LmNvbS9rZTRxcXEvYXBhY2hlLWNsb3Vkc3RhY2stYWRtaW5pc3RyYXRpb24tcnRkL2xhbmd1YWdlL2ZyLykKTUlNRS1WZXJzaW9uOiAxLjAKQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PXV0Zi04CkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQKR2VuZXJhdGVkLUJ5OiBCYWJlbCAyLjMuNApMYXN0LVRyYW5zbGF0b3I6IEFudG9pbmUgTGUgTW9ydmFuIDxhbnRvaW5lQGxlLW1vcnZhbi5jb20+Ckxhbmd1YWdlOiBmcgpYLUdlbmVyYXRvcjogUG9lZGl0IDEuOC4xMQoAKFBvdXIgbGVzIFZNcyBlbiBmb25jdGlvbm5lbWVudCB1bmlxdWVtZW50KS4gU2kgdm91cyB2b3VsZXogaW5jbHVyZSBsYSBtw6ltb2lyZSBkZSBsYSBWTSBkYW5zIGwnaW5zdGFudGFuw6ksIGNsaXF1ZXIgc3VyIGxhIGNhc2Ugw6AgY29jaGVyIE3DqW1vaXJlLiBDZWNpIHNhdXZlIGwnw6l0YXQgZHUgQ1BVIGV0IGRlIGxhIFZNIGRlIGxhIG1hY2hpbmUgdmlydHVlbGxlLiBTaSB2b3VzIG5lIHPDqWxlY3Rpb25uZXogcGFzIGNldHRlIGNhc2UgYWxvcnMgc2V1bCBsJ8OpdGF0IGNvdXJhbnQgZHUgZGlzcXVlIGRlIGxhIFZNIGVzdCBzYXV2ZWdhcmTDqS4gQ29jaGVyIGNldHRlIGNhc2UgcmVuZCBsYSBwcmlzZSBkZSBsJ2luc3RhbnRhbsOpIHBsdXMgbG9uZ3VlLgAoS1ZNIHNldWxlbWVudCkgU2kgdm91cyBjaG9pc2lzc2V6IHVuIE9TIGNvbXBhdGlibGUgUFYsIGxlcyBWTXMgY3LDqcOpZXMgZGVwdWlzIGNldCBJU08gYXVyb250IHVuIGRpc3F1ZSBzeXN0w6htZSBTQ1NJICh2aXJ0aW8pLiBTaSBsJ09TIG4nZXN0IHBhcyBjb21wYXRpYmxlIFBWLCBsZXMgVk1zIGF1cm9udCB1biBkaXNxdWUgc3lzdMOobWUgSURFLiBMZXMgdHlwZXMgZCdPUyBjb21wYXRpYmxlcyBQViBzb250IDoAKEtWTSkgTGEgVk0gbmUgZG9pdCBwYXMgdXRpbGlzZXIgdW4gZGlzcXVlIGRlIHN0b2NrYWdlIGxvY2FsLiAoU3VyIFhlblNlcnZlciBldCBWTXdhcmUsIGxhIG1pZ3JhdGlvbiDDoCBjaGF1ZCBkJ3VuZSBWTSBhdmVjIHVuIGRpc3F1ZSBsb2NhbCBlc3QgcG9zc2libGUgZ3LDomNlIGF1IHN1cHBvcnQgcGFyIENsb3VkU3RhY2sgZGUgWGVuTW90aW9uIGV0IHZNb3Rpb24pLgAoS1ZNKSBMJ2jDtHRlIGRlIGRlc3RpbmF0aW9uIGRvaXQgw6p0cmUgZGFucyBsZSBtw6ptZSBjbHVzdGVyIHF1ZSBsJ2jDtHRlIGQnb3JpZ2luZS4gKFN1ciBYZW5TZXJ2ZXIgZXQgVk13YXJlLCBsYSBtaWdyYXRpb24gw6AgY2hhdWQgZCd1bmUgVk0gZCd1biBjbHVzdGVyIMOgIHVuIGF1dHJlIGVzdCBwb3NzaWJsZSBncsOiY2UgYXUgc3VwcG9ydCBwYXIgQ2xvdWRTdGFjayBkZSBYZW5Nb3Rpb24gZXQgZGUgdk1vdGlvbikuAChTYXV0ZXIgY2V0dGUgw6l0YXBlIHNpIHZvdXMgYXZleiBhY3RpdsOpIGxlIGR5bmFtaWMgVk0gc2NhbGluZzsgdm9pciA6cmVmOmBjcHUtYW5kLW1lbW9yeS1zY2FsaW5nYC4pAChQcmlzIGVuIGNoYXJnZSBzdXIgVk13YXJlIGV0IFhlblNlcnZlcikAKFZNd2FyZSkgU2kgbGVzIHJlc3NvdXJjZXMgbmUgc29udCBwYXMgZGlzcG9uaWJsZXMgc3VyIGwnaMO0dGUgYWN0dWVsLCBsZSByZWRpbWVuc2lvbm5lbWVudCB2YSDDqWNob3VlciBzdXIgVk13YXJlIMOgIGNhdXNlIGQndW4gcHJvYmzDqG1lIGNvbm51IGRhbnMgbGVxdWVsIENsb3VkU3RhY2sgZXQgdkNlbnRlciBjYWxjdWxlIGRpZmbDqXJlbWVudCBsYSBjYXBhY2l0w6kgZGlzcG9uaWJsZS4gUG91ciBwbHVzIGQnaW5mb3JtYXRpb25zLCB2b2lyIGBodHRwczovL2lzc3Vlcy5hcGFjaGUub3JnL2ppcmEvYnJvd3NlL0NMT1VEU1RBQ0stMTgwOSA8aHR0cHM6Ly9pc3N1ZXMuYXBhY2hlLm9yZy9qaXJhL2Jyb3dzZS9DTE9VRFNUQUNLLTE4MDk+YF8uAChYZW5TZXJ2ZXIgc2V1bGVtZW50KSBTaSB2b3VzIHZvdWxleiBkw6ltYXJyZXIgZGVwdWlzIGNldCBJU08gZW4gbW9kZSBQViwgY2hvaXNpciBBdXRyZSBQViAoMzIgYml0KSBvdSBBdXRyZSBQViAoNjQtYml0KQAoWGVuU2VydmVyKSBMZXMgVk1zIFdpbmRvd3MgZm9uY3Rpb25uYW50IHNvdXMgWGVuU2VydmVyIG7DqWNlc3NpdGVudCBsZXMgcGlsb3RlcyBQViwgcXVpIHBldXZlbnQgw6p0cmUgZm91cm5pcyBhdmVjIGxlIG1vZMOobGUgb3UgYWpvdXTDqXMgYXByw6hzIHF1ZSBsYSBWTSBzb2l0IGNyw6nDqWUuIExlcyBwaWxvdGVzIFBWIHNvbnQgbsOpY2Vzc2FpcmVzIHBvdXIgZGVzIGZvbmN0aW9ucyBkZSBnZXN0aW9uIGVzc2VudGllbGxlcyBjb21tZSBsZSBtb250YWdlIGRlIHZvbHVtZXMgYWRkaXRpb25uZWxzIGV0IGQnaW1hZ2VzIElTTywgbGEgbWlncmF0aW9uIMOgIGNoYXVkLCBldCBsJ2FycsOqdCBwcm9wcmUuACoqQm9vdGFibGUqKiA6IEwnaW52aXTDqSBwZXV0LWlsIGTDqW1hcnJlciBvdSBub24gZGVwdWlzIGwnaW1hZ2UgSVNPLiBQYXIgZXhlbXBsZSwgdW4gSVNPIENlbnRPUyBlc3QgYm9vdGFibGUsIHVuIElTTyBNaWNyb3NvZnQgT2ZmaWNlIG4nZXN0IHBhcyBib290YWJsZS4AKipEZXNjcmlwdGlvbioqIDogQWZmaWNoZSBsZSB0ZXh0ZSBwb3VyIHVuZSBpbWFnZSBJU08uIFBhciBleGVtcGxlLCBDZW50T1MgNi4yIDY0LWJpdC4AKipOb20gZCdhZmZpY2hhZ2UqKiA6IEVudHJlciB1biBub3V2ZWF1IG5vbSBkJ2FmZmljaGFnZSBzaSB2b3VzIHZvdWxleiBjaGFuZ2VyIGxlIG5vbSBkZSBsYSBWTS4AKipUw6lsw6ljaGFyZ2VhYmxlKiogOiBDaG9pc2lyIE91aSBzaSBsJ0lTTyBwZXV0IMOqdHJlIHTDqWzDqWNoYXJnw6llLgAqKlNwb25zb3Jpc8OpZSoqIDogQ2hvaXNpciBPdWkgc2kgdm91cyB2b3VsZXogcXVlIGNldHRlIElTTyBzb2l0IG1pcyBlbiDDqXZpZGVuY2UgbG9ycyBkZSBsYSBzw6lsZWN0aW9uIHBhciBsZXMgdXRpbGlzYXRldXJzLiBMJ0lTTyB2YSBhcHBhcmHDrnRyZSBkYW5zIGxhIGxpc3RlIGRlcyBJU09zIHNwb25zb3Jpc8OpZXMuIFNldWwgdW4gYWRtaW5pc3RyYXRldXIgcGV1dCBtYXJxdWVyIHVuZSBJU08gY29tbWUgc3BvbnNvcmlzw6llLgAqKkdQVSBwYXNzdGhyb3VnaCoqIDogTGUgR1BVIHBhc3N0aHJvdWdoIHJlcHLDqXNlbnRlIHVuIEdQVSBwaHlzaXF1ZSBwb3V2YW50IMOqdHJlIGRpcmVjdGVtZW50IGFmZmVjdMOpIMOgIHVuZSBWTS4gVW4gR1BVIHBhc3N0aHJvdWdoIHBldXQgw6p0cmUgdXRpbGlzw6kgc3VyIHVuIGh5cGVydmlzZXVyIGVuIGNvbXBsw6ltZW50IGQndW4gR1JJRCB2R1BVLCBhdmVjIHF1ZWxxdWVzIHJlc3RyaWN0aW9ucyA6IFVuIEdSSUQgR1BVIHBoeXNpcXVlIHBldXQgaMOpYmVyZ2VyIGRlcyBHUklEIHZHUFVzIG91IMOqdHJlIHV0aWxpc8OpIGNvbW1lIHBhc3N0aHJvdWdoLCBtYWlzIHBhcyBsZXMgZGV1eCBlbiBtw6ptZSB0ZW1wcy4AKipHUklEIHZHUFUqKjogR1JJRCB2R1BVIHBlcm1ldCDDoCBwbHVzaWV1cnMgVk1zIGRlIHBhcnRhZ2VyIHVuIHNldWwgR1BVIHBoeXNpcXVlLiBMZXMgVk1zIGV4w6ljdXRlbnQgdW4gcGlsZSBkZSBwaWxvdGVzIE5WSURJQSBldCBvYnRpZW5uZSB1biBhY2PDqHMgZGlyZWN0IGF1IEdQVS4gTGVzIEdSSUQgR1BVcyBwaHlzaXF1ZXMgc29udCBjYXBhYmxlcyBkZSBzdXBwb3J0ZXIgcGx1c2lldXJzIHDDqXJpcGjDqXJpcXVlcyBHUFUgdmlydHVlbHMgKHZHUFVzKSBxdWkgcGV1dmVudCDDqnRyZSBkaXJlY3RlbWVudCBhc3NpZ27DqXMgw6AgZGVzIFZNcyBpbnZpdMOpZXMuIExlcyBWTXMgaW52aXTDqWVzIHV0aWxpc2VudCBsZXMgR1JJRCB2aXJ0dWFsIEdQVXMgZGUgbGEgbcOqbWUgZmHDp29ucyBxdSd1biBHUFUgcGh5c2lxdWUgcXVpIGEgw6l0w6kgcGFzc8OpIHBhciBsJ2h5cGVydmlzZXVyIDogdW4gcGlsb3RlIE5WSURJQSBjaGFyZ8OpIGRhbnMgbGEgVk0gaW52aXTDqWUgZm91cm5pdCB1biBhY2PDqHMgZGlyZWN0IGF1IEdQVSBwb3VyIGRlcyBhY2PDqHMgY3JpdGlxdWVzIGVuIHBlcmZvcm1hbmNlcyBldCDDoCB1bmUgaW50ZXJmYWNlIHBhcmF2aXJ0dWFsaXPDqWUgcG91ciBsZSBnZXN0aW9ubmFpcmUgZHUgR1JJRCBWaXJ0dWFsIEdQVSwgcXVpIGVzdCB1dGlsaXPDqSBwb3VyIGRlcyBvcMOpcmF0aW9ucyBkZSBnZXN0aW9uIHNhbnMgYmVzb2luIGRlIHBlcmZvcm1hbmNlLiBMZSBnZXN0aW9ubmFpcmUgTlZJRElBIEdSSUQgVmlydHVhbCBHUFUgcG91ciBYZW5TZXJ2ZXIgcydleMOpY3V0ZSBzdXIgZG9tMC4gQ2xvdWRTdGFjayB2b3VzIGZvdXJuaXQgbGVzIGZvbmN0aW9ubmFsaXTDqXMgc3VpdmFudGVzIDoAKipHcm91cGUqKiA6IEVudHJlciBsZSBub20gZHUgZ3JvdXBlIHBvdXIgbGEgVk0uACoqSW1wb3J0YW50KiogOiBBdHRlbmRyZSBxdWUgbCdJU08gc29pdCBmaW5pIGQnw6p0cmUgdMOpbMOpY2hhcmfDqS4gU2kgdm91cyBhdmFuY2V6IMOgIGxhIHTDomNoZSBzdWl2YW50ZSBldCB0ZW50ZXogZCd1dGlsaXNlciBtYWxncsOpIHRvdXQgbCdJU08sIGlsIHZhIGFwcGFyYcOudHJlIGVuIMOpY2hlYy4gTCdJU08gZW50aWVyIGRvaXQgw6p0cmUgZGlzcG9uaWJsZSBhdmFudCBxdWUgQ2xvdWRTdGFjayBwdWlzc2UgdHJhdmFpbGxlciBhdmVjLgAqKk5vbSoqIDogVW4gbm9tIGNvdXJ0IHBvdXIgbCdpbWFnZSBJU08uIFBhciBleGVtcGxlLCBDZW50T1MgNi4yIDY0LWJpdC4AKipUeXBlIGQnT1MqKiA6IFPDqWxlY3Rpb25uZXIgbGUgc3lzdMOobWUgZCdleHBsb2l0YXRpb24gZMOpc2lyw6kuACoqVHlwZSBkJ09TKiogOiBDZWxhIGFpZGUgQ2xvdWRTdGFjayBldCBsJ2h5cGVydmlzZXVyIMOgIGVmZmVjdHVlciBjZXJ0YWluZXMgb3DDqXJhdGlvbnMgZXQgZmFpcmUgZGVzIGh5cG90aMOoc2VzIHF1aSBhbcOpbGlvcmVudCBsZXMgcGVyZm9ybWFuY2VzIGRlIGwnaW52aXTDqS4gU8OpbGVjdGlvbm5lciB1biBkZXMgY2hvaXggc3VpdmFudHMuACoqUHVibGlxdWUqKiA6IENob2lzaXIgT3VpIHNpIGNldHRlIElTTyBkb2l0IMOqdHJlIGRpc3BvbmlibGUgcG91ciBsZXMgYXV0cmVzIHV0aWxpc2F0ZXVycy4AKipVUkwqKiA6IEwnVVJMIHF1aSBwb2ludGUgdmVycyBsJ2ltYWdlIElTTy4gTGUgc2VydmV1ciBkZSBnZXN0aW9uIGRvaXQgw6p0cmUgY2FwYWJsZSBkJ3kgYWNjw6lkZXIgdmlhIEhUVFAuIFNpIGJlc29pbiB2b3VzIHBvdXZleiBwbGFjZXIgbCdpbWFnZSBJU08gZGlyZWN0ZW1lbnQgc3VyIGxlIHNlcnZldXIgZGUgZ2VzdGlvbi4AKipab25lKiogOiBDaG9pc2lyIGxhIHpvbmUgZGFucyBsYXF1ZWxsZSB2b3VzIHZvdWxleiBxdWUgbCdJU08gc29pdCBkaXNwb25pYmxlLCBvdSBUb3V0ZXMgbGVzIHpvbmVzIHBvdXIgbGUgcmVuZHJlIGRpc3BvbmlibGUgcG91ciBsJ2Vuc2VtYmxlIGR1IENsb3VkU3RhY2suAFVuZSBvZmZyZSBkZSBzZXJ2aWNlIG5lIHBldXQgcGFzIMOqdHJlIGNyw6nDqWUgYXZlYyB1bmUgdmFsZXVyIGRlIEdQVSBxdWkgbidlc3QgcGFzIHN1cHBvcnTDqWUgcGFyIGwnaW50ZXJmYWNlIHV0aWxpc2F0ZXVyIGRlIENsb3VkU3RhY2suIFRvdXRlZm9pcywgdm91cyBwb3V2ZXogZmFpcmUgdW4gYXBwZWwgQVBJIHBvdXIgeSBhcnJpdmVyLgBVbiByZWTDqW1hcnJhZ2UgY29uc2lzdGUgZW4gdW4gYXJyw6p0IHN1aXZpIGQndW4gZMOpbWFycmFnZS4AVW5lIG1hY2hpbmUgdmlydHVlbGxlIGVuIGZvbmN0aW9ubmVtZW50IHBldXQgw6p0cmUgZW4gw6ljaGVjIMOgIGNhdXNlIGQndW4gcHJvYmzDqG1lIG1hdMOpcmllbCBvdSByw6lzZWF1LiBVbmUgbWFjaGluZSB2aXJ0dWVsbGUgZW4gw6ljaGVjIGVzdCBkYW5zIGwnw6l0YXQgc3RvcHDDqWUuAFVuIGV4ZW1wbGUgZGUgY29tbWFuZGUgY3VybCBwb3VyIGNyw6llciB1bmUgaW5zdGFuY2Ugc2VyYWl0IDoAVW4gYXJyw6p0IHZhIHRlbnRlciBkJ8OpdGVpbmRyZSBwcm9wcmVtZW50IGxlIHN5c3TDqG1lIGQnZXhwbG9pdGF0aW9uLCBjZSBxdWkgaW1wbGlxdWUgdHlwaXF1ZW1lbnQgZCdhcnLDqnRlciB0b3V0ZXMgbGVzIGFwcGxpY2F0aW9ucyBlbiBmb25jdGlvbm5lbWVudC4gU2kgbGUgc3lzdMOobWUgZCdleHBsb2l0YXRpb24gbmUgcGV1dCBwYXMgw6p0cmUgc3RvcHDDqSwgc29uIGV4dGluY3Rpb24gc2VyYSBmb3Jjw6llLiBDZWxhIGEgbGUgbcOqbWUgZWZmZXQgcXVlIGQnYXJyYWNoZXIgbGUgY29yZG9uIGQnYWxpbWVudGF0aW9uIGQndW5lIG1hY2hpbmUgcGh5c2lxdWUuAEEgcHJvcG9zIGR1IHRyYXZhaWwgYXZlYyBsZXMgTWFjaGluZXMgVmlydHVlbGxlcwBBY2PDqWRlciBhdXggZG9ubsOpZXMgdXRpbGlzYXRldXJzIGVuIGxhbmNlciBsYSBjb21tYW5kZSBzdWl2YW50ZSB1dGlsaXNhbnQgbGUgcsOpc3VsdGF0IGRlIGxhIGNvbW1hbmRlIHByw6ljw6lkZW50ZQBBY2PDqWRlciBhdXggZG9ubsOpZXMgdXRpbGlzYXRldXIgZGVwdWlzIGxhIFZNLiBVbmUgb2lzIHF1ZSBsJ2FkcmVzc2UgSVAgZHUgcm91dGV1ciB2aXJ0dWVsIGVzdCBjb25udWUsIHV0aWxpc2VyIGxlcyDDqXRhcGVzIHN1aXZhbnRlcyBwb3VyIHLDqWN1cMOpcmVyIGxlcyBtw6l0YS1kb25uw6llcyA6AEFjY8OpZGVyIGF1eCBWTXMuAEFqb3V0ZXIgbCdow7R0ZSBkYW5zIENsb3VkU3RhY2suIENsb3VkU3RhY2sgdsOpcmlmaWUgc2kgbCdow7R0ZSBhIGFjdGl2w6kgbGUgR1BVIG91IG5vbi4gQ2xvdWRTdGFjayBkZW1hbmRlIMOgIGwnaMO0dGUgZXN0IGTDqXRlY3RlIHNpIHNvbiBHUFUgZXN0IGFjdGlmLgBBam91dGVyIGRlcyBow7R0ZXMgWGVuU2VydmVyIGF2ZWMgY2FwYWNpdMOpIEdQVS92R1BVIGZvdXJuaXQgcGFyIGwnYWRtaW5pc3RyYXRldXIuAEFqb3V0ZXIgdW4gSVNPAEdyb3VwZXMgZCdhZmZpbml0w6kAR3JvdXBlcyBkJ2FmZmluaXTDqS4gRW4gZMOpZmluaXNzYW50IGRlcyBncm91cGVzIGQnYWZmaW5pdMOpcyBldCBlbiBsZXVyIGFzc2lnbmFudCBkZXMgVk0sIGwndXRpbGlzYXRldXIgb3UgbCdhZG1pbmlzdHJhdGV1ciBwZXV2ZW50IGluZmx1ZW5jZXIgKG1haXMgcGFzIGltcG9zZXIpIHF1ZWxsZXMgVk0gZGV2cmFpZW50IGZvbmN0aW9ubmVyIHN1ciBkZXMgaMO0dGVzIGRpc3RpbmN0cy4gQ2V0dGUgZm9uY3Rpb25uYWxpdMOpIGV4aXN0ZSBwb3VyIHBlcm1ldHRyZSBhdXggdXRpbGlzYXRldXJzIGRlIHNww6ljaWZpZXIgcXVlIGNlcnRhaW5lcyBWTXMgbmUgZG9pdmVudCBwYXMgw6p0cmUgc3VyIGxlIG3Dqm1lIGjDtHRlLgBBcHLDqHMgcXUndW5lIFZNIGFpdCDDqXTDqSBjcsOpw6llLCB2b3VzIHBvdXZleiBtb2RpZmllciBsZSBub20gZCdhZmZpY2hhZ2UsIGxlIHN5c3TDqG1lIGQnZXhwbG9pdGF0aW9uIGV0IGxlIGdyb3VwZSBhdXF1ZWwgZWxsZSBhcHBhcnRpZW50LgBBcHLDqHMgYXZvaXIgc2F1dmVnYXJkw6kgbGUgZmljaGllciBkZSBsYSBiaS1jbGVmcyBTU0gsIHZvdXMgZGV2ZXogY3LDqWVyIHVuZSBpbnN0YW5jZSBlbiB1dGlsaXNhbnQgbGUgbW9kw6hsZSBxdWUgdm91cyBhdmV6IGNyw6nDqSDDoCBsYSBgU2VjdGlvbiA1LjIuMSwg4oCcQ3LDqWVyIHVuIG1vZMOobGUgZCdpbnN0YW5jZSBxdWkgc3VwcG9ydGUgbGVzIGNsZWZzIFNTSOKAnSA8I2NyZWF0ZS1zc2gtdGVtcGxhdGU+YF9fLiBBc3N1cmV6IHZvdXMgZCd1dGlsaXNlciBsZSBtw6ptZSBub20gZGUgY2xlZiBTU0ggcXVlIHZvdXMgYXZleiBjcsOpw6kgw6AgbGEgYFNlY3Rpb24gNS4yLjIsIOKAnENyw6llciB1bmUgYmktY2xlZnMgU1NI4oCdIDwjY3JlYXRlLXNzaC1rZXlwYWlyPmBfXy4AQXV0b3Jpc2VyIHVuIHV0aWxpc2F0ZXVyIMOgIGFqb3V0ZXIgbGUgc3VwcG9ydCBHUFUvdkdQVSDDoCB1bmUgVk0gc2FucyBzdXBwb3J0IEdQVS92R1BVIGVuIGNoYW5nZWFudCBsJ29mZnJlIGRlIHNlcnZpY2UgZXQgdmljZS12ZXJzYS4AQWx0ZXJuYXRpdmVtZW50LCB2b3VzIHBvdXZleiBjaG9pc2lyIGRlIGTDqXBsb3llciB1bmUgVk0gc2FucyBzdXBwb3J0IEdQVSwgZXQgcGx1cyB0YXJkIGNoYW5nZXIgbCdvZmZyZSBkZSBzZXJ2aWNlLiBWb3VzIHBvdXZleiByw6lhbGlzZXIgY2VsYSBwYXIgdW5lIG1pc2Ugw6Agam91ciBob3JzLWxpZ25lIDogYXJyw6p0ZXIgbGEgVk0sIG1ldHRyZSDDoCBqb3VyIGwnb2ZmcmUgZGUgc2VydmljZSBwb3VyIGNlbGxlIGF2ZWMgdkdQVSwgcHVpcyByZWTDqW1hcnJlciBsYSBWTS4gRGFucyBjZSBjYXMsIENsb3VkU3RhY2sgb2J0aWVudCB1bmUgbGlzdGUgZGVzIGjDtHRlcyBxdWkgb250IGFzc2V6IGRlIGNhcGFjaXTDqSBwb3VyIGjDqWJlcmdlciBsYSBWTS4gUydpbCB5IGEgdW4gaMO0dGUgYXZlYyBzdXBwb3J0IEdQVSwgQ2xvdWRTdGFjayByw6lvcmdhbmlzZSBjZXR0ZSBsaXN0ZSBkJ2jDtHRlIGV0IHBsYWNlIGxlcyBow7R0ZXMgYXZlYyBzdXBwb3J0IEdQVSDDoCBsYSBmaW4gZGUgbGEgbGlzdGUuAFRvdXRlcyBsZXMgVk0gcXVpIHNvbnQgbWVtYnJlcyBkdSBncm91cGUgZCdhZmZpbml0w6kgdm9udCDDqnRyZSBkaXNzb2Npw6llcyBkZSBjZSBncm91cGUuIExlcyBhbmNpZW5zIG1lbWJyZXMgZHUgZ3JvdXBlIHZvbnQgY29udGludWVyIGRlIGZvbmN0aW9ubmVyIG5vcm1hbGVtZW50IHN1ciBsZXMgaMO0dGVzIGVuIGNvdXJzLCBtYWlzIHNpIGxlcyBWTSBzb250IHJlZMOpbWFycsOpZXMsIGVsbGVzIG5lIHZvbnQgcGx1cyBzdWl2cmUgbGVzIHLDqGdsZXMgZCdhbGxvY2F0aW9uIGRlIGxldXIgYW5jaWVuIGdyb3VwZSBkJ2FmZmluaXTDqS4ATidpbXBvcnRlIHF1ZWwgYXV0cmUgR3JvdXBlIEdQVQBUb3VzIGxlcyB1dGlsaXNhdGV1cnMgbmUgcGV1dmVudCBhY2PDqWRlciBxdSfDoCBsZXVycyBtYWNoaW5lcyB2aXJ0dWVsbGVzLiBMJ2FkbWluaXN0cmF0ZXVyIHBldXQgYWNjw6lkZXIgw6AgdG91dGUgbGVzIFZNcyBxdWkgZm9uY3Rpb25uZW50IGRhbnMgbGUgY2xvdWQuAEFqb3V0ZXIgbGUgbm9tIGQnYWZmaWNoYWdlIGF1IG5vbSBpbnRlcm5lIGRlIGxhIFZNIGludml0w6llAEFzc2lnbmVyIHVuZSBub3V2ZWxsZSBWTSDDoCB1biBncm91cGUgZCdhZmZpbml0w6kAQXNzaWduZXIgdW4gR1BVL3ZHUFUgw6AgZGVzIFZNcyBpbnZpdMOpZXMuAEFzc2lnbmVyIGRlcyBWTXMgw6AgZGVzIGjDtHRlcwDDgCB0b3V0IG1vbWVudCwgY2hhcXVlIGluc3RhbmNlIGRlIG1hY2hpbmUgdmlydHVlbGxlIHMnZXjDqWN1dGUgc3VyIHVuIHNldWwgaMO0dGUuIENvbW1lbnQgQ2xvdWRTdGFjayBkw6l0ZXJtaW5lLXQnaWwgc3VyIHF1ZWwgaMO0dGUgcGxhY2VyIHVuZSBWTSA/IElsIGV4aXN0ZSBwbHVzaWV1cnMgZmHDp29ucyA6AEF0dGFjaGVyIHVuZSBJU08gw6AgdW5lIFZNAEFsbG9jYXRpb24gYXV0b21hdGlxdWUgZCdow7R0ZSBwYXIgZMOpZmF1dC4gQ2xvdWRTdGFjayBwZXV0IGF1dG9tYXRpcXVlbWVudCBjaG9pc2lyIGwnaMO0dGUgbGUgcGx1cyBhcHByb3ByacOpIHBvdXIgZXjDqWN1dGVyIGNoYXF1ZSBtYWNoaW5lIHZpcnR1ZWxsZS4AQXNzdXJlei12b3VzIHF1ZSBsZSBtYXTDqXJpZWwgcXVlIHZvdXMgYXZleiB2b3VzIHBlcm1ldCBkZSBkw6ltYXJyZXIgbCdvZmZyZSBkZSBzZXJ2aWNlIHPDqWxlY3Rpb25uw6llLgBBc3N1cmV6LXZvdXMgcXVlIGNlIHF1aSBzdWl0IGVzdCBpbnN0YWxsw6kgc3VyIGNoYXF1ZSBWTSA6AFBhcmNlIHF1ZSBjaGFxdWUgdXRpbGlzYXRldXIgZHUgY2xvdWQgYSBzZXMgcHJvcHJlcyBjbGVmcyBTU0gsIHVuIHV0aWxpc2F0ZXVyIGR1IGNsb3VkIG5lIHBldXQgcGFzIHNlIGNvbm5lY3RlciBzdXIgbGVzIGluc3RhbmNlcyBkJ3VuIGF1dHJlIHV0aWxpc2F0ZXVyIGR1IGNsb3VkIHRhbnQgcXUnaWxzIG5lIHBhcnRhZ2VudCBwYXMgbGV1cnMgZmljaGllcnMgZGUgY2xlZnMgU1NILiBFbiBVdGlsaXNhbnQgdW5lIHNldWxlIHBhaXJlIGRlIGNsZWZzIFNTSCwgdm91cyBwb3V2ZXogZ8OpcmVyIHBsdXNpZXVycyBpbnN0YW5jZXMuAEF2YW50IGRlIGNvbnRpbnVlciBhdmVjIGxhIGNvbmZpZ3VyYXRpb24sIHByZW5kcmUgZW4gY29tcHRlIGNlIHF1aSBzdWl0IDoAQXZhbnQgZGUgcHJvY8OpZGVyLCBzJ2Fzc3VyZXIgcXVlIHZvdXMgYXZleiBsZXMgY29uZGl0aW9ucyBwcsOpYWxhYmxlcyByZXF1aXNlcyA6AE1laWxsZXVyZXMgcHJhdGlxdWVzIHBvdXIgbGVzIG1hY2hpbmVzIHZpcnR1ZWxsZXMARW4gZMOpZmluaXNzYW50IGRlcyBncm91cGVzIGQnYWZmaW5pdMOpcyBldCBlbiBsZXVyIGFzc2lnbmFudCBkZXMgVk0sIGwndXRpbGlzYXRldXIgb3UgbCdhZG1pbmlzdHJhdGV1ciBwZXV2ZW50IGluZmx1ZW5jZXIgKG1haXMgcGFzIGltcG9zZXIpIHF1ZWxsZXMgVk0gZGV2cmFpZW50IGZvbmN0aW9ubmVyIHN1ciBkZXMgaMO0dGVzIGRpc3RpbmN0cy4gQ2V0dGUgZm9uY3Rpb25uYWxpdMOpIGV4aXN0ZSBwb3VyIHBlcm1ldHRyZSBhdXggdXRpbGlzYXRldXJzIGRlIHNww6ljaWZpZXIgcXVlIGNlcnRhaW5lcyBWTXMgbmUgZG9pdmVudCBwYXMgw6p0cmUgc3VyIGxlIG3Dqm1lIGjDtHRlLiBDZWxhIHNlcnQgcG91ciBhdWdtZW50ZXIgbGEgdG9sw6lyYW5jZSBkZSBwYW5uZS4gU2kgdW4gaMO0dGUgZXN0IGVuIMOpY2hlYywgbGVzIGF1dHJlcyBWTSBvZmZyYW50IGxlIG3Dqm1lIHNlcnZpY2UgKHBhciBleGVtcGxlIGwnaMOpYmVyZ2VtZW50IGR1IHNpdGUgaW50ZXJuZXQgZGUgbCd1dGlsaXNhdGV1cikgZXN0IHRvdWpvdXJzIGFjdGlmIGV0IGZvbmN0aW9ubmUgc3VyIGwnYXV0cmUgaMO0dGUuAENoYW5nZW1lbnQgZGUgcHVpc3NhbmNlIENQVSBldCBkZSBNw6ltb2lyZSBwb3VyIGxlcyBWTSBlbiBmb25jdGlvbm5lbWVudABDZW50T1MgNS4zAENlbnRPUyA1LjQAQ2VudE9TIDUuNQBDaGFuZ2VyIGRlIGdyb3VwZSBkJ2FmZmluaXTDqSBwb3VyIHVuZSBWTSBleGlzdGFudGUAQ2hhbmdlciBsJ2ltYWdlIGRlIGJhc2UgZCd1bmUgVk0uAENoYW5nZXIgbCdvZmZyZSBkZSBzZXJ2aWNlIGQndW5lIFZNLgBDaGFuZ2VyIGxlIG5vbSBkZSBsYSBWTSwgZGUgbCdPUyBvdSBkdSBHcm91cGUAQ2hvaXNpc3NleiBsYSBWTSBxdWUgdm91cyB2b3VsZXogc3VwcHJpbWVyLgBDaG9pc2lyIGxhIFZNIHF1ZSB2b3VzIHZvdWxleiBtaWdyZXIuAENob2lzaXIgbGEgVk0gYXZlYyBsYXF1ZWxsZSB2b3VzIHZvdWxleiB0cmF2YWlsbGVyLgBDaG9pc2lzc2V6IGxhIG1hY2hpbmUgdmlydHVlbGxlIGF2ZWMgbGFxdWVsbGUgdm91cyBzb3VoYWl0ZXogdHJhdmFpbGxlci4AQ2xpcXVlciBzdXIgQWpvdXRlciBpbWFnZSBJU08AQ2xpcXVlciBzdXIgQWpvdXRlciB1bmUgaW5zdGFuY2UuAENsaXF1ZXIgc3VyIEFqb3V0ZXIgbm91dmVhdSBncm91cGUgZCdhZmZpbml0w6kuIERhbnMgbGEgYm9pdGUgZGUgZGlhbG9ndWUsIHJlbXBsaXIgbGVzIGNoYW1wcyBzdWl2YW50cyA6AENsaXF1ZXIgc3VyIEFwcGxpcXVlci4AQ2xpcXVlciBzdXIgU3VwcHJpbWVyIGxlIGdyb3VwZSBkJ2FmZmluaXTDqS4AQ2xpcXVlciBzdXIgTW9kaWZpZXIuIHxFZGl0QnV0dG9uLnBuZ3wAQ2xpcXVleiBzdXIgSW5zdGFuY2VzLCBwdWlzIGNob2lzaXIgbGUgbm9tIGQndW5lIFZNIGVuIGNvdXJzIGQnZXjDqWN1dGlvbi4AQ2xpcXVlciBzdXIgSW5zdGFuY2VzLgBDbGlxdWV6IHN1ciBPSy4AQ2xpcXVleiBzdXIgRW52b3llciBldCB2b3RyZSBWTSBzZXJhIGNyw6nDqWUgZXQgZMOpbWFycsOpZS4AQ2xpcXVlciBzdXIgVm9pciBJbnN0YW5jZXMuIExlcyBtZW1icmVzIGR1IGdyb3VwZSBzb250IGxpc3TDqXMuAENsaXF1ZXIgc3VyIFZvaXIgaW5zdGFudGFuw6lzIGRlIGxhIFZNLgBDbGlxdWVyIHN1ciBsZSBib3V0b24gUmF0dGFjaGVyIGltYWdlIElTTyB8aXNvLnBuZ3wAQ2xpcXVlciBzdXIgbGUgYm91dG9uIENoYW5nZXIgQWZmaW5pdMOpLiB8Y2hhbmdlLWFmZmluaXR5LWJ1dHRvbi5wbmd8AENsaXF1ZXIgc3VyIGxlIGJvdXRvbiBNb2RpZmllciBvZmZyZSBkZSBzZXJ2aWNlLiB8Q2hhbmdlU2VydmljZUJ1dHRvbi5wbmd8AENsaXF1ZXIgc3VyIGxlIGJvdXRvbiBTdXBwcmltZXIgbCdpbnN0YW5jZS4gfERlc3Ryb3lpbnN0YW5jZS5wbmd8AENsaXF1ZXIgc3VyIGxhIGNhc2Ugw6AgY29jaGVyIERpbWVuc2lvbm5lbWVudCBEeW5hbWlxdWUuAENsaXF1ZXIgc3VyIGxlIGJvdXRvbiBNb2RpZmllci4AQ2xpcXVlciBzdXIgbGUgYm91dG9uIE1pZ3JlciBJbnN0YW5jZS4gfE1pZ3JhdGVpbnN0YW5jZS5wbmd8AENsaXF1ZXIgc3VyIGxlIGJvdXRvbiBBcnLDqnRlciBsJ2luc3RhbmNlIHBvdXIgc3RvcHBlciBsYSBWTS4gfFN0b3BCdXR0b24ucG5nfABDbGlxdWVyIHN1ciBsZSBib3V0b24gUHJlbmRyZSB1biBpbnN0YW50YW7DqS4gfFZNU25hcHNob3RCdXR0b24ucG5nfABDbGlxdWVyIHN1ciBsZSBib3V0b24gVm9pciBsYSBjb25zb2xlIHxjb25zb2xlLWljb24ucG5nfC4AQ2xpcXVlciBzdXIgbGUgbm9tIGRlIGxhIFZNIHBvdXIgbGFxdWVsbGUgdm91cyB2b3VsZXogcHJlbmRyZSB1biBpbnN0YW50YW7DqS4AQ2xpcXVlciBzdXIgbGUgbm9tIGRlIGxhIFZNIGF2ZWMgbGFxdWVsbGUgdm91cyB2b3VsZXogdHJhdmFpbGxlci4AQ2xpcXVlciBzdXIgbGUgbm9tIGR1IGdyb3VwZSBxdWkgdm91cyBpbnTDqXJlc3NlLgBDbG91ZFN0YWNrIGZvdXJuaXQgw6lnYWxlbWVudCB1bmUgaW50ZXJmYWNlIHBsdWdnYWJsZSBwb3VyIGFqb3V0ZXIgZGUgbm91dmVhdXggYWxsb2NhdGV1cnMuIENlcyBhbGxvY2F0ZXVycyBwZXJzb25uYWxpc8OpcyBwZXV2ZW50IGZvdXJuaXIgbidpbXBvcnRlIHF1ZWxsZSBzdHJhdMOpZ2llIHF1ZSBsJ2FkbWluaXN0cmF0ZXVyIGTDqXNpcmUuAENsb3VkU3RhY2sgcGV1dCBkw6lwbG95ZXIgZGVzIFZNcyBpbnZpdMOpcyBhdmVjIGRlcyBjYXBhY2l0w6lzIGVuIFByb2Nlc3NldXIgR3JhcGhpcXVlIChHcmFwaGljcyBQcm9jZXNzaW5nIFVuaXQgLSBHUFUpIG91IFByb2Nlc3NldXIgR3JhcGhpcXVlIFZpcnR1ZWwgKFZpcnR1YWwgR3JhcGhpY3MgUHJvY2Vzc2luZyBVbml0IC0gdkdQVSkgc3VyIGxlcyBow7R0ZXMgWGVuU2VydmVyLiBBdSBtb21lbnQgZHUgZMOpcGxvaWVtZW50IGRlIFZNIG91IHBsdXMgdGFyZCwgdm91cyBwb3V2ZXogYXNzaWduZXIgdW4gR1BVIHBoeXNpcXVlIChjb25udSBjb21tZSBHUFUtcGFzc3Rocm91Z2gpIG91IHVuZSBwYXJ0aWUgZGUgbGEgY2FydGUgR1BVIHBoeXNpcXVlICh2R1BVKSDDoCB1bmUgVk0gaW52aXTDqWUgZW4gY2hhbmdlYW50IGQnb2ZmcmUgZGUgc2VydmljZS4gQXZlYyBjZXR0ZSBjYXBhY2l0w6ksIGxlcyBWTXMgZm9uY3Rpb25uYW50IHNvdXMgQ2xvdWRTdGFjayByw6lwb25kZW50IGF1eCBleGlnZW5jZXMgZGUgdHJhaXRlbWVudHMgZ3JhcGhpcXVlcyBpbnRlbnNpZnMgZ3LDomNlIMOgIGxhIHB1aXNzYW5jZSBkZSBjYWxjdWwgw6lsZXbDqWUgZGVzIEdQVS92R1BVLCBldCBsZXMgdXRpbGlzYXRldXJzIGRlIENsb3VkU3RhY2sgcGV1dmVudCBleMOpY3V0ZXIgZGVzIGFwcGxpY2F0aW9ucyBtdWx0aW3DqWRpYSByaWNoZXMsIGNvbW1lIEF1dG8tQ0FELCBkb250IGlscyBqb3Vpc3NlbnQgZGVwdWlzIGxldXIgYnVyZWF1IHN1ciB1biBlbnZpcm9ubmVtZW50IHZpcnR1YWxpc8OpLiBDbG91ZFN0YWNrIHV0aWxpc2UgbGUgc3VwcG9ydCBYZW5TZXJ2ZXIgcG91ciBsZXMgc8OpcmllcyBOVklESUEgR1JJRCBLZXBsZXIgMSBldCAyIGFmaW4gZCdleMOpY3V0ZXIgZGVzIFZNcyBhdmVjIEdQVSAvIHZHUFUuIExlcyBjYXJ0ZXMgTlZJRElBIEdSSUQgcGVybWV0dGVudCBsZSBwYXJ0YWdlIGQndW5lIHNldWxlIGNhcnRlIEdQVSBwb3VyIHBsdXNpZXVycyBWTSBlbiBjcsOpYW50IGRlcyB2R1BVIHBvdXIgY2hhcXVlIFZNLiBBdmVjIGxhIHRlY2hub2xvZ2llIHZHUFUsIGxlcyBjb21tYW5kZXMgZ3JhcGhpcXVlcyBkZSBjaGFxdWUgVk0gc29udCB0cmFuc21pc2VzIGRpcmVjdGVtZW50IGF1IEdQVSBkw6lkacOpIHNvdXMtamFjZW50LCBzYW5zIGwnaW50ZXJ2ZW50aW9uIGRlIGwnaHlwZXJ2aXNldXIuIENlbGEgcGVybWV0IGF1IG1hdMOpcmllbCBHUFUgZCfDqnRyZSBkw6ljb3Vww6kgZW4gcMOpcmlvZGUgZXQgcGFydGFnw6kgc3VyIHBsdXNpZXVycyBtYWNoaW5lcyB2aXJ0dWVsbGVzLiBMZXMgaMO0dGVzIFhlblNlcnZlciB1dGlsaXNlbnQgbGVzIGNhcnRlcyBHUFUgZGUgbGEgbWFuacOocmUgc3VpdmFudGUgOgBDbG91ZFN0YWNrIG5lIHBldXQgcGFzIGRpc3Rpbmd1ZXIgdW5lIFZNIGludml0w6llIHF1aSBhIMOpdMOpIHN0b3Bww6llIHBhciBsJ3V0aWxpc2F0ZXVyIChjb21tZSBhdmVjIGxhIGNvbW1hbmRlICJzaHV0ZG93biIgc291cyBMaW51eCkgZCd1bmUgVk0gcXVpIHMnZXN0IHN0b3Bww6llIGRlIG1hbmnDqHJlIGluYXR0ZW5kdWUuIFNpIHVuZSBWTSBhdmVjIGxhIEhBIGFjdGl2w6llIGVzdCBzdG9wcMOpZSBkZXB1aXMgbCdpbnTDqXJpZXVyIGRlIGxhIFZNLCBDbG91ZFN0YWNrIHZhIGxhIHJlZMOpbWFycmVyLiBQb3VyIHN0b3BwZXIgdW5lIFZNIGF2ZWMgSEEgYWN0aXbDqWUsIHZvdXMgZGV2ZXogbGUgZmFpcmUgZGVwdWlzIGwnaW50ZXJmYWNlIENsb3VkU3RhY2sgb3UgbCdBUEkuAENsb3VkU3RhY2sgbmUgcmVzdHJlaW50IHBhcyBsZSBkw6lwbG9pZW1lbnQgZGUgVk1zIGF2ZWMgR1BVIGF2ZWMgZGVzIHR5cGVzIGQnT1MgcXVpIG5lIHNvbnQgcGFzIHN1cHBvcnTDqXMgcGFyIFhlblNlcnZlciBwb3VyIGxlcyBmb25jdGlvbm5hbGl0w6lzIGRlIEdQVS92R1BVLiBMZSBkw6lwbG9pZW1lbnQgcG91cnJhaXQgw6p0cmUgdW4gc3VjY8OocyBldCBsZSBHUFUvdkdQVSBzZXJhaXQgYXVzc2kgYWxsb3XDqSBhdXggVk1zIDsgdG91dGVmb2lzLCDDoCBjYXVzZSBkZXMgcGlsb3RlcyBtYW5xdWFudCBkZSBsJ09TIGludml0w6ksIGxhIFZNIG5lIHNlcmFpdCBwYXMgZW4gbWVzdXJlIGRlIHRpcmVyIHBhcnRpIGRlcyByZXNzb3VyY2VzIEdQVS4gUGFyIGNvbnPDqXF1ZW50LCBpbCBlc3QgcmVjb21tYW5kw6kgbid1dGlsaXNlciBsZXMgb2ZmcmVzIGRlIHNlcnZpY2VzIGF2ZWMgR1BVIHVuaXF1ZW1lbnQgYXZlYyBsZXMgT1MgaW52aXTDqXMgc3VwcG9ydMOpcy4AQ2xvdWRTdGFjayBzdWl0IGxhIHPDqXF1ZW5jZSBkJ29ww6lyYXRpb25zIGNpLWRlc3NvdXMgcG91ciBmb3VybmlyIGxlIHN1cHBvcnQgR1BVL3ZHUFUgYXV4IFZNcyA6AENsb3VkU3RhY2sgY29uc2VydmUgbCfDqXRhdCBkdSBkaXNxdWUgZHVyIGRlIGxhIG1hY2hpbmUgdmlydHVlbGxlIGp1c3F1J8OgIGNlIHF1ZSBsYSBtYWNoaW5lIHNvaXQgZMOpdHJ1aXRlLgBDbG91ZFN0YWNrIGZvdXJuaXQgdW4gYWNjw6hzIMOgIHVuZSBBUEkgcG91ciBhdHRhY2hlciBwbHVzIGRlIDJLQiBkZSBkb25uw6llcyBhcHLDqHMgZW5jb2RhZ2UgZW4gYmFzZTY0IMOgIHVuZSBWTSBkw6lwbG95w6llLiBFbiB1dGlsaXNhbnQgdW5lIHJlcXXDqnRlIFBPU1QgSFRUUCAodmlhIFBPU1QgYm9keSksIHZvdXMgcG91dmV6IGVudm95ZXIganVzcXUnw6AgMzJLIGRlIGRvbm7DqWVzIGFwcsOocyBlbmNvZGFnZSBlbiBiYXNlNjQuIExlcyBWTSBkw6lwbG95w6llcyBvbnQgYWluc2kgYWNjw6hzIGF1eCBtw6l0YS1kb25uw6llcyBkJ2luc3RhbmNlIHZpYSBsZSByb3V0ZXVyIHZpcnR1ZWwuAENsb3VkU3RhY2sgZm91cm5pdCBhdXggYWRtaW5pc3RyYXRldXJzIHVuIGNvbnRyw7RsZSBjb21wbGV0IGR1IGN5Y2xlIGRlIHZpZSBkZSB0b3V0ZXMgbGVzIFZNIGludml0w6llcyBleMOpY3V0w6llcyBkYW5zIGxlIGNsb3VkLiBDbG91ZFN0YWNrIGZvdXJuaXQgZGlmZsOpcmVudGVzIG9ww6lyYXRpb25zIGRlIGdlc3Rpb24gZGVzIGludml0w6lzIGF1eCB1dGlsaXNhdGV1cnMgZmluYXV4IGV0IGF1eCBhZG1pbmlzdHJhdGV1cnMuIExlcyBWTXMgcGV1dmVudCDDqnRyZSBzdG9wcMOpZXMsIGTDqW1hcnLDqWVzLCByZWTDqW1hcnLDqWVzIGV0IGTDqXRydWl0ZXMuAENsb3VkU3RhY2sgcmVjaGVyY2hlIHBvdXIgZGVzIGjDtHRlcyBkaXNwb25pYmxlcyBwb3VyIGxhIG1pZ3JhdGlvbiBkZSBsYSBWTSwgcXVpIHNhdGlzZm9udCBsZXMgcHLDqS1yZXF1aXMgR1BVLiBTaSBsJ2jDtHRlIGVzdCBkaXNwb25pYmxlLCBpbCBhcnLDqnRlIGxhIFZNIHN1ciBsJ2jDtHRlIGNvdXJhbnQgZXQgZWZmZWN0dWUgbGEgdMOiY2hlIGRlIG1pZ3JhdGlvbiBkZSBsYSBWTS4gU2kgbGEgbWlncmF0aW9uIGRlIGxhIFZNIGVzdCB1biBzdWNjw6hzLCBsYSBjYXBhY2l0w6kgR1BVIHJlc3RhbnRlIGVzdCBtaXNlIMOgIGpvdXIgcG91ciBsZXMgZGV1eCBow7R0ZXMgZW4gY29uc8OpcXVlbmNlLgBDbG91ZFN0YWNrIHN1cHBvcnRlIGxlcyBJU09zIGV0IGxldXIgYXR0YWNoZW1lbnQgYXV4IFZNcyBpbnZpdMOpZXMuIFVuIElTTyBlc3QgdW4gZmljaGllciBlbiBsZWN0dXJlIHNldWxlIHF1aSBhIHVuIHN5c3TDqG1lIGRlIGZpY2hpZXIgZGUgdHlwZSBJU08vQ0QtUk9NLiBMZXMgdXRpbGlzYXRldXJzIHBldXZlbnQgdXBsb2FkZXIgbGV1cnMgcHJvcHJlcyBJU09zIGV0IGxlcyBtb250ZXIgc3VyIGxldXJzIFZNcyBpbnZpdMOpZXMuAENsb3VkU3RhY2sgbmUgdmEgcGFzIHbDqXJpZmllciBwb3VyIHMnYXNzdXJlciBxdWUgbGVzIG5vdXZlbGxlcyBxdWFudGl0w6lzIGRlIENQVSBldCBkZSBSQU0gc29udCBjb21wYXRpYmxlcyBhdmVjIGwnT1MgZm9uY3Rpb25uYW50IHN1ciBsYSBWTS4ATm9tIGRlIGwnb3B0aW9uIGRlIGNvbmZpZ3VyYXRpb24AQ29uZmlndXJlciBsZSBkaW1lbnNpb25uZW1lbnQgZHluYW1pcXVlIGRlIENQVSBldCBkZSBSQU0AQ29uZmlndXJhdGlvbiBkZXMgaW5zdGFudGFuw6lzIGRlIFZNAENvbnRpbnVlciBhdmVjIHVuZSBkZXMgb3DDqXJhdGlvbnMgc3VpdmFudGVzIDoAQ29waWVyIGxlIGZpY2hpZXIgZGFucyAvZXRjL2luaXQuZABDb3BpZXIgbGEgZG9ubsOpZSBkZSBsYSBjbGVmIGRhbnMgdW4gZmljaGllci4gTGUgZmljaGllciByZXNzZW1ibGUgw6AgY2VjaSA6AENyw6llciB1bmUgb2ZmcmUgZGUgY2FsY3VsIGF2ZWMgc3VwcG9ydCBHUFUvdkdQVSA6IHBvdXIgcGx1cyBkJ2luZm9ybWF0aW9ucywgdm9pciAgYENyw6llciB1bmUgbm91dmVsbGUgb2ZmcmUgZGUgY2FsY3VsIDwjY3JlYXRpbmctYS1uZXctY29tcHV0ZS1vZmZlcmluZz5gX18uLgBDcsOpZXIgdW5lIG5vdXZlbGxlIGluc3RhbmNlIGVuIHV0aWxpc2FudCBsZSBtb2TDqGxlIGZvdXJuaXQgcGFyIENsb3VkU3RhY2suAENyw6llciB1biBtb2TDqGxlIGQnaW5zdGFuY2UgcXVpIHN1cHBvcnRlIGxlcyBjbGVmcyBTU0gAQ3LDqWVyIHVuIGZpY2hpZXIgZGUgY29uZmlndXJhdGlvbiBkZSBzb3VyY2UgZGUgZG9ubsOpZXMgOiBgYC9ldGMvY2xvdWQvY2xvdWQuY2ZnLmQvOTlfY2xvdWRzdGFjay5jZmdgYABDcsOpZXIgY2hhcXVlIFZNIGRlcHVpcyB1biBtb2TDqGxlIHF1aSBhIGTDqWrDoCBsZXMgb3V0aWxzIGQnaW5zdGFsbMOpcyA7IG91LABDcsOpZXIgbGEgVk0gY29tbWUgZCdoYWJpdHVkZSBjb21tZSBkw6ljcml0IGRhbnMgYOKAnENyw6llciBkZXMgVk1z4oCdIDx2aXJ0dWFsX21hY2hpbmVzLmh0bWwjY3JlYXRpbmctdm1zPmBfLiBEYW5zIGwnYXNzaXN0YW50IEFqb3V0ZXIgdW5lIGluc3RhbmNlLCBpbCB5IGEgdW4gbm91dmVsIG9uZ2xldCBBZmZpbml0w6kgZGFucyBsZXF1ZWwgdm91cyBwb3V2ZXogc8OpbGVjdGlvbm5lciBsZSBncm91cGUgZCdhZmZpbml0w6kuAENyw6llciB1bmUgbWFjaGluZSB2aXJ0dWVsbGUgdmlhIGwnQVBJIDogYGRlcGxveVZpcnR1YWxNYWNoaW5lIDxodHRwOi8vY2xvdWRzdGFjay5hcGFjaGUub3JnL2RvY3MvYXBpL2FwaWRvY3MtNC41L3VzZXIvZGVwbG95VmlydHVhbE1hY2hpbmUuaHRtbD5gXyBlbiB1dGlsaXNhbnQgbGUgcGFyYW3DqHRyZSBgYHVzZXJkYXRhPWBgIHBvdXIgaW5jbHVyZSBsZXMgZG9ubsOpZXMgdXRpbGlzYXRldXJzIGZvcm1hdMOpZXMgZW4gYGJhc2U2NCA8aHR0cHM6Ly93d3cuYmFzZTY0ZW5jb2RlLm9yZy8+YF8uAENyw6llciBkZXMgVk1zAENyw6llciB1bmUgb2ZmcmUgZGUgY2FsY3VsIGF2ZWMgY2FwYWNpdMOpIEdQVS92R1BVLgBDcsOpZXIgdW5lIG5vdXZlYXUgZ3JvdXBlIGQnYWZmaW5pdMOpAENyw6llciB1bmUgaW5zdGFuY2UAQ3LDqWVyIHVuIG1vZMOobGUgZCdpbnN0YW5jZSBxdWkgc3VwcG9ydGUgbGVzIGNsZWZzIFNTSABDcsOpZXIgdW5lIGJpLWNsZWZzIFNTSABEZWJpYW4gR05VL0xpbnV4AFN1cHByaW1lciB1biBncm91cGUgZCdhZmZpbml0w6kAU3VwcHJlc3Npb24gZGVzIFZNAEVuIGZvbmN0aW9uIGRlIGNlIHF1ZSB2b3VzIHZvdWxleiBmYWlyZSA6AERlcGxveWVyIHVuZSBWTSBhdmVjIHN1cHBvcnQgR1BVL3ZHUFUgZW4gc8OpbGVjdGlvbm5hbnQgdW5lIG9mZnJlIGRlIHNlcnZpY2UuIENsb3VkU3RhY2sgZMOpY2lkZSBxdWVsIGjDtHRlIGNob2lzaXIgcG91ciBsZSBkw6lwbG9pZW1lbnQgZGUgbGEgVk0gc2Vsb24gbGVzIGNyaXTDqHJlcyA6AETDqXBsb3llciB1bmUgVk0uAExlIGTDqXBsb2llbWVudCBkZSBWTXMgYXZlYyBsYSBjYXBhY2l0w6kgZGUgR1BVL3ZHUFUgbidlc3QgcGFzIHN1cHBvcnTDqSBzaSBsZXMgaMO0dGVzIG5lIGRpc3Bvc2VudCBwYXMgYXNzZXogZGUgY2FwYWNpdMOpIEdQVS4ARMOpcGxveWVyIHVuZSBWTSBhdmVjIGNhcGFjaXTDqSBHUFUvdkdQVS4ARGVzY3JpcHRpb24ARGVzY3JpcHRpb24uIE4naW1wb3J0ZSBxdWVsIHRleHRlIGTDqXNpcsOpIHBvdXIgcmVuc2VpZ25lciBzdXIgbGUgYnV0IGRlIGNlIGdyb3VwZS4ARMOpdHJ1aXJlIHVuZSBWTS4ARMOpdHJ1aXJlIHVuZSBWTSBhdmVjIGNhcGFjaXTDqSBHUFUvdkdQVS4AUMOpcmlwaMOpcmlxdWUATGEgZMOpc2FjdGl2YXRpb24gZHUgR1BVIGF1IG5pdmVhdSBkdSBjbHVzdGVyIG4nZXN0IHBhcyBzdXBwb3J0w6kuAE5vbSBkJ2FmZmljaGFnZQBOb20gYWZmaWNow6kgLSBsZSBub20gYWZmaWNow6kgZGFucyBsJ2ludGVyZmFjZSB3ZWIgQ2xvdWRTdGFjay4gUGV1dCDDqnRyZSBmaXjDqSBwYXIgbCd1dGlsaXNhdGV1ci4gUHJlbmQgcGFyIGTDqWZhdXQgbGUgbm9tIGRlIGwnaW5zdGFuY2UuAFTDqWzDqWNoYXJnZXIgbGUgc2NyaXB0IENsb3VkU3RhY2sgZGVwdWlzIGBUaGUgU1NIIEtleSBHZW4gU2NyaXB0IDxodHRwOi8vc291cmNlZm9yZ2UubmV0L3Byb2plY3RzL2Nsb3Vkc3RhY2svZmlsZXMvU1NIJTIwS2V5JTIwR2VuJTIwU2NyaXB0Lz5gXyBkYW5zIGxhIG5vdXZlbGxlIGluc3RhbmNlIHF1ZSB2b3VzIGF2ZXogY3LDqcOpZS4ATGUgZGltZW5zaW9ubmVtZW50IGR5bmFtaXF1ZSBkZSBDUFUgZXQgZGUgUkFNIHBldXQgw6p0cmUgdXRpbGlzw6kgZGFucyBsZXMgY2FzIHN1aXZhbnRzIDoATGUgZGltZW5zaW9ubmVtZW50IGR5bmFtaXF1ZSBuJ2VzdCBwYXMgc3VwcG9ydMOpLiBUb3V0ZWZvaXMsIHZvdXMgcG91dmV6IGNob2lzaXIgZGUgZMOpcGxveWVyIHVuZSBWTSBzYW5zIEdQVSBzdXBwb3J0LCBldCB1biBwZXUgcGx1cyB0YXJkLCB2b3VzIHBvdXZleiBjaGFuZ2VyIGwnb2ZmcmUgZGUgc2VydmljZSBwb3VyIG1ldHRyZSDDoCBqb3VyIHZlcnMgdW5lIGF2ZWMgdkdQVS4gVm91cyBwb3V2ZXogcsOpYWxpc2VyIGNlbGEgcGFyIHVuZSBtaXNlIMOgIGpvdXIgaG9ycy1saWduZSA6IGFycsOqdGVyIGxhIFZNLCBtZXR0cmUgw6Agam91ciBsJ29mZnJlIGRlIHNlcnZpY2UgcG91ciBjZWxsZSBhdmVjIHZHUFUsIHB1aXMgcmVkw6ltYXJyZXIgbGEgVk0uAENoYXF1ZSBub3V2ZWxsZSBWTSBzZSB2b2l0IGF0dHJpYnVlciB1bmUgYWRyZXNzZSBJUCBQdWJsaXF1ZS4gUXVhbmQgbGEgVk0gZXN0IGTDqW1hcnLDqWUsIENsb3VkU3RhY2sgY3LDqWUgYXV0b21hdGlxdWVtZW50IHVuIE5BVCBzdGF0aWMgZW50cmUgY2V0dGUgYWRyZXNzZSBJUCBwdWJsaWMgZXQgbCdhZHJlc3NlIElQIHByaXbDqWUgZGUgbGEgVk0uAFByaW9yaXTDqSBwYXIgbCd1dGlsaXNhdGV1ciBmaW5hbC4gTGVzIHV0aWxpc2F0ZXVycyBuZSBwZXV2ZW50IHBhcyBjb250csO0bGVyIGV4YWN0ZW1lbnQgcXVlbCBow7R0ZSB2YSBhY2N1ZWlsbGlyIHVuZSBpbnN0YW5jZSBkZSBWTSBkb25uw6llLCBtYWlzIGlscyBwZXV2ZW50IHNww6ljaWZpZXIgdW5lIHpvbmUgcG91ciBsYSBWTS4gQ2xvdWRTdGFjayBlc3QgYWxvcnMgcmVzdHJlaW50IGQnYWxsb3VlciBsYSBWTSBzZXVsZW1lbnQgc3VyIHVuIGRlcyBow7R0ZXMgZGUgY2V0IHpvbmUuAFMnYXNzdXJlciBxdWUgbCdow7R0ZSBYZW5TZXJ2ZXIgZXN0IHByw6p0IGF2ZWMgdW4gR1BVIGluc3RhbGzDqSBldCBjb25maWd1csOpLiBQb3VyIHBsdXMgZCdpbmZvcm1hdGlvbnMsIHZvaXIgYENpdHJpeCAzRCBHcmFwaGljcyBQYWNrIDxodHRwczovL3d3dy5jaXRyaXguY29tL2dvL3ByaXZhdGUvdmdwdS5odG1sPmBfLgBBc3N1cmV6IHZvdXMgcXVlIHZvdXMgYWp1c3RleiBjZXMgdmFsZXVycyBwb3VyIGNvcnJlc3BvbmRyZSDDoCB2b3MgYmVzb2lucy4gU2kgdm91cyBmYcOudGVzIHVuIGFwcGVsIMOgIGwnQVBJIGRlcHVpcyB1biBzZXJ2ZXVyIGRpZmbDqXJlbnQsIHZvcyBVUkwvUE9SVCBzZXJvbnQgZGlmZsOpcmVudHMgZXQgdm91cyBhdXJleiBiZXNvaW4gZCd1dGlsaXNlciBsZXMgY2xlZnMgZCdBUEkuAENoYXF1ZSBWTSBlc3QgY3LDqcOpZSBkZXB1aXMgdW5lIGltYWdlIGRlIGJhc2UsIHF1aSBlc3Qgc29pdCB1biBtb2TDqGxlIHNvaXQgdW4gSVNPIGF5YW50IMOpdMOpIGNyw6nDqSBldCBzdG9ja8OpIGRhbnMgQ2xvdWRTdGFjay4gQSBsYSBmb2lzIGxlcyBhZG1pbmlzdHJhdGV1cnMgZXQgbGVzIHV0aWxpc2F0ZXVycyBmaW5hdXggcGV1dmVudCBjcsOpZXIgZXQgbW9kaWZpZXIgbGVzIG1vZMOobGVzLCBJU09zIGV0IFZNcy4AQ2hhcXVlIFZNIGludml0w6llIGEgdW4gbm9tIGludGVybmUuIEwnaMO0dGUgdXRpbGlzZSBsZSBub20gaW50ZXJuZSBwb3VyIGlkZW50aWZpZXIgbGVzIFZNIGludml0w6llcy4gQ2xvdWRTdGFjayB2b3VzIGRvbm5lIHVuZSBvcHRpb24gcG91ciBmb3VybmlyIHVuZSBWTSBpbnZpdMOpZSBhdmVjIHVuIG5vbSBkJ2FmZmljaGFnZS4gVm91cyBwb3V2ZXogZMOpZmluaXIgY2Ugbm9tIGQnYWZmaWNoYWdlIGVuIHRhbnQgcXVlIG5vbSBpbnRlcm5lIGFmaW4gcXVlIGxlIHZDZW50ZXIgcHVpc3NlIGwndXRpbGlzZXIgcG91ciBpZGVudGlmaWVyIGxhIFZNIGludml0w6llLiBVbiBub3V2ZWF1IHBhcmFtw6h0cmUgZ2xvYmFsLCB2bS5pbnN0YW5jZW5hbWUuZmxhZywgYSBtYWludGVuYW50IMOpdMOpIGFqb3V0w6kgcG91ciByZW5kcmUgcG9zc2libGUgY2V0dGUgZm9uY3Rpb25uYWxpdMOpLgBGYWxzZQBGZWRvcmEgMTAARmVkb3JhIDExAEZlZG9yYSAxMgBGZWRvcmEgMTMARmVkb3JhIDkAUG91ciBxdWUgbGVzIFZNIGZvbmN0aW9ubmVudCBjb21tZSBhdHRlbmR1IGV0IGZvdXJuaXNzZW50IHVuIGV4Y2VsbGVudCBzZXJ2aWNlLCBzdWl2ZXogY2VzIGNvbnNlaWxzLgBQb3VyIFhlblNlcnZlciwgaW5zdGFsbGVyIGxlcyBwaWxvdGVzIFBWIGV0IGxlcyBvdXRpbHMgWGVuIHN1ciBjaGFxdWUgVk0uIENlbGEgdmEgcmVuZHJlIGRpc3BvbmlibGUgbGEgbWlncmF0aW9uIGEgY2hhdWQgZXQgbCdhcnLDqnQgcHJvcHJlIGRlcyBpbnZpdMOpcy4gTGVzIG91dGlscyBYZW4gc29udCByZXF1aXMgcG91ciBxdWUgbGVzIGF1Z21lbnRhdGlvbnMgZGUgQ1BVIGV0IGRlIFJBTSBmb25jdGlvbm5lbnQgw6AgY2hhdWQuAFBhciBleGVtcGxlLCBkZXB1aXMgdW4gT1MgTGludXgsIGxhbmNlciA6AFBhciBleGVtcGxlLCBmYWlyZSB1biBhcHBlbCBkZXB1aXMgbGUgc2VydmV1ciBDbG91ZFN0YWNrIHBvdXIgY3LDqWVyIHVuZSBiaS1jbGVmcyBTU0ggYXBwZWzDqWUgICJrZXlwYWlyLWRvYyIgcG91ciBsZSBjb21wdGUgYWRtaW5pc3RyYXRldXIgZHUgZG9tYWluZSByYWNpbmUgOgBQYXIgZXhlbXBsZSwgc3VwcG9zZXogcXUnaWwgZXhpc3RlIHVuIG1vZMOobGUgYmFzw6kgc3VyIHVuIHN5c3TDqG1lIGQnZXhwbG9pdGF0aW9uIHBhcnRpY3VsaWVyLCBldCBxdWUgbCfDqWRpdGV1ciBkZSBsJ09TIHNvcnRlIHVuZSBtaXNlIMOgIGpvdXIgbG9naWNpZWxsZS4gTCdhZG1pbmlzdHJhdGV1ciBvdSBsJ3V0aWxpc2F0ZXVyIHBldXQgbmF0dXJlbGxlbWVudCBhcHBsaXF1ZXIgbGEgbWlzZSDDoCBqb3VyIGV0IHMnYXNzdXJlciBxdWUgbGVzIFZNcyBleGlzdGFudGVzIGTDqW1hcnJlbnQgZW4gbCd1dGlsaXNhbnQuIFF1J2lsIHMnYWdpc3NlIGQndW5lIG1pc2Ugw6Agam91ciBsb2dpY2llbGxlIG91IG5vbiwgaWwgZXN0IGF1c3NpIHBvc3NpYmxlIGRlIHNpbXBsZW1lbnQgY2hhbmdlciBsZSBtb2TDqGxlIGNvdXJhbnQgZCd1bmUgVk0gcG91ciB1biBhdXRyZSBtb2TDqGxlIGTDqXNpcsOpLgBQb3VyIHBsdXMgZCdpbmZvcm1hdGlvbnMgc3VyIGxhIGNyw6lhdGlvbiBkJ3VuZSBub3V2ZWxsZSBpbnN0YW5jZSwgdm9pcgBQb3VyIGRlcyBlbnZpcm9ubmVtZW50cyBzw6ljdXJpc8OpcyBldCBwb3VyIHMnYXNzdXJlciBxdWUgbCfDqXRhdCBkZSBsYSBWTSBuJ2VzdCBwYXMgcGVyc2lzdGFudCBhcHLDqHMgZGVzIHJlZMOpbWFycmFnZXMsIHZvdXMgcG91dmV6IHLDqWluaXRpYWxpc2VyIGxlIGRpc3F1ZSBzeXN0w6htZS4gUG91ciBwbHVzIGQnaW5mb3JtYXRpb25zLCB2b2lyIGDigJxSw6lpbml0aWFsaXNlciBsZXMgVk0gcG91ciB1biBub3V2ZWF1IGRpc3F1ZSBzeXN0w6htZSBhdSByZWTDqW1hcnJhZ2XigJ0gPHN0b3JhZ2UuaHRtbCNyZXNldC12bS10by1uZXctcm9vdC1kaXNrLW9uLXJlYm9vdD5gXy4AUG91ciBkZXMgcmFpc29ucyBkZSBzw6ljdXJpdMOpLCBsZSBub20gaW50ZXJuZSBkZSBsYSBWTSBuJ2VzdCB2aXNpYmxlIHF1ZSBwYXIgbCdhZG1pbmlzdHJhdGV1ciByb290LgBQb3VyIHZTcGhlcmUsIGluc3RhbGxlciBsZXMgT3V0aWxzIFZNd2FyZSBzdXIgY2hhcXVlIFZNLiBDZWxhIHZhIHJlbmRyZSBkaXNwb25pYmxlIGxhIHZpc3VhbGlzYXRpb24gZGUgbGEgY29uc29sZSBkZSBtYW5pw6hyZSBjb3JyZWN0ZS4gTGVzIE91dGlscyBWTXdhcmUgc29udCByZXF1aXMgcG91ciBxdWUgbGVzIGF1Z21lbnRhdGlvbnMgZGUgQ1BVIGV0IGRlIFJBTSBmb25jdGlvbm5lbnQgw6AgY2hhdWQuIABEw6hzIGxvcnMsIHZvdXMgcG91dmV6IGNsaXF1ZXIgc3VyIGxlIG5vbSBkZSBuJ2ltcG9ydGUgcXVlbGxlIFZNIGRlIGxhIGxpc3RlIHBvdXIgYWNjw6lkZXIgw6AgdG91cyBzZXMgZMOpdGFpbHMgZXQgY29udHLDtGxlcy4ARGVwdWlzIGxhIGxpc3RlIGRlcyBow7R0ZXMgZGlzcG9uaWJsZXMsIGNob2lzaXIgY2VsdWkgdmVycyBsZXF1ZWwgdm91cyBkw6lzaXJleiBkw6lwbGFjZXIgbGEgVk0uAEdQVQBMZXMgcmVzc291cmNlcyBHUFUgc29udCBhdXRvbWF0aXF1ZW1lbnQgbGliw6lyw6llcyBsb3JzcXVlIHZvdXMgc3RvcHBleiBsYSBWTS4gVW5lIGZvaXMgcXVlIGxhIGRlc3RydWN0aW9uIGRlIGxhIFZNIGEgYWJvdXRpdCwgQ2xvdWRTdGFjayB2YSBlZmZlY3R1ZXIgdW4gYXBwZWwgw6AgcmVzc291cmNlcyDDoCBsJ2jDtHRlIHBvdXIgcXUnaWwgcsOpY3Vww6hyZSBsYSBjYXBhY2l0w6kgR1BVIHLDqXN1bHRhbnRlIHN1ciBsYSBjYXJ0ZSBldCBtZXR0cmEgbGEgYmFzZSBkZSBkb25uw6llcyDDoCBqb3VyIGVuIGNvbnPDqXF1ZW5jZS4AUHJvY2Vzc3VzIGQnYWZmZWN0YXRpb24gZGVzIEdQVS92R1BVAExhIGZvbmN0aW9ubmFsaXTDqSBHUFUvdkdQVSBlc3Qgc3VwcG9ydMOpZSBwYXIgbGVzIHN5c3TDqG1lcyBkJ2V4cGxvaXRhdGlvbnMgaW52aXTDqXMgSFZNIHN1aXZhbnQgOiBwb3VyIHBsdXMgZCdpbmZvcm1hdGlvbnMsIHZvaXIgYENpdHJpeCAzRCBHcmFwaGljcyBQYWNrIDxodHRwczovL3d3dy5jaXRyaXguY29tL2dvL3ByaXZhdGUvdmdwdS5odG1sPmBfLgBHUklEIEsxMDAAR1JJRCBLMTIwUQBHUklEIEsxNDBRAEdSSUQgSzIwMABHUklEIEsyMjBRAEdSSUQgSzI0MFEAR1JJRCBLMjYwUQBEb25uZXIgbGVzIHBlcm1pc3Npb25zIG7DqWNlc3NhaXJlcyBhdSBzY3JpcHQgOgBHcm91cGUgZGVzIEdLMTA0R0wgW0dSSUQgSzJdIEdQVXMgZGUgY2hleiBOVklESUEgQ29ycG9yYXRpb24AR3JvdXBlIGRlcyBHSzEwN0dMIFtHUklEIEsxXSBHUFVzIGRlIGNoZXogTlZJRElBIENvcnBvcmF0aW9uAExlcyBWTSBpbnZpdMOpZXMgcGV1dmVudCDDqnRyZSBjb25maWd1csOpZXMgcG91ciDDqnRyZSBIYXV0ZW1lbnQgRGlzcG9uaWJsZSAoSEEgLSBIaWdobHkgQXZhaWxhYmxlKS4gVW5lIFZNIGRvbnQgbGEgSEEgZXN0IGFjdGl2w6llIGVzdCBzdXBlcnZpc8OpZSBwYXIgbGUgc3lzdMOobWUuIFNpIGxlIHN5c3TDqG1lIGTDqXRlY3RlIHF1ZSBsYSBWTSBlc3Qgw6AgbCdhcnLDqnQsIGlsIHZhIHRlbnRlciBkZSByZWTDqW1hcnJlciBsYSBWTSwgc2kgcG9zc2libGUgc3VyIHVuIGjDtHRlIGRpZmbDqXJlbnQuIFBvdXIgcGx1cyBkJ2luZm9ybWF0aW9ucywgdm9pciBBY3RpdmVyIGxhIEhBIHN1ciBsZXMgTWFjaGluZXMgVmlydHVlbGxlcy4ATGVzIFZNIGludml0w6llcyBvbnQgdW4gbm9tIGV0IHVuIGdyb3VwZS4gTGVzIG5vbXMgZGVzIFZNIGV0IGxlcyBncm91cGVzIHNvbnQgdHJhbnNwYXJlbnRzIHBvdXIgQ2xvdWRTdGFjayBldCBzb250IHV0aWxlcyBhdXggdXRpbGlzYXRldXJzIGZpbmF1eCBwb3VyIG9yZ2FuaXNlciBsZXVycyBWTS4gQ2hhcXVlIFZNIHBldXQgYXZvaXIgdHJvaXMgbm9tcyBkaWZmw6lyZW50cyDDoCB1dGlsaXNlciBkYW5zIGRpZmbDqXJlbnRzIGNvbnRleHRlcy4gU2V1bHMgZGV1eCBkZSBjZXMgbm9tcyBzb250IGNvbnRyw7Rsw6lzIHBhciBsJ3V0aWxpc2F0ZXVyIDoATCdow7R0ZSBhIGRlcyBjYXJ0ZXMgaW5zdGFsbMOpcy4gRGFucyBsZSBjYXMgZHUgdkdQVSwgQ2xvdWRTdGFjayB2w6lyaWZpZSBzaSBsZXMgY2FydGVzIG9udCBsZSB0eXBlIGRlIHN1cHBvcnQgdkdQVSByZXF1aXMgZXQgc3VmZmlzYW1tZW50IGRlIGNhcGFjaXTDqSBkaXNwb25pYmxlLiBOZSBwYXMgYXZvaXIgZCdow7R0ZXMgYXBwcm9wcmnDqXMgcsOpc3VsdGUgZW4gdW5lIGV4Y2VwdGlvbiBJbnN1ZmZpY2llbnRTZXJ2ZXJDYXBhY2l0eS4ARXRpcXVldHRlcyBkJ2jDtHRlLiBMJ2FkbWluaXN0cmF0ZXVyIHBldXQgYXNzaWduZXIgZGVzIMOpdGlxdWV0dGVzIMOgIGRlcyBow7R0ZXMuIENlcyDDqXRpcXVldHRlcyBwZXV2ZW50IMOqdHJlIHV0aWxpc8OpZXMgcG91ciBzcMOpY2lmaWVyIHF1ZWwgaMO0dGUgZGV2cmFpdCDDqnRyZSB1dGlsaXPDqSBwYXIgdW5lIFZNLiBMJ2FkbWluaXN0cmF0ZXVyIGRlIENsb3VkU3RhY2sgZMOpY2lkZSBzJ2lsIGTDqWZpbml0IGRlcyDDqXRpcXVldHRlcyBkJ2jDtHRlcyBwdWlzIGNyw6llIHVuZSBvZmZyZSBkZSBzZXJ2aWNlIHV0aWxpc2FudCBjZXMgw6l0aXF1ZXR0ZXMgZXQgbGEgcHJvcG9zZSBhdXggdXRpbGlzYXRldXJzLgBIb3N0bmFtZSBzdXIgbGEgVk0AQ29tbWVudCBkaW1lbnNpb25uZXIgZHluYW1pcXVlbWVudCBsZSBDUFUgZXQgbGEgUkFNAExlcyBpbWFnZXMgSVNPIHBldXZlbnQgw6p0cmUgc3RvY2vDqWVzIGRhbnMgbGUgc3lzdMOobWUgZXQgcmVuZHVlcyBhY2Nlc3NpYmxlcyBhdmVjIHVuIG5pdmVhdSBkZSBzZWNyZXQgc2ltaWxhaXJlIGF1eCBtb2TDqGxlcy4gTGVzIGltYWdlcyBJU08gc29udCBjbGFzc2lmacOpZXMgY29tbWUgw6l0YW50IGJvb3RhYmxlIG91IG5vbiBib290YWJsZS4gVW5lIGltYWdlIElTTyBib290YWJsZSBjb250aWVudCB1bmUgaW1hZ2UgZCd1biBPUy4gQ2xvdWRTdGFjayBhdXRvcmlzZSB1biB1dGlsaXNhdGV1ciDDoCBkw6ltYXJyZXIgdW5lIFZNIGludml0w6llIGRlcHVpcyB1bmUgaW1hZ2UgSVNPLiBMZXMgdXRpbGlzYXRldXJzIHBldXZlbnQgYXVzc2kgYXR0YWNoZXIgZGVzIGltYWdlcyBJU09zIMOgIGxldXJzIFZNcyBpbnZpdMOpZXMuIFBhciBleGVtcGxlLCBjZWxhIHBlcm1ldCBsJ2luc3RhbGxhdGlvbiBkZXMgcGlsb3RlcyBQViBzb3VzIFdpbmRvd3MuIExlcyBpbWFnZXMgSVNPIG5lIHNvbnQgcGFzIHNww6ljaWZpcXVlcyDDoCB1biBoeXBlcnZpc2V1ci4ATGVzIElTT3Mgc29udCB0w6lsw6ljaGFyZ8OpcyBkZXB1aXMgdW5lIFVSTC4gSFRUUCBlc3QgbGUgcHJvdG9jb2xlIHByaXMgZW4gY2hhcmdlLiBVbmUgZm9pcyBxdWUgbCdJU08gZXN0IGRpc3BvbmlibGUgdmlhIEhUVFAgc3DDqWNpZmlleiB1bmUgVVJMIGRlIHTDqWzDqWNoYXJnZW1lbnQgdGVsbGUgcXVlIGh0dHA6Ly9teS53ZWIuc2VydmVyL2ZpbGVuYW1lLmlzby4ARGVzIElTT3MgcGV1dmVudCDDqnRyZSBwdWJsaXF1ZXMgb3UgcHJpdsOpcywgY29tbWUgbGVzIG1vZMOobGVzLiBMZXMgSVNPcyBuZSBzb250IHBhcyBzcMOpY2lmaXF1ZXMgw6AgdW4gaHlwZXJ2aXNldXIuIEFpbnNpIHVuIGludml0w6kgc3VyIHZTcGhlcmUgcGV1dCBtb250ZXIgZXhhY3RlbWVudCBsYSBtw6ptZSBpbWFnZSBxdWUgbCdpbnZpdMOpIHN1ciBLVk0uAFNpIHVuZSBWTSBwb3Nzw6hkZSBkZXMgaW5zdGFudGFuw6lzIHN0b2Nrw6lzLCB2b3VzIG5lIHBvdXJyZXogcGFzIGF0dGFjaGVyIGRlIG5vdXZlYXV4IHZvbHVtZXMgw6AgbGEgVk0gb3Ugc3VwcHJpbWVyIGRlcyB2b2x1bWVzIGV4aXN0YW50cy4gU2kgdm91cyBtb2RpZmlleiBsZXMgdm9sdW1lcyBzdXIgbGEgVk0sIGlsIGRldmllbmRyYWl0IGltcG9zc2libGUgZGUgcmVzdGF1cmVyIGxlcyBpbnN0YW50YW7DqXMgZGUgbGEgVk0gY3LDqcOpcyBhdmVjIGxhIHN0cnVjdHVyZSBkZSB2b2x1bWUgcHLDqWPDqWRlbnRlLiBTaSB2b3VzIHNvdWhhaXRleiBhdHRhY2hlciB1biB2b2x1bWUgw6AgdW5lIHRlbGxlIG1hY2hpbmUgdmlydHVlbGxlLCBzdXBwcmltZXogZCdhYm9yZCBzZXMgaW5zdGFudGFuw6lzLgBTaSB1biBwb3J0IGVzdCBvdXZlcnQgbWFpcyBxdWUgdm91cyBuZSBwb3V2ZXogcGFzIGFjY8OpZGVyIMOgIGxhIFZNIGVuIHV0aWxpc2FudCBzc2gsIGlsIGVzdCBwb3NzaWJsZSBxdWUgc3NoIG5lIHNvaXQgcGFzIGTDqWrDoCBhY3RpdsOpIHN1ciBsYSBWTS4gQ2VsYSB2YSBkw6lwZW5kcmUgc2kgc3NoIGVzdCBhY3RpdsOpIGRhbnMgbGUgbW9kw6hsZSBxdWUgdm91cyBhdmV6IGNob2lzaSBsb3JzIGRlIGxhIGNyw6lhdGlvbiBkZSBsYSBWTS4gQWNjw6lkZXogw6AgbGEgVk0gdmlhIGwnaW50ZXJmYWNlIGRlIENsb3VkU3RhY2sgZXQgYWN0aXZleiBsZSBzc2ggc3VyIGxhIG1hY2hpbmUgZW4gdXRpbGlzYW50IGxlcyBjb21tYW5kZXMgZHUgc3lzdMOobWUgZCdleHBsb2l0YXRpb24uAFNpIHVuIGluc3RhbnRhbsOpIGVzdCBkw6lqw6AgZW4gdHJhaW4gZCfDqnRyZSBjcsOpw6kgYWxvcnMgdW4gY2xpYyBzdXIgY2UgYm91dG9uIG4nYXVyYSBhdWN1biBlZmZldC4AU2kgdW4gdXRpbGlzYXRldXIgZMOpcGxvaWUgdW5lIG1hY2hpbmUgdmlydHVlbGxlIGF2ZWMgdW4gbW9kw6hsZSBxdWkgbidhIHBhcyBsZXMgb3V0aWxzIFhlbiBvdSBWTXdhcmUsIGV0IHBsdXMgdGFyZCBpbnN0YWxsZSBsZXMgb3V0aWxzIHN1ciBsYSBWTSwgYWxvcnMgbCd1dGlsaXNhdGV1ciBwZXV0IGluZm9ybWVyIENsb3VkU3RhY2sgZW4gdXRpbGlzYW50IGwnQVBJIHVwZGF0ZVZpcnR1YWxNYWNoaW5lLiBBcHLDqHMgYXZvaXIgaW5zdGFsbMOpIGxlcyBvdXRpbHMgZXQgbWlzIMOgIGpvdXIgbGEgbWFjaGluZSB2aXJ0dWVsbGUsIHN0b3BwZXogZXQgZMOpbWFycmV6IGxhIFZNLgBTaSBFbGFzdGljIElQIGVzdCB1dGlsaXPDqSAoYXZlYyBsZSByw6lwYXJ0aXRldXIgZGUgY2hhcmdlIE5ldFNjYWxlciksIGwnYWRyZXNzZSBJUCBpbml0aWFsZW1lbnQgYWxsb3XDqWUgw6AgbGEgbm91dmVsbGUgVk0gbidlc3QgcGFzIG1hcnF1w6llIGNvbW1lIMOpbGFzdGlxdWUuIEwndXRpbGlzYXRldXIgZG9pdCByZW1wbGFjZXIgbCdJUCBhdXRvbWF0aXF1ZW1lbnQgY29uZmlndXLDqWUgYXZlYyB1bmUgSVAgw6lsYXN0aXF1ZSBzcMOpY2lmaXF1ZW1lbnQgYWNxdWlzZSwgZXQgY29uZmlndXJlciBsZSBsaWVuIE5BVCBzdGF0aXF1ZSBlbnRyZSBjZXR0ZSBub3V2ZWxsZSBJUCBldCBsJ0lQIHByaXbDqWUgZGUgbGEgVk0gaW52aXTDqWUuIEwnYWRyZXNzZSBJUCBvcmlnaW5hbGUgZGUgbGEgVk0gZXN0IGFsb3JzIHJlbGFjaMOpZSBldCByZXRvdXJuZSBkYW5zIGxhIHLDqXNlcnZlIGQnSVAgcHVibGlxdWVzIGRpc3BvbmlibGVzLiBPcHRpb25uZWxsZW1lbnQsIHZvdXMgcG91dmV6IGF1c3NpIGTDqWNpZGVyIGRlIG5lIHBhcyBhbGxvdWVyIGQnSVAgcHVibGlxdWUgw6AgdW5lIFZNIGRhbnMgdW5lIHpvbmUgQmFzaXF1ZSBhdmVjIEVJUC4gUG91ciBwbHVzIGQnaW5mb3JtYXRpb25zIHN1ciBFbGFzdGljIElQLCB2b2lyIGDigJxBIHByb3BvcyBkJ0VsYXN0aWMgSVDigJ0gPG5ldHdvcmtpbmcyLmh0bWwjYWJvdXQtZWxhc3RpYy1pcD5gXy4AU2kgbGUgdHlwZSBkJ09TIGRlIGwnSVNPIG4nZXN0IHBhcyBsaXN0w6ksIG91IHNpIGwnSVNPIG4nZXN0IHBhcyBib290YWJsZSwgY2hvaXNpciBBdXRyZS4AU2kgbGUgc3RvY2thZ2UgZGUgbGEgVk0gZG9pdCDDqnRyZSBtaWdyw6kgZW4gbcOqbWUgdGVtcHMgcXVlIGxhIFZNLCBjZWxhIHNlcmEgbm90aWZpw6kgZGFucyBsYSBsaXN0ZSBkZXMgaMO0dGVzLiBDbG91ZFN0YWNrIHZhIHMnb2NjdXBlciBkZSBsYSBtaWdyYXRpb24gZHUgc3RvY2thZ2UgcG91ciB2b3VzLgBTaSBsZSByw6lzZWF1IGEgdW4gcMOpcmlwaMOpcmlxdWUgZGUgcGFyZWZldSBleHRlcm5lLCB2b3VzIGFsbGV6IGRldm9pciBjcsOpZXIgdW5lIHLDqGdsZSBkZSBwYXJlZmV1IHBvdXIgYXV0b3Jpc2VyIGwnYWNjw6hzLiBWb2lyIGDigJxUcmFuc2ZlcnQgZGUgcG9ydCBldCBwYXJlZmV1IElQ4oCdIDxuZXR3b3JraW5nMi5odG1sI2lwLWZvcndhcmRpbmctYW5kLWZpcmV3YWxsaW5nPmBfLgBTaSBsZSBzeXN0w6htZSBkJ2V4cGxvaXRhdGlvbiBkZSBsJ2ltYWdlIHF1ZSB2b3VzIGTDqXNpcmV6IGVzdCBsaXN0w6ksIGxlIGNob2lzaXIuAFNpIHZvdXMgcHJvY8OpZGV6IMOgIHVuZSBtaXNlIMOgIG5pdmVhdSBkZXB1aXMgdW5lIHZlcnNpb24gcHLDqWPDqWRlbnRlIGRlIENsb3VkU3RhY2sgZXQgcXVlIHZvdXMgc291aGFpdGV6IHF1ZSB2b3MgbWFjaGluZXMgdmlydHVlbGxlcyBleGlzdGFudGVzIGNyw6nDqWVzIGF2ZWMgbGVzIHZlcnNpb25zIHByw6ljw6lkZW50ZXMgZGlzcG9zZW50IGRlIGxhIGZvbmN0aW9ubmFsaXTDqSBkZSBkaW1lbnNpb25uZW1lbnQgZHluYW1pcXVlLCBtZXR0ZXogw6Agam91ciBsZXMgVk0gZW4gc3VpdmFudCBsZXMgw6l0YXBlcyBzdWl2YW50ZXMgOgBTaSB2b3VzIGF2ZXogYmVzb2luIGRlIHBsdXMgZCdpbmZvcm1hdGlvbnMgw6AgcHJvcG9zIGRlcyBpbnN0YW50YW7DqXMgc3VyIFZNd2FyZSwgcmVnYXJkZXIgc3VyIGxhIGRvY3VtZW50YXRpb24gVk13YXJlIGV0IGRhbnMgbGEgYmFzZSBkZSBjb25uYWlzc2FuY2UgZGUgVk13YXJlLCBzcMOpY2lhbGVtZW50IGBVbmRlcnN0YW5kaW5nIHZpcnR1YWwgbWFjaGluZSBzbmFwc2hvdHMgPGh0dHA6Ly9rYi52bXdhcmUuY29tL3NlbGZzZXJ2aWNlL21pY3Jvc2l0ZXMvc2VhcmNoLmRvP2NtZD1kaXNwbGF5S0MmZXh0ZXJuYWxJZD0xMDE1MTgwPmBfLgBEYW5zIENsb3VkU3RhY2ssIHZvdXMgcG91dmV6IGNoYW5nZXIgbCdpbWFnZSBkZSBiYXNlIGQndW5lIFZNIGV4aXN0YW50ZSBkZXB1aXMgdW4gbW9kw6hsZSB2ZXJzIHVuIGF1dHJlLCBvdSBkZXB1aXMgdW4gSVNPIHZlcnMgdW4gYXV0cmUuIChWb3VzIG5lIHBvdXZleiBwYXMgY2hhbmdlciBkJ3VuIElTTyB2ZXJzIHVuIG1vZMOobGUgb3UgZCd1biBtb2TDqGxlIHZlcnMgdW4gSVNPKS4ARGFucyBsZSBzw6lsZWN0ZXVyIGRlIHZ1ZSwgY2hvaXNpciBJU09zAEVuIGNvbXBsw6ltZW50IGRlIGxhIGNhcGFjaXTDqSBleGlzdGFudGUgZGUgQ2xvdWRTdGFjayBkJ2VmZmVjdHVlciBkZXMgaW5zdGFudGFuw6lzIGRlIHZvbHVtZXMgaW5kaXZpZHVlbHMgZGVzIFZNLCB2b3VzIHBvdXZleiBwcmVuZHJlIHVuIGluc3RhbnRhbsOpIGQndW5lIFZNIHBvdXIgcHLDqXNlcnZlciB0b3VzIGxlcyB2b2x1bWVzIGRlIGRvbm7DqWVzIGRlIGxhIFZNIGFpbnNpIHF1ZSAow6l2ZW50dWVsbGVtZW50KSBzb24gw6l0YXQgQ1BVIC8gbcOpbW9pcmUuIENlY2kgZXN0IHV0aWxlIHBvdXIgbGEgcmVzdGF1cmF0aW9uIHJhcGlkZSBkJ3VuZSBtYWNoaW5lIHZpcnR1ZWxsZS4gUGFyIGV4ZW1wbGUsIHZvdXMgcG91dmV6IHByZW5kcmUgdW4gaW5zdGFudGFuw6kgZCd1bmUgbWFjaGluZSB2aXJ0dWVsbGUsIHB1aXMgZWZmZWN0dWVyIGRlcyBtb2RpZmljYXRpb25zIGNvbW1lIGRlcyBtaXNlcyDDoCBuaXZlYXUgbG9naWNpZWxsZXMuIFNpIHF1ZWxxdWUgY2hvc2Ugc2UgcGFzc2UgbWFsLCBpbCBzdWZmaXQgZGUgcmVzdGF1cmVyIGxhIFZNIMOgIHNvbiDDqXRhdCBwcsOpY8OpZGVudCB2aWEgbCdpbnN0YW50YW7DqSBkZSBsYSBWTSBwcmlzIHByw6ljw6lkZW1tZW50LgBFbiBjb21wbMOpbWVudCBkZSBsJ2F1dGhlbnRpZmljYXRpb24gcGFyIHV0aWxpc2F0ZXVyIGV0IG1vdCBkZSBwYXNzZSwgQ2xvdWRTdGFjayBzdXBwb3J0ZSBsYSBjb25uZXhpb24gw6AgbCdpbmZyYXN0cnVjdHVyZSBkdSBjbG91ZCBlbiB1dGlsaXNhbnQgbGVzIGNsZWZzIFNTSCBwb3VyIHBsdXMgZGUgc8OpY3VyaXTDqS4gVm91cyBwb3V2ZXogdXRpbGlzZXIgbCdBUEkgY3JlYXRlU1NIS2V5UGFpciBwb3VyIGfDqW7DqXJlciBsZXMgY2xlZnMgU1NILgBEYW5zIGwnw6ljcmFuIEFqb3V0ZXIgSVNPLCBmb3VybmlyIGNlIHF1aSBzdWl0IDoARGFucyBsYSBib8OudGUgZGUgZGlhbG9ndWUgQXR0YWNoZXIgdW5lIElTTywgc8OpbGVjdGlvbm5leiBsJ0lTTyB2b3VsdWUuAERhbnMgbGEgYmFycmUgZGUgbmF2aWdhdGlvbiBkZSBnYXVjaGUsIGNsaXF1ZXIgc3VyIEdyb3VwZXMgZCdhZmZpbml0w6kuAERhbnMgbGEgYmFycmUgZGUgbmF2aWdhdGlvbiBkZSBnYXVjaGUsIGNsaXF1ZXIgc3VyIEluc3RhbmNlcy4ARGFucyBsYSBiYXJyZSBkZSBuYXZpZ2F0aW9uIGRlIGdhdWNoZSwgY2xpcXVlciBzdXIgTW9kw6hsZXMuAFN1ciBsYSBnYXVjaGUsIGNsaXF1ZXogc3VyIEluc3RhbmNlcwBEYW5zIGxhIGxpc3RlIGRlcyBpbnN0YW50YW7DqXMsIGNsaXF1ZXIgc3VyIGxlIG5vbSBkZSBsJ2luc3RhbnRhbsOpIGF2ZWMgbGVxdWVsIHZvdXMgdm91bGV6IHRyYXZhaWxsZXIuAEluc3RhbGxleiBsZXMgb3V0aWxzIGV0IGxlcyBwaWxvdGVzIHJlcXVpcwBJbnN0YWxsZXIgbGVzIG91dGlscyBYZW4gKHBvdXIgbGVzIGjDtHRlcyBzb3VzIFhlblNlcnZlcikgb3UgbGVzIG91dGlscyBWTXdhcmUgKHBvdXIgbGVzIGjDtHRlcyBWTXdhcmUpIHN1ciBjaGFxdWUgVk0gcydpbHMgbmUgc29udCBwYXMgZMOpasOgIGluc3RhbGzDqXMuAEluc3RhbGxlciBsZSBwYXF1ZXQgY2xvdWQtaW5pdCBkYW5zIGxlIG1vZMOobGUgOgBOb20gZGUgbCdpbnN0YW5jZSAtIHVuIElEIHVuaXF1ZSBldCBub24gbW9kaWZpYWJsZSBxdWkgZXN0IGfDqW7DqXLDqSBwYXIgQ2xvdWRTdGFjayBldCBuZSBwZXV0IHBhcyDDqnRyZSBtb2RpZmnDqSBwYXIgbCd1dGlsaXNhdGV1ci4gQ2Ugbm9tIGVzdCBjb25mb3JtZSBhdXggZXhpZ2VuY2VzIGRlIGxhIFJGQyAxMTIzIGRlIGwnSUVURi4AUHJpb3JpdMOpIGF1eCB0eXBlcyBkJ2luc3RhbmNlLiBMZXMgYWRtaW5pc3RyYXRldXJzIGRlIENsb3VkU3RhY2sgcGV1dmVudCBzcMOpY2lmaWVyIHF1ZSBjZXJ0YWlucyBow7R0ZXMgZG9pdmVudCBhdm9pciB1bmUgcHJpb3JpdMOpIHBvdXIgdW4gdHlwZSBwYXJ0aWN1bGllciBkJ2luc3RhbmNlcyBpbnZpdMOpcy4gUGFyIGV4ZW1wbGUsIHVuIGFkbWluaXN0cmF0ZXVyIHBldXQgaW5kaXF1ZXIgcXUndW4gaMO0dGUgZG9pdCBwcml2aWzDqWdpZXIgbGVzIGludml0w6lzIFdpbmRvd3MuIEwnYWxsb2NhdGV1ciBkJ2jDtHRlIHBhciBkw6lmYXV0IHZhIHRlbnRlciBkZSBwbGFjZXIgbGVzIGludml0w6lzIGRlIGNlIHR5cGUgZCdPUyBzdXIgY2VzIGjDtHRlcyBlbiBwcmVtaWVyLiBTaSBhdWN1biBkZSBjZXMgaMO0dGVzIG4nZXN0IGRpc3BvbmlibGUsIGwnYWxsb2NhdGV1ciB2YSBwbGFjZXIgbCdpbnN0YW5jZSBsw6Agb8O5IGlsIHkgYSBzdWZmaXNhbW1lbnQgZGUgY2FwYWNpdMOpIHBoeXNpcXVlIHBvdXIgbGUgZmFpcmUuAE5vbSBpbnRlcm5lAENlIG4nZXN0IHBhcyB0b3Vqb3VycyBwb3NzaWJsZSBkZSBwcsOpZGlyZSBhdmVjIHByw6ljaXNpb24gbGVzIHByw6ktcmVxdWlzIGRlIENQVSBldCBkZSBSQU0gbG9yc3F1ZSB2b3VzIGTDqXBsb3lleiBwb3VyIGxhIHByZW1pw6hyZSBmb2lzIHVuZSBWTS4gVm91cyBwb3V2ZXogYXZvaXIgYmVzb2luIGQnYXVnbWVudGVyIGNlcyByZXNzb3VyY2VzIMOgIG4naW1wb3J0ZSBxdWVsIGluc3RhbnQgZHVyYW50IGxhIHZpZSBkZSBsYSBWTS4gVm91cyBwb3V2ZXogbW9kaWZpZXIgZHluYW1pcXVlbWVudCBsZXMgcXVhbnRpdMOpcyBkZSBDUFUgZXQgZGUgUkFNIHBvdXIgZGltZW5zaW9ubmVyIGNlcyByZXNzb3VyY2VzIGQndW5lIFZNIGVuIGZvbmN0aW9ubmVtZW50IHNhbnMgc3ViaXIgZGUgdGVtcHMgZCdhcnLDqnQuAElsIG4nZXN0IHBhcyByZWNvbW1hbmTDqSBkZSBjaG9pc2lyIHVuZSB2ZXJzaW9uIHBsdXMgYW5jaWVubmUgZGUgbCdPUyBxdWUgbGEgdmVyc2lvbiBkYW5zIGwnaW1hZ2UuIFBhciBleGVtcGxlLCBjaG9pc2lyIENlbnRPUyA1LjQgcG91ciBzdXBwb3J0ZXIgdW5lIGltYWdlIGRlIENlbnRPUyA2LjIgbmUgdmEgaGFiaXR1ZWxsZW1lbnQgcGFzIGZvbmN0aW9ubmVyLiBEYW5zIGNlcyBjYXMsIGNob2lzaXIgQXV0cmUuAExpbWl0YXRpb25zAExpbWl0YXRpb25zIGRlcyBpbnN0YW50YW7DqXMgZGUgVk0ATGltaXRlciBsZXMgcmVzc291cmNlcyBHUFUgcGFyIENvbXB0ZS9Eb21haW5lIG4nZXN0IHBhcyBzdXBwb3J0w6kuAExhIG1pZ3JhdGlvbiDDoCBjaGF1ZCBkZXMgVk1zIGF2ZWMgR1BVL3ZHUFUgbidlc3QgcGFzIHN1cHBvcnTDqS4AU2UgY29ubmVjdGVyIGRhbnMgbCdpbnRlcmZhY2UgZGUgQ2xvdXN0YWNrIGNvbW1lIHV0aWxpc2F0ZXVyIG91IGNvbW1lIGFkbWluaXN0cmF0ZXVyLgBTZSBjb25uZWN0ZXIgZGFucyBsJ2ludGVyZmFjZSB1dGlsaXNhdGV1ciBkZSBDbG91ZFN0YWNrIGVuIHRhbnQgcXUndXRpbGlzYXRldXIgb3UgYWRtaW5pc3RyYXRldXIuAFNlIGNvbm5lY3RlciBkYW5zIGwnaW50ZXJmYWNlIHV0aWxpc2F0ZXVyIGRlIENsb3VkU3RhY2sgZW4gdGFudCBxdSdhZG1pbmlzdHJhdGV1ciBvdSB1dGlsaXNhdGV1ciBmaW5hbC4AU2UgY29ubmVjdGVyIMOgIGwnaW50ZXJmYWNlIGRlIENsb3VkU3RhY2sgZW4gdGFudCBxdSdhZG1pbmlzdHJhdGV1ciBvdSB1dGlsaXNhdGV1ci4AU2UgY29ubmVjdGVyIGVuIHV0aWxpc2FudCB1bmUgYmktY2xlZnMgU1NILgBTJ2Fzc3VyZXIgcXVlIGwnb3B0aW9uIGRlIGNvbmZpZ3VyYXRpb24gZGUgbml2ZWF1IHpvbmUgZW5hYmxlLmR5bmFtaWMuc2NhbGUudm0gZXN0IGZpeMOpIMOgIHRydWUuIERhbnMgbGEgYmFycmUgZGUgbmF2aWdhdGlvbiBkZSBnYXVjaGUgZGUgbCdpbnRlcmZhY2UgdXRpbGlzYXRldXIgZGUgQ2xvdWRTdGFjaywgY2xpcXVlciBzdXIgSW5mcmFzdHJ1Y3R1cmUsIHB1aXMgY2xpcXVlciBzdXIgWm9uZXMsIGNsaXF1ZXIgc3VyIGxhIHpvbmUgZMOpc2lyw6llIGV0IGNsaXF1ZXIgc3VyIGwnb25nbGV0IFBhcmFtw6h0cmVzLgBFZmZlY3R1ZXIgbGVzIGNoYW5nZW1lbnRzIGTDqXNpcsOpcyBwb3VyIGNlIHF1aSBzdWl0IDoAR8OpcmVyIGxhIGNhcGFjaXTDqSBkZXMgY2FydGVzIEdQVS4ATGVzIG3DqXRhLWRvbm7DqWVzIHBldXZlbnQgw6p0cmUgYWNjw6lkw6llcyBkZSBtYW5pw6hyZSBzaW1pbGFpcmUsIHV0aWxpc2FudCB1bmUgVVJMIGRlIGxhIGZvcm1lIGBgaHR0cDovLzEwLjEuMS4xL2xhdGVzdC9tZXRhLWRhdGEve21ldGFkYXRhIHR5cGV9YGAuIChQb3VyIGRlcyByYWlzb25zIGRlIGNvbXBhdGliaWxpdMOpcyBhc2NlbmRhbnRlcywgbGVzIGFuY2llbm5lcyBVUkwgYGBodHRwOi8vMTAuMS4xLjEvbGF0ZXN0L3ttZXRhZGF0YSB0eXBlfWBgIHNvbnQgYXVzc2kgc3VwcG9ydMOpZXMuKSBQb3VyIGxlIHR5cGUgZGUgbcOpdGEtZG9ubsOpZXMsIHV0aWxpc2VyIGF1IGNob2l4IDoATWlncmVyIHVuZSBWTS4ATWlncmVyIGxlcyBWTXMgKG1pZ3JhdGlvbiDDoCBmcm9pZCkgYXZlYyBjYXBhY2l0w6kgR1BVL3ZHUFUuAFN1cnZlaWxsZXIgbGEgY2FwYWNpdMOpIG1heGltYWxlIGRlIFZNAETDqXBsYWNlciBkZXMgVk1zIGVudHJlIGxlcyBIw7R0ZXMgKE1pZ3JhdGlvbiDDoCBjaGF1ZCBtYW51ZWxsZSkATGVzIGNhcnRlcyBOVklESUEgR1JJRCBLMSAoMTYgR2lCIHZpZGVvIFJBTSkgQU5EIEsyICg4IEdpQiBvZiB2aWRlbyBSQU0pIHN1cHBvcnRlbnQgZGVzIEdQVXMgdmlydHVlbHMgaG9tb2fDqG5lcywgaW1wbGlxdWFudCBxdSfDoCBuJ2ltcG9ydGUgcXVlbCBtb21lbnQsIGxlcyB2R1BVcyByw6lzaWRhbnQgc3VyIHVuIHNldWwgR1BVIHBoeXNpcXVlIGRvaXZlbnQgdG91cyDDqnRyZSBkdSBtw6ptZSB0eXBlLiBUb3V0ZWZvaXMsIGNldHRlIHJlc3RyaWN0aW9uIG5lIHMnYXBwbGlxdWUgcGFzIHN1ciBsZXMgR1BVcyBwaHlzaXF1ZXMgZCd1bmUgbcOqbWUgY2FydGUuIENoYXF1ZSBHUFUgcGh5c2lxdWUgc3VyIHVuZSBLMSBvdSBLMiBwZXV2ZW50IGjDqWJlcmdlciBkaWZmw6lyZW50cyB0eXBlcyBkZSBHUFUgdmlydHVlbHMgYXUgbcOqbWUgbW9tZW50LiBQYXIgZXhlbXBsZSwgdW5lIGNhcnRlIEdSSUQgSzIgYSAyIEdQVXMgcGh5c2lxdWVzLCBldCBzdXBwb3J0ZSA0IHR5cGVzIGRlIEdQVSB2aXJ0dWVscyA6IEdSSUQgSzIwMCwgR1JJRCBLMjIwUSwgR1JJRCBLMjQwUSwgZXQgR1JJRCBLMjYwUS4ATGUgZHJpdmVyIE5WSURJQSBkb2l0IMOqdHJlIGluc3RhbGzDqSBwb3VyIGFjdGl2ZXIgbCdvcMOpcmF0aW9uIHZHUFUgY29tbWUgcG91ciBsZXMgR1BVIHBoeXNpcXVlcyBOVklESUEuAE5vbSBzdXIgbGUgdkNlbnRlcgBOb20gLSBsZSBub20gZCdow7R0ZSBxdWUgbGUgc2VydmV1ciBESENQIGFzc2lnbmUgw6AgbGEgVk0uIFBldXQgw6p0cmUgZml4w6kgcGFyIGwndXRpbGlzYXRldXIuIFByZW5kIHBhciBkw6lmYXV0IGxlIG5vbSBkZSBsJ2luc3RhbmNlLgBOb20uIERvbm5lciBhdSBncm91cGUgdW4gbm9tLgBOYXZpZ3VlciBqdXNxdSfDoCBsYSBWTSBjb21tZSBkw6ljcml0IGRhbnMgbGVzIMOpdGFwZXMgcHLDqWPDqWRlbnRlcy4ATGVzIG5vdXZlbGxlcyBWTXMgY3LDqcOpZXMgYXByw6hzIGwnaW5zdGFsbGF0aW9uIGRlIENsb3VkU3RhY2sgNC4yIHBldXZlbnQgdXRpbGlzZXIgbGEgZm9uY3Rpb25uYWxpdMOpIGRlIGRpbWVuc2lvbm5lbWVudCBhdXRvbWF0aXF1ZS4gU2kgdm91cyBwcm9jw6lkZXogw6AgdW5lIG1pc2Ugw6Agbml2ZWF1IGRlcHVpcyB1bmUgdmVyc2lvbiBwcsOpY8OpZGVudGUgZGUgQ2xvdWRTdGFjaywgdm9zIFZNcyBleGlzdGFudGVzIGNyw6nDqWVzIGF2ZWMgbGVzIHZlcnNpb25zIHByw6ljw6lkZW50ZXMgbmUgdm9udCBwYXMgZGlzcG9zZXIgZGUgY2V0dGUgZm9uY3Rpb25uYWxpdMOpIGRlIGRpbWVuc2lvbm5lbWVudCBhdXRvbWF0aXF1ZSB0YW50IHF1ZSB2b3VzIG5lIGxlcyBtZXR0ZXogcGFzIMOgIGpvdXIgZW4gc3VpdmFudCBsYSBwcm9jw6lkdXJlIHN1aXZhbnRlLgBOb24ATGVzIHNldWlscyBkZSBub3RpZmljYXRpb24gcG91ciBsYSByZXNzb3VyY2UgR1BVIG5lIHNvbnQgcGFzIHByaXMgZW4gY2hhcmdlLgBMZSBub21icmUgZGUgc2Vjb25kZXMgw6AgYXR0ZW5kcmUgcG91ciBxdSd1biB0cmF2YWlsIGQnaW5zdGFudGFuw6kgZm9uY3Rpb25uZSBhdmFudCBkZSBsZSBkw6ljbGFyZXIgZW4gw6ljaGVjIGV0IGRlIGfDqW7DqXJlciB1bmUgZXJyZXVyLgBTdXIgZGVzIFZNcyBmb25jdGlvbm5hbnQgc291cyBsZXMgc3lzdMOobWVzIGQnZXhwbG9pdGF0aW9ucyBMaW51eCA2NC1iaXRzIGV0IFdpbmRvd3MgNyAzMi1iaXRzLCBzaSBsYSBWTSBzZSB2b2l0IGluaXRpYWxlbWVudCBhc3NpZ25lciBtb2lucyBkZSAzR2IgZGUgUkFNLCBlbGxlIHBvdXJyYSBkeW5hbWlxdWVtZW50IMOqdHJlIGF1Z21lbnTDqWUganVzcXUnw6AgM0diIG1haXMgcGFzIHBsdXMuIENlbGEgZXN0IGTDuyDDoCB1biBwcm9ibMOobWUgY29ubnUgYXZlYyBjZXMgc3lzdMOobWVzIGQnZXhwbG9pdGF0aW9uLCBsZXNxdWVscyBzZSBnw6hsZW50IHNpIHVuZSB0ZW50YXRpdmUgZGUgcmVkaW1lbnNpb25uZW1lbnQgZHluYW1pcXVlIGRlIG1vaXMgZGUgM0diIHBvdXIgcGx1cyBkZSAzR2IgZXN0IGVmZmVjdHXDqWUuAFVuZSBmb2lzIHF1J3VuZSBpbnN0YW5jZSBlc3QgY3LDqcOpZSwgdm91cyBwb3V2ZXogc3RvcHBlciwgcmVkw6ltYXJyZXIgb3UgbGEgZMOpdHJ1aXJlIHNpIG7DqWNlc3NhaXJlLiBEYW5zIGwnaW50ZXJmYWNlIGRlIENsb3VkU3RhY2ssIGNsaXF1ZXIgc3VyIEluc3RhbmNlcywgc8OpbGVjdGlvbm5lciBsYSBWTSBldCB1dGlsaXNlciBsZXMgYm91dG9ucyBTdG9wLCBTdGFydCwgUmVkw6ltYXJyZXIgZXQgRMOpdHJ1aXJlLgBVbmUgZm9pcyBxdSd1bmUgbWFjaGluZSB2aXJ0dWVsbGUgZXN0IGTDqXRydWl0ZSwgZWxsZSBuZSBwZXV0IHBhcyDDqnRyZSByw6ljdXDDqXLDqWUuIFRvdXRlcyBsZXMgcmVzc291cmNlcyB1dGlsaXPDqWVzIHBhciBsYSBtYWNoaW5lIHZpcnR1ZWxsZSBzb250IHLDqWNsYW3DqWVzIHBhciBsZSBzeXN0w6htZS4gQ2VsYSBpbmNsdXQgbGVzIGFkcmVzc2VzIElQIGRlIGxhIG1hY2hpbmUgdmlydHVlbGxlLgBBdXRyZSBQVgBDb25kaXRpb25zIHByw6lhbGFibGVzIGV0IGNvbmZpZ3VyYXRpb25zIHN5c3TDqG1lcyByZXF1aXNlcwBGb3VybmlyIHVuIG5vbSBldCB1bmUgZGVzY3JpcHRpb24uIENldXgtY2kgc2Vyb250IGFmZmljaMOpcyBkYW5zIGxhIGxpc3RlIGRlcyBpbnN0YW50YW7DqXMgZGVzIFZNLgBJbnRlcnJvZ2VyIGxlcyBow7R0ZXMgcG91ciBvYnRlbmlyIGRlcyBpbmZvcm1hdGlvbnMgc3VyIGxldXJzIGNhcnRlcyBHUFUsIGxlcyB0eXBlcyBkZSB2R1BVIHN1cHBvcnTDqXMgZGFucyBsZSBjYXMgZGVzIGNhcnRlcyBHUklEIGV0IGxhIGNhcGFjaXTDqSBkZSBsZXVycyBjYXJ0ZXMuAFF1aWVzY2UgVk0gOiBjb2NoZXIgY2V0dGUgY2FzZSBzaSB2b3VzIHZvdWxleiBtZXR0cmUgYXUgcmVwb3MgbGUgc3lzdMOobWUgZGUgZmljaGllcnMgc3VyIGxhIFZNIGF2YW50IGRlIHByZW5kcmUgbGUgc25hcHNob3QuIE4nZXN0IHBhcyBzdXBwb3J0w6kgc3VyIFhlblNlcnZlciBsb3JzcXUnaWwgZXN0IHV0aWxpc8OpIGF2ZWMgbGUgc3RvY2thZ2UgcHJpbWFpcmUgZm91cm5pdCBwYXIgQ2xvdWRTdGFjay4AUmVkIEhhdCBFbnRlcnByaXNlIExpbnV4IDUuMwBSZWQgSGF0IEVudGVycHJpc2UgTGludXggNS40AFJlZCBIYXQgRW50ZXJwcmlzZSBMaW51eCA1LjUAUmVkIEhhdCBFbnRlcnByaXNlIExpbnV4IDYAU2UgcsOpZsOpcmVyIMOgIGxhIGRvY3VtZW50YXRpb24gYENsb3VkLUluaXQgQ2xvdWRTdGFjayBkYXRhc291cmNlIDxodHRwOi8vY2xvdWRpbml0LnJlYWR0aGVkb2NzLm9yZy9lbi9sYXRlc3QvdG9waWNzL2RhdGFzb3VyY2VzLmh0bWwjY2xvdWRzdGFjaz5gXyBwb3VyIGxlcyBkZXJuacOocmVzIHBvc3NpYmlsaXTDqWVzLiBDbG91ZC1Jbml0IGV0IHNvdXJjZSBkZSBkb25uw6llcyBDbG91ZC1Jbml0IENsb3VkU3RhY2sgbmUgc29udCBwYXMgc3VwcG9ydMOpZXMgcGFyIGxhIGNvbW11bmF1dMOpIEFwYWNoZSBDbG91ZFN0YWNrLgBSw6lpbml0aWFsaXNlciBsZXMgY2xlZnMgU1NIAFLDqWluaXRpYWxpc2VyIGxlIHZvbHVtZSByYWNpbmUgZCd1bmUgbWFjaGluZSB2aXJ0dWVsbGUgYXUgcmVkw6ltYXJyYWdlAFJlZMOpbWFycmVyIGxhIFZNLgBMYW5jZXIgbGEgY29tbWFuZGUgc3VpdmFudGUgcG91ciB0cm91dmVyIGxlIHJvdXRldXIgdmlydHVlbC4ARXjDqWN1dGVyIGxhIGNvbW1hbmRlIGN1cmwgc3VpdmFudGUgOgBFeMOpY3V0ZXIgbGUgc2NyaXB0IGR1cmFudCBsZSBsYW5jZW1lbnQgZHUgc3lzdMOobWUgZCdleHBsb2l0YXRpb24gOgBTYXV2ZWdhcmRlciBsZSBmaWNoaWVyLgBTw6lsZWN0aW9ubmVyIElTTywgZXQgc3VpdnJlIGxlcyDDqXRhcGVzIGRlIGwnYXNzaXN0YW50LgBTw6lsZWN0aW9ubmVyIHVuIG1vZMOobGUsIHB1aXMgc3VpdnJlIGxlcyDDqXRhcGVzIGRlIGwnYXNzaXN0YW50LiBQb3VyIHBsdXMgZCdpbmZvcm1hdGlvbnMgc3VyIGwnYWpvdXQgZGVzIG1vZMOobGVzIGRhbnMgbGEgbGlzdGUsIHZvaXIgYCpUcmF2YWlsbGVyIGF2ZWMgbGVzIG1vZMOobGVzKiA8dGVtcGxhdGVzLmh0bWw+YF8uAFPDqWxlY3Rpb25uZXIgdW5lIHpvbmUuAFPDqWxlY3Rpb25uZXIgbGEgVk0gcXVlIHZvdXMgdm91bGV6IG1vZGlmaWVyLgBDaG9pc2lyIGwnb2ZmcmUgcXVlIHZvdXMgdm91bGV6IGFwcGxpcXVlciDDoCBsYSBWTSBzw6lsZWN0aW9ubsOpZS4AU3RvcHBlciBsYSBWTSBlbiBjbGlxdWFudCBzdXIgbGUgYm91dG9uIEFycsOqdGVyLgBBcnLDqnRlciBsYSBWTS4AQXJyw6p0ZXIgbCdpbnN0YW5jZS4AU3RvcHBlciBldCBkw6ltYXJyZXIgZGVzIFZNcwBSZW1wbGFjZXIgbGUgbW9kw6hsZSwgbCdvZmZyZSBkZSBzZXJ2aWNlIGV0IGxlcyBJRHMgZGUgZ3JvdXBlIGRlIHPDqWN1cml0w6kgKHNpIHZvdXMgdXRpbGlzZXogbGEgZm9uY3Rpb25uYWxpdMOpIGRlIGdyb3VwZSBkZSBzw6ljdXJpdMOpKSBkZSB2b3RyZSBlbnZpcm9ubmVtZW50IGNsb3VkLgBQw6lyaXBow6lyaXF1ZXMgR1BVIHN1cHBvcnTDqXMAVk1zIHN5c3TDqG1lcyBzdXIgVk13YXJlLgBMYSBwYXJhbcOodHJlIC1pIGRlbWFuZGUgYXUgY2xpZW50IFNTSCBkJ3V0aWxpc2VyIGxhIGNsZWYgU1NIIHF1aSBzZSB0cm91dmUgc291cyB+Ly5zc2gva2V5cGFpci1kb2MuAExhIGJvw650ZSBkZSBkaWFsb2d1ZSBNb2RpZmllciBvZmZyZSBkZSBzZXJ2aWNlIGVzdCBhZmZpY2jDqWUuAEwnYWRtaW5pc3RyYXRldXIgQ2xvdWRTdGFjayBwZXV0IGTDqXBsYWNlciB1bmUgVk0gZW4gZm9uY3Rpb25uZW1lbnQgZCd1biBow7R0ZSB2ZXJzIHVuIGF1dHJlIHNhbnMgaW50ZXJydXB0aW9uIGRlIHNlcnZpY2UgcG91ciBsZXMgdXRpbGlzYXRldXJzIG91IGVudHJlciBlbiBtb2RlIG1haW50ZW5hbmNlLiBDZWxhIGVzdCBhcHBlbMOpIG1pZ3JhdGlvbiDDoCBjaGF1ZCBtYW51ZWxsZSBldCBwZXV0IMOqdHJlIGVmZmVjdHXDqSBkYW5zIGxlcyBjb25kaXRpb25zIHN1aXZhbnRlcyA6AEwnYWRtaW5pc3RyYXRldXIgZGUgQ2xvdWRTdGFjayBkZXZyYWl0IHN1cnZlaWxsZXIgbGUgbm9tYnJlIHRvdGFsIGQnaW5zdGFuY2VzIGRlIFZNIHN1ciBjaGFxdWUgY2x1c3RlciBldCBkw6lzYWN0aXZlciBsZXMgbm91dmVsbGVzIGFsbG9jYXRpb25zIMOgIGNlIGNsdXN0ZXIgc2kgbGUgdG90YWwgYXBwcm9jaGUgbGUgbWF4aW11bSBnw6lyYWJsZSBwYXIgbCdoeXBlcnZpc2V1ci4gQXNzdXJlei12b3VzIHRvdXRlZm9pcyBkZSBsYWlzc2VyIHVuZSBtYXJnZSBkZSBzw6ljdXJpdMOpIHBvdXIgY291dnJpciBsYSBkw6lmYWlsbGFuY2UgZCd1biBvdSBkZSBwbHVzaWV1cnMgaMO0dGVzLCBjZSBxdWkgYXVyYWl0IHBvdXIgZWZmZXQgZCdhdWdtZW50ZXIgbGEgY2hhcmdlIFZNIHN1ciBsZXMgYXV0cmVzIGjDtHRlcyDDoCBtZXN1cmUgcXVlIGxlcyBWTSBzb250IGF1dG9tYXRpcXVlbWVudCByZWTDqXBsb3nDqWVzLiBDb25zdWx0ZXogbGEgZG9jdW1lbnRhdGlvbiBkZSB2b3RyZSBoeXBlcnZpc2V1ciBwb3VyIGNvbm5hw650cmUgbGUgbm9tYnJlIG1heGltdW0gYXV0b3Jpc8OpIGRlIFZNIHBhciBow7R0ZSwgcHVpcyB1dGlsaXNleiBsZXMgcGFyYW3DqHRyZXMgZGUgY29uZmlndXJhdGlvbiBnbG9iYXV4IGRlIENsb3VkU3RhY2sgcG91ciBkw6lmaW5pciBjZXR0ZSBsaW1pdGUgcGFyIGTDqWZhdXQuIFN1cnZlaWxsZXogbCdhY3Rpdml0w6kgZGVzIFZNIHN1ciBjaGFxdWUgY2x1c3RlciBlbiBwZXJtYW5lbmNlLiBDb25zZXJ2ZXogbGUgbm9tYnJlIHRvdGFsIGRlIG1hY2hpbmVzIHZpcnR1ZWxsZXMgZW4gZGVzc291cyBkJ3VuIG5pdmVhdSBkZSBzw6ljdXJpdMOpIHF1aSB0b2zDqHJlIGwnw6ljaGVjIG9jY2FzaW9ubmVsIGQndW4gaMO0dGUuIFBhciBleGVtcGxlLCBzaSBsZSBjbHVzdGVyIGVzdCBjb21wb3PDqSBkZSBOIGjDtHRlcyBldCBxdWUgdm91cyBzb3VoYWl0ZXogZ2FyZGVyIGxhIHBvc3NpYmlsaXTDqSBxdSd1biBow7R0ZSBkdSBjbHVzdGVyIHB1aXNzZSDDqnRyZSDDoCBsJ2FycsOqdCDDoCB1biBtb21lbnQgZG9ubsOpLCBsZSBub21icmUgdG90YWwgZCdpbnN0YW5jZXMgVk0gYXV0b3Jpc8OpZXMgZGFucyBjZSBjbHVzdGVyIGVzdCBhdSBwbHVzIChOLTEgKSBcICogKG1heC12bXMpLiBVbmUgZm9pcyBxdSd1biBjbHVzdGVyIGEgYXR0ZWludCBjZSBub21icmUgZGUgVk1zLCB1dGlsaXNleiBsJ2ludGVyZmFjZSB1dGlsaXNhdGV1ciBDbG91ZFN0YWNrIHBvdXIgZMOpc2FjdGl2ZXIgbCdhbGxvY2F0aW9uIGRlIG5vdXZlbGxlcyBtYWNoaW5lcyB2aXJ0dWVsbGVzIGF1IGNsdXN0ZXIuAExlIHNlcnZldXIgZGUgZ2VzdGlvbiB2YSB0w6lsw6ljaGFyZ2VyIGwnSVNPLiBFbiBmb25jdGlvbiBkZSBsYSB0YWlsbGUgZGUgbCdJU08sIGNlbGEgcGV1dCBwcmVuZHJlIHVuIGxvbmcgbW9tZW50LiBMYSBjb2xvbm5lIHN0YXR1cyBkZSBsJ0lTTyB2YSBhZmZpY2hlciBQcsOqdCB1bmUgZm9pcyBxdSdlbGxlIGF1cmEgw6l0w6kgdMOpbMOpY2hhcmfDqWUgYXZlYyBzdWNjw6hzIGRhbnMgbGUgc3RvY2thZ2Ugc2Vjb25kYWlyZS4gQ2xpcXVlciBzdXIgUmFmcmHDrmNoaXIgbWV0IMOgIGpvdXIgbGUgcG91cmNlbnRhZ2UgZGUgdMOpbMOpY2hhcmdlbWVudC4ATGEgVk0gZXN0IGVuIGZvbmN0aW9ubmVtZW50LiBBcnLDqnRlciBsZXMgVk1zIHF1aSBuZSBwZXV2ZW50IHBhcyDDqnRyZSBtaWdyw6llcyDDoCBjaGF1ZC4ATGEgVk0gZG9pdCBhdm9pciBjZXJ0YWlucyBwb3J0cyBvdXZlcnRzIHBvdXIgYWNjZXB0ZXIgbGUgdHJhZmljLiBQYXIgZXhlbXBsZSwgZGFucyB1bmUgem9uZSBiYXNpcXVlLCB1bmUgbm91dmVsbGUgVk0gcGV1dCDDqnRyZSBhc3NpZ27DqWUgw6AgdW4gZ3JvdXBlIGRlIHPDqWN1cml0w6kgcXVpIGF1dG9yaXNlIGxlIHRyYWZpYyBlbnRyYW50LiBDZWxhIGTDqXBlbmQgZHUgZ3JvdXBlIGRlIHPDqWN1cml0w6kgY2hvaXNpIGxvcnMgZGUgbGEgY3LDqWF0aW9uIGRlIGxhIFZNLiBEYW5zIGQnYXV0cmVzIGNhcywgdm91cyBwb3V2ZXogb3V2cmlyIHVuIHBvcnQgZW4gY29uZmlndXJhbnQgdW5lIHN0cmF0w6lnaWUgZGUgdHJhbnNmZXJ0IGRlIHBvcnQuIFZvaXIgYOKAnFRyYW5zZmVydCBkZSBwb3J0IGV0IHBhcmVmZXUgSVDigJ0gPG5ldHdvcmtpbmcyLmh0bWwjaXAtZm9yd2FyZGluZy1hbmQtZmlyZXdhbGxpbmc+YF8uAEwnYWRtaW5pc3RyYXRldXIgZHUgY2xvdWQgcGV1dCB1dGlsaXNlciBsZXMgdmFyaWFibGVzIGRlIGNvbmZpZ3VyYXRpb24gZ2xvYmFsZSBwb3VyIGNvbnRyw7RsZXIgbGUgY29tcG9ydGVtZW50IGRlcyBpbnN0YW50YW7DqXMgZGUgVk0uIFBvdXIgZml4ZXIgY2VzIHZhcmlhYmxlcywgYWxsZXIgZGFucyBsYSB6b25lIFBhcmFtw6h0cmVzIGdsb2JhdXggZGUgbCdpbnRlcmZhY2UgdXRpbGlzYXRldXIgZGUgQ2xvdWRTdGFjay4ATGUgZm9ybWF0IHBhciBkw6lmYXV0IGR1IG5vbSBpbnRlcm5lIGVzdCBpLTx1c2VyXF9pZD4tPHZtXF9pZD4tPGluc3RhbmNlLm5hbWU+LCBvw7kgaW5zdGFuY2UubmFtZSBlc3QgdW4gcGFyYW3DqHRyZSBnbG9iYWwuIFRvdXRlZm9pcywgc2kgdm0uaW5zdGFuY2VuYW1lLmZsYWcgZXN0IGTDqWZpbmkgc3VyIHRydWUsIGV0IHNpIHVuIG5vbSBkJ2FmZmljaGFnZSBlc3QgZm91cm5pIMOgIGxhIGNyw6lhdGlvbiBkJ3VuZSBWTSBpbnZpdMOpZSwgbGUgbm9tIGQnYWZmaWNoYWdlIGVzdCBham91dMOpIGF1IG5vbSBpbnRlcm5lIGRlIGxhIFZNIGludml0w6llIHN1ciBsJ2jDtHRlLiBDZWxhIHRyYW5zZm9ybWUgbGUgZm9ybWF0IGRlIG5vbSBpbnRlcm5lIHBvdXIgaS08dXNlclxfaWQ+LTx2bVxfaWQ+LTxkaXNwbGF5TmFtZT4uIExhIHZhbGV1ciBwYXIgZMOpZmF1dCBkZSB2bS5pbnN0YW5jZW5hbWUuZmxhZyBlc3QgZMOpZmluaWUgc3VyIGZhbHNlLiBDZXR0ZSBmb25jdGlvbm5hbGl0w6kgZXN0IGRlc3RpbsOpZSDDoCBmYWNpbGl0ZXIgbGEgY29ycsOpbGF0aW9uIGVudHJlIGxlcyBub21zIGQnaW5zdGFuY2VzIGV0IGxlcyBub21zIGludGVybmVzIGRhbnMgbGVzIGTDqXBsb2llbWVudHMgZGUgZ3JhbmRzIGNlbnRyZXMgZGUgZG9ubsOpZXMuAEwnaMO0dGUgZGUgZGVzdGluYXRpb24gZG9pdCBhdm9pciBzdWZmaXNhbW1lbnQgZGUgY2FwYWNpdMOpIGRlIGRpc3BvbmlibGVzLiBTaSBjZSBuJ2VzdCBwYXMgbGUgY2FzLCBsYSBWTSB2YSByZXN0ZXIgZGFucyBsJ8OpdGF0ICJtaWdyYXRpbmciIGp1c3F1J8OgIGNlIHF1ZSBsYSBtw6ltb2lyZSBzb2l0IGRpc3BvbmlibGUuAExlIHRhYmxlYXUgc3VpdmFudCBleHBsaXF1ZSBjb21tZW50IHVuIG5vbSBkZSBWTSBlc3QgYWZmaWNow6kgZW4gZm9uY3Rpb24gZHUgc2PDqW5hcmlvLgBMZSBub21icmUgbWF4aW11bSBkJ2luc3RhbnRhbsOpcyBkZSBWTSBxdWkgcGV1dmVudCDDqnRyZSBzYXV2w6lzIHBvdXIgbidpbXBvcnRlIHF1ZWxsZSBtYWNoaW5lIHZpcnR1ZWxsZSBkdSBjbG91ZC4gTGUgbm9tYnJlIHRvdGFsIHBvc3NpYmxlIGQnaW5zdGFudGFuw6lzIGRlIFZNIGRhbnMgbGUgY2xvdWQgZXN0IChub21icmUgZGUgVk1zKSBcKiB2bXNuYXBzaG90cy5tYXguIFNpIGxlIG5vbWJyZSBkJ2luc3RhbnRhbsOpcyBkZSBuJ2ltcG9ydGUgcXVlbGxlIFZNIGF0dGVpbnQgbGUgbWF4aW11bSwgbCdpbnN0YW50YW7DqSBsZSBwbHVzIHZpZXV4IHNlcmEgc3VwcHJpbcOpIHBhciBsZSBqb2IgZGUgbmV0dG95YWdlIGQnaW5zdGFudGFuw6lzLgBMZXMgbm91dmVsbGVzIHZhbGV1cnMgZGUgQ1BVIGV0IGRlIFJBTSBkZW1hbmTDqWVzIGRvaXZlbnQgc2UgdHJvdXZlciBkYW5zIGxlcyBjb250cmFpbnRlcyBhdXRvcmlzw6llcyBwYXIgbCdoeXBlcnZpc2V1ciBldCBsZSBzeXN0w6htZSBkJ2V4cGxvaXRhdGlvbiBkZSBsYSBWTS4ATGEgc29ydGllIGVzdCBxdWVscXVlIGNob3NlIGRlIHNpbWlsYWlyZSDDoCBjZSBxdWkgZXN0IGRvbm7DqSBjaS1kZXNzb3VzIDoATCdhZG1pbmlzdHJhdGV1ciByYWNpbmUgZXN0IGNvbm5lY3TDqS4gTGVzIGFkbWluaXN0cmF0ZXVycyBkdSBkb21haW5lIGV0IGxlcyB1dGlsaXNhdGV1cnMgbmUgcGV1dmVudCBwYXMgZWZmZWN0dWVyIGRlIG1pZ3JhdGlvbiBtYW51ZWxsZSDDoCBjaGF1ZCBkZXMgVk0uAExhIHBvcnTDqWUgZCd1biBncm91cGUgZCdhZmZpbml0w6kgZXN0IGRlIGwnb3JkcmUgZHUgY29tcHRlIHV0aWxpc2F0ZXVyLgBMJ2luc3RhbnRhbsOpIGVzdCBjcsOpw6kgw6AgbCdhaWRlIGRlcyBvdXRpbHMgbmF0aWZzIGRlIGdlc3Rpb24gZGVzIGluc3RhbnRhbsOpcyBkZSBsJ2h5cGVydmlzZXVyLiBMJ2luc3RhbnRhbsOpIGRlIGxhIFZNIG4naW5jbHV0IHBhcyBzZXVsZW1lbnQgbGVzIHZvbHVtZXMgZGUgZG9ubsOpZXMsIG1haXMgw6lnYWxlbWVudCwgbGUgY2FzIMOpY2jDqWFudCwgc29uIMOpdGF0IENQVSBzaSBsYSBWTSBlc3QgZW4gY291cnMgZCdleMOpY3V0aW9uIG91IGTDqXNhY3RpdsOpZSBldCBsZSBjb250ZW51IGRlIGxhIG3DqW1vaXJlLiBMJ2luc3RhbnRhbsOpIGVzdCBzdG9ja8OpIHN1ciBsZSBzdG9ja2FnZSBwcmltYWlyZSBkZSBDbG91ZFN0YWNrLgBMZSBzeXN0w6htZSBwbGFjZSBsYSBtYWNoaW5lIHZpcnR1ZWxsZSBkYW5zIGwnw6l0YXQgc3RvcHDDqWUgc2kgaWwgbmUgcmXDp29pdCBwYXMgZGUgYmF0dGVtZW50IGRlIGNvZXVyIGRlcHVpcyBsJ2h5cGVydmlzZXVyIGR1cmFudCAzIG1pbnV0ZXMuAExlIHN5c3TDqG1lIHZhIGTDqW1hcnJlciBsYSBtYWNoaW5lIHZpcnR1ZWxsZSBkZXB1aXMgbCfDqXRhdCBzdG9wcMOpZSBhdXRvbWF0aXF1ZW1lbnQgc2kgbGEgbWFjaGluZSB2aXJ0dWVsbGUgZXN0IG1hcnF1w6llIHBvdXIgbGEgSEEuAEwndXRpbGlzYXRldXIgcGV1dCByZWTDqW1hcnJlciBtYW51ZWxsZW1lbnQgbGEgbWFjaGluZSB2aXJ0dWVsbGUgZGVwdWlzIGwnw6l0YXQgc3RvcHDDqWUuAExlIFhlblNlcnZlciA2LjIgZXQgdmVyc2lvbnMgdWx0w6lyaWV1cmVzIGF2ZWMgdkdQVSBhY3RpdsOpLiBQb3VyIHBsdXMgZCdpbmZvcm1hdGlvbiwgdm9pciBgQ2l0cml4IDNEIEdyYXBoaWNzIFBhY2sgPGh0dHBzOi8vd3d3LmNpdHJpeC5jb20vZ28vcHJpdmF0ZS92Z3B1Lmh0bWw+YF8uAENldCBleGVtcGxlIHV0aWxpc2UgY2xvdWQtaW5pdCBwb3VyIG1ldHRyZSDDoCBqb3VyIGxlIHN5c3TDqG1lIGQnZXhwbG9pdGF0aW9uIGQndW5lIFZNIG5vdXZlbGxlbWVudCBjcsOpZSA6AFBvdXIgYWNjw6lkZXIgw6AgdW5lIFZNIGRpcmVjdGVtZW50IMOgIHRyYXZlcnMgbGUgcsOpc2VhdSA6IABQb3VyIGFjY8OpZGVyIMOgIHVuZSBWTSBkZXB1aXMgbCdpbnRlcmZhY2UgdXRpbGlzYXRldXIgZGUgQ2xvdWRTdGFjayA6AFBvdXIgYWpvdXRlciB1biBncm91cGUgZCdhZmZpbml0w6kgOgBQb3VyIGFzc2lnbmVyIHVuZSBub3V2ZWxsZSBWTSDDoCB1biBncm91cGUgZCdhZmZpbml0w6kgOgBQb3VyIGFzc2lnbmVyIHVuZSBWTSBleGlzdGFudGUgw6AgdW4gZ3JvdXBlIGQnYWZmaW5pdMOpIDoAUG91ciDDqnRyZSBjZXJ0YWluIHF1ZSBsZXMgb3V0aWxzIFhlbiBvdSBWTXdhcmUgc29pZW50IGJpZW4gaW5zdGFsbMOpcywgdXRpbGlzZXogdW5lIGRlcyB0ZWNobmlxdWVzIHN1aXZhbnRlcyA6AFBvdXIgY2hhbmdlciBsJ2ltYWdlIGRlIGJhc2UgZCd1bmUgVk0sIGFwcGVsZXIgbGEgY29tbWFuZGUgZCdBUEkgcmVzdG9yZVZpcnR1YWxNYWNoaW5lIGV0IGx1aSBwYXNzZXIgbCdJRCBkZSBsYSBtYWNoaW5lIHZpcnR1ZWxsZSBldCBsJ0lEIGR1IG5vdXZlYXUgbW9kw6hsZS4gTGUgcGFyYW3DqHRyZSBJRCBkdSBtb2TDqGxlIHBldXQgZmFpcmUgcsOpZsOpcmVuY2Ugc29pdCDDoCB1biBtb2TDqGxlIHNvaXQgw6AgdW5lIElTTywgZW4gZm9uY3Rpb24gZHUgdHlwZSBkJ2ltYWdlIGRlIGJhc2Ugc3VyIGxlcXVlbCBsYSBWTSDDqXRhaXQgZMOpasOgIGJhc8OpZSAoaWwgZG9pdCBjb3JyZXNwb25kcmUgw6Agc29uIHByw6ljw6lkZW50IHR5cGUgZCdpbWFnZSkuIExvcnNxdWUgY2V0IGFwcGVsIGFycml2ZSwgbGUgZGlzcXVlIHN5c3TDqG1lIGRlIGxhIFZNIGVzdCBlbiBwcmVtaWVyIGTDqXRydWl0LCBwdWlzIHVuIG5vdXZlYXUgZGlzcXVlIHN5c3TDqG1lIGVzdCBjcsOpw6kgZGVwdWlzIGxhIHNvdXJjZSBkw6lzaWduw6llIGRhbnMgbGUgcGFyYW3DqHRyZSBJRCBkdSBtb2TDqGxlLiBMZSBub3V2ZWF1IGRpc3F1ZSBzeXN0w6htZSBlc3QgYXR0YWNow6kgw6AgbGEgVk0gZXQgbGEgVk0gZXN0IG1haW50ZW5hbnQgYmFzw6llIHN1ciBsZSBub3V2ZWF1IG1vZMOobGUuAFBvdXIgY29uZmlndXJlciBjZXR0ZSBmb25jdGlvbm5hbGl0w6ksIHV0aWxpc2VyIGxlcyBub3V2ZWxsZXMgdmFyaWFibGVzIGRlIGNvbmZpZ3VyYXRpb24gc3VpdmFudGVzIDoAUG91ciBjcsOpZXIgdW5lIFZNIGRlcHVpcyB1biBtb2TDqGxlIDoAUG91ciBjcsOpZXIgdW5lIFZNIGRlcHVpcyB1biBJU08gOgBQb3VyIHByZW5kcmUgdW4gaW5zdGFudGFuw6kgZCd1bmUgVk0gZW4gdXRpbGlzYW50IGwnaW50ZXJmYWNlIHV0aWxpc2F0ZXVyIGRlIENsb3VkU3RhY2sgOgBQb3VyIHN1cHByaW1lciB1biBpbnN0YW50YW7DqSBvdSByZXN0YXVyZXIgdW5lIFZNIMOgIHNvbiDDqXRhdCBzYXV2ZWdhcmTDqSBkZXB1aXMgdW4gaW5zdGFudGFuw6kgcGFydGljdWxpZXIgOgBQb3VyIHN1cHByaW1lciB1bmUgbWFjaGluZSB2aXJ0dWVsbGUgOiAAUG91ciBzdXBwcmltZXIgdW4gZ3JvdXBlIGQnYWZmaW5pdMOpIDoAUG91ciBzdXBwcmltZXIgdW4gaW5zdGFudGFuw6ksIGNsaXF1ZXIgc3VyIGxlIGJvdXRvbiBTdXBwcmltZXIuICB8ZGVsZXRlLWJ1dHRvbi5wbmd8AFBvdXIgZMOpbGl2cmVyIGRlcyBpbWFnZXMgaGF1dGVzIGZyw6lxdWVuY2VzIGRlcHVpcyBwbHVzaWV1cnMgcG9zdGVzIHN1ciB1biB2R1BVLCBpbnN0YWxsZXIgWGVuRGVza3RvcCBhdmVjIHVuZSBjYXJ0ZSBncmFwaGlxdWUgZGlzdGFudGUgSERYIDNEIFByby4AUG91ciByZW5kcmUgZGlzcG9uaWJsZXMgZGVzIHN5c3TDqG1lcyBkJ2V4cGxvaXRhdGlvbiBzdXBwbMOpbWVudGFpcmVzIG91IGQnYXV0cmVzIGxvZ2ljaWVscyBldCBsZXMgdXRpbGlzZXIgYXZlYyBkZXMgVk1zIGludml0w6llcywgdm91cyBwb3V2ZXogYWpvdXRlciB1biBJU08uIFVuIElTTyBhIHR5cGlxdWVtZW50IHZvY2F0aW9uIGEgw6p0cmUgdW5lIGltYWdlIGQndW4gc3lzdMOobWUgZCdleHBsb2l0YXRpb24sIG1haXMgdm91cyBwb3V2ZXogYXVzc2kgYWpvdXRlciBkJ2F1dHJlcyB0eXBlcyBkZSBsb2dpY2llbHMsIGNvbW1lIGRlcyBhcHBsaWNhdGlvbnMgZGUgYnVyZWF1IHF1ZSB2b3VzIHZvdWxleiBpbnN0YWxsZXIgY29tbWUgdW5lIHBhcnRpZSBkJ3VuIG1vZMOobGUuAFBvdXIgbWlncmVyIG1hbnVlbGxlIMOgIGNoYXVkIHVuZSBtYWNoaW5lIHZpcnR1ZWxsZQBQb3VyIG1vZGlmaWVyIGxhIGNhcGFjaXTDqSBlbiBDUFUgZXQvb3UgZW4gUkFNIGQndW5lIG1hY2hpbmUgdmlydHVlbGxlLCB2b3VzIGRldmV6IGNoYW5nZXIgbCdvZmZyZSBkZSBjYWxjdWwgZCd1bmUgVk0gcG91ciB1bmUgbm91dmVsbGUgb2ZmcmUgZGUgY2FsY3VsIHF1aSBkaXNwb3NlIGRlcyB2YWxldXJzIGTDqXNpcsOpZXMgZW4gQ1BVIGV0IGVuIFJBTS4gVm91cyBwb3V2ZXogdXRpbGlzZXIgbGVzIG3Dqm1lcyDDqXRhcGVzIHF1ZSBkw6ljcml0ZXMgY2ktZGVzc3VzIGRhbnMgYOKAnENoYW5nZXIgbCdvZmZyZSBkZSBzZXJ2aWNlIGQndW5lIFZN4oCdIDwjY2hhbmdpbmctdGhlLXNlcnZpY2Utb2ZmZXJpbmctZm9yLWEtdm0+YF8sIG1haXMgcGFzc2V6IGxlcyDDqXRhcGVzIG/DuSB2b3VzIGFycsOqdGV6IGxhIG1hY2hpbmUgdmlydHVlbGxlLiBCaWVuIGVudGVuZHUsIHZvdXMgcG91dmV6IMOqdHJlIGFtZW7DqSDDoCBkZXZvaXIgY3LDqWVyIHVuZSBub3V2ZWxsZSBvZmZyZSBkZSBjYWxjdWwgZGFucyB1biBwcmVtaWVyIHRlbXBzLgBQb3VyIHJldmVuaXIgw6AgdW4gaW5zdGFudGFuw6ksIGNsaXF1ZXIgc3VyIGxlIGJvdXRvbiBSZXZlcnQuIHxyZXZlcnQtdm0ucG5nfABQb3VyIHZvaXIgcXVlbGxlcyBWTXMgc29udCBhY3R1ZWxsZW1lbnQgYXNzaWduw6llIMOgIHVuIGdyb3VwZSBkJ2FmZmluaXTDqSBwYXJ0aWN1bGllciA6AFBvdXIgdGVzdGVyIHF1ZSBsYSBnw6luw6lyYXRpb24gZGVzIGNsZWZzIFNTSCBlc3QgdW4gc3VjY8OocywgdsOpcmlmaWVyIHNpIHZvdXMgcG91dmV6IHZvdXMgY29ubmVjdGVyIMOgIGxhIGNvbmZpZ3VyYXRpb24gZHUgY2xvdWQuAFBvdXIgYXVnbWVudGVyIG91IHLDqWR1aXJlIGxlIG5pdmVhdSBkZSByZXNzb3VyY2VzIGRlIGNhbGN1bCBkaXNwb25pYmxlIHBvdXIgdW5lIG1hY2hpbmUgdmlydHVlbGxlLCB2b3VzIHBvdXZleiBjaGFuZ2VyIGwnb2ZmcmUgZGUgY2FsY3VsIGQndW5lIFZNLgBUcnVlAFR5cGUAVHlwZS4gTGUgc2V1bCB0eXBlIHByaXMgZW4gY2hhcmdlIGZvdXJuaSBhdmVjIENsb3VkU3RhY2sgZXN0IGwnQW50aS1BZmZpbml0w6kgZCdIw7R0ZS4gQ2VsYSBpbmRpcXVlIHF1ZSBsZXMgVk1zIGRhbnMgY2UgZ3JvdXBlIGRldnJhaWVudCDDqXZpdGVyIGQnw6p0cmUgcGxhY8OpZXMgZW5zZW1ibGUgc3VyIGxlIG3Dqm1lIGjDtHRlLiBTaSB2b3VzIHZveWV6IGQnYXV0cmVzIHR5cGVzIGRhbnMgY2V0dGUgbGlzdGUsIGNlbGEgdmV1dCBkaXJlIHF1ZSB2b3RyZSBpbnN0YWxsYXRpb24gZGUgQ2xvdWRTdGFjayBhIMOpdMOpIMOpdGVuZHVlIGF2ZWMgZGVzIHBsdWdpbnMgZCdhZmZpbml0w6kgZGUgZ3JvdXBlIHBlcnNvbm5hbGlzw6lzLgBVVUlEAE1ldHRyZSDDoCBqb3VyIGRlcyBWTXMgZXhpc3RhbnRlcwBWTXMgdXRpbGlzYXRldXJzIHN1ciBsZXMgaMO0dGVzIGZvbmN0aW9ubmFudCBzb3VzIFZNd2FyZSBldCBYZW5TZXJ2ZXIuAERvbm7DqWVzIHV0aWxpc2F0ZXVyIGV0IG3DqXRhLWRvbm7DqWVzAE5vbSBkJ2FmZmljaGFnZSBmb3VybmkgcGFyIGwndXRpbGlzYXRldXIATGVzIHV0aWxpc2F0ZXVycyBwZXV2ZW50IHN1cHByaW1lciBsZXVycyBtYWNoaW5lcyB2aXJ0dWVsbGVzLiBVbmUgVk0gZW4gY291cnMgZCd1dGlsaXNhdGlvbiBzZXJhIGFycsOqdMOpZSBicnV0YWxlbWVudCBhdmFudCBzdXBwcmVzc2lvbi4gTGVzIGFkbWluaXN0cmF0ZXVycyBwZXV2ZW50IHN1cHByaW1lciBuJ2ltcG9ydGUgcXVlbGxlIFZNLgBVdGlsaXNlciBDbG91ZC1Jbml0AFV0aWxpc2VyIGxlcyBjbGVmcyBTU0ggcG91ciBsJ2F1dGhlbnRpZmljYXRpb24uAFV0aWxpc2F0aW9uIGRlcyBpbnN0YW50YW7DqXMgZGUgVk0AQ3ljbGUgZGUgdmllIGQndW5lIFZNAExlcyBpbnN0YW50YW7DqXMgc29udCBzdXBwcmltw6lzIGF1dG9tYXRpcXVlbWVudCBsb3JzcXUndW4gVk0gZXN0IGTDqXRydWl0ZS4gVm91cyBuJ2F2ZXogcGFzIMOgIHN1cHByaW1lciBtYW51ZWxsZW1lbnQgbGVzIGluc3RhbnRhbsOpcyBkYW5zIGNlIGNhcy4ATGVzIGluc3RhbnRhbsOpcyBwZXV2ZW50IGF2b2lyIGRlcyByZWxhdGlvbnMgcGFyZW50L2VuZmFudC4gQ2hhcXVlIGluc3RhbnRhbsOpIHN1Y2Nlc3NpZiBkJ3VuZSBtw6ptZSBWTSBlc3QgbCdlbmZhbnQgZGUgbCdpbnN0YW50YW7DqSBxdWkgdmllbnQgYXZhbnQgbHVpLiBBIGNoYXF1ZSBmb2lzIHF1ZSB2b3VzIHByZW5leiB1biBpbnN0YW50YW7DqSBlbiBwbHVzIGRlIGxhIG3Dqm1lIFZNLCBpbCBuZSBzYXV2ZWdhcmRlIHF1ZSBsZXMgZGlmZsOpcmVuY2VzIGVudHJlIGwnw6l0YXQgY291cmFudCBkZSBsYSBWTSBldCBsJ8OpdGF0IHN0b2Nrw6kgZGFucyBsJ2luc3RhbnRhbsOpIHByw6ljw6lkZW50IGxlIHBsdXMgcsOpY2VudC4gTCdpbnN0YW50YW7DqSBwcsOpY8OpZGVudCBkZXZpZW50IHVuIHBhcmVudCBldCBsZSBub3V2ZWwgaW5zdGFudGFuw6kgZGV2aWVudCBzb24gZmlscy4gSWwgZXN0IHBvc3NpYmxlIGRlIGNyw6llciB1bmUgbG9uZ3VlIGhpw6lyYXJjaGllIGRlIGNlcyBpbnN0YW50YW7DqXMgcGFyZW50L2VuZmFudCwgcXVpIGNvcnJlc3BvbmRlbnQgw6AgdW4gZW5yZWdpc3RyZW1lbnQgInJlZG8iIG1lbmFudCBkZSBsJ8OpdGF0IGFjdHVlbCBkZSBsYSBWTSDDoCBzb24gw6l0YXQgb3JpZ2luYWwuAExlcyBpbnN0YW50YW7DqXMgcXVpIGluY2x1ZW50IMOgIGxhIGZvaXMgZGVzIHZvbHVtZXMgZGUgZG9ubsOpZXMgZXQgbGEgbcOpbW9pcmUgbmUgcGV1dmVudCBwYXMgw6p0cmUgY29uc2VydsOpcyBzaSB2b3VzIGNoYW5nZXogbCdvZmZyZSBkZSBzZXJ2aWNlIGRlIGxhIFZNLiAgVG91dCBpbnN0YW50YW7DqSBkZSBjZSB0eXBlIHNlcmEgc3VwcHJpbcOpLgBMZXMgb3V0aWxzIFZNd2FyZSBvdSBYZW5TZXJ2ZXIgZG9pdmVudCDDqnRyZSBpbnN0YWxsw6lzIHN1ciBsYSBtYWNoaW5lIHZpcnR1ZWxsZS4AQWxsb2NhdGlvbiB2ZXJ0aWNhbGUgZXQgaG9yaXpvbnRhbGUuIEwnYWxsb2NhdGlvbiB2ZXJ0aWNhbGUgdXRpbGlzZSB0b3V0ZXMgbGVzIHJlc3NvdXJjZXMgZCd1biBow7R0ZSBhdmFudCBkJ2FsbG91ZXIgbGVzIGludml0w6lzIMOgIGwnaMO0dGUgc3VpdmFudC4gQ2VsYSByw6lkdWl0IGxhIGNvbnNvbW1hdGlvbiBkJ8OpbmVyZ2llIGRhbnMgbGUgY2xvdWQuIEwnYWxsb2NhdGlvbiBob3Jpem9udGFsZSBwb3NpdGlvbm5lIGxlcyBpbnZpdMOpcyBzdXIgbGVzIGjDtHRlcyDDoCB0b3VyIGRlIHLDtGxlIChyb3VuZC1yb2JpbikuIENlbGEgcGV1dCBvZmZyaXIgZGUgbWVpbGxldXJlcyBwZXJmb3JtYW5jZXMgYXV4IGludml0w6lzIGRhbnMgY2VydGFpbnMgY2FzLgBWb2lyIGxlcyBtZW1icmVzIGQndW4gZ3JvdXBlIGQnYWZmaW5pdMOpAExlcyBpbnN0YW50YW7DqXMgZGUgbWFjaGluZSB2aXJ0dWVsbGVzAExlcyBtYWNoaW5lcyB2aXJ0dWVsbGVzIHNvbnQgZ8OpbsOpcmFsZW1lbnQgY3LDqcOpZXMgZGVwdWlzIHVuIG1vZMOobGUuIExlcyB1dGlsaXNhdGV1cnMgcGV1dmVudCDDqWdhbGVtZW50IGNyw6llciBkZXMgbWFjaGluZXMgdmlydHVlbGxlcyB2aWVyZ2VzLiBVbmUgbWFjaGluZSB2aXJ0dWVsbGUgdmllcmdlIGVzdCB1bmUgbWFjaGluZSB2aXJ0dWVsbGUgc2FucyBtb2TDqGxlIGQnT1MuIExlcyB1dGlsaXNhdGV1cnMgcGV1dmVudCBhdHRhY2hlciB1biBmaWNoaWVyIElTTyBldCBpbnN0YWxsZXIgbCdPUyBkZXB1aXMgbGUgQ0QvRFZELVJPTS4ATGVzIG1hY2hpbmVzIHZpcnR1ZWxsZXMgcGV1dmVudCBzZSB0cm91dmVyIGRhbnMgbGVzIMOpdGF0cyBzdWl2YW50cyA6AExvcnNxdWUgdm91cyBlbnJlZ2lzdHJleiB1biBub3V2ZWF1IG1vZMOobGUsIGwnYWRtaW5pc3RyYXRldXIgb3UgbCd1dGlsaXNhdGV1ciBwZXV2ZW50IGluZGlxdWVyIHNpIGxlcyBvdXRpbHMgb250IMOpdMOpIGluc3RhbGzDqXMgc3VyIGxlIG1vZMOobGUuIENlbGEgcGV1dCDDqnRyZSBmYWl0IHZpYSBsJ2ludGVyZmFjZSB1dGlsaXNhdGV1ciBvdSBlbiB1dGlsaXNhbnQgbCdBUEkgdXBkYXRlVGVtcGxhdGU7IG91LABMb3JzIGR1IHJlZGltZW5zaW9ubmVtZW50IGRlIGxhIG3DqW1vaXJlIG91IGR1IENQVSBkJ3VuZSBWTSBMaW51eCBzdXIgVk13YXJlLCB2b3VzIHBvdXJyaWV6IGRldm9pciBsYW5jZXIgZGVzIHNjcmlwdHMgZW4gY29tcGzDqW1lbnQgZGVzIGF1dHJlcyDDqXRhcGVzIG1lbnRpb25uw6llcyBjaS1kZXNzdXMuIFBvdXIgcGx1cyBkJ2luZm9ybWF0aW9uLCB2b2lyIGBBam91dCBkZSBtw6ltb2lyZSDDoCBjaGF1ZCBkYW5zIExpbnV4ICgxMDEyNzY0KSA8aHR0cDovL2tiLnZtd2FyZS5jb20vc2VsZnNlcnZpY2UvbWljcm9zaXRlcy9zZWFyY2guZG8/bGFuZ3VhZ2U9ZW5fVVMmY21kPWRpc3BsYXlLQyZleHRlcm5hbElkPTEwMTI3NjQ+YF8gZGFucyBsYSBiYXNlIGRlIGNvbm5haXNzYW5jZXMgZGUgVk13YXJlLgBMb3JzcXVlIGNldHRlIG9wdGlvbiBlc3QgdXRpbGlzw6llIGF2ZWMgbGUgc3RvY2thZ2UgcHJpbWFpcmUgZm91cm5pdCBwYXIgQ2xvdWRTdGFjaywgbCdvcMOpcmF0aW9uIGRlIG1pc2UgYXUgcmVwb3MgZXN0IGVmZmVjdHXDqWUgcGFyIGwnaHlwZXJ2aXNldXIgY29uY2VybsOpIChWTXdhcmUgZXN0IHN1cHBvcnTDqSkuIFF1YW5kIGVsbGUgZXN0IHV0aWxpc8OpZSBhdmVjIHVuIGF1dHJlIHBsdWdpbiBkZSBzdG9ja2FnZSBwcmltYWlyZSwgbCdvcMOpcmF0aW9uIGRlIG1pc2UgZW4gcmVwb3MgZXN0IGZvdXJuaXQgZW4gZm9uY3Rpb24gZGUgbCdpbXBsw6ltZW50YXRpb24gZGUgbCfDqWRpdGV1ci4AUXVhbmQgdm91cyBlbnZveWV6IHVuZSBkZW1hbmRlIGRlIHJlZGltZW5zaW9ubmVtZW50IGR5bmFtaXF1ZSwgbGVzIHJlc3NvdXJjZXMgdm9udCDDqnRyZSBhdWdtZW50w6llcyBzdXIgbGUgaMO0dGUgY291cmFudCBzaSBwb3NzaWJsZS4gU2kgbGUgaMO0dGUgbidhIHBhcyBhc3NleiBkZSByZXNzb3VyY2VzLCBsYSBWTSB2YSDDqnRyZSBtaWdyw6llIMOgIGNoYXVkIHZlcnMgdW4gYXV0cmUgaMO0dGUgZGFucyBsZSBtw6ptZSBjbHVzdGVyLiBTJ2lsIG4neSBhIHBhcyBkJ2jDtHRlcyBkYW5zIGxlIGNsdXN0ZXIgcXVpIHBldXZlbnQgY29tcGzDqHRlbWVudCByw6lwb25kcmUgw6AgbGEgcmVxdcOqdGUgYXUgbml2ZWF1IGR1IENQVSBldCBkZSBsYSBSQU0sIGwnb3DDqXJhdGlvbiBkZSByZWRpbWVuc2lvbm5lbWVudCB2YSDDqWNob3Vlci4gTGEgVk0gdmEgY29udGludWVyIMOgIGZvbmN0aW9ubmVyIGNvbW1lIGF2YW50LgBXaW5kb3dzIDcgKHg4NiBhbmQgeDY0KQBXaW5kb3dzIDggKHg4NiBhbmQgeDY0KQBXaW5kb3dzIDguMSAoIkJsdWUiKSAoeDg2IGFuZCB4NjQpAFdpbmRvd3MgU2VydmVyIDIwMDggUjIAV2luZG93cyBTZXJ2ZXIgMjAxMgBXaW5kb3dzIFNlcnZlciAyMDEyIFIyIChzZXJ2ZXVyIGVxdWl2YWxlbnQgb2YgIkJsdWUiKQBBdmVjIGxhIGNvbW1hbmRlIGQnQVBJIHJlc2V0U1NIS2V5Rm9yVmlydHVhbE1hY2hpbmUsIHVuIHV0aWxpc2F0ZXVyIHBldXQgY29uZmlndXJlciBvdSByw6lpbml0aWFsaXNlciBsYSBiaS1jbGVmcyBTU0ggYXNzaWduw6llIMOgIHVuZSBtYWNoaW5lIHZpcnR1ZWxsZS4gVW5lIGJpLWNsZWYgcGVyZHVlIG91IGNvbXByb21pc2UgcGV1dCDDqnRyZSBjaGFuZ8OpZSBldCBsJ3V0aWxpc2F0ZXVyIHBldXQgYWNjw6lkZXIgw6AgbGEgVk0gZW4gdXRpbGlzYW50IGxhIG5vdXZlYXUgYmktY2xlZi4gQ3LDqWVyIHNpbXBsZW1lbnQgb3UgZW5yZWdpc3RyZXIgdW5lIG5vdXZlbGxlIGJpLWNsZWZzLCBwdWlzIGFwcGVsZXIgcmVzZXRTU0hLZXlGb3JWaXJ0dWFsTWFjaGluZS4AVHJhdmFpbGxlciBhdmVjIGxlcyBJU09zAFRyYXZhaWxsZXIgYXZlYyBsZXMgTWFjaGluZXMgVmlydHVlbGxlcwBMZXMgb3V0aWxzIFhlblNlcnZlciBzb250IGluc3RhbGzDqXMgc3VyIGxhIFZNIHBvdXIgb2J0ZW5pciBsZSBtYXhpbXVtIGRlIHBlcmZvcm1hbmNlIHN1ciBYZW5TZXJ2ZXIsIGluZMOpcGVuZGFtbWVudCBkdSB0eXBlIGRlIHZHUFUgcXVlIHZvdXMgdXRpbGlzZXouIFNhbnMgbGVzIGRyaXZlcnMgb3B0aW1pc8OpcyBkdSByw6lzZWF1IGV0IGR1IHN0b2NrYWdlIHF1ZSBsZXMgb3V0aWxzIFhlblNlcnZlciBmb3Vybmlzc2VudCwgbGVzIGFwcGxpY2F0aW9ucyBncmFwaGlxdWVzIGRpc3RhbnRlcyBmb25jdGlvbm5hbnQgc3VyIGxlIHZHUFUgR1JJRCBuZSB2b250IHBhcyBkw6lsaXZyZXIgbGUgbWF4aW11bSBkZSBwZXJmb3JtYW5jZS4AT3VpAFZvdXMgcG91dmV6IGF1c3NpIG9tZXR0cmUgbGUgcGFyYW3DqHRyZSBJRCBkdSBtb2TDqGxlIGRlcHVpcyBsJ2FwcGVsIHJlc3RvcmVWaXJ0dWFsTWFjaGluZS4gRGFucyBjZSBjYXMsIGxlIGRpc3F1ZSBzeXN0w6htZSBkZSBsYSBWTSBzZXJhIGTDqXRydWl0IGV0IHJlY3LDqcOpLCBtYWlzIGRlcHVpcyBsZSBtw6ptZSBtb2TDqGxlIG91IGxlIG3Dqm1lIElTTyBxdWkgw6l0YWl0IGTDqWrDoCB1dGlsaXPDqSBwYXIgbGEgVk0uAFZvdXMgcG91dmV6IGFqb3V0ZXIgbGUgbm9tIGFmZmljaMOpIGQndW5lIFZNIGludml0w6llIMOgIHNvbiBub20gaW50ZXJuZS4gUG91ciBwbHVzIGQnaW5mb3JtYXRpb25zLCB2b2lyIGDigJxBam91dGVyIHVuIG5vbSBkJ2FmZmljaGFnZSBhdSBub20gaW50ZXJuZSBkJ3VuZSBWTSBpbnZpdMOp4oCdIDwjYXBwZW5kaW5nLWEtZGlzcGxheS1uYW1lLXRvLXRoZS1ndWVzdC12bXMtaW50ZXJuYWwtbmFtZT5gXy4AVm91cyBwb3V2ZXogY3LDqWVyIHVuZSBWTSBzYW5zIGxhIGTDqW1hcnJlci4gVm91cyBwb3V2ZXogZMOpdGVybWluZXIgc2kgbGEgbWFjaGluZSB2aXJ0dWVsbGUgZG9pdCDDqnRyZSBsYW5jw6llIGRhbnMgbGUgY2FkcmUgZGUgc29uIGTDqXBsb2llbWVudC4gTGUgcGFyYW3DqHRyZSBzdGFydFZNIGRlIGwnQVBJIGRlcGxveVZtIGZvdXJuaXQgY2V0dGUgZm9uY3Rpb25uYWxpdMOpLiBQb3VyIHBsdXMgZCdpbmZvcm1hdGlvbnMsIHZvaXIgbGUgR3VpZGUgZHUgRMOpdmVsb3BwZXVyLgBWb3VzIG5lIHBvdXZleiBwYXMgcmVkaW1lbnNpb25uZXIgZHluYW1pcXVlbWVudCBsZXMgVk1zIHN5c3TDqG1lcyBzdXIgWGVuWGVydmVyLgBWb3VzIG5lIHBvdXZleiBwYXMgcHJlbmRyZSBkJ2luc3RhbnRhbsOpIGQndW5lIFZNIGVuIG3Dqm1lIHRlbXBzIHF1ZSB2b3VzIHByZW5leiB1biBpbnN0YW50YW7DqSBkZSB2b2x1bWUuAFZvdXMgbmUgcG91dmV6IHBhcyBjcsOpZXIgbCdpbnN0YW5jZSBlbiB1dGlsaXNhbnQgbCdpbnRlcmZhY2UgZ3JhcGhpcXVlIMOgIGNlIG1vbWVudCBldCBhc3NvY2llciBsJ2luc3RhbmNlIGF2ZWMgbGEgYmktY2xlZnMgU1NIIG5vdXZlbGxlbWVudCBjcsOpw6llLgBWb3VzIGRldmV6IGZhaXJlIHVuIGFwcGVsIMOgIGxhIG3DqXRob2RlIGQnQVBJIGNyZWF0ZVNTSEtleVBhaXIuIFZvdXMgcG91dmV6IMOpZ2FsZW1lbnQgdXRpbGlzZXIgbGEgbGlicmFpcmllIFB5dGhvbiBkZSBDbG91ZFN0YWNrIG91IGRlcyBjb21tYW5kZXMgY3VybCBwb3VyIGZhaXJlIGwnYXBwZWwgw6AgbCdBUEkgZGUgQ2xvdWRTdGFjay4AVm91cyBuZSBkZXZyaWV6IHV0aWxpc2VyIHF1ZSBDbG91ZFN0YWNrIHBvdXIgY3LDqWVyIGxlcyBpbnN0YW50YW7DqXMgZGVzIFZNIHN1ciBsZXMgaMO0dGVzIGfDqXLDqXMgcGFyIENsb3VkU3RhY2suIFRvdXQgaW5zdGFudGFuw6kgcXVlIHZvdXMgcHJlbmRyaWV6IGRpcmVjdGVtZW50IHN1ciBsJ2h5cGVydmlzZXVyIG5lIHNlcmFpdCBwYXMgc3VpdmkgcGFyIENsb3VkU3RhY2suAGBDbG91ZC1Jbml0IDxodHRwczovL2Nsb3VkaW5pdC5yZWFkdGhlZG9jcy5vcmcvZW4vbGF0ZXN0PmBfIHBldXQgw6p0cmUgdXRpbGlzZXIgcG91ciBhY2PDqWRlciBhdXggZG9ubsOpZXMgdXRpbGlzYXRldXJzIGRlcHVpcyBsZXMgbWFjaGluZXMgdmlydHVlbGxlcy4gQ2xvdWQtaW5pdCBwZXV0IMOqdHJlIGluc3RhbGzDqSBkYW5zIGxlcyBtb2TDqGxlcyBldCBuw6lzc2l0ZSBhdXNzaSBsZXMgc2NyaXB0cyBDbG91ZFN0YWNrIHBhc3N3b3JkIGV0IHNzaGtleSAoOnJlZjpgYWRkaW5nLXBhc3N3b3JkLW1hbmFnZW1lbnQtdG8tdGVtcGxhdGVzYCBldCBgdXRpbGlzZXIgbGVzIGNsZWZzIHNzaCA8dmlydHVhbF9tYWNoaW5lcy5odG1sI3VzaW5nLXNzaC1rZXlzLWZvci1hdXRoZW50aWNhdGlvbj5gXykuIExhIGdlc3Rpb24gZHUgbW90IGRlIHBhc3NlIHV0aWxpc2F0ZXVyIGV0IGwnQVBJIGBgcmVzZXRTU0hLZXlGb3JWaXJ0dWFsTWFjaGluZWBgIG5lIHNvbnQgcGFzIGVuY29yZSBzdXBwb3J0w6lzIHBhciBjbG91ZC1pbml0LgBgYGF2YWlsYWJpbGl0eS16b25lYGAuIExlIG5vbSBkZSBsYSBab25lAGBgaW5zdGFuY2UtaWRgYC4gTGUgbm9tIGQnaW5zdGFuY2UgZGUgbGEgVk0AYGBsb2NhbC1ob3N0bmFtZWBgLiBMZSBub20gZCdow7R0ZSBkZSBsYSBWTQBgYGxvY2FsLWlwdjRgYC4gTCdhZHJlc3NlIElQIGludml0w6llIGRlIGxhIFZNAGBgcHVibGljLWhvc3RuYW1lYGAuIElkZW50aXF1ZSDDoCBwdWJsaWMtaXB2NABgYHB1YmxpYy1pcHY0YGAuIExhIHByZW1pw6hyZSBJUCBwdWJsaXF1ZSBwb3VyIGxlIHJvdXRldXIuIChFLmcuIGxhIHByZW1pw6hyZSBJUCBkJ2V0aDIpAGBgc2VydmljZS1vZmZlcmluZ2BgLiBVbmUgZGVzY3JpcHRpb24gZGUgbCdvZmZyZSBkZSBzZXJ2aWNlIGRlcyBWTS4AZm9ybWF0w6llIGVuIGJhc2U2NCA6AGVuYWJsZS5keW5hbWljLnNjYWxlLnZtIDogZml4ZXIgw6AgVHJ1ZSBwb3VyIGFjdGl2ZXIgY2V0dGUgZm9uY3Rpb25uYWxpdMOpLiBQYXIgZMOpZmF1dCwgbGEgZm9uY3Rpb25uYWxpdMOpIGVzdCBkw6lzYWN0aXbDqWUuAGktPHVzZXJcX2lkPi08dm1cX2lkPi08aW5zdGFuY2UubmFtZT4AaS08dXNlclxfaWQ+LTx2bVxfaWQ+LWRpc3BsYXlOYW1lAHNjYWxlLnJldHJ5IDogQ29tYmllbiBkZSB0ZW50YXRpdmVzIMOgIGVmZmVjdHVlciBwb3VyIGwnb3DDqXJhdGlvbiBkZSByZWRpbWVuc2lvbm5lbWVudC4gRMOpZmF1dCA9IDIuAEV4ZW1wbGUgZGUgZG9ubsOpZSB1dGlsaXNhdGV1cgB2R1BVAHZtLmluc3RhbmNlbmFtZS5mbGFnAHZtc25hcHNob3QuY3JlYXRlLndhaXQAdm1zbmFwc2hvdHMubWF4AHxiYXNpYy1kZXBsb3ltZW50LnBuZ3wA