Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 1 Nov 2009 01:06:04 -0700
From:      Ryan Wolf <ryanjudaswolf@gmail.com>
To:        freebsd-doc@FreeBSD.org, ubuntu-doc@lists.ubuntu.com, jbmw@earthlink.net
Subject:   Dual Booting Ubuntu Linux & FreeBSD using the new Grub2
Message-ID:  <f86423ba0911010106s5621508es2896c52dd89db2ab@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
--000e0cd72c268ed45404774abb5e
Content-Type: text/plain; charset=ISO-8859-1

To the Ubuntu & FreeBSD Documentation Folks:

I spent all day trying to figure this out all because there isn't proper
documentation in books or on the internet on it, and no one's documentation
is up to date yet. After I figured it out, thought I would put together a
document so that others won't have to strain as hard as I did just
installing two operating systems that don't talk to each other to well. I
hope Ubuntu decides to have more support for access to BSD partitions, as it
doesn't seem to support it too well at the moment.

Enjoy the document guys. It's my first time writing one, so I hope it helps.

~ Ryan

--000e0cd72c268ed45404774abb5e
Content-Type: text/plain; charset=US-ASCII;
	name="Linux_FreeBSD_Grub_Installation.txt"
Content-Disposition: attachment; 
	filename="Linux_FreeBSD_Grub_Installation.txt"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_g1hinuph0

