From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mx5.umontpellier.fr (mx5.umontpellier.fr [193.51.152.36]) by mail.toke.dk (Postfix) with ESMTPS id 4CA6F82AB78 for ; Mon, 12 Apr 2021 17:38:37 +0200 (CEST) Authentication-Results: mail.toke.dk; dkim=pass (1024-bit key) header.d=umontpellier.fr header.i=@umontpellier.fr header.b=fke9QZVb DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=umontpellier.fr; i=@umontpellier.fr; q=dns/txt; s=dkim-s2; t=1618241918; x=1649777918; h=subject:to:cc:references:from:message-id:date: mime-version:in-reply-to; bh=ZNPfXiMEJs9/6HXo0X4tovOhK4zard8m/arMxgruub8=; b=fke9QZVb1Efc1NmLP98pr0Bbfz8hAwrOZvrQWiQm5lsCQDBqKyWflTDl LBWi79283ZSCznC+j3D3/CigSm27TI/4ZR1KBVJTipP7+P7rkbVbNDXx7 gPAb2MmUCqAj/i7axI7ZRwpddlP/c8lpPzex3NjfKr4pGoRzUY5uPsRk7 M=; IronPort-SDR: Ip51qWid4+2PbCULc7f5TFYW8zio35h6/4DogvVvoXhn7eHdJpyGoZCK1Cfj0sDqwB7HnBbCow gCV7zU4OJShIVMIF4Qji90hTjVOYbJfZiMnGc7LhH8QdlE61stsAHctlOt3t4Arb9vzy/Xil0L L2zVDR880dKMseVoXBC9oaA5ZXLQS6OOfJdFSUHSjYG9qcVu4rLYr8JwkroF8IOrsLGbhcHFBk gY+o9SvSGBXMWtXupcdmgIpk6WMMBdFNs6JJ1wyaPQVgjrHUPwAyBHoFo/X7oS/4TInDl34WZB T4g= X-IPAS-Result: =?us-ascii?q?A2HOAQAaaXRgjIWYM8FaHAEBAQEBAQcBARIBAQQEAQGCE?= =?us-ascii?q?oMiLCoBhSyRWYQIkECHZDwLAQEBCgUkEAQBAQECBIRJAoF6AiU4EwIDAQEBA?= =?us-ascii?q?wIDAQEBAQEBBQEBAQEBAQUDAQEBAhABAQEBbIUXOQ2COCkBEWJTNQEBAQEBA?= =?us-ascii?q?QEBAQEBAQEBAQEBAQEBAQEBEgINUmcDAyNWEAsONAICAlUGDQgBAYJtAYJ3F?= =?us-ascii?q?AusV4EygQGEWINqeAoGgTmBU4UqAYZPJ4IngRMnDIJvPoJgAoF3gwCCYASBV?= =?us-ascii?q?AIBGFlYNSwgDyQyPxVsApEILKgwgRQHgWOBK4UDgnCBcJMNBQsfg02KeIVSF?= =?us-ascii?q?JBGoH+XaIFrgX10gzZPGQ5WjVASg1eKWz8DZwIGAQkBAQMJjREBAQ?= IronPort-PHdr: A9a23:1K95ZxEzpKOBYLie/eniip1Gf0JLhN3EVjU92t8ck7tLN56b1NHcB iT32/xhgRfzUJnB7Loc0qyK6vGmADxfqs3Z+Fk5M7V0HycfjssXmwFySOWkMmbcaMDQUiohA c5ZX0Vk9XzoeWJcGcL5ekGA6ibqtW1aFRrwLxd6KfroEYDOkcu3y/qy+5rOaAlUmTaxe7x/I AiyoAnLq8UbgolvJqk/xxfVv3BFZ/lYyWR0KFyJgh3y/N2w/Jlt8yRRv/Iu6ctNWrjkcqo7U LJVEi0oP3g668P3uxbDSxCP5mYHXWUNjhVIGQnF4wrkUZr3ryD3q/By2CiePc3xULA0RTGv5 LplRRP0lCsKMSMy/XrJgcJskq1UvBOhpwR+w4HKZoGVKOF+db7Zcd8DWGZNQtpdWylHD4ihb YUAEvABMP5FoYfjqVsArRiwCweiC+zgyDBHmmT73aIm3+k7DQzKwAItEtAIvX/JrNv1LqASU eWtwafG0zrDdfVW1i3h6IfQbh4mu/SMXLJtesfW00kgCQbFj1WKpYP4ITyVzOINvHKH7+d7S OKvjmknqwdtoji32Mgsjo3JhoMLxVDe7yl5zpw1KMS+RUVmbtGqDIFeuDuGN4tqXMwiWWdot T4nx7AJuZO2fygHxIkoyRPbZPKKbpWF7B3+WOuRIzp1gHJodb2xihi87UStyuzxW8eq3VtXs iZIkcTAu3IT2hDP7MWMV/Vz/kCk2TmV1gDT7PlJIU81larHK54h36U/moAPvkTEGy/7nlj9g qyOdkg85+Sl7+rqbq/mq5OBLYN4lwHzPro0lsCiD+k1PA4DVHWB9+umzr3s50j5Ta1Pjv0xj 6bWrojXJd8epq6lGw9V1Zsj6wqnAzemztsYmX4HIUpAeBKblYflIlbOIO3kDfuimViskTFrx /7cPrL7GJnNM33DkLDnfbZh805T1g4zzdRe551KELENOvzzWlXpuNzZCB82LRC0zv76BNh52 I4SQ2KCDrKDPK/PsVKE+PgjL/SCaYIboDr9LuIq5//qjX83g18deqyp0IMNaH+mG/RnI1+Vb mfyjdcbF2cFpBY+Qff3iF2HVj5TYWqyX7oi6TE/DIKmDJnMRpq3jLyPxie3BodWaXxeClCQD XfocJ2JW/UQZyKSOcJhkyYEVbmvS4M72xGurhfwy6B7IerM5i0YqZXj2cB65+LJkRE96zp0A NqG3mGJTmF0hX8IRyQs0KBwu0N9zkmM0a5mjPBCEtxT/fxJAU8GMsv+0uh7FsvgEinBZNCDT 120T9buVTM6Tvow2d4AJUhnTYaMlBfGiganGbkci4uxhZkluvbG0n3gYcpw0XDPyIE8il4gX tNCMWmni7Q5+RKFVN2BqFmQi6v/LfdU5yXK7mrWiDPW5Cll IronPort-HdrOrdr: A9a23:prnhOq3Kz+UrUg+QSkzsEgqjBfdyeYIsi2QD101hICF9WMqeis yogbAw0Bfvkl8qKRYdsPqHP7SNRm6ZyI5t7eAqTNKfdSTFmE/tFoFt6oP+3ybtcheUnNJ1+K 98f8FFaOHYIlR3gM3z6gv9M/tI+qj9zImGnuHbpk0DcShLb7hn9BpwDQyWe3cGIjVuIbocON 6i6tFcpzymEE5nDPiTInUeReDMq5nqufvdEH07Lic96A+UjS65gYSKaiSw5RsVXzNRzbpKyw GsryXC+q6hv/unoyW860bv7o9bkNak991bBMbksKUoAwjr4zzHWK1RH5mLvDU4u4iUmTIXue iJhxclM+JXxxrqDxmIiCqo4SXblBAz9nHlyViX6EGT2/DRWTMgB8JNwYJffxfJgnBNgO1B X-IronPort-Anti-Spam-Filtered: true X-IronPort-AV: E=Sophos;i="5.82,216,1613430000"; d="p7s'?scan'208,217";a="27781785" Received: from mta-out1.infra.umontpellier.fr ([193.51.152.133]) by smtp-gw5.umontpellier.fr with ESMTP; 12 Apr 2021 17:38:37 +0200 Received: from [127.0.0.1] (localhost [127.0.0.1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) (Authenticated sender: p00000014758@umontpellier.fr) by mta-out1.infra.umontpellier.fr (Postfix) with ESMTPSA id E81D980018; Mon, 12 Apr 2021 17:38:35 +0200 (CEST) To: Juliusz Chroboczek References: <6AF7B2D8-D370-432F-BCB8-C714C1DED4CC@rouillier.fr> <2bf5e895-c758-62d4-68a1-1c747268bb26@crans.org> <09B3386F-42F0-4A30-A1F9-B65CCC106A4E@rouillier.fr> <2540d5d9-6ac8-d6f6-f468-565e98853d43@crans.org> <21640176-922A-4715-A0E3-DE5BEFECD720@rouillier.fr> <87v98uz0fv.wl-jch@irif.fr> <833a546d-dbe2-00c4-273e-16bc6664a9f8@umontpellier.fr> <87h7kbrb70.wl-jch@irif.fr> <85037a41-4903-4342-195b-5f5160f45823@umontpellier.fr> <87eeffr2cp.wl-jch@irif.fr> From: =?UTF-8?Q?Dernat_R=c3=a9my?= Message-ID: <2181a7f4-ccd5-6688-75fa-047def644e42@umontpellier.fr> Date: Mon, 12 Apr 2021 17:38:35 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.8.1 MIME-Version: 1.0 In-Reply-To: <87eeffr2cp.wl-jch@irif.fr> Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg=sha-256; boundary="------------ms040409040309080807070508" Message-ID-Hash: EL2H5XSYRWSEYHHAL7UT2J75MEQA4PJO X-Message-ID-Hash: EL2H5XSYRWSEYHHAL7UT2J75MEQA4PJO X-MailFrom: remy.dernat@umontpellier.fr X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header CC: galene@lists.galene.org X-Mailman-Version: 3.3.4 Precedence: list Subject: [Galene] Re: Statistics [was: Installation Script] List-Id: =?utf-8?q?Gal=C3=A8ne_videoconferencing_server_discussion_list?= Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: This is a cryptographically signed message in MIME format. --------------ms040409040309080807070508 Content-Type: multipart/alternative; boundary="------------C9B0E42CCF199C72DB99141A" Content-Language: en-US This is a multi-part message in MIME format. --------------C9B0E42CCF199C72DB99141A Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable Juliusz, Le 12/04/2021 =C3=A0 16:42, Juliusz Chroboczek a =C3=A9crit=C2=A0: >> Would it be possible (if it is not already possible) to add these kind= of >> data/output in a log flat file ? > Similar things have been discussed before, see for example here: > > https://github.com/jech/galene/pull/23 > > The problem is that nobody seems to have a clear idea what statistics n= eed > to be provided, and how to provide statistics without sacrificing user > privacy -- I administer three instances of Gal=C3=A8ne right now, and I= don't > want to know who is having a discussion with whom, it's none of my busi= ness. > > What is more, Gal=C3=A8ne is designed to scale well on multicore system= s, and > the patches to add statistics tend to introduce additional points of > contention. (Since Go doesn't provide either CPU-local or thread-local= > data, you'll need to implement sharding at the application level.) > > So if you have a clear idea of what statistics are (1) useful to the > administrator, (2) don't impair user privacy, (3) are cheap to compute,= > please outline your design, and we'll think together about how to > implement it without creating a point of contention. (1) The way I see it, useful stats would be to add something that allow=20 an admin to check the hardware/VM load compare to the number of rooms*use= rs. eg: %%TIMESTAMP%% 4 rooms with a total of 130 users with a mean=20 resolution ... and bandwidth ... A data with %users{Mic On/Webcam On} would also be useful, as well as %=20 of drop packets. Those metrics would help an admin to plan an upgrade for the Gal=C3=A8ne = service, locate any bottleneck/problem, scale it at a wider range=20 (linear progression, or ...?), get an alert if a treshold is reached...=20 Some metrics could be found by monitoring the system globally, but=20 metrics from the inside could drastically help to admin Gal=C3=A8ne. (2) I do not see any privacy issue with those kind of very general=20 statistics. Otherwise, currently, those values are either retrieved theoretically=20 from the code, or based on users experiences. (3) Those computations may then be choosen by an admin : boolean to=20 enable/disable it, interval between each computation (timer ? cron with=20 another binary ?), metrics to monitor (config file or based on options). = I think those computations are very basic but if you think it is really=20 cumbersome for the code, just forget it. Best regards, > > -- Juliusz --=20 Dernat R=C3=A9my Chef de projet SI, CNRS Infrastructure des Syst=C3=A8mes d'Information ISI ISEM Montpellier --------------C9B0E42CCF199C72DB99141A Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: quoted-printable

