<?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>123424</bug_id>
          
          <creation_ts>2013-10-28 15:33:44 -0700</creation_ts>
          <short_desc>Web Inspector: CSS Regions: Add protocol API to expose content nodes addition/removal</short_desc>
          <delta_ts>2013-10-28 19:36:25 -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>Web Inspector</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>122927</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Alexandru Chiculita">achicu</reporter>
          <assigned_to name="Alexandru Chiculita">achicu</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>graouts</cc>
    
    <cc>joepeck</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>timothy</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>WebkitBugTracker</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>944235</commentid>
    <comment_count>0</comment_count>
    <who name="Alexandru Chiculita">achicu</who>
    <bug_when>2013-10-28 15:33:44 -0700</bug_when>
    <thetext>The current inspector protocol API will only send update events when a new layout is done. In some cases, these events are ignored because the flows have no regions.

Add events that are triggered when new elements are added or removed in the flow content list.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>944236</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2013-10-28 15:33:58 -0700</bug_when>
    <thetext>&lt;rdar://problem/15336546&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>944237</commentid>
    <comment_count>2</comment_count>
      <attachid>215339</attachid>
    <who name="Alexandru Chiculita">achicu</who>
    <bug_when>2013-10-28 15:49:54 -0700</bug_when>
    <thetext>Created attachment 215339
Patch V1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>944300</commentid>
    <comment_count>3</comment_count>
      <attachid>215339</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-10-28 19:36:24 -0700</bug_when>
    <thetext>Comment on attachment 215339
Patch V1

Clearing flags on attachment: 215339

Committed r158159: &lt;http://trac.webkit.org/changeset/158159&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>944301</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-10-28 19:36:25 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>215339</attachid>
            <date>2013-10-28 15:49:54 -0700</date>
            <delta_ts>2013-10-28 19:36:23 -0700</delta_ts>
            <desc>Patch V1</desc>
            <filename>bug123424_v1.patch</filename>
            <type>text/plain</type>
            <size>27797</size>
            <attacher name="Alexandru Chiculita">achicu</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBjMWMzODE1Li4wMTE4YjA4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTMtMTAt
