Verilog RTL Synthesis, Semantics Section 4.

Ken Coffman (kcoffman@sos.net)
Mon, 07 Sep 1998 17:39:52 -0700

--=====================_905240392==_
Content-Type: text/plain; charset="us-ascii"

Here's the latest revision of P1364.1, section 4. I think we're making
progress.
- Regards.
--=====================_905240392==_
Content-Type: application/msword; name="1064rev.doc";
x-mac-type="42494E41"; x-mac-creator="4D535744"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="1064rev.doc"

0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAAABAAAAXAAAAAAAAAAA
EAAAXgAAAAEAAAD+////AAAAAFsAAAD/////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////s
pcEARwAJBAAAABK/AAAAAAAAEAAAAAAABAAAHzsAAA4AYmpiao7ZjtkAAAAAAAAAAAAAAAAAAAAA
AAAJBBYAJXgAAOyzAQDsswEAVDYAAAAAAADKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//w8AAAAA
AAAAAAD//w8AAAAAAAAAAAD//w8AAAAAAAAAAAAAAAAAAAAAAF0AAAAAAF4BAAAAAAAAXgEAAF4B
AAAAAAAAXgEAAAAAAABeAQAAAAAAAF4BAAAAAAAAXgEAABQAAAAAAAAAAAAAAHIBAAAAAAAAcgEA
AAAAAAByAQAAAAAAAHIBAAA4AAAAqgEAADQAAADeAQAAdAAAAHIBAAAAAAAAeRYAACwBAACWAgAA
AAAAAJYCAAAAAAAAlgIAAAAAAACWAgAAAAAAAJYCAAAAAAAAygMAAAAAAADKAwAAAAAAAMoDAAAA
AAAAPhYAAAIAAABAFgAAAAAAAEAWAAAAAAAAQBYAAAAAAABAFgAAAAAAAEAWAAAAAAAAQBYAACQA
AAClFwAA9AEAAJkZAACeAAAAZBYAABUAAAAAAAAAAAAAAAAAAAAAAAAAXgEAAAAAAADKAwAAAAAA
AAAAAAAAAAAAAAAAAAAAAADKAwAAAAAAAMoDAAAAAAAAygMAAAAAAADKAwAAAAAAAGQWAAAAAAAA
cgwAAAAAAABeAQAAAAAAAF4BAAAAAAAAlgIAAAAAAAAAAAAAAAAAAJYCAAA0AQAAlgIAAAAAAABy
DAAAAAAAAHIMAAAAAAAAcgwAAAAAAADKAwAANgEAAF4BAAAAAAAAlgIAAAAAAABeAQAAAAAAAJYC
AAAAAAAAPhYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcgEAAAAAAAByAQAAAAAAAF4BAAAAAAAAXgEA
AAAAAABeAQAAAAAAAF4BAAAAAAAAygMAAAAAAAA+FgAAAAAAAHIMAADOAQAAcgwAAAAAAABADgAA
cgAAANwVAABUAAAAXgEAAAAAAABeAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPhYAAAAAAACWAgAAAAAAAFICAABEAAAAAAva87na
vQFyAQAAAAAAAHIBAAAAAAAAAAUAAHIHAAAwFgAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAU2Vj
dGlvbiA0IE1vZGVsaW5nIEhhcmR3YXJlIEVsZW1lbnRzDVRoaXMgc2VjdGlvbiBkZXNjcmliZXMg
c3R5bGVzIGZvciBtb2RlbGluZyBoYXJkd2FyZSBlbGVtZW50cyBzdWNoIGFzIGVkZ2Utc2Vuc2l0
aXZlIHN0b3JhZ2UgZGV2aWNlcywgbGV2ZWwtc2Vuc2l0aXZlIHN0b3JhZ2UgZGV2aWNlcyAobGF0
Y2hlcyksIGFuZCB0aHJlZS1zdGF0ZSBkcml2ZXJzLiBUaGlzIHN0YW5kYXJkIGRvZXMgbm90IHNw
ZWNpZnkgb3IgbGltaXQgb3B0aW1pemF0aW9uLg1UaGUgaGFyZHdhcmUgaW5mZXJlbmNlcyBzcGVj
aWZpZWQgaW4gdGhpcyBzZWN0aW9uIGRvIG5vdCB0YWtlIGludG8gYWNjb3VudCBvcHRpbWl6YXRp
b25zIG9yIHRyYW5zZm9ybWF0aW9ucy4gQSBzcGVjaWZpYyB0b29sIG1heSBwZXJmb3JtIG9wdGlt
aXphdGlvbiBhbmQgbm90IGdlbmVyYXRlIHRoZSBzdWdnZXN0ZWQgaGFyZHdhcmUgaW5mZXJlbmNl
cyBvciBnZW5lcmF0ZSBhIGRpZmZlcmVudCBzZXQgb2YgaGFyZHdhcmUgaW5mZXJlbmNlcy4gVGhp
cyBzaGFsbCBub3QgYmUgdGFrZW4gYXMgYSB2aW9sYXRpb24gb2YgdGhpcyBzdGFuZGFyZCBwcm92
aWRlZCB0aGUgc3ludGhlc2l6ZWQgbmV0bGlzdCBoYXMgdGhlIHNhbWUgZnVuY3Rpb25hbGl0eSBh
cyB0aGUgaW5wdXQgbW9kZWwuDQ00LjEgTW9kZWxpbmcgQ29tYmluYXRpb25hbCBMb2dpYw1BIGNv
bWJpbmF0aW9uYWwgbG9naWMgZXZlbnQgc2Vuc2l0aXZpdHkgbGlzdCBjb250YWlucyBhIHZhcmlh
YmxlIG9yIGEgbGlzdCBvZiB2YXJpYWJsZXMgc2VwYXJhdGVkIGJ5IHRoZSBrZXl3b3JkIG9yLiBJ
ZiB0aGUgZXZlbnQgc2Vuc2l0aXZpdHkgbGlzdCBvZiBhbiBhbHdheXMgc3RhdGVtZW50IGxpc3Rz
IGFsbCBpbnB1dCB2YXJpYWJsZXMgKHdoaWNoIHdpbGwgYXBwZWFyIGluIHJpZ2h0LWhhbmQgc2lk
ZSBleHByZXNzaW9ucyBpbiB0aGUgYWx3YXlzIHN0YXRlbWVudCBib2R5KSwgaXRzIGV2ZW50IHNl
bnNpdGl2aXR5IGxpc3QgaXMgc2FpZCB0byBiZSBjb21wbGV0ZS4NRXhwcmVzc2lvbnMgaW5zaWRl
IHRoZSBhbHdheXMgc3RhdGVtZW50IGJvZHkgd2lsbCBiZSBldmFsdWF0ZWQgYnkgYSBWZXJpbG9n
IHNpbXVsYXRvciB3aGVuIGFueSB2YXJpYWJsZSBpbiB0aGUgc2Vuc2l0aXZpdHkgbGlzdCBjaGFu
Z2VzIHZhbHVlLiBUaGUgZXZlbnQgc2Vuc2l0aXZpdHkgbGlzdCBmb3IgYSBjb21iaW5hdGlvbmFs
IGxvZ2ljIGNvbnN0cnVjdCBkb2VzIG5vdCBhZmZlY3Qgc3ludGhlc2l6ZWQgbG9naWMuIEhvd2V2
ZXIsIGl0IGlzIGltcG9ydGFudCB0aGF0IHRoZSBzZW5zaXRpdml0eSBsaXN0IGJlIGNvbXBsZXRl
IHRvIGluc3VyZSB0aGF0IHNpbXVsYXRpb24gYW5kIHN5bnRoZXNpcyByZXN1bHRzIG1hdGNoLg0N
RURJVE9SUyBOT1RFOiBTaGFsbCB3ZSBhbGxvdyB0aGUgdXNlIG9mIGFsd2F5cyBAICgqKSB0byBp
bmZlciBhIGNvbXBsZXRlIGxpc3Qgb2YgdmFyaWFibGVzPw0NVGhlIGV2ZW50IHNlbnNpdGl2aXR5
IGxpc3QgZm9yIGEgY29tYmluYXRpb25hbCBsb2dpYyBjb25zdHJ1Y3QgbXVzdCBub3QgY29udGFp
biB0aGUgcmVzZXJ2ZWQgd29yZHMgcG9zZWRnZSBvciBuZWdlZGdlIG9yIGFueXRoaW5nIG90aGVy
IHRoYW4gdmFyaWFibGVzIHVzZWQgYXMgaW5wdXRzIGluc2lkZSB0aGUgYWx3YXlzIHN0YXRlbWVu
dCBib2R5Lg1Ob3QgYWxsIHZhcmlhYmxlcyB0aGF0IGFwcGVhciBpbiB0aGUgcmlnaHQgaGFuZCBz
aWRlIG9mIGFuIGFzc2lnbm1lbnQgYXJlIHJlcXVpcmVkIHRvIGFwcGVhciBpbiB0aGUgZXZlbnQg
c2Vuc2l0aXZpdHkgbGlzdC4gVmFyaWFibGVzIHRoYXQgYXJlIGFzc2lnbmVkIHZhbHVlcyBpbnNp
ZGUgdGhlIGFsd2F5cyBzdGF0ZW1lbnQgYm9keSBiZWZvcmUgYmVpbmcgdXNlZCBieSBvdGhlciBl
eHByZXNzaW9ucyBkbyBub3QgaGF2ZSB0byBhcHBlYXIgaW4gdGhlIGV2ZW50IHNlbnNpdGl2aXR5
IGxpc3QuIA0NRXhhbXBsZSA0LjEuMToNYWx3YXlzIEAgKE9QMSBvciBPUDIpIC8vIExlZ2FsDS4u
Lg0NRXhhbXBsZSA0LjEuMjoNYWx3YXlzIEAgKEJVU0FbMTFdIG9yIEJVU0JbNzoyXSkgLy8gTGVn
YWwNLi4uDQ1FeGFtcGxlIDQuMS4zOg1hbHdheXMgQCAoQSArIEIpIC8vIE5vdCBzdXBwb3J0ZWQg
YmVjYXVzZSBsb2dpY2FsIGNvbnN0cnVjdHMgYXJlIG5vdCANICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8vICBhbGxvd2VkIGluIHRoZSBldmVudCBzZW5zaXRpdml0eSBsaXN0Lg0uLi4g
DQ1FeGFtcGxlIDQuMS40Og1hbHdheXMgQCAocG9zZWRnZSBBW0JdKSAvLyBOb3Qgc3VwcG9ydGVk
IGJlY2F1c2UgYml0LXNlbGVjdGVkIHZhcmlhYmxlcyANICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8vICBhcmUgbm90IGFsbG93ZWQgZm9yIGNsb2NrIG9yIGNvbnRy
b2wuDS4uLg0NRXhhbXBsZSA0LjEuNToNYWx3YXlzIEAgKElOMSBvciBJTjIpIC8vIExlZ2FsIGJl
Y2F1c2UgYWxsIGlucHV0IHZhcmlhYmxlcyBhcmUgc3BlY2lmaWVkLg1PVVQgPSBJTjEgKyBJTjI7
DYUNDUluIEV4YW1wbGUgNC4xLjYsIHRoZSByZWdpc3RlciB2YXJpYWJsZSBUTVAgaXMgbm90IHJl
cXVpcmVkIHRvIGFwcGVhciBpbiB0aGUgZXZlbnQgc2Vuc2l0aXZpdHkgbGlzdCBzaW5jZSBpdCBp
cyBhc3NpZ25lZCBiZWZvcmUgaXQgaXMgdXNlZCBpbiB0aGUgYWx3YXlzIGJsb2NrLg0NRXhhbXBs
ZSA0LjEuNjoNYWx3YXlzIEAgKElOKSAvLyBUTVAgaXMgbm90IHJlcXVpcmVkIGluIHRoZSBldmVu
dCBzZW5zaXRpdml0eSBsaXN0DSAgICAgICAgICAgICAgICAgICAgICAgICAvLyAgIGJlY2F1c2Ug
aXQgaXMgYXNzaWduZWQgYSB2YWx1ZSBiZWZvcmUgYmVpbmcgdXNlZC4NYmVnaW4NVE1QID0gSU47
DU9VVCA9IFRNUDsNZW5kDQ1JbiBFeGFtcGxlIDQuMS43LCBzaWduYWxzIElOMSBhbmQgSU4yIGFy
ZSBub3QgcmVxdWlyZWQgaW4gdGhlIGV2ZW50IHNlbnNpdGl2aXR5IGxpc3QgYmVjYXVzZSB0aGUg
dmFyaWFibGUgT1VUIHdpbGwgYmUgZXZhbHVhdGVkIG9ubHkgd2hlbiBTRUwgY2hhbmdlcy4NDUV4
YW1wbGUgNC4xLjc6DWFsd2F5cyBAIChTRUwgb3IgSU4xKSAvLyBMZWdhbCwgdGhvdWdoIElOMSBp
cyBub3QgcmVxdWlyZWQuDQlpZiAoU0VMKQ0JYXNzaWduIE9VVCA9IElOMTsgLy8gTGVnYWwuDQll
bHNlDQlhc3NpZ24gT1VUID0gSU4yOyAvLyBMZWdhbC4NDUV4YW1wbGUgNC4xLjg6DWFsd2F5cyBA
IChJTikgDQlpZiAoRU5BKSAvLyBOb3Qgc3VwcG9ydGVkIGJlY2F1c2UgRU5BIHNob3VsZCBiZSBp
biB0aGUgZXZlbnQgc2Vuc2l0aXZpdHkgbGlzdC4NCU9VVCA9IElOOw0NSW4gRXhhbXBsZSA0LjEu
OSwgVE1QIGlzIHJlcXVpcmVkIGluIHRoZSBldmVudCBzZW5zaXRpdml0eSBsaXN0IGJlY2F1c2Ug
aXQgaXMgdXNlZCBpbiBhIG5vbi1ibG9ja2luZyBtYW5uZXIgd2hpY2ggY2F1c2VzIFRNUCBhbmQg
T1VUIHRvIGJlIGFzc2lnbmVkIGNvbmN1cnJlbnRseS4NDUV4YW1wbGUgNC4xLjk6DQlhbHdheXMg
QCAoSU4pDQliZWdpbg0JVE1QIDw9IElOOyAvLyBOb3Qgc3VwcG9ydGVkIGJlY2F1c2UgVE1QIHNo
b3VsZCBiZSBpbiB0aGUgZXZlbnQgc2Vuc2l0aXZpdHkgbGlzdC4NCU9VVCA8PSBUTVA7DQllbmQN
DUluIEV4YW1wbGUgNC4xLjEwLCBhbiBlcnJvciBvY2N1cnMgYmVjYXVzZSB0aGUgc2FtZSByZWdp
c3RlciAoT1VUKSBjYW5ub3QgYmUgYXNzaWduZWQgaW4gYm90aCBhIHByb2NlZHVyYWwtY29udGlu
dW91cyBhbmQgYSBub24gcHJvY2VkdXJhbC1jb250aW51b3VzIG1hbm5lciBpbiBhbiBhbHdheXMg
c3RhdGVtZW50IGJvZHkuDQ1FeGFtcGxlIDQuMS4xMDoNYWx3YXlzIEAgKElOMSBvciBTRUwpDQli
ZWdpbg0JYXNzaWduIE9VVCA9IElOMTsgLy8gUHJvY2VkdXJhbC1jb250aW51b3VzIGFzc2lnbm1l
bnQuDQlpZiAoU0VMKQ0JYXNzaWduIE9VVCA9IDI7IC8vIE5vbiBwcm9jZWR1cmFsLWNvbnRpbnVv
dXMgYXNzaWdubWVudC4NCWVuZA0NSW4gRXhhbXBsZSA0LjEuMTEsIGFuIGVycm9yIG9jY3VycyBi
ZWNhdXNlIE9VVCBjYW5ub3QgYmUgYXNzaWduZWQgaW4gYm90aCBhIGJsb2NraW5nIGFuZCBhIG5v
bi1ibG9ja2luZyBwcm9jZWR1cmFsIG1hbm5lciBpbiBhbiBhbHdheXMgc3RhdGVtZW50IGJvZHku
DQ1FeGFtcGxlIDQuMS4xMToNYWx3YXlzIEAgKElOMSBvciBJTjIgb3IgU0VMKQ0JYmVnaW4NCU9V
VCA9IElOMTsgLy8gQmxvY2tpbmcgYXNzaWdubWVudA0JaWYgKFNFTCkNCU9VVCA8PSAyOyAvLyBO
b24tYmxvY2tpbmcgYXNzaWdubWVudC4NCWVuZA0NRURJVE9SklMgTk9URTogdGhlIGZvbGxvd2lu
ZyCRWpIgc3RhdGVtZW50cyBhcmUgdW52ZXJpZmllZCEgV291bGQgc29tZW9uZSBwbGVhc2UgdHJ5
IHRoaXM/DUluIEV4YW1wbGUgNC4xLjEyLCBub3RlIHRoYXQgkVqSIGFzc2lnbm1lbnQocykgd2ls
bCBub3QgYmUgcHJvcGFnYXRlZCBhY3Jvc3MgdmFyaWFibGUgYXNzaWdubWVudHMuDQ1FeGFtcGxl
IDQuMS4xMjoNbW9kdWxlIHp0ZXN0Ow13aXJlIHRlc3QxLCB0ZXN0MiwgdGVzdDM7DWlucHV0IHRl
c3QyOw1vdXRwdXQgdGVzdDM7DWFzc2lnbiB0ZXN0MQk9CTGSYno7DWFzc2lnbiB0ZXN0Mwk9CXRl
c3QxICYgdGVzdDI7IC8vIHRlc3QzIHdpbGwgbmV2ZXIgcmVjZWl2ZSBhIJFakiBhc3NpZ25tZW50
Lg1lbmRtb2R1bGUNDUV4YW1wbGUgNC4xLjEzOg1hbHdheXMgQCAoSU4pDQliZWdpbg0JVE1QID0g
J2JaOw0JT1VUID0gVE1QOyAvLyBPVVQgd2lsbCBuZXZlciBiZSBkcml2ZW4gYnkgdGhyZWUgc3Rh
dGUgZHJpdmVycy4NCWVuZA0NRXhhbXBsZSA0LjEuMTQgaWxsdXN0cmF0ZXMgaG93IGFzc2lnbm1l
bnQgdG8gkVqSIG1heSBvY2N1ciBpbiBhIG1vZHVsZSBhbmQgYmUgcGFzc2VkIHZpYSBmb2xsb3dp
bmcgcG9ydCBhc3NpZ25tZW50cy4NDUV4YW1wbGUgNC4xLjE0Og1tb2R1bGUgZm9vKGJhciwgY2xv
Y2spOw0gICAgaW5wdXQgYmFyLCBjbG9jazsNICAgIHdpcmUgYmFyLCBjbG9jazsNICAgIHJlZyBy
ZXNldDsNICAgIGJ1czEgdTEoYmFyLCBjbG9jaywgcmVzZXQpOw0gICAgYnVzMSB1MihiYXIsIGNs
b2NrLCByZXNldCk7DWVuZG1vZHVsZQ0NbW9kdWxlIGJ1czEoYnVzLCBjbG9jaywgcmVzZXQpOw0g
ICAgaW5wdXQgY2xvY2ssIHJlc2V0Ow0gICAgb3V0cHV0IGJ1czsNICAgIHJlZwlidXM7DSAgICBy
ZWcgWzE6MF0gc3RhdGU7DSAgICBhbHdheXMgQCAocG9zZWRnZSBjbG9jayBvciBwb3NlZGdlIHJl
c2V0KSBiZWdpbg0gICAgICAgIGlmIChyZXNldCA9PSAxJ2IxKSBiZWdpbg0gICAgICAgICAgICBz
dGF0ZSA9IDInYjAwOw0gICAgICAgIGVuZCBlbHNlIGJlZ2luDSAgICAgICAgICAgIGNhc2UgKHN0
YXRlKQ0gICAgICAgICAgICAgICAgMidiMDA6IGJlZ2luDS8vICAgICAgICAgICAgICAgICAgICAu
Li4NICAgICAgICAgICAgICAgIGVuZA0gICAgICAgICAgICAgICAgMidiMDE6IGJlZ2luDSAgICAg
ICAgICAgICAgICAgICAgYnVzID0gMSdiejsNLy8gICAgICAgICAgICAgICAgLi4uDSAgICAgICAg
ICAgICAgICBlbmQNLy8gICAgICAgICAgICAgICAgLi4uDSAgICAgICAgICAgIGVuZGNhc2UNICAg
ICAgICBlbmQNICAgIGVuZA0gZW5kbW9kdWxlDQ00LjIgTW9kZWxpbmcgRWRnZS1TZW5zaXRpdmUg
U2VxdWVudGlhbCBMb2dpYw0NNC4yLjEgQ2xvY2sgU3BlY2lmaWNhdGlvbnMNV2hlbiBtb2RlbGlu
ZyBzeW5jaHJvbm91cyBsb2dpYyBjb25zdHJ1Y3RzLCB0aGUgcmVzZXJ2ZWQgd29yZHMgcG9zZWRn
ZSBvciBuZWdlZGdlIHdpbGwgYmUgdXNlZCBhcyBlZGdlLWNvbnRyb2wgc3BlY2lmaWVycyB3aXRo
aW4gdGhlIGV2ZW50IHNlbnNpdGl2aXR5IGxpc3Qgb2YgYW4gYWx3YXlzIHN0YXRlbWVudC4NDTQu
Mi4xLjEgUG9zaXRpdmUgRWRnZSBDbG9jaw1UaGUgZm9sbG93aW5nIHJlcHJlc2VudHMgYSBwb3Np
dGl2ZSBjbG9jayBlZGdlIGV4cHJlc3Npb24gaW4gYW4gYWx3YXlzIHN0YXRlbWVudDoNYWx3YXlz
IEAgKHBvc2VkZ2UgQ0xPQ0spDS4uLg0NNC4yLjEuMiBOZWdhdGl2ZSBFZGdlIENsb2NrDVRoZSBm
b2xsb3dpbmcgcmVwcmVzZW50cyBhIG5lZ2F0aXZlIGNsb2NrIGVkZ2UgZXhwcmVzc2lvbiBpbiBh
biBhbHdheXMgc3RhdGVtZW50Og1hbHdheXMgQCAobmVnZWRnZSBDTE9DSykNLi4uDQ00LjIuMiBN
b2RlbGluZyBFZGdlLVNlbnNpdGl2ZSBTdG9yYWdlIERldmljZXMNQWxsIGVkZ2Utc2Vuc2l0aXZl
IHN0b3JhZ2UgZGV2aWNlcyB3aWxsIGJlIG1vZGVsZWQgd2l0aCBzeW5jaHJvbm91cyBhc3NpZ25t
ZW50cyB0byBhIHZhcmlhYmxlLiBBIHN5bmNocm9ub3VzIGFzc2lnbm1lbnQgaXMgYSB2YXJpYWJs
ZSBhc3NpZ25tZW50IHVuZGVyIHRoZSBjb250cm9sIG9mIGEgY2xvY2suDUFuIGVkZ2Utc2Vuc2l0
aXZlIHN0b3JhZ2UgY29uc3RydWN0IHdpdGhvdXQgYXN5bmNocm9ub3VzIHNldCBvciByZXNldCBp
cyBiZSBtb2RlbGVkIHVzaW5nIGFuIGFsd2F5cyBzdGF0ZW1lbnQgd2hvc2UgZXZlbnQgc2Vuc2l0
aXZpdHkgbGlzdCB1c2VzIGVpdGhlciB0aGUgcmVzZXJ2ZWQgd29yZHMgcG9zZWRnZSBvciBuZWdl
ZGdlIGZvbGxvd2VkIGJ5IHRoZSBjbG9jayB2YXJpYWJsZS4gTm8gb3RoZXIgdmFyaWFibGVzIHdp
bGwgYmUgaW5jbHVkZWQgaW4gdGhlIGV2ZW50IHNlbnNpdGl2aXR5IGxpc3QuDQ1FeGFtcGxlIDQu
Mi4yLjE6DS8vIFBvc2l0aXZlIGVkZ2UgdHJpZ2dlcmVkIGVkZ2Utc2Vuc2l0aXZlIHN0b3JhZ2Ug
ZGV2aWNlLg1hbHdheXMgQCAocG9zZWRnZSBDTE9DSykNCU9VVCA9IElOOw2FDQ1FeGFtcGxlIDQu
Mi4yLjI6DS8vIE5lZ2F0aXZlIGVkZ2UgdHJpZ2dlcmVkIGVkZ2Utc2Vuc2l0aXZlIHN0b3JhZ2Ug
ZGV2aWNlLg1hbHdheXMgQCAobmVnZWRnZSBDTE9DSykNCU9VVCA9IElOOw2FDQ1FeGFtcGxlIDQu
Mi4yLjM6DS8vIFBvc2l0aXZlIGVkZ2UgdHJpZ2dlcmVkIGVkZ2Utc2Vuc2l0aXZlIHN0b3JhZ2Ug
ZGV2aWNlIHdpdGggc3luY2hyb25vdXMgcmVzZXQNYWx3YXlzIEAgKHBvc2VkZ2UgQ0xPQ0spDQlp
ZiAoUkVTRVQpDQlPVVQgPSAxJ2IwOw0JZWxzZQ0JT1VUID0gSU47DYUNDUV4YW1wbGUgNC4yLjIu
NDoNLy8gUG9zaXRpdmUgZWRnZSB0cmlnZ2VyZWQgZWRnZS1zZW5zaXRpdmUgc3RvcmFnZSBkZXZp
Y2Ugd2l0aCBzeW5jaHJvbm91cyBzZXQNYWx3YXlzIEAgKHBvc2VkZ2UgQ0xPQ0spDQlpZiAoU0VU
KQ0JT1VUID0gMSdiMTsNCWVsc2UNCU9VVCA9IElOOw2FDQ0NNC4yLjIuMSBFZGdlLVNlbnNpdGl2
ZSBTdG9yYWdlIERldmljZSBNb2RlbGluZyB3aXRoIEFzeW5jaHJvbm91cyBTZXQtUmVzZXQNQW4g
ZWRnZS1zZW5zaXRpdmUgc3RvcmFnZSBkZXZpY2Ugd2l0aCBhbiBhc3luY2hyb25vdXMgc2V0IGFu
ZC9vciBhc3luY2hyb25vdXMgcmVzZXQgaXMgbW9kZWxlZCB1c2luZyBhbiBhbHdheXMgc3RhdGVt
ZW50IHdob3NlIGV2ZW50IHNlbnNpdGl2aXR5IGxpc3QgY29udGFpbnMgdGhlIHJlc2VydmVkIHdv
cmRzIHBvc2VkZ2Ugb3IgbmVnZWRnZSBmb3IgdGhlIGNsb2NrIGFuZCBhc3luY2hyb25vdXMgdmFy
aWFibGVzLiBBIG1heGltdW0gb2YgMyB2YXJpYWJsZXMgbWF5IGFwcGVhciBpbiB0aGUgZXZlbnQg
c2Vuc2l0aXZpdHkgbGlzdC4gQSBtaXggb2YgbGV2ZWwtc2Vuc2l0aXZlIGFuZCBwb3NlZGdlL25l
Z2VkZ2UgdmFyaWFibGVzIGlzIG5vdCBzdXBwb3J0ZWQuDQ1BbiBpZiBjb25kaXRpb24gc3RhdGVt
ZW50IGlzIHVzZWQgd2l0aCBhbnkgYXN5bmNocm9ub3VzIGNvbnRyb2xzIGFuZCBpcyBwbGFjZWQg
aW4gaWYgYnJhbmNoZXMgdGhhdCBwcmVjZWRlIHRoZSBjbG9jayBicmFuY2guIFRoZSBhc3luY2hy
b25vdXMgc2V0IGFuZCBvciByZXNldCBsb2dpYyB3aWxsIHRoZXJlZm9yZSBoYXZlIGhpZ2hlciBw
cmlvcml0eSB0aGFuIHRoZSBjbG9jayB2YXJpYWJsZS4NDUluIEV4YW1wbGUgNC4yLjIuMS4xLCBh
IGZsaXBmbG9wIHdpdGggYXN5bmNocm9ub3VzIFNFVCBpcyBtb2RlbGVkLg0NRXhhbXBsZSA0LjIu
Mi4xLjE6DWFsd2F5cyBAIChwb3NlZGdlIENMT0NLIG9yIHBvc2VkZ2UgU0VUKQ0JaWYgKFNFVCkN
CU9VVCA8PSAxJ2IxOw0JZWxzZQ0JT1VUIDw9IERJTjsNDUluIEV4YW1wbGUgNC4yLjIuMS4yLCBh
biBlcnJvciBvY2N1cnMgYmVjYXVzZSB0aGUgZWRnZSB0cmlnZ2VyZWQgcmVzZXQgaXMgaW4gdGhl
IGV2ZW50IHNlbnNpdGl2aXR5IGxpc3QgYnV0IHRoZXJlIGlzIG5vIGNvcnJlc3BvbmRpbmcgaWYg
c3RhdGVtZW50Lg0NRXhhbXBsZSA0LjIuMi4xLjI6DWFsd2F5cyBAIChwb3NlZGdlIENMT0NLIG9y
IHBvc2VkZ2UgUkVTRVQpDQlPVVQgPSBJTjsNDUluIEV4YW1wbGUgNC4yLjIuMS4zLCBubyBzeW50
YXggZXJyb3Igb2NjdXJzLCBidXQgdGhlIGxvZ2ljIGlzIGluY29ycmVjdCBiZWNhdXNlIGFuIGFj
dGl2ZSBsb3cgQ0xFQVIgaXMgaW5mZXJyZWQgaW4gdGhlIGV2ZW50IHNlbnNpdGl2aXR5IGxpc3Qs
IGJ1dCB0aGUgbG9naWMgZGVmaW5lcyBhbiBhY3RpdmUgaGlnaCBDTEVBUi4NDUV4YW1wbGUgNC4y
LjIuMS4zOg1hbHdheXMgQCAocG9zZWRnZSBDTE9DSyBvciBuZWdlZGdlIENMRUFSKQ1pZiAoQ0xF
QVIpLy9UaGlzIHRlcm0gc2hvdWxkIGJlIGludmVydGVkICh+Q0xFQVIpIHRvIG1hdGNoIHRoZSBz
ZW5zZSBvZiB0aGUgZXZlbnQgc2Vuc2l0aXZpdHkgbGlzdC4NCU9VVCA9IDA7DWVsc2UNCU9VVCA9
IElOOw2FDQ1JbiBFeGFtcGxlIDQuMi4yLjEuNCwgYW4gZXJyb3Igb2NjdXJzIGJlY2F1c2UgbW9y
ZSB0aGFuIHRocmVlIGV2ZW50LXRyaWdnZXJlZCB2YXJpYWJsZXMgYXJlIGluIHRoZSBldmVudCBz
ZW5zaXRpdml0eSBsaXN0Lg0NRXhhbXBsZSA0LjIuMi4xLjQ6DWFsd2F5cyBAIChwb3NlZGdlIENM
T0NLIG9yIHBvc2VkZ2UgQ0xFQVIgb3IgcG9zZWRnZSBTRVQgb3IgcG9zZWRnZSBSRVNFVCkNCWlm
IChSRVNFVCkNCU9VVCA9IERBVEE7DQllbHNlIGlmIChTRVQpDQlPVVQgPSAtMTsNCWVsc2UgaWYg
KENMRUFSKQ0JT1VUID0gMDsNCWVsc2UNCU9VVCA9IElOOw2FDQ1JbiBFeGFtcGxlIDQuMi4yLjEu
NSwgYW4gZXJyb3Igb2NjdXJzIGJlY2F1c2UgbmVzdGVkIGV2ZW50IHNlbnNpdGl2aXR5IGxpc3Rz
IGFyZSBub3QgYWxsb3dlZC4gQSBzeW5jaHJvbm91cyBhbHdheXMgYmxvY2sgY2FuIGNvbnRhaW4g
b25seSBvbmUgc3luY2hyb25vdXMgZXZlbnQgc2Vuc2l0aXZpdHkgbGlzdC4NDUV4YW1wbGUgNC4y
LjIuMS41Og1hbHdheXMgQCAocG9zZWRnZSBDTE9DSykNCWJlZ2luDQlPVVQgPSAwOw0JQChwb3Nl
ZGdlIENMT0NLKTsNCU9VVCA9IDE7DQllbmQNDTQuMyBNb2RlbGluZyBMZXZlbC1TZW5zaXRpdmUg
U3RvcmFnZSBEZXZpY2UgQmFzZWQgSGFyZHdhcmUgRWxlbWVudHMgKExhdGNoZXMpDVZlcmlsb2cg
YXNzdW1lcyB0aGF0IGEgdmFyaWFibGUgbm90IGV4cGxpY2l0bHkgYXNzaWduZWQgaG9sZHMgaXRz
IHByZXZpb3VzIHZhbHVlLiBUaGUgaGFyZHdhcmUgc3ludGhlc2l6ZWQgdG8gaG9sZCBhIHZhbHVl
IGFmdGVyIGFuIGFzc2VydGlvbiBjb25kaXRpb24gaXMgcmVtb3ZlZCBpcyBhIGxhdGNoLiBMYXRj
aGVzIHdpbGwgYmUgaW5mZXJyZWQgYnkgaW5jb21wbGV0ZSBub24tc3luY2hyb25vdXMgYXNzaWdu
bWVudHMuIEFuIGFzc2lnbm1lbnQgc2hhbGwgYmUgY29tcGxldGUgaWYgYW5kIG9ubHkgaWYgZWl0
aGVyIG9mIHRoZSBmb2xsb3dpbmcgaXMgdHJ1ZToNYSkgSXQgaXMgdW5jb25kaXRpb25hbA1iKSBJ
dCBpcyBjb25kaXRpb25hbCBhbmQgYSBicmFuY2ggZXhpc3RzIGZvciBldmVyeSBwb3NzaWJsZSB2
YWx1ZSBvZiB0aGUgc2VsZWN0b3IsIGFuZCBlYWNoIGJyYW5jaCBjb21wdXRlcyBhIHZhbHVlIGlu
ZGVwZW5kZW50IG9mIHRoZSBwcmV2aW91cyB2YWx1ZSBvZiB0aGUgdGFyZ2V0IG9mIHRoZSBhc3Np
Z25tZW50LiBBbnkgYXNzaWdubWVudCB0aGF0IGlzIG5vdCBjb21wbGV0ZSBpcyBjYWxsZWQgYW4g
aW5jb21wbGV0ZSBhc3NpZ25tZW50LiBTaW5jZSBhIGxldmVsLXNlbnNpdGl2ZSBzdG9yYWdlIGRl
dmljZSBwYXNzZXMgdGhlIGRhdGEgdG8gdGhlIG91dHB1dCB3aGVuIHRoZSBlbmFibGUgaXMgYWN0
aXZlLCB0aGUgZGF0YSB2YXJpYWJsZXMgc2hhbGwgYmUgcHJlc2VudCBpbiB0aGUgZXZlbnQgc2Vu
c2l0aXZpdHkgbGlzdCBvZiB0aGUgYWx3YXlzIHN0YXRlbWVudCBtb2RlbGluZyB0aGUgbGV2ZWwt
c2Vuc2l0aXZlIHN0b3JhZ2UgZGV2aWNlLg1JZiBhbiBhc3NpZ25tZW50IGlzIG5vdCBjb21wbGV0
ZSwgdW53YW50ZWQgbGF0Y2hlcyBtYXkgYmUgc3ludGhlc2l6ZWQuDQ1JbiBFeGFtcGxlIDQuMy4x
IGEgbGV2ZWwtc2Vuc2l0aXZlIHN0b3JhZ2UgZGV2aWNlIChsYXRjaCkgaXMgaW5mZXJyZWQuIElm
IEVOQUJMRSBpcyBkaXNhc3NlcnRlZCwgUSB3aWxsIGhvbGQgaXRzIHZhbHVlLg0NRXhhbXBsZSA0
LjMuMToNYWx3YXlzIEAgKEVOQUJMRSBvciBEKQ0JaWYgKEVOQUJMRSkNCVEgPSBEOw2FDQ1JbiBF
eGFtcGxlIDQuMy4yLCBhIGxhdGNoIGlzIG5vdCBpbmZlcnJlZCBiZWNhdXNlIHRoZSBhc3NpZ25t
ZW50IHRvIFEgaXMgY29tcGxldGUuDQ1FeGFtcGxlIDQuMy4yOg1hbHdheXMgQCAoRU5BQkxFIG9y
IEQpDQlpZiAoRU5BQkxFKQ0JUSA9IEQ7DQllbHNlIFEgPSB6Ow2FDQ0NNC40IE90aGVyIFNlbWFu
dGljIFJ1bGVzLg0NNC40LjEgTXVsdGlwbGUgZGVjbGFyYXRpb25zIG9mIHRoZSBzYW1lIG5ldCBv
ciByZWdpc3RlciBzaGFsbCBiZSBjb25zaXN0ZW50IGluIGJvdGggc2l6ZSBhbmQgdHlwZS4gSW4g
YWRkaXRpb24sIHRoZSB1c2Ugb2YgdGhlIHJhbmdlIGluIHRoZSBwb3J0IGFzc2lnbm1lbnRzIGlz
IG9wdGlvbmFsLiBJZiBsZWZ0IHVuc3BlY2lmaWVkIGFzIGluIEV4YW1wbGUgNC40LjEuMiwgdGhl
IHBvcnQgYXNzaWdubWVudCB3aWxsIGFzc3VtZSB0aGUgc2FtZSBzaXplIGFuZCByYW5nZSBvZiB0
aGUgbmV0IHR5cGUgYXNzaWdubWVudC4NDUVESVRPUpJTIE5PVEU6IFRoZSBFeGVtcGxhciBjb21w
aWxlciBhY2NlcHRzIHRoZSBmb2xsb3dpbmcuIEkgY2FuknQgdGVsbCBmcm9tIHJlYWRpbmcgMTM2
NCBpZiBpdCBzcGVjaWZpY2FsbHkgZm9yYmlkcyB0aGUgaW5mZXJlbmNlIG9mIHRoZSBwb3J0IHJh
bmdlLiBSZWdhcmRsZXNzIG9mIDEzNjQsIEmSZCBsaWtlIHRvIHNhdmUgdGhlIGRlc2lnbmVycyBz
b21lIHVubmVjZXNzYXJ5IHR5cGluZywgaWYgcG9zc2libGUuDQ1FeGFtcGxlIDQuNC4xLjE6DQlv
dXRwdXQgWzI6MF0gb3V0OwkvLyBSYW5nZSBpcyBvcHRpb25hbCBmb3IgcG9ydCBhc3NpZ25tZW50
cy4NhQ0NRXhhbXBsZSA0LjQuMS4yOg0Jb3V0cHV0IG91dDsJLy8gVGhpcyBmb3JtIGlzIGFsc28g
YWNjZXB0YWJsZS4NCXdpcmUgWzI6MF0gb3V0OwkvLyBUaGUgbW9kdWxlIHBvcnQgd2lsbCBpbmZl
ciB0aGlzIHJhbmdlLg2FDQ1FeGFtcGxlIDQuNC4xLjM6DQlvdXRwdXQgWzI6MF0gb3V0Ow0Jd2ly
ZSBbMjoxXSBvdXQ7IC8vIE5vdCBzdXBwb3J0ZWQgYmVjYXVzZSB0aGUgdmVjdG9yIHJhbmdlcyBk
byBub3QgbWF0Y2guDQ00LjQuMiBHbG9iYWwgcmVmZXJlbmNlcyBtYXkgbm90IGNyb3NzIG1vZHVs
ZSBib3VuZGFyaWVzLiBWYXJpYWJsZXMgbXVzdCBiZSBkZWNsYXJlZCBpbiBhIHBvcnQgbGlzdCBi
ZWZvcmUgYmVpbmcgdXNlZCBpbiBsb3dlciBsZXZlbCBzdHJ1Y3R1cmVzIChsb3dlciBsZXZlbCBt
b2R1bGVzLCBmdW5jdGlvbnMsIHRhc2tzLCBvciBVRFBzKS4NDUluIEV4YW1wbGUgNC40LjIuMSwg
YW4gZXJyb3Igb2NjdXJzIGJlY2F1c2UgYW4gdXB3YXJkIGhpZXJhcmNoaWNhbCByZWZlcmVuY2Ug
aXMgbm90IHN1cHBvcnRlZC4NDUV4YW1wbGUgNC40LjIuMToNbW9kdWxlIHRvcChJTiwgT1VUKTsN
CWlucHV0IElOOw0Jb3V0cHV0IE9VVDsNCWJvdCBJTlNUKCk7DWVuZG1vZHVsZQ0NbW9kdWxlIGJv
dDsNYXNzaWduIHRvcC5PVVQgPSB0b3AuSU47IC8vIE5vdCBzdXBwb3J0ZWQgYmVjYXVzZSBnbG9i
YWwgcmVmZXJlbmNlIGNyb3NzZXMgaGlnaGVyIGxldmVsIG1vZHVsZSBib3VuZGFyeS4NZW5kbW9k
dWxlDQ1JbiBFeGFtcGxlIDQuNC4yLjIsIHRoZSBjb2RlIGNvbXBpbGVzIHdpdGhvdXQgZXJyb3Ig
YmVjYXVzZSBsb2NhbCByZWZlcmVuY2VzIGFyZSBzdXBwb3J0ZWQuDUV4YW1wbGUgNC40LjIuMjoN
bW9kdWxlIHRvcChJTiwgT1VUKTsNCWlucHV0IElOOw0Jb3V0cHV0IE9VVDsNCWJvdCBJTlNUKElO
LCBPVVQpOw1lbmRtb2R1bGUNDW1vZHVsZSBib3QgKGJvdF9pbnB1dCwgYm90X291dHB1dCk7DWFz
c2lnbiBib3Rfb3V0cHV0ID0gYm90X2lucHV0OyAvLyBTdXBwb3J0ZWQgdGhyb3VnaCBwb3J0IGxp
c3QgYXNzaWdubWVudC4NZW5kbW9kdWxlDQ1FRElUT1KSUyBOT1RFOiBTaGFsb20gQnJlc3RpY2tl
ciBhc2tzIGlmIHN1cHBvcnQgZm9yIHRoZSBmb2xsb3dpbmcgaXMgbmVjZXNzYXJ5LiBPbmUgb2Yg
dGhlIGdyZWF0IHRoaW5ncyBhYm91dCBWZXJpbG9nIHNpbXVsYXRpb24gaXMgdGhhdCBhbGwgc2ln
bmFscyBpbiB0aGUgZGVzaWduIGFyZSCRdmlzaWJsZZIgZnJvbSB0aGUgdG9wIGxldmVsLiBIYXZp
bmcgdGhpcyBjYXBhYmlsaXR5IGZvciB3aXJpbmcgdXAgdG9wLWxldmVsIHRlc3QgcG9pbnRzIHdv
dWxkIGJlIGdyZWF0LiBJIGRvbpJ0IHNlZSB3aHkgdGhpcyB3b3VsZCBiZSBhIHByb2JsZW0gZm9y
IHRoZSBzeW50aGVzaXplciBhcyBsb25nIGFzIHdlknJlIGFsbG93aW5nIG9ubHkgcGluIGFzc2ln
bm1lbnQgYW5kIG5vdCBhbGxvd2luZyBkdW1iIHRoaW5ncyBsaWtlIGNyZWF0aW5nIGxvZ2ljIGFj
cm9zcyBtb2R1bGUgYm91bmRhcmllcy4gSXQgaXMgc3VjaCBhIHBhaW4gdG8gaG9vayB1cCB0ZXN0
IHNpZ25hbHMgYnVyaWVkIGluIHRoZSBoaWVyYXJjaHksIHBhcnRpY3VsYXJseSB3aGVuIG11bHRp
cGxlIGluc3RhbmNlcyBvZiBhIG1vZHVsZSBhcmUgdXNlZC4NDUluIEV4YW1wbGUgNC40LjIuMywg
dGhlIGNvZGUgY29tcGlsZXMgd2l0aG91dCBlcnJvciBiZWNhdXNlIGRvd253YXJkIGNvbm5lY3Rp
b24gYWNyb3NzIG1vZHVsZSBib3VuZGFyaWVzIGlzIHN1cHBvcnRlZC4NRXhhbXBsZSA0LjQuMi4z
Og1tb2R1bGUgdG9wKElOLCBPVVQsIFRFU1QpOw0JaW5wdXQgSU47DQlvdXRwdXQgT1VUOw0JYm90
IElOU1QoSU4sIE9VVCk7DQlURVNUCT0JSU5TVC5ib3Rfb3V0cHV0OwkvLyBEb3dud2FyZCBjb25u
ZWN0aW9uIGFjcm9zcyBtb2R1bGUgDS8vICBib3VuZGFyaWVzIGFyZSBzdXBwb3J0ZWQuDWVuZG1v
ZHVsZQ0NbW9kdWxlIGJvdCAoYm90X2lucHV0LCBib3Rfb3V0cHV0KTsNYXNzaWduIGJvdF9vdXRw
dXQgPSBib3RfaW5wdXQ7IC8vIFN1cHBvcnRlZCB0aHJvdWdoIHBvcnQgbGlzdCBhc3NpZ25tZW50
Lg1lbmRtb2R1bGUNDQ1JbiBFeGFtcGxlIDQuNC4yLjQsIGFuIGVycm9yIG9jY3VycyBiZWNhdXNl
IGRvd253YXJkIHJlZmVyZW5jZXMgYWNyb3NzIG1vZHVsZSBib3VuZGFyaWVzIGNhbiBiZSB1c2Vk
IGZvciBpbnRlcmNvbm5lY3Rpb24gcHVycG9zZXMgb25seS4NDUV4YW1wbGUgNC40LjIuNDoNbW9k
dWxlIHRvcChJTiwgT1VULCBURVNUMSwgVEVTVDIpOw0JaW5wdXQgSU4sIFRFU1QxOw0Jb3V0cHV0
IE9VVCwgVEVTVDI7DQlib3QgSU5TVChJTiwgT1VUKTsNCVRFU1QyCT0JVEVTVDEgJiBJTlNULmJv
dF9vdXRwdXQ7IC8vIE5vdCBzdXBwb3J0ZWQuDWVuZG1vZHVsZQ0NbW9kdWxlIGJvdCAoYm90X2lu
cHV0LCBib3Rfb3V0cHV0KTsNYXNzaWduIGJvdF9vdXRwdXQgPSBib3RfaW5wdXQ7IAkvLyBTdXBw
b3J0ZWQgdGhyb3VnaCBwb3J0IGxpc3QgYXNzaWdubWVudC4NZW5kbW9kdWxlDQ0NNC40LjMgQWxs
IGluc3RhbmNlIGlucHV0cyBzaG91bGQgYmUgY29ubmVjdGVkLg0NRXhhbXBsZSA0LjQuMy4xOg1t
b2R1bGUgdG9wKElOLCBPVVQpOw0JaW5wdXQgSU47DQlvdXRwdXQgT1VUOw0JYm90IElOU1QoMSdi
MCwgT1VUKTsJLy8gVW51c2VkIGlucHV0IGNvbm5lY3RlZC4NZW5kbW9kdWxlDQ1tb2R1bGUgYm90
IChJTiwgT1VUKTsNYXNzaWduIGJvdF9vdXRwdXQgPSBib3RfaW5wdXQ7DWVuZG1vZHVsZQ0NSUVF
RSBQMTM2NC4xDUJBU0VEIE9OIFRIRSBWRVJJTE9HIK4gSEFSRFdBUkUgREVTQ1JJUFRJT04gTEFO
R1VBR0UgSnVuZSAzLCAxOTk4DVNlY3Rpb24gNCBDb3B5cmlnaHQgQCAxOTk4IElFRUUuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuIDExDVRoaXMgaXMgYW4gdW5hcHByb3ZlZCBJRUVFIFN0YW5kYXJkcyBE
cmFmdCwgc3ViamVjdCB0byBjaGFuZ2UuDQ0NDQ0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAACUEAAAEBQAADAYAABAGAACKBgAAqwYAABwHAAAe
BwAAIAcAAEQHAABLBwAAqAcAAK4HAADpBwAA8QcAAPMHAACCCAAAWwkAAGgJAACDCQAAiwkAALkJ
AAAbCgAAIwoAACYKAAAuCgAAmwsAAJ4LAACrCwAArQsAALMLAAC0CwAAtQsAALsLAAC9CwAA0QsA
AN4LAADgCwAA6AsAAPMLAAD1CwAACgwAAA4MAAAPDAAAHAwAAB4MAAAkDAAAJQwAACcMAACuDAAA
swwAALQMAADBDAAAwwwAAMsMAADNDAAA1AwAAGYNAABzDQAAdQ0AAH0NAACDDQAAhQ0AAHQOAACB
DgAAgw4AAIsOAAAWDwAAHA8AADEPAAA1DwAAzg8AANsPAADdDwAA5Q8AABoQAAAcEAAAJBAAACoQ
AABBEAAARhAAAEcQAABNEAAAZBAAAHEQAABzEAAAexAAAIMQAACFEAAAgREAAI4RAACREQAA+gD2
8fb67+vv9vr2+vbx9u8A6QDpAPb69vr2+vH2+vb69vr28fb69vr2APbx9vr2+vYA9vH2+vb69vH2
+vb69vH2+vb69vr28fb69vr2+vb69vr28fb69vr28fYAAAM1CIEGNQiBaAgAAANoCAAJNgiBQioB
aAgABkIqAWgIAAAJNQiBQioBaAgAAFwABAAAJQQAAAQFAACJBgAAigYAAKsGAADzBwAAWgkAAFsJ
AAC3CQAAuAkAAIAKAACdCwAAngsAAK0LAADMCwAA0AsAANELAADgCwAACgwAAA4MAAAPDAAAHgwA
AGQMAACuDAAAswwAALQMAADDDAAADA0AAPoAAAAAAAAAAAAAAAD4AAAAAAAAAAAAAAAA9QAAAAAA
AAAAAAAAAPUAAAAAAAAAAAAAAAD6AAAAAAAAAAAAAAAA9QAAAAAAAAAAAAAAAPUAAAAAAAAAAAAA
AAD1AAAAAAAAAAAAAAAA9QAAAAAAAAAAAAAAAPUAAAAAAAAAAAAAAAD1AAAAAAAAAAAAAAAA9QAA
AAAAAAAAAAAAAPUAAAAAAAAAAAAAAAD1AAAAAAAAAAAAAAAA9QAAAAAAAAAAAAAAAPUAAAAAAAAA
AAAAAAD1AAAAAAAAAAAAAAAA9QAAAAAAAAAAAAAAAPUAAAAAAAAAAAAAAAD4AAAAAAAAAAAAAAAA
9QAAAAAAAAAAAAAAAPUAAAAAAAAAAAAAAAD1AAAAAAAAAAAAAAAA9QAAAAAAAAAAAAAAAPgAAAAA
AAAAAAAAAAD1AAAAAAAAAAAAAAAA9QAAAAAAAAAAAAAAAPUAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AwAAMSQAAAESAAAEAAAxJABAJgAAHAAEAAAlBAAABAUAAIkGAACKBgAAqwYAAPMHAABaCQAAWwkA
ALcJAAC4CQAAgAoAAJ0LAACeCwAArQsAAMwLAADQCwAA0QsAAOALAAAKDAAADgwAAA8MAAAeDAAA
ZAwAAK4MAACzDAAAtAwAAMMMAAAMDQAAYQ0AAGUNAABmDQAAdQ0AAL8NAADQDQAA0g0AANMNAABz
DgAAdA4AAIMOAADGDgAAFg8AABwPAAAmDwAAMQ8AADUPAAA2DwAA/vn28/7w7ern5OHe29jV0s/M
ycTBvru4s7CtqqekoZ6bmJWSj4yJhoOAff56dwAAAAAFBvH///8FBvX///8FBm73//8FBnT3//8F
BsT3//8FBgf4//8FBhb4//8FBhf4//8FBrf4//8FBrj4//8FBrr4//8FBsv4//8FBhX5//8FBiT5
//8FBiX5//8FBin5//8FBn75//8FBsf5//8FBtb5//8FBtf5//8IAhIABtz5//8ABQYm+v//BQZs
+v//BQZ7+v//BQZ8+v//CAISAAaA+v//AAUGqvr//wUGufr//wUGuvr//wUGvvr//wUG3fr//wUG
7Pr//wUG7fr//wUGCvz//wUG0vz//wUG0/z//wUGL/3//wUGMP3//wUGl/7//wUG3////wUGd/3/
/wUG/P7//wgCEgAG2////wACBQAuDA0AAGENAABlDQAAZg0AAHUNAAC/DQAA0A0AANINAADTDQAA
cw4AAHQOAACDDgAAxg4AABYPAAAcDwAAJg8AADEPAAA1DwAANg8AAM0PAADODwAA3Q8AABkQAAAj
EAAAQBAAAEYQAABjEAAAZBAAAHMQAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAA
AAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA
/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAA
AAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD3AAAAAAAAAAAA
AAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwA
AAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPcAAAAAAAAAAAAAAAD8AAAAAAAA
AAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAABAAAMSQAQCYAAwAAMSQAABw2DwAAzQ8AAM4PAADdDwAAGRAAACMQAABAEAAARhAAAGMQAABk
EAAAcxAAAIIQAADSEAAA3RAAAN4QAACAEQAAgREAAJARAACfEQAAphEAAPgRAAAFEgAAChIAAAsS
AADFEgAAxhIAANYSAADsEgAA8xIAACsTAAA1EwAAbxMAAHQTAAB1EwAADBQAAA0UAAAdFAAAOhQA
AEEUAABkFAAAbhQAAJUUAACaFAAAmxQAAPYUAABZFQAAWhUAAGoVAAB4FQAAkhUAAJ8VAAD8+fbz
8O7r6OXi39zu7u7u2fzW0+7QzcrHxMG+u7i1sq+sqaajoJ2al5SR7o6LiIWCfwUGCf///wUGI///
/wUGMf///wUGQf///wUGQv///wUGpf///wUGXv3//wUGY/3//wUGiv3//wUGlP3//wUGt/3//wUG
vv3//wUG2/3//wUG6/3//wUG7P3//wUGg/7//wUGhP7//wUGif7//wUGw/7//wUGzf7//wUGBf//
/wUGDP///wUGIv///wUGMv///wUGM////wUG7f///wUG7v///wUG8////wUG2v///wUG4f///wUG
/////wUGof///wUGsP///wUGv////wUGwP///wUG3f///wUG4////wIFAAAFBg3///8FBkn///8F
Blj///8FBln///8FBvD///8AMnMQAACCEAAA0hAAAN0QAADeEAAAgBEAAIERAACQEQAAnxEAAKYR
AAD4EQAABRIAAAoSAAALEgAAxRIAAMYSAADWEgAA7BIAAPMSAAArEwAANRMAAG8TAAB0EwAAdRMA
AAwUAAANFAAAHRQAADoUAABBFAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD3AAAAAAAAAAAA
AAAA9wAAAAAAAAAAAAAAAPcAAAAAAAAAAAAAAAD3AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwA
AAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPcAAAAAAAAAAAAAAAD8AAAAAAAA
AAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAA
APwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAA
AAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAA
AAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAQAADEkAEAmAAMAADEkAAAckREAAJkRAACgEQAAphEAAAYSAAAKEgAAxhIAANQSAADWEgAA3hIA
AOQSAADmEgAA7RIAAPMSAAD0EgAA+hIAACwTAAAuEwAANhMAADwTAABwEwAAdBMAAA0UAAAbFAAA
HRQAACUUAAArFAAALRQAADIUAAA0FAAAOxQAAEEUAABlFAAAZxQAAJYUAACaFAAAmxQAAKkUAABa
FQAAaBUAAGoVAABwFQAAeBUAAHwVAACSFQAAlxUAAJ8VAAClFQAArRUAALMVAADCFQAAyBUAAA4W
AAAYFgAAGRYAACcWAAApFgAAMRYAADgWAAA+FgAAixYAAI8WAACQFgAABRcAAAYXAAAUFwAAFhcA
ABwXAAAyFwAANxcAAEgXAABMFwAAXRcAAGAXAACoFwAAshcAALMXAAC5FwAA1xcAANwXAADvFwAA
9RcAAP8XAAACGAAADBgAAA8YAAAhGAAAKRgAACsYAAAyGAAAORgAADsYAAA8GAAAQxgAAEsYAABQ
GAAA+vb69vr28fb69vr2+vb69vr2+vb69vH2+vb69vr2+vb69vr2+vbx9vr2+vb69vr2+vb69vr2
8fb69vr2+vYA9vH2+vb69vr2+vb69vr2+vb69vr2+vb69vr2+vb69voAAAAJNgiBQioBaAgABkIq
AWgIAAAJNQiBQioBaAgAAF9BFAAAZBQAAG4UAACVFAAAmhQAAJsUAAD2FAAAWRUAAFoVAABqFQAA
eBUAAJIVAACfFQAArRUAAMIVAAAOFgAAGBYAABkWAAApFgAANxYAAD4WAABKFgAAihYAAI8WAACQ
FgAABRcAAAYXAAAWFwAALhcAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAA
APwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA9wAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAA
AAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAA
AAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8
AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAA
AAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPUAAAAAAAAAAAAA
AAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAESAAAE
AAAxJABAJgADAAAxJAAAHJ8VAACtFQAAwhUAAA4WAAAYFgAAGRYAACkWAAA3FgAAPhYAAEoWAACK
FgAAjxYAAJAWAAAFFwAABhcAABYXAAAuFwAARBcAAFkXAABoFwAAiBcAAKgXAACyFwAAsxcAANMX
AADrFwAA+xcAAAgYAAAdGAAAURgAAHIYAACNGAAApBgAAL0YAADaGAAA9BgAAAgZAAAlGQAARRkA
AFsZAABvGQAAhRkAAJkZAAClGQAArRkAALgZAAD8+fbz8O3q5+Th3tvW09DNysfEwb67uLWyr6yp
pqOgnZqXlJGOi4iFgn98eXYAAAAAAAAABQbu+v//BQb2+v//BQYC+///BQYW+///BQYs+///BQZA
+///BQZW+///BQZ2+///BQaT+///BQan+///BQbB+///BQbe+///BQb3+///BQYO/P//BQYp/P//
BQZK/P//BQZ+/P//BQaT/P//BQag/P//BQaw/P//BQbI/P//BQbo/P//BQbp/P//BQbz/P//BQYT
/f//BQYz/f//BQZC/f//BQZX/f//BQZt/f//BQaF/f//BQaV/f//BQaW/f//CAISAAYL/v//AAUG
DP7//wUGEf7//wUGUf7//wUGXf7//wUGZP7//wUGcv7//wUGgv7//wUGg/7//wUGjf7//wUG2f7/
/wUG7v7//wUG/P7//wAtLhcAAEQXAABZFwAAaBcAAIgXAACoFwAAshcAALMXAADTFwAA6xcAAPsX
AAAIGAAAHRgAAFEYAAByGAAAjRgAAKQYAAC9GAAA2hgAAPQYAAAIGQAAJRkAAEUZAABbGQAAbxkA
AIUZAACZGQAApRkAAK0ZAAC4GQAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAA
AAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwA
AAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAA
AAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAA
APwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAA
AAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAA
AAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAAA
AAAAAAAAAwAAMSQAAB1QGAAAWRgAAFsYAABsGAAAcRgAAJUYAACjGAAAsBgAALUYAADUGAAA2RgA
AAQZAAAIGQAAHxkAACQZAABrGQAAbxkAAJEZAACZGQAAoRkAAKUZAACpGQAArRkAAK4ZAAC4GQAA
uRkAAAIaAABBGgAASRoAAEwaAABUGgAApBoAAKsaAAC3GgAA0xoAABMbAAAaGwAAJRsAAC0bAAAv
GwAANhsAAD4bAABDGwAAXxsAAJ8bAACmGwAAsRsAALkbAAC7GwAAwhsAAM8bAAD9GwAACR0AABAd
AABWHQAAXh0AAGEdAABpHQAAzR0AANwdAAAYHgAAIB4AACIeAAApHgAAPx4AAE4eAACKHgAAkh4A
AJQeAACbHgAAsR4AAMAeAAASHwAAGh8AABwfAAAjHwAALB8AAC4fAABFHwAASh8AAFgfAABnHwAA
tx8AAL8fAADBHwAAyB8AANEfAADTHwAA6B8AAO0fAAD8HwAARyAAAK8gAAC2IAAA+SAAAAEhAAAE
IQAA/Pf89/z3/Pf89/z3/Pf89/z3/Pf89/z3/Pf89/z3/Pf89/z3/Pf89/wA9/z3/Pf89/z3/Pf8
9/z3/PL89/z3/PL89/z3/PL89/z3/Pf89/zy/Pf89/z3/Pf89/z3/Pf8CTYIgUIqAWgIAAk1CIFC
KgFoCAAGQioBaAgAYLgZAAC5GQAA5hkAAOcZAAACGgAAthoAALcaAADTGgAAJRsAAD4bAABCGwAA
QxsAAF8bAACxGwAAyhsAAM4bAADPGwAA/RsAAKwcAADMHQAAzR0AAN4dAAAYHgAAMR4AADweAAA+
HgAAPx4AAFAeAACKHgAAox4AAK4eAACwHgAAsR4AAMIeAAASHwAAKx8AADcfAABEHwAASh8AAFUf
AABXHwAAWB8AAGkfAAC3HwAA0B8AANofAADnHwAA7R8AAPgfAAD6HwAA+x8AAPwfAABHIAAA/Pn2
9PHu9Ovo49706+jb2NXSz8zJxsP09MC9urf09MC9urSxrquopaKfnJmWk5CNioeE9AUGs/7//wUG
tP7//wUGtv7//wUGwf7//wUGx/7//wUG1P7//wUG3v7//wUG9/7//wUGRf///wUGVv///wUGV///
/wUGWf///wUGZP///wUGav///wUGd////wUGg////wUGnP///wUGsv///wUG7P///wUG/f///wUG
/v///wUGK/3//wUGZf3//wUGdv3//wUGd/3//wUGl/7//wUGRv///wUGdP///wUGdf///wUGef//
/wgCEgAGdf///wAIAhIABnn///8ABQaS////BQbk////BQYx////BQbl////AgUAAAUGtfr//wUG
4vr//wUG4/r//wA0uBkAALkZAADmGQAA5xkAAAIaAAC2GgAAtxoAANMaAAAlGwAAPhsAAEIbAABD
GwAAXxsAALEbAADKGwAAzhsAAM8bAAD9GwAArBwAAMwdAADNHQAA3h0AABgeAAAxHgAAPB4AAD4e
AAA/HgAAUB4AAIoeAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD3AAAA
AAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD3AAAAAAAAAAAAAAAA/AAAAAAAAAAA
AAAAAPwAAAAAAAAAAAAAAAD1AAAAAAAAAAAAAAAA9QAAAAAAAAAAAAAAAPcAAAAAAAAAAAAAAAD8
AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAA
AAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAA
AAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPcAAAAAAAAAAAAAAAD3AAAAAAAAAAAAAAAA/AAA
AAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABEgAABAAAMSQA
QCYAAwAAMSQAAByKHgAAox4AAK4eAACwHgAAsR4AAMIeAAASHwAAKx8AADcfAABEHwAASh8AAFUf
AABXHwAAWB8AAGkfAAC3HwAA0B8AANofAADnHwAA7R8AAPgfAAD6HwAA+x8AAPwfAABHIAAAwiEA
AMMhAAClIgAApiIAAPwAAAAAAAAAAAAAAAD3AAAAAAAAAAAAAAAA9wAAAAAAAAAAAAAAAPwAAAAA
AAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAA
AAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwA
AAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAA
AAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAA
APwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA9wAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAA
AAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAxJABA
JgADAAAxJAAAHAQhAAAMIQAAliEAAKYhAADDIQAAxiEAAMkhAAAVIgAAGCIAADgiAAClIgAA6iIA
APsiAAD9IgAABSMAAAcjAAAOIwAAFSMAABcjAAAYIwAAHyMAACYjAAAoIwAAPiMAAEMjAADXIwAA
2SMAAOYjAAD3IwAA+SMAAAEkAAADJAAACiQAABQkAAAbJAAALyQAAOskAADsJAAA/SQAAP8kAAAH
JQAACSUAABAlAAAaJQAAISUAACklAAArJQAAlyUAAJwlAAAmJgAANyYAADkmAABBJgAAQyYAAEom
AABUJgAAWyYAAGUmAABsJgAAdCYAAHsmAACEJgAAhiYAAJ0mAACkJgAAtyYAAL4mAADSJgAA1yYA
AFEnAABXJwAAmCcAAKknAACrJwAAsycAALUnAAC8JwAAxScAAMsnAADWJwAA1ycAANgnAADfJwAA
8ycAAPcnAAD4JwAARigAAFApAABZKQAAiCoAAJMqAABIKwAATysAAJ4rAAD69vr29PD08PQA9uv2
+vb69vr2+vb69vr2+vbr9vr2+vb69gD26/b69vr2+vb69vr26/b69vr2+vb69vr2+vb69vr2+vb6
9uv2+vb69vr2+vb69vr2+vbr9uv2+vYACTYIgUIqAWgIAAY1CIFoCAAAA2gIAAZCKgFoCAAACTUI
gUIqAWgIAABdRyAAAMIhAADDIQAApSIAAKYiAADpIgAA6iIAAP0iAAAlIwAALyMAAD0jAABDIwAA
UCMAAFEjAADlIwAA5iMAAPkjAAAjJAAALiQAAC8kAADrJAAA7CQAAP8kAAApJQAAjSUAAJclAACc
JQAApyUAAKklAACqJQAAJSYAACYmAAA5JgAAgyYAAI8mAACcJgAAqyYAALYmAADHJgAA0SYAANcm
AADiJgAA5CYAAOUmAACXJwAAmCcAAKsnAADEJwAAyycAANUnAADoJwAA8icAAPcnAAD8+fbz8O3q
5+Th3tvY1dLPzMrHwr+8ubbKs8rKysrKsK2qyqfKx8qzpKGem5iVko+MicqzAAAAAAAAAAAAAAUG
8v7//wUG/P7//wUGA////wUGHP///wUGL////wUGMP///wUG4v///wUG4////wUG5f///wUG8P//
/wUG8////wUGov///wUG7P///wUG/////wUG9v///wUG+v7//wUGJP///wUGN////wUGOP///wgC
EgAG9P///wAFBvX///8CBQAABQYD/P//BQYW/P//BQYX/P//BQar/P//BQas/P//BQa5/P//BQa/
/P//BQbN/P//BQbX/P//BQb//P//BQYS/f//BQYT/f//BQZW/f//BQZX/f//BQY5/v//BQY6/v//
BQa1////ADSmIgAA6SIAAOoiAAD9IgAAJSMAAC8jAAA9IwAAQyMAAFAjAABRIwAA5SMAAOYjAAD5
IwAAIyQAAC4kAAAvJAAA6yQAAOwkAAD/JAAAKSUAAI0lAACXJQAAnCUAAKclAACpJQAAqiUAACUm
AAAmJgAAOSYAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAA
AAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA
/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAA
AAAAAAAAAAD3AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPUAAAAAAAAAAAAAAAD8AAAAAAAAAAAA
AAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA9wAAAAAAAAAAAAAAAPwA
AAAAAAAAAAAAAAD3AAAAAAAAAAAAAAAA9wAAAAAAAAAAAAAAAPcAAAAAAAAAAAAAAAD3AAAAAAAA
AAAAAAAA9wAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAESAAAEAAAxJABAJgAD
AAAxJAAAHDkmAACDJgAAjyYAAJwmAACrJgAAtiYAAMcmAADRJgAA1yYAAOImAADkJgAA5SYAAJcn
AACYJwAAqycAAMQnAADLJwAA1ScAAOgnAADyJwAA9ycAAPgnAABGKAAAiSkAAKApAACGKwAAzSsA
AM4rAABGLAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD3AAAAAAAAAAAAAAAA/AAAAAAAAAAA
AAAAAPcAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA9wAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8
AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAA
AAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAA
AAD8AAAAAAAAAAAAAAAA9wAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAA
AAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAA
AAAAAAD8AAAAAAAAAAAAAAAA9wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAADEkAEAmAAMA
ADEkAAAc9ycAAPgnAABGKAAAiSkAAKApAACGKwAAzSsAAM4rAABGLAAARywAAFYsAABtLAAAeiwA
AIIsAACELAAAhSwAANgsAADZLAAA6CwAAP8sAAAMLQAAFC0AACEtAAAjLQAAJC0AACUtAAA/LQAA
QC0AAGkuAABqLgAAWi8AAFsvAABsLwAAqi8AAKwvAACtLwAAvi8AAOwvAAAnMAAAKTAAACowAAA7
MAAATjAAAJgwAACZMAAAWjEAAFsxAAC6MQAAuzEAAMwxAADhMQAA7DEAAPkxAAAGMgAA/Pn28/Dt
6ujl4t/c6Ojo6OjZ+dbo6Ojo6Ojo2dPQzcrHxMG+u7i1sq+sqaajoJ2al5SRjosAAAAAAAAAAAAF
Bkb7//8FBlP7//8FBl77//8FBnP7//8FBoT7//8FBoX7//8FBuT7//8FBuX7//8FBqb8//8FBqf8
//8FBvH8//8FBgT9//8FBhX9//8FBhb9//8FBhj9//8FBlP9//8FBoH9//8FBpL9//8FBpP9//8F
BpX9//8FBtP9//8FBuT9//8FBuX9//8FBtX+//8FBtb+//8FBtn///8FBv////8FBmH///8FBnj/
//8FBof///8FBoj///8CBQAABQYb/P//BQZi/P//BQZI/v//BQZf/v//BQai////BQbw////BQbx
////ADWeKwAApisAAKcrAACoKwAARywAAFQsAABWLAAAXiwAAG4sAABwLAAAziwAANYsAADZLAAA
5iwAAOgsAADwLAAAAC0AAAItAAAVLQAAGS0AACUtAABFLQAAai4AAHkuAABbLwAAay8AAG0vAABz
LwAArS8AAL0vAAC/LwAAxS8AAO0vAADxLwAA8i8AAPMvAAAqMAAAOzAAADwwAABCMAAATzAAAFMw
AACZMAAAnjAAALsxAADLMQAAzDEAANIxAADiMQAA5zEAAO0xAADzMQAABjIAABAyAAARMgAAFzIA
AB0yAAAjMgAAhjIAAJAyAADtMgAA/TIAAP4yAAAEMwAAFDMAABkzAAAfMwAAJTMAAD8zAABJMwAA
SjMAAFAzAABuMwAAdDMAALgzAADCMwAAwzMAANIzAAB/NgAAjzYAAJA2AACWNgAArDYAALE2AAC3
NgAAvTYAADQ3AAA+NwAAPzcAAEU3AABjNwAAaTcAAK03AAC3NwAA+vb69vr28fbx9vr2+vbx9vH2
8fbx9vH2+vbx9vr28fbx9uv2+vbx9vH28fb69vH28fbx9vH28fbx9vH2+vbx9vH28fbx9vH28fbx
9vH2+vbx9vH28fbx9vH28fbxAApCKgFDShIAaAgAAAk1CIFCKgFoCAAGQioBaAgAAAk2CIFCKgFo
CAAAXUYsAABHLAAAViwAAG0sAAB6LAAAgiwAAIQsAACFLAAA2CwAANksAADoLAAA/ywAAAwtAAAU
LQAAIS0AACMtAAAkLQAAJS0AAD8tAABALQAAaS4AAGouAABaLwAAWy8AAGwvAACqLwAArC8AAK0v
AAC+LwAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAA
APcAAAAAAAAAAAAAAAD3AAAAAAAAAAAAAAAA9wAAAAAAAAAAAAAAAPcAAAAAAAAAAAAAAAD3AAAA
AAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA9wAAAAAAAAAA
AAAAAPcAAAAAAAAAAAAAAAD3AAAAAAAAAAAAAAAA9wAAAAAAAAAAAAAAAPcAAAAAAAAAAAAAAAD3
AAAAAAAAAAAAAAAA9wAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAA
AAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAA
AAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAADEkAEAmAAMAADEk
AAAcvi8AAOwvAAAnMAAAKTAAACowAAA7MAAATjAAAJgwAACZMAAAWjEAAFsxAAC6MQAAuzEAAMwx
AADhMQAA7DEAAPkxAAAGMgAAEDIAABEyAAAdMgAAhjIAAJAyAACRMgAA7TIAAP4yAAATMwAAHjMA
ACszAAA/MwAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAA
AAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8
AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAA
AAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAA
AAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAA
AAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAA
AAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAAAAAAAAAAAAwAAMSQA
AB0GMgAAEDIAABEyAAAdMgAAhjIAAJAyAACRMgAA7TIAAP4yAAATMwAAHjMAACszAAA/MwAASTMA
AEozAABuMwAAuDMAAMIzAADDMwAABzYAAAg2AAB/NgAAkDYAAKs2AAC2NgAAwzYAANc2AAAWNwAA
NDcAAD43AAA/NwAAYzcAAK03AAC3NwAAuDcAALk3AABBOAAAQjgAAFM4AAB2OAAAiDgAAJw4AACw
OAAA5DgAAO44AADvOAAAEzkAAPz59vPw7ern5OHe29jV0s/MycbDwL26t7SxrquopaKfnJmWk5CN
ioeEgX57eHUFBlD0//8FBlH0//8FBlv0//8FBo/0//8FBqP0//8FBrf0//8FBsn0//8FBuz0//8F
Bv30//8FBv70//8FBob1//8FBof1//8FBoj1//8FBpL1//8FBtz1//8FBgD2//8FBgH2//8FBgv2
//8FBin2//8FBmj2//8FBnz2//8FBon2//8FBpT2//8FBq/2//8FBsD2//8FBjf3//8FBjj3//8F
Bnz5//8FBn35//8FBof5//8FBtH5//8FBvX5//8FBvb5//8FBgD6//8FBhT6//8FBiH6//8FBiz6
//8FBkH6//8FBlL6//8FBq76//8FBq/6//8FBrn6//8FBiL7//8FBi77//8FBi/7//8FBjn7//8A
Lj8zAABJMwAASjMAAG4zAAC4MwAAwjMAAMMzAAAHNgAACDYAAH82AACQNgAAqzYAALY2AADDNgAA
1zYAABY3AAA0NwAAPjcAAD83AABjNwAArTcAALc3AAC4NwAAuTcAAEE4AABCOAAAUzgAAHY4AACI
OAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwA
AAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAA
AAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAA
APwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA9QAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAA
AAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAA
AAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8
AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAAxJAAPhEALEYTQAgMAADEkAAAc
tzcAALg3AAC5NwAAQTgAAEI4AABSOAAAUzgAAFk4AAB3OAAAfDgAAIk4AACPOAAA5DgAAO44AADv
OAAA9TgAABM5AAAZOQAAXjkAAGg5AABqOQAAbzkAAJc5AACaOQAAqzkAALE5AADBOQAAxjkAAMw5
AADSOQAACToAABM6AAAUOgAAGjoAACo6AAAwOgAASToAAFM6AABUOgAA3DoAABs7AAAeOwAAHzsA
APz3/Pfy/Pf89/z3/Pf89/z3/Pf89/zs8vf89/z3/Pf89/z3/Pfq/OoA6gAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAA2gIAAtPSgMAUUoDAGgIAAk2CIFCKgFoCAAJNQiBQioBaAgABkIqAWgIACqI
OAAAnDgAALA4AADkOAAA7jgAAO84AAATOQAAXjkAAGg5AABpOQAAajkAAJk5AACaOQAAqzkAAMA5
AADLOQAA2DkAAAk6AAATOgAAFDoAACo6AABJOgAAUzoAAFQ6AABhOgAAozoAANw6AAAbOwAAHDsA
AB07AAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA
/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAA
AAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAA
AAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwA
AAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAA
AAAAAAAA/AAAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA/AAAAAAAAAAAAAAA
APwAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAA+gAAAAAAAAAAAAAAAAAAAAABAAADAAAxJAAAHRM5
AABeOQAAaDkAAGk5AABqOQAAmTkAAJo5AACrOQAAwDkAAMs5AADYOQAACToAABM6AAAUOgAAKjoA
AEk6AABTOgAAVDoAAGE6AACjOgAA3DoAABs7AAAcOwAAHTsAAB47AAAfOwAA/Pn28/Dt6ufk4d7b
2NXSz8zKyMjIyMjKzAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC
DQEAAgEBAAUG7PL//wUG9vL//wUGFfP//wUGK/P//wUGLPP//wUGNvP//wUGZ/P//wUGdPP//wUG
f/P//wUGlPP//wUGpfP//wUGpvP//wUG1fP//wUG1vP//wUG1/P//wUG4fP//wUGLPT//wAZHTsA
AB47AAAfOwAA/QAAAAAAAAAAAAAAAPoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAxJAAAAQAAAAIjABIw
ABxQAQAfsNAvILDgPSGwCAcisAgHI5CgBSSQoAUlsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAEwAK
AAEAWwAPAAIAAAAAAAAAKAAAQPH/AgAoAAAABgBOAG8AcgBtAGEAbAAAAAIAAAAIAG1ICQRuSAkE
AAAAAAAAAAAAAAAAAAAAAAAAPABBQPL/oQA8AAAAFgBEAGUAZgBhAHUAbAB0ACAAUABhAHIAYQBn
AHIAYQBwAGgAIABGAG8AbgB0AAAAAAAAAAAAAAAAACwAH0ABAPIALAAAAAYASABlAGEAZABlAHIA
AAANAA8ADcYIAALgEMAhAQIAAAAsACBAAQACASwAAAAGAEYAbwBvAHQAZQByAAAADQAQAA3GCAAC
4BDAIQECAAAAOABZQAEAEgE4AAAADABEAG8AYwB1AG0AZQBuAHQAIABNAGEAcAAAAAYAEQAtRCAB
CABPSgQAUUoEADAAQkABACIBMAAAAAkAQgBvAGQAeQAgAFQAZQB4AHQAAAAFABIAMSQAAAYAQioB
aAgAAAAAAB83AAAlAAB4AAAaAP////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMkA
AADJAAAAyQAAAMkAAADJAAAAzAAAAAAEAACREQAAUBgAAAQhAACeKwAAtzcAAB87AAAgAAAAJgAA
ACoAAAAuAAAAMwAAADgAAAAABAAADA0AAHMQAABBFAAALhcAALgZAACKHgAApiIAADkmAABGLAAA
vi8AAD8zAACIOAAAHTsAAB87AAAhAAAAIwAAACUAAAAnAAAAKQAAACwAAAAtAAAAMAAAADEAAAA0
AAAANQAAADcAAAA5AAAAOwAAAAAEAAA2DwAAnxUAALgZAABHIAAA9ycAAAYyAAATOQAAHzsAACIA
AAAkAAAAKAAAACsAAAAvAAAAMgAAADYAAAA6AAAADwAA8EAAAAAAAAbwIAAAAAIMAAADAAAAAgAA
AAIAAAACAAAAAgAAAAEAAAABAAAAQAAe8RAAAAD//wAAAAD/AICAgAD3AAAQAA8AAvCSAAAAIAAI
8AgAAAABAAAAAQQAAA8AA/AwAAAADwAE8CgAAAABAAnwEAAAAAAAAAAAAAAAAAAAAAAAAAACAArw
CAAAAAAEAAAFAAAADwAE8EIAAAASAArwCAAAAAEEAAAADgAAUwAL8B4AAAC/AQAAEADLAQAAAAD/
AQAACAAEAwkAAAA/AwEAAQAAABHwBAAAAAEAAAABDwAC8EgAAAAQAAjwCAAAAAEAAAAACAAADwAD
8DAAAAAPAATwKAAAAAEACfAQAAAAAAAAAAAAAAAAAAAAAAAAAAIACvAIAAAAAAgAAAUAAAAAAAAA
cREAAHYRAABGEgAASBIAAB0TAAAgEwAAIigAAC0oAAAkLgAAKy4AAC4uAAA0LgAAVi8AAF8vAABh
LwAAay8AAHUvAAB/LwAAgi8AAIsvAADZLwAA4y8AAHEyAABzMgAA3zIAAO4yAABLMwAAVDMAAFYz
AABgMwAAajMAAHQzAAB3MwAAgDMAAME0AADQNAAA+zQAAAQ1AAAGNQAAEDUAABo1AAAkNQAAJzUA
ADA1AAAxNgAAOzYAAD42AABHNgAAVDYAAB03AAAgNwAABwAcAAcAHAAHABwABwAcAAcAHAAHABwA
BwAcAAcAHAAHABwABwAcAAcAHAAHAAQABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcAHAAH
ABwABwAcAAcAHAAHABwABwAHAAIAAAAAAAgAAAAJAAAArQcAALMHAADgBwAA5gcAAB4IAAAkCAAA
gwgAAI4IAADDCAAAyQgAADcJAAA+CQAAdQkAAHsJAACDCgAAiQoAAN8KAADrCgAAFgsAABsLAAAx
CwAANAsAAN0LAADjCwAAGgwAABwMAAAkDAAAKgwAAEEMAABFDAAARwwAAE0MAABzDAAAeQwAAIMM
AACFDAAAQw0AAE8NAACRDQAAlw0AAKANAAClDQAABg4AAAkOAADWDgAA3A4AAO0OAADyDgAA9A4A
APoOAAAsDwAALg8AADYPAAA8DwAAcA8AAHMPAAAdEAAAIxAAADsQAABAEAAAZRAAAGcQAACWEAAA
mRAAAGoRAABwEQAAeBEAAHwRAACSEQAAlxEAAJ8RAAClEQAArREAALMRAADCEQAAyBEAAA4SAAAX
EgAAKRIAAC8SAAA4EgAAPRIAAEYSAABIEgAAixIAAI4SAACrEgAAAxMAABYTAAAcEwAAMhMAADcT
AABIEwAATBMAAF0TAABgEwAAbBMAAHATAACMEwAAkBMAAKgTAACxEwAAsxMAALkTAADXEwAA3BMA
AO8TAAD1EwAA/xMAAAIUAAAMFAAADxQAACEUAAAnFAAAWRQAAFsUAAB+FAAAgxQAAJUUAACYFAAA
sBQAALQUAADaFAAA8xQAAAQVAAAHFQAAORUAADwVAABFFQAAWhUAAGsVAABuFQAAbxUAAIQVAACR
FQAAmBUAAKEVAACkFQAAqRUAAKwVAACuFQAAtxUAACUXAAArFwAAsRcAALcXAAAYGgAAHhoAAIoa
AACQGgAAEhsAABgbAAAsGwAALhsAAEUbAABJGwAAtxsAAL0bAADRGwAA0xsAAOgbAADsGwAAQx0A
AEQdAACCHQAAkR0AAP0eAAADHwAAJh8AACgfAAA+HwAAQh8AAPkfAAD/HwAA/yAAAAUhAAApIQAA
KyEAAJchAACbIQAAOSIAAD8iAACEIgAAhiIAAJ0iAAChIgAAtyIAALsiAADSIgAA1iIAAKsjAACx
IwAAxSMAAMojAADYIwAA3yMAAPMjAAD2IwAAqSUAALglAADZJwAA3icAAFYoAABcKAAAbigAAHAo
AADoKAAA7igAAAApAAACKQAAFSkAABkpAACmKgAApyoAABUrAAAWKwAAbSsAAHMrAAC/KwAAxSsA
AO0rAADxKwAAPCwAAEIsAABPLAAAUywAAMwtAADSLQAA4i0AAOctAADtLQAA8y0AAPotAAD9LQAA
Bi4AAA8uAAARLgAAFy4AAB0uAAAjLgAAhi4AAI8uAAD+LgAABC8AABQvAAAZLwAAHy8AACUvAAAs
LwAALy8AAD8vAABILwAASi8AAFAvAABuLwAAdC8AALgvAADBLwAACDIAAH4yAACQMgAAljIAAKwy
AACxMgAAtzIAAL0yAADEMgAAxzIAABYzAAAkMwAANDMAAD0zAAA/MwAARTMAAGMzAABpMwAArTMA
ALYzAABTNAAAWTQAAHc0AAB8NAAAiTQAAI80AACdNAAAoDQAANA0AADRNAAA5DQAAO00AADvNAAA
9TQAABM1AAAZNQAAXjUAAGc1AACrNQAAsTUAAME1AADGNQAAzDUAANI1AADZNQAA3DUAAAk2AAAS
NgAAFDYAABo2AAAqNgAAMDYAAEk2AABSNgAAVDYAAB03AAAgNwAABwAaAAcAGgAHABoABwAaAAcA
GgAHABoABwAaAAcAGgAHABoABwAaAAcAGgAHABoABwAaAAcAGgAHABoABwAaAAcAGgAHABoABwAa
AAcAGgAHABoABwAaAAcAGgAHABoABwAaAAcAGgAHABoABwAaAAcAGgAHABoABwAaAAcAGgAHABoA
BwAaAAcAGgAHABoABwAaAAcAGgAHABoABwAaAAcAGgAHABoABwAaAAcAGgAHABoABwAaAAcAGgAH
ABoABwAaAAcAGgAHABoABwAaAAcAGgAHABoABwAaAAcAGgAHABoABwAaAAcAGgAHABoABwAaAAcA
GgAHABoABwAaAAcAGgAHABoABwAaAAcAGgAHABoABwAaAAcAGgAHABoABwAaAAcAGgAHABoABwAa
AAcAGgAHABoABwAaAAcAGgAHABoABwAaAAcAGgAHABoABwAaAAcAGgAHABoABwAaAAcAGgAHABoA
BwAaAAcAGgAHABoABwAaAAcAGgAHABoABwAaAAcAGgAHABoABwAaAAcAGgAHABoABwAaAAcAGgAH
ABoABwAaAAcAGgAHABoABwAaAAcAGgAHABoABwAaAAcAGgAHABoABwAaAAcAGgAHABoABwAaAAcA
GgAHABoABwAaAAcAGgAHABoABwAaAAcAGgAHABoABwAaAAcAGgAHABoABwAaAAcABAAHABoABwAa
AAcAGgAHABoABwAaAAcAGgAHABoABwAaAAcAGgAHABoABwAaAAcAGgAHABoABwAaAAcAGgAHABoA
BwAaAAcAGgAHABoABwAaAAcAGgAHABoABwAaAAcAGgAHABoABwAaAAcABwACAP//DAAAAAsASwBl
AG4AIABDAG8AZgBmAG0AYQBuACgAQwA6AFwAVABFAE0AUABcAEEAdQB0AG8AUgBlAGMAbwB2AGUA
cgB5ACAAcwBhAHYAZQAgAG8AZgAgADEAMAA2ADQAcgBlAHYALgBhAHMAZAALAEsAZQBuACAAQwBv
AGYAZgBtAGEAbgAWAEMAOgBcAHYAZQByAGkAbABvAGcAXAAxADAANgA0AHIAZQB2AC4AZABvAGMA
CwBLAGUAbgAgAEMAbwBmAGYAbQBhAG4AFgBDADoAXAB2AGUAcgBpAGwAbwBnAFwAMQAwADYANABy
AGUAdgAuAGQAbwBjAAsASwBlAG4AIABDAG8AZgBmAG0AYQBuABYAQwA6AFwAdgBlAHIAaQBsAG8A
ZwBcADEAMAA2ADQAcgBlAHYALgBkAG8AYwALAEsAZQBuACAAQwBvAGYAZgBtAGEAbgAWAEMAOgBc
AHYAZQByAGkAbABvAGcAXAAxADAANgA0AHIAZQB2AC4AZABvAGMACwBLAGUAbgAgAEMAbwBmAGYA
bQBhAG4AFgBDADoAXAB2AGUAcgBpAGwAbwBnAFwAMQAwADYANAByAGUAdgAuAGQAbwBjAAQArlGb
JR8ACQT/D/8P/w//D/8P/w//D/8P/w8AAOUl5ixiXioj/w//D/8P/w//D/8P/w//D/8PAADsEiZI
HwAJBP8P/w//D/8P/w//D/8P/w//DwAAdiiHaQ8ACQT/D/8P/w//D/8P/w//D/8P/w8BAAEAAAAA
AAEAAAAAAAAAAAAAAAAAAAAAAAAQAAAPhGgBEYSY/hXGBQABaAEGAgAAAC4AAQAAAAAAAQMAAAAA
AAAAAAAAAAAAAAAAABAAAA+EGAMRhFD+FcYFAAEYAwYEAAAALgABAC4AAQAAAAAAAQMFAAAAAAAA
AAAAAAAAAAAAABAAAA+EyAQRhAj+FcYFAAGgBQYGAAAALgABAC4AAgAuAAEAAAAAAAEDBQcAAAAA
AAAAAAAAAAAAAAAQAAAPhMAGEYR4/RXGBQABcAgGCAAAAC4AAQAuAAIALgADAC4AAQAAAAAAAQMF
BwkAAAAAAAAAAAAAAAAAABAAAA+EuAgRhOj8FcYFAAHYCQYKAAAALgABAC4AAgAuAAMALgAEAC4A
AQAAAAAAAQMFBwkLAAAAAAAAAAAAAAAAABAAAA+EsAoRhFj8FcYFAAGoDAYMAAAALgABAC4AAgAu
AAMALgAEAC4ABQAuAAEAAAAAAAEDBQcJCw0AAAAAAAAAAAAAAAAQAAAPhKgMEYTI+xXGBQABEA4G
DgAAAC4AAQAuAAIALgADAC4ABAAuAAUALgAGAC4AAQAAAAAAAQMFBwkLDQ8AAAAAAAAAAAAAABAA
AA+EoA4RhDj7FcYFAAHgEAYQAAAALgABAC4AAgAuAAMALgAEAC4ABQAuAAYALgAHAC4AAQAAAAAA
AQMFBwkLDQ8RAAAAAAAAAAAAABAAAA+E4BARhGD6FcYFAAGwEwYSAAAALgABAC4AAgAuAAMALgAE
AC4ABQAuAAYALgAHAC4ACAAuAAEAAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAPhGgBEYSY/hXG
BQABaAEGAgA0AC4AAQAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAABAAAA+EGAMRhFD+FcYFAAEYAwYE
AAAANAAuADQAAQAAAAAAAQYAAAAAAAAAAAAAAAAAAAAAABAAAA+EyAQRhAj+FcYFAAGgBQYHAAAA
NAAuADQALgACAC4AAQAAAAAAAQMFBwAAAAAAAAAAAAAAAAAAABAAAA+EwAYRhHj9FcYFAAFwCAYI
AAAALgABAC4AAgAuAAMALgABAAAAAAABAwUHCQAAAAAAAAAAAAAAAAAAEAAAD4S4CBGE6PwVxgUA
AdgJBgoAAAAuAAEALgACAC4AAwAuAAQALgABAAAAAAABAwUHCQsAAAAAAAAAAAAAAAAAEAAAD4Sw
ChGEWPwVxgUAAagMBgwAAAAuAAEALgACAC4AAwAuAAQALgAFAC4AAQAAAAAAAQMFBwkLDQAAAAAA
AAAAAAAAABAAAA+EqAwRhMj7FcYFAAEQDgYOAAAALgABAC4AAgAuAAMALgAEAC4ABQAuAAYALgAB
AAAAAAABAwUHCQsNDwAAAAAAAAAAAAAAEAAAD4SgDhGEOPsVxgUAAeAQBhAAAAAuAAEALgACAC4A
AwAuAAQALgAFAC4ABgAuAAcALgABAAAAAAABAwUHCQsNDxEAAAAAAAAAAAAAEAAAD4TgEBGEYPoV
xgUAAbATBhIAAAAuAAEALgACAC4AAwAuAAQALgAFAC4ABgAuAAcALgAIAC4AAQAAAAAAAQAAAAAA
AAAAAAAAAAAAAAAAABAAAA+EaAERhJj+FcYFAAFoAQYCAAAALgABAAAAAAABAwAAAAAAAAAAAAAA
AAAAAAAAEAAAD4QYAxGEUP4VxgUAARgDBgQAAAAuAAEALgABAAAAAAABAwUAAAAAAAAAAAAAAAAA
AAAAEAAAD4TIBBGECP4VxgUAAaAFBgYAAAAuAAEALgACAC4AAQAAAAAAAQMFBwAAAAAAAAAAAAAA
AAAAABAAAA+EwAYRhHj9FcYFAAFwCAYIAAAALgABAC4AAgAuAAMALgABAAAAAAABAwUHCQAAAAAA
AAAAAAAAAAAAEAAAD4S4CBGE6PwVxgUAAdgJBgoAAAAuAAEALgACAC4AAwAuAAQALgABAAAAAAAB
AwUHCQsAAAAAAAAAAAAAAAAAEAAAD4SwChGEWPwVxgUAAagMBgwAAAAuAAEALgACAC4AAwAuAAQA
LgAFAC4AAQAAAAAAAQMFBwkLDQAAAAAAAAAAAAAAABAAAA+EqAwRhMj7FcYFAAEQDgYOAAAALgAB
AC4AAgAuAAMALgAEAC4ABQAuAAYALgABAAAAAAABAwUHCQsNDwAAAAAAAAAAAAAAEAAAD4SgDhGE
OPsVxgUAAeAQBhAAAAAuAAEALgACAC4AAwAuAAQALgAFAC4ABgAuAAcALgABAAAAAAABAwUHCQsN
DxEAAAAAAAAAAAAAEAAAD4TgEBGEYPoVxgUAAbATBhIAAAAuAAEALgACAC4AAwAuAAQALgAFAC4A
BgAuAAcALgAIAC4AAQAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAABAAAA+EaAERhJj+FcYFAAFoAQYC
AAAALgAEAAAAdiiHaQAAAAAAAAAAAAAAAK5RmyUAAAAAAAAAAAAAAADsEiZIAAAAAAAAAAAAAAAA
5SXmLAAAAAAAAAAAAAAAAP///////////////////////wQAAAAAAAAAAAAAAP9AA4ABAHMyAABz
MgAAZJyFAFkAWQBzMgAAAAAAAHMyAAAAAAAAAhAAAAAAAAAAHzcAAFACAAgAQAAABQAAAEcWkAEA
AAICBgMFBAUCAwQDAAAAAAAAAAAAAAAAAAAAAQAAAAAAAABUAGkAbQBlAHMAIABOAGUAdwAgAFIA
bwBtAGEAbgAAADUWkAECAAUFAQIBBwYCBQcAAAAAAAAAEAAAAAAAAAAAAAAAgAAAAABTAHkAbQBi
AG8AbAAAADMmkAEAAAILBgQCAgICAgQDAAAAAAAAAAAAAAAAAAAAAQAAAAAAAABBAHIAaQBhAGwA
AAA/EpABAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAVABpAG0AZQBzAC0AUgBv
AG0AYQBuAAAANSaQAQAAAgsGBAMFBAQCBIcCAAAAAAAAAAAAAAAAAACfAAAAAAAAAFQAYQBoAG8A
bQBhAAAAIgAEAEEAiRgAANACAABoAQAAAAAvPCkmLzwpJtE7KSYCAAEAAADbBwAAzCwAAAEAFgAA
AAQAAwBfAAAAAAAAAAAAAAABAAEAAAABAAAAAAAAACEDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAyAAAAAAAAAAAAAAAAAAAAAzcAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAFQ2AAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAD//xIAAAAA
AAAAJABTAGUAYwB0AGkAbwBuACAANAAgAE0AbwBkAGUAbABpAG4AZwAgAEgAYQByAGQAdwBhAHIA
ZQAgAEUAbABlAG0AZQBuAHQAcwAAAAAAAAALAEsAZQBuACAAQwBvAGYAZgBtAGEAbgALAEsAZQBu
ACAAQwBvAGYAZgBtAGEAbgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+/wAABAACAAAAAAAAAAAAAAAA
AAAAAAABAAAA4IWf8vlPaBCrkQgAKyez2TAAAACUAQAAEQAAAAEAAACQAAAAAgAAAJgAAAADAAAA
yAAAAAQAAADUAAAABQAAAOgAAAAHAAAA9AAAAAgAAAAIAQAACQAAABwBAAASAAAAKAEAAAoAAABE
AQAACwAAAFABAAAMAAAAXAEAAA0AAABoAQAADgAAAHQBAAAPAAAAfAEAABAAAACEAQAAEwAAAIwB
AAACAAAA5AQAAB4AAAAlAAAAU2VjdGlvbiA0IE1vZGVsaW5nIEhhcmR3YXJlIEVsZW1lbnRzAGZ0
IB4AAAABAAAAAGVjdB4AAAAMAAAAS2VuIENvZmZtYW4AHgAAAAEAAAAAZW4gHgAAAAsAAABOb3Jt
YWwuZG90AAAeAAAADAAAAEtlbiBDb2ZmbWFuAB4AAAACAAAAMgBuIB4AAAATAAAATWljcm9zb2Z0
IFdvcmQgOC4wAEhAAAAAAEbDIwAAAABAAAAAABaUO63avQFAAAAAALI6zrnavQFAAAAAALI6zrna
vQEDAAAAAQAAAAMAAADbBwAAAwAAAMwsAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/v8AAAQAAgAAAAAAAAAAAAAAAAAAAAAAAgAA
AALVzdWcLhsQk5cIACss+a5EAAAABdXN1ZwuGxCTlwgAKyz5rlwBAAAYAQAADAAAAAEAAABoAAAA
DwAAAHAAAAAFAAAAiAAAAAYAAACQAAAAEQAAAJgAAAAXAAAAoAAAAAsAAACoAAAAEAAAALAAAAAT
AAAAuAAAABYAAADAAAAADQAAAMgAAAAMAAAA+QAAAAIAAADkBAAAHgAAABAAAABCeXRlY2ggU2Vy
dmljZXMAAwAAAF8AAAADAAAAFgAAAAMAAAADNwAAAwAAALMNCAALAAAAAAAAAAsAAAAAAAAACwAA
AAAAAAALAAAAAAAAAB4QAAABAAAAJQAAAFNlY3Rpb24gNCBNb2RlbGluZyBIYXJkd2FyZSBFbGVt
ZW50cwAMEAAAAgAAAB4AAAAGAAAAVGl0bGUAAwAAAAEAAAAAmAAAAAMAAAAAAAAAIAAAAAEAAAA2
AAAAAgAAAD4AAAABAAAAAgAAAAoAAABfUElEX0dVSUQAAgAAAOQEAABBAAAATgAAAHsAQgBFADQA
MAA0ADUAMgA3AC0ANAA2ADQAMAAtADEAMQBEADIALQA4ADUAQQAwAC0AMAAwADQAMAAxAEMANgAw
AEMANgA1ADQAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAACAAAAAwAAAAQAAAAFAAAABgAAAAcAAAAIAAAACQAA
AAoAAAALAAAADAAAAA0AAAAOAAAADwAAABAAAAARAAAAEgAAABMAAAAUAAAAFQAAABYAAAAXAAAA
GAAAABkAAAAaAAAAGwAAABwAAAAdAAAAHgAAAB8AAAAgAAAAIQAAACIAAAAjAAAAJAAAACUAAAAm
AAAAJwAAACgAAAApAAAAKgAAACsAAAAsAAAALQAAAC4AAAAvAAAAMAAAADEAAAAyAAAAMwAAADQA
AAA1AAAANgAAADcAAAA4AAAAOQAAADoAAAA7AAAAPAAAAP7///8+AAAAPwAAAEAAAABBAAAAQgAA
AEMAAABEAAAARQAAAEYAAABHAAAASAAAAEkAAABKAAAA/v///0wAAABNAAAATgAAAE8AAABQAAAA
UQAAAFIAAAD+////VAAAAFUAAABWAAAAVwAAAFgAAABZAAAAWgAAAP7////9////XQAAAP7////+
/////v//////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////UgBvAG8AdAAgAEUAbgB0AHIAeQAAAACg+GVEADC1TwCctk8A
AAAAAAAAAAB4AHgAAAAAAAAAAAAEAQAAJwEAABYABQH//////////wMAAAAGCQIAAAAAAMAAAAAA
AABGAAAAAGCir/T6t70BwDLj87navQFfAAAAgAAAAEi3TwAxAFQAYQBiAGwAZQAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgACAf////8FAAAA////
/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD0AAAA3GgAAAAAAAFcAbwByAGQA
RABvAGMAdQBtAGUAbgB0AAAAAAAAAAAAAAAAAJy2TwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAa
AAIBAQAAAP//////////TLdPAAAAAAAAAAAAAwAAAAIAAAAAAAAAEAAAAAMAAAAIAAAAAAAAACV4
AAAAAAAABQBTAHUAbQBtAGEAcgB5AEkAbgBmAG8AcgBtAGEAdABpAG8AbgAAAAAAAACAAAFQBAIA
ACGGAAAAAAAA////ACgAAgECAAAABAAAAP////8AAAAAAAAAAAIAAAABAAAAAAAAAAAAAABlAgCg
9MRPADwAQABLAAAAABAAAAAAAAAFAEQAbwBjAHUAbQBlAG4AdABTAHUAbQBtAGEAcgB5AEkAbgBm
AG8AcgBtAGEAdABpAG8AbgAAAAAAAAAAAAAAOAACAf///////////////wAAAAD//wAAAAAAAAAA
AAAAAAAAAAAAAP9/AACkuU8AcLYDSFMAAAAAEAAAAAAAAAEAQwBvAG0AcABPAGIAagAAAAAAAAAA
ALUBAKB0yE8A+GVEACC5TwAAAAAAAAAAAHgAeAAAAAAAAAAAAAQBAAASAAIA////////////////
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGoAAAAAAAAAzLlPAIYAAPAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAD///////////////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAJEAAKD4ZUQALABAANC5TwCsuU8AAAAAAAAAAAAAAAAAILlPAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAP///////////////wIAAADQuU8AAAAAAAAAAAADAAAAAgAAAAAAAAAQ
AAAAAwAAAAgAAAAAAAAAAAAAAAEAAAD+////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////AQD+/wMKAAD/////BgkCAAAAAADAAAAAAAAARhgAAABNaWNyb3Nv
ZnQgV29yZCBEb2N1bWVudAAKAAAATVNXb3JkRG9jABAAAABXb3JkLkRvY3VtZW50LjgA9DmycQAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAA=
--=====================_905240392==_
Content-Type: application/rtf; charset="us-ascii"
Content-Disposition: attachment; filename="1064rev.rtf"

