From dougsland at redhat.com Thu Jan 14 11:50:06 2016 Content-Type: multipart/mixed; boundary="===============5483094131380540980==" MIME-Version: 1.0 From: Douglas Schilling Landgraf To: devel at ovirt.org Subject: Re: [ovirt-devel] VARIANT_ID usage - with our without oVirt version? Date: Thu, 14 Jan 2016 11:50:04 -0500 Message-ID: <5697D1BC.7000309@redhat.com> In-Reply-To: CAE26aYfOY56znTbFEH8ucnqP9VTqeumc4zWz55LLe6k5YnMBNg@mail.gmail.com --===============5483094131380540980== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable This is a multi-part message in MIME format. --------------050306080607050408010004 Content-Type: text/plain; charset=3Dutf-8; format=3Dflowed Content-Transfer-Encoding: 7bit On 01/14/2016 08:26 AM, Moti Asayag wrote: > > On Wed, Jan 13, 2016 at 5:17 PM, Fabian Deutsch > wrote: > > Hey, > > we've now merged a patch [0] to use and populate the VARIANT and > VARIANT_ID fields on Node. > > Currently the value is something like "ovirt-node-$BRANCH", i.e. > "ovirt-node-master" or "ovirt-node-3.6". > > I'd like to question if we should include the oVirt version in the ID, > or if we should just use "ovirt-node" without the version. > > From my POV the variant is not depending on a specific version, that > is why I'd like to discuss it. > My point of view is that variant_id doesn't depend of specific version, = it only shows the 'flavor' of distro and may or may not include numbers as the link [1] = showed. One benefit to have the branding/ovirt release in variant id is that in = the new oVirt Node it uses Cockpit which reads /etc/os-release (ID + VARIANT_ID ) to show = to the users in the login page such data, i.e: "CentOS oVirt Node 3.6" Username: Password: > > +1 > I agree the variant-id should not be a version specific. It should = > only describe the flavour of the host. > I don't see why the engine should be aware of the specific version of = > it, especially since we'd like to have a unified process for all host = > types and furthermore for the same host type of different versions. I agree that Engine shouldn't care about a specific version at all but = probably VDSM will be sending /etc/os-release to Engine for displaying = data to the users. > > The oVirt version can still be retieved like on any other host i.e. > using rpm or maybe some file(?). > > > Resolving the supported version of the hypervisor should be done the = > same way as for any host by monitoring the capabilities as reported by = > VDSM. > > > - fabian > > -- > [0] > https://gerrit.ovirt.org/gitweb?p=3Dovirt-release.git;a=3Dblob;f=3Dov= irt-release-master/ovirt-release-master.spec.in;h=3D8690d39402221acac402a6f= 2f0c485571ad838fa;hb=3DHEAD#l140 > [1] http://www.freedesktop.org/software/systemd/man/os-release.html > > > > > -- = > Regards, > Moti --------------050306080607050408010004 Content-Type: text/html; charset=3Dutf-8 Content-Transfer-Encoding: 8bit

On 01/14/2016 08:26 AM, Moti Asayag wrote:

On Wed, Jan 13, 2016 at 5:17 PM, Fabian Deutsch <fdeutsch(a)redhat.com> wrote:
Hey,

we've now merged a patch [0] to use and populate the VARIANT and
VARIANT_ID fields on Node.

Currently the value is something like "ovirt-node-$BRANCH", i.e.
"ovirt-node-master" or "ovirt-node-3.6".

I'd like to question if we should include the oVirt version in the ID,
or if we should just use "ovirt-node" without the version.

From my POV the variant is not depending on a specific version, that
is why I'd like to discuss it.
My point of view is that variant_id doesn't depend of specific version, it only shows the
'flavor' of distro and may or may not include numbers as the link [1] showed.

One benefit to have the branding/ovirt release in variant id is that in the new oVirt Node
it uses Cockpit which reads /etc/os-release (ID + VARIANT_ID ) to show to the users in the login
page such data, i.e:

"CentOS oVirt Node 3.6"

Username:
Password:=C2=A0


+1
I agree the variant-id should not be a version specific. It should only describe the flavour of the host.
I don't see why the engine should be aware of the specific version of it, especially since we'd like to have a unified process for all host types and furthermore for the same host type of different versions.

