<?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>32331</bug_id>
          
          <creation_ts>2009-12-09 10:56:08 -0800</creation_ts>
          <short_desc>Web Inspector: Get rid of synchrnonous debuggerEnabled, profilerEnabled calls.</short_desc>
          <delta_ts>2010-03-03 09:25:01 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Web Inspector (Deprecated)</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Pavel Feldman">pfeldman</reporter>
          <assigned_to name="Pavel Feldman">pfeldman</assigned_to>
          <cc>bweinstein</cc>
    
    <cc>eric</cc>
    
    <cc>joepeck</cc>
    
    <cc>rik</cc>
    
    <cc>timothy</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>170053</commentid>
    <comment_count>0</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2009-12-09 10:56:08 -0800</bug_when>
    <thetext>Two reasons behind the change:

1) debuggerEnabled / profilerEnabled / resourceTracking enabled are sync methods on InspectorBackend and we don&apos;t like it for obvious reasons
2) corresponding settings really make sense only when frontend is present. Like debuggerEnabled is really not handled well in inspector contorller - all it does is sets the flag on frontend to enable debugger from within JavaScript. It would be more logical for frontend to read the setting itself and enable / disable debugger depending on the value.

Btw, in Chromium, we don&apos;t enable / disable debugger and profiler panels. They are just always enabled when frontend is up. Do you think it still makes sense for Web Inspector to have explicit control over those?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>170058</commentid>
    <comment_count>1</comment_count>
      <attachid>44547</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2009-12-09 11:04:31 -0800</bug_when>
    <thetext>Created attachment 44547
[PATCH] Proposed change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>175440</commentid>
    <comment_count>2</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-12-28 23:22:32 -0800</bug_when>
    <thetext>Ping?  Looks like this has been r+&apos;d for about 2 weeks now.  I assume folks are just busy with the holidays?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>175681</commentid>
    <comment_count>3</comment_count>
      <attachid>44547</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2009-12-29 12:15:28 -0800</bug_when>
    <thetext>Comment on attachment 44547
[PATCH] Proposed change.

Things got changed a bit, so I&apos;ll need to do some merging. Clearing the flag for now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>195397</commentid>
    <comment_count>4</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2010-03-02 22:53:02 -0800</bug_when>
    <thetext>While making this change I thought that maybe single place for storing settings should reside in backend, not the frontend, so I did not land it and refactored settings instead.

Now it is time to revisit it. Goal is still the same, no sync operations between the backend and fronend.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>195398</commentid>
    <comment_count>5</comment_count>
      <attachid>49881</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2010-03-02 22:59:23 -0800</bug_when>
    <thetext>Created attachment 49881
[PATCH] Proposed change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>195634</commentid>
    <comment_count>6</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2010-03-03 09:25:01 -0800</bug_when>
    <thetext>Committing to http://svn.webkit.org/repository/webkit/trunk ...
	M	WebCore/ChangeLog
	M	WebCore/inspector/InspectorBackend.cpp
	M	WebCore/inspector/InspectorBackend.h
	M	WebCore/inspector/InspectorBackend.idl
	M	WebCore/inspector/InspectorController.cpp
	M	WebCore/inspector/front-end/BreakpointsSidebarPane.js
	M	WebCore/inspector/front-end/ProfilesPanel.js
	M	WebCore/inspector/front-end/ScriptsPanel.js
	M	WebCore/inspector/front-end/Settings.js
	M	WebCore/inspector/front-end/inspector.js
	M	WebKit/chromium/src/js/DevTools.js
Committed r55464</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>44547</attachid>
            <date>2009-12-09 11:04:31 -0800</date>
            <delta_ts>2010-03-02 22:59:23 -0800</delta_ts>
            <desc>[PATCH] Proposed change.</desc>
            <filename>settings</filename>
            <type>text/plain</type>
            <size>18210</size>
            <attacher name="Pavel Feldman">pfeldman</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
YzkyNTc4MC4uN2U1Y2QyYiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSw0NiBAQAorMjAwOS0xMi0wOSAgUGF2ZWwgRmVsZG1h
biAgPHBmZWxkbWFuQGRoY3AtMTcyLTI4LTE3NC0yMjAuc3BiLmNvcnAuZ29vZ2xlLmNvbT4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXZWIgSW5zcGVj
dG9yOiBNb3ZlIGRlYnVnZ2VyRW5hYmxlZCwgcHJvZmlsZXJFbmFibGVkIGFuZCBvdGhlciBzZXR0
aW5ncworICAgICAgICBtYW5hZ2VtZW50IHRvIHRoZSBmcm9udC1lbmQgc2lkZS4KKworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzIzMzEKKworICAgICAg
ICAqIFdlYkNvcmUuSW5zcGVjdG9yLmV4cDoKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9y
QmFja2VuZC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JCYWNrZW5kOjplbmFibGVS
ZXNvdXJjZVRyYWNraW5nKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckJhY2tlbmQ6OmRp
c2FibGVSZXNvdXJjZVRyYWNraW5nKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckJhY2tl
bmQ6OmVuYWJsZVByb2ZpbGVyKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckJhY2tlbmQ6
OmRpc2FibGVQcm9maWxlcik6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckJhY2tlbmQu
aDoKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yQmFja2VuZC5pZGw6CisgICAgICAgICog
aW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW5z
cGVjdG9yQ29udHJvbGxlcjo6c2NyaXB0T2JqZWN0UmVhZHkpOgorICAgICAgICAoV2ViQ29yZTo6
SW5zcGVjdG9yQ29udHJvbGxlcjo6cG9wdWxhdGVTY3JpcHRPYmplY3RzKToKKyAgICAgICAgKFdl
YkNvcmU6Okluc3BlY3RvckNvbnRyb2xsZXI6OmVuYWJsZVJlc291cmNlVHJhY2tpbmcpOgorICAg
ICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ29udHJvbGxlcjo6ZGlzYWJsZVJlc291cmNlVHJhY2tp
bmcpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ29udHJvbGxlcjo6c3RhcnRVc2VySW5p
dGlhdGVkUHJvZmlsaW5nKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNvbnRyb2xsZXI6
OmVuYWJsZVByb2ZpbGVyKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNvbnRyb2xsZXI6
OmRpc2FibGVQcm9maWxlcik6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xs
ZXIuaDoKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL1Byb2ZpbGVzUGFuZWwuanM6Cisg
ICAgICAgIChXZWJJbnNwZWN0b3IuUHJvZmlsZXNQYW5lbC5wcm90b3R5cGUucHJvZmlsZXJXYXNF
bmFibGVkKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Qcm9maWxlc1BhbmVsLnByb3RvdHlwZS5w
cm9maWxlcldhc0Rpc2FibGVkKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Qcm9maWxlc1BhbmVs
LnByb3RvdHlwZS5fdXBkYXRlSW50ZXJmYWNlKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Qcm9m
aWxlc1BhbmVsLnByb3RvdHlwZS5fZW5hYmxlUHJvZmlsaW5nKToKKyAgICAgICAgKFdlYkluc3Bl
Y3Rvci5Qcm9maWxlc1BhbmVsLnByb3RvdHlwZS5fdG9nZ2xlUHJvZmlsaW5nKToKKyAgICAgICAg
KiBpbnNwZWN0b3IvZnJvbnQtZW5kL1Jlc291cmNlc1BhbmVsLmpzOgorICAgICAgICAoV2ViSW5z
cGVjdG9yLlJlc291cmNlc1BhbmVsKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5SZXNvdXJjZXNQ
YW5lbC5wcm90b3R5cGUucmVzb3VyY2VUcmFja2luZ1dhc0VuYWJsZWQpOgorICAgICAgICAoV2Vi
SW5zcGVjdG9yLlJlc291cmNlc1BhbmVsLnByb3RvdHlwZS5yZXNvdXJjZVRyYWNraW5nV2FzRGlz
YWJsZWQpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlJlc291cmNlc1BhbmVsLnByb3RvdHlwZS5y
ZXNldCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuUmVzb3VyY2VzUGFuZWwucHJvdG90eXBlLl9l
bmFibGVSZXNvdXJjZVRyYWNraW5nKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5SZXNvdXJjZXNQ
YW5lbC5wcm90b3R5cGUuX3RvZ2dsZVJlc291cmNlVHJhY2tpbmcpOgorICAgICAgICAqIGluc3Bl
Y3Rvci9mcm9udC1lbmQvU2NyaXB0c1BhbmVsLmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlNj
cmlwdHNQYW5lbC5wcm90b3R5cGUuc2hvdyk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuU2NyaXB0
c1BhbmVsLnByb3RvdHlwZS5fdG9nZ2xlRGVidWdnaW5nKToKKwogMjAwOS0xMi0wOSAgT2xpdmVy
IEh1bnQgIDxvbGl2ZXJAYXBwbGUuY29tPgogCiAgICAgICAgIEJ1aWxkIGZpeApkaWZmIC0tZ2l0
IGEvV2ViQ29yZS9XZWJDb3JlLkluc3BlY3Rvci5leHAgYi9XZWJDb3JlL1dlYkNvcmUuSW5zcGVj
dG9yLmV4cAppbmRleCAxMzdlNGQ4Li41ZWY2ZTc0IDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNv
cmUuSW5zcGVjdG9yLmV4cAorKysgYi9XZWJDb3JlL1dlYkNvcmUuSW5zcGVjdG9yLmV4cApAQCAt
Miw5ICsyLDkgQEAgX19aTjdXZWJDb3JlMTlJbnNwZWN0b3JDb250cm9sbGVyMTBzZXRTZXR0aW5n
RVJLTlNfNlN0cmluZ0VTM18KIF9fWk43V2ViQ29yZTE5SW5zcGVjdG9yQ29udHJvbGxlcjEyYXR0
YWNoV2luZG93RXYKIF9fWk43V2ViQ29yZTE5SW5zcGVjdG9yQ29udHJvbGxlcjEyZGV0YWNoV2lu
ZG93RXYKIF9fWk43V2ViQ29yZTE5SW5zcGVjdG9yQ29udHJvbGxlcjE0ZW5hYmxlRGVidWdnZXJF
dgotX19aTjdXZWJDb3JlMTlJbnNwZWN0b3JDb250cm9sbGVyMTRlbmFibGVQcm9maWxlckViYgor
X19aTjdXZWJDb3JlMTlJbnNwZWN0b3JDb250cm9sbGVyMTRlbmFibGVQcm9maWxlckViCiBfX1pO
N1dlYkNvcmUxOUluc3BlY3RvckNvbnRyb2xsZXIxNWRpc2FibGVEZWJ1Z2dlckV2Ci1fX1pON1dl
YkNvcmUxOUluc3BlY3RvckNvbnRyb2xsZXIxNWRpc2FibGVQcm9maWxlckViCitfX1pON1dlYkNv
cmUxOUluc3BlY3RvckNvbnRyb2xsZXIxNWRpc2FibGVQcm9maWxlckV2CiBfX1pON1dlYkNvcmUx
OUluc3BlY3RvckNvbnRyb2xsZXIxNnNldFdpbmRvd1Zpc2libGVFYmIKIF9fWk43V2ViQ29yZTE5
SW5zcGVjdG9yQ29udHJvbGxlcjI2c3RvcFVzZXJJbml0aWF0ZWRQcm9maWxpbmdFdgogX19aTjdX
ZWJDb3JlMTlJbnNwZWN0b3JDb250cm9sbGVyMjdzdGFydFVzZXJJbml0aWF0ZWRQcm9maWxpbmdF
UE5TXzVUaW1lcklTMF9FRQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9y
QmFja2VuZC5jcHAgYi9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JCYWNrZW5kLmNwcAppbmRl
eCBlMzNmODc0Li4zODNjZmVjIDEwMDY0NAotLS0gYS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0
b3JCYWNrZW5kLmNwcAorKysgYi9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JCYWNrZW5kLmNw
cApAQCAtMTAyLDIzICsxMDIsMTYgQEAgYm9vbCBJbnNwZWN0b3JCYWNrZW5kOjpzZWFyY2hpbmdG
b3JOb2RlKCkKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKLWJvb2wgSW5zcGVjdG9yQmFja2VuZDo6
cmVzb3VyY2VUcmFja2luZ0VuYWJsZWQoKSBjb25zdAordm9pZCBJbnNwZWN0b3JCYWNrZW5kOjpl
bmFibGVSZXNvdXJjZVRyYWNraW5nKCkKIHsKICAgICBpZiAobV9pbnNwZWN0b3JDb250cm9sbGVy
KQotICAgICAgICByZXR1cm4gbV9pbnNwZWN0b3JDb250cm9sbGVyLT5yZXNvdXJjZVRyYWNraW5n
RW5hYmxlZCgpOwotICAgIHJldHVybiBmYWxzZTsKLX0KLQotdm9pZCBJbnNwZWN0b3JCYWNrZW5k
OjplbmFibGVSZXNvdXJjZVRyYWNraW5nKGJvb2wgYWx3YXlzKQotewotICAgIGlmIChtX2luc3Bl
Y3RvckNvbnRyb2xsZXIpCi0gICAgICAgIG1faW5zcGVjdG9yQ29udHJvbGxlci0+ZW5hYmxlUmVz
b3VyY2VUcmFja2luZyhhbHdheXMpOworICAgICAgICBtX2luc3BlY3RvckNvbnRyb2xsZXItPmVu
YWJsZVJlc291cmNlVHJhY2tpbmcoKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JCYWNrZW5kOjpkaXNh
YmxlUmVzb3VyY2VUcmFja2luZyhib29sIGFsd2F5cykKK3ZvaWQgSW5zcGVjdG9yQmFja2VuZDo6
ZGlzYWJsZVJlc291cmNlVHJhY2tpbmcoKQogewogICAgIGlmIChtX2luc3BlY3RvckNvbnRyb2xs
ZXIpCi0gICAgICAgIG1faW5zcGVjdG9yQ29udHJvbGxlci0+ZGlzYWJsZVJlc291cmNlVHJhY2tp
bmcoYWx3YXlzKTsKKyAgICAgICAgbV9pbnNwZWN0b3JDb250cm9sbGVyLT5kaXNhYmxlUmVzb3Vy
Y2VUcmFja2luZygpOwogfQogCiB2b2lkIEluc3BlY3RvckJhY2tlbmQ6OnN0YXJ0VGltZWxpbmVQ
cm9maWxlcigpCkBAIC0yMDAsMjMgKzE5MywxNiBAQCB2b2lkIEluc3BlY3RvckJhY2tlbmQ6OnNl
dFBhdXNlT25FeGNlcHRpb25zKGJvb2wgcGF1c2UpCiAgICAgSmF2YVNjcmlwdERlYnVnU2VydmVy
OjpzaGFyZWQoKS5zZXRQYXVzZU9uRXhjZXB0aW9ucyhwYXVzZSk7CiB9CiAKLWJvb2wgSW5zcGVj
dG9yQmFja2VuZDo6cHJvZmlsZXJFbmFibGVkKCkKLXsKLSAgICBpZiAobV9pbnNwZWN0b3JDb250
cm9sbGVyKQotICAgICAgICByZXR1cm4gbV9pbnNwZWN0b3JDb250cm9sbGVyLT5wcm9maWxlckVu
YWJsZWQoKTsKLSAgICByZXR1cm4gZmFsc2U7Ci19Ci0KLXZvaWQgSW5zcGVjdG9yQmFja2VuZDo6
ZW5hYmxlUHJvZmlsZXIoYm9vbCBhbHdheXMpCit2b2lkIEluc3BlY3RvckJhY2tlbmQ6OmVuYWJs
ZVByb2ZpbGVyKCkKIHsKICAgICBpZiAobV9pbnNwZWN0b3JDb250cm9sbGVyKQotICAgICAgICBt
X2luc3BlY3RvckNvbnRyb2xsZXItPmVuYWJsZVByb2ZpbGVyKGFsd2F5cyk7CisgICAgICAgIG1f
aW5zcGVjdG9yQ29udHJvbGxlci0+ZW5hYmxlUHJvZmlsZXIoKTsKIH0KIAotdm9pZCBJbnNwZWN0
b3JCYWNrZW5kOjpkaXNhYmxlUHJvZmlsZXIoYm9vbCBhbHdheXMpCit2b2lkIEluc3BlY3RvckJh
Y2tlbmQ6OmRpc2FibGVQcm9maWxlcigpCiB7CiAgICAgaWYgKG1faW5zcGVjdG9yQ29udHJvbGxl
cikKLSAgICAgICAgbV9pbnNwZWN0b3JDb250cm9sbGVyLT5kaXNhYmxlUHJvZmlsZXIoYWx3YXlz
KTsKKyAgICAgICAgbV9pbnNwZWN0b3JDb250cm9sbGVyLT5kaXNhYmxlUHJvZmlsZXIoKTsKIH0K
IAogdm9pZCBJbnNwZWN0b3JCYWNrZW5kOjpzdGFydFByb2ZpbGluZygpCmRpZmYgLS1naXQgYS9X
ZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JCYWNrZW5kLmggYi9XZWJDb3JlL2luc3BlY3Rvci9J
bnNwZWN0b3JCYWNrZW5kLmgKaW5kZXggYzEzZjNmNS4uOWE3ZDY1MSAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQmFja2VuZC5oCisrKyBiL1dlYkNvcmUvaW5zcGVjdG9y
L0luc3BlY3RvckJhY2tlbmQuaApAQCAtNjQsOSArNjQsOCBAQCBwdWJsaWM6CiAgICAgdm9pZCB0
b2dnbGVOb2RlU2VhcmNoKCk7CiAgICAgYm9vbCBzZWFyY2hpbmdGb3JOb2RlKCk7CiAKLSAgICB2
b2lkIGVuYWJsZVJlc291cmNlVHJhY2tpbmcoYm9vbCBhbHdheXMpOwotICAgIHZvaWQgZGlzYWJs
ZVJlc291cmNlVHJhY2tpbmcoYm9vbCBhbHdheXMpOwotICAgIGJvb2wgcmVzb3VyY2VUcmFja2lu
Z0VuYWJsZWQoKSBjb25zdDsKKyAgICB2b2lkIGVuYWJsZVJlc291cmNlVHJhY2tpbmcoKTsKKyAg
ICB2b2lkIGRpc2FibGVSZXNvdXJjZVRyYWNraW5nKCk7CiAKICAgICB2b2lkIHN0YXJ0VGltZWxp
bmVQcm9maWxlcigpOwogICAgIHZvaWQgc3RvcFRpbWVsaW5lUHJvZmlsZXIoKTsKQEAgLTg5LDkg
Kzg4LDggQEAgcHVibGljOgogICAgIHZvaWQgc3RlcEludG9TdGF0ZW1lbnRJbkRlYnVnZ2VyKCk7
CiAgICAgdm9pZCBzdGVwT3V0T2ZGdW5jdGlvbkluRGVidWdnZXIoKTsKIAotICAgIGJvb2wgcHJv
ZmlsZXJFbmFibGVkKCk7Ci0gICAgdm9pZCBlbmFibGVQcm9maWxlcihib29sIGFsd2F5cyk7Ci0g
ICAgdm9pZCBkaXNhYmxlUHJvZmlsZXIoYm9vbCBhbHdheXMpOworICAgIHZvaWQgZW5hYmxlUHJv
ZmlsZXIoKTsKKyAgICB2b2lkIGRpc2FibGVQcm9maWxlcigpOwogCiAgICAgdm9pZCBzdGFydFBy
b2ZpbGluZygpOwogICAgIHZvaWQgc3RvcFByb2ZpbGluZygpOwpkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5zcGVjdG9yQmFja2VuZC5pZGwgYi9XZWJDb3JlL2luc3BlY3Rvci9JbnNw
ZWN0b3JCYWNrZW5kLmlkbAppbmRleCA1YzEwZmFhLi40ZTk4ODAzIDEwMDY0NAotLS0gYS9XZWJD
b3JlL2luc3BlY3Rvci9JbnNwZWN0b3JCYWNrZW5kLmlkbAorKysgYi9XZWJDb3JlL2luc3BlY3Rv
ci9JbnNwZWN0b3JCYWNrZW5kLmlkbApAQCAtNDAsOSArNDAsOCBAQCBtb2R1bGUgY29yZSB7CiAg
ICAgICAgIHZvaWQgdG9nZ2xlTm9kZVNlYXJjaCgpOwogICAgICAgICBib29sZWFuIHNlYXJjaGlu
Z0Zvck5vZGUoKTsKIAotICAgICAgICBib29sZWFuIHJlc291cmNlVHJhY2tpbmdFbmFibGVkKCk7
Ci0gICAgICAgIHZvaWQgZW5hYmxlUmVzb3VyY2VUcmFja2luZyhpbiBib29sZWFuIGFsd2F5cyk7
Ci0gICAgICAgIHZvaWQgZGlzYWJsZVJlc291cmNlVHJhY2tpbmcoaW4gYm9vbGVhbiBhbHdheXMp
OworICAgICAgICB2b2lkIGVuYWJsZVJlc291cmNlVHJhY2tpbmcoKTsKKyAgICAgICAgdm9pZCBk
aXNhYmxlUmVzb3VyY2VUcmFja2luZygpOwogCiAgICAgICAgIHZvaWQgc3RhcnRUaW1lbGluZVBy
b2ZpbGVyKCk7CiAgICAgICAgIHZvaWQgc3RvcFRpbWVsaW5lUHJvZmlsZXIoKTsKQEAgLTY1LDkg
KzY0LDggQEAgbW9kdWxlIGNvcmUgewogICAgICAgICBib29sZWFuIHBhdXNlT25FeGNlcHRpb25z
KCk7CiAgICAgICAgIHZvaWQgc2V0UGF1c2VPbkV4Y2VwdGlvbnMoaW4gYm9vbGVhbiBwYXVzZU9u
RXhjZXB0aW9ucyk7CiAKLSAgICAgICAgYm9vbGVhbiBwcm9maWxlckVuYWJsZWQoKTsKLSAgICAg
ICAgdm9pZCBlbmFibGVQcm9maWxlcihpbiBib29sZWFuIGFsd2F5cyk7Ci0gICAgICAgIHZvaWQg
ZGlzYWJsZVByb2ZpbGVyKGluIGJvb2xlYW4gYWx3YXlzKTsKKyAgICAgICAgdm9pZCBlbmFibGVQ
cm9maWxlcigpOworICAgICAgICB2b2lkIGRpc2FibGVQcm9maWxlcigpOwogCiAgICAgICAgIHZv
aWQgc3RhcnRQcm9maWxpbmcoKTsKICAgICAgICAgdm9pZCBzdG9wUHJvZmlsaW5nKCk7CmRpZmYg
LS1naXQgYS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDb250cm9sbGVyLmNwcCBiL1dlYkNv
cmUvaW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xsZXIuY3BwCmluZGV4IDJiN2RmMTUuLjJlMDEx
MDkgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xsZXIuY3Bw
CisrKyBiL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xsZXIuY3BwCkBAIC0xMTEs
OCArMTExLDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogc3RhdGljIGNvbnN0IGNoYXIqIGNvbnN0
IFVzZXJJbml0aWF0ZWRQcm9maWxlTmFtZSA9ICJvcmcud2Via2l0LnByb2ZpbGVzLnVzZXItaW5p
dGlhdGVkIjsKIHN0YXRpYyBjb25zdCBjaGFyKiBjb25zdCBDUFVQcm9maWxlVHlwZSA9ICJDUFUi
Owogc3RhdGljIGNvbnN0IGNoYXIqIGNvbnN0IHJlc291cmNlVHJhY2tpbmdFbmFibGVkU2V0dGlu
Z05hbWUgPSAicmVzb3VyY2VUcmFja2luZ0VuYWJsZWQiOwotc3RhdGljIGNvbnN0IGNoYXIqIGNv
bnN0IGRlYnVnZ2VyRW5hYmxlZFNldHRpbmdOYW1lID0gImRlYnVnZ2VyRW5hYmxlZCI7Ci1zdGF0
aWMgY29uc3QgY2hhciogY29uc3QgcHJvZmlsZXJFbmFibGVkU2V0dGluZ05hbWUgPSAicHJvZmls
ZXJFbmFibGVkIjsKIHN0YXRpYyBjb25zdCBjaGFyKiBjb25zdCBpbnNwZWN0b3JBdHRhY2hlZEhl
aWdodE5hbWUgPSAiaW5zcGVjdG9yQXR0YWNoZWRIZWlnaHQiOwogc3RhdGljIGNvbnN0IGNoYXIq
IGNvbnN0IGxhc3RBY3RpdmVQYW5lbFNldHRpbmdOYW1lID0gImxhc3RBY3RpdmVQYW5lbCI7CiAK
QEAgLTUxNywxMiArNTE1LDYgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjpzY3JpcHRPYmpl
Y3RSZWFkeSgpCiAgICAgICAgIHJldHVybjsKICAgICBzZXRGcm9udGVuZFByb3h5T2JqZWN0KG1f
c2NyaXB0U3RhdGUsIHdlYkluc3BlY3Rvck9iaiwgaW5qZWN0ZWRTY3JpcHRPYmopOwogCi0jaWYg
RU5BQkxFKEpBVkFTQ1JJUFRfREVCVUdHRVIpCi0gICAgU3RyaW5nIHByb2ZpbGVyRW5hYmxlZCA9
IHNldHRpbmcocHJvZmlsZXJFbmFibGVkU2V0dGluZ05hbWUpOwotICAgIGlmIChwcm9maWxlckVu
YWJsZWQgPT0gInRydWUiKQotICAgICAgICBlbmFibGVQcm9maWxlcigpOwotI2VuZGlmCi0KICAg
ICAvLyBNYWtlIHN1cmUgb3VyIHdpbmRvdyBpcyB2aXNpYmxlIG5vdyB0aGF0IHRoZSBwYWdlIGxv
YWRlZAogICAgIHNob3dXaW5kb3coKTsKIApAQCAtNjQ0LDYgKzYzNiw5IEBAIHZvaWQgSW5zcGVj
dG9yQ29udHJvbGxlcjo6cG9wdWxhdGVTY3JpcHRPYmplY3RzKCkKIAogICAgIG1fZG9tQWdlbnQt
PnNldERvY3VtZW50KG1faW5zcGVjdGVkUGFnZS0+bWFpbkZyYW1lKCktPmRvY3VtZW50KCkpOwog
CisgICAgaWYgKG1fcmVzb3VyY2VUcmFja2luZ0VuYWJsZWQpCisgICAgICAgIG1fZnJvbnRlbmQt
PnJlc291cmNlVHJhY2tpbmdXYXNFbmFibGVkKCk7CisKICAgICBSZXNvdXJjZXNNYXA6Oml0ZXJh
dG9yIHJlc291cmNlc0VuZCA9IG1fcmVzb3VyY2VzLmVuZCgpOwogICAgIGZvciAoUmVzb3VyY2Vz
TWFwOjppdGVyYXRvciBpdCA9IG1fcmVzb3VyY2VzLmJlZ2luKCk7IGl0ICE9IHJlc291cmNlc0Vu
ZDsgKytpdCkKICAgICAgICAgaXQtPnNlY29uZC0+Y3JlYXRlU2NyaXB0T2JqZWN0KG1fZnJvbnRl
bmQuZ2V0KCkpOwpAQCAtMTAzNywxNCArMTAzMiwxMSBAQCB2b2lkIEluc3BlY3RvckNvbnRyb2xs
ZXI6OnNjcmlwdEltcG9ydGVkKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgU3RyaW5n
JgogICAgICAgICByZXNvdXJjZS0+dXBkYXRlU2NyaXB0T2JqZWN0KG1fZnJvbnRlbmQuZ2V0KCkp
OwogfQogCi12b2lkIEluc3BlY3RvckNvbnRyb2xsZXI6OmVuYWJsZVJlc291cmNlVHJhY2tpbmco
Ym9vbCBhbHdheXMsIGJvb2wgcmVsb2FkKQordm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjplbmFi
bGVSZXNvdXJjZVRyYWNraW5nKGJvb2wgcmVsb2FkKQogewogICAgIGlmICghZW5hYmxlZCgpKQog
ICAgICAgICByZXR1cm47CiAKLSAgICBpZiAoYWx3YXlzKQotICAgICAgICBzZXRTZXR0aW5nKHJl
c291cmNlVHJhY2tpbmdFbmFibGVkU2V0dGluZ05hbWUsICJ0cnVlIik7Ci0KICAgICBpZiAobV9y
ZXNvdXJjZVRyYWNraW5nRW5hYmxlZCkKICAgICAgICAgcmV0dXJuOwogCkBAIC0xMDU3LDE0ICsx
MDQ5LDExIEBAIHZvaWQgSW5zcGVjdG9yQ29udHJvbGxlcjo6ZW5hYmxlUmVzb3VyY2VUcmFja2lu
Zyhib29sIGFsd2F5cywgYm9vbCByZWxvYWQpCiAgICAgICAgIG1faW5zcGVjdGVkUGFnZS0+bWFp
bkZyYW1lKCktPmxvYWRlcigpLT5yZWxvYWQoKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JDb250cm9s
bGVyOjpkaXNhYmxlUmVzb3VyY2VUcmFja2luZyhib29sIGFsd2F5cykKK3ZvaWQgSW5zcGVjdG9y
Q29udHJvbGxlcjo6ZGlzYWJsZVJlc291cmNlVHJhY2tpbmcoKQogewogICAgIGlmICghZW5hYmxl
ZCgpKQogICAgICAgICByZXR1cm47CiAKLSAgICBpZiAoYWx3YXlzKQotICAgICAgICBzZXRTZXR0
aW5nKHJlc291cmNlVHJhY2tpbmdFbmFibGVkU2V0dGluZ05hbWUsICJmYWxzZSIpOwotCiAgICAg
QVNTRVJUKG1faW5zcGVjdGVkUGFnZSk7CiAgICAgbV9yZXNvdXJjZVRyYWNraW5nRW5hYmxlZCA9
IGZhbHNlOwogICAgIGlmIChtX2Zyb250ZW5kKQpAQCAtMTQxMCw3ICsxMzk5LDcgQEAgdm9pZCBJ
bnNwZWN0b3JDb250cm9sbGVyOjpzdGFydFVzZXJJbml0aWF0ZWRQcm9maWxpbmcoVGltZXI8SW5z
cGVjdG9yQ29udHJvbGxlcj4KICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKCFwcm9maWxlckVu
YWJsZWQoKSkgewotICAgICAgICBlbmFibGVQcm9maWxlcihmYWxzZSwgdHJ1ZSk7CisgICAgICAg
IGVuYWJsZVByb2ZpbGVyKHRydWUpOwogICAgICAgICBKYXZhU2NyaXB0RGVidWdTZXJ2ZXI6OnNo
YXJlZCgpLnJlY29tcGlsZUFsbEpTRnVuY3Rpb25zKCk7CiAgICAgfQogCkBAIC0xNDUwLDExICsx
NDM5LDggQEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjp0b2dnbGVSZWNvcmRCdXR0b24oYm9v
bCBpc1Byb2ZpbGluZykKICAgICBtX2Zyb250ZW5kLT5zZXRSZWNvcmRpbmdQcm9maWxlKGlzUHJv
ZmlsaW5nKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjplbmFibGVQcm9maWxlcihi
b29sIGFsd2F5cywgYm9vbCBza2lwUmVjb21waWxlKQordm9pZCBJbnNwZWN0b3JDb250cm9sbGVy
OjplbmFibGVQcm9maWxlcihib29sIHNraXBSZWNvbXBpbGUpCiB7Ci0gICAgaWYgKGFsd2F5cykK
LSAgICAgICAgc2V0U2V0dGluZyhwcm9maWxlckVuYWJsZWRTZXR0aW5nTmFtZSwgInRydWUiKTsK
LQogICAgIGlmIChtX3Byb2ZpbGVyRW5hYmxlZCkKICAgICAgICAgcmV0dXJuOwogCkBAIC0xNDY3
LDExICsxNDUzLDggQEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjplbmFibGVQcm9maWxlcihi
b29sIGFsd2F5cywgYm9vbCBza2lwUmVjb21waWxlKQogICAgICAgICBtX2Zyb250ZW5kLT5wcm9m
aWxlcldhc0VuYWJsZWQoKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjpkaXNhYmxl
UHJvZmlsZXIoYm9vbCBhbHdheXMpCit2b2lkIEluc3BlY3RvckNvbnRyb2xsZXI6OmRpc2FibGVQ
cm9maWxlcigpCiB7Ci0gICAgaWYgKGFsd2F5cykKLSAgICAgICAgc2V0U2V0dGluZyhwcm9maWxl
ckVuYWJsZWRTZXR0aW5nTmFtZSwgImZhbHNlIik7Ci0KICAgICBpZiAoIW1fcHJvZmlsZXJFbmFi
bGVkKQogICAgICAgICByZXR1cm47CiAKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaW5zcGVjdG9yL0lu
c3BlY3RvckNvbnRyb2xsZXIuaCBiL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xs
ZXIuaAppbmRleCA5OGZlNjFmLi5kYWRlYWFmIDEwMDY0NAotLS0gYS9XZWJDb3JlL2luc3BlY3Rv
ci9JbnNwZWN0b3JDb250cm9sbGVyLmgKKysrIGIvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9y
Q29udHJvbGxlci5oCkBAIC0xNzQsOSArMTc0LDggQEAgcHVibGljOgogICAgIHZvaWQgcmVzb3Vy
Y2VSZXRyaWV2ZWRCeVhNTEh0dHBSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29u
c3QgU2NyaXB0U3RyaW5nJiBzb3VyY2VTdHJpbmcpOwogICAgIHZvaWQgc2NyaXB0SW1wb3J0ZWQo
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHNvdXJjZVN0cmluZyk7CiAK
LSAgICB2b2lkIGVuYWJsZVJlc291cmNlVHJhY2tpbmcoYm9vbCBhbHdheXMgPSBmYWxzZSwgYm9v
bCByZWxvYWQgPSB0cnVlKTsKLSAgICB2b2lkIGRpc2FibGVSZXNvdXJjZVRyYWNraW5nKGJvb2wg
YWx3YXlzID0gZmFsc2UpOwotICAgIGJvb2wgcmVzb3VyY2VUcmFja2luZ0VuYWJsZWQoKSBjb25z
dCB7IHJldHVybiBtX3Jlc291cmNlVHJhY2tpbmdFbmFibGVkOyB9CisgICAgdm9pZCBlbmFibGVS
ZXNvdXJjZVRyYWNraW5nKGJvb2wgcmVsb2FkID0gdHJ1ZSk7CisgICAgdm9pZCBkaXNhYmxlUmVz
b3VyY2VUcmFja2luZygpOwogCiAgICAgdm9pZCBzdGFydFRpbWVsaW5lUHJvZmlsZXIoKTsKICAg
ICB2b2lkIHN0b3BUaW1lbGluZVByb2ZpbGVyKCk7CkBAIC0yMjMsOCArMjIyLDggQEAgcHVibGlj
OgogICAgIHZvaWQgc3RhcnRVc2VySW5pdGlhdGVkUHJvZmlsaW5nKFRpbWVyPEluc3BlY3RvckNv
bnRyb2xsZXI+KiA9IDApOwogICAgIHZvaWQgc3RvcFVzZXJJbml0aWF0ZWRQcm9maWxpbmcoKTsK
IAotICAgIHZvaWQgZW5hYmxlUHJvZmlsZXIoYm9vbCBhbHdheXMgPSBmYWxzZSwgYm9vbCBza2lw
UmVjb21waWxlID0gZmFsc2UpOwotICAgIHZvaWQgZGlzYWJsZVByb2ZpbGVyKGJvb2wgYWx3YXlz
ID0gZmFsc2UpOworICAgIHZvaWQgZW5hYmxlUHJvZmlsZXIoYm9vbCBza2lwUmVjb21waWxlID0g
ZmFsc2UpOworICAgIHZvaWQgZGlzYWJsZVByb2ZpbGVyKCk7CiAgICAgYm9vbCBwcm9maWxlckVu
YWJsZWQoKSBjb25zdCB7IHJldHVybiBlbmFibGVkKCkgJiYgbV9wcm9maWxlckVuYWJsZWQ7IH0K
IAogICAgIHZvaWQgZW5hYmxlRGVidWdnZXIoKTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9Qcm9maWxlc1BhbmVsLmpzIGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQt
ZW5kL1Byb2ZpbGVzUGFuZWwuanMKaW5kZXggYjI3NmVjYi4uZjIwNDlkNCAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Byb2ZpbGVzUGFuZWwuanMKKysrIGIvV2ViQ29y
ZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Byb2ZpbGVzUGFuZWwuanMKQEAgLTExMiw2ICsxMTIsMTQg
QEAgV2ViSW5zcGVjdG9yLlByb2ZpbGVzUGFuZWwgPSBmdW5jdGlvbigpCiAgICAgdGhpcy5wcm9m
aWxlVmlld1N0YXR1c0Jhckl0ZW1zQ29udGFpbmVyLmlkID0gInByb2ZpbGUtdmlldy1zdGF0dXMt
YmFyLWl0ZW1zIjsKIAogICAgIHRoaXMuX3Byb2ZpbGVzID0gW107CisgICAgdGhpcy5fcHJvZmls
ZXJFbmFibGVkID0gZmFsc2U7CisKKyAgICBpZiAoSW5zcGVjdG9yRnJvbnRlbmRIb3N0LnNldHRp
bmcoInByb2ZpbGVyRW5hYmxlZCIpID09PSAidHJ1ZSIpIHsKKyAgICAgICAgLy8gRklYTUU6IHN5
bmMgY2FsbCBsZWFkcyB0byBlbnRlcmluZyBJbnNwZWN0b3JDb250cm9sbGVyIHdpdGggbnVsbCBm
cm9udGVuZCBvYmplY3QuCisgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CisgICAgICAg
ICAgICBJbnNwZWN0b3JCYWNrZW5kLmVuYWJsZVByb2ZpbGVyKCk7CisgICAgICAgIH0sIDApOyAg
IAorICAgIH0KICAgICB0aGlzLnJlc2V0KCk7CiB9CiAKQEAgLTE2MywxMiArMTcxLDE0IEBAIFdl
Ykluc3BlY3Rvci5Qcm9maWxlc1BhbmVsLnByb3RvdHlwZSA9IHsKIAogICAgIHByb2ZpbGVyV2Fz
RW5hYmxlZDogZnVuY3Rpb24oKQogICAgIHsKKyAgICAgICAgdGhpcy5fcHJvZmlsZXJFbmFibGVk
ID0gdHJ1ZTsKICAgICAgICAgdGhpcy5yZXNldCgpOwogICAgICAgICB0aGlzLnBvcHVsYXRlSW50
ZXJmYWNlKCk7CiAgICAgfSwKIAogICAgIHByb2ZpbGVyV2FzRGlzYWJsZWQ6IGZ1bmN0aW9uKCkK
ICAgICB7CisgICAgICAgIHRoaXMuX3Byb2ZpbGVyRW5hYmxlZCA9IGZhbHNlOwogICAgICAgICB0
aGlzLnJlc2V0KCk7CiAgICAgfSwKIApAQCAtNDAwLDcgKzQxMCw3IEBAIFdlYkluc3BlY3Rvci5Q
cm9maWxlc1BhbmVsLnByb3RvdHlwZSA9IHsKICAgICBfdXBkYXRlSW50ZXJmYWNlOiBmdW5jdGlv
bigpCiAgICAgewogICAgICAgICAvLyBGSVhNRTogUmVwbGFjZSBQcm9maWxlVHlwZS1zcGVjaWZp
YyBidXR0b24gdmlzaWJpbGl0eSBjaGFuZ2VzIGJ5IGEgc2luZ2xlIFByb2ZpbGVUeXBlLWFnbm9z
dGljICJjb21iby1idXR0b24iIHZpc2liaWxpdHkgY2hhbmdlLgotICAgICAgICBpZiAoSW5zcGVj
dG9yQmFja2VuZC5wcm9maWxlckVuYWJsZWQoKSkgeworICAgICAgICBpZiAodGhpcy5fcHJvZmls
ZXJFbmFibGVkKSB7CiAgICAgICAgICAgICB0aGlzLmVuYWJsZVRvZ2dsZUJ1dHRvbi50aXRsZSA9
IFdlYkluc3BlY3Rvci5VSVN0cmluZygiUHJvZmlsaW5nIGVuYWJsZWQuIENsaWNrIHRvIGRpc2Fi
bGUuIik7CiAgICAgICAgICAgICB0aGlzLmVuYWJsZVRvZ2dsZUJ1dHRvbi50b2dnbGVkID0gdHJ1
ZTsKICAgICAgICAgICAgIGZvciAodmFyIHR5cGVJZCBpbiB0aGlzLl9wcm9maWxlVHlwZUJ1dHRv
bnNCeUlkTWFwKQpAQCAtNDE5LDE3ICs0MjksMjAgQEAgV2ViSW5zcGVjdG9yLlByb2ZpbGVzUGFu
ZWwucHJvdG90eXBlID0gewogCiAgICAgX2VuYWJsZVByb2ZpbGluZzogZnVuY3Rpb24oKQogICAg
IHsKLSAgICAgICAgaWYgKEluc3BlY3RvckJhY2tlbmQucHJvZmlsZXJFbmFibGVkKCkpCisgICAg
ICAgIGlmICh0aGlzLl9wcm9maWxlckVuYWJsZWQpCiAgICAgICAgICAgICByZXR1cm47CiAgICAg
ICAgIHRoaXMuX3RvZ2dsZVByb2ZpbGluZyh0aGlzLnBhbmVsRW5hYmxlclZpZXcuYWx3YXlzRW5h
YmxlZCk7CiAgICAgfSwKIAogICAgIF90b2dnbGVQcm9maWxpbmc6IGZ1bmN0aW9uKG9wdGlvbmFs
QWx3YXlzKQogICAgIHsKLSAgICAgICAgaWYgKEluc3BlY3RvckJhY2tlbmQucHJvZmlsZXJFbmFi
bGVkKCkpCi0gICAgICAgICAgICBJbnNwZWN0b3JCYWNrZW5kLmRpc2FibGVQcm9maWxlcih0cnVl
KTsKKyAgICAgICAgaWYgKG9wdGlvbmFsQWx3YXlzIHx8IHRoaXMuX3Byb2ZpbGVyRW5hYmxlZCkK
KyAgICAgICAgICAgIEluc3BlY3RvckZyb250ZW5kSG9zdC5zZXRTZXR0aW5nKCJwcm9maWxlckVu
YWJsZWQiLCAhdGhpcy5fcHJvZmlsZXJFbmFibGVkKTsKKworICAgICAgICBpZiAodGhpcy5fcHJv
ZmlsZXJFbmFibGVkKQorICAgICAgICAgICAgSW5zcGVjdG9yQmFja2VuZC5kaXNhYmxlUHJvZmls
ZXIoKTsKICAgICAgICAgZWxzZQotICAgICAgICAgICAgSW5zcGVjdG9yQmFja2VuZC5lbmFibGVQ
cm9maWxlcighIW9wdGlvbmFsQWx3YXlzKTsKKyAgICAgICAgICAgIEluc3BlY3RvckJhY2tlbmQu
ZW5hYmxlUHJvZmlsZXIoKTsKICAgICB9LAogCiAgICAgX3BvcHVsYXRlUHJvZmlsZXM6IGZ1bmN0
aW9uKCkKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9SZXNvdXJjZXNQ
YW5lbC5qcyBiL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9SZXNvdXJjZXNQYW5lbC5qcwpp
bmRleCAxMjFlYmE1Li4xODI3NGQxIDEwMDY0NAotLS0gYS9XZWJDb3JlL2luc3BlY3Rvci9mcm9u
dC1lbmQvUmVzb3VyY2VzUGFuZWwuanMKKysrIGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5k
L1Jlc291cmNlc1BhbmVsLmpzCkBAIC00NCw2ICs0NCw3IEBAIFdlYkluc3BlY3Rvci5SZXNvdXJj
ZXNQYW5lbCA9IGZ1bmN0aW9uKCkKIAogICAgIHRoaXMuX2NyZWF0ZVN0YXR1c2JhckJ1dHRvbnMo
KTsKIAorICAgIHRoaXMuX3Jlc291cmNlVHJhY2tpbmdFbmFibGVkID0gZmFsc2U7CiAgICAgdGhp
cy5yZXNldCgpOwogICAgIHRoaXMuZmlsdGVyKHRoaXMuZmlsdGVyQWxsRWxlbWVudCwgZmFsc2Up
OwogICAgIHRoaXMuZ3JhcGhzVHJlZUVsZW1lbnQuY2hpbGRyZW5bMF0uc2VsZWN0KCk7CkBAIC0z
MTMsMTEgKzMxNCwxMyBAQCBXZWJJbnNwZWN0b3IuUmVzb3VyY2VzUGFuZWwucHJvdG90eXBlID0g
ewogCiAgICAgcmVzb3VyY2VUcmFja2luZ1dhc0VuYWJsZWQ6IGZ1bmN0aW9uKCkKICAgICB7Cisg
ICAgICAgIHRoaXMuX3Jlc291cmNlVHJhY2tpbmdFbmFibGVkID0gdHJ1ZTsKICAgICAgICAgdGhp
cy5yZXNldCgpOwogICAgIH0sCiAKICAgICByZXNvdXJjZVRyYWNraW5nV2FzRGlzYWJsZWQ6IGZ1
bmN0aW9uKCkKICAgICB7CisgICAgICAgIHRoaXMuX3Jlc291cmNlVHJhY2tpbmdFbmFibGVkID0g
ZmFsc2U7CiAgICAgICAgIHRoaXMucmVzZXQoKTsKICAgICB9LAogCkBAIC0zNDksNyArMzUyLDcg
QEAgV2ViSW5zcGVjdG9yLlJlc291cmNlc1BhbmVsLnByb3RvdHlwZSA9IHsKIAogICAgICAgICB0
aGlzLnN1bW1hcnlCYXIucmVzZXQoKTsKIAotICAgICAgICBpZiAoSW5zcGVjdG9yQmFja2VuZC5y
ZXNvdXJjZVRyYWNraW5nRW5hYmxlZCgpKSB7CisgICAgICAgIGlmICh0aGlzLl9yZXNvdXJjZVRy
YWNraW5nRW5hYmxlZCkgewogICAgICAgICAgICAgdGhpcy5lbmFibGVUb2dnbGVCdXR0b24udGl0
bGUgPSBXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIlJlc291cmNlIHRyYWNraW5nIGVuYWJsZWQuIENs
aWNrIHRvIGRpc2FibGUuIik7CiAgICAgICAgICAgICB0aGlzLmVuYWJsZVRvZ2dsZUJ1dHRvbi50
b2dnbGVkID0gdHJ1ZTsKICAgICAgICAgICAgIHRoaXMubGFyZ2VyUmVzb3VyY2VzQnV0dG9uLnZp
c2libGUgPSB0cnVlOwpAQCAtNjc1LDIxICs2NzgsMjQgQEAgV2ViSW5zcGVjdG9yLlJlc291cmNl
c1BhbmVsLnByb3RvdHlwZSA9IHsKIAogICAgIF9lbmFibGVSZXNvdXJjZVRyYWNraW5nOiBmdW5j
dGlvbigpCiAgICAgewotICAgICAgICBpZiAoSW5zcGVjdG9yQmFja2VuZC5yZXNvdXJjZVRyYWNr
aW5nRW5hYmxlZCgpKQorICAgICAgICBpZiAodGhpcy5fcmVzb3VyY2VUcmFja2luZ0VuYWJsZWQp
CiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIHRoaXMuX3RvZ2dsZVJlc291cmNlVHJhY2tp
bmcodGhpcy5wYW5lbEVuYWJsZXJWaWV3LmFsd2F5c0VuYWJsZWQpOwogICAgIH0sCiAKICAgICBf
dG9nZ2xlUmVzb3VyY2VUcmFja2luZzogZnVuY3Rpb24ob3B0aW9uYWxBbHdheXMpCiAgICAgewot
ICAgICAgICBpZiAoSW5zcGVjdG9yQmFja2VuZC5yZXNvdXJjZVRyYWNraW5nRW5hYmxlZCgpKSB7
CisgICAgICAgIGlmIChvcHRpb25hbEFsd2F5cyB8fCB0aGlzLl9yZXNvdXJjZVRyYWNraW5nRW5h
YmxlZCkKKyAgICAgICAgICAgIEluc3BlY3RvckZyb250ZW5kSG9zdC5zZXRTZXR0aW5nKCJyZXNv
dXJjZVRyYWNraW5nRW5hYmxlZCIsICF0aGlzLl9yZXNvdXJjZVRyYWNraW5nRW5hYmxlZCk7CisK
KyAgICAgICAgaWYgKHRoaXMuX3Jlc291cmNlVHJhY2tpbmdFbmFibGVkKSB7CiAgICAgICAgICAg
ICB0aGlzLmxhcmdlclJlc291cmNlc0J1dHRvbi52aXNpYmxlID0gZmFsc2U7CiAgICAgICAgICAg
ICB0aGlzLnNvcnRpbmdTZWxlY3RFbGVtZW50LnZpc2libGUgPSBmYWxzZTsKLSAgICAgICAgICAg
IEluc3BlY3RvckJhY2tlbmQuZGlzYWJsZVJlc291cmNlVHJhY2tpbmcodHJ1ZSk7CisgICAgICAg
ICAgICBJbnNwZWN0b3JCYWNrZW5kLmRpc2FibGVSZXNvdXJjZVRyYWNraW5nKCk7CiAgICAgICAg
IH0gZWxzZSB7CiAgICAgICAgICAgICB0aGlzLmxhcmdlclJlc291cmNlc0J1dHRvbi52aXNpYmxl
ID0gdHJ1ZTsKICAgICAgICAgICAgIHRoaXMuc29ydGluZ1NlbGVjdEVsZW1lbnQudmlzaWJsZSA9
IHRydWU7Ci0gICAgICAgICAgICBJbnNwZWN0b3JCYWNrZW5kLmVuYWJsZVJlc291cmNlVHJhY2tp
bmcoISFvcHRpb25hbEFsd2F5cyk7CisgICAgICAgICAgICBJbnNwZWN0b3JCYWNrZW5kLmVuYWJs
ZVJlc291cmNlVHJhY2tpbmcoKTsKICAgICAgICAgfQogICAgIH0sCiAKZGlmZiAtLWdpdCBhL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TY3JpcHRzUGFuZWwuanMgYi9XZWJDb3JlL2luc3Bl
Y3Rvci9mcm9udC1lbmQvU2NyaXB0c1BhbmVsLmpzCmluZGV4IGEyN2QyNDcuLmY3NzEwNTUgMTAw
NjQ0Ci0tLSBhL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TY3JpcHRzUGFuZWwuanMKKysr
IGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NjcmlwdHNQYW5lbC5qcwpAQCAtMjM2LDcg
KzIzNiw3IEBAIFdlYkluc3BlY3Rvci5TY3JpcHRzUGFuZWwucHJvdG90eXBlID0gewogICAgICAg
ICAgICAgdmlldy52aXNpYmxlID0gZmFsc2U7CiAgICAgICAgIH0KIAotICAgICAgICBpZiAodGhp
cy5fYXR0YWNoRGVidWdnZXJXaGVuU2hvd24gfHwgSW5zcGVjdG9yRnJvbnRlbmRIb3N0LnNldHRp
bmcoImRlYnVnZ2VyRW5hYmxlZCIpKSB7CisgICAgICAgIGlmICh0aGlzLl9hdHRhY2hEZWJ1Z2dl
cldoZW5TaG93biB8fCBJbnNwZWN0b3JGcm9udGVuZEhvc3Quc2V0dGluZygiZGVidWdnZXJFbmFi
bGVkIikgPT09ICJ0cnVlIikgewogICAgICAgICAgICAgSW5zcGVjdG9yQmFja2VuZC5lbmFibGVE
ZWJ1Z2dlcigpOwogICAgICAgICAgICAgZGVsZXRlIHRoaXMuX2F0dGFjaERlYnVnZ2VyV2hlblNo
b3duOwogICAgICAgICB9CkBAIC04ODUsOSArODg1LDggQEAgV2ViSW5zcGVjdG9yLlNjcmlwdHNQ
YW5lbC5wcm90b3R5cGUgPSB7CiAgICAgICAgIHRoaXMuX3dhaXRpbmdUb1BhdXNlID0gZmFsc2U7
CiAgICAgICAgIHRoaXMuX3N0ZXBwaW5nID0gZmFsc2U7CiAKLQotICAgICAgICBpZiAoYWx3YXlz
KQotICAgICAgICAgICAgSW5zcGVjdG9yRnJvbnRlbmRIb3N0LnNldHRpbmcoImRlYnVnZ2VyRW5h
YmxlZCIsICF0aGlzLl9kZWJ1Z2dlckVuYWJsZWQpOworICAgICAgICBpZiAoYWx3YXlzIHx8IHRo
aXMuX2RlYnVnZ2VyRW5hYmxlZCkKKyAgICAgICAgICAgIEluc3BlY3RvckZyb250ZW5kSG9zdC5z
ZXRTZXR0aW5nKCJkZWJ1Z2dlckVuYWJsZWQiLCAhdGhpcy5fZGVidWdnZXJFbmFibGVkKTsKIAog
ICAgICAgICBpZiAodGhpcy5fZGVidWdnZXJFbmFibGVkKQogICAgICAgICAgICAgSW5zcGVjdG9y
QmFja2VuZC5kaXNhYmxlRGVidWdnZXIoKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>49881</attachid>
            <date>2010-03-02 22:59:23 -0800</date>
            <delta_ts>2010-03-02 23:18:02 -0800</delta_ts>
            <desc>[PATCH] Proposed change.</desc>
            <filename>sync_access</filename>
            <type>text/plain</type>
            <size>10240</size>
            <attacher name="Pavel Feldman">pfeldman</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
MjRkN2NmMy4uMjgyYzNhNyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsNSArMSwzNSBAQAogMjAxMC0wMy0wMiAgUGF2ZWwgRmVsZG1h
biAgPHBmZWxkbWFuQGNocm9taXVtLm9yZz4KIAorICAgICAgICBXZWIgSW5zcGVjdG9yOiBHZXQg
cmlkIG9mIHN5bmNocm5vbm91cyBkZWJ1Z2dlckVuYWJsZWQsIHByb2ZpbGVyRW5hYmxlZCBjYWxs
cy4KKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzIz
MzEKKworICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JCYWNrZW5kLmNwcDoKKyAgICAgICAg
KiBpbnNwZWN0b3IvSW5zcGVjdG9yQmFja2VuZC5oOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNw
ZWN0b3JCYWNrZW5kLmlkbDoKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL0JyZWFrcG9p
bnRzU2lkZWJhclBhbmUuanM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuQnJlYWtwb2ludHNTaWRl
YmFyUGFuZS5wcm90b3R5cGUuYWRkQnJlYWtwb2ludCk6CisgICAgICAgIChXZWJJbnNwZWN0b3Iu
QnJlYWtwb2ludHNTaWRlYmFyUGFuZS5wcm90b3R5cGUucmVtb3ZlQnJlYWtwb2ludCk6CisgICAg
ICAgIChXZWJJbnNwZWN0b3IuQnJlYWtwb2ludHNTaWRlYmFyUGFuZS5wcm90b3R5cGUuX2JyZWFr
cG9pbnRFbmFibGVDaGFuZ2VkKToKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL1Byb2Zp
bGVzUGFuZWwuanM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuUHJvZmlsZXNQYW5lbCk6CisgICAg
ICAgIChXZWJJbnNwZWN0b3IuUHJvZmlsZXNQYW5lbC5wcm90b3R5cGUucHJvZmlsZXJXYXNFbmFi
bGVkKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Qcm9maWxlc1BhbmVsLnByb3RvdHlwZS5wcm9m
aWxlcldhc0Rpc2FibGVkKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Qcm9maWxlc1BhbmVsLnBy
b3RvdHlwZS5fdXBkYXRlSW50ZXJmYWNlKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Qcm9maWxl
c1BhbmVsLnByb3RvdHlwZS5fZW5hYmxlUHJvZmlsaW5nKToKKyAgICAgICAgKFdlYkluc3BlY3Rv
ci5Qcm9maWxlc1BhbmVsLnByb3RvdHlwZS5fdG9nZ2xlUHJvZmlsaW5nKToKKyAgICAgICAgKiBp
bnNwZWN0b3IvZnJvbnQtZW5kL1NjcmlwdHNQYW5lbC5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rv
ci5TY3JpcHRzUGFuZWwpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlNjcmlwdHNQYW5lbC5wcm90
b3R5cGUuZGVidWdnZXJXYXNFbmFibGVkKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5TY3JpcHRz
UGFuZWwucHJvdG90eXBlLmRlYnVnZ2VyV2FzRGlzYWJsZWQpOgorICAgICAgICAoV2ViSW5zcGVj
dG9yLlNjcmlwdHNQYW5lbC5wcm90b3R5cGUucmVzZXQpOgorICAgICAgICAoV2ViSW5zcGVjdG9y
LlNjcmlwdHNQYW5lbC5wcm90b3R5cGUuY2FuU2hvd1NvdXJjZUxpbmUpOgorICAgICAgICAoV2Vi
SW5zcGVjdG9yLlNjcmlwdHNQYW5lbC5wcm90b3R5cGUuX3VwZGF0ZURlYnVnZ2VyQnV0dG9ucyk6
CisgICAgICAgIChXZWJJbnNwZWN0b3IuU2NyaXB0c1BhbmVsLnByb3RvdHlwZS5fZW5hYmxlRGVi
dWdnaW5nKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5TY3JpcHRzUGFuZWwucHJvdG90eXBlLl90
b2dnbGVEZWJ1Z2dpbmcpOgorCisyMDEwLTAzLTAyICBQYXZlbCBGZWxkbWFuICA8cGZlbGRtYW5A
Y2hyb21pdW0ub3JnPgorCiAgICAgICAgIE5vdCByZXZpZXdlZDogYWRkaW5nIG1pc3NpbmcgaW1h
Z2UgZmlsZXMgdG8gV2ViS2l0LnFyYyBhbmQgZ3lwaS4KIAogICAgICAgICAqIFdlYkNvcmUuZ3lw
aToKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckJhY2tlbmQuY3BwIGIv
V2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQmFja2VuZC5jcHAKaW5kZXggOWVkOTc0MS4uNDMx
MzU0MiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQmFja2VuZC5jcHAK
KysrIGIvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQmFja2VuZC5jcHAKQEAgLTE1NSwxMiAr
MTU1LDYgQEAgdm9pZCBJbnNwZWN0b3JCYWNrZW5kOjpzdG9wVGltZWxpbmVQcm9maWxlcigpCiB9
CiAKICNpZiBFTkFCTEUoSkFWQVNDUklQVF9ERUJVR0dFUikKLWJvb2wgSW5zcGVjdG9yQmFja2Vu
ZDo6ZGVidWdnZXJFbmFibGVkKCkgY29uc3QKLXsKLSAgICBpZiAobV9pbnNwZWN0b3JDb250cm9s
bGVyKQotICAgICAgICByZXR1cm4gbV9pbnNwZWN0b3JDb250cm9sbGVyLT5kZWJ1Z2dlckVuYWJs
ZWQoKTsKLSAgICByZXR1cm4gZmFsc2U7Ci19CiAKIHZvaWQgSW5zcGVjdG9yQmFja2VuZDo6ZW5h
YmxlRGVidWdnZXIoYm9vbCBhbHdheXMpCiB7CkBAIC0yMzUsMTIgKzIyOSw2IEBAIHZvaWQgSW5z
cGVjdG9yQmFja2VuZDo6c2V0UGF1c2VPbkV4Y2VwdGlvbnNTdGF0ZShsb25nIHBhdXNlU3RhdGUp
CiAjZW5kaWYKIAogI2lmIEVOQUJMRShKQVZBU0NSSVBUX0RFQlVHR0VSKQotYm9vbCBJbnNwZWN0
b3JCYWNrZW5kOjpwcm9maWxlckVuYWJsZWQoKQotewotICAgIGlmIChtX2luc3BlY3RvckNvbnRy
b2xsZXIpCi0gICAgICAgIHJldHVybiBtX2luc3BlY3RvckNvbnRyb2xsZXItPnByb2ZpbGVyRW5h
YmxlZCgpOwotICAgIHJldHVybiBmYWxzZTsKLX0KIAogdm9pZCBJbnNwZWN0b3JCYWNrZW5kOjpl
bmFibGVQcm9maWxlcihib29sIGFsd2F5cykKIHsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaW5zcGVj
dG9yL0luc3BlY3RvckJhY2tlbmQuaCBiL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckJhY2tl
bmQuaAppbmRleCAyZjBiZTc0Li5iNmI5ODRhIDEwMDY0NAotLS0gYS9XZWJDb3JlL2luc3BlY3Rv
ci9JbnNwZWN0b3JCYWNrZW5kLmgKKysrIGIvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQmFj
a2VuZC5oCkBAIC03NCw3ICs3NCw2IEBAIHB1YmxpYzoKICAgICB2b2lkIHN0b3BUaW1lbGluZVBy
b2ZpbGVyKCk7CiAKICNpZiBFTkFCTEUoSkFWQVNDUklQVF9ERUJVR0dFUikKLSAgICBib29sIGRl
YnVnZ2VyRW5hYmxlZCgpIGNvbnN0OwogICAgIHZvaWQgZW5hYmxlRGVidWdnZXIoYm9vbCBhbHdh
eXMpOwogICAgIHZvaWQgZGlzYWJsZURlYnVnZ2VyKGJvb2wgYWx3YXlzKTsKIApAQCAtOTMsNyAr
OTIsNiBAQCBwdWJsaWM6CiAgICAgdm9pZCBzdGVwSW50b1N0YXRlbWVudEluRGVidWdnZXIoKTsK
ICAgICB2b2lkIHN0ZXBPdXRPZkZ1bmN0aW9uSW5EZWJ1Z2dlcigpOwogCi0gICAgYm9vbCBwcm9m
aWxlckVuYWJsZWQoKTsKICAgICB2b2lkIGVuYWJsZVByb2ZpbGVyKGJvb2wgYWx3YXlzKTsKICAg
ICB2b2lkIGRpc2FibGVQcm9maWxlcihib29sIGFsd2F5cyk7CiAKZGlmZiAtLWdpdCBhL1dlYkNv
cmUvaW5zcGVjdG9yL0luc3BlY3RvckJhY2tlbmQuaWRsIGIvV2ViQ29yZS9pbnNwZWN0b3IvSW5z
cGVjdG9yQmFja2VuZC5pZGwKaW5kZXggMjQwZmY3Zi4uNmEzNmQxYiAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQmFja2VuZC5pZGwKKysrIGIvV2ViQ29yZS9pbnNwZWN0
b3IvSW5zcGVjdG9yQmFja2VuZC5pZGwKQEAgLTQ5LDcgKzQ5LDYgQEAgbW9kdWxlIGNvcmUgewog
ICAgICAgICB2b2lkIHN0b3BUaW1lbGluZVByb2ZpbGVyKCk7CiAKICNpZiBkZWZpbmVkKEVOQUJM
RV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAmJiBFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUgotICAg
ICAgICBib29sZWFuIGRlYnVnZ2VyRW5hYmxlZCgpOwogICAgICAgICB2b2lkIGVuYWJsZURlYnVn
Z2VyKGluIGJvb2xlYW4gYWx3YXlzKTsKICAgICAgICAgdm9pZCBkaXNhYmxlRGVidWdnZXIoaW4g
Ym9vbGVhbiBhbHdheXMpOwogCkBAIC02OCw3ICs2Nyw2IEBAIG1vZHVsZSBjb3JlIHsKICAgICAg
ICAgbG9uZyBwYXVzZU9uRXhjZXB0aW9uc1N0YXRlKCk7CiAgICAgICAgIHZvaWQgc2V0UGF1c2VP
bkV4Y2VwdGlvbnNTdGF0ZShpbiBsb25nIHBhdXNlT25FeGNlcHRpb25zU3RhdGUpOwogCi0gICAg
ICAgIGJvb2xlYW4gcHJvZmlsZXJFbmFibGVkKCk7CiAgICAgICAgIHZvaWQgZW5hYmxlUHJvZmls
ZXIoaW4gYm9vbGVhbiBhbHdheXMpOwogICAgICAgICB2b2lkIGRpc2FibGVQcm9maWxlcihpbiBi
b29sZWFuIGFsd2F5cyk7CiAKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVu
ZC9CcmVha3BvaW50c1NpZGViYXJQYW5lLmpzIGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5k
L0JyZWFrcG9pbnRzU2lkZWJhclBhbmUuanMKaW5kZXggMGJjYTA1Yi4uNjkwZDA5MSAxMDA2NDQK
LS0tIGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0JyZWFrcG9pbnRzU2lkZWJhclBhbmUu
anMKKysrIGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0JyZWFrcG9pbnRzU2lkZWJhclBh
bmUuanMKQEAgLTY4LDExICs2OCw3IEBAIFdlYkluc3BlY3Rvci5CcmVha3BvaW50c1NpZGViYXJQ
YW5lLnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgIHRoaXMuYm9keUVsZW1lbnQuYXBwZW5kQ2hp
bGQodGhpcy5saXN0RWxlbWVudCk7CiAgICAgICAgIH0KIAotICAgICAgICBpZiAoIUluc3BlY3Rv
ckJhY2tlbmQuZGVidWdnZXJFbmFibGVkKCkgfHwgIWJyZWFrcG9pbnQuc291cmNlSUQpCi0gICAg
ICAgICAgICByZXR1cm47Ci0KLSAgICAgICAgaWYgKGJyZWFrcG9pbnQuZW5hYmxlZCkKLSAgICAg
ICAgICAgIEluc3BlY3RvckJhY2tlbmQuc2V0QnJlYWtwb2ludChicmVha3BvaW50LnNvdXJjZUlE
LCBicmVha3BvaW50LmxpbmUsIGJyZWFrcG9pbnQuZW5hYmxlZCwgYnJlYWtwb2ludC5jb25kaXRp
b24pOworICAgICAgICBJbnNwZWN0b3JCYWNrZW5kLnNldEJyZWFrcG9pbnQoYnJlYWtwb2ludC5z
b3VyY2VJRCwgYnJlYWtwb2ludC5saW5lLCBicmVha3BvaW50LmVuYWJsZWQsIGJyZWFrcG9pbnQu
Y29uZGl0aW9uKTsKICAgICB9LAogCiAgICAgX2FwcGVuZEJyZWFrcG9pbnRFbGVtZW50OiBmdW5j
dGlvbihicmVha3BvaW50KQpAQCAtMTQ1LDkgKzE0MSw2IEBAIFdlYkluc3BlY3Rvci5CcmVha3Bv
aW50c1NpZGViYXJQYW5lLnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgIHRoaXMuYm9keUVsZW1l
bnQuYXBwZW5kQ2hpbGQodGhpcy5lbXB0eUVsZW1lbnQpOwogICAgICAgICB9CiAKLSAgICAgICAg
aWYgKCFJbnNwZWN0b3JCYWNrZW5kLmRlYnVnZ2VyRW5hYmxlZCgpIHx8ICFicmVha3BvaW50LnNv
dXJjZUlEKQotICAgICAgICAgICAgcmV0dXJuOwotCiAgICAgICAgIEluc3BlY3RvckJhY2tlbmQu
cmVtb3ZlQnJlYWtwb2ludChicmVha3BvaW50LnNvdXJjZUlELCBicmVha3BvaW50LmxpbmUpOwog
ICAgIH0sCiAKQEAgLTE1NywxMCArMTUwLDYgQEAgV2ViSW5zcGVjdG9yLkJyZWFrcG9pbnRzU2lk
ZWJhclBhbmUucHJvdG90eXBlID0gewogCiAgICAgICAgIHZhciBjaGVja2JveCA9IGJyZWFrcG9p
bnQuX2JyZWFrcG9pbnRMaXN0RWxlbWVudC5maXJzdENoaWxkOwogICAgICAgICBjaGVja2JveC5j
aGVja2VkID0gYnJlYWtwb2ludC5lbmFibGVkOwotCi0gICAgICAgIGlmICghSW5zcGVjdG9yQmFj
a2VuZC5kZWJ1Z2dlckVuYWJsZWQoKSB8fCAhYnJlYWtwb2ludC5zb3VyY2VJRCkKLSAgICAgICAg
ICAgIHJldHVybjsKLQogICAgICAgICBJbnNwZWN0b3JCYWNrZW5kLnNldEJyZWFrcG9pbnQoYnJl
YWtwb2ludC5zb3VyY2VJRCwgYnJlYWtwb2ludC5saW5lLCBicmVha3BvaW50LmVuYWJsZWQsIGJy
ZWFrcG9pbnQuY29uZGl0aW9uKTsKICAgICB9LAogCmRpZmYgLS1naXQgYS9XZWJDb3JlL2luc3Bl
Y3Rvci9mcm9udC1lbmQvUHJvZmlsZXNQYW5lbC5qcyBiL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250
LWVuZC9Qcm9maWxlc1BhbmVsLmpzCmluZGV4IGRkMDQ5YTEuLmJkOTNiZWEgMTAwNjQ0Ci0tLSBh
L1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Qcm9maWxlc1BhbmVsLmpzCisrKyBiL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Qcm9maWxlc1BhbmVsLmpzCkBAIC0xMjAsNiArMTIwLDcg
QEAgV2ViSW5zcGVjdG9yLlByb2ZpbGVzUGFuZWwgPSBmdW5jdGlvbigpCiAgICAgdGhpcy5lbGVt
ZW50LmFwcGVuZENoaWxkKHRoaXMud2VsY29tZVZpZXcuZWxlbWVudCk7CiAKICAgICB0aGlzLl9w
cm9maWxlcyA9IFtdOworICAgIHRoaXMuX3Byb2ZpbGVyRW5hYmxlZCA9IGZhbHNlOwogICAgIHRo
aXMucmVzZXQoKTsKIH0KIApAQCAtMTcxLDEyICsxNzIsMTQgQEAgV2ViSW5zcGVjdG9yLlByb2Zp
bGVzUGFuZWwucHJvdG90eXBlID0gewogCiAgICAgcHJvZmlsZXJXYXNFbmFibGVkOiBmdW5jdGlv
bigpCiAgICAgeworICAgICAgICB0aGlzLl9wcm9maWxlckVuYWJsZWQgPSB0cnVlOwogICAgICAg
ICB0aGlzLnJlc2V0KCk7CiAgICAgICAgIHRoaXMucG9wdWxhdGVJbnRlcmZhY2UoKTsKICAgICB9
LAogCiAgICAgcHJvZmlsZXJXYXNEaXNhYmxlZDogZnVuY3Rpb24oKQogICAgIHsKKyAgICAgICAg
dGhpcy5fcHJvZmlsZXJFbmFibGVkID0gZmFsc2U7CiAgICAgICAgIHRoaXMucmVzZXQoKTsKICAg
ICB9LAogCkBAIC00MjksNyArNDMyLDcgQEAgV2ViSW5zcGVjdG9yLlByb2ZpbGVzUGFuZWwucHJv
dG90eXBlID0gewogICAgIF91cGRhdGVJbnRlcmZhY2U6IGZ1bmN0aW9uKCkKICAgICB7CiAgICAg
ICAgIC8vIEZJWE1FOiBSZXBsYWNlIFByb2ZpbGVUeXBlLXNwZWNpZmljIGJ1dHRvbiB2aXNpYmls
aXR5IGNoYW5nZXMgYnkgYSBzaW5nbGUgUHJvZmlsZVR5cGUtYWdub3N0aWMgImNvbWJvLWJ1dHRv
biIgdmlzaWJpbGl0eSBjaGFuZ2UuCi0gICAgICAgIGlmIChJbnNwZWN0b3JCYWNrZW5kLnByb2Zp
bGVyRW5hYmxlZCgpKSB7CisgICAgICAgIGlmICh0aGlzLl9wcm9maWxlckVuYWJsZWQpIHsKICAg
ICAgICAgICAgIHRoaXMuZW5hYmxlVG9nZ2xlQnV0dG9uLnRpdGxlID0gV2ViSW5zcGVjdG9yLlVJ
U3RyaW5nKCJQcm9maWxpbmcgZW5hYmxlZC4gQ2xpY2sgdG8gZGlzYWJsZS4iKTsKICAgICAgICAg
ICAgIHRoaXMuZW5hYmxlVG9nZ2xlQnV0dG9uLnRvZ2dsZWQgPSB0cnVlOwogICAgICAgICAgICAg
Zm9yICh2YXIgdHlwZUlkIGluIHRoaXMuX3Byb2ZpbGVUeXBlQnV0dG9uc0J5SWRNYXApCkBAIC00
NDgsMTQgKzQ1MSwxNCBAQCBXZWJJbnNwZWN0b3IuUHJvZmlsZXNQYW5lbC5wcm90b3R5cGUgPSB7
CiAKICAgICBfZW5hYmxlUHJvZmlsaW5nOiBmdW5jdGlvbigpCiAgICAgewotICAgICAgICBpZiAo
SW5zcGVjdG9yQmFja2VuZC5wcm9maWxlckVuYWJsZWQoKSkKKyAgICAgICAgaWYgKHRoaXMuX3By
b2ZpbGVyRW5hYmxlZCkKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgdGhpcy5fdG9nZ2xl
UHJvZmlsaW5nKHRoaXMucGFuZWxFbmFibGVyVmlldy5hbHdheXNFbmFibGVkKTsKICAgICB9LAog
CiAgICAgX3RvZ2dsZVByb2ZpbGluZzogZnVuY3Rpb24ob3B0aW9uYWxBbHdheXMpCiAgICAgewot
ICAgICAgICBpZiAoSW5zcGVjdG9yQmFja2VuZC5wcm9maWxlckVuYWJsZWQoKSkKKyAgICAgICAg
aWYgKHRoaXMuX3Byb2ZpbGVyRW5hYmxlZCkKICAgICAgICAgICAgIEluc3BlY3RvckJhY2tlbmQu
ZGlzYWJsZVByb2ZpbGVyKHRydWUpOwogICAgICAgICBlbHNlCiAgICAgICAgICAgICBJbnNwZWN0
b3JCYWNrZW5kLmVuYWJsZVByb2ZpbGVyKCEhb3B0aW9uYWxBbHdheXMpOwpkaWZmIC0tZ2l0IGEv
V2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NjcmlwdHNQYW5lbC5qcyBiL1dlYkNvcmUvaW5z
cGVjdG9yL2Zyb250LWVuZC9TY3JpcHRzUGFuZWwuanMKaW5kZXggZTIzMzZlZS4uNGFlMWQzYyAx
MDA2NDQKLS0tIGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NjcmlwdHNQYW5lbC5qcwor
KysgYi9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0c1BhbmVsLmpzCkBAIC0xOTUs
NiArMTk1LDcgQEAgV2ViSW5zcGVjdG9yLlNjcmlwdHNQYW5lbCA9IGZ1bmN0aW9uKCkKICAgICBz
aG9ydGN1dCA9IFdlYkluc3BlY3Rvci5LZXlib2FyZFNob3J0Y3V0Lm1ha2VLZXkoV2ViSW5zcGVj
dG9yLktleWJvYXJkU2hvcnRjdXQuS2V5Q29kZXMuU2VtaWNvbG9uLCBXZWJJbnNwZWN0b3IuS2V5
Ym9hcmRTaG9ydGN1dC5Nb2RpZmllcnMuU2hpZnQsIHBsYXRmb3JtU3BlY2lmaWNNb2RpZmllcik7
CiAgICAgdGhpcy5fc2hvcnRjdXRzW3Nob3J0Y3V0XSA9IGhhbmRsZXI7CiAKKyAgICB0aGlzLl9k
ZWJ1Z2dlckVuYWJsZWQgPSBmYWxzZTsKICAgICB0aGlzLnJlc2V0KCk7CiB9CiAKQEAgLTQxOCwx
MSArNDE5LDEzIEBAIFdlYkluc3BlY3Rvci5TY3JpcHRzUGFuZWwucHJvdG90eXBlID0gewogCiAg
ICAgZGVidWdnZXJXYXNFbmFibGVkOiBmdW5jdGlvbigpCiAgICAgeworICAgICAgICB0aGlzLl9k
ZWJ1Z2dlckVuYWJsZWQgPSB0cnVlOwogICAgICAgICB0aGlzLnJlc2V0KCk7CiAgICAgfSwKIAog
ICAgIGRlYnVnZ2VyV2FzRGlzYWJsZWQ6IGZ1bmN0aW9uKCkKICAgICB7CisgICAgICAgIHRoaXMu
X2RlYnVnZ2VyRW5hYmxlZCA9IGZhbHNlOwogICAgICAgICB0aGlzLnJlc2V0KCk7CiAgICAgfSwK
IApAQCAtNDMzLDcgKzQzNiw3IEBAIFdlYkluc3BlY3Rvci5TY3JpcHRzUGFuZWwucHJvdG90eXBl
ID0gewogICAgICAgICBkZWxldGUgdGhpcy5jdXJyZW50UXVlcnk7CiAgICAgICAgIHRoaXMuc2Vh
cmNoQ2FuY2VsZWQoKTsKIAotICAgICAgICBpZiAoIUluc3BlY3RvckJhY2tlbmQuZGVidWdnZXJF
bmFibGVkKCkpIHsKKyAgICAgICAgaWYgKCF0aGlzLl9kZWJ1Z2dlckVuYWJsZWQpIHsKICAgICAg
ICAgICAgIHRoaXMuX3BhdXNlZCA9IGZhbHNlOwogICAgICAgICAgICAgdGhpcy5fd2FpdGluZ1Rv
UGF1c2UgPSBmYWxzZTsKICAgICAgICAgICAgIHRoaXMuX3N0ZXBwaW5nID0gZmFsc2U7CkBAIC00
OTEsNyArNDk0LDcgQEAgV2ViSW5zcGVjdG9yLlNjcmlwdHNQYW5lbC5wcm90b3R5cGUgPSB7CiAK
ICAgICBjYW5TaG93U291cmNlTGluZTogZnVuY3Rpb24odXJsLCBsaW5lKQogICAgIHsKLSAgICAg
ICAgaWYgKCFJbnNwZWN0b3JCYWNrZW5kLmRlYnVnZ2VyRW5hYmxlZCgpKQorICAgICAgICBpZiAo
IXRoaXMuX2RlYnVnZ2VyRW5hYmxlZCkKICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAg
ICAgcmV0dXJuICEhdGhpcy5fc2NyaXB0T3JSZXNvdXJjZUZvclVSTEFuZExpbmUodXJsLCBsaW5l
KTsKICAgICB9LApAQCAtNzk3LDcgKzgwMCw3IEBAIFdlYkluc3BlY3Rvci5TY3JpcHRzUGFuZWwu
cHJvdG90eXBlID0gewogCiAgICAgX3VwZGF0ZURlYnVnZ2VyQnV0dG9uczogZnVuY3Rpb24oKQog
ICAgIHsKLSAgICAgICAgaWYgKEluc3BlY3RvckJhY2tlbmQuZGVidWdnZXJFbmFibGVkKCkpIHsK
KyAgICAgICAgaWYgKHRoaXMuX2RlYnVnZ2VyRW5hYmxlZCkgewogICAgICAgICAgICAgdGhpcy5l
bmFibGVUb2dnbGVCdXR0b24udGl0bGUgPSBXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkRlYnVnZ2lu
ZyBlbmFibGVkLiBDbGljayB0byBkaXNhYmxlLiIpOwogICAgICAgICAgICAgdGhpcy5lbmFibGVU
b2dnbGVCdXR0b24udG9nZ2xlZCA9IHRydWU7CiAgICAgICAgICAgICB0aGlzLnBhdXNlT25FeGNl
cHRpb25CdXR0b24udmlzaWJsZSA9IHRydWU7CkBAIC04NzYsNyArODc5LDcgQEAgV2ViSW5zcGVj
dG9yLlNjcmlwdHNQYW5lbC5wcm90b3R5cGUgPSB7CiAKICAgICBfZW5hYmxlRGVidWdnaW5nOiBm
dW5jdGlvbigpCiAgICAgewotICAgICAgICBpZiAoSW5zcGVjdG9yQmFja2VuZC5kZWJ1Z2dlckVu
YWJsZWQoKSkKKyAgICAgICAgaWYgKHRoaXMuX2RlYnVnZ2VyRW5hYmxlZCkKICAgICAgICAgICAg
IHJldHVybjsKICAgICAgICAgdGhpcy5fdG9nZ2xlRGVidWdnaW5nKHRoaXMucGFuZWxFbmFibGVy
Vmlldy5hbHdheXNFbmFibGVkKTsKICAgICB9LApAQCAtODg3LDcgKzg5MCw3IEBAIFdlYkluc3Bl
Y3Rvci5TY3JpcHRzUGFuZWwucHJvdG90eXBlID0gewogICAgICAgICB0aGlzLl93YWl0aW5nVG9Q
YXVzZSA9IGZhbHNlOwogICAgICAgICB0aGlzLl9zdGVwcGluZyA9IGZhbHNlOwogCi0gICAgICAg
IGlmIChJbnNwZWN0b3JCYWNrZW5kLmRlYnVnZ2VyRW5hYmxlZCgpKQorICAgICAgICBpZiAodGhp
cy5fZGVidWdnZXJFbmFibGVkKQogICAgICAgICAgICAgSW5zcGVjdG9yQmFja2VuZC5kaXNhYmxl
RGVidWdnZXIodHJ1ZSk7CiAgICAgICAgIGVsc2UKICAgICAgICAgICAgIEluc3BlY3RvckJhY2tl
bmQuZW5hYmxlRGVidWdnZXIoISFvcHRpb25hbEFsd2F5cyk7Cg==
</data>
<flag name="review"
          id="32868"
          type_id="1"
          status="+"
          setter="timothy"
    />
          </attachment>
      

    </bug>

</bugzilla>