<?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>143679</bug_id>
          
          <creation_ts>2015-04-13 14:40:43 -0700</creation_ts>
          <short_desc>Rename SharedMemory::create overloads</short_desc>
          <delta_ts>2015-04-13 16:23:33 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Anders Carlsson">andersca</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          <cc>achristensen</cc>
    
    <cc>bdakin</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1084970</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-04-13 14:40:43 -0700</bug_when>
    <thetext>Rename SharedMemory::create overloads</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1084971</commentid>
    <comment_count>1</comment_count>
      <attachid>250676</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-04-13 14:41:57 -0700</bug_when>
    <thetext>Created attachment 250676
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1084972</commentid>
    <comment_count>2</comment_count>
      <attachid>250677</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-04-13 14:55:58 -0700</bug_when>
    <thetext>Created attachment 250677
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1084978</commentid>
    <comment_count>3</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-04-13 15:27:33 -0700</bug_when>
    <thetext>Committed r182760: &lt;http://trac.webkit.org/changeset/182760&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1084998</commentid>
    <comment_count>4</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2015-04-13 16:23:33 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/182764 fixed iOS</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>250676</attachid>
            <date>2015-04-13 14:41:57 -0700</date>
            <delta_ts>2015-04-13 14:55:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-143679-20150413144108.patch</filename>
            <type>text/plain</type>
            <size>20935</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgyNzUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggMjc4MDBhZjc1MTU3MGYz
