delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2008/04/29/17:12:02

X-Recipient: archive-cygwin AT delorie DOT com
X-Spam-Check-By: sourceware.org
From: "Williams, David" <dwilliams AT solekai DOT com>
To: "cygwin AT cygwin DOT com" <cygwin AT cygwin DOT com>
Date: Tue, 29 Apr 2008 14:11:28 -0700
Subject: Problem with cygserver and sysv message queues: msgsnd() blocks forever.
Message-ID: <FE57175CCE23E5419899C1B0CFA26FAD0C4160951D@EXMBXSD.dm.solekai.com>
Accept-Language: en-US
acceptlanguage: en-US
MIME-Version: 1.0
X-IsSubscribed: yes
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

--_005_FE57175CCE23E5419899C1B0CFA26FAD0C4160951DEXMBXSDdmsole_
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

I've been debugging a problem with msgsnd() hanging. If there are no free m=
sghdrs available, msgsnd() blocks with msleep(). Unfortunately, the only wa=
y it can unblock is if that specific queue frees a msghdr. If the queue in =
question is empty, this never occurs. I was able to isolate this behavior i=
n set of examples, which I've attached. The program doqueue.c establishes a=
 queue and upon each ENTER, calls msgsnd() followed by msgrcv(). Start this=
 one first and verify that messages cycle normally.

In another window, run overflow.c. This establishes a different queue, and =
calls msgsnd() until the queue is full, then exits. In the default configur=
ation, that will happen at 40 messages. Go back to the first window and pre=
ss ENTER. the call to msgsnd() will block. Then, either run drainq to remov=
e messages from overflow's queue, or use ipcrm -q 4660 to delete the queue =
entirely. Doqueue will remain blocked.

It's possible to work around this by using the flag IPC_NOWAIT in msgsnd, a=
nd polling until the message is sent, but my feeling is that the library ca=
ll should not hang like this.

Here is the code in question:

=46rom sysv_msg.cc, function msgsnd():
=3D=3D=3D=3D=3D=3D=3D=3D=3D
if (free_msghdrs =3D=3D NULL) {
        DPRINTF(("no more msghdrs\n"));
        need_more_resources =3D 1;
}

