<?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>109691</bug_id>
          
          <creation_ts>2013-02-13 07:15:43 -0800</creation_ts>
          <short_desc>Web Inspector: Create separate project for each domain for UISourceCode based on browser resources.</short_desc>
          <delta_ts>2013-02-18 05:28:21 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Web Inspector (Deprecated)</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>110084</dependson>
    
    <dependson>110088</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Vsevolod Vlasov">vsevik</reporter>
          <assigned_to name="Vsevolod Vlasov">vsevik</assigned_to>
          <cc>apavlov</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>vsevik</cc>
    
    <cc>web-inspector-bugs</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>831882</commentid>
    <comment_count>0</comment_count>
    <who name="Vsevolod Vlasov">vsevik</who>
    <bug_when>2013-02-13 07:15:43 -0800</bug_when>
    <thetext>Separate project of certain type is now created for each domain.
UISourceCodes from projects of different types now have the same format of uri that could be parsed into project id and there path in project.
Stored breakpoints are migrated to the new format of uri.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>831953</commentid>
    <comment_count>1</comment_count>
      <attachid>188094</attachid>
    <who name="Vsevolod Vlasov">vsevik</who>
    <bug_when>2013-02-13 09:01:35 -0800</bug_when>
    <thetext>Created attachment 188094
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>833159</commentid>
    <comment_count>2</comment_count>
      <attachid>188094</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2013-02-14 09:40:53 -0800</bug_when>
    <thetext>Comment on attachment 188094
Patch

r- based on the discussion offline.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>833995</commentid>
    <comment_count>3</comment_count>
      <attachid>188563</attachid>
    <who name="Vsevolod Vlasov">vsevik</who>
    <bug_when>2013-02-15 07:15:28 -0800</bug_when>
    <thetext>Created attachment 188563
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>834693</commentid>
    <comment_count>4</comment_count>
      <attachid>188563</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-16 03:30:01 -0800</bug_when>
    <thetext>Comment on attachment 188563
Patch

Clearing flags on attachment: 188563

Committed r143100: &lt;http://trac.webkit.org/changeset/143100&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>834694</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-16 03:30:04 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>835202</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-18 01:10:12 -0800</bug_when>
    <thetext>Re-opened since this is blocked by bug 110084</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>835384</commentid>
    <comment_count>7</comment_count>
    <who name="Vsevolod Vlasov">vsevik</who>
    <bug_when>2013-02-18 05:28:21 -0800</bug_when>
    <thetext>Committed r143202: &lt;http://trac.webkit.org/changeset/143202&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>188094</attachid>
            <date>2013-02-13 09:01:35 -0800</date>
            <delta_ts>2013-02-15 07:15:24 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-109691-20130213205803.patch</filename>
            <type>text/plain</type>
            <size>50152</size>
            <attacher name="Vsevolod Vlasov">vsevik</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQyNzMzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZGQ4NWNmYjFiMDdjYjcz
