RE: DDoS protection

"Sardina, Dominick" <[email protected]> Fri, 20 Jun 2014 14:49:29 -0400
Newsgroups gmane.comp.security.basics
Message-ID <BCC725D6E9C7CE4D97A9217A54E4FE482EEEA6148E@NJNWKMX18.enterprise.pseg.com>
QnJldHQsIEkgaGF2ZSB0byBhZ3JlZSAxMDAlLg0KDQoNClJlZ2FyZHMsDQpEb21pbmljayANCg0K
DQotLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KRnJvbTogbGlzdGJvdW5jZUBzZWN1cml0eWZv
Y3VzLmNvbSBbbWFpbHRvOmxpc3Rib3VuY2VAc2VjdXJpdHlmb2N1cy5jb21dIE9uIEJlaGFsZiBP
ZiBXYWduZXIsIEJyZXR0DQpTZW50OiBGcmlkYXksIEp1bmUgMjAsIDIwMTQgMTI6NTcgUE0NClRv
OiBIYXJ0bGV5LCBDaHJpc3RvcGhlciBKLjsgS2VsbHN0cg0KQ2M6IHNlY3VyaXR5LWJhc2ljc0Bz
ZWN1cml0eWZvY3VzLmNvbQ0KU3ViamVjdDogUkU6IEREb1MgcHJvdGVjdGlvbg0KDQpJTUhPIC0g
SSBhbSBub3QgYSBmYW4gb2YgYWxsIHRoZSBtdW1ibyBqdW1ibyB0aGF0IGdvZXMgYWxvbmcgd2l0
aCB0aGUgIkNsb3VkIiBsaWtlIGl0IGlzIGEgbmV3IGludmVudGlvbi4gSSB3b3JrZWQgYXQgR1RF
L0JCTiBpbiAxOTk5IGFuZCB3ZSB3ZXJlIHNlbGxpbmcgYWxsIHRoZSBzYW1lIGNyYXAgYmFjayB0
aGVuLiBXaXRoIHRoYXQgc2FpZCBhbmQgaGF2aW5nIHdvcmtlZCBhdCBFTUMgZm9yIGEgd2hpbGUg
eW91IGNhbiBoYXZlIGEgIkNsb3VkIiBvbiBwcmVtaXNlcyBqdXN0IG1lYW5zIHlvdSBoYXZlIHRo
ZSBoYXJkd2FyZSBpbiBvbmUgb2YgeW91ciBjb21wYW55IGxvY2F0aW9ucy4gWW91IGNhbiBoYXZl
IHByaXZhdGUsIHNoYXJlZCwgcHVibGljIG9yIGEgY29tYm8uIA0KDQpJdCBpcyB0aGUgc2FtZSBl
dm9sdXRpb24gYXMgSVQgc2VjdXJpdHkgY2lyY2EgMTk3MC04MHMgKFJhaW5ib3cgQm9vayBTZXJp
ZXMgZGF5cyksIHRoZW4gSW5mb3JtYXRpb24gU2VjdXJpdHkgY2lyY2EgMTk5MHMsIHRoZW4gSW5m
b3JtYXRpb24gQXNzdXJhbmNlIGNpcmNhIGxhdGUgOTBzIGVhcmx5IDIwMDBzIGFuZCBub3cgQ3li
ZXIgU2VjdXJpdHkuIFdpdGggZWFjaCBuYW1lIGNoYW5nZSBjb25zdWx0YW50cyBhbmQgY29tcGFu
aWVzIGNhbiBjaGFyZ2UgbW9yZSBmb3IgdGhlIHNhbWUgdWx0aW1hdGUgZ29hbCB3aXRoIGVhY2gg
bmFtZSBjaGFuZ2UuDQoNCk9LIEkgd2lsbCBub3cgZ2V0IG9mZiBteSBzb2FwYm94Lg0KLS0tLS1P
cmlnaW5hbCBNZXNzYWdlLS0tLS0NCkZyb206IGxpc3Rib3VuY2VAc2VjdXJpdHlmb2N1cy5jb20g
W21haWx0bzpsaXN0Ym91bmNlQHNlY3VyaXR5Zm9jdXMuY29tXSBPbiBCZWhhbGYgT2YgSGFydGxl
eSwgQ2hyaXN0b3BoZXIgSi4NClNlbnQ6IEZyaWRheSwgSnVuZSAyMCwgMjAxNCAxMDo0OCBBTQ0K
VG86IEtlbGxzdHINCkNjOiBzZWN1cml0eS1iYXNpY3NAc2VjdXJpdHlmb2N1cy5jb20NClN1Ympl
Y3Q6IFJlOiBERG9TIHByb3RlY3Rpb24NCg0KVGhpcyBpcyBhIGxpdHRsZSBjb25mdXNpbmc7IOKA
nGNsb3Vk4oCdLCDigJxvbi1wcmVtaXNl4oCdIGV0Y+KApiB3ZWlyZC4NCg0KQnkg4oCcQ2xvdWQs
4oCdIGl0IHNlZW0gbGlrZSB3ZSBtZWFuIOKAnGJ5IHByb3ZpZGVy4oCdIChtYWtlcyBzZW5zZSku
DQoNCk9uLXByZW1pc2UgaXMgdGhlIGJlc3Qgd2F5IHRvIGRldGVjdCBhbiBhdHRhY2sgaW1vLCBz
aW5jZSB0aGUgdmljdGltIG5ldHdvcmsga25vd3Mgd2hhdOKAmXMgZ29vZCBhbmQgd2hhdOKAmXMg
bm90IChvciBzaG91bGTigKYuKS4NCg0KU28gSSB0aGluayB0aGUgYmVzdCBzb2x1dGlvbiBpbnZv
bHZlcyBzb21lIGtpbmQgb2YgcmVtb3RlIGJsYWNraG9sZSBvciBpZGVhbGx5LCBwZXJoYXBzIGZs
b3dzcGVjLg0KDQpJIGRvbuKAmXQgdGhpbmsgaXTigJlzIGEgcHJvYmxlbSB0aGF0IHJlcXVpcmVz
IHNwZW5kaW5nIHNpZ25pZmljYW50IG1vbmV5Lg0KDQpDaHJpcw0KDQpPbiBKdW4gMTksIDIwMTQs
IGF0IDEyOjUwIFBNLCBLZWxsc3RyIDxrZWxsc3RyQGdtYWlsLmNvbT4gd3JvdGU6DQoNCj4gRGlz
Y2xhaW1lcjogSSB3b3JrIGZvciBhIGNvbXBhbnkgd2hpY2ggb2ZmZXJzIGEgRERvUyBQcm90ZWN0
aW9uIFNlcnZpY2UuDQo+IA0KPiBUaGUgYWR2YW50YWdlIG9mIGEgc2VydmljZSAiaW4gdGhlIGNs
b3VkIiBpcyB0aGF0IGlmIGFuIGF0dGFjayBleGNlZWRzIA0KPiB5b3VyIGNpcmN1aXQgYmFuZHdp
ZHRoIHRoZSBwcm92aWRlciB3aWxsIGJlIGFibGUgdG8gZHJvcCB0aGUgbWFsaWNpb3VzIA0KPiB0
cmFmZmljLiBUaGF0IGNhbm5vdCBiZSBkb25lIGF0IHlvdXIgcHJlbWlzZS4gQm90aCBBcmJvciBh
bmQgUmFkd2FyZSANCj4gb2ZmZXIgc3Ryb25nIGFwcGxpYW5jZXMgdGhhdCBjYW4gY2xlYW4gdXAg
c21hbGxlciBhdHRhY2tzIGF0IHlvdXIgDQo+IHByZW1pc2UgYW5kIGNhbiBzZW5kIGEgc2lnbmFs
IHRvIHRoZSBwcm92aWRlciBpZiB0aGV5IHN1cHBvcnQgdGhhdCANCj4gc2VydmljZS4gWW91IGNh
biBibG9jayB0cmFmZmljIHVzaW5nIElQUydzIGJ1dCBrZWVwIGluIG1pbmQgdGhleSBhcmUgDQo+
IG5vdCBkZXNpZ25lZCBmb3IgYSB2b2x1bWV0cmljIGF0dGFjayBhbmQgbWF5IGJlIG92ZXJ3aGVs
bWVkLg0KPiANCj4gT24gV2VkLCBKdW4gMTgsIDIwMTQgYXQgMTE6MTAgQU0sIExhbmNlIExhc3Nl
dHRlciANCj4gPGxhbmNlbGFzc2V0dGVyQGdtYWlsLmNvbT4gd3JvdGU6DQo+PiBXaGF0IGFib3V0
IFN1cmljYXRhIG9yIFNub3J0IElEUyBpbiBJUFMgbW9kZT8NCj4+IA0KPj4gT24gSnVuIDE4LCAy
MDE0IDg6NDMgQU0sICJNaWtoYWlsIEEuIFV0aW4iIDxtdXRpbkBjb21tb253ZWFsdGhjYXJlLm9y
Zz4gd3JvdGU6DQo+Pj4gDQo+Pj4gQXMgeW91IGluZGljYXRlZCAiIEFsdGhvdWdoIHdlJ3JlIHNt
YWxsLCBXZSdyZSBhbiBvcmdhbml6YXRpb24gcGxheWluZyB3aXRoICgkLMKlLOKCrCzCoykgZXhj
aGFuZ2VzIiB5b3UgYXJlIG9uIGNsaWVudCBzaWRlIHJhdGhlciB0aGFuIG9uIHNlcnZlci4gSWYg
dGhhdCBpcyByaWdodCwgeW91IGRvIG5vdCBuZWVkIHRvIGJvdGhlciB3aXRoIEREb1MgcHJvdGVj
dGlvbiwgd2hpY2ggaXMgYWdhaW5zdCBzZXJ2ZXIgc2lkZS4NCj4+PiBNaWtoYWlsDQo+Pj4gDQo+
Pj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4+PiBGcm9tOiBsaXN0Ym91bmNlQHNlY3Vy
aXR5Zm9jdXMuY29tDQo+Pj4gW21haWx0bzpsaXN0Ym91bmNlQHNlY3VyaXR5Zm9jdXMuY29tXSBP
biBCZWhhbGYgT2YgDQo+Pj4ga2FydGlrLm5ldGVjQGdtYWlsLmNvbQ0KPj4+IFNlbnQ6IFdlZG5l
c2RheSwgSnVuZSAxOCwgMjAxNCAxMjo0OSBBTQ0KPj4+IFRvOiBzZWN1cml0eS1iYXNpY3NAc2Vj
dXJpdHlmb2N1cy5jb20NCj4+PiBTdWJqZWN0OiBSZTogUmU6IEREb1MgcHJvdGVjdGlvbg0KPj4+
IA0KPj4+IEhpLA0KPj4+IA0KPj4+IFRoYW5rcyBmb3IgeW91ciByZXBsaWVzLg0KPj4+IA0KPj4+
IE5vdGVkIHRoZSBwb2ludHMgcmFpc2VkIGJ5IEphY2ludCBhbmQgS2VsbHkgS2VldG9uLiBJIGFw
cHJlY2lhdGUgdGhhdC4NCj4+PiANCj4+PiBNYXkgSSBiZSBraW5kIHRvIHNlZWsgYW4gb3Bpbmlv
bi8gYXJndW1lbnRzIHN1Z2dlc3RpbmcgaWYgdGhlIEluLWhvdXNlIGFwcGxpYW5jZXMgYXJlIG1v
cmUgImludGVsbGlnZW50IiB0aHdhcnRpbmcgdGhlIGFwcGxpY2F0aW9uIGxldmVsIERPUy8gRERv
UyBhdHRhY2tzIGFzIGNvbXBhcmVkIHRvIElTUCBwcm92aWRlZCBET1MgcHJvdGVjdGlvbiB3aGVy
ZWluIGl0IG1heSBldmVuIGZhaWwgdG8gZGV0ZWN0IHRoZW0uIG9yIGlmIHRoZXJlIGFyZSBvdGhl
ciBiZW5lZml0cyBvd25pbmcgYW4gSW4taG91c2UgcHJvZHVjdD8NCj4+PiANCj4+PiBBcyBmYXIg
YXMgQ29ucyBhcmUgY29uY2VybmVkLCBJIGZlZWwgdGhhdCB0aGUgYXBwbGlhbmNlIG1heSBhZGQg
c29tZSBsYXRlbmN5IHdoaWNoIG1heSBjcmVhdGUgaXNzdWVzIHdoZXJlaW4gYSBsYXRlbmN5IG9m
IG1pbGxpc2Vjb25kcyBjb3VudC4NCj4+PiANCj4+PiBBbHRob3VnaCB3ZSdyZSBzbWFsbCwgV2Un
cmUgYW4gb3JnYW5pemF0aW9uIHBsYXlpbmcgd2l0aCAoJCzCpSzigqwswqMpIGV4Y2hhbmdlcyBh
bmQgaGVhdmlseSByZWd1bGF0ZWQgYnkgdGhlIEdvdmVybm1lbnQuDQo+Pj4gDQo+Pj4gVGhhbmtz
LA0KPj4+IEtUDQo+Pj4gDQo+Pj4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4+PiAtLS0tIFNlY3VyaW5nIEFwYWNo
ZSBXZWIgU2VydmVyIHdpdGggdGhhd3RlIERpZ2l0YWwgQ2VydGlmaWNhdGUgSW4gDQo+Pj4gdGhp
cyBndWlkZSB3ZSBleGFtaW5lIHRoZSBpbXBvcnRhbmNlIG9mIEFwYWNoZS1TU0wgYW5kIHdobyBu
ZWVkcyBhbiBTU0wgY2VydGlmaWNhdGUuICBXZSBsb29rIGF0IGhvdyBTU0wgd29ya3MsIGhvdyBp
dCBiZW5lZml0cyB5b3VyIGNvbXBhbnkgYW5kIGhvdyB5b3VyIGN1c3RvbWVycyBjYW4gdGVsbCBp
ZiBhIHNpdGUgaXMgc2VjdXJlLiBZb3Ugd2lsbCBmaW5kIG91dCBob3cgdG8gdGVzdCwgcHVyY2hh
c2UsIGluc3RhbGwgYW5kIHVzZSBhIHRoYXd0ZSBEaWdpdGFsIENlcnRpZmljYXRlIG9uIHlvdXIg
QXBhY2hlIHdlYiBzZXJ2ZXIuIFRocm91Z2hvdXQsIGJlc3QgcHJhY3RpY2VzIGZvciBzZXQtdXAg
YXJlIGhpZ2hsaWdodGVkIHRvIGhlbHAgeW91IGVuc3VyZSBlZmZpY2llbnQgb25nb2luZyBtYW5h
Z2VtZW50IG9mIHlvdXIgZW5jcnlwdGlvbiBrZXlzIGFuZCBkaWdpdGFsIGNlcnRpZmljYXRlcy4N
Cj4+PiANCj4+PiBodHRwOi8vd3d3LmRpbmNsaW54LmNvbS9SZWRpcmVjdC5hc3B4PzM2OzQxNzU7
MjU7MTM3MTswOzU7OTQ2O2UxM2I2Yg0KPj4+IGU0NDJmNzI3ZDENCj4+PiAtLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0K
Pj4+IC0tLS0NCj4+PiANCj4+PiANCj4+PiBDT05GSURFTlRJQUxJVFkgTk9USUNFOiBUaGlzIGVt
YWlsIGNvbW11bmljYXRpb24gYW5kIGFueSBhdHRhY2htZW50cyANCj4+PiBtYXkgY29udGFpbiBj
b25maWRlbnRpYWwgYW5kIHByaXZpbGVnZWQgaW5mb3JtYXRpb24gZm9yIHRoZSB1c2Ugb2YgDQo+
Pj4gdGhlIGRlc2lnbmF0ZWQgcmVjaXBpZW50cyBuYW1lZCBhYm92ZS4gSWYgeW91IGFyZSBub3Qg
dGhlIGludGVuZGVkIA0KPj4+IHJlY2lwaWVudCwgeW91IGFyZSBoZXJlYnkgbm90aWZpZWQgdGhh
dCB5b3UgaGF2ZSByZWNlaXZlZCB0aGlzIA0KPj4+IGNvbW11bmljYXRpb24gaW4gZXJyb3IgYW5k
IHRoYXQgYW55IHJldmlldywgZGlzY2xvc3VyZSwgDQo+Pj4gZGlzc2VtaW5hdGlvbiwgZGlzdHJp
YnV0aW9uIG9yIGNvcHlpbmcgb2YgaXQgb3IgaXRzIGNvbnRlbnRzIGlzIA0KPj4+IHByb2hpYml0
ZWQuIElmIHlvdSBoYXZlIHJlY2VpdmVkIHRoaXMgY29tbXVuaWNhdGlvbiBpbiBlcnJvciwgcGxl
YXNlIA0KPj4+IHJlcGx5IHRvIHRoZSBzZW5kZXIgaW1tZWRpYXRlbHkgb3IgYnkgdGVsZXBob25l
IGF0ICg2MTcpIDQyNi0wNjAwIGFuZCBkZXN0cm95IGFsbCBjb3BpZXMgb2YgdGhpcyBjb21tdW5p
Y2F0aW9uIGFuZCBhbnkgYXR0YWNobWVudHMuIEZvciBmdXJ0aGVyIGluZm9ybWF0aW9uIHJlZ2Fy
ZGluZyBDb21tb253ZWFsdGggQ2FyZSBBbGxpYW5jZSdzIHByaXZhY3kgcG9saWN5LCBwbGVhc2Ug
dmlzaXQgb3VyIEludGVybmV0IHdlYiBzaXRlIGF0IGh0dHA6Ly93d3cuY29tbW9ud2VhbHRoY2Fy
ZS5vcmcuDQo+Pj4gDQo+IA0KPiANCj4gDQo+IC0tDQo+IExhd3MgYWxvbmUgY2Fubm90IHNlY3Vy
ZSBmcmVlZG9tIG9mIGV4cHJlc3Npb247IGluIG9yZGVyIHRoYXQgZXZlcnkgDQo+IG1hbiBwcmVz
ZW50IGhpcyB2aWV3cyB3aXRob3V0IHBlbmFsdHkgdGhlcmUgbXVzdCBiZSBzcGlyaXQgb2YgDQo+
IHRvbGVyYW5jZSBpbiB0aGUgZW50aXJlIHBvcHVsYXRpb24uIC0gQWxiZXJ0IEVpbnN0ZWluDQo+
IA0KPiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tDQo+IC0tIFNlY3VyaW5nIEFwYWNoZSBXZWIgU2VydmVyIHdpdGgg
dGhhd3RlIERpZ2l0YWwgQ2VydGlmaWNhdGUgSW4gdGhpcyANCj4gZ3VpZGUgd2UgZXhhbWluZSB0
aGUgaW1wb3J0YW5jZSBvZiBBcGFjaGUtU1NMIGFuZCB3aG8gbmVlZHMgYW4gU1NMIGNlcnRpZmlj
YXRlLiAgV2UgbG9vayBhdCBob3cgU1NMIHdvcmtzLCBob3cgaXQgYmVuZWZpdHMgeW91ciBjb21w
YW55IGFuZCBob3cgeW91ciBjdXN0b21lcnMgY2FuIHRlbGwgaWYgYSBzaXRlIGlzIHNlY3VyZS4g
WW91IHdpbGwgZmluZCBvdXQgaG93IHRvIHRlc3QsIHB1cmNoYXNlLCBpbnN0YWxsIGFuZCB1c2Ug
YSB0aGF3dGUgRGlnaXRhbCBDZXJ0aWZpY2F0ZSBvbiB5b3VyIEFwYWNoZSB3ZWIgc2VydmVyLiBU
aHJvdWdob3V0LCBiZXN0IHByYWN0aWNlcyBmb3Igc2V0LXVwIGFyZSBoaWdobGlnaHRlZCB0byBo
ZWxwIHlvdSBlbnN1cmUgZWZmaWNpZW50IG9uZ29pbmcgbWFuYWdlbWVudCBvZiB5b3VyIGVuY3J5
cHRpb24ga2V5cyBhbmQgZGlnaXRhbCBjZXJ0aWZpY2F0ZXMuDQo+IA0KPiBodHRwOi8vd3d3LmRp
bmNsaW54LmNvbS9SZWRpcmVjdC5hc3B4PzM2OzQxNzU7MjU7MTM3MTswOzU7OTQ2O2UxM2I2YmU0
DQo+IDQyZjcyN2QxDQo+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gLS0NCj4gDQo+IA0KDQoNCg0KLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tDQpTZWN1cmluZyBBcGFjaGUgV2ViIFNlcnZlciB3aXRoIHRoYXd0ZSBEaWdpdGFs
IENlcnRpZmljYXRlIEluIHRoaXMgZ3VpZGUgd2UgZXhhbWluZSB0aGUgaW1wb3J0YW5jZSBvZiBB
cGFjaGUtU1NMIGFuZCB3aG8gbmVlZHMgYW4gU1NMIGNlcnRpZmljYXRlLiAgV2UgbG9vayBhdCBo
b3cgU1NMIHdvcmtzLCBob3cgaXQgYmVuZWZpdHMgeW91ciBjb21wYW55IGFuZCBob3cgeW91ciBj
dXN0b21lcnMgY2FuIHRlbGwgaWYgYSBzaXRlIGlzIHNlY3VyZS4gWW91IHdpbGwgZmluZCBvdXQg
aG93IHRvIHRlc3QsIHB1cmNoYXNlLCBpbnN0YWxsIGFuZCB1c2UgYSB0aGF3dGUgRGlnaXRhbCBD
ZXJ0aWZpY2F0ZSBvbiB5b3VyIEFwYWNoZSB3ZWIgc2VydmVyLiBUaHJvdWdob3V0LCBiZXN0IHBy
YWN0aWNlcyBmb3Igc2V0LXVwIGFyZSBoaWdobGlnaHRlZCB0byBoZWxwIHlvdSBlbnN1cmUgZWZm
aWNpZW50IG9uZ29pbmcgbWFuYWdlbWVudCBvZiB5b3VyIGVuY3J5cHRpb24ga2V5cyBhbmQgZGln
aXRhbCBjZXJ0aWZpY2F0ZXMuDQoNCmh0dHA6Ly93d3cuZGluY2xpbnguY29tL1JlZGlyZWN0LmFz
cHg/MzY7NDE3NTsyNTsxMzcxOzA7NTs5NDY7ZTEzYjZiZTQ0MmY3MjdkMQ0KLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tDQoNCg0KDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KVGhl
IGluZm9ybWF0aW9uIGNvbnRhaW5lZCBpbiB0aGlzIGUtbWFpbCwgaW5jbHVkaW5nIGFueQ0KYXR0
YWNobWVudChzKSwgaXMgaW50ZW5kZWQgc29sZWx5IGZvciB1c2UgYnkgdGhlIG5hbWVkDQphZGRy
ZXNzZWUocykuICBJZiB5b3UgYXJlIG5vdCB0aGUgaW50ZW5kZWQgcmVjaXBpZW50LCBvciBhIHBl
cnNvbg0KZGVzaWduYXRlZCBhcyByZXNwb25zaWJsZSBmb3IgZGVsaXZlcmluZyBzdWNoIG1lc3Nh
Z2VzIHRvIHRoZQ0KaW50ZW5kZWQgcmVjaXBpZW50LCB5b3UgYXJlIG5vdCBhdXRob3JpemVkIHRv
IGRpc2Nsb3NlLCBjb3B5LA0KZGlzdHJpYnV0ZSBvciByZXRhaW4gdGhpcyBtZXNzYWdlLCBpbiB3
aG9sZSBvciBpbiBwYXJ0LCB3aXRob3V0DQp3cml0dGVuIGF1dGhvcml6YXRpb24gZnJvbSBQU0VH
LiAgVGhpcyBlLW1haWwgbWF5IGNvbnRhaW4NCnByb3ByaWV0YXJ5LCBjb25maWRlbnRpYWwgb3Ig
cHJpdmlsZWdlZCBpbmZvcm1hdGlvbi4gSWYgeW91IGhhdmUNCnJlY2VpdmVkIHRoaXMgbWVzc2Fn
ZSBpbiBlcnJvciwgcGxlYXNlIG5vdGlmeSB0aGUgc2VuZGVyDQppbW1lZGlhdGVseS4gVGhpcyBu
b3RpY2UgaXMgaW5jbHVkZWQgaW4gYWxsIGUtbWFpbCBtZXNzYWdlcyBsZWF2aW5nDQpQU0VHLiAg
VGhhbmsgeW91IGZvciB5b3VyIGNvb3BlcmF0aW9uLg==