From andy.michielsen at gmail.com Sat Mar 24 11:24:36 2018 Content-Type: multipart/mixed; boundary="===============8323827120425405496==" MIME-Version: 1.0 From: Andy Michielsen To: users at ovirt.org Subject: Re: [ovirt-users] Which hardware are you using for oVirt Date: Sat, 24 Mar 2018 12:24:32 +0100 Message-ID: <1701ED12-9ED4-46B9-96E5-1FD3E32419DD@gmail.com> In-Reply-To: cdca9ccd-8c15-1cdb-ead6-84567f226ea4@starlett.lv --===============8323827120425405496== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable --Apple-Mail-FF4BAD67-2D6B-4D37-B4DF-9283D336B1AF Content-Type: text/plain; charset=3Dutf-8 Content-Transfer-Encoding: quoted-printable Hello Andrei, Thank you very much for sharing info on your hardware setup. Very informati= v=3D e. At this moment I have my ovirt engine on our vmware environment which is fi= n=3D e for good backup and restore. I have 4 nodes running now all different in make and model with local stora= g=3D e and it works but lacks performance a bit. But I can get my hands on some old dell=3DE2=3D80=3D99s R415 with 96 Gb of = ram and=3D 2 quadcores and 6 x 1 Gb nic=3DE2=3D80=3D99s. They all come with 2 x 146 G= b 15000=3D rpm=3DE2=3D80=3D99s harddisks. This isn=3DE2=3D80=3D99t bad but I will add= more RAM for=3D starters. Also I would like to have some good redundant storage for this t= o=3D o and the servers have limited space to add that. Hopefully others will also share there setups and expirience like you did. Kind regards. > On 24 Mar 2018, at 10:35, Andrei Verovski wrote: >=3D20 > Hi, >=3D20 > HL ProLiant DL380, dual Xeon > 120 GB RAID L1 for system > 2 TB RAID L10 for VM disks > 5 VMs, 3 Linux, 2 Windows > Total CPU load most of the time is low, high level of activity related t= o=3D disk. > Host engine under KVM appliance on SuSE, can be easily moved, backed up, = c=3D opied, experimented with, etc. >=3D20 > You'll have to use servers with more RAM and storage than main. > More then one NIC required if some of your VMs are on different subnets, = e=3D .g. 1 in internal zone and 2nd on DMZ. > For your setup 10 GB NICs + L3 Switch for ovirtmgmt. >=3D20 > BTW, I would suggest to have several separate hardware RAIDs unless you h= a=3D ve SSD, otherwise limit of the disk system I/O will be a bottleneck. Consid= e=3D r SSD L1 RAID for heavy-loaded databases. >=3D20 > Please note many cheap SSDs do NOT work reliably with SAS controllers eve= n=3D in SATA mode. >=3D20 > For example, I supposed to use 2 x WD Green SSD configures as RAID L1 for= O=3D S.=3D20 > It was possible to install system, yet under heavy load simulated with io= z=3D one disk system freeze, rendering OS unbootable. > Same crash was experienced with 512GB KingFast SSD connected to broadcom/= A=3D MCC SAS RAID Card. >=3D20 >=3D20 >> On 03/24/2018 10:33 AM, Andy Michielsen wrote: >> Hi all, >>=3D20 >> Not sure if this is the place to be asking this but I was wondering whic= h=3D hardware you all are using and why in order for me to see what I would be = n=3D eeding. >>=3D20 >> I would like to set up a HA cluster consisting off 3 hosts to be able to= r=3D un 30 vm=3DE2=3D80=3D99s. >> The engine, I can run on an other server. The hosts can be fitted with t= h=3D e storage and share the space through glusterfs. I would think I will be ne= e=3D ding at least 3 nic=3DE2=3D80=3D99s but would be able to install ovn. (Are = 1gb nic=3D =3DE2=3D80=3D99s sufficient ?) >>=3D20 >> Any input you guys would like to share would be greatly appriciated. >>=3D20 >> Thanks, >> _______________________________________________ >> Users mailing list >> Users(a)ovirt.org >> http://lists.ovirt.org/mailman/listinfo/users >=3D20 --Apple-Mail-FF4BAD67-2D6B-4D37-B4DF-9283D336B1AF Content-Type: text/html; charset=3Dutf-8 Content-Transfer-Encoding: quoted-printable
Hello Andrei,
=
Thank you very much for sharing info on your hardware setup. Ve= r=3D y informative.

At this moment I have my ovirt engi= n=3D e on our vmware environment which is fine for good backup and restore.=3D

I have 4 nodes running now all different in make and mo= d=3D el with local storage and it works but lacks performance a bit.
<= b=3D r>
But I can get my hands on some old dell=3DE2=3D80=3D99s R415 w= ith 96 G=3D b of ram and 2 quadcores and 6 x 1 Gb nic=3DE2=3D80=3D99s. They all come wi= th 2 x 1=3D 46 Gb 15000 rpm=3DE2=3D80=3D99s harddisks. This isn=3DE2=3D80=3D99t bad but= I will add m=3D ore RAM for starters. Also I would like to have some good redundant storage= f=3D or this too and the servers have limited space to add that.

<= /=3D div>
Hopefully others will also share there setups and expirience like = y=3D ou did.

Kind regards.

On 24 Mar 2018= ,=3D at 10:35, Andrei Verovski <= andre=3D il1(a)starlett.lv> wrote:

<= div> =3D20 =3D20 =3D20
Hi,

HL ProLiant DL380, dual Xeon
120 GB RAID L1 for system
2 TB RAID L10 for VM disks
5 VMs, 3 Linux, 2 Windows
Total CPU load most of the time is  low, high level of activity related to disk.
Host engine under KVM appliance on SuSE, can be easily moved, backed up, copied, experimented with, etc.

You'll have to use servers with more RAM and storage than main.
More then one NIC required if some of your VMs are on different subnets, e.g. 1 in internal zone and 2nd on DMZ.
For your setup 10 GB NICs + L3 Switch for ovirtmgmt.

BTW, I would suggest to have several separate hardware RAIDs unless you have SSD, otherwise limit of the disk system I/O will be a bottleneck. Consider SSD L1 RAID for heavy-loaded databases.

Please note many cheap SSDs do NOT work reliably with SAS controllers even in SATA mode.

For example, I supposed to use 2 x WD Green SSD configures as RAID L1 for OS.
It was possible to install system, yet under heavy load simulated with iozone disk system freeze, rendering OS unbootable.
Same crash was experienced with 512GB KingFast SSD connected to broadcom/AMCC SAS RAID Card.


On 03/24/2018 10:33 AM, Andy Michielsen wrote:
Hi all,

Not sure if this is the place to be asking this but I was wondering which h=
a=3D
rdware you all are using and why in order for me to see what I would be nee=
d=3D
ing.

I would like to set up a HA cluster consisting off 3 hosts to be able to ru=
n=3D
 30 vm=3DE2=3D80=3D99s.
The engine, I can run on an other server. The hosts can be fitted with the =
s=3D
torage and share the space through glusterfs. I would think I will be needi=
n=3D
g at least 3 nic=3DE2=3D80=3D99s but would be able to install ovn. (Are 1gb=
 nic=3DE2=3D
=3D80=3D99s sufficient ?)

Any input you guys would like to share would be greatly appriciated.

Thanks,
_______________________________________________
Users mailing list
Users@=3D
ovirt.org
http://lists.ovirt.org/mailman/listinfo/users


=3D20
=3D --Apple-Mail-FF4BAD67-2D6B-4D37-B4DF-9283D336B1AF-- --===============8323827120425405496== Content-Type: multipart/alternative MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="attachment.bin" Ci0tQXBwbGUtTWFpbC1GRjRCQUQ2Ny0yRDZCLTREMzctQjRERi05MjgzRDMzNkIxQUYKQ29udGVu dC1UeXBlOiB0ZXh0L3BsYWluOwoJY2hhcnNldD11dGYtOApDb250ZW50LVRyYW5zZmVyLUVuY29k aW5nOiBxdW90ZWQtcHJpbnRhYmxlCgpIZWxsbyBBbmRyZWksCgpUaGFuayB5b3UgdmVyeSBtdWNo IGZvciBzaGFyaW5nIGluZm8gb24geW91ciBoYXJkd2FyZSBzZXR1cC4gVmVyeSBpbmZvcm1hdGl2 PQplLgoKQXQgdGhpcyBtb21lbnQgSSBoYXZlIG15IG92aXJ0IGVuZ2luZSBvbiBvdXIgdm13YXJl IGVudmlyb25tZW50IHdoaWNoIGlzIGZpbj0KZSBmb3IgZ29vZCBiYWNrdXAgYW5kIHJlc3RvcmUu CgpJIGhhdmUgNCBub2RlcyBydW5uaW5nIG5vdyBhbGwgZGlmZmVyZW50IGluIG1ha2UgYW5kIG1v ZGVsIHdpdGggbG9jYWwgc3RvcmFnPQplIGFuZCBpdCB3b3JrcyBidXQgbGFja3MgcGVyZm9ybWFu Y2UgYSBiaXQuCgpCdXQgSSBjYW4gZ2V0IG15IGhhbmRzIG9uIHNvbWUgb2xkIGRlbGw9RTI9ODA9 OTlzIFI0MTUgd2l0aCA5NiBHYiBvZiByYW0gYW5kPQogMiBxdWFkY29yZXMgYW5kIDYgeCAxIEdi IG5pYz1FMj04MD05OXMuIFRoZXkgYWxsIGNvbWUgd2l0aCAyIHggMTQ2IEdiIDE1MDAwPQogcnBt PUUyPTgwPTk5cyBoYXJkZGlza3MuIFRoaXMgaXNuPUUyPTgwPTk5dCBiYWQgYnV0IEkgd2lsbCBh ZGQgbW9yZSBSQU0gZm9yPQogc3RhcnRlcnMuIEFsc28gSSB3b3VsZCBsaWtlIHRvIGhhdmUgc29t ZSBnb29kIHJlZHVuZGFudCBzdG9yYWdlIGZvciB0aGlzIHRvPQpvIGFuZCB0aGUgc2VydmVycyBo YXZlIGxpbWl0ZWQgc3BhY2UgdG8gYWRkIHRoYXQuCgpIb3BlZnVsbHkgb3RoZXJzIHdpbGwgYWxz byBzaGFyZSB0aGVyZSBzZXR1cHMgYW5kIGV4cGlyaWVuY2UgbGlrZSB5b3UgZGlkLgoKS2luZCBy ZWdhcmRzLgoKPiBPbiAyNCBNYXIgMjAxOCwgYXQgMTA6MzUsIEFuZHJlaSBWZXJvdnNraSA8YW5k cmVpbDFAc3RhcmxldHQubHY+IHdyb3RlOgo+PTIwCj4gSGksCj49MjAKPiBITCBQcm9MaWFudCBE TDM4MCwgZHVhbCBYZW9uCj4gMTIwIEdCIFJBSUQgTDEgZm9yIHN5c3RlbQo+IDIgVEIgUkFJRCBM MTAgZm9yIFZNIGRpc2tzCj4gNSBWTXMsIDMgTGludXgsIDIgV2luZG93cwo+IFRvdGFsIENQVSBs b2FkIG1vc3Qgb2YgdGhlIHRpbWUgaXMgIGxvdywgaGlnaCBsZXZlbCBvZiBhY3Rpdml0eSByZWxh dGVkIHRvPQogZGlzay4KPiBIb3N0IGVuZ2luZSB1bmRlciBLVk0gYXBwbGlhbmNlIG9uIFN1U0Us IGNhbiBiZSBlYXNpbHkgbW92ZWQsIGJhY2tlZCB1cCwgYz0Kb3BpZWQsIGV4cGVyaW1lbnRlZCB3 aXRoLCBldGMuCj49MjAKPiBZb3UnbGwgaGF2ZSB0byB1c2Ugc2VydmVycyB3aXRoIG1vcmUgUkFN IGFuZCBzdG9yYWdlIHRoYW4gbWFpbi4KPiBNb3JlIHRoZW4gb25lIE5JQyByZXF1aXJlZCBpZiBz b21lIG9mIHlvdXIgVk1zIGFyZSBvbiBkaWZmZXJlbnQgc3VibmV0cywgZT0KLmcuIDEgaW4gaW50 ZXJuYWwgem9uZSBhbmQgMm5kIG9uIERNWi4KPiBGb3IgeW91ciBzZXR1cCAxMCBHQiBOSUNzICsg TDMgU3dpdGNoIGZvciBvdmlydG1nbXQuCj49MjAKPiBCVFcsIEkgd291bGQgc3VnZ2VzdCB0byBo YXZlIHNldmVyYWwgc2VwYXJhdGUgaGFyZHdhcmUgUkFJRHMgdW5sZXNzIHlvdSBoYT0KdmUgU1NE LCBvdGhlcndpc2UgbGltaXQgb2YgdGhlIGRpc2sgc3lzdGVtIEkvTyB3aWxsIGJlIGEgYm90dGxl bmVjay4gQ29uc2lkZT0KciBTU0QgTDEgUkFJRCBmb3IgaGVhdnktbG9hZGVkIGRhdGFiYXNlcy4K Pj0yMAo+IFBsZWFzZSBub3RlIG1hbnkgY2hlYXAgU1NEcyBkbyBOT1Qgd29yayByZWxpYWJseSB3 aXRoIFNBUyBjb250cm9sbGVycyBldmVuPQogaW4gU0FUQSBtb2RlLgo+PTIwCj4gRm9yIGV4YW1w bGUsIEkgc3VwcG9zZWQgdG8gdXNlIDIgeCBXRCBHcmVlbiBTU0QgY29uZmlndXJlcyBhcyBSQUlE IEwxIGZvciBPPQpTLj0yMAo+IEl0IHdhcyBwb3NzaWJsZSB0byBpbnN0YWxsIHN5c3RlbSwgeWV0 IHVuZGVyIGhlYXZ5IGxvYWQgc2ltdWxhdGVkIHdpdGggaW96PQpvbmUgZGlzayBzeXN0ZW0gZnJl ZXplLCByZW5kZXJpbmcgT1MgdW5ib290YWJsZS4KPiBTYW1lIGNyYXNoIHdhcyBleHBlcmllbmNl ZCB3aXRoIDUxMkdCIEtpbmdGYXN0IFNTRCBjb25uZWN0ZWQgdG8gYnJvYWRjb20vQT0KTUNDIFNB UyBSQUlEIENhcmQuCj49MjAKPj0yMAo+PiBPbiAwMy8yNC8yMDE4IDEwOjMzIEFNLCBBbmR5IE1p Y2hpZWxzZW4gd3JvdGU6Cj4+IEhpIGFsbCwKPj49MjAKPj4gTm90IHN1cmUgaWYgdGhpcyBpcyB0 aGUgcGxhY2UgdG8gYmUgYXNraW5nIHRoaXMgYnV0IEkgd2FzIHdvbmRlcmluZyB3aGljaD0KIGhh cmR3YXJlIHlvdSBhbGwgYXJlIHVzaW5nIGFuZCB3aHkgaW4gb3JkZXIgZm9yIG1lIHRvIHNlZSB3 aGF0IEkgd291bGQgYmUgbj0KZWVkaW5nLgo+Pj0yMAo+PiBJIHdvdWxkIGxpa2UgdG8gc2V0IHVw IGEgSEEgY2x1c3RlciBjb25zaXN0aW5nIG9mZiAzIGhvc3RzIHRvIGJlIGFibGUgdG8gcj0KdW4g MzAgdm09RTI9ODA9OTlzLgo+PiBUaGUgZW5naW5lLCBJIGNhbiBydW4gb24gYW4gb3RoZXIgc2Vy dmVyLiBUaGUgaG9zdHMgY2FuIGJlIGZpdHRlZCB3aXRoIHRoPQplIHN0b3JhZ2UgYW5kIHNoYXJl IHRoZSBzcGFjZSB0aHJvdWdoIGdsdXN0ZXJmcy4gSSB3b3VsZCB0aGluayBJIHdpbGwgYmUgbmVl PQpkaW5nIGF0IGxlYXN0IDMgbmljPUUyPTgwPTk5cyBidXQgd291bGQgYmUgYWJsZSB0byBpbnN0 YWxsIG92bi4gKEFyZSAxZ2IgbmljPQo9RTI9ODA9OTlzIHN1ZmZpY2llbnQgPykKPj49MjAKPj4g QW55IGlucHV0IHlvdSBndXlzIHdvdWxkIGxpa2UgdG8gc2hhcmUgd291bGQgYmUgZ3JlYXRseSBh cHByaWNpYXRlZC4KPj49MjAKPj4gVGhhbmtzLAo+PiBfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwo+PiBVc2VycyBtYWlsaW5nIGxpc3QKPj4gVXNlcnNAb3Zp cnQub3JnCj4+IGh0dHA6Ly9saXN0cy5vdmlydC5vcmcvbWFpbG1hbi9saXN0aW5mby91c2Vycwo+ PTIwCgotLUFwcGxlLU1haWwtRkY0QkFENjctMkQ2Qi00RDM3LUI0REYtOTI4M0QzMzZCMUFGCkNv bnRlbnQtVHlwZTogdGV4dC9odG1sOwoJY2hhcnNldD11dGYtOApDb250ZW50LVRyYW5zZmVyLUVu Y29kaW5nOiBxdW90ZWQtcHJpbnRhYmxlCgo8aHRtbD48aGVhZD48bWV0YSBodHRwLWVxdWl2PTNE ImNvbnRlbnQtdHlwZSIgY29udGVudD0zRCJ0ZXh0L2h0bWw7IGNoYXJzZXQ9M0Q9CnV0Zi04Ij48 L2hlYWQ+PGJvZHkgZGlyPTNEImF1dG8iPjxkaXY+PC9kaXY+PGRpdj5IZWxsbyBBbmRyZWksPC9k aXY+PGRpdj48YnI9Cj48L2Rpdj48ZGl2PlRoYW5rIHlvdSB2ZXJ5IG11Y2ggZm9yIHNoYXJpbmcg aW5mbyBvbiB5b3VyIGhhcmR3YXJlIHNldHVwLiBWZXI9CnkgaW5mb3JtYXRpdmUuPC9kaXY+PGRp dj48YnI+PC9kaXY+PGRpdj5BdCB0aGlzIG1vbWVudCBJIGhhdmUgbXkgb3ZpcnQgZW5naW49CmUg b24gb3VyIHZtd2FyZSBlbnZpcm9ubWVudCB3aGljaCBpcyBmaW5lIGZvciBnb29kIGJhY2t1cCBh bmQgcmVzdG9yZS48L2Rpdj49CjxkaXY+PGJyPjwvZGl2PjxkaXY+SSBoYXZlIDQgbm9kZXMgcnVu bmluZyBub3cgYWxsIGRpZmZlcmVudCBpbiBtYWtlIGFuZCBtb2Q9CmVsIHdpdGggbG9jYWwgc3Rv cmFnZSBhbmQgaXQgd29ya3MgYnV0IGxhY2tzIHBlcmZvcm1hbmNlIGEgYml0LjwvZGl2PjxkaXY+ PGI9CnI+PC9kaXY+PGRpdj5CdXQgSSBjYW4gZ2V0IG15IGhhbmRzIG9uIHNvbWUgb2xkIGRlbGw9 RTI9ODA9OTlzIFI0MTUgd2l0aCA5NiBHPQpiIG9mIHJhbSBhbmQgMiBxdWFkY29yZXMgYW5kIDYg eCAxIEdiIG5pYz1FMj04MD05OXMuIFRoZXkgYWxsIGNvbWUgd2l0aCAyIHggMT0KNDYgR2IgMTUw MDAgcnBtPUUyPTgwPTk5cyBoYXJkZGlza3MuIFRoaXMgaXNuPUUyPTgwPTk5dCBiYWQgYnV0IEkg d2lsbCBhZGQgbT0Kb3JlIFJBTSBmb3Igc3RhcnRlcnMuIEFsc28gSSB3b3VsZCBsaWtlIHRvIGhh dmUgc29tZSBnb29kIHJlZHVuZGFudCBzdG9yYWdlIGY9Cm9yIHRoaXMgdG9vIGFuZCB0aGUgc2Vy dmVycyBoYXZlIGxpbWl0ZWQgc3BhY2UgdG8gYWRkIHRoYXQuPC9kaXY+PGRpdj48YnI+PC89CmRp dj48ZGl2PkhvcGVmdWxseSBvdGhlcnMgd2lsbCBhbHNvIHNoYXJlIHRoZXJlIHNldHVwcyBhbmQg ZXhwaXJpZW5jZSBsaWtlIHk9Cm91IGRpZC48L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2PktpbmQg cmVnYXJkcy48L2Rpdj48ZGl2Pjxicj5PbiAyNCBNYXIgMjAxOCw9CiBhdCAxMDozNSwgQW5kcmVp IFZlcm92c2tpICZsdDs8YSBocmVmPTNEIm1haWx0bzphbmRyZWlsMUBzdGFybGV0dC5sdiI+YW5k cmU9CmlsMUBzdGFybGV0dC5sdjwvYT4mZ3Q7IHdyb3RlOjxicj48YnI+PC9kaXY+PGJsb2NrcXVv dGUgdHlwZT0zRCJjaXRlIj48ZGl2PgogPTIwCiAgICA8bWV0YSBodHRwLWVxdWl2PTNEIkNvbnRl bnQtVHlwZSIgY29udGVudD0zRCJ0ZXh0L2h0bWw7IGNoYXJzZXQ9M0R1dGYtOCI9Cj4KID0yMAog PTIwCiAgICA8ZGl2IGNsYXNzPTNEIm1vei1jaXRlLXByZWZpeCI+SGksPGJyPgogICAgICA8YnI+ CiAgICAgIEhMIFByb0xpYW50IERMMzgwLCBkdWFsIFhlb248YnI+CiAgICAgIDEyMCBHQiBSQUlE IEwxIGZvciBzeXN0ZW08YnI+CiAgICAgIDIgVEIgUkFJRCBMMTAgZm9yIFZNIGRpc2tzPGJyPgog ICAgICA1IFZNcywgMyBMaW51eCwgMiBXaW5kb3dzPGJyPgogICAgICBUb3RhbCBDUFUgbG9hZCBt b3N0IG9mIHRoZSB0aW1lIGlzJm5ic3A7IGxvdywgaGlnaCBsZXZlbCBvZiBhY3Rpdml0eQogICAg ICByZWxhdGVkIHRvIGRpc2suPGJyPgogICAgICBIb3N0IGVuZ2luZSB1bmRlciBLVk0gYXBwbGlh bmNlIG9uIFN1U0UsIGNhbiBiZSBlYXNpbHkgbW92ZWQsCiAgICAgIGJhY2tlZCB1cCwgY29waWVk LCBleHBlcmltZW50ZWQgd2l0aCwgZXRjLjxicj4KICAgICAgPGJyPgogICAgICBZb3UnbGwgaGF2 ZSB0byB1c2Ugc2VydmVycyB3aXRoIG1vcmUgUkFNIGFuZCBzdG9yYWdlIHRoYW4gbWFpbi48YnI+ CiAgICAgIE1vcmUgdGhlbiBvbmUgTklDIHJlcXVpcmVkIGlmIHNvbWUgb2YgeW91ciBWTXMgYXJl IG9uIGRpZmZlcmVudAogICAgICBzdWJuZXRzLCBlLmcuIDEgaW4gaW50ZXJuYWwgem9uZSBhbmQg Mm5kIG9uIERNWi48YnI+CiAgICAgIEZvciB5b3VyIHNldHVwIDEwIEdCIE5JQ3MgKyBMMyBTd2l0 Y2ggZm9yIG92aXJ0bWdtdC48YnI+CiAgICAgIDxicj4KICAgICAgQlRXLCBJIHdvdWxkIHN1Z2dl c3QgdG8gaGF2ZSBzZXZlcmFsIHNlcGFyYXRlIGhhcmR3YXJlIFJBSURzCiAgICAgIHVubGVzcyB5 b3UgaGF2ZSBTU0QsIG90aGVyd2lzZSBsaW1pdCBvZiB0aGUgZGlzayBzeXN0ZW0gSS9PIHdpbGwK ICAgICAgYmUgYSBib3R0bGVuZWNrLiBDb25zaWRlciBTU0QgTDEgUkFJRCBmb3IgaGVhdnktbG9h ZGVkIGRhdGFiYXNlcy48YnI+CiAgICAgIDxicj4KICAgICAgPGZvbnQgY29sb3I9M0QiIzk5MDAw MCI+PGI+UGxlYXNlIG5vdGUgbWFueSBjaGVhcCBTU0RzIGRvIE5PVCB3b3JrCiAgICAgICAgICBy ZWxpYWJseSB3aXRoIFNBUyBjb250cm9sbGVycyBldmVuIGluIFNBVEEgbW9kZTwvYj4uPC9mb250 Pjxicj4KICAgICAgPGJyPgogICAgICBGb3IgZXhhbXBsZSwgSSBzdXBwb3NlZCB0byB1c2UgMiB4 IFdEIEdyZWVuIFNTRCBjb25maWd1cmVzIGFzIFJBSUQKICAgICAgTDEgZm9yIE9TLiA8YnI+CiAg ICAgIEl0IHdhcyBwb3NzaWJsZSB0byBpbnN0YWxsIHN5c3RlbSwgeWV0IHVuZGVyIGhlYXZ5IGxv YWQgc2ltdWxhdGVkCiAgICAgIHdpdGggaW96b25lIGRpc2sgc3lzdGVtIGZyZWV6ZSwgcmVuZGVy aW5nIE9TIHVuYm9vdGFibGUuPGJyPgogICAgICBTYW1lIGNyYXNoIHdhcyBleHBlcmllbmNlZCB3 aXRoIDUxMkdCIEtpbmdGYXN0IFNTRCBjb25uZWN0ZWQgdG8KICAgICAgYnJvYWRjb20vQU1DQyBT QVMgUkFJRCBDYXJkLjxicj4KICAgICAgPGJyPgogICAgICA8YnI+CiAgICAgIE9uIDAzLzI0LzIw MTggMTA6MzMgQU0sIEFuZHkgTWljaGllbHNlbiB3cm90ZTo8YnI+CiAgICA8L2Rpdj4KICAgIDxi bG9ja3F1b3RlIHR5cGU9M0QiY2l0ZSIgY2l0ZT0zRCJtaWQ6ODE1OTg3QjUtMzFEQS00MzE2LTgw OUQtQTAzMzYzQTFFMz0KQzNAZ21haWwuY29tIj4KICAgICAgPHByZSB3cmFwPTNEIiI+SGkgYWxs LAoKTm90IHN1cmUgaWYgdGhpcyBpcyB0aGUgcGxhY2UgdG8gYmUgYXNraW5nIHRoaXMgYnV0IEkg d2FzIHdvbmRlcmluZyB3aGljaCBoYT0KcmR3YXJlIHlvdSBhbGwgYXJlIHVzaW5nIGFuZCB3aHkg aW4gb3JkZXIgZm9yIG1lIHRvIHNlZSB3aGF0IEkgd291bGQgYmUgbmVlZD0KaW5nLgoKSSB3b3Vs ZCBsaWtlIHRvIHNldCB1cCBhIEhBIGNsdXN0ZXIgY29uc2lzdGluZyBvZmYgMyBob3N0cyB0byBi ZSBhYmxlIHRvIHJ1bj0KIDMwIHZtPUUyPTgwPTk5cy4KVGhlIGVuZ2luZSwgSSBjYW4gcnVuIG9u IGFuIG90aGVyIHNlcnZlci4gVGhlIGhvc3RzIGNhbiBiZSBmaXR0ZWQgd2l0aCB0aGUgcz0KdG9y YWdlIGFuZCBzaGFyZSB0aGUgc3BhY2UgdGhyb3VnaCBnbHVzdGVyZnMuIEkgd291bGQgdGhpbmsg SSB3aWxsIGJlIG5lZWRpbj0KZyBhdCBsZWFzdCAzIG5pYz1FMj04MD05OXMgYnV0IHdvdWxkIGJl IGFibGUgdG8gaW5zdGFsbCBvdm4uIChBcmUgMWdiIG5pYz1FMj0KPTgwPTk5cyBzdWZmaWNpZW50 ID8pCgpBbnkgaW5wdXQgeW91IGd1eXMgd291bGQgbGlrZSB0byBzaGFyZSB3b3VsZCBiZSBncmVh dGx5IGFwcHJpY2lhdGVkLgoKVGhhbmtzLApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpVc2VycyBtYWlsaW5nIGxpc3QKPGEgY2xhc3M9M0QibW96LXR4dC1s aW5rLWFiYnJldmlhdGVkIiBocmVmPTNEIm1haWx0bzpVc2Vyc0BvdmlydC5vcmciPlVzZXJzQD0K b3ZpcnQub3JnPC9hPgo8YSBjbGFzcz0zRCJtb3otdHh0LWxpbmstZnJlZXRleHQiIGhyZWY9M0Qi aHR0cDovL2xpc3RzLm92aXJ0Lm9yZy9tYWlsbWFuL2xpPQpzdGluZm8vdXNlcnMiPmh0dHA6Ly9s aXN0cy5vdmlydC5vcmcvbWFpbG1hbi9saXN0aW5mby91c2VyczwvYT4KPC9wcmU+CiAgICA8L2Js b2NrcXVvdGU+CiAgICA8cD48YnI+CiAgICA8L3A+CiA9MjAKCjwvZGl2PjwvYmxvY2txdW90ZT48 L2JvZHk+PC9odG1sPj0KCi0tQXBwbGUtTWFpbC1GRjRCQUQ2Ny0yRDZCLTREMzctQjRERi05Mjgz RDMzNkIxQUYtLQo= --===============8323827120425405496==--