<?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>121973</bug_id>
          
          <creation_ts>2013-09-26 13:33:02 -0700</creation_ts>
          <short_desc>Change a couple of HashMap value types from OwnPtr to std::unique_ptr</short_desc>
          <delta_ts>2013-09-26 13:43:02 -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>benjamin</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>933658</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-09-26 13:33:02 -0700</bug_when>
    <thetext>Change a couple of HashMap value types from OwnPtr to std::unique_ptr</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>933660</commentid>
    <comment_count>1</comment_count>
      <attachid>212739</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-09-26 13:34:58 -0700</bug_when>
    <thetext>Created attachment 212739
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>933666</commentid>
    <comment_count>2</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-09-26 13:43:02 -0700</bug_when>
    <thetext>Committed r156492: &lt;http://trac.webkit.org/changeset/156492&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>212739</attachid>
            <date>2013-09-26 13:34:58 -0700</date>
            <delta_ts>2013-09-26 13:36:16 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-121973-20130926133458.patch</filename>
            <type>text/plain</type>
            <size>19541</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTU2NDkwCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBi
Y2M4YWQ2Y2I1MTZiNzk5OWI2YTFkNzY1ZDMyMTdlZDE2ZDFmZmIyLi42YWM0MzgwYzNlNTEzNjg1
ZDFjNjkwMzQ2YTNhYzgxZjlkNWIxYWVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyOSBAQAorMjAxMy0wOS0yNiAgQW5kZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUu
Y29tPgorCisgICAgICAgIENoYW5nZSBhIGNvdXBsZSBvZiBIYXNoTWFwIHZhbHVlIHR5cGVzIGZy
b20gT3duUHRyIHRvIHN0ZDo6dW5pcXVlX3B0cgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTIxOTczCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgKiBBUEkvSlNDbGFzc1JlZi5jcHA6CisgICAgICAgIChPcGFx
dWVKU0NsYXNzQ29udGV4dERhdGE6Ok9wYXF1ZUpTQ2xhc3NDb250ZXh0RGF0YSk6CisgICAgICAg
IChPcGFxdWVKU0NsYXNzOjpjb250ZXh0RGF0YSk6CisgICAgICAgICogQVBJL0pTQ2xhc3NSZWYu
aDoKKyAgICAgICAgKiBieXRlY29kZS9TYW1wbGluZ1Rvb2wuaDoKKyAgICAgICAgKiBmdGwvRlRM
QWJzdHJhY3RIZWFwLmg6CisgICAgICAgICogcGFyc2VyL1BhcnNlci5jcHA6CisgICAgICAgIChK
U0M6Ojo6cGFyc2VGdW5jdGlvbkluZm8pOgorICAgICAgICAqIHBhcnNlci9Tb3VyY2VQcm92aWRl
ckNhY2hlLmNwcDoKKyAgICAgICAgKEpTQzo6U291cmNlUHJvdmlkZXJDYWNoZTo6YWRkKToKKyAg
ICAgICAgKiBwYXJzZXIvU291cmNlUHJvdmlkZXJDYWNoZS5oOgorICAgICAgICAqIHBhcnNlci9T
b3VyY2VQcm92aWRlckNhY2hlSXRlbS5oOgorICAgICAgICAoSlNDOjpTb3VyY2VQcm92aWRlckNh
Y2hlSXRlbTo6Y3JlYXRlKToKKyAgICAgICAgKiBwcm9maWxlci9Qcm9maWxlckNvbXBpbGF0aW9u
LmNwcDoKKyAgICAgICAgKEpTQzo6UHJvZmlsZXI6OkNvbXBpbGF0aW9uOjpleGVjdXRpb25Db3Vu
dGVyRm9yKToKKyAgICAgICAgKEpTQzo6UHJvZmlsZXI6OkNvbXBpbGF0aW9uOjp0b0pTKToKKyAg
ICAgICAgKiBwcm9maWxlci9Qcm9maWxlckNvbXBpbGF0aW9uLmg6CisgICAgICAgICogcnVudGlt
ZS9KU0dsb2JhbE9iamVjdC5oOgorCiAyMDEzLTA5LTI2ICBNYXJrIExhbSAgPG1hcmsubGFtQGFw
cGxlLmNvbT4KIAogICAgICAgICBNb3ZlIERGRyBpbmxpbmUgY2FjaGluZyBsb2dpYyBpbnRvIGpp
dC8uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5nZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdl
TG9nCmluZGV4IDg0OWIxOTk0YWViYmE0NmVlOWFkMjYxNjlhNGZiZGUyOTcyYzViZmIuLjNiYmNm
YmQ4MjQ0ZjRhZTAyOTg5NTcxZDhlZWIzMDkzNzFhZmU5OTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
VEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAK
KzIwMTMtMDktMjYgIEFuZGVycyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KKworICAg
ICAgICBDaGFuZ2UgYSBjb3VwbGUgb2YgSGFzaE1hcCB2YWx1ZSB0eXBlcyBmcm9tIE93blB0ciB0
byBzdGQ6OnVuaXF1ZV9wdHIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTEyMTk3MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgICogd3RmL1JlZlB0ckhhc2hNYXAuaDoKKyAgICAgICAgQWRkIGEgbWlzc2luZyBz
dGQ6OmZvcndhcmQuCisKKyAgICAgICAgKiB3dGYvU3RkTGliRXh0cmFzLmg6CisgICAgICAgIChz
dGQ6Om1ha2VfdW5pcXVlKToKKyAgICAgICAgQWRkIG1vcmUgb3ZlcmxvYWRzLgorCiAyMDEzLTA5
LTI2ICBKdWxpZW4gQnJpYW5jZWF1ICA8amJyaWFuY2VAY2lzY28uY29tPgogCiAgICAgICAgIFtR
dF0gUmVtb3ZlIFBhc3NUcmFpdHMuaCBmcm9tIFdURi5wcm8uCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQVBJL0pTQ2xhc3NSZWYuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L0FQSS9KU0NsYXNzUmVmLmNwcAppbmRleCBhMjgyNWU3YjZkNGEwNDI3M2QwMjM4ZDA5ODI4MDFm
YmEzYzVjZWM4Li41NDRjMzU5YjExNTlhNGNlM2FjYjI3ZjY0NjNlZDRhN2ZjZjNiYTU3IDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2xhc3NSZWYuY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDbGFzc1JlZi5jcHAKQEAgLTY2LDcgKzY2LDcgQEAg
T3BhcXVlSlNDbGFzczo6T3BhcXVlSlNDbGFzcyhjb25zdCBKU0NsYXNzRGVmaW5pdGlvbiogZGVm
aW5pdGlvbiwgT3BhcXVlSlNDbGFzcyoKICAgICAgICAgd2hpbGUgKHN0YXRpY1ZhbHVlLT5uYW1l
KSB7CiAgICAgICAgICAgICBTdHJpbmcgdmFsdWVOYW1lID0gU3RyaW5nOjpmcm9tVVRGOChzdGF0
aWNWYWx1ZS0+bmFtZSk7CiAgICAgICAgICAgICBpZiAoIXZhbHVlTmFtZS5pc051bGwoKSkKLSAg
ICAgICAgICAgICAgICBtX3N0YXRpY1ZhbHVlcy0+c2V0KHZhbHVlTmFtZS5pbXBsKCksIGFkb3B0
UHRyKG5ldyBTdGF0aWNWYWx1ZUVudHJ5KHN0YXRpY1ZhbHVlLT5nZXRQcm9wZXJ0eSwgc3RhdGlj
VmFsdWUtPnNldFByb3BlcnR5LCBzdGF0aWNWYWx1ZS0+YXR0cmlidXRlcywgdmFsdWVOYW1lKSkp
OworICAgICAgICAgICAgICAgIG1fc3RhdGljVmFsdWVzLT5zZXQodmFsdWVOYW1lLmltcGwoKSwg
c3RkOjptYWtlX3VuaXF1ZTxTdGF0aWNWYWx1ZUVudHJ5PihzdGF0aWNWYWx1ZS0+Z2V0UHJvcGVy
dHksIHN0YXRpY1ZhbHVlLT5zZXRQcm9wZXJ0eSwgc3RhdGljVmFsdWUtPmF0dHJpYnV0ZXMsIHZh
bHVlTmFtZSkpOwogICAgICAgICAgICAgKytzdGF0aWNWYWx1ZTsKICAgICAgICAgfQogICAgIH0K
QEAgLTc2LDcgKzc2LDcgQEAgT3BhcXVlSlNDbGFzczo6T3BhcXVlSlNDbGFzcyhjb25zdCBKU0Ns
YXNzRGVmaW5pdGlvbiogZGVmaW5pdGlvbiwgT3BhcXVlSlNDbGFzcyoKICAgICAgICAgd2hpbGUg
KHN0YXRpY0Z1bmN0aW9uLT5uYW1lKSB7CiAgICAgICAgICAgICBTdHJpbmcgZnVuY3Rpb25OYW1l
ID0gU3RyaW5nOjpmcm9tVVRGOChzdGF0aWNGdW5jdGlvbi0+bmFtZSk7CiAgICAgICAgICAgICBp
ZiAoIWZ1bmN0aW9uTmFtZS5pc051bGwoKSkKLSAgICAgICAgICAgICAgICBtX3N0YXRpY0Z1bmN0
aW9ucy0+c2V0KGZ1bmN0aW9uTmFtZS5pbXBsKCksIGFkb3B0UHRyKG5ldyBTdGF0aWNGdW5jdGlv
bkVudHJ5KHN0YXRpY0Z1bmN0aW9uLT5jYWxsQXNGdW5jdGlvbiwgc3RhdGljRnVuY3Rpb24tPmF0
dHJpYnV0ZXMpKSk7CisgICAgICAgICAgICAgICAgbV9zdGF0aWNGdW5jdGlvbnMtPnNldChmdW5j
dGlvbk5hbWUuaW1wbCgpLCBzdGQ6Om1ha2VfdW5pcXVlPFN0YXRpY0Z1bmN0aW9uRW50cnk+KHN0
YXRpY0Z1bmN0aW9uLT5jYWxsQXNGdW5jdGlvbiwgc3RhdGljRnVuY3Rpb24tPmF0dHJpYnV0ZXMp
KTsKICAgICAgICAgICAgICsrc3RhdGljRnVuY3Rpb247CiAgICAgICAgIH0KICAgICB9CkBAIC0x
MzEsMzAgKzEzMSwzMCBAQCBPcGFxdWVKU0NsYXNzQ29udGV4dERhdGE6Ok9wYXF1ZUpTQ2xhc3ND
b250ZXh0RGF0YShKU0M6OlZNJiwgT3BhcXVlSlNDbGFzcyoganNDbAogICAgIDogbV9jbGFzcyhq
c0NsYXNzKQogewogICAgIGlmIChqc0NsYXNzLT5tX3N0YXRpY1ZhbHVlcykgewotICAgICAgICBz
dGF0aWNWYWx1ZXMgPSBhZG9wdFB0cihuZXcgT3BhcXVlSlNDbGFzc1N0YXRpY1ZhbHVlc1RhYmxl
KTsKKyAgICAgICAgc3RhdGljVmFsdWVzID0gc3RkOjptYWtlX3VuaXF1ZTxPcGFxdWVKU0NsYXNz
U3RhdGljVmFsdWVzVGFibGU+KCk7CiAgICAgICAgIE9wYXF1ZUpTQ2xhc3NTdGF0aWNWYWx1ZXNU
YWJsZTo6Y29uc3RfaXRlcmF0b3IgZW5kID0ganNDbGFzcy0+bV9zdGF0aWNWYWx1ZXMtPmVuZCgp
OwogICAgICAgICBmb3IgKE9wYXF1ZUpTQ2xhc3NTdGF0aWNWYWx1ZXNUYWJsZTo6Y29uc3RfaXRl
cmF0b3IgaXQgPSBqc0NsYXNzLT5tX3N0YXRpY1ZhbHVlcy0+YmVnaW4oKTsgaXQgIT0gZW5kOyAr
K2l0KSB7CiAgICAgICAgICAgICBBU1NFUlQoIWl0LT5rZXktPmlzSWRlbnRpZmllcigpKTsKICAg
ICAgICAgICAgIFN0cmluZyB2YWx1ZU5hbWUgPSBpdC0+a2V5LT5pc29sYXRlZENvcHkoKTsKLSAg
ICAgICAgICAgIHN0YXRpY1ZhbHVlcy0+YWRkKHZhbHVlTmFtZS5pbXBsKCksIGFkb3B0UHRyKG5l
dyBTdGF0aWNWYWx1ZUVudHJ5KGl0LT52YWx1ZS0+Z2V0UHJvcGVydHksIGl0LT52YWx1ZS0+c2V0
UHJvcGVydHksIGl0LT52YWx1ZS0+YXR0cmlidXRlcywgdmFsdWVOYW1lKSkpOworICAgICAgICAg
ICAgc3RhdGljVmFsdWVzLT5hZGQodmFsdWVOYW1lLmltcGwoKSwgc3RkOjptYWtlX3VuaXF1ZTxT
dGF0aWNWYWx1ZUVudHJ5PihpdC0+dmFsdWUtPmdldFByb3BlcnR5LCBpdC0+dmFsdWUtPnNldFBy
b3BlcnR5LCBpdC0+dmFsdWUtPmF0dHJpYnV0ZXMsIHZhbHVlTmFtZSkpOwogICAgICAgICB9CiAg
ICAgfQogCiAgICAgaWYgKGpzQ2xhc3MtPm1fc3RhdGljRnVuY3Rpb25zKSB7Ci0gICAgICAgIHN0
YXRpY0Z1bmN0aW9ucyA9IGFkb3B0UHRyKG5ldyBPcGFxdWVKU0NsYXNzU3RhdGljRnVuY3Rpb25z
VGFibGUpOworICAgICAgICBzdGF0aWNGdW5jdGlvbnMgPSBzdGQ6Om1ha2VfdW5pcXVlPE9wYXF1
ZUpTQ2xhc3NTdGF0aWNGdW5jdGlvbnNUYWJsZT4oKTsKICAgICAgICAgT3BhcXVlSlNDbGFzc1N0
YXRpY0Z1bmN0aW9uc1RhYmxlOjpjb25zdF9pdGVyYXRvciBlbmQgPSBqc0NsYXNzLT5tX3N0YXRp
Y0Z1bmN0aW9ucy0+ZW5kKCk7CiAgICAgICAgIGZvciAoT3BhcXVlSlNDbGFzc1N0YXRpY0Z1bmN0
aW9uc1RhYmxlOjpjb25zdF9pdGVyYXRvciBpdCA9IGpzQ2xhc3MtPm1fc3RhdGljRnVuY3Rpb25z
LT5iZWdpbigpOyBpdCAhPSBlbmQ7ICsraXQpIHsKICAgICAgICAgICAgIEFTU0VSVCghaXQtPmtl
eS0+aXNJZGVudGlmaWVyKCkpOwotICAgICAgICAgICAgc3RhdGljRnVuY3Rpb25zLT5hZGQoaXQt
PmtleS0+aXNvbGF0ZWRDb3B5KCksIGFkb3B0UHRyKG5ldyBTdGF0aWNGdW5jdGlvbkVudHJ5KGl0
LT52YWx1ZS0+Y2FsbEFzRnVuY3Rpb24sIGl0LT52YWx1ZS0+YXR0cmlidXRlcykpKTsKKyAgICAg
ICAgICAgIHN0YXRpY0Z1bmN0aW9ucy0+YWRkKGl0LT5rZXktPmlzb2xhdGVkQ29weSgpLCBzdGQ6
Om1ha2VfdW5pcXVlPFN0YXRpY0Z1bmN0aW9uRW50cnk+KGl0LT52YWx1ZS0+Y2FsbEFzRnVuY3Rp
b24sIGl0LT52YWx1ZS0+YXR0cmlidXRlcykpOwogICAgICAgICB9CiAgICAgfQogfQogCiBPcGFx
dWVKU0NsYXNzQ29udGV4dERhdGEmIE9wYXF1ZUpTQ2xhc3M6OmNvbnRleHREYXRhKEV4ZWNTdGF0
ZSogZXhlYykKIHsKLSAgICBPd25QdHI8T3BhcXVlSlNDbGFzc0NvbnRleHREYXRhPiYgY29udGV4
dERhdGEgPSBleGVjLT5sZXhpY2FsR2xvYmFsT2JqZWN0KCktPm9wYXF1ZUpTQ2xhc3NEYXRhKCku
YWRkKHRoaXMsIG51bGxwdHIpLml0ZXJhdG9yLT52YWx1ZTsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8
T3BhcXVlSlNDbGFzc0NvbnRleHREYXRhPiYgY29udGV4dERhdGEgPSBleGVjLT5sZXhpY2FsR2xv
YmFsT2JqZWN0KCktPm9wYXF1ZUpTQ2xhc3NEYXRhKCkuYWRkKHRoaXMsIG51bGxwdHIpLml0ZXJh
dG9yLT52YWx1ZTsKICAgICBpZiAoIWNvbnRleHREYXRhKQotICAgICAgICBjb250ZXh0RGF0YSA9
IGFkb3B0UHRyKG5ldyBPcGFxdWVKU0NsYXNzQ29udGV4dERhdGEoZXhlYy0+dm0oKSwgdGhpcykp
OworICAgICAgICBjb250ZXh0RGF0YSA9IHN0ZDo6bWFrZV91bmlxdWU8T3BhcXVlSlNDbGFzc0Nv
bnRleHREYXRhPihleGVjLT52bSgpLCB0aGlzKTsKICAgICByZXR1cm4gKmNvbnRleHREYXRhOwog
fQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTQ2xhc3NSZWYuaCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDbGFzc1JlZi5oCmluZGV4IGQxY2RkZmVmZTRh
M2RkNTMyMzkyYTQyMGE1ZGJkZmQ5NDkwNzQzMzYuLmY5NzlmM2IyY2Y1ZjBjMmViNjU3NjgzZjQx
ZDAxZWQ4YmVlM2NiMmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlND
bGFzc1JlZi5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNDbGFzc1JlZi5oCkBA
IC01OSw4ICs1OSw4IEBAIHB1YmxpYzoKICAgICBKU1Byb3BlcnR5QXR0cmlidXRlcyBhdHRyaWJ1
dGVzOwogfTsKIAotdHlwZWRlZiBIYXNoTWFwPFJlZlB0cjxTdHJpbmdJbXBsPiwgT3duUHRyPFN0
YXRpY1ZhbHVlRW50cnk+ID4gT3BhcXVlSlNDbGFzc1N0YXRpY1ZhbHVlc1RhYmxlOwotdHlwZWRl
ZiBIYXNoTWFwPFJlZlB0cjxTdHJpbmdJbXBsPiwgT3duUHRyPFN0YXRpY0Z1bmN0aW9uRW50cnk+
ID4gT3BhcXVlSlNDbGFzc1N0YXRpY0Z1bmN0aW9uc1RhYmxlOwordHlwZWRlZiBIYXNoTWFwPFJl
ZlB0cjxTdHJpbmdJbXBsPiwgc3RkOjp1bmlxdWVfcHRyPFN0YXRpY1ZhbHVlRW50cnk+PiBPcGFx
dWVKU0NsYXNzU3RhdGljVmFsdWVzVGFibGU7Cit0eXBlZGVmIEhhc2hNYXA8UmVmUHRyPFN0cmlu
Z0ltcGw+LCBzdGQ6OnVuaXF1ZV9wdHI8U3RhdGljRnVuY3Rpb25FbnRyeT4+IE9wYXF1ZUpTQ2xh
c3NTdGF0aWNGdW5jdGlvbnNUYWJsZTsKIAogc3RydWN0IE9wYXF1ZUpTQ2xhc3M7CiAKQEAgLTc5
LDggKzc5LDggQEAgcHVibGljOgogICAgIC8vIDQuIFdoZW4gaXQgaXMgdXNlZCwgdGhlIG9sZCBj
b250ZXh0IGRhdGEgaXMgZm91bmQgaW4gVk0gYW5kIHVzZWQuCiAgICAgUmVmUHRyPE9wYXF1ZUpT
Q2xhc3M+IG1fY2xhc3M7CiAKLSAgICBPd25QdHI8T3BhcXVlSlNDbGFzc1N0YXRpY1ZhbHVlc1Rh
YmxlPiBzdGF0aWNWYWx1ZXM7Ci0gICAgT3duUHRyPE9wYXF1ZUpTQ2xhc3NTdGF0aWNGdW5jdGlv
bnNUYWJsZT4gc3RhdGljRnVuY3Rpb25zOworICAgIHN0ZDo6dW5pcXVlX3B0cjxPcGFxdWVKU0Ns
YXNzU3RhdGljVmFsdWVzVGFibGU+IHN0YXRpY1ZhbHVlczsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8
T3BhcXVlSlNDbGFzc1N0YXRpY0Z1bmN0aW9uc1RhYmxlPiBzdGF0aWNGdW5jdGlvbnM7CiAgICAg
SlNDOjpXZWFrPEpTQzo6SlNPYmplY3Q+IGNhY2hlZFByb3RvdHlwZTsKIH07CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9TYW1wbGluZ1Rvb2wuaCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9TYW1wbGluZ1Rvb2wuaAppbmRleCA1MTY5NjhhMzM4
YWVkYjQ1YjFlZTBjNDdhNTRmNGJhZmRlOGViYWYzLi4xZGZiOGVjY2EyYTVkM2M1YzA2NjliY2Q1
OWRkZmZlODVjM2U5OTFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNv
ZGUvU2FtcGxpbmdUb29sLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1Nh
bXBsaW5nVG9vbC5oCkBAIC0yMTEsNyArMjExLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgICAg
IHVuc2lnbmVkIG1fc2l6ZTsKICAgICB9OwogCi0gICAgdHlwZWRlZiBIYXNoTWFwPFNjcmlwdEV4
ZWN1dGFibGUqLCBPd25QdHI8U2NyaXB0U2FtcGxlUmVjb3JkPiA+IFNjcmlwdFNhbXBsZVJlY29y
ZE1hcDsKKyAgICB0eXBlZGVmIEhhc2hNYXA8U2NyaXB0RXhlY3V0YWJsZSosIHN0ZDo6dW5pcXVl
X3B0cjxTY3JpcHRTYW1wbGVSZWNvcmQ+PiBTY3JpcHRTYW1wbGVSZWNvcmRNYXA7CiAKICAgICBj
bGFzcyBTYW1wbGluZ1RocmVhZCB7CiAgICAgcHVibGljOgpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2Z0bC9GVExBYnN0cmFjdEhlYXAuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9mdGwvRlRMQWJzdHJhY3RIZWFwLmgKaW5kZXggZjBkM2UyNzIyZDRmYjQzNWM2ZmRhZjg2MzQ4
ZGNiODEzNmQ1ZWZkOS4uN2RlYTllNTdjMzRiYmI0NWQzMmYxMDAxN2EwNmQwMGFiZjllNWJmNSAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9GVExBYnN0cmFjdEhlYXAuaAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTEFic3RyYWN0SGVhcC5oCkBAIC0xNzcs
NyArMTc3LDcgQEAgcHJpdmF0ZToKICAgICAgICAgc3RhdGljIHZvaWQgY29uc3RydWN0RGVsZXRl
ZFZhbHVlKHB0cmRpZmZfdCYgc2xvdCkgeyBzbG90ID0gMTsgfQogICAgICAgICBzdGF0aWMgYm9v
bCBpc0RlbGV0ZWRWYWx1ZShwdHJkaWZmX3QgdmFsdWUpIHsgcmV0dXJuIHZhbHVlID09IDE7IH0K
ICAgICB9OwotICAgIHR5cGVkZWYgSGFzaE1hcDxwdHJkaWZmX3QsIE93blB0cjxBYnN0cmFjdEZp
ZWxkPiwgV1RGOjpJbnRIYXNoPHB0cmRpZmZfdD4sIFdpdGhvdXRaZXJvT3JPbmVIYXNoVHJhaXRz
PiBNYXBUeXBlOworICAgIHR5cGVkZWYgSGFzaE1hcDxwdHJkaWZmX3QsIHN0ZDo6dW5pcXVlX3B0
cjxBYnN0cmFjdEZpZWxkPiwgV1RGOjpJbnRIYXNoPHB0cmRpZmZfdD4sIFdpdGhvdXRaZXJvT3JP
bmVIYXNoVHJhaXRzPiBNYXBUeXBlOwogICAgIAogICAgIE93blB0cjxNYXBUeXBlPiBtX2xhcmdl
SW5kaWNlczsKICAgICBWZWN0b3I8Q1N0cmluZywgMTY+IG1fbGFyZ2VJbmRleE5hbWVzOwpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9QYXJzZXIuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3BhcnNlci9QYXJzZXIuY3BwCmluZGV4IGM2MzU2ZGRkODAyZGM2MTQ0
NzcxNWE3MjM5YzVhM2E2ZTZmODA1MWIuLjI2MTk4MzQ1N2FhNTAzMGVjNmMzNGE1NGUwYjU2OTE0
OTEzYjE2ZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2Vy
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1BhcnNlci5jcHAKQEAgLTk5
NSw3ICs5OTUsNyBAQCB0ZW1wbGF0ZSA8RnVuY3Rpb25SZXF1aXJlbWVudHMgcmVxdWlyZW1lbnRz
LCBib29sIG5hbWVJc0luQ29udGFpbmluZ1Njb3BlLCBjbGFzcwogICAgIC8vIENhY2hlIHRoZSB0
b2tlbml6ZXIgc3RhdGUgYW5kIHRoZSBmdW5jdGlvbiBzY29wZSB0aGUgZmlyc3QgdGltZSB0aGUg
ZnVuY3Rpb24gaXMgcGFyc2VkLgogICAgIC8vIEFueSBmdXR1cmUgcmVwYXJzaW5nIGNhbiB0aGVu
IHNraXAgdGhlIGZ1bmN0aW9uLgogICAgIHN0YXRpYyBjb25zdCBpbnQgbWluaW11bUZ1bmN0aW9u
TGVuZ3RoVG9DYWNoZSA9IDE2OwotICAgIE93blB0cjxTb3VyY2VQcm92aWRlckNhY2hlSXRlbT4g
bmV3SW5mbzsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8U291cmNlUHJvdmlkZXJDYWNoZUl0ZW0+IG5l
d0luZm87CiAgICAgaW50IGZ1bmN0aW9uTGVuZ3RoID0gY2xvc2VCcmFjZU9mZnNldCAtIG9wZW5C
cmFjZU9mZnNldDsKICAgICBpZiAoVHJlZUJ1aWxkZXI6OkNhblVzZUZ1bmN0aW9uQ2FjaGUgJiYg
bV9mdW5jdGlvbkNhY2hlICYmIGZ1bmN0aW9uTGVuZ3RoID4gbWluaW11bUZ1bmN0aW9uTGVuZ3Ro
VG9DYWNoZSkgewogICAgICAgICBTb3VyY2VQcm92aWRlckNhY2hlSXRlbUNyZWF0aW9uUGFyYW1l
dGVycyBwYXJhbWV0ZXJzOwpAQCAtMTAxMyw3ICsxMDEzLDcgQEAgdGVtcGxhdGUgPEZ1bmN0aW9u
UmVxdWlyZW1lbnRzIHJlcXVpcmVtZW50cywgYm9vbCBuYW1lSXNJbkNvbnRhaW5pbmdTY29wZSwg
Y2xhc3MKICAgICBtYXRjaE9yRmFpbChDTE9TRUJSQUNFKTsKICAgICAKICAgICBpZiAobmV3SW5m
bykKLSAgICAgICAgbV9mdW5jdGlvbkNhY2hlLT5hZGQob3BlbkJyYWNlT2Zmc2V0LCBuZXdJbmZv
LnJlbGVhc2UoKSk7CisgICAgICAgIG1fZnVuY3Rpb25DYWNoZS0+YWRkKG9wZW5CcmFjZU9mZnNl
dCwgc3RkOjptb3ZlKG5ld0luZm8pKTsKICAgICAKICAgICBuZXh0KCk7CiAgICAgcmV0dXJuIHRy
dWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1NvdXJjZVByb3Zp
ZGVyQ2FjaGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9Tb3VyY2VQcm92aWRl
ckNhY2hlLmNwcAppbmRleCBmMjg0ZWU2M2EzNzcxYTg4NzU0MGEzM2ViMWExODJlMTFiY2Q3NmZl
Li5iYzI4ZmIxNjZjZDBhZWZhM2FlYTA2MmVmMjU3NzQ3N2ZjN2QxNTE5IDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1NvdXJjZVByb3ZpZGVyQ2FjaGUuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvU291cmNlUHJvdmlkZXJDYWNoZS5jcHAKQEAg
LTM4LDkgKzM4LDkgQEAgdm9pZCBTb3VyY2VQcm92aWRlckNhY2hlOjpjbGVhcigpCiAgICAgbV9t
YXAuY2xlYXIoKTsKIH0KIAotdm9pZCBTb3VyY2VQcm92aWRlckNhY2hlOjphZGQoaW50IHNvdXJj
ZVBvc2l0aW9uLCBQYXNzT3duUHRyPFNvdXJjZVByb3ZpZGVyQ2FjaGVJdGVtPiBpdGVtKQordm9p
ZCBTb3VyY2VQcm92aWRlckNhY2hlOjphZGQoaW50IHNvdXJjZVBvc2l0aW9uLCBzdGQ6OnVuaXF1
ZV9wdHI8U291cmNlUHJvdmlkZXJDYWNoZUl0ZW0+IGl0ZW0pCiB7Ci0gICAgbV9tYXAuYWRkKHNv
dXJjZVBvc2l0aW9uLCBpdGVtKTsKKyAgICBtX21hcC5hZGQoc291cmNlUG9zaXRpb24sIHN0ZDo6
bW92ZShpdGVtKSk7CiB9CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9w
YXJzZXIvU291cmNlUHJvdmlkZXJDYWNoZS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNl
ci9Tb3VyY2VQcm92aWRlckNhY2hlLmgKaW5kZXggMDZiNmM0NWEyMDU4MzU2MTJkNjg0YjViNTYx
YzBjNzI0MDNhNzQzZC4uNzU1OGEwOWY0ZjgzOWQ2ZDY5OTFhMWZkODhhZjE5ZDMwNzNmNTFjYSAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9Tb3VyY2VQcm92aWRlckNh
Y2hlLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9Tb3VyY2VQcm92aWRlckNh
Y2hlLmgKQEAgLTQxLDExICs0MSwxMSBAQCBwdWJsaWM6CiAgICAgSlNfRVhQT1JUX1BSSVZBVEUg
flNvdXJjZVByb3ZpZGVyQ2FjaGUoKTsKIAogICAgIEpTX0VYUE9SVF9QUklWQVRFIHZvaWQgY2xl
YXIoKTsKLSAgICB2b2lkIGFkZChpbnQgc291cmNlUG9zaXRpb24sIFBhc3NPd25QdHI8U291cmNl
UHJvdmlkZXJDYWNoZUl0ZW0+KTsKKyAgICB2b2lkIGFkZChpbnQgc291cmNlUG9zaXRpb24sIHN0
ZDo6dW5pcXVlX3B0cjxTb3VyY2VQcm92aWRlckNhY2hlSXRlbT4pOwogICAgIGNvbnN0IFNvdXJj
ZVByb3ZpZGVyQ2FjaGVJdGVtKiBnZXQoaW50IHNvdXJjZVBvc2l0aW9uKSBjb25zdCB7IHJldHVy
biBtX21hcC5nZXQoc291cmNlUG9zaXRpb24pOyB9CiAKIHByaXZhdGU6Ci0gICAgSGFzaE1hcDxp
bnQsIE93blB0cjxTb3VyY2VQcm92aWRlckNhY2hlSXRlbT4gPiBtX21hcDsKKyAgICBIYXNoTWFw
PGludCwgc3RkOjp1bmlxdWVfcHRyPFNvdXJjZVByb3ZpZGVyQ2FjaGVJdGVtPj4gbV9tYXA7CiB9
OwogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1NvdXJjZVBy
b3ZpZGVyQ2FjaGVJdGVtLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1NvdXJjZVBy
b3ZpZGVyQ2FjaGVJdGVtLmgKaW5kZXggOGQzNWEzZDI3N2E2MDg0OWNkOGMxMTQyMjliNDRjMjk1
OTQ4YWNlOC4uMDQ5MDYwYmY2Y2IyMTIxOGU0YWE2OTEyMmNkNWFiNjAzNzdjODI2YyAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9Tb3VyY2VQcm92aWRlckNhY2hlSXRl
bS5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvU291cmNlUHJvdmlkZXJDYWNo
ZUl0ZW0uaApAQCAtNTMsNyArNTMsNyBAQCBzdHJ1Y3QgU291cmNlUHJvdmlkZXJDYWNoZUl0ZW1D
cmVhdGlvblBhcmFtZXRlcnMgewogY2xhc3MgU291cmNlUHJvdmlkZXJDYWNoZUl0ZW0gewogICAg
IFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwogcHVibGljOgotICAgIHN0YXRpYyBQYXNzT3duUHRy
PFNvdXJjZVByb3ZpZGVyQ2FjaGVJdGVtPiBjcmVhdGUoY29uc3QgU291cmNlUHJvdmlkZXJDYWNo
ZUl0ZW1DcmVhdGlvblBhcmFtZXRlcnMmKTsKKyAgICBzdGF0aWMgc3RkOjp1bmlxdWVfcHRyPFNv
dXJjZVByb3ZpZGVyQ2FjaGVJdGVtPiBjcmVhdGUoY29uc3QgU291cmNlUHJvdmlkZXJDYWNoZUl0
ZW1DcmVhdGlvblBhcmFtZXRlcnMmKTsKICAgICB+U291cmNlUHJvdmlkZXJDYWNoZUl0ZW0oKTsK
IAogICAgIEpTVG9rZW4gY2xvc2VCcmFjZVRva2VuKCkgY29uc3QgCkBAIC05OCwxMiArOTgsMTIg
QEAgaW5saW5lIFNvdXJjZVByb3ZpZGVyQ2FjaGVJdGVtOjp+U291cmNlUHJvdmlkZXJDYWNoZUl0
ZW0oKQogICAgICAgICBtX3ZhcmlhYmxlc1tpXS0+ZGVyZWYoKTsKIH0KIAotaW5saW5lIFBhc3NP
d25QdHI8U291cmNlUHJvdmlkZXJDYWNoZUl0ZW0+IFNvdXJjZVByb3ZpZGVyQ2FjaGVJdGVtOjpj
cmVhdGUoY29uc3QgU291cmNlUHJvdmlkZXJDYWNoZUl0ZW1DcmVhdGlvblBhcmFtZXRlcnMmIHBh
cmFtZXRlcnMpCitpbmxpbmUgc3RkOjp1bmlxdWVfcHRyPFNvdXJjZVByb3ZpZGVyQ2FjaGVJdGVt
PiBTb3VyY2VQcm92aWRlckNhY2hlSXRlbTo6Y3JlYXRlKGNvbnN0IFNvdXJjZVByb3ZpZGVyQ2Fj
aGVJdGVtQ3JlYXRpb25QYXJhbWV0ZXJzJiBwYXJhbWV0ZXJzKQogewogICAgIHNpemVfdCB2YXJp
YWJsZUNvdW50ID0gcGFyYW1ldGVycy53cml0dGVuVmFyaWFibGVzLnNpemUoKSArIHBhcmFtZXRl
cnMudXNlZFZhcmlhYmxlcy5zaXplKCk7CiAgICAgc2l6ZV90IG9iamVjdFNpemUgPSBzaXplb2Yo
U291cmNlUHJvdmlkZXJDYWNoZUl0ZW0pICsgc2l6ZW9mKFN0cmluZ0ltcGwqKSAqIHZhcmlhYmxl
Q291bnQ7CiAgICAgdm9pZCogc2xvdCA9IGZhc3RNYWxsb2Mob2JqZWN0U2l6ZSk7Ci0gICAgcmV0
dXJuIGFkb3B0UHRyKG5ldyAoc2xvdCkgU291cmNlUHJvdmlkZXJDYWNoZUl0ZW0ocGFyYW1ldGVy
cykpOworICAgIHJldHVybiBzdGQ6OnVuaXF1ZV9wdHI8U291cmNlUHJvdmlkZXJDYWNoZUl0ZW0+
KG5ldyAoc2xvdCkgU291cmNlUHJvdmlkZXJDYWNoZUl0ZW0ocGFyYW1ldGVycykpOwogfQogCiBp
bmxpbmUgU291cmNlUHJvdmlkZXJDYWNoZUl0ZW06OlNvdXJjZVByb3ZpZGVyQ2FjaGVJdGVtKGNv
bnN0IFNvdXJjZVByb3ZpZGVyQ2FjaGVJdGVtQ3JlYXRpb25QYXJhbWV0ZXJzJiBwYXJhbWV0ZXJz
KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Byb2ZpbGVyL1Byb2ZpbGVyQ29t
cGlsYXRpb24uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Byb2ZpbGVyL1Byb2ZpbGVyQ29t
cGlsYXRpb24uY3BwCmluZGV4IGY4MjQxNGZmYWFjMmFhY2M3N2IzZjE1YzMwNTI4NDVhNzBhMDJj
ZDQuLjU1NzY2Y2U1YzgwZWExOWZlMjhjMmQ5MjY0MzQwM2Y5ODJhMTRiYTYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wcm9maWxlci9Qcm9maWxlckNvbXBpbGF0aW9uLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcHJvZmlsZXIvUHJvZmlsZXJDb21waWxhdGlvbi5j
cHAKQEAgLTY5LDE0ICs2OSwxMSBAQCB2b2lkIENvbXBpbGF0aW9uOjphZGREZXNjcmlwdGlvbihj
b25zdCBDb21waWxlZEJ5dGVjb2RlJiBjb21waWxlZEJ5dGVjb2RlKQogCiBFeGVjdXRpb25Db3Vu
dGVyKiBDb21waWxhdGlvbjo6ZXhlY3V0aW9uQ291bnRlckZvcihjb25zdCBPcmlnaW5TdGFjayYg
b3JpZ2luKQogewotICAgIEhhc2hNYXA8T3JpZ2luU3RhY2ssIE93blB0cjxFeGVjdXRpb25Db3Vu
dGVyPiA+OjppdGVyYXRvciBpdGVyID0gbV9jb3VudGVycy5maW5kKG9yaWdpbik7Ci0gICAgaWYg
KGl0ZXIgIT0gbV9jb3VudGVycy5lbmQoKSkKLSAgICAgICAgcmV0dXJuIGl0ZXItPnZhbHVlLmdl
dCgpOwotICAgIAotICAgIE93blB0cjxFeGVjdXRpb25Db3VudGVyPiBjb3VudGVyID0gYWRvcHRQ
dHIobmV3IEV4ZWN1dGlvbkNvdW50ZXIoKSk7Ci0gICAgRXhlY3V0aW9uQ291bnRlciogcmVzdWx0
ID0gY291bnRlci5nZXQoKTsKLSAgICBtX2NvdW50ZXJzLmFkZChvcmlnaW4sIGNvdW50ZXIucmVs
ZWFzZSgpKTsKLSAgICByZXR1cm4gcmVzdWx0OworICAgIHN0ZDo6dW5pcXVlX3B0cjxFeGVjdXRp
b25Db3VudGVyPiYgY291bnRlciA9IG1fY291bnRlcnMuYWRkKG9yaWdpbiwgbnVsbHB0cikuaXRl
cmF0b3ItPnZhbHVlOworICAgIGlmICghY291bnRlcikKKyAgICAgICAgY291bnRlciA9IHN0ZDo6
bWFrZV91bmlxdWU8RXhlY3V0aW9uQ291bnRlcj4oKTsKKworICAgIHJldHVybiBjb3VudGVyLmdl
dCgpOwogfQogCiB2b2lkIENvbXBpbGF0aW9uOjphZGRPU1JFeGl0U2l0ZShjb25zdCBWZWN0b3I8
Y29uc3Qgdm9pZCo+JiBjb2RlQWRkcmVzc2VzKQpAQCAtMTA4LDExICsxMDUsMTAgQEAgSlNWYWx1
ZSBDb21waWxhdGlvbjo6dG9KUyhFeGVjU3RhdGUqIGV4ZWMpIGNvbnN0CiAgICAgcmVzdWx0LT5w
dXREaXJlY3QoZXhlYy0+dm0oKSwgZXhlYy0+cHJvcGVydHlOYW1lcygpLmRlc2NyaXB0aW9ucywg
ZGVzY3JpcHRpb25zKTsKICAgICAKICAgICBKU0FycmF5KiBjb3VudGVycyA9IGNvbnN0cnVjdEVt
cHR5QXJyYXkoZXhlYywgMCk7Ci0gICAgSGFzaE1hcDxPcmlnaW5TdGFjaywgT3duUHRyPEV4ZWN1
dGlvbkNvdW50ZXI+ID46OmNvbnN0X2l0ZXJhdG9yIGVuZCA9IG1fY291bnRlcnMuZW5kKCk7Ci0g
ICAgZm9yIChIYXNoTWFwPE9yaWdpblN0YWNrLCBPd25QdHI8RXhlY3V0aW9uQ291bnRlcj4gPjo6
Y29uc3RfaXRlcmF0b3IgaXRlciA9IG1fY291bnRlcnMuYmVnaW4oKTsgaXRlciAhPSBlbmQ7ICsr
aXRlcikgeworICAgIGZvciAoYXV0byBpdCA9IG1fY291bnRlcnMuYmVnaW4oKSwgZW5kID0gbV9j
b3VudGVycy5lbmQoKTsgaXQgIT0gZW5kOyArK2l0KSB7CiAgICAgICAgIEpTT2JqZWN0KiBjb3Vu
dGVyRW50cnkgPSBjb25zdHJ1Y3RFbXB0eU9iamVjdChleGVjKTsKLSAgICAgICAgY291bnRlckVu
dHJ5LT5wdXREaXJlY3QoZXhlYy0+dm0oKSwgZXhlYy0+cHJvcGVydHlOYW1lcygpLm9yaWdpbiwg
aXRlci0+a2V5LnRvSlMoZXhlYykpOwotICAgICAgICBjb3VudGVyRW50cnktPnB1dERpcmVjdChl
eGVjLT52bSgpLCBleGVjLT5wcm9wZXJ0eU5hbWVzKCkuZXhlY3V0aW9uQ291bnQsIGpzTnVtYmVy
KGl0ZXItPnZhbHVlLT5jb3VudCgpKSk7CisgICAgICAgIGNvdW50ZXJFbnRyeS0+cHV0RGlyZWN0
KGV4ZWMtPnZtKCksIGV4ZWMtPnByb3BlcnR5TmFtZXMoKS5vcmlnaW4sIGl0LT5rZXkudG9KUyhl
eGVjKSk7CisgICAgICAgIGNvdW50ZXJFbnRyeS0+cHV0RGlyZWN0KGV4ZWMtPnZtKCksIGV4ZWMt
PnByb3BlcnR5TmFtZXMoKS5leGVjdXRpb25Db3VudCwganNOdW1iZXIoaXQtPnZhbHVlLT5jb3Vu
dCgpKSk7CiAgICAgICAgIGNvdW50ZXJzLT5wdXNoKGV4ZWMsIGNvdW50ZXJFbnRyeSk7CiAgICAg
fQogICAgIHJlc3VsdC0+cHV0RGlyZWN0KGV4ZWMtPnZtKCksIGV4ZWMtPnByb3BlcnR5TmFtZXMo
KS5jb3VudGVycywgY291bnRlcnMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3Byb2ZpbGVyL1Byb2ZpbGVyQ29tcGlsYXRpb24uaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9w
cm9maWxlci9Qcm9maWxlckNvbXBpbGF0aW9uLmgKaW5kZXggYjMxODNmYTAyNWI3ZWNkOTUyMzkz
ZWFlMmJiZTU5NjU1ZGE0OTk5MS4uZGMyODEwNTI1Yjc3YzY4NmM2MTExYTM5MDQ0ODNhMmU0YjBh
MjFkNSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Byb2ZpbGVyL1Byb2ZpbGVy
Q29tcGlsYXRpb24uaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcHJvZmlsZXIvUHJvZmls
ZXJDb21waWxhdGlvbi5oCkBAIC03NCw3ICs3NCw3IEBAIHByaXZhdGU6CiAgICAgQ29tcGlsYXRp
b25LaW5kIG1fa2luZDsKICAgICBWZWN0b3I8UHJvZmlsZWRCeXRlY29kZXM+IG1fcHJvZmlsZWRC
eXRlY29kZXM7CiAgICAgVmVjdG9yPENvbXBpbGVkQnl0ZWNvZGU+IG1fZGVzY3JpcHRpb25zOwot
ICAgIEhhc2hNYXA8T3JpZ2luU3RhY2ssIE93blB0cjxFeGVjdXRpb25Db3VudGVyPiA+IG1fY291
bnRlcnM7CisgICAgSGFzaE1hcDxPcmlnaW5TdGFjaywgc3RkOjp1bmlxdWVfcHRyPEV4ZWN1dGlv
bkNvdW50ZXI+PiBtX2NvdW50ZXJzOwogICAgIFZlY3RvcjxPU1JFeGl0U2l0ZT4gbV9vc3JFeGl0
U2l0ZXM7CiAgICAgU2VnbWVudGVkVmVjdG9yPE9TUkV4aXQ+IG1fb3NyRXhpdHM7CiAgICAgdW5z
aWduZWQgbV9udW1JbmxpbmVkR2V0QnlJZHM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU0dsb2JhbE9iamVjdC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNHbG9iYWxPYmplY3QuaAppbmRleCBiZDZhYWI3YTNhMDdhZGZjYTBiMWE0YzA3MTUx
NjE4ZDQyZGEyMGQ1Li5jYjZmMjZhNTYwNDI2N2M3NTlhYjgyODg3MTg0ODYzZDllYjkwYzA5IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dsb2JhbE9iamVjdC5o
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0LmgKQEAg
LTEyMyw4ICsxMjMsOCBAQCBzdHJ1Y3QgR2xvYmFsT2JqZWN0TWV0aG9kVGFibGUgewogCiBjbGFz
cyBKU0dsb2JhbE9iamVjdCA6IHB1YmxpYyBKU1NlZ21lbnRlZFZhcmlhYmxlT2JqZWN0IHsKIHBy
aXZhdGU6Ci0gICAgdHlwZWRlZiBIYXNoU2V0PFJlZlB0cjxPcGFxdWVKU1dlYWtPYmplY3RNYXA+
ID4gV2Vha01hcFNldDsKLSAgICB0eXBlZGVmIEhhc2hNYXA8T3BhcXVlSlNDbGFzcyosIE93blB0
cjxPcGFxdWVKU0NsYXNzQ29udGV4dERhdGE+ID4gT3BhcXVlSlNDbGFzc0RhdGFNYXA7CisgICAg
dHlwZWRlZiBIYXNoU2V0PFJlZlB0cjxPcGFxdWVKU1dlYWtPYmplY3RNYXA+PiBXZWFrTWFwU2V0
OworICAgIHR5cGVkZWYgSGFzaE1hcDxPcGFxdWVKU0NsYXNzKiwgc3RkOjp1bmlxdWVfcHRyPE9w
YXF1ZUpTQ2xhc3NDb250ZXh0RGF0YT4+IE9wYXF1ZUpTQ2xhc3NEYXRhTWFwOwogCiAgICAgc3Ry
dWN0IEpTR2xvYmFsT2JqZWN0UmFyZURhdGEgewogICAgICAgICBKU0dsb2JhbE9iamVjdFJhcmVE
YXRhKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL1JlZlB0ckhhc2hNYXAuaCBiL1NvdXJj
ZS9XVEYvd3RmL1JlZlB0ckhhc2hNYXAuaAppbmRleCBjMTIyZGRiNjg0ZmE2NzA4MDk5MWQzZjI0
MDUwNTdlYTE5YjE2MzJjLi45MjBiOTQwNGFlMGIyNWI5YzFkMjE1MTEwYjQ2NDEyZjg4YmZmNDM3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9SZWZQdHJIYXNoTWFwLmgKKysrIGIvU291cmNl
L1dURi93dGYvUmVmUHRySGFzaE1hcC5oCkBAIC0yMjgsNyArMjI4LDcgQEAgbmFtZXNwYWNlIFdU
RiB7CiAgICAgdGVtcGxhdGU8dHlwZW5hbWUgVj4KICAgICBhdXRvIEhhc2hNYXA8UmVmUHRyPEtl
eUFyZz4sIE1hcHBlZEFyZywgSGFzaEFyZywgS2V5VHJhaXRzQXJnLCBNYXBwZWRUcmFpdHNBcmc+
OjpzZXQoUmF3S2V5VHlwZSBrZXksIFYmJiB2YWx1ZSkgLT4gQWRkUmVzdWx0CiAgICAgewotICAg
ICAgICBBZGRSZXN1bHQgcmVzdWx0ID0gaW5saW5lQWRkKGtleSwgdmFsdWUpOworICAgICAgICBB
ZGRSZXN1bHQgcmVzdWx0ID0gaW5saW5lQWRkKGtleSwgc3RkOjpmb3J3YXJkPFY+KHZhbHVlKSk7
CiAgICAgICAgIGlmICghcmVzdWx0LmlzTmV3RW50cnkpIHsKICAgICAgICAgICAgIC8vIFRoZSBp
bmxpbmVBZGQgY2FsbCBhYm92ZSBmb3VuZCBhbiBleGlzdGluZyBoYXNoIHRhYmxlIGVudHJ5OyB3
ZSBuZWVkIHRvIHNldCB0aGUgbWFwcGVkIHZhbHVlLgogICAgICAgICAgICAgcmVzdWx0Lml0ZXJh
dG9yLT52YWx1ZSA9IHN0ZDo6Zm9yd2FyZDxWPih2YWx1ZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V1RGL3d0Zi9TdGRMaWJFeHRyYXMuaCBiL1NvdXJjZS9XVEYvd3RmL1N0ZExpYkV4dHJhcy5oCmlu
ZGV4IDc3NDZkOWE3NTc0ODk3MzVjNGRlZjNjYTMyOGM3NjFkMjM3ODJkOGYuLmJkMDdkNjQ0NGQ5
YjExODVlYjAwYjI4YTY4OWQ0NTg4OWYwZTZmZGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3Rm
L1N0ZExpYkV4dHJhcy5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL1N0ZExpYkV4dHJhcy5oCkBAIC0z
NDQsNiArMzQ0LDMxIEBAIG5hbWVzcGFjZSBzdGQgewogICAgIHsKICAgICAgICAgcmV0dXJuIHVu
aXF1ZV9wdHI8VD4obmV3IFQoc3RkOjpmb3J3YXJkPEExPihhMSksIHN0ZDo6Zm9yd2FyZDxBMj4o
YTIpKSk7CiAgICAgfQorCisgICAgdGVtcGxhdGU8Y2xhc3MgVCwgY2xhc3MgQTEsIGNsYXNzIEEy
LCBjbGFzcyBBMz4gdHlwZW5hbWUgX1VuaXF1ZV9pZjxUPjo6X1NpbmdsZV9vYmplY3QKKyAgICBt
YWtlX3VuaXF1ZShBMSYmIGExLCBBMSYmIGEyLCBBMyYmIGEzKQorICAgIHsKKyAgICAgICAgcmV0
dXJuIHVuaXF1ZV9wdHI8VD4obmV3IFQoc3RkOjpmb3J3YXJkPEExPihhMSksIHN0ZDo6Zm9yd2Fy
ZDxBMj4oYTIpLCBzdGQ6OmZvcndhcmQ8QTM+KGEzKSkpOworICAgIH0KKworICAgIHRlbXBsYXRl
PGNsYXNzIFQsIGNsYXNzIEExLCBjbGFzcyBBMiwgY2xhc3MgQTMsIGNsYXNzIEE0PiB0eXBlbmFt
ZSBfVW5pcXVlX2lmPFQ+OjpfU2luZ2xlX29iamVjdAorICAgIG1ha2VfdW5pcXVlKEExJiYgYTEs
IEExJiYgYTIsIEEzJiYgYTMsIEE0JiYgYTQpCisgICAgeworICAgICAgICByZXR1cm4gdW5pcXVl
X3B0cjxUPihuZXcgVChzdGQ6OmZvcndhcmQ8QTE+KGExKSwgc3RkOjpmb3J3YXJkPEEyPihhMiks
IHN0ZDo6Zm9yd2FyZDxBMz4oYTMpLCBzdGQ6OmZvcndhcmQ8QTQ+KGE0KSkpOworICAgIH0KKwor
ICAgIHRlbXBsYXRlPGNsYXNzIFQsIGNsYXNzIEExLCBjbGFzcyBBMiwgY2xhc3MgQTMsIGNsYXNz
IEE0LCBjbGFzcyBBNT4gdHlwZW5hbWUgX1VuaXF1ZV9pZjxUPjo6X1NpbmdsZV9vYmplY3QKKyAg
ICBtYWtlX3VuaXF1ZShBMSYmIGExLCBBMSYmIGEyLCBBMyYmIGEzLCBBNCYmIGE0LCBBNSYmIGE1
KQorICAgIHsKKyAgICAgICAgcmV0dXJuIHVuaXF1ZV9wdHI8VD4obmV3IFQoc3RkOjpmb3J3YXJk
PEExPihhMSksIHN0ZDo6Zm9yd2FyZDxBMj4oYTIpLCBzdGQ6OmZvcndhcmQ8QTM+KGEzKSwgc3Rk
Ojpmb3J3YXJkPEE0PihhNCksIHN0ZDo6Zm9yd2FyZDxBNT4oYTUpKSk7CisgICAgfQorCisgICAg
dGVtcGxhdGU8Y2xhc3MgVCwgY2xhc3MgQTEsIGNsYXNzIEEyLCBjbGFzcyBBMywgY2xhc3MgQTQs
IGNsYXNzIEE1LCBjbGFzcyBBNj4gdHlwZW5hbWUgX1VuaXF1ZV9pZjxUPjo6X1NpbmdsZV9vYmpl
Y3QKKyAgICBtYWtlX3VuaXF1ZShBMSYmIGExLCBBMSYmIGEyLCBBMyYmIGEzLCBBNCYmIGE0LCBB
NSYmIGE1LCBBNiYmIGE2KQorICAgIHsKKyAgICAgICAgcmV0dXJuIHVuaXF1ZV9wdHI8VD4obmV3
IFQoc3RkOjpmb3J3YXJkPEExPihhMSksIHN0ZDo6Zm9yd2FyZDxBMj4oYTIpLCBzdGQ6OmZvcndh
cmQ8QTM+KGEzKSwgc3RkOjpmb3J3YXJkPEE0PihhNCksIHN0ZDo6Zm9yd2FyZDxBNT4oYTUpLCBz
dGQ6OmZvcndhcmQ8QTY+KGE2KSkpOworICAgIH0KKwogI2VuZGlmCiAKICAgICB0ZW1wbGF0ZTxj
bGFzcyBUPiB0eXBlbmFtZSBfVW5pcXVlX2lmPFQ+OjpfVW5rbm93bl9ib3VuZAo=
</data>
<flag name="review"
          id="234987"
          type_id="1"
          status="+"
          setter="kling"
    />
          </attachment>
      

    </bug>

</bugzilla>