if (need_more_resources) {
        int we_own_it;

        if ((msgflg & IPC_NOWAIT) !=3D 0) {
                DPRINTF(("need more resources but caller "
                    "doesn't want to wait\n"));
                error =3D EAGAIN;
                goto done2;
        }

        if ((msqptr->msg_perm.mode & MSG_LOCKED) !=3D 0) {
                DPRINTF(("we don't own the msqid_ds\n"));
                we_own_it =3D 0;
        } else {
                /* Force later arrivals to wait for our
                   request */
                DPRINTF(("we own the msqid_ds\n"));
                msqptr->msg_perm.mode |=3D MSG_LOCKED;
                we_own_it =3D 1;
        }
        DPRINTF(("goodnight\n"));
        error =3D msleep(msqptr, &msq_mtx, (PZERO - 4) | PCATCH,
            "msgwait", 0);
        DPRINTF(("good morning, error=3D%d\n", error));
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

The call to msleep() above passes msqptr (the queue handle) as the Ident po=
inter. Each of the calls to wakeup() in sysv_msg.cc also passes msgptr as t=
he ident. This means that if the msghdr resource is free'd by a queue other=
 than the one blocked, it won't wake up msgsnd(). Since doqueue's queue is =
empty, there is no way to wake up msgsnd().

Here is a snippet from /var/log/messages:
Apr 29 13:38:16 motonao cygserver: call to msgsnd(131072, 0x22CCD8, 1, 0)
Apr 29 13:38:16 motonao cygserver: msgsz=3D1, msgssz=3D8, segs_needed=3D1
Apr 29 13:38:16 motonao cygserver: no more msghdrs
Apr 29 13:38:16 motonao cygserver: we own the msqid_ds
Apr 29 13:38:16 motonao cygserver: goodnight
Apr 29 13:38:24 motonao cygserver: msgget(0x1234, 00)
Apr 29 13:38:24 motonao cygserver: found public key
Apr 29 13:38:24 motonao cygserver: call to msgrcv(196609, 0x22CCD8, 1, 0, 0)
Apr 29 13:38:24 motonao cygserver: found a message, msgsz=3D1, msg_ts=3D1

The first line is doqueue's last call to msgsnd(). It finds there are no fr=
ee msghdrs and logs the message "no more msghdrs", then logs "goodnight" an=
d calls msleep(). The call to msgrcv is drainq removing a message from the =
overflow queue. This is the point where we would like to see the "good morn=
ing" message from msgsnd(), but we don't.

I haven't been able to spot a way to fix this behavior without significantl=
y changing the block/release mechanism. Has anyone seen this before? Have I=
 missed something? Is this simply a known limitation, with IPC_NOWAIT the o=
nly way to deal with it?

~

David Williams
Solekai Systems



--_005_FE57175CCE23E5419899C1B0CFA26FAD0C4160951DEXMBXSDdmsole_
Content-Type: text/plain; name="drainq.c"
Content-Description: drainq.c
Content-Disposition: attachment; filename="drainq.c"; size=0;
	creation-date="Tue, 29 Apr 2008 00:54:43 GMT";
	modification-date="Tue, 29 Apr 2008 17:21:13 GMT"
Content-Transfer-Encoding: base64

I2luY2x1ZGUgPHN0ZGlvLmg+DQojaW5jbHVkZSA8c3RkbGliLmg+DQojaW5j
bHVkZSA8dW5pc3RkLmg+DQojaW5jbHVkZSA8Y3R5cGUuaD4NCiNpbmNsdWRl
IDxzeXMvdHlwZXMuaD4NCiNpbmNsdWRlIDxzeXMvaXBjLmg+DQojaW5jbHVk
ZSA8c3lzL21zZy5oPg0KI2luY2x1ZGUgPGVycm5vLmg+DQoNCiNkZWZpbmUg
TVNHUV9LRVkgMHgxMjM0DQojZGVmaW5lIFBFUk0gMDY2MA0KDQpzdHJ1Y3Qg
bXltc2cgew0KICBsb25nIG10eXBlOw0KICBjaGFyIG10ZXh0WzFdOw0KfTsN
Cg0KaW50DQptYWluKCkNCnsNCiAgaW50IG1zZ19pZDsgLyogbWVzc2FnZSBR
dWV1ZSBpZC4gKi8NCiAgc3RydWN0IG15bXNnIG1zZzsgLyogbWVzc2FnZSB0
byBzZW5kLiAqLw0KICBpbnQgbm1zZzsgLyogbnVtYmVyIG9mIG1zZyBzZW5k
LiAqLw0KICBpbnQgc3RhdHVzOyAvKiBzdGF0dXMgcmV0dXJuZWQgYnkgbXNn
c25kKCkuICovDQoNCiAgLyoNCiAgICogQ3JlYXRlIE1lc3NhZ2UgUXVldWUN
CiAgICovDQogIGlmICggKG1zZ19pZCA9IG1zZ2dldCAoTVNHUV9LRVksIFBF
Uk0gfCBJUENfQ1JFQVQpKSA9PSAtMSApIHsNCiAgICBwZXJyb3IgKCJtc2dn
ZXQ6ICIpOw0KICAgIGV4aXQgKEVYSVRfRkFJTFVSRSk7DQogIH0NCiAgLyoN
CiAgICogbm93IHdyaXRlIG1lc3NhZ2Ugb25lIGJ5IG9uZSB1bnRpbCBRdWV1
ZSBpcyBmdWxsDQogICAqLw0KICBtc2cubXR5cGUgPSAxOw0KICBtc2cubXRl
eHRbMF0gPSAnQSc7DQogIG5tc2cgPSAwOw0KICBkbyB7DQogICAgcHJpbnRm
ICgiUmVjZWl2aW5nICMlZFxuIiwgbm1zZyk7DQogICAgc3RhdHVzID0gbXNn
cmN2IChtc2dfaWQsICZtc2csIHNpemVvZihtc2cubXRleHQpLCAwLCAwKTsN
CiAgICBwcmludGYgKCJSZWNlaXZlZCBtc2cgIyVkXG4iLCBubXNnKTsNCiAg
ICBubXNnKys7DQogIH0NCiAgd2hpbGUgKCB0b2xvd2VyKGdldGNoYXIoKSkg
IT0gJ3EnICk7DQogIA0KICANCiAgDQogIGV4aXQgKEVYSVRfU1VDQ0VTUyk7
DQp9IA0K

--_005_FE57175CCE23E5419899C1B0CFA26FAD0C4160951DEXMBXSDdmsole_
Content-Type: text/plain; name="overflow.c"
Content-Description: overflow.c
Content-Disposition: attachment; filename="overflow.c"; size=0;
	creation-date="Mon, 28 Apr 2008 22:59:48 GMT";
	modification-date="Tue, 29 Apr 2008 00:56:37 GMT"
Content-Transfer-Encoding: base64

I2luY2x1ZGUgPHN0ZGlvLmg+DQojaW5jbHVkZSA8c3RkbGliLmg+DQojaW5j
bHVkZSA8dW5pc3RkLmg+DQojaW5jbHVkZSA8c3lzL3R5cGVzLmg+DQojaW5j
bHVkZSA8c3lzL2lwYy5oPg0KI2luY2x1ZGUgPHN5cy9tc2cuaD4NCiNpbmNs
dWRlIDxlcnJuby5oPg0KDQojZGVmaW5lIE1TR1FfS0VZIDB4MTIzNA0KI2Rl
ZmluZSBQRVJNIDA2NjANCg0Kc3RydWN0IG15bXNnIHsNCiAgbG9uZyBtdHlw
ZTsNCiAgY2hhciBtdGV4dFsxXTsNCn07DQoNCmludA0KbWFpbigpDQp7DQog
IGludCBtc2dfaWQ7IC8qIG1lc3NhZ2UgUXVldWUgaWQuICovDQogIHN0cnVj
dCBteW1zZyBtc2c7IC8qIG1lc3NhZ2UgdG8gc2VuZC4gKi8NCiAgaW50IG5t
c2c7IC8qIG51bWJlciBvZiBtc2cgc2VuZC4gKi8NCiAgaW50IHN0YXR1czsg
Lyogc3RhdHVzIHJldHVybmVkIGJ5IG1zZ3NuZCgpLiAqLw0KDQogIC8qDQog
ICAqIENyZWF0ZSBNZXNzYWdlIFF1ZXVlDQogICAqLw0KICBpZiAoIChtc2df
aWQgPSBtc2dnZXQgKE1TR1FfS0VZLCBQRVJNIHwgSVBDX0NSRUFUKSkgPT0g
LTEgKSB7DQogICAgcGVycm9yICgibXNnZ2V0OiAiKTsNCiAgICBleGl0IChF
WElUX0ZBSUxVUkUpOw0KICB9DQogIC8qDQogICAqIG5vdyB3cml0ZSBtZXNz
YWdlIG9uZSBieSBvbmUgdW50aWwgUXVldWUgaXMgZnVsbA0KICAgKi8NCiAg
bXNnLm10eXBlID0gMTsNCiAgbXNnLm10ZXh0WzBdID0gJ0EnOw0KICBubXNn
ID0gMDsNCiAgZG8gew0KICAgIHN0YXR1cyA9IG1zZ3NuZCAobXNnX2lkLCAm
bXNnLCBzaXplb2YobXNnLm10ZXh0KSwgSVBDX05PV0FJVCk7DQogICAgbm1z
ZysrOw0KICAgIHByaW50ZiAoIlNlbnQgbXNnICMlZFxyIiwgbm1zZyk7DQog
IH0NCiAgd2hpbGUgKCBzdGF0dXMgPT0gMCApOw0KICANCiAgaWYgKGVycm5v
ICE9IEVBR0FJTiApIHsgLyogZWg/IHdlIGRpZG4ndCBvdmVyZmxvdz8gKi8N
CiAgICBwZXJyb3IgKCJtc2dzbmQ6ICIpOw0KICAgIGV4aXQgKEVYSVRfRkFJ
TFVSRSk7DQogIH0NCiAgDQogIHByaW50ZiAoIlF1ZXVlIGZ1bGwsIHNlbnQg
JWQgbWVzc2FnZXNcbiIsIG5tc2ctMSk7DQogIGV4aXQgKEVYSVRfU1VDQ0VT
Uyk7DQp9IA0K

--_005_FE57175CCE23E5419899C1B0CFA26FAD0C4160951DEXMBXSDdmsole_
Content-Type: text/plain; name="doqueue.c"
Content-Description: doqueue.c
Content-Disposition: attachment; filename="doqueue.c"; size=0;
	creation-date="Mon, 28 Apr 2008 23:28:33 GMT";
	modification-date="Tue, 29 Apr 2008 20:18:05 GMT"
Content-Transfer-Encoding: base64

I2luY2x1ZGUgPHN0ZGlvLmg+DQojaW5jbHVkZSA8c3RkbGliLmg+DQojaW5j
bHVkZSA8Y3R5cGUuaD4NCiNpbmNsdWRlIDx1bmlzdGQuaD4NCiNpbmNsdWRl
IDxzeXMvdHlwZXMuaD4NCiNpbmNsdWRlIDxzeXMvaXBjLmg+DQojaW5jbHVk
ZSA8c3lzL21zZy5oPg0KI2luY2x1ZGUgPGVycm5vLmg+DQoNCiNkZWZpbmUg
TVNHUV9LRVkgMHg0MzIxDQojZGVmaW5lIFBFUk0gMDY2MA0KDQpzdHJ1Y3Qg
bXltc2cgew0KICBsb25nIG10eXBlOw0KICBjaGFyIG10ZXh0WzFdOw0KfTsN
Cg0KaW50DQptYWluKCkNCnsNCiAgaW50IG1zZ19pZDsgLyogbWVzc2FnZSBR
dWV1ZSBpZC4gKi8NCiAgc3RydWN0IG15bXNnIG1zZzsgLyogbWVzc2FnZSB0
byBzZW5kLiAqLw0KICBpbnQgbm1zZzsgLyogbnVtYmVyIG9mIG1zZyBzZW5k
LiAqLw0KICBpbnQgc3RhdHVzOyAvKiBzdGF0dXMgcmV0dXJuZWQgYnkgbXNn
c25kKCkuICovDQoNCiAgLyoNCiAgICogQ3JlYXRlIE1lc3NhZ2UgUXVldWUN
CiAgICovDQogIGlmICggKG1zZ19pZCA9IG1zZ2dldCAoTVNHUV9LRVksIFBF
Uk0gfCBJUENfQ1JFQVQpKSA9PSAtMSApIHsNCiAgICBwZXJyb3IgKCJtc2dn
ZXQ6ICIpOw0KICAgIGV4aXQgKEVYSVRfRkFJTFVSRSk7DQogIH0NCiAgLyoN
CiAgICogbm93IHdyaXRlIG1lc3NhZ2Ugb25lIGJ5IG9uZSB1bnRpbCBRdWV1
ZSBpcyBmdWxsDQogICAqLw0KICBtc2cubXR5cGUgPSAxOw0KICBtc2cubXRl
eHRbMF0gPSAnQSc7DQogIG5tc2cgPSAwOw0KICBkbyB7DQogICAgcHJpbnRm
ICgiU2VuZGluZyAjJWRcbiIsIG5tc2cpOw0KICAgIHN0YXR1cyA9IG1zZ3Nu
ZCAobXNnX2lkLCAmbXNnLCBzaXplb2YobXNnLm10ZXh0KSwgMCk7DQogICAg
cHJpbnRmICgiU2VudCBtc2cgIyVkXG4iLCBubXNnKTsNCiAgICBwcmludGYg
KCJSZWNlaXZpbmcgIyVkXG4iLCBubXNnKTsNCiAgICBzdGF0dXMgPSBtc2dy
Y3YgKG1zZ19pZCwgJm1zZywgc2l6ZW9mKG1zZy5tdGV4dCksIDAsIDApOw0K
ICAgIHByaW50ZiAoIlJlY2VpdmVkIG1zZyAjJWRcbiIsIG5tc2cpOw0KICAg
IG5tc2crKzsNCiAgfQ0KICB3aGlsZSAoIHRvbG93ZXIoZ2V0Y2hhcigpKSAh
PSAncScgKTsNCiAgDQogIA0KICANCiAgZXhpdCAoRVhJVF9TVUNDRVNTKTsN
Cn0gDQo=

--_005_FE57175CCE23E5419899C1B0CFA26FAD0C4160951DEXMBXSDdmsole_
Content-Type: application/octet-stream; name="cygcheck.out"
Content-Description: cygcheck.out
Content-Disposition: attachment; filename="cygcheck.out"; size=0;
	creation-date="Tue, 29 Apr 2008 20:14:52 GMT";
	modification-date="Tue, 29 Apr 2008 20:14:56 GMT"
Content-Transfer-Encoding: base64

DQpDeWd3aW4gQ29uZmlndXJhdGlvbiBEaWFnbm9zdGljcw0KQ3VycmVudCBT
eXN0ZW0gVGltZTogVHVlIEFwciAyOSAxMzoxNDo1MiAyMDA4DQoNCldpbmRv
d3MgWFAgUHJvZmVzc2lvbmFsIFZlciA1LjEgQnVpbGQgMjYwMCBTZXJ2aWNl
IFBhY2sgMg0KDQpQYXRoOglDOlxjeWd3aW5cdXNyXGxvY2FsXGJpbg0KCUM6
XGN5Z3dpblxiaW4NCglDOlxjeWd3aW5cYmluDQoJQzpcY3lnd2luXHVzclxY
MTFSNlxiaW4NCgljOlxQcm9ncmFtIEZpbGVzXE1pY3Jvc29mdCBEaXJlY3RY
IFNESyAoQXVndXN0IDIwMDcpXFV0aWxpdGllc1xCaW5ceDg2DQoJYzpcUHJv
Z3JhbSBGaWxlc1xNaWNyb3NvZnQgRGlyZWN0WCBTREsgKEFwcmlsIDIwMDcp
XFV0aWxpdGllc1xCaW5ceDg2DQoJYzpcV0lORE9XU1xzeXN0ZW0zMg0KCWM6
XFdJTkRPV1MNCgljOlxXSU5ET1dTXFN5c3RlbTMyXFdiZW0NCgljOlxQcm9n
cmFtIEZpbGVzXE1pY3Jvc29mdCBTUUwgU2VydmVyXDkwXFRvb2xzXGJpbm5c
DQoJYzpcUHJvZ3JhbSBGaWxlc1xTdWJ2ZXJzaW9uXGJpbg0KCWM6XFByb2dy
YW0gRmlsZXNcQ1ZTTlRcDQoNCk91dHB1dCBmcm9tIEM6XGN5Z3dpblxiaW5c
aWQuZXhlIChub250c2VjKQ0KVUlEOiAxNjYyNShkd2lsbGlhbXMpICAgR0lE
OiAxMDU0NShta2dyb3VwLWwtZCkNCjAocm9vdCkgICAgICAgICAgICAgICAg
IDU0NChBZG1pbmlzdHJhdG9ycykgICAgIDU0NShVc2VycykNCjEwNTQ1KG1r
Z3JvdXAtbC1kKQ0KDQpPdXRwdXQgZnJvbSBDOlxjeWd3aW5cYmluXGlkLmV4
ZSAobnRzZWMpDQpVSUQ6IDE2NjI1KGR3aWxsaWFtcykgICBHSUQ6IDEwNTQ1
KG1rZ3JvdXAtbC1kKQ0KMChyb290KSAgICAgICAgICAgICAgICAgNTQ0KEFk
bWluaXN0cmF0b3JzKSAgICAgNTQ1KFVzZXJzKQ0KMTA1NDUobWtncm91cC1s
LWQpDQoNClN5c0RpcjogQzpcV0lORE9XU1xzeXN0ZW0zMg0KV2luRGlyOiBD
OlxXSU5ET1dTDQoNClVTRVIgPSAnZHdpbGxpYW1zJw0KUFdEID0gJy9jeWdk
cml2ZS9jL0RvY3VtZW50cyBhbmQgU2V0dGluZ3MvZHdpbGxpYU1TL3Byb2ov
U2Vuc3VzJw0KQ1lHV0lOID0gJ3NlcnZlcicNCkhPTUUgPSAnL2N5Z2RyaXZl
L2MvRG9jdW1lbnRzIGFuZCBTZXR0aW5ncy9kd2lsbGlhTVMnDQpNQUtFX01P
REUgPSAndW5peCcNCg0KSE9NRVBBVEggPSAnXERvY3VtZW50cyBhbmQgU2V0
dGluZ3NcZHdpbGxpYU1TJw0KTUFOUEFUSCA9ICcvdXNyL2xvY2FsL21hbjov
dXNyL3NoYXJlL21hbjovdXNyL21hbjo6L3Vzci9zc2wvbWFuJw0KQVBQREFU
QSA9ICdDOlxEb2N1bWVudHMgYW5kIFNldHRpbmdzXGR3aWxsaWFNU1xBcHBs
aWNhdGlvbiBEYXRhJw0KSE9TVE5BTUUgPSAnbW90b25hbycNCkRYU0RLX0RJ
UiA9ICdDOlxQcm9ncmFtIEZpbGVzXE1pY3Jvc29mdCBEaXJlY3RYIFNESyAo
QXVndXN0IDIwMDcpXCcNClRFUk0gPSAnY3lnd2luJw0KUFJPQ0VTU09SX0lE
RU5USUZJRVIgPSAneDg2IEZhbWlseSA2IE1vZGVsIDE1IFN0ZXBwaW5nIDIs
IEdlbnVpbmVJbnRlbCcNCldJTkRJUiA9ICdDOlxXSU5ET1dTJw0KVlM4MENP
TU5UT09MUyA9ICdDOlxQcm9ncmFtIEZpbGVzXE1pY3Jvc29mdCBWaXN1YWwg
U3R1ZGlvIDhcQ29tbW9uN1xUb29sc1wnDQpPTERQV0QgPSAnL2N5Z2RyaXZl
L2MvRG9jdW1lbnRzIGFuZCBTZXR0aW5ncy9kd2lsbGlhTVMnDQpVU0VSRE9N
QUlOID0gJ1NPTEVLQUknDQpPUyA9ICdXaW5kb3dzX05UJw0KQUxMVVNFUlNQ
Uk9GSUxFID0gJ0M6XERvY3VtZW50cyBhbmQgU2V0dGluZ3NcQWxsIFVzZXJz
Jw0KQVBSX0lDT05WX1BBVEggPSAnQzpcUHJvZ3JhbSBGaWxlc1xTdWJ2ZXJz
aW9uXGljb252Jw0KITo6ID0gJzo6XCcNClRFTVAgPSAnL2N5Z2RyaXZlL2Mv
RE9DVU1FfjEvRFdJTExJfjEvTE9DQUxTfjEvVGVtcCcNCkNPTU1PTlBST0dS
QU1GSUxFUyA9ICdDOlxQcm9ncmFtIEZpbGVzXENvbW1vbiBGaWxlcycNClVT
RVJOQU1FID0gJ2R3aWxsaWFtcycNClBST0NFU1NPUl9MRVZFTCA9ICc2Jw0K
RlBfTk9fSE9TVF9DSEVDSyA9ICdOTycNClNZU1RFTURSSVZFID0gJ0M6Jw0K
SkFWQV9IT01FID0gJ0M6XFByb2dyYW0gRmlsZXNcSmF2YVxqZGsxLjYuMF8w
MicNClVTRVJQUk9GSUxFID0gJ0M6XERvY3VtZW50cyBhbmQgU2V0dGluZ3Nc
ZHdpbGxpYU1TJw0KQ0xJRU5UTkFNRSA9ICdDb25zb2xlJw0KUFMxID0gJ1xb
XGVdMDtcd1xhXF1cblxbXGVbMzJtXF1cdUBcaCBcW1xlWzMzbVxdXHdcW1xl
WzBtXF1cblwkICcNCkxPR09OU0VSVkVSID0gJ1xcU09MRUtBSTAxJw0KUFJP
Q0VTU09SX0FSQ0hJVEVDVFVSRSA9ICd4ODYnDQohQzogPSAnQzpcY3lnd2lu
XGJpbicNClNITFZMID0gJzEnDQpVU0VSRE5TRE9NQUlOID0gJ0RNLlNPTEVL
QUkuQ09NJw0KUEFUSEVYVCA9ICcuQ09NOy5FWEU7LkJBVDsuQ01EOy5WQlM7
LlZCRTsuSlM7LkpTRTsuV1NGOy5XU0gnDQpIT01FRFJJVkUgPSAnQzonDQpQ
Uk9NUFQgPSAnJFAkRycNCkNPTVNQRUMgPSAnQzpcV0lORE9XU1xzeXN0ZW0z
MlxjbWQuZXhlJw0KVE1QID0gJy9jeWdkcml2ZS9jL0RPQ1VNRX4xL0RXSUxM
SX4xL0xPQ0FMU34xL1RlbXAnDQpTWVNURU1ST09UID0gJ0M6XFdJTkRPV1Mn
DQpQUklOVEVSID0gJ1xcU09MRUtBSTAzXFpvb20nDQpDVlNfUlNIID0gJy9i
aW4vc3NoJw0KUFJPQ0VTU09SX1JFVklTSU9OID0gJzBmMDInDQpJTkZPUEFU
SCA9ICcvdXNyL2xvY2FsL2luZm86L3Vzci9zaGFyZS9pbmZvOi91c3IvaW5m
bzonDQpQUk9HUkFNRklMRVMgPSAnQzpcUHJvZ3JhbSBGaWxlcycNCk5VTUJF
Ul9PRl9QUk9DRVNTT1JTID0gJzInDQpTRVNTSU9OTkFNRSA9ICdDb25zb2xl
Jw0KQ09NUFVURVJOQU1FID0gJ01PVE9OQU8nDQpTT05JQ0NFTlRSQUwgPSAn
QzpcUHJvZ3JhbSBGaWxlc1xDb21tb24gRmlsZXNcU29uaWMgU2hhcmVkXFNv
bmljIENlbnRyYWxcJw0KXyA9ICcvdXNyL2Jpbi9jeWdjaGVjaycNCg0KSEtF
WV9DVVJSRU5UX1VTRVJcU29mdHdhcmVcQ3lnbnVzIFNvbHV0aW9ucw0KSEtF
WV9DVVJSRU5UX1VTRVJcU29mdHdhcmVcQ3lnbnVzIFNvbHV0aW9uc1xDeWd3
aW4NCkhLRVlfQ1VSUkVOVF9VU0VSXFNvZnR3YXJlXEN5Z251cyBTb2x1dGlv
bnNcQ3lnd2luXG1vdW50cyB2Mg0KSEtFWV9DVVJSRU5UX1VTRVJcU29mdHdh
cmVcQ3lnbnVzIFNvbHV0aW9uc1xDeWd3aW5cUHJvZ3JhbSBPcHRpb25zDQpI
S0VZX0NVUlJFTlRfVVNFUlxTb2Z0d2FyZVxNaWNyb3NvZnRcV2luZG93c1xD
dXJyZW50VmVyc2lvblxFeHBsb3JlclxNZW51T3JkZXJcU3RhcnQgTWVudTJc
UHJvZ3JhbXNcQ3lnbnVzIEhleCBFZGl0b3IgRlJFRSBFRElUSU9ODQogIChk
ZWZhdWx0KSA9ICh1bnN1cHBvcnRlZCB0eXBlKQ0KSEtFWV9DVVJSRU5UX1VT
RVJcU29mdHdhcmVcU29mdENpcmN1aXRzXEN5Z251cyBGUkVFIEVESVRJT04N
CkhLRVlfQ1VSUkVOVF9VU0VSXFNvZnR3YXJlXFNvZnRDaXJjdWl0c1xDeWdu
dXMgRlJFRSBFRElUSU9OXFJlY2VudCBGaWxlIExpc3QNCiAgKGRlZmF1bHQp
ID0gJ0M6XFByb2dyYW0gRmlsZXNcRkFCIFRlbGV0ZXh0IEVkaXRvclxQYWdl
c1xERU1PMS5UVFAnDQpIS0VZX0NVUlJFTlRfVVNFUlxTb2Z0d2FyZVxTb2Z0
Q2lyY3VpdHNcQ3lnbnVzIEZSRUUgRURJVElPTlxTZXR0aW5ncw0KICAoZGVm
YXVsdCkgPSAweDAwMDAwMDAwDQogIEluc2VydE1vZGUgPSAweDAwMDAwMDAw
DQogIE51bUJhc2UgPSAweDAwMDAwMDAwDQogIE92ZXJzdHJpa2VPblN0YXJ0
dXAgPSAweDAwMDAwMDAxDQogIFJlcGxhY2VTZWxlY3Rpb24gPSAweDAwMDAw
MDAwDQogIERyYWdBbmREcm9wID0gMHgwMDAwMDAwMA0KICBTaG93QWxsQ2hh
cnMgPSAweDAwMDAwMDAwDQogIFNjcm9sbFRyYWNraW5nID0gMHgwMDAwMDAw
MA0KICBXYXJuQ2FudFVuZG8gPSAweDAwMDAwMDAxDQogIFVuZG9MZXZlbHMg
PSAweDAwMDAwMDY0DQogIFJlZG9MZXZlbHMgPSAweDAwMDAwMDY0DQogIE5l
d0ZpbGUgPSAweDAwMDAwMDAwDQogIFZhbHVlVHlwZSA9IDB4MDAwMDAwMDAN
CiAgVmFsdWVGb3JtYXQgPSAweDAwMDAwMDAwDQogIFN0YXR1c0Jhc2UgPSAw
eDAwMDAwMDAwDQogIEZvbnQgPSAodW5zdXBwb3J0ZWQgdHlwZSkNCiAgRmlu
ZERhdGEgPSAodW5zdXBwb3J0ZWQgdHlwZSkNCiAgUmVwbGFjZURhdGEgPSAo
dW5zdXBwb3J0ZWQgdHlwZSkNCiAgRmluZEhleENvbCA9IDB4MDAwMDAwMDEN
CiAgUmVwbGFjZUhleENvbCA9IDB4MDAwMDAwMDENCiAgSWdub3JlQ2FzZSA9
IDB4MDAwMDAwMDANCkhLRVlfQ1VSUkVOVF9VU0VSXFNvZnR3YXJlXFNvZnRD
aXJjdWl0c1xDeWdudXMgRlJFRSBFRElUSU9OXFRvb2xiYXJzLVN1bW1hcnkN
CkhLRVlfTE9DQUxfTUFDSElORVxTT0ZUV0FSRVxDeWdudXMgU29sdXRpb25z
DQpIS0VZX0xPQ0FMX01BQ0hJTkVcU09GVFdBUkVcQ3lnbnVzIFNvbHV0aW9u
c1xDeWd3aW4NCkhLRVlfTE9DQUxfTUFDSElORVxTT0ZUV0FSRVxDeWdudXMg
U29sdXRpb25zXEN5Z3dpblxtb3VudHMgdjINCiAgKGRlZmF1bHQpID0gJy9j
eWdkcml2ZScNCiAgY3lnZHJpdmUgZmxhZ3MgPSAweDAwMDAwMDIyDQpIS0VZ
X0xPQ0FMX01BQ0hJTkVcU09GVFdBUkVcQ3lnbnVzIFNvbHV0aW9uc1xDeWd3
aW5cbW91bnRzIHYyXC8NCiAgKGRlZmF1bHQpID0gJ0M6XGN5Z3dpbicNCiAg
ZmxhZ3MgPSAweDAwMDAwMDBhDQpIS0VZX0xPQ0FMX01BQ0hJTkVcU09GVFdB
UkVcQ3lnbnVzIFNvbHV0aW9uc1xDeWd3aW5cbW91bnRzIHYyXC91c3IvYmlu
DQogIChkZWZhdWx0KSA9ICdDOlxjeWd3aW4vYmluJw0KICBmbGFncyA9IDB4
MDAwMDAwMGENCkhLRVlfTE9DQUxfTUFDSElORVxTT0ZUV0FSRVxDeWdudXMg
U29sdXRpb25zXEN5Z3dpblxtb3VudHMgdjJcL3Vzci9saWINCiAgKGRlZmF1
bHQpID0gJ0M6XGN5Z3dpbi9saWInDQogIGZsYWdzID0gMHgwMDAwMDAwYQ0K
SEtFWV9MT0NBTF9NQUNISU5FXFNPRlRXQVJFXEN5Z251cyBTb2x1dGlvbnNc
Q3lnd2luXFByb2dyYW0gT3B0aW9ucw0KSEtFWV9MT0NBTF9NQUNISU5FXFNP
RlRXQVJFXE1pY3Jvc29mdFxXaW5kb3dzXEN1cnJlbnRWZXJzaW9uXEFwcCBN
YW5hZ2VtZW50XEFSUENhY2hlXEN5Z251cyBIZXggRWRpdG9yIEZSRUUgRURJ
VElPTg0KICAoZGVmYXVsdCkgPSAodW5zdXBwb3J0ZWQgdHlwZSkNCiAgQ2hh
bmdlZCA9IDB4MDAwMDAwMDANCkhLRVlfTE9DQUxfTUFDSElORVxTT0ZUV0FS
RVxNaWNyb3NvZnRcV2luZG93c1xDdXJyZW50VmVyc2lvblxBcHAgUGF0aHNc
Q3lnbnVzRkUuZXhlDQogIChkZWZhdWx0KSA9ICdDOlxQcm9ncmFtIEZpbGVz
XEN5Z251cyBGUkVFIEVESVRJT05cQ3lnbnVzLmV4ZScNCkhLRVlfTE9DQUxf
TUFDSElORVxTT0ZUV0FSRVxNaWNyb3NvZnRcV2luZG93c1xDdXJyZW50VmVy
c2lvblxVbmluc3RhbGxcQ3lnbnVzIEhleCBFZGl0b3IgRlJFRSBFRElUSU9O
DQogIChkZWZhdWx0KSA9ICdDeWdudXMgSGV4IEVkaXRvciBGUkVFIEVESVRJ
T04gMS4wMCcNCiAgVW5pbnN0YWxsU3RyaW5nID0gJ0M6XFByb2dyYW0gRmls
ZXNcQ3lnbnVzIEZSRUUgRURJVElPTlx1bmluc3QuZXhlJw0KICBEaXNwbGF5
SWNvbiA9ICdDOlxQcm9ncmFtIEZpbGVzXEN5Z251cyBGUkVFIEVESVRJT05c
Q3lnbnVzLmV4ZScNCiAgRGlzcGxheVZlcnNpb24gPSAnMS4wMCcNCiAgVVJM
SW5mb0Fib3V0ID0gJ2h0dHA6Ly93d3cuc29mdGNpcmN1aXRzLmNvbS9jeWdu
dXMvZmUvJw0KICBQdWJsaXNoZXIgPSAnU29mdENpcmN1aXRzJw0KDQpjOiAg
aGQgIE5URlMgICAgIDc2MjMwTWIgIDgwJSBDUCBDUyBVTiBQQSBGQyAgICAg
DQpkOiAgY2QgICAgICAgICAgICAgTi9BICAgIE4vQSAgICAgICAgICAgICAg
ICAgICAgDQpwOiAgbmV0IE5URlMgICAxNzE2NTc4TWIgIDg2JSBDUCBDUyBV
TiBQQSBGQyAgICAgTWFpbiBERlMNCnE6ICBuZXQgTlRGUyAgIDE3MTY1ODRN
YiAgNDMlIENQIENTIFVOIFBBIEZDICAgICBPdmVyZmxvdyBERlMNCnI6ICBu
ZXQgTlRGUyAgICA2NjY1NzFNYiAgODMlIENQIENTIFVOIFBBIEZDICAgICBN
YWluIERMTw0KejogIG5ldCBOVEZTICAgICA3NjMwOE1iICA1MiUgQ1AgQ1Mg
VU4gUEEgRkMgICAgIA0KDQpDOlxjeWd3aW4gICAgICAvICAgICAgICAgIHN5
c3RlbSAgYmlubW9kZQ0KQzpcY3lnd2luL2JpbiAgL3Vzci9iaW4gICBzeXN0
ZW0gIGJpbm1vZGUNCkM6XGN5Z3dpbi9saWIgIC91c3IvbGliICAgc3lzdGVt
ICBiaW5tb2RlDQouICAgICAgICAgICAgICAvY3lnZHJpdmUgIHN5c3RlbSAg
YmlubW9kZSxjeWdkcml2ZQ0KDQpGb3VuZDogQzpcY3lnd2luXGJpblxhd2su
ZXhlDQpGb3VuZDogQzpcY3lnd2luXGJpblxiYXNoLmV4ZQ0KRm91bmQ6IEM6
XGN5Z3dpblxiaW5cY2F0LmV4ZQ0KRm91bmQ6IEM6XGN5Z3dpblxiaW5cY3Au
ZXhlDQpGb3VuZDogQzpcY3lnd2luXGJpblxjcHAuZXhlDQpOb3QgRm91bmQ6
IGNyb250YWINCkZvdW5kOiBDOlxjeWd3aW5cYmluXGZpbmQuZXhlDQpGb3Vu
ZDogQzpcY3lnd2luXGJpblxnY2MuZXhlDQpGb3VuZDogQzpcY3lnd2luXGJp
blxnZGIuZXhlDQpGb3VuZDogQzpcY3lnd2luXGJpblxncmVwLmV4ZQ0KRm91
bmQ6IEM6XGN5Z3dpblxiaW5ca2lsbC5leGUNCkZvdW5kOiBDOlxjeWd3aW5c
YmluXGxkLmV4ZQ0KRm91bmQ6IEM6XGN5Z3dpblxiaW5cbHMuZXhlDQpGb3Vu
ZDogQzpcY3lnd2luXGJpblxtYWtlLmV4ZQ0KRm91bmQ6IEM6XGN5Z3dpblxi
aW5cbXYuZXhlDQpOb3QgRm91bmQ6IHBhdGNoDQpGb3VuZDogQzpcY3lnd2lu
XGJpblxwZXJsLmV4ZQ0KRm91bmQ6IEM6XGN5Z3dpblxiaW5ccm0uZXhlDQpG
b3VuZDogQzpcY3lnd2luXGJpblxzZWQuZXhlDQpGb3VuZDogQzpcY3lnd2lu
XGJpblxzc2guZXhlDQpGb3VuZDogQzpcY3lnd2luXGJpblxzaC5leGUNCkZv
dW5kOiBDOlxjeWd3aW5cYmluXHRhci5leGUNCkZvdW5kOiBDOlxjeWd3aW5c
YmluXHRlc3QuZXhlDQpOb3QgRm91bmQ6IHZpDQpGb3VuZDogQzpcY3lnd2lu
XGJpblx2aW0uZXhlDQoNCiAgMTAzayAyMDA3LzA5LzE2IEM6XGN5Z3dpblxi
aW5cY3lnYXByLTEtMC5kbGwgLSBvcz00LjAgaW1nPTEuMCBzeXM9NC4wDQog
ICAgICAgICAgICAgICAgICAiY3lnYXByLTEtMC5kbGwiIHYwLjAgdHM9MjAw
Ny85LzE2IDExOjA0DQogICA3MGsgMjAwNy8wOS8xNiBDOlxjeWd3aW5cYmlu
XGN5Z2FwcnV0aWwtMS0wLmRsbCAtIG9zPTQuMCBpbWc9MS4wIHN5cz00LjAN
CiAgICAgICAgICAgICAgICAgICJjeWdhcHJ1dGlsLTEtMC5kbGwiIHYwLjAg
dHM9MjAwNy85LzE2IDExOjMzDQogICA2MWsgMjAwOC8wNC8wMSBDOlxjeWd3
aW5cYmluXGN5Z2J6Mi0xLmRsbCAtIG9zPTQuMCBpbWc9MS4wIHN5cz00LjAN
CiAgICAgICAgICAgICAgICAgICJjeWdiejItMS5kbGwiIHYwLjAgdHM9MjAw
OC8zLzMxIDIwOjM3DQogICAgN2sgMjAwMy8xMC8xOSBDOlxjeWd3aW5cYmlu
XGN5Z2NyeXB0LTAuZGxsIC0gb3M9NC4wIGltZz0xLjAgc3lzPTQuMA0KICAg
ICAgICAgICAgICAgICAgImN5Z2NyeXB0LTAuZGxsIiB2MC4wIHRzPTIwMDMv
MTAvMTkgMDo1Nw0KIDEwNTlrIDIwMDcvMTAvMTkgQzpcY3lnd2luXGJpblxj
eWdjcnlwdG8tMC45LjguZGxsIC0gb3M9NC4wIGltZz0xLjAgc3lzPTQuMA0K
ICAgICAgICAgICAgICAgICAgImN5Z2NyeXB0by0wLjkuOC5kbGwiIHYwLjAg
dHM9MjAwNy8xMC8xOSA0OjQ1DQogIDIyMWsgMjAwNy8wNi8zMCBDOlxjeWd3
aW5cYmluXGN5Z2N1cmwtNC5kbGwgLSBvcz00LjAgaW1nPTEuMCBzeXM9NC4w
DQogICAgICAgICAgICAgICAgICAiY3lnY3VybC00LmRsbCIgdjAuMCB0cz0y
MDA3LzYvMjkgMTc6NTQNCiAgNzAzayAyMDA3LzEyLzE3IEM6XGN5Z3dpblxi
aW5cY3lnZGItNC4yLmRsbCAtIG9zPTQuMCBpbWc9MS4wIHN5cz00LjANCiAg
ICAgICAgICAgICAgICAgICJjeWdkYi00LjIuZGxsIiB2MC4wIHRzPTIwMDcv
MTIvMTcgMzo1OA0KICA5NDNrIDIwMDcvMTIvMTcgQzpcY3lnd2luXGJpblxj
eWdkYi00LjUuZGxsIC0gb3M9NC4wIGltZz0xLjAgc3lzPTQuMA0KICAgICAg
ICAgICAgICAgICAgImN5Z2RiLTQuNS5kbGwiIHYwLjAgdHM9MjAwNy8xMi8x
NyA1OjEyDQogMTAzNmsgMjAwNy8xMi8xNyBDOlxjeWd3aW5cYmluXGN5Z2Ri
X2N4eC00LjIuZGxsIC0gb3M9NC4wIGltZz0xLjAgc3lzPTQuMA0KICAgICAg
ICAgICAgICAgICAgImN5Z2RiX2N4eC00LjIuZGxsIiB2MC4wIHRzPTIwMDcv
MTIvMTcgMzo1OA0KIDEyOTZrIDIwMDcvMTIvMTcgQzpcY3lnd2luXGJpblxj
eWdkYl9jeHgtNC41LmRsbCAtIG9zPTQuMCBpbWc9MS4wIHN5cz00LjANCiAg
ICAgICAgICAgICAgICAgICJjeWdkYl9jeHgtNC41LmRsbCIgdjAuMCB0cz0y
MDA3LzEyLzE3IDU6MTINCiAgMTE4ayAyMDA3LzA0LzA2IEM6XGN5Z3dpblxi
aW5cY3lnZXhwYXQtMC5kbGwgLSBvcz00LjAgaW1nPTEuMCBzeXM9NC4wDQog
ICAgICAgICAgICAgICAgICAiY3lnZXhwYXQtMC5kbGwiIHYwLjAgdHM9MjAw
Ny80LzYgMTM6NDMNCiAgIDY2ayAyMDA3LzA1LzIyIEM6XGN5Z3dpblxiaW5c
Y3lnZXhzbHQtMC5kbGwgLSBvcz00LjAgaW1nPTEuMCBzeXM9NC4wDQogICAg
ICAgICAgICAgICAgICAiY3lnZXhzbHQtMC5kbGwiIHYwLjAgdHM9MjAwNy81
LzIyIDk6MTANCiAgIDQwayAyMDA2LzExLzE1IEM6XGN5Z3dpblxiaW5cY3ln
Zm9ybS04LmRsbCAtIG9zPTQuMCBpbWc9MS4wIHN5cz00LjANCiAgICAgICAg
ICAgICAgICAgICJjeWdmb3JtLTguZGxsIiB2MC4wIHRzPTIwMDYvMTEvMTQg
MjM6MDYNCiAgNDE4ayAyMDA4LzAzLzA5IEM6XGN5Z3dpblxiaW5cY3lnZ2Ny
eXB0LTExLmRsbCAtIG9zPTQuMCBpbWc9MS4wIHN5cz00LjANCiAgICAgICAg
ICAgICAgICAgICJjeWdnY3J5cHQtMTEuZGxsIiB2MC4wIHRzPTIwMDgvMy84
IDE2OjQyDQogICAxOWsgMjAwNi8xMS8xOSBDOlxjeWd3aW5cYmluXGN5Z2dk
Ym0tNC5kbGwgLSBvcz00LjAgaW1nPTEuMCBzeXM9NC4wDQogICAgICAgICAg
ICAgICAgICAiY3lnZ2RibS00LmRsbCIgdjAuMCB0cz0yMDA2LzExLzE5IDA6
MTgNCiAgICA4ayAyMDA2LzExLzE5IEM6XGN5Z3dpblxiaW5cY3lnZ2RibV9j
b21wYXQtNC5kbGwgLSBvcz00LjAgaW1nPTEuMCBzeXM9NC4wDQogICAgICAg
ICAgICAgICAgICAiY3lnZ2RibV9jb21wYXQtNC5kbGwiIHYwLjAgdHM9MjAw
Ni8xMS8xOSAwOjE4DQogICAxM2sgMjAwOC8wMy8wOCBDOlxjeWd3aW5cYmlu
XGN5Z2dwZy1lcnJvci0wLmRsbCAtIG9zPTQuMCBpbWc9MS4wIHN5cz00LjAN
CiAgICAgICAgICAgICAgICAgICJjeWdncGctZXJyb3ItMC5kbGwiIHYwLjAg
dHM9MjAwOC8zLzggMTU6MTgNCiAgIDI1ayAyMDA4LzAxLzA0IEM6XGN5Z3dp
blxiaW5cY3lnaGlzdG9yeTYuZGxsIC0gb3M9NC4wIGltZz0xLjAgc3lzPTQu
MA0KICAgICAgICAgICAgICAgICAgImN5Z2hpc3Rvcnk2LmRsbCIgdjAuMCB0
cz0yMDA4LzEvMyAxOTozMQ0KICAyNzFrIDIwMDcvMDgvMjQgQzpcY3lnd2lu
XGJpblxjeWdpY29ucy0wLmRsbCAtIG9zPTQuMCBpbWc9MS4wIHN5cz00LjAN
CiAgICAgICAgICAgICAgICAgICJjeWdpY29ucy0wLmRsbCIgdjAuMCB0cz0y
MDA3LzgvMjQgMDoyNA0KICA5NzZrIDIwMDYvMTAvMjIgQzpcY3lnd2luXGJp
blxjeWdpY29udi0yLmRsbCAtIG9zPTQuMCBpbWc9MS4wIHN5cz00LjANCiAg
ICAgICAgICAgICAgICAgICJjeWdpY29udi0yLmRsbCIgdjAuMCB0cz0yMDA2
LzEwLzIyIDE2OjQ0DQogICAzN2sgMjAwMy8wOC8xMCBDOlxjeWd3aW5cYmlu
XGN5Z2ludGwtMi5kbGwgLSBvcz00LjAgaW1nPTEuMCBzeXM9NC4wDQogICAg
ICAgICAgICAgICAgICAiY3lnaW50bC0yLmRsbCIgdjAuMCB0cz0yMDAzLzgv
MTAgMTQ6NTANCiAgIDMxayAyMDA1LzExLzIwIEM6XGN5Z3dpblxiaW5cY3ln
aW50bC0zLmRsbCAtIG9zPTQuMCBpbWc9MS4wIHN5cz00LjANCiAgICAgICAg
ICAgICAgICAgICJjeWdpbnRsLTMuZGxsIiB2MC4wIHRzPTIwMDUvMTEvMTkg
MTg6MDQNCiAgIDMxayAyMDA2LzEwLzIzIEM6XGN5Z3dpblxiaW5cY3lnaW50
bC04LmRsbCAtIG9zPTQuMCBpbWc9MS4wIHN5cz00LjANCiAgICAgICAgICAg
ICAgICAgICJjeWdpbnRsLTguZGxsIiB2MC4wIHRzPTIwMDYvMTAvMjIgMTc6
MTINCiAgIDgzayAyMDA3LzA2LzA2IEM6XGN5Z3dpblxiaW5cY3lnbWFnaWMt
MS5kbGwgLSBvcz00LjAgaW1nPTEuMCBzeXM9NC4wDQogICAgICAgICAgICAg
ICAgICAiY3lnbWFnaWMtMS5kbGwiIHYwLjAgdHM9MjAwNy82LzYgMzo0MQ0K
ICAgMjFrIDIwMDYvMTEvMTUgQzpcY3lnd2luXGJpblxjeWdtZW51LTguZGxs
IC0gb3M9NC4wIGltZz0xLjAgc3lzPTQuMA0KICAgICAgICAgICAgICAgICAg
ImN5Z21lbnUtOC5kbGwiIHYwLjAgdHM9MjAwNi8xMS8xNCAyMzowNQ0KICAg
MjBrIDIwMDYvMTIvMjEgQzpcY3lnd2luXGJpblxjeWdtaW5pcmVzLmRsbCAt
IG9zPTQuMCBpbWc9MS4xIHN5cz00LjANCiAgICAgICAgICAgICAgICAgICJj
eWdtaW5pcmVzLmRsbCIgdjAuMCB0cz0yMDA2LzEyLzIwIDIxOjA3DQogICA2
N2sgMjAwNi8xMS8xNSBDOlxjeWd3aW5cYmluXGN5Z25jdXJzZXMrKy04LmRs
bCAtIG9zPTQuMCBpbWc9MS4wIHN5cz00LjANCiAgICAgICAgICAgICAgICAg
ICJjeWduY3Vyc2VzKystOC5kbGwiIHYwLjAgdHM9MjAwNi8xMS8xNCAyMzox
Mw0KICAyMzdrIDIwMDYvMTEvMTUgQzpcY3lnd2luXGJpblxjeWduY3Vyc2Vz
LTguZGxsIC0gb3M9NC4wIGltZz0xLjAgc3lzPTQuMA0KICAgICAgICAgICAg
ICAgICAgImN5Z25jdXJzZXMtOC5kbGwiIHYwLjAgdHM9MjAwNi8xMS8xNCAy
MzowMg0KICAgOTdrIDIwMDcvMDkvMTYgQzpcY3lnd2luXGJpblxjeWduZW9u
LTI2LmRsbCAtIG9zPTQuMCBpbWc9MS4wIHN5cz00LjANCiAgICAgICAgICAg
ICAgICAgICJjeWduZW9uLTI2LmRsbCIgdjAuMCB0cz0yMDA3LzkvMTYgMTA6
NDENCiAgIDEyayAyMDA2LzExLzE1IEM6XGN5Z3dpblxiaW5cY3lncGFuZWwt
OC5kbGwgLSBvcz00LjAgaW1nPTEuMCBzeXM9NC4wDQogICAgICAgICAgICAg
ICAgICAiY3lncGFuZWwtOC5kbGwiIHYwLjAgdHM9MjAwNi8xMS8xNCAyMzow
NA0KICAxMzNrIDIwMDcvMDYvMjcgQzpcY3lnd2luXGJpblxjeWdwY3JlLTAu
ZGxsIC0gb3M9NC4wIGltZz0xLjAgc3lzPTQuMA0KICAgICAgICAgICAgICAg
ICAgImN5Z3BjcmUtMC5kbGwiIHYwLjAgdHM9MjAwNy82LzI2IDIwOjQ5DQog
IDMwM2sgMjAwNy8wNi8yNyBDOlxjeWd3aW5cYmluXGN5Z3BjcmVjcHAtMC5k
bGwgLSBvcz00LjAgaW1nPTEuMCBzeXM9NC4wDQogICAgICAgICAgICAgICAg
ICAiY3lncGNyZWNwcC0wLmRsbCIgdjAuMCB0cz0yMDA3LzYvMjYgMjA6NTAN
CiAgICA3ayAyMDA3LzA2LzI3IEM6XGN5Z3dpblxiaW5cY3lncGNyZXBvc2l4
LTAuZGxsIC0gb3M9NC4wIGltZz0xLjAgc3lzPTQuMA0KICAgICAgICAgICAg
ICAgICAgImN5Z3BjcmVwb3NpeC0wLmRsbCIgdjAuMCB0cz0yMDA3LzYvMjYg
MjA6NTANCiAxMjI0ayAyMDA3LzA3LzE5IEM6XGN5Z3dpblxiaW5cY3lncGVy
bDVfOC5kbGwgLSBvcz00LjAgaW1nPTEuMCBzeXM9NC4wDQogICAgICAgICAg
ICAgICAgICAiY3lncGVybDVfOC5kbGwiIHYwLjAgdHM9MjAwNy83LzggMTI6
MTQNCiAgIDIyayAyMDAyLzA2LzA5IEM6XGN5Z3dpblxiaW5cY3lncG9wdC0w
LmRsbCAtIG9zPTQuMCBpbWc9MS4wIHN5cz00LjANCiAgICAgICAgICAgICAg
ICAgICJjeWdwb3B0LTAuZGxsIiB2MC4wIHRzPTIwMDIvNi84IDIyOjQ1DQog
IDE1NWsgMjAwOC8wMS8wNCBDOlxjeWd3aW5cYmluXGN5Z3JlYWRsaW5lNi5k
bGwgLSBvcz00LjAgaW1nPTEuMCBzeXM9NC4wDQogICAgICAgICAgICAgICAg
ICAiY3lncmVhZGxpbmU2LmRsbCIgdjAuMCB0cz0yMDA4LzEvMyAxOTozMQ0K
ICAxMThrIDIwMDcvMDYvMjcgQzpcY3lnd2luXGJpblxjeWdzc2gyLTEuZGxs
IC0gb3M9NC4wIGltZz0xLjAgc3lzPTQuMA0KICAgICAgICAgICAgICAgICAg
ImN5Z3NzaDItMS5kbGwiIHYwLjAgdHM9MjAwNy82LzI2IDIyOjU2DQogIDIx
OWsgMjAwNy8xMC8xOSBDOlxjeWd3aW5cYmluXGN5Z3NzbC0wLjkuOC5kbGwg
LSBvcz00LjAgaW1nPTEuMCBzeXM9NC4wDQogICAgICAgICAgICAgICAgICAi
Y3lnc3NsLTAuOS44LmRsbCIgdjAuMCB0cz0yMDA3LzEwLzE5IDQ6NDUNCiAg
ICA1ayAyMDA3LzEyLzA1IEM6XGN5Z3dpblxiaW5cY3lnc3R1bm5lbC5kbGwg
LSBvcz00LjAgaW1nPTEuMCBzeXM9NC4wDQogICAgICAgICAgICAgICAgICAi
Y3lnc3R1bm5lbC5kbGwiIHYwLjAgdHM9MjAwNy8xMi81IDY6NTkNCiAgMTQw
ayAyMDA3LzA5LzE5IEM6XGN5Z3dpblxiaW5cY3lnc3ZuX2NsaWVudC0xLTAu
ZGxsIC0gb3M9NC4wIGltZz0xLjAgc3lzPTQuMA0KICAgICAgICAgICAgICAg
ICAgImN5Z3N2bl9jbGllbnQtMS0wLmRsbCIgdjAuMCB0cz0yMDA3LzkvMTkg
MTU6MTUNCiAgIDMyayAyMDA3LzA5LzE5IEM6XGN5Z3dpblxiaW5cY3lnc3Zu
X2RlbHRhLTEtMC5kbGwgLSBvcz00LjAgaW1nPTEuMCBzeXM9NC4wDQogICAg
ICAgICAgICAgICAgICAiY3lnc3ZuX2RlbHRhLTEtMC5kbGwiIHYwLjAgdHM9
MjAwNy85LzE5IDE1OjExDQogICAyNmsgMjAwNy8wOS8xOSBDOlxjeWd3aW5c
YmluXGN5Z3N2bl9kaWZmLTEtMC5kbGwgLSBvcz00LjAgaW1nPTEuMCBzeXM9
NC4wDQogICAgICAgICAgICAgICAgICAiY3lnc3ZuX2RpZmYtMS0wLmRsbCIg
djAuMCB0cz0yMDA3LzkvMTkgMTU6MTQNCiAgIDE0ayAyMDA3LzA5LzE5IEM6
XGN5Z3dpblxiaW5cY3lnc3ZuX2ZzLTEtMC5kbGwgLSBvcz00LjAgaW1nPTEu
MCBzeXM9NC4wDQogICAgICAgICAgICAgICAgICAiY3lnc3ZuX2ZzLTEtMC5k
bGwiIHYwLjAgdHM9MjAwNy85LzE5IDE1OjEyDQogIDEyOGsgMjAwNy8wOS8x
OSBDOlxjeWd3aW5cYmluXGN5Z3N2bl9mc19iYXNlLTEtMC5kbGwgLSBvcz00
LjAgaW1nPTEuMCBzeXM9NC4wDQogICAgICAgICAgICAgICAgICAiY3lnc3Zu
X2ZzX2Jhc2UtMS0wLmRsbCIgdjAuMCB0cz0yMDA3LzkvMTkgMTU6MTINCiAg
IDg3ayAyMDA3LzA5LzE5IEM6XGN5Z3dpblxiaW5cY3lnc3ZuX2ZzX2ZzLTEt
MC5kbGwgLSBvcz00LjAgaW1nPTEuMCBzeXM9NC4wDQogICAgICAgICAgICAg
ICAgICAiY3lnc3ZuX2ZzX2ZzLTEtMC5kbGwiIHYwLjAgdHM9MjAwNy85LzE5
IDE1OjExDQogICAxMWsgMjAwNy8wOS8xOSBDOlxjeWd3aW5cYmluXGN5Z3N2
bl9yYS0xLTAuZGxsIC0gb3M9NC4wIGltZz0xLjAgc3lzPTQuMA0KICAgICAg
ICAgICAgICAgICAgImN5Z3N2bl9yYS0xLTAuZGxsIiB2MC4wIHRzPTIwMDcv
OS8xOSAxNToxNQ0KICAgOTNrIDIwMDcvMDkvMTkgQzpcY3lnd2luXGJpblxj
eWdzdm5fcmFfZGF2LTEtMC5kbGwgLSBvcz00LjAgaW1nPTEuMCBzeXM9NC4w
DQogICAgICAgICAgICAgICAgICAiY3lnc3ZuX3JhX2Rhdi0xLTAuZGxsIiB2
MC4wIHRzPTIwMDcvOS8xOSAxNToxNA0KICAgMjBrIDIwMDcvMDkvMTkgQzpc
Y3lnd2luXGJpblxjeWdzdm5fcmFfbG9jYWwtMS0wLmRsbCAtIG9zPTQuMCBp
bWc9MS4wIHN5cz00LjANCiAgICAgICAgICAgICAgICAgICJjeWdzdm5fcmFf
bG9jYWwtMS0wLmRsbCIgdjAuMCB0cz0yMDA3LzkvMTkgMTU6MTINCiAgIDYx
ayAyMDA3LzA5LzE5IEM6XGN5Z3dpblxiaW5cY3lnc3ZuX3JhX3N2bi0xLTAu
ZGxsIC0gb3M9NC4wIGltZz0xLjAgc3lzPTQuMA0KICAgICAgICAgICAgICAg
ICAgImN5Z3N2bl9yYV9zdm4tMS0wLmRsbCIgdjAuMCB0cz0yMDA3LzkvMTkg
MTU6MTMNCiAgMTEwayAyMDA3LzA5LzE5IEM6XGN5Z3dpblxiaW5cY3lnc3Zu
X3JlcG9zLTEtMC5kbGwgLSBvcz00LjAgaW1nPTEuMCBzeXM9NC4wDQogICAg
ICAgICAgICAgICAgICAiY3lnc3ZuX3JlcG9zLTEtMC5kbGwiIHYwLjAgdHM9
MjAwNy85LzE5IDE1OjEyDQogIDE1OWsgMjAwNy8wOS8xOSBDOlxjeWd3aW5c
YmluXGN5Z3N2bl9zdWJyLTEtMC5kbGwgLSBvcz00LjAgaW1nPTEuMCBzeXM9
NC4wDQogICAgICAgICAgICAgICAgICAiY3lnc3ZuX3N1YnItMS0wLmRsbCIg
djAuMCB0cz0yMDA3LzkvMTkgMTU6MTENCiAgMTc1ayAyMDA3LzA5LzE5IEM6
XGN5Z3dpblxiaW5cY3lnc3ZuX3djLTEtMC5kbGwgLSBvcz00LjAgaW1nPTEu
MCBzeXM9NC4wDQogICAgICAgICAgICAgICAgICAiY3lnc3ZuX3djLTEtMC5k
bGwiIHYwLjAgdHM9MjAwNy85LzE5IDE1OjE0DQogICAyMmsgMjAwOC8wMi8y
NCBDOlxjeWd3aW5cYmluXGN5Z3dyYXAtMC5kbGwgLSBvcz00LjAgaW1nPTEu
MCBzeXM9NC4wDQogICAgICAgICAgICAgICAgICAiY3lnd3JhcC0wLmRsbCIg
djAuMCB0cz0yMDA4LzIvMjIgMjM6MDMNCiAxMDY5ayAyMDA3LzA1LzIyIEM6
XGN5Z3dpblxiaW5cY3lneG1sMi0yLmRsbCAtIG9zPTQuMCBpbWc9MS4wIHN5
cz00LjANCiAgICAgICAgICAgICAgICAgICJjeWd4bWwyLTIuZGxsIiB2MC4w
IHRzPTIwMDcvNS8yMSAyMzo0OQ0KICAyMDBrIDIwMDcvMDUvMjIgQzpcY3ln
d2luXGJpblxjeWd4c2x0LTEuZGxsIC0gb3M9NC4wIGltZz0xLjAgc3lzPTQu
MA0KICAgICAgICAgICAgICAgICAgImN5Z3hzbHQtMS5kbGwiIHYwLjAgdHM9
MjAwNy81LzIyIDk6MDgNCiAgIDY1ayAyMDA2LzEwLzE2IEM6XGN5Z3dpblxi
aW5cY3lnei5kbGwgLSBvcz00LjAgaW1nPTEuMCBzeXM9NC4wDQogICAgICAg
ICAgICAgICAgICAiY3lnei5kbGwiIHYwLjAgdHM9MjAwNi8xMC8xNSAxODox
MA0KIDE4MjlrIDIwMDgvMDQvMTcgQzpcY3lnd2luXGJpblxjeWd3aW4xLmRs
bCAtIG9zPTQuMCBpbWc9MS4wIHN5cz00LjANCiAgICAgICAgICAgICAgICAg
ICJjeWd3aW4xLmRsbCIgdjAuMCB0cz0yMDA4LzQvMTcgMzoxMQ0KICAgIEN5
Z3dpbiBETEwgdmVyc2lvbiBpbmZvOg0KICAgICAgICBETEwgdmVyc2lvbjog
MS41LjI1DQogICAgICAgIERMTCBlcG9jaDogMTkNCiAgICAgICAgRExMIGJh
ZCBzaWduYWwgbWFzazogMTkwMDUNCiAgICAgICAgRExMIG9sZCB0ZXJtaW9z
OiA1DQogICAgICAgIERMTCBtYWxsb2MgZW52OiAyOA0KICAgICAgICBBUEkg
bWFqb3I6IDANCiAgICAgICAgQVBJIG1pbm9yOiAxNTYNCiAgICAgICAgU2hh
cmVkIGRhdGE6IDQNCiAgICAgICAgRExMIGlkZW50aWZpZXI6IGN5Z3dpbjEN
CiAgICAgICAgTW91bnQgcmVnaXN0cnk6IDINCiAgICAgICAgQ3lnbnVzIHJl
Z2lzdHJ5IG5hbWU6IEN5Z251cyBTb2x1dGlvbnMNCiAgICAgICAgQ3lnd2lu
IHJlZ2lzdHJ5IG5hbWU6IEN5Z3dpbg0KICAgICAgICBQcm9ncmFtIG9wdGlv
bnMgbmFtZTogUHJvZ3JhbSBPcHRpb25zDQogICAgICAgIEN5Z3dpbiBtb3Vu
dCByZWdpc3RyeSBuYW1lOiBtb3VudHMgdjINCiAgICAgICAgQ3lnZHJpdmUg
ZmxhZ3M6IGN5Z2RyaXZlIGZsYWdzDQogICAgICAgIEN5Z2RyaXZlIHByZWZp
eDogY3lnZHJpdmUgcHJlZml4DQogICAgICAgIEN5Z2RyaXZlIGRlZmF1bHQg
cHJlZml4OiANCiAgICAgICAgQnVpbGQgZGF0ZTogVGh1IEFwciAxNyAxMjox
MTowMyBDRVNUIDIwMDgNCiAgICAgICAgQ1ZTIHRhZzogY3ItMHg1ZjENCiAg
ICAgICAgU2hhcmVkIGlkOiBjeWd3aW4xUzQNCg0KDQpQb3RlbnRpYWwgYXBw
IGNvbmZsaWN0czoNCg0KU29uaWMgU29sdXRpb25zIGJ1cm5pbmcgc29mdHdh
cmUgY29udGFpbmluZyBETEEgY29tcG9uZW50DQpEZXRlY3RlZDogTmFtZWQg
cHJvY2Vzcy4NCg0KWm9uZUFsYXJtIFBlcnNvbmFsIEZpcmV3YWxsDQpEZXRl
Y3RlZDogSEtMTSBSZWdpc3RyeSBLZXksIE5hbWVkIGZpbGUuDQoNCg0KU2Vy
dmljZSAgICAgICAgICAgICA6IGN5Z3NlcnZlcg0KRGlzcGxheSBuYW1lICAg
ICAgICA6IENZR1dJTiBjeWdzZXJ2ZXINCkN1cnJlbnQgU3RhdGUgICAgICAg
OiBSdW5uaW5nDQpDb250cm9scyBBY2NlcHRlZCAgIDogU3RvcA0KQ29tbWFu
ZCAgICAgICAgICAgICA6IC91c3Ivc2Jpbi9jeWdzZXJ2ZXINCnN0ZGluIHBh
dGggICAgICAgICAgOiAvZGV2L251bGwNCnN0ZG91dCBwYXRoICAgICAgICAg
OiAvdmFyL2xvZy9jeWdzZXJ2ZXIubG9nDQpzdGRlcnIgcGF0aCAgICAgICAg
IDogL3Zhci9sb2cvY3lnc2VydmVyLmxvZw0KUHJvY2VzcyBUeXBlICAgICAg
ICA6IE93biBQcm9jZXNzDQpTdGFydHVwICAgICAgICAgICAgIDogQXV0b21h
dGljDQpBY2NvdW50ICAgICAgICAgICAgIDogTG9jYWxTeXN0ZW0NCg0KU2Vy
dmljZSAgICAgICAgICAgICA6IHN0dW5uZWwNCkRpc3BsYXkgbmFtZSAgICAg
ICAgOiBDWUdXSU4gc3R1bm5lbCBmb3IgR01BSUwNCkN1cnJlbnQgU3RhdGUg
ICAgICAgOiBTdG9wcGVkDQpDb21tYW5kICAgICAgICAgICAgIDogL3Vzci9i
aW4vc3R1bm5lbCAvZXRjL3N0dW5uZWwvY2xpZW50LXN0dW5uZWwuY29uZg0K
c3RkaW4gcGF0aCAgICAgICAgICA6IC9kZXYvbnVsbA0Kc3Rkb3V0IHBhdGgg
ICAgICAgICA6IC92YXIvbG9nL3N0dW5uZWwubG9nDQpzdGRlcnIgcGF0aCAg
ICAgICAgIDogL3Zhci9sb2cvc3R1bm5lbC5sb2cNClByb2Nlc3MgVHlwZSAg
ICAgICAgOiBPd24gUHJvY2Vzcw0KU3RhcnR1cCAgICAgICAgICAgICA6IEF1
dG9tYXRpYw0KQWNjb3VudCAgICAgICAgICAgICA6IExvY2FsU3lzdGVtDQoN
ClNlcnZpY2UgICAgICAgICAgICAgOiBzeXNsb2dkDQpEaXNwbGF5IG5hbWUg
ICAgICAgIDogQ1lHV0lOIHN5c2xvZ2QNCkN1cnJlbnQgU3RhdGUgICAgICAg
OiBSdW5uaW5nDQpDb250cm9scyBBY2NlcHRlZCAgIDogU3RvcA0KQ29tbWFu
ZCAgICAgICAgICAgICA6IC91c3Ivc2Jpbi9zeXNsb2dkIC1EDQpzdGRpbiBw
YXRoICAgICAgICAgIDogL2Rldi9udWxsDQpzdGRvdXQgcGF0aCAgICAgICAg
IDogL3Zhci9sb2cvc3lzbG9nZC5sb2cNCnN0ZGVyciBwYXRoICAgICAgICAg
OiAvdmFyL2xvZy9zeXNsb2dkLmxvZw0KUHJvY2VzcyBUeXBlICAgICAgICA6
IE93biBQcm9jZXNzDQpTdGFydHVwICAgICAgICAgICAgIDogQXV0b21hdGlj
DQpBY2NvdW50ICAgICAgICAgICAgIDogTG9jYWxTeXN0ZW0NCg0KDQpDeWd3
aW4gUGFja2FnZSBJbmZvcm1hdGlvbg0KTGFzdCBkb3dubG9hZGVkIGZpbGVz
IHRvOiBjOlxjeWd3aW5cRG93bmxvYWRzDQpMYXN0IGRvd25sb2FkZWQgZmls
ZXMgZnJvbTogaHR0cDovL21pcnJvcnMua2VybmVsLm9yZy9zb3VyY2V3YXJl
L2N5Z3dpbg0KDQpQYWNrYWdlICAgICAgICAgICAgICBWZXJzaW9uDQpfdXBk
YXRlLWluZm8tZGlyICAgICAwMDcyNi0xDQphbHRlcm5hdGl2ZXMgICAgICAg
ICAxLjMuMzBjLTENCmFzaCAgICAgICAgICAgICAgICAgIDIwMDQwMTI3LTMN
CmF1dG9zc2ggICAgICAgICAgICAgIDEuNGEtMQ0KYmFzZS1maWxlcyAgICAg
ICAgICAgMy43LTENCmJhc2UtcGFzc3dkICAgICAgICAgIDIuMi0xDQpiYXNo
ICAgICAgICAgICAgICAgICAzLjIuMzMtMTgNCmJpbnV0aWxzICAgICAgICAg
ICAgIDIwMDYwODE3LTENCmJ6aXAyICAgICAgICAgICAgICAgIDEuMC41LTIN
CmNoa2NvbmZpZyAgICAgICAgICAgIDEuMy4zMGEtMQ0KY29yZXV0aWxzICAg
ICAgICAgICAgNi4xMC0xDQpjcnlwdCAgICAgICAgICAgICAgICAxLjEtMQ0K
Y3NpaCAgICAgICAgICAgICAgICAgMC4xLjQtMQ0KY3RhZ3MgICAgICAgICAg
ICAgICAgNS43LTENCmN1cmwgICAgICAgICAgICAgICAgIDcuMTYuMy0xDQpj
dnMgICAgICAgICAgICAgICAgICAxLjExLjIyLTENCmN5Z3J1bnNydiAgICAg
ICAgICAgIDEuMzQtMQ0KY3lndXRpbHMgICAgICAgICAgICAgMS4zLjItMQ0K
Y3lnd2luICAgICAgICAgICAgICAgMS41LjI1LTEyDQpjeWd3aW4tZG9jICAg
ICAgICAgICAxLjQtNA0KZGlmZnV0aWxzICAgICAgICAgICAgMi44LjctMQ0K
ZG9jYm9vay14bWw0MiAgICAgICAgNC4yLTMNCmRvY2Jvb2steHNsICAgICAg
ICAgIDEuNjkuMS0xDQplMmZzcHJvZ3MgICAgICAgICAgICAxLjM1LTMNCmVk
aXRyaWdodHMgICAgICAgICAgIDEuMDEtMg0KZXhwYXQgICAgICAgICAgICAg
ICAgMS45NS44LTINCmZpbGUgICAgICAgICAgICAgICAgIDQuMjEtMQ0KZmlu
ZHV0aWxzICAgICAgICAgICAgNC40LjAtMQ0KZ2F3ayAgICAgICAgICAgICAg
ICAgMy4xLjYtMQ0KZ2NjICAgICAgICAgICAgICAgICAgMy40LjQtMw0KZ2Nj
LWNvcmUgICAgICAgICAgICAgMy40LjQtMw0KZ2NjLWcrKyAgICAgICAgICAg
ICAgMy40LjQtMw0KZ2NjLW1pbmd3LWNvcmUgICAgICAgMjAwNTA1MjItMQ0K
Z2NjLW1pbmd3LWcrKyAgICAgICAgMjAwNTA1MjItMQ0KZ2RiICAgICAgICAg
ICAgICAgICAgNi44LTINCmdyZXAgICAgICAgICAgICAgICAgIDIuNS4xYS00
DQpncm9mZiAgICAgICAgICAgICAgICAxLjE4LjEtMg0KZ3ppcCAgICAgICAg
ICAgICAgICAgMS4zLjEyLTINCmhleGVkaXQgICAgICAgICAgICAgIDEuMi4x
Mi0xDQppbmV0dXRpbHMgICAgICAgICAgICAxLjMuMi00MA0KaW5pdHNjcmlw
dHMgICAgICAgICAgMC45LTINCmxlc3MgICAgICAgICAgICAgICAgIDM4Mi0x
DQpsaWJhcHIxICAgICAgICAgICAgICAxLjIuMTEtMQ0KbGliYXBydXRpbDEg
ICAgICAgICAgMS4yLjEwLTENCmxpYmJ6Ml8xICAgICAgICAgICAgIDEuMC41
LTINCmxpYmN1cmw0ICAgICAgICAgICAgIDcuMTYuMy0xDQpsaWJkYjQuMiAg
ICAgICAgICAgICA0LjIuNTIuNS0yDQpsaWJkYjQuNSAgICAgICAgICAgICA0
LjUuMjAuMi0yDQpsaWJleHBhdDAgICAgICAgICAgICAxLjk1LjgtMg0KbGli
Z2NyeXB0ICAgICAgICAgICAgMS40LjAtMQ0KbGliZ2RibTQgICAgICAgICAg
ICAgMS44LjMtOA0KbGliZ3BnLWVycm9yICAgICAgICAgMS42LTENCmxpYmlj
b252MiAgICAgICAgICAgIDEuMTEtMQ0KbGliaW50bDIgICAgICAgICAgICAg
MC4xMi4xLTMNCmxpYmludGwzICAgICAgICAgICAgIDAuMTQuNS0xDQpsaWJp
bnRsOCAgICAgICAgICAgICAwLjE1LTENCmxpYm5jdXJzZXM4ICAgICAgICAg
IDUuNS0zDQpsaWJuZW9uMjYgICAgICAgICAgICAwLjI2LjQtMQ0KbGlicGNy
ZTAgICAgICAgICAgICAgNy4yLTENCmxpYnBvcHQwICAgICAgICAgICAgIDEu
Ni40LTQNCmxpYnJlYWRsaW5lNiAgICAgICAgIDUuMi4xMi0xMA0KbGlic3No
Ml8xICAgICAgICAgICAgMC4xNS0xDQpsaWJ3cmFwMCAgICAgICAgICAgICA3
LjYtNA0KbGlieG1sMiAgICAgICAgICAgICAgMi42LjI4LTINCmxpYnhzbHQg
ICAgICAgICAgICAgIDEuMS4yMC0yDQpsb2dpbiAgICAgICAgICAgICAgICAx
LjktNw0KbWFrZSAgICAgICAgICAgICAgICAgMy44MS0yDQptYW4gICAgICAg
ICAgICAgICAgICAxLjZlLTENCm1pbmd3LXJ1bnRpbWUgICAgICAgIDMuMTQt
MQ0KbWluaXJlcyAgICAgICAgICAgICAgMS4wMS0xDQpta3RlbXAgICAgICAg
ICAgICAgICAxLjUtNA0KbmV0Y2F0ICAgICAgICAgICAgICAgMS4xMC0yDQpv
cGVuc3NoICAgICAgICAgICAgICA1LjBwMS0xDQpvcGVuc3NsICAgICAgICAg
ICAgICAwLjkuOGctMQ0KcGVybCAgICAgICAgICAgICAgICAgNS44LjgtNA0K
cGluZyAgICAgICAgICAgICAgICAgMS4wLTENCnByb2NwcyAgICAgICAgICAg
ICAgIDMuMi43LTENCnBzbWlzYyAgICAgICAgICAgICAgIDIxLjUtMw0KcmVi
YXNlICAgICAgICAgICAgICAgMi40LjMtMQ0KcnVuICAgICAgICAgICAgICAg
ICAgMS4xLjEwLTENCnNlZCAgICAgICAgICAgICAgICAgIDQuMS41LTINCnNo
YXJ1dGlscyAgICAgICAgICAgIDQuNy0xDQpzdHVubmVsICAgICAgICAgICAg
ICA0LjIxLTENCnN1YnZlcnNpb24gICAgICAgICAgIDEuNC41LTINCnN5c3Zp
bml0ICAgICAgICAgICAgIDIuODYtMw0KdGFyICAgICAgICAgICAgICAgICAg
MS4yMC0xDQp0Y2x0ayAgICAgICAgICAgICAgICAyMDA4MDQyMC0xDQp0ZXJt
Y2FwICAgICAgICAgICAgICAyMDA1MDQyMS0xDQp0ZXJtaW5mbyAgICAgICAg
ICAgICA1LjVfMjAwNjExMDQtMQ0KdGV4aW5mbyAgICAgICAgICAgICAgNC44
YS0xDQp0aW1lICAgICAgICAgICAgICAgICAxLjctMQ0KdHpjb2RlICAgICAg
ICAgICAgICAgMjAwN2gtMg0KdW56aXAgICAgICAgICAgICAgICAgNS41Mi0y
DQp1dGlsLWxpbnV4ICAgICAgICAgICAyLjEzLjEtMg0KdmltICAgICAgICAg
ICAgICAgICAgNy4xLTENCnczMmFwaSAgICAgICAgICAgICAgIDMuMTEtMQ0K
d2dldCAgICAgICAgICAgICAgICAgMS4xMC4yLTINCndoaWNoICAgICAgICAg
ICAgICAgIDIuMTktMQ0Kd2hvaXMgICAgICAgICAgICAgICAgNC43LjI0LTEN
CndwdXQgICAgICAgICAgICAgICAgIDAuNi4xLTINCnhpbmV0ZCAgICAgICAg
ICAgICAgIDIuMy45LTENCnhtbHRvICAgICAgICAgICAgICAgIDAuMC4xOC0y
DQp6aXAgICAgICAgICAgICAgICAgICAyLjMyLTINCnpsaWIgICAgICAgICAg
ICAgICAgIDEuMi4zLTINClVzZSAtaCB0byBzZWUgaGVscCBhYm91dCBlYWNo
IHNlY3Rpb24NCg==


--_005_FE57175CCE23E5419899C1B0CFA26FAD0C4160951DEXMBXSDdmsole_
Content-Type: text/plain; charset=us-ascii

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/
--_005_FE57175CCE23E5419899C1B0CFA26FAD0C4160951DEXMBXSDdmsole_--

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019