Re: [BLACKBOX] Program freezes when window loses focus
----boundary-LibPST-iamunique-1424365729_-_-
Content-type: text/plain
Chris Burrows, you da MAN!!! I added your PROCEDURE ProcessMessages to my program. Now when I do anything to make the display form/window lose focus while the program is running, it staggers a little, but then resumes running! Undoubtedly I will have to experiment and tweak it a bit, but this basically seems to solve my problem. THANKS!!!
Steve Troy
-------- Original Message --------
Subject: Re: [BLACKBOX] Program freezes when window loses focus
From: Chris Burrows >I have a long running command (about 15 min) and in order to show that
>it makes progress, I call Dialog.ShowStatus, which displays a message
>in the status bar at the bottom of the application window.
>
>This works fine as long as there is no event being sent to the
>application e.g. by clicking the mouse or pressing a key.
>If such an event occurs, the status bar stops being updated after about
>5 seconds and the application appears to be completely frozen until the
>command terminates.
>This confuses the users and it confuses even me.
>
-----------------------------------------------------
My response:
AFAIK, the proper solution for this sort of problem is to use multiple /
background threads. However, a less elegant but easier and possibly
effective solution is to periodically process the Windows Message queue. The
following example should help you get started:
MODULE TestLong;
IMPORT Dialog, Strings, Win := WinApi;
PROCEDURE ProcessMessages;
VAR msg: Win.MSG; res: INTEGER;
BEGIN
WHILE Win.PeekMessage(msg, 0, 0, 0, Win.PM_REMOVE) # 0 DO
res := Win.TranslateMessage(msg);
res := Win.DispatchMessageA(msg)
END
END ProcessMessages;
PROCEDURE Do*;
VAR i, j: INTEGER; s: ARRAY 20 OF CHAR; BEGIN
FOR i := 0 TO 300 DO
ProcessMessages;
FOR j := 0 TO 10000000 DO
END ;
Strings.IntToString(i, s);
Dialog.ShowStatus("msg " + s)
END
END Do;
END TestLong.
P.S. My system must be faster than yours - I had to increase the j loop by a
factor of 10 to 100000000 to actually test it!
-----------------------------------------------------
So try putting a call to ProcessMessages at a suitable position in your
processing loop so that it will get called at least a few times a second,
Regards,
Chris Burrows
CFB Software
Astrobe v3.3: ARM Oberon-07 Development System
http://www.astrobe.com
----
To unsubscribe, send a message with body "SIGNOFF BLACKBOX" to LISTSERV{([at]})nowhere.xy
---- To unsubscribe, send a message with body "SIGNOFF BLACKBOX" to LISTSERV{([at]})nowhere.xy
----boundary-LibPST-iamunique-1424365729_-_-
Content-type: application/rtf
Content-transfer-encoding: base64
Content-Disposition: attachment; filename="rtf-body.rtf"
e1xydGYxXGFuc2lcYW5zaWNwZzEyNTJcZnJvbWh0bWwxIFxkZWZmMHtcZm9udHRibA0Ke1xmMFxm
c3dpc3NcZmNoYXJzZXQwIEFyaWFsO30NCntcZjFcZm1vZGVybiBDb3VyaWVyIE5ldzt9DQp7XGYy
XGZuaWxcZmNoYXJzZXQyIFN5bWJvbDt9DQp7XGYzXGZtb2Rlcm5cZmNoYXJzZXQwIENvdXJpZXIg
TmV3O319DQp7XGNvbG9ydGJsXHJlZDBcZ3JlZW4wXGJsdWUwO1xyZWQwXGdyZWVuMFxibHVlMjU1
O30NClx1YzFccGFyZFxwbGFpblxkZWZ0YWIzNjAgXGYwXGZzMjQgDQp7XCpcaHRtbHRhZzE5IDxo
dG1sPn0NCntcKlxodG1sdGFnNTAgPGJvZHk+fXtcKlxodG1sdGFnNjR9XGh0bWxydGYge1xodG1s
cnRmMCANCntcKlxodG1sdGFnODQgPHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OlZlcmRhbmE7IGNv
bG9yOiMwMDAwMDA7IGZvbnQtc2l6ZToxMHB0OyI+fVxodG1scnRmIHtcaHRtbHJ0ZjAgXGh0bWxy
dGYgfVxodG1scnRmMCB7XCpcaHRtbHRhZzcyfVxodG1scnRmfVxodG1scnRmMA0KDQp7XCpcaHRt
bHRhZzk2IDxkaXY+fVxodG1scnRmIHtcaHRtbHJ0ZjAge1wqXGh0bWx0YWc2NH1caHRtbHJ0ZiB7
XGh0bWxydGYwIFxodG1scnRmIHtcaHRtbHJ0ZjAgQ2hyaXMgQnVycm93cywgeW91IGRhIE1BTiEh
IQ0Ke1wqXGh0bWx0YWc4NCAmbmJzcDt9XGh0bWxydGYgXCdhMFxodG1scnRmMCAgSSBhZGRlZCB5
b3VyIFBST0NFRFVSRSBQcm9jZXNzTWVzc2FnZXMgdG8gbXkgcHJvZ3JhbS4NCntcKlxodG1sdGFn
ODQgJm5ic3A7fVxodG1scnRmIFwnYTBcaHRtbHJ0ZjAgIE5vdyB3aGVuIEkgZG8gYW55dGhpbmcg
dG8gbWFrZSB0aGUgZGlzcGxheSBmb3JtL3dpbmRvdyBsb3NlIGZvY3VzIHdoaWxlIHRoZSBwcm9n
cmFtIGlzIHJ1bm5pbmcsIGl0IHN0YWdnZXJzIGEgbGl0dGxlLCBidXQgdGhlbiByZXN1bWVzIHJ1
bm5pbmchDQp7XCpcaHRtbHRhZzg0ICZuYnNwO31caHRtbHJ0ZiBcJ2EwXGh0bWxydGYwICBVbmRv
dWJ0ZWRseSBJIHdpbGwgaGF2ZSB0byBleHBlcmltZW50IGFuZCB0d2VhayBpdCBhIGJpdCwgYnV0
IHRoaXMgYmFzaWNhbGx5IHNlZW1zIHRvIHNvbHZlIG15IHByb2JsZW0uDQp7XCpcaHRtbHRhZzg0
ICZuYnNwO31caHRtbHJ0ZiBcJ2EwXGh0bWxydGYwICBUSEFOS1MhISFcaHRtbHJ0ZiB9XGh0bWxy
dGYwIHtcKlxodG1sdGFnNzJ9XGh0bWxydGZccGFyfVxodG1scnRmMA0KDQp7XCpcaHRtbHRhZzEw
NCA8L2Rpdj59XGh0bWxydGYgfVxodG1scnRmMCANCntcKlxodG1sdGFnOTYgPGRpdj59XGh0bWxy
dGYge1xodG1scnRmMCB7XCpcaHRtbHRhZzY0fVxodG1scnRmIHtcaHRtbHJ0ZjAgXGh0bWxydGYg
e1xodG1scnRmMCBTdGV2ZSBUcm95DQp7XCpcaHRtbHRhZzExNiA8YnI+fVxodG1scnRmIFxsaW5l
DQpcaHRtbHJ0ZjAgXGh0bWxydGYgfVxodG1scnRmMCB7XCpcaHRtbHRhZzcyfVxodG1scnRmXHBh
cn1caHRtbHJ0ZjANCg0Ke1wqXGh0bWx0YWcxMDQgPC9kaXY+fVxodG1scnRmIH1caHRtbHJ0ZjAg
DQp7XCpcaHRtbHRhZzAgXHBhciB9DQp7XCpcaHRtbHRhZzk2IDxibG9ja3F1b3RlIGlkPSJyZXBs
eUJsb2NrcXVvdGUiIHdlYm1haWw9IjEiIHN0eWxlPSJib3JkZXItbGVmdDogMnB4IHNvbGlkIGJs
dWU7IG1hcmdpbi1sZWZ0OiA4cHg7IHBhZGRpbmctbGVmdDogOHB4OyBmb250LXNpemU6MTBwdDsg
Y29sb3I6YmxhY2s7IGZvbnQtZmFtaWx5OnZlcmRhbmE7Ij59XGh0bWxydGYgXHBhcg0Ke1xodG1s
cnRmMCANCntcKlxodG1sdGFnMCBccGFyIH0NCntcKlxodG1sdGFnOTYgPGRpdiBpZD0id21RdW90
ZVdyYXBwZXIiPn1caHRtbHJ0ZiB7XGh0bWxydGYwIA0Ke1wqXGh0bWx0YWcwIFxwYXIgfXtcKlxo
dG1sdGFnNjR9XGh0bWxydGYge1xodG1scnRmMCBcbGkzNjAgXGh0bWxydGYge1xodG1scnRmMCAt
LS0tLS0tLSBPcmlnaW5hbCBNZXNzYWdlIC0tLS0tLS0tDQp7XCpcaHRtbHRhZzExNiA8YnI+fVxo
dG1scnRmIFxsaW5lDQpcaHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzQgXHBhciB9U3ViamVjdDogUmU6
IFtCTEFDS0JPWF0gUHJvZ3JhbSBmcmVlemVzIHdoZW4gd2luZG93IGxvc2VzIGZvY3VzDQp7XCpc
aHRtbHRhZzExNiA8YnI+fVxodG1scnRmIFxsaW5lDQpcaHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzQg
XHBhciB9RnJvbTogQ2hyaXMgQnVycm93cyANCntcKlxodG1sdGFnODQgJmx0O31caHRtbHJ0ZiA8
XGh0bWxydGYwIA0Ke1wqXGh0bWx0YWc4NCA8YSBocmVmPSJtYWlsdG86Y2hyaXNAQ0ZCU09GVFdB
UkUuQ09NIj59XGh0bWxydGYge1xmaWVsZHtcKlxmbGRpbnN0e0hZUEVSTElOSyAibWFpbHRvOmNo
cmlzQENGQlNPRlRXQVJFLkNPTSJ9fXtcZmxkcnNsdFxjZjFcdWwgXGh0bWxydGYwIGNocmlzQENG
QlNPRlRXQVJFLkNPTVxodG1scnRmIH1caHRtbHJ0ZjAgXGh0bWxydGYgfVxodG1scnRmMCANCntc
KlxodG1sdGFnOTIgPC9hPn0NCntcKlxodG1sdGFnODQgJmd0O31caHRtbHJ0ZiA+XGh0bWxydGYw
IA0Ke1wqXGh0bWx0YWcxMTYgPGJyPn1caHRtbHJ0ZiBcbGluZQ0KXGh0bWxydGYwIA0Ke1wqXGh0
bWx0YWc0IFxwYXIgfURhdGU6IFR1ZSwgTWFyY2ggMTUsIDIwMTEgNjoxOCBwbQ0Ke1wqXGh0bWx0
YWcxMTYgPGJyPn1caHRtbHJ0ZiBcbGluZQ0KXGh0bWxydGYwIA0Ke1wqXGh0bWx0YWc0IFxwYXIg
fVRvOiANCntcKlxodG1sdGFnODQgPGEgaHJlZj0ibWFpbHRvOkJMQUNLQk9YQExJU1RTLk9CRVJP
Ti5DSCI+fVxodG1scnRmIHtcZmllbGR7XCpcZmxkaW5zdHtIWVBFUkxJTksgIm1haWx0bzpCTEFD
S0JPWEBMSVNUUy5PQkVST04uQ0gifX17XGZsZHJzbHRcY2YxXHVsIFxodG1scnRmMCBCTEFDS0JP
WEBMSVNUUy5PQkVST04uQ0hcaHRtbHJ0ZiB9XGh0bWxydGYwIFxodG1scnRmIH1caHRtbHJ0ZjAg
DQp7XCpcaHRtbHRhZzkyIDwvYT59DQp7XCpcaHRtbHRhZzExNiA8YnI+fVxodG1scnRmIFxsaW5l
DQpcaHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzQgXHBhciB9DQp7XCpcaHRtbHRhZzExNiA8YnI+fVxo
dG1scnRmIFxsaW5lDQpcaHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzQgXHBhciB9X19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX18NCntcKlxodG1sdGFnMTE2IDxicj59XGh0bWxydGYgXGxpbmUN
ClxodG1scnRmMCANCntcKlxodG1sdGFnNCBccGFyIH0NCntcKlxodG1sdGFnMTE2IDxicj59XGh0
bWxydGYgXGxpbmUNClxodG1scnRmMCANCntcKlxodG1sdGFnNCBccGFyIH0NCntcKlxodG1sdGFn
ODQgXHRhYiB9RnJvbTogQmxhY2tCb3ggWw0Ke1wqXGh0bWx0YWc4NCA8YSBocmVmPSJtYWlsdG86
QkxBQ0tCT1hATElTVFMuT0JFUk9OLkNIIj59XGh0bWxydGYge1xmaWVsZHtcKlxmbGRpbnN0e0hZ
UEVSTElOSyAibWFpbHRvOkJMQUNLQk9YQExJU1RTLk9CRVJPTi5DSCJ9fXtcZmxkcnNsdFxjZjFc
dWwgXGh0bWxydGYwIG1haWx0bzpCTEFDS0JPWEBMSVNUUy5PQkVST04uQ0hcaHRtbHJ0ZiB9XGh0
bWxydGYwIFxodG1scnRmIH1caHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzkyIDwvYT59XSBPbiBCZWhh
bGYgT2YNCntcKlxodG1sdGFnMTE2IDxicj59XGh0bWxydGYgXGxpbmUNClxodG1scnRmMCANCntc
KlxodG1sdGFnNCBccGFyIH1TdGVwaGVuIFIuIFRyb3kNCntcKlxodG1sdGFnMTE2IDxicj59XGh0
bWxydGYgXGxpbmUNClxodG1scnRmMCANCntcKlxodG1sdGFnNCBccGFyIH0NCntcKlxodG1sdGFn
ODQgXHRhYiB9U2VudDogV2VkbmVzZGF5LCAxNiBNYXJjaCAyMDExIDc6NTAgQU0NCntcKlxodG1s
dGFnMTE2IDxicj59XGh0bWxydGYgXGxpbmUNClxodG1scnRmMCANCntcKlxodG1sdGFnNCBccGFy
IH0NCntcKlxodG1sdGFnODQgXHRhYiB9VG86IA0Ke1wqXGh0bWx0YWc4NCA8YSBocmVmPSJtYWls
dG86QkxBQ0tCT1hATElTVFMuT0JFUk9OLkNIIj59XGh0bWxydGYge1xmaWVsZHtcKlxmbGRpbnN0
e0hZUEVSTElOSyAibWFpbHRvOkJMQUNLQk9YQExJU1RTLk9CRVJPTi5DSCJ9fXtcZmxkcnNsdFxj
ZjFcdWwgXGh0bWxydGYwIEJMQUNLQk9YQExJU1RTLk9CRVJPTi5DSFxodG1scnRmIH1caHRtbHJ0
ZjAgXGh0bWxydGYgfVxodG1scnRmMCANCntcKlxodG1sdGFnOTIgPC9hPn0NCntcKlxodG1sdGFn
MTE2IDxicj59XGh0bWxydGYgXGxpbmUNClxodG1scnRmMCANCntcKlxodG1sdGFnNCBccGFyIH0N
CntcKlxodG1sdGFnODQgXHRhYiB9U3ViamVjdDogUmU6IFtCTEFDS0JPWF0gUHJvZ3JhbSBmcmVl
emVzIHdoZW4gd2luZG93IGxvc2VzIGZvY3VzDQp7XCpcaHRtbHRhZzExNiA8YnI+fVxodG1scnRm
IFxsaW5lDQpcaHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzQgXHBhciB9DQp7XCpcaHRtbHRhZzg0IFx0
YWIgfQ0Ke1wqXGh0bWx0YWcxMTYgPGJyPn1caHRtbHJ0ZiBcbGluZQ0KXGh0bWxydGYwIA0Ke1wq
XGh0bWx0YWc0IFxwYXIgfQ0Ke1wqXGh0bWx0YWc4NCBcdGFiIH0NCntcKlxodG1sdGFnMTE2IDxi
cj59XGh0bWxydGYgXGxpbmUNClxodG1scnRmMCANCntcKlxodG1sdGFnNCBccGFyIH0NCntcKlxo
dG1sdGFnODQgXHRhYiBcdGFiIH1Obywgc29ycnksIHRoYXQncyBub3QgaXQuDQp7XCpcaHRtbHRh
Zzg0ICAgfVxodG1scnRmICBcaHRtbHJ0ZjAgSSBzYWlkICJkaXNwbGF5IHdpbmRvdyIgaW4gdGhl
DQp7XCpcaHRtbHRhZzExNiA8YnI+fVxodG1scnRmIFxsaW5lDQpcaHRtbHJ0ZjAgDQp7XCpcaHRt
bHRhZzQgXHBhciB9c2FtZSBzZW5zZSBhcyB5b3Ugc2FpZCAiZm9ybSI7IGkuZS4gSSdtIGFscmVh
ZHkgZG9pbmcgdGhlIGJldHRlciB3YXkgeW91DQp7XCpcaHRtbHRhZzExNiA8YnI+fVxodG1scnRm
IFxsaW5lDQpcaHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzQgXHBhciB9c3VnZ2VzdCwgdXNpbmcgRGlh
bG9nLlVwZGF0ZSwgYW5kIHdhdGNoaW5nIHRoZSBwcm9ncmFtIGV4ZWN1dGUuDQp7XCpcaHRtbHRh
Zzg0ICAgfVxodG1scnRmICBcaHRtbHJ0ZjAgSG93ZXZlciwgaWYNCntcKlxodG1sdGFnMTE2IDxi
cj59XGh0bWxydGYgXGxpbmUNClxodG1scnRmMCANCntcKlxodG1sdGFnNCBccGFyIH1JIGRvIHNv
bWV0aGluZyB0byBsb3NlIGZvY3VzIG9uIHRoZSBkaXNwbGF5IGZvcm0sIHN1Y2ggYXMgY2xpY2sg
bW91c2UtY2xpY2sNCntcKlxodG1sdGFnMTE2IDxicj59XGh0bWxydGYgXGxpbmUNClxodG1scnRm
MCANCntcKlxodG1sdGFnNCBccGFyIH1lbHNld2hlcmUsIG9yIHN0YXJ0IGFub3RoZXIgcHJvZ3Jh
bSBvdXRzaWRlIEJsYWNrQm94LCB0aGUgcHJvZ3JhbSBmcmVlemVzLg0Ke1wqXGh0bWx0YWcxMTYg
PGJyPn1caHRtbHJ0ZiBcbGluZQ0KXGh0bWxydGYwIA0Ke1wqXGh0bWx0YWc0IFxwYXIgfUl0IGlz
IG5vdCBleGVjdXRpbmcgYW4gaW5maW5pdGUgbG9vcCwgYmVjYXVzZSBJIGFtIHRvbyBvbGQgYSBw
cm9ncmFtbWVyIGZvcg0Ke1wqXGh0bWx0YWcxMTYgPGJyPn1caHRtbHJ0ZiBcbGluZQ0KXGh0bWxy
dGYwIA0Ke1wqXGh0bWx0YWc0IFxwYXIgfXRoYXQsIEkgcHV0IHRyYXBzIHRvIGhhbHQgbG9vcHMg
dGhhdCBydW4gYW4gZXhjZXNzaXZlIG51bWJlciBvZiB0aW1lczsgaS5lLg0Ke1wqXGh0bWx0YWcx
MTYgPGJyPn1caHRtbHJ0ZiBcbGluZQ0KXGh0bWxydGYwIA0Ke1wqXGh0bWx0YWc0IFxwYXIgfWFu
IGV4Y2Vzc2l2ZSBudW1iZXIgb2YgaXRlcmF0aW9ucyBpcyBhbHdheXMgb25lIG9mIHNldmVyYWwg
ZXhpdCBjb25kaXRpb25zLg0Ke1wqXGh0bWx0YWcxMTYgPGJyPn1caHRtbHJ0ZiBcbGluZQ0KXGh0
bWxydGYwIA0Ke1wqXGh0bWx0YWc0IFxwYXIgfQ0Ke1wqXGh0bWx0YWcxMTYgPGJyPn1caHRtbHJ0
ZiBcbGluZQ0KXGh0bWxydGYwIA0Ke1wqXGh0bWx0YWc0IFxwYXIgfQ0Ke1wqXGh0bWx0YWcxMTYg
PGJyPn1caHRtbHJ0ZiBcbGluZQ0KXGh0bWxydGYwIA0Ke1wqXGh0bWx0YWc0IFxwYXIgfS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQp7XCpcaHRt
bHRhZzExNiA8YnI+fVxodG1scnRmIFxsaW5lDQpcaHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzQgXHBh
ciB9DQp7XCpcaHRtbHRhZzg0IFx0YWIgfQ0Ke1wqXGh0bWx0YWcxMTYgPGJyPn1caHRtbHJ0ZiBc
bGluZQ0KXGh0bWxydGYwIA0Ke1wqXGh0bWx0YWc0IFxwYXIgfVRoaXMgc291bmRzIHZlcnkgc2lt
aWxhciB0byBhIHByb2JsZW0gcmVwb3J0ZWQgaGVyZSBpbiBEZWMgMjAwOS4gDQp7XCpcaHRtbHRh
ZzExNiA8YnI+fVxodG1scnRmIFxsaW5lDQpcaHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzQgXHBhciB9
DQp7XCpcaHRtbHRhZzExNiA8YnI+fVxodG1scnRmIFxsaW5lDQpcaHRtbHJ0ZjAgDQp7XCpcaHRt
bHRhZzQgXHBhciB9LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0NCntcKlxodG1sdGFnMTE2IDxicj59XGh0bWxydGYgXGxpbmUNClxodG1scnRmMCAN
CntcKlxodG1sdGFnNCBccGFyIH1UaGUgcHJvYmxlbToNCntcKlxodG1sdGFnMTE2IDxicj59XGh0
bWxydGYgXGxpbmUNClxodG1scnRmMCANCntcKlxodG1sdGFnNCBccGFyIH0NCntcKlxodG1sdGFn
ODQgJmd0O31caHRtbHJ0ZiA+XGh0bWxydGYwIEkgaGF2ZSBhIGxvbmcgcnVubmluZyBjb21tYW5k
IChhYm91dCAxNSBtaW4pIGFuZCBpbiBvcmRlciB0byBzaG93IHRoYXQgDQp7XCpcaHRtbHRhZzEx
NiA8YnI+fVxodG1scnRmIFxsaW5lDQpcaHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzQgXHBhciB9DQp7
XCpcaHRtbHRhZzg0ICZndDt9XGh0bWxydGYgPlxodG1scnRmMCBpdCBtYWtlcyBwcm9ncmVzcywg
SSBjYWxsIA0Ke1wqXGh0bWx0YWc4NCA8YSBocmVmPSJodHRwOi8vRGlhbG9nLlNob3dTdGF0dXMi
Pn1caHRtbHJ0ZiB7XGZpZWxke1wqXGZsZGluc3R7SFlQRVJMSU5LICJodHRwOi8vRGlhbG9nLlNo
b3dTdGF0dXMifX17XGZsZHJzbHRcY2YxXHVsIFxodG1scnRmMCBEaWFsb2cuU2hvd1N0YXR1c1xo
dG1scnRmIH1caHRtbHJ0ZjAgXGh0bWxydGYgfVxodG1scnRmMCANCntcKlxodG1sdGFnOTIgPC9h
Pn0sIHdoaWNoIGRpc3BsYXlzIGEgbWVzc2FnZSANCntcKlxodG1sdGFnMTE2IDxicj59XGh0bWxy
dGYgXGxpbmUNClxodG1scnRmMCANCntcKlxodG1sdGFnNCBccGFyIH0NCntcKlxodG1sdGFnODQg
Jmd0O31caHRtbHJ0ZiA+XGh0bWxydGYwIGluIHRoZSBzdGF0dXMgYmFyIGF0IHRoZSBib3R0b20g
b2YgdGhlIGFwcGxpY2F0aW9uIHdpbmRvdy4NCntcKlxodG1sdGFnMTE2IDxicj59XGh0bWxydGYg
XGxpbmUNClxodG1scnRmMCANCntcKlxodG1sdGFnNCBccGFyIH0NCntcKlxodG1sdGFnODQgJmd0
O31caHRtbHJ0ZiA+XGh0bWxydGYwIA0Ke1wqXGh0bWx0YWcxMTYgPGJyPn1caHRtbHJ0ZiBcbGlu
ZQ0KXGh0bWxydGYwIA0Ke1wqXGh0bWx0YWc0IFxwYXIgfQ0Ke1wqXGh0bWx0YWc4NCAmZ3Q7fVxo
dG1scnRmID5caHRtbHJ0ZjAgVGhpcyB3b3JrcyBmaW5lIGFzIGxvbmcgYXMgdGhlcmUgaXMgbm8g
ZXZlbnQgYmVpbmcgc2VudCB0byB0aGUgDQp7XCpcaHRtbHRhZzExNiA8YnI+fVxodG1scnRmIFxs
aW5lDQpcaHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzQgXHBhciB9DQp7XCpcaHRtbHRhZzg0ICZndDt9
XGh0bWxydGYgPlxodG1scnRmMCBhcHBsaWNhdGlvbiBlLmcuIGJ5IGNsaWNraW5nIHRoZSBtb3Vz
ZSBvciBwcmVzc2luZyBhIGtleS4NCntcKlxodG1sdGFnMTE2IDxicj59XGh0bWxydGYgXGxpbmUN
ClxodG1scnRmMCANCntcKlxodG1sdGFnNCBccGFyIH0NCntcKlxodG1sdGFnODQgJmd0O31caHRt
bHJ0ZiA+XGh0bWxydGYwIElmIHN1Y2ggYW4gZXZlbnQgb2NjdXJzLCB0aGUgc3RhdHVzIGJhciBz
dG9wcyBiZWluZyB1cGRhdGVkIGFmdGVyIGFib3V0IA0Ke1wqXGh0bWx0YWcxMTYgPGJyPn1caHRt
bHJ0ZiBcbGluZQ0KXGh0bWxydGYwIA0Ke1wqXGh0bWx0YWc0IFxwYXIgfQ0Ke1wqXGh0bWx0YWc4
NCAmZ3Q7fVxodG1scnRmID5caHRtbHJ0ZjAgNSBzZWNvbmRzIGFuZCB0aGUgYXBwbGljYXRpb24g
YXBwZWFycyB0byBiZSBjb21wbGV0ZWx5IGZyb3plbiB1bnRpbCB0aGUgDQp7XCpcaHRtbHRhZzEx
NiA8YnI+fVxodG1scnRmIFxsaW5lDQpcaHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzQgXHBhciB9DQp7
XCpcaHRtbHRhZzg0ICZndDt9XGh0bWxydGYgPlxodG1scnRmMCBjb21tYW5kIHRlcm1pbmF0ZXMu
DQp7XCpcaHRtbHRhZzExNiA8YnI+fVxodG1scnRmIFxsaW5lDQpcaHRtbHJ0ZjAgDQp7XCpcaHRt
bHRhZzQgXHBhciB9DQp7XCpcaHRtbHRhZzg0ICZndDt9XGh0bWxydGYgPlxodG1scnRmMCBUaGlz
IGNvbmZ1c2VzIHRoZSB1c2VycyBhbmQgaXQgY29uZnVzZXMgZXZlbiBtZS4NCntcKlxodG1sdGFn
MTE2IDxicj59XGh0bWxydGYgXGxpbmUNClxodG1scnRmMCANCntcKlxodG1sdGFnNCBccGFyIH0N
CntcKlxodG1sdGFnODQgJmd0O31caHRtbHJ0ZiA+XGh0bWxydGYwIA0Ke1wqXGh0bWx0YWcxMTYg
PGJyPn1caHRtbHJ0ZiBcbGluZQ0KXGh0bWxydGYwIA0Ke1wqXGh0bWx0YWc0IFxwYXIgfS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQp7XCpcaHRt
bHRhZzExNiA8YnI+fVxodG1scnRmIFxsaW5lDQpcaHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzQgXHBh
ciB9TXkgcmVzcG9uc2U6DQp7XCpcaHRtbHRhZzExNiA8YnI+fVxodG1scnRmIFxsaW5lDQpcaHRt
bHJ0ZjAgDQp7XCpcaHRtbHRhZzQgXHBhciB9DQp7XCpcaHRtbHRhZzExNiA8YnI+fVxodG1scnRm
IFxsaW5lDQpcaHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzQgXHBhciB9QUZBSUssIHRoZSBwcm9wZXIg
c29sdXRpb24gZm9yIHRoaXMgc29ydCBvZiBwcm9ibGVtIGlzIHRvIHVzZSBtdWx0aXBsZSAvDQp7
XCpcaHRtbHRhZzExNiA8YnI+fVxodG1scnRmIFxsaW5lDQpcaHRtbHJ0ZjAgDQp7XCpcaHRtbHRh
ZzQgXHBhciB9YmFja2dyb3VuZCB0aHJlYWRzLiBIb3dldmVyLCBhIGxlc3MgZWxlZ2FudCBidXQg
ZWFzaWVyIGFuZCBwb3NzaWJseQ0Ke1wqXGh0bWx0YWcxMTYgPGJyPn1caHRtbHJ0ZiBcbGluZQ0K
XGh0bWxydGYwIA0Ke1wqXGh0bWx0YWc0IFxwYXIgfWVmZmVjdGl2ZSBzb2x1dGlvbiBpcyB0byBw
ZXJpb2RpY2FsbHkgcHJvY2VzcyB0aGUgV2luZG93cyBNZXNzYWdlIHF1ZXVlLiBUaGUNCntcKlxo
dG1sdGFnMTE2IDxicj59XGh0bWxydGYgXGxpbmUNClxodG1scnRmMCANCntcKlxodG1sdGFnNCBc
cGFyIH1mb2xsb3dpbmcgZXhhbXBsZSBzaG91bGQgaGVscCB5b3UgZ2V0IHN0YXJ0ZWQ6DQp7XCpc
aHRtbHRhZzExNiA8YnI+fVxodG1scnRmIFxsaW5lDQpcaHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzQg
XHBhciB9DQp7XCpcaHRtbHRhZzExNiA8YnI+fVxodG1scnRmIFxsaW5lDQpcaHRtbHJ0ZjAgDQp7
XCpcaHRtbHRhZzQgXHBhciB9TU9EVUxFIFRlc3RMb25nOw0Ke1wqXGh0bWx0YWcxMTYgPGJyPn1c
aHRtbHJ0ZiBcbGluZQ0KXGh0bWxydGYwIA0Ke1wqXGh0bWx0YWc0IFxwYXIgfQ0Ke1wqXGh0bWx0
YWcxMTYgPGJyPn1caHRtbHJ0ZiBcbGluZQ0KXGh0bWxydGYwIA0Ke1wqXGh0bWx0YWc0IFxwYXIg
fUlNUE9SVCBEaWFsb2csIFN0cmluZ3MsIFdpbiA6PSBXaW5BcGk7DQp7XCpcaHRtbHRhZzExNiA8
YnI+fVxodG1scnRmIFxsaW5lDQpcaHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzQgXHBhciB9DQp7XCpc
aHRtbHRhZzExNiA8YnI+fVxodG1scnRmIFxsaW5lDQpcaHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzQg
XHBhciB9UFJPQ0VEVVJFIFByb2Nlc3NNZXNzYWdlczsNCntcKlxodG1sdGFnMTE2IDxicj59XGh0
bWxydGYgXGxpbmUNClxodG1scnRmMCANCntcKlxodG1sdGFnNCBccGFyIH0NCntcKlxodG1sdGFn
ODQgICB9VkFSIG1zZzogDQp7XCpcaHRtbHRhZzg0IDxhIGhyZWY9Imh0dHA6Ly9XaW4uTVNHIj59
XGh0bWxydGYge1xmaWVsZHtcKlxmbGRpbnN0e0hZUEVSTElOSyAiaHR0cDovL1dpbi5NU0cifX17
XGZsZHJzbHRcY2YxXHVsIFxodG1scnRmMCBXaW4uTVNHXGh0bWxydGYgfVxodG1scnRmMCBcaHRt
bHJ0ZiB9XGh0bWxydGYwIA0Ke1wqXGh0bWx0YWc5MiA8L2E+fTsgcmVzOiBJTlRFR0VSOw0Ke1wq
XGh0bWx0YWcxMTYgPGJyPn1caHRtbHJ0ZiBcbGluZQ0KXGh0bWxydGYwIA0Ke1wqXGh0bWx0YWc0
IFxwYXIgfUJFR0lODQp7XCpcaHRtbHRhZzExNiA8YnI+fVxodG1scnRmIFxsaW5lDQpcaHRtbHJ0
ZjAgDQp7XCpcaHRtbHRhZzQgXHBhciB9DQp7XCpcaHRtbHRhZzg0ICAgfVdISUxFIA0Ke1wqXGh0
bWx0YWc4NCA8YSBocmVmPSJodHRwOi8vV2luLlBlZWtNZXNzYWdlKG1zZyI+fVxodG1scnRmIHtc
ZmllbGR7XCpcZmxkaW5zdHtIWVBFUkxJTksgImh0dHA6Ly9XaW4uUGVla01lc3NhZ2UobXNnIn19
e1xmbGRyc2x0XGNmMVx1bCBcaHRtbHJ0ZjAgV2luLlBlZWtNZXNzYWdlKG1zZ1xodG1scnRmIH1c
aHRtbHJ0ZjAgXGh0bWxydGYgfVxodG1scnRmMCANCntcKlxodG1sdGFnOTIgPC9hPn0sIDAsIDAs
IDAsIA0Ke1wqXGh0bWx0YWc4NCA8YSBocmVmPSJodHRwOi8vV2luLlBNX1JFTU9WRSI+fVxodG1s
cnRmIHtcZmllbGR7XCpcZmxkaW5zdHtIWVBFUkxJTksgImh0dHA6Ly9XaW4uUE1fUkVNT1ZFIn19
e1xmbGRyc2x0XGNmMVx1bCBcaHRtbHJ0ZjAgV2luLlBNX1JFTU9WRVxodG1scnRmIH1caHRtbHJ0
ZjAgXGh0bWxydGYgfVxodG1scnRmMCANCntcKlxodG1sdGFnOTIgPC9hPn0pICMgMCBETw0Ke1wq
XGh0bWx0YWcxMTYgPGJyPn1caHRtbHJ0ZiBcbGluZQ0KXGh0bWxydGYwIA0Ke1wqXGh0bWx0YWc0
IFxwYXIgfQ0Ke1wqXGh0bWx0YWc4NCAgICAgfXJlcyA6PSANCntcKlxodG1sdGFnODQgPGEgaHJl
Zj0iaHR0cDovL1dpbi5UcmFuc2xhdGVNZXNzYWdlKG1zZyI+fVxodG1scnRmIHtcZmllbGR7XCpc
ZmxkaW5zdHtIWVBFUkxJTksgImh0dHA6Ly9XaW4uVHJhbnNsYXRlTWVzc2FnZShtc2cifX17XGZs
ZHJzbHRcY2YxXHVsIFxodG1scnRmMCBXaW4uVHJhbnNsYXRlTWVzc2FnZShtc2dcaHRtbHJ0ZiB9
XGh0bWxydGYwIFxodG1scnRmIH1caHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzkyIDwvYT59KTsNCntc
KlxodG1sdGFnMTE2IDxicj59XGh0bWxydGYgXGxpbmUNClxodG1scnRmMCANCntcKlxodG1sdGFn
NCBccGFyIH0NCntcKlxodG1sdGFnODQgICAgIH1yZXMgOj0gV2luLkRpc3BhdGNoTWVzc2FnZUEo
bXNnKQ0Ke1wqXGh0bWx0YWcxMTYgPGJyPn1caHRtbHJ0ZiBcbGluZQ0KXGh0bWxydGYwIA0Ke1wq
XGh0bWx0YWc0IFxwYXIgfQ0Ke1wqXGh0bWx0YWc4NCAgIH1FTkQNCntcKlxodG1sdGFnMTE2IDxi
cj59XGh0bWxydGYgXGxpbmUNClxodG1scnRmMCANCntcKlxodG1sdGFnNCBccGFyIH1FTkQgUHJv
Y2Vzc01lc3NhZ2VzOw0Ke1wqXGh0bWx0YWcxMTYgPGJyPn1caHRtbHJ0ZiBcbGluZQ0KXGh0bWxy
dGYwIA0Ke1wqXGh0bWx0YWc0IFxwYXIgfQ0Ke1wqXGh0bWx0YWc4NCBcdGFiIH0NCntcKlxodG1s
dGFnMTE2IDxicj59XGh0bWxydGYgXGxpbmUNClxodG1scnRmMCANCntcKlxodG1sdGFnNCBccGFy
IH1QUk9DRURVUkUgRG8qOw0Ke1wqXGh0bWx0YWcxMTYgPGJyPn1caHRtbHJ0ZiBcbGluZQ0KXGh0
bWxydGYwIA0Ke1wqXGh0bWx0YWc0IFxwYXIgfQ0Ke1wqXGh0bWx0YWc4NCAgIH1WQVIgaSwgajog
SU5URUdFUjsgczogQVJSQVkgMjAgT0YgQ0hBUjsgQkVHSU4NCntcKlxodG1sdGFnMTE2IDxicj59
XGh0bWxydGYgXGxpbmUNClxodG1scnRmMCANCntcKlxodG1sdGFnNCBccGFyIH0NCntcKlxodG1s
dGFnODQgICB9Rk9SIGkgOj0gMCBUTyAzMDAgRE8NCntcKlxodG1sdGFnMTE2IDxicj59XGh0bWxy
dGYgXGxpbmUNClxodG1scnRmMCANCntcKlxodG1sdGFnNCBccGFyIH0NCntcKlxodG1sdGFnODQg
ICAgIH1Qcm9jZXNzTWVzc2FnZXM7DQp7XCpcaHRtbHRhZzExNiA8YnI+fVxodG1scnRmIFxsaW5l
DQpcaHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzQgXHBhciB9DQp7XCpcaHRtbHRhZzg0ICAgICB9Rk9S
IGogOj0gMCBUTyAxMDAwMDAwMCBETw0Ke1wqXGh0bWx0YWcxMTYgPGJyPn1caHRtbHJ0ZiBcbGlu
ZQ0KXGh0bWxydGYwIA0Ke1wqXGh0bWx0YWc0IFxwYXIgfQ0Ke1wqXGh0bWx0YWc4NCAgICAgfUVO
RCA7DQp7XCpcaHRtbHRhZzExNiA8YnI+fVxodG1scnRmIFxsaW5lDQpcaHRtbHJ0ZjAgDQp7XCpc
aHRtbHRhZzQgXHBhciB9DQp7XCpcaHRtbHRhZzg0ICAgICB9DQp7XCpcaHRtbHRhZzg0IDxhIGhy
ZWY9Imh0dHA6Ly9TdHJpbmdzLkludFRvU3RyaW5nKGkiPn1caHRtbHJ0ZiB7XGZpZWxke1wqXGZs
ZGluc3R7SFlQRVJMSU5LICJodHRwOi8vU3RyaW5ncy5JbnRUb1N0cmluZyhpIn19e1xmbGRyc2x0
XGNmMVx1bCBcaHRtbHJ0ZjAgU3RyaW5ncy5JbnRUb1N0cmluZyhpXGh0bWxydGYgfVxodG1scnRm
MCBcaHRtbHJ0ZiB9XGh0bWxydGYwIA0Ke1wqXGh0bWx0YWc5MiA8L2E+fSwgcyk7DQp7XCpcaHRt
bHRhZzExNiA8YnI+fVxodG1scnRmIFxsaW5lDQpcaHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzQgXHBh
ciB9DQp7XCpcaHRtbHRhZzg0ICAgICB9DQp7XCpcaHRtbHRhZzg0IDxhIGhyZWY9Imh0dHA6Ly9E
aWFsb2cuU2hvd1N0YXR1cyI+fVxodG1scnRmIHtcZmllbGR7XCpcZmxkaW5zdHtIWVBFUkxJTksg
Imh0dHA6Ly9EaWFsb2cuU2hvd1N0YXR1cyJ9fXtcZmxkcnNsdFxjZjFcdWwgXGh0bWxydGYwIERp
YWxvZy5TaG93U3RhdHVzXGh0bWxydGYgfVxodG1scnRmMCBcaHRtbHJ0ZiB9XGh0bWxydGYwIA0K
e1wqXGh0bWx0YWc5MiA8L2E+fSgibXNnICIgKyBzKQ0Ke1wqXGh0bWx0YWcxMTYgPGJyPn1caHRt
bHJ0ZiBcbGluZQ0KXGh0bWxydGYwIA0Ke1wqXGh0bWx0YWc0IFxwYXIgfQ0Ke1wqXGh0bWx0YWc4
NCAgIH1FTkQNCntcKlxodG1sdGFnMTE2IDxicj59XGh0bWxydGYgXGxpbmUNClxodG1scnRmMCAN
CntcKlxodG1sdGFnNCBccGFyIH1FTkQgRG87DQp7XCpcaHRtbHRhZzExNiA8YnI+fVxodG1scnRm
IFxsaW5lDQpcaHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzQgXHBhciB9DQp7XCpcaHRtbHRhZzExNiA8
YnI+fVxodG1scnRmIFxsaW5lDQpcaHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzQgXHBhciB9RU5EIFRl
c3RMb25nLg0Ke1wqXGh0bWx0YWcxMTYgPGJyPn1caHRtbHJ0ZiBcbGluZQ0KXGh0bWxydGYwIA0K
e1wqXGh0bWx0YWc0IFxwYXIgfQ0Ke1wqXGh0bWx0YWcxMTYgPGJyPn1caHRtbHJ0ZiBcbGluZQ0K
XGh0bWxydGYwIA0Ke1wqXGh0bWx0YWc0IFxwYXIgfVAuUy4gTXkgc3lzdGVtIG11c3QgYmUgZmFz
dGVyIHRoYW4geW91cnMgLSBJIGhhZCB0byBpbmNyZWFzZSB0aGUgaiBsb29wIGJ5IGENCntcKlxo
dG1sdGFnMTE2IDxicj59XGh0bWxydGYgXGxpbmUNClxodG1scnRmMCANCntcKlxodG1sdGFnNCBc
cGFyIH1mYWN0b3Igb2YgMTAgdG8gMTAwMDAwMDAwIHRvIGFjdHVhbGx5IHRlc3QgaXQhDQp7XCpc
aHRtbHRhZzExNiA8YnI+fVxodG1scnRmIFxsaW5lDQpcaHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzQg
XHBhciB9LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0NCntcKlxodG1sdGFnMTE2IDxicj59XGh0bWxydGYgXGxpbmUNClxodG1scnRmMCANCntcKlxo
dG1sdGFnNCBccGFyIH0NCntcKlxodG1sdGFnMTE2IDxicj59XGh0bWxydGYgXGxpbmUNClxodG1s
cnRmMCANCntcKlxodG1sdGFnNCBccGFyIH1TbyB0cnkgcHV0dGluZyBhIGNhbGwgdG8gUHJvY2Vz
c01lc3NhZ2VzIGF0IGEgc3VpdGFibGUgcG9zaXRpb24gaW4geW91cg0Ke1wqXGh0bWx0YWcxMTYg
PGJyPn1caHRtbHJ0ZiBcbGluZQ0KXGh0bWxydGYwIA0Ke1wqXGh0bWx0YWc0IFxwYXIgfXByb2Nl
c3NpbmcgbG9vcCBzbyB0aGF0IGl0IHdpbGwgZ2V0IGNhbGxlZCBhdCBsZWFzdCBhIGZldyB0aW1l
cyBhIHNlY29uZCwNCntcKlxodG1sdGFnMTE2IDxicj59XGh0bWxydGYgXGxpbmUNClxodG1scnRm
MCANCntcKlxodG1sdGFnNCBccGFyIH0NCntcKlxodG1sdGFnMTE2IDxicj59XGh0bWxydGYgXGxp
bmUNClxodG1scnRmMCANCntcKlxodG1sdGFnNCBccGFyIH1SZWdhcmRzLA0Ke1wqXGh0bWx0YWcx
MTYgPGJyPn1caHRtbHJ0ZiBcbGluZQ0KXGh0bWxydGYwIA0Ke1wqXGh0bWx0YWc0IFxwYXIgfUNo
cmlzIEJ1cnJvd3MNCntcKlxodG1sdGFnMTE2IDxicj59XGh0bWxydGYgXGxpbmUNClxodG1scnRm
MCANCntcKlxodG1sdGFnNCBccGFyIH0NCntcKlxodG1sdGFnMTE2IDxicj59XGh0bWxydGYgXGxp
bmUNClxodG1scnRmMCANCntcKlxodG1sdGFnNCBccGFyIH1DRkIgU29mdHdhcmUNCntcKlxodG1s
dGFnMTE2IDxicj59XGh0bWxydGYgXGxpbmUNClxodG1scnRmMCANCntcKlxodG1sdGFnNCBccGFy
IH1Bc3Ryb2JlIHYzLjM6IEFSTSBPYmVyb24tMDcgRGV2ZWxvcG1lbnQgU3lzdGVtDQp7XCpcaHRt
bHRhZzExNiA8YnI+fVxodG1scnRmIFxsaW5lDQpcaHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzQgXHBh
ciB9DQp7XCpcaHRtbHRhZzg0IDxhIGhyZWY9Imh0dHA6Ly93d3cuYXN0cm9iZS5jb20iPn1caHRt
bHJ0ZiB7XGZpZWxke1wqXGZsZGluc3R7SFlQRVJMSU5LICJodHRwOi8vd3d3LmFzdHJvYmUuY29t
In19e1xmbGRyc2x0XGNmMVx1bCBcaHRtbHJ0ZjAgaHR0cDovL3d3dy5hc3Ryb2JlLmNvbVxodG1s
cnRmIH1caHRtbHJ0ZjAgXGh0bWxydGYgfVxodG1scnRmMCANCntcKlxodG1sdGFnOTIgPC9hPn0N
CntcKlxodG1sdGFnMTE2IDxicj59XGh0bWxydGYgXGxpbmUNClxodG1scnRmMCANCntcKlxodG1s
dGFnNCBccGFyIH0NCntcKlxodG1sdGFnMTE2IDxicj59XGh0bWxydGYgXGxpbmUNClxodG1scnRm
MCANCntcKlxodG1sdGFnNCBccGFyIH0NCntcKlxodG1sdGFnMTE2IDxicj59XGh0bWxydGYgXGxp
bmUNClxodG1scnRmMCANCntcKlxodG1sdGFnNCBccGFyIH0tLS0tDQp7XCpcaHRtbHRhZzExNiA8
YnI+fVxodG1scnRmIFxsaW5lDQpcaHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzQgXHBhciB9VG8gdW5z
dWJzY3JpYmUsIHNlbmQgYSBtZXNzYWdlIHdpdGggYm9keSAiU0lHTk9GRiBCTEFDS0JPWCIgdG8g
DQp7XCpcaHRtbHRhZzg0IDxhIGhyZWY9Im1haWx0bzpMSVNUU0VSVkBMSVNUUy5PQkVST04uQ0gi
Pn1caHRtbHJ0ZiB7XGZpZWxke1wqXGZsZGluc3R7SFlQRVJMSU5LICJtYWlsdG86TElTVFNFUlZA
TElTVFMuT0JFUk9OLkNIIn19e1xmbGRyc2x0XGNmMVx1bCBcaHRtbHJ0ZjAgTElTVFNFUlZATElT
VFMuT0JFUk9OLkNIXGh0bWxydGYgfVxodG1scnRmMCBcaHRtbHJ0ZiB9XGh0bWxydGYwIA0Ke1wq
XGh0bWx0YWc5MiA8L2E+fQ0Ke1wqXGh0bWx0YWcxMTYgPGJyPn1caHRtbHJ0ZiBcbGluZQ0KXGh0
bWxydGYwIA0Ke1wqXGh0bWx0YWc0IFxwYXIgfQ0Ke1wqXGh0bWx0YWc0IFxwYXIgfVxodG1scnRm
IH1caHRtbHJ0ZjAge1wqXGh0bWx0YWc3Mn1caHRtbHJ0ZlxwYXJ9XGh0bWxydGYwDQoNCntcKlxo
dG1sdGFnMTA0IDwvZGl2Pn1caHRtbHJ0ZiB9XGh0bWxydGYwIA0Ke1wqXGh0bWx0YWcwIFxwYXIg
fQ0Ke1wqXGh0bWx0YWcxMDQgPC9ibG9ja3F1b3RlPn1caHRtbHJ0ZiB9XHBhcg0KXGh0bWxydGYw
IA0Ke1wqXGh0bWx0YWcyNDggPC9zcGFuPn0NCntcKlxodG1sdGFnNTggPC9ib2R5Pn0NCntcKlxo
dG1sdGFnMjcgPC9odG1sPn0NCntcKlxodG1sdGFnMyBccGFyIH0NCntcKlxodG1sdGFnNjQgPHA+
fVxodG1scnRmIHtcaHRtbHJ0ZjAgDQp7XCpcaHRtbHRhZzQgXHBhciB9LS0tLQ0Ke1wqXGh0bWx0
YWc0IFxwYXIgfVxodG1scnRmICBcaHRtbHJ0ZjAgVG8gdW5zdWJzY3JpYmUsIHNlbmQgYSBtZXNz
YWdlIHdpdGggYm9keSAiU0lHTk9GRiBCTEFDS0JPWCIgdG8gTElTVFNFUlZATElTVFMuT0JFUk9O
LkNIDQp7XCpcaHRtbHRhZzQgXHBhciB9XGh0bWxydGYgIFxodG1scnRmMCBcaHRtbHJ0ZlxwYXJ9
XGh0bWxydGYwDQp9
----boundary-LibPST-iamunique-1424365729_-_---
Received on Sat Mar 26 2011 - 20:51:38 UTC
This archive was generated by hypermail 2.3.0
: Thu Sep 26 2013 - 06:30:16 UTC