[tuhopuu-devel] toggle fullscreen at runtime diff

Florian Eggenberger tuhopuu-devel@blender.org
Wed, 7 May 2003 22:34:13 +0200


This is a multi-part message in MIME format.

------_=_NextPart_001_01C314D8.05BF8F7C
Content-Type: text/plain;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

finally the diff for switching fullscreen/normal at runtime.
CTRL-U saves your preferred state in the userdefs.

hotkeys:
ALT-UPARROW for fullscreen.
ALT-DOWNARROW for normal.

the commandline switches -W and -w forces blender to open
with/without borders. userdef is then ignored.

this is a diff for tuhopuu.

florian

------_=_NextPart_001_01C314D8.05BF8F7C
Content-Type: application/octet-stream;
	name="tuhopuu.diff"
Content-Transfer-Encoding: base64
Content-Description: tuhopuu.diff
Content-Disposition: attachment;
	filename="tuhopuu.diff"

SW5kZXg6IGludGVybi9naG9zdC9pbnRlcm4vR0hPU1RfU3lzdGVtV2luMzIuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KUkNTIGZpbGU6IC9jdnNyb290L3R1aG9wdXUvYmxlbmRlci9pbnRlcm4vZ2hvc3QvaW50ZXJu
L0dIT1NUX1N5c3RlbVdpbjMyLmNwcCx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS41CmRpZmYgLWMg
LXIxLjUgR0hPU1RfU3lzdGVtV2luMzIuY3BwCioqKiBpbnRlcm4vZ2hvc3QvaW50ZXJuL0dIT1NU
X1N5c3RlbVdpbjMyLmNwcAkxMyBBcHIgMjAwMyAwMzozMjoxMCAtMDAwMAkxLjUKLS0tIGludGVy
bi9naG9zdC9pbnRlcm4vR0hPU1RfU3lzdGVtV2luMzIuY3BwCTcgTWF5IDIwMDMgMjA6MjA6MzEg
LTAwMDAKKioqKioqKioqKioqKioqCioqKiAxNjYsMTc0ICoqKioKICAJaWYgKHdpbmRvdykgewog
IAkJaWYgKHdpbmRvdy0+Z2V0VmFsaWQoKSkgewogIAkJCS8vIFN0b3JlIHRoZSBwb2ludGVyIHRv
IHRoZSB3aW5kb3cKISAJCQlpZiAoc3RhdGUgIT0gR0hPU1Rfa1dpbmRvd1N0YXRlRnVsbFNjcmVl
bikgewogIAkJCQltX3dpbmRvd01hbmFnZXItPmFkZFdpbmRvdyh3aW5kb3cpOwohIAkJCX0KICAJ
CX0KICAJCWVsc2UgewogIAkJCWRlbGV0ZSB3aW5kb3c7Ci0tLSAxNjYsMTc0IC0tLS0KICAJaWYg
KHdpbmRvdykgewogIAkJaWYgKHdpbmRvdy0+Z2V0VmFsaWQoKSkgewogIAkJCS8vIFN0b3JlIHRo
ZSBwb2ludGVyIHRvIHRoZSB3aW5kb3cKISAJCQkvL2lmIChzdGF0ZSAhPSBHSE9TVF9rV2luZG93
U3RhdGVGdWxsU2NyZWVuKSB7CiAgCQkJCW1fd2luZG93TWFuYWdlci0+YWRkV2luZG93KHdpbmRv
dyk7CiEgCQkJLy99CiAgCQl9CiAgCQllbHNlIHsKICAJCQlkZWxldGUgd2luZG93OwpJbmRleDog
aW50ZXJuL2dob3N0L2ludGVybi9HSE9TVF9XaW5kb3dXaW4zMi5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1Mg
ZmlsZTogL2N2c3Jvb3QvdHVob3B1dS9ibGVuZGVyL2ludGVybi9naG9zdC9pbnRlcm4vR0hPU1Rf
V2luZG93V2luMzIuY3BwLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjEuMS4xCmRpZmYgLWMgLXIx
LjEuMS4xIEdIT1NUX1dpbmRvd1dpbjMyLmNwcAoqKiogaW50ZXJuL2dob3N0L2ludGVybi9HSE9T
VF9XaW5kb3dXaW4zMi5jcHAJMTcgT2N0IDIwMDIgMDU6Mzk6NDggLTAwMDAJMS4xLjEuMQotLS0g
aW50ZXJuL2dob3N0L2ludGVybi9HSE9TVF9XaW5kb3dXaW4zMi5jcHAJNyBNYXkgMjAwMyAyMDoy
MDozMiAtMDAwMAoqKioqKioqKioqKioqKioKKioqIDMxNCwzMjIgKioqKgogIAl3cC5sZW5ndGgg
PSBzaXplb2YoV0lORE9XUExBQ0VNRU5UKTsKICAJOjpHZXRXaW5kb3dQbGFjZW1lbnQobV9oV25k
LCAmd3ApOwogIAlzd2l0Y2ggKHN0YXRlKSB7CiEgCWNhc2UgR0hPU1Rfa1dpbmRvd1N0YXRlTWlu
aW1pemVkOiB3cC5zaG93Q21kID0gU1dfU0hPV01BWElNSVpFRDsgYnJlYWs7CiEgCWNhc2UgR0hP
U1Rfa1dpbmRvd1N0YXRlTWF4aW1pemVkOiB3cC5zaG93Q21kID0gU1dfU0hPV01JTklNSVpFRDsg
YnJlYWs7CiEgCWNhc2UgR0hPU1Rfa1dpbmRvd1N0YXRlTm9ybWFsOiBkZWZhdWx0OiB3cC5zaG93
Q21kID0gU1dfU0hPV05PUk1BTDsgYnJlYWs7CiAgCX0KICAJcmV0dXJuIDo6U2V0V2luZG93UGxh
Y2VtZW50KG1faFduZCwgJndwKSA9PSBUUlVFID8gR0hPU1Rfa1N1Y2Nlc3MgOiBHSE9TVF9rRmFp
bHVyZTsKICB9Ci0tLSAzMTQsMzM3IC0tLS0KICAJd3AubGVuZ3RoID0gc2l6ZW9mKFdJTkRPV1BM
QUNFTUVOVCk7CiAgCTo6R2V0V2luZG93UGxhY2VtZW50KG1faFduZCwgJndwKTsKICAJc3dpdGNo
IChzdGF0ZSkgewohIAljYXNlIEdIT1NUX2tXaW5kb3dTdGF0ZU1pbmltaXplZDogCiEgCQl3cC5z
aG93Q21kID0gU1dfU0hPV01JTklNSVpFRDsgCiEgCQlicmVhazsKISAJY2FzZSBHSE9TVF9rV2lu
ZG93U3RhdGVNYXhpbWl6ZWQ6IAohIAkJU2hvd1dpbmRvdyhtX2hXbmQsIFNXX0hJREUpOyAvL2Zl
LiBIQUNLIQohIAkJCQkvL1NvbHZlcyByZWRyYXcgcHJvYmxlbXMgd2hlbiBzd2l0Y2hpbmcgZnJv
bSBmdWxsc2NyZWVuIHRvIG5vcm1hbC4KISAJCQkJCiEgCQl3cC5zaG93Q21kID0gU1dfU0hPV01B
WElNSVpFRDsgCiEgCQlTZXRXaW5kb3dMb25nKG1faFduZCwgR1dMX1NUWUxFLCBXU19PVkVSTEFQ
UEVEV0lORE9XKTsKISAJCWJyZWFrOwohIAljYXNlIEdIT1NUX2tXaW5kb3dTdGF0ZUZ1bGxTY3Jl
ZW46CiEgCQl3cC5zaG93Q21kID0gU1dfU0hPV01BWElNSVpFRDsKISAJCVNldFdpbmRvd0xvbmco
bV9oV25kLCBHV0xfU1RZTEUsIFdTX1BPUFVQIHwgV1NfTUFYSU1JWkUpOwohIAkJYnJlYWs7CiEg
CWNhc2UgR0hPU1Rfa1dpbmRvd1N0YXRlTm9ybWFsOiAKISAJZGVmYXVsdDogCiEgCQl3cC5zaG93
Q21kID0gU1dfU0hPV05PUk1BTDsgCiEgCQlicmVhazsKICAJfQogIAlyZXR1cm4gOjpTZXRXaW5k
b3dQbGFjZW1lbnQobV9oV25kLCAmd3ApID09IFRSVUUgPyBHSE9TVF9rU3VjY2VzcyA6IEdIT1NU
X2tGYWlsdXJlOwogIH0KSW5kZXg6IHNvdXJjZS9ibGVuZGVyL2JsZW5rZXJuZWwvQktFX2dsb2Jh
bC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9jdnNyb290L3R1aG9wdXUvYmxlbmRlci9zb3VyY2Uv
YmxlbmRlci9ibGVua2VybmVsL0JLRV9nbG9iYWwuaCx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS41
CmRpZmYgLWMgLXIxLjUgQktFX2dsb2JhbC5oCioqKiBzb3VyY2UvYmxlbmRlci9ibGVua2VybmVs
L0JLRV9nbG9iYWwuaAk0IEFwciAyMDAzIDE1OjI4OjM0IC0wMDAwCTEuNQotLS0gc291cmNlL2Js
ZW5kZXIvYmxlbmtlcm5lbC9CS0VfZ2xvYmFsLmgJNyBNYXkgMjAwMyAyMDoyMDozNSAtMDAwMAoq
KioqKioqKioqKioqKioKKioqIDEyMSwxMjcgKioqKgogICAKICAgICAgLyogdGhpcyB2YXJpYWJs
ZSBpcyB3cml0dGVuIHRvIC8gcmVhZCBmcm9tIEZpbGVHbG9iYWwtPmZpbGVmbGFncyAqLwogICAg
ICBpbnQgZmlsZWZsYWdzOwohICAgICAKICAJLyogSmFuY28ncyBwbGF5aW5nIGdyb3VuZCAqLwog
IAlzdHJ1Y3QgYlNvdW5kTGlzdGVuZXIqIGxpc3RlbmVyOwogIAotLS0gMTIxLDEzMCAtLS0tCiAg
IAogICAgICAvKiB0aGlzIHZhcmlhYmxlIGlzIHdyaXR0ZW4gdG8gLyByZWFkIGZyb20gRmlsZUds
b2JhbC0+ZmlsZWZsYWdzICovCiAgICAgIGludCBmaWxlZmxhZ3M7CiEgICAgCiEgCS8qIHNhdmUg
dGhlIGFsbG93ZWQgd2luZG93c3RhdGUgb2YgYmxlbmRlciB3aGVuIHVzaW5nIC1XIG9yIC13ICov
CiEgCWludCB3aW5kb3dzdGF0ZTsKISAJCiAgCS8qIEphbmNvJ3MgcGxheWluZyBncm91bmQgKi8K
ICAJc3RydWN0IGJTb3VuZExpc3RlbmVyKiBsaXN0ZW5lcjsKICAKKioqKioqKioqKioqKioqCioq
KiAxNzgsMTgzICoqKioKLS0tIDE4MSwxOTEgLS0tLQogICNkZWZpbmUgR19GSUxFX0xPQ0tfQklU
ICAgICAgICAgICAgICAgICA3CiAgI2RlZmluZSBHX0ZJTEVfU0lHTl9CSVQgICAgICAgICAgICAg
ICAgIDgKICAjZGVmaW5lIEdfRklMRV9QVUJMSVNIX0JJVAkJCQk5CisgCisgLyogRy53aW5kb3dz
dGF0ZSAqLworICNkZWZpbmUgR19XSU5ET1dTVEFURV9VU0VSREVGCQkwCisgI2RlZmluZSBHX1dJ
TkRPV1NUQVRFX0JPUkRFUgkJMQorICNkZWZpbmUgR19XSU5ET1dTVEFURV9GVUxMU0NSRUVOCTIK
ICAKICAjZGVmaW5lIEdfQVVUT1BBQ0sgICAgICAgICAgICAgICAoMSA8PCBHX0FVVE9QQUNLX0JJ
VCkKICAjZGVmaW5lIEdfRklMRV9DT01QUkVTUyAgICAgICAgICAoMSA8PCBHX0ZJTEVfQ09NUFJF
U1NfQklUKQpJbmRleDogc291cmNlL2JsZW5kZXIvYmxlbmtlcm5lbC9pbnRlcm4vYmxlbmRlci5j
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KUkNTIGZpbGU6IC9jdnNyb290L3R1aG9wdXUvYmxlbmRlci9zb3VyY2UvYmxl
bmRlci9ibGVua2VybmVsL2ludGVybi9ibGVuZGVyLmMsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEu
NQpkaWZmIC1jIC1yMS41IGJsZW5kZXIuYwoqKiogc291cmNlL2JsZW5kZXIvYmxlbmtlcm5lbC9p
bnRlcm4vYmxlbmRlci5jCTEwIEZlYiAyMDAzIDE5OjA4OjI1IC0wMDAwCTEuNQotLS0gc291cmNl
L2JsZW5kZXIvYmxlbmtlcm5lbC9pbnRlcm4vYmxlbmRlci5jCTcgTWF5IDIwMDMgMjA6MjA6MzYg
LTAwMDAKKioqKioqKioqKioqKioqCioqKiAyMDUsMjEwICoqKioKLS0tIDIwNSwyMTIgLS0tLQog
IAogIAlzcHJpbnRmKHZlcnNpb25zdHIsICJ0dWhvcHV1IGJsZW5kZXIlZCIsIEcudmVyc2lvbik7
CiAgCisgCUcud2luZG93c3RhdGUgPSBHX1dJTkRPV1NUQVRFX1VTRVJERUY7CisgCQogIAljbGVh
cl93b3Jrb2IoKTsJLyogb2JqZWN0LmMgKi8KICB9CiAgCkluZGV4OiBzb3VyY2UvYmxlbmRlci9p
bmNsdWRlL0JJRl9zcGFjZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9jdnNyb290L3R1aG9wdXUv
YmxlbmRlci9zb3VyY2UvYmxlbmRlci9pbmNsdWRlL0JJRl9zcGFjZS5oLHYKcmV0cmlldmluZyBy
ZXZpc2lvbiAxLjEuMS4xCmRpZmYgLWMgLXIxLjEuMS4xIEJJRl9zcGFjZS5oCioqKiBzb3VyY2Uv
YmxlbmRlci9pbmNsdWRlL0JJRl9zcGFjZS5oCTE3IE9jdCAyMDAyIDA1OjQwOjM3IC0wMDAwCTEu
MS4xLjEKLS0tIHNvdXJjZS9ibGVuZGVyL2luY2x1ZGUvQklGX3NwYWNlLmgJNyBNYXkgMjAwMyAy
MDoyMDozNyAtMDAwMAoqKioqKioqKioqKioqKioKKioqIDg3LDkyICoqKioKLS0tIDg3LDkzIC0t
LS0KICBleHRlcm4gICAgICAgdm9pZCB0ZXN0X2J1dHNwYWNlKHZvaWQpOwogIGV4dGVybiAgICAg
ICB2b2lkIHN0YXJ0X2dhbWUodm9pZCk7CiAgCisgZXh0ZXJuCQkgdm9pZCBtYWlud2luZG93X3Rv
Z2dsZV9mdWxsc2NyZWVuKGludCBmdWxsc2NyZWVuKTsKICBleHRlcm4JCSB2b2lkIG1haW53aW5k
b3dfcmFpc2Uodm9pZCk7CiAgZXh0ZXJuCQkgdm9pZCBtYWlud2luZG93X21ha2VfYWN0aXZlKHZv
aWQpOwogIGV4dGVybgkJIHZvaWQgbWFpbndpbmRvd19jbG9zZSh2b2lkKTsKSW5kZXg6IHNvdXJj
ZS9ibGVuZGVyL2luY2x1ZGUvYmxlbmRlZi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9jdnNyb290
L3R1aG9wdXUvYmxlbmRlci9zb3VyY2UvYmxlbmRlci9pbmNsdWRlL2JsZW5kZWYuaCx2CnJldHJp
ZXZpbmcgcmV2aXNpb24gMS45CmRpZmYgLWMgLXIxLjkgYmxlbmRlZi5oCioqKiBzb3VyY2UvYmxl
bmRlci9pbmNsdWRlL2JsZW5kZWYuaAkxIE1heSAyMDAzIDIxOjU5OjM1IC0wMDAwCTEuOQotLS0g
c291cmNlL2JsZW5kZXIvaW5jbHVkZS9ibGVuZGVmLmgJNyBNYXkgMjAwMyAyMDoyMDozOCAtMDAw
MAoqKioqKioqKioqKioqKioKKioqIDE4OSwxOTQgKioqKgotLS0gMTg5LDE5NSAtLS0tCiAgI2Rl
ZmluZSBCX0RSQVdJTkZPCQkJNjIKICAjZGVmaW5lIEJfUkVEUkNVUlczRAkJNjMKICAjZGVmaW5l
IEJfRkxJUElORk9NRU5VCQk2NAorICNkZWZpbmUgQl9GTElQRlVMTFNDUkVFTgk2NQogIAogICNk
ZWZpbmUgQl9TSE9XU1BMQVNICQk3MAogICNkZWZpbmUgQl9SRVNFVEFVVE9TQVZFCQk3MQpJbmRl
eDogc291cmNlL2JsZW5kZXIvbWFrZXNkbmEvRE5BX3VzZXJkZWZfdHlwZXMuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
ClJDUyBmaWxlOiAvY3Zzcm9vdC90dWhvcHV1L2JsZW5kZXIvc291cmNlL2JsZW5kZXIvbWFrZXNk
bmEvRE5BX3VzZXJkZWZfdHlwZXMuaCx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4xMApkaWZmIC1j
IC1yMS4xMCBETkFfdXNlcmRlZl90eXBlcy5oCioqKiBzb3VyY2UvYmxlbmRlci9tYWtlc2RuYS9E
TkFfdXNlcmRlZl90eXBlcy5oCTIgTWF5IDIwMDMgMTI6MDc6MjIgLTAwMDAJMS4xMAotLS0gc291
cmNlL2JsZW5kZXIvbWFrZXNkbmEvRE5BX3VzZXJkZWZfdHlwZXMuaAk3IE1heSAyMDAzIDIwOjIw
OjM4IC0wMDAwCioqKioqKioqKioqKioqKgoqKiogODksOTQgKioqKgotLS0gODksOTUgLS0tLQog
ICNkZWZpbmUgRFJBV1ZJRVdJTkZPCTE2CiAgI2RlZmluZSBFVlRUT0NPTlNPTEUJMzIKICAjZGVm
aW5lIEZMSVBJTkZPTUVOVQk2NAorICNkZWZpbmUgRkxJUEZVTExTQ1JFRU4JMTI4CQogIAogIC8q
IHRyYW5zb3B0cyAqLwogIApJbmRleDogc291cmNlL2JsZW5kZXIvc3JjL2VkaXRzY3JlZW4uYwo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09ClJDUyBmaWxlOiAvY3Zzcm9vdC90dWhvcHV1L2JsZW5kZXIvc291cmNlL2JsZW5k
ZXIvc3JjL2VkaXRzY3JlZW4uYyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS41CmRpZmYgLWMgLXIx
LjUgZWRpdHNjcmVlbi5jCioqKiBzb3VyY2UvYmxlbmRlci9zcmMvZWRpdHNjcmVlbi5jCTMgQXBy
IDIwMDMgMjE6NDU6NTcgLTAwMDAJMS41Ci0tLSBzb3VyY2UvYmxlbmRlci9zcmMvZWRpdHNjcmVl
bi5jCTcgTWF5IDIwMDMgMjA6MjA6NDMgLTAwMDAKKioqKioqKioqKioqKioqCioqKiAxMTAyLDEx
MDcgKioqKgotLS0gMTEwMiwxMTE0IC0tLS0KICAJfQogIH0KICAKKyB2b2lkIG1haW53aW5kb3df
dG9nZ2xlX2Z1bGxzY3JlZW4oaW50IGZ1bGxzY3JlZW4peworIAlpZiAoZnVsbHNjcmVlbikgVS51
aWZsYWcgfD0gRkxJUEZVTExTQ1JFRU47CisgCWVsc2UgVS51aWZsYWcgJj0gfkZMSVBGVUxMU0NS
RUVOOworIAorIAl3aW5kb3dfdG9nZ2xlX2Z1bGxzY3JlZW4obWFpbndpbiwgZnVsbHNjcmVlbik7
CisgfQorIAogIHZvaWQgbWFpbndpbmRvd19yYWlzZSh2b2lkKSB7CiAgCXdpbmRvd19yYWlzZSht
YWlud2luKTsKICB9CioqKioqKioqKioqKioqKgoqKiogMTY2NiwxNjcyICoqKioKICAJc2MtPnNj
ZW5lPSBHLnNjZW5lOwogIAkKICAJaWYgKCFtYWlud2luKSB7CiEgCQltYWlud2luPSB3aW5kb3df
b3BlbigiQmxlbmRlciIsIHNjLT5zdGFydHgsIHNjLT5zdGFydHksIHNjLT5zaXpleCwgc2MtPnNp
emV5LCBzdGFydF9tYXhpbWl6ZWQpOwogIAkJaWYgKCFtYWlud2luKSB7CiAgCQkJcHJpbnRmKCJF
UlJPUjogVW5hYmxlIHRvIG9wZW4gQmxlbmRlciB3aW5kb3dcbiIpOwogIAkJCWV4aXQoMSk7Ci0t
LSAxNjczLDE2ODMgLS0tLQogIAlzYy0+c2NlbmU9IEcuc2NlbmU7CiAgCQogIAlpZiAoIW1haW53
aW4pIHsKISAJCWlmIChHLndpbmRvd3N0YXRlID09IEdfV0lORE9XU1RBVEVfRlVMTFNDUkVFTikK
ISAJCQltYWlud2luPSB3aW5kb3dfb3BlbigiQmxlbmRlciIsIHNjLT5zdGFydHgsIHNjLT5zdGFy
dHksIHNjLT5zaXpleCwgc2MtPnNpemV5LCBHX1dJTkRPV1NUQVRFX0ZVTExTQ1JFRU4pOwohIAkJ
ZWxzZQohIAkJCW1haW53aW49IHdpbmRvd19vcGVuKCJCbGVuZGVyIiwgc2MtPnN0YXJ0eCwgc2Mt
PnN0YXJ0eSwgc2MtPnNpemV4LCBzYy0+c2l6ZXksIHN0YXJ0X21heGltaXplZCk7CiEgCQkKICAJ
CWlmICghbWFpbndpbikgewogIAkJCXByaW50ZigiRVJST1I6IFVuYWJsZSB0byBvcGVuIEJsZW5k
ZXIgd2luZG93XG4iKTsKICAJCQlleGl0KDEpOwpJbmRleDogc291cmNlL2JsZW5kZXIvc3JjL2do
b3N0d2lubGF5LmMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2N2c3Jvb3QvdHVob3B1dS9ibGVuZGVy
L3NvdXJjZS9ibGVuZGVyL3NyYy9naG9zdHdpbmxheS5jLHYKcmV0cmlldmluZyByZXZpc2lvbiAx
LjkKZGlmZiAtYyAtcjEuOSBnaG9zdHdpbmxheS5jCioqKiBzb3VyY2UvYmxlbmRlci9zcmMvZ2hv
c3R3aW5sYXkuYwk4IEZlYiAyMDAzIDE1OjUzOjI0IC0wMDAwCTEuOQotLS0gc291cmNlL2JsZW5k
ZXIvc3JjL2dob3N0d2lubGF5LmMJNyBNYXkgMjAwMyAyMDoyMDo0NCAtMDAwMAoqKioqKioqKioq
KioqKioKKioqIDIzNCwyNDAgKioqKgogICNpZiAhZGVmaW5lZChXSU4zMikgJiYgIWRlZmluZWQo
X19BUFBMRV9fKQogIAlpbml0YWxfc3RhdGU9IHN0YXJ0X21heGltaXplZD9HSE9TVF9rV2luZG93
U3RhdGVGdWxsU2NyZWVuOkdIT1NUX2tXaW5kb3dTdGF0ZU5vcm1hbDsKICAjZWxzZQohIAlpbml0
YWxfc3RhdGU9IHN0YXJ0X21heGltaXplZD9HSE9TVF9rV2luZG93U3RhdGVNYXhpbWl6ZWQ6R0hP
U1Rfa1dpbmRvd1N0YXRlTm9ybWFsOwogICNlbmRpZgogIAlnaG9zdHdpbj0gR0hPU1RfQ3JlYXRl
V2luZG93KGdfc3lzdGVtLCAKICAJCQkJCQkJCXRpdGxlLCAKLS0tIDIzNCwyNDMgLS0tLQogICNp
ZiAhZGVmaW5lZChXSU4zMikgJiYgIWRlZmluZWQoX19BUFBMRV9fKQogIAlpbml0YWxfc3RhdGU9
IHN0YXJ0X21heGltaXplZD9HSE9TVF9rV2luZG93U3RhdGVGdWxsU2NyZWVuOkdIT1NUX2tXaW5k
b3dTdGF0ZU5vcm1hbDsKICAjZWxzZQohIAlpZiAoc3RhcnRfbWF4aW1pemVkID09IEdfV0lORE9X
U1RBVEVfRlVMTFNDUkVFTikKISAJCWluaXRhbF9zdGF0ZT0gR0hPU1Rfa1dpbmRvd1N0YXRlRnVs
bFNjcmVlbjsKISAJZWxzZQohIAkJaW5pdGFsX3N0YXRlPSBzdGFydF9tYXhpbWl6ZWQ/R0hPU1Rf
a1dpbmRvd1N0YXRlTWF4aW1pemVkOkdIT1NUX2tXaW5kb3dTdGF0ZU5vcm1hbDsKICAjZW5kaWYK
ICAJZ2hvc3R3aW49IEdIT1NUX0NyZWF0ZVdpbmRvdyhnX3N5c3RlbSwgCiAgCQkJCQkJCQl0aXRs
ZSwgCioqKioqKioqKioqKioqKgoqKiogNTY1LDU3MCAqKioqCi0tLSA1NjgsNTgwIC0tLS0KICB9
CiAgdm9pZCB3aW5kb3dfcmFpc2UoV2luZG93ICp3aW4pIHsKICAJR0hPU1RfU2V0V2luZG93T3Jk
ZXIod2luLT5naG9zdHdpbiwgR0hPU1Rfa1dpbmRvd09yZGVyVG9wKTsKKyB9CisgCisgdm9pZCB3
aW5kb3dfdG9nZ2xlX2Z1bGxzY3JlZW4oV2luZG93ICp3aW4sIGludCBmdWxsc2NyZWVuKSB7Cisg
CWlmKGZ1bGxzY3JlZW4pCisgCQlHSE9TVF9TZXRXaW5kb3dTdGF0ZSh3aW4tPmdob3N0d2luLCBH
SE9TVF9rV2luZG93U3RhdGVGdWxsU2NyZWVuKTsKKyAJZWxzZQorIAkJR0hPU1RfU2V0V2luZG93
U3RhdGUod2luLT5naG9zdHdpbiwgR0hPU1Rfa1dpbmRvd1N0YXRlTWF4aW1pemVkKTsKICB9CiAg
CiAgdm9pZCB3aW5kb3dfd2FycF9wb2ludGVyKFdpbmRvdyAqd2luLCBpbnQgeCwgaW50IHkpIHsK
SW5kZXg6IHNvdXJjZS9ibGVuZGVyL3NyYy9oZWFkZXJidXR0b25zLmMKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1Mg
ZmlsZTogL2N2c3Jvb3QvdHVob3B1dS9ibGVuZGVyL3NvdXJjZS9ibGVuZGVyL3NyYy9oZWFkZXJi
dXR0b25zLmMsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuNDIKZGlmZiAtYyAtcjEuNDIgaGVhZGVy
YnV0dG9ucy5jCioqKiBzb3VyY2UvYmxlbmRlci9zcmMvaGVhZGVyYnV0dG9ucy5jCTYgTWF5IDIw
MDMgMTE6MzI6NDggLTAwMDAJMS40MgotLS0gc291cmNlL2JsZW5kZXIvc3JjL2hlYWRlcmJ1dHRv
bnMuYwk3IE1heSAyMDAzIDIwOjIwOjU2IC0wMDAwCioqKioqKioqKioqKioqKgoqKiogMTQxOCwx
NDI1ICoqKioKICAJCXNjcmFyZWFfcXVldWVfaGVhZHJlZHJhdyhjdXJhcmVhKTsKICAJCWJyZWFr
OwogIAohIAkvKiBGaWxlc2VsZWN0IHdpbmRvd3MgZm9yIHVzZXIgcHJlZmVyZW5jZXMgZmlsZSBw
YXRocyAqLwogIAogIAljYXNlIEJfRk9OVERJUkZJTEVTRUw6IAkvKiBpcyBidXR0b24gdWl0IHNw
YWNlLmMgICppbmZvKiAqLwogIAkJaWYoY3VyYXJlYS0+c3BhY2V0eXBlPT1TUEFDRV9JTkZPKSB7
CiAgCQkJc2E9IGNsb3Nlc3RfYmlnZ2VyX2FyZWEoKTsKLS0tIDE0MTgsMTQyOCAtLS0tCiAgCQlz
Y3JhcmVhX3F1ZXVlX2hlYWRyZWRyYXcoY3VyYXJlYSk7CiAgCQlicmVhazsKICAKISAJY2FzZSBC
X0ZMSVBGVUxMU0NSRUVOOgohIAkJbWFpbndpbmRvd190b2dnbGVfZnVsbHNjcmVlbigoVS51aWZs
YWcgJiBGTElQRlVMTFNDUkVFTikpOwohIAkJYnJlYWs7CiAgCisgCS8qIEZpbGVzZWxlY3Qgd2lu
ZG93cyBmb3IgdXNlciBwcmVmZXJlbmNlcyBmaWxlIHBhdGhzICovCiAgCWNhc2UgQl9GT05URElS
RklMRVNFTDogCS8qIGlzIGJ1dHRvbiB1aXQgc3BhY2UuYyAgKmluZm8qICovCiAgCQlpZihjdXJh
cmVhLT5zcGFjZXR5cGU9PVNQQUNFX0lORk8pIHsKICAJCQlzYT0gY2xvc2VzdF9iaWdnZXJfYXJl
YSgpOwoqKioqKioqKioqKioqKioKKioqIDM1ODQsMzU4OSAqKioqCi0tLSAzNTg3LDM2MDQgLS0t
LQogIAlibG9jaz0gdWlOZXdCbG9jaygmY3VyYXJlYS0+dWlibG9ja3MsIG5hYW0sIFVJX0VNQk9T
U00sIFVJX0hFTFYsIGN1cmFyZWEtPmhlYWR3aW4pOwogIAl1aUJsb2NrU2V0Q29sKGJsb2NrLCBC
VVRHUkVZKTsKICAKKyAJaWYoVS51aWZsYWcgJiBGTElQRlVMTFNDUkVFTikgeworIAkJdWlEZWZJ
Y29uQnV0UyhibG9jaywgVE9HfEJJVHw3LCBCX0ZMSVBGVUxMU0NSRUVOLCBJQ09OX1NQTElUU0NS
RUVOLAorIAkJCQl4Y28sMixYSUMsWUlDLTIsCisgCQkJCSYoVS51aWZsYWcpLCAwLCAwLCAwLCAw
LCAiVG9nZ2xlIEJsZW5kZXIgZnVsbHNjcmVlbiIpOy8qIGRpciAgICovCisgCX0gZWxzZSB7Cisg
CQl1aURlZkljb25CdXRTKGJsb2NrLCBUT0d8QklUfDcsIEJfRkxJUEZVTExTQ1JFRU4sIElDT05f
RlVMTFNDUkVFTiwKKyAJCQkJeGNvLDIsWElDLFlJQy0yLAorIAkJCQkmKFUudWlmbGFnKSwgMCwg
MCwgMCwgMCwgIlRvZ2dsZSBCbGVuZGVyIGZ1bGxzY3JlZW4iKTsvKiBkaXIgICAqLworIAl9Cisg
CisgCXhjbys9WElDOworIAkKICAJaWYoVS51aWZsYWcgJiBGTElQSU5GT01FTlUpIHsKICAJCXVp
RGVmSWNvbkJ1dFMoYmxvY2ssIFRPR3xCSVR8NiwgQl9GTElQSU5GT01FTlUsIElDT05fUklHSFRB
UlJPVywKICAJCQkJeGNvLDIsWElDLFlJQy0yLApJbmRleDogc291cmNlL2JsZW5kZXIvc3JjL3Rv
ZXRzLmMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2N2c3Jvb3QvdHVob3B1dS9ibGVuZGVyL3NvdXJj
ZS9ibGVuZGVyL3NyYy90b2V0cy5jLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjEyCmRpZmYgLWMg
LXIxLjEyIHRvZXRzLmMKKioqIHNvdXJjZS9ibGVuZGVyL3NyYy90b2V0cy5jCTMgTWFyIDIwMDMg
MjE6MzI6NDEgLTAwMDAJMS4xMgotLS0gc291cmNlL2JsZW5kZXIvc3JjL3RvZXRzLmMJNyBNYXkg
MjAwMyAyMDoyMDo1OCAtMDAwMAoqKioqKioqKioqKioqKioKKioqIDY2Myw2NjkgKioqKgogIAlj
YXNlIExFRlRBUlJPV0tFWToKICAJY2FzZSBET1dOQVJST1dLRVk6CiAgCQlpZih0ZXh0ZWRpdGlu
Zz09MCAmJiB0ZXh0c3BhY2U9PTApIHsKISAJCQlpZihldmVudD09RE9XTkFSUk9XS0VZKSBDRlJB
LT0gMTA7CiAgCQkJZWxzZSBDRlJBLS07CiAgCQkJCiAgCQkJaWYoRy5xdWFsICYgTFJfU0hJRlRL
RVkpIENGUkE9IFNGUkE7Ci0tLSA2NjMsNjcyIC0tLS0KICAJY2FzZSBMRUZUQVJST1dLRVk6CiAg
CWNhc2UgRE9XTkFSUk9XS0VZOgogIAkJaWYodGV4dGVkaXRpbmc9PTAgJiYgdGV4dHNwYWNlPT0w
KSB7CiEgCQkJaWYoZXZlbnQ9PURPV05BUlJPV0tFWSl7CiEgCQkJCWlmIChHLnF1YWwgJiBMUl9B
TFRLRVkpIG1haW53aW5kb3dfdG9nZ2xlX2Z1bGxzY3JlZW4oMCk7CiEgCQkJCWVsc2UgQ0ZSQS09
IDEwOwohIAkJCX0KICAJCQllbHNlIENGUkEtLTsKICAJCQkKICAJCQlpZihHLnF1YWwgJiBMUl9T
SElGVEtFWSkgQ0ZSQT0gU0ZSQTsKKioqKioqKioqKioqKioqCioqKiA2NzcsNjgzICoqKioKICAJ
Y2FzZSBSSUdIVEFSUk9XS0VZOgogIAljYXNlIFVQQVJST1dLRVk6CiAgCQlpZih0ZXh0ZWRpdGlu
Zz09MCAmJiB0ZXh0c3BhY2U9PTApIHsKISAJCQlpZihldmVudD09VVBBUlJPV0tFWSkgQ0ZSQSs9
IDEwOwogIAkJCWVsc2UgQ0ZSQSsrOwogIAkJCWlmKEcucXVhbCAmIExSX1NISUZUS0VZKSBDRlJB
PSBFRlJBOwogIAkJCQotLS0gNjgwLDY4OSAtLS0tCiAgCWNhc2UgUklHSFRBUlJPV0tFWToKICAJ
Y2FzZSBVUEFSUk9XS0VZOgogIAkJaWYodGV4dGVkaXRpbmc9PTAgJiYgdGV4dHNwYWNlPT0wKSB7
CiEgCQkJaWYoZXZlbnQ9PVVQQVJST1dLRVkpeyAKISAJCQkJaWYoRy5xdWFsICYgTFJfQUxUS0VZ
KSBtYWlud2luZG93X3RvZ2dsZV9mdWxsc2NyZWVuKDEpOwohIAkJCQllbHNlIENGUkErPSAxMDsK
ISAJCQl9CiAgCQkJZWxzZSBDRlJBKys7CiAgCQkJaWYoRy5xdWFsICYgTFJfU0hJRlRLRVkpIENG
UkE9IEVGUkE7CiAgCQkJCkluZGV4OiBzb3VyY2UvYmxlbmRlci9zcmMvdXNpYmxlbmRlci5jCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KUkNTIGZpbGU6IC9jdnNyb290L3R1aG9wdXUvYmxlbmRlci9zb3VyY2UvYmxlbmRl
ci9zcmMvdXNpYmxlbmRlci5jLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjIwCmRpZmYgLWMgLXIx
LjIwIHVzaWJsZW5kZXIuYwoqKiogc291cmNlL2JsZW5kZXIvc3JjL3VzaWJsZW5kZXIuYwkyIE1h
eSAyMDAzIDExOjU5OjA1IC0wMDAwCTEuMjAKLS0tIHNvdXJjZS9ibGVuZGVyL3NyYy91c2libGVu
ZGVyLmMJNyBNYXkgMjAwMyAyMDoyMDo1OCAtMDAwMAoqKioqKioqKioqKioqKioKKioqIDE4Miwx
ODggKioqKgogIAogIAkJLyogIGRpc2FibGUgYXV0b3BsYXkgaW4gLkIuYmxlbmQuLi4gKi8KICAJ
CUcuZmlsZWZsYWdzICY9IH5HX0ZJTEVfQVVUT1BMQVk7CiEgCQkJCiAgCQkvKiBob2xvYnV0dG9u
ICovCiAgCQlpZiAoc3RyY21wKEcuc2NlbmUtPnIuZnR5cGUsICIqQCYjIik9PTApIEcuc3BlY2lh
bDE9IEdfSE9MTzsKICAJCQotLS0gMTgyLDIwMCAtLS0tCiAgCiAgCQkvKiAgZGlzYWJsZSBhdXRv
cGxheSBpbiAuQi5ibGVuZC4uLiAqLwogIAkJRy5maWxlZmxhZ3MgJj0gfkdfRklMRV9BVVRPUExB
WTsKISAKISAJCS8qIGNob29zZSB3aW5kb3cgc3RhcnRtb2RlICovCiEgCQlzd2l0Y2ggKEcud2lu
ZG93c3RhdGUpewohIAkJCWNhc2UgR19XSU5ET1dTVEFURV9VU0VSREVGOiAvKiB1c2UgdGhlIHVz
ZXJzZXR0aW5nICovCiEgCQkJCWJyZWFrOwohIAkJCWNhc2UgR19XSU5ET1dTVEFURV9GVUxMU0NS
RUVOOiAvKiBmb3JjZSBmdWxsc2NyZWVuICovCiEgCQkJCVUudWlmbGFnIHw9IEZMSVBGVUxMU0NS
RUVOOwohIAkJCQlicmVhazsKISAJCQljYXNlIEdfV0lORE9XU1RBVEVfQk9SREVSOiAvKiBmb3Jj
ZSB3aXRoIGJvcmRlcnMgKi8KISAJCQkJVS51aWZsYWcgJj0gfkZMSVBGVUxMU0NSRUVOOwohIAkJ
fQohIAkJbWFpbndpbmRvd190b2dnbGVfZnVsbHNjcmVlbiAoKFUudWlmbGFnICYgRkxJUEZVTExT
Q1JFRU4pKTsKISAJCQogIAkJLyogaG9sb2J1dHRvbiAqLwogIAkJaWYgKHN0cmNtcChHLnNjZW5l
LT5yLmZ0eXBlLCAiKkAmIyIpPT0wKSBHLnNwZWNpYWwxPSBHX0hPTE87CiAgCQkKSW5kZXg6IHNv
dXJjZS9ibGVuZGVyL3NyYy93aW5sYXkuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvY3Zzcm9vdC90
dWhvcHV1L2JsZW5kZXIvc291cmNlL2JsZW5kZXIvc3JjL3dpbmxheS5oLHYKcmV0cmlldmluZyBy
ZXZpc2lvbiAxLjEuMS4xCmRpZmYgLWMgLXIxLjEuMS4xIHdpbmxheS5oCioqKiBzb3VyY2UvYmxl
bmRlci9zcmMvd2lubGF5LmgJMTcgT2N0IDIwMDIgMDU6NDA6NDIgLTAwMDAJMS4xLjEuMQotLS0g
c291cmNlL2JsZW5kZXIvc3JjL3dpbmxheS5oCTcgTWF5IDIwMDMgMjA6MjA6NTkgLTAwMDAKKioq
KioqKioqKioqKioqCioqKiA0Myw0OCAqKioqCi0tLSA0Myw1MCAtLS0tCiAgdm9pZAl3aW5kb3df
bWFrZV9hY3RpdmUJKFdpbmRvdyAqd2luKTsKICB2b2lkCXdpbmRvd19zd2FwX2J1ZmZlcnMJKFdp
bmRvdyAqd2luKTsKICAKKyB2b2lkIAl3aW5kb3dfdG9nZ2xlX2Z1bGxzY3JlZW4oV2luZG93ICp3
aW4sIGludCBmdWxsc2NyZWVuKTsKKyAKICB2b2lkCXdpbmRvd19yYWlzZQkJKFdpbmRvdyAqd2lu
KTsKICB2b2lkCXdpbmRvd19sb3dlcgkJKFdpbmRvdyAqd2luKTsKICAKSW5kZXg6IHNvdXJjZS9j
cmVhdG9yL2NyZWF0b3IuYwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvY3Zzcm9vdC90dWhvcHV1L2Js
ZW5kZXIvc291cmNlL2NyZWF0b3IvY3JlYXRvci5jLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjE3
CmRpZmYgLWMgLXIxLjE3IGNyZWF0b3IuYwoqKiogc291cmNlL2NyZWF0b3IvY3JlYXRvci5jCTIg
TWF5IDIwMDMgMTE6NTk6MDkgLTAwMDAJMS4xNwotLS0gc291cmNlL2NyZWF0b3IvY3JlYXRvci5j
CTcgTWF5IDIwMDMgMjA6MjE6MDAgLTAwMDAKKioqKioqKioqKioqKioqCioqKiAzNDIsMzUwICoq
KioKLS0tIDM0MiwzNTIgLS0tLQogIAkJCQkJCSAqLyAKICAJCQkJCXdpbmxheV9nZXRfc2NyZWVu
c2l6ZSgmc2l6eCwgJnNpenkpOwogIAkJCQkJc2V0cHJlZnNpemUoMCwgMCwgc2l6eCwgc2l6eSk7
CisgCQkJCQlHLndpbmRvd3N0YXRlID0gR19XSU5ET1dTVEFURV9CT1JERVI7CiAgCQkJCQlicmVh
azsKICAJCQkJY2FzZSAnVyc6CiAgCQkJCQkJLyogWFhYLCBmaXhtZSB6ciwgYm9yZGVybGVzcyBv
biB3aW4zMiAqLworIAkJCQkJRy53aW5kb3dzdGF0ZSA9IEdfV0lORE9XU1RBVEVfRlVMTFNDUkVF
TjsKICAJCQkJCWJyZWFrOwogIAkJCQljYXNlICduJzoKICAJCQkJY2FzZSAnTic6Cg==

------_=_NextPart_001_01C314D8.05BF8F7C--