OWU2YWI4ZjBlODk3NzM0MGFkMjQ4MDUzZi4uMmI2MmYwNGQ1MzgzZGFiYTkzMzJlOTI4YWUxNGU1
MDg1OGYzYTM3NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDQxIEBACiAyMDEzLTAyLTEzICBWc2V2
b2xvZCBWbGFzb3YgIDx2c2V2aWtAY2hyb21pdW0ub3JnPgogCisgICAgICAgIFdlYiBJbnNwZWN0
b3I6IENyZWF0ZSBzZXBhcmF0ZSBwcm9qZWN0IGZvciBlYWNoIGRvbWFpbiBmb3IgVUlTb3VyY2VD
b2RlIGJhc2VkIG9uIGJyb3dzZXIgcmVzb3VyY2VzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA5NjkxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgU2VwYXJhdGUgcHJvamVjdCBvZiBjZXJ0YWluIHR5cGUg
aXMgbm93IGNyZWF0ZWQgZm9yIGVhY2ggZG9tYWluLgorICAgICAgICBVSVNvdXJjZUNvZGVzIGZy
b20gcHJvamVjdHMgb2YgZGlmZmVyZW50IHR5cGVzIG5vdyBoYXZlIHRoZSBzYW1lIGZvcm1hdCBv
ZiB1cmkgdGhhdCBjb3VsZCBiZSBwYXJzZWQgaW50byBwcm9qZWN0IGlkIGFuZCB0aGVyZSBwYXRo
IGluIHByb2plY3QuCisgICAgICAgIFN0b3JlZCBicmVha3BvaW50cyBhcmUgbWlncmF0ZWQgdG8g
dGhlIG5ldyBmb3JtYXQgb2YgdXJpLgorCisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9G
aWxlU3lzdGVtUHJvamVjdERlbGVnYXRlLmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkZpbGVT
eXN0ZW1Qcm9qZWN0RGVsZWdhdGUucHJvdG90eXBlLmlkKToKKyAgICAgICAgKiBpbnNwZWN0b3Iv
ZnJvbnQtZW5kL1NjcmlwdFNuaXBwZXRNb2RlbC5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5T
Y3JpcHRTbmlwcGV0TW9kZWwucHJvdG90eXBlLl9hZGRTY3JpcHRTbmlwcGV0KToKKyAgICAgICAg
KiBpbnNwZWN0b3IvZnJvbnQtZW5kL1NldHRpbmdzLmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9y
LlZlcnNpb25Db250cm9sbGVyLnByb3RvdHlwZS5fdXBkYXRlVmVyc2lvbkZyb20xVG8yKToKKyAg
ICAgICAgKFdlYkluc3BlY3Rvci5WZXJzaW9uQ29udHJvbGxlci5wcm90b3R5cGUuc2V0IF9taWdy
YXRlQnJlYWtwb2ludHNGcm9tVVJMVG9VUkkpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlZlcnNp
b25Db250cm9sbGVyLnByb3RvdHlwZS5zZXQgX21pZ3JhdGVCcmVha3BvaW50c0Zyb21VUkxUb1VS
SS5uZXdCcmVha3BvaW50U291cmNlRmlsZUlkKToKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQt
ZW5kL1NpbXBsZVdvcmtzcGFjZVByb3ZpZGVyLmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlNp
bXBsZVByb2plY3REZWxlZ2F0ZSk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuU2ltcGxlUHJvamVj
dERlbGVnYXRlLnByb2plY3RJZCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuU2ltcGxlUHJvamVj
dERlbGVnYXRlLnByb3RvdHlwZS5pZCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuU2ltcGxlUHJv
amVjdERlbGVnYXRlLnByb3RvdHlwZS5kaXNwbGF5TmFtZSk6CisgICAgICAgIChXZWJJbnNwZWN0
b3IuU2ltcGxlUHJvamVjdERlbGVnYXRlLnByb3RvdHlwZS5hZGRGaWxlKToKKyAgICAgICAgKFdl
Ykluc3BlY3Rvci5TaW1wbGVXb3Jrc3BhY2VQcm92aWRlcik6CisgICAgICAgIChXZWJJbnNwZWN0
b3IuU2ltcGxlV29ya3NwYWNlUHJvdmlkZXIuc3BsaXRVUkwpOgorICAgICAgICAoV2ViSW5zcGVj
dG9yLlNpbXBsZVdvcmtzcGFjZVByb3ZpZGVyLl91cmlGb3JQcm9qZWN0UGF0aCk6CisgICAgICAg
IChXZWJJbnNwZWN0b3IuU2ltcGxlV29ya3NwYWNlUHJvdmlkZXIudXJpRm9yVVJMKToKKyAgICAg
ICAgKFdlYkluc3BlY3Rvci5TaW1wbGVXb3Jrc3BhY2VQcm92aWRlci5wcm90b3R5cGUuX3Byb2pl
Y3REZWxlZ2F0ZSk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuU2ltcGxlV29ya3NwYWNlUHJvdmlk
ZXIucHJvdG90eXBlLl9pbm5lckFkZEZpbGVGb3JVUkwpOgorICAgICAgICAoV2ViSW5zcGVjdG9y
LlNpbXBsZVdvcmtzcGFjZVByb3ZpZGVyLnByb3RvdHlwZS5hZGRGaWxlQnlOYW1lKToKKyAgICAg
ICAgKFdlYkluc3BlY3Rvci5TaW1wbGVXb3Jrc3BhY2VQcm92aWRlci5wcm90b3R5cGUucmVzZXQp
OgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvV29ya3NwYWNlLmpzOgorICAgICAgICAo
V2ViSW5zcGVjdG9yLldvcmtzcGFjZS5lc2NhcGVTbGFzaGVzKToKKworMjAxMy0wMi0xMyAgVnNl
dm9sb2QgVmxhc292ICA8dnNldmlrQGNocm9taXVtLm9yZz4KKwogICAgICAgICBXZWIgSW5zcGVj
dG9yOiBSZW1vdmUgdXJpRm9yRmlsZSBhbmQgZmlsZUZvclVSSSBtZXRob2RzIGZyb20gRmlsZVN5
c3RlbU1hcHBpbmcuCiAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xMDk3MDQKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250
LWVuZC9GaWxlU3lzdGVtUHJvamVjdERlbGVnYXRlLmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9GaWxlU3lzdGVtUHJvamVjdERlbGVnYXRlLmpzCmluZGV4IGIxZWI3OGQx
ZmRjMGMyMTI2MjZlYTM4NTQxNmU0ODlhMWZhNGU2NDYuLjI3MDJhZDkwOGUyYzA4NzIyZWI5MmEw
NDA5NTU2OWI1MGRjZDc4MTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9m
cm9udC1lbmQvRmlsZVN5c3RlbVByb2plY3REZWxlZ2F0ZS5qcworKysgYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0ZpbGVTeXN0ZW1Qcm9qZWN0RGVsZWdhdGUuanMKQEAgLTUz
LDcgKzUzLDcgQEAgV2ViSW5zcGVjdG9yLkZpbGVTeXN0ZW1Qcm9qZWN0RGVsZWdhdGUucHJvdG90
eXBlID0gewogICAgICAqLwogICAgIGlkOiBmdW5jdGlvbigpCiAgICAgewotICAgICAgICByZXR1
cm4gdGhpcy5fZmlsZVN5c3RlbUlkOworICAgICAgICByZXR1cm4gV2ViSW5zcGVjdG9yLnByb2pl
Y3RUeXBlcy5GaWxlU3lzdGVtICsgIjoiICsgdGhpcy5fZmlsZVN5c3RlbUlkOwogICAgIH0sCiAK
ICAgICAvKioKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQv
U2NyaXB0U25pcHBldE1vZGVsLmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVu
ZC9TY3JpcHRTbmlwcGV0TW9kZWwuanMKaW5kZXggZjAxOTMxNzJiOTEzNGYxZjI4ZGU3NTcxNDdl
Y2Q5Nzc4OWUxZGY5MS4uYjAwNzk5NGNkZjFhZjI4OTY2ODZmMTZlMDhlNTRlMDg5OTAzODgwMiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TY3JpcHRTbmlw
cGV0TW9kZWwuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TY3Jp
cHRTbmlwcGV0TW9kZWwuanMKQEAgLTgyLDcgKzgyLDcgQEAgV2ViSW5zcGVjdG9yLlNjcmlwdFNu
aXBwZXRNb2RlbC5wcm90b3R5cGUgPSB7CiAgICAgICovCiAgICAgX2FkZFNjcmlwdFNuaXBwZXQ6
IGZ1bmN0aW9uKHNuaXBwZXQpCiAgICAgewotICAgICAgICB2YXIgdWlTb3VyY2VDb2RlID0gdGhp
cy5fd29ya3NwYWNlUHJvdmlkZXIuYWRkRmlsZUZvclVSTChzbmlwcGV0Lm5hbWUsIG5ldyBXZWJJ
bnNwZWN0b3IuU25pcHBldENvbnRlbnRQcm92aWRlcihzbmlwcGV0KSwgdHJ1ZSk7CisgICAgICAg
IHZhciB1aVNvdXJjZUNvZGUgPSB0aGlzLl93b3Jrc3BhY2VQcm92aWRlci5hZGRGaWxlQnlOYW1l
KCIiLCBzbmlwcGV0Lm5hbWUsIG5ldyBXZWJJbnNwZWN0b3IuU25pcHBldENvbnRlbnRQcm92aWRl
cihzbmlwcGV0KSwgdHJ1ZSk7CiAgICAgICAgIHZhciBzY3JpcHRGaWxlID0gbmV3IFdlYkluc3Bl
Y3Rvci5TbmlwcGV0U2NyaXB0RmlsZSh0aGlzLCB1aVNvdXJjZUNvZGUpOwogICAgICAgICB1aVNv
dXJjZUNvZGUuc2V0U2NyaXB0RmlsZShzY3JpcHRGaWxlKTsKICAgICAgICAgdGhpcy5fc25pcHBl
dElkRm9yVUlTb3VyY2VDb2RlLnB1dCh1aVNvdXJjZUNvZGUsIHNuaXBwZXQuaWQpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TZXR0aW5ncy5qcyBiL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2V0dGluZ3MuanMKaW5kZXggZTc2Mjdl
MGJkMjU3MTMwMzdjYzNkNmE1MGQ4ZmFhMjIyOWU1N2M1ZS4uMzM5ZWI5ZWZmZDE5ODU4NmI2NmYy
NmI1MTExZWJlYjA0ZWQ5MTRmZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L2Zyb250LWVuZC9TZXR0aW5ncy5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL1NldHRpbmdzLmpzCkBAIC0zNTMsNyArMzUzLDcgQEAgV2ViSW5zcGVjdG9yLlZlcnNp
b25Db250cm9sbGVyID0gZnVuY3Rpb24oKQogewogfQogCi1XZWJJbnNwZWN0b3IuVmVyc2lvbkNv
bnRyb2xsZXIuY3VycmVudFZlcnNpb24gPSAxOworV2ViSW5zcGVjdG9yLlZlcnNpb25Db250cm9s
bGVyLmN1cnJlbnRWZXJzaW9uID0gMjsKIAogV2ViSW5zcGVjdG9yLlZlcnNpb25Db250cm9sbGVy
LnByb3RvdHlwZSA9IHsKICAgICB1cGRhdGVWZXJzaW9uOiBmdW5jdGlvbigpCkBAIC0zODQsNiAr
Mzg0LDExIEBAIFdlYkluc3BlY3Rvci5WZXJzaW9uQ29udHJvbGxlci5wcm90b3R5cGUgPSB7CiAg
ICAgICAgIHRoaXMuX2NsZWFyQnJlYWtwb2ludHNXaGVuVG9vTWFueShXZWJJbnNwZWN0b3Iuc2V0
dGluZ3MuYnJlYWtwb2ludHMsIDUwMDAwMCk7CiAgICAgfSwKIAorICAgIF91cGRhdGVWZXJzaW9u
RnJvbTFUbzI6IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIHRoaXMuX21pZ3JhdGVCcmVha3Bv
aW50c0Zyb21VUkxUb1VSSShXZWJJbnNwZWN0b3Iuc2V0dGluZ3MuYnJlYWtwb2ludHMpOworICAg
IH0sCisKICAgICAvKioKICAgICAgKiBAcGFyYW0ge1dlYkluc3BlY3Rvci5TZXR0aW5nfSBicmVh
a3BvaW50c1NldHRpbmcKICAgICAgKiBAcGFyYW0ge251bWJlcn0gbWF4QnJlYWtwb2ludHNDb3Vu
dApAQCAtMzk0LDYgKzM5OSw0NSBAQCBXZWJJbnNwZWN0b3IuVmVyc2lvbkNvbnRyb2xsZXIucHJv
dG90eXBlID0gewogICAgICAgICAvLyBwZXJpb2RpY2FsIGJyZWFrcG9pbnRzIGR1cGxpY2F0aW9u
IGxlYWRpbmcgdG8gaW5zcGVjdG9yIHNsb3duZXNzLgogICAgICAgICBpZiAoYnJlYWtwb2ludHNT
ZXR0aW5nLmdldCgpLmxlbmd0aCA+IG1heEJyZWFrcG9pbnRzQ291bnQpCiAgICAgICAgICAgICBi
cmVha3BvaW50c1NldHRpbmcuc2V0KFtdKTsKKyAgICB9LAorCisgICAgLyoqCisgICAgICogQHBh
cmFtIHtXZWJJbnNwZWN0b3IuU2V0dGluZ30gYnJlYWtwb2ludHNTZXR0aW5nCisgICAgICovCisg
ICAgX21pZ3JhdGVCcmVha3BvaW50c0Zyb21VUkxUb1VSSTogZnVuY3Rpb24oYnJlYWtwb2ludHNT
ZXR0aW5nKQorICAgIHsKKyAgICAgICAgZnVuY3Rpb24gdXJpRm9yVVJMKHVybCwgdHlwZSkKKyAg
ICAgICAgeworICAgICAgICAgICAgdmFyIHNwbGl0dGVkVVJMID0gV2ViSW5zcGVjdG9yLlNpbXBs
ZVdvcmtzcGFjZVByb3ZpZGVyLnNwbGl0VVJMKHVybCk7CisgICAgICAgICAgICBzcGxpdHRlZFVS
TFswXSA9IHR5cGUgKyAiOiIgKyBzcGxpdHRlZFVSTFswXTsKKyAgICAgICAgICAgIHJldHVybiBz
cGxpdHRlZFVSTC5tYXAoV2ViSW5zcGVjdG9yLldvcmtzcGFjZS5lc2NhcGVTbGFzaGVzKS5qb2lu
KCIvIik7CisgICAgICAgIH0KKworICAgICAgICBmdW5jdGlvbiBuZXdCcmVha3BvaW50U291cmNl
RmlsZUlkKG9sZFNvdXJjZUZpbGVJZCkKKyAgICAgICAgeworICAgICAgICAgICAgdmFyIGRlb2Jm
dXNjYXRlZFByZWZpeCA9ICJkZW9iZnVzY2F0ZWQ6IjsKKyAgICAgICAgICAgIHZhciBpbmRleE9m
RGVvYmZ1c2NhdGVkID0gb2xkU291cmNlRmlsZUlkLmluZGV4T2YoZGVvYmZ1c2NhdGVkUHJlZml4
KTsKKyAgICAgICAgICAgIHZhciBtYXliZURlb2JmdXNjYXRlZCA9ICIiOworICAgICAgICAgICAg
aWYgKGluZGV4T2ZEZW9iZnVzY2F0ZWQgPT09IDApIHsKKyAgICAgICAgICAgICAgICBtYXliZURl
b2JmdXNjYXRlZCA9IGRlb2JmdXNjYXRlZFByZWZpeDsKKyAgICAgICAgICAgICAgICBvbGRTb3Vy
Y2VGaWxlSWQgPSBvbGRTb3VyY2VGaWxlSWQuc3Vic3RyKGRlb2JmdXNjYXRlZFByZWZpeC5sZW5n
dGgpOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICB2YXIgaW5kZXhPZkNvbG9uID0gb2xk
U291cmNlRmlsZUlkLmluZGV4T2YoIjoiKTsKKyAgICAgICAgICAgIHZhciBtYXliZVByb2plY3RQ
cmVmaXggPSBvbGRTb3VyY2VGaWxlSWQuc3Vic3RyKDAsIGluZGV4T2ZDb2xvbik7CisgICAgICAg
ICAgICBpZiAobWF5YmVQcm9qZWN0UHJlZml4ICYmIChtYXliZVByb2plY3RQcmVmaXggPT09ICJk
ZWJ1Z2dlciIgfHwgbWF5YmVQcm9qZWN0UHJlZml4ID09PSAibGl2ZWVkaXQiIHx8IG1heWJlUHJv
amVjdFByZWZpeCA9PT0gInNuaXBwZXRzIikpIHsKKyAgICAgICAgICAgICAgICB2YXIgdXJsID0g
b2xkU291cmNlRmlsZUlkLnN1YnN0cihpbmRleE9mQ29sb24gKyAxKTsKKyAgICAgICAgICAgICAg
ICByZXR1cm4gbWF5YmVEZW9iZnVzY2F0ZWQgKyB1cmlGb3JVUkwodXJsLCBtYXliZVByb2plY3RQ
cmVmaXgpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgaWYgKG9sZFNvdXJjZUZpbGVJZC5t
YXRjaCgvWzAtOV0rQFteXC9dK1wvLykpCisgICAgICAgICAgICAgICAgcmV0dXJuIG1heWJlRGVv
YmZ1c2NhdGVkICsgImZpbGVzeXN0ZW06IiArIG9sZFNvdXJjZUZpbGVJZDsKKyAgICAgICAgICAg
IHJldHVybiBtYXliZURlb2JmdXNjYXRlZCArIHVyaUZvclVSTChvbGRTb3VyY2VGaWxlSWQsICJu
ZXR3b3JrIik7CisgICAgICAgIH0KKworICAgICAgICB2YXIgYnJlYWtwb2ludHMgPSBicmVha3Bv
aW50c1NldHRpbmcuZ2V0KCk7CisgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgYnJlYWtwb2lu
dHMubGVuZ3RoOyArK2kpCisgICAgICAgICAgICBicmVha3BvaW50c1tpXS5zb3VyY2VGaWxlSWQg
PSBuZXdCcmVha3BvaW50U291cmNlRmlsZUlkKGJyZWFrcG9pbnRzW2ldLnNvdXJjZUZpbGVJZCk7
CisgICAgICAgIGJyZWFrcG9pbnRzU2V0dGluZy5zZXQoYnJlYWtwb2ludHMpOwogICAgIH0KIH0K
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TaW1wbGVX
b3Jrc3BhY2VQcm92aWRlci5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQv
U2ltcGxlV29ya3NwYWNlUHJvdmlkZXIuanMKaW5kZXggYWM1ODFjODE0M2Q2MDllYTU2MjdlNzRm
ZmU0ZWJmMzE3NGM5YmEyYy4uYjljOWRlNzMwNGQ1NjIyNGYyN2VkYjA4YWE1OWQ3MDA5ZjhlM2Fh
NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TaW1wbGVX
b3Jrc3BhY2VQcm92aWRlci5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQt
ZW5kL1NpbXBsZVdvcmtzcGFjZVByb3ZpZGVyLmpzCkBAIC0zMywyMSArMzMsMjcgQEAKICAqIEBp
bXBsZW1lbnRzIHtXZWJJbnNwZWN0b3IuUHJvamVjdERlbGVnYXRlfQogICogQGV4dGVuZHMge1dl
Ykluc3BlY3Rvci5PYmplY3R9CiAgKi8KLVdlYkluc3BlY3Rvci5TaW1wbGVQcm9qZWN0RGVsZWdh
dGUgPSBmdW5jdGlvbih0eXBlKQorV2ViSW5zcGVjdG9yLlNpbXBsZVByb2plY3REZWxlZ2F0ZSA9
IGZ1bmN0aW9uKG5hbWUsIHR5cGUpCiB7CisgICAgdGhpcy5fbmFtZSA9IG5hbWU7CiAgICAgdGhp
cy5fdHlwZSA9IHR5cGU7CiAgICAgLyoqIEB0eXBlIHtPYmplY3QuPHN0cmluZywgV2ViSW5zcGVj
dG9yLkNvbnRlbnRQcm92aWRlcj59ICovCiAgICAgdGhpcy5fY29udGVudFByb3ZpZGVycyA9IHt9
OwogICAgIHRoaXMuX2xhc3RVbmlxdWVTdWZmaXggPSAwOwogfQogCitXZWJJbnNwZWN0b3IuU2lt
cGxlUHJvamVjdERlbGVnYXRlLnByb2plY3RJZCA9IGZ1bmN0aW9uKG5hbWUsIHR5cGUpCit7Cisg
ICAgcmV0dXJuIHR5cGUgKyAiOiIgKyBuYW1lOworfQorCiBXZWJJbnNwZWN0b3IuU2ltcGxlUHJv
amVjdERlbGVnYXRlLnByb3RvdHlwZSA9IHsKICAgICAvKioKICAgICAgKiBAcmV0dXJuIHtzdHJp
bmd9CiAgICAgICovCiAgICAgaWQ6IGZ1bmN0aW9uKCkKICAgICB7Ci0gICAgICAgIHJldHVybiB0
aGlzLl90eXBlOworICAgICAgICByZXR1cm4gV2ViSW5zcGVjdG9yLlNpbXBsZVByb2plY3REZWxl
Z2F0ZS5wcm9qZWN0SWQodGhpcy5fbmFtZSwgdGhpcy5fdHlwZSk7CiAgICAgfSwKIAogICAgIC8q
KgpAQCAtNjMsNyArNjksMTggQEAgV2ViSW5zcGVjdG9yLlNpbXBsZVByb2plY3REZWxlZ2F0ZS5w
cm90b3R5cGUgPSB7CiAgICAgICovCiAgICAgZGlzcGxheU5hbWU6IGZ1bmN0aW9uKCkKICAgICB7
Ci0gICAgICAgIHJldHVybiAiIjsKKyAgICAgICAgaWYgKHR5cGVvZiB0aGlzLl9kaXNwbGF5TmFt
ZSAhPT0gInVuZGVmaW5lZCIpCisgICAgICAgICAgICByZXR1cm4gdGhpcy5fZGlzcGxheU5hbWU7
CisgICAgICAgIGlmICghdGhpcy5fbmFtZSkgeworICAgICAgICAgICAgdGhpcy5fZGlzcGxheU5h
bWUgPSAiIjsKKyAgICAgICAgICAgIHJldHVybiB0aGlzLl9kaXNwbGF5TmFtZTsKKyAgICAgICAg
fQorICAgICAgICB2YXIgcGFyc2VkVVJMID0gbmV3IFdlYkluc3BlY3Rvci5QYXJzZWRVUkwodGhp
cy5fbmFtZSk7CisgICAgICAgIGlmIChwYXJzZWRVUkwuaXNWYWxpZCkKKyAgICAgICAgICAgIHRo
aXMuX2Rpc3BsYXlOYW1lID0gcGFyc2VkVVJMLmhvc3QgKyAocGFyc2VkVVJMLnBvcnQgPyAoIjoi
ICsgcGFyc2VkVVJMLnBvcnQpIDogIiIpOworICAgICAgICBlbHNlCisgICAgICAgICAgICB0aGlz
Ll9kaXNwbGF5TmFtZSA9IHRoaXMuX25hbWU7CisgICAgICAgIHJldHVybiB0aGlzLl9kaXNwbGF5
TmFtZTsKICAgICB9LAogCiAgICAgLyoqCkBAIC04Nyw2ICsxMDQsNyBAQCBXZWJJbnNwZWN0b3Iu
U2ltcGxlUHJvamVjdERlbGVnYXRlLnByb3RvdHlwZSA9IHsKICAgICB9LAogCiAgICAgLyoqCisg
ICAgICogQHBhcmFtIHtzdHJpbmd9IHBhdGgKICAgICAgKiBAcGFyYW0ge3N0cmluZ30gcXVlcnkK
ICAgICAgKiBAcGFyYW0ge2Jvb2xlYW59IGNhc2VTZW5zaXRpdmUKICAgICAgKiBAcGFyYW0ge2Jv
b2xlYW59IGlzUmVnZXgKQEAgLTEwNCwxMiArMTIyLDEyIEBAIFdlYkluc3BlY3Rvci5TaW1wbGVQ
cm9qZWN0RGVsZWdhdGUucHJvdG90eXBlID0gewogICAgICAqIEBwYXJhbSB7V2ViSW5zcGVjdG9y
LkNvbnRlbnRQcm92aWRlcn0gY29udGVudFByb3ZpZGVyCiAgICAgICogQHBhcmFtIHtib29sZWFu
fSBpc0VkaXRhYmxlCiAgICAgICogQHBhcmFtIHtib29sZWFuPX0gaXNDb250ZW50U2NyaXB0Cisg
ICAgICogQHJldHVybiB7c3RyaW5nfQogICAgICAqLwogICAgIGFkZEZpbGU6IGZ1bmN0aW9uKHBh
dGgsIGZvcmNlVW5pcXVlUGF0aCwgdXJsLCBjb250ZW50UHJvdmlkZXIsIGlzRWRpdGFibGUsIGlz
Q29udGVudFNjcmlwdCkKICAgICB7CiAgICAgICAgIGlmIChmb3JjZVVuaXF1ZVBhdGgpCiAgICAg
ICAgICAgICBwYXRoID0gdGhpcy5fdW5pcXVlUGF0aChwYXRoKTsgCi0gICAgICAgIGNvbnNvbGUu
YXNzZXJ0KCF0aGlzLl9jb250ZW50UHJvdmlkZXJzW3BhdGhdKTsKICAgICAgICAgdmFyIGZpbGVE
ZXNjcmlwdG9yID0gbmV3IFdlYkluc3BlY3Rvci5GaWxlRGVzY3JpcHRvcihwYXRoLCB1cmwsIHVy
bCwgY29udGVudFByb3ZpZGVyLmNvbnRlbnRUeXBlKCksIGlzRWRpdGFibGUsIGlzQ29udGVudFNj
cmlwdCk7CiAgICAgICAgIHRoaXMuX2NvbnRlbnRQcm92aWRlcnNbcGF0aF0gPSBjb250ZW50UHJv
dmlkZXI7CiAgICAgICAgIHRoaXMuZGlzcGF0Y2hFdmVudFRvTGlzdGVuZXJzKFdlYkluc3BlY3Rv
ci5Qcm9qZWN0RGVsZWdhdGUuRXZlbnRzLkZpbGVBZGRlZCwgZmlsZURlc2NyaXB0b3IpOwpAQCAt
MTU2LDIzICsxNzQsODAgQEAgV2ViSW5zcGVjdG9yLlNpbXBsZVdvcmtzcGFjZVByb3ZpZGVyID0g
ZnVuY3Rpb24od29ya3NwYWNlLCB0eXBlKQogewogICAgIHRoaXMuX3dvcmtzcGFjZSA9IHdvcmtz
cGFjZTsKICAgICB0aGlzLl90eXBlID0gdHlwZTsKLSAgICB0aGlzLl9zaW1wbGVQcm9qZWN0RGVs
ZWdhdGUgPSBuZXcgV2ViSW5zcGVjdG9yLlNpbXBsZVByb2plY3REZWxlZ2F0ZSh0aGlzLl90eXBl
KTsKLSAgICB0aGlzLl93b3Jrc3BhY2UuYWRkUHJvamVjdCh0aGlzLl9zaW1wbGVQcm9qZWN0RGVs
ZWdhdGUpOworICAgIHRoaXMuX3NpbXBsZVByb2plY3REZWxlZ2F0ZXMgPSB7fTsKIH0KIAogLyoq
CiAgKiBAcGFyYW0ge3N0cmluZ30gdXJsCisgKiBAcmV0dXJuIHtBcnJheS48c3RyaW5nPn0KKyAq
LworV2ViSW5zcGVjdG9yLlNpbXBsZVdvcmtzcGFjZVByb3ZpZGVyLnNwbGl0VVJMID0gZnVuY3Rp
b24odXJsKQoreworICAgIHZhciBwYXJzZWRVUkwgPSBuZXcgV2ViSW5zcGVjdG9yLlBhcnNlZFVS
TCh1cmwpOworICAgIHZhciBkb21haW47CisgICAgdmFyIGZvbGRlclBhdGg7CisgICAgdmFyIG5h
bWU7CisgICAgaWYgKHBhcnNlZFVSTC5pc1ZhbGlkKSB7CisgICAgICAgIHZhciBkb21haW4gPSBw
YXJzZWRVUkwuc2NoZW1lICsgIjovLyIgKyBwYXJzZWRVUkwuaG9zdDsKKyAgICAgICAgaWYgKHBh
cnNlZFVSTC5wb3J0KQorICAgICAgICAgICAgZG9tYWluICs9ICI6IiArIHBhcnNlZFVSTC5wb3J0
OworICAgICAgICBmb2xkZXJQYXRoID0gcGFyc2VkVVJMLmZvbGRlclBhdGhDb21wb25lbnRzOwor
ICAgICAgICBuYW1lID0gcGFyc2VkVVJMLmxhc3RQYXRoQ29tcG9uZW50OworICAgICAgICBpZiAo
cGFyc2VkVVJMLnF1ZXJ5UGFyYW1zKQorICAgICAgICAgICAgbmFtZSArPSAiPyIgKyBwYXJzZWRV
UkwucXVlcnlQYXJhbXM7CisgICAgfSBlbHNlIHsKKyAgICAgICAgZG9tYWluID0gIiI7CisgICAg
ICAgIGZvbGRlclBhdGggPSAiIjsKKyAgICAgICAgbmFtZSA9IHVybDsKKyAgICB9CisgICAgdmFy
IHJlc3VsdCA9IFtkb21haW5dOworICAgIHZhciBzcGxpdHRlZFBhdGggPSBmb2xkZXJQYXRoLnNw
bGl0KCIvIik7CisgICAgZm9yICh2YXIgaSA9IDE7IGkgPCBzcGxpdHRlZFBhdGgubGVuZ3RoOyAr
K2kpCisgICAgICAgIHJlc3VsdC5wdXNoKHNwbGl0dGVkUGF0aFtpXSk7CisgICAgcmVzdWx0LnB1
c2gobmFtZSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKworLyoqCisgKiBAcGFyYW0ge0FycmF5
LjxzdHJpbmc+fSBwcm9qZWN0UGF0aAorICogQHBhcmFtIHtzdHJpbmd9IHR5cGUKICAqIEByZXR1
cm4ge3N0cmluZ30KICAqLwotV2ViSW5zcGVjdG9yLlNpbXBsZVdvcmtzcGFjZVByb3ZpZGVyLnVy
aUZvclVSTCA9IGZ1bmN0aW9uKHVybCwgdHlwZSkKLXsgICAKLSAgICB2YXIgdXJpVHlwZVByZWZp
eCA9IHR5cGUgIT09IFdlYkluc3BlY3Rvci5wcm9qZWN0VHlwZXMuTmV0d29yayA/ICh0eXBlICsg
IjoiKSA6ICIiOwotICAgIHZhciB1cmkgPSB1cmlUeXBlUHJlZml4ICsgdXJsOwotICAgIHJldHVy
biB1cmk7CitXZWJJbnNwZWN0b3IuU2ltcGxlV29ya3NwYWNlUHJvdmlkZXIuX3VyaUZvclByb2pl
Y3RQYXRoID0gZnVuY3Rpb24ocHJvamVjdFBhdGgsIHR5cGUpCit7CisgICAgdmFyIHByb2plY3RO
YW1lID0gcHJvamVjdFBhdGhbMF07CisgICAgdmFyIHByb2plY3RJZCA9IFdlYkluc3BlY3Rvci5T
aW1wbGVQcm9qZWN0RGVsZWdhdGUucHJvamVjdElkKHByb2plY3ROYW1lLCB0eXBlKTsKKyAgICBw
cm9qZWN0UGF0aFswXSA9IHByb2plY3RJZDsKKyAgICByZXR1cm4gcHJvamVjdFBhdGgubWFwKFdl
Ykluc3BlY3Rvci5Xb3Jrc3BhY2UuZXNjYXBlU2xhc2hlcykuam9pbigiLyIpOwogfQogCisvKioK
KyAqIEBwYXJhbSB7c3RyaW5nfSB1cmwKKyAqIEBwYXJhbSB7c3RyaW5nfSB0eXBlCisgKiBAcmV0
dXJuIHtzdHJpbmd9CisgKi8KK1dlYkluc3BlY3Rvci5TaW1wbGVXb3Jrc3BhY2VQcm92aWRlci51
cmlGb3JVUkwgPSBmdW5jdGlvbih1cmwsIHR5cGUpCit7CisgICAgdmFyIHNwbGl0dGVkVVJMID0g
V2ViSW5zcGVjdG9yLlNpbXBsZVdvcmtzcGFjZVByb3ZpZGVyLnNwbGl0VVJMKHVybCk7CisgICAg
cmV0dXJuIFdlYkluc3BlY3Rvci5TaW1wbGVXb3Jrc3BhY2VQcm92aWRlci5fdXJpRm9yUHJvamVj
dFBhdGgoc3BsaXR0ZWRVUkwsIHR5cGUpOworIH0KKwogV2ViSW5zcGVjdG9yLlNpbXBsZVdvcmtz
cGFjZVByb3ZpZGVyLnByb3RvdHlwZSA9IHsKICAgICAvKioKKyAgICAgKiBAcGFyYW0ge3N0cmlu
Z30gcHJvamVjdE5hbWUKKyAgICAgKiBAcmV0dXJuIHtXZWJJbnNwZWN0b3IuUHJvamVjdERlbGVn
YXRlfQorICAgICAqLworICAgIF9wcm9qZWN0RGVsZWdhdGU6IGZ1bmN0aW9uKHByb2plY3ROYW1l
KQorICAgIHsKKyAgICAgICAgaWYgKHRoaXMuX3NpbXBsZVByb2plY3REZWxlZ2F0ZXNbcHJvamVj
dE5hbWVdKQorICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3NpbXBsZVByb2plY3REZWxlZ2F0ZXNb
cHJvamVjdE5hbWVdOworICAgICAgICB2YXIgc2ltcGxlUHJvamVjdERlbGVnYXRlID0gbmV3IFdl
Ykluc3BlY3Rvci5TaW1wbGVQcm9qZWN0RGVsZWdhdGUocHJvamVjdE5hbWUsIHRoaXMuX3R5cGUp
OworICAgICAgICB0aGlzLl9zaW1wbGVQcm9qZWN0RGVsZWdhdGVzW3Byb2plY3ROYW1lXSA9IHNp
bXBsZVByb2plY3REZWxlZ2F0ZTsKKyAgICAgICAgdGhpcy5fd29ya3NwYWNlLmFkZFByb2plY3Qo
c2ltcGxlUHJvamVjdERlbGVnYXRlKTsKKyAgICAgICAgcmV0dXJuIHNpbXBsZVByb2plY3REZWxl
Z2F0ZTsKKyAgICB9LAorIAorICAgIC8qKgogICAgICAqIEBwYXJhbSB7c3RyaW5nfSB1cmwKICAg
ICAgKiBAcGFyYW0ge1dlYkluc3BlY3Rvci5Db250ZW50UHJvdmlkZXJ9IGNvbnRlbnRQcm92aWRl
cgogICAgICAqIEBwYXJhbSB7Ym9vbGVhbn0gaXNFZGl0YWJsZQpAQCAtMjAyLDkgKzI3NywyNyBA
QCBXZWJJbnNwZWN0b3IuU2ltcGxlV29ya3NwYWNlUHJvdmlkZXIucHJvdG90eXBlID0gewogICAg
ICAqLwogICAgIF9pbm5lckFkZEZpbGVGb3JVUkw6IGZ1bmN0aW9uKHVybCwgY29udGVudFByb3Zp
ZGVyLCBpc0VkaXRhYmxlLCBmb3JjZVVuaXF1ZSwgaXNDb250ZW50U2NyaXB0KQogICAgIHsKLSAg
ICAgICAgdmFyIHBhdGggPSBXZWJJbnNwZWN0b3IuU2ltcGxlV29ya3NwYWNlUHJvdmlkZXIudXJp
Rm9yVVJMKHVybCwgdGhpcy5fdHlwZSk7Ci0gICAgICAgIHBhdGggPSB0aGlzLl9zaW1wbGVQcm9q
ZWN0RGVsZWdhdGUuYWRkRmlsZShwYXRoLCBmb3JjZVVuaXF1ZSwgdXJsLCBjb250ZW50UHJvdmlk
ZXIsIGlzRWRpdGFibGUsIGlzQ29udGVudFNjcmlwdCk7Ci0gICAgICAgIHJldHVybiB0aGlzLl93
b3Jrc3BhY2UudWlTb3VyY2VDb2RlKHRoaXMuX3NpbXBsZVByb2plY3REZWxlZ2F0ZS5pZCgpLCBw
YXRoKTsKKyAgICAgICAgdmFyIHNwbGl0dGVkVVJMID0gV2ViSW5zcGVjdG9yLlNpbXBsZVdvcmtz
cGFjZVByb3ZpZGVyLnNwbGl0VVJMKHVybCk7CisgICAgICAgIHZhciBwcm9qZWN0TmFtZSA9IHNw
bGl0dGVkVVJMWzBdOworICAgICAgICB2YXIgcHJvamVjdERlbGVnYXRlID0gdGhpcy5fcHJvamVj
dERlbGVnYXRlKHByb2plY3ROYW1lKTsKKyAgICAgICAgdmFyIHBhdGggPSBXZWJJbnNwZWN0b3Iu
U2ltcGxlV29ya3NwYWNlUHJvdmlkZXIuX3VyaUZvclByb2plY3RQYXRoKHNwbGl0dGVkVVJMLCB0
aGlzLl90eXBlKTsKKyAgICAgICAgcGF0aCA9IHByb2plY3REZWxlZ2F0ZS5hZGRGaWxlKHBhdGgs
IGZvcmNlVW5pcXVlLCB1cmwsIGNvbnRlbnRQcm92aWRlciwgaXNFZGl0YWJsZSwgaXNDb250ZW50
U2NyaXB0KTsKKyAgICAgICAgcmV0dXJuIHRoaXMuX3dvcmtzcGFjZS51aVNvdXJjZUNvZGUocHJv
amVjdERlbGVnYXRlLmlkKCksIHBhdGgpOworICAgIH0sCisKKyAgICAvKioKKyAgICAgKiBAcGFy
YW0ge3N0cmluZ30gcHJvamVjdE5hbWUKKyAgICAgKiBAcGFyYW0ge3N0cmluZ30gbmFtZQorICAg
ICAqIEBwYXJhbSB7V2ViSW5zcGVjdG9yLkNvbnRlbnRQcm92aWRlcn0gY29udGVudFByb3ZpZGVy
CisgICAgICogQHBhcmFtIHtib29sZWFufSBpc0VkaXRhYmxlCisgICAgICogQHBhcmFtIHtib29s
ZWFuPX0gaXNDb250ZW50U2NyaXB0CisgICAgICovCisgICAgYWRkRmlsZUJ5TmFtZTogZnVuY3Rp
b24ocHJvamVjdE5hbWUsIG5hbWUsIGNvbnRlbnRQcm92aWRlciwgaXNFZGl0YWJsZSwgZm9yY2VV
bmlxdWUsIGlzQ29udGVudFNjcmlwdCkKKyAgICB7CisgICAgICAgIHZhciBwcm9qZWN0RGVsZWdh
dGUgPSB0aGlzLl9wcm9qZWN0RGVsZWdhdGUocHJvamVjdE5hbWUpOworICAgICAgICB2YXIgcGF0
aCA9IFdlYkluc3BlY3Rvci5TaW1wbGVXb3Jrc3BhY2VQcm92aWRlci5fdXJpRm9yUHJvamVjdFBh
dGgoW3Byb2plY3ROYW1lLCBuYW1lXSwgdGhpcy5fdHlwZSk7CisgICAgICAgIHBhdGggPSBwcm9q
ZWN0RGVsZWdhdGUuYWRkRmlsZShwYXRoLCBmb3JjZVVuaXF1ZSwgbmFtZSwgY29udGVudFByb3Zp
ZGVyLCBpc0VkaXRhYmxlLCBpc0NvbnRlbnRTY3JpcHQpOworICAgICAgICByZXR1cm4gdGhpcy5f
d29ya3NwYWNlLnVpU291cmNlQ29kZShwcm9qZWN0RGVsZWdhdGUuaWQoKSwgcGF0aCk7CiAgICAg
fSwKIAogICAgIC8qKgpAQCAtMjE4LDcgKzMxMSw5IEBAIFdlYkluc3BlY3Rvci5TaW1wbGVXb3Jr
c3BhY2VQcm92aWRlci5wcm90b3R5cGUgPSB7CiAKICAgICByZXNldDogZnVuY3Rpb24oKQogICAg
IHsKLSAgICAgICAgdGhpcy5fc2ltcGxlUHJvamVjdERlbGVnYXRlLnJlc2V0KCk7CisgICAgICAg
IGZvciAodmFyIHByb2plY3ROYW1lIGluIHRoaXMuX3NpbXBsZVByb2plY3REZWxlZ2F0ZXMpCisg
ICAgICAgICAgICB0aGlzLl9zaW1wbGVQcm9qZWN0RGVsZWdhdGVzW3Byb2plY3ROYW1lXS5yZXNl
dCgpOworICAgICAgICB0aGlzLl9zaW1wbGVQcm9qZWN0RGVsZWdhdGVzID0ge307CiAgICAgfSwK
ICAgICAKICAgICBfX3Byb3RvX186IFdlYkluc3BlY3Rvci5PYmplY3QucHJvdG90eXBlCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1dvcmtzcGFjZS5qcyBi
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvV29ya3NwYWNlLmpzCmluZGV4IDcw
MDI2MjMwOTU1OTc0MzFlZjAzNTZkMTg3MmQ4M2JiYjU3Y2QyYTMuLjRmYTI1Y2RhNGRhZjM2NzMw
NjhlNDA4OTdiZDNkNmFlMGZiODE4NGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9mcm9udC1lbmQvV29ya3NwYWNlLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9mcm9udC1lbmQvV29ya3NwYWNlLmpzCkBAIC0yOTUsNyArMjk1LDYgQEAgV2ViSW5zcGVjdG9y
LlByb2plY3QucHJvdG90eXBlID0gewogV2ViSW5zcGVjdG9yLnByb2plY3RUeXBlcyA9IHsKICAg
ICBEZWJ1Z2dlcjogImRlYnVnZ2VyIiwKICAgICBMaXZlRWRpdDogImxpdmVlZGl0IiwKLSAgICBD
b21waWxlcjogImNvbXBpbGVyIiwKICAgICBOZXR3b3JrOiAibmV0d29yayIsCiAgICAgU25pcHBl
dHM6ICJzbmlwcGV0cyIsCiAgICAgRmlsZVN5c3RlbTogImZpbGVzeXN0ZW0iCkBAIC0zMTcsNiAr
MzE2LDE1IEBAIFdlYkluc3BlY3Rvci5Xb3Jrc3BhY2UuRXZlbnRzID0gewogICAgIFByb2plY3RX
aWxsUmVzZXQ6ICJQcm9qZWN0V2lsbFJlc2V0IgogfQogCisvKioKKyAqIEBwYXJhbSB7c3RyaW5n
fSBzdHIKKyAqIEByZXR1cm4ge3N0cmluZ30KKyAqLworV2ViSW5zcGVjdG9yLldvcmtzcGFjZS5l
c2NhcGVTbGFzaGVzID0gZnVuY3Rpb24oc3RyKQoreworICAgIHJldHVybiBzdHIucmVwbGFjZSgv
XFwvZywgIlxcXFwiKS5yZXBsYWNlKC9cLy9nLCAiXFwvIik7Cit9CisKIFdlYkluc3BlY3Rvci5X
b3Jrc3BhY2UucHJvdG90eXBlID0gewogICAgIC8qKgogICAgICAqIEBwYXJhbSB7c3RyaW5nfSBw
cm9qZWN0SWQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwppbmRleCA4N2M2NjU1MDEzZmJmNGNjZTQ0ZDJkNzU3Zjc3YTllYWE0ZWZhNjky
Li5iNjZkYTE1YzkzMmJmMGUwM2I0ZjZkYjVhMjA5MTE5ZWY2YmFhNDgwIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDUg
KzEsMjEgQEAKIDIwMTMtMDItMTMgIFZzZXZvbG9kIFZsYXNvdiAgPHZzZXZpa0BjaHJvbWl1bS5v
cmc+CiAKKyAgICAgICAgV2ViIEluc3BlY3RvcjogQ3JlYXRlIHNlcGFyYXRlIHByb2plY3QgZm9y
IGVhY2ggZG9tYWluIGZvciBVSVNvdXJjZUNvZGUgYmFzZWQgb24gYnJvd3NlciByZXNvdXJjZXMu
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDk2OTEK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGh0dHAv
dGVzdHMvaW5zcGVjdG9yL3NlYXJjaC9zY3JpcHRzLXNlYXJjaC1zY29wZS1leHBlY3RlZC50eHQ6
CisgICAgICAgICogaW5zcGVjdG9yL2RlYnVnZ2VyL2JyZWFrcG9pbnQtbWFuYWdlci1leHBlY3Rl
ZC50eHQ6CisgICAgICAgICogaW5zcGVjdG9yL2RlYnVnZ2VyL2JyZWFrcG9pbnQtbWFuYWdlci5o
dG1sOgorICAgICAgICAqIGluc3BlY3Rvci9kZWJ1Z2dlci9saXZlLWVkaXQtYnJlYWtwb2ludHMt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGluc3BlY3Rvci9maWxlLW1hcHBpbmctZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIGluc3BlY3Rvci91aXNvdXJjZWNvZGUtcmV2aXNpb25zLmh0bWw6Cisg
ICAgICAgICogaW5zcGVjdG9yL3ZlcnNpb24tY29udHJvbGxlci1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogaW5zcGVjdG9yL3ZlcnNpb24tY29udHJvbGxlci5odG1sOgorCisyMDEzLTAyLTEzICBW
c2V2b2xvZCBWbGFzb3YgIDx2c2V2aWtAY2hyb21pdW0ub3JnPgorCiAgICAgICAgIFdlYiBJbnNw
ZWN0b3I6IFJlbW92ZSB1cmlGb3JGaWxlIGFuZCBmaWxlRm9yVVJJIG1ldGhvZHMgZnJvbSBGaWxl
U3lzdGVtTWFwcGluZy4KICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTEwOTcwNAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2luc3Bl
Y3Rvci9zZWFyY2gvc2NyaXB0cy1zZWFyY2gtc2NvcGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy9pbnNwZWN0b3Ivc2VhcmNoL3NjcmlwdHMtc2VhcmNoLXNjb3BlLWV4cGVj
dGVkLnR4dAppbmRleCBiZjM1ZTM4YzcwMWU0YWYwM2FlNTVlZGU1MjVjMDFmYzQzMTk4YmU2Li4w
NzI0ZTdhMmZhNmEzOTEyNzM5NDExZWUzNmY3YmZmMGEwYmI2MzY1IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2luc3BlY3Rvci9zZWFyY2gvc2NyaXB0cy1zZWFyY2gtc2NvcGUt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvaW5zcGVjdG9yL3NlYXJj
aC9zY3JpcHRzLXNlYXJjaC1zY29wZS1leHBlY3RlZC50eHQKQEAgLTEsMzAgKzEsMzAgQEAKIAog
CiBSdW5uaW5nOiB0ZXN0SWdub3JlQ2FzZQotU2VhcmNoIHJlc3VsdCAjMTogdWlTb3VyY2VDb2Rl
LnVyaSA9IGh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9pbnNwZWN0b3Ivc2VhcmNoL3Jlc291cmNlcy9z
ZWFyY2guY3NzCitTZWFyY2ggcmVzdWx0ICMxOiB1aVNvdXJjZUNvZGUudXJpID0gbmV0d29yazpo
dHRwOlwvXC8xMjcuMC4wLjE6ODAwMC9pbnNwZWN0b3Ivc2VhcmNoL3Jlc291cmNlcy9zZWFyY2gu
Y3NzCiAgIHNlYXJjaCBtYXRjaCAjMTogbGluZU51bWJlciA9IDAsIGxpbmVDb250ZW50ID0gJ2Rp
di5zZWFyY2hUZXN0VW5pcXVlU3RyaW5nIHsnCiAgIHNlYXJjaCBtYXRjaCAjMjogbGluZU51bWJl
ciA9IDQsIGxpbmVDb250ZW50ID0gJ2Rpdi5zZWFyY2hUZXN0VW5pcXVlU3RyaW5nOmhvdmVyIHsn
CiAgIHNlYXJjaCBtYXRjaCAjMzogbGluZU51bWJlciA9IDUsIGxpbmVDb250ZW50ID0gJyAgICAv
KiBhbm90aGVyIHNlYXJjaFRlc3RVbmlxdWVTdHJpbmcgb2NjdXJlbmNlICovJwotU2VhcmNoIHJl
c3VsdCAjMjogdWlTb3VyY2VDb2RlLnVyaSA9IGh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9pbnNwZWN0
b3Ivc2VhcmNoL3Jlc291cmNlcy9zZWFyY2guaHRtbAorU2VhcmNoIHJlc3VsdCAjMjogdWlTb3Vy
Y2VDb2RlLnVyaSA9IG5ldHdvcms6aHR0cDpcL1wvMTI3LjAuMC4xOjgwMDAvaW5zcGVjdG9yL3Nl
YXJjaC9yZXNvdXJjZXMvc2VhcmNoLmh0bWwKICAgc2VhcmNoIG1hdGNoICMxOiBsaW5lTnVtYmVy
ID0gNSwgbGluZUNvbnRlbnQgPSAnPGRpdj5zZWFyY2hUZXN0VW5pcXVlU3RyaW5nPC9kaXY+Jwog
ICBzZWFyY2ggbWF0Y2ggIzI6IGxpbmVOdW1iZXIgPSA3LCBsaW5lQ29udGVudCA9ICc8IS0tIHNl
YXJjaFRlc3RVbmlxdWVTdHJpbmcgLS0+JwogICBzZWFyY2ggbWF0Y2ggIzM6IGxpbmVOdW1iZXIg
PSA5LCBsaW5lQ29udGVudCA9ICc8ZGl2IGlkPSJzZWFyY2hUZXN0VW5pcXVlU3RyaW5nIj5kaXYg
dGV4dDwvZGl2PicKLVNlYXJjaCByZXN1bHQgIzM6IHVpU291cmNlQ29kZS51cmkgPSBodHRwOi8v
MTI3LjAuMC4xOjgwMDAvaW5zcGVjdG9yL3NlYXJjaC9yZXNvdXJjZXMvc2VhcmNoLmpzCitTZWFy
Y2ggcmVzdWx0ICMzOiB1aVNvdXJjZUNvZGUudXJpID0gbmV0d29yazpodHRwOlwvXC8xMjcuMC4w
LjE6ODAwMC9pbnNwZWN0b3Ivc2VhcmNoL3Jlc291cmNlcy9zZWFyY2guanMKICAgc2VhcmNoIG1h
dGNoICMxOiBsaW5lTnVtYmVyID0gMCwgbGluZUNvbnRlbnQgPSAnZnVuY3Rpb24gc2VhcmNoVGVz
dFVuaXF1ZVN0cmluZygpJwogICBzZWFyY2ggbWF0Y2ggIzI6IGxpbmVOdW1iZXIgPSAzLCBsaW5l
Q29udGVudCA9ICcgICAgLy8gc2VhcmNoVGVzdFVuaXF1ZVN0cmluZyB0d28gb2NjdXJlbmNlcyBv
biB0aGUgc2FtZSBsaW5lIHNlYXJjaFRlc3RVbmlxdWVTdHJpbmcnCiAgIHNlYXJjaCBtYXRjaCAj
MzogbGluZU51bWJlciA9IDksIGxpbmVDb250ZW50ID0gJyAgICBzZWFyY2hUZXN0VW5pcXVlU3Ry
aW5nKCk7JwogICBzZWFyY2ggbWF0Y2ggIzQ6IGxpbmVOdW1iZXIgPSAxMCwgbGluZUNvbnRlbnQg
PSAnICAgIC8vIFNFQVJDSFRlc3RVbmlxdWVTdHJpbmcoKTsnCiAKIFJ1bm5pbmc6IHRlc3RDYXNl
U2Vuc2l0aXZlCi1TZWFyY2ggcmVzdWx0ICMxOiB1aVNvdXJjZUNvZGUudXJpID0gaHR0cDovLzEy
Ny4wLjAuMTo4MDAwL2luc3BlY3Rvci9zZWFyY2gvcmVzb3VyY2VzL3NlYXJjaC5jc3MKK1NlYXJj
aCByZXN1bHQgIzE6IHVpU291cmNlQ29kZS51cmkgPSBuZXR3b3JrOmh0dHA6XC9cLzEyNy4wLjAu
MTo4MDAwL2luc3BlY3Rvci9zZWFyY2gvcmVzb3VyY2VzL3NlYXJjaC5jc3MKICAgc2VhcmNoIG1h
dGNoICMxOiBsaW5lTnVtYmVyID0gMCwgbGluZUNvbnRlbnQgPSAnZGl2LnNlYXJjaFRlc3RVbmlx
dWVTdHJpbmcgeycKICAgc2VhcmNoIG1hdGNoICMyOiBsaW5lTnVtYmVyID0gNCwgbGluZUNvbnRl
bnQgPSAnZGl2LnNlYXJjaFRlc3RVbmlxdWVTdHJpbmc6aG92ZXIgeycKICAgc2VhcmNoIG1hdGNo
ICMzOiBsaW5lTnVtYmVyID0gNSwgbGluZUNvbnRlbnQgPSAnICAgIC8qIGFub3RoZXIgc2VhcmNo
VGVzdFVuaXF1ZVN0cmluZyBvY2N1cmVuY2UgKi8nCi1TZWFyY2ggcmVzdWx0ICMyOiB1aVNvdXJj
ZUNvZGUudXJpID0gaHR0cDovLzEyNy4wLjAuMTo4MDAwL2luc3BlY3Rvci9zZWFyY2gvcmVzb3Vy
Y2VzL3NlYXJjaC5odG1sCitTZWFyY2ggcmVzdWx0ICMyOiB1aVNvdXJjZUNvZGUudXJpID0gbmV0
d29yazpodHRwOlwvXC8xMjcuMC4wLjE6ODAwMC9pbnNwZWN0b3Ivc2VhcmNoL3Jlc291cmNlcy9z
ZWFyY2guaHRtbAogICBzZWFyY2ggbWF0Y2ggIzE6IGxpbmVOdW1iZXIgPSA1LCBsaW5lQ29udGVu
dCA9ICc8ZGl2PnNlYXJjaFRlc3RVbmlxdWVTdHJpbmc8L2Rpdj4nCiAgIHNlYXJjaCBtYXRjaCAj
MjogbGluZU51bWJlciA9IDcsIGxpbmVDb250ZW50ID0gJzwhLS0gc2VhcmNoVGVzdFVuaXF1ZVN0
cmluZyAtLT4nCiAgIHNlYXJjaCBtYXRjaCAjMzogbGluZU51bWJlciA9IDksIGxpbmVDb250ZW50
ID0gJzxkaXYgaWQ9InNlYXJjaFRlc3RVbmlxdWVTdHJpbmciPmRpdiB0ZXh0PC9kaXY+JwotU2Vh
cmNoIHJlc3VsdCAjMzogdWlTb3VyY2VDb2RlLnVyaSA9IGh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9p
bnNwZWN0b3Ivc2VhcmNoL3Jlc291cmNlcy9zZWFyY2guanMKK1NlYXJjaCByZXN1bHQgIzM6IHVp
U291cmNlQ29kZS51cmkgPSBuZXR3b3JrOmh0dHA6XC9cLzEyNy4wLjAuMTo4MDAwL2luc3BlY3Rv
ci9zZWFyY2gvcmVzb3VyY2VzL3NlYXJjaC5qcwogICBzZWFyY2ggbWF0Y2ggIzE6IGxpbmVOdW1i
ZXIgPSAwLCBsaW5lQ29udGVudCA9ICdmdW5jdGlvbiBzZWFyY2hUZXN0VW5pcXVlU3RyaW5nKCkn
CiAgIHNlYXJjaCBtYXRjaCAjMjogbGluZU51bWJlciA9IDMsIGxpbmVDb250ZW50ID0gJyAgICAv
LyBzZWFyY2hUZXN0VW5pcXVlU3RyaW5nIHR3byBvY2N1cmVuY2VzIG9uIHRoZSBzYW1lIGxpbmUg
c2VhcmNoVGVzdFVuaXF1ZVN0cmluZycKICAgc2VhcmNoIG1hdGNoICMzOiBsaW5lTnVtYmVyID0g
OSwgbGluZUNvbnRlbnQgPSAnICAgIHNlYXJjaFRlc3RVbmlxdWVTdHJpbmcoKTsnCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvYnJlYWtwb2ludC1tYW5hZ2VyLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9icmVha3BvaW50LW1h
bmFnZXItZXhwZWN0ZWQudHh0CmluZGV4IDM5MjkyYjcwMjgwNDFmYjU5YTVkYjdmZWI1ODViMDhi
YmE0Y2Y0ZTQuLjlmODA3ZGUzNjkxMzIyOWUwMmM3YzQ5MDcyMTFkY2ZmZjUxYjRlZjIgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9icmVha3BvaW50LW1hbmFnZXIt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9icmVha3Bv
aW50LW1hbmFnZXItZXhwZWN0ZWQudHh0CkBAIC0xMCw3ICsxMCw3IEBAIFJ1bm5pbmc6IHRlc3RT
ZXRCcmVha3BvaW50CiAgICAgYnJlYWtwb2ludEFkZGVkKGEuanMsIDMwLCAsIHRydWUpCiAgICAg
TG9jYXRpb24gY3JlYXRlZDogYS5qczozMAogICBEdW1waW5nIFN0b3JhZ2UKLSAgICBhLmpzOjMw
IGVuYWJsZWQ6dHJ1ZSBjb25kaXRpb246CisgICAgbmV0d29yazovYS5qczozMCBlbmFibGVkOnRy
dWUgY29uZGl0aW9uOgogICBSZXNldHRpbmcgYnJlYWtwb2ludCBtYW5hZ2VyCiAgICAgYnJlYWtw
b2ludFJlbW92ZWQoYS5qcywgMzApCiAgICAgTG9jYXRpb24gZGlzcG9zZWQ6IGEuanM6MzAKQEAg
LTIzLDE0ICsyMywxNCBAQCBSdW5uaW5nOiB0ZXN0U2V0RGlzYWJsZWRCcmVha3BvaW50CiAgIFNl
dHRpbmcgYnJlYWtwb2ludCBhdCBhLmpzOjMwIGVuYWJsZWQ6ZmFsc2UgY29uZGl0aW9uOgogICAg
IGJyZWFrcG9pbnRBZGRlZChhLmpzLCAzMCwgLCBmYWxzZSkKICAgRHVtcGluZyBTdG9yYWdlCi0g
ICAgYS5qczozMCBlbmFibGVkOmZhbHNlIGNvbmRpdGlvbjoKKyAgICBuZXR3b3JrOi9hLmpzOjMw
IGVuYWJsZWQ6ZmFsc2UgY29uZGl0aW9uOgogICBFbmFibGluZyBicmVha3BvaW50CiAgICAgZGVi
dWdnZXJNb2RlbC5zZXRCcmVha3BvaW50KGEuanM6MzA6KQogICAgIGJyZWFrcG9pbnRSZW1vdmVk
KGEuanMsIDMwKQogICAgIGJyZWFrcG9pbnRBZGRlZChhLmpzLCAzMCwgLCB0cnVlKQogICAgIExv
Y2F0aW9uIGNyZWF0ZWQ6IGEuanM6MzAKICAgRHVtcGluZyBTdG9yYWdlCi0gICAgYS5qczozMCBl
bmFibGVkOnRydWUgY29uZGl0aW9uOgorICAgIG5ldHdvcms6L2EuanM6MzAgZW5hYmxlZDp0cnVl
IGNvbmRpdGlvbjoKICAgUmVzZXR0aW5nIGJyZWFrcG9pbnQgbWFuYWdlcgogICAgIGJyZWFrcG9p
bnRSZW1vdmVkKGEuanMsIDMwKQogICAgIExvY2F0aW9uIGRpc3Bvc2VkOiBhLmpzOjMwCkBAIC00
NSw3ICs0NSw3IEBAIFJ1bm5pbmc6IHRlc3RTZXRDb25kaXRpb25hbEJyZWFrcG9pbnQKICAgICBi
cmVha3BvaW50QWRkZWQoYS5qcywgMzAsIGNvbmRpdGlvbiwgdHJ1ZSkKICAgICBMb2NhdGlvbiBj
cmVhdGVkOiBhLmpzOjMwCiAgIER1bXBpbmcgU3RvcmFnZQotICAgIGEuanM6MzAgZW5hYmxlZDp0
cnVlIGNvbmRpdGlvbjpjb25kaXRpb24KKyAgICBuZXR3b3JrOi9hLmpzOjMwIGVuYWJsZWQ6dHJ1
ZSBjb25kaXRpb246Y29uZGl0aW9uCiAgIFVwZGF0aW5nIGNvbmRpdGlvbgogICAgIGRlYnVnZ2Vy
TW9kZWwucmVtb3ZlQnJlYWtwb2ludChhLmpzOjMwKQogICAgIGRlYnVnZ2VyTW9kZWwuc2V0QnJl
YWtwb2ludChhLmpzOjMwOikKQEAgLTU0LDcgKzU0LDcgQEAgUnVubmluZzogdGVzdFNldENvbmRp
dGlvbmFsQnJlYWtwb2ludAogICAgIGJyZWFrcG9pbnRBZGRlZChhLmpzLCAzMCwgLCB0cnVlKQog
ICAgIExvY2F0aW9uIGNyZWF0ZWQ6IGEuanM6MzAKICAgRHVtcGluZyBTdG9yYWdlCi0gICAgYS5q
czozMCBlbmFibGVkOnRydWUgY29uZGl0aW9uOgorICAgIG5ldHdvcms6L2EuanM6MzAgZW5hYmxl
ZDp0cnVlIGNvbmRpdGlvbjoKICAgUmVzZXR0aW5nIGJyZWFrcG9pbnQgbWFuYWdlcgogICAgIGJy
ZWFrcG9pbnRSZW1vdmVkKGEuanMsIDMwKQogICAgIExvY2F0aW9uIGRpc3Bvc2VkOiBhLmpzOjMw
CkBAIC02MywxOCArNjMsMTggQEAgUnVubmluZzogdGVzdFNldENvbmRpdGlvbmFsQnJlYWtwb2lu
dAogUnVubmluZzogdGVzdFJlc3RvcmVCcmVha3BvaW50cwogICBDcmVhdGVkIGJyZWFrcG9pbnRz
IG1hbmFnZXIKICAgRHVtcGluZyBTdG9yYWdlCi0gICAgYS5qczoxMCBlbmFibGVkOnRydWUgY29u
ZGl0aW9uOmZvbyA9PSBiYXIKLSAgICBhLmpzOjIwIGVuYWJsZWQ6ZmFsc2UgY29uZGl0aW9uOgot
ICAgIGIuanM6MyBlbmFibGVkOnRydWUgY29uZGl0aW9uOgorICAgIG5ldHdvcms6L2EuanM6MTAg
ZW5hYmxlZDp0cnVlIGNvbmRpdGlvbjpmb28gPT0gYmFyCisgICAgbmV0d29yazovYS5qczoyMCBl
bmFibGVkOmZhbHNlIGNvbmRpdGlvbjoKKyAgICBuZXR3b3JrOi9iLmpzOjMgZW5hYmxlZDp0cnVl
IGNvbmRpdGlvbjoKICAgQWRkaW5nIFVJU291cmNlQ29kZTogYS5qcwogICAgIGRlYnVnZ2VyTW9k
ZWwuc2V0QnJlYWtwb2ludChhLmpzOjEwOmZvbyA9PSBiYXIpCiAgICAgYnJlYWtwb2ludEFkZGVk
KGEuanMsIDEwLCBmb28gPT0gYmFyLCB0cnVlKQogICAgIExvY2F0aW9uIGNyZWF0ZWQ6IGEuanM6
MTAKICAgICBicmVha3BvaW50QWRkZWQoYS5qcywgMjAsICwgZmFsc2UpCiAgIER1bXBpbmcgU3Rv
cmFnZQotICAgIGEuanM6MTAgZW5hYmxlZDp0cnVlIGNvbmRpdGlvbjpmb28gPT0gYmFyCi0gICAg
YS5qczoyMCBlbmFibGVkOmZhbHNlIGNvbmRpdGlvbjoKLSAgICBiLmpzOjMgZW5hYmxlZDp0cnVl
IGNvbmRpdGlvbjoKKyAgICBuZXR3b3JrOi9hLmpzOjEwIGVuYWJsZWQ6dHJ1ZSBjb25kaXRpb246
Zm9vID09IGJhcgorICAgIG5ldHdvcms6L2EuanM6MjAgZW5hYmxlZDpmYWxzZSBjb25kaXRpb246
CisgICAgbmV0d29yazovYi5qczozIGVuYWJsZWQ6dHJ1ZSBjb25kaXRpb246CiAgIFJlc2V0dGlu
ZyBicmVha3BvaW50IG1hbmFnZXIKICAgICBicmVha3BvaW50UmVtb3ZlZChhLmpzLCAxMCkKICAg
ICBMb2NhdGlvbiBkaXNwb3NlZDogYS5qczoxMApAQCAtODQsOSArODQsOSBAQCBSdW5uaW5nOiB0
ZXN0UmVzdG9yZUJyZWFrcG9pbnRzCiBSdW5uaW5nOiB0ZXN0UmVzdG9yZUJyZWFrcG9pbnRzVHdp
Y2UKICAgQ3JlYXRlZCBicmVha3BvaW50cyBtYW5hZ2VyCiAgIER1bXBpbmcgU3RvcmFnZQotICAg
IGEuanM6MTAgZW5hYmxlZDp0cnVlIGNvbmRpdGlvbjpmb28gPT0gYmFyCi0gICAgYS5qczoyMCBl
bmFibGVkOmZhbHNlIGNvbmRpdGlvbjoKLSAgICBiLmpzOjMgZW5hYmxlZDp0cnVlIGNvbmRpdGlv
bjoKKyAgICBuZXR3b3JrOi9hLmpzOjEwIGVuYWJsZWQ6dHJ1ZSBjb25kaXRpb246Zm9vID09IGJh
cgorICAgIG5ldHdvcms6L2EuanM6MjAgZW5hYmxlZDpmYWxzZSBjb25kaXRpb246CisgICAgbmV0
d29yazovYi5qczozIGVuYWJsZWQ6dHJ1ZSBjb25kaXRpb246CiAgIEFkZGluZyBVSVNvdXJjZUNv
ZGU6IGEuanMKICAgICBkZWJ1Z2dlck1vZGVsLnNldEJyZWFrcG9pbnQoYS5qczoxMDpmb28gPT0g
YmFyKQogICAgIGJyZWFrcG9pbnRBZGRlZChhLmpzLCAxMCwgZm9vID09IGJhciwgdHJ1ZSkKQEAg
LTk0LDkgKzk0LDkgQEAgUnVubmluZzogdGVzdFJlc3RvcmVCcmVha3BvaW50c1R3aWNlCiAgICAg
YnJlYWtwb2ludEFkZGVkKGEuanMsIDIwLCAsIGZhbHNlKQogICBBZGRpbmcgVUlTb3VyY2VDb2Rl
OiBhLmpzCiAgIER1bXBpbmcgU3RvcmFnZQotICAgIGEuanM6MTAgZW5hYmxlZDp0cnVlIGNvbmRp
dGlvbjpmb28gPT0gYmFyCi0gICAgYS5qczoyMCBlbmFibGVkOmZhbHNlIGNvbmRpdGlvbjoKLSAg
ICBiLmpzOjMgZW5hYmxlZDp0cnVlIGNvbmRpdGlvbjoKKyAgICBuZXR3b3JrOi9hLmpzOjEwIGVu
YWJsZWQ6dHJ1ZSBjb25kaXRpb246Zm9vID09IGJhcgorICAgIG5ldHdvcms6L2EuanM6MjAgZW5h
YmxlZDpmYWxzZSBjb25kaXRpb246CisgICAgbmV0d29yazovYi5qczozIGVuYWJsZWQ6dHJ1ZSBj
b25kaXRpb246CiAgIFJlc2V0dGluZyBicmVha3BvaW50IG1hbmFnZXIKICAgICBicmVha3BvaW50
UmVtb3ZlZChhLmpzLCAxMCkKICAgICBMb2NhdGlvbiBkaXNwb3NlZDogYS5qczoxMApAQCAtMTA2
LDkgKzEwNiw5IEBAIFJ1bm5pbmc6IHRlc3RSZXN0b3JlQnJlYWtwb2ludHNUd2ljZQogUnVubmlu
ZzogdGVzdFJlc3RvcmVCcmVha3BvaW50c0FmdGVyVGVtcG9yYXJ5VUlTb3VyY2VDb2RlUmVtb3Zl
ZAogICBDcmVhdGVkIGJyZWFrcG9pbnRzIG1hbmFnZXIKICAgRHVtcGluZyBTdG9yYWdlCi0gICAg
YS5qczoxMCBlbmFibGVkOnRydWUgY29uZGl0aW9uOmZvbyA9PSBiYXIKLSAgICBhLmpzOjIwIGVu
YWJsZWQ6ZmFsc2UgY29uZGl0aW9uOgotICAgIGIuanM6MyBlbmFibGVkOnRydWUgY29uZGl0aW9u
OgorICAgIG5ldHdvcms6L2EuanM6MTAgZW5hYmxlZDp0cnVlIGNvbmRpdGlvbjpmb28gPT0gYmFy
CisgICAgbmV0d29yazovYS5qczoyMCBlbmFibGVkOmZhbHNlIGNvbmRpdGlvbjoKKyAgICBuZXR3
b3JrOi9iLmpzOjMgZW5hYmxlZDp0cnVlIGNvbmRpdGlvbjoKICAgQWRkaW5nIHRlbXBvcmFyeSBV
SVNvdXJjZUNvZGU6IGEuanMpCiAgIEFkZGluZyBVSVNvdXJjZUNvZGU6IGEuanMKICAgICBkZWJ1
Z2dlck1vZGVsLnNldEJyZWFrcG9pbnQoYS5qczoxMDpmb28gPT0gYmFyKQpAQCAtMTE2LDkgKzEx
Niw5IEBAIFJ1bm5pbmc6IHRlc3RSZXN0b3JlQnJlYWtwb2ludHNBZnRlclRlbXBvcmFyeVVJU291
cmNlQ29kZVJlbW92ZWQKICAgICBMb2NhdGlvbiBjcmVhdGVkOiBhLmpzOjEwCiAgICAgYnJlYWtw
b2ludEFkZGVkKGEuanMsIDIwLCAsIGZhbHNlKQogICBEdW1waW5nIFN0b3JhZ2UKLSAgICBhLmpz
OjEwIGVuYWJsZWQ6dHJ1ZSBjb25kaXRpb246Zm9vID09IGJhcgotICAgIGEuanM6MjAgZW5hYmxl
ZDpmYWxzZSBjb25kaXRpb246Ci0gICAgYi5qczozIGVuYWJsZWQ6dHJ1ZSBjb25kaXRpb246Cisg
ICAgbmV0d29yazovYS5qczoxMCBlbmFibGVkOnRydWUgY29uZGl0aW9uOmZvbyA9PSBiYXIKKyAg
ICBuZXR3b3JrOi9hLmpzOjIwIGVuYWJsZWQ6ZmFsc2UgY29uZGl0aW9uOgorICAgIG5ldHdvcms6
L2IuanM6MyBlbmFibGVkOnRydWUgY29uZGl0aW9uOgogICBSZXNldHRpbmcgYnJlYWtwb2ludCBt
YW5hZ2VyCiAgICAgYnJlYWtwb2ludFJlbW92ZWQoYS5qcywgMTApCiAgICAgTG9jYXRpb24gZGlz
cG9zZWQ6IGEuanM6MTAKQEAgLTEyOCw5ICsxMjgsOSBAQCBSdW5uaW5nOiB0ZXN0UmVzdG9yZUJy
ZWFrcG9pbnRzQWZ0ZXJUZW1wb3JhcnlVSVNvdXJjZUNvZGVSZW1vdmVkCiBSdW5uaW5nOiB0ZXN0
UmVtb3ZlQnJlYWtwb2ludHMKICAgQ3JlYXRlZCBicmVha3BvaW50cyBtYW5hZ2VyCiAgIER1bXBp
bmcgU3RvcmFnZQotICAgIGEuanM6MTAgZW5hYmxlZDp0cnVlIGNvbmRpdGlvbjpmb28gPT0gYmFy
Ci0gICAgYS5qczoyMCBlbmFibGVkOmZhbHNlIGNvbmRpdGlvbjoKLSAgICBiLmpzOjMgZW5hYmxl
ZDp0cnVlIGNvbmRpdGlvbjoKKyAgICBuZXR3b3JrOi9hLmpzOjEwIGVuYWJsZWQ6dHJ1ZSBjb25k
aXRpb246Zm9vID09IGJhcgorICAgIG5ldHdvcms6L2EuanM6MjAgZW5hYmxlZDpmYWxzZSBjb25k
aXRpb246CisgICAgbmV0d29yazovYi5qczozIGVuYWJsZWQ6dHJ1ZSBjb25kaXRpb246CiAgIEFk
ZGluZyBVSVNvdXJjZUNvZGU6IGEuanMKICAgICBkZWJ1Z2dlck1vZGVsLnNldEJyZWFrcG9pbnQo
YS5qczoxMDpmb28gPT0gYmFyKQogICAgIGJyZWFrcG9pbnRBZGRlZChhLmpzLCAxMCwgZm9vID09
IGJhciwgdHJ1ZSkKQEAgLTE1MSw3ICsxNTEsNyBAQCBSdW5uaW5nOiB0ZXN0UmVtb3ZlQnJlYWtw
b2ludHMKICAgUmVtb3ZpbmcgYnJlYWtwb2ludCBhdCBhLmpzOjIwCiAgICAgYnJlYWtwb2ludFJl
bW92ZWQoYS5qcywgMjApCiAgIER1bXBpbmcgU3RvcmFnZQotICAgIGIuanM6MyBlbmFibGVkOnRy
dWUgY29uZGl0aW9uOgorICAgIG5ldHdvcms6L2IuanM6MyBlbmFibGVkOnRydWUgY29uZGl0aW9u
OgogICBSZXNldHRpbmcgYnJlYWtwb2ludCBtYW5hZ2VyCiAKIFJ1bm5pbmc6IHRlc3RTZXRCcmVh
a3BvaW50VGhhdFNoaWZ0cwpAQCAtMTYzLDcgKzE2Myw3IEBAIFJ1bm5pbmc6IHRlc3RTZXRCcmVh
a3BvaW50VGhhdFNoaWZ0cwogICAgIGJyZWFrcG9pbnRBZGRlZChhLmpzLCAxMDI1LCAsIHRydWUp
CiAgICAgTG9jYXRpb24gY3JlYXRlZDogYS5qczoxMDI1CiAgIER1bXBpbmcgU3RvcmFnZQotICAg
IGEuanM6MTAxNSBlbmFibGVkOnRydWUgY29uZGl0aW9uOgorICAgIG5ldHdvcms6L2EuanM6MTAx
NSBlbmFibGVkOnRydWUgY29uZGl0aW9uOgogICBSZXNldHRpbmcgYnJlYWtwb2ludCBtYW5hZ2Vy
CiAgICAgYnJlYWtwb2ludFJlbW92ZWQoYS5qcywgMTAyNSkKICAgICBMb2NhdGlvbiBkaXNwb3Nl
ZDogYS5qczoxMDI1CkBAIC0xNzksNyArMTc5LDcgQEAgUnVubmluZzogdGVzdFNldEJyZWFrcG9p
bnRUaGF0U2hpZnRzVHdpY2UKICAgICBMb2NhdGlvbiBjcmVhdGVkOiBhLmpzOjEwMjUKICAgU2V0
dGluZyBicmVha3BvaW50IGF0IGEuanM6MTAxNSBlbmFibGVkOnRydWUgY29uZGl0aW9uOgogICBE
dW1waW5nIFN0b3JhZ2UKLSAgICBhLmpzOjEwMTUgZW5hYmxlZDp0cnVlIGNvbmRpdGlvbjoKKyAg
ICBuZXR3b3JrOi9hLmpzOjEwMTUgZW5hYmxlZDp0cnVlIGNvbmRpdGlvbjoKICAgUmVzZXR0aW5n
IGJyZWFrcG9pbnQgbWFuYWdlcgogICAgIGJyZWFrcG9pbnRSZW1vdmVkKGEuanMsIDEwMjUpCiAg
ICAgTG9jYXRpb24gZGlzcG9zZWQ6IGEuanM6MTAyNQpAQCAtMTkyLDcgKzE5Miw3IEBAIFJ1bm5p
bmc6IHRlc3RTZXRCcmVha3BvaW50T3V0c2lkZVNjcmlwdAogICAgIGRlYnVnZ2VyTW9kZWwuc2V0
QnJlYWtwb2ludChhLmpzOjI1MDA6KQogICAgIGJyZWFrcG9pbnRBZGRlZChhLmpzLCAyNTAwLCAs
IHRydWUpCiAgIER1bXBpbmcgU3RvcmFnZQotICAgIGEuanM6MjUwMCBlbmFibGVkOnRydWUgY29u
ZGl0aW9uOgorICAgIG5ldHdvcms6L2EuanM6MjUwMCBlbmFibGVkOnRydWUgY29uZGl0aW9uOgog
ICBSZXNldHRpbmcgYnJlYWtwb2ludCBtYW5hZ2VyCiAgICAgYnJlYWtwb2ludFJlbW92ZWQoYS5q
cywgMjUwMCkKICAgICBkZWJ1Z2dlck1vZGVsLnJlbW92ZUJyZWFrcG9pbnQoYS5qczoyNTAwKQpA
QCAtMjAwLDkgKzIwMCw5IEBAIFJ1bm5pbmc6IHRlc3RTZXRCcmVha3BvaW50T3V0c2lkZVNjcmlw
dAogUnVubmluZzogdGVzdE5hdmlnYXRpb24KICAgQ3JlYXRlZCBicmVha3BvaW50cyBtYW5hZ2Vy
CiAgIER1bXBpbmcgU3RvcmFnZQotICAgIGEuanM6MTAgZW5hYmxlZDp0cnVlIGNvbmRpdGlvbjpm
b28gPT0gYmFyCi0gICAgYS5qczoyMCBlbmFibGVkOmZhbHNlIGNvbmRpdGlvbjoKLSAgICBiLmpz
OjMgZW5hYmxlZDp0cnVlIGNvbmRpdGlvbjoKKyAgICBuZXR3b3JrOi9hLmpzOjEwIGVuYWJsZWQ6
dHJ1ZSBjb25kaXRpb246Zm9vID09IGJhcgorICAgIG5ldHdvcms6L2EuanM6MjAgZW5hYmxlZDpm
YWxzZSBjb25kaXRpb246CisgICAgbmV0d29yazovYi5qczozIGVuYWJsZWQ6dHJ1ZSBjb25kaXRp
b246CiAgIEFkZGluZyBVSVNvdXJjZUNvZGU6IGEuanMKICAgICBkZWJ1Z2dlck1vZGVsLnNldEJy
ZWFrcG9pbnQoYS5qczoxMDpmb28gPT0gYmFyKQogICAgIGJyZWFrcG9pbnRBZGRlZChhLmpzLCAx
MCwgZm9vID09IGJhciwgdHJ1ZSkKQEAgLTIzMyw5ICsyMzMsOSBAQCBSdW5uaW5nOiB0ZXN0TmF2
aWdhdGlvbgogICAgIExvY2F0aW9uIGNyZWF0ZWQ6IGEuanM6MTAKICAgICBicmVha3BvaW50QWRk
ZWQoYS5qcywgMjAsICwgZmFsc2UpCiAgIER1bXBpbmcgU3RvcmFnZQotICAgIGEuanM6MTAgZW5h
YmxlZDp0cnVlIGNvbmRpdGlvbjpmb28gPT0gYmFyCi0gICAgYS5qczoyMCBlbmFibGVkOmZhbHNl
IGNvbmRpdGlvbjoKLSAgICBiLmpzOjMgZW5hYmxlZDp0cnVlIGNvbmRpdGlvbjoKKyAgICBuZXR3
b3JrOi9hLmpzOjEwIGVuYWJsZWQ6dHJ1ZSBjb25kaXRpb246Zm9vID09IGJhcgorICAgIG5ldHdv
cms6L2EuanM6MjAgZW5hYmxlZDpmYWxzZSBjb25kaXRpb246CisgICAgbmV0d29yazovYi5qczoz
IGVuYWJsZWQ6dHJ1ZSBjb25kaXRpb246CiAgIFJlc2V0dGluZyBicmVha3BvaW50IG1hbmFnZXIK
ICAgICBicmVha3BvaW50UmVtb3ZlZChhLmpzLCAxMCkKICAgICBMb2NhdGlvbiBkaXNwb3NlZDog
YS5qczoxMApAQCAtMjQ2LDggKzI0Niw4IEBAIFJ1bm5pbmc6IHRlc3ROYXZpZ2F0aW9uCiBSdW5u
aW5nOiB0ZXN0U291cmNlTWFwcGluZwogICBDcmVhdGVkIGJyZWFrcG9pbnRzIG1hbmFnZXIKICAg
RHVtcGluZyBTdG9yYWdlCi0gICAgYS5qczoxMCBlbmFibGVkOnRydWUgY29uZGl0aW9uOmZvbyA9
PSBiYXIKLSAgICBhLmpzOjIwIGVuYWJsZWQ6dHJ1ZSBjb25kaXRpb246CisgICAgbmV0d29yazov
YS5qczoxMCBlbmFibGVkOnRydWUgY29uZGl0aW9uOmZvbyA9PSBiYXIKKyAgICBuZXR3b3JrOi9h
LmpzOjIwIGVuYWJsZWQ6dHJ1ZSBjb25kaXRpb246CiAgIEFkZGluZyBVSVNvdXJjZUNvZGU6IGEu
anMKICAgICBkZWJ1Z2dlck1vZGVsLnNldEJyZWFrcG9pbnQoYS5qczoxMDpmb28gPT0gYmFyKQog
ICAgIGJyZWFrcG9pbnRBZGRlZChhLmpzLCAxMCwgZm9vID09IGJhciwgdHJ1ZSkKQEAgLTI2OCw4
ICsyNjgsOCBAQCBSdW5uaW5nOiB0ZXN0U291cmNlTWFwcGluZwogICAgIGJyZWFrcG9pbnRSZW1v
dmVkKGEuanMsIDMwKQogICAgIGJyZWFrcG9pbnRBZGRlZChhLmpzLCAyMCwgLCB0cnVlKQogICBE
dW1waW5nIFN0b3JhZ2UKLSAgICBhLmpzOjEwIGVuYWJsZWQ6dHJ1ZSBjb25kaXRpb246Zm9vID09
IGJhcgotICAgIGEuanM6MjAgZW5hYmxlZDp0cnVlIGNvbmRpdGlvbjoKKyAgICBuZXR3b3JrOi9h
LmpzOjEwIGVuYWJsZWQ6dHJ1ZSBjb25kaXRpb246Zm9vID09IGJhcgorICAgIG5ldHdvcms6L2Eu
anM6MjAgZW5hYmxlZDp0cnVlIGNvbmRpdGlvbjoKICAgUmVzZXR0aW5nIGJyZWFrcG9pbnQgbWFu
YWdlcgogICAgIGJyZWFrcG9pbnRSZW1vdmVkKGEuanMsIDEwKQogICAgIExvY2F0aW9uIGRpc3Bv
c2VkOiBhLmpzOjEwCkBAIC0yODEsNyArMjgxLDcgQEAgUnVubmluZzogdGVzdFNvdXJjZU1hcHBp
bmcKIFJ1bm5pbmc6IHRlc3RQcm92aXNpb25hbEJyZWFrcG9pbnRzUmVzb2x2ZQogICBDcmVhdGVk
IGJyZWFrcG9pbnRzIG1hbmFnZXIKICAgRHVtcGluZyBTdG9yYWdlCi0gICAgYS5qczoxMCBlbmFi
bGVkOnRydWUgY29uZGl0aW9uOmZvbyA9PSBiYXIKKyAgICBuZXR3b3JrOi9hLmpzOjEwIGVuYWJs
ZWQ6dHJ1ZSBjb25kaXRpb246Zm9vID09IGJhcgogICBBZGRpbmcgVUlTb3VyY2VDb2RlOiBhLmpz
CiAgICAgZGVidWdnZXJNb2RlbC5zZXRCcmVha3BvaW50KGEuanM6MTA6Zm9vID09IGJhcikKICAg
ICBicmVha3BvaW50QWRkZWQoYS5qcywgMTAsIGZvbyA9PSBiYXIsIHRydWUpCkBAIC0yOTIsNyAr
MjkyLDcgQEAgUnVubmluZzogdGVzdFByb3Zpc2lvbmFsQnJlYWtwb2ludHNSZXNvbHZlCiAgICAg
TG9jYXRpb24gZGlzcG9zZWQ6IGEuanM6MTAKICAgUmVzb2x2aW5nIHByb3Zpc2lvbmFsIGJyZWFr
cG9pbnQuCiAgIER1bXBpbmcgU3RvcmFnZQotICAgIGEuanM6MTAgZW5hYmxlZDp0cnVlIGNvbmRp
dGlvbjpmb28gPT0gYmFyCisgICAgbmV0d29yazovYS5qczoxMCBlbmFibGVkOnRydWUgY29uZGl0
aW9uOmZvbyA9PSBiYXIKICAgUmVzZXR0aW5nIGJyZWFrcG9pbnQgbWFuYWdlcgogICAgIGRlYnVn
Z2VyTW9kZWwucmVtb3ZlQnJlYWtwb2ludChhLmpzOjEwKQogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvYnJlYWtwb2ludC1tYW5hZ2VyLmh0bWwgYi9MYXlvdXRU
ZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvYnJlYWtwb2ludC1tYW5hZ2VyLmh0bWwKaW5kZXggZTNj
OWM3NjcwZjdkM2IyYTMyYTc3NmQxMmQ3MjU3ODEyODZjMWJjNy4uNzdjZjVhNDlmMWVhNDc0MGI5
ZDNmYTk0MzE5Nzc2ZTI3OTZiZTUxNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9y
L2RlYnVnZ2VyL2JyZWFrcG9pbnQtbWFuYWdlci5odG1sCisrKyBiL0xheW91dFRlc3RzL2luc3Bl
Y3Rvci9kZWJ1Z2dlci9icmVha3BvaW50LW1hbmFnZXIuaHRtbApAQCAtMTc1LDkgKzE3NSw5IEBA
IGZ1bmN0aW9uIHRlc3QoKQogICAgIH0KIAogICAgIHZhciBzZXJpYWxpemVkQnJlYWtwb2ludHMg
PSBbXTsKLSAgICBzZXJpYWxpemVkQnJlYWtwb2ludHMucHVzaChjcmVhdGVCcmVha3BvaW50KCJh
LmpzIiwgMTAsICJmb28gPT0gYmFyIiwgdHJ1ZSkpOwotICAgIHNlcmlhbGl6ZWRCcmVha3BvaW50
cy5wdXNoKGNyZWF0ZUJyZWFrcG9pbnQoImEuanMiLCAyMCwgIiIsIGZhbHNlKSk7Ci0gICAgc2Vy
aWFsaXplZEJyZWFrcG9pbnRzLnB1c2goY3JlYXRlQnJlYWtwb2ludCgiYi5qcyIsIDMsICIiLCB0
cnVlKSk7CisgICAgc2VyaWFsaXplZEJyZWFrcG9pbnRzLnB1c2goY3JlYXRlQnJlYWtwb2ludCgi
bmV0d29yazovYS5qcyIsIDEwLCAiZm9vID09IGJhciIsIHRydWUpKTsKKyAgICBzZXJpYWxpemVk
QnJlYWtwb2ludHMucHVzaChjcmVhdGVCcmVha3BvaW50KCJuZXR3b3JrOi9hLmpzIiwgMjAsICIi
LCBmYWxzZSkpOworICAgIHNlcmlhbGl6ZWRCcmVha3BvaW50cy5wdXNoKGNyZWF0ZUJyZWFrcG9p
bnQoIm5ldHdvcms6L2IuanMiLCAzLCAiIiwgdHJ1ZSkpOwogCiAgICAgZnVuY3Rpb24gY3JlYXRl
QnJlYWtwb2ludE1hbmFnZXIocGVyc2lzdGVudEJyZWFrcG9pbnRzLCBzb3VyY2VNYXBwaW5nKQog
ICAgIHsKQEAgLTM0NCw4ICszNDQsOCBAQCBmdW5jdGlvbiB0ZXN0KCkKICAgICAgICAgewogICAg
ICAgICAgICAgLy8gU291cmNlIG1hcHBpbmcgd2lsbCBzaGlmdCBldmVydGhpbmcgMTAgbGluZXMg
YWhlYWQgc28gdGhhdCBicmVha3BvaW50IDEgY2xhc2hlZCB3aXRoIGJyZWFrcG9pbnQgMi4KICAg
ICAgICAgICAgIHZhciBzZXJpYWxpemVkQnJlYWtwb2ludHMgPSBbXTsKLSAgICAgICAgICAgIHNl
cmlhbGl6ZWRCcmVha3BvaW50cy5wdXNoKGNyZWF0ZUJyZWFrcG9pbnQoImEuanMiLCAxMCwgImZv
byA9PSBiYXIiLCB0cnVlKSk7Ci0gICAgICAgICAgICBzZXJpYWxpemVkQnJlYWtwb2ludHMucHVz
aChjcmVhdGVCcmVha3BvaW50KCJhLmpzIiwgMjAsICIiLCB0cnVlKSk7CisgICAgICAgICAgICBz
ZXJpYWxpemVkQnJlYWtwb2ludHMucHVzaChjcmVhdGVCcmVha3BvaW50KCJuZXR3b3JrOi9hLmpz
IiwgMTAsICJmb28gPT0gYmFyIiwgdHJ1ZSkpOworICAgICAgICAgICAgc2VyaWFsaXplZEJyZWFr
cG9pbnRzLnB1c2goY3JlYXRlQnJlYWtwb2ludCgibmV0d29yazovYS5qcyIsIDIwLCAiIiwgdHJ1
ZSkpOwogCiAgICAgICAgICAgICB2YXIgYnJlYWtwb2ludE1hbmFnZXIgPSBjcmVhdGVCcmVha3Bv
aW50TWFuYWdlcihzZXJpYWxpemVkQnJlYWtwb2ludHMpOwogICAgICAgICAgICAgdmFyIHVpU291
cmNlQ29kZUEgPSBhZGRVSVNvdXJjZUNvZGUoYnJlYWtwb2ludE1hbmFnZXIsICJhLmpzIik7CkBA
IC0zNjEsNyArMzYxLDcgQEAgZnVuY3Rpb24gdGVzdCgpCiAgICAgICAgIGZ1bmN0aW9uIHRlc3RQ
cm92aXNpb25hbEJyZWFrcG9pbnRzUmVzb2x2ZShuZXh0KQogICAgICAgICB7CiAgICAgICAgICAg
ICB2YXIgc2VyaWFsaXplZEJyZWFrcG9pbnRzID0gW107Ci0gICAgICAgICAgICBzZXJpYWxpemVk
QnJlYWtwb2ludHMucHVzaChjcmVhdGVCcmVha3BvaW50KCJhLmpzIiwgMTAsICJmb28gPT0gYmFy
IiwgdHJ1ZSkpOworICAgICAgICAgICAgc2VyaWFsaXplZEJyZWFrcG9pbnRzLnB1c2goY3JlYXRl
QnJlYWtwb2ludCgibmV0d29yazovYS5qcyIsIDEwLCAiZm9vID09IGJhciIsIHRydWUpKTsKIAog
ICAgICAgICAgICAgdmFyIGJyZWFrcG9pbnRNYW5hZ2VyID0gY3JlYXRlQnJlYWtwb2ludE1hbmFn
ZXIoc2VyaWFsaXplZEJyZWFrcG9pbnRzKTsKICAgICAgICAgICAgIHZhciB1aVNvdXJjZUNvZGUg
PSBhZGRVSVNvdXJjZUNvZGUoYnJlYWtwb2ludE1hbmFnZXIsICJhLmpzIik7CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvbGl2ZS1lZGl0LWJyZWFrcG9pbnRzLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9saXZlLWVkaXQtYnJl
YWtwb2ludHMtZXhwZWN0ZWQudHh0CmluZGV4IGE2OWI4YTZmZjdkNmI3ZTFlZGRlYzM3OTQ1NWQx
ZmJhYTBjM2RlOWYuLjhhYzg3Y2VkYTg1ODE0ZDI0YmZmMjc2ZmM2M2Q1NGNjZmI1OTI1YjcgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9saXZlLWVkaXQtYnJlYWtw
b2ludHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9s
aXZlLWVkaXQtYnJlYWtwb2ludHMtZXhwZWN0ZWQudHh0CkBAIC05LDcgKzksNyBAQCBTZXR0aW5n
IGJyZWFrcG9pbnQ6CiAgICAgRHVtcGluZyBicmVha3BvaW50IHN0b3JhZ2UKICAgICAgICAgZWRp
dC1tZS1icmVha3BvaW50cy5qczoyLCBlbmFibGVkOnRydWUKICAgICBEdW1waW5nIGJyZWFrcG9p
bnQgbG9jYXRpb25zCi0gICAgICAgIHVybDogZWRpdC1tZS1icmVha3BvaW50cy5qcywgbGluZU51
bWJlcjogMiwgcHJvamVjdCBuYW1lOiBuZXR3b3JrCisgICAgICAgIHVybDogZWRpdC1tZS1icmVh
a3BvaW50cy5qcywgbGluZU51bWJlcjogMiwgcHJvamVjdCBuYW1lOiBuZXR3b3JrOmZpbGU6Ly8K
IEVkaXRpbmcgc291cmNlOgogICAgIFRleHRFZGl0b3IucmVtb3ZlQnJlYWtwb2ludChsaW5lTnVt
YmVyID0gMikKICAgICBUZXh0RWRpdG9yLmFkZEJyZWFrcG9pbnQobGluZU51bWJlciA9IDIsIGRp
c2FibGVkID0gdHJ1ZSkKQEAgLTE3LDcgKzE3LDcgQEAgRWRpdGluZyBzb3VyY2U6CiAgICAgRHVt
cGluZyBicmVha3BvaW50IHN0b3JhZ2UKICAgICAgICAgZWRpdC1tZS1icmVha3BvaW50cy5qczoy
LCBlbmFibGVkOnRydWUKICAgICBEdW1waW5nIGJyZWFrcG9pbnQgbG9jYXRpb25zCi0gICAgICAg
IHVybDogZWRpdC1tZS1icmVha3BvaW50cy5qcywgbGluZU51bWJlcjogMiwgcHJvamVjdCBuYW1l
OiBkZWJ1Z2dlcgorICAgICAgICB1cmw6IGVkaXQtbWUtYnJlYWtwb2ludHMuanMsIGxpbmVOdW1i
ZXI6IDIsIHByb2plY3QgbmFtZTogZGVidWdnZXI6ZmlsZTovLwogVW5kb2luZyBzb3VyY2UgZWRp
dGluZzoKICAgICBPcmlnaW5hbFRleHRFZGl0b3IucmVtb3ZlQnJlYWtwb2ludChsaW5lTnVtYmVy
ID0gMikKICAgICBUZXh0RWRpdG9yLnJlbW92ZUJyZWFrcG9pbnQobGluZU51bWJlciA9IDIpCkBA
IC0yNiw3ICsyNiw3IEBAIFVuZG9pbmcgc291cmNlIGVkaXRpbmc6CiAgICAgRHVtcGluZyBicmVh
a3BvaW50IHN0b3JhZ2UKICAgICAgICAgZWRpdC1tZS1icmVha3BvaW50cy5qczoyLCBlbmFibGVk
OnRydWUKICAgICBEdW1waW5nIGJyZWFrcG9pbnQgbG9jYXRpb25zCi0gICAgICAgIHVybDogZWRp
dC1tZS1icmVha3BvaW50cy5qcywgbGluZU51bWJlcjogMiwgcHJvamVjdCBuYW1lOiBuZXR3b3Jr
CisgICAgICAgIHVybDogZWRpdC1tZS1icmVha3BvaW50cy5qcywgbGluZU51bWJlcjogMiwgcHJv
amVjdCBuYW1lOiBuZXR3b3JrOmZpbGU6Ly8KIEZpbmFsbHkgcmVtb3ZpbmcgYnJlYWtwb2ludDoK
ICAgICBUZXh0RWRpdG9yLnJlbW92ZUJyZWFrcG9pbnQobGluZU51bWJlciA9IDIpCiAgICAgRHVt
cGluZyBicmVha3BvaW50IHN0b3JhZ2UKQEAgLTM4LDcgKzM4LDcgQEAgU2V0dGluZyBicmVha3Bv
aW50OgogICAgIER1bXBpbmcgYnJlYWtwb2ludCBzdG9yYWdlCiAgICAgICAgIGVkaXQtbWUtYnJl
YWtwb2ludHMuanM6MiwgZW5hYmxlZDp0cnVlCiAgICAgRHVtcGluZyBicmVha3BvaW50IGxvY2F0
aW9ucwotICAgICAgICB1cmw6IGVkaXQtbWUtYnJlYWtwb2ludHMuanMsIGxpbmVOdW1iZXI6IDIs
IHByb2plY3QgbmFtZTogbmV0d29yaworICAgICAgICB1cmw6IGVkaXQtbWUtYnJlYWtwb2ludHMu
anMsIGxpbmVOdW1iZXI6IDIsIHByb2plY3QgbmFtZTogbmV0d29yazpmaWxlOi8vCiBFZGl0aW5n
IHNvdXJjZToKICAgICBPcmlnaW5hbFRleHRFZGl0b3IuYWRkQnJlYWtwb2ludChsaW5lTnVtYmVy
ID0gMiwgZGlzYWJsZWQgPSBmYWxzZSkKICAgICBUZXh0RWRpdG9yLnJlbW92ZUJyZWFrcG9pbnQo
bGluZU51bWJlciA9IDIpCkBAIC00Niw3ICs0Niw3IEBAIEVkaXRpbmcgc291cmNlOgogICAgIER1
bXBpbmcgYnJlYWtwb2ludCBzdG9yYWdlCiAgICAgICAgIGVkaXQtbWUtYnJlYWtwb2ludHMuanM6
MiwgZW5hYmxlZDp0cnVlCiAgICAgRHVtcGluZyBicmVha3BvaW50IGxvY2F0aW9ucwotICAgICAg
ICB1cmw6IGVkaXQtbWUtYnJlYWtwb2ludHMuanMsIGxpbmVOdW1iZXI6IDIsIHByb2plY3QgbmFt
ZTogZGVidWdnZXIKKyAgICAgICAgdXJsOiBlZGl0LW1lLWJyZWFrcG9pbnRzLmpzLCBsaW5lTnVt
YmVyOiAyLCBwcm9qZWN0IG5hbWU6IGRlYnVnZ2VyOmZpbGU6Ly8KIENvbW1pdHRpbmcgZWRpdGVk
IHNvdXJjZToKICAgICBPcmlnaW5hbFRleHRFZGl0b3IucmVtb3ZlQnJlYWtwb2ludChsaW5lTnVt
YmVyID0gMikKICAgICBUZXh0RWRpdG9yLnJlbW92ZUJyZWFrcG9pbnQobGluZU51bWJlciA9IDIp
CkBAIC01NSw3ICs1NSw3IEBAIENvbW1pdHRpbmcgZWRpdGVkIHNvdXJjZToKICAgICBEdW1waW5n
IGJyZWFrcG9pbnQgc3RvcmFnZQogICAgICAgICBlZGl0LW1lLWJyZWFrcG9pbnRzLmpzOjIsIGVu
YWJsZWQ6dHJ1ZQogICAgIER1bXBpbmcgYnJlYWtwb2ludCBsb2NhdGlvbnMKLSAgICAgICAgdXJs
OiBlZGl0LW1lLWJyZWFrcG9pbnRzLmpzLCBsaW5lTnVtYmVyOiAyLCBwcm9qZWN0IG5hbWU6IG5l
dHdvcmsKKyAgICAgICAgdXJsOiBlZGl0LW1lLWJyZWFrcG9pbnRzLmpzLCBsaW5lTnVtYmVyOiAy
LCBwcm9qZWN0IG5hbWU6IG5ldHdvcms6ZmlsZTovLwogRmluYWxseSByZW1vdmluZyBicmVha3Bv
aW50OgogICAgIFRleHRFZGl0b3IucmVtb3ZlQnJlYWtwb2ludChsaW5lTnVtYmVyID0gMikKICAg
ICBEdW1waW5nIGJyZWFrcG9pbnQgc3RvcmFnZQpAQCAtNjcsNyArNjcsNyBAQCBTZXR0aW5nIGJy
ZWFrcG9pbnQ6CiAgICAgRHVtcGluZyBicmVha3BvaW50IHN0b3JhZ2UKICAgICAgICAgZWRpdC1t
ZS1icmVha3BvaW50cy5qczoyLCBlbmFibGVkOnRydWUKICAgICBEdW1waW5nIGJyZWFrcG9pbnQg
bG9jYXRpb25zCi0gICAgICAgIHVybDogZWRpdC1tZS1icmVha3BvaW50cy5qcywgbGluZU51bWJl
cjogMiwgcHJvamVjdCBuYW1lOiBuZXR3b3JrCisgICAgICAgIHVybDogZWRpdC1tZS1icmVha3Bv
aW50cy5qcywgbGluZU51bWJlcjogMiwgcHJvamVjdCBuYW1lOiBuZXR3b3JrOmZpbGU6Ly8KIEVk
aXRpbmcgc291cmNlOgogICAgIE9yaWdpbmFsVGV4dEVkaXRvci5hZGRCcmVha3BvaW50KGxpbmVO
dW1iZXIgPSAyLCBkaXNhYmxlZCA9IGZhbHNlKQogICAgIFRleHRFZGl0b3IucmVtb3ZlQnJlYWtw
b2ludChsaW5lTnVtYmVyID0gMikKQEAgLTc1LDE3ICs3NSwxNyBAQCBFZGl0aW5nIHNvdXJjZToK
ICAgICBEdW1waW5nIGJyZWFrcG9pbnQgc3RvcmFnZQogICAgICAgICBlZGl0LW1lLWJyZWFrcG9p
bnRzLmpzOjIsIGVuYWJsZWQ6dHJ1ZQogICAgIER1bXBpbmcgYnJlYWtwb2ludCBsb2NhdGlvbnMK
LSAgICAgICAgdXJsOiBlZGl0LW1lLWJyZWFrcG9pbnRzLmpzLCBsaW5lTnVtYmVyOiAyLCBwcm9q
ZWN0IG5hbWU6IGRlYnVnZ2VyCisgICAgICAgIHVybDogZWRpdC1tZS1icmVha3BvaW50cy5qcywg
bGluZU51bWJlcjogMiwgcHJvamVjdCBuYW1lOiBkZWJ1Z2dlcjpmaWxlOi8vCiBDb21taXR0aW5n
IGVkaXRlZCBzb3VyY2U6CiAgICAgRHVtcGluZyBicmVha3BvaW50IHN0b3JhZ2UKICAgICAgICAg
ZWRpdC1tZS1icmVha3BvaW50cy5qczoyLCBlbmFibGVkOnRydWUKICAgICBEdW1waW5nIGJyZWFr
cG9pbnQgbG9jYXRpb25zCi0gICAgICAgIHVybDogZWRpdC1tZS1icmVha3BvaW50cy5qcywgbGlu
ZU51bWJlcjogMiwgcHJvamVjdCBuYW1lOiBkZWJ1Z2dlcgorICAgICAgICB1cmw6IGVkaXQtbWUt
YnJlYWtwb2ludHMuanMsIGxpbmVOdW1iZXI6IDIsIHByb2plY3QgbmFtZTogZGVidWdnZXI6Zmls
ZTovLwogRWRpdGluZyBzb3VyY2UgYWdhaW4gc28gdGhhdCBsaXZlIGVkaXQgY291bGQgc3VjY2Vl
ZDoKICAgICBEdW1waW5nIGJyZWFrcG9pbnQgc3RvcmFnZQogICAgICAgICBlZGl0LW1lLWJyZWFr
cG9pbnRzLmpzOjIsIGVuYWJsZWQ6dHJ1ZQogICAgIER1bXBpbmcgYnJlYWtwb2ludCBsb2NhdGlv
bnMKLSAgICAgICAgdXJsOiBlZGl0LW1lLWJyZWFrcG9pbnRzLmpzLCBsaW5lTnVtYmVyOiAyLCBw
cm9qZWN0IG5hbWU6IGRlYnVnZ2VyCisgICAgICAgIHVybDogZWRpdC1tZS1icmVha3BvaW50cy5q
cywgbGluZU51bWJlcjogMiwgcHJvamVjdCBuYW1lOiBkZWJ1Z2dlcjpmaWxlOi8vCiBDb21taXR0
aW5nIGVkaXRlZCBzb3VyY2UgYWdhaW46CiAgICAgT3JpZ2luYWxUZXh0RWRpdG9yLnJlbW92ZUJy
ZWFrcG9pbnQobGluZU51bWJlciA9IDIpCiAgICAgVGV4dEVkaXRvci5yZW1vdmVCcmVha3BvaW50
KGxpbmVOdW1iZXIgPSAyKQpAQCAtOTQsNyArOTQsNyBAQCBDb21taXR0aW5nIGVkaXRlZCBzb3Vy
Y2UgYWdhaW46CiAgICAgRHVtcGluZyBicmVha3BvaW50IHN0b3JhZ2UKICAgICAgICAgZWRpdC1t
ZS1icmVha3BvaW50cy5qczoyLCBlbmFibGVkOnRydWUKICAgICBEdW1waW5nIGJyZWFrcG9pbnQg
bG9jYXRpb25zCi0gICAgICAgIHVybDogZWRpdC1tZS1icmVha3BvaW50cy5qcywgbGluZU51bWJl
cjogMiwgcHJvamVjdCBuYW1lOiBuZXR3b3JrCisgICAgICAgIHVybDogZWRpdC1tZS1icmVha3Bv
aW50cy5qcywgbGluZU51bWJlcjogMiwgcHJvamVjdCBuYW1lOiBuZXR3b3JrOmZpbGU6Ly8KIEZp
bmFsbHkgcmVtb3ZpbmcgYnJlYWtwb2ludDoKICAgICBUZXh0RWRpdG9yLnJlbW92ZUJyZWFrcG9p
bnQobGluZU51bWJlciA9IDIpCiAgICAgRHVtcGluZyBicmVha3BvaW50IHN0b3JhZ2UKQEAgLTEw
Niw3ICsxMDYsNyBAQCBTZXR0aW5nIGJyZWFrcG9pbnQ6CiAgICAgRHVtcGluZyBicmVha3BvaW50
IHN0b3JhZ2UKICAgICAgICAgZWRpdC1tZS1icmVha3BvaW50cy5qczoyLCBlbmFibGVkOnRydWUK
ICAgICBEdW1waW5nIGJyZWFrcG9pbnQgbG9jYXRpb25zCi0gICAgICAgIHVybDogZWRpdC1tZS1i
cmVha3BvaW50cy5qcywgbGluZU51bWJlcjogMiwgcHJvamVjdCBuYW1lOiBuZXR3b3JrCisgICAg
ICAgIHVybDogZWRpdC1tZS1icmVha3BvaW50cy5qcywgbGluZU51bWJlcjogMiwgcHJvamVjdCBu
YW1lOiBuZXR3b3JrOmZpbGU6Ly8KIEVkaXRpbmcgc291cmNlOgogICAgIE9yaWdpbmFsVGV4dEVk
aXRvci5hZGRCcmVha3BvaW50KGxpbmVOdW1iZXIgPSAyLCBkaXNhYmxlZCA9IGZhbHNlKQogICAg
IFRleHRFZGl0b3IucmVtb3ZlQnJlYWtwb2ludChsaW5lTnVtYmVyID0gMikKQEAgLTExNCwxNyAr
MTE0LDE3IEBAIEVkaXRpbmcgc291cmNlOgogICAgIER1bXBpbmcgYnJlYWtwb2ludCBzdG9yYWdl
CiAgICAgICAgIGVkaXQtbWUtYnJlYWtwb2ludHMuanM6MiwgZW5hYmxlZDp0cnVlCiAgICAgRHVt
cGluZyBicmVha3BvaW50IGxvY2F0aW9ucwotICAgICAgICB1cmw6IGVkaXQtbWUtYnJlYWtwb2lu
dHMuanMsIGxpbmVOdW1iZXI6IDIsIHByb2plY3QgbmFtZTogZGVidWdnZXIKKyAgICAgICAgdXJs
OiBlZGl0LW1lLWJyZWFrcG9pbnRzLmpzLCBsaW5lTnVtYmVyOiAyLCBwcm9qZWN0IG5hbWU6IGRl
YnVnZ2VyOmZpbGU6Ly8KIENvbW1pdHRpbmcgZWRpdGVkIHNvdXJjZToKICAgICBEdW1waW5nIGJy
ZWFrcG9pbnQgc3RvcmFnZQogICAgICAgICBlZGl0LW1lLWJyZWFrcG9pbnRzLmpzOjIsIGVuYWJs
ZWQ6dHJ1ZQogICAgIER1bXBpbmcgYnJlYWtwb2ludCBsb2NhdGlvbnMKLSAgICAgICAgdXJsOiBl
ZGl0LW1lLWJyZWFrcG9pbnRzLmpzLCBsaW5lTnVtYmVyOiAyLCBwcm9qZWN0IG5hbWU6IGRlYnVn
Z2VyCisgICAgICAgIHVybDogZWRpdC1tZS1icmVha3BvaW50cy5qcywgbGluZU51bWJlcjogMiwg
cHJvamVjdCBuYW1lOiBkZWJ1Z2dlcjpmaWxlOi8vCiBVbmRvaW5nIHNvdXJjZSBlZGl0aW5nOgog
ICAgIER1bXBpbmcgYnJlYWtwb2ludCBzdG9yYWdlCiAgICAgICAgIGVkaXQtbWUtYnJlYWtwb2lu
dHMuanM6MiwgZW5hYmxlZDp0cnVlCiAgICAgRHVtcGluZyBicmVha3BvaW50IGxvY2F0aW9ucwot
ICAgICAgICB1cmw6IGVkaXQtbWUtYnJlYWtwb2ludHMuanMsIGxpbmVOdW1iZXI6IDIsIHByb2pl
Y3QgbmFtZTogZGVidWdnZXIKKyAgICAgICAgdXJsOiBlZGl0LW1lLWJyZWFrcG9pbnRzLmpzLCBs
aW5lTnVtYmVyOiAyLCBwcm9qZWN0IG5hbWU6IGRlYnVnZ2VyOmZpbGU6Ly8KIENvbW1pdHRpbmcg
ZWRpdGVkIHNvdXJjZSBhZ2FpbjoKICAgICBPcmlnaW5hbFRleHRFZGl0b3IucmVtb3ZlQnJlYWtw
b2ludChsaW5lTnVtYmVyID0gMikKICAgICBUZXh0RWRpdG9yLnJlbW92ZUJyZWFrcG9pbnQobGlu
ZU51bWJlciA9IDIpCkBAIC0xMzMsNyArMTMzLDcgQEAgQ29tbWl0dGluZyBlZGl0ZWQgc291cmNl
IGFnYWluOgogICAgIER1bXBpbmcgYnJlYWtwb2ludCBzdG9yYWdlCiAgICAgICAgIGVkaXQtbWUt
YnJlYWtwb2ludHMuanM6MiwgZW5hYmxlZDp0cnVlCiAgICAgRHVtcGluZyBicmVha3BvaW50IGxv
Y2F0aW9ucwotICAgICAgICB1cmw6IGVkaXQtbWUtYnJlYWtwb2ludHMuanMsIGxpbmVOdW1iZXI6
IDIsIHByb2plY3QgbmFtZTogbmV0d29yaworICAgICAgICB1cmw6IGVkaXQtbWUtYnJlYWtwb2lu
dHMuanMsIGxpbmVOdW1iZXI6IDIsIHByb2plY3QgbmFtZTogbmV0d29yazpmaWxlOi8vCiBGaW5h
bGx5IHJlbW92aW5nIGJyZWFrcG9pbnQ6CiAgICAgVGV4dEVkaXRvci5yZW1vdmVCcmVha3BvaW50
KGxpbmVOdW1iZXIgPSAyKQogICAgIER1bXBpbmcgYnJlYWtwb2ludCBzdG9yYWdlCkBAIC0xNDgs
MTUgKzE0OCwxNSBAQCBTZXR0aW5nIGJyZWFrcG9pbnQ6CiAgICAgVGV4dEVkaXRvci5hZGRCcmVh
a3BvaW50KGxpbmVOdW1iZXIgPSAyLCBkaXNhYmxlZCA9IGZhbHNlKQogICAgIER1bXBpbmcgYnJl
YWtwb2ludCBzdG9yYWdlCiAgICAgRHVtcGluZyBicmVha3BvaW50IGxvY2F0aW9ucwotICAgICAg
ICB1cmw6ICwgbGluZU51bWJlcjogMiwgcHJvamVjdCBuYW1lOiBkZWJ1Z2dlcgorICAgICAgICB1
cmw6ICwgbGluZU51bWJlcjogMiwgcHJvamVjdCBuYW1lOiBkZWJ1Z2dlcjoKIEVkaXRpbmcgc291
cmNlOgogICAgIER1bXBpbmcgYnJlYWtwb2ludCBzdG9yYWdlCiAgICAgRHVtcGluZyBicmVha3Bv
aW50IGxvY2F0aW9ucwotICAgICAgICB1cmw6ICwgbGluZU51bWJlcjogMiwgcHJvamVjdCBuYW1l
OiBkZWJ1Z2dlcgorICAgICAgICB1cmw6ICwgbGluZU51bWJlcjogMiwgcHJvamVjdCBuYW1lOiBk
ZWJ1Z2dlcjoKIFVuZG9pbmcgc291cmNlIGVkaXRpbmc6CiAgICAgRHVtcGluZyBicmVha3BvaW50
IHN0b3JhZ2UKICAgICBEdW1waW5nIGJyZWFrcG9pbnQgbG9jYXRpb25zCi0gICAgICAgIHVybDog
LCBsaW5lTnVtYmVyOiAyLCBwcm9qZWN0IG5hbWU6IGRlYnVnZ2VyCisgICAgICAgIHVybDogLCBs
aW5lTnVtYmVyOiAyLCBwcm9qZWN0IG5hbWU6IGRlYnVnZ2VyOgogRmluYWxseSByZW1vdmluZyBi
cmVha3BvaW50OgogICAgIFRleHRFZGl0b3IucmVtb3ZlQnJlYWtwb2ludChsaW5lTnVtYmVyID0g
MikKICAgICBEdW1waW5nIGJyZWFrcG9pbnQgc3RvcmFnZQpAQCAtMTcxLDE1ICsxNzEsMTUgQEAg
U2V0dGluZyBicmVha3BvaW50OgogICAgIFRleHRFZGl0b3IuYWRkQnJlYWtwb2ludChsaW5lTnVt
YmVyID0gMiwgZGlzYWJsZWQgPSBmYWxzZSkKICAgICBEdW1waW5nIGJyZWFrcG9pbnQgc3RvcmFn
ZQogICAgIER1bXBpbmcgYnJlYWtwb2ludCBsb2NhdGlvbnMKLSAgICAgICAgdXJsOiAsIGxpbmVO
dW1iZXI6IDIsIHByb2plY3QgbmFtZTogZGVidWdnZXIKKyAgICAgICAgdXJsOiAsIGxpbmVOdW1i
ZXI6IDIsIHByb2plY3QgbmFtZTogZGVidWdnZXI6CiBFZGl0aW5nIHNvdXJjZToKICAgICBEdW1w
aW5nIGJyZWFrcG9pbnQgc3RvcmFnZQogICAgIER1bXBpbmcgYnJlYWtwb2ludCBsb2NhdGlvbnMK
LSAgICAgICAgdXJsOiAsIGxpbmVOdW1iZXI6IDIsIHByb2plY3QgbmFtZTogZGVidWdnZXIKKyAg
ICAgICAgdXJsOiAsIGxpbmVOdW1iZXI6IDIsIHByb2plY3QgbmFtZTogZGVidWdnZXI6CiBVbmRv
aW5nIHNvdXJjZSBlZGl0aW5nOgogICAgIER1bXBpbmcgYnJlYWtwb2ludCBzdG9yYWdlCiAgICAg
RHVtcGluZyBicmVha3BvaW50IGxvY2F0aW9ucwotICAgICAgICB1cmw6ICwgbGluZU51bWJlcjog
MiwgcHJvamVjdCBuYW1lOiBkZWJ1Z2dlcgorICAgICAgICB1cmw6ICwgbGluZU51bWJlcjogMiwg
cHJvamVjdCBuYW1lOiBkZWJ1Z2dlcjoKIEZpbmFsbHkgcmVtb3ZpbmcgYnJlYWtwb2ludDoKICAg
ICBUZXh0RWRpdG9yLnJlbW92ZUJyZWFrcG9pbnQobGluZU51bWJlciA9IDIpCiAgICAgRHVtcGlu
ZyBicmVha3BvaW50IHN0b3JhZ2UKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9m
aWxlLW1hcHBpbmctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2ZpbGUtbWFw
cGluZy1leHBlY3RlZC50eHQKaW5kZXggN2QzZDZhZmYxNmYwYjFiZjVhNWQ1ODMzMzQ5OTAxNTAx
MzNjNmZhOC4uNmUzZjY4MDFkNmNjM2I0MTA3MGZhNWE3MmI1MTZjMGMyZjg1ZjYxNyAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2ZpbGUtbWFwcGluZy1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2ZpbGUtbWFwcGluZy1leHBlY3RlZC50eHQKQEAgLTQs
OCArNCw4IEBAIHVyaTovaG9tZS9leGFtcGxlLmNvbQogdXJpOi9ob21lL2V4YW1wbGUuY29tLwog
dXJpOi92YXIvd3d3L2luZGV4Lmh0bWwKIHVyaTovdmFyL3d3dy9mb28vaW5kZXguaHRtbAotaHR0
cHM6Ly9sb2NhbGhvc3QKLWh0dHA6Ly9leGFtcGxlLmNvbQorbmV0d29yazpodHRwczpcL1wvbG9j
YWxob3N0LworbmV0d29yazpodHRwOlwvXC9leGFtcGxlLmNvbS8KIGh0dHA6Ly93d3cuZXhhbXBs
ZS5jb20KIGh0dHA6Ly93d3cuZXhhbXBsZS5jb20vCiBodHRwOi8vbG9jYWxob3N0L2luZGV4Lmh0
bWwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci91aXNvdXJjZWNvZGUtcmV2aXNp
b25zLmh0bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvdWlzb3VyY2Vjb2RlLXJldmlzaW9ucy5o
dG1sCmluZGV4IDVhNmJhYzdiOTQ1YjRmMGUxMjE0ODRmNTg0MTQ3NjVkMzkwZjZjM2UuLjY3Y2Fk
YzYyNTU5ZWM3Zjg1ZWZiZTI0YWQ1ODNhMGUxNTM2M2MwOGMgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2luc3BlY3Rvci91aXNvdXJjZWNvZGUtcmV2aXNpb25zLmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvaW5zcGVjdG9yL3Vpc291cmNlY29kZS1yZXZpc2lvbnMuaHRtbApAQCAtOSw3ICs5LDcgQEAg
ZnVuY3Rpb24gdGVzdCgpCiAgICAgZnVuY3Rpb24gY3JlYXRlTW9ja1Byb2plY3QoKQogICAgIHsK
ICAgICAgICAgdmFyIHdvcmtzcGFjZSA9IG5ldyBXZWJJbnNwZWN0b3IuV29ya3NwYWNlKCk7Ci0g
ICAgICAgIHZhciBwcm9qZWN0RGVsZWdhdGUgPSBuZXcgV2ViSW5zcGVjdG9yLlNpbXBsZVByb2pl
Y3REZWxlZ2F0ZShXZWJJbnNwZWN0b3IucHJvamVjdFR5cGVzLk5ldHdvcmspOworICAgICAgICB2
YXIgcHJvamVjdERlbGVnYXRlID0gbmV3IFdlYkluc3BlY3Rvci5TaW1wbGVQcm9qZWN0RGVsZWdh
dGUoIiIsIFdlYkluc3BlY3Rvci5wcm9qZWN0VHlwZXMuTmV0d29yayk7CiAgICAgICAgIHZhciBw
cm9qZWN0ID0gd29ya3NwYWNlLmFkZFByb2plY3QocHJvamVjdERlbGVnYXRlKTsKICAgICAgICAg
cHJvamVjdC5yZXF1ZXN0RmlsZUNvbnRlbnQgPSBmdW5jdGlvbih1cmksIGNhbGxiYWNrKQogICAg
ICAgICB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvdmVyc2lvbi1jb250cm9s
bGVyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci92ZXJzaW9uLWNvbnRyb2xs
ZXItZXhwZWN0ZWQudHh0CmluZGV4IGYyZTlkMmMwMjVjOTNhYjg0MWY2ZDgzOWJiZGExM2ZhYmYy
N2Y5MDIuLjkwODViNjNmYzU0MWYwY2VmMGFlNzdkMDViNTI5Zjk5N2RkZmNlODUgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci92ZXJzaW9uLWNvbnRyb2xsZXItZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci92ZXJzaW9uLWNvbnRyb2xsZXItZXhwZWN0ZWQu
dHh0CkBAIC01MywzICs1Myw1MCBAQCBTdGFydGluZyB0ZXN0IHdpdGggMTAwMCBicmVha3BvaW50
cyBhbmQgNTAwIGFsbG93ZWQgYXQgbWF4LgogTnVtYmVyIG9mIGJyZWFrcG9pbnRzIGxlZnQgaW4g
dGhlIHNldHRpbmcgYWZ0ZXIgdGhlIHRlc3Q6IDAuCiAKIAorUnVubmluZzogdGVzdE1pZ3JhdGVC
cmVha3BvaW50c0Zyb21VUkxUb1VSSQorQnJlYWtwb2ludCBtaWdyYXRpb25zOiAKKworQnJlYWtw
b2ludCBtaWdyYXRpb25zOiAKKyAgICBodHRwOi8vZm9vLmNvbSA9PiBuZXR3b3JrOmh0dHA6XC9c
L2Zvby5jb20vCisKK0JyZWFrcG9pbnQgbWlncmF0aW9uczogCisgICAgaHR0cDovL2Zvby5jb20g
PT4gbmV0d29yazpodHRwOlwvXC9mb28uY29tLworICAgIGh0dHA6Ly9mb28uY29tLyA9PiBuZXR3
b3JrOmh0dHA6XC9cL2Zvby5jb20vCisgICAgaHR0cDovL2Zvby5jb20vYmFyID0+IG5ldHdvcms6
aHR0cDpcL1wvZm9vLmNvbS9iYXIKKyAgICBodHRwOi8vZm9vLmNvbS9iYXIvID0+IG5ldHdvcms6
aHR0cDpcL1wvZm9vLmNvbS9iYXIvCisgICAgaHR0cDovL2Zvby5jb20vYmFyL2Zvby5qcyA9PiBu
ZXR3b3JrOmh0dHA6XC9cL2Zvby5jb20vYmFyL2Zvby5qcworICAgIHNvdXJjZVVSTC5qcyA9PiBu
ZXR3b3JrOi9zb3VyY2VVUkwuanMKKyAgICBkZWJ1Z2dlcjpodHRwOi8vZm9vLmNvbSA9PiBkZWJ1
Z2dlcjpodHRwOlwvXC9mb28uY29tLworICAgIGRlYnVnZ2VyOmh0dHA6Ly9mb28uY29tLyA9PiBk
ZWJ1Z2dlcjpodHRwOlwvXC9mb28uY29tLworICAgIGRlYnVnZ2VyOmh0dHA6Ly9mb28uY29tL2Jh
ciA9PiBkZWJ1Z2dlcjpodHRwOlwvXC9mb28uY29tL2JhcgorICAgIGRlYnVnZ2VyOmh0dHA6Ly9m
b28uY29tL2Jhci8gPT4gZGVidWdnZXI6aHR0cDpcL1wvZm9vLmNvbS9iYXIvCisgICAgZGVidWdn
ZXI6aHR0cDovL2Zvby5jb20vYmFyL2Zvby5qcyA9PiBkZWJ1Z2dlcjpodHRwOlwvXC9mb28uY29t
L2Jhci9mb28uanMKKyAgICBkZWJ1Z2dlcjpzb3VyY2VVUkwuanMgPT4gZGVidWdnZXI6L3NvdXJj
ZVVSTC5qcworICAgIGxpdmVlZGl0Omh0dHA6Ly9mb28uY29tID0+IGxpdmVlZGl0Omh0dHA6XC9c
L2Zvby5jb20vCisgICAgbGl2ZWVkaXQ6aHR0cDovL2Zvby5jb20vID0+IGxpdmVlZGl0Omh0dHA6
XC9cL2Zvby5jb20vCisgICAgbGl2ZWVkaXQ6aHR0cDovL2Zvby5jb20vYmFyID0+IGxpdmVlZGl0
Omh0dHA6XC9cL2Zvby5jb20vYmFyCisgICAgbGl2ZWVkaXQ6aHR0cDovL2Zvby5jb20vYmFyLyA9
PiBsaXZlZWRpdDpodHRwOlwvXC9mb28uY29tL2Jhci8KKyAgICBsaXZlZWRpdDpodHRwOi8vZm9v
LmNvbS9iYXIvZm9vLmpzID0+IGxpdmVlZGl0Omh0dHA6XC9cL2Zvby5jb20vYmFyL2Zvby5qcwor
ICAgIGxpdmVlZGl0OnNvdXJjZVVSTC5qcyA9PiBsaXZlZWRpdDovc291cmNlVVJMLmpzCisgICAg
MEBQcm9qZWN0cy93d3cvZm9vLmNvbSA9PiBmaWxlc3lzdGVtOjBAUHJvamVjdHMvd3d3L2Zvby5j
b20KKyAgICAxQFByb2plY3RzL3d3dy9mb28uY29tLyA9PiBmaWxlc3lzdGVtOjFAUHJvamVjdHMv
d3d3L2Zvby5jb20vCisgICAgMkBQcm9qZWN0cy93d3cvZm9vLmNvbS9iYXIgPT4gZmlsZXN5c3Rl
bToyQFByb2plY3RzL3d3dy9mb28uY29tL2JhcgorICAgIDNAUHJvamVjdHMvd3d3L2Zvby5jb20v
YmFyLyA9PiBmaWxlc3lzdGVtOjNAUHJvamVjdHMvd3d3L2Zvby5jb20vYmFyLworICAgIDQyQFBy
b2plY3RzL3d3dy9mb28uY29tL2Jhci9mb28uanMgPT4gZmlsZXN5c3RlbTo0MkBQcm9qZWN0cy93
d3cvZm9vLmNvbS9iYXIvZm9vLmpzCisgICAgNUBQcm9qZWN0cy9zb3VyY2VVUkwuanMgPT4gZmls
ZXN5c3RlbTo1QFByb2plY3RzL3NvdXJjZVVSTC5qcworICAgIHNuaXBwZXRzOnNuaXBwZXROYW1l
ID0+IHNuaXBwZXRzOi9zbmlwcGV0TmFtZQorICAgIGh0dHA6Ly9mb28uY29tL2Jhci9mb28uanM/
cGFyYW0xPS8mcGFyYW0yPS9mb28vYmFyID0+IG5ldHdvcms6aHR0cDpcL1wvZm9vLmNvbS9iYXIv
Zm9vLmpzP3BhcmFtMT1cLyZwYXJhbTI9XC9mb29cL2JhcgorICAgIGRlYnVnZ2VyOmh0dHA6Ly9m
b28uY29tL2Jhci9mb28uanM/cGFyYW0xPS8mcGFyYW0yPS9mb28vYmFyID0+IGRlYnVnZ2VyOmh0
dHA6XC9cL2Zvby5jb20vYmFyL2Zvby5qcz9wYXJhbTE9XC8mcGFyYW0yPVwvZm9vXC9iYXIKKyAg
ICBzb3VyY2VVUkwuanM/cGFyYW0xPS8mcGFyYW0yPS9mb28vYmFyID0+IG5ldHdvcms6L3NvdXJj
ZVVSTC5qcz9wYXJhbTE9XC8mcGFyYW0yPVwvZm9vXC9iYXIKKyAgICBkZW9iZnVzY2F0ZWQ6aHR0
cDovL2Zvby5jb20vYmFyL2Zvby5qcyA9PiBkZW9iZnVzY2F0ZWQ6bmV0d29yazpodHRwOlwvXC9m
b28uY29tL2Jhci9mb28uanMKKyAgICBkZW9iZnVzY2F0ZWQ6ZGVidWdnZXI6aHR0cDovL2Zvby5j
b20vYmFyL2Zvby5qcyA9PiBkZW9iZnVzY2F0ZWQ6ZGVidWdnZXI6aHR0cDpcL1wvZm9vLmNvbS9i
YXIvZm9vLmpzCisgICAgZGVvYmZ1c2NhdGVkOmxpdmVlZGl0Omh0dHA6Ly9mb28uY29tL2Jhci9m
b28uanMgPT4gZGVvYmZ1c2NhdGVkOmxpdmVlZGl0Omh0dHA6XC9cL2Zvby5jb20vYmFyL2Zvby5q
cworICAgIGRlb2JmdXNjYXRlZDo0MkBQcm9qZWN0cy93d3cvZm9vLmNvbS9iYXIvZm9vLmpzID0+
IGRlb2JmdXNjYXRlZDpmaWxlc3lzdGVtOjQyQFByb2plY3RzL3d3dy9mb28uY29tL2Jhci9mb28u
anMKKyAgICBkZW9iZnVzY2F0ZWQ6aHR0cDovL2Zvby5jb20vYmFyL2Zvby5qcz9wYXJhbTE9LyZw
YXJhbTI9L2Zvby9iYXIgPT4gZGVvYmZ1c2NhdGVkOm5ldHdvcms6aHR0cDpcL1wvZm9vLmNvbS9i
YXIvZm9vLmpzP3BhcmFtMT1cLyZwYXJhbTI9XC9mb29cL2JhcgorICAgIGRlb2JmdXNjYXRlZDpk
ZWJ1Z2dlcjpodHRwOi8vZm9vLmNvbS9iYXIvZm9vLmpzP3BhcmFtMT0vJnBhcmFtMj0vZm9vL2Jh
ciA9PiBkZW9iZnVzY2F0ZWQ6ZGVidWdnZXI6aHR0cDpcL1wvZm9vLmNvbS9iYXIvZm9vLmpzP3Bh
cmFtMT1cLyZwYXJhbTI9XC9mb29cL2JhcgorICAgIGh0dHA6Ly9mb28uY29tOjgwL2Jhci9mb28u
anMgPT4gbmV0d29yazpodHRwOlwvXC9mb28uY29tOjgwL2Jhci9mb28uanMKKyAgICBkZW9iZnVz
Y2F0ZWQ6aHR0cDovL2Zvby5jb206ODAvYmFyL2Zvby5qcyA9PiBkZW9iZnVzY2F0ZWQ6bmV0d29y
azpodHRwOlwvXC9mb28uY29tOjgwL2Jhci9mb28uanMKKyAgICBkZWJ1Z2dlcjpodHRwOi8vZm9v
LmNvbTo4MC9iYXIvZm9vLmpzID0+IGRlYnVnZ2VyOmh0dHA6XC9cL2Zvby5jb206ODAvYmFyL2Zv
by5qcworICAgIGRlb2JmdXNjYXRlZDpkZWJ1Z2dlcjpodHRwOi8vZm9vLmNvbTo4MC9iYXIvZm9v
LmpzID0+IGRlb2JmdXNjYXRlZDpkZWJ1Z2dlcjpodHRwOlwvXC9mb28uY29tOjgwL2Jhci9mb28u
anMKKworCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvdmVyc2lvbi1jb250cm9s
bGVyLmh0bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvdmVyc2lvbi1jb250cm9sbGVyLmh0bWwK
aW5kZXggMDQxOTE5NzRlZGExOWU3ODFhNzE1ZDExMTljYmFjNzYxZGY0Y2QxMy4uOWRkNDYyZTA0
NTBmNWM5ZmU3NGJiNGU5NDA2NmQwNjBlZTlhMTY0ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
aW5zcGVjdG9yL3ZlcnNpb24tY29udHJvbGxlci5odG1sCisrKyBiL0xheW91dFRlc3RzL2luc3Bl
Y3Rvci92ZXJzaW9uLWNvbnRyb2xsZXIuaHRtbApAQCAtNzEsNiArNzEsODMgQEAgZnVuY3Rpb24g
dGVzdCgpCiAgICAgICAgICAgICBydW5DbGVhckJyZWFrcG9pbnRzVGVzdCg1MDEsIDUwMCk7CiAg
ICAgICAgICAgICBydW5DbGVhckJyZWFrcG9pbnRzVGVzdCgxMDAwLCA1MDApOwogICAgICAgICAg
ICAgbmV4dCgpOworICAgICAgICB9LAorCisgICAgICAgIGZ1bmN0aW9uIHRlc3RNaWdyYXRlQnJl
YWtwb2ludHNGcm9tVVJMVG9VUkkobmV4dCkKKyAgICAgICAgeworICAgICAgICAgICAgdmFyIHVy
bHMgPSBbCisgICAgICAgICAgICAgICAgImh0dHA6Ly9mb28uY29tIiwKKyAgICAgICAgICAgICAg
ICAiaHR0cDovL2Zvby5jb20vIiwKKyAgICAgICAgICAgICAgICAiaHR0cDovL2Zvby5jb20vYmFy
IiwKKyAgICAgICAgICAgICAgICAiaHR0cDovL2Zvby5jb20vYmFyLyIsCisgICAgICAgICAgICAg
ICAgImh0dHA6Ly9mb28uY29tL2Jhci9mb28uanMiLAorICAgICAgICAgICAgICAgICJzb3VyY2VV
UkwuanMiLAorCisgICAgICAgICAgICAgICAgImRlYnVnZ2VyOmh0dHA6Ly9mb28uY29tIiwKKyAg
ICAgICAgICAgICAgICAiZGVidWdnZXI6aHR0cDovL2Zvby5jb20vIiwKKyAgICAgICAgICAgICAg
ICAiZGVidWdnZXI6aHR0cDovL2Zvby5jb20vYmFyIiwKKyAgICAgICAgICAgICAgICAiZGVidWdn
ZXI6aHR0cDovL2Zvby5jb20vYmFyLyIsCisgICAgICAgICAgICAgICAgImRlYnVnZ2VyOmh0dHA6
Ly9mb28uY29tL2Jhci9mb28uanMiLAorICAgICAgICAgICAgICAgICJkZWJ1Z2dlcjpzb3VyY2VV
UkwuanMiLAorCisgICAgICAgICAgICAgICAgImxpdmVlZGl0Omh0dHA6Ly9mb28uY29tIiwKKyAg
ICAgICAgICAgICAgICAibGl2ZWVkaXQ6aHR0cDovL2Zvby5jb20vIiwKKyAgICAgICAgICAgICAg
ICAibGl2ZWVkaXQ6aHR0cDovL2Zvby5jb20vYmFyIiwKKyAgICAgICAgICAgICAgICAibGl2ZWVk
aXQ6aHR0cDovL2Zvby5jb20vYmFyLyIsCisgICAgICAgICAgICAgICAgImxpdmVlZGl0Omh0dHA6
Ly9mb28uY29tL2Jhci9mb28uanMiLAorICAgICAgICAgICAgICAgICJsaXZlZWRpdDpzb3VyY2VV
UkwuanMiLAorCisgICAgICAgICAgICAgICAgIjBAUHJvamVjdHMvd3d3L2Zvby5jb20iLAorICAg
ICAgICAgICAgICAgICIxQFByb2plY3RzL3d3dy9mb28uY29tLyIsCisgICAgICAgICAgICAgICAg
IjJAUHJvamVjdHMvd3d3L2Zvby5jb20vYmFyIiwKKyAgICAgICAgICAgICAgICAiM0BQcm9qZWN0
cy93d3cvZm9vLmNvbS9iYXIvIiwKKyAgICAgICAgICAgICAgICAiNDJAUHJvamVjdHMvd3d3L2Zv
by5jb20vYmFyL2Zvby5qcyIsCisgICAgICAgICAgICAgICAgIjVAUHJvamVjdHMvc291cmNlVVJM
LmpzIiwKKworICAgICAgICAgICAgICAgICJzbmlwcGV0czpzbmlwcGV0TmFtZSIsCisKKyAgICAg
ICAgICAgICAgICAiaHR0cDovL2Zvby5jb20vYmFyL2Zvby5qcz9wYXJhbTE9LyZwYXJhbTI9L2Zv
by9iYXIiLAorICAgICAgICAgICAgICAgICJkZWJ1Z2dlcjpodHRwOi8vZm9vLmNvbS9iYXIvZm9v
LmpzP3BhcmFtMT0vJnBhcmFtMj0vZm9vL2JhciIsCisgICAgICAgICAgICAgICAgInNvdXJjZVVS
TC5qcz9wYXJhbTE9LyZwYXJhbTI9L2Zvby9iYXIiLAorCisgICAgICAgICAgICAgICAgImRlb2Jm
dXNjYXRlZDpodHRwOi8vZm9vLmNvbS9iYXIvZm9vLmpzIiwKKyAgICAgICAgICAgICAgICAiZGVv
YmZ1c2NhdGVkOmRlYnVnZ2VyOmh0dHA6Ly9mb28uY29tL2Jhci9mb28uanMiLAorICAgICAgICAg
ICAgICAgICJkZW9iZnVzY2F0ZWQ6bGl2ZWVkaXQ6aHR0cDovL2Zvby5jb20vYmFyL2Zvby5qcyIs
CisgICAgICAgICAgICAgICAgImRlb2JmdXNjYXRlZDo0MkBQcm9qZWN0cy93d3cvZm9vLmNvbS9i
YXIvZm9vLmpzIiwKKyAgICAgICAgICAgICAgICAiZGVvYmZ1c2NhdGVkOmh0dHA6Ly9mb28uY29t
L2Jhci9mb28uanM/cGFyYW0xPS8mcGFyYW0yPS9mb28vYmFyIiwKKyAgICAgICAgICAgICAgICAi
ZGVvYmZ1c2NhdGVkOmRlYnVnZ2VyOmh0dHA6Ly9mb28uY29tL2Jhci9mb28uanM/cGFyYW0xPS8m
cGFyYW0yPS9mb28vYmFyIiwKKworICAgICAgICAgICAgICAgICJodHRwOi8vZm9vLmNvbTo4MC9i
YXIvZm9vLmpzIiwKKyAgICAgICAgICAgICAgICAiZGVvYmZ1c2NhdGVkOmh0dHA6Ly9mb28uY29t
OjgwL2Jhci9mb28uanMiLAorICAgICAgICAgICAgICAgICJkZWJ1Z2dlcjpodHRwOi8vZm9vLmNv
bTo4MC9iYXIvZm9vLmpzIiwKKyAgICAgICAgICAgICAgICAiZGVvYmZ1c2NhdGVkOmRlYnVnZ2Vy
Omh0dHA6Ly9mb28uY29tOjgwL2Jhci9mb28uanMiLAorICAgICAgICAgICAgXTsKKworICAgICAg
ICAgICAgZnVuY3Rpb24gcnVuTWlncmF0ZUJyZWFrcG9pbnRzVGVzdCh1cmxzKQorICAgICAgICAg
ICAgeworICAgICAgICAgICAgICAgIHZhciB2ZXJzaW9uQ29udHJvbGxlciA9IG5ldyBXZWJJbnNw
ZWN0b3IuVmVyc2lvbkNvbnRyb2xsZXIoKTsKKyAgICAgICAgICAgICAgICB2YXIgc2VyaWFsaXpl
ZEJyZWFrcG9pbnRzID0gW107CisgICAgICAgICAgICAgICAgdmFyIG9sZEJyZWFrcG9pbnRzID0g
W107CisgICAgICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCB1cmxzLmxlbmd0aDsgKytp
KSB7CisgICAgICAgICAgICAgICAgICAgIC8vIENyZWF0ZSBhIGR1cGxpY2F0ZSBvZiBlYWNoIGJy
ZWFrcG9pbnQgZm9yIHByaW50aW5nIHJlc3VsdHMuCisgICAgICAgICAgICAgICAgICAgIHZhciBi
cmVha3BvaW50ID0gY3JlYXRlQnJlYWtwb2ludCh1cmxzW2ldLCAwLCAiIiwgdHJ1ZSk7CisgICAg
ICAgICAgICAgICAgICAgIHZhciBvbGRCcmVha3BvaW50ID0gY3JlYXRlQnJlYWtwb2ludCh1cmxz
W2ldLCAwLCAiIiwgdHJ1ZSk7CisgICAgICAgICAgICAgICAgICAgIHNlcmlhbGl6ZWRCcmVha3Bv
aW50cy5wdXNoKGJyZWFrcG9pbnQpOworICAgICAgICAgICAgICAgICAgICBvbGRCcmVha3BvaW50
cy5wdXNoKG9sZEJyZWFrcG9pbnQpOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAg
ICB2YXIgYnJlYWtwb2ludHNTZXR0aW5nID0gbmV3IE1vY2tTZXR0aW5nKHNlcmlhbGl6ZWRCcmVh
a3BvaW50cyk7CisgICAgICAgICAgICAgICAgdmVyc2lvbkNvbnRyb2xsZXIuX21pZ3JhdGVCcmVh
a3BvaW50c0Zyb21VUkxUb1VSSShicmVha3BvaW50c1NldHRpbmcpOworICAgICAgICAgICAgICAg
IEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KCJCcmVha3BvaW50IG1pZ3JhdGlvbnM6ICIpOworICAg
ICAgICAgICAgICAgIG5ld0JyZWFrcG9pbnRzID0gYnJlYWtwb2ludHNTZXR0aW5nLmdldCgpOwor
ICAgICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbmV3QnJlYWtwb2ludHMubGVuZ3Ro
OyArK2kpCisgICAgICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KCIgICAg
IiArIG9sZEJyZWFrcG9pbnRzW2ldLnNvdXJjZUZpbGVJZCArICIgPT4gIiArIG5ld0JyZWFrcG9p
bnRzW2ldLnNvdXJjZUZpbGVJZCk7CisgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRS
ZXN1bHQoIiIpOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBydW5NaWdyYXRlQnJlYWtw
b2ludHNUZXN0KFtdKTsKKyAgICAgICAgICAgIHJ1bk1pZ3JhdGVCcmVha3BvaW50c1Rlc3QodXJs
cy5zbGljZSgwLCAxKSk7CisgICAgICAgICAgICBydW5NaWdyYXRlQnJlYWtwb2ludHNUZXN0KHVy
bHMpOworICAgICAgICAgICAgbmV4dCgpOwogICAgICAgICB9CiAgICAgXSk7CiB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>188563</attachid>
            <date>2013-02-15 07:15:28 -0800</date>
            <delta_ts>2013-02-16 03:30:01 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-109691-20130215191154.patch</filename>
            <type>text/plain</type>
            <size>28292</size>
            <attacher name="Vsevolod Vlasov">vsevik</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQyOTg1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDVlMDViODI5OTI2YTlk
