<?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>204785</bug_id>
          
          <creation_ts>2019-12-02 22:38:22 -0800</creation_ts>
          <short_desc>Web Inspector: add WI.EngineeringSetting and WI.DebugSetting to avoid callsite checking</short_desc>
          <delta_ts>2019-12-05 16:30:47 -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</component>
          <version>WebKit 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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Devin Rousso">hi</reporter>
          <assigned_to name="Devin Rousso">hi</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>hi</cc>
    
    <cc>inspector-bugzilla-changes</cc>
    
    <cc>joepeck</cc>
    
    <cc>timothy</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1594920</commentid>
    <comment_count>0</comment_count>
    <who name="Devin Rousso">hi</who>
    <bug_when>2019-12-02 22:38:22 -0800</bug_when>
    <thetext>We have lots of `WI.isEngineeringBuild &amp;&amp; WI.settings.engineering___.value` anywhere we need to use engineering settings (similar case for debug settings), when in reality the callsites really don&apos;t need to be concerned with this logic.  Ideally, they&apos;d just get the engineering/debug setting&apos;s value and the value getter itself would know whether to use the actual value or the default value based on `WI.isEngineeringBuild`/`WI.isDebugUIEnabled`.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1594921</commentid>
    <comment_count>1</comment_count>
      <attachid>384691</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2019-12-02 22:43:00 -0800</bug_when>
    <thetext>Created attachment 384691
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1595932</commentid>
    <comment_count>2</comment_count>
      <attachid>384691</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-12-05 12:19:27 -0800</bug_when>
    <thetext>Comment on attachment 384691
Patch

Rejecting attachment 384691 from commit-queue.

Failed to run &quot;[&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=webkit-queues.webkit.org&apos;, &apos;--bot-id=webkit-cq-03&apos;, &apos;apply-attachment&apos;, &apos;--no-update&apos;, &apos;--non-interactive&apos;, 384691, &apos;--port=mac&apos;]&quot; exit_code: 2 cwd: /Volumes/Data/EWS/WebKit