{\rtf1\ansi\ansicpg1252\uc1 \deff0\deflang1033\deflangfe1033{\fonttbl{\f0\froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f15\fswiss\fcharset0\fprq2{\*\panose 020b0604030504040204}Tahoma;}
{\f16\froman\fcharset0\fprq2{\*\panose 00000000000000000000}Times-Roman;}{\f248\fswiss\fcharset238\fprq2 Tahoma CE;}{\f249\fswiss\fcharset204\fprq2 Tahoma Cyr;}{\f251\fswiss\fcharset161\fprq2 Tahoma Greek;}{\f252\fswiss\fcharset162\fprq2 Tahoma Tur;}
{\f253\fswiss\fcharset186\fprq2 Tahoma Baltic;}}{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;
\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;}{\stylesheet{\nowidctlpar\widctlpar\adjustright \fs20\cgrid \snext0
Normal;}{\*\cs10 \additive Default Paragraph Font;}{\s15\nowidctlpar\widctlpar\tqc\tx4320\tqr\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext15 header;}{\s16\nowidctlpar\widctlpar\tqc\tx4320\tqr\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext16 footer;}
{\s17\nowidctlpar\widctlpar\adjustright \cbpat9 \f15\fs20\cgrid \sbasedon0 \snext17 Document Map;}{\s18\nowidctlpar\adjustright \fs20\cf1 \sbasedon0 \snext18 Body Text;}}{\*\listtable{\list\listtemplateid67698719{\listlevel\levelnfc0\leveljc0\levelfollow0
\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'00.;}{\levelnumbers\'01;}\fi-360\li360\jclisttab\tx360 }{\listlevel\levelnfc0\leveljc0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'04\'00.\'01.;}{\levelnumbers\'01\'03;}
\fi-432\li792\jclisttab\tx792 }{\listlevel\levelnfc0\leveljc0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'06\'00.\'01.\'02.;}{\levelnumbers\'01\'03\'05;}\fi-504\li1224\jclisttab\tx1440 }{\listlevel\levelnfc0\leveljc0\levelfollow0
\levelstartat1\levelspace0\levelindent0{\leveltext\'08\'00.\'01.\'02.\'03.;}{\levelnumbers\'01\'03\'05\'07;}\fi-648\li1728\jclisttab\tx2160 }{\listlevel\levelnfc0\leveljc0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\'0a\'00.\'01.\'02.\'03.\'04.;}{\levelnumbers\'01\'03\'05\'07\'09;}\fi-792\li2232\jclisttab\tx2520 }{\listlevel\levelnfc0\leveljc0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'0c\'00.\'01.\'02.\'03.\'04.\'05.;}{\levelnumbers
\'01\'03\'05\'07\'09\'0b;}\fi-936\li2736\jclisttab\tx3240 }{\listlevel\levelnfc0\leveljc0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'0e\'00.\'01.\'02.\'03.\'04.\'05.\'06.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d;}\fi-1080\li3240
\jclisttab\tx3600 }{\listlevel\levelnfc0\leveljc0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'10\'00.\'01.\'02.\'03.\'04.\'05.\'06.\'07.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d\'0f;}\fi-1224\li3744\jclisttab\tx4320 }{\listlevel
\levelnfc0\leveljc0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'12\'00.\'01.\'02.\'03.\'04.\'05.\'06.\'07.\'08.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d\'0f\'11;}\fi-1440\li4320\jclisttab\tx5040 }{\listname ;}\listid630935982}
{\list\listtemplateid589979234{\listlevel\levelnfc255\leveljc0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'024.;}{\levelnumbers;}\fi-360\li360\jclisttab\tx360 }{\listlevel\levelnfc0\leveljc0\levelfollow0\levelstartat1\levelspace0
\levelindent0{\leveltext\'04\'004.4;}{\levelnumbers\'01;}\fi-432\li792\jclisttab\tx792 }{\listlevel\levelnfc0\leveljc0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'07\'004.4.\'02.;}{\levelnumbers\'01\'06;}\fi-504\li1224
\jclisttab\tx1440 }{\listlevel\levelnfc0\leveljc0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'08\'00.\'01.\'02.\'03.;}{\levelnumbers\'01\'03\'05\'07;}\fi-648\li1728\jclisttab\tx2160 }{\listlevel\levelnfc0\leveljc0\levelfollow0
\levelstartat1\levelspace0\levelindent0{\leveltext\'0a\'00.\'01.\'02.\'03.\'04.;}{\levelnumbers\'01\'03\'05\'07\'09;}\fi-792\li2232\jclisttab\tx2520 }{\listlevel\levelnfc0\leveljc0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\'0c\'00.\'01.\'02.\'03.\'04.\'05.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b;}\fi-936\li2736\jclisttab\tx3240 }{\listlevel\levelnfc0\leveljc0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\'0e\'00.\'01.\'02.\'03.\'04.\'05.\'06.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d;}\fi-1080\li3240\jclisttab\tx3600 }{\listlevel\levelnfc0\leveljc0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\'10\'00.\'01.\'02.\'03.\'04.\'05.\'06.\'07.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d\'0f;}\fi-1224\li3744\jclisttab\tx4320 }{\listlevel\levelnfc0\leveljc0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\'12\'00.\'01.\'02.\'03.\'04.\'05.\'06.\'07.\'08.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d\'0f\'11;}\fi-1440\li4320\jclisttab\tx5040 }{\listname ;}\listid753280485}{\list\listtemplateid67698719{\listlevel\levelnfc0\leveljc0\levelfollow0\levelstartat1
\levelspace0\levelindent0{\leveltext\'02\'00.;}{\levelnumbers\'01;}\fi-360\li360\jclisttab\tx360 }{\listlevel\levelnfc0\leveljc0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'04\'00.\'01.;}{\levelnumbers\'01\'03;}\fi-432\li792
\jclisttab\tx792 }{\listlevel\levelnfc0\leveljc0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'06\'00.\'01.\'02.;}{\levelnumbers\'01\'03\'05;}\fi-504\li1224\jclisttab\tx1440 }{\listlevel\levelnfc0\leveljc0\levelfollow0\levelstartat1
\levelspace0\levelindent0{\leveltext\'08\'00.\'01.\'02.\'03.;}{\levelnumbers\'01\'03\'05\'07;}\fi-648\li1728\jclisttab\tx2160 }{\listlevel\levelnfc0\leveljc0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\'0a\'00.\'01.\'02.\'03.\'04.;}{\levelnumbers\'01\'03\'05\'07\'09;}\fi-792\li2232\jclisttab\tx2520 }{\listlevel\levelnfc0\leveljc0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'0c\'00.\'01.\'02.\'03.\'04.\'05.;}{\levelnumbers
\'01\'03\'05\'07\'09\'0b;}\fi-936\li2736\jclisttab\tx3240 }{\listlevel\levelnfc0\leveljc0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'0e\'00.\'01.\'02.\'03.\'04.\'05.\'06.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d;}\fi-1080\li3240
\jclisttab\tx3600 }{\listlevel\levelnfc0\leveljc0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'10\'00.\'01.\'02.\'03.\'04.\'05.\'06.\'07.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d\'0f;}\fi-1224\li3744\jclisttab\tx4320 }{\listlevel
\levelnfc0\leveljc0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'12\'00.\'01.\'02.\'03.\'04.\'05.\'06.\'07.\'08.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d\'0f\'11;}\fi-1440\li4320\jclisttab\tx5040 }{\listname ;}\listid1210454764}
{\list\listtemplateid67698703\listsimple{\listlevel\levelnfc0\leveljc0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'00.;}{\levelnumbers\'01;}\fi-360\li360\jclisttab\tx360 }{\listname ;}\listid1770465398}}{\*\listoverridetable
{\listoverride\listid1770465398\listoverridecount0\ls1}{\listoverride\listid630935982\listoverridecount0\ls2}{\listoverride\listid1210454764\listoverridecount0\ls3}{\listoverride\listid753280485\listoverridecount0\ls4}}{\info
{\title Section 4 Modeling Hardware Elements}{\author Ken Coffman}{\operator Ken Coffman}{\creatim\yr1998\mo9\dy7\hr16\min48}{\revtim\yr1998\mo9\dy7\hr16\min48}{\printim\yr1998\mo9\dy7\hr15\min17}{\version2}{\edmins0}{\nofpages8}{\nofwords1868}
{\nofchars10651}{\*\company Bytech Services}{\nofcharsws13080}{\vern71}}\widowctrl\ftnbj\aenddoc\makebackup\hyphcaps0\viewkind1\viewscale100 \fet0\sectd \linex0\sectdefaultcl {\header \pard\plain \nowidctlpar\adjustright \fs20\cgrid {\cf1\cgrid0
IEEE P1364.1
\par BASED ON THE VERILOG \'ae HARDWARE DESCRIPTION LANGUAGE June 3, 1998
\par Section 4 Copyright @ 1998 IEEE. All rights reserved. 11
\par }{\cgrid0 This is an unapproved IEEE Standards Draft, subject to change.
\par }{
\par }}{\*\pnseclvl1\pnucrm\pnstart1\pnindent720\pnhang{\pntxta .}}{\*\pnseclvl2\pnucltr\pnstart1\pnindent720\pnhang{\pntxta .}}{\*\pnseclvl3\pndec\pnstart1\pnindent720\pnhang{\pntxta .}}{\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnhang{\pntxta )}}
{\*\pnseclvl5\pndec\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl6\pnlcltr\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl7\pnlcrm\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl8
\pnlcltr\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}\pard\plain \nowidctlpar\outlinelevel0\adjustright \fs20\cgrid {\b\cf1\cgrid0 Section 4 Modeling Hardware Elements
\par }\pard\plain \s18\nowidctlpar\adjustright \fs20\cf1 {
This section describes styles for modeling hardware elements such as edge-sensitive storage devices, level-sensitive storage devices (latches), and three-state drivers. This standard does not specify or limit optimization.
\par }\pard\plain \nowidctlpar\adjustright \fs20\cgrid {\cf1\cgrid0
The hardware inferences specified in this section do not take into account optimizations or transformations. A specific tool may perform optimization and not generate the suggested hardware inferences or generate a different set of hardware inferences.
This shall }{\i\cf1\cgrid0 not }{\cf1\cgrid0 be taken as a violation of this standard provided the synthesized netlist has the same functionality as the input model.
\par
\par }\pard \nowidctlpar\outlinelevel0\adjustright {\b\cf1\cgrid0 4.1 Modeling Combinational Logic
\par }\pard \nowidctlpar\adjustright {\cgrid0 A combinational logic event sensitivity list contains a variable or a list of variables separated by the keyword }{\b\cgrid0 or}{\cgrid0 . }{\cf1\cgrid0 If the event sensitivity list of an }{\b\cf1\cgrid0 always }{
\cf1\cgrid0 statement lists all input variables (which will appear in right-hand side expressions in the }{\b\cf1\cgrid0 always}{\cf1\cgrid0 statement body), its event sensitivity list is said to be }{\i\cf1\cgrid0 complete}{\cf1\cgrid0 .
\par }{\cgrid0 Expressions inside the always statement body will be evaluated by a Verilog simulator when any variable in the sensitivity list changes value. }{
The event sensitivity list for a combinational logic construct does not affect synthesized logic. However, it is important that the sensitivity list be complete to insure that simulation and synthesis results match.
\par
\par }{\b EDITORS NOTE:}{ Shall we allow the use of }{\b always @}{ (*) to infer a complete list of variables?
\par
\par T}{\cf1\cgrid0 he event sensitivity list for a combinational logic construct must not contain the reserved words }{\b\cf1\cgrid0 posedge }{\cf1\cgrid0 or }{\b\cf1\cgrid0 negedge }{\cf1\cgrid0
or anything other than variables used as inputs inside the always statement body.
\par Not all variables that appear in the right hand side of an assignment are required to appear in the event sensitivity list. Vari
ables that are assigned values inside the always statement body before being used by other expressions do not have to appear in the event sensitivity list.}{\b\cf1\cgrid0
\par
\par }{\i\cf1\cgrid0 Example 4.1.1}{\cf1\cgrid0 :
\par }{\b\cf1\cgrid0 always}{\cf1\cgrid0 }{\b\cf1\cgrid0 @}{\cf1\cgrid0 (OP1 }{\b\cf1\cgrid0 or}{\cf1\cgrid0 OP2) // Legal
\par ...
\par
\par }{\i\cf1\cgrid0 Example 4.1.2}{\cf1\cgrid0 :
\par }{\b\cf1\cgrid0 always @}{\cf1\cgrid0 (BUSA[11] }{\b\cf1\cgrid0 or}{\cf1\cgrid0 BUSB[7:2]) // Legal
\par }\pard\plain \s18\nowidctlpar\adjustright \fs20\cf1 {...
\par }\pard\plain \nowidctlpar\adjustright \fs20\cgrid {\cf1\cgrid0
\par }{\i\cf1\cgrid0 Example 4.1.3}{\cf1\cgrid0 :
\par }{\b\cf1\cgrid0 always}{\cf1\cgrid0 }{\b\cf1\cgrid0 @ }{\cf1\cgrid0 (A + B) // Not supported because logical constructs are not
\par // allowed in the event sensitivity list.
\par }\pard\plain \s18\nowidctlpar\adjustright \fs20\cf1 {...
\par }\pard\plain \nowidctlpar\adjustright \fs20\cgrid {\cf1\cgrid0
\par }{\i\cf1\cgrid0 Example 4.1.4}{\cf1\cgrid0 :
\par }{\b\cf1\cgrid0 always @}{\cf1\cgrid0 (}{\b\cf1\cgrid0 posedge}{\cf1\cgrid0 A[B]) // Not supported because bit-selected variables
\par // are not allowed for clock or control.
\par ...
\par
\par }{\i\cf1\cgrid0 Example 4.1.5}{\cf1\cgrid0 :
\par }{\b\cf1\cgrid0 always @}{\cf1\cgrid0 (IN1 }{\b\cf1\cgrid0 or}{\cf1\cgrid0 IN2) // Legal because all input variables are specified.
\par OUT = IN1 + IN2;
\par \'85
\par
\par In Example 4.1.6, the register variable TMP is not required to appear in the event sensitivity list since it is assigned before it is used in the always block.
\par
\par }{\i\cf1\cgrid0 Example 4.1.6}{\cf1\cgrid0 :
\par }{\b\cf1\cgrid0 always @}{\cf1\cgrid0 (IN) // TMP is not required in the event sensitivity list
\par // because it is assigned a value before being used.
\par }{\b\cf1\cgrid0 begin
\par }{\cf1\cgrid0 TMP = IN;
\par }\pard \nowidctlpar\outlinelevel0\adjustright {\cf1\cgrid0 OUT = TMP;
\par }\pard \nowidctlpar\adjustright {\b\cf1\cgrid0 end
\par }{\cf1\cgrid0
\par In Example 4.1.7, signals IN1 and IN2 are not required in the event sensitivity list because the variable OUT will be evaluated only when SEL changes.
\par
\par }{\i\cf1\cgrid0 Example 4.1.7}{\cf1\cgrid0 :
\par }{\b\cf1\cgrid0 always @}{\cf1\cgrid0 (SEL or IN1) // Legal, though IN1 is not required.
\par \tab }{\b\cf1\cgrid0 if}{\cf1\cgrid0 (SEL)
\par }\pard \nowidctlpar\outlinelevel0\adjustright {\cf1\cgrid0 \tab }{\b\cf1\cgrid0 assign}{\cf1\cgrid0 OUT = IN1; // Legal.
\par }\pard \nowidctlpar\adjustright {\cf1\cgrid0 \tab }{\b\cf1\cgrid0 else
\par }{\cf1\cgrid0 \tab }{\b\cf1\cgrid0 assign}{\cf1\cgrid0 OUT = IN2; // Legal.
\par
\par }{\i\cf1\cgrid0 Example 4.1.8}{\cf1\cgrid0 :
\par }{\b\cf1\cgrid0 always @}{\cf1\cgrid0 (IN)
\par \tab }{\b\cf1\cgrid0 if}{\cf1\cgrid0 (ENA) // Not supported because ENA should be in the event sensitivity list.
\par }\pard \nowidctlpar\outlinelevel0\adjustright {\cf1\cgrid0 \tab OUT = IN;
\par
\par In Example 4.1.9, TMP is required in the event sensitivity list because it is used in a non-blocking manner which causes TMP and OUT to be assigned concurrently.
\par
\par }\pard \nowidctlpar\adjustright {\i\cf1\cgrid0 Example 4.1.9}{\cf1\cgrid0 :
\par \tab }{\b\cf1\cgrid0 always @}{\cf1\cgrid0 (IN)
\par \tab }{\b\cf1\cgrid0 begin
\par }{\cf1\cgrid0 \tab TMP <= IN; // Not supported because TMP should be in the event sensitivity list.
\par }\pard \nowidctlpar\outlinelevel0\adjustright {\cf1\cgrid0 \tab OUT <= TMP;
\par }\pard \nowidctlpar\adjustright {\cf1\cgrid0 \tab }{\b\cf1\cgrid0 end
\par }{\cf1\cgrid0
\par In Example 4.1.10, an error occurs because the same register (OUT) cannot be assigned in both a procedural-continuous and a non procedural-continuous manner in an always statement body.
\par
\par }{\i\cf1\cgrid0 Example 4.1.10}{\cf1\cgrid0 :
\par }{\b\cf1\cgrid0 always @}{\cf1\cgrid0 (IN1 }{\b\cf1\cgrid0 or}{\cf1\cgrid0 SEL)
\par \tab }{\b\cf1\cgrid0 begin
\par }{\cf1\cgrid0 \tab }{\b\cf1\cgrid0 assign}{\cf1\cgrid0 OUT = IN1; // Procedural-continuous assignment.
\par \tab }{\b\cf1\cgrid0 if}{\cf1\cgrid0 (SEL)
\par \tab }{\b\cf1\cgrid0 assign}{\cf1\cgrid0 OUT = 2; // Non procedural-continuous assignment.
\par \tab }{\b\cf1\cgrid0 end
\par }{\cf1\cgrid0
\par In Example 4.1.11, an error occurs because OUT cannot be assigned in both a blocking and a non-blocking procedural manner in an always statement body.
\par
\par }{\i\cf1\cgrid0 Example 4.1.11}{\cf1\cgrid0 :
\par }{\b\cf1\cgrid0 always @}{\cf1\cgrid0 (IN1 }{\b\cf1\cgrid0 or}{\cf1\cgrid0 IN2 }{\b\cf1\cgrid0 or}{\cf1\cgrid0 SEL)
\par \tab }{\b\cf1\cgrid0 begin
\par }{\cf1\cgrid0 \tab OUT = IN1; // Blocking assignment
\par \tab }{\b\cf1\cgrid0 if}{\cf1\cgrid0 (SEL)
\par \tab OUT <= 2; // Non-blocking assignment.
\par \tab }{\b\cf1\cgrid0 end
\par }{\cf1\cgrid0
\par }\pard \nowidctlpar\outlinelevel0\adjustright {\b\cf1\cgrid0 EDITOR\rquote S NOTE:}{\cf1\cgrid0 the following \lquote Z\rquote statements are unverified! Would someone please try this?
\par }\pard \nowidctlpar\adjustright {\cf1\cgrid0 In Example 4.1.12, note that \lquote Z\rquote assignment(s) will not be propagated across variable assignments.
\par
\par }{\i\cf1\cgrid0 Example 4.1.12}{\cf1\cgrid0 :
\par }{\b\cf1\cgrid0 module}{\cf1\cgrid0 ztest;
\par }{\b\cf1\cgrid0 wire}{\cf1\cgrid0 test1, test2, test3;
\par }{\b\cf1\cgrid0 input}{\cf1\cgrid0 test2;
\par }{\b\cf1\cgrid0 output}{\cf1\cgrid0 test3;
\par }{\b\cf1\cgrid0 assign}{\cf1\cgrid0 test1\tab =\tab 1\rquote bz;
\par }{\b\cf1\cgrid0 assign}{\cf1\cgrid0 test3\tab =\tab test1 & test2; // test3 will never receive a \lquote Z\rquote assignment.
\par }{\b\cf1\cgrid0 endmodule
\par }{\cf1\cgrid0
\par }{\i\cf1\cgrid0 Example 4.1.13}{\cf1\cgrid0 :
\par }{\b\cf1\cgrid0 always @}{\cf1\cgrid0 (IN)
\par \tab }{\b\cf1\cgrid0 begin
\par }{\cf1\cgrid0 \tab TMP = 'bZ;
\par \tab OUT = TMP; // OUT will never be driven by three state drivers.
\par \tab }{\b\cf1\cgrid0 end
\par }{\cf1\cgrid0
\par }\pard\plain \s18\nowidctlpar\adjustright \fs20\cf1 {Example 4.1.14 illustrates how assignment to \lquote Z\rquote may occur in a module and be passed via following port assignments.
\par }\pard\plain \nowidctlpar\adjustright \fs20\cgrid {\cf1\cgrid0
\par }{\i\cf1\cgrid0 Example 4.1.14}{\cf1\cgrid0 :
\par }{\b\cf1\cgrid0 module}{\cf1\cgrid0 foo(bar, clock);
\par }{\b\cf1\cgrid0 input}{\cf1\cgrid0 bar, clock;
\par }{\b\cf1\cgrid0 wire}{\cf1\cgrid0 bar, clock;
\par }{\b\cf1\cgrid0 reg}{\cf1\cgrid0 reset;
\par bus1 u1(bar, clock, reset);
\par bus1 u2(bar, clock, reset);
\par }{\b\cf1\cgrid0 endmodule
\par }{\cf1\cgrid0
\par }{\b\cf1\cgrid0 module}{\cf1\cgrid0 bus1(bus, clock, reset);
\par }{\b\cf1\cgrid0 input}{\cf1\cgrid0 clock, reset;
\par }{\b\cf1\cgrid0 output}{\cf1\cgrid0 bus;
\par }{\b\cf1\cgrid0 reg}{\cf1\cgrid0 \tab bus;
\par }{\b\cf1\cgrid0 reg}{\cf1\cgrid0 [1:0] state;
\par }{\b\cf1\cgrid0 always @}{\cf1\cgrid0 (}{\b\cf1\cgrid0 posedge}{\cf1\cgrid0 clock }{\b\cf1\cgrid0 or}{\cf1\cgrid0 }{\b\cf1\cgrid0 posedge}{\cf1\cgrid0 reset) }{\b\cf1\cgrid0 begin}{\cf1\cgrid0
\par }{\b\cf1\cgrid0 if}{\cf1\cgrid0 (reset == 1'b1) }{\b\cf1\cgrid0 begin}{\cf1\cgrid0
\par state = 2'b00;
\par }{\b\cf1\cgrid0 end else begin}{\cf1\cgrid0
\par }{\b\cf1\cgrid0 case }{\cf1\cgrid0 (state)
\par 2'b00: }{\b\cf1\cgrid0 begin}{\cf1\cgrid0
\par // ...
\par }{\b\cf1\cgrid0 end
\par }{\cf1\cgrid0 2'b01: }{\b\cf1\cgrid0 begin}{\cf1\cgrid0
\par bus = 1'bz;
\par // ...
\par }{\b\cf1\cgrid0 end
\par }{\cf1\cgrid0 // ...
\par }{\b\cf1\cgrid0 endcase
\par }{\cf1\cgrid0 }{\b\cf1\cgrid0 end
\par }{\cf1\cgrid0 }{\b\cf1\cgrid0 end
\par }{\cf1\cgrid0 }{\b\cf1\cgrid0 endmodule
\par }{\cf1\cgrid0
\par }{\b\cf1\cgrid0 4.2 Modeling Edge-Sensitive Sequential Logic
\par
\par }\pard \nowidctlpar\outlinelevel0\adjustright {\b\cf1\cgrid0 4.2.1 Clock Specifications
\par }\pard \nowidctlpar\adjustright {\cf1\cgrid0 When modeling synchronous logic constructs, the reserved words }{\b\cf1\cgrid0 posedge }{\cf1\cgrid0 or }{\b\cf1\cgrid0 negedge }{\cf1\cgrid0
will be used as edge-control specifiers within the event sensitivity list of an }{\b\cf1\cgrid0 always }{\cf1\cgrid0 statement.
\par
\par }\pard \nowidctlpar\outlinelevel0\adjustright {\b\cf1\cgrid0 4.2.1.1 Positive Edge Clock
\par }\pard \nowidctlpar\adjustright {\cf1\cgrid0 The following represents a positive clock edge expression in an }{\b\cf1\cgrid0 always }{\cf1\cgrid0 statement:
\par }{\b\cf1\cgrid0 always @}{\cf1\cgrid0 (}{\b\cf1\cgrid0 posedge}{\cf1\cgrid0 CLOCK)
\par }\pard\plain \s18\nowidctlpar\adjustright \fs20\cf1 {...
\par
\par }\pard\plain \nowidctlpar\outlinelevel0\adjustright \fs20\cgrid {\b\cf1\cgrid0 4.2.1.2 Negative Edge Clock
\par }\pard \nowidctlpar\adjustright {\cf1\cgrid0 The following represents a negative clock edge expression in an }{\b\cf1\cgrid0 always }{\cf1\cgrid0 statement:
\par }{\b\cf1\cgrid0 always @}{\cf1\cgrid0 (}{\b\cf1\cgrid0 negedge}{\cf1\cgrid0 CLOCK)
\par ...
\par
\par }{\b\cf1\cgrid0 4.2.2 Modeling Edge-Sensitive Storage Devices
\par }{\cf1\cgrid0 All edge-sensitive storage devices will be modeled with synchronous assignments to a variable. A synchronous assignment is a variable assignment under the control of a clock.
\par An edge-sensitive storage construct without asynchronous set or reset is be modeled using an }{\b\cf1\cgrid0 always }{\cf1\cgrid0 statement whose event sensitivity list uses either the reserved words }{\b\cf1\cgrid0 posedge }{\cf1\cgrid0 or }{
\b\cf1\cgrid0 negedge }{\cf1\cgrid0 followed by the clock variable. No other variables will be included in the event sensitivity list.
\par
\par }{\i\cf1\cgrid0 Example 4.2.2.1}{\cf1\cgrid0 :
\par // Positive edge triggered edge-sensitive storage device.
\par }{\b\cf1\cgrid0 always @}{\cf1\cgrid0 (}{\b\cf1\cgrid0 posedge}{\cf1\cgrid0 CLOCK)
\par }\pard \nowidctlpar\outlinelevel0\adjustright {\cf1\cgrid0 \tab OUT = IN;
\par \'85
\par }\pard \nowidctlpar\adjustright {\cf1\cgrid0
\par }{\i\cf1\cgrid0 Example 4.2.2.2}{\cf1\cgrid0 :
\par // Negative edge triggered edge-sensitive storage device.
\par }{\b\cf1\cgrid0 always @}{\cf1\cgrid0 (}{\b\cf1\cgrid0 negedge}{\cf1\cgrid0 CLOCK)
\par }\pard \nowidctlpar\outlinelevel0\adjustright {\cf1\cgrid0 \tab OUT = IN;
\par \'85
\par }\pard \nowidctlpar\adjustright {\cf1\cgrid0
\par }{\i\cf1\cgrid0 Example 4.2.2.3}{\cf1\cgrid0 :
\par // Positive edge triggered edge-sensitive storage device with synchronous reset
\par }{\b\cf1\cgrid0 always @}{\cf1\cgrid0 (}{\b\cf1\cgrid0 posedge}{\cf1\cgrid0 CLOCK)
\par \tab }{\b\cf1\cgrid0 if}{\cf1\cgrid0 (RESET)
\par \tab OUT = 1'b0;
\par \tab }{\b\cf1\cgrid0 else
\par }{\cf1\cgrid0 \tab OUT = IN;
\par \'85
\par
\par }{\i\cf1\cgrid0 Example 4.2.2.4}{\cf1\cgrid0 :
\par // Positive edge triggered edge-sensitive storage device with synchronous set
\par }{\b\cf1\cgrid0 always @}{\cf1\cgrid0 (}{\b\cf1\cgrid0 posedge}{\cf1\cgrid0 CLOCK)
\par \tab }{\b\cf1\cgrid0 if}{\cf1\cgrid0 (SET)
\par \tab OUT = 1'b1;
\par \tab }{\b\cf1\cgrid0 else
\par }{\cf1\cgrid0 \tab OUT = IN;
\par \'85
\par
\par
\par }\pard \nowidctlpar\outlinelevel0\adjustright {\b\cf1\cgrid0 4.2.2.1 Edge-Sensitive Storage Device Modeling with Asynchronous Set-Reset
\par }\pard \nowidctlpar\adjustright {\cf1\cgrid0 An edge-sensitive storage device with an asynchronous set and/or asynchronous reset is modeled using an }{\b\cf1\cgrid0 always }{\cf1\cgrid0 statement whose event sensitivity list contains the reserved words }{
\b\cf1\cgrid0 posedge }{\cf1\cgrid0 or }{\b\cf1\cgrid0 negedge }{\cf1\cgrid0 for the clock and asynchronous variables. A maximum of 3 variables may appear in the event sensitivity list. A mix of level-sensitive and }{\b\cf1\cgrid0 posedge/negedge }{
\cf1\cgrid0 variables is not supported.
\par
\par }{\cgrid0 An }{\b\cgrid0 if }{\cgrid0 condition statement is used with any asynchronous controls and is placed in }{\b\cgrid0 if }{\cgrid0 branches that precede the clock }{
branch. The asynchronous set and or reset logic will therefore have higher priority than the clock variable.
\par }{\cf1\cgrid0
\par In Example 4.2.2.1.1, a flipflop with asynchronous SET is modeled.
\par
\par }{\i\cf1\cgrid0 Example 4.2.2.1.1}{\cf1\cgrid0 :
\par }{\b\cf1\cgrid0 always @}{\cf1\cgrid0 (}{\b\cf1\cgrid0 posedge}{\cf1\cgrid0 CLOCK }{\b\cf1\cgrid0 or}{\cf1\cgrid0 }{\b\cf1\cgrid0 posedge}{\cf1\cgrid0 SET)
\par \tab }{\b\cf1\cgrid0 if}{\cf1\cgrid0 (SET)
\par \tab OUT <= 1'b1;
\par \tab }{\b\cf1\cgrid0 else
\par }{\cf1\cgrid0 \tab OUT <= DIN;
\par
\par In Example 4.2.2.1.2, an error occurs because the edge triggered reset is in the event sensitivity list but there is no corresponding }{\b\cf1\cgrid0 if}{\cf1\cgrid0 statement.
\par
\par }{\i\cf1\cgrid0 Example 4.2.2.1.2}{\cf1\cgrid0 :
\par }{\b\cf1\cgrid0 always @}{\cf1\cgrid0 (}{\b\cf1\cgrid0 posedge}{\cf1\cgrid0 CLOCK or }{\b\cf1\cgrid0 posedge}{\cf1\cgrid0 RESET)
\par }\pard \nowidctlpar\outlinelevel0\adjustright {\cf1\cgrid0 \tab OUT = IN;
\par }\pard \nowidctlpar\adjustright {\cf1\cgrid0
\par }\pard\plain \s18\nowidctlpar\adjustright \fs20\cf1 {In Example 4.2.2.1.3, no syntax error occurs, but the logic is incorrect because an active low CLEAR is inferred in the event sensitivity list, but the logic defines an active high CLEAR.
\par }\pard\plain \nowidctlpar\adjustright \fs20\cgrid {\cf1\cgrid0
\par }{\i\cf1\cgrid0 Example 4.2.2.1.3}{\cf1\cgrid0 :
\par }{\b\cf1\cgrid0 always @}{\cf1\cgrid0 (}{\b\cf1\cgrid0 posedge}{\cf1\cgrid0 CLOCK or }{\b\cf1\cgrid0 negedge}{\cf1\cgrid0 CLEAR)
\par }{\b\cf1\cgrid0 if}{\cf1\cgrid0 (CLEAR)//This term should be inverted (~CLEAR) to match the sense of the event sensitivity list.
\par }\pard \nowidctlpar\outlinelevel0\adjustright {\cf1\cgrid0 \tab OUT = 0;
\par }\pard \nowidctlpar\adjustright {\b\cf1\cgrid0 else
\par }\pard \nowidctlpar\outlinelevel0\adjustright {\cf1\cgrid0 \tab OUT = IN;
\par \'85
\par
\par In Example 4.2.2.1.4, an error occurs because more than three event-triggered variables are in the event sensitivity list.
\par
\par }\pard \nowidctlpar\adjustright {\i\cf1\cgrid0 Example 4.2.2.1.4}{\cf1\cgrid0 :
\par }{\b\cf1\cgrid0 always @}{\cf1\cgrid0 (}{\b\cf1\cgrid0 posedge}{\cf1\cgrid0 CLOCK or }{\b\cf1\cgrid0 posedge}{\cf1\cgrid0 CLEAR or }{\b\cf1\cgrid0 posedge}{\cf1\cgrid0 SET or }{\b\cf1\cgrid0 posedge}{\cf1\cgrid0 RESET)
\par \tab }{\b\cf1\cgrid0 if}{\cf1\cgrid0 (RESET)
\par }\pard \nowidctlpar\outlinelevel0\adjustright {\cf1\cgrid0 \tab OUT = DATA;
\par }\pard \nowidctlpar\adjustright {\cf1\cgrid0 \tab }{\b\cf1\cgrid0 else if}{\cf1\cgrid0 (SET)
\par }\pard \nowidctlpar\outlinelevel0\adjustright {\cf1\cgrid0 \tab OUT = -1;
\par }\pard \nowidctlpar\adjustright {\cf1\cgrid0 \tab }{\b\cf1\cgrid0 else if}{\cf1\cgrid0 (CLEAR)
\par }\pard \nowidctlpar\outlinelevel0\adjustright {\cf1\cgrid0 \tab OUT = 0;
\par }\pard \nowidctlpar\adjustright {\cf1\cgrid0 \tab }{\b\cf1\cgrid0 else
\par }{\cf1\cgrid0 \tab OUT = IN;
\par \'85
\par
\par In Example 4.2.2.1.5, an error occurs because nested event sensitivity lists are not allowed. A synchronous }{\b\cf1\cgrid0 always}{\cf1\cgrid0 block can contain only one synchronous event sensitivity list.
\par
\par }{\i\cf1\cgrid0 Example 4.2.2.1.5}{\cf1\cgrid0 :
\par }{\b\cf1\cgrid0 always @}{\cf1\cgrid0 (}{\b\cf1\cgrid0 posedge}{\cf1\cgrid0 CLOCK)
\par \tab }{\b\cf1\cgrid0 begin
\par }{\cf1\cgrid0 \tab OUT = 0;
\par \tab }{\b\cf1\cgrid0 @}{\cf1\cgrid0 (}{\b\cf1\cgrid0 posedge}{\cf1\cgrid0 CLOCK);
\par }\pard \nowidctlpar\outlinelevel0\adjustright {\cf1\cgrid0 \tab OUT = 1;
\par }\pard \nowidctlpar\adjustright {\cf1\cgrid0 \tab }{\b\cf1\cgrid0 end
\par }{\cf1\cgrid0
\par }{\b\cf1\cgrid0 4.3 Modeling Level-Sensitive Storage Device Based Hardware Elements (Latches)
\par }{\cf1\cgrid0 Verilog assumes that a variable not explicitly assigned holds its previous value. The hardware synthesized to hold a value after an assertion condition is removed is a latch. Latches wil
l be inferred by incomplete non-synchronous assignments. An assignment shall be }{\i\cf1\cgrid0 complete }{\cf1\cgrid0 if and only if either of the following is true:
\par a) It is unconditional
\par b) It is conditional and a branch exists for every possible value of the selector, and each branch computes a value independent of the previous value of the target of the assignment. Any assignment that is not complete is called an }{\i\cf1\cgrid0
incomplete }{\cf1\cgrid0 assignment. Since a level-sensitive storage device passes the data to the output when the enable is active, the data variables shall be present in the event sensitivity list of the }{\b\cf1\cgrid0 always }{\cf1\cgrid0
statement modeling the level-sensitive storage device.
\par If an assignment is not }{\i\cf1\cgrid0 complete}{\cf1\cgrid0 ,}{\i\cf1\cgrid0 }{\cf1\cgrid0 unwanted latches may be synthesized.
\par
\par }\pard \nowidctlpar\outlinelevel0\adjustright {\cf1\cgrid0 In Example 4.3.1 a level-sensitive storage device (latch) is inferred. If ENABLE is disasserted, Q will hold its value.
\par }\pard \nowidctlpar\adjustright {\cf1\cgrid0
\par }{\i\cf1\cgrid0 Example 4.3.1}{\cf1\cgrid0 :
\par }{\b\cf1\cgrid0 always @}{\cf1\cgrid0 (ENABLE or D)
\par \tab }{\b\cf1\cgrid0 if}{\cf1\cgrid0 (ENABLE)
\par }\pard \nowidctlpar\outlinelevel0\adjustright {\cf1\cgrid0 \tab Q = D;
\par \'85
\par
\par In Example 4.3.2, a latch is not inferred because the assignment to Q is }{\i\cf1\cgrid0 complete}{\cf1\cgrid0 .
\par
\par }\pard \nowidctlpar\adjustright {\i\cf1\cgrid0 Example 4.3.2}{\cf1\cgrid0 :
\par }{\b\cf1\cgrid0 always @}{\cf1\cgrid0 (ENABLE or D)
\par \tab }{\b\cf1\cgrid0 if}{\cf1\cgrid0 (ENABLE)
\par }\pard \nowidctlpar\outlinelevel0\adjustright {\cf1\cgrid0 \tab Q = D;
\par \tab }{\b\cf1\cgrid0 else}{\cf1\cgrid0 Q = z;
\par \'85
\par
\par
\par }{\b\cf1\cgrid0 4.4 Other Semantic Rules.
\par
\par }\pard \nowidctlpar\adjustright {\b\cf1\cgrid0 4.4.1}{\cf1\cgrid0 Multiple declarations of the same net or register shall be consistent in both size and type. In addition, the use of the range in the port assignments is optional. If left unspecified as
in Example 4.4.1.2, the port assignment will assume the same size and range of the net type assignment.
\par
\par }{\b\cf1\cgrid0 EDITOR\rquote S NOTE: }{\cf1\cgrid0 The Exemplar compiler accepts the following. I can\rquote t tell from reading 1364 if it specifically forbids the inference of the port range. Regardless of 1364, I\rquote
d like to save the designers some unnecessary typing, if possible.
\par
\par }{\i\cf1\cgrid0 Example 4.4.1.1:}{\cf1\cgrid0
\par \tab }{\b\cf1\cgrid0 output}{\cf1\cgrid0 [2:0] out;\tab // Range is optional for port assignments.
\par \'85
\par
\par }{\i\cf1\cgrid0 Example 4.4.1.2:}{\cf1\cgrid0
\par \tab }{\b\cf1\cgrid0 output}{\cf1\cgrid0 out;\tab // This form is also acceptable.
\par \tab }{\b\cf1\cgrid0 wire}{\cf1\cgrid0 }{\fs18\cf1\cgrid0 [}{\cf1\cgrid0 2:0] out;\tab // The module port will infer this range.
\par \'85
\par
\par }{\i\cf1\cgrid0 Example 4.4.1.3:
\par }{\cf1\cgrid0 \tab }{\b\cf1\cgrid0 output}{\cf1\cgrid0 [2:0] out;
\par \tab }{\b\cf1\cgrid0 wire}{\cf1\cgrid0 [2:1] out; // Not supported because the vector ranges do not match.
\par
\par }{\b\cf1\cgrid0 4.4.2}{\cf1\cgrid0 Global references may not cross module boundaries. Variables must be declared in a port list before being used in lower level structures (lower level modules, functions, tasks, or UDPs).
\par
\par In Example 4.4.2.1, an error occurs because an upward hierarchical reference is not supported.
\par
\par }{\i\cf1\cgrid0 Example 4.4.2.1:}{\cf1\cgrid0
\par }{\b\cf1\cgrid0 module}{\cf1\cgrid0 top(IN, OUT);
\par \tab }{\b\cf1\cgrid0 input}{\cf1\cgrid0 IN;
\par \tab }{\b\cf1\cgrid0 output}{\cf1\cgrid0 OUT;
\par \tab bot INST();
\par }{\b\cf1\cgrid0 endmodule
\par }{\cf1\cgrid0
\par }{\b\cf1\cgrid0 module}{\cf1\cgrid0 bot;
\par }{\b\cf1\cgrid0 assign}{\cf1\cgrid0 top.OUT = top.IN; // Not supported because global reference crosses higher level module boundary.
\par }{\b\cf1\cgrid0 endmodule
\par }{\cf1\cgrid0
\par In Example 4.4.2.2, the code compiles without error because local references are supported.
\par }{\i\cf1\cgrid0 Example 4.4.2.2:}{\cf1\cgrid0
\par }{\b\cf1\cgrid0 module}{\cf1\cgrid0 top(IN, OUT);
\par \tab }{\b\cf1\cgrid0 input}{\cf1\cgrid0 IN;
\par \tab }{\b\cf1\cgrid0 output}{\cf1\cgrid0 OUT;
\par \tab bot INST(IN, OUT);
\par }{\b\cf1\cgrid0 endmodule
\par }{\cf1\cgrid0
\par }{\b\cf1\cgrid0 module}{\cf1\cgrid0 bot (bot_input, bot_output);
\par }{\b\cf1\cgrid0 assign}{\cf1\cgrid0 bot_output = bot_input; // Supported through port list assignment.
\par }{\b\cf1\cgrid0 endmodule
\par }{\cf1\cgrid0
\par }{\b\cf1\cgrid0 EDITOR\rquote S NOTE: }{\cf1\cgrid0 Shalom Bresticker asks if support for the following is necessary. One of the great things about Verilog simulation is that all signals in the design are \lquote visible\rquote
from the top level. Having this capability for wiring up top-level test points would be great. I don\rquote t see why this would be a problem for the synthesizer as long as we\rquote
re allowing only pin assignment and not allowing dumb things like creating logic across module boundaries. It is such a pain to hook up test signals buried in the hierarchy, particularly when multiple instances of a module are used.
\par
\par In Example 4.4.2.3, the code compiles without error because downward connection across module boundaries is supported.
\par }{\i\cf1\cgrid0 Example 4.4.2.3:}{\cf1\cgrid0
\par }{\b\cf1\cgrid0 module}{\cf1\cgrid0 top(IN, OUT, TEST);
\par \tab }{\b\cf1\cgrid0 input}{\cf1\cgrid0 IN;
\par \tab }{\b\cf1\cgrid0 output}{\cf1\cgrid0 OUT;
\par \tab bot INST(IN, OUT);
\par \tab TEST\tab =\tab INST.bot_output;\tab // Downward connection across module
\par }\pard \fi720\li2880\nowidctlpar\adjustright {\cf1\cgrid0 // boundaries are supported.
\par }\pard \nowidctlpar\adjustright {\b\cf1\cgrid0 endmodule
\par }{\cf1\cgrid0
\par }{\b\cf1\cgrid0 module}{\cf1\cgrid0 bot (bot_input, bot_output);
\par }{\b\cf1\cgrid0 assign}{\cf1\cgrid0 bot_output = bot_input; // Supported through port list assignment.
\par }{\b\cf1\cgrid0 endmodule
\par }{\cf1\cgrid0
\par }{\b\cf1\cgrid0
\par }{\cf1\cgrid0 In Example 4.4.2.4, an error occurs because downward references across module boundaries can be used for interconnection purposes only.
\par }{\b\cf1\cgrid0
\par }{\i\cf1\cgrid0 Example 4.4.2.4:}{\cf1\cgrid0
\par }{\b\cf1\cgrid0 module}{\cf1\cgrid0 top(IN, OUT, TEST1, TEST2);
\par \tab }{\b\cf1\cgrid0 input}{\cf1\cgrid0 IN, TEST1;
\par \tab }{\b\cf1\cgrid0 output}{\cf1\cgrid0 OUT, TEST2;
\par \tab bot INST(IN, OUT);
\par \tab TEST2\tab =\tab TEST1 & INST.bot_output; // Not supported.
\par }{\b\cf1\cgrid0 endmodule
\par }{\cf1\cgrid0
\par }{\b\cf1\cgrid0 module}{\cf1\cgrid0 bot (bot_input, bot_output);
\par }{\b\cf1\cgrid0 assign}{\cf1\cgrid0 bot_output = bot_input; \tab // Supported through port list assignment.
\par }{\b\cf1\cgrid0 endmodule
\par }{\cf1\cgrid0
\par
\par }{\b\cf1\cgrid0 4.4.3}{\cf1\cgrid0 All instance inputs should be connected}{\f16\cgrid0 .
\par
\par }{\i\cf1\cgrid0 Example 4.4.3.1:
\par }{\b\cf1\cgrid0 module}{\cf1\cgrid0 top(IN, OUT);
\par \tab }{\b\cf1\cgrid0 input}{\cf1\cgrid0 IN;
\par \tab }{\b\cf1\cgrid0 output}{\cf1\cgrid0 OUT;
\par \tab bot INST(1'b0, OUT);\tab // Unused input connected.
\par }{\b\cf1\cgrid0 endmodule
\par }{\cf1\cgrid0
\par }{\b\cf1\cgrid0 module}{\cf1\cgrid0 bot (IN, OUT);
\par }{\b\cf1\cgrid0 assign}{\cf1\cgrid0 bot_output = bot_input;
\par }{\b\cf1\cgrid0 endmodule
\par }{\cgrid0
\par }}
--=====================_905240392==_
Content-Type: text/plain; charset="us-ascii"

--=====================_905240392==_--