<?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>149552</bug_id>
          
          <creation_ts>2015-09-25 01:00:07 -0700</creation_ts>
          <short_desc>Clean up all uses of PassRefPtr in Modules/geolocation</short_desc>
          <delta_ts>2015-10-01 00:23:21 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>144092</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Gyuyoung Kim">gyuyoung.kim</reporter>
          <assigned_to name="Gyuyoung Kim">gyuyoung.kim</assigned_to>
          <cc>benjamin</cc>
    
    <cc>commit-queue</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1128678</commentid>
    <comment_count>0</comment_count>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2015-09-25 01:00:07 -0700</bug_when>
    <thetext>SSIA</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1128679</commentid>
    <comment_count>1</comment_count>
      <attachid>261917</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2015-09-25 01:01:03 -0700</bug_when>
    <thetext>Created attachment 261917
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1129816</commentid>
    <comment_count>2</comment_count>
      <attachid>261917</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2015-09-30 21:19:05 -0700</bug_when>
    <thetext>Comment on attachment 261917
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=261917&amp;action=review

&gt; Source/WebCore/Modules/geolocation/Geoposition.h:45
&gt;          return Geoposition::create(m_coordinates-&gt;isolatedCopy(), m_timestamp);

Could just be create, not Geoposition::create.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1129821</commentid>
    <comment_count>3</comment_count>
      <attachid>262229</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2015-09-30 21:33:23 -0700</bug_when>
    <thetext>Created attachment 262229
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1129852</commentid>
    <comment_count>4</comment_count>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2015-09-30 23:35:53 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; Comment on attachment 261917 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=261917&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/Modules/geolocation/Geoposition.h:45
&gt; &gt;          return Geoposition::create(m_coordinates-&gt;isolatedCopy(), m_timestamp);
&gt; 
&gt; Could just be create, not Geoposition::create.

Thanks. Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1129860</commentid>
    <comment_count>5</comment_count>
      <attachid>262229</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-10-01 00:23:17 -0700</bug_when>
    <thetext>Comment on attachment 262229
Patch

Clearing flags on attachment: 262229

Committed r190391: &lt;http://trac.webkit.org/changeset/190391&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1129861</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-10-01 00:23:21 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>261917</attachid>
            <date>2015-09-25 01:01:03 -0700</date>
            <delta_ts>2015-09-30 21:33:18 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-149552-20150925170042.patch</filename>
            <type>text/plain</type>
            <size>14132</size>
            <attacher name="Gyuyoung Kim">gyuyoung.kim</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTkwMjM1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTU2NjE2NjBiOWY3MThl
