<?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>53492</bug_id>
          
          <creation_ts>2011-02-01 07:11:54 -0800</creation_ts>
          <short_desc>Web Inspector: Remove the *2 suffix from the CSS style-related protocol methods</short_desc>
          <delta_ts>2011-02-03 05:56:42 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Web Inspector (Deprecated)</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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="Alexander Pavlov (apavlov)">apavlov</reporter>
          <assigned_to name="Alexander Pavlov (apavlov)">apavlov</assigned_to>
          <cc>abarth</cc>
    
    <cc>apavlov</cc>
    
    <cc>bweinstein</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eric</cc>
    
    <cc>joepeck</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>rik</cc>
    
    <cc>timothy</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>343212</commentid>
    <comment_count>0</comment_count>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2011-02-01 07:11:54 -0800</bug_when>
    <thetext>We&apos;ve got a bunch of InspectorBackend.get/set...2() calls, and the &quot;2&quot; suffix is obsolete.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>343218</commentid>
    <comment_count>1</comment_count>
      <attachid>80760</attachid>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2011-02-01 07:53:03 -0800</bug_when>
    <thetext>Created attachment 80760
[PATCH] Suggested solution</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>343282</commentid>
    <comment_count>2</comment_count>
      <attachid>80760</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-02-01 09:56:06 -0800</bug_when>
    <thetext>Comment on attachment 80760
[PATCH] Suggested solution

Rejecting attachment 80760 from commit-queue.

