From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tarak Ranjan Subject: Re: Direct Internet Connection For Client Date: Tue, 13 Nov 2007 17:16:11 +0530 Message-ID: <47398E83.9020003@liqwidkrystal.com> References: <4739525D.70205@liqwidkrystal.com> <000901c825cd$09c13700$1d43a500$@info> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------010608080500070804080500" Return-path: In-Reply-To: <000901c825cd$09c13700$1d43a500$@info> Sender: netfilter-owner@vger.kernel.org List-Id: To: netfilter@vger.kernel.org Cc: Rob Sterenborg This is a multi-part message in MIME format. --------------010608080500070804080500 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Rob Sterenborg wrote: >> > If I'm correct you've posted this question before and when I looked > through that script I didn't have much trust in it. If you really want > good advice, post your ruleset (and perhaps routing table). Otherwise, > simply blocking internet access is done like this: > > $ipt -A FORWARD -s -p tcp --dport 80 \ > -j REJECT --reject-with tcp-reset > > The actual place where you want to insert the rule depends on the script > you're currently using. This will do nothing if packets are already > accepted by a previous rule. > Here is my iptables rules........ as an attachment --------------010608080500070804080500 Content-Type: application/x-shellscript; name="custom_rules.sh" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="custom_rules.sh" IyEvYmluL3NoCgpTWVNDVEw9Ii9zYmluL3N5c2N0bCAtdyIgCklQVD0iL3NiaW4vaXB0YWJs ZXMiCklQVFM9Ii9zYmluL2lwdGFibGVzLXNhdmUiCklQVFI9Ii9zYmluL2lwdGFibGVzLXJl c3RvcmUiCgojIEludGVybmV0IEludGVyZmFjZQpJTkVUX0lGQUNFPSJldGgxIgpJTkVUX0FE RFJFU1M9IngueC54LngiCgojIExvY2FsIEludGVyZmFjZSBJbmZvcm1hdGlvbgpMT0NBTF9J RkFDRT0iZXRoMCIKTE9DQUxfSVA9IjE5Mi4xNjguMS4zIgpMT0NBTF9ORVQ9IjE5Mi4xNjgu MS4wLzI0IgpMT0NBTF9CQ0FTVD0iMTkyLjE2OC4xLjI1NSIKCiMgTG9jYWxob3N0IEludGVy ZmFjZQoKTE9fSUZBQ0U9ImxvIgpMT19JUD0iMTI3LjAuMC4xIgoKZWNobyAiTG9hZGluZyBr ZXJuZWwgbW9kdWxlcyAuLi4iCi9zYmluL21vZHByb2JlIGlwX3RhYmxlcwoKL3NiaW4vbW9k cHJvYmUgaXBfY29ubnRyYWNrCgoKIyBSZXNldCBEZWZhdWx0IFBvbGljaWVzCiRJUFQgLVAg SU5QVVQgQUNDRVBUCiRJUFQgLVAgRk9SV0FSRCBBQ0NFUFQKJElQVCAtUCBPVVRQVVQgQUND RVBUCiRJUFQgLXQgbmF0IC1QIFBSRVJPVVRJTkcgQUNDRVBUCiRJUFQgLXQgbmF0IC1QIFBP U1RST1VUSU5HIEFDQ0VQVAokSVBUIC10IG5hdCAtUCBPVVRQVVQgQUNDRVBUCiRJUFQgLXQg bWFuZ2xlIC1QIFBSRVJPVVRJTkcgQUNDRVBUCiRJUFQgLXQgbWFuZ2xlIC1QIE9VVFBVVCBB Q0NFUFQKCiMgRmx1c2ggYWxsIHJ1bGVzCiRJUFQgLUYKJElQVCAtdCBuYXQgLUYKJElQVCAt dCBtYW5nbGUgLUYKCiMgRXJhc2UgYWxsIG5vbi1kZWZhdWx0IGNoYWlucwokSVBUIC1YCiRJ UFQgLXQgbmF0IC1YCiRJUFQgLXQgbWFuZ2xlIC1YCgojIFNldCBQb2xpY2llcwoKJElQVCAt UCBJTlBVVCBEUk9QCiRJUFQgLVAgT1VUUFVUIERST1AKJElQVCAtUCBGT1JXQVJEIERST1AK CgplY2hvICJDcmVhdGUgYW5kIHBvcHVsYXRlIGN1c3RvbSBydWxlIGNoYWlucyAuLi4iCgoj IENyZWF0ZSBhIGNoYWluIHRvIGZpbHRlciBJTlZBTElEIHBhY2tldHMKCiRJUFQgLU4gYmFk X3BhY2tldHMKCiMgQ3JlYXRlIGFub3RoZXIgY2hhaW4gdG8gZmlsdGVyIGJhZCB0Y3AgcGFj a2V0cwoKJElQVCAtTiBiYWRfdGNwX3BhY2tldHMKCiMgQ3JlYXRlIHNlcGFyYXRlIGNoYWlu cyBmb3IgaWNtcCwgdGNwIChpbmNvbWluZyBhbmQgb3V0Z29pbmcpLAojIGFuZCBpbmNvbWlu ZyB1ZHAgcGFja2V0cy4KCiRJUFQgLU4gaWNtcF9wYWNrZXRzCgojIFVzZWQgZm9yIFVEUCBw YWNrZXRzIGluYm91bmQgZnJvbSB0aGUgSW50ZXJuZXQKJElQVCAtTiB1ZHBfaW5ib3VuZAoK IyBVc2VkIHRvIGJsb2NrIG91dGJvdW5kIFVEUCBzZXJ2aWNlcyBmcm9tIGludGVybmFsIG5l dHdvcmsKIyBEZWZhdWx0IHRvIGFsbG93IGFsbAokSVBUIC1OIHVkcF9vdXRib3VuZAoKIyBV c2VkIHRvIGFsbG93IGluYm91bmQgc2VydmljZXMgaWYgZGVzaXJlZAojIERlZmF1bHQgZmFp bCBleGNlcHQgZm9yIGVzdGFibGlzaGVkIHNlc3Npb25zCiRJUFQgLU4gdGNwX2luYm91bmQK CiMgVXNlZCB0byBibG9jayBvdXRib3VuZCBzZXJ2aWNlcyBmcm9tIGludGVybmFsIG5ldHdv cmsKIyBEZWZhdWx0IHRvIGFsbG93IGFsbAokSVBUIC1OIHRjcF9vdXRib3VuZAoKCiMgRHJv cCBwYWNrZXRzIHJlY2VpdmVkIG9uIHRoZSBleHRlcm5hbCBpbnRlcmZhY2UKIyBjbGFpbWlu ZyBhIHNvdXJjZSBvZiB0aGUgbG9jYWwgbmV0d29yawokSVBUIC1BIGJhZF9wYWNrZXRzIC1w IEFMTCAtaSAkSU5FVF9JRkFDRSAtcyAkTE9DQUxfTkVUIC1qIExPRyBcCiAgICAtLWxvZy1w cmVmaXggImZwPWJhZF9wYWNrZXRzOjIgYT1EUk9QICIKJElQVCAtQSBiYWRfcGFja2V0cyAt cCBBTEwgLWkgJElORVRfSUZBQ0UgLXMgJExPQ0FMX05FVCAtaiBEUk9QCgojIERyb3AgSU5W QUxJRCBwYWNrZXRzIGltbWVkaWF0ZWx5CiRJUFQgLUEgYmFkX3BhY2tldHMgLXAgQUxMIC1t IHN0YXRlIC0tc3RhdGUgSU5WQUxJRCAtaiBMT0cgXAogICAgLS1sb2ctcHJlZml4ICJmcD1i YWRfcGFja2V0czoxIGE9RFJPUCAiCgokSVBUIC1BIGJhZF9wYWNrZXRzIC1wIEFMTCAtbSBz dGF0ZSAtLXN0YXRlIElOVkFMSUQgLWogRFJPUAoKIyBUaGVuIGNoZWNrIHRoZSB0Y3AgcGFj a2V0cyBmb3IgYWRkaXRpb25hbCBwcm9ibGVtcwokSVBUIC1BIGJhZF9wYWNrZXRzIC1wIHRj cCAtaiBiYWRfdGNwX3BhY2tldHMKCiMgQWxsIGdvb2QsIHNvIHJldHVybgokSVBUIC1BIGJh ZF9wYWNrZXRzIC1wIEFMTCAtaiBSRVRVUk4KCiRJUFQgLUEgYmFkX3RjcF9wYWNrZXRzIC1w IHRjcCAtaSAkTE9DQUxfSUZBQ0UgLWogUkVUVVJOCgoKJElQVCAtQSBiYWRfdGNwX3BhY2tl dHMgLXAgdGNwICEgLS1zeW4gLW0gc3RhdGUgLS1zdGF0ZSBORVcgLWogTE9HIFwKICAgIC0t bG9nLXByZWZpeCAiZnA9YmFkX3RjcF9wYWNrZXRzOjEgYT1EUk9QICIKJElQVCAtQSBiYWRf dGNwX3BhY2tldHMgLXAgdGNwICEgLS1zeW4gLW0gc3RhdGUgLS1zdGF0ZSBORVcgLWogRFJP UAoKJElQVCAtQSBiYWRfdGNwX3BhY2tldHMgLXAgdGNwIC0tdGNwLWZsYWdzIEFMTCBOT05F IC1qIExPRyBcCiAgICAtLWxvZy1wcmVmaXggImZwPWJhZF90Y3BfcGFja2V0czoyIGE9RFJP UCAiCiRJUFQgLUEgYmFkX3RjcF9wYWNrZXRzIC1wIHRjcCAtLXRjcC1mbGFncyBBTEwgTk9O RSAtaiBEUk9QCgokSVBUIC1BIGJhZF90Y3BfcGFja2V0cyAtcCB0Y3AgLS10Y3AtZmxhZ3Mg QUxMIEFMTCAtaiBMT0cgXAogICAgLS1sb2ctcHJlZml4ICJmcD1iYWRfdGNwX3BhY2tldHM6 MyBhPURST1AgIgokSVBUIC1BIGJhZF90Y3BfcGFja2V0cyAtcCB0Y3AgLS10Y3AtZmxhZ3Mg QUxMIEFMTCAtaiBEUk9QCgokSVBUIC1BIGJhZF90Y3BfcGFja2V0cyAtcCB0Y3AgLS10Y3At ZmxhZ3MgQUxMIEZJTixVUkcsUFNIIC1qIExPRyBcCiAgICAtLWxvZy1wcmVmaXggImZwPWJh ZF90Y3BfcGFja2V0czo0IGE9RFJPUCAiCiRJUFQgLUEgYmFkX3RjcF9wYWNrZXRzIC1wIHRj cCAtLXRjcC1mbGFncyBBTEwgRklOLFVSRyxQU0ggLWogRFJPUAoKJElQVCAtQSBiYWRfdGNw X3BhY2tldHMgLXAgdGNwIC0tdGNwLWZsYWdzIEFMTCBTWU4sUlNULEFDSyxGSU4sVVJHIC1q IExPRyBcCiAgICAtLWxvZy1wcmVmaXggImZwPWJhZF90Y3BfcGFja2V0czo1IGE9RFJPUCAi CiRJUFQgLUEgYmFkX3RjcF9wYWNrZXRzIC1wIHRjcCAtLXRjcC1mbGFncyBBTEwgU1lOLFJT VCxBQ0ssRklOLFVSRyAtaiBEUk9QCgokSVBUIC1BIGJhZF90Y3BfcGFja2V0cyAtcCB0Y3Ag LS10Y3AtZmxhZ3MgU1lOLFJTVCBTWU4sUlNUIC1qIExPRyBcCiAgICAtLWxvZy1wcmVmaXgg ImZwPWJhZF90Y3BfcGFja2V0czo2IGE9RFJPUCAiCiRJUFQgLUEgYmFkX3RjcF9wYWNrZXRz IC1wIHRjcCAtLXRjcC1mbGFncyBTWU4sUlNUIFNZTixSU1QgLWogRFJPUAoKJElQVCAtQSBi YWRfdGNwX3BhY2tldHMgLXAgdGNwIC0tdGNwLWZsYWdzIFNZTixGSU4gU1lOLEZJTiAtaiBM T0cgXAogICAgLS1sb2ctcHJlZml4ICJmcD1iYWRfdGNwX3BhY2tldHM6NyBhPURST1AgIgok SVBUIC1BIGJhZF90Y3BfcGFja2V0cyAtcCB0Y3AgLS10Y3AtZmxhZ3MgU1lOLEZJTiBTWU4s RklOIC1qIERST1AKCiMgQWxsIGdvb2QsIHNvIHJldHVybgokSVBUIC1BIGJhZF90Y3BfcGFj a2V0cyAtcCB0Y3AgLWogUkVUVVJOCgoKIyBEZW5pYWwgb2Ygc2VydmljZSBhdHRhY2suCiRJ UFQgLUEgaWNtcF9wYWNrZXRzIC0tZnJhZ21lbnQgLXAgSUNNUCAtaiBMT0cgXAogICAgLS1s b2ctcHJlZml4ICJmcD1pY21wX3BhY2tldHM6MSBhPURST1AgIgokSVBUIC1BIGljbXBfcGFj a2V0cyAtLWZyYWdtZW50IC1wIElDTVAgLWogRFJPUAoKCiRJUFQgLUEgaWNtcF9wYWNrZXRz IC1wIElDTVAgLXMgMC8wIC0taWNtcC10eXBlIDggLWogRFJPUAoKIyBUaW1lIEV4Y2VlZGVk CiRJUFQgLUEgaWNtcF9wYWNrZXRzIC1wIElDTVAgLXMgMC8wIC0taWNtcC10eXBlIDExIC1q IEFDQ0VQVAoKIyBOb3QgbWF0Y2hlZCwgc28gcmV0dXJuIHNvIGl0IHdpbGwgYmUgbG9nZ2Vk CiRJUFQgLUEgaWNtcF9wYWNrZXRzIC1wIElDTVAgLWogUkVUVVJOCgoKJElQVCAtQSB1ZHBf aW5ib3VuZCAtcCBVRFAgLXMgMC8wIC0tZGVzdGluYXRpb24tcG9ydCAxMzcgLWogRFJPUAok SVBUIC1BIHVkcF9pbmJvdW5kIC1wIFVEUCAtcyAwLzAgLS1kZXN0aW5hdGlvbi1wb3J0IDEz OCAtaiBEUk9QCiRJUFQgLUEgdWRwX2luYm91bmQgLXAgVURQIC1zIDAvMCAtLWRlc3RpbmF0 aW9uLXBvcnQgMTEzIC1qIFJFSkVDVAokSVBUIC1BIHVkcF9pbmJvdW5kIC1wIFVEUCAtcyAw LzAgLS1kZXN0aW5hdGlvbi1wb3J0IDUzIC1qIEFDQ0VQVAokSVBUIC1BIHVkcF9pbmJvdW5k IC1wIFVEUCAtcyAwLzAgLS1kZXN0aW5hdGlvbi1wb3J0IDUzNTMgLWogQUNDRVBUCiRJUFQg LUEgdGNwX2luYm91bmQgLXAgVENQIC1zIDAvMCAtLWRlc3RpbmF0aW9uLXBvcnQgNTM1MyAt aiBBQ0NFUFQKJElQVCAtQSB0Y3BfaW5ib3VuZCAtcCBUQ1AgLXMgMC8wIC0tZGVzdGluYXRp b24tcG9ydCA4MCAtaiBBQ0NFUFQKCiMgTm90IG1hdGNoZWQsIHNvIHJldHVybiBmb3IgbG9n Z2luZwokSVBUIC1BIHVkcF9pbmJvdW5kIC1wIFVEUCAtaiBSRVRVUk4KCiMgdWRwX291dGJv dW5kIGNoYWluCiMgTm8gbWF0Y2gsIHNvIEFDQ0VQVAokSVBUIC1BIHVkcF9vdXRib3VuZCAt cCBVRFAgLXMgMC8wIC1qIEFDQ0VQVAoKIyBsb25nIGRlbGF5cyB3aGlsZSBjb25uZWN0aW5n LiAgQWxzbyBzZWUgdGhlIHRjcF9pbmJvdW5kIHJ1bGUuCiRJUFQgLUEgdGNwX2luYm91bmQg LXAgVENQIC1zIDAvMCAtLWRlc3RpbmF0aW9uLXBvcnQgMTEzIC1qIFJFSkVDVAoKIyBOb3Qg bWF0Y2hlZCwgc28gcmV0dXJuIHNvIGl0IHdpbGwgYmUgbG9nZ2VkCiRJUFQgLUEgdGNwX2lu Ym91bmQgLXAgVENQIC1qIFJFVFVSTgoKIyB0Y3Bfb3V0Ym91bmQgY2hhaW4KCmVjaG8gIlNT SCBCbG9ja2luZy4uLi4uLi4uLi4iCiRJUFQgLUEgSU5QVVQgLXAgdGNwIC1zIDE5Mi4xNjgu MS4yMTAgLWQgMC8wIC0tZHBvcnQgMjIgLWogQUNDRVBUCiRJUFQgLUEgSU5QVVQgLXAgdGNw IC1zIDE5Mi4xNjguMS4xMjMgLWQgMC8wIC0tZHBvcnQgMjIgLWogQUNDRVBUCiRJUFQgLUEg SU5QVVQgLXAgdGNwIC1zIDE5Mi4xNjguMS4zNyAtZCAwLzAgLS1kcG9ydCAyMiAtaiBBQ0NF UFQKJElQVCAtQSBGT1JXQVJEIC1pICRMT0NBTF9JRkFDRSAtbyAkSU5FVF9JRkFDRSAtcCB0 Y3AgIC1zIDE5Mi4xNjguMS4xMjMgLWQgMC8wIC0tZHBvcnQgMjIgLWogQUNDRVBUCiRJUFQg LUEgRk9SV0FSRCAtaSAkTE9DQUxfSUZBQ0UgLW8gJElORVRfSUZBQ0UgLXAgdGNwICAtcyAx OTIuMTY4LjEuMzcgLWQgMC8wIC0tZHBvcnQgMjIgLWogQUNDRVBUCiRJUFQgLUEgRk9SV0FS RCAtaSAkTE9DQUxfSUZBQ0UgLW8gJElORVRfSUZBQ0UgLXAgdGNwIC1zIDE5Mi4xNjguMS4y MTAgLWQgMC8wIC0tZHBvcnQgMjIgLWogQUNDRVBUCiRJUFQgLUEgRk9SV0FSRCAtaSAkTE9D QUxfSUZBQ0UgLW8gJElORVRfSUZBQ0UgLXAgdGNwIC1zIDE5Mi4xNjguMS4wLzI0IC1kIDAv MCAtLWRwb3J0IDIyIC1qIERST1AKIyRJUFQgLUEgT1VUUFVUIC1pICRMT0NBTF9JRkFDRSAt byAkSU5FVF9JRkFDRSAtcCB0Y3AgIC1zIDE5Mi4xNjguMS4zOCAtZCAwLzAgLS1kcG9ydCAy MiAtaiBBQ0NFUAoKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjCiNNQUlMIFNFUlZFUgoKJElQVCAtQSBJTlBVVCAtcCB0Y3AgLXMgMC8wIC1k IHgueC54LngvMzIgLS1kZXN0aW5hdGlvbi1wb3J0IDI1IC0tc3luIC1qIEFDQ0VQVAokSVBU IC1BIEZPUldBUkQgLXAgdGNwIC1zIDAvMCAtZCB4LngueC55LzMyIC0tZGVzdGluYXRpb24t cG9ydCAyNSAtLXN5biAtaiBBQ0NFUFQKIyRJUFQgLXQgbmF0IC1BIFBSRVJPVVRJTkcgLWkg ZXRoMSAtcCB0Y3AgLS1kcG9ydCAyNSAtaiBETkFUIC0tdG8gMTkyLjE2OC4xLjEwMDoyNQoj JElQVCAtQSBGT1JXQVJEIC1wIHRjcCAtZCAxOTIuMTY4LjEuMTAwIC0tZHBvcnQgMjUgLWog QUNDRVBUCgoKJElQVCAtQSBJTlBVVCAgLXAgdGNwICAtcyAwLzAgLS1kcG9ydCAyMiAtaiBE Uk9QCiRJUFQgLUEgSU5QVVQgIC1wIHRjcCAgLXMgMC8wIC0tZHBvcnQgMzMwNiAtaiBEUk9Q CiMkSVBUIC1BIEZPUldBUkQgIC1wIHRjcCAtZCAwLzAgLXMgMC8wIC0tZHBvcnQgODAgLWog RFJPUAokSVBUIC1BIElOUFVUICAtcCB0Y3AgIC1zIDAvMCAtLWRwb3J0IDExMSAtaiBEUk9Q CiRJUFQgLUEgSU5QVVQgIC1wIHRjcCAgLXMgMC8wIC0tZHBvcnQgMTk5IC1qIERST1AKJElQ VCAtQSBJTlBVVCAgLXAgdGNwICAtcyAwLzAgLS1kcG9ydCA0NDMgLWogQUNDRVBUCgojIEJs b2NrIElSQwokSVBUIC1BIHRjcF9vdXRib3VuZCAtcCBUQ1AgLXMgMC8wIC0tZGVzdGluYXRp b24tcG9ydCAxOTQgLWogUkVKRUNUCgojIEJsb2NrIE91dGJvdW5kIFRlbG5ldAokSVBUIC1B IHRjcF9vdXRib3VuZCAtcCBUQ1AgLXMgMC8wIC0tZGVzdGluYXRpb24tcG9ydCAyMyAtaiBS RUpFQ1QKCiMgQmxvY2sgU1NICiRJUFQgLUEgdGNwX291dGJvdW5kIC1wIFRDUCAtcyAwLzAg LS1kZXN0aW5hdGlvbi1wb3J0IDIyIC1qIFJFSkVDVAoKIyBCbG9jayBVc2VuZXQgQWNjZXNz CiRJUFQgLUEgdGNwX291dGJvdW5kIC1wIFRDUCAtcyAwLzAgLS1kZXN0aW5hdGlvbi1wb3J0 IDExOSAtaiBSRUpFQ1QKCiMgTm8gbWF0Y2gsIHNvIEFDQ0VQVAokSVBUIC1BIHRjcF9vdXRi b3VuZCAtcCBUQ1AgLXMgMC8wIC1qIEFDQ0VQVAoKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IwojCiMgSU5QVVQgQ2hhaW4KIwoKZWNobyAiUHJvY2VzcyBJTlBVVCBjaGFpbiAuLi4iCgoj IEFsbG93IGFsbCBvbiBsb2NhbGhvc3QgaW50ZXJmYWNlCiRJUFQgLUEgSU5QVVQgLXAgQUxM IC1pICRMT19JRkFDRSAtaiBBQ0NFUFQKCiMgRHJvcCBiYWQgcGFja2V0cwokSVBUIC1BIElO UFVUIC1wIEFMTCAtaiBiYWRfcGFja2V0cwoKJElQVCAtQSBJTlBVVCAtcCBBTEwgLWQgMjI0 LjAuMC4xIC1qIERST1AKCiMgUnVsZXMgZm9yIHRoZSBwcml2YXRlIG5ldHdvcmsgKGFjY2Vz c2luZyBnYXRld2F5IHN5c3RlbSBpdHNlbGYpCiRJUFQgLUEgSU5QVVQgLXAgQUxMIC1pICRM T0NBTF9JRkFDRSAtcyAkTE9DQUxfTkVUIC1qIEFDQ0VQVAokSVBUIC1BIElOUFVUIC1wIEFM TCAtaSAkTE9DQUxfSUZBQ0UgLWQgJExPQ0FMX0JDQVNUIC1qIEFDQ0VQVAoKCiMgSW5ib3Vu ZCBJbnRlcm5ldCBQYWNrZXQgUnVsZXMKCiMgQWNjZXB0IEVzdGFibGlzaGVkIENvbm5lY3Rp b25zCiRJUFQgLUEgSU5QVVQgLXAgQUxMIC1pICRJTkVUX0lGQUNFIC1tIHN0YXRlIC0tc3Rh dGUgRVNUQUJMSVNIRUQsUkVMQVRFRCBcCiAgICAgLWogQUNDRVBUCgojIFJvdXRlIHRoZSBy ZXN0IHRvIHRoZSBhcHByb3ByaWF0ZSB1c2VyIGNoYWluCiRJUFQgLUEgSU5QVVQgLXAgVENQ IC1pICRJTkVUX0lGQUNFIC1qIHRjcF9pbmJvdW5kCiRJUFQgLUEgSU5QVVQgLXAgVURQIC1p ICRJTkVUX0lGQUNFIC1qIHVkcF9pbmJvdW5kCiRJUFQgLUEgSU5QVVQgLXAgSUNNUCAtaSAk SU5FVF9JRkFDRSAtaiBpY21wX3BhY2tldHMKCiMgYnJvYWRjYXN0IHByb3RvY29scy4KJElQ VCAtQSBJTlBVVCAtbSBwa3R0eXBlIC0tcGt0LXR5cGUgYnJvYWRjYXN0IC1qIERST1AKCiMg TG9nIHBhY2tldHMgdGhhdCBzdGlsbCBkb24ndCBtYXRjaAokSVBUIC1BIElOUFVUIC1qIExP RyAtLWxvZy1wcmVmaXggImZwPUlOUFVUOjk5IGE9RFJPUCAiCgojIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjCiMKIyBGT1JXQVJEIENoYWluCiMKCmVjaG8gIlByb2Nlc3MgRk9SV0FSRCBj aGFpbiAuLi4iCgojIFVzZWQgaWYgZm9yd2FyZGluZyBmb3IgYSBwcml2YXRlIG5ldHdvcmsK CiMgRHJvcCBiYWQgcGFja2V0cwokSVBUIC1BIEZPUldBUkQgLXAgQUxMIC1qIGJhZF9wYWNr ZXRzCgojIEFjY2VwdCBUQ1AgcGFja2V0cyB3ZSB3YW50IHRvIGZvcndhcmQgZnJvbSBpbnRl cm5hbCBzb3VyY2VzCiRJUFQgLUEgRk9SV0FSRCAtcCB0Y3AgLWkgJExPQ0FMX0lGQUNFIC1q IHRjcF9vdXRib3VuZAoKIyBBY2NlcHQgVURQIHBhY2tldHMgd2Ugd2FudCB0byBmb3J3YXJk IGZyb20gaW50ZXJuYWwgc291cmNlcwokSVBUIC1BIEZPUldBUkQgLXAgdWRwIC1pICRMT0NB TF9JRkFDRSAtaiB1ZHBfb3V0Ym91bmQKCiMgSWYgbm90IGJsb2NrZWQsIGFjY2VwdCBhbnkg b3RoZXIgcGFja2V0cyBmcm9tIHRoZSBpbnRlcm5hbCBpbnRlcmZhY2UKJElQVCAtQSBGT1JX QVJEIC1wIEFMTCAtaSAkTE9DQUxfSUZBQ0UgLWogQUNDRVBUCgojIERlYWwgd2l0aCByZXNw b25zZXMgZnJvbSB0aGUgaW50ZXJuZXQKJElQVCAtQSBGT1JXQVJEIC1pICRJTkVUX0lGQUNF IC1tIHN0YXRlIC0tc3RhdGUgRVNUQUJMSVNIRUQsUkVMQVRFRCBcCiAgICAgLWogQUNDRVBU CgojIExvZyBwYWNrZXRzIHRoYXQgc3RpbGwgZG9uJ3QgbWF0Y2gKJElQVCAtQSBGT1JXQVJE IC1qIExPRyAtLWxvZy1wcmVmaXggImZwPUZPUldBUkQ6OTkgYT1EUk9QICIKCgplY2hvICJQ cm9jZXNzIE9VVFBVVCBjaGFpbiAuLi4iCgoKJElQVCAtQSBPVVRQVVQgLW0gc3RhdGUgLXAg aWNtcCAtLXN0YXRlIElOVkFMSUQgLWogRFJPUAoKIyBMb2NhbGhvc3QKJElQVCAtQSBPVVRQ VVQgLXAgQUxMIC1zICRMT19JUCAtaiBBQ0NFUFQKJElQVCAtQSBPVVRQVVQgLXAgQUxMIC1v ICRMT19JRkFDRSAtaiBBQ0NFUFQKCiMgVG8gaW50ZXJuYWwgbmV0d29yawokSVBUIC1BIE9V VFBVVCAtcCBBTEwgLXMgJExPQ0FMX0lQIC1qIEFDQ0VQVAokSVBUIC1BIE9VVFBVVCAtcCBB TEwgLW8gJExPQ0FMX0lGQUNFIC1qIEFDQ0VQVAoKIyBUbyBpbnRlcm5ldAokSVBUIC1BIE9V VFBVVCAtcCBBTEwgLW8gJElORVRfSUZBQ0UgLWogQUNDRVBUCgojIExvZyBwYWNrZXRzIHRo YXQgc3RpbGwgZG9uJ3QgbWF0Y2gKJElQVCAtQSBPVVRQVVQgLWogTE9HIC0tbG9nLXByZWZp eCAiZnA9T1VUUFVUOjk5IGE9RFJPUCAiCgoKIyBQT1NUUk9VVElORyBjaGFpbgojCgokSVBU IC10IG5hdCAtQSBQT1NUUk9VVElORyAtbyAkSU5FVF9JRkFDRSBcCiAgICAgLWogU05BVCAt LXRvLXNvdXJjZSAkSU5FVF9BRERSRVNTCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKI1JlZGly ZWN0IGFsbCA4MCBwb3J0IHJlcXVlc3QgdG8gODA4MCBTUVVJRCBQUk9YWSAKIyBETkFUIHBv cnQgODAgcmVxdWVzdCBjb21taW5nIGZyb20gTEFOIHN5c3RlbXMgdG8gc3F1aWQgMzEyOCAo JFNRVUlEX1BPUlQpIGFrYSB0cmFuc3BhcmVudCBwcm94eQoKIyRJUFQgLXQgbmF0IC1BIFBS RVJPVVRJTkcgLXAgdGNwIC1pIGV0aDEgLS1kcG9ydCA4MCAtaiBSRURJUkVDVCAtLXRvLXBv cnRzIDgwODAKIyRJUFQgLXQgbmF0IC1BIFBPU1RST1VUSU5HIC1vIGV0aDEgLXMgJExPQ0FM X05FVCAtaiBNQVNRVUVSQURFCiMkSVBUIC1BIEZPUldBUkQgLXMgJExPQ0FMX05FVCAtZCAx OTIuMTY4LjEuMyAtaSBldGgxIC1vIGV0aDAgLXAgdGNwIC0tZHBvcnQgODA4MCAtaiBBQ0NF UFQKIyRJUFQgLXQgbmF0IC1BIFBSRVJPVVRJTkcgLWkgZXRoMSAtcCB0Y3AgLS1kcG9ydCA4 MCAtaiBSRURJUkVDVCAtLXRvLXBvcnQgODA4MAoKJElQVCAtdCBuYXQgLUEgUFJFUk9VVElO RyAtaSBldGgwIC1kIDE5Mi4xNjguMS4wLzI1NS4yNTUuMjU1LjAgQUNDRVBUCiRJUFQgLXQg bmF0IC1BIFBSRVJPVVRJTkcgLWkgZXRoMCAtcCB0Y3AgLS1kcG9ydCA4MCAtaiBSRURJUkVD VCAtLXRvLXBvcnQgODA4MAoKCgoKCg== --------------010608080500070804080500--