<?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>84362</bug_id>
          
          <creation_ts>2012-04-19 11:14:27 -0700</creation_ts>
          <short_desc>Web Inspector: replace @type annotation with @return annotation for getters</short_desc>
          <delta_ts>2012-04-20 02:15:30 -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>0</everconfirmed>
          <reporter name="Pavel Feldman">pfeldman</reporter>
          <assigned_to name="Pavel Feldman">pfeldman</assigned_to>
          <cc>apavlov</cc>
    
    <cc>bweinstein</cc>
    
    <cc>joepeck</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>rik</cc>
    
    <cc>timothy</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>605712</commentid>
    <comment_count>0</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2012-04-19 11:14:27 -0700</bug_when>
    <thetext>Otherwise, compiler does not check for errors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>605722</commentid>
    <comment_count>1</comment_count>
      <attachid>137930</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2012-04-19 11:18:56 -0700</bug_when>
    <thetext>Created attachment 137930
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>605723</commentid>
    <comment_count>2</comment_count>
      <attachid>137931</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2012-04-19 11:19:53 -0700</bug_when>
    <thetext>Created attachment 137931
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>605728</commentid>
    <comment_count>3</comment_count>
      <attachid>137931</attachid>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2012-04-19 11:23:25 -0700</bug_when>
    <thetext>Comment on attachment 137931
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=137931&amp;action=review

&gt; Source/WebCore/inspector/front-end/TabbedPane.js:497
&gt; +    /** @type {number} */ this._measuredWidth;

Can you initialize the fields with appropriate values?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>606454</commentid>
    <comment_count>4</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2012-04-20 02:15:30 -0700</bug_when>
    <thetext>Committed r114729: &lt;http://trac.webkit.org/changeset/114729&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>137930</attachid>
            <date>2012-04-19 11:18:56 -0700</date>
            <delta_ts>2012-04-19 11:19:46 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-84362-20120419221854.patch</filename>
            <type>text/plain</type>
            <size>46663</size>
            <attacher name="Pavel Feldman">pfeldman</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE0NjQxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzg2N2UxOTE4MWZiMDIz