YTJmNWRkYzY5ZjEzZTU1ZGRkMTdjMzY3NS4uMjJhMTg3NjA1NzcyYTQ0MGEzNDI2NDNhMTIzM2Rj
YWJkYTE1MzQzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQyIEBACisyMDEzLTAyLTE1ICBWc2V2
b2xvZCBWbGFzb3YgIDx2c2V2aWtAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFdlYiBJbnNwZWN0
b3I6IENyZWF0ZSBzZXBhcmF0ZSBwcm9qZWN0IGZvciBlYWNoIGRvbWFpbiBmb3IgVUlTb3VyY2VD
b2RlIGJhc2VkIG9uIGJyb3dzZXIgcmVzb3VyY2VzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA5NjkxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgU2VwYXJhdGUgcHJvamVjdCBvZiBjZXJ0YWluIHR5cGUg
aXMgbm93IGNyZWF0ZWQgZm9yIGVhY2ggZG9tYWluLgorICAgICAgICBVSVNvdXJjZUNvZGUgcGF0
aCByZXByZXNlbnRzIGEgcGF0aCBpbiB0aGUgcHJvamVjdCBub3cuCisgICAgICAgIFVJU291cmNl
Q29kZSB1cmkgaXMgbm93IGNhbGN1bGF0ZWQgYmFzZWQgb24gcHJvamVjdCBpZCBhbmQgcGF0aC4K
KyAgICAgICAgSXQgaXMgYWxzbyBwb3NzaWJsZSB0byBjYWxjdWxhdGUgcGF0aCBiYXNlZCBvbiBw
cm9qZWN0SWQgYW5kIFVSSSwgd2hpY2ggaXMgdXNlZCBmb3IgdWlTb3VyY2VDb2RlRm9yVVJJKCkg
bWV0aG9kcy4KKworICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0U25pcHBldE1v
ZGVsLmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlNjcmlwdFNuaXBwZXRNb2RlbC5wcm90b3R5
cGUuX2FkZFNjcmlwdFNuaXBwZXQpOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvU2lt
cGxlV29ya3NwYWNlUHJvdmlkZXIuanM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuU2ltcGxlUHJv
amVjdERlbGVnYXRlKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5TaW1wbGVQcm9qZWN0RGVsZWdh
dGUucHJvamVjdElkKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5TaW1wbGVQcm9qZWN0RGVsZWdh
dGUucHJvdG90eXBlLmlkKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5TaW1wbGVQcm9qZWN0RGVs
ZWdhdGUucHJvdG90eXBlLmRpc3BsYXlOYW1lKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5TaW1w
bGVQcm9qZWN0RGVsZWdhdGUucHJvdG90eXBlLmFkZEZpbGUpOgorICAgICAgICAoV2ViSW5zcGVj
dG9yLlNpbXBsZVdvcmtzcGFjZVByb3ZpZGVyKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5TaW1w
bGVXb3Jrc3BhY2VQcm92aWRlci5zcGxpdFVSTCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuU2lt
cGxlV29ya3NwYWNlUHJvdmlkZXIuX3BhdGhGb3JTcGxpdHRlZFVSTCk6CisgICAgICAgIChXZWJJ
bnNwZWN0b3IuU2ltcGxlV29ya3NwYWNlUHJvdmlkZXIudXJpRm9yVVJMKToKKyAgICAgICAgKFdl
Ykluc3BlY3Rvci5TaW1wbGVXb3Jrc3BhY2VQcm92aWRlci5wcm90b3R5cGUuX3Byb2plY3REZWxl
Z2F0ZSk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuU2ltcGxlV29ya3NwYWNlUHJvdmlkZXIucHJv
dG90eXBlLl9pbm5lckFkZEZpbGVGb3JVUkwpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlNpbXBs
ZVdvcmtzcGFjZVByb3ZpZGVyLnByb3RvdHlwZS5hZGRGaWxlQnlOYW1lKToKKyAgICAgICAgKFdl
Ykluc3BlY3Rvci5TaW1wbGVXb3Jrc3BhY2VQcm92aWRlci5wcm90b3R5cGUuX2lubmVyQWRkRmls
ZSk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuU2ltcGxlV29ya3NwYWNlUHJvdmlkZXIucHJvdG90
eXBlLnJlbW92ZUZpbGVCeU5hbWUpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlNpbXBsZVdvcmtz
cGFjZVByb3ZpZGVyLnByb3RvdHlwZS5yZXNldCk6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250
LWVuZC9VSVNvdXJjZUNvZGUuanM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuVUlTb3VyY2VDb2Rl
LnVyaSk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuVUlTb3VyY2VDb2RlLnBhdGgpOgorICAgICAg
ICAoV2ViSW5zcGVjdG9yLlVJU291cmNlQ29kZS5wcm90b3R5cGUudXJpKToKKyAgICAgICAgKiBp
bnNwZWN0b3IvZnJvbnQtZW5kL1dvcmtzcGFjZS5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Q
cm9qZWN0LnByb3RvdHlwZS5fZmlsZUFkZGVkKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Qcm9q
ZWN0LnByb3RvdHlwZS5fZmlsZVJlbW92ZWQpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlByb2pl
Y3QucHJvdG90eXBlLnVpU291cmNlQ29kZUZvclVSSSk6CisKIDIwMTMtMDItMTUgIE1paG5lYSBP
dmlkZW5pZSAgPG1paG5lYUBhZG9iZS5jb20+CiAKICAgICAgICAgW0NTUyBSZWdpb25zXSBSZW5k
ZXJSZWdpb24gc2hvdWxkIGluaGVyaXQgZnJvbSBSZW5kZXJCbG9jawpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TY3JpcHRTbmlwcGV0TW9kZWwuanMgYi9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NjcmlwdFNuaXBwZXRNb2RlbC5qcwpp
bmRleCBmMDE5MzE3MmI5MTM0ZjFmMjhkZTc1NzE0N2VjZDk3Nzg5ZTFkZjkxLi42ZDgxZTVhM2Jh
YmYzZWQ2OWJlYjI1MTViOWY5ZjZmYWNlNzkyMGEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NjcmlwdFNuaXBwZXRNb2RlbC5qcworKysgYi9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NjcmlwdFNuaXBwZXRNb2RlbC5qcwpAQCAtODIs
NyArODIsNyBAQCBXZWJJbnNwZWN0b3IuU2NyaXB0U25pcHBldE1vZGVsLnByb3RvdHlwZSA9IHsK
ICAgICAgKi8KICAgICBfYWRkU2NyaXB0U25pcHBldDogZnVuY3Rpb24oc25pcHBldCkKICAgICB7
Ci0gICAgICAgIHZhciB1aVNvdXJjZUNvZGUgPSB0aGlzLl93b3Jrc3BhY2VQcm92aWRlci5hZGRG
aWxlRm9yVVJMKHNuaXBwZXQubmFtZSwgbmV3IFdlYkluc3BlY3Rvci5TbmlwcGV0Q29udGVudFBy
b3ZpZGVyKHNuaXBwZXQpLCB0cnVlKTsKKyAgICAgICAgdmFyIHVpU291cmNlQ29kZSA9IHRoaXMu
X3dvcmtzcGFjZVByb3ZpZGVyLmFkZEZpbGVCeU5hbWUoIiIsIHNuaXBwZXQubmFtZSwgbmV3IFdl
Ykluc3BlY3Rvci5TbmlwcGV0Q29udGVudFByb3ZpZGVyKHNuaXBwZXQpLCB0cnVlKTsKICAgICAg
ICAgdmFyIHNjcmlwdEZpbGUgPSBuZXcgV2ViSW5zcGVjdG9yLlNuaXBwZXRTY3JpcHRGaWxlKHRo
aXMsIHVpU291cmNlQ29kZSk7CiAgICAgICAgIHVpU291cmNlQ29kZS5zZXRTY3JpcHRGaWxlKHNj
cmlwdEZpbGUpOwogICAgICAgICB0aGlzLl9zbmlwcGV0SWRGb3JVSVNvdXJjZUNvZGUucHV0KHVp
U291cmNlQ29kZSwgc25pcHBldC5pZCk7CkBAIC0xMDMsNyArMTAzLDcgQEAgV2ViSW5zcGVjdG9y
LlNjcmlwdFNuaXBwZXRNb2RlbC5wcm90b3R5cGUgPSB7CiAgICAgICAgIHRoaXMuX3JlbGVhc2VT
bmlwcGV0U2NyaXB0KHVpU291cmNlQ29kZSk7CiAgICAgICAgIGRlbGV0ZSB0aGlzLl91aVNvdXJj
ZUNvZGVGb3JTbmlwcGV0SWRbc25pcHBldC5pZF07CiAgICAgICAgIHRoaXMuX3NuaXBwZXRJZEZv
clVJU291cmNlQ29kZS5yZW1vdmUodWlTb3VyY2VDb2RlKTsKLSAgICAgICAgdGhpcy5fd29ya3Nw
YWNlUHJvdmlkZXIucmVtb3ZlRmlsZShzbmlwcGV0Lm5hbWUpOworICAgICAgICB0aGlzLl93b3Jr
c3BhY2VQcm92aWRlci5yZW1vdmVGaWxlQnlOYW1lKCIiLCBzbmlwcGV0Lm5hbWUpOwogICAgIH0s
CiAKICAgICAvKioKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1l
bmQvU2ltcGxlV29ya3NwYWNlUHJvdmlkZXIuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
ZnJvbnQtZW5kL1NpbXBsZVdvcmtzcGFjZVByb3ZpZGVyLmpzCmluZGV4IGFjNTgxYzgxNDNkNjA5
ZWE1NjI3ZTc0ZmZlNGViZjMxNzRjOWJhMmMuLjBmYTdhZGRiZDQ3ZTllNzVkODQyNDQxNTNkNTgw
OWNlYzQwZTgzNDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1l
bmQvU2ltcGxlV29ya3NwYWNlUHJvdmlkZXIuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9TaW1wbGVXb3Jrc3BhY2VQcm92aWRlci5qcwpAQCAtMzMsMjEgKzMzLDI4
IEBACiAgKiBAaW1wbGVtZW50cyB7V2ViSW5zcGVjdG9yLlByb2plY3REZWxlZ2F0ZX0KICAqIEBl
eHRlbmRzIHtXZWJJbnNwZWN0b3IuT2JqZWN0fQogICovCi1XZWJJbnNwZWN0b3IuU2ltcGxlUHJv
amVjdERlbGVnYXRlID0gZnVuY3Rpb24odHlwZSkKK1dlYkluc3BlY3Rvci5TaW1wbGVQcm9qZWN0
RGVsZWdhdGUgPSBmdW5jdGlvbihuYW1lLCB0eXBlKQogeworICAgIHRoaXMuX25hbWUgPSBuYW1l
OwogICAgIHRoaXMuX3R5cGUgPSB0eXBlOwogICAgIC8qKiBAdHlwZSB7T2JqZWN0LjxzdHJpbmcs
IFdlYkluc3BlY3Rvci5Db250ZW50UHJvdmlkZXI+fSAqLwogICAgIHRoaXMuX2NvbnRlbnRQcm92
aWRlcnMgPSB7fTsKICAgICB0aGlzLl9sYXN0VW5pcXVlU3VmZml4ID0gMDsKIH0KIAorV2ViSW5z
cGVjdG9yLlNpbXBsZVByb2plY3REZWxlZ2F0ZS5wcm9qZWN0SWQgPSBmdW5jdGlvbihuYW1lLCB0
eXBlKQoreworICAgIHZhciB0eXBlUHJlZml4ID0gdHlwZSAhPT0gV2ViSW5zcGVjdG9yLnByb2pl
Y3RUeXBlcy5OZXR3b3JrID8gKHR5cGUgKyAiOiIpIDogIiI7CisgICAgcmV0dXJuIHR5cGVQcmVm
aXggKyBuYW1lOworfQorCiBXZWJJbnNwZWN0b3IuU2ltcGxlUHJvamVjdERlbGVnYXRlLnByb3Rv
dHlwZSA9IHsKICAgICAvKioKICAgICAgKiBAcmV0dXJuIHtzdHJpbmd9CiAgICAgICovCiAgICAg
aWQ6IGZ1bmN0aW9uKCkKICAgICB7Ci0gICAgICAgIHJldHVybiB0aGlzLl90eXBlOworICAgICAg
ICByZXR1cm4gV2ViSW5zcGVjdG9yLlNpbXBsZVByb2plY3REZWxlZ2F0ZS5wcm9qZWN0SWQodGhp
cy5fbmFtZSwgdGhpcy5fdHlwZSk7CiAgICAgfSwKIAogICAgIC8qKgpAQCAtNjMsNyArNzAsMTgg
QEAgV2ViSW5zcGVjdG9yLlNpbXBsZVByb2plY3REZWxlZ2F0ZS5wcm90b3R5cGUgPSB7CiAgICAg
ICovCiAgICAgZGlzcGxheU5hbWU6IGZ1bmN0aW9uKCkKICAgICB7Ci0gICAgICAgIHJldHVybiAi
IjsKKyAgICAgICAgaWYgKHR5cGVvZiB0aGlzLl9kaXNwbGF5TmFtZSAhPT0gInVuZGVmaW5lZCIp
CisgICAgICAgICAgICByZXR1cm4gdGhpcy5fZGlzcGxheU5hbWU7CisgICAgICAgIGlmICghdGhp
cy5fbmFtZSkgeworICAgICAgICAgICAgdGhpcy5fZGlzcGxheU5hbWUgPSAiIjsKKyAgICAgICAg
ICAgIHJldHVybiB0aGlzLl9kaXNwbGF5TmFtZTsKKyAgICAgICAgfQorICAgICAgICB2YXIgcGFy
c2VkVVJMID0gbmV3IFdlYkluc3BlY3Rvci5QYXJzZWRVUkwodGhpcy5fbmFtZSk7CisgICAgICAg
IGlmIChwYXJzZWRVUkwuaXNWYWxpZCkKKyAgICAgICAgICAgIHRoaXMuX2Rpc3BsYXlOYW1lID0g
cGFyc2VkVVJMLmhvc3QgKyAocGFyc2VkVVJMLnBvcnQgPyAoIjoiICsgcGFyc2VkVVJMLnBvcnQp
IDogIiIpOworICAgICAgICBlbHNlCisgICAgICAgICAgICB0aGlzLl9kaXNwbGF5TmFtZSA9IHRo
aXMuX25hbWU7CisgICAgICAgIHJldHVybiB0aGlzLl9kaXNwbGF5TmFtZTsKICAgICB9LAogCiAg
ICAgLyoqCkBAIC04Nyw2ICsxMDUsNyBAQCBXZWJJbnNwZWN0b3IuU2ltcGxlUHJvamVjdERlbGVn
YXRlLnByb3RvdHlwZSA9IHsKICAgICB9LAogCiAgICAgLyoqCisgICAgICogQHBhcmFtIHtzdHJp
bmd9IHBhdGgKICAgICAgKiBAcGFyYW0ge3N0cmluZ30gcXVlcnkKICAgICAgKiBAcGFyYW0ge2Jv
b2xlYW59IGNhc2VTZW5zaXRpdmUKICAgICAgKiBAcGFyYW0ge2Jvb2xlYW59IGlzUmVnZXgKQEAg
LTEwNCwxMiArMTIzLDEyIEBAIFdlYkluc3BlY3Rvci5TaW1wbGVQcm9qZWN0RGVsZWdhdGUucHJv
dG90eXBlID0gewogICAgICAqIEBwYXJhbSB7V2ViSW5zcGVjdG9yLkNvbnRlbnRQcm92aWRlcn0g
Y29udGVudFByb3ZpZGVyCiAgICAgICogQHBhcmFtIHtib29sZWFufSBpc0VkaXRhYmxlCiAgICAg
ICogQHBhcmFtIHtib29sZWFuPX0gaXNDb250ZW50U2NyaXB0CisgICAgICogQHJldHVybiB7c3Ry
aW5nfQogICAgICAqLwogICAgIGFkZEZpbGU6IGZ1bmN0aW9uKHBhdGgsIGZvcmNlVW5pcXVlUGF0
aCwgdXJsLCBjb250ZW50UHJvdmlkZXIsIGlzRWRpdGFibGUsIGlzQ29udGVudFNjcmlwdCkKICAg
ICB7CiAgICAgICAgIGlmIChmb3JjZVVuaXF1ZVBhdGgpCiAgICAgICAgICAgICBwYXRoID0gdGhp
cy5fdW5pcXVlUGF0aChwYXRoKTsgCi0gICAgICAgIGNvbnNvbGUuYXNzZXJ0KCF0aGlzLl9jb250
ZW50UHJvdmlkZXJzW3BhdGhdKTsKICAgICAgICAgdmFyIGZpbGVEZXNjcmlwdG9yID0gbmV3IFdl
Ykluc3BlY3Rvci5GaWxlRGVzY3JpcHRvcihwYXRoLCB1cmwsIHVybCwgY29udGVudFByb3ZpZGVy
LmNvbnRlbnRUeXBlKCksIGlzRWRpdGFibGUsIGlzQ29udGVudFNjcmlwdCk7CiAgICAgICAgIHRo
aXMuX2NvbnRlbnRQcm92aWRlcnNbcGF0aF0gPSBjb250ZW50UHJvdmlkZXI7CiAgICAgICAgIHRo
aXMuZGlzcGF0Y2hFdmVudFRvTGlzdGVuZXJzKFdlYkluc3BlY3Rvci5Qcm9qZWN0RGVsZWdhdGUu
RXZlbnRzLkZpbGVBZGRlZCwgZmlsZURlc2NyaXB0b3IpOwpAQCAtMTU2LDI3ICsxNzUsODQgQEAg
V2ViSW5zcGVjdG9yLlNpbXBsZVdvcmtzcGFjZVByb3ZpZGVyID0gZnVuY3Rpb24od29ya3NwYWNl
LCB0eXBlKQogewogICAgIHRoaXMuX3dvcmtzcGFjZSA9IHdvcmtzcGFjZTsKICAgICB0aGlzLl90
eXBlID0gdHlwZTsKLSAgICB0aGlzLl9zaW1wbGVQcm9qZWN0RGVsZWdhdGUgPSBuZXcgV2ViSW5z
cGVjdG9yLlNpbXBsZVByb2plY3REZWxlZ2F0ZSh0aGlzLl90eXBlKTsKLSAgICB0aGlzLl93b3Jr
c3BhY2UuYWRkUHJvamVjdCh0aGlzLl9zaW1wbGVQcm9qZWN0RGVsZWdhdGUpOworICAgIHRoaXMu
X3NpbXBsZVByb2plY3REZWxlZ2F0ZXMgPSB7fTsKK30KKworLyoqCisgKiBAcGFyYW0ge3N0cmlu
Z30gdXJsCisgKiBAcmV0dXJuIHtBcnJheS48c3RyaW5nPn0KKyAqLworV2ViSW5zcGVjdG9yLlNp
bXBsZVdvcmtzcGFjZVByb3ZpZGVyLnNwbGl0VVJMID0gZnVuY3Rpb24odXJsKQoreworICAgIHZh
ciBwYXJzZWRVUkwgPSBuZXcgV2ViSW5zcGVjdG9yLlBhcnNlZFVSTCh1cmwpOworICAgIHZhciBv
cmlnaW47CisgICAgdmFyIGZvbGRlclBhdGg7CisgICAgdmFyIG5hbWU7CisgICAgaWYgKHBhcnNl
ZFVSTC5pc1ZhbGlkKSB7CisgICAgICAgIG9yaWdpbiA9IHBhcnNlZFVSTC5zY2hlbWUgKyAiOi8v
IiArIHBhcnNlZFVSTC5ob3N0OworICAgICAgICBpZiAocGFyc2VkVVJMLnBvcnQpCisgICAgICAg
ICAgICBvcmlnaW4gKz0gIjoiICsgcGFyc2VkVVJMLnBvcnQ7CisgICAgICAgIGZvbGRlclBhdGgg
PSBwYXJzZWRVUkwuZm9sZGVyUGF0aENvbXBvbmVudHM7CisgICAgICAgIG5hbWUgPSBwYXJzZWRV
UkwubGFzdFBhdGhDb21wb25lbnQ7CisgICAgICAgIGlmIChwYXJzZWRVUkwucXVlcnlQYXJhbXMp
CisgICAgICAgICAgICBuYW1lICs9ICI/IiArIHBhcnNlZFVSTC5xdWVyeVBhcmFtczsKKyAgICB9
IGVsc2UgeworICAgICAgICBvcmlnaW4gPSAiIjsKKyAgICAgICAgZm9sZGVyUGF0aCA9ICIiOwor
ICAgICAgICBuYW1lID0gdXJsOworICAgIH0KKyAgICB2YXIgcmVzdWx0ID0gW29yaWdpbl07Cisg
ICAgdmFyIHNwbGl0dGVkUGF0aCA9IGZvbGRlclBhdGguc3BsaXQoIi8iKTsKKyAgICBmb3IgKHZh
ciBpID0gMTsgaSA8IHNwbGl0dGVkUGF0aC5sZW5ndGg7ICsraSkKKyAgICAgICAgcmVzdWx0LnB1
c2goc3BsaXR0ZWRQYXRoW2ldKTsKKyAgICByZXN1bHQucHVzaChuYW1lKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorCisvKioKKyAqIEBwYXJhbSB7QXJyYXkuPHN0cmluZz59IHNwbGl0dGVkVVJM
CisgKiBAcmV0dXJuIHtzdHJpbmd9CisgKi8KK1dlYkluc3BlY3Rvci5TaW1wbGVXb3Jrc3BhY2VQ
cm92aWRlci5fcGF0aEZvclNwbGl0dGVkVVJMID0gZnVuY3Rpb24oc3BsaXR0ZWRVUkwpCit7Cisg
ICAgc3BsaXR0ZWRVUkwuc2hpZnQoKTsKKyAgICByZXR1cm4gc3BsaXR0ZWRVUkwuam9pbigiLyIp
OwogfQogCiAvKioKICAqIEBwYXJhbSB7c3RyaW5nfSB1cmwKKyAqIEBwYXJhbSB7c3RyaW5nfSB0
eXBlCiAgKiBAcmV0dXJuIHtzdHJpbmd9CiAgKi8KIFdlYkluc3BlY3Rvci5TaW1wbGVXb3Jrc3Bh
Y2VQcm92aWRlci51cmlGb3JVUkwgPSBmdW5jdGlvbih1cmwsIHR5cGUpCi17ICAgCi0gICAgdmFy
IHVyaVR5cGVQcmVmaXggPSB0eXBlICE9PSBXZWJJbnNwZWN0b3IucHJvamVjdFR5cGVzLk5ldHdv
cmsgPyAodHlwZSArICI6IikgOiAiIjsKLSAgICB2YXIgdXJpID0gdXJpVHlwZVByZWZpeCArIHVy
bDsKLSAgICByZXR1cm4gdXJpOwotfQoreworICAgIHZhciBzcGxpdHRlZFVSTCA9IFdlYkluc3Bl
Y3Rvci5TaW1wbGVXb3Jrc3BhY2VQcm92aWRlci5zcGxpdFVSTCh1cmwpOworICAgIHZhciBwcm9q
ZWN0SWQgPSBXZWJJbnNwZWN0b3IuU2ltcGxlUHJvamVjdERlbGVnYXRlLnByb2plY3RJZChzcGxp
dHRlZFVSTFswXSwgdHlwZSk7CisgICAgdmFyIHBhdGggPSBXZWJJbnNwZWN0b3IuU2ltcGxlV29y
a3NwYWNlUHJvdmlkZXIuX3BhdGhGb3JTcGxpdHRlZFVSTChzcGxpdHRlZFVSTCk7CisgICAgcmV0
dXJuIFdlYkluc3BlY3Rvci5VSVNvdXJjZUNvZGUudXJpKHByb2plY3RJZCwgcGF0aCk7CisgfQog
CiBXZWJJbnNwZWN0b3IuU2ltcGxlV29ya3NwYWNlUHJvdmlkZXIucHJvdG90eXBlID0gewogICAg
IC8qKgorICAgICAqIEBwYXJhbSB7c3RyaW5nfSBwcm9qZWN0TmFtZQorICAgICAqIEByZXR1cm4g
e1dlYkluc3BlY3Rvci5Qcm9qZWN0RGVsZWdhdGV9CisgICAgICovCisgICAgX3Byb2plY3REZWxl
Z2F0ZTogZnVuY3Rpb24ocHJvamVjdE5hbWUpCisgICAgeworICAgICAgICBpZiAodGhpcy5fc2lt
cGxlUHJvamVjdERlbGVnYXRlc1twcm9qZWN0TmFtZV0pCisgICAgICAgICAgICByZXR1cm4gdGhp
cy5fc2ltcGxlUHJvamVjdERlbGVnYXRlc1twcm9qZWN0TmFtZV07CisgICAgICAgIHZhciBzaW1w
bGVQcm9qZWN0RGVsZWdhdGUgPSBuZXcgV2ViSW5zcGVjdG9yLlNpbXBsZVByb2plY3REZWxlZ2F0
ZShwcm9qZWN0TmFtZSwgdGhpcy5fdHlwZSk7CisgICAgICAgIHRoaXMuX3NpbXBsZVByb2plY3RE
ZWxlZ2F0ZXNbcHJvamVjdE5hbWVdID0gc2ltcGxlUHJvamVjdERlbGVnYXRlOworICAgICAgICB0
aGlzLl93b3Jrc3BhY2UuYWRkUHJvamVjdChzaW1wbGVQcm9qZWN0RGVsZWdhdGUpOworICAgICAg
ICByZXR1cm4gc2ltcGxlUHJvamVjdERlbGVnYXRlOworICAgIH0sCisgCisgICAgLyoqCiAgICAg
ICogQHBhcmFtIHtzdHJpbmd9IHVybAogICAgICAqIEBwYXJhbSB7V2ViSW5zcGVjdG9yLkNvbnRl
bnRQcm92aWRlcn0gY29udGVudFByb3ZpZGVyCiAgICAgICogQHBhcmFtIHtib29sZWFufSBpc0Vk
aXRhYmxlCiAgICAgICogQHBhcmFtIHtib29sZWFuPX0gaXNDb250ZW50U2NyaXB0CisgICAgICog
QHJldHVybiB7V2ViSW5zcGVjdG9yLlVJU291cmNlQ29kZX0KICAgICAgKi8KICAgICBhZGRGaWxl
Rm9yVVJMOiBmdW5jdGlvbih1cmwsIGNvbnRlbnRQcm92aWRlciwgaXNFZGl0YWJsZSwgaXNDb250
ZW50U2NyaXB0KQogICAgIHsKQEAgLTE4OCw2ICsyNjQsNyBAQCBXZWJJbnNwZWN0b3IuU2ltcGxl
V29ya3NwYWNlUHJvdmlkZXIucHJvdG90eXBlID0gewogICAgICAqIEBwYXJhbSB7V2ViSW5zcGVj
dG9yLkNvbnRlbnRQcm92aWRlcn0gY29udGVudFByb3ZpZGVyCiAgICAgICogQHBhcmFtIHtib29s
ZWFufSBpc0VkaXRhYmxlCiAgICAgICogQHBhcmFtIHtib29sZWFuPX0gaXNDb250ZW50U2NyaXB0
CisgICAgICogQHJldHVybiB7V2ViSW5zcGVjdG9yLlVJU291cmNlQ29kZX0KICAgICAgKi8KICAg
ICBhZGRVbmlxdWVGaWxlRm9yVVJMOiBmdW5jdGlvbih1cmwsIGNvbnRlbnRQcm92aWRlciwgaXNF
ZGl0YWJsZSwgaXNDb250ZW50U2NyaXB0KQogICAgIHsKQEAgLTE5OCwyNyArMjc1LDYyIEBAIFdl
Ykluc3BlY3Rvci5TaW1wbGVXb3Jrc3BhY2VQcm92aWRlci5wcm90b3R5cGUgPSB7CiAgICAgICog
QHBhcmFtIHtzdHJpbmd9IHVybAogICAgICAqIEBwYXJhbSB7V2ViSW5zcGVjdG9yLkNvbnRlbnRQ
cm92aWRlcn0gY29udGVudFByb3ZpZGVyCiAgICAgICogQHBhcmFtIHtib29sZWFufSBpc0VkaXRh
YmxlCisgICAgICogQHBhcmFtIHtib29sZWFufSBmb3JjZVVuaXF1ZQogICAgICAqIEBwYXJhbSB7
Ym9vbGVhbj19IGlzQ29udGVudFNjcmlwdAorICAgICAqIEByZXR1cm4ge1dlYkluc3BlY3Rvci5V
SVNvdXJjZUNvZGV9CiAgICAgICovCiAgICAgX2lubmVyQWRkRmlsZUZvclVSTDogZnVuY3Rpb24o
dXJsLCBjb250ZW50UHJvdmlkZXIsIGlzRWRpdGFibGUsIGZvcmNlVW5pcXVlLCBpc0NvbnRlbnRT
Y3JpcHQpCiAgICAgewotICAgICAgICB2YXIgcGF0aCA9IFdlYkluc3BlY3Rvci5TaW1wbGVXb3Jr
c3BhY2VQcm92aWRlci51cmlGb3JVUkwodXJsLCB0aGlzLl90eXBlKTsKLSAgICAgICAgcGF0aCA9
IHRoaXMuX3NpbXBsZVByb2plY3REZWxlZ2F0ZS5hZGRGaWxlKHBhdGgsIGZvcmNlVW5pcXVlLCB1
cmwsIGNvbnRlbnRQcm92aWRlciwgaXNFZGl0YWJsZSwgaXNDb250ZW50U2NyaXB0KTsKLSAgICAg
ICAgcmV0dXJuIHRoaXMuX3dvcmtzcGFjZS51aVNvdXJjZUNvZGUodGhpcy5fc2ltcGxlUHJvamVj
dERlbGVnYXRlLmlkKCksIHBhdGgpOworICAgICAgICB2YXIgc3BsaXR0ZWRVUkwgPSBXZWJJbnNw
ZWN0b3IuU2ltcGxlV29ya3NwYWNlUHJvdmlkZXIuc3BsaXRVUkwodXJsKTsKKyAgICAgICAgdmFy
IHByb2plY3ROYW1lID0gc3BsaXR0ZWRVUkxbMF07CisgICAgICAgIHZhciBwYXRoID0gV2ViSW5z
cGVjdG9yLlNpbXBsZVdvcmtzcGFjZVByb3ZpZGVyLl9wYXRoRm9yU3BsaXR0ZWRVUkwoc3BsaXR0
ZWRVUkwpOworICAgICAgICByZXR1cm4gdGhpcy5faW5uZXJBZGRGaWxlKHByb2plY3ROYW1lLCBw
YXRoLCB1cmwsIGNvbnRlbnRQcm92aWRlciwgaXNFZGl0YWJsZSwgZm9yY2VVbmlxdWUsIGlzQ29u
dGVudFNjcmlwdCk7CiAgICAgfSwKIAogICAgIC8qKgotICAgICAqIEBwYXJhbSB7c3RyaW5nfSB1
cmwKKyAgICAgKiBAcGFyYW0ge3N0cmluZ30gcHJvamVjdE5hbWUKKyAgICAgKiBAcGFyYW0ge3N0
cmluZ30gbmFtZQorICAgICAqIEBwYXJhbSB7V2ViSW5zcGVjdG9yLkNvbnRlbnRQcm92aWRlcn0g
Y29udGVudFByb3ZpZGVyCisgICAgICogQHBhcmFtIHtib29sZWFufSBpc0VkaXRhYmxlCisgICAg
ICogQHBhcmFtIHtib29sZWFuPX0gaXNDb250ZW50U2NyaXB0CisgICAgICogQHJldHVybiB7V2Vi
SW5zcGVjdG9yLlVJU291cmNlQ29kZX0KKyAgICAgKi8KKyAgICBhZGRGaWxlQnlOYW1lOiBmdW5j
dGlvbihwcm9qZWN0TmFtZSwgbmFtZSwgY29udGVudFByb3ZpZGVyLCBpc0VkaXRhYmxlLCBpc0Nv
bnRlbnRTY3JpcHQpCisgICAgeworICAgICAgICByZXR1cm4gdGhpcy5faW5uZXJBZGRGaWxlKCIi
LCBuYW1lLCBuYW1lLCBjb250ZW50UHJvdmlkZXIsIGlzRWRpdGFibGUsIGZhbHNlLCBpc0NvbnRl
bnRTY3JpcHQpOworICAgIH0sCisKKyAgICAvKioKKyAgICAgKiBAcGFyYW0ge3N0cmluZ30gcHJv
amVjdE5hbWUKKyAgICAgKiBAcGFyYW0ge3N0cmluZ30gcGF0aAorICAgICAqIEBwYXJhbSB7V2Vi
SW5zcGVjdG9yLkNvbnRlbnRQcm92aWRlcn0gY29udGVudFByb3ZpZGVyCisgICAgICogQHBhcmFt
IHtib29sZWFufSBpc0VkaXRhYmxlCisgICAgICogQHBhcmFtIHtib29sZWFufSBmb3JjZVVuaXF1
ZQorICAgICAqIEBwYXJhbSB7Ym9vbGVhbj19IGlzQ29udGVudFNjcmlwdAorICAgICAqIEByZXR1
cm4ge1dlYkluc3BlY3Rvci5VSVNvdXJjZUNvZGV9CisgICAgICovCisgICAgX2lubmVyQWRkRmls
ZTogZnVuY3Rpb24ocHJvamVjdE5hbWUsIHBhdGgsIHVybCwgY29udGVudFByb3ZpZGVyLCBpc0Vk
aXRhYmxlLCBmb3JjZVVuaXF1ZSwgaXNDb250ZW50U2NyaXB0KQorICAgIHsKKyAgICAgICAgdmFy
IHByb2plY3REZWxlZ2F0ZSA9IHRoaXMuX3Byb2plY3REZWxlZ2F0ZShwcm9qZWN0TmFtZSk7Cisg
ICAgICAgIHBhdGggPSBwcm9qZWN0RGVsZWdhdGUuYWRkRmlsZShwYXRoLCBmb3JjZVVuaXF1ZSwg
dXJsLCBjb250ZW50UHJvdmlkZXIsIGlzRWRpdGFibGUsIGlzQ29udGVudFNjcmlwdCk7CisgICAg
ICAgIHJldHVybiB0aGlzLl93b3Jrc3BhY2UudWlTb3VyY2VDb2RlKHByb2plY3REZWxlZ2F0ZS5p
ZCgpLCBwYXRoKTsKKyAgICB9LAorCisgICAgLyoqCisgICAgICogQHBhcmFtIHtzdHJpbmd9IHBy
b2plY3ROYW1lCisgICAgICogQHBhcmFtIHtzdHJpbmd9IHBhdGgKICAgICAgKi8KLSAgICByZW1v
dmVGaWxlOiBmdW5jdGlvbih1cmwpCisgICAgcmVtb3ZlRmlsZUJ5TmFtZTogZnVuY3Rpb24ocHJv
amVjdE5hbWUsIHBhdGgpCiAgICAgewotICAgICAgICB2YXIgcGF0aCA9IFdlYkluc3BlY3Rvci5T
aW1wbGVXb3Jrc3BhY2VQcm92aWRlci51cmlGb3JVUkwodXJsLCB0aGlzLl90eXBlKTsKLSAgICAg
ICAgdGhpcy5fc2ltcGxlUHJvamVjdERlbGVnYXRlLnJlbW92ZUZpbGUocGF0aCk7CisgICAgICAg
IHZhciBwcm9qZWN0RGVsZWdhdGUgPSB0aGlzLl9wcm9qZWN0RGVsZWdhdGUocHJvamVjdE5hbWUp
OworICAgICAgICBwcm9qZWN0RGVsZWdhdGUucmVtb3ZlRmlsZShwYXRoKTsKICAgICB9LAogCiAg
ICAgcmVzZXQ6IGZ1bmN0aW9uKCkKICAgICB7Ci0gICAgICAgIHRoaXMuX3NpbXBsZVByb2plY3RE
ZWxlZ2F0ZS5yZXNldCgpOworICAgICAgICBmb3IgKHZhciBwcm9qZWN0TmFtZSBpbiB0aGlzLl9z
aW1wbGVQcm9qZWN0RGVsZWdhdGVzKQorICAgICAgICAgICAgdGhpcy5fc2ltcGxlUHJvamVjdERl
bGVnYXRlc1twcm9qZWN0TmFtZV0ucmVzZXQoKTsKKyAgICAgICAgdGhpcy5fc2ltcGxlUHJvamVj
dERlbGVnYXRlcyA9IHt9OwogICAgIH0sCiAgICAgCiAgICAgX19wcm90b19fOiBXZWJJbnNwZWN0
b3IuT2JqZWN0LnByb3RvdHlwZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L2Zyb250LWVuZC9VSVNvdXJjZUNvZGUuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL1VJU291cmNlQ29kZS5qcwppbmRleCBiMTRmY2FmMDZiYWZjNzM3YjJhMWI4YmU1OGIx
OTAwOWVmMzk0YjRmLi43MmJhYzhhODE4MmQyOTg3NzAwYzExZjY1NDRlYzEwMWVlNjFmNzFmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1VJU291cmNlQ29k
ZS5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1VJU291cmNlQ29k
ZS5qcwpAQCAtODEsNiArODEsMzcgQEAgV2ViSW5zcGVjdG9yLlVJU291cmNlQ29kZS5FdmVudHMg
PSB7CiAgICAgU291cmNlTWFwcGluZ0NoYW5nZWQ6ICJTb3VyY2VNYXBwaW5nQ2hhbmdlZCIsCiB9
CiAKKy8qKgorICogQHBhcmFtIHtzdHJpbmd9IHByb2plY3RJZAorICogQHBhcmFtIHtzdHJpbmd9
IHBhdGgKKyAqIEByZXR1cm4ge3N0cmluZ30KKyAqLworV2ViSW5zcGVjdG9yLlVJU291cmNlQ29k
ZS51cmkgPSBmdW5jdGlvbihwcm9qZWN0SWQsIHBhdGgpCit7CisgICAgaWYgKCFwcm9qZWN0SWQp
CisgICAgICAgIHJldHVybiBwYXRoOworICAgIGlmICghcGF0aCkKKyAgICAgICAgcmV0dXJuIHBy
b2plY3RJZDsKKyAgICByZXR1cm4gcHJvamVjdElkICsgIi8iICsgcGF0aDsKK30KKworLyoqCisg
KiBAcGFyYW0ge3N0cmluZ30gcHJvamVjdElkCisgKiBAcGFyYW0ge3N0cmluZ30gdXJpCisgKiBA
cmV0dXJuIHs/c3RyaW5nfQorICovCitXZWJJbnNwZWN0b3IuVUlTb3VyY2VDb2RlLnBhdGggPSBm
dW5jdGlvbihwcm9qZWN0SWQsIHVyaSkKK3sKKyAgICBpZiAoIXByb2plY3RJZCkKKyAgICAgICAg
cmV0dXJuIHVyaTsKKyAgICBpZiAoIXVyaS5zdGFydHNXaXRoKHByb2plY3RJZCkpCisgICAgICAg
IHJldHVybiBudWxsOworICAgIHZhciBwYXRoID0gdXJpLnN1YnN0cihwcm9qZWN0SWQubGVuZ3Ro
KTsKKyAgICBpZiAocGF0aC5sZW5ndGggJiYgcGF0aFswXSA9PT0gIi8iKQorICAgICAgICBwYXRo
ID0gcGF0aC5zdWJzdHIoMSk7CisgICAgcmV0dXJuIHBhdGg7Cit9CisKIFdlYkluc3BlY3Rvci5V
SVNvdXJjZUNvZGUucHJvdG90eXBlID0gewogICAgIC8qKgogICAgICAqIEByZXR1cm4ge3N0cmlu
Z30KQEAgLTEwMyw3ICsxMzQsNyBAQCBXZWJJbnNwZWN0b3IuVUlTb3VyY2VDb2RlLnByb3RvdHlw
ZSA9IHsKICAgICAgKi8KICAgICB1cmk6IGZ1bmN0aW9uKCkKICAgICB7Ci0gICAgICAgIHJldHVy
biB0aGlzLl9wYXRoOworICAgICAgICByZXR1cm4gV2ViSW5zcGVjdG9yLlVJU291cmNlQ29kZS51
cmkodGhpcy5fcHJvamVjdC5pZCgpLCB0aGlzLl9wYXRoKTsKICAgICB9LAogCiAgICAgLyoqCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1dvcmtzcGFjZS5q
cyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvV29ya3NwYWNlLmpzCmluZGV4
IDcwMDI2MjMwOTU1OTc0MzFlZjAzNTZkMTg3MmQ4M2JiYjU3Y2QyYTMuLjdjOTk2ODBhNThiM2Jj
OGZlZjI1YTIzNjViZTQzNDc0YWQ0ZWJhZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9mcm9udC1lbmQvV29ya3NwYWNlLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9mcm9udC1lbmQvV29ya3NwYWNlLmpzCkBAIC0xODcsNyArMTg3LDcgQEAgV2ViSW5zcGVj
dG9yLlByb2plY3QucHJvdG90eXBlID0gewogICAgIF9maWxlQWRkZWQ6IGZ1bmN0aW9uKGV2ZW50
KQogICAgIHsKICAgICAgICAgdmFyIGZpbGVEZXNjcmlwdG9yID0gLyoqIEB0eXBlIHtXZWJJbnNw
ZWN0b3IuRmlsZURlc2NyaXB0b3J9ICovIChldmVudC5kYXRhKTsKLSAgICAgICAgdmFyIHVpU291
cmNlQ29kZSA9IHRoaXMudWlTb3VyY2VDb2RlRm9yVVJJKGZpbGVEZXNjcmlwdG9yLnBhdGgpOwor
ICAgICAgICB2YXIgdWlTb3VyY2VDb2RlID0gdGhpcy51aVNvdXJjZUNvZGUoZmlsZURlc2NyaXB0
b3IucGF0aCk7CiAgICAgICAgIGlmICh1aVNvdXJjZUNvZGUpIHsKICAgICAgICAgICAgIC8vIEZJ
WE1FOiBJbXBsZW1lbnQKICAgICAgICAgICAgIHJldHVybjsKQEAgLTIwMSw3ICsyMDEsNyBAQCBX
ZWJJbnNwZWN0b3IuUHJvamVjdC5wcm90b3R5cGUgPSB7CiAgICAgX2ZpbGVSZW1vdmVkOiBmdW5j
dGlvbihldmVudCkKICAgICB7CiAgICAgICAgIHZhciBwYXRoID0gLyoqIEB0eXBlIHtzdHJpbmd9
ICovIChldmVudC5kYXRhKTsKLSAgICAgICAgdmFyIHVpU291cmNlQ29kZSA9IHRoaXMudWlTb3Vy
Y2VDb2RlRm9yVVJJKHBhdGgpOworICAgICAgICB2YXIgdWlTb3VyY2VDb2RlID0gdGhpcy51aVNv
dXJjZUNvZGUocGF0aCk7CiAgICAgICAgIGlmICghdWlTb3VyY2VDb2RlKQogICAgICAgICAgICAg
cmV0dXJuOwogICAgICAgICBkZWxldGUgdGhpcy5fdWlTb3VyY2VDb2Rlc1t1aVNvdXJjZUNvZGUu
cGF0aCgpXTsKQEAgLTI0Myw3ICsyNDMsMTAgQEAgV2ViSW5zcGVjdG9yLlByb2plY3QucHJvdG90
eXBlID0gewogICAgICAqLwogICAgIHVpU291cmNlQ29kZUZvclVSSTogZnVuY3Rpb24odXJpKQog
ICAgIHsKLSAgICAgICAgcmV0dXJuIHRoaXMudWlTb3VyY2VDb2RlKHVyaSk7CisgICAgICAgIHZh
ciBwYXRoID0gV2ViSW5zcGVjdG9yLlVJU291cmNlQ29kZS5wYXRoKHRoaXMuaWQoKSwgdXJpKTsK
KyAgICAgICAgaWYgKHR5cGVvZiBwYXRoICE9PSAic3RyaW5nIikKKyAgICAgICAgICAgIHJldHVy
biBudWxsOworICAgICAgICByZXR1cm4gdGhpcy5fdWlTb3VyY2VDb2Rlc1twYXRoXTsKICAgICB9
LAogCiAgICAgLyoqCkBAIC0yOTUsNyArMjk4LDYgQEAgV2ViSW5zcGVjdG9yLlByb2plY3QucHJv
dG90eXBlID0gewogV2ViSW5zcGVjdG9yLnByb2plY3RUeXBlcyA9IHsKICAgICBEZWJ1Z2dlcjog
ImRlYnVnZ2VyIiwKICAgICBMaXZlRWRpdDogImxpdmVlZGl0IiwKLSAgICBDb21waWxlcjogImNv
bXBpbGVyIiwKICAgICBOZXR3b3JrOiAibmV0d29yayIsCiAgICAgU25pcHBldHM6ICJzbmlwcGV0
cyIsCiAgICAgRmlsZVN5c3RlbTogImZpbGVzeXN0ZW0iCkBAIC00NDEsMTkgKzQ0Myw2IEBAIFdl
Ykluc3BlY3Rvci5Xb3Jrc3BhY2UucHJvdG90eXBlID0gewogICAgICAgICByZXR1cm4gcmVzdWx0
OwogICAgIH0sCiAKLSAgICAvKioKLSAgICAgKiBAcmV0dXJuIHs/V2ViSW5zcGVjdG9yLlByb2pl
Y3R9Ci0gICAgICovCi0gICAgcHJvamVjdEZvclVJU291cmNlQ29kZTogZnVuY3Rpb24odWlTb3Vy
Y2VDb2RlKQotICAgIHsKLSAgICAgICAgZm9yICh2YXIgcHJvamVjdElkIGluIHRoaXMuX3Byb2pl
Y3RzKSB7Ci0gICAgICAgICAgICB2YXIgcHJvamVjdCA9IHRoaXMuX3Byb2plY3RzW3Byb2plY3RJ
ZF07Ci0gICAgICAgICAgICBpZiAocHJvamVjdC51aVNvdXJjZUNvZGVGb3JVUkkodWlTb3VyY2VD
b2RlLnVyaSgpKSkKLSAgICAgICAgICAgICAgICByZXR1cm4gcHJvamVjdDsKLSAgICAgICAgfQot
ICAgICAgICByZXR1cm4gbnVsbDsKLSAgICB9LAotCiAgICAgX19wcm90b19fOiBXZWJJbnNwZWN0
b3IuT2JqZWN0LnByb3RvdHlwZQogfQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggOWJmNDhkOTZlMTY4ZGUxNWY0M2I2ZWY0
MmMwODkzZmY4ODUxYmRhNy4uNTlhMjk4NWI3N2E4ZWM1ZTFjYWIxY2Y2NjUzOGMyYzI2NDdiZmZh
MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0No
YW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDEzLTAyLTE1ICBWc2V2b2xvZCBWbGFzb3YgIDx2
c2V2aWtAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6IENyZWF0ZSBzZXBh
cmF0ZSBwcm9qZWN0IGZvciBlYWNoIGRvbWFpbiBmb3IgVUlTb3VyY2VDb2RlIGJhc2VkIG9uIGJy
b3dzZXIgcmVzb3VyY2VzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTA5NjkxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgKiBpbnNwZWN0b3IvZGVidWdnZXIvbGl2ZS1lZGl0LWJyZWFrcG9pbnRzLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiBpbnNwZWN0b3IvZGVidWdnZXIvbGl2ZS1lZGl0LWJyZWFrcG9p
bnRzLmh0bWw6CisgICAgICAgICogaW5zcGVjdG9yL3Vpc291cmNlY29kZS1yZXZpc2lvbnMuaHRt
bDoKKwogMjAxMy0wMi0xNSAgQW5kcmV3IFdpbHNvbiAgPGF0d2lsc29uQGNocm9taXVtLm9yZz4K
IAogICAgICAgICBVbnJldmlld2VkIGNocm9taXVtIGV4cGVjdGF0aW9ucyB1cGRhdGUgZm9yIHIx
NDI5NTUuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvbGl2ZS1l
ZGl0LWJyZWFrcG9pbnRzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1
Z2dlci9saXZlLWVkaXQtYnJlYWtwb2ludHMtZXhwZWN0ZWQudHh0CmluZGV4IGE2OWI4YTZmZjdk
NmI3ZTFlZGRlYzM3OTQ1NWQxZmJhYTBjM2RlOWYuLmFlMWU2OTdjM2QzMjgyMTBjZjhkMmJhYzY4
YTcxNDI4NTA0ZTYyMDUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dl
ci9saXZlLWVkaXQtYnJlYWtwb2ludHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2lu
c3BlY3Rvci9kZWJ1Z2dlci9saXZlLWVkaXQtYnJlYWtwb2ludHMtZXhwZWN0ZWQudHh0CkBAIC05
LDcgKzksNyBAQCBTZXR0aW5nIGJyZWFrcG9pbnQ6CiAgICAgRHVtcGluZyBicmVha3BvaW50IHN0
b3JhZ2UKICAgICAgICAgZWRpdC1tZS1icmVha3BvaW50cy5qczoyLCBlbmFibGVkOnRydWUKICAg
ICBEdW1waW5nIGJyZWFrcG9pbnQgbG9jYXRpb25zCi0gICAgICAgIHVybDogZWRpdC1tZS1icmVh
a3BvaW50cy5qcywgbGluZU51bWJlcjogMiwgcHJvamVjdCBuYW1lOiBuZXR3b3JrCisgICAgICAg
IHVybDogZWRpdC1tZS1icmVha3BvaW50cy5qcywgbGluZU51bWJlcjogMiwgcHJvamVjdCB0eXBl
OiBuZXR3b3JrLCBwcm9qZWN0IGlkOiBmaWxlOi8vCiBFZGl0aW5nIHNvdXJjZToKICAgICBUZXh0
RWRpdG9yLnJlbW92ZUJyZWFrcG9pbnQobGluZU51bWJlciA9IDIpCiAgICAgVGV4dEVkaXRvci5h
ZGRCcmVha3BvaW50KGxpbmVOdW1iZXIgPSAyLCBkaXNhYmxlZCA9IHRydWUpCkBAIC0xNyw3ICsx
Nyw3IEBAIEVkaXRpbmcgc291cmNlOgogICAgIER1bXBpbmcgYnJlYWtwb2ludCBzdG9yYWdlCiAg
ICAgICAgIGVkaXQtbWUtYnJlYWtwb2ludHMuanM6MiwgZW5hYmxlZDp0cnVlCiAgICAgRHVtcGlu
ZyBicmVha3BvaW50IGxvY2F0aW9ucwotICAgICAgICB1cmw6IGVkaXQtbWUtYnJlYWtwb2ludHMu
anMsIGxpbmVOdW1iZXI6IDIsIHByb2plY3QgbmFtZTogZGVidWdnZXIKKyAgICAgICAgdXJsOiBl
ZGl0LW1lLWJyZWFrcG9pbnRzLmpzLCBsaW5lTnVtYmVyOiAyLCBwcm9qZWN0IHR5cGU6IGRlYnVn
Z2VyLCBwcm9qZWN0IGlkOiBkZWJ1Z2dlcjpmaWxlOi8vCiBVbmRvaW5nIHNvdXJjZSBlZGl0aW5n
OgogICAgIE9yaWdpbmFsVGV4dEVkaXRvci5yZW1vdmVCcmVha3BvaW50KGxpbmVOdW1iZXIgPSAy
KQogICAgIFRleHRFZGl0b3IucmVtb3ZlQnJlYWtwb2ludChsaW5lTnVtYmVyID0gMikKQEAgLTI2
LDcgKzI2LDcgQEAgVW5kb2luZyBzb3VyY2UgZWRpdGluZzoKICAgICBEdW1waW5nIGJyZWFrcG9p
bnQgc3RvcmFnZQogICAgICAgICBlZGl0LW1lLWJyZWFrcG9pbnRzLmpzOjIsIGVuYWJsZWQ6dHJ1
ZQogICAgIER1bXBpbmcgYnJlYWtwb2ludCBsb2NhdGlvbnMKLSAgICAgICAgdXJsOiBlZGl0LW1l
LWJyZWFrcG9pbnRzLmpzLCBsaW5lTnVtYmVyOiAyLCBwcm9qZWN0IG5hbWU6IG5ldHdvcmsKKyAg
ICAgICAgdXJsOiBlZGl0LW1lLWJyZWFrcG9pbnRzLmpzLCBsaW5lTnVtYmVyOiAyLCBwcm9qZWN0
IHR5cGU6IG5ldHdvcmssIHByb2plY3QgaWQ6IGZpbGU6Ly8KIEZpbmFsbHkgcmVtb3ZpbmcgYnJl
YWtwb2ludDoKICAgICBUZXh0RWRpdG9yLnJlbW92ZUJyZWFrcG9pbnQobGluZU51bWJlciA9IDIp
CiAgICAgRHVtcGluZyBicmVha3BvaW50IHN0b3JhZ2UKQEAgLTM4LDcgKzM4LDcgQEAgU2V0dGlu
ZyBicmVha3BvaW50OgogICAgIER1bXBpbmcgYnJlYWtwb2ludCBzdG9yYWdlCiAgICAgICAgIGVk
aXQtbWUtYnJlYWtwb2ludHMuanM6MiwgZW5hYmxlZDp0cnVlCiAgICAgRHVtcGluZyBicmVha3Bv
aW50IGxvY2F0aW9ucwotICAgICAgICB1cmw6IGVkaXQtbWUtYnJlYWtwb2ludHMuanMsIGxpbmVO
dW1iZXI6IDIsIHByb2plY3QgbmFtZTogbmV0d29yaworICAgICAgICB1cmw6IGVkaXQtbWUtYnJl
YWtwb2ludHMuanMsIGxpbmVOdW1iZXI6IDIsIHByb2plY3QgdHlwZTogbmV0d29yaywgcHJvamVj
dCBpZDogZmlsZTovLwogRWRpdGluZyBzb3VyY2U6CiAgICAgT3JpZ2luYWxUZXh0RWRpdG9yLmFk
ZEJyZWFrcG9pbnQobGluZU51bWJlciA9IDIsIGRpc2FibGVkID0gZmFsc2UpCiAgICAgVGV4dEVk
aXRvci5yZW1vdmVCcmVha3BvaW50KGxpbmVOdW1iZXIgPSAyKQpAQCAtNDYsNyArNDYsNyBAQCBF
ZGl0aW5nIHNvdXJjZToKICAgICBEdW1waW5nIGJyZWFrcG9pbnQgc3RvcmFnZQogICAgICAgICBl
ZGl0LW1lLWJyZWFrcG9pbnRzLmpzOjIsIGVuYWJsZWQ6dHJ1ZQogICAgIER1bXBpbmcgYnJlYWtw
b2ludCBsb2NhdGlvbnMKLSAgICAgICAgdXJsOiBlZGl0LW1lLWJyZWFrcG9pbnRzLmpzLCBsaW5l
TnVtYmVyOiAyLCBwcm9qZWN0IG5hbWU6IGRlYnVnZ2VyCisgICAgICAgIHVybDogZWRpdC1tZS1i
cmVha3BvaW50cy5qcywgbGluZU51bWJlcjogMiwgcHJvamVjdCB0eXBlOiBkZWJ1Z2dlciwgcHJv
amVjdCBpZDogZGVidWdnZXI6ZmlsZTovLwogQ29tbWl0dGluZyBlZGl0ZWQgc291cmNlOgogICAg
IE9yaWdpbmFsVGV4dEVkaXRvci5yZW1vdmVCcmVha3BvaW50KGxpbmVOdW1iZXIgPSAyKQogICAg
IFRleHRFZGl0b3IucmVtb3ZlQnJlYWtwb2ludChsaW5lTnVtYmVyID0gMikKQEAgLTU1LDcgKzU1
LDcgQEAgQ29tbWl0dGluZyBlZGl0ZWQgc291cmNlOgogICAgIER1bXBpbmcgYnJlYWtwb2ludCBz
dG9yYWdlCiAgICAgICAgIGVkaXQtbWUtYnJlYWtwb2ludHMuanM6MiwgZW5hYmxlZDp0cnVlCiAg
ICAgRHVtcGluZyBicmVha3BvaW50IGxvY2F0aW9ucwotICAgICAgICB1cmw6IGVkaXQtbWUtYnJl
YWtwb2ludHMuanMsIGxpbmVOdW1iZXI6IDIsIHByb2plY3QgbmFtZTogbmV0d29yaworICAgICAg
ICB1cmw6IGVkaXQtbWUtYnJlYWtwb2ludHMuanMsIGxpbmVOdW1iZXI6IDIsIHByb2plY3QgdHlw
ZTogbmV0d29yaywgcHJvamVjdCBpZDogZmlsZTovLwogRmluYWxseSByZW1vdmluZyBicmVha3Bv
aW50OgogICAgIFRleHRFZGl0b3IucmVtb3ZlQnJlYWtwb2ludChsaW5lTnVtYmVyID0gMikKICAg
ICBEdW1waW5nIGJyZWFrcG9pbnQgc3RvcmFnZQpAQCAtNjcsNyArNjcsNyBAQCBTZXR0aW5nIGJy
ZWFrcG9pbnQ6CiAgICAgRHVtcGluZyBicmVha3BvaW50IHN0b3JhZ2UKICAgICAgICAgZWRpdC1t
ZS1icmVha3BvaW50cy5qczoyLCBlbmFibGVkOnRydWUKICAgICBEdW1waW5nIGJyZWFrcG9pbnQg
bG9jYXRpb25zCi0gICAgICAgIHVybDogZWRpdC1tZS1icmVha3BvaW50cy5qcywgbGluZU51bWJl
cjogMiwgcHJvamVjdCBuYW1lOiBuZXR3b3JrCisgICAgICAgIHVybDogZWRpdC1tZS1icmVha3Bv
aW50cy5qcywgbGluZU51bWJlcjogMiwgcHJvamVjdCB0eXBlOiBuZXR3b3JrLCBwcm9qZWN0IGlk
OiBmaWxlOi8vCiBFZGl0aW5nIHNvdXJjZToKICAgICBPcmlnaW5hbFRleHRFZGl0b3IuYWRkQnJl
YWtwb2ludChsaW5lTnVtYmVyID0gMiwgZGlzYWJsZWQgPSBmYWxzZSkKICAgICBUZXh0RWRpdG9y
LnJlbW92ZUJyZWFrcG9pbnQobGluZU51bWJlciA9IDIpCkBAIC03NSwxNyArNzUsMTcgQEAgRWRp
dGluZyBzb3VyY2U6CiAgICAgRHVtcGluZyBicmVha3BvaW50IHN0b3JhZ2UKICAgICAgICAgZWRp
dC1tZS1icmVha3BvaW50cy5qczoyLCBlbmFibGVkOnRydWUKICAgICBEdW1waW5nIGJyZWFrcG9p
bnQgbG9jYXRpb25zCi0gICAgICAgIHVybDogZWRpdC1tZS1icmVha3BvaW50cy5qcywgbGluZU51
bWJlcjogMiwgcHJvamVjdCBuYW1lOiBkZWJ1Z2dlcgorICAgICAgICB1cmw6IGVkaXQtbWUtYnJl
YWtwb2ludHMuanMsIGxpbmVOdW1iZXI6IDIsIHByb2plY3QgdHlwZTogZGVidWdnZXIsIHByb2pl
Y3QgaWQ6IGRlYnVnZ2VyOmZpbGU6Ly8KIENvbW1pdHRpbmcgZWRpdGVkIHNvdXJjZToKICAgICBE
dW1waW5nIGJyZWFrcG9pbnQgc3RvcmFnZQogICAgICAgICBlZGl0LW1lLWJyZWFrcG9pbnRzLmpz
OjIsIGVuYWJsZWQ6dHJ1ZQogICAgIER1bXBpbmcgYnJlYWtwb2ludCBsb2NhdGlvbnMKLSAgICAg
ICAgdXJsOiBlZGl0LW1lLWJyZWFrcG9pbnRzLmpzLCBsaW5lTnVtYmVyOiAyLCBwcm9qZWN0IG5h
bWU6IGRlYnVnZ2VyCisgICAgICAgIHVybDogZWRpdC1tZS1icmVha3BvaW50cy5qcywgbGluZU51
bWJlcjogMiwgcHJvamVjdCB0eXBlOiBkZWJ1Z2dlciwgcHJvamVjdCBpZDogZGVidWdnZXI6Zmls
ZTovLwogRWRpdGluZyBzb3VyY2UgYWdhaW4gc28gdGhhdCBsaXZlIGVkaXQgY291bGQgc3VjY2Vl
ZDoKICAgICBEdW1waW5nIGJyZWFrcG9pbnQgc3RvcmFnZQogICAgICAgICBlZGl0LW1lLWJyZWFr
cG9pbnRzLmpzOjIsIGVuYWJsZWQ6dHJ1ZQogICAgIER1bXBpbmcgYnJlYWtwb2ludCBsb2NhdGlv
bnMKLSAgICAgICAgdXJsOiBlZGl0LW1lLWJyZWFrcG9pbnRzLmpzLCBsaW5lTnVtYmVyOiAyLCBw
cm9qZWN0IG5hbWU6IGRlYnVnZ2VyCisgICAgICAgIHVybDogZWRpdC1tZS1icmVha3BvaW50cy5q
cywgbGluZU51bWJlcjogMiwgcHJvamVjdCB0eXBlOiBkZWJ1Z2dlciwgcHJvamVjdCBpZDogZGVi
dWdnZXI6ZmlsZTovLwogQ29tbWl0dGluZyBlZGl0ZWQgc291cmNlIGFnYWluOgogICAgIE9yaWdp
bmFsVGV4dEVkaXRvci5yZW1vdmVCcmVha3BvaW50KGxpbmVOdW1iZXIgPSAyKQogICAgIFRleHRF
ZGl0b3IucmVtb3ZlQnJlYWtwb2ludChsaW5lTnVtYmVyID0gMikKQEAgLTk0LDcgKzk0LDcgQEAg
Q29tbWl0dGluZyBlZGl0ZWQgc291cmNlIGFnYWluOgogICAgIER1bXBpbmcgYnJlYWtwb2ludCBz
dG9yYWdlCiAgICAgICAgIGVkaXQtbWUtYnJlYWtwb2ludHMuanM6MiwgZW5hYmxlZDp0cnVlCiAg
ICAgRHVtcGluZyBicmVha3BvaW50IGxvY2F0aW9ucwotICAgICAgICB1cmw6IGVkaXQtbWUtYnJl
YWtwb2ludHMuanMsIGxpbmVOdW1iZXI6IDIsIHByb2plY3QgbmFtZTogbmV0d29yaworICAgICAg
ICB1cmw6IGVkaXQtbWUtYnJlYWtwb2ludHMuanMsIGxpbmVOdW1iZXI6IDIsIHByb2plY3QgdHlw
ZTogbmV0d29yaywgcHJvamVjdCBpZDogZmlsZTovLwogRmluYWxseSByZW1vdmluZyBicmVha3Bv
aW50OgogICAgIFRleHRFZGl0b3IucmVtb3ZlQnJlYWtwb2ludChsaW5lTnVtYmVyID0gMikKICAg
ICBEdW1waW5nIGJyZWFrcG9pbnQgc3RvcmFnZQpAQCAtMTA2LDcgKzEwNiw3IEBAIFNldHRpbmcg
YnJlYWtwb2ludDoKICAgICBEdW1waW5nIGJyZWFrcG9pbnQgc3RvcmFnZQogICAgICAgICBlZGl0
LW1lLWJyZWFrcG9pbnRzLmpzOjIsIGVuYWJsZWQ6dHJ1ZQogICAgIER1bXBpbmcgYnJlYWtwb2lu
dCBsb2NhdGlvbnMKLSAgICAgICAgdXJsOiBlZGl0LW1lLWJyZWFrcG9pbnRzLmpzLCBsaW5lTnVt
YmVyOiAyLCBwcm9qZWN0IG5hbWU6IG5ldHdvcmsKKyAgICAgICAgdXJsOiBlZGl0LW1lLWJyZWFr
cG9pbnRzLmpzLCBsaW5lTnVtYmVyOiAyLCBwcm9qZWN0IHR5cGU6IG5ldHdvcmssIHByb2plY3Qg
aWQ6IGZpbGU6Ly8KIEVkaXRpbmcgc291cmNlOgogICAgIE9yaWdpbmFsVGV4dEVkaXRvci5hZGRC
cmVha3BvaW50KGxpbmVOdW1iZXIgPSAyLCBkaXNhYmxlZCA9IGZhbHNlKQogICAgIFRleHRFZGl0
b3IucmVtb3ZlQnJlYWtwb2ludChsaW5lTnVtYmVyID0gMikKQEAgLTExNCwxNyArMTE0LDE3IEBA
IEVkaXRpbmcgc291cmNlOgogICAgIER1bXBpbmcgYnJlYWtwb2ludCBzdG9yYWdlCiAgICAgICAg
IGVkaXQtbWUtYnJlYWtwb2ludHMuanM6MiwgZW5hYmxlZDp0cnVlCiAgICAgRHVtcGluZyBicmVh
a3BvaW50IGxvY2F0aW9ucwotICAgICAgICB1cmw6IGVkaXQtbWUtYnJlYWtwb2ludHMuanMsIGxp
bmVOdW1iZXI6IDIsIHByb2plY3QgbmFtZTogZGVidWdnZXIKKyAgICAgICAgdXJsOiBlZGl0LW1l
LWJyZWFrcG9pbnRzLmpzLCBsaW5lTnVtYmVyOiAyLCBwcm9qZWN0IHR5cGU6IGRlYnVnZ2VyLCBw
cm9qZWN0IGlkOiBkZWJ1Z2dlcjpmaWxlOi8vCiBDb21taXR0aW5nIGVkaXRlZCBzb3VyY2U6CiAg
ICAgRHVtcGluZyBicmVha3BvaW50IHN0b3JhZ2UKICAgICAgICAgZWRpdC1tZS1icmVha3BvaW50
cy5qczoyLCBlbmFibGVkOnRydWUKICAgICBEdW1waW5nIGJyZWFrcG9pbnQgbG9jYXRpb25zCi0g
ICAgICAgIHVybDogZWRpdC1tZS1icmVha3BvaW50cy5qcywgbGluZU51bWJlcjogMiwgcHJvamVj
dCBuYW1lOiBkZWJ1Z2dlcgorICAgICAgICB1cmw6IGVkaXQtbWUtYnJlYWtwb2ludHMuanMsIGxp
bmVOdW1iZXI6IDIsIHByb2plY3QgdHlwZTogZGVidWdnZXIsIHByb2plY3QgaWQ6IGRlYnVnZ2Vy
OmZpbGU6Ly8KIFVuZG9pbmcgc291cmNlIGVkaXRpbmc6CiAgICAgRHVtcGluZyBicmVha3BvaW50
IHN0b3JhZ2UKICAgICAgICAgZWRpdC1tZS1icmVha3BvaW50cy5qczoyLCBlbmFibGVkOnRydWUK
ICAgICBEdW1waW5nIGJyZWFrcG9pbnQgbG9jYXRpb25zCi0gICAgICAgIHVybDogZWRpdC1tZS1i
cmVha3BvaW50cy5qcywgbGluZU51bWJlcjogMiwgcHJvamVjdCBuYW1lOiBkZWJ1Z2dlcgorICAg
ICAgICB1cmw6IGVkaXQtbWUtYnJlYWtwb2ludHMuanMsIGxpbmVOdW1iZXI6IDIsIHByb2plY3Qg
dHlwZTogZGVidWdnZXIsIHByb2plY3QgaWQ6IGRlYnVnZ2VyOmZpbGU6Ly8KIENvbW1pdHRpbmcg
ZWRpdGVkIHNvdXJjZSBhZ2FpbjoKICAgICBPcmlnaW5hbFRleHRFZGl0b3IucmVtb3ZlQnJlYWtw
b2ludChsaW5lTnVtYmVyID0gMikKICAgICBUZXh0RWRpdG9yLnJlbW92ZUJyZWFrcG9pbnQobGlu
ZU51bWJlciA9IDIpCkBAIC0xMzMsNyArMTMzLDcgQEAgQ29tbWl0dGluZyBlZGl0ZWQgc291cmNl
IGFnYWluOgogICAgIER1bXBpbmcgYnJlYWtwb2ludCBzdG9yYWdlCiAgICAgICAgIGVkaXQtbWUt
YnJlYWtwb2ludHMuanM6MiwgZW5hYmxlZDp0cnVlCiAgICAgRHVtcGluZyBicmVha3BvaW50IGxv
Y2F0aW9ucwotICAgICAgICB1cmw6IGVkaXQtbWUtYnJlYWtwb2ludHMuanMsIGxpbmVOdW1iZXI6
IDIsIHByb2plY3QgbmFtZTogbmV0d29yaworICAgICAgICB1cmw6IGVkaXQtbWUtYnJlYWtwb2lu
dHMuanMsIGxpbmVOdW1iZXI6IDIsIHByb2plY3QgdHlwZTogbmV0d29yaywgcHJvamVjdCBpZDog
ZmlsZTovLwogRmluYWxseSByZW1vdmluZyBicmVha3BvaW50OgogICAgIFRleHRFZGl0b3IucmVt
b3ZlQnJlYWtwb2ludChsaW5lTnVtYmVyID0gMikKICAgICBEdW1waW5nIGJyZWFrcG9pbnQgc3Rv
cmFnZQpAQCAtMTQ4LDE1ICsxNDgsMTUgQEAgU2V0dGluZyBicmVha3BvaW50OgogICAgIFRleHRF
ZGl0b3IuYWRkQnJlYWtwb2ludChsaW5lTnVtYmVyID0gMiwgZGlzYWJsZWQgPSBmYWxzZSkKICAg
ICBEdW1waW5nIGJyZWFrcG9pbnQgc3RvcmFnZQogICAgIER1bXBpbmcgYnJlYWtwb2ludCBsb2Nh
dGlvbnMKLSAgICAgICAgdXJsOiAsIGxpbmVOdW1iZXI6IDIsIHByb2plY3QgbmFtZTogZGVidWdn
ZXIKKyAgICAgICAgdXJsOiAsIGxpbmVOdW1iZXI6IDIsIHByb2plY3QgdHlwZTogZGVidWdnZXIs
IHByb2plY3QgaWQ6IGRlYnVnZ2VyOgogRWRpdGluZyBzb3VyY2U6CiAgICAgRHVtcGluZyBicmVh
a3BvaW50IHN0b3JhZ2UKICAgICBEdW1waW5nIGJyZWFrcG9pbnQgbG9jYXRpb25zCi0gICAgICAg
IHVybDogLCBsaW5lTnVtYmVyOiAyLCBwcm9qZWN0IG5hbWU6IGRlYnVnZ2VyCisgICAgICAgIHVy
bDogLCBsaW5lTnVtYmVyOiAyLCBwcm9qZWN0IHR5cGU6IGRlYnVnZ2VyLCBwcm9qZWN0IGlkOiBk
ZWJ1Z2dlcjoKIFVuZG9pbmcgc291cmNlIGVkaXRpbmc6CiAgICAgRHVtcGluZyBicmVha3BvaW50
IHN0b3JhZ2UKICAgICBEdW1waW5nIGJyZWFrcG9pbnQgbG9jYXRpb25zCi0gICAgICAgIHVybDog
LCBsaW5lTnVtYmVyOiAyLCBwcm9qZWN0IG5hbWU6IGRlYnVnZ2VyCisgICAgICAgIHVybDogLCBs
aW5lTnVtYmVyOiAyLCBwcm9qZWN0IHR5cGU6IGRlYnVnZ2VyLCBwcm9qZWN0IGlkOiBkZWJ1Z2dl
cjoKIEZpbmFsbHkgcmVtb3ZpbmcgYnJlYWtwb2ludDoKICAgICBUZXh0RWRpdG9yLnJlbW92ZUJy
ZWFrcG9pbnQobGluZU51bWJlciA9IDIpCiAgICAgRHVtcGluZyBicmVha3BvaW50IHN0b3JhZ2UK
QEAgLTE3MSwxNSArMTcxLDE1IEBAIFNldHRpbmcgYnJlYWtwb2ludDoKICAgICBUZXh0RWRpdG9y
LmFkZEJyZWFrcG9pbnQobGluZU51bWJlciA9IDIsIGRpc2FibGVkID0gZmFsc2UpCiAgICAgRHVt
cGluZyBicmVha3BvaW50IHN0b3JhZ2UKICAgICBEdW1waW5nIGJyZWFrcG9pbnQgbG9jYXRpb25z
Ci0gICAgICAgIHVybDogLCBsaW5lTnVtYmVyOiAyLCBwcm9qZWN0IG5hbWU6IGRlYnVnZ2VyCisg
ICAgICAgIHVybDogLCBsaW5lTnVtYmVyOiAyLCBwcm9qZWN0IHR5cGU6IGRlYnVnZ2VyLCBwcm9q
ZWN0IGlkOiBkZWJ1Z2dlcjoKIEVkaXRpbmcgc291cmNlOgogICAgIER1bXBpbmcgYnJlYWtwb2lu
dCBzdG9yYWdlCiAgICAgRHVtcGluZyBicmVha3BvaW50IGxvY2F0aW9ucwotICAgICAgICB1cmw6
ICwgbGluZU51bWJlcjogMiwgcHJvamVjdCBuYW1lOiBkZWJ1Z2dlcgorICAgICAgICB1cmw6ICwg
bGluZU51bWJlcjogMiwgcHJvamVjdCB0eXBlOiBkZWJ1Z2dlciwgcHJvamVjdCBpZDogZGVidWdn
ZXI6CiBVbmRvaW5nIHNvdXJjZSBlZGl0aW5nOgogICAgIER1bXBpbmcgYnJlYWtwb2ludCBzdG9y
YWdlCiAgICAgRHVtcGluZyBicmVha3BvaW50IGxvY2F0aW9ucwotICAgICAgICB1cmw6ICwgbGlu
ZU51bWJlcjogMiwgcHJvamVjdCBuYW1lOiBkZWJ1Z2dlcgorICAgICAgICB1cmw6ICwgbGluZU51
bWJlcjogMiwgcHJvamVjdCB0eXBlOiBkZWJ1Z2dlciwgcHJvamVjdCBpZDogZGVidWdnZXI6CiBG
aW5hbGx5IHJlbW92aW5nIGJyZWFrcG9pbnQ6CiAgICAgVGV4dEVkaXRvci5yZW1vdmVCcmVha3Bv
aW50KGxpbmVOdW1iZXIgPSAyKQogICAgIER1bXBpbmcgYnJlYWtwb2ludCBzdG9yYWdlCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvbGl2ZS1lZGl0LWJyZWFrcG9p
bnRzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvbGl2ZS1lZGl0LWJyZWFr
cG9pbnRzLmh0bWwKaW5kZXggYTBlYmMwYzMzNWM5ZjQ0ZGIzNDBmM2JmNjM5ZWVmMTJmOGE2N2Y3
Ny4uNzVjMWEwMDBmMzg4ZTk1MzllMDYwYzM0YjM4YTI4YWMxODQ4NWZkOSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL2xpdmUtZWRpdC1icmVha3BvaW50cy5odG1s
CisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9saXZlLWVkaXQtYnJlYWtwb2lu
dHMuaHRtbApAQCAtMzksOCArMzksOCBAQCBmdW5jdGlvbiB0ZXN0KCkKICAgICAgICAgZm9yICh2
YXIgaSA9IDA7IGkgPCBsb2NhdGlvbnMubGVuZ3RoOyArK2kpIHsKICAgICAgICAgICAgIHZhciB1
aUxvY2F0aW9uID0gbG9jYXRpb25zW2ldLnVpTG9jYXRpb247CiAgICAgICAgICAgICB2YXIgdWlT
b3VyY2VDb2RlID0gdWlMb2NhdGlvbi51aVNvdXJjZUNvZGU7Ci0gICAgICAgICAgICB2YXIgcHJv
amVjdCA9IFdlYkluc3BlY3Rvci53b3Jrc3BhY2UucHJvamVjdEZvclVJU291cmNlQ29kZSh1aVNv
dXJjZUNvZGUpOwotICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQoIiAgICAgICAg
dXJsOiAiICsgcGF0aFRvRmlsZU5hbWUodWlTb3VyY2VDb2RlLm9yaWdpblVSTCgpKSArICIsIGxp
bmVOdW1iZXI6ICIgKyB1aUxvY2F0aW9uLmxpbmVOdW1iZXIgKyAiLCBwcm9qZWN0IG5hbWU6ICIg
KyBwcm9qZWN0LmlkKCkpOworICAgICAgICAgICAgdmFyIHByb2plY3QgPSB1aVNvdXJjZUNvZGUu
cHJvamVjdCgpOworICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQoIiAgICAgICAg
dXJsOiAiICsgcGF0aFRvRmlsZU5hbWUodWlTb3VyY2VDb2RlLm9yaWdpblVSTCgpKSArICIsIGxp
bmVOdW1iZXI6ICIgKyB1aUxvY2F0aW9uLmxpbmVOdW1iZXIgKyAiLCBwcm9qZWN0IHR5cGU6ICIg
KyBwcm9qZWN0LnR5cGUoKSArICIsIHByb2plY3QgaWQ6ICIgKyBwcm9qZWN0LmlkKCkpOwogICAg
ICAgICB9CiAgICAgfQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvdWlzb3Vy
Y2Vjb2RlLXJldmlzaW9ucy5odG1sIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3Vpc291cmNlY29k
ZS1yZXZpc2lvbnMuaHRtbAppbmRleCA1YTZiYWM3Yjk0NWI0ZjBlMTIxNDg0ZjU4NDE0NzY1ZDM5
MGY2YzNlLi42N2NhZGM2MjU1OWVjN2Y4NWVmYmUyNGFkNTgzYTBlMTUzNjNjMDhjIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvdWlzb3VyY2Vjb2RlLXJldmlzaW9ucy5odG1sCisr
KyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci91aXNvdXJjZWNvZGUtcmV2aXNpb25zLmh0bWwKQEAg
LTksNyArOSw3IEBAIGZ1bmN0aW9uIHRlc3QoKQogICAgIGZ1bmN0aW9uIGNyZWF0ZU1vY2tQcm9q
ZWN0KCkKICAgICB7CiAgICAgICAgIHZhciB3b3Jrc3BhY2UgPSBuZXcgV2ViSW5zcGVjdG9yLldv
cmtzcGFjZSgpOwotICAgICAgICB2YXIgcHJvamVjdERlbGVnYXRlID0gbmV3IFdlYkluc3BlY3Rv
ci5TaW1wbGVQcm9qZWN0RGVsZWdhdGUoV2ViSW5zcGVjdG9yLnByb2plY3RUeXBlcy5OZXR3b3Jr
KTsKKyAgICAgICAgdmFyIHByb2plY3REZWxlZ2F0ZSA9IG5ldyBXZWJJbnNwZWN0b3IuU2ltcGxl
UHJvamVjdERlbGVnYXRlKCIiLCBXZWJJbnNwZWN0b3IucHJvamVjdFR5cGVzLk5ldHdvcmspOwog
ICAgICAgICB2YXIgcHJvamVjdCA9IHdvcmtzcGFjZS5hZGRQcm9qZWN0KHByb2plY3REZWxlZ2F0
ZSk7CiAgICAgICAgIHByb2plY3QucmVxdWVzdEZpbGVDb250ZW50ID0gZnVuY3Rpb24odXJpLCBj
YWxsYmFjaykKICAgICAgICAgewo=
</data>

          </attachment>
      

    </bug>

</bugzilla>