MjggIEFsZXhhbmRydSBDaGljdWxpdGEgIDxhY2hpY3VAYWRvYmUuY29tPgorCisgICAgICAgIFdl
YiBJbnNwZWN0b3I6IENTUyBSZWdpb25zOiBBZGQgcHJvdG9jb2wgQVBJIHRvIGV4cG9zZSBjb250
ZW50IG5vZGVzIGFkZGl0aW9uL3JlbW92YWwKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTEyMzQyNAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEFkZGVkIHRlc3QgdG8gY2hlY2sgdGhhdCB0aGUgdHdvIG5ldyBl
dmVudHMgYXJlIHRyaWdnZXJlZCBjb3JyZWN0bHkgYW5kIGNhbiBiZSB1c2VkIHRvIG1haW50YWlu
CisgICAgICAgIHRoZSBmbG93IGNvbnRlbnQgbm9kZXMgbGlzdCBvbiB0aGUgaW5zcGVjdG9yIHNp
ZGUuCisKKyAgICAgICAgKiBpbnNwZWN0b3ItcHJvdG9jb2wvbW9kZWwvY29udGVudC1mbG93LWNv
bnRlbnQtbm9kZXMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpbnNwZWN0b3ItcHJv
dG9jb2wvbW9kZWwvY29udGVudC1mbG93LWNvbnRlbnQtbm9kZXMuaHRtbDogQWRkZWQuCisKIDIw
MTMtMTAtMjggIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAg
ICAgQWRkIHNraXBwZWQgb3IgZmFpbGluZyBleHBlY3RhdGlvbnMgZm9yIE1hdmVyaWNrcyBXSzIu
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3ItcHJvdG9jb2wvbW9kZWwvY29udGVu
dC1mbG93LWNvbnRlbnQtbm9kZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9y
LXByb3RvY29sL21vZGVsL2NvbnRlbnQtZmxvdy1jb250ZW50LW5vZGVzLWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jNWQxYzgxCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yLXByb3RvY29sL21vZGVsL2NvbnRlbnQtZmxvdy1j
b250ZW50LW5vZGVzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEzIEBACitUZXN0aW5nIHRoYXQg
dGhlIENvbnRlbnRGbG93cyBldmVudHMgYXJlIGNvcnJlY3RseSBkaXNwYXRjaGVkIHdoZW4gbm9k
ZXMgYXJlIGF0dGFjaGVkIHRvL2RldGFjaGVkIGZyb20gYSBmbG93LgorCitQQVNTOiBDb250ZW50
RmxvdyB3YXMgYWRkZWQuCitQQVNTOiBDb250ZW50Rmxvdy5jb250ZW50Tm9kZXMgaGFzIGEgbGVu
Z3RoIG9mIDIuCitQQVNTOiBDb250ZW50Rmxvdy5jb250ZW50Tm9kZXNbMF0uaWQgaXMgIiNjb250
ZW50U3RhdGljIi4KK1BBU1M6IENvbnRlbnRGbG93LmNvbnRlbnROb2Rlc1sxXS5pZCBpcyAiI2Nv
bnRlbnRSZW1vdmVkIi4KK1BBU1M6ICIjY29udGVudEFkZGVkQXRUaGVUb3AiIHdhcyBhZGRlZCBi
ZWZvcmUgIiNjb250ZW50U3RhdGljIi4KK1BBU1M6ICIjY29udGVudEFkZGVkQXRUaGVUb3AiIGlz
IGZpcnN0IGluIHRoZSBjb250ZW50Tm9kZXMgbGlzdC4KK1BBU1M6ICIjY29udGVudEFkZGVkQXRU
aGVCb3R0b20iIHdhcyBhZGRlZCBsYXN0LgorUEFTUzogIiNjb250ZW50QWRkZWRBdFRoZUJvdHRv
bSIgaXMgbGFzdCBpbiB0aGUgY29udGVudE5vZGVzIGxpc3QuCitQQVNTOiAiI2NvbnRlbnRSZW1v
dmVkIiB3YXMgcmVtb3ZlZC4KK1BBU1M6ICIjY29udGVudFJlbW92ZWQiIGNhbm5vdCBiZSBmb3Vu
ZCBpbiB0aGUgY29udGVudE5vZGVzIGxpc3QuCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lu
c3BlY3Rvci1wcm90b2NvbC9tb2RlbC9jb250ZW50LWZsb3ctY29udGVudC1ub2Rlcy5odG1sIGIv
TGF5b3V0VGVzdHMvaW5zcGVjdG9yLXByb3RvY29sL21vZGVsL2NvbnRlbnQtZmxvdy1jb250ZW50
LW5vZGVzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGYyNTFjNQot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci1wcm90b2NvbC9tb2RlbC9j
b250ZW50LWZsb3ctY29udGVudC1ub2Rlcy5odG1sCkBAIC0wLDAgKzEsOTMgQEAKKzwhZG9jdHlw
ZSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzdHlsZT4KKy5jb250ZW50Cit7CisgICAgLXdlYmtp
dC1mbG93LWludG86IGZsb3c7Cit9CisuaGlkZGVuCit7CisgICAgLXdlYmtpdC1mbG93LWludG86
IG5vbmU7Cit9Cis8L3N0eWxlPgorPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0i
Li4vLi4vaHR0cC90ZXN0cy9pbnNwZWN0b3ItcHJvdG9jb2wvcmVzb3VyY2VzL3Byb3RvY29sLXRl
c3QuanMiPjwvc2NyaXB0PgorPHNjcmlwdD4KK2Z1bmN0aW9uIGNoYW5nZUZsb3dDb250ZW50KCkK
K3sKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29udGVudEFkZGVkQXRUaGVUb3AiKS5j
bGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKTsKKyAgICAvLyBGb3JjZSBhIGxheW91dCB0byBtYWtl
IHN1cmUgdGhlIGV2ZW50cyBhcmUgYWx3YXlzIGZpcmVkIGluIHRoZSBleHBlY3RlZCBvcmRlci4K
KyAgICBkb2N1bWVudC5ib2R5Lm9mZnNldFRvcDsKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiY29udGVudEFkZGVkQXRUaGVCb3R0b20iKS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKTsK
KyAgICBkb2N1bWVudC5ib2R5Lm9mZnNldFRvcDsKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiY29udGVudFJlbW92ZWQiKS5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKTsKK30KKworZnVuY3Rp
b24gdGVzdCgpCit7CisgICAgSW5zcGVjdG9yVGVzdC5pbXBvcnRJbnNwZWN0b3JTY3JpcHRzKCk7
CisKKyAgICB2YXIgY29udGVudEZsb3c7CisKKyAgICBXZWJJbnNwZWN0b3IuZnJhbWVSZXNvdXJj
ZU1hbmFnZXIuYWRkRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0b3IuRnJhbWVSZXNvdXJjZU1hbmFn
ZXIuRXZlbnQuTWFpbkZyYW1lRGlkQ2hhbmdlLCBmdW5jdGlvbihldmVudCkgeworICAgICAgICB2
YXIgZG9tVHJlZSA9IFdlYkluc3BlY3Rvci5mcmFtZVJlc291cmNlTWFuYWdlci5tYWluRnJhbWUu
ZG9tVHJlZTsKKyAgICAgICAgZG9tVHJlZS5hZGRFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5E
T01UcmVlLkV2ZW50LlJvb3RET01Ob2RlSW52YWxpZGF0ZWQsIG9uUm9vdERPTU5vZGVJbnZhbGlk
YXRlZCwgbnVsbCk7CisgICAgICAgIGRvbVRyZWUuYWRkRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0
b3IuRE9NVHJlZS5FdmVudC5Db250ZW50Rmxvd1dhc0FkZGVkLCBvbkNvbnRlbnRGbG93V2FzQWRk
ZWQsIG51bGwpOworICAgICAgICBkb21UcmVlLnJlcXVlc3RDb250ZW50Rmxvd0xpc3QoKTsKKyAg
ICB9KTsKKworICAgIGZ1bmN0aW9uIG9uUm9vdERPTU5vZGVJbnZhbGlkYXRlZCgpCisgICAgewor
ICAgICAgICBXZWJJbnNwZWN0b3IuZnJhbWVSZXNvdXJjZU1hbmFnZXIubWFpbkZyYW1lLmRvbVRy
ZWUucmVxdWVzdENvbnRlbnRGbG93TGlzdCgpOworICAgIH0KKworICAgIGZ1bmN0aW9uIG9uQ29u
dGVudEZsb3dXYXNBZGRlZChldmVudCkKKyAgICB7CisgICAgICAgIGNvbnRlbnRGbG93ID0gZXZl
bnQuZGF0YS5mbG93OworICAgICAgICBJbnNwZWN0b3JUZXN0LmFzc2VydChjb250ZW50Rmxvdy5u
YW1lID09PSAiZmxvdyIsICJDb250ZW50RmxvdyB3YXMgYWRkZWQuIik7CisgICAgICAgIEluc3Bl
Y3RvclRlc3QuYXNzZXJ0KGNvbnRlbnRGbG93LmNvbnRlbnROb2Rlcy5sZW5ndGggPT0gMiwgIkNv
bnRlbnRGbG93LmNvbnRlbnROb2RlcyBoYXMgYSBsZW5ndGggb2YgMi4iKTsKKyAgICAgICAgSW5z
cGVjdG9yVGVzdC5hc3NlcnQoY29udGVudEZsb3cuY29udGVudE5vZGVzWzBdLmdldEF0dHJpYnV0
ZSgiaWQiKSA9PT0gImNvbnRlbnRTdGF0aWMiLCAiQ29udGVudEZsb3cuY29udGVudE5vZGVzWzBd
LmlkIGlzIFwiI2NvbnRlbnRTdGF0aWNcIi4iKTsKKyAgICAgICAgSW5zcGVjdG9yVGVzdC5hc3Nl
cnQoY29udGVudEZsb3cuY29udGVudE5vZGVzWzFdLmdldEF0dHJpYnV0ZSgiaWQiKSA9PT0gImNv
bnRlbnRSZW1vdmVkIiwgIkNvbnRlbnRGbG93LmNvbnRlbnROb2Rlc1sxXS5pZCBpcyBcIiNjb250
ZW50UmVtb3ZlZFwiLiIpOworCisgICAgICAgIGNvbnRlbnRGbG93LmFkZEV2ZW50TGlzdGVuZXIo
V2ViSW5zcGVjdG9yLkNvbnRlbnRGbG93LkV2ZW50LkNvbnRlbnROb2RlV2FzQWRkZWQsIG9uQ29u
dGVudE5vZGVXYXNBZGRlZCwgbnVsbCk7CisgICAgICAgIGNvbnRlbnRGbG93LmFkZEV2ZW50TGlz
dGVuZXIoV2ViSW5zcGVjdG9yLkNvbnRlbnRGbG93LkV2ZW50LkNvbnRlbnROb2RlV2FzUmVtb3Zl
ZCwgb25Db250ZW50Tm9kZVdhc1JlbW92ZWQsIG51bGwpOworCisgICAgICAgIEluc3BlY3RvclRl
c3Quc2VuZENvbW1hbmQoIlJ1bnRpbWUuZXZhbHVhdGUiLCB7ZXhwcmVzc2lvbjogImNoYW5nZUZs
b3dDb250ZW50KCkifSk7CisgICAgfQorCisgICAgZnVuY3Rpb24gb25Db250ZW50Tm9kZVdhc0Fk
ZGVkKGV2ZW50KQorICAgIHsKKyAgICAgICAgc3dpdGNoIChldmVudC5kYXRhLm5vZGUuZ2V0QXR0
cmlidXRlKCJpZCIpKSB7CisgICAgICAgIGNhc2UgImNvbnRlbnRBZGRlZEF0VGhlVG9wIjoKKyAg
ICAgICAgICAgIEluc3BlY3RvclRlc3QuYXNzZXJ0KGV2ZW50LmRhdGEuYmVmb3JlLmdldEF0dHJp
YnV0ZSgiaWQiKSA9PT0gImNvbnRlbnRTdGF0aWMiLCAiXCIjY29udGVudEFkZGVkQXRUaGVUb3Bc
IiB3YXMgYWRkZWQgYmVmb3JlIFwiI2NvbnRlbnRTdGF0aWNcIi4iKTsKKyAgICAgICAgICAgIElu
c3BlY3RvclRlc3QuYXNzZXJ0KGNvbnRlbnRGbG93LmNvbnRlbnROb2Rlc1swXSA9PT0gZXZlbnQu
ZGF0YS5ub2RlLCAiXCIjY29udGVudEFkZGVkQXRUaGVUb3BcIiBpcyBmaXJzdCBpbiB0aGUgY29u
dGVudE5vZGVzIGxpc3QuIik7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAiY29u
dGVudEFkZGVkQXRUaGVCb3R0b20iOgorICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5hc3NlcnQo
IWV2ZW50LmRhdGEuYmVmb3JlLCAiXCIjY29udGVudEFkZGVkQXRUaGVCb3R0b21cIiB3YXMgYWRk
ZWQgbGFzdC4iKTsKKyAgICAgICAgICAgIEluc3BlY3RvclRlc3QuYXNzZXJ0KGNvbnRlbnRGbG93
LmNvbnRlbnROb2Rlcy5sYXN0VmFsdWUgPT09IGV2ZW50LmRhdGEubm9kZSwgIlwiI2NvbnRlbnRB
ZGRlZEF0VGhlQm90dG9tXCIgaXMgbGFzdCBpbiB0aGUgY29udGVudE5vZGVzIGxpc3QuIik7Cisg
ICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIEluc3BlY3Rv
clRlc3QubG9nKCJGQUlMOiBPbmx5IHR3byBhZGQgZXZlbnRzIGFyZSBleHBlY3RlZC4iKTsKKyAg
ICAgICAgfQorICAgICAgICAKKyAgICB9CisKKyAgICBmdW5jdGlvbiBvbkNvbnRlbnROb2RlV2Fz
UmVtb3ZlZChldmVudCkKKyAgICB7CisgICAgICAgIEluc3BlY3RvclRlc3QuYXNzZXJ0KGV2ZW50
LmRhdGEubm9kZS5nZXRBdHRyaWJ1dGUoImlkIikgPT09ICJjb250ZW50UmVtb3ZlZCIsICJcIiNj
b250ZW50UmVtb3ZlZFwiIHdhcyByZW1vdmVkLiIpOworICAgICAgICBJbnNwZWN0b3JUZXN0LmFz
c2VydChjb250ZW50Rmxvdy5jb250ZW50Tm9kZXMuaW5kZXhPZihldmVudC5kYXRhLm5vZGUpID09
PSAtMSwgIlwiI2NvbnRlbnRSZW1vdmVkXCIgY2Fubm90IGJlIGZvdW5kIGluIHRoZSBjb250ZW50
Tm9kZXMgbGlzdC4iKTsKKyAgICAgICAgSW5zcGVjdG9yVGVzdC5jb21wbGV0ZVRlc3QoKTsKKyAg
ICB9Cit9Cis8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KKyAg
ICA8cD5UZXN0aW5nIHRoYXQgdGhlIENvbnRlbnRGbG93cyBldmVudHMgYXJlIGNvcnJlY3RseSBk
aXNwYXRjaGVkIHdoZW4gbm9kZXMgYXJlIGF0dGFjaGVkIHRvL2RldGFjaGVkIGZyb20gYSBmbG93
LjwvcD4KKyAgICAKKyAgICA8ZGl2IGlkPSJjb250ZW50QWRkZWRBdFRoZVRvcCIgY2xhc3M9ImNv
bnRlbnQgaGlkZGVuIj48L2Rpdj4KKyAgICA8ZGl2IGlkPSJjb250ZW50U3RhdGljIiBjbGFzcz0i
Y29udGVudCI+PC9kaXY+CisgICAgPGRpdiBpZD0iY29udGVudFJlbW92ZWQiIGNsYXNzPSJjb250
ZW50Ij48L2Rpdj4KKyAgICA8ZGl2IGlkPSJjb250ZW50QWRkZWRBdFRoZUJvdHRvbSIgY2xhc3M9
ImNvbnRlbnQgaGlkZGVuIj48L2Rpdj4KKworPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4
IDE1YzM3N2MuLmVmZWE0MjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwor
KysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzMSBAQAorMjAxMy0xMC0y
OCAgQWxleGFuZHJ1IENoaWN1bGl0YSAgPGFjaGljdUBhZG9iZS5jb20+CisKKyAgICAgICAgV2Vi
IEluc3BlY3RvcjogQ1NTIFJlZ2lvbnM6IEFkZCBwcm90b2NvbCBBUEkgdG8gZXhwb3NlIGNvbnRl
bnQgbm9kZXMgYWRkaXRpb24vcmVtb3ZhbAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTIzNDI0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgVGVzdDogaW5zcGVjdG9yLXByb3RvY29sL21vZGVsL2NvbnRlbnQt
Zmxvdy1jb250ZW50LW5vZGVzLmh0bWwKKworICAgICAgICBBZGRpbmcgdHdvIG5ldyBpbnNwZWN0
b3ItcHJvdG9jb2wgQVBJcyB0byBoYW5kbGUgdGhlIGNhc2VzIHdoZW4gbmV3IGVsZW1lbnRzIGFy
ZQorICAgICAgICBhZGRlZCBvciByZW1vdmVkIGZyb20gYSBuYW1lZCBmbG93LiBUaGVzZSBBUElz
IHdpbGwgdHJpZ2dlciBldmVuIHRob3VnaCB0aGVyZQorICAgICAgICBpcyBubyByZWdpb24gYXNz
b2NpYXRlZCB3aXRoIHRoZSBuYW1lZCBmbG93LgorCisgICAgICAgICogaW5zcGVjdG9yL0luc3Bl
Y3Rvci5qc29uOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JDU1NBZ2VudC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDU1NBZ2VudDo6ZGlkUmVnaXN0ZXJOYW1lZEZsb3dD
b250ZW50RWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDU1NBZ2VudDo6ZGlk
VW5yZWdpc3Rlck5hbWVkRmxvd0NvbnRlbnRFbGVtZW50KToKKyAgICAgICAgKiBpbnNwZWN0b3Iv
SW5zcGVjdG9yQ1NTQWdlbnQuaDoKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1
bWVudGF0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlv
bjo6ZGlkUmVnaXN0ZXJOYW1lZEZsb3dDb250ZW50RWxlbWVudEltcGwpOgorICAgICAgICAoV2Vi
Q29yZTo6SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRVbnJlZ2lzdGVyTmFtZWRGbG93Q29u
dGVudEVsZW1lbnRJbXBsKToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uLmg6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRp
ZFJlZ2lzdGVyTmFtZWRGbG93Q29udGVudEVsZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6SW5z
cGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRVbnJlZ2lzdGVyTmFtZWRGbG93Q29udGVudEVsZW1l
bnQpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJOYW1lZEZsb3dUaHJlYWQuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6UmVuZGVyTmFtZWRGbG93VGhyZWFkOjpyZWdpc3Rlck5hbWVkRmxvd0Nv
bnRlbnRFbGVtZW50KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlck5hbWVkRmxvd1RocmVhZDo6
dW5yZWdpc3Rlck5hbWVkRmxvd0NvbnRlbnRFbGVtZW50KToKKwogMjAxMy0xMC0yOCAgSm9zZXBo
IFBlY29yYXJvICA8cGVjb3Jhcm9AYXBwbGUuY29tPgogCiAgICAgICAgIFVwc3RyZWFtIHJlbWFp
bmluZyBQTEFURk9STShJT1MpIGFuZCBFTkFCTEUoUkVNT1RFX0lOU1BFQ1RPUikgcGllY2VzCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yLmpzb24gYi9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yLmpzb24KaW5kZXggMWM2Mjk3MS4uZjIxYjA3
YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvci5qc29uCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3IuanNvbgpAQCAtMjU2MCw2ICsy
NTYwLDI1IEBACiAgICAgICAgICAgICAgICAgICAgIHsgIm5hbWUiOiAibmFtZWRGbG93IiwgIiRy
ZWYiOiAiTmFtZWRGbG93IiwgImRlc2NyaXB0aW9uIjogIlRoZSBOYW1lZCBGbG93IGNvbnRhaW5p
bmcgdGhlIHJlZ2lvbnMgd2hvc2UgcmVnaW9uT3ZlcnNldCB2YWx1ZXMgY2hhbmdlZC4iIH0KICAg
ICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICJkZXNjcmlwdGlvbiI6ICJGaXJlcyBp
ZiBhbnkgb2YgdGhlIHJlZ2lvbk92ZXJzZXQgdmFsdWVzIGNoYW5nZWQgaW4gYSBOYW1lZCBGbG93
J3MgcmVnaW9uIGNoYWluLiIKKyAgICAgICAgICAgIH0sCisgICAgICAgICAgICB7CisgICAgICAg
ICAgICAgICAgIm5hbWUiOiAicmVnaXN0ZXJlZE5hbWVkRmxvd0NvbnRlbnRFbGVtZW50IiwKKyAg
ICAgICAgICAgICAgICAicGFyYW1ldGVycyI6IFsKKyAgICAgICAgICAgICAgICAgICAgeyAibmFt
ZSI6ICJkb2N1bWVudE5vZGVJZCIsICIkcmVmIjogIkRPTS5Ob2RlSWQiLCAiZGVzY3JpcHRpb24i
OiAiVGhlIGRvY3VtZW50IG5vZGUgaWQuIiB9LAorICAgICAgICAgICAgICAgICAgICB7ICJuYW1l
IjogImZsb3dOYW1lIiwgInR5cGUiOiAic3RyaW5nIiwgImRlc2NyaXB0aW9uIjogIk5hbWVkIEZs
b3cgaWRlbnRpZmllciBmb3Igd2hpY2ggdGhlIG5ldyBjb250ZW50IGVsZW1lbnQgd2FzIHJlZ2lz
dGVyZWQuIiB9LAorICAgICAgICAgICAgICAgICAgICB7ICJuYW1lIjogImNvbnRlbnROb2RlSWQi
LCAiJHJlZiI6ICJET00uTm9kZUlkIiwgImRlc2NyaXB0aW9uIjogIlRoZSBub2RlIGlkIG9mIHRo
ZSByZWdpc3RlcmVkIGNvbnRlbnQgbm9kZS4iIH0sCisgICAgICAgICAgICAgICAgICAgIHsgIm5h
bWUiOiAibmV4dENvbnRlbnROb2RlSWQiLCAiJHJlZiI6ICJET00uTm9kZUlkIiwgImRlc2NyaXB0
aW9uIjogIlRoZSBub2RlIGlkIG9mIHRoZSBlbGVtZW50IGZvbGxvd2luZyB0aGUgcmVnaXN0ZXJl
ZCBjb250ZW50IG5vZGUuIiB9CisgICAgICAgICAgICAgICAgXSwKKyAgICAgICAgICAgICAgICAi
ZGVzY3JpcHRpb24iOiAiRmlyZXMgd2hlbiBhIE5hbWVkIEZsb3cncyBoYXMgYmVlbiByZWdpc3Rl
cmVkIHdpdGggYSBuZXcgY29udGVudCBub2RlLiIKKyAgICAgICAgICAgIH0sCisgICAgICAgICAg
ICB7CisgICAgICAgICAgICAgICAgIm5hbWUiOiAidW5yZWdpc3RlcmVkTmFtZWRGbG93Q29udGVu
dEVsZW1lbnQiLAorICAgICAgICAgICAgICAgICJwYXJhbWV0ZXJzIjogWworICAgICAgICAgICAg
ICAgICAgICB7ICJuYW1lIjogImRvY3VtZW50Tm9kZUlkIiwgIiRyZWYiOiAiRE9NLk5vZGVJZCIs
ICJkZXNjcmlwdGlvbiI6ICJUaGUgZG9jdW1lbnQgbm9kZSBpZC4iIH0sCisgICAgICAgICAgICAg
ICAgICAgIHsgIm5hbWUiOiAiZmxvd05hbWUiLCAidHlwZSI6ICJzdHJpbmciLCAiZGVzY3JpcHRp
b24iOiAiTmFtZWQgRmxvdyBpZGVudGlmaWVyIGZvciB3aGljaCB0aGUgbmV3IGNvbnRlbnQgZWxl
bWVudCB3YXMgdW5yZWdpc3RlcmVkLiIgfSwKKyAgICAgICAgICAgICAgICAgICAgeyAibmFtZSI6
ICJjb250ZW50Tm9kZUlkIiwgIiRyZWYiOiAiRE9NLk5vZGVJZCIsICJkZXNjcmlwdGlvbiI6ICJU
aGUgbm9kZSBpZCBvZiB0aGUgdW5yZWdpc3RlcmVkIGNvbnRlbnQgbm9kZS4iIH0KKyAgICAgICAg
ICAgICAgICBdLAorICAgICAgICAgICAgICAgICJkZXNjcmlwdGlvbiI6ICJGaXJlcyB3aGVuIGEg
TmFtZWQgRmxvdydzIGhhcyBiZWVuIHJlZ2lzdGVyZWQgd2l0aCBhIG5ldyBjb250ZW50IG5vZGUu
IgogICAgICAgICAgICAgfQogICAgICAgICBdCiAgICAgfSwKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDU1NBZ2VudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9p
bnNwZWN0b3IvSW5zcGVjdG9yQ1NTQWdlbnQuY3BwCmluZGV4IDI2YjQyNzQuLjk4OGMzYzQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDU1NBZ2VudC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNTU0FnZW50LmNwcApAQCAt
Nzc1LDYgKzc3NSwyOSBAQCB2b2lkIEluc3BlY3RvckNTU0FnZW50OjpyZWdpb25PdmVyc2V0Q2hh
bmdlZChXZWJLaXROYW1lZEZsb3cqIG5hbWVkRmxvdywgaW50IGRvYwogICAgIG1fZnJvbnRlbmQt
PnJlZ2lvbk92ZXJzZXRDaGFuZ2VkKGJ1aWxkT2JqZWN0Rm9yTmFtZWRGbG93KCZlcnJvclN0cmlu
ZywgbmFtZWRGbG93LCBkb2N1bWVudE5vZGVJZCkpOwogfQogCit2b2lkIEluc3BlY3RvckNTU0Fn
ZW50OjpkaWRSZWdpc3Rlck5hbWVkRmxvd0NvbnRlbnRFbGVtZW50KERvY3VtZW50KiBkb2N1bWVu
dCwgV2ViS2l0TmFtZWRGbG93KiBuYW1lZEZsb3csIE5vZGUqIGNvbnRlbnRFbGVtZW50LCBOb2Rl
KiBuZXh0Q29udGVudEVsZW1lbnQpCit7CisgICAgaW50IGRvY3VtZW50Tm9kZUlkID0gZG9jdW1l
bnROb2RlV2l0aFJlcXVlc3RlZEZsb3dzSWQoZG9jdW1lbnQpOworICAgIGlmICghZG9jdW1lbnRO
b2RlSWQpCisgICAgICAgIHJldHVybjsKKworICAgIEVycm9yU3RyaW5nIGVycm9yU3RyaW5nOwor
ICAgIGludCBjb250ZW50RWxlbWVudE5vZGVJZCA9IG1fZG9tQWdlbnQtPnB1c2hOb2RlVG9Gcm9u
dGVuZCgmZXJyb3JTdHJpbmcsIGRvY3VtZW50Tm9kZUlkLCBjb250ZW50RWxlbWVudCk7CisgICAg
aW50IG5leHRDb250ZW50RWxlbWVudE5vZGVJZCA9IG5leHRDb250ZW50RWxlbWVudCA/IG1fZG9t
QWdlbnQtPnB1c2hOb2RlVG9Gcm9udGVuZCgmZXJyb3JTdHJpbmcsIGRvY3VtZW50Tm9kZUlkLCBu
ZXh0Q29udGVudEVsZW1lbnQpIDogMDsKKyAgICBtX2Zyb250ZW5kLT5yZWdpc3RlcmVkTmFtZWRG
bG93Q29udGVudEVsZW1lbnQoZG9jdW1lbnROb2RlSWQsIG5hbWVkRmxvdy0+bmFtZSgpLnN0cmlu
ZygpLCBjb250ZW50RWxlbWVudE5vZGVJZCwgbmV4dENvbnRlbnRFbGVtZW50Tm9kZUlkKTsKK30K
Kwordm9pZCBJbnNwZWN0b3JDU1NBZ2VudDo6ZGlkVW5yZWdpc3Rlck5hbWVkRmxvd0NvbnRlbnRF
bGVtZW50KERvY3VtZW50KiBkb2N1bWVudCwgV2ViS2l0TmFtZWRGbG93KiBuYW1lZEZsb3csIE5v
ZGUqIGNvbnRlbnRFbGVtZW50KQoreworICAgIGludCBkb2N1bWVudE5vZGVJZCA9IGRvY3VtZW50
Tm9kZVdpdGhSZXF1ZXN0ZWRGbG93c0lkKGRvY3VtZW50KTsKKyAgICBpZiAoIWRvY3VtZW50Tm9k
ZUlkKQorICAgICAgICByZXR1cm47CisKKyAgICBFcnJvclN0cmluZyBlcnJvclN0cmluZzsKKyAg
ICBpbnQgY29udGVudEVsZW1lbnROb2RlSWQgPSBtX2RvbUFnZW50LT5wdXNoTm9kZVRvRnJvbnRl
bmQoJmVycm9yU3RyaW5nLCBkb2N1bWVudE5vZGVJZCwgY29udGVudEVsZW1lbnQpOworICAgIG1f
ZnJvbnRlbmQtPnVucmVnaXN0ZXJlZE5hbWVkRmxvd0NvbnRlbnRFbGVtZW50KGRvY3VtZW50Tm9k
ZUlkLCBuYW1lZEZsb3ctPm5hbWUoKS5zdHJpbmcoKSwgY29udGVudEVsZW1lbnROb2RlSWQpOwor
fQorCiBib29sIEluc3BlY3RvckNTU0FnZW50Ojpmb3JjZVBzZXVkb1N0YXRlKEVsZW1lbnQqIGVs
ZW1lbnQsIENTU1NlbGVjdG9yOjpQc2V1ZG9UeXBlIHBzZXVkb1R5cGUpCiB7CiAgICAgaWYgKG1f
bm9kZUlkVG9Gb3JjZWRQc2V1ZG9TdGF0ZS5pc0VtcHR5KCkpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ1NTQWdlbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9JbnNwZWN0b3JDU1NBZ2VudC5oCmluZGV4IDNjODJhMmYuLjMyOTU2NDQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDU1NBZ2VudC5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDU1NBZ2VudC5oCkBAIC0xMTAsNiAr
MTEwLDggQEAgcHVibGljOgogICAgIHZvaWQgcmVnaW9uTGF5b3V0VXBkYXRlZChXZWJLaXROYW1l
ZEZsb3cqLCBpbnQgZG9jdW1lbnROb2RlSWQpOwogICAgIHZvaWQgZGlkQ2hhbmdlUmVnaW9uT3Zl
cnNldChEb2N1bWVudCosIFdlYktpdE5hbWVkRmxvdyopOwogICAgIHZvaWQgcmVnaW9uT3ZlcnNl
dENoYW5nZWQoV2ViS2l0TmFtZWRGbG93KiwgaW50IGRvY3VtZW50Tm9kZUlkKTsKKyAgICB2b2lk
IGRpZFJlZ2lzdGVyTmFtZWRGbG93Q29udGVudEVsZW1lbnQoRG9jdW1lbnQqLCBXZWJLaXROYW1l
ZEZsb3cqLCBOb2RlKiBjb250ZW50RWxlbWVudCwgTm9kZSogbmV4dENvbnRlbnRFbGVtZW50ID0g
bnVsbHB0cik7CisgICAgdm9pZCBkaWRVbnJlZ2lzdGVyTmFtZWRGbG93Q29udGVudEVsZW1lbnQo
RG9jdW1lbnQqLCBXZWJLaXROYW1lZEZsb3cqLCBOb2RlKiBjb250ZW50RWxlbWVudCk7CiAKICAg
ICB2aXJ0dWFsIHZvaWQgZ2V0Q29tcHV0ZWRTdHlsZUZvck5vZGUoRXJyb3JTdHJpbmcqLCBpbnQg
bm9kZUlkLCBSZWZQdHI8VHlwZUJ1aWxkZXI6OkFycmF5PFR5cGVCdWlsZGVyOjpDU1M6OkNTU0Nv
bXB1dGVkU3R5bGVQcm9wZXJ0eT4+Jik7CiAgICAgdmlydHVhbCB2b2lkIGdldElubGluZVN0eWxl
c0Zvck5vZGUoRXJyb3JTdHJpbmcqLCBpbnQgbm9kZUlkLCBSZWZQdHI8VHlwZUJ1aWxkZXI6OkNT
Uzo6Q1NTU3R5bGU+JiBpbmxpbmVTdHlsZSwgUmVmUHRyPFR5cGVCdWlsZGVyOjpDU1M6OkNTU1N0
eWxlPiYgYXR0cmlidXRlcyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9J
bnNwZWN0b3JJbnN0cnVtZW50YXRpb24uY3BwCmluZGV4IGE3ZDFlNmEuLjEyMDc3YzMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24u
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRp
b24uY3BwCkBAIC0yODEsNiArMjgxLDE4IEBAIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9u
OjpkaWRDaGFuZ2VSZWdpb25PdmVyc2V0SW1wbChJbnN0cnVtZW50aW5nQWdlbnRzKiBpCiAgICAg
ICAgIGNzc0FnZW50LT5kaWRDaGFuZ2VSZWdpb25PdmVyc2V0KGRvY3VtZW50LCBuYW1lZEZsb3cp
OwogfQogCit2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVnaXN0ZXJOYW1lZEZs
b3dDb250ZW50RWxlbWVudEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyogaW5zdHJ1bWVudGluZ0Fn
ZW50cywgRG9jdW1lbnQqIGRvY3VtZW50LCBXZWJLaXROYW1lZEZsb3cqIG5hbWVkRmxvdywgTm9k
ZSogY29udGVudEVsZW1lbnQsIE5vZGUqIG5leHRDb250ZW50RWxlbWVudCkKK3sKKyAgICBpZiAo
SW5zcGVjdG9yQ1NTQWdlbnQqIGNzc0FnZW50ID0gaW5zdHJ1bWVudGluZ0FnZW50cy0+aW5zcGVj
dG9yQ1NTQWdlbnQoKSkKKyAgICAgICAgY3NzQWdlbnQtPmRpZFJlZ2lzdGVyTmFtZWRGbG93Q29u
dGVudEVsZW1lbnQoZG9jdW1lbnQsIG5hbWVkRmxvdywgY29udGVudEVsZW1lbnQsIG5leHRDb250
ZW50RWxlbWVudCk7Cit9CisKK3ZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRVbnJl
Z2lzdGVyTmFtZWRGbG93Q29udGVudEVsZW1lbnRJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMqIGlu
c3RydW1lbnRpbmdBZ2VudHMsIERvY3VtZW50KiBkb2N1bWVudCwgV2ViS2l0TmFtZWRGbG93KiBu
YW1lZEZsb3csIE5vZGUqIGNvbnRlbnRFbGVtZW50KQoreworICAgIGlmIChJbnNwZWN0b3JDU1NB
Z2VudCogY3NzQWdlbnQgPSBpbnN0cnVtZW50aW5nQWdlbnRzLT5pbnNwZWN0b3JDU1NBZ2VudCgp
KQorICAgICAgICBjc3NBZ2VudC0+ZGlkVW5yZWdpc3Rlck5hbWVkRmxvd0NvbnRlbnRFbGVtZW50
KGRvY3VtZW50LCBuYW1lZEZsb3csIGNvbnRlbnRFbGVtZW50KTsKK30KKwogdm9pZCBJbnNwZWN0
b3JJbnN0cnVtZW50YXRpb246Om1vdXNlRGlkTW92ZU92ZXJFbGVtZW50SW1wbChJbnN0cnVtZW50
aW5nQWdlbnRzKiBpbnN0cnVtZW50aW5nQWdlbnRzLCBjb25zdCBIaXRUZXN0UmVzdWx0JiByZXN1
bHQsIHVuc2lnbmVkIG1vZGlmaWVyRmxhZ3MpCiB7CiAgICAgaWYgKEluc3BlY3RvckRPTUFnZW50
KiBkb21BZ2VudCA9IGluc3RydW1lbnRpbmdBZ2VudHMtPmluc3BlY3RvckRPTUFnZW50KCkpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0
aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9u
LmgKaW5kZXggZjA5MTIyMS4uZDM1MTNjMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaApAQCAtMTMyLDYgKzEzMiw4IEBAIHB1
YmxpYzoKICAgICBzdGF0aWMgdm9pZCB3aWxsUmVtb3ZlTmFtZWRGbG93KERvY3VtZW50KiwgV2Vi
S2l0TmFtZWRGbG93Kik7CiAgICAgc3RhdGljIHZvaWQgZGlkVXBkYXRlUmVnaW9uTGF5b3V0KERv
Y3VtZW50KiwgV2ViS2l0TmFtZWRGbG93Kik7CiAgICAgc3RhdGljIHZvaWQgZGlkQ2hhbmdlUmVn
aW9uT3ZlcnNldChEb2N1bWVudCosIFdlYktpdE5hbWVkRmxvdyopOworICAgIHN0YXRpYyB2b2lk
IGRpZFJlZ2lzdGVyTmFtZWRGbG93Q29udGVudEVsZW1lbnQoRG9jdW1lbnQqLCBXZWJLaXROYW1l
ZEZsb3cqLCBOb2RlKiBjb250ZW50RWxlbWVudCwgTm9kZSogbmV4dENvbnRlbnRFbGVtZW50ID0g
bnVsbHB0cik7CisgICAgc3RhdGljIHZvaWQgZGlkVW5yZWdpc3Rlck5hbWVkRmxvd0NvbnRlbnRF
bGVtZW50KERvY3VtZW50KiwgV2ViS2l0TmFtZWRGbG93KiwgTm9kZSogY29udGVudEVsZW1lbnQp
OwogCiAgICAgc3RhdGljIHZvaWQgbW91c2VEaWRNb3ZlT3ZlckVsZW1lbnQoUGFnZSosIGNvbnN0
IEhpdFRlc3RSZXN1bHQmLCB1bnNpZ25lZCBtb2RpZmllckZsYWdzKTsKICAgICBzdGF0aWMgYm9v
bCBoYW5kbGVNb3VzZVByZXNzKFBhZ2UqKTsKQEAgLTMzNyw2ICszMzksOCBAQCBwcml2YXRlOgog
ICAgIHN0YXRpYyB2b2lkIHdpbGxSZW1vdmVOYW1lZEZsb3dJbXBsKEluc3RydW1lbnRpbmdBZ2Vu
dHMqLCBEb2N1bWVudCosIFdlYktpdE5hbWVkRmxvdyopOwogICAgIHN0YXRpYyB2b2lkIGRpZFVw
ZGF0ZVJlZ2lvbkxheW91dEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyosIERvY3VtZW50KiwgV2Vi
S2l0TmFtZWRGbG93Kik7CiAgICAgc3RhdGljIHZvaWQgZGlkQ2hhbmdlUmVnaW9uT3ZlcnNldElt
cGwoSW5zdHJ1bWVudGluZ0FnZW50cyosIERvY3VtZW50KiwgV2ViS2l0TmFtZWRGbG93Kik7Cisg
ICAgc3RhdGljIHZvaWQgZGlkUmVnaXN0ZXJOYW1lZEZsb3dDb250ZW50RWxlbWVudEltcGwoSW5z
dHJ1bWVudGluZ0FnZW50cyosIERvY3VtZW50KiwgV2ViS2l0TmFtZWRGbG93KiwgTm9kZSogY29u
dGVudEVsZW1lbnQsIE5vZGUqIG5leHRDb250ZW50RWxlbWVudCA9IG51bGxwdHIpOworICAgIHN0
YXRpYyB2b2lkIGRpZFVucmVnaXN0ZXJOYW1lZEZsb3dDb250ZW50RWxlbWVudEltcGwoSW5zdHJ1
bWVudGluZ0FnZW50cyosIERvY3VtZW50KiwgV2ViS2l0TmFtZWRGbG93KiwgTm9kZSogY29udGVu
dEVsZW1lbnQpOwogCiAgICAgc3RhdGljIHZvaWQgbW91c2VEaWRNb3ZlT3ZlckVsZW1lbnRJbXBs
KEluc3RydW1lbnRpbmdBZ2VudHMqLCBjb25zdCBIaXRUZXN0UmVzdWx0JiwgdW5zaWduZWQgbW9k
aWZpZXJGbGFncyk7CiAgICAgc3RhdGljIGJvb2wgaGFuZGxlVG91Y2hFdmVudEltcGwoSW5zdHJ1
bWVudGluZ0FnZW50cyosIE5vZGUqKTsKQEAgLTcxOCw2ICs3MjIsMzMgQEAgaW5saW5lIHZvaWQg
SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRDaGFuZ2VSZWdpb25PdmVyc2V0KERvY3VtZW50
KiBkb2N1bWVudCwKICNlbmRpZgogfQogCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50
YXRpb246OmRpZFJlZ2lzdGVyTmFtZWRGbG93Q29udGVudEVsZW1lbnQoRG9jdW1lbnQqIGRvY3Vt
ZW50LCBXZWJLaXROYW1lZEZsb3cqIG5hbWVkRmxvdywgTm9kZSogY29udGVudEVsZW1lbnQsIE5v
ZGUqIG5leHRDb250ZW50RWxlbWVudCkKK3sKKyNpZiBFTkFCTEUoSU5TUEVDVE9SKQorICAgIEZB
U1RfUkVUVVJOX0lGX05PX0ZST05URU5EUyh2b2lkKCkpOworICAgIGlmIChJbnN0cnVtZW50aW5n
QWdlbnRzKiBpbnN0cnVtZW50aW5nQWdlbnRzID0gaW5zdHJ1bWVudGluZ0FnZW50c0ZvckRvY3Vt
ZW50KGRvY3VtZW50KSkKKyAgICAgICAgZGlkUmVnaXN0ZXJOYW1lZEZsb3dDb250ZW50RWxlbWVu
dEltcGwoaW5zdHJ1bWVudGluZ0FnZW50cywgZG9jdW1lbnQsIG5hbWVkRmxvdywgY29udGVudEVs
ZW1lbnQsIG5leHRDb250ZW50RWxlbWVudCk7CisjZWxzZQorICAgIFVOVVNFRF9QQVJBTShkb2N1
bWVudCk7CisgICAgVU5VU0VEX1BBUkFNKG5hbWVkRmxvdyk7CisgICAgVU5VU0VEX1BBUkFNKGNv
bnRlbnRFbGVtZW50KTsKKyAgICBVTlVTRURfUEFSQU0obmV4dENvbnRlbnRFbGVtZW50KTsKKyNl
bmRpZgorfQorCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFVucmVn
aXN0ZXJOYW1lZEZsb3dDb250ZW50RWxlbWVudChEb2N1bWVudCogZG9jdW1lbnQsIFdlYktpdE5h
bWVkRmxvdyogbmFtZWRGbG93LCBOb2RlKiBjb250ZW50RWxlbWVudCkKK3sKKyNpZiBFTkFCTEUo
SU5TUEVDVE9SKQorICAgIEZBU1RfUkVUVVJOX0lGX05PX0ZST05URU5EUyh2b2lkKCkpOworICAg
IGlmIChJbnN0cnVtZW50aW5nQWdlbnRzKiBpbnN0cnVtZW50aW5nQWdlbnRzID0gaW5zdHJ1bWVu
dGluZ0FnZW50c0ZvckRvY3VtZW50KGRvY3VtZW50KSkKKyAgICAgICAgZGlkVW5yZWdpc3Rlck5h
bWVkRmxvd0NvbnRlbnRFbGVtZW50SW1wbChpbnN0cnVtZW50aW5nQWdlbnRzLCBkb2N1bWVudCwg
bmFtZWRGbG93LCBjb250ZW50RWxlbWVudCk7CisjZWxzZQorICAgIFVOVVNFRF9QQVJBTShkb2N1
bWVudCk7CisgICAgVU5VU0VEX1BBUkFNKG5hbWVkRmxvdyk7CisgICAgVU5VU0VEX1BBUkFNKGNv
bnRlbnRFbGVtZW50KTsKKyNlbmRpZgorfQorCiBpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVt
ZW50YXRpb246Om1vdXNlRGlkTW92ZU92ZXJFbGVtZW50KFBhZ2UqIHBhZ2UsIGNvbnN0IEhpdFRl
c3RSZXN1bHQmIHJlc3VsdCwgdW5zaWduZWQgbW9kaWZpZXJGbGFncykKIHsKICNpZiBFTkFCTEUo
SU5TUEVDVE9SKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck5h
bWVkRmxvd1RocmVhZC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTmFtZWRG
bG93VGhyZWFkLmNwcAppbmRleCBmZTVjODcyLi44YzhjNTc4IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTmFtZWRGbG93VGhyZWFkLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTmFtZWRGbG93VGhyZWFkLmNwcApAQCAtNDQ3LDExICs0
NDcsMTMgQEAgdm9pZCBSZW5kZXJOYW1lZEZsb3dUaHJlYWQ6OnJlZ2lzdGVyTmFtZWRGbG93Q29u
dGVudEVsZW1lbnQoRWxlbWVudCYgY29udGVudEVsZW0KICAgICAgICAgdW5zaWduZWQgc2hvcnQg
cG9zaXRpb24gPSBjb250ZW50RWxlbWVudC5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbihlbGVtZW50
KTsKICAgICAgICAgaWYgKHBvc2l0aW9uICYgTm9kZTo6RE9DVU1FTlRfUE9TSVRJT05fRk9MTE9X
SU5HKSB7CiAgICAgICAgICAgICBtX2NvbnRlbnRFbGVtZW50cy5pbnNlcnRCZWZvcmUoZWxlbWVu
dCwgJmNvbnRlbnRFbGVtZW50KTsKKyAgICAgICAgICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlv
bjo6ZGlkUmVnaXN0ZXJOYW1lZEZsb3dDb250ZW50RWxlbWVudCgmZG9jdW1lbnQoKSwgbV9uYW1l
ZEZsb3cuZ2V0KCksICZjb250ZW50RWxlbWVudCwgZWxlbWVudCk7CiAgICAgICAgICAgICByZXR1
cm47CiAgICAgICAgIH0KICAgICB9CiAKICAgICBtX2NvbnRlbnRFbGVtZW50cy5hZGQoJmNvbnRl
bnRFbGVtZW50KTsKKyAgICBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlZ2lzdGVyTmFt
ZWRGbG93Q29udGVudEVsZW1lbnQoJmRvY3VtZW50KCksIG1fbmFtZWRGbG93LmdldCgpLCAmY29u
dGVudEVsZW1lbnQpOwogfQogCiB2b2lkIFJlbmRlck5hbWVkRmxvd1RocmVhZDo6dW5yZWdpc3Rl
ck5hbWVkRmxvd0NvbnRlbnRFbGVtZW50KEVsZW1lbnQmIGNvbnRlbnRFbGVtZW50KQpAQCAtNDY1
LDYgKzQ2Nyw4IEBAIHZvaWQgUmVuZGVyTmFtZWRGbG93VGhyZWFkOjp1bnJlZ2lzdGVyTmFtZWRG
bG93Q29udGVudEVsZW1lbnQoRWxlbWVudCYgY29udGVudEVsCiAKICAgICBpZiAoY2FuQmVEZXN0
cm95ZWQoKSkKICAgICAgICAgc2V0TWFya0ZvckRlc3RydWN0aW9uKCk7CisKKyAgICBJbnNwZWN0
b3JJbnN0cnVtZW50YXRpb246OmRpZFVucmVnaXN0ZXJOYW1lZEZsb3dDb250ZW50RWxlbWVudCgm
ZG9jdW1lbnQoKSwgbV9uYW1lZEZsb3cuZ2V0KCksICZjb250ZW50RWxlbWVudCk7CiB9CiAKIGJv
b2wgUmVuZGVyTmFtZWRGbG93VGhyZWFkOjpoYXNDb250ZW50RWxlbWVudChFbGVtZW50JiBjb250
ZW50RWxlbWVudCkgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFu
Z2VMb2cgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvQ2hhbmdlTG9nCmluZGV4IDA3MTU4MTcuLmU1
OGU3N2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL1dlYkluc3BlY3RvclVJL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDEzLTEw
LTI4ICBBbGV4YW5kcnUgQ2hpY3VsaXRhICA8YWNoaWN1QGFkb2JlLmNvbT4KKworICAgICAgICBX
ZWIgSW5zcGVjdG9yOiBDU1MgUmVnaW9uczogQWRkIHByb3RvY29sIEFQSSB0byBleHBvc2UgY29u
dGVudCBub2RlcyBhZGRpdGlvbi9yZW1vdmFsCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xMjM0MjQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBFeHBvc2VkIHRoZSBuZXcgQ1NTIEFnZW50IGV2ZW50cyB0byB0
aGUgQ29udGVudEZsb3cgY2xhc3MgdGhhdCB3aWxsIG5vdyBtYWludGFpbgorICAgICAgICBhIGxp
c3Qgb2Ygbm9kZXMgaW4gdGhlICJjb250ZW50Tm9kZXMiIHByb3BlcnR5LgorCisgICAgICAgICog
VXNlckludGVyZmFjZS9DU1NPYnNlcnZlci5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5DU1NP
YnNlcnZlci5wcm90b3R5cGUucmVnaW9uT3ZlcnNldENoYW5nZWQpOgorICAgICAgICAoV2ViSW5z
cGVjdG9yLkNTU09ic2VydmVyLnByb3RvdHlwZS5yZWdpc3RlcmVkTmFtZWRGbG93Q29udGVudEVs
ZW1lbnQpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkNTU09ic2VydmVyLnByb3RvdHlwZS51bnJl
Z2lzdGVyZWROYW1lZEZsb3dDb250ZW50RWxlbWVudCk6CisgICAgICAgICogVXNlckludGVyZmFj
ZS9Db250ZW50Rmxvdy5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Db250ZW50Rmxvdyk6Cisg
ICAgICAgIChXZWJJbnNwZWN0b3IuQ29udGVudEZsb3cucHJvdG90eXBlLnNldCBvdmVyc2V0KToK
KyAgICAgICAgKFdlYkluc3BlY3Rvci5Db250ZW50Rmxvdy5wcm90b3R5cGUuZ2V0IGNvbnRlbnRO
b2Rlcyk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29udGVudEZsb3cucHJvdG90eXBlLmluc2Vy
dENvbnRlbnROb2RlQmVmb3JlKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Db250ZW50Rmxvdy5w
cm90b3R5cGUuYXBwZW5kQ29udGVudE5vZGUpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkNvbnRl
bnRGbG93LnByb3RvdHlwZS5yZW1vdmVDb250ZW50Tm9kZSk6CisgICAgICAgICogVXNlckludGVy
ZmFjZS9ET01UcmVlTWFuYWdlci5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5ET01UcmVlTWFu
YWdlci5wcm90b3R5cGUuX2NyZWF0ZUNvbnRlbnRGbG93RnJvbVBheWxvYWQpOgorICAgICAgICAo
V2ViSW5zcGVjdG9yLkRPTVRyZWVNYW5hZ2VyLnByb3RvdHlwZS5fdXBkYXRlQ29udGVudEZsb3dG
cm9tUGF5bG9hZCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuRE9NVHJlZU1hbmFnZXIucHJvdG90
eXBlLnJlZ2lvbk92ZXJzZXRDaGFuZ2VkKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5ET01UcmVl
TWFuYWdlci5wcm90b3R5cGUucmVnaXN0ZXJlZE5hbWVkRmxvd0NvbnRlbnRFbGVtZW50KToKKyAg
ICAgICAgKFdlYkluc3BlY3Rvci5ET01UcmVlTWFuYWdlci5wcm90b3R5cGUudW5yZWdpc3RlcmVk
TmFtZWRGbG93Q29udGVudEVsZW1lbnQpOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvSW5zcGVj
dG9yQmFja2VuZENvbW1hbmRzLmpzOgorCiAyMDEzLTEwLTI1ICBKb3NlcGggUGVjb3Jhcm8gIDxw
ZWNvcmFyb0BhcHBsZS5jb20+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogUHJldHR5UHJpbnRp
bmcgdG9vbCBzaG91bGQgaGF2ZSBzYXZlIGJ1dHRvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYklu
c3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvQ1NTT2JzZXJ2ZXIuanMgYi9Tb3VyY2UvV2ViSW5zcGVj
dG9yVUkvVXNlckludGVyZmFjZS9DU1NPYnNlcnZlci5qcwppbmRleCA1NWYzNDQyLi40NGZlZDI0
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9DU1NPYnNl
cnZlci5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9DU1NPYnNl
cnZlci5qcwpAQCAtNzEsNiArNzEsMTYgQEAgV2ViSW5zcGVjdG9yLkNTU09ic2VydmVyLnByb3Rv
dHlwZSA9IHsKICAgICByZWdpb25PdmVyc2V0Q2hhbmdlZDogZnVuY3Rpb24obmFtZWRGbG93KQog
ICAgIHsKICAgICAgICAgV2ViSW5zcGVjdG9yLmRvbVRyZWVNYW5hZ2VyLnJlZ2lvbk92ZXJzZXRD
aGFuZ2VkKG5hbWVkRmxvdyk7CisgICAgfSwKKworICAgIHJlZ2lzdGVyZWROYW1lZEZsb3dDb250
ZW50RWxlbWVudDogZnVuY3Rpb24oZG9jdW1lbnROb2RlSWQsIGZsb3dOYW1lLCBjb250ZW50Tm9k
ZUlkLCBuZXh0Q29udGVudEVsZW1lbnROb2RlSWQpCisgICAgeworICAgICAgICBXZWJJbnNwZWN0
b3IuZG9tVHJlZU1hbmFnZXIucmVnaXN0ZXJlZE5hbWVkRmxvd0NvbnRlbnRFbGVtZW50KGRvY3Vt
ZW50Tm9kZUlkLCBmbG93TmFtZSwgY29udGVudE5vZGVJZCwgbmV4dENvbnRlbnRFbGVtZW50Tm9k
ZUlkKTsKKyAgICB9LAorCisgICAgdW5yZWdpc3RlcmVkTmFtZWRGbG93Q29udGVudEVsZW1lbnQ6
IGZ1bmN0aW9uKGRvY3VtZW50Tm9kZUlkLCBmbG93TmFtZSwgY29udGVudE5vZGVJZCkKKyAgICB7
CisgICAgICAgIFdlYkluc3BlY3Rvci5kb21UcmVlTWFuYWdlci51bnJlZ2lzdGVyZWROYW1lZEZs
b3dDb250ZW50RWxlbWVudChkb2N1bWVudE5vZGVJZCwgZmxvd05hbWUsIGNvbnRlbnROb2RlSWQp
OwogICAgIH0KIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL0NvbnRlbnRGbG93LmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvQ29udGVudEZsb3cuanMKaW5kZXggN2YzYTcxMC4uZDJlMmM0NCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvQ29udGVudEZsb3cuanMKKysrIGIvU291
cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvQ29udGVudEZsb3cuanMKQEAgLTI3LDE3
ICsyNywyMCBAQAogICogU1VDSCBEQU1BR0UuCiAgKi8KIAotV2ViSW5zcGVjdG9yLkNvbnRlbnRG
bG93ID0gZnVuY3Rpb24oZG9jdW1lbnROb2RlSWRlbnRpZmllciwgbmFtZSwgb3ZlcnNldCkKK1dl
Ykluc3BlY3Rvci5Db250ZW50RmxvdyA9IGZ1bmN0aW9uKGRvY3VtZW50Tm9kZUlkZW50aWZpZXIs
IG5hbWUsIG92ZXJzZXQsIGNvbnRlbnROb2RlcykKIHsKICAgICBXZWJJbnNwZWN0b3IuT2JqZWN0
LmNhbGwodGhpcyk7CiAKICAgICB0aGlzLl9kb2N1bWVudE5vZGVJZGVudGlmaWVyID0gZG9jdW1l
bnROb2RlSWRlbnRpZmllcjsKICAgICB0aGlzLl9uYW1lID0gbmFtZTsKICAgICB0aGlzLl9vdmVy
c2V0ID0gb3ZlcnNldDsKKyAgICB0aGlzLl9jb250ZW50Tm9kZXMgPSBjb250ZW50Tm9kZXM7CiB9
OwogCiBXZWJJbnNwZWN0b3IuQ29udGVudEZsb3cuRXZlbnQgPSB7Ci0gICAgT3ZlcnNldFdhc0No
YW5nZWQ6ICJjb250ZW50LWZsb3ctb3ZlcnNldC13YXMtY2hhbmdlZCIKKyAgICBPdmVyc2V0V2Fz
Q2hhbmdlZDogImNvbnRlbnQtZmxvdy1vdmVyc2V0LXdhcy1jaGFuZ2VkIiwKKyAgICBDb250ZW50
Tm9kZVdhc0FkZGVkOiAiY29udGVudC1mbG93LWNvbnRlbnQtbm9kZS13YXMtYWRkZWQiLAorICAg
IENvbnRlbnROb2RlV2FzUmVtb3ZlZDogImNvbnRlbnQtZmxvdy1jb250ZW50LW5vZGUtd2FzLXJl
bW92ZWQiCiB9OwogCiBXZWJJbnNwZWN0b3IuQ29udGVudEZsb3cucHJvdG90eXBlID0gewpAQCAt
NzMsOCArNzYsMzQgQEAgV2ViSW5zcGVjdG9yLkNvbnRlbnRGbG93LnByb3RvdHlwZSA9IHsKICAg
ICAgICAgICAgIHJldHVybjsKICAgICAgICAgdGhpcy5fb3ZlcnNldCA9IG92ZXJzZXQ7CiAgICAg
ICAgIHRoaXMuZGlzcGF0Y2hFdmVudFRvTGlzdGVuZXJzKFdlYkluc3BlY3Rvci5Db250ZW50Rmxv
dy5FdmVudC5GbG93T3ZlcnNldFdhc0NoYW5nZWQpOwotICAgIH0KKyAgICB9LAogCisgICAgZ2V0
IGNvbnRlbnROb2RlcygpCisgICAgeworICAgICAgICByZXR1cm4gdGhpcy5fY29udGVudE5vZGVz
OworICAgIH0sCisKKyAgICBpbnNlcnRDb250ZW50Tm9kZUJlZm9yZTogZnVuY3Rpb24oY29udGVu
dE5vZGUsIHJlZmVyZW5jZU5vZGUpCisgICAgeworICAgICAgICB2YXIgaW5kZXggPSB0aGlzLl9j
b250ZW50Tm9kZXMuaW5kZXhPZihyZWZlcmVuY2VOb2RlKTsKKyAgICAgICAgY29uc29sZS5hc3Nl
cnQoaW5kZXggIT09IC0xKTsKKyAgICAgICAgdGhpcy5fY29udGVudE5vZGVzLnNwbGljZShpbmRl
eCwgMCwgY29udGVudE5vZGUpOworICAgICAgICB0aGlzLmRpc3BhdGNoRXZlbnRUb0xpc3RlbmVy
cyhXZWJJbnNwZWN0b3IuQ29udGVudEZsb3cuRXZlbnQuQ29udGVudE5vZGVXYXNBZGRlZCwge25v
ZGU6IGNvbnRlbnROb2RlLCBiZWZvcmU6IHJlZmVyZW5jZU5vZGV9KTsKKyAgICB9LAorCisgICAg
YXBwZW5kQ29udGVudE5vZGU6IGZ1bmN0aW9uKGNvbnRlbnROb2RlKQorICAgIHsKKyAgICAgICAg
dGhpcy5fY29udGVudE5vZGVzLnB1c2goY29udGVudE5vZGUpOworICAgICAgICB0aGlzLmRpc3Bh
dGNoRXZlbnRUb0xpc3RlbmVycyhXZWJJbnNwZWN0b3IuQ29udGVudEZsb3cuRXZlbnQuQ29udGVu
dE5vZGVXYXNBZGRlZCwge25vZGU6IGNvbnRlbnROb2RlfSk7CisgICAgfSwKKworICAgIHJlbW92
ZUNvbnRlbnROb2RlOiBmdW5jdGlvbihjb250ZW50Tm9kZSkKKyAgICB7CisgICAgICAgIHZhciBp
bmRleCA9IHRoaXMuX2NvbnRlbnROb2Rlcy5pbmRleE9mKGNvbnRlbnROb2RlKTsKKyAgICAgICAg
Y29uc29sZS5hc3NlcnQoaW5kZXggIT09IC0xKTsKKyAgICAgICAgdGhpcy5fY29udGVudE5vZGVz
LnNwbGljZShpbmRleCwgMSk7CisgICAgICAgIHRoaXMuZGlzcGF0Y2hFdmVudFRvTGlzdGVuZXJz
KFdlYkluc3BlY3Rvci5Db250ZW50Rmxvdy5FdmVudC5Db250ZW50Tm9kZVdhc1JlbW92ZWQsIHtu
b2RlOiBjb250ZW50Tm9kZX0pOworICAgIH0KIH07CiAKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvRE9NVHJlZU1hbmFnZXIuanMgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9ET01UcmVlTWFuYWdlci5qcwppbmRleCBhZTdmYWM5
Li4zN2RmOTdjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFj
ZS9ET01UcmVlTWFuYWdlci5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVy
ZmFjZS9ET01UcmVlTWFuYWdlci5qcwpAQCAtNTM1LDEzICs1MzUsMTcgQEAgV2ViSW5zcGVjdG9y
LkRPTVRyZWVNYW5hZ2VyLnByb3RvdHlwZSA9IHsKIAogICAgIF9jcmVhdGVDb250ZW50Rmxvd0Zy
b21QYXlsb2FkOiBmdW5jdGlvbihmbG93UGF5bG9hZCkKICAgICB7Ci0gICAgICAgIC8vIEZJWE1F
OiBDb2xsZWN0IHRoZSBjb250ZW50IGFuZCByZWdpb25zIGZyb20gdGhlIHBheWxvYWQuCi0gICAg
ICAgIHJldHVybiBuZXcgV2ViSW5zcGVjdG9yLkNvbnRlbnRGbG93KGZsb3dQYXlsb2FkLmRvY3Vt
ZW50Tm9kZUlkLCBmbG93UGF5bG9hZC5uYW1lLCBmbG93UGF5bG9hZC5vdmVyc2V0KTsKKyAgICAg
ICAgLy8gRklYTUU6IENvbGxlY3QgdGhlIHJlZ2lvbnMgZnJvbSB0aGUgcGF5bG9hZC4KKyAgICAg
ICAgcmV0dXJuIG5ldyBXZWJJbnNwZWN0b3IuQ29udGVudEZsb3coZmxvd1BheWxvYWQuZG9jdW1l
bnROb2RlSWQsIGZsb3dQYXlsb2FkLm5hbWUsIGZsb3dQYXlsb2FkLm92ZXJzZXQsIGZsb3dQYXls
b2FkLmNvbnRlbnQubWFwKHRoaXMubm9kZUZvcklkLmJpbmQodGhpcykpKTsKICAgICB9LAogCiAg
ICAgX3VwZGF0ZUNvbnRlbnRGbG93RnJvbVBheWxvYWQ6IGZ1bmN0aW9uKGNvbnRlbnRGbG93LCBm
bG93UGF5bG9hZCkKICAgICB7Ci0gICAgICAgIC8vIEZJWE1FOiBDb2xsZWN0IHRoZSBjb250ZW50
IGFuZCByZWdpb25zIGZyb20gdGhlIHBheWxvYWQuCisgICAgICAgIGNvbnNvbGUuYXNzZXJ0KGNv
bnRlbnRGbG93LmNvbnRlbnROb2Rlcy5sZW5ndGggPT09IGZsb3dQYXlsb2FkLmNvbnRlbnQubGVu
Z3RoKTsKKyAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBjb250ZW50Rmxvdy5jb250ZW50Tm9k
ZXMubGVuZ3RoOyArK2kpCisgICAgICAgICAgICBjb25zb2xlLmFzc2VydChjb250ZW50Rmxvdy5j
b250ZW50Tm9kZXNbaV0uaWQgPT09IGZsb3dQYXlsb2FkLmNvbnRlbnRbaV0pOworCisgICAgICAg
IC8vIEZJWE1FOiBDb2xsZWN0IHRoZSByZWdpb25zIGZyb20gdGhlIHBheWxvYWQuCiAgICAgICAg
IGNvbnRlbnRGbG93Lm92ZXJzZXQgPSBmbG93UGF5bG9hZC5vdmVyc2V0OwogICAgIH0sCiAKQEAg
LTYwNCw2ICs2MDgsMjcgQEAgV2ViSW5zcGVjdG9yLkRPTVRyZWVNYW5hZ2VyLnByb3RvdHlwZSA9
IHsKICAgICByZWdpb25PdmVyc2V0Q2hhbmdlZDogZnVuY3Rpb24oZmxvd1BheWxvYWQpCiAgICAg
ewogICAgICAgICB0aGlzLl9zZW5kTmFtZWRGbG93VXBkYXRlRXZlbnRzKGZsb3dQYXlsb2FkKTsK
KyAgICB9LAorCisgICAgcmVnaXN0ZXJlZE5hbWVkRmxvd0NvbnRlbnRFbGVtZW50OiBmdW5jdGlv
bihkb2N1bWVudE5vZGVJZGVudGlmaWVyLCBmbG93TmFtZSwgY29udGVudE5vZGVJZCwgbmV4dENv
bnRlbnRFbGVtZW50Tm9kZUlkKQorICAgIHsKKyAgICAgICAgdmFyIGZsb3dLZXkgPSBXZWJJbnNw
ZWN0b3IuRE9NVHJlZU1hbmFnZXIuX2Zsb3dQYXlsb2FkSGFzaEtleSh7ZG9jdW1lbnROb2RlSWQ6
IGRvY3VtZW50Tm9kZUlkZW50aWZpZXIsIG5hbWU6IGZsb3dOYW1lfSk7CisgICAgICAgIGNvbnNv
bGUuYXNzZXJ0KHRoaXMuX2Zsb3dzLmhhc093blByb3BlcnR5KGZsb3dLZXkpKTsKKworICAgICAg
ICB2YXIgZmxvdyA9IHRoaXMuX2Zsb3dzW2Zsb3dLZXldOworICAgICAgICB2YXIgY29udGVudE5v
ZGUgPSB0aGlzLm5vZGVGb3JJZChjb250ZW50Tm9kZUlkKTsKKworICAgICAgICBpZiAobmV4dENv
bnRlbnRFbGVtZW50Tm9kZUlkKQorICAgICAgICAgICAgZmxvdy5pbnNlcnRDb250ZW50Tm9kZUJl
Zm9yZShjb250ZW50Tm9kZSwgdGhpcy5ub2RlRm9ySWQobmV4dENvbnRlbnRFbGVtZW50Tm9kZUlk
KSk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGZsb3cuYXBwZW5kQ29udGVudE5vZGUoY29u
dGVudE5vZGUpOworICAgIH0sCisKKyAgICB1bnJlZ2lzdGVyZWROYW1lZEZsb3dDb250ZW50RWxl
bWVudDogZnVuY3Rpb24oZG9jdW1lbnROb2RlSWRlbnRpZmllciwgZmxvd05hbWUsIGNvbnRlbnRO
b2RlSWQpCisgICAgeworICAgICAgICB2YXIgZmxvd0tleSA9IFdlYkluc3BlY3Rvci5ET01UcmVl
TWFuYWdlci5fZmxvd1BheWxvYWRIYXNoS2V5KHtkb2N1bWVudE5vZGVJZDogZG9jdW1lbnROb2Rl
SWRlbnRpZmllciwgbmFtZTogZmxvd05hbWV9KTsKKyAgICAgICAgY29uc29sZS5hc3NlcnQodGhp
cy5fZmxvd3MuaGFzT3duUHJvcGVydHkoZmxvd0tleSkpOworICAgICAgICB0aGlzLl9mbG93c1tm
bG93S2V5XS5yZW1vdmVDb250ZW50Tm9kZSh0aGlzLm5vZGVGb3JJZChjb250ZW50Tm9kZUlkKSk7
CiAgICAgfQogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVy
ZmFjZS9JbnNwZWN0b3JCYWNrZW5kQ29tbWFuZHMuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkv
VXNlckludGVyZmFjZS9JbnNwZWN0b3JCYWNrZW5kQ29tbWFuZHMuanMKaW5kZXggOGM3ZjQzYS4u
MTk3NmY5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2Uv
SW5zcGVjdG9yQmFja2VuZENvbW1hbmRzLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9V
c2VySW50ZXJmYWNlL0luc3BlY3RvckJhY2tlbmRDb21tYW5kcy5qcwpAQCAtMjQyLDYgKzI0Miw4
IEBAIEluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJFdmVudCgiQ1NTLm5hbWVkRmxvd0NyZWF0ZWQi
LCBbIm5hbWVkRmxvdyJdKTsKIEluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJFdmVudCgiQ1NTLm5h
bWVkRmxvd1JlbW92ZWQiLCBbImRvY3VtZW50Tm9kZUlkIiwgImZsb3dOYW1lIl0pOwogSW5zcGVj
dG9yQmFja2VuZC5yZWdpc3RlckV2ZW50KCJDU1MucmVnaW9uTGF5b3V0VXBkYXRlZCIsIFsibmFt
ZWRGbG93Il0pOwogSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckV2ZW50KCJDU1MucmVnaW9uT3Zl
cnNldENoYW5nZWQiLCBbIm5hbWVkRmxvdyJdKTsKK0luc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJF
dmVudCgiQ1NTLnJlZ2lzdGVyZWROYW1lZEZsb3dDb250ZW50RWxlbWVudCIsIFsiZG9jdW1lbnRO
b2RlSWQiLCAiZmxvd05hbWUiLCAiY29udGVudE5vZGVJZCIsICJuZXh0Q29udGVudE5vZGVJZCJd
KTsKK0luc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJFdmVudCgiQ1NTLnVucmVnaXN0ZXJlZE5hbWVk
Rmxvd0NvbnRlbnRFbGVtZW50IiwgWyJkb2N1bWVudE5vZGVJZCIsICJmbG93TmFtZSIsICJjb250
ZW50Tm9kZUlkIl0pOwogSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckNvbW1hbmQoIkNTUy5lbmFi
bGUiLCBbXSwgW10pOwogSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckNvbW1hbmQoIkNTUy5kaXNh
YmxlIiwgW10sIFtdKTsKIEluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJDU1MuZ2V0
TWF0Y2hlZFN0eWxlc0Zvck5vZGUiLCBbeyJuYW1lIjogIm5vZGVJZCIsICJ0eXBlIjogIm51bWJl
ciIsICJvcHRpb25hbCI6IGZhbHNlfSwgeyJuYW1lIjogImluY2x1ZGVQc2V1ZG8iLCAidHlwZSI6
ICJib29sZWFuIiwgIm9wdGlvbmFsIjogdHJ1ZX0sIHsibmFtZSI6ICJpbmNsdWRlSW5oZXJpdGVk
IiwgInR5cGUiOiAiYm9vbGVhbiIsICJvcHRpb25hbCI6IHRydWV9XSwgWyJtYXRjaGVkQ1NTUnVs
ZXMiLCAicHNldWRvRWxlbWVudHMiLCAiaW5oZXJpdGVkIl0pOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>