avoiding crashes when trying to call a c++ callback from octave
GuidoRamon via Help-octave <[email protected]> Thu, 08 Feb 2024 12:17:14 +0000
| Newsgroups | gmane.comp.gnu.octave.general |
|---|---|
| Message-ID | <PQJNZ3cPMqWdMnmDbc0XPky8osL_qUQbkCSk85d4uOc1RMeAoV2DO3Pb7055Na1EqUkPjHnroqTxEjuDjCLYRzuhtN9ZvYohWVOX0jv6ND8=@proton.me> |
This is a multi-part message in MIME format. --===============8759722490904467249== Content-Type: multipart/alternative; boundary="b1_mFIIC5akUAeuA6Xqn3frpzMhsKpwPvO4ahEoepCmM8M" This is a multi-part message in MIME format. --b1_mFIIC5akUAeuA6Xqn3frpzMhsKpwPvO4ahEoepCmM8M Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 SGVsbG8gZXZlcnlvbmUsCgpJIGhhdmUgYW4gaXNzdWUgd2l0aCBkaXNwYXRjaGluZyBjbGFzc2Vz IGluIEdOVSBPY3RhdmUgOC40IG9uIFdpbmRvd3MgMTAuIEkgaW5zdGFsbGVkIGl0IHZpYSB0aGUg eDY0IGV4ZSBpbnN0YWxsZXIuCgpJIGFtIHRyeWluZyB0byBjYWxsIGEgYysrIGZ1bmN0aW9uIGlu IEdOVSBvY3RhdmUsIHNvIEkgdXNlIGEgZGlzcGF0Y2hlciAqLmNjIGZpbGUgYXMgZm9sbG93cywg d2hpY2ggSSB0aGVuIHN1Y2Nlc3NmdWxseSBjb21waWxlIGludG8gYW4gb2N0LWZpbGU6Cgpta29j dGZpbGUgbXlfZGlzcGF0Y2hlcl9mdW5jdGlvbi5jYyAtYwpta29jdGZpbGUgbXlfZGlzcGF0Y2hl cl9mdW5jdGlvbi5vIG15X2NwcF9jbGFzc19waW1wbC5vIC1scXVhZG1hdGgKCiNpbmNsdWRlPG9j dGF2ZS9vY3QuaD4KI2luY2x1ZGU8b2N0YXZlL2ROREFycmF5Lmg+CgovKiBib2R5IGFuZCBpbmxp bmUtbWVtYmVycyBvZiBNeV9jcHBfY2xhc3MgKi8KCkRFRlVOX0RMRChteV9kaXNwYXRjaGVyX2Z1 bmN0aW9uLCBhcmdzLCBuYXJnb3V0LCAiRGVidWdnaW5nX215X2Rpc3BhdGNoZXJfZnVuY3Rpb25f c3VpdGFibGVfbmFtZSIpewovLwovLyBmbGFnID0gTXlfY3BwX2NsYXNzLm15X2NwcF9mdW5jdGlv bigpOwovLwovLyArKysrIHBvc3Nlc3MgYW4gaW5zdGFuY2UKc3RhdGljIE15X2NwcF9jbGFzcyBt eV9jbGFzc19pbnN0YW5jZTsgLy8gSSBhbHNvIHRyaWVkIHdpdGhvdXQgInN0YXRpYyIsIGkuZS4g cmUtaW5zdGFudGlhdGluZyBhdCBlYWNoIGNhbGwuIFNhbWUgYmVoYXZpb3VyIChpLmUuIG9jdGF2 ZSBjbG9zZXMpLgovLwovLyArKysrIGFjcXVpcmUgYXJyYXlzIE5EQXJyYXkgYXJyYXlfeCA9IGFy Z3MoMCkuYXJyYXlfdmFsdWUoKTsKTkRBcnJheSBhcnJheV95ID0gYXJncygxKS5hcnJheV92YWx1 ZSgpOwovLwovLyArKysrIGxvYWQgaW5wdXRzIGludG8gY2xhc3MKZm9yKGludCBpPTA7aTwxMDsr K2kpeyBteV9jbGFzc19pbnN0YW5jZS54W2ldID0gYXJyYXlfeChpKTsgfQovLwovLyArKysrIGNv bXB1dGUKbXlfY2xhc3NfaW5zdGFuY2UuY29tcHV0ZSgpOwovLwovLyArKysrIGV4cG9ydCBvdXRw dXRzCmZvcihpbnQgaT0wO2k8MjA7KytpKXsgYXJyYXlfeShpKSA9IG15X2NsYXNzX2luc3RhbmNl LnlbaV07IH0KLy8KLy8gKysrKyBwYWNrIGFuZCByZXR1cm4gcmVzdWx0CgpvY3RhdmVfdmFsdWVf bGlzdCByZXR2YWw7Ci8vCgpyZXR2YWwuYXBwZW5kKCBvY3RhdmVfdmFsdWUoYXJyYXlfeSApICk7 CgpyZXR1cm4gcmV0dmFsOwp9CgpUaGUgT2N0YXZlIGNvZGUsIHdoaWNoIGNhbGxzIHRoZSBvY3Qg ZmlsZSwgaXM6Cgphc3NlcnQoIHNpemUoeCk9PVsxMCwxXSAmJiBzaXplKHgpPT1bMjAsMV0gKTsg JSB0aGlzIHBhc3NlcyBzdWNjZXNzZnVsbHkKeSA9IG15X2Rpc3BhdGNoZXJfZnVuY3Rpb24oeCx5 KTsKClRoZSBjb25zdHJ1Y3RvciBvZiBNeV9jcHBfY2xhc3MgcmVsaWVzIG9uIGEgc2luZ2xldG9u LCB3aGljaCBoYXMgYmVlbiBpbXBsZW1lbnRlZCB3aXRoIGEgbm9uLW1lbWJlciBmdW5jdGlvbiB0 aGF0IHJldHVybnMgYSBzdGF0aWMgaW5zdGFuY2Ugb2YgdGhlIFNpbmdsZXRvbi4KCkV2ZXJ5dGlt ZSBJIGNhbGwgdGhlIGRpc3BhdGNoZXIgZnJvbSBPY3RhdmUgR1VJLCBPY3RhdmUgaW1tZWRpYXRl bHkgY2xvc2VzIGFsbCB3aW5kb3dzIG9mIHRoZSBzb2Z0d2FyZSBhbmQgZW5kcy4gKE1heWJlIGEg c3ViZ3JvdXAgb2YgdXMgY2FuIGFncmVlIHRoYXQgZWl0aGVyIG15IGNsYXNzIGxlYWtzIG9yIE9j dGF2ZSBlbmNvdW50ZXJzIGEgYnVnLiBJIGhhdmUgZGVidWdnZWQgbXkgY2xhc3MuIEkgd291bGQg YXBwcmVjaWF0ZSBhdm9pZGluZyBhIGRpc2N1c3Npb24gaW50byB0aGF0IGFyZWEuKQoKSSBkbyBu b3Qga25vdyBvciB3YW50IHRvIGtub3cgb3IgZGlzY3VzcyB3aGV0aGVyIHRoaXMgaXMgYSBidWcu CgpJIGFtIGludGVyZXN0ZWQgaW4gYWNxdWlyaW5nIGEgbWVhbnMgdG8gZG9pbmcgd2hhdCB0aGUg YWJvdmUgY29kZSB3b3VsZCBiZSBleHBlY3RlZCB0byBkbyB1bmRlciByZWFzb25hYmxlIG5haXZl IGFzc3VtcHRpb25zICh3aGljaCBhcmU6IEkgaGF2ZSBhIGNsYXNzLiBJIGNhbiBjb25zdHJ1Y3Qg YW5kIGRlc3RydWN0IGluc3RhbmNlcyBvZiBpdCBpbiBjKysgbXVsdGlwbGUgdGltZXMgd2l0aG91 dCBtZW1vcnkgbGVha3MuIEVhY2ggaW5zdGFuY2UgaGFzIGJ1ZmZlcnMgeCx5IGFuZCBhIG1lbWJl ciBmdW5jdGlvbiBjb21wdXRlIHRoYXQgbWFuaXB1bGF0ZXMgeS4gSSB3YW50IHRvIG9idGFpbiB5 IGluIE9jdGF2ZSBmcm9tIGdpdmVuIHggaW4gT2N0YXZlKS4KCkN1cnJlbnRseSwgbXkgd29yay1h cm91bmQgaXMgdG8gd3JpdGUgYSB0ZXh0IGZpbGUgaW4gb2N0YXZlLCB0aGVuIG1ha2UgYSBzeXN0 ZW0gY2FsbCBmcm9tIG9jdGF2ZSB0byBteSBjcHAgZXhlLCB0aGlzIG1hbmlwdWxhdGVzIHRoZSB0 ZXh0ZmlsZSwgYW5kIG9jdGF2ZSByZWFkcyB0aGUgcmVzdWx0cy4gVGhlIGlzc3VlIGlzIHdpdGgg c3BlZWQgb2YgZXhlY3V0aW9uLCBzaW5jZSB0aGUgd3JpdGUgdG8gaGFyZGRyaXZlIGludHJvZHVj ZXMgZW5vdXJtb3VzIGxhdGVuY3ksIHBhcnRpY3VsYXJseSBzaW5jZSBJIG5lZWQgfjEwMDAwIGV2 YWxhdGlvbnMgcGVyIHVzZSBjYXNlLgoKVGhhbmsgeW91IGZvciBhbnkgaGVscC4KCktpbmQgcmVn YXJkcywKR3VpZG8= --b1_mFIIC5akUAeuA6Xqn3frpzMhsKpwPvO4ahEoepCmM8M Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: base64 PGRpdiBzdHlsZT0iZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmOyBmb250LXNpemU6IDE0 cHg7IGNvbG9yOiByZ2IoMCwgMCwgMCk7IGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDI1NSwg MjU1KTsiPkhlbGxvIGV2ZXJ5b25lLDwvZGl2PjxkaXYgc3R5bGU9ImZvbnQtZmFtaWx5OiBBcmlh bCwgc2Fucy1zZXJpZjsgZm9udC1zaXplOiAxNHB4OyBjb2xvcjogcmdiKDAsIDAsIDApOyBiYWNr Z3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSk7Ij48YnI+PC9kaXY+PGRpdiBzdHlsZT0i Zm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmOyBmb250LXNpemU6IDE0cHg7IGNvbG9yOiBy Z2IoMCwgMCwgMCk7IGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDI1NSwgMjU1KTsiPkkgaGF2 ZSBhbiBpc3N1ZSB3aXRoIGRpc3BhdGNoaW5nIGNsYXNzZXMgaW4gR05VIE9jdGF2ZSA4LjQgb24g V2luZG93cyAxMC4gSSBpbnN0YWxsZWQgaXQgdmlhIHRoZSB4NjQgZXhlIGluc3RhbGxlci48YnI+ PC9kaXY+PGRpdiBzdHlsZT0iZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmOyBmb250LXNp emU6IDE0cHg7IGNvbG9yOiByZ2IoMCwgMCwgMCk7IGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUs IDI1NSwgMjU1KTsiPjxicj48L2Rpdj48ZGl2IHN0eWxlPSJmb250LWZhbWlseTogQXJpYWwsIHNh bnMtc2VyaWY7IGZvbnQtc2l6ZTogMTRweDsgY29sb3I6IHJnYigwLCAwLCAwKTsgYmFja2dyb3Vu ZC1jb2xvcjogcmdiKDI1NSwgMjU1LCAyNTUpOyI+SSBhbSB0cnlpbmcgdG8gY2FsbCBhIGMrKyBm dW5jdGlvbiBpbiBHTlUgb2N0YXZlLCBzbyBJIHVzZSBhIGRpc3BhdGNoZXIgKi5jYyBmaWxlIGFz IGZvbGxvd3MsIHdoaWNoIEkgdGhlbiBzdWNjZXNzZnVsbHkgY29tcGlsZSBpbnRvIGFuIG9jdC1m aWxlOjxicj48YnI+PHNwYW4+bWtvY3RmaWxlIDxzcGFuPm15X2Rpc3BhdGNoZXJfZnVuY3Rpb248 L3NwYW4+LmNjIC1jPC9zcGFuPjxicj48c3Bhbj5ta29jdGZpbGUgPHNwYW4+PHNwYW4+bXlfZGlz cGF0Y2hlcl9mdW5jdGlvbjwvc3Bhbj48L3NwYW4+Lm8gbXlfY3BwX2NsYXNzX3BpbXBsLm8gLWxx dWFkbWF0aDwvc3Bhbj48YnI+PGJyPjwvZGl2PjxkaXYgc3R5bGU9ImZvbnQtZmFtaWx5OiBBcmlh bCwgc2Fucy1zZXJpZjsgZm9udC1zaXplOiAxNHB4OyBjb2xvcjogcmdiKDAsIDAsIDApOyBiYWNr Z3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSk7Ij48c3Bhbj4jaW5jbHVkZSZsdDtvY3Rh dmUvb2N0LmgmZ3Q7PC9zcGFuPjxicj48c3Bhbj4jaW5jbHVkZSZsdDtvY3RhdmUvZE5EQXJyYXku aCZndDs8L3NwYW4+PC9kaXY+PGRpdiBzdHlsZT0iZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNl cmlmOyBmb250LXNpemU6IDE0cHg7IGNvbG9yOiByZ2IoMCwgMCwgMCk7IGJhY2tncm91bmQtY29s b3I6IHJnYigyNTUsIDI1NSwgMjU1KTsiPjxzcGFuPjxicj48L3NwYW4+PC9kaXY+PGRpdiBzdHls ZT0iZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmOyBmb250LXNpemU6IDE0cHg7IGNvbG9y OiByZ2IoMCwgMCwgMCk7IGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDI1NSwgMjU1KTsiPjxz cGFuPi8qIGJvZHkgYW5kIGlubGluZS1tZW1iZXJzIG9mIE15X2NwcF9jbGFzcyAqLzxicj48L3Nw YW4+PC9kaXY+PGRpdiBzdHlsZT0iZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmOyBmb250 LXNpemU6IDE0cHg7IGNvbG9yOiByZ2IoMCwgMCwgMCk7IGJhY2tncm91bmQtY29sb3I6IHJnYigy NTUsIDI1NSwgMjU1KTsiPjxzcGFuPjxicj48L3NwYW4+PC9kaXY+PGRpdiBzdHlsZT0iZm9udC1m YW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmOyBmb250LXNpemU6IDE0cHg7IGNvbG9yOiByZ2IoMCwg MCwgMCk7IGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDI1NSwgMjU1KTsiPjxzcGFuPkRFRlVO X0RMRChteV9kaXNwYXRjaGVyX2Z1bmN0aW9uLCBhcmdzLCBuYXJnb3V0LCAiRGVidWdnaW5nXzxz cGFuPm15X2Rpc3BhdGNoZXJfZnVuY3Rpb248L3NwYW4+X3N1aXRhYmxlX25hbWUiKXs8L3NwYW4+ PGRpdj48c3Bhbj4mbmJzcDsgJm5ic3A7IC8vPC9zcGFuPjwvZGl2PjxkaXY+PHNwYW4+Jm5ic3A7 ICZuYnNwOyAvLyBmbGFnID0gTXlfY3BwX2NsYXNzLm15X2NwcF9mdW5jdGlvbigpOzxicj48L3Nw YW4+PC9kaXY+PGRpdj48c3Bhbj4mbmJzcDsgJm5ic3A7IC8vPC9zcGFuPjwvZGl2PjxkaXY+PHNw YW4+Jm5ic3A7ICZuYnNwOyAvLyArKysrIHBvc3Nlc3MgYW4gaW5zdGFuY2U8YnI+PC9zcGFuPjwv ZGl2PjxkaXY+PHNwYW4+Jm5ic3A7ICZuYnNwOyBzdGF0aWMgTXlfY3BwX2NsYXNzIG15X2NsYXNz X2luc3RhbmNlOyAvLyBJIGFsc28gdHJpZWQgd2l0aG91dCAic3RhdGljIiwgaS5lLiByZS1pbnN0 YW50aWF0aW5nIGF0IGVhY2ggY2FsbC4gU2FtZSBiZWhhdmlvdXIgKGkuZS4gb2N0YXZlIGNsb3Nl cykuPGJyPjwvc3Bhbj48L2Rpdj48ZGl2PjxzcGFuPiZuYnNwOyAmbmJzcDsgLy88L3NwYW4+PC9k aXY+PGRpdj48c3Bhbj4mbmJzcDsgJm5ic3A7IC8vICsrKysgYWNxdWlyZSBhcnJheXM8YnI+PC9z cGFuPjwvZGl2PjxzcGFuPjxzcGFuPiZuYnNwOyAmbmJzcDsgTkRBcnJheSBhcnJheV94ID0gYXJn cygwKS5hcnJheV92YWx1ZSgpOzxzcGFuPjxzcGFuPjwvc3Bhbj48YnI+PHNwYW4+Jm5ic3A7ICZu YnNwOyBOREFycmF5IGFycmF5X3kgPSBhcmdzKDEpLmFycmF5X3ZhbHVlKCk7PC9zcGFuPjwvc3Bh bj48L3NwYW4+PC9zcGFuPjwvZGl2PjxkaXYgc3R5bGU9ImZvbnQtZmFtaWx5OiBBcmlhbCwgc2Fu cy1zZXJpZjsgZm9udC1zaXplOiAxNHB4OyBjb2xvcjogcmdiKDAsIDAsIDApOyBiYWNrZ3JvdW5k LWNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSk7Ij48c3Bhbj48c3Bhbj48c3Bhbj48c3Bhbj4mbmJz cDsmbmJzcDsmbmJzcDsgLy88YnI+PC9zcGFuPjwvc3Bhbj48L3NwYW4+PC9zcGFuPjwvZGl2Pjxk aXYgc3R5bGU9ImZvbnQtZmFtaWx5OiBBcmlhbCwgc2Fucy1zZXJpZjsgZm9udC1zaXplOiAxNHB4 OyBjb2xvcjogcmdiKDAsIDAsIDApOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1 NSk7Ij48c3Bhbj4mbmJzcDsmbmJzcDsmbmJzcDsgLy8gKysrKyBsb2FkIGlucHV0cyBpbnRvIGNs YXNzPC9zcGFuPjwvZGl2PjxkaXY+PHNwYW4gc3R5bGU9ImJhY2tncm91bmQtY29sb3I6IHJnYigy NTUsIDI1NSwgMjU1KTsiPjxzcGFuPjwvc3Bhbj48L3NwYW4+PHNwYW4gc3R5bGU9ImJhY2tncm91 bmQtY29sb3I6IHJnYigyNTUsIDI1NSwgMjU1KTsiPjxzcGFuPiZuYnNwOyZuYnNwOyZuYnNwOyBm b3IoaW50IGk9MDtpJmx0OzEwOysraSl7IDxzcGFuPm15X2NsYXNzX2luc3RhbmNlPC9zcGFuPi54 W2ldID0gYXJyYXlfeChpKTsgfTwvc3Bhbj48L3NwYW4+PC9kaXY+PGRpdj48c3BhbiBzdHlsZT0i YmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMjU1LCAyNTUpOyI+PHNwYW4+Jm5ic3A7Jm5ic3A7 Jm5ic3A7IC8vPC9zcGFuPjwvc3Bhbj48L2Rpdj48ZGl2PjxzcGFuIHN0eWxlPSJiYWNrZ3JvdW5k LWNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSk7Ij48c3Bhbj4mbmJzcDsmbmJzcDsmbmJzcDsgLy8g KysrKyBjb21wdXRlPC9zcGFuPjwvc3Bhbj48L2Rpdj48ZGl2PjxzcGFuIHN0eWxlPSJiYWNrZ3Jv dW5kLWNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSk7Ij48c3Bhbj4mbmJzcDsmbmJzcDsmbmJzcDsg bXlfY2xhc3NfaW5zdGFuY2UuY29tcHV0ZSgpOzxicj48L3NwYW4+PC9zcGFuPjwvZGl2PjxkaXY+ PHNwYW4gc3R5bGU9ImJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDI1NSwgMjU1KTsiPjxzcGFu PiZuYnNwOyZuYnNwOyZuYnNwOyAvLzwvc3Bhbj48L3NwYW4+PC9kaXY+PGRpdj48c3BhbiBzdHls ZT0iYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMjU1LCAyNTUpOyI+PHNwYW4+Jm5ic3A7Jm5i c3A7Jm5ic3A7IC8vICsrKysgZXhwb3J0IG91dHB1dHM8YnI+PC9zcGFuPjwvc3Bhbj48L2Rpdj48 ZGl2IHN0eWxlPSJmb250LWZhbWlseTogQXJpYWwsIHNhbnMtc2VyaWY7IGZvbnQtc2l6ZTogMTRw eDsgY29sb3I6IHJnYigwLCAwLCAwKTsgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMjU1LCAy NTUpOyI+PHNwYW4+PHNwYW4gc3R5bGU9ImJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDI1NSwg MjU1KTsiPjxzcGFuPjwvc3Bhbj48L3NwYW4+PHNwYW4gc3R5bGU9ImJhY2tncm91bmQtY29sb3I6 IHJnYigyNTUsIDI1NSwgMjU1KTsiPjxzcGFuPiZuYnNwOyZuYnNwOyZuYnNwOyBmb3IoaW50IGk9 MDtpJmx0OzIwOysraSl7IDxzcGFuPmFycmF5X3koaSkgPSBteV9jbGFzc19pbnN0YW5jZTwvc3Bh bj4ueVtpXTsgfTwvc3Bhbj48L3NwYW4+PC9zcGFuPjwvZGl2PjxkaXYgc3R5bGU9ImZvbnQtZmFt aWx5OiBBcmlhbCwgc2Fucy1zZXJpZjsgZm9udC1zaXplOiAxNHB4OyBjb2xvcjogcmdiKDAsIDAs IDApOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSk7Ij48c3Bhbj48c3BhbiBz dHlsZT0iYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMjU1LCAyNTUpOyI+PHNwYW4+Jm5ic3A7 Jm5ic3A7Jm5ic3A7IC8vPC9zcGFuPjwvc3Bhbj48L3NwYW4+PC9kaXY+PGRpdiBzdHlsZT0iZm9u dC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmOyBmb250LXNpemU6IDE0cHg7IGNvbG9yOiByZ2Io MCwgMCwgMCk7IGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDI1NSwgMjU1KTsiPjxzcGFuPjxz cGFuIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSk7Ij48c3Bhbj4m bmJzcDsmbmJzcDsmbmJzcDsgLy8gKysrKyBwYWNrIGFuZCByZXR1cm4gcmVzdWx0PGJyPjwvc3Bh bj48L3NwYW4+PC9zcGFuPjwvZGl2PjxkaXYgc3R5bGU9ImZvbnQtZmFtaWx5OiBBcmlhbCwgc2Fu cy1zZXJpZjsgZm9udC1zaXplOiAxNHB4OyBjb2xvcjogcmdiKDAsIDAsIDApOyBiYWNrZ3JvdW5k LWNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSk7Ij48c3Bhbj48c3Bhbj48L3NwYW4+PGRpdj48c3Bh bj4mbmJzcDsgJm5ic3A7IG9jdGF2ZV92YWx1ZV9saXN0IHJldHZhbDs8L3NwYW4+PC9kaXY+PGRp dj48c3Bhbj4mbmJzcDsgJm5ic3A7IC8vPC9zcGFuPjxzcGFuPjxzcGFuPjxicj48L3NwYW4+PC9z cGFuPjwvZGl2PjxkaXY+PHNwYW4+Jm5ic3A7ICZuYnNwOyByZXR2YWwuYXBwZW5kKCBvY3RhdmVf dmFsdWUoYXJyYXlfeSApICk7PHNwYW4+PHNwYW4+PHNwYW4+PHNwYW4+PGJyPjwvc3Bhbj48L3Nw YW4+PC9zcGFuPjwvc3Bhbj48L3NwYW4+PC9kaXY+PGRpdj48c3Bhbj48c3Bhbj48c3Bhbj48c3Bh bj48c3Bhbj4mbmJzcDsmbmJzcDsmbmJzcDsgcmV0dXJuIHJldHZhbDs8L3NwYW4+PC9zcGFuPjwv c3Bhbj48L3NwYW4+PC9zcGFuPjwvZGl2PjxkaXY+PHNwYW4+PHNwYW4+PHNwYW4+PHNwYW4+PHNw YW4+fTwvc3Bhbj48L3NwYW4+PC9zcGFuPjwvc3Bhbj48L3NwYW4+PC9kaXY+PGRpdj48c3Bhbj48 c3Bhbj48c3Bhbj48c3Bhbj48c3Bhbj48YnI+PC9zcGFuPjwvc3Bhbj48L3NwYW4+PC9zcGFuPjwv c3Bhbj48L2Rpdj48ZGl2PjxzcGFuPjxzcGFuPjxzcGFuPjxzcGFuPjxzcGFuPlRoZSBPY3RhdmUg Y29kZSwgd2hpY2ggY2FsbHMgdGhlIG9jdCBmaWxlLCBpczo8L3NwYW4+PC9zcGFuPjwvc3Bhbj48 L3NwYW4+PC9zcGFuPjwvZGl2PjxkaXY+PHNwYW4+PHNwYW4+PHNwYW4+PHNwYW4+PHNwYW4+PGJy Pjwvc3Bhbj48L3NwYW4+PC9zcGFuPjwvc3Bhbj48L3NwYW4+PC9kaXY+PGRpdj48c3Bhbj48c3Bh bj48c3Bhbj48c3Bhbj48c3Bhbj5hc3NlcnQoIHNpemUoeCk9PVsxMCwxXSAmYW1wOyZhbXA7IDxz cGFuPjxzcGFuPjxzcGFuPjxzcGFuPjxzcGFuPjxzcGFuPnNpemUoeCk9PVsyMCwxXTwvc3Bhbj48 L3NwYW4+PC9zcGFuPjwvc3Bhbj48L3NwYW4+PC9zcGFuPiApOyAlIHRoaXMgcGFzc2VzIHN1Y2Nl c3NmdWxseTxicj48L3NwYW4+PC9zcGFuPjwvc3Bhbj48L3NwYW4+PC9zcGFuPjwvZGl2PjxkaXY+ PHNwYW4+PHNwYW4+PHNwYW4+PHNwYW4+PHNwYW4+eSA9IDxzcGFuPm15X2Rpc3BhdGNoZXJfZnVu Y3Rpb248L3NwYW4+KHgseSk7PGJyPjwvc3Bhbj48L3NwYW4+PC9zcGFuPjwvc3Bhbj48L3NwYW4+ PC9kaXY+PGRpdj48c3Bhbj48c3Bhbj48c3Bhbj48c3Bhbj48c3Bhbj48YnI+PC9zcGFuPjwvc3Bh bj48L3NwYW4+PC9zcGFuPjwvc3Bhbj48L2Rpdj48ZGl2PjxzcGFuPjxzcGFuPjxzcGFuPjxzcGFu PjxzcGFuPlRoZSBjb25zdHJ1Y3RvciBvZiA8c3Bhbj5NeV9jcHBfY2xhc3MgcmVsaWVzIG9uIGEg c2luZ2xldG9uLCB3aGljaCBoYXMgYmVlbiBpbXBsZW1lbnRlZCB3aXRoIGEgbm9uLW1lbWJlciBm dW5jdGlvbiB0aGF0IHJldHVybnMgYSBzdGF0aWMgaW5zdGFuY2Ugb2YgdGhlIFNpbmdsZXRvbi48 YnI+PC9zcGFuPjwvc3Bhbj48L3NwYW4+PC9zcGFuPjwvc3Bhbj48L3NwYW4+PC9kaXY+PGRpdj48 c3Bhbj48c3Bhbj48c3Bhbj48c3Bhbj48c3Bhbj48c3Bhbj48YnI+PC9zcGFuPjwvc3Bhbj48L3Nw YW4+PC9zcGFuPjwvc3Bhbj48L3NwYW4+PC9kaXY+PGRpdj48c3Bhbj48c3Bhbj48c3Bhbj48c3Bh bj48c3Bhbj48c3Bhbj5FdmVyeXRpbWUgSSBjYWxsIHRoZSBkaXNwYXRjaGVyIGZyb20gT2N0YXZl IEdVSSwgT2N0YXZlIGltbWVkaWF0ZWx5IGNsb3NlcyBhbGwgd2luZG93cyBvZiB0aGUgc29mdHdh cmUgYW5kIGVuZHMuIChNYXliZSBhIHN1Ymdyb3VwIG9mIHVzIGNhbiBhZ3JlZSB0aGF0IGVpdGhl ciBteSBjbGFzcyBsZWFrcyBvciBPY3RhdmUgZW5jb3VudGVycyBhIGJ1Zy4gSSBoYXZlIGRlYnVn Z2VkIG15IGNsYXNzLiBJIHdvdWxkIGFwcHJlY2lhdGUgYXZvaWRpbmcgYSBkaXNjdXNzaW9uIGlu dG8gdGhhdCBhcmVhLik8YnI+PC9zcGFuPjwvc3Bhbj48L3NwYW4+PC9zcGFuPjwvc3Bhbj48L3Nw YW4+PC9kaXY+PGRpdj48c3Bhbj48c3Bhbj48c3Bhbj48c3Bhbj48c3Bhbj48c3Bhbj48YnI+PC9z cGFuPjwvc3Bhbj48L3NwYW4+PC9zcGFuPjwvc3Bhbj48L3NwYW4+PC9kaXY+PGRpdj48c3Bhbj48 c3Bhbj48c3Bhbj48c3Bhbj48c3Bhbj48c3Bhbj5JIGRvIG5vdCBrbm93IG9yIHdhbnQgdG8ga25v dyBvciBkaXNjdXNzIHdoZXRoZXIgdGhpcyBpcyBhIGJ1Zy48L3NwYW4+PC9zcGFuPjwvc3Bhbj48 L3NwYW4+PC9zcGFuPjwvc3Bhbj48L2Rpdj48ZGl2PjxzcGFuPjxzcGFuPjxzcGFuPjxzcGFuPjxz cGFuPjxzcGFuPjxicj48L3NwYW4+PC9zcGFuPjwvc3Bhbj48L3NwYW4+PC9zcGFuPjwvc3Bhbj48 L2Rpdj48ZGl2PjxzcGFuPjxzcGFuPjxzcGFuPjxzcGFuPjxzcGFuPjxzcGFuPkkgYW0gaW50ZXJl c3RlZCBpbiBhY3F1aXJpbmcgYSBtZWFucyB0byBkb2luZyB3aGF0IHRoZSBhYm92ZSBjb2RlIHdv dWxkIGJlIGV4cGVjdGVkIHRvIGRvIHVuZGVyIHJlYXNvbmFibGUgbmFpdmUgYXNzdW1wdGlvbnMg KHdoaWNoIGFyZTogSSBoYXZlIGEgY2xhc3MuIEkgY2FuIGNvbnN0cnVjdCBhbmQgZGVzdHJ1Y3Qg aW5zdGFuY2VzIG9mIGl0IGluIGMrKyBtdWx0aXBsZSB0aW1lcyB3aXRob3V0IG1lbW9yeSBsZWFr cy4gRWFjaCBpbnN0YW5jZSBoYXMgYnVmZmVycyB4LHkgYW5kIGEgbWVtYmVyIGZ1bmN0aW9uIGNv bXB1dGUgdGhhdCBtYW5pcHVsYXRlcyB5LiBJIHdhbnQgdG8gb2J0YWluIHkgaW4gT2N0YXZlIGZy b20gZ2l2ZW4geCBpbiBPY3RhdmUpLjwvc3Bhbj48L3NwYW4+PC9zcGFuPjwvc3Bhbj48L3NwYW4+ PC9zcGFuPjwvZGl2PjxkaXY+PHNwYW4+PHNwYW4+PHNwYW4+PHNwYW4+PHNwYW4+PHNwYW4+PGJy Pjwvc3Bhbj48L3NwYW4+PC9zcGFuPjwvc3Bhbj48L3NwYW4+PC9zcGFuPjwvZGl2PjxkaXY+PHNw YW4+PHNwYW4+PHNwYW4+PHNwYW4+PHNwYW4+PHNwYW4+Q3VycmVudGx5LCBteSB3b3JrLWFyb3Vu ZCBpcyB0byB3cml0ZSBhIHRleHQgZmlsZSBpbiBvY3RhdmUsIHRoZW4gbWFrZSBhIHN5c3RlbSBj YWxsIGZyb20gb2N0YXZlIHRvIG15IGNwcCBleGUsIHRoaXMgbWFuaXB1bGF0ZXMgdGhlIHRleHRm aWxlLCBhbmQgb2N0YXZlIHJlYWRzIHRoZSByZXN1bHRzLiBUaGUgaXNzdWUgaXMgd2l0aCBzcGVl ZCBvZiBleGVjdXRpb24sIHNpbmNlIHRoZSB3cml0ZSB0byBoYXJkZHJpdmUgaW50cm9kdWNlcyBl bm91cm1vdXMgbGF0ZW5jeSwgcGFydGljdWxhcmx5IHNpbmNlIEkgbmVlZCB+MTAwMDAgZXZhbGF0 aW9ucyBwZXIgdXNlIGNhc2UuPGJyPjwvc3Bhbj48L3NwYW4+PC9zcGFuPjwvc3Bhbj48L3NwYW4+ PC9zcGFuPjwvZGl2PjxkaXY+PHNwYW4+PHNwYW4+PHNwYW4+PHNwYW4+PHNwYW4+PHNwYW4+PGJy Pjwvc3Bhbj48L3NwYW4+PC9zcGFuPjwvc3Bhbj48L3NwYW4+PC9zcGFuPjwvZGl2PjxkaXY+PHNw YW4+PHNwYW4+PHNwYW4+PHNwYW4+PHNwYW4+PHNwYW4+VGhhbmsgeW91IGZvciBhbnkgaGVscC48 L3NwYW4+PC9zcGFuPjwvc3Bhbj48L3NwYW4+PC9zcGFuPjwvc3Bhbj48L2Rpdj48ZGl2PjxzcGFu PjxzcGFuPjxzcGFuPjxzcGFuPjxzcGFuPjxzcGFuPjxicj48L3NwYW4+PC9zcGFuPjwvc3Bhbj48 L3NwYW4+PC9zcGFuPjwvc3Bhbj48L2Rpdj48ZGl2PjxzcGFuPjxzcGFuPjxzcGFuPjxzcGFuPjxz cGFuPjxzcGFuPktpbmQgcmVnYXJkcyw8L3NwYW4+PC9zcGFuPjwvc3Bhbj48L3NwYW4+PC9zcGFu Pjwvc3Bhbj48L2Rpdj48ZGl2PjxzcGFuPjxzcGFuPjxzcGFuPjxzcGFuPjxzcGFuPjxzcGFuPkd1 aWRvPGJyPjwvc3Bhbj48L3NwYW4+PC9zcGFuPjwvc3Bhbj48L3NwYW4+PC9zcGFuPjwvZGl2Pjwv c3Bhbj48L2Rpdj4= --b1_mFIIC5akUAeuA6Xqn3frpzMhsKpwPvO4ahEoepCmM8M-- --===============8759722490904467249== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline Ci0tLS0tLS0tLS0KV2UgYXJlIHRyYW5zaXRpb25pbmcgdG8gYSB3ZWIgYmFzZWQgZm9ydW0KZm9y IGNvbW11bml0eSBoZWxwIGRpc2N1c3Npb25zIGF0Cmh0dHBzOi8vb2N0YXZlLmRpc2NvdXJzZS5n cm91cC9jL2hlbHAK --===============8759722490904467249==--