MTA5MWQzN2RmZmM4OGFmYmQ3OTkyZGFjOS4uYjA2NWJkMjNjZTc0ZjA5NDJlZGQ0ODYzY2VmZjg2
MDYxMTI2OGM4OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDUzIEBACiAyMDE1LTA0LTEzICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CiAKKyAgICAgICAgUmVuYW1lIFNoYXJl
ZE1lbW9yeTo6Y3JlYXRlIG92ZXJsb2FkcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTQzNjc5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgUmVuYW1lIHRoZSBTaGFyZWRNZW1vcnk6OmNyZWF0ZSBvdmVybG9h
ZCB0aGF0IGFsbG9jYXRlcyBtZW1vcnkgdG8gU2hhcmVkTWVtb3J5OjphbGxvY2F0ZSwKKyAgICAg
ICAgYW5kIHRoZSBTaGFyZWRNZW1vcnk6OmNyZWF0ZSBvdmVybG9hZCB0aGF0IG1hcHMgaW4gYSBo
YW5kbGUgdG8gU2hhcmVkTWVtb3J5OjptYXAuCisKKyAgICAgICAgKiBQbGF0Zm9ybS9TaGFyZWRN
ZW1vcnkuaDoKKyAgICAgICAgKiBQbGF0Zm9ybS9tYWMvU2hhcmVkTWVtb3J5TWFjLmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6U2hhcmVkTWVtb3J5OjphbGxvY2F0ZSk6CisgICAgICAgIChXZWJLaXQ6
OlNoYXJlZE1lbW9yeTo6bWFwKToKKyAgICAgICAgKFdlYktpdDo6U2hhcmVkTWVtb3J5OjpjcmVh
dGUpOiBEZWxldGVkLgorICAgICAgICAqIFNoYXJlZC9TaGFyZWFibGVCaXRtYXAuY3BwOgorICAg
ICAgICAoV2ViS2l0OjpTaGFyZWFibGVCaXRtYXA6OmNyZWF0ZVNoYXJlYWJsZSk6CisgICAgICAg
IChXZWJLaXQ6OlNoYXJlYWJsZUJpdG1hcDo6Y3JlYXRlKToKKyAgICAgICAgKiBTaGFyZWQvU2hh
cmVhYmxlUmVzb3VyY2UuY3BwOgorICAgICAgICAoV2ViS2l0OjpTaGFyZWFibGVSZXNvdXJjZTo6
Y3JlYXRlKToKKyAgICAgICAgKiBTaGFyZWQvU2hhcmVhYmxlUmVzb3VyY2UuaDoKKyAgICAgICAg
KiBTaGFyZWQvV2ViQ29tcGlsZWRDb250ZW50RXh0ZW5zaW9uLmNwcDoKKyAgICAgICAgKFdlYktp
dDo6V2ViQ29tcGlsZWRDb250ZW50RXh0ZW5zaW9uOjpjcmVhdGVGcm9tQ29tcGlsZWRDb250ZW50
RXh0ZW5zaW9uRGF0YSk6CisgICAgICAgICogU2hhcmVkL1dlYkNvbXBpbGVkQ29udGVudEV4dGVu
c2lvbkRhdGEuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJDb21waWxlZENvbnRlbnRFeHRlbnNp
b25EYXRhOjpkZWNvZGUpOgorICAgICAgICAqIFNoYXJlZC9XZWJIaXRUZXN0UmVzdWx0LmNwcDoK
KyAgICAgICAgKFdlYktpdDo6V2ViSGl0VGVzdFJlc3VsdDo6RGF0YTo6RGF0YSk6CisgICAgICAg
IChXZWJLaXQ6OldlYkhpdFRlc3RSZXN1bHQ6OkRhdGE6OmRlY29kZSk6CisgICAgICAgICogVUlQ
cm9jZXNzL0NvY29hL1dlYlBhc3RlYm9hcmRQcm94eUNvY29hLm1tOgorICAgICAgICAoV2ViS2l0
OjpXZWJQYXN0ZWJvYXJkUHJveHk6OmdldFBhc3RlYm9hcmRCdWZmZXJGb3JUeXBlKToKKyAgICAg
ICAgKFdlYktpdDo6V2ViUGFzdGVib2FyZFByb3h5OjpzZXRQYXN0ZWJvYXJkQnVmZmVyRm9yVHlw
ZSk6CisgICAgICAgICogVUlQcm9jZXNzL1Zpc2l0ZWRMaW5rUHJvdmlkZXIuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpWaXNpdGVkTGlua1Byb3ZpZGVyOjpyZXNpemVUYWJsZSk6CisgICAgICAgICog
VUlQcm9jZXNzL21hYy9XZWJQYWdlUHJveHlNYWMubW06CisgICAgICAgIChXZWJLaXQ6OldlYlBh
Z2VQcm94eTo6ZGF0YVNlbGVjdGlvbkZvclBhc3RlYm9hcmQpOgorICAgICAgICAoV2ViS2l0OjpX
ZWJQYWdlUHJveHk6OnNldFByb21pc2VkRGF0YUZvckltYWdlKToKKyAgICAgICAgKiBXZWJQcm9j
ZXNzL1BsdWdpbnMvUERGL1BERlBsdWdpbi5tbToKKyAgICAgICAgKFdlYktpdDo6UERGUGx1Z2lu
Ojp3cml0ZUl0ZW1zVG9QYXN0ZWJvYXJkKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVT
dXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBs
YXRmb3JtU3RyYXRlZ2llczo6YnVmZmVyRm9yVHlwZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlBs
YXRmb3JtU3RyYXRlZ2llczo6c2V0QnVmZmVyRm9yVHlwZSk6CisgICAgICAgICogV2ViUHJvY2Vz
cy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViRHJhZ0NsaWVudE1hYy5tbToKKyAgICAgICAgKFdlYktp
dDo6V2ViRHJhZ0NsaWVudDo6ZGVjbGFyZUFuZFdyaXRlRHJhZ0ltYWdlKToKKyAgICAgICAgKiBX
ZWJQcm9jZXNzL1dlYlBhZ2UvVmlzaXRlZExpbmtUYWJsZUNvbnRyb2xsZXIuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpWaXNpdGVkTGlua1RhYmxlQ29udHJvbGxlcjo6c2V0VmlzaXRlZExpbmtUYWJs
ZSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9XZWJQYWdlTWFjLm1tOgorICAg
ICAgICAoV2ViS2l0OjpXZWJQYWdlOjpnZXREYXRhU2VsZWN0aW9uRm9yUGFzdGVib2FyZCk6CisK
KzIwMTUtMDQtMTMgIEFuZGVycyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KKwogICAg
ICAgICBCZWdpbiBjbGVhbmluZyB1cCB0aGUgc2hhcmVkIG1lbW9yeSBpbnRlcmZhY2UKICAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0MzY3NwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybS9TaGFyZWRNZW1vcnkuaCBiL1NvdXJjZS9X
ZWJLaXQyL1BsYXRmb3JtL1NoYXJlZE1lbW9yeS5oCmluZGV4IDMwMGRkMmU1MzNmMTA0YTA3ZjQ0
MjZkNzhjMmRiYmJkNjM1NWI4ZmIuLjNkODc3NWNlZTk3MGZiYjIyYWRmNjIxNWUwYmRiOGUxYmY4
ODVmNDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL1NoYXJlZE1lbW9yeS5o
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL1NoYXJlZE1lbW9yeS5oCkBAIC0yNiw5ICsy
Niw5IEBACiAjaWZuZGVmIFNoYXJlZE1lbW9yeV9oCiAjZGVmaW5lIFNoYXJlZE1lbW9yeV9oCiAK
KyNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgogI2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgog
I2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgogCiAj
aWYgUExBVEZPUk0oR1RLKSB8fCBQTEFURk9STShFRkwpCiAjaW5jbHVkZSAiQXR0YWNobWVudC5o
IgpAQCAtNzUsMTAgKzc1LDEwIEBAIHB1YmxpYzoKICNlbmRpZgogICAgICAgICBzaXplX3QgbV9z
aXplOwogICAgIH07Ci0gICAgCi0gICAgc3RhdGljIFJlZlB0cjxTaGFyZWRNZW1vcnk+IGNyZWF0
ZShzaXplX3QpOwotICAgIHN0YXRpYyBSZWZQdHI8U2hhcmVkTWVtb3J5PiBjcmVhdGUoY29uc3Qg
SGFuZGxlJiwgUHJvdGVjdGlvbik7CisKKyAgICBzdGF0aWMgUmVmUHRyPFNoYXJlZE1lbW9yeT4g
YWxsb2NhdGUoc2l6ZV90KTsKICAgICBzdGF0aWMgUmVmUHRyPFNoYXJlZE1lbW9yeT4gY3JlYXRl
KHZvaWQqLCBzaXplX3QsIFByb3RlY3Rpb24pOworICAgIHN0YXRpYyBSZWZQdHI8U2hhcmVkTWVt
b3J5PiBtYXAoY29uc3QgSGFuZGxlJiwgUHJvdGVjdGlvbik7CiAKICAgICB+U2hhcmVkTWVtb3J5
KCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL21hYy9TaGFyZWRNZW1v
cnlNYWMuY3BwIGIvU291cmNlL1dlYktpdDIvUGxhdGZvcm0vbWFjL1NoYXJlZE1lbW9yeU1hYy5j
cHAKaW5kZXggMGNjOTMyYTExYjliMWI1ZDMxYmJmN2RkZmI2OGQ4YzM0ZjQ2MWRkNy4uNDU5MjRh
ODQxMmNlNjE2MzA2OThlYzc2MzYxNWU1Mjk4MzJmYzQwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdDIvUGxhdGZvcm0vbWFjL1NoYXJlZE1lbW9yeU1hYy5jcHAKKysrIGIvU291cmNlL1dlYktp
dDIvUGxhdGZvcm0vbWFjL1NoYXJlZE1lbW9yeU1hYy5jcHAKQEAgLTk4LDcgKzk4LDcgQEAgc3Rh
dGljIGlubGluZSBtYWNoX3ZtX2FkZHJlc3NfdCB0b1ZNQWRkcmVzcyh2b2lkKiBwb2ludGVyKQog
ICAgIHJldHVybiBzdGF0aWNfY2FzdDxtYWNoX3ZtX2FkZHJlc3NfdD4ocmVpbnRlcnByZXRfY2Fz
dDx1aW50cHRyX3Q+KHBvaW50ZXIpKTsKIH0KICAgICAKLVJlZlB0cjxTaGFyZWRNZW1vcnk+IFNo
YXJlZE1lbW9yeTo6Y3JlYXRlKHNpemVfdCBzaXplKQorUmVmUHRyPFNoYXJlZE1lbW9yeT4gU2hh
cmVkTWVtb3J5OjphbGxvY2F0ZShzaXplX3Qgc2l6ZSkKIHsKICAgICBBU1NFUlQoc2l6ZSk7CiAK
QEAgLTE2MiwxNCArMTYyLDEzIEBAIHN0YXRpYyBpbmxpbmUgdm1fcHJvdF90IG1hY2hQcm90ZWN0
aW9uKFNoYXJlZE1lbW9yeTo6UHJvdGVjdGlvbiBwcm90ZWN0aW9uKQogICAgIHJldHVybiBWTV9Q
Uk9UX05PTkU7ICAgIAogfQogCi1SZWZQdHI8U2hhcmVkTWVtb3J5PiBTaGFyZWRNZW1vcnk6OmNy
ZWF0ZShjb25zdCBIYW5kbGUmIGhhbmRsZSwgUHJvdGVjdGlvbiBwcm90ZWN0aW9uKQorUmVmUHRy
PFNoYXJlZE1lbW9yeT4gU2hhcmVkTWVtb3J5OjptYXAoY29uc3QgSGFuZGxlJiBoYW5kbGUsIFBy
b3RlY3Rpb24gcHJvdGVjdGlvbikKIHsKICAgICBpZiAoaGFuZGxlLmlzTnVsbCgpKQogICAgICAg
ICByZXR1cm4gMDsKICAgICAKICAgICBBU1NFUlQocm91bmRfcGFnZShoYW5kbGUubV9zaXplKSA9
PSBoYW5kbGUubV9zaXplKTsKIAotICAgIC8vIE1hcCB0aGUgbWVtb3J5LgogICAgIHZtX3Byb3Rf
dCB2bVByb3RlY3Rpb24gPSBtYWNoUHJvdGVjdGlvbihwcm90ZWN0aW9uKTsKICAgICBtYWNoX3Zt
X2FkZHJlc3NfdCBtYXBwZWRBZGRyZXNzID0gMDsKICAgICBrZXJuX3JldHVybl90IGtyID0gbWFj
aF92bV9tYXAobWFjaF90YXNrX3NlbGYoKSwgJm1hcHBlZEFkZHJlc3MsIHJvdW5kX3BhZ2UoaGFu
ZGxlLm1fc2l6ZSksIDAsIFZNX0ZMQUdTX0FOWVdIRVJFLCBoYW5kbGUubV9wb3J0LCAwLCBmYWxz
ZSwgdm1Qcm90ZWN0aW9uLCB2bVByb3RlY3Rpb24sIFZNX0lOSEVSSVRfTk9ORSk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvU2hhcmVhYmxlQml0bWFwLmNwcCBiL1NvdXJjZS9X
ZWJLaXQyL1NoYXJlZC9TaGFyZWFibGVCaXRtYXAuY3BwCmluZGV4IDIzMTY2MTE0NzIyNWEzYTli
MTQ1NWQ0MjFmNzMwNjBlMzdjNTUzMDguLjMzY2I1ZGVjZjY1MWM2NTg2NjMzOThkMDFmMTY4ZTMx
MjZmY2Y5ZWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9TaGFyZWFibGVCaXRt
YXAuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9TaGFyZWFibGVCaXRtYXAuY3BwCkBA
IC03OSw3ICs3OSw3IEBAIFBhc3NSZWZQdHI8U2hhcmVhYmxlQml0bWFwPiBTaGFyZWFibGVCaXRt
YXA6OmNyZWF0ZVNoYXJlYWJsZShjb25zdCBJbnRTaXplJiBzaXplCiB7CiAgICAgc2l6ZV90IG51
bUJ5dGVzID0gbnVtQnl0ZXNGb3JTaXplKHNpemUpOwogCi0gICAgUmVmUHRyPFNoYXJlZE1lbW9y
eT4gc2hhcmVkTWVtb3J5ID0gU2hhcmVkTWVtb3J5OjpjcmVhdGUobnVtQnl0ZXMpOworICAgIFJl
ZlB0cjxTaGFyZWRNZW1vcnk+IHNoYXJlZE1lbW9yeSA9IFNoYXJlZE1lbW9yeTo6YWxsb2NhdGUo
bnVtQnl0ZXMpOwogICAgIGlmICghc2hhcmVkTWVtb3J5KQogICAgICAgICByZXR1cm4gbnVsbHB0
cjsKIApAQCAtOTksNyArOTksNyBAQCBQYXNzUmVmUHRyPFNoYXJlYWJsZUJpdG1hcD4gU2hhcmVh
YmxlQml0bWFwOjpjcmVhdGUoY29uc3QgSW50U2l6ZSYgc2l6ZSwgRmxhZ3MgZgogUGFzc1JlZlB0
cjxTaGFyZWFibGVCaXRtYXA+IFNoYXJlYWJsZUJpdG1hcDo6Y3JlYXRlKGNvbnN0IEhhbmRsZSYg
aGFuZGxlLCBTaGFyZWRNZW1vcnk6OlByb3RlY3Rpb24gcHJvdGVjdGlvbikKIHsKICAgICAvLyBD
cmVhdGUgdGhlIHNoYXJlZCBtZW1vcnkuCi0gICAgUmVmUHRyPFNoYXJlZE1lbW9yeT4gc2hhcmVk
TWVtb3J5ID0gU2hhcmVkTWVtb3J5OjpjcmVhdGUoaGFuZGxlLm1faGFuZGxlLCBwcm90ZWN0aW9u
KTsKKyAgICBSZWZQdHI8U2hhcmVkTWVtb3J5PiBzaGFyZWRNZW1vcnkgPSBTaGFyZWRNZW1vcnk6
Om1hcChoYW5kbGUubV9oYW5kbGUsIHByb3RlY3Rpb24pOwogICAgIGlmICghc2hhcmVkTWVtb3J5
KQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
U2hhcmVkL1NoYXJlYWJsZVJlc291cmNlLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9TaGFy
ZWFibGVSZXNvdXJjZS5jcHAKaW5kZXggZGVmZDcxMjY3MDFmOGI4OTg1MGFkMmFjYTk4N2Q5Njk3
NzEyYTlhNS4uODNmZmE3MGM0YjY3NGM0MWVmNzdlNGMyZjQ1ZDgzNDlkNWJhMTdlMiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1NoYXJlYWJsZVJlc291cmNlLmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9TaGFyZWQvU2hhcmVhYmxlUmVzb3VyY2UuY3BwCkBAIC0xMDQsNyArMTA0
LDcgQEAgUGFzc1JlZlB0cjxTaGFyZWFibGVSZXNvdXJjZT4gU2hhcmVhYmxlUmVzb3VyY2U6OmNy
ZWF0ZShQYXNzUmVmUHRyPFNoYXJlZE1lbW9yeT4KIAogUGFzc1JlZlB0cjxTaGFyZWFibGVSZXNv
dXJjZT4gU2hhcmVhYmxlUmVzb3VyY2U6OmNyZWF0ZShjb25zdCBIYW5kbGUmIGhhbmRsZSkKIHsK
LSAgICBSZWZQdHI8U2hhcmVkTWVtb3J5PiBzaGFyZWRNZW1vcnkgPSBTaGFyZWRNZW1vcnk6OmNy
ZWF0ZShoYW5kbGUubV9oYW5kbGUsIFNoYXJlZE1lbW9yeTo6UHJvdGVjdGlvbjo6UmVhZE9ubHkp
OworICAgIFJlZlB0cjxTaGFyZWRNZW1vcnk+IHNoYXJlZE1lbW9yeSA9IFNoYXJlZE1lbW9yeTo6
bWFwKGhhbmRsZS5tX2hhbmRsZSwgU2hhcmVkTWVtb3J5OjpQcm90ZWN0aW9uOjpSZWFkT25seSk7
CiAgICAgaWYgKCFzaGFyZWRNZW1vcnkpCiAgICAgICAgIHJldHVybiAwOwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvU2hhcmVhYmxlUmVzb3VyY2UuaCBiL1NvdXJjZS9XZWJL
aXQyL1NoYXJlZC9TaGFyZWFibGVSZXNvdXJjZS5oCmluZGV4IDYxMmQ5YTExNzk4M2NlNWRkMGYz
MzFjYzQyNWMwZWIwYjA1NzVhZmQuLmY4NzMyZjM4MGNlZjg4MjYwN2FkMTk2MTRkZDhiYjBhYjQ4
NzBiZDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9TaGFyZWFibGVSZXNvdXJj
ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9TaGFyZWFibGVSZXNvdXJjZS5oCkBAIC03
Myw2ICs3Myw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxTaGFyZWFibGVSZXNv
dXJjZT4gY3JlYXRlKFBhc3NSZWZQdHI8U2hhcmVkTWVtb3J5PiwgdW5zaWduZWQgb2Zmc2V0LCB1
bnNpZ25lZCBzaXplKTsKIAogICAgIC8vIENyZWF0ZSBhIHNoYXJlYWJsZSByZXNvdXJjZSBmcm9t
IGEgaGFuZGxlLgorICAgIC8vIEZJWE1FOiBSZW5hbWUgdGhpcyB0byBtYXAuCiAgICAgc3RhdGlj
IFBhc3NSZWZQdHI8U2hhcmVhYmxlUmVzb3VyY2U+IGNyZWF0ZShjb25zdCBIYW5kbGUmKTsKIAog
ICAgIC8vIENyZWF0ZSBhIGhhbmRsZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJl
ZC9XZWJDb21waWxlZENvbnRlbnRFeHRlbnNpb24uY3BwIGIvU291cmNlL1dlYktpdDIvU2hhcmVk
L1dlYkNvbXBpbGVkQ29udGVudEV4dGVuc2lvbi5jcHAKaW5kZXggNDllYjdjZGU3MzNiYjIzN2Y5
ZTNkNTYxYWU3ZTAyNDJiNjlmMjBhNS4uNWE2MGIwNGY0NWQyZWZlZjM5YmVkMTEyZDNiOWY3OTVk
NGY0NWYwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkNvbXBpbGVkQ29u
dGVudEV4dGVuc2lvbi5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkNvbXBpbGVk
Q29udGVudEV4dGVuc2lvbi5jcHAKQEAgLTQ4LDcgKzQ4LDcgQEAgdm9pZCBMZWdhY3lDb250ZW50
RXh0ZW5zaW9uQ29tcGlsYXRpb25DbGllbnQ6OndyaXRlQWN0aW9ucyhWZWN0b3I8V2ViQ29yZTo6
Q29udGUKIAogUmVmPFdlYkNvbXBpbGVkQ29udGVudEV4dGVuc2lvbj4gV2ViQ29tcGlsZWRDb250
ZW50RXh0ZW5zaW9uOjpjcmVhdGVGcm9tQ29tcGlsZWRDb250ZW50RXh0ZW5zaW9uRGF0YShjb25z
dCBXZWJDb3JlOjpDb250ZW50RXh0ZW5zaW9uczo6Q29tcGlsZWRDb250ZW50RXh0ZW5zaW9uRGF0
YSYgY29tcGlsZXJEYXRhKQogewotICAgIFJlZlB0cjxTaGFyZWRNZW1vcnk+IHNoYXJlZE1lbW9y
eSA9IFNoYXJlZE1lbW9yeTo6Y3JlYXRlKGNvbXBpbGVyRGF0YS5ieXRlY29kZS5zaXplKCkgKyBj
b21waWxlckRhdGEuYWN0aW9ucy5zaXplKCkpOworICAgIFJlZlB0cjxTaGFyZWRNZW1vcnk+IHNo
YXJlZE1lbW9yeSA9IFNoYXJlZE1lbW9yeTo6YWxsb2NhdGUoY29tcGlsZXJEYXRhLmJ5dGVjb2Rl
LnNpemUoKSArIGNvbXBpbGVyRGF0YS5hY3Rpb25zLnNpemUoKSk7CiAgICAgbWVtY3B5KHN0YXRp
Y19jYXN0PGNoYXIqPihzaGFyZWRNZW1vcnktPmRhdGEoKSksIGNvbXBpbGVyRGF0YS5hY3Rpb25z
LmRhdGEoKSwgY29tcGlsZXJEYXRhLmFjdGlvbnMuc2l6ZSgpKTsKICAgICBtZW1jcHkoc3RhdGlj
X2Nhc3Q8Y2hhcio+KHNoYXJlZE1lbW9yeS0+ZGF0YSgpKSArIGNvbXBpbGVyRGF0YS5hY3Rpb25z
LnNpemUoKSwgY29tcGlsZXJEYXRhLmJ5dGVjb2RlLmRhdGEoKSwgY29tcGlsZXJEYXRhLmJ5dGVj
b2RlLnNpemUoKSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJDb21w
aWxlZENvbnRlbnRFeHRlbnNpb25EYXRhLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJD
b21waWxlZENvbnRlbnRFeHRlbnNpb25EYXRhLmNwcAppbmRleCAyMDU5YmQ2YmE3ZmIyYzJlYTUy
NDAxMWNlOGMwOGU1NjA0YWNmZjMxLi4zODBjODY1YjJkNDYyM2M1MWViYTFjZTg0ZjBhNGI2OWQ4
ODFmM2JmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViQ29tcGlsZWRDb250
ZW50RXh0ZW5zaW9uRGF0YS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkNvbXBp
bGVkQ29udGVudEV4dGVuc2lvbkRhdGEuY3BwCkBAIC00OSw3ICs0OSw3IEBAIGJvb2wgV2ViQ29t
cGlsZWRDb250ZW50RXh0ZW5zaW9uRGF0YTo6ZGVjb2RlKElQQzo6QXJndW1lbnREZWNvZGVyJiBk
ZWNvZGVyLCBXZWJDCiAgICAgU2hhcmVkTWVtb3J5OjpIYW5kbGUgaGFuZGxlOwogICAgIGlmICgh
ZGVjb2Rlci5kZWNvZGUoaGFuZGxlKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIGNvbXBp
bGVkQ29udGVudEV4dGVuc2lvbkRhdGEuZGF0YSA9IFNoYXJlZE1lbW9yeTo6Y3JlYXRlKGhhbmRs
ZSwgU2hhcmVkTWVtb3J5OjpQcm90ZWN0aW9uOjpSZWFkT25seSk7CisgICAgY29tcGlsZWRDb250
ZW50RXh0ZW5zaW9uRGF0YS5kYXRhID0gU2hhcmVkTWVtb3J5OjptYXAoaGFuZGxlLCBTaGFyZWRN
ZW1vcnk6OlByb3RlY3Rpb246OlJlYWRPbmx5KTsKIAogICAgIGlmICghZGVjb2Rlci5kZWNvZGUo
Y29tcGlsZWRDb250ZW50RXh0ZW5zaW9uRGF0YS5hY3Rpb25zT2Zmc2V0KSkKICAgICAgICAgcmV0
dXJuIGZhbHNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkhpdFRlc3RS
ZXN1bHQuY3BwIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkhpdFRlc3RSZXN1bHQuY3BwCmlu
ZGV4IDExYTY5ODg3NGE4Nzk4NDIxZWRkMjI0MDE3ZjBiYjJiODY0MDYwNDcuLjkxMTBkY2M4YTFk
NWYyOGQ5YjQ2MTlhNDRiMDhmNmM5ZGVjODAyNzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQy
L1NoYXJlZC9XZWJIaXRUZXN0UmVzdWx0LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
V2ViSGl0VGVzdFJlc3VsdC5jcHAKQEAgLTg2LDcgKzg2LDcgQEAgV2ViSGl0VGVzdFJlc3VsdDo6
RGF0YTo6RGF0YShjb25zdCBXZWJDb3JlOjpIaXRUZXN0UmVzdWx0JiBoaXRUZXN0UmVzdWx0LCBi
b29sIGkKICAgICAgICAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gYnVmZmVyID0gaW1hZ2UtPmRhdGEo
KTsKICAgICAgICAgU3RyaW5nIGZpbGVuYW1lRXh0ZW5zaW9uID0gaW1hZ2UtPmZpbGVuYW1lRXh0
ZW5zaW9uKCk7CiAgICAgICAgIGlmICghZmlsZW5hbWVFeHRlbnNpb24uaXNFbXB0eSgpICYmIGJ1
ZmZlcikgewotICAgICAgICAgICAgaW1hZ2VTaGFyZWRNZW1vcnkgPSBTaGFyZWRNZW1vcnk6OmNy
ZWF0ZShidWZmZXItPnNpemUoKSk7CisgICAgICAgICAgICBpbWFnZVNoYXJlZE1lbW9yeSA9IFNo
YXJlZE1lbW9yeTo6YWxsb2NhdGUoYnVmZmVyLT5zaXplKCkpOwogICAgICAgICAgICAgbWVtY3B5
KGltYWdlU2hhcmVkTWVtb3J5LT5kYXRhKCksIGJ1ZmZlci0+ZGF0YSgpLCBidWZmZXItPnNpemUo
KSk7CiAgICAgICAgICAgICBpbWFnZUV4dGVuc2lvbiA9IGZpbGVuYW1lRXh0ZW5zaW9uOwogICAg
ICAgICAgICAgaW1hZ2VTaXplID0gYnVmZmVyLT5zaXplKCk7CkBAIC0xNTksNyArMTU5LDcgQEAg
Ym9vbCBXZWJIaXRUZXN0UmVzdWx0OjpEYXRhOjpkZWNvZGUoSVBDOjpBcmd1bWVudERlY29kZXIm
IGRlY29kZXIsIFdlYkhpdFRlc3RSZXMKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgaWYg
KCFpbWFnZUhhbmRsZS5pc051bGwoKSkKLSAgICAgICAgaGl0VGVzdFJlc3VsdERhdGEuaW1hZ2VT
aGFyZWRNZW1vcnkgPSBTaGFyZWRNZW1vcnk6OmNyZWF0ZShpbWFnZUhhbmRsZSwgU2hhcmVkTWVt
b3J5OjpQcm90ZWN0aW9uOjpSZWFkT25seSk7CisgICAgICAgIGhpdFRlc3RSZXN1bHREYXRhLmlt
YWdlU2hhcmVkTWVtb3J5ID0gU2hhcmVkTWVtb3J5OjptYXAoaW1hZ2VIYW5kbGUsIFNoYXJlZE1l
bW9yeTo6UHJvdGVjdGlvbjo6UmVhZE9ubHkpOwogCiAgICAgaWYgKCFkZWNvZGVyLmRlY29kZSho
aXRUZXN0UmVzdWx0RGF0YS5pbWFnZVNpemUpKQogICAgICAgICByZXR1cm4gZmFsc2U7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQ29jb2EvV2ViUGFzdGVib2FyZFByb3h5
Q29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQ29jb2EvV2ViUGFzdGVib2FyZFBy
b3h5Q29jb2EubW0KaW5kZXggYTlhMGY4YTY0NTYyM2MxNjZkOWE1Y2IyYjEwZjJkNzE1YWZiMDJi
Ny4uMjg0MGMxMDJhMWRlODhlM2YyZWI4YWYxOTEzZTg5ZjRiODEyMTI5MCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0NvY29hL1dlYlBhc3RlYm9hcmRQcm94eUNvY29hLm1t
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9Db2NvYS9XZWJQYXN0ZWJvYXJkUHJveHlD
b2NvYS5tbQpAQCAtNTYsNyArNTYsNyBAQCB2b2lkIFdlYlBhc3RlYm9hcmRQcm94eTo6Z2V0UGFz
dGVib2FyZEJ1ZmZlckZvclR5cGUoY29uc3QgU3RyaW5nJiBwYXN0ZWJvYXJkTmFtZQogICAgIGlm
ICghYnVmZmVyKQogICAgICAgICByZXR1cm47CiAgICAgc2l6ZSA9IGJ1ZmZlci0+c2l6ZSgpOwot
ICAgIFJlZlB0cjxTaGFyZWRNZW1vcnk+IHNoYXJlZE1lbW9yeUJ1ZmZlciA9IFNoYXJlZE1lbW9y
eTo6Y3JlYXRlKHNpemUpOworICAgIFJlZlB0cjxTaGFyZWRNZW1vcnk+IHNoYXJlZE1lbW9yeUJ1
ZmZlciA9IFNoYXJlZE1lbW9yeTo6YWxsb2NhdGUoc2l6ZSk7CiAgICAgaWYgKCFzaGFyZWRNZW1v
cnlCdWZmZXIpCiAgICAgICAgIHJldHVybjsKICAgICBtZW1jcHkoc2hhcmVkTWVtb3J5QnVmZmVy
LT5kYXRhKCksIGJ1ZmZlci0+ZGF0YSgpLCBzaXplKTsKQEAgLTExNCw3ICsxMTQsNyBAQCB2b2lk
IFdlYlBhc3RlYm9hcmRQcm94eTo6c2V0UGFzdGVib2FyZEJ1ZmZlckZvclR5cGUoY29uc3QgU3Ry
aW5nJiBwYXN0ZWJvYXJkTmFtZQogICAgICAgICBuZXdDaGFuZ2VDb3VudCA9IFBsYXRmb3JtUGFz
dGVib2FyZChwYXN0ZWJvYXJkTmFtZSkuc2V0QnVmZmVyRm9yVHlwZSgwLCBwYXN0ZWJvYXJkVHlw
ZSk7CiAgICAgICAgIHJldHVybjsKICAgICB9Ci0gICAgUmVmUHRyPFNoYXJlZE1lbW9yeT4gc2hh
cmVkTWVtb3J5QnVmZmVyID0gU2hhcmVkTWVtb3J5OjpjcmVhdGUoaGFuZGxlLCBTaGFyZWRNZW1v
cnk6OlByb3RlY3Rpb246OlJlYWRPbmx5KTsKKyAgICBSZWZQdHI8U2hhcmVkTWVtb3J5PiBzaGFy
ZWRNZW1vcnlCdWZmZXIgPSBTaGFyZWRNZW1vcnk6Om1hcChoYW5kbGUsIFNoYXJlZE1lbW9yeTo6
UHJvdGVjdGlvbjo6UmVhZE9ubHkpOwogICAgIFJlZlB0cjxTaGFyZWRCdWZmZXI+IGJ1ZmZlciA9
IFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKHN0YXRpY19jYXN0PHVuc2lnbmVkIGNoYXIgKj4oc2hhcmVk
TWVtb3J5QnVmZmVyLT5kYXRhKCkpLCBzaXplKTsKICAgICBuZXdDaGFuZ2VDb3VudCA9IFBsYXRm
b3JtUGFzdGVib2FyZChwYXN0ZWJvYXJkTmFtZSkuc2V0QnVmZmVyRm9yVHlwZShidWZmZXIsIHBh
c3RlYm9hcmRUeXBlKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9W
aXNpdGVkTGlua1Byb3ZpZGVyLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9WaXNpdGVk
TGlua1Byb3ZpZGVyLmNwcAppbmRleCA0ZGYxN2MxODU0NmNmZjIyM2U3MWZlNzU1OTAwYmNkMTQ5
MWM2MTZkLi5iMmQzNGU3MWU3ZmQ1MmQzY2I3NWNkNWI0ZTIxNDhmMTY3NGNkZmEyIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvVmlzaXRlZExpbmtQcm92aWRlci5jcHAKKysr
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1Zpc2l0ZWRMaW5rUHJvdmlkZXIuY3BwCkBAIC0y
MDAsNyArMjAwLDcgQEAgdm9pZCBWaXNpdGVkTGlua1Byb3ZpZGVyOjpwZW5kaW5nVmlzaXRlZExp
bmtzVGltZXJGaXJlZCgpCiAKIHZvaWQgVmlzaXRlZExpbmtQcm92aWRlcjo6cmVzaXplVGFibGUo
dW5zaWduZWQgbmV3VGFibGVTaXplKQogewotICAgIFJlZlB0cjxTaGFyZWRNZW1vcnk+IG5ld1Rh
YmxlTWVtb3J5ID0gU2hhcmVkTWVtb3J5OjpjcmVhdGUobmV3VGFibGVTaXplICogc2l6ZW9mKExp
bmtIYXNoKSk7CisgICAgUmVmUHRyPFNoYXJlZE1lbW9yeT4gbmV3VGFibGVNZW1vcnkgPSBTaGFy
ZWRNZW1vcnk6OmFsbG9jYXRlKG5ld1RhYmxlU2l6ZSAqIHNpemVvZihMaW5rSGFzaCkpOwogCiAg
ICAgaWYgKCFuZXdUYWJsZU1lbW9yeSkgewogICAgICAgICBMT0dfRVJST1IoIkNvdWxkIG5vdCBh
bGxvY2F0ZSBzaGFyZWQgbWVtb3J5IGZvciB2aXNpdGVkIGxpbmsgdGFibGUiKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvV2ViUGFnZVByb3h5TWFjLm1tIGIvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL21hYy9XZWJQYWdlUHJveHlNYWMubW0KaW5kZXggYjgzNTg4
NmViMDZlZDM0NWU4OTcyOGQ4NWMxYTk5NzljNWExNmMzZS4uMDRkZTViMDUxY2Q2MDZkZDM5MDc3
OWU4ZjYyYzYyMjBkODkyMmQyMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L21hYy9XZWJQYWdlUHJveHlNYWMubW0KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL21h
Yy9XZWJQYWdlUHJveHlNYWMubW0KQEAgLTM3Nyw3ICszNzcsNyBAQCBQYXNzUmVmUHRyPFdlYkNv
cmU6OlNoYXJlZEJ1ZmZlcj4gV2ViUGFnZVByb3h5OjpkYXRhU2VsZWN0aW9uRm9yUGFzdGVib2Fy
ZChjb25zdAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
TWVzc2FnZXM6OldlYlBhZ2U6OkdldERhdGFTZWxlY3Rpb25Gb3JQYXN0ZWJvYXJkOjpSZXBseSho
YW5kbGUsIHNpemUpLCBtX3BhZ2VJRCwgbWVzc2FnZVRpbWVvdXQpOwogICAgIGlmIChoYW5kbGUu
aXNOdWxsKCkpCiAgICAgICAgIHJldHVybiAwOwotICAgIFJlZlB0cjxTaGFyZWRNZW1vcnk+IHNo
YXJlZE1lbW9yeUJ1ZmZlciA9IFNoYXJlZE1lbW9yeTo6Y3JlYXRlKGhhbmRsZSwgU2hhcmVkTWVt
b3J5OjpQcm90ZWN0aW9uOjpSZWFkT25seSk7CisgICAgUmVmUHRyPFNoYXJlZE1lbW9yeT4gc2hh
cmVkTWVtb3J5QnVmZmVyID0gU2hhcmVkTWVtb3J5OjptYXAoaGFuZGxlLCBTaGFyZWRNZW1vcnk6
OlByb3RlY3Rpb246OlJlYWRPbmx5KTsKICAgICByZXR1cm4gU2hhcmVkQnVmZmVyOjpjcmVhdGUo
c3RhdGljX2Nhc3Q8dW5zaWduZWQgY2hhciAqPihzaGFyZWRNZW1vcnlCdWZmZXItPmRhdGEoKSks
IHNpemUpOwogfQogCkBAIC00MTMsMTIgKzQxMywxMiBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6c2V0
UHJvbWlzZWREYXRhRm9ySW1hZ2UoY29uc3QgU3RyaW5nJiBwYXN0ZWJvYXJkTmFtZSwgY29uc3Qg
UwogewogICAgIE1FU1NBR0VfQ0hFQ0tfVVJMKHVybCk7CiAgICAgTUVTU0FHRV9DSEVDS19VUkwo
dmlzaWJsZVVSTCk7Ci0gICAgUmVmUHRyPFNoYXJlZE1lbW9yeT4gc2hhcmVkTWVtb3J5SW1hZ2Ug
PSBTaGFyZWRNZW1vcnk6OmNyZWF0ZShpbWFnZUhhbmRsZSwgU2hhcmVkTWVtb3J5OjpQcm90ZWN0
aW9uOjpSZWFkT25seSk7CisgICAgUmVmUHRyPFNoYXJlZE1lbW9yeT4gc2hhcmVkTWVtb3J5SW1h
Z2UgPSBTaGFyZWRNZW1vcnk6Om1hcChpbWFnZUhhbmRsZSwgU2hhcmVkTWVtb3J5OjpQcm90ZWN0
aW9uOjpSZWFkT25seSk7CiAgICAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gaW1hZ2VCdWZmZXIgPSBT
aGFyZWRCdWZmZXI6OmNyZWF0ZShzdGF0aWNfY2FzdDx1bnNpZ25lZCBjaGFyKj4oc2hhcmVkTWVt
b3J5SW1hZ2UtPmRhdGEoKSksIGltYWdlU2l6ZSk7CiAgICAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4g
YXJjaGl2ZUJ1ZmZlcjsKICAgICAKICAgICBpZiAoIWFyY2hpdmVIYW5kbGUuaXNOdWxsKCkpIHsK
LSAgICAgICAgUmVmUHRyPFNoYXJlZE1lbW9yeT4gc2hhcmVkTWVtb3J5QXJjaGl2ZSA9IFNoYXJl
ZE1lbW9yeTo6Y3JlYXRlKGFyY2hpdmVIYW5kbGUsIFNoYXJlZE1lbW9yeTo6UHJvdGVjdGlvbjo6
UmVhZE9ubHkpOworICAgICAgICBSZWZQdHI8U2hhcmVkTWVtb3J5PiBzaGFyZWRNZW1vcnlBcmNo
aXZlID0gU2hhcmVkTWVtb3J5OjptYXAoYXJjaGl2ZUhhbmRsZSwgU2hhcmVkTWVtb3J5OjpQcm90
ZWN0aW9uOjpSZWFkT25seSk7CiAgICAgICAgIGFyY2hpdmVCdWZmZXIgPSBTaGFyZWRCdWZmZXI6
OmNyZWF0ZShzdGF0aWNfY2FzdDx1bnNpZ25lZCBjaGFyKj4oc2hhcmVkTWVtb3J5QXJjaGl2ZS0+
ZGF0YSgpKSwgYXJjaGl2ZVNpemUpOwogICAgIH0KICAgICBtX3BhZ2VDbGllbnQuc2V0UHJvbWlz
ZWREYXRhRm9ySW1hZ2UocGFzdGVib2FyZE5hbWUsIGltYWdlQnVmZmVyLCBmaWxlbmFtZSwgZXh0
ZW5zaW9uLCB0aXRsZSwgdXJsLCB2aXNpYmxlVVJMLCBhcmNoaXZlQnVmZmVyKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9QREYvUERGUGx1Z2luLm1tIGIv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BERi9QREZQbHVnaW4ubW0KaW5kZXgg
ZTUzMDkyOTljMTYyODI1NWUyMzIwY2Y4ZDQyNGVmYWRmY2E1MGJmNC4uYzA4OTRlOWI2MTc2OGFk
YjZmMWZiN2ZhNGE1OWM5MmQ0NDJjZWU1NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9QbHVnaW5zL1BERi9QREZQbHVnaW4ubW0KKysrIGIvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9QbHVnaW5zL1BERi9QREZQbHVnaW4ubW0KQEAgLTE2OTAsNyArMTY5MCw3IEBAIHZv
aWQgUERGUGx1Z2luOjp3cml0ZUl0ZW1zVG9QYXN0ZWJvYXJkKE5TU3RyaW5nICpwYXN0ZWJvYXJk
TmFtZSwgTlNBcnJheSAqaXRlbXMsCiAgICAgICAgICAgICAgICAgY29udGludWU7CiAKICAgICAg
ICAgICAgIFNoYXJlZE1lbW9yeTo6SGFuZGxlIGhhbmRsZTsKLSAgICAgICAgICAgIFJlZlB0cjxT
aGFyZWRNZW1vcnk+IHNoYXJlZE1lbW9yeSA9IFNoYXJlZE1lbW9yeTo6Y3JlYXRlKGJ1ZmZlci0+
c2l6ZSgpKTsKKyAgICAgICAgICAgIFJlZlB0cjxTaGFyZWRNZW1vcnk+IHNoYXJlZE1lbW9yeSA9
IFNoYXJlZE1lbW9yeTo6YWxsb2NhdGUoYnVmZmVyLT5zaXplKCkpOwogICAgICAgICAgICAgbWVt
Y3B5KHNoYXJlZE1lbW9yeS0+ZGF0YSgpLCBidWZmZXItPmRhdGEoKSwgYnVmZmVyLT5zaXplKCkp
OwogICAgICAgICAgICAgc2hhcmVkTWVtb3J5LT5jcmVhdGVIYW5kbGUoaGFuZGxlLCBTaGFyZWRN
ZW1vcnk6OlByb3RlY3Rpb246OlJlYWRPbmx5KTsKICAgICAgICAgICAgIHdlYlByb2Nlc3MucGFy
ZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVzc2FnZXM6OldlYlBhc3RlYm9hcmRQ
cm94eTo6U2V0UGFzdGVib2FyZEJ1ZmZlckZvclR5cGUocGFzdGVib2FyZE5hbWUsIHR5cGUsIGhh
bmRsZSwgYnVmZmVyLT5zaXplKCkpLCBNZXNzYWdlczo6V2ViUGFzdGVib2FyZFByb3h5OjpTZXRQ
YXN0ZWJvYXJkQnVmZmVyRm9yVHlwZTo6UmVwbHkobmV3Q2hhbmdlQ291bnQpLCAwKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZv
cm1TdHJhdGVnaWVzLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBv
cnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmNwcAppbmRleCA4YjIwZWE5N2M4NmM0ZGE0MzljZjUx
MDI2Mzc0OWNjZDUxYjQxOGY0Li4wN2NjOTI5NTZhNGU3MjZhYjU4YzMzZmQ0NTI0NjE3OGU3MmY1
OTAwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0
L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuY3BwCkBAIC00MTAsNyArNDEw
LDcgQEAgUGFzc1JlZlB0cjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+IFdlYlBsYXRmb3JtU3RyYXRl
Z2llczo6YnVmZmVyRm9yVHlwZShjb25zdCBTdHIKICAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24o
KS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUGFzdGVi
b2FyZFByb3h5OjpHZXRQYXN0ZWJvYXJkQnVmZmVyRm9yVHlwZShwYXN0ZWJvYXJkTmFtZSwgcGFz
dGVib2FyZFR5cGUpLCBNZXNzYWdlczo6V2ViUGFzdGVib2FyZFByb3h5OjpHZXRQYXN0ZWJvYXJk
QnVmZmVyRm9yVHlwZTo6UmVwbHkoaGFuZGxlLCBzaXplKSwgMCk7CiAgICAgaWYgKGhhbmRsZS5p
c051bGwoKSkKICAgICAgICAgcmV0dXJuIDA7Ci0gICAgUmVmUHRyPFNoYXJlZE1lbW9yeT4gc2hh
cmVkTWVtb3J5QnVmZmVyID0gU2hhcmVkTWVtb3J5OjpjcmVhdGUoaGFuZGxlLCBTaGFyZWRNZW1v
cnk6OlByb3RlY3Rpb246OlJlYWRPbmx5KTsKKyAgICBSZWZQdHI8U2hhcmVkTWVtb3J5PiBzaGFy
ZWRNZW1vcnlCdWZmZXIgPSBTaGFyZWRNZW1vcnk6Om1hcChoYW5kbGUsIFNoYXJlZE1lbW9yeTo6
UHJvdGVjdGlvbjo6UmVhZE9ubHkpOwogICAgIHJldHVybiBTaGFyZWRCdWZmZXI6OmNyZWF0ZShz
dGF0aWNfY2FzdDx1bnNpZ25lZCBjaGFyICo+KHNoYXJlZE1lbW9yeUJ1ZmZlci0+ZGF0YSgpKSwg
c2l6ZSk7CiB9CiAKQEAgLTQ3OSw3ICs0NzksNyBAQCBsb25nIFdlYlBsYXRmb3JtU3RyYXRlZ2ll
czo6c2V0QnVmZmVyRm9yVHlwZShQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gYnVmZmVyLCBjbwog
ewogICAgIFNoYXJlZE1lbW9yeTo6SGFuZGxlIGhhbmRsZTsKICAgICBpZiAoYnVmZmVyKSB7Ci0g
ICAgICAgIFJlZlB0cjxTaGFyZWRNZW1vcnk+IHNoYXJlZE1lbW9yeUJ1ZmZlciA9IFNoYXJlZE1l
bW9yeTo6Y3JlYXRlKGJ1ZmZlci0+c2l6ZSgpKTsKKyAgICAgICAgUmVmUHRyPFNoYXJlZE1lbW9y
eT4gc2hhcmVkTWVtb3J5QnVmZmVyID0gU2hhcmVkTWVtb3J5OjphbGxvY2F0ZShidWZmZXItPnNp
emUoKSk7CiAgICAgICAgIC8vIEZJWE1FOiBOdWxsIGNoZWNrIHByZXZlbnRzIGNyYXNoaW5nLCBi
dXQgaXQgaXMgbm90IGdyZWF0IHRoYXQgd2Ugd2lsbCBoYXZlIGVtcHR5IHBhc3RlYm9hcmQgY29u
dGVudCBmb3IgdGhpcyB0eXBlLAogICAgICAgICAvLyBiZWNhdXNlIHdlJ3ZlIGFscmVhZHkgc2V0
IHRoZSB0eXBlcy4KICAgICAgICAgaWYgKHNoYXJlZE1lbW9yeUJ1ZmZlcikgewpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViRHJhZ0Ns
aWVudE1hYy5tbSBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvbWFj
L1dlYkRyYWdDbGllbnRNYWMubW0KaW5kZXggMWFiMmVjOWQ0ZDlmMWY3YWE3NTNjZThjOWEyMTFi
NWZiMTI2MjZjOC4uMDE0MmNjNmJlY2ZmZTgyMTVmOTlhOWU2ZjY0ZTEyZGZkNmQ2MDdkMSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9tYWMvV2Vi
RHJhZ0NsaWVudE1hYy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVT
dXBwb3J0L21hYy9XZWJEcmFnQ2xpZW50TWFjLm1tCkBAIC0xMzUsNyArMTM1LDcgQEAgdm9pZCBX
ZWJEcmFnQ2xpZW50OjpkZWNsYXJlQW5kV3JpdGVEcmFnSW1hZ2UoY29uc3QgU3RyaW5nJiBwYXN0
ZWJvYXJkTmFtZSwgRWxlbWUKICAgICBzaXplX3QgaW1hZ2VTaXplID0gaW1hZ2VCdWZmZXItPnNp
emUoKTsKICAgICBTaGFyZWRNZW1vcnk6OkhhbmRsZSBpbWFnZUhhbmRsZTsKICAgICAKLSAgICBS
ZWZQdHI8U2hhcmVkTWVtb3J5PiBzaGFyZWRNZW1vcnlCdWZmZXIgPSBTaGFyZWRNZW1vcnk6OmNy
ZWF0ZShpbWFnZUJ1ZmZlci0+c2l6ZSgpKTsKKyAgICBSZWZQdHI8U2hhcmVkTWVtb3J5PiBzaGFy
ZWRNZW1vcnlCdWZmZXIgPSBTaGFyZWRNZW1vcnk6OmFsbG9jYXRlKGltYWdlQnVmZmVyLT5zaXpl
KCkpOwogICAgIGlmICghc2hhcmVkTWVtb3J5QnVmZmVyKQogICAgICAgICByZXR1cm47CiAgICAg
bWVtY3B5KHNoYXJlZE1lbW9yeUJ1ZmZlci0+ZGF0YSgpLCBpbWFnZUJ1ZmZlci0+ZGF0YSgpLCBp
bWFnZVNpemUpOwpAQCAtMTQ2LDcgKzE0Niw3IEBAIHZvaWQgV2ViRHJhZ0NsaWVudDo6ZGVjbGFy
ZUFuZFdyaXRlRHJhZ0ltYWdlKGNvbnN0IFN0cmluZyYgcGFzdGVib2FyZE5hbWUsIEVsZW1lCiAg
ICAgc2l6ZV90IGFyY2hpdmVTaXplID0gMDsKICAgICBpZiAoZGF0YSkgewogICAgICAgICBSZWZQ
dHI8U2hhcmVkQnVmZmVyPiBhcmNoaXZlQnVmZmVyID0gU2hhcmVkQnVmZmVyOjp3cmFwTlNEYXRh
KChOU0RhdGEgKilkYXRhLmdldCgpKTsKLSAgICAgICAgUmVmUHRyPFNoYXJlZE1lbW9yeT4gYXJj
aGl2ZVNoYXJlZE1lbW9yeUJ1ZmZlciA9IFNoYXJlZE1lbW9yeTo6Y3JlYXRlKGFyY2hpdmVCdWZm
ZXItPnNpemUoKSk7CisgICAgICAgIFJlZlB0cjxTaGFyZWRNZW1vcnk+IGFyY2hpdmVTaGFyZWRN
ZW1vcnlCdWZmZXIgPSBTaGFyZWRNZW1vcnk6OmFsbG9jYXRlKGFyY2hpdmVCdWZmZXItPnNpemUo
KSk7CiAgICAgICAgIGlmICghYXJjaGl2ZVNoYXJlZE1lbW9yeUJ1ZmZlcikKICAgICAgICAgICAg
IHJldHVybjsKICAgICAgICAgYXJjaGl2ZVNpemUgPSBhcmNoaXZlQnVmZmVyLT5zaXplKCk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvVmlzaXRlZExpbmtU
YWJsZUNvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1Zp
c2l0ZWRMaW5rVGFibGVDb250cm9sbGVyLmNwcAppbmRleCA1NzQ1ODU1MDI4OWFlZmEzY2E0OWMy
ZmM2ZTU0M2EyMTllZDU3ZWM0Li40MDAwNjE2YmFmYzViN2JjYmRjNWEzMjZiNTZmNDY5MWJkMTQy
OTcxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvVmlzaXRl
ZExpbmtUYWJsZUNvbnRyb2xsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
V2ViUGFnZS9WaXNpdGVkTGlua1RhYmxlQ29udHJvbGxlci5jcHAKQEAgLTkwLDcgKzkwLDcgQEAg
dm9pZCBWaXNpdGVkTGlua1RhYmxlQ29udHJvbGxlcjo6YWRkVmlzaXRlZExpbmsoUGFnZSYgcGFn
ZSwgTGlua0hhc2ggbGlua0hhc2gpCiAKIHZvaWQgVmlzaXRlZExpbmtUYWJsZUNvbnRyb2xsZXI6
OnNldFZpc2l0ZWRMaW5rVGFibGUoY29uc3QgU2hhcmVkTWVtb3J5OjpIYW5kbGUmIGhhbmRsZSkK
IHsKLSAgICBSZWZQdHI8U2hhcmVkTWVtb3J5PiBzaGFyZWRNZW1vcnkgPSBTaGFyZWRNZW1vcnk6
OmNyZWF0ZShoYW5kbGUsIFNoYXJlZE1lbW9yeTo6UHJvdGVjdGlvbjo6UmVhZE9ubHkpOworICAg
IFJlZlB0cjxTaGFyZWRNZW1vcnk+IHNoYXJlZE1lbW9yeSA9IFNoYXJlZE1lbW9yeTo6bWFwKGhh
bmRsZSwgU2hhcmVkTWVtb3J5OjpQcm90ZWN0aW9uOjpSZWFkT25seSk7CiAgICAgaWYgKCFzaGFy
ZWRNZW1vcnkpCiAgICAgICAgIHJldHVybjsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9XZWJQYWdlTWFjLm1tIGIvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJQYWdlL21hYy9XZWJQYWdlTWFjLm1tCmluZGV4IDVlZTk3YzY4MTc3NDlkY2Q5
Y2IzMDBjOWYzNTAwMWM0MmFmMmYzZjYuLjk3OWM1ZmU5YThiNzA3Yzk4Y2EwYmYyZDM1YTkwZjYz
MDgwM2E5ZjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9t
YWMvV2ViUGFnZU1hYy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2Uv
bWFjL1dlYlBhZ2VNYWMubW0KQEAgLTcxMCw3ICs3MTAsNyBAQCB2b2lkIFdlYlBhZ2U6OmdldERh
dGFTZWxlY3Rpb25Gb3JQYXN0ZWJvYXJkKGNvbnN0IFN0cmluZyBwYXN0ZWJvYXJkVHlwZSwgU2hh
cmVkTQogICAgICAgICByZXR1cm47CiAgICAgfQogICAgIHNpemUgPSBidWZmZXItPnNpemUoKTsK
LSAgICBSZWZQdHI8U2hhcmVkTWVtb3J5PiBzaGFyZWRNZW1vcnlCdWZmZXIgPSBTaGFyZWRNZW1v
cnk6OmNyZWF0ZShzaXplKTsKKyAgICBSZWZQdHI8U2hhcmVkTWVtb3J5PiBzaGFyZWRNZW1vcnlC
dWZmZXIgPSBTaGFyZWRNZW1vcnk6OmFsbG9jYXRlKHNpemUpOwogICAgIG1lbWNweShzaGFyZWRN
ZW1vcnlCdWZmZXItPmRhdGEoKSwgYnVmZmVyLT5kYXRhKCksIHNpemUpOwogICAgIHNoYXJlZE1l
bW9yeUJ1ZmZlci0+Y3JlYXRlSGFuZGxlKGhhbmRsZSwgU2hhcmVkTWVtb3J5OjpQcm90ZWN0aW9u
OjpSZWFkT25seSk7CiB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>250677</attachid>
            <date>2015-04-13 14:55:58 -0700</date>
            <delta_ts>2015-04-13 15:12:59 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-143679-20150413145509.patch</filename>
            <type>text/plain</type>
            <size>23830</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgyNzUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggMjc4MDBhZjc1MTU3MGYz
