From michal.skrivanek at redhat.com Wed May 4 03:47:20 2016 Content-Type: multipart/mixed; boundary="===============3670791709210635102==" MIME-Version: 1.0 From: Michal Skrivanek To: users at ovirt.org Subject: Re: [ovirt-users] ovirt-vmconsole serial Date: Wed, 04 May 2016 09:47:17 +0200 Message-ID: <01FF799B-E207-4E7E-9D59-BA0B20A3CFBA@redhat.com> In-Reply-To: CAG2kNCyOUJwBoZZxYbJ6F1C3-zt4CTbKgRO7B-aAOZpgARt-gw@mail.gmail.com --===============3670791709210635102== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable --Apple-Mail=3D_BD09F72D-91EC-46F7-A2A6-B1736D2F6445 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=3Dus-ascii > On 03 May 2016, at 13:08, Gianluca Cecchi = =3D wrote: >=3D20 > Hello, > I attach to this thread to detail how I was able to have serial =3D console working both on CentOS 6.7 and CentOS 7.2 VMs on 3.6.5 >=3D20 > - CentOS 6.7 > Basically what described in general here (but using ttyS0 instead =3D ttyS1): > http://www.cyberciti.biz/faq/centos-rhel-6-install-serial-console/ =3D >=3D20 > So in /boot/grub/grub.conf=3D20 >=3D20 > a) right before the "hiddenmenu" line: >=3D20 > serial --unit=3D3D0 --speed=3D3D19200 --word=3D3D8 --parity=3D3Dno --stop= =3D3D1 > terminal --timeout=3D3D5 serial console >=3D20 > b) At the end of kernel line added: > console=3D3Dtty0 console=3D3DttyS0,19200n8 >=3D20 > Added at the end of /etc/securetty the line > ttyS0 >=3D20 > Only difference is that as I used ttyS0, the upstart configuration was = =3D not needed: the system after reboot was already listening on ttyS0 > Creating upstart config file generated 2 processes listening on ttyS0 >=3D20 >=3D20 > - CentOS 7.2 > created VM with virtio console enabled in options and basically =3D following what described here > https://www.youtube.com/watch?v=3D3DSx2HRwFqG7o =3D >=3D20 > from default configuration I got after install: >=3D20 > Add in /etc/default/grub "console=3D3DttyS0" in GRUB_CMDLINE_LINUX so =3D that it is now: > GRUB_CMDLINE_LINUX=3D3D"rd.lvm.lv =3D3Dcentos/root =3D rd.lvm.lv =3D3Dcentos/swap rhgb quiet console=3D3DttyS0" >=3D20 > grub2-mkconfig -o /boot/grub2/grub.cfg >=3D20 > reboot the VM >=3D20 > =3D46rom a client: > $ ssh -t -p 2222 ovirt-vmconsole(a)ovirt.lutwyn.org =3D connect > Available Serial Consoles: > 00 c6desktop[68a82ada-a1d2-44d0-85b0-f3a08cc2f579] > 01 c7desktop[787f46f6-de4a-4b42-ba39-9609908c2905] > SELECT> 01 >=3D20 > CentOS Linux 7 (Core) > Kernel 3.10.0-327.13.1.el7.x86_64 on an x86_64 >=3D20 > Host-006 login: root > Password:=3D20 > Last login: Tue May 3 01:34:57 on pts/0 > [root(a)Host-006 ~]#=3D20 > [root(a)Host-006 ~]#=3D20 > [root(a)Host-006 ~]# cat /etc/redhat-release > CentOS Linux release 7.2.1511 (Core)=3D20 > [root(a)Host-006 ~]# exit Hi Gianluca, would you care to extend =3D http://www.ovirt.org/documentation/admin-guide/serial-console-setup/ =3D with this useful info? I suppose there are quite a few people who would =3D find handy some tips how to set it up for various guest OSes Thanks, michal >=3D20 > HIH, > Gianluca > _______________________________________________ > Users mailing list > Users(a)ovirt.org > http://lists.ovirt.org/mailman/listinfo/users --Apple-Mail=3D_BD09F72D-91EC-46F7-A2A6-B1736D2F6445 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=3Dus-ascii
On 03 May 2016, at 13:08, Gianluca Cecchi <gianluca.cecchi(a)gmail.com> wrote:

Hello,
I attach t= o =3D this thread to detail how I was able to have serial console working both = =3D on CentOS 6.7 and CentOS 7.2 VMs on 3.6.5

- =3D CentOS 6.7
Basically what described in = =3D general here (but using ttyS0 instead ttyS1):