Failed to run &quot;[&apos;./Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;--bot-id=cr-jail-3&apos;, &apos;build-...&quot; exit_code: 2

Last 500 characters of output:
...................................................................................................................................................................................
inspector ......................................................................
inspector/styles-source-lines-inline.html -&gt; failed

Exiting early after 1 failures. 18122 tests run.
386.77s total testing time

18121 test cases (99%) succeeded
1 test case (&lt;1%) had incorrect layout
8 test cases (&lt;1%) had stderr output

Full output: http://queues.webkit.org/results/7681769</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>344640</commentid>
    <comment_count>3</comment_count>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2011-02-03 05:05:15 -0800</bug_when>
    <thetext>Committing to http://svn.webkit.org/repository/webkit/trunk ...
        M       LayoutTests/ChangeLog
        M       LayoutTests/inspector/styles-iframe.html
        M       LayoutTests/inspector/styles-new-API.html
        M       LayoutTests/inspector/styles-source-lines-inline.html
        M       LayoutTests/inspector/styles-source-lines.html
        M       LayoutTests/inspector/styles-source-offsets.html
        M       Source/WebCore/ChangeLog
        M       Source/WebCore/inspector/Inspector.idl
        M       Source/WebCore/inspector/InspectorCSSAgent.cpp
        M       Source/WebCore/inspector/InspectorCSSAgent.h
        M       Source/WebCore/inspector/front-end/AuditRules.js
        M       Source/WebCore/inspector/front-end/CSSStyleModel.js
Committed r77478</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>344658</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-02-03 05:56:42 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/77478 might have broken Qt Linux Release</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>80760</attachid>
            <date>2011-02-01 07:53:03 -0800</date>
            <delta_ts>2011-02-01 09:56:06 -0800</delta_ts>
            <desc>[PATCH] Suggested solution</desc>
            <filename>removesuffix.patch</filename>
            <type>text/plain</type>
            <size>30977</size>
            <attacher name="Alexander Pavlov (apavlov)">apavlov</attacher>
            
              <data encoding="base64">Y29tbWl0IDUwNTJjNDIyMTM1MGNjMWQyYzcyYWFlZGZhMmFhY2UzNzlmNTBhZjYKQXV0aG9yOiBB
bGV4YW5kZXIgUGF2bG92IDxhcGF2bG92QGNocm9taXVtLm9yZz4KRGF0ZTogICBUdWUgRmViIDEg
MTg6NDI6MTMgMjAxMSArMDMwMAoKICAgIFJlbW92ZVN1ZmZpeDIKCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggOWVjYTk4MC4u
ZDY1NmVmYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRl
c3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDExLTAyLTAxICBBbGV4YW5kZXIgUGF2
bG92ICA8YXBhdmxvdkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogUmVtb3ZlIHRoZSAqMiBzdWZmaXgg
ZnJvbSB0aGUgQ1NTIHN0eWxlLXJlbGF0ZWQgcHJvdG9jb2wgbWV0aG9kcworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTM0OTIKKworICAgICAgICAqIGlu
c3BlY3Rvci9zdHlsZXMtaWZyYW1lLmh0bWw6CisgICAgICAgICogaW5zcGVjdG9yL3N0eWxlcy1u
ZXctQVBJLmh0bWw6CisgICAgICAgICogaW5zcGVjdG9yL3N0eWxlcy1zb3VyY2UtbGluZXMtaW5s
aW5lLmh0bWw6CisgICAgICAgICogaW5zcGVjdG9yL3N0eWxlcy1zb3VyY2UtbGluZXMuaHRtbDoK
KyAgICAgICAgKiBpbnNwZWN0b3Ivc3R5bGVzLXNvdXJjZS1vZmZzZXRzLmh0bWw6CisKIDIwMTEt
MDItMDEgIENzYWJhIE9zenRyb2dvbsOhYyAgPG9zc3lAd2Via2l0Lm9yZz4KIAogICAgICAgICBV
bnJldmlld2VkLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3N0eWxlcy1pZnJh
bWUuaHRtbCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9zdHlsZXMtaWZyYW1lLmh0bWwKaW5kZXgg
MmQ3NjI0YS4uMDJmMTdlNCAxMDA3NTUKLS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3N0eWxl
cy1pZnJhbWUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3Ivc3R5bGVzLWlmcmFtZS5o
dG1sCkBAIC00Niw3ICs0Niw3IEBAIGZ1bmN0aW9uIGZyb250ZW5kX2R1bXBTdHlsZXNDb250aW51
YXRpb24odGVzdENvbnRyb2xsZXIpCiAgICAgICAgIG1haW5TdHlsZXMgPSBzdHlsZXM7CiAgICAg
fQogCi0gICAgSW5zcGVjdG9yQmFja2VuZC5nZXRTdHlsZXNGb3JOb2RlMihib2R5LmlkLCBtYWlu
RnJhbWVDYWxsYmFjayk7CisgICAgSW5zcGVjdG9yQmFja2VuZC5nZXRTdHlsZXNGb3JOb2RlKGJv
ZHkuaWQsIG1haW5GcmFtZUNhbGxiYWNrKTsKIAogICAgIC8vIDIuIEZpbmQgaWZyYW1lIG5vZGUK
ICAgICB2YXIgaW5uZXJNYXBwaW5nID0gV2ViSW5zcGVjdG9yLmRvbUFnZW50Ll9pZFRvRE9NTm9k
ZTsKQEAgLTY3LDcgKzY3LDcgQEAgZnVuY3Rpb24gZnJvbnRlbmRfZHVtcFN0eWxlc0NvbnRpbnVh
dGlvbih0ZXN0Q29udHJvbGxlcikKICAgICAgICAgdGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZShb
bWFpblN0eWxlcywgc3R5bGVzXSk7CiAgICAgfQogCi0gICAgSW5zcGVjdG9yQmFja2VuZC5nZXRT
dHlsZXNGb3JOb2RlMihpZnJhbWVCb2R5LmlkLCBpZnJhbWVDYWxsYmFjayk7CisgICAgSW5zcGVj
dG9yQmFja2VuZC5nZXRTdHlsZXNGb3JOb2RlKGlmcmFtZUJvZHkuaWQsIGlmcmFtZUNhbGxiYWNr
KTsKIH0KIAogPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3Ivc3R5
bGVzLW5ldy1BUEkuaHRtbCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9zdHlsZXMtbmV3LUFQSS5o
dG1sCmluZGV4IGExNzZiMmYuLjY3M2MyODAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2luc3Bl
Y3Rvci9zdHlsZXMtbmV3LUFQSS5odG1sCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9zdHls
ZXMtbmV3LUFQSS5odG1sCkBAIC02OCwxMCArNjgsMTAgQEAgZnVuY3Rpb24gZnJvbnRlbmRfcnVu
VGVzdCh0ZXN0Q29udHJvbGxlcikKICAgICAgICAgICAgIHRlc3RDb250cm9sbGVyLnJlc3VsdHMu
cHVzaCgiPT09IElubGluZSBzdHlsZSBmb3IgYm9keSA9PT0iKTsKICAgICAgICAgICAgIGZyb250
ZW5kX2R1bXBSdWxlT3JTdHlsZSh0ZXN0Q29udHJvbGxlciwgc3R5bGVzLmlubGluZVN0eWxlKTsK
IAotICAgICAgICAgICAgSW5zcGVjdG9yQmFja2VuZC5nZXRTdHlsZXNGb3JOb2RlMihmcm9udGVu
ZF9ub2RlRm9ySWQoInRoZXRhYmxlIikuaWQsIHRhYmxlU3R5bGVzQ2FsbGJhY2suYmluZChudWxs
LCB0ZXN0Q29udHJvbGxlcikpOworICAgICAgICAgICAgSW5zcGVjdG9yQmFja2VuZC5nZXRTdHls
ZXNGb3JOb2RlKGZyb250ZW5kX25vZGVGb3JJZCgidGhldGFibGUiKS5pZCwgdGFibGVTdHlsZXND
YWxsYmFjay5iaW5kKG51bGwsIHRlc3RDb250cm9sbGVyKSk7CiAgICAgICAgIH0KIAotICAgICAg
ICBJbnNwZWN0b3JCYWNrZW5kLmdldFN0eWxlc0Zvck5vZGUyKFdlYkluc3BlY3Rvci5kb21BZ2Vu
dC5kb2N1bWVudC5ib2R5LmlkLCBzdHlsZXNDYWxsYmFjay5iaW5kKG51bGwsIHRlc3RDb250cm9s
bGVyKSk7CisgICAgICAgIEluc3BlY3RvckJhY2tlbmQuZ2V0U3R5bGVzRm9yTm9kZShXZWJJbnNw
ZWN0b3IuZG9tQWdlbnQuZG9jdW1lbnQuYm9keS5pZCwgc3R5bGVzQ2FsbGJhY2suYmluZChudWxs
LCB0ZXN0Q29udHJvbGxlcikpOwogICAgIH0pOwogfQogCkBAIC05Miw3ICs5Miw3IEBAIGJvZHkg
e1wKICAgICB7CiAgICAgICAgIHRlc3RDb250cm9sbGVyLnJlc3VsdHMucHVzaCgiIik7CiAgICAg
ICAgIHRlc3RDb250cm9sbGVyLnJlc3VsdHMucHVzaCgiPT09IExhc3Qgc3R5bGVzaGVldCBwYXRj
aGVkID09PSIpOwotICAgICAgICBJbnNwZWN0b3JCYWNrZW5kLnNldFN0eWxlU2hlZXRUZXh0Mihz
dHlsZVNoZWV0LnN0eWxlU2hlZXRJZCwgbmV3U3R5bGVTaGVldFRleHQsCisgICAgICAgIEluc3Bl
Y3RvckJhY2tlbmQuc2V0U3R5bGVTaGVldFRleHQoc3R5bGVTaGVldC5zdHlsZVNoZWV0SWQsIG5l
d1N0eWxlU2hlZXRUZXh0LAogICAgICAgICAgICAgZnJvbnRlbmRfbG9hZEFuZER1bXBTdHlsZVNo
ZWV0LmJpbmQobnVsbCwgdGVzdENvbnRyb2xsZXIsIHN0eWxlU2hlZXQuc3R5bGVTaGVldElkLCBm
cm9udGVuZF9jaGFuZ2VTZWxlY3Rvci5iaW5kKG51bGwsIHRlc3RDb250cm9sbGVyKSkpOwogICAg
IH0KIApAQCAtMTAzLDcgKzEwMyw3IEBAIGJvZHkge1wKICAgICAgICAgZm9yICh2YXIgaSA9IDA7
IGkgPCBpZHMubGVuZ3RoOyArK2kpCiAgICAgICAgICAgICBmcm9udGVuZF9sb2FkQW5kRHVtcFN0
eWxlU2hlZXQodGVzdENvbnRyb2xsZXIsIGlkc1tpXSwgKGkgPCBpZHMubGVuZ3RoIC0gMSkgPyBu
dWxsIDogcGF0Y2hTdHlsZVNoZWV0LmJpbmQobnVsbCwgdGVzdENvbnRyb2xsZXIpKTsKICAgICB9
Ci0gICAgSW5zcGVjdG9yQmFja2VuZC5nZXRBbGxTdHlsZXMyKHN0eWxlU2hlZXRJZHNMb2FkZWQu
YmluZChudWxsLCB0ZXN0Q29udHJvbGxlcikpOworICAgIEluc3BlY3RvckJhY2tlbmQuZ2V0QWxs
U3R5bGVzKHN0eWxlU2hlZXRJZHNMb2FkZWQuYmluZChudWxsLCB0ZXN0Q29udHJvbGxlcikpOwog
fQogCiBmdW5jdGlvbiBmcm9udGVuZF9jaGFuZ2VTZWxlY3Rvcih0ZXN0Q29udHJvbGxlciwgc3R5
bGVTaGVldCkKQEAgLTExNSw3ICsxMTUsNyBAQCBmdW5jdGlvbiBmcm9udGVuZF9jaGFuZ2VTZWxl
Y3Rvcih0ZXN0Q29udHJvbGxlciwgc3R5bGVTaGVldCkKICAgICAgICAgZnJvbnRlbmRfbG9hZEFu
ZER1bXBTdHlsZVNoZWV0KHRlc3RDb250cm9sbGVyLCBydWxlLnJ1bGVJZC5zdHlsZVNoZWV0SWQs
IGZyb250ZW5kX3NldFN0eWxlVGV4dC5iaW5kKG51bGwsIHRlc3RDb250cm9sbGVyKSk7CiAgICAg
fQogCi0gICAgSW5zcGVjdG9yQmFja2VuZC5zZXRSdWxlU2VsZWN0b3IyKHN0eWxlU2hlZXQucnVs
ZXNbMF0ucnVsZUlkLCAiaHRtbCAqLCBib2R5W2Zvbz1cImJhclwiXSIsIGRpZFNldFNlbGVjdG9y
LmJpbmQobnVsbCwgdGVzdENvbnRyb2xsZXIpKTsKKyAgICBJbnNwZWN0b3JCYWNrZW5kLnNldFJ1
bGVTZWxlY3RvcihzdHlsZVNoZWV0LnJ1bGVzWzBdLnJ1bGVJZCwgImh0bWwgKiwgYm9keVtmb289
XCJiYXJcIl0iLCBkaWRTZXRTZWxlY3Rvci5iaW5kKG51bGwsIHRlc3RDb250cm9sbGVyKSk7CiB9
CiAKIGZ1bmN0aW9uIGZyb250ZW5kX3NldFN0eWxlVGV4dCh0ZXN0Q29udHJvbGxlciwgc3R5bGVT
aGVldCkKQEAgLTEyNywxMiArMTI3LDEyIEBAIGZ1bmN0aW9uIGZyb250ZW5kX3NldFN0eWxlVGV4
dCh0ZXN0Q29udHJvbGxlciwgc3R5bGVTaGVldCkKICAgICAgICAgZnJvbnRlbmRfbG9hZEFuZER1
bXBTdHlsZVNoZWV0KHRlc3RDb250cm9sbGVyLCBzdHlsZS5zdHlsZUlkLnN0eWxlU2hlZXRJZCwg
ZnJvbnRlbmRfYWRkUnVsZS5iaW5kKG51bGwsIHRlc3RDb250cm9sbGVyKSk7CiAgICAgfQogCi0g
ICAgSW5zcGVjdG9yQmFja2VuZC5zZXRQcm9wZXJ0eVRleHQyKHN0eWxlU2hlZXQucnVsZXNbMF0u
c3R5bGUuc3R5bGVJZCwgMCwgIiIsIHRydWUpOwotICAgIEluc3BlY3RvckJhY2tlbmQuc2V0UHJv
cGVydHlUZXh0MihzdHlsZVNoZWV0LnJ1bGVzWzBdLnN0eWxlLnN0eWxlSWQsIDAsICIiLCB0cnVl
KTsKKyAgICBJbnNwZWN0b3JCYWNrZW5kLnNldFByb3BlcnR5VGV4dChzdHlsZVNoZWV0LnJ1bGVz
WzBdLnN0eWxlLnN0eWxlSWQsIDAsICIiLCB0cnVlKTsKKyAgICBJbnNwZWN0b3JCYWNrZW5kLnNl
dFByb3BlcnR5VGV4dChzdHlsZVNoZWV0LnJ1bGVzWzBdLnN0eWxlLnN0eWxlSWQsIDAsICIiLCB0
cnVlKTsKIAogICAgIC8vIFRoaXMgb3BlcmF0aW9uIHNob3VsZCBub3QgdXBkYXRlIHRoZSBzdHls
ZSBhcyB0aGUgbmV3IHByb3BlcnR5IHRleHQgaXMgbm90IHBhcnNhYmxlLgotICAgIEluc3BlY3Rv
ckJhY2tlbmQuc2V0UHJvcGVydHlUZXh0MihzdHlsZVNoZWV0LnJ1bGVzWzBdLnN0eWxlLnN0eWxl
SWQsIDAsICJ6eno7IiwgZmFsc2UpOwotICAgIEluc3BlY3RvckJhY2tlbmQuc2V0UHJvcGVydHlU
ZXh0MihzdHlsZVNoZWV0LnJ1bGVzWzBdLnN0eWxlLnN0eWxlSWQsIDAsICJjb2xvcjogd2hpdGU7
IGJhY2tncm91bmQ6IGJsYWNrOyIsIGZhbHNlLCBkaWRTZXRTdHlsZVRleHQuYmluZChudWxsLCB0
ZXN0Q29udHJvbGxlcikpOworICAgIEluc3BlY3RvckJhY2tlbmQuc2V0UHJvcGVydHlUZXh0KHN0
eWxlU2hlZXQucnVsZXNbMF0uc3R5bGUuc3R5bGVJZCwgMCwgInp6ejsiLCBmYWxzZSk7CisgICAg
SW5zcGVjdG9yQmFja2VuZC5zZXRQcm9wZXJ0eVRleHQoc3R5bGVTaGVldC5ydWxlc1swXS5zdHls
ZS5zdHlsZUlkLCAwLCAiY29sb3I6IHdoaXRlOyBiYWNrZ3JvdW5kOiBibGFjazsiLCBmYWxzZSwg
ZGlkU2V0U3R5bGVUZXh0LmJpbmQobnVsbCwgdGVzdENvbnRyb2xsZXIpKTsKIH0KIAogZnVuY3Rp
b24gZnJvbnRlbmRfYWRkUnVsZSh0ZXN0Q29udHJvbGxlcikKQEAgLTE0NywxNSArMTQ3LDE1IEBA
IGZ1bmN0aW9uIGZyb250ZW5kX2FkZFJ1bGUodGVzdENvbnRyb2xsZXIpCiAKICAgICBmdW5jdGlv
biBkaWRTZXRTdHlsZVRleHQodGVzdENvbnRyb2xsZXIsIHN0eWxlKQogICAgIHsKLSAgICAgICAg
SW5zcGVjdG9yQmFja2VuZC5nZXRTdHlsZXNGb3JOb2RlMihXZWJJbnNwZWN0b3IuZG9tQWdlbnQu
ZG9jdW1lbnQuYm9keS5pZCwgZGlkR2V0U3R5bGVzLmJpbmQobnVsbCwgdGVzdENvbnRyb2xsZXIp
KTsKKyAgICAgICAgSW5zcGVjdG9yQmFja2VuZC5nZXRTdHlsZXNGb3JOb2RlKFdlYkluc3BlY3Rv
ci5kb21BZ2VudC5kb2N1bWVudC5ib2R5LmlkLCBkaWRHZXRTdHlsZXMuYmluZChudWxsLCB0ZXN0
Q29udHJvbGxlcikpOwogICAgIH0KIAogICAgIGZ1bmN0aW9uIHJ1bGVBZGRlZCh0ZXN0Q29udHJv
bGxlciwgcnVsZSkKICAgICB7Ci0gICAgICAgIEluc3BlY3RvckJhY2tlbmQuc2V0UHJvcGVydHlU
ZXh0MihydWxlLnN0eWxlLnN0eWxlSWQsIDAsICJmb250LWZhbWlseTogc2VyaWY7IiwgZmFsc2Us
IGRpZFNldFN0eWxlVGV4dC5iaW5kKG51bGwsIHRlc3RDb250cm9sbGVyKSk7CisgICAgICAgIElu
c3BlY3RvckJhY2tlbmQuc2V0UHJvcGVydHlUZXh0KHJ1bGUuc3R5bGUuc3R5bGVJZCwgMCwgImZv
bnQtZmFtaWx5OiBzZXJpZjsiLCBmYWxzZSwgZGlkU2V0U3R5bGVUZXh0LmJpbmQobnVsbCwgdGVz
dENvbnRyb2xsZXIpKTsKICAgICB9CiAKLSAgICBJbnNwZWN0b3JCYWNrZW5kLmFkZFJ1bGUyKFdl
Ykluc3BlY3Rvci5kb21BZ2VudC5kb2N1bWVudC5ib2R5LmlkLCAiYm9keSIsIHJ1bGVBZGRlZC5i
aW5kKG51bGwsIHRlc3RDb250cm9sbGVyKSk7CisgICAgSW5zcGVjdG9yQmFja2VuZC5hZGRSdWxl
KFdlYkluc3BlY3Rvci5kb21BZ2VudC5kb2N1bWVudC5ib2R5LmlkLCAiYm9keSIsIHJ1bGVBZGRl
ZC5iaW5kKG51bGwsIHRlc3RDb250cm9sbGVyKSk7CiB9CiAKIGZ1bmN0aW9uIGZyb250ZW5kX2Rp
c2FibGVQcm9wZXJ0eSh0ZXN0Q29udHJvbGxlcikKQEAgLTE4MCwxMyArMTgwLDEzIEBAIGZ1bmN0
aW9uIGZyb250ZW5kX2Rpc2FibGVQcm9wZXJ0eSh0ZXN0Q29udHJvbGxlcikKICAgICAgICAgLy8g
Ym9yZGVyLXdpZHRoOiAwcHg7CiAKICAgICAgICAgdmFyIHN0eWxlID0gc3R5bGVzLm1hdGNoZWRD
U1NSdWxlc1sxXS5zdHlsZTsKLSAgICAgICAgSW5zcGVjdG9yQmFja2VuZC50b2dnbGVQcm9wZXJ0
eTIoc3R5bGUuc3R5bGVJZCwgMCwgdHJ1ZSk7IC8vIGhlaWdodDogMTAwJQotICAgICAgICBJbnNw
ZWN0b3JCYWNrZW5kLnRvZ2dsZVByb3BlcnR5MihzdHlsZS5zdHlsZUlkLCA3LCB0cnVlKTsgLy8g
Ym9yZGVyLXdpZHRoOiAwcHgKLSAgICAgICAgSW5zcGVjdG9yQmFja2VuZC5zZXRQcm9wZXJ0eVRl
eHQyKHN0eWxlLnN0eWxlSWQsIDcsICJmb250LXNpemU6IDEycHg7IiwgZmFsc2UpOwotICAgICAg
ICBJbnNwZWN0b3JCYWNrZW5kLnNldFByb3BlcnR5VGV4dDIoc3R5bGUuc3R5bGVJZCwgOSwgImZv
bnQtc2l6ZTogMTRweDsiLCBmYWxzZSk7Ci0gICAgICAgIEluc3BlY3RvckJhY2tlbmQudG9nZ2xl
UHJvcGVydHkyKHN0eWxlLnN0eWxlSWQsIDksIHRydWUpOyAvLyBmb250LXNpemU6IDE0cHgKLSAg
ICAgICAgSW5zcGVjdG9yQmFja2VuZC5zZXRQcm9wZXJ0eVRleHQyKHN0eWxlLnN0eWxlSWQsIDgs
ICJib3JkZXItd2lkdGg6IDFweDsiLCB0cnVlKTsKLSAgICAgICAgSW5zcGVjdG9yQmFja2VuZC50
b2dnbGVQcm9wZXJ0eTIoc3R5bGUuc3R5bGVJZCwgOCwgZmFsc2UpOyAvLyBib3JkZXItd2lkdGg6
IDFweAorICAgICAgICBJbnNwZWN0b3JCYWNrZW5kLnRvZ2dsZVByb3BlcnR5KHN0eWxlLnN0eWxl
SWQsIDAsIHRydWUpOyAvLyBoZWlnaHQ6IDEwMCUKKyAgICAgICAgSW5zcGVjdG9yQmFja2VuZC50
b2dnbGVQcm9wZXJ0eShzdHlsZS5zdHlsZUlkLCA3LCB0cnVlKTsgLy8gYm9yZGVyLXdpZHRoOiAw
cHgKKyAgICAgICAgSW5zcGVjdG9yQmFja2VuZC5zZXRQcm9wZXJ0eVRleHQoc3R5bGUuc3R5bGVJ
ZCwgNywgImZvbnQtc2l6ZTogMTJweDsiLCBmYWxzZSk7CisgICAgICAgIEluc3BlY3RvckJhY2tl
bmQuc2V0UHJvcGVydHlUZXh0KHN0eWxlLnN0eWxlSWQsIDksICJmb250LXNpemU6IDE0cHg7Iiwg
ZmFsc2UpOworICAgICAgICBJbnNwZWN0b3JCYWNrZW5kLnRvZ2dsZVByb3BlcnR5KHN0eWxlLnN0
eWxlSWQsIDksIHRydWUpOyAvLyBmb250LXNpemU6IDE0cHgKKyAgICAgICAgSW5zcGVjdG9yQmFj
a2VuZC5zZXRQcm9wZXJ0eVRleHQoc3R5bGUuc3R5bGVJZCwgOCwgImJvcmRlci13aWR0aDogMXB4
OyIsIHRydWUpOworICAgICAgICBJbnNwZWN0b3JCYWNrZW5kLnRvZ2dsZVByb3BlcnR5KHN0eWxl
LnN0eWxlSWQsIDgsIGZhbHNlKTsgLy8gYm9yZGVyLXdpZHRoOiAxcHgKICAgICAgICAgLy8gaGVp
Z2h0IDogMTAwJSA7IFtkXQogICAgICAgICAvLyBib3JkZXI6IDFweCBzb2xpZDsKICAgICAgICAg
Ly8gYm9yZGVyLXdpZHRoOiAycHg7CkBAIC0xOTgsMTEgKzE5OCwxMSBAQCBmdW5jdGlvbiBmcm9u
dGVuZF9kaXNhYmxlUHJvcGVydHkodGVzdENvbnRyb2xsZXIpCiAgICAgICAgIC8vIGJvcmRlci13
aWR0aDogMXB4OwogICAgICAgICAvLyBmb250LXNpemU6IDE0cHg7IFtkXQogCi0gICAgICAgIElu
c3BlY3RvckJhY2tlbmQuc2V0UHJvcGVydHlUZXh0MihzdHlsZS5zdHlsZUlkLCAzLCAiIiwgdHJ1
ZSwgZGlkRGlzYWJsZVByb3BlcnR5LmJpbmQobnVsbCwgdGVzdENvbnRyb2xsZXIpKTsKKyAgICAg
ICAgSW5zcGVjdG9yQmFja2VuZC5zZXRQcm9wZXJ0eVRleHQoc3R5bGUuc3R5bGVJZCwgMywgIiIs
IHRydWUsIGRpZERpc2FibGVQcm9wZXJ0eS5iaW5kKG51bGwsIHRlc3RDb250cm9sbGVyKSk7CiAg
ICAgfQogCiAgICAgdmFyIHRvZ2dsZUVsZW1lbnQgPSBmcm9udGVuZF9ub2RlRm9ySWQoInRvZ2ds
ZSIpOwotICAgIEluc3BlY3RvckJhY2tlbmQuZ2V0U3R5bGVzRm9yTm9kZTIodG9nZ2xlRWxlbWVu
dC5pZCwgc3R5bGVzQ2FsbGJhY2suYmluZChudWxsLCB0ZXN0Q29udHJvbGxlcikpOworICAgIElu
c3BlY3RvckJhY2tlbmQuZ2V0U3R5bGVzRm9yTm9kZSh0b2dnbGVFbGVtZW50LmlkLCBzdHlsZXND
YWxsYmFjay5iaW5kKG51bGwsIHRlc3RDb250cm9sbGVyKSk7CiB9CiAKIGZ1bmN0aW9uIGZyb250
ZW5kX2VuYWJsZVByb3BlcnR5KHRlc3RDb250cm9sbGVyLCBzdHlsZUlkKQpAQCAtMjE1LDggKzIx
NSw4IEBAIGZ1bmN0aW9uIGZyb250ZW5kX2VuYWJsZVByb3BlcnR5KHRlc3RDb250cm9sbGVyLCBz
dHlsZUlkKQogICAgICAgICB0ZXN0Q29udHJvbGxlci5ub3RpZnlEb25lKHRlc3RDb250cm9sbGVy
LnJlc3VsdHMpOwogICAgIH0KIAotICAgIEluc3BlY3RvckJhY2tlbmQudG9nZ2xlUHJvcGVydHky
KHN0eWxlSWQsIDYsIGZhbHNlKTsKLSAgICBJbnNwZWN0b3JCYWNrZW5kLnRvZ2dsZVByb3BlcnR5
MihzdHlsZUlkLCA4LCBmYWxzZSwgZGlkRW5hYmxlUHJvcGVydHkuYmluZChudWxsLCB0ZXN0Q29u
dHJvbGxlcikpOworICAgIEluc3BlY3RvckJhY2tlbmQudG9nZ2xlUHJvcGVydHkoc3R5bGVJZCwg
NiwgZmFsc2UpOworICAgIEluc3BlY3RvckJhY2tlbmQudG9nZ2xlUHJvcGVydHkoc3R5bGVJZCwg
OCwgZmFsc2UsIGRpZEVuYWJsZVByb3BlcnR5LmJpbmQobnVsbCwgdGVzdENvbnRyb2xsZXIpKTsK
IH0KIAogLy8gRGF0YSBkdW1waW5nCkBAIC0yNjAsMTggKzI2MCwxOCBAQCBmdW5jdGlvbiBmcm9u
dGVuZF9sb2FkQW5kRHVtcFN0eWxlU2hlZXQodGVzdENvbnRyb2xsZXIsIHN0eWxlU2hlZXRJZCwg
Y29udGludWF0aQogICAgICAgICAgICAgY29udGludWF0aW9uKHN0eWxlU2hlZXQpOwogICAgIH0K
IAotICAgIEluc3BlY3RvckJhY2tlbmQuZ2V0U3R5bGVTaGVldDIoc3R5bGVTaGVldElkLCBzdHls
ZVNoZWV0TG9hZGVkLmJpbmQobnVsbCwgdGVzdENvbnRyb2xsZXIpKTsKKyAgICBJbnNwZWN0b3JC
YWNrZW5kLmdldFN0eWxlU2hlZXQoc3R5bGVTaGVldElkLCBzdHlsZVNoZWV0TG9hZGVkLmJpbmQo
bnVsbCwgdGVzdENvbnRyb2xsZXIpKTsKIH0KIAogLyoKIENvdmVyZWQgQVBJIG1ldGhvZHM6Ci0g
LSBnZXRTdHlsZXNGb3JOb2RlMgotIC0gZ2V0QWxsU3R5bGVzMgotIC0gZ2V0U3R5bGVTaGVldDIK
LSAtIHNldFN0eWxlU2hlZXRUZXh0MgotIC0gc2V0U3R5bGVEYXRhMgotIC0gc2V0UnVsZVNlbGVj
dG9yMgotIC0gYWRkUnVsZTIKKyAtIGdldFN0eWxlc0Zvck5vZGUKKyAtIGdldEFsbFN0eWxlcwor
IC0gZ2V0U3R5bGVTaGVldAorIC0gc2V0U3R5bGVTaGVldFRleHQKKyAtIHNldFN0eWxlRGF0YQor
IC0gc2V0UnVsZVNlbGVjdG9yCisgLSBhZGRSdWxlCiAqLwogCiA8L3NjcmlwdD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9zdHlsZXMtc291cmNlLWxpbmVzLWlubGluZS5odG1s
IGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3N0eWxlcy1zb3VyY2UtbGluZXMtaW5saW5lLmh0bWwK
aW5kZXggZGNjOGEyMS4uNjVmNGU0YiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9y
L3N0eWxlcy1zb3VyY2UtbGluZXMtaW5saW5lLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVj
dG9yL3N0eWxlcy1zb3VyY2UtbGluZXMtaW5saW5lLmh0bWwKQEAgLTM2LDcgKzM2LDcgQEAgZnVu
Y3Rpb24gZnJvbnRlbmRfc2VsZWN0RWxlbWVudENvbnRpbnVhdGlvbih0ZXN0Q29udHJvbGxlcikK
ICAgICBmcm9udGVuZF9zZWxlY3RFbGVtZW50QW5kUnVuKHRlc3RDb250cm9sbGVyLCAiZm9vIiwg
ZnJvbnRlbmRfc2VsZWN0RWxlbWVudENvbnRpbnVhdGlvbjIpOwogfQogCi1mdW5jdGlvbiBmcm9u
dGVuZF9zZWxlY3RFbGVtZW50Q29udGludWF0aW9uMih0ZXN0Q29udHJvbGxlcikKK2Z1bmN0aW9u
IGZyb250ZW5kX3NlbGVjdEVsZW1lbnRDb250aW51YXRpb24odGVzdENvbnRyb2xsZXIpCiB7CiAg
ICAgdmFyIHJlc3VsdCA9IGZyb250ZW5kX2dldFNlbGVjdGVkRWxlbWVudFN0eWxlcyh0cnVlKTsK
ICAgICB0ZXN0Q29udHJvbGxlci5ub3RpZnlEb25lKHJlc3VsdCk7CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbnNwZWN0b3Ivc3R5bGVzLXNvdXJjZS1saW5lcy5odG1sIGIvTGF5b3V0VGVzdHMv
aW5zcGVjdG9yL3N0eWxlcy1zb3VyY2UtbGluZXMuaHRtbAppbmRleCBlYjVhZWYzLi4yM2ViZmFh
IDEwMDc1NQotLS0gYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3Ivc3R5bGVzLXNvdXJjZS1saW5lcy5o
dG1sCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9zdHlsZXMtc291cmNlLWxpbmVzLmh0bWwK
QEAgLTg3LDcgKzg3LDcgQEAgZnVuY3Rpb24gZnJvbnRlbmRfZ2V0UmF3U3R5bGVzKHRlc3RDb250
cm9sbGVyKQogICAgIHsKICAgICAgICAgdGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZShzdHlsZXMp
OwogICAgIH0KLSAgICBJbnNwZWN0b3JCYWNrZW5kLmdldFN0eWxlc0Zvck5vZGUyKFdlYkluc3Bl
Y3Rvci5kb21BZ2VudC5kb2N1bWVudC5ib2R5LmlkLCBjYWxsYmFjayk7CisgICAgSW5zcGVjdG9y
QmFja2VuZC5nZXRTdHlsZXNGb3JOb2RlKFdlYkluc3BlY3Rvci5kb21BZ2VudC5kb2N1bWVudC5i
b2R5LmlkLCBjYWxsYmFjayk7CiB9CiAKIDwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW5zcGVjdG9yL3N0eWxlcy1zb3VyY2Utb2Zmc2V0cy5odG1sIGIvTGF5b3V0VGVzdHMvaW5z
cGVjdG9yL3N0eWxlcy1zb3VyY2Utb2Zmc2V0cy5odG1sCmluZGV4IDE5NWNhNTUuLjkwYTcyM2Ug
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9zdHlsZXMtc291cmNlLW9mZnNldHMu
aHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3Ivc3R5bGVzLXNvdXJjZS1vZmZzZXRzLmh0
bWwKQEAgLTM3LDcgKzM3LDcgQEAgZnVuY3Rpb24gZnJvbnRlbmRfcnVuVGVzdCh0ZXN0Q29udHJv
bGxlcikKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGZyb250ZW5kX2R1bXBTdHlsZURhdGEo
dGVzdENvbnRyb2xsZXIsIHN0eWxlcy5pbmxpbmVTdHlsZSwgdHJ1ZSk7CiAgICAgICAgIH0KLSAg
ICAgICAgSW5zcGVjdG9yQmFja2VuZC5nZXRTdHlsZXNGb3JOb2RlMihXZWJJbnNwZWN0b3IuZG9t
QWdlbnQuZG9jdW1lbnQuYm9keS5pZCwgc3R5bGVzQ2FsbGJhY2suYmluZChudWxsLCB0ZXN0Q29u
dHJvbGxlcikpOworICAgICAgICBJbnNwZWN0b3JCYWNrZW5kLmdldFN0eWxlc0Zvck5vZGUoV2Vi
SW5zcGVjdG9yLmRvbUFnZW50LmRvY3VtZW50LmJvZHkuaWQsIHN0eWxlc0NhbGxiYWNrLmJpbmQo
bnVsbCwgdGVzdENvbnRyb2xsZXIpKTsKICAgICB9KTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDAwM2Yz
OTcuLmMwNTcyOTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9T
b3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsNSArMSw0MiBAQAogMjAxMS0wMi0wMSAgQWxl
eGFuZGVyIFBhdmxvdiAgPGFwYXZsb3ZAY2hyb21pdW0ub3JnPgogCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6IFJlbW92ZSB0aGUg
KjIgc3VmZml4IGZyb20gdGhlIENTUyBzdHlsZS1yZWxhdGVkIHByb3RvY29sIG1ldGhvZHMKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUzNDkyCisKKyAg
ICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yLmlkbDoKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5z
cGVjdG9yQ1NTQWdlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ1NTQWdlbnQ6
OmdldFN0eWxlc0Zvck5vZGUpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ1NTQWdlbnQ6
OmdldElubGluZVN0eWxlRm9yTm9kZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDU1NB
Z2VudDo6Z2V0Q29tcHV0ZWRTdHlsZUZvck5vZGUpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVj
dG9yQ1NTQWdlbnQ6OmdldEFsbFN0eWxlcyk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JD
U1NBZ2VudDo6Z2V0U3R5bGVTaGVldCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDU1NB
Z2VudDo6Z2V0U3R5bGVTaGVldFRleHQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ1NT
QWdlbnQ6OnNldFN0eWxlU2hlZXRUZXh0KToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNT
U0FnZW50OjpzZXRQcm9wZXJ0eVRleHQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ1NT
QWdlbnQ6OnRvZ2dsZVByb3BlcnR5KToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNTU0Fn
ZW50OjpzZXRSdWxlU2VsZWN0b3IpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ1NTQWdl
bnQ6OmFkZFJ1bGUpOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JDU1NBZ2VudC5oOgor
ICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvQXVkaXRSdWxlcy5qczoKKyAgICAgICAgKFdl
Ykluc3BlY3Rvci5BdWRpdFJ1bGVzLlVudXNlZENzc1J1bGUucHJvdG90eXBlLmRvUnVuKToKKyAg
ICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL0NTU1N0eWxlTW9kZWwuanM6CisgICAgICAgIChX
ZWJJbnNwZWN0b3IuQ1NTU3R5bGVNb2RlbC5wcm90b3R5cGUuZ2V0U3R5bGVzQXN5bmMpOgorICAg
ICAgICAoV2ViSW5zcGVjdG9yLkNTU1N0eWxlTW9kZWwucHJvdG90eXBlLmdldENvbXB1dGVkU3R5
bGVBc3luYyk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuQ1NTU3R5bGVNb2RlbC5wcm90b3R5cGUu
Z2V0SW5saW5lU3R5bGVBc3luYyk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuQ1NTU3R5bGVNb2Rl
bC5wcm90b3R5cGUuc2V0UnVsZVNlbGVjdG9yKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5DU1NT
dHlsZU1vZGVsLnByb3RvdHlwZS5hZGRSdWxlKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5DU1NT
dHlsZU1vZGVsLnByb3RvdHlwZS5fc3R5bGVTaGVldENoYW5nZWQpOgorICAgICAgICAoV2ViSW5z
cGVjdG9yLkNTU1N0eWxlTW9kZWwucHJvdG90eXBlLl9vblJldmVydCk6CisgICAgICAgIChXZWJJ
bnNwZWN0b3IuQ1NTU3R5bGVEZWNsYXJhdGlvbi5wcm90b3R5cGUuaW5zZXJ0UHJvcGVydHlBdCk6
CisgICAgICAgIChXZWJJbnNwZWN0b3IuQ1NTUHJvcGVydHkucHJvdG90eXBlLnNldFRleHQpOgor
ICAgICAgICAoV2ViSW5zcGVjdG9yLkNTU1Byb3BlcnR5LnByb3RvdHlwZS5zZXREaXNhYmxlZCk6
CisgICAgICAgIChXZWJJbnNwZWN0b3IuQ1NTU3R5bGVTaGVldC5jcmVhdGVGb3JJZCk6CisgICAg
ICAgIChXZWJJbnNwZWN0b3IuQ1NTU3R5bGVTaGVldC5wcm90b3R5cGUuc2V0VGV4dCk6CisKKzIw
MTEtMDItMDEgIEFsZXhhbmRlciBQYXZsb3YgIDxhcGF2bG92QGNocm9taXVtLm9yZz4KKwogICAg
ICAgICBSZXZpZXdlZCBieSBZdXJ5IFNlbWlraGF0c2t5LgogCiAgICAgICAgIFdlYiBJbnNwZWN0
b3I6IFtDaHJvbWl1bV0gV3JvbmdseSBsYWJlbGxlZCBjb250ZXh0LW1lbnUgaXRlbSBmb3IgbGlu
a3MgaW4gV2ViIEluc3BlY3RvcidzIHNpZGUtcGFuZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL0luc3BlY3Rvci5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5z
cGVjdG9yLmlkbAppbmRleCA5Nzk3Mjc0Li5jZDM4N2MzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvSW5zcGVjdG9yLmlkbApAQCAtMjA4LDE3ICsyMDgsMTcgQEAgbW9kdWxlIGNvcmUgewogICAg
ICAgICAvLyBDU1MgQVBJCiAgICAgICAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCiAKLSAgICAgICAgW2RvbWFp
bj1DU1NdIHZvaWQgZ2V0U3R5bGVzRm9yTm9kZTIoaW4gbG9uZyBub2RlSWQsIG91dCBWYWx1ZSBz
dHlsZXMpOwotICAgICAgICBbZG9tYWluPUNTU10gdm9pZCBnZXRDb21wdXRlZFN0eWxlRm9yTm9k
ZTIoaW4gbG9uZyBub2RlSWQsIG91dCBWYWx1ZSBzdHlsZSk7Ci0gICAgICAgIFtkb21haW49Q1NT
XSB2b2lkIGdldElubGluZVN0eWxlRm9yTm9kZTIoaW4gbG9uZyBub2RlSWQsIG91dCBWYWx1ZSBz
dHlsZSk7Ci0gICAgICAgIFtkb21haW49Q1NTXSB2b2lkIGdldEFsbFN0eWxlczIob3V0IEFycmF5
IHN0eWxlU2hlZXRJZHMpOwotICAgICAgICBbZG9tYWluPUNTU10gdm9pZCBnZXRTdHlsZVNoZWV0
MihpbiBTdHJpbmcgc3R5bGVTaGVldElkLCBvdXQgVmFsdWUgc3R5bGVTaGVldCk7Ci0gICAgICAg
IFtkb21haW49Q1NTXSB2b2lkIGdldFN0eWxlU2hlZXRUZXh0MihpbiBTdHJpbmcgc3R5bGVTaGVl
dElkLCBvdXQgU3RyaW5nIHVybCwgb3V0IFN0cmluZyB0ZXh0KTsKLSAgICAgICAgW2RvbWFpbj1D
U1NdIHZvaWQgc2V0U3R5bGVTaGVldFRleHQyKGluIFN0cmluZyBzdHlsZVNoZWV0SWQsIGluIFN0
cmluZyB0ZXh0LCBvdXQgYm9vbGVhbiBzdWNjZXNzKTsKLSAgICAgICAgW2RvbWFpbj1DU1NdIHZv
aWQgc2V0UHJvcGVydHlUZXh0MihpbiBPYmplY3Qgc3R5bGVJZCwgaW4gbG9uZyBwcm9wZXJ0eUlu
ZGV4LCBpbiBTdHJpbmcgdGV4dCwgaW4gYm9vbGVhbiBvdmVyd3JpdGUsIG91dCBWYWx1ZSBzdHls
ZSk7Ci0gICAgICAgIFtkb21haW49Q1NTXSB2b2lkIHRvZ2dsZVByb3BlcnR5MihpbiBPYmplY3Qg
c3R5bGVJZCwgaW4gbG9uZyBwcm9wZXJ0eUluZGV4LCBpbiBib29sZWFuIGRpc2FibGUsIG91dCBW
YWx1ZSBzdHlsZSk7Ci0gICAgICAgIFtkb21haW49Q1NTXSB2b2lkIHNldFJ1bGVTZWxlY3RvcjIo
aW4gT2JqZWN0IHJ1bGVJZCwgaW4gU3RyaW5nIHNlbGVjdG9yLCBvdXQgVmFsdWUgcnVsZSk7Ci0g
ICAgICAgIFtkb21haW49Q1NTXSB2b2lkIGFkZFJ1bGUyKGluIGxvbmcgY29udGV4dE5vZGVJZCwg
aW4gU3RyaW5nIHNlbGVjdG9yLCBvdXQgVmFsdWUgcnVsZSk7CisgICAgICAgIFtkb21haW49Q1NT
XSB2b2lkIGdldFN0eWxlc0Zvck5vZGUoaW4gbG9uZyBub2RlSWQsIG91dCBWYWx1ZSBzdHlsZXMp
OworICAgICAgICBbZG9tYWluPUNTU10gdm9pZCBnZXRDb21wdXRlZFN0eWxlRm9yTm9kZShpbiBs
b25nIG5vZGVJZCwgb3V0IFZhbHVlIHN0eWxlKTsKKyAgICAgICAgW2RvbWFpbj1DU1NdIHZvaWQg
Z2V0SW5saW5lU3R5bGVGb3JOb2RlKGluIGxvbmcgbm9kZUlkLCBvdXQgVmFsdWUgc3R5bGUpOwor
ICAgICAgICBbZG9tYWluPUNTU10gdm9pZCBnZXRBbGxTdHlsZXMob3V0IEFycmF5IHN0eWxlU2hl
ZXRJZHMpOworICAgICAgICBbZG9tYWluPUNTU10gdm9pZCBnZXRTdHlsZVNoZWV0KGluIFN0cmlu
ZyBzdHlsZVNoZWV0SWQsIG91dCBWYWx1ZSBzdHlsZVNoZWV0KTsKKyAgICAgICAgW2RvbWFpbj1D
U1NdIHZvaWQgZ2V0U3R5bGVTaGVldFRleHQoaW4gU3RyaW5nIHN0eWxlU2hlZXRJZCwgb3V0IFN0
cmluZyB1cmwsIG91dCBTdHJpbmcgdGV4dCk7CisgICAgICAgIFtkb21haW49Q1NTXSB2b2lkIHNl
dFN0eWxlU2hlZXRUZXh0KGluIFN0cmluZyBzdHlsZVNoZWV0SWQsIGluIFN0cmluZyB0ZXh0LCBv
dXQgYm9vbGVhbiBzdWNjZXNzKTsKKyAgICAgICAgW2RvbWFpbj1DU1NdIHZvaWQgc2V0UHJvcGVy
dHlUZXh0KGluIE9iamVjdCBzdHlsZUlkLCBpbiBsb25nIHByb3BlcnR5SW5kZXgsIGluIFN0cmlu
ZyB0ZXh0LCBpbiBib29sZWFuIG92ZXJ3cml0ZSwgb3V0IFZhbHVlIHN0eWxlKTsKKyAgICAgICAg
W2RvbWFpbj1DU1NdIHZvaWQgdG9nZ2xlUHJvcGVydHkoaW4gT2JqZWN0IHN0eWxlSWQsIGluIGxv
bmcgcHJvcGVydHlJbmRleCwgaW4gYm9vbGVhbiBkaXNhYmxlLCBvdXQgVmFsdWUgc3R5bGUpOwor
ICAgICAgICBbZG9tYWluPUNTU10gdm9pZCBzZXRSdWxlU2VsZWN0b3IoaW4gT2JqZWN0IHJ1bGVJ
ZCwgaW4gU3RyaW5nIHNlbGVjdG9yLCBvdXQgVmFsdWUgcnVsZSk7CisgICAgICAgIFtkb21haW49
Q1NTXSB2b2lkIGFkZFJ1bGUoaW4gbG9uZyBjb250ZXh0Tm9kZUlkLCBpbiBTdHJpbmcgc2VsZWN0
b3IsIG91dCBWYWx1ZSBydWxlKTsKICAgICAgICAgW2RvbWFpbj1DU1NdIHZvaWQgZ2V0U3VwcG9y
dGVkQ1NTUHJvcGVydGllcyhvdXQgQXJyYXkgY3NzUHJvcGVydGllcyk7CiAgICAgICAgIFtkb21h
aW49Q1NTXSB2b2lkIHF1ZXJ5U2VsZWN0b3JBbGwoaW4gbG9uZyBkb2N1bWVudElkLCBpbiBTdHJp
bmcgc2VsZWN0b3IsIG91dCBBcnJheSByZXN1bHQpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ1NTQWdlbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luc3BlY3RvckNTU0FnZW50LmNwcAppbmRleCBiYWNmNzQxLi45MTg0YjI0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ1NTQWdlbnQuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDU1NBZ2VudC5jcHAKQEAgLTE3
Myw3ICsxNzMsNyBAQCB2b2lkIEluc3BlY3RvckNTU0FnZW50OjpyZXNldCgpCiAgICAgbV9kb2N1
bWVudFRvSW5zcGVjdG9yU3R5bGVTaGVldC5jbGVhcigpOwogfQogCi12b2lkIEluc3BlY3RvckNT
U0FnZW50OjpnZXRTdHlsZXNGb3JOb2RlMihsb25nIG5vZGVJZCwgUmVmUHRyPEluc3BlY3RvclZh
bHVlPiogcmVzdWx0KQordm9pZCBJbnNwZWN0b3JDU1NBZ2VudDo6Z2V0U3R5bGVzRm9yTm9kZShs
b25nIG5vZGVJZCwgUmVmUHRyPEluc3BlY3RvclZhbHVlPiogcmVzdWx0KQogewogICAgIEVsZW1l
bnQqIGVsZW1lbnQgPSBlbGVtZW50Rm9ySWQobm9kZUlkKTsKICAgICBpZiAoIWVsZW1lbnQpCkBA
IC0yMjgsNyArMjI4LDcgQEAgdm9pZCBJbnNwZWN0b3JDU1NBZ2VudDo6Z2V0U3R5bGVzRm9yTm9k
ZTIobG9uZyBub2RlSWQsIFJlZlB0cjxJbnNwZWN0b3JWYWx1ZT4qIHIKICAgICAqcmVzdWx0ID0g
cmVzdWx0T2JqZWN0LnJlbGVhc2UoKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JDU1NBZ2VudDo6Z2V0
SW5saW5lU3R5bGVGb3JOb2RlMihsb25nIG5vZGVJZCwgUmVmUHRyPEluc3BlY3RvclZhbHVlPiog
c3R5bGUpCit2b2lkIEluc3BlY3RvckNTU0FnZW50OjpnZXRJbmxpbmVTdHlsZUZvck5vZGUobG9u
ZyBub2RlSWQsIFJlZlB0cjxJbnNwZWN0b3JWYWx1ZT4qIHN0eWxlKQogewogICAgIEVsZW1lbnQq
IGVsZW1lbnQgPSBlbGVtZW50Rm9ySWQobm9kZUlkKTsKICAgICBpZiAoIWVsZW1lbnQpCkBAIC0y
NDEsNyArMjQxLDcgQEAgdm9pZCBJbnNwZWN0b3JDU1NBZ2VudDo6Z2V0SW5saW5lU3R5bGVGb3JO
b2RlMihsb25nIG5vZGVJZCwgUmVmUHRyPEluc3BlY3RvclZhbHUKICAgICAqc3R5bGUgPSBzdHls
ZVNoZWV0LT5idWlsZE9iamVjdEZvclN0eWxlKGVsZW1lbnQtPnN0eWxlKCkpOwogfQogCi12b2lk
IEluc3BlY3RvckNTU0FnZW50OjpnZXRDb21wdXRlZFN0eWxlRm9yTm9kZTIobG9uZyBub2RlSWQs
IFJlZlB0cjxJbnNwZWN0b3JWYWx1ZT4qIHN0eWxlKQordm9pZCBJbnNwZWN0b3JDU1NBZ2VudDo6
Z2V0Q29tcHV0ZWRTdHlsZUZvck5vZGUobG9uZyBub2RlSWQsIFJlZlB0cjxJbnNwZWN0b3JWYWx1
ZT4qIHN0eWxlKQogewogICAgIEVsZW1lbnQqIGVsZW1lbnQgPSBlbGVtZW50Rm9ySWQobm9kZUlk
KTsKICAgICBpZiAoIWVsZW1lbnQpCkBAIC0yNTIsNyArMjUyLDcgQEAgdm9pZCBJbnNwZWN0b3JD
U1NBZ2VudDo6Z2V0Q29tcHV0ZWRTdHlsZUZvck5vZGUyKGxvbmcgbm9kZUlkLCBSZWZQdHI8SW5z
cGVjdG9yVmEKICAgICAqc3R5bGUgPSBpbnNwZWN0b3JTdHlsZS0+YnVpbGRPYmplY3RGb3JTdHls
ZSgpOwogfQogCi12b2lkIEluc3BlY3RvckNTU0FnZW50OjpnZXRBbGxTdHlsZXMyKFJlZlB0cjxJ
bnNwZWN0b3JBcnJheT4qIHN0eWxlcykKK3ZvaWQgSW5zcGVjdG9yQ1NTQWdlbnQ6OmdldEFsbFN0
eWxlcyhSZWZQdHI8SW5zcGVjdG9yQXJyYXk+KiBzdHlsZXMpCiB7CiAgICAgY29uc3QgTGlzdEhh
c2hTZXQ8UmVmUHRyPERvY3VtZW50PiA+JiBkb2N1bWVudHMgPSBtX2RvbUFnZW50LT5kb2N1bWVu
dHMoKTsKICAgICBmb3IgKExpc3RIYXNoU2V0PFJlZlB0cjxEb2N1bWVudD4gPjo6Y29uc3RfaXRl
cmF0b3IgaXQgPSBkb2N1bWVudHMuYmVnaW4oKTsgaXQgIT0gZG9jdW1lbnRzLmVuZCgpOyArK2l0
KSB7CkBAIC0yNjcsNyArMjY3LDcgQEAgdm9pZCBJbnNwZWN0b3JDU1NBZ2VudDo6Z2V0QWxsU3R5
bGVzMihSZWZQdHI8SW5zcGVjdG9yQXJyYXk+KiBzdHlsZXMpCiAgICAgfQogfQogCi12b2lkIElu
c3BlY3RvckNTU0FnZW50OjpnZXRTdHlsZVNoZWV0Mihjb25zdCBTdHJpbmcmIHN0eWxlU2hlZXRJ
ZCwgUmVmUHRyPEluc3BlY3RvclZhbHVlPiogc3R5bGVTaGVldE9iamVjdCkKK3ZvaWQgSW5zcGVj
dG9yQ1NTQWdlbnQ6OmdldFN0eWxlU2hlZXQoY29uc3QgU3RyaW5nJiBzdHlsZVNoZWV0SWQsIFJl
ZlB0cjxJbnNwZWN0b3JWYWx1ZT4qIHN0eWxlU2hlZXRPYmplY3QpCiB7CiAgICAgSW5zcGVjdG9y
U3R5bGVTaGVldCogaW5zcGVjdG9yU3R5bGVTaGVldCA9IHN0eWxlU2hlZXRGb3JJZChzdHlsZVNo
ZWV0SWQpOwogICAgIGlmICghaW5zcGVjdG9yU3R5bGVTaGVldCkKQEAgLTI3Niw3ICsyNzYsNyBA
QCB2b2lkIEluc3BlY3RvckNTU0FnZW50OjpnZXRTdHlsZVNoZWV0Mihjb25zdCBTdHJpbmcmIHN0
eWxlU2hlZXRJZCwgUmVmUHRyPEluc3BlYwogICAgICpzdHlsZVNoZWV0T2JqZWN0ID0gaW5zcGVj
dG9yU3R5bGVTaGVldC0+YnVpbGRPYmplY3RGb3JTdHlsZVNoZWV0KCk7CiB9CiAKLXZvaWQgSW5z
cGVjdG9yQ1NTQWdlbnQ6OmdldFN0eWxlU2hlZXRUZXh0Mihjb25zdCBTdHJpbmcmIHN0eWxlU2hl
ZXRJZCwgU3RyaW5nKiB1cmwsIFN0cmluZyogcmVzdWx0KQordm9pZCBJbnNwZWN0b3JDU1NBZ2Vu
dDo6Z2V0U3R5bGVTaGVldFRleHQoY29uc3QgU3RyaW5nJiBzdHlsZVNoZWV0SWQsIFN0cmluZyog
dXJsLCBTdHJpbmcqIHJlc3VsdCkKIHsKICAgICBJbnNwZWN0b3JTdHlsZVNoZWV0KiBpbnNwZWN0
b3JTdHlsZVNoZWV0ID0gc3R5bGVTaGVldEZvcklkKHN0eWxlU2hlZXRJZCk7CiAgICAgaWYgKCFp
bnNwZWN0b3JTdHlsZVNoZWV0KQpAQCAtMjg1LDcgKzI4NSw3IEBAIHZvaWQgSW5zcGVjdG9yQ1NT
QWdlbnQ6OmdldFN0eWxlU2hlZXRUZXh0Mihjb25zdCBTdHJpbmcmIHN0eWxlU2hlZXRJZCwgU3Ry
aW5nKiB1CiAgICAgaW5zcGVjdG9yU3R5bGVTaGVldC0+dGV4dChyZXN1bHQpOwogfQogCi12b2lk
IEluc3BlY3RvckNTU0FnZW50OjpzZXRTdHlsZVNoZWV0VGV4dDIoY29uc3QgU3RyaW5nJiBzdHls
ZVNoZWV0SWQsIGNvbnN0IFN0cmluZyYgdGV4dCwgYm9vbCogc3VjY2VzcykKK3ZvaWQgSW5zcGVj
dG9yQ1NTQWdlbnQ6OnNldFN0eWxlU2hlZXRUZXh0KGNvbnN0IFN0cmluZyYgc3R5bGVTaGVldElk
LCBjb25zdCBTdHJpbmcmIHRleHQsIGJvb2wqIHN1Y2Nlc3MpCiB7CiAgICAgSW5zcGVjdG9yU3R5
bGVTaGVldCogaW5zcGVjdG9yU3R5bGVTaGVldCA9IHN0eWxlU2hlZXRGb3JJZChzdHlsZVNoZWV0
SWQpOwogICAgIGlmICghaW5zcGVjdG9yU3R5bGVTaGVldCkgewpAQCAtMjk4LDcgKzI5OCw3IEBA
IHZvaWQgSW5zcGVjdG9yQ1NTQWdlbnQ6OnNldFN0eWxlU2hlZXRUZXh0Mihjb25zdCBTdHJpbmcm
IHN0eWxlU2hlZXRJZCwgY29uc3QgU3RyCiAgICAgICAgIGluc3BlY3RvclN0eWxlU2hlZXQtPnJl
cGFyc2VTdHlsZVNoZWV0KHRleHQpOwogfQogCi12b2lkIEluc3BlY3RvckNTU0FnZW50OjpzZXRQ
cm9wZXJ0eVRleHQyKGNvbnN0IFJlZlB0cjxJbnNwZWN0b3JPYmplY3Q+JiBmdWxsU3R5bGVJZCwg
bG9uZyBwcm9wZXJ0eUluZGV4LCBjb25zdCBTdHJpbmcmIHRleHQsIGJvb2wgb3ZlcndyaXRlLCBS
ZWZQdHI8SW5zcGVjdG9yVmFsdWU+KiByZXN1bHQpCit2b2lkIEluc3BlY3RvckNTU0FnZW50Ojpz
ZXRQcm9wZXJ0eVRleHQoY29uc3QgUmVmUHRyPEluc3BlY3Rvck9iamVjdD4mIGZ1bGxTdHlsZUlk
LCBsb25nIHByb3BlcnR5SW5kZXgsIGNvbnN0IFN0cmluZyYgdGV4dCwgYm9vbCBvdmVyd3JpdGUs
IFJlZlB0cjxJbnNwZWN0b3JWYWx1ZT4qIHJlc3VsdCkKIHsKICAgICBJbnNwZWN0b3JDU1NJZCBj
b21wb3VuZElkKGZ1bGxTdHlsZUlkKTsKICAgICBBU1NFUlQoIWNvbXBvdW5kSWQuaXNFbXB0eSgp
KTsKQEAgLTMxMiw3ICszMTIsNyBAQCB2b2lkIEluc3BlY3RvckNTU0FnZW50OjpzZXRQcm9wZXJ0
eVRleHQyKGNvbnN0IFJlZlB0cjxJbnNwZWN0b3JPYmplY3Q+JiBmdWxsU3R5bAogICAgICAgICAq
cmVzdWx0ID0gaW5zcGVjdG9yU3R5bGVTaGVldC0+YnVpbGRPYmplY3RGb3JTdHlsZShpbnNwZWN0
b3JTdHlsZVNoZWV0LT5zdHlsZUZvcklkKGNvbXBvdW5kSWQpKTsKIH0KIAotdm9pZCBJbnNwZWN0
b3JDU1NBZ2VudDo6dG9nZ2xlUHJvcGVydHkyKGNvbnN0IFJlZlB0cjxJbnNwZWN0b3JPYmplY3Q+
JiBmdWxsU3R5bGVJZCwgbG9uZyBwcm9wZXJ0eUluZGV4LCBib29sIGRpc2FibGUsIFJlZlB0cjxJ
bnNwZWN0b3JWYWx1ZT4qIHJlc3VsdCkKK3ZvaWQgSW5zcGVjdG9yQ1NTQWdlbnQ6OnRvZ2dsZVBy
b3BlcnR5KGNvbnN0IFJlZlB0cjxJbnNwZWN0b3JPYmplY3Q+JiBmdWxsU3R5bGVJZCwgbG9uZyBw
cm9wZXJ0eUluZGV4LCBib29sIGRpc2FibGUsIFJlZlB0cjxJbnNwZWN0b3JWYWx1ZT4qIHJlc3Vs
dCkKIHsKICAgICBJbnNwZWN0b3JDU1NJZCBjb21wb3VuZElkKGZ1bGxTdHlsZUlkKTsKICAgICBB
U1NFUlQoIWNvbXBvdW5kSWQuaXNFbXB0eSgpKTsKQEAgLTMyNiw3ICszMjYsNyBAQCB2b2lkIElu
c3BlY3RvckNTU0FnZW50Ojp0b2dnbGVQcm9wZXJ0eTIoY29uc3QgUmVmUHRyPEluc3BlY3Rvck9i
amVjdD4mIGZ1bGxTdHlsZQogICAgICAgICAqcmVzdWx0ID0gaW5zcGVjdG9yU3R5bGVTaGVldC0+
YnVpbGRPYmplY3RGb3JTdHlsZShpbnNwZWN0b3JTdHlsZVNoZWV0LT5zdHlsZUZvcklkKGNvbXBv
dW5kSWQpKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JDU1NBZ2VudDo6c2V0UnVsZVNlbGVjdG9yMihj
b25zdCBSZWZQdHI8SW5zcGVjdG9yT2JqZWN0PiYgZnVsbFJ1bGVJZCwgY29uc3QgU3RyaW5nJiBz
ZWxlY3RvciwgUmVmUHRyPEluc3BlY3RvclZhbHVlPiogcmVzdWx0KQordm9pZCBJbnNwZWN0b3JD
U1NBZ2VudDo6c2V0UnVsZVNlbGVjdG9yKGNvbnN0IFJlZlB0cjxJbnNwZWN0b3JPYmplY3Q+JiBm
dWxsUnVsZUlkLCBjb25zdCBTdHJpbmcmIHNlbGVjdG9yLCBSZWZQdHI8SW5zcGVjdG9yVmFsdWU+
KiByZXN1bHQpCiB7CiAgICAgSW5zcGVjdG9yQ1NTSWQgY29tcG91bmRJZChmdWxsUnVsZUlkKTsK
ICAgICBBU1NFUlQoIWNvbXBvdW5kSWQuaXNFbXB0eSgpKTsKQEAgLTM0Miw3ICszNDIsNyBAQCB2
b2lkIEluc3BlY3RvckNTU0FnZW50OjpzZXRSdWxlU2VsZWN0b3IyKGNvbnN0IFJlZlB0cjxJbnNw
ZWN0b3JPYmplY3Q+JiBmdWxsUnVsZQogICAgICpyZXN1bHQgPSBpbnNwZWN0b3JTdHlsZVNoZWV0
LT5idWlsZE9iamVjdEZvclJ1bGUoaW5zcGVjdG9yU3R5bGVTaGVldC0+cnVsZUZvcklkKGNvbXBv
dW5kSWQpKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JDU1NBZ2VudDo6YWRkUnVsZTIoY29uc3QgbG9u
ZyBjb250ZXh0Tm9kZUlkLCBjb25zdCBTdHJpbmcmIHNlbGVjdG9yLCBSZWZQdHI8SW5zcGVjdG9y
VmFsdWU+KiByZXN1bHQpCit2b2lkIEluc3BlY3RvckNTU0FnZW50OjphZGRSdWxlKGNvbnN0IGxv
bmcgY29udGV4dE5vZGVJZCwgY29uc3QgU3RyaW5nJiBzZWxlY3RvciwgUmVmUHRyPEluc3BlY3Rv
clZhbHVlPiogcmVzdWx0KQogewogICAgIE5vZGUqIG5vZGUgPSBtX2RvbUFnZW50LT5ub2RlRm9y
SWQoY29udGV4dE5vZGVJZCk7CiAgICAgaWYgKCFub2RlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNTU0FnZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9pbnNw
ZWN0b3IvSW5zcGVjdG9yQ1NTQWdlbnQuaAppbmRleCA2MTlmOTU4Li4xMmIzZjliIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ1NTQWdlbnQuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ1NTQWdlbnQuaApAQCAtNjEsMTcgKzYx
LDE3IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldERPTUFnZW50KEluc3BlY3RvckRPTUFnZW50KiBk
b21BZ2VudCk7CiAKICAgICB2b2lkIHJlc2V0KCk7Ci0gICAgdm9pZCBnZXRTdHlsZXNGb3JOb2Rl
Mihsb25nIG5vZGVJZCwgUmVmUHRyPEluc3BlY3RvclZhbHVlPiogcmVzdWx0KTsKLSAgICB2b2lk
IGdldElubGluZVN0eWxlRm9yTm9kZTIobG9uZyBub2RlSWQsIFJlZlB0cjxJbnNwZWN0b3JWYWx1
ZT4qIHN0eWxlKTsKLSAgICB2b2lkIGdldENvbXB1dGVkU3R5bGVGb3JOb2RlMihsb25nIG5vZGVJ
ZCwgUmVmUHRyPEluc3BlY3RvclZhbHVlPiogc3R5bGUpOwotICAgIHZvaWQgZ2V0QWxsU3R5bGVz
MihSZWZQdHI8SW5zcGVjdG9yQXJyYXk+KiBzdHlsZXMpOwotICAgIHZvaWQgZ2V0U3R5bGVTaGVl
dDIoY29uc3QgU3RyaW5nJiBzdHlsZVNoZWV0SWQsIFJlZlB0cjxJbnNwZWN0b3JWYWx1ZT4qIHJl
c3VsdCk7Ci0gICAgdm9pZCBnZXRTdHlsZVNoZWV0VGV4dDIoY29uc3QgU3RyaW5nJiBzdHlsZVNo
ZWV0SWQsIFN0cmluZyogdXJsLCBTdHJpbmcqIHJlc3VsdCk7Ci0gICAgdm9pZCBzZXRTdHlsZVNo
ZWV0VGV4dDIoY29uc3QgU3RyaW5nJiBzdHlsZVNoZWV0SWQsIGNvbnN0IFN0cmluZyYgdGV4dCwg
Ym9vbCogc3VjY2Vzcyk7Ci0gICAgdm9pZCBzZXRQcm9wZXJ0eVRleHQyKGNvbnN0IFJlZlB0cjxJ
bnNwZWN0b3JPYmplY3Q+JiBzdHlsZUlkLCBsb25nIHByb3BlcnR5SW5kZXgsIGNvbnN0IFN0cmlu
ZyYgdGV4dCwgYm9vbCBvdmVyd3JpdGUsIFJlZlB0cjxJbnNwZWN0b3JWYWx1ZT4qIHJlc3VsdCk7
Ci0gICAgdm9pZCB0b2dnbGVQcm9wZXJ0eTIoY29uc3QgUmVmUHRyPEluc3BlY3Rvck9iamVjdD4m
IHN0eWxlSWQsIGxvbmcgcHJvcGVydHlJbmRleCwgYm9vbCBkaXNhYmxlLCBSZWZQdHI8SW5zcGVj
dG9yVmFsdWU+KiByZXN1bHQpOwotICAgIHZvaWQgc2V0UnVsZVNlbGVjdG9yMihjb25zdCBSZWZQ
dHI8SW5zcGVjdG9yT2JqZWN0PiYgcnVsZUlkLCBjb25zdCBTdHJpbmcmIHNlbGVjdG9yLCBSZWZQ
dHI8SW5zcGVjdG9yVmFsdWU+KiByZXN1bHQpOwotICAgIHZvaWQgYWRkUnVsZTIoY29uc3QgbG9u
ZyBjb250ZXh0Tm9kZUlkLCBjb25zdCBTdHJpbmcmIHNlbGVjdG9yLCBSZWZQdHI8SW5zcGVjdG9y
VmFsdWU+KiByZXN1bHQpOworICAgIHZvaWQgZ2V0U3R5bGVzRm9yTm9kZShsb25nIG5vZGVJZCwg
UmVmUHRyPEluc3BlY3RvclZhbHVlPiogcmVzdWx0KTsKKyAgICB2b2lkIGdldElubGluZVN0eWxl
Rm9yTm9kZShsb25nIG5vZGVJZCwgUmVmUHRyPEluc3BlY3RvclZhbHVlPiogc3R5bGUpOworICAg
IHZvaWQgZ2V0Q29tcHV0ZWRTdHlsZUZvck5vZGUobG9uZyBub2RlSWQsIFJlZlB0cjxJbnNwZWN0
b3JWYWx1ZT4qIHN0eWxlKTsKKyAgICB2b2lkIGdldEFsbFN0eWxlcyhSZWZQdHI8SW5zcGVjdG9y
QXJyYXk+KiBzdHlsZXMpOworICAgIHZvaWQgZ2V0U3R5bGVTaGVldChjb25zdCBTdHJpbmcmIHN0
eWxlU2hlZXRJZCwgUmVmUHRyPEluc3BlY3RvclZhbHVlPiogcmVzdWx0KTsKKyAgICB2b2lkIGdl
dFN0eWxlU2hlZXRUZXh0KGNvbnN0IFN0cmluZyYgc3R5bGVTaGVldElkLCBTdHJpbmcqIHVybCwg
U3RyaW5nKiByZXN1bHQpOworICAgIHZvaWQgc2V0U3R5bGVTaGVldFRleHQoY29uc3QgU3RyaW5n
JiBzdHlsZVNoZWV0SWQsIGNvbnN0IFN0cmluZyYgdGV4dCwgYm9vbCogc3VjY2Vzcyk7CisgICAg
dm9pZCBzZXRQcm9wZXJ0eVRleHQoY29uc3QgUmVmUHRyPEluc3BlY3Rvck9iamVjdD4mIHN0eWxl
SWQsIGxvbmcgcHJvcGVydHlJbmRleCwgY29uc3QgU3RyaW5nJiB0ZXh0LCBib29sIG92ZXJ3cml0
ZSwgUmVmUHRyPEluc3BlY3RvclZhbHVlPiogcmVzdWx0KTsKKyAgICB2b2lkIHRvZ2dsZVByb3Bl
cnR5KGNvbnN0IFJlZlB0cjxJbnNwZWN0b3JPYmplY3Q+JiBzdHlsZUlkLCBsb25nIHByb3BlcnR5
SW5kZXgsIGJvb2wgZGlzYWJsZSwgUmVmUHRyPEluc3BlY3RvclZhbHVlPiogcmVzdWx0KTsKKyAg
ICB2b2lkIHNldFJ1bGVTZWxlY3Rvcihjb25zdCBSZWZQdHI8SW5zcGVjdG9yT2JqZWN0PiYgcnVs
ZUlkLCBjb25zdCBTdHJpbmcmIHNlbGVjdG9yLCBSZWZQdHI8SW5zcGVjdG9yVmFsdWU+KiByZXN1
bHQpOworICAgIHZvaWQgYWRkUnVsZShjb25zdCBsb25nIGNvbnRleHROb2RlSWQsIGNvbnN0IFN0
cmluZyYgc2VsZWN0b3IsIFJlZlB0cjxJbnNwZWN0b3JWYWx1ZT4qIHJlc3VsdCk7CiAgICAgdm9p
ZCBnZXRTdXBwb3J0ZWRDU1NQcm9wZXJ0aWVzKFJlZlB0cjxJbnNwZWN0b3JBcnJheT4qIHJlc3Vs
dCk7CiAgICAgdm9pZCBxdWVyeVNlbGVjdG9yQWxsKGNvbnN0IGxvbmcgbm9kZUlkLCBjb25zdCBT
dHJpbmcmIHNlbGVjdG9yLCBSZWZQdHI8SW5zcGVjdG9yQXJyYXk+KiByZXN1bHQpOwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0F1ZGl0UnVsZXMuanMg
Yi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0F1ZGl0UnVsZXMuanMKaW5kZXgg
MDlhMWZkNy4uYzEyMmJhNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zy
b250LWVuZC9BdWRpdFJ1bGVzLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9u
dC1lbmQvQXVkaXRSdWxlcy5qcwpAQCAtMzgzLDcgKzM4Myw3IEBAIFdlYkluc3BlY3Rvci5BdWRp
dFJ1bGVzLlVudXNlZENzc1J1bGUucHJvdG90eXBlID0gewogICAgICAgICAgICAgICAgIFdlYklu
c3BlY3Rvci5DU1NTdHlsZVNoZWV0LmNyZWF0ZUZvcklkKHN0eWxlU2hlZXRJZHNbaV0sIHN0eWxl
U2hlZXRDYWxsYmFjay5iaW5kKG51bGwsIHN0eWxlU2hlZXRzLCBpID09IHN0eWxlU2hlZXRJZHMu
bGVuZ3RoIC0gMSA/IGV2YWxDYWxsYmFjayA6IG51bGwpKTsKICAgICAgICAgfQogCi0gICAgICAg
IEluc3BlY3RvckJhY2tlbmQuZ2V0QWxsU3R5bGVzMihhbGxTdHlsZXNDYWxsYmFjayk7CisgICAg
ICAgIEluc3BlY3RvckJhY2tlbmQuZ2V0QWxsU3R5bGVzKGFsbFN0eWxlc0NhbGxiYWNrKTsKICAg
ICB9CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQv
Q1NTU3R5bGVNb2RlbC5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvQ1NT
U3R5bGVNb2RlbC5qcwppbmRleCBkN2I5NTc2Li42OWJkN2E5IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0NTU1N0eWxlTW9kZWwuanMKKysrIGIvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9DU1NTdHlsZU1vZGVsLmpzCkBAIC04Myw3ICs4
Myw3IEBAIFdlYkluc3BlY3Rvci5DU1NTdHlsZU1vZGVsLnByb3RvdHlwZSA9IHsKICAgICAgICAg
ICAgICAgICB1c2VyQ2FsbGJhY2socmVzdWx0KTsKICAgICAgICAgfQogCi0gICAgICAgIEluc3Bl
Y3RvckJhY2tlbmQuZ2V0U3R5bGVzRm9yTm9kZTIobm9kZUlkLCBjYWxsYmFjay5iaW5kKG51bGws
IHVzZXJDYWxsYmFjaykpOworICAgICAgICBJbnNwZWN0b3JCYWNrZW5kLmdldFN0eWxlc0Zvck5v
ZGUobm9kZUlkLCBjYWxsYmFjay5iaW5kKG51bGwsIHVzZXJDYWxsYmFjaykpOwogICAgIH0sCiAK
ICAgICBnZXRDb21wdXRlZFN0eWxlQXN5bmM6IGZ1bmN0aW9uKG5vZGVJZCwgdXNlckNhbGxiYWNr
KQpAQCAtOTYsNyArOTYsNyBAQCBXZWJJbnNwZWN0b3IuQ1NTU3R5bGVNb2RlbC5wcm90b3R5cGUg
PSB7CiAgICAgICAgICAgICAgICAgdXNlckNhbGxiYWNrKFdlYkluc3BlY3Rvci5DU1NTdHlsZURl
Y2xhcmF0aW9uLnBhcnNlUGF5bG9hZChzdHlsZVBheWxvYWQpKTsKICAgICAgICAgfQogCi0gICAg
ICAgIEluc3BlY3RvckJhY2tlbmQuZ2V0Q29tcHV0ZWRTdHlsZUZvck5vZGUyKG5vZGVJZCwgY2Fs
bGJhY2suYmluZChudWxsLCB1c2VyQ2FsbGJhY2spKTsKKyAgICAgICAgSW5zcGVjdG9yQmFja2Vu
ZC5nZXRDb21wdXRlZFN0eWxlRm9yTm9kZShub2RlSWQsIGNhbGxiYWNrLmJpbmQobnVsbCwgdXNl
ckNhbGxiYWNrKSk7CiAgICAgfSwKIAogICAgIGdldElubGluZVN0eWxlQXN5bmM6IGZ1bmN0aW9u
KG5vZGVJZCwgdXNlckNhbGxiYWNrKQpAQCAtMTA5LDcgKzEwOSw3IEBAIFdlYkluc3BlY3Rvci5D
U1NTdHlsZU1vZGVsLnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgICAgICB1c2VyQ2FsbGJhY2so
V2ViSW5zcGVjdG9yLkNTU1N0eWxlRGVjbGFyYXRpb24ucGFyc2VQYXlsb2FkKHN0eWxlUGF5bG9h
ZCkpOwogICAgICAgICB9CiAKLSAgICAgICAgSW5zcGVjdG9yQmFja2VuZC5nZXRJbmxpbmVTdHls
ZUZvck5vZGUyKG5vZGVJZCwgY2FsbGJhY2suYmluZChudWxsLCB1c2VyQ2FsbGJhY2spKTsKKyAg
ICAgICAgSW5zcGVjdG9yQmFja2VuZC5nZXRJbmxpbmVTdHlsZUZvck5vZGUobm9kZUlkLCBjYWxs
YmFjay5iaW5kKG51bGwsIHVzZXJDYWxsYmFjaykpOwogICAgIH0sCiAKICAgICBzZXRSdWxlU2Vs
ZWN0b3I6IGZ1bmN0aW9uKHJ1bGVJZCwgbm9kZUlkLCBuZXdTZWxlY3Rvciwgc3VjY2Vzc0NhbGxi
YWNrLCBmYWlsdXJlQ2FsbGJhY2spCkBAIC0xMzAsNyArMTMwLDcgQEAgV2ViSW5zcGVjdG9yLkNT
U1N0eWxlTW9kZWwucHJvdG90eXBlID0gewogICAgICAgICAgICAgICAgIEluc3BlY3RvckJhY2tl
bmQucXVlcnlTZWxlY3RvckFsbChub2RlSWQsIG5ld1NlbGVjdG9yLCBjaGVja0FmZmVjdHNDYWxs
YmFjay5iaW5kKHRoaXMsIG5vZGVJZCwgc3VjY2Vzc0NhbGxiYWNrLCBydWxlUGF5bG9hZCkpOwog
ICAgICAgICB9CiAKLSAgICAgICAgSW5zcGVjdG9yQmFja2VuZC5zZXRSdWxlU2VsZWN0b3IyKHJ1
bGVJZCwgbmV3U2VsZWN0b3IsIGNhbGxiYWNrLmJpbmQodGhpcywgbm9kZUlkLCBzdWNjZXNzQ2Fs
bGJhY2ssIGZhaWx1cmVDYWxsYmFjaykpOworICAgICAgICBJbnNwZWN0b3JCYWNrZW5kLnNldFJ1
bGVTZWxlY3RvcihydWxlSWQsIG5ld1NlbGVjdG9yLCBjYWxsYmFjay5iaW5kKHRoaXMsIG5vZGVJ
ZCwgc3VjY2Vzc0NhbGxiYWNrLCBmYWlsdXJlQ2FsbGJhY2spKTsKICAgICB9LAogCiAgICAgYWRk
UnVsZTogZnVuY3Rpb24obm9kZUlkLCBzZWxlY3Rvciwgc3VjY2Vzc0NhbGxiYWNrLCBmYWlsdXJl
Q2FsbGJhY2spCkBAIC0xNTIsNyArMTUyLDcgQEAgV2ViSW5zcGVjdG9yLkNTU1N0eWxlTW9kZWwu
cHJvdG90eXBlID0gewogICAgICAgICAgICAgICAgIEluc3BlY3RvckJhY2tlbmQucXVlcnlTZWxl
Y3RvckFsbChub2RlSWQsIHNlbGVjdG9yLCBjaGVja0FmZmVjdHNDYWxsYmFjay5iaW5kKHRoaXMs
IG5vZGVJZCwgc3VjY2Vzc0NhbGxiYWNrLCBydWxlUGF5bG9hZCkpOwogICAgICAgICB9CiAKLSAg
ICAgICAgSW5zcGVjdG9yQmFja2VuZC5hZGRSdWxlMihub2RlSWQsIHNlbGVjdG9yLCBjYWxsYmFj
ay5iaW5kKHRoaXMsIHN1Y2Nlc3NDYWxsYmFjaywgZmFpbHVyZUNhbGxiYWNrLCBzZWxlY3Rvcikp
OworICAgICAgICBJbnNwZWN0b3JCYWNrZW5kLmFkZFJ1bGUobm9kZUlkLCBzZWxlY3RvciwgY2Fs
bGJhY2suYmluZCh0aGlzLCBzdWNjZXNzQ2FsbGJhY2ssIGZhaWx1cmVDYWxsYmFjaywgc2VsZWN0
b3IpKTsKICAgICB9LAogCiAgICAgX3N0eWxlU2hlZXRDaGFuZ2VkOiBmdW5jdGlvbihzdHlsZVNo
ZWV0SWQsIG1ham9yQ2hhbmdlKQpAQCAtMTY2LDcgKzE2Niw3IEBAIFdlYkluc3BlY3Rvci5DU1NT
dHlsZU1vZGVsLnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgIGlmIChyZXNvdXJjZSAmJiByZXNv
dXJjZS50eXBlID09PSBXZWJJbnNwZWN0b3IuUmVzb3VyY2UuVHlwZS5TdHlsZXNoZWV0KQogICAg
ICAgICAgICAgICAgIHJlc291cmNlLnNldENvbnRlbnQoY29udGVudCwgdGhpcy5fb25SZXZlcnQu
YmluZCh0aGlzLCBzdHlsZVNoZWV0SWQpKTsKICAgICAgICAgfQotICAgICAgICBJbnNwZWN0b3JC
YWNrZW5kLmdldFN0eWxlU2hlZXRUZXh0MihzdHlsZVNoZWV0SWQsIGNhbGxiYWNrLmJpbmQodGhp
cykpOworICAgICAgICBJbnNwZWN0b3JCYWNrZW5kLmdldFN0eWxlU2hlZXRUZXh0KHN0eWxlU2hl
ZXRJZCwgY2FsbGJhY2suYmluZCh0aGlzKSk7CiAgICAgfSwKIAogICAgIF9vblJldmVydDogZnVu
Y3Rpb24oc3R5bGVTaGVldElkLCBjb250ZW50VG9SZXZlcnRUbykKQEAgLTE3Niw3ICsxNzYsNyBA
QCBXZWJJbnNwZWN0b3IuQ1NTU3R5bGVNb2RlbC5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICB0
aGlzLl9zdHlsZVNoZWV0Q2hhbmdlZChzdHlsZVNoZWV0SWQsIHRydWUpOwogICAgICAgICAgICAg
dGhpcy5kaXNwYXRjaEV2ZW50VG9MaXN0ZW5lcnMoInN0eWxlc2hlZXQgY2hhbmdlZCIpOwogICAg
ICAgICB9Ci0gICAgICAgIEluc3BlY3RvckJhY2tlbmQuc2V0U3R5bGVTaGVldFRleHQyKHN0eWxl
U2hlZXRJZCwgY29udGVudFRvUmV2ZXJ0VG8sIGNhbGxiYWNrLmJpbmQodGhpcykpOworICAgICAg
ICBJbnNwZWN0b3JCYWNrZW5kLnNldFN0eWxlU2hlZXRUZXh0KHN0eWxlU2hlZXRJZCwgY29udGVu
dFRvUmV2ZXJ0VG8sIGNhbGxiYWNrLmJpbmQodGhpcykpOwogICAgIH0KIH0KIApAQCAtMzQ4LDcg
KzM0OCw3IEBAIFdlYkluc3BlY3Rvci5DU1NTdHlsZURlY2xhcmF0aW9uLnByb3RvdHlwZSA9IHsK
ICAgICAgICAgICAgIH0KICAgICAgICAgfQogCi0gICAgICAgIEluc3BlY3RvckJhY2tlbmQuc2V0
UHJvcGVydHlUZXh0Mih0aGlzLmlkLCBpbmRleCwgbmFtZSArICI6ICIgKyB2YWx1ZSArICI7Iiwg
ZmFsc2UsIGNhbGxiYWNrLmJpbmQobnVsbCwgdXNlckNhbGxiYWNrKSk7CisgICAgICAgIEluc3Bl
Y3RvckJhY2tlbmQuc2V0UHJvcGVydHlUZXh0KHRoaXMuaWQsIGluZGV4LCBuYW1lICsgIjogIiAr
IHZhbHVlICsgIjsiLCBmYWxzZSwgY2FsbGJhY2suYmluZChudWxsLCB1c2VyQ2FsbGJhY2spKTsK
ICAgICB9LAogCiAgICAgYXBwZW5kUHJvcGVydHk6IGZ1bmN0aW9uKG5hbWUsIHZhbHVlLCB1c2Vy
Q2FsbGJhY2spCkBAIC00ODgsNyArNDg4LDcgQEAgV2ViSW5zcGVjdG9yLkNTU1Byb3BlcnR5LnBy
b3RvdHlwZSA9IHsKICAgICAgICAgICAgIHRocm93ICJObyBvd25lclN0eWxlIGZvciBwcm9wZXJ0
eSI7CiAKICAgICAgICAgLy8gQW4gaW5kZXggcGFzdCBhbGwgdGhlIHByb3BlcnRpZXMgYWRkcyBh
IG5ldyBwcm9wZXJ0eSB0byB0aGUgc3R5bGUuCi0gICAgICAgIEluc3BlY3RvckJhY2tlbmQuc2V0
UHJvcGVydHlUZXh0Mih0aGlzLm93bmVyU3R5bGUuaWQsIHRoaXMuaW5kZXgsIHByb3BlcnR5VGV4
dCwgdGhpcy5pbmRleCA8IHRoaXMub3duZXJTdHlsZS5wYXN0TGFzdFNvdXJjZVByb3BlcnR5SW5k
ZXgoKSwgY2FsbGJhY2suYmluZCh0aGlzKSk7CisgICAgICAgIEluc3BlY3RvckJhY2tlbmQuc2V0
UHJvcGVydHlUZXh0KHRoaXMub3duZXJTdHlsZS5pZCwgdGhpcy5pbmRleCwgcHJvcGVydHlUZXh0
LCB0aGlzLmluZGV4IDwgdGhpcy5vd25lclN0eWxlLnBhc3RMYXN0U291cmNlUHJvcGVydHlJbmRl
eCgpLCBjYWxsYmFjay5iaW5kKHRoaXMpKTsKICAgICB9LAogCiAgICAgc2V0VmFsdWU6IGZ1bmN0
aW9uKG5ld1ZhbHVlLCB1c2VyQ2FsbGJhY2spCkBAIC01MTcsNyArNTE3LDcgQEAgV2ViSW5zcGVj
dG9yLkNTU1Byb3BlcnR5LnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgIH0KICAgICAgICAgfQog
Ci0gICAgICAgIEluc3BlY3RvckJhY2tlbmQudG9nZ2xlUHJvcGVydHkyKHRoaXMub3duZXJTdHls
ZS5pZCwgdGhpcy5pbmRleCwgZGlzYWJsZWQsIGNhbGxiYWNrLmJpbmQodGhpcykpOworICAgICAg
ICBJbnNwZWN0b3JCYWNrZW5kLnRvZ2dsZVByb3BlcnR5KHRoaXMub3duZXJTdHlsZS5pZCwgdGhp
cy5pbmRleCwgZGlzYWJsZWQsIGNhbGxiYWNrLmJpbmQodGhpcykpOwogICAgIH0KIH0KIApAQCAt
NTQ4LDcgKzU0OCw3IEBAIFdlYkluc3BlY3Rvci5DU1NTdHlsZVNoZWV0LmNyZWF0ZUZvcklkID0g
ZnVuY3Rpb24oc3R5bGVTaGVldElkLCB1c2VyQ2FsbGJhY2spCiAgICAgICAgIGVsc2UKICAgICAg
ICAgICAgIHVzZXJDYWxsYmFjayhuZXcgV2ViSW5zcGVjdG9yLkNTU1N0eWxlU2hlZXQoc3R5bGVT
aGVldFBheWxvYWQpKTsKICAgICB9Ci0gICAgSW5zcGVjdG9yQmFja2VuZC5nZXRTdHlsZVNoZWV0
MihzdHlsZVNoZWV0SWQsIGNhbGxiYWNrLmJpbmQodGhpcykpOworICAgIEluc3BlY3RvckJhY2tl
bmQuZ2V0U3R5bGVTaGVldChzdHlsZVNoZWV0SWQsIGNhbGxiYWNrLmJpbmQodGhpcykpOwogfQog
CiBXZWJJbnNwZWN0b3IuQ1NTU3R5bGVTaGVldC5wcm90b3R5cGUgPSB7CkBAIC01NjksNiArNTY5
LDYgQEAgV2ViSW5zcGVjdG9yLkNTU1N0eWxlU2hlZXQucHJvdG90eXBlID0gewogICAgICAgICAg
ICAgfQogICAgICAgICB9CiAKLSAgICAgICAgSW5zcGVjdG9yQmFja2VuZC5zZXRTdHlsZVNoZWV0
VGV4dDIodGhpcy5pZCwgbmV3VGV4dCwgY2FsbGJhY2suYmluZCh0aGlzKSk7CisgICAgICAgIElu
c3BlY3RvckJhY2tlbmQuc2V0U3R5bGVTaGVldFRleHQodGhpcy5pZCwgbmV3VGV4dCwgY2FsbGJh
Y2suYmluZCh0aGlzKSk7CiAgICAgfQogfQo=
</data>
<flag name="review"
          id="72255"
          type_id="1"
          status="+"
          setter="pfeldman"
    />
    <flag name="commit-queue"
          id="72258"
          type_id="3"
          status="-"
          setter="commit-queue"
    />
          </attachment>
      

    </bug>

</bugzilla>