Zjk5ZTk3MDhmNzljNjBjMjM5MDg5NDE0Yi4uNThiOWNiNTZmMzM1MmNkMzExYzYzNTI5YTY0NmNm
NTIzMzJmMzExNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDgxIEBACisyMDEyLTA0LTE5ICBQYXZl
bCBGZWxkbWFuICA8cGZlbGRtYW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFdlYiBJbnNwZWN0
b3I6IHJlcGxhY2UgQHR5cGUgYW5ub3RhdGlvbiB3aXRoIEByZXR1cm4gYW5ub3RhdGlvbiBmb3Ig
Z2V0dGVycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
ODQzNjIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBP
dGhlcndpc2UsIGNvbXBpbGVyIGRvZXMgbm90IGNoZWNrIGZvciBlcnJvcnMuCisKKyAgICAgICAg
KiBpbnNwZWN0b3IvZnJvbnQtZW5kL0FkdmFuY2VkU2VhcmNoQ29udHJvbGxlci5qczoKKyAgICAg
ICAgKFdlYkluc3BlY3Rvci5TZWFyY2hWaWV3LnByb3RvdHlwZS5nZXQgc2VhcmNoQ29uZmlnKToK
KyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL0JyZWFrcG9pbnRNYW5hZ2VyLmpzOgorICAg
ICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvTmV0d29ya1JlcXVlc3QuanM6CisgICAgICAgIChX
ZWJJbnNwZWN0b3IuTmV0d29ya1JlcXVlc3QucHJvdG90eXBlLnJlcXVlc3RDb250ZW50KToKKyAg
ICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL1Jlc291cmNlVHJlZU1vZGVsLmpzOgorICAgICAg
ICAoV2ViSW5zcGVjdG9yLlJlc291cmNlVHJlZUZyYW1lKToKKyAgICAgICAgKFdlYkluc3BlY3Rv
ci5SZXNvdXJjZVRyZWVGcmFtZS5wcm90b3R5cGUuX25hdmlnYXRlKToKKyAgICAgICAgKiBpbnNw
ZWN0b3IvZnJvbnQtZW5kL1NjcmlwdHNOYXZpZ2F0b3IuanM6CisgICAgICAgICogaW5zcGVjdG9y
L2Zyb250LWVuZC9TZXR0aW5ncy5qczoKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL1Nu
aXBwZXRzTW9kZWwuanM6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9TcGxpdFZpZXcu
anM6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9UYWJiZWRFZGl0b3JDb250YWluZXIu
anM6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9UYWJiZWRQYW5lLmpzOgorICAgICAg
ICAoV2ViSW5zcGVjdG9yLlRhYmJlZFBhbmVUYWIpOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9u
dC1lbmQvVGV4dEVkaXRvck1vZGVsLmpzOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQv
VGltZWxpbmVQcmVzZW50YXRpb25Nb2RlbC5qczoKKworMjAxMi0wNC0xOSAgUGF2ZWwgRmVsZG1h
biAgPHBmZWxkbWFuQGNocm9taXVtLm9yZz4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiBtYWtl
IFNjcmlwdE5hdmlnYXRvckNvbnRyb2xsZXIgdXNlIHZpZXdzIG9ubHksIHJlbmFtZSB0byBOYXZp
Z2F0b3JPdmVybGF5Q29udHJvbGxlci4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTg0MzUyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgVGhpcyBjaGFuZ2UgbWFrZXMgbmF2aWdhdG9yIGNvbnRyb2xsZXIgdXNl
IHZpZXcgaW50ZXJmYWNlcyBvbmx5LiBGb2N1cyBtYWNoaW5lcnkgaGFzIGJlZW4gcmVmYWN0b3Jl
ZCBpbiBvcmRlcgorICAgICAgICB0byBtYWtlIGl0IHBvc3NpYmxlOiBub3cgYWxsIHZpZXcgYW5j
ZXN0b3JzIGNhbiBlaXRoZXIgb3ZlcnJpZGUgImZvY3VzIiBvciAiZGVmYXVsdEZvY3VzZWRFbGVt
ZW50IiBtZXRob2QKKyAgICAgICAgd2l0aCBsYXR0ZXIgbWV0aG9kIGJlaW5nIHByZWZlcnJlZC4K
KworICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvRWxlbWVudHNQYW5lbC5qczoKKyAgICAg
ICAgKFdlYkluc3BlY3Rvci5FbGVtZW50c1BhbmVsLnByb3RvdHlwZS5kZWZhdWx0Rm9jdXNlZEVs
ZW1lbnQpOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvRXh0ZW5zaW9uUGFuZWwuanM6
CisgICAgICAgIChXZWJJbnNwZWN0b3IuRXh0ZW5zaW9uUGFuZWwucHJvdG90eXBlLmRlZmF1bHRG
b2N1c2VkRWxlbWVudCk6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9QYW5lbC5qczoK
KyAgICAgICAgKFdlYkluc3BlY3Rvci5QYW5lbC5wcm90b3R5cGUud2FzU2hvd24pOgorICAgICAg
ICAoV2ViSW5zcGVjdG9yLlBhbmVsLnByb3RvdHlwZS5kZWZhdWx0Rm9jdXNlZEVsZW1lbnQpOgor
ICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0c05hdmlnYXRvci5qczoKKyAgICAg
ICAgKFdlYkluc3BlY3Rvci5TY3JpcHRzTmF2aWdhdG9yKToKKyAgICAgICAgKFdlYkluc3BlY3Rv
ci5OYXZpZ2F0b3JPdmVybGF5Q29udHJvbGxlci5wcm90b3R5cGUuX2hpZGVQaW5uZWROYXZpZ2F0
b3IpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLk5hdmlnYXRvck92ZXJsYXlDb250cm9sbGVyLnBy
b3RvdHlwZS5zZXQgX3Bpbk5hdmlnYXRvcik6CisgICAgICAgIChXZWJJbnNwZWN0b3IuTmF2aWdh
dG9yT3ZlcmxheUNvbnRyb2xsZXIucHJvdG90eXBlLnNldCBzaG93TmF2aWdhdG9yT3ZlcmxheSk6
CisgICAgICAgIChXZWJJbnNwZWN0b3IuTmF2aWdhdG9yT3ZlcmxheUNvbnRyb2xsZXIucHJvdG90
eXBlLmhpZGVOYXZpZ2F0b3JPdmVybGF5KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5OYXZpZ2F0
b3JPdmVybGF5Q29udHJvbGxlci5wcm90b3R5cGUuX25hdmlnYXRvck92ZXJsYXlXYXNTaG93bik6
CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9TY3JpcHRzUGFuZWwuanM6CisgICAgICAg
IChXZWJJbnNwZWN0b3IuU2NyaXB0c1BhbmVsLnByb3RvdHlwZS5kZWZhdWx0Rm9jdXNlZEVsZW1l
bnQpOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvU2lkZWJhck92ZXJsYXkuanM6Cisg
ICAgICAgIChXZWJJbnNwZWN0b3IuU2lkZWJhck92ZXJsYXkucHJvdG90eXBlLnNob3cpOgorICAg
ICAgICAoV2ViSW5zcGVjdG9yLlNpZGViYXJPdmVybGF5LnByb3RvdHlwZS5oaWRlKToKKyAgICAg
ICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL1NvdXJjZUZyYW1lLmpzOgorICAgICAgICAoV2ViSW5z
cGVjdG9yLlNvdXJjZUZyYW1lLnByb3RvdHlwZS5kZWZhdWx0Rm9jdXNlZEVsZW1lbnQpOgorICAg
ICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvU3R5bGVzUGFuZWwuanM6CisgICAgICAgIChXZWJJ
bnNwZWN0b3IuU3R5bGVzUGFuZWwpOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvVGFi
YmVkRWRpdG9yQ29udGFpbmVyLmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlRhYmJlZEVkaXRv
ckNvbnRhaW5lci5wcm90b3R5cGUuZ2V0IHZpZXcpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlRh
YmJlZEVkaXRvckNvbnRhaW5lci5wcm90b3R5cGUuZ2V0IHZpc2libGVWaWV3KToKKyAgICAgICAg
KiBpbnNwZWN0b3IvZnJvbnQtZW5kL1RhYmJlZFBhbmUuanM6CisgICAgICAgIChXZWJJbnNwZWN0
b3IuVGFiYmVkUGFuZSk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuVGFiYmVkUGFuZS5wcm90b3R5
cGUuZGVmYXVsdEZvY3VzZWRFbGVtZW50KToKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5k
L1RleHRWaWV3ZXIuanM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuVGV4dFZpZXdlci5wcm90b3R5
cGUuZGVmYXVsdEZvY3VzZWRFbGVtZW50KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UZXh0RWRp
dG9yTWFpblBhbmVsLnByb3RvdHlwZS5kZWZhdWx0Rm9jdXNlZEVsZW1lbnQpOgorICAgICAgICAq
IGluc3BlY3Rvci9mcm9udC1lbmQvVGltZWxpbmVQYW5lbC5qczoKKyAgICAgICAgKFdlYkluc3Bl
Y3Rvci5UaW1lbGluZVBhbmVsLnByb3RvdHlwZS5kZWZhdWx0Rm9jdXNlZEVsZW1lbnQpOgorICAg
ICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvVmlldy5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rv
ci5WaWV3LnByb3RvdHlwZS5fY29sbGVjdFZpZXdIaWVyYXJjaHkpOgorICAgICAgICAoV2ViSW5z
cGVjdG9yLlZpZXcucHJvdG90eXBlLmRlZmF1bHRGb2N1c2VkRWxlbWVudCk6CisgICAgICAgIChX
ZWJJbnNwZWN0b3IuVmlldy5wcm90b3R5cGUuc2V0RGVmYXVsdEZvY3VzZWRFbGVtZW50KToKKyAg
ICAgICAgKFdlYkluc3BlY3Rvci5WaWV3LnByb3RvdHlwZS5mb2N1cyk6CisKIDIwMTItMDQtMTkg
IE1hcmsgUGlsZ3JpbSAgPHBpbGdyaW1AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFtDaHJvbWl1
bV0gQ2FsbCBtaW1lUmVnaXN0cnkgZGlyZWN0bHkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9mcm9udC1lbmQvQWR2YW5jZWRTZWFyY2hDb250cm9sbGVyLmpzIGIvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9BZHZhbmNlZFNlYXJjaENvbnRyb2xsZXIuanMK
aW5kZXggZDg0NjQxM2NlOTM2MzUwYWQ4ODA3NTRmZThkYWQxYzUwZWU3YzE4Yy4uNjFiMWIzYTgw
ZmQwZjA2YmY5YTNhODNjNzllMWViYTUwMDU5YWM0ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9BZHZhbmNlZFNlYXJjaENvbnRyb2xsZXIuanMKKysrIGIv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9BZHZhbmNlZFNlYXJjaENvbnRyb2xs
ZXIuanMKQEAgLTIyOCw3ICsyMjgsNyBAQCBXZWJJbnNwZWN0b3IuU2VhcmNoVmlldy5tYXhRdWVy
aWVzQ291bnQgPSAyMDsKIAogV2ViSW5zcGVjdG9yLlNlYXJjaFZpZXcucHJvdG90eXBlID0gewog
ICAgIC8qKgotICAgICAqIEB0eXBlIHtBcnJheS48RWxlbWVudD59CisgICAgICogQHJldHVybiB7
QXJyYXkuPEVsZW1lbnQ+fQogICAgICAqLwogICAgIGdldCBzdGF0dXNCYXJJdGVtcygpCiAgICAg
ewpAQCAtMjM2LDcgKzIzNiw3IEBAIFdlYkluc3BlY3Rvci5TZWFyY2hWaWV3LnByb3RvdHlwZSA9
IHsKICAgICB9LAogCiAgICAgLyoqCi0gICAgICogQHR5cGUge0VsZW1lbnR9CisgICAgICogQHJl
dHVybiB7RWxlbWVudH0KICAgICAgKi8KICAgICBnZXQgY291bnRlckVsZW1lbnQoKQogICAgIHsK
QEAgLTI0NCwxNSArMjQ0LDExIEBAIFdlYkluc3BlY3Rvci5TZWFyY2hWaWV3LnByb3RvdHlwZSA9
IHsKICAgICB9LAogCiAgICAgLyoqCi0gICAgICogQHR5cGUge1dlYkluc3BlY3Rvci5TZWFyY2hD
b25maWd9CisgICAgICogQHJldHVybiB7V2ViSW5zcGVjdG9yLlNlYXJjaENvbmZpZ30KICAgICAg
Ki8KICAgICBnZXQgc2VhcmNoQ29uZmlnKCkKICAgICB7Ci0gICAgICAgIHZhciBzZWFyY2hDb25m
aWcgPSB7fTsKLSAgICAgICAgc2VhcmNoQ29uZmlnLnF1ZXJ5ID0gdGhpcy5fc2VhcmNoLnZhbHVl
OwotICAgICAgICBzZWFyY2hDb25maWcuaWdub3JlQ2FzZSA9IHRoaXMuX2lnbm9yZUNhc2VDaGVj
a2JveC5jaGVja2VkOwotICAgICAgICBzZWFyY2hDb25maWcuaXNSZWdleCA9IHRoaXMuX3JlZ2V4
Q2hlY2tib3guY2hlY2tlZDsKLSAgICAgICAgcmV0dXJuIHNlYXJjaENvbmZpZzsKKyAgICAgICAg
cmV0dXJuIG5ldyBXZWJJbnNwZWN0b3IuU2VhcmNoQ29uZmlnKHRoaXMuX3NlYXJjaC52YWx1ZSwg
dGhpcy5faWdub3JlQ2FzZUNoZWNrYm94LmNoZWNrZWQsIHRoaXMuX3JlZ2V4Q2hlY2tib3guY2hl
Y2tlZCk7CiAgICAgfSwKICAgICAKICAgICAvKioKQEAgLTQ2Nyw3ICs0NjMsNyBAQCBXZWJJbnNw
ZWN0b3IuU2VhcmNoUmVzdWx0c1BhbmUgPSBmdW5jdGlvbihzZWFyY2hDb25maWcpCiAKIFdlYklu
c3BlY3Rvci5TZWFyY2hSZXN1bHRzUGFuZS5wcm90b3R5cGUgPSB7CiAgICAgLyoqCi0gICAgICog
QHR5cGUge1dlYkluc3BlY3Rvci5TZWFyY2hDb25maWd9CisgICAgICogQHJldHVybiB7V2ViSW5z
cGVjdG9yLlNlYXJjaENvbmZpZ30KICAgICAgKi8KICAgICBnZXQgc2VhcmNoQ29uZmlnKCkKICAg
ICB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0JyZWFr
cG9pbnRNYW5hZ2VyLmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9CcmVh
a3BvaW50TWFuYWdlci5qcwppbmRleCBlNzMwMWY3NGY4ZDVjZWVhNjdmNDVlNTI2N2NmODk0MjA0
YWQ1NmFkLi5jMmUxMGMyNGY5NjA4MGZjOTQwMDQ5ZGQ1NjhlMmVmMDllMTVlNTlmIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0JyZWFrcG9pbnRNYW5hZ2Vy
LmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvQnJlYWtwb2ludE1h
bmFnZXIuanMKQEAgLTQxMyw3ICs0MTMsNyBAQCBXZWJJbnNwZWN0b3IuQnJlYWtwb2ludC5wcm90
b3R5cGUgPSB7CiAgICAgfSwKIAogICAgIC8qKgotICAgICAqIEB0eXBlIHtXZWJJbnNwZWN0b3Iu
VUlCcmVha3BvaW50fQorICAgICAqIEByZXR1cm4ge1dlYkluc3BlY3Rvci5VSUJyZWFrcG9pbnR9
CiAgICAgICovCiAgICAgZ2V0IHVpQnJlYWtwb2ludCgpCiAgICAgewpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9FbGVtZW50c1BhbmVsLmpzIGIvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9FbGVtZW50c1BhbmVsLmpzCmluZGV4IDU4YTE1
YTdlM2QwOTVmNWJlMmRjZWU2YWJlZTAzNmNjNmJiOGQ4NmUuLjFhMzY2OTc0YjI2ZjExNjZiYWFi
MjI5YjA0MTk4NTYxNTMyMTFkNGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9mcm9udC1lbmQvRWxlbWVudHNQYW5lbC5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvZnJvbnQtZW5kL0VsZW1lbnRzUGFuZWwuanMKQEAgLTExNSw3ICsxMTUsNyBAQCBXZWJJbnNw
ZWN0b3IuRWxlbWVudHNQYW5lbC5wcm90b3R5cGUgPSB7CiAgICAgICAgIHJldHVybiBbdGhpcy5j
cnVtYnNFbGVtZW50XTsKICAgICB9LAogCi0gICAgZ2V0IGRlZmF1bHRGb2N1c2VkRWxlbWVudCgp
CisgICAgZGVmYXVsdEZvY3VzZWRFbGVtZW50OiBmdW5jdGlvbigpCiAgICAgewogICAgICAgICBy
ZXR1cm4gdGhpcy50cmVlT3V0bGluZS5lbGVtZW50OwogICAgIH0sCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0V4dGVuc2lvblBhbmVsLmpzIGIvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9FeHRlbnNpb25QYW5lbC5qcwppbmRleCAwZGZk
OTNmYjhkZmY2ZTY0YTdjZmRkZWY0NDY4ZTNjNWIzOWU1YTkwLi45NDVjODY1MjZjYzQ5Mjc0ZjU2
ODgzMjRjMzhlZGM1ZjI0NWRhZmQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvZnJvbnQtZW5kL0V4dGVuc2lvblBhbmVsLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9mcm9udC1lbmQvRXh0ZW5zaW9uUGFuZWwuanMKQEAgLTEyNiw3ICsxMjYsNyBAQCBXZWJJ
bnNwZWN0b3IuRXh0ZW5zaW9uUGFuZWwucHJvdG90eXBlID0gewogICAgICAgICByZXR1cm4gdGhp
cy5fdG9vbGJhckl0ZW1MYWJlbDsKICAgICB9LAogCi0gICAgZ2V0IGRlZmF1bHRGb2N1c2VkRWxl
bWVudCgpCisgICAgZGVmYXVsdEZvY3VzZWRFbGVtZW50OiBmdW5jdGlvbigpCiAgICAgewogICAg
ICAgICByZXR1cm4gdGhpcy5zaWRlYmFyVHJlZUVsZW1lbnQgfHwgdGhpcy5lbGVtZW50OwogICAg
IH0sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL05ldHdv
cmtSZXF1ZXN0LmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9OZXR3b3Jr
UmVxdWVzdC5qcwppbmRleCBjOTcxYjJiZmM1MTQ5NTI0ZTZlNWM1MTAwMzRhZmU0NzNiNzAwM2I0
Li45NDliNjRkYjY2MzNjYjNiMTljZjQ5Y2YwOTI0OTc0YmZlMGFmMjkyIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL05ldHdvcmtSZXF1ZXN0LmpzCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvTmV0d29ya1JlcXVlc3QuanMKQEAg
LTY5LDcgKzY5LDcgQEAgV2ViSW5zcGVjdG9yLk5ldHdvcmtSZXF1ZXN0LkV2ZW50cyA9IHsKIAog
V2ViSW5zcGVjdG9yLk5ldHdvcmtSZXF1ZXN0LnByb3RvdHlwZSA9IHsKICAgICAvKioKLSAgICAg
KiBAdHlwZSB7TmV0d29ya0FnZW50LlJlcXVlc3RJZH0KKyAgICAgKiBAcmV0dXJuIHtOZXR3b3Jr
QWdlbnQuUmVxdWVzdElkfQogICAgICAqLwogICAgIGdldCByZXF1ZXN0SWQoKQogICAgIHsKQEAg
LTgyLDcgKzgyLDcgQEAgV2ViSW5zcGVjdG9yLk5ldHdvcmtSZXF1ZXN0LnByb3RvdHlwZSA9IHsK
ICAgICB9LAogCiAgICAgLyoqCi0gICAgICogQHR5cGUge3N0cmluZ30KKyAgICAgKiBAcmV0dXJu
IHtzdHJpbmd9CiAgICAgICovCiAgICAgZ2V0IHVybCgpCiAgICAgewpAQCAtMTAwLDcgKzEwMCw3
IEBAIFdlYkluc3BlY3Rvci5OZXR3b3JrUmVxdWVzdC5wcm90b3R5cGUgPSB7CiAgICAgfSwKIAog
ICAgIC8qKgotICAgICAqIEB0eXBlIHtzdHJpbmd9CisgICAgICogQHJldHVybiB7c3RyaW5nfQog
ICAgICAqLwogICAgIGdldCBkb2N1bWVudFVSTCgpCiAgICAgewpAQCAtMTEzLDcgKzExMyw3IEBA
IFdlYkluc3BlY3Rvci5OZXR3b3JrUmVxdWVzdC5wcm90b3R5cGUgPSB7CiAgICAgfSwKIAogICAg
IC8qKgotICAgICAqIEB0eXBlIHtOZXR3b3JrQWdlbnQuRnJhbWVJZH0KKyAgICAgKiBAcmV0dXJu
IHtOZXR3b3JrQWdlbnQuRnJhbWVJZH0KICAgICAgKi8KICAgICBnZXQgZnJhbWVJZCgpCiAgICAg
ewpAQCAtMTIxLDcgKzEyMSw3IEBAIFdlYkluc3BlY3Rvci5OZXR3b3JrUmVxdWVzdC5wcm90b3R5
cGUgPSB7CiAgICAgfSwKIAogICAgIC8qKgotICAgICAqIEB0eXBlIHtOZXR3b3JrQWdlbnQuTG9h
ZGVySWR9CisgICAgICogQHJldHVybiB7TmV0d29ya0FnZW50LkxvYWRlcklkfQogICAgICAqLwog
ICAgIGdldCBsb2FkZXJJZCgpCiAgICAgewpAQCAtMTI5LDcgKzEyOSw3IEBAIFdlYkluc3BlY3Rv
ci5OZXR3b3JrUmVxdWVzdC5wcm90b3R5cGUgPSB7CiAgICAgfSwKIAogICAgIC8qKgotICAgICAq
IEB0eXBlIHtudW1iZXJ9CisgICAgICogQHJldHVybiB7bnVtYmVyfQogICAgICAqLwogICAgIGdl
dCBzdGFydFRpbWUoKQogICAgIHsKQEAgLTE0Miw3ICsxNDIsNyBAQCBXZWJJbnNwZWN0b3IuTmV0
d29ya1JlcXVlc3QucHJvdG90eXBlID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBAdHlw
ZSB7bnVtYmVyfQorICAgICAqIEByZXR1cm4ge251bWJlcn0KICAgICAgKi8KICAgICBnZXQgcmVz
cG9uc2VSZWNlaXZlZFRpbWUoKQogICAgIHsKQEAgLTE1NSw3ICsxNTUsNyBAQCBXZWJJbnNwZWN0
b3IuTmV0d29ya1JlcXVlc3QucHJvdG90eXBlID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAg
KiBAdHlwZSB7bnVtYmVyfQorICAgICAqIEByZXR1cm4ge251bWJlcn0KICAgICAgKi8KICAgICBn
ZXQgZW5kVGltZSgpCiAgICAgewpAQCAtMTc2LDcgKzE3Niw3IEBAIFdlYkluc3BlY3Rvci5OZXR3
b3JrUmVxdWVzdC5wcm90b3R5cGUgPSB7CiAgICAgfSwKIAogICAgIC8qKgotICAgICAqIEB0eXBl
IHtudW1iZXJ9CisgICAgICogQHJldHVybiB7bnVtYmVyfQogICAgICAqLwogICAgIGdldCBkdXJh
dGlvbigpCiAgICAgewpAQCAtMTg2LDcgKzE4Niw3IEBAIFdlYkluc3BlY3Rvci5OZXR3b3JrUmVx
dWVzdC5wcm90b3R5cGUgPSB7CiAgICAgfSwKIAogICAgIC8qKgotICAgICAqIEB0eXBlIHtudW1i
ZXJ9CisgICAgICogQHJldHVybiB7bnVtYmVyfQogICAgICAqLwogICAgIGdldCBsYXRlbmN5KCkK
ICAgICB7CkBAIC0xOTYsNyArMTk2LDcgQEAgV2ViSW5zcGVjdG9yLk5ldHdvcmtSZXF1ZXN0LnBy
b3RvdHlwZSA9IHsKICAgICB9LAogCiAgICAgLyoqCi0gICAgICogQHR5cGUge251bWJlcn0KKyAg
ICAgKiBAcmV0dXJuIHtudW1iZXJ9CiAgICAgICovCiAgICAgZ2V0IHJlY2VpdmVEdXJhdGlvbigp
CiAgICAgewpAQCAtMjA2LDcgKzIwNiw3IEBAIFdlYkluc3BlY3Rvci5OZXR3b3JrUmVxdWVzdC5w
cm90b3R5cGUgPSB7CiAgICAgfSwKIAogICAgIC8qKgotICAgICAqIEB0eXBlIHtudW1iZXJ9Cisg
ICAgICogQHJldHVybiB7bnVtYmVyfQogICAgICAqLwogICAgIGdldCByZXNvdXJjZVNpemUoKQog
ICAgIHsKQEAgLTIxOSw3ICsyMTksNyBAQCBXZWJJbnNwZWN0b3IuTmV0d29ya1JlcXVlc3QucHJv
dG90eXBlID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7bnVtYmVyfQorICAg
ICAqIEByZXR1cm4ge251bWJlcn0KICAgICAgKi8KICAgICBnZXQgdHJhbnNmZXJTaXplKCkKICAg
ICB7CkBAIC0yNTIsNyArMjUyLDcgQEAgV2ViSW5zcGVjdG9yLk5ldHdvcmtSZXF1ZXN0LnByb3Rv
dHlwZSA9IHsKICAgICB9LAogCiAgICAgLyoqCi0gICAgICogQHR5cGUge2Jvb2xlYW59CisgICAg
ICogQHJldHVybiB7Ym9vbGVhbn0KICAgICAgKi8KICAgICBnZXQgZmluaXNoZWQoKQogICAgIHsK
QEAgLTI3NCw3ICsyNzQsNyBAQCBXZWJJbnNwZWN0b3IuTmV0d29ya1JlcXVlc3QucHJvdG90eXBl
ID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7Ym9vbGVhbn0KKyAgICAgKiBA
cmV0dXJuIHtib29sZWFufQogICAgICAqLwogICAgIGdldCBmYWlsZWQoKQogICAgIHsKQEAgLTI4
Nyw3ICsyODcsNyBAQCBXZWJJbnNwZWN0b3IuTmV0d29ya1JlcXVlc3QucHJvdG90eXBlID0gewog
ICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7Ym9vbGVhbn0KKyAgICAgKiBAcmV0dXJu
IHtib29sZWFufQogICAgICAqLwogICAgIGdldCBjYW5jZWxlZCgpCiAgICAgewpAQCAtMzAwLDcg
KzMwMCw3IEBAIFdlYkluc3BlY3Rvci5OZXR3b3JrUmVxdWVzdC5wcm90b3R5cGUgPSB7CiAgICAg
fSwKIAogICAgIC8qKgotICAgICAqIEB0eXBlIHtib29sZWFufQorICAgICAqIEByZXR1cm4ge2Jv
b2xlYW59CiAgICAgICovCiAgICAgZ2V0IGNhY2hlZCgpCiAgICAgewpAQCAtMzE1LDcgKzMxNSw3
IEBAIFdlYkluc3BlY3Rvci5OZXR3b3JrUmVxdWVzdC5wcm90b3R5cGUgPSB7CiAgICAgfSwKIAog
ICAgIC8qKgotICAgICAqIEB0eXBlIHtOZXR3b3JrQWdlbnQuUmVzb3VyY2VUaW1pbmd8dW5kZWZp
bmVkfQorICAgICAqIEByZXR1cm4ge05ldHdvcmtBZ2VudC5SZXNvdXJjZVRpbWluZ3x1bmRlZmlu
ZWR9CiAgICAgICovCiAgICAgZ2V0IHRpbWluZygpCiAgICAgewpAQCAtMzM2LDcgKzMzNiw3IEBA
IFdlYkluc3BlY3Rvci5OZXR3b3JrUmVxdWVzdC5wcm90b3R5cGUgPSB7CiAgICAgfSwKIAogICAg
IC8qKgotICAgICAqIEB0eXBlIHtzdHJpbmd9CisgICAgICogQHJldHVybiB7c3RyaW5nfQogICAg
ICAqLwogICAgIGdldCBtaW1lVHlwZSgpCiAgICAgewpAQCAtMzQ5LDcgKzM0OSw3IEBAIFdlYklu
c3BlY3Rvci5OZXR3b3JrUmVxdWVzdC5wcm90b3R5cGUgPSB7CiAgICAgfSwKIAogICAgIC8qKgot
ICAgICAqIEB0eXBlIHtzdHJpbmd9CisgICAgICogQHJldHVybiB7c3RyaW5nfQogICAgICAqLwog
ICAgIGdldCBkaXNwbGF5TmFtZSgpCiAgICAgewpAQCAtMzU3LDcgKzM1Nyw3IEBAIFdlYkluc3Bl
Y3Rvci5OZXR3b3JrUmVxdWVzdC5wcm90b3R5cGUgPSB7CiAgICAgfSwKIAogICAgIC8qKgotICAg
ICAqIEB0eXBlIHtzdHJpbmd9CisgICAgICogQHJldHVybiB7c3RyaW5nfQogICAgICAqLwogICAg
IGdldCBmb2xkZXIoKQogICAgIHsKQEAgLTM3MCw3ICszNzAsNyBAQCBXZWJJbnNwZWN0b3IuTmV0
d29ya1JlcXVlc3QucHJvdG90eXBlID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBAdHlw
ZSB7V2ViSW5zcGVjdG9yLlJlc291cmNlVHlwZX0KKyAgICAgKiBAcmV0dXJuIHtXZWJJbnNwZWN0
b3IuUmVzb3VyY2VUeXBlfQogICAgICAqLwogICAgIGdldCB0eXBlKCkKICAgICB7CkBAIC0zODMs
NyArMzgzLDcgQEAgV2ViSW5zcGVjdG9yLk5ldHdvcmtSZXF1ZXN0LnByb3RvdHlwZSA9IHsKICAg
ICB9LAogCiAgICAgLyoqCi0gICAgICogQHR5cGUge1dlYkluc3BlY3Rvci5SZXNvdXJjZXx1bmRl
ZmluZWR9CisgICAgICogQHJldHVybiB7V2ViSW5zcGVjdG9yLlJlc291cmNlfHVuZGVmaW5lZH0K
ICAgICAgKi8KICAgICBnZXQgcmVkaXJlY3RTb3VyY2UoKQogICAgIHsKQEAgLTM5OCw3ICszOTgs
NyBAQCBXZWJJbnNwZWN0b3IuTmV0d29ya1JlcXVlc3QucHJvdG90eXBlID0gewogICAgIH0sCiAK
ICAgICAvKioKLSAgICAgKiBAdHlwZSB7T2JqZWN0fQorICAgICAqIEByZXR1cm4ge09iamVjdH0K
ICAgICAgKi8KICAgICBnZXQgcmVxdWVzdEhlYWRlcnMoKQogICAgIHsKQEAgLTQxNSw3ICs0MTUs
NyBAQCBXZWJJbnNwZWN0b3IuTmV0d29ya1JlcXVlc3QucHJvdG90eXBlID0gewogICAgIH0sCiAK
ICAgICAvKioKLSAgICAgKiBAdHlwZSB7c3RyaW5nfQorICAgICAqIEByZXR1cm4ge3N0cmluZ30K
ICAgICAgKi8KICAgICBnZXQgcmVxdWVzdEhlYWRlcnNUZXh0KCkKICAgICB7CkBAIC00MzUsNyAr
NDM1LDcgQEAgV2ViSW5zcGVjdG9yLk5ldHdvcmtSZXF1ZXN0LnByb3RvdHlwZSA9IHsKICAgICB9
LAogCiAgICAgLyoqCi0gICAgICogQHR5cGUge251bWJlcn0KKyAgICAgKiBAcmV0dXJuIHtudW1i
ZXJ9CiAgICAgICovCiAgICAgZ2V0IHJlcXVlc3RIZWFkZXJzU2l6ZSgpCiAgICAgewpAQCAtNDQz
LDcgKzQ0Myw3IEBAIFdlYkluc3BlY3Rvci5OZXR3b3JrUmVxdWVzdC5wcm90b3R5cGUgPSB7CiAg
ICAgfSwKIAogICAgIC8qKgotICAgICAqIEB0eXBlIHtBcnJheS48T2JqZWN0Pn0KKyAgICAgKiBA
cmV0dXJuIHtBcnJheS48T2JqZWN0Pn0KICAgICAgKi8KICAgICBnZXQgc29ydGVkUmVxdWVzdEhl
YWRlcnMoKQogICAgIHsKQEAgLTQ2OCw3ICs0NjgsNyBAQCBXZWJJbnNwZWN0b3IuTmV0d29ya1Jl
cXVlc3QucHJvdG90eXBlID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7QXJy
YXkuPFdlYkluc3BlY3Rvci5Db29raWU+fQorICAgICAqIEByZXR1cm4ge0FycmF5LjxXZWJJbnNw
ZWN0b3IuQ29va2llPn0KICAgICAgKi8KICAgICBnZXQgcmVxdWVzdENvb2tpZXMoKQogICAgIHsK
QEAgLTQ3OCw3ICs0NzgsNyBAQCBXZWJJbnNwZWN0b3IuTmV0d29ya1JlcXVlc3QucHJvdG90eXBl
ID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7c3RyaW5nfHVuZGVmaW5lZH0K
KyAgICAgKiBAcmV0dXJuIHtzdHJpbmd8dW5kZWZpbmVkfQogICAgICAqLwogICAgIGdldCByZXF1
ZXN0Rm9ybURhdGEoKQogICAgIHsKQEAgLTQ5Miw3ICs0OTIsNyBAQCBXZWJJbnNwZWN0b3IuTmV0
d29ya1JlcXVlc3QucHJvdG90eXBlID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBAdHlw
ZSB7c3RyaW5nfHVuZGVmaW5lZH0KKyAgICAgKiBAcmV0dXJuIHtzdHJpbmd8dW5kZWZpbmVkfQog
ICAgICAqLwogICAgIGdldCByZXF1ZXN0SHR0cFZlcnNpb24oKQogICAgIHsKQEAgLTUwMiw3ICs1
MDIsNyBAQCBXZWJJbnNwZWN0b3IuTmV0d29ya1JlcXVlc3QucHJvdG90eXBlID0gewogICAgIH0s
CiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7T2JqZWN0fQorICAgICAqIEByZXR1cm4ge09iamVj
dH0KICAgICAgKi8KICAgICBnZXQgcmVzcG9uc2VIZWFkZXJzKCkKICAgICB7CkBAIC01MTksNyAr
NTE5LDcgQEAgV2ViSW5zcGVjdG9yLk5ldHdvcmtSZXF1ZXN0LnByb3RvdHlwZSA9IHsKICAgICB9
LAogCiAgICAgLyoqCi0gICAgICogQHR5cGUge3N0cmluZ30KKyAgICAgKiBAcmV0dXJuIHtzdHJp
bmd9CiAgICAgICovCiAgICAgZ2V0IHJlc3BvbnNlSGVhZGVyc1RleHQoKQogICAgIHsKQEAgLTUz
OSw3ICs1MzksNyBAQCBXZWJJbnNwZWN0b3IuTmV0d29ya1JlcXVlc3QucHJvdG90eXBlID0gewog
ICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7bnVtYmVyfQorICAgICAqIEByZXR1cm4g
e251bWJlcn0KICAgICAgKi8KICAgICBnZXQgcmVzcG9uc2VIZWFkZXJzU2l6ZSgpCiAgICAgewpA
QCAtNTQ3LDcgKzU0Nyw3IEBAIFdlYkluc3BlY3Rvci5OZXR3b3JrUmVxdWVzdC5wcm90b3R5cGUg
PSB7CiAgICAgfSwKIAogICAgIC8qKgotICAgICAqIEB0eXBlIHtBcnJheS48T2JqZWN0Pn0KKyAg
ICAgKiBAcmV0dXJuIHtBcnJheS48T2JqZWN0Pn0KICAgICAgKi8KICAgICBnZXQgc29ydGVkUmVz
cG9uc2VIZWFkZXJzKCkKICAgICB7CkBAIC01NzIsNyArNTcyLDcgQEAgV2ViSW5zcGVjdG9yLk5l
dHdvcmtSZXF1ZXN0LnByb3RvdHlwZSA9IHsKICAgICB9LAogCiAgICAgLyoqCi0gICAgICogQHR5
cGUge0FycmF5LjxXZWJJbnNwZWN0b3IuQ29va2llPn0KKyAgICAgKiBAcmV0dXJuIHtBcnJheS48
V2ViSW5zcGVjdG9yLkNvb2tpZT59CiAgICAgICovCiAgICAgZ2V0IHJlc3BvbnNlQ29va2llcygp
CiAgICAgewpAQCAtNTgyLDcgKzU4Miw3IEBAIFdlYkluc3BlY3Rvci5OZXR3b3JrUmVxdWVzdC5w
cm90b3R5cGUgPSB7CiAgICAgfSwKIAogICAgIC8qKgotICAgICAqIEB0eXBlIHs/QXJyYXkuPE9i
amVjdD59CisgICAgICogQHJldHVybiB7P0FycmF5LjxPYmplY3Q+fQogICAgICAqLwogICAgIGdl
dCBxdWVyeVBhcmFtZXRlcnMoKQogICAgIHsKQEAgLTU5Nyw3ICs1OTcsNyBAQCBXZWJJbnNwZWN0
b3IuTmV0d29ya1JlcXVlc3QucHJvdG90eXBlID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAg
KiBAdHlwZSB7P0FycmF5LjxPYmplY3Q+fQorICAgICAqIEByZXR1cm4gez9BcnJheS48T2JqZWN0
Pn0KICAgICAgKi8KICAgICBnZXQgZm9ybVBhcmFtZXRlcnMoKQogICAgIHsKQEAgLTYxMyw3ICs2
MTMsNyBAQCBXZWJJbnNwZWN0b3IuTmV0d29ya1JlcXVlc3QucHJvdG90eXBlID0gewogICAgIH0s
CiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7c3RyaW5nfHVuZGVmaW5lZH0KKyAgICAgKiBAcmV0
dXJuIHtzdHJpbmd8dW5kZWZpbmVkfQogICAgICAqLwogICAgIGdldCByZXNwb25zZUh0dHBWZXJz
aW9uKCkKICAgICB7CkBAIC02NTcsNyArNjU3LDcgQEAgV2ViSW5zcGVjdG9yLk5ldHdvcmtSZXF1
ZXN0LnByb3RvdHlwZSA9IHsKICAgICB9LAogCiAgICAgLyoqCi0gICAgICogQHR5cGUge3N0cmlu
Z30KKyAgICAgKiBAcmV0dXJuIHs/c3RyaW5nfHVuZGVmaW5lZH0KICAgICAgKi8KICAgICBnZXQg
Y29udGVudCgpCiAgICAgewpAQCAtNjY1LDcgKzY2NSw3IEBAIFdlYkluc3BlY3Rvci5OZXR3b3Jr
UmVxdWVzdC5wcm90b3R5cGUgPSB7CiAgICAgfSwKIAogICAgIC8qKgotICAgICAqIEB0eXBlIHtz
dHJpbmd9CisgICAgICogQHJldHVybiB7Ym9vbGVhbn0KICAgICAgKi8KICAgICBnZXQgY29udGVu
dEVuY29kZWQoKQogICAgIHsKQEAgLTY5Myw3ICs2OTMsNyBAQCBXZWJJbnNwZWN0b3IuTmV0d29y
a1JlcXVlc3QucHJvdG90eXBlID0gewogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CiAg
ICAgICAgIGlmICh0eXBlb2YgdGhpcy5fY29udGVudCAhPT0gInVuZGVmaW5lZCIpIHsKLSAgICAg
ICAgICAgIGNhbGxiYWNrKHRoaXMuY29udGVudCwgdGhpcy5fY29udGVudEVuY29kZWQsIHRoaXMu
X21pbWVUeXBlKTsKKyAgICAgICAgICAgIGNhbGxiYWNrKHRoaXMuY29udGVudCB8fCBudWxsLCB0
aGlzLl9jb250ZW50RW5jb2RlZCwgdGhpcy5fbWltZVR5cGUpOwogICAgICAgICAgICAgcmV0dXJu
OwogICAgICAgICB9CiAgICAgICAgIHRoaXMuX3BlbmRpbmdDb250ZW50Q2FsbGJhY2tzLnB1c2go
Y2FsbGJhY2spOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVu
ZC9QYW5lbC5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvUGFuZWwuanMK
aW5kZXggYTlmZGYwYTRkY2Q2MGZjMGUwOTllYjc1ZTUzZTcxNjI2YWU2ODc2ZS4uNTY2ZjEwNWY1
NWM0Mjg3YjU2NzQ3YTQ3ODUwMTg3NzFiNTJkNTc3YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9QYW5lbC5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNw
ZWN0b3IvZnJvbnQtZW5kL1BhbmVsLmpzCkBAIC03OSw3ICs3OSw3IEBAIFdlYkluc3BlY3Rvci5Q
YW5lbC5wcm90b3R5cGUgPSB7CiAgICAgICAgIGlmICgiX3Rvb2xiYXJJdGVtIiBpbiB0aGlzKQog
ICAgICAgICAgICAgdGhpcy5fdG9vbGJhckl0ZW0uYWRkU3R5bGVDbGFzcygidG9nZ2xlZC1vbiIp
OwogCi0gICAgICAgIFdlYkluc3BlY3Rvci5zZXRDdXJyZW50Rm9jdXNFbGVtZW50KHRoaXMuZGVm
YXVsdEZvY3VzZWRFbGVtZW50KTsKKyAgICAgICAgdGhpcy5mb2N1cygpOwogICAgIH0sCiAKICAg
ICB3aWxsSGlkZTogZnVuY3Rpb24oKQpAQCAtOTYsNyArOTYsNyBAQCBXZWJJbnNwZWN0b3IuUGFu
ZWwucHJvdG90eXBlID0gewogICAgICAgICB0aGlzLnNlYXJjaENhbmNlbGVkKCk7CiAgICAgfSwK
IAotICAgIGdldCBkZWZhdWx0Rm9jdXNlZEVsZW1lbnQoKQorICAgIGRlZmF1bHRGb2N1c2VkRWxl
bWVudDogZnVuY3Rpb24oKQogICAgIHsKICAgICAgICAgcmV0dXJuIHRoaXMuc2lkZWJhclRyZWVF
bGVtZW50IHx8IHRoaXMuZWxlbWVudDsKICAgICB9LApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9SZXNvdXJjZVRyZWVNb2RlbC5qcyBiL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9mcm9udC1lbmQvUmVzb3VyY2VUcmVlTW9kZWwuanMKaW5kZXggODA3Mzdm
MTg0OGIxMzFkNWEzMTY2ODM0MzhhMzY2ZjBiNDUyOWU2MC4uOTY1YTBiNDc4NGU1MGE2MmQ5MmIx
NjIwYjIxZjkyZDAwM2FhYzNmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L2Zyb250LWVuZC9SZXNvdXJjZVRyZWVNb2RlbC5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNw
ZWN0b3IvZnJvbnQtZW5kL1Jlc291cmNlVHJlZU1vZGVsLmpzCkBAIC0zODcsNyArMzg3LDcgQEAg
V2ViSW5zcGVjdG9yLlJlc291cmNlVHJlZUZyYW1lID0gZnVuY3Rpb24obW9kZWwsIHBhcmVudEZy
YW1lLCBwYXlsb2FkKQogICAgIHRoaXMuX2xvYWRlcklkID0gcGF5bG9hZC5sb2FkZXJJZDsKICAg
ICB0aGlzLl9uYW1lID0gcGF5bG9hZC5uYW1lOwogICAgIHRoaXMuX3VybCA9IHBheWxvYWQudXJs
OwotICAgIHRoaXMuX3NlY3VyaXR5T3JpZ2luID0gcGF5bG9hZC5zZWN1cml0eU9yaWdpbjsKKyAg
ICB0aGlzLl9zZWN1cml0eU9yaWdpbiA9IHBheWxvYWQuc2VjdXJpdHlPcmlnaW4gfHwgIiI7CiAg
ICAgdGhpcy5fbWltZVR5cGUgPSBwYXlsb2FkLm1pbWVUeXBlOwogCiAgICAgLyoqCkBAIC00MDYs
NyArNDA2LDcgQEAgV2ViSW5zcGVjdG9yLlJlc291cmNlVHJlZUZyYW1lID0gZnVuY3Rpb24obW9k
ZWwsIHBhcmVudEZyYW1lLCBwYXlsb2FkKQogCiBXZWJJbnNwZWN0b3IuUmVzb3VyY2VUcmVlRnJh
bWUucHJvdG90eXBlID0gewogICAgIC8qKgotICAgICAqIEB0eXBlIHtzdHJpbmd9CisgICAgICog
QHJldHVybiB7c3RyaW5nfQogICAgICAqLwogICAgIGdldCBpZCgpCiAgICAgewpAQCAtNDE0LDcg
KzQxNCw3IEBAIFdlYkluc3BlY3Rvci5SZXNvdXJjZVRyZWVGcmFtZS5wcm90b3R5cGUgPSB7CiAg
ICAgfSwKIAogICAgIC8qKgotICAgICAqIEB0eXBlIHtzdHJpbmd9CisgICAgICogQHJldHVybiB7
c3RyaW5nfQogICAgICAqLwogICAgIGdldCBuYW1lKCkKICAgICB7CkBAIC00MjIsNyArNDIyLDcg
QEAgV2ViSW5zcGVjdG9yLlJlc291cmNlVHJlZUZyYW1lLnByb3RvdHlwZSA9IHsKICAgICB9LAog
CiAgICAgLyoqCi0gICAgICogQHR5cGUge3N0cmluZ30KKyAgICAgKiBAcmV0dXJuIHtzdHJpbmd9
CiAgICAgICovCiAgICAgZ2V0IHVybCgpCiAgICAgewpAQCAtNDMwLDcgKzQzMCw3IEBAIFdlYklu
c3BlY3Rvci5SZXNvdXJjZVRyZWVGcmFtZS5wcm90b3R5cGUgPSB7CiAgICAgfSwKIAogICAgIC8q
KgotICAgICAqIEB0eXBlIHtzdHJpbmd9CisgICAgICogQHJldHVybiB7c3RyaW5nfQogICAgICAq
LwogICAgIGdldCBzZWN1cml0eU9yaWdpbigpCiAgICAgewpAQCAtNDM4LDcgKzQzOCw3IEBAIFdl
Ykluc3BlY3Rvci5SZXNvdXJjZVRyZWVGcmFtZS5wcm90b3R5cGUgPSB7CiAgICAgfSwKIAogICAg
IC8qKgotICAgICAqIEB0eXBlIHtzdHJpbmd9CisgICAgICogQHJldHVybiB7c3RyaW5nfQogICAg
ICAqLwogICAgIGdldCBsb2FkZXJJZCgpCiAgICAgewpAQCAtNDQ2LDcgKzQ0Niw3IEBAIFdlYklu
c3BlY3Rvci5SZXNvdXJjZVRyZWVGcmFtZS5wcm90b3R5cGUgPSB7CiAgICAgfSwKIAogICAgIC8q
KgotICAgICAqIEB0eXBlIHtXZWJJbnNwZWN0b3IuUmVzb3VyY2VUcmVlRnJhbWV9CisgICAgICog
QHJldHVybiB7V2ViSW5zcGVjdG9yLlJlc291cmNlVHJlZUZyYW1lfQogICAgICAqLwogICAgIGdl
dCBwYXJlbnRGcmFtZSgpCiAgICAgewpAQCAtNDU0LDcgKzQ1NCw3IEBAIFdlYkluc3BlY3Rvci5S
ZXNvdXJjZVRyZWVGcmFtZS5wcm90b3R5cGUgPSB7CiAgICAgfSwKIAogICAgIC8qKgotICAgICAq
IEB0eXBlIHtBcnJheS48V2ViSW5zcGVjdG9yLlJlc291cmNlVHJlZUZyYW1lPn0KKyAgICAgKiBA
cmV0dXJuIHtBcnJheS48V2ViSW5zcGVjdG9yLlJlc291cmNlVHJlZUZyYW1lPn0KICAgICAgKi8K
ICAgICBnZXQgY2hpbGRGcmFtZXMoKQogICAgIHsKQEAgLTQ3Nyw3ICs0NzcsNyBAQCBXZWJJbnNw
ZWN0b3IuUmVzb3VyY2VUcmVlRnJhbWUucHJvdG90eXBlID0gewogICAgICAgICB0aGlzLl9sb2Fk
ZXJJZCA9IGZyYW1lUGF5bG9hZC5sb2FkZXJJZDsKICAgICAgICAgdGhpcy5fbmFtZSA9IGZyYW1l
UGF5bG9hZC5uYW1lOwogICAgICAgICB0aGlzLl91cmwgPSBmcmFtZVBheWxvYWQudXJsOwotICAg
ICAgICB0aGlzLl9zZWN1cml0eU9yaWdpbiA9IGZyYW1lUGF5bG9hZC5zZWN1cml0eU9yaWdpbjsK
KyAgICAgICAgdGhpcy5fc2VjdXJpdHlPcmlnaW4gPSBmcmFtZVBheWxvYWQuc2VjdXJpdHlPcmln
aW4gfHwgIiI7CiAgICAgICAgIHRoaXMuX21pbWVUeXBlID0gZnJhbWVQYXlsb2FkLm1pbWVUeXBl
OwogCiAgICAgICAgIHZhciBtYWluUmVzb3VyY2UgPSB0aGlzLl9yZXNvdXJjZXNNYXBbdGhpcy5f
dXJsXTsKQEAgLTQ4OCw3ICs0ODgsNyBAQCBXZWJJbnNwZWN0b3IuUmVzb3VyY2VUcmVlRnJhbWUu
cHJvdG90eXBlID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7V2ViSW5zcGVj
dG9yLlJlc291cmNlfQorICAgICAqIEByZXR1cm4ge1dlYkluc3BlY3Rvci5SZXNvdXJjZX0KICAg
ICAgKi8KICAgICBnZXQgbWFpblJlc291cmNlKCkKICAgICB7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NjcmlwdHNOYXZpZ2F0b3IuanMgYi9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NjcmlwdHNOYXZpZ2F0b3IuanMKaW5kZXggMzQ5
YjY0MWMzZTU2ZWYxNWJlOGQ1NmU0YzQ1ODNkODBhMGMyYzg1NC4uZDM4Y2YxZGE3YzQzZjgxZWFk
NDY3NTJhYjVmNzQyNGQwZDg1ZGVlNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9TY3JpcHRzTmF2aWdhdG9yLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0c05hdmlnYXRvci5qcwpAQCAtMzksOSArMzksNiBAQCBX
ZWJJbnNwZWN0b3IuU2NyaXB0c05hdmlnYXRvciA9IGZ1bmN0aW9uKCkKIAogICAgIHRoaXMuX3Rh
YmJlZFBhbmUuZWxlbWVudC5pZCA9ICJzY3JpcHRzLW5hdmlnYXRvci10YWJiZWQtcGFuZSI7CiAg
ICAgCi0gICAgdGhpcy5fdGFiYmVkUGFuZS5lbGVtZW50LnRhYkluZGV4ID0gMDsKLSAgICB0aGlz
Ll90YWJiZWRQYW5lLmVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXMiLCB0aGlzLmZvY3Vz
LmJpbmQodGhpcyksIGZhbHNlKTsKLSAgCiAgICAgdGhpcy5fdHJlZVNlYXJjaEJveCA9IGRvY3Vt
ZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwogICAgIHRoaXMuX3RyZWVTZWFyY2hCb3guaWQgPSAi
c2NyaXB0cy1uYXZpZ2F0b3ItdHJlZS1zZWFyY2gtYm94IjsKICAgICB0aGlzLl90YWJiZWRQYW5l
LmVsZW1lbnQuYXBwZW5kQ2hpbGQodGhpcy5fdHJlZVNlYXJjaEJveCk7CkBAIC01OCw2ICs1NSw3
IEBAIFdlYkluc3BlY3Rvci5TY3JpcHRzTmF2aWdhdG9yID0gZnVuY3Rpb24oKQogICAgIHNjcmlw
dHNWaWV3LmVsZW1lbnQuYWRkU3R5bGVDbGFzcygiZmlsbCIpOwogICAgIHNjcmlwdHNWaWV3LmVs
ZW1lbnQuYWRkU3R5bGVDbGFzcygibmF2aWdhdG9yLWNvbnRhaW5lciIpOwogICAgIHNjcmlwdHNW
aWV3LmVsZW1lbnQuYXBwZW5kQ2hpbGQoc2NyaXB0c091dGxpbmVFbGVtZW50KTsKKyAgICBzY3Jp
cHRzVmlldy5zZXREZWZhdWx0Rm9jdXNlZEVsZW1lbnQodGhpcy5fc2NyaXB0c1RyZWUuZWxlbWVu
dCk7CiAKICAgICB0aGlzLl90YWJiZWRQYW5lLmFwcGVuZFRhYihXZWJJbnNwZWN0b3IuU2NyaXB0
c05hdmlnYXRvci5TY3JpcHRzVGFiLCBXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIlNjcmlwdHMiKSwg
c2NyaXB0c1ZpZXcpOwogICAgIHRoaXMuX3RhYmJlZFBhbmUuc2VsZWN0VGFiKFdlYkluc3BlY3Rv
ci5TY3JpcHRzTmF2aWdhdG9yLlNjcmlwdHNUYWIpOwpAQCAtNzQsNiArNzIsNyBAQCBXZWJJbnNw
ZWN0b3IuU2NyaXB0c05hdmlnYXRvciA9IGZ1bmN0aW9uKCkKICAgICBjb250ZW50U2NyaXB0c1Zp
ZXcuZWxlbWVudC5hZGRTdHlsZUNsYXNzKCJmaWxsIik7CiAgICAgY29udGVudFNjcmlwdHNWaWV3
LmVsZW1lbnQuYWRkU3R5bGVDbGFzcygibmF2aWdhdG9yLWNvbnRhaW5lciIpOwogICAgIGNvbnRl
bnRTY3JpcHRzVmlldy5lbGVtZW50LmFwcGVuZENoaWxkKGNvbnRlbnRTY3JpcHRzT3V0bGluZUVs
ZW1lbnQpOworICAgIGNvbnRlbnRTY3JpcHRzVmlldy5zZXREZWZhdWx0Rm9jdXNlZEVsZW1lbnQo
dGhpcy5fY29udGVudFNjcmlwdHNUcmVlLmVsZW1lbnQpOwogCiAgICAgdGhpcy5fdGFiYmVkUGFu
ZS5hcHBlbmRUYWIoV2ViSW5zcGVjdG9yLlNjcmlwdHNOYXZpZ2F0b3IuQ29udGVudFNjcmlwdHNU
YWIsIFdlYkluc3BlY3Rvci5VSVN0cmluZygiQ29udGVudCBzY3JpcHRzIiksIGNvbnRlbnRTY3Jp
cHRzVmlldyk7CiAKQEAgLTk3LDE1ICs5Niw3IEBAIFdlYkluc3BlY3Rvci5TY3JpcHRzTmF2aWdh
dG9yLlNuaXBwZXRzVGFiID0gInNuaXBwZXRzIjsKIAogV2ViSW5zcGVjdG9yLlNjcmlwdHNOYXZp
Z2F0b3IucHJvdG90eXBlID0gewogICAgIC8qKgotICAgICAqIEB0eXBlIHtFbGVtZW50fQotICAg
ICAqLwotICAgIGdldCBkZWZhdWx0Rm9jdXNlZEVsZW1lbnQoKQotICAgIHsKLSAgICAgICAgcmV0
dXJuIHRoaXMuX3NjcmlwdHNUcmVlLmVsZW1lbnQ7Ci0gICAgfSwKLQotICAgIC8qKgotICAgICAq
IEB0eXBlIHtXZWJJbnNwZWN0b3IuVmlld30KKyAgICAgKiBAcmV0dXJuIHtXZWJJbnNwZWN0b3Iu
Vmlld30KICAgICAgKi8KICAgICBnZXQgdmlldygpCiAgICAgewpAQCAtMTEzLDMyICsxMDQsNiBA
QCBXZWJJbnNwZWN0b3IuU2NyaXB0c05hdmlnYXRvci5wcm90b3R5cGUgPSB7CiAgICAgfSwKIAog
ICAgIC8qKgotICAgICAqIEB0eXBlIHtFbGVtZW50fQotICAgICAqLwotICAgIGdldCBlbGVtZW50
KCkKLSAgICB7Ci0gICAgICAgIHJldHVybiB0aGlzLl90YWJiZWRQYW5lLmVsZW1lbnQ7Ci0gICAg
fSwKLQotICAgIC8qKgotICAgICAqIEBwYXJhbSB7RWxlbWVudH0gZWxlbWVudAotICAgICAqLwot
ICAgIHNob3c6IGZ1bmN0aW9uKGVsZW1lbnQpCi0gICAgewotICAgICAgICB0aGlzLl90YWJiZWRQ
YW5lLnNob3coZWxlbWVudCk7Ci0gICAgfSwKLQotICAgIGZvY3VzOiBmdW5jdGlvbigpCi0gICAg
ewotICAgICAgICBpZiAodGhpcy5fdGFiYmVkUGFuZS5zZWxlY3RlZFRhYklkID09PSBXZWJJbnNw
ZWN0b3IuU2NyaXB0c05hdmlnYXRvci5TY3JpcHRzVGFiKQotICAgICAgICAgICAgV2ViSW5zcGVj
dG9yLnNldEN1cnJlbnRGb2N1c0VsZW1lbnQodGhpcy5fc2NyaXB0c1RyZWUuZWxlbWVudCk7Ci0g
ICAgICAgIGVsc2UgaWYgKHRoaXMuX3RhYmJlZFBhbmUuc2VsZWN0ZWRUYWJJZCA9PT0gV2ViSW5z
cGVjdG9yLlNjcmlwdHNOYXZpZ2F0b3IuQ29udGVudFNjcmlwdHNUYWIpCi0gICAgICAgICAgICBX
ZWJJbnNwZWN0b3Iuc2V0Q3VycmVudEZvY3VzRWxlbWVudCh0aGlzLl9jb250ZW50U2NyaXB0c1Ry
ZWUuZWxlbWVudCk7Ci0gICAgICAgIGVsc2UKLSAgICAgICAgICAgIFdlYkluc3BlY3Rvci5zZXRD
dXJyZW50Rm9jdXNFbGVtZW50KHRoaXMuX3NuaXBwZXRzVHJlZS5lbGVtZW50KTsKLSAgICB9LAot
Ci0gICAgLyoqCiAgICAgICogQHBhcmFtIHtXZWJJbnNwZWN0b3IuVUlTb3VyY2VDb2RlfSB1aVNv
dXJjZUNvZGUKICAgICAgKi8KICAgICBhZGRVSVNvdXJjZUNvZGU6IGZ1bmN0aW9uKHVpU291cmNl
Q29kZSkKQEAgLTYzMiw3ICs1OTcsNyBAQCBXZWJJbnNwZWN0b3IuQmFzZU5hdmlnYXRvclRyZWVF
bGVtZW50LnByb3RvdHlwZSA9IHsKICAgICB9LAogCiAgICAgLyoqCi0gICAgICogQHR5cGUge3N0
cmluZ30KKyAgICAgKiBAcmV0dXJuIHtzdHJpbmd9CiAgICAgICovCiAgICAgZ2V0IHRpdGxlVGV4
dCgpCiAgICAgewpAQCAtNjc3LDcgKzY0Miw3IEBAIFdlYkluc3BlY3Rvci5OYXZpZ2F0b3JGb2xk
ZXJUcmVlRWxlbWVudCA9IGZ1bmN0aW9uKGZvbGRlcklkZW50aWZpZXIsIGRvbWFpbiwgZm9sCiAK
IFdlYkluc3BlY3Rvci5OYXZpZ2F0b3JGb2xkZXJUcmVlRWxlbWVudC5wcm90b3R5cGUgPSB7CiAg
ICAgLyoqCi0gICAgICogQHR5cGUge3N0cmluZ30KKyAgICAgKiBAcmV0dXJuIHtzdHJpbmd9CiAg
ICAgICovCiAgICAgZ2V0IGZvbGRlcklkZW50aWZpZXIoKQogICAgIHsKQEAgLTY4NSw3ICs2NTAs
NyBAQCBXZWJJbnNwZWN0b3IuTmF2aWdhdG9yRm9sZGVyVHJlZUVsZW1lbnQucHJvdG90eXBlID0g
ewogICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7Ym9vbGVhbn0KKyAgICAgKiBAcmV0
dXJuIHtib29sZWFufQogICAgICAqLwogICAgIGdldCBpc0RvbWFpbigpCiAgICAgewpAQCAtNzIx
LDcgKzY4Niw3IEBAIFdlYkluc3BlY3Rvci5OYXZpZ2F0b3JTY3JpcHRUcmVlRWxlbWVudCA9IGZ1
bmN0aW9uKG5hdmlnYXRvciwgdWlTb3VyY2VDb2RlLCB0aXRsCiAKIFdlYkluc3BlY3Rvci5OYXZp
Z2F0b3JTY3JpcHRUcmVlRWxlbWVudC5wcm90b3R5cGUgPSB7CiAgICAgLyoqCi0gICAgICogQHR5
cGUge1dlYkluc3BlY3Rvci5TY3JpcHRzTmF2aWdhdG9yfQorICAgICAqIEByZXR1cm4ge1dlYklu
c3BlY3Rvci5TY3JpcHRzTmF2aWdhdG9yfQogICAgICAqLwogICAgIGdldCBuYXZpZ2F0b3IoKQog
ICAgIHsKQEAgLTcyOSw3ICs2OTQsNyBAQCBXZWJJbnNwZWN0b3IuTmF2aWdhdG9yU2NyaXB0VHJl
ZUVsZW1lbnQucHJvdG90eXBlID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7
V2ViSW5zcGVjdG9yLlVJU291cmNlQ29kZX0KKyAgICAgKiBAcmV0dXJuIHtXZWJJbnNwZWN0b3Iu
VUlTb3VyY2VDb2RlfQogICAgICAqLwogICAgIGdldCB1aVNvdXJjZUNvZGUoKQogICAgIHsKQEAg
LTc3OCwzNyArNzQzLDM3IEBAIFdlYkluc3BlY3Rvci5OYXZpZ2F0b3JTY3JpcHRUcmVlRWxlbWVu
dC5wcm90b3R5cGUuX19wcm90b19fID0gV2ViSW5zcGVjdG9yLkJhc2VOCiAvKioKICAqIEBjb25z
dHJ1Y3RvcgogICogQHBhcmFtIHtXZWJJbnNwZWN0b3IuUGFuZWx9IHBhbmVsCi0gKiBAcGFyYW0g
e1dlYkluc3BlY3Rvci5TcGxpdFZpZXd9IGVkaXRvclZpZXcKLSAqIEBwYXJhbSB7V2ViSW5zcGVj
dG9yLlNjcmlwdHNOYXZpZ2F0b3J9IG5hdmlnYXRvcgotICogQHBhcmFtIHtXZWJJbnNwZWN0b3Iu
VGFiYmVkRWRpdG9yQ29udGFpbmVyfSBlZGl0b3JDb250YWluZXIKKyAqIEBwYXJhbSB7V2ViSW5z
cGVjdG9yLlNwbGl0Vmlld30gcGFyZW50U3BsaXRWaWV3CisgKiBAcGFyYW0ge1dlYkluc3BlY3Rv
ci5WaWV3fSBuYXZpZ2F0b3JWaWV3CisgKiBAcGFyYW0ge1dlYkluc3BlY3Rvci5WaWV3fSBlZGl0
b3JWaWV3CiAgKi8KLVdlYkluc3BlY3Rvci5TY3JpcHRzTmF2aWdhdG9yQ29udHJvbGxlciA9IGZ1
bmN0aW9uKHBhbmVsLCBlZGl0b3JWaWV3LCBuYXZpZ2F0b3IsIGVkaXRvckNvbnRhaW5lcikKK1dl
Ykluc3BlY3Rvci5OYXZpZ2F0b3JPdmVybGF5Q29udHJvbGxlciA9IGZ1bmN0aW9uKHBhbmVsLCBw
YXJlbnRTcGxpdFZpZXcsIG5hdmlnYXRvclZpZXcsIGVkaXRvclZpZXcpCiB7CiAgICAgdGhpcy5f
cGFuZWwgPSBwYW5lbDsKKyAgICB0aGlzLl9wYXJlbnRTcGxpdFZpZXcgPSBwYXJlbnRTcGxpdFZp
ZXc7CisgICAgdGhpcy5fbmF2aWdhdG9yVmlldyA9IG5hdmlnYXRvclZpZXc7CiAgICAgdGhpcy5f
ZWRpdG9yVmlldyA9IGVkaXRvclZpZXc7Ci0gICAgdGhpcy5fbmF2aWdhdG9yID0gbmF2aWdhdG9y
OwotICAgIHRoaXMuX2VkaXRvckNvbnRhaW5lciA9IGVkaXRvckNvbnRhaW5lcjsKIAogICAgIHRo
aXMuX25hdmlnYXRvclNpZGViYXJSZXNpemVXaWRnZXRFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRl
RWxlbWVudCgiZGl2Iik7CiAgICAgdGhpcy5fbmF2aWdhdG9yU2lkZWJhclJlc2l6ZVdpZGdldEVs
ZW1lbnQuYWRkU3R5bGVDbGFzcygic2NyaXB0cy1uYXZpZ2F0b3ItcmVzaXplci13aWRnZXQiKTsK
LSAgICB0aGlzLl9lZGl0b3JWaWV3Lmluc3RhbGxSZXNpemVyKHRoaXMuX25hdmlnYXRvclNpZGVi
YXJSZXNpemVXaWRnZXRFbGVtZW50KTsKLSAgICB0aGlzLl9uYXZpZ2F0b3Iudmlldy5lbGVtZW50
LmFwcGVuZENoaWxkKHRoaXMuX25hdmlnYXRvclNpZGViYXJSZXNpemVXaWRnZXRFbGVtZW50KTsK
KyAgICB0aGlzLl9wYXJlbnRTcGxpdFZpZXcuaW5zdGFsbFJlc2l6ZXIodGhpcy5fbmF2aWdhdG9y
U2lkZWJhclJlc2l6ZVdpZGdldEVsZW1lbnQpOworICAgIHRoaXMuX25hdmlnYXRvclZpZXcuZWxl
bWVudC5hcHBlbmRDaGlsZCh0aGlzLl9uYXZpZ2F0b3JTaWRlYmFyUmVzaXplV2lkZ2V0RWxlbWVu
dCk7CiAKICAgICB0aGlzLl9uYXZpZ2F0b3JTaG93SGlkZUJ1dHRvbiA9IHRoaXMuX2NyZWF0ZU5h
dmlnYXRvckNvbnRyb2xCdXR0b24oV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJTaG93IG5hdmlnYXRv
ciIpLCAic2NyaXB0cy1uYXZpZ2F0b3Itc2hvdy1oaWRlLWJ1dHRvbiIsIHRoaXMuX3RvZ2dsZU5h
dmlnYXRvci5iaW5kKHRoaXMpKTsKICAgICB0aGlzLl9uYXZpZ2F0b3JTaG93SGlkZUJ1dHRvbi5h
ZGRTdHlsZUNsYXNzKCJ0b2dnbGVkLW9uIik7CiAgICAgdGhpcy5fbmF2aWdhdG9yU2hvd0hpZGVC
dXR0b24udGl0bGUgPSBXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkhpZGUgc2NyaXB0cyBuYXZpZ2F0
b3IiKTsKLSAgICB0aGlzLl9lZGl0b3JWaWV3LmVsZW1lbnQuYXBwZW5kQ2hpbGQodGhpcy5fbmF2
aWdhdG9yU2hvd0hpZGVCdXR0b24pOworICAgIHRoaXMuX3BhcmVudFNwbGl0Vmlldy5lbGVtZW50
LmFwcGVuZENoaWxkKHRoaXMuX25hdmlnYXRvclNob3dIaWRlQnV0dG9uKTsKIAogICAgIHRoaXMu
X25hdmlnYXRvclBpbkJ1dHRvbiA9IHRoaXMuX2NyZWF0ZU5hdmlnYXRvckNvbnRyb2xCdXR0b24o
V2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJQaW4gbmF2aWdhdG9yIiksICJzY3JpcHRzLW5hdmlnYXRv
ci1waW4tYnV0dG9uIiwgdGhpcy5fcGluTmF2aWdhdG9yLmJpbmQodGhpcykpOwogICAgIHRoaXMu
X25hdmlnYXRvclBpbkJ1dHRvbi5hZGRTdHlsZUNsYXNzKCJoaWRkZW4iKTsKLSAgICB0aGlzLl9u
YXZpZ2F0b3Iudmlldy5lbGVtZW50LmFwcGVuZENoaWxkKHRoaXMuX25hdmlnYXRvclBpbkJ1dHRv
bik7CisgICAgdGhpcy5fbmF2aWdhdG9yVmlldy5lbGVtZW50LmFwcGVuZENoaWxkKHRoaXMuX25h
dmlnYXRvclBpbkJ1dHRvbik7CiAKICAgICBXZWJJbnNwZWN0b3Iuc2V0dGluZ3MubmF2aWdhdG9y
SGlkZGVuID0gV2ViSW5zcGVjdG9yLnNldHRpbmdzLmNyZWF0ZVNldHRpbmcoIm5hdmlnYXRvckhp
ZGRlbiIsIHRydWUpOwogICAgIGlmIChXZWJJbnNwZWN0b3Iuc2V0dGluZ3MubmF2aWdhdG9ySGlk
ZGVuLmdldCgpKQogICAgICAgICB0aGlzLl90b2dnbGVOYXZpZ2F0b3IoKTsKIH0KIAotV2ViSW5z
cGVjdG9yLlNjcmlwdHNOYXZpZ2F0b3JDb250cm9sbGVyLnByb3RvdHlwZSA9IHsKK1dlYkluc3Bl
Y3Rvci5OYXZpZ2F0b3JPdmVybGF5Q29udHJvbGxlci5wcm90b3R5cGUgPSB7CiAgICAgd2FzU2hv
d246IGZ1bmN0aW9uKCkKICAgICB7CiAgICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KHRoaXMuX21h
eWJlU2hvd05hdmlnYXRvck92ZXJsYXkuYmluZCh0aGlzKSwgMCk7CkBAIC04NTEsMTMgKzgxNiwx
NCBAQCBXZWJJbnNwZWN0b3IuU2NyaXB0c05hdmlnYXRvckNvbnRyb2xsZXIucHJvdG90eXBlID0g
ewogICAgICAgICB0aGlzLl9uYXZpZ2F0b3JIaWRkZW4gPSB0cnVlOwogICAgICAgICB0aGlzLl9u
YXZpZ2F0b3JTaG93SGlkZUJ1dHRvbi5yZW1vdmVTdHlsZUNsYXNzKCJ0b2dnbGVkLW9uIik7CiAg
ICAgICAgIHRoaXMuX25hdmlnYXRvclNob3dIaWRlQnV0dG9uLnRpdGxlID0gV2ViSW5zcGVjdG9y
LlVJU3RyaW5nKCJTaG93IHNjcmlwdHMgbmF2aWdhdG9yIik7Ci0gICAgICAgIHRoaXMuX2VkaXRv
ckNvbnRhaW5lci5lbGVtZW50LmFkZFN0eWxlQ2xhc3MoIm5hdmlnYXRvci1oaWRkZW4iKTsKKyAg
ICAgICAgdGhpcy5fZWRpdG9yVmlldy5lbGVtZW50LmFkZFN0eWxlQ2xhc3MoIm5hdmlnYXRvci1o
aWRkZW4iKTsKICAgICAgICAgdGhpcy5fbmF2aWdhdG9yU2lkZWJhclJlc2l6ZVdpZGdldEVsZW1l
bnQuYWRkU3R5bGVDbGFzcygiaGlkZGVuIik7CiAKICAgICAgICAgdGhpcy5fbmF2aWdhdG9yUGlu
QnV0dG9uLnJlbW92ZVN0eWxlQ2xhc3MoImhpZGRlbiIpOwogCi0gICAgICAgIHRoaXMuX2VkaXRv
clZpZXcuaGlkZVNpZGViYXJFbGVtZW50KCk7Ci0gICAgICAgIHRoaXMuX25hdmlnYXRvci52aWV3
LmRldGFjaCgpOworICAgICAgICB0aGlzLl9wYXJlbnRTcGxpdFZpZXcuaGlkZVNpZGViYXJFbGVt
ZW50KCk7CisgICAgICAgIHRoaXMuX25hdmlnYXRvclZpZXcuZGV0YWNoKCk7CisgICAgICAgIHRo
aXMuX2VkaXRvclZpZXcuZm9jdXMoKTsKICAgICAgICAgV2ViSW5zcGVjdG9yLnNldHRpbmdzLm5h
dmlnYXRvckhpZGRlbi5zZXQodHJ1ZSk7CiAgICAgfSwKIApAQCAtODcwLDEyICs4MzYsMTIgQEAg
V2ViSW5zcGVjdG9yLlNjcmlwdHNOYXZpZ2F0b3JDb250cm9sbGVyLnByb3RvdHlwZSA9IHsKICAg
ICAgICAgdGhpcy5fbmF2aWdhdG9yU2hvd0hpZGVCdXR0b24uYWRkU3R5bGVDbGFzcygidG9nZ2xl
ZC1vbiIpOwogICAgICAgICB0aGlzLl9uYXZpZ2F0b3JTaG93SGlkZUJ1dHRvbi50aXRsZSA9IFdl
Ykluc3BlY3Rvci5VSVN0cmluZygiSGlkZSBzY3JpcHRzIG5hdmlnYXRvciIpOwogCi0gICAgICAg
IHRoaXMuX2VkaXRvckNvbnRhaW5lci5lbGVtZW50LnJlbW92ZVN0eWxlQ2xhc3MoIm5hdmlnYXRv
ci1oaWRkZW4iKTsKKyAgICAgICAgdGhpcy5fZWRpdG9yVmlldy5lbGVtZW50LnJlbW92ZVN0eWxl
Q2xhc3MoIm5hdmlnYXRvci1oaWRkZW4iKTsKICAgICAgICAgdGhpcy5fbmF2aWdhdG9yU2lkZWJh
clJlc2l6ZVdpZGdldEVsZW1lbnQucmVtb3ZlU3R5bGVDbGFzcygiaGlkZGVuIik7CiAKLSAgICAg
ICAgdGhpcy5fZWRpdG9yVmlldy5zaG93U2lkZWJhckVsZW1lbnQoKTsKLSAgICAgICAgdGhpcy5f
bmF2aWdhdG9yLnNob3codGhpcy5fZWRpdG9yVmlldy5zaWRlYmFyRWxlbWVudCk7Ci0gICAgICAg
IHRoaXMuX25hdmlnYXRvci5mb2N1cygpOworICAgICAgICB0aGlzLl9wYXJlbnRTcGxpdFZpZXcu
c2hvd1NpZGViYXJFbGVtZW50KCk7CisgICAgICAgIHRoaXMuX25hdmlnYXRvclZpZXcuc2hvdyh0
aGlzLl9wYXJlbnRTcGxpdFZpZXcuc2lkZWJhckVsZW1lbnQpOworICAgICAgICB0aGlzLl9uYXZp
Z2F0b3JWaWV3LmZvY3VzKCk7CiAgICAgICAgIFdlYkluc3BlY3Rvci5zZXR0aW5ncy5uYXZpZ2F0
b3JIaWRkZW4uc2V0KGZhbHNlKTsKICAgICB9LAogCkBAIC04ODUsNyArODUxLDcgQEAgV2ViSW5z
cGVjdG9yLlNjcmlwdHNOYXZpZ2F0b3JDb250cm9sbGVyLnByb3RvdHlwZSA9IHsKICAgICAgICAg
ICAgIHJldHVybjsKIAogICAgICAgICB0aGlzLl9uYXZpZ2F0b3JPdmVybGF5U2hvd24gPSB0cnVl
OwotICAgICAgICB0aGlzLl9zaWRlYmFyT3ZlcmxheSA9IG5ldyBXZWJJbnNwZWN0b3IuU2lkZWJh
ck92ZXJsYXkodGhpcy5fbmF2aWdhdG9yLnZpZXcsICJzY3JpcHRzUGFuZWxOYXZpZ2F0b3JPdmVy
bGF5V2lkdGgiLCBQcmVmZXJlbmNlcy5taW5TY3JpcHRzU2lkZWJhcldpZHRoKTsKKyAgICAgICAg
dGhpcy5fc2lkZWJhck92ZXJsYXkgPSBuZXcgV2ViSW5zcGVjdG9yLlNpZGViYXJPdmVybGF5KHRo
aXMuX25hdmlnYXRvclZpZXcsICJzY3JpcHRzUGFuZWxOYXZpZ2F0b3JPdmVybGF5V2lkdGgiLCBQ
cmVmZXJlbmNlcy5taW5TY3JpcHRzU2lkZWJhcldpZHRoKTsKICAgICAgICAgdGhpcy5fc2lkZWJh
ck92ZXJsYXkuYWRkRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0b3IuU2lkZWJhck92ZXJsYXkuRXZl
bnRUeXBlcy5XYXNTaG93biwgdGhpcy5fbmF2aWdhdG9yT3ZlcmxheVdhc1Nob3duLCB0aGlzKTsK
ICAgICAgICAgdGhpcy5fc2lkZWJhck92ZXJsYXkuYWRkRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0
b3IuU2lkZWJhck92ZXJsYXkuRXZlbnRUeXBlcy5XaWxsSGlkZSwgdGhpcy5fbmF2aWdhdG9yT3Zl
cmxheVdpbGxIaWRlLCB0aGlzKTsKIApAQCAtODkzLDcgKzg1OSw3IEBAIFdlYkluc3BlY3Rvci5T
Y3JpcHRzTmF2aWdhdG9yQ29udHJvbGxlci5wcm90b3R5cGUgPSB7CiAgICAgICAgIG5hdmlnYXRv
ck92ZXJsYXlSZXNpemVXaWRnZXRFbGVtZW50LmFkZFN0eWxlQ2xhc3MoInNjcmlwdHMtbmF2aWdh
dG9yLXJlc2l6ZXItd2lkZ2V0Iik7CiAgICAgICAgIHRoaXMuX3NpZGViYXJPdmVybGF5LnJlc2l6
ZXJXaWRnZXRFbGVtZW50ID0gbmF2aWdhdG9yT3ZlcmxheVJlc2l6ZVdpZGdldEVsZW1lbnQ7CiAK
LSAgICAgICAgdGhpcy5fc2lkZWJhck92ZXJsYXkuc2hvdyh0aGlzLl9lZGl0b3JWaWV3LmVsZW1l
bnQpOworICAgICAgICB0aGlzLl9zaWRlYmFyT3ZlcmxheS5zaG93KHRoaXMuX3BhcmVudFNwbGl0
Vmlldy5lbGVtZW50KTsKICAgICB9LAogCiAgICAgaGlkZU5hdmlnYXRvck92ZXJsYXk6IGZ1bmN0
aW9uKCkKQEAgLTkwMiwxNiArODY4LDE1IEBAIFdlYkluc3BlY3Rvci5TY3JpcHRzTmF2aWdhdG9y
Q29udHJvbGxlci5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICByZXR1cm47CiAKICAgICAgICAg
dGhpcy5fc2lkZWJhck92ZXJsYXkuaGlkZSgpOwotICAgICAgICBpZiAodGhpcy5fZWRpdG9yQ29u
dGFpbmVyLnZpc2libGVWaWV3KQotICAgICAgICAgICAgdGhpcy5fZWRpdG9yQ29udGFpbmVyLnZp
c2libGVWaWV3LmZvY3VzKCk7CisgICAgICAgIHRoaXMuX2VkaXRvclZpZXcuZm9jdXMoKTsKICAg
ICB9LAogCiAgICAgX25hdmlnYXRvck92ZXJsYXlXYXNTaG93bjogZnVuY3Rpb24oZXZlbnQpCiAg
ICAgewotICAgICAgICB0aGlzLl9uYXZpZ2F0b3Iudmlldy5lbGVtZW50LmFwcGVuZENoaWxkKHRo
aXMuX25hdmlnYXRvclNob3dIaWRlQnV0dG9uKTsKKyAgICAgICAgdGhpcy5fbmF2aWdhdG9yVmll
dy5lbGVtZW50LmFwcGVuZENoaWxkKHRoaXMuX25hdmlnYXRvclNob3dIaWRlQnV0dG9uKTsKICAg
ICAgICAgdGhpcy5fbmF2aWdhdG9yU2hvd0hpZGVCdXR0b24uYWRkU3R5bGVDbGFzcygidG9nZ2xl
ZC1vbiIpOwogICAgICAgICB0aGlzLl9uYXZpZ2F0b3JTaG93SGlkZUJ1dHRvbi50aXRsZSA9IFdl
Ykluc3BlY3Rvci5VSVN0cmluZygiSGlkZSBuYXZpZ2F0b3IiKTsKLSAgICAgICAgdGhpcy5fbmF2
aWdhdG9yLmZvY3VzKCk7CisgICAgICAgIHRoaXMuX25hdmlnYXRvclZpZXcuZm9jdXMoKTsKICAg
ICAgICAgdGhpcy5fcGFuZWwucmVnaXN0ZXJTaG9ydGN1dChXZWJJbnNwZWN0b3IuS2V5Ym9hcmRT
aG9ydGN1dC5LZXlzLkVzYy5jb2RlLCB0aGlzLl9lc2NEb3duV2hpbGVOYXZpZ2F0b3JPdmVybGF5
T3Blbi5iaW5kKHRoaXMpKTsKICAgICB9LAogCkBAIC05MTksNyArODg0LDcgQEAgV2ViSW5zcGVj
dG9yLlNjcmlwdHNOYXZpZ2F0b3JDb250cm9sbGVyLnByb3RvdHlwZSA9IHsKICAgICB7CiAgICAg
ICAgIGRlbGV0ZSB0aGlzLl9uYXZpZ2F0b3JPdmVybGF5U2hvd247CiAgICAgICAgIFdlYkluc3Bl
Y3Rvci5zZXR0aW5ncy5uYXZpZ2F0b3JXYXNPbmNlSGlkZGVuLnNldCh0cnVlKTsKLSAgICAgICAg
dGhpcy5fZWRpdG9yVmlldy5lbGVtZW50LmFwcGVuZENoaWxkKHRoaXMuX25hdmlnYXRvclNob3dI
aWRlQnV0dG9uKTsKKyAgICAgICAgdGhpcy5fcGFyZW50U3BsaXRWaWV3LmVsZW1lbnQuYXBwZW5k
Q2hpbGQodGhpcy5fbmF2aWdhdG9yU2hvd0hpZGVCdXR0b24pOwogICAgICAgICB0aGlzLl9uYXZp
Z2F0b3JTaG93SGlkZUJ1dHRvbi5yZW1vdmVTdHlsZUNsYXNzKCJ0b2dnbGVkLW9uIik7CiAgICAg
ICAgIHRoaXMuX25hdmlnYXRvclNob3dIaWRlQnV0dG9uLnRpdGxlID0gV2ViSW5zcGVjdG9yLlVJ
U3RyaW5nKCJTaG93IG5hdmlnYXRvciIpOwogICAgICAgICB0aGlzLl9wYW5lbC51bnJlZ2lzdGVy
U2hvcnRjdXQoV2ViSW5zcGVjdG9yLktleWJvYXJkU2hvcnRjdXQuS2V5cy5Fc2MuY29kZSk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NjcmlwdHNQYW5l
bC5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0c1BhbmVsLmpz
CmluZGV4IDQ3NzVmZWJmOGFiODJlOTg5NzY1ZmVlYTVmY2JkZGY5NjA4MGY0Y2IuLmNkYTIxZGYy
YzY2MTNhN2Y4NTJkYmQwMmM2NWZiZDk2MDZkYmNkNWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0c1BhbmVsLmpzCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0c1BhbmVsLmpzCkBAIC03MiwxMyArNzIsMTMg
QEAgV2ViSW5zcGVjdG9yLlNjcmlwdHNQYW5lbCA9IGZ1bmN0aW9uKHByZXNlbnRhdGlvbk1vZGVs
KQogICAgIHRoaXMuZWRpdG9yVmlldy5zaG93KHRoaXMuc3BsaXRWaWV3Lm1haW5FbGVtZW50KTsK
IAogICAgIHRoaXMuX25hdmlnYXRvciA9IG5ldyBXZWJJbnNwZWN0b3IuU2NyaXB0c05hdmlnYXRv
cigpOwotICAgIHRoaXMuX25hdmlnYXRvci5zaG93KHRoaXMuZWRpdG9yVmlldy5zaWRlYmFyRWxl
bWVudCk7CisgICAgdGhpcy5fbmF2aWdhdG9yLnZpZXcuc2hvdyh0aGlzLmVkaXRvclZpZXcuc2lk
ZWJhckVsZW1lbnQpOwogCiAgICAgdGhpcy5fZWRpdG9yQ29udGFpbmVyID0gbmV3IFdlYkluc3Bl
Y3Rvci5UYWJiZWRFZGl0b3JDb250YWluZXIodGhpcywgInByZXZpb3VzbHlWaWV3ZWRGaWxlcyIp
OwogICAgIHRoaXMuX2VkaXRvckNvbnRhaW5lci5zaG93KHRoaXMuZWRpdG9yVmlldy5tYWluRWxl
bWVudCk7CiAgICAgV2ViSW5zcGVjdG9yLk9wZW5SZXNvdXJjZURpYWxvZy5pbnN0YWxsKHRoaXMs
IHRoaXMuX3ByZXNlbnRhdGlvbk1vZGVsLCB0aGlzLmVkaXRvclZpZXcubWFpbkVsZW1lbnQpOwog
Ci0gICAgdGhpcy5fbmF2aWdhdG9yQ29udHJvbGxlciA9IG5ldyBXZWJJbnNwZWN0b3IuU2NyaXB0
c05hdmlnYXRvckNvbnRyb2xsZXIodGhpcywgdGhpcy5lZGl0b3JWaWV3LCB0aGlzLl9uYXZpZ2F0
b3IsIHRoaXMuX2VkaXRvckNvbnRhaW5lcik7CisgICAgdGhpcy5fbmF2aWdhdG9yQ29udHJvbGxl
ciA9IG5ldyBXZWJJbnNwZWN0b3IuTmF2aWdhdG9yT3ZlcmxheUNvbnRyb2xsZXIodGhpcywgdGhp
cy5lZGl0b3JWaWV3LCB0aGlzLl9uYXZpZ2F0b3IudmlldywgdGhpcy5fZWRpdG9yQ29udGFpbmVy
LnZpZXcpOwogCiAgICAgdGhpcy5fbmF2aWdhdG9yLmFkZEV2ZW50TGlzdGVuZXIoV2ViSW5zcGVj
dG9yLlNjcmlwdHNOYXZpZ2F0b3IuRXZlbnRzLlNjcmlwdFNlbGVjdGVkLCB0aGlzLl9zY3JpcHRT
ZWxlY3RlZCwgdGhpcyk7CiAgICAgdGhpcy5fZWRpdG9yQ29udGFpbmVyLmFkZEV2ZW50TGlzdGVu
ZXIoV2ViSW5zcGVjdG9yLlRhYmJlZEVkaXRvckNvbnRhaW5lci5FdmVudHMuRWRpdG9yU2VsZWN0
ZWQsIHRoaXMuX2VkaXRvclNlbGVjdGVkLCB0aGlzKTsKQEAgLTE5Myw5ICsxOTMsOSBAQCBXZWJJ
bnNwZWN0b3IuU2NyaXB0c1BhbmVsLnByb3RvdHlwZSA9IHsKICAgICAgICAgcmV0dXJuIFt0aGlz
LmVuYWJsZVRvZ2dsZUJ1dHRvbi5lbGVtZW50LCB0aGlzLl9wYXVzZU9uRXhjZXB0aW9uQnV0dG9u
LmVsZW1lbnQsIHRoaXMuX3RvZ2dsZUZvcm1hdFNvdXJjZUJ1dHRvbi5lbGVtZW50LCB0aGlzLl9z
Y3JpcHRWaWV3U3RhdHVzQmFySXRlbXNDb250YWluZXJdOwogICAgIH0sCiAKLSAgICBnZXQgZGVm
YXVsdEZvY3VzZWRFbGVtZW50KCkKKyAgICBkZWZhdWx0Rm9jdXNlZEVsZW1lbnQ6IGZ1bmN0aW9u
KCkKICAgICB7Ci0gICAgICAgIHJldHVybiB0aGlzLl9uYXZpZ2F0b3IuZGVmYXVsdEZvY3VzZWRF
bGVtZW50OworICAgICAgICByZXR1cm4gdGhpcy5fbmF2aWdhdG9yLnZpZXcuZGVmYXVsdEZvY3Vz
ZWRFbGVtZW50KCk7CiAgICAgfSwKIAogICAgIGdldCBwYXVzZWQoKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TZXR0aW5ncy5qcyBiL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2V0dGluZ3MuanMKaW5kZXggNTg5YTZjZDk1MDBhZmU5
MGI5NTkzZTIxMDlkNmQ2ZWM0MWViYjNmZC4uNjRiMDc0YjM1NTlmZGVkMGU1YmU3OTM4OTBlZGY1
MDc2OWI2ODEzNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVu
ZC9TZXR0aW5ncy5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Nl
dHRpbmdzLmpzCkBAIC0xODgsNyArMTg4LDcgQEAgV2ViSW5zcGVjdG9yLkV4cGVyaW1lbnRzU2V0
dGluZ3MgPSBmdW5jdGlvbigpCiAKIFdlYkluc3BlY3Rvci5FeHBlcmltZW50c1NldHRpbmdzLnBy
b3RvdHlwZSA9IHsKICAgICAvKioKLSAgICAgKiBAdHlwZSB7QXJyYXkuPFdlYkluc3BlY3Rvci5F
eHBlcmltZW50Pn0KKyAgICAgKiBAcmV0dXJuIHtBcnJheS48V2ViSW5zcGVjdG9yLkV4cGVyaW1l
bnQ+fQogICAgICAqLwogICAgIGdldCBleHBlcmltZW50cygpCiAgICAgewpAQCAtMTk2LDcgKzE5
Niw3IEBAIFdlYkluc3BlY3Rvci5FeHBlcmltZW50c1NldHRpbmdzLnByb3RvdHlwZSA9IHsKICAg
ICB9LAogICAgIAogICAgIC8qKgotICAgICAqIEB0eXBlIHtib29sZWFufQorICAgICAqIEByZXR1
cm4ge2Jvb2xlYW59CiAgICAgICovCiAgICAgZ2V0IGV4cGVyaW1lbnRzRW5hYmxlZCgpCiAgICAg
ewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TaWRlYmFy
T3ZlcmxheS5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2lkZWJhck92
ZXJsYXkuanMKaW5kZXggMjQ2Nzg4ZWQyOWI0MDc2Y2VlZTlkYzQzODMxZGViMDY4Y2UwMjg1Yy4u
M2NkNThhM2FjMTc3ZDk3ZTY2Nzk4MDBmZDgwMTQ2OWNkZTNjNWVmNyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TaWRlYmFyT3ZlcmxheS5qcworKysgYi9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NpZGViYXJPdmVybGF5LmpzCkBAIC03
NCw4ICs3NCw4IEBAIFdlYkluc3BlY3Rvci5TaWRlYmFyT3ZlcmxheS5wcm90b3R5cGUgPSB7CiAg
ICAgICAgICAgICB0aGlzLmVsZW1lbnQuYXBwZW5kQ2hpbGQodGhpcy5fcmVzaXplcldpZGdldEVs
ZW1lbnQpOwogICAgICAgICB0aGlzLnBvc2l0aW9uKHJlbGF0aXZlVG9FbGVtZW50KTsKICAgICAg
ICAgdGhpcy5fYm91bmRDb250YWluaW5nRWxlbWVudEZvY3VzZWQgPSB0aGlzLl9jb250YWluaW5n
RWxlbWVudEZvY3VzZWQuYmluZCh0aGlzKTsKLSAgICAgICAgcmVsYXRpdmVUb0VsZW1lbnQuYWRk
RXZlbnRMaXN0ZW5lcigiRE9NRm9jdXNJbiIsIHRoaXMuX2JvdW5kQ29udGFpbmluZ0VsZW1lbnRG
b2N1c2VkLCBmYWxzZSk7Ci0gICAgICAgIAorICAgICAgICByZWxhdGl2ZVRvRWxlbWVudC5hZGRF
dmVudExpc3RlbmVyKCJtb3VzZWRvd24iLCB0aGlzLl9ib3VuZENvbnRhaW5pbmdFbGVtZW50Rm9j
dXNlZCwgZmFsc2UpOworCiAgICAgICAgIHRoaXMuZGlzcGF0Y2hFdmVudFRvTGlzdGVuZXJzKFdl
Ykluc3BlY3Rvci5TaWRlYmFyT3ZlcmxheS5FdmVudFR5cGVzLldhc1Nob3duLCBudWxsKTsKICAg
ICB9LAogCkBAIC0xMTMsNyArMTEzLDcgQEAgV2ViSW5zcGVjdG9yLlNpZGViYXJPdmVybGF5LnBy
b3RvdHlwZSA9IHsKICAgICAgICAgdGhpcy5lbGVtZW50LnJlbW92ZUNoaWxkKHRoaXMuX3Jlc2l6
ZXJFbGVtZW50KTsKICAgICAgICAgaWYgKHRoaXMuX3Jlc2l6ZXJXaWRnZXRFbGVtZW50KQogICAg
ICAgICAgICAgdGhpcy5lbGVtZW50LnJlbW92ZUNoaWxkKHRoaXMuX3Jlc2l6ZXJXaWRnZXRFbGVt
ZW50KTsKLSAgICAgICAgZWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJET01Gb2N1c0luIiwg
dGhpcy5fYm91bmRDb250YWluaW5nRWxlbWVudEZvY3VzZWQsIGZhbHNlKTsKKyAgICAgICAgZWxl
bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZWRvd24iLCB0aGlzLl9ib3VuZENvbnRhaW5p
bmdFbGVtZW50Rm9jdXNlZCwgZmFsc2UpOwogICAgIH0sCiAgICAgCiAgICAgLyoqCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NuaXBwZXRzTW9kZWwuanMg
Yi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NuaXBwZXRzTW9kZWwuanMKaW5k
ZXggNjhlOTJjNWQwZjg3YjA2MzY5OTU5MDkxNjhiN2FhNGE2NTVjYjExNy4uMDMyMWZjMmMyMWQ4
NjA1M2I1ZDVmNzgwMWVlMzcxMDI1MTlhNDQ1OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL2Zyb250LWVuZC9TbmlwcGV0c01vZGVsLmpzCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9mcm9udC1lbmQvU25pcHBldHNNb2RlbC5qcwpAQCAtNjAsNyArNjAsNyBAQCBX
ZWJJbnNwZWN0b3IuU25pcHBldHNNb2RlbC5wcm90b3R5cGUgPSB7CiAgICAgfSwKIAogICAgIC8q
KgotICAgICAqIEB0eXBlIHtBcnJheS48V2ViSW5zcGVjdG9yLlNuaXBwZXQ+fQorICAgICAqIEBy
ZXR1cm4ge0FycmF5LjxXZWJJbnNwZWN0b3IuU25pcHBldD59CiAgICAgICovCiAgICAgZ2V0IHNu
aXBwZXRzKCkKICAgICB7CkBAIC0yMTYsNyArMjE2LDcgQEAgV2ViSW5zcGVjdG9yLlNuaXBwZXQu
ZnJvbU9iamVjdCA9IGZ1bmN0aW9uKHNlcmlhbGl6ZWRTbmlwcGV0KQogCiBXZWJJbnNwZWN0b3Iu
U25pcHBldC5wcm90b3R5cGUgPSB7CiAgICAgLyoqCi0gICAgICogQHR5cGUge251bWJlcn0KKyAg
ICAgKiBAcmV0dXJuIHtzdHJpbmd9CiAgICAgICovCiAgICAgZ2V0IGlkKCkKICAgICB7CkBAIC0y
MjQsNyArMjI0LDcgQEAgV2ViSW5zcGVjdG9yLlNuaXBwZXQucHJvdG90eXBlID0gewogICAgIH0s
CiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7c3RyaW5nfQorICAgICAqIEByZXR1cm4ge3N0cmlu
Z30KICAgICAgKi8KICAgICBnZXQgbmFtZSgpCiAgICAgewpAQCAtMjQxLDcgKzI0MSw3IEBAIFdl
Ykluc3BlY3Rvci5TbmlwcGV0LnByb3RvdHlwZSA9IHsKICAgICB9LAogCiAgICAgLyoqCi0gICAg
ICogQHR5cGUge3N0cmluZ30KKyAgICAgKiBAcmV0dXJuIHtzdHJpbmd9CiAgICAgICovCiAgICAg
Z2V0IGNvbnRlbnQoKQogICAgIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9mcm9udC1lbmQvU291cmNlRnJhbWUuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL1NvdXJjZUZyYW1lLmpzCmluZGV4IDE4Zjc3MDc1M2I1MzM2MTI4ZWE4YmRjYTFjYWU0
MWZmNzIyNzA5ZTguLjY3ZTM1ZTdiY2M4NTkyMTE3ZDFkMTE2MTg5ZmMxMzhlZWE2MWU5OGUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU291cmNlRnJhbWUu
anMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Tb3VyY2VGcmFtZS5q
cwpAQCAtOTAsOSArOTAsOSBAQCBXZWJJbnNwZWN0b3IuU291cmNlRnJhbWUucHJvdG90eXBlID0g
ewogICAgICAgICB0aGlzLl9jbGVhckxpbmVUb1JldmVhbCgpOwogICAgIH0sCiAKLSAgICBmb2N1
czogZnVuY3Rpb24oKQorICAgIGRlZmF1bHRGb2N1c2VkRWxlbWVudDogZnVuY3Rpb24oKQogICAg
IHsKLSAgICAgICAgdGhpcy5fdGV4dFZpZXdlci5mb2N1cygpOworICAgICAgICByZXR1cm4gdGhp
cy5fdGV4dFZpZXdlci5kZWZhdWx0Rm9jdXNlZEVsZW1lbnQoKTsKICAgICB9LAogCiAgICAgZ2V0
IGxvYWRlZCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5k
L1NwbGl0Vmlldy5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU3BsaXRW
aWV3LmpzCmluZGV4IDVjNWNmMTc4MzBkOGEzYzU4ODM0ODkyMDM2NDkzZDY0OWY5NzY0NDAuLjk4
NjY2ZTUzNmFiMWQzN2QwNTYxZGEwY2I4ZGY5ZjM4YjhkMTBiNDggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU3BsaXRWaWV3LmpzCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU3BsaXRWaWV3LmpzCkBAIC04Niw3ICs4Niw3IEBA
IFdlYkluc3BlY3Rvci5TcGxpdFZpZXcuU2lkZWJhclBvc2l0aW9uID0gewogCiBXZWJJbnNwZWN0
b3IuU3BsaXRWaWV3LnByb3RvdHlwZSA9IHsKICAgICAvKioKLSAgICAgKiBAdHlwZSB7Ym9vbGVh
bn0KKyAgICAgKiBAcmV0dXJuIHtib29sZWFufQogICAgICAqLwogICAgIGdldCBoYXNMZWZ0U2lk
ZWJhcigpCiAgICAgewpAQCAtOTQsNyArOTQsNyBAQCBXZWJJbnNwZWN0b3IuU3BsaXRWaWV3LnBy
b3RvdHlwZSA9IHsKICAgICB9LAogCiAgICAgLyoqCi0gICAgICogQHR5cGUge0VsZW1lbnR9Cisg
ICAgICogQHJldHVybiB7RWxlbWVudH0KICAgICAgKi8KICAgICBnZXQgbWFpbkVsZW1lbnQoKQog
ICAgIHsKQEAgLTEwMiw3ICsxMDIsNyBAQCBXZWJJbnNwZWN0b3IuU3BsaXRWaWV3LnByb3RvdHlw
ZSA9IHsKICAgICB9LAogCiAgICAgLyoqCi0gICAgICogQHR5cGUge0VsZW1lbnR9CisgICAgICog
QHJldHVybiB7RWxlbWVudH0KICAgICAgKi8KICAgICBnZXQgc2lkZWJhckVsZW1lbnQoKQogICAg
IHsKQEAgLTExMCw3ICsxMTAsNyBAQCBXZWJJbnNwZWN0b3IuU3BsaXRWaWV3LnByb3RvdHlwZSA9
IHsKICAgICB9LAogCiAgICAgLyoqCi0gICAgICogQHR5cGUge2Jvb2xlYW59CisgICAgICogQHJl
dHVybiB7Ym9vbGVhbn0KICAgICAgKi8KICAgICBnZXQgcmVzaXphYmxlKCkKICAgICB7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1N0eWxlc1BhbmVsLmpz
IGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TdHlsZXNQYW5lbC5qcwppbmRl
eCA0NzViZjY5Njk3Zjc0M2I1NmU0NmYxZTdjM2I5M2IyNmUyOWU3NzdiLi5hODg3Y2VmZWQzMDUz
YWNlMWVjNzI3ODk0MjhkYzFmYjlkMjMyNzE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9p
bnNwZWN0b3IvZnJvbnQtZW5kL1N0eWxlc1BhbmVsLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9mcm9udC1lbmQvU3R5bGVzUGFuZWwuanMKQEAgLTQ5LDEzICs0OSwxMyBAQCBXZWJJ
bnNwZWN0b3IuU3R5bGVzUGFuZWwgPSBmdW5jdGlvbigpCiAKICAgICB0aGlzLl9uYXZpZ2F0b3Ig
PSBuZXcgV2ViSW5zcGVjdG9yLlNjcmlwdHNOYXZpZ2F0b3IoKTsKICAgICB0aGlzLl9uYXZpZ2F0
b3JWaWV3ID0gdGhpcy5fbmF2aWdhdG9yLnZpZXc7Ci0gICAgdGhpcy5fbmF2aWdhdG9yLnNob3co
dGhpcy5fbWFpblZpZXcuc2lkZWJhckVsZW1lbnQpOworICAgIHRoaXMuX25hdmlnYXRvci52aWV3
LnNob3codGhpcy5fbWFpblZpZXcuc2lkZWJhckVsZW1lbnQpOwogICAgIHRoaXMuX25hdmlnYXRv
ci5hZGRFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5TY3JpcHRzTmF2aWdhdG9yLkV2ZW50cy5T
Y3JpcHRTZWxlY3RlZCwgdGhpcy5fc2NyaXB0U2VsZWN0ZWQsIHRoaXMpOwogCiAgICAgdGhpcy5f
ZWRpdG9yQ29udGFpbmVyID0gbmV3IFdlYkluc3BlY3Rvci5UYWJiZWRFZGl0b3JDb250YWluZXIo
dGhpcywgInByZXZpb3VzbHlWaWV3ZWRDU1NGaWxlcyIpOwogICAgIHRoaXMuX2VkaXRvckNvbnRh
aW5lci5zaG93KHRoaXMuX21haW5WaWV3Lm1haW5FbGVtZW50KTsKIAotICAgIHRoaXMuX25hdmln
YXRvckNvbnRyb2xsZXIgPSBuZXcgV2ViSW5zcGVjdG9yLlNjcmlwdHNOYXZpZ2F0b3JDb250cm9s
bGVyKHRoaXMsIHRoaXMuX21haW5WaWV3LCB0aGlzLl9uYXZpZ2F0b3IsIHRoaXMuX2VkaXRvckNv
bnRhaW5lcik7CisgICAgdGhpcy5fbmF2aWdhdG9yQ29udHJvbGxlciA9IG5ldyBXZWJJbnNwZWN0
b3IuTmF2aWdhdG9yT3ZlcmxheUNvbnRyb2xsZXIodGhpcywgdGhpcy5fbWFpblZpZXcsIHRoaXMu
X25hdmlnYXRvci52aWV3LCB0aGlzLl9lZGl0b3JDb250YWluZXIudmlldyk7CiAKICAgICB0aGlz
Ll9zb3VyY2VGcmFtZXNGb3JSZXNvdXJjZSA9IG5ldyBNYXAoKTsKICAgICB0aGlzLl91cmxUb1Jl
c291cmNlID0ge307CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQt
ZW5kL1RhYmJlZEVkaXRvckNvbnRhaW5lci5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9m
cm9udC1lbmQvVGFiYmVkRWRpdG9yQ29udGFpbmVyLmpzCmluZGV4IDM2OTY1N2FhMzRlZTY5ZGY1
OTM0ZGY2YjVmOWZmNjhkNTg4NDcxM2QuLmU5MWFhN2E4NzIzMWNkZTJiMDZjMDllODU4ZDdkNGNm
NTYwM2IyN2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQv
VGFiYmVkRWRpdG9yQ29udGFpbmVyLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9m
cm9udC1lbmQvVGFiYmVkRWRpdG9yQ29udGFpbmVyLmpzCkBAIC03NiwxOSArNzYsMTkgQEAgV2Vi
SW5zcGVjdG9yLlRhYmJlZEVkaXRvckNvbnRhaW5lci5tYXhpbWFsUHJldmlvdXNseVZpZXdlZEZp
bGVzQ291bnQgPSAzMDsKIAogV2ViSW5zcGVjdG9yLlRhYmJlZEVkaXRvckNvbnRhaW5lci5wcm90
b3R5cGUgPSB7CiAgICAgLyoqCi0gICAgICogQHR5cGUge1dlYkluc3BlY3Rvci5Tb3VyY2VGcmFt
ZX0KKyAgICAgKiBAcmV0dXJuIHtXZWJJbnNwZWN0b3IuVmlld30KICAgICAgKi8KLSAgICBnZXQg
dmlzaWJsZVZpZXcoKQorICAgIGdldCB2aWV3KCkKICAgICB7Ci0gICAgICAgIHJldHVybiB0aGlz
Ll90YWJiZWRQYW5lLnZpc2libGVWaWV3OworICAgICAgICByZXR1cm4gdGhpcy5fdGFiYmVkUGFu
ZTsKICAgICB9LAogCiAgICAgLyoqCi0gICAgICogQHR5cGUge0VsZW1lbnR9CisgICAgICogQHJl
dHVybiB7V2ViSW5zcGVjdG9yLlZpZXd9CiAgICAgICovCi0gICAgZ2V0IGVsZW1lbnQoKQorICAg
IGdldCB2aXNpYmxlVmlldygpCiAgICAgewotICAgICAgICByZXR1cm4gdGhpcy5fdGFiYmVkUGFu
ZS5lbGVtZW50OworICAgICAgICByZXR1cm4gdGhpcy5fdGFiYmVkUGFuZS52aXNpYmxlVmlldzsK
ICAgICB9LAogCiAgICAgLyoqCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
ZnJvbnQtZW5kL1RhYmJlZFBhbmUuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQt
ZW5kL1RhYmJlZFBhbmUuanMKaW5kZXggMDk1Y2E0N2M0NTJmY2RiYzgwODU4YjAzODRjMDIyNDFj
NGNkZWQyNC4uZGE2OTRlNDE0MTJlNzg2ODQ1ODcyYjE5MGZmNTBkMTM1ZWNjNzU1YyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UYWJiZWRQYW5lLmpzCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVGFiYmVkUGFuZS5qcwpAQCAt
NDQsNiArNDQsNyBAQCBXZWJJbnNwZWN0b3IuVGFiYmVkUGFuZSA9IGZ1bmN0aW9uKCkKICAgICB0
aGlzLl90YWJzID0gW107CiAgICAgdGhpcy5fdGFic0hpc3RvcnkgPSBbXTsKICAgICB0aGlzLl90
YWJzQnlJZCA9IHt9OworICAgIHRoaXMuZWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIs
IHRoaXMuZm9jdXMuYmluZCh0aGlzKSwgZmFsc2UpOwogCiAgICAgdGhpcy5fZHJvcERvd25CdXR0
b24gPSB0aGlzLl9jcmVhdGVEcm9wRG93bkJ1dHRvbigpOwogfQpAQCAtNTUsNyArNTYsNyBAQCBX
ZWJJbnNwZWN0b3IuVGFiYmVkUGFuZS5FdmVudFR5cGVzID0gewogCiBXZWJJbnNwZWN0b3IuVGFi
YmVkUGFuZS5wcm90b3R5cGUgPSB7CiAgICAgLyoqCi0gICAgICogQHR5cGUge1dlYkluc3BlY3Rv
ci5WaWV3fQorICAgICAqIEByZXR1cm4ge1dlYkluc3BlY3Rvci5WaWV3fQogICAgICAqLwogICAg
IGdldCB2aXNpYmxlVmlldygpCiAgICAgewpAQCAtNjMsNyArNjQsNyBAQCBXZWJJbnNwZWN0b3Iu
VGFiYmVkUGFuZS5wcm90b3R5cGUgPSB7CiAgICAgfSwKIAogICAgIC8qKgotICAgICAqIEB0eXBl
IHtzdHJpbmd9CisgICAgICogQHJldHVybiB7c3RyaW5nfQogICAgICAqLwogICAgIGdldCBzZWxl
Y3RlZFRhYklkKCkKICAgICB7CkBAIC04NiwxNCArODcsOSBAQCBXZWJJbnNwZWN0b3IuVGFiYmVk
UGFuZS5wcm90b3R5cGUgPSB7CiAgICAgICAgIHRoaXMuX2Nsb3NlYWJsZVRhYnMgPSBjbG9zZWFi
bGVUYWJzOwogICAgIH0sCiAKLSAgICBmb2N1czogZnVuY3Rpb24oKQorICAgIGRlZmF1bHRGb2N1
c2VkRWxlbWVudDogZnVuY3Rpb24oKQogICAgIHsKLSAgICAgICAgaWYgKCF0aGlzLnZpc2libGVW
aWV3KQotICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICBpZiAodHlwZW9mKHRoaXMudmlzaWJs
ZVZpZXcuZm9jdXMpID09PSAiZnVuY3Rpb24iKQotICAgICAgICAgICAgdGhpcy52aXNpYmxlVmll
dy5mb2N1cygpOwotICAgICAgICBlbHNlCi0gICAgICAgICAgICB0aGlzLnZpc2libGVWaWV3LmVs
ZW1lbnQuZm9jdXMoKTsKKyAgICAgICAgcmV0dXJuIHRoaXMudmlzaWJsZVZpZXcgPyB0aGlzLnZp
c2libGVWaWV3LmRlZmF1bHRGb2N1c2VkRWxlbWVudCgpIDogbnVsbDsKICAgICB9LAogCiAgICAg
LyoqCkBAIC00OTgsMTEgKzQ5NCwxMyBAQCBXZWJJbnNwZWN0b3IuVGFiYmVkUGFuZVRhYiA9IGZ1
bmN0aW9uKHRhYmJlZFBhbmUsIG1lYXN1cmVFbGVtZW50LCBpZCwgdGl0bGUsIGNsbwogICAgIHRo
aXMuX3Rvb2x0aXAgPSB0b29sdGlwOwogICAgIHRoaXMuX3ZpZXcgPSB2aWV3OwogICAgIHRoaXMu
c2hvd24gPSBmYWxzZTsKKyAgICAvKiogQHR5cGUge251bWJlcn0gKi8gdGhpcy5fbWVhc3VyZWRX
aWR0aDsKKyAgICAvKiogQHR5cGUge0VsZW1lbnR9ICovIHRoaXMuX3RhYkVsZW1lbnQ7CiB9CiAK
IFdlYkluc3BlY3Rvci5UYWJiZWRQYW5lVGFiLnByb3RvdHlwZSA9IHsKICAgICAvKioKLSAgICAg
KiBAdHlwZSB7c3RyaW5nfQorICAgICAqIEByZXR1cm4ge3N0cmluZ30KICAgICAgKi8KICAgICBn
ZXQgaWQoKQogICAgIHsKQEAgLTUxMCw3ICs1MDgsNyBAQCBXZWJJbnNwZWN0b3IuVGFiYmVkUGFu
ZVRhYi5wcm90b3R5cGUgPSB7CiAgICAgfSwKIAogICAgIC8qKgotICAgICAqIEB0eXBlIHtzdHJp
bmd9CisgICAgICogQHJldHVybiB7c3RyaW5nfQogICAgICAqLwogICAgIGdldCB0aXRsZSgpCiAg
ICAgewpAQCAtNTI2LDcgKzUyNCw3IEBAIFdlYkluc3BlY3Rvci5UYWJiZWRQYW5lVGFiLnByb3Rv
dHlwZSA9IHsKICAgICB9LAogCiAgICAgLyoqCi0gICAgICogQHR5cGUge1dlYkluc3BlY3Rvci5W
aWV3fQorICAgICAqIEByZXR1cm4ge1dlYkluc3BlY3Rvci5WaWV3fQogICAgICAqLwogICAgIGdl
dCB2aWV3KCkKICAgICB7CkBAIC01MzksNyArNTM3LDcgQEAgV2ViSW5zcGVjdG9yLlRhYmJlZFBh
bmVUYWIucHJvdG90eXBlID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7c3Ry
aW5nfHVuZGVmaW5lZH0KKyAgICAgKiBAcmV0dXJuIHtzdHJpbmd8dW5kZWZpbmVkfQogICAgICAq
LwogICAgIGdldCB0b29sdGlwKCkKICAgICB7CkBAIC01NTQsNyArNTUyLDcgQEAgV2ViSW5zcGVj
dG9yLlRhYmJlZFBhbmVUYWIucHJvdG90eXBlID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAg
KiBAdHlwZSB7RWxlbWVudH0KKyAgICAgKiBAcmV0dXJuIHtFbGVtZW50fQogICAgICAqLwogICAg
IGdldCB0YWJFbGVtZW50KCkKICAgICB7CkBAIC01NjYsNyArNTY0LDcgQEAgV2ViSW5zcGVjdG9y
LlRhYmJlZFBhbmVUYWIucHJvdG90eXBlID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBA
dHlwZSB7bnVtYmVyfQorICAgICAqIEByZXR1cm4ge251bWJlcn0KICAgICAgKi8KICAgICBnZXQg
bWVhc3VyZWRXaWR0aCgpCiAgICAgewpAQCAtNTc4LDcgKzU3Niw3IEBAIFdlYkluc3BlY3Rvci5U
YWJiZWRQYW5lVGFiLnByb3RvdHlwZSA9IHsKICAgICB9LAogCiAgICAgLyoqCi0gICAgICogQHR5
cGUge251bWJlcn0KKyAgICAgKiBAcmV0dXJuIHtudW1iZXJ9CiAgICAgICovCiAgICAgZ2V0IHdp
ZHRoKCkKICAgICB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQt
ZW5kL1RleHRFZGl0b3JNb2RlbC5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1l
bmQvVGV4dEVkaXRvck1vZGVsLmpzCmluZGV4IGZjYjRkMmNlYTg1MWVmZTMyNTM2YWUyYjljMWY3
OWYzNWM1ZjhhNzEuLjZiZDk3NGIwMTk5Nzk0ODYzNzRhNzg4YjZjNTE4YTU4YmZiOWI5NzkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVGV4dEVkaXRvck1v
ZGVsLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVGV4dEVkaXRv
ck1vZGVsLmpzCkBAIC01Myw3ICs1Myw3IEBAIFdlYkluc3BlY3Rvci5UZXh0UmFuZ2UucHJvdG90
eXBlID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7bnVtYmVyfQorICAgICAq
IEByZXR1cm4ge251bWJlcn0KICAgICAgKi8KICAgICBnZXQgbGluZXNDb3VudCgpCiAgICAgewpA
QCAtMTI1LDcgKzEyNSw3IEBAIFdlYkluc3BlY3Rvci5UZXh0RWRpdG9yTW9kZWwuZW5kc1dpdGhC
cmFja2V0UmVnZXggPSAvW3soXFtdXHMqJC87CiAKIFdlYkluc3BlY3Rvci5UZXh0RWRpdG9yTW9k
ZWwucHJvdG90eXBlID0gewogICAgIC8qKgotICAgICAqIEB0eXBlIHtudW1iZXJ9CisgICAgICog
QHJldHVybiB7bnVtYmVyfQogICAgICAqLwogICAgIGdldCBsaW5lc0NvdW50KCkKICAgICB7CkBA
IC0xMzMsNyArMTMzLDcgQEAgV2ViSW5zcGVjdG9yLlRleHRFZGl0b3JNb2RlbC5wcm90b3R5cGUg
PSB7CiAgICAgfSwKIAogICAgIC8qKgotICAgICAqIEB0eXBlIHtzdHJpbmd9CisgICAgICogQHJl
dHVybiB7c3RyaW5nfQogICAgICAqLwogICAgIGdldCB0ZXh0KCkKICAgICB7CkBAIC0xNDEsNyAr
MTQxLDcgQEAgV2ViSW5zcGVjdG9yLlRleHRFZGl0b3JNb2RlbC5wcm90b3R5cGUgPSB7CiAgICAg
fSwKIAogICAgIC8qKgotICAgICAqIEB0eXBlIHtzdHJpbmd9CisgICAgICogQHJldHVybiB7c3Ry
aW5nfQogICAgICAqLwogICAgIGdldCBsaW5lQnJlYWsoKQogICAgIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVGV4dFZpZXdlci5qcyBiL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVGV4dFZpZXdlci5qcwppbmRleCAwZTZjNTA0MjVh
MjczYTY5ZjVkYjRhNjY5Yjg4NjA0NGYwMTMwMzIzLi5lNGIxMjU2MmVhYmVlYWJmZTQ0YTU2MjQ5
MWUwZmQ2ZjM2YTY5NTZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL1RleHRWaWV3ZXIuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250
LWVuZC9UZXh0Vmlld2VyLmpzCkBAIC05OCw5ICs5OCw5IEBAIFdlYkluc3BlY3Rvci5UZXh0Vmll
d2VyLnByb3RvdHlwZSA9IHsKICAgICAgICAgcmV0dXJuIHRoaXMuX3RleHRNb2RlbDsKICAgICB9
LAogCi0gICAgZm9jdXM6IGZ1bmN0aW9uKCkKKyAgICBkZWZhdWx0Rm9jdXNlZEVsZW1lbnQ6IGZ1
bmN0aW9uKCkKICAgICB7Ci0gICAgICAgIHRoaXMuX21haW5QYW5lbC5mb2N1cygpOworICAgICAg
ICByZXR1cm4gdGhpcy5fbWFpblBhbmVsLmRlZmF1bHRGb2N1c2VkRWxlbWVudCgpOwogICAgIH0s
CiAKICAgICByZXZlYWxMaW5lOiBmdW5jdGlvbihsaW5lTnVtYmVyKQpAQCAtOTU5LDEyICs5NTks
MTEgQEAgV2ViSW5zcGVjdG9yLlRleHRFZGl0b3JNYWluUGFuZWwucHJvdG90eXBlID0gewogICAg
ICAgICAgICAgdGhpcy5fY29udGFpbmVyLmZvY3VzKCk7CiAgICAgfSwKIAotICAgIGZvY3VzOiBm
dW5jdGlvbigpCisgICAgZGVmYXVsdEZvY3VzZWRFbGVtZW50OiBmdW5jdGlvbigpCiAgICAgewog
ICAgICAgICBpZiAodGhpcy5fcmVhZE9ubHkpCi0gICAgICAgICAgICB0aGlzLmVsZW1lbnQuZm9j
dXMoKTsKLSAgICAgICAgZWxzZQotICAgICAgICAgICAgdGhpcy5fY29udGFpbmVyLmZvY3VzKCk7
CisgICAgICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50OworICAgICAgICByZXR1cm4gdGhpcy5f
Y29udGFpbmVyOwogICAgIH0sCiAKICAgICBfdXBkYXRlU2VsZWN0aW9uT25TdGFydEVkaXRpbmc6
IGZ1bmN0aW9uKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1l
bmQvVGltZWxpbmVQYW5lbC5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQv
VGltZWxpbmVQYW5lbC5qcwppbmRleCBmYjcwN2Y2OTgyYmUwOGMyZTRlOGM4NTAwYTAxZGJiYmZi
YmU0NmI0Li4yOThmNWZhMmNjYTYzMDMyMzA4MjY4ZjRiNjQ1ZmE4NDlhOGMwZWQwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1RpbWVsaW5lUGFuZWwuanMK
KysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UaW1lbGluZVBhbmVsLmpz
CkBAIC0xOTMsNyArMTkzLDcgQEAgV2ViSW5zcGVjdG9yLlRpbWVsaW5lUGFuZWwucHJvdG90eXBl
ID0gewogICAgICAgICByZXR1cm4gc3RhdHVzQmFySXRlbXM7CiAgICAgfSwKIAotICAgIGdldCBk
ZWZhdWx0Rm9jdXNlZEVsZW1lbnQoKQorICAgIGRlZmF1bHRGb2N1c2VkRWxlbWVudDogZnVuY3Rp
b24oKQogICAgIHsKICAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudDsKICAgICB9LApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UaW1lbGluZVByZXNlbnRh
dGlvbk1vZGVsLmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UaW1lbGlu
ZVByZXNlbnRhdGlvbk1vZGVsLmpzCmluZGV4IDU5NWQwNjg4ODNlOGM3NWIwZTY0ZmYzYzJhNDNj
YzM4NTNiOWIzY2QuLjRhNmFlZDI4NWRkYjE1ZWJjMDRhZGMxZjBjYzg5MDZmMWZlNmRiMjkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVGltZWxpbmVQcmVz
ZW50YXRpb25Nb2RlbC5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5k
L1RpbWVsaW5lUHJlc2VudGF0aW9uTW9kZWwuanMKQEAgLTc4NCw3ICs3ODQsNyBAQCBXZWJJbnNw
ZWN0b3IuVGltZWxpbmVDYXRlZ29yeS5FdmVudHMgPSB7CiAKIFdlYkluc3BlY3Rvci5UaW1lbGlu
ZUNhdGVnb3J5LnByb3RvdHlwZSA9IHsKICAgICAvKioKLSAgICAgKiBAdHlwZSB7Ym9vbGVhbn0K
KyAgICAgKiBAcmV0dXJuIHtib29sZWFufQogICAgICAqLwogICAgIGdldCBoaWRkZW4oKQogICAg
IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVmlldy5q
cyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVmlldy5qcwppbmRleCA0Njhl
ZTNlM2YxNzg1MjhjYmVlMDU3NzQ3ZGU4YzA0MGNlYTc3MDllLi45MWNiMjg3YzBkNTcyMjU2MDIz
N2JjMmE5YWUwMWMxYWUzY2E5ZmUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvZnJvbnQtZW5kL1ZpZXcuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250
LWVuZC9WaWV3LmpzCkBAIC0zMzMsNiArMzMzLDMxIEBAIFdlYkluc3BlY3Rvci5WaWV3LnByb3Rv
dHlwZSA9IHsKIAogICAgICAgICBpZiAodGhpcy5fY2hpbGRyZW4ubGVuZ3RoKQogICAgICAgICAg
ICAgbGluZXMucHVzaChwcmVmaXggKyAifSIpOworICAgIH0sCisKKyAgICAvKioKKyAgICAgKiBA
cmV0dXJuIHtFbGVtZW50fQorICAgICAqLworICAgIGRlZmF1bHRGb2N1c2VkRWxlbWVudDogZnVu
Y3Rpb24oKQorICAgIHsKKyAgICAgICAgcmV0dXJuIHRoaXMuX2RlZmF1bHRGb2N1c2VkRWxlbWVu
dCB8fCB0aGlzLmVsZW1lbnQ7CisgICAgfSwKKworICAgIC8qKgorICAgICAqIEBwYXJhbSB7RWxl
bWVudH0gZWxlbWVudAorICAgICAqLworICAgIHNldERlZmF1bHRGb2N1c2VkRWxlbWVudDogZnVu
Y3Rpb24oZWxlbWVudCkKKyAgICB7CisgICAgICAgIHRoaXMuX2RlZmF1bHRGb2N1c2VkRWxlbWVu
dCA9IGVsZW1lbnQ7CisgICAgfSwKKworICAgIGZvY3VzOiBmdW5jdGlvbigpCisgICAgeworICAg
ICAgICB2YXIgZWxlbWVudCA9IHRoaXMuZGVmYXVsdEZvY3VzZWRFbGVtZW50KCk7CisgICAgICAg
IGlmICghZWxlbWVudCB8fCBlbGVtZW50LmlzQW5jZXN0b3IoZG9jdW1lbnQuYWN0aXZlRWxlbWVu
dCkpCisgICAgICAgICAgICByZXR1cm47CisKKyAgICAgICAgV2ViSW5zcGVjdG9yLnNldEN1cnJl
bnRGb2N1c0VsZW1lbnQoZWxlbWVudCk7CiAgICAgfQogfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>137931</attachid>
            <date>2012-04-19 11:19:53 -0700</date>
            <delta_ts>2012-04-19 11:23:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-84362-20120419221951.patch</filename>
            <type>text/plain</type>
            <size>23645</size>
            <attacher name="Pavel Feldman">pfeldman</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE0NjQxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWYzM2Q5OWY2NTIwMTE0