MzFPQ1QwOQoKKiAqICoKClR1dG9yaWFsIG9uIGR1YWwgYm9vdGluZyBVYnVudHUgOS4xMCBhbmQg
RnJlZUJTRCA3LjItUkVMRUFTRQpDcmVhdGVkIGJ5IFJ5YW4gSnVkYXMgV29sZgpyeWFuanVkYXN3
b2xmQGdtYWlsLmNvbQoKKiAqICoKCkNvbnRlbnRzOgoKMS4gUHJvcGVyIEluc3RhbGxhdGlvbiBv
ZiB0aGUgdHdvIG9wZXJhdGluZyBzeXN0ZW1zCjIuIERpc2NvdmVyaW5nIHRoZSBQaHlzaWNhbCAm
IExvZ2ljYWwgRHJpdmVzIGluIFVidW50dQozLiBJbnN0YWxsaW5nIHRoZSBHcnViMiBCb290bG9h
ZGVyCjQuIENvbmZpZ3VyYXRpb24gb2YgR3J1YjI7IEZpbGVzIGFuZCBGb2xkZXJzCgk0LjEgZ3J1
Yi5jZmcgKC9ib290L2dydWIvZ3J1Yi5jZmcpCgk0LjIgZ3J1YiAoL2V0Yy9kZWZhdWx0L2dydWIp
Cgk0LjMgL2V0Yy9ncnViLmQvIChmb2xkZXIpCjUuIEFkZGluZyBFbnRyaWVzIHRvIEdydWIgMgoK
KiAqICoKCjEuIFByb3BlciBJbnN0YWxsYXRpb24gb2YgdGhlIHR3byBvcGVyYXRpbmcgc3lzdGVt
czoKCllvdSBjYW4gaW5zdGFsbCB0aGUgb3BlcmF0aW5nIHN5c3RlbXMgaW4gYW55IG9yZGVyLCB3
aGljaCBpcyBuaWNlIHRvIGtub3cgZm9yIHRoZSB1bmluaXRpYXRlZC4gSnVzdCBtYWtlIHN1cmUg
dGhhdCwgd2hlbiBpbnN0YWxsaW5nIEZyZWVCU0QsIHRvIG5vdCBpbnN0YWxsIGFueSBib290bG9h
ZGVyIGFuZCBsZWF2ZSBpdCB1bnRvdWNoZWQuIElmIHlvdSBtYWtlIHRoaXMgbWlzdGFrZSwgeW91
IHdpbGwgaGF2ZSB0byByZWluc3RhbGwgRnJlZUJTRCBhdCBhbm90aGVyIHRpbWUuIEluIHRoaXMg
Y2FzZSwgcnVuIHRoZSBsaXZlIENEIHZlcnNpb24gb2YgVWJ1bnR1LCBhbmQgY29udGludWUgd2l0
aCB0aGUgcHJvY2VzcyBiZWxvdy4KCiogKiAqCgoyLiBEaXNjb3ZlcmluZyB0aGUgUGh5c2ljYWwg
JiBMb2dpY2FsIERyaXZlcyBpbiBVYnVudHUKCkEgc3lzdGVtIHR5cGljYWxseSBib290cyBmcm9t
IHRoZSBoYXJkIGRpc2sgYXQgL2Rldi9oZGEsIC9kZXYvc2RhLCAvZGV2L2hkYiwgb3IgL2Rldi9z
ZGIuIEJyaW5nIHVwIGEgdGVybWluYWwgc2Vzc2lvbi4gVGhlIGZvbGxvd2luZyBjb21tYW5kIFtw
YXJ0ZWRdIGRpc3BsYXlzIGEgbGlzdCBvZiB0aGUgcGFydGl0aW9ucyB0aGF0IGluY2x1ZGVzIG9u
ZSB3aXRoIGEgYm9vdCBmbGFnOgoKCSQgc3VkbyBwYXJ0ZWQgL2Rldi9oZGEgcHJpbnQKCUVycm9y
OiBFcnJvciBvcGVuaW5nIC9kZXYvaGRhOiBObyBtZWRpdW0gZm91bmQKCVJldHJ5L2NhbmNlbD8g
YwoKCXdvbGZAVHN1aGlyby1MYXB0b3A6LyQgc3VkbyBwYXJ0ZWQgL2Rldi9zZGEgcHJpbnQKCVtz
dWRvXSBwYXNzd29yZCBmb3Igd29sZjogCglNb2RlbDogQVRBIEhpdGFjaGkgSFRTNTQyNTggKHNj
c2kpCglEaXNrIC9kZXYvc2RhOiA4MC4wR0IKCVNlY3RvciBzaXplIChsb2dpY2FsL3BoeXNpY2Fs
KTogNTEyQi81MTJCCglQYXJ0aXRpb24gVGFibGU6IG1zZG9zCgoJTnVtYmVyICBTdGFydCAgIEVu
ZCAgICAgU2l6ZSAgICBUeXBlICAgICAgRmlsZSBzeXN0ZW0gICAgIEZsYWdzCgkgMSAgICAgIDMy
LjNrQiAgNjAuMEdCICA2MC4wR0IgIHByaW1hcnkgICBleHQ0CiAJIDIgICAgICA2MC4wR0IgIDYx
LjVHQiAgMTQ5N01CICBleHRlbmRlZAoJIDUgICAgICA2MC4wR0IgIDYxLjVHQiAgMTQ5N01CICBs
b2dpY2FsICAgbGludXgtc3dhcCh2MSkKCSAzICAgICAgNjEuNUdCICA4MC4wR0IgIDE4LjVHQiAg
cHJpbWFyeSAgICAgICAgICAgICAgICAgICBib290CgoJd29sZkBUc3VoaXJvLUxhcHRvcDovJCAK
CkluIHRoaXMgY2FzZSwgVWJ1bnR1IGlzIGluc3RhbGxlZCBvbiAvZGV2L3NkYTEsIHdoZXJlIC9z
ZGEgaXMgdGhlIGRyaXZlLCBhbmQgMSBpcyB0aGUgcHJpbWFyeSBwYXJ0aXRpb24gdGhhdCBpcyBp
cyBpbnN0YWxsZWQgb24uIEZyZWVCU0QgaXMgaW5zdGFsbGVkIG9uIAovZGV2L3NkYTMuCgoqICog
KgoKMy4gSW5zdGFsbGluZyB0aGUgR3J1YjIgQm9vdGxvYWRlcgoKVGhlIGZvbGxvd2luZyBpcyB0
byBpbnN0YWxsL3JlaW5zdGFsbCB0aGUgTWFzdGVyIEJvb3QgUmVjb3JkLiBZb3UgY2FuIHRha2Ug
dGhpcyBhcHByb2FjaCBpZiB5b3UgaW5zdGFsbGVkIFVidW50dSBmaXJzdCwgdGhlbiBGcmVlQlNE
IHNlY29uZCBvbiBhIHNlcGFyYXRlIHBhcnRpdGlvbiBvbiB0aGUgc2FtZSBoYXJkZGlzay4gCgoJ
MS4gQm9vdCB0aGUgc3lzdGVtIHVzaW5nIGFuIFVidW50dSBMaXZlIChpbnN0YWxsYXRpb24pIENE
L0RWRAoJMi4gT3BlbiBhIHRlcm1pbmFsIGVtdWxhdG9yIHdpbmRvdyAoTWVudWJhcjogQXBwbGlj
YXRpb25zLT4KCSAgIEFjY2Vzc29yaWVzLT5UZXJtaW5hbCkuCgkzLiBHaXZlIHRoZSBmb2xsb3dp
bmcgY29tbWFuZHMsIHN1YnN0aXR1dGluZyB0aGUgbmFtZSBvZiB0aGUgZGV2aWNlCgkgICB0aGF0
IGhvbGRzIHRoZSByb290IHBhcnRpdGlvbiB0aGF0IHlvdSBmb3VuZCBmcm9tIHRoZSBbcGFydGVk
XQoJICAgY29tbWFuZCAoZS5nLiwgL2Rldi9zZGExKSBmb3IgdGhlIGV4YW1wbGUgYmVsb3cgJy9k
ZXYveHh4LycuIAoJICAgU3Vic3RpdHV0ZSB0aGUgbmFtZSBvZiB0aGUgcHJpbWFyeSBkcml2ZSB0
aGF0IHlvdSB3YW50IHRvIGluc3RhbGwKCSAgIHRoZSBNQlIgb24gKGUuZy4sIC9kZXYvc2RhKSBm
b3IgJy9kZXYveXl5Jy4gCgk0LiBJZiB5b3VyIGxpbnV4IHByaW1hcnkgZHJpdmUgaXMgbm90IGN1
cnJlbnRseSBtb3VudGVkLCB5b3Ugd2lsbCBoYXZlCgkgICB0byBtb3VudCBpdCB3aXRoLiBEbyBu
b3QgZm9yZ2V0IHRvIHVubW91bnQgL21udCB3aGVuIGRvbmUuCgkJCgkJYS4gSWYgdGhlIHN5c3Rl
bSBkb2VzIG5vdCBoYXZlIGEgc2VwYXJhdGUgJ2Jvb3QnIHBhcnRpdGlvbiwgdXNlCgkJICAgdGhl
c2UgY29tbWFuZHM6CgoJCSQgc3VkbyBtb3VudCAvZGV2L3h4eCAvbW50CgkJJCBzdWRvIGdydWIt
aW5zdGFsbCAtLXJvb3QtZGlyZWN0b3J5PS9tbnQgL2Rldi95eXkKCQlJbnN0YWxsYXRpb24gZmlu
aXNoZWQuIE5vIGVycm9yIHJlcG9ydGVkLgoJCVRoaXMgaXMgdGhlIGNvbnRlbnRzIG9mIHRoZSBk
ZXZpY2UgbWFwIC9tbnQvYm9vdC9ncnViL2RldmljZS5tYXAuCgkJQ2hlY2sgaWYgdGhpcyBpcyBj
b3JyZWN0IG9yIG5vdC4gSWYgYW55IG9mIHRoZSBsaW5lcyBpcyBpbmNvcnJlY3QsCgkJZml4IGl0
IGFuIHJlLXJ1biB0aGUgc2NyaXB0ICdncnViLWluc3RhbGwnLgoJCSQgY2F0IC9ib290L2dydWIv
ZGV2aWNlLm1hcAoJCShoZDApICAvZGV2L3NkYQoKCVRoaXMgbGFzdCBsaW5lIGlzIGltcG9ydGFu
dCB0byByZW1lbWJlci4gWW91IHdpbGwgYmUgdXNpbmcgaXQgd2hlbiB5b3UgZ28gdG8gY29uZmln
dXJlIHlvdXIgc3lzdGVtIGZvciB1c2Ugd2l0aCBGcmVlQlNELiBDb3B5IGl0IGRvd24gYXQgdGhp
cyB0aW1lLiBSZW1lbWJlcmluZyB0byB1bm1vdW50IHlvdXIgcGh5c2ljYWwgZHJpdmUuCgoJCSQg
c3VkbyB1bW91bnQgL21udAoKCQliLiBJZiB0aGUgc3lzdGVtICpkb2VzKiBoYXZlIGEgc2VwYXJh
dGUgYm9vdCBwYXJ0aXRpb24sIHVzZSB0aGVzZSBjb21tYW5kcywgc3Vic3RpdHV0aW5nIHRoZSBu
YW1lIG9mIHRoZSBkZXZpY2UgZHJpdmVyIHRoYXQgaG9sZHMgdGhlIGJvb3QgcGFydGl0aW9uIChl
LmcuLCAvZGV2L3NkYTEpIGZvciAvZGV2L3p6ejoKCgkJJCBzdWRvIG1vdW50IC9kZXYveHh4IC9t
bnQKCQkkIHN1ZG8gbW91bnQgL2Rldi96enogL21udC9ib290CgkJJCBzdWRvIGdydWItaW5zdGFs
bCAtLXJvb3QtZGlyZWN0b3J5PS9tbnQgL2Rldi95eXkKCQlJbnN0YWxsYXRpb24gZmluaXNoZWQu
IE5vIGVycm9yIHJlcG9ydGVkLgoJCVRoaXMgaXMgdGhlIGNvbnRlbnRzIG9mIHRoZSBkZXZpY2Ug
bWFwIC9tbnQvYm9vdC9ncnViL2RldmljZS5tYXAuCgkJQ2hlY2sgaWYgdGhpcyBpcyBjb3JyZWN0
IG9yIG5vdC4gSWYgYW55IG9mIHRoZSBsaW5lcyBpcyBpbmNvcnJlY3QsCgkJZml4IGl0IGFuZCBy
ZS1ydW4gdGhlIHNjcmlwdCAnZ3J1Yi1pbnN0YWxsJy4KCQkkIGNhdCAvYm9vdC9ncnViL2Rldmlj
ZS5tYXAKCQkoaGQwKSAgIC9kZXYvc2RhCgkJJHN1ZG8gdW1vdW50IC9tbnQKCQoJNS4gUmVib290
IHRoZSBzeXN0ZW0uIFJlbW92ZSB0aGUgQ0QvRFZEIHdoZW4gdGhlIHN5c3RlbSBhc2tzIHlvdSB0
by4KCgk2LiBDb250aW51ZSB0byByZWJvb3QgdGhlIHN5c3RlbSBvZiB0aGUgaGFyZCBkcml2ZSB5
b3Ugc3BlY2lmaWVkIGluIHRoZSBwbGFjZSBvZiAvZGV2L3h4eC4KCklmIHlvdSBldmVyIGhhdmUg
cHJvYmxlbXMgYWdhaW4sIGl0IGlzIGVhc3kgZW5vdWdoIHRvIHJ1bjoKCgkkIHN1ZG8gZ3J1Yi1p
bnN0YWxsIC9kZXYvc2RhCgpUaGVuIG1ha2Ugc3VyZSBpdCBpcyBpbnN0YWxsZWQgcHJvcGVybHk6
CgoJJCBjYXQgL2Jvb3QvZ3J1Yi9kZXZpY2UubWFwCgkoaGQwKSAgIC9kZXYvc2RhCgkKKiAqICoJ
Cgo0LiBDb25maWd1cmF0aW9uIG9mIEdydWIyOyBGaWxlcyBhbmQgRm9sZGVyczoJCQoKVGhlcmUg
YXJlIHR3byBsb2NhdGlvbnMgdGhhdCBuZWVkIHRvIGJlIGtub3duIGFib3V0IGZvciB0aGUgbmV3
IEdydWIyIGJvb3Rsb2FkZXIsIHdoaWNoIGlzIGluY29uc2lzdGVudCB3aXRoIHRoZSBvcmlnaW5h
bCBHcnViIDAuOTcgYm9vdGxvYWRlcgoKL2Jvb3QvZ3J1Yi8JLSBNYWluIGRpcmVjdG9yeSBob2xk
aW5nIHRoZSBHcnViMiBwcm9ncmFtCi9ldGMvZ3J1Yi5kLyAgICAtIENvbmZpZ3VyYXRpb24gZGly
ZWN0b3J5IGZvciBib290bG9hZGVyCgpXaGlsZSB0aGUgbWFpbiBncnViIGJvb3Rsb2FkZXIgZmls
ZSBjb250aW51ZXMgdG8gcmVzaWRlIGluIHRoZSAvYm9vdC9ncnViIGZvbGRlciwgaXQgaXMgbm8g
bG9uZ2VyIEdydWIncyBmYW1pbGlhciBtZW51LmxzdC4gVGhlIG1haW4gR3J1YiAyIGluc3RydWN0
aW9uIGZpbGUgaXMgbm93IGdydWIuY2ZnLiBUaGlzIGZpbGUgaXMgcHJvZHVjZWQgYnkgdmFyaW91
cyBzY3JpcHRzIHJ1biB3aGVuIGVpdGhlciB0aGUgInVwZGF0ZS1ncnViIiBvciAidXBkYXRlLWdy
dWIyIiBjb21tYW5kIGlzIGV4ZWN1dGVkLiBUaGUgZmlsZXMgcHJpbWFyaWx5IHJlc3BvbnNpYmxl
IGZvciB0aGUgY29udGVudCBvZiBncnViLmNmZyBhcmUgL2V0Yy9kZWZhdWx0L2dydWIgYW5kIGlu
ZGl2aWR1YWwgc2NyaXB0IGZpbGVzIGxvY2F0ZWQgaW4gL2V0Yy9ncnViLmQvCgpUaGUgcHJvZ3Jh
bSBuYW1lICJ1cGRhdGUtZ3J1YjIiIGlzIHByb3ZpZGVkIGZvciBjb21wYXRpYmlsaXR5IHdpdGgg
b2xkZXIgdmVyc2lvbnMgb2YgdGhlIGdydWIyIHBhY2thZ2luZywgYnV0IGZyb20gbm93IG9uIHRo
aXMgZG9jdW1lbnQgd2lsbCBvbmx5IHVzZSB0aGUgbmFtZSAidXBkYXRlLWdydWIiLgoKTWFueSBv
ZiB0aGUgZmlsZXMgaW4gL2Jvb3QvZ3J1YiB3aWxsIG5vdCBiZSBmYW1pbGlhciB0byB1c2VycyBv
ZiBHcnViIExlZ2FjeS4gRXNwZWNpYWxseSBub3RpY2VhYmxlIGFyZSB0aGUgbXVsdGl0dWRlIG9m
ICoubW9kIGZpbGVzIGluIHRoZSAvYm9vdC9ncnViIGZvbGRlci4gR3J1YiAyIGlzIG1vZHVsYXIg
YW5kIHRoZSAqLm1vZCBmaWxlcyBhcmUgbG9hZGVkIGFzIG5lY2Vzc2FyeSBieSBncnViLiBEZXNw
aXRlIHRoZSBhZGRpdGlvbiBvZiB0aGVzZSBmaWxlcywgdGhlIHRvdGFsIHNpemUgb2YgdGhlIC9i
b290L2dydWIgY29udGVudHMgaXMgZmFpcmx5IGNsb3NlIHRvIHRoYXQgb2YgR3J1YiBMZWdhY3kg
YW5kIHNob3VsZCBub3QgcmVxdWlyZSBhIGxhcmdlciAvYm9vdCBwYXJ0aXRpb24uIAoKKiAqICoK
CjQuMSBncnViLmNmZyAoL2Jvb3QvZ3J1Yi9ncnViLmNmZykKCkRPIE5PVCBFRElUIFRISVMgRklM
RSBUaGlzIGlzIHRoZSBtYWluIEdydWIgMiBmaWxlLiBJdCAicmVwbGFjZXMiIEdydWIgTGVnYWN5
J3MgL2Jvb3QvZ3J1Yi9tZW51LmxzdC4gVGhpcyBmaWxlIGNvbnRhaW5zIHRoZSBHcnViIG1lbnUg
aW5zdHJ1Y3Rpb25zLiBVbmxpa2UgR3J1YiBMZWdhY3kncyBtZW51LmxzdCBmaWxlLCBncnViLmNm
ZyBpcyBOT1QgTUVBTlQgVE8gQkUgRURJVEVEISEhCgogICAgKiBncnViLmNmZyBpcyBhdXRvbWF0
aWNhbGx5IGdlbmVyYXRlZCBvciB1cGRhdGVkIHdoZW5ldmVyICJ1cGRhdGUtZ3J1YiIgaXMgZXhl
Y3V0ZWQuIFRoZSBjb21tYW5kIG11c3QgYmUgcnVuIGFzIHJvb3QuCgogICAgKiBUaGUgc2NyaXB0
cyB1c2VkIHRvIGdlbmVyYXRlIGdydWIuY2ZnIGluY2x1ZGUgdGhlIGZpbGVzIGNvbnRhaW5lZCBp
biAvZXRjL2dydWIuZCBhbmQgaW5mb3JtYXRpb24gZ2F0aGVyZWQgZnJvbSAvZXRjL2RlZmF1bHQv
Z3J1YgoKICAgICogVGhlIGZpbGUgaXMgZGl2aWRlZCBpbnRvIHNlY3Rpb25zLiBFYWNoIHNlY3Rp
b24gb2YgdGhlIGZpbGUgaXMgY2xlYXJseSBkZWxpbmVhdGVkIGFuZCBpcyByZWNvZ25pemFibGUg
YnkgdGhlIHNlY3Rpb24gaGVhZGVyICMjIyBCRUdJTi4gVGhlIGluZm9ybWF0aW9uIG9uIHRoaXMg
bGluZSByZWZlcmVuY2VzIHRoZSBmaWxlIGluIHRoZSAvZXRjL2dydWIuZCBmb2xkZXIgd2hpY2gg
aXMgdXNlZCB0byBpbmNvcnBvcmF0ZSB0aGUgaW5mb3JtYXRpb24gaW50byBncnViLmNmZwoKICAg
ICogQnkgZGVmYXVsdCwgYW5kIHdoZW5ldmVyIHRoZSAidXBkYXRlLWdydWIiIGNvbW1hbmQgaXMg
ZXhlY3V0ZWQsIHRoaXMgZmlsZSBpcyBtYWRlIHJlYWQtb25seS4gVGhpcyBpcyBpbiBrZWVwaW5n
IHdpdGggdGhlIGludGVudCB0aGF0IHRoZSBmaWxlIHNob3VsZCBub3QgYmUgZWRpdGVkIG1hbnVh
bGx5LiBJZiB5b3UgbXVzdCBlZGl0IHRoaXMgZmlsZSwgaW5zdHJ1Y3Rpb25zIGFyZSBwcm92aWRl
ZCBsYXRlciBvbiB0aGlzIHBhZ2UuCgogICAgKiBTYW1wbGUgZ3J1Yi5jZmcgaW5jbHVkaW5nIHR3
byBVYnVudHUga2VybmVscywgbWVtdGVzdDg2KywgV2luZG93cyBhbmQgYSBjdXN0b20gZW50cnkg
KDQxX3NyY2QpIGltcG9ydGVkIGZyb20gYW4gL2V0Yy9ncnViLmQvIHNjcmlwdDogCgogICAgICAj
CiAgICAgICMgRE8gTk9UIEVESVQgVEhJUyBGSUxFCiAgICAgICMKICAgICAgIyBJdCBpcyBhdXRv
bWF0aWNhbGx5IGdlbmVyYXRlZCBieSAvdXNyL3NiaW4vdXBkYXRlLWdydWIgdXNpbmcgdGVtcGxh
dGVzCiAgICAgICMgZnJvbSAvZXRjL2dydWIuZCBhbmQgc2V0dGluZ3MgZnJvbSAvZXRjL2RlZmF1
bHQvZ3J1YgogICAgICAjCgogICAgICAjIyMgQkVHSU4gL2V0Yy9ncnViLmQvMDBfaGVhZGVyICMj
IwogICAgICBzZXQgZGVmYXVsdD0wCiAgICAgIHNldCB0aW1lb3V0PTUKICAgICAgc2V0IHJvb3Q9
KGhkMCw1KQogICAgICBzZWFyY2ggLS1mcy11dWlkIC0tc2V0IGIwMmUxOTM0LTEyZGQtNDE4YQog
ICAgICBpZiBmb250IC91c3Ivc2hhcmUvZ3J1Yi9hc2NpaS5wZmYgOyB0aGVuCiAgICAgICAgc2V0
IGdmeG1vZGU9NjQweDQ4MAogICAgICAgIGluc21vZCBnZnh0ZXJtCiAgICAgICAgaW5zbW9kIHZi
ZQogICAgICAgIHRlcm1pbmFsIGdmeHRlcm0KICAgICAgZmkKICAgICAgIyMjIEVORCAvZXRjL2dy
dWIuZC8wMF9oZWFkZXIgIyMjCgogICAgICAjIyMgQkVHSU4gL2V0Yy9ncnViLmQvMDVfZGViaWFu
X3RoZW1lICMjIwogICAgICBzZXQgbWVudV9jb2xvcl9ub3JtYWw9Y3lhbi9ibHVlCiAgICAgIHNl
dCBtZW51X2NvbG9yX2hpZ2hsaWdodD13aGl0ZS9ibHVlCiAgICAgICMjIyBFTkQgL2V0Yy9ncnVi
LmQvMDVfZGViaWFuX3RoZW1lICMjIwoKICAgICAgIyMjIEJFR0lOIC9ldGMvZ3J1Yi5kLzEwX2h1
cmQgIyMjCiAgICAgICMjIyBFTkQgL2V0Yy9ncnViLmQvMTBfaHVyZCAjIyMKCiAgICAgICMjIyBC
RUdJTiAvZXRjL2dydWIuZC8xMF9saW51eCAjIyMKICAgICAgc2V0IHJvb3Q9KGhkMCw1KQogICAg
ICBzZWFyY2ggLS1mcy11dWlkIC0tc2V0IGIwMmUxOTM0LTEyZGQtNDE4YS1iZTNhLTlmZjdkM2U3
ZTdlYQogICAgICBtZW51ZW50cnkgIlVidW50dSwgbGludXggMi42LjI4LTEzLWdlbmVyaWMiIHsK
ICAgICAgICAgICAgICBsaW51eCAgIC9ib290L3ZtbGludXotMi42LjI4LTEzLWdlbmVyaWMgcm9v
dD1VVUlEPWIwMmUxOTM0LTEyZGQtNDE4YSBybyAgcXVpZXQgc3BsYXNoIAkJCXZnYTgwMAogICAg
ICAgICAgICAgIGluaXRyZCAgL2Jvb3QvaW5pdHJkLmltZy0yLjYuMjgtMTMtZ2VuZXJpYwogICAg
ICB9CiAgICAgIG1lbnVlbnRyeSAiVWJ1bnR1LCBsaW51eCAyLjYuMjgtMTMtZ2VuZXJpYyAoc2lu
Z2xlLXVzZXIgbW9kZSkiIHsKICAgICAgICAgICAgICBsaW51eCAgIC9ib290L3ZtbGludXotMi42
LjI4LTEzLWdlbmVyaWMgcm9vdD1VVUlEPWIwMmUxOTM0LTEyZGQtNDE4YSBybyBzaW5nbGUgCiAg
ICAgICAgICAgICAgaW5pdHJkICAvYm9vdC9pbml0cmQuaW1nLTIuNi4yOC0xMy1nZW5lcmljCiAg
ICAgIH0KICAgICAgbWVudWVudHJ5ICJVYnVudHUsIGxpbnV4IDIuNi4yOC0xMS1nZW5lcmljIiB7
CiAgICAgICAgICAgICAgbGludXggICAvYm9vdC92bWxpbnV6LTIuNi4yOC0xMS1nZW5lcmljIHJv
b3Q9VVVJRD1iMDJlMTkzNC0xMmRkLTQxOGEgcm8gIHF1aWV0IHNwbGFzaCAJCQl2Z2E4MDAKICAg
ICAgICAgICAgICBpbml0cmQgIC9ib290L2luaXRyZC5pbWctMi42LjI4LTExLWdlbmVyaWMKICAg
ICAgfQogICAgICBtZW51ZW50cnkgIlVidW50dSwgbGludXggMi42LjI4LTExLWdlbmVyaWMgKHNp
bmdsZS11c2VyIG1vZGUpIiB7CiAgICAgICAgICAgICAgbGludXggICAvYm9vdC92bWxpbnV6LTIu
Ni4yOC0xMS1nZW5lcmljIHJvb3Q9VVVJRD1iMDJlMTkzNC0xMmRkLTQxOGEgcm8gc2luZ2xlIAog
ICAgICAgICAgICAgIGluaXRyZCAgL2Jvb3QvaW5pdHJkLmltZy0yLjYuMjgtMTEtZ2VuZXJpYwog
ICAgICB9CiAgICAgICMjIyBFTkQgL2V0Yy9ncnViLmQvMTBfbGludXggIyMjCgogICAgICAjIyMg
QkVHSU4gL2V0Yy9ncnViLmQvMjBfbWVtdGVzdDg2KyAjIyMKICAgICAgbWVudWVudHJ5ICJNZW1v
cnkgdGVzdCAobWVtdGVzdDg2KykiIHsKICAgICAgICAgICAgICBsaW51eCAgIC9ib290L21lbXRl
c3Q4NisuYmluCiAgICAgIH0KICAgICAgbWVudWVudHJ5ICJNZW1vcnkgdGVzdCAobWVtdGVzdDg2
Kywgc2VyaWFsIGNvbnNvbGUgMTE1MjAwKSIgewogICAgICAgICAgICAgIGxpbnV4ICAgL2Jvb3Qv
bWVtdGVzdDg2Ky5iaW4gY29uc29sZT10dHlTMCwxMTUyMDBuOAogICAgICB9CiAgICAgICMjIyBF
TkQgL2V0Yy9ncnViLmQvMjBfbWVtdGVzdDg2KyAjIyMKCiAgICAgICMjIyBCRUdJTiAvZXRjL2dy
dWIuZC8zMF9vcy1wcm9iZXIgIyMjCiAgICAgIG1lbnVlbnRyeSAiTWljcm9zb2Z0IFdpbmRvd3Mg
WFAgSG9tZSBFZGl0aW9uIChvbiAvZGV2L3NkYTEpIiB7CiAgICAgICAgICAgICAgc2V0IHJvb3Q9
KGhkMCwxKQogICAgICAgICAgICAgIGNoYWlubG9hZGVyICsxCiAgICAgIH0KICAgICAgIyMjIEVO
RCAvZXRjL2dydWIuZC8zMF9vcy1wcm9iZXIgIyMjCgogICAgICAjIyMgQkVHSU4gL2V0Yy9ncnVi
LmQvNDBfY3VzdG9tICMjIwogICAgICAjIFRoaXMgZmlsZSBpcyBhbiBleGFtcGxlIG9uIGhvdyB0
byBhZGQgY3VzdG9tIGVudHJpZXMKCiAgICAgICMjIyBFTkQgL2V0Yy9ncnViLmQvNDBfY3VzdG9t
ICMjIwoKICAgICAgIyMjIEJFR0lOIC9ldGMvZ3J1Yi5kLzQxX3NyY2QgIyMjCiAgICAgIG1lbnVl
bnRyeSAiU3lzdGVtUmVzY3VlIENEIG9uIGhhcmQgZHJpdmUiIHsKICAgICAgICAgICAgICBzZXQg
cm9vdD0oaGQwLDEwKQogICAgICAgICAgICAgIGxpbnV4ICAgL3N5c3JjZC9yZXNjdWVjZCBzdWJk
aXI9c3lzcmNkIHNldGttYXA9dXMKICAgICAgICAgICAgICBpbml0cmQgIC9zeXNyY2QvaW5pdHJh
bS5pZ3oKICAgICAgfSAKICAgICAgIyMjIEVORCAvZXRjL2dydWIuZC80MV9zcmNkICMjIwoKKiAq
ICoKCjQuMiBncnViICgvZXRjL2RlZmF1bHQvZ3J1YikKClRoaXMgZmlsZSBjb250YWlucyBpbmZv
cm1hdGlvbiBwcmV2aW91c2x5IGZvdW5kIGluIHRoZSB1cHBlciBzZWN0aW9uIG9mIC9ib290L2dy
dWIvbWVudS5sc3QuIEl0IGNvbnRhaW5zIHNldHRpbmdzIHByaW1hcmlseSBhZmZlY3RpbmcgR3J1
YidzIG1lbnUgZGlzcGxheS4gVGhpcyBmaWxlIGNhbiBiZSBlZGl0ZWQgYnkgcm9vdCB0byBtYWtl
IGNoYW5nZXMgdG8gdGhlc2Ugc2V0dGluZ3M7IHRoZXkgd2lsbCBiZSBpbXBvcnRlZCBpbnRvIGdy
dWIuY2ZnIHdoZW4gInVwZGF0ZS1ncnViIiBpcyBleGVjdXRlZC4KCiAgICAKCiAgICAgICMgSWYg
eW91IGNoYW5nZSB0aGlzIGZpbGUsIHJ1biAndXBkYXRlLWdydWInIGFmdGVyd2FyZHMgdG8gdXBk
YXRlCiAgICAgICMgL2Jvb3QvZ3J1Yi9ncnViLmNmZy4KCiAgICAgIEdSVUJfREVGQVVMVD0wCiAg
ICAgIEdSVUJfSElEREVOX1RJTUVPVVQ9MAogICAgICBHUlVCX0hJRERFTl9USU1FT1VUX1FVSUVU
PXRydWUKICAgICAgR1JVQl9USU1FT1VUPTEwCiAgICAgIEdSVUJfRElTVFJJQlVUT1I9YGxzYl9y
ZWxlYXNlIC1pIC1zIDI+IC9kZXYvbnVsbCB8fCBlY2hvIERlYmlhbmAKICAgICAgR1JVQl9DTURM
SU5FX0xJTlVYX0RFRkFVTFQ9InF1aWV0IHNwbGFzaCIKICAgICAgR1JVQl9DTURMSU5FX0xJTlVY
PSIiCgogICAgICAjIFVuY29tbWVudCB0byBkaXNhYmxlIGdyYXBoaWNhbCB0ZXJtaW5hbCAoZ3J1
Yi1wYyBvbmx5KQogICAgICAjR1JVQl9URVJNSU5BTD1jb25zb2xlCgogICAgICAjIFRoZSByZXNv
bHV0aW9uIHVzZWQgb24gZ3JhcGhpY2FsIHRlcm1pbmFsCiAgICAgICMgbm90ZSB0aGF0IHlvdSBj
YW4gdXNlIG9ubHkgbW9kZXMgd2hpY2ggeW91ciBncmFwaGljIGNhcmQgc3VwcG9ydHMgdmlhIFZC
RQogICAgICAjIHlvdSBjYW4gc2VlIHRoZW0gaW4gcmVhbCBHUlVCIHdpdGggdGhlIGNvbW1hbmQg
YHZiZWluZm8nCiAgICAgICNHUlVCX0dGWE1PREU9NjQweDQ4MAoKICAgICAgIyBVbmNvbW1lbnQg
aWYgeW91IGRvbid0IHdhbnQgR1JVQiB0byBwYXNzICJyb290PVVVSUQ9eHh4IiBwYXJhbWV0ZXIg
dG8gTGludXgKICAgICAgI0dSVUJfRElTQUJMRV9MSU5VWF9VVUlEPXRydWUKCiAgICAgICMgVW5j
b21tZW50IHRvIGRpc2FibGUgZ2VuZXJhdGlvbiBvZiByZWNvdmVyeSBtb2RlIG1lbnUgZW50cnlz
CiAgICAgICNHUlVCX0RJU0FCTEVfTElOVVhfUkVDT1ZFUlk9InRydWUiCgoKCiAgICAgIFRoaXMg
ZmlsZSBjb250YWlucyBpbmZvcm1hdGlvbiBmb3JtZXJseSBjb250YWluZWQgaW4gdGhlIHVwcGVy
IHNlY3Rpb24gb2YgR3J1YiBMZWdhY3kncyAnJ21lbnUubHN0JycgYW5kIGl0ZW1zIGNvbnRhaW5l
ZCBvbiB0aGUgZW5kIG9mIHRoZSBrZXJuZWwgbGluZS4gVGhlIGl0ZW1zIGluIHRoaXMgZmlsZSBj
YW4gYmUgZWRpdGVkIGJ5IGEgdXNlciB3aXRoIGFkbWluaXN0cmF0b3IgKHJvb3QpIHByaXZpbGVn
ZXMuIEdydWIgZGV2ZWxvcGVycyBoYXZlIGhhdmUgcGxhY2VkIGV4cGxhbmF0b3J5IGNvbW1lbnRz
IHdpdGhpbiB0aGUgZmlsZSBpdHNlbGYuCgogICAgKiBHUlVCX0RFRkFVTFQ9MAoKICAgICAgICAg
IG8gU2V0cyB0aGUgZGVmYXVsdCBhbmQgcHJlLXNlbGVjdGVkIG1lbnUgZW50cnkuIEVudHJpZXMg
bWF5IGJlIG51bWVyaWMgb3Igc2F2ZWQKCiAgICAgICAgICBvICAgIEdSVUJfREVGQVVMVD0wCiAg
ICAgICAgICAgICAgICArIFNldHMgdGhlIGRlZmF1bHQgbWVudSBlbnRyeSBieSBtZW51IHBvc2l0
aW9uLiBBcyB3aXRoIEdydWIgTGVnYWN5LCB0aGUgZmlyc3QgIm1lbnVlbnRyeSIgaW4gZ3J1Yi5j
ZmcgaXMgMCwgdGhlIHNlY29uZCBpcyAxLCBldGMuIAoKICAgICAgICAgIG8gICAgR1JVQl9ERUZB
VUxUPXNhdmVkCiAgICAgICAgICAgICAgICArIFNldHMgdGhlIGRlZmF1bHQgbWVudSBlbnRyeSB3
aXRoIHdoYXRldmVyIHdhcyBzZWxlY3RlZCBvbiB0aGUgbGFzdCBib290LiBJZiB0aGUgbWVudSBp
cyBkaXNwbGF5ZWQgZHVyaW5nIGJvb3QsIHRoZSBwcmV2aW91c2x5IHNlbGVjdGVkIG9wdGlvbiB3
aWxsIGJlIGhpZ2hsaWdodGVkLiBJZiBubyBhY3Rpb24gaXMgdGFrZW4sIHRoaXMgaXMgc2VsZWN0
aW9uIHdoaWNoIHdpbGwgYmUgYm9vdGVkIGF0IHRoZSBlbmQgb2YgdGhlIHRpbWVvdXQsIG9yIGlm
IHRoZSAJbWVudSBpcyBoaWRkZW4uIAoKICAgICogR1JVQl9USU1FT1VUPTUKCiAgICAgICAgICBv
IE5vIGNoYW5nZSBmcm9tIEdydWIgTGVnYWN5LiBUaGlzIGlzIHRoZSBudW1iZXIgb2Ygc2Vjb25k
cyBiZWZvcmUgdGhlIGRlZmF1bHQgZW50cnkgaXMgYXV0b21hdGljYWxseSBib290ZWQuIFRvIGhh
dmUgeW91ciBjaG9pY2UsIHlvdSBwcm9iYWJseSB3YW50IHRvIGNoYW5nZSB0aGlzIHRvIGEgZ3Jl
YXRlciB2YWx1ZS4gU2V0dGluZyBhIHZhbHVlIG9mIC0xIHdpbGwgZGlzcGxheSB0aGUgbWVudSB1
bnRpbCB0aGUgdXNlciBtYWtlcyBhIHNlbGVjdGlvbiAobm8gdGltZW91dCkuIAoKICAgICogR1JV
Ql9ISURERU5fVElNRU9VVD0wCiAgICAgICAgICBvIFRoZSBtZW51IHdpbGwgYmUgaGlkZGVuIHVu
bGVzcyBhICMgc3ltYm9sIGlzIHByZXNlbnQgYXQgdGhlIGJlZ2lubmluZyBvZiB0aGlzIGxpbmUu
ICggIyBHUlVCX0hJRERFTl9USU1FT1VUPTAgKS4gWW91IG5lZWQgdG8gbW9kaWZ5IHRoaXMgaW4g
b3JkZXIgdG8gc2VlIHRoZSBib290bG9hZGVyIHdoZW4geW91IHR1cm4gb24geW91ciBzeXN0ZW0u
IFRoYXQgc2FpZCwgcHV0IHRoZSAjIGluIGZyb250IG9mIGl0LgoKICAgICAgICAgIG8gVGhlIGRl
ZmF1bHQgc2V0dGluZyBpbml0aWFsbHkgZGVwZW5kcyBvbiB0aGUgcHJlc2VuY2Ugb2Ygb3RoZXIg
b3BlcmF0aW5nIHN5c3RlbXMuCiAgICAgICAgICAgICAgICArIEFub3RoZXIgT1MgRGV0ZWN0ZWQ6
IFRoZSBtZW51IHdpbGwgYmUgZGlzcGxheWVkLiAoIFRoZSBsaW5lIHdpbGwgYmVnaW4gd2l0aCBh
ICMgc3ltYm9sLiApCiAgICAgICAgICAgICAgICArIE5vIG90aGVyIE9TIERldGVjdGVkOiBUaGUg
bWVudSB3aWxsIGJlIGhpZGRlbi4gCgogICAgICAgICAgbyBGb3IgaW50ZWdlcnMgZ3JlYXRlciB0
aGFuIDAsIHRoZSBzeXN0ZW0gd2lsbCBwYXVzZSwgYnV0IG5vdCBkaXNwbGF5IHRoZSBtZW51LCBm
b3IgdGhlIGVudGVyZWQgbnVtYmVyIG9mIHNlY29uZHMuCiAgICAgICAgICBvIDAgVGhlIG1lbnUg
d2lsbCBub3QgYmUgZGlzcGxheWVkLiBUaGVyZSB3aWxsIGJlIG5vIGRlbGF5LgogICAgICAgICAg
ICAgICAgKyBXaGVuIHRoaXMgZW50cnkgaXMgc2V0IHRvIDA6CgogICAgICAgICAgICAgICAgICAg
ICAgIyBUaGUgdXNlciBtYXkgZm9yY2UgZGlzcGxheWluZyB0aGUgbWVudSBhcyB0aGUgY29tcHV0
ZXIgYm9vdHMgYnkgaG9sZGluZyBkb3duIHRoZSBTSElGVCBrZXkuCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAqIER1cmluZyBib290LCB0aGUgc3lzdGVtIHdpbGwgY2hlY2sgdGhlIFNISUZU
IGtleSBzdGF0dXMuIElmIGl0IGNhbm5vdCBkZXRlcm1pbmUgdGhlIGtleSBzdGF0dXMsIGEgc2hv
cnQgZGVsYXkgd2lsbCBlbmFibGUgdGhlIHVzZXIgdG8gZGlzcGxheSB0aGUgbWVudSBieSBwcmVz
c2luZyB0aGUgRVNDIGtleS4gCgogICAgICAgICAgICAgICAgICAgICAgIyBJZiBlbmFibGVkLCB0
aGUgc3BsYXNoIHNjcmVlbiBkZXNpZ25hdGVkIGluIDA1X2RlYmlhbl90aGVtZSB3aWxsIGJlIGRp
c3BsYXllZCBldmVuIGlmIHRoZSBoaWRkZW4gbWVudSBmZWF0dXJlIGlzIAkJCQlzZWxlY3RlZC4g
CgogICAgKiBHUlVCX0hJRERFTl9NRU5VX1FVSUVUPXRydWUKICAgICAgICAgIG8gdHJ1ZSAtIE5v
IGNvdW50ZG93biBpcyBkaXNwbGF5ZWQuIFRoZSBzY3JlZW4gd2lsbCBiZSBibGFuay4KICAgICAg
ICAgIG8gZmFsc2UgLSBBIGNvdW50ZXIgd2lsbCBkaXNwbGF5IG9uIGEgYmxhbmsgc2NyZWVuIGZv
ciB0aGUgZHVyYXRpb24gb2YgdGhlIEdSVUJfSElEREVOX1RJTUVPVVQgdmFsdWUuIAoKICAgICog
R1JVQl9ESVNUUklCVVRPUj1sc2JfcmVsZWFzZSAtaSAtcyAyPiAvZGV2L251bGwgfHwgZWNobyBE
ZWJpYW4KICAgICAgICAgIG8gRGV0ZXJtaW5lcyB0aGUgZGVzY3JpcHRpdmUgbmFtZSBpbiB0aGUg
bWVudSBlbnRyeS4gKFVidW50dSwgWHVidW50dSwgRGViaWFuLCBldGMuKSAKCiAgICAqIEdSVUJf
Q01ETElORV9MSU5VWAogICAgICAgICAgbyBJZiBpdCBleGlzdHMsIHRoaXMgbGluZSBpbXBvcnRz
IGFueSBlbnRyaWVzIHRvIHRoZSBlbmQgb2YgdGhlIGxpbnV4IGNvbW1hbmQgbGluZSAoR3J1YiBM
ZWdhY3kncyAia2VybmVsIiBsaW5lKSBmb3IgYm90aCBub3JtYWwgYW5kIHJlY292ZXJ5IG1vZGVz
LiBUaGlzIGlzIHNpbWlsYXIgdG8gdGhlICJhbHRvcHRpb25zIiBsaW5lIGluIG1lbnUubHN0IAoK
ICAgICogR1JVQl9DTURMSU5FX0xJTlVYX0RFRkFVTFQ9InF1aWV0IHNwbGFzaCIKICAgICAgICAg
IG8gVGhpcyBsaW5lIGltcG9ydHMgYW55IGVudHJpZXMgdG8gdGhlIGVuZCBvZiB0aGUgJ2xpbnV4
JyBsaW5lIChHcnViIExlZ2FjeSdzICJrZXJuZWwiIGxpbmUpLiBUaGUgZW50cmllcyBhcmUgYXBw
ZW5kZWQgdG8gdGhlIGVuZCBvZiB0aGUgbm9ybWFsIG1vZGUgb25seS4gVGhpcyBpcyBzaW1pbGFy
IHRvIHRoZSAiZGVmb3B0aW9ucyIgbGluZSBpbiBtZW51LmxzdC4gIElmIHlvdSB3YW50IGEgYmxh
Y2sgc2NyZWVuIHdpdGggc2Nyb2xsaW5nIGJvb3QgbWVzc2FnZXMsIHJlbW92ZSAicXVpZXQgc3Bs
YXNoIi4gSWYgeW91IHdhbnQgYSBncnViIHNwbGFzaCBzY3JlZW4gd2l0aCBsaW1pdGVkIG1lc3Nh
Z2VzIHVuZGVybmVhdGggdGhlIFVidW50dSBsb2dvLCB1c2Ugb25seSAic3BsYXNoIi4gCgkgIAkg
IDwgVGhpcyBbb25seSAic3BsYXNoIl0gd2lsbCBub3Qgd29yayBpbiBLYXJtaWMgZHVyaW5nIGJv
b3QgYXMgdGhlIHhzcGxhc2ggZG9lcyBub3QgZGlzcGxheSB0aGUgbWVzc2FnZXMgLCBidXQgdGhl
IG1lc3NhZ2VzIGF0IHNodXRkb3duIHdpbGwgYmUgZGlzcGxheWVkLiAKCiAgICAqICNHUlVCX1RF
Uk1JTkFMPWNvbnNvbGUKICAgICAgICAgIG8gVW5jb21tZW50IHRvIGRpc2FibGUgZ3JhcGhpY2Fs
IHRlcm1pbmFsIChncnViLXBjIG9ubHkpLiAKCiAgICAqICNHUlVCX0RJU0FCTEVfTElOVVhfVVVJ
RD10cnVlCiAgICAgICAgICBvIFVuY29tbWVudCB0aGlzIGxpbmUgaWYgeW91IGRvbid0IHdhbnQg
R1JVQiB0byBwYXNzICJyb290PVVVSUQ9eHh4IiBwYXJhbWV0ZXIgdG8gTGludXguIAoKICAgICog
R1JVQl9ESVNBQkxFX0xJTlVYX1JFQ09WRVJZPXRydWUKICAgICAgICAgIG8gQWRkIG9yIHVuY29t
bWVudCB0aGlzIGxpbmUgdG8gcHJldmVudCAiUmVjb3ZlcnkiIG1vZGUga2VybmVsIG9wdGlvbnMg
ZnJvbSBhcHBlYXJpbmcgaW4gdGhlIG1lbnUuIAoKICAgICogR1JVQl9ESVNBQkxFX09TX1BST0JF
Uj10cnVlCiAgICAgICAgICBvIEVuYWJsZXMvZGlzYWJsZXMgdGhlIG9zLXByb2JlciBjaGVjayBv
ZiBvdGhlciBwYXJ0aXRpb25zIGZvciBvcGVyYXRpbmcgc3lzdGVtcywgaW5jbHVkaW5nIFdpbmRv
d3MsIExpbnV4LCBPU1ggYW5kIEh1cmQuIAoKVGhpcyBpcyBhbiBleGFtcGxlIG9mIHdoYXQgeW91
ciBmaWxlIHNob3VsZCBsb29rIGxpa2UgYWZ0ZXIgbW9kaWZpZWQ6CgoJIyBJZiB5b3UgY2hhbmdl
IHRoaXMgZmlsZSwgcnVuICd1cGRhdGUtZ3J1YicgYWZ0ZXJ3YXJkcyB0byB1cGRhdGUKCSMgL2Jv
b3QvZ3J1Yi9ncnViLmNmZy4KCglHUlVCX0RFRkFVTFQ9MAoJI0dSVUJfSElEREVOX1RJTUVPVVQ9
MTAKCUdSVUJfSElEREVOX1RJTUVPVVRfUVVJRVQ9ZmFsc2UKCUdSVUJfVElNRU9VVD0iMTAiCglH
UlVCX0RJU1RSSUJVVE9SPWBsc2JfcmVsZWFzZSAtaSAtcyAyPiAvZGV2L251bGwgfHwgZWNobyBE
ZWJpYW5gCglHUlVCX0NNRExJTkVfTElOVVhfREVGQVVMVD0ic3BsYXNoIgoJR1JVQl9DTURMSU5F
X0xJTlVYPSIiCgoJIyBVbmNvbW1lbnQgdG8gZGlzYWJsZSBncmFwaGljYWwgdGVybWluYWwgKGdy
dWItcGMgb25seSkKCSNHUlVCX1RFUk1JTkFMPWNvbnNvbGUKCgkjIFRoZSByZXNvbHV0aW9uIHVz
ZWQgb24gZ3JhcGhpY2FsIHRlcm1pbmFsCgkjIG5vdGUgdGhhdCB5b3UgY2FuIHVzZSBvbmx5IG1v
ZGVzIHdoaWNoIHlvdXIgZ3JhcGhpYyBjYXJkIHN1cHBvcnRzIHZpYSBWQkUKCSMgeW91IGNhbiBz
ZWUgdGhlbSBpbiByZWFsIEdSVUIgd2l0aCB0aGUgY29tbWFuZCBgdmJlaW5mbycKCUdSVUJfR0ZY
TU9ERT0xMjgweDgwMAoKCSMgVW5jb21tZW50IGlmIHlvdSBkb24ndCB3YW50IEdSVUIgdG8gcGFz
cyAicm9vdD1VVUlEPXh4eCIgcGFyYW1ldGVyIHRvIExpbnV4CgkjR1JVQl9ESVNBQkxFX0xJTlVY
X1VVSUQ9dHJ1ZQoKCSMgVW5jb21tZW50IHRvIGRpc2FibGUgZ2VuZXJhdGlvbiBvZiByZWNvdmVy
eSBtb2RlIG1lbnUgZW50cnlzCgkjR1JVQl9ESVNBQkxFX0xJTlVYX1JFQ09WRVJZPSJ0cnVlIgoK
UExFQVNFIE5PVEU6IElmIHlvdSB3YW50IHRvIGNoYW5nZSB0aGUgcmVzb2x1dGlvbiBvZiB5b3Vy
IG1lbnUsIG1ha2Ugc3VyZSB0aGF0IHlvdSBrbm93IHRoZSBwcm9wZXIgcmVzb2x1dGlvbnMgdGhh
dCB5b3VyIGNvbXB1dGVyIGNhbiBydW4gYXQgYmVmb3JlIG1vZGlmeWluZy4gSWYgeW91IGFyZSB1
bnN1cmUsIGV2ZW4gaW4gdGhlIHNsaWdodGVzdCwgbGVhdmUgdGhlIGRlZmF1bHRzIGF0IDY0MHg0
ODAKCiogKiAqCgo0LjMgL2V0Yy9ncnViLmQvIChmb2xkZXIpCgpUaGUgZmlsZXMgaW4gdGhpcyBm
b2xkZXIgYXJlIHJlYWQgZHVyaW5nIGV4ZWN1dGlvbiBvZiAnInVwZGF0ZS1ncnViIidjb21tYW5k
LiBUaGUgc2NyaXB0cyBpbiB0aGVzZSBmaWxlcyBleHBvcnQgdGhlIGluZm9ybWF0aW9uIHRoZXkg
Z2F0aGVyIGludG8gL2Jvb3QvZ3J1Yi9ncnViLmNmZy4gVGhlIGZpbGVzIGFyZSBydW4gaW4gc2Vx
dWVudGlhbCBvcmRlciAtIGZpbGVzIHdpdGggbmFtZXMgc3RhcnRpbmcgd2l0aCBhIG51bWVyYWwg
YXJlIHJ1biBmaXJzdCwgZm9sbG93ZWQgYnkgZmlsZXMgd2hvc2UgbmFtZSBiZWdpbnMgd2l0aCBh
IGxldHRlci4gVGhlIG9yZGVyIHRoZSBmaWxlIGlzIHJ1biBkZXRlcm1pbmVzIHRoZSBsb2NhdGlv
biBvZiBpdGVtcyBpbiB0aGUgZ3J1YiBtZW51LgoKQ3VzdG9tIGVudHJpZXMgY2FuIGJlIGFkZGVk
IHRvIHRoZSA0MF9jdXN0b20gZmlsZSBvciBwbGFjZWQgaW4gYSBuZXcgZmlsZS4KCkFueSBmaWxl
IGNyZWF0ZWQgbXVzdCBiZSBleGVjdXRhYmxlIGluIG9yZGVyIHRvIGJlIGluY2x1ZGVkIGluIHRo
ZSBncnViLmNmZyBmaWxlIGR1cmluZyB0aGUgInVwZGF0ZS1ncnViIiBjb21tYW5kLiBUaGlzIGNh
biBiZSBhY2NvbXBsaXNoZWQgZnJvbSB0aGUgdGVybWluYWwgd2l0aCAic3VkbyBjaG1vZCB1K3gg
L2V0Yy9ncnViLmQvZmlsZW5hbWUiLiBUaGUgZm9sbG93aW5nIGlzIGEgdmVyeSBicmllZiBsb29r
IGF0IHdoYXQgdGhlIGZpbGVzIGFjY29tcGxpc2guCgogICAgKiAwMF9oZWFkZXIKICAgICAgICAg
IG8gTG9hZHMgc2V0dGluZ3MgZnJvbSAvZXRjL2RlZmF1bHQvZ3J1YiwgaW5jbHVkaW5nIHZpc3Vh
bCBwcmVzZW50YXRpb25zLCAJCSAgICB0aW1lb3V0LCBhbmQgdGVybWluYWwgb3B0aW9ucy4gCiAg
ICAqIDA1X2RlYmlhbl90aGVtZQogICAgICAgICAgbyBTZXRzIGJhY2tncm91bmQsIHRleHQgY29s
b3JzLCBhbmQgdGhlbWVzLiAKICAgICogMTBfaHVyZAogICAgICAgICAgbyBMb2NhdGVzIGh1cmQg
a2VybmVscy4gCiAgICAqIDEwX2xpbnV4CiAgICAgICAgICBvIExvY2F0ZXMga2VybmVscyBiYXNl
ZCBvbiB0aGUgZGlzdHJpYnV0b3IgZGV0ZXJtaW5lZCBieSB0aGUgImxzYl9yZWxlYXNlIAkJICAg
IC1pIC1zIiByZXN1bHRzICgiVWJ1bnR1IikuIAogICAgKiAyMF9tZW10ZXN0ODYrCiAgICAgICAg
ICBvIElmIHRoZSBmaWxlIC9ib290L21lbXRlc3Q4NisuYmluIGV4aXN0cywgaXQgaXMgaW5jbHVk
ZWQgYXMgYSBtZW51IGl0ZW0uIAogICAgKiAzMF9vcy1wcm9iZXIKICAgICAgICAgIG8gU2VhcmNo
ZXMgZm9yIG90aGVyIE9TJ3MgYW5kIGluY2x1ZGVzIHRoZW0gaW4gdGhlIG1lbnUuIAogICAgKiA0
MF9jdXN0b20KICAgICAgICAgIG8gQSB0ZW1wbGF0ZSBmb3IgYWRkaW5nIGN1c3RvbSBtZW51IGVu
dHJpZXMgd2hpY2ggd2lsbCBiZSBpbnNlcnRlZCBpbnRvIGdydWIuY2ZnIHVwb24gZXhlY3V0aW9u
IG9mIHRoZSAidXBkYXRlLWdydWIiIGNvbW1hbmQuIFRoaXMgYW5kIGFueSBvdGhlciBjdXN0b20g
ZmlsZXMgbXVzdCBiZSBtYWRlIGV4ZWN1dGFibGUgdG8gYWxsb3cgaW1wb3J0YXRpb24gaW50byBn
cnViLmNmZy4gVGhlc2UgZmlsZXMgYXJlIHBsYWNlZCBpbiB0aGUgR3J1YiBtZW51IGluIHRoZSBu
dW1lcmljYWwgb3JkZXIgb2YgdGhlIGZpbGUgbmFtZS4gCgoqICogKgoKNS4gQWRkaW5nIEVudHJp
ZXMgdG8gR3J1YiAyCgpncnViLmNmZyBpcyB1cGRhdGVkIHdoZW4gdXBkYXRlLWdydWIgaXMgcnVu
LiBDaGFuZ2VzIHRvIGdydWIuY2ZnIHNob3VsZCBiZSBtYWRlIHRvIHRoZSBhcHByb3ByaWF0ZSBz
Y3JpcHQgZmlsZXMgYW5kIG5vdCB0byB0aGUgZ3J1Yi5jZmcgZmlsZSBpdHNlbGYuCgpOT1RFOiBU
aGUgZmlyc3QgY29tbWVudCBpbiBncnViLmNmZyBpcyAiRE8gTk9UIEVESVQgVEhJUyBGSUxFIi4g
VGhlIGZpbGUgaXMgcmVhZC1vbmx5IGFuZCBpcyByZXR1cm5lZCB0byB0aGlzIHN0YXR1cyBhbnl0
aW1lIHVwZGF0ZS1ncnViIGlzIHJ1bi4gCgpUaGUgZmlsZSB0aGF0IHlvdSBuZWVkIHRvIG1vZGlm
eSBpcyBpbiB0aGUgL2V0Yy9ncnViLmQgZm9sZGVyLiBJbiB5b3VyIGZhdm9yaXRlIGVkaXRvciwg
ZWRpdCA0MF9jdXN0b20gYW5kIGluY2x1ZGUgdGhlIGZvbGxvd2luZyBpbmZvcm1hdGlvbiBpbnRv
IGl0OgoKCSMhL2Jpbi9zaAoJZXhlYyB0YWlsIC1uICszICQwCgkjIFRoaXMgZmlsZSBwcm92aWRl
cyBhbiBlYXN5IHdheSB0byBhZGQgY3VzdG9tIG1lbnUgZW50cmllcy4gIFNpbXBseSB0eXBlIHRo
ZQoJIyBtZW51IGVudHJpZXMgeW91IHdhbnQgdG8gYWRkIGFmdGVyIHRoaXMgY29tbWVudC4gIEJl
IGNhcmVmdWwgbm90IHRvIGNoYW5nZQoJIyB0aGUgJ2V4ZWMgdGFpbCcgbGluZSBhYm92ZS4KCW1l
bnVlbnRyeSAiRnJlZUJTRCA3LjItUkVMRUFTRSBpMzg2IiB7CiAgICAgIAkgIHNldCByb290PSho
ZDAsMykKICAgICAgCSAgY2hhaW5sb2FkZXIgKzEKCX0KCk1ha2Ugc3VyZSB0byBsZWF2ZSBubyBz
cGFjZXMgaW4gdGhlIGRvY3VtZW50LCBhbmQgY29weWluZyB0aGUgaW5mb3JtYXRpb24gdGhlcmVh
ZnRlciAnbWVudWVudHJ5JyB2ZXJiYXRpbSB0byB0aGUgZG9jdW1lbnQuIE1ha2Ugc3VyZSB0aGF0
IHlvdXIgaW5zdGFsbGF0aW9uIG9mIEZyZWVCU0QgaXMgaW5zdGFsbGVkIG9udG8gb250byB0aGUg
cHJvcGVyIGRyaXZlIChpZiB0aGF0IGlzIGhkMCwgbWFrZSBpdCBzbyksIGFuZCB0aGF0IHRoZSBj
b3JyZWN0IHBhcnRpdGlvbiBpcyBkZXNpZ25hdGVkIChmb3VuZCBmcm9tIHRoZSBbcGFydGVyXSBj
b21tYW5kIGF0IHRoZSBiZWdpbm5pbmcgb2YgdGhpcyBkb2N1bWVudCkuCgpPbmNlIHRoaXMgaXMg
ZG9uZSwgdXBncmFkZSBHcnViMjoKCgl3b2xmQFRzdWhpcm8tTGFwdG9wOi8kIHN1ZG8gdXBkYXRl
LWdydWIKCUdlbmVyYXRpbmcgZ3J1Yi5jZmcgLi4uCglGb3VuZCBsaW51eCBpbWFnZTogL2Jvb3Qv
dm1saW51ei0yLjYuMzEtMTQtZ2VuZXJpYwoJRm91bmQgaW5pdHJkIGltYWdlOiAvYm9vdC9pbml0
cmQuaW1nLTIuNi4zMS0xNC1nZW5lcmljCglGb3VuZCBtZW10ZXN0ODYrIGltYWdlOiAvYm9vdC9t
ZW10ZXN0ODYrLmJpbgoJZG9uZQoJd29sZkBUc3VoaXJvLUxhcHRvcDovJCAKCllvdXIgbmV3IGFt
ZW5kbWVudCBtYXkgb3IgbWF5IG5vdCBiZSByZWNvZ25pemVkLiBTbyBmYXIsIHRoZSBvcy1wcm9i
ZSB0aGF0IGlzIHdpdGggR3J1YjIgZG9lcyBub3QgcmVjb2duaXplIEZyZWVCU0QgcGFydGl0aW9u
cy4gSWYgeW91IHdhbnQgdG8gY29uZmlybSB0aGF0IGl0IGlzIG5vdyBpbiB5b3VyIGdydWIuY2Zn
IGZpbGUsIGp1c3QgW2NhdF0gaXQgdG8gbWFrZSBzdXJlLCBsb29raW5nIGZvciB0aGUgJzQwX2N1
c3RvbScgYXQgdGhlIGJvdHRvbSBmb3IgaXQuIFdoZW4geW91IHJlYm9vdCwgeW91IHNob3VsZCBz
ZWUgdGhlIG9wdGlvbiBmb3IgRnJlZUJTRCBhcyB5b3UgdHlwZWQgaXQuIAoKKiAqICoKCkVuam95
IHlvdXIgbmV3IGR1YWxib290IHN5c3RlbSEgSWYgeW91IGhhdmUgYW55IHF1ZXN0aW9ucywgZmVl
bCBmcmVlIHRvIGVtYWlsIG1lIGF0IHJ5YW5qdWRhc3dvbGZAZ21haWwuY29tCgpCaWJsaW9ncmFw
aHk6CkEgUHJhY3RpY2FsIEd1aWRlIHRvIFVidW50dSBMaW51eCwgTWFyayBHLiBTb2JlbGwgcC40
MzAsIDU3NApodHRwczovL3dpa2kudWJ1bnR1LmNvbS9HcnViMiNVc2VyLWRlZmluZWQlMjBFbnRy
aWVzIAoKKiAqICoKCgoK
--000e0cd72c268ed45404774abb5e--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?f86423ba0911010106s5621508es2896c52dd89db2ab>