Logging in as commit-queue@webkit.org...
Fetching: https://bugs.webkit.org/attachment.cgi?id=384691&amp;action=edit
Fetching: https://bugs.webkit.org/show_bug.cgi?id=204785&amp;ctype=xml&amp;excludefield=attachmentdata
Processing 1 patch from 1 bug.
Processing patch 384691 from bug 204785.
Fetching: https://bugs.webkit.org/attachment.cgi?id=384691
Failed to run &quot;[u&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/svn-apply&apos;, &apos;--force&apos;, &apos;--reviewer&apos;, u&apos;Timothy Hatcher&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

Parsed 17 diffs from patch file(s).
patching file Source/WebInspectorUI/ChangeLog
Hunk #1 succeeded at 1 with fuzz 3.
patching file Source/WebInspectorUI/UserInterface/Base/Main.js
patching file Source/WebInspectorUI/UserInterface/Base/Setting.js
patching file Source/WebInspectorUI/UserInterface/Controllers/DOMManager.js
patching file Source/WebInspectorUI/UserInterface/Controllers/DebuggerManager.js
patching file Source/WebInspectorUI/UserInterface/Controllers/DiagnosticController.js
patching file Source/WebInspectorUI/UserInterface/Debug/UncaughtExceptionReporter.js
patching file Source/WebInspectorUI/UserInterface/Models/CSSProperty.js
patching file Source/WebInspectorUI/UserInterface/Models/CSSStyleDeclaration.js
patching file Source/WebInspectorUI/UserInterface/Protocol/RemoteObject.js
patching file Source/WebInspectorUI/UserInterface/Proxies/HeapSnapshotEdgeProxy.js
patching file Source/WebInspectorUI/UserInterface/Views/ConsoleMessageView.js
Hunk #1 FAILED at 434.
1 out of 1 hunk FAILED -- saving rejects to file Source/WebInspectorUI/UserInterface/Views/ConsoleMessageView.js.rej
patching file Source/WebInspectorUI/UserInterface/Views/HeapSnapshotDataGridTree.js
patching file Source/WebInspectorUI/UserInterface/Views/OpenResourceDialog.js
patching file Source/WebInspectorUI/UserInterface/Views/SpreadsheetCSSStyleDeclarationEditor.js
patching file Source/WebInspectorUI/UserInterface/Views/StackTraceView.js
Hunk #1 succeeded at 35 with fuzz 1.
patching file Source/WebInspectorUI/UserInterface/Views/View.js

Failed to run &quot;[u&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/svn-apply&apos;, &apos;--force&apos;, &apos;--reviewer&apos;, u&apos;Timothy Hatcher&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

Full output: https://webkit-queues.webkit.org/results/13287084</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1595990</commentid>
    <comment_count>3</comment_count>
      <attachid>384947</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2019-12-05 14:13:09 -0800</bug_when>
    <thetext>Created attachment 384947
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1596023</commentid>
    <comment_count>4</comment_count>
      <attachid>384947</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-12-05 14:48:56 -0800</bug_when>
    <thetext>Comment on attachment 384947
Patch

Clearing flags on attachment: 384947

Committed r253172: &lt;https://trac.webkit.org/changeset/253172&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1596024</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-12-05 14:48:58 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1596026</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-12-05 14:49:20 -0800</bug_when>
    <thetext>&lt;rdar://problem/57678300&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1596093</commentid>
    <comment_count>7</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2019-12-05 16:30:47 -0800</bug_when>
    <thetext>Nice!</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>384691</attachid>
            <date>2019-12-02 22:43:00 -0800</date>
            <delta_ts>2019-12-05 14:13:07 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-204785-20191202224259.patch</filename>
            <type>text/plain</type>
            <size>24818</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCmluZGV4IDVlMWRhMzRhN2ZmNDY0OTQ1MzA0MzhjZTVjNzAz
YmM2MWY3ZTdhNjQuLmUyODMyMzcwMTRmOWVjMzA1NGIwOWJkOTUwMDRiMTk2NTJhYzkxYjcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU0IEBACisyMDE5LTEyLTAyICBEZXZp
biBSb3Vzc28gIDxkcm91c3NvQGFwcGxlLmNvbT4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiBh
ZGQgV0kuRW5naW5lZXJpbmdTZXR0aW5nIGFuZCBXSS5EZWJ1Z1NldHRpbmcgdG8gYXZvaWQgY2Fs
bHNpdGUgY2hlY2tpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIwNDc4NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgICogVXNlckludGVyZmFjZS9CYXNlL1NldHRpbmcuanM6CisgICAgICAgIChXSS5TZXR0
aW5nLnByb3RvdHlwZS5nZXQgZGVmYXVsdFZhbHVlKTogQWRkZWQuCisgICAgICAgIChXSS5Fbmdp
bmVlcmluZ1NldHRpbmcucHJvdG90eXBlLmdldCB2YWx1ZSk6IEFkZGVkLgorICAgICAgICAoV0ku
RW5naW5lZXJpbmdTZXR0aW5nLnByb3RvdHlwZS5zZXQgdmFsdWUpOiBBZGRlZC4KKyAgICAgICAg
KFdJLkRlYnVnU2V0dGluZy5wcm90b3R5cGUuZ2V0IHZhbHVlKTogQWRkZWQuCisgICAgICAgIChX
SS5EZWJ1Z1NldHRpbmcucHJvdG90eXBlLnNldCB2YWx1ZSk6IEFkZGVkLgorICAgICAgICAoV0ku
U2V0dGluZy5wcm90b3R5cGUuZ2V0IHZhbHVlUmVzcGVjdGluZ0RlYnVnVUlBdmFpbGFiaWxpdHkp
OiBEZWxldGVkLgorICAgICAgICBPbmx5IGdldC9zZXQgdGhlIGBfdmFsdWVgIGlmIHRoZSBgV0ku
aXNFbmdpbmVlcmluZ0J1aWxkYC9gV0kuaXNEZWJ1Z1VJRW5hYmxlZCgpYC4KKworICAgICAgICAq
IFVzZXJJbnRlcmZhY2UvQmFzZS9NYWluLmpzOgorICAgICAgICAoV0kucmVzb2x2ZWRMYXlvdXRE
aXJlY3Rpb24pOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvUHJvdG9jb2wvUmVtb3RlT2JqZWN0
LmpzOgorICAgICAgICAoV0kuUmVtb3RlT2JqZWN0LnByb3RvdHlwZS5maW5kRnVuY3Rpb25Tb3Vy
Y2VDb2RlTG9jYXRpb24pOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvTW9kZWxzL0NTU1Byb3Bl
cnR5LmpzOgorICAgICAgICAoV0kuQ1NTUHJvcGVydHkucHJvdG90eXBlLl91cGRhdGVPd25lclN0
eWxlVGV4dCk6CisgICAgICAgICogVXNlckludGVyZmFjZS9Nb2RlbHMvQ1NTU3R5bGVEZWNsYXJh
dGlvbi5qczoKKyAgICAgICAgKFdJLkNTU1N0eWxlRGVjbGFyYXRpb24ucHJvdG90eXBlLnVwZGF0
ZSk6CisgICAgICAgICogVXNlckludGVyZmFjZS9Qcm94aWVzL0hlYXBTbmFwc2hvdEVkZ2VQcm94
eS5qczoKKyAgICAgICAgKFdJLkhlYXBTbmFwc2hvdEVkZ2VQcm94eS5wcm90b3R5cGUuaXNQcml2
YXRlU3ltYm9sKToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL0NvbnRyb2xsZXJzL0RPTU1hbmFn
ZXIuanM6CisgICAgICAgIChXSS5ET01NYW5hZ2VyLnByb3RvdHlwZS5zdXBwb3J0c0VkaXRpbmdV
c2VyQWdlbnRTaGFkb3dUcmVlcyk6CisgICAgICAgICogVXNlckludGVyZmFjZS9Db250cm9sbGVy
cy9EZWJ1Z2dlck1hbmFnZXIuanM6CisgICAgICAgIChXSS5EZWJ1Z2dlck1hbmFnZXIucHJvdG90
eXBlLmdldCBrbm93bk5vblJlc291cmNlU2NyaXB0cyk6CisgICAgICAgIChXSS5EZWJ1Z2dlck1h
bmFnZXIucHJvdG90eXBlLmRlYnVnZ2VyRGlkUGF1c2UpOgorICAgICAgICAoV0kuRGVidWdnZXJN
YW5hZ2VyLnByb3RvdHlwZS5zY3JpcHREaWRQYXJzZSk6CisgICAgICAgICogVXNlckludGVyZmFj
ZS9Db250cm9sbGVycy9EaWFnbm9zdGljQ29udHJvbGxlci5qczoKKyAgICAgICAgKFdJLkRpYWdu
b3N0aWNDb250cm9sbGVyKToKKyAgICAgICAgKFdJLkRpYWdub3N0aWNDb250cm9sbGVyLnByb3Rv
dHlwZS5fZGVidWdBdXRvTG9nRGlhZ25vc3RpY0V2ZW50c1NldHRpbmdEaWRDaGFuZ2UpOgorICAg
ICAgICAoV0kuRGlhZ25vc3RpY0NvbnRyb2xsZXIucHJvdG90eXBlLl91cGRhdGVSZWNvcmRlclN0
YXRlcyk6CisgICAgICAgICogVXNlckludGVyZmFjZS9WaWV3cy9Db25zb2xlTWVzc2FnZVZpZXcu
anM6CisgICAgICAgIChXSS5Db25zb2xlTWVzc2FnZVZpZXcucHJvdG90eXBlLl9hcHBlbmRMb2Nh
dGlvbkxpbmspOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvSGVhcFNuYXBzaG90RGF0
YUdyaWRUcmVlLmpzOgorICAgICAgICAoV0kuSGVhcFNuYXBzaG90SW5zdGFuY2VzRGF0YUdyaWRU
cmVlLnByb3RvdHlwZS5wb3B1bGF0ZVRvcExldmVsKToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNl
L1ZpZXdzL09wZW5SZXNvdXJjZURpYWxvZy5qczoKKyAgICAgICAgKFdJLk9wZW5SZXNvdXJjZURp
YWxvZy5wcm90b3R5cGUuX2FkZFNjcmlwdHNGb3JUYXJnZXQpOgorICAgICAgICAqIFVzZXJJbnRl
cmZhY2UvVmlld3MvU3ByZWFkc2hlZXRDU1NTdHlsZURlY2xhcmF0aW9uRWRpdG9yLmpzOgorICAg
ICAgICAoV0kuU3ByZWFkc2hlZXRDU1NTdHlsZURlY2xhcmF0aW9uRWRpdG9yKToKKyAgICAgICAg
KiBVc2VySW50ZXJmYWNlL1ZpZXdzL1N0YWNrVHJhY2VWaWV3LmpzOgorICAgICAgICAoV0kuU3Rh
Y2tUcmFjZVZpZXcpOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvVmlldy5qczoKKyAg
ICAgICAgKFdJLlZpZXcucHJvdG90eXBlLl9sYXlvdXRTdWJ0cmVlKToKKyAgICAgICAgKiBVc2Vy
SW50ZXJmYWNlL0RlYnVnL1VuY2F1Z2h0RXhjZXB0aW9uUmVwb3J0ZXIuanM6CisgICAgICAgICho
YW5kbGVVbmNhdWdodEV4Y2VwdGlvblJlY29yZCk6CisKIDIwMTktMTItMDIgIE5pa2l0YSBWYXNp
bHlldiAgPG52YXNpbHlldkBhcHBsZS5jb20+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogUHJv
dmlkZSBVSSB0byBjb252ZXJ0IGJldHdlZW4gc1JHQiBhbmQgcDMgY29sb3Igc3BhY2VzCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9CYXNlL01haW4uanMg
Yi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9CYXNlL01haW4uanMKaW5kZXgg
MzcxMWIyYWViMzBlNjdiNjAyMDcwN2ZkNjlmODJkMGU5NGIwNWU2ZS4uNmQ4MWNmY2I1MTI0OGIx
OWNhMzI2MDAyM2QzNDMwMTEyNGRlYTAyZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3Rv
clVJL1VzZXJJbnRlcmZhY2UvQmFzZS9NYWluLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JV
SS9Vc2VySW50ZXJmYWNlL0Jhc2UvTWFpbi5qcwpAQCAtMjY0MSw3ICsyNjQxLDcgQEAgV0kuc2V0
Wm9vbUZhY3RvciA9IGZ1bmN0aW9uKGZhY3RvcikKIFdJLnJlc29sdmVkTGF5b3V0RGlyZWN0aW9u
ID0gZnVuY3Rpb24oKQogewogICAgIGxldCBsYXlvdXREaXJlY3Rpb24gPSBXSS5zZXR0aW5ncy5k
ZWJ1Z0xheW91dERpcmVjdGlvbi52YWx1ZTsKLSAgICBpZiAoIVdJLmlzRGVidWdVSUVuYWJsZWQo
KSB8fCBsYXlvdXREaXJlY3Rpb24gPT09IFdJLkxheW91dERpcmVjdGlvbi5TeXN0ZW0pCisgICAg
aWYgKGxheW91dERpcmVjdGlvbiA9PT0gV0kuTGF5b3V0RGlyZWN0aW9uLlN5c3RlbSkKICAgICAg
ICAgbGF5b3V0RGlyZWN0aW9uID0gSW5zcGVjdG9yRnJvbnRlbmRIb3N0LnVzZXJJbnRlcmZhY2VM
YXlvdXREaXJlY3Rpb24oKTsKICAgICByZXR1cm4gbGF5b3V0RGlyZWN0aW9uOwogfTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0Jhc2UvU2V0dGluZy5q
cyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0Jhc2UvU2V0dGluZy5qcwpp
bmRleCA4MDYwYzQxOTM1NDUzYWU0Y2MyMDVjYmY2NDMyMDZlYWJkMDdkZGE4Li43ZWNiNzg4Yjdm
YjE2N2M5YTg4YmJlZDdjNTEyZGIxNjNmMWQxNWE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5z
cGVjdG9yVUkvVXNlckludGVyZmFjZS9CYXNlL1NldHRpbmcuanMKKysrIGIvU291cmNlL1dlYklu
c3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvQmFzZS9TZXR0aW5nLmpzCkBAIC04MiwxMCArODIsOCBA
QCBXSS5TZXR0aW5nID0gY2xhc3MgU2V0dGluZyBleHRlbmRzIFdJLk9iamVjdAogCiAgICAgLy8g
UHVibGljCiAKLSAgICBnZXQgbmFtZSgpCi0gICAgewotICAgICAgICByZXR1cm4gdGhpcy5fbmFt
ZTsKLSAgICB9CisgICAgZ2V0IG5hbWUoKSB7IHJldHVybiB0aGlzLl9uYW1lOyB9CisgICAgZ2V0
IGRlZmF1bHRWYWx1ZSgpIHsgcmV0dXJuIHRoaXMuX2RlZmF1bHRWYWx1ZTsgfQogCiAgICAgZ2V0
IHZhbHVlKCkKICAgICB7CkBAIC0xMTYsMTQgKzExNCw2IEBAIFdJLlNldHRpbmcgPSBjbGFzcyBT
ZXR0aW5nIGV4dGVuZHMgV0kuT2JqZWN0CiAgICAgICAgIHRoaXMuc2F2ZSgpOwogICAgIH0KIAot
ICAgIGdldCB2YWx1ZVJlc3BlY3RpbmdEZWJ1Z1VJQXZhaWxhYmlsaXR5KCkKLSAgICB7Ci0gICAg
ICAgIGlmICh0aGlzLl9uYW1lLnN0YXJ0c1dpdGgoImRlYnVnLSIpIHx8IHRoaXMuX25hbWUuc3Rh
cnRzV2l0aCgiZW5naW5lZXJpbmctIikpCi0gICAgICAgICAgICByZXR1cm4gV0kuaXNEZWJ1Z1VJ
RW5hYmxlZCgpID8gdGhpcy52YWx1ZSA6IHRoaXMuX2RlZmF1bHRWYWx1ZTsKLQotICAgICAgICBy
ZXR1cm4gdGhpcy52YWx1ZTsKLSAgICB9Ci0KICAgICBzYXZlKCkKICAgICB7CiAgICAgICAgIGlm
ICghd2luZG93Lkluc3BlY3RvclRlc3QgJiYgd2luZG93LmxvY2FsU3RvcmFnZSkgewpAQCAtMTUx
LDYgKzE0MSw0MCBAQCBXSS5TZXR0aW5nLkV2ZW50ID0gewogICAgIENoYW5nZWQ6ICJzZXR0aW5n
LWNoYW5nZWQiCiB9OwogCitXSS5FbmdpbmVlcmluZ1NldHRpbmcgPSBjbGFzcyBFbmdpbmVlcmlu
Z1NldHRpbmcgZXh0ZW5kcyBXSS5TZXR0aW5nCit7CisgICAgZ2V0IHZhbHVlKCkKKyAgICB7Cisg
ICAgICAgIGlmIChXSS5pc0VuZ2luZWVyaW5nQnVpbGQpCisgICAgICAgICAgICByZXR1cm4gc3Vw
ZXIudmFsdWU7CisgICAgICAgIHJldHVybiB0aGlzLmRlZmF1bHRWYWx1ZTsKKyAgICB9CisKKyAg
ICBzZXQgdmFsdWUodmFsdWUpCisgICAgeworICAgICAgICBjb25zb2xlLmFzc2VydChXSS5pc0Vu
Z2luZWVyaW5nQnVpbGQpOworICAgICAgICBpZiAoV0kuaXNFbmdpbmVlcmluZ0J1aWxkKQorICAg
ICAgICAgICAgc3VwZXIudmFsdWUgPSB2YWx1ZTsKKyAgICB9Cit9OworCitXSS5EZWJ1Z1NldHRp
bmcgPSBjbGFzcyBEZWJ1Z1NldHRpbmcgZXh0ZW5kcyBXSS5TZXR0aW5nCit7CisgICAgZ2V0IHZh
bHVlKCkKKyAgICB7CisgICAgICAgIGlmIChXSS5pc0RlYnVnVUlFbmFibGVkKCkpCisgICAgICAg
ICAgICByZXR1cm4gc3VwZXIudmFsdWU7CisgICAgICAgIHJldHVybiB0aGlzLmRlZmF1bHRWYWx1
ZTsKKyAgICB9CisKKyAgICBzZXQgdmFsdWUodmFsdWUpCisgICAgeworICAgICAgICBjb25zb2xl
LmFzc2VydChXSS5pc0RlYnVnVUlFbmFibGVkKCkpOworICAgICAgICBpZiAoV0kuaXNEZWJ1Z1VJ
RW5hYmxlZCgpKQorICAgICAgICAgICAgc3VwZXIudmFsdWUgPSB2YWx1ZTsKKyAgICB9Cit9Owor
CiBXSS5zZXR0aW5ncyA9IHsKICAgICBjYW52YXNSZWNvcmRpbmdBdXRvQ2FwdHVyZUVuYWJsZWQ6
IG5ldyBXSS5TZXR0aW5nKCJjYW52YXMtcmVjb3JkaW5nLWF1dG8tY2FwdHVyZS1lbmFibGVkIiwg
ZmFsc2UpLAogICAgIGNhbnZhc1JlY29yZGluZ0F1dG9DYXB0dXJlRnJhbWVDb3VudDogbmV3IFdJ
LlNldHRpbmcoImNhbnZhcy1yZWNvcmRpbmctYXV0by1jYXB0dXJlLWZyYW1lLWNvdW50IiwgMSks
CkBAIC0yMDUsMjAgKzIyOSwyMCBAQCBXSS5zZXR0aW5ncyA9IHsKICAgICBwcm90b2NvbEZpbHRl
ck11bHRpcGxleGluZ0JhY2tlbmRNZXNzYWdlczogbmV3IFdJLlNldHRpbmcoInByb3RvY29sLWZp
bHRlci1tdWx0aXBsZXhpbmctYmFja2VuZC1tZXNzYWdlcyIsIHRydWUpLAogCiAgICAgLy8gRW5n
aW5lZXJpbmcKLSAgICBlbmdpbmVlcmluZ1Nob3dJbnRlcm5hbFNjcmlwdHM6IG5ldyBXSS5TZXR0
aW5nKCJlbmdpbmVlcmluZy1zaG93LWludGVybmFsLXNjcmlwdHMiLCBmYWxzZSksCi0gICAgZW5n
aW5lZXJpbmdQYXVzZUZvckludGVybmFsU2NyaXB0czogbmV3IFdJLlNldHRpbmcoImVuZ2luZWVy
aW5nLXBhdXNlLWZvci1pbnRlcm5hbC1zY3JpcHRzIiwgZmFsc2UpLAotICAgIGVuZ2luZWVyaW5n
U2hvd0ludGVybmFsT2JqZWN0c0luSGVhcFNuYXBzaG90OiBuZXcgV0kuU2V0dGluZygiZW5naW5l
ZXJpbmctc2hvdy1pbnRlcm5hbC1vYmplY3RzLWluLWhlYXAtc25hcHNob3QiLCBmYWxzZSksCi0g
ICAgZW5naW5lZXJpbmdTaG93UHJpdmF0ZVN5bWJvbHNJbkhlYXBTbmFwc2hvdDogbmV3IFdJLlNl
dHRpbmcoImVuZ2luZWVyaW5nLXNob3ctcHJpdmF0ZS1zeW1ib2xzLWluLWhlYXAtc25hcHNob3Qi
LCBmYWxzZSksCi0gICAgZW5naW5lZXJpbmdBbGxvd0VkaXRpbmdVc2VyQWdlbnRTaGFkb3dUcmVl
czogbmV3IFdJLlNldHRpbmcoImVuZ2luZWVyaW5nLWFsbG93LWVkaXRpbmctdXNlci1hZ2VudC1z
aGFkb3ctdHJlZXMiLCBmYWxzZSksCisgICAgZW5naW5lZXJpbmdTaG93SW50ZXJuYWxTY3JpcHRz
OiBuZXcgV0kuRW5naW5lZXJpbmdTZXR0aW5nKCJlbmdpbmVlcmluZy1zaG93LWludGVybmFsLXNj
cmlwdHMiLCBmYWxzZSksCisgICAgZW5naW5lZXJpbmdQYXVzZUZvckludGVybmFsU2NyaXB0czog
bmV3IFdJLkVuZ2luZWVyaW5nU2V0dGluZygiZW5naW5lZXJpbmctcGF1c2UtZm9yLWludGVybmFs
LXNjcmlwdHMiLCBmYWxzZSksCisgICAgZW5naW5lZXJpbmdTaG93SW50ZXJuYWxPYmplY3RzSW5I
ZWFwU25hcHNob3Q6IG5ldyBXSS5FbmdpbmVlcmluZ1NldHRpbmcoImVuZ2luZWVyaW5nLXNob3ct
aW50ZXJuYWwtb2JqZWN0cy1pbi1oZWFwLXNuYXBzaG90IiwgZmFsc2UpLAorICAgIGVuZ2luZWVy
aW5nU2hvd1ByaXZhdGVTeW1ib2xzSW5IZWFwU25hcHNob3Q6IG5ldyBXSS5FbmdpbmVlcmluZ1Nl
dHRpbmcoImVuZ2luZWVyaW5nLXNob3ctcHJpdmF0ZS1zeW1ib2xzLWluLWhlYXAtc25hcHNob3Qi
LCBmYWxzZSksCisgICAgZW5naW5lZXJpbmdBbGxvd0VkaXRpbmdVc2VyQWdlbnRTaGFkb3dUcmVl
czogbmV3IFdJLkVuZ2luZWVyaW5nU2V0dGluZygiZW5naW5lZXJpbmctYWxsb3ctZWRpdGluZy11
c2VyLWFnZW50LXNoYWRvdy10cmVlcyIsIGZhbHNlKSwKIAogICAgIC8vIERlYnVnCi0gICAgZGVi
dWdTaG93Q29uc29sZUV2YWx1YXRpb25zOiBuZXcgV0kuU2V0dGluZygiZGVidWctc2hvdy1jb25z
b2xlLWV2YWx1YXRpb25zIiwgZmFsc2UpLAotICAgIGRlYnVnRW5hYmxlTGF5b3V0Rmxhc2hpbmc6
IG5ldyBXSS5TZXR0aW5nKCJkZWJ1Zy1lbmFibGUtbGF5b3V0LWZsYXNoaW5nIiwgZmFsc2UpLAot
ICAgIGRlYnVnRW5hYmxlU3R5bGVFZGl0aW5nRGVidWdNb2RlOiBuZXcgV0kuU2V0dGluZygiZGVi
dWctZW5hYmxlLXN0eWxlLWVkaXRpbmctZGVidWctbW9kZSIsIGZhbHNlKSwKLSAgICBkZWJ1Z0Vu
YWJsZVVuY2F1Z2h0RXhjZXB0aW9uUmVwb3J0ZXI6IG5ldyBXSS5TZXR0aW5nKCJkZWJ1Zy1lbmFi
bGUtdW5jYXVnaHQtZXhjZXB0aW9uLXJlcG9ydGVyIiwgdHJ1ZSksCi0gICAgZGVidWdFbmFibGVE
aWFnbm9zdGljTG9nZ2luZzogbmV3IFdJLlNldHRpbmcoImRlYnVnLWVuYWJsZS1kaWFnbm9zdGlj
LWxvZ2dpbmciLCB0cnVlKSwKLSAgICBkZWJ1Z0F1dG9Mb2dEaWFnbm9zdGljRXZlbnRzOiBuZXcg
V0kuU2V0dGluZygiZGVidWctYXV0by1sb2ctZGlhZ25vc3RpYy1ldmVudHMiLCBmYWxzZSksCi0g
ICAgZGVidWdMYXlvdXREaXJlY3Rpb246IG5ldyBXSS5TZXR0aW5nKCJkZWJ1Zy1sYXlvdXQtZGly
ZWN0aW9uLW92ZXJyaWRlIiwgInN5c3RlbSIpLAorICAgIGRlYnVnU2hvd0NvbnNvbGVFdmFsdWF0
aW9uczogbmV3IFdJLkRlYnVnU2V0dGluZygiZGVidWctc2hvdy1jb25zb2xlLWV2YWx1YXRpb25z
IiwgZmFsc2UpLAorICAgIGRlYnVnRW5hYmxlTGF5b3V0Rmxhc2hpbmc6IG5ldyBXSS5EZWJ1Z1Nl
dHRpbmcoImRlYnVnLWVuYWJsZS1sYXlvdXQtZmxhc2hpbmciLCBmYWxzZSksCisgICAgZGVidWdF
bmFibGVTdHlsZUVkaXRpbmdEZWJ1Z01vZGU6IG5ldyBXSS5EZWJ1Z1NldHRpbmcoImRlYnVnLWVu
YWJsZS1zdHlsZS1lZGl0aW5nLWRlYnVnLW1vZGUiLCBmYWxzZSksCisgICAgZGVidWdFbmFibGVV
bmNhdWdodEV4Y2VwdGlvblJlcG9ydGVyOiBuZXcgV0kuRGVidWdTZXR0aW5nKCJkZWJ1Zy1lbmFi
bGUtdW5jYXVnaHQtZXhjZXB0aW9uLXJlcG9ydGVyIiwgdHJ1ZSksCisgICAgZGVidWdFbmFibGVE
aWFnbm9zdGljTG9nZ2luZzogbmV3IFdJLkRlYnVnU2V0dGluZygiZGVidWctZW5hYmxlLWRpYWdu
b3N0aWMtbG9nZ2luZyIsIHRydWUpLAorICAgIGRlYnVnQXV0b0xvZ0RpYWdub3N0aWNFdmVudHM6
IG5ldyBXSS5EZWJ1Z1NldHRpbmcoImRlYnVnLWF1dG8tbG9nLWRpYWdub3N0aWMtZXZlbnRzIiwg
ZmFsc2UpLAorICAgIGRlYnVnTGF5b3V0RGlyZWN0aW9uOiBuZXcgV0kuRGVidWdTZXR0aW5nKCJk
ZWJ1Zy1sYXlvdXQtZGlyZWN0aW9uLW92ZXJyaWRlIiwgInN5c3RlbSIpLAogfTsKIAogV0kucHJl
dmlld0ZlYXR1cmVzID0gWwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJ
bnRlcmZhY2UvQ29udHJvbGxlcnMvRE9NTWFuYWdlci5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JV
SS9Vc2VySW50ZXJmYWNlL0NvbnRyb2xsZXJzL0RPTU1hbmFnZXIuanMKaW5kZXggNTk5ZjM5OGMx
NTA5NjUxOGU2ZGExNmQxZjRlMDUxODE4Yzc5ZTUwMi4uNjY5ZWY5ZTA5ZDAxNjc1ZjUyMmExODcx
ZTg0NjE3Y2FhMDU5MzlhZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJ
bnRlcmZhY2UvQ29udHJvbGxlcnMvRE9NTWFuYWdlci5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVj
dG9yVUkvVXNlckludGVyZmFjZS9Db250cm9sbGVycy9ET01NYW5hZ2VyLmpzCkBAIC05Niw4ICs5
Niw3IEBAIFdJLkRPTU1hbmFnZXIgPSBjbGFzcyBET01NYW5hZ2VyIGV4dGVuZHMgV0kuT2JqZWN0
CiAgICAgc3RhdGljIHN1cHBvcnRzRWRpdGluZ1VzZXJBZ2VudFNoYWRvd1RyZWVzKHtmcm9udGVu
ZE9ubHksIHRhcmdldH0gPSB7fSkKICAgICB7CiAgICAgICAgIHRhcmdldCA9IHRhcmdldCB8fCBJ
bnNwZWN0b3JCYWNrZW5kOwotICAgICAgICByZXR1cm4gV0kuaXNFbmdpbmVlcmluZ0J1aWxkCi0g
ICAgICAgICAgICAmJiBXSS5zZXR0aW5ncy5lbmdpbmVlcmluZ0FsbG93RWRpdGluZ1VzZXJBZ2Vu
dFNoYWRvd1RyZWVzLnZhbHVlCisgICAgICAgIHJldHVybiBXSS5zZXR0aW5ncy5lbmdpbmVlcmlu
Z0FsbG93RWRpdGluZ1VzZXJBZ2VudFNoYWRvd1RyZWVzLnZhbHVlCiAgICAgICAgICAgICAmJiAo
ZnJvbnRlbmRPbmx5IHx8IHRhcmdldC5oYXNDb21tYW5kKCJET00uc2V0QWxsb3dFZGl0aW5nVXNl
ckFnZW50U2hhZG93VHJlZXMiKSk7CiAKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5z
cGVjdG9yVUkvVXNlckludGVyZmFjZS9Db250cm9sbGVycy9EZWJ1Z2dlck1hbmFnZXIuanMgYi9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Db250cm9sbGVycy9EZWJ1Z2dlck1h
bmFnZXIuanMKaW5kZXggNTg5NmQyODQ1Nzk0ZGVkM2M5YTUzMDc5MDNiMTU5ZTlkMGJiN2RkNC4u
MTk4N2EwMjY5NWUzODI5NWEyNWE4MGMwZWI5NTY0NTRlYTMxOGVmNCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvQ29udHJvbGxlcnMvRGVidWdnZXJNYW5h
Z2VyLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0NvbnRyb2xs
ZXJzL0RlYnVnZ2VyTWFuYWdlci5qcwpAQCAtNDEwLDkgKzQxMCw5IEBAIFdJLkRlYnVnZ2VyTWFu
YWdlciA9IGNsYXNzIERlYnVnZ2VyTWFuYWdlciBleHRlbmRzIFdJLk9iamVjdAogICAgICAgICAg
ICAgZm9yIChsZXQgc2NyaXB0IG9mIHRhcmdldERhdGEuc2NyaXB0cykgewogICAgICAgICAgICAg
ICAgIGlmIChzY3JpcHQucmVzb3VyY2UpCiAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwot
ICAgICAgICAgICAgICAgIGlmICgoIVdJLmlzRGVidWdVSUVuYWJsZWQoKSB8fCAhV0kuc2V0dGlu
Z3MuZGVidWdTaG93Q29uc29sZUV2YWx1YXRpb25zLnZhbHVlKSAmJiBpc1dlYkluc3BlY3RvckNv
bnNvbGVFdmFsdWF0aW9uU2NyaXB0KHNjcmlwdC5zb3VyY2VVUkwpKQorICAgICAgICAgICAgICAg
IGlmICghV0kuc2V0dGluZ3MuZGVidWdTaG93Q29uc29sZUV2YWx1YXRpb25zLnZhbHVlICYmIGlz
V2ViSW5zcGVjdG9yQ29uc29sZUV2YWx1YXRpb25TY3JpcHQoc2NyaXB0LnNvdXJjZVVSTCkpCiAg
ICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICAgICAgICAgIGlmICgoIVdJLmlz
RW5naW5lZXJpbmdCdWlsZCB8fCAhV0kuc2V0dGluZ3MuZW5naW5lZXJpbmdTaG93SW50ZXJuYWxT
Y3JpcHRzLnZhbHVlKSAmJiBpc1dlYktpdEludGVybmFsU2NyaXB0KHNjcmlwdC5zb3VyY2VVUkwp
KQorICAgICAgICAgICAgICAgIGlmICghV0kuc2V0dGluZ3MuZW5naW5lZXJpbmdTaG93SW50ZXJu
YWxTY3JpcHRzLnZhbHVlICYmIGlzV2ViS2l0SW50ZXJuYWxTY3JpcHQoc2NyaXB0LnNvdXJjZVVS
TCkpCiAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgIGtub3du
U2NyaXB0cy5wdXNoKHNjcmlwdCk7CiAgICAgICAgICAgICB9CkBAIC03NzIsNyArNzcyLDcgQEAg
V0kuRGVidWdnZXJNYW5hZ2VyID0gY2xhc3MgRGVidWdnZXJNYW5hZ2VyIGV4dGVuZHMgV0kuT2Jq
ZWN0CiAgICAgICAgICAgICAgICAgY29udGludWU7CiAKICAgICAgICAgICAgIC8vIEV4Y2x1ZGUg
dGhlIGNhc2Ugd2hlcmUgdGhlIGNhbGwgZnJhbWUgaXMgaW4gdGhlIGluc3BlY3RvciBjb2RlLgot
ICAgICAgICAgICAgaWYgKCghV0kuaXNFbmdpbmVlcmluZ0J1aWxkIHx8ICFXSS5zZXR0aW5ncy5l
bmdpbmVlcmluZ1Nob3dJbnRlcm5hbFNjcmlwdHMudmFsdWUpICYmIGlzV2ViS2l0SW50ZXJuYWxT
Y3JpcHQoc291cmNlQ29kZUxvY2F0aW9uLnNvdXJjZUNvZGUuc291cmNlVVJMKSkKKyAgICAgICAg
ICAgIGlmICghV0kuc2V0dGluZ3MuZW5naW5lZXJpbmdTaG93SW50ZXJuYWxTY3JpcHRzLnZhbHVl
ICYmIGlzV2ViS2l0SW50ZXJuYWxTY3JpcHQoc291cmNlQ29kZUxvY2F0aW9uLnNvdXJjZUNvZGUu
c291cmNlVVJMKSkKICAgICAgICAgICAgICAgICBjb250aW51ZTsKIAogICAgICAgICAgICAgbGV0
IHNjb3BlQ2hhaW4gPSB0aGlzLl9zY29wZUNoYWluRnJvbVBheWxvYWQodGFyZ2V0LCBjYWxsRnJh
bWVQYXlsb2FkLnNjb3BlQ2hhaW4pOwpAQCAtODU1LDcgKzg1NSw3IEBAIFdJLkRlYnVnZ2VyTWFu
YWdlciA9IGNsYXNzIERlYnVnZ2VyTWFuYWdlciBleHRlbmRzIFdJLk9iamVjdAogICAgICAgICAg
ICAgcmV0dXJuOwogICAgICAgICB9CiAKLSAgICAgICAgaWYgKCghV0kuaXNFbmdpbmVlcmluZ0J1
aWxkIHx8ICFXSS5zZXR0aW5ncy5lbmdpbmVlcmluZ1Nob3dJbnRlcm5hbFNjcmlwdHMudmFsdWUp
ICYmIGlzV2ViS2l0SW50ZXJuYWxTY3JpcHQoc291cmNlVVJMKSkKKyAgICAgICAgaWYgKCFXSS5z
ZXR0aW5ncy5lbmdpbmVlcmluZ1Nob3dJbnRlcm5hbFNjcmlwdHMudmFsdWUgJiYgaXNXZWJLaXRJ
bnRlcm5hbFNjcmlwdChzb3VyY2VVUkwpKQogICAgICAgICAgICAgcmV0dXJuOwogCiAgICAgICAg
IGxldCByYW5nZSA9IG5ldyBXSS5UZXh0UmFuZ2Uoc3RhcnRMaW5lLCBzdGFydENvbHVtbiwgZW5k
TGluZSwgZW5kQ29sdW1uKTsKQEAgLTg4NSwxMSArODg1LDExIEBAIFdJLkRlYnVnZ2VyTWFuYWdl
ciA9IGNsYXNzIERlYnVnZ2VyTWFuYWdlciBleHRlbmRzIFdJLk9iamVjdAogCiAgICAgICAgIGlm
IChpc1dlYktpdEludGVybmFsU2NyaXB0KHNjcmlwdC5zb3VyY2VVUkwpKSB7CiAgICAgICAgICAg
ICB0aGlzLl9pbnRlcm5hbFdlYktpdFNjcmlwdHMucHVzaChzY3JpcHQpOwotICAgICAgICAgICAg
aWYgKCFXSS5pc0VuZ2luZWVyaW5nQnVpbGQgfHwgIVdJLnNldHRpbmdzLmVuZ2luZWVyaW5nU2hv
d0ludGVybmFsU2NyaXB0cy52YWx1ZSkKKyAgICAgICAgICAgIGlmICghV0kuc2V0dGluZ3MuZW5n
aW5lZXJpbmdTaG93SW50ZXJuYWxTY3JpcHRzLnZhbHVlKQogICAgICAgICAgICAgICAgIHJldHVy
bjsKICAgICAgICAgfQogCi0gICAgICAgIGlmICgoIVdJLmlzRGVidWdVSUVuYWJsZWQoKSB8fCAh
V0kuc2V0dGluZ3MuZGVidWdTaG93Q29uc29sZUV2YWx1YXRpb25zLnZhbHVlKSAmJiBpc1dlYklu
c3BlY3RvckNvbnNvbGVFdmFsdWF0aW9uU2NyaXB0KHNjcmlwdC5zb3VyY2VVUkwpKQorICAgICAg
ICBpZiAoIVdJLnNldHRpbmdzLmRlYnVnU2hvd0NvbnNvbGVFdmFsdWF0aW9ucy52YWx1ZSAmJiBp
c1dlYkluc3BlY3RvckNvbnNvbGVFdmFsdWF0aW9uU2NyaXB0KHNjcmlwdC5zb3VyY2VVUkwpKQog
ICAgICAgICAgICAgcmV0dXJuOwogCiAgICAgICAgIHRoaXMuZGlzcGF0Y2hFdmVudFRvTGlzdGVu
ZXJzKFdJLkRlYnVnZ2VyTWFuYWdlci5FdmVudC5TY3JpcHRBZGRlZCwge3NjcmlwdH0pOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvQ29udHJvbGxlcnMv
RGlhZ25vc3RpY0NvbnRyb2xsZXIuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVy
ZmFjZS9Db250cm9sbGVycy9EaWFnbm9zdGljQ29udHJvbGxlci5qcwppbmRleCBjZjgzY2EzZWY3
MzBkY2IwZTI2MTdhNTg1YTQxNTM4ZGM1OWJkNTJmLi4xYjIyNDBlMmE1YjFiNDkwODU3MjYyMjFh
OWUxZTdlMzI4ZGViNDEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9Db250cm9sbGVycy9EaWFnbm9zdGljQ29udHJvbGxlci5qcworKysgYi9Tb3VyY2Uv
V2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Db250cm9sbGVycy9EaWFnbm9zdGljQ29udHJv
bGxlci5qcwpAQCAtMzAsNyArMzAsNyBAQCBXSS5EaWFnbm9zdGljQ29udHJvbGxlciA9IGNsYXNz
IERpYWdub3N0aWNDb250cm9sbGVyCiAgICAgICAgIHRoaXMuX2RpYWdub3N0aWNMb2dnaW5nQXZh
aWxhYmxlID0gZmFsc2U7CiAgICAgICAgIHRoaXMuX3JlY29yZGVycyA9IG5ldyBTZXQ7CiAKLSAg
ICAgICAgdGhpcy5fYXV0b0xvZ0RpYWdub3N0aWNFdmVudHNUb0NvbnNvbGUgPSBXSS5zZXR0aW5n
cy5kZWJ1Z0F1dG9Mb2dEaWFnbm9zdGljRXZlbnRzLnZhbHVlUmVzcGVjdGluZ0RlYnVnVUlBdmFp
bGFiaWxpdHk7CisgICAgICAgIHRoaXMuX2F1dG9Mb2dEaWFnbm9zdGljRXZlbnRzVG9Db25zb2xl
ID0gV0kuc2V0dGluZ3MuZGVidWdBdXRvTG9nRGlhZ25vc3RpY0V2ZW50cy52YWx1ZTsKICAgICAg
ICAgdGhpcy5fbG9nVG9Db25zb2xlTWV0aG9kID0gd2luZG93Lkluc3BlY3RvclRlc3QgPyBJbnNw
ZWN0b3JUZXN0LmxvZy5iaW5kKEluc3BlY3RvclRlc3QpIDogY29uc29sZS5sb2c7CiAKICAgICAg
ICAgV0kuc2V0dGluZ3MuZGVidWdFbmFibGVEaWFnbm9zdGljTG9nZ2luZy5hZGRFdmVudExpc3Rl
bmVyKFdJLlNldHRpbmcuRXZlbnQuQ2hhbmdlZCwgdGhpcy5fZGVidWdFbmFibGVEaWFnbm9zdGlj
TG9nZ2luZ1NldHRpbmdEaWRDaGFuZ2UsIHRoaXMpOwpAQCAtODMsMTIgKzgzLDEyIEBAIFdJLkRp
YWdub3N0aWNDb250cm9sbGVyID0gY2xhc3MgRGlhZ25vc3RpY0NvbnRyb2xsZXIKIAogICAgIF9k
ZWJ1Z0F1dG9Mb2dEaWFnbm9zdGljRXZlbnRzU2V0dGluZ0RpZENoYW5nZSgpCiAgICAgewotICAg
ICAgICB0aGlzLl9hdXRvTG9nRGlhZ25vc3RpY0V2ZW50c1RvQ29uc29sZSA9IFdJLnNldHRpbmdz
LmRlYnVnQXV0b0xvZ0RpYWdub3N0aWNFdmVudHMudmFsdWVSZXNwZWN0aW5nRGVidWdVSUF2YWls
YWJpbGl0eTsKKyAgICAgICAgdGhpcy5fYXV0b0xvZ0RpYWdub3N0aWNFdmVudHNUb0NvbnNvbGUg
PSBXSS5zZXR0aW5ncy5kZWJ1Z0F1dG9Mb2dEaWFnbm9zdGljRXZlbnRzLnZhbHVlOwogICAgIH0K
IAogICAgIF91cGRhdGVSZWNvcmRlclN0YXRlcygpCiAgICAgewotICAgICAgICBsZXQgaXNBY3Rp
dmUgPSB0aGlzLl9kaWFnbm9zdGljTG9nZ2luZ0F2YWlsYWJsZSAmJiBXSS5zZXR0aW5ncy5kZWJ1
Z0VuYWJsZURpYWdub3N0aWNMb2dnaW5nLnZhbHVlUmVzcGVjdGluZ0RlYnVnVUlBdmFpbGFiaWxp
dHk7CisgICAgICAgIGxldCBpc0FjdGl2ZSA9IHRoaXMuX2RpYWdub3N0aWNMb2dnaW5nQXZhaWxh
YmxlICYmIFdJLnNldHRpbmdzLmRlYnVnRW5hYmxlRGlhZ25vc3RpY0xvZ2dpbmcudmFsdWU7CiAg
ICAgICAgIGZvciAobGV0IHJlY29yZGVyIG9mIHRoaXMuX3JlY29yZGVycykKICAgICAgICAgICAg
IHJlY29yZGVyLmFjdGl2ZSA9IGlzQWN0aXZlOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0RlYnVnL1VuY2F1Z2h0RXhjZXB0aW9uUmVwb3J0
ZXIuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9EZWJ1Zy9VbmNhdWdo
dEV4Y2VwdGlvblJlcG9ydGVyLmpzCmluZGV4IGEzMWNkNDg2NmE0ODYxYmUxZWY5MTI4M2M2OGQw
OGIyOTVkMThkNzcuLjJkZWJjYzg3YTUzNDAyOWFkODczM2IzZDJlYTAwOTAzNGViNjZmMDUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0RlYnVnL1VuY2F1
Z2h0RXhjZXB0aW9uUmVwb3J0ZXIuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJ
bnRlcmZhY2UvRGVidWcvVW5jYXVnaHRFeGNlcHRpb25SZXBvcnRlci5qcwpAQCAtOTQsNyArOTQs
NyBAQCBmdW5jdGlvbiBoYW5kbGVVbmhhbmRsZWRQcm9taXNlUmVqZWN0aW9uKGV2ZW50KSB7CiAK
IGZ1bmN0aW9uIGhhbmRsZVVuY2F1Z2h0RXhjZXB0aW9uUmVjb3JkKGV4Y2VwdGlvblJlY29yZCkg
ewogICAgIHRyeSB7Ci0gICAgICAgIGlmIChXSS5pc0RlYnVnVUlFbmFibGVkKCkgJiYgIVdJLnNl
dHRpbmdzLmRlYnVnRW5hYmxlVW5jYXVnaHRFeGNlcHRpb25SZXBvcnRlci52YWx1ZSkKKyAgICAg
ICAgaWYgKCFXSS5zZXR0aW5ncy5kZWJ1Z0VuYWJsZVVuY2F1Z2h0RXhjZXB0aW9uUmVwb3J0ZXIu
dmFsdWUpCiAgICAgICAgICAgICByZXR1cm47CiAgICAgfSBjYXRjaCB7IH0KIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9kZWxzL0NTU1Byb3BlcnR5
LmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9kZWxzL0NTU1Byb3Bl
cnR5LmpzCmluZGV4IDY0YzgzNThmOGQwMGZhNDQ2NDc0MmU2ZWI5YTMzMDdhMGI5YzFhYzAuLjI3
OGE2NzE1NDhiZDY2MjY3MWU1ZDQ3YTRhYTJjMWQ3MDhmNzQwMWQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9DU1NQcm9wZXJ0eS5qcworKysg
Yi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Nb2RlbHMvQ1NTUHJvcGVydHku
anMKQEAgLTUwMiw3ICs1MDIsNyBAQCBXSS5DU1NQcm9wZXJ0eSA9IGNsYXNzIENTU1Byb3BlcnR5
IGV4dGVuZHMgV0kuT2JqZWN0CiAKICAgICAgICAgY29uc29sZS5hc3NlcnQob2xkVGV4dCA9PT0g
c3R5bGVUZXh0LnNsaWNlKHJhbmdlLnN0YXJ0T2Zmc2V0LCByYW5nZS5lbmRPZmZzZXQpLCAiX3N0
eWxlU2hlZXRUZXh0UmFuZ2UgZGF0YSBpcyBpbnZhbGlkLiIpOwogCi0gICAgICAgIGlmIChXSS5p
c0RlYnVnVUlFbmFibGVkKCkgJiYgV0kuc2V0dGluZ3MuZGVidWdFbmFibGVTdHlsZUVkaXRpbmdE
ZWJ1Z01vZGUudmFsdWUpIHsKKyAgICAgICAgaWYgKFdJLnNldHRpbmdzLmRlYnVnRW5hYmxlU3R5
bGVFZGl0aW5nRGVidWdNb2RlLnZhbHVlKSB7CiAgICAgICAgICAgICBsZXQgcHJlZml4ID0gc3R5
bGVUZXh0LnNsaWNlKDAsIHJhbmdlLnN0YXJ0T2Zmc2V0KTsKICAgICAgICAgICAgIGxldCBwb3N0
Zml4ID0gc3R5bGVUZXh0LnNsaWNlKHJhbmdlLmVuZE9mZnNldCk7CiAgICAgICAgICAgICBjb25z
b2xlLmluZm8oYCR7cHJlZml4fSVjJHtvbGRUZXh0fSVjJHtuZXdUZXh0fSVjJHtwb3N0Zml4fWAs
IGBiYWNrZ3JvdW5kOiBoc2woMzU2LCAxMDAlLCA5MCUpOyBjb2xvcjogYmxhY2tgLCBgYmFja2dy
b3VuZDogaHNsKDEwMCwgMTAwJSwgOTElKTsgY29sb3I6IGJsYWNrYCwgYGJhY2tncm91bmQ6IHRy
YW5zcGFyZW50YCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVy
ZmFjZS9Nb2RlbHMvQ1NTU3R5bGVEZWNsYXJhdGlvbi5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JV
SS9Vc2VySW50ZXJmYWNlL01vZGVscy9DU1NTdHlsZURlY2xhcmF0aW9uLmpzCmluZGV4IDAyYjYw
NzQwMDM4MGYzODNkOWU3NjJiNjJmZmI5MzYyY2E4YWM5YzUuLjQzZmRhYmRkNzJjNGJjNjZlYzJl
NzBiYTJhMGFjNmUwOWU4NDc3ZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9V
c2VySW50ZXJmYWNlL01vZGVscy9DU1NTdHlsZURlY2xhcmF0aW9uLmpzCisrKyBiL1NvdXJjZS9X
ZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9DU1NTdHlsZURlY2xhcmF0aW9uLmpz
CkBAIC0xMjQsNyArMTI0LDcgQEAgV0kuQ1NTU3R5bGVEZWNsYXJhdGlvbiA9IGNsYXNzIENTU1N0
eWxlRGVjbGFyYXRpb24gZXh0ZW5kcyBXSS5PYmplY3QKICAgICAgICAgLy8gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgXgogICAgICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB1cGRhdGUgb25seSBoYXBwZW5zIGhlcmUKICAgICAgICAgaWYgKHRoaXMuX3Vw
ZGF0ZXNJblByb2dyZXNzQ291bnQgPiAwICYmICFvcHRpb25zLmZvcmNlVXBkYXRlKSB7Ci0gICAg
ICAgICAgICBpZiAoV0kuaXNEZWJ1Z1VJRW5hYmxlZCgpICYmIFdJLnNldHRpbmdzLmRlYnVnRW5h
YmxlU3R5bGVFZGl0aW5nRGVidWdNb2RlLnZhbHVlICYmIHRleHQgIT09IHRoaXMuX3RleHQpCisg
ICAgICAgICAgICBpZiAoV0kuc2V0dGluZ3MuZGVidWdFbmFibGVTdHlsZUVkaXRpbmdEZWJ1Z01v
ZGUudmFsdWUgJiYgdGV4dCAhPT0gdGhpcy5fdGV4dCkKICAgICAgICAgICAgICAgICBjb25zb2xl
Lndhcm4oIlN0eWxlIG1vZGlmaWVkIHdoaWxlIGVkaXRpbmc6IiwgdGV4dCk7CiAKICAgICAgICAg
ICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJm
YWNlL1Byb3RvY29sL1JlbW90ZU9iamVjdC5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2Vy
SW50ZXJmYWNlL1Byb3RvY29sL1JlbW90ZU9iamVjdC5qcwppbmRleCA5ZDU1MmRhY2M0OTg3Mjkz
OGQ0NjcwOTJkN2E4NzA2ZTBmZjM4MzlkLi5hYTBlNDRkNDc2ODVlYWJlOGQwNzE1MGQ1MzliMzFh
NjUyMjFhNGY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFj
ZS9Qcm90b2NvbC9SZW1vdGVPYmplY3QuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1Vz
ZXJJbnRlcmZhY2UvUHJvdG9jb2wvUmVtb3RlT2JqZWN0LmpzCkBAIC01OTQsNyArNTk0LDcgQEAg
V0kuUmVtb3RlT2JqZWN0ID0gY2xhc3MgUmVtb3RlT2JqZWN0CiAgICAgICAgICAgICB2YXIgbG9j
YXRpb24gPSByZXNwb25zZS5sb2NhdGlvbjsKICAgICAgICAgICAgIHZhciBzb3VyY2VDb2RlID0g
V0kuZGVidWdnZXJNYW5hZ2VyLnNjcmlwdEZvcklkZW50aWZpZXIobG9jYXRpb24uc2NyaXB0SWQs
IHRoaXMuX3RhcmdldCk7CiAKLSAgICAgICAgICAgIGlmICghc291cmNlQ29kZSB8fCAoKCFXSS5p
c0VuZ2luZWVyaW5nQnVpbGQgfHwgIVdJLnNldHRpbmdzLmVuZ2luZWVyaW5nU2hvd0ludGVybmFs
U2NyaXB0cy52YWx1ZSkgJiYgaXNXZWJLaXRJbnRlcm5hbFNjcmlwdChzb3VyY2VDb2RlLnNvdXJj
ZVVSTCkpKSB7CisgICAgICAgICAgICBpZiAoIXNvdXJjZUNvZGUgfHwgKCFXSS5zZXR0aW5ncy5l
bmdpbmVlcmluZ1Nob3dJbnRlcm5hbFNjcmlwdHMudmFsdWUgJiYgaXNXZWJLaXRJbnRlcm5hbFNj
cmlwdChzb3VyY2VDb2RlLnNvdXJjZVVSTCkpKSB7CiAgICAgICAgICAgICAgICAgcmVzdWx0LnJl
c29sdmUoV0kuUmVtb3RlT2JqZWN0LlNvdXJjZUNvZGVMb2NhdGlvblByb21pc2UuTm9Tb3VyY2VG
b3VuZCk7CiAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvUHJveGllcy9IZWFwU25hcHNo
b3RFZGdlUHJveHkuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Qcm94
aWVzL0hlYXBTbmFwc2hvdEVkZ2VQcm94eS5qcwppbmRleCBmODVmNWIyMWEzZjIyYzBkNmUwZjQz
ZjhmYjRkNTNlZTMyNGJkZTc1Li5mMWFkOTIwYmI2NzYzNmFlYmRlYmFhNDlmNTZhZTE4MTRlMjYy
ZWU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Qcm94
aWVzL0hlYXBTbmFwc2hvdEVkZ2VQcm94eS5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkv
VXNlckludGVyZmFjZS9Qcm94aWVzL0hlYXBTbmFwc2hvdEVkZ2VQcm94eS5qcwpAQCAtNDQsNyAr
NDQsNyBAQCBXSS5IZWFwU25hcHNob3RFZGdlUHJveHkgPSBjbGFzcyBIZWFwU25hcHNob3RFZGdl
UHJveHkKIAogICAgIGlzUHJpdmF0ZVN5bWJvbCgpCiAgICAgewotICAgICAgICBpZiAoV0kuaXNF
bmdpbmVlcmluZ0J1aWxkICYmIFdJLnNldHRpbmdzLmVuZ2luZWVyaW5nU2hvd1ByaXZhdGVTeW1i
b2xzSW5IZWFwU25hcHNob3QudmFsdWUpCisgICAgICAgIGlmIChXSS5zZXR0aW5ncy5lbmdpbmVl
cmluZ1Nob3dQcml2YXRlU3ltYm9sc0luSGVhcFNuYXBzaG90LnZhbHVlKQogICAgICAgICAgICAg
cmV0dXJuIGZhbHNlOwogCiAgICAgICAgIHJldHVybiB0eXBlb2YgdGhpcy5kYXRhID09PSAic3Ry
aW5nIiAmJiB0aGlzLmRhdGEuc3RhcnRzV2l0aCgiUHJpdmF0ZVN5bWJvbCIpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQ29uc29sZU1lc3Nh
Z2VWaWV3LmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQ29u
c29sZU1lc3NhZ2VWaWV3LmpzCmluZGV4IDlmNzE0MzM1YWEyZjYxNTY4Njg3MzM2OTJjZGQ2YTYy
NTM0MThhYTcuLjZmZjA3MmY2M2I0MGRjNTUwMTllMmYyOTk1YWYxY2Y4ZjUxZTBjMzkgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0NvbnNvbGVN
ZXNzYWdlVmlldy5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9W
aWV3cy9Db25zb2xlTWVzc2FnZVZpZXcuanMKQEAgLTQzNCw3ICs0MzQsNyBAQCBXSS5Db25zb2xl
TWVzc2FnZVZpZXcgPSBjbGFzcyBDb25zb2xlTWVzc2FnZVZpZXcgZXh0ZW5kcyBXSS5PYmplY3QK
ICAgICAgICAgICAgIH0pOwogICAgICAgICB9CiAKLSAgICAgICAgaWYgKGNhbGxGcmFtZSAmJiAo
IWNhbGxGcmFtZS5pc0NvbnNvbGVFdmFsdWF0aW9uIHx8IChXSS5pc0RlYnVnVUlFbmFibGVkKCkg
JiYgV0kuc2V0dGluZ3MuZGVidWdTaG93Q29uc29sZUV2YWx1YXRpb25zLnZhbHVlKSkpIHsKKyAg
ICAgICAgaWYgKGNhbGxGcmFtZSAmJiAoIWNhbGxGcmFtZS5pc0NvbnNvbGVFdmFsdWF0aW9uIHx8
IFdJLnNldHRpbmdzLmRlYnVnU2hvd0NvbnNvbGVFdmFsdWF0aW9ucy52YWx1ZSkpIHsKICAgICAg
ICAgICAgIGNvbnN0IHNob3dGdW5jdGlvbk5hbWUgPSAhIWNhbGxGcmFtZS5mdW5jdGlvbk5hbWU7
CiAgICAgICAgICAgICB2YXIgbG9jYXRpb25FbGVtZW50ID0gbmV3IFdJLkNhbGxGcmFtZVZpZXco
Y2FsbEZyYW1lLCBzaG93RnVuY3Rpb25OYW1lKTsKICAgICAgICAgICAgIGxvY2F0aW9uRWxlbWVu
dC5jbGFzc0xpc3QuYWRkKCJjb25zb2xlLW1lc3NhZ2UtbG9jYXRpb24iKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0hlYXBTbmFwc2hvdERh
dGFHcmlkVHJlZS5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdz
L0hlYXBTbmFwc2hvdERhdGFHcmlkVHJlZS5qcwppbmRleCA0ZTAyZTBhOGYxNWI0MjA4YTIyYzk2
NTc5MzM2MDUxNDJjNjY4MDk5Li5kMjhmMDZhZTEyMDE2NDQyMzllZDVhYTFlZWQ1MmQyNjJhNTY5
OTIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3
cy9IZWFwU25hcHNob3REYXRhR3JpZFRyZWUuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJ
L1VzZXJJbnRlcmZhY2UvVmlld3MvSGVhcFNuYXBzaG90RGF0YUdyaWRUcmVlLmpzCkBAIC0yMTYs
NyArMjE2LDcgQEAgV0kuSGVhcFNuYXBzaG90SW5zdGFuY2VzRGF0YUdyaWRUcmVlID0gY2xhc3Mg
SGVhcFNuYXBzaG90SW5zdGFuY2VzRGF0YUdyaWRUcmVlIGUKICAgICBwb3B1bGF0ZVRvcExldmVs
KCkKICAgICB7CiAgICAgICAgIC8vIFBvcHVsYXRlIHRoZSBmaXJzdCBsZXZlbCB3aXRoIHRoZSBk
aWZmZXJlbnQgY2xhc3Nlcy4KLSAgICAgICAgbGV0IHNraXBJbnRlcm5hbE9ubHlPYmplY3RzID0g
IVdJLmlzRW5naW5lZXJpbmdCdWlsZCB8fCAhV0kuc2V0dGluZ3MuZW5naW5lZXJpbmdTaG93SW50
ZXJuYWxPYmplY3RzSW5IZWFwU25hcHNob3QudmFsdWU7CisgICAgICAgIGxldCBza2lwSW50ZXJu
YWxPbmx5T2JqZWN0cyA9ICFXSS5zZXR0aW5ncy5lbmdpbmVlcmluZ1Nob3dJbnRlcm5hbE9iamVj
dHNJbkhlYXBTbmFwc2hvdC52YWx1ZTsKIAogICAgICAgICBmb3IgKGxldCBbY2xhc3NOYW1lLCB7
c2l6ZSwgcmV0YWluZWRTaXplLCBjb3VudCwgaW50ZXJuYWxDb3VudCwgZGVhZENvdW50LCBvYmpl
Y3RDb3VudH1dIG9mIHRoaXMuaGVhcFNuYXBzaG90LmNhdGVnb3JpZXMpIHsKICAgICAgICAgICAg
IGNvbnNvbGUuYXNzZXJ0KGNvdW50ID4gMCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVj
dG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9PcGVuUmVzb3VyY2VEaWFsb2cuanMgYi9Tb3VyY2Uv
V2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9PcGVuUmVzb3VyY2VEaWFsb2cuanMK
aW5kZXggNzEyN2FmOTFlODQ1M2M1YzcxNGFjZmY3MjNhYmRlY2RkZTE1YTRjOC4uMWVhZWNkYzg4
Y2NmZDUyNjg4YmNjN2M5ZjM2NDhjZDkxNzcxZGRiNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYklu
c3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvT3BlblJlc291cmNlRGlhbG9nLmpzCisrKyBi
L1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL09wZW5SZXNvdXJjZURp
YWxvZy5qcwpAQCAtMzQwLDkgKzM0MCw5IEBAIFdJLk9wZW5SZXNvdXJjZURpYWxvZyA9IGNsYXNz
IE9wZW5SZXNvdXJjZURpYWxvZyBleHRlbmRzIFdJLkRpYWxvZwogICAgICAgICAgICAgICAgIGNv
bnRpbnVlOwogICAgICAgICAgICAgaWYgKHNjcmlwdC5keW5hbWljYWxseUFkZGVkU2NyaXB0RWxl
bWVudCkKICAgICAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgICAgIGlmICgoIVdJLmlz
RGVidWdVSUVuYWJsZWQoKSB8fCAhV0kuc2V0dGluZ3MuZGVidWdTaG93Q29uc29sZUV2YWx1YXRp
b25zLnZhbHVlKSB8fCBpc1dlYkluc3BlY3RvckNvbnNvbGVFdmFsdWF0aW9uU2NyaXB0KHNjcmlw
dC5zb3VyY2VVUkwpKQorICAgICAgICAgICAgaWYgKCFXSS5zZXR0aW5ncy5kZWJ1Z1Nob3dDb25z
b2xlRXZhbHVhdGlvbnMudmFsdWUgJiYgaXNXZWJJbnNwZWN0b3JDb25zb2xlRXZhbHVhdGlvblNj
cmlwdChzY3JpcHQuc291cmNlVVJMKSkKICAgICAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAg
ICAgICAgIGlmICgoIVdJLmlzRW5naW5lZXJpbmdCdWlsZCB8fCAhV0kuc2V0dGluZ3MuZW5naW5l
ZXJpbmdTaG93SW50ZXJuYWxTY3JpcHRzLnZhbHVlKSAmJiBpc1dlYktpdEludGVybmFsU2NyaXB0
KHNjcmlwdC5zb3VyY2VVUkwpKQorICAgICAgICAgICAgaWYgKCFXSS5zZXR0aW5ncy5lbmdpbmVl
cmluZ1Nob3dJbnRlcm5hbFNjcmlwdHMudmFsdWUgJiYgaXNXZWJLaXRJbnRlcm5hbFNjcmlwdChz
Y3JpcHQuc291cmNlVVJMKSkKICAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAg
IHRoaXMuX2FkZFJlc291cmNlKHNjcmlwdCwgc3VwcHJlc3NGaWx0ZXJVcGRhdGUpOwogICAgICAg
ICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3
cy9TcHJlYWRzaGVldENTU1N0eWxlRGVjbGFyYXRpb25FZGl0b3IuanMgYi9Tb3VyY2UvV2ViSW5z
cGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9TcHJlYWRzaGVldENTU1N0eWxlRGVjbGFyYXRp
b25FZGl0b3IuanMKaW5kZXggY2UxN2RiM2MxYTQwMzE4YzUxMzg3NjNlZGVmMTQ5NTJjNGIxYTlk
My4uYTViNjI2MDBkMDM2OGI5MTIyNDg2YzQwYmM5Y2E2YTJjNzRjNDFkZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU3ByZWFkc2hlZXRDU1NT
dHlsZURlY2xhcmF0aW9uRWRpdG9yLmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2Vy
SW50ZXJmYWNlL1ZpZXdzL1NwcmVhZHNoZWV0Q1NTU3R5bGVEZWNsYXJhdGlvbkVkaXRvci5qcwpA
QCAtNjc5LDcgKzY3OSw3IEBAIFdJLlNwcmVhZHNoZWV0Q1NTU3R5bGVEZWNsYXJhdGlvbkVkaXRv
ciA9IGNsYXNzIFNwcmVhZHNoZWV0Q1NTU3R5bGVEZWNsYXJhdGlvbkVkCiAKICAgICBfdXBkYXRl
RGVidWdMb2NrU3RhdHVzKCkKICAgICB7Ci0gICAgICAgIGlmICghdGhpcy5fc3R5bGUgfHwgIVdJ
LmlzRGVidWdVSUVuYWJsZWQoKSB8fCAhV0kuc2V0dGluZ3MuZGVidWdFbmFibGVTdHlsZUVkaXRp
bmdEZWJ1Z01vZGUudmFsdWUpCisgICAgICAgIGlmICghdGhpcy5fc3R5bGUgfHwgIVdJLnNldHRp
bmdzLmRlYnVnRW5hYmxlU3R5bGVFZGl0aW5nRGVidWdNb2RlLnZhbHVlKQogICAgICAgICAgICAg
cmV0dXJuOwogCiAgICAgICAgIHRoaXMuZWxlbWVudC5jbGFzc0xpc3QudG9nZ2xlKCJkZWJ1Zy1z
dHlsZS1sb2NrZWQiLCB0aGlzLl9zdHlsZS5sb2NrZWQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU3RhY2tUcmFjZVZpZXcuanMgYi9Tb3Vy
Y2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9TdGFja1RyYWNlVmlldy5qcwpp
bmRleCBiNTNmNjYzNmU1ZmM3YTExODRhZmNiODA4YWMxMjU2ZWY2Y2I2M2Y0Li4zYjdkNzE5NmEx
NjY1YzQ2Mjk5YzJkY2FmMTY5YzI0ODA5N2U5MTRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5z
cGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9TdGFja1RyYWNlVmlldy5qcworKysgYi9Tb3Vy
Y2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9TdGFja1RyYWNlVmlldy5qcwpA
QCAtMzUsNyArMzUsNyBAQCBXSS5TdGFja1RyYWNlVmlldyA9IGNsYXNzIFN0YWNrVHJhY2VWaWV3
IGV4dGVuZHMgV0kuT2JqZWN0CiAgICAgICAgIGZvciAodmFyIGNhbGxGcmFtZSBvZiBzdGFja1Ry
YWNlLmNhbGxGcmFtZXMpIHsKICAgICAgICAgICAgIGlmICghY2FsbEZyYW1lLnNvdXJjZUNvZGVM
b2NhdGlvbiAmJiBjYWxsRnJhbWUuZnVuY3Rpb25OYW1lID09PSBudWxsKQogICAgICAgICAgICAg
ICAgIGNvbnRpbnVlOwotICAgICAgICAgICAgaWYgKGNhbGxGcmFtZS5pc0NvbnNvbGVFdmFsdWF0
aW9uICYmICghV0kuaXNEZWJ1Z1VJRW5hYmxlZCgpIHx8ICFXSS5zZXR0aW5ncy5kZWJ1Z1Nob3dD
b25zb2xlRXZhbHVhdGlvbnMudmFsdWUpKQorICAgICAgICAgICAgaWYgKGNhbGxGcmFtZS5pc0Nv
bnNvbGVFdmFsdWF0aW9uICYmICFXSS5zZXR0aW5ncy5kZWJ1Z1Nob3dDb25zb2xlRXZhbHVhdGlv
bnMudmFsdWUpCiAgICAgICAgICAgICAgICAgY29udGludWU7CiAKICAgICAgICAgICAgIHZhciBj
YWxsRnJhbWVFbGVtZW50ID0gbmV3IFdJLkNhbGxGcmFtZVZpZXcoY2FsbEZyYW1lLCB0cnVlKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1Zp
ZXcuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9WaWV3Lmpz
CmluZGV4IDYyODQ0N2ZmM2U1MmMyMmJkYTY5MWIwOTJjYWQ2ZmVjMjE3MDAyYzguLmFhZWNjZGFi
NTk5NmJmNTgzZTRhYzFmMTc0ZTViNzhmNGQzMWFlYjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJ
bnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1ZpZXcuanMKKysrIGIvU291cmNlL1dlYklu
c3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvVmlldy5qcwpAQCAtMjk1LDcgKzI5NSw3IEBA
IFdJLlZpZXcgPSBjbGFzcyBWaWV3IGV4dGVuZHMgV0kuT2JqZWN0CiAgICAgICAgIC8vIEVuc3Vy
ZSB0aGF0IHRoZSBpbml0aWFsIGxheW91dCBvdmVycmlkZSBkb2Vzbid0IGFmZmVjdHMgdG8gc3Vi
dmlld3MuCiAgICAgICAgIHRoaXMuX2xheW91dFJlYXNvbiA9IHNhdmVkTGF5b3V0UmVhc29uOwog
Ci0gICAgICAgIGlmIChXSS5pc0RlYnVnVUlFbmFibGVkKCkgJiYgV0kuc2V0dGluZ3MuZGVidWdF
bmFibGVMYXlvdXRGbGFzaGluZy52YWx1ZSkKKyAgICAgICAgaWYgKFdJLnNldHRpbmdzLmRlYnVn
RW5hYmxlTGF5b3V0Rmxhc2hpbmcudmFsdWUpCiAgICAgICAgICAgICB0aGlzLl9kcmF3TGF5b3V0
Rmxhc2hpbmdPdXRsaW5lKGlzSW5pdGlhbExheW91dCk7CiAKICAgICAgICAgZm9yIChsZXQgdmll
dyBvZiB0aGlzLl9zdWJ2aWV3cykgewo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>384947</attachid>
            <date>2019-12-05 14:13:09 -0800</date>
            <delta_ts>2019-12-05 14:48:56 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-204785-20191205141308.patch</filename>
            <type>text/plain</type>
            <size>24844</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvQ2hhbmdlTG9nCmluZGV4IDU3Mjk5MjhkZjZkY2FiZjQ0YWY3ZDBiMmIyZWZj
NDIxZWRhYmU1NDAuLjU1M2Q4ZjA3N2JjNmNkYzQ1YjkyNmNlNDY4NmJiYjEyNzdmY2NmZDYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU0IEBACisyMDE5LTEyLTA1ICBEZXZp
biBSb3Vzc28gIDxkcm91c3NvQGFwcGxlLmNvbT4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiBh
ZGQgV0kuRW5naW5lZXJpbmdTZXR0aW5nIGFuZCBXSS5EZWJ1Z1NldHRpbmcgdG8gYXZvaWQgY2Fs
bHNpdGUgY2hlY2tpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIwNDc4NQorCisgICAgICAgIFJldmlld2VkIGJ5IFRpbW90aHkgSGF0Y2hlci4KKwor
ICAgICAgICAqIFVzZXJJbnRlcmZhY2UvQmFzZS9TZXR0aW5nLmpzOgorICAgICAgICAoV0kuU2V0
dGluZy5wcm90b3R5cGUuZ2V0IGRlZmF1bHRWYWx1ZSk6IEFkZGVkLgorICAgICAgICAoV0kuRW5n
aW5lZXJpbmdTZXR0aW5nLnByb3RvdHlwZS5nZXQgdmFsdWUpOiBBZGRlZC4KKyAgICAgICAgKFdJ
LkVuZ2luZWVyaW5nU2V0dGluZy5wcm90b3R5cGUuc2V0IHZhbHVlKTogQWRkZWQuCisgICAgICAg
IChXSS5EZWJ1Z1NldHRpbmcucHJvdG90eXBlLmdldCB2YWx1ZSk6IEFkZGVkLgorICAgICAgICAo
V0kuRGVidWdTZXR0aW5nLnByb3RvdHlwZS5zZXQgdmFsdWUpOiBBZGRlZC4KKyAgICAgICAgKFdJ
LlNldHRpbmcucHJvdG90eXBlLmdldCB2YWx1ZVJlc3BlY3RpbmdEZWJ1Z1VJQXZhaWxhYmlsaXR5
KTogRGVsZXRlZC4KKyAgICAgICAgT25seSBnZXQvc2V0IHRoZSBgX3ZhbHVlYCBpZiB0aGUgYFdJ
LmlzRW5naW5lZXJpbmdCdWlsZGAvYFdJLmlzRGVidWdVSUVuYWJsZWQoKWAuCisKKyAgICAgICAg
KiBVc2VySW50ZXJmYWNlL0Jhc2UvTWFpbi5qczoKKyAgICAgICAgKFdJLnJlc29sdmVkTGF5b3V0
RGlyZWN0aW9uKToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1Byb3RvY29sL1JlbW90ZU9iamVj
dC5qczoKKyAgICAgICAgKFdJLlJlbW90ZU9iamVjdC5wcm90b3R5cGUuZmluZEZ1bmN0aW9uU291
cmNlQ29kZUxvY2F0aW9uKToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL01vZGVscy9DU1NQcm9w
ZXJ0eS5qczoKKyAgICAgICAgKFdJLkNTU1Byb3BlcnR5LnByb3RvdHlwZS5fdXBkYXRlT3duZXJT
dHlsZVRleHQpOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvTW9kZWxzL0NTU1N0eWxlRGVjbGFy
YXRpb24uanM6CisgICAgICAgIChXSS5DU1NTdHlsZURlY2xhcmF0aW9uLnByb3RvdHlwZS51cGRh
dGUpOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvUHJveGllcy9IZWFwU25hcHNob3RFZGdlUHJv
eHkuanM6CisgICAgICAgIChXSS5IZWFwU25hcHNob3RFZGdlUHJveHkucHJvdG90eXBlLmlzUHJp
dmF0ZVN5bWJvbCk6CisgICAgICAgICogVXNlckludGVyZmFjZS9Db250cm9sbGVycy9ET01NYW5h
Z2VyLmpzOgorICAgICAgICAoV0kuRE9NTWFuYWdlci5wcm90b3R5cGUuc3VwcG9ydHNFZGl0aW5n
VXNlckFnZW50U2hhZG93VHJlZXMpOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvQ29udHJvbGxl
cnMvRGVidWdnZXJNYW5hZ2VyLmpzOgorICAgICAgICAoV0kuRGVidWdnZXJNYW5hZ2VyLnByb3Rv
dHlwZS5nZXQga25vd25Ob25SZXNvdXJjZVNjcmlwdHMpOgorICAgICAgICAoV0kuRGVidWdnZXJN
YW5hZ2VyLnByb3RvdHlwZS5kZWJ1Z2dlckRpZFBhdXNlKToKKyAgICAgICAgKFdJLkRlYnVnZ2Vy
TWFuYWdlci5wcm90b3R5cGUuc2NyaXB0RGlkUGFyc2UpOgorICAgICAgICAqIFVzZXJJbnRlcmZh
Y2UvQ29udHJvbGxlcnMvRGlhZ25vc3RpY0NvbnRyb2xsZXIuanM6CisgICAgICAgIChXSS5EaWFn
bm9zdGljQ29udHJvbGxlcik6CisgICAgICAgIChXSS5EaWFnbm9zdGljQ29udHJvbGxlci5wcm90
b3R5cGUuX2RlYnVnQXV0b0xvZ0RpYWdub3N0aWNFdmVudHNTZXR0aW5nRGlkQ2hhbmdlKToKKyAg
ICAgICAgKFdJLkRpYWdub3N0aWNDb250cm9sbGVyLnByb3RvdHlwZS5fdXBkYXRlUmVjb3JkZXJT
dGF0ZXMpOgorICAgICAgICAqIFVzZXJJbnRlcmZhY2UvVmlld3MvQ29uc29sZU1lc3NhZ2VWaWV3
LmpzOgorICAgICAgICAoV0kuQ29uc29sZU1lc3NhZ2VWaWV3LnByb3RvdHlwZS5fYXBwZW5kTG9j
YXRpb25MaW5rKToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL0hlYXBTbmFwc2hvdERh
dGFHcmlkVHJlZS5qczoKKyAgICAgICAgKFdJLkhlYXBTbmFwc2hvdEluc3RhbmNlc0RhdGFHcmlk
VHJlZS5wcm90b3R5cGUucG9wdWxhdGVUb3BMZXZlbCk6CisgICAgICAgICogVXNlckludGVyZmFj
ZS9WaWV3cy9PcGVuUmVzb3VyY2VEaWFsb2cuanM6CisgICAgICAgIChXSS5PcGVuUmVzb3VyY2VE
aWFsb2cucHJvdG90eXBlLl9hZGRTY3JpcHRzRm9yVGFyZ2V0KToKKyAgICAgICAgKiBVc2VySW50
ZXJmYWNlL1ZpZXdzL1NwcmVhZHNoZWV0Q1NTU3R5bGVEZWNsYXJhdGlvbkVkaXRvci5qczoKKyAg
ICAgICAgKFdJLlNwcmVhZHNoZWV0Q1NTU3R5bGVEZWNsYXJhdGlvbkVkaXRvcik6CisgICAgICAg
ICogVXNlckludGVyZmFjZS9WaWV3cy9TdGFja1RyYWNlVmlldy5qczoKKyAgICAgICAgKFdJLlN0
YWNrVHJhY2VWaWV3KToKKyAgICAgICAgKiBVc2VySW50ZXJmYWNlL1ZpZXdzL1ZpZXcuanM6Cisg
ICAgICAgIChXSS5WaWV3LnByb3RvdHlwZS5fbGF5b3V0U3VidHJlZSk6CisgICAgICAgICogVXNl
ckludGVyZmFjZS9EZWJ1Zy9VbmNhdWdodEV4Y2VwdGlvblJlcG9ydGVyLmpzOgorICAgICAgICAo
aGFuZGxlVW5jYXVnaHRFeGNlcHRpb25SZWNvcmQpOgorCiAyMDE5LTEyLTA1ICBEZXZpbiBSb3Vz
c28gIDxkcm91c3NvQGFwcGxlLmNvbT4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBDb25zb2xl
OiBjb3B5aW5nIGFuIGV2YWx1YXRpb24gcmVzdWx0IHNob3VsZG4ndCBpbmNsdWRlIHRoZSBzYXZl
ZCB2YXJpYWJsZSBpbmRleApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJ
bnRlcmZhY2UvQmFzZS9NYWluLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvQmFzZS9NYWluLmpzCmluZGV4IDM3MTFiMmFlYjMwZTY3YjYwMjA3MDdmZDY5ZjgyZDBlOTRi
MDVlNmUuLjZkODFjZmNiNTEyNDhiMTljYTMyNjAwMjNkMzQzMDExMjRkZWEwMmUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0Jhc2UvTWFpbi5qcworKysg
Yi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9CYXNlL01haW4uanMKQEAgLTI2
NDEsNyArMjY0MSw3IEBAIFdJLnNldFpvb21GYWN0b3IgPSBmdW5jdGlvbihmYWN0b3IpCiBXSS5y
ZXNvbHZlZExheW91dERpcmVjdGlvbiA9IGZ1bmN0aW9uKCkKIHsKICAgICBsZXQgbGF5b3V0RGly
ZWN0aW9uID0gV0kuc2V0dGluZ3MuZGVidWdMYXlvdXREaXJlY3Rpb24udmFsdWU7Ci0gICAgaWYg
KCFXSS5pc0RlYnVnVUlFbmFibGVkKCkgfHwgbGF5b3V0RGlyZWN0aW9uID09PSBXSS5MYXlvdXRE
aXJlY3Rpb24uU3lzdGVtKQorICAgIGlmIChsYXlvdXREaXJlY3Rpb24gPT09IFdJLkxheW91dERp
cmVjdGlvbi5TeXN0ZW0pCiAgICAgICAgIGxheW91dERpcmVjdGlvbiA9IEluc3BlY3RvckZyb250
ZW5kSG9zdC51c2VySW50ZXJmYWNlTGF5b3V0RGlyZWN0aW9uKCk7CiAgICAgcmV0dXJuIGxheW91
dERpcmVjdGlvbjsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9CYXNlL1NldHRpbmcuanMgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVy
ZmFjZS9CYXNlL1NldHRpbmcuanMKaW5kZXggODA2MGM0MTkzNTQ1M2FlNGNjMjA1Y2JmNjQzMjA2
ZWFiZDA3ZGRhOC4uN2VjYjc4OGI3ZmIxNjdjOWE4OGJiZWQ3YzUxMmRiMTYzZjFkMTVhNSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvQmFzZS9TZXR0aW5n
LmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0Jhc2UvU2V0dGlu
Zy5qcwpAQCAtODIsMTAgKzgyLDggQEAgV0kuU2V0dGluZyA9IGNsYXNzIFNldHRpbmcgZXh0ZW5k
cyBXSS5PYmplY3QKIAogICAgIC8vIFB1YmxpYwogCi0gICAgZ2V0IG5hbWUoKQotICAgIHsKLSAg
ICAgICAgcmV0dXJuIHRoaXMuX25hbWU7Ci0gICAgfQorICAgIGdldCBuYW1lKCkgeyByZXR1cm4g
dGhpcy5fbmFtZTsgfQorICAgIGdldCBkZWZhdWx0VmFsdWUoKSB7IHJldHVybiB0aGlzLl9kZWZh
dWx0VmFsdWU7IH0KIAogICAgIGdldCB2YWx1ZSgpCiAgICAgewpAQCAtMTE2LDE0ICsxMTQsNiBA
QCBXSS5TZXR0aW5nID0gY2xhc3MgU2V0dGluZyBleHRlbmRzIFdJLk9iamVjdAogICAgICAgICB0
aGlzLnNhdmUoKTsKICAgICB9CiAKLSAgICBnZXQgdmFsdWVSZXNwZWN0aW5nRGVidWdVSUF2YWls
YWJpbGl0eSgpCi0gICAgewotICAgICAgICBpZiAodGhpcy5fbmFtZS5zdGFydHNXaXRoKCJkZWJ1
Zy0iKSB8fCB0aGlzLl9uYW1lLnN0YXJ0c1dpdGgoImVuZ2luZWVyaW5nLSIpKQotICAgICAgICAg
ICAgcmV0dXJuIFdJLmlzRGVidWdVSUVuYWJsZWQoKSA/IHRoaXMudmFsdWUgOiB0aGlzLl9kZWZh
dWx0VmFsdWU7Ci0KLSAgICAgICAgcmV0dXJuIHRoaXMudmFsdWU7Ci0gICAgfQotCiAgICAgc2F2
ZSgpCiAgICAgewogICAgICAgICBpZiAoIXdpbmRvdy5JbnNwZWN0b3JUZXN0ICYmIHdpbmRvdy5s
b2NhbFN0b3JhZ2UpIHsKQEAgLTE1MSw2ICsxNDEsNDAgQEAgV0kuU2V0dGluZy5FdmVudCA9IHsK
ICAgICBDaGFuZ2VkOiAic2V0dGluZy1jaGFuZ2VkIgogfTsKIAorV0kuRW5naW5lZXJpbmdTZXR0
aW5nID0gY2xhc3MgRW5naW5lZXJpbmdTZXR0aW5nIGV4dGVuZHMgV0kuU2V0dGluZworeworICAg
IGdldCB2YWx1ZSgpCisgICAgeworICAgICAgICBpZiAoV0kuaXNFbmdpbmVlcmluZ0J1aWxkKQor
ICAgICAgICAgICAgcmV0dXJuIHN1cGVyLnZhbHVlOworICAgICAgICByZXR1cm4gdGhpcy5kZWZh
dWx0VmFsdWU7CisgICAgfQorCisgICAgc2V0IHZhbHVlKHZhbHVlKQorICAgIHsKKyAgICAgICAg
Y29uc29sZS5hc3NlcnQoV0kuaXNFbmdpbmVlcmluZ0J1aWxkKTsKKyAgICAgICAgaWYgKFdJLmlz
RW5naW5lZXJpbmdCdWlsZCkKKyAgICAgICAgICAgIHN1cGVyLnZhbHVlID0gdmFsdWU7CisgICAg
fQorfTsKKworV0kuRGVidWdTZXR0aW5nID0gY2xhc3MgRGVidWdTZXR0aW5nIGV4dGVuZHMgV0ku
U2V0dGluZworeworICAgIGdldCB2YWx1ZSgpCisgICAgeworICAgICAgICBpZiAoV0kuaXNEZWJ1
Z1VJRW5hYmxlZCgpKQorICAgICAgICAgICAgcmV0dXJuIHN1cGVyLnZhbHVlOworICAgICAgICBy
ZXR1cm4gdGhpcy5kZWZhdWx0VmFsdWU7CisgICAgfQorCisgICAgc2V0IHZhbHVlKHZhbHVlKQor
ICAgIHsKKyAgICAgICAgY29uc29sZS5hc3NlcnQoV0kuaXNEZWJ1Z1VJRW5hYmxlZCgpKTsKKyAg
ICAgICAgaWYgKFdJLmlzRGVidWdVSUVuYWJsZWQoKSkKKyAgICAgICAgICAgIHN1cGVyLnZhbHVl
ID0gdmFsdWU7CisgICAgfQorfTsKKwogV0kuc2V0dGluZ3MgPSB7CiAgICAgY2FudmFzUmVjb3Jk
aW5nQXV0b0NhcHR1cmVFbmFibGVkOiBuZXcgV0kuU2V0dGluZygiY2FudmFzLXJlY29yZGluZy1h
dXRvLWNhcHR1cmUtZW5hYmxlZCIsIGZhbHNlKSwKICAgICBjYW52YXNSZWNvcmRpbmdBdXRvQ2Fw
dHVyZUZyYW1lQ291bnQ6IG5ldyBXSS5TZXR0aW5nKCJjYW52YXMtcmVjb3JkaW5nLWF1dG8tY2Fw
dHVyZS1mcmFtZS1jb3VudCIsIDEpLApAQCAtMjA1LDIwICsyMjksMjAgQEAgV0kuc2V0dGluZ3Mg
PSB7CiAgICAgcHJvdG9jb2xGaWx0ZXJNdWx0aXBsZXhpbmdCYWNrZW5kTWVzc2FnZXM6IG5ldyBX
SS5TZXR0aW5nKCJwcm90b2NvbC1maWx0ZXItbXVsdGlwbGV4aW5nLWJhY2tlbmQtbWVzc2FnZXMi
LCB0cnVlKSwKIAogICAgIC8vIEVuZ2luZWVyaW5nCi0gICAgZW5naW5lZXJpbmdTaG93SW50ZXJu
YWxTY3JpcHRzOiBuZXcgV0kuU2V0dGluZygiZW5naW5lZXJpbmctc2hvdy1pbnRlcm5hbC1zY3Jp
cHRzIiwgZmFsc2UpLAotICAgIGVuZ2luZWVyaW5nUGF1c2VGb3JJbnRlcm5hbFNjcmlwdHM6IG5l
dyBXSS5TZXR0aW5nKCJlbmdpbmVlcmluZy1wYXVzZS1mb3ItaW50ZXJuYWwtc2NyaXB0cyIsIGZh
bHNlKSwKLSAgICBlbmdpbmVlcmluZ1Nob3dJbnRlcm5hbE9iamVjdHNJbkhlYXBTbmFwc2hvdDog
bmV3IFdJLlNldHRpbmcoImVuZ2luZWVyaW5nLXNob3ctaW50ZXJuYWwtb2JqZWN0cy1pbi1oZWFw
LXNuYXBzaG90IiwgZmFsc2UpLAotICAgIGVuZ2luZWVyaW5nU2hvd1ByaXZhdGVTeW1ib2xzSW5I
ZWFwU25hcHNob3Q6IG5ldyBXSS5TZXR0aW5nKCJlbmdpbmVlcmluZy1zaG93LXByaXZhdGUtc3lt
Ym9scy1pbi1oZWFwLXNuYXBzaG90IiwgZmFsc2UpLAotICAgIGVuZ2luZWVyaW5nQWxsb3dFZGl0
aW5nVXNlckFnZW50U2hhZG93VHJlZXM6IG5ldyBXSS5TZXR0aW5nKCJlbmdpbmVlcmluZy1hbGxv
dy1lZGl0aW5nLXVzZXItYWdlbnQtc2hhZG93LXRyZWVzIiwgZmFsc2UpLAorICAgIGVuZ2luZWVy
aW5nU2hvd0ludGVybmFsU2NyaXB0czogbmV3IFdJLkVuZ2luZWVyaW5nU2V0dGluZygiZW5naW5l
ZXJpbmctc2hvdy1pbnRlcm5hbC1zY3JpcHRzIiwgZmFsc2UpLAorICAgIGVuZ2luZWVyaW5nUGF1
c2VGb3JJbnRlcm5hbFNjcmlwdHM6IG5ldyBXSS5FbmdpbmVlcmluZ1NldHRpbmcoImVuZ2luZWVy
aW5nLXBhdXNlLWZvci1pbnRlcm5hbC1zY3JpcHRzIiwgZmFsc2UpLAorICAgIGVuZ2luZWVyaW5n
U2hvd0ludGVybmFsT2JqZWN0c0luSGVhcFNuYXBzaG90OiBuZXcgV0kuRW5naW5lZXJpbmdTZXR0
aW5nKCJlbmdpbmVlcmluZy1zaG93LWludGVybmFsLW9iamVjdHMtaW4taGVhcC1zbmFwc2hvdCIs
IGZhbHNlKSwKKyAgICBlbmdpbmVlcmluZ1Nob3dQcml2YXRlU3ltYm9sc0luSGVhcFNuYXBzaG90
OiBuZXcgV0kuRW5naW5lZXJpbmdTZXR0aW5nKCJlbmdpbmVlcmluZy1zaG93LXByaXZhdGUtc3lt
Ym9scy1pbi1oZWFwLXNuYXBzaG90IiwgZmFsc2UpLAorICAgIGVuZ2luZWVyaW5nQWxsb3dFZGl0
aW5nVXNlckFnZW50U2hhZG93VHJlZXM6IG5ldyBXSS5FbmdpbmVlcmluZ1NldHRpbmcoImVuZ2lu
ZWVyaW5nLWFsbG93LWVkaXRpbmctdXNlci1hZ2VudC1zaGFkb3ctdHJlZXMiLCBmYWxzZSksCiAK
ICAgICAvLyBEZWJ1ZwotICAgIGRlYnVnU2hvd0NvbnNvbGVFdmFsdWF0aW9uczogbmV3IFdJLlNl
dHRpbmcoImRlYnVnLXNob3ctY29uc29sZS1ldmFsdWF0aW9ucyIsIGZhbHNlKSwKLSAgICBkZWJ1
Z0VuYWJsZUxheW91dEZsYXNoaW5nOiBuZXcgV0kuU2V0dGluZygiZGVidWctZW5hYmxlLWxheW91
dC1mbGFzaGluZyIsIGZhbHNlKSwKLSAgICBkZWJ1Z0VuYWJsZVN0eWxlRWRpdGluZ0RlYnVnTW9k
ZTogbmV3IFdJLlNldHRpbmcoImRlYnVnLWVuYWJsZS1zdHlsZS1lZGl0aW5nLWRlYnVnLW1vZGUi
LCBmYWxzZSksCi0gICAgZGVidWdFbmFibGVVbmNhdWdodEV4Y2VwdGlvblJlcG9ydGVyOiBuZXcg
V0kuU2V0dGluZygiZGVidWctZW5hYmxlLXVuY2F1Z2h0LWV4Y2VwdGlvbi1yZXBvcnRlciIsIHRy
dWUpLAotICAgIGRlYnVnRW5hYmxlRGlhZ25vc3RpY0xvZ2dpbmc6IG5ldyBXSS5TZXR0aW5nKCJk
ZWJ1Zy1lbmFibGUtZGlhZ25vc3RpYy1sb2dnaW5nIiwgdHJ1ZSksCi0gICAgZGVidWdBdXRvTG9n
RGlhZ25vc3RpY0V2ZW50czogbmV3IFdJLlNldHRpbmcoImRlYnVnLWF1dG8tbG9nLWRpYWdub3N0
aWMtZXZlbnRzIiwgZmFsc2UpLAotICAgIGRlYnVnTGF5b3V0RGlyZWN0aW9uOiBuZXcgV0kuU2V0
dGluZygiZGVidWctbGF5b3V0LWRpcmVjdGlvbi1vdmVycmlkZSIsICJzeXN0ZW0iKSwKKyAgICBk
ZWJ1Z1Nob3dDb25zb2xlRXZhbHVhdGlvbnM6IG5ldyBXSS5EZWJ1Z1NldHRpbmcoImRlYnVnLXNo
b3ctY29uc29sZS1ldmFsdWF0aW9ucyIsIGZhbHNlKSwKKyAgICBkZWJ1Z0VuYWJsZUxheW91dEZs
YXNoaW5nOiBuZXcgV0kuRGVidWdTZXR0aW5nKCJkZWJ1Zy1lbmFibGUtbGF5b3V0LWZsYXNoaW5n
IiwgZmFsc2UpLAorICAgIGRlYnVnRW5hYmxlU3R5bGVFZGl0aW5nRGVidWdNb2RlOiBuZXcgV0ku
RGVidWdTZXR0aW5nKCJkZWJ1Zy1lbmFibGUtc3R5bGUtZWRpdGluZy1kZWJ1Zy1tb2RlIiwgZmFs
c2UpLAorICAgIGRlYnVnRW5hYmxlVW5jYXVnaHRFeGNlcHRpb25SZXBvcnRlcjogbmV3IFdJLkRl
YnVnU2V0dGluZygiZGVidWctZW5hYmxlLXVuY2F1Z2h0LWV4Y2VwdGlvbi1yZXBvcnRlciIsIHRy
dWUpLAorICAgIGRlYnVnRW5hYmxlRGlhZ25vc3RpY0xvZ2dpbmc6IG5ldyBXSS5EZWJ1Z1NldHRp
bmcoImRlYnVnLWVuYWJsZS1kaWFnbm9zdGljLWxvZ2dpbmciLCB0cnVlKSwKKyAgICBkZWJ1Z0F1
dG9Mb2dEaWFnbm9zdGljRXZlbnRzOiBuZXcgV0kuRGVidWdTZXR0aW5nKCJkZWJ1Zy1hdXRvLWxv
Zy1kaWFnbm9zdGljLWV2ZW50cyIsIGZhbHNlKSwKKyAgICBkZWJ1Z0xheW91dERpcmVjdGlvbjog
bmV3IFdJLkRlYnVnU2V0dGluZygiZGVidWctbGF5b3V0LWRpcmVjdGlvbi1vdmVycmlkZSIsICJz
eXN0ZW0iKSwKIH07CiAKIFdJLnByZXZpZXdGZWF0dXJlcyA9IFsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0NvbnRyb2xsZXJzL0RPTU1hbmFnZXIuanMg
Yi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Db250cm9sbGVycy9ET01NYW5h
Z2VyLmpzCmluZGV4IDU5OWYzOThjMTUwOTY1MThlNmRhMTZkMWY0ZTA1MTgxOGM3OWU1MDIuLjY2
OWVmOWUwOWQwMTY3NWY1MjJhMTg3MWU4NDYxN2NhYTA1OTM5YWYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0NvbnRyb2xsZXJzL0RPTU1hbmFnZXIuanMK
KysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvQ29udHJvbGxlcnMvRE9N
TWFuYWdlci5qcwpAQCAtOTYsOCArOTYsNyBAQCBXSS5ET01NYW5hZ2VyID0gY2xhc3MgRE9NTWFu
YWdlciBleHRlbmRzIFdJLk9iamVjdAogICAgIHN0YXRpYyBzdXBwb3J0c0VkaXRpbmdVc2VyQWdl
bnRTaGFkb3dUcmVlcyh7ZnJvbnRlbmRPbmx5LCB0YXJnZXR9ID0ge30pCiAgICAgewogICAgICAg
ICB0YXJnZXQgPSB0YXJnZXQgfHwgSW5zcGVjdG9yQmFja2VuZDsKLSAgICAgICAgcmV0dXJuIFdJ
LmlzRW5naW5lZXJpbmdCdWlsZAotICAgICAgICAgICAgJiYgV0kuc2V0dGluZ3MuZW5naW5lZXJp
bmdBbGxvd0VkaXRpbmdVc2VyQWdlbnRTaGFkb3dUcmVlcy52YWx1ZQorICAgICAgICByZXR1cm4g
V0kuc2V0dGluZ3MuZW5naW5lZXJpbmdBbGxvd0VkaXRpbmdVc2VyQWdlbnRTaGFkb3dUcmVlcy52
YWx1ZQogICAgICAgICAgICAgJiYgKGZyb250ZW5kT25seSB8fCB0YXJnZXQuaGFzQ29tbWFuZCgi
RE9NLnNldEFsbG93RWRpdGluZ1VzZXJBZ2VudFNoYWRvd1RyZWVzIikpOwogCiAgICAgfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvQ29udHJvbGxlcnMv
RGVidWdnZXJNYW5hZ2VyLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2Uv
Q29udHJvbGxlcnMvRGVidWdnZXJNYW5hZ2VyLmpzCmluZGV4IDU4OTZkMjg0NTc5NGRlZDNjOWE1
MzA3OTAzYjE1OWU5ZDBiYjdkZDQuLjE5ODdhMDI2OTVlMzgyOTVhMjVhODBjMGViOTU2NDU0ZWEz
MThlZjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0Nv
bnRyb2xsZXJzL0RlYnVnZ2VyTWFuYWdlci5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkv
VXNlckludGVyZmFjZS9Db250cm9sbGVycy9EZWJ1Z2dlck1hbmFnZXIuanMKQEAgLTQxMCw5ICs0
MTAsOSBAQCBXSS5EZWJ1Z2dlck1hbmFnZXIgPSBjbGFzcyBEZWJ1Z2dlck1hbmFnZXIgZXh0ZW5k
cyBXSS5PYmplY3QKICAgICAgICAgICAgIGZvciAobGV0IHNjcmlwdCBvZiB0YXJnZXREYXRhLnNj
cmlwdHMpIHsKICAgICAgICAgICAgICAgICBpZiAoc2NyaXB0LnJlc291cmNlKQogICAgICAgICAg
ICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgICAgICAgICBpZiAoKCFXSS5pc0RlYnVnVUlF
bmFibGVkKCkgfHwgIVdJLnNldHRpbmdzLmRlYnVnU2hvd0NvbnNvbGVFdmFsdWF0aW9ucy52YWx1
ZSkgJiYgaXNXZWJJbnNwZWN0b3JDb25zb2xlRXZhbHVhdGlvblNjcmlwdChzY3JpcHQuc291cmNl
VVJMKSkKKyAgICAgICAgICAgICAgICBpZiAoIVdJLnNldHRpbmdzLmRlYnVnU2hvd0NvbnNvbGVF
dmFsdWF0aW9ucy52YWx1ZSAmJiBpc1dlYkluc3BlY3RvckNvbnNvbGVFdmFsdWF0aW9uU2NyaXB0
KHNjcmlwdC5zb3VyY2VVUkwpKQogICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAg
ICAgICAgICAgICBpZiAoKCFXSS5pc0VuZ2luZWVyaW5nQnVpbGQgfHwgIVdJLnNldHRpbmdzLmVu
Z2luZWVyaW5nU2hvd0ludGVybmFsU2NyaXB0cy52YWx1ZSkgJiYgaXNXZWJLaXRJbnRlcm5hbFNj
cmlwdChzY3JpcHQuc291cmNlVVJMKSkKKyAgICAgICAgICAgICAgICBpZiAoIVdJLnNldHRpbmdz
LmVuZ2luZWVyaW5nU2hvd0ludGVybmFsU2NyaXB0cy52YWx1ZSAmJiBpc1dlYktpdEludGVybmFs
U2NyaXB0KHNjcmlwdC5zb3VyY2VVUkwpKQogICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsK
ICAgICAgICAgICAgICAgICBrbm93blNjcmlwdHMucHVzaChzY3JpcHQpOwogICAgICAgICAgICAg
fQpAQCAtNzcyLDcgKzc3Miw3IEBAIFdJLkRlYnVnZ2VyTWFuYWdlciA9IGNsYXNzIERlYnVnZ2Vy
TWFuYWdlciBleHRlbmRzIFdJLk9iamVjdAogICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogCiAg
ICAgICAgICAgICAvLyBFeGNsdWRlIHRoZSBjYXNlIHdoZXJlIHRoZSBjYWxsIGZyYW1lIGlzIGlu
IHRoZSBpbnNwZWN0b3IgY29kZS4KLSAgICAgICAgICAgIGlmICgoIVdJLmlzRW5naW5lZXJpbmdC
dWlsZCB8fCAhV0kuc2V0dGluZ3MuZW5naW5lZXJpbmdTaG93SW50ZXJuYWxTY3JpcHRzLnZhbHVl
KSAmJiBpc1dlYktpdEludGVybmFsU2NyaXB0KHNvdXJjZUNvZGVMb2NhdGlvbi5zb3VyY2VDb2Rl
LnNvdXJjZVVSTCkpCisgICAgICAgICAgICBpZiAoIVdJLnNldHRpbmdzLmVuZ2luZWVyaW5nU2hv
d0ludGVybmFsU2NyaXB0cy52YWx1ZSAmJiBpc1dlYktpdEludGVybmFsU2NyaXB0KHNvdXJjZUNv
ZGVMb2NhdGlvbi5zb3VyY2VDb2RlLnNvdXJjZVVSTCkpCiAgICAgICAgICAgICAgICAgY29udGlu
dWU7CiAKICAgICAgICAgICAgIGxldCBzY29wZUNoYWluID0gdGhpcy5fc2NvcGVDaGFpbkZyb21Q
YXlsb2FkKHRhcmdldCwgY2FsbEZyYW1lUGF5bG9hZC5zY29wZUNoYWluKTsKQEAgLTg1NSw3ICs4
NTUsNyBAQCBXSS5EZWJ1Z2dlck1hbmFnZXIgPSBjbGFzcyBEZWJ1Z2dlck1hbmFnZXIgZXh0ZW5k
cyBXSS5PYmplY3QKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgfQogCi0gICAgICAgIGlm
ICgoIVdJLmlzRW5naW5lZXJpbmdCdWlsZCB8fCAhV0kuc2V0dGluZ3MuZW5naW5lZXJpbmdTaG93
SW50ZXJuYWxTY3JpcHRzLnZhbHVlKSAmJiBpc1dlYktpdEludGVybmFsU2NyaXB0KHNvdXJjZVVS
TCkpCisgICAgICAgIGlmICghV0kuc2V0dGluZ3MuZW5naW5lZXJpbmdTaG93SW50ZXJuYWxTY3Jp
cHRzLnZhbHVlICYmIGlzV2ViS2l0SW50ZXJuYWxTY3JpcHQoc291cmNlVVJMKSkKICAgICAgICAg
ICAgIHJldHVybjsKIAogICAgICAgICBsZXQgcmFuZ2UgPSBuZXcgV0kuVGV4dFJhbmdlKHN0YXJ0
TGluZSwgc3RhcnRDb2x1bW4sIGVuZExpbmUsIGVuZENvbHVtbik7CkBAIC04ODUsMTEgKzg4NSwx
MSBAQCBXSS5EZWJ1Z2dlck1hbmFnZXIgPSBjbGFzcyBEZWJ1Z2dlck1hbmFnZXIgZXh0ZW5kcyBX
SS5PYmplY3QKIAogICAgICAgICBpZiAoaXNXZWJLaXRJbnRlcm5hbFNjcmlwdChzY3JpcHQuc291
cmNlVVJMKSkgewogICAgICAgICAgICAgdGhpcy5faW50ZXJuYWxXZWJLaXRTY3JpcHRzLnB1c2go
c2NyaXB0KTsKLSAgICAgICAgICAgIGlmICghV0kuaXNFbmdpbmVlcmluZ0J1aWxkIHx8ICFXSS5z
ZXR0aW5ncy5lbmdpbmVlcmluZ1Nob3dJbnRlcm5hbFNjcmlwdHMudmFsdWUpCisgICAgICAgICAg
ICBpZiAoIVdJLnNldHRpbmdzLmVuZ2luZWVyaW5nU2hvd0ludGVybmFsU2NyaXB0cy52YWx1ZSkK
ICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIH0KIAotICAgICAgICBpZiAoKCFXSS5p
c0RlYnVnVUlFbmFibGVkKCkgfHwgIVdJLnNldHRpbmdzLmRlYnVnU2hvd0NvbnNvbGVFdmFsdWF0
aW9ucy52YWx1ZSkgJiYgaXNXZWJJbnNwZWN0b3JDb25zb2xlRXZhbHVhdGlvblNjcmlwdChzY3Jp
cHQuc291cmNlVVJMKSkKKyAgICAgICAgaWYgKCFXSS5zZXR0aW5ncy5kZWJ1Z1Nob3dDb25zb2xl
RXZhbHVhdGlvbnMudmFsdWUgJiYgaXNXZWJJbnNwZWN0b3JDb25zb2xlRXZhbHVhdGlvblNjcmlw
dChzY3JpcHQuc291cmNlVVJMKSkKICAgICAgICAgICAgIHJldHVybjsKIAogICAgICAgICB0aGlz
LmRpc3BhdGNoRXZlbnRUb0xpc3RlbmVycyhXSS5EZWJ1Z2dlck1hbmFnZXIuRXZlbnQuU2NyaXB0
QWRkZWQsIHtzY3JpcHR9KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2Vy
SW50ZXJmYWNlL0NvbnRyb2xsZXJzL0RpYWdub3N0aWNDb250cm9sbGVyLmpzIGIvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvQ29udHJvbGxlcnMvRGlhZ25vc3RpY0NvbnRyb2xs
ZXIuanMKaW5kZXggY2Y4M2NhM2VmNzMwZGNiMGUyNjE3YTU4NWE0MTUzOGRjNTliZDUyZi4uMWIy
MjQwZTJhNWIxYjQ5MDg1NzI2MjIxYTllMWU3ZTMyOGRlYjQxMCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvQ29udHJvbGxlcnMvRGlhZ25vc3RpY0NvbnRy
b2xsZXIuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvQ29udHJv
bGxlcnMvRGlhZ25vc3RpY0NvbnRyb2xsZXIuanMKQEAgLTMwLDcgKzMwLDcgQEAgV0kuRGlhZ25v
c3RpY0NvbnRyb2xsZXIgPSBjbGFzcyBEaWFnbm9zdGljQ29udHJvbGxlcgogICAgICAgICB0aGlz
Ll9kaWFnbm9zdGljTG9nZ2luZ0F2YWlsYWJsZSA9IGZhbHNlOwogICAgICAgICB0aGlzLl9yZWNv
cmRlcnMgPSBuZXcgU2V0OwogCi0gICAgICAgIHRoaXMuX2F1dG9Mb2dEaWFnbm9zdGljRXZlbnRz
VG9Db25zb2xlID0gV0kuc2V0dGluZ3MuZGVidWdBdXRvTG9nRGlhZ25vc3RpY0V2ZW50cy52YWx1
ZVJlc3BlY3RpbmdEZWJ1Z1VJQXZhaWxhYmlsaXR5OworICAgICAgICB0aGlzLl9hdXRvTG9nRGlh
Z25vc3RpY0V2ZW50c1RvQ29uc29sZSA9IFdJLnNldHRpbmdzLmRlYnVnQXV0b0xvZ0RpYWdub3N0
aWNFdmVudHMudmFsdWU7CiAgICAgICAgIHRoaXMuX2xvZ1RvQ29uc29sZU1ldGhvZCA9IHdpbmRv
dy5JbnNwZWN0b3JUZXN0ID8gSW5zcGVjdG9yVGVzdC5sb2cuYmluZChJbnNwZWN0b3JUZXN0KSA6
IGNvbnNvbGUubG9nOwogCiAgICAgICAgIFdJLnNldHRpbmdzLmRlYnVnRW5hYmxlRGlhZ25vc3Rp
Y0xvZ2dpbmcuYWRkRXZlbnRMaXN0ZW5lcihXSS5TZXR0aW5nLkV2ZW50LkNoYW5nZWQsIHRoaXMu
X2RlYnVnRW5hYmxlRGlhZ25vc3RpY0xvZ2dpbmdTZXR0aW5nRGlkQ2hhbmdlLCB0aGlzKTsKQEAg
LTgzLDEyICs4MywxMiBAQCBXSS5EaWFnbm9zdGljQ29udHJvbGxlciA9IGNsYXNzIERpYWdub3N0
aWNDb250cm9sbGVyCiAKICAgICBfZGVidWdBdXRvTG9nRGlhZ25vc3RpY0V2ZW50c1NldHRpbmdE
aWRDaGFuZ2UoKQogICAgIHsKLSAgICAgICAgdGhpcy5fYXV0b0xvZ0RpYWdub3N0aWNFdmVudHNU
b0NvbnNvbGUgPSBXSS5zZXR0aW5ncy5kZWJ1Z0F1dG9Mb2dEaWFnbm9zdGljRXZlbnRzLnZhbHVl
UmVzcGVjdGluZ0RlYnVnVUlBdmFpbGFiaWxpdHk7CisgICAgICAgIHRoaXMuX2F1dG9Mb2dEaWFn
bm9zdGljRXZlbnRzVG9Db25zb2xlID0gV0kuc2V0dGluZ3MuZGVidWdBdXRvTG9nRGlhZ25vc3Rp
Y0V2ZW50cy52YWx1ZTsKICAgICB9CiAKICAgICBfdXBkYXRlUmVjb3JkZXJTdGF0ZXMoKQogICAg
IHsKLSAgICAgICAgbGV0IGlzQWN0aXZlID0gdGhpcy5fZGlhZ25vc3RpY0xvZ2dpbmdBdmFpbGFi
bGUgJiYgV0kuc2V0dGluZ3MuZGVidWdFbmFibGVEaWFnbm9zdGljTG9nZ2luZy52YWx1ZVJlc3Bl
Y3RpbmdEZWJ1Z1VJQXZhaWxhYmlsaXR5OworICAgICAgICBsZXQgaXNBY3RpdmUgPSB0aGlzLl9k
aWFnbm9zdGljTG9nZ2luZ0F2YWlsYWJsZSAmJiBXSS5zZXR0aW5ncy5kZWJ1Z0VuYWJsZURpYWdu
b3N0aWNMb2dnaW5nLnZhbHVlOwogICAgICAgICBmb3IgKGxldCByZWNvcmRlciBvZiB0aGlzLl9y
ZWNvcmRlcnMpCiAgICAgICAgICAgICByZWNvcmRlci5hY3RpdmUgPSBpc0FjdGl2ZTsKICAgICB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9EZWJ1Zy9V
bmNhdWdodEV4Y2VwdGlvblJlcG9ydGVyLmpzIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJ
bnRlcmZhY2UvRGVidWcvVW5jYXVnaHRFeGNlcHRpb25SZXBvcnRlci5qcwppbmRleCBhMzFjZDQ4
NjZhNDg2MWJlMWVmOTEyODNjNjhkMDhiMjk1ZDE4ZDc3Li4yZGViY2M4N2E1MzQwMjlhZDg3MzNi
M2QyZWEwMDkwMzRlYjY2ZjA1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNl
ckludGVyZmFjZS9EZWJ1Zy9VbmNhdWdodEV4Y2VwdGlvblJlcG9ydGVyLmpzCisrKyBiL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL0RlYnVnL1VuY2F1Z2h0RXhjZXB0aW9uUmVw
b3J0ZXIuanMKQEAgLTk0LDcgKzk0LDcgQEAgZnVuY3Rpb24gaGFuZGxlVW5oYW5kbGVkUHJvbWlz
ZVJlamVjdGlvbihldmVudCkgewogCiBmdW5jdGlvbiBoYW5kbGVVbmNhdWdodEV4Y2VwdGlvblJl
Y29yZChleGNlcHRpb25SZWNvcmQpIHsKICAgICB0cnkgewotICAgICAgICBpZiAoV0kuaXNEZWJ1
Z1VJRW5hYmxlZCgpICYmICFXSS5zZXR0aW5ncy5kZWJ1Z0VuYWJsZVVuY2F1Z2h0RXhjZXB0aW9u
UmVwb3J0ZXIudmFsdWUpCisgICAgICAgIGlmICghV0kuc2V0dGluZ3MuZGVidWdFbmFibGVVbmNh
dWdodEV4Y2VwdGlvblJlcG9ydGVyLnZhbHVlKQogICAgICAgICAgICAgcmV0dXJuOwogICAgIH0g
Y2F0Y2ggeyB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJm
YWNlL01vZGVscy9DU1NQcm9wZXJ0eS5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL01vZGVscy9DU1NQcm9wZXJ0eS5qcwppbmRleCA2NGM4MzU4ZjhkMDBmYTQ0NjQ3NDJl
NmViOWEzMzA3YTBiOWMxYWMwLi4yNzhhNjcxNTQ4YmQ2NjI2NzFlNWQ0N2E0YWEyYzFkNzA4Zjc0
MDFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Nb2Rl
bHMvQ1NTUHJvcGVydHkuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZh
Y2UvTW9kZWxzL0NTU1Byb3BlcnR5LmpzCkBAIC01MDIsNyArNTAyLDcgQEAgV0kuQ1NTUHJvcGVy
dHkgPSBjbGFzcyBDU1NQcm9wZXJ0eSBleHRlbmRzIFdJLk9iamVjdAogCiAgICAgICAgIGNvbnNv
bGUuYXNzZXJ0KG9sZFRleHQgPT09IHN0eWxlVGV4dC5zbGljZShyYW5nZS5zdGFydE9mZnNldCwg
cmFuZ2UuZW5kT2Zmc2V0KSwgIl9zdHlsZVNoZWV0VGV4dFJhbmdlIGRhdGEgaXMgaW52YWxpZC4i
KTsKIAotICAgICAgICBpZiAoV0kuaXNEZWJ1Z1VJRW5hYmxlZCgpICYmIFdJLnNldHRpbmdzLmRl
YnVnRW5hYmxlU3R5bGVFZGl0aW5nRGVidWdNb2RlLnZhbHVlKSB7CisgICAgICAgIGlmIChXSS5z
ZXR0aW5ncy5kZWJ1Z0VuYWJsZVN0eWxlRWRpdGluZ0RlYnVnTW9kZS52YWx1ZSkgewogICAgICAg
ICAgICAgbGV0IHByZWZpeCA9IHN0eWxlVGV4dC5zbGljZSgwLCByYW5nZS5zdGFydE9mZnNldCk7
CiAgICAgICAgICAgICBsZXQgcG9zdGZpeCA9IHN0eWxlVGV4dC5zbGljZShyYW5nZS5lbmRPZmZz
ZXQpOwogICAgICAgICAgICAgY29uc29sZS5pbmZvKGAke3ByZWZpeH0lYyR7b2xkVGV4dH0lYyR7
bmV3VGV4dH0lYyR7cG9zdGZpeH1gLCBgYmFja2dyb3VuZDogaHNsKDM1NiwgMTAwJSwgOTAlKTsg
Y29sb3I6IGJsYWNrYCwgYGJhY2tncm91bmQ6IGhzbCgxMDAsIDEwMCUsIDkxJSk7IGNvbG9yOiBi
bGFja2AsIGBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudGApOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
Ykluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9kZWxzL0NTU1N0eWxlRGVjbGFyYXRpb24uanMg
Yi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Nb2RlbHMvQ1NTU3R5bGVEZWNs
YXJhdGlvbi5qcwppbmRleCAwMmI2MDc0MDAzODBmMzgzZDllNzYyYjYyZmZiOTM2MmNhOGFjOWM1
Li40M2ZkYWJkZDcyYzRiYzY2ZWMyZTcwYmEyYTBhYzZlMDllODQ3N2Y2IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Nb2RlbHMvQ1NTU3R5bGVEZWNsYXJh
dGlvbi5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Nb2RlbHMv
Q1NTU3R5bGVEZWNsYXJhdGlvbi5qcwpAQCAtMTI0LDcgKzEyNCw3IEBAIFdJLkNTU1N0eWxlRGVj
bGFyYXRpb24gPSBjbGFzcyBDU1NTdHlsZURlY2xhcmF0aW9uIGV4dGVuZHMgV0kuT2JqZWN0CiAg
ICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KICAgICAgICAgLy8g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXBkYXRlIG9ubHkgaGFwcGVucyBoZXJl
CiAgICAgICAgIGlmICh0aGlzLl91cGRhdGVzSW5Qcm9ncmVzc0NvdW50ID4gMCAmJiAhb3B0aW9u
cy5mb3JjZVVwZGF0ZSkgewotICAgICAgICAgICAgaWYgKFdJLmlzRGVidWdVSUVuYWJsZWQoKSAm
JiBXSS5zZXR0aW5ncy5kZWJ1Z0VuYWJsZVN0eWxlRWRpdGluZ0RlYnVnTW9kZS52YWx1ZSAmJiB0
ZXh0ICE9PSB0aGlzLl90ZXh0KQorICAgICAgICAgICAgaWYgKFdJLnNldHRpbmdzLmRlYnVnRW5h
YmxlU3R5bGVFZGl0aW5nRGVidWdNb2RlLnZhbHVlICYmIHRleHQgIT09IHRoaXMuX3RleHQpCiAg
ICAgICAgICAgICAgICAgY29uc29sZS53YXJuKCJTdHlsZSBtb2RpZmllZCB3aGlsZSBlZGl0aW5n
OiIsIHRleHQpOwogCiAgICAgICAgICAgICByZXR1cm47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Qcm90b2NvbC9SZW1vdGVPYmplY3QuanMgYi9Tb3Vy
Y2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Qcm90b2NvbC9SZW1vdGVPYmplY3QuanMK
aW5kZXggOWQ1NTJkYWNjNDk4NzI5MzhkNDY3MDkyZDdhODcwNmUwZmYzODM5ZC4uYWEwZTQ0ZDQ3
Njg1ZWFiZThkMDcxNTBkNTM5YjMxYTY1MjIxYTRmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYklu
c3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvUHJvdG9jb2wvUmVtb3RlT2JqZWN0LmpzCisrKyBiL1Nv
dXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1Byb3RvY29sL1JlbW90ZU9iamVjdC5q
cwpAQCAtNTk0LDcgKzU5NCw3IEBAIFdJLlJlbW90ZU9iamVjdCA9IGNsYXNzIFJlbW90ZU9iamVj
dAogICAgICAgICAgICAgdmFyIGxvY2F0aW9uID0gcmVzcG9uc2UubG9jYXRpb247CiAgICAgICAg
ICAgICB2YXIgc291cmNlQ29kZSA9IFdJLmRlYnVnZ2VyTWFuYWdlci5zY3JpcHRGb3JJZGVudGlm
aWVyKGxvY2F0aW9uLnNjcmlwdElkLCB0aGlzLl90YXJnZXQpOwogCi0gICAgICAgICAgICBpZiAo
IXNvdXJjZUNvZGUgfHwgKCghV0kuaXNFbmdpbmVlcmluZ0J1aWxkIHx8ICFXSS5zZXR0aW5ncy5l
bmdpbmVlcmluZ1Nob3dJbnRlcm5hbFNjcmlwdHMudmFsdWUpICYmIGlzV2ViS2l0SW50ZXJuYWxT
Y3JpcHQoc291cmNlQ29kZS5zb3VyY2VVUkwpKSkgeworICAgICAgICAgICAgaWYgKCFzb3VyY2VD
b2RlIHx8ICghV0kuc2V0dGluZ3MuZW5naW5lZXJpbmdTaG93SW50ZXJuYWxTY3JpcHRzLnZhbHVl
ICYmIGlzV2ViS2l0SW50ZXJuYWxTY3JpcHQoc291cmNlQ29kZS5zb3VyY2VVUkwpKSkgewogICAg
ICAgICAgICAgICAgIHJlc3VsdC5yZXNvbHZlKFdJLlJlbW90ZU9iamVjdC5Tb3VyY2VDb2RlTG9j
YXRpb25Qcm9taXNlLk5vU291cmNlRm91bmQpOwogICAgICAgICAgICAgICAgIHJldHVybjsKICAg
ICAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJm
YWNlL1Byb3hpZXMvSGVhcFNuYXBzaG90RWRnZVByb3h5LmpzIGIvU291cmNlL1dlYkluc3BlY3Rv
clVJL1VzZXJJbnRlcmZhY2UvUHJveGllcy9IZWFwU25hcHNob3RFZGdlUHJveHkuanMKaW5kZXgg
Zjg1ZjViMjFhM2YyMmMwZDZlMGY0M2Y4ZmI0ZDUzZWUzMjRiZGU3NS4uZjFhZDkyMGJiNjc2MzZh
ZWJkZWJhYTQ5ZjU2YWUxODE0ZTI2MmVlOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3Rv
clVJL1VzZXJJbnRlcmZhY2UvUHJveGllcy9IZWFwU25hcHNob3RFZGdlUHJveHkuanMKKysrIGIv
U291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvUHJveGllcy9IZWFwU25hcHNob3RF
ZGdlUHJveHkuanMKQEAgLTQ0LDcgKzQ0LDcgQEAgV0kuSGVhcFNuYXBzaG90RWRnZVByb3h5ID0g
Y2xhc3MgSGVhcFNuYXBzaG90RWRnZVByb3h5CiAKICAgICBpc1ByaXZhdGVTeW1ib2woKQogICAg
IHsKLSAgICAgICAgaWYgKFdJLmlzRW5naW5lZXJpbmdCdWlsZCAmJiBXSS5zZXR0aW5ncy5lbmdp
bmVlcmluZ1Nob3dQcml2YXRlU3ltYm9sc0luSGVhcFNuYXBzaG90LnZhbHVlKQorICAgICAgICBp
ZiAoV0kuc2V0dGluZ3MuZW5naW5lZXJpbmdTaG93UHJpdmF0ZVN5bWJvbHNJbkhlYXBTbmFwc2hv
dC52YWx1ZSkKICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKIAogICAgICAgICByZXR1cm4gdHlw
ZW9mIHRoaXMuZGF0YSA9PT0gInN0cmluZyIgJiYgdGhpcy5kYXRhLnN0YXJ0c1dpdGgoIlByaXZh
dGVTeW1ib2wiKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJm
YWNlL1ZpZXdzL0NvbnNvbGVNZXNzYWdlVmlldy5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9V
c2VySW50ZXJmYWNlL1ZpZXdzL0NvbnNvbGVNZXNzYWdlVmlldy5qcwppbmRleCAzMzllNzlmYzE3
YjRiODlkMTFkNThiZWNiN2FkY2M2Mjk0MjVlOTVmLi4wM2Y2OTI5ZTU4YTFjYjBmMzhhNzhlMWMy
NjBiOTlhNDIwYjRhYzRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlcklu
dGVyZmFjZS9WaWV3cy9Db25zb2xlTWVzc2FnZVZpZXcuanMKKysrIGIvU291cmNlL1dlYkluc3Bl
Y3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvQ29uc29sZU1lc3NhZ2VWaWV3LmpzCkBAIC00NDAs
NyArNDQwLDcgQEAgV0kuQ29uc29sZU1lc3NhZ2VWaWV3ID0gY2xhc3MgQ29uc29sZU1lc3NhZ2VW
aWV3IGV4dGVuZHMgV0kuT2JqZWN0CiAgICAgICAgICAgICB9KTsKICAgICAgICAgfQogCi0gICAg
ICAgIGlmIChjYWxsRnJhbWUgJiYgKCFjYWxsRnJhbWUuaXNDb25zb2xlRXZhbHVhdGlvbiB8fCAo
V0kuaXNEZWJ1Z1VJRW5hYmxlZCgpICYmIFdJLnNldHRpbmdzLmRlYnVnU2hvd0NvbnNvbGVFdmFs
dWF0aW9ucy52YWx1ZSkpKSB7CisgICAgICAgIGlmIChjYWxsRnJhbWUgJiYgKCFjYWxsRnJhbWUu
aXNDb25zb2xlRXZhbHVhdGlvbiB8fCBXSS5zZXR0aW5ncy5kZWJ1Z1Nob3dDb25zb2xlRXZhbHVh
dGlvbnMudmFsdWUpKSB7CiAgICAgICAgICAgICBsZXQgZXhpc3RpbmdDYWxsRnJhbWVWaWV3ID0g
dGhpcy5fY2FsbEZyYW1lVmlldzsKIAogICAgICAgICAgICAgdGhpcy5fY2FsbEZyYW1lVmlldyA9
IG5ldyBXSS5DYWxsRnJhbWVWaWV3KGNhbGxGcmFtZSwge3Nob3dGdW5jdGlvbk5hbWU6ICEhY2Fs
bEZyYW1lLmZ1bmN0aW9uTmFtZX0pOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3RvclVJ
L1VzZXJJbnRlcmZhY2UvVmlld3MvSGVhcFNuYXBzaG90RGF0YUdyaWRUcmVlLmpzIGIvU291cmNl
L1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvSGVhcFNuYXBzaG90RGF0YUdyaWRU
cmVlLmpzCmluZGV4IDRlMDJlMGE4ZjE1YjQyMDhhMjJjOTY1NzkzMzYwNTE0MmM2NjgwOTkuLmQy
OGYwNmFlMTIwMTY0NDIzOWVkNWFhMWVlZDUyZDI2MmE1Njk5MjAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL0hlYXBTbmFwc2hvdERhdGFHcmlk
VHJlZS5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9I
ZWFwU25hcHNob3REYXRhR3JpZFRyZWUuanMKQEAgLTIxNiw3ICsyMTYsNyBAQCBXSS5IZWFwU25h
cHNob3RJbnN0YW5jZXNEYXRhR3JpZFRyZWUgPSBjbGFzcyBIZWFwU25hcHNob3RJbnN0YW5jZXNE
YXRhR3JpZFRyZWUgZQogICAgIHBvcHVsYXRlVG9wTGV2ZWwoKQogICAgIHsKICAgICAgICAgLy8g
UG9wdWxhdGUgdGhlIGZpcnN0IGxldmVsIHdpdGggdGhlIGRpZmZlcmVudCBjbGFzc2VzLgotICAg
ICAgICBsZXQgc2tpcEludGVybmFsT25seU9iamVjdHMgPSAhV0kuaXNFbmdpbmVlcmluZ0J1aWxk
IHx8ICFXSS5zZXR0aW5ncy5lbmdpbmVlcmluZ1Nob3dJbnRlcm5hbE9iamVjdHNJbkhlYXBTbmFw
c2hvdC52YWx1ZTsKKyAgICAgICAgbGV0IHNraXBJbnRlcm5hbE9ubHlPYmplY3RzID0gIVdJLnNl
dHRpbmdzLmVuZ2luZWVyaW5nU2hvd0ludGVybmFsT2JqZWN0c0luSGVhcFNuYXBzaG90LnZhbHVl
OwogCiAgICAgICAgIGZvciAobGV0IFtjbGFzc05hbWUsIHtzaXplLCByZXRhaW5lZFNpemUsIGNv
dW50LCBpbnRlcm5hbENvdW50LCBkZWFkQ291bnQsIG9iamVjdENvdW50fV0gb2YgdGhpcy5oZWFw
U25hcHNob3QuY2F0ZWdvcmllcykgewogICAgICAgICAgICAgY29uc29sZS5hc3NlcnQoY291bnQg
PiAwKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1Zp
ZXdzL09wZW5SZXNvdXJjZURpYWxvZy5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50
ZXJmYWNlL1ZpZXdzL09wZW5SZXNvdXJjZURpYWxvZy5qcwppbmRleCA3MTI3YWY5MWU4NDUzYzVj
NzE0YWNmZjcyM2FiZGVjZGRlMTVhNGM4Li4xZWFlY2RjODhjY2ZkNTI2ODhiY2M3YzlmMzY0OGNk
OTE3NzFkZGI3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFj
ZS9WaWV3cy9PcGVuUmVzb3VyY2VEaWFsb2cuanMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJ
L1VzZXJJbnRlcmZhY2UvVmlld3MvT3BlblJlc291cmNlRGlhbG9nLmpzCkBAIC0zNDAsOSArMzQw
LDkgQEAgV0kuT3BlblJlc291cmNlRGlhbG9nID0gY2xhc3MgT3BlblJlc291cmNlRGlhbG9nIGV4
dGVuZHMgV0kuRGlhbG9nCiAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICBp
ZiAoc2NyaXB0LmR5bmFtaWNhbGx5QWRkZWRTY3JpcHRFbGVtZW50KQogICAgICAgICAgICAgICAg
IGNvbnRpbnVlOwotICAgICAgICAgICAgaWYgKCghV0kuaXNEZWJ1Z1VJRW5hYmxlZCgpIHx8ICFX
SS5zZXR0aW5ncy5kZWJ1Z1Nob3dDb25zb2xlRXZhbHVhdGlvbnMudmFsdWUpIHx8IGlzV2ViSW5z
cGVjdG9yQ29uc29sZUV2YWx1YXRpb25TY3JpcHQoc2NyaXB0LnNvdXJjZVVSTCkpCisgICAgICAg
ICAgICBpZiAoIVdJLnNldHRpbmdzLmRlYnVnU2hvd0NvbnNvbGVFdmFsdWF0aW9ucy52YWx1ZSAm
JiBpc1dlYkluc3BlY3RvckNvbnNvbGVFdmFsdWF0aW9uU2NyaXB0KHNjcmlwdC5zb3VyY2VVUkwp
KQogICAgICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICAgICAgaWYgKCghV0kuaXNFbmdp
bmVlcmluZ0J1aWxkIHx8ICFXSS5zZXR0aW5ncy5lbmdpbmVlcmluZ1Nob3dJbnRlcm5hbFNjcmlw
dHMudmFsdWUpICYmIGlzV2ViS2l0SW50ZXJuYWxTY3JpcHQoc2NyaXB0LnNvdXJjZVVSTCkpCisg
ICAgICAgICAgICBpZiAoIVdJLnNldHRpbmdzLmVuZ2luZWVyaW5nU2hvd0ludGVybmFsU2NyaXB0
cy52YWx1ZSAmJiBpc1dlYktpdEludGVybmFsU2NyaXB0KHNjcmlwdC5zb3VyY2VVUkwpKQogICAg
ICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgdGhpcy5fYWRkUmVzb3VyY2Uoc2Ny
aXB0LCBzdXBwcmVzc0ZpbHRlclVwZGF0ZSk7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL1ZpZXdzL1NwcmVhZHNoZWV0Q1NTU3R5bGVE
ZWNsYXJhdGlvbkVkaXRvci5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNl
L1ZpZXdzL1NwcmVhZHNoZWV0Q1NTU3R5bGVEZWNsYXJhdGlvbkVkaXRvci5qcwppbmRleCBjZTE3
ZGIzYzFhNDAzMThjNTEzODc2M2VkZWYxNDk1MmM0YjFhOWQzLi5hNWI2MjYwMGQwMzY4YjkxMjI0
ODZjNDBiYzljYTZhMmM3NGM0MWRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkv
VXNlckludGVyZmFjZS9WaWV3cy9TcHJlYWRzaGVldENTU1N0eWxlRGVjbGFyYXRpb25FZGl0b3Iu
anMKKysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3MvU3ByZWFk
c2hlZXRDU1NTdHlsZURlY2xhcmF0aW9uRWRpdG9yLmpzCkBAIC02NzksNyArNjc5LDcgQEAgV0ku
U3ByZWFkc2hlZXRDU1NTdHlsZURlY2xhcmF0aW9uRWRpdG9yID0gY2xhc3MgU3ByZWFkc2hlZXRD
U1NTdHlsZURlY2xhcmF0aW9uRWQKIAogICAgIF91cGRhdGVEZWJ1Z0xvY2tTdGF0dXMoKQogICAg
IHsKLSAgICAgICAgaWYgKCF0aGlzLl9zdHlsZSB8fCAhV0kuaXNEZWJ1Z1VJRW5hYmxlZCgpIHx8
ICFXSS5zZXR0aW5ncy5kZWJ1Z0VuYWJsZVN0eWxlRWRpdGluZ0RlYnVnTW9kZS52YWx1ZSkKKyAg
ICAgICAgaWYgKCF0aGlzLl9zdHlsZSB8fCAhV0kuc2V0dGluZ3MuZGVidWdFbmFibGVTdHlsZUVk
aXRpbmdEZWJ1Z01vZGUudmFsdWUpCiAgICAgICAgICAgICByZXR1cm47CiAKICAgICAgICAgdGhp
cy5lbGVtZW50LmNsYXNzTGlzdC50b2dnbGUoImRlYnVnLXN0eWxlLWxvY2tlZCIsIHRoaXMuX3N0
eWxlLmxvY2tlZCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVy
ZmFjZS9WaWV3cy9TdGFja1RyYWNlVmlldy5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2Vy
SW50ZXJmYWNlL1ZpZXdzL1N0YWNrVHJhY2VWaWV3LmpzCmluZGV4IDJlNDM2ZGU2Y2YyOTE5ZmQ5
NjYzZTc0M2Q0NzRjOWI5YTcwOTE3OGMuLmVlMDVhZDQ5NWIxNmZhZmExMWY0M2YwZWI0MzJiOWNh
OTEwYWY3MjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNl
L1ZpZXdzL1N0YWNrVHJhY2VWaWV3LmpzCisrKyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2Vy
SW50ZXJmYWNlL1ZpZXdzL1N0YWNrVHJhY2VWaWV3LmpzCkBAIC0zNSw3ICszNSw3IEBAIFdJLlN0
YWNrVHJhY2VWaWV3ID0gY2xhc3MgU3RhY2tUcmFjZVZpZXcgZXh0ZW5kcyBXSS5PYmplY3QKICAg
ICAgICAgZm9yICh2YXIgY2FsbEZyYW1lIG9mIHN0YWNrVHJhY2UuY2FsbEZyYW1lcykgewogICAg
ICAgICAgICAgaWYgKCFjYWxsRnJhbWUuc291cmNlQ29kZUxvY2F0aW9uICYmIGNhbGxGcmFtZS5m
dW5jdGlvbk5hbWUgPT09IG51bGwpCiAgICAgICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAg
ICAgICBpZiAoY2FsbEZyYW1lLmlzQ29uc29sZUV2YWx1YXRpb24gJiYgKCFXSS5pc0RlYnVnVUlF
bmFibGVkKCkgfHwgIVdJLnNldHRpbmdzLmRlYnVnU2hvd0NvbnNvbGVFdmFsdWF0aW9ucy52YWx1
ZSkpCisgICAgICAgICAgICBpZiAoY2FsbEZyYW1lLmlzQ29uc29sZUV2YWx1YXRpb24gJiYgIVdJ
LnNldHRpbmdzLmRlYnVnU2hvd0NvbnNvbGVFdmFsdWF0aW9ucy52YWx1ZSkKICAgICAgICAgICAg
ICAgICBjb250aW51ZTsKIAogICAgICAgICAgICAgbGV0IGNhbGxGcmFtZUVsZW1lbnQgPSBuZXcg
V0kuQ2FsbEZyYW1lVmlldyhjYWxsRnJhbWUsIHtzaG93RnVuY3Rpb25OYW1lOiB0cnVlLCBpbmRp
Y2F0ZUlmQmxhY2tib3hlZDogdHJ1ZX0pOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3Rv
clVJL1VzZXJJbnRlcmZhY2UvVmlld3MvVmlldy5qcyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9V
c2VySW50ZXJmYWNlL1ZpZXdzL1ZpZXcuanMKaW5kZXggNjI4NDQ3ZmYzZTUyYzIyYmRhNjkxYjA5
MmNhZDZmZWMyMTcwMDJjOC4uYWFlY2NkYWI1OTk2YmY1ODNlNGFjMWYxNzRlNWI3OGY0ZDMxYWVi
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvVmlld3Mv
Vmlldy5qcworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9WaWV3cy9W
aWV3LmpzCkBAIC0yOTUsNyArMjk1LDcgQEAgV0kuVmlldyA9IGNsYXNzIFZpZXcgZXh0ZW5kcyBX
SS5PYmplY3QKICAgICAgICAgLy8gRW5zdXJlIHRoYXQgdGhlIGluaXRpYWwgbGF5b3V0IG92ZXJy
aWRlIGRvZXNuJ3QgYWZmZWN0cyB0byBzdWJ2aWV3cy4KICAgICAgICAgdGhpcy5fbGF5b3V0UmVh
c29uID0gc2F2ZWRMYXlvdXRSZWFzb247CiAKLSAgICAgICAgaWYgKFdJLmlzRGVidWdVSUVuYWJs
ZWQoKSAmJiBXSS5zZXR0aW5ncy5kZWJ1Z0VuYWJsZUxheW91dEZsYXNoaW5nLnZhbHVlKQorICAg
ICAgICBpZiAoV0kuc2V0dGluZ3MuZGVidWdFbmFibGVMYXlvdXRGbGFzaGluZy52YWx1ZSkKICAg
ICAgICAgICAgIHRoaXMuX2RyYXdMYXlvdXRGbGFzaGluZ091dGxpbmUoaXNJbml0aWFsTGF5b3V0
KTsKIAogICAgICAgICBmb3IgKGxldCB2aWV3IG9mIHRoaXMuX3N1YnZpZXdzKSB7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>