From michal.skrivanek at redhat.com Thu Dec 28 19:46:37 2017 Content-Type: multipart/mixed; boundary="===============5889405895370801716==" MIME-Version: 1.0 From: Michal Skrivanek To: users at ovirt.org Subject: Re: [ovirt-users] Live migration without Shared Storage Date: Thu, 28 Dec 2017 20:46:31 +0100 Message-ID: <0F98AFC6-9ADA-4B3F-B290-E2711CA12E10@redhat.com> In-Reply-To: cbbc9363-ff57-c894-a523-fc56be50d3bd@upx.com --===============5889405895370801716== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable --Apple-Mail=3D_4A623026-A8B9-4200-9CB7-88012E5A0468 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=3Dutf-8 > On 28 Dec 2017, at 20:37, FERNANDO FREDIANI =3D wrote: >=3D20 > Are you talking about all kinds of Storage (iSCSI, FC, NFS and =3D Localstorage/POSIX) ? >=3D20 yes > Because I believe you may be able to specify the destination path on =3D the destination Host and when working with Localstorage/POSIX that may =3D be simpler. >=3D20 yes, it is indeed more simple, but still it=3DE2=3D80=3D99s not going to wo= rk =3D out of the box right now. It=3DE2=3D80=3D99s a non-trivial feature to do th= at =3D properly > Fernando >=3D20 > On 28/12/2017 17:32, Michal Skrivanek wrote: >>=3D20 >>=3D20 >>> On 28 Dec 2017, at 19:56, FERNANDO FREDIANI =3D > wrote: >>>=3D20 >>> Has anyone tried the command below under the hood between two oVirt =3D Node (in the same Datacenter or between two different (local) ones) ? =3D Does it work ? >>=3D20 >> no, it does not with ovirt. ovirt manages storage differently than =3D plain libvirt >>=3D20 >>> virsh migrate --live --persistent --undefinesource =3D --copy-storage-all \ >>> --verbose --desturi >>> This is such a fantastic features for certain scenarios that may =3D help a lot maintenance or even migration between hosts with Local =3D Storage to minimize Downtime and mainly all the hassle of having to =3D Poweroff a VM, Export to an Export Datastore, umount it, = =3D mount on the other Host/Datacenter, Import and Power On. >>>=3D20 >>> Thanks >>> Regards >>>=3D20 >>> Fernando >>>=3D20 >>> [1] Ref: =3D https://hgj.hu/live-migrating-a-virtual-machine-with-libvirt-without-a-sha= =3D red-storage/ =3D >>> _______________________________________________ >>> Users mailing list >>> Users(a)ovirt.org >>> http://lists.ovirt.org/mailman/listinfo/users =3D >>=3D20 >=3D20 --Apple-Mail=3D_4A623026-A8B9-4200-9CB7-88012E5A0468 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=3Dutf-8

On 28 Dec 2017, at 20:37, FERNANDO FREDIANI <fernando.frediani(a)upx.com> wrote:

=3D20 =3D20

Are =3D you talking about all kinds of Storage (iSCSI, FC, NFS and Localstorage/POSIX) =3D ?

yes

Because I believe you may b= e =3D able to specify the destination path on the destination Host and when working with Localstorage/POSIX that may be simpler.

yes, it is indeed = =3D more simple, but still it=3DE2=3D80=3D99s not going to work out of the box = =3D right now. It=3DE2=3D80=3D99s a non-trivial feature to do that properly

Ferna= ndo


On 28/12/2017 17:32, Michal Skrivanek wrote:


On 28 Dec 2017, at 19:56, FERNANDO FREDIANI =3D <fernando.frediani(a)upx.com> wrote:

Has anyone tried the command below under the hood between two oVirt Node (in the same Datacenter or between two different (local) ones) ? Does it work ?

no, it does not with ovirt. ovirt manages storage differently than plain libvirt

