<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>217141</bug_id>
          
          <creation_ts>2020-09-30 12:33:24 -0700</creation_ts>
          <short_desc>[JSC] Common slow paths should be JIT operations</short_desc>
          <delta_ts>2020-09-30 15:29:20 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Yusuke Suzuki">ysuzuki</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1693490</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-09-30 12:33:24 -0700</bug_when>
    <thetext>[JSC] Common slow paths should be JIT operations</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1693491</commentid>
    <comment_count>1</comment_count>
      <attachid>410145</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-09-30 12:34:20 -0700</bug_when>
    <thetext>Created attachment 410145
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1693543</commentid>
    <comment_count>2</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-09-30 15:28:17 -0700</bug_when>
    <thetext>Committed r267808: &lt;https://trac.webkit.org/changeset/267808&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 410145.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1693544</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-09-30 15:29:20 -0700</bug_when>
    <thetext>&lt;rdar://problem/69811247&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>410145</attachid>
            <date>2020-09-30 12:34:20 -0700</date>
            <delta_ts>2020-09-30 15:28:18 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-217141-20200930123419.patch</filename>
            <type>text/plain</type>
            <size>44057</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY3Nzk5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAw
NDAxYmRhNjgwZTNjZjlmZGFhMTM2ZTBkNjYxY2VlNmQxMjFhMDJmLi4yN2YwZDA2MzhjOGM5MmI4
ZjljYTU5ZjQ5Mzc3OTFlYzQzZDYzZjYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyOCBAQAorMjAyMC0wOS0zMCAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIENvbW1vbiBzbG93IHBhdGhzIHNob3VsZCBiZSBKSVQgb3BlcmF0
aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE3
MTQxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVW5s
aWtlIExMSW50IHNsb3cgcGF0aHMsIGNvbW1vbiAoY29tbW9uIG1lYW5zIGNvbW1vbiBiZXR3ZWVu
IExMSW50IGFuZCBCYXNlbGluZSkgc2xvdyBwYXRocyBjYW4gYmUgY2FsbGVkIGZyb20gYmFzZWxp
bmUgSklUIGNvZGUuIFRodXMsIHRoZXkgc2hvdWxkIGJlIEpJVCBvcGVyYXRpb25zLgorCisgICAg
ICAgICogbGxpbnQvTExJbnRTbG93UGF0aHMuY3BwOgorICAgICAgICAoSlNDOjpMTEludDo6bGxp
bnRfc2xvd19wYXRoX2NoZWNrcG9pbnRfb3NyX2V4aXRfZnJvbV9pbmxpbmVkX2NhbGwpOgorICAg
ICAgICAoSlNDOjpMTEludDo6bGxpbnRfc2xvd19wYXRoX2NoZWNrcG9pbnRfb3NyX2V4aXQpOgor
ICAgICAgICAoSlNDOjpMTEludDo6c2xvd19wYXRoX2NoZWNrcG9pbnRfb3NyX2V4aXRfZnJvbV9p
bmxpbmVkX2NhbGwpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpMTEludDo6c2xvd19wYXRoX2No
ZWNrcG9pbnRfb3NyX2V4aXQpOiBEZWxldGVkLgorICAgICAgICAqIGxsaW50L0xMSW50U2xvd1Bh
dGhzLmg6CisgICAgICAgICogbGxpbnQvTG93TGV2ZWxJbnRlcnByZXRlci5hc206CisgICAgICAg
ICogcnVudGltZS9Db21tb25TbG93UGF0aHMuY3BwOgorICAgICAgICAoSlNDOjpKU0NfREVGSU5F
X0NPTU1PTl9TTE9XX1BBVEgpOgorICAgICAgICAoSlNDOjppdGVyYXRvck9wZW5UcnlGYXN0SW1w
bCk6CisgICAgICAgIChKU0M6Oml0ZXJhdG9yTmV4dFRyeUZhc3RJbXBsKToKKyAgICAgICAgKEpT
Qzo6U0xPV19QQVRIX0RFQ0wpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjppdGVyYXRvcl9vcGVu
X3RyeV9mYXN0KTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6aXRlcmF0b3JfbmV4dF90cnlfZmFz
dCk6IERlbGV0ZWQuCisgICAgICAgICogcnVudGltZS9Db21tb25TbG93UGF0aHMuaDoKKwogMjAy
MC0wOS0zMCAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CiAKICAgICAg
ICAgVW5yZXZpZXdlZCwgcmV2ZXJ0aW5nIHIyNjc3OTUuCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvbGxpbnQvTExJbnRTbG93UGF0aHMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2xsaW50L0xMSW50U2xvd1BhdGhzLmNwcAppbmRleCBmOWE5MDdlZDQxYmRlNDU2Y2YwZDlk
N2UxOWIzZjkxYjRiZDFkZTUwLi5iNWY5ZDVlOGU1ZjJhYjUzYThkNGI4ZDY5MWZiODYzNWYwMzg2
ODYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTExJbnRTbG93UGF0
aHMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9sbGludC9MTEludFNsb3dQYXRocy5j
cHAKQEAgLTIyNzMsNyArMjI3Myw3IEBAIGlubGluZSBTbG93UGF0aFJldHVyblR5cGUgZGlzcGF0
Y2hUb05leHRJbnN0cnVjdGlvbihUaHJvd1Njb3BlJiBzY29wZSwgQ29kZUJsb2NrCiAgICAgUkVM
RUFTRV9BU1NFUlRfTk9UX1JFQUNIRUQoKTsKIH0KIAotZXh0ZXJuICJDIiBTbG93UGF0aFJldHVy
blR5cGUgc2xvd19wYXRoX2NoZWNrcG9pbnRfb3NyX2V4aXRfZnJvbV9pbmxpbmVkX2NhbGwoQ2Fs
bEZyYW1lKiBjYWxsRnJhbWUsIEVuY29kZWRKU1ZhbHVlIHJlc3VsdCkKK2V4dGVybiAiQyIgU2xv
d1BhdGhSZXR1cm5UeXBlIGxsaW50X3Nsb3dfcGF0aF9jaGVja3BvaW50X29zcl9leGl0X2Zyb21f
aW5saW5lZF9jYWxsKENhbGxGcmFtZSogY2FsbEZyYW1lLCBFbmNvZGVkSlNWYWx1ZSByZXN1bHQp
CiB7CiAgICAgLy8gU2luY2UgYWxsIG91ciBjYWxsaW5nIGNoZWNrcG9pbnRzIGRvIHJpZ2h0IG5v
dyBpcyBtb3ZlIHJlc3VsdCBpbnRvIG91ciBkZXN0IHdlIGNhbiBqdXN0IGRvIHRoYXQgaGVyZSBh
bmQgcmV0dXJuLgogICAgIENvZGVCbG9jayogY29kZUJsb2NrID0gY2FsbEZyYW1lLT5jb2RlQmxv
Y2soKTsKQEAgLTIzMjMsNyArMjMyMyw3IEBAIGV4dGVybiAiQyIgU2xvd1BhdGhSZXR1cm5UeXBl
IHNsb3dfcGF0aF9jaGVja3BvaW50X29zcl9leGl0X2Zyb21faW5saW5lZF9jYWxsKENhCiAgICAg
cmV0dXJuIGRpc3BhdGNoVG9OZXh0SW5zdHJ1Y3Rpb24oc2NvcGUsIGNvZGVCbG9jaywgcGMpOwog
fQogCi1leHRlcm4gIkMiIFNsb3dQYXRoUmV0dXJuVHlwZSBzbG93X3BhdGhfY2hlY2twb2ludF9v
c3JfZXhpdChDYWxsRnJhbWUqIGNhbGxGcmFtZSwgRW5jb2RlZEpTVmFsdWUgLyogbmVlZGVkIGZv
ciBjQ2FsbDIgaW4gQ0xvb3AgKi8pCitleHRlcm4gIkMiIFNsb3dQYXRoUmV0dXJuVHlwZSBsbGlu
dF9zbG93X3BhdGhfY2hlY2twb2ludF9vc3JfZXhpdChDYWxsRnJhbWUqIGNhbGxGcmFtZSwgRW5j
b2RlZEpTVmFsdWUgLyogbmVlZGVkIGZvciBjQ2FsbDIgaW4gQ0xvb3AgKi8pCiB7CiAgICAgQ29k
ZUJsb2NrKiBjb2RlQmxvY2sgPSBjYWxsRnJhbWUtPmNvZGVCbG9jaygpOwogICAgIFZNJiB2bSA9
IGNvZGVCbG9jay0+dm0oKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9sbGlu
dC9MTEludFNsb3dQYXRocy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xMSW50U2xv
d1BhdGhzLmgKaW5kZXggYTYzNTRmZjlkOGE3ODc4MWUxOGNiZmU4MzNmM2E5YzFjY2I4Y2RhNS4u
OTgxYjM2ZTVlODA0NTI4OGMwZWI1MWU4ZjhiZjRlZmQ5NTMwYzk4ZiAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xMSW50U2xvd1BhdGhzLmgKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2xsaW50L0xMSW50U2xvd1BhdGhzLmgKQEAgLTE0Myw4ICsxNDMsOCBAQCBM
TElOVF9TTE9XX1BBVEhfSElEREVOX0RFQ0woc2xvd19wYXRoX3N1cGVyX3NhbXBsZXJfYmVnaW4p
OwogTExJTlRfU0xPV19QQVRIX0hJRERFTl9ERUNMKHNsb3dfcGF0aF9zdXBlcl9zYW1wbGVyX2Vu
ZCk7CiBMTElOVF9TTE9XX1BBVEhfSElEREVOX0RFQ0woc2xvd19wYXRoX291dF9vZl9saW5lX2p1
bXBfdGFyZ2V0KTsKIGV4dGVybiAiQyIgU2xvd1BhdGhSZXR1cm5UeXBlIGxsaW50X3Rocm93X3N0
YWNrX292ZXJmbG93X2Vycm9yKFZNKiwgUHJvdG9DYWxsRnJhbWUqKSBXVEZfSU5URVJOQUw7Ci1l
eHRlcm4gIkMiIFNsb3dQYXRoUmV0dXJuVHlwZSBzbG93X3BhdGhfY2hlY2twb2ludF9vc3JfZXhp
dChDYWxsRnJhbWUqIGNhbGxGcmFtZSwgRW5jb2RlZEpTVmFsdWUgdW51c2VkKSBXVEZfSU5URVJO
QUw7Ci1leHRlcm4gIkMiIFNsb3dQYXRoUmV0dXJuVHlwZSBzbG93X3BhdGhfY2hlY2twb2ludF9v
c3JfZXhpdF9mcm9tX2lubGluZWRfY2FsbChDYWxsRnJhbWUqIGNhbGxGcmFtZSwgRW5jb2RlZEpT
VmFsdWUgY2FsbFJlc3VsdCkgV1RGX0lOVEVSTkFMOworZXh0ZXJuICJDIiBTbG93UGF0aFJldHVy
blR5cGUgbGxpbnRfc2xvd19wYXRoX2NoZWNrcG9pbnRfb3NyX2V4aXQoQ2FsbEZyYW1lKiBjYWxs
RnJhbWUsIEVuY29kZWRKU1ZhbHVlIHVudXNlZCkgV1RGX0lOVEVSTkFMOworZXh0ZXJuICJDIiBT
bG93UGF0aFJldHVyblR5cGUgbGxpbnRfc2xvd19wYXRoX2NoZWNrcG9pbnRfb3NyX2V4aXRfZnJv
bV9pbmxpbmVkX2NhbGwoQ2FsbEZyYW1lKiBjYWxsRnJhbWUsIEVuY29kZWRKU1ZhbHVlIGNhbGxS
ZXN1bHQpIFdURl9JTlRFUk5BTDsKICNpZiBFTkFCTEUoQ19MT09QKQogZXh0ZXJuICJDIiBTbG93
UGF0aFJldHVyblR5cGUgbGxpbnRfc3RhY2tfY2hlY2tfYXRfdm1fZW50cnkoVk0qLCBSZWdpc3Rl
ciopIFdURl9JTlRFUk5BTDsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2xsaW50L0xvd0xldmVsSW50ZXJwcmV0ZXIuYXNtIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2xsaW50L0xvd0xldmVsSW50ZXJwcmV0ZXIuYXNtCmluZGV4IDFjZjI3ZjY0ZmFlODgyNzJiOWFh
MWZlYWY4MTZiOTY0ZDVkNWI3NzguLjEzYjNjMDVmOTM5ZGFiYzU5ZWUzMmYwN2ZhZTFkOWY0NmMz
MWU2ZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9sbGludC9Mb3dMZXZlbElu
dGVycHJldGVyLmFzbQorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTG93TGV2ZWxJ
bnRlcnByZXRlci5hc20KQEAgLTIxOTIsNyArMjE5Miw3IEBAIG9wKGNoZWNrcG9pbnRfb3NyX2V4
aXRfZnJvbV9pbmxpbmVkX2NhbGxfdHJhbXBvbGluZSwgbWFjcm8gKCkKIAogICAgICAgICAjIE1h
a2Ugc3VyZSB3ZSBtb3ZlIHIwIHRvIGExIGZpcnN0IHNpbmNlIHIwIG1pZ2h0IGJlIHRoZSBzYW1l
IGFzIGEwLCBmb3IgaW5zdGFuY2UsIG9uIGFybS4KICAgICAgICAgaWYgQVJNdjcgb3IgTUlQUwot
ICAgICAgICAgICAgIyBHaXZlbiBfc2xvd19wYXRoX2NoZWNrcG9pbnRfb3NyX2V4aXRfZnJvbV9p
bmxpbmVkX2NhbGwgaGFzCisgICAgICAgICAgICAjIEdpdmVuIF9sbGludF9zbG93X3BhdGhfY2hl
Y2twb2ludF9vc3JfZXhpdF9mcm9tX2lubGluZWRfY2FsbCBoYXMKICAgICAgICAgICAgICMgcGFy
YW1ldGVycyBhcyBDYWxsRnJhbWUqIGFuZCBFbmNvZGVkSlNWYWx1ZSwKICAgICAgICAgICAgICMg
d2UgbmVlZCB0byBzdG9yZSBjYWxsIHJlc3VsdCBvbiBhMiwgYTMgYW5kIGNhbGwgZnJhbWUgb24g
YTAsCiAgICAgICAgICAgICAjIGxlYXZpbmcgYTEgYXMgZHVtbXkgdmFsdWUgKHRoaXMgY2FsbGlu
ZyBjb252ZW50aW9uIGlzIGNvbnNpZGVyZWQgb25seQpAQCAtMjIwMSwxMiArMjIwMSwxMiBAQCBv
cChjaGVja3BvaW50X29zcl9leGl0X2Zyb21faW5saW5lZF9jYWxsX3RyYW1wb2xpbmUsIG1hY3Jv
ICgpCiAgICAgICAgICAgICBtb3ZlIHIwLCBhMgogICAgICAgICAgICAgbW92ZSBjZnIsIGEwCiAg
ICAgICAgICAgICAjIFdlIGRvbid0IGNhbGwgc2F2ZVN0YXRlRm9yQ0NhbGwoKSBiZWNhdXNlIHdl
IGFyZSBnb2luZyB0byB1c2UgdGhlIGJ5dGVjb2RlSW5kZXggZnJvbSBvdXIgc2lkZSBzdGF0ZS4K
LSAgICAgICAgICAgIGNDYWxsNChfc2xvd19wYXRoX2NoZWNrcG9pbnRfb3NyX2V4aXRfZnJvbV9p
bmxpbmVkX2NhbGwpCisgICAgICAgICAgICBjQ2FsbDQoX2xsaW50X3Nsb3dfcGF0aF9jaGVja3Bv
aW50X29zcl9leGl0X2Zyb21faW5saW5lZF9jYWxsKQogICAgICAgICBlbHNlCiAgICAgICAgICAg
ICBtb3ZlIHIwLCBhMQogICAgICAgICAgICAgbW92ZSBjZnIsIGEwCiAgICAgICAgICAgICAjIFdl
IGRvbid0IGNhbGwgc2F2ZVN0YXRlRm9yQ0NhbGwoKSBiZWNhdXNlIHdlIGFyZSBnb2luZyB0byB1
c2UgdGhlIGJ5dGVjb2RlSW5kZXggZnJvbSBvdXIgc2lkZSBzdGF0ZS4KLSAgICAgICAgICAgIGND
YWxsMihfc2xvd19wYXRoX2NoZWNrcG9pbnRfb3NyX2V4aXRfZnJvbV9pbmxpbmVkX2NhbGwpCisg
ICAgICAgICAgICBjQ2FsbDIoX2xsaW50X3Nsb3dfcGF0aF9jaGVja3BvaW50X29zcl9leGl0X2Zy
b21faW5saW5lZF9jYWxsKQogICAgICAgICBlbmQKIAogICAgICAgICByZXN0b3JlU3RhdGVBZnRl
ckNDYWxsKCkKQEAgLTIyMjUsNyArMjIyNSw3IEBAIG9wKGNoZWNrcG9pbnRfb3NyX2V4aXRfdHJh
bXBvbGluZSwgbWFjcm8gKCkKIAogICAgICAgICBtb3ZlIGNmciwgYTAKICAgICAgICAgIyBXZSBk
b24ndCBjYWxsIHNhdmVTdGF0ZUZvckNDYWxsKCkgYmVjYXVzZSB3ZSBhcmUgZ29pbmcgdG8gdXNl
IHRoZSBieXRlY29kZUluZGV4IGZyb20gb3VyIHNpZGUgc3RhdGUuCi0gICAgICAgIGNDYWxsMihf
c2xvd19wYXRoX2NoZWNrcG9pbnRfb3NyX2V4aXQpCisgICAgICAgIGNDYWxsMihfbGxpbnRfc2xv
d19wYXRoX2NoZWNrcG9pbnRfb3NyX2V4aXQpCiAgICAgICAgIHJlc3RvcmVTdGF0ZUFmdGVyQ0Nh
bGwoKQogICAgICAgICBicmFuY2hJZkV4Y2VwdGlvbihfbGxpbnRfdGhyb3dfZnJvbV9zbG93X3Bh
dGhfdHJhbXBvbGluZSkKICAgICAgICAgam1wIHIxLCBKU0VudHJ5UHRyVGFnCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db21tb25TbG93UGF0aHMuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uU2xvd1BhdGhzLmNwcAppbmRleCAxNzJh
MWQ4MGM4NjA0ZTNjZTE4ODA0ODJiODZkZjQ4ZmQ3MTcxY2IyLi4yMGE1ZTVjMTNmOTZkZGUyMWU3
NGM0MDY1NmE4OTU4ODNhODViMTU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9Db21tb25TbG93UGF0aHMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0NvbW1vblNsb3dQYXRocy5jcHAKQEAgLTE1MSw3ICsxNTEsNyBAQCBzdGF0aWMgdm9p
ZCB0aHJvd0FyaXR5Q2hlY2tTdGFja092ZXJmbG93RXJyb3IoSlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCwgVGhybwogI2VuZGlmCiB9CiAKLVNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF9jYWxs
X2FyaXR5Q2hlY2spCitKU0NfREVGSU5FX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX2NhbGxf
YXJpdHlDaGVjaykKIHsKICAgICBCRUdJTigpOwogICAgIGludCBzbG90c1RvQWRkID0gQ29tbW9u
U2xvd1BhdGhzOjphcml0eUNoZWNrRm9yKHZtLCBjYWxsRnJhbWUsIENvZGVGb3JDYWxsKTsKQEAg
LTE2Nyw3ICsxNjcsNyBAQCBTTE9XX1BBVEhfREVDTChzbG93X3BhdGhfY2FsbF9hcml0eUNoZWNr
KQogICAgIFJFVFVSTl9UV08obnVsbHB0ciwgYml0d2lzZV9jYXN0PHZvaWQqPihzdGF0aWNfY2Fz
dDx1aW50cHRyX3Q+KHNsb3RzVG9BZGQpKSk7CiB9CiAKLVNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0
aF9jb25zdHJ1Y3RfYXJpdHlDaGVjaykKK0pTQ19ERUZJTkVfQ09NTU9OX1NMT1dfUEFUSChzbG93
X3BhdGhfY29uc3RydWN0X2FyaXR5Q2hlY2spCiB7CiAgICAgQkVHSU4oKTsKICAgICBpbnQgc2xv
dHNUb0FkZCA9IENvbW1vblNsb3dQYXRoczo6YXJpdHlDaGVja0Zvcih2bSwgY2FsbEZyYW1lLCBD
b2RlRm9yQ29uc3RydWN0KTsKQEAgLTE4MiwxNCArMTgyLDE0IEBAIFNMT1dfUEFUSF9ERUNMKHNs
b3dfcGF0aF9jb25zdHJ1Y3RfYXJpdHlDaGVjaykKICAgICBSRVRVUk5fVFdPKG51bGxwdHIsIGJp
dHdpc2VfY2FzdDx2b2lkKj4oc3RhdGljX2Nhc3Q8dWludHB0cl90PihzbG90c1RvQWRkKSkpOwog
fQogCi1TTE9XX1BBVEhfREVDTChzbG93X3BhdGhfY3JlYXRlX2RpcmVjdF9hcmd1bWVudHMpCitK
U0NfREVGSU5FX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX2NyZWF0ZV9kaXJlY3RfYXJndW1l
bnRzKQogewogICAgIEJFR0lOKCk7CiAgICAgYXV0byBieXRlY29kZSA9IHBjLT5hczxPcENyZWF0
ZURpcmVjdEFyZ3VtZW50cz4oKTsKICAgICBSRVRVUk4oRGlyZWN0QXJndW1lbnRzOjpjcmVhdGVC
eUNvcHlpbmcoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUpKTsKIH0KIAotU0xPV19QQVRIX0RFQ0wo
c2xvd19wYXRoX2NyZWF0ZV9zY29wZWRfYXJndW1lbnRzKQorSlNDX0RFRklORV9DT01NT05fU0xP
V19QQVRIKHNsb3dfcGF0aF9jcmVhdGVfc2NvcGVkX2FyZ3VtZW50cykKIHsKICAgICBCRUdJTigp
OwogICAgIGF1dG8gYnl0ZWNvZGUgPSBwYy0+YXM8T3BDcmVhdGVTY29wZWRBcmd1bWVudHM+KCk7
CkBAIC0xOTgsMTQgKzE5OCwxNCBAQCBTTE9XX1BBVEhfREVDTChzbG93X3BhdGhfY3JlYXRlX3Nj
b3BlZF9hcmd1bWVudHMpCiAgICAgUkVUVVJOKFNjb3BlZEFyZ3VtZW50czo6Y3JlYXRlQnlDb3B5
aW5nKGdsb2JhbE9iamVjdCwgY2FsbEZyYW1lLCB0YWJsZSwgc2NvcGUpKTsKIH0KIAotU0xPV19Q
QVRIX0RFQ0woc2xvd19wYXRoX2NyZWF0ZV9jbG9uZWRfYXJndW1lbnRzKQorSlNDX0RFRklORV9D
T01NT05fU0xPV19QQVRIKHNsb3dfcGF0aF9jcmVhdGVfY2xvbmVkX2FyZ3VtZW50cykKIHsKICAg
ICBCRUdJTigpOwogICAgIGF1dG8gYnl0ZWNvZGUgPSBwYy0+YXM8T3BDcmVhdGVDbG9uZWRBcmd1
bWVudHM+KCk7CiAgICAgUkVUVVJOKENsb25lZEFyZ3VtZW50czo6Y3JlYXRlV2l0aE1hY2hpbmVG
cmFtZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZSwgQXJndW1lbnRzTW9kZTo6Q2xvbmVkKSk7CiB9
CiAKLVNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF9jcmVhdGVfYXJndW1lbnRzX2J1dHRlcmZseSkK
K0pTQ19ERUZJTkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfY3JlYXRlX2FyZ3VtZW50c19i
dXR0ZXJmbHkpCiB7CiAgICAgQkVHSU4oKTsKICAgICBhdXRvIGJ5dGVjb2RlID0gcGMtPmFzPE9w
Q3JlYXRlQXJndW1lbnRzQnV0dGVyZmx5PigpOwpAQCAtMjE4LDcgKzIxOCw3IEBAIFNMT1dfUEFU
SF9ERUNMKHNsb3dfcGF0aF9jcmVhdGVfYXJndW1lbnRzX2J1dHRlcmZseSkKICAgICBSRVRVUk4o
YnV0dGVyZmx5KTsKIH0KIAotU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX2NyZWF0ZV90aGlzKQor
SlNDX0RFRklORV9DT01NT05fU0xPV19QQVRIKHNsb3dfcGF0aF9jcmVhdGVfdGhpcykKIHsKICAg
ICBCRUdJTigpOwogICAgIGF1dG8gYnl0ZWNvZGUgPSBwYy0+YXM8T3BDcmVhdGVUaGlzPigpOwpA
QCAtMjU2LDcgKzI1Niw3IEBAIFNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF9jcmVhdGVfdGhpcykK
ICAgICBSRVRVUk4ocmVzdWx0KTsKIH0KIAotU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX2NyZWF0
ZV9wcm9taXNlKQorSlNDX0RFRklORV9DT01NT05fU0xPV19QQVRIKHNsb3dfcGF0aF9jcmVhdGVf
cHJvbWlzZSkKIHsKICAgICBCRUdJTigpOwogICAgIGF1dG8gYnl0ZWNvZGUgPSBwYy0+YXM8T3BD
cmVhdGVQcm9taXNlPigpOwpAQCAtMjg4LDcgKzI4OCw3IEBAIFNMT1dfUEFUSF9ERUNMKHNsb3df
cGF0aF9jcmVhdGVfcHJvbWlzZSkKICAgICBSRVRVUk4ocmVzdWx0KTsKIH0KIAotU0xPV19QQVRI
X0RFQ0woc2xvd19wYXRoX25ld19wcm9taXNlKQorSlNDX0RFRklORV9DT01NT05fU0xPV19QQVRI
KHNsb3dfcGF0aF9uZXdfcHJvbWlzZSkKIHsKICAgICBCRUdJTigpOwogICAgIGF1dG8gYnl0ZWNv
ZGUgPSBwYy0+YXM8T3BOZXdQcm9taXNlPigpOwpAQCAtMzIwLDIxICszMjAsMjEgQEAgc3RhdGlj
IEpTQ2xhc3MqIGNyZWF0ZUludGVybmFsRmllbGRPYmplY3QoSlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCwgVk0mIHZtLAogICAgIFJFTEVBU0VfQU5EX1JFVFVSTihzY29wZSwgcmVzdWx0KTsK
IH0KIAotU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX2NyZWF0ZV9nZW5lcmF0b3IpCitKU0NfREVG
SU5FX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX2NyZWF0ZV9nZW5lcmF0b3IpCiB7CiAgICAg
QkVHSU4oKTsKICAgICBhdXRvIGJ5dGVjb2RlID0gcGMtPmFzPE9wQ3JlYXRlR2VuZXJhdG9yPigp
OwogICAgIFJFVFVSTihjcmVhdGVJbnRlcm5hbEZpZWxkT2JqZWN0PEpTR2VuZXJhdG9yPihnbG9i
YWxPYmplY3QsIHZtLCBjb2RlQmxvY2ssIGJ5dGVjb2RlLCBhc09iamVjdChHRVQoYnl0ZWNvZGUu
bV9jYWxsZWUpLmpzVmFsdWUoKSksIGdsb2JhbE9iamVjdC0+Z2VuZXJhdG9yU3RydWN0dXJlKCkp
KTsKIH0KIAotU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX2NyZWF0ZV9hc3luY19nZW5lcmF0b3Ip
CitKU0NfREVGSU5FX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX2NyZWF0ZV9hc3luY19nZW5l
cmF0b3IpCiB7CiAgICAgQkVHSU4oKTsKICAgICBhdXRvIGJ5dGVjb2RlID0gcGMtPmFzPE9wQ3Jl
YXRlQXN5bmNHZW5lcmF0b3I+KCk7CiAgICAgUkVUVVJOKGNyZWF0ZUludGVybmFsRmllbGRPYmpl
Y3Q8SlNBc3luY0dlbmVyYXRvcj4oZ2xvYmFsT2JqZWN0LCB2bSwgY29kZUJsb2NrLCBieXRlY29k
ZSwgYXNPYmplY3QoR0VUKGJ5dGVjb2RlLm1fY2FsbGVlKS5qc1ZhbHVlKCkpLCBnbG9iYWxPYmpl
Y3QtPmFzeW5jR2VuZXJhdG9yU3RydWN0dXJlKCkpKTsKIH0KIAotU0xPV19QQVRIX0RFQ0woc2xv
d19wYXRoX25ld19nZW5lcmF0b3IpCitKU0NfREVGSU5FX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19w
YXRoX25ld19nZW5lcmF0b3IpCiB7CiAgICAgQkVHSU4oKTsKICAgICBhdXRvIGJ5dGVjb2RlID0g
cGMtPmFzPE9wTmV3R2VuZXJhdG9yPigpOwpAQCAtMzQyLDcgKzM0Miw3IEBAIFNMT1dfUEFUSF9E
RUNMKHNsb3dfcGF0aF9uZXdfZ2VuZXJhdG9yKQogICAgIFJFVFVSTihyZXN1bHQpOwogfQogCi1T
TE9XX1BBVEhfREVDTChzbG93X3BhdGhfdG9fdGhpcykKK0pTQ19ERUZJTkVfQ09NTU9OX1NMT1df
UEFUSChzbG93X3BhdGhfdG9fdGhpcykKIHsKICAgICBCRUdJTigpOwogICAgIGF1dG8gYnl0ZWNv
ZGUgPSBwYy0+YXM8T3BUb1RoaXM+KCk7CkBAIC0zNzEsODggKzM3MSw4OCBAQCBTTE9XX1BBVEhf
REVDTChzbG93X3BhdGhfdG9fdGhpcykKICAgICBSRVRVUk5fV0lUSF9QUk9GSUxJTkdfQ1VTVE9N
KGJ5dGVjb2RlLm1fc3JjRHN0LCB2YWx1ZSwgUFJPRklMRV9WQUxVRSh2YWx1ZSkpOwogfQogCi1T
TE9XX1BBVEhfREVDTChzbG93X3BhdGhfdGhyb3dfdGR6X2Vycm9yKQorSlNDX0RFRklORV9DT01N
T05fU0xPV19QQVRIKHNsb3dfcGF0aF90aHJvd190ZHpfZXJyb3IpCiB7CiAgICAgQkVHSU4oKTsK
ICAgICBUSFJPVyhjcmVhdGVURFpFcnJvcihnbG9iYWxPYmplY3QpKTsKIH0KIAotU0xPV19QQVRI
X0RFQ0woc2xvd19wYXRoX2NoZWNrX3RkeikKK0pTQ19ERUZJTkVfQ09NTU9OX1NMT1dfUEFUSChz
bG93X3BhdGhfY2hlY2tfdGR6KQogewogICAgIEJFR0lOKCk7CiAgICAgVEhST1coY3JlYXRlVERa
RXJyb3IoZ2xvYmFsT2JqZWN0KSk7CiB9CiAKLVNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF90aHJv
d19zdHJpY3RfbW9kZV9yZWFkb25seV9wcm9wZXJ0eV93cml0ZV9lcnJvcikKK0pTQ19ERUZJTkVf
Q09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfdGhyb3dfc3RyaWN0X21vZGVfcmVhZG9ubHlfcHJv
cGVydHlfd3JpdGVfZXJyb3IpCiB7CiAgICAgQkVHSU4oKTsKICAgICBUSFJPVyhjcmVhdGVUeXBl
RXJyb3IoZ2xvYmFsT2JqZWN0LCBSZWFkb25seVByb3BlcnR5V3JpdGVFcnJvcikpOwogfQogCi1T
TE9XX1BBVEhfREVDTChzbG93X3BhdGhfbm90KQorSlNDX0RFRklORV9DT01NT05fU0xPV19QQVRI
KHNsb3dfcGF0aF9ub3QpCiB7CiAgICAgQkVHSU4oKTsKICAgICBhdXRvIGJ5dGVjb2RlID0gcGMt
PmFzPE9wTm90PigpOwogICAgIFJFVFVSTihqc0Jvb2xlYW4oIUdFVF9DKGJ5dGVjb2RlLm1fb3Bl
cmFuZCkuanNWYWx1ZSgpLnRvQm9vbGVhbihnbG9iYWxPYmplY3QpKSk7CiB9CiAKLVNMT1dfUEFU
SF9ERUNMKHNsb3dfcGF0aF9lcSkKK0pTQ19ERUZJTkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3Bh
dGhfZXEpCiB7CiAgICAgQkVHSU4oKTsKICAgICBhdXRvIGJ5dGVjb2RlID0gcGMtPmFzPE9wRXE+
KCk7CiAgICAgUkVUVVJOKGpzQm9vbGVhbihKU1ZhbHVlOjplcXVhbChnbG9iYWxPYmplY3QsIEdF
VF9DKGJ5dGVjb2RlLm1fbGhzKS5qc1ZhbHVlKCksIEdFVF9DKGJ5dGVjb2RlLm1fcmhzKS5qc1Zh
bHVlKCkpKSk7CiB9CiAKLVNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF9uZXEpCitKU0NfREVGSU5F
X0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX25lcSkKIHsKICAgICBCRUdJTigpOwogICAgIGF1
dG8gYnl0ZWNvZGUgPSBwYy0+YXM8T3BOZXE+KCk7CiAgICAgUkVUVVJOKGpzQm9vbGVhbighSlNW
YWx1ZTo6ZXF1YWwoZ2xvYmFsT2JqZWN0LCBHRVRfQyhieXRlY29kZS5tX2xocykuanNWYWx1ZSgp
LCBHRVRfQyhieXRlY29kZS5tX3JocykuanNWYWx1ZSgpKSkpOwogfQogCi1TTE9XX1BBVEhfREVD
TChzbG93X3BhdGhfc3RyaWN0ZXEpCitKU0NfREVGSU5FX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19w
YXRoX3N0cmljdGVxKQogewogICAgIEJFR0lOKCk7CiAgICAgYXV0byBieXRlY29kZSA9IHBjLT5h
czxPcFN0cmljdGVxPigpOwogICAgIFJFVFVSTihqc0Jvb2xlYW4oSlNWYWx1ZTo6c3RyaWN0RXF1
YWwoZ2xvYmFsT2JqZWN0LCBHRVRfQyhieXRlY29kZS5tX2xocykuanNWYWx1ZSgpLCBHRVRfQyhi
eXRlY29kZS5tX3JocykuanNWYWx1ZSgpKSkpOwogfQogCi1TTE9XX1BBVEhfREVDTChzbG93X3Bh
dGhfbnN0cmljdGVxKQorSlNDX0RFRklORV9DT01NT05fU0xPV19QQVRIKHNsb3dfcGF0aF9uc3Ry
aWN0ZXEpCiB7CiAgICAgQkVHSU4oKTsKICAgICBhdXRvIGJ5dGVjb2RlID0gcGMtPmFzPE9wTnN0
cmljdGVxPigpOwogICAgIFJFVFVSTihqc0Jvb2xlYW4oIUpTVmFsdWU6OnN0cmljdEVxdWFsKGds
b2JhbE9iamVjdCwgR0VUX0MoYnl0ZWNvZGUubV9saHMpLmpzVmFsdWUoKSwgR0VUX0MoYnl0ZWNv
ZGUubV9yaHMpLmpzVmFsdWUoKSkpKTsKIH0KIAotU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX2xl
c3MpCitKU0NfREVGSU5FX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX2xlc3MpCiB7CiAgICAg
QkVHSU4oKTsKICAgICBhdXRvIGJ5dGVjb2RlID0gcGMtPmFzPE9wTGVzcz4oKTsKICAgICBSRVRV
Uk4oanNCb29sZWFuKGpzTGVzczx0cnVlPihnbG9iYWxPYmplY3QsIEdFVF9DKGJ5dGVjb2RlLm1f
bGhzKS5qc1ZhbHVlKCksIEdFVF9DKGJ5dGVjb2RlLm1fcmhzKS5qc1ZhbHVlKCkpKSk7CiB9CiAK
LVNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF9sZXNzZXEpCitKU0NfREVGSU5FX0NPTU1PTl9TTE9X
X1BBVEgoc2xvd19wYXRoX2xlc3NlcSkKIHsKICAgICBCRUdJTigpOwogICAgIGF1dG8gYnl0ZWNv
ZGUgPSBwYy0+YXM8T3BMZXNzZXE+KCk7CiAgICAgUkVUVVJOKGpzQm9vbGVhbihqc0xlc3NFcTx0
cnVlPihnbG9iYWxPYmplY3QsIEdFVF9DKGJ5dGVjb2RlLm1fbGhzKS5qc1ZhbHVlKCksIEdFVF9D
KGJ5dGVjb2RlLm1fcmhzKS5qc1ZhbHVlKCkpKSk7CiB9CiAKLVNMT1dfUEFUSF9ERUNMKHNsb3df
cGF0aF9ncmVhdGVyKQorSlNDX0RFRklORV9DT01NT05fU0xPV19QQVRIKHNsb3dfcGF0aF9ncmVh
dGVyKQogewogICAgIEJFR0lOKCk7CiAgICAgYXV0byBieXRlY29kZSA9IHBjLT5hczxPcEdyZWF0
ZXI+KCk7CiAgICAgUkVUVVJOKGpzQm9vbGVhbihqc0xlc3M8ZmFsc2U+KGdsb2JhbE9iamVjdCwg
R0VUX0MoYnl0ZWNvZGUubV9yaHMpLmpzVmFsdWUoKSwgR0VUX0MoYnl0ZWNvZGUubV9saHMpLmpz
VmFsdWUoKSkpKTsKIH0KIAotU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX2dyZWF0ZXJlcSkKK0pT
Q19ERUZJTkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfZ3JlYXRlcmVxKQogewogICAgIEJF
R0lOKCk7CiAgICAgYXV0byBieXRlY29kZSA9IHBjLT5hczxPcEdyZWF0ZXJlcT4oKTsKICAgICBS
RVRVUk4oanNCb29sZWFuKGpzTGVzc0VxPGZhbHNlPihnbG9iYWxPYmplY3QsIEdFVF9DKGJ5dGVj
b2RlLm1fcmhzKS5qc1ZhbHVlKCksIEdFVF9DKGJ5dGVjb2RlLm1fbGhzKS5qc1ZhbHVlKCkpKSk7
CiB9CiAKLVNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF9pbmMpCitKU0NfREVGSU5FX0NPTU1PTl9T
TE9XX1BBVEgoc2xvd19wYXRoX2luYykKIHsKICAgICBCRUdJTigpOwogICAgIGF1dG8gYnl0ZWNv
ZGUgPSBwYy0+YXM8T3BJbmM+KCk7CkBAIC00NjIsNyArNDYyLDcgQEAgU0xPV19QQVRIX0RFQ0wo
c2xvd19wYXRoX2luYykKICAgICBSRVRVUk5fV0lUSF9QUk9GSUxJTkdfQ1VTVE9NKGJ5dGVjb2Rl
Lm1fc3JjRHN0LCByZXN1bHQsIHsgfSk7CiB9CiAKLVNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF9k
ZWMpCitKU0NfREVGSU5FX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX2RlYykKIHsKICAgICBC
RUdJTigpOwogICAgIGF1dG8gYnl0ZWNvZGUgPSBwYy0+YXM8T3BEZWM+KCk7CkBAIC00NzIsNyAr
NDcyLDcgQEAgU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX2RlYykKICAgICBSRVRVUk5fV0lUSF9Q
Uk9GSUxJTkdfQ1VTVE9NKGJ5dGVjb2RlLm1fc3JjRHN0LCByZXN1bHQsIHsgfSk7CiB9CiAKLVNM
T1dfUEFUSF9ERUNMKHNsb3dfcGF0aF90b19zdHJpbmcpCitKU0NfREVGSU5FX0NPTU1PTl9TTE9X
X1BBVEgoc2xvd19wYXRoX3RvX3N0cmluZykKIHsKICAgICBCRUdJTigpOwogICAgIGF1dG8gYnl0
ZWNvZGUgPSBwYy0+YXM8T3BUb1N0cmluZz4oKTsKQEAgLTUxOSw3ICs1MTksNyBAQCBzdGF0aWMg
dm9pZCB1cGRhdGVBcml0aFByb2ZpbGVGb3JVbmFyeUFyaXRoT3AoT3BOZWdhdGU6Ok1ldGFkYXRh
JiBtZXRhZGF0YSwgSlNWYQogc3RhdGljIHZvaWQgdXBkYXRlQXJpdGhQcm9maWxlRm9yVW5hcnlB
cml0aE9wKE9wTmVnYXRlOjpNZXRhZGF0YSYsIEpTVmFsdWUsIEpTVmFsdWUpIHsgfQogI2VuZGlm
CiAKLVNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF9uZWdhdGUpCitKU0NfREVGSU5FX0NPTU1PTl9T
TE9XX1BBVEgoc2xvd19wYXRoX25lZ2F0ZSkKIHsKICAgICBCRUdJTigpOwogICAgIGF1dG8gYnl0
ZWNvZGUgPSBwYy0+YXM8T3BOZWdhdGU+KCk7CkBAIC01OTEsNyArNTkxLDcgQEAgc3RhdGljIHZv
aWQgdXBkYXRlQXJpdGhQcm9maWxlRm9yQmluYXJ5QXJpdGhPcChKU0dsb2JhbE9iamVjdCosIENv
ZGVCbG9jayogY29kZUIKIHN0YXRpYyB2b2lkIHVwZGF0ZUFyaXRoUHJvZmlsZUZvckJpbmFyeUFy
aXRoT3AoSlNHbG9iYWxPYmplY3QqLCBDb2RlQmxvY2sqLCBjb25zdCBJbnN0cnVjdGlvbiosIEpT
VmFsdWUsIEpTVmFsdWUsIEpTVmFsdWUpIHsgfQogI2VuZGlmCiAKLVNMT1dfUEFUSF9ERUNMKHNs
b3dfcGF0aF90b19udW1iZXIpCitKU0NfREVGSU5FX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRo
X3RvX251bWJlcikKIHsKICAgICBCRUdJTigpOwogICAgIGF1dG8gYnl0ZWNvZGUgPSBwYy0+YXM8
T3BUb051bWJlcj4oKTsKQEAgLTYwMCw3ICs2MDAsNyBAQCBTTE9XX1BBVEhfREVDTChzbG93X3Bh
dGhfdG9fbnVtYmVyKQogICAgIFJFVFVSTl9QUk9GSUxFRChyZXN1bHQpOwogfQogCi1TTE9XX1BB
VEhfREVDTChzbG93X3BhdGhfdG9fbnVtZXJpYykKK0pTQ19ERUZJTkVfQ09NTU9OX1NMT1dfUEFU
SChzbG93X3BhdGhfdG9fbnVtZXJpYykKIHsKICAgICBCRUdJTigpOwogICAgIGF1dG8gYnl0ZWNv
ZGUgPSBwYy0+YXM8T3BUb051bWVyaWM+KCk7CkBAIC02MTAsNyArNjEwLDcgQEAgU0xPV19QQVRI
X0RFQ0woc2xvd19wYXRoX3RvX251bWVyaWMpCiAgICAgUkVUVVJOX1BST0ZJTEVEKHJlc3VsdCk7
CiB9CiAKLVNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF90b19vYmplY3QpCitKU0NfREVGSU5FX0NP
TU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX3RvX29iamVjdCkKIHsKICAgICBCRUdJTigpOwogICAg
IGF1dG8gYnl0ZWNvZGUgPSBwYy0+YXM8T3BUb09iamVjdD4oKTsKQEAgLTYyNCw3ICs2MjQsNyBA
QCBTTE9XX1BBVEhfREVDTChzbG93X3BhdGhfdG9fb2JqZWN0KQogICAgIFJFVFVSTl9QUk9GSUxF
RChyZXN1bHQpOwogfQogCi1TTE9XX1BBVEhfREVDTChzbG93X3BhdGhfYWRkKQorSlNDX0RFRklO
RV9DT01NT05fU0xPV19QQVRIKHNsb3dfcGF0aF9hZGQpCiB7CiAgICAgQkVHSU4oKTsKICAgICBh
dXRvIGJ5dGVjb2RlID0gcGMtPmFzPE9wQWRkPigpOwpAQCAtNjQ1LDcgKzY0NSw3IEBAIFNMT1df
UEFUSF9ERUNMKHNsb3dfcGF0aF9hZGQpCiAvLyB0b051bWVyaWMvdG9CaWdJbnRPckludDMyKCkg
b24gdGhlaXIgb3BlcmFuZHMgaW4gb3JkZXIuICAoQSBjYWxsIHRvIHRoZXNlIGlzIGlkZW1wb3Rl
bnQKIC8vIGlmIGFuIGV4Y2VwdGlvbiBpcyBhbHJlYWR5IHNldCBvbiB0aGUgQ2FsbEZyYW1lLikK
IAotU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX211bCkKK0pTQ19ERUZJTkVfQ09NTU9OX1NMT1df
UEFUSChzbG93X3BhdGhfbXVsKQogewogICAgIEJFR0lOKCk7CiAgICAgYXV0byBieXRlY29kZSA9
IHBjLT5hczxPcE11bD4oKTsKQEAgLTY1OCw3ICs2NTgsNyBAQCBTTE9XX1BBVEhfREVDTChzbG93
X3BhdGhfbXVsKQogICAgIH0pOwogfQogCi1TTE9XX1BBVEhfREVDTChzbG93X3BhdGhfc3ViKQor
SlNDX0RFRklORV9DT01NT05fU0xPV19QQVRIKHNsb3dfcGF0aF9zdWIpCiB7CiAgICAgQkVHSU4o
KTsKICAgICBhdXRvIGJ5dGVjb2RlID0gcGMtPmFzPE9wU3ViPigpOwpAQCAtNjcxLDcgKzY3MSw3
IEBAIFNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF9zdWIpCiAgICAgfSk7CiB9CiAKLVNMT1dfUEFU
SF9ERUNMKHNsb3dfcGF0aF9kaXYpCitKU0NfREVGSU5FX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19w
YXRoX2RpdikKIHsKICAgICBCRUdJTigpOwogICAgIGF1dG8gYnl0ZWNvZGUgPSBwYy0+YXM8T3BE
aXY+KCk7CkBAIC02ODQsNyArNjg0LDcgQEAgU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX2RpdikK
ICAgICB9KTsKIH0KIAotU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX21vZCkKK0pTQ19ERUZJTkVf
Q09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfbW9kKQogewogICAgIEJFR0lOKCk7CiAgICAgYXV0
byBieXRlY29kZSA9IHBjLT5hczxPcE1vZD4oKTsKQEAgLTY5NSw3ICs2OTUsNyBAQCBTTE9XX1BB
VEhfREVDTChzbG93X3BhdGhfbW9kKQogICAgIFJFVFVSTihyZXN1bHQpOwogfQogCi1TTE9XX1BB
VEhfREVDTChzbG93X3BhdGhfcG93KQorSlNDX0RFRklORV9DT01NT05fU0xPV19QQVRIKHNsb3df
cGF0aF9wb3cpCiB7CiAgICAgQkVHSU4oKTsKICAgICBhdXRvIGJ5dGVjb2RlID0gcGMtPmFzPE9w
UG93PigpOwpAQCAtNzA2LDcgKzcwNiw3IEBAIFNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF9wb3cp
CiAgICAgUkVUVVJOKHJlc3VsdCk7CiB9CiAKLVNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF9sc2hp
ZnQpCitKU0NfREVGSU5FX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX2xzaGlmdCkKIHsKICAg
ICBCRUdJTigpOwogICAgIGF1dG8gYnl0ZWNvZGUgPSBwYy0+YXM8T3BMc2hpZnQ+KCk7CkBAIC03
MTgsNyArNzE4LDcgQEAgU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX2xzaGlmdCkKICAgICBSRVRV
Uk5fUFJPRklMRUQocmVzdWx0KTsKIH0KIAotU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX3JzaGlm
dCkKK0pTQ19ERUZJTkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfcnNoaWZ0KQogewogICAg
IEJFR0lOKCk7CiAgICAgYXV0byBieXRlY29kZSA9IHBjLT5hczxPcFJzaGlmdD4oKTsKQEAgLTcz
MCw3ICs3MzAsNyBAQCBTTE9XX1BBVEhfREVDTChzbG93X3BhdGhfcnNoaWZ0KQogICAgIFJFVFVS
Tl9QUk9GSUxFRChyZXN1bHQpOwogfQogCi1TTE9XX1BBVEhfREVDTChzbG93X3BhdGhfdXJzaGlm
dCkKK0pTQ19ERUZJTkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfdXJzaGlmdCkKIHsKICAg
ICBCRUdJTigpOwogICAgIGF1dG8gYnl0ZWNvZGUgPSBwYy0+YXM8T3BVcnNoaWZ0PigpOwpAQCAt
NzQyLDcgKzc0Miw3IEBAIFNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF91cnNoaWZ0KQogICAgIFJF
VFVSTihyZXN1bHQpOwogfQogCi1TTE9XX1BBVEhfREVDTChzbG93X3BhdGhfdW5zaWduZWQpCitK
U0NfREVGSU5FX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX3Vuc2lnbmVkKQogewogICAgIEJF
R0lOKCk7CiAgICAgYXV0byBieXRlY29kZSA9IHBjLT5hczxPcFVuc2lnbmVkPigpOwpAQCAtNzUw
LDcgKzc1MCw3IEBAIFNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF91bnNpZ25lZCkKICAgICBSRVRV
Uk4oanNOdW1iZXIoYSkpOwogfQogCi1TTE9XX1BBVEhfREVDTChzbG93X3BhdGhfYml0bm90KQor
SlNDX0RFRklORV9DT01NT05fU0xPV19QQVRIKHNsb3dfcGF0aF9iaXRub3QpCiB7CiAgICAgQkVH
SU4oKTsKICAgICBhdXRvIGJ5dGVjb2RlID0gcGMtPmFzPE9wQml0bm90PigpOwpAQCAtNzYxLDcg
Kzc2MSw3IEBAIFNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF9iaXRub3QpCiAgICAgUkVUVVJOX1BS
T0ZJTEVEKHJlc3VsdCk7CiB9CiAKLVNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF9iaXRhbmQpCitK
U0NfREVGSU5FX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX2JpdGFuZCkKIHsKICAgICBCRUdJ
TigpOwogICAgIGF1dG8gYnl0ZWNvZGUgPSBwYy0+YXM8T3BCaXRhbmQ+KCk7CkBAIC03NzMsNyAr
NzczLDcgQEAgU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX2JpdGFuZCkKICAgICBSRVRVUk5fUFJP
RklMRUQocmVzdWx0KTsKIH0KIAotU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX2JpdG9yKQorSlND
X0RFRklORV9DT01NT05fU0xPV19QQVRIKHNsb3dfcGF0aF9iaXRvcikKIHsKICAgICBCRUdJTigp
OwogICAgIGF1dG8gYnl0ZWNvZGUgPSBwYy0+YXM8T3BCaXRvcj4oKTsKQEAgLTc4NSw3ICs3ODUs
NyBAQCBTTE9XX1BBVEhfREVDTChzbG93X3BhdGhfYml0b3IpCiAgICAgUkVUVVJOX1BST0ZJTEVE
KHJlc3VsdCk7CiB9CiAKLVNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF9iaXR4b3IpCitKU0NfREVG
SU5FX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX2JpdHhvcikKIHsKICAgICBCRUdJTigpOwog
ICAgIGF1dG8gYnl0ZWNvZGUgPSBwYy0+YXM8T3BCaXR4b3I+KCk7CkBAIC03OTcsNDIgKzc5Nyw0
MiBAQCBTTE9XX1BBVEhfREVDTChzbG93X3BhdGhfYml0eG9yKQogICAgIFJFVFVSTl9QUk9GSUxF
RChyZXN1bHQpOwogfQogCi1TTE9XX1BBVEhfREVDTChzbG93X3BhdGhfdHlwZW9mKQorSlNDX0RF
RklORV9DT01NT05fU0xPV19QQVRIKHNsb3dfcGF0aF90eXBlb2YpCiB7CiAgICAgQkVHSU4oKTsK
ICAgICBhdXRvIGJ5dGVjb2RlID0gcGMtPmFzPE9wVHlwZW9mPigpOwogICAgIFJFVFVSTihqc1R5
cGVTdHJpbmdGb3JWYWx1ZShnbG9iYWxPYmplY3QsIEdFVF9DKGJ5dGVjb2RlLm1fdmFsdWUpLmpz
VmFsdWUoKSkpOwogfQogCi1TTE9XX1BBVEhfREVDTChzbG93X3BhdGhfdHlwZW9mX2lzX29iamVj
dCkKK0pTQ19ERUZJTkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfdHlwZW9mX2lzX29iamVj
dCkKIHsKICAgICBCRUdJTigpOwogICAgIGF1dG8gYnl0ZWNvZGUgPSBwYy0+YXM8T3BUeXBlb2ZJ
c09iamVjdD4oKTsKICAgICBSRVRVUk4oanNCb29sZWFuKGpzVHlwZW9mSXNPYmplY3QoZ2xvYmFs
T2JqZWN0LCBHRVRfQyhieXRlY29kZS5tX29wZXJhbmQpLmpzVmFsdWUoKSkpKTsKIH0KIAotU0xP
V19QQVRIX0RFQ0woc2xvd19wYXRoX3R5cGVvZl9pc19mdW5jdGlvbikKK0pTQ19ERUZJTkVfQ09N
TU9OX1NMT1dfUEFUSChzbG93X3BhdGhfdHlwZW9mX2lzX2Z1bmN0aW9uKQogewogICAgIEJFR0lO
KCk7CiAgICAgYXV0byBieXRlY29kZSA9IHBjLT5hczxPcFR5cGVvZklzRnVuY3Rpb24+KCk7CiAg
ICAgUkVUVVJOKGpzQm9vbGVhbihqc1R5cGVvZklzRnVuY3Rpb24oZ2xvYmFsT2JqZWN0LCBHRVRf
QyhieXRlY29kZS5tX29wZXJhbmQpLmpzVmFsdWUoKSkpKTsKIH0KIAotU0xPV19QQVRIX0RFQ0wo
c2xvd19wYXRoX2lzX2NhbGxhYmxlKQorSlNDX0RFRklORV9DT01NT05fU0xPV19QQVRIKHNsb3df
cGF0aF9pc19jYWxsYWJsZSkKIHsKICAgICBCRUdJTigpOwogICAgIGF1dG8gYnl0ZWNvZGUgPSBw
Yy0+YXM8T3BJc0NhbGxhYmxlPigpOwogICAgIFJFVFVSTihqc0Jvb2xlYW4oR0VUX0MoYnl0ZWNv
ZGUubV9vcGVyYW5kKS5qc1ZhbHVlKCkuaXNDYWxsYWJsZSh2bSkpKTsKIH0KIAotU0xPV19QQVRI
X0RFQ0woc2xvd19wYXRoX2lzX2NvbnN0cnVjdG9yKQorSlNDX0RFRklORV9DT01NT05fU0xPV19Q
QVRIKHNsb3dfcGF0aF9pc19jb25zdHJ1Y3RvcikKIHsKICAgICBCRUdJTigpOwogICAgIGF1dG8g
Ynl0ZWNvZGUgPSBwYy0+YXM8T3BJc0NvbnN0cnVjdG9yPigpOwogICAgIFJFVFVSTihqc0Jvb2xl
YW4oR0VUX0MoYnl0ZWNvZGUubV9vcGVyYW5kKS5qc1ZhbHVlKCkuaXNDb25zdHJ1Y3Rvcih2bSkp
KTsKIH0KIAotU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX2luX2J5X3ZhbCkKK0pTQ19ERUZJTkVf
Q09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfaW5fYnlfdmFsKQogewogICAgIEJFR0lOKCk7CiAg
ICAgYXV0byBieXRlY29kZSA9IHBjLT5hczxPcEluQnlWYWw+KCk7CkBAIC04NDAsNyArODQwLDcg
QEAgU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX2luX2J5X3ZhbCkKICAgICBSRVRVUk4oanNCb29s
ZWFuKENvbW1vblNsb3dQYXRoczo6b3BJbkJ5VmFsKGdsb2JhbE9iamVjdCwgR0VUX0MoYnl0ZWNv
ZGUubV9iYXNlKS5qc1ZhbHVlKCksIEdFVF9DKGJ5dGVjb2RlLm1fcHJvcGVydHkpLmpzVmFsdWUo
KSwgJm1ldGFkYXRhLm1fYXJyYXlQcm9maWxlKSkpOwogfQogCi1TTE9XX1BBVEhfREVDTChzbG93
X3BhdGhfaW5fYnlfaWQpCitKU0NfREVGSU5FX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX2lu
X2J5X2lkKQogewogICAgIEJFR0lOKCk7CiAKQEAgLTg1Myw3ICs4NTMsNyBAQCBTTE9XX1BBVEhf
REVDTChzbG93X3BhdGhfaW5fYnlfaWQpCiB9CiAKIHRlbXBsYXRlPE9wY29kZVNpemUgd2lkdGg+
Ci1TbG93UGF0aFJldHVyblR5cGUgU0xPV19QQVRIIGl0ZXJhdG9yX29wZW5fdHJ5X2Zhc3QoQ2Fs
bEZyYW1lKiBjYWxsRnJhbWUsIGNvbnN0IEluc3RydWN0aW9uKiBwYykKK0FMV0FZU19JTkxJTkUg
U2xvd1BhdGhSZXR1cm5UeXBlIGl0ZXJhdG9yT3BlblRyeUZhc3RJbXBsKENhbGxGcmFtZSogY2Fs
bEZyYW1lLCBjb25zdCBJbnN0cnVjdGlvbiogcGMpCiB7CiAgICAgLy8gRG9uJ3Qgc2V0IFBDOyB3
ZSBjYW4ndCB0aHJvdyBhbmQgaXQncyByZWxhdGl2ZWx5IHNsb3cuCiAgICAgQkVHSU5fTk9fU0VU
X1BDKCk7CkBAIC04OTgsMjMgKzg5OCwyMyBAQCBTbG93UGF0aFJldHVyblR5cGUgU0xPV19QQVRI
IGl0ZXJhdG9yX29wZW5fdHJ5X2Zhc3QoQ2FsbEZyYW1lKiBjYWxsRnJhbWUsIGNvbnN0CiAgICAg
cmV0dXJuIGVuY29kZVJlc3VsdChwYywgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oSXRlcmF0aW9u
TW9kZTo6R2VuZXJpYykpOwogfQogCi1TTE9XX1BBVEhfREVDTChpdGVyYXRvcl9vcGVuX3RyeV9m
YXN0X25hcnJvdykKK0pTQ19ERUZJTkVfQ09NTU9OX1NMT1dfUEFUSChpdGVyYXRvcl9vcGVuX3Ry
eV9mYXN0X25hcnJvdykKIHsKLSAgICByZXR1cm4gaXRlcmF0b3Jfb3Blbl90cnlfZmFzdDxOYXJy
b3c+KGNhbGxGcmFtZSwgcGMpOworICAgIHJldHVybiBpdGVyYXRvck9wZW5UcnlGYXN0SW1wbDxO
YXJyb3c+KGNhbGxGcmFtZSwgcGMpOwogfQogCi1TTE9XX1BBVEhfREVDTChpdGVyYXRvcl9vcGVu
X3RyeV9mYXN0X3dpZGUxNikKK0pTQ19ERUZJTkVfQ09NTU9OX1NMT1dfUEFUSChpdGVyYXRvcl9v
cGVuX3RyeV9mYXN0X3dpZGUxNikKIHsKLSAgICByZXR1cm4gaXRlcmF0b3Jfb3Blbl90cnlfZmFz
dDxXaWRlMTY+KGNhbGxGcmFtZSwgcGMpOworICAgIHJldHVybiBpdGVyYXRvck9wZW5UcnlGYXN0
SW1wbDxXaWRlMTY+KGNhbGxGcmFtZSwgcGMpOwogfQogCi1TTE9XX1BBVEhfREVDTChpdGVyYXRv
cl9vcGVuX3RyeV9mYXN0X3dpZGUzMikKK0pTQ19ERUZJTkVfQ09NTU9OX1NMT1dfUEFUSChpdGVy
YXRvcl9vcGVuX3RyeV9mYXN0X3dpZGUzMikKIHsKLSAgICByZXR1cm4gaXRlcmF0b3Jfb3Blbl90
cnlfZmFzdDxXaWRlMzI+KGNhbGxGcmFtZSwgcGMpOworICAgIHJldHVybiBpdGVyYXRvck9wZW5U
cnlGYXN0SW1wbDxXaWRlMzI+KGNhbGxGcmFtZSwgcGMpOwogfQogCiB0ZW1wbGF0ZTxPcGNvZGVT
aXplIHdpZHRoPgotU2xvd1BhdGhSZXR1cm5UeXBlIFNMT1dfUEFUSCBpdGVyYXRvcl9uZXh0X3Ry
eV9mYXN0KENhbGxGcmFtZSogY2FsbEZyYW1lLCBjb25zdCBJbnN0cnVjdGlvbiogcGMpCitBTFdB
WVNfSU5MSU5FIFNsb3dQYXRoUmV0dXJuVHlwZSBpdGVyYXRvck5leHRUcnlGYXN0SW1wbChDYWxs
RnJhbWUqIGNhbGxGcmFtZSwgY29uc3QgSW5zdHJ1Y3Rpb24qIHBjKQogewogICAgIEJFR0lOKCk7
CiAKQEAgLTk1NSwyMiArOTU1LDIyIEBAIFNsb3dQYXRoUmV0dXJuVHlwZSBTTE9XX1BBVEggaXRl
cmF0b3JfbmV4dF90cnlfZmFzdChDYWxsRnJhbWUqIGNhbGxGcmFtZSwgY29uc3QKICAgICBSRUxF
QVNFX0FTU0VSVF9OT1RfUkVBQ0hFRCgpOwogfQogCi1TTE9XX1BBVEhfREVDTChpdGVyYXRvcl9u
ZXh0X3RyeV9mYXN0X25hcnJvdykKK0pTQ19ERUZJTkVfQ09NTU9OX1NMT1dfUEFUSChpdGVyYXRv
cl9uZXh0X3RyeV9mYXN0X25hcnJvdykKIHsKLSAgICByZXR1cm4gaXRlcmF0b3JfbmV4dF90cnlf
ZmFzdDxOYXJyb3c+KGNhbGxGcmFtZSwgcGMpOworICAgIHJldHVybiBpdGVyYXRvck5leHRUcnlG
YXN0SW1wbDxOYXJyb3c+KGNhbGxGcmFtZSwgcGMpOwogfQogCi1TTE9XX1BBVEhfREVDTChpdGVy
YXRvcl9uZXh0X3RyeV9mYXN0X3dpZGUxNikKK0pTQ19ERUZJTkVfQ09NTU9OX1NMT1dfUEFUSChp
dGVyYXRvcl9uZXh0X3RyeV9mYXN0X3dpZGUxNikKIHsKLSAgICByZXR1cm4gaXRlcmF0b3JfbmV4
dF90cnlfZmFzdDxXaWRlMTY+KGNhbGxGcmFtZSwgcGMpOworICAgIHJldHVybiBpdGVyYXRvck5l
eHRUcnlGYXN0SW1wbDxXaWRlMTY+KGNhbGxGcmFtZSwgcGMpOwogfQogCi1TTE9XX1BBVEhfREVD
TChpdGVyYXRvcl9uZXh0X3RyeV9mYXN0X3dpZGUzMikKK0pTQ19ERUZJTkVfQ09NTU9OX1NMT1df
UEFUSChpdGVyYXRvcl9uZXh0X3RyeV9mYXN0X3dpZGUzMikKIHsKLSAgICByZXR1cm4gaXRlcmF0
b3JfbmV4dF90cnlfZmFzdDxXaWRlMzI+KGNhbGxGcmFtZSwgcGMpOworICAgIHJldHVybiBpdGVy
YXRvck5leHRUcnlGYXN0SW1wbDxXaWRlMzI+KGNhbGxGcmFtZSwgcGMpOwogfQogCi1TTE9XX1BB
VEhfREVDTChzbG93X3BhdGhfZGVsX2J5X3ZhbCkKK0pTQ19ERUZJTkVfQ09NTU9OX1NMT1dfUEFU
SChzbG93X3BhdGhfZGVsX2J5X3ZhbCkKIHsKICAgICBCRUdJTigpOwogICAgIGF1dG8gYnl0ZWNv
ZGUgPSBwYy0+YXM8T3BEZWxCeVZhbD4oKTsKQEAgLTk5OSwzNSArOTk5LDM1IEBAIFNMT1dfUEFU
SF9ERUNMKHNsb3dfcGF0aF9kZWxfYnlfdmFsKQogICAgIFJFVFVSTihqc0Jvb2xlYW4oY291bGRE
ZWxldGUpKTsKIH0KIAotU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX3N0cmNhdCkKK0pTQ19ERUZJ
TkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfc3RyY2F0KQogewogICAgIEJFR0lOKCk7CiAg
ICAgYXV0byBieXRlY29kZSA9IHBjLT5hczxPcFN0cmNhdD4oKTsKICAgICBSRVRVUk4oanNTdHJp
bmdGcm9tUmVnaXN0ZXJBcnJheShnbG9iYWxPYmplY3QsICZHRVQoYnl0ZWNvZGUubV9zcmMpLCBi
eXRlY29kZS5tX2NvdW50KSk7CiB9CiAKLVNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF90b19wcmlt
aXRpdmUpCitKU0NfREVGSU5FX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX3RvX3ByaW1pdGl2
ZSkKIHsKICAgICBCRUdJTigpOwogICAgIGF1dG8gYnl0ZWNvZGUgPSBwYy0+YXM8T3BUb1ByaW1p
dGl2ZT4oKTsKICAgICBSRVRVUk4oR0VUX0MoYnl0ZWNvZGUubV9zcmMpLmpzVmFsdWUoKS50b1By
aW1pdGl2ZShnbG9iYWxPYmplY3QpKTsKIH0KIAotU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX2Vu
dGVyKQorSlNDX0RFRklORV9DT01NT05fU0xPV19QQVRIKHNsb3dfcGF0aF9lbnRlcikKIHsKICAg
ICBCRUdJTigpOwogICAgIEhlYXA6OmhlYXAoY29kZUJsb2NrKS0+d3JpdGVCYXJyaWVyKGNvZGVC
bG9jayk7CiAgICAgRU5EKCk7CiB9CiAKLVNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF90b19wcm9w
ZXJ0eV9rZXkpCitKU0NfREVGSU5FX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX3RvX3Byb3Bl
cnR5X2tleSkKIHsKICAgICBCRUdJTigpOwogICAgIGF1dG8gYnl0ZWNvZGUgPSBwYy0+YXM8T3BU
b1Byb3BlcnR5S2V5PigpOwogICAgIFJFVFVSTihHRVRfQyhieXRlY29kZS5tX3NyYykuanNWYWx1
ZSgpLnRvUHJvcGVydHlLZXlWYWx1ZShnbG9iYWxPYmplY3QpKTsKIH0KIAotU0xPV19QQVRIX0RF
Q0woc2xvd19wYXRoX2dldF9lbnVtZXJhYmxlX2xlbmd0aCkKK0pTQ19ERUZJTkVfQ09NTU9OX1NM
T1dfUEFUSChzbG93X3BhdGhfZ2V0X2VudW1lcmFibGVfbGVuZ3RoKQogewogICAgIEJFR0lOKCk7
CiAgICAgYXV0byBieXRlY29kZSA9IHBjLT5hczxPcEdldEVudW1lcmFibGVMZW5ndGg+KCk7CkBA
IC0xMDQwLDcgKzEwNDAsNyBAQCBTTE9XX1BBVEhfREVDTChzbG93X3BhdGhfZ2V0X2VudW1lcmFi
bGVfbGVuZ3RoKQogICAgIFJFVFVSTihqc051bWJlcihlbnVtZXJhdG9yLT5pbmRleGVkTGVuZ3Ro
KCkpKTsKIH0KIAotU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX2hhc19pbmRleGVkX3Byb3BlcnR5
KQorSlNDX0RFRklORV9DT01NT05fU0xPV19QQVRIKHNsb3dfcGF0aF9oYXNfaW5kZXhlZF9wcm9w
ZXJ0eSkKIHsKICAgICBCRUdJTigpOwogICAgIGF1dG8gYnl0ZWNvZGUgPSBwYy0+YXM8T3BIYXNJ
bmRleGVkUHJvcGVydHk+KCk7CkBAIC0xMDUzLDcgKzEwNTMsNyBAQCBTTE9XX1BBVEhfREVDTChz
bG93X3BhdGhfaGFzX2luZGV4ZWRfcHJvcGVydHkpCiAgICAgUkVUVVJOKGpzQm9vbGVhbihiYXNl
LT5oYXNQcm9wZXJ0eUdlbmVyaWMoZ2xvYmFsT2JqZWN0LCBwcm9wZXJ0eS5hc1VJbnQzMkFzQW55
SW50KCksIFByb3BlcnR5U2xvdDo6SW50ZXJuYWxNZXRob2RUeXBlOjpHZXRPd25Qcm9wZXJ0eSkp
KTsKIH0KIAotU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX2hhc19zdHJ1Y3R1cmVfcHJvcGVydHkp
CitKU0NfREVGSU5FX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX2hhc19zdHJ1Y3R1cmVfcHJv
cGVydHkpCiB7CiAgICAgQkVHSU4oKTsKICAgICBhdXRvIGJ5dGVjb2RlID0gcGMtPmFzPE9wSGFz
U3RydWN0dXJlUHJvcGVydHk+KCk7CkBAIC0xMDcyLDcgKzEwNzIsNyBAQCBTTE9XX1BBVEhfREVD
TChzbG93X3BhdGhfaGFzX3N0cnVjdHVyZV9wcm9wZXJ0eSkKICAgICBSRVRVUk4oanNCb29sZWFu
KGJhc2UtPmhhc1Byb3BlcnR5R2VuZXJpYyhnbG9iYWxPYmplY3QsIHByb3BlcnR5TmFtZSwgUHJv
cGVydHlTbG90OjpJbnRlcm5hbE1ldGhvZFR5cGU6OkdldE93blByb3BlcnR5KSkpOwogfQogCi1T
TE9XX1BBVEhfREVDTChzbG93X3BhdGhfaGFzX293bl9zdHJ1Y3R1cmVfcHJvcGVydHkpCitKU0Nf
REVGSU5FX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX2hhc19vd25fc3RydWN0dXJlX3Byb3Bl
cnR5KQogewogICAgIEJFR0lOKCk7CiAgICAgYXV0byBieXRlY29kZSA9IHBjLT5hczxPcEhhc093
blN0cnVjdHVyZVByb3BlcnR5PigpOwpAQCAtMTA5Myw3ICsxMDkzLDcgQEAgU0xPV19QQVRIX0RF
Q0woc2xvd19wYXRoX2hhc19vd25fc3RydWN0dXJlX3Byb3BlcnR5KQogICAgIFJFVFVSTihqc0Jv
b2xlYW4ob2JqZWN0UHJvdG90eXBlSGFzT3duUHJvcGVydHkoZ2xvYmFsT2JqZWN0LCBiYXNlLCBw
cm9wZXJ0eU5hbWUpKSk7CiB9CiAKLVNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF9pbl9zdHJ1Y3R1
cmVfcHJvcGVydHkpCitKU0NfREVGSU5FX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX2luX3N0
cnVjdHVyZV9wcm9wZXJ0eSkKIHsKICAgICBCRUdJTigpOwogICAgIGF1dG8gYnl0ZWNvZGUgPSBw
Yy0+YXM8T3BJblN0cnVjdHVyZVByb3BlcnR5PigpOwpAQCAtMTEwOCw3ICsxMTA4LDcgQEAgU0xP
V19QQVRIX0RFQ0woc2xvd19wYXRoX2luX3N0cnVjdHVyZV9wcm9wZXJ0eSkKICAgICBSRVRVUk4o
anNCb29sZWFuKENvbW1vblNsb3dQYXRoczo6b3BJbkJ5VmFsKGdsb2JhbE9iamVjdCwgYmFzZSwg
YXNTdHJpbmcocHJvcGVydHkpKSkpOwogfQogCi1TTE9XX1BBVEhfREVDTChzbG93X3BhdGhfaGFz
X2dlbmVyaWNfcHJvcGVydHkpCitKU0NfREVGSU5FX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRo
X2hhc19nZW5lcmljX3Byb3BlcnR5KQogewogICAgIEJFR0lOKCk7CiAgICAgYXV0byBieXRlY29k
ZSA9IHBjLT5hczxPcEhhc0dlbmVyaWNQcm9wZXJ0eT4oKTsKQEAgLTExMjIsNyArMTEyMiw3IEBA
IFNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF9oYXNfZ2VuZXJpY19wcm9wZXJ0eSkKICAgICBSRVRV
Uk4oanNCb29sZWFuKGJhc2UtPmhhc1Byb3BlcnR5R2VuZXJpYyhnbG9iYWxPYmplY3QsIHByb3Bl
cnR5TmFtZSwgUHJvcGVydHlTbG90OjpJbnRlcm5hbE1ldGhvZFR5cGU6OkdldE93blByb3BlcnR5
KSkpOwogfQogCi1TTE9XX1BBVEhfREVDTChzbG93X3BhdGhfZ2V0X2RpcmVjdF9wbmFtZSkKK0pT
Q19ERUZJTkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfZ2V0X2RpcmVjdF9wbmFtZSkKIHsK
ICAgICBCRUdJTigpOwogICAgIGF1dG8gYnl0ZWNvZGUgPSBwYy0+YXM8T3BHZXREaXJlY3RQbmFt
ZT4oKTsKQEAgLTExMzUsNyArMTEzNSw3IEBAIFNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF9nZXRf
ZGlyZWN0X3BuYW1lKQogICAgIFJFVFVSTihiYXNlVmFsdWUuZ2V0KGdsb2JhbE9iamVjdCwgcHJv
cGVydHlOYW1lKSk7CiB9CiAKLVNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF9nZXRfcHJvcGVydHlf
ZW51bWVyYXRvcikKK0pTQ19ERUZJTkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfZ2V0X3By
b3BlcnR5X2VudW1lcmF0b3IpCiB7CiAgICAgQkVHSU4oKTsKICAgICBhdXRvIGJ5dGVjb2RlID0g
cGMtPmFzPE9wR2V0UHJvcGVydHlFbnVtZXJhdG9yPigpOwpAQCAtMTE0OSw3ICsxMTQ5LDcgQEAg
U0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX2dldF9wcm9wZXJ0eV9lbnVtZXJhdG9yKQogICAgIFJF
VFVSTihwcm9wZXJ0eU5hbWVFbnVtZXJhdG9yKGdsb2JhbE9iamVjdCwgYmFzZSkpOwogfQogCi1T
TE9XX1BBVEhfREVDTChzbG93X3BhdGhfZW51bWVyYXRvcl9zdHJ1Y3R1cmVfcG5hbWUpCitKU0Nf
REVGSU5FX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX2VudW1lcmF0b3Jfc3RydWN0dXJlX3Bu
YW1lKQogewogICAgIEJFR0lOKCk7CiAgICAgYXV0byBieXRlY29kZSA9IHBjLT5hczxPcEVudW1l
cmF0b3JTdHJ1Y3R1cmVQbmFtZT4oKTsKQEAgLTExNjIsNyArMTE2Miw3IEBAIFNMT1dfUEFUSF9E
RUNMKHNsb3dfcGF0aF9lbnVtZXJhdG9yX3N0cnVjdHVyZV9wbmFtZSkKICAgICBSRVRVUk4ocHJv
cGVydHlOYW1lID8gcHJvcGVydHlOYW1lIDoganNOdWxsKCkpOwogfQogCi1TTE9XX1BBVEhfREVD
TChzbG93X3BhdGhfZW51bWVyYXRvcl9nZW5lcmljX3BuYW1lKQorSlNDX0RFRklORV9DT01NT05f
U0xPV19QQVRIKHNsb3dfcGF0aF9lbnVtZXJhdG9yX2dlbmVyaWNfcG5hbWUpCiB7CiAgICAgQkVH
SU4oKTsKICAgICBhdXRvIGJ5dGVjb2RlID0gcGMtPmFzPE9wRW51bWVyYXRvckdlbmVyaWNQbmFt
ZT4oKTsKQEAgLTExNzUsNyArMTE3NSw3IEBAIFNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF9lbnVt
ZXJhdG9yX2dlbmVyaWNfcG5hbWUpCiAgICAgUkVUVVJOKHByb3BlcnR5TmFtZSA/IHByb3BlcnR5
TmFtZSA6IGpzTnVsbCgpKTsKIH0KIAotU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX3RvX2luZGV4
X3N0cmluZykKK0pTQ19ERUZJTkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfdG9faW5kZXhf
c3RyaW5nKQogewogICAgIEJFR0lOKCk7CiAgICAgYXV0byBieXRlY29kZSA9IHBjLT5hczxPcFRv
SW5kZXhTdHJpbmc+KCk7CkBAIC0xMTg0LDIxICsxMTg0LDIxIEBAIFNMT1dfUEFUSF9ERUNMKHNs
b3dfcGF0aF90b19pbmRleF9zdHJpbmcpCiAgICAgUkVUVVJOKGpzU3RyaW5nKHZtLCBJZGVudGlm
aWVyOjpmcm9tKHZtLCBpbmRleFZhbHVlLmFzVUludDMyQXNBbnlJbnQoKSkuc3RyaW5nKCkpKTsK
IH0KIAotU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX3Byb2ZpbGVfdHlwZV9jbGVhcl9sb2cpCitK
U0NfREVGSU5FX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX3Byb2ZpbGVfdHlwZV9jbGVhcl9s
b2cpCiB7CiAgICAgQkVHSU4oKTsKICAgICB2bS50eXBlUHJvZmlsZXJMb2coKS0+cHJvY2Vzc0xv
Z0VudHJpZXModm0sICJMTEludCBsb2cgZnVsbC4iX3MpOwogICAgIEVORCgpOwogfQogCi1TTE9X
X1BBVEhfREVDTChzbG93X3BhdGhfdW5yZWFjaGFibGUpCitKU0NfREVGSU5FX0NPTU1PTl9TTE9X
X1BBVEgoc2xvd19wYXRoX3VucmVhY2hhYmxlKQogewogICAgIEJFR0lOKCk7CiAgICAgVU5SRUFD
SEFCTEVfRk9SX1BMQVRGT1JNKCk7CiAgICAgRU5EKCk7CiB9CiAKLVNMT1dfUEFUSF9ERUNMKHNs
b3dfcGF0aF9jcmVhdGVfbGV4aWNhbF9lbnZpcm9ubWVudCkKK0pTQ19ERUZJTkVfQ09NTU9OX1NM
T1dfUEFUSChzbG93X3BhdGhfY3JlYXRlX2xleGljYWxfZW52aXJvbm1lbnQpCiB7CiAgICAgQkVH
SU4oKTsKICAgICBhdXRvIGJ5dGVjb2RlID0gcGMtPmFzPE9wQ3JlYXRlTGV4aWNhbEVudmlyb25t
ZW50PigpOwpAQCAtMTIxMCw3ICsxMjEwLDcgQEAgU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX2Ny
ZWF0ZV9sZXhpY2FsX2Vudmlyb25tZW50KQogICAgIFJFVFVSTihuZXdTY29wZSk7CiB9CiAKLVNM
T1dfUEFUSF9ERUNMKHNsb3dfcGF0aF9wdXNoX3dpdGhfc2NvcGUpCitKU0NfREVGSU5FX0NPTU1P
Tl9TTE9XX1BBVEgoc2xvd19wYXRoX3B1c2hfd2l0aF9zY29wZSkKIHsKICAgICBCRUdJTigpOwog
ICAgIGF1dG8gYnl0ZWNvZGUgPSBwYy0+YXM8T3BQdXNoV2l0aFNjb3BlPigpOwpAQCAtMTIyMSw3
ICsxMjIxLDcgQEAgU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX3B1c2hfd2l0aF9zY29wZSkKICAg
ICBSRVRVUk4oSlNXaXRoU2NvcGU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBjdXJyZW50U2Nv
cGUsIG5ld1Njb3BlKSk7CiB9CiAKLVNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF9yZXNvbHZlX3Nj
b3BlX2Zvcl9ob2lzdGluZ19mdW5jX2RlY2xfaW5fZXZhbCkKK0pTQ19ERUZJTkVfQ09NTU9OX1NM
T1dfUEFUSChzbG93X3BhdGhfcmVzb2x2ZV9zY29wZV9mb3JfaG9pc3RpbmdfZnVuY19kZWNsX2lu
X2V2YWwpCiB7CiAgICAgQkVHSU4oKTsKICAgICBhdXRvIGJ5dGVjb2RlID0gcGMtPmFzPE9wUmVz
b2x2ZVNjb3BlRm9ySG9pc3RpbmdGdW5jRGVjbEluRXZhbD4oKTsKQEAgLTEyMzQsNyArMTIzNCw3
IEBAIFNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF9yZXNvbHZlX3Njb3BlX2Zvcl9ob2lzdGluZ19m
dW5jX2RlY2xfaW5fZXZhbCkKICAgICBSRVRVUk4ocmVzb2x2ZWRTY29wZSk7CiB9CiAKLVNMT1df
UEFUSF9ERUNMKHNsb3dfcGF0aF9yZXNvbHZlX3Njb3BlKQorSlNDX0RFRklORV9DT01NT05fU0xP
V19QQVRIKHNsb3dfcGF0aF9yZXNvbHZlX3Njb3BlKQogewogICAgIEJFR0lOKCk7CiAgICAgYXV0
byBieXRlY29kZSA9IHBjLT5hczxPcFJlc29sdmVTY29wZT4oKTsKQEAgLTEyODAsNyArMTI4MCw3
IEBAIFNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF9yZXNvbHZlX3Njb3BlKQogICAgIFJFVFVSTihy
ZXNvbHZlZFNjb3BlKTsKIH0KIAotU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX2NyZWF0ZV9yZXN0
KQorSlNDX0RFRklORV9DT01NT05fU0xPV19QQVRIKHNsb3dfcGF0aF9jcmVhdGVfcmVzdCkKIHsK
ICAgICBCRUdJTigpOwogICAgIGF1dG8gYnl0ZWNvZGUgPSBwYy0+YXM8T3BDcmVhdGVSZXN0Pigp
OwpAQCAtMTI5MSw3ICsxMjkxLDcgQEAgU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX2NyZWF0ZV9y
ZXN0KQogICAgIFJFVFVSTihjb25zdHJ1Y3RBcnJheShnbG9iYWxPYmplY3QsIHN0cnVjdHVyZSwg
YXJndW1lbnRzVG9Db3B5UmVnaW9uLCBhcnJheVNpemUpKTsKIH0KIAotU0xPV19QQVRIX0RFQ0wo
c2xvd19wYXRoX2dldF9ieV9pZF93aXRoX3RoaXMpCitKU0NfREVGSU5FX0NPTU1PTl9TTE9XX1BB
VEgoc2xvd19wYXRoX2dldF9ieV9pZF93aXRoX3RoaXMpCiB7CiAgICAgQkVHSU4oKTsKICAgICBh
dXRvIGJ5dGVjb2RlID0gcGMtPmFzPE9wR2V0QnlJZFdpdGhUaGlzPigpOwpAQCAtMTMwMyw3ICsx
MzAzLDcgQEAgU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX2dldF9ieV9pZF93aXRoX3RoaXMpCiAg
ICAgUkVUVVJOX1BST0ZJTEVEKHJlc3VsdCk7CiB9CiAKLVNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0
aF9nZXRfYnlfdmFsX3dpdGhfdGhpcykKK0pTQ19ERUZJTkVfQ09NTU9OX1NMT1dfUEFUSChzbG93
X3BhdGhfZ2V0X2J5X3ZhbF93aXRoX3RoaXMpCiB7CiAgICAgQkVHSU4oKTsKIApAQCAtMTM0MCw3
ICsxMzQwLDcgQEAgU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX2dldF9ieV92YWxfd2l0aF90aGlz
KQogICAgIFJFVFVSTl9QUk9GSUxFRChiYXNlVmFsdWUuZ2V0KGdsb2JhbE9iamVjdCwgcHJvcGVy
dHksIHNsb3QpKTsKIH0KIAotU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX2dldF9wcml2YXRlX25h
bWUpCitKU0NfREVGSU5FX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX2dldF9wcml2YXRlX25h
bWUpCiB7CiAgICAgQkVHSU4oKTsKIApAQCAtMTM2Miw3ICsxMzYyLDcgQEAgU0xPV19QQVRIX0RF
Q0woc2xvd19wYXRoX2dldF9wcml2YXRlX25hbWUpCiAgICAgUkVUVVJOX1BST0ZJTEVEKHNsb3Qu
Z2V0VmFsdWUoZ2xvYmFsT2JqZWN0LCBwcm9wZXJ0eSkpOwogfQogCi1TTE9XX1BBVEhfREVDTChz
bG93X3BhdGhfZ2V0X3Byb3RvdHlwZV9vZikKK0pTQ19ERUZJTkVfQ09NTU9OX1NMT1dfUEFUSChz
bG93X3BhdGhfZ2V0X3Byb3RvdHlwZV9vZikKIHsKICAgICBCRUdJTigpOwogICAgIGF1dG8gYnl0
ZWNvZGUgPSBwYy0+YXM8T3BHZXRQcm90b3R5cGVPZj4oKTsKQEAgLTEzNzAsNyArMTM3MCw3IEBA
IFNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF9nZXRfcHJvdG90eXBlX29mKQogICAgIFJFVFVSTl9Q
Uk9GSUxFRCh2YWx1ZS5nZXRQcm90b3R5cGUoZ2xvYmFsT2JqZWN0KSk7CiB9CiAKLVNMT1dfUEFU
SF9ERUNMKHNsb3dfcGF0aF9wdXRfYnlfaWRfd2l0aF90aGlzKQorSlNDX0RFRklORV9DT01NT05f
U0xPV19QQVRIKHNsb3dfcGF0aF9wdXRfYnlfaWRfd2l0aF90aGlzKQogewogICAgIEJFR0lOKCk7
CiAgICAgYXV0byBieXRlY29kZSA9IHBjLT5hczxPcFB1dEJ5SWRXaXRoVGhpcz4oKTsKQEAgLTEz
ODMsNyArMTM4Myw3IEBAIFNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF9wdXRfYnlfaWRfd2l0aF90
aGlzKQogICAgIEVORCgpOwogfQogCi1TTE9XX1BBVEhfREVDTChzbG93X3BhdGhfcHV0X2J5X3Zh
bF93aXRoX3RoaXMpCitKU0NfREVGSU5FX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX3B1dF9i
eV92YWxfd2l0aF90aGlzKQogewogICAgIEJFR0lOKCk7CiAgICAgYXV0byBieXRlY29kZSA9IHBj
LT5hczxPcFB1dEJ5VmFsV2l0aFRoaXM+KCk7CkBAIC0xMzk5LDcgKzEzOTksNyBAQCBTTE9XX1BB
VEhfREVDTChzbG93X3BhdGhfcHV0X2J5X3ZhbF93aXRoX3RoaXMpCiAgICAgRU5EKCk7CiB9CiAK
LVNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF9kZWZpbmVfZGF0YV9wcm9wZXJ0eSkKK0pTQ19ERUZJ
TkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfZGVmaW5lX2RhdGFfcHJvcGVydHkpCiB7CiAg
ICAgQkVHSU4oKTsKICAgICBhdXRvIGJ5dGVjb2RlID0gcGMtPmFzPE9wRGVmaW5lRGF0YVByb3Bl
cnR5PigpOwpAQCAtMTQxNyw3ICsxNDE3LDcgQEAgU0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX2Rl
ZmluZV9kYXRhX3Byb3BlcnR5KQogICAgIEVORCgpOwogfQogCi1TTE9XX1BBVEhfREVDTChzbG93
X3BhdGhfZGVmaW5lX2FjY2Vzc29yX3Byb3BlcnR5KQorSlNDX0RFRklORV9DT01NT05fU0xPV19Q
QVRIKHNsb3dfcGF0aF9kZWZpbmVfYWNjZXNzb3JfcHJvcGVydHkpCiB7CiAgICAgQkVHSU4oKTsK
ICAgICBhdXRvIGJ5dGVjb2RlID0gcGMtPmFzPE9wRGVmaW5lQWNjZXNzb3JQcm9wZXJ0eT4oKTsK
QEAgLTE0MzYsNyArMTQzNiw3IEBAIFNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF9kZWZpbmVfYWNj
ZXNzb3JfcHJvcGVydHkpCiAgICAgRU5EKCk7CiB9CiAKLVNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0
aF90aHJvd19zdGF0aWNfZXJyb3IpCitKU0NfREVGSU5FX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19w
YXRoX3Rocm93X3N0YXRpY19lcnJvcikKIHsKICAgICBCRUdJTigpOwogICAgIGF1dG8gYnl0ZWNv
ZGUgPSBwYy0+YXM8T3BUaHJvd1N0YXRpY0Vycm9yPigpOwpAQCAtMTQ0Nyw3ICsxNDQ3LDcgQEAg
U0xPV19QQVRIX0RFQ0woc2xvd19wYXRoX3Rocm93X3N0YXRpY19lcnJvcikKICAgICBUSFJPVyhj
cmVhdGVFcnJvcihnbG9iYWxPYmplY3QsIGVycm9yVHlwZSwgZXJyb3JNZXNzYWdlKSk7CiB9CiAK
LVNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF9uZXdfYXJyYXlfd2l0aF9zcHJlYWQpCitKU0NfREVG
SU5FX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX25ld19hcnJheV93aXRoX3NwcmVhZCkKIHsK
ICAgICBCRUdJTigpOwogICAgIGF1dG8gYnl0ZWNvZGUgPSBwYy0+YXM8T3BOZXdBcnJheVdpdGhT
cHJlYWQ+KCk7CkBAIC0xNTExLDcgKzE1MTEsNyBAQCBTTE9XX1BBVEhfREVDTChzbG93X3BhdGhf
bmV3X2FycmF5X3dpdGhfc3ByZWFkKQogICAgIFJFVFVSTihyZXN1bHQpOwogfQogCi1TTE9XX1BB
VEhfREVDTChzbG93X3BhdGhfbmV3X2FycmF5X2J1ZmZlcikKK0pTQ19ERUZJTkVfQ09NTU9OX1NM
T1dfUEFUSChzbG93X3BhdGhfbmV3X2FycmF5X2J1ZmZlcikKIHsKICAgICBCRUdJTigpOwogICAg
IGF1dG8gYnl0ZWNvZGUgPSBwYy0+YXM8T3BOZXdBcnJheUJ1ZmZlcj4oKTsKQEAgLTE1NDQsNyAr
MTU0NCw3IEBAIFNMT1dfUEFUSF9ERUNMKHNsb3dfcGF0aF9uZXdfYXJyYXlfYnVmZmVyKQogICAg
IFJFVFVSTihyZXN1bHQpOwogfQogCi1TTE9XX1BBVEhfREVDTChzbG93X3BhdGhfc3ByZWFkKQor
SlNDX0RFRklORV9DT01NT05fU0xPV19QQVRIKHNsb3dfcGF0aF9zcHJlYWQpCiB7CiAgICAgQkVH
SU4oKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9u
U2xvd1BhdGhzLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db21tb25TbG93UGF0
aHMuaAppbmRleCA1NWI3NzA2Mjk4NGI3N2E5ZGM2NjBlOWYzMmU5NGRlODhhMGE3ZDc5Li41MjRi
NmI4MWEyMmE1MmZiZmFjNWM1YmI1MDUxM2VkOTEwOGQ2NWE5IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9Db21tb25TbG93UGF0aHMuaAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9Db21tb25TbG93UGF0aHMuaApAQCAtMTk5LDExMSArMTk5LDEw
NyBAQCBpbmxpbmUgSlNBcnJheSogYWxsb2NhdGVOZXdBcnJheUJ1ZmZlcihWTSYgdm0sIFN0cnVj
dHVyZSogc3RydWN0dXJlLCBKU0ltbXV0YWJsZQogY2xhc3MgQ2FsbEZyYW1lOwogc3RydWN0IElu
c3RydWN0aW9uOwogCi0jZGVmaW5lIFNMT1dfUEFUSAotICAgIAotI2RlZmluZSBTTE9XX1BBVEhf
REVDTChuYW1lKSBcCi1leHRlcm4gIkMiIFNsb3dQYXRoUmV0dXJuVHlwZSBTTE9XX1BBVEggbmFt
ZShDYWxsRnJhbWUqIGNhbGxGcmFtZSwgY29uc3QgSW5zdHJ1Y3Rpb24qIHBjKQotICAgIAotI2Rl
ZmluZSBTTE9XX1BBVEhfSElEREVOX0RFQ0wobmFtZSkgXAotU0xPV19QQVRIX0RFQ0wobmFtZSkg
V1RGX0lOVEVSTkFMCi0gICAgCi1TTE9XX1BBVEhfSElEREVOX0RFQ0woc2xvd19wYXRoX2NhbGxf
YXJpdHlDaGVjayk7Ci1TTE9XX1BBVEhfSElEREVOX0RFQ0woc2xvd19wYXRoX2NvbnN0cnVjdF9h
cml0eUNoZWNrKTsKLVNMT1dfUEFUSF9ISURERU5fREVDTChzbG93X3BhdGhfY3JlYXRlX2RpcmVj
dF9hcmd1bWVudHMpOwotU0xPV19QQVRIX0hJRERFTl9ERUNMKHNsb3dfcGF0aF9jcmVhdGVfc2Nv
cGVkX2FyZ3VtZW50cyk7Ci1TTE9XX1BBVEhfSElEREVOX0RFQ0woc2xvd19wYXRoX2NyZWF0ZV9j
bG9uZWRfYXJndW1lbnRzKTsKLVNMT1dfUEFUSF9ISURERU5fREVDTChzbG93X3BhdGhfY3JlYXRl
X2FyZ3VtZW50c19idXR0ZXJmbHkpOwotU0xPV19QQVRIX0hJRERFTl9ERUNMKHNsb3dfcGF0aF9j
cmVhdGVfdGhpcyk7Ci1TTE9XX1BBVEhfSElEREVOX0RFQ0woc2xvd19wYXRoX2VudGVyKTsKLVNM
T1dfUEFUSF9ISURERU5fREVDTChzbG93X3BhdGhfZ2V0X2NhbGxlZSk7Ci1TTE9XX1BBVEhfSElE
REVOX0RFQ0woc2xvd19wYXRoX3RvX3RoaXMpOwotU0xPV19QQVRIX0hJRERFTl9ERUNMKHNsb3df
cGF0aF90aHJvd190ZHpfZXJyb3IpOwotU0xPV19QQVRIX0hJRERFTl9ERUNMKHNsb3dfcGF0aF9j
aGVja190ZHopOwotU0xPV19QQVRIX0hJRERFTl9ERUNMKHNsb3dfcGF0aF90aHJvd19zdHJpY3Rf
bW9kZV9yZWFkb25seV9wcm9wZXJ0eV93cml0ZV9lcnJvcik7Ci1TTE9XX1BBVEhfSElEREVOX0RF
Q0woc2xvd19wYXRoX25vdCk7Ci1TTE9XX1BBVEhfSElEREVOX0RFQ0woc2xvd19wYXRoX2VxKTsK
LVNMT1dfUEFUSF9ISURERU5fREVDTChzbG93X3BhdGhfbmVxKTsKLVNMT1dfUEFUSF9ISURERU5f
REVDTChzbG93X3BhdGhfc3RyaWN0ZXEpOwotU0xPV19QQVRIX0hJRERFTl9ERUNMKHNsb3dfcGF0
aF9uc3RyaWN0ZXEpOwotU0xPV19QQVRIX0hJRERFTl9ERUNMKHNsb3dfcGF0aF9sZXNzKTsKLVNM
T1dfUEFUSF9ISURERU5fREVDTChzbG93X3BhdGhfbGVzc2VxKTsKLVNMT1dfUEFUSF9ISURERU5f
REVDTChzbG93X3BhdGhfZ3JlYXRlcik7Ci1TTE9XX1BBVEhfSElEREVOX0RFQ0woc2xvd19wYXRo
X2dyZWF0ZXJlcSk7Ci1TTE9XX1BBVEhfSElEREVOX0RFQ0woc2xvd19wYXRoX2luYyk7Ci1TTE9X
X1BBVEhfSElEREVOX0RFQ0woc2xvd19wYXRoX2RlYyk7Ci1TTE9XX1BBVEhfSElEREVOX0RFQ0wo
c2xvd19wYXRoX3RvX251bWJlcik7Ci1TTE9XX1BBVEhfSElEREVOX0RFQ0woc2xvd19wYXRoX3Rv
X251bWVyaWMpOwotU0xPV19QQVRIX0hJRERFTl9ERUNMKHNsb3dfcGF0aF90b19zdHJpbmcpOwot
U0xPV19QQVRIX0hJRERFTl9ERUNMKHNsb3dfcGF0aF90b19vYmplY3QpOwotU0xPV19QQVRIX0hJ
RERFTl9ERUNMKHNsb3dfcGF0aF9uZWdhdGUpOwotU0xPV19QQVRIX0hJRERFTl9ERUNMKHNsb3df
cGF0aF9hZGQpOwotU0xPV19QQVRIX0hJRERFTl9ERUNMKHNsb3dfcGF0aF9tdWwpOwotU0xPV19Q
QVRIX0hJRERFTl9ERUNMKHNsb3dfcGF0aF9zdWIpOwotU0xPV19QQVRIX0hJRERFTl9ERUNMKHNs
b3dfcGF0aF9kaXYpOwotU0xPV19QQVRIX0hJRERFTl9ERUNMKHNsb3dfcGF0aF9tb2QpOwotU0xP
V19QQVRIX0hJRERFTl9ERUNMKHNsb3dfcGF0aF9wb3cpOwotU0xPV19QQVRIX0hJRERFTl9ERUNM
KHNsb3dfcGF0aF9sc2hpZnQpOwotU0xPV19QQVRIX0hJRERFTl9ERUNMKHNsb3dfcGF0aF9yc2hp
ZnQpOwotU0xPV19QQVRIX0hJRERFTl9ERUNMKHNsb3dfcGF0aF91cnNoaWZ0KTsKLVNMT1dfUEFU
SF9ISURERU5fREVDTChzbG93X3BhdGhfdW5zaWduZWQpOwotU0xPV19QQVRIX0hJRERFTl9ERUNM
KHNsb3dfcGF0aF9iaXRub3QpOwotU0xPV19QQVRIX0hJRERFTl9ERUNMKHNsb3dfcGF0aF9iaXRh
bmQpOwotU0xPV19QQVRIX0hJRERFTl9ERUNMKHNsb3dfcGF0aF9iaXRvcik7Ci1TTE9XX1BBVEhf
SElEREVOX0RFQ0woc2xvd19wYXRoX2JpdHhvcik7Ci1TTE9XX1BBVEhfSElEREVOX0RFQ0woc2xv
d19wYXRoX3R5cGVvZik7Ci1TTE9XX1BBVEhfSElEREVOX0RFQ0woc2xvd19wYXRoX3R5cGVvZl9p
c19vYmplY3QpOwotU0xPV19QQVRIX0hJRERFTl9ERUNMKHNsb3dfcGF0aF90eXBlb2ZfaXNfZnVu
Y3Rpb24pOwotU0xPV19QQVRIX0hJRERFTl9ERUNMKHNsb3dfcGF0aF9pc19jYWxsYWJsZSk7Ci1T
TE9XX1BBVEhfSElEREVOX0RFQ0woc2xvd19wYXRoX2lzX2NvbnN0cnVjdG9yKTsKLVNMT1dfUEFU
SF9ISURERU5fREVDTChzbG93X3BhdGhfaW5fYnlfaWQpOwotU0xPV19QQVRIX0hJRERFTl9ERUNM
KHNsb3dfcGF0aF9pbl9ieV92YWwpOwotU0xPV19QQVRIX0hJRERFTl9ERUNMKHNsb3dfcGF0aF9k
ZWxfYnlfdmFsKTsKLVNMT1dfUEFUSF9ISURERU5fREVDTChzbG93X3BhdGhfc3RyY2F0KTsKLVNM
T1dfUEFUSF9ISURERU5fREVDTChzbG93X3BhdGhfdG9fcHJpbWl0aXZlKTsKLVNMT1dfUEFUSF9I
SURERU5fREVDTChzbG93X3BhdGhfdG9fcHJvcGVydHlfa2V5KTsKLVNMT1dfUEFUSF9ISURERU5f
REVDTChzbG93X3BhdGhfZ2V0X2VudW1lcmFibGVfbGVuZ3RoKTsKLVNMT1dfUEFUSF9ISURERU5f
REVDTChzbG93X3BhdGhfaGFzX2dlbmVyaWNfcHJvcGVydHkpOwotU0xPV19QQVRIX0hJRERFTl9E
RUNMKHNsb3dfcGF0aF9oYXNfc3RydWN0dXJlX3Byb3BlcnR5KTsKLVNMT1dfUEFUSF9ISURERU5f
REVDTChzbG93X3BhdGhfaGFzX293bl9zdHJ1Y3R1cmVfcHJvcGVydHkpOwotU0xPV19QQVRIX0hJ
RERFTl9ERUNMKHNsb3dfcGF0aF9pbl9zdHJ1Y3R1cmVfcHJvcGVydHkpOwotU0xPV19QQVRIX0hJ
RERFTl9ERUNMKHNsb3dfcGF0aF9oYXNfaW5kZXhlZF9wcm9wZXJ0eSk7Ci1TTE9XX1BBVEhfSElE
REVOX0RFQ0woc2xvd19wYXRoX2dldF9kaXJlY3RfcG5hbWUpOwotU0xPV19QQVRIX0hJRERFTl9E
RUNMKHNsb3dfcGF0aF9nZXRfcHJvcGVydHlfZW51bWVyYXRvcik7Ci1TTE9XX1BBVEhfSElEREVO
X0RFQ0woc2xvd19wYXRoX2VudW1lcmF0b3Jfc3RydWN0dXJlX3BuYW1lKTsKLVNMT1dfUEFUSF9I
SURERU5fREVDTChzbG93X3BhdGhfZW51bWVyYXRvcl9nZW5lcmljX3BuYW1lKTsKLVNMT1dfUEFU
SF9ISURERU5fREVDTChzbG93X3BhdGhfdG9faW5kZXhfc3RyaW5nKTsKLVNMT1dfUEFUSF9ISURE
RU5fREVDTChzbG93X3BhdGhfcHJvZmlsZV90eXBlX2NsZWFyX2xvZyk7Ci1TTE9XX1BBVEhfSElE
REVOX0RFQ0woc2xvd19wYXRoX3VucmVhY2hhYmxlKTsKLVNMT1dfUEFUSF9ISURERU5fREVDTChz
bG93X3BhdGhfY3JlYXRlX2xleGljYWxfZW52aXJvbm1lbnQpOwotU0xPV19QQVRIX0hJRERFTl9E
RUNMKHNsb3dfcGF0aF9wdXNoX3dpdGhfc2NvcGUpOwotU0xPV19QQVRIX0hJRERFTl9ERUNMKHNs
b3dfcGF0aF9yZXNvbHZlX3Njb3BlKTsKLVNMT1dfUEFUSF9ISURERU5fREVDTChzbG93X3BhdGhf
aXNfdmFyX3Njb3BlKTsKLVNMT1dfUEFUSF9ISURERU5fREVDTChzbG93X3BhdGhfcmVzb2x2ZV9z
Y29wZV9mb3JfaG9pc3RpbmdfZnVuY19kZWNsX2luX2V2YWwpOwotU0xPV19QQVRIX0hJRERFTl9E
RUNMKHNsb3dfcGF0aF9jcmVhdGVfcHJvbWlzZSk7Ci1TTE9XX1BBVEhfSElEREVOX0RFQ0woc2xv
d19wYXRoX2NyZWF0ZV9nZW5lcmF0b3IpOwotU0xPV19QQVRIX0hJRERFTl9ERUNMKHNsb3dfcGF0
aF9jcmVhdGVfYXN5bmNfZ2VuZXJhdG9yKTsKLVNMT1dfUEFUSF9ISURERU5fREVDTChzbG93X3Bh
dGhfY3JlYXRlX3Jlc3QpOwotU0xPV19QQVRIX0hJRERFTl9ERUNMKHNsb3dfcGF0aF9nZXRfYnlf
aWRfd2l0aF90aGlzKTsKLVNMT1dfUEFUSF9ISURERU5fREVDTChzbG93X3BhdGhfZ2V0X2J5X3Zh
bF93aXRoX3RoaXMpOwotU0xPV19QQVRIX0hJRERFTl9ERUNMKHNsb3dfcGF0aF9nZXRfcHJpdmF0
ZV9uYW1lKTsKLVNMT1dfUEFUSF9ISURERU5fREVDTChzbG93X3BhdGhfZ2V0X3Byb3RvdHlwZV9v
Zik7Ci1TTE9XX1BBVEhfSElEREVOX0RFQ0woc2xvd19wYXRoX3B1dF9ieV9pZF93aXRoX3RoaXMp
OwotU0xPV19QQVRIX0hJRERFTl9ERUNMKHNsb3dfcGF0aF9wdXRfYnlfdmFsX3dpdGhfdGhpcyk7
Ci1TTE9XX1BBVEhfSElEREVOX0RFQ0woc2xvd19wYXRoX2RlZmluZV9kYXRhX3Byb3BlcnR5KTsK
LVNMT1dfUEFUSF9ISURERU5fREVDTChzbG93X3BhdGhfZGVmaW5lX2FjY2Vzc29yX3Byb3BlcnR5
KTsKLVNMT1dfUEFUSF9ISURERU5fREVDTChzbG93X3BhdGhfdGhyb3dfc3RhdGljX2Vycm9yKTsK
LVNMT1dfUEFUSF9ISURERU5fREVDTChzbG93X3BhdGhfbmV3X3Byb21pc2UpOwotU0xPV19QQVRI
X0hJRERFTl9ERUNMKHNsb3dfcGF0aF9uZXdfZ2VuZXJhdG9yKTsKLVNMT1dfUEFUSF9ISURERU5f
REVDTChzbG93X3BhdGhfbmV3X2FycmF5X3dpdGhfc3ByZWFkKTsKLVNMT1dfUEFUSF9ISURERU5f
REVDTChzbG93X3BhdGhfbmV3X2FycmF5X2J1ZmZlcik7Ci1TTE9XX1BBVEhfSElEREVOX0RFQ0wo
c2xvd19wYXRoX3NwcmVhZCk7Ci1TTE9XX1BBVEhfSElEREVOX0RFQ0woaXRlcmF0b3Jfb3Blbl90
cnlfZmFzdF9uYXJyb3cpOwotU0xPV19QQVRIX0hJRERFTl9ERUNMKGl0ZXJhdG9yX29wZW5fdHJ5
X2Zhc3Rfd2lkZTE2KTsKLVNMT1dfUEFUSF9ISURERU5fREVDTChpdGVyYXRvcl9vcGVuX3RyeV9m
YXN0X3dpZGUzMik7Ci1TTE9XX1BBVEhfSElEREVOX0RFQ0woaXRlcmF0b3JfbmV4dF90cnlfZmFz
dF9uYXJyb3cpOwotU0xPV19QQVRIX0hJRERFTl9ERUNMKGl0ZXJhdG9yX25leHRfdHJ5X2Zhc3Rf
d2lkZTE2KTsKLVNMT1dfUEFUSF9ISURERU5fREVDTChpdGVyYXRvcl9uZXh0X3RyeV9mYXN0X3dp
ZGUzMik7CisjZGVmaW5lIEpTQ19ERUNMQVJFX0NPTU1PTl9TTE9XX1BBVEgobmFtZSkgXAorICAg
IGV4dGVybiAiQyIgSlNDX0RFQ0xBUkVfSklUX09QRVJBVElPTihuYW1lLCBTbG93UGF0aFJldHVy
blR5cGUsIChDYWxsRnJhbWUqLCBjb25zdCBJbnN0cnVjdGlvbiopKQorCisjZGVmaW5lIEpTQ19E
RUZJTkVfQ09NTU9OX1NMT1dfUEFUSChuYW1lKSBcCisgICAgSlNDX0RFRklORV9KSVRfT1BFUkFU
SU9OKG5hbWUsIFNsb3dQYXRoUmV0dXJuVHlwZSwgKENhbGxGcmFtZSogY2FsbEZyYW1lLCBjb25z
dCBJbnN0cnVjdGlvbiogcGMpKQorCitKU0NfREVDTEFSRV9DT01NT05fU0xPV19QQVRIKHNsb3df
cGF0aF9jYWxsX2FyaXR5Q2hlY2spOworSlNDX0RFQ0xBUkVfQ09NTU9OX1NMT1dfUEFUSChzbG93
X3BhdGhfY29uc3RydWN0X2FyaXR5Q2hlY2spOworSlNDX0RFQ0xBUkVfQ09NTU9OX1NMT1dfUEFU
SChzbG93X3BhdGhfY3JlYXRlX2RpcmVjdF9hcmd1bWVudHMpOworSlNDX0RFQ0xBUkVfQ09NTU9O
X1NMT1dfUEFUSChzbG93X3BhdGhfY3JlYXRlX3Njb3BlZF9hcmd1bWVudHMpOworSlNDX0RFQ0xB
UkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfY3JlYXRlX2Nsb25lZF9hcmd1bWVudHMpOwor
SlNDX0RFQ0xBUkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfY3JlYXRlX2FyZ3VtZW50c19i
dXR0ZXJmbHkpOworSlNDX0RFQ0xBUkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfY3JlYXRl
X3RoaXMpOworSlNDX0RFQ0xBUkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfZW50ZXIpOwor
SlNDX0RFQ0xBUkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfdG9fdGhpcyk7CitKU0NfREVD
TEFSRV9DT01NT05fU0xPV19QQVRIKHNsb3dfcGF0aF90aHJvd190ZHpfZXJyb3IpOworSlNDX0RF
Q0xBUkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfY2hlY2tfdGR6KTsKK0pTQ19ERUNMQVJF
X0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX3Rocm93X3N0cmljdF9tb2RlX3JlYWRvbmx5X3By
b3BlcnR5X3dyaXRlX2Vycm9yKTsKK0pTQ19ERUNMQVJFX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19w
YXRoX25vdCk7CitKU0NfREVDTEFSRV9DT01NT05fU0xPV19QQVRIKHNsb3dfcGF0aF9lcSk7CitK
U0NfREVDTEFSRV9DT01NT05fU0xPV19QQVRIKHNsb3dfcGF0aF9uZXEpOworSlNDX0RFQ0xBUkVf
Q09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfc3RyaWN0ZXEpOworSlNDX0RFQ0xBUkVfQ09NTU9O
X1NMT1dfUEFUSChzbG93X3BhdGhfbnN0cmljdGVxKTsKK0pTQ19ERUNMQVJFX0NPTU1PTl9TTE9X
X1BBVEgoc2xvd19wYXRoX2xlc3MpOworSlNDX0RFQ0xBUkVfQ09NTU9OX1NMT1dfUEFUSChzbG93
X3BhdGhfbGVzc2VxKTsKK0pTQ19ERUNMQVJFX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX2dy
ZWF0ZXIpOworSlNDX0RFQ0xBUkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfZ3JlYXRlcmVx
KTsKK0pTQ19ERUNMQVJFX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX2luYyk7CitKU0NfREVD
TEFSRV9DT01NT05fU0xPV19QQVRIKHNsb3dfcGF0aF9kZWMpOworSlNDX0RFQ0xBUkVfQ09NTU9O
X1NMT1dfUEFUSChzbG93X3BhdGhfdG9fbnVtYmVyKTsKK0pTQ19ERUNMQVJFX0NPTU1PTl9TTE9X
X1BBVEgoc2xvd19wYXRoX3RvX251bWVyaWMpOworSlNDX0RFQ0xBUkVfQ09NTU9OX1NMT1dfUEFU
SChzbG93X3BhdGhfdG9fc3RyaW5nKTsKK0pTQ19ERUNMQVJFX0NPTU1PTl9TTE9XX1BBVEgoc2xv
d19wYXRoX3RvX29iamVjdCk7CitKU0NfREVDTEFSRV9DT01NT05fU0xPV19QQVRIKHNsb3dfcGF0
aF9uZWdhdGUpOworSlNDX0RFQ0xBUkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfYWRkKTsK
K0pTQ19ERUNMQVJFX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX211bCk7CitKU0NfREVDTEFS
RV9DT01NT05fU0xPV19QQVRIKHNsb3dfcGF0aF9zdWIpOworSlNDX0RFQ0xBUkVfQ09NTU9OX1NM
T1dfUEFUSChzbG93X3BhdGhfZGl2KTsKK0pTQ19ERUNMQVJFX0NPTU1PTl9TTE9XX1BBVEgoc2xv
d19wYXRoX21vZCk7CitKU0NfREVDTEFSRV9DT01NT05fU0xPV19QQVRIKHNsb3dfcGF0aF9wb3cp
OworSlNDX0RFQ0xBUkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfbHNoaWZ0KTsKK0pTQ19E
RUNMQVJFX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX3JzaGlmdCk7CitKU0NfREVDTEFSRV9D
T01NT05fU0xPV19QQVRIKHNsb3dfcGF0aF91cnNoaWZ0KTsKK0pTQ19ERUNMQVJFX0NPTU1PTl9T
TE9XX1BBVEgoc2xvd19wYXRoX3Vuc2lnbmVkKTsKK0pTQ19ERUNMQVJFX0NPTU1PTl9TTE9XX1BB
VEgoc2xvd19wYXRoX2JpdG5vdCk7CitKU0NfREVDTEFSRV9DT01NT05fU0xPV19QQVRIKHNsb3df
cGF0aF9iaXRhbmQpOworSlNDX0RFQ0xBUkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfYml0
b3IpOworSlNDX0RFQ0xBUkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfYml0eG9yKTsKK0pT
Q19ERUNMQVJFX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX3R5cGVvZik7CitKU0NfREVDTEFS
RV9DT01NT05fU0xPV19QQVRIKHNsb3dfcGF0aF90eXBlb2ZfaXNfb2JqZWN0KTsKK0pTQ19ERUNM
QVJFX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX3R5cGVvZl9pc19mdW5jdGlvbik7CitKU0Nf
REVDTEFSRV9DT01NT05fU0xPV19QQVRIKHNsb3dfcGF0aF9pc19jYWxsYWJsZSk7CitKU0NfREVD
TEFSRV9DT01NT05fU0xPV19QQVRIKHNsb3dfcGF0aF9pc19jb25zdHJ1Y3Rvcik7CitKU0NfREVD
TEFSRV9DT01NT05fU0xPV19QQVRIKHNsb3dfcGF0aF9pbl9ieV9pZCk7CitKU0NfREVDTEFSRV9D
T01NT05fU0xPV19QQVRIKHNsb3dfcGF0aF9pbl9ieV92YWwpOworSlNDX0RFQ0xBUkVfQ09NTU9O
X1NMT1dfUEFUSChzbG93X3BhdGhfZGVsX2J5X3ZhbCk7CitKU0NfREVDTEFSRV9DT01NT05fU0xP
V19QQVRIKHNsb3dfcGF0aF9zdHJjYXQpOworSlNDX0RFQ0xBUkVfQ09NTU9OX1NMT1dfUEFUSChz
bG93X3BhdGhfdG9fcHJpbWl0aXZlKTsKK0pTQ19ERUNMQVJFX0NPTU1PTl9TTE9XX1BBVEgoc2xv
d19wYXRoX3RvX3Byb3BlcnR5X2tleSk7CitKU0NfREVDTEFSRV9DT01NT05fU0xPV19QQVRIKHNs
b3dfcGF0aF9nZXRfZW51bWVyYWJsZV9sZW5ndGgpOworSlNDX0RFQ0xBUkVfQ09NTU9OX1NMT1df
UEFUSChzbG93X3BhdGhfaGFzX2dlbmVyaWNfcHJvcGVydHkpOworSlNDX0RFQ0xBUkVfQ09NTU9O
X1NMT1dfUEFUSChzbG93X3BhdGhfaGFzX3N0cnVjdHVyZV9wcm9wZXJ0eSk7CitKU0NfREVDTEFS
RV9DT01NT05fU0xPV19QQVRIKHNsb3dfcGF0aF9oYXNfb3duX3N0cnVjdHVyZV9wcm9wZXJ0eSk7
CitKU0NfREVDTEFSRV9DT01NT05fU0xPV19QQVRIKHNsb3dfcGF0aF9pbl9zdHJ1Y3R1cmVfcHJv
cGVydHkpOworSlNDX0RFQ0xBUkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfaGFzX2luZGV4
ZWRfcHJvcGVydHkpOworSlNDX0RFQ0xBUkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfZ2V0
X2RpcmVjdF9wbmFtZSk7CitKU0NfREVDTEFSRV9DT01NT05fU0xPV19QQVRIKHNsb3dfcGF0aF9n
ZXRfcHJvcGVydHlfZW51bWVyYXRvcik7CitKU0NfREVDTEFSRV9DT01NT05fU0xPV19QQVRIKHNs
b3dfcGF0aF9lbnVtZXJhdG9yX3N0cnVjdHVyZV9wbmFtZSk7CitKU0NfREVDTEFSRV9DT01NT05f
U0xPV19QQVRIKHNsb3dfcGF0aF9lbnVtZXJhdG9yX2dlbmVyaWNfcG5hbWUpOworSlNDX0RFQ0xB
UkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfdG9faW5kZXhfc3RyaW5nKTsKK0pTQ19ERUNM
QVJFX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX3Byb2ZpbGVfdHlwZV9jbGVhcl9sb2cpOwor
SlNDX0RFQ0xBUkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfdW5yZWFjaGFibGUpOworSlND
X0RFQ0xBUkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfY3JlYXRlX2xleGljYWxfZW52aXJv
bm1lbnQpOworSlNDX0RFQ0xBUkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfcHVzaF93aXRo
X3Njb3BlKTsKK0pTQ19ERUNMQVJFX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX3Jlc29sdmVf
c2NvcGUpOworSlNDX0RFQ0xBUkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfcmVzb2x2ZV9z
Y29wZV9mb3JfaG9pc3RpbmdfZnVuY19kZWNsX2luX2V2YWwpOworSlNDX0RFQ0xBUkVfQ09NTU9O
X1NMT1dfUEFUSChzbG93X3BhdGhfY3JlYXRlX3Byb21pc2UpOworSlNDX0RFQ0xBUkVfQ09NTU9O
X1NMT1dfUEFUSChzbG93X3BhdGhfY3JlYXRlX2dlbmVyYXRvcik7CitKU0NfREVDTEFSRV9DT01N
T05fU0xPV19QQVRIKHNsb3dfcGF0aF9jcmVhdGVfYXN5bmNfZ2VuZXJhdG9yKTsKK0pTQ19ERUNM
QVJFX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX2NyZWF0ZV9yZXN0KTsKK0pTQ19ERUNMQVJF
X0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX2dldF9ieV9pZF93aXRoX3RoaXMpOworSlNDX0RF
Q0xBUkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfZ2V0X2J5X3ZhbF93aXRoX3RoaXMpOwor
SlNDX0RFQ0xBUkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfZ2V0X3ByaXZhdGVfbmFtZSk7
CitKU0NfREVDTEFSRV9DT01NT05fU0xPV19QQVRIKHNsb3dfcGF0aF9nZXRfcHJvdG90eXBlX29m
KTsKK0pTQ19ERUNMQVJFX0NPTU1PTl9TTE9XX1BBVEgoc2xvd19wYXRoX3B1dF9ieV9pZF93aXRo
X3RoaXMpOworSlNDX0RFQ0xBUkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfcHV0X2J5X3Zh
bF93aXRoX3RoaXMpOworSlNDX0RFQ0xBUkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3BhdGhfZGVm
aW5lX2RhdGFfcHJvcGVydHkpOworSlNDX0RFQ0xBUkVfQ09NTU9OX1NMT1dfUEFUSChzbG93X3Bh
dGhfZGVmaW5lX2FjY2Vzc29yX3Byb3BlcnR5KTsKK0pTQ19ERUNMQVJFX0NPTU1PTl9TTE9XX1BB
VEgoc2xvd19wYXRoX3Rocm93X3N0YXRpY19lcnJvcik7CitKU0NfREVDTEFSRV9DT01NT05fU0xP
V19QQVRIKHNsb3dfcGF0aF9uZXdfcHJvbWlzZSk7CitKU0NfREVDTEFSRV9DT01NT05fU0xPV19Q
QVRIKHNsb3dfcGF0aF9uZXdfZ2VuZXJhdG9yKTsKK0pTQ19ERUNMQVJFX0NPTU1PTl9TTE9XX1BB
VEgoc2xvd19wYXRoX25ld19hcnJheV93aXRoX3NwcmVhZCk7CitKU0NfREVDTEFSRV9DT01NT05f
U0xPV19QQVRIKHNsb3dfcGF0aF9uZXdfYXJyYXlfYnVmZmVyKTsKK0pTQ19ERUNMQVJFX0NPTU1P
Tl9TTE9XX1BBVEgoc2xvd19wYXRoX3NwcmVhZCk7CitKU0NfREVDTEFSRV9DT01NT05fU0xPV19Q
QVRIKGl0ZXJhdG9yX29wZW5fdHJ5X2Zhc3RfbmFycm93KTsKK0pTQ19ERUNMQVJFX0NPTU1PTl9T
TE9XX1BBVEgoaXRlcmF0b3Jfb3Blbl90cnlfZmFzdF93aWRlMTYpOworSlNDX0RFQ0xBUkVfQ09N
TU9OX1NMT1dfUEFUSChpdGVyYXRvcl9vcGVuX3RyeV9mYXN0X3dpZGUzMik7CitKU0NfREVDTEFS
RV9DT01NT05fU0xPV19QQVRIKGl0ZXJhdG9yX25leHRfdHJ5X2Zhc3RfbmFycm93KTsKK0pTQ19E
RUNMQVJFX0NPTU1PTl9TTE9XX1BBVEgoaXRlcmF0b3JfbmV4dF90cnlfZmFzdF93aWRlMTYpOwor
SlNDX0RFQ0xBUkVfQ09NTU9OX1NMT1dfUEFUSChpdGVyYXRvcl9uZXh0X3RyeV9mYXN0X3dpZGUz
Mik7CiAKLXVzaW5nIFNsb3dQYXRoRnVuY3Rpb24gPSBTbG93UGF0aFJldHVyblR5cGUoU0xPV19Q
QVRIICopKENhbGxGcmFtZSosIGNvbnN0IEluc3RydWN0aW9uKik7Cit1c2luZyBTbG93UGF0aEZ1
bmN0aW9uID0gU2xvd1BhdGhSZXR1cm5UeXBlKEpJVF9PUEVSQVRJT05fQVRUUklCVVRFUyopKENh
bGxGcmFtZSosIGNvbnN0IEluc3RydWN0aW9uKik7CiAKIH0gLy8gbmFtZXNwYWNlIEpTQwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>