From mboxrd@z Thu Jan 1 00:00:00 1970 MIME-Version: 1.0 In-Reply-To: References: <20140527001338.GO3763@iota.offblast.org> Date: Mon, 26 May 2014 22:37:13 -0400 Message-ID: From: yan cui To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net> Content-Type: multipart/alternative; boundary=20cf30063c0ac7d07504fa58922c Subject: Re: [9fans] [GSOC] Dial between two computers Topicbox-Message-UUID: f1c17f0a-ead8-11e9-9d60-3106f5b1d025 --20cf30063c0ac7d07504fa58922c Content-Type: text/plain; charset=UTF-8 sure. cat ndb ip=192.168.122.71 ipmask=255.255.255.0 ipgw=192.168.122.1 sys=super dns=192.168.122.1 cat netstat tcp 0 bootes Listen 564 0 :: tcp 1 bootes Listen 567 0 :: tcp 2 none Listen 110 0 :: tcp 3 none Listen 113 0 :: tcp 4 none Listen 143 0 :: tcp 5 none Listen 17005 0 :: tcp 6 none Listen 17006 0 :: tcp 7 none Listen 17007 0 :: tcp 8 none Listen 17009 0 :: tcp 9 none Listen 17010 0 :: tcp 10 none Listen 19 0 :: tcp 11 none Listen 21 0 :: tcp 12 none Listen 22 0 :: tcp 13 none Listen 23 0 :: tcp 14 none Listen 25 0 :: tcp 15 none Listen 513 0 :: tcp 16 none Listen 53 0 :: tcp 17 none Listen 565 0 :: tcp 18 none Listen 7 0 :: tcp 19 none Listen 9 0 :: tcp 20 none Listen 993 0 :: tcp 21 none Listen 995 0 :: tcp 22 network Closed 0 0 :: tcp 23 network Closed 0 0 :: tcp 24 network Closed 564 57021 192.168.122.1 tcp 25 network Closed 39452 567 192.168.122.71 tcp 26 network Closed 40392 567 192.168.122.71 tcp 27 network Closed 567 57328 192.168.122.71 tcp 28 network Closed 567 40392 192.168.122.71 udp 0 network Closed 0 0 :: 2014-05-26 22:26 GMT-04:00 Skip Tavakkolian : > can you supply the output from your cpu? > % cat /net/ndb > % netstat -n > > > > On Mon, May 26, 2014 at 7:18 PM, yan cui wrote: > >> plan9 auth+cpu+file server runs on vm, >> >> $ telnet 192.168.122.71 564 >> Trying 192.168.122.71... >> Connected to 192.168.122.71. >> Escape character is '^]'. >> Then, no response. >> >> >> >> >> >> 2014-05-26 21:51 GMT-04:00 Skip Tavakkolian : >> >> the firewall here wont answer pings. >>> >>> you could check with netstat on your plan 9 and/or traceroute from your >>> linux system. btw, does your plan 9 cpu run in a vm? also does telnet on >>> the linux system behave the same way as your dial? e.g. >>> $ telnet 564 >>> >>> >>> >>> On Mon, May 26, 2014 at 6:30 PM, yan cui wrote: >>> >>>> interesting. >>>> I also dial tcp!www.9netics.com!http, but failed. Actually, >>>> I cannot even ping it successfully. (other sites such as www.google.comcan be pinged on my system.) By the way, if fossil uses another ip, how to >>>> find that? >>>> >>>> >>>> 2014-05-26 20:52 GMT-04:00 Skip Tavakkolian >>> >: >>>> >>>> works here (see below). i wonder if fossil is announcing on a different >>>>> ip than you're expecting? >>>>> >>>>> % 9c dial.c >>>>> % 9l -o dial dial.o >>>>> % ./dial tcp!www.9netics.com!http >>>>> GET / HTTP/1.0 >>>>> >>>>> HTTP/1.1 200 OK >>>>> Server: Plan9 >>>>> Date: Tue, 27 May 2014 00:50:46 GMT >>>>> ETag: "364d3v1b" >>>>> Content-Length: 2682 >>>>> Last-Modified: Thu, 29 Aug 2013 22:51:43 GMT >>>>> Content-Type: text/html >>>>> Connection: close >>>>> >>>>> >>>>> >>>>> >>>>> ... >>>>> >>>>> >>>>> On Mon, May 26, 2014 at 5:13 PM, Nick Owens wrote: >>>>> >>>>>> yan, >>>>>> >>>>>> did you try to use packet capture software like wireshark, or >>>>>> snoopy(8) >>>>>> on plan 9, to see the packets? >>>>>> >>>>>> running wireshark on linux, and snoopy on plan 9, will give you >>>>>> insight >>>>>> into if the packets reach the other side successfully. >>>>>> >>>>>> On Mon, May 26, 2014 at 08:06:21PM -0400, yan cui wrote: >>>>>> > Hi all, >>>>>> > >>>>>> > I used a program to dial from one system to another system, but >>>>>> > it gives a connection time out error. I have searched on Internet >>>>>> for a >>>>>> > long time and cannot get a solution. Could you please provide some >>>>>> > suggestions or hints? Basically, one system is Linux based system >>>>>> with rc >>>>>> > shell installed (we call it A). The other one is a auth+cpu+file >>>>>> server >>>>>> > (we call it B). On B, I have used fossil/conf command to listen >>>>>> tcp!*!564. >>>>>> > On A, I executed dial tcp!!564, but it reports a >>>>>> time out >>>>>> > error after waiting some time. Results are the same when A is a >>>>>> plan9 >>>>>> > terminal. By the way, I can ping A to B successfully. What could >>>>>> be the >>>>>> > possible problems? >>>>>> > >>>>>> > >>>>>> > Thanks, Yan >>>>>> > >>>>>> > -- >>>>>> > Think big; Dream impossible; Make it happen. >>>>>> >>>>> >>>>> >>>> >>>> >>>> -- >>>> Think big; Dream impossible; Make it happen. >>>> >>> >>> >> >> >> -- >> Think big; Dream impossible; Make it happen. >> > > -- Think big; Dream impossible; Make it happen. --20cf30063c0ac7d07504fa58922c Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: base64 PGRpdiBkaXI9Imx0ciI+PGRpdj48ZGl2PnN1cmUuIDxicj48YnI+PC9kaXY+Y2F0IG5kYjxicj5p cD0xOTIuMTY4LjEyMi43MSBpcG1hc2s9MjU1LjI1NS4yNTUuMCBpcGd3PTE5Mi4xNjguMTIyLjE8 YnI+wqDCoMKgIHN5cz1zdXBlcjxicj7CoMKgwqAgZG5zPTE5Mi4xNjguMTIyLjE8YnI+PGJyPjwv ZGl2PmNhdCBuZXRzdGF0PGJyPnRjcMKgIDDCoMKgwqAgYm9vdGVzwqDCoMKgwqAgTGlzdGVuwqDC oMKgwqDCoMKgIDU2NMKgwqDCoMKgwqDCoMKgIDDCoMKgwqDCoMKgwqDCoMKgwqAgOjo8YnI+DQp0 Y3DCoCAxwqDCoMKgIGJvb3Rlc8KgwqDCoMKgIExpc3RlbsKgwqDCoMKgwqDCoCA1NjfCoMKgwqDC oMKgwqDCoCAwwqDCoMKgwqDCoMKgwqDCoMKgIDo6PGJyPnRjcMKgIDLCoMKgwqAgbm9uZcKgwqDC oMKgwqDCoCBMaXN0ZW7CoMKgwqDCoMKgwqAgMTEwwqDCoMKgwqDCoMKgwqAgMMKgwqDCoMKgwqDC oMKgwqDCoCA6Ojxicj50Y3DCoCAzwqDCoMKgIG5vbmXCoMKgwqDCoMKgwqAgTGlzdGVuwqDCoMKg wqDCoMKgIDExM8KgwqDCoMKgwqDCoMKgIDDCoMKgwqDCoMKgwqDCoMKgwqAgOjo8YnI+dGNwwqAg NMKgwqDCoCBub25lwqDCoMKgwqDCoMKgIExpc3RlbsKgwqDCoMKgwqDCoCAxNDPCoMKgwqDCoMKg wqDCoCAwwqDCoMKgwqDCoMKgwqDCoMKgIDo6PGJyPg0KdGNwwqAgNcKgwqDCoCBub25lwqDCoMKg wqDCoMKgIExpc3RlbsKgwqDCoMKgwqDCoCAxNzAwNcKgwqDCoMKgwqAgMMKgwqDCoMKgwqDCoMKg wqDCoCA6Ojxicj50Y3DCoCA2wqDCoMKgIG5vbmXCoMKgwqDCoMKgwqAgTGlzdGVuwqDCoMKgwqDC oMKgIDE3MDA2wqDCoMKgwqDCoCAwwqDCoMKgwqDCoMKgwqDCoMKgIDo6PGJyPnRjcMKgIDfCoMKg wqAgbm9uZcKgwqDCoMKgwqDCoCBMaXN0ZW7CoMKgwqDCoMKgwqAgMTcwMDfCoMKgwqDCoMKgIDDC oMKgwqDCoMKgwqDCoMKgwqAgOjo8YnI+dGNwwqAgOMKgwqDCoCBub25lwqDCoMKgwqDCoMKgIExp c3RlbsKgwqDCoMKgwqDCoCAxNzAwOcKgwqDCoMKgwqAgMMKgwqDCoMKgwqDCoMKgwqDCoCA6Ojxi cj4NCnRjcMKgIDnCoMKgwqAgbm9uZcKgwqDCoMKgwqDCoCBMaXN0ZW7CoMKgwqDCoMKgwqAgMTcw MTDCoMKgwqDCoMKgIDDCoMKgwqDCoMKgwqDCoMKgwqAgOjo8YnI+dGNwwqAgMTDCoMKgIG5vbmXC oMKgwqDCoMKgwqAgTGlzdGVuwqDCoMKgwqDCoMKgIDE5wqDCoMKgwqDCoMKgwqDCoCAwwqDCoMKg wqDCoMKgwqDCoMKgIDo6PGJyPnRjcMKgIDExwqDCoCBub25lwqDCoMKgwqDCoMKgIExpc3RlbsKg wqDCoMKgwqDCoCAyMcKgwqDCoMKgwqDCoMKgwqAgMMKgwqDCoMKgwqDCoMKgwqDCoCA6Ojxicj50 Y3DCoCAxMsKgwqAgbm9uZcKgwqDCoMKgwqDCoCBMaXN0ZW7CoMKgwqDCoMKgwqAgMjLCoMKgwqDC oMKgwqDCoMKgIDDCoMKgwqDCoMKgwqDCoMKgwqAgOjo8YnI+DQp0Y3DCoCAxM8KgwqAgbm9uZcKg wqDCoMKgwqDCoCBMaXN0ZW7CoMKgwqDCoMKgwqAgMjPCoMKgwqDCoMKgwqDCoMKgIDDCoMKgwqDC oMKgwqDCoMKgwqAgOjo8YnI+dGNwwqAgMTTCoMKgIG5vbmXCoMKgwqDCoMKgwqAgTGlzdGVuwqDC oMKgwqDCoMKgIDI1wqDCoMKgwqDCoMKgwqDCoCAwwqDCoMKgwqDCoMKgwqDCoMKgIDo6PGJyPnRj cMKgIDE1wqDCoCBub25lwqDCoMKgwqDCoMKgIExpc3RlbsKgwqDCoMKgwqDCoCA1MTPCoMKgwqDC oMKgwqDCoCAwwqDCoMKgwqDCoMKgwqDCoMKgIDo6PGJyPnRjcMKgIDE2wqDCoCBub25lwqDCoMKg wqDCoMKgIExpc3RlbsKgwqDCoMKgwqDCoCA1M8KgwqDCoMKgwqDCoMKgwqAgMMKgwqDCoMKgwqDC oMKgwqDCoCA6Ojxicj4NCnRjcMKgIDE3wqDCoCBub25lwqDCoMKgwqDCoMKgIExpc3RlbsKgwqDC oMKgwqDCoCA1NjXCoMKgwqDCoMKgwqDCoCAwwqDCoMKgwqDCoMKgwqDCoMKgIDo6PGJyPnRjcMKg IDE4wqDCoCBub25lwqDCoMKgwqDCoMKgIExpc3RlbsKgwqDCoMKgwqDCoCA3wqDCoMKgwqDCoMKg wqDCoMKgIDDCoMKgwqDCoMKgwqDCoMKgwqAgOjo8YnI+dGNwwqAgMTnCoMKgIG5vbmXCoMKgwqDC oMKgwqAgTGlzdGVuwqDCoMKgwqDCoMKgIDnCoMKgwqDCoMKgwqDCoMKgwqAgMMKgwqDCoMKgwqDC oMKgwqDCoCA6Ojxicj50Y3DCoCAyMMKgwqAgbm9uZcKgwqDCoMKgwqDCoCBMaXN0ZW7CoMKgwqDC oMKgwqAgOTkzwqDCoMKgwqDCoMKgwqAgMMKgwqDCoMKgwqDCoMKgwqDCoCA6Ojxicj4NCnRjcMKg IDIxwqDCoCBub25lwqDCoMKgwqDCoMKgIExpc3RlbsKgwqDCoMKgwqDCoCA5OTXCoMKgwqDCoMKg wqDCoCAwwqDCoMKgwqDCoMKgwqDCoMKgIDo6PGJyPnRjcMKgIDIywqDCoCBuZXR3b3JrwqDCoMKg IENsb3NlZMKgwqDCoMKgwqDCoCAwwqDCoMKgwqDCoMKgwqDCoMKgIDDCoMKgwqDCoMKgwqDCoMKg wqAgOjo8YnI+dGNwwqAgMjPCoMKgIG5ldHdvcmvCoMKgwqAgQ2xvc2VkwqDCoMKgwqDCoMKgIDDC oMKgwqDCoMKgwqDCoMKgwqAgMMKgwqDCoMKgwqDCoMKgwqDCoCA6Ojxicj50Y3DCoCAyNMKgwqAg bmV0d29ya8KgwqDCoCBDbG9zZWTCoMKgwqDCoMKgwqAgNTY0wqDCoMKgwqDCoMKgwqAgNTcwMjHC oMKgwqDCoMKgIDE5Mi4xNjguMTIyLjE8YnI+DQp0Y3DCoCAyNcKgwqAgbmV0d29ya8KgwqDCoCBD bG9zZWTCoMKgwqDCoMKgwqAgMzk0NTLCoMKgwqDCoMKgIDU2N8KgwqDCoMKgwqDCoMKgIDE5Mi4x NjguMTIyLjcxPGJyPnRjcMKgIDI2wqDCoCBuZXR3b3JrwqDCoMKgIENsb3NlZMKgwqDCoMKgwqDC oCA0MDM5MsKgwqDCoMKgwqAgNTY3wqDCoMKgwqDCoMKgwqAgMTkyLjE2OC4xMjIuNzE8YnI+dGNw wqAgMjfCoMKgIG5ldHdvcmvCoMKgwqAgQ2xvc2VkwqDCoMKgwqDCoMKgIDU2N8KgwqDCoMKgwqDC oMKgIDU3MzI4wqDCoMKgwqDCoCAxOTIuMTY4LjEyMi43MTxicj4NCnRjcMKgIDI4wqDCoCBuZXR3 b3JrwqDCoMKgIENsb3NlZMKgwqDCoMKgwqDCoCA1NjfCoMKgwqDCoMKgwqDCoCA0MDM5MsKgwqDC oMKgwqAgMTkyLjE2OC4xMjIuNzE8YnI+dWRwwqAgMMKgwqDCoCBuZXR3b3JrwqDCoMKgIENsb3Nl ZMKgwqDCoMKgwqDCoCAwwqDCoMKgwqDCoMKgwqDCoMKgIDDCoMKgwqDCoMKgwqDCoMKgwqAgOjo8 YnI+PGJyPjwvZGl2PjxkaXYgY2xhc3M9ImdtYWlsX2V4dHJhIj48YnI+PGJyPjxkaXYgY2xhc3M9 ImdtYWlsX3F1b3RlIj4yMDE0LTA1LTI2IDIyOjI2IEdNVC0wNDowMCBTa2lwIFRhdmFra29saWFu IDxzcGFuIGRpcj0ibHRyIj4mbHQ7PGEgaHJlZj0ibWFpbHRvOnNraXAudGF2YWtrb2xpYW5AZ21h aWwuY29tIiB0YXJnZXQ9Il9ibGFuayI+c2tpcC50YXZha2tvbGlhbkBnbWFpbC5jb208L2E+Jmd0 Ozwvc3Bhbj46PGJyPg0KPGJsb2NrcXVvdGUgY2xhc3M9ImdtYWlsX3F1b3RlIiBzdHlsZT0ibWFy Z2luOjAgMCAwIC44ZXg7Ym9yZGVyLWxlZnQ6MXB4ICNjY2Mgc29saWQ7cGFkZGluZy1sZWZ0OjFl eCI+PGRpdiBkaXI9Imx0ciI+Y2FuIHlvdSBzdXBwbHkgdGhlIG91dHB1dCBmcm9tIHlvdXIgY3B1 PzxkaXY+JSBjYXQgL25ldC9uZGI8L2Rpdj48ZGl2PiUgbmV0c3RhdCAtbjwvZGl2PjxkaXY+PGJy PjwvZGl2PjwvZGl2Pg0KPGRpdiBjbGFzcz0iSE9FblpiIj48ZGl2IGNsYXNzPSJoNSI+PGRpdiBj bGFzcz0iZ21haWxfZXh0cmEiPjxicj48YnI+PGRpdiBjbGFzcz0iZ21haWxfcXVvdGUiPk9uIE1v biwgTWF5IDI2LCAyMDE0IGF0IDc6MTggUE0sIHlhbiBjdWkgPHNwYW4gZGlyPSJsdHIiPiZsdDs8 YSBocmVmPSJtYWlsdG86Y2N1aXl5YW5AZ21haWwuY29tIiB0YXJnZXQ9Il9ibGFuayI+Y2N1aXl5 YW5AZ21haWwuY29tPC9hPiZndDs8L3NwYW4+IHdyb3RlOjxicj4NCg0KPGJsb2NrcXVvdGUgY2xh c3M9ImdtYWlsX3F1b3RlIiBzdHlsZT0ibWFyZ2luOjAgMCAwIC44ZXg7Ym9yZGVyLWxlZnQ6MXB4 ICNjY2Mgc29saWQ7cGFkZGluZy1sZWZ0OjFleCI+PGRpdiBkaXI9Imx0ciI+PGRpdj5wbGFuOSBh dXRoK2NwdStmaWxlIHNlcnZlciBydW5zIG9uIHZtLCA8YnI+PGJyPiQgdGVsbmV0IDE5Mi4xNjgu MTIyLjcxIDU2NDxicj5UcnlpbmcgMTkyLjE2OC4xMjIuNzEuLi48YnI+DQoNCkNvbm5lY3RlZCB0 byAxOTIuMTY4LjEyMi43MS48YnI+RXNjYXBlIGNoYXJhY3RlciBpcyAmIzM5O15dJiMzOTsuPGJy PjwvZGl2PlRoZW4sIG5vIHJlc3BvbnNlLiA8YnI+DQo8ZGl2Pjxicj48YnI+PGJyPjwvZGl2Pjwv ZGl2PjxkaXYgY2xhc3M9ImdtYWlsX2V4dHJhIj48YnI+PGJyPjxkaXYgY2xhc3M9ImdtYWlsX3F1 b3RlIj4yMDE0LTA1LTI2IDIxOjUxIEdNVC0wNDowMCBTa2lwIFRhdmFra29saWFuIDxzcGFuIGRp cj0ibHRyIj4mbHQ7PGEgaHJlZj0ibWFpbHRvOnNraXAudGF2YWtrb2xpYW5AZ21haWwuY29tIiB0 YXJnZXQ9Il9ibGFuayI+c2tpcC50YXZha2tvbGlhbkBnbWFpbC5jb208L2E+Jmd0Ozwvc3Bhbj46 PGRpdj4NCg0KPGRpdj48YnI+DQo8YmxvY2txdW90ZSBjbGFzcz0iZ21haWxfcXVvdGUiIHN0eWxl PSJtYXJnaW46MCAwIDAgLjhleDtib3JkZXItbGVmdDoxcHggI2NjYyBzb2xpZDtwYWRkaW5nLWxl ZnQ6MWV4Ij48ZGl2IGRpcj0ibHRyIj50aGUgZmlyZXdhbGwgaGVyZSB3b250IGFuc3dlciBwaW5n cy48ZGl2Pjxicj48L2Rpdj48ZGl2PnlvdSBjb3VsZCBjaGVjayB3aXRoIG5ldHN0YXQgb24geW91 ciBwbGFuIDkgYW5kL29yIHRyYWNlcm91dGUgZnJvbSB5b3VyIGxpbnV4IHN5c3RlbS4gwqBidHcs IGRvZXMgeW91ciBwbGFuIDkgY3B1IHJ1biBpbiBhIHZtPyBhbHNvIGRvZXMgdGVsbmV0IG9uIHRo ZSBsaW51eCBzeXN0ZW0gYmVoYXZlIHRoZSBzYW1lIHdheSBhcyB5b3VyIGRpYWw/IGUuZy48L2Rp dj4NCg0KDQoNCjxkaXY+JCB0ZWxuZXQgJmx0O3lvdXJpcCZndDsgNTY0PC9kaXY+PGRpdj48YnI+ PC9kaXY+PC9kaXY+PGRpdj48ZGl2PjxkaXYgY2xhc3M9ImdtYWlsX2V4dHJhIj48YnI+PGJyPjxk aXYgY2xhc3M9ImdtYWlsX3F1b3RlIj5PbiBNb24sIE1heSAyNiwgMjAxNCBhdCA2OjMwIFBNLCB5 YW4gY3VpIDxzcGFuIGRpcj0ibHRyIj4mbHQ7PGEgaHJlZj0ibWFpbHRvOmNjdWl5eWFuQGdtYWls LmNvbSIgdGFyZ2V0PSJfYmxhbmsiPmNjdWl5eWFuQGdtYWlsLmNvbTwvYT4mZ3Q7PC9zcGFuPiB3 cm90ZTo8YnI+DQoNCg0KDQo8YmxvY2txdW90ZSBjbGFzcz0iZ21haWxfcXVvdGUiIHN0eWxlPSJt YXJnaW46MCAwIDAgLjhleDtib3JkZXItbGVmdDoxcHggI2NjYyBzb2xpZDtwYWRkaW5nLWxlZnQ6 MWV4Ij48ZGl2IGRpcj0ibHRyIj48ZGl2PjxkaXY+aW50ZXJlc3RpbmcuIDxicj48L2Rpdj5JIGFs c28gZGlhbCB0Y3AhPGEgaHJlZj0iaHR0cDovL3d3dy45bmV0aWNzLmNvbSIgdGFyZ2V0PSJfYmxh bmsiPnd3dy45bmV0aWNzLmNvbTwvYT4haHR0cCwgYnV0IGZhaWxlZC4gQWN0dWFsbHksIDxicj4N Cg0KDQoNCjwvZGl2PkkgY2Fubm90IGV2ZW4gcGluZyBpdCBzdWNjZXNzZnVsbHkuIChvdGhlciBz aXRlcyBzdWNoIGFzIDxhIGhyZWY9Imh0dHA6Ly93d3cuZ29vZ2xlLmNvbSIgdGFyZ2V0PSJfYmxh bmsiPnd3dy5nb29nbGUuY29tPC9hPiBjYW4gYmUgcGluZ2VkIG9uIG15IHN5c3RlbS4pIEJ5IHRo ZSB3YXksIGlmIGZvc3NpbCB1c2VzIGFub3RoZXIgaXAsIGhvdyB0byBmaW5kIHRoYXQ/PGJyPg0K PC9kaXY+PGRpdiBjbGFzcz0iZ21haWxfZXh0cmEiPjxicj48YnI+PGRpdiBjbGFzcz0iZ21haWxf cXVvdGUiPjIwMTQtMDUtMjYgMjA6NTIgR01ULTA0OjAwIFNraXAgVGF2YWtrb2xpYW4gPHNwYW4g ZGlyPSJsdHIiPiZsdDs8YSBocmVmPSJtYWlsdG86c2tpcC50YXZha2tvbGlhbkBnbWFpbC5jb20i IHRhcmdldD0iX2JsYW5rIj5za2lwLnRhdmFra29saWFuQGdtYWlsLmNvbTwvYT4mZ3Q7PC9zcGFu Pjo8ZGl2Pg0KDQoNCg0KPGRpdj48YnI+DQo8YmxvY2txdW90ZSBjbGFzcz0iZ21haWxfcXVvdGUi IHN0eWxlPSJtYXJnaW46MCAwIDAgLjhleDtib3JkZXItbGVmdDoxcHggI2NjYyBzb2xpZDtwYWRk aW5nLWxlZnQ6MWV4Ij48ZGl2IGRpcj0ibHRyIj53b3JrcyBoZXJlIChzZWUgYmVsb3cpLiBpIHdv bmRlciBpZiBmb3NzaWwgaXMgYW5ub3VuY2luZyBvbiBhIGRpZmZlcmVudCBpcCB0aGFuIHlvdSYj Mzk7cmUgZXhwZWN0aW5nPzxkaXY+DQoNCg0KDQoNCjxicj48L2Rpdj48ZGl2PjxkaXY+JSA5YyBk aWFsLmM8L2Rpdj48ZGl2PiUgOWwgLW8gZGlhbCBkaWFsLm88L2Rpdj48ZGl2PiUgLi9kaWFsIHRj cCE8YSBocmVmPSJodHRwOi8vd3d3LjluZXRpY3MuY29tIiB0YXJnZXQ9Il9ibGFuayI+d3d3Ljlu ZXRpY3MuY29tPC9hPiFodHRwPC9kaXY+DQo8ZGl2PjxkaXY+R0VUIC8gSFRUUC8xLjA8L2Rpdj48 ZGl2Pjxicj48L2Rpdj48ZGl2PkhUVFAvMS4xIDIwMCBPSzwvZGl2PjxkaXY+U2VydmVyOiBQbGFu OTwvZGl2PjxkaXY+RGF0ZTogVHVlLCAyNyBNYXkgMjAxNCAwMDo1MDo0NiBHTVQ8L2Rpdj48ZGl2 PkVUYWc6ICZxdW90OzM2NGQzdjFiJnF1b3Q7PC9kaXY+PGRpdj5Db250ZW50LUxlbmd0aDogMjY4 MjwvZGl2PjxkaXY+TGFzdC1Nb2RpZmllZDogVGh1LCAyOSBBdWcgMjAxMyAyMjo1MTo0MyBHTVQ8 L2Rpdj4NCg0KDQoNCg0KDQo8ZGl2PkNvbnRlbnQtVHlwZTogdGV4dC9odG1sPC9kaXY+PGRpdj5D b25uZWN0aW9uOiBjbG9zZTwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+Jmx0OyFET0NUWVBFIGh0 bWwmZ3Q7wqA8L2Rpdj48ZGl2PiZsdDtodG1sJmd0OzwvZGl2PjwvZGl2PjwvZGl2PjxkaXY+PGJy PjwvZGl2PjxkaXY+Li4uPC9kaXY+PC9kaXY+PGRpdj48ZGl2PjxkaXYgY2xhc3M9ImdtYWlsX2V4 dHJhIj4NCjxicj48YnI+PGRpdiBjbGFzcz0iZ21haWxfcXVvdGUiPg0KT24gTW9uLCBNYXkgMjYs IDIwMTQgYXQgNToxMyBQTSwgTmljayBPd2VucyA8c3BhbiBkaXI9Imx0ciI+Jmx0OzxhIGhyZWY9 Im1haWx0bzptaXNjaGllZkA5Lm9mZmJsYXN0Lm9yZyIgdGFyZ2V0PSJfYmxhbmsiPm1pc2NoaWVm QDkub2ZmYmxhc3Qub3JnPC9hPiZndDs8L3NwYW4+IHdyb3RlOjxicj48YmxvY2txdW90ZSBjbGFz cz0iZ21haWxfcXVvdGUiIHN0eWxlPSJtYXJnaW46MCAwIDAgLjhleDtib3JkZXItbGVmdDoxcHgg I2NjYyBzb2xpZDtwYWRkaW5nLWxlZnQ6MWV4Ij4NCg0KDQoNCg0KDQp5YW4sPGJyPg0KPGJyPg0K ZGlkIHlvdSB0cnkgdG8gdXNlIHBhY2tldCBjYXB0dXJlIHNvZnR3YXJlIGxpa2Ugd2lyZXNoYXJr LCBvciBzbm9vcHkoOCk8YnI+DQpvbiBwbGFuIDksIHRvIHNlZSB0aGUgcGFja2V0cz88YnI+DQo8 YnI+DQpydW5uaW5nIHdpcmVzaGFyayBvbiBsaW51eCwgYW5kIHNub29weSBvbiBwbGFuIDksIHdp bGwgZ2l2ZSB5b3UgaW5zaWdodDxicj4NCmludG8gaWYgdGhlIHBhY2tldHMgcmVhY2ggdGhlIG90 aGVyIHNpZGUgc3VjY2Vzc2Z1bGx5Ljxicj4NCjxkaXY+PGRpdj48YnI+DQpPbiBNb24sIE1heSAy NiwgMjAxNCBhdCAwODowNjoyMVBNIC0wNDAwLCB5YW4gY3VpIHdyb3RlOjxicj4NCiZndDsgSGkg YWxsLDxicj4NCiZndDs8YnI+DQomZ3Q7IMKgIMKgIEkgdXNlZCBhIHByb2dyYW0gdG8gZGlhbCBm cm9tIG9uZSBzeXN0ZW0gdG8gYW5vdGhlciBzeXN0ZW0sIGJ1dDxicj4NCiZndDsgaXQgZ2l2ZXMg YSBjb25uZWN0aW9uIHRpbWUgb3V0IGVycm9yLiBJIGhhdmUgc2VhcmNoZWQgb24gSW50ZXJuZXQg Zm9yIGE8YnI+DQomZ3Q7IGxvbmcgdGltZSBhbmQgY2Fubm90IGdldCBhIHNvbHV0aW9uLiBDb3Vs ZCB5b3UgcGxlYXNlIHByb3ZpZGUgc29tZTxicj4NCiZndDsgc3VnZ2VzdGlvbnMgb3IgaGludHM/ IEJhc2ljYWxseSwgb25lIHN5c3RlbSBpcyBMaW51eCBiYXNlZCBzeXN0ZW0gd2l0aCByYzxicj4N CiZndDsgc2hlbGwgaW5zdGFsbGVkICh3ZSBjYWxsIGl0IEEpLiBUaGUgb3RoZXIgb25lIGlzIGEg YXV0aCtjcHUrZmlsZSBzZXJ2ZXI8YnI+DQomZ3Q7ICh3ZSBjYWxsIGl0IEIpLiBPbiBCLCBJIGhh dmUgdXNlZCBmb3NzaWwvY29uZiBjb21tYW5kIHRvIGxpc3RlbiB0Y3AhKiE1NjQuPGJyPg0KJmd0 OyBPbiBBLCBJIGV4ZWN1dGVkIGRpYWwgdGNwISZsdDtCJiMzOTtzIGlwIGFkZHJlc3MmZ3Q7ITU2 NCwgYnV0IGl0IHJlcG9ydHMgYSB0aW1lIG91dDxicj4NCiZndDsgZXJyb3IgYWZ0ZXIgd2FpdGlu ZyBzb21lIHRpbWUuIFJlc3VsdHMgYXJlIHRoZSBzYW1lIHdoZW4gQSBpcyBhIHBsYW45PGJyPg0K Jmd0OyB0ZXJtaW5hbC4gQnkgdGhlIHdheSwgSSBjYW4gcGluZyBBIHRvIEIgc3VjY2Vzc2Z1bGx5 LiDCoFdoYXQgY291bGQgYmUgdGhlPGJyPg0KJmd0OyBwb3NzaWJsZSBwcm9ibGVtcz88YnI+DQom Z3Q7PGJyPg0KJmd0Ozxicj4NCiZndDsgVGhhbmtzLCBZYW48YnI+DQomZ3Q7PGJyPg0KJmd0OyAt LTxicj4NCiZndDsgVGhpbmsgYmlnOyBEcmVhbSBpbXBvc3NpYmxlOyBNYWtlIGl0IGhhcHBlbi48 YnI+DQo8L2Rpdj48L2Rpdj48L2Jsb2NrcXVvdGU+PC9kaXY+PGJyPjwvZGl2Pg0KPC9kaXY+PC9k aXY+PC9ibG9ja3F1b3RlPjwvZGl2PjwvZGl2PjwvZGl2PjxkaXY+PGRpdj48YnI+PGJyIGNsZWFy PSJhbGwiPjxicj4tLSA8YnI+PGRpdj5UaGluayBiaWc7IERyZWFtIGltcG9zc2libGU7IE1ha2Ug aXQgaGFwcGVuLsKgwqA8L2Rpdj4NCjwvZGl2PjwvZGl2PjwvZGl2Pg0KPC9ibG9ja3F1b3RlPjwv ZGl2Pjxicj48L2Rpdj4NCjwvZGl2PjwvZGl2PjwvYmxvY2txdW90ZT48L2Rpdj48L2Rpdj48L2Rp dj48ZGl2PjxkaXY+PGJyPjxiciBjbGVhcj0iYWxsIj48YnI+LS0gPGJyPjxkaXY+VGhpbmsgYmln OyBEcmVhbSBpbXBvc3NpYmxlOyBNYWtlIGl0IGhhcHBlbi7CoMKgPC9kaXY+DQo8L2Rpdj48L2Rp dj48L2Rpdj4NCjwvYmxvY2txdW90ZT48L2Rpdj48YnI+PC9kaXY+DQo8L2Rpdj48L2Rpdj48L2Js b2NrcXVvdGU+PC9kaXY+PGJyPjxiciBjbGVhcj0iYWxsIj48YnI+LS0gPGJyPjxkaXY+VGhpbmsg YmlnOyBEcmVhbSBpbXBvc3NpYmxlOyBNYWtlIGl0IGhhcHBlbi7CoMKgPC9kaXY+DQo8L2Rpdj4N Cg== --20cf30063c0ac7d07504fa58922c--