So =3D in /boot/grub/grub.conf 

a) right before the =3D "hiddenmenu" line:

serial --unit=3D3D0 --speed=3D3= D19200 =3D --word=3D3D8 --parity=3D3Dno --stop=3D3D1
terminal --timeout=3D3D5 serial =3D console

b) At the end of kernel line added:
console=3D3Dtty0 console=3D3DttyS0,19200n8

Added at the end of /etc/securetty the =3D line
ttyS0

Only=3D difference is that as I used ttyS0, the upstart configuration was not =3D needed: the system after reboot was already listening on ttyS0
Creating upstart config fil= e =3D generated 2 processes listening on ttyS0


- =3D CentOS 7.2
created VM with virtio =3D console enabled in options and basically following what described =3D here

from=3D default configuration I got after install:

Add =3D in /etc/default/grub "console=3D3DttyS0" in GRUB_CMDLINE_LINUX so that it = =3D is now:
GRUB_CMDLINE_LINUX=3D3D"rd.lvm.lv=3D3Dcentos/root rd.lvm.lv=3D3Dcentos/swap rhg= b =3D quiet console=3D3DttyS0"

grub2-mkconfig -o =3D /boot/grub2/grub.cfg

reboot the VM

=3D46r=3D om a client:
$ ssh -t -p 2222 ovirt-vmconsole(a)ovirt.lutwyn.org connect
Available Serial Consoles:
00 =3D c6desktop[68a82ada-a1d2-44d0-85b0-f3a08cc2f579]
01 =3D c7desktop[787f46f6-de4a-4b42-ba39-9609908c2905]
SELECT> 01
CentOS Linux 7 =3D (Core)
Kernel 3.10.0-327.13.1.el7.x86_64 = =3D on an x86_64

Host-006 login: root
Password: 
L= ast=3D login: Tue May  3 01:34:57 on pts/0
[root(a)Host-006 ~]# 
[root(a)Host-006 ~]# 
[root(a)Host-006 ~]# cat =3D /etc/redhat-release
CentOS Linux release = =3D 7.2.1511 (Core) 
[root(a)Host-006 ~]= # =3D exit

Hi Gianluca,
would you care to extend http://www.ovirt.org/documentation/admin-guide/serial-console-= s=3D etup/ with this useful info? I suppose there are quite a few people =3D who would find handy some tips how to set it up for various guest =3D OSes

Thanks,
michal


HIH,
Gianluca
_______________________________________________
Users =3D mailing list
Users(a)ovirt.org
http://lists.ovirt.org/mailman/listinfo/users