virsh migrate --live --persistent =3D
--undefinesource --copy-storage-all \
    --verbose --desturi <DESTINATION> =3D
<VM>
This is such a fantastic features for certain scenarios that may help a lot maintenance or even migration between hosts with Local Storage to minimize Downtime and mainly all the hassle of having to Poweroff a VM, Export to an Export Datastore, umount it, mount on the other Host/Datacenter, Import and Power On.

Thanks
Regards

Fernando

[1] Ref:
https://hgj.hu/live-migrating-a-virtual-machine-= w=3D ith-libvirt-without-a-shared-storage/
_______________________________________________
=3D Users mailing list
Users(a)ovirt.org
http://lists.ovirt= .=3D org/mailman/listinfo/users



=3D --Apple-Mail=3D_4A623026-A8B9-4200-9CB7-88012E5A0468-- --===============5889405895370801716== Content-Type: multipart/alternative MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="attachment.bin" Ci0tQXBwbGUtTWFpbD1fNEE2MjMwMjYtQThCOS00MjAwLTlDQjctODgwMTJFNUEwNDY4CkNvbnRl bnQtVHJhbnNmZXItRW5jb2Rpbmc6IHF1b3RlZC1wcmludGFibGUKQ29udGVudC1UeXBlOiB0ZXh0 L3BsYWluOwoJY2hhcnNldD11dGYtOAoKCgo+IE9uIDI4IERlYyAyMDE3LCBhdCAyMDozNywgRkVS TkFORE8gRlJFRElBTkkgPQo8ZmVybmFuZG8uZnJlZGlhbmlAdXB4LmNvbT4gd3JvdGU6Cj49MjAK PiBBcmUgeW91IHRhbGtpbmcgYWJvdXQgYWxsIGtpbmRzIG9mIFN0b3JhZ2UgKGlTQ1NJLCBGQywg TkZTIGFuZCA9CkxvY2Fsc3RvcmFnZS9QT1NJWCkgPwo+PTIwCnllcwoKPiBCZWNhdXNlIEkgYmVs aWV2ZSB5b3UgbWF5IGJlIGFibGUgdG8gc3BlY2lmeSB0aGUgZGVzdGluYXRpb24gcGF0aCBvbiA9 CnRoZSBkZXN0aW5hdGlvbiBIb3N0IGFuZCB3aGVuIHdvcmtpbmcgd2l0aCBMb2NhbHN0b3JhZ2Uv UE9TSVggdGhhdCBtYXkgPQpiZSBzaW1wbGVyLgo+PTIwCnllcywgaXQgaXMgaW5kZWVkIG1vcmUg c2ltcGxlLCBidXQgc3RpbGwgaXQ9RTI9ODA9OTlzIG5vdCBnb2luZyB0byB3b3JrID0Kb3V0IG9m IHRoZSBib3ggcmlnaHQgbm93LiBJdD1FMj04MD05OXMgYSBub24tdHJpdmlhbCBmZWF0dXJlIHRv IGRvIHRoYXQgPQpwcm9wZXJseQo+IEZlcm5hbmRvCj49MjAKPiBPbiAyOC8xMi8yMDE3IDE3OjMy LCBNaWNoYWwgU2tyaXZhbmVrIHdyb3RlOgo+Pj0yMAo+Pj0yMAo+Pj4gT24gMjggRGVjIDIwMTcs IGF0IDE5OjU2LCBGRVJOQU5ETyBGUkVESUFOSSA9CjxmZXJuYW5kby5mcmVkaWFuaUB1cHguY29t IDxtYWlsdG86ZmVybmFuZG8uZnJlZGlhbmlAdXB4LmNvbT4+IHdyb3RlOgo+Pj49MjAKPj4+IEhh cyBhbnlvbmUgdHJpZWQgdGhlIGNvbW1hbmQgYmVsb3cgdW5kZXIgdGhlIGhvb2QgYmV0d2VlbiB0 d28gb1ZpcnQgPQpOb2RlIChpbiB0aGUgc2FtZSBEYXRhY2VudGVyIG9yIGJldHdlZW4gdHdvIGRp ZmZlcmVudCAobG9jYWwpIG9uZXMpID8gPQpEb2VzIGl0IHdvcmsgPwo+Pj0yMAo+PiBubywgaXQg ZG9lcyBub3Qgd2l0aCBvdmlydC4gb3ZpcnQgbWFuYWdlcyBzdG9yYWdlIGRpZmZlcmVudGx5IHRo YW4gPQpwbGFpbiBsaWJ2aXJ0Cj4+PTIwCj4+PiB2aXJzaCBtaWdyYXRlIC0tbGl2ZSAtLXBlcnNp c3RlbnQgLS11bmRlZmluZXNvdXJjZSA9Ci0tY29weS1zdG9yYWdlLWFsbCBcCj4+PiAgICAgLS12 ZXJib3NlIC0tZGVzdHVyaSA8REVTVElOQVRJT04+IDxWTT4KPj4+IFRoaXMgaXMgc3VjaCBhIGZh bnRhc3RpYyBmZWF0dXJlcyBmb3IgY2VydGFpbiBzY2VuYXJpb3MgdGhhdCBtYXkgPQpoZWxwIGEg bG90IG1haW50ZW5hbmNlIG9yIGV2ZW4gbWlncmF0aW9uIGJldHdlZW4gaG9zdHMgd2l0aCBMb2Nh bCA9ClN0b3JhZ2UgdG8gbWluaW1pemUgRG93bnRpbWUgYW5kIG1haW5seSBhbGwgdGhlIGhhc3Ns ZSBvZiBoYXZpbmcgdG8gPQpQb3dlcm9mZiBhIFZNLCBFeHBvcnQgdG8gYW4gICAgICAgICAgICAg ICAgIEV4cG9ydCBEYXRhc3RvcmUsIHVtb3VudCBpdCwgPQptb3VudCBvbiB0aGUgb3RoZXIgSG9z dC9EYXRhY2VudGVyLCBJbXBvcnQgYW5kIFBvd2VyIE9uLgo+Pj49MjAKPj4+IFRoYW5rcwo+Pj4g UmVnYXJkcwo+Pj49MjAKPj4+IEZlcm5hbmRvCj4+Pj0yMAo+Pj4gWzFdIFJlZjogPQpodHRwczov L2hnai5odS9saXZlLW1pZ3JhdGluZy1hLXZpcnR1YWwtbWFjaGluZS13aXRoLWxpYnZpcnQtd2l0 aG91dC1hLXNoYT0KcmVkLXN0b3JhZ2UvID0KPGh0dHBzOi8vaGdqLmh1L2xpdmUtbWlncmF0aW5n LWEtdmlydHVhbC1tYWNoaW5lLXdpdGgtbGlidmlydC13aXRob3V0LWEtc2g9CmFyZWQtc3RvcmFn ZS8+Cj4+PiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+ Pj4gVXNlcnMgbWFpbGluZyBsaXN0Cj4+PiBVc2Vyc0BvdmlydC5vcmcgPG1haWx0bzpVc2Vyc0Bv dmlydC5vcmc+Cj4+PiBodHRwOi8vbGlzdHMub3ZpcnQub3JnL21haWxtYW4vbGlzdGluZm8vdXNl cnMgPQo8aHR0cDovL2xpc3RzLm92aXJ0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3VzZXJzPgo+Pj0y MAo+PTIwCgoKLS1BcHBsZS1NYWlsPV80QTYyMzAyNi1BOEI5LTQyMDAtOUNCNy04ODAxMkU1QTA0 NjgKQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogcXVvdGVkLXByaW50YWJsZQpDb250ZW50LVR5 cGU6IHRleHQvaHRtbDsKCWNoYXJzZXQ9dXRmLTgKCjxodG1sPjxoZWFkPjxtZXRhIGh0dHAtZXF1 aXY9M0QiQ29udGVudC1UeXBlIiBjb250ZW50PTNEInRleHQvaHRtbDsgPQpjaGFyc2V0PTNEdXRm LTgiPjwvaGVhZD48Ym9keSBzdHlsZT0zRCJ3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7ID0KLXdlYmtp dC1uYnNwLW1vZGU6IHNwYWNlOyBsaW5lLWJyZWFrOiBhZnRlci13aGl0ZS1zcGFjZTsiIGNsYXNz PTNEIiI+PGJyID0KY2xhc3M9M0QiIj48ZGl2PjxiciBjbGFzcz0zRCIiPjxibG9ja3F1b3RlIHR5 cGU9M0QiY2l0ZSIgY2xhc3M9M0QiIj48ZGl2ID0KY2xhc3M9M0QiIj5PbiAyOCBEZWMgMjAxNywg YXQgMjA6MzcsIEZFUk5BTkRPIEZSRURJQU5JICZsdDs8YSA9CmhyZWY9M0QibWFpbHRvOmZlcm5h bmRvLmZyZWRpYW5pQHVweC5jb20iID0KY2xhc3M9M0QiIj5mZXJuYW5kby5mcmVkaWFuaUB1cHgu Y29tPC9hPiZndDsgd3JvdGU6PC9kaXY+PGJyID0KY2xhc3M9M0QiQXBwbGUtaW50ZXJjaGFuZ2Ut bmV3bGluZSI+PGRpdiBjbGFzcz0zRCIiPgogPTIwCiAgICA8bWV0YSBodHRwLWVxdWl2PTNEIkNv bnRlbnQtVHlwZSIgY29udGVudD0zRCJ0ZXh0L2h0bWw7CiAgICAgIGNoYXJzZXQ9M0R3aW5kb3dz LTEyNTIiIGNsYXNzPTNEIiI+CiA9MjAKICA8ZGl2IGJnY29sb3I9M0QiI0ZGRkZGRiIgdGV4dD0z RCIjMDAwMDAwIiBjbGFzcz0zRCIiPjxwIGNsYXNzPTNEIiI+QXJlID0KeW91IHRhbGtpbmcgYWJv dXQgYWxsIGtpbmRzIG9mIFN0b3JhZ2UgKGlTQ1NJLCBGQywgTkZTIGFuZAogICAgICBMb2NhbHN0 b3JhZ2UvUE9TSVgpID0KPzwvcD48L2Rpdj48L2Rpdj48L2Jsb2NrcXVvdGU+eWVzPC9kaXY+PGRp dj48YnIgY2xhc3M9M0QiIj48YmxvY2txdW90ZSA9CnR5cGU9M0QiY2l0ZSIgY2xhc3M9M0QiIj48 ZGl2IGNsYXNzPTNEIiI+PGRpdiBiZ2NvbG9yPTNEIiNGRkZGRkYiID0KdGV4dD0zRCIjMDAwMDAw IiBjbGFzcz0zRCIiPjxwIGNsYXNzPTNEIiI+QmVjYXVzZSBJIGJlbGlldmUgeW91IG1heSBiZSA9 CmFibGUgdG8gc3BlY2lmeSB0aGUgZGVzdGluYXRpb24gcGF0aAogICAgICBvbiB0aGUgZGVzdGlu YXRpb24gSG9zdCBhbmQgd2hlbiB3b3JraW5nIHdpdGggTG9jYWxzdG9yYWdlL1BPU0lYCiAgICAg IHRoYXQgbWF5IGJlIHNpbXBsZXIuPC9wPjwvZGl2PjwvZGl2PjwvYmxvY2txdW90ZT55ZXMsIGl0 IGlzIGluZGVlZCA9Cm1vcmUgc2ltcGxlLCBidXQgc3RpbGwgaXQ9RTI9ODA9OTlzIG5vdCBnb2lu ZyB0byB3b3JrIG91dCBvZiB0aGUgYm94ID0KcmlnaHQgbm93LiBJdD1FMj04MD05OXMgYSBub24t dHJpdmlhbCBmZWF0dXJlIHRvIGRvIHRoYXQgcHJvcGVybHk8YnIgPQpjbGFzcz0zRCIiPjxibG9j a3F1b3RlIHR5cGU9M0QiY2l0ZSIgY2xhc3M9M0QiIj48ZGl2IGNsYXNzPTNEIiI+PGRpdiA9CmJn Y29sb3I9M0QiI0ZGRkZGRiIgdGV4dD0zRCIjMDAwMDAwIiBjbGFzcz0zRCIiPjxwIGNsYXNzPTNE IiI+RmVybmFuZG88YnIgPQpjbGFzcz0zRCIiPgogICAgPC9wPgogICAgPGJyIGNsYXNzPTNEIiI+ CiAgICA8ZGl2IGNsYXNzPTNEIm1vei1jaXRlLXByZWZpeCI+T24gMjgvMTIvMjAxNyAxNzozMiwg TWljaGFsIFNrcml2YW5lawogICAgICB3cm90ZTo8YnIgY2xhc3M9M0QiIj4KICAgIDwvZGl2Pgog ICAgPGJsb2NrcXVvdGUgdHlwZT0zRCJjaXRlIiA9CmNpdGU9M0QibWlkOkVFMURBQjA0LTVDRTkt NDdEMC1COTc5LTlCRTQwNDI1NEE4RUByZWRoYXQuY29tIiA9CmNsYXNzPTNEIiI+PGJyIGNsYXNz PTNEIiI+CiAgICAgIDxkaXYgY2xhc3M9M0QiIj48YnIgY2xhc3M9M0QiIj4KICAgICAgICA8Ymxv Y2txdW90ZSB0eXBlPTNEImNpdGUiIGNsYXNzPTNEIiI+CiAgICAgICAgICA8ZGl2IGNsYXNzPTNE IiI+T24gMjggRGVjIDIwMTcsIGF0IDE5OjU2LCBGRVJOQU5ETyBGUkVESUFOSSA9CiZsdDs8YSBo cmVmPTNEIm1haWx0bzpmZXJuYW5kby5mcmVkaWFuaUB1cHguY29tIiBjbGFzcz0zRCIiID0KbW96 LWRvLW5vdC1zZW5kPTNEInRydWUiPmZlcm5hbmRvLmZyZWRpYW5pQHVweC5jb208L2E+Jmd0Owog ICAgICAgICAgICB3cm90ZTo8L2Rpdj4KICAgICAgICAgIDxiciBjbGFzcz0zRCJBcHBsZS1pbnRl cmNoYW5nZS1uZXdsaW5lIj4KICAgICAgICAgIDxkaXYgY2xhc3M9M0QiIj4KICAgICAgICAgICAg PG1ldGEgaHR0cC1lcXVpdj0zRCJjb250ZW50LXR5cGUiIGNvbnRlbnQ9M0QidGV4dC9odG1sOwog ICAgICAgICAgICAgIGNoYXJzZXQ9M0R3aW5kb3dzLTEyNTIiIGNsYXNzPTNEIiI+CiAgICAgICAg ICAgIDxkaXYgYmdjb2xvcj0zRCIjRkZGRkZGIiB0ZXh0PTNEIiMwMDAwMDAiIGNsYXNzPTNEIiI+ IDxmb250ID0KY2xhc3M9M0QiIiBmYWNlPTNEImFyaWFsLCBoZWx2ZXRpY2EsIHNhbnMtc2VyaWYi PkhhcyBhbnlvbmUKICAgICAgICAgICAgICAgIHRyaWVkIHRoZSBjb21tYW5kIGJlbG93IHVuZGVy IHRoZSBob29kIGJldHdlZW4gdHdvIG9WaXJ0CiAgICAgICAgICAgICAgICBOb2RlIChpbiB0aGUg c2FtZSBEYXRhY2VudGVyIG9yIGJldHdlZW4gdHdvIGRpZmZlcmVudAogICAgICAgICAgICAgICAg KGxvY2FsKSBvbmVzKSA/IERvZXMgaXQgd29yayA/PC9mb250PjxiciBjbGFzcz0zRCIiPgogICAg ICAgICAgICA8L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvYmxvY2txdW90ZT4KICAg ICAgICA8ZGl2IGNsYXNzPTNEIiI+PGJyIGNsYXNzPTNEIiI+CiAgICAgICAgPC9kaXY+CiAgICAg ICAgbm8sIGl0IGRvZXMgbm90IHdpdGggb3ZpcnQuIG92aXJ0IG1hbmFnZXMgc3RvcmFnZSBkaWZm ZXJlbnRseQogICAgICAgIHRoYW4gcGxhaW4gbGlidmlydDwvZGl2PgogICAgICA8ZGl2IGNsYXNz PTNEIiI+PGJyIGNsYXNzPTNEIiI+CiAgICAgIDwvZGl2PgogICAgICA8ZGl2IGNsYXNzPTNEIiI+ CiAgICAgICAgPGJsb2NrcXVvdGUgdHlwZT0zRCJjaXRlIiBjbGFzcz0zRCIiPgogICAgICAgICAg PGRpdiBjbGFzcz0zRCIiPgogICAgICAgICAgICA8ZGl2IGJnY29sb3I9M0QiI0ZGRkZGRiIgdGV4 dD0zRCIjMDAwMDAwIiBjbGFzcz0zRCIiPgogICAgICAgICAgICAgIDxwcmUgY2xhc3M9M0QiIj52 aXJzaCBtaWdyYXRlIC0tbGl2ZSAtLXBlcnNpc3RlbnQgPQotLXVuZGVmaW5lc291cmNlIC0tY29w eS1zdG9yYWdlLWFsbCBcCiZuYnNwOyZuYnNwOyZuYnNwOyAtLXZlcmJvc2UgLS1kZXN0dXJpICZs dDtERVNUSU5BVElPTiZndDsgPQombHQ7Vk0mZ3Q7PC9wcmU+CiAgICAgICAgICAgICAgPGZvbnQg Y2xhc3M9M0QiIiBmYWNlPTNEImFyaWFsLCBoZWx2ZXRpY2EsID0Kc2Fucy1zZXJpZiI+VGhpcyBp cwogICAgICAgICAgICAgICAgc3VjaCBhIGZhbnRhc3RpYyBmZWF0dXJlcyBmb3IgY2VydGFpbiBz Y2VuYXJpb3MgdGhhdCBtYXkKICAgICAgICAgICAgICAgIGhlbHAgYSBsb3QgbWFpbnRlbmFuY2Ug b3IgZXZlbiBtaWdyYXRpb24gYmV0d2VlbiBob3N0cwogICAgICAgICAgICAgICAgd2l0aCBMb2Nh bCBTdG9yYWdlIHRvIG1pbmltaXplIERvd250aW1lIGFuZCBtYWlubHkgYWxsCiAgICAgICAgICAg ICAgICB0aGUgaGFzc2xlIG9mIGhhdmluZyB0byBQb3dlcm9mZiBhIFZNLCBFeHBvcnQgdG8gYW4K ICAgICAgICAgICAgICAgIEV4cG9ydCBEYXRhc3RvcmUsIHVtb3VudCBpdCwgbW91bnQgb24gdGhl IG90aGVyCiAgICAgICAgICAgICAgICBIb3N0L0RhdGFjZW50ZXIsIEltcG9ydCBhbmQgUG93ZXIg T24uPGJyIGNsYXNzPTNEIiI+CiAgICAgICAgICAgICAgICA8YnIgY2xhc3M9M0QiIj4KICAgICAg ICAgICAgICAgIFRoYW5rczxiciBjbGFzcz0zRCIiPgogICAgICAgICAgICAgICAgUmVnYXJkczxi ciBjbGFzcz0zRCIiPgogICAgICAgICAgICAgICAgPGJyIGNsYXNzPTNEIiI+CiAgICAgICAgICAg ICAgICBGZXJuYW5kbzxiciBjbGFzcz0zRCIiPgogICAgICAgICAgICAgICAgPGJyIGNsYXNzPTNE IiI+CiAgICAgICAgICAgICAgICBbMV0gUmVmOiA8L2ZvbnQ+PGZvbnQgY2xhc3M9M0QiIiBmYWNl PTNEImFyaWFsLCA9CmhlbHZldGljYSwKICAgICAgICAgICAgICAgIHNhbnMtc2VyaWYiPjxhIGNs YXNzPTNEIm1vei10eHQtbGluay1mcmVldGV4dCIgPQpocmVmPTNEImh0dHBzOi8vaGdqLmh1L2xp dmUtbWlncmF0aW5nLWEtdmlydHVhbC1tYWNoaW5lLXdpdGgtbGlidmlydC13aXRobz0KdXQtYS1z aGFyZWQtc3RvcmFnZS8iID0KbW96LWRvLW5vdC1zZW5kPTNEInRydWUiPmh0dHBzOi8vaGdqLmh1 L2xpdmUtbWlncmF0aW5nLWEtdmlydHVhbC1tYWNoaW5lLXc9Cml0aC1saWJ2aXJ0LXdpdGhvdXQt YS1zaGFyZWQtc3RvcmFnZS88L2E+PC9mb250PjxiciBjbGFzcz0zRCIiPgogICAgICAgICAgICA8 L2Rpdj4KICAgICAgICAgICAgX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX188YnIgY2xhc3M9M0QiIj49CgogICAgICAgICAgICBVc2VycyBtYWlsaW5nIGxpc3Q8 YnIgY2xhc3M9M0QiIj4KICAgICAgICAgICAgPGEgaHJlZj0zRCJtYWlsdG86VXNlcnNAb3ZpcnQu b3JnIiBjbGFzcz0zRCIiID0KbW96LWRvLW5vdC1zZW5kPTNEInRydWUiPlVzZXJzQG92aXJ0Lm9y ZzwvYT48YnIgY2xhc3M9M0QiIj4KICAgICAgICAgICAgPGEgY2xhc3M9M0QibW96LXR4dC1saW5r LWZyZWV0ZXh0IiA9CmhyZWY9M0QiaHR0cDovL2xpc3RzLm92aXJ0Lm9yZy9tYWlsbWFuL2xpc3Rp bmZvL3VzZXJzIj5odHRwOi8vbGlzdHMub3ZpcnQuPQpvcmcvbWFpbG1hbi9saXN0aW5mby91c2Vy czwvYT48YnIgY2xhc3M9M0QiIj4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvYmxvY2txdW90 ZT4KICAgICAgPC9kaXY+CiAgICAgIDxiciBjbGFzcz0zRCIiPgogICAgPC9ibG9ja3F1b3RlPgog ICAgPGJyIGNsYXNzPTNEIiI+CiAgPC9kaXY+Cgo8L2Rpdj48L2Jsb2NrcXVvdGU+PC9kaXY+PGJy IGNsYXNzPTNEIiI+PC9ib2R5PjwvaHRtbD49CgotLUFwcGxlLU1haWw9XzRBNjIzMDI2LUE4Qjkt NDIwMC05Q0I3LTg4MDEyRTVBMDQ2OC0tCg== --===============5889405895370801716==--