YWVmMTdkYWY3MWQ3MDRkOTRjNzU0NTBiNS4uMjFiYWY0ODJkM2FiZTRkOGYwNTRjZDJjNTY4ZTBl
Y2MyZjA2MmE1ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDE1LTA5LTI1ICBHeXV5
b3VuZyBLaW0gIDxneXV5b3VuZy5raW1Ad2Via2l0Lm9yZz4KKworICAgICAgICBDbGVhbiB1cCBh
bGwgdXNlcyBvZiBQYXNzUmVmUHRyIGluIE1vZHVsZXMvZ2VvbG9jYXRpb24KKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0OTU1MgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogTW9kdWxlcy9nZW9sb2NhdGlv
bi9HZW9Ob3RpZmllci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHZW9Ob3RpZmllcjo6R2VvTm90
aWZpZXIpOgorICAgICAgICAoV2ViQ29yZTo6R2VvTm90aWZpZXI6OnNldEZhdGFsRXJyb3IpOgor
ICAgICAgICAqIE1vZHVsZXMvZ2VvbG9jYXRpb24vR2VvTm90aWZpZXIuaDoKKyAgICAgICAgKFdl
YkNvcmU6Okdlb05vdGlmaWVyOjpjcmVhdGUpOgorICAgICAgICAqIE1vZHVsZXMvZ2VvbG9jYXRp
b24vR2VvbG9jYXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlR2VvcG9zaXRpb24p
OgorICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlUG9zaXRpb25FcnJvcik6CisgICAgICAgIChXZWJD
b3JlOjpHZW9sb2NhdGlvbjo6V2F0Y2hlcnM6OmFkZCk6CisgICAgICAgIChXZWJDb3JlOjpHZW9s
b2NhdGlvbjo6Z2V0Q3VycmVudFBvc2l0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6Okdlb2xvY2F0
aW9uOjp3YXRjaFBvc2l0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6Okdlb2xvY2F0aW9uOjpzdGFy
dFJlcXVlc3QpOgorICAgICAgICAqIE1vZHVsZXMvZ2VvbG9jYXRpb24vR2VvbG9jYXRpb24uaDoK
KyAgICAgICAgKiBNb2R1bGVzL2dlb2xvY2F0aW9uL0dlb2xvY2F0aW9uRXJyb3IuaDoKKyAgICAg
ICAgKiBNb2R1bGVzL2dlb2xvY2F0aW9uL0dlb2xvY2F0aW9uUG9zaXRpb24uaDoKKyAgICAgICAg
KiBNb2R1bGVzL2dlb2xvY2F0aW9uL0dlb3Bvc2l0aW9uLmg6CisgICAgICAgIChXZWJDb3JlOjpH
ZW9wb3NpdGlvbjo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6Okdlb3Bvc2l0aW9uOjppc29s
YXRlZENvcHkpOgorICAgICAgICAoV2ViQ29yZTo6R2VvcG9zaXRpb246Okdlb3Bvc2l0aW9uKToK
KyAgICAgICAgKiBNb2R1bGVzL2dlb2xvY2F0aW9uL1Bvc2l0aW9uRXJyb3IuaDoKKyAgICAgICAg
KiBNb2R1bGVzL2dlb2xvY2F0aW9uL1Bvc2l0aW9uT3B0aW9ucy5oOgorCiAyMDE1LTA5LTI0ICBC
cmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgogCiAgICAgICAgIFtXaW5dIFN1cHBv
cnQgY29tcG9zaXRlZCBjb250ZW50IGluIFdlYlZpZXcgcmVuZGVyLXRvLWNvbnRleHQgbWV0aG9k
cwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9nZW9sb2NhdGlvbi9HZW9Ob3Rp
Zmllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2dlb2xvY2F0aW9uL0dlb05vdGlmaWVy
LmNwcAppbmRleCAyODE5ZWFkY2RmNzkyMWZmZTlmNDc3ZDk0YWQ0ZTNmYjk2M2MzYWQ2Li5kM2Vl
ZDIwZWRkNGE5N2U1ZGE4YTBlNjEwOWM5OTdiN2NkMTEyMmYzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2dlb2xvY2F0aW9uL0dlb05vdGlmaWVyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2dlb2xvY2F0aW9uL0dlb05vdGlmaWVyLmNwcApAQCAtMzQsMTEgKzM0
LDExIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotR2VvTm90aWZpZXI6Okdlb05vdGlmaWVy
KEdlb2xvY2F0aW9uJiBnZW9sb2NhdGlvbiwgUGFzc1JlZlB0cjxQb3NpdGlvbkNhbGxiYWNrPiBz
dWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8UG9zaXRpb25FcnJvckNhbGxiYWNrPiBlcnJvckNh
bGxiYWNrLCBQYXNzUmVmUHRyPFBvc2l0aW9uT3B0aW9ucz4gb3B0aW9ucykKK0dlb05vdGlmaWVy
OjpHZW9Ob3RpZmllcihHZW9sb2NhdGlvbiYgZ2VvbG9jYXRpb24sIFJlZlB0cjxQb3NpdGlvbkNh
bGxiYWNrPiYmIHN1Y2Nlc3NDYWxsYmFjaywgUmVmUHRyPFBvc2l0aW9uRXJyb3JDYWxsYmFjaz4m
JiBlcnJvckNhbGxiYWNrLCBSZWZQdHI8UG9zaXRpb25PcHRpb25zPiYmIG9wdGlvbnMpCiAgICAg
OiBtX2dlb2xvY2F0aW9uKGdlb2xvY2F0aW9uKQotICAgICwgbV9zdWNjZXNzQ2FsbGJhY2soc3Vj
Y2Vzc0NhbGxiYWNrKQotICAgICwgbV9lcnJvckNhbGxiYWNrKGVycm9yQ2FsbGJhY2spCi0gICAg
LCBtX29wdGlvbnMob3B0aW9ucykKKyAgICAsIG1fc3VjY2Vzc0NhbGxiYWNrKFdURjo6bW92ZShz
dWNjZXNzQ2FsbGJhY2spKQorICAgICwgbV9lcnJvckNhbGxiYWNrKFdURjo6bW92ZShlcnJvckNh
bGxiYWNrKSkKKyAgICAsIG1fb3B0aW9ucyhXVEY6Om1vdmUob3B0aW9ucykpCiAgICAgLCBtX3Rp
bWVyKCp0aGlzLCAmR2VvTm90aWZpZXI6OnRpbWVyRmlyZWQpCiAgICAgLCBtX3VzZUNhY2hlZFBv
c2l0aW9uKGZhbHNlKQogewpAQCAtNDgsNyArNDgsNyBAQCBHZW9Ob3RpZmllcjo6R2VvTm90aWZp
ZXIoR2VvbG9jYXRpb24mIGdlb2xvY2F0aW9uLCBQYXNzUmVmUHRyPFBvc2l0aW9uQ2FsbGJhY2s+
CiAgICAgQVNTRVJUKG1fb3B0aW9ucyk7CiB9CiAKLXZvaWQgR2VvTm90aWZpZXI6OnNldEZhdGFs
RXJyb3IoUGFzc1JlZlB0cjxQb3NpdGlvbkVycm9yPiBlcnJvcikKK3ZvaWQgR2VvTm90aWZpZXI6
OnNldEZhdGFsRXJyb3IoUmVmUHRyPFBvc2l0aW9uRXJyb3I+JiYgZXJyb3IpCiB7CiAgICAgLy8g
SWYgYSBmYXRhbCBlcnJvciBoYXMgYWxyZWFkeSBiZWVuIHNldCwgc3RpY2sgd2l0aCBpdC4gVGhp
cyBtYWtlcyBzdXJlIHRoYXQKICAgICAvLyB3aGVuIHBlcm1pc3Npb24gaXMgZGVuaWVkLCB0aGlz
IGlzIHRoZSBlcnJvciByZXBvcnRlZCwgYXMgcmVxdWlyZWQgYnkgdGhlCkBAIC01Niw3ICs1Niw3
IEBAIHZvaWQgR2VvTm90aWZpZXI6OnNldEZhdGFsRXJyb3IoUGFzc1JlZlB0cjxQb3NpdGlvbkVy
cm9yPiBlcnJvcikKICAgICBpZiAobV9mYXRhbEVycm9yKQogICAgICAgICByZXR1cm47CiAKLSAg
ICBtX2ZhdGFsRXJyb3IgPSBlcnJvcjsKKyAgICBtX2ZhdGFsRXJyb3IgPSBXVEY6Om1vdmUoZXJy
b3IpOwogICAgIC8vIEFuIGV4aXN0aW5nIHRpbWVyIG1heSBub3QgaGF2ZSBhIHplcm8gdGltZW91
dC4KICAgICBtX3RpbWVyLnN0b3AoKTsKICAgICBtX3RpbWVyLnN0YXJ0T25lU2hvdCgwKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vR2VvTm90aWZpZXIu
aCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vR2VvTm90aWZpZXIuaAppbmRl
eCA2YzNlYzVjZjU1MjM2NDc0NmM2ODFiZWY3MGIxM2I0MDJiZjQxNjE3Li4zMzkyNDNhMzJlM2Mw
NzdiYjFhZDZkNzU3NTM2ZmI2MDA3ZTQ4YmY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2dlb2xvY2F0aW9uL0dlb05vdGlmaWVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9nZW9sb2NhdGlvbi9HZW9Ob3RpZmllci5oCkBAIC00NSwxMyArNDUsMTMgQEAgY2xhc3Mg
UG9zaXRpb25PcHRpb25zOwogCiBjbGFzcyBHZW9Ob3RpZmllciA6IHB1YmxpYyBSZWZDb3VudGVk
PEdlb05vdGlmaWVyPiB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFJlZjxHZW9Ob3RpZmllcj4gY3Jl
YXRlKEdlb2xvY2F0aW9uJiBnZW9sb2NhdGlvbiwgUGFzc1JlZlB0cjxQb3NpdGlvbkNhbGxiYWNr
PiBwb3NpdGlvbkNhbGxiYWNrLCBQYXNzUmVmUHRyPFBvc2l0aW9uRXJyb3JDYWxsYmFjaz4gcG9z
aXRpb25FcnJvckNhbGxiYWNrLCBQYXNzUmVmUHRyPFBvc2l0aW9uT3B0aW9ucz4gb3B0aW9ucykK
KyAgICBzdGF0aWMgUmVmPEdlb05vdGlmaWVyPiBjcmVhdGUoR2VvbG9jYXRpb24mIGdlb2xvY2F0
aW9uLCBSZWZQdHI8UG9zaXRpb25DYWxsYmFjaz4mJiBwb3NpdGlvbkNhbGxiYWNrLCBSZWZQdHI8
UG9zaXRpb25FcnJvckNhbGxiYWNrPiYmIHBvc2l0aW9uRXJyb3JDYWxsYmFjaywgUmVmUHRyPFBv
c2l0aW9uT3B0aW9ucz4mJiBvcHRpb25zKQogICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVm
KCpuZXcgR2VvTm90aWZpZXIoZ2VvbG9jYXRpb24sIHBvc2l0aW9uQ2FsbGJhY2ssIHBvc2l0aW9u
RXJyb3JDYWxsYmFjaywgb3B0aW9ucykpOworICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBH
ZW9Ob3RpZmllcihnZW9sb2NhdGlvbiwgV1RGOjptb3ZlKHBvc2l0aW9uQ2FsbGJhY2spLCBXVEY6
Om1vdmUocG9zaXRpb25FcnJvckNhbGxiYWNrKSwgV1RGOjptb3ZlKG9wdGlvbnMpKSk7CiAgICAg
fQogCiAgICAgUG9zaXRpb25PcHRpb25zKiBvcHRpb25zKCkgY29uc3QgeyByZXR1cm4gbV9vcHRp
b25zLmdldCgpOyB9Ci0gICAgdm9pZCBzZXRGYXRhbEVycm9yKFBhc3NSZWZQdHI8UG9zaXRpb25F
cnJvcj4pOworICAgIHZvaWQgc2V0RmF0YWxFcnJvcihSZWZQdHI8UG9zaXRpb25FcnJvcj4mJik7
CiAKICAgICBib29sIHVzZUNhY2hlZFBvc2l0aW9uKCkgY29uc3QgeyByZXR1cm4gbV91c2VDYWNo
ZWRQb3NpdGlvbjsgfQogICAgIHZvaWQgc2V0VXNlQ2FjaGVkUG9zaXRpb24oKTsKQEAgLTY1LDcg
KzY1LDcgQEAgcHVibGljOgogICAgIGJvb2wgaGFzWmVyb1RpbWVvdXQoKSBjb25zdDsKIAogcHJp
dmF0ZToKLSAgICBHZW9Ob3RpZmllcihHZW9sb2NhdGlvbiYsIFBhc3NSZWZQdHI8UG9zaXRpb25D
YWxsYmFjaz4sIFBhc3NSZWZQdHI8UG9zaXRpb25FcnJvckNhbGxiYWNrPiwgUGFzc1JlZlB0cjxQ
b3NpdGlvbk9wdGlvbnM+KTsKKyAgICBHZW9Ob3RpZmllcihHZW9sb2NhdGlvbiYsIFJlZlB0cjxQ
b3NpdGlvbkNhbGxiYWNrPiYmLCBSZWZQdHI8UG9zaXRpb25FcnJvckNhbGxiYWNrPiYmLCBSZWZQ
dHI8UG9zaXRpb25PcHRpb25zPiYmKTsKIAogICAgIFJlZjxHZW9sb2NhdGlvbj4gbV9nZW9sb2Nh
dGlvbjsKICAgICBSZWZQdHI8UG9zaXRpb25DYWxsYmFjaz4gbV9zdWNjZXNzQ2FsbGJhY2s7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2dlb2xvY2F0aW9uL0dlb2xvY2F0aW9u
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vR2VvbG9jYXRpb24uY3Bw
CmluZGV4IDgxMTQyNGMyYmE3NWQ1MzZkNTJkZTQzM2QyODA5NmY3ODYxMTA0MGYuLmRjNDcyNmEy
YjgxNjk2NzE3ZjdmMTkzOGE4NDMzNGRlODVkYjFkNGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vR2VvbG9jYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vR2VvbG9jYXRpb24uY3BwCkBAIC00OSwxMCArNDksMTAg
QEAgc3RhdGljIGNvbnN0IGNoYXIgcGVybWlzc2lvbkRlbmllZEVycm9yTWVzc2FnZVtdID0gIlVz
ZXIgZGVuaWVkIEdlb2xvY2F0aW9uIjsKIHN0YXRpYyBjb25zdCBjaGFyIGZhaWxlZFRvU3RhcnRT
ZXJ2aWNlRXJyb3JNZXNzYWdlW10gPSAiRmFpbGVkIHRvIHN0YXJ0IEdlb2xvY2F0aW9uIHNlcnZp
Y2UiOwogc3RhdGljIGNvbnN0IGNoYXIgZnJhbWVsZXNzRG9jdW1lbnRFcnJvck1lc3NhZ2VbXSA9
ICJHZW9sb2NhdGlvbiBjYW5ub3QgYmUgdXNlZCBpbiBmcmFtZWxlc3MgZG9jdW1lbnRzIjsKIAot
c3RhdGljIFBhc3NSZWZQdHI8R2VvcG9zaXRpb24+IGNyZWF0ZUdlb3Bvc2l0aW9uKEdlb2xvY2F0
aW9uUG9zaXRpb24qIHBvc2l0aW9uKQorc3RhdGljIFJlZlB0cjxHZW9wb3NpdGlvbj4gY3JlYXRl
R2VvcG9zaXRpb24oR2VvbG9jYXRpb25Qb3NpdGlvbiogcG9zaXRpb24pCiB7CiAgICAgaWYgKCFw
b3NpdGlvbikKLSAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIHJldHVybiBudWxscHRyOwogICAg
IAogICAgIFJlZlB0cjxDb29yZGluYXRlcz4gY29vcmRpbmF0ZXMgPSBDb29yZGluYXRlczo6Y3Jl
YXRlKHBvc2l0aW9uLT5sYXRpdHVkZSgpLCBwb3NpdGlvbi0+bG9uZ2l0dWRlKCksIHBvc2l0aW9u
LT5jYW5Qcm92aWRlQWx0aXR1ZGUoKSwgcG9zaXRpb24tPmFsdGl0dWRlKCksIAogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9u
LT5hY2N1cmFjeSgpLCBwb3NpdGlvbi0+Y2FuUHJvdmlkZUFsdGl0dWRlQWNjdXJhY3koKSwgcG9z
aXRpb24tPmFsdGl0dWRlQWNjdXJhY3koKSwKQEAgLTYwLDcgKzYwLDcgQEAgc3RhdGljIFBhc3NS
ZWZQdHI8R2VvcG9zaXRpb24+IGNyZWF0ZUdlb3Bvc2l0aW9uKEdlb2xvY2F0aW9uUG9zaXRpb24q
IHBvc2l0aW9uKQogICAgIHJldHVybiBHZW9wb3NpdGlvbjo6Y3JlYXRlKGNvb3JkaW5hdGVzLnJl
bGVhc2UoKSwgY29udmVydFNlY29uZHNUb0RPTVRpbWVTdGFtcChwb3NpdGlvbi0+dGltZXN0YW1w
KCkpKTsKIH0KIAotc3RhdGljIFBhc3NSZWZQdHI8UG9zaXRpb25FcnJvcj4gY3JlYXRlUG9zaXRp
b25FcnJvcihHZW9sb2NhdGlvbkVycm9yKiBlcnJvcikKK3N0YXRpYyBSZWY8UG9zaXRpb25FcnJv
cj4gY3JlYXRlUG9zaXRpb25FcnJvcihHZW9sb2NhdGlvbkVycm9yKiBlcnJvcikKIHsKICAgICBQ
b3NpdGlvbkVycm9yOjpFcnJvckNvZGUgY29kZSA9IFBvc2l0aW9uRXJyb3I6OlBPU0lUSU9OX1VO
QVZBSUxBQkxFOwogICAgIHN3aXRjaCAoZXJyb3ItPmNvZGUoKSkgewpAQCAtNzUsMTQgKzc1LDEz
IEBAIHN0YXRpYyBQYXNzUmVmUHRyPFBvc2l0aW9uRXJyb3I+IGNyZWF0ZVBvc2l0aW9uRXJyb3Io
R2VvbG9jYXRpb25FcnJvciogZXJyb3IpCiAgICAgcmV0dXJuIFBvc2l0aW9uRXJyb3I6OmNyZWF0
ZShjb2RlLCBlcnJvci0+bWVzc2FnZSgpKTsKIH0KIAotYm9vbCBHZW9sb2NhdGlvbjo6V2F0Y2hl
cnM6OmFkZChpbnQgaWQsIFBhc3NSZWZQdHI8R2VvTm90aWZpZXI+IHBycE5vdGlmaWVyKQorYm9v
bCBHZW9sb2NhdGlvbjo6V2F0Y2hlcnM6OmFkZChpbnQgaWQsIFJlZlB0cjxHZW9Ob3RpZmllcj4m
JiBub3RpZmllcikKIHsKICAgICBBU1NFUlQoaWQgPiAwKTsKLSAgICBSZWZQdHI8R2VvTm90aWZp
ZXI+IG5vdGlmaWVyID0gcHJwTm90aWZpZXI7CiAKICAgICBpZiAoIW1faWRUb05vdGlmaWVyTWFw
LmFkZChpZCwgbm90aWZpZXIuZ2V0KCkpLmlzTmV3RW50cnkpCiAgICAgICAgIHJldHVybiBmYWxz
ZTsKLSAgICBtX25vdGlmaWVyVG9JZE1hcC5zZXQobm90aWZpZXIucmVsZWFzZSgpLCBpZCk7Cisg
ICAgbV9ub3RpZmllclRvSWRNYXAuc2V0KFdURjo6bW92ZShub3RpZmllciksIGlkKTsKICAgICBy
ZXR1cm4gdHJ1ZTsKIH0KIApAQCAtMzA0LDM0ICszMDMsMzQgQEAgR2VvcG9zaXRpb24qIEdlb2xv
Y2F0aW9uOjpsYXN0UG9zaXRpb24oKQogICAgIHJldHVybiBtX2xhc3RQb3NpdGlvbi5nZXQoKTsK
IH0KIAotdm9pZCBHZW9sb2NhdGlvbjo6Z2V0Q3VycmVudFBvc2l0aW9uKFBhc3NSZWZQdHI8UG9z
aXRpb25DYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPFBvc2l0aW9uRXJyb3JD
YWxsYmFjaz4gZXJyb3JDYWxsYmFjaywgUGFzc1JlZlB0cjxQb3NpdGlvbk9wdGlvbnM+IG9wdGlv
bnMpCit2b2lkIEdlb2xvY2F0aW9uOjpnZXRDdXJyZW50UG9zaXRpb24oUmVmUHRyPFBvc2l0aW9u
Q2FsbGJhY2s+JiYgc3VjY2Vzc0NhbGxiYWNrLCBSZWZQdHI8UG9zaXRpb25FcnJvckNhbGxiYWNr
PiYmIGVycm9yQ2FsbGJhY2ssIFJlZlB0cjxQb3NpdGlvbk9wdGlvbnM+JiYgb3B0aW9ucykKIHsK
ICAgICBpZiAoIWZyYW1lKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIFJlZlB0cjxHZW9Ob3Rp
Zmllcj4gbm90aWZpZXIgPSBHZW9Ob3RpZmllcjo6Y3JlYXRlKCp0aGlzLCBzdWNjZXNzQ2FsbGJh
Y2ssIGVycm9yQ2FsbGJhY2ssIG9wdGlvbnMpOworICAgIFJlZlB0cjxHZW9Ob3RpZmllcj4gbm90
aWZpZXIgPSBHZW9Ob3RpZmllcjo6Y3JlYXRlKCp0aGlzLCBXVEY6Om1vdmUoc3VjY2Vzc0NhbGxi
YWNrKSwgV1RGOjptb3ZlKGVycm9yQ2FsbGJhY2spLCBXVEY6Om1vdmUob3B0aW9ucykpOwogICAg
IHN0YXJ0UmVxdWVzdChub3RpZmllci5nZXQoKSk7CiAKICAgICBtX29uZVNob3RzLmFkZChub3Rp
Zmllcik7CiB9CiAKLWludCBHZW9sb2NhdGlvbjo6d2F0Y2hQb3NpdGlvbihQYXNzUmVmUHRyPFBv
c2l0aW9uQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxQb3NpdGlvbkVycm9y
Q2FsbGJhY2s+IGVycm9yQ2FsbGJhY2ssIFBhc3NSZWZQdHI8UG9zaXRpb25PcHRpb25zPiBvcHRp
b25zKQoraW50IEdlb2xvY2F0aW9uOjp3YXRjaFBvc2l0aW9uKFJlZlB0cjxQb3NpdGlvbkNhbGxi
YWNrPiYmIHN1Y2Nlc3NDYWxsYmFjaywgUmVmUHRyPFBvc2l0aW9uRXJyb3JDYWxsYmFjaz4mJiBl
cnJvckNhbGxiYWNrLCBSZWZQdHI8UG9zaXRpb25PcHRpb25zPiYmIG9wdGlvbnMpCiB7CiAgICAg
aWYgKCFmcmFtZSgpKQogICAgICAgICByZXR1cm4gMDsKIAotICAgIFJlZlB0cjxHZW9Ob3RpZmll
cj4gbm90aWZpZXIgPSBHZW9Ob3RpZmllcjo6Y3JlYXRlKCp0aGlzLCBzdWNjZXNzQ2FsbGJhY2ss
IGVycm9yQ2FsbGJhY2ssIG9wdGlvbnMpOworICAgIFJlZlB0cjxHZW9Ob3RpZmllcj4gbm90aWZp
ZXIgPSBHZW9Ob3RpZmllcjo6Y3JlYXRlKCp0aGlzLCBXVEY6Om1vdmUoc3VjY2Vzc0NhbGxiYWNr
KSwgV1RGOjptb3ZlKGVycm9yQ2FsbGJhY2spLCBXVEY6Om1vdmUob3B0aW9ucykpOwogICAgIHN0
YXJ0UmVxdWVzdChub3RpZmllci5nZXQoKSk7CiAKICAgICBpbnQgd2F0Y2hJRDsKICAgICAvLyBL
ZWVwIGFza2luZyBmb3IgdGhlIG5leHQgaWQgdW50aWwgd2UncmUgZ2l2ZW4gb25lIHRoYXQgd2Ug
ZG9uJ3QgYWxyZWFkeSBoYXZlLgogICAgIGRvIHsKICAgICAgICAgd2F0Y2hJRCA9IG1fc2NyaXB0
RXhlY3V0aW9uQ29udGV4dC0+Y2lyY3VsYXJTZXF1ZW50aWFsSUQoKTsKLSAgICB9IHdoaWxlICgh
bV93YXRjaGVycy5hZGQod2F0Y2hJRCwgbm90aWZpZXIpKTsKKyAgICB9IHdoaWxlICghbV93YXRj
aGVycy5hZGQod2F0Y2hJRCwgV1RGOjptb3ZlKG5vdGlmaWVyKSkpOwogICAgIHJldHVybiB3YXRj
aElEOwogfQogCi12b2lkIEdlb2xvY2F0aW9uOjpzdGFydFJlcXVlc3QoR2VvTm90aWZpZXIgKm5v
dGlmaWVyKQordm9pZCBHZW9sb2NhdGlvbjo6c3RhcnRSZXF1ZXN0KEdlb05vdGlmaWVyKiBub3Rp
ZmllcikKIHsKICAgICAvLyBDaGVjayB3aGV0aGVyIHBlcm1pc3Npb25zIGhhdmUgYWxyZWFkeSBi
ZWVuIGRlbmllZC4gTm90ZSB0aGF0IGlmIHRoaXMgaXMgdGhlIGNhc2UsCiAgICAgLy8gdGhlIHBl
cm1pc3Npb24gc3RhdGUgY2FuIG5vdCBjaGFuZ2UgYWdhaW4gaW4gdGhlIGxpZmV0aW1lIG9mIHRo
aXMgcGFnZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZ2VvbG9jYXRpb24v
R2VvbG9jYXRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vR2VvbG9j
YXRpb24uaAppbmRleCA4N2Q0MjY1M2FiNmNhNzYzOWRkN2E1NDE0YTk1MWM0YTdmYTNlNGI4Li5l
NWZlZWM1MmU3OTI0MDk2MGZiNjdkN2ZlZWY5MTU3ZDYwYjQyNWVlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2dlb2xvY2F0aW9uL0dlb2xvY2F0aW9uLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9nZW9sb2NhdGlvbi9HZW9sb2NhdGlvbi5oCkBAIC02MSw4ICs2MSw4
IEBAIHB1YmxpYzoKICAgICBEb2N1bWVudCogZG9jdW1lbnQoKSBjb25zdDsKICAgICBXRUJDT1JF
X0VYUE9SVCBGcmFtZSogZnJhbWUoKSBjb25zdDsKIAotICAgIHZvaWQgZ2V0Q3VycmVudFBvc2l0
aW9uKFBhc3NSZWZQdHI8UG9zaXRpb25DYWxsYmFjaz4sIFBhc3NSZWZQdHI8UG9zaXRpb25FcnJv
ckNhbGxiYWNrPiwgUGFzc1JlZlB0cjxQb3NpdGlvbk9wdGlvbnM+KTsKLSAgICBpbnQgd2F0Y2hQ
b3NpdGlvbihQYXNzUmVmUHRyPFBvc2l0aW9uQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPFBvc2l0aW9u
RXJyb3JDYWxsYmFjaz4sIFBhc3NSZWZQdHI8UG9zaXRpb25PcHRpb25zPik7CisgICAgdm9pZCBn
ZXRDdXJyZW50UG9zaXRpb24oUmVmUHRyPFBvc2l0aW9uQ2FsbGJhY2s+JiYsIFJlZlB0cjxQb3Np
dGlvbkVycm9yQ2FsbGJhY2s+JiYsIFJlZlB0cjxQb3NpdGlvbk9wdGlvbnM+JiYpOworICAgIGlu
dCB3YXRjaFBvc2l0aW9uKFJlZlB0cjxQb3NpdGlvbkNhbGxiYWNrPiYmLCBSZWZQdHI8UG9zaXRp
b25FcnJvckNhbGxiYWNrPiYmLCBSZWZQdHI8UG9zaXRpb25PcHRpb25zPiYmKTsKICAgICB2b2lk
IGNsZWFyV2F0Y2goaW50IHdhdGNoSUQpOwogCiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRJ
c0FsbG93ZWQoYm9vbCk7CkBAIC05Myw3ICs5Myw3IEBAIHByaXZhdGU6CiAKICAgICBjbGFzcyBX
YXRjaGVycyB7CiAgICAgcHVibGljOgotICAgICAgICBib29sIGFkZChpbnQgaWQsIFBhc3NSZWZQ
dHI8R2VvTm90aWZpZXI+KTsKKyAgICAgICAgYm9vbCBhZGQoaW50IGlkLCBSZWZQdHI8R2VvTm90
aWZpZXI+JiYpOwogICAgICAgICBHZW9Ob3RpZmllciogZmluZChpbnQgaWQpOwogICAgICAgICB2
b2lkIHJlbW92ZShpbnQgaWQpOwogICAgICAgICB2b2lkIHJlbW92ZShHZW9Ob3RpZmllciopOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9nZW9sb2NhdGlvbi9HZW9sb2NhdGlv
bkVycm9yLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2dlb2xvY2F0aW9uL0dlb2xvY2F0aW9u
RXJyb3IuaAppbmRleCAwNTU0ZTg3YjY3Zjk1YWU2ZDZhNzAwODExODM1OTY4OTJkMTRiMDA0Li5l
YmI3YWE3M2Q0MjU5MzU5YWFmMDAwMjM4OGMxNmRiNGJlZmY1Mzg0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2dlb2xvY2F0aW9uL0dlb2xvY2F0aW9uRXJyb3IuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2dlb2xvY2F0aW9uL0dlb2xvY2F0aW9uRXJyb3IuaApAQCAt
MjYsNyArMjYsNiBAQAogI2lmbmRlZiBHZW9sb2NhdGlvbkVycm9yX2gKICNkZWZpbmUgR2VvbG9j
YXRpb25FcnJvcl9oCiAKLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0
Zi9SZWZDb3VudGVkLmg+CiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi90
ZXh0L1dURlN0cmluZy5oPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9nZW9s
b2NhdGlvbi9HZW9sb2NhdGlvblBvc2l0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2dl
b2xvY2F0aW9uL0dlb2xvY2F0aW9uUG9zaXRpb24uaAppbmRleCA4ZDFlOTMwNzAxYTI4MDcyMjQ0
NjVjNTI1YWJmZmUzNjY5MmNkMjYwLi5kYmRkNzM1YjkzYWU2YjdhYzMzNjdlMmNlMDJhNTQyNjA4
MmY5ZDYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2dlb2xvY2F0aW9uL0dl
b2xvY2F0aW9uUG9zaXRpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2dlb2xvY2F0
aW9uL0dlb2xvY2F0aW9uUG9zaXRpb24uaApAQCAtMjYsNyArMjYsNiBAQAogI2lmbmRlZiBHZW9s
b2NhdGlvblBvc2l0aW9uX2gKICNkZWZpbmUgR2VvbG9jYXRpb25Qb3NpdGlvbl9oCiAKLSNpbmNs
dWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CiAjaW5j
bHVkZSA8d3RmL1JlZlB0ci5oPgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2dlb2xvY2F0aW9uL0dlb3Bvc2l0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2dlb2xv
Y2F0aW9uL0dlb3Bvc2l0aW9uLmgKaW5kZXggNzhkYzM2YTVlMTkwZmRiMzljNjc3NWE3YjQyMGNk
MDU3Nzc3MjQyOC4uNzgxODNiYmEzNDdmZTg1MjU0ZmNhMWUzNjk5ZmIwYmQwYWY1ZTVjMyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9nZW9sb2NhdGlvbi9HZW9wb3NpdGlvbi5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vR2VvcG9zaXRpb24uaApA
QCAtMzUsMTIgKzM1LDEyIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgR2VvcG9zaXRp
b24gOiBwdWJsaWMgUmVmQ291bnRlZDxHZW9wb3NpdGlvbj4gewogcHVibGljOgotICAgIHN0YXRp
YyBSZWY8R2VvcG9zaXRpb24+IGNyZWF0ZShQYXNzUmVmUHRyPENvb3JkaW5hdGVzPiBjb29yZGlu
YXRlcywgRE9NVGltZVN0YW1wIHRpbWVzdGFtcCkKKyAgICBzdGF0aWMgUmVmPEdlb3Bvc2l0aW9u
PiBjcmVhdGUoUmVmUHRyPENvb3JkaW5hdGVzPiYmIGNvb3JkaW5hdGVzLCBET01UaW1lU3RhbXAg
dGltZXN0YW1wKQogICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgR2VvcG9zaXRp
b24oY29vcmRpbmF0ZXMsIHRpbWVzdGFtcCkpOworICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5l
dyBHZW9wb3NpdGlvbihXVEY6Om1vdmUoY29vcmRpbmF0ZXMpLCB0aW1lc3RhbXApKTsKICAgICB9
CiAKLSAgICBQYXNzUmVmUHRyPEdlb3Bvc2l0aW9uPiBpc29sYXRlZENvcHkoKSBjb25zdAorICAg
IFJlZjxHZW9wb3NpdGlvbj4gaXNvbGF0ZWRDb3B5KCkgY29uc3QKICAgICB7CiAgICAgICAgIHJl
dHVybiBHZW9wb3NpdGlvbjo6Y3JlYXRlKG1fY29vcmRpbmF0ZXMtPmlzb2xhdGVkQ29weSgpLCBt
X3RpbWVzdGFtcCk7CiAgICAgfQpAQCAtNDksOCArNDksOCBAQCBwdWJsaWM6CiAgICAgQ29vcmRp
bmF0ZXMqIGNvb3JkcygpIGNvbnN0IHsgcmV0dXJuIG1fY29vcmRpbmF0ZXMuZ2V0KCk7IH0KICAg
ICAKIHByaXZhdGU6Ci0gICAgR2VvcG9zaXRpb24oUGFzc1JlZlB0cjxDb29yZGluYXRlcz4gY29v
cmRpbmF0ZXMsIERPTVRpbWVTdGFtcCB0aW1lc3RhbXApCi0gICAgICAgIDogbV9jb29yZGluYXRl
cyhjb29yZGluYXRlcykKKyAgICBHZW9wb3NpdGlvbihSZWZQdHI8Q29vcmRpbmF0ZXM+JiYgY29v
cmRpbmF0ZXMsIERPTVRpbWVTdGFtcCB0aW1lc3RhbXApCisgICAgICAgIDogbV9jb29yZGluYXRl
cyhXVEY6Om1vdmUoY29vcmRpbmF0ZXMpKQogICAgICAgICAsIG1fdGltZXN0YW1wKHRpbWVzdGFt
cCkKICAgICB7CiAgICAgICAgIEFTU0VSVChtX2Nvb3JkaW5hdGVzKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vUG9zaXRpb25FcnJvci5oIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9nZW9sb2NhdGlvbi9Qb3NpdGlvbkVycm9yLmgKaW5kZXggMTM4ZGY5
NmIwNzZlZDNiNmYwZGY3YmUxNDY2N2Q2MTlmNWNmOTUwNy4uODFjMjViN2M0MDljNmQxMmM3MThl
ODAzYzIyNmYxMmRjMWFjZGMzYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9n
ZW9sb2NhdGlvbi9Qb3NpdGlvbkVycm9yLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9n
ZW9sb2NhdGlvbi9Qb3NpdGlvbkVycm9yLmgKQEAgLTI2LDcgKzI2LDYgQEAKICNpZm5kZWYgUG9z
aXRpb25FcnJvcl9oCiAjZGVmaW5lIFBvc2l0aW9uRXJyb3JfaAogCi0jaW5jbHVkZSA8d3RmL1Bh
c3NSZWZQdHIuaD4KICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgogI2luY2x1ZGUgPHd0Zi90
ZXh0L1dURlN0cmluZy5oPgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2dl
b2xvY2F0aW9uL1Bvc2l0aW9uT3B0aW9ucy5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9nZW9s
b2NhdGlvbi9Qb3NpdGlvbk9wdGlvbnMuaAppbmRleCBlNDU1OTIxN2YyNTBkMjJjOTVmNzIwMTM4
YmNjMGEwZWFmNDU5YmNhLi4wNWRhYmUxOWZlZWJhYTlmYWU5OGUzMzY0ZmQ2ZGIzYTQ5YWVjNDFk
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2dlb2xvY2F0aW9uL1Bvc2l0aW9u
T3B0aW9ucy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vUG9zaXRp
b25PcHRpb25zLmgKQEAgLTI2LDcgKzI2LDYgQEAKICNpZm5kZWYgUG9zaXRpb25PcHRpb25zX2gK
ICNkZWZpbmUgUG9zaXRpb25PcHRpb25zX2gKIAotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+
CiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>262229</attachid>
            <date>2015-09-30 21:33:23 -0700</date>
            <delta_ts>2015-10-01 00:23:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-149552-20151001133258.patch</filename>
            <type>text/plain</type>
            <size>14214</size>
            <attacher name="Gyuyoung Kim">gyuyoung.kim</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTkwMzg2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTQ3MjllZDcwYjBiNDU2