=3D --Apple-Mail=3D_BD09F72D-91EC-46F7-A2A6-B1736D2F6445-- --===============3670791709210635102== Content-Type: multipart/alternative MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="attachment.bin" Ci0tQXBwbGUtTWFpbD1fQkQwOUY3MkQtOTFFQy00NkY3LUEyQTYtQjE3MzZEMkY2NDQ1CkNvbnRl bnQtVHJhbnNmZXItRW5jb2Rpbmc6IHF1b3RlZC1wcmludGFibGUKQ29udGVudC1UeXBlOiB0ZXh0 L3BsYWluOwoJY2hhcnNldD11cy1hc2NpaQoKCj4gT24gMDMgTWF5IDIwMTYsIGF0IDEzOjA4LCBH aWFubHVjYSBDZWNjaGkgPGdpYW5sdWNhLmNlY2NoaUBnbWFpbC5jb20+ID0Kd3JvdGU6Cj49MjAK PiBIZWxsbywKPiBJIGF0dGFjaCB0byB0aGlzIHRocmVhZCB0byBkZXRhaWwgaG93IEkgd2FzIGFi bGUgdG8gaGF2ZSBzZXJpYWwgPQpjb25zb2xlIHdvcmtpbmcgYm90aCBvbiBDZW50T1MgNi43IGFu ZCBDZW50T1MgNy4yIFZNcyBvbiAzLjYuNQo+PTIwCj4gLSBDZW50T1MgNi43Cj4gQmFzaWNhbGx5 IHdoYXQgZGVzY3JpYmVkIGluIGdlbmVyYWwgaGVyZSAoYnV0IHVzaW5nIHR0eVMwIGluc3RlYWQg PQp0dHlTMSk6Cj4gaHR0cDovL3d3dy5jeWJlcmNpdGkuYml6L2ZhcS9jZW50b3MtcmhlbC02LWlu c3RhbGwtc2VyaWFsLWNvbnNvbGUvID0KPGh0dHA6Ly93d3cuY3liZXJjaXRpLmJpei9mYXEvY2Vu dG9zLXJoZWwtNi1pbnN0YWxsLXNlcmlhbC1jb25zb2xlLz4KPj0yMAo+IFNvIGluIC9ib290L2dy dWIvZ3J1Yi5jb25mPTIwCj49MjAKPiBhKSByaWdodCBiZWZvcmUgdGhlICJoaWRkZW5tZW51IiBs aW5lOgo+PTIwCj4gc2VyaWFsIC0tdW5pdD0zRDAgLS1zcGVlZD0zRDE5MjAwIC0td29yZD0zRDgg LS1wYXJpdHk9M0RubyAtLXN0b3A9M0QxCj4gdGVybWluYWwgLS10aW1lb3V0PTNENSBzZXJpYWwg Y29uc29sZQo+PTIwCj4gYikgQXQgdGhlIGVuZCBvZiBrZXJuZWwgbGluZSBhZGRlZDoKPiBjb25z b2xlPTNEdHR5MCBjb25zb2xlPTNEdHR5UzAsMTkyMDBuOAo+PTIwCj4gQWRkZWQgYXQgdGhlIGVu ZCBvZiAvZXRjL3NlY3VyZXR0eSB0aGUgbGluZQo+IHR0eVMwCj49MjAKPiBPbmx5IGRpZmZlcmVu Y2UgaXMgdGhhdCBhcyBJIHVzZWQgdHR5UzAsIHRoZSB1cHN0YXJ0IGNvbmZpZ3VyYXRpb24gd2Fz ID0Kbm90IG5lZWRlZDogdGhlIHN5c3RlbSBhZnRlciByZWJvb3Qgd2FzIGFscmVhZHkgbGlzdGVu aW5nIG9uIHR0eVMwCj4gQ3JlYXRpbmcgdXBzdGFydCBjb25maWcgZmlsZSBnZW5lcmF0ZWQgMiBw cm9jZXNzZXMgbGlzdGVuaW5nIG9uIHR0eVMwCj49MjAKPj0yMAo+IC0gQ2VudE9TIDcuMgo+IGNy ZWF0ZWQgVk0gd2l0aCB2aXJ0aW8gY29uc29sZSBlbmFibGVkIGluIG9wdGlvbnMgYW5kIGJhc2lj YWxseSA9CmZvbGxvd2luZyB3aGF0IGRlc2NyaWJlZCBoZXJlCj4gaHR0cHM6Ly93d3cueW91dHVi ZS5jb20vd2F0Y2g/dj0zRFN4MkhSd0ZxRzdvID0KPGh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3dh dGNoP3Y9M0RTeDJIUndGcUc3bz4KPj0yMAo+IGZyb20gZGVmYXVsdCBjb25maWd1cmF0aW9uIEkg Z290IGFmdGVyIGluc3RhbGw6Cj49MjAKPiBBZGQgaW4gL2V0Yy9kZWZhdWx0L2dydWIgImNvbnNv bGU9M0R0dHlTMCIgaW4gR1JVQl9DTURMSU5FX0xJTlVYIHNvID0KdGhhdCBpdCBpcyBub3c6Cj4g R1JVQl9DTURMSU5FX0xJTlVYPTNEInJkLmx2bS5sdiA8aHR0cDovL3JkLmx2bS5sdi8+PTNEY2Vu dG9zL3Jvb3QgPQpyZC5sdm0ubHYgPGh0dHA6Ly9yZC5sdm0ubHYvPj0zRGNlbnRvcy9zd2FwIHJo Z2IgcXVpZXQgY29uc29sZT0zRHR0eVMwIgo+PTIwCj4gZ3J1YjItbWtjb25maWcgLW8gL2Jvb3Qv Z3J1YjIvZ3J1Yi5jZmcKPj0yMAo+IHJlYm9vdCB0aGUgVk0KPj0yMAo+ID00NnJvbSBhIGNsaWVu dDoKPiAkIHNzaCAtdCAtcCAyMjIyIG92aXJ0LXZtY29uc29sZUBvdmlydC5sdXR3eW4ub3JnID0K PG1haWx0bzpvdmlydC12bWNvbnNvbGVAb3ZpcnQubHV0d3luLm9yZz4gY29ubmVjdAo+IEF2YWls YWJsZSBTZXJpYWwgQ29uc29sZXM6Cj4gMDAgYzZkZXNrdG9wWzY4YTgyYWRhLWExZDItNDRkMC04 NWIwLWYzYTA4Y2MyZjU3OV0KPiAwMSBjN2Rlc2t0b3BbNzg3ZjQ2ZjYtZGU0YS00YjQyLWJhMzkt OTYwOTkwOGMyOTA1XQo+IFNFTEVDVD4gMDEKPj0yMAo+IENlbnRPUyBMaW51eCA3IChDb3JlKQo+ IEtlcm5lbCAzLjEwLjAtMzI3LjEzLjEuZWw3Lng4Nl82NCBvbiBhbiB4ODZfNjQKPj0yMAo+IEhv c3QtMDA2IGxvZ2luOiByb290Cj4gUGFzc3dvcmQ6PTIwCj4gTGFzdCBsb2dpbjogVHVlIE1heSAg MyAwMTozNDo1NyBvbiBwdHMvMAo+IFtyb290QEhvc3QtMDA2IH5dIz0yMAo+IFtyb290QEhvc3Qt MDA2IH5dIz0yMAo+IFtyb290QEhvc3QtMDA2IH5dIyBjYXQgL2V0Yy9yZWRoYXQtcmVsZWFzZQo+ IENlbnRPUyBMaW51eCByZWxlYXNlIDcuMi4xNTExIChDb3JlKT0yMAo+IFtyb290QEhvc3QtMDA2 IH5dIyBleGl0CgpIaSBHaWFubHVjYSwKd291bGQgeW91IGNhcmUgdG8gZXh0ZW5kID0KaHR0cDov L3d3dy5vdmlydC5vcmcvZG9jdW1lbnRhdGlvbi9hZG1pbi1ndWlkZS9zZXJpYWwtY29uc29sZS1z ZXR1cC8gPQp3aXRoIHRoaXMgdXNlZnVsIGluZm8/IEkgc3VwcG9zZSB0aGVyZSBhcmUgcXVpdGUg YSBmZXcgcGVvcGxlIHdobyB3b3VsZCA9CmZpbmQgaGFuZHkgc29tZSB0aXBzIGhvdyB0byBzZXQg aXQgdXAgZm9yIHZhcmlvdXMgZ3Vlc3QgT1NlcwoKVGhhbmtzLAptaWNoYWwKCj49MjAKPiBISUgs Cj4gR2lhbmx1Y2EKPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXwo+IFVzZXJzIG1haWxpbmcgbGlzdAo+IFVzZXJzQG92aXJ0Lm9yZwo+IGh0dHA6Ly9saXN0 cy5vdmlydC5vcmcvbWFpbG1hbi9saXN0aW5mby91c2VycwoKCi0tQXBwbGUtTWFpbD1fQkQwOUY3 MkQtOTFFQy00NkY3LUEyQTYtQjE3MzZEMkY2NDQ1CkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6 IHF1b3RlZC1wcmludGFibGUKQ29udGVudC1UeXBlOiB0ZXh0L2h0bWw7CgljaGFyc2V0PXVzLWFz Y2lpCgo8aHRtbD48aGVhZD48bWV0YSBodHRwLWVxdWl2PTNEIkNvbnRlbnQtVHlwZSIgY29udGVu dD0zRCJ0ZXh0L2h0bWwgPQpjaGFyc2V0PTNEdXMtYXNjaWkiPjwvaGVhZD48Ym9keSBzdHlsZT0z RCJ3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7ID0KLXdlYmtpdC1uYnNwLW1vZGU6IHNwYWNlOyAtd2Vi a2l0LWxpbmUtYnJlYWs6IGFmdGVyLXdoaXRlLXNwYWNlOyIgPQpjbGFzcz0zRCIiPjxiciBjbGFz cz0zRCIiPjxkaXY+PGJsb2NrcXVvdGUgdHlwZT0zRCJjaXRlIiBjbGFzcz0zRCIiPjxkaXYgPQpj bGFzcz0zRCIiPk9uIDAzIE1heSAyMDE2LCBhdCAxMzowOCwgR2lhbmx1Y2EgQ2VjY2hpICZsdDs8 YSA9CmhyZWY9M0QibWFpbHRvOmdpYW5sdWNhLmNlY2NoaUBnbWFpbC5jb20iID0KY2xhc3M9M0Qi Ij5naWFubHVjYS5jZWNjaGlAZ21haWwuY29tPC9hPiZndDsgd3JvdGU6PC9kaXY+PGJyID0KY2xh c3M9M0QiQXBwbGUtaW50ZXJjaGFuZ2UtbmV3bGluZSI+PGRpdiBjbGFzcz0zRCIiPjxkaXYgZGly PTNEImx0ciIgPQpjbGFzcz0zRCIiPjxkaXYgY2xhc3M9M0QiZ21haWxfZXh0cmEiPjxkaXYgPQpj bGFzcz0zRCJnbWFpbF9xdW90ZSI+SGVsbG8sPC9kaXY+PGRpdiBjbGFzcz0zRCJnbWFpbF9xdW90 ZSI+SSBhdHRhY2ggdG8gPQp0aGlzIHRocmVhZCB0byBkZXRhaWwgaG93IEkgd2FzIGFibGUgdG8g aGF2ZSBzZXJpYWwgY29uc29sZSB3b3JraW5nIGJvdGggPQpvbiBDZW50T1MgNi43IGFuZCBDZW50 T1MgNy4yIFZNcyBvbiAzLjYuNTwvZGl2PjxkaXYgPQpjbGFzcz0zRCJnbWFpbF9xdW90ZSI+PGJy IGNsYXNzPTNEIiI+PC9kaXY+PGRpdiBjbGFzcz0zRCJnbWFpbF9xdW90ZSI+LSA9CkNlbnRPUyA2 Ljc8L2Rpdj48ZGl2IGNsYXNzPTNEImdtYWlsX3F1b3RlIj5CYXNpY2FsbHkgd2hhdCBkZXNjcmli ZWQgaW4gPQpnZW5lcmFsIGhlcmUgKGJ1dCB1c2luZyB0dHlTMCBpbnN0ZWFkIHR0eVMxKTo8L2Rp dj48ZGl2ID0KY2xhc3M9M0QiZ21haWxfcXVvdGUiPjxhID0KaHJlZj0zRCJodHRwOi8vd3d3LmN5 YmVyY2l0aS5iaXovZmFxL2NlbnRvcy1yaGVsLTYtaW5zdGFsbC1zZXJpYWwtY29uc29sZS89CiIg PQpjbGFzcz0zRCIiPmh0dHA6Ly93d3cuY3liZXJjaXRpLmJpei9mYXEvY2VudG9zLXJoZWwtNi1p bnN0YWxsLXNlcmlhbC1jb25zbz0KbGUvPC9hPjxiciBjbGFzcz0zRCIiPjwvZGl2PjxkaXYgY2xh c3M9M0QiZ21haWxfcXVvdGUiPjxiciA9CmNsYXNzPTNEIiI+PC9kaXY+PGRpdiBjbGFzcz0zRCJn bWFpbF9xdW90ZSI+U28gPQppbiZuYnNwOy9ib290L2dydWIvZ3J1Yi5jb25mJm5ic3A7PC9kaXY+ PGRpdiBjbGFzcz0zRCJnbWFpbF9xdW90ZSI+PGJyID0KY2xhc3M9M0QiIj48L2Rpdj48ZGl2IGNs YXNzPTNEImdtYWlsX3F1b3RlIj5hKSByaWdodCBiZWZvcmUgdGhlID0KImhpZGRlbm1lbnUiIGxp bmU6PC9kaXY+PGRpdiBjbGFzcz0zRCJnbWFpbF9xdW90ZSI+PGRpdiA9CmNsYXNzPTNEImdtYWls X3F1b3RlIj48YnIgY2xhc3M9M0QiIj48L2Rpdj48ZGl2ID0KY2xhc3M9M0QiZ21haWxfcXVvdGUi PnNlcmlhbCAtLXVuaXQ9M0Q8YiBjbGFzcz0zRCIiPjAgPC9iPi0tc3BlZWQ9M0QxOTIwMCA9Ci0t d29yZD0zRDggLS1wYXJpdHk9M0RubyAtLXN0b3A9M0QxPC9kaXY+PGRpdiA9CmNsYXNzPTNEImdt YWlsX3F1b3RlIj50ZXJtaW5hbCAtLXRpbWVvdXQ9M0Q1IHNlcmlhbCA9CmNvbnNvbGU8L2Rpdj48 L2Rpdj48ZGl2IGNsYXNzPTNEImdtYWlsX3F1b3RlIj48YnIgY2xhc3M9M0QiIj48L2Rpdj48ZGl2 ID0KY2xhc3M9M0QiZ21haWxfcXVvdGUiPmIpIEF0IHRoZSBlbmQgb2Yga2VybmVsIGxpbmUgYWRk ZWQ6PC9kaXY+PGRpdiA9CmNsYXNzPTNEImdtYWlsX3F1b3RlIj5jb25zb2xlPTNEdHR5MCBjb25z b2xlPTNEdHR5UzxiID0KY2xhc3M9M0QiIj4wPC9iPiwxOTIwMG44PGJyIGNsYXNzPTNEIiI+PC9k aXY+PGRpdiA9CmNsYXNzPTNEImdtYWlsX3F1b3RlIj48YnIgY2xhc3M9M0QiIj48L2Rpdj48ZGl2 ID0KY2xhc3M9M0QiZ21haWxfcXVvdGUiPkFkZGVkIGF0IHRoZSBlbmQgb2YgL2V0Yy9zZWN1cmV0 dHkgdGhlID0KbGluZTwvZGl2PjxkaXYgY2xhc3M9M0QiZ21haWxfcXVvdGUiPnR0eVMwPGJyIGNs YXNzPTNEIiI+PC9kaXY+PGRpdiA9CmNsYXNzPTNEImdtYWlsX3F1b3RlIj48YnIgY2xhc3M9M0Qi Ij48L2Rpdj48ZGl2IGNsYXNzPTNEImdtYWlsX3F1b3RlIj5Pbmx5PQogZGlmZmVyZW5jZSBpcyB0 aGF0IGFzIEkgdXNlZCB0dHlTMCwgdGhlIHVwc3RhcnQgY29uZmlndXJhdGlvbiB3YXMgbm90ID0K bmVlZGVkOiB0aGUgc3lzdGVtIGFmdGVyIHJlYm9vdCB3YXMgYWxyZWFkeSBsaXN0ZW5pbmcgb24g dHR5UzA8YnIgPQpjbGFzcz0zRCIiPjwvZGl2PjxkaXYgY2xhc3M9M0QiZ21haWxfcXVvdGUiPkNy ZWF0aW5nIHVwc3RhcnQgY29uZmlnIGZpbGUgPQpnZW5lcmF0ZWQgMiBwcm9jZXNzZXMgbGlzdGVu aW5nIG9uIHR0eVMwPC9kaXY+PGRpdiA9CmNsYXNzPTNEImdtYWlsX3F1b3RlIj48YnIgY2xhc3M9 M0QiIj48L2Rpdj48ZGl2IGNsYXNzPTNEImdtYWlsX3F1b3RlIj48YnIgPQpjbGFzcz0zRCIiPjwv ZGl2PjxkaXYgY2xhc3M9M0QiZ21haWxfcXVvdGUiPjxkaXYgY2xhc3M9M0QiZ21haWxfcXVvdGUi Pi0gPQpDZW50T1MgNy4yPC9kaXY+PGRpdiBjbGFzcz0zRCJnbWFpbF9xdW90ZSI+Y3JlYXRlZCBW TSB3aXRoIHZpcnRpbyA9CmNvbnNvbGUgZW5hYmxlZCBpbiBvcHRpb25zIGFuZCBiYXNpY2FsbHkg Zm9sbG93aW5nIHdoYXQgZGVzY3JpYmVkID0KaGVyZTwvZGl2PjxkaXYgY2xhc3M9M0QiZ21haWxf cXVvdGUiPjxhID0KaHJlZj0zRCJodHRwczovL3d3dy55b3V0dWJlLmNvbS93YXRjaD92PTNEU3gy SFJ3RnFHN28iID0KY2xhc3M9M0QiIj5odHRwczovL3d3dy55b3V0dWJlLmNvbS93YXRjaD92PTNE U3gySFJ3RnFHN288L2E+PC9kaXY+PGRpdiA9CmNsYXNzPTNEImdtYWlsX3F1b3RlIj48YnIgY2xh c3M9M0QiIj48L2Rpdj48ZGl2IGNsYXNzPTNEImdtYWlsX3F1b3RlIj5mcm9tPQogZGVmYXVsdCBj b25maWd1cmF0aW9uIEkgZ290IGFmdGVyIGluc3RhbGw6PC9kaXY+PGRpdiA9CmNsYXNzPTNEImdt YWlsX3F1b3RlIj48YnIgY2xhc3M9M0QiIj48L2Rpdj48ZGl2IGNsYXNzPTNEImdtYWlsX3F1b3Rl Ij5BZGQgPQppbiAvZXRjL2RlZmF1bHQvZ3J1YiAiY29uc29sZT0zRHR0eVMwIiBpbiBHUlVCX0NN RExJTkVfTElOVVggc28gdGhhdCBpdCA9CmlzIG5vdzo8L2Rpdj48ZGl2IGNsYXNzPTNEImdtYWls X3F1b3RlIj5HUlVCX0NNRExJTkVfTElOVVg9M0QiPGEgPQpocmVmPTNEImh0dHA6Ly9yZC5sdm0u bHYvIiBjbGFzcz0zRCIiPnJkLmx2bS5sdjwvYT49M0RjZW50b3Mvcm9vdCA8YSA9CmhyZWY9M0Qi aHR0cDovL3JkLmx2bS5sdi8iIGNsYXNzPTNEIiI+cmQubHZtLmx2PC9hPj0zRGNlbnRvcy9zd2Fw IHJoZ2IgPQpxdWlldCBjb25zb2xlPTNEdHR5UzAiPC9kaXY+PGRpdiBjbGFzcz0zRCJnbWFpbF9x dW90ZSI+PGJyID0KY2xhc3M9M0QiIj48L2Rpdj48ZGl2IGNsYXNzPTNEImdtYWlsX3F1b3RlIj5n cnViMi1ta2NvbmZpZyAtbyA9Ci9ib290L2dydWIyL2dydWIuY2ZnPC9kaXY+PGRpdiBjbGFzcz0z RCJnbWFpbF9xdW90ZSI+PGJyID0KY2xhc3M9M0QiIj48L2Rpdj48ZGl2IGNsYXNzPTNEImdtYWls X3F1b3RlIj5yZWJvb3QgdGhlIFZNPC9kaXY+PGRpdiA9CmNsYXNzPTNEImdtYWlsX3F1b3RlIj48 YnIgY2xhc3M9M0QiIj48L2Rpdj48ZGl2IGNsYXNzPTNEImdtYWlsX3F1b3RlIj49NDZyPQpvbSBh IGNsaWVudDo8L2Rpdj48ZGl2IGNsYXNzPTNEImdtYWlsX3F1b3RlIj4kIHNzaCAtdCAtcCAyMjIy IDxhID0KaHJlZj0zRCJtYWlsdG86b3ZpcnQtdm1jb25zb2xlQG92aXJ0Lmx1dHd5bi5vcmciID0K Y2xhc3M9M0QiIj5vdmlydC12bWNvbnNvbGVAb3ZpcnQubHV0d3luLm9yZzwvYT4gY29ubmVjdDwv ZGl2PjxkaXYgPQpjbGFzcz0zRCJnbWFpbF9xdW90ZSI+QXZhaWxhYmxlIFNlcmlhbCBDb25zb2xl czo8L2Rpdj48ZGl2ID0KY2xhc3M9M0QiZ21haWxfcXVvdGUiPjAwID0KYzZkZXNrdG9wWzY4YTgy YWRhLWExZDItNDRkMC04NWIwLWYzYTA4Y2MyZjU3OV08L2Rpdj48ZGl2ID0KY2xhc3M9M0QiZ21h aWxfcXVvdGUiPjAxID0KYzdkZXNrdG9wWzc4N2Y0NmY2LWRlNGEtNGI0Mi1iYTM5LTk2MDk5MDhj MjkwNV08L2Rpdj48ZGl2ID0KY2xhc3M9M0QiZ21haWxfcXVvdGUiPlNFTEVDVCZndDsgMDE8L2Rp dj48ZGl2IGNsYXNzPTNEImdtYWlsX3F1b3RlIj48YnIgPQpjbGFzcz0zRCIiPjwvZGl2PjxkaXYg Y2xhc3M9M0QiZ21haWxfcXVvdGUiPkNlbnRPUyBMaW51eCA3ID0KKENvcmUpPC9kaXY+PGRpdiBj bGFzcz0zRCJnbWFpbF9xdW90ZSI+S2VybmVsIDMuMTAuMC0zMjcuMTMuMS5lbDcueDg2XzY0ID0K b24gYW4geDg2XzY0PC9kaXY+PGRpdiBjbGFzcz0zRCJnbWFpbF9xdW90ZSI+PGJyIGNsYXNzPTNE IiI+PC9kaXY+PGRpdiA9CmNsYXNzPTNEImdtYWlsX3F1b3RlIj5Ib3N0LTAwNiBsb2dpbjogcm9v dDwvZGl2PjxkaXYgPQpjbGFzcz0zRCJnbWFpbF9xdW90ZSI+UGFzc3dvcmQ6Jm5ic3A7PC9kaXY+ PGRpdiBjbGFzcz0zRCJnbWFpbF9xdW90ZSI+TGFzdD0KIGxvZ2luOiBUdWUgTWF5ICZuYnNwOzMg MDE6MzQ6NTcgb24gcHRzLzA8L2Rpdj48ZGl2ID0KY2xhc3M9M0QiZ21haWxfcXVvdGUiPltyb290 QEhvc3QtMDA2IH5dIyZuYnNwOzwvZGl2PjxkaXYgPQpjbGFzcz0zRCJnbWFpbF9xdW90ZSI+W3Jv b3RASG9zdC0wMDYgfl0jJm5ic3A7PC9kaXY+PGRpdiA9CmNsYXNzPTNEImdtYWlsX3F1b3RlIj5b cm9vdEBIb3N0LTAwNiB+XSMgY2F0ID0KL2V0Yy9yZWRoYXQtcmVsZWFzZTwvZGl2PjxkaXYgY2xh c3M9M0QiZ21haWxfcXVvdGUiPkNlbnRPUyBMaW51eCByZWxlYXNlID0KNy4yLjE1MTEgKENvcmUp Jm5ic3A7PC9kaXY+PGRpdiBjbGFzcz0zRCJnbWFpbF9xdW90ZSI+W3Jvb3RASG9zdC0wMDYgfl0j ID0KZXhpdDwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PjwvYmxvY2txdW90ZT48ZGl2Pjxi ciA9CmNsYXNzPTNEIiI+PC9kaXY+SGkgR2lhbmx1Y2EsPC9kaXY+PGRpdj53b3VsZCB5b3UgY2Fy ZSB0byBleHRlbmQmbmJzcDs8YSA9CmhyZWY9M0QiaHR0cDovL3d3dy5vdmlydC5vcmcvZG9jdW1l bnRhdGlvbi9hZG1pbi1ndWlkZS9zZXJpYWwtY29uc29sZS1zZXR1PQpwLyIgPQpjbGFzcz0zRCIi Pmh0dHA6Ly93d3cub3ZpcnQub3JnL2RvY3VtZW50YXRpb24vYWRtaW4tZ3VpZGUvc2VyaWFsLWNv bnNvbGUtcz0KZXR1cC88L2E+IHdpdGggdGhpcyB1c2VmdWwgaW5mbz8gSSBzdXBwb3NlIHRoZXJl IGFyZSBxdWl0ZSBhIGZldyBwZW9wbGUgPQp3aG8gd291bGQgZmluZCBoYW5keSBzb21lIHRpcHMg aG93IHRvIHNldCBpdCB1cCBmb3IgdmFyaW91cyBndWVzdCA9Ck9TZXM8L2Rpdj48ZGl2PjxiciA9 CmNsYXNzPTNEIiI+PC9kaXY+PGRpdj5UaGFua3MsPC9kaXY+PGRpdj5taWNoYWw8L2Rpdj48ZGl2 PjxiciA9CmNsYXNzPTNEIiI+PGJsb2NrcXVvdGUgdHlwZT0zRCJjaXRlIiBjbGFzcz0zRCIiPjxk aXYgY2xhc3M9M0QiIj48ZGl2ID0KZGlyPTNEImx0ciIgY2xhc3M9M0QiIj48ZGl2IGNsYXNzPTNE ImdtYWlsX2V4dHJhIj48ZGl2ID0KY2xhc3M9M0QiZ21haWxfcXVvdGUiPjxkaXYgY2xhc3M9M0Qi Z21haWxfcXVvdGUiPjxiciBjbGFzcz0zRCIiPjwvZGl2PjxkaXY9CiBjbGFzcz0zRCJnbWFpbF9x dW90ZSI+SElILDwvZGl2PjxkaXYgPQpjbGFzcz0zRCJnbWFpbF9xdW90ZSI+R2lhbmx1Y2E8L2Rp dj48L2Rpdj48L2Rpdj48L2Rpdj4KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX188YnIgY2xhc3M9M0QiIj5Vc2VycyA9Cm1haWxpbmcgbGlzdDxiciBjbGFzcz0z RCIiPjxhIGhyZWY9M0QibWFpbHRvOlVzZXJzQG92aXJ0Lm9yZyIgPQpjbGFzcz0zRCIiPlVzZXJz QG92aXJ0Lm9yZzwvYT48YnIgPQpjbGFzcz0zRCIiPmh0dHA6Ly9saXN0cy5vdmlydC5vcmcvbWFp bG1hbi9saXN0aW5mby91c2VyczxiciA9CmNsYXNzPTNEIiI+PC9kaXY+PC9ibG9ja3F1b3RlPjwv ZGl2PjxiciBjbGFzcz0zRCIiPjwvYm9keT48L2h0bWw+PQoKLS1BcHBsZS1NYWlsPV9CRDA5Rjcy RC05MUVDLTQ2RjctQTJBNi1CMTczNkQyRjY0NDUtLQo= --===============3670791709210635102==--