I agree that Engine shouldn't care about a specific version at all but probably VDSM will be sending /etc/os-release to Engine for displaying data to the users.
=C2=A0

The oVirt version can still be retieved like on any other host i.e.
using rpm or maybe some file(?).

=C2=A0Resolving the supported version of the hypervisor should be done the same way as for any host by monitoring the capabilities as reported by VDSM.
=C2=A0

- fabian

--
[0] https://gerrit.ovirt.o= rg/gitweb?p=3Dovirt-release.git;a=3Dblob;f=3Dovirt-release-master/ovirt-rel= ease-master.spec.in;h=3D8690d39402221acac402a6f2f0c485571ad838fa;hb=3DHEAD#= l140
[1] http://www.freedesktop= .org/software/systemd/man/os-release.html



--
Regards,
Moti

--------------050306080607050408010004-- --===============5483094131380540980== Content-Type: multipart/alternative MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="attachment.bin" VGhpcyBpcyBhIG11bHRpLXBhcnQgbWVzc2FnZSBpbiBNSU1FIGZvcm1hdC4KLS0tLS0tLS0tLS0t LS0wNTAzMDYwODA2MDcwNTA0MDgwMTAwMDQKQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFy c2V0PXV0Zi04OyBmb3JtYXQ9Zmxvd2VkCkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDdiaXQK CgoKT24gMDEvMTQvMjAxNiAwODoyNiBBTSwgTW90aSBBc2F5YWcgd3JvdGU6Cj4KPiBPbiBXZWQs IEphbiAxMywgMjAxNiBhdCA1OjE3IFBNLCBGYWJpYW4gRGV1dHNjaCA8ZmRldXRzY2hAcmVkaGF0 LmNvbSAKPiA8bWFpbHRvOmZkZXV0c2NoQHJlZGhhdC5jb20+PiB3cm90ZToKPgo+ICAgICBIZXks Cj4KPiAgICAgd2UndmUgbm93IG1lcmdlZCBhIHBhdGNoIFswXSB0byB1c2UgYW5kIHBvcHVsYXRl IHRoZSBWQVJJQU5UIGFuZAo+ICAgICBWQVJJQU5UX0lEIGZpZWxkcyBvbiBOb2RlLgo+Cj4gICAg IEN1cnJlbnRseSB0aGUgdmFsdWUgaXMgc29tZXRoaW5nIGxpa2UgIm92aXJ0LW5vZGUtJEJSQU5D SCIsIGkuZS4KPiAgICAgIm92aXJ0LW5vZGUtbWFzdGVyIiBvciAib3ZpcnQtbm9kZS0zLjYiLgo+ Cj4gICAgIEknZCBsaWtlIHRvIHF1ZXN0aW9uIGlmIHdlIHNob3VsZCBpbmNsdWRlIHRoZSBvVmly dCB2ZXJzaW9uIGluIHRoZSBJRCwKPiAgICAgb3IgaWYgd2Ugc2hvdWxkIGp1c3QgdXNlICJvdmly dC1ub2RlIiB3aXRob3V0IHRoZSB2ZXJzaW9uLgo+Cj4gICAgIEZyb20gbXkgUE9WIHRoZSB2YXJp YW50IGlzIG5vdCBkZXBlbmRpbmcgb24gYSBzcGVjaWZpYyB2ZXJzaW9uLCB0aGF0Cj4gICAgIGlz IHdoeSBJJ2QgbGlrZSB0byBkaXNjdXNzIGl0Lgo+Ck15IHBvaW50IG9mIHZpZXcgaXMgdGhhdCB2 YXJpYW50X2lkIGRvZXNuJ3QgZGVwZW5kIG9mIHNwZWNpZmljIHZlcnNpb24sIAppdCBvbmx5IHNo b3dzIHRoZQonZmxhdm9yJyBvZiBkaXN0cm8gYW5kIG1heSBvciBtYXkgbm90IGluY2x1ZGUgbnVt YmVycyBhcyB0aGUgbGluayBbMV0gCnNob3dlZC4KCk9uZSBiZW5lZml0IHRvIGhhdmUgdGhlIGJy YW5kaW5nL292aXJ0IHJlbGVhc2UgaW4gdmFyaWFudCBpZCBpcyB0aGF0IGluIAp0aGUgbmV3IG9W aXJ0IE5vZGUKaXQgdXNlcyBDb2NrcGl0IHdoaWNoIHJlYWRzIC9ldGMvb3MtcmVsZWFzZSAoSUQg KyBWQVJJQU5UX0lEICkgdG8gc2hvdyAKdG8gdGhlIHVzZXJzIGluIHRoZSBsb2dpbgpwYWdlIHN1 Y2ggZGF0YSwgaS5lOgoKIkNlbnRPUyBvVmlydCBOb2RlIDMuNiIKClVzZXJuYW1lOgpQYXNzd29y ZDoKCj4KPiArMQo+IEkgYWdyZWUgdGhlIHZhcmlhbnQtaWQgc2hvdWxkIG5vdCBiZSBhIHZlcnNp b24gc3BlY2lmaWMuIEl0IHNob3VsZCAKPiBvbmx5IGRlc2NyaWJlIHRoZSBmbGF2b3VyIG9mIHRo ZSBob3N0Lgo+IEkgZG9uJ3Qgc2VlIHdoeSB0aGUgZW5naW5lIHNob3VsZCBiZSBhd2FyZSBvZiB0 aGUgc3BlY2lmaWMgdmVyc2lvbiBvZiAKPiBpdCwgZXNwZWNpYWxseSBzaW5jZSB3ZSdkIGxpa2Ug dG8gaGF2ZSBhIHVuaWZpZWQgcHJvY2VzcyBmb3IgYWxsIGhvc3QgCj4gdHlwZXMgYW5kIGZ1cnRo ZXJtb3JlIGZvciB0aGUgc2FtZSBob3N0IHR5cGUgb2YgZGlmZmVyZW50IHZlcnNpb25zLgoKSSBh Z3JlZSB0aGF0IEVuZ2luZSBzaG91bGRuJ3QgY2FyZSBhYm91dCBhIHNwZWNpZmljIHZlcnNpb24g YXQgYWxsIGJ1dCAKcHJvYmFibHkgVkRTTSB3aWxsIGJlIHNlbmRpbmcgL2V0Yy9vcy1yZWxlYXNl IHRvIEVuZ2luZSBmb3IgZGlzcGxheWluZyAKZGF0YSB0byB0aGUgdXNlcnMuCgo+Cj4gICAgIFRo ZSBvVmlydCB2ZXJzaW9uIGNhbiBzdGlsbCBiZSByZXRpZXZlZCBsaWtlIG9uIGFueSBvdGhlciBo b3N0IGkuZS4KPiAgICAgdXNpbmcgcnBtIG9yIG1heWJlIHNvbWUgZmlsZSg/KS4KPgo+Cj4gIFJl c29sdmluZyB0aGUgc3VwcG9ydGVkIHZlcnNpb24gb2YgdGhlIGh5cGVydmlzb3Igc2hvdWxkIGJl IGRvbmUgdGhlIAo+IHNhbWUgd2F5IGFzIGZvciBhbnkgaG9zdCBieSBtb25pdG9yaW5nIHRoZSBj YXBhYmlsaXRpZXMgYXMgcmVwb3J0ZWQgYnkgCj4gVkRTTS4KPgo+Cj4gICAgIC0gZmFiaWFuCj4K PiAgICAgLS0KPiAgICAgWzBdCj4gICAgIGh0dHBzOi8vZ2Vycml0Lm92aXJ0Lm9yZy9naXR3ZWI/ cD1vdmlydC1yZWxlYXNlLmdpdDthPWJsb2I7Zj1vdmlydC1yZWxlYXNlLW1hc3Rlci9vdmlydC1y ZWxlYXNlLW1hc3Rlci5zcGVjLmluO2g9ODY5MGQzOTQwMjIyMWFjYWM0MDJhNmYyZjBjNDg1NTcx YWQ4MzhmYTtoYj1IRUFEI2wxNDAKPiAgICAgWzFdIGh0dHA6Ly93d3cuZnJlZWRlc2t0b3Aub3Jn L3NvZnR3YXJlL3N5c3RlbWQvbWFuL29zLXJlbGVhc2UuaHRtbAo+Cj4KPgo+Cj4gLS0gCj4gUmVn YXJkcywKPiBNb3RpCgoKLS0tLS0tLS0tLS0tLS0wNTAzMDYwODA2MDcwNTA0MDgwMTAwMDQKQ29u dGVudC1UeXBlOiB0ZXh0L2h0bWw7IGNoYXJzZXQ9dXRmLTgKQ29udGVudC1UcmFuc2Zlci1FbmNv ZGluZzogOGJpdAoKPGh0bWw+CiAgPGhlYWQ+CiAgICA8bWV0YSBjb250ZW50PSJ0ZXh0L2h0bWw7 IGNoYXJzZXQ9dXRmLTgiIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSI+CiAgPC9oZWFkPgogIDxi b2R5IGJnY29sb3I9IiNGRkZGRkYiIHRleHQ9IiMwMDAwMDAiPgogICAgPGJyPgogICAgPGJyPgog ICAgPGRpdiBjbGFzcz0ibW96LWNpdGUtcHJlZml4Ij5PbiAwMS8xNC8yMDE2IDA4OjI2IEFNLCBN b3RpIEFzYXlhZwogICAgICB3cm90ZTo8YnI+CiAgICA8L2Rpdj4KICAgIDxibG9ja3F1b3RlCmNp dGU9Im1pZDpDQUUyNmFZZk9ZNTZ6blRiRkVIOHVjbnFQOVZUcWV1bWM0eld6NTVMTGU2azVZbk1C TmdAbWFpbC5nbWFpbC5jb20iCiAgICAgIHR5cGU9ImNpdGUiPgogICAgICA8ZGl2IGRpcj0ibHRy Ij4KICAgICAgICA8ZGl2IGNsYXNzPSJnbWFpbF9leHRyYSI+PGJyPgogICAgICAgICAgPGRpdiBj bGFzcz0iZ21haWxfcXVvdGUiPk9uIFdlZCwgSmFuIDEzLCAyMDE2IGF0IDU6MTcgUE0sCiAgICAg ICAgICAgIEZhYmlhbiBEZXV0c2NoIDxzcGFuIGRpcj0ibHRyIj4mbHQ7PGEKICAgICAgICAgICAg ICAgIG1vei1kby1ub3Qtc2VuZD0idHJ1ZSIgaHJlZj0ibWFpbHRvOmZkZXV0c2NoQHJlZGhhdC5j b20iCiAgICAgICAgICAgICAgICB0YXJnZXQ9Il9ibGFuayI+PGEgY2xhc3M9Im1vei10eHQtbGlu ay1hYmJyZXZpYXRlZCIgaHJlZj0ibWFpbHRvOmZkZXV0c2NoQHJlZGhhdC5jb20iPmZkZXV0c2No QHJlZGhhdC5jb208L2E+PC9hPiZndDs8L3NwYW4+CiAgICAgICAgICAgIHdyb3RlOjxicj4KICAg ICAgICAgICAgPGJsb2NrcXVvdGUgY2xhc3M9ImdtYWlsX3F1b3RlIiBzdHlsZT0ibWFyZ2luOjAg MCAwCiAgICAgICAgICAgICAgLjhleDtib3JkZXItbGVmdDoxcHggI2NjYyBzb2xpZDtwYWRkaW5n LWxlZnQ6MWV4Ij5IZXksPGJyPgogICAgICAgICAgICAgIDxicj4KICAgICAgICAgICAgICB3ZSd2 ZSBub3cgbWVyZ2VkIGEgcGF0Y2ggWzBdIHRvIHVzZSBhbmQgcG9wdWxhdGUgdGhlCiAgICAgICAg ICAgICAgVkFSSUFOVCBhbmQ8YnI+CiAgICAgICAgICAgICAgVkFSSUFOVF9JRCBmaWVsZHMgb24g Tm9kZS48YnI+CiAgICAgICAgICAgICAgPGJyPgogICAgICAgICAgICAgIEN1cnJlbnRseSB0aGUg dmFsdWUgaXMgc29tZXRoaW5nIGxpa2UKICAgICAgICAgICAgICAib3ZpcnQtbm9kZS0kQlJBTkNI IiwgaS5lLjxicj4KICAgICAgICAgICAgICAib3ZpcnQtbm9kZS1tYXN0ZXIiIG9yICJvdmlydC1u b2RlLTMuNiIuPGJyPgogICAgICAgICAgICAgIDxicj4KICAgICAgICAgICAgICBJJ2QgbGlrZSB0 byBxdWVzdGlvbiBpZiB3ZSBzaG91bGQgaW5jbHVkZSB0aGUgb1ZpcnQKICAgICAgICAgICAgICB2 ZXJzaW9uIGluIHRoZSBJRCw8YnI+CiAgICAgICAgICAgICAgb3IgaWYgd2Ugc2hvdWxkIGp1c3Qg dXNlICJvdmlydC1ub2RlIiB3aXRob3V0IHRoZSB2ZXJzaW9uLjxicj4KICAgICAgICAgICAgICA8 YnI+CiAgICAgICAgICAgICAgRnJvbSBteSBQT1YgdGhlIHZhcmlhbnQgaXMgbm90IGRlcGVuZGlu ZyBvbiBhIHNwZWNpZmljCiAgICAgICAgICAgICAgdmVyc2lvbiwgdGhhdDxicj4KICAgICAgICAg ICAgICBpcyB3aHkgSSdkIGxpa2UgdG8gZGlzY3VzcyBpdC48YnI+CiAgICAgICAgICAgIDwvYmxv Y2txdW90ZT4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAg IDwvYmxvY2txdW90ZT4KICAgIE15IHBvaW50IG9mIHZpZXcgaXMgdGhhdCB2YXJpYW50X2lkIGRv ZXNuJ3QgZGVwZW5kIG9mIHNwZWNpZmljCiAgICB2ZXJzaW9uLCBpdCBvbmx5IHNob3dzIHRoZSA8 YnI+CiAgICAnZmxhdm9yJyBvZiBkaXN0cm8gYW5kIG1heSBvciBtYXkgbm90IGluY2x1ZGUgbnVt YmVycyBhcyB0aGUgbGluawogICAgWzFdIHNob3dlZC4gPGJyPgogICAgPGJyPgogICAgT25lIGJl bmVmaXQgdG8gaGF2ZSB0aGUgYnJhbmRpbmcvb3ZpcnQgcmVsZWFzZSBpbiB2YXJpYW50IGlkIGlz IHRoYXQKICAgIGluIHRoZSBuZXcgb1ZpcnQgTm9kZTxicj4KICAgIGl0IHVzZXMgQ29ja3BpdCB3 aGljaCByZWFkcyAvZXRjL29zLXJlbGVhc2UgKElEICsgVkFSSUFOVF9JRCApIHRvCiAgICBzaG93 IHRvIHRoZSB1c2VycyBpbiB0aGUgbG9naW48YnI+CiAgICBwYWdlIHN1Y2ggZGF0YSwgaS5lOiA8 YnI+CiAgICA8YnI+CiAgICAiQ2VudE9TIG9WaXJ0IE5vZGUgMy42IiA8YnI+CiAgICA8YnI+CiAg ICBVc2VybmFtZTogPGJyPgogICAgUGFzc3dvcmQ6wqAgPGJyPgogICAgPGJyPgogICAgPGJsb2Nr cXVvdGUKY2l0ZT0ibWlkOkNBRTI2YVlmT1k1NnpuVGJGRUg4dWNucVA5VlRxZXVtYzR6V3o1NUxM ZTZrNVluTUJOZ0BtYWlsLmdtYWlsLmNvbSIKICAgICAgdHlwZT0iY2l0ZSI+CiAgICAgIDxkaXYg ZGlyPSJsdHIiPgogICAgICAgIDxkaXYgY2xhc3M9ImdtYWlsX2V4dHJhIj4KICAgICAgICAgIDxk aXYgY2xhc3M9ImdtYWlsX3F1b3RlIj4KICAgICAgICAgICAgPGRpdj48YnI+CiAgICAgICAgICAg ICAgKzE8YnI+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8ZGl2PkkgYWdyZWUgdGhl IHZhcmlhbnQtaWQgc2hvdWxkIG5vdCBiZSBhIHZlcnNpb24KICAgICAgICAgICAgICBzcGVjaWZp Yy4gSXQgc2hvdWxkIG9ubHkgZGVzY3JpYmUgdGhlIGZsYXZvdXIgb2YgdGhlIGhvc3QuPGJyPgog ICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdj5JIGRvbid0IHNlZSB3aHkgdGhlIGVu Z2luZSBzaG91bGQgYmUgYXdhcmUgb2YgdGhlCiAgICAgICAgICAgICAgc3BlY2lmaWMgdmVyc2lv biBvZiBpdCwgZXNwZWNpYWxseSBzaW5jZSB3ZSdkIGxpa2UgdG8gaGF2ZQogICAgICAgICAgICAg IGEgdW5pZmllZCBwcm9jZXNzIGZvciBhbGwgaG9zdCB0eXBlcyBhbmQgZnVydGhlcm1vcmUgZm9y CiAgICAgICAgICAgICAgdGhlIHNhbWUgaG9zdCB0eXBlIG9mIGRpZmZlcmVudCB2ZXJzaW9ucy48 YnI+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAg ICAgIDwvZGl2PgogICAgPC9ibG9ja3F1b3RlPgogICAgPGJyPgogICAgSSBhZ3JlZSB0aGF0IEVu Z2luZSBzaG91bGRuJ3QgY2FyZSBhYm91dCBhIHNwZWNpZmljIHZlcnNpb24gYXQgYWxsCiAgICBi dXQgcHJvYmFibHkgVkRTTSB3aWxsIGJlIHNlbmRpbmcgL2V0Yy9vcy1yZWxlYXNlIHRvIEVuZ2lu ZSBmb3IKICAgIGRpc3BsYXlpbmcgZGF0YSB0byB0aGUgdXNlcnMuPGJyPgogICAgwqA8YnI+CiAg ICA8YmxvY2txdW90ZQpjaXRlPSJtaWQ6Q0FFMjZhWWZPWTU2em5UYkZFSDh1Y25xUDlWVHFldW1j NHpXejU1TExlNms1WW5NQk5nQG1haWwuZ21haWwuY29tIgogICAgICB0eXBlPSJjaXRlIj4KICAg ICAgPGRpdiBkaXI9Imx0ciI+CiAgICAgICAgPGRpdiBjbGFzcz0iZ21haWxfZXh0cmEiPgogICAg ICAgICAgPGRpdiBjbGFzcz0iZ21haWxfcXVvdGUiPgogICAgICAgICAgICA8YmxvY2txdW90ZSBj bGFzcz0iZ21haWxfcXVvdGUiIHN0eWxlPSJtYXJnaW46MCAwIDAKICAgICAgICAgICAgICAuOGV4 O2JvcmRlci1sZWZ0OjFweCAjY2NjIHNvbGlkO3BhZGRpbmctbGVmdDoxZXgiPgogICAgICAgICAg ICAgIDxicj4KICAgICAgICAgICAgICBUaGUgb1ZpcnQgdmVyc2lvbiBjYW4gc3RpbGwgYmUgcmV0 aWV2ZWQgbGlrZSBvbiBhbnkgb3RoZXIKICAgICAgICAgICAgICBob3N0IGkuZS48YnI+CiAgICAg ICAgICAgICAgdXNpbmcgcnBtIG9yIG1heWJlIHNvbWUgZmlsZSg/KS48YnI+CiAgICAgICAgICAg IDwvYmxvY2txdW90ZT4KICAgICAgICAgICAgPGRpdj48YnI+CiAgICAgICAgICAgIDwvZGl2Pgog ICAgICAgICAgICA8ZGl2PsKgUmVzb2x2aW5nIHRoZSBzdXBwb3J0ZWQgdmVyc2lvbiBvZiB0aGUg aHlwZXJ2aXNvcgogICAgICAgICAgICAgIHNob3VsZCBiZSBkb25lIHRoZSBzYW1lIHdheSBhcyBm b3IgYW55IGhvc3QgYnkgbW9uaXRvcmluZwogICAgICAgICAgICAgIHRoZSBjYXBhYmlsaXRpZXMg YXMgcmVwb3J0ZWQgYnkgVkRTTS48YnI+CiAgICAgICAgICAgICAgwqA8YnI+CiAgICAgICAgICAg IDwvZGl2PgogICAgICAgICAgICA8YmxvY2txdW90ZSBjbGFzcz0iZ21haWxfcXVvdGUiIHN0eWxl PSJtYXJnaW46MCAwIDAKICAgICAgICAgICAgICAuOGV4O2JvcmRlci1sZWZ0OjFweCAjY2NjIHNv bGlkO3BhZGRpbmctbGVmdDoxZXgiPgogICAgICAgICAgICAgIDxicj4KICAgICAgICAgICAgICAt IGZhYmlhbjxicj4KICAgICAgICAgICAgICA8YnI+CiAgICAgICAgICAgICAgLS08YnI+CiAgICAg ICAgICAgICAgWzBdIDxhIG1vei1kby1ub3Qtc2VuZD0idHJ1ZSIKaHJlZj0iaHR0cHM6Ly9nZXJy aXQub3ZpcnQub3JnL2dpdHdlYj9wPW92aXJ0LXJlbGVhc2UuZ2l0O2E9YmxvYjtmPW92aXJ0LXJl bGVhc2UtbWFzdGVyL292aXJ0LXJlbGVhc2UtbWFzdGVyLnNwZWMuaW47aD04NjkwZDM5NDAyMjIx YWNhYzQwMmE2ZjJmMGM0ODU1NzFhZDgzOGZhO2hiPUhFQUQjbDE0MCIKICAgICAgICAgICAgICAg IHJlbD0ibm9yZWZlcnJlciIgdGFyZ2V0PSJfYmxhbmsiPmh0dHBzOi8vZ2Vycml0Lm92aXJ0Lm9y Zy9naXR3ZWI/cD1vdmlydC1yZWxlYXNlLmdpdDthPWJsb2I7Zj1vdmlydC1yZWxlYXNlLW1hc3Rl ci9vdmlydC1yZWxlYXNlLW1hc3Rlci5zcGVjLmluO2g9ODY5MGQzOTQwMjIyMWFjYWM0MDJhNmYy ZjBjNDg1NTcxYWQ4MzhmYTtoYj1IRUFEI2wxNDA8L2E+PGJyPgogICAgICAgICAgICAgIFsxXSA8 YSBtb3otZG8tbm90LXNlbmQ9InRydWUiCiAgICAgICAgICAgICAgICBocmVmPSJodHRwOi8vd3d3 LmZyZWVkZXNrdG9wLm9yZy9zb2Z0d2FyZS9zeXN0ZW1kL21hbi9vcy1yZWxlYXNlLmh0bWwiCiAg ICAgICAgICAgICAgICByZWw9Im5vcmVmZXJyZXIiIHRhcmdldD0iX2JsYW5rIj5odHRwOi8vd3d3 LmZyZWVkZXNrdG9wLm9yZy9zb2Z0d2FyZS9zeXN0ZW1kL21hbi9vcy1yZWxlYXNlLmh0bWw8L2E+ PGJyPgogICAgICAgICAgICA8L2Jsb2NrcXVvdGU+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAg IDxicj4KICAgICAgICAgIDxiciBjbGVhcj0iYWxsIj4KICAgICAgICAgIDxicj4KICAgICAgICAg IC0tIDxicj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImdtYWlsX3NpZ25hdHVyZSI+CiAgICAgICAg ICAgIDxkaXYgZGlyPSJsdHIiPgogICAgICAgICAgICAgIDxkaXY+UmVnYXJkcyw8YnI+CiAgICAg ICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgTW90aTxicj4KICAgICAgICAgICAgPC9kaXY+ CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICA8L2Jsb2Nr cXVvdGU+CiAgICA8YnI+CiAgPC9ib2R5Pgo8L2h0bWw+CgotLS0tLS0tLS0tLS0tLTA1MDMwNjA4 MDYwNzA1MDQwODAxMDAwNC0tCg== --===============5483094131380540980==--