MTA5MWQzN2RmZmM4OGFmYmQ3OTkyZGFjOS4uYjA2NWJkMjNjZTc0ZjA5NDJlZGQ0ODYzY2VmZjg2
MDYxMTI2OGM4OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDUzIEBACiAyMDE1LTA0LTEzICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CiAKKyAgICAgICAgUmVuYW1lIFNoYXJl
ZE1lbW9yeTo6Y3JlYXRlIG92ZXJsb2FkcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTQzNjc5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgUmVuYW1lIHRoZSBTaGFyZWRNZW1vcnk6OmNyZWF0ZSBvdmVybG9h
ZCB0aGF0IGFsbG9jYXRlcyBtZW1vcnkgdG8gU2hhcmVkTWVtb3J5OjphbGxvY2F0ZSwKKyAgICAg
ICAgYW5kIHRoZSBTaGFyZWRNZW1vcnk6OmNyZWF0ZSBvdmVybG9hZCB0aGF0IG1hcHMgaW4gYSBo
YW5kbGUgdG8gU2hhcmVkTWVtb3J5OjptYXAuCisKKyAgICAgICAgKiBQbGF0Zm9ybS9TaGFyZWRN
ZW1vcnkuaDoKKyAgICAgICAgKiBQbGF0Zm9ybS9tYWMvU2hhcmVkTWVtb3J5TWFjLmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6U2hhcmVkTWVtb3J5OjphbGxvY2F0ZSk6CisgICAgICAgIChXZWJLaXQ6
OlNoYXJlZE1lbW9yeTo6bWFwKToKKyAgICAgICAgKFdlYktpdDo6U2hhcmVkTWVtb3J5OjpjcmVh
dGUpOiBEZWxldGVkLgorICAgICAgICAqIFNoYXJlZC9TaGFyZWFibGVCaXRtYXAuY3BwOgorICAg
ICAgICAoV2ViS2l0OjpTaGFyZWFibGVCaXRtYXA6OmNyZWF0ZVNoYXJlYWJsZSk6CisgICAgICAg
IChXZWJLaXQ6OlNoYXJlYWJsZUJpdG1hcDo6Y3JlYXRlKToKKyAgICAgICAgKiBTaGFyZWQvU2hh
cmVhYmxlUmVzb3VyY2UuY3BwOgorICAgICAgICAoV2ViS2l0OjpTaGFyZWFibGVSZXNvdXJjZTo6
Y3JlYXRlKToKKyAgICAgICAgKiBTaGFyZWQvU2hhcmVhYmxlUmVzb3VyY2UuaDoKKyAgICAgICAg
KiBTaGFyZWQvV2ViQ29tcGlsZWRDb250ZW50RXh0ZW5zaW9uLmNwcDoKKyAgICAgICAgKFdlYktp
dDo6V2ViQ29tcGlsZWRDb250ZW50RXh0ZW5zaW9uOjpjcmVhdGVGcm9tQ29tcGlsZWRDb250ZW50
RXh0ZW5zaW9uRGF0YSk6CisgICAgICAgICogU2hhcmVkL1dlYkNvbXBpbGVkQ29udGVudEV4dGVu
c2lvbkRhdGEuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJDb21waWxlZENvbnRlbnRFeHRlbnNp
b25EYXRhOjpkZWNvZGUpOgorICAgICAgICAqIFNoYXJlZC9XZWJIaXRUZXN0UmVzdWx0LmNwcDoK
KyAgICAgICAgKFdlYktpdDo6V2ViSGl0VGVzdFJlc3VsdDo6RGF0YTo6RGF0YSk6CisgICAgICAg
IChXZWJLaXQ6OldlYkhpdFRlc3RSZXN1bHQ6OkRhdGE6OmRlY29kZSk6CisgICAgICAgICogVUlQ
cm9jZXNzL0NvY29hL1dlYlBhc3RlYm9hcmRQcm94eUNvY29hLm1tOgorICAgICAgICAoV2ViS2l0
OjpXZWJQYXN0ZWJvYXJkUHJveHk6OmdldFBhc3RlYm9hcmRCdWZmZXJGb3JUeXBlKToKKyAgICAg
ICAgKFdlYktpdDo6V2ViUGFzdGVib2FyZFByb3h5OjpzZXRQYXN0ZWJvYXJkQnVmZmVyRm9yVHlw
ZSk6CisgICAgICAgICogVUlQcm9jZXNzL1Zpc2l0ZWRMaW5rUHJvdmlkZXIuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpWaXNpdGVkTGlua1Byb3ZpZGVyOjpyZXNpemVUYWJsZSk6CisgICAgICAgICog
VUlQcm9jZXNzL21hYy9XZWJQYWdlUHJveHlNYWMubW06CisgICAgICAgIChXZWJLaXQ6OldlYlBh
Z2VQcm94eTo6ZGF0YVNlbGVjdGlvbkZvclBhc3RlYm9hcmQpOgorICAgICAgICAoV2ViS2l0OjpX
ZWJQYWdlUHJveHk6OnNldFByb21pc2VkRGF0YUZvckltYWdlKToKKyAgICAgICAgKiBXZWJQcm9j
ZXNzL1BsdWdpbnMvUERGL1BERlBsdWdpbi5tbToKKyAgICAgICAgKFdlYktpdDo6UERGUGx1Z2lu
Ojp3cml0ZUl0ZW1zVG9QYXN0ZWJvYXJkKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVT
dXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBs
YXRmb3JtU3RyYXRlZ2llczo6YnVmZmVyRm9yVHlwZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlBs
YXRmb3JtU3RyYXRlZ2llczo6c2V0QnVmZmVyRm9yVHlwZSk6CisgICAgICAgICogV2ViUHJvY2Vz
cy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViRHJhZ0NsaWVudE1hYy5tbToKKyAgICAgICAgKFdlYktp
dDo6V2ViRHJhZ0NsaWVudDo6ZGVjbGFyZUFuZFdyaXRlRHJhZ0ltYWdlKToKKyAgICAgICAgKiBX
ZWJQcm9jZXNzL1dlYlBhZ2UvVmlzaXRlZExpbmtUYWJsZUNvbnRyb2xsZXIuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpWaXNpdGVkTGlua1RhYmxlQ29udHJvbGxlcjo6c2V0VmlzaXRlZExpbmtUYWJs
ZSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9XZWJQYWdlTWFjLm1tOgorICAg
ICAgICAoV2ViS2l0OjpXZWJQYWdlOjpnZXREYXRhU2VsZWN0aW9uRm9yUGFzdGVib2FyZCk6CisK
KzIwMTUtMDQtMTMgIEFuZGVycyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KKwogICAg
ICAgICBCZWdpbiBjbGVhbmluZyB1cCB0aGUgc2hhcmVkIG1lbW9yeSBpbnRlcmZhY2UKICAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0MzY3NwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybS9TaGFyZWRNZW1vcnkuaCBiL1NvdXJjZS9X
ZWJLaXQyL1BsYXRmb3JtL1NoYXJlZE1lbW9yeS5oCmluZGV4IDMwMGRkMmU1MzNmMTA0YTA3ZjQ0
MjZkNzhjMmRiYmJkNjM1NWI4ZmIuLjNkODc3NWNlZTk3MGZiYjIyYWRmNjIxNWUwYmRiOGUxYmY4
ODVmNDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL1NoYXJlZE1lbW9yeS5o
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL1NoYXJlZE1lbW9yeS5oCkBAIC0yNiw5ICsy
Niw5IEBACiAjaWZuZGVmIFNoYXJlZE1lbW9yeV9oCiAjZGVmaW5lIFNoYXJlZE1lbW9yeV9oCiAK
KyNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgogI2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgog
I2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgogCiAj
aWYgUExBVEZPUk0oR1RLKSB8fCBQTEFURk9STShFRkwpCiAjaW5jbHVkZSAiQXR0YWNobWVudC5o
IgpAQCAtNzUsMTAgKzc1LDEwIEBAIHB1YmxpYzoKICNlbmRpZgogICAgICAgICBzaXplX3QgbV9z
aXplOwogICAgIH07Ci0gICAgCi0gICAgc3RhdGljIFJlZlB0cjxTaGFyZWRNZW1vcnk+IGNyZWF0
ZShzaXplX3QpOwotICAgIHN0YXRpYyBSZWZQdHI8U2hhcmVkTWVtb3J5PiBjcmVhdGUoY29uc3Qg
SGFuZGxlJiwgUHJvdGVjdGlvbik7CisKKyAgICBzdGF0aWMgUmVmUHRyPFNoYXJlZE1lbW9yeT4g
YWxsb2NhdGUoc2l6ZV90KTsKICAgICBzdGF0aWMgUmVmUHRyPFNoYXJlZE1lbW9yeT4gY3JlYXRl
KHZvaWQqLCBzaXplX3QsIFByb3RlY3Rpb24pOworICAgIHN0YXRpYyBSZWZQdHI8U2hhcmVkTWVt
b3J5PiBtYXAoY29uc3QgSGFuZGxlJiwgUHJvdGVjdGlvbik7CiAKICAgICB+U2hhcmVkTWVtb3J5
KCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL21hYy9TaGFyZWRNZW1v
cnlNYWMuY3BwIGIvU291cmNlL1dlYktpdDIvUGxhdGZvcm0vbWFjL1NoYXJlZE1lbW9yeU1hYy5j
cHAKaW5kZXggMGNjOTMyYTExYjliMWI1ZDMxYmJmN2RkZmI2OGQ4YzM0ZjQ2MWRkNy4uNDU5MjRh
ODQxMmNlNjE2MzA2OThlYzc2MzYxNWU1Mjk4MzJmYzQwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdDIvUGxhdGZvcm0vbWFjL1NoYXJlZE1lbW9yeU1hYy5jcHAKKysrIGIvU291cmNlL1dlYktp
dDIvUGxhdGZvcm0vbWFjL1NoYXJlZE1lbW9yeU1hYy5jcHAKQEAgLTk4LDcgKzk4LDcgQEAgc3Rh
dGljIGlubGluZSBtYWNoX3ZtX2FkZHJlc3NfdCB0b1ZNQWRkcmVzcyh2b2lkKiBwb2ludGVyKQog
ICAgIHJldHVybiBzdGF0aWNfY2FzdDxtYWNoX3ZtX2FkZHJlc3NfdD4ocmVpbnRlcnByZXRfY2Fz
dDx1aW50cHRyX3Q+KHBvaW50ZXIpKTsKIH0KICAgICAKLVJlZlB0cjxTaGFyZWRNZW1vcnk+IFNo
YXJlZE1lbW9yeTo6Y3JlYXRlKHNpemVfdCBzaXplKQorUmVmUHRyPFNoYXJlZE1lbW9yeT4gU2hh
cmVkTWVtb3J5OjphbGxvY2F0ZShzaXplX3Qgc2l6ZSkKIHsKICAgICBBU1NFUlQoc2l6ZSk7CiAK
QEAgLTE2MiwxNCArMTYyLDEzIEBAIHN0YXRpYyBpbmxpbmUgdm1fcHJvdF90IG1hY2hQcm90ZWN0
aW9uKFNoYXJlZE1lbW9yeTo6UHJvdGVjdGlvbiBwcm90ZWN0aW9uKQogICAgIHJldHVybiBWTV9Q
Uk9UX05PTkU7ICAgIAogfQogCi1SZWZQdHI8U2hhcmVkTWVtb3J5PiBTaGFyZWRNZW1vcnk6OmNy
ZWF0ZShjb25zdCBIYW5kbGUmIGhhbmRsZSwgUHJvdGVjdGlvbiBwcm90ZWN0aW9uKQorUmVmUHRy
PFNoYXJlZE1lbW9yeT4gU2hhcmVkTWVtb3J5OjptYXAoY29uc3QgSGFuZGxlJiBoYW5kbGUsIFBy
b3RlY3Rpb24gcHJvdGVjdGlvbikKIHsKICAgICBpZiAoaGFuZGxlLmlzTnVsbCgpKQogICAgICAg
ICByZXR1cm4gMDsKICAgICAKICAgICBBU1NFUlQocm91bmRfcGFnZShoYW5kbGUubV9zaXplKSA9
PSBoYW5kbGUubV9zaXplKTsKIAotICAgIC8vIE1hcCB0aGUgbWVtb3J5LgogICAgIHZtX3Byb3Rf
dCB2bVByb3RlY3Rpb24gPSBtYWNoUHJvdGVjdGlvbihwcm90ZWN0aW9uKTsKICAgICBtYWNoX3Zt
X2FkZHJlc3NfdCBtYXBwZWRBZGRyZXNzID0gMDsKICAgICBrZXJuX3JldHVybl90IGtyID0gbWFj
aF92bV9tYXAobWFjaF90YXNrX3NlbGYoKSwgJm1hcHBlZEFkZHJlc3MsIHJvdW5kX3BhZ2UoaGFu
ZGxlLm1fc2l6ZSksIDAsIFZNX0ZMQUdTX0FOWVdIRVJFLCBoYW5kbGUubV9wb3J0LCAwLCBmYWxz
ZSwgdm1Qcm90ZWN0aW9uLCB2bVByb3RlY3Rpb24sIFZNX0lOSEVSSVRfTk9ORSk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvU2hhcmVhYmxlQml0bWFwLmNwcCBiL1NvdXJjZS9X
ZWJLaXQyL1NoYXJlZC9TaGFyZWFibGVCaXRtYXAuY3BwCmluZGV4IDIzMTY2MTE0NzIyNWEzYTli
MTQ1NWQ0MjFmNzMwNjBlMzdjNTUzMDguLjMzY2I1ZGVjZjY1MWM2NTg2NjMzOThkMDFmMTY4ZTMx
MjZmY2Y5ZWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9TaGFyZWFibGVCaXRt
YXAuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9TaGFyZWFibGVCaXRtYXAuY3BwCkBA
IC03OSw3ICs3OSw3IEBAIFBhc3NSZWZQdHI8U2hhcmVhYmxlQml0bWFwPiBTaGFyZWFibGVCaXRt
YXA6OmNyZWF0ZVNoYXJlYWJsZShjb25zdCBJbnRTaXplJiBzaXplCiB7CiAgICAgc2l6ZV90IG51
bUJ5dGVzID0gbnVtQnl0ZXNGb3JTaXplKHNpemUpOwogCi0gICAgUmVmUHRyPFNoYXJlZE1lbW9y
eT4gc2hhcmVkTWVtb3J5ID0gU2hhcmVkTWVtb3J5OjpjcmVhdGUobnVtQnl0ZXMpOworICAgIFJl
ZlB0cjxTaGFyZWRNZW1vcnk+IHNoYXJlZE1lbW9yeSA9IFNoYXJlZE1lbW9yeTo6YWxsb2NhdGUo
bnVtQnl0ZXMpOwogICAgIGlmICghc2hhcmVkTWVtb3J5KQogICAgICAgICByZXR1cm4gbnVsbHB0
cjsKIApAQCAtOTksNyArOTksNyBAQCBQYXNzUmVmUHRyPFNoYXJlYWJsZUJpdG1hcD4gU2hhcmVh
YmxlQml0bWFwOjpjcmVhdGUoY29uc3QgSW50U2l6ZSYgc2l6ZSwgRmxhZ3MgZgogUGFzc1JlZlB0
cjxTaGFyZWFibGVCaXRtYXA+IFNoYXJlYWJsZUJpdG1hcDo6Y3JlYXRlKGNvbnN0IEhhbmRsZSYg
aGFuZGxlLCBTaGFyZWRNZW1vcnk6OlByb3RlY3Rpb24gcHJvdGVjdGlvbikKIHsKICAgICAvLyBD
cmVhdGUgdGhlIHNoYXJlZCBtZW1vcnkuCi0gICAgUmVmUHRyPFNoYXJlZE1lbW9yeT4gc2hhcmVk
TWVtb3J5ID0gU2hhcmVkTWVtb3J5OjpjcmVhdGUoaGFuZGxlLm1faGFuZGxlLCBwcm90ZWN0aW9u
KTsKKyAgICBSZWZQdHI8U2hhcmVkTWVtb3J5PiBzaGFyZWRNZW1vcnkgPSBTaGFyZWRNZW1vcnk6
Om1hcChoYW5kbGUubV9oYW5kbGUsIHByb3RlY3Rpb24pOwogICAgIGlmICghc2hhcmVkTWVtb3J5
KQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
U2hhcmVkL1NoYXJlYWJsZVJlc291cmNlLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9TaGFy
ZWFibGVSZXNvdXJjZS5jcHAKaW5kZXggZGVmZDcxMjY3MDFmOGI4OTg1MGFkMmFjYTk4N2Q5Njk3
NzEyYTlhNS4uODNmZmE3MGM0YjY3NGM0MWVmNzdlNGMyZjQ1ZDgzNDlkNWJhMTdlMiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1NoYXJlYWJsZVJlc291cmNlLmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9TaGFyZWQvU2hhcmVhYmxlUmVzb3VyY2UuY3BwCkBAIC0xMDQsNyArMTA0
LDcgQEAgUGFzc1JlZlB0cjxTaGFyZWFibGVSZXNvdXJjZT4gU2hhcmVhYmxlUmVzb3VyY2U6OmNy
ZWF0ZShQYXNzUmVmUHRyPFNoYXJlZE1lbW9yeT4KIAogUGFzc1JlZlB0cjxTaGFyZWFibGVSZXNv
dXJjZT4gU2hhcmVhYmxlUmVzb3VyY2U6OmNyZWF0ZShjb25zdCBIYW5kbGUmIGhhbmRsZSkKIHsK
LSAgICBSZWZQdHI8U2hhcmVkTWVtb3J5PiBzaGFyZWRNZW1vcnkgPSBTaGFyZWRNZW1vcnk6OmNy
ZWF0ZShoYW5kbGUubV9oYW5kbGUsIFNoYXJlZE1lbW9yeTo6UHJvdGVjdGlvbjo6UmVhZE9ubHkp
OworICAgIFJlZlB0cjxTaGFyZWRNZW1vcnk+IHNoYXJlZE1lbW9yeSA9IFNoYXJlZE1lbW9yeTo6
bWFwKGhhbmRsZS5tX2hhbmRsZSwgU2hhcmVkTWVtb3J5OjpQcm90ZWN0aW9uOjpSZWFkT25seSk7
CiAgICAgaWYgKCFzaGFyZWRNZW1vcnkpCiAgICAgICAgIHJldHVybiAwOwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvU2hhcmVhYmxlUmVzb3VyY2UuaCBiL1NvdXJjZS9XZWJL
aXQyL1NoYXJlZC9TaGFyZWFibGVSZXNvdXJjZS5oCmluZGV4IDYxMmQ5YTExNzk4M2NlNWRkMGYz
MzFjYzQyNWMwZWIwYjA1NzVhZmQuLmY4NzMyZjM4MGNlZjg4MjYwN2FkMTk2MTRkZDhiYjBhYjQ4
NzBiZDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9TaGFyZWFibGVSZXNvdXJj
ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9TaGFyZWFibGVSZXNvdXJjZS5oCkBAIC03
Myw2ICs3Myw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxTaGFyZWFibGVSZXNv
dXJjZT4gY3JlYXRlKFBhc3NSZWZQdHI8U2hhcmVkTWVtb3J5PiwgdW5zaWduZWQgb2Zmc2V0LCB1
bnNpZ25lZCBzaXplKTsKIAogICAgIC8vIENyZWF0ZSBhIHNoYXJlYWJsZSByZXNvdXJjZSBmcm9t
IGEgaGFuZGxlLgorICAgIC8vIEZJWE1FOiBSZW5hbWUgdGhpcyB0byBtYXAuCiAgICAgc3RhdGlj
IFBhc3NSZWZQdHI8U2hhcmVhYmxlUmVzb3VyY2U+IGNyZWF0ZShjb25zdCBIYW5kbGUmKTsKIAog
ICAgIC8vIENyZWF0ZSBhIGhhbmRsZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJl
ZC9XZWJDb21waWxlZENvbnRlbnRFeHRlbnNpb24uY3BwIGIvU291cmNlL1dlYktpdDIvU2hhcmVk
L1dlYkNvbXBpbGVkQ29udGVudEV4dGVuc2lvbi5jcHAKaW5kZXggNDllYjdjZGU3MzNiYjIzN2Y5
ZTNkNTYxYWU3ZTAyNDJiNjlmMjBhNS4uNWE2MGIwNGY0NWQyZWZlZjM5YmVkMTEyZDNiOWY3OTVk
NGY0NWYwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkNvbXBpbGVkQ29u
dGVudEV4dGVuc2lvbi5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkNvbXBpbGVk
Q29udGVudEV4dGVuc2lvbi5jcHAKQEAgLTQ4LDcgKzQ4LDcgQEAgdm9pZCBMZWdhY3lDb250ZW50
RXh0ZW5zaW9uQ29tcGlsYXRpb25DbGllbnQ6OndyaXRlQWN0aW9ucyhWZWN0b3I8V2ViQ29yZTo6
Q29udGUKIAogUmVmPFdlYkNvbXBpbGVkQ29udGVudEV4dGVuc2lvbj4gV2ViQ29tcGlsZWRDb250
ZW50RXh0ZW5zaW9uOjpjcmVhdGVGcm9tQ29tcGlsZWRDb250ZW50RXh0ZW5zaW9uRGF0YShjb25z
dCBXZWJDb3JlOjpDb250ZW50RXh0ZW5zaW9uczo6Q29tcGlsZWRDb250ZW50RXh0ZW5zaW9uRGF0
YSYgY29tcGlsZXJEYXRhKQogewotICAgIFJlZlB0cjxTaGFyZWRNZW1vcnk+IHNoYXJlZE1lbW9y
eSA9IFNoYXJlZE1lbW9yeTo6Y3JlYXRlKGNvbXBpbGVyRGF0YS5ieXRlY29kZS5zaXplKCkgKyBj
b21waWxlckRhdGEuYWN0aW9ucy5zaXplKCkpOworICAgIFJlZlB0cjxTaGFyZWRNZW1vcnk+IHNo
YXJlZE1lbW9yeSA9IFNoYXJlZE1lbW9yeTo6YWxsb2NhdGUoY29tcGlsZXJEYXRhLmJ5dGVjb2Rl
LnNpemUoKSArIGNvbXBpbGVyRGF0YS5hY3Rpb25zLnNpemUoKSk7CiAgICAgbWVtY3B5KHN0YXRp
Y19jYXN0PGNoYXIqPihzaGFyZWRNZW1vcnktPmRhdGEoKSksIGNvbXBpbGVyRGF0YS5hY3Rpb25z
LmRhdGEoKSwgY29tcGlsZXJEYXRhLmFjdGlvbnMuc2l6ZSgpKTsKICAgICBtZW1jcHkoc3RhdGlj
X2Nhc3Q8Y2hhcio+KHNoYXJlZE1lbW9yeS0+ZGF0YSgpKSArIGNvbXBpbGVyRGF0YS5hY3Rpb25z
LnNpemUoKSwgY29tcGlsZXJEYXRhLmJ5dGVjb2RlLmRhdGEoKSwgY29tcGlsZXJEYXRhLmJ5dGVj
b2RlLnNpemUoKSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJDb21w
aWxlZENvbnRlbnRFeHRlbnNpb25EYXRhLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJD
b21waWxlZENvbnRlbnRFeHRlbnNpb25EYXRhLmNwcAppbmRleCAyMDU5YmQ2YmE3ZmIyYzJlYTUy
NDAxMWNlOGMwOGU1NjA0YWNmZjMxLi4zODBjODY1YjJkNDYyM2M1MWViYTFjZTg0ZjBhNGI2OWQ4
ODFmM2JmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViQ29tcGlsZWRDb250
ZW50RXh0ZW5zaW9uRGF0YS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkNvbXBp
bGVkQ29udGVudEV4dGVuc2lvbkRhdGEuY3BwCkBAIC00OSw3ICs0OSw3IEBAIGJvb2wgV2ViQ29t
cGlsZWRDb250ZW50RXh0ZW5zaW9uRGF0YTo6ZGVjb2RlKElQQzo6QXJndW1lbnREZWNvZGVyJiBk
ZWNvZGVyLCBXZWJDCiAgICAgU2hhcmVkTWVtb3J5OjpIYW5kbGUgaGFuZGxlOwogICAgIGlmICgh
ZGVjb2Rlci5kZWNvZGUoaGFuZGxlKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIGNvbXBp
bGVkQ29udGVudEV4dGVuc2lvbkRhdGEuZGF0YSA9IFNoYXJlZE1lbW9yeTo6Y3JlYXRlKGhhbmRs
ZSwgU2hhcmVkTWVtb3J5OjpQcm90ZWN0aW9uOjpSZWFkT25seSk7CisgICAgY29tcGlsZWRDb250
ZW50RXh0ZW5zaW9uRGF0YS5kYXRhID0gU2hhcmVkTWVtb3J5OjptYXAoaGFuZGxlLCBTaGFyZWRN
ZW1vcnk6OlByb3RlY3Rpb246OlJlYWRPbmx5KTsKIAogICAgIGlmICghZGVjb2Rlci5kZWNvZGUo
Y29tcGlsZWRDb250ZW50RXh0ZW5zaW9uRGF0YS5hY3Rpb25zT2Zmc2V0KSkKICAgICAgICAgcmV0
dXJuIGZhbHNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkhpdFRlc3RS
ZXN1bHQuY3BwIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkhpdFRlc3RSZXN1bHQuY3BwCmlu
ZGV4IDExYTY5ODg3NGE4Nzk4NDIxZWRkMjI0MDE3ZjBiYjJiODY0MDYwNDcuLjkxMTBkY2M4YTFk
NWYyOGQ5YjQ2MTlhNDRiMDhmNmM5ZGVjODAyNzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQy
L1NoYXJlZC9XZWJIaXRUZXN0UmVzdWx0LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
V2ViSGl0VGVzdFJlc3VsdC5jcHAKQEAgLTg2LDcgKzg2LDcgQEAgV2ViSGl0VGVzdFJlc3VsdDo6
RGF0YTo6RGF0YShjb25zdCBXZWJDb3JlOjpIaXRUZXN0UmVzdWx0JiBoaXRUZXN0UmVzdWx0LCBi
b29sIGkKICAgICAgICAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gYnVmZmVyID0gaW1hZ2UtPmRhdGEo
KTsKICAgICAgICAgU3RyaW5nIGZpbGVuYW1lRXh0ZW5zaW9uID0gaW1hZ2UtPmZpbGVuYW1lRXh0
ZW5zaW9uKCk7CiAgICAgICAgIGlmICghZmlsZW5hbWVFeHRlbnNpb24uaXNFbXB0eSgpICYmIGJ1
ZmZlcikgewotICAgICAgICAgICAgaW1hZ2VTaGFyZWRNZW1vcnkgPSBTaGFyZWRNZW1vcnk6OmNy
ZWF0ZShidWZmZXItPnNpemUoKSk7CisgICAgICAgICAgICBpbWFnZVNoYXJlZE1lbW9yeSA9IFNo
YXJlZE1lbW9yeTo6YWxsb2NhdGUoYnVmZmVyLT5zaXplKCkpOwogICAgICAgICAgICAgbWVtY3B5
KGltYWdlU2hhcmVkTWVtb3J5LT5kYXRhKCksIGJ1ZmZlci0+ZGF0YSgpLCBidWZmZXItPnNpemUo
KSk7CiAgICAgICAgICAgICBpbWFnZUV4dGVuc2lvbiA9IGZpbGVuYW1lRXh0ZW5zaW9uOwogICAg
ICAgICAgICAgaW1hZ2VTaXplID0gYnVmZmVyLT5zaXplKCk7CkBAIC0xNTksNyArMTU5LDcgQEAg
Ym9vbCBXZWJIaXRUZXN0UmVzdWx0OjpEYXRhOjpkZWNvZGUoSVBDOjpBcmd1bWVudERlY29kZXIm
IGRlY29kZXIsIFdlYkhpdFRlc3RSZXMKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgaWYg
KCFpbWFnZUhhbmRsZS5pc051bGwoKSkKLSAgICAgICAgaGl0VGVzdFJlc3VsdERhdGEuaW1hZ2VT
aGFyZWRNZW1vcnkgPSBTaGFyZWRNZW1vcnk6OmNyZWF0ZShpbWFnZUhhbmRsZSwgU2hhcmVkTWVt
b3J5OjpQcm90ZWN0aW9uOjpSZWFkT25seSk7CisgICAgICAgIGhpdFRlc3RSZXN1bHREYXRhLmlt
YWdlU2hhcmVkTWVtb3J5ID0gU2hhcmVkTWVtb3J5OjptYXAoaW1hZ2VIYW5kbGUsIFNoYXJlZE1l
bW9yeTo6UHJvdGVjdGlvbjo6UmVhZE9ubHkpOwogCiAgICAgaWYgKCFkZWNvZGVyLmRlY29kZSho
aXRUZXN0UmVzdWx0RGF0YS5pbWFnZVNpemUpKQogICAgICAgICByZXR1cm4gZmFsc2U7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQ29jb2EvV2ViUGFzdGVib2FyZFByb3h5
Q29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQ29jb2EvV2ViUGFzdGVib2FyZFBy
b3h5Q29jb2EubW0KaW5kZXggYTlhMGY4YTY0NTYyM2MxNjZkOWE1Y2IyYjEwZjJkNzE1YWZiMDJi
Ny4uMDIyNTQ5NzExMjQ2YTlmMjE5Yzc5YmI2Y2UyMGFkYmJkOTkyOTM0YyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0NvY29hL1dlYlBhc3RlYm9hcmRQcm94eUNvY29hLm1t
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9Db2NvYS9XZWJQYXN0ZWJvYXJkUHJveHlD
b2NvYS5tbQpAQCAtNTYsNyArNTYsNyBAQCB2b2lkIFdlYlBhc3RlYm9hcmRQcm94eTo6Z2V0UGFz
dGVib2FyZEJ1ZmZlckZvclR5cGUoY29uc3QgU3RyaW5nJiBwYXN0ZWJvYXJkTmFtZQogICAgIGlm
ICghYnVmZmVyKQogICAgICAgICByZXR1cm47CiAgICAgc2l6ZSA9IGJ1ZmZlci0+c2l6ZSgpOwot
ICAgIFJlZlB0cjxTaGFyZWRNZW1vcnk+IHNoYXJlZE1lbW9yeUJ1ZmZlciA9IFNoYXJlZE1lbW9y
eTo6Y3JlYXRlKHNpemUpOworICAgIFJlZlB0cjxTaGFyZWRNZW1vcnk+IHNoYXJlZE1lbW9yeUJ1
ZmZlciA9IFNoYXJlZE1lbW9yeTo6YWxsb2NhdGUoc2l6ZSk7CiAgICAgaWYgKCFzaGFyZWRNZW1v
cnlCdWZmZXIpCiAgICAgICAgIHJldHVybjsKICAgICBtZW1jcHkoc2hhcmVkTWVtb3J5QnVmZmVy
LT5kYXRhKCksIGJ1ZmZlci0+ZGF0YSgpLCBzaXplKTsKQEAgLTExNCw3ICsxMTQsNyBAQCB2b2lk
IFdlYlBhc3RlYm9hcmRQcm94eTo6c2V0UGFzdGVib2FyZEJ1ZmZlckZvclR5cGUoY29uc3QgU3Ry
aW5nJiBwYXN0ZWJvYXJkTmFtZQogICAgICAgICBuZXdDaGFuZ2VDb3VudCA9IFBsYXRmb3JtUGFz
dGVib2FyZChwYXN0ZWJvYXJkTmFtZSkuc2V0QnVmZmVyRm9yVHlwZSgwLCBwYXN0ZWJvYXJkVHlw
ZSk7CiAgICAgICAgIHJldHVybjsKICAgICB9Ci0gICAgUmVmUHRyPFNoYXJlZE1lbW9yeT4gc2hh
cmVkTWVtb3J5QnVmZmVyID0gU2hhcmVkTWVtb3J5OjpjcmVhdGUoaGFuZGxlLCBTaGFyZWRNZW1v
cnk6OlByb3RlY3Rpb246OlJlYWRPbmx5KTsKKyAgICBSZWZQdHI8U2hhcmVkTWVtb3J5PiBzaGFy
ZWRNZW1vcnlCdWZmZXIgPSBTaGFyZWRNZW1vcnk6Om1hcChoYW5kbGUsIFNoYXJlZE1lbW9yeTo6
UHJvdGVjdGlvbjo6UmVhZE9ubHkpOwogICAgIFJlZlB0cjxTaGFyZWRCdWZmZXI+IGJ1ZmZlciA9
IFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKHN0YXRpY19jYXN0PHVuc2lnbmVkIGNoYXIgKj4oc2hhcmVk
TWVtb3J5QnVmZmVyLT5kYXRhKCkpLCBzaXplKTsKICAgICBuZXdDaGFuZ2VDb3VudCA9IFBsYXRm
b3JtUGFzdGVib2FyZChwYXN0ZWJvYXJkTmFtZSkuc2V0QnVmZmVyRm9yVHlwZShidWZmZXIsIHBh
c3RlYm9hcmRUeXBlKTsKIH0KQEAgLTE1MSw3ICsxNTEsNyBAQCB2b2lkIFdlYlBhc3RlYm9hcmRQ
cm94eTo6cmVhZEJ1ZmZlckZyb21QYXN0ZWJvYXJkKHVpbnQ2NF90IGluZGV4LCBjb25zdCBTdHJp
bmcmCiAgICAgaWYgKCFidWZmZXIpCiAgICAgICAgIHJldHVybjsKICAgICBzaXplID0gYnVmZmVy
LT5zaXplKCk7Ci0gICAgUmVmUHRyPFNoYXJlZE1lbW9yeT4gc2hhcmVkTWVtb3J5QnVmZmVyID0g
U2hhcmVkTWVtb3J5OjpjcmVhdGUoc2l6ZSk7CisgICAgUmVmUHRyPFNoYXJlZE1lbW9yeT4gc2hh
cmVkTWVtb3J5QnVmZmVyID0gU2hhcmVkTWVtb3J5OjphbGxvY2F0ZShzaXplKTsKICAgICBpZiAo
IXNoYXJlZE1lbW9yeUJ1ZmZlcikKICAgICAgICAgcmV0dXJuOwogICAgIG1lbWNweShzaGFyZWRN
ZW1vcnlCdWZmZXItPmRhdGEoKSwgYnVmZmVyLT5kYXRhKCksIHNpemUpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1Zpc2l0ZWRMaW5rUHJvdmlkZXIuY3BwIGIvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL1Zpc2l0ZWRMaW5rUHJvdmlkZXIuY3BwCmluZGV4IDRkZjE3YzE4
NTQ2Y2ZmMjIzZTcxZmU3NTU5MDBiY2QxNDkxYzYxNmQuLmIyZDM0ZTcxZTdmZDUyZDNjYjc1Y2Q1
YjRlMjE0OGYxNjc0Y2RmYTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9W
aXNpdGVkTGlua1Byb3ZpZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvVmlz
aXRlZExpbmtQcm92aWRlci5jcHAKQEAgLTIwMCw3ICsyMDAsNyBAQCB2b2lkIFZpc2l0ZWRMaW5r
UHJvdmlkZXI6OnBlbmRpbmdWaXNpdGVkTGlua3NUaW1lckZpcmVkKCkKIAogdm9pZCBWaXNpdGVk
TGlua1Byb3ZpZGVyOjpyZXNpemVUYWJsZSh1bnNpZ25lZCBuZXdUYWJsZVNpemUpCiB7Ci0gICAg
UmVmUHRyPFNoYXJlZE1lbW9yeT4gbmV3VGFibGVNZW1vcnkgPSBTaGFyZWRNZW1vcnk6OmNyZWF0
ZShuZXdUYWJsZVNpemUgKiBzaXplb2YoTGlua0hhc2gpKTsKKyAgICBSZWZQdHI8U2hhcmVkTWVt
b3J5PiBuZXdUYWJsZU1lbW9yeSA9IFNoYXJlZE1lbW9yeTo6YWxsb2NhdGUobmV3VGFibGVTaXpl
ICogc2l6ZW9mKExpbmtIYXNoKSk7CiAKICAgICBpZiAoIW5ld1RhYmxlTWVtb3J5KSB7CiAgICAg
ICAgIExPR19FUlJPUigiQ291bGQgbm90IGFsbG9jYXRlIHNoYXJlZCBtZW1vcnkgZm9yIHZpc2l0
ZWQgbGluayB0YWJsZSIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lv
cy9XZWJQYWdlUHJveHlJT1MubW0gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dlYlBh
Z2VQcm94eUlPUy5tbQppbmRleCBhYmY1YjU1MTRmZjE2OWE2NmZlYTM0MjgyOTgyYjEyMDUyYzA5
YTczLi5jMzMwMDdiYjg0NjliNzk3MmQ1OTVhMjUxNzJhN2U3MzBiODA4ZTcwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dlYlBhZ2VQcm94eUlPUy5tbQorKysgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dlYlBhZ2VQcm94eUlPUy5tbQpAQCAtNTYxLDcg
KzU2MSw3IEBAIHZvaWQgV2ViUGFnZVByb3h5OjpwZXJmb3JtQWN0aW9uT25FbGVtZW50KHVpbnQz
Ml90IGFjdGlvbikKIAogdm9pZCBXZWJQYWdlUHJveHk6OnNhdmVJbWFnZVRvTGlicmFyeShjb25z
dCBTaGFyZWRNZW1vcnk6OkhhbmRsZSYgaW1hZ2VIYW5kbGUsIHVpbnQ2NF90IGltYWdlU2l6ZSkK
IHsKLSAgICBSZWZQdHI8U2hhcmVkTWVtb3J5PiBzaGFyZWRNZW1vcnlCdWZmZXIgPSBTaGFyZWRN
ZW1vcnk6OmNyZWF0ZShpbWFnZUhhbmRsZSwgU2hhcmVkTWVtb3J5OjpQcm90ZWN0aW9uOjpSZWFk
T25seSk7CisgICAgUmVmUHRyPFNoYXJlZE1lbW9yeT4gc2hhcmVkTWVtb3J5QnVmZmVyID0gU2hh
cmVkTWVtb3J5OjptYXAoaW1hZ2VIYW5kbGUsIFNoYXJlZE1lbW9yeTo6UHJvdGVjdGlvbjo6UmVh
ZE9ubHkpOwogICAgIFJlZlB0cjxTaGFyZWRCdWZmZXI+IGJ1ZmZlciA9IFNoYXJlZEJ1ZmZlcjo6
Y3JlYXRlKHN0YXRpY19jYXN0PHVuc2lnbmVkIGNoYXIqPihzaGFyZWRNZW1vcnlCdWZmZXItPmRh
dGEoKSksIGltYWdlU2l6ZSk7CiAgICAgbV9wYWdlQ2xpZW50LnNhdmVJbWFnZVRvTGlicmFyeShi
dWZmZXIpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL21hYy9XZWJQ
YWdlUHJveHlNYWMubW0gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1dlYlBhZ2VQcm94
eU1hYy5tbQppbmRleCBiODM1ODg2ZWIwNmVkMzQ1ZTg5NzI4ZDg1YzFhOTk3OWM1YTE2YzNlLi4w
NGRlNWIwNTFjZDYwNmRkMzkwNzc5ZThmNjJjNjIyMGQ4OTIyZDIxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1dlYlBhZ2VQcm94eU1hYy5tbQorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1dlYlBhZ2VQcm94eU1hYy5tbQpAQCAtMzc3LDcgKzM3Nyw3
IEBAIFBhc3NSZWZQdHI8V2ViQ29yZTo6U2hhcmVkQnVmZmVyPiBXZWJQYWdlUHJveHk6OmRhdGFT
ZWxlY3Rpb25Gb3JQYXN0ZWJvYXJkKGNvbnN0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBNZXNzYWdlczo6V2ViUGFnZTo6R2V0RGF0YVNlbGVjdGlvbkZv
clBhc3RlYm9hcmQ6OlJlcGx5KGhhbmRsZSwgc2l6ZSksIG1fcGFnZUlELCBtZXNzYWdlVGltZW91
dCk7CiAgICAgaWYgKGhhbmRsZS5pc051bGwoKSkKICAgICAgICAgcmV0dXJuIDA7Ci0gICAgUmVm
UHRyPFNoYXJlZE1lbW9yeT4gc2hhcmVkTWVtb3J5QnVmZmVyID0gU2hhcmVkTWVtb3J5OjpjcmVh
dGUoaGFuZGxlLCBTaGFyZWRNZW1vcnk6OlByb3RlY3Rpb246OlJlYWRPbmx5KTsKKyAgICBSZWZQ
dHI8U2hhcmVkTWVtb3J5PiBzaGFyZWRNZW1vcnlCdWZmZXIgPSBTaGFyZWRNZW1vcnk6Om1hcCho
YW5kbGUsIFNoYXJlZE1lbW9yeTo6UHJvdGVjdGlvbjo6UmVhZE9ubHkpOwogICAgIHJldHVybiBT
aGFyZWRCdWZmZXI6OmNyZWF0ZShzdGF0aWNfY2FzdDx1bnNpZ25lZCBjaGFyICo+KHNoYXJlZE1l
bW9yeUJ1ZmZlci0+ZGF0YSgpKSwgc2l6ZSk7CiB9CiAKQEAgLTQxMywxMiArNDEzLDEyIEBAIHZv
aWQgV2ViUGFnZVByb3h5OjpzZXRQcm9taXNlZERhdGFGb3JJbWFnZShjb25zdCBTdHJpbmcmIHBh
c3RlYm9hcmROYW1lLCBjb25zdCBTCiB7CiAgICAgTUVTU0FHRV9DSEVDS19VUkwodXJsKTsKICAg
ICBNRVNTQUdFX0NIRUNLX1VSTCh2aXNpYmxlVVJMKTsKLSAgICBSZWZQdHI8U2hhcmVkTWVtb3J5
PiBzaGFyZWRNZW1vcnlJbWFnZSA9IFNoYXJlZE1lbW9yeTo6Y3JlYXRlKGltYWdlSGFuZGxlLCBT
aGFyZWRNZW1vcnk6OlByb3RlY3Rpb246OlJlYWRPbmx5KTsKKyAgICBSZWZQdHI8U2hhcmVkTWVt
b3J5PiBzaGFyZWRNZW1vcnlJbWFnZSA9IFNoYXJlZE1lbW9yeTo6bWFwKGltYWdlSGFuZGxlLCBT
aGFyZWRNZW1vcnk6OlByb3RlY3Rpb246OlJlYWRPbmx5KTsKICAgICBSZWZQdHI8U2hhcmVkQnVm
ZmVyPiBpbWFnZUJ1ZmZlciA9IFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKHN0YXRpY19jYXN0PHVuc2ln
bmVkIGNoYXIqPihzaGFyZWRNZW1vcnlJbWFnZS0+ZGF0YSgpKSwgaW1hZ2VTaXplKTsKICAgICBS
ZWZQdHI8U2hhcmVkQnVmZmVyPiBhcmNoaXZlQnVmZmVyOwogICAgIAogICAgIGlmICghYXJjaGl2
ZUhhbmRsZS5pc051bGwoKSkgewotICAgICAgICBSZWZQdHI8U2hhcmVkTWVtb3J5PiBzaGFyZWRN
ZW1vcnlBcmNoaXZlID0gU2hhcmVkTWVtb3J5OjpjcmVhdGUoYXJjaGl2ZUhhbmRsZSwgU2hhcmVk
TWVtb3J5OjpQcm90ZWN0aW9uOjpSZWFkT25seSk7CisgICAgICAgIFJlZlB0cjxTaGFyZWRNZW1v
cnk+IHNoYXJlZE1lbW9yeUFyY2hpdmUgPSBTaGFyZWRNZW1vcnk6Om1hcChhcmNoaXZlSGFuZGxl
LCBTaGFyZWRNZW1vcnk6OlByb3RlY3Rpb246OlJlYWRPbmx5KTsKICAgICAgICAgYXJjaGl2ZUJ1
ZmZlciA9IFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKHN0YXRpY19jYXN0PHVuc2lnbmVkIGNoYXIqPihz
aGFyZWRNZW1vcnlBcmNoaXZlLT5kYXRhKCkpLCBhcmNoaXZlU2l6ZSk7CiAgICAgfQogICAgIG1f
cGFnZUNsaWVudC5zZXRQcm9taXNlZERhdGFGb3JJbWFnZShwYXN0ZWJvYXJkTmFtZSwgaW1hZ2VC
dWZmZXIsIGZpbGVuYW1lLCBleHRlbnNpb24sIHRpdGxlLCB1cmwsIHZpc2libGVVUkwsIGFyY2hp
dmVCdWZmZXIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5z
L1BERi9QREZQbHVnaW4ubW0gYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUERG
L1BERlBsdWdpbi5tbQppbmRleCBlNTMwOTI5OWMxNjI4MjU1ZTIzMjBjZjhkNDI0ZWZhZGZjYTUw
YmY0Li5jMDg5NGU5YjYxNzY4YWRiNmYxZmI3ZmE0YTU5YzkyZDQ0MmNlZTU1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUERGL1BERlBsdWdpbi5tbQorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUERGL1BERlBsdWdpbi5tbQpAQCAt
MTY5MCw3ICsxNjkwLDcgQEAgdm9pZCBQREZQbHVnaW46OndyaXRlSXRlbXNUb1Bhc3RlYm9hcmQo
TlNTdHJpbmcgKnBhc3RlYm9hcmROYW1lLCBOU0FycmF5ICppdGVtcywKICAgICAgICAgICAgICAg
ICBjb250aW51ZTsKIAogICAgICAgICAgICAgU2hhcmVkTWVtb3J5OjpIYW5kbGUgaGFuZGxlOwot
ICAgICAgICAgICAgUmVmUHRyPFNoYXJlZE1lbW9yeT4gc2hhcmVkTWVtb3J5ID0gU2hhcmVkTWVt
b3J5OjpjcmVhdGUoYnVmZmVyLT5zaXplKCkpOworICAgICAgICAgICAgUmVmUHRyPFNoYXJlZE1l
bW9yeT4gc2hhcmVkTWVtb3J5ID0gU2hhcmVkTWVtb3J5OjphbGxvY2F0ZShidWZmZXItPnNpemUo
KSk7CiAgICAgICAgICAgICBtZW1jcHkoc2hhcmVkTWVtb3J5LT5kYXRhKCksIGJ1ZmZlci0+ZGF0
YSgpLCBidWZmZXItPnNpemUoKSk7CiAgICAgICAgICAgICBzaGFyZWRNZW1vcnktPmNyZWF0ZUhh
bmRsZShoYW5kbGUsIFNoYXJlZE1lbW9yeTo6UHJvdGVjdGlvbjo6UmVhZE9ubHkpOwogICAgICAg
ICAgICAgd2ViUHJvY2Vzcy5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNz
YWdlczo6V2ViUGFzdGVib2FyZFByb3h5OjpTZXRQYXN0ZWJvYXJkQnVmZmVyRm9yVHlwZShwYXN0
ZWJvYXJkTmFtZSwgdHlwZSwgaGFuZGxlLCBidWZmZXItPnNpemUoKSksIE1lc3NhZ2VzOjpXZWJQ
YXN0ZWJvYXJkUHJveHk6OlNldFBhc3RlYm9hcmRCdWZmZXJGb3JUeXBlOjpSZXBseShuZXdDaGFu
Z2VDb3VudCksIDApOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJD
b3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuY3BwIGIvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuY3BwCmluZGV4IDhi
MjBlYTk3Yzg2YzRkYTQzOWNmNTEwMjYzNzQ5Y2NkNTFiNDE4ZjQuLjkxMWNkMmVlOWYxMDYzNzE4
MjE5YTVjMzRmMjc3ZGY3MGM0MTI1MWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2ll
cy5jcHAKQEAgLTQxMCw3ICs0MTAsNyBAQCBQYXNzUmVmUHRyPFdlYkNvcmU6OlNoYXJlZEJ1ZmZl
cj4gV2ViUGxhdGZvcm1TdHJhdGVnaWVzOjpidWZmZXJGb3JUeXBlKGNvbnN0IFN0cgogICAgIFdl
YlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5j
KE1lc3NhZ2VzOjpXZWJQYXN0ZWJvYXJkUHJveHk6OkdldFBhc3RlYm9hcmRCdWZmZXJGb3JUeXBl
KHBhc3RlYm9hcmROYW1lLCBwYXN0ZWJvYXJkVHlwZSksIE1lc3NhZ2VzOjpXZWJQYXN0ZWJvYXJk
UHJveHk6OkdldFBhc3RlYm9hcmRCdWZmZXJGb3JUeXBlOjpSZXBseShoYW5kbGUsIHNpemUpLCAw
KTsKICAgICBpZiAoaGFuZGxlLmlzTnVsbCgpKQogICAgICAgICByZXR1cm4gMDsKLSAgICBSZWZQ
dHI8U2hhcmVkTWVtb3J5PiBzaGFyZWRNZW1vcnlCdWZmZXIgPSBTaGFyZWRNZW1vcnk6OmNyZWF0
ZShoYW5kbGUsIFNoYXJlZE1lbW9yeTo6UHJvdGVjdGlvbjo6UmVhZE9ubHkpOworICAgIFJlZlB0
cjxTaGFyZWRNZW1vcnk+IHNoYXJlZE1lbW9yeUJ1ZmZlciA9IFNoYXJlZE1lbW9yeTo6bWFwKGhh
bmRsZSwgU2hhcmVkTWVtb3J5OjpQcm90ZWN0aW9uOjpSZWFkT25seSk7CiAgICAgcmV0dXJuIFNo
YXJlZEJ1ZmZlcjo6Y3JlYXRlKHN0YXRpY19jYXN0PHVuc2lnbmVkIGNoYXIgKj4oc2hhcmVkTWVt
b3J5QnVmZmVyLT5kYXRhKCkpLCBzaXplKTsKIH0KIApAQCAtNDc5LDcgKzQ3OSw3IEBAIGxvbmcg
V2ViUGxhdGZvcm1TdHJhdGVnaWVzOjpzZXRCdWZmZXJGb3JUeXBlKFBhc3NSZWZQdHI8U2hhcmVk
QnVmZmVyPiBidWZmZXIsIGNvCiB7CiAgICAgU2hhcmVkTWVtb3J5OjpIYW5kbGUgaGFuZGxlOwog
ICAgIGlmIChidWZmZXIpIHsKLSAgICAgICAgUmVmUHRyPFNoYXJlZE1lbW9yeT4gc2hhcmVkTWVt
b3J5QnVmZmVyID0gU2hhcmVkTWVtb3J5OjpjcmVhdGUoYnVmZmVyLT5zaXplKCkpOworICAgICAg
ICBSZWZQdHI8U2hhcmVkTWVtb3J5PiBzaGFyZWRNZW1vcnlCdWZmZXIgPSBTaGFyZWRNZW1vcnk6
OmFsbG9jYXRlKGJ1ZmZlci0+c2l6ZSgpKTsKICAgICAgICAgLy8gRklYTUU6IE51bGwgY2hlY2sg
cHJldmVudHMgY3Jhc2hpbmcsIGJ1dCBpdCBpcyBub3QgZ3JlYXQgdGhhdCB3ZSB3aWxsIGhhdmUg
ZW1wdHkgcGFzdGVib2FyZCBjb250ZW50IGZvciB0aGlzIHR5cGUsCiAgICAgICAgIC8vIGJlY2F1
c2Ugd2UndmUgYWxyZWFkeSBzZXQgdGhlIHR5cGVzLgogICAgICAgICBpZiAoc2hhcmVkTWVtb3J5
QnVmZmVyKSB7CkBAIC01MzYsNyArNTM2LDcgQEAgUGFzc1JlZlB0cjxXZWJDb3JlOjpTaGFyZWRC
dWZmZXI+IFdlYlBsYXRmb3JtU3RyYXRlZ2llczo6cmVhZEJ1ZmZlckZyb21QYXN0ZWJvYXIKICAg
ICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVjdGlvbigpLT5zZW5k
U3luYyhNZXNzYWdlczo6V2ViUGFzdGVib2FyZFByb3h5OjpSZWFkQnVmZmVyRnJvbVBhc3RlYm9h
cmQoaW5kZXgsIHBhc3RlYm9hcmRUeXBlKSwgTWVzc2FnZXM6OldlYlBhc3RlYm9hcmRQcm94eTo6
UmVhZEJ1ZmZlckZyb21QYXN0ZWJvYXJkOjpSZXBseShoYW5kbGUsIHNpemUpLCAwKTsKICAgICBp
ZiAoaGFuZGxlLmlzTnVsbCgpKQogICAgICAgICByZXR1cm4gMDsKLSAgICBSZWZQdHI8U2hhcmVk
TWVtb3J5PiBzaGFyZWRNZW1vcnlCdWZmZXIgPSBTaGFyZWRNZW1vcnk6OmNyZWF0ZShoYW5kbGUs
IFNoYXJlZE1lbW9yeTo6UHJvdGVjdGlvbjo6UmVhZE9ubHkpOworICAgIFJlZlB0cjxTaGFyZWRN
ZW1vcnk+IHNoYXJlZE1lbW9yeUJ1ZmZlciA9IFNoYXJlZE1lbW9yeTo6bWFwKGhhbmRsZSwgU2hh
cmVkTWVtb3J5OjpQcm90ZWN0aW9uOjpSZWFkT25seSk7CiAgICAgcmV0dXJuIFNoYXJlZEJ1ZmZl
cjo6Y3JlYXRlKHN0YXRpY19jYXN0PHVuc2lnbmVkIGNoYXIgKj4oc2hhcmVkTWVtb3J5QnVmZmVy
LT5kYXRhKCkpLCBzaXplKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViRHJhZ0NsaWVudE1hYy5tbSBiL1NvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvbWFjL1dlYkRyYWdDbGllbnRNYWMubW0KaW5k
ZXggMWFiMmVjOWQ0ZDlmMWY3YWE3NTNjZThjOWEyMTFiNWZiMTI2MjZjOC4uMDE0MmNjNmJlY2Zm
ZTgyMTVmOTlhOWU2ZjY0ZTEyZGZkNmQ2MDdkMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViRHJhZ0NsaWVudE1hYy5tbQorKysgYi9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L21hYy9XZWJEcmFnQ2xpZW50
TWFjLm1tCkBAIC0xMzUsNyArMTM1LDcgQEAgdm9pZCBXZWJEcmFnQ2xpZW50OjpkZWNsYXJlQW5k
V3JpdGVEcmFnSW1hZ2UoY29uc3QgU3RyaW5nJiBwYXN0ZWJvYXJkTmFtZSwgRWxlbWUKICAgICBz
aXplX3QgaW1hZ2VTaXplID0gaW1hZ2VCdWZmZXItPnNpemUoKTsKICAgICBTaGFyZWRNZW1vcnk6
OkhhbmRsZSBpbWFnZUhhbmRsZTsKICAgICAKLSAgICBSZWZQdHI8U2hhcmVkTWVtb3J5PiBzaGFy
ZWRNZW1vcnlCdWZmZXIgPSBTaGFyZWRNZW1vcnk6OmNyZWF0ZShpbWFnZUJ1ZmZlci0+c2l6ZSgp
KTsKKyAgICBSZWZQdHI8U2hhcmVkTWVtb3J5PiBzaGFyZWRNZW1vcnlCdWZmZXIgPSBTaGFyZWRN
ZW1vcnk6OmFsbG9jYXRlKGltYWdlQnVmZmVyLT5zaXplKCkpOwogICAgIGlmICghc2hhcmVkTWVt
b3J5QnVmZmVyKQogICAgICAgICByZXR1cm47CiAgICAgbWVtY3B5KHNoYXJlZE1lbW9yeUJ1ZmZl
ci0+ZGF0YSgpLCBpbWFnZUJ1ZmZlci0+ZGF0YSgpLCBpbWFnZVNpemUpOwpAQCAtMTQ2LDcgKzE0
Niw3IEBAIHZvaWQgV2ViRHJhZ0NsaWVudDo6ZGVjbGFyZUFuZFdyaXRlRHJhZ0ltYWdlKGNvbnN0
IFN0cmluZyYgcGFzdGVib2FyZE5hbWUsIEVsZW1lCiAgICAgc2l6ZV90IGFyY2hpdmVTaXplID0g
MDsKICAgICBpZiAoZGF0YSkgewogICAgICAgICBSZWZQdHI8U2hhcmVkQnVmZmVyPiBhcmNoaXZl
QnVmZmVyID0gU2hhcmVkQnVmZmVyOjp3cmFwTlNEYXRhKChOU0RhdGEgKilkYXRhLmdldCgpKTsK
LSAgICAgICAgUmVmUHRyPFNoYXJlZE1lbW9yeT4gYXJjaGl2ZVNoYXJlZE1lbW9yeUJ1ZmZlciA9
IFNoYXJlZE1lbW9yeTo6Y3JlYXRlKGFyY2hpdmVCdWZmZXItPnNpemUoKSk7CisgICAgICAgIFJl
ZlB0cjxTaGFyZWRNZW1vcnk+IGFyY2hpdmVTaGFyZWRNZW1vcnlCdWZmZXIgPSBTaGFyZWRNZW1v
cnk6OmFsbG9jYXRlKGFyY2hpdmVCdWZmZXItPnNpemUoKSk7CiAgICAgICAgIGlmICghYXJjaGl2
ZVNoYXJlZE1lbW9yeUJ1ZmZlcikKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgYXJjaGl2
ZVNpemUgPSBhcmNoaXZlQnVmZmVyLT5zaXplKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvVmlzaXRlZExpbmtUYWJsZUNvbnRyb2xsZXIuY3BwIGIvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1Zpc2l0ZWRMaW5rVGFibGVDb250cm9sbGVy
LmNwcAppbmRleCA1NzQ1ODU1MDI4OWFlZmEzY2E0OWMyZmM2ZTU0M2EyMTllZDU3ZWM0Li40MDAw
NjE2YmFmYzViN2JjYmRjNWEzMjZiNTZmNDY5MWJkMTQyOTcxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvVmlzaXRlZExpbmtUYWJsZUNvbnRyb2xsZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9WaXNpdGVkTGlua1RhYmxl
Q29udHJvbGxlci5jcHAKQEAgLTkwLDcgKzkwLDcgQEAgdm9pZCBWaXNpdGVkTGlua1RhYmxlQ29u
dHJvbGxlcjo6YWRkVmlzaXRlZExpbmsoUGFnZSYgcGFnZSwgTGlua0hhc2ggbGlua0hhc2gpCiAK
IHZvaWQgVmlzaXRlZExpbmtUYWJsZUNvbnRyb2xsZXI6OnNldFZpc2l0ZWRMaW5rVGFibGUoY29u
c3QgU2hhcmVkTWVtb3J5OjpIYW5kbGUmIGhhbmRsZSkKIHsKLSAgICBSZWZQdHI8U2hhcmVkTWVt
b3J5PiBzaGFyZWRNZW1vcnkgPSBTaGFyZWRNZW1vcnk6OmNyZWF0ZShoYW5kbGUsIFNoYXJlZE1l
bW9yeTo6UHJvdGVjdGlvbjo6UmVhZE9ubHkpOworICAgIFJlZlB0cjxTaGFyZWRNZW1vcnk+IHNo
YXJlZE1lbW9yeSA9IFNoYXJlZE1lbW9yeTo6bWFwKGhhbmRsZSwgU2hhcmVkTWVtb3J5OjpQcm90
ZWN0aW9uOjpSZWFkT25seSk7CiAgICAgaWYgKCFzaGFyZWRNZW1vcnkpCiAgICAgICAgIHJldHVy
bjsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9X
ZWJQYWdlSU9TLm1tIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQ
YWdlSU9TLm1tCmluZGV4IDUyODZmMDczOTNlZGRhMzc3ODNhZjZjNTEzZWQzZGM1NTQ5YjQ1M2Iu
LjdiZTBmNmEwNjBjZjNiNmFhMDEzZTBlZmI2NWNmNWE1ZWRiNjZmZjAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9pb3MvV2ViUGFnZUlPUy5tbQorKysgYi9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW0KQEAgLTIx
NzcsNyArMjE3Nyw3IEBAIHZvaWQgV2ViUGFnZTo6cGVyZm9ybUFjdGlvbk9uRWxlbWVudCh1aW50
MzJfdCBhY3Rpb24pCiAgICAgICAgIGlmICghYnVmZmVyKQogICAgICAgICAgICAgcmV0dXJuOwog
ICAgICAgICB1aW50NjRfdCBidWZmZXJTaXplID0gYnVmZmVyLT5zaXplKCk7Ci0gICAgICAgIFJl
ZlB0cjxTaGFyZWRNZW1vcnk+IHNoYXJlZE1lbW9yeUJ1ZmZlciA9IFNoYXJlZE1lbW9yeTo6Y3Jl
YXRlKGJ1ZmZlclNpemUpOworICAgICAgICBSZWZQdHI8U2hhcmVkTWVtb3J5PiBzaGFyZWRNZW1v
cnlCdWZmZXIgPSBTaGFyZWRNZW1vcnk6OmFsbG9jYXRlKGJ1ZmZlclNpemUpOwogICAgICAgICBt
ZW1jcHkoc2hhcmVkTWVtb3J5QnVmZmVyLT5kYXRhKCksIGJ1ZmZlci0+ZGF0YSgpLCBidWZmZXJT
aXplKTsKICAgICAgICAgU2hhcmVkTWVtb3J5OjpIYW5kbGUgaGFuZGxlOwogICAgICAgICBzaGFy
ZWRNZW1vcnlCdWZmZXItPmNyZWF0ZUhhbmRsZShoYW5kbGUsIFNoYXJlZE1lbW9yeTo6UHJvdGVj
dGlvbjo6UmVhZE9ubHkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9X
ZWJQYWdlL21hYy9XZWJQYWdlTWFjLm1tIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQ
YWdlL21hYy9XZWJQYWdlTWFjLm1tCmluZGV4IDVlZTk3YzY4MTc3NDlkY2Q5Y2IzMDBjOWYzNTAw
MWM0MmFmMmYzZjYuLjk3OWM1ZmU5YThiNzA3Yzk4Y2EwYmYyZDM1YTkwZjYzMDgwM2E5ZjAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMvV2ViUGFnZU1h
Yy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1dlYlBhZ2VN
YWMubW0KQEAgLTcxMCw3ICs3MTAsNyBAQCB2b2lkIFdlYlBhZ2U6OmdldERhdGFTZWxlY3Rpb25G
b3JQYXN0ZWJvYXJkKGNvbnN0IFN0cmluZyBwYXN0ZWJvYXJkVHlwZSwgU2hhcmVkTQogICAgICAg
ICByZXR1cm47CiAgICAgfQogICAgIHNpemUgPSBidWZmZXItPnNpemUoKTsKLSAgICBSZWZQdHI8
U2hhcmVkTWVtb3J5PiBzaGFyZWRNZW1vcnlCdWZmZXIgPSBTaGFyZWRNZW1vcnk6OmNyZWF0ZShz
aXplKTsKKyAgICBSZWZQdHI8U2hhcmVkTWVtb3J5PiBzaGFyZWRNZW1vcnlCdWZmZXIgPSBTaGFy
ZWRNZW1vcnk6OmFsbG9jYXRlKHNpemUpOwogICAgIG1lbWNweShzaGFyZWRNZW1vcnlCdWZmZXIt
PmRhdGEoKSwgYnVmZmVyLT5kYXRhKCksIHNpemUpOwogICAgIHNoYXJlZE1lbW9yeUJ1ZmZlci0+
Y3JlYXRlSGFuZGxlKGhhbmRsZSwgU2hhcmVkTWVtb3J5OjpQcm90ZWN0aW9uOjpSZWFkT25seSk7
CiB9Cg==
</data>
<flag name="review"
          id="275465"
          type_id="1"
          status="+"
          setter="bdakin"
    />
          </attachment>
      

    </bug>

</bugzilla>