NWIzODAxMTU4NGRmOThkNWUzMzdhZWZkMi4uNTU1ZTAyNTIwNDk2ODA3MDFkZDY5ZWZlYTVhMmI0
MmMzNWYxNGRhZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDE1LTA5LTMwICBHeXV5
b3VuZyBLaW0gIDxneXV5b3VuZy5raW1Ad2Via2l0Lm9yZz4KKworICAgICAgICBDbGVhbiB1cCBh
bGwgdXNlcyBvZiBQYXNzUmVmUHRyIGluIE1vZHVsZXMvZ2VvbG9jYXRpb24KKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0OTU1MgorCisgICAgICAgIFJl
dmlld2VkIGJ5IERhcmluIEFkbGVyLgorCisgICAgICAgICogTW9kdWxlcy9nZW9sb2NhdGlvbi9H
ZW9Ob3RpZmllci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHZW9Ob3RpZmllcjo6R2VvTm90aWZp
ZXIpOgorICAgICAgICAoV2ViQ29yZTo6R2VvTm90aWZpZXI6OnNldEZhdGFsRXJyb3IpOgorICAg
ICAgICAqIE1vZHVsZXMvZ2VvbG9jYXRpb24vR2VvTm90aWZpZXIuaDoKKyAgICAgICAgKFdlYkNv
cmU6Okdlb05vdGlmaWVyOjpjcmVhdGUpOgorICAgICAgICAqIE1vZHVsZXMvZ2VvbG9jYXRpb24v
R2VvbG9jYXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlR2VvcG9zaXRpb24pOgor
ICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlUG9zaXRpb25FcnJvcik6CisgICAgICAgIChXZWJDb3Jl
OjpHZW9sb2NhdGlvbjo6V2F0Y2hlcnM6OmFkZCk6CisgICAgICAgIChXZWJDb3JlOjpHZW9sb2Nh
dGlvbjo6Z2V0Q3VycmVudFBvc2l0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6Okdlb2xvY2F0aW9u
Ojp3YXRjaFBvc2l0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6Okdlb2xvY2F0aW9uOjpzdGFydFJl
cXVlc3QpOgorICAgICAgICAqIE1vZHVsZXMvZ2VvbG9jYXRpb24vR2VvbG9jYXRpb24uaDoKKyAg
ICAgICAgKiBNb2R1bGVzL2dlb2xvY2F0aW9uL0dlb2xvY2F0aW9uRXJyb3IuaDoKKyAgICAgICAg
KiBNb2R1bGVzL2dlb2xvY2F0aW9uL0dlb2xvY2F0aW9uUG9zaXRpb24uaDoKKyAgICAgICAgKiBN
b2R1bGVzL2dlb2xvY2F0aW9uL0dlb3Bvc2l0aW9uLmg6CisgICAgICAgIChXZWJDb3JlOjpHZW9w
b3NpdGlvbjo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6Okdlb3Bvc2l0aW9uOjppc29sYXRl
ZENvcHkpOgorICAgICAgICAoV2ViQ29yZTo6R2VvcG9zaXRpb246Okdlb3Bvc2l0aW9uKToKKyAg
ICAgICAgKiBNb2R1bGVzL2dlb2xvY2F0aW9uL1Bvc2l0aW9uRXJyb3IuaDoKKyAgICAgICAgKiBN
b2R1bGVzL2dlb2xvY2F0aW9uL1Bvc2l0aW9uT3B0aW9ucy5oOgorCiAyMDE1LTA5LTMwICBIdW5z
ZW9wIEplb25nICA8aHM4NS5qZW9uZ0BzYW1zdW5nLmNvbT4KIAogICAgICAgICBbRUZMXVtHdGtd
IFRyeSB0byBmaXggdGhlIGJ1aWxkIGFmdGVyIHIxOTAzNzkuCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2dlb2xvY2F0aW9uL0dlb05vdGlmaWVyLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vR2VvTm90aWZpZXIuY3BwCmluZGV4IDI4MTllYWRjZGY3
OTIxZmZlOWY0NzdkOTRhZDRlM2ZiOTYzYzNhZDYuLmQzZWVkMjBlZGQ0YTk3ZTVkYThhMGU2MTA5
Yzk5N2I3Y2QxMTIyZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZ2VvbG9j
YXRpb24vR2VvTm90aWZpZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZ2VvbG9j
YXRpb24vR2VvTm90aWZpZXIuY3BwCkBAIC0zNCwxMSArMzQsMTEgQEAKIAogbmFtZXNwYWNlIFdl
YkNvcmUgewogCi1HZW9Ob3RpZmllcjo6R2VvTm90aWZpZXIoR2VvbG9jYXRpb24mIGdlb2xvY2F0
aW9uLCBQYXNzUmVmUHRyPFBvc2l0aW9uQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1Jl
ZlB0cjxQb3NpdGlvbkVycm9yQ2FsbGJhY2s+IGVycm9yQ2FsbGJhY2ssIFBhc3NSZWZQdHI8UG9z
aXRpb25PcHRpb25zPiBvcHRpb25zKQorR2VvTm90aWZpZXI6Okdlb05vdGlmaWVyKEdlb2xvY2F0
aW9uJiBnZW9sb2NhdGlvbiwgUmVmUHRyPFBvc2l0aW9uQ2FsbGJhY2s+JiYgc3VjY2Vzc0NhbGxi
YWNrLCBSZWZQdHI8UG9zaXRpb25FcnJvckNhbGxiYWNrPiYmIGVycm9yQ2FsbGJhY2ssIFJlZlB0
cjxQb3NpdGlvbk9wdGlvbnM+JiYgb3B0aW9ucykKICAgICA6IG1fZ2VvbG9jYXRpb24oZ2VvbG9j
YXRpb24pCi0gICAgLCBtX3N1Y2Nlc3NDYWxsYmFjayhzdWNjZXNzQ2FsbGJhY2spCi0gICAgLCBt
X2Vycm9yQ2FsbGJhY2soZXJyb3JDYWxsYmFjaykKLSAgICAsIG1fb3B0aW9ucyhvcHRpb25zKQor
ICAgICwgbV9zdWNjZXNzQ2FsbGJhY2soV1RGOjptb3ZlKHN1Y2Nlc3NDYWxsYmFjaykpCisgICAg
LCBtX2Vycm9yQ2FsbGJhY2soV1RGOjptb3ZlKGVycm9yQ2FsbGJhY2spKQorICAgICwgbV9vcHRp
b25zKFdURjo6bW92ZShvcHRpb25zKSkKICAgICAsIG1fdGltZXIoKnRoaXMsICZHZW9Ob3RpZmll
cjo6dGltZXJGaXJlZCkKICAgICAsIG1fdXNlQ2FjaGVkUG9zaXRpb24oZmFsc2UpCiB7CkBAIC00
OCw3ICs0OCw3IEBAIEdlb05vdGlmaWVyOjpHZW9Ob3RpZmllcihHZW9sb2NhdGlvbiYgZ2VvbG9j
YXRpb24sIFBhc3NSZWZQdHI8UG9zaXRpb25DYWxsYmFjaz4KICAgICBBU1NFUlQobV9vcHRpb25z
KTsKIH0KIAotdm9pZCBHZW9Ob3RpZmllcjo6c2V0RmF0YWxFcnJvcihQYXNzUmVmUHRyPFBvc2l0
aW9uRXJyb3I+IGVycm9yKQordm9pZCBHZW9Ob3RpZmllcjo6c2V0RmF0YWxFcnJvcihSZWZQdHI8
UG9zaXRpb25FcnJvcj4mJiBlcnJvcikKIHsKICAgICAvLyBJZiBhIGZhdGFsIGVycm9yIGhhcyBh
bHJlYWR5IGJlZW4gc2V0LCBzdGljayB3aXRoIGl0LiBUaGlzIG1ha2VzIHN1cmUgdGhhdAogICAg
IC8vIHdoZW4gcGVybWlzc2lvbiBpcyBkZW5pZWQsIHRoaXMgaXMgdGhlIGVycm9yIHJlcG9ydGVk
LCBhcyByZXF1aXJlZCBieSB0aGUKQEAgLTU2LDcgKzU2LDcgQEAgdm9pZCBHZW9Ob3RpZmllcjo6
c2V0RmF0YWxFcnJvcihQYXNzUmVmUHRyPFBvc2l0aW9uRXJyb3I+IGVycm9yKQogICAgIGlmICht
X2ZhdGFsRXJyb3IpCiAgICAgICAgIHJldHVybjsKIAotICAgIG1fZmF0YWxFcnJvciA9IGVycm9y
OworICAgIG1fZmF0YWxFcnJvciA9IFdURjo6bW92ZShlcnJvcik7CiAgICAgLy8gQW4gZXhpc3Rp
bmcgdGltZXIgbWF5IG5vdCBoYXZlIGEgemVybyB0aW1lb3V0LgogICAgIG1fdGltZXIuc3RvcCgp
OwogICAgIG1fdGltZXIuc3RhcnRPbmVTaG90KDApOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9nZW9sb2NhdGlvbi9HZW9Ob3RpZmllci5oIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9nZW9sb2NhdGlvbi9HZW9Ob3RpZmllci5oCmluZGV4IDZjM2VjNWNmNTUyMzY0NzQ2YzY4
MWJlZjcwYjEzYjQwMmJmNDE2MTcuLjMzOTI0M2EzMmUzYzA3N2JiMWFkNmQ3NTc1MzZmYjYwMDdl
NDhiZjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vR2Vv
Tm90aWZpZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2dlb2xvY2F0aW9uL0dlb05v
dGlmaWVyLmgKQEAgLTQ1LDEzICs0NSwxMyBAQCBjbGFzcyBQb3NpdGlvbk9wdGlvbnM7CiAKIGNs
YXNzIEdlb05vdGlmaWVyIDogcHVibGljIFJlZkNvdW50ZWQ8R2VvTm90aWZpZXI+IHsKIHB1Ymxp
YzoKLSAgICBzdGF0aWMgUmVmPEdlb05vdGlmaWVyPiBjcmVhdGUoR2VvbG9jYXRpb24mIGdlb2xv
Y2F0aW9uLCBQYXNzUmVmUHRyPFBvc2l0aW9uQ2FsbGJhY2s+IHBvc2l0aW9uQ2FsbGJhY2ssIFBh
c3NSZWZQdHI8UG9zaXRpb25FcnJvckNhbGxiYWNrPiBwb3NpdGlvbkVycm9yQ2FsbGJhY2ssIFBh
c3NSZWZQdHI8UG9zaXRpb25PcHRpb25zPiBvcHRpb25zKQorICAgIHN0YXRpYyBSZWY8R2VvTm90
aWZpZXI+IGNyZWF0ZShHZW9sb2NhdGlvbiYgZ2VvbG9jYXRpb24sIFJlZlB0cjxQb3NpdGlvbkNh
bGxiYWNrPiYmIHBvc2l0aW9uQ2FsbGJhY2ssIFJlZlB0cjxQb3NpdGlvbkVycm9yQ2FsbGJhY2s+
JiYgcG9zaXRpb25FcnJvckNhbGxiYWNrLCBSZWZQdHI8UG9zaXRpb25PcHRpb25zPiYmIG9wdGlv
bnMpCiAgICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBHZW9Ob3RpZmllcihnZW9s
b2NhdGlvbiwgcG9zaXRpb25DYWxsYmFjaywgcG9zaXRpb25FcnJvckNhbGxiYWNrLCBvcHRpb25z
KSk7CisgICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IEdlb05vdGlmaWVyKGdlb2xvY2F0aW9u
LCBXVEY6Om1vdmUocG9zaXRpb25DYWxsYmFjayksIFdURjo6bW92ZShwb3NpdGlvbkVycm9yQ2Fs
bGJhY2spLCBXVEY6Om1vdmUob3B0aW9ucykpKTsKICAgICB9CiAKICAgICBQb3NpdGlvbk9wdGlv
bnMqIG9wdGlvbnMoKSBjb25zdCB7IHJldHVybiBtX29wdGlvbnMuZ2V0KCk7IH0KLSAgICB2b2lk
IHNldEZhdGFsRXJyb3IoUGFzc1JlZlB0cjxQb3NpdGlvbkVycm9yPik7CisgICAgdm9pZCBzZXRG
YXRhbEVycm9yKFJlZlB0cjxQb3NpdGlvbkVycm9yPiYmKTsKIAogICAgIGJvb2wgdXNlQ2FjaGVk
UG9zaXRpb24oKSBjb25zdCB7IHJldHVybiBtX3VzZUNhY2hlZFBvc2l0aW9uOyB9CiAgICAgdm9p
ZCBzZXRVc2VDYWNoZWRQb3NpdGlvbigpOwpAQCAtNjUsNyArNjUsNyBAQCBwdWJsaWM6CiAgICAg
Ym9vbCBoYXNaZXJvVGltZW91dCgpIGNvbnN0OwogCiBwcml2YXRlOgotICAgIEdlb05vdGlmaWVy
KEdlb2xvY2F0aW9uJiwgUGFzc1JlZlB0cjxQb3NpdGlvbkNhbGxiYWNrPiwgUGFzc1JlZlB0cjxQ
b3NpdGlvbkVycm9yQ2FsbGJhY2s+LCBQYXNzUmVmUHRyPFBvc2l0aW9uT3B0aW9ucz4pOworICAg
IEdlb05vdGlmaWVyKEdlb2xvY2F0aW9uJiwgUmVmUHRyPFBvc2l0aW9uQ2FsbGJhY2s+JiYsIFJl
ZlB0cjxQb3NpdGlvbkVycm9yQ2FsbGJhY2s+JiYsIFJlZlB0cjxQb3NpdGlvbk9wdGlvbnM+JiYp
OwogCiAgICAgUmVmPEdlb2xvY2F0aW9uPiBtX2dlb2xvY2F0aW9uOwogICAgIFJlZlB0cjxQb3Np
dGlvbkNhbGxiYWNrPiBtX3N1Y2Nlc3NDYWxsYmFjazsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vR2VvbG9jYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9nZW9sb2NhdGlvbi9HZW9sb2NhdGlvbi5jcHAKaW5kZXggODExNDI0YzJiYTc1ZDUz
NmQ1MmRlNDMzZDI4MDk2Zjc4NjExMDQwZi4uZGM0NzI2YTJiODE2OTY3MTdmN2YxOTM4YTg0MzM0
ZGU4NWRiMWQ0YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9nZW9sb2NhdGlv
bi9HZW9sb2NhdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9nZW9sb2NhdGlv
bi9HZW9sb2NhdGlvbi5jcHAKQEAgLTQ5LDEwICs0OSwxMCBAQCBzdGF0aWMgY29uc3QgY2hhciBw
ZXJtaXNzaW9uRGVuaWVkRXJyb3JNZXNzYWdlW10gPSAiVXNlciBkZW5pZWQgR2VvbG9jYXRpb24i
Owogc3RhdGljIGNvbnN0IGNoYXIgZmFpbGVkVG9TdGFydFNlcnZpY2VFcnJvck1lc3NhZ2VbXSA9
ICJGYWlsZWQgdG8gc3RhcnQgR2VvbG9jYXRpb24gc2VydmljZSI7CiBzdGF0aWMgY29uc3QgY2hh
ciBmcmFtZWxlc3NEb2N1bWVudEVycm9yTWVzc2FnZVtdID0gIkdlb2xvY2F0aW9uIGNhbm5vdCBi
ZSB1c2VkIGluIGZyYW1lbGVzcyBkb2N1bWVudHMiOwogCi1zdGF0aWMgUGFzc1JlZlB0cjxHZW9w
b3NpdGlvbj4gY3JlYXRlR2VvcG9zaXRpb24oR2VvbG9jYXRpb25Qb3NpdGlvbiogcG9zaXRpb24p
CitzdGF0aWMgUmVmUHRyPEdlb3Bvc2l0aW9uPiBjcmVhdGVHZW9wb3NpdGlvbihHZW9sb2NhdGlv
blBvc2l0aW9uKiBwb3NpdGlvbikKIHsKICAgICBpZiAoIXBvc2l0aW9uKQotICAgICAgICByZXR1
cm4gMDsKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgCiAgICAgUmVmUHRyPENvb3JkaW5h
dGVzPiBjb29yZGluYXRlcyA9IENvb3JkaW5hdGVzOjpjcmVhdGUocG9zaXRpb24tPmxhdGl0dWRl
KCksIHBvc2l0aW9uLT5sb25naXR1ZGUoKSwgcG9zaXRpb24tPmNhblByb3ZpZGVBbHRpdHVkZSgp
LCBwb3NpdGlvbi0+YWx0aXR1ZGUoKSwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24tPmFjY3VyYWN5KCksIHBvc2l0aW9u
LT5jYW5Qcm92aWRlQWx0aXR1ZGVBY2N1cmFjeSgpLCBwb3NpdGlvbi0+YWx0aXR1ZGVBY2N1cmFj
eSgpLApAQCAtNjAsNyArNjAsNyBAQCBzdGF0aWMgUGFzc1JlZlB0cjxHZW9wb3NpdGlvbj4gY3Jl
YXRlR2VvcG9zaXRpb24oR2VvbG9jYXRpb25Qb3NpdGlvbiogcG9zaXRpb24pCiAgICAgcmV0dXJu
IEdlb3Bvc2l0aW9uOjpjcmVhdGUoY29vcmRpbmF0ZXMucmVsZWFzZSgpLCBjb252ZXJ0U2Vjb25k
c1RvRE9NVGltZVN0YW1wKHBvc2l0aW9uLT50aW1lc3RhbXAoKSkpOwogfQogCi1zdGF0aWMgUGFz
c1JlZlB0cjxQb3NpdGlvbkVycm9yPiBjcmVhdGVQb3NpdGlvbkVycm9yKEdlb2xvY2F0aW9uRXJy
b3IqIGVycm9yKQorc3RhdGljIFJlZjxQb3NpdGlvbkVycm9yPiBjcmVhdGVQb3NpdGlvbkVycm9y
KEdlb2xvY2F0aW9uRXJyb3IqIGVycm9yKQogewogICAgIFBvc2l0aW9uRXJyb3I6OkVycm9yQ29k
ZSBjb2RlID0gUG9zaXRpb25FcnJvcjo6UE9TSVRJT05fVU5BVkFJTEFCTEU7CiAgICAgc3dpdGNo
IChlcnJvci0+Y29kZSgpKSB7CkBAIC03NSwxNCArNzUsMTMgQEAgc3RhdGljIFBhc3NSZWZQdHI8
UG9zaXRpb25FcnJvcj4gY3JlYXRlUG9zaXRpb25FcnJvcihHZW9sb2NhdGlvbkVycm9yKiBlcnJv
cikKICAgICByZXR1cm4gUG9zaXRpb25FcnJvcjo6Y3JlYXRlKGNvZGUsIGVycm9yLT5tZXNzYWdl
KCkpOwogfQogCi1ib29sIEdlb2xvY2F0aW9uOjpXYXRjaGVyczo6YWRkKGludCBpZCwgUGFzc1Jl
ZlB0cjxHZW9Ob3RpZmllcj4gcHJwTm90aWZpZXIpCitib29sIEdlb2xvY2F0aW9uOjpXYXRjaGVy
czo6YWRkKGludCBpZCwgUmVmUHRyPEdlb05vdGlmaWVyPiYmIG5vdGlmaWVyKQogewogICAgIEFT
U0VSVChpZCA+IDApOwotICAgIFJlZlB0cjxHZW9Ob3RpZmllcj4gbm90aWZpZXIgPSBwcnBOb3Rp
ZmllcjsKIAogICAgIGlmICghbV9pZFRvTm90aWZpZXJNYXAuYWRkKGlkLCBub3RpZmllci5nZXQo
KSkuaXNOZXdFbnRyeSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIG1fbm90aWZpZXJUb0lk
TWFwLnNldChub3RpZmllci5yZWxlYXNlKCksIGlkKTsKKyAgICBtX25vdGlmaWVyVG9JZE1hcC5z
ZXQoV1RGOjptb3ZlKG5vdGlmaWVyKSwgaWQpOwogICAgIHJldHVybiB0cnVlOwogfQogCkBAIC0z
MDQsMzQgKzMwMywzNCBAQCBHZW9wb3NpdGlvbiogR2VvbG9jYXRpb246Omxhc3RQb3NpdGlvbigp
CiAgICAgcmV0dXJuIG1fbGFzdFBvc2l0aW9uLmdldCgpOwogfQogCi12b2lkIEdlb2xvY2F0aW9u
OjpnZXRDdXJyZW50UG9zaXRpb24oUGFzc1JlZlB0cjxQb3NpdGlvbkNhbGxiYWNrPiBzdWNjZXNz
Q2FsbGJhY2ssIFBhc3NSZWZQdHI8UG9zaXRpb25FcnJvckNhbGxiYWNrPiBlcnJvckNhbGxiYWNr
LCBQYXNzUmVmUHRyPFBvc2l0aW9uT3B0aW9ucz4gb3B0aW9ucykKK3ZvaWQgR2VvbG9jYXRpb246
OmdldEN1cnJlbnRQb3NpdGlvbihSZWZQdHI8UG9zaXRpb25DYWxsYmFjaz4mJiBzdWNjZXNzQ2Fs
bGJhY2ssIFJlZlB0cjxQb3NpdGlvbkVycm9yQ2FsbGJhY2s+JiYgZXJyb3JDYWxsYmFjaywgUmVm
UHRyPFBvc2l0aW9uT3B0aW9ucz4mJiBvcHRpb25zKQogewogICAgIGlmICghZnJhbWUoKSkKICAg
ICAgICAgcmV0dXJuOwogCi0gICAgUmVmUHRyPEdlb05vdGlmaWVyPiBub3RpZmllciA9IEdlb05v
dGlmaWVyOjpjcmVhdGUoKnRoaXMsIHN1Y2Nlc3NDYWxsYmFjaywgZXJyb3JDYWxsYmFjaywgb3B0
aW9ucyk7CisgICAgUmVmUHRyPEdlb05vdGlmaWVyPiBub3RpZmllciA9IEdlb05vdGlmaWVyOjpj
cmVhdGUoKnRoaXMsIFdURjo6bW92ZShzdWNjZXNzQ2FsbGJhY2spLCBXVEY6Om1vdmUoZXJyb3JD
YWxsYmFjayksIFdURjo6bW92ZShvcHRpb25zKSk7CiAgICAgc3RhcnRSZXF1ZXN0KG5vdGlmaWVy
LmdldCgpKTsKIAogICAgIG1fb25lU2hvdHMuYWRkKG5vdGlmaWVyKTsKIH0KIAotaW50IEdlb2xv
Y2F0aW9uOjp3YXRjaFBvc2l0aW9uKFBhc3NSZWZQdHI8UG9zaXRpb25DYWxsYmFjaz4gc3VjY2Vz
c0NhbGxiYWNrLCBQYXNzUmVmUHRyPFBvc2l0aW9uRXJyb3JDYWxsYmFjaz4gZXJyb3JDYWxsYmFj
aywgUGFzc1JlZlB0cjxQb3NpdGlvbk9wdGlvbnM+IG9wdGlvbnMpCitpbnQgR2VvbG9jYXRpb246
OndhdGNoUG9zaXRpb24oUmVmUHRyPFBvc2l0aW9uQ2FsbGJhY2s+JiYgc3VjY2Vzc0NhbGxiYWNr
LCBSZWZQdHI8UG9zaXRpb25FcnJvckNhbGxiYWNrPiYmIGVycm9yQ2FsbGJhY2ssIFJlZlB0cjxQ
b3NpdGlvbk9wdGlvbnM+JiYgb3B0aW9ucykKIHsKICAgICBpZiAoIWZyYW1lKCkpCiAgICAgICAg
IHJldHVybiAwOwogCi0gICAgUmVmUHRyPEdlb05vdGlmaWVyPiBub3RpZmllciA9IEdlb05vdGlm
aWVyOjpjcmVhdGUoKnRoaXMsIHN1Y2Nlc3NDYWxsYmFjaywgZXJyb3JDYWxsYmFjaywgb3B0aW9u
cyk7CisgICAgUmVmUHRyPEdlb05vdGlmaWVyPiBub3RpZmllciA9IEdlb05vdGlmaWVyOjpjcmVh
dGUoKnRoaXMsIFdURjo6bW92ZShzdWNjZXNzQ2FsbGJhY2spLCBXVEY6Om1vdmUoZXJyb3JDYWxs
YmFjayksIFdURjo6bW92ZShvcHRpb25zKSk7CiAgICAgc3RhcnRSZXF1ZXN0KG5vdGlmaWVyLmdl
dCgpKTsKIAogICAgIGludCB3YXRjaElEOwogICAgIC8vIEtlZXAgYXNraW5nIGZvciB0aGUgbmV4
dCBpZCB1bnRpbCB3ZSdyZSBnaXZlbiBvbmUgdGhhdCB3ZSBkb24ndCBhbHJlYWR5IGhhdmUuCiAg
ICAgZG8gewogICAgICAgICB3YXRjaElEID0gbV9zY3JpcHRFeGVjdXRpb25Db250ZXh0LT5jaXJj
dWxhclNlcXVlbnRpYWxJRCgpOwotICAgIH0gd2hpbGUgKCFtX3dhdGNoZXJzLmFkZCh3YXRjaElE
LCBub3RpZmllcikpOworICAgIH0gd2hpbGUgKCFtX3dhdGNoZXJzLmFkZCh3YXRjaElELCBXVEY6
Om1vdmUobm90aWZpZXIpKSk7CiAgICAgcmV0dXJuIHdhdGNoSUQ7CiB9CiAKLXZvaWQgR2VvbG9j
YXRpb246OnN0YXJ0UmVxdWVzdChHZW9Ob3RpZmllciAqbm90aWZpZXIpCit2b2lkIEdlb2xvY2F0
aW9uOjpzdGFydFJlcXVlc3QoR2VvTm90aWZpZXIqIG5vdGlmaWVyKQogewogICAgIC8vIENoZWNr
IHdoZXRoZXIgcGVybWlzc2lvbnMgaGF2ZSBhbHJlYWR5IGJlZW4gZGVuaWVkLiBOb3RlIHRoYXQg
aWYgdGhpcyBpcyB0aGUgY2FzZSwKICAgICAvLyB0aGUgcGVybWlzc2lvbiBzdGF0ZSBjYW4gbm90
IGNoYW5nZSBhZ2FpbiBpbiB0aGUgbGlmZXRpbWUgb2YgdGhpcyBwYWdlLgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9nZW9sb2NhdGlvbi9HZW9sb2NhdGlvbi5oIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9nZW9sb2NhdGlvbi9HZW9sb2NhdGlvbi5oCmluZGV4IDg3ZDQyNjUz
YWI2Y2E3NjM5ZGQ3YTU0MTRhOTUxYzRhN2ZhM2U0YjguLmU1ZmVlYzUyZTc5MjQwOTYwZmI2N2Q3
ZmVlZjkxNTdkNjBiNDI1ZWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZ2Vv
bG9jYXRpb24vR2VvbG9jYXRpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2dlb2xv
Y2F0aW9uL0dlb2xvY2F0aW9uLmgKQEAgLTYxLDggKzYxLDggQEAgcHVibGljOgogICAgIERvY3Vt
ZW50KiBkb2N1bWVudCgpIGNvbnN0OwogICAgIFdFQkNPUkVfRVhQT1JUIEZyYW1lKiBmcmFtZSgp
IGNvbnN0OwogCi0gICAgdm9pZCBnZXRDdXJyZW50UG9zaXRpb24oUGFzc1JlZlB0cjxQb3NpdGlv
bkNhbGxiYWNrPiwgUGFzc1JlZlB0cjxQb3NpdGlvbkVycm9yQ2FsbGJhY2s+LCBQYXNzUmVmUHRy
PFBvc2l0aW9uT3B0aW9ucz4pOwotICAgIGludCB3YXRjaFBvc2l0aW9uKFBhc3NSZWZQdHI8UG9z
aXRpb25DYWxsYmFjaz4sIFBhc3NSZWZQdHI8UG9zaXRpb25FcnJvckNhbGxiYWNrPiwgUGFzc1Jl
ZlB0cjxQb3NpdGlvbk9wdGlvbnM+KTsKKyAgICB2b2lkIGdldEN1cnJlbnRQb3NpdGlvbihSZWZQ
dHI8UG9zaXRpb25DYWxsYmFjaz4mJiwgUmVmUHRyPFBvc2l0aW9uRXJyb3JDYWxsYmFjaz4mJiwg
UmVmUHRyPFBvc2l0aW9uT3B0aW9ucz4mJik7CisgICAgaW50IHdhdGNoUG9zaXRpb24oUmVmUHRy
PFBvc2l0aW9uQ2FsbGJhY2s+JiYsIFJlZlB0cjxQb3NpdGlvbkVycm9yQ2FsbGJhY2s+JiYsIFJl
ZlB0cjxQb3NpdGlvbk9wdGlvbnM+JiYpOwogICAgIHZvaWQgY2xlYXJXYXRjaChpbnQgd2F0Y2hJ
RCk7CiAKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNldElzQWxsb3dlZChib29sKTsKQEAgLTkz
LDcgKzkzLDcgQEAgcHJpdmF0ZToKIAogICAgIGNsYXNzIFdhdGNoZXJzIHsKICAgICBwdWJsaWM6
Ci0gICAgICAgIGJvb2wgYWRkKGludCBpZCwgUGFzc1JlZlB0cjxHZW9Ob3RpZmllcj4pOworICAg
ICAgICBib29sIGFkZChpbnQgaWQsIFJlZlB0cjxHZW9Ob3RpZmllcj4mJik7CiAgICAgICAgIEdl
b05vdGlmaWVyKiBmaW5kKGludCBpZCk7CiAgICAgICAgIHZvaWQgcmVtb3ZlKGludCBpZCk7CiAg
ICAgICAgIHZvaWQgcmVtb3ZlKEdlb05vdGlmaWVyKik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2dlb2xvY2F0aW9uL0dlb2xvY2F0aW9uRXJyb3IuaCBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vR2VvbG9jYXRpb25FcnJvci5oCmluZGV4IDA1NTRlODdi
NjdmOTVhZTZkNmE3MDA4MTE4MzU5Njg5MmQxNGIwMDQuLmViYjdhYTczZDQyNTkzNTlhYWYwMDAy
Mzg4YzE2ZGI0YmVmZjUzODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZ2Vv
bG9jYXRpb24vR2VvbG9jYXRpb25FcnJvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
Z2VvbG9jYXRpb24vR2VvbG9jYXRpb25FcnJvci5oCkBAIC0yNiw3ICsyNiw2IEBACiAjaWZuZGVm
IEdlb2xvY2F0aW9uRXJyb3JfaAogI2RlZmluZSBHZW9sb2NhdGlvbkVycm9yX2gKIAotI2luY2x1
ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KICNpbmNs
dWRlIDx3dGYvUmVmUHRyLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2dlb2xvY2F0aW9uL0dlb2xvY2F0aW9uUG9z
aXRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vR2VvbG9jYXRpb25Q
b3NpdGlvbi5oCmluZGV4IDhkMWU5MzA3MDFhMjgwNzIyNDQ2NWM1MjVhYmZmZTM2NjkyY2QyNjAu
LmRiZGQ3MzViOTNhZTZiN2FjMzM2N2UyY2UwMmE1NDI2MDgyZjlkNjAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vR2VvbG9jYXRpb25Qb3NpdGlvbi5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vR2VvbG9jYXRpb25Qb3NpdGlv
bi5oCkBAIC0yNiw3ICsyNiw2IEBACiAjaWZuZGVmIEdlb2xvY2F0aW9uUG9zaXRpb25faAogI2Rl
ZmluZSBHZW9sb2NhdGlvblBvc2l0aW9uX2gKIAotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+
CiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KICNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vR2VvcG9zaXRp
b24uaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vR2VvcG9zaXRpb24uaApp
bmRleCA3OGRjMzZhNWUxOTBmZGIzOWM2Nzc1YTdiNDIwY2QwNTc3NzcyNDI4Li4xOGYxMDlmNTBl
MGY5NzNmZjAzODE5ODFiYTIxMjJhMmZjMjE0MTE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2dlb2xvY2F0aW9uL0dlb3Bvc2l0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9nZW9sb2NhdGlvbi9HZW9wb3NpdGlvbi5oCkBAIC0zNSwyMiArMzUsMjIgQEAgbmFt
ZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBHZW9wb3NpdGlvbiA6IHB1YmxpYyBSZWZDb3VudGVk
PEdlb3Bvc2l0aW9uPiB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFJlZjxHZW9wb3NpdGlvbj4gY3Jl
YXRlKFBhc3NSZWZQdHI8Q29vcmRpbmF0ZXM+IGNvb3JkaW5hdGVzLCBET01UaW1lU3RhbXAgdGlt
ZXN0YW1wKQorICAgIHN0YXRpYyBSZWY8R2VvcG9zaXRpb24+IGNyZWF0ZShSZWZQdHI8Q29vcmRp
bmF0ZXM+JiYgY29vcmRpbmF0ZXMsIERPTVRpbWVTdGFtcCB0aW1lc3RhbXApCiAgICAgewotICAg
ICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBHZW9wb3NpdGlvbihjb29yZGluYXRlcywgdGltZXN0
YW1wKSk7CisgICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IEdlb3Bvc2l0aW9uKFdURjo6bW92
ZShjb29yZGluYXRlcyksIHRpbWVzdGFtcCkpOwogICAgIH0KIAotICAgIFBhc3NSZWZQdHI8R2Vv
cG9zaXRpb24+IGlzb2xhdGVkQ29weSgpIGNvbnN0CisgICAgUmVmPEdlb3Bvc2l0aW9uPiBpc29s
YXRlZENvcHkoKSBjb25zdAogICAgIHsKLSAgICAgICAgcmV0dXJuIEdlb3Bvc2l0aW9uOjpjcmVh
dGUobV9jb29yZGluYXRlcy0+aXNvbGF0ZWRDb3B5KCksIG1fdGltZXN0YW1wKTsKKyAgICAgICAg
cmV0dXJuIGNyZWF0ZShtX2Nvb3JkaW5hdGVzLT5pc29sYXRlZENvcHkoKSwgbV90aW1lc3RhbXAp
OwogICAgIH0KIAogICAgIERPTVRpbWVTdGFtcCB0aW1lc3RhbXAoKSBjb25zdCB7IHJldHVybiBt
X3RpbWVzdGFtcDsgfQogICAgIENvb3JkaW5hdGVzKiBjb29yZHMoKSBjb25zdCB7IHJldHVybiBt
X2Nvb3JkaW5hdGVzLmdldCgpOyB9CiAgICAgCiBwcml2YXRlOgotICAgIEdlb3Bvc2l0aW9uKFBh
c3NSZWZQdHI8Q29vcmRpbmF0ZXM+IGNvb3JkaW5hdGVzLCBET01UaW1lU3RhbXAgdGltZXN0YW1w
KQotICAgICAgICA6IG1fY29vcmRpbmF0ZXMoY29vcmRpbmF0ZXMpCisgICAgR2VvcG9zaXRpb24o
UmVmUHRyPENvb3JkaW5hdGVzPiYmIGNvb3JkaW5hdGVzLCBET01UaW1lU3RhbXAgdGltZXN0YW1w
KQorICAgICAgICA6IG1fY29vcmRpbmF0ZXMoV1RGOjptb3ZlKGNvb3JkaW5hdGVzKSkKICAgICAg
ICAgLCBtX3RpbWVzdGFtcCh0aW1lc3RhbXApCiAgICAgewogICAgICAgICBBU1NFUlQobV9jb29y
ZGluYXRlcyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2dlb2xvY2F0aW9u
L1Bvc2l0aW9uRXJyb3IuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vUG9z
aXRpb25FcnJvci5oCmluZGV4IDEzOGRmOTZiMDc2ZWQzYjZmMGRmN2JlMTQ2NjdkNjE5ZjVjZjk1
MDcuLjgxYzI1YjdjNDA5YzZkMTJjNzE4ZTgwM2MyMjZmMTJkYzFhY2RjM2EgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vUG9zaXRpb25FcnJvci5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vUG9zaXRpb25FcnJvci5oCkBAIC0y
Niw3ICsyNiw2IEBACiAjaWZuZGVmIFBvc2l0aW9uRXJyb3JfaAogI2RlZmluZSBQb3NpdGlvbkVy
cm9yX2gKIAotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CiAjaW5jbHVkZSA8d3RmL1JlZkNv
dW50ZWQuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9nZW9sb2NhdGlvbi9Qb3NpdGlvbk9wdGlvbnMuaCBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvZ2VvbG9jYXRpb24vUG9zaXRpb25PcHRpb25zLmgKaW5kZXgg
ZTQ1NTkyMTdmMjUwZDIyYzk1ZjcyMDEzOGJjYzBhMGVhZjQ1OWJjYS4uMDVkYWJlMTlmZWViYWE5
ZmFlOThlMzM2NGZkNmRiM2E0OWFlYzQxZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9nZW9sb2NhdGlvbi9Qb3NpdGlvbk9wdGlvbnMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2dlb2xvY2F0aW9uL1Bvc2l0aW9uT3B0aW9ucy5oCkBAIC0yNiw3ICsyNiw2IEBACiAj
aWZuZGVmIFBvc2l0aW9uT3B0aW9uc19oCiAjZGVmaW5lIFBvc2l0aW9uT3B0aW9uc19oCiAKLSNp
bmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CiAK
IG5hbWVzcGFjZSBXZWJDb3JlIHsK
</data>

          </attachment>
      

    </bug>

</bugzilla>