Juliusz,

Le 12/04/2021 =C3=A0 16:42, Juliusz Chroboczek a =C3=A9crit=C2=A0:
Would it be possible (if i=
t is not already possible) to add these kind of
data/output in a log flat file ?
Similar things have been discussed before, see for example here:

  https://github.com/jech/galene/pull/23

The problem is that nobody seems to have a clear idea what statistics nee=
d
to be provided, and how to provide statistics without sacrificing user
privacy -- I administer three instances of Gal=C3=A8ne right now, and I d=
on't
want to know who is having a discussion with whom, it's none of my busine=
ss.

What is more, Gal=C3=A8ne is designed to scale well on multicore systems,=
 and
the patches to add statistics tend to introduce additional points of
contention.  (Since Go doesn't provide either CPU-local or thread-local
data, you'll need to implement sharding at the application level.)

So if you have a clear idea of what statistics are (1) useful to the
administrator, (2) don't impair user privacy, (3) are cheap to compute,
please outline your design, and we'll think together about how to
implement it without creating a point of contention.

(1) The way I see it, useful stats would be to add something that allow an admin to check the hardware/VM load compare to the number of rooms*users.

eg: %%TIMESTAMP%% 4 rooms with a total of 130 users with a mean resolution ... and bandwidth ...

A data with %users{Mic On/Webcam On} would also be useful, as well as % of drop packets.

Those metrics would help an admin to plan an upgrade for the Gal=C3=A8ne service, locate any bottleneck/problem, scale it at a w= ider range (linear progression, or ...?), get an alert if a treshold is reached... Some metrics could be found by monitoring the system globally, but metrics from the inside could drastically help to admin Gal=C3=A8ne.

(2) I do not see any privacy issue with those kind of very general statistics.

Otherwise, currently, those values are either retrieved theoretically from the code, or based on users experiences.

(3) Those computations may then be choosen by an admin : boolean to enable/disable it, interval between each computation (timer ? cron with another binary ?), metrics to monitor (config file or based on options). I think those computations are very basic but if you think it is really cumbersome for the code, just forget it.

Best regards,



-- Juliusz
--=20
Dernat R=C3=A9my
Chef de projet SI, CNRS
Infrastructure des Syst=C3=A8mes d'Information ISI
ISEM Montpellier
--------------C9B0E42CCF199C72DB99141A-- --------------ms040409040309080807070508 Content-Type: application/pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" Content-Description: Signature cryptographique S/MIME MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCC CkIwggUAMIID6KADAgECAhADS+4XH7fhBjcv1HJCQL0qMA0GCSqGSIb3DQEBCwUAMGUxCzAJ BgNVBAYTAlVTMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2Vy dC5jb20xJDAiBgNVBAMTG0RpZ2lDZXJ0IEFzc3VyZWQgSUQgUm9vdCBDQTAeFw0xNDExMTgx MjAwMDBaFw0yNDExMTgxMjAwMDBaMGkxCzAJBgNVBAYTAk5MMRYwFAYDVQQIEw1Ob29yZC1I b2xsYW5kMRIwEAYDVQQHEwlBbXN0ZXJkYW0xDzANBgNVBAoTBlRFUkVOQTEdMBsGA1UEAxMU VEVSRU5BIFBlcnNvbmFsIENBIDMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDG pbsfVYL0pTRyFHJlm1/V6qBo2JuCiU9TYpx7jM4O2tQyDq8bjMum69vg6wM0lMGHflMgqB75 GxeKfQFmEldoXi2cLishqFUvU2cJeM3SaRsLk2BsuCgTzh9NsYgmrUX60KHOq7eYKVZxbPFW JF2nMOBuMXNu2qBXTGSLeLXHnNvG3r7TLzGg1oA5teAxQE6Eo8ySSeIXbP7wZB76urwlh51P IbrJZjkDjdQVELh7OlTP1WO6T/Hf6BsEfeFcpoa1e+MW/lw0VetTPPHQ15HYKYP2WYohHxzD iC+QUwE7UZVBlp9cXIpwHuDzSibc5RG3z0n/j2SQCx0Dk5FMAUErAgMBAAGjggGmMIIBojAS BgNVHRMBAf8ECDAGAQH/AgEAMA4GA1UdDwEB/wQEAwIBhjB5BggrBgEFBQcBAQRtMGswJAYI KwYBBQUHMAGGGGh0dHA6Ly9vY3NwLmRpZ2ljZXJ0LmNvbTBDBggrBgEFBQcwAoY3aHR0cDov L2NhY2VydHMuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0QXNzdXJlZElEUm9vdENBLmNydDCBgQYD VR0fBHoweDA6oDigNoY0aHR0cDovL2NybDMuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0QXNzdXJl ZElEUm9vdENBLmNybDA6oDigNoY0aHR0cDovL2NybDQuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0 QXNzdXJlZElEUm9vdENBLmNybDA9BgNVHSAENjA0MDIGBFUdIAAwKjAoBggrBgEFBQcCARYc aHR0cHM6Ly93d3cuZGlnaWNlcnQuY29tL0NQUzAdBgNVHQ4EFgQU8CHpSXdzn4WuGDvoUnAU Bu1C7sowHwYDVR0jBBgwFoAUReuir/SSy4IxLVGLp6chnfNtyA8wDQYJKoZIhvcNAQELBQAD ggEBADrCGyv+Y967YbS5R6j8fAWxJiAiUZvIPfn1xVgesF6jspwCQY8xGn/MG04d+Jh97I8I /Xfx29JEEFq2rQmw4PxiO9RiDZ7xoDxNd4rrRDR7jrtOKQP8J+o+ah0vSOP62hnD/zPS7NRM tIyVS2G277KAL5fIR62ngr984fmJghDv0bsjGAmeu3EP0xhUsDJT61IoAGoKBnxBPAeg3WXs dSm4Gn7btyvakeyFtYebr2KmOBSa28PRqGSDur56aZhJoM2eMzc6prmvGwwtAzRsc5t2OsKR uHWV6O3anP2K27jGZR2bi1VX1NQUvIbpVNTuwjm+XcZtsa/AAJF9KGkEseAwggU6MIIEIqAD AgECAhADISn5PXGddblQOR+Xb1pqMA0GCSqGSIb3DQEBCwUAMGkxCzAJBgNVBAYTAk5MMRYw FAYDVQQIEw1Ob29yZC1Ib2xsYW5kMRIwEAYDVQQHEwlBbXN0ZXJkYW0xDzANBgNVBAoTBlRF UkVOQTEdMBsGA1UEAxMUVEVSRU5BIFBlcnNvbmFsIENBIDMwHhcNMTkwNTA5MDAwMDAwWhcN MjEwNTA5MTIwMDAwWjBrMQswCQYDVQQGEwJGUjEOMAwGA1UEBxMFUGFyaXMxNTAzBgNVBAoT LENlbnRyZSBuYXRpb25hbCBkZSBsYSByZWNoZXJjaGUgc2NpZW50aWZpcXVlMRUwEwYDVQQD DAxERVJOQVQgUsOpbXkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC0rTmc4DzB resAz5DJZJ1IM49qZ39/67dpzb3a6p1jLrFmVCvo5ALVSNXZNpMQ+sMHD8rszSBJYD7nz6k8 QVRHwf8IXMQrQ+YL1bJy8t6PVgoG48NmRSY9Jp0f4uhBJgPNJ433o6E1c941yVj+dQnEkmQr Gg7RN13ZUL0Myg74bTYXM5sAGDFwYV7/eMTLrEMWMnUXo5+YMDLy3o2FVYD+CmBcVrojqQej kqCm0Nam1C6BWZVwJoL4yMxdpETqSlZHQFDSug1Oih34S296Idz5MzOC84M61wI3fQnYr66x QBYzLuv5i302Vt+d/zLKpiBXE+5qh6PoX+g5oTtS/0LLAgMBAAGjggHaMIIB1jAfBgNVHSME GDAWgBTwIelJd3Ofha4YO+hScBQG7ULuyjAdBgNVHQ4EFgQUcwB7cxyLQT/OCCKFbkhdvF1H hlEwDAYDVR0TAQH/BAIwADAmBgNVHREEHzAdgRtyZW15LmRlcm5hdEB1bW9udHBlbGxpZXIu ZnIwDgYDVR0PAQH/BAQDAgWgMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDBDBDBgNV HSAEPDA6MDgGCmCGSAGG/WwEAQIwKjAoBggrBgEFBQcCARYcaHR0cHM6Ly93d3cuZGlnaWNl cnQuY29tL0NQUzB1BgNVHR8EbjBsMDSgMqAwhi5odHRwOi8vY3JsMy5kaWdpY2VydC5jb20v VEVSRU5BUGVyc29uYWxDQTMuY3JsMDSgMqAwhi5odHRwOi8vY3JsNC5kaWdpY2VydC5jb20v VEVSRU5BUGVyc29uYWxDQTMuY3JsMHMGCCsGAQUFBwEBBGcwZTAkBggrBgEFBQcwAYYYaHR0 cDovL29jc3AuZGlnaWNlcnQuY29tMD0GCCsGAQUFBzAChjFodHRwOi8vY2FjZXJ0cy5kaWdp Y2VydC5jb20vVEVSRU5BUGVyc29uYWxDQTMuY3J0MA0GCSqGSIb3DQEBCwUAA4IBAQBWTyK3 RKdoNu5NI6KXOCbYw2POY68C5jGbUcJwL04drynPv2fxp46JLzEqgpKYjhP/RQ9vdz+zHPY+ W7r8jVkLBBg/5lpBXpPo1AGfvV0Dzs5SQNgXxyXr0y4XvLjNSgaS/ag2OxEu2nH20/zok8jP AtoBA5TZDkWO4KFSevOmuePQxbVTZxPeynPYZ7ipkePOWCPGYzlkra8UldVe/N1U5zVPr5s7 emE/V+SVBIP2HeAtZidpgBHtdvhfQ3/d6NBBFlahkNKIZU+WFSuyn7ayPAhvQX6TAsVLYqix se0U/mes/1QeVYDKxbY5/hm+7zLeLbocAj7r+fkllVcieH+UMYIDozCCA58CAQEwfTBpMQsw CQYDVQQGEwJOTDEWMBQGA1UECBMNTm9vcmQtSG9sbGFuZDESMBAGA1UEBxMJQW1zdGVyZGFt MQ8wDQYDVQQKEwZURVJFTkExHTAbBgNVBAMTFFRFUkVOQSBQZXJzb25hbCBDQSAzAhADISn5 PXGddblQOR+Xb1pqMA0GCWCGSAFlAwQCAQUAoIIB9zAYBgkqhkiG9w0BCQMxCwYJKoZIhvcN AQcBMBwGCSqGSIb3DQEJBTEPFw0yMTA0MTIxNTM4MzVaMC8GCSqGSIb3DQEJBDEiBCAdGg/X 0hsb9tKlQFXXmEoEE7r8CjRMcXSKD+2faYoVczBsBgkqhkiG9w0BCQ8xXzBdMAsGCWCGSAFl AwQBKjALBglghkgBZQMEAQIwCgYIKoZIhvcNAwcwDgYIKoZIhvcNAwICAgCAMA0GCCqGSIb3 DQMCAgFAMAcGBSsOAwIHMA0GCCqGSIb3DQMCAgEoMIGMBgkrBgEEAYI3EAQxfzB9MGkxCzAJ BgNVBAYTAk5MMRYwFAYDVQQIEw1Ob29yZC1Ib2xsYW5kMRIwEAYDVQQHEwlBbXN0ZXJkYW0x DzANBgNVBAoTBlRFUkVOQTEdMBsGA1UEAxMUVEVSRU5BIFBlcnNvbmFsIENBIDMCEAMhKfk9 cZ11uVA5H5dvWmowgY4GCyqGSIb3DQEJEAILMX+gfTBpMQswCQYDVQQGEwJOTDEWMBQGA1UE CBMNTm9vcmQtSG9sbGFuZDESMBAGA1UEBxMJQW1zdGVyZGFtMQ8wDQYDVQQKEwZURVJFTkEx HTAbBgNVBAMTFFRFUkVOQSBQZXJzb25hbCBDQSAzAhADISn5PXGddblQOR+Xb1pqMA0GCSqG SIb3DQEBAQUABIIBAI0ycWn9su6N4I+C1CDakD0muK5XcdZ8VoUTTaPRHOL2IlzNWmnDWJui aacpIr6Bl/FWTpyZIkkNv0pnpqPB2ek3jKyguoEjTEmPqzdi91ktRfjWtvCNKJycKFOnRYul bYlwBCO6rMX6YKN0nPq/qee46yl7r0wfXfuLnUsWb2eY0Tdv9froQ9xvSeTwiO/4skmv+pwI VfQ7cRSeNq9yM/72YBmOvQuy3NVN7Syg9yjLW8fcRu/pBikc16z9FQ6UsP/POdvrP9EnZdwj qDDm+YZO/ms6S7CKp4KDE9Twfd1t9HHuhqQ8Sl/HTw+Jxwlf9NkPNt7CNXmxWqDrdkfTLuEA AAAAAAA= --------------ms040409040309080807070508--