<?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>69872</bug_id>
          
          <creation_ts>2011-10-11 14:56:57 -0700</creation_ts>
          <short_desc>Rename virtual getConstructData to getConstructDataVirtual</short_desc>
          <delta_ts>2011-10-17 02:08:36 -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>JavaScriptCore</component>
          <version>528+ (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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>67690</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Mark Hahnenberg">mhahnenberg</reporter>
          <assigned_to name="Mark Hahnenberg">mhahnenberg</assigned_to>
          <cc>abarth</cc>
    
    <cc>msaboff</cc>
    
    <cc>paroga</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>481943</commentid>
    <comment_count>0</comment_count>
    <who name="Mark Hahnenberg">mhahnenberg</who>
    <bug_when>2011-10-11 14:56:57 -0700</bug_when>
    <thetext>Since the compiler cannot tell the difference between virtual getConstructData and static getConstructData, we need to rename virtual getConstructData to getConstructDataVirtual in preparation for adding static getConstructData to the MethodTable in ClassInfo.  See also bug 69810.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>481953</commentid>
    <comment_count>1</comment_count>
      <attachid>110586</attachid>
    <who name="Mark Hahnenberg">mhahnenberg</who>
    <bug_when>2011-10-11 15:15:19 -0700</bug_when>
    <thetext>Created attachment 110586
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>482577</commentid>
    <comment_count>2</comment_count>
      <attachid>110716</attachid>
    <who name="Mark Hahnenberg">mhahnenberg</who>
    <bug_when>2011-10-12 11:45:40 -0700</bug_when>
    <thetext>Created attachment 110716
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>483265</commentid>
    <comment_count>3</comment_count>
      <attachid>110866</attachid>
    <who name="Mark Hahnenberg">mhahnenberg</who>
    <bug_when>2011-10-13 10:13:43 -0700</bug_when>
    <thetext>Created attachment 110866
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>483508</commentid>
    <comment_count>4</comment_count>
    <who name="Michael Saboff">msaboff</who>
    <bug_when>2011-10-13 14:43:25 -0700</bug_when>
    <thetext>Straightforward and looks fine.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>483667</commentid>
    <comment_count>5</comment_count>
      <attachid>110866</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2011-10-13 17:15:37 -0700</bug_when>
    <thetext>Comment on attachment 110866
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>483729</commentid>
    <comment_count>6</comment_count>
      <attachid>110866</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-10-13 19:21:51 -0700</bug_when>
    <thetext>Comment on attachment 110866
Patch

Clearing flags on attachment: 110866

Committed r97436: &lt;http://trac.webkit.org/changeset/97436&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>483730</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-10-13 19:21:56 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>485006</commentid>
    <comment_count>8</comment_count>
    <who name="Patrick R. Gansterer">paroga</who>
    <bug_when>2011-10-17 02:08:36 -0700</bug_when>
    <thetext>Committed interpreter build fix r97593: &lt;http://trac.webkit.org/changeset/97593&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>110586</attachid>
            <date>2011-10-11 15:15:19 -0700</date>
            <delta_ts>2011-10-13 14:28:47 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-69872-20111011151518.patch</filename>
            <type>text/plain</type>
            <size>45261</size>
            <attacher name="Mark Hahnenberg">mhahnenberg</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTcxNjEKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9BUEkvSlNDYWxsYmFja0NvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9BUEkvSlNDYWxsYmFja0NvbnN0cnVjdG9yLmNwcAppbmRleCA5NjZkMzRhZGIyNzBhYzJlNzJh
ZjE1NGM0OWE4NDRkYTZhYzExNjAzLi5jYjRiZTQxNmJkNTczODAzNTEzM2M1YmQ2YzVmOWQ3YjZi
ZTlmOWZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tD
b25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNr
Q29uc3RydWN0b3IuY3BwCkBAIC04Niw3ICs4Niw3IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBK
U0NfSE9TVF9DQUxMIGNvbnN0cnVjdEpTQ2FsbGJhY2soRXhlY1N0YXRlKiBleGVjKQogICAgIHJl
dHVybiBKU1ZhbHVlOjplbmNvZGUodG9KUyhKU09iamVjdE1ha2UoY3R4LCBzdGF0aWNfY2FzdDxK
U0NhbGxiYWNrQ29uc3RydWN0b3IqPihjb25zdHJ1Y3RvciktPmNsYXNzUmVmKCksIDApKSk7CiB9
CiAKLUNvbnN0cnVjdFR5cGUgSlNDYWxsYmFja0NvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRh
KENvbnN0cnVjdERhdGEmIGNvbnN0cnVjdERhdGEpCitDb25zdHJ1Y3RUeXBlIEpTQ2FsbGJhY2tD
b25zdHJ1Y3Rvcjo6Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoQ29uc3RydWN0RGF0YSYgY29uc3Ry
dWN0RGF0YSkKIHsKICAgICByZXR1cm4gZ2V0Q29uc3RydWN0RGF0YSh0aGlzLCBjb25zdHJ1Y3RE
YXRhKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFj
a0NvbnN0cnVjdG9yLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tDb25z
dHJ1Y3Rvci5oCmluZGV4IDQ2ZWE4MjBiNjcwNTUxNjM1YWM4ZTBlZjBlY2ZlM2FmYzdjNWY1YjQu
LmUzMTc2YzZhMWNjNDc0NmI2NmJmZWY2NmQ5OGI2YWVjODEzMWMyOTAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFja0NvbnN0cnVjdG9yLmgKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrQ29uc3RydWN0b3IuaApAQCAtNTgsNyAr
NTgsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIFN0cnVjdHVyZUZs
YWdzID0gSW1wbGVtZW50c0hhc0luc3RhbmNlIHwgSlNPYmplY3Q6OlN0cnVjdHVyZUZsYWdzOwog
CiBwcml2YXRlOgotICAgIHZpcnR1YWwgQ29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKENv
bnN0cnVjdERhdGEmKTsKKyAgICB2aXJ0dWFsIENvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0
YVZpcnR1YWwoQ29uc3RydWN0RGF0YSYpOwogICAgIHN0YXRpYyBDb25zdHJ1Y3RUeXBlIGdldENv
bnN0cnVjdERhdGEoSlNDZWxsKiwgQ29uc3RydWN0RGF0YSYpOwogCiAgICAgSlNDbGFzc1JlZiBt
X2NsYXNzOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNr
T2JqZWN0LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tPYmplY3QuaApp
bmRleCBhNTYwMzViOWE0ZDMzZTI5MWI1NjBhNTY3MTZjMzAyYWFlYmE4MzRhLi4zNmQ2ODY0ZWFl
MGI3NmYyMjAyNWU5NmMwNGE3MzYwNmU2ZDcxNGE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tPYmplY3QuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQVBJL0pTQ2FsbGJhY2tPYmplY3QuaApAQCAtMTk2LDcgKzE5Niw3IEBAIHByaXZhdGU6CiAg
ICAgdmlydHVhbCBkb3VibGUgdG9OdW1iZXIoRXhlY1N0YXRlKikgY29uc3Q7CiAgICAgdmlydHVh
bCBVU3RyaW5nIHRvU3RyaW5nKEV4ZWNTdGF0ZSopIGNvbnN0OwogCi0gICAgdmlydHVhbCBDb25z
dHJ1Y3RUeXBlIGdldENvbnN0cnVjdERhdGEoQ29uc3RydWN0RGF0YSYpOworICAgIHZpcnR1YWwg
Q29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChDb25zdHJ1Y3REYXRhJik7CiAg
ICAgc3RhdGljIENvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YShKU0NlbGwqLCBDb25zdHJ1
Y3REYXRhJik7CiAgICAgc3RhdGljIENhbGxUeXBlIGdldENhbGxEYXRhKEpTQ2VsbCosIENhbGxE
YXRhJik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFj
a09iamVjdEZ1bmN0aW9ucy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNr
T2JqZWN0RnVuY3Rpb25zLmgKaW5kZXggOGVlMDYwNjI3ZWI0NmJhYTI2ZGFhZGUwZGM0MjE3OWU3
ZGQ1YWNiZS4uOWZhYmJiYzg4MGZlOTU0ZTg5YzNhN2Q2MTQwMGU3MDE3NDcwZTZhNCAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrT2JqZWN0RnVuY3Rpb25z
LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrT2JqZWN0RnVuY3Rp
b25zLmgKQEAgLTMyOCw3ICszMjgsNyBAQCBib29sIEpTQ2FsbGJhY2tPYmplY3Q8UGFyZW50Pjo6
ZGVsZXRlUHJvcGVydHkoSlNDZWxsKiBjZWxsLCBFeGVjU3RhdGUqIGV4ZWMsIHVucwogfQogCiB0
ZW1wbGF0ZSA8Y2xhc3MgUGFyZW50PgotQ29uc3RydWN0VHlwZSBKU0NhbGxiYWNrT2JqZWN0PFBh
cmVudD46OmdldENvbnN0cnVjdERhdGEoQ29uc3RydWN0RGF0YSYgY29uc3RydWN0RGF0YSkKK0Nv
bnN0cnVjdFR5cGUgSlNDYWxsYmFja09iamVjdDxQYXJlbnQ+OjpnZXRDb25zdHJ1Y3REYXRhVmly
dHVhbChDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQogewogICAgIHJldHVybiBnZXRDb25z
dHJ1Y3REYXRhKHRoaXMsIGNvbnN0cnVjdERhdGEpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL0FQSS9KU09iamVjdFJlZi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
QVBJL0pTT2JqZWN0UmVmLmNwcAppbmRleCA0Y2M2NmE0ZGIzMjU0NTI2NTQ1NmJlZDE4YTE1NTdk
ZWYxMWNkYmU2Li41ZmNiYjgzYTM3ZTVhYWZlY2U2ZjJmYmExNzBhZTEwN2VhMGU4NDAxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTT2JqZWN0UmVmLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTT2JqZWN0UmVmLmNwcApAQCAtNDU0LDcgKzQ1NCw3
IEBAIGJvb2wgSlNPYmplY3RJc0NvbnN0cnVjdG9yKEpTQ29udGV4dFJlZiwgSlNPYmplY3RSZWYg
b2JqZWN0KQogewogICAgIEpTT2JqZWN0KiBqc09iamVjdCA9IHRvSlMob2JqZWN0KTsKICAgICBD
b25zdHJ1Y3REYXRhIGNvbnN0cnVjdERhdGE7Ci0gICAgcmV0dXJuIGpzT2JqZWN0LT5nZXRDb25z
dHJ1Y3REYXRhKGNvbnN0cnVjdERhdGEpICE9IENvbnN0cnVjdFR5cGVOb25lOworICAgIHJldHVy
biBqc09iamVjdC0+Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoY29uc3RydWN0RGF0YSkgIT0gQ29u
c3RydWN0VHlwZU5vbmU7CiB9CiAKIEpTT2JqZWN0UmVmIEpTT2JqZWN0Q2FsbEFzQ29uc3RydWN0
b3IoSlNDb250ZXh0UmVmIGN0eCwgSlNPYmplY3RSZWYgb2JqZWN0LCBzaXplX3QgYXJndW1lbnRD
b3VudCwgY29uc3QgSlNWYWx1ZVJlZiBhcmd1bWVudHNbXSwgSlNWYWx1ZVJlZiogZXhjZXB0aW9u
KQpAQCAtNDY1LDcgKzQ2NSw3IEBAIEpTT2JqZWN0UmVmIEpTT2JqZWN0Q2FsbEFzQ29uc3RydWN0
b3IoSlNDb250ZXh0UmVmIGN0eCwgSlNPYmplY3RSZWYgb2JqZWN0LCBzaXplCiAgICAgSlNPYmpl
Y3QqIGpzT2JqZWN0ID0gdG9KUyhvYmplY3QpOwogCiAgICAgQ29uc3RydWN0RGF0YSBjb25zdHJ1
Y3REYXRhOwotICAgIENvbnN0cnVjdFR5cGUgY29uc3RydWN0VHlwZSA9IGpzT2JqZWN0LT5nZXRD
b25zdHJ1Y3REYXRhKGNvbnN0cnVjdERhdGEpOworICAgIENvbnN0cnVjdFR5cGUgY29uc3RydWN0
VHlwZSA9IGpzT2JqZWN0LT5nZXRDb25zdHJ1Y3REYXRhVmlydHVhbChjb25zdHJ1Y3REYXRhKTsK
ICAgICBpZiAoY29uc3RydWN0VHlwZSA9PSBDb25zdHJ1Y3RUeXBlTm9uZSkKICAgICAgICAgcmV0
dXJuIDA7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IDQ3MmNhOTRkYjk4MWYzZDhiMDFj
NzcwMjk3MzI2MzhhN2I2OTI4YWYuLmRhNGQ5YjQzYTcxOTcwNmI3ZWFlYmJhMjViZWVjNGM1ZjM5
MzQxODYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY2IEBACisyMDExLTEw
LTExICBNYXJrIEhhaG5lbmJlcmcgIDxtaGFobmVuYmVyZ0BhcHBsZS5jb20+CisKKyAgICAgICAg
UmVuYW1lIHZpcnR1YWwgZ2V0Q29uc3RydWN0RGF0YSB0byBnZXRDb25zdHJ1Y3REYXRhVmlydHVh
bAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Njk4NzIK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZW5hbWVk
IHZpcnR1YWwgZ2V0Q29uc3RydWN0RGF0YSBmdW5jdGlvbnMgdG8gZ2V0Q29uc3RydWN0RGF0YVZp
cnR1YWwgdG8gCisgICAgICAgIGF2b2lkIGNvbmZsaWN0cyB3aGVuIHdlIGFkZCBzdGF0aWMgZ2V0
Q29uc3RydWN0RGF0YSB0byB0aGUgTWV0aG9kVGFibGUuCisKKyAgICAgICAgKiBBUEkvSlNDYWxs
YmFja0NvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6SlNDYWxsYmFja0NvbnN0cnVjdG9y
OjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbCk6CisgICAgICAgICogQVBJL0pTQ2FsbGJhY2tDb25z
dHJ1Y3Rvci5oOgorICAgICAgICAqIEFQSS9KU0NhbGxiYWNrT2JqZWN0Lmg6CisgICAgICAgICog
QVBJL0pTQ2FsbGJhY2tPYmplY3RGdW5jdGlvbnMuaDoKKyAgICAgICAgKEpTQzo6OjpnZXRDb25z
dHJ1Y3REYXRhVmlydHVhbCk6CisgICAgICAgICogQVBJL0pTT2JqZWN0UmVmLmNwcDoKKyAgICAg
ICAgKEpTT2JqZWN0SXNDb25zdHJ1Y3Rvcik6CisgICAgICAgIChKU09iamVjdENhbGxBc0NvbnN0
cnVjdG9yKToKKyAgICAgICAgKiBKYXZhU2NyaXB0Q29yZS5leHA6CisgICAgICAgICogZGZnL0RG
R09wZXJhdGlvbnMuY3BwOgorICAgICAgICAqIGppdC9KSVRTdHVicy5jcHA6CisgICAgICAgIChK
U0M6OkRFRklORV9TVFVCX0ZVTkNUSU9OKToKKyAgICAgICAgKiBydW50aW1lL0FycmF5Q29uc3Ry
dWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpBcnJheUNvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3RE
YXRhVmlydHVhbCk6CisgICAgICAgICogcnVudGltZS9BcnJheUNvbnN0cnVjdG9yLmg6CisgICAg
ICAgICogcnVudGltZS9Cb29sZWFuQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpCb29s
ZWFuQ29uc3RydWN0b3I6OmdldENvbnN0cnVjdERhdGFWaXJ0dWFsKToKKyAgICAgICAgKiBydW50
aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5oOgorICAgICAgICAqIHJ1bnRpbWUvRGF0ZUNvbnN0cnVj
dG9yLmNwcDoKKyAgICAgICAgKEpTQzo6RGF0ZUNvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRh
VmlydHVhbCk6CisgICAgICAgICogcnVudGltZS9EYXRlQ29uc3RydWN0b3IuaDoKKyAgICAgICAg
KiBydW50aW1lL0Vycm9yLmg6CisgICAgICAgIChKU0M6OlN0cmljdE1vZGVUeXBlRXJyb3JGdW5j
dGlvbjo6Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwpOgorICAgICAgICAqIHJ1bnRpbWUvRXJyb3JD
b25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OkVycm9yQ29uc3RydWN0b3I6OmdldENvbnN0
cnVjdERhdGFWaXJ0dWFsKToKKyAgICAgICAgKiBydW50aW1lL0Vycm9yQ29uc3RydWN0b3IuaDoK
KyAgICAgICAgKiBydW50aW1lL0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlND
OjpGdW5jdGlvbkNvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbCk6CisgICAgICAg
ICogcnVudGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmg6CisgICAgICAgICogcnVudGltZS9KU0Nl
bGwuY3BwOgorICAgICAgICAoSlNDOjpKU0NlbGw6OmdldENvbnN0cnVjdERhdGFWaXJ0dWFsKToK
KyAgICAgICAgKiBydW50aW1lL0pTQ2VsbC5oOgorICAgICAgICAoSlNDOjpnZXRDb25zdHJ1Y3RE
YXRhKToKKyAgICAgICAgKiBydW50aW1lL0pTRnVuY3Rpb24uY3BwOgorICAgICAgICAoSlNDOjpK
U0Z1bmN0aW9uOjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbCk6CisgICAgICAgICogcnVudGltZS9K
U0Z1bmN0aW9uLmg6CisgICAgICAgICogcnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVjdG9yLmNw
cDoKKyAgICAgICAgKEpTQzo6TmF0aXZlRXJyb3JDb25zdHJ1Y3Rvcjo6Z2V0Q29uc3RydWN0RGF0
YVZpcnR1YWwpOgorICAgICAgICAqIHJ1bnRpbWUvTmF0aXZlRXJyb3JDb25zdHJ1Y3Rvci5oOgor
ICAgICAgICAqIHJ1bnRpbWUvTnVtYmVyQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpO
dW1iZXJDb25zdHJ1Y3Rvcjo6Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwpOgorICAgICAgICAqIHJ1
bnRpbWUvTnVtYmVyQ29uc3RydWN0b3IuaDoKKyAgICAgICAgKiBydW50aW1lL09iamVjdENvbnN0
cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6T2JqZWN0Q29uc3RydWN0b3I6OmdldENvbnN0cnVj
dERhdGFWaXJ0dWFsKToKKyAgICAgICAgKiBydW50aW1lL09iamVjdENvbnN0cnVjdG9yLmg6Cisg
ICAgICAgICogcnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OlJl
Z0V4cENvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbCk6CisgICAgICAgICogcnVu
dGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5oOgorICAgICAgICAqIHJ1bnRpbWUvU3RyaW5nQ29uc3Ry
dWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpTdHJpbmdDb25zdHJ1Y3Rvcjo6Z2V0Q29uc3RydWN0
RGF0YVZpcnR1YWwpOgorICAgICAgICAqIHJ1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuaDoKKwog
MjAxMS0xMC0xMSAgR2F2aW4gQmFycmFjbG91Z2ggIDxiYXJhY2xvdWdoQGFwcGxlLmNvbT4KIAog
ICAgICAgICBTd2l0Y2ggUmVnaXN0ZXJTaXplZEJvb2xlYW4vZGZnQ29udmVydEpTVmFsdWVUb0lu
dDMyIHJldHVybiB0eXBlIHRvIHNpemVfdApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL0phdmFTY3JpcHRDb3JlLmV4cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0
Q29yZS5leHAKaW5kZXggZmFhNWVjMjk1NmJjMWNjYzViM2E4N2U3ZDU5ZmMxY2M2YzI0MTMzNC4u
NWIyZWZjNTU3ZWUxZTI4NzIxZTUwOWYzYWIxOTM4ZDg5YzdiNDlkOCAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLmV4cAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvSmF2YVNjcmlwdENvcmUuZXhwCkBAIC0yNTksOSArMjU5LDkgQEAgX19aTjNKU0M0
Y2FsbEVQTlNfOUV4ZWNTdGF0ZUVOU183SlNWYWx1ZUVOU184Q2FsbFR5cGVFUktOU184Q2FsbERh
dGFFUzJfUktOU183QXIKIF9fWk4zSlNDNkpTQ2VsbDExZ2V0Q2FsbERhdGFFUFMwX1JOU184Q2Fs
bERhdGFFCiBfX1pOM0pTQzZKU0NlbGwxNGRlbGV0ZVByb3BlcnR5RVBOU185RXhlY1N0YXRlRVJL
TlNfMTBJZGVudGlmaWVyRQogX19aTjNKU0M2SlNDZWxsMTRkZWxldGVQcm9wZXJ0eUVQTlNfOUV4
ZWNTdGF0ZUVqCi1fX1pOM0pTQzZKU0NlbGwxNmdldENvbnN0cnVjdERhdGFFUk5TXzEzQ29uc3Ry
dWN0RGF0YUUKIF9fWk4zSlNDNkpTQ2VsbDE4Z2V0T3duUHJvcGVydHlTbG90RVBOU185RXhlY1N0
YXRlRVJLTlNfMTBJZGVudGlmaWVyRVJOU18xMlByb3BlcnR5U2xvdEUKIF9fWk4zSlNDNkpTQ2Vs
bDE4Z2V0T3duUHJvcGVydHlTbG90RVBOU185RXhlY1N0YXRlRWpSTlNfMTJQcm9wZXJ0eVNsb3RF
CitfX1pOM0pTQzZKU0NlbGwyM2dldENvbnN0cnVjdERhdGFWaXJ0dWFsRVJOU18xM0NvbnN0cnVj
dERhdGFFCiBfX1pOM0pTQzZKU0NlbGwzcHV0RVBOU185RXhlY1N0YXRlRVJLTlNfMTBJZGVudGlm
aWVyRU5TXzdKU1ZhbHVlRVJOU18xNVB1dFByb3BlcnR5U2xvdEUKIF9fWk4zSlNDNkpTQ2VsbDNw
dXRFUE5TXzlFeGVjU3RhdGVFak5TXzdKU1ZhbHVlRSAgCiBfX1pOM0pTQzZKU0NlbGw5Z2V0T2Jq
ZWN0RXYKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHT3BlcmF0aW9u
cy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR09wZXJhdGlvbnMuY3BwCmluZGV4
IDc1ZGJmYzg1MzFhY2IwNDVhMzExNGNjZjc1MzZmNWRjNTJjZmQ0N2MuLjQ1OWNlODM3Y2EwYzk0
ZDEyMWQ3YjliZjI1MWUyOTk3MWE4MDUxMzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9kZmcvREZHT3BlcmF0aW9ucy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Rm
Zy9ERkdPcGVyYXRpb25zLmNwcApAQCAtMTQxLDcgKzE0MSw3IEBAIEpTQ2VsbCogREZHX09QRVJB
VElPTiBvcGVyYXRpb25DcmVhdGVUaGlzKEV4ZWNTdGF0ZSogZXhlYywgSlNDZWxsKiBwcm90b3R5
cGUpCiAgICAgCiAjaWYgIUFTU0VSVF9ESVNBQkxFRAogICAgIENvbnN0cnVjdERhdGEgY29uc3Ry
dWN0RGF0YTsKLSAgICBBU1NFUlQoY29uc3RydWN0b3ItPmdldENvbnN0cnVjdERhdGEoY29uc3Ry
dWN0RGF0YSkgPT0gQ29uc3RydWN0VHlwZUpTKTsKKyAgICBBU1NFUlQoY29uc3RydWN0b3ItPmdl
dENvbnN0cnVjdERhdGFWaXJ0dWFsKGNvbnN0cnVjdERhdGEpID09IENvbnN0cnVjdFR5cGVKUyk7
CiAjZW5kaWYKICAgICAKICAgICBKU0dsb2JhbERhdGEmIGdsb2JhbERhdGEgPSBleGVjLT5nbG9i
YWxEYXRhKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVFN0dWJz
LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUU3R1YnMuY3BwCmluZGV4IGE5MzBm
NTgyZTA5ZGJhZjcxYzc1MWIyNWM1YzRlNzVhN2QwYTk2MjIuLjgzMmRkZWRkOGNkZTMzZjU1ZWJj
NDE5ZDdkMWUyOWUzNTI0NmFjZjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9q
aXQvSklUU3R1YnMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUU3R1YnMu
Y3BwCkBAIC0xMjY4LDcgKzEyNjgsNyBAQCBERUZJTkVfU1RVQl9GVU5DVElPTihFbmNvZGVkSlNW
YWx1ZSwgb3BfY3JlYXRlX3RoaXMpCiAgICAgSlNGdW5jdGlvbiogY29uc3RydWN0b3IgPSBhc0Z1
bmN0aW9uKGNhbGxGcmFtZS0+Y2FsbGVlKCkpOwogI2lmICFBU1NFUlRfRElTQUJMRUQKICAgICBD
b25zdHJ1Y3REYXRhIGNvbnN0cnVjdERhdGE7Ci0gICAgQVNTRVJUKGNvbnN0cnVjdG9yLT5nZXRD
b25zdHJ1Y3REYXRhKGNvbnN0cnVjdERhdGEpID09IENvbnN0cnVjdFR5cGVKUyk7CisgICAgQVNT
RVJUKGNvbnN0cnVjdG9yLT5nZXRDb25zdHJ1Y3REYXRhVmlydHVhbChjb25zdHJ1Y3REYXRhKSA9
PSBDb25zdHJ1Y3RUeXBlSlMpOwogI2VuZGlmCiAKICAgICBTdHJ1Y3R1cmUqIHN0cnVjdHVyZTsK
QEAgLTIxNjUsNyArMjE2NSw3IEBAIERFRklORV9TVFVCX0ZVTkNUSU9OKHZvaWQqLCBvcF9jb25z
dHJ1Y3Rfaml0Q29tcGlsZSkKIAogI2lmICFBU1NFUlRfRElTQUJMRUQKICAgICBDb25zdHJ1Y3RE
YXRhIGNvbnN0cnVjdERhdGE7Ci0gICAgQVNTRVJUKGFzRnVuY3Rpb24oc3RhY2tGcmFtZS5jYWxs
RnJhbWUtPmNhbGxlZSgpKS0+Z2V0Q29uc3RydWN0RGF0YShjb25zdHJ1Y3REYXRhKSA9PSBDb25z
dHJ1Y3RUeXBlSlMpOworICAgIEFTU0VSVChhc0Z1bmN0aW9uKHN0YWNrRnJhbWUuY2FsbEZyYW1l
LT5jYWxsZWUoKSktPmdldENvbnN0cnVjdERhdGFWaXJ0dWFsKGNvbnN0cnVjdERhdGEpID09IENv
bnN0cnVjdFR5cGVKUyk7CiAjZW5kaWYKICAgICAKICAgICByZXR1cm4gaml0Q29tcGlsZUZvcihz
dGFja0ZyYW1lLCBDb2RlRm9yQ29uc3RydWN0KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0FycmF5Q29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvQXJyYXlDb25zdHJ1Y3Rvci5jcHAKaW5kZXggZjU1NGU0MWE0ZmNhZmY5ZTkw
MjkzNjc5NjA5NWJiZmExZWE0ZGMxNy4uZDRkNzdmMjNiZmM2NTIxNGZkMmU2YzBmODg4YmI4ODBj
YzJmMTAxMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlD
b25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlD
b25zdHJ1Y3Rvci5jcHAKQEAgLTk3LDcgKzk3LDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpT
Q19IT1NUX0NBTEwgY29uc3RydWN0V2l0aEFycmF5Q29uc3RydWN0b3IoRXhlY1N0YXRlKiBleGUK
ICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGNvbnN0cnVjdEFycmF5V2l0aFNpemVRdWlyayhl
eGVjLCBhcmdzKSk7CiB9CiAKLUNvbnN0cnVjdFR5cGUgQXJyYXlDb25zdHJ1Y3Rvcjo6Z2V0Q29u
c3RydWN0RGF0YShDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQorQ29uc3RydWN0VHlwZSBB
cnJheUNvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChDb25zdHJ1Y3REYXRhJiBj
b25zdHJ1Y3REYXRhKQogewogICAgIHJldHVybiBnZXRDb25zdHJ1Y3REYXRhKHRoaXMsIGNvbnN0
cnVjdERhdGEpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
QXJyYXlDb25zdHJ1Y3Rvci5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlD
b25zdHJ1Y3Rvci5oCmluZGV4IDBlYTNlNDJiY2QyMTkxM2I2ODM4ZDI2ZWFiMDE1MzFjOTUzODdh
YWEuLjkzMDQ1OTljNTIwMWZhNDQ1NGFhNDQ0NDg5ZWRkMDczMDkzZTAxMjIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5Q29uc3RydWN0b3IuaAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BcnJheUNvbnN0cnVjdG9yLmgKQEAgLTU2LDcg
KzU2LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKICAgICAgICAgdmlydHVhbCBib29sIGdldE93blBy
b3BlcnR5RGVzY3JpcHRvcihFeGVjU3RhdGUqLCBjb25zdCBJZGVudGlmaWVyJiwgUHJvcGVydHlE
ZXNjcmlwdG9yJik7CiAKLSAgICAgICAgdmlydHVhbCBDb25zdHJ1Y3RUeXBlIGdldENvbnN0cnVj
dERhdGEoQ29uc3RydWN0RGF0YSYpOworICAgICAgICB2aXJ0dWFsIENvbnN0cnVjdFR5cGUgZ2V0
Q29uc3RydWN0RGF0YVZpcnR1YWwoQ29uc3RydWN0RGF0YSYpOwogICAgICAgICBzdGF0aWMgQ29u
c3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKEpTQ2VsbCosIENvbnN0cnVjdERhdGEmKTsKICAg
ICAgICAgc3RhdGljIENhbGxUeXBlIGdldENhbGxEYXRhKEpTQ2VsbCosIENhbGxEYXRhJik7CiAg
ICAgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5D
b25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFuQ29u
c3RydWN0b3IuY3BwCmluZGV4IDFhNDE1MmNiMDNkOWI1ZGJkZTc3NzMwN2Q5YmExYzRhYTc5Njlm
MDEuLmFiNjE2OWQxOWY4MWJiZjc5N2NlYWU0ZjM3NDUwMmNmZDg5NjVlNGMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9yLmNwcApA
QCAtNTgsNyArNTgsNyBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25z
dHJ1Y3RXaXRoQm9vbGVhbkNvbnN0cnVjdG9yKEV4ZWNTdGF0ZSogZQogICAgIHJldHVybiBKU1Zh
bHVlOjplbmNvZGUoY29uc3RydWN0Qm9vbGVhbihleGVjLCBhcmdzKSk7CiB9CiAKLUNvbnN0cnVj
dFR5cGUgQm9vbGVhbkNvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhKENvbnN0cnVjdERhdGEm
IGNvbnN0cnVjdERhdGEpCitDb25zdHJ1Y3RUeXBlIEJvb2xlYW5Db25zdHJ1Y3Rvcjo6Z2V0Q29u
c3RydWN0RGF0YVZpcnR1YWwoQ29uc3RydWN0RGF0YSYgY29uc3RydWN0RGF0YSkKIHsKICAgICBy
ZXR1cm4gZ2V0Q29uc3RydWN0RGF0YSh0aGlzLCBjb25zdHJ1Y3REYXRhKTsKIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5oIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9yLmgKaW5kZXgg
OGQxMGYwOTgxZWFjZTFlMjI0MTJkZDhhOGM5NDIwM2UwNTVkMjM4Yy4uNjcwM2ZkN2E5ZGExZmI0
NDEwZmZlZWMzNTE0ODc3YjZlZTA3ZDEwYiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9yLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9yLmgKQEAgLTUwLDcgKzUwLDcgQEAgbmFtZXNw
YWNlIEpTQyB7CiAKICAgICBwcml2YXRlOgogICAgICAgICBCb29sZWFuQ29uc3RydWN0b3IoSlNH
bG9iYWxPYmplY3QqLCBTdHJ1Y3R1cmUqKTsKLSAgICAgICAgdmlydHVhbCBDb25zdHJ1Y3RUeXBl
IGdldENvbnN0cnVjdERhdGEoQ29uc3RydWN0RGF0YSYpOworICAgICAgICB2aXJ0dWFsIENvbnN0
cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoQ29uc3RydWN0RGF0YSYpOwogICAgICAg
ICBzdGF0aWMgQ29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKEpTQ2VsbCosIENvbnN0cnVj
dERhdGEmKTsKICAgICAgICAgc3RhdGljIENhbGxUeXBlIGdldENhbGxEYXRhKEpTQ2VsbCosIENh
bGxEYXRhJik7CiAgICAgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0RhdGVDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9E
YXRlQ29uc3RydWN0b3IuY3BwCmluZGV4IGY0NDBhNjRiZmE1ZjY1MzBjZGNlZjc0MmQ5M2RkY2Nl
YTJhYTEzMjEuLjhjZTBiMTE4MWNiMTIzZDVhNGE0MzRjMjg2ZGViNzEyOTYwZWJkYzkgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVDb25zdHJ1Y3Rvci5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUNvbnN0cnVjdG9yLmNwcApA
QCAtMTYxLDcgKzE2MSw3IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNv
bnN0cnVjdFdpdGhEYXRlQ29uc3RydWN0b3IoRXhlY1N0YXRlKiBleGVjCiAgICAgcmV0dXJuIEpT
VmFsdWU6OmVuY29kZShjb25zdHJ1Y3REYXRlKGV4ZWMsIGFzSW50ZXJuYWxGdW5jdGlvbihleGVj
LT5jYWxsZWUoKSktPmdsb2JhbE9iamVjdCgpLCBhcmdzKSk7CiB9CiAKLUNvbnN0cnVjdFR5cGUg
RGF0ZUNvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhKENvbnN0cnVjdERhdGEmIGNvbnN0cnVj
dERhdGEpCitDb25zdHJ1Y3RUeXBlIERhdGVDb25zdHJ1Y3Rvcjo6Z2V0Q29uc3RydWN0RGF0YVZp
cnR1YWwoQ29uc3RydWN0RGF0YSYgY29uc3RydWN0RGF0YSkKIHsKICAgICByZXR1cm4gZ2V0Q29u
c3RydWN0RGF0YSh0aGlzLCBjb25zdHJ1Y3REYXRhKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVDb25zdHJ1Y3Rvci5oIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvRGF0ZUNvbnN0cnVjdG9yLmgKaW5kZXggZjgzN2Q2NmFhZWQxYzNiYmJl
ZTM5YjdkMjA2NWNkY2VlNDgzYjIyMS4uOWM0ZmZjNDYxYzhmYjExZDMzOWRlN2M0MWQyNmQ0MGQ4
YzQzMGY4ZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUNv
bnN0cnVjdG9yLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUNvbnN0
cnVjdG9yLmgKQEAgLTUxLDcgKzUxLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKICAgICBwcml2YXRl
OgogICAgICAgICBEYXRlQ29uc3RydWN0b3IoSlNHbG9iYWxPYmplY3QqLCBTdHJ1Y3R1cmUqKTsK
LSAgICAgICAgdmlydHVhbCBDb25zdHJ1Y3RUeXBlIGdldENvbnN0cnVjdERhdGEoQ29uc3RydWN0
RGF0YSYpOworICAgICAgICB2aXJ0dWFsIENvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YVZp
cnR1YWwoQ29uc3RydWN0RGF0YSYpOwogICAgICAgICBzdGF0aWMgQ29uc3RydWN0VHlwZSBnZXRD
b25zdHJ1Y3REYXRhKEpTQ2VsbCosIENvbnN0cnVjdERhdGEmKTsKICAgICAgICAgc3RhdGljIENh
bGxUeXBlIGdldENhbGxEYXRhKEpTQ2VsbCosIENhbGxEYXRhJik7CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9FcnJvci5oCmluZGV4IGMzNDBlNmMyMzk4NTc2YTE4NTI4NWVjZjZhOWY1NzZh
OTI2Y2UxNTMuLjUxODBmZmEwZjc0MmE3ODU1ZDkzNDc0NTc5MGJhNTdkZTM5MGI4YWEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yLmgKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3IuaApAQCAtOTgsNyArOTgsNyBAQCBuYW1lc3Bh
Y2UgSlNDIHsKICAgICAgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNOdWxsKCkpOwog
ICAgICAgICB9CiAgICAgCi0gICAgICAgIENvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YShD
b25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQorICAgICAgICB2aXJ0dWFsIENvbnN0cnVjdFR5
cGUgZ2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoQ29uc3RydWN0RGF0YSYgY29uc3RydWN0RGF0YSkK
ICAgICAgICAgewogICAgICAgICAgICAgY29uc3RydWN0RGF0YS5uYXRpdmUuZnVuY3Rpb24gPSBj
b25zdHJ1Y3RUaHJvd1R5cGVFcnJvcjsKICAgICAgICAgICAgIHJldHVybiBDb25zdHJ1Y3RUeXBl
SG9zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yQ29u
c3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JDb25zdHJ1
Y3Rvci5jcHAKaW5kZXggODFlNDZkZDE0MzYwMDk5NTg5ZTI2NzZjYzY3MDUwODA2ZTQyYjRiMS4u
MDhhNzVmODVlZDljMzdjODZhYTA2MjlhMDQ1M2ZmMTExMGFkZDU0NSAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JDb25zdHJ1Y3Rvci5jcHAKQEAgLTUzLDcg
KzUzLDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29uc3RydWN0V2l0
aEVycm9yQ29uc3RydWN0b3IoRXhlY1N0YXRlKiBleGUKICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5j
b2RlKEVycm9ySW5zdGFuY2U6OmNyZWF0ZShleGVjLCBlcnJvclN0cnVjdHVyZSwgbWVzc2FnZSkp
OwogfQogCi1Db25zdHJ1Y3RUeXBlIEVycm9yQ29uc3RydWN0b3I6OmdldENvbnN0cnVjdERhdGEo
Q29uc3RydWN0RGF0YSYgY29uc3RydWN0RGF0YSkKK0NvbnN0cnVjdFR5cGUgRXJyb3JDb25zdHJ1
Y3Rvcjo6Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoQ29uc3RydWN0RGF0YSYgY29uc3RydWN0RGF0
YSkKIHsKICAgICByZXR1cm4gZ2V0Q29uc3RydWN0RGF0YSh0aGlzLCBjb25zdHJ1Y3REYXRhKTsK
IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yQ29uc3Ry
dWN0b3IuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yQ29uc3RydWN0b3Iu
aAppbmRleCBiOWI5ZDM3NTAxMTUwZmJiNDA3ODVlZWNjYTllNTc2ODQwNzZhNDhkLi5hZjNmYWRm
NjQ1YjIxOGM3MDhmZDY5YjYwZDhlNTdiY2Y2NTEzN2M1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9FcnJvckNvbnN0cnVjdG9yLmgKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JDb25zdHJ1Y3Rvci5oCkBAIC01MSw3ICs1MSw3IEBAIG5h
bWVzcGFjZSBKU0MgewogICAgICAgICAKICAgICBwcml2YXRlOgogICAgICAgICBFcnJvckNvbnN0
cnVjdG9yKEpTR2xvYmFsT2JqZWN0KiwgU3RydWN0dXJlKik7Ci0gICAgICAgIHZpcnR1YWwgQ29u
c3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKENvbnN0cnVjdERhdGEmKTsKKyAgICAgICAgdmly
dHVhbCBDb25zdHJ1Y3RUeXBlIGdldENvbnN0cnVjdERhdGFWaXJ0dWFsKENvbnN0cnVjdERhdGEm
KTsKICAgICAgICAgc3RhdGljIENvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YShKU0NlbGwq
LCBDb25zdHJ1Y3REYXRhJik7CiAgICAgICAgIHN0YXRpYyBDYWxsVHlwZSBnZXRDYWxsRGF0YShK
U0NlbGwqLCBDYWxsRGF0YSYpOwogICAgIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwCmluZGV4IGMzZWRhMDk5MjI0YjA2
NDBhZTRkZWM2ZTM0YmY2NGI2OTc5YzYxOTIuLjRhMTdiYWRkMzlmZWEwMTZjYTQwNDllNmZmZWE1
ZGVlYTk3YTUxOTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1
bmN0aW9uQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwCkBAIC01OSw3ICs1OSw3IEBAIHN0YXRpYyBFbmNvZGVk
SlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdFdpdGhGdW5jdGlvbkNvbnN0cnVjdG9yKEV4
ZWNTdGF0ZSoKICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGNvbnN0cnVjdEZ1bmN0aW9uKGV4
ZWMsIGFzSW50ZXJuYWxGdW5jdGlvbihleGVjLT5jYWxsZWUoKSktPmdsb2JhbE9iamVjdCgpLCBh
cmdzKSk7CiB9CiAKLUNvbnN0cnVjdFR5cGUgRnVuY3Rpb25Db25zdHJ1Y3Rvcjo6Z2V0Q29uc3Ry
dWN0RGF0YShDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQorQ29uc3RydWN0VHlwZSBGdW5j
dGlvbkNvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChDb25zdHJ1Y3REYXRhJiBj
b25zdHJ1Y3REYXRhKQogewogICAgIHJldHVybiBnZXRDb25zdHJ1Y3REYXRhKHRoaXMsIGNvbnN0
cnVjdERhdGEpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
RnVuY3Rpb25Db25zdHJ1Y3Rvci5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVu
Y3Rpb25Db25zdHJ1Y3Rvci5oCmluZGV4IGU4OGE5ZGMyYTYyYWI0MDZmMzdkOWEzOWY1ZGZlMTJh
YjE3MmQxNzMuLjBhNzM3ZmI0NWQwMTg1MDg3YzEzMjU5MGYwOTgwNjIwZTA2ODJhZmQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uQ29uc3RydWN0b3Iu
aAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvbkNvbnN0cnVjdG9y
LmgKQEAgLTQ4LDcgKzQ4LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgcHJpdmF0ZToKICAgICAg
ICAgRnVuY3Rpb25Db25zdHJ1Y3RvcihKU0dsb2JhbE9iamVjdCosIFN0cnVjdHVyZSopOwogICAg
ICAgICB2b2lkIGZpbmlzaENyZWF0aW9uKEV4ZWNTdGF0ZSosIEZ1bmN0aW9uUHJvdG90eXBlKik7
Ci0gICAgICAgIHZpcnR1YWwgQ29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKENvbnN0cnVj
dERhdGEmKTsKKyAgICAgICAgdmlydHVhbCBDb25zdHJ1Y3RUeXBlIGdldENvbnN0cnVjdERhdGFW
aXJ0dWFsKENvbnN0cnVjdERhdGEmKTsKICAgICAgICAgc3RhdGljIENvbnN0cnVjdFR5cGUgZ2V0
Q29uc3RydWN0RGF0YShKU0NlbGwqLCBDb25zdHJ1Y3REYXRhJik7CiAgICAgICAgIHN0YXRpYyBD
YWxsVHlwZSBnZXRDYWxsRGF0YShKU0NlbGwqLCBDYWxsRGF0YSYpOwogICAgIH07CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0NlbGwuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNDZWxsLmNwcAppbmRleCA4OTczZGMzMDA0NGZiZmY3OGYw
ZjA2MzYyMzhiOWY4YmUzOWU5NzkxLi5hNjhiMGYwZjkwZWIwYjU4MTUxZTUzNDYxMGZjOGQ4ZmMx
YTM2MWNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0NlbGwu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ2VsbC5jcHAKQEAgLTU5
LDcgKzU5LDcgQEAgQ2FsbFR5cGUgSlNDZWxsOjpnZXRDYWxsRGF0YShKU0NlbGwqLCBDYWxsRGF0
YSYpCiAgICAgcmV0dXJuIENhbGxUeXBlTm9uZTsKIH0KIAotQ29uc3RydWN0VHlwZSBKU0NlbGw6
OmdldENvbnN0cnVjdERhdGEoQ29uc3RydWN0RGF0YSYpCitDb25zdHJ1Y3RUeXBlIEpTQ2VsbDo6
Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoQ29uc3RydWN0RGF0YSYpCiB7CiAgICAgcmV0dXJuIENv
bnN0cnVjdFR5cGVOb25lOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNDZWxsLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0NlbGwuaApp
bmRleCAyM2YwZmQ1YzBmYWY3NTQ5ZmU3NjA4ZTBlNGViMGY1M2YzMjA2YmU3Li4xYTk0Mzk1ZWJi
ZWVlOGMxODgyZTViYTFiMmUzN2QwZjgyZTkxNTlmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU0NlbGwuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU0NlbGwuaApAQCAtNzQsNyArNzQsNyBAQCBuYW1lc3BhY2UgSlNDIHsKICAgICAgICAg
Y29uc3QgSlNPYmplY3QqIGdldE9iamVjdCgpIGNvbnN0OyAvLyBOVUxMIGlmIG5vdCBhbiBvYmpl
Y3QKICAgICAgICAgCiAgICAgICAgIHN0YXRpYyBDYWxsVHlwZSBnZXRDYWxsRGF0YShKU0NlbGwq
LCBDYWxsRGF0YSYpOwotICAgICAgICB2aXJ0dWFsIENvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0
RGF0YShDb25zdHJ1Y3REYXRhJik7CisgICAgICAgIHZpcnR1YWwgQ29uc3RydWN0VHlwZSBnZXRD
b25zdHJ1Y3REYXRhVmlydHVhbChDb25zdHJ1Y3REYXRhJik7CiAgICAgICAgIHN0YXRpYyBDb25z
dHJ1Y3RUeXBlIGdldENvbnN0cnVjdERhdGEoSlNDZWxsKiwgQ29uc3RydWN0RGF0YSYpOwogCiAg
ICAgICAgIC8vIEJhc2ljIGNvbnZlcnNpb25zLgpAQCAtMjM3LDcgKzIzNyw3IEBAIG5hbWVzcGFj
ZSBKU0MgewogCiAgICAgaW5saW5lIENvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YShKU1Zh
bHVlIHZhbHVlLCBDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQogICAgIHsKLSAgICAgICAg
Q29uc3RydWN0VHlwZSByZXN1bHQgPSB2YWx1ZS5pc0NlbGwoKSA/IHZhbHVlLmFzQ2VsbCgpLT5n
ZXRDb25zdHJ1Y3REYXRhKGNvbnN0cnVjdERhdGEpIDogQ29uc3RydWN0VHlwZU5vbmU7CisgICAg
ICAgIENvbnN0cnVjdFR5cGUgcmVzdWx0ID0gdmFsdWUuaXNDZWxsKCkgPyB2YWx1ZS5hc0NlbGwo
KS0+Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoY29uc3RydWN0RGF0YSkgOiBDb25zdHJ1Y3RUeXBl
Tm9uZTsKICAgICAgICAgQVNTRVJUKHJlc3VsdCA9PSBDb25zdHJ1Y3RUeXBlTm9uZSB8fCB2YWx1
ZS5pc1ZhbGlkQ2FsbGVlKCkpOwogICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgIH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRnVuY3Rpb24uY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlvbi5jcHAKaW5kZXggNDkzMzMwNDZj
ZDc5Yjg5ODVkZDc1ZmNhZmU1YjE2Y2E3ZTQzY2EyNS4uMzRiOGI2ZDJkMDliMmQxYjUzNTU3YzBl
NjBhMjU1MjM1OWZkNmU4MyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNGdW5jdGlvbi5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNG
dW5jdGlvbi5jcHAKQEAgLTM0OCw3ICszNDgsNyBAQCBib29sIEpTRnVuY3Rpb246OmRlbGV0ZVBy
b3BlcnR5KEpTQ2VsbCogY2VsbCwgRXhlY1N0YXRlKiBleGVjLCBjb25zdCBJZGVudGlmaWVyJgog
ICAgIHJldHVybiBCYXNlOjpkZWxldGVQcm9wZXJ0eSh0aGlzT2JqZWN0LCBleGVjLCBwcm9wZXJ0
eU5hbWUpOwogfQogCi1Db25zdHJ1Y3RUeXBlIEpTRnVuY3Rpb246OmdldENvbnN0cnVjdERhdGEo
Q29uc3RydWN0RGF0YSYgY29uc3RydWN0RGF0YSkKK0NvbnN0cnVjdFR5cGUgSlNGdW5jdGlvbjo6
Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoQ29uc3RydWN0RGF0YSYgY29uc3RydWN0RGF0YSkKIHsK
ICAgICByZXR1cm4gZ2V0Q29uc3RydWN0RGF0YSh0aGlzLCBjb25zdHJ1Y3REYXRhKTsKIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRnVuY3Rpb24uaCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRnVuY3Rpb24uaAppbmRleCA5YjlkYTljZTlm
YWI3NTQ3MWRhOGNmOWFjMTdmZmJjMGQ3NzNiYzM2Li43ZjUxNmY2ODY4NzEwODUyNTFiMGViZjA2
MWNlYzFmYTJjZDRlMmY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU0Z1bmN0aW9uLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5j
dGlvbi5oCkBAIC0xMDgsNyArMTA4LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgICAgIE5hdGl2
ZUZ1bmN0aW9uIG5hdGl2ZUZ1bmN0aW9uKCk7CiAgICAgICAgIE5hdGl2ZUZ1bmN0aW9uIG5hdGl2
ZUNvbnN0cnVjdG9yKCk7CiAKLSAgICAgICAgdmlydHVhbCBDb25zdHJ1Y3RUeXBlIGdldENvbnN0
cnVjdERhdGEoQ29uc3RydWN0RGF0YSYpOworICAgICAgICB2aXJ0dWFsIENvbnN0cnVjdFR5cGUg
Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoQ29uc3RydWN0RGF0YSYpOwogICAgICAgICBzdGF0aWMg
Q29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKEpTQ2VsbCosIENvbnN0cnVjdERhdGEmKTsK
ICAgICAgICAgc3RhdGljIENhbGxUeXBlIGdldENhbGxEYXRhKEpTQ2VsbCosIENhbGxEYXRhJik7
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hdGl2ZUVycm9y
Q29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmF0aXZlRXJy
b3JDb25zdHJ1Y3Rvci5jcHAKaW5kZXggZTgxM2VkNGJmYzU5YzZkY2UyYWNmMzJlYTYzYjE0Mjcy
ZTg0MmI0Ny4uYjM4NThkYTM2M2ZhOWJlN2ZhNzA1ODYwNTg1MTZkOTkxYmYzOGJjMSAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmF0aXZlRXJyb3JDb25zdHJ1Y3Rv
ci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmF0aXZlRXJyb3JDb25z
dHJ1Y3Rvci5jcHAKQEAgLTU2LDcgKzU2LDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19I
T1NUX0NBTEwgY29uc3RydWN0V2l0aE5hdGl2ZUVycm9yQ29uc3RydWN0b3IoRXhlY1N0YXQKICAg
ICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKEVycm9ySW5zdGFuY2U6OmNyZWF0ZShleGVjLCBlcnJv
clN0cnVjdHVyZSwgbWVzc2FnZSkpOwogfQogCi1Db25zdHJ1Y3RUeXBlIE5hdGl2ZUVycm9yQ29u
c3RydWN0b3I6OmdldENvbnN0cnVjdERhdGEoQ29uc3RydWN0RGF0YSYgY29uc3RydWN0RGF0YSkK
K0NvbnN0cnVjdFR5cGUgTmF0aXZlRXJyb3JDb25zdHJ1Y3Rvcjo6Z2V0Q29uc3RydWN0RGF0YVZp
cnR1YWwoQ29uc3RydWN0RGF0YSYgY29uc3RydWN0RGF0YSkKIHsKICAgICByZXR1cm4gZ2V0Q29u
c3RydWN0RGF0YSh0aGlzLCBjb25zdHJ1Y3REYXRhKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL05hdGl2ZUVycm9yQ29uc3RydWN0b3IuaCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL05hdGl2ZUVycm9yQ29uc3RydWN0b3IuaAppbmRleCBkNmU1
NzNmMGM5OTFhNmJiNjI1ZWE3MzI1OTFjMjdiNThlMDgyNDcyLi42YTgyYjUxZDhhMjk1MGE5MmFl
ZjEyZTYxZjU1YzhiZjEyYjY5NGFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVjdG9yLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvTmF0aXZlRXJyb3JDb25zdHJ1Y3Rvci5oCkBAIC02OCw3ICs2OCw3IEBAIG5h
bWVzcGFjZSBKU0MgewogICAgIHByaXZhdGU6CiAgICAgICAgIE5hdGl2ZUVycm9yQ29uc3RydWN0
b3IoSlNHbG9iYWxPYmplY3QqLCBTdHJ1Y3R1cmUqKTsKICAgICAgICAgc3RhdGljIGNvbnN0IHVu
c2lnbmVkIFN0cnVjdHVyZUZsYWdzID0gT3ZlcnJpZGVzVmlzaXRDaGlsZHJlbiB8IEludGVybmFs
RnVuY3Rpb246OlN0cnVjdHVyZUZsYWdzOwotICAgICAgICB2aXJ0dWFsIENvbnN0cnVjdFR5cGUg
Z2V0Q29uc3RydWN0RGF0YShDb25zdHJ1Y3REYXRhJik7CisgICAgICAgIHZpcnR1YWwgQ29uc3Ry
dWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChDb25zdHJ1Y3REYXRhJik7CiAgICAgICAg
IHN0YXRpYyBDb25zdHJ1Y3RUeXBlIGdldENvbnN0cnVjdERhdGEoSlNDZWxsKiwgQ29uc3RydWN0
RGF0YSYpOwogICAgICAgICBzdGF0aWMgQ2FsbFR5cGUgZ2V0Q2FsbERhdGEoSlNDZWxsKiwgQ2Fs
bERhdGEmKTsKICAgICAgICAgc3RhdGljIHZvaWQgdmlzaXRDaGlsZHJlbihKU0NlbGwqLCBTbG90
VmlzaXRvciYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVt
YmVyQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVy
Q29uc3RydWN0b3IuY3BwCmluZGV4IDNjNjVlOWYwOGZlM2RjNDEyYWNiMDNjYTU2YjRjNTBjNzAx
NmI0ODcuLjFjNmU0NTMzY2YxMDZjNGFlNWZiMDFjNWQxMGQ2YmMxMTU4ZWIwMDUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlckNvbnN0cnVjdG9yLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJDb25zdHJ1Y3Rvci5jcHAK
QEAgLTEyMCw3ICsxMjAsNyBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBj
b25zdHJ1Y3RXaXRoTnVtYmVyQ29uc3RydWN0b3IoRXhlY1N0YXRlKiBleAogICAgIHJldHVybiBK
U1ZhbHVlOjplbmNvZGUob2JqZWN0KTsKIH0KIAotQ29uc3RydWN0VHlwZSBOdW1iZXJDb25zdHJ1
Y3Rvcjo6Z2V0Q29uc3RydWN0RGF0YShDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQorQ29u
c3RydWN0VHlwZSBOdW1iZXJDb25zdHJ1Y3Rvcjo6Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoQ29u
c3RydWN0RGF0YSYgY29uc3RydWN0RGF0YSkKIHsKICAgICByZXR1cm4gZ2V0Q29uc3RydWN0RGF0
YSh0aGlzLCBjb25zdHJ1Y3REYXRhKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL051bWJlckNvbnN0cnVjdG9yLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9OdW1iZXJDb25zdHJ1Y3Rvci5oCmluZGV4IDcwNTZkZGY3NWJiOTc1ZTlhMDMwMmVk
ZjMxMTI3YmZlNmEzZmMxNDMuLmNiODY2ZjA1NjQ5ZTZhYWU2NjYyYTE3ZDFjNTk3NjcyNmY3ZDAx
NmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlckNvbnN0
cnVjdG9yLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyQ29uc3Ry
dWN0b3IuaApAQCAtNTgsNyArNTgsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogICAgIHByaXZhdGU6
CiAgICAgICAgIE51bWJlckNvbnN0cnVjdG9yKEpTR2xvYmFsT2JqZWN0KiwgU3RydWN0dXJlKik7
Ci0gICAgICAgIHZpcnR1YWwgQ29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKENvbnN0cnVj
dERhdGEmKTsKKyAgICAgICAgdmlydHVhbCBDb25zdHJ1Y3RUeXBlIGdldENvbnN0cnVjdERhdGFW
aXJ0dWFsKENvbnN0cnVjdERhdGEmKTsKICAgICAgICAgc3RhdGljIENvbnN0cnVjdFR5cGUgZ2V0
Q29uc3RydWN0RGF0YShKU0NlbGwqLCBDb25zdHJ1Y3REYXRhJik7CiAgICAgICAgIHN0YXRpYyBD
YWxsVHlwZSBnZXRDYWxsRGF0YShKU0NlbGwqLCBDYWxsRGF0YSYpOwogICAgIH07CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PYmplY3RDb25zdHJ1Y3Rvci5jcHAg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PYmplY3RDb25zdHJ1Y3Rvci5jcHAKaW5k
ZXggOTBlZGZhNTM3YzkyY2U1MTYwNzk5NmJjNWM4MmFhNTc1YTAxNjQwMS4uMmIwNTliNTk2MjNj
YTlkYTcxMjE4MzVhNTc0N2I2OWIzMTVmYWRkMCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL09iamVjdENvbnN0cnVjdG9yLmNwcApAQCAtMTE5LDcgKzExOSw3IEBA
IHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdFdpdGhPYmplY3RD
b25zdHJ1Y3RvcihFeGVjU3RhdGUqIGV4CiAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShjb25z
dHJ1Y3RPYmplY3QoZXhlYywgYXNJbnRlcm5hbEZ1bmN0aW9uKGV4ZWMtPmNhbGxlZSgpKS0+Z2xv
YmFsT2JqZWN0KCksIGFyZ3MpKTsKIH0KIAotQ29uc3RydWN0VHlwZSBPYmplY3RDb25zdHJ1Y3Rv
cjo6Z2V0Q29uc3RydWN0RGF0YShDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQorQ29uc3Ry
dWN0VHlwZSBPYmplY3RDb25zdHJ1Y3Rvcjo6Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoQ29uc3Ry
dWN0RGF0YSYgY29uc3RydWN0RGF0YSkKIHsKICAgICByZXR1cm4gZ2V0Q29uc3RydWN0RGF0YSh0
aGlzLCBjb25zdHJ1Y3REYXRhKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL09iamVjdENvbnN0cnVjdG9yLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9PYmplY3RDb25zdHJ1Y3Rvci5oCmluZGV4IDIyMjE1OWY1M2E0ZjhmMWI4ZDY1ODJjYzcw
Y2IwZmIwZjdmZWM4MzcuLjVjZDI4YTY1YWNlNTcyYWNlYWI0MDAwYzQyMTVmNmU2YWJmZGRmZjIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09iamVjdENvbnN0cnVj
dG9yLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0Q29uc3RydWN0
b3IuaApAQCAtNTUsNyArNTUsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogICAgIHByaXZhdGU6CiAg
ICAgICAgIE9iamVjdENvbnN0cnVjdG9yKEpTR2xvYmFsT2JqZWN0KiwgU3RydWN0dXJlKik7Ci0g
ICAgICAgIHZpcnR1YWwgQ29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKENvbnN0cnVjdERh
dGEmKTsKKyAgICAgICAgdmlydHVhbCBDb25zdHJ1Y3RUeXBlIGdldENvbnN0cnVjdERhdGFWaXJ0
dWFsKENvbnN0cnVjdERhdGEmKTsKICAgICAgICAgc3RhdGljIENvbnN0cnVjdFR5cGUgZ2V0Q29u
c3RydWN0RGF0YShKU0NlbGwqLCBDb25zdHJ1Y3REYXRhJik7CiAgICAgICAgIHN0YXRpYyBDYWxs
VHlwZSBnZXRDYWxsRGF0YShKU0NlbGwqLCBDYWxsRGF0YSYpOwogICAgIH07CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5jcHAKaW5kZXgg
NDBkNDkxNDY0NGM5ODYzYmMyNDRjMWQ0YjMxZGNiYmFkYTFlYzcwMC4uZDNlNDQ4ZmU2YzJhZDVh
MDgwNmIyYmNhMjAzMWExZjE3NTc4NGY3MCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmNwcApAQCAtMzU0LDcgKzM1NCw3IEBAIHN0
YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdFdpdGhSZWdFeHBDb25z
dHJ1Y3RvcihFeGVjU3RhdGUqIGV4CiAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShjb25zdHJ1
Y3RSZWdFeHAoZXhlYywgYXNJbnRlcm5hbEZ1bmN0aW9uKGV4ZWMtPmNhbGxlZSgpKS0+Z2xvYmFs
T2JqZWN0KCksIGFyZ3MsIHRydWUpKTsKIH0KIAotQ29uc3RydWN0VHlwZSBSZWdFeHBDb25zdHJ1
Y3Rvcjo6Z2V0Q29uc3RydWN0RGF0YShDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQorQ29u
c3RydWN0VHlwZSBSZWdFeHBDb25zdHJ1Y3Rvcjo6Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoQ29u
c3RydWN0RGF0YSYgY29uc3RydWN0RGF0YSkKIHsKICAgICByZXR1cm4gZ2V0Q29uc3RydWN0RGF0
YSh0aGlzLCBjb25zdHJ1Y3REYXRhKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5oCmluZGV4IDVlMTMxNzY0ZDQ5MjViNzBjYjM4NjY3
OWM3N2U2YTQwMmEzNjFjNGMuLjIyNTZjYjA5YjI2ZjgzYmJlNjQ0NmFkNmQxMzkyZWE4NmU5MzU2
MWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cENvbnN0
cnVjdG9yLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3Ry
dWN0b3IuaApAQCAtMTAwLDcgKzEwMCw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiAgICAgcHJpdmF0
ZToKICAgICAgICAgUmVnRXhwQ29uc3RydWN0b3IoSlNHbG9iYWxPYmplY3QqLCBTdHJ1Y3R1cmUq
KTsKLSAgICAgICAgdmlydHVhbCBDb25zdHJ1Y3RUeXBlIGdldENvbnN0cnVjdERhdGEoQ29uc3Ry
dWN0RGF0YSYpOworICAgICAgICB2aXJ0dWFsIENvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0
YVZpcnR1YWwoQ29uc3RydWN0RGF0YSYpOwogICAgICAgICBzdGF0aWMgQ29uc3RydWN0VHlwZSBn
ZXRDb25zdHJ1Y3REYXRhKEpTQ2VsbCosIENvbnN0cnVjdERhdGEmKTsKICAgICAgICAgc3RhdGlj
IENhbGxUeXBlIGdldENhbGxEYXRhKEpTQ2VsbCosIENhbGxEYXRhJik7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0NvbnN0cnVjdG9yLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0NvbnN0cnVjdG9yLmNwcAppbmRleCBm
MzlkZDdhNWFhMDA3OGFjNmZkMjNkODJlN2ViMGJhZGJhN2Q3OThiLi41ZGUzNzUxYmM5MDY0Mjkw
MjY4ZGNmOWI4YzZlNWFkMmNhNmNjNWNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9TdHJpbmdDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwCkBAIC0xMDEsNyArMTAxLDcgQEAgc3Rh
dGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29uc3RydWN0V2l0aFN0cmluZ0NvbnN0
cnVjdG9yKEV4ZWNTdGF0ZSogZXgKICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKFN0cmluZ09i
amVjdDo6Y3JlYXRlKGV4ZWMsIGdsb2JhbE9iamVjdC0+c3RyaW5nT2JqZWN0U3RydWN0dXJlKCks
IGV4ZWMtPmFyZ3VtZW50KDApLnRvU3RyaW5nKGV4ZWMpKSk7CiB9CiAKLUNvbnN0cnVjdFR5cGUg
U3RyaW5nQ29uc3RydWN0b3I6OmdldENvbnN0cnVjdERhdGEoQ29uc3RydWN0RGF0YSYgY29uc3Ry
dWN0RGF0YSkKK0NvbnN0cnVjdFR5cGUgU3RyaW5nQ29uc3RydWN0b3I6OmdldENvbnN0cnVjdERh
dGFWaXJ0dWFsKENvbnN0cnVjdERhdGEmIGNvbnN0cnVjdERhdGEpCiB7CiAgICAgcmV0dXJuIGdl
dENvbnN0cnVjdERhdGEodGhpcywgY29uc3RydWN0RGF0YSk7CiB9CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdDb25zdHJ1Y3Rvci5oIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuaAppbmRleCBhNzE5MTQ4NDgz
OTI5YTY4ZWVjMzg5MmIzYmNjZjg1YzcyZWVmMzFiLi5mZWFiMTg4OTg2ZjMyZDRmMGFlMzA3Njg0
Y2U0NWQ5NGExYzk1Zjg5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9TdHJpbmdDb25zdHJ1Y3Rvci5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1N0cmluZ0NvbnN0cnVjdG9yLmgKQEAgLTUxLDcgKzUxLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAg
ICAgcHJpdmF0ZToKICAgICAgICAgU3RyaW5nQ29uc3RydWN0b3IoSlNHbG9iYWxPYmplY3QqLCBT
dHJ1Y3R1cmUqKTsKICAgICAgICAgdm9pZCBmaW5pc2hDcmVhdGlvbihFeGVjU3RhdGUqLCBTdHJp
bmdQcm90b3R5cGUqKTsKLSAgICAgICAgdmlydHVhbCBDb25zdHJ1Y3RUeXBlIGdldENvbnN0cnVj
dERhdGEoQ29uc3RydWN0RGF0YSYpOworICAgICAgICB2aXJ0dWFsIENvbnN0cnVjdFR5cGUgZ2V0
Q29uc3RydWN0RGF0YVZpcnR1YWwoQ29uc3RydWN0RGF0YSYpOwogICAgICAgICBzdGF0aWMgQ29u
c3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKEpTQ2VsbCosIENvbnN0cnVjdERhdGEmKTsKICAg
ICAgICAgc3RhdGljIENhbGxUeXBlIGdldENhbGxEYXRhKEpTQ2VsbCosIENhbGxEYXRhJik7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA3NTU4MGYxNGM3OGM2MzY5YTlkNDMzNzA3ZjFjNWVmYzQ4YTU4MGQwLi5i
YWEyN2VlZGE2NWE3OTEwMWQ4YjBmZGIzOTNiZGY4Mjc1ODVkNTQwIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMzYgQEAKKzIwMTEtMTAtMTEgIE1hcmsgSGFobmVuYmVyZyAgPG1oYWhuZW5iZXJnQGFw
cGxlLmNvbT4KKworICAgICAgICBSZW5hbWUgdmlydHVhbCBnZXRDb25zdHJ1Y3REYXRhIHRvIGdl
dENvbnN0cnVjdERhdGFWaXJ0dWFsCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD02OTg3MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIE5vIG5ldyB0ZXN0cy4KKworICAgICAgICBSZW5hbWVkIHZpcnR1YWwgZ2V0
Q29uc3RydWN0RGF0YSBmdW5jdGlvbnMgdG8gZ2V0Q29uc3RydWN0RGF0YVZpcnR1YWwgdG8gCisg
ICAgICAgIGF2b2lkIGNvbmZsaWN0cyB3aGVuIHdlIGFkZCBzdGF0aWMgZ2V0Q29uc3RydWN0RGF0
YSB0byB0aGUgTWV0aG9kVGFibGUuCisKKyAgICAgICAgKiBXZWJDb3JlLmV4cC5pbjoKKyAgICAg
ICAgKiBiaW5kaW5ncy9qcy9KU0F1ZGlvQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6SlNBdWRpb0NvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbCk6CisgICAgICAg
ICogYmluZGluZ3MvanMvSlNBdWRpb0NvbnN0cnVjdG9yLmg6CisgICAgICAgICogYmluZGluZ3Mv
anMvSlNJbWFnZUNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkpTSW1hZ2VDb25z
dHJ1Y3Rvcjo6Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwpOgorICAgICAgICAqIGJpbmRpbmdzL2pz
L0pTSW1hZ2VDb25zdHJ1Y3Rvci5oOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTT3B0aW9uQ29u
c3RydWN0b3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SlNPcHRpb25Db25zdHJ1Y3Rvcjo6Z2V0
Q29uc3RydWN0RGF0YVZpcnR1YWwpOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTT3B0aW9uQ29u
c3RydWN0b3IuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9TY3JpcHRGdW5jdGlvbkNhbGwuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6U2NyaXB0RnVuY3Rpb25DYWxsOjpjb25zdHJ1Y3QpOgorICAg
ICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtOgorICAgICAgICAoR2Vu
ZXJhdGVDb25zdHJ1Y3RvckRlY2xhcmF0aW9uKToKKyAgICAgICAgKEdlbmVyYXRlQ29uc3RydWN0
b3JEZWZpbml0aW9uKToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
SW50ZXJmYWNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkpTVGVzdEludGVyZmFjZUNvbnN0cnVj
dG9yOjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbCk6CisgICAgICAgICogYnJpZGdlL3J1bnRpbWVf
b2JqZWN0LmNwcDoKKyAgICAgICAgKEpTQzo6QmluZGluZ3M6OlJ1bnRpbWVPYmplY3Q6OmdldENv
bnN0cnVjdERhdGFWaXJ0dWFsKToKKyAgICAgICAgKiBicmlkZ2UvcnVudGltZV9vYmplY3QuaDoK
KwogMjAxMS0xMC0xMSAgQ2xhdWRpbyBTYWF2ZWRyYSAgPGNzYWF2ZWRyYUBpZ2FsaWEuY29tPgog
CiAgICAgICAgIFtHVEtdIEd0a0F1dGhlbnRpY2F0aW9uRGlhbG9nOiB1c2UgR3RrR3JpZCBpbnN0
ZWFkIG9mIEd0a1RhYmxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5p
biBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCmluZGV4IGRiNmUzMDkwMjZmNzg4NjU0
MzVkZmRjYjBmYmM3MDM1NzJhZmUzZDMuLjA3OTAzOTU4ZGExYzQ3ZjRkMDFhMjFjMzBmMzMwNGQw
YmE2MzYxYTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCisrKyBi
L1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCkBAIC0xNjkwLDkgKzE2OTAsOSBAQCBfX1pO
M0pTQzhCaW5kaW5nczEwUm9vdE9iamVjdEQxRXYKIF9fWk4zSlNDOEJpbmRpbmdzMTNSdW50aW1l
T2JqZWN0MTFnZXRDYWxsRGF0YUVQTlNfNkpTQ2VsbEVSTlNfOENhbGxEYXRhRQogX19aTjNKU0M4
QmluZGluZ3MxM1J1bnRpbWVPYmplY3QxNGRlbGV0ZVByb3BlcnR5RVBOU185RXhlY1N0YXRlRVJL
TlNfMTBJZGVudGlmaWVyRQogX19aTjNKU0M4QmluZGluZ3MxM1J1bnRpbWVPYmplY3QxNGZpbmlz
aENyZWF0aW9uRVBOU18xNEpTR2xvYmFsT2JqZWN0RQotX19aTjNKU0M4QmluZGluZ3MxM1J1bnRp
bWVPYmplY3QxNmdldENvbnN0cnVjdERhdGFFUk5TXzEzQ29uc3RydWN0RGF0YUUKIF9fWk4zSlND
OEJpbmRpbmdzMTNSdW50aW1lT2JqZWN0MThnZXRPd25Qcm9wZXJ0eVNsb3RFUE5TXzlFeGVjU3Rh
dGVFUktOU18xMElkZW50aWZpZXJFUk5TXzEyUHJvcGVydHlTbG90RQogX19aTjNKU0M4QmluZGlu
Z3MxM1J1bnRpbWVPYmplY3QxOWdldE93blByb3BlcnR5TmFtZXNFUE5TXzlFeGVjU3RhdGVFUk5T
XzE3UHJvcGVydHlOYW1lQXJyYXlFTlNfMTVFbnVtZXJhdGlvbk1vZGVFCitfX1pOM0pTQzhCaW5k
aW5nczEzUnVudGltZU9iamVjdDIzZ2V0Q29uc3RydWN0RGF0YVZpcnR1YWxFUk5TXzEzQ29uc3Ry
dWN0RGF0YUUKIF9fWk4zSlNDOEJpbmRpbmdzMTNSdW50aW1lT2JqZWN0MjRnZXRPd25Qcm9wZXJ0
eURlc2NyaXB0b3JFUE5TXzlFeGVjU3RhdGVFUktOU18xMElkZW50aWZpZXJFUk5TXzE4UHJvcGVy
dHlEZXNjcmlwdG9yRQogX19aTjNKU0M4QmluZGluZ3MxM1J1bnRpbWVPYmplY3QzcHV0RVBOU185
RXhlY1N0YXRlRVJLTlNfMTBJZGVudGlmaWVyRU5TXzdKU1ZhbHVlRVJOU18xNVB1dFByb3BlcnR5
U2xvdEUKIF9fWk4zSlNDOEJpbmRpbmdzMTNSdW50aW1lT2JqZWN0NnNfaW5mb0UKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQXVkaW9Db25zdHJ1Y3Rvci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0F1ZGlvQ29uc3RydWN0b3IuY3BwCmluZGV4IDNh
Y2MwYmJlMTIyNzNmMTRmOWFiYzYwYTRjZDU2NWIxMDFkZTI3NzAuLjc1NjAzOWY3MzYzZDg3YjQ1
YTVmYmQ5NzBlNjZlOWY5ZjIwMWIwNDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTQXVkaW9Db25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvanMvSlNBdWRpb0NvbnN0cnVjdG9yLmNwcApAQCAtNzUsNyArNzUsNyBAQCBzdGF0aWMgRW5j
b2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zdHJ1Y3RBdWRpbyhFeGVjU3RhdGUqIGV4ZWMp
CiAgICAgICAgIEhUTUxBdWRpb0VsZW1lbnQ6OmNyZWF0ZUZvckpTQ29uc3RydWN0b3IoZG9jdW1l
bnQsIHNyYykpKSk7CiB9CiAKLUNvbnN0cnVjdFR5cGUgSlNBdWRpb0NvbnN0cnVjdG9yOjpnZXRD
b25zdHJ1Y3REYXRhKENvbnN0cnVjdERhdGEmIGNvbnN0cnVjdERhdGEpCitDb25zdHJ1Y3RUeXBl
IEpTQXVkaW9Db25zdHJ1Y3Rvcjo6Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoQ29uc3RydWN0RGF0
YSYgY29uc3RydWN0RGF0YSkKIHsKICAgICByZXR1cm4gZ2V0Q29uc3RydWN0RGF0YSh0aGlzLCBj
b25zdHJ1Y3REYXRhKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTQXVkaW9Db25zdHJ1Y3Rvci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNBdWRp
b0NvbnN0cnVjdG9yLmgKaW5kZXggM2JlNDVlMzE5YTE1MmM2ZmYxNmQyMGU0MzkzNGQ1NTEzMmQy
ZGQ0Ny4uMDdlYzNkNTYxYmUzMTgyYTQwYjU3MzBhODlkYjBiNmUxOTNlOTUwZCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNBdWRpb0NvbnN0cnVjdG9yLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNBdWRpb0NvbnN0cnVjdG9yLmgKQEAgLTU1LDcg
KzU1LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIHByaXZhdGU6CiAgICAgICAgIEpTQXVk
aW9Db25zdHJ1Y3RvcihKU0M6OlN0cnVjdHVyZSosIEpTRE9NR2xvYmFsT2JqZWN0Kik7CiAgICAg
ICAgIHZvaWQgZmluaXNoQ3JlYXRpb24oSlNDOjpFeGVjU3RhdGUqLCBKU0RPTUdsb2JhbE9iamVj
dCopOwotICAgICAgICB2aXJ0dWFsIEpTQzo6Q29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRh
KEpTQzo6Q29uc3RydWN0RGF0YSYpOworICAgICAgICB2aXJ0dWFsIEpTQzo6Q29uc3RydWN0VHlw
ZSBnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChKU0M6OkNvbnN0cnVjdERhdGEmKTsKICAgICAgICAg
c3RhdGljIEpTQzo6Q29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKEpTQzo6SlNDZWxsKiwg
SlNDOjpDb25zdHJ1Y3REYXRhJik7CiAgICAgfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNJbWFnZUNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTSW1hZ2VDb25zdHJ1Y3Rvci5jcHAKaW5kZXggMTkxNDc4NjJjNGNkNDNhNzQw
NjVjYTE2NTMzNjZkYzY5ZjkyZDRmMS4uYTg3NTAyYTNjMTFiOTBjYmUxMTNmMDExZmU4ZDNkOThl
MmEwZmRjNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNJbWFnZUNv
bnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0ltYWdlQ29u
c3RydWN0b3IuY3BwCkBAIC03NCw3ICs3NCw3IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0Nf
SE9TVF9DQUxMIGNvbnN0cnVjdEltYWdlKEV4ZWNTdGF0ZSogZXhlYykKICAgICAgICAgSFRNTElt
YWdlRWxlbWVudDo6Y3JlYXRlRm9ySlNDb25zdHJ1Y3Rvcihkb2N1bWVudCwgb3B0aW9uYWxXaWR0
aCwgb3B0aW9uYWxIZWlnaHQpKSkpOwogfQogCi1Db25zdHJ1Y3RUeXBlIEpTSW1hZ2VDb25zdHJ1
Y3Rvcjo6Z2V0Q29uc3RydWN0RGF0YShDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQorQ29u
c3RydWN0VHlwZSBKU0ltYWdlQ29uc3RydWN0b3I6OmdldENvbnN0cnVjdERhdGFWaXJ0dWFsKENv
bnN0cnVjdERhdGEmIGNvbnN0cnVjdERhdGEpCiB7CiAgICAgcmV0dXJuIGdldENvbnN0cnVjdERh
dGEodGhpcywgY29uc3RydWN0RGF0YSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9KU0ltYWdlQ29uc3RydWN0b3IuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTSW1hZ2VDb25zdHJ1Y3Rvci5oCmluZGV4IGFiM2ZkMzE3ZjU4YzUwOWU3YWE1ODljOTk4
OWU2YTY4YjYwMzc5MTguLjM5NWI2MTZkOTFjMDdkMmUwYjBkMjVjYTg3MDZiNGNkNGZhODJjNTIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTSW1hZ2VDb25zdHJ1Y3Rv
ci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTSW1hZ2VDb25zdHJ1Y3Rvci5o
CkBAIC00Niw3ICs0Niw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICBwcml2YXRlOgogICAg
ICAgICBKU0ltYWdlQ29uc3RydWN0b3IoSlNDOjpTdHJ1Y3R1cmUqLCBKU0RPTUdsb2JhbE9iamVj
dCopOwogICAgICAgICB2b2lkIGZpbmlzaENyZWF0aW9uKEpTQzo6RXhlY1N0YXRlKiwgSlNET01H
bG9iYWxPYmplY3QqKTsKLSAgICAgICAgdmlydHVhbCBKU0M6OkNvbnN0cnVjdFR5cGUgZ2V0Q29u
c3RydWN0RGF0YShKU0M6OkNvbnN0cnVjdERhdGEmKTsKKyAgICAgICAgdmlydHVhbCBKU0M6OkNv
bnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoSlNDOjpDb25zdHJ1Y3REYXRhJik7
CiAgICAgICAgIHN0YXRpYyBKU0M6OkNvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YShKU0M6
OkpTQ2VsbCosIEpTQzo6Q29uc3RydWN0RGF0YSYpOwogICAgIH07CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTT3B0aW9uQ29uc3RydWN0b3IuY3BwIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNPcHRpb25Db25zdHJ1Y3Rvci5jcHAKaW5kZXggMDIyYTNj
ZGYxZjMyYTgxNzc1NDJkNTVhMzk3NTAyM2ZjYzE5YmVhZC4uOTgwZjlhNjNkN2ZmMzEzN2Y4OGI3
ZTcwMDMzOTM5MWIzY2MzYzY5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNPcHRpb25Db25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNPcHRpb25Db25zdHJ1Y3Rvci5jcHAKQEAgLTc1LDcgKzc1LDcgQEAgc3RhdGljIEVuY29k
ZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29uc3RydWN0SFRNTE9wdGlvbkVsZW1lbnQoRXhlY1N0
YXRlKiBleGVjKQogICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoYXNPYmplY3QodG9KUyhleGVj
LCBqc0NvbnN0cnVjdG9yLT5nbG9iYWxPYmplY3QoKSwgZWxlbWVudC5yZWxlYXNlKCkpKSk7CiB9
CiAKLUNvbnN0cnVjdFR5cGUgSlNPcHRpb25Db25zdHJ1Y3Rvcjo6Z2V0Q29uc3RydWN0RGF0YShD
b25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQorQ29uc3RydWN0VHlwZSBKU09wdGlvbkNvbnN0
cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3RE
YXRhKQogewogICAgIHJldHVybiBnZXRDb25zdHJ1Y3REYXRhKHRoaXMsIGNvbnN0cnVjdERhdGEp
OwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNPcHRpb25Db25z
dHJ1Y3Rvci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNPcHRpb25Db25zdHJ1Y3Rv
ci5oCmluZGV4IDAxYjhlY2JmNGFmYjVkYjBkZGQ4OThmZjE4ZmFiNGZiYzNiZTYwMDcuLmY5NjFh
ODhhNWM1N2I2M2FhMTUyOTJlOWQ4YzA1OTRjN2VjYzI3ODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTT3B0aW9uQ29uc3RydWN0b3IuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU09wdGlvbkNvbnN0cnVjdG9yLmgKQEAgLTQ3LDcgKzQ3LDcgQEAg
bmFtZXNwYWNlIFdlYkNvcmUgewogICAgIHByaXZhdGU6CiAgICAgICAgIEpTT3B0aW9uQ29uc3Ry
dWN0b3IoSlNDOjpTdHJ1Y3R1cmUqLCBKU0RPTUdsb2JhbE9iamVjdCopOwogICAgICAgICB2b2lk
IGZpbmlzaENyZWF0aW9uKEpTQzo6RXhlY1N0YXRlKiwgSlNET01HbG9iYWxPYmplY3QqKTsKLSAg
ICAgICAgdmlydHVhbCBKU0M6OkNvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YShKU0M6OkNv
bnN0cnVjdERhdGEmKTsKKyAgICAgICAgdmlydHVhbCBKU0M6OkNvbnN0cnVjdFR5cGUgZ2V0Q29u
c3RydWN0RGF0YVZpcnR1YWwoSlNDOjpDb25zdHJ1Y3REYXRhJik7CiAgICAgICAgIHN0YXRpYyBK
U0M6OkNvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YShKU0M6OkpTQ2VsbCosIEpTQzo6Q29u
c3RydWN0RGF0YSYpOwogICAgIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL1NjcmlwdEZ1bmN0aW9uQ2FsbC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9TY3JpcHRGdW5jdGlvbkNhbGwuY3BwCmluZGV4IDUxOGE3ODdmZDllNThjMjE5OWExZTcxMmU3
ZmYxMjljMjQ5ZTc3MjQuLjE5MDk5YTk3NjhlNjY5NzQxZGEyOGJkNGRkMTRmMTdmMzM4ZDk1YTYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdEZ1bmN0aW9uQ2Fs
bC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0RnVuY3Rpb25DYWxs
LmNwcApAQCAtMTc1LDcgKzE3NSw3IEBAIFNjcmlwdE9iamVjdCBTY3JpcHRGdW5jdGlvbkNhbGw6
OmNvbnN0cnVjdChib29sJiBoYWRFeGNlcHRpb24sIGJvb2wgcmVwb3J0RXhjZXB0CiAgICAgfQog
CiAgICAgQ29uc3RydWN0RGF0YSBjb25zdHJ1Y3REYXRhOwotICAgIENvbnN0cnVjdFR5cGUgY29u
c3RydWN0VHlwZSA9IGNvbnN0cnVjdG9yLT5nZXRDb25zdHJ1Y3REYXRhKGNvbnN0cnVjdERhdGEp
OworICAgIENvbnN0cnVjdFR5cGUgY29uc3RydWN0VHlwZSA9IGNvbnN0cnVjdG9yLT5nZXRDb25z
dHJ1Y3REYXRhVmlydHVhbChjb25zdHJ1Y3REYXRhKTsKICAgICBpZiAoY29uc3RydWN0VHlwZSA9
PSBDb25zdHJ1Y3RUeXBlTm9uZSkKICAgICAgICAgcmV0dXJuIFNjcmlwdE9iamVjdCgpOwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JK
Uy5wbSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBt
CmluZGV4IDJkODEzNDcwYzdjYTE3MzkyZGVmYjIxMWQ2MjUyMTgyZDk2ZjBhMWEuLmE0YTE4NWRh
MTA4MWM3OWQ1Y2I4MjNiMDM4NzI0MTAyODFjYjQ4MWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCkBAIC0zMTcwLDcgKzMxNzAs
NyBAQCBzdWIgR2VuZXJhdGVDb25zdHJ1Y3RvckRlY2xhcmF0aW9uCiAKICAgICBpZiAoJGNhbkNv
bnN0cnVjdCkgewogICAgICAgICBwdXNoKEAkb3V0cHV0QXJyYXksICIgICAgc3RhdGljIEpTQzo6
RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zdHJ1Y3Qke2NsYXNzTmFtZX0oSlNDOjpF
eGVjU3RhdGUqKTtcbiIpOwotICAgICAgICBwdXNoKEAkb3V0cHV0QXJyYXksICIgICAgdmlydHVh
bCBKU0M6OkNvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YShKU0M6OkNvbnN0cnVjdERhdGEm
KTtcbiIpOworICAgICAgICBwdXNoKEAkb3V0cHV0QXJyYXksICIgICAgdmlydHVhbCBKU0M6OkNv
bnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoSlNDOjpDb25zdHJ1Y3REYXRhJik7
XG4iKTsKICAgICAgICAgcHVzaChAJG91dHB1dEFycmF5LCAiICAgIHN0YXRpYyBKU0M6OkNvbnN0
cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YShKU0M6OkpTQ2VsbCosIEpTQzo6Q29uc3RydWN0RGF0
YSYpO1xuIik7CiAgICAgfQogICAgIHB1c2goQCRvdXRwdXRBcnJheSwgIn07XG5cbiIpOwpAQCAt
MzIzNiw3ICszMjM2LDcgQEAgc3ViIEdlbmVyYXRlQ29uc3RydWN0b3JEZWZpbml0aW9uCiAgICAg
ICAgICAgICBwdXNoKEAkb3V0cHV0QXJyYXksICJ9XG5cbiIpOwogICAgICAgICB9CiAKLSAgICAg
ICAgcHVzaChAJG91dHB1dEFycmF5LCAiQ29uc3RydWN0VHlwZSAke2NvbnN0cnVjdG9yQ2xhc3NO
YW1lfTo6Z2V0Q29uc3RydWN0RGF0YShDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKVxuIik7
CisgICAgICAgIHB1c2goQCRvdXRwdXRBcnJheSwgIkNvbnN0cnVjdFR5cGUgJHtjb25zdHJ1Y3Rv
ckNsYXNzTmFtZX06OmdldENvbnN0cnVjdERhdGFWaXJ0dWFsKENvbnN0cnVjdERhdGEmIGNvbnN0
cnVjdERhdGEpXG4iKTsKICAgICAgICAgcHVzaChAJG91dHB1dEFycmF5LCAie1xuIik7CiAgICAg
ICAgIHB1c2goQCRvdXRwdXRBcnJheSwgIiAgICByZXR1cm4gZ2V0Q29uc3RydWN0RGF0YSh0aGlz
LCBjb25zdHJ1Y3REYXRhKTtcbiIpOwogICAgICAgICBwdXNoKEAkb3V0cHV0QXJyYXksICJ9XG5c
biIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdEludGVyZmFjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0SW50ZXJmYWNlLmNwcAppbmRleCBkYTk5MTFlYzVkMmJlODE2ZjAyYTE0Yzgz
YzA4ZTJkZTIyZjAwMjhjLi5iYmU2MDZiZGMwYjA5MzA2MDZkNTNkZTk3OWE1MzU0YWY4NTRmMDFj
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0SW50ZXJmYWNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0SW50ZXJmYWNlLmNwcApAQCAtOTYsNyArOTYsNyBAQCBwdWJsaWM6CiBwcm90
ZWN0ZWQ6CiAgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIFN0cnVjdHVyZUZsYWdzID0gSlNDOjpP
dmVycmlkZXNHZXRPd25Qcm9wZXJ0eVNsb3QgfCBKU0M6OkltcGxlbWVudHNIYXNJbnN0YW5jZSB8
IERPTUNvbnN0cnVjdG9yT2JqZWN0OjpTdHJ1Y3R1cmVGbGFnczsKICAgICBzdGF0aWMgSlNDOjpF
bmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdEpTVGVzdEludGVyZmFjZShKU0M6
OkV4ZWNTdGF0ZSopOwotICAgIHZpcnR1YWwgSlNDOjpDb25zdHJ1Y3RUeXBlIGdldENvbnN0cnVj
dERhdGEoSlNDOjpDb25zdHJ1Y3REYXRhJik7CisgICAgdmlydHVhbCBKU0M6OkNvbnN0cnVjdFR5
cGUgZ2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoSlNDOjpDb25zdHJ1Y3REYXRhJik7CiAgICAgc3Rh
dGljIEpTQzo6Q29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKEpTQzo6SlNDZWxsKiwgSlND
OjpDb25zdHJ1Y3REYXRhJik7CiB9OwogCkBAIC0xMzIsNyArMTMyLDcgQEAgRW5jb2RlZEpTVmFs
dWUgSlNDX0hPU1RfQ0FMTCBKU1Rlc3RJbnRlcmZhY2VDb25zdHJ1Y3Rvcjo6Y29uc3RydWN0SlNU
ZXN0SW50ZXJmYWMKICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGFzT2JqZWN0KHRvSlMoZXhl
Yywgc3RhdGljX2Nhc3Q8SlNUZXN0SW50ZXJmYWNlQ29uc3RydWN0b3IqPihleGVjLT5jYWxsZWUo
KSktPmdsb2JhbE9iamVjdCgpLCBUZXN0SW50ZXJmYWNlOjpjcmVhdGUoY29udGV4dCkpKSk7CiB9
CiAKLUNvbnN0cnVjdFR5cGUgSlNUZXN0SW50ZXJmYWNlQ29uc3RydWN0b3I6OmdldENvbnN0cnVj
dERhdGEoQ29uc3RydWN0RGF0YSYgY29uc3RydWN0RGF0YSkKK0NvbnN0cnVjdFR5cGUgSlNUZXN0
SW50ZXJmYWNlQ29uc3RydWN0b3I6OmdldENvbnN0cnVjdERhdGFWaXJ0dWFsKENvbnN0cnVjdERh
dGEmIGNvbnN0cnVjdERhdGEpCiB7CiAgICAgcmV0dXJuIGdldENvbnN0cnVjdERhdGEodGhpcywg
Y29uc3RydWN0RGF0YSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVu
dGltZV9vYmplY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfb2JqZWN0LmNw
cAppbmRleCAxMzM4Y2Y4NjVjZTRjZjRhYmRlMDZhOTRkYTQyZjc2NDEyNDQ3MTZmLi5mN2YzMDY4
Yjk1MjIwNWEyYTAwNzBlNzg3YzBiZWJjMjI2NTE2Y2JiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9icmlkZ2UvcnVudGltZV9vYmplY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JyaWRn
ZS9ydW50aW1lX29iamVjdC5jcHAKQEAgLTMwNCw3ICszMDQsNyBAQCBzdGF0aWMgRW5jb2RlZEpT
VmFsdWUgSlNDX0hPU1RfQ0FMTCBjYWxsUnVudGltZUNvbnN0cnVjdG9yKEV4ZWNTdGF0ZSogZXhl
YykKICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHJlc3VsdC5pc09iamVjdCgpID8gc3RhdGlj
X2Nhc3Q8SlNPYmplY3QqPihyZXN1bHQuYXNDZWxsKCkpIDogY29uc3RydWN0b3IpOwogfQogCi1D
b25zdHJ1Y3RUeXBlIFJ1bnRpbWVPYmplY3Q6OmdldENvbnN0cnVjdERhdGEoQ29uc3RydWN0RGF0
YSYgY29uc3RydWN0RGF0YSkKK0NvbnN0cnVjdFR5cGUgUnVudGltZU9iamVjdDo6Z2V0Q29uc3Ry
dWN0RGF0YVZpcnR1YWwoQ29uc3RydWN0RGF0YSYgY29uc3RydWN0RGF0YSkKIHsKICAgICByZXR1
cm4gZ2V0Q29uc3RydWN0RGF0YSh0aGlzLCBjb25zdHJ1Y3REYXRhKTsKIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX29iamVjdC5oIGIvU291cmNlL1dlYkNvcmUv
YnJpZGdlL3J1bnRpbWVfb2JqZWN0LmgKaW5kZXggMDY2ZDc3MzdlMzI0NjRlNTg2MjExODVlNjRh
NTczM2RiMWVlZGVmYy4uMGM2YTkxNWRhODJkNTk4Nzc3NjVlMmRiMjg2NjRlYjBlYWNlYTMwYSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfb2JqZWN0LmgKKysrIGIv
U291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfb2JqZWN0LmgKQEAgLTU0LDcgKzU0LDcgQEAg
cHVibGljOgogICAgIHN0YXRpYyBib29sIGRlbGV0ZVByb3BlcnR5KEpTQ2VsbCosIEV4ZWNTdGF0
ZSosIGNvbnN0IElkZW50aWZpZXImIHByb3BlcnR5TmFtZSk7CiAgICAgdmlydHVhbCBKU1ZhbHVl
IGRlZmF1bHRWYWx1ZShFeGVjU3RhdGUqLCBQcmVmZXJyZWRQcmltaXRpdmVUeXBlKSBjb25zdDsK
ICAgICBzdGF0aWMgQ2FsbFR5cGUgZ2V0Q2FsbERhdGEoSlNDZWxsKiwgQ2FsbERhdGEmKTsKLSAg
ICB2aXJ0dWFsIENvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YShDb25zdHJ1Y3REYXRhJik7
CisgICAgdmlydHVhbCBDb25zdHJ1Y3RUeXBlIGdldENvbnN0cnVjdERhdGFWaXJ0dWFsKENvbnN0
cnVjdERhdGEmKTsKICAgICBzdGF0aWMgQ29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKEpT
Q2VsbCosIENvbnN0cnVjdERhdGEmKTsKIAogICAgIHZpcnR1YWwgdm9pZCBnZXRPd25Qcm9wZXJ0
eU5hbWVzKEV4ZWNTdGF0ZSosIFByb3BlcnR5TmFtZUFycmF5JiwgRW51bWVyYXRpb25Nb2RlIG1v
ZGUgPSBFeGNsdWRlRG9udEVudW1Qcm9wZXJ0aWVzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvbWFjL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwppbmRleCA0ODgx
YWI3ODcyYmU2ZWE1NzQ5YzcyMWQ2YjY0MzhiMjYzMzY2ZDVjLi5hOTJkNDliMTY0OTRkMjc5NTQy
NDZkYzBlM2FkYWM4ZGEwNjgxNTBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9DaGFu
Z2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAK
KzIwMTEtMTAtMTEgIE1hcmsgSGFobmVuYmVyZyAgPG1oYWhuZW5iZXJnQGFwcGxlLmNvbT4KKwor
ICAgICAgICBSZW5hbWUgdmlydHVhbCBnZXRDb25zdHJ1Y3REYXRhIHRvIGdldENvbnN0cnVjdERh
dGFWaXJ0dWFsCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD02OTg3MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IFJlbmFtZWQgdmlydHVhbCBnZXRDb25zdHJ1Y3REYXRhIGZ1bmN0aW9ucyB0byBnZXRDb25zdHJ1
Y3REYXRhVmlydHVhbCB0byAKKyAgICAgICAgYXZvaWQgY29uZmxpY3RzIHdoZW4gd2UgYWRkIHN0
YXRpYyBnZXRDb25zdHJ1Y3REYXRhIHRvIHRoZSBNZXRob2RUYWJsZS4KKworICAgICAgICAqIFBs
dWdpbnMvSG9zdGVkL05ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eS5tbToKKyAgICAgICAgKFdl
YktpdDo6TmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5Ojpjb25zdHJ1Y3QpOgorCiAyMDExLTEw
LTEwICBOYXRlIENoYXBpbiAgPGphcGhldEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVXNlIGEg
Q2FjaGVkSW1hZ2VDbGllbnQgaW5zdGVhZCBvZiBDYWNoZWRSZXNvdXJjZUNsaWVudApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9tYWMvUGx1Z2lucy9Ib3N0ZWQvTmV0c2NhcGVQbHVnaW5JbnN0
YW5jZVByb3h5Lm1tIGIvU291cmNlL1dlYktpdC9tYWMvUGx1Z2lucy9Ib3N0ZWQvTmV0c2NhcGVQ
bHVnaW5JbnN0YW5jZVByb3h5Lm1tCmluZGV4IDY2MjcyMDM3MTg5N2RjOTQ4NmU1NDcwMGY2ZmQw
NjE4NTlhN2I2MjcuLjVjNTBmOGQxOTJlMzkwMjc4MmIwNTZjNTQzM2FhNjRjZTBmNTUxNTMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1BsdWdpbnMvSG9zdGVkL05ldHNjYXBlUGx1Z2lu
SW5zdGFuY2VQcm94eS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9QbHVnaW5zL0hvc3RlZC9O
ZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJveHkubW0KQEAgLTk3OCw3ICs5NzgsNyBAQCBib29sIE5l
dHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eTo6Y29uc3RydWN0KHVpbnQzMl90IG9iamVjdElELCBk
YXRhX3QgYXJndW1lbnRzRAogICAgIEpTTG9jayBsb2NrKFNpbGVuY2VBc3NlcnRpb25zT25seSk7
CiAKICAgICBDb25zdHJ1Y3REYXRhIGNvbnN0cnVjdERhdGE7Ci0gICAgQ29uc3RydWN0VHlwZSBj
b25zdHJ1Y3RUeXBlID0gb2JqZWN0LT5nZXRDb25zdHJ1Y3REYXRhKGNvbnN0cnVjdERhdGEpOwor
ICAgIENvbnN0cnVjdFR5cGUgY29uc3RydWN0VHlwZSA9IG9iamVjdC0+Z2V0Q29uc3RydWN0RGF0
YVZpcnR1YWwoY29uc3RydWN0RGF0YSk7CiAgICAgaWYgKGNvbnN0cnVjdFR5cGUgPT0gQ29uc3Ry
dWN0VHlwZU5vbmUpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdDIvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCmluZGV4IDdhNjY5
YjY3NjA3NTRhYWU3ZTY1YmIzMjUwOTFjZGNjYzBmMTU1YWYuLmRhMjFjYjM1ZTMzNzM5MzIzNGMy
ZWIxOTUzYzUwM2RlMmQ0Y2IzNDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxv
ZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAxMS0x
MC0xMSAgTWFyayBIYWhuZW5iZXJnICA8bWhhaG5lbmJlcmdAYXBwbGUuY29tPgorCisgICAgICAg
IFJlbmFtZSB2aXJ0dWFsIGdldENvbnN0cnVjdERhdGEgdG8gZ2V0Q29uc3RydWN0RGF0YVZpcnR1
YWwKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY5ODcy
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUmVuYW1l
ZCB2aXJ0dWFsIGdldENvbnN0cnVjdERhdGEgZnVuY3Rpb25zIHRvIGdldENvbnN0cnVjdERhdGFW
aXJ0dWFsIHRvIAorICAgICAgICBhdm9pZCBjb25mbGljdHMgd2hlbiB3ZSBhZGQgc3RhdGljIGdl
dENvbnN0cnVjdERhdGEgdG8gdGhlIE1ldGhvZFRhYmxlLgorCisgICAgICAgICogV2ViUHJvY2Vz
cy9QbHVnaW5zL05ldHNjYXBlL0pTTlBPYmplY3QuY3BwOgorICAgICAgICAoV2ViS2l0OjpKU05Q
T2JqZWN0OjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbCk6CisgICAgICAgICogV2ViUHJvY2Vzcy9Q
bHVnaW5zL05ldHNjYXBlL0pTTlBPYmplY3QuaDoKKwogMjAxMS0xMC0xMSAgQWxleGV5IFByb3Nr
dXJ5YWtvdiAgPGFwQGFwcGxlLmNvbT4KIAogICAgICAgICBbTWFjXSBTaG91bGQgYmUgYWJsZSB0
byBkaXNwbGF5IG11bHRpLXBhZ2UgUERGcyBpbiBzdWJmcmFtZXMKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9OZXRzY2FwZS9KU05QT2JqZWN0LmNwcCBiL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9OZXRzY2FwZS9KU05QT2JqZWN0LmNwcApp
bmRleCA1M2Y1ODYwMWMwYTk2NjgxYzg1NDE4YmNkMzRkY2FiNDJlMDBhMWY0Li5lYzVlZTJiZWY5
OTZlMGNhZWNlZjk1MDZkYzZhYzMyYzBkMGYxODFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1BsdWdpbnMvTmV0c2NhcGUvSlNOUE9iamVjdC5jcHAKKysrIGIvU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL05ldHNjYXBlL0pTTlBPYmplY3QuY3BwCkBAIC0y
MzYsNyArMjM2LDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29uc3Ry
dWN0V2l0aENvbnN0cnVjdG9yKEV4ZWNTdGF0ZSogZXhlYykKICAgICByZXR1cm4gSlNWYWx1ZTo6
ZW5jb2RlKHN0YXRpY19jYXN0PEpTTlBPYmplY3QqPihjb25zdHJ1Y3RvciktPmNhbGxDb25zdHJ1
Y3RvcihleGVjKSk7CiB9CiAKLUNvbnN0cnVjdFR5cGUgSlNOUE9iamVjdDo6Z2V0Q29uc3RydWN0
RGF0YShDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQorQ29uc3RydWN0VHlwZSBKU05QT2Jq
ZWN0OjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRh
KQogewogICAgIHJldHVybiBnZXRDb25zdHJ1Y3REYXRhKHRoaXMsIGNvbnN0cnVjdERhdGEpOwog
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL05ldHNjYXBl
L0pTTlBPYmplY3QuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9OZXRzY2Fw
ZS9KU05QT2JqZWN0LmgKaW5kZXggMjNmZmM4ZmM5MjMyZGIzNGFmMDIxM2NmNzNlNzFjYWUyOTc1
NjE2MC4uMDg2NDNmNzY1YTk0ZDUwYjcwNjQ2ZjU1N2RjMGI4MDFhNzJiMmIxYyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL05ldHNjYXBlL0pTTlBPYmplY3Qu
aAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvTmV0c2NhcGUvSlNOUE9i
amVjdC5oCkBAIC04MCw3ICs4MCw3IEBAIHByaXZhdGU6CiAgICAgfQogCiAgICAgc3RhdGljIEpT
Qzo6Q2FsbFR5cGUgZ2V0Q2FsbERhdGEoSlNDOjpKU0NlbGwqLCBKU0M6OkNhbGxEYXRhJik7Ci0g
ICAgdmlydHVhbCBKU0M6OkNvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YShKU0M6OkNvbnN0
cnVjdERhdGEmKTsKKyAgICB2aXJ0dWFsIEpTQzo6Q29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3RE
YXRhVmlydHVhbChKU0M6OkNvbnN0cnVjdERhdGEmKTsKICAgICBzdGF0aWMgSlNDOjpDb25zdHJ1
Y3RUeXBlIGdldENvbnN0cnVjdERhdGEoSlNDOjpKU0NlbGwqLCBKU0M6OkNvbnN0cnVjdERhdGEm
KTsKIAogICAgIHZpcnR1YWwgYm9vbCBnZXRPd25Qcm9wZXJ0eVNsb3QoSlNDOjpFeGVjU3RhdGUq
LCBjb25zdCBKU0M6OklkZW50aWZpZXImIHByb3BlcnR5TmFtZSwgSlNDOjpQcm9wZXJ0eVNsb3Qm
KTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>110716</attachid>
            <date>2011-10-12 11:45:40 -0700</date>
            <delta_ts>2011-10-13 10:13:39 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-69872-20111012114542.patch</filename>
            <type>text/plain</type>
            <size>46339</size>
            <attacher name="Mark Hahnenberg">mhahnenberg</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTcyNzQKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9BUEkvSlNDYWxsYmFja0NvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9BUEkvSlNDYWxsYmFja0NvbnN0cnVjdG9yLmNwcAppbmRleCA5NjZkMzRhZGIyNzBhYzJlNzJh
ZjE1NGM0OWE4NDRkYTZhYzExNjAzLi5jYjRiZTQxNmJkNTczODAzNTEzM2M1YmQ2YzVmOWQ3YjZi
ZTlmOWZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tD
b25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNr
Q29uc3RydWN0b3IuY3BwCkBAIC04Niw3ICs4Niw3IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBK
U0NfSE9TVF9DQUxMIGNvbnN0cnVjdEpTQ2FsbGJhY2soRXhlY1N0YXRlKiBleGVjKQogICAgIHJl
dHVybiBKU1ZhbHVlOjplbmNvZGUodG9KUyhKU09iamVjdE1ha2UoY3R4LCBzdGF0aWNfY2FzdDxK
U0NhbGxiYWNrQ29uc3RydWN0b3IqPihjb25zdHJ1Y3RvciktPmNsYXNzUmVmKCksIDApKSk7CiB9
CiAKLUNvbnN0cnVjdFR5cGUgSlNDYWxsYmFja0NvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRh
KENvbnN0cnVjdERhdGEmIGNvbnN0cnVjdERhdGEpCitDb25zdHJ1Y3RUeXBlIEpTQ2FsbGJhY2tD
b25zdHJ1Y3Rvcjo6Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoQ29uc3RydWN0RGF0YSYgY29uc3Ry
dWN0RGF0YSkKIHsKICAgICByZXR1cm4gZ2V0Q29uc3RydWN0RGF0YSh0aGlzLCBjb25zdHJ1Y3RE
YXRhKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFj
a0NvbnN0cnVjdG9yLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tDb25z
dHJ1Y3Rvci5oCmluZGV4IDQ2ZWE4MjBiNjcwNTUxNjM1YWM4ZTBlZjBlY2ZlM2FmYzdjNWY1YjQu
LmUzMTc2YzZhMWNjNDc0NmI2NmJmZWY2NmQ5OGI2YWVjODEzMWMyOTAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFja0NvbnN0cnVjdG9yLmgKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrQ29uc3RydWN0b3IuaApAQCAtNTgsNyAr
NTgsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIFN0cnVjdHVyZUZs
YWdzID0gSW1wbGVtZW50c0hhc0luc3RhbmNlIHwgSlNPYmplY3Q6OlN0cnVjdHVyZUZsYWdzOwog
CiBwcml2YXRlOgotICAgIHZpcnR1YWwgQ29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKENv
bnN0cnVjdERhdGEmKTsKKyAgICB2aXJ0dWFsIENvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0
YVZpcnR1YWwoQ29uc3RydWN0RGF0YSYpOwogICAgIHN0YXRpYyBDb25zdHJ1Y3RUeXBlIGdldENv
bnN0cnVjdERhdGEoSlNDZWxsKiwgQ29uc3RydWN0RGF0YSYpOwogCiAgICAgSlNDbGFzc1JlZiBt
X2NsYXNzOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNr
T2JqZWN0LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tPYmplY3QuaApp
bmRleCBhNTYwMzViOWE0ZDMzZTI5MWI1NjBhNTY3MTZjMzAyYWFlYmE4MzRhLi4zNmQ2ODY0ZWFl
MGI3NmYyMjAyNWU5NmMwNGE3MzYwNmU2ZDcxNGE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tPYmplY3QuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQVBJL0pTQ2FsbGJhY2tPYmplY3QuaApAQCAtMTk2LDcgKzE5Niw3IEBAIHByaXZhdGU6CiAg
ICAgdmlydHVhbCBkb3VibGUgdG9OdW1iZXIoRXhlY1N0YXRlKikgY29uc3Q7CiAgICAgdmlydHVh
bCBVU3RyaW5nIHRvU3RyaW5nKEV4ZWNTdGF0ZSopIGNvbnN0OwogCi0gICAgdmlydHVhbCBDb25z
dHJ1Y3RUeXBlIGdldENvbnN0cnVjdERhdGEoQ29uc3RydWN0RGF0YSYpOworICAgIHZpcnR1YWwg
Q29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChDb25zdHJ1Y3REYXRhJik7CiAg
ICAgc3RhdGljIENvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YShKU0NlbGwqLCBDb25zdHJ1
Y3REYXRhJik7CiAgICAgc3RhdGljIENhbGxUeXBlIGdldENhbGxEYXRhKEpTQ2VsbCosIENhbGxE
YXRhJik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFj
a09iamVjdEZ1bmN0aW9ucy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNr
T2JqZWN0RnVuY3Rpb25zLmgKaW5kZXggOGVlMDYwNjI3ZWI0NmJhYTI2ZGFhZGUwZGM0MjE3OWU3
ZGQ1YWNiZS4uOWZhYmJiYzg4MGZlOTU0ZTg5YzNhN2Q2MTQwMGU3MDE3NDcwZTZhNCAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrT2JqZWN0RnVuY3Rpb25z
LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrT2JqZWN0RnVuY3Rp
b25zLmgKQEAgLTMyOCw3ICszMjgsNyBAQCBib29sIEpTQ2FsbGJhY2tPYmplY3Q8UGFyZW50Pjo6
ZGVsZXRlUHJvcGVydHkoSlNDZWxsKiBjZWxsLCBFeGVjU3RhdGUqIGV4ZWMsIHVucwogfQogCiB0
ZW1wbGF0ZSA8Y2xhc3MgUGFyZW50PgotQ29uc3RydWN0VHlwZSBKU0NhbGxiYWNrT2JqZWN0PFBh
cmVudD46OmdldENvbnN0cnVjdERhdGEoQ29uc3RydWN0RGF0YSYgY29uc3RydWN0RGF0YSkKK0Nv
bnN0cnVjdFR5cGUgSlNDYWxsYmFja09iamVjdDxQYXJlbnQ+OjpnZXRDb25zdHJ1Y3REYXRhVmly
dHVhbChDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQogewogICAgIHJldHVybiBnZXRDb25z
dHJ1Y3REYXRhKHRoaXMsIGNvbnN0cnVjdERhdGEpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL0FQSS9KU09iamVjdFJlZi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
QVBJL0pTT2JqZWN0UmVmLmNwcAppbmRleCA0Y2M2NmE0ZGIzMjU0NTI2NTQ1NmJlZDE4YTE1NTdk
ZWYxMWNkYmU2Li41ZmNiYjgzYTM3ZTVhYWZlY2U2ZjJmYmExNzBhZTEwN2VhMGU4NDAxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTT2JqZWN0UmVmLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTT2JqZWN0UmVmLmNwcApAQCAtNDU0LDcgKzQ1NCw3
IEBAIGJvb2wgSlNPYmplY3RJc0NvbnN0cnVjdG9yKEpTQ29udGV4dFJlZiwgSlNPYmplY3RSZWYg
b2JqZWN0KQogewogICAgIEpTT2JqZWN0KiBqc09iamVjdCA9IHRvSlMob2JqZWN0KTsKICAgICBD
b25zdHJ1Y3REYXRhIGNvbnN0cnVjdERhdGE7Ci0gICAgcmV0dXJuIGpzT2JqZWN0LT5nZXRDb25z
dHJ1Y3REYXRhKGNvbnN0cnVjdERhdGEpICE9IENvbnN0cnVjdFR5cGVOb25lOworICAgIHJldHVy
biBqc09iamVjdC0+Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoY29uc3RydWN0RGF0YSkgIT0gQ29u
c3RydWN0VHlwZU5vbmU7CiB9CiAKIEpTT2JqZWN0UmVmIEpTT2JqZWN0Q2FsbEFzQ29uc3RydWN0
b3IoSlNDb250ZXh0UmVmIGN0eCwgSlNPYmplY3RSZWYgb2JqZWN0LCBzaXplX3QgYXJndW1lbnRD
b3VudCwgY29uc3QgSlNWYWx1ZVJlZiBhcmd1bWVudHNbXSwgSlNWYWx1ZVJlZiogZXhjZXB0aW9u
KQpAQCAtNDY1LDcgKzQ2NSw3IEBAIEpTT2JqZWN0UmVmIEpTT2JqZWN0Q2FsbEFzQ29uc3RydWN0
b3IoSlNDb250ZXh0UmVmIGN0eCwgSlNPYmplY3RSZWYgb2JqZWN0LCBzaXplCiAgICAgSlNPYmpl
Y3QqIGpzT2JqZWN0ID0gdG9KUyhvYmplY3QpOwogCiAgICAgQ29uc3RydWN0RGF0YSBjb25zdHJ1
Y3REYXRhOwotICAgIENvbnN0cnVjdFR5cGUgY29uc3RydWN0VHlwZSA9IGpzT2JqZWN0LT5nZXRD
b25zdHJ1Y3REYXRhKGNvbnN0cnVjdERhdGEpOworICAgIENvbnN0cnVjdFR5cGUgY29uc3RydWN0
VHlwZSA9IGpzT2JqZWN0LT5nZXRDb25zdHJ1Y3REYXRhVmlydHVhbChjb25zdHJ1Y3REYXRhKTsK
ICAgICBpZiAoY29uc3RydWN0VHlwZSA9PSBDb25zdHJ1Y3RUeXBlTm9uZSkKICAgICAgICAgcmV0
dXJuIDA7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IGYyZjdjNzhjYjM1NWIyNWE4NTli
MTQwZDBmYjU5MGZlNDVhZGY3YzEuLjVkNWY4MjU5MTQ4OGI2MDQ0NGUzOWZiY2I5ZGZhM2JhNGIz
NGY0MjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY3IEBACisyMDExLTEw
LTEyICBNYXJrIEhhaG5lbmJlcmcgIDxtaGFobmVuYmVyZ0BhcHBsZS5jb20+CisKKyAgICAgICAg
UmVuYW1lIHZpcnR1YWwgZ2V0Q29uc3RydWN0RGF0YSB0byBnZXRDb25zdHJ1Y3REYXRhVmlydHVh
bAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Njk4NzIK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZW5hbWVk
IHZpcnR1YWwgZ2V0Q29uc3RydWN0RGF0YSBmdW5jdGlvbnMgdG8gZ2V0Q29uc3RydWN0RGF0YVZp
cnR1YWwgdG8gCisgICAgICAgIGF2b2lkIGNvbmZsaWN0cyB3aGVuIHdlIGFkZCBzdGF0aWMgZ2V0
Q29uc3RydWN0RGF0YSB0byB0aGUgTWV0aG9kVGFibGUuCisKKyAgICAgICAgKiBBUEkvSlNDYWxs
YmFja0NvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6SlNDYWxsYmFja0NvbnN0cnVjdG9y
OjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbCk6CisgICAgICAgICogQVBJL0pTQ2FsbGJhY2tDb25z
dHJ1Y3Rvci5oOgorICAgICAgICAqIEFQSS9KU0NhbGxiYWNrT2JqZWN0Lmg6CisgICAgICAgICog
QVBJL0pTQ2FsbGJhY2tPYmplY3RGdW5jdGlvbnMuaDoKKyAgICAgICAgKEpTQzo6OjpnZXRDb25z
dHJ1Y3REYXRhVmlydHVhbCk6CisgICAgICAgICogQVBJL0pTT2JqZWN0UmVmLmNwcDoKKyAgICAg
ICAgKEpTT2JqZWN0SXNDb25zdHJ1Y3Rvcik6CisgICAgICAgIChKU09iamVjdENhbGxBc0NvbnN0
cnVjdG9yKToKKyAgICAgICAgKiBKYXZhU2NyaXB0Q29yZS5leHA6CisgICAgICAgICogSmF2YVNj
cmlwdENvcmUudmNwcm9qL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLmRlZjoKKyAgICAg
ICAgKiBkZmcvREZHT3BlcmF0aW9ucy5jcHA6CisgICAgICAgICogaml0L0pJVFN0dWJzLmNwcDoK
KyAgICAgICAgKEpTQzo6REVGSU5FX1NUVUJfRlVOQ1RJT04pOgorICAgICAgICAqIHJ1bnRpbWUv
QXJyYXlDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OkFycmF5Q29uc3RydWN0b3I6Omdl
dENvbnN0cnVjdERhdGFWaXJ0dWFsKToKKyAgICAgICAgKiBydW50aW1lL0FycmF5Q29uc3RydWN0
b3IuaDoKKyAgICAgICAgKiBydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5jcHA6CisgICAgICAg
IChKU0M6OkJvb2xlYW5Db25zdHJ1Y3Rvcjo6Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwpOgorICAg
ICAgICAqIHJ1bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9yLmg6CisgICAgICAgICogcnVudGltZS9E
YXRlQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpEYXRlQ29uc3RydWN0b3I6OmdldENv
bnN0cnVjdERhdGFWaXJ0dWFsKToKKyAgICAgICAgKiBydW50aW1lL0RhdGVDb25zdHJ1Y3Rvci5o
OgorICAgICAgICAqIHJ1bnRpbWUvRXJyb3IuaDoKKyAgICAgICAgKEpTQzo6U3RyaWN0TW9kZVR5
cGVFcnJvckZ1bmN0aW9uOjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbCk6CisgICAgICAgICogcnVu
dGltZS9FcnJvckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6RXJyb3JDb25zdHJ1Y3Rv
cjo6Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwpOgorICAgICAgICAqIHJ1bnRpbWUvRXJyb3JDb25z
dHJ1Y3Rvci5oOgorICAgICAgICAqIHJ1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHA6Cisg
ICAgICAgIChKU0M6OkZ1bmN0aW9uQ29uc3RydWN0b3I6OmdldENvbnN0cnVjdERhdGFWaXJ0dWFs
KToKKyAgICAgICAgKiBydW50aW1lL0Z1bmN0aW9uQ29uc3RydWN0b3IuaDoKKyAgICAgICAgKiBy
dW50aW1lL0pTQ2VsbC5jcHA6CisgICAgICAgIChKU0M6OkpTQ2VsbDo6Z2V0Q29uc3RydWN0RGF0
YVZpcnR1YWwpOgorICAgICAgICAqIHJ1bnRpbWUvSlNDZWxsLmg6CisgICAgICAgIChKU0M6Omdl
dENvbnN0cnVjdERhdGEpOgorICAgICAgICAqIHJ1bnRpbWUvSlNGdW5jdGlvbi5jcHA6CisgICAg
ICAgIChKU0M6OkpTRnVuY3Rpb246OmdldENvbnN0cnVjdERhdGFWaXJ0dWFsKToKKyAgICAgICAg
KiBydW50aW1lL0pTRnVuY3Rpb24uaDoKKyAgICAgICAgKiBydW50aW1lL05hdGl2ZUVycm9yQ29u
c3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpOYXRpdmVFcnJvckNvbnN0cnVjdG9yOjpnZXRD
b25zdHJ1Y3REYXRhVmlydHVhbCk6CisgICAgICAgICogcnVudGltZS9OYXRpdmVFcnJvckNvbnN0
cnVjdG9yLmg6CisgICAgICAgICogcnVudGltZS9OdW1iZXJDb25zdHJ1Y3Rvci5jcHA6CisgICAg
ICAgIChKU0M6Ok51bWJlckNvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbCk6Cisg
ICAgICAgICogcnVudGltZS9OdW1iZXJDb25zdHJ1Y3Rvci5oOgorICAgICAgICAqIHJ1bnRpbWUv
T2JqZWN0Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpPYmplY3RDb25zdHJ1Y3Rvcjo6
Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwpOgorICAgICAgICAqIHJ1bnRpbWUvT2JqZWN0Q29uc3Ry
dWN0b3IuaDoKKyAgICAgICAgKiBydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmNwcDoKKyAgICAg
ICAgKEpTQzo6UmVnRXhwQ29uc3RydWN0b3I6OmdldENvbnN0cnVjdERhdGFWaXJ0dWFsKToKKyAg
ICAgICAgKiBydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmg6CisgICAgICAgICogcnVudGltZS9T
dHJpbmdDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OlN0cmluZ0NvbnN0cnVjdG9yOjpn
ZXRDb25zdHJ1Y3REYXRhVmlydHVhbCk6CisgICAgICAgICogcnVudGltZS9TdHJpbmdDb25zdHJ1
Y3Rvci5oOgorCiAyMDExLTEwLTEyICBHdXN0YXZvIE5vcm9uaGEgU2lsdmEgIDxndXN0YXZvLm5v
cm9uaGFAY29sbGFib3JhLmNvLnVrPgogCiAgICAgICAgIEZpeCBidWlsZCB3aXRoIEdMaWIgMi4z
MQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLmV4cCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS5leHAKaW5kZXggZmFhNWVjMjk1
NmJjMWNjYzViM2E4N2U3ZDU5ZmMxY2M2YzI0MTMzNC4uNWIyZWZjNTU3ZWUxZTI4NzIxZTUwOWYz
YWIxOTM4ZDg5YzdiNDlkOCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFT
Y3JpcHRDb3JlLmV4cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUu
ZXhwCkBAIC0yNTksOSArMjU5LDkgQEAgX19aTjNKU0M0Y2FsbEVQTlNfOUV4ZWNTdGF0ZUVOU183
SlNWYWx1ZUVOU184Q2FsbFR5cGVFUktOU184Q2FsbERhdGFFUzJfUktOU183QXIKIF9fWk4zSlND
NkpTQ2VsbDExZ2V0Q2FsbERhdGFFUFMwX1JOU184Q2FsbERhdGFFCiBfX1pOM0pTQzZKU0NlbGwx
NGRlbGV0ZVByb3BlcnR5RVBOU185RXhlY1N0YXRlRVJLTlNfMTBJZGVudGlmaWVyRQogX19aTjNK
U0M2SlNDZWxsMTRkZWxldGVQcm9wZXJ0eUVQTlNfOUV4ZWNTdGF0ZUVqCi1fX1pOM0pTQzZKU0Nl
bGwxNmdldENvbnN0cnVjdERhdGFFUk5TXzEzQ29uc3RydWN0RGF0YUUKIF9fWk4zSlNDNkpTQ2Vs
bDE4Z2V0T3duUHJvcGVydHlTbG90RVBOU185RXhlY1N0YXRlRVJLTlNfMTBJZGVudGlmaWVyRVJO
U18xMlByb3BlcnR5U2xvdEUKIF9fWk4zSlNDNkpTQ2VsbDE4Z2V0T3duUHJvcGVydHlTbG90RVBO
U185RXhlY1N0YXRlRWpSTlNfMTJQcm9wZXJ0eVNsb3RFCitfX1pOM0pTQzZKU0NlbGwyM2dldENv
bnN0cnVjdERhdGFWaXJ0dWFsRVJOU18xM0NvbnN0cnVjdERhdGFFCiBfX1pOM0pTQzZKU0NlbGwz
cHV0RVBOU185RXhlY1N0YXRlRVJLTlNfMTBJZGVudGlmaWVyRU5TXzdKU1ZhbHVlRVJOU18xNVB1
dFByb3BlcnR5U2xvdEUKIF9fWk4zSlNDNkpTQ2VsbDNwdXRFUE5TXzlFeGVjU3RhdGVFak5TXzdK
U1ZhbHVlRSAgCiBfX1pOM0pTQzZKU0NlbGw5Z2V0T2JqZWN0RXYKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS52Y3Byb2ovSmF2YVNjcmlwdENvcmUvSmF2
YVNjcmlwdENvcmUuZGVmIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnZj
cHJvai9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS5kZWYKaW5kZXggN2M3OTdkM2EzOGI3
NjQzODkwNWUxMWRiMmVkMGZjOWI0OWZmYmJmYy4uYTU1YjVjODY5OTRmMWUwNTM0ZWVkNWFiNWYy
ZTlkNjhkZjgzZDU3NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3Jp
cHRDb3JlLnZjcHJvai9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS5kZWYKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnZjcHJvai9KYXZhU2NyaXB0Q29yZS9K
YXZhU2NyaXB0Q29yZS5kZWYKQEAgLTE5MCw3ICsxOTAsNiBAQCBFWFBPUlRTCiAgICAgP2dldEBT
dHJ1Y3R1cmVASlNDQEBRQUVJQUFWSlNHbG9iYWxEYXRhQDJAQUJWSWRlbnRpZmllckAyQEFBSUFB
UEFWSlNDZWxsQDJAQFoKICAgICA/Z2V0QFN0cnVjdHVyZUBKU0NAQFFBRUlBQVZKU0dsb2JhbERh
dGFAMkBQQVZTdHJpbmdJbXBsQFdURkBAQUFJQUFQQVZKU0NlbGxAMkBAWgogICAgID9nZXRDYWxs
RGF0YUBKU0NlbGxASlNDQEBTQT9BVzRDYWxsVHlwZUAyQFBBVjEyQEFBVENhbGxEYXRhQDJAQFoK
LSAgICA/Z2V0Q29uc3RydWN0RGF0YUBKU0NlbGxASlNDQEBVQUU/QVc0Q29uc3RydWN0VHlwZUAy
QEFBVENvbnN0cnVjdERhdGFAMkBAWgogICAgID9nZXRPYmplY3RASlNDZWxsQEpTQ0BAUUFFUEFW
SlNPYmplY3RAMkBYWgogICAgID9nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JASlNHbG9iYWxPYmpl
Y3RASlNDQEBVQUVfTlBBVkV4ZWNTdGF0ZUAyQEFCVklkZW50aWZpZXJAMkBBQVZQcm9wZXJ0eURl
c2NyaXB0b3JAMkBAWgogICAgID9nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JASlNPYmplY3RASlND
QEBVQUVfTlBBVkV4ZWNTdGF0ZUAyQEFCVklkZW50aWZpZXJAMkBBQVZQcm9wZXJ0eURlc2NyaXB0
b3JAMkBAWgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdPcGVyYXRp
b25zLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHT3BlcmF0aW9ucy5jcHAKaW5k
ZXggZWIwZDhhMzIyYmJkMDgxZGU2NjkwMzE5YmY5MjY4NGI1ZTY5NGQyMS4uZjIyOGU5N2FiY2Yx
YWEyNzZmYTVkNjlhNDUyYTNmN2NmOTlhZmFhMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2RmZy9ERkdPcGVyYXRpb25zLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
ZGZnL0RGR09wZXJhdGlvbnMuY3BwCkBAIC0xNjEsNyArMTYxLDcgQEAgSlNDZWxsKiBERkdfT1BF
UkFUSU9OIG9wZXJhdGlvbkNyZWF0ZVRoaXMoRXhlY1N0YXRlKiBleGVjLCBKU0NlbGwqIHByb3Rv
dHlwZSkKICAgICAKICNpZiAhQVNTRVJUX0RJU0FCTEVECiAgICAgQ29uc3RydWN0RGF0YSBjb25z
dHJ1Y3REYXRhOwotICAgIEFTU0VSVChjb25zdHJ1Y3Rvci0+Z2V0Q29uc3RydWN0RGF0YShjb25z
dHJ1Y3REYXRhKSA9PSBDb25zdHJ1Y3RUeXBlSlMpOworICAgIEFTU0VSVChjb25zdHJ1Y3Rvci0+
Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoY29uc3RydWN0RGF0YSkgPT0gQ29uc3RydWN0VHlwZUpT
KTsKICNlbmRpZgogICAgIAogICAgIEpTR2xvYmFsRGF0YSYgZ2xvYmFsRGF0YSA9IGV4ZWMtPmds
b2JhbERhdGEoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUU3R1
YnMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRTdHVicy5jcHAKaW5kZXggYTkz
MGY1ODJlMDlkYmFmNzFjNzUxYjI1YzVjNGU3NWE3ZDBhOTYyMi4uODMyZGRlZGQ4Y2RlMzNmNTVl
YmM0MTlkN2QxZTI5ZTM1MjQ2YWNmOCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2ppdC9KSVRTdHVicy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRTdHVi
cy5jcHAKQEAgLTEyNjgsNyArMTI2OCw3IEBAIERFRklORV9TVFVCX0ZVTkNUSU9OKEVuY29kZWRK
U1ZhbHVlLCBvcF9jcmVhdGVfdGhpcykKICAgICBKU0Z1bmN0aW9uKiBjb25zdHJ1Y3RvciA9IGFz
RnVuY3Rpb24oY2FsbEZyYW1lLT5jYWxsZWUoKSk7CiAjaWYgIUFTU0VSVF9ESVNBQkxFRAogICAg
IENvbnN0cnVjdERhdGEgY29uc3RydWN0RGF0YTsKLSAgICBBU1NFUlQoY29uc3RydWN0b3ItPmdl
dENvbnN0cnVjdERhdGEoY29uc3RydWN0RGF0YSkgPT0gQ29uc3RydWN0VHlwZUpTKTsKKyAgICBB
U1NFUlQoY29uc3RydWN0b3ItPmdldENvbnN0cnVjdERhdGFWaXJ0dWFsKGNvbnN0cnVjdERhdGEp
ID09IENvbnN0cnVjdFR5cGVKUyk7CiAjZW5kaWYKIAogICAgIFN0cnVjdHVyZSogc3RydWN0dXJl
OwpAQCAtMjE2NSw3ICsyMTY1LDcgQEAgREVGSU5FX1NUVUJfRlVOQ1RJT04odm9pZCosIG9wX2Nv
bnN0cnVjdF9qaXRDb21waWxlKQogCiAjaWYgIUFTU0VSVF9ESVNBQkxFRAogICAgIENvbnN0cnVj
dERhdGEgY29uc3RydWN0RGF0YTsKLSAgICBBU1NFUlQoYXNGdW5jdGlvbihzdGFja0ZyYW1lLmNh
bGxGcmFtZS0+Y2FsbGVlKCkpLT5nZXRDb25zdHJ1Y3REYXRhKGNvbnN0cnVjdERhdGEpID09IENv
bnN0cnVjdFR5cGVKUyk7CisgICAgQVNTRVJUKGFzRnVuY3Rpb24oc3RhY2tGcmFtZS5jYWxsRnJh
bWUtPmNhbGxlZSgpKS0+Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoY29uc3RydWN0RGF0YSkgPT0g
Q29uc3RydWN0VHlwZUpTKTsKICNlbmRpZgogICAgIAogICAgIHJldHVybiBqaXRDb21waWxlRm9y
KHN0YWNrRnJhbWUsIENvZGVGb3JDb25zdHJ1Y3QpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9BcnJheUNvbnN0cnVjdG9yLmNwcAppbmRleCBmNTU0ZTQxYTRmY2FmZjll
OTAyOTM2Nzk2MDk1YmJmYTFlYTRkYzE3Li5kNGQ3N2YyM2JmYzY1MjE0ZmQyZTZjMGY4ODhiYjg4
MGNjMmYxMDEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BcnJh
eUNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BcnJh
eUNvbnN0cnVjdG9yLmNwcApAQCAtOTcsNyArOTcsNyBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUg
SlNDX0hPU1RfQ0FMTCBjb25zdHJ1Y3RXaXRoQXJyYXlDb25zdHJ1Y3RvcihFeGVjU3RhdGUqIGV4
ZQogICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoY29uc3RydWN0QXJyYXlXaXRoU2l6ZVF1aXJr
KGV4ZWMsIGFyZ3MpKTsKIH0KIAotQ29uc3RydWN0VHlwZSBBcnJheUNvbnN0cnVjdG9yOjpnZXRD
b25zdHJ1Y3REYXRhKENvbnN0cnVjdERhdGEmIGNvbnN0cnVjdERhdGEpCitDb25zdHJ1Y3RUeXBl
IEFycmF5Q29uc3RydWN0b3I6OmdldENvbnN0cnVjdERhdGFWaXJ0dWFsKENvbnN0cnVjdERhdGEm
IGNvbnN0cnVjdERhdGEpCiB7CiAgICAgcmV0dXJuIGdldENvbnN0cnVjdERhdGEodGhpcywgY29u
c3RydWN0RGF0YSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9BcnJheUNvbnN0cnVjdG9yLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BcnJh
eUNvbnN0cnVjdG9yLmgKaW5kZXggMGVhM2U0MmJjZDIxOTEzYjY4MzhkMjZlYWIwMTUzMWM5NTM4
N2FhYS4uOTMwNDU5OWM1MjAxZmE0NDU0YWE0NDQ0ODllZGQwNzMwOTNlMDEyMiAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlDb25zdHJ1Y3Rvci5oCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5Q29uc3RydWN0b3IuaApAQCAtNTYs
NyArNTYsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogICAgICAgICB2aXJ0dWFsIGJvb2wgZ2V0T3du
UHJvcGVydHlEZXNjcmlwdG9yKEV4ZWNTdGF0ZSosIGNvbnN0IElkZW50aWZpZXImLCBQcm9wZXJ0
eURlc2NyaXB0b3ImKTsKIAotICAgICAgICB2aXJ0dWFsIENvbnN0cnVjdFR5cGUgZ2V0Q29uc3Ry
dWN0RGF0YShDb25zdHJ1Y3REYXRhJik7CisgICAgICAgIHZpcnR1YWwgQ29uc3RydWN0VHlwZSBn
ZXRDb25zdHJ1Y3REYXRhVmlydHVhbChDb25zdHJ1Y3REYXRhJik7CiAgICAgICAgIHN0YXRpYyBD
b25zdHJ1Y3RUeXBlIGdldENvbnN0cnVjdERhdGEoSlNDZWxsKiwgQ29uc3RydWN0RGF0YSYpOwog
ICAgICAgICBzdGF0aWMgQ2FsbFR5cGUgZ2V0Q2FsbERhdGEoSlNDZWxsKiwgQ2FsbERhdGEmKTsK
ICAgICB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVh
bkNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5D
b25zdHJ1Y3Rvci5jcHAKaW5kZXggMWE0MTUyY2IwM2Q5YjVkYmRlNzc3MzA3ZDliYTFjNGFhNzk2
OWYwMS4uYWI2MTY5ZDE5ZjgxYmJmNzk3Y2VhZTRmMzc0NTAyY2ZkODk2NWU0YyAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9yLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFuQ29uc3RydWN0b3IuY3Bw
CkBAIC01OCw3ICs1OCw3IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNv
bnN0cnVjdFdpdGhCb29sZWFuQ29uc3RydWN0b3IoRXhlY1N0YXRlKiBlCiAgICAgcmV0dXJuIEpT
VmFsdWU6OmVuY29kZShjb25zdHJ1Y3RCb29sZWFuKGV4ZWMsIGFyZ3MpKTsKIH0KIAotQ29uc3Ry
dWN0VHlwZSBCb29sZWFuQ29uc3RydWN0b3I6OmdldENvbnN0cnVjdERhdGEoQ29uc3RydWN0RGF0
YSYgY29uc3RydWN0RGF0YSkKK0NvbnN0cnVjdFR5cGUgQm9vbGVhbkNvbnN0cnVjdG9yOjpnZXRD
b25zdHJ1Y3REYXRhVmlydHVhbChDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQogewogICAg
IHJldHVybiBnZXRDb25zdHJ1Y3REYXRhKHRoaXMsIGNvbnN0cnVjdERhdGEpOwogfQpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9yLmgg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFuQ29uc3RydWN0b3IuaAppbmRl
eCA4ZDEwZjA5ODFlYWNlMWUyMjQxMmRkOGE4Yzk0MjAzZTA1NWQyMzhjLi42NzAzZmQ3YTlkYTFm
YjQ0MTBmZmVlYzM1MTQ4NzdiNmVlMDdkMTBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9Cb29sZWFuQ29uc3RydWN0b3IuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9Cb29sZWFuQ29uc3RydWN0b3IuaApAQCAtNTAsNyArNTAsNyBAQCBuYW1l
c3BhY2UgSlNDIHsKIAogICAgIHByaXZhdGU6CiAgICAgICAgIEJvb2xlYW5Db25zdHJ1Y3RvcihK
U0dsb2JhbE9iamVjdCosIFN0cnVjdHVyZSopOwotICAgICAgICB2aXJ0dWFsIENvbnN0cnVjdFR5
cGUgZ2V0Q29uc3RydWN0RGF0YShDb25zdHJ1Y3REYXRhJik7CisgICAgICAgIHZpcnR1YWwgQ29u
c3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChDb25zdHJ1Y3REYXRhJik7CiAgICAg
ICAgIHN0YXRpYyBDb25zdHJ1Y3RUeXBlIGdldENvbnN0cnVjdERhdGEoSlNDZWxsKiwgQ29uc3Ry
dWN0RGF0YSYpOwogICAgICAgICBzdGF0aWMgQ2FsbFR5cGUgZ2V0Q2FsbERhdGEoSlNDZWxsKiwg
Q2FsbERhdGEmKTsKICAgICB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvRGF0ZUNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0RhdGVDb25zdHJ1Y3Rvci5jcHAKaW5kZXggZjQ0MGE2NGJmYTVmNjUzMGNkY2VmNzQyZDkzZGRj
Y2VhMmFhMTMyMS4uOGNlMGIxMTgxY2IxMjNkNWE0YTQzNGMyODZkZWI3MTI5NjBlYmRjOSAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUNvbnN0cnVjdG9yLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlQ29uc3RydWN0b3IuY3Bw
CkBAIC0xNjEsNyArMTYxLDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwg
Y29uc3RydWN0V2l0aERhdGVDb25zdHJ1Y3RvcihFeGVjU3RhdGUqIGV4ZWMKICAgICByZXR1cm4g
SlNWYWx1ZTo6ZW5jb2RlKGNvbnN0cnVjdERhdGUoZXhlYywgYXNJbnRlcm5hbEZ1bmN0aW9uKGV4
ZWMtPmNhbGxlZSgpKS0+Z2xvYmFsT2JqZWN0KCksIGFyZ3MpKTsKIH0KIAotQ29uc3RydWN0VHlw
ZSBEYXRlQ29uc3RydWN0b3I6OmdldENvbnN0cnVjdERhdGEoQ29uc3RydWN0RGF0YSYgY29uc3Ry
dWN0RGF0YSkKK0NvbnN0cnVjdFR5cGUgRGF0ZUNvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRh
VmlydHVhbChDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQogewogICAgIHJldHVybiBnZXRD
b25zdHJ1Y3REYXRhKHRoaXMsIGNvbnN0cnVjdERhdGEpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUNvbnN0cnVjdG9yLmggYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9EYXRlQ29uc3RydWN0b3IuaAppbmRleCBmODM3ZDY2YWFlZDFjM2Ji
YmVlMzliN2QyMDY1Y2RjZWU0ODNiMjIxLi45YzRmZmM0NjFjOGZiMTFkMzM5ZGU3YzQxZDI2ZDQw
ZDhjNDMwZjhkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRl
Q29uc3RydWN0b3IuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlQ29u
c3RydWN0b3IuaApAQCAtNTEsNyArNTEsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogICAgIHByaXZh
dGU6CiAgICAgICAgIERhdGVDb25zdHJ1Y3RvcihKU0dsb2JhbE9iamVjdCosIFN0cnVjdHVyZSop
OwotICAgICAgICB2aXJ0dWFsIENvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YShDb25zdHJ1
Y3REYXRhJik7CisgICAgICAgIHZpcnR1YWwgQ29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRh
VmlydHVhbChDb25zdHJ1Y3REYXRhJik7CiAgICAgICAgIHN0YXRpYyBDb25zdHJ1Y3RUeXBlIGdl
dENvbnN0cnVjdERhdGEoSlNDZWxsKiwgQ29uc3RydWN0RGF0YSYpOwogICAgICAgICBzdGF0aWMg
Q2FsbFR5cGUgZ2V0Q2FsbERhdGEoSlNDZWxsKiwgQ2FsbERhdGEmKTsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3IuaCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0Vycm9yLmgKaW5kZXggYzM0MGU2YzIzOTg1NzZhMTg1Mjg1ZWNmNmE5ZjU3
NmE5MjZjZTE1My4uNTE4MGZmYTBmNzQyYTc4NTVkOTM0NzQ1NzkwYmE1N2RlMzkwYjhhYSAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3IuaAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvci5oCkBAIC05OCw3ICs5OCw3IEBAIG5hbWVz
cGFjZSBKU0MgewogICAgICAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShqc051bGwoKSk7
CiAgICAgICAgIH0KICAgICAKLSAgICAgICAgQ29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRh
KENvbnN0cnVjdERhdGEmIGNvbnN0cnVjdERhdGEpCisgICAgICAgIHZpcnR1YWwgQ29uc3RydWN0
VHlwZSBnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRh
KQogICAgICAgICB7CiAgICAgICAgICAgICBjb25zdHJ1Y3REYXRhLm5hdGl2ZS5mdW5jdGlvbiA9
IGNvbnN0cnVjdFRocm93VHlwZUVycm9yOwogICAgICAgICAgICAgcmV0dXJuIENvbnN0cnVjdFR5
cGVIb3N0OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JD
b25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvckNvbnN0
cnVjdG9yLmNwcAppbmRleCA4MWU0NmRkMTQzNjAwOTk1ODllMjY3NmNjNjcwNTA4MDZlNDJiNGIx
Li4wOGE3NWY4NWVkOWMzN2M4NmFhMDYyOWEwNDUzZmYxMTEwYWRkNTQ1IDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvckNvbnN0cnVjdG9yLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvckNvbnN0cnVjdG9yLmNwcApAQCAtNTMs
NyArNTMsNyBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zdHJ1Y3RX
aXRoRXJyb3JDb25zdHJ1Y3RvcihFeGVjU3RhdGUqIGV4ZQogICAgIHJldHVybiBKU1ZhbHVlOjpl
bmNvZGUoRXJyb3JJbnN0YW5jZTo6Y3JlYXRlKGV4ZWMsIGVycm9yU3RydWN0dXJlLCBtZXNzYWdl
KSk7CiB9CiAKLUNvbnN0cnVjdFR5cGUgRXJyb3JDb25zdHJ1Y3Rvcjo6Z2V0Q29uc3RydWN0RGF0
YShDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQorQ29uc3RydWN0VHlwZSBFcnJvckNvbnN0
cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3RE
YXRhKQogewogICAgIHJldHVybiBnZXRDb25zdHJ1Y3REYXRhKHRoaXMsIGNvbnN0cnVjdERhdGEp
OwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JDb25z
dHJ1Y3Rvci5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JDb25zdHJ1Y3Rv
ci5oCmluZGV4IGI5YjlkMzc1MDExNTBmYmI0MDc4NWVlY2NhOWU1NzY4NDA3NmE0OGQuLmFmM2Zh
ZGY2NDViMjE4YzcwOGZkNjliNjBkOGU1N2JjZjY1MTM3YzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yQ29uc3RydWN0b3IuaAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9FcnJvckNvbnN0cnVjdG9yLmgKQEAgLTUxLDcgKzUxLDcgQEAg
bmFtZXNwYWNlIEpTQyB7CiAgICAgICAgIAogICAgIHByaXZhdGU6CiAgICAgICAgIEVycm9yQ29u
c3RydWN0b3IoSlNHbG9iYWxPYmplY3QqLCBTdHJ1Y3R1cmUqKTsKLSAgICAgICAgdmlydHVhbCBD
b25zdHJ1Y3RUeXBlIGdldENvbnN0cnVjdERhdGEoQ29uc3RydWN0RGF0YSYpOworICAgICAgICB2
aXJ0dWFsIENvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoQ29uc3RydWN0RGF0
YSYpOwogICAgICAgICBzdGF0aWMgQ29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKEpTQ2Vs
bCosIENvbnN0cnVjdERhdGEmKTsKICAgICAgICAgc3RhdGljIENhbGxUeXBlIGdldENhbGxEYXRh
KEpTQ2VsbCosIENhbGxEYXRhJik7CiAgICAgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKaW5kZXggYzNlZGEwOTkyMjRi
MDY0MGFlNGRlYzZlMzRiZjY0YjY5NzljNjE5Mi4uNGExN2JhZGQzOWZlYTAxNmNhNDA0OWU2ZmZl
YTVkZWVhOTdhNTE5MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
RnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKQEAgLTU5LDcgKzU5LDcgQEAgc3RhdGljIEVuY29k
ZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29uc3RydWN0V2l0aEZ1bmN0aW9uQ29uc3RydWN0b3Io
RXhlY1N0YXRlKgogICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoY29uc3RydWN0RnVuY3Rpb24o
ZXhlYywgYXNJbnRlcm5hbEZ1bmN0aW9uKGV4ZWMtPmNhbGxlZSgpKS0+Z2xvYmFsT2JqZWN0KCks
IGFyZ3MpKTsKIH0KIAotQ29uc3RydWN0VHlwZSBGdW5jdGlvbkNvbnN0cnVjdG9yOjpnZXRDb25z
dHJ1Y3REYXRhKENvbnN0cnVjdERhdGEmIGNvbnN0cnVjdERhdGEpCitDb25zdHJ1Y3RUeXBlIEZ1
bmN0aW9uQ29uc3RydWN0b3I6OmdldENvbnN0cnVjdERhdGFWaXJ0dWFsKENvbnN0cnVjdERhdGEm
IGNvbnN0cnVjdERhdGEpCiB7CiAgICAgcmV0dXJuIGdldENvbnN0cnVjdERhdGEodGhpcywgY29u
c3RydWN0RGF0YSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9G
dW5jdGlvbkNvbnN0cnVjdG9yLmgKaW5kZXggZTg4YTlkYzJhNjJhYjQwNmYzN2Q5YTM5ZjVkZmUx
MmFiMTcyZDE3My4uMGE3MzdmYjQ1ZDAxODUwODdjMTMyNTkwZjA5ODA2MjBlMDY4MmFmZCAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rv
ci5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uQ29uc3RydWN0
b3IuaApAQCAtNDgsNyArNDgsNyBAQCBuYW1lc3BhY2UgSlNDIHsKICAgICBwcml2YXRlOgogICAg
ICAgICBGdW5jdGlvbkNvbnN0cnVjdG9yKEpTR2xvYmFsT2JqZWN0KiwgU3RydWN0dXJlKik7CiAg
ICAgICAgIHZvaWQgZmluaXNoQ3JlYXRpb24oRXhlY1N0YXRlKiwgRnVuY3Rpb25Qcm90b3R5cGUq
KTsKLSAgICAgICAgdmlydHVhbCBDb25zdHJ1Y3RUeXBlIGdldENvbnN0cnVjdERhdGEoQ29uc3Ry
dWN0RGF0YSYpOworICAgICAgICB2aXJ0dWFsIENvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0
YVZpcnR1YWwoQ29uc3RydWN0RGF0YSYpOwogICAgICAgICBzdGF0aWMgQ29uc3RydWN0VHlwZSBn
ZXRDb25zdHJ1Y3REYXRhKEpTQ2VsbCosIENvbnN0cnVjdERhdGEmKTsKICAgICAgICAgc3RhdGlj
IENhbGxUeXBlIGdldENhbGxEYXRhKEpTQ2VsbCosIENhbGxEYXRhJik7CiAgICAgfTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ2VsbC5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0NlbGwuY3BwCmluZGV4IDg5NzNkYzMwMDQ0ZmJmZjc4
ZjBmMDYzNjIzOGI5ZjhiZTM5ZTk3OTEuLmE2OGIwZjBmOTBlYjBiNTgxNTFlNTM0NjEwZmM4ZDhm
YzFhMzYxY2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ2Vs
bC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNDZWxsLmNwcApAQCAt
NTksNyArNTksNyBAQCBDYWxsVHlwZSBKU0NlbGw6OmdldENhbGxEYXRhKEpTQ2VsbCosIENhbGxE
YXRhJikKICAgICByZXR1cm4gQ2FsbFR5cGVOb25lOwogfQogCi1Db25zdHJ1Y3RUeXBlIEpTQ2Vs
bDo6Z2V0Q29uc3RydWN0RGF0YShDb25zdHJ1Y3REYXRhJikKK0NvbnN0cnVjdFR5cGUgSlNDZWxs
OjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChDb25zdHJ1Y3REYXRhJikKIHsKICAgICByZXR1cm4g
Q29uc3RydWN0VHlwZU5vbmU7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU0NlbGwuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ2VsbC5o
CmluZGV4IDIzZjBmZDVjMGZhZjc1NDlmZTc2MDhlMGU0ZWIwZjUzZjMyMDZiZTcuLjFhOTQzOTVl
YmJlZWU4YzE4ODJlNWJhMWIyZTM3ZDBmODJlOTE1OWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTQ2VsbC5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTQ2VsbC5oCkBAIC03NCw3ICs3NCw3IEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAg
ICBjb25zdCBKU09iamVjdCogZ2V0T2JqZWN0KCkgY29uc3Q7IC8vIE5VTEwgaWYgbm90IGFuIG9i
amVjdAogICAgICAgICAKICAgICAgICAgc3RhdGljIENhbGxUeXBlIGdldENhbGxEYXRhKEpTQ2Vs
bCosIENhbGxEYXRhJik7Ci0gICAgICAgIHZpcnR1YWwgQ29uc3RydWN0VHlwZSBnZXRDb25zdHJ1
Y3REYXRhKENvbnN0cnVjdERhdGEmKTsKKyAgICAgICAgdmlydHVhbCBDb25zdHJ1Y3RUeXBlIGdl
dENvbnN0cnVjdERhdGFWaXJ0dWFsKENvbnN0cnVjdERhdGEmKTsKICAgICAgICAgc3RhdGljIENv
bnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YShKU0NlbGwqLCBDb25zdHJ1Y3REYXRhJik7CiAK
ICAgICAgICAgLy8gQmFzaWMgY29udmVyc2lvbnMuCkBAIC0yMzcsNyArMjM3LDcgQEAgbmFtZXNw
YWNlIEpTQyB7CiAKICAgICBpbmxpbmUgQ29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKEpT
VmFsdWUgdmFsdWUsIENvbnN0cnVjdERhdGEmIGNvbnN0cnVjdERhdGEpCiAgICAgewotICAgICAg
ICBDb25zdHJ1Y3RUeXBlIHJlc3VsdCA9IHZhbHVlLmlzQ2VsbCgpID8gdmFsdWUuYXNDZWxsKCkt
PmdldENvbnN0cnVjdERhdGEoY29uc3RydWN0RGF0YSkgOiBDb25zdHJ1Y3RUeXBlTm9uZTsKKyAg
ICAgICAgQ29uc3RydWN0VHlwZSByZXN1bHQgPSB2YWx1ZS5pc0NlbGwoKSA/IHZhbHVlLmFzQ2Vs
bCgpLT5nZXRDb25zdHJ1Y3REYXRhVmlydHVhbChjb25zdHJ1Y3REYXRhKSA6IENvbnN0cnVjdFR5
cGVOb25lOwogICAgICAgICBBU1NFUlQocmVzdWx0ID09IENvbnN0cnVjdFR5cGVOb25lIHx8IHZh
bHVlLmlzVmFsaWRDYWxsZWUoKSk7CiAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgfQpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlvbi5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0Z1bmN0aW9uLmNwcAppbmRleCA0OTMzMzA0
NmNkNzliODk4NWRkNzVmY2FmZTViMTZjYTdlNDNjYTI1Li4zNGI4YjZkMmQwOWIyZDFiNTM1NTdj
MGU2MGEyNTUyMzU5ZmQ2ZTgzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU0Z1bmN0aW9uLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U0Z1bmN0aW9uLmNwcApAQCAtMzQ4LDcgKzM0OCw3IEBAIGJvb2wgSlNGdW5jdGlvbjo6ZGVsZXRl
UHJvcGVydHkoSlNDZWxsKiBjZWxsLCBFeGVjU3RhdGUqIGV4ZWMsIGNvbnN0IElkZW50aWZpZXIm
CiAgICAgcmV0dXJuIEJhc2U6OmRlbGV0ZVByb3BlcnR5KHRoaXNPYmplY3QsIGV4ZWMsIHByb3Bl
cnR5TmFtZSk7CiB9CiAKLUNvbnN0cnVjdFR5cGUgSlNGdW5jdGlvbjo6Z2V0Q29uc3RydWN0RGF0
YShDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQorQ29uc3RydWN0VHlwZSBKU0Z1bmN0aW9u
OjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQog
ewogICAgIHJldHVybiBnZXRDb25zdHJ1Y3REYXRhKHRoaXMsIGNvbnN0cnVjdERhdGEpOwogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlvbi5oIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlvbi5oCmluZGV4IDliOWRhOWNl
OWZhYjc1NDcxZGE4Y2Y5YWMxN2ZmYmMwZDc3M2JjMzYuLjdmNTE2ZjY4Njg3MTA4NTI1MWIwZWJm
MDYxY2VjMWZhMmNkNGUyZjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTRnVuY3Rpb24uaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0Z1
bmN0aW9uLmgKQEAgLTEwOCw3ICsxMDgsNyBAQCBuYW1lc3BhY2UgSlNDIHsKICAgICAgICAgTmF0
aXZlRnVuY3Rpb24gbmF0aXZlRnVuY3Rpb24oKTsKICAgICAgICAgTmF0aXZlRnVuY3Rpb24gbmF0
aXZlQ29uc3RydWN0b3IoKTsKIAotICAgICAgICB2aXJ0dWFsIENvbnN0cnVjdFR5cGUgZ2V0Q29u
c3RydWN0RGF0YShDb25zdHJ1Y3REYXRhJik7CisgICAgICAgIHZpcnR1YWwgQ29uc3RydWN0VHlw
ZSBnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChDb25zdHJ1Y3REYXRhJik7CiAgICAgICAgIHN0YXRp
YyBDb25zdHJ1Y3RUeXBlIGdldENvbnN0cnVjdERhdGEoSlNDZWxsKiwgQ29uc3RydWN0RGF0YSYp
OwogICAgICAgICBzdGF0aWMgQ2FsbFR5cGUgZ2V0Q2FsbERhdGEoSlNDZWxsKiwgQ2FsbERhdGEm
KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmF0aXZlRXJy
b3JDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OYXRpdmVF
cnJvckNvbnN0cnVjdG9yLmNwcAppbmRleCBlODEzZWQ0YmZjNTljNmRjZTJhY2YzMmVhNjNiMTQy
NzJlODQyYjQ3Li5iMzg1OGRhMzYzZmE5YmU3ZmE3MDU4NjA1ODUxNmQ5OTFiZjM4YmMxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVj
dG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OYXRpdmVFcnJvckNv
bnN0cnVjdG9yLmNwcApAQCAtNTYsNyArNTYsNyBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlND
X0hPU1RfQ0FMTCBjb25zdHJ1Y3RXaXRoTmF0aXZlRXJyb3JDb25zdHJ1Y3RvcihFeGVjU3RhdAog
ICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoRXJyb3JJbnN0YW5jZTo6Y3JlYXRlKGV4ZWMsIGVy
cm9yU3RydWN0dXJlLCBtZXNzYWdlKSk7CiB9CiAKLUNvbnN0cnVjdFR5cGUgTmF0aXZlRXJyb3JD
b25zdHJ1Y3Rvcjo6Z2V0Q29uc3RydWN0RGF0YShDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRh
KQorQ29uc3RydWN0VHlwZSBOYXRpdmVFcnJvckNvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRh
VmlydHVhbChDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQogewogICAgIHJldHVybiBnZXRD
b25zdHJ1Y3REYXRhKHRoaXMsIGNvbnN0cnVjdERhdGEpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmF0aXZlRXJyb3JDb25zdHJ1Y3Rvci5oIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmF0aXZlRXJyb3JDb25zdHJ1Y3Rvci5oCmluZGV4IGQ2
ZTU3M2YwYzk5MWE2YmI2MjVlYTczMjU5MWMyN2I1OGUwODI0NzIuLjZhODJiNTFkOGEyOTUwYTky
YWVmMTJlNjFmNTVjOGJmMTJiNjk0YWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL05hdGl2ZUVycm9yQ29uc3RydWN0b3IuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVjdG9yLmgKQEAgLTY4LDcgKzY4LDcgQEAg
bmFtZXNwYWNlIEpTQyB7CiAgICAgcHJpdmF0ZToKICAgICAgICAgTmF0aXZlRXJyb3JDb25zdHJ1
Y3RvcihKU0dsb2JhbE9iamVjdCosIFN0cnVjdHVyZSopOwogICAgICAgICBzdGF0aWMgY29uc3Qg
dW5zaWduZWQgU3RydWN0dXJlRmxhZ3MgPSBPdmVycmlkZXNWaXNpdENoaWxkcmVuIHwgSW50ZXJu
YWxGdW5jdGlvbjo6U3RydWN0dXJlRmxhZ3M7Ci0gICAgICAgIHZpcnR1YWwgQ29uc3RydWN0VHlw
ZSBnZXRDb25zdHJ1Y3REYXRhKENvbnN0cnVjdERhdGEmKTsKKyAgICAgICAgdmlydHVhbCBDb25z
dHJ1Y3RUeXBlIGdldENvbnN0cnVjdERhdGFWaXJ0dWFsKENvbnN0cnVjdERhdGEmKTsKICAgICAg
ICAgc3RhdGljIENvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YShKU0NlbGwqLCBDb25zdHJ1
Y3REYXRhJik7CiAgICAgICAgIHN0YXRpYyBDYWxsVHlwZSBnZXRDYWxsRGF0YShKU0NlbGwqLCBD
YWxsRGF0YSYpOwogICAgICAgICBzdGF0aWMgdm9pZCB2aXNpdENoaWxkcmVuKEpTQ2VsbCosIFNs
b3RWaXNpdG9yJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9O
dW1iZXJDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1i
ZXJDb25zdHJ1Y3Rvci5jcHAKaW5kZXggM2M2NWU5ZjA4ZmUzZGM0MTJhY2IwM2NhNTZiNGM1MGM3
MDE2YjQ4Ny4uMWM2ZTQ1MzNjZjEwNmM0YWU1ZmIwMWM1ZDEwZDZiYzExNThlYjAwNSAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyQ29uc3RydWN0b3IuY3Bw
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlckNvbnN0cnVjdG9yLmNw
cApAQCAtMTIwLDcgKzEyMCw3IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxM
IGNvbnN0cnVjdFdpdGhOdW1iZXJDb25zdHJ1Y3RvcihFeGVjU3RhdGUqIGV4CiAgICAgcmV0dXJu
IEpTVmFsdWU6OmVuY29kZShvYmplY3QpOwogfQogCi1Db25zdHJ1Y3RUeXBlIE51bWJlckNvbnN0
cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhKENvbnN0cnVjdERhdGEmIGNvbnN0cnVjdERhdGEpCitD
b25zdHJ1Y3RUeXBlIE51bWJlckNvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChD
b25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQogewogICAgIHJldHVybiBnZXRDb25zdHJ1Y3RE
YXRhKHRoaXMsIGNvbnN0cnVjdERhdGEpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvTnVtYmVyQ29uc3RydWN0b3IuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL051bWJlckNvbnN0cnVjdG9yLmgKaW5kZXggNzA1NmRkZjc1YmI5NzVlOWEwMzAy
ZWRmMzExMjdiZmU2YTNmYzE0My4uY2I4NjZmMDU2NDllNmFhZTY2NjJhMTdkMWM1OTc2NzI2Zjdk
MDE2ZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyQ29u
c3RydWN0b3IuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJDb25z
dHJ1Y3Rvci5oCkBAIC01OCw3ICs1OCw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiAgICAgcHJpdmF0
ZToKICAgICAgICAgTnVtYmVyQ29uc3RydWN0b3IoSlNHbG9iYWxPYmplY3QqLCBTdHJ1Y3R1cmUq
KTsKLSAgICAgICAgdmlydHVhbCBDb25zdHJ1Y3RUeXBlIGdldENvbnN0cnVjdERhdGEoQ29uc3Ry
dWN0RGF0YSYpOworICAgICAgICB2aXJ0dWFsIENvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0
YVZpcnR1YWwoQ29uc3RydWN0RGF0YSYpOwogICAgICAgICBzdGF0aWMgQ29uc3RydWN0VHlwZSBn
ZXRDb25zdHJ1Y3REYXRhKEpTQ2VsbCosIENvbnN0cnVjdERhdGEmKTsKICAgICAgICAgc3RhdGlj
IENhbGxUeXBlIGdldENhbGxEYXRhKEpTQ2VsbCosIENhbGxEYXRhJik7CiAgICAgfTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09iamVjdENvbnN0cnVjdG9yLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09iamVjdENvbnN0cnVjdG9yLmNwcApp
bmRleCA5MGVkZmE1MzdjOTJjZTUxNjA3OTk2YmM1YzgyYWE1NzVhMDE2NDAxLi4yYjA1OWI1OTYy
M2NhOWRhNzEyMTgzNWE1NzQ3YjY5YjMxNWZhZGQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9PYmplY3RDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3IuY3BwCkBAIC0xMTksNyArMTE5LDcg
QEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29uc3RydWN0V2l0aE9iamVj
dENvbnN0cnVjdG9yKEV4ZWNTdGF0ZSogZXgKICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGNv
bnN0cnVjdE9iamVjdChleGVjLCBhc0ludGVybmFsRnVuY3Rpb24oZXhlYy0+Y2FsbGVlKCkpLT5n
bG9iYWxPYmplY3QoKSwgYXJncykpOwogfQogCi1Db25zdHJ1Y3RUeXBlIE9iamVjdENvbnN0cnVj
dG9yOjpnZXRDb25zdHJ1Y3REYXRhKENvbnN0cnVjdERhdGEmIGNvbnN0cnVjdERhdGEpCitDb25z
dHJ1Y3RUeXBlIE9iamVjdENvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChDb25z
dHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQogewogICAgIHJldHVybiBnZXRDb25zdHJ1Y3REYXRh
KHRoaXMsIGNvbnN0cnVjdERhdGEpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3IuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL09iamVjdENvbnN0cnVjdG9yLmgKaW5kZXggMjIyMTU5ZjUzYTRmOGYxYjhkNjU4MmNj
NzBjYjBmYjBmN2ZlYzgzNy4uNWNkMjhhNjVhY2U1NzJhY2VhYjQwMDBjNDIxNWY2ZTZhYmZkZGZm
MiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0Q29uc3Ry
dWN0b3IuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PYmplY3RDb25zdHJ1
Y3Rvci5oCkBAIC01NSw3ICs1NSw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiAgICAgcHJpdmF0ZToK
ICAgICAgICAgT2JqZWN0Q29uc3RydWN0b3IoSlNHbG9iYWxPYmplY3QqLCBTdHJ1Y3R1cmUqKTsK
LSAgICAgICAgdmlydHVhbCBDb25zdHJ1Y3RUeXBlIGdldENvbnN0cnVjdERhdGEoQ29uc3RydWN0
RGF0YSYpOworICAgICAgICB2aXJ0dWFsIENvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YVZp
cnR1YWwoQ29uc3RydWN0RGF0YSYpOwogICAgICAgICBzdGF0aWMgQ29uc3RydWN0VHlwZSBnZXRD
b25zdHJ1Y3REYXRhKEpTQ2VsbCosIENvbnN0cnVjdERhdGEmKTsKICAgICAgICAgc3RhdGljIENh
bGxUeXBlIGdldENhbGxEYXRhKEpTQ2VsbCosIENhbGxEYXRhJik7CiAgICAgfTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmNwcAppbmRl
eCA0MGQ0OTE0NjQ0Yzk4NjNiYzI0NGMxZDRiMzFkY2JiYWRhMWVjNzAwLi5kM2U0NDhmZTZjMmFk
NWEwODA2YjJiY2EyMDMxYTFmMTc1Nzg0ZjcwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuY3BwCkBAIC0zNTQsNyArMzU0LDcgQEAg
c3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29uc3RydWN0V2l0aFJlZ0V4cENv
bnN0cnVjdG9yKEV4ZWNTdGF0ZSogZXgKICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGNvbnN0
cnVjdFJlZ0V4cChleGVjLCBhc0ludGVybmFsRnVuY3Rpb24oZXhlYy0+Y2FsbGVlKCkpLT5nbG9i
YWxPYmplY3QoKSwgYXJncywgdHJ1ZSkpOwogfQogCi1Db25zdHJ1Y3RUeXBlIFJlZ0V4cENvbnN0
cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhKENvbnN0cnVjdERhdGEmIGNvbnN0cnVjdERhdGEpCitD
b25zdHJ1Y3RUeXBlIFJlZ0V4cENvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChD
b25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQogewogICAgIHJldHVybiBnZXRDb25zdHJ1Y3RE
YXRhKHRoaXMsIGNvbnN0cnVjdERhdGEpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmgKaW5kZXggNWUxMzE3NjRkNDkyNWI3MGNiMzg2
Njc5Yzc3ZTZhNDAyYTM2MWM0Yy4uMjI1NmNiMDliMjZmODNiYmU2NDQ2YWQ2ZDEzOTJlYTg2ZTkz
NTYxZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29u
c3RydWN0b3IuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBDb25z
dHJ1Y3Rvci5oCkBAIC0xMDAsNyArMTAwLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKICAgICBwcml2
YXRlOgogICAgICAgICBSZWdFeHBDb25zdHJ1Y3RvcihKU0dsb2JhbE9iamVjdCosIFN0cnVjdHVy
ZSopOwotICAgICAgICB2aXJ0dWFsIENvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YShDb25z
dHJ1Y3REYXRhJik7CisgICAgICAgIHZpcnR1YWwgQ29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3RE
YXRhVmlydHVhbChDb25zdHJ1Y3REYXRhJik7CiAgICAgICAgIHN0YXRpYyBDb25zdHJ1Y3RUeXBl
IGdldENvbnN0cnVjdERhdGEoSlNDZWxsKiwgQ29uc3RydWN0RGF0YSYpOwogICAgICAgICBzdGF0
aWMgQ2FsbFR5cGUgZ2V0Q2FsbERhdGEoSlNDZWxsKiwgQ2FsbERhdGEmKTsKIApkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwCmluZGV4
IGYzOWRkN2E1YWEwMDc4YWM2ZmQyM2Q4MmU3ZWIwYmFkYmE3ZDc5OGIuLjVkZTM3NTFiYzkwNjQy
OTAyNjhkY2Y5YjhjNmU1YWQyY2E2Y2M1Y2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1N0cmluZ0NvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9TdHJpbmdDb25zdHJ1Y3Rvci5jcHAKQEAgLTEwMSw3ICsxMDEsNyBAQCBz
dGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zdHJ1Y3RXaXRoU3RyaW5nQ29u
c3RydWN0b3IoRXhlY1N0YXRlKiBleAogICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoU3RyaW5n
T2JqZWN0OjpjcmVhdGUoZXhlYywgZ2xvYmFsT2JqZWN0LT5zdHJpbmdPYmplY3RTdHJ1Y3R1cmUo
KSwgZXhlYy0+YXJndW1lbnQoMCkudG9TdHJpbmcoZXhlYykpKTsKIH0KIAotQ29uc3RydWN0VHlw
ZSBTdHJpbmdDb25zdHJ1Y3Rvcjo6Z2V0Q29uc3RydWN0RGF0YShDb25zdHJ1Y3REYXRhJiBjb25z
dHJ1Y3REYXRhKQorQ29uc3RydWN0VHlwZSBTdHJpbmdDb25zdHJ1Y3Rvcjo6Z2V0Q29uc3RydWN0
RGF0YVZpcnR1YWwoQ29uc3RydWN0RGF0YSYgY29uc3RydWN0RGF0YSkKIHsKICAgICByZXR1cm4g
Z2V0Q29uc3RydWN0RGF0YSh0aGlzLCBjb25zdHJ1Y3REYXRhKTsKIH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0NvbnN0cnVjdG9yLmggYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdDb25zdHJ1Y3Rvci5oCmluZGV4IGE3MTkxNDg0
ODM5MjlhNjhlZWMzODkyYjNiY2NmODVjNzJlZWYzMWIuLmZlYWIxODg5ODZmMzJkNGYwYWUzMDc2
ODRjZTQ1ZDk0YTFjOTVmODkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1N0cmluZ0NvbnN0cnVjdG9yLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvU3RyaW5nQ29uc3RydWN0b3IuaApAQCAtNTEsNyArNTEsNyBAQCBuYW1lc3BhY2UgSlNDIHsK
ICAgICBwcml2YXRlOgogICAgICAgICBTdHJpbmdDb25zdHJ1Y3RvcihKU0dsb2JhbE9iamVjdCos
IFN0cnVjdHVyZSopOwogICAgICAgICB2b2lkIGZpbmlzaENyZWF0aW9uKEV4ZWNTdGF0ZSosIFN0
cmluZ1Byb3RvdHlwZSopOwotICAgICAgICB2aXJ0dWFsIENvbnN0cnVjdFR5cGUgZ2V0Q29uc3Ry
dWN0RGF0YShDb25zdHJ1Y3REYXRhJik7CisgICAgICAgIHZpcnR1YWwgQ29uc3RydWN0VHlwZSBn
ZXRDb25zdHJ1Y3REYXRhVmlydHVhbChDb25zdHJ1Y3REYXRhJik7CiAgICAgICAgIHN0YXRpYyBD
b25zdHJ1Y3RUeXBlIGdldENvbnN0cnVjdERhdGEoSlNDZWxsKiwgQ29uc3RydWN0RGF0YSYpOwog
ICAgICAgICBzdGF0aWMgQ2FsbFR5cGUgZ2V0Q2FsbERhdGEoSlNDZWxsKiwgQ2FsbERhdGEmKTsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUv
Q2hhbmdlTG9nCmluZGV4IGJlZjg4NmIyMDc2ODljMDA3ODRkZThlYjJmN2VlMWFiMDQ3NGFkNGUu
LjI4ZDQ1NjQwYjkwOWE1MzBmOWZkNTJiNmYxNjRkZjY4MTE4MWQ1MDIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwzNiBAQAorMjAxMS0xMC0xMiAgTWFyayBIYWhuZW5iZXJnICA8bWhhaG5lbmJlcmdA
YXBwbGUuY29tPgorCisgICAgICAgIFJlbmFtZSB2aXJ0dWFsIGdldENvbnN0cnVjdERhdGEgdG8g
Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTY5ODcyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLgorCisgICAgICAgIFJlbmFtZWQgdmlydHVhbCBn
ZXRDb25zdHJ1Y3REYXRhIGZ1bmN0aW9ucyB0byBnZXRDb25zdHJ1Y3REYXRhVmlydHVhbCB0byAK
KyAgICAgICAgYXZvaWQgY29uZmxpY3RzIHdoZW4gd2UgYWRkIHN0YXRpYyBnZXRDb25zdHJ1Y3RE
YXRhIHRvIHRoZSBNZXRob2RUYWJsZS4KKworICAgICAgICAqIFdlYkNvcmUuZXhwLmluOgorICAg
ICAgICAqIGJpbmRpbmdzL2pzL0pTQXVkaW9Db25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpKU0F1ZGlvQ29uc3RydWN0b3I6OmdldENvbnN0cnVjdERhdGFWaXJ0dWFsKToKKyAgICAg
ICAgKiBiaW5kaW5ncy9qcy9KU0F1ZGlvQ29uc3RydWN0b3IuaDoKKyAgICAgICAgKiBiaW5kaW5n
cy9qcy9KU0ltYWdlQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SlNJbWFnZUNv
bnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbCk6CisgICAgICAgICogYmluZGluZ3Mv
anMvSlNJbWFnZUNvbnN0cnVjdG9yLmg6CisgICAgICAgICogYmluZGluZ3MvanMvSlNPcHRpb25D
b25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpKU09wdGlvbkNvbnN0cnVjdG9yOjpn
ZXRDb25zdHJ1Y3REYXRhVmlydHVhbCk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNPcHRpb25D
b25zdHJ1Y3Rvci5oOgorICAgICAgICAqIGJpbmRpbmdzL2pzL1NjcmlwdEZ1bmN0aW9uQ2FsbC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JpcHRGdW5jdGlvbkNhbGw6OmNvbnN0cnVjdCk6Cisg
ICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06CisgICAgICAgIChH
ZW5lcmF0ZUNvbnN0cnVjdG9yRGVjbGFyYXRpb24pOgorICAgICAgICAoR2VuZXJhdGVDb25zdHJ1
Y3RvckRlZmluaXRpb24pOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RJbnRlcmZhY2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SlNUZXN0SW50ZXJmYWNlQ29uc3Ry
dWN0b3I6OmdldENvbnN0cnVjdERhdGFWaXJ0dWFsKToKKyAgICAgICAgKiBicmlkZ2UvcnVudGlt
ZV9vYmplY3QuY3BwOgorICAgICAgICAoSlNDOjpCaW5kaW5nczo6UnVudGltZU9iamVjdDo6Z2V0
Q29uc3RydWN0RGF0YVZpcnR1YWwpOgorICAgICAgICAqIGJyaWRnZS9ydW50aW1lX29iamVjdC5o
OgorCiAyMDExLTEwLTEyICBKaWFuIExpICA8amlhbmxpQGNocm9taXVtLm9yZz4KIAogICAgICAg
ICBTdXBwb3J0IHBhc3Npbmcgb3B0aW9uYWwgZmlsZW5hbWUgd2hlbiBGb3JtRGF0YS5hcHBlbmQo
KSBpcyB1c2VkIHRvCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbiBi
L1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCmluZGV4IDIwM2M3YTYyMzJjY2M4OTVkNDdh
MjMyZjAyZmMxNmFmNmVlNGU1NDIuLjk2NDJlYWY0YzJlNmM5NDBkZGM2NDMxNzdlNTgzM2IzZDlm
ODgxN2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCkBAIC0xNjkwLDkgKzE2OTAsOSBAQCBfX1pOM0pT
QzhCaW5kaW5nczEwUm9vdE9iamVjdEQxRXYKIF9fWk4zSlNDOEJpbmRpbmdzMTNSdW50aW1lT2Jq
ZWN0MTFnZXRDYWxsRGF0YUVQTlNfNkpTQ2VsbEVSTlNfOENhbGxEYXRhRQogX19aTjNKU0M4Qmlu
ZGluZ3MxM1J1bnRpbWVPYmplY3QxNGRlbGV0ZVByb3BlcnR5RVBOU185RXhlY1N0YXRlRVJLTlNf
MTBJZGVudGlmaWVyRQogX19aTjNKU0M4QmluZGluZ3MxM1J1bnRpbWVPYmplY3QxNGZpbmlzaENy
ZWF0aW9uRVBOU18xNEpTR2xvYmFsT2JqZWN0RQotX19aTjNKU0M4QmluZGluZ3MxM1J1bnRpbWVP
YmplY3QxNmdldENvbnN0cnVjdERhdGFFUk5TXzEzQ29uc3RydWN0RGF0YUUKIF9fWk4zSlNDOEJp
bmRpbmdzMTNSdW50aW1lT2JqZWN0MThnZXRPd25Qcm9wZXJ0eVNsb3RFUE5TXzlFeGVjU3RhdGVF
UktOU18xMElkZW50aWZpZXJFUk5TXzEyUHJvcGVydHlTbG90RQogX19aTjNKU0M4QmluZGluZ3Mx
M1J1bnRpbWVPYmplY3QxOWdldE93blByb3BlcnR5TmFtZXNFUE5TXzlFeGVjU3RhdGVFUk5TXzE3
UHJvcGVydHlOYW1lQXJyYXlFTlNfMTVFbnVtZXJhdGlvbk1vZGVFCitfX1pOM0pTQzhCaW5kaW5n
czEzUnVudGltZU9iamVjdDIzZ2V0Q29uc3RydWN0RGF0YVZpcnR1YWxFUk5TXzEzQ29uc3RydWN0
RGF0YUUKIF9fWk4zSlNDOEJpbmRpbmdzMTNSdW50aW1lT2JqZWN0MjRnZXRPd25Qcm9wZXJ0eURl
c2NyaXB0b3JFUE5TXzlFeGVjU3RhdGVFUktOU18xMElkZW50aWZpZXJFUk5TXzE4UHJvcGVydHlE
ZXNjcmlwdG9yRQogX19aTjNKU0M4QmluZGluZ3MxM1J1bnRpbWVPYmplY3QzcHV0RVBOU185RXhl
Y1N0YXRlRVJLTlNfMTBJZGVudGlmaWVyRU5TXzdKU1ZhbHVlRVJOU18xNVB1dFByb3BlcnR5U2xv
dEUKIF9fWk4zSlNDOEJpbmRpbmdzMTNSdW50aW1lT2JqZWN0NnNfaW5mb0UKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQXVkaW9Db25zdHJ1Y3Rvci5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0F1ZGlvQ29uc3RydWN0b3IuY3BwCmluZGV4IDNhY2Mw
YmJlMTIyNzNmMTRmOWFiYzYwYTRjZDU2NWIxMDFkZTI3NzAuLjc1NjAzOWY3MzYzZDg3YjQ1YTVm
YmQ5NzBlNjZlOWY5ZjIwMWIwNDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTQXVkaW9Db25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNBdWRpb0NvbnN0cnVjdG9yLmNwcApAQCAtNzUsNyArNzUsNyBAQCBzdGF0aWMgRW5jb2Rl
ZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zdHJ1Y3RBdWRpbyhFeGVjU3RhdGUqIGV4ZWMpCiAg
ICAgICAgIEhUTUxBdWRpb0VsZW1lbnQ6OmNyZWF0ZUZvckpTQ29uc3RydWN0b3IoZG9jdW1lbnQs
IHNyYykpKSk7CiB9CiAKLUNvbnN0cnVjdFR5cGUgSlNBdWRpb0NvbnN0cnVjdG9yOjpnZXRDb25z
dHJ1Y3REYXRhKENvbnN0cnVjdERhdGEmIGNvbnN0cnVjdERhdGEpCitDb25zdHJ1Y3RUeXBlIEpT
QXVkaW9Db25zdHJ1Y3Rvcjo6Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoQ29uc3RydWN0RGF0YSYg
Y29uc3RydWN0RGF0YSkKIHsKICAgICByZXR1cm4gZ2V0Q29uc3RydWN0RGF0YSh0aGlzLCBjb25z
dHJ1Y3REYXRhKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pT
QXVkaW9Db25zdHJ1Y3Rvci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNBdWRpb0Nv
bnN0cnVjdG9yLmgKaW5kZXggM2JlNDVlMzE5YTE1MmM2ZmYxNmQyMGU0MzkzNGQ1NTEzMmQyZGQ0
Ny4uMDdlYzNkNTYxYmUzMTgyYTQwYjU3MzBhODlkYjBiNmUxOTNlOTUwZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNBdWRpb0NvbnN0cnVjdG9yLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNBdWRpb0NvbnN0cnVjdG9yLmgKQEAgLTU1LDcgKzU1
LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIHByaXZhdGU6CiAgICAgICAgIEpTQXVkaW9D
b25zdHJ1Y3RvcihKU0M6OlN0cnVjdHVyZSosIEpTRE9NR2xvYmFsT2JqZWN0Kik7CiAgICAgICAg
IHZvaWQgZmluaXNoQ3JlYXRpb24oSlNDOjpFeGVjU3RhdGUqLCBKU0RPTUdsb2JhbE9iamVjdCop
OwotICAgICAgICB2aXJ0dWFsIEpTQzo6Q29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKEpT
Qzo6Q29uc3RydWN0RGF0YSYpOworICAgICAgICB2aXJ0dWFsIEpTQzo6Q29uc3RydWN0VHlwZSBn
ZXRDb25zdHJ1Y3REYXRhVmlydHVhbChKU0M6OkNvbnN0cnVjdERhdGEmKTsKICAgICAgICAgc3Rh
dGljIEpTQzo6Q29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKEpTQzo6SlNDZWxsKiwgSlND
OjpDb25zdHJ1Y3REYXRhJik7CiAgICAgfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNJbWFnZUNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTSW1hZ2VDb25zdHJ1Y3Rvci5jcHAKaW5kZXggMTkxNDc4NjJjNGNkNDNhNzQwNjVj
YTE2NTMzNjZkYzY5ZjkyZDRmMS4uYTg3NTAyYTNjMTFiOTBjYmUxMTNmMDExZmU4ZDNkOThlMmEw
ZmRjNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNJbWFnZUNvbnN0
cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0ltYWdlQ29uc3Ry
dWN0b3IuY3BwCkBAIC03NCw3ICs3NCw3IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9T
VF9DQUxMIGNvbnN0cnVjdEltYWdlKEV4ZWNTdGF0ZSogZXhlYykKICAgICAgICAgSFRNTEltYWdl
RWxlbWVudDo6Y3JlYXRlRm9ySlNDb25zdHJ1Y3Rvcihkb2N1bWVudCwgb3B0aW9uYWxXaWR0aCwg
b3B0aW9uYWxIZWlnaHQpKSkpOwogfQogCi1Db25zdHJ1Y3RUeXBlIEpTSW1hZ2VDb25zdHJ1Y3Rv
cjo6Z2V0Q29uc3RydWN0RGF0YShDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQorQ29uc3Ry
dWN0VHlwZSBKU0ltYWdlQ29uc3RydWN0b3I6OmdldENvbnN0cnVjdERhdGFWaXJ0dWFsKENvbnN0
cnVjdERhdGEmIGNvbnN0cnVjdERhdGEpCiB7CiAgICAgcmV0dXJuIGdldENvbnN0cnVjdERhdGEo
dGhpcywgY29uc3RydWN0RGF0YSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU0ltYWdlQ29uc3RydWN0b3IuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTSW1hZ2VDb25zdHJ1Y3Rvci5oCmluZGV4IGFiM2ZkMzE3ZjU4YzUwOWU3YWE1ODljOTk4OWU2
YTY4YjYwMzc5MTguLjM5NWI2MTZkOTFjMDdkMmUwYjBkMjVjYTg3MDZiNGNkNGZhODJjNTIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTSW1hZ2VDb25zdHJ1Y3Rvci5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTSW1hZ2VDb25zdHJ1Y3Rvci5oCkBA
IC00Niw3ICs0Niw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICBwcml2YXRlOgogICAgICAg
ICBKU0ltYWdlQ29uc3RydWN0b3IoSlNDOjpTdHJ1Y3R1cmUqLCBKU0RPTUdsb2JhbE9iamVjdCop
OwogICAgICAgICB2b2lkIGZpbmlzaENyZWF0aW9uKEpTQzo6RXhlY1N0YXRlKiwgSlNET01HbG9i
YWxPYmplY3QqKTsKLSAgICAgICAgdmlydHVhbCBKU0M6OkNvbnN0cnVjdFR5cGUgZ2V0Q29uc3Ry
dWN0RGF0YShKU0M6OkNvbnN0cnVjdERhdGEmKTsKKyAgICAgICAgdmlydHVhbCBKU0M6OkNvbnN0
cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoSlNDOjpDb25zdHJ1Y3REYXRhJik7CiAg
ICAgICAgIHN0YXRpYyBKU0M6OkNvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YShKU0M6OkpT
Q2VsbCosIEpTQzo6Q29uc3RydWN0RGF0YSYpOwogICAgIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTT3B0aW9uQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNPcHRpb25Db25zdHJ1Y3Rvci5jcHAKaW5kZXggMDIyYTNjZGYx
ZjMyYTgxNzc1NDJkNTVhMzk3NTAyM2ZjYzE5YmVhZC4uOTgwZjlhNjNkN2ZmMzEzN2Y4OGI3ZTcw
MDMzOTM5MWIzY2MzYzY5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNPcHRpb25Db25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNPcHRpb25Db25zdHJ1Y3Rvci5jcHAKQEAgLTc1LDcgKzc1LDcgQEAgc3RhdGljIEVuY29kZWRK
U1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29uc3RydWN0SFRNTE9wdGlvbkVsZW1lbnQoRXhlY1N0YXRl
KiBleGVjKQogICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoYXNPYmplY3QodG9KUyhleGVjLCBq
c0NvbnN0cnVjdG9yLT5nbG9iYWxPYmplY3QoKSwgZWxlbWVudC5yZWxlYXNlKCkpKSk7CiB9CiAK
LUNvbnN0cnVjdFR5cGUgSlNPcHRpb25Db25zdHJ1Y3Rvcjo6Z2V0Q29uc3RydWN0RGF0YShDb25z
dHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQorQ29uc3RydWN0VHlwZSBKU09wdGlvbkNvbnN0cnVj
dG9yOjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRh
KQogewogICAgIHJldHVybiBnZXRDb25zdHJ1Y3REYXRhKHRoaXMsIGNvbnN0cnVjdERhdGEpOwog
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNPcHRpb25Db25zdHJ1
Y3Rvci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNPcHRpb25Db25zdHJ1Y3Rvci5o
CmluZGV4IDAxYjhlY2JmNGFmYjVkYjBkZGQ4OThmZjE4ZmFiNGZiYzNiZTYwMDcuLmY5NjFhODhh
NWM1N2I2M2FhMTUyOTJlOWQ4YzA1OTRjN2VjYzI3ODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0pTT3B0aW9uQ29uc3RydWN0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU09wdGlvbkNvbnN0cnVjdG9yLmgKQEAgLTQ3LDcgKzQ3LDcgQEAgbmFt
ZXNwYWNlIFdlYkNvcmUgewogICAgIHByaXZhdGU6CiAgICAgICAgIEpTT3B0aW9uQ29uc3RydWN0
b3IoSlNDOjpTdHJ1Y3R1cmUqLCBKU0RPTUdsb2JhbE9iamVjdCopOwogICAgICAgICB2b2lkIGZp
bmlzaENyZWF0aW9uKEpTQzo6RXhlY1N0YXRlKiwgSlNET01HbG9iYWxPYmplY3QqKTsKLSAgICAg
ICAgdmlydHVhbCBKU0M6OkNvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YShKU0M6OkNvbnN0
cnVjdERhdGEmKTsKKyAgICAgICAgdmlydHVhbCBKU0M6OkNvbnN0cnVjdFR5cGUgZ2V0Q29uc3Ry
dWN0RGF0YVZpcnR1YWwoSlNDOjpDb25zdHJ1Y3REYXRhJik7CiAgICAgICAgIHN0YXRpYyBKU0M6
OkNvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YShKU0M6OkpTQ2VsbCosIEpTQzo6Q29uc3Ry
dWN0RGF0YSYpOwogICAgIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL1NjcmlwdEZ1bmN0aW9uQ2FsbC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9T
Y3JpcHRGdW5jdGlvbkNhbGwuY3BwCmluZGV4IDUxOGE3ODdmZDllNThjMjE5OWExZTcxMmU3ZmYx
MjljMjQ5ZTc3MjQuLjE5MDk5YTk3NjhlNjY5NzQxZGEyOGJkNGRkMTRmMTdmMzM4ZDk1YTYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdEZ1bmN0aW9uQ2FsbC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0RnVuY3Rpb25DYWxsLmNw
cApAQCAtMTc1LDcgKzE3NSw3IEBAIFNjcmlwdE9iamVjdCBTY3JpcHRGdW5jdGlvbkNhbGw6OmNv
bnN0cnVjdChib29sJiBoYWRFeGNlcHRpb24sIGJvb2wgcmVwb3J0RXhjZXB0CiAgICAgfQogCiAg
ICAgQ29uc3RydWN0RGF0YSBjb25zdHJ1Y3REYXRhOwotICAgIENvbnN0cnVjdFR5cGUgY29uc3Ry
dWN0VHlwZSA9IGNvbnN0cnVjdG9yLT5nZXRDb25zdHJ1Y3REYXRhKGNvbnN0cnVjdERhdGEpOwor
ICAgIENvbnN0cnVjdFR5cGUgY29uc3RydWN0VHlwZSA9IGNvbnN0cnVjdG9yLT5nZXRDb25zdHJ1
Y3REYXRhVmlydHVhbChjb25zdHJ1Y3REYXRhKTsKICAgICBpZiAoY29uc3RydWN0VHlwZSA9PSBD
b25zdHJ1Y3RUeXBlTm9uZSkKICAgICAgICAgcmV0dXJuIFNjcmlwdE9iamVjdCgpOwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5w
bSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCmlu
ZGV4IDJkODEzNDcwYzdjYTE3MzkyZGVmYjIxMWQ2MjUyMTgyZDk2ZjBhMWEuLmE0YTE4NWRhMTA4
MWM3OWQ1Y2I4MjNiMDM4NzI0MTAyODFjYjQ4MWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCkBAIC0zMTcwLDcgKzMxNzAsNyBA
QCBzdWIgR2VuZXJhdGVDb25zdHJ1Y3RvckRlY2xhcmF0aW9uCiAKICAgICBpZiAoJGNhbkNvbnN0
cnVjdCkgewogICAgICAgICBwdXNoKEAkb3V0cHV0QXJyYXksICIgICAgc3RhdGljIEpTQzo6RW5j
b2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zdHJ1Y3Qke2NsYXNzTmFtZX0oSlNDOjpFeGVj
U3RhdGUqKTtcbiIpOwotICAgICAgICBwdXNoKEAkb3V0cHV0QXJyYXksICIgICAgdmlydHVhbCBK
U0M6OkNvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YShKU0M6OkNvbnN0cnVjdERhdGEmKTtc
biIpOworICAgICAgICBwdXNoKEAkb3V0cHV0QXJyYXksICIgICAgdmlydHVhbCBKU0M6OkNvbnN0
cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoSlNDOjpDb25zdHJ1Y3REYXRhJik7XG4i
KTsKICAgICAgICAgcHVzaChAJG91dHB1dEFycmF5LCAiICAgIHN0YXRpYyBKU0M6OkNvbnN0cnVj
dFR5cGUgZ2V0Q29uc3RydWN0RGF0YShKU0M6OkpTQ2VsbCosIEpTQzo6Q29uc3RydWN0RGF0YSYp
O1xuIik7CiAgICAgfQogICAgIHB1c2goQCRvdXRwdXRBcnJheSwgIn07XG5cbiIpOwpAQCAtMzIz
Niw3ICszMjM2LDcgQEAgc3ViIEdlbmVyYXRlQ29uc3RydWN0b3JEZWZpbml0aW9uCiAgICAgICAg
ICAgICBwdXNoKEAkb3V0cHV0QXJyYXksICJ9XG5cbiIpOwogICAgICAgICB9CiAKLSAgICAgICAg
cHVzaChAJG91dHB1dEFycmF5LCAiQ29uc3RydWN0VHlwZSAke2NvbnN0cnVjdG9yQ2xhc3NOYW1l
fTo6Z2V0Q29uc3RydWN0RGF0YShDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKVxuIik7Cisg
ICAgICAgIHB1c2goQCRvdXRwdXRBcnJheSwgIkNvbnN0cnVjdFR5cGUgJHtjb25zdHJ1Y3RvckNs
YXNzTmFtZX06OmdldENvbnN0cnVjdERhdGFWaXJ0dWFsKENvbnN0cnVjdERhdGEmIGNvbnN0cnVj
dERhdGEpXG4iKTsKICAgICAgICAgcHVzaChAJG91dHB1dEFycmF5LCAie1xuIik7CiAgICAgICAg
IHB1c2goQCRvdXRwdXRBcnJheSwgIiAgICByZXR1cm4gZ2V0Q29uc3RydWN0RGF0YSh0aGlzLCBj
b25zdHJ1Y3REYXRhKTtcbiIpOwogICAgICAgICBwdXNoKEAkb3V0cHV0QXJyYXksICJ9XG5cbiIp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdEludGVyZmFjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0SW50ZXJmYWNlLmNwcAppbmRleCBkYTk5MTFlYzVkMmJlODE2ZjAyYTE0YzgzYzA4
ZTJkZTIyZjAwMjhjLi5iYmU2MDZiZGMwYjA5MzA2MDZkNTNkZTk3OWE1MzU0YWY4NTRmMDFjIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
SW50ZXJmYWNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0SW50ZXJmYWNlLmNwcApAQCAtOTYsNyArOTYsNyBAQCBwdWJsaWM6CiBwcm90ZWN0
ZWQ6CiAgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIFN0cnVjdHVyZUZsYWdzID0gSlNDOjpPdmVy
cmlkZXNHZXRPd25Qcm9wZXJ0eVNsb3QgfCBKU0M6OkltcGxlbWVudHNIYXNJbnN0YW5jZSB8IERP
TUNvbnN0cnVjdG9yT2JqZWN0OjpTdHJ1Y3R1cmVGbGFnczsKICAgICBzdGF0aWMgSlNDOjpFbmNv
ZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdEpTVGVzdEludGVyZmFjZShKU0M6OkV4
ZWNTdGF0ZSopOwotICAgIHZpcnR1YWwgSlNDOjpDb25zdHJ1Y3RUeXBlIGdldENvbnN0cnVjdERh
dGEoSlNDOjpDb25zdHJ1Y3REYXRhJik7CisgICAgdmlydHVhbCBKU0M6OkNvbnN0cnVjdFR5cGUg
Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoSlNDOjpDb25zdHJ1Y3REYXRhJik7CiAgICAgc3RhdGlj
IEpTQzo6Q29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKEpTQzo6SlNDZWxsKiwgSlNDOjpD
b25zdHJ1Y3REYXRhJik7CiB9OwogCkBAIC0xMzIsNyArMTMyLDcgQEAgRW5jb2RlZEpTVmFsdWUg
SlNDX0hPU1RfQ0FMTCBKU1Rlc3RJbnRlcmZhY2VDb25zdHJ1Y3Rvcjo6Y29uc3RydWN0SlNUZXN0
SW50ZXJmYWMKICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGFzT2JqZWN0KHRvSlMoZXhlYywg
c3RhdGljX2Nhc3Q8SlNUZXN0SW50ZXJmYWNlQ29uc3RydWN0b3IqPihleGVjLT5jYWxsZWUoKSkt
Pmdsb2JhbE9iamVjdCgpLCBUZXN0SW50ZXJmYWNlOjpjcmVhdGUoY29udGV4dCkpKSk7CiB9CiAK
LUNvbnN0cnVjdFR5cGUgSlNUZXN0SW50ZXJmYWNlQ29uc3RydWN0b3I6OmdldENvbnN0cnVjdERh
dGEoQ29uc3RydWN0RGF0YSYgY29uc3RydWN0RGF0YSkKK0NvbnN0cnVjdFR5cGUgSlNUZXN0SW50
ZXJmYWNlQ29uc3RydWN0b3I6OmdldENvbnN0cnVjdERhdGFWaXJ0dWFsKENvbnN0cnVjdERhdGEm
IGNvbnN0cnVjdERhdGEpCiB7CiAgICAgcmV0dXJuIGdldENvbnN0cnVjdERhdGEodGhpcywgY29u
c3RydWN0RGF0YSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGlt
ZV9vYmplY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfb2JqZWN0LmNwcApp
bmRleCAxMzM4Y2Y4NjVjZTRjZjRhYmRlMDZhOTRkYTQyZjc2NDEyNDQ3MTZmLi5mN2YzMDY4Yjk1
MjIwNWEyYTAwNzBlNzg3YzBiZWJjMjI2NTE2Y2JiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9icmlkZ2UvcnVudGltZV9vYmplY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9y
dW50aW1lX29iamVjdC5jcHAKQEAgLTMwNCw3ICszMDQsNyBAQCBzdGF0aWMgRW5jb2RlZEpTVmFs
dWUgSlNDX0hPU1RfQ0FMTCBjYWxsUnVudGltZUNvbnN0cnVjdG9yKEV4ZWNTdGF0ZSogZXhlYykK
ICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHJlc3VsdC5pc09iamVjdCgpID8gc3RhdGljX2Nh
c3Q8SlNPYmplY3QqPihyZXN1bHQuYXNDZWxsKCkpIDogY29uc3RydWN0b3IpOwogfQogCi1Db25z
dHJ1Y3RUeXBlIFJ1bnRpbWVPYmplY3Q6OmdldENvbnN0cnVjdERhdGEoQ29uc3RydWN0RGF0YSYg
Y29uc3RydWN0RGF0YSkKK0NvbnN0cnVjdFR5cGUgUnVudGltZU9iamVjdDo6Z2V0Q29uc3RydWN0
RGF0YVZpcnR1YWwoQ29uc3RydWN0RGF0YSYgY29uc3RydWN0RGF0YSkKIHsKICAgICByZXR1cm4g
Z2V0Q29uc3RydWN0RGF0YSh0aGlzLCBjb25zdHJ1Y3REYXRhKTsKIH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX29iamVjdC5oIGIvU291cmNlL1dlYkNvcmUvYnJp
ZGdlL3J1bnRpbWVfb2JqZWN0LmgKaW5kZXggMDY2ZDc3MzdlMzI0NjRlNTg2MjExODVlNjRhNTcz
M2RiMWVlZGVmYy4uMGM2YTkxNWRhODJkNTk4Nzc3NjVlMmRiMjg2NjRlYjBlYWNlYTMwYSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfb2JqZWN0LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfb2JqZWN0LmgKQEAgLTU0LDcgKzU0LDcgQEAgcHVi
bGljOgogICAgIHN0YXRpYyBib29sIGRlbGV0ZVByb3BlcnR5KEpTQ2VsbCosIEV4ZWNTdGF0ZSos
IGNvbnN0IElkZW50aWZpZXImIHByb3BlcnR5TmFtZSk7CiAgICAgdmlydHVhbCBKU1ZhbHVlIGRl
ZmF1bHRWYWx1ZShFeGVjU3RhdGUqLCBQcmVmZXJyZWRQcmltaXRpdmVUeXBlKSBjb25zdDsKICAg
ICBzdGF0aWMgQ2FsbFR5cGUgZ2V0Q2FsbERhdGEoSlNDZWxsKiwgQ2FsbERhdGEmKTsKLSAgICB2
aXJ0dWFsIENvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YShDb25zdHJ1Y3REYXRhJik7Cisg
ICAgdmlydHVhbCBDb25zdHJ1Y3RUeXBlIGdldENvbnN0cnVjdERhdGFWaXJ0dWFsKENvbnN0cnVj
dERhdGEmKTsKICAgICBzdGF0aWMgQ29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKEpTQ2Vs
bCosIENvbnN0cnVjdERhdGEmKTsKIAogICAgIHZpcnR1YWwgdm9pZCBnZXRPd25Qcm9wZXJ0eU5h
bWVzKEV4ZWNTdGF0ZSosIFByb3BlcnR5TmFtZUFycmF5JiwgRW51bWVyYXRpb25Nb2RlIG1vZGUg
PSBFeGNsdWRlRG9udEVudW1Qcm9wZXJ0aWVzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
bWFjL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwppbmRleCA0ODgxYWI3
ODcyYmU2ZWE1NzQ5YzcyMWQ2YjY0MzhiMjYzMzY2ZDVjLi4yOTE4YTE5NTdmZGExNzY5NmMyNWMw
M2FjNTdiNzk2MzdhZTM0NTUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VM
b2cKKysrIGIvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIw
MTEtMTAtMTIgIE1hcmsgSGFobmVuYmVyZyAgPG1oYWhuZW5iZXJnQGFwcGxlLmNvbT4KKworICAg
ICAgICBSZW5hbWUgdmlydHVhbCBnZXRDb25zdHJ1Y3REYXRhIHRvIGdldENvbnN0cnVjdERhdGFW
aXJ0dWFsCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02
OTg3MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJl
bmFtZWQgdmlydHVhbCBnZXRDb25zdHJ1Y3REYXRhIGZ1bmN0aW9ucyB0byBnZXRDb25zdHJ1Y3RE
YXRhVmlydHVhbCB0byAKKyAgICAgICAgYXZvaWQgY29uZmxpY3RzIHdoZW4gd2UgYWRkIHN0YXRp
YyBnZXRDb25zdHJ1Y3REYXRhIHRvIHRoZSBNZXRob2RUYWJsZS4KKworICAgICAgICAqIFBsdWdp
bnMvSG9zdGVkL05ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eS5tbToKKyAgICAgICAgKFdlYktp
dDo6TmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5Ojpjb25zdHJ1Y3QpOgorCiAyMDExLTEwLTEw
ICBOYXRlIENoYXBpbiAgPGphcGhldEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVXNlIGEgQ2Fj
aGVkSW1hZ2VDbGllbnQgaW5zdGVhZCBvZiBDYWNoZWRSZXNvdXJjZUNsaWVudApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9tYWMvUGx1Z2lucy9Ib3N0ZWQvTmV0c2NhcGVQbHVnaW5JbnN0YW5j
ZVByb3h5Lm1tIGIvU291cmNlL1dlYktpdC9tYWMvUGx1Z2lucy9Ib3N0ZWQvTmV0c2NhcGVQbHVn
aW5JbnN0YW5jZVByb3h5Lm1tCmluZGV4IDY2MjcyMDM3MTg5N2RjOTQ4NmU1NDcwMGY2ZmQwNjE4
NTlhN2I2MjcuLjVjNTBmOGQxOTJlMzkwMjc4MmIwNTZjNTQzM2FhNjRjZTBmNTUxNTMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1BsdWdpbnMvSG9zdGVkL05ldHNjYXBlUGx1Z2luSW5z
dGFuY2VQcm94eS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9QbHVnaW5zL0hvc3RlZC9OZXRz
Y2FwZVBsdWdpbkluc3RhbmNlUHJveHkubW0KQEAgLTk3OCw3ICs5NzgsNyBAQCBib29sIE5ldHNj
YXBlUGx1Z2luSW5zdGFuY2VQcm94eTo6Y29uc3RydWN0KHVpbnQzMl90IG9iamVjdElELCBkYXRh
X3QgYXJndW1lbnRzRAogICAgIEpTTG9jayBsb2NrKFNpbGVuY2VBc3NlcnRpb25zT25seSk7CiAK
ICAgICBDb25zdHJ1Y3REYXRhIGNvbnN0cnVjdERhdGE7Ci0gICAgQ29uc3RydWN0VHlwZSBjb25z
dHJ1Y3RUeXBlID0gb2JqZWN0LT5nZXRDb25zdHJ1Y3REYXRhKGNvbnN0cnVjdERhdGEpOworICAg
IENvbnN0cnVjdFR5cGUgY29uc3RydWN0VHlwZSA9IG9iamVjdC0+Z2V0Q29uc3RydWN0RGF0YVZp
cnR1YWwoY29uc3RydWN0RGF0YSk7CiAgICAgaWYgKGNvbnN0cnVjdFR5cGUgPT0gQ29uc3RydWN0
VHlwZU5vbmUpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCmluZGV4IDJiNTg4YTcw
ZTkyMTAyZjQzNmMwYjMyYTljOGRiZjY5N2QyNTNkMTkuLmM5MTFhMTZkY2MwYTllYWZmZjMxNjkz
NWQ3OTY3MDkzNWY4MGZhMDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAxMS0xMC0x
MiAgTWFyayBIYWhuZW5iZXJnICA8bWhhaG5lbmJlcmdAYXBwbGUuY29tPgorCisgICAgICAgIFJl
bmFtZSB2aXJ0dWFsIGdldENvbnN0cnVjdERhdGEgdG8gZ2V0Q29uc3RydWN0RGF0YVZpcnR1YWwK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY5ODcyCisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUmVuYW1lZCB2
aXJ0dWFsIGdldENvbnN0cnVjdERhdGEgZnVuY3Rpb25zIHRvIGdldENvbnN0cnVjdERhdGFWaXJ0
dWFsIHRvIAorICAgICAgICBhdm9pZCBjb25mbGljdHMgd2hlbiB3ZSBhZGQgc3RhdGljIGdldENv
bnN0cnVjdERhdGEgdG8gdGhlIE1ldGhvZFRhYmxlLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9Q
bHVnaW5zL05ldHNjYXBlL0pTTlBPYmplY3QuY3BwOgorICAgICAgICAoV2ViS2l0OjpKU05QT2Jq
ZWN0OjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbCk6CisgICAgICAgICogV2ViUHJvY2Vzcy9QbHVn
aW5zL05ldHNjYXBlL0pTTlBPYmplY3QuaDoKKwogMjAxMS0xMC0xMiAgSmVzdXMgU2FuY2hlei1Q
YWxlbmNpYSAgPGplc3VzLnBhbGVuY2lhQG9wZW5ib3NzYS5vcmc+CiAKICAgICAgICAgW1F0XVtX
SzJdIE1vdmUgcXdlYmVycm9yKiBvdXQgb2YgQVBJL3F0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvTmV0c2NhcGUvSlNOUE9iamVjdC5jcHAgYi9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvTmV0c2NhcGUvSlNOUE9iamVjdC5jcHAKaW5kZXgg
NTNmNTg2MDFjMGE5NjY4MWM4NTQxOGJjZDM0ZGNhYjQyZTAwYTFmNC4uZWM1ZWUyYmVmOTk2ZTBj
YWVjZWY5NTA2ZGM2YWMzMmMwZDBmMTgxYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9QbHVnaW5zL05ldHNjYXBlL0pTTlBPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9OZXRzY2FwZS9KU05QT2JqZWN0LmNwcApAQCAtMjM2LDcg
KzIzNiw3IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdFdp
dGhDb25zdHJ1Y3RvcihFeGVjU3RhdGUqIGV4ZWMpCiAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29k
ZShzdGF0aWNfY2FzdDxKU05QT2JqZWN0Kj4oY29uc3RydWN0b3IpLT5jYWxsQ29uc3RydWN0b3Io
ZXhlYykpOwogfQogCi1Db25zdHJ1Y3RUeXBlIEpTTlBPYmplY3Q6OmdldENvbnN0cnVjdERhdGEo
Q29uc3RydWN0RGF0YSYgY29uc3RydWN0RGF0YSkKK0NvbnN0cnVjdFR5cGUgSlNOUE9iamVjdDo6
Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoQ29uc3RydWN0RGF0YSYgY29uc3RydWN0RGF0YSkKIHsK
ICAgICByZXR1cm4gZ2V0Q29uc3RydWN0RGF0YSh0aGlzLCBjb25zdHJ1Y3REYXRhKTsKIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9OZXRzY2FwZS9KU05Q
T2JqZWN0LmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvTmV0c2NhcGUvSlNO
UE9iamVjdC5oCmluZGV4IDIzZmZjOGZjOTIzMmRiMzRhZjAyMTNjZjczZTcxY2FlMjk3NTYxNjAu
LjA4NjQzZjc2NWE5NGQ1MGI3MDY0NmY1NTdkYzBiODAxYTcyYjJiMWMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9OZXRzY2FwZS9KU05QT2JqZWN0LmgKKysr
IGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL05ldHNjYXBlL0pTTlBPYmplY3Qu
aApAQCAtODAsNyArODAsNyBAQCBwcml2YXRlOgogICAgIH0KIAogICAgIHN0YXRpYyBKU0M6OkNh
bGxUeXBlIGdldENhbGxEYXRhKEpTQzo6SlNDZWxsKiwgSlNDOjpDYWxsRGF0YSYpOwotICAgIHZp
cnR1YWwgSlNDOjpDb25zdHJ1Y3RUeXBlIGdldENvbnN0cnVjdERhdGEoSlNDOjpDb25zdHJ1Y3RE
YXRhJik7CisgICAgdmlydHVhbCBKU0M6OkNvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YVZp
cnR1YWwoSlNDOjpDb25zdHJ1Y3REYXRhJik7CiAgICAgc3RhdGljIEpTQzo6Q29uc3RydWN0VHlw
ZSBnZXRDb25zdHJ1Y3REYXRhKEpTQzo6SlNDZWxsKiwgSlNDOjpDb25zdHJ1Y3REYXRhJik7CiAK
ICAgICB2aXJ0dWFsIGJvb2wgZ2V0T3duUHJvcGVydHlTbG90KEpTQzo6RXhlY1N0YXRlKiwgY29u
c3QgSlNDOjpJZGVudGlmaWVyJiBwcm9wZXJ0eU5hbWUsIEpTQzo6UHJvcGVydHlTbG90Jik7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>110866</attachid>
            <date>2011-10-13 10:13:43 -0700</date>
            <delta_ts>2011-10-13 19:21:51 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-69872-20111013101342.patch</filename>
            <type>text/plain</type>
            <size>46426</size>
            <attacher name="Mark Hahnenberg">mhahnenberg</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTcyNzQKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9BUEkvSlNDYWxsYmFja0NvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9BUEkvSlNDYWxsYmFja0NvbnN0cnVjdG9yLmNwcAppbmRleCA5NjZkMzRhZGIyNzBhYzJlNzJh
ZjE1NGM0OWE4NDRkYTZhYzExNjAzLi5jYjRiZTQxNmJkNTczODAzNTEzM2M1YmQ2YzVmOWQ3YjZi
ZTlmOWZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tD
b25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNr
Q29uc3RydWN0b3IuY3BwCkBAIC04Niw3ICs4Niw3IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBK
U0NfSE9TVF9DQUxMIGNvbnN0cnVjdEpTQ2FsbGJhY2soRXhlY1N0YXRlKiBleGVjKQogICAgIHJl
dHVybiBKU1ZhbHVlOjplbmNvZGUodG9KUyhKU09iamVjdE1ha2UoY3R4LCBzdGF0aWNfY2FzdDxK
U0NhbGxiYWNrQ29uc3RydWN0b3IqPihjb25zdHJ1Y3RvciktPmNsYXNzUmVmKCksIDApKSk7CiB9
CiAKLUNvbnN0cnVjdFR5cGUgSlNDYWxsYmFja0NvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRh
KENvbnN0cnVjdERhdGEmIGNvbnN0cnVjdERhdGEpCitDb25zdHJ1Y3RUeXBlIEpTQ2FsbGJhY2tD
b25zdHJ1Y3Rvcjo6Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoQ29uc3RydWN0RGF0YSYgY29uc3Ry
dWN0RGF0YSkKIHsKICAgICByZXR1cm4gZ2V0Q29uc3RydWN0RGF0YSh0aGlzLCBjb25zdHJ1Y3RE
YXRhKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFj
a0NvbnN0cnVjdG9yLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tDb25z
dHJ1Y3Rvci5oCmluZGV4IDQ2ZWE4MjBiNjcwNTUxNjM1YWM4ZTBlZjBlY2ZlM2FmYzdjNWY1YjQu
LmUzMTc2YzZhMWNjNDc0NmI2NmJmZWY2NmQ5OGI2YWVjODEzMWMyOTAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFja0NvbnN0cnVjdG9yLmgKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrQ29uc3RydWN0b3IuaApAQCAtNTgsNyAr
NTgsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIFN0cnVjdHVyZUZs
YWdzID0gSW1wbGVtZW50c0hhc0luc3RhbmNlIHwgSlNPYmplY3Q6OlN0cnVjdHVyZUZsYWdzOwog
CiBwcml2YXRlOgotICAgIHZpcnR1YWwgQ29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKENv
bnN0cnVjdERhdGEmKTsKKyAgICB2aXJ0dWFsIENvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0
YVZpcnR1YWwoQ29uc3RydWN0RGF0YSYpOwogICAgIHN0YXRpYyBDb25zdHJ1Y3RUeXBlIGdldENv
bnN0cnVjdERhdGEoSlNDZWxsKiwgQ29uc3RydWN0RGF0YSYpOwogCiAgICAgSlNDbGFzc1JlZiBt
X2NsYXNzOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNr
T2JqZWN0LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tPYmplY3QuaApp
bmRleCBhNTYwMzViOWE0ZDMzZTI5MWI1NjBhNTY3MTZjMzAyYWFlYmE4MzRhLi4zNmQ2ODY0ZWFl
MGI3NmYyMjAyNWU5NmMwNGE3MzYwNmU2ZDcxNGE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvQVBJL0pTQ2FsbGJhY2tPYmplY3QuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQVBJL0pTQ2FsbGJhY2tPYmplY3QuaApAQCAtMTk2LDcgKzE5Niw3IEBAIHByaXZhdGU6CiAg
ICAgdmlydHVhbCBkb3VibGUgdG9OdW1iZXIoRXhlY1N0YXRlKikgY29uc3Q7CiAgICAgdmlydHVh
bCBVU3RyaW5nIHRvU3RyaW5nKEV4ZWNTdGF0ZSopIGNvbnN0OwogCi0gICAgdmlydHVhbCBDb25z
dHJ1Y3RUeXBlIGdldENvbnN0cnVjdERhdGEoQ29uc3RydWN0RGF0YSYpOworICAgIHZpcnR1YWwg
Q29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChDb25zdHJ1Y3REYXRhJik7CiAg
ICAgc3RhdGljIENvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YShKU0NlbGwqLCBDb25zdHJ1
Y3REYXRhJik7CiAgICAgc3RhdGljIENhbGxUeXBlIGdldENhbGxEYXRhKEpTQ2VsbCosIENhbGxE
YXRhJik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDYWxsYmFj
a09iamVjdEZ1bmN0aW9ucy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNr
T2JqZWN0RnVuY3Rpb25zLmgKaW5kZXggOGVlMDYwNjI3ZWI0NmJhYTI2ZGFhZGUwZGM0MjE3OWU3
ZGQ1YWNiZS4uOWZhYmJiYzg4MGZlOTU0ZTg5YzNhN2Q2MTQwMGU3MDE3NDcwZTZhNCAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrT2JqZWN0RnVuY3Rpb25z
LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU0NhbGxiYWNrT2JqZWN0RnVuY3Rp
b25zLmgKQEAgLTMyOCw3ICszMjgsNyBAQCBib29sIEpTQ2FsbGJhY2tPYmplY3Q8UGFyZW50Pjo6
ZGVsZXRlUHJvcGVydHkoSlNDZWxsKiBjZWxsLCBFeGVjU3RhdGUqIGV4ZWMsIHVucwogfQogCiB0
ZW1wbGF0ZSA8Y2xhc3MgUGFyZW50PgotQ29uc3RydWN0VHlwZSBKU0NhbGxiYWNrT2JqZWN0PFBh
cmVudD46OmdldENvbnN0cnVjdERhdGEoQ29uc3RydWN0RGF0YSYgY29uc3RydWN0RGF0YSkKK0Nv
bnN0cnVjdFR5cGUgSlNDYWxsYmFja09iamVjdDxQYXJlbnQ+OjpnZXRDb25zdHJ1Y3REYXRhVmly
dHVhbChDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQogewogICAgIHJldHVybiBnZXRDb25z
dHJ1Y3REYXRhKHRoaXMsIGNvbnN0cnVjdERhdGEpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL0FQSS9KU09iamVjdFJlZi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
QVBJL0pTT2JqZWN0UmVmLmNwcAppbmRleCA0Y2M2NmE0ZGIzMjU0NTI2NTQ1NmJlZDE4YTE1NTdk
ZWYxMWNkYmU2Li41ZmNiYjgzYTM3ZTVhYWZlY2U2ZjJmYmExNzBhZTEwN2VhMGU4NDAxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTT2JqZWN0UmVmLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTT2JqZWN0UmVmLmNwcApAQCAtNDU0LDcgKzQ1NCw3
IEBAIGJvb2wgSlNPYmplY3RJc0NvbnN0cnVjdG9yKEpTQ29udGV4dFJlZiwgSlNPYmplY3RSZWYg
b2JqZWN0KQogewogICAgIEpTT2JqZWN0KiBqc09iamVjdCA9IHRvSlMob2JqZWN0KTsKICAgICBD
b25zdHJ1Y3REYXRhIGNvbnN0cnVjdERhdGE7Ci0gICAgcmV0dXJuIGpzT2JqZWN0LT5nZXRDb25z
dHJ1Y3REYXRhKGNvbnN0cnVjdERhdGEpICE9IENvbnN0cnVjdFR5cGVOb25lOworICAgIHJldHVy
biBqc09iamVjdC0+Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoY29uc3RydWN0RGF0YSkgIT0gQ29u
c3RydWN0VHlwZU5vbmU7CiB9CiAKIEpTT2JqZWN0UmVmIEpTT2JqZWN0Q2FsbEFzQ29uc3RydWN0
b3IoSlNDb250ZXh0UmVmIGN0eCwgSlNPYmplY3RSZWYgb2JqZWN0LCBzaXplX3QgYXJndW1lbnRD
b3VudCwgY29uc3QgSlNWYWx1ZVJlZiBhcmd1bWVudHNbXSwgSlNWYWx1ZVJlZiogZXhjZXB0aW9u
KQpAQCAtNDY1LDcgKzQ2NSw3IEBAIEpTT2JqZWN0UmVmIEpTT2JqZWN0Q2FsbEFzQ29uc3RydWN0
b3IoSlNDb250ZXh0UmVmIGN0eCwgSlNPYmplY3RSZWYgb2JqZWN0LCBzaXplCiAgICAgSlNPYmpl
Y3QqIGpzT2JqZWN0ID0gdG9KUyhvYmplY3QpOwogCiAgICAgQ29uc3RydWN0RGF0YSBjb25zdHJ1
Y3REYXRhOwotICAgIENvbnN0cnVjdFR5cGUgY29uc3RydWN0VHlwZSA9IGpzT2JqZWN0LT5nZXRD
b25zdHJ1Y3REYXRhKGNvbnN0cnVjdERhdGEpOworICAgIENvbnN0cnVjdFR5cGUgY29uc3RydWN0
VHlwZSA9IGpzT2JqZWN0LT5nZXRDb25zdHJ1Y3REYXRhVmlydHVhbChjb25zdHJ1Y3REYXRhKTsK
ICAgICBpZiAoY29uc3RydWN0VHlwZSA9PSBDb25zdHJ1Y3RUeXBlTm9uZSkKICAgICAgICAgcmV0
dXJuIDA7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IGYyZjdjNzhjYjM1NWIyNWE4NTli
MTQwZDBmYjU5MGZlNDVhZGY3YzEuLjVkNWY4MjU5MTQ4OGI2MDQ0NGUzOWZiY2I5ZGZhM2JhNGIz
NGY0MjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY3IEBACisyMDExLTEw
LTEyICBNYXJrIEhhaG5lbmJlcmcgIDxtaGFobmVuYmVyZ0BhcHBsZS5jb20+CisKKyAgICAgICAg
UmVuYW1lIHZpcnR1YWwgZ2V0Q29uc3RydWN0RGF0YSB0byBnZXRDb25zdHJ1Y3REYXRhVmlydHVh
bAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Njk4NzIK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZW5hbWVk
IHZpcnR1YWwgZ2V0Q29uc3RydWN0RGF0YSBmdW5jdGlvbnMgdG8gZ2V0Q29uc3RydWN0RGF0YVZp
cnR1YWwgdG8gCisgICAgICAgIGF2b2lkIGNvbmZsaWN0cyB3aGVuIHdlIGFkZCBzdGF0aWMgZ2V0
Q29uc3RydWN0RGF0YSB0byB0aGUgTWV0aG9kVGFibGUuCisKKyAgICAgICAgKiBBUEkvSlNDYWxs
YmFja0NvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6SlNDYWxsYmFja0NvbnN0cnVjdG9y
OjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbCk6CisgICAgICAgICogQVBJL0pTQ2FsbGJhY2tDb25z
dHJ1Y3Rvci5oOgorICAgICAgICAqIEFQSS9KU0NhbGxiYWNrT2JqZWN0Lmg6CisgICAgICAgICog
QVBJL0pTQ2FsbGJhY2tPYmplY3RGdW5jdGlvbnMuaDoKKyAgICAgICAgKEpTQzo6OjpnZXRDb25z
dHJ1Y3REYXRhVmlydHVhbCk6CisgICAgICAgICogQVBJL0pTT2JqZWN0UmVmLmNwcDoKKyAgICAg
ICAgKEpTT2JqZWN0SXNDb25zdHJ1Y3Rvcik6CisgICAgICAgIChKU09iamVjdENhbGxBc0NvbnN0
cnVjdG9yKToKKyAgICAgICAgKiBKYXZhU2NyaXB0Q29yZS5leHA6CisgICAgICAgICogSmF2YVNj
cmlwdENvcmUudmNwcm9qL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLmRlZjoKKyAgICAg
ICAgKiBkZmcvREZHT3BlcmF0aW9ucy5jcHA6CisgICAgICAgICogaml0L0pJVFN0dWJzLmNwcDoK
KyAgICAgICAgKEpTQzo6REVGSU5FX1NUVUJfRlVOQ1RJT04pOgorICAgICAgICAqIHJ1bnRpbWUv
QXJyYXlDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OkFycmF5Q29uc3RydWN0b3I6Omdl
dENvbnN0cnVjdERhdGFWaXJ0dWFsKToKKyAgICAgICAgKiBydW50aW1lL0FycmF5Q29uc3RydWN0
b3IuaDoKKyAgICAgICAgKiBydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5jcHA6CisgICAgICAg
IChKU0M6OkJvb2xlYW5Db25zdHJ1Y3Rvcjo6Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwpOgorICAg
ICAgICAqIHJ1bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9yLmg6CisgICAgICAgICogcnVudGltZS9E
YXRlQ29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpEYXRlQ29uc3RydWN0b3I6OmdldENv
bnN0cnVjdERhdGFWaXJ0dWFsKToKKyAgICAgICAgKiBydW50aW1lL0RhdGVDb25zdHJ1Y3Rvci5o
OgorICAgICAgICAqIHJ1bnRpbWUvRXJyb3IuaDoKKyAgICAgICAgKEpTQzo6U3RyaWN0TW9kZVR5
cGVFcnJvckZ1bmN0aW9uOjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbCk6CisgICAgICAgICogcnVu
dGltZS9FcnJvckNvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6RXJyb3JDb25zdHJ1Y3Rv
cjo6Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwpOgorICAgICAgICAqIHJ1bnRpbWUvRXJyb3JDb25z
dHJ1Y3Rvci5oOgorICAgICAgICAqIHJ1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHA6Cisg
ICAgICAgIChKU0M6OkZ1bmN0aW9uQ29uc3RydWN0b3I6OmdldENvbnN0cnVjdERhdGFWaXJ0dWFs
KToKKyAgICAgICAgKiBydW50aW1lL0Z1bmN0aW9uQ29uc3RydWN0b3IuaDoKKyAgICAgICAgKiBy
dW50aW1lL0pTQ2VsbC5jcHA6CisgICAgICAgIChKU0M6OkpTQ2VsbDo6Z2V0Q29uc3RydWN0RGF0
YVZpcnR1YWwpOgorICAgICAgICAqIHJ1bnRpbWUvSlNDZWxsLmg6CisgICAgICAgIChKU0M6Omdl
dENvbnN0cnVjdERhdGEpOgorICAgICAgICAqIHJ1bnRpbWUvSlNGdW5jdGlvbi5jcHA6CisgICAg
ICAgIChKU0M6OkpTRnVuY3Rpb246OmdldENvbnN0cnVjdERhdGFWaXJ0dWFsKToKKyAgICAgICAg
KiBydW50aW1lL0pTRnVuY3Rpb24uaDoKKyAgICAgICAgKiBydW50aW1lL05hdGl2ZUVycm9yQ29u
c3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpOYXRpdmVFcnJvckNvbnN0cnVjdG9yOjpnZXRD
b25zdHJ1Y3REYXRhVmlydHVhbCk6CisgICAgICAgICogcnVudGltZS9OYXRpdmVFcnJvckNvbnN0
cnVjdG9yLmg6CisgICAgICAgICogcnVudGltZS9OdW1iZXJDb25zdHJ1Y3Rvci5jcHA6CisgICAg
ICAgIChKU0M6Ok51bWJlckNvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbCk6Cisg
ICAgICAgICogcnVudGltZS9OdW1iZXJDb25zdHJ1Y3Rvci5oOgorICAgICAgICAqIHJ1bnRpbWUv
T2JqZWN0Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpPYmplY3RDb25zdHJ1Y3Rvcjo6
Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwpOgorICAgICAgICAqIHJ1bnRpbWUvT2JqZWN0Q29uc3Ry
dWN0b3IuaDoKKyAgICAgICAgKiBydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmNwcDoKKyAgICAg
ICAgKEpTQzo6UmVnRXhwQ29uc3RydWN0b3I6OmdldENvbnN0cnVjdERhdGFWaXJ0dWFsKToKKyAg
ICAgICAgKiBydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmg6CisgICAgICAgICogcnVudGltZS9T
dHJpbmdDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChKU0M6OlN0cmluZ0NvbnN0cnVjdG9yOjpn
ZXRDb25zdHJ1Y3REYXRhVmlydHVhbCk6CisgICAgICAgICogcnVudGltZS9TdHJpbmdDb25zdHJ1
Y3Rvci5oOgorCiAyMDExLTEwLTEyICBHdXN0YXZvIE5vcm9uaGEgU2lsdmEgIDxndXN0YXZvLm5v
cm9uaGFAY29sbGFib3JhLmNvLnVrPgogCiAgICAgICAgIEZpeCBidWlsZCB3aXRoIEdMaWIgMi4z
MQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLmV4cCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS5leHAKaW5kZXggZmFhNWVjMjk1
NmJjMWNjYzViM2E4N2U3ZDU5ZmMxY2M2YzI0MTMzNC4uNWIyZWZjNTU3ZWUxZTI4NzIxZTUwOWYz
YWIxOTM4ZDg5YzdiNDlkOCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFT
Y3JpcHRDb3JlLmV4cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUu
ZXhwCkBAIC0yNTksOSArMjU5LDkgQEAgX19aTjNKU0M0Y2FsbEVQTlNfOUV4ZWNTdGF0ZUVOU183
SlNWYWx1ZUVOU184Q2FsbFR5cGVFUktOU184Q2FsbERhdGFFUzJfUktOU183QXIKIF9fWk4zSlND
NkpTQ2VsbDExZ2V0Q2FsbERhdGFFUFMwX1JOU184Q2FsbERhdGFFCiBfX1pOM0pTQzZKU0NlbGwx
NGRlbGV0ZVByb3BlcnR5RVBOU185RXhlY1N0YXRlRVJLTlNfMTBJZGVudGlmaWVyRQogX19aTjNK
U0M2SlNDZWxsMTRkZWxldGVQcm9wZXJ0eUVQTlNfOUV4ZWNTdGF0ZUVqCi1fX1pOM0pTQzZKU0Nl
bGwxNmdldENvbnN0cnVjdERhdGFFUk5TXzEzQ29uc3RydWN0RGF0YUUKIF9fWk4zSlNDNkpTQ2Vs
bDE4Z2V0T3duUHJvcGVydHlTbG90RVBOU185RXhlY1N0YXRlRVJLTlNfMTBJZGVudGlmaWVyRVJO
U18xMlByb3BlcnR5U2xvdEUKIF9fWk4zSlNDNkpTQ2VsbDE4Z2V0T3duUHJvcGVydHlTbG90RVBO
U185RXhlY1N0YXRlRWpSTlNfMTJQcm9wZXJ0eVNsb3RFCitfX1pOM0pTQzZKU0NlbGwyM2dldENv
bnN0cnVjdERhdGFWaXJ0dWFsRVJOU18xM0NvbnN0cnVjdERhdGFFCiBfX1pOM0pTQzZKU0NlbGwz
cHV0RVBOU185RXhlY1N0YXRlRVJLTlNfMTBJZGVudGlmaWVyRU5TXzdKU1ZhbHVlRVJOU18xNVB1
dFByb3BlcnR5U2xvdEUKIF9fWk4zSlNDNkpTQ2VsbDNwdXRFUE5TXzlFeGVjU3RhdGVFak5TXzdK
U1ZhbHVlRSAgCiBfX1pOM0pTQzZKU0NlbGw5Z2V0T2JqZWN0RXYKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS52Y3Byb2ovSmF2YVNjcmlwdENvcmUvSmF2
YVNjcmlwdENvcmUuZGVmIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnZj
cHJvai9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS5kZWYKaW5kZXggN2M3OTdkM2EzOGI3
NjQzODkwNWUxMWRiMmVkMGZjOWI0OWZmYmJmYy4uNDUxZGZlOGRmMzIyNGRlMWRmN2I3YWI3Y2Fm
YmNhNDllODcxNjVlMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3Jp
cHRDb3JlLnZjcHJvai9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS5kZWYKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnZjcHJvai9KYXZhU2NyaXB0Q29yZS9K
YXZhU2NyaXB0Q29yZS5kZWYKQEAgLTE5MCw3ICsxOTAsNyBAQCBFWFBPUlRTCiAgICAgP2dldEBT
dHJ1Y3R1cmVASlNDQEBRQUVJQUFWSlNHbG9iYWxEYXRhQDJAQUJWSWRlbnRpZmllckAyQEFBSUFB
UEFWSlNDZWxsQDJAQFoKICAgICA/Z2V0QFN0cnVjdHVyZUBKU0NAQFFBRUlBQVZKU0dsb2JhbERh
dGFAMkBQQVZTdHJpbmdJbXBsQFdURkBAQUFJQUFQQVZKU0NlbGxAMkBAWgogICAgID9nZXRDYWxs
RGF0YUBKU0NlbGxASlNDQEBTQT9BVzRDYWxsVHlwZUAyQFBBVjEyQEFBVENhbGxEYXRhQDJAQFoK
LSAgICA/Z2V0Q29uc3RydWN0RGF0YUBKU0NlbGxASlNDQEBVQUU/QVc0Q29uc3RydWN0VHlwZUAy
QEFBVENvbnN0cnVjdERhdGFAMkBAWgorICAgID9nZXRDb25zdHJ1Y3REYXRhVmlydHVhbEBKU0Nl
bGxASlNDQEBVQUU/QVc0Q29uc3RydWN0VHlwZUAyQEFBVENvbnN0cnVjdERhdGFAMkBAWgogICAg
ID9nZXRPYmplY3RASlNDZWxsQEpTQ0BAUUFFUEFWSlNPYmplY3RAMkBYWgogICAgID9nZXRPd25Q
cm9wZXJ0eURlc2NyaXB0b3JASlNHbG9iYWxPYmplY3RASlNDQEBVQUVfTlBBVkV4ZWNTdGF0ZUAy
QEFCVklkZW50aWZpZXJAMkBBQVZQcm9wZXJ0eURlc2NyaXB0b3JAMkBAWgogICAgID9nZXRPd25Q
cm9wZXJ0eURlc2NyaXB0b3JASlNPYmplY3RASlNDQEBVQUVfTlBBVkV4ZWNTdGF0ZUAyQEFCVklk
ZW50aWZpZXJAMkBBQVZQcm9wZXJ0eURlc2NyaXB0b3JAMkBAWgpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL2RmZy9ERkdPcGVyYXRpb25zLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9kZmcvREZHT3BlcmF0aW9ucy5jcHAKaW5kZXggZWIwZDhhMzIyYmJkMDgxZGU2NjkwMzE5
YmY5MjY4NGI1ZTY5NGQyMS4uZjIyOGU5N2FiY2YxYWEyNzZmYTVkNjlhNDUyYTNmN2NmOTlhZmFh
MSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdPcGVyYXRpb25zLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR09wZXJhdGlvbnMuY3BwCkBAIC0x
NjEsNyArMTYxLDcgQEAgSlNDZWxsKiBERkdfT1BFUkFUSU9OIG9wZXJhdGlvbkNyZWF0ZVRoaXMo
RXhlY1N0YXRlKiBleGVjLCBKU0NlbGwqIHByb3RvdHlwZSkKICAgICAKICNpZiAhQVNTRVJUX0RJ
U0FCTEVECiAgICAgQ29uc3RydWN0RGF0YSBjb25zdHJ1Y3REYXRhOwotICAgIEFTU0VSVChjb25z
dHJ1Y3Rvci0+Z2V0Q29uc3RydWN0RGF0YShjb25zdHJ1Y3REYXRhKSA9PSBDb25zdHJ1Y3RUeXBl
SlMpOworICAgIEFTU0VSVChjb25zdHJ1Y3Rvci0+Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoY29u
c3RydWN0RGF0YSkgPT0gQ29uc3RydWN0VHlwZUpTKTsKICNlbmRpZgogICAgIAogICAgIEpTR2xv
YmFsRGF0YSYgZ2xvYmFsRGF0YSA9IGV4ZWMtPmdsb2JhbERhdGEoKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUU3R1YnMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2ppdC9KSVRTdHVicy5jcHAKaW5kZXggYTkzMGY1ODJlMDlkYmFmNzFjNzUxYjI1YzVjNGU3
NWE3ZDBhOTYyMi4uODMyZGRlZGQ4Y2RlMzNmNTVlYmM0MTlkN2QxZTI5ZTM1MjQ2YWNmOCAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRTdHVicy5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRTdHVicy5jcHAKQEAgLTEyNjgsNyArMTI2OCw3IEBA
IERFRklORV9TVFVCX0ZVTkNUSU9OKEVuY29kZWRKU1ZhbHVlLCBvcF9jcmVhdGVfdGhpcykKICAg
ICBKU0Z1bmN0aW9uKiBjb25zdHJ1Y3RvciA9IGFzRnVuY3Rpb24oY2FsbEZyYW1lLT5jYWxsZWUo
KSk7CiAjaWYgIUFTU0VSVF9ESVNBQkxFRAogICAgIENvbnN0cnVjdERhdGEgY29uc3RydWN0RGF0
YTsKLSAgICBBU1NFUlQoY29uc3RydWN0b3ItPmdldENvbnN0cnVjdERhdGEoY29uc3RydWN0RGF0
YSkgPT0gQ29uc3RydWN0VHlwZUpTKTsKKyAgICBBU1NFUlQoY29uc3RydWN0b3ItPmdldENvbnN0
cnVjdERhdGFWaXJ0dWFsKGNvbnN0cnVjdERhdGEpID09IENvbnN0cnVjdFR5cGVKUyk7CiAjZW5k
aWYKIAogICAgIFN0cnVjdHVyZSogc3RydWN0dXJlOwpAQCAtMjE2NSw3ICsyMTY1LDcgQEAgREVG
SU5FX1NUVUJfRlVOQ1RJT04odm9pZCosIG9wX2NvbnN0cnVjdF9qaXRDb21waWxlKQogCiAjaWYg
IUFTU0VSVF9ESVNBQkxFRAogICAgIENvbnN0cnVjdERhdGEgY29uc3RydWN0RGF0YTsKLSAgICBB
U1NFUlQoYXNGdW5jdGlvbihzdGFja0ZyYW1lLmNhbGxGcmFtZS0+Y2FsbGVlKCkpLT5nZXRDb25z
dHJ1Y3REYXRhKGNvbnN0cnVjdERhdGEpID09IENvbnN0cnVjdFR5cGVKUyk7CisgICAgQVNTRVJU
KGFzRnVuY3Rpb24oc3RhY2tGcmFtZS5jYWxsRnJhbWUtPmNhbGxlZSgpKS0+Z2V0Q29uc3RydWN0
RGF0YVZpcnR1YWwoY29uc3RydWN0RGF0YSkgPT0gQ29uc3RydWN0VHlwZUpTKTsKICNlbmRpZgog
ICAgIAogICAgIHJldHVybiBqaXRDb21waWxlRm9yKHN0YWNrRnJhbWUsIENvZGVGb3JDb25zdHJ1
Y3QpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlDb25z
dHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BcnJheUNvbnN0cnVj
dG9yLmNwcAppbmRleCBmNTU0ZTQxYTRmY2FmZjllOTAyOTM2Nzk2MDk1YmJmYTFlYTRkYzE3Li5k
NGQ3N2YyM2JmYzY1MjE0ZmQyZTZjMGY4ODhiYjg4MGNjMmYxMDEyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BcnJheUNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BcnJheUNvbnN0cnVjdG9yLmNwcApAQCAtOTcsNyAr
OTcsNyBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zdHJ1Y3RXaXRo
QXJyYXlDb25zdHJ1Y3RvcihFeGVjU3RhdGUqIGV4ZQogICAgIHJldHVybiBKU1ZhbHVlOjplbmNv
ZGUoY29uc3RydWN0QXJyYXlXaXRoU2l6ZVF1aXJrKGV4ZWMsIGFyZ3MpKTsKIH0KIAotQ29uc3Ry
dWN0VHlwZSBBcnJheUNvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhKENvbnN0cnVjdERhdGEm
IGNvbnN0cnVjdERhdGEpCitDb25zdHJ1Y3RUeXBlIEFycmF5Q29uc3RydWN0b3I6OmdldENvbnN0
cnVjdERhdGFWaXJ0dWFsKENvbnN0cnVjdERhdGEmIGNvbnN0cnVjdERhdGEpCiB7CiAgICAgcmV0
dXJuIGdldENvbnN0cnVjdERhdGEodGhpcywgY29uc3RydWN0RGF0YSk7CiB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BcnJheUNvbnN0cnVjdG9yLmggYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BcnJheUNvbnN0cnVjdG9yLmgKaW5kZXggMGVhM2U0
MmJjZDIxOTEzYjY4MzhkMjZlYWIwMTUzMWM5NTM4N2FhYS4uOTMwNDU5OWM1MjAxZmE0NDU0YWE0
NDQ0ODllZGQwNzMwOTNlMDEyMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvQXJyYXlDb25zdHJ1Y3Rvci5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0FycmF5Q29uc3RydWN0b3IuaApAQCAtNTYsNyArNTYsNyBAQCBuYW1lc3BhY2UgSlNDIHsK
IAogICAgICAgICB2aXJ0dWFsIGJvb2wgZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEV4ZWNTdGF0
ZSosIGNvbnN0IElkZW50aWZpZXImLCBQcm9wZXJ0eURlc2NyaXB0b3ImKTsKIAotICAgICAgICB2
aXJ0dWFsIENvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YShDb25zdHJ1Y3REYXRhJik7Cisg
ICAgICAgIHZpcnR1YWwgQ29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChDb25z
dHJ1Y3REYXRhJik7CiAgICAgICAgIHN0YXRpYyBDb25zdHJ1Y3RUeXBlIGdldENvbnN0cnVjdERh
dGEoSlNDZWxsKiwgQ29uc3RydWN0RGF0YSYpOwogICAgICAgICBzdGF0aWMgQ2FsbFR5cGUgZ2V0
Q2FsbERhdGEoSlNDZWxsKiwgQ2FsbERhdGEmKTsKICAgICB9OwpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0Jvb2xlYW5Db25zdHJ1Y3Rvci5jcHAKaW5kZXggMWE0MTUy
Y2IwM2Q5YjVkYmRlNzc3MzA3ZDliYTFjNGFhNzk2OWYwMS4uYWI2MTY5ZDE5ZjgxYmJmNzk3Y2Vh
ZTRmMzc0NTAyY2ZkODk2NWU0YyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9Cb29sZWFuQ29uc3RydWN0b3IuY3BwCkBAIC01OCw3ICs1OCw3IEBAIHN0YXRpYyBF
bmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdFdpdGhCb29sZWFuQ29uc3RydWN0
b3IoRXhlY1N0YXRlKiBlCiAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShjb25zdHJ1Y3RCb29s
ZWFuKGV4ZWMsIGFyZ3MpKTsKIH0KIAotQ29uc3RydWN0VHlwZSBCb29sZWFuQ29uc3RydWN0b3I6
OmdldENvbnN0cnVjdERhdGEoQ29uc3RydWN0RGF0YSYgY29uc3RydWN0RGF0YSkKK0NvbnN0cnVj
dFR5cGUgQm9vbGVhbkNvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChDb25zdHJ1
Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQogewogICAgIHJldHVybiBnZXRDb25zdHJ1Y3REYXRhKHRo
aXMsIGNvbnN0cnVjdERhdGEpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvQm9vbGVhbkNvbnN0cnVjdG9yLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9Cb29sZWFuQ29uc3RydWN0b3IuaAppbmRleCA4ZDEwZjA5ODFlYWNlMWUyMjQxMmRkOGE4
Yzk0MjAzZTA1NWQyMzhjLi42NzAzZmQ3YTlkYTFmYjQ0MTBmZmVlYzM1MTQ4NzdiNmVlMDdkMTBi
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFuQ29uc3Ry
dWN0b3IuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Cb29sZWFuQ29uc3Ry
dWN0b3IuaApAQCAtNTAsNyArNTAsNyBAQCBuYW1lc3BhY2UgSlNDIHsKIAogICAgIHByaXZhdGU6
CiAgICAgICAgIEJvb2xlYW5Db25zdHJ1Y3RvcihKU0dsb2JhbE9iamVjdCosIFN0cnVjdHVyZSop
OwotICAgICAgICB2aXJ0dWFsIENvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YShDb25zdHJ1
Y3REYXRhJik7CisgICAgICAgIHZpcnR1YWwgQ29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRh
VmlydHVhbChDb25zdHJ1Y3REYXRhJik7CiAgICAgICAgIHN0YXRpYyBDb25zdHJ1Y3RUeXBlIGdl
dENvbnN0cnVjdERhdGEoSlNDZWxsKiwgQ29uc3RydWN0RGF0YSYpOwogICAgICAgICBzdGF0aWMg
Q2FsbFR5cGUgZ2V0Q2FsbERhdGEoSlNDZWxsKiwgQ2FsbERhdGEmKTsKICAgICB9OwpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUNvbnN0cnVjdG9yLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0RhdGVDb25zdHJ1Y3Rvci5jcHAKaW5kZXgg
ZjQ0MGE2NGJmYTVmNjUzMGNkY2VmNzQyZDkzZGRjY2VhMmFhMTMyMS4uOGNlMGIxMTgxY2IxMjNk
NWE0YTQzNGMyODZkZWI3MTI5NjBlYmRjOSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvRGF0ZUNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9EYXRlQ29uc3RydWN0b3IuY3BwCkBAIC0xNjEsNyArMTYxLDcgQEAgc3RhdGlj
IEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29uc3RydWN0V2l0aERhdGVDb25zdHJ1Y3Rv
cihFeGVjU3RhdGUqIGV4ZWMKICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGNvbnN0cnVjdERh
dGUoZXhlYywgYXNJbnRlcm5hbEZ1bmN0aW9uKGV4ZWMtPmNhbGxlZSgpKS0+Z2xvYmFsT2JqZWN0
KCksIGFyZ3MpKTsKIH0KIAotQ29uc3RydWN0VHlwZSBEYXRlQ29uc3RydWN0b3I6OmdldENvbnN0
cnVjdERhdGEoQ29uc3RydWN0RGF0YSYgY29uc3RydWN0RGF0YSkKK0NvbnN0cnVjdFR5cGUgRGF0
ZUNvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChDb25zdHJ1Y3REYXRhJiBjb25z
dHJ1Y3REYXRhKQogewogICAgIHJldHVybiBnZXRDb25zdHJ1Y3REYXRhKHRoaXMsIGNvbnN0cnVj
dERhdGEpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0
ZUNvbnN0cnVjdG9yLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlQ29uc3Ry
dWN0b3IuaAppbmRleCBmODM3ZDY2YWFlZDFjM2JiYmVlMzliN2QyMDY1Y2RjZWU0ODNiMjIxLi45
YzRmZmM0NjFjOGZiMTFkMzM5ZGU3YzQxZDI2ZDQwZDhjNDMwZjhkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlQ29uc3RydWN0b3IuaAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlQ29uc3RydWN0b3IuaApAQCAtNTEsNyArNTEsNyBA
QCBuYW1lc3BhY2UgSlNDIHsKIAogICAgIHByaXZhdGU6CiAgICAgICAgIERhdGVDb25zdHJ1Y3Rv
cihKU0dsb2JhbE9iamVjdCosIFN0cnVjdHVyZSopOwotICAgICAgICB2aXJ0dWFsIENvbnN0cnVj
dFR5cGUgZ2V0Q29uc3RydWN0RGF0YShDb25zdHJ1Y3REYXRhJik7CisgICAgICAgIHZpcnR1YWwg
Q29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChDb25zdHJ1Y3REYXRhJik7CiAg
ICAgICAgIHN0YXRpYyBDb25zdHJ1Y3RUeXBlIGdldENvbnN0cnVjdERhdGEoSlNDZWxsKiwgQ29u
c3RydWN0RGF0YSYpOwogICAgICAgICBzdGF0aWMgQ2FsbFR5cGUgZ2V0Q2FsbERhdGEoSlNDZWxs
KiwgQ2FsbERhdGEmKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvRXJyb3IuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9yLmgKaW5kZXgg
YzM0MGU2YzIzOTg1NzZhMTg1Mjg1ZWNmNmE5ZjU3NmE5MjZjZTE1My4uNTE4MGZmYTBmNzQyYTc4
NTVkOTM0NzQ1NzkwYmE1N2RlMzkwYjhhYSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvRXJyb3IuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9F
cnJvci5oCkBAIC05OCw3ICs5OCw3IEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICAgICAgcmV0
dXJuIEpTVmFsdWU6OmVuY29kZShqc051bGwoKSk7CiAgICAgICAgIH0KICAgICAKLSAgICAgICAg
Q29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKENvbnN0cnVjdERhdGEmIGNvbnN0cnVjdERh
dGEpCisgICAgICAgIHZpcnR1YWwgQ29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhVmlydHVh
bChDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQogICAgICAgICB7CiAgICAgICAgICAgICBj
b25zdHJ1Y3REYXRhLm5hdGl2ZS5mdW5jdGlvbiA9IGNvbnN0cnVjdFRocm93VHlwZUVycm9yOwog
ICAgICAgICAgICAgcmV0dXJuIENvbnN0cnVjdFR5cGVIb3N0OwpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9FcnJvckNvbnN0cnVjdG9yLmNwcAppbmRleCA4MWU0NmRkMTQz
NjAwOTk1ODllMjY3NmNjNjcwNTA4MDZlNDJiNGIxLi4wOGE3NWY4NWVkOWMzN2M4NmFhMDYyOWEw
NDUzZmYxMTEwYWRkNTQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9FcnJvckNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9FcnJvckNvbnN0cnVjdG9yLmNwcApAQCAtNTMsNyArNTMsNyBAQCBzdGF0aWMgRW5jb2RlZEpT
VmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zdHJ1Y3RXaXRoRXJyb3JDb25zdHJ1Y3RvcihFeGVjU3Rh
dGUqIGV4ZQogICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoRXJyb3JJbnN0YW5jZTo6Y3JlYXRl
KGV4ZWMsIGVycm9yU3RydWN0dXJlLCBtZXNzYWdlKSk7CiB9CiAKLUNvbnN0cnVjdFR5cGUgRXJy
b3JDb25zdHJ1Y3Rvcjo6Z2V0Q29uc3RydWN0RGF0YShDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3RE
YXRhKQorQ29uc3RydWN0VHlwZSBFcnJvckNvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhVmly
dHVhbChDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQogewogICAgIHJldHVybiBnZXRDb25z
dHJ1Y3REYXRhKHRoaXMsIGNvbnN0cnVjdERhdGEpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvRXJyb3JDb25zdHJ1Y3Rvci5oIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvRXJyb3JDb25zdHJ1Y3Rvci5oCmluZGV4IGI5YjlkMzc1MDExNTBmYmI0
MDc4NWVlY2NhOWU1NzY4NDA3NmE0OGQuLmFmM2ZhZGY2NDViMjE4YzcwOGZkNjliNjBkOGU1N2Jj
ZjY1MTM3YzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Vycm9y
Q29uc3RydWN0b3IuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9FcnJvckNv
bnN0cnVjdG9yLmgKQEAgLTUxLDcgKzUxLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgICAgIAog
ICAgIHByaXZhdGU6CiAgICAgICAgIEVycm9yQ29uc3RydWN0b3IoSlNHbG9iYWxPYmplY3QqLCBT
dHJ1Y3R1cmUqKTsKLSAgICAgICAgdmlydHVhbCBDb25zdHJ1Y3RUeXBlIGdldENvbnN0cnVjdERh
dGEoQ29uc3RydWN0RGF0YSYpOworICAgICAgICB2aXJ0dWFsIENvbnN0cnVjdFR5cGUgZ2V0Q29u
c3RydWN0RGF0YVZpcnR1YWwoQ29uc3RydWN0RGF0YSYpOwogICAgICAgICBzdGF0aWMgQ29uc3Ry
dWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKEpTQ2VsbCosIENvbnN0cnVjdERhdGEmKTsKICAgICAg
ICAgc3RhdGljIENhbGxUeXBlIGdldENhbGxEYXRhKEpTQ2VsbCosIENhbGxEYXRhJik7CiAgICAg
fTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uQ29u
c3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Db25z
dHJ1Y3Rvci5jcHAKaW5kZXggYzNlZGEwOTkyMjRiMDY0MGFlNGRlYzZlMzRiZjY0YjY5NzljNjE5
Mi4uNGExN2JhZGQzOWZlYTAxNmNhNDA0OWU2ZmZlYTVkZWVhOTdhNTE5MiAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5jcHAK
QEAgLTU5LDcgKzU5LDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29u
c3RydWN0V2l0aEZ1bmN0aW9uQ29uc3RydWN0b3IoRXhlY1N0YXRlKgogICAgIHJldHVybiBKU1Zh
bHVlOjplbmNvZGUoY29uc3RydWN0RnVuY3Rpb24oZXhlYywgYXNJbnRlcm5hbEZ1bmN0aW9uKGV4
ZWMtPmNhbGxlZSgpKS0+Z2xvYmFsT2JqZWN0KCksIGFyZ3MpKTsKIH0KIAotQ29uc3RydWN0VHlw
ZSBGdW5jdGlvbkNvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhKENvbnN0cnVjdERhdGEmIGNv
bnN0cnVjdERhdGEpCitDb25zdHJ1Y3RUeXBlIEZ1bmN0aW9uQ29uc3RydWN0b3I6OmdldENvbnN0
cnVjdERhdGFWaXJ0dWFsKENvbnN0cnVjdERhdGEmIGNvbnN0cnVjdERhdGEpCiB7CiAgICAgcmV0
dXJuIGdldENvbnN0cnVjdERhdGEodGhpcywgY29uc3RydWN0RGF0YSk7CiB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmggYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvbkNvbnN0cnVjdG9yLmgKaW5kZXgg
ZTg4YTlkYzJhNjJhYjQwNmYzN2Q5YTM5ZjVkZmUxMmFiMTcyZDE3My4uMGE3MzdmYjQ1ZDAxODUw
ODdjMTMyNTkwZjA5ODA2MjBlMDY4MmFmZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0Z1bmN0aW9uQ29uc3RydWN0b3IuaApAQCAtNDgsNyArNDgsNyBAQCBuYW1l
c3BhY2UgSlNDIHsKICAgICBwcml2YXRlOgogICAgICAgICBGdW5jdGlvbkNvbnN0cnVjdG9yKEpT
R2xvYmFsT2JqZWN0KiwgU3RydWN0dXJlKik7CiAgICAgICAgIHZvaWQgZmluaXNoQ3JlYXRpb24o
RXhlY1N0YXRlKiwgRnVuY3Rpb25Qcm90b3R5cGUqKTsKLSAgICAgICAgdmlydHVhbCBDb25zdHJ1
Y3RUeXBlIGdldENvbnN0cnVjdERhdGEoQ29uc3RydWN0RGF0YSYpOworICAgICAgICB2aXJ0dWFs
IENvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoQ29uc3RydWN0RGF0YSYpOwog
ICAgICAgICBzdGF0aWMgQ29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKEpTQ2VsbCosIENv
bnN0cnVjdERhdGEmKTsKICAgICAgICAgc3RhdGljIENhbGxUeXBlIGdldENhbGxEYXRhKEpTQ2Vs
bCosIENhbGxEYXRhJik7CiAgICAgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTQ2VsbC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0Nl
bGwuY3BwCmluZGV4IDg5NzNkYzMwMDQ0ZmJmZjc4ZjBmMDYzNjIzOGI5ZjhiZTM5ZTk3OTEuLmE2
OGIwZjBmOTBlYjBiNTgxNTFlNTM0NjEwZmM4ZDhmYzFhMzYxY2EgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ2VsbC5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNDZWxsLmNwcApAQCAtNTksNyArNTksNyBAQCBDYWxsVHlwZSBKU0Nl
bGw6OmdldENhbGxEYXRhKEpTQ2VsbCosIENhbGxEYXRhJikKICAgICByZXR1cm4gQ2FsbFR5cGVO
b25lOwogfQogCi1Db25zdHJ1Y3RUeXBlIEpTQ2VsbDo6Z2V0Q29uc3RydWN0RGF0YShDb25zdHJ1
Y3REYXRhJikKK0NvbnN0cnVjdFR5cGUgSlNDZWxsOjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChD
b25zdHJ1Y3REYXRhJikKIHsKICAgICByZXR1cm4gQ29uc3RydWN0VHlwZU5vbmU7CiB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0NlbGwuaCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ2VsbC5oCmluZGV4IDIzZjBmZDVjMGZhZjc1NDlmZTc2
MDhlMGU0ZWIwZjUzZjMyMDZiZTcuLjFhOTQzOTVlYmJlZWU4YzE4ODJlNWJhMWIyZTM3ZDBmODJl
OTE1OWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ2VsbC5o
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ2VsbC5oCkBAIC03NCw3ICs3
NCw3IEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICBjb25zdCBKU09iamVjdCogZ2V0T2JqZWN0
KCkgY29uc3Q7IC8vIE5VTEwgaWYgbm90IGFuIG9iamVjdAogICAgICAgICAKICAgICAgICAgc3Rh
dGljIENhbGxUeXBlIGdldENhbGxEYXRhKEpTQ2VsbCosIENhbGxEYXRhJik7Ci0gICAgICAgIHZp
cnR1YWwgQ29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKENvbnN0cnVjdERhdGEmKTsKKyAg
ICAgICAgdmlydHVhbCBDb25zdHJ1Y3RUeXBlIGdldENvbnN0cnVjdERhdGFWaXJ0dWFsKENvbnN0
cnVjdERhdGEmKTsKICAgICAgICAgc3RhdGljIENvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0
YShKU0NlbGwqLCBDb25zdHJ1Y3REYXRhJik7CiAKICAgICAgICAgLy8gQmFzaWMgY29udmVyc2lv
bnMuCkBAIC0yMzcsNyArMjM3LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKICAgICBpbmxpbmUgQ29u
c3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKEpTVmFsdWUgdmFsdWUsIENvbnN0cnVjdERhdGEm
IGNvbnN0cnVjdERhdGEpCiAgICAgewotICAgICAgICBDb25zdHJ1Y3RUeXBlIHJlc3VsdCA9IHZh
bHVlLmlzQ2VsbCgpID8gdmFsdWUuYXNDZWxsKCktPmdldENvbnN0cnVjdERhdGEoY29uc3RydWN0
RGF0YSkgOiBDb25zdHJ1Y3RUeXBlTm9uZTsKKyAgICAgICAgQ29uc3RydWN0VHlwZSByZXN1bHQg
PSB2YWx1ZS5pc0NlbGwoKSA/IHZhbHVlLmFzQ2VsbCgpLT5nZXRDb25zdHJ1Y3REYXRhVmlydHVh
bChjb25zdHJ1Y3REYXRhKSA6IENvbnN0cnVjdFR5cGVOb25lOwogICAgICAgICBBU1NFUlQocmVz
dWx0ID09IENvbnN0cnVjdFR5cGVOb25lIHx8IHZhbHVlLmlzVmFsaWRDYWxsZWUoKSk7CiAgICAg
ICAgIHJldHVybiByZXN1bHQ7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNGdW5jdGlvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU0Z1bmN0aW9uLmNwcAppbmRleCA0OTMzMzA0NmNkNzliODk4NWRkNzVmY2FmZTViMTZjYTdl
NDNjYTI1Li4zNGI4YjZkMmQwOWIyZDFiNTM1NTdjMGU2MGEyNTUyMzU5ZmQ2ZTgzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0Z1bmN0aW9uLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0Z1bmN0aW9uLmNwcApAQCAtMzQ4LDcgKzM0
OCw3IEBAIGJvb2wgSlNGdW5jdGlvbjo6ZGVsZXRlUHJvcGVydHkoSlNDZWxsKiBjZWxsLCBFeGVj
U3RhdGUqIGV4ZWMsIGNvbnN0IElkZW50aWZpZXImCiAgICAgcmV0dXJuIEJhc2U6OmRlbGV0ZVBy
b3BlcnR5KHRoaXNPYmplY3QsIGV4ZWMsIHByb3BlcnR5TmFtZSk7CiB9CiAKLUNvbnN0cnVjdFR5
cGUgSlNGdW5jdGlvbjo6Z2V0Q29uc3RydWN0RGF0YShDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3RE
YXRhKQorQ29uc3RydWN0VHlwZSBKU0Z1bmN0aW9uOjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChD
b25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQogewogICAgIHJldHVybiBnZXRDb25zdHJ1Y3RE
YXRhKHRoaXMsIGNvbnN0cnVjdERhdGEpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlvbi5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNGdW5jdGlvbi5oCmluZGV4IDliOWRhOWNlOWZhYjc1NDcxZGE4Y2Y5YWMxN2ZmYmMwZDc3
M2JjMzYuLjdmNTE2ZjY4Njg3MTA4NTI1MWIwZWJmMDYxY2VjMWZhMmNkNGUyZjggMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRnVuY3Rpb24uaAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0Z1bmN0aW9uLmgKQEAgLTEwOCw3ICsxMDgsNyBA
QCBuYW1lc3BhY2UgSlNDIHsKICAgICAgICAgTmF0aXZlRnVuY3Rpb24gbmF0aXZlRnVuY3Rpb24o
KTsKICAgICAgICAgTmF0aXZlRnVuY3Rpb24gbmF0aXZlQ29uc3RydWN0b3IoKTsKIAotICAgICAg
ICB2aXJ0dWFsIENvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YShDb25zdHJ1Y3REYXRhJik7
CisgICAgICAgIHZpcnR1YWwgQ29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChD
b25zdHJ1Y3REYXRhJik7CiAgICAgICAgIHN0YXRpYyBDb25zdHJ1Y3RUeXBlIGdldENvbnN0cnVj
dERhdGEoSlNDZWxsKiwgQ29uc3RydWN0RGF0YSYpOwogICAgICAgICBzdGF0aWMgQ2FsbFR5cGUg
Z2V0Q2FsbERhdGEoSlNDZWxsKiwgQ2FsbERhdGEmKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvTmF0aXZlRXJyb3JDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVjdG9yLmNwcAppbmRleCBl
ODEzZWQ0YmZjNTljNmRjZTJhY2YzMmVhNjNiMTQyNzJlODQyYjQ3Li5iMzg1OGRhMzYzZmE5YmU3
ZmE3MDU4NjA1ODUxNmQ5OTFiZjM4YmMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9OYXRpdmVFcnJvckNvbnN0cnVjdG9yLmNwcApAQCAtNTYsNyArNTYs
NyBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25zdHJ1Y3RXaXRoTmF0
aXZlRXJyb3JDb25zdHJ1Y3RvcihFeGVjU3RhdAogICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUo
RXJyb3JJbnN0YW5jZTo6Y3JlYXRlKGV4ZWMsIGVycm9yU3RydWN0dXJlLCBtZXNzYWdlKSk7CiB9
CiAKLUNvbnN0cnVjdFR5cGUgTmF0aXZlRXJyb3JDb25zdHJ1Y3Rvcjo6Z2V0Q29uc3RydWN0RGF0
YShDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQorQ29uc3RydWN0VHlwZSBOYXRpdmVFcnJv
ckNvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChDb25zdHJ1Y3REYXRhJiBjb25z
dHJ1Y3REYXRhKQogewogICAgIHJldHVybiBnZXRDb25zdHJ1Y3REYXRhKHRoaXMsIGNvbnN0cnVj
dERhdGEpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmF0
aXZlRXJyb3JDb25zdHJ1Y3Rvci5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTmF0
aXZlRXJyb3JDb25zdHJ1Y3Rvci5oCmluZGV4IGQ2ZTU3M2YwYzk5MWE2YmI2MjVlYTczMjU5MWMy
N2I1OGUwODI0NzIuLjZhODJiNTFkOGEyOTUwYTkyYWVmMTJlNjFmNTVjOGJmMTJiNjk0YWIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL05hdGl2ZUVycm9yQ29uc3Ry
dWN0b3IuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OYXRpdmVFcnJvckNv
bnN0cnVjdG9yLmgKQEAgLTY4LDcgKzY4LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgcHJpdmF0
ZToKICAgICAgICAgTmF0aXZlRXJyb3JDb25zdHJ1Y3RvcihKU0dsb2JhbE9iamVjdCosIFN0cnVj
dHVyZSopOwogICAgICAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgU3RydWN0dXJlRmxhZ3MgPSBP
dmVycmlkZXNWaXNpdENoaWxkcmVuIHwgSW50ZXJuYWxGdW5jdGlvbjo6U3RydWN0dXJlRmxhZ3M7
Ci0gICAgICAgIHZpcnR1YWwgQ29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKENvbnN0cnVj
dERhdGEmKTsKKyAgICAgICAgdmlydHVhbCBDb25zdHJ1Y3RUeXBlIGdldENvbnN0cnVjdERhdGFW
aXJ0dWFsKENvbnN0cnVjdERhdGEmKTsKICAgICAgICAgc3RhdGljIENvbnN0cnVjdFR5cGUgZ2V0
Q29uc3RydWN0RGF0YShKU0NlbGwqLCBDb25zdHJ1Y3REYXRhJik7CiAgICAgICAgIHN0YXRpYyBD
YWxsVHlwZSBnZXRDYWxsRGF0YShKU0NlbGwqLCBDYWxsRGF0YSYpOwogICAgICAgICBzdGF0aWMg
dm9pZCB2aXNpdENoaWxkcmVuKEpTQ2VsbCosIFNsb3RWaXNpdG9yJik7CmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJDb25zdHJ1Y3Rvci5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJDb25zdHJ1Y3Rvci5jcHAKaW5kZXggM2M2
NWU5ZjA4ZmUzZGM0MTJhY2IwM2NhNTZiNGM1MGM3MDE2YjQ4Ny4uMWM2ZTQ1MzNjZjEwNmM0YWU1
ZmIwMWM1ZDEwZDZiYzExNThlYjAwNSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvTnVtYmVyQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL051bWJlckNvbnN0cnVjdG9yLmNwcApAQCAtMTIwLDcgKzEyMCw3IEBAIHN0YXRp
YyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdFdpdGhOdW1iZXJDb25zdHJ1
Y3RvcihFeGVjU3RhdGUqIGV4CiAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShvYmplY3QpOwog
fQogCi1Db25zdHJ1Y3RUeXBlIE51bWJlckNvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhKENv
bnN0cnVjdERhdGEmIGNvbnN0cnVjdERhdGEpCitDb25zdHJ1Y3RUeXBlIE51bWJlckNvbnN0cnVj
dG9yOjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRh
KQogewogICAgIHJldHVybiBnZXRDb25zdHJ1Y3REYXRhKHRoaXMsIGNvbnN0cnVjdERhdGEpOwog
fQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyQ29uc3Ry
dWN0b3IuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWJlckNvbnN0cnVjdG9y
LmgKaW5kZXggNzA1NmRkZjc1YmI5NzVlOWEwMzAyZWRmMzExMjdiZmU2YTNmYzE0My4uY2I4NjZm
MDU2NDllNmFhZTY2NjJhMTdkMWM1OTc2NzI2ZjdkMDE2ZiAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvTnVtYmVyQ29uc3RydWN0b3IuaAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9OdW1iZXJDb25zdHJ1Y3Rvci5oCkBAIC01OCw3ICs1OCw3IEBA
IG5hbWVzcGFjZSBKU0MgewogCiAgICAgcHJpdmF0ZToKICAgICAgICAgTnVtYmVyQ29uc3RydWN0
b3IoSlNHbG9iYWxPYmplY3QqLCBTdHJ1Y3R1cmUqKTsKLSAgICAgICAgdmlydHVhbCBDb25zdHJ1
Y3RUeXBlIGdldENvbnN0cnVjdERhdGEoQ29uc3RydWN0RGF0YSYpOworICAgICAgICB2aXJ0dWFs
IENvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoQ29uc3RydWN0RGF0YSYpOwog
ICAgICAgICBzdGF0aWMgQ29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKEpTQ2VsbCosIENv
bnN0cnVjdERhdGEmKTsKICAgICAgICAgc3RhdGljIENhbGxUeXBlIGdldENhbGxEYXRhKEpTQ2Vs
bCosIENhbGxEYXRhJik7CiAgICAgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL09iamVjdENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL09iamVjdENvbnN0cnVjdG9yLmNwcAppbmRleCA5MGVkZmE1MzdjOTJjZTUxNjA3OTk2
YmM1YzgyYWE1NzVhMDE2NDAxLi4yYjA1OWI1OTYyM2NhOWRhNzEyMTgzNWE1NzQ3YjY5YjMxNWZh
ZGQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PYmplY3RDb25z
dHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0Q29u
c3RydWN0b3IuY3BwCkBAIC0xMTksNyArMTE5LDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpT
Q19IT1NUX0NBTEwgY29uc3RydWN0V2l0aE9iamVjdENvbnN0cnVjdG9yKEV4ZWNTdGF0ZSogZXgK
ICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGNvbnN0cnVjdE9iamVjdChleGVjLCBhc0ludGVy
bmFsRnVuY3Rpb24oZXhlYy0+Y2FsbGVlKCkpLT5nbG9iYWxPYmplY3QoKSwgYXJncykpOwogfQog
Ci1Db25zdHJ1Y3RUeXBlIE9iamVjdENvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhKENvbnN0
cnVjdERhdGEmIGNvbnN0cnVjdERhdGEpCitDb25zdHJ1Y3RUeXBlIE9iamVjdENvbnN0cnVjdG9y
OjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQog
ewogICAgIHJldHVybiBnZXRDb25zdHJ1Y3REYXRhKHRoaXMsIGNvbnN0cnVjdERhdGEpOwogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0Q29uc3RydWN0
b3IuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09iamVjdENvbnN0cnVjdG9yLmgK
aW5kZXggMjIyMTU5ZjUzYTRmOGYxYjhkNjU4MmNjNzBjYjBmYjBmN2ZlYzgzNy4uNWNkMjhhNjVh
Y2U1NzJhY2VhYjQwMDBjNDIxNWY2ZTZhYmZkZGZmMiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3IuaAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9PYmplY3RDb25zdHJ1Y3Rvci5oCkBAIC01NSw3ICs1NSw3IEBAIG5h
bWVzcGFjZSBKU0MgewogCiAgICAgcHJpdmF0ZToKICAgICAgICAgT2JqZWN0Q29uc3RydWN0b3Io
SlNHbG9iYWxPYmplY3QqLCBTdHJ1Y3R1cmUqKTsKLSAgICAgICAgdmlydHVhbCBDb25zdHJ1Y3RU
eXBlIGdldENvbnN0cnVjdERhdGEoQ29uc3RydWN0RGF0YSYpOworICAgICAgICB2aXJ0dWFsIENv
bnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoQ29uc3RydWN0RGF0YSYpOwogICAg
ICAgICBzdGF0aWMgQ29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKEpTQ2VsbCosIENvbnN0
cnVjdERhdGEmKTsKICAgICAgICAgc3RhdGljIENhbGxUeXBlIGdldENhbGxEYXRhKEpTQ2VsbCos
IENhbGxEYXRhJik7CiAgICAgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1JlZ0V4cENvbnN0cnVjdG9yLmNwcAppbmRleCA0MGQ0OTE0NjQ0Yzk4NjNiYzI0NGMxZDRi
MzFkY2JiYWRhMWVjNzAwLi5kM2U0NDhmZTZjMmFkNWEwODA2YjJiY2EyMDMxYTFmMTc1Nzg0Zjcw
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBDb25zdHJ1
Y3Rvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3Ry
dWN0b3IuY3BwCkBAIC0zNTQsNyArMzU0LDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19I
T1NUX0NBTEwgY29uc3RydWN0V2l0aFJlZ0V4cENvbnN0cnVjdG9yKEV4ZWNTdGF0ZSogZXgKICAg
ICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGNvbnN0cnVjdFJlZ0V4cChleGVjLCBhc0ludGVybmFs
RnVuY3Rpb24oZXhlYy0+Y2FsbGVlKCkpLT5nbG9iYWxPYmplY3QoKSwgYXJncywgdHJ1ZSkpOwog
fQogCi1Db25zdHJ1Y3RUeXBlIFJlZ0V4cENvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhKENv
bnN0cnVjdERhdGEmIGNvbnN0cnVjdERhdGEpCitDb25zdHJ1Y3RUeXBlIFJlZ0V4cENvbnN0cnVj
dG9yOjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRh
KQogewogICAgIHJldHVybiBnZXRDb25zdHJ1Y3REYXRhKHRoaXMsIGNvbnN0cnVjdERhdGEpOwog
fQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3Ry
dWN0b3IuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cENvbnN0cnVjdG9y
LmgKaW5kZXggNWUxMzE3NjRkNDkyNWI3MGNiMzg2Njc5Yzc3ZTZhNDAyYTM2MWM0Yy4uMjI1NmNi
MDliMjZmODNiYmU2NDQ2YWQ2ZDEzOTJlYTg2ZTkzNTYxZiAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ29uc3RydWN0b3IuaAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBDb25zdHJ1Y3Rvci5oCkBAIC0xMDAsNyArMTAwLDcg
QEAgbmFtZXNwYWNlIEpTQyB7CiAKICAgICBwcml2YXRlOgogICAgICAgICBSZWdFeHBDb25zdHJ1
Y3RvcihKU0dsb2JhbE9iamVjdCosIFN0cnVjdHVyZSopOwotICAgICAgICB2aXJ0dWFsIENvbnN0
cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YShDb25zdHJ1Y3REYXRhJik7CisgICAgICAgIHZpcnR1
YWwgQ29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChDb25zdHJ1Y3REYXRhJik7
CiAgICAgICAgIHN0YXRpYyBDb25zdHJ1Y3RUeXBlIGdldENvbnN0cnVjdERhdGEoSlNDZWxsKiwg
Q29uc3RydWN0RGF0YSYpOwogICAgICAgICBzdGF0aWMgQ2FsbFR5cGUgZ2V0Q2FsbERhdGEoSlND
ZWxsKiwgQ2FsbERhdGEmKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvU3RyaW5nQ29uc3RydWN0b3IuY3BwCmluZGV4IGYzOWRkN2E1YWEwMDc4YWM2ZmQyM2Q4MmU3
ZWIwYmFkYmE3ZDc5OGIuLjVkZTM3NTFiYzkwNjQyOTAyNjhkY2Y5YjhjNmU1YWQyY2E2Y2M1Y2Ig
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0NvbnN0cnVj
dG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdDb25zdHJ1
Y3Rvci5jcHAKQEAgLTEwMSw3ICsxMDEsNyBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hP
U1RfQ0FMTCBjb25zdHJ1Y3RXaXRoU3RyaW5nQ29uc3RydWN0b3IoRXhlY1N0YXRlKiBleAogICAg
IHJldHVybiBKU1ZhbHVlOjplbmNvZGUoU3RyaW5nT2JqZWN0OjpjcmVhdGUoZXhlYywgZ2xvYmFs
T2JqZWN0LT5zdHJpbmdPYmplY3RTdHJ1Y3R1cmUoKSwgZXhlYy0+YXJndW1lbnQoMCkudG9TdHJp
bmcoZXhlYykpKTsKIH0KIAotQ29uc3RydWN0VHlwZSBTdHJpbmdDb25zdHJ1Y3Rvcjo6Z2V0Q29u
c3RydWN0RGF0YShDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQorQ29uc3RydWN0VHlwZSBT
dHJpbmdDb25zdHJ1Y3Rvcjo6Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoQ29uc3RydWN0RGF0YSYg
Y29uc3RydWN0RGF0YSkKIHsKICAgICByZXR1cm4gZ2V0Q29uc3RydWN0RGF0YSh0aGlzLCBjb25z
dHJ1Y3REYXRhKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1N0cmluZ0NvbnN0cnVjdG9yLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJp
bmdDb25zdHJ1Y3Rvci5oCmluZGV4IGE3MTkxNDg0ODM5MjlhNjhlZWMzODkyYjNiY2NmODVjNzJl
ZWYzMWIuLmZlYWIxODg5ODZmMzJkNGYwYWUzMDc2ODRjZTQ1ZDk0YTFjOTVmODkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ0NvbnN0cnVjdG9yLmgKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nQ29uc3RydWN0b3IuaApAQCAt
NTEsNyArNTEsNyBAQCBuYW1lc3BhY2UgSlNDIHsKICAgICBwcml2YXRlOgogICAgICAgICBTdHJp
bmdDb25zdHJ1Y3RvcihKU0dsb2JhbE9iamVjdCosIFN0cnVjdHVyZSopOwogICAgICAgICB2b2lk
IGZpbmlzaENyZWF0aW9uKEV4ZWNTdGF0ZSosIFN0cmluZ1Byb3RvdHlwZSopOwotICAgICAgICB2
aXJ0dWFsIENvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YShDb25zdHJ1Y3REYXRhJik7Cisg
ICAgICAgIHZpcnR1YWwgQ29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChDb25z
dHJ1Y3REYXRhJik7CiAgICAgICAgIHN0YXRpYyBDb25zdHJ1Y3RUeXBlIGdldENvbnN0cnVjdERh
dGEoSlNDZWxsKiwgQ29uc3RydWN0RGF0YSYpOwogICAgICAgICBzdGF0aWMgQ2FsbFR5cGUgZ2V0
Q2FsbERhdGEoSlNDZWxsKiwgQ2FsbERhdGEmKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGJlZjg4NmIyMDc2
ODljMDA3ODRkZThlYjJmN2VlMWFiMDQ3NGFkNGUuLjI4ZDQ1NjQwYjkwOWE1MzBmOWZkNTJiNmYx
NjRkZjY4MTE4MWQ1MDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysg
Yi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzNiBAQAorMjAxMS0xMC0xMiAg
TWFyayBIYWhuZW5iZXJnICA8bWhhaG5lbmJlcmdAYXBwbGUuY29tPgorCisgICAgICAgIFJlbmFt
ZSB2aXJ0dWFsIGdldENvbnN0cnVjdERhdGEgdG8gZ2V0Q29uc3RydWN0RGF0YVZpcnR1YWwKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY5ODcyCisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTm8gbmV3IHRlc3Rz
LgorCisgICAgICAgIFJlbmFtZWQgdmlydHVhbCBnZXRDb25zdHJ1Y3REYXRhIGZ1bmN0aW9ucyB0
byBnZXRDb25zdHJ1Y3REYXRhVmlydHVhbCB0byAKKyAgICAgICAgYXZvaWQgY29uZmxpY3RzIHdo
ZW4gd2UgYWRkIHN0YXRpYyBnZXRDb25zdHJ1Y3REYXRhIHRvIHRoZSBNZXRob2RUYWJsZS4KKwor
ICAgICAgICAqIFdlYkNvcmUuZXhwLmluOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTQXVkaW9D
b25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpKU0F1ZGlvQ29uc3RydWN0b3I6Omdl
dENvbnN0cnVjdERhdGFWaXJ0dWFsKToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0F1ZGlvQ29u
c3RydWN0b3IuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0ltYWdlQ29uc3RydWN0b3IuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6SlNJbWFnZUNvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRh
VmlydHVhbCk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNJbWFnZUNvbnN0cnVjdG9yLmg6Cisg
ICAgICAgICogYmluZGluZ3MvanMvSlNPcHRpb25Db25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpKU09wdGlvbkNvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhVmlydHVhbCk6Cisg
ICAgICAgICogYmluZGluZ3MvanMvSlNPcHRpb25Db25zdHJ1Y3Rvci5oOgorICAgICAgICAqIGJp
bmRpbmdzL2pzL1NjcmlwdEZ1bmN0aW9uQ2FsbC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3Jp
cHRGdW5jdGlvbkNhbGw6OmNvbnN0cnVjdCk6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9D
b2RlR2VuZXJhdG9ySlMucG06CisgICAgICAgIChHZW5lcmF0ZUNvbnN0cnVjdG9yRGVjbGFyYXRp
b24pOgorICAgICAgICAoR2VuZXJhdGVDb25zdHJ1Y3RvckRlZmluaXRpb24pOgorICAgICAgICAq
IGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2UuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SlNUZXN0SW50ZXJmYWNlQ29uc3RydWN0b3I6OmdldENvbnN0cnVjdERhdGFWaXJ0
dWFsKToKKyAgICAgICAgKiBicmlkZ2UvcnVudGltZV9vYmplY3QuY3BwOgorICAgICAgICAoSlND
OjpCaW5kaW5nczo6UnVudGltZU9iamVjdDo6Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwpOgorICAg
ICAgICAqIGJyaWRnZS9ydW50aW1lX29iamVjdC5oOgorCiAyMDExLTEwLTEyICBKaWFuIExpICA8
amlhbmxpQGNocm9taXVtLm9yZz4KIAogICAgICAgICBTdXBwb3J0IHBhc3Npbmcgb3B0aW9uYWwg
ZmlsZW5hbWUgd2hlbiBGb3JtRGF0YS5hcHBlbmQoKSBpcyB1c2VkIHRvCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhw
LmluCmluZGV4IDIwM2M3YTYyMzJjY2M4OTVkNDdhMjMyZjAyZmMxNmFmNmVlNGU1NDIuLjk2NDJl
YWY0YzJlNmM5NDBkZGM2NDMxNzdlNTgzM2IzZDlmODgxN2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUuZXhwLmluCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmlu
CkBAIC0xNjkwLDkgKzE2OTAsOSBAQCBfX1pOM0pTQzhCaW5kaW5nczEwUm9vdE9iamVjdEQxRXYK
IF9fWk4zSlNDOEJpbmRpbmdzMTNSdW50aW1lT2JqZWN0MTFnZXRDYWxsRGF0YUVQTlNfNkpTQ2Vs
bEVSTlNfOENhbGxEYXRhRQogX19aTjNKU0M4QmluZGluZ3MxM1J1bnRpbWVPYmplY3QxNGRlbGV0
ZVByb3BlcnR5RVBOU185RXhlY1N0YXRlRVJLTlNfMTBJZGVudGlmaWVyRQogX19aTjNKU0M4Qmlu
ZGluZ3MxM1J1bnRpbWVPYmplY3QxNGZpbmlzaENyZWF0aW9uRVBOU18xNEpTR2xvYmFsT2JqZWN0
RQotX19aTjNKU0M4QmluZGluZ3MxM1J1bnRpbWVPYmplY3QxNmdldENvbnN0cnVjdERhdGFFUk5T
XzEzQ29uc3RydWN0RGF0YUUKIF9fWk4zSlNDOEJpbmRpbmdzMTNSdW50aW1lT2JqZWN0MThnZXRP
d25Qcm9wZXJ0eVNsb3RFUE5TXzlFeGVjU3RhdGVFUktOU18xMElkZW50aWZpZXJFUk5TXzEyUHJv
cGVydHlTbG90RQogX19aTjNKU0M4QmluZGluZ3MxM1J1bnRpbWVPYmplY3QxOWdldE93blByb3Bl
cnR5TmFtZXNFUE5TXzlFeGVjU3RhdGVFUk5TXzE3UHJvcGVydHlOYW1lQXJyYXlFTlNfMTVFbnVt
ZXJhdGlvbk1vZGVFCitfX1pOM0pTQzhCaW5kaW5nczEzUnVudGltZU9iamVjdDIzZ2V0Q29uc3Ry
dWN0RGF0YVZpcnR1YWxFUk5TXzEzQ29uc3RydWN0RGF0YUUKIF9fWk4zSlNDOEJpbmRpbmdzMTNS
dW50aW1lT2JqZWN0MjRnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JFUE5TXzlFeGVjU3RhdGVFUktO
U18xMElkZW50aWZpZXJFUk5TXzE4UHJvcGVydHlEZXNjcmlwdG9yRQogX19aTjNKU0M4QmluZGlu
Z3MxM1J1bnRpbWVPYmplY3QzcHV0RVBOU185RXhlY1N0YXRlRVJLTlNfMTBJZGVudGlmaWVyRU5T
XzdKU1ZhbHVlRVJOU18xNVB1dFByb3BlcnR5U2xvdEUKIF9fWk4zSlNDOEJpbmRpbmdzMTNSdW50
aW1lT2JqZWN0NnNfaW5mb0UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTQXVkaW9Db25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0F1
ZGlvQ29uc3RydWN0b3IuY3BwCmluZGV4IDNhY2MwYmJlMTIyNzNmMTRmOWFiYzYwYTRjZDU2NWIx
MDFkZTI3NzAuLjc1NjAzOWY3MzYzZDg3YjQ1YTVmYmQ5NzBlNjZlOWY5ZjIwMWIwNDcgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQXVkaW9Db25zdHJ1Y3Rvci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNBdWRpb0NvbnN0cnVjdG9yLmNwcApA
QCAtNzUsNyArNzUsNyBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjb25z
dHJ1Y3RBdWRpbyhFeGVjU3RhdGUqIGV4ZWMpCiAgICAgICAgIEhUTUxBdWRpb0VsZW1lbnQ6OmNy
ZWF0ZUZvckpTQ29uc3RydWN0b3IoZG9jdW1lbnQsIHNyYykpKSk7CiB9CiAKLUNvbnN0cnVjdFR5
cGUgSlNBdWRpb0NvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhKENvbnN0cnVjdERhdGEmIGNv
bnN0cnVjdERhdGEpCitDb25zdHJ1Y3RUeXBlIEpTQXVkaW9Db25zdHJ1Y3Rvcjo6Z2V0Q29uc3Ry
dWN0RGF0YVZpcnR1YWwoQ29uc3RydWN0RGF0YSYgY29uc3RydWN0RGF0YSkKIHsKICAgICByZXR1
cm4gZ2V0Q29uc3RydWN0RGF0YSh0aGlzLCBjb25zdHJ1Y3REYXRhKTsKIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQXVkaW9Db25zdHJ1Y3Rvci5oIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNBdWRpb0NvbnN0cnVjdG9yLmgKaW5kZXggM2JlNDVlMzE5
YTE1MmM2ZmYxNmQyMGU0MzkzNGQ1NTEzMmQyZGQ0Ny4uMDdlYzNkNTYxYmUzMTgyYTQwYjU3MzBh
ODlkYjBiNmUxOTNlOTUwZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNBdWRpb0NvbnN0cnVjdG9yLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNB
dWRpb0NvbnN0cnVjdG9yLmgKQEAgLTU1LDcgKzU1LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
ICAgIHByaXZhdGU6CiAgICAgICAgIEpTQXVkaW9Db25zdHJ1Y3RvcihKU0M6OlN0cnVjdHVyZSos
IEpTRE9NR2xvYmFsT2JqZWN0Kik7CiAgICAgICAgIHZvaWQgZmluaXNoQ3JlYXRpb24oSlNDOjpF
eGVjU3RhdGUqLCBKU0RPTUdsb2JhbE9iamVjdCopOwotICAgICAgICB2aXJ0dWFsIEpTQzo6Q29u
c3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKEpTQzo6Q29uc3RydWN0RGF0YSYpOworICAgICAg
ICB2aXJ0dWFsIEpTQzo6Q29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhVmlydHVhbChKU0M6
OkNvbnN0cnVjdERhdGEmKTsKICAgICAgICAgc3RhdGljIEpTQzo6Q29uc3RydWN0VHlwZSBnZXRD
b25zdHJ1Y3REYXRhKEpTQzo6SlNDZWxsKiwgSlNDOjpDb25zdHJ1Y3REYXRhJik7CiAgICAgfTsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNJbWFnZUNvbnN0cnVj
dG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTSW1hZ2VDb25zdHJ1Y3Rvci5j
cHAKaW5kZXggMTkxNDc4NjJjNGNkNDNhNzQwNjVjYTE2NTMzNjZkYzY5ZjkyZDRmMS4uYTg3NTAy
YTNjMTFiOTBjYmUxMTNmMDExZmU4ZDNkOThlMmEwZmRjNyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNJbWFnZUNvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0ltYWdlQ29uc3RydWN0b3IuY3BwCkBAIC03NCw3ICs3NCw3IEBA
IHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdEltYWdlKEV4ZWNT
dGF0ZSogZXhlYykKICAgICAgICAgSFRNTEltYWdlRWxlbWVudDo6Y3JlYXRlRm9ySlNDb25zdHJ1
Y3Rvcihkb2N1bWVudCwgb3B0aW9uYWxXaWR0aCwgb3B0aW9uYWxIZWlnaHQpKSkpOwogfQogCi1D
b25zdHJ1Y3RUeXBlIEpTSW1hZ2VDb25zdHJ1Y3Rvcjo6Z2V0Q29uc3RydWN0RGF0YShDb25zdHJ1
Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQorQ29uc3RydWN0VHlwZSBKU0ltYWdlQ29uc3RydWN0b3I6
OmdldENvbnN0cnVjdERhdGFWaXJ0dWFsKENvbnN0cnVjdERhdGEmIGNvbnN0cnVjdERhdGEpCiB7
CiAgICAgcmV0dXJuIGdldENvbnN0cnVjdERhdGEodGhpcywgY29uc3RydWN0RGF0YSk7CiB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0ltYWdlQ29uc3RydWN0b3Iu
aCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTSW1hZ2VDb25zdHJ1Y3Rvci5oCmluZGV4
IGFiM2ZkMzE3ZjU4YzUwOWU3YWE1ODljOTk4OWU2YTY4YjYwMzc5MTguLjM5NWI2MTZkOTFjMDdk
MmUwYjBkMjVjYTg3MDZiNGNkNGZhODJjNTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTSW1hZ2VDb25zdHJ1Y3Rvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTSW1hZ2VDb25zdHJ1Y3Rvci5oCkBAIC00Niw3ICs0Niw3IEBAIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKICAgICBwcml2YXRlOgogICAgICAgICBKU0ltYWdlQ29uc3RydWN0b3IoSlNDOjpT
dHJ1Y3R1cmUqLCBKU0RPTUdsb2JhbE9iamVjdCopOwogICAgICAgICB2b2lkIGZpbmlzaENyZWF0
aW9uKEpTQzo6RXhlY1N0YXRlKiwgSlNET01HbG9iYWxPYmplY3QqKTsKLSAgICAgICAgdmlydHVh
bCBKU0M6OkNvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YShKU0M6OkNvbnN0cnVjdERhdGEm
KTsKKyAgICAgICAgdmlydHVhbCBKU0M6OkNvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YVZp
cnR1YWwoSlNDOjpDb25zdHJ1Y3REYXRhJik7CiAgICAgICAgIHN0YXRpYyBKU0M6OkNvbnN0cnVj
dFR5cGUgZ2V0Q29uc3RydWN0RGF0YShKU0M6OkpTQ2VsbCosIEpTQzo6Q29uc3RydWN0RGF0YSYp
OwogICAgIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTT3B0
aW9uQ29uc3RydWN0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNPcHRpb25D
b25zdHJ1Y3Rvci5jcHAKaW5kZXggMDIyYTNjZGYxZjMyYTgxNzc1NDJkNTVhMzk3NTAyM2ZjYzE5
YmVhZC4uOTgwZjlhNjNkN2ZmMzEzN2Y4OGI3ZTcwMDMzOTM5MWIzY2MzYzY5MSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNPcHRpb25Db25zdHJ1Y3Rvci5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNPcHRpb25Db25zdHJ1Y3Rvci5jcHAKQEAg
LTc1LDcgKzc1LDcgQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgY29uc3Ry
dWN0SFRNTE9wdGlvbkVsZW1lbnQoRXhlY1N0YXRlKiBleGVjKQogICAgIHJldHVybiBKU1ZhbHVl
OjplbmNvZGUoYXNPYmplY3QodG9KUyhleGVjLCBqc0NvbnN0cnVjdG9yLT5nbG9iYWxPYmplY3Qo
KSwgZWxlbWVudC5yZWxlYXNlKCkpKSk7CiB9CiAKLUNvbnN0cnVjdFR5cGUgSlNPcHRpb25Db25z
dHJ1Y3Rvcjo6Z2V0Q29uc3RydWN0RGF0YShDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQor
Q29uc3RydWN0VHlwZSBKU09wdGlvbkNvbnN0cnVjdG9yOjpnZXRDb25zdHJ1Y3REYXRhVmlydHVh
bChDb25zdHJ1Y3REYXRhJiBjb25zdHJ1Y3REYXRhKQogewogICAgIHJldHVybiBnZXRDb25zdHJ1
Y3REYXRhKHRoaXMsIGNvbnN0cnVjdERhdGEpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNPcHRpb25Db25zdHJ1Y3Rvci5oIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNPcHRpb25Db25zdHJ1Y3Rvci5oCmluZGV4IDAxYjhlY2JmNGFmYjVkYjBkZGQ4
OThmZjE4ZmFiNGZiYzNiZTYwMDcuLmY5NjFhODhhNWM1N2I2M2FhMTUyOTJlOWQ4YzA1OTRjN2Vj
YzI3ODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTT3B0aW9uQ29u
c3RydWN0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU09wdGlvbkNvbnN0
cnVjdG9yLmgKQEAgLTQ3LDcgKzQ3LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIHByaXZh
dGU6CiAgICAgICAgIEpTT3B0aW9uQ29uc3RydWN0b3IoSlNDOjpTdHJ1Y3R1cmUqLCBKU0RPTUds
b2JhbE9iamVjdCopOwogICAgICAgICB2b2lkIGZpbmlzaENyZWF0aW9uKEpTQzo6RXhlY1N0YXRl
KiwgSlNET01HbG9iYWxPYmplY3QqKTsKLSAgICAgICAgdmlydHVhbCBKU0M6OkNvbnN0cnVjdFR5
cGUgZ2V0Q29uc3RydWN0RGF0YShKU0M6OkNvbnN0cnVjdERhdGEmKTsKKyAgICAgICAgdmlydHVh
bCBKU0M6OkNvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoSlNDOjpDb25zdHJ1
Y3REYXRhJik7CiAgICAgICAgIHN0YXRpYyBKU0M6OkNvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0
RGF0YShKU0M6OkpTQ2VsbCosIEpTQzo6Q29uc3RydWN0RGF0YSYpOwogICAgIH07CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdEZ1bmN0aW9uQ2FsbC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHRGdW5jdGlvbkNhbGwuY3BwCmluZGV4
IDUxOGE3ODdmZDllNThjMjE5OWExZTcxMmU3ZmYxMjljMjQ5ZTc3MjQuLjE5MDk5YTk3NjhlNjY5
NzQxZGEyOGJkNGRkMTRmMTdmMzM4ZDk1YTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL1NjcmlwdEZ1bmN0aW9uQ2FsbC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvU2NyaXB0RnVuY3Rpb25DYWxsLmNwcApAQCAtMTc1LDcgKzE3NSw3IEBAIFNjcmlw
dE9iamVjdCBTY3JpcHRGdW5jdGlvbkNhbGw6OmNvbnN0cnVjdChib29sJiBoYWRFeGNlcHRpb24s
IGJvb2wgcmVwb3J0RXhjZXB0CiAgICAgfQogCiAgICAgQ29uc3RydWN0RGF0YSBjb25zdHJ1Y3RE
YXRhOwotICAgIENvbnN0cnVjdFR5cGUgY29uc3RydWN0VHlwZSA9IGNvbnN0cnVjdG9yLT5nZXRD
b25zdHJ1Y3REYXRhKGNvbnN0cnVjdERhdGEpOworICAgIENvbnN0cnVjdFR5cGUgY29uc3RydWN0
VHlwZSA9IGNvbnN0cnVjdG9yLT5nZXRDb25zdHJ1Y3REYXRhVmlydHVhbChjb25zdHJ1Y3REYXRh
KTsKICAgICBpZiAoY29uc3RydWN0VHlwZSA9PSBDb25zdHJ1Y3RUeXBlTm9uZSkKICAgICAgICAg
cmV0dXJuIFNjcmlwdE9iamVjdCgpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCmluZGV4IDJkODEzNDcwYzdjYTE3MzkyZGVmYjIx
MWQ2MjUyMTgyZDk2ZjBhMWEuLmE0YTE4NWRhMTA4MWM3OWQ1Y2I4MjNiMDM4NzI0MTAyODFjYjQ4
MWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVy
YXRvckpTLnBtCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVy
YXRvckpTLnBtCkBAIC0zMTcwLDcgKzMxNzAsNyBAQCBzdWIgR2VuZXJhdGVDb25zdHJ1Y3RvckRl
Y2xhcmF0aW9uCiAKICAgICBpZiAoJGNhbkNvbnN0cnVjdCkgewogICAgICAgICBwdXNoKEAkb3V0
cHV0QXJyYXksICIgICAgc3RhdGljIEpTQzo6RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBj
b25zdHJ1Y3Qke2NsYXNzTmFtZX0oSlNDOjpFeGVjU3RhdGUqKTtcbiIpOwotICAgICAgICBwdXNo
KEAkb3V0cHV0QXJyYXksICIgICAgdmlydHVhbCBKU0M6OkNvbnN0cnVjdFR5cGUgZ2V0Q29uc3Ry
dWN0RGF0YShKU0M6OkNvbnN0cnVjdERhdGEmKTtcbiIpOworICAgICAgICBwdXNoKEAkb3V0cHV0
QXJyYXksICIgICAgdmlydHVhbCBKU0M6OkNvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YVZp
cnR1YWwoSlNDOjpDb25zdHJ1Y3REYXRhJik7XG4iKTsKICAgICAgICAgcHVzaChAJG91dHB1dEFy
cmF5LCAiICAgIHN0YXRpYyBKU0M6OkNvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YShKU0M6
OkpTQ2VsbCosIEpTQzo6Q29uc3RydWN0RGF0YSYpO1xuIik7CiAgICAgfQogICAgIHB1c2goQCRv
dXRwdXRBcnJheSwgIn07XG5cbiIpOwpAQCAtMzIzNiw3ICszMjM2LDcgQEAgc3ViIEdlbmVyYXRl
Q29uc3RydWN0b3JEZWZpbml0aW9uCiAgICAgICAgICAgICBwdXNoKEAkb3V0cHV0QXJyYXksICJ9
XG5cbiIpOwogICAgICAgICB9CiAKLSAgICAgICAgcHVzaChAJG91dHB1dEFycmF5LCAiQ29uc3Ry
dWN0VHlwZSAke2NvbnN0cnVjdG9yQ2xhc3NOYW1lfTo6Z2V0Q29uc3RydWN0RGF0YShDb25zdHJ1
Y3REYXRhJiBjb25zdHJ1Y3REYXRhKVxuIik7CisgICAgICAgIHB1c2goQCRvdXRwdXRBcnJheSwg
IkNvbnN0cnVjdFR5cGUgJHtjb25zdHJ1Y3RvckNsYXNzTmFtZX06OmdldENvbnN0cnVjdERhdGFW
aXJ0dWFsKENvbnN0cnVjdERhdGEmIGNvbnN0cnVjdERhdGEpXG4iKTsKICAgICAgICAgcHVzaChA
JG91dHB1dEFycmF5LCAie1xuIik7CiAgICAgICAgIHB1c2goQCRvdXRwdXRBcnJheSwgIiAgICBy
ZXR1cm4gZ2V0Q29uc3RydWN0RGF0YSh0aGlzLCBjb25zdHJ1Y3REYXRhKTtcbiIpOwogICAgICAg
ICBwdXNoKEAkb3V0cHV0QXJyYXksICJ9XG5cbiIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW50ZXJmYWNlLmNwcAppbmRl
eCBkYTk5MTFlYzVkMmJlODE2ZjAyYTE0YzgzYzA4ZTJkZTIyZjAwMjhjLi5iYmU2MDZiZGMwYjA5
MzA2MDZkNTNkZTk3OWE1MzU0YWY4NTRmMDFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW50ZXJmYWNlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW50ZXJmYWNlLmNwcApAQCAt
OTYsNyArOTYsNyBAQCBwdWJsaWM6CiBwcm90ZWN0ZWQ6CiAgICAgc3RhdGljIGNvbnN0IHVuc2ln
bmVkIFN0cnVjdHVyZUZsYWdzID0gSlNDOjpPdmVycmlkZXNHZXRPd25Qcm9wZXJ0eVNsb3QgfCBK
U0M6OkltcGxlbWVudHNIYXNJbnN0YW5jZSB8IERPTUNvbnN0cnVjdG9yT2JqZWN0OjpTdHJ1Y3R1
cmVGbGFnczsKICAgICBzdGF0aWMgSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGNv
bnN0cnVjdEpTVGVzdEludGVyZmFjZShKU0M6OkV4ZWNTdGF0ZSopOwotICAgIHZpcnR1YWwgSlND
OjpDb25zdHJ1Y3RUeXBlIGdldENvbnN0cnVjdERhdGEoSlNDOjpDb25zdHJ1Y3REYXRhJik7Cisg
ICAgdmlydHVhbCBKU0M6OkNvbnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoSlND
OjpDb25zdHJ1Y3REYXRhJik7CiAgICAgc3RhdGljIEpTQzo6Q29uc3RydWN0VHlwZSBnZXRDb25z
dHJ1Y3REYXRhKEpTQzo6SlNDZWxsKiwgSlNDOjpDb25zdHJ1Y3REYXRhJik7CiB9OwogCkBAIC0x
MzIsNyArMTMyLDcgQEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBKU1Rlc3RJbnRlcmZh
Y2VDb25zdHJ1Y3Rvcjo6Y29uc3RydWN0SlNUZXN0SW50ZXJmYWMKICAgICByZXR1cm4gSlNWYWx1
ZTo6ZW5jb2RlKGFzT2JqZWN0KHRvSlMoZXhlYywgc3RhdGljX2Nhc3Q8SlNUZXN0SW50ZXJmYWNl
Q29uc3RydWN0b3IqPihleGVjLT5jYWxsZWUoKSktPmdsb2JhbE9iamVjdCgpLCBUZXN0SW50ZXJm
YWNlOjpjcmVhdGUoY29udGV4dCkpKSk7CiB9CiAKLUNvbnN0cnVjdFR5cGUgSlNUZXN0SW50ZXJm
YWNlQ29uc3RydWN0b3I6OmdldENvbnN0cnVjdERhdGEoQ29uc3RydWN0RGF0YSYgY29uc3RydWN0
RGF0YSkKK0NvbnN0cnVjdFR5cGUgSlNUZXN0SW50ZXJmYWNlQ29uc3RydWN0b3I6OmdldENvbnN0
cnVjdERhdGFWaXJ0dWFsKENvbnN0cnVjdERhdGEmIGNvbnN0cnVjdERhdGEpCiB7CiAgICAgcmV0
dXJuIGdldENvbnN0cnVjdERhdGEodGhpcywgY29uc3RydWN0RGF0YSk7CiB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9vYmplY3QuY3BwIGIvU291cmNlL1dlYkNv
cmUvYnJpZGdlL3J1bnRpbWVfb2JqZWN0LmNwcAppbmRleCAxMzM4Y2Y4NjVjZTRjZjRhYmRlMDZh
OTRkYTQyZjc2NDEyNDQ3MTZmLi5mN2YzMDY4Yjk1MjIwNWEyYTAwNzBlNzg3YzBiZWJjMjI2NTE2
Y2JiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9vYmplY3QuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX29iamVjdC5jcHAKQEAgLTMwNCw3
ICszMDQsNyBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBjYWxsUnVudGlt
ZUNvbnN0cnVjdG9yKEV4ZWNTdGF0ZSogZXhlYykKICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2Rl
KHJlc3VsdC5pc09iamVjdCgpID8gc3RhdGljX2Nhc3Q8SlNPYmplY3QqPihyZXN1bHQuYXNDZWxs
KCkpIDogY29uc3RydWN0b3IpOwogfQogCi1Db25zdHJ1Y3RUeXBlIFJ1bnRpbWVPYmplY3Q6Omdl
dENvbnN0cnVjdERhdGEoQ29uc3RydWN0RGF0YSYgY29uc3RydWN0RGF0YSkKK0NvbnN0cnVjdFR5
cGUgUnVudGltZU9iamVjdDo6Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoQ29uc3RydWN0RGF0YSYg
Y29uc3RydWN0RGF0YSkKIHsKICAgICByZXR1cm4gZ2V0Q29uc3RydWN0RGF0YSh0aGlzLCBjb25z
dHJ1Y3REYXRhKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1l
X29iamVjdC5oIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfb2JqZWN0LmgKaW5kZXgg
MDY2ZDc3MzdlMzI0NjRlNTg2MjExODVlNjRhNTczM2RiMWVlZGVmYy4uMGM2YTkxNWRhODJkNTk4
Nzc3NjVlMmRiMjg2NjRlYjBlYWNlYTMwYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYnJp
ZGdlL3J1bnRpbWVfb2JqZWN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVf
b2JqZWN0LmgKQEAgLTU0LDcgKzU0LDcgQEAgcHVibGljOgogICAgIHN0YXRpYyBib29sIGRlbGV0
ZVByb3BlcnR5KEpTQ2VsbCosIEV4ZWNTdGF0ZSosIGNvbnN0IElkZW50aWZpZXImIHByb3BlcnR5
TmFtZSk7CiAgICAgdmlydHVhbCBKU1ZhbHVlIGRlZmF1bHRWYWx1ZShFeGVjU3RhdGUqLCBQcmVm
ZXJyZWRQcmltaXRpdmVUeXBlKSBjb25zdDsKICAgICBzdGF0aWMgQ2FsbFR5cGUgZ2V0Q2FsbERh
dGEoSlNDZWxsKiwgQ2FsbERhdGEmKTsKLSAgICB2aXJ0dWFsIENvbnN0cnVjdFR5cGUgZ2V0Q29u
c3RydWN0RGF0YShDb25zdHJ1Y3REYXRhJik7CisgICAgdmlydHVhbCBDb25zdHJ1Y3RUeXBlIGdl
dENvbnN0cnVjdERhdGFWaXJ0dWFsKENvbnN0cnVjdERhdGEmKTsKICAgICBzdGF0aWMgQ29uc3Ry
dWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKEpTQ2VsbCosIENvbnN0cnVjdERhdGEmKTsKIAogICAg
IHZpcnR1YWwgdm9pZCBnZXRPd25Qcm9wZXJ0eU5hbWVzKEV4ZWNTdGF0ZSosIFByb3BlcnR5TmFt
ZUFycmF5JiwgRW51bWVyYXRpb25Nb2RlIG1vZGUgPSBFeGNsdWRlRG9udEVudW1Qcm9wZXJ0aWVz
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJL
aXQvbWFjL0NoYW5nZUxvZwppbmRleCA0ODgxYWI3ODcyYmU2ZWE1NzQ5YzcyMWQ2YjY0MzhiMjYz
MzY2ZDVjLi4yOTE4YTE5NTdmZGExNzY5NmMyNWMwM2FjNTdiNzk2MzdhZTM0NTUzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9tYWMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTEtMTAtMTIgIE1hcmsgSGFobmVuYmVyZyAg
PG1oYWhuZW5iZXJnQGFwcGxlLmNvbT4KKworICAgICAgICBSZW5hbWUgdmlydHVhbCBnZXRDb25z
dHJ1Y3REYXRhIHRvIGdldENvbnN0cnVjdERhdGFWaXJ0dWFsCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02OTg3MgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlbmFtZWQgdmlydHVhbCBnZXRDb25zdHJ1Y3RE
YXRhIGZ1bmN0aW9ucyB0byBnZXRDb25zdHJ1Y3REYXRhVmlydHVhbCB0byAKKyAgICAgICAgYXZv
aWQgY29uZmxpY3RzIHdoZW4gd2UgYWRkIHN0YXRpYyBnZXRDb25zdHJ1Y3REYXRhIHRvIHRoZSBN
ZXRob2RUYWJsZS4KKworICAgICAgICAqIFBsdWdpbnMvSG9zdGVkL05ldHNjYXBlUGx1Z2luSW5z
dGFuY2VQcm94eS5tbToKKyAgICAgICAgKFdlYktpdDo6TmV0c2NhcGVQbHVnaW5JbnN0YW5jZVBy
b3h5Ojpjb25zdHJ1Y3QpOgorCiAyMDExLTEwLTEwICBOYXRlIENoYXBpbiAgPGphcGhldEBjaHJv
bWl1bS5vcmc+CiAKICAgICAgICAgVXNlIGEgQ2FjaGVkSW1hZ2VDbGllbnQgaW5zdGVhZCBvZiBD
YWNoZWRSZXNvdXJjZUNsaWVudApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvUGx1Z2lu
cy9Ib3N0ZWQvTmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5Lm1tIGIvU291cmNlL1dlYktpdC9t
YWMvUGx1Z2lucy9Ib3N0ZWQvTmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5Lm1tCmluZGV4IDY2
MjcyMDM3MTg5N2RjOTQ4NmU1NDcwMGY2ZmQwNjE4NTlhN2I2MjcuLjVjNTBmOGQxOTJlMzkwMjc4
MmIwNTZjNTQzM2FhNjRjZTBmNTUxNTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1Bs
dWdpbnMvSG9zdGVkL05ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eS5tbQorKysgYi9Tb3VyY2Uv
V2ViS2l0L21hYy9QbHVnaW5zL0hvc3RlZC9OZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJveHkubW0K
QEAgLTk3OCw3ICs5NzgsNyBAQCBib29sIE5ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eTo6Y29u
c3RydWN0KHVpbnQzMl90IG9iamVjdElELCBkYXRhX3QgYXJndW1lbnRzRAogICAgIEpTTG9jayBs
b2NrKFNpbGVuY2VBc3NlcnRpb25zT25seSk7CiAKICAgICBDb25zdHJ1Y3REYXRhIGNvbnN0cnVj
dERhdGE7Ci0gICAgQ29uc3RydWN0VHlwZSBjb25zdHJ1Y3RUeXBlID0gb2JqZWN0LT5nZXRDb25z
dHJ1Y3REYXRhKGNvbnN0cnVjdERhdGEpOworICAgIENvbnN0cnVjdFR5cGUgY29uc3RydWN0VHlw
ZSA9IG9iamVjdC0+Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoY29uc3RydWN0RGF0YSk7CiAgICAg
aWYgKGNvbnN0cnVjdFR5cGUgPT0gQ29uc3RydWN0VHlwZU5vbmUpCiAgICAgICAgIHJldHVybiBm
YWxzZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nIGIvU291cmNlL1dl
YktpdDIvQ2hhbmdlTG9nCmluZGV4IDJiNTg4YTcwZTkyMTAyZjQzNmMwYjMyYTljOGRiZjY5N2Qy
NTNkMTkuLmM5MTFhMTZkY2MwYTllYWZmZjMxNjkzNWQ3OTY3MDkzNWY4MGZhMDEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwxNyBAQAorMjAxMS0xMC0xMiAgTWFyayBIYWhuZW5iZXJnICA8bWhhaG5l
bmJlcmdAYXBwbGUuY29tPgorCisgICAgICAgIFJlbmFtZSB2aXJ0dWFsIGdldENvbnN0cnVjdERh
dGEgdG8gZ2V0Q29uc3RydWN0RGF0YVZpcnR1YWwKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTY5ODcyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgUmVuYW1lZCB2aXJ0dWFsIGdldENvbnN0cnVjdERhdGEgZnVu
Y3Rpb25zIHRvIGdldENvbnN0cnVjdERhdGFWaXJ0dWFsIHRvIAorICAgICAgICBhdm9pZCBjb25m
bGljdHMgd2hlbiB3ZSBhZGQgc3RhdGljIGdldENvbnN0cnVjdERhdGEgdG8gdGhlIE1ldGhvZFRh
YmxlLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9QbHVnaW5zL05ldHNjYXBlL0pTTlBPYmplY3Qu
Y3BwOgorICAgICAgICAoV2ViS2l0OjpKU05QT2JqZWN0OjpnZXRDb25zdHJ1Y3REYXRhVmlydHVh
bCk6CisgICAgICAgICogV2ViUHJvY2Vzcy9QbHVnaW5zL05ldHNjYXBlL0pTTlBPYmplY3QuaDoK
KwogMjAxMS0xMC0xMiAgSmVzdXMgU2FuY2hlei1QYWxlbmNpYSAgPGplc3VzLnBhbGVuY2lhQG9w
ZW5ib3NzYS5vcmc+CiAKICAgICAgICAgW1F0XVtXSzJdIE1vdmUgcXdlYmVycm9yKiBvdXQgb2Yg
QVBJL3F0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvTmV0
c2NhcGUvSlNOUE9iamVjdC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMv
TmV0c2NhcGUvSlNOUE9iamVjdC5jcHAKaW5kZXggNTNmNTg2MDFjMGE5NjY4MWM4NTQxOGJjZDM0
ZGNhYjQyZTAwYTFmNC4uZWM1ZWUyYmVmOTk2ZTBjYWVjZWY5NTA2ZGM2YWMzMmMwZDBmMTgxYiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL05ldHNjYXBlL0pT
TlBPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9OZXRz
Y2FwZS9KU05QT2JqZWN0LmNwcApAQCAtMjM2LDcgKzIzNiw3IEBAIHN0YXRpYyBFbmNvZGVkSlNW
YWx1ZSBKU0NfSE9TVF9DQUxMIGNvbnN0cnVjdFdpdGhDb25zdHJ1Y3RvcihFeGVjU3RhdGUqIGV4
ZWMpCiAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShzdGF0aWNfY2FzdDxKU05QT2JqZWN0Kj4o
Y29uc3RydWN0b3IpLT5jYWxsQ29uc3RydWN0b3IoZXhlYykpOwogfQogCi1Db25zdHJ1Y3RUeXBl
IEpTTlBPYmplY3Q6OmdldENvbnN0cnVjdERhdGEoQ29uc3RydWN0RGF0YSYgY29uc3RydWN0RGF0
YSkKK0NvbnN0cnVjdFR5cGUgSlNOUE9iamVjdDo6Z2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoQ29u
c3RydWN0RGF0YSYgY29uc3RydWN0RGF0YSkKIHsKICAgICByZXR1cm4gZ2V0Q29uc3RydWN0RGF0
YSh0aGlzLCBjb25zdHJ1Y3REYXRhKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvUGx1Z2lucy9OZXRzY2FwZS9KU05QT2JqZWN0LmggYi9Tb3VyY2UvV2ViS2l0Mi9X
ZWJQcm9jZXNzL1BsdWdpbnMvTmV0c2NhcGUvSlNOUE9iamVjdC5oCmluZGV4IDIzZmZjOGZjOTIz
MmRiMzRhZjAyMTNjZjczZTcxY2FlMjk3NTYxNjAuLjA4NjQzZjc2NWE5NGQ1MGI3MDY0NmY1NTdk
YzBiODAxYTcyYjJiMWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1
Z2lucy9OZXRzY2FwZS9KU05QT2JqZWN0LmgKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9QbHVnaW5zL05ldHNjYXBlL0pTTlBPYmplY3QuaApAQCAtODAsNyArODAsNyBAQCBwcml2YXRl
OgogICAgIH0KIAogICAgIHN0YXRpYyBKU0M6OkNhbGxUeXBlIGdldENhbGxEYXRhKEpTQzo6SlND
ZWxsKiwgSlNDOjpDYWxsRGF0YSYpOwotICAgIHZpcnR1YWwgSlNDOjpDb25zdHJ1Y3RUeXBlIGdl
dENvbnN0cnVjdERhdGEoSlNDOjpDb25zdHJ1Y3REYXRhJik7CisgICAgdmlydHVhbCBKU0M6OkNv
bnN0cnVjdFR5cGUgZ2V0Q29uc3RydWN0RGF0YVZpcnR1YWwoSlNDOjpDb25zdHJ1Y3REYXRhJik7
CiAgICAgc3RhdGljIEpTQzo6Q29uc3RydWN0VHlwZSBnZXRDb25zdHJ1Y3REYXRhKEpTQzo6SlND
ZWxsKiwgSlNDOjpDb25zdHJ1Y3REYXRhJik7CiAKICAgICB2aXJ0dWFsIGJvb2wgZ2V0T3duUHJv
cGVydHlTbG90KEpTQzo6RXhlY1N0YXRlKiwgY29uc3QgSlNDOjpJZGVudGlmaWVyJiBwcm9wZXJ0
eU5hbWUsIEpTQzo6UHJvcGVydHlTbG90Jik7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>