ZjMyYTk3NzNlNmI2ODFiMTI3NzZmNjU0My4uNThiOWNiNTZmMzM1MmNkMzExYzYzNTI5YTY0NmNm
NTIzMzJmMzExNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDMyIEBACiAyMDEyLTA0LTE5ICBQYXZl
bCBGZWxkbWFuICA8cGZlbGRtYW5AY2hyb21pdW0ub3JnPgogCisgICAgICAgIFdlYiBJbnNwZWN0
b3I6IHJlcGxhY2UgQHR5cGUgYW5ub3RhdGlvbiB3aXRoIEByZXR1cm4gYW5ub3RhdGlvbiBmb3Ig
Z2V0dGVycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
ODQzNjIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBP
dGhlcndpc2UsIGNvbXBpbGVyIGRvZXMgbm90IGNoZWNrIGZvciBlcnJvcnMuCisKKyAgICAgICAg
KiBpbnNwZWN0b3IvZnJvbnQtZW5kL0FkdmFuY2VkU2VhcmNoQ29udHJvbGxlci5qczoKKyAgICAg
ICAgKFdlYkluc3BlY3Rvci5TZWFyY2hWaWV3LnByb3RvdHlwZS5nZXQgc2VhcmNoQ29uZmlnKToK
KyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL0JyZWFrcG9pbnRNYW5hZ2VyLmpzOgorICAg
ICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvTmV0d29ya1JlcXVlc3QuanM6CisgICAgICAgIChX
ZWJJbnNwZWN0b3IuTmV0d29ya1JlcXVlc3QucHJvdG90eXBlLnJlcXVlc3RDb250ZW50KToKKyAg
ICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL1Jlc291cmNlVHJlZU1vZGVsLmpzOgorICAgICAg
ICAoV2ViSW5zcGVjdG9yLlJlc291cmNlVHJlZUZyYW1lKToKKyAgICAgICAgKFdlYkluc3BlY3Rv
ci5SZXNvdXJjZVRyZWVGcmFtZS5wcm90b3R5cGUuX25hdmlnYXRlKToKKyAgICAgICAgKiBpbnNw
ZWN0b3IvZnJvbnQtZW5kL1NjcmlwdHNOYXZpZ2F0b3IuanM6CisgICAgICAgICogaW5zcGVjdG9y
L2Zyb250LWVuZC9TZXR0aW5ncy5qczoKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL1Nu
aXBwZXRzTW9kZWwuanM6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9TcGxpdFZpZXcu
anM6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9UYWJiZWRFZGl0b3JDb250YWluZXIu
anM6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9UYWJiZWRQYW5lLmpzOgorICAgICAg
ICAoV2ViSW5zcGVjdG9yLlRhYmJlZFBhbmVUYWIpOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9u
dC1lbmQvVGV4dEVkaXRvck1vZGVsLmpzOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQv
VGltZWxpbmVQcmVzZW50YXRpb25Nb2RlbC5qczoKKworMjAxMi0wNC0xOSAgUGF2ZWwgRmVsZG1h
biAgPHBmZWxkbWFuQGNocm9taXVtLm9yZz4KKwogICAgICAgICBXZWIgSW5zcGVjdG9yOiBtYWtl
IFNjcmlwdE5hdmlnYXRvckNvbnRyb2xsZXIgdXNlIHZpZXdzIG9ubHksIHJlbmFtZSB0byBOYXZp
Z2F0b3JPdmVybGF5Q29udHJvbGxlci4KICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTg0MzUyCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9mcm9udC1lbmQvQWR2YW5jZWRTZWFyY2hDb250cm9sbGVyLmpzIGIvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9BZHZhbmNlZFNlYXJjaENvbnRyb2xsZXIuanMKaW5kZXgg
ZDg0NjQxM2NlOTM2MzUwYWQ4ODA3NTRmZThkYWQxYzUwZWU3YzE4Yy4uNjFiMWIzYTgwZmQwZjA2
YmY5YTNhODNjNzllMWViYTUwMDU5YWM0ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL2Zyb250LWVuZC9BZHZhbmNlZFNlYXJjaENvbnRyb2xsZXIuanMKKysrIGIvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9BZHZhbmNlZFNlYXJjaENvbnRyb2xsZXIuanMK
QEAgLTIyOCw3ICsyMjgsNyBAQCBXZWJJbnNwZWN0b3IuU2VhcmNoVmlldy5tYXhRdWVyaWVzQ291
bnQgPSAyMDsKIAogV2ViSW5zcGVjdG9yLlNlYXJjaFZpZXcucHJvdG90eXBlID0gewogICAgIC8q
KgotICAgICAqIEB0eXBlIHtBcnJheS48RWxlbWVudD59CisgICAgICogQHJldHVybiB7QXJyYXku
PEVsZW1lbnQ+fQogICAgICAqLwogICAgIGdldCBzdGF0dXNCYXJJdGVtcygpCiAgICAgewpAQCAt
MjM2LDcgKzIzNiw3IEBAIFdlYkluc3BlY3Rvci5TZWFyY2hWaWV3LnByb3RvdHlwZSA9IHsKICAg
ICB9LAogCiAgICAgLyoqCi0gICAgICogQHR5cGUge0VsZW1lbnR9CisgICAgICogQHJldHVybiB7
RWxlbWVudH0KICAgICAgKi8KICAgICBnZXQgY291bnRlckVsZW1lbnQoKQogICAgIHsKQEAgLTI0
NCwxNSArMjQ0LDExIEBAIFdlYkluc3BlY3Rvci5TZWFyY2hWaWV3LnByb3RvdHlwZSA9IHsKICAg
ICB9LAogCiAgICAgLyoqCi0gICAgICogQHR5cGUge1dlYkluc3BlY3Rvci5TZWFyY2hDb25maWd9
CisgICAgICogQHJldHVybiB7V2ViSW5zcGVjdG9yLlNlYXJjaENvbmZpZ30KICAgICAgKi8KICAg
ICBnZXQgc2VhcmNoQ29uZmlnKCkKICAgICB7Ci0gICAgICAgIHZhciBzZWFyY2hDb25maWcgPSB7
fTsKLSAgICAgICAgc2VhcmNoQ29uZmlnLnF1ZXJ5ID0gdGhpcy5fc2VhcmNoLnZhbHVlOwotICAg
ICAgICBzZWFyY2hDb25maWcuaWdub3JlQ2FzZSA9IHRoaXMuX2lnbm9yZUNhc2VDaGVja2JveC5j
aGVja2VkOwotICAgICAgICBzZWFyY2hDb25maWcuaXNSZWdleCA9IHRoaXMuX3JlZ2V4Q2hlY2ti
b3guY2hlY2tlZDsKLSAgICAgICAgcmV0dXJuIHNlYXJjaENvbmZpZzsKKyAgICAgICAgcmV0dXJu
IG5ldyBXZWJJbnNwZWN0b3IuU2VhcmNoQ29uZmlnKHRoaXMuX3NlYXJjaC52YWx1ZSwgdGhpcy5f
aWdub3JlQ2FzZUNoZWNrYm94LmNoZWNrZWQsIHRoaXMuX3JlZ2V4Q2hlY2tib3guY2hlY2tlZCk7
CiAgICAgfSwKICAgICAKICAgICAvKioKQEAgLTQ2Nyw3ICs0NjMsNyBAQCBXZWJJbnNwZWN0b3Iu
U2VhcmNoUmVzdWx0c1BhbmUgPSBmdW5jdGlvbihzZWFyY2hDb25maWcpCiAKIFdlYkluc3BlY3Rv
ci5TZWFyY2hSZXN1bHRzUGFuZS5wcm90b3R5cGUgPSB7CiAgICAgLyoqCi0gICAgICogQHR5cGUg
e1dlYkluc3BlY3Rvci5TZWFyY2hDb25maWd9CisgICAgICogQHJldHVybiB7V2ViSW5zcGVjdG9y
LlNlYXJjaENvbmZpZ30KICAgICAgKi8KICAgICBnZXQgc2VhcmNoQ29uZmlnKCkKICAgICB7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0JyZWFrcG9pbnRN
YW5hZ2VyLmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9CcmVha3BvaW50
TWFuYWdlci5qcwppbmRleCBlNzMwMWY3NGY4ZDVjZWVhNjdmNDVlNTI2N2NmODk0MjA0YWQ1NmFk
Li5jMmUxMGMyNGY5NjA4MGZjOTQwMDQ5ZGQ1NjhlMmVmMDllMTVlNTlmIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0JyZWFrcG9pbnRNYW5hZ2VyLmpzCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvQnJlYWtwb2ludE1hbmFnZXIu
anMKQEAgLTQxMyw3ICs0MTMsNyBAQCBXZWJJbnNwZWN0b3IuQnJlYWtwb2ludC5wcm90b3R5cGUg
PSB7CiAgICAgfSwKIAogICAgIC8qKgotICAgICAqIEB0eXBlIHtXZWJJbnNwZWN0b3IuVUlCcmVh
a3BvaW50fQorICAgICAqIEByZXR1cm4ge1dlYkluc3BlY3Rvci5VSUJyZWFrcG9pbnR9CiAgICAg
ICovCiAgICAgZ2V0IHVpQnJlYWtwb2ludCgpCiAgICAgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9OZXR3b3JrUmVxdWVzdC5qcyBiL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9mcm9udC1lbmQvTmV0d29ya1JlcXVlc3QuanMKaW5kZXggYzk3MWIyYmZj
NTE0OTUyNGU2ZTVjNTEwMDM0YWZlNDczYjcwMDNiNC4uOTQ5YjY0ZGI2NjMzY2IzYjE5Y2Y0OWNm
MDkyNDk3NGJmZTBhZjI5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zy
b250LWVuZC9OZXR3b3JrUmVxdWVzdC5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
ZnJvbnQtZW5kL05ldHdvcmtSZXF1ZXN0LmpzCkBAIC02OSw3ICs2OSw3IEBAIFdlYkluc3BlY3Rv
ci5OZXR3b3JrUmVxdWVzdC5FdmVudHMgPSB7CiAKIFdlYkluc3BlY3Rvci5OZXR3b3JrUmVxdWVz
dC5wcm90b3R5cGUgPSB7CiAgICAgLyoqCi0gICAgICogQHR5cGUge05ldHdvcmtBZ2VudC5SZXF1
ZXN0SWR9CisgICAgICogQHJldHVybiB7TmV0d29ya0FnZW50LlJlcXVlc3RJZH0KICAgICAgKi8K
ICAgICBnZXQgcmVxdWVzdElkKCkKICAgICB7CkBAIC04Miw3ICs4Miw3IEBAIFdlYkluc3BlY3Rv
ci5OZXR3b3JrUmVxdWVzdC5wcm90b3R5cGUgPSB7CiAgICAgfSwKIAogICAgIC8qKgotICAgICAq
IEB0eXBlIHtzdHJpbmd9CisgICAgICogQHJldHVybiB7c3RyaW5nfQogICAgICAqLwogICAgIGdl
dCB1cmwoKQogICAgIHsKQEAgLTEwMCw3ICsxMDAsNyBAQCBXZWJJbnNwZWN0b3IuTmV0d29ya1Jl
cXVlc3QucHJvdG90eXBlID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7c3Ry
aW5nfQorICAgICAqIEByZXR1cm4ge3N0cmluZ30KICAgICAgKi8KICAgICBnZXQgZG9jdW1lbnRV
UkwoKQogICAgIHsKQEAgLTExMyw3ICsxMTMsNyBAQCBXZWJJbnNwZWN0b3IuTmV0d29ya1JlcXVl
c3QucHJvdG90eXBlID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7TmV0d29y
a0FnZW50LkZyYW1lSWR9CisgICAgICogQHJldHVybiB7TmV0d29ya0FnZW50LkZyYW1lSWR9CiAg
ICAgICovCiAgICAgZ2V0IGZyYW1lSWQoKQogICAgIHsKQEAgLTEyMSw3ICsxMjEsNyBAQCBXZWJJ
bnNwZWN0b3IuTmV0d29ya1JlcXVlc3QucHJvdG90eXBlID0gewogICAgIH0sCiAKICAgICAvKioK
LSAgICAgKiBAdHlwZSB7TmV0d29ya0FnZW50LkxvYWRlcklkfQorICAgICAqIEByZXR1cm4ge05l
dHdvcmtBZ2VudC5Mb2FkZXJJZH0KICAgICAgKi8KICAgICBnZXQgbG9hZGVySWQoKQogICAgIHsK
QEAgLTEyOSw3ICsxMjksNyBAQCBXZWJJbnNwZWN0b3IuTmV0d29ya1JlcXVlc3QucHJvdG90eXBl
ID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7bnVtYmVyfQorICAgICAqIEBy
ZXR1cm4ge251bWJlcn0KICAgICAgKi8KICAgICBnZXQgc3RhcnRUaW1lKCkKICAgICB7CkBAIC0x
NDIsNyArMTQyLDcgQEAgV2ViSW5zcGVjdG9yLk5ldHdvcmtSZXF1ZXN0LnByb3RvdHlwZSA9IHsK
ICAgICB9LAogCiAgICAgLyoqCi0gICAgICogQHR5cGUge251bWJlcn0KKyAgICAgKiBAcmV0dXJu
IHtudW1iZXJ9CiAgICAgICovCiAgICAgZ2V0IHJlc3BvbnNlUmVjZWl2ZWRUaW1lKCkKICAgICB7
CkBAIC0xNTUsNyArMTU1LDcgQEAgV2ViSW5zcGVjdG9yLk5ldHdvcmtSZXF1ZXN0LnByb3RvdHlw
ZSA9IHsKICAgICB9LAogCiAgICAgLyoqCi0gICAgICogQHR5cGUge251bWJlcn0KKyAgICAgKiBA
cmV0dXJuIHtudW1iZXJ9CiAgICAgICovCiAgICAgZ2V0IGVuZFRpbWUoKQogICAgIHsKQEAgLTE3
Niw3ICsxNzYsNyBAQCBXZWJJbnNwZWN0b3IuTmV0d29ya1JlcXVlc3QucHJvdG90eXBlID0gewog
ICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7bnVtYmVyfQorICAgICAqIEByZXR1cm4g
e251bWJlcn0KICAgICAgKi8KICAgICBnZXQgZHVyYXRpb24oKQogICAgIHsKQEAgLTE4Niw3ICsx
ODYsNyBAQCBXZWJJbnNwZWN0b3IuTmV0d29ya1JlcXVlc3QucHJvdG90eXBlID0gewogICAgIH0s
CiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7bnVtYmVyfQorICAgICAqIEByZXR1cm4ge251bWJl
cn0KICAgICAgKi8KICAgICBnZXQgbGF0ZW5jeSgpCiAgICAgewpAQCAtMTk2LDcgKzE5Niw3IEBA
IFdlYkluc3BlY3Rvci5OZXR3b3JrUmVxdWVzdC5wcm90b3R5cGUgPSB7CiAgICAgfSwKIAogICAg
IC8qKgotICAgICAqIEB0eXBlIHtudW1iZXJ9CisgICAgICogQHJldHVybiB7bnVtYmVyfQogICAg
ICAqLwogICAgIGdldCByZWNlaXZlRHVyYXRpb24oKQogICAgIHsKQEAgLTIwNiw3ICsyMDYsNyBA
QCBXZWJJbnNwZWN0b3IuTmV0d29ya1JlcXVlc3QucHJvdG90eXBlID0gewogICAgIH0sCiAKICAg
ICAvKioKLSAgICAgKiBAdHlwZSB7bnVtYmVyfQorICAgICAqIEByZXR1cm4ge251bWJlcn0KICAg
ICAgKi8KICAgICBnZXQgcmVzb3VyY2VTaXplKCkKICAgICB7CkBAIC0yMTksNyArMjE5LDcgQEAg
V2ViSW5zcGVjdG9yLk5ldHdvcmtSZXF1ZXN0LnByb3RvdHlwZSA9IHsKICAgICB9LAogCiAgICAg
LyoqCi0gICAgICogQHR5cGUge251bWJlcn0KKyAgICAgKiBAcmV0dXJuIHtudW1iZXJ9CiAgICAg
ICovCiAgICAgZ2V0IHRyYW5zZmVyU2l6ZSgpCiAgICAgewpAQCAtMjUyLDcgKzI1Miw3IEBAIFdl
Ykluc3BlY3Rvci5OZXR3b3JrUmVxdWVzdC5wcm90b3R5cGUgPSB7CiAgICAgfSwKIAogICAgIC8q
KgotICAgICAqIEB0eXBlIHtib29sZWFufQorICAgICAqIEByZXR1cm4ge2Jvb2xlYW59CiAgICAg
ICovCiAgICAgZ2V0IGZpbmlzaGVkKCkKICAgICB7CkBAIC0yNzQsNyArMjc0LDcgQEAgV2ViSW5z
cGVjdG9yLk5ldHdvcmtSZXF1ZXN0LnByb3RvdHlwZSA9IHsKICAgICB9LAogCiAgICAgLyoqCi0g
ICAgICogQHR5cGUge2Jvb2xlYW59CisgICAgICogQHJldHVybiB7Ym9vbGVhbn0KICAgICAgKi8K
ICAgICBnZXQgZmFpbGVkKCkKICAgICB7CkBAIC0yODcsNyArMjg3LDcgQEAgV2ViSW5zcGVjdG9y
Lk5ldHdvcmtSZXF1ZXN0LnByb3RvdHlwZSA9IHsKICAgICB9LAogCiAgICAgLyoqCi0gICAgICog
QHR5cGUge2Jvb2xlYW59CisgICAgICogQHJldHVybiB7Ym9vbGVhbn0KICAgICAgKi8KICAgICBn
ZXQgY2FuY2VsZWQoKQogICAgIHsKQEAgLTMwMCw3ICszMDAsNyBAQCBXZWJJbnNwZWN0b3IuTmV0
d29ya1JlcXVlc3QucHJvdG90eXBlID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBAdHlw
ZSB7Ym9vbGVhbn0KKyAgICAgKiBAcmV0dXJuIHtib29sZWFufQogICAgICAqLwogICAgIGdldCBj
YWNoZWQoKQogICAgIHsKQEAgLTMxNSw3ICszMTUsNyBAQCBXZWJJbnNwZWN0b3IuTmV0d29ya1Jl
cXVlc3QucHJvdG90eXBlID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7TmV0
d29ya0FnZW50LlJlc291cmNlVGltaW5nfHVuZGVmaW5lZH0KKyAgICAgKiBAcmV0dXJuIHtOZXR3
b3JrQWdlbnQuUmVzb3VyY2VUaW1pbmd8dW5kZWZpbmVkfQogICAgICAqLwogICAgIGdldCB0aW1p
bmcoKQogICAgIHsKQEAgLTMzNiw3ICszMzYsNyBAQCBXZWJJbnNwZWN0b3IuTmV0d29ya1JlcXVl
c3QucHJvdG90eXBlID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7c3RyaW5n
fQorICAgICAqIEByZXR1cm4ge3N0cmluZ30KICAgICAgKi8KICAgICBnZXQgbWltZVR5cGUoKQog
ICAgIHsKQEAgLTM0OSw3ICszNDksNyBAQCBXZWJJbnNwZWN0b3IuTmV0d29ya1JlcXVlc3QucHJv
dG90eXBlID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7c3RyaW5nfQorICAg
ICAqIEByZXR1cm4ge3N0cmluZ30KICAgICAgKi8KICAgICBnZXQgZGlzcGxheU5hbWUoKQogICAg
IHsKQEAgLTM1Nyw3ICszNTcsNyBAQCBXZWJJbnNwZWN0b3IuTmV0d29ya1JlcXVlc3QucHJvdG90
eXBlID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7c3RyaW5nfQorICAgICAq
IEByZXR1cm4ge3N0cmluZ30KICAgICAgKi8KICAgICBnZXQgZm9sZGVyKCkKICAgICB7CkBAIC0z
NzAsNyArMzcwLDcgQEAgV2ViSW5zcGVjdG9yLk5ldHdvcmtSZXF1ZXN0LnByb3RvdHlwZSA9IHsK
ICAgICB9LAogCiAgICAgLyoqCi0gICAgICogQHR5cGUge1dlYkluc3BlY3Rvci5SZXNvdXJjZVR5
cGV9CisgICAgICogQHJldHVybiB7V2ViSW5zcGVjdG9yLlJlc291cmNlVHlwZX0KICAgICAgKi8K
ICAgICBnZXQgdHlwZSgpCiAgICAgewpAQCAtMzgzLDcgKzM4Myw3IEBAIFdlYkluc3BlY3Rvci5O
ZXR3b3JrUmVxdWVzdC5wcm90b3R5cGUgPSB7CiAgICAgfSwKIAogICAgIC8qKgotICAgICAqIEB0
eXBlIHtXZWJJbnNwZWN0b3IuUmVzb3VyY2V8dW5kZWZpbmVkfQorICAgICAqIEByZXR1cm4ge1dl
Ykluc3BlY3Rvci5SZXNvdXJjZXx1bmRlZmluZWR9CiAgICAgICovCiAgICAgZ2V0IHJlZGlyZWN0
U291cmNlKCkKICAgICB7CkBAIC0zOTgsNyArMzk4LDcgQEAgV2ViSW5zcGVjdG9yLk5ldHdvcmtS
ZXF1ZXN0LnByb3RvdHlwZSA9IHsKICAgICB9LAogCiAgICAgLyoqCi0gICAgICogQHR5cGUge09i
amVjdH0KKyAgICAgKiBAcmV0dXJuIHtPYmplY3R9CiAgICAgICovCiAgICAgZ2V0IHJlcXVlc3RI
ZWFkZXJzKCkKICAgICB7CkBAIC00MTUsNyArNDE1LDcgQEAgV2ViSW5zcGVjdG9yLk5ldHdvcmtS
ZXF1ZXN0LnByb3RvdHlwZSA9IHsKICAgICB9LAogCiAgICAgLyoqCi0gICAgICogQHR5cGUge3N0
cmluZ30KKyAgICAgKiBAcmV0dXJuIHtzdHJpbmd9CiAgICAgICovCiAgICAgZ2V0IHJlcXVlc3RI
ZWFkZXJzVGV4dCgpCiAgICAgewpAQCAtNDM1LDcgKzQzNSw3IEBAIFdlYkluc3BlY3Rvci5OZXR3
b3JrUmVxdWVzdC5wcm90b3R5cGUgPSB7CiAgICAgfSwKIAogICAgIC8qKgotICAgICAqIEB0eXBl
IHtudW1iZXJ9CisgICAgICogQHJldHVybiB7bnVtYmVyfQogICAgICAqLwogICAgIGdldCByZXF1
ZXN0SGVhZGVyc1NpemUoKQogICAgIHsKQEAgLTQ0Myw3ICs0NDMsNyBAQCBXZWJJbnNwZWN0b3Iu
TmV0d29ya1JlcXVlc3QucHJvdG90eXBlID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBA
dHlwZSB7QXJyYXkuPE9iamVjdD59CisgICAgICogQHJldHVybiB7QXJyYXkuPE9iamVjdD59CiAg
ICAgICovCiAgICAgZ2V0IHNvcnRlZFJlcXVlc3RIZWFkZXJzKCkKICAgICB7CkBAIC00NjgsNyAr
NDY4LDcgQEAgV2ViSW5zcGVjdG9yLk5ldHdvcmtSZXF1ZXN0LnByb3RvdHlwZSA9IHsKICAgICB9
LAogCiAgICAgLyoqCi0gICAgICogQHR5cGUge0FycmF5LjxXZWJJbnNwZWN0b3IuQ29va2llPn0K
KyAgICAgKiBAcmV0dXJuIHtBcnJheS48V2ViSW5zcGVjdG9yLkNvb2tpZT59CiAgICAgICovCiAg
ICAgZ2V0IHJlcXVlc3RDb29raWVzKCkKICAgICB7CkBAIC00NzgsNyArNDc4LDcgQEAgV2ViSW5z
cGVjdG9yLk5ldHdvcmtSZXF1ZXN0LnByb3RvdHlwZSA9IHsKICAgICB9LAogCiAgICAgLyoqCi0g
ICAgICogQHR5cGUge3N0cmluZ3x1bmRlZmluZWR9CisgICAgICogQHJldHVybiB7c3RyaW5nfHVu
ZGVmaW5lZH0KICAgICAgKi8KICAgICBnZXQgcmVxdWVzdEZvcm1EYXRhKCkKICAgICB7CkBAIC00
OTIsNyArNDkyLDcgQEAgV2ViSW5zcGVjdG9yLk5ldHdvcmtSZXF1ZXN0LnByb3RvdHlwZSA9IHsK
ICAgICB9LAogCiAgICAgLyoqCi0gICAgICogQHR5cGUge3N0cmluZ3x1bmRlZmluZWR9CisgICAg
ICogQHJldHVybiB7c3RyaW5nfHVuZGVmaW5lZH0KICAgICAgKi8KICAgICBnZXQgcmVxdWVzdEh0
dHBWZXJzaW9uKCkKICAgICB7CkBAIC01MDIsNyArNTAyLDcgQEAgV2ViSW5zcGVjdG9yLk5ldHdv
cmtSZXF1ZXN0LnByb3RvdHlwZSA9IHsKICAgICB9LAogCiAgICAgLyoqCi0gICAgICogQHR5cGUg
e09iamVjdH0KKyAgICAgKiBAcmV0dXJuIHtPYmplY3R9CiAgICAgICovCiAgICAgZ2V0IHJlc3Bv
bnNlSGVhZGVycygpCiAgICAgewpAQCAtNTE5LDcgKzUxOSw3IEBAIFdlYkluc3BlY3Rvci5OZXR3
b3JrUmVxdWVzdC5wcm90b3R5cGUgPSB7CiAgICAgfSwKIAogICAgIC8qKgotICAgICAqIEB0eXBl
IHtzdHJpbmd9CisgICAgICogQHJldHVybiB7c3RyaW5nfQogICAgICAqLwogICAgIGdldCByZXNw
b25zZUhlYWRlcnNUZXh0KCkKICAgICB7CkBAIC01MzksNyArNTM5LDcgQEAgV2ViSW5zcGVjdG9y
Lk5ldHdvcmtSZXF1ZXN0LnByb3RvdHlwZSA9IHsKICAgICB9LAogCiAgICAgLyoqCi0gICAgICog
QHR5cGUge251bWJlcn0KKyAgICAgKiBAcmV0dXJuIHtudW1iZXJ9CiAgICAgICovCiAgICAgZ2V0
IHJlc3BvbnNlSGVhZGVyc1NpemUoKQogICAgIHsKQEAgLTU0Nyw3ICs1NDcsNyBAQCBXZWJJbnNw
ZWN0b3IuTmV0d29ya1JlcXVlc3QucHJvdG90eXBlID0gewogICAgIH0sCiAKICAgICAvKioKLSAg
ICAgKiBAdHlwZSB7QXJyYXkuPE9iamVjdD59CisgICAgICogQHJldHVybiB7QXJyYXkuPE9iamVj
dD59CiAgICAgICovCiAgICAgZ2V0IHNvcnRlZFJlc3BvbnNlSGVhZGVycygpCiAgICAgewpAQCAt
NTcyLDcgKzU3Miw3IEBAIFdlYkluc3BlY3Rvci5OZXR3b3JrUmVxdWVzdC5wcm90b3R5cGUgPSB7
CiAgICAgfSwKIAogICAgIC8qKgotICAgICAqIEB0eXBlIHtBcnJheS48V2ViSW5zcGVjdG9yLkNv
b2tpZT59CisgICAgICogQHJldHVybiB7QXJyYXkuPFdlYkluc3BlY3Rvci5Db29raWU+fQogICAg
ICAqLwogICAgIGdldCByZXNwb25zZUNvb2tpZXMoKQogICAgIHsKQEAgLTU4Miw3ICs1ODIsNyBA
QCBXZWJJbnNwZWN0b3IuTmV0d29ya1JlcXVlc3QucHJvdG90eXBlID0gewogICAgIH0sCiAKICAg
ICAvKioKLSAgICAgKiBAdHlwZSB7P0FycmF5LjxPYmplY3Q+fQorICAgICAqIEByZXR1cm4gez9B
cnJheS48T2JqZWN0Pn0KICAgICAgKi8KICAgICBnZXQgcXVlcnlQYXJhbWV0ZXJzKCkKICAgICB7
CkBAIC01OTcsNyArNTk3LDcgQEAgV2ViSW5zcGVjdG9yLk5ldHdvcmtSZXF1ZXN0LnByb3RvdHlw
ZSA9IHsKICAgICB9LAogCiAgICAgLyoqCi0gICAgICogQHR5cGUgez9BcnJheS48T2JqZWN0Pn0K
KyAgICAgKiBAcmV0dXJuIHs/QXJyYXkuPE9iamVjdD59CiAgICAgICovCiAgICAgZ2V0IGZvcm1Q
YXJhbWV0ZXJzKCkKICAgICB7CkBAIC02MTMsNyArNjEzLDcgQEAgV2ViSW5zcGVjdG9yLk5ldHdv
cmtSZXF1ZXN0LnByb3RvdHlwZSA9IHsKICAgICB9LAogCiAgICAgLyoqCi0gICAgICogQHR5cGUg
e3N0cmluZ3x1bmRlZmluZWR9CisgICAgICogQHJldHVybiB7c3RyaW5nfHVuZGVmaW5lZH0KICAg
ICAgKi8KICAgICBnZXQgcmVzcG9uc2VIdHRwVmVyc2lvbigpCiAgICAgewpAQCAtNjU3LDcgKzY1
Nyw3IEBAIFdlYkluc3BlY3Rvci5OZXR3b3JrUmVxdWVzdC5wcm90b3R5cGUgPSB7CiAgICAgfSwK
IAogICAgIC8qKgotICAgICAqIEB0eXBlIHtzdHJpbmd9CisgICAgICogQHJldHVybiB7P3N0cmlu
Z3x1bmRlZmluZWR9CiAgICAgICovCiAgICAgZ2V0IGNvbnRlbnQoKQogICAgIHsKQEAgLTY2NSw3
ICs2NjUsNyBAQCBXZWJJbnNwZWN0b3IuTmV0d29ya1JlcXVlc3QucHJvdG90eXBlID0gewogICAg
IH0sCiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7c3RyaW5nfQorICAgICAqIEByZXR1cm4ge2Jv
b2xlYW59CiAgICAgICovCiAgICAgZ2V0IGNvbnRlbnRFbmNvZGVkKCkKICAgICB7CkBAIC02OTMs
NyArNjkzLDcgQEAgV2ViSW5zcGVjdG9yLk5ldHdvcmtSZXF1ZXN0LnByb3RvdHlwZSA9IHsKICAg
ICAgICAgICAgIHJldHVybjsKICAgICAgICAgfQogICAgICAgICBpZiAodHlwZW9mIHRoaXMuX2Nv
bnRlbnQgIT09ICJ1bmRlZmluZWQiKSB7Ci0gICAgICAgICAgICBjYWxsYmFjayh0aGlzLmNvbnRl
bnQsIHRoaXMuX2NvbnRlbnRFbmNvZGVkLCB0aGlzLl9taW1lVHlwZSk7CisgICAgICAgICAgICBj
YWxsYmFjayh0aGlzLmNvbnRlbnQgfHwgbnVsbCwgdGhpcy5fY29udGVudEVuY29kZWQsIHRoaXMu
X21pbWVUeXBlKTsKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgfQogICAgICAgICB0aGlz
Ll9wZW5kaW5nQ29udGVudENhbGxiYWNrcy5wdXNoKGNhbGxiYWNrKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvUmVzb3VyY2VUcmVlTW9kZWwuanMgYi9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Jlc291cmNlVHJlZU1vZGVsLmpzCmlu
ZGV4IDgwNzM3ZjE4NDhiMTMxZDVhMzE2NjgzNDM4YTM2NmYwYjQ1MjllNjAuLjk2NWEwYjQ3ODRl
NTBhNjJkOTJiMTYyMGIyMWY5MmQwMDNhYWMzZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9mcm9udC1lbmQvUmVzb3VyY2VUcmVlTW9kZWwuanMKKysrIGIvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9SZXNvdXJjZVRyZWVNb2RlbC5qcwpAQCAtMzg3LDcg
KzM4Nyw3IEBAIFdlYkluc3BlY3Rvci5SZXNvdXJjZVRyZWVGcmFtZSA9IGZ1bmN0aW9uKG1vZGVs
LCBwYXJlbnRGcmFtZSwgcGF5bG9hZCkKICAgICB0aGlzLl9sb2FkZXJJZCA9IHBheWxvYWQubG9h
ZGVySWQ7CiAgICAgdGhpcy5fbmFtZSA9IHBheWxvYWQubmFtZTsKICAgICB0aGlzLl91cmwgPSBw
YXlsb2FkLnVybDsKLSAgICB0aGlzLl9zZWN1cml0eU9yaWdpbiA9IHBheWxvYWQuc2VjdXJpdHlP
cmlnaW47CisgICAgdGhpcy5fc2VjdXJpdHlPcmlnaW4gPSBwYXlsb2FkLnNlY3VyaXR5T3JpZ2lu
IHx8ICIiOwogICAgIHRoaXMuX21pbWVUeXBlID0gcGF5bG9hZC5taW1lVHlwZTsKIAogICAgIC8q
KgpAQCAtNDA2LDcgKzQwNiw3IEBAIFdlYkluc3BlY3Rvci5SZXNvdXJjZVRyZWVGcmFtZSA9IGZ1
bmN0aW9uKG1vZGVsLCBwYXJlbnRGcmFtZSwgcGF5bG9hZCkKIAogV2ViSW5zcGVjdG9yLlJlc291
cmNlVHJlZUZyYW1lLnByb3RvdHlwZSA9IHsKICAgICAvKioKLSAgICAgKiBAdHlwZSB7c3RyaW5n
fQorICAgICAqIEByZXR1cm4ge3N0cmluZ30KICAgICAgKi8KICAgICBnZXQgaWQoKQogICAgIHsK
QEAgLTQxNCw3ICs0MTQsNyBAQCBXZWJJbnNwZWN0b3IuUmVzb3VyY2VUcmVlRnJhbWUucHJvdG90
eXBlID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7c3RyaW5nfQorICAgICAq
IEByZXR1cm4ge3N0cmluZ30KICAgICAgKi8KICAgICBnZXQgbmFtZSgpCiAgICAgewpAQCAtNDIy
LDcgKzQyMiw3IEBAIFdlYkluc3BlY3Rvci5SZXNvdXJjZVRyZWVGcmFtZS5wcm90b3R5cGUgPSB7
CiAgICAgfSwKIAogICAgIC8qKgotICAgICAqIEB0eXBlIHtzdHJpbmd9CisgICAgICogQHJldHVy
biB7c3RyaW5nfQogICAgICAqLwogICAgIGdldCB1cmwoKQogICAgIHsKQEAgLTQzMCw3ICs0MzAs
NyBAQCBXZWJJbnNwZWN0b3IuUmVzb3VyY2VUcmVlRnJhbWUucHJvdG90eXBlID0gewogICAgIH0s
CiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7c3RyaW5nfQorICAgICAqIEByZXR1cm4ge3N0cmlu
Z30KICAgICAgKi8KICAgICBnZXQgc2VjdXJpdHlPcmlnaW4oKQogICAgIHsKQEAgLTQzOCw3ICs0
MzgsNyBAQCBXZWJJbnNwZWN0b3IuUmVzb3VyY2VUcmVlRnJhbWUucHJvdG90eXBlID0gewogICAg
IH0sCiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7c3RyaW5nfQorICAgICAqIEByZXR1cm4ge3N0
cmluZ30KICAgICAgKi8KICAgICBnZXQgbG9hZGVySWQoKQogICAgIHsKQEAgLTQ0Niw3ICs0NDYs
NyBAQCBXZWJJbnNwZWN0b3IuUmVzb3VyY2VUcmVlRnJhbWUucHJvdG90eXBlID0gewogICAgIH0s
CiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7V2ViSW5zcGVjdG9yLlJlc291cmNlVHJlZUZyYW1l
fQorICAgICAqIEByZXR1cm4ge1dlYkluc3BlY3Rvci5SZXNvdXJjZVRyZWVGcmFtZX0KICAgICAg
Ki8KICAgICBnZXQgcGFyZW50RnJhbWUoKQogICAgIHsKQEAgLTQ1NCw3ICs0NTQsNyBAQCBXZWJJ
bnNwZWN0b3IuUmVzb3VyY2VUcmVlRnJhbWUucHJvdG90eXBlID0gewogICAgIH0sCiAKICAgICAv
KioKLSAgICAgKiBAdHlwZSB7QXJyYXkuPFdlYkluc3BlY3Rvci5SZXNvdXJjZVRyZWVGcmFtZT59
CisgICAgICogQHJldHVybiB7QXJyYXkuPFdlYkluc3BlY3Rvci5SZXNvdXJjZVRyZWVGcmFtZT59
CiAgICAgICovCiAgICAgZ2V0IGNoaWxkRnJhbWVzKCkKICAgICB7CkBAIC00NzcsNyArNDc3LDcg
QEAgV2ViSW5zcGVjdG9yLlJlc291cmNlVHJlZUZyYW1lLnByb3RvdHlwZSA9IHsKICAgICAgICAg
dGhpcy5fbG9hZGVySWQgPSBmcmFtZVBheWxvYWQubG9hZGVySWQ7CiAgICAgICAgIHRoaXMuX25h
bWUgPSBmcmFtZVBheWxvYWQubmFtZTsKICAgICAgICAgdGhpcy5fdXJsID0gZnJhbWVQYXlsb2Fk
LnVybDsKLSAgICAgICAgdGhpcy5fc2VjdXJpdHlPcmlnaW4gPSBmcmFtZVBheWxvYWQuc2VjdXJp
dHlPcmlnaW47CisgICAgICAgIHRoaXMuX3NlY3VyaXR5T3JpZ2luID0gZnJhbWVQYXlsb2FkLnNl
Y3VyaXR5T3JpZ2luIHx8ICIiOwogICAgICAgICB0aGlzLl9taW1lVHlwZSA9IGZyYW1lUGF5bG9h
ZC5taW1lVHlwZTsKIAogICAgICAgICB2YXIgbWFpblJlc291cmNlID0gdGhpcy5fcmVzb3VyY2Vz
TWFwW3RoaXMuX3VybF07CkBAIC00ODgsNyArNDg4LDcgQEAgV2ViSW5zcGVjdG9yLlJlc291cmNl
VHJlZUZyYW1lLnByb3RvdHlwZSA9IHsKICAgICB9LAogCiAgICAgLyoqCi0gICAgICogQHR5cGUg
e1dlYkluc3BlY3Rvci5SZXNvdXJjZX0KKyAgICAgKiBAcmV0dXJuIHtXZWJJbnNwZWN0b3IuUmVz
b3VyY2V9CiAgICAgICovCiAgICAgZ2V0IG1haW5SZXNvdXJjZSgpCiAgICAgewpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TY3JpcHRzTmF2aWdhdG9yLmpz
IGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TY3JpcHRzTmF2aWdhdG9yLmpz
CmluZGV4IDZlOGE0ODFjYzZkMTcwYTg4Y2I5YzA3MjI0ZTg1ODgxYTU2Nzk0OTcuLmQzOGNmMWRh
N2M0M2Y4MWVhZDQ2NzUyYWI1Zjc0MjRkMGQ4NWRlZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0c05hdmlnYXRvci5qcworKysgYi9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NjcmlwdHNOYXZpZ2F0b3IuanMKQEAgLTk2LDcg
Kzk2LDcgQEAgV2ViSW5zcGVjdG9yLlNjcmlwdHNOYXZpZ2F0b3IuU25pcHBldHNUYWIgPSAic25p
cHBldHMiOwogCiBXZWJJbnNwZWN0b3IuU2NyaXB0c05hdmlnYXRvci5wcm90b3R5cGUgPSB7CiAg
ICAgLyoqCi0gICAgICogQHR5cGUge1dlYkluc3BlY3Rvci5WaWV3fQorICAgICAqIEByZXR1cm4g
e1dlYkluc3BlY3Rvci5WaWV3fQogICAgICAqLwogICAgIGdldCB2aWV3KCkKICAgICB7CkBAIC01
OTcsNyArNTk3LDcgQEAgV2ViSW5zcGVjdG9yLkJhc2VOYXZpZ2F0b3JUcmVlRWxlbWVudC5wcm90
b3R5cGUgPSB7CiAgICAgfSwKIAogICAgIC8qKgotICAgICAqIEB0eXBlIHtzdHJpbmd9CisgICAg
ICogQHJldHVybiB7c3RyaW5nfQogICAgICAqLwogICAgIGdldCB0aXRsZVRleHQoKQogICAgIHsK
QEAgLTY0Miw3ICs2NDIsNyBAQCBXZWJJbnNwZWN0b3IuTmF2aWdhdG9yRm9sZGVyVHJlZUVsZW1l
bnQgPSBmdW5jdGlvbihmb2xkZXJJZGVudGlmaWVyLCBkb21haW4sIGZvbAogCiBXZWJJbnNwZWN0
b3IuTmF2aWdhdG9yRm9sZGVyVHJlZUVsZW1lbnQucHJvdG90eXBlID0gewogICAgIC8qKgotICAg
ICAqIEB0eXBlIHtzdHJpbmd9CisgICAgICogQHJldHVybiB7c3RyaW5nfQogICAgICAqLwogICAg
IGdldCBmb2xkZXJJZGVudGlmaWVyKCkKICAgICB7CkBAIC02NTAsNyArNjUwLDcgQEAgV2ViSW5z
cGVjdG9yLk5hdmlnYXRvckZvbGRlclRyZWVFbGVtZW50LnByb3RvdHlwZSA9IHsKICAgICB9LAog
CiAgICAgLyoqCi0gICAgICogQHR5cGUge2Jvb2xlYW59CisgICAgICogQHJldHVybiB7Ym9vbGVh
bn0KICAgICAgKi8KICAgICBnZXQgaXNEb21haW4oKQogICAgIHsKQEAgLTY4Niw3ICs2ODYsNyBA
QCBXZWJJbnNwZWN0b3IuTmF2aWdhdG9yU2NyaXB0VHJlZUVsZW1lbnQgPSBmdW5jdGlvbihuYXZp
Z2F0b3IsIHVpU291cmNlQ29kZSwgdGl0bAogCiBXZWJJbnNwZWN0b3IuTmF2aWdhdG9yU2NyaXB0
VHJlZUVsZW1lbnQucHJvdG90eXBlID0gewogICAgIC8qKgotICAgICAqIEB0eXBlIHtXZWJJbnNw
ZWN0b3IuU2NyaXB0c05hdmlnYXRvcn0KKyAgICAgKiBAcmV0dXJuIHtXZWJJbnNwZWN0b3IuU2Ny
aXB0c05hdmlnYXRvcn0KICAgICAgKi8KICAgICBnZXQgbmF2aWdhdG9yKCkKICAgICB7CkBAIC02
OTQsNyArNjk0LDcgQEAgV2ViSW5zcGVjdG9yLk5hdmlnYXRvclNjcmlwdFRyZWVFbGVtZW50LnBy
b3RvdHlwZSA9IHsKICAgICB9LAogCiAgICAgLyoqCi0gICAgICogQHR5cGUge1dlYkluc3BlY3Rv
ci5VSVNvdXJjZUNvZGV9CisgICAgICogQHJldHVybiB7V2ViSW5zcGVjdG9yLlVJU291cmNlQ29k
ZX0KICAgICAgKi8KICAgICBnZXQgdWlTb3VyY2VDb2RlKCkKICAgICB7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NldHRpbmdzLmpzIGIvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TZXR0aW5ncy5qcwppbmRleCA1ODlhNmNkOTUwMGFm
ZTkwYjk1OTNlMjEwOWQ2ZDZlYzQxZWJiM2ZkLi42NGIwNzRiMzU1OWZkZWQwZTViZTc5Mzg5MGVk
ZjUwNzY5YjY4MTM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQt
ZW5kL1NldHRpbmdzLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQv
U2V0dGluZ3MuanMKQEAgLTE4OCw3ICsxODgsNyBAQCBXZWJJbnNwZWN0b3IuRXhwZXJpbWVudHNT
ZXR0aW5ncyA9IGZ1bmN0aW9uKCkKIAogV2ViSW5zcGVjdG9yLkV4cGVyaW1lbnRzU2V0dGluZ3Mu
cHJvdG90eXBlID0gewogICAgIC8qKgotICAgICAqIEB0eXBlIHtBcnJheS48V2ViSW5zcGVjdG9y
LkV4cGVyaW1lbnQ+fQorICAgICAqIEByZXR1cm4ge0FycmF5LjxXZWJJbnNwZWN0b3IuRXhwZXJp
bWVudD59CiAgICAgICovCiAgICAgZ2V0IGV4cGVyaW1lbnRzKCkKICAgICB7CkBAIC0xOTYsNyAr
MTk2LDcgQEAgV2ViSW5zcGVjdG9yLkV4cGVyaW1lbnRzU2V0dGluZ3MucHJvdG90eXBlID0gewog
ICAgIH0sCiAgICAgCiAgICAgLyoqCi0gICAgICogQHR5cGUge2Jvb2xlYW59CisgICAgICogQHJl
dHVybiB7Ym9vbGVhbn0KICAgICAgKi8KICAgICBnZXQgZXhwZXJpbWVudHNFbmFibGVkKCkKICAg
ICB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NuaXBw
ZXRzTW9kZWwuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NuaXBwZXRz
TW9kZWwuanMKaW5kZXggNjhlOTJjNWQwZjg3YjA2MzY5OTU5MDkxNjhiN2FhNGE2NTVjYjExNy4u
MDMyMWZjMmMyMWQ4NjA1M2I1ZDVmNzgwMWVlMzcxMDI1MTlhNDQ1OSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TbmlwcGV0c01vZGVsLmpzCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU25pcHBldHNNb2RlbC5qcwpAQCAtNjAs
NyArNjAsNyBAQCBXZWJJbnNwZWN0b3IuU25pcHBldHNNb2RlbC5wcm90b3R5cGUgPSB7CiAgICAg
fSwKIAogICAgIC8qKgotICAgICAqIEB0eXBlIHtBcnJheS48V2ViSW5zcGVjdG9yLlNuaXBwZXQ+
fQorICAgICAqIEByZXR1cm4ge0FycmF5LjxXZWJJbnNwZWN0b3IuU25pcHBldD59CiAgICAgICov
CiAgICAgZ2V0IHNuaXBwZXRzKCkKICAgICB7CkBAIC0yMTYsNyArMjE2LDcgQEAgV2ViSW5zcGVj
dG9yLlNuaXBwZXQuZnJvbU9iamVjdCA9IGZ1bmN0aW9uKHNlcmlhbGl6ZWRTbmlwcGV0KQogCiBX
ZWJJbnNwZWN0b3IuU25pcHBldC5wcm90b3R5cGUgPSB7CiAgICAgLyoqCi0gICAgICogQHR5cGUg
e251bWJlcn0KKyAgICAgKiBAcmV0dXJuIHtzdHJpbmd9CiAgICAgICovCiAgICAgZ2V0IGlkKCkK
ICAgICB7CkBAIC0yMjQsNyArMjI0LDcgQEAgV2ViSW5zcGVjdG9yLlNuaXBwZXQucHJvdG90eXBl
ID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7c3RyaW5nfQorICAgICAqIEBy
ZXR1cm4ge3N0cmluZ30KICAgICAgKi8KICAgICBnZXQgbmFtZSgpCiAgICAgewpAQCAtMjQxLDcg
KzI0MSw3IEBAIFdlYkluc3BlY3Rvci5TbmlwcGV0LnByb3RvdHlwZSA9IHsKICAgICB9LAogCiAg
ICAgLyoqCi0gICAgICogQHR5cGUge3N0cmluZ30KKyAgICAgKiBAcmV0dXJuIHtzdHJpbmd9CiAg
ICAgICovCiAgICAgZ2V0IGNvbnRlbnQoKQogICAgIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU3BsaXRWaWV3LmpzIGIvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL2Zyb250LWVuZC9TcGxpdFZpZXcuanMKaW5kZXggNWM1Y2YxNzgzMGQ4YTNjNTg4MzQ4
OTIwMzY0OTNkNjQ5Zjk3NjQ0MC4uOTg2NjZlNTM2YWIxZDM3ZDA1NjFkYTBjYjhkZjlmMzhiOGQx
MGI0OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TcGxp
dFZpZXcuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TcGxpdFZp
ZXcuanMKQEAgLTg2LDcgKzg2LDcgQEAgV2ViSW5zcGVjdG9yLlNwbGl0Vmlldy5TaWRlYmFyUG9z
aXRpb24gPSB7CiAKIFdlYkluc3BlY3Rvci5TcGxpdFZpZXcucHJvdG90eXBlID0gewogICAgIC8q
KgotICAgICAqIEB0eXBlIHtib29sZWFufQorICAgICAqIEByZXR1cm4ge2Jvb2xlYW59CiAgICAg
ICovCiAgICAgZ2V0IGhhc0xlZnRTaWRlYmFyKCkKICAgICB7CkBAIC05NCw3ICs5NCw3IEBAIFdl
Ykluc3BlY3Rvci5TcGxpdFZpZXcucHJvdG90eXBlID0gewogICAgIH0sCiAKICAgICAvKioKLSAg
ICAgKiBAdHlwZSB7RWxlbWVudH0KKyAgICAgKiBAcmV0dXJuIHtFbGVtZW50fQogICAgICAqLwog
ICAgIGdldCBtYWluRWxlbWVudCgpCiAgICAgewpAQCAtMTAyLDcgKzEwMiw3IEBAIFdlYkluc3Bl
Y3Rvci5TcGxpdFZpZXcucHJvdG90eXBlID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBA
dHlwZSB7RWxlbWVudH0KKyAgICAgKiBAcmV0dXJuIHtFbGVtZW50fQogICAgICAqLwogICAgIGdl
dCBzaWRlYmFyRWxlbWVudCgpCiAgICAgewpAQCAtMTEwLDcgKzExMCw3IEBAIFdlYkluc3BlY3Rv
ci5TcGxpdFZpZXcucHJvdG90eXBlID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBAdHlw
ZSB7Ym9vbGVhbn0KKyAgICAgKiBAcmV0dXJuIHtib29sZWFufQogICAgICAqLwogICAgIGdldCBy
ZXNpemFibGUoKQogICAgIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9m
cm9udC1lbmQvVGFiYmVkRWRpdG9yQ29udGFpbmVyLmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9UYWJiZWRFZGl0b3JDb250YWluZXIuanMKaW5kZXggY2I5MzU3NmQ3NDM2
OTgyNTcwOWRjZTgwNmQ2YjExNjBhYjA2MmM3My4uZTkxYWE3YTg3MjMxY2RlMmIwNmMwOWU4NThk
N2Q0Y2Y1NjAzYjI3ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250
LWVuZC9UYWJiZWRFZGl0b3JDb250YWluZXIuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9UYWJiZWRFZGl0b3JDb250YWluZXIuanMKQEAgLTc2LDcgKzc2LDcgQEAg
V2ViSW5zcGVjdG9yLlRhYmJlZEVkaXRvckNvbnRhaW5lci5tYXhpbWFsUHJldmlvdXNseVZpZXdl
ZEZpbGVzQ291bnQgPSAzMDsKIAogV2ViSW5zcGVjdG9yLlRhYmJlZEVkaXRvckNvbnRhaW5lci5w
cm90b3R5cGUgPSB7CiAgICAgLyoqCi0gICAgICogQHR5cGUge1dlYkluc3BlY3Rvci5WaWV3fQor
ICAgICAqIEByZXR1cm4ge1dlYkluc3BlY3Rvci5WaWV3fQogICAgICAqLwogICAgIGdldCB2aWV3
KCkKICAgICB7CkBAIC04NCw3ICs4NCw3IEBAIFdlYkluc3BlY3Rvci5UYWJiZWRFZGl0b3JDb250
YWluZXIucHJvdG90eXBlID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7V2Vi
SW5zcGVjdG9yLlNvdXJjZUZyYW1lfQorICAgICAqIEByZXR1cm4ge1dlYkluc3BlY3Rvci5WaWV3
fQogICAgICAqLwogICAgIGdldCB2aXNpYmxlVmlldygpCiAgICAgewpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UYWJiZWRQYW5lLmpzIGIvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UYWJiZWRQYW5lLmpzCmluZGV4IDQ5NTIyOTY0MjFh
ZDFhODFlZjYxNmFjZjBiMjk4ZTBjNDcwOWMzYjQuLmRhNjk0ZTQxNDEyZTc4Njg0NTg3MmIxOTBm
ZjUwZDEzNWVjYzc1NWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9u
dC1lbmQvVGFiYmVkUGFuZS5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQt
ZW5kL1RhYmJlZFBhbmUuanMKQEAgLTU2LDcgKzU2LDcgQEAgV2ViSW5zcGVjdG9yLlRhYmJlZFBh
bmUuRXZlbnRUeXBlcyA9IHsKIAogV2ViSW5zcGVjdG9yLlRhYmJlZFBhbmUucHJvdG90eXBlID0g
ewogICAgIC8qKgotICAgICAqIEB0eXBlIHtXZWJJbnNwZWN0b3IuVmlld30KKyAgICAgKiBAcmV0
dXJuIHtXZWJJbnNwZWN0b3IuVmlld30KICAgICAgKi8KICAgICBnZXQgdmlzaWJsZVZpZXcoKQog
ICAgIHsKQEAgLTY0LDcgKzY0LDcgQEAgV2ViSW5zcGVjdG9yLlRhYmJlZFBhbmUucHJvdG90eXBl
ID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7c3RyaW5nfQorICAgICAqIEBy
ZXR1cm4ge3N0cmluZ30KICAgICAgKi8KICAgICBnZXQgc2VsZWN0ZWRUYWJJZCgpCiAgICAgewpA
QCAtNDk0LDExICs0OTQsMTMgQEAgV2ViSW5zcGVjdG9yLlRhYmJlZFBhbmVUYWIgPSBmdW5jdGlv
bih0YWJiZWRQYW5lLCBtZWFzdXJlRWxlbWVudCwgaWQsIHRpdGxlLCBjbG8KICAgICB0aGlzLl90
b29sdGlwID0gdG9vbHRpcDsKICAgICB0aGlzLl92aWV3ID0gdmlldzsKICAgICB0aGlzLnNob3du
ID0gZmFsc2U7CisgICAgLyoqIEB0eXBlIHtudW1iZXJ9ICovIHRoaXMuX21lYXN1cmVkV2lkdGg7
CisgICAgLyoqIEB0eXBlIHtFbGVtZW50fSAqLyB0aGlzLl90YWJFbGVtZW50OwogfQogCiBXZWJJ
bnNwZWN0b3IuVGFiYmVkUGFuZVRhYi5wcm90b3R5cGUgPSB7CiAgICAgLyoqCi0gICAgICogQHR5
cGUge3N0cmluZ30KKyAgICAgKiBAcmV0dXJuIHtzdHJpbmd9CiAgICAgICovCiAgICAgZ2V0IGlk
KCkKICAgICB7CkBAIC01MDYsNyArNTA4LDcgQEAgV2ViSW5zcGVjdG9yLlRhYmJlZFBhbmVUYWIu
cHJvdG90eXBlID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7c3RyaW5nfQor
ICAgICAqIEByZXR1cm4ge3N0cmluZ30KICAgICAgKi8KICAgICBnZXQgdGl0bGUoKQogICAgIHsK
QEAgLTUyMiw3ICs1MjQsNyBAQCBXZWJJbnNwZWN0b3IuVGFiYmVkUGFuZVRhYi5wcm90b3R5cGUg
PSB7CiAgICAgfSwKIAogICAgIC8qKgotICAgICAqIEB0eXBlIHtXZWJJbnNwZWN0b3IuVmlld30K
KyAgICAgKiBAcmV0dXJuIHtXZWJJbnNwZWN0b3IuVmlld30KICAgICAgKi8KICAgICBnZXQgdmll
dygpCiAgICAgewpAQCAtNTM1LDcgKzUzNyw3IEBAIFdlYkluc3BlY3Rvci5UYWJiZWRQYW5lVGFi
LnByb3RvdHlwZSA9IHsKICAgICB9LAogCiAgICAgLyoqCi0gICAgICogQHR5cGUge3N0cmluZ3x1
bmRlZmluZWR9CisgICAgICogQHJldHVybiB7c3RyaW5nfHVuZGVmaW5lZH0KICAgICAgKi8KICAg
ICBnZXQgdG9vbHRpcCgpCiAgICAgewpAQCAtNTUwLDcgKzU1Miw3IEBAIFdlYkluc3BlY3Rvci5U
YWJiZWRQYW5lVGFiLnByb3RvdHlwZSA9IHsKICAgICB9LAogCiAgICAgLyoqCi0gICAgICogQHR5
cGUge0VsZW1lbnR9CisgICAgICogQHJldHVybiB7RWxlbWVudH0KICAgICAgKi8KICAgICBnZXQg
dGFiRWxlbWVudCgpCiAgICAgewpAQCAtNTYyLDcgKzU2NCw3IEBAIFdlYkluc3BlY3Rvci5UYWJi
ZWRQYW5lVGFiLnByb3RvdHlwZSA9IHsKICAgICB9LAogCiAgICAgLyoqCi0gICAgICogQHR5cGUg
e251bWJlcn0KKyAgICAgKiBAcmV0dXJuIHtudW1iZXJ9CiAgICAgICovCiAgICAgZ2V0IG1lYXN1
cmVkV2lkdGgoKQogICAgIHsKQEAgLTU3NCw3ICs1NzYsNyBAQCBXZWJJbnNwZWN0b3IuVGFiYmVk
UGFuZVRhYi5wcm90b3R5cGUgPSB7CiAgICAgfSwKIAogICAgIC8qKgotICAgICAqIEB0eXBlIHtu
dW1iZXJ9CisgICAgICogQHJldHVybiB7bnVtYmVyfQogICAgICAqLwogICAgIGdldCB3aWR0aCgp
CiAgICAgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9U
ZXh0RWRpdG9yTW9kZWwuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Rl
eHRFZGl0b3JNb2RlbC5qcwppbmRleCBmY2I0ZDJjZWE4NTFlZmUzMjUzNmFlMmI5YzFmNzlmMzVj
NWY4YTcxLi42YmQ5NzRiMDE5OTc5NDg2Mzc0YTc4OGI2YzUxOGE1OGJmYjliOTc5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1RleHRFZGl0b3JNb2RlbC5q
cworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1RleHRFZGl0b3JNb2Rl
bC5qcwpAQCAtNTMsNyArNTMsNyBAQCBXZWJJbnNwZWN0b3IuVGV4dFJhbmdlLnByb3RvdHlwZSA9
IHsKICAgICB9LAogCiAgICAgLyoqCi0gICAgICogQHR5cGUge251bWJlcn0KKyAgICAgKiBAcmV0
dXJuIHtudW1iZXJ9CiAgICAgICovCiAgICAgZ2V0IGxpbmVzQ291bnQoKQogICAgIHsKQEAgLTEy
NSw3ICsxMjUsNyBAQCBXZWJJbnNwZWN0b3IuVGV4dEVkaXRvck1vZGVsLmVuZHNXaXRoQnJhY2tl
dFJlZ2V4ID0gL1t7KFxbXVxzKiQvOwogCiBXZWJJbnNwZWN0b3IuVGV4dEVkaXRvck1vZGVsLnBy
b3RvdHlwZSA9IHsKICAgICAvKioKLSAgICAgKiBAdHlwZSB7bnVtYmVyfQorICAgICAqIEByZXR1
cm4ge251bWJlcn0KICAgICAgKi8KICAgICBnZXQgbGluZXNDb3VudCgpCiAgICAgewpAQCAtMTMz
LDcgKzEzMyw3IEBAIFdlYkluc3BlY3Rvci5UZXh0RWRpdG9yTW9kZWwucHJvdG90eXBlID0gewog
ICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBAdHlwZSB7c3RyaW5nfQorICAgICAqIEByZXR1cm4g
e3N0cmluZ30KICAgICAgKi8KICAgICBnZXQgdGV4dCgpCiAgICAgewpAQCAtMTQxLDcgKzE0MSw3
IEBAIFdlYkluc3BlY3Rvci5UZXh0RWRpdG9yTW9kZWwucHJvdG90eXBlID0gewogICAgIH0sCiAK
ICAgICAvKioKLSAgICAgKiBAdHlwZSB7c3RyaW5nfQorICAgICAqIEByZXR1cm4ge3N0cmluZ30K
ICAgICAgKi8KICAgICBnZXQgbGluZUJyZWFrKCkKICAgICB7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1RpbWVsaW5lUHJlc2VudGF0aW9uTW9kZWwuanMg
Yi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1RpbWVsaW5lUHJlc2VudGF0aW9u
TW9kZWwuanMKaW5kZXggNTk1ZDA2ODg4M2U4Yzc1YjBlNjRmZjNjMmE0M2NjMzg1M2I5YjNjZC4u
NGE2YWVkMjg1ZGRiMTVlYmMwNGFkYzFmMGNjODkwNmYxZmU2ZGIyOSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UaW1lbGluZVByZXNlbnRhdGlvbk1vZGVs
LmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVGltZWxpbmVQcmVz
ZW50YXRpb25Nb2RlbC5qcwpAQCAtNzg0LDcgKzc4NCw3IEBAIFdlYkluc3BlY3Rvci5UaW1lbGlu
ZUNhdGVnb3J5LkV2ZW50cyA9IHsKIAogV2ViSW5zcGVjdG9yLlRpbWVsaW5lQ2F0ZWdvcnkucHJv
dG90eXBlID0gewogICAgIC8qKgotICAgICAqIEB0eXBlIHtib29sZWFufQorICAgICAqIEByZXR1
cm4ge2Jvb2xlYW59CiAgICAgICovCiAgICAgZ2V0IGhpZGRlbigpCiAgICAgewo=
</data>
<flag name="review"
          id="143145"
          type_id="1"
          status="+"
          setter="yurys"
    />
          </attachment>
      

    </bug>

</bugzilla>