<?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>40799</bug_id>
          
          <creation_ts>2010-06-17 14:21:51 -0700</creation_ts>
          <short_desc>Web Inspector: bring XHR console records back.</short_desc>
          <delta_ts>2010-06-18 05:27:46 -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 (Deprecated)</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Pavel Feldman">pfeldman</reporter>
          <assigned_to name="Pavel Feldman">pfeldman</assigned_to>
          <cc>bweinstein</cc>
    
    <cc>joepeck</cc>
    
    <cc>rik</cc>
    
    <cc>timothy</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>239574</commentid>
    <comment_count>0</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2010-06-17 14:21:51 -0700</bug_when>
    <thetext>Here is what I plan to do:
1) make (un)monitorEvents(&quot;xhr&quot;) enable / disable monitoring
2) add &quot;Enable XHR Monitor&quot; / &quot;Disable XHR Monitor&quot; actions to the console&apos;s context menu
3) Make the chosen option persistent in the settings.

Patch to follow.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>239584</commentid>
    <comment_count>1</comment_count>
      <attachid>59035</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2010-06-17 14:36:01 -0700</bug_when>
    <thetext>Created attachment 59035
[PATCH] That I am currently compiling (still worth reviewing - what if it compiles!)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>239592</commentid>
    <comment_count>2</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2010-06-17 14:51:05 -0700</bug_when>
    <thetext>(In reply to comment #0)
&gt; 2) add &quot;Enable XHR Monitor&quot; / &quot;Disable XHR Monitor&quot; actions to the console&apos;s context menu

How about also adding a status bar item (always visible), or
something in the scope bar (only visible in the dedicated
console panel)?

Looks like this could use a test!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>239594</commentid>
    <comment_count>3</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2010-06-17 14:58:00 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (In reply to comment #0)
&gt; &gt; 2) add &quot;Enable XHR Monitor&quot; / &quot;Disable XHR Monitor&quot; actions to the console&apos;s context menu
&gt; 
&gt; How about also adding a status bar item (always visible), or
&gt; something in the scope bar (only visible in the dedicated
&gt; console panel)?
&gt; 

I&apos;d hate to see something that specific in the UI. We are doing this feature for users that really need it, but there are not too many use-cases involving it. I am also thinking of explicitly evaluating monitorEvents(&quot;xhr&quot;) in the console upon this menu action so that users could do it by hand later...

&gt; Looks like this could use a test!

Lets agree on landing it first. And... I am not accepting requests like this from you since you&apos;ve been way more lazy on test coverage than me lately :P</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>239827</commentid>
    <comment_count>4</comment_count>
      <attachid>59088</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2010-06-18 02:26:35 -0700</bug_when>
    <thetext>Created attachment 59088
[PATCH] Same with no monitorEvents(&quot;xhr&quot;) support.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>239838</commentid>
    <comment_count>5</comment_count>
      <attachid>59088</attachid>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2010-06-18 03:24:39 -0700</bug_when>
    <thetext>Comment on attachment 59088
[PATCH] Same with no monitorEvents(&quot;xhr&quot;) support.

WebCore/inspector/InspectorController.cpp:1109
 +          m_monitoringXHR = true;    
Maybe just m_monitoringXHR = (monitoringXHR == &quot;true&quot;) ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>239878</commentid>
    <comment_count>6</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2010-06-18 05:27:46 -0700</bug_when>
    <thetext>Committing to http://svn.webkit.org/repository/webkit/trunk ...
	M	WebCore/ChangeLog
	M	WebCore/English.lproj/localizedStrings.js
	M	WebCore/inspector/InspectorBackend.cpp
	M	WebCore/inspector/InspectorBackend.h
	M	WebCore/inspector/InspectorBackend.idl
	M	WebCore/inspector/InspectorController.cpp
	M	WebCore/inspector/InspectorController.h
	M	WebCore/inspector/InspectorFrontend.cpp
	M	WebCore/inspector/InspectorFrontend.h
	M	WebCore/inspector/front-end/ConsoleView.js
	M	WebCore/inspector/front-end/InspectorBackendStub.js
	M	WebCore/inspector/front-end/inspector.js
	M	WebCore/xml/XMLHttpRequest.cpp
	M	WebKit/chromium/ChangeLog
	M	WebKit/chromium/src/js/InspectorControllerImpl.js
Committed r61397</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59035</attachid>
            <date>2010-06-17 14:36:01 -0700</date>
            <delta_ts>2010-06-18 02:26:35 -0700</delta_ts>
            <desc>[PATCH] That I am currently compiling (still worth reviewing - what if it compiles!)</desc>
            <filename>console_xhr</filename>
            <type>text/plain</type>
            <size>21818</size>
            <attacher name="Pavel Feldman">pfeldman</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
OTM1YjU5MC4uMzczMzA1NSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsNSArMSw1NCBAQAogMjAxMC0wNi0xNyAgUGF2ZWwgRmVsZG1h
biAgPHBmZWxkbWFuQGNocm9taXVtLm9yZz4KIAorICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiBicmluZyBYSFIgY29uc29sZSByZWNv
cmRzIGJhY2suCisgICAgICAgIC0gbWFrZXMgKHVuKW1vbml0b3JFdmVudHMoInhociIpIGVuYWJs
ZSAvIGRpc2FibGUgbW9uaXRvcmluZworICAgICAgICAtIGFkZHMgIkVuYWJsZSBYSFIgTW9uaXRv
ciIgLyAiRGlzYWJsZSBYSFIgTW9uaXRvciIgYWN0aW9ucyB0byB0aGUgY29uc29sZSdzIGNvbnRl
eHQgbWVudQorICAgICAgICAtIG1ha2UgdGhlIGNob3NlbiBvcHRpb24gcGVyc2lzdCBpbiB0aGUg
c2V0dGluZ3MuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTQwNzk5CisKKyAgICAgICAgKiBFbmdsaXNoLmxwcm9qL2xvY2FsaXplZFN0cmluZ3MuanM6
CisgICAgICAgICogaW5zcGVjdG9yL0luamVjdGVkU2NyaXB0SG9zdC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpJbmplY3RlZFNjcmlwdEhvc3Q6OnNldE1vbml0b3JpbmdYSFIpOgorICAgICAgICAq
IGluc3BlY3Rvci9JbmplY3RlZFNjcmlwdEhvc3QuaDoKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5q
ZWN0ZWRTY3JpcHRIb3N0LmlkbDoKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yQmFja2Vu
ZC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JCYWNrZW5kOjpkaXNhYmxlU2VhcmNo
aW5nRm9yTm9kZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JCYWNrZW5kOjplbmFibGVN
b25pdG9yaW5nWEhSKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckJhY2tlbmQ6OmRpc2Fi
bGVNb25pdG9yaW5nWEhSKToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yQmFja2VuZC5o
OgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JCYWNrZW5kLmlkbDoKKyAgICAgICAgKiBp
bnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNw
ZWN0b3JDb250cm9sbGVyOjpJbnNwZWN0b3JDb250cm9sbGVyKToKKyAgICAgICAgKFdlYkNvcmU6
Okluc3BlY3RvckNvbnRyb2xsZXI6OnNldE1vbml0b3JpbmdYSFIpOgorICAgICAgICAoV2ViQ29y
ZTo6SW5zcGVjdG9yQ29udHJvbGxlcjo6ZGlkTG9hZFJlc291cmNlRnJvbU1lbW9yeUNhY2hlKToK
KyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNvbnRyb2xsZXI6OmlkZW50aWZpZXJGb3JJbml0
aWFsUmVxdWVzdCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDb250cm9sbGVyOjpyZXNv
dXJjZVJldHJpZXZlZEJ5WE1MSHR0cFJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVj
dG9yQ29udHJvbGxlcjo6ZW5zdXJlU2V0dGluZ3NMb2FkZWQpOgorICAgICAgICAqIGluc3BlY3Rv
ci9JbnNwZWN0b3JDb250cm9sbGVyLmg6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckZy
b250ZW5kLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckZyb250ZW5kOjptb25pdG9y
aW5nWEhSV2FzRW5hYmxlZCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JGcm9udGVuZDo6
bW9uaXRvcmluZ1hIUldhc0Rpc2FibGVkKToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9y
RnJvbnRlbmQuaDoKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL0NvbnNvbGVWaWV3Lmpz
OgorICAgICAgICAoV2ViSW5zcGVjdG9yLkNvbnNvbGVWaWV3LnByb3RvdHlwZS5faGFuZGxlQ29u
dGV4dE1lbnVFdmVudCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuQ29uc29sZVZpZXcucHJvdG90
eXBlLl9yZWdpc3RlclNob3J0Y3V0cyk6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9J
bmplY3RlZFNjcmlwdC5qczoKKyAgICAgICAgKGluamVjdGVkU2NyaXB0Q29uc3RydWN0b3IuKToK
KyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL0luc3BlY3RvckJhY2tlbmRTdHViLmpzOgor
ICAgICAgICAoLldlYkluc3BlY3Rvci5JbnNwZWN0b3JCYWNrZW5kU3R1Yik6CisgICAgICAgICgu
V2ViSW5zcGVjdG9yLkluc3BlY3RvckJhY2tlbmRTdHViLnByb3RvdHlwZS5lbmFibGVNb25pdG9y
aW5nWEhSKToKKyAgICAgICAgKC5XZWJJbnNwZWN0b3IuSW5zcGVjdG9yQmFja2VuZFN0dWIucHJv
dG90eXBlLmRpc2FibGVNb25pdG9yaW5nWEhSKToKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQt
ZW5kL2luc3BlY3Rvci5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5tb25pdG9yaW5nWEhSV2Fz
RW5hYmxlZCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IubW9uaXRvcmluZ1hIUldhc0Rpc2FibGVk
KToKKyAgICAgICAgKiB4bWwvWE1MSHR0cFJlcXVlc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
WE1MSHR0cFJlcXVlc3Q6OmRpZEZpbmlzaExvYWRpbmcpOgorCisyMDEwLTA2LTE3ICBQYXZlbCBG
ZWxkbWFuICA8cGZlbGRtYW5AY2hyb21pdW0ub3JnPgorCiAgICAgICAgIFVucmV2aWV3ZWQ6IGNo
cm9taXVtIHRlc3RzIGZpeC4gQWRkZWQgSW5zcGVjdG9yQmFja2VuZCBkZWxlZ2F0ZXMgZm9yIG5l
dyBpbnNwZWN0b3IgbWV0aG9kcy4KIAogICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvSW5z
cGVjdG9yQmFja2VuZFN0dWIuanM6CmRpZmYgLS1naXQgYS9XZWJDb3JlL0VuZ2xpc2gubHByb2ov
bG9jYWxpemVkU3RyaW5ncy5qcyBiL1dlYkNvcmUvRW5nbGlzaC5scHJvai9sb2NhbGl6ZWRTdHJp
bmdzLmpzCmluZGV4IDc0MzI5NmEuLjEwZmNmZGYgMTAwNjQ0CkJpbmFyeSBmaWxlcyBhL1dlYkNv
cmUvRW5nbGlzaC5scHJvai9sb2NhbGl6ZWRTdHJpbmdzLmpzIGFuZCBiL1dlYkNvcmUvRW5nbGlz
aC5scHJvai9sb2NhbGl6ZWRTdHJpbmdzLmpzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9p
bnNwZWN0b3IvSW5qZWN0ZWRTY3JpcHRIb3N0LmNwcCBiL1dlYkNvcmUvaW5zcGVjdG9yL0luamVj
dGVkU2NyaXB0SG9zdC5jcHAKaW5kZXggNzI3Y2QxMi4uNDgxOGI1MiAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9pbnNwZWN0b3IvSW5qZWN0ZWRTY3JpcHRIb3N0LmNwcAorKysgYi9XZWJDb3JlL2luc3Bl
Y3Rvci9JbmplY3RlZFNjcmlwdEhvc3QuY3BwCkBAIC0xMzIsNiArMTMyLDEyIEBAIGxvbmcgSW5q
ZWN0ZWRTY3JpcHRIb3N0OjppbnNwZWN0ZWROb2RlKHVuc2lnbmVkIGxvbmcgbnVtKQogICAgIHJl
dHVybiBkb21BZ2VudC0+aW5zcGVjdGVkTm9kZShudW0pOwogfQogCit2b2lkIEluamVjdGVkU2Ny
aXB0SG9zdDo6c2V0TW9uaXRvcmluZ1hIUihib29sIGVuYWJsZWQpCit7CisgICAgaWYgKG1faW5z
cGVjdG9yQ29udHJvbGxlcikKKyAgICAgICAgbV9pbnNwZWN0b3JDb250cm9sbGVyLT5zZXRNb25p
dG9yaW5nWEhSKGVuYWJsZWQpOworfQorCiAjaWYgRU5BQkxFKERBVEFCQVNFKQogRGF0YWJhc2Uq
IEluamVjdGVkU2NyaXB0SG9zdDo6ZGF0YWJhc2VGb3JJZChsb25nIGRhdGFiYXNlSWQpCiB7CmRp
ZmYgLS1naXQgYS9XZWJDb3JlL2luc3BlY3Rvci9JbmplY3RlZFNjcmlwdEhvc3QuaCBiL1dlYkNv
cmUvaW5zcGVjdG9yL0luamVjdGVkU2NyaXB0SG9zdC5oCmluZGV4IDM4MGQxNWYuLjRlNTlhNzgg
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaW5zcGVjdG9yL0luamVjdGVkU2NyaXB0SG9zdC5oCisrKyBi
L1dlYkNvcmUvaW5zcGVjdG9yL0luamVjdGVkU2NyaXB0SG9zdC5oCkBAIC03MCw2ICs3MCw3IEBA
IHB1YmxpYzoKICAgICBsb25nIHB1c2hOb2RlUGF0aFRvRnJvbnRlbmQoTm9kZSogbm9kZSwgYm9v
bCB3aXRoQ2hpbGRyZW4sIGJvb2wgc2VsZWN0SW5VSSk7CiAgICAgbG9uZyBwdXNoTm9kZUJ5UGF0
aFRvRnJvbnRlbmQoY29uc3QgU3RyaW5nJiBwYXRoKTsKICAgICBsb25nIGluc3BlY3RlZE5vZGUo
dW5zaWduZWQgbG9uZyBudW0pOworICAgIHZvaWQgc2V0TW9uaXRvcmluZ1hIUihib29sIGVuYWJs
ZWQpOwogCiAjaWYgRU5BQkxFKERBVEFCQVNFKQogICAgIERhdGFiYXNlKiBkYXRhYmFzZUZvcklk
KGxvbmcgZGF0YWJhc2VJZCk7CmRpZmYgLS1naXQgYS9XZWJDb3JlL2luc3BlY3Rvci9JbmplY3Rl
ZFNjcmlwdEhvc3QuaWRsIGIvV2ViQ29yZS9pbnNwZWN0b3IvSW5qZWN0ZWRTY3JpcHRIb3N0Lmlk
bAppbmRleCBhOTdlODRkLi5jMTgxNDJhIDEwMDY0NAotLS0gYS9XZWJDb3JlL2luc3BlY3Rvci9J
bmplY3RlZFNjcmlwdEhvc3QuaWRsCisrKyBiL1dlYkNvcmUvaW5zcGVjdG9yL0luamVjdGVkU2Ny
aXB0SG9zdC5pZGwKQEAgLTM5LDYgKzM5LDcgQEAgbW9kdWxlIGNvcmUgewogICAgICAgICBbQ3Vz
dG9tXSBpbnQgcHVzaE5vZGVQYXRoVG9Gcm9udGVuZChpbiBET01PYmplY3Qgbm9kZSwgaW4gYm9v
bGVhbiB3aXRoQ2hpbGRyZW4sIGluIGJvb2xlYW4gc2VsZWN0SW5VSSk7CiAgICAgICAgIGxvbmcg
cHVzaE5vZGVCeVBhdGhUb0Zyb250ZW5kKGluIERPTVN0cmluZyBwYXRoKTsKICAgICAgICAgbG9u
ZyBpbnNwZWN0ZWROb2RlKGluIHVuc2lnbmVkIGxvbmcgbnVtKTsKKyAgICAgICAgdm9pZCBzZXRN
b25pdG9yaW5nWEhSKGluIGJvb2xlYW4gZW5hYmxlZCk7CiAKICNpZiBkZWZpbmVkKEVOQUJMRV9K
QVZBU0NSSVBUX0RFQlVHR0VSKSAmJiBFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUgogICAgICAg
ICBbQ3VzdG9tXSBET01PYmplY3QgY3VycmVudENhbGxGcmFtZSgpOwpkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQmFja2VuZC5jcHAgYi9XZWJDb3JlL2luc3BlY3Rvci9J
bnNwZWN0b3JCYWNrZW5kLmNwcAppbmRleCAwNzE0MGM5Li43NDFiMjk1IDEwMDY0NAotLS0gYS9X
ZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JCYWNrZW5kLmNwcAorKysgYi9XZWJDb3JlL2luc3Bl
Y3Rvci9JbnNwZWN0b3JCYWNrZW5kLmNwcApAQCAtMTA5LDYgKzEwOSwxOCBAQCB2b2lkIEluc3Bl
Y3RvckJhY2tlbmQ6OmRpc2FibGVTZWFyY2hpbmdGb3JOb2RlKCkKICAgICAgICAgbV9pbnNwZWN0
b3JDb250cm9sbGVyLT5zZXRTZWFyY2hpbmdGb3JOb2RlKGZhbHNlKTsKIH0KIAordm9pZCBJbnNw
ZWN0b3JCYWNrZW5kOjplbmFibGVNb25pdG9yaW5nWEhSKCkKK3sKKyAgICBpZiAobV9pbnNwZWN0
b3JDb250cm9sbGVyKQorICAgICAgICBtX2luc3BlY3RvckNvbnRyb2xsZXItPnNldE1vbml0b3Jp
bmdYSFIodHJ1ZSk7Cit9CisKK3ZvaWQgSW5zcGVjdG9yQmFja2VuZDo6ZGlzYWJsZU1vbml0b3Jp
bmdYSFIoKQoreworICAgIGlmIChtX2luc3BlY3RvckNvbnRyb2xsZXIpCisgICAgICAgIG1faW5z
cGVjdG9yQ29udHJvbGxlci0+c2V0TW9uaXRvcmluZ1hIUihmYWxzZSk7Cit9CisKIHZvaWQgSW5z
cGVjdG9yQmFja2VuZDo6ZW5hYmxlUmVzb3VyY2VUcmFja2luZyhib29sIGFsd2F5cykKIHsKICAg
ICBpZiAobV9pbnNwZWN0b3JDb250cm9sbGVyKQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9pbnNwZWN0
b3IvSW5zcGVjdG9yQmFja2VuZC5oIGIvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQmFja2Vu
ZC5oCmluZGV4IGEzOWJhNTAuLmQyMjNmNDEgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaW5zcGVjdG9y
L0luc3BlY3RvckJhY2tlbmQuaAorKysgYi9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JCYWNr
ZW5kLmgKQEAgLTY1LDYgKzY1LDkgQEAgcHVibGljOgogICAgIHZvaWQgZW5hYmxlU2VhcmNoaW5n
Rm9yTm9kZSgpOwogICAgIHZvaWQgZGlzYWJsZVNlYXJjaGluZ0Zvck5vZGUoKTsKIAorICAgIHZv
aWQgZW5hYmxlTW9uaXRvcmluZ1hIUigpOworICAgIHZvaWQgZGlzYWJsZU1vbml0b3JpbmdYSFIo
KTsKKwogICAgIHZvaWQgZW5hYmxlUmVzb3VyY2VUcmFja2luZyhib29sIGFsd2F5cyk7CiAgICAg
dm9pZCBkaXNhYmxlUmVzb3VyY2VUcmFja2luZyhib29sIGFsd2F5cyk7CiAgICAgdm9pZCBnZXRS
ZXNvdXJjZUNvbnRlbnQobG9uZyBjYWxsSWQsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllcik7CmRp
ZmYgLS1naXQgYS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JCYWNrZW5kLmlkbCBiL1dlYkNv
cmUvaW5zcGVjdG9yL0luc3BlY3RvckJhY2tlbmQuaWRsCmluZGV4IDY4MjAxNzEuLjE0ZjFmYmMg
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckJhY2tlbmQuaWRsCisrKyBi
L1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckJhY2tlbmQuaWRsCkBAIC00MCw2ICs0MCw5IEBA
IG1vZHVsZSBjb3JlIHsKICAgICAgICAgdm9pZCBlbmFibGVTZWFyY2hpbmdGb3JOb2RlKCk7CiAg
ICAgICAgIHZvaWQgZGlzYWJsZVNlYXJjaGluZ0Zvck5vZGUoKTsKIAorICAgICAgICB2b2lkIGVu
YWJsZU1vbml0b3JpbmdYSFIoKTsKKyAgICAgICAgdm9pZCBkaXNhYmxlTW9uaXRvcmluZ1hIUigp
OworCiAgICAgICAgIHZvaWQgZW5hYmxlUmVzb3VyY2VUcmFja2luZyhpbiBib29sZWFuIGFsd2F5
cyk7CiAgICAgICAgIHZvaWQgZGlzYWJsZVJlc291cmNlVHJhY2tpbmcoaW4gYm9vbGVhbiBhbHdh
eXMpOwogICAgICAgICB2b2lkIGdldFJlc291cmNlQ29udGVudChpbiBsb25nIGNhbGxJZCwgaW4g
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaW5zcGVjdG9y
L0luc3BlY3RvckNvbnRyb2xsZXIuY3BwIGIvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ29u
dHJvbGxlci5jcHAKaW5kZXggMzI1ZTEyYy4uNDkyMmQ2YiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9p
bnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5jcHAKKysrIGIvV2ViQ29yZS9pbnNwZWN0b3Iv
SW5zcGVjdG9yQ29udHJvbGxlci5jcHAKQEAgLTEyMCw2ICsxMjAsNyBAQCBzdGF0aWMgY29uc3Qg
Y2hhciogY29uc3QgZGVidWdnZXJFbmFibGVkU2V0dGluZ05hbWUgPSAiZGVidWdnZXJFbmFibGVk
IjsKIHN0YXRpYyBjb25zdCBjaGFyKiBjb25zdCBwcm9maWxlckVuYWJsZWRTZXR0aW5nTmFtZSA9
ICJwcm9maWxlckVuYWJsZWQiOwogc3RhdGljIGNvbnN0IGNoYXIqIGNvbnN0IGluc3BlY3RvckF0
dGFjaGVkSGVpZ2h0TmFtZSA9ICJpbnNwZWN0b3JBdHRhY2hlZEhlaWdodCI7CiBzdGF0aWMgY29u
c3QgY2hhciogY29uc3QgbGFzdEFjdGl2ZVBhbmVsU2V0dGluZ05hbWUgPSAibGFzdEFjdGl2ZVBh
bmVsIjsKK3N0YXRpYyBjb25zdCBjaGFyKiBjb25zdCBtb25pdG9yaW5nWEhSU2V0dGluZ05hbWUg
PSAieGhyTW9uaXRvciI7CiAKIGNvbnN0IFN0cmluZyYgSW5zcGVjdG9yQ29udHJvbGxlcjo6ZnJv
bnRlbmRTZXR0aW5nc1NldHRpbmdOYW1lKCkKIHsKQEAgLTE1MSw5ICsxNTIsMTAgQEAgSW5zcGVj
dG9yQ29udHJvbGxlcjo6SW5zcGVjdG9yQ29udHJvbGxlcihQYWdlKiBwYWdlLCBJbnNwZWN0b3JD
bGllbnQqIGNsaWVudCkKICAgICAsIG1fc2Vzc2lvblNldHRpbmdzKEluc3BlY3Rvck9iamVjdDo6
Y3JlYXRlKCkpCiAgICAgLCBtX2dyb3VwTGV2ZWwoMCkKICAgICAsIG1fc2VhcmNoaW5nRm9yTm9k
ZShmYWxzZSkKKyAgICAsIG1fbW9uaXRvcmluZ1hIUihmYWxzZSkKICAgICAsIG1fcHJldmlvdXNN
ZXNzYWdlKDApCiAgICAgLCBtX3Jlc291cmNlVHJhY2tpbmdFbmFibGVkKGZhbHNlKQotICAgICwg
bV9yZXNvdXJjZVRyYWNraW5nU2V0dGluZ3NMb2FkZWQoZmFsc2UpCisgICAgLCBtX3NldHRpbmdz
TG9hZGVkKGZhbHNlKQogICAgICwgbV9pbnNwZWN0b3JCYWNrZW5kKEluc3BlY3RvckJhY2tlbmQ6
OmNyZWF0ZSh0aGlzKSkKICAgICAsIG1faW5qZWN0ZWRTY3JpcHRIb3N0KEluamVjdGVkU2NyaXB0
SG9zdDo6Y3JlYXRlKHRoaXMpKQogI2lmIEVOQUJMRShKQVZBU0NSSVBUX0RFQlVHR0VSKQpAQCAt
NDMxLDYgKzQzMywxOSBAQCB2b2lkIEluc3BlY3RvckNvbnRyb2xsZXI6OnNldFNlYXJjaGluZ0Zv
ck5vZGUoYm9vbCBlbmFibGVkKQogICAgIH0KIH0KIAordm9pZCBJbnNwZWN0b3JDb250cm9sbGVy
OjpzZXRNb25pdG9yaW5nWEhSKGJvb2wgZW5hYmxlZCkKK3sKKyAgICBpZiAobV9tb25pdG9yaW5n
WEhSID09IGVuYWJsZWQpCisgICAgICAgIHJldHVybjsKKyAgICBtX21vbml0b3JpbmdYSFIgPSBl
bmFibGVkOworICAgIGlmIChtX2Zyb250ZW5kKSB7CisgICAgICAgIGlmIChlbmFibGVkKQorICAg
ICAgICAgICAgbV9mcm9udGVuZC0+bW9uaXRvcmluZ1hIUldhc0VuYWJsZWQoKTsKKyAgICAgICAg
ZWxzZQorICAgICAgICAgICAgbV9mcm9udGVuZC0+bW9uaXRvcmluZ1hIUldhc0Rpc2FibGVkKCk7
CisgICAgfQorfQorCiB2b2lkIEluc3BlY3RvckNvbnRyb2xsZXI6OmNvbm5lY3RGcm9udGVuZChj
b25zdCBTY3JpcHRPYmplY3QmIHdlYkluc3BlY3RvcikKIHsKICAgICBtX29wZW5pbmdGcm9udGVu
ZCA9IGZhbHNlOwpAQCAtODEzLDcgKzgyOCw3IEBAIHZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6
ZGlkTG9hZFJlc291cmNlRnJvbU1lbW9yeUNhY2hlKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsCiAK
ICAgICBBU1NFUlQobV9pbnNwZWN0ZWRQYWdlKTsKICAgICBib29sIGlzTWFpblJlc291cmNlID0g
aXNNYWluUmVzb3VyY2VMb2FkZXIobG9hZGVyLCBLVVJMKFBhcnNlZFVSTFN0cmluZywgY2FjaGVk
UmVzb3VyY2UtPnVybCgpKSk7Ci0gICAgZW5zdXJlUmVzb3VyY2VUcmFja2luZ1NldHRpbmdzTG9h
ZGVkKCk7CisgICAgZW5zdXJlU2V0dGluZ3NMb2FkZWQoKTsKICAgICBpZiAoIWlzTWFpblJlc291
cmNlICYmICFtX3Jlc291cmNlVHJhY2tpbmdFbmFibGVkKQogICAgICAgICByZXR1cm47CiAKQEAg
LTgzNyw3ICs4NTIsNyBAQCB2b2lkIEluc3BlY3RvckNvbnRyb2xsZXI6OmlkZW50aWZpZXJGb3JJ
bml0aWFsUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsCiAgICAgQVNTRVJUKG1faW5z
cGVjdGVkUGFnZSk7CiAKICAgICBib29sIGlzTWFpblJlc291cmNlID0gaXNNYWluUmVzb3VyY2VM
b2FkZXIobG9hZGVyLCByZXF1ZXN0LnVybCgpKTsKLSAgICBlbnN1cmVSZXNvdXJjZVRyYWNraW5n
U2V0dGluZ3NMb2FkZWQoKTsKKyAgICBlbnN1cmVTZXR0aW5nc0xvYWRlZCgpOwogICAgIGlmICgh
aXNNYWluUmVzb3VyY2UgJiYgIW1fcmVzb3VyY2VUcmFja2luZ0VuYWJsZWQpCiAgICAgICAgIHJl
dHVybjsKIApAQCAtMTAwNyw5ICsxMDIyLDE1IEBAIHZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6
ZGlkRmFpbExvYWRpbmcodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjCiAg
ICAgICAgIHJlc291cmNlLT51cGRhdGVTY3JpcHRPYmplY3QobV9mcm9udGVuZC5nZXQoKSk7CiB9
CiAKLXZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6cmVzb3VyY2VSZXRyaWV2ZWRCeVhNTEh0dHBS
ZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgU2NyaXB0U3RyaW5nJiBzb3Vy
Y2VTdHJpbmcpCit2b2lkIEluc3BlY3RvckNvbnRyb2xsZXI6OnJlc291cmNlUmV0cmlldmVkQnlY
TUxIdHRwUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFNjcmlwdFN0cmlu
ZyYgc291cmNlU3RyaW5nLCBjb25zdCBTdHJpbmcmIHVybCwgY29uc3QgU3RyaW5nJiBzZW5kVVJM
LCB1bnNpZ25lZCBzZW5kTGluZU51bWJlcikKIHsKLSAgICBpZiAoIWVuYWJsZWQoKSB8fCAhbV9y
ZXNvdXJjZVRyYWNraW5nRW5hYmxlZCkKKyAgICBpZiAoIWVuYWJsZWQoKSkKKyAgICAgICAgcmV0
dXJuOworCisgICAgaWYgKG1fbW9uaXRvcmluZ1hIUikKKyAgICAgICAgYWRkTWVzc2FnZVRvQ29u
c29sZShKU01lc3NhZ2VTb3VyY2UsIExvZ01lc3NhZ2VUeXBlLCBMb2dNZXNzYWdlTGV2ZWwsICJY
SFIgZmluaXNoZWQgbG9hZGluZzogXCIiICsgdXJsICsgIlwiLiIsIHNlbmRMaW5lTnVtYmVyLCBz
ZW5kVVJMKTsKKworICAgIGlmICghbV9yZXNvdXJjZVRyYWNraW5nRW5hYmxlZCkKICAgICAgICAg
cmV0dXJuOwogCiAgICAgSW5zcGVjdG9yUmVzb3VyY2UqIHJlc291cmNlID0gbV9yZXNvdXJjZXMu
Z2V0KGlkZW50aWZpZXIpLmdldCgpOwpAQCAtMTA3MSwxNSArMTA5MiwxOSBAQCB2b2lkIEluc3Bl
Y3RvckNvbnRyb2xsZXI6OmRpc2FibGVSZXNvdXJjZVRyYWNraW5nKGJvb2wgYWx3YXlzKQogICAg
ICAgICBtX2Zyb250ZW5kLT5yZXNvdXJjZVRyYWNraW5nV2FzRGlzYWJsZWQoKTsKIH0KIAotdm9p
ZCBJbnNwZWN0b3JDb250cm9sbGVyOjplbnN1cmVSZXNvdXJjZVRyYWNraW5nU2V0dGluZ3NMb2Fk
ZWQoKQordm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjplbnN1cmVTZXR0aW5nc0xvYWRlZCgpCiB7
Ci0gICAgaWYgKG1fcmVzb3VyY2VUcmFja2luZ1NldHRpbmdzTG9hZGVkKQorICAgIGlmIChtX3Nl
dHRpbmdzTG9hZGVkKQogICAgICAgICByZXR1cm47Ci0gICAgbV9yZXNvdXJjZVRyYWNraW5nU2V0
dGluZ3NMb2FkZWQgPSB0cnVlOworICAgIG1fc2V0dGluZ3NMb2FkZWQgPSB0cnVlOwogCiAgICAg
U3RyaW5nIHJlc291cmNlVHJhY2tpbmcgPSBzZXR0aW5nKHJlc291cmNlVHJhY2tpbmdFbmFibGVk
U2V0dGluZ05hbWUpOwogICAgIGlmIChyZXNvdXJjZVRyYWNraW5nID09ICJ0cnVlIikKICAgICAg
ICAgbV9yZXNvdXJjZVRyYWNraW5nRW5hYmxlZCA9IHRydWU7CisKKyAgICBTdHJpbmcgbW9uaXRv
cmluZ1hIUiA9IHNldHRpbmcobW9uaXRvcmluZ1hIUlNldHRpbmdOYW1lKTsKKyAgICBpZiAobW9u
aXRvcmluZ1hIUiA9PSAidHJ1ZSIpCisgICAgICAgIG1fbW9uaXRvcmluZ1hIUiA9IHRydWU7ICAg
IAogfQogCiB2b2lkIEluc3BlY3RvckNvbnRyb2xsZXI6OnN0YXJ0VGltZWxpbmVQcm9maWxlcigp
CmRpZmYgLS1naXQgYS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDb250cm9sbGVyLmggYi9X
ZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDb250cm9sbGVyLmgKaW5kZXggYWYzNjM4My4uN2U3
NzFiYiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5o
CisrKyBiL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xsZXIuaApAQCAtMTcwLDEz
ICsxNzAsMTQgQEAgcHVibGljOgogICAgIHZvaWQgZGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgodW5z
aWduZWQgbG9uZyBpZGVudGlmaWVyLCBpbnQgbGVuZ3RoUmVjZWl2ZWQpOwogICAgIHZvaWQgZGlk
RmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIpOwogICAgIHZvaWQgZGlkRmFp
bExvYWRpbmcodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZUVycm9yJik7
Ci0gICAgdm9pZCByZXNvdXJjZVJldHJpZXZlZEJ5WE1MSHR0cFJlcXVlc3QodW5zaWduZWQgbG9u
ZyBpZGVudGlmaWVyLCBjb25zdCBTY3JpcHRTdHJpbmcmIHNvdXJjZVN0cmluZyk7CisgICAgdm9p
ZCByZXNvdXJjZVJldHJpZXZlZEJ5WE1MSHR0cFJlcXVlc3QodW5zaWduZWQgbG9uZyBpZGVudGlm
aWVyLCBjb25zdCBTY3JpcHRTdHJpbmcmIHNvdXJjZVN0cmluZywgY29uc3QgU3RyaW5nJiB1cmws
IGNvbnN0IFN0cmluZyYgc2VuZFVSTCwgdW5zaWduZWQgc2VuZExpbmVOdW1iZXIpOwogICAgIHZv
aWQgc2NyaXB0SW1wb3J0ZWQodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBTdHJpbmcm
IHNvdXJjZVN0cmluZyk7CiAKICAgICB2b2lkIGVuYWJsZVJlc291cmNlVHJhY2tpbmcoYm9vbCBh
bHdheXMgPSBmYWxzZSwgYm9vbCByZWxvYWQgPSB0cnVlKTsKICAgICB2b2lkIGRpc2FibGVSZXNv
dXJjZVRyYWNraW5nKGJvb2wgYWx3YXlzID0gZmFsc2UpOwogICAgIGJvb2wgcmVzb3VyY2VUcmFj
a2luZ0VuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX3Jlc291cmNlVHJhY2tpbmdFbmFibGVkOyB9
Ci0gICAgdm9pZCBlbnN1cmVSZXNvdXJjZVRyYWNraW5nU2V0dGluZ3NMb2FkZWQoKTsKKworICAg
IHZvaWQgZW5zdXJlU2V0dGluZ3NMb2FkZWQoKTsKIAogICAgIHZvaWQgc3RhcnRUaW1lbGluZVBy
b2ZpbGVyKCk7CiAgICAgdm9pZCBzdG9wVGltZWxpbmVQcm9maWxlcigpOwpAQCAtMjc4LDYgKzI3
OSw3IEBAIHByaXZhdGU6CiAKICAgICAvLyBGb2xsb3dpbmcgYXJlIHVzZWQgZnJvbSBJbnNwZWN0
b3JCYWNrZW5kIGFuZCBpbnRlcm5hbGx5LgogICAgIHZvaWQgc2V0U2VhcmNoaW5nRm9yTm9kZShi
b29sIGVuYWJsZWQpOworICAgIHZvaWQgc2V0TW9uaXRvcmluZ1hIUihib29sIGVuYWJsZWQpOwog
ICAgIHZvaWQgc3RvcmVMYXN0QWN0aXZlUGFuZWwoY29uc3QgU3RyaW5nJiBwYW5lbE5hbWUpOwog
ICAgIEluc3BlY3RvckRPTUFnZW50KiBkb21BZ2VudCgpIHsgcmV0dXJuIG1fZG9tQWdlbnQuZ2V0
KCk7IH0KICAgICB2b2lkIHJlbGVhc2VET01BZ2VudCgpOwpAQCAtMzUzLDkgKzM1NSwxMCBAQCBw
cml2YXRlOgogICAgIFJlZlB0cjxJbnNwZWN0b3JWYWx1ZT4gbV9zZXNzaW9uU2V0dGluZ3M7CiAg
ICAgdW5zaWduZWQgbV9ncm91cExldmVsOwogICAgIGJvb2wgbV9zZWFyY2hpbmdGb3JOb2RlOwor
ICAgIGJvb2wgbV9tb25pdG9yaW5nWEhSOwogICAgIENvbnNvbGVNZXNzYWdlKiBtX3ByZXZpb3Vz
TWVzc2FnZTsKICAgICBib29sIG1fcmVzb3VyY2VUcmFja2luZ0VuYWJsZWQ7Ci0gICAgYm9vbCBt
X3Jlc291cmNlVHJhY2tpbmdTZXR0aW5nc0xvYWRlZDsKKyAgICBib29sIG1fc2V0dGluZ3NMb2Fk
ZWQ7CiAgICAgUmVmUHRyPEluc3BlY3RvckJhY2tlbmQ+IG1faW5zcGVjdG9yQmFja2VuZDsKICAg
ICBSZWZQdHI8SW5qZWN0ZWRTY3JpcHRIb3N0PiBtX2luamVjdGVkU2NyaXB0SG9zdDsKIApkaWZm
IC0tZ2l0IGEvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRnJvbnRlbmQuY3BwIGIvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5zcGVjdG9yRnJvbnRlbmQuY3BwCmluZGV4IGZhZDMzMDMuLjI4N2U2N2Yg
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckZyb250ZW5kLmNwcAorKysg
Yi9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVuZC5jcHAKQEAgLTI2Miw3ICsyNjIs
NiBAQCB2b2lkIEluc3BlY3RvckZyb250ZW5kOjpyZXNvdXJjZVRyYWNraW5nV2FzRGlzYWJsZWQo
KQogICAgIGNhbGxTaW1wbGVGdW5jdGlvbigicmVzb3VyY2VUcmFja2luZ1dhc0Rpc2FibGVkIik7
CiB9CiAKLQogdm9pZCBJbnNwZWN0b3JGcm9udGVuZDo6c2VhcmNoaW5nRm9yTm9kZVdhc0VuYWJs
ZWQoKQogewogICAgIGNhbGxTaW1wbGVGdW5jdGlvbigic2VhcmNoaW5nRm9yTm9kZVdhc0VuYWJs
ZWQiKTsKQEAgLTI3Myw2ICsyNzIsMTYgQEAgdm9pZCBJbnNwZWN0b3JGcm9udGVuZDo6c2VhcmNo
aW5nRm9yTm9kZVdhc0Rpc2FibGVkKCkKICAgICBjYWxsU2ltcGxlRnVuY3Rpb24oInNlYXJjaGlu
Z0Zvck5vZGVXYXNEaXNhYmxlZCIpOwogfQogCit2b2lkIEluc3BlY3RvckZyb250ZW5kOjptb25p
dG9yaW5nWEhSV2FzRW5hYmxlZCgpCit7CisgICAgY2FsbFNpbXBsZUZ1bmN0aW9uKCJtb25pdG9y
aW5nWEhSV2FzRW5hYmxlZCIpOworfQorCit2b2lkIEluc3BlY3RvckZyb250ZW5kOjptb25pdG9y
aW5nWEhSV2FzRGlzYWJsZWQoKQoreworICAgIGNhbGxTaW1wbGVGdW5jdGlvbigibW9uaXRvcmlu
Z1hIUldhc0Rpc2FibGVkIik7Cit9CisKIHZvaWQgSW5zcGVjdG9yRnJvbnRlbmQ6OnVwZGF0ZVBh
dXNlT25FeGNlcHRpb25zU3RhdGUobG9uZyBzdGF0ZSkKIHsKICAgICBTY3JpcHRGdW5jdGlvbkNh
bGwgZnVuY3Rpb24obV93ZWJJbnNwZWN0b3IsICJkaXNwYXRjaCIpOyAKZGlmZiAtLWdpdCBhL1dl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckZyb250ZW5kLmggYi9XZWJDb3JlL2luc3BlY3Rvci9J
bnNwZWN0b3JGcm9udGVuZC5oCmluZGV4IDBlOTY2ODguLmQzMGUyM2MgMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckZyb250ZW5kLmgKKysrIGIvV2ViQ29yZS9pbnNwZWN0
b3IvSW5zcGVjdG9yRnJvbnRlbmQuaApAQCAtOTEsNiArOTEsOSBAQCBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAgICAgICAgIHZvaWQgc2VhcmNoaW5nRm9yTm9kZVdhc0VuYWJsZWQoKTsKICAgICAgICAg
dm9pZCBzZWFyY2hpbmdGb3JOb2RlV2FzRGlzYWJsZWQoKTsKIAorICAgICAgICB2b2lkIG1vbml0
b3JpbmdYSFJXYXNFbmFibGVkKCk7CisgICAgICAgIHZvaWQgbW9uaXRvcmluZ1hIUldhc0Rpc2Fi
bGVkKCk7CisKICAgICAgICAgdm9pZCB1cGRhdGVQYXVzZU9uRXhjZXB0aW9uc1N0YXRlKGxvbmcg
c3RhdGUpOwogCiAjaWYgRU5BQkxFKEpBVkFTQ1JJUFRfREVCVUdHRVIpCmRpZmYgLS1naXQgYS9X
ZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvQ29uc29sZVZpZXcuanMgYi9XZWJDb3JlL2luc3Bl
Y3Rvci9mcm9udC1lbmQvQ29uc29sZVZpZXcuanMKaW5kZXggMTA2MzI0ZS4uOWI2MGJkNiAxMDA2
NDQKLS0tIGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0NvbnNvbGVWaWV3LmpzCisrKyBi
L1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Db25zb2xlVmlldy5qcwpAQCAtMzk5LDcgKzM5
OSwxMyBAQCBXZWJJbnNwZWN0b3IuQ29uc29sZVZpZXcucHJvdG90eXBlID0gewogICAgICAgICAg
ICAgcmV0dXJuOwogICAgICAgICB9CiAKLSAgICAgICAgdGhpcy5fY29udGV4dE1lbnUuc2hvdyhl
dmVudCk7CisgICAgICAgIHZhciBjb250ZXh0TWVudSA9IG5ldyBXZWJJbnNwZWN0b3IuQ29udGV4
dE1lbnUoKTsKKyAgICAgICAgY29udGV4dE1lbnUuYXBwZW5kSXRlbShXZWJJbnNwZWN0b3IuVUlT
dHJpbmcoIkNsZWFyIENvbnNvbGUiKSwgdGhpcy5yZXF1ZXN0Q2xlYXJNZXNzYWdlcy5iaW5kKHRo
aXMpKTsKKyAgICAgICAgaWYgKCFXZWJJbnNwZWN0b3IubW9uaXRvcmluZ1hIUkVuYWJsZWQpCisg
ICAgICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVtKFdlYkluc3BlY3Rvci5VSVN0cmluZygi
RW5hYmxlIFhIUiBNb25pdG9yIiksIEluc3BlY3RvckJhY2tlbmQuZW5hYmxlTW9uaXRvcmluZ1hI
Ui5iaW5kKEluc3BlY3RvckJhY2tlbmQpKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgY29u
dGV4dE1lbnUuYXBwZW5kSXRlbShXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkRpc2FibGUgWEhSIE1v
bml0b3IiKSwgSW5zcGVjdG9yQmFja2VuZC5kaXNhYmxlTW9uaXRvcmluZ1hIUi5iaW5kKEluc3Bl
Y3RvckJhY2tlbmQpKTsKKyAgICAgICAgY29udGV4dE1lbnUuc2hvdyhldmVudCk7CiAgICAgfSwK
IAogICAgIF9tZXNzYWdlc1NlbGVjdFN0YXJ0OiBmdW5jdGlvbihldmVudCkKQEAgLTQ0NCw4ICs0
NTAsNiBAQCBXZWJJbnNwZWN0b3IuQ29uc29sZVZpZXcucHJvdG90eXBlID0gewogICAgICAgICB2
YXIgY2xlYXJDb25zb2xlSGFuZGxlciA9IHRoaXMucmVxdWVzdENsZWFyTWVzc2FnZXMuYmluZCh0
aGlzKTsKICAgICAgICAgdmFyIHNob3J0Y3V0TCA9IHNob3J0Y3V0Lm1ha2VEZXNjcmlwdG9yKCJs
IiwgV2ViSW5zcGVjdG9yLktleWJvYXJkU2hvcnRjdXQuTW9kaWZpZXJzLkN0cmwpOwogICAgICAg
ICB0aGlzLl9zaG9ydGN1dHNbc2hvcnRjdXRMLmtleV0gPSBjbGVhckNvbnNvbGVIYW5kbGVyOwot
ICAgICAgICB0aGlzLl9jb250ZXh0TWVudSA9IG5ldyBXZWJJbnNwZWN0b3IuQ29udGV4dE1lbnUo
KTsKLSAgICAgICAgdGhpcy5fY29udGV4dE1lbnUuYXBwZW5kSXRlbShXZWJJbnNwZWN0b3IuVUlT
dHJpbmcoIkNsZWFyIENvbnNvbGUiKSwgY2xlYXJDb25zb2xlSGFuZGxlcik7CiAKICAgICAgICAg
dmFyIHNlY3Rpb24gPSBXZWJJbnNwZWN0b3Iuc2hvcnRjdXRzSGVscC5zZWN0aW9uKFdlYkluc3Bl
Y3Rvci5VSVN0cmluZygiQ29uc29sZSIpKTsKICAgICAgICAgdmFyIGtleXMgPSBXZWJJbnNwZWN0
b3IuaXNNYWMoKSA/IFsgc2hvcnRjdXRLLm5hbWUsIHNob3J0Y3V0TC5uYW1lIF0gOiBbIHNob3J0
Y3V0TC5uYW1lIF07CmRpZmYgLS1naXQgYS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvSW5q
ZWN0ZWRTY3JpcHQuanMgYi9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvSW5qZWN0ZWRTY3Jp
cHQuanMKaW5kZXggYThlZmE3Zi4uODYxM2FjYiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9pbnNwZWN0
b3IvZnJvbnQtZW5kL0luamVjdGVkU2NyaXB0LmpzCisrKyBiL1dlYkNvcmUvaW5zcGVjdG9yL2Zy
b250LWVuZC9JbmplY3RlZFNjcmlwdC5qcwpAQCAtNzM0LDYgKzczNCwxMCBAQCBDb21tYW5kTGlu
ZUFQSS5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIHR5cGVzID0g
SW5qZWN0ZWRTY3JpcHQuX25vcm1hbGl6ZUV2ZW50VHlwZXModHlwZXMpOwogICAgICAgICBmb3Ig
KHZhciBpID0gMDsgaSA8IHR5cGVzLmxlbmd0aDsgKytpKSB7CisgICAgICAgICAgICBpZiAodHlw
ZXNbaV0gPT09ICJ4aHIiKSB7CisgICAgICAgICAgICAgICAgSW5qZWN0ZWRTY3JpcHRIb3N0LnNl
dE1vbml0b3JpbmdYSFIodHJ1ZSk7CisgICAgICAgICAgICAgICAgY29udGludWU7CisgICAgICAg
ICAgICB9CiAgICAgICAgICAgICBvYmplY3QucmVtb3ZlRXZlbnRMaXN0ZW5lcih0eXBlc1tpXSwg
SW5qZWN0ZWRTY3JpcHQuX2xvZ0V2ZW50LCBmYWxzZSk7CiAgICAgICAgICAgICBvYmplY3QuYWRk
RXZlbnRMaXN0ZW5lcih0eXBlc1tpXSwgSW5qZWN0ZWRTY3JpcHQuX2xvZ0V2ZW50LCBmYWxzZSk7
CiAgICAgICAgIH0KQEAgLTc0NCw4ICs3NDgsMTMgQEAgQ29tbWFuZExpbmVBUEkucHJvdG90eXBl
ID0gewogICAgICAgICBpZiAoIW9iamVjdCB8fCAhb2JqZWN0LmFkZEV2ZW50TGlzdGVuZXIgfHwg
IW9iamVjdC5yZW1vdmVFdmVudExpc3RlbmVyKQogICAgICAgICAgICAgcmV0dXJuOwogICAgICAg
ICB0eXBlcyA9IEluamVjdGVkU2NyaXB0Ll9ub3JtYWxpemVFdmVudFR5cGVzKHR5cGVzKTsKLSAg
ICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCB0eXBlcy5sZW5ndGg7ICsraSkKKyAgICAgICAgZm9y
ICh2YXIgaSA9IDA7IGkgPCB0eXBlcy5sZW5ndGg7ICsraSkgeworICAgICAgICAgICAgaWYgKHR5
cGVzW2ldID09PSAieGhyIikgeworICAgICAgICAgICAgICAgIEluamVjdGVkU2NyaXB0SG9zdC5z
ZXRNb25pdG9yaW5nWEhSKGZhbHNlKTsKKyAgICAgICAgICAgICAgICBjb250aW51ZTsKKyAgICAg
ICAgICAgIH0KICAgICAgICAgICAgIG9iamVjdC5yZW1vdmVFdmVudExpc3RlbmVyKHR5cGVzW2ld
LCBJbmplY3RlZFNjcmlwdC5fbG9nRXZlbnQsIGZhbHNlKTsKKyAgICAgICAgfQogICAgIH0sCiAK
ICAgICBpbnNwZWN0OiBmdW5jdGlvbihvYmplY3QpCmRpZmYgLS1naXQgYS9XZWJDb3JlL2luc3Bl
Y3Rvci9mcm9udC1lbmQvSW5zcGVjdG9yQmFja2VuZFN0dWIuanMgYi9XZWJDb3JlL2luc3BlY3Rv
ci9mcm9udC1lbmQvSW5zcGVjdG9yQmFja2VuZFN0dWIuanMKaW5kZXggZjZjZjM0NC4uMDE2ZDc0
OCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0luc3BlY3RvckJhY2tl
bmRTdHViLmpzCisrKyBiL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9JbnNwZWN0b3JCYWNr
ZW5kU3R1Yi5qcwpAQCAtMzIsNyArMzIsNiBAQCBpZiAoIXdpbmRvdy5JbnNwZWN0b3JCYWNrZW5k
KSB7CiAKIFdlYkluc3BlY3Rvci5JbnNwZWN0b3JCYWNrZW5kU3R1YiA9IGZ1bmN0aW9uKCkKIHsK
LSAgICB0aGlzLl9zZWFyY2hpbmdGb3JOb2RlID0gZmFsc2U7CiAgICAgdGhpcy5fYXR0YWNoZWRX
aW5kb3dIZWlnaHQgPSAwOwogICAgIHRoaXMuX3RpbWVsaW5lRW5hYmxlZCA9IGZhbHNlOwogfQpA
QCAtNjQsMTEgKzYzLDYgQEAgV2ViSW5zcGVjdG9yLkluc3BlY3RvckJhY2tlbmRTdHViLnByb3Rv
dHlwZSA9IHsKICAgICB7CiAgICAgfSwKIAotICAgIHNlYXJjaGluZ0Zvck5vZGU6IGZ1bmN0aW9u
KCkKLSAgICB7Ci0gICAgICAgIHJldHVybiB0aGlzLl9zZWFyY2hpbmdGb3JOb2RlOwotICAgIH0s
Ci0KICAgICBnZXRPdXRlckhUTUw6IGZ1bmN0aW9uKCkKICAgICB7CiAgICAgfSwKQEAgLTg1LDEx
ICs3OSw2IEBAIFdlYkluc3BlY3Rvci5JbnNwZWN0b3JCYWNrZW5kU3R1Yi5wcm90b3R5cGUgPSB7
CiAgICAgewogICAgIH0sCiAKLSAgICB0b2dnbGVOb2RlU2VhcmNoOiBmdW5jdGlvbigpCi0gICAg
ewotICAgICAgICB0aGlzLl9zZWFyY2hpbmdGb3JOb2RlID0gIXRoaXMuX3NlYXJjaGluZ0Zvck5v
ZGU7Ci0gICAgfSwKLQogICAgIHNldEF0dGFjaGVkV2luZG93SGVpZ2h0OiBmdW5jdGlvbihoZWln
aHQpCiAgICAgewogICAgIH0sCkBAIC0xNTYsNiArMTQ1LDE2IEBAIFdlYkluc3BlY3Rvci5JbnNw
ZWN0b3JCYWNrZW5kU3R1Yi5wcm90b3R5cGUgPSB7CiAgICAgICAgIFdlYkluc3BlY3Rvci5zZWFy
Y2hpbmdGb3JOb2RlV2FzRGlzYWJsZWQoKTsKICAgICB9LAogCisgICAgZW5hYmxlTW9uaXRvcmlu
Z1hIUjogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgV2ViSW5zcGVjdG9yLm1vbml0b3JpbmdY
SFJXYXNFbmFibGVkKCk7CisgICAgfSwKKworICAgIGRpc2FibGVNb25pdG9yaW5nWEhSOiBmdW5j
dGlvbigpCisgICAgeworICAgICAgICBXZWJJbnNwZWN0b3IubW9uaXRvcmluZ1hIUldhc0Rpc2Fi
bGVkKCk7CisgICAgfSwKKwogICAgIHJlbG9hZFBhZ2U6IGZ1bmN0aW9uKCkKICAgICB7CiAgICAg
fSwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9pbnNwZWN0b3IuanMg
Yi9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvaW5zcGVjdG9yLmpzCmluZGV4IGU4MTA4YWYu
LjU0M2JhMzIgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9pbnNwZWN0
b3IuanMKKysrIGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL2luc3BlY3Rvci5qcwpAQCAt
MTI5Nyw2ICsxMjk3LDE2IEBAIFdlYkluc3BlY3Rvci5zZWFyY2hpbmdGb3JOb2RlV2FzRGlzYWJs
ZWQgPSBmdW5jdGlvbigpCiAgICAgdGhpcy5wYW5lbHMuZWxlbWVudHMuc2VhcmNoaW5nRm9yTm9k
ZVdhc0Rpc2FibGVkKCk7CiB9CiAKK1dlYkluc3BlY3Rvci5tb25pdG9yaW5nWEhSV2FzRW5hYmxl
ZCA9IGZ1bmN0aW9uKCkKK3sKKyAgICB0aGlzLm1vbml0b3JpbmdYSFJFbmFibGVkID0gdHJ1ZTsK
K30KKworV2ViSW5zcGVjdG9yLm1vbml0b3JpbmdYSFJXYXNEaXNhYmxlZCA9IGZ1bmN0aW9uKCkK
K3sKKyAgICB0aGlzLm1vbml0b3JpbmdYSFJFbmFibGVkID0gZmFsc2U7Cit9CisKIFdlYkluc3Bl
Y3Rvci5hdHRhY2hEZWJ1Z2dlcldoZW5TaG93biA9IGZ1bmN0aW9uKCkKIHsKICAgICB0aGlzLnBh
bmVscy5zY3JpcHRzLmF0dGFjaERlYnVnZ2VyV2hlblNob3duKCk7CmRpZmYgLS1naXQgYS9XZWJD
b3JlL3htbC9YTUxIdHRwUmVxdWVzdC5jcHAgYi9XZWJDb3JlL3htbC9YTUxIdHRwUmVxdWVzdC5j
cHAKaW5kZXggODMxYWRhOS4uYzJlZjc1YSAxMDA2NDQKLS0tIGEvV2ViQ29yZS94bWwvWE1MSHR0
cFJlcXVlc3QuY3BwCisrKyBiL1dlYkNvcmUveG1sL1hNTEh0dHBSZXF1ZXN0LmNwcApAQCAtOTAw
LDcgKzkwMCw3IEBAIHZvaWQgWE1MSHR0cFJlcXVlc3Q6OmRpZEZpbmlzaExvYWRpbmcodW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyKQogCiAjaWYgRU5BQkxFKElOU1BFQ1RPUikKICAgICBpZiAoSW5z
cGVjdG9yQ29udHJvbGxlciogaW5zcGVjdG9yID0gc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpLT5p
bnNwZWN0b3JDb250cm9sbGVyKCkpCi0gICAgICAgIGluc3BlY3Rvci0+cmVzb3VyY2VSZXRyaWV2
ZWRCeVhNTEh0dHBSZXF1ZXN0KGlkZW50aWZpZXIsIG1fcmVzcG9uc2VUZXh0KTsKKyAgICAgICAg
aW5zcGVjdG9yLT5yZXNvdXJjZVJldHJpZXZlZEJ5WE1MSHR0cFJlcXVlc3QoaWRlbnRpZmllciwg
bV9yZXNwb25zZVRleHQsIG1fdXJsLCBtX2xhc3RTZW5kVVJMLCBtX2xhc3RTZW5kTGluZU51bWJl
cik7CiAjZW5kaWYKIAogICAgIGJvb2wgaGFkTG9hZGVyID0gbV9sb2FkZXI7CmRpZmYgLS1naXQg
YS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nIGIvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwpp
bmRleCA2MzAxOTdlLi41ZTY0ZTM0IDEwMDY0NAotLS0gYS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdl
TG9nCisrKyBiL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEsNSArMSwxOSBAQAogMjAx
MC0wNi0xNyAgUGF2ZWwgRmVsZG1hbiAgPHBmZWxkbWFuQGNocm9taXVtLm9yZz4KIAorICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiBi
cmluZyBYSFIgY29uc29sZSByZWNvcmRzIGJhY2suCisgICAgICAgIC0gbWFrZXMgKHVuKW1vbml0
b3JFdmVudHMoInhociIpIGVuYWJsZSAvIGRpc2FibGUgbW9uaXRvcmluZworICAgICAgICAtIGFk
ZHMgIkVuYWJsZSBYSFIgTW9uaXRvciIgLyAiRGlzYWJsZSBYSFIgTW9uaXRvciIgYWN0aW9ucyB0
byB0aGUgY29uc29sZSdzIGNvbnRleHQgbWVudQorICAgICAgICAtIG1ha2UgdGhlIGNob3NlbiBv
cHRpb24gcGVyc2lzdCBpbiB0aGUgc2V0dGluZ3MuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwNzk5CisKKyAgICAgICAgKiBzcmMvanMvSW5zcGVj
dG9yQ29udHJvbGxlckltcGwuanM6CisgICAgICAgIChkZXZ0b29scy5JbnNwZWN0b3JCYWNrZW5k
SW1wbCk6CisKKzIwMTAtMDYtMTcgIFBhdmVsIEZlbGRtYW4gIDxwZmVsZG1hbkBjaHJvbWl1bS5v
cmc+CisKICAgICAgICAgVW5yZXZpZXdlZDogY2hyb21pdW0gdGVzdHMgZml4LiBBZGRlZCBJbnNw
ZWN0b3JCYWNrZW5kIGRlbGVnYXRlcyBmb3IgbmV3IGluc3BlY3RvciBtZXRob2RzLgogCiAgICAg
ICAgICogc3JjL2pzL0luc3BlY3RvckNvbnRyb2xsZXJJbXBsLmpzOgpkaWZmIC0tZ2l0IGEvV2Vi
S2l0L2Nocm9taXVtL3NyYy9qcy9JbnNwZWN0b3JDb250cm9sbGVySW1wbC5qcyBiL1dlYktpdC9j
aHJvbWl1bS9zcmMvanMvSW5zcGVjdG9yQ29udHJvbGxlckltcGwuanMKaW5kZXggNzA3ODk1MC4u
NDFlNTM1MyAxMDA2NDQKLS0tIGEvV2ViS2l0L2Nocm9taXVtL3NyYy9qcy9JbnNwZWN0b3JDb250
cm9sbGVySW1wbC5qcworKysgYi9XZWJLaXQvY2hyb21pdW0vc3JjL2pzL0luc3BlY3RvckNvbnRy
b2xsZXJJbXBsLmpzCkBAIC00NSw5ICs0NSwxMSBAQCBkZXZ0b29scy5JbnNwZWN0b3JCYWNrZW5k
SW1wbCA9IGZ1bmN0aW9uKCkKICAgICB0aGlzLmluc3RhbGxJbnNwZWN0b3JDb250cm9sbGVyRGVs
ZWdhdGVfKCJjb3B5Tm9kZSIpOwogICAgIHRoaXMuaW5zdGFsbEluc3BlY3RvckNvbnRyb2xsZXJE
ZWxlZ2F0ZV8oImRlbGV0ZUNvb2tpZSIpOwogICAgIHRoaXMuaW5zdGFsbEluc3BlY3RvckNvbnRy
b2xsZXJEZWxlZ2F0ZV8oImRpZEV2YWx1YXRlRm9yVGVzdEluRnJvbnRlbmQiKTsKKyAgICB0aGlz
Lmluc3RhbGxJbnNwZWN0b3JDb250cm9sbGVyRGVsZWdhdGVfKCJkaXNhYmxlTW9uaXRvcmluZ1hI
UiIpOwogICAgIHRoaXMuaW5zdGFsbEluc3BlY3RvckNvbnRyb2xsZXJEZWxlZ2F0ZV8oImRpc2Fi
bGVSZXNvdXJjZVRyYWNraW5nIik7CiAgICAgdGhpcy5pbnN0YWxsSW5zcGVjdG9yQ29udHJvbGxl
ckRlbGVnYXRlXygiZGlzYWJsZVNlYXJjaGluZ0Zvck5vZGUiKTsKICAgICB0aGlzLmluc3RhbGxJ
bnNwZWN0b3JDb250cm9sbGVyRGVsZWdhdGVfKCJkaXNhYmxlVGltZWxpbmUiKTsKKyAgICB0aGlz
Lmluc3RhbGxJbnNwZWN0b3JDb250cm9sbGVyRGVsZWdhdGVfKCJlbmFibGVNb25pdG9yaW5nWEhS
Iik7CiAgICAgdGhpcy5pbnN0YWxsSW5zcGVjdG9yQ29udHJvbGxlckRlbGVnYXRlXygiZW5hYmxl
UmVzb3VyY2VUcmFja2luZyIpOwogICAgIHRoaXMuaW5zdGFsbEluc3BlY3RvckNvbnRyb2xsZXJE
ZWxlZ2F0ZV8oImVuYWJsZVNlYXJjaGluZ0Zvck5vZGUiKTsKICAgICB0aGlzLmluc3RhbGxJbnNw
ZWN0b3JDb250cm9sbGVyRGVsZWdhdGVfKCJlbmFibGVUaW1lbGluZSIpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59088</attachid>
            <date>2010-06-18 02:26:35 -0700</date>
            <delta_ts>2010-06-18 03:24:39 -0700</delta_ts>
            <desc>[PATCH] Same with no monitorEvents(&quot;xhr&quot;) support.</desc>
            <filename>monitor_xhr</filename>
            <type>text/plain</type>
            <size>18831</size>
            <attacher name="Pavel Feldman">pfeldman</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
OTM1YjU5MC4uOWJmYWJlZSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsNSArMSw0OSBAQAogMjAxMC0wNi0xNyAgUGF2ZWwgRmVsZG1h
biAgPHBmZWxkbWFuQGNocm9taXVtLm9yZz4KIAorICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiBicmluZyBYSFIgY29uc29sZSByZWNv
cmRzIGJhY2suCisgICAgICAgIC0gYWRkcyAiRW5hYmxlIFhIUiBNb25pdG9yIiAvICJEaXNhYmxl
IFhIUiBNb25pdG9yIiBhY3Rpb25zIHRvIHRoZSBjb25zb2xlJ3MgY29udGV4dCBtZW51CisgICAg
ICAgIC0gbWFrZSB0aGUgY2hvc2VuIG9wdGlvbiBwZXJzaXN0IGluIHRoZSBzZXR0aW5ncy4KKwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA3OTkKKwor
ICAgICAgICAqIEVuZ2xpc2gubHByb2ovbG9jYWxpemVkU3RyaW5ncy5qczoKKyAgICAgICAgKiBp
bnNwZWN0b3IvSW5zcGVjdG9yQmFja2VuZC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0
b3JCYWNrZW5kOjpkaXNhYmxlU2VhcmNoaW5nRm9yTm9kZSk6CisgICAgICAgIChXZWJDb3JlOjpJ
bnNwZWN0b3JCYWNrZW5kOjplbmFibGVNb25pdG9yaW5nWEhSKToKKyAgICAgICAgKFdlYkNvcmU6
Okluc3BlY3RvckJhY2tlbmQ6OmRpc2FibGVNb25pdG9yaW5nWEhSKToKKyAgICAgICAgKiBpbnNw
ZWN0b3IvSW5zcGVjdG9yQmFja2VuZC5oOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JC
YWNrZW5kLmlkbDoKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDb250cm9sbGVyOjpJbnNwZWN0b3JDb250cm9s
bGVyKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNvbnRyb2xsZXI6OnNldE1vbml0b3Jp
bmdYSFIpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ29udHJvbGxlcjo6ZGlkTG9hZFJl
c291cmNlRnJvbU1lbW9yeUNhY2hlKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNvbnRy
b2xsZXI6OmlkZW50aWZpZXJGb3JJbml0aWFsUmVxdWVzdCk6CisgICAgICAgIChXZWJDb3JlOjpJ
bnNwZWN0b3JDb250cm9sbGVyOjpyZXNvdXJjZVJldHJpZXZlZEJ5WE1MSHR0cFJlcXVlc3QpOgor
ICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ29udHJvbGxlcjo6ZW5zdXJlU2V0dGluZ3NMb2Fk
ZWQpOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JDb250cm9sbGVyLmg6CisgICAgICAg
ICogaW5zcGVjdG9yL0luc3BlY3RvckZyb250ZW5kLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Oklu
c3BlY3RvckZyb250ZW5kOjptb25pdG9yaW5nWEhSV2FzRW5hYmxlZCk6CisgICAgICAgIChXZWJD
b3JlOjpJbnNwZWN0b3JGcm9udGVuZDo6bW9uaXRvcmluZ1hIUldhc0Rpc2FibGVkKToKKyAgICAg
ICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yRnJvbnRlbmQuaDoKKyAgICAgICAgKiBpbnNwZWN0b3Iv
ZnJvbnQtZW5kL0NvbnNvbGVWaWV3LmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkNvbnNvbGVW
aWV3LnByb3RvdHlwZS5faGFuZGxlQ29udGV4dE1lbnVFdmVudCk6CisgICAgICAgIChXZWJJbnNw
ZWN0b3IuQ29uc29sZVZpZXcucHJvdG90eXBlLl9yZWdpc3RlclNob3J0Y3V0cyk6CisgICAgICAg
ICogaW5zcGVjdG9yL2Zyb250LWVuZC9JbmplY3RlZFNjcmlwdC5qczoKKyAgICAgICAgKGluamVj
dGVkU2NyaXB0Q29uc3RydWN0b3IuKToKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL0lu
c3BlY3RvckJhY2tlbmRTdHViLmpzOgorICAgICAgICAoLldlYkluc3BlY3Rvci5JbnNwZWN0b3JC
YWNrZW5kU3R1Yik6CisgICAgICAgICguV2ViSW5zcGVjdG9yLkluc3BlY3RvckJhY2tlbmRTdHVi
LnByb3RvdHlwZS5lbmFibGVNb25pdG9yaW5nWEhSKToKKyAgICAgICAgKC5XZWJJbnNwZWN0b3Iu
SW5zcGVjdG9yQmFja2VuZFN0dWIucHJvdG90eXBlLmRpc2FibGVNb25pdG9yaW5nWEhSKToKKyAg
ICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL2luc3BlY3Rvci5qczoKKyAgICAgICAgKFdlYklu
c3BlY3Rvci5tb25pdG9yaW5nWEhSV2FzRW5hYmxlZCk6CisgICAgICAgIChXZWJJbnNwZWN0b3Iu
bW9uaXRvcmluZ1hIUldhc0Rpc2FibGVkKToKKyAgICAgICAgKiB4bWwvWE1MSHR0cFJlcXVlc3Qu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6WE1MSHR0cFJlcXVlc3Q6OmRpZEZpbmlzaExvYWRpbmcp
OgorCisyMDEwLTA2LTE3ICBQYXZlbCBGZWxkbWFuICA8cGZlbGRtYW5AY2hyb21pdW0ub3JnPgor
CiAgICAgICAgIFVucmV2aWV3ZWQ6IGNocm9taXVtIHRlc3RzIGZpeC4gQWRkZWQgSW5zcGVjdG9y
QmFja2VuZCBkZWxlZ2F0ZXMgZm9yIG5ldyBpbnNwZWN0b3IgbWV0aG9kcy4KIAogICAgICAgICAq
IGluc3BlY3Rvci9mcm9udC1lbmQvSW5zcGVjdG9yQmFja2VuZFN0dWIuanM6CmRpZmYgLS1naXQg
YS9XZWJDb3JlL0VuZ2xpc2gubHByb2ovbG9jYWxpemVkU3RyaW5ncy5qcyBiL1dlYkNvcmUvRW5n
bGlzaC5scHJvai9sb2NhbGl6ZWRTdHJpbmdzLmpzCmluZGV4IDc0MzI5NmEuLjdmZmFmZGYgMTAw
NjQ0CkJpbmFyeSBmaWxlcyBhL1dlYkNvcmUvRW5nbGlzaC5scHJvai9sb2NhbGl6ZWRTdHJpbmdz
LmpzIGFuZCBiL1dlYkNvcmUvRW5nbGlzaC5scHJvai9sb2NhbGl6ZWRTdHJpbmdzLmpzIGRpZmZl
cgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQmFja2VuZC5jcHAgYi9X
ZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JCYWNrZW5kLmNwcAppbmRleCAwNzE0MGM5Li43NDFi
Mjk1IDEwMDY0NAotLS0gYS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JCYWNrZW5kLmNwcAor
KysgYi9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JCYWNrZW5kLmNwcApAQCAtMTA5LDYgKzEw
OSwxOCBAQCB2b2lkIEluc3BlY3RvckJhY2tlbmQ6OmRpc2FibGVTZWFyY2hpbmdGb3JOb2RlKCkK
ICAgICAgICAgbV9pbnNwZWN0b3JDb250cm9sbGVyLT5zZXRTZWFyY2hpbmdGb3JOb2RlKGZhbHNl
KTsKIH0KIAordm9pZCBJbnNwZWN0b3JCYWNrZW5kOjplbmFibGVNb25pdG9yaW5nWEhSKCkKK3sK
KyAgICBpZiAobV9pbnNwZWN0b3JDb250cm9sbGVyKQorICAgICAgICBtX2luc3BlY3RvckNvbnRy
b2xsZXItPnNldE1vbml0b3JpbmdYSFIodHJ1ZSk7Cit9CisKK3ZvaWQgSW5zcGVjdG9yQmFja2Vu
ZDo6ZGlzYWJsZU1vbml0b3JpbmdYSFIoKQoreworICAgIGlmIChtX2luc3BlY3RvckNvbnRyb2xs
ZXIpCisgICAgICAgIG1faW5zcGVjdG9yQ29udHJvbGxlci0+c2V0TW9uaXRvcmluZ1hIUihmYWxz
ZSk7Cit9CisKIHZvaWQgSW5zcGVjdG9yQmFja2VuZDo6ZW5hYmxlUmVzb3VyY2VUcmFja2luZyhi
b29sIGFsd2F5cykKIHsKICAgICBpZiAobV9pbnNwZWN0b3JDb250cm9sbGVyKQpkaWZmIC0tZ2l0
IGEvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQmFja2VuZC5oIGIvV2ViQ29yZS9pbnNwZWN0
b3IvSW5zcGVjdG9yQmFja2VuZC5oCmluZGV4IGEzOWJhNTAuLmQyMjNmNDEgMTAwNjQ0Ci0tLSBh
L1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckJhY2tlbmQuaAorKysgYi9XZWJDb3JlL2luc3Bl
Y3Rvci9JbnNwZWN0b3JCYWNrZW5kLmgKQEAgLTY1LDYgKzY1LDkgQEAgcHVibGljOgogICAgIHZv
aWQgZW5hYmxlU2VhcmNoaW5nRm9yTm9kZSgpOwogICAgIHZvaWQgZGlzYWJsZVNlYXJjaGluZ0Zv
ck5vZGUoKTsKIAorICAgIHZvaWQgZW5hYmxlTW9uaXRvcmluZ1hIUigpOworICAgIHZvaWQgZGlz
YWJsZU1vbml0b3JpbmdYSFIoKTsKKwogICAgIHZvaWQgZW5hYmxlUmVzb3VyY2VUcmFja2luZyhi
b29sIGFsd2F5cyk7CiAgICAgdm9pZCBkaXNhYmxlUmVzb3VyY2VUcmFja2luZyhib29sIGFsd2F5
cyk7CiAgICAgdm9pZCBnZXRSZXNvdXJjZUNvbnRlbnQobG9uZyBjYWxsSWQsIHVuc2lnbmVkIGxv
bmcgaWRlbnRpZmllcik7CmRpZmYgLS1naXQgYS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JC
YWNrZW5kLmlkbCBiL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckJhY2tlbmQuaWRsCmluZGV4
IDY4MjAxNzEuLjE0ZjFmYmMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rv
ckJhY2tlbmQuaWRsCisrKyBiL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckJhY2tlbmQuaWRs
CkBAIC00MCw2ICs0MCw5IEBAIG1vZHVsZSBjb3JlIHsKICAgICAgICAgdm9pZCBlbmFibGVTZWFy
Y2hpbmdGb3JOb2RlKCk7CiAgICAgICAgIHZvaWQgZGlzYWJsZVNlYXJjaGluZ0Zvck5vZGUoKTsK
IAorICAgICAgICB2b2lkIGVuYWJsZU1vbml0b3JpbmdYSFIoKTsKKyAgICAgICAgdm9pZCBkaXNh
YmxlTW9uaXRvcmluZ1hIUigpOworCiAgICAgICAgIHZvaWQgZW5hYmxlUmVzb3VyY2VUcmFja2lu
ZyhpbiBib29sZWFuIGFsd2F5cyk7CiAgICAgICAgIHZvaWQgZGlzYWJsZVJlc291cmNlVHJhY2tp
bmcoaW4gYm9vbGVhbiBhbHdheXMpOwogICAgICAgICB2b2lkIGdldFJlc291cmNlQ29udGVudChp
biBsb25nIGNhbGxJZCwgaW4gdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKTsKZGlmZiAtLWdpdCBh
L1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xsZXIuY3BwIGIvV2ViQ29yZS9pbnNw
ZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5jcHAKaW5kZXggMzI1ZTEyYy4uYTFjOTcyOSAxMDA2
NDQKLS0tIGEvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5jcHAKKysrIGIv
V2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5jcHAKQEAgLTEyMCw2ICsxMjAs
NyBAQCBzdGF0aWMgY29uc3QgY2hhciogY29uc3QgZGVidWdnZXJFbmFibGVkU2V0dGluZ05hbWUg
PSAiZGVidWdnZXJFbmFibGVkIjsKIHN0YXRpYyBjb25zdCBjaGFyKiBjb25zdCBwcm9maWxlckVu
YWJsZWRTZXR0aW5nTmFtZSA9ICJwcm9maWxlckVuYWJsZWQiOwogc3RhdGljIGNvbnN0IGNoYXIq
IGNvbnN0IGluc3BlY3RvckF0dGFjaGVkSGVpZ2h0TmFtZSA9ICJpbnNwZWN0b3JBdHRhY2hlZEhl
aWdodCI7CiBzdGF0aWMgY29uc3QgY2hhciogY29uc3QgbGFzdEFjdGl2ZVBhbmVsU2V0dGluZ05h
bWUgPSAibGFzdEFjdGl2ZVBhbmVsIjsKK3N0YXRpYyBjb25zdCBjaGFyKiBjb25zdCBtb25pdG9y
aW5nWEhSU2V0dGluZ05hbWUgPSAieGhyTW9uaXRvciI7CiAKIGNvbnN0IFN0cmluZyYgSW5zcGVj
dG9yQ29udHJvbGxlcjo6ZnJvbnRlbmRTZXR0aW5nc1NldHRpbmdOYW1lKCkKIHsKQEAgLTE1MSw5
ICsxNTIsMTAgQEAgSW5zcGVjdG9yQ29udHJvbGxlcjo6SW5zcGVjdG9yQ29udHJvbGxlcihQYWdl
KiBwYWdlLCBJbnNwZWN0b3JDbGllbnQqIGNsaWVudCkKICAgICAsIG1fc2Vzc2lvblNldHRpbmdz
KEluc3BlY3Rvck9iamVjdDo6Y3JlYXRlKCkpCiAgICAgLCBtX2dyb3VwTGV2ZWwoMCkKICAgICAs
IG1fc2VhcmNoaW5nRm9yTm9kZShmYWxzZSkKKyAgICAsIG1fbW9uaXRvcmluZ1hIUihmYWxzZSkK
ICAgICAsIG1fcHJldmlvdXNNZXNzYWdlKDApCiAgICAgLCBtX3Jlc291cmNlVHJhY2tpbmdFbmFi
bGVkKGZhbHNlKQotICAgICwgbV9yZXNvdXJjZVRyYWNraW5nU2V0dGluZ3NMb2FkZWQoZmFsc2Up
CisgICAgLCBtX3NldHRpbmdzTG9hZGVkKGZhbHNlKQogICAgICwgbV9pbnNwZWN0b3JCYWNrZW5k
KEluc3BlY3RvckJhY2tlbmQ6OmNyZWF0ZSh0aGlzKSkKICAgICAsIG1faW5qZWN0ZWRTY3JpcHRI
b3N0KEluamVjdGVkU2NyaXB0SG9zdDo6Y3JlYXRlKHRoaXMpKQogI2lmIEVOQUJMRShKQVZBU0NS
SVBUX0RFQlVHR0VSKQpAQCAtNDMxLDYgKzQzMywyMCBAQCB2b2lkIEluc3BlY3RvckNvbnRyb2xs
ZXI6OnNldFNlYXJjaGluZ0Zvck5vZGUoYm9vbCBlbmFibGVkKQogICAgIH0KIH0KIAordm9pZCBJ
bnNwZWN0b3JDb250cm9sbGVyOjpzZXRNb25pdG9yaW5nWEhSKGJvb2wgZW5hYmxlZCkKK3sKKyAg
ICBpZiAobV9tb25pdG9yaW5nWEhSID09IGVuYWJsZWQpCisgICAgICAgIHJldHVybjsKKyAgICBt
X21vbml0b3JpbmdYSFIgPSBlbmFibGVkOworICAgIHNldFNldHRpbmcobW9uaXRvcmluZ1hIUlNl
dHRpbmdOYW1lLCBlbmFibGVkID8gInRydWUiIDogImZhbHNlIik7CisgICAgaWYgKG1fZnJvbnRl
bmQpIHsKKyAgICAgICAgaWYgKGVuYWJsZWQpCisgICAgICAgICAgICBtX2Zyb250ZW5kLT5tb25p
dG9yaW5nWEhSV2FzRW5hYmxlZCgpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBtX2Zyb250
ZW5kLT5tb25pdG9yaW5nWEhSV2FzRGlzYWJsZWQoKTsKKyAgICB9Cit9CisKIHZvaWQgSW5zcGVj
dG9yQ29udHJvbGxlcjo6Y29ubmVjdEZyb250ZW5kKGNvbnN0IFNjcmlwdE9iamVjdCYgd2ViSW5z
cGVjdG9yKQogewogICAgIG1fb3BlbmluZ0Zyb250ZW5kID0gZmFsc2U7CkBAIC01NjgsOCArNTg0
LDkgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjpwb3B1bGF0ZVNjcmlwdE9iamVjdHMoKQog
CiAgICAgaWYgKG1fc2VhcmNoaW5nRm9yTm9kZSkKICAgICAgICAgbV9mcm9udGVuZC0+c2VhcmNo
aW5nRm9yTm9kZVdhc0VuYWJsZWQoKTsKLSAgICBlbHNlCi0gICAgICAgIG1fZnJvbnRlbmQtPnNl
YXJjaGluZ0Zvck5vZGVXYXNEaXNhYmxlZCgpOworCisgICAgaWYgKG1fbW9uaXRvcmluZ1hIUikK
KyAgICAgICAgbV9mcm9udGVuZC0+bW9uaXRvcmluZ1hIUldhc0VuYWJsZWQoKTsKIAogI2lmIEVO
QUJMRShKQVZBU0NSSVBUX0RFQlVHR0VSKQogICAgIGlmIChtX3Byb2ZpbGVyRW5hYmxlZCkKQEAg
LTgxMyw3ICs4MzAsNyBAQCB2b2lkIEluc3BlY3RvckNvbnRyb2xsZXI6OmRpZExvYWRSZXNvdXJj
ZUZyb21NZW1vcnlDYWNoZShEb2N1bWVudExvYWRlciogbG9hZGVyLAogCiAgICAgQVNTRVJUKG1f
aW5zcGVjdGVkUGFnZSk7CiAgICAgYm9vbCBpc01haW5SZXNvdXJjZSA9IGlzTWFpblJlc291cmNl
TG9hZGVyKGxvYWRlciwgS1VSTChQYXJzZWRVUkxTdHJpbmcsIGNhY2hlZFJlc291cmNlLT51cmwo
KSkpOwotICAgIGVuc3VyZVJlc291cmNlVHJhY2tpbmdTZXR0aW5nc0xvYWRlZCgpOworICAgIGVu
c3VyZVNldHRpbmdzTG9hZGVkKCk7CiAgICAgaWYgKCFpc01haW5SZXNvdXJjZSAmJiAhbV9yZXNv
dXJjZVRyYWNraW5nRW5hYmxlZCkKICAgICAgICAgcmV0dXJuOwogCkBAIC04MzcsNyArODU0LDcg
QEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjppZGVudGlmaWVyRm9ySW5pdGlhbFJlcXVlc3Qo
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLAogICAgIEFTU0VSVChtX2luc3BlY3RlZFBhZ2UpOwog
CiAgICAgYm9vbCBpc01haW5SZXNvdXJjZSA9IGlzTWFpblJlc291cmNlTG9hZGVyKGxvYWRlciwg
cmVxdWVzdC51cmwoKSk7Ci0gICAgZW5zdXJlUmVzb3VyY2VUcmFja2luZ1NldHRpbmdzTG9hZGVk
KCk7CisgICAgZW5zdXJlU2V0dGluZ3NMb2FkZWQoKTsKICAgICBpZiAoIWlzTWFpblJlc291cmNl
ICYmICFtX3Jlc291cmNlVHJhY2tpbmdFbmFibGVkKQogICAgICAgICByZXR1cm47CiAKQEAgLTEw
MDcsOSArMTAyNCwxNSBAQCB2b2lkIEluc3BlY3RvckNvbnRyb2xsZXI6OmRpZEZhaWxMb2FkaW5n
KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyYwogICAgICAgICByZXNvdXJj
ZS0+dXBkYXRlU2NyaXB0T2JqZWN0KG1fZnJvbnRlbmQuZ2V0KCkpOwogfQogCi12b2lkIEluc3Bl
Y3RvckNvbnRyb2xsZXI6OnJlc291cmNlUmV0cmlldmVkQnlYTUxIdHRwUmVxdWVzdCh1bnNpZ25l
ZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFNjcmlwdFN0cmluZyYgc291cmNlU3RyaW5nKQordm9p
ZCBJbnNwZWN0b3JDb250cm9sbGVyOjpyZXNvdXJjZVJldHJpZXZlZEJ5WE1MSHR0cFJlcXVlc3Qo
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBTY3JpcHRTdHJpbmcmIHNvdXJjZVN0cmlu
ZywgY29uc3QgU3RyaW5nJiB1cmwsIGNvbnN0IFN0cmluZyYgc2VuZFVSTCwgdW5zaWduZWQgc2Vu
ZExpbmVOdW1iZXIpCiB7Ci0gICAgaWYgKCFlbmFibGVkKCkgfHwgIW1fcmVzb3VyY2VUcmFja2lu
Z0VuYWJsZWQpCisgICAgaWYgKCFlbmFibGVkKCkpCisgICAgICAgIHJldHVybjsKKworICAgIGlm
IChtX21vbml0b3JpbmdYSFIpCisgICAgICAgIGFkZE1lc3NhZ2VUb0NvbnNvbGUoSlNNZXNzYWdl
U291cmNlLCBMb2dNZXNzYWdlVHlwZSwgTG9nTWVzc2FnZUxldmVsLCAiWEhSIGZpbmlzaGVkIGxv
YWRpbmc6IFwiIiArIHVybCArICJcIi4iLCBzZW5kTGluZU51bWJlciwgc2VuZFVSTCk7CisKKyAg
ICBpZiAoIW1fcmVzb3VyY2VUcmFja2luZ0VuYWJsZWQpCiAgICAgICAgIHJldHVybjsKIAogICAg
IEluc3BlY3RvclJlc291cmNlKiByZXNvdXJjZSA9IG1fcmVzb3VyY2VzLmdldChpZGVudGlmaWVy
KS5nZXQoKTsKQEAgLTEwNzEsMTUgKzEwOTQsMTkgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVy
OjpkaXNhYmxlUmVzb3VyY2VUcmFja2luZyhib29sIGFsd2F5cykKICAgICAgICAgbV9mcm9udGVu
ZC0+cmVzb3VyY2VUcmFja2luZ1dhc0Rpc2FibGVkKCk7CiB9CiAKLXZvaWQgSW5zcGVjdG9yQ29u
dHJvbGxlcjo6ZW5zdXJlUmVzb3VyY2VUcmFja2luZ1NldHRpbmdzTG9hZGVkKCkKK3ZvaWQgSW5z
cGVjdG9yQ29udHJvbGxlcjo6ZW5zdXJlU2V0dGluZ3NMb2FkZWQoKQogewotICAgIGlmIChtX3Jl
c291cmNlVHJhY2tpbmdTZXR0aW5nc0xvYWRlZCkKKyAgICBpZiAobV9zZXR0aW5nc0xvYWRlZCkK
ICAgICAgICAgcmV0dXJuOwotICAgIG1fcmVzb3VyY2VUcmFja2luZ1NldHRpbmdzTG9hZGVkID0g
dHJ1ZTsKKyAgICBtX3NldHRpbmdzTG9hZGVkID0gdHJ1ZTsKIAogICAgIFN0cmluZyByZXNvdXJj
ZVRyYWNraW5nID0gc2V0dGluZyhyZXNvdXJjZVRyYWNraW5nRW5hYmxlZFNldHRpbmdOYW1lKTsK
ICAgICBpZiAocmVzb3VyY2VUcmFja2luZyA9PSAidHJ1ZSIpCiAgICAgICAgIG1fcmVzb3VyY2VU
cmFja2luZ0VuYWJsZWQgPSB0cnVlOworCisgICAgU3RyaW5nIG1vbml0b3JpbmdYSFIgPSBzZXR0
aW5nKG1vbml0b3JpbmdYSFJTZXR0aW5nTmFtZSk7CisgICAgaWYgKG1vbml0b3JpbmdYSFIgPT0g
InRydWUiKQorICAgICAgICBtX21vbml0b3JpbmdYSFIgPSB0cnVlOyAgICAKIH0KIAogdm9pZCBJ
bnNwZWN0b3JDb250cm9sbGVyOjpzdGFydFRpbWVsaW5lUHJvZmlsZXIoKQpkaWZmIC0tZ2l0IGEv
V2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5oIGIvV2ViQ29yZS9pbnNwZWN0
b3IvSW5zcGVjdG9yQ29udHJvbGxlci5oCmluZGV4IGFmMzYzODMuLjdlNzcxYmIgMTAwNjQ0Ci0t
LSBhL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xsZXIuaAorKysgYi9XZWJDb3Jl
L2luc3BlY3Rvci9JbnNwZWN0b3JDb250cm9sbGVyLmgKQEAgLTE3MCwxMyArMTcwLDE0IEBAIHB1
YmxpYzoKICAgICB2b2lkIGRpZFJlY2VpdmVDb250ZW50TGVuZ3RoKHVuc2lnbmVkIGxvbmcgaWRl
bnRpZmllciwgaW50IGxlbmd0aFJlY2VpdmVkKTsKICAgICB2b2lkIGRpZEZpbmlzaExvYWRpbmco
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKTsKICAgICB2b2lkIGRpZEZhaWxMb2FkaW5nKHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYpOwotICAgIHZvaWQgcmVz
b3VyY2VSZXRyaWV2ZWRCeVhNTEh0dHBSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
Y29uc3QgU2NyaXB0U3RyaW5nJiBzb3VyY2VTdHJpbmcpOworICAgIHZvaWQgcmVzb3VyY2VSZXRy
aWV2ZWRCeVhNTEh0dHBSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgU2Ny
aXB0U3RyaW5nJiBzb3VyY2VTdHJpbmcsIGNvbnN0IFN0cmluZyYgdXJsLCBjb25zdCBTdHJpbmcm
IHNlbmRVUkwsIHVuc2lnbmVkIHNlbmRMaW5lTnVtYmVyKTsKICAgICB2b2lkIHNjcmlwdEltcG9y
dGVkKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiBzb3VyY2VTdHJpbmcp
OwogCiAgICAgdm9pZCBlbmFibGVSZXNvdXJjZVRyYWNraW5nKGJvb2wgYWx3YXlzID0gZmFsc2Us
IGJvb2wgcmVsb2FkID0gdHJ1ZSk7CiAgICAgdm9pZCBkaXNhYmxlUmVzb3VyY2VUcmFja2luZyhi
b29sIGFsd2F5cyA9IGZhbHNlKTsKICAgICBib29sIHJlc291cmNlVHJhY2tpbmdFbmFibGVkKCkg
Y29uc3QgeyByZXR1cm4gbV9yZXNvdXJjZVRyYWNraW5nRW5hYmxlZDsgfQotICAgIHZvaWQgZW5z
dXJlUmVzb3VyY2VUcmFja2luZ1NldHRpbmdzTG9hZGVkKCk7CisKKyAgICB2b2lkIGVuc3VyZVNl
dHRpbmdzTG9hZGVkKCk7CiAKICAgICB2b2lkIHN0YXJ0VGltZWxpbmVQcm9maWxlcigpOwogICAg
IHZvaWQgc3RvcFRpbWVsaW5lUHJvZmlsZXIoKTsKQEAgLTI3OCw2ICsyNzksNyBAQCBwcml2YXRl
OgogCiAgICAgLy8gRm9sbG93aW5nIGFyZSB1c2VkIGZyb20gSW5zcGVjdG9yQmFja2VuZCBhbmQg
aW50ZXJuYWxseS4KICAgICB2b2lkIHNldFNlYXJjaGluZ0Zvck5vZGUoYm9vbCBlbmFibGVkKTsK
KyAgICB2b2lkIHNldE1vbml0b3JpbmdYSFIoYm9vbCBlbmFibGVkKTsKICAgICB2b2lkIHN0b3Jl
TGFzdEFjdGl2ZVBhbmVsKGNvbnN0IFN0cmluZyYgcGFuZWxOYW1lKTsKICAgICBJbnNwZWN0b3JE
T01BZ2VudCogZG9tQWdlbnQoKSB7IHJldHVybiBtX2RvbUFnZW50LmdldCgpOyB9CiAgICAgdm9p
ZCByZWxlYXNlRE9NQWdlbnQoKTsKQEAgLTM1Myw5ICszNTUsMTAgQEAgcHJpdmF0ZToKICAgICBS
ZWZQdHI8SW5zcGVjdG9yVmFsdWU+IG1fc2Vzc2lvblNldHRpbmdzOwogICAgIHVuc2lnbmVkIG1f
Z3JvdXBMZXZlbDsKICAgICBib29sIG1fc2VhcmNoaW5nRm9yTm9kZTsKKyAgICBib29sIG1fbW9u
aXRvcmluZ1hIUjsKICAgICBDb25zb2xlTWVzc2FnZSogbV9wcmV2aW91c01lc3NhZ2U7CiAgICAg
Ym9vbCBtX3Jlc291cmNlVHJhY2tpbmdFbmFibGVkOwotICAgIGJvb2wgbV9yZXNvdXJjZVRyYWNr
aW5nU2V0dGluZ3NMb2FkZWQ7CisgICAgYm9vbCBtX3NldHRpbmdzTG9hZGVkOwogICAgIFJlZlB0
cjxJbnNwZWN0b3JCYWNrZW5kPiBtX2luc3BlY3RvckJhY2tlbmQ7CiAgICAgUmVmUHRyPEluamVj
dGVkU2NyaXB0SG9zdD4gbV9pbmplY3RlZFNjcmlwdEhvc3Q7CiAKZGlmZiAtLWdpdCBhL1dlYkNv
cmUvaW5zcGVjdG9yL0luc3BlY3RvckZyb250ZW5kLmNwcCBiL1dlYkNvcmUvaW5zcGVjdG9yL0lu
c3BlY3RvckZyb250ZW5kLmNwcAppbmRleCBmYWQzMzAzLi4yODdlNjdmIDEwMDY0NAotLS0gYS9X
ZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVuZC5jcHAKKysrIGIvV2ViQ29yZS9pbnNw
ZWN0b3IvSW5zcGVjdG9yRnJvbnRlbmQuY3BwCkBAIC0yNjIsNyArMjYyLDYgQEAgdm9pZCBJbnNw
ZWN0b3JGcm9udGVuZDo6cmVzb3VyY2VUcmFja2luZ1dhc0Rpc2FibGVkKCkKICAgICBjYWxsU2lt
cGxlRnVuY3Rpb24oInJlc291cmNlVHJhY2tpbmdXYXNEaXNhYmxlZCIpOwogfQogCi0KIHZvaWQg
SW5zcGVjdG9yRnJvbnRlbmQ6OnNlYXJjaGluZ0Zvck5vZGVXYXNFbmFibGVkKCkKIHsKICAgICBj
YWxsU2ltcGxlRnVuY3Rpb24oInNlYXJjaGluZ0Zvck5vZGVXYXNFbmFibGVkIik7CkBAIC0yNzMs
NiArMjcyLDE2IEBAIHZvaWQgSW5zcGVjdG9yRnJvbnRlbmQ6OnNlYXJjaGluZ0Zvck5vZGVXYXNE
aXNhYmxlZCgpCiAgICAgY2FsbFNpbXBsZUZ1bmN0aW9uKCJzZWFyY2hpbmdGb3JOb2RlV2FzRGlz
YWJsZWQiKTsKIH0KIAordm9pZCBJbnNwZWN0b3JGcm9udGVuZDo6bW9uaXRvcmluZ1hIUldhc0Vu
YWJsZWQoKQoreworICAgIGNhbGxTaW1wbGVGdW5jdGlvbigibW9uaXRvcmluZ1hIUldhc0VuYWJs
ZWQiKTsKK30KKwordm9pZCBJbnNwZWN0b3JGcm9udGVuZDo6bW9uaXRvcmluZ1hIUldhc0Rpc2Fi
bGVkKCkKK3sKKyAgICBjYWxsU2ltcGxlRnVuY3Rpb24oIm1vbml0b3JpbmdYSFJXYXNEaXNhYmxl
ZCIpOworfQorCiB2b2lkIEluc3BlY3RvckZyb250ZW5kOjp1cGRhdGVQYXVzZU9uRXhjZXB0aW9u
c1N0YXRlKGxvbmcgc3RhdGUpCiB7CiAgICAgU2NyaXB0RnVuY3Rpb25DYWxsIGZ1bmN0aW9uKG1f
d2ViSW5zcGVjdG9yLCAiZGlzcGF0Y2giKTsgCmRpZmYgLS1naXQgYS9XZWJDb3JlL2luc3BlY3Rv
ci9JbnNwZWN0b3JGcm9udGVuZC5oIGIvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRnJvbnRl
bmQuaAppbmRleCAwZTk2Njg4Li5kMzBlMjNjIDEwMDY0NAotLS0gYS9XZWJDb3JlL2luc3BlY3Rv
ci9JbnNwZWN0b3JGcm9udGVuZC5oCisrKyBiL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckZy
b250ZW5kLmgKQEAgLTkxLDYgKzkxLDkgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICB2
b2lkIHNlYXJjaGluZ0Zvck5vZGVXYXNFbmFibGVkKCk7CiAgICAgICAgIHZvaWQgc2VhcmNoaW5n
Rm9yTm9kZVdhc0Rpc2FibGVkKCk7CiAKKyAgICAgICAgdm9pZCBtb25pdG9yaW5nWEhSV2FzRW5h
YmxlZCgpOworICAgICAgICB2b2lkIG1vbml0b3JpbmdYSFJXYXNEaXNhYmxlZCgpOworCiAgICAg
ICAgIHZvaWQgdXBkYXRlUGF1c2VPbkV4Y2VwdGlvbnNTdGF0ZShsb25nIHN0YXRlKTsKIAogI2lm
IEVOQUJMRShKQVZBU0NSSVBUX0RFQlVHR0VSKQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9pbnNwZWN0
b3IvZnJvbnQtZW5kL0NvbnNvbGVWaWV3LmpzIGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5k
L0NvbnNvbGVWaWV3LmpzCmluZGV4IDEwNjMyNGUuLjhiYjcxZTYgMTAwNjQ0Ci0tLSBhL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Db25zb2xlVmlldy5qcworKysgYi9XZWJDb3JlL2luc3Bl
Y3Rvci9mcm9udC1lbmQvQ29uc29sZVZpZXcuanMKQEAgLTM5OSw3ICszOTksMTMgQEAgV2ViSW5z
cGVjdG9yLkNvbnNvbGVWaWV3LnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgIHJldHVybjsKICAg
ICAgICAgfQogCi0gICAgICAgIHRoaXMuX2NvbnRleHRNZW51LnNob3coZXZlbnQpOworICAgICAg
ICB2YXIgY29udGV4dE1lbnUgPSBuZXcgV2ViSW5zcGVjdG9yLkNvbnRleHRNZW51KCk7CisgICAg
ICAgIGlmICghV2ViSW5zcGVjdG9yLm1vbml0b3JpbmdYSFJFbmFibGVkKQorICAgICAgICAgICAg
Y29udGV4dE1lbnUuYXBwZW5kSXRlbShXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkVuYWJsZSBYTUxI
dHRwUmVxdWVzdCBsb2dnaW5nIiksIEluc3BlY3RvckJhY2tlbmQuZW5hYmxlTW9uaXRvcmluZ1hI
Ui5iaW5kKEluc3BlY3RvckJhY2tlbmQpKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgY29u
dGV4dE1lbnUuYXBwZW5kSXRlbShXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkRpc2FibGUgWE1MSHR0
cFJlcXVlc3QgbG9nZ2luZyIpLCBJbnNwZWN0b3JCYWNrZW5kLmRpc2FibGVNb25pdG9yaW5nWEhS
LmJpbmQoSW5zcGVjdG9yQmFja2VuZCkpOworICAgICAgICBjb250ZXh0TWVudS5hcHBlbmRJdGVt
KFdlYkluc3BlY3Rvci5VSVN0cmluZygiQ2xlYXIgQ29uc29sZSIpLCB0aGlzLnJlcXVlc3RDbGVh
ck1lc3NhZ2VzLmJpbmQodGhpcykpOworICAgICAgICBjb250ZXh0TWVudS5zaG93KGV2ZW50KTsK
ICAgICB9LAogCiAgICAgX21lc3NhZ2VzU2VsZWN0U3RhcnQ6IGZ1bmN0aW9uKGV2ZW50KQpAQCAt
NDQ0LDggKzQ1MCw2IEBAIFdlYkluc3BlY3Rvci5Db25zb2xlVmlldy5wcm90b3R5cGUgPSB7CiAg
ICAgICAgIHZhciBjbGVhckNvbnNvbGVIYW5kbGVyID0gdGhpcy5yZXF1ZXN0Q2xlYXJNZXNzYWdl
cy5iaW5kKHRoaXMpOwogICAgICAgICB2YXIgc2hvcnRjdXRMID0gc2hvcnRjdXQubWFrZURlc2Ny
aXB0b3IoImwiLCBXZWJJbnNwZWN0b3IuS2V5Ym9hcmRTaG9ydGN1dC5Nb2RpZmllcnMuQ3RybCk7
CiAgICAgICAgIHRoaXMuX3Nob3J0Y3V0c1tzaG9ydGN1dEwua2V5XSA9IGNsZWFyQ29uc29sZUhh
bmRsZXI7Ci0gICAgICAgIHRoaXMuX2NvbnRleHRNZW51ID0gbmV3IFdlYkluc3BlY3Rvci5Db250
ZXh0TWVudSgpOwotICAgICAgICB0aGlzLl9jb250ZXh0TWVudS5hcHBlbmRJdGVtKFdlYkluc3Bl
Y3Rvci5VSVN0cmluZygiQ2xlYXIgQ29uc29sZSIpLCBjbGVhckNvbnNvbGVIYW5kbGVyKTsKIAog
ICAgICAgICB2YXIgc2VjdGlvbiA9IFdlYkluc3BlY3Rvci5zaG9ydGN1dHNIZWxwLnNlY3Rpb24o
V2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJDb25zb2xlIikpOwogICAgICAgICB2YXIga2V5cyA9IFdl
Ykluc3BlY3Rvci5pc01hYygpID8gWyBzaG9ydGN1dEsubmFtZSwgc2hvcnRjdXRMLm5hbWUgXSA6
IFsgc2hvcnRjdXRMLm5hbWUgXTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250
LWVuZC9JbnNwZWN0b3JCYWNrZW5kU3R1Yi5qcyBiL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVu
ZC9JbnNwZWN0b3JCYWNrZW5kU3R1Yi5qcwppbmRleCBmNmNmMzQ0Li4wMTZkNzQ4IDEwMDY0NAot
LS0gYS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvSW5zcGVjdG9yQmFja2VuZFN0dWIuanMK
KysrIGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0luc3BlY3RvckJhY2tlbmRTdHViLmpz
CkBAIC0zMiw3ICszMiw2IEBAIGlmICghd2luZG93Lkluc3BlY3RvckJhY2tlbmQpIHsKIAogV2Vi
SW5zcGVjdG9yLkluc3BlY3RvckJhY2tlbmRTdHViID0gZnVuY3Rpb24oKQogewotICAgIHRoaXMu
X3NlYXJjaGluZ0Zvck5vZGUgPSBmYWxzZTsKICAgICB0aGlzLl9hdHRhY2hlZFdpbmRvd0hlaWdo
dCA9IDA7CiAgICAgdGhpcy5fdGltZWxpbmVFbmFibGVkID0gZmFsc2U7CiB9CkBAIC02NCwxMSAr
NjMsNiBAQCBXZWJJbnNwZWN0b3IuSW5zcGVjdG9yQmFja2VuZFN0dWIucHJvdG90eXBlID0gewog
ICAgIHsKICAgICB9LAogCi0gICAgc2VhcmNoaW5nRm9yTm9kZTogZnVuY3Rpb24oKQotICAgIHsK
LSAgICAgICAgcmV0dXJuIHRoaXMuX3NlYXJjaGluZ0Zvck5vZGU7Ci0gICAgfSwKLQogICAgIGdl
dE91dGVySFRNTDogZnVuY3Rpb24oKQogICAgIHsKICAgICB9LApAQCAtODUsMTEgKzc5LDYgQEAg
V2ViSW5zcGVjdG9yLkluc3BlY3RvckJhY2tlbmRTdHViLnByb3RvdHlwZSA9IHsKICAgICB7CiAg
ICAgfSwKIAotICAgIHRvZ2dsZU5vZGVTZWFyY2g6IGZ1bmN0aW9uKCkKLSAgICB7Ci0gICAgICAg
IHRoaXMuX3NlYXJjaGluZ0Zvck5vZGUgPSAhdGhpcy5fc2VhcmNoaW5nRm9yTm9kZTsKLSAgICB9
LAotCiAgICAgc2V0QXR0YWNoZWRXaW5kb3dIZWlnaHQ6IGZ1bmN0aW9uKGhlaWdodCkKICAgICB7
CiAgICAgfSwKQEAgLTE1Niw2ICsxNDUsMTYgQEAgV2ViSW5zcGVjdG9yLkluc3BlY3RvckJhY2tl
bmRTdHViLnByb3RvdHlwZSA9IHsKICAgICAgICAgV2ViSW5zcGVjdG9yLnNlYXJjaGluZ0Zvck5v
ZGVXYXNEaXNhYmxlZCgpOwogICAgIH0sCiAKKyAgICBlbmFibGVNb25pdG9yaW5nWEhSOiBmdW5j
dGlvbigpCisgICAgeworICAgICAgICBXZWJJbnNwZWN0b3IubW9uaXRvcmluZ1hIUldhc0VuYWJs
ZWQoKTsKKyAgICB9LAorCisgICAgZGlzYWJsZU1vbml0b3JpbmdYSFI6IGZ1bmN0aW9uKCkKKyAg
ICB7CisgICAgICAgIFdlYkluc3BlY3Rvci5tb25pdG9yaW5nWEhSV2FzRGlzYWJsZWQoKTsKKyAg
ICB9LAorCiAgICAgcmVsb2FkUGFnZTogZnVuY3Rpb24oKQogICAgIHsKICAgICB9LApkaWZmIC0t
Z2l0IGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL2luc3BlY3Rvci5qcyBiL1dlYkNvcmUv
aW5zcGVjdG9yL2Zyb250LWVuZC9pbnNwZWN0b3IuanMKaW5kZXggZTgxMDhhZi4uNTQzYmEzMiAx
MDA2NDQKLS0tIGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL2luc3BlY3Rvci5qcworKysg
Yi9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvaW5zcGVjdG9yLmpzCkBAIC0xMjk3LDYgKzEy
OTcsMTYgQEAgV2ViSW5zcGVjdG9yLnNlYXJjaGluZ0Zvck5vZGVXYXNEaXNhYmxlZCA9IGZ1bmN0
aW9uKCkKICAgICB0aGlzLnBhbmVscy5lbGVtZW50cy5zZWFyY2hpbmdGb3JOb2RlV2FzRGlzYWJs
ZWQoKTsKIH0KIAorV2ViSW5zcGVjdG9yLm1vbml0b3JpbmdYSFJXYXNFbmFibGVkID0gZnVuY3Rp
b24oKQoreworICAgIHRoaXMubW9uaXRvcmluZ1hIUkVuYWJsZWQgPSB0cnVlOworfQorCitXZWJJ
bnNwZWN0b3IubW9uaXRvcmluZ1hIUldhc0Rpc2FibGVkID0gZnVuY3Rpb24oKQoreworICAgIHRo
aXMubW9uaXRvcmluZ1hIUkVuYWJsZWQgPSBmYWxzZTsKK30KKwogV2ViSW5zcGVjdG9yLmF0dGFj
aERlYnVnZ2VyV2hlblNob3duID0gZnVuY3Rpb24oKQogewogICAgIHRoaXMucGFuZWxzLnNjcmlw
dHMuYXR0YWNoRGVidWdnZXJXaGVuU2hvd24oKTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUveG1sL1hN
TEh0dHBSZXF1ZXN0LmNwcCBiL1dlYkNvcmUveG1sL1hNTEh0dHBSZXF1ZXN0LmNwcAppbmRleCA4
MzFhZGE5Li5jMmVmNzVhIDEwMDY0NAotLS0gYS9XZWJDb3JlL3htbC9YTUxIdHRwUmVxdWVzdC5j
cHAKKysrIGIvV2ViQ29yZS94bWwvWE1MSHR0cFJlcXVlc3QuY3BwCkBAIC05MDAsNyArOTAwLDcg
QEAgdm9pZCBYTUxIdHRwUmVxdWVzdDo6ZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIpCiAKICNpZiBFTkFCTEUoSU5TUEVDVE9SKQogICAgIGlmIChJbnNwZWN0b3JDb250
cm9sbGVyKiBpbnNwZWN0b3IgPSBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCktPmluc3BlY3RvckNv
bnRyb2xsZXIoKSkKLSAgICAgICAgaW5zcGVjdG9yLT5yZXNvdXJjZVJldHJpZXZlZEJ5WE1MSHR0
cFJlcXVlc3QoaWRlbnRpZmllciwgbV9yZXNwb25zZVRleHQpOworICAgICAgICBpbnNwZWN0b3It
PnJlc291cmNlUmV0cmlldmVkQnlYTUxIdHRwUmVxdWVzdChpZGVudGlmaWVyLCBtX3Jlc3BvbnNl
VGV4dCwgbV91cmwsIG1fbGFzdFNlbmRVUkwsIG1fbGFzdFNlbmRMaW5lTnVtYmVyKTsKICNlbmRp
ZgogCiAgICAgYm9vbCBoYWRMb2FkZXIgPSBtX2xvYWRlcjsKZGlmZiAtLWdpdCBhL1dlYktpdC9j
aHJvbWl1bS9DaGFuZ2VMb2cgYi9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IDYzMDE5
N2UuLmFiMDBiZGYgMTAwNjQ0Ci0tLSBhL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIv
V2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDE4IEBACiAyMDEwLTA2LTE3ICBQ
YXZlbCBGZWxkbWFuICA8cGZlbGRtYW5AY2hyb21pdW0ub3JnPgogCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6IGJyaW5nIFhIUiBj
b25zb2xlIHJlY29yZHMgYmFjay4KKyAgICAgICAgLSBhZGRzICJFbmFibGUgWEhSIE1vbml0b3Ii
IC8gIkRpc2FibGUgWEhSIE1vbml0b3IiIGFjdGlvbnMgdG8gdGhlIGNvbnNvbGUncyBjb250ZXh0
IG1lbnUKKyAgICAgICAgLSBtYWtlIHRoZSBjaG9zZW4gb3B0aW9uIHBlcnNpc3QgaW4gdGhlIHNl
dHRpbmdzLgorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD00MDc5OQorCisgICAgICAgICogc3JjL2pzL0luc3BlY3RvckNvbnRyb2xsZXJJbXBsLmpzOgor
ICAgICAgICAoZGV2dG9vbHMuSW5zcGVjdG9yQmFja2VuZEltcGwpOgorCisyMDEwLTA2LTE3ICBQ
YXZlbCBGZWxkbWFuICA8cGZlbGRtYW5AY2hyb21pdW0ub3JnPgorCiAgICAgICAgIFVucmV2aWV3
ZWQ6IGNocm9taXVtIHRlc3RzIGZpeC4gQWRkZWQgSW5zcGVjdG9yQmFja2VuZCBkZWxlZ2F0ZXMg
Zm9yIG5ldyBpbnNwZWN0b3IgbWV0aG9kcy4KIAogICAgICAgICAqIHNyYy9qcy9JbnNwZWN0b3JD
b250cm9sbGVySW1wbC5qczoKZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1bS9zcmMvanMvSW5z
cGVjdG9yQ29udHJvbGxlckltcGwuanMgYi9XZWJLaXQvY2hyb21pdW0vc3JjL2pzL0luc3BlY3Rv
ckNvbnRyb2xsZXJJbXBsLmpzCmluZGV4IDcwNzg5NTAuLjQxZTUzNTMgMTAwNjQ0Ci0tLSBhL1dl
YktpdC9jaHJvbWl1bS9zcmMvanMvSW5zcGVjdG9yQ29udHJvbGxlckltcGwuanMKKysrIGIvV2Vi
S2l0L2Nocm9taXVtL3NyYy9qcy9JbnNwZWN0b3JDb250cm9sbGVySW1wbC5qcwpAQCAtNDUsOSAr
NDUsMTEgQEAgZGV2dG9vbHMuSW5zcGVjdG9yQmFja2VuZEltcGwgPSBmdW5jdGlvbigpCiAgICAg
dGhpcy5pbnN0YWxsSW5zcGVjdG9yQ29udHJvbGxlckRlbGVnYXRlXygiY29weU5vZGUiKTsKICAg
ICB0aGlzLmluc3RhbGxJbnNwZWN0b3JDb250cm9sbGVyRGVsZWdhdGVfKCJkZWxldGVDb29raWUi
KTsKICAgICB0aGlzLmluc3RhbGxJbnNwZWN0b3JDb250cm9sbGVyRGVsZWdhdGVfKCJkaWRFdmFs
dWF0ZUZvclRlc3RJbkZyb250ZW5kIik7CisgICAgdGhpcy5pbnN0YWxsSW5zcGVjdG9yQ29udHJv
bGxlckRlbGVnYXRlXygiZGlzYWJsZU1vbml0b3JpbmdYSFIiKTsKICAgICB0aGlzLmluc3RhbGxJ
bnNwZWN0b3JDb250cm9sbGVyRGVsZWdhdGVfKCJkaXNhYmxlUmVzb3VyY2VUcmFja2luZyIpOwog
ICAgIHRoaXMuaW5zdGFsbEluc3BlY3RvckNvbnRyb2xsZXJEZWxlZ2F0ZV8oImRpc2FibGVTZWFy
Y2hpbmdGb3JOb2RlIik7CiAgICAgdGhpcy5pbnN0YWxsSW5zcGVjdG9yQ29udHJvbGxlckRlbGVn
YXRlXygiZGlzYWJsZVRpbWVsaW5lIik7CisgICAgdGhpcy5pbnN0YWxsSW5zcGVjdG9yQ29udHJv
bGxlckRlbGVnYXRlXygiZW5hYmxlTW9uaXRvcmluZ1hIUiIpOwogICAgIHRoaXMuaW5zdGFsbElu
c3BlY3RvckNvbnRyb2xsZXJEZWxlZ2F0ZV8oImVuYWJsZVJlc291cmNlVHJhY2tpbmciKTsKICAg
ICB0aGlzLmluc3RhbGxJbnNwZWN0b3JDb250cm9sbGVyRGVsZWdhdGVfKCJlbmFibGVTZWFyY2hp
bmdGb3JOb2RlIik7CiAgICAgdGhpcy5pbnN0YWxsSW5zcGVjdG9yQ29udHJvbGxlckRlbGVnYXRl
XygiZW5hYmxlVGltZWxpbmUiKTsK
</data>
<flag name="review"
          id="45726"
          type_id="1"
          status="+"
          setter="yurys"
    />
          </attachment>
      

    </bug>

</bugzilla>