
This is a cryptographically signed message in MIME format. --------------ms050302080405030009040507 Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: quoted-printable Hello,
=20 If you use Gluster as FUSE mount it's always slower than you expect it to be. If you want to get better performance out of your oVirt/Gluster storage= , try the following:=C2=A0 =20 - create a Linux VM in your oVirt environment, assign 4/8/12 virtual disks (Virtual disks are located on your Gluster storage volume). - Boot/configure the VM, then use LVM to create VG/LV with 4 stripes (lvcreate -i 4) and use all 4/8/12 virtual disks as PVS. - then install NFS server and export LV you created in previous step, use the NFS export as export domain in oVirt/RHEV. =20 You should get wire speed when you use multiple stripes on Gluster storage, FUSE mount on oVirt host will fan out requests to all 4 server= s. Gluster is very good at distributed/parallel workloads, but when you us= e direct Gluster FUSE mount for Export domain you only have one data stream, which is fragmented even more my multiple writes/reads that Gluster needs to do to save your data on all member servers.
=20 =20 =20 On Mon, Nov 27, 2017 at 8:41 PM, Donny Davis <donny@fortnebula.com <mailto:donny@fortnebula.com>> wrote: =20 What about mounting over nfs instead of the fuse client. Or maybe libgfapi. Is that available for export domains =20 On Fri, Nov 24, 2017 at 3:48 AM Ji=C5=99=C3=AD Sl=C3=A9=C5=BEka <ji= ri.slezka@slu.cz <mailto:jiri.slezka@slu.cz>> wrote: =20 On 11/24/2017 06:41 AM, Sahina Bose wrote: > > > On Thu, Nov 23, 2017 at 4:56 PM, Ji=C5=99=C3=AD Sl=C3=A9=C5=BE= ka <jiri.slezka@slu.cz <mailto:jiri.slezka@slu.cz> > <mailto:jiri.slezka@slu.cz <mailto:jiri.slezka@slu.cz>>> wrot= e: > >=C2=A0 =C2=A0 =C2=A0Hi, > >=C2=A0 =C2=A0 =C2=A0On 11/22/2017 07:30 PM, Nir Soffer wrote: >=C2=A0 =C2=A0 =C2=A0> On Mon, Nov 20, 2017 at 5:22 PM Ji=C5=99= =C3=AD Sl=C3=A9=C5=BEka <jiri.slezka@slu.cz <mailto:jiri.slezka@slu.cz> <mailto:jiri.slezka@slu.cz <mailto:jiri.slezka@slu.cz>> >=C2=A0 =C2=A0 =C2=A0> <mailto:jiri.slezka@slu.cz <mailto:jiri.= slezka@slu.cz> <mailto:jiri.slezka@slu.cz <mailto:jiri.slezka@slu.cz>>>> wrote= : >=C2=A0 =C2=A0 =C2=A0> >=C2=A0 =C2=A0 =C2=A0>=C2=A0 =C2=A0 =C2=A0Hi, >=C2=A0 =C2=A0 =C2=A0> >=C2=A0 =C2=A0 =C2=A0>=C2=A0 =C2=A0 =C2=A0I am trying realize w= hy is exporting of vm to export storage on >=C2=A0 =C2=A0 =C2=A0>=C2=A0 =C2=A0 =C2=A0glusterfs such slow. >=C2=A0 =C2=A0 =C2=A0> >=C2=A0 =C2=A0 =C2=A0>=C2=A0 =C2=A0 =C2=A0I am using oVirt and = RHV, both instalations on version 4.1.7. >=C2=A0 =C2=A0 =C2=A0> >=C2=A0 =C2=A0 =C2=A0>=C2=A0 =C2=A0 =C2=A0Hosts have dedicated = nics for rhevm network - 1gbps, data >=C2=A0 =C2=A0 =C2=A0storage itself >=C2=A0 =C2=A0 =C2=A0>=C2=A0 =C2=A0 =C2=A0is on FC. >=C2=A0 =C2=A0 =C2=A0> >=C2=A0 =C2=A0 =C2=A0>=C2=A0 =C2=A0 =C2=A0GlusterFS cluster liv= es separate on 4 dedicated hosts. It has >=C2=A0 =C2=A0 =C2=A0slow disks >=C2=A0 =C2=A0 =C2=A0>=C2=A0 =C2=A0 =C2=A0but I can achieve abo= ut 200-400mbit throughput in other >=C2=A0 =C2=A0 =C2=A0applications (we >=C2=A0 =C2=A0 =C2=A0>=C2=A0 =C2=A0 =C2=A0are using it for "col= d" data, backups mostly). >=C2=A0 =C2=A0 =C2=A0> >=C2=A0 =C2=A0 =C2=A0>=C2=A0 =C2=A0 =C2=A0I am using this glust= erfs cluster as backend for export >=C2=A0 =C2=A0 =C2=A0storage. When I >=C2=A0 =C2=A0 =C2=A0>=C2=A0 =C2=A0 =C2=A0am exporting vm I can= see only about 60-80mbit throughput. >=C2=A0 =C2=A0 =C2=A0> >=C2=A0 =C2=A0 =C2=A0>=C2=A0 =C2=A0 =C2=A0What could be the bot= tleneck here? >=C2=A0 =C2=A0 =C2=A0> >=C2=A0 =C2=A0 =C2=A0>=C2=A0 =C2=A0 =C2=A0Could it be qemu-img = utility? >=C2=A0 =C2=A0 =C2=A0> >=C2=A0 =C2=A0 =C2=A0>=C2=A0 =C2=A0 =C2=A0vdsm=C2=A0 =C2=A0 =C2= =A0 97739=C2=A0 0.3=C2=A0 0.0 354212 29148 ?=C2=A0 =C2=A0 =C2=A0 =C2=A0 S= <l=C2=A0 15:43=C2=A0 =C2=A00:06 >=C2=A0 =C2=A0 =C2=A0>=C2=A0 =C2=A0 =C2=A0/usr/bin/qemu-img con= vert -p -t none -T none -f raw >=C2=A0 =C2=A0 =C2=A0>=C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0=C2=A0/rhev/data-center/2ff6d0ee-a10b-473d-b77c-be9149945= f5f/ff3cd56a-1005-4426-8137-8f422c0b47c1/images/ba42cbcc-c068-4df8-af3d-0= 0f2077b1e27/c57acd5f-d6cf-48cc-ad0c-4a7d979c0c1e >=C2=A0 =C2=A0 =C2=A0>=C2=A0 =C2=A0 =C2=A0-O raw >=C2=A0 =C2=A0 =C2=A0>=C2=A0 =C2=A0 >=C2=A0 =C2=A0 =C2=A0=C2=A0/rhev/data-center/mnt/glusterSD/10.20.30.41:_rhv__e= xport/81094499-a392-4ea2-b081-7c6288fbb636/images/ba42cbcc-c068-4df8-af3d= -00f2077b1e27/c57acd5f-d6cf-48cc-ad0c-4a7d979c0c1e >=C2=A0 =C2=A0 =C2=A0> >=C2=A0 =C2=A0 =C2=A0>=C2=A0 =C2=A0 =C2=A0Any idea how to make = it work faster or what throughput should I >=C2=A0 =C2=A0 =C2=A0>=C2=A0 =C2=A0 =C2=A0expected? >=C2=A0 =C2=A0 =C2=A0> >=C2=A0 =C2=A0 =C2=A0> >=C2=A0 =C2=A0 =C2=A0> gluster storage operations are using fus= e mount - so every write: >=C2=A0 =C2=A0 =C2=A0> - travel to the kernel >=C2=A0 =C2=A0 =C2=A0> - travel back to the gluster fuse helper=
Thanks for explanation, it is an interesting solution. Cheers, Jiri process
>=C2=A0 =C2=A0 =C2=A0> - travel to all 3 replicas - replication=
is done on
client side >=C2=A0 =C2=A0 =C2=A0> - return to kernel when all writes succe=
eded
>=C2=A0 =C2=A0 =C2=A0> - return to caller >=C2=A0 =C2=A0 =C2=A0> >=C2=A0 =C2=A0 =C2=A0> So gluster will never set any speed reco=
rd.
>=C2=A0 =C2=A0 =C2=A0> >=C2=A0 =C2=A0 =C2=A0> Additionally, you are copying from raw l=
v on FC -
qemu-img cannot do >=C2=A0 =C2=A0 =C2=A0> anything >=C2=A0 =C2=A0 =C2=A0> smart and avoid copying unused clusters.=
Instead if copies
>=C2=A0 =C2=A0 =C2=A0gigabytes of >=C2=A0 =C2=A0 =C2=A0> zeros >=C2=A0 =C2=A0 =C2=A0> from FC. > >=C2=A0 =C2=A0 =C2=A0ok, it does make sense > >=C2=A0 =C2=A0 =C2=A0> However 7.5-10 MiB/s sounds too slow. >=C2=A0 =C2=A0 =C2=A0> >=C2=A0 =C2=A0 =C2=A0> I would try to test with dd - how much t=
ime it takes to copy
>=C2=A0 =C2=A0 =C2=A0> the same image from FC to your gluster s=
torage?
>=C2=A0 =C2=A0 =C2=A0> >=C2=A0 =C2=A0 =C2=A0> dd >=C2=A0 =C2=A0 =C2=A0> if=3D/rhev/data-center/2ff6d0ee-a10b-473d-b77c-be9149945f5f/ff3=
cd56a-1005-4426-8137-8f422c0b47c1/images/ba42cbcc-c068-4df8-af3d-00f2077b= 1e27/c57acd5f-d6cf-48cc-ad0c-4a7d979c0c1e
>=C2=A0 =C2=A0 =C2=A0> of=3D/rhev/data-center/mnt/glusterSD/10.20.30.41:_rhv__export/8=
1094499-a392-4ea2-b081-7c6288fbb636/__test__
>=C2=A0 =C2=A0 =C2=A0> bs=3D8M oflag=3Ddirect status=3Dprogress=
> >=C2=A0 =C2=A0 =C2=A0unfrotunately dd performs the same > >=C2=A0 =C2=A0 =C2=A01778384896 bytes (1.8 GB) copied, 198.5652=
65 s, 9.0 MB/s
> > >=C2=A0 =C2=A0 =C2=A0> If dd can do this faster, please ask on =
qemu-discuss
mailing list: >=C2=A0 =C2=A0 =C2=A0> https://lists.nongnu.org/mailman/listinf=
o/qemu-discuss
<https://lists.nongnu.org/mailman/listinfo/qemu-discuss> >=C2=A0 =C2=A0 =C2=A0<https://lists.nongnu.org/mailman/listinfo=
/qemu-discuss
<https://lists.nongnu.org/mailman/listinfo/qemu-discuss>> >=C2=A0 =C2=A0 =C2=A0> >=C2=A0 =C2=A0 =C2=A0> If both give similar results, I think as=
king in gluster
mailing list >=C2=A0 =C2=A0 =C2=A0> about this can help. Maybe your gluster =
setup can be
optimized. > >=C2=A0 =C2=A0 =C2=A0ok, this is definitly on the gluster side.=
Thanks for your
guidance. > >=C2=A0 =C2=A0 =C2=A0I will investigate the gluster side and al=
so will try
Export on NFS >=C2=A0 =C2=A0 =C2=A0share. > > > [Adding gluster users ml] > > Please provide "gluster volume info" output for the rhv_expor=
t
gluster > volume and also volume profile details (refer to earlier mail=
from Shani > on how to run this) while performing the dd operation above. =20 you can find all this output on https://pastebin.com/sBK01VS8 =20 as mentioned in other posts. Gluster cluster uses really slow (green) disks but without direct io it can achieve throughput around 400mbit/s. =20 This storage is used mostly for backup purposes. It is not used=
as a vm storage. =20 In my case it would be nice not to use direct io in export case=
but I understand why it might not be wise. =20 Cheers, =20 Jiri =20 > > =C2=A0 > > >=C2=A0 =C2=A0 =C2=A0Cheers, > >=C2=A0 =C2=A0 =C2=A0Jiri > > >=C2=A0 =C2=A0 =C2=A0> >=C2=A0 =C2=A0 =C2=A0> Nir >=C2=A0 =C2=A0 =C2=A0> =C2=A0 >=C2=A0 =C2=A0 =C2=A0> >=C2=A0 =C2=A0 =C2=A0> >=C2=A0 =C2=A0 =C2=A0>=C2=A0 =C2=A0 =C2=A0Cheers, >=C2=A0 =C2=A0 =C2=A0> >=C2=A0 =C2=A0 =C2=A0>=C2=A0 =C2=A0 =C2=A0Jiri >=C2=A0 =C2=A0 =C2=A0> >=C2=A0 =C2=A0 =C2=A0> >=C2=A0 =C2=A0 =C2=A0>=C2=A0 =C2=A0 =C2=A0_____________________=
__________________________
>=C2=A0 =C2=A0 =C2=A0>=C2=A0 =C2=A0 =C2=A0Users mailing list >=C2=A0 =C2=A0 =C2=A0>=C2=A0 =C2=A0 =C2=A0Users@ovirt.org <mail=
to:Users@ovirt.org>
<mailto:Users@ovirt.org <mailto:Users@ovirt.org>> >=C2=A0 =C2=A0 =C2=A0<mailto:Users@ovirt.org <mailto:Users@ovir=
t.org>
<mailto:Users@ovirt.org <mailto:Users@ovirt.org>>> >=C2=A0 =C2=A0 =C2=A0>=C2=A0 =C2=A0 =C2=A0http://lists.ovirt.or=
g/mailman/listinfo/users
<http://lists.ovirt.org/mailman/listinfo/users> >=C2=A0 =C2=A0 =C2=A0<http://lists.ovirt.org/mailman/listinfo/u=
sers
<http://lists.ovirt.org/mailman/listinfo/users>> >=C2=A0 =C2=A0 =C2=A0> > > > >=C2=A0 =C2=A0 =C2=A0__________________________________________=
_____
>=C2=A0 =C2=A0 =C2=A0Users mailing list >=C2=A0 =C2=A0 =C2=A0Users@ovirt.org <mailto:Users@ovirt.org> <mailto:Users@ovirt.org <mailto:Users@ovirt.org>> >=C2=A0 =C2=A0 =C2=A0http://lists.ovirt.org/mailman/listinfo/us=
ers
<http://lists.ovirt.org/mailman/listinfo/users> >=C2=A0 =C2=A0 =C2=A0<http://lists.ovirt.org/mailman/listinfo/u=
sers
<http://lists.ovirt.org/mailman/listinfo/users>> > > =20 =20 _______________________________________________ Users mailing list Users@ovirt.org <mailto:Users@ovirt.org> http://lists.ovirt.org/mailman/listinfo/users <http://lists.ovirt.org/mailman/listinfo/users> =20 =20 _______________________________________________ Gluster-users mailing list Gluster-users@gluster.org <mailto:Gluster-users@gluster.org> http://lists.gluster.org/mailman/listinfo/gluster-users <http://lists.gluster.org/mailman/listinfo/gluster-users> =20 =20
--------------ms050302080405030009040507 Content-Type: application/pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" Content-Description: S/MIME Cryptographic Signature MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCC Cn8wggUJMIID8aADAgECAhACt8ndrdK9CetZxFyQDGB4MA0GCSqGSIb3DQEBCwUAMGUxCzAJ BgNVBAYTAlVTMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2Vy dC5jb20xJDAiBgNVBAMTG0RpZ2lDZXJ0IEFzc3VyZWQgSUQgUm9vdCBDQTAeFw0xNDExMTgx MjAwMDBaFw0yNDExMTgxMjAwMDBaMHIxCzAJBgNVBAYTAk5MMRYwFAYDVQQIEw1Ob29yZC1I b2xsYW5kMRIwEAYDVQQHEwlBbXN0ZXJkYW0xDzANBgNVBAoTBlRFUkVOQTEmMCQGA1UEAxMd VEVSRU5BIGVTY2llbmNlIFBlcnNvbmFsIENBIDMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw ggEKAoIBAQCwp9Jj5Aej1xPkS1GV3LvBdemFmkUR//nSzBodqsU3dv2BCRD30r4gt5oRsYty qDGF2nnItxV1SkwVoDxFeRzOIHYNYvBRHaiGvCQjEXzPRTocOSVfWpmq/zAL/QOEqpJogeM+ 0IBGiJcAENJshl7UcfjYbBnN5qStk74f52VWFf/aiF7MVJnsUr3oriQvXYOzs8N/NXyyQyim atBbumJVCNszF1X+XHCGfPNvxlNFW9ktv7azK0baminfLcsh6ubCdINZc+Nof2lU387NCDgg oh3KsYVcZTSuhh7qp6MjxE5VqOZod1hpXXzDOkjK+DAMC57iZXssncp24eaN08VlAgMBAAGj ggGmMIIBojASBgNVHRMBAf8ECDAGAQH/AgEAMA4GA1UdDwEB/wQEAwIBhjB5BggrBgEFBQcB AQRtMGswJAYIKwYBBQUHMAGGGGh0dHA6Ly9vY3NwLmRpZ2ljZXJ0LmNvbTBDBggrBgEFBQcw AoY3aHR0cDovL2NhY2VydHMuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0QXNzdXJlZElEUm9vdENB LmNydDCBgQYDVR0fBHoweDA6oDigNoY0aHR0cDovL2NybDMuZGlnaWNlcnQuY29tL0RpZ2lD ZXJ0QXNzdXJlZElEUm9vdENBLmNybDA6oDigNoY0aHR0cDovL2NybDQuZGlnaWNlcnQuY29t L0RpZ2lDZXJ0QXNzdXJlZElEUm9vdENBLmNybDA9BgNVHSAENjA0MDIGBFUdIAAwKjAoBggr BgEFBQcCARYcaHR0cHM6Ly93d3cuZGlnaWNlcnQuY29tL0NQUzAdBgNVHQ4EFgQUjJ8RLubj egSlHlWLRggEpu2XcKYwHwYDVR0jBBgwFoAUReuir/SSy4IxLVGLp6chnfNtyA8wDQYJKoZI hvcNAQELBQADggEBAI5HEV91Oen8WHFCoJkeu2Av+b/kWTV2qH/YNI1Xsbou2hHKhh4IyNkF OxA/TUiuK2qQnQ5hAS0TIrs9SJ1Ke+DjXd/cTBiw7lCYSW5hkzigFV+iSivninpItafWqYBS WxITl1KHBS9YBskhEqO5GLliDMPiAgjqUBQ/H1qZMlZNQIuFu0UaFUQuZUpJFr4+0zpzPxsB iWU2muAoGItwbaP55EYshM7+v/J+x6kIhAJt5Dng8fOmOvR9F6Vw2/E0EZ6oQ8g1fdhwM101 S1OI6J1tUil1r7ES/svNqVWVb7YkUEBcPo8ppfHnTI/uxsn2tslsWefsOGJxNYUUSMAb9Eow ggVuMIIEVqADAgECAhAKebGg8bOvnIyfOWAn4bpzMA0GCSqGSIb3DQEBCwUAMHIxCzAJBgNV BAYTAk5MMRYwFAYDVQQIEw1Ob29yZC1Ib2xsYW5kMRIwEAYDVQQHEwlBbXN0ZXJkYW0xDzAN BgNVBAoTBlRFUkVOQTEmMCQGA1UEAxMdVEVSRU5BIGVTY2llbmNlIFBlcnNvbmFsIENBIDMw HhcNMTcxMTE2MDAwMDAwWhcNMTgxMjE1MTIwMDAwWjCBlDETMBEGCgmSJomT8ixkARkWA29y ZzEWMBQGCgmSJomT8ixkARkWBnRlcmVuYTETMBEGCgmSJomT8ixkARkWA3RjczELMAkGA1UE BhMCQ1oxJTAjBgNVBAoTHFNpbGVzaWFuIFVuaXZlcnNpdHkgaW4gT3BhdmExHDAaBgNVBAMT E0ppcmkgU2xlemthIHNsZTAwMDEwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC/ VwOD1hlYL6l7GzxNqV1ne7/iMF/gHvPfTwejsC2s9sby7It82qXPRBVA2s1Cjb1A3ucpdlDN MXM83Lvh881XfkxhS2YLLyiZDmlSzAqfoMLxQ2/E0m1UugttzGJF7/10pEwj0FJFhnIVwA/E 8svCcbhxwO9BBpUz8JG1C6fTd0qyzJtNXVyH+WuHQbU2jgu2JJ7miiEKE1Fis0hFf1rKxTzX aVGyXiQLOn7TZDfPtXrJEG7eWYlFUP58edyuJELpWHTPHn8xJKYTy8Qq5BgFNyCRQT/6imsh tZlDBZSEeqyoSNtLsC57ZrjqgtLCEQFK9EX27dOy0/u95zS0OIWdAgMBAAGjggHbMIIB1zAf BgNVHSMEGDAWgBSMnxEu5uN6BKUeVYtGCASm7ZdwpjAdBgNVHQ4EFgQUF1mSlcyDz9wWit9V jCz+zJ9CrpswDAYDVR0TAQH/BAIwADAdBgNVHREEFjAUgRJqaXJpLnNsZXprYUBzbHUuY3ow DgYDVR0PAQH/BAQDAgSwMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDBDA0BgNVHSAE LTArMAwGCiqGSIb3TAUCAgEwDAYKYIZIAYb9bAQfATANBgsqhkiG90wFAgMDAzCBhQYDVR0f BH4wfDA8oDqgOIY2aHR0cDovL2NybDMuZGlnaWNlcnQuY29tL1RFUkVOQWVTY2llbmNlUGVy c29uYWxDQTMuY3JsMDygOqA4hjZodHRwOi8vY3JsNC5kaWdpY2VydC5jb20vVEVSRU5BZVNj aWVuY2VQZXJzb25hbENBMy5jcmwwewYIKwYBBQUHAQEEbzBtMCQGCCsGAQUFBzABhhhodHRw Oi8vb2NzcC5kaWdpY2VydC5jb20wRQYIKwYBBQUHMAKGOWh0dHA6Ly9jYWNlcnRzLmRpZ2lj ZXJ0LmNvbS9URVJFTkFlU2NpZW5jZVBlcnNvbmFsQ0EzLmNydDANBgkqhkiG9w0BAQsFAAOC AQEADtFRxKphkcHVdWjR/+i1+cdHfkbicraHlU5Mpw8EX6nemKu4GGAWfzH+Y7p6ImZwUHWf /SSbrX+57xaFUBOr3jktQm1GRmGUZESEmsUDB8UZXzdQC79/tO9MzRhvEBXuQhdxdoO64Efx VqtYAB2ydqz7yWh56ioSwaQZEXo5rO1kZuAcmVz8Smd1r/Mur/h8Y+qbrsJng1GS25aMhFts UV6z9zXuHFkT9Ck8SLdCEDzjzYNjXIDB5n+QOmPXnXrZMlGiI/aOqa5k5Sv6xCIPdH2kbpyd M1YiH/ChmU9gWJvy0Jq42KGLvWBvuHEzcb3f473Fvn4GWsXu0zDS2oh2/TGCA8MwggO/AgEB MIGGMHIxCzAJBgNVBAYTAk5MMRYwFAYDVQQIEw1Ob29yZC1Ib2xsYW5kMRIwEAYDVQQHEwlB bXN0ZXJkYW0xDzANBgNVBAoTBlRFUkVOQTEmMCQGA1UEAxMdVEVSRU5BIGVTY2llbmNlIFBl cnNvbmFsIENBIDMCEAp5saDxs6+cjJ85YCfhunMwDQYJYIZIAWUDBAIBBQCgggINMBgGCSqG SIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTE3MTEyOTA5MDgyMVowLwYJ KoZIhvcNAQkEMSIEIFuS5jd9xR3ci09Hj2Qdoq+KmgeiPc6OokdRtOsinA80MGwGCSqGSIb3 DQEJDzFfMF0wCwYJYIZIAWUDBAEqMAsGCWCGSAFlAwQBAjAKBggqhkiG9w0DBzAOBggqhkiG 9w0DAgICAIAwDQYIKoZIhvcNAwICAUAwBwYFKw4DAgcwDQYIKoZIhvcNAwICASgwgZcGCSsG AQQBgjcQBDGBiTCBhjByMQswCQYDVQQGEwJOTDEWMBQGA1UECBMNTm9vcmQtSG9sbGFuZDES MBAGA1UEBxMJQW1zdGVyZGFtMQ8wDQYDVQQKEwZURVJFTkExJjAkBgNVBAMTHVRFUkVOQSBl U2NpZW5jZSBQZXJzb25hbCBDQSAzAhAKebGg8bOvnIyfOWAn4bpzMIGZBgsqhkiG9w0BCRAC CzGBiaCBhjByMQswCQYDVQQGEwJOTDEWMBQGA1UECBMNTm9vcmQtSG9sbGFuZDESMBAGA1UE BxMJQW1zdGVyZGFtMQ8wDQYDVQQKEwZURVJFTkExJjAkBgNVBAMTHVRFUkVOQSBlU2NpZW5j ZSBQZXJzb25hbCBDQSAzAhAKebGg8bOvnIyfOWAn4bpzMA0GCSqGSIb3DQEBAQUABIIBAIy4 4CxcJOH1NRuorhCJ7I5HuEeRF31ZM86zderH2J3RnhpAV3uiThbZ+GVwY7To120L87dXElX/ /cdN0apblltVvhIcjASh61dWCgGGSPxGSyfv2P30E3oHsyf8LGMhRinfVbJxbUpy8pUjDwJM 40DkmrSzB1gE9mJKpynqlBrcrZ90eM8DGxZ30Fwh2GikXrd0XYHKcAmNG/NJYHDxosMFyqrK Odr1e117HUL7BIJHVMakjyXPAfisvyiCMxK9CaNMjkdFY/4bAfSEqIphUPxqONYntgI/zgoR DVg5i1dh50f9M/KuX1BuAOUlXotIWgc22XNjRzF/7fbWk0Y/l5IAAAAAAAA= --------------ms050302080405030009040507--