<?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>73562</bug_id>
          
          <creation_ts>2011-12-01 07:37:37 -0800</creation_ts>
          <short_desc>Web Inspector: extract static part of the InspectorBackend from the generator.</short_desc>
          <delta_ts>2011-12-01 08:21:09 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Web Inspector (Deprecated)</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Pavel Feldman">pfeldman</reporter>
          <assigned_to name="Pavel Feldman">pfeldman</assigned_to>
          <cc>apavlov</cc>
    
    <cc>bweinstein</cc>
    
    <cc>joepeck</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>rik</cc>
    
    <cc>timothy</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>512756</commentid>
    <comment_count>0</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2011-12-01 07:37:37 -0800</bug_when>
    <thetext>We should only generate the mapping between the command parameters and slots, rest of the backend is static.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>512759</commentid>
    <comment_count>1</comment_count>
      <attachid>117419</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2011-12-01 07:43:09 -0800</bug_when>
    <thetext>Created attachment 117419
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>512760</commentid>
    <comment_count>2</comment_count>
      <attachid>117420</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2011-12-01 07:43:52 -0800</bug_when>
    <thetext>Created attachment 117420
[Generated InspectorBackendStub.js]</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>512766</commentid>
    <comment_count>3</comment_count>
      <attachid>117419</attachid>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2011-12-01 07:54:02 -0800</bug_when>
    <thetext>Comment on attachment 117419
Patch

You need to update the &quot;Copy Inspector Resources&quot; and &quot;Streamline Inspector Source&quot; build phases in the WebCore Xcode project which has references to &quot;InspectorBackendStub.js&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>512768</commentid>
    <comment_count>4</comment_count>
      <attachid>117419</attachid>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2011-12-01 07:56:01 -0800</bug_when>
    <thetext>Comment on attachment 117419
Patch

I guess you might not need to update the Xcode project, I see the InspectorBackendStub.js file is still there.

But I have been meaning to say, InspectorBackendStub.js isn&apos;t the best name for the file. They arn&apos;t stubs.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>512778</commentid>
    <comment_count>5</comment_count>
      <attachid>117419</attachid>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2011-12-01 08:11:55 -0800</bug_when>
    <thetext>Comment on attachment 117419
Patch

InspectorBackendCommands.js weould be a good name now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>512780</commentid>
    <comment_count>6</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2011-12-01 08:15:04 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; (From update of attachment 117419 [details])
&gt; InspectorBackendCommands.js weould be a good name now.

I do remember your concern and am going to resolve it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>512784</commentid>
    <comment_count>7</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2011-12-01 08:21:09 -0800</bug_when>
    <thetext>Committed r101670: &lt;http://trac.webkit.org/changeset/101670&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>117419</attachid>
            <date>2011-12-01 07:43:09 -0800</date>
            <delta_ts>2011-12-01 08:11:55 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-73562-20111201194307.patch</filename>
            <type>text/plain</type>
            <size>31061</size>
            <attacher name="Pavel Feldman">pfeldman</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTAxNjYzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzQ5ZTI3NTQ1ZGQwYjFi
NWNhNTEzNDMzNjA5ZDhhZjllMzlkMTQ3MC4uZTJiYjgyM2QyMmE5YjA3OGQ2ZDRjMjc2ZTIxNzgw
NDFlNjJmNDUwMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM4IEBACisyMDExLTEyLTAxICBQYXZl
bCBGZWxkbWFuICA8cGZlbGRtYW5AZ29vZ2xlLmNvbT4KKworICAgICAgICBXZWIgSW5zcGVjdG9y
OiBleHRyYWN0IHN0YXRpYyBwYXJ0IG9mIHRoZSBJbnNwZWN0b3JCYWNrZW5kIGZyb20gdGhlIGdl
bmVyYXRvci4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTczNTYyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
V2Ugc2hvdWxkIG9ubHkgZ2VuZXJhdGUgdGhlIG1hcHBpbmcgYmV0d2VlbiB0aGUgY29tbWFuZCBw
YXJhbWV0ZXJzIGFuZCBzbG90cywKKyAgICAgICAgcmVzdCBvZiB0aGUgYmFja2VuZCBpcyBzdGF0
aWMuCisKKyAgICAgICAgKiBXZWJDb3JlLmd5cGk6CisgICAgICAgICogV2ViQ29yZS52Y3Byb2ov
V2ViQ29yZS52Y3Byb2o6CisgICAgICAgICogaW5zcGVjdG9yL0NvZGVHZW5lcmF0b3JJbnNwZWN0
b3IucHk6CisgICAgICAgIChHZW5lcmF0b3IuZ28pOgorICAgICAgICAoR2VuZXJhdG9yLnByb2Nl
c3NfZXZlbnQpOgorICAgICAgICAoR2VuZXJhdG9yLnByb2Nlc3NfY29tbWFuZCk6CisgICAgICAg
ICogaW5zcGVjdG9yL2NvbXBpbGUtZnJvbnQtZW5kLnNoOgorICAgICAgICAqIGluc3BlY3Rvci9m
cm9udC1lbmQvSW5zcGVjdG9yQmFja2VuZC5qczogQWRkZWQuCisgICAgICAgIChJbnNwZWN0b3JC
YWNrZW5kQ2xhc3MpOgorICAgICAgICAoSW5zcGVjdG9yQmFja2VuZENsYXNzLnByb3RvdHlwZS5y
ZWdpc3RlckNvbW1hbmQpOgorICAgICAgICAoSW5zcGVjdG9yQmFja2VuZENsYXNzLnByb3RvdHlw
ZS5yZWdpc3RlckV2ZW50KToKKyAgICAgICAgKEluc3BlY3RvckJhY2tlbmRDbGFzcy5wcm90b3R5
cGUuX2ludm9rZSk6CisgICAgICAgIChJbnNwZWN0b3JCYWNrZW5kQ2xhc3MucHJvdG90eXBlLl9z
ZW5kTWVzc2FnZVRvQmFja2VuZCk6CisgICAgICAgIChJbnNwZWN0b3JCYWNrZW5kQ2xhc3MucHJv
dG90eXBlLl93cmFwQ2FsbGJhY2tBbmRTZW5kTWVzc2FnZU9iamVjdCk6CisgICAgICAgIChJbnNw
ZWN0b3JCYWNrZW5kQ2xhc3MucHJvdG90eXBlLnNlbmRNZXNzYWdlT2JqZWN0VG9CYWNrZW5kKToK
KyAgICAgICAgKEluc3BlY3RvckJhY2tlbmRDbGFzcy5wcm90b3R5cGUucmVnaXN0ZXJEb21haW5E
aXNwYXRjaGVyKToKKyAgICAgICAgKEluc3BlY3RvckJhY2tlbmRDbGFzcy5wcm90b3R5cGUuZGlz
cGF0Y2gubWVzc2FnZU9iamVjdC5lcnJvci5fX3Byb3RvX18uZ2V0RGVzY3JpcHRpb24pOgorICAg
ICAgICAoSW5zcGVjdG9yQmFja2VuZENsYXNzLnByb3RvdHlwZS5kaXNwYXRjaC5tZXNzYWdlT2Jq
ZWN0LmVycm9yLl9fcHJvdG9fXy50b1N0cmluZyk6CisgICAgICAgIChJbnNwZWN0b3JCYWNrZW5k
Q2xhc3MucHJvdG90eXBlLmRpc3BhdGNoLm1lc3NhZ2VPYmplY3QuZXJyb3IuX19wcm90b19fLmdl
dE1lc3NhZ2UpOgorICAgICAgICAoSW5zcGVjdG9yQmFja2VuZENsYXNzLnByb3RvdHlwZS5kaXNw
YXRjaCk6CisgICAgICAgIChJbnNwZWN0b3JCYWNrZW5kQ2xhc3MucHJvdG90eXBlLnJlcG9ydFBy
b3RvY29sRXJyb3IpOgorICAgICAgICAoSW5zcGVjdG9yQmFja2VuZENsYXNzLnByb3RvdHlwZS5y
dW5BZnRlclBlbmRpbmdEaXNwYXRjaGVzKToKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5k
L1dlYktpdC5xcmM6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9pbnNwZWN0b3IuaHRt
bDoKKwogMjAxMS0xMi0wMSAgUGF2ZWwgRmVsZG1hbiAgPHBmZWxkbWFuQGNocm9taXVtLm9yZz4K
IAogICAgICAgICBXZWIgSW5zcGVjdG9yOiByZXN0b3JlIFdlYktpdDIgU2FmYXJpIG1lbnUgaXRl
bXMgYWZ0ZXIgY2FwYWJpbGl0aWVzIHJlZmFjdG9yaW5nIHJlZ3Jlc3Npb24uCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5
cGkKaW5kZXggNzg3YTIzYzY3Yjk0MWRlOTllMGY4YTg1NTZkM2QwZDA3ZTlmODM1My4uNzEyNDI1
MTU2YzVkNjUyZjkwNDI1NGZhOWY5MzU5MTllNGE5ZTY4OSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvV2ViQ29yZS5neXBpCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQpAQCAt
NjM2Nyw2ICs2MzY3LDcgQEAKICAgICAgICAgICAgICdpbnNwZWN0b3IvZnJvbnQtZW5kL0hlYXBT
bmFwc2hvdFdvcmtlckRpc3BhdGNoZXIuanMnLAogICAgICAgICAgICAgJ2luc3BlY3Rvci9mcm9u
dC1lbmQvSGVscFNjcmVlbi5qcycsCiAgICAgICAgICAgICAnaW5zcGVjdG9yL2Zyb250LWVuZC9J
bWFnZVZpZXcuanMnLAorICAgICAgICAgICAgJ2luc3BlY3Rvci9mcm9udC1lbmQvSW5zcGVjdG9y
QmFja2VuZC5qcycsCiAgICAgICAgICAgICAnaW5zcGVjdG9yL2Zyb250LWVuZC9JbnNwZWN0b3JG
cm9udGVuZEFQSS5qcycsCiAgICAgICAgICAgICAnaW5zcGVjdG9yL2Zyb250LWVuZC9JbnNwZWN0
b3JGcm9udGVuZEhvc3RTdHViLmpzJywKICAgICAgICAgICAgICdpbnNwZWN0b3IvZnJvbnQtZW5k
L0luc3BlY3RvclZpZXcuanMnLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52
Y3Byb2ovV2ViQ29yZS52Y3Byb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJD
b3JlLnZjcHJvagppbmRleCA1Nzg1MzM1YWQxOGI2MTI0NDEyZjM4NWEyMDdiOWNlZDJlZTdiYzYw
Li44ZjY4MjRjNjJhN2ZkYTZjNTY5ODBjYzg2MjRkZDFlMDJkMGI5ZGYxIDEwMDc1NQotLS0gYS9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagpAQCAtNjkxNDUsNiArNjkxNDUs
MTAgQEAKIAkJCQkJPgogCQkJCTwvRmlsZT4KIAkJCQk8RmlsZQorCQkJCQlSZWxhdGl2ZVBhdGg9
Ii4uXGluc3BlY3Rvclxmcm9udC1lbmRcSW5zcGVjdG9yQmFja2VuZC5qcyIKKwkJCQkJPgorCQkJ
CTwvRmlsZT4KKwkJCQk8RmlsZQogCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGluc3BlY3Rvclxmcm9u
dC1lbmRcSW5zcGVjdG9yRnJvbnRlbmRBUEkuanMiCiAJCQkJCT4KIAkJCQk8L0ZpbGU+CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvQ29kZUdlbmVyYXRvckluc3BlY3Rvci5w
eSBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9Db2RlR2VuZXJhdG9ySW5zcGVjdG9yLnB5Cmlu
ZGV4IDBiODNmNmVjOTMwMjNmZmIxNzRkODAyMjNiZjFjZmM3N2U0MmMzNjQuLjVkMTM4ZjRjNzc3
NWFkYzliNTQ0Y2UzOTJkMGVkMzNhZWNkZGIzYWIgMTAwNzU1Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9Db2RlR2VuZXJhdG9ySW5zcGVjdG9yLnB5CisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9Db2RlR2VuZXJhdG9ySW5zcGVjdG9yLnB5CkBAIC05MzUsMjQ3ICs5MzUsMTAg
QEAgJG1ldGhvZHMKIC8vIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEg
QlNELXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKIC8vIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZp
bGUuCiAKLQotSW5zcGVjdG9yQmFja2VuZFN0dWIgPSBmdW5jdGlvbigpCi17Ci0gICAgdGhpcy5f
bGFzdENhbGxiYWNrSWQgPSAxOwotICAgIHRoaXMuX3BlbmRpbmdSZXNwb25zZXNDb3VudCA9IDA7
Ci0gICAgdGhpcy5fY2FsbGJhY2tzID0ge307Ci0gICAgdGhpcy5fZG9tYWluRGlzcGF0Y2hlcnMg
PSB7fTsKLSAgICB0aGlzLl9ldmVudEFyZ3MgPSB7fTsKLSAgICB0aGlzLl9yZXBseUFyZ3MgPSB7
fTsKLSRkZWxlZ2F0ZXMkZXZlbnRBcmdzJHJlcGx5QXJncyRkb21haW5EaXNwYXRjaGVyc30KLQot
SW5zcGVjdG9yQmFja2VuZFN0dWIucHJvdG90eXBlID0gewotICAgIGR1bXBJbnNwZWN0b3JUaW1l
U3RhdHM6IDAsCi0gICAgZHVtcEluc3BlY3RvclByb3RvY29sTWVzc2FnZXM6IDAsCi0KLSAgICBf
d3JhcDogZnVuY3Rpb24oY2FsbGJhY2spCi0gICAgewotICAgICAgICB2YXIgY2FsbGJhY2tJZCA9
IHRoaXMuX2xhc3RDYWxsYmFja0lkKys7Ci0gICAgICAgIHRoaXMuX2NhbGxiYWNrc1tjYWxsYmFj
a0lkXSA9IGNhbGxiYWNrIHx8IGZ1bmN0aW9uKCkge307Ci0gICAgICAgIHJldHVybiBjYWxsYmFj
a0lkOwotICAgIH0sCi0KLSAgICBfcmVnaXN0ZXJEZWxlZ2F0ZTogZnVuY3Rpb24ocmVxdWVzdFN0
cmluZykKLSAgICB7Ci0gICAgICAgIHZhciBkb21haW5BbmRGdW5jdGlvbiA9IEpTT04ucGFyc2Uo
cmVxdWVzdFN0cmluZykubWV0aG9kLnNwbGl0KCIuIik7Ci0gICAgICAgIHZhciBhZ2VudE5hbWUg
PSBkb21haW5BbmRGdW5jdGlvblswXSArICJBZ2VudCI7Ci0gICAgICAgIGlmICghd2luZG93W2Fn
ZW50TmFtZV0pCi0gICAgICAgICAgICB3aW5kb3dbYWdlbnROYW1lXSA9IHt9OwotICAgICAgICB3
aW5kb3dbYWdlbnROYW1lXVtkb21haW5BbmRGdW5jdGlvblsxXV0gPSB0aGlzLl9zZW5kTWVzc2Fn
ZVRvQmFja2VuZC5iaW5kKHRoaXMsIHJlcXVlc3RTdHJpbmcpOwotICAgICAgICB3aW5kb3dbYWdl
bnROYW1lXVtkb21haW5BbmRGdW5jdGlvblsxXV1bImludm9rZSJdID0gdGhpcy5faW52b2tlLmJp
bmQodGhpcywgcmVxdWVzdFN0cmluZykKLSAgICB9LAotCi0gICAgX2ludm9rZTogZnVuY3Rpb24o
cmVxdWVzdFN0cmluZywgYXJncywgY2FsbGJhY2spCi0gICAgewotICAgICAgICB2YXIgcmVxdWVz
dCA9IEpTT04ucGFyc2UocmVxdWVzdFN0cmluZyk7Ci0gICAgICAgIHJlcXVlc3QucGFyYW1zID0g
YXJnczsKLSAgICAgICAgdGhpcy5fd3JhcENhbGxiYWNrQW5kU2VuZE1lc3NhZ2VPYmplY3QocmVx
dWVzdCwgY2FsbGJhY2spOwotICAgIH0sCi0KLSAgICBfc2VuZE1lc3NhZ2VUb0JhY2tlbmQ6IGZ1
bmN0aW9uKCkKLSAgICB7Ci0gICAgICAgIHZhciBhcmdzID0gQXJyYXkucHJvdG90eXBlLnNsaWNl
LmNhbGwoYXJndW1lbnRzKTsKLSAgICAgICAgdmFyIHJlcXVlc3QgPSBKU09OLnBhcnNlKGFyZ3Mu
c2hpZnQoKSk7Ci0gICAgICAgIHZhciBjYWxsYmFjayA9IChhcmdzLmxlbmd0aCAmJiB0eXBlb2Yg
YXJnc1thcmdzLmxlbmd0aCAtIDFdID09PSAiZnVuY3Rpb24iKSA/IGFyZ3MucG9wKCkgOiAwOwot
ICAgICAgICB2YXIgZG9tYWluQW5kTWV0aG9kID0gcmVxdWVzdC5tZXRob2Quc3BsaXQoIi4iKTsK
LSAgICAgICAgdmFyIGFnZW50TWV0aG9kID0gZG9tYWluQW5kTWV0aG9kWzBdICsgIkFnZW50LiIg
KyBkb21haW5BbmRNZXRob2RbMV07Ci0KLSAgICAgICAgdmFyIGhhc1BhcmFtcyA9IGZhbHNlOwot
ICAgICAgICBpZiAocmVxdWVzdC5wYXJhbXMpIHsKLSAgICAgICAgICAgIGZvciAodmFyIGtleSBp
biByZXF1ZXN0LnBhcmFtcykgewotICAgICAgICAgICAgICAgIHZhciB0eXBlTmFtZSA9IHJlcXVl
c3QucGFyYW1zW2tleV0udHlwZTsKLSAgICAgICAgICAgICAgICB2YXIgb3B0aW9uYWxGbGFnID0g
cmVxdWVzdC5wYXJhbXNba2V5XS5vcHRpb25hbDsKLQotICAgICAgICAgICAgICAgIGlmIChhcmdz
Lmxlbmd0aCA9PT0gMCAmJiAhb3B0aW9uYWxGbGFnKSB7Ci0gICAgICAgICAgICAgICAgICAgIGNv
bnNvbGUuZXJyb3IoIlByb3RvY29sIEVycm9yOiBJbnZhbGlkIG51bWJlciBvZiBhcmd1bWVudHMg
Zm9yIG1ldGhvZCAnIiArIGFnZW50TWV0aG9kICsgIicgY2FsbC4gSXQgbXVzdCBoYXZlIHRoZSBu
ZXh0IGFyZ3VtZW50cyAnIiArIEpTT04uc3RyaW5naWZ5KHJlcXVlc3QucGFyYW1zKSArICInLiIp
OwotICAgICAgICAgICAgICAgICAgICByZXR1cm47Ci0gICAgICAgICAgICAgICAgfQotCi0gICAg
ICAgICAgICAgICAgdmFyIHZhbHVlID0gYXJncy5zaGlmdCgpOwotICAgICAgICAgICAgICAgIGlm
IChvcHRpb25hbEZsYWcgJiYgdHlwZW9mIHZhbHVlID09PSAidW5kZWZpbmVkIikgewotICAgICAg
ICAgICAgICAgICAgICBkZWxldGUgcmVxdWVzdC5wYXJhbXNba2V5XTsKLSAgICAgICAgICAgICAg
ICAgICAgY29udGludWU7Ci0gICAgICAgICAgICAgICAgfQotCi0gICAgICAgICAgICAgICAgaWYg
KHR5cGVvZiB2YWx1ZSAhPT0gdHlwZU5hbWUpIHsKLSAgICAgICAgICAgICAgICAgICAgY29uc29s
ZS5lcnJvcigiUHJvdG9jb2wgRXJyb3I6IEludmFsaWQgdHlwZSBvZiBhcmd1bWVudCAnIiArIGtl
eSArICInIGZvciBtZXRob2QgJyIgKyBhZ2VudE1ldGhvZCArICInIGNhbGwuIEl0IG11c3QgYmUg
JyIgKyB0eXBlTmFtZSArICInIGJ1dCBpdCBpcyAnIiArIHR5cGVvZiB2YWx1ZSArICInLiIpOwot
ICAgICAgICAgICAgICAgICAgICByZXR1cm47Ci0gICAgICAgICAgICAgICAgfQotCi0gICAgICAg
ICAgICAgICAgcmVxdWVzdC5wYXJhbXNba2V5XSA9IHZhbHVlOwotICAgICAgICAgICAgICAgIGhh
c1BhcmFtcyA9IHRydWU7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBpZiAoIWhhc1BhcmFt
cykKLSAgICAgICAgICAgICAgICBkZWxldGUgcmVxdWVzdC5wYXJhbXM7Ci0gICAgICAgIH0KLQot
ICAgICAgICBpZiAoYXJncy5sZW5ndGggPT09IDEgJiYgIWNhbGxiYWNrKSB7Ci0gICAgICAgICAg
ICBpZiAodHlwZW9mIGFyZ3NbMF0gIT09ICJ1bmRlZmluZWQiKSB7Ci0gICAgICAgICAgICAgICAg
Y29uc29sZS5lcnJvcigiUHJvdG9jb2wgRXJyb3I6IE9wdGlvbmFsIGNhbGxiYWNrIGFyZ3VtZW50
IGZvciBtZXRob2QgJyIgKyBhZ2VudE1ldGhvZCArICInIGNhbGwgbXVzdCBiZSBhIGZ1bmN0aW9u
IGJ1dCBpdHMgdHlwZSBpcyAnIiArIHR5cGVvZiBhcmdzWzBdICsgIicuIik7Ci0gICAgICAgICAg
ICAgICAgcmV0dXJuOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0KLSAgICAgICAgdGhpcy5f
d3JhcENhbGxiYWNrQW5kU2VuZE1lc3NhZ2VPYmplY3QocmVxdWVzdCwgY2FsbGJhY2spOwotICAg
IH0sCi0KLSAgICBfd3JhcENhbGxiYWNrQW5kU2VuZE1lc3NhZ2VPYmplY3Q6IGZ1bmN0aW9uKG1l
c3NhZ2VPYmplY3QsIGNhbGxiYWNrKQotICAgIHsKLSAgICAgICAgbWVzc2FnZU9iamVjdC5pZCA9
IHRoaXMuX3dyYXAoY2FsbGJhY2spOwotCi0gICAgICAgIHZhciB3cmFwcGVkQ2FsbGJhY2sgPSB0
aGlzLl9jYWxsYmFja3NbbWVzc2FnZU9iamVjdC5pZF07Ci0gICAgICAgIHdyYXBwZWRDYWxsYmFj
ay5tZXRob2ROYW1lID0gbWVzc2FnZU9iamVjdC5tZXRob2Q7Ci0KLSAgICAgICAgaWYgKHRoaXMu
ZHVtcEluc3BlY3RvclRpbWVTdGF0cykKLSAgICAgICAgICAgIHdyYXBwZWRDYWxsYmFjay5zZW5k
UmVxdWVzdFRpbWUgPSBEYXRlLm5vdygpOwotCi0gICAgICAgIGlmICh0aGlzLmR1bXBJbnNwZWN0
b3JQcm90b2NvbE1lc3NhZ2VzKQotICAgICAgICAgICAgY29uc29sZS5sb2coImZyb250ZW5kOiAi
ICsgSlNPTi5zdHJpbmdpZnkobWVzc2FnZU9iamVjdCkpOwotCi0gICAgICAgICsrdGhpcy5fcGVu
ZGluZ1Jlc3BvbnNlc0NvdW50OwotICAgICAgICB0aGlzLnNlbmRNZXNzYWdlT2JqZWN0VG9CYWNr
ZW5kKG1lc3NhZ2VPYmplY3QpOwotICAgIH0sCi0KLSAgICBzZW5kTWVzc2FnZU9iamVjdFRvQmFj
a2VuZDogZnVuY3Rpb24obWVzc2FnZU9iamVjdCkKLSAgICB7Ci0gICAgICAgIGNvbnNvbGUudGlt
ZVN0YW1wKG1lc3NhZ2VPYmplY3QubWV0aG9kKTsKLSAgICAgICAgdmFyIG1lc3NhZ2UgPSBKU09O
LnN0cmluZ2lmeShtZXNzYWdlT2JqZWN0KTsKLSAgICAgICAgSW5zcGVjdG9yRnJvbnRlbmRIb3N0
LnNlbmRNZXNzYWdlVG9CYWNrZW5kKG1lc3NhZ2UpOwotICAgIH0sCi0KLSAgICBfcmVnaXN0ZXJE
b21haW5EaXNwYXRjaGVyOiBmdW5jdGlvbihkb21haW4sIGRpc3BhdGNoZXIpCi0gICAgewotICAg
ICAgICB0aGlzLl9kb21haW5EaXNwYXRjaGVyc1tkb21haW5dID0gZGlzcGF0Y2hlcjsKLSAgICB9
LAotCi0gICAgZGlzcGF0Y2g6IGZ1bmN0aW9uKG1lc3NhZ2UpCi0gICAgewotICAgICAgICBpZiAo
dGhpcy5kdW1wSW5zcGVjdG9yUHJvdG9jb2xNZXNzYWdlcykKLSAgICAgICAgICAgIGNvbnNvbGUu
bG9nKCJiYWNrZW5kOiAiICsgKCh0eXBlb2YgbWVzc2FnZSA9PT0gInN0cmluZyIpID8gbWVzc2Fn
ZSA6IEpTT04uc3RyaW5naWZ5KG1lc3NhZ2UpKSk7Ci0KLSAgICAgICAgdmFyIG1lc3NhZ2VPYmpl
Y3QgPSAodHlwZW9mIG1lc3NhZ2UgPT09ICJzdHJpbmciKSA/IEpTT04ucGFyc2UobWVzc2FnZSkg
OiBtZXNzYWdlOwotCi0gICAgICAgIGlmICgiaWQiIGluIG1lc3NhZ2VPYmplY3QpIHsgLy8ganVz
dCBhIHJlc3BvbnNlIGZvciBzb21lIHJlcXVlc3QKLSAgICAgICAgICAgIGlmIChtZXNzYWdlT2Jq
ZWN0LmVycm9yKSB7Ci0gICAgICAgICAgICAgICAgbWVzc2FnZU9iamVjdC5lcnJvci5fX3Byb3Rv
X18gPSB7Ci0gICAgICAgICAgICAgICAgICAgIGdldERlc2NyaXB0aW9uOiBmdW5jdGlvbigpCi0g
ICAgICAgICAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIHN3aXRjaCh0aGlz
LmNvZGUpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIC0zMjcwMDogcmV0dXJu
ICJQYXJzZSBlcnJvciI7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAtMzI2MDA6
IHJldHVybiAiSW52YWxpZCBSZXF1ZXN0IjsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBj
YXNlIC0zMjYwMTogcmV0dXJuICJNZXRob2Qgbm90IGZvdW5kIjsKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjYXNlIC0zMjYwMjogcmV0dXJuICJJbnZhbGlkIHBhcmFtcyI7Ci0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgY2FzZSAtMzI2MDM6IHJldHVybiAiSW50ZXJuYWwgZXJyb3Ii
OzsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIC0zMjAwMDogcmV0dXJuICJTZXJ2
ZXIgZXJyb3IiOwotICAgICAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgICAg
ICB9LAotCi0gICAgICAgICAgICAgICAgICAgIHRvU3RyaW5nOiBmdW5jdGlvbigpCi0gICAgICAg
ICAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIHZhciBkZXNjcmlwdGlvbiA9
IlVua25vd24gZXJyb3IgY29kZSI7Ci0gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhp
cy5nZXREZXNjcmlwdGlvbigpICsgIigiICsgdGhpcy5jb2RlICsgIik6ICIgKyB0aGlzLm1lc3Nh
Z2UgKyAiLiIgKyAodGhpcy5kYXRhID8gIiAiICsgdGhpcy5kYXRhLmpvaW4oIiAiKSA6ICIiKTsK
LSAgICAgICAgICAgICAgICAgICAgfSwKLQotICAgICAgICAgICAgICAgICAgICBnZXRNZXNzYWdl
OiBmdW5jdGlvbigpCi0gICAgICAgICAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAgICAg
ICAgIHJldHVybiB0aGlzLm1lc3NhZ2U7Ci0gICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAg
ICAgICAgICB9Ci0KLSAgICAgICAgICAgICAgICBpZiAobWVzc2FnZU9iamVjdC5lcnJvci5jb2Rl
ICE9PSAtMzIwMDApCi0gICAgICAgICAgICAgICAgICAgIHRoaXMucmVwb3J0UHJvdG9jb2xFcnJv
cihtZXNzYWdlT2JqZWN0KTsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgdmFyIGNhbGxi
YWNrID0gdGhpcy5fY2FsbGJhY2tzW21lc3NhZ2VPYmplY3QuaWRdOwotICAgICAgICAgICAgaWYg
KGNhbGxiYWNrKSB7Ci0gICAgICAgICAgICAgICAgdmFyIGFyZ3VtZW50c0FycmF5ID0gW107Ci0g
ICAgICAgICAgICAgICAgaWYgKG1lc3NhZ2VPYmplY3QucmVzdWx0KSB7Ci0gICAgICAgICAgICAg
ICAgICAgIHZhciBwYXJhbU5hbWVzID0gdGhpcy5fcmVwbHlBcmdzW2NhbGxiYWNrLm1ldGhvZE5h
bWVdOwotICAgICAgICAgICAgICAgICAgICBpZiAocGFyYW1OYW1lcykgewotICAgICAgICAgICAg
ICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBwYXJhbU5hbWVzLmxlbmd0aDsgKytpKQot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyZ3VtZW50c0FycmF5LnB1c2gobWVzc2FnZU9i
amVjdC5yZXN1bHRbcGFyYW1OYW1lc1tpXV0pOwotICAgICAgICAgICAgICAgICAgICB9Ci0gICAg
ICAgICAgICAgICAgfQotCi0gICAgICAgICAgICAgICAgdmFyIHByb2Nlc3NpbmdTdGFydFRpbWU7
Ci0gICAgICAgICAgICAgICAgaWYgKHRoaXMuZHVtcEluc3BlY3RvclRpbWVTdGF0cyAmJiBjYWxs
YmFjay5tZXRob2ROYW1lKQotICAgICAgICAgICAgICAgICAgICBwcm9jZXNzaW5nU3RhcnRUaW1l
ID0gRGF0ZS5ub3coKTsKLQotICAgICAgICAgICAgICAgIGFyZ3VtZW50c0FycmF5LnVuc2hpZnQo
bWVzc2FnZU9iamVjdC5lcnJvcik7Ci0gICAgICAgICAgICAgICAgY2FsbGJhY2suYXBwbHkobnVs
bCwgYXJndW1lbnRzQXJyYXkpOwotICAgICAgICAgICAgICAgIC0tdGhpcy5fcGVuZGluZ1Jlc3Bv
bnNlc0NvdW50OwotICAgICAgICAgICAgICAgIGRlbGV0ZSB0aGlzLl9jYWxsYmFja3NbbWVzc2Fn
ZU9iamVjdC5pZF07Ci0KLSAgICAgICAgICAgICAgICBpZiAodGhpcy5kdW1wSW5zcGVjdG9yVGlt
ZVN0YXRzICYmIGNhbGxiYWNrLm1ldGhvZE5hbWUpCi0gICAgICAgICAgICAgICAgICAgIGNvbnNv
bGUubG9nKCJ0aW1lLXN0YXRzOiAiICsgY2FsbGJhY2subWV0aG9kTmFtZSArICIgPSAiICsgKHBy
b2Nlc3NpbmdTdGFydFRpbWUgLSBjYWxsYmFjay5zZW5kUmVxdWVzdFRpbWUpICsgIiArICIgKyAo
RGF0ZS5ub3coKSAtIHByb2Nlc3NpbmdTdGFydFRpbWUpKTsKLSAgICAgICAgICAgIH0KLQotICAg
ICAgICAgICAgaWYgKHRoaXMuX3NjcmlwdHMgJiYgIXRoaXMuX3BlbmRpbmdSZXNwb25zZXNDb3Vu
dCkKLSAgICAgICAgICAgICAgICB0aGlzLnJ1bkFmdGVyUGVuZGluZ0Rpc3BhdGNoZXMoKTsKLQot
ICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgdmFyIG1l
dGhvZCA9IG1lc3NhZ2VPYmplY3QubWV0aG9kLnNwbGl0KCIuIik7Ci0gICAgICAgICAgICB2YXIg
ZG9tYWluTmFtZSA9IG1ldGhvZFswXTsKLSAgICAgICAgICAgIHZhciBmdW5jdGlvbk5hbWUgPSBt
ZXRob2RbMV07Ci0gICAgICAgICAgICBpZiAoIShkb21haW5OYW1lIGluIHRoaXMuX2RvbWFpbkRp
c3BhdGNoZXJzKSkgewotICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoIlByb3RvY29sIEVy
cm9yOiB0aGUgbWVzc2FnZSBpcyBmb3Igbm9uLWV4aXN0aW5nIGRvbWFpbiAnIiArIGRvbWFpbk5h
bWUgKyAiJyIpOwotICAgICAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgICAgIH0KLSAgICAg
ICAgICAgIHZhciBkaXNwYXRjaGVyID0gdGhpcy5fZG9tYWluRGlzcGF0Y2hlcnNbZG9tYWluTmFt
ZV07Ci0gICAgICAgICAgICBpZiAoIShmdW5jdGlvbk5hbWUgaW4gZGlzcGF0Y2hlcikpIHsKLSAg
ICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCJQcm90b2NvbCBFcnJvcjogQXR0ZW1wdGVkIHRv
IGRpc3BhdGNoIGFuIHVuaW1wbGVtZW50ZWQgbWV0aG9kICciICsgbWVzc2FnZU9iamVjdC5tZXRo
b2QgKyAiJyIpOwotICAgICAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgICAgIH0KLQotICAg
ICAgICAgICAgaWYgKCF0aGlzLl9ldmVudEFyZ3NbbWVzc2FnZU9iamVjdC5tZXRob2RdKSB7Ci0g
ICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcigiUHJvdG9jb2wgRXJyb3I6IEF0dGVtcHRlZCB0
byBkaXNwYXRjaCBhbiB1bnNwZWNpZmllZCBtZXRob2QgJyIgKyBtZXNzYWdlT2JqZWN0Lm1ldGhv
ZCArICInIik7Ci0gICAgICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICAgICAgfQotCi0gICAg
ICAgICAgICB2YXIgcGFyYW1zID0gW107Ci0gICAgICAgICAgICBpZiAobWVzc2FnZU9iamVjdC5w
YXJhbXMpIHsKLSAgICAgICAgICAgICAgICB2YXIgcGFyYW1OYW1lcyA9IHRoaXMuX2V2ZW50QXJn
c1ttZXNzYWdlT2JqZWN0Lm1ldGhvZF07Ci0gICAgICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7
IGkgPCBwYXJhbU5hbWVzLmxlbmd0aDsgKytpKQotICAgICAgICAgICAgICAgICAgICBwYXJhbXMu
cHVzaChtZXNzYWdlT2JqZWN0LnBhcmFtc1twYXJhbU5hbWVzW2ldXSk7Ci0gICAgICAgICAgICB9
Ci0KLSAgICAgICAgICAgIHZhciBwcm9jZXNzaW5nU3RhcnRUaW1lOwotICAgICAgICAgICAgaWYg
KHRoaXMuZHVtcEluc3BlY3RvclRpbWVTdGF0cykKLSAgICAgICAgICAgICAgICBwcm9jZXNzaW5n
U3RhcnRUaW1lID0gRGF0ZS5ub3coKTsKLQotICAgICAgICAgICAgZGlzcGF0Y2hlcltmdW5jdGlv
bk5hbWVdLmFwcGx5KGRpc3BhdGNoZXIsIHBhcmFtcyk7Ci0KLSAgICAgICAgICAgIGlmICh0aGlz
LmR1bXBJbnNwZWN0b3JUaW1lU3RhdHMpCi0gICAgICAgICAgICAgICAgY29uc29sZS5sb2coInRp
bWUtc3RhdHM6ICIgKyBtZXNzYWdlT2JqZWN0Lm1ldGhvZCArICIgPSAiICsgKERhdGUubm93KCkg
LSBwcm9jZXNzaW5nU3RhcnRUaW1lKSk7Ci0gICAgICAgIH0KLSAgICB9LAotCi0gICAgcmVwb3J0
UHJvdG9jb2xFcnJvcjogZnVuY3Rpb24obWVzc2FnZU9iamVjdCkKLSAgICB7Ci0gICAgICAgIGNv
bnNvbGUuZXJyb3IoIlJlcXVlc3Qgd2l0aCBpZCA9ICIgKyBtZXNzYWdlT2JqZWN0LmlkICsgIiBm
YWlsZWQuICIgKyBtZXNzYWdlT2JqZWN0LmVycm9yKTsKLSAgICB9LAotCi0gICAgcnVuQWZ0ZXJQ
ZW5kaW5nRGlzcGF0Y2hlczogZnVuY3Rpb24oc2NyaXB0KQotICAgIHsKLSAgICAgICAgaWYgKCF0
aGlzLl9zY3JpcHRzKQotICAgICAgICAgICAgdGhpcy5fc2NyaXB0cyA9IFtdOwotCi0gICAgICAg
IGlmIChzY3JpcHQpCi0gICAgICAgICAgICB0aGlzLl9zY3JpcHRzLnB1c2goc2NyaXB0KTsKLQot
ICAgICAgICBpZiAoIXRoaXMuX3BlbmRpbmdSZXNwb25zZXNDb3VudCkgewotICAgICAgICAgICAg
dmFyIHNjcmlwdHMgPSB0aGlzLl9zY3JpcHRzOwotICAgICAgICAgICAgdGhpcy5fc2NyaXB0cyA9
IFtdCi0gICAgICAgICAgICBmb3IgKHZhciBpZCA9IDA7IGlkIDwgc2NyaXB0cy5sZW5ndGg7ICsr
aWQpCi0gICAgICAgICAgICAgICAgIHNjcmlwdHNbaWRdLmNhbGwodGhpcyk7Ci0gICAgICAgIH0K
LSAgICB9Ci19Ci0KLUluc3BlY3RvckJhY2tlbmQgPSBuZXcgSW5zcGVjdG9yQmFja2VuZFN0dWIo
KTsiIiIpCiskZGVsZWdhdGVzCiskZXZlbnRBcmdzCiskcmVwbHlBcmdzJGRvbWFpbkRpc3BhdGNo
ZXJzCisiIiIpCiAKICAgICBwYXJhbV9jb250YWluZXJfYWNjZXNzX2NvZGUgPSAiIiIKICAgICBS
ZWZQdHI8SW5zcGVjdG9yT2JqZWN0PiBwYXJhbXNDb250YWluZXIgPSByZXF1ZXN0TWVzc2FnZU9i
amVjdC0+Z2V0T2JqZWN0KCJwYXJhbXMiKTsKQEAgLTEyMzksNyArMTAwMiw3IEBAIGNsYXNzIEdl
bmVyYXRvcjoKICAgICAgICAgICAgICAgICAgICAgR2VuZXJhdG9yLnByb2Nlc3NfY29tbWFuZChq
c29uX2NvbW1hbmQsIGRvbWFpbl9uYW1lLCBhZ2VudF9maWVsZF9uYW1lKQogCiAgICAgICAgICAg
ICBpZiBub3QgZG9tYWluX2RhdGEuc2tpcF9qc19iaW5kOgotICAgICAgICAgICAgICAgIEdlbmVy
YXRvci5iYWNrZW5kX2pzX2RvbWFpbl9kaXNwYXRjaGVyX2xpc3QuYXBwZW5kKCIgICAgdGhpcy5y
ZWdpc3RlciVzRGlzcGF0Y2hlciA9IHRoaXMuX3JlZ2lzdGVyRG9tYWluRGlzcGF0Y2hlci5iaW5k
KHRoaXMsIFwiJXNcIik7XG4iICUgKGRvbWFpbl9uYW1lLCBkb21haW5fbmFtZSkpCisgICAgICAg
ICAgICAgICAgR2VuZXJhdG9yLmJhY2tlbmRfanNfZG9tYWluX2Rpc3BhdGNoZXJfbGlzdC5hcHBl
bmQoIkluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXIlc0Rpc3BhdGNoZXIgPSBJbnNwZWN0b3JCYWNr
ZW5kLnJlZ2lzdGVyRG9tYWluRGlzcGF0Y2hlci5iaW5kKEluc3BlY3RvckJhY2tlbmQsIFwiJXNc
Iik7XG4iICUgKGRvbWFpbl9uYW1lLCBkb21haW5fbmFtZSkpCiAKICAgICAgICAgc29ydGVkX2pz
b25fZG9tYWlucyA9IGxpc3QoanNvbl9hcGlbImRvbWFpbnMiXSkKICAgICAgICAgc29ydGVkX2pz
b25fZG9tYWlucy5zb3J0KGtleT1sYW1iZGEgbzogb1siZG9tYWluIl0pCkBAIC0xMzAwLDcgKzEw
NjMsNyBAQCBjbGFzcyBHZW5lcmF0b3I6CiAgICAgICAgICAgICBwYXJhbWV0ZXJzPWpvaW4ocGFy
YW1ldGVyX2xpc3QsICIsICIpLAogICAgICAgICAgICAgY29kZT1qb2luKG1ldGhvZF9saW5lX2xp
c3QsICIiKSkpCiAKLSAgICAgICAgR2VuZXJhdG9yLmJhY2tlbmRfanNfZXZlbnRfbGlzdC5hcHBl
bmQoIiAgICB0aGlzLl9ldmVudEFyZ3NbXCIlcy4lc1wiXSA9IFslc107XG4iICUgKAorICAgICAg
ICBHZW5lcmF0b3IuYmFja2VuZF9qc19ldmVudF9saXN0LmFwcGVuZCgiSW5zcGVjdG9yQmFja2Vu
ZC5yZWdpc3RlckV2ZW50KFwiJXMuJXNcIiwgWyVzXSk7XG4iICUgKAogICAgICAgICAgICAgZG9t
YWluX25hbWUsIGV2ZW50X25hbWUsIGpvaW4oYmFja2VuZF9qc19ldmVudF9wYXJhbV9saXN0LCAi
LCAiKSkpCiAKICAgICBAc3RhdGljbWV0aG9kCkBAIC0xMzUxLDkgKzExMTQsMTAgQEAgY2xhc3Mg
R2VuZXJhdG9yOgogCiAgICAgICAgICAgICAgICAganNfcGFyYW1fbGlzdC5hcHBlbmQoanNfcGFy
YW1fdGV4dCkKIAotICAgICAgICAgICAganNfcGFyYW1ldGVyc190ZXh0ID0gIiwgXCJwYXJhbXNc
IjogeyIgKyBqb2luKGpzX3BhcmFtX2xpc3QsICIsICIpICsgIn0iCisgICAgICAgICAgICBqc19w
YXJhbWV0ZXJzX3RleHQgPSBqb2luKGpzX3BhcmFtX2xpc3QsICIsICIpCiAKICAgICAgICAgcmVz
cG9uc2VfY29va190ZXh0ID0gIiIKKyAgICAgICAganNfcmVwbHlfbGlzdCA9ICJbXSIKICAgICAg
ICAgaWYgInJldHVybnMiIGluIGpzb25fY29tbWFuZDoKICAgICAgICAgICAgIG1ldGhvZF9vdXRf
Y29kZSArPSAiXG4iCiAgICAgICAgICAgICBmb3IganNvbl9yZXR1cm4gaW4ganNvbl9jb21tYW5k
WyJyZXR1cm5zIl06CkBAIC0xMzc2LDggKzExNDAsNyBAQCBjbGFzcyBHZW5lcmF0b3I6CiAKICAg
ICAgICAgICAgICAgICBiYWNrZW5kX2pzX3JlcGx5X3BhcmFtX2xpc3QuYXBwZW5kKCJcIiVzXCIi
ICUganNvbl9yZXR1cm5fbmFtZSkKIAotICAgICAgICAgICAgR2VuZXJhdG9yLmJhY2tlbmRfanNf
cmVwbHlfbGlzdC5hcHBlbmQoIiAgICB0aGlzLl9yZXBseUFyZ3NbXCIlcy4lc1wiXSA9IFslc107
XG4iICUgKAotICAgICAgICAgICAgICAgIGRvbWFpbl9uYW1lLCBqc29uX2NvbW1hbmRfbmFtZSwg
am9pbihiYWNrZW5kX2pzX3JlcGx5X3BhcmFtX2xpc3QsICIsICIpKSkKKyAgICAgICAgICAgIGpz
X3JlcGx5X2xpc3QgPSAiWyVzXSIgJSBqb2luKGJhY2tlbmRfanNfcmVwbHlfcGFyYW1fbGlzdCwg
IiwgIikKIAogICAgICAgICAgICAgcmVzcG9uc2VfY29va190ZXh0ID0gIiAgICBpZiAoIXByb3Rv
Y29sRXJyb3JzLT5sZW5ndGgoKSAmJiAhZXJyb3IubGVuZ3RoKCkpIHtcbiVzICAgIH1cbiIgJSBq
b2luKHJlc3BvbnNlX2Nvb2tfbGlzdCwgIiIpCiAKQEAgLTEzOTEsNyArMTE1NCw3IEBAIGNsYXNz
IEdlbmVyYXRvcjoKICAgICAgICAgICAgIHJlc3BvbnNlQ29vaz1yZXNwb25zZV9jb29rX3RleHQp
KQogICAgICAgICBHZW5lcmF0b3IuYmFja2VuZF9tZXRob2RfbmFtZV9kZWNsYXJhdGlvbl9saXN0
LmFwcGVuZCgiICAgIFwiJXMuJXNcIiwiICUgKGRvbWFpbl9uYW1lLCBqc29uX2NvbW1hbmRfbmFt
ZSkpCiAKLSAgICAgICAgR2VuZXJhdG9yLmJhY2tlbmRfanNfaW5pdGlhbGl6ZXJfbGlzdC5hcHBl
bmQoIiAgICB0aGlzLl9yZWdpc3RlckRlbGVnYXRlKCd7XCJtZXRob2RcIjogXCIlcy4lc1wiJXMs
IFwiaWRcIjogMH0nKTtcbiIgJSAoZG9tYWluX25hbWUsIGpzb25fY29tbWFuZF9uYW1lLCBqc19w
YXJhbWV0ZXJzX3RleHQpKQorICAgICAgICBHZW5lcmF0b3IuYmFja2VuZF9qc19pbml0aWFsaXpl
cl9saXN0LmFwcGVuZCgiSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckNvbW1hbmQoXCIlcy4lc1wi
LCB7JXN9LCAlcyk7XG4iICUgKGRvbWFpbl9uYW1lLCBqc29uX2NvbW1hbmRfbmFtZSwganNfcGFy
YW1ldGVyc190ZXh0LCBqc19yZXBseV9saXN0KSkKIAogR2VuZXJhdG9yLmdvKCkKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2NvbXBpbGUtZnJvbnQtZW5kLnNoIGIvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2NvbXBpbGUtZnJvbnQtZW5kLnNoCmluZGV4IDhhMTM1NmU4
OGI4NzRlNTUzYzQ3ZmMwNjk1ZmQyMjBjNTkxNDU4OTQuLmMxZDlhNDY4YTJhZTdjOTZjNjk0MzIx
OGIwODk5ODIxYzg3YmRiNTUgMTAwNzU1Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9j
b21waWxlLWZyb250LWVuZC5zaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvY29tcGls
ZS1mcm9udC1lbmQuc2gKQEAgLTQ1LDcgKzQ1LDggQEAgamF2YSAtamFyIH4vY2xvc3VyZS9jb21w
aWxlci5qYXIgLS1zdW1tYXJ5X2RldGFpbF9sZXZlbCAzIC0tY29tcGlsYXRpb25fbGV2ZWwgU0kK
ICAgICAgICAgLS1qcyBTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1VzZXJNZXRy
aWNzLmpzIFwKICAgICAgICAgLS1qcyBTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5k
L0hhbmRsZXJSZWdpc3RyeS5qcyBcCiAgICAgICAgIC0tanMgU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9JbnNwZWN0b3JGcm9udGVuZEhvc3RTdHViLmpzIFwKLSAgICAtLW1vZHVs
ZSBqc21vZHVsZV9zZGs6MjU6anNtb2R1bGVfY29tbW9uIFwKKyAgICAtLW1vZHVsZSBqc21vZHVs
ZV9zZGs6MjY6anNtb2R1bGVfY29tbW9uIFwKKyAgICAgICAgLS1qcyBTb3VyY2UvV2ViQ29yZS9p
bnNwZWN0b3IvZnJvbnQtZW5kL0luc3BlY3RvckJhY2tlbmQuanMgXAogICAgICAgICAtLWpzIFNv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvQXBwbGljYXRpb25DYWNoZU1vZGVsLmpz
IFwKICAgICAgICAgLS1qcyBTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0NvbXBp
bGVyU291cmNlTWFwcGluZy5qcyBcCiAgICAgICAgIC0tanMgU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9Db25zb2xlTW9kZWwuanMgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9JbnNwZWN0b3JCYWNrZW5kLmpzIGIvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9JbnNwZWN0b3JCYWNrZW5kLmpzCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQx
MDVlYzU0NGM5NjBjNzRmOWU1NDBmNGE5ZTFiYjBhMGI5NzczZjIKLS0tIC9kZXYvbnVsbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0luc3BlY3RvckJhY2tlbmQuanMK
QEAgLTAsMCArMSwyODUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUK
KyAqIG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJp
Z2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUg
bmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3Jz
IG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20K
KyAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Np
b24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhP
TERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICog
QSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRI
RSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywg
UFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
CisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KKyAqLworCisvKioKKyAqIEBjb25zdHJ1Y3RvcgorICovCitmdW5jdGlvbiBJbnNw
ZWN0b3JCYWNrZW5kQ2xhc3MoKQoreworICAgIHRoaXMuX2xhc3RDYWxsYmFja0lkID0gMTsKKyAg
ICB0aGlzLl9wZW5kaW5nUmVzcG9uc2VzQ291bnQgPSAwOworICAgIHRoaXMuX2NhbGxiYWNrcyA9
IHt9OworICAgIHRoaXMuX2RvbWFpbkRpc3BhdGNoZXJzID0ge307CisgICAgdGhpcy5fZXZlbnRB
cmdzID0ge307CisgICAgdGhpcy5fcmVwbHlBcmdzID0ge307CisKKyAgICB0aGlzLmR1bXBJbnNw
ZWN0b3JUaW1lU3RhdHMgPSBmYWxzZTsKKyAgICB0aGlzLmR1bXBJbnNwZWN0b3JQcm90b2NvbE1l
c3NhZ2VzID0gZmFsc2U7Cit9CisKK0luc3BlY3RvckJhY2tlbmRDbGFzcy5wcm90b3R5cGUgPSB7
CisgICAgX3dyYXA6IGZ1bmN0aW9uKGNhbGxiYWNrKQorICAgIHsKKyAgICAgICAgdmFyIGNhbGxi
YWNrSWQgPSB0aGlzLl9sYXN0Q2FsbGJhY2tJZCsrOworICAgICAgICB0aGlzLl9jYWxsYmFja3Nb
Y2FsbGJhY2tJZF0gPSBjYWxsYmFjayB8fCBmdW5jdGlvbigpIHt9OworICAgICAgICByZXR1cm4g
Y2FsbGJhY2tJZDsKKyAgICB9LAorCisgICAgcmVnaXN0ZXJDb21tYW5kOiBmdW5jdGlvbihtZXRo
b2QsIHNpZ25hdHVyZSwgcmVwbHlBcmdzKQorICAgIHsKKyAgICAgICAgdmFyIGRvbWFpbkFuZEZ1
bmN0aW9uID0gbWV0aG9kLnNwbGl0KCIuIik7CisgICAgICAgIHZhciBhZ2VudE5hbWUgPSBkb21h
aW5BbmRGdW5jdGlvblswXSArICJBZ2VudCI7CisgICAgICAgIGlmICghd2luZG93W2FnZW50TmFt
ZV0pCisgICAgICAgICAgICB3aW5kb3dbYWdlbnROYW1lXSA9IHt9OworCisgICAgICAgIHZhciBy
ZXF1ZXN0ID0geyBtZXRob2Q6IG1ldGhvZCwgcGFyYW1zOiBzaWduYXR1cmUgfTsKKyAgICAgICAg
dmFyIHJlcXVlc3RTdHJpbmcgPSBKU09OLnN0cmluZ2lmeShyZXF1ZXN0KTsKKyAgICAgICAgd2lu
ZG93W2FnZW50TmFtZV1bZG9tYWluQW5kRnVuY3Rpb25bMV1dID0gdGhpcy5fc2VuZE1lc3NhZ2VU
b0JhY2tlbmQuYmluZCh0aGlzLCByZXF1ZXN0U3RyaW5nKTsKKyAgICAgICAgd2luZG93W2FnZW50
TmFtZV1bZG9tYWluQW5kRnVuY3Rpb25bMV1dWyJpbnZva2UiXSA9IHRoaXMuX2ludm9rZS5iaW5k
KHRoaXMsIHJlcXVlc3RTdHJpbmcpOworICAgICAgICB0aGlzLl9yZXBseUFyZ3NbbWV0aG9kXSA9
IHJlcGx5QXJnczsKKyAgICB9LAorCisgICAgcmVnaXN0ZXJFdmVudDogZnVuY3Rpb24oZXZlbnRO
YW1lLCBwYXJhbXMpCisgICAgeworICAgICAgICB0aGlzLl9ldmVudEFyZ3NbZXZlbnROYW1lXSA9
IHBhcmFtczsKKyAgICB9LAorCisgICAgX2ludm9rZTogZnVuY3Rpb24ocmVxdWVzdFN0cmluZywg
YXJncywgY2FsbGJhY2spCisgICAgeworICAgICAgICB2YXIgcmVxdWVzdCA9IEpTT04ucGFyc2Uo
cmVxdWVzdFN0cmluZyk7CisgICAgICAgIHJlcXVlc3QucGFyYW1zID0gYXJnczsKKyAgICAgICAg
dGhpcy5fd3JhcENhbGxiYWNrQW5kU2VuZE1lc3NhZ2VPYmplY3QocmVxdWVzdCwgY2FsbGJhY2sp
OworICAgIH0sCisKKyAgICBfc2VuZE1lc3NhZ2VUb0JhY2tlbmQ6IGZ1bmN0aW9uKCkKKyAgICB7
CisgICAgICAgIHZhciBhcmdzID0gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRz
KTsKKyAgICAgICAgdmFyIHJlcXVlc3QgPSBKU09OLnBhcnNlKGFyZ3Muc2hpZnQoKSk7CisgICAg
ICAgIHZhciBjYWxsYmFjayA9IChhcmdzLmxlbmd0aCAmJiB0eXBlb2YgYXJnc1thcmdzLmxlbmd0
aCAtIDFdID09PSAiZnVuY3Rpb24iKSA/IGFyZ3MucG9wKCkgOiAwOworICAgICAgICB2YXIgZG9t
YWluQW5kTWV0aG9kID0gcmVxdWVzdC5tZXRob2Quc3BsaXQoIi4iKTsKKyAgICAgICAgdmFyIGFn
ZW50TWV0aG9kID0gZG9tYWluQW5kTWV0aG9kWzBdICsgIkFnZW50LiIgKyBkb21haW5BbmRNZXRo
b2RbMV07CisKKyAgICAgICAgdmFyIGhhc1BhcmFtcyA9IGZhbHNlOworICAgICAgICBpZiAocmVx
dWVzdC5wYXJhbXMpIHsKKyAgICAgICAgICAgIGZvciAodmFyIGtleSBpbiByZXF1ZXN0LnBhcmFt
cykgeworICAgICAgICAgICAgICAgIHZhciB0eXBlTmFtZSA9IHJlcXVlc3QucGFyYW1zW2tleV0u
dHlwZTsKKyAgICAgICAgICAgICAgICB2YXIgb3B0aW9uYWxGbGFnID0gcmVxdWVzdC5wYXJhbXNb
a2V5XVsib3B0aW9uYWwiXTsKKworICAgICAgICAgICAgICAgIGlmIChhcmdzLmxlbmd0aCA9PT0g
MCAmJiAhb3B0aW9uYWxGbGFnKSB7CisgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3Io
IlByb3RvY29sIEVycm9yOiBJbnZhbGlkIG51bWJlciBvZiBhcmd1bWVudHMgZm9yIG1ldGhvZCAn
IiArIGFnZW50TWV0aG9kICsgIicgY2FsbC4gSXQgbXVzdCBoYXZlIHRoZSBuZXh0IGFyZ3VtZW50
cyAnIiArIEpTT04uc3RyaW5naWZ5KHJlcXVlc3QucGFyYW1zKSArICInLiIpOworICAgICAgICAg
ICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAg
dmFyIHZhbHVlID0gYXJncy5zaGlmdCgpOworICAgICAgICAgICAgICAgIGlmIChvcHRpb25hbEZs
YWcgJiYgdHlwZW9mIHZhbHVlID09PSAidW5kZWZpbmVkIikgeworICAgICAgICAgICAgICAgICAg
ICBkZWxldGUgcmVxdWVzdC5wYXJhbXNba2V5XTsKKyAgICAgICAgICAgICAgICAgICAgY29udGlu
dWU7CisgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgaWYgKHR5cGVvZiB2YWx1
ZSAhPT0gdHlwZU5hbWUpIHsKKyAgICAgICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcigiUHJv
dG9jb2wgRXJyb3I6IEludmFsaWQgdHlwZSBvZiBhcmd1bWVudCAnIiArIGtleSArICInIGZvciBt
ZXRob2QgJyIgKyBhZ2VudE1ldGhvZCArICInIGNhbGwuIEl0IG11c3QgYmUgJyIgKyB0eXBlTmFt
ZSArICInIGJ1dCBpdCBpcyAnIiArIHR5cGVvZiB2YWx1ZSArICInLiIpOworICAgICAgICAgICAg
ICAgICAgICByZXR1cm47CisgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgcmVx
dWVzdC5wYXJhbXNba2V5XSA9IHZhbHVlOworICAgICAgICAgICAgICAgIGhhc1BhcmFtcyA9IHRy
dWU7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBpZiAoIWhhc1BhcmFtcykKKyAgICAgICAg
ICAgICAgICBkZWxldGUgcmVxdWVzdC5wYXJhbXM7CisgICAgICAgIH0KKworICAgICAgICBpZiAo
YXJncy5sZW5ndGggPT09IDEgJiYgIWNhbGxiYWNrKSB7CisgICAgICAgICAgICBpZiAodHlwZW9m
IGFyZ3NbMF0gIT09ICJ1bmRlZmluZWQiKSB7CisgICAgICAgICAgICAgICAgY29uc29sZS5lcnJv
cigiUHJvdG9jb2wgRXJyb3I6IE9wdGlvbmFsIGNhbGxiYWNrIGFyZ3VtZW50IGZvciBtZXRob2Qg
JyIgKyBhZ2VudE1ldGhvZCArICInIGNhbGwgbXVzdCBiZSBhIGZ1bmN0aW9uIGJ1dCBpdHMgdHlw
ZSBpcyAnIiArIHR5cGVvZiBhcmdzWzBdICsgIicuIik7CisgICAgICAgICAgICAgICAgcmV0dXJu
OworICAgICAgICAgICAgfQorICAgICAgICB9CisKKyAgICAgICAgdGhpcy5fd3JhcENhbGxiYWNr
QW5kU2VuZE1lc3NhZ2VPYmplY3QocmVxdWVzdCwgY2FsbGJhY2spOworICAgIH0sCisKKyAgICBf
d3JhcENhbGxiYWNrQW5kU2VuZE1lc3NhZ2VPYmplY3Q6IGZ1bmN0aW9uKG1lc3NhZ2VPYmplY3Qs
IGNhbGxiYWNrKQorICAgIHsKKyAgICAgICAgbWVzc2FnZU9iamVjdC5pZCA9IHRoaXMuX3dyYXAo
Y2FsbGJhY2spOworCisgICAgICAgIHZhciB3cmFwcGVkQ2FsbGJhY2sgPSB0aGlzLl9jYWxsYmFj
a3NbbWVzc2FnZU9iamVjdC5pZF07CisgICAgICAgIHdyYXBwZWRDYWxsYmFjay5tZXRob2ROYW1l
ID0gbWVzc2FnZU9iamVjdC5tZXRob2Q7CisKKyAgICAgICAgaWYgKHRoaXMuZHVtcEluc3BlY3Rv
clRpbWVTdGF0cykKKyAgICAgICAgICAgIHdyYXBwZWRDYWxsYmFjay5zZW5kUmVxdWVzdFRpbWUg
PSBEYXRlLm5vdygpOworCisgICAgICAgIGlmICh0aGlzLmR1bXBJbnNwZWN0b3JQcm90b2NvbE1l
c3NhZ2VzKQorICAgICAgICAgICAgY29uc29sZS5sb2coImZyb250ZW5kOiAiICsgSlNPTi5zdHJp
bmdpZnkobWVzc2FnZU9iamVjdCkpOworCisgICAgICAgICsrdGhpcy5fcGVuZGluZ1Jlc3BvbnNl
c0NvdW50OworICAgICAgICB0aGlzLnNlbmRNZXNzYWdlT2JqZWN0VG9CYWNrZW5kKG1lc3NhZ2VP
YmplY3QpOworICAgIH0sCisKKyAgICBzZW5kTWVzc2FnZU9iamVjdFRvQmFja2VuZDogZnVuY3Rp
b24obWVzc2FnZU9iamVjdCkKKyAgICB7CisgICAgICAgIGNvbnNvbGUudGltZVN0YW1wKG1lc3Nh
Z2VPYmplY3QubWV0aG9kKTsKKyAgICAgICAgdmFyIG1lc3NhZ2UgPSBKU09OLnN0cmluZ2lmeSht
ZXNzYWdlT2JqZWN0KTsKKyAgICAgICAgSW5zcGVjdG9yRnJvbnRlbmRIb3N0LnNlbmRNZXNzYWdl
VG9CYWNrZW5kKG1lc3NhZ2UpOworICAgIH0sCisKKyAgICByZWdpc3RlckRvbWFpbkRpc3BhdGNo
ZXI6IGZ1bmN0aW9uKGRvbWFpbiwgZGlzcGF0Y2hlcikKKyAgICB7CisgICAgICAgIHRoaXMuX2Rv
bWFpbkRpc3BhdGNoZXJzW2RvbWFpbl0gPSBkaXNwYXRjaGVyOworICAgIH0sCisKKyAgICBkaXNw
YXRjaDogZnVuY3Rpb24obWVzc2FnZSkKKyAgICB7CisgICAgICAgIGlmICh0aGlzLmR1bXBJbnNw
ZWN0b3JQcm90b2NvbE1lc3NhZ2VzKQorICAgICAgICAgICAgY29uc29sZS5sb2coImJhY2tlbmQ6
ICIgKyAoKHR5cGVvZiBtZXNzYWdlID09PSAic3RyaW5nIikgPyBtZXNzYWdlIDogSlNPTi5zdHJp
bmdpZnkobWVzc2FnZSkpKTsKKworICAgICAgICB2YXIgbWVzc2FnZU9iamVjdCA9ICh0eXBlb2Yg
bWVzc2FnZSA9PT0gInN0cmluZyIpID8gSlNPTi5wYXJzZShtZXNzYWdlKSA6IG1lc3NhZ2U7CisK
KyAgICAgICAgaWYgKCJpZCIgaW4gbWVzc2FnZU9iamVjdCkgeyAvLyBqdXN0IGEgcmVzcG9uc2Ug
Zm9yIHNvbWUgcmVxdWVzdAorICAgICAgICAgICAgaWYgKG1lc3NhZ2VPYmplY3QuZXJyb3IpIHsK
KyAgICAgICAgICAgICAgICBtZXNzYWdlT2JqZWN0LmVycm9yLl9fcHJvdG9fXyA9IHsKKyAgICAg
ICAgICAgICAgICAgICAgZ2V0RGVzY3JpcHRpb246IGZ1bmN0aW9uKCkKKyAgICAgICAgICAgICAg
ICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgc3dpdGNoKHRoaXMuY29kZSkgeworICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgLTMyNzAwOiByZXR1cm4gIlBhcnNlIGVycm9y
IjsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIC0zMjYwMDogcmV0dXJuICJJbnZh
bGlkIFJlcXVlc3QiOworICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgLTMyNjAxOiBy
ZXR1cm4gIk1ldGhvZCBub3QgZm91bmQiOworICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNh
c2UgLTMyNjAyOiByZXR1cm4gIkludmFsaWQgcGFyYW1zIjsKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBjYXNlIC0zMjYwMzogcmV0dXJuICJJbnRlcm5hbCBlcnJvciI7OworICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGNhc2UgLTMyMDAwOiByZXR1cm4gIlNlcnZlciBlcnJvciI7Cisg
ICAgICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIH0sCisKKyAgICAg
ICAgICAgICAgICAgICAgdG9TdHJpbmc6IGZ1bmN0aW9uKCkKKyAgICAgICAgICAgICAgICAgICAg
eworICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGRlc2NyaXB0aW9uID0iVW5rbm93biBlcnJv
ciBjb2RlIjsKKyAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmdldERlc2NyaXB0
aW9uKCkgKyAiKCIgKyB0aGlzLmNvZGUgKyAiKTogIiArIHRoaXMubWVzc2FnZSArICIuIiArICh0
aGlzLmRhdGEgPyAiICIgKyB0aGlzLmRhdGEuam9pbigiICIpIDogIiIpOworICAgICAgICAgICAg
ICAgICAgICB9LAorCisgICAgICAgICAgICAgICAgICAgIGdldE1lc3NhZ2U6IGZ1bmN0aW9uKCkK
KyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRo
aXMubWVzc2FnZTsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIH0KKwor
ICAgICAgICAgICAgICAgIGlmIChtZXNzYWdlT2JqZWN0LmVycm9yLmNvZGUgIT09IC0zMjAwMCkK
KyAgICAgICAgICAgICAgICAgICAgdGhpcy5yZXBvcnRQcm90b2NvbEVycm9yKG1lc3NhZ2VPYmpl
Y3QpOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICB2YXIgY2FsbGJhY2sgPSB0aGlzLl9j
YWxsYmFja3NbbWVzc2FnZU9iamVjdC5pZF07CisgICAgICAgICAgICBpZiAoY2FsbGJhY2spIHsK
KyAgICAgICAgICAgICAgICB2YXIgYXJndW1lbnRzQXJyYXkgPSBbXTsKKyAgICAgICAgICAgICAg
ICBpZiAobWVzc2FnZU9iamVjdC5yZXN1bHQpIHsKKyAgICAgICAgICAgICAgICAgICAgdmFyIHBh
cmFtTmFtZXMgPSB0aGlzLl9yZXBseUFyZ3NbY2FsbGJhY2subWV0aG9kTmFtZV07CisgICAgICAg
ICAgICAgICAgICAgIGlmIChwYXJhbU5hbWVzKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBm
b3IgKHZhciBpID0gMDsgaSA8IHBhcmFtTmFtZXMubGVuZ3RoOyArK2kpCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgYXJndW1lbnRzQXJyYXkucHVzaChtZXNzYWdlT2JqZWN0LnJlc3VsdFtw
YXJhbU5hbWVzW2ldXSk7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICB9
CisKKyAgICAgICAgICAgICAgICB2YXIgcHJvY2Vzc2luZ1N0YXJ0VGltZTsKKyAgICAgICAgICAg
ICAgICBpZiAodGhpcy5kdW1wSW5zcGVjdG9yVGltZVN0YXRzICYmIGNhbGxiYWNrLm1ldGhvZE5h
bWUpCisgICAgICAgICAgICAgICAgICAgIHByb2Nlc3NpbmdTdGFydFRpbWUgPSBEYXRlLm5vdygp
OworCisgICAgICAgICAgICAgICAgYXJndW1lbnRzQXJyYXkudW5zaGlmdChtZXNzYWdlT2JqZWN0
LmVycm9yKTsKKyAgICAgICAgICAgICAgICBjYWxsYmFjay5hcHBseShudWxsLCBhcmd1bWVudHNB
cnJheSk7CisgICAgICAgICAgICAgICAgLS10aGlzLl9wZW5kaW5nUmVzcG9uc2VzQ291bnQ7Cisg
ICAgICAgICAgICAgICAgZGVsZXRlIHRoaXMuX2NhbGxiYWNrc1ttZXNzYWdlT2JqZWN0LmlkXTsK
KworICAgICAgICAgICAgICAgIGlmICh0aGlzLmR1bXBJbnNwZWN0b3JUaW1lU3RhdHMgJiYgY2Fs
bGJhY2subWV0aG9kTmFtZSkKKyAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coInRpbWUt
c3RhdHM6ICIgKyBjYWxsYmFjay5tZXRob2ROYW1lICsgIiA9ICIgKyAocHJvY2Vzc2luZ1N0YXJ0
VGltZSAtIGNhbGxiYWNrLnNlbmRSZXF1ZXN0VGltZSkgKyAiICsgIiArIChEYXRlLm5vdygpIC0g
cHJvY2Vzc2luZ1N0YXJ0VGltZSkpOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBpZiAo
dGhpcy5fc2NyaXB0cyAmJiAhdGhpcy5fcGVuZGluZ1Jlc3BvbnNlc0NvdW50KQorICAgICAgICAg
ICAgICAgIHRoaXMucnVuQWZ0ZXJQZW5kaW5nRGlzcGF0Y2hlcygpOworCisgICAgICAgICAgICBy
ZXR1cm47CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICB2YXIgbWV0aG9kID0gbWVzc2Fn
ZU9iamVjdC5tZXRob2Quc3BsaXQoIi4iKTsKKyAgICAgICAgICAgIHZhciBkb21haW5OYW1lID0g
bWV0aG9kWzBdOworICAgICAgICAgICAgdmFyIGZ1bmN0aW9uTmFtZSA9IG1ldGhvZFsxXTsKKyAg
ICAgICAgICAgIGlmICghKGRvbWFpbk5hbWUgaW4gdGhpcy5fZG9tYWluRGlzcGF0Y2hlcnMpKSB7
CisgICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcigiUHJvdG9jb2wgRXJyb3I6IHRoZSBtZXNz
YWdlIGlzIGZvciBub24tZXhpc3RpbmcgZG9tYWluICciICsgZG9tYWluTmFtZSArICInIik7Cisg
ICAgICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgfQorICAgICAgICAgICAgdmFyIGRp
c3BhdGNoZXIgPSB0aGlzLl9kb21haW5EaXNwYXRjaGVyc1tkb21haW5OYW1lXTsKKyAgICAgICAg
ICAgIGlmICghKGZ1bmN0aW9uTmFtZSBpbiBkaXNwYXRjaGVyKSkgeworICAgICAgICAgICAgICAg
IGNvbnNvbGUuZXJyb3IoIlByb3RvY29sIEVycm9yOiBBdHRlbXB0ZWQgdG8gZGlzcGF0Y2ggYW4g
dW5pbXBsZW1lbnRlZCBtZXRob2QgJyIgKyBtZXNzYWdlT2JqZWN0Lm1ldGhvZCArICInIik7Cisg
ICAgICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBpZiAo
IXRoaXMuX2V2ZW50QXJnc1ttZXNzYWdlT2JqZWN0Lm1ldGhvZF0pIHsKKyAgICAgICAgICAgICAg
ICBjb25zb2xlLmVycm9yKCJQcm90b2NvbCBFcnJvcjogQXR0ZW1wdGVkIHRvIGRpc3BhdGNoIGFu
IHVuc3BlY2lmaWVkIG1ldGhvZCAnIiArIG1lc3NhZ2VPYmplY3QubWV0aG9kICsgIiciKTsKKyAg
ICAgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIHZhciBw
YXJhbXMgPSBbXTsKKyAgICAgICAgICAgIGlmIChtZXNzYWdlT2JqZWN0LnBhcmFtcykgeworICAg
ICAgICAgICAgICAgIHZhciBwYXJhbU5hbWVzID0gdGhpcy5fZXZlbnRBcmdzW21lc3NhZ2VPYmpl
Y3QubWV0aG9kXTsKKyAgICAgICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHBhcmFtTmFt
ZXMubGVuZ3RoOyArK2kpCisgICAgICAgICAgICAgICAgICAgIHBhcmFtcy5wdXNoKG1lc3NhZ2VP
YmplY3QucGFyYW1zW3BhcmFtTmFtZXNbaV1dKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAg
ICAgdmFyIHByb2Nlc3NpbmdTdGFydFRpbWU7CisgICAgICAgICAgICBpZiAodGhpcy5kdW1wSW5z
cGVjdG9yVGltZVN0YXRzKQorICAgICAgICAgICAgICAgIHByb2Nlc3NpbmdTdGFydFRpbWUgPSBE
YXRlLm5vdygpOworCisgICAgICAgICAgICBkaXNwYXRjaGVyW2Z1bmN0aW9uTmFtZV0uYXBwbHko
ZGlzcGF0Y2hlciwgcGFyYW1zKTsKKworICAgICAgICAgICAgaWYgKHRoaXMuZHVtcEluc3BlY3Rv
clRpbWVTdGF0cykKKyAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygidGltZS1zdGF0czogIiAr
IG1lc3NhZ2VPYmplY3QubWV0aG9kICsgIiA9ICIgKyAoRGF0ZS5ub3coKSAtIHByb2Nlc3NpbmdT
dGFydFRpbWUpKTsKKyAgICAgICAgfQorICAgIH0sCisKKyAgICByZXBvcnRQcm90b2NvbEVycm9y
OiBmdW5jdGlvbihtZXNzYWdlT2JqZWN0KQorICAgIHsKKyAgICAgICAgY29uc29sZS5lcnJvcigi
UmVxdWVzdCB3aXRoIGlkID0gIiArIG1lc3NhZ2VPYmplY3QuaWQgKyAiIGZhaWxlZC4gIiArIG1l
c3NhZ2VPYmplY3QuZXJyb3IpOworICAgIH0sCisKKyAgICAvKioKKyAgICAgKiBAcGFyYW0ge3N0
cmluZz19IHNjcmlwdAorICAgICAqLworICAgIHJ1bkFmdGVyUGVuZGluZ0Rpc3BhdGNoZXM6IGZ1
bmN0aW9uKHNjcmlwdCkKKyAgICB7CisgICAgICAgIGlmICghdGhpcy5fc2NyaXB0cykKKyAgICAg
ICAgICAgIHRoaXMuX3NjcmlwdHMgPSBbXTsKKworICAgICAgICBpZiAoc2NyaXB0KQorICAgICAg
ICAgICAgdGhpcy5fc2NyaXB0cy5wdXNoKHNjcmlwdCk7CisKKyAgICAgICAgaWYgKCF0aGlzLl9w
ZW5kaW5nUmVzcG9uc2VzQ291bnQpIHsKKyAgICAgICAgICAgIHZhciBzY3JpcHRzID0gdGhpcy5f
c2NyaXB0czsKKyAgICAgICAgICAgIHRoaXMuX3NjcmlwdHMgPSBbXQorICAgICAgICAgICAgZm9y
ICh2YXIgaWQgPSAwOyBpZCA8IHNjcmlwdHMubGVuZ3RoOyArK2lkKQorICAgICAgICAgICAgICAg
ICBzY3JpcHRzW2lkXS5jYWxsKHRoaXMpOworICAgICAgICB9CisgICAgfQorfQorCitJbnNwZWN0
b3JCYWNrZW5kID0gbmV3IEluc3BlY3RvckJhY2tlbmRDbGFzcygpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9XZWJLaXQucXJjIGIvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9XZWJLaXQucXJjCmluZGV4IDYxNDJhZjMxNzcxZGZlZDc1
MzAxOWY3ZDgzYzBhNWI2ZDJlNjk2MWQuLjU0NWYxZGJlN2U5MjNiZGYwM2JlOWFjNDY2NDYyMzU4
ZDM2ZjU3ZTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQv
V2ViS2l0LnFyYworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1dlYktp
dC5xcmMKQEAgLTY2LDYgKzY2LDcgQEAKICAgICA8ZmlsZT5JbWFnZVZpZXcuanM8L2ZpbGU+CiAg
ICAgPGZpbGU+SW5qZWN0ZWRGYWtlV29ya2VyLmpzPC9maWxlPgogICAgIDxmaWxlPmluc3BlY3Rv
ci5qczwvZmlsZT4KKyAgICA8ZmlsZT5JbnNwZWN0b3JCYWNrZW5kLmpzPC9maWxlPgogICAgIDxm
aWxlPkluc3BlY3RvckZyb250ZW5kQVBJLmpzPC9maWxlPgogICAgIDxmaWxlPkluc3BlY3RvckZy
b250ZW5kSG9zdFN0dWIuanM8L2ZpbGU+CiAgICAgPGZpbGU+SW5zcGVjdG9yVmlldy5qczwvZmls
ZT4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvaW5zcGVj
dG9yLmh0bWwgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL2luc3BlY3Rvci5o
dG1sCmluZGV4IDc3MGY0MDIyMWEzYzAwOGU1OTU3ZjgzMTRhN2M2YzFlZjYxODA3NjAuLjIzNGVh
N2RiY2NmMzNkYzQ4YzFmZDgyZTY4YmI0ODBhY2ExY2VkNDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvaW5zcGVjdG9yLmh0bWwKKysrIGIvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9pbnNwZWN0b3IuaHRtbApAQCAtNDAsNiArNDAsNyBA
QCBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgogICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9InRyZWVv
dXRsaW5lLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIg
c3JjPSJpbnNwZWN0b3IuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZh
c2NyaXB0IiBzcmM9IlVJVXRpbHMuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgdHlwZT0idGV4
dC9qYXZhc2NyaXB0IiBzcmM9Ikluc3BlY3RvckJhY2tlbmQuanMiPjwvc2NyaXB0PgogICAgIDxz
Y3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ikluc3BlY3RvckJhY2tlbmRTdHViLmpz
Ij48L3NjcmlwdD4KICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJFeHRl
bnNpb25SZWdpc3RyeVN0dWIuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgdHlwZT0idGV4dC9q
YXZhc2NyaXB0IiBzcmM9Ikluc3BlY3RvckZyb250ZW5kQVBJLmpzIj48L3NjcmlwdD4KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvdXRpbGl0aWVzLmpzIGIv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC91dGlsaXRpZXMuanMKaW5kZXggZTIy
ZjcwMjA3NGRhMjYxODUxOTgzNTkxMDk5NTE2ZTNjNmYzMGU5Ni4uOWU2YTE0MWVlNDU5NmQ5MjEz
NjRhNjI2OWUyZGNhMTVjYzMwNTZjNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC91dGlsaXRpZXMuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L2Zyb250LWVuZC91dGlsaXRpZXMuanMKQEAgLTMxMSw3ICszMTEsNyBAQCBmdW5jdGlvbiBBbmNo
b3JCb3goeCwgeSwgd2lkdGgsIGhlaWdodCkKIH0KIAogLyoqCi0gKiBAcGFyYW0ge0RPTVdpbmRv
d30gdGFyZ2V0V2luZG93CisgKiBAcGFyYW0ge1dpbmRvd30gdGFyZ2V0V2luZG93CiAgKiBAcmV0
dXJuIHtBbmNob3JCb3h9CiAgKi8KIEVsZW1lbnQucHJvdG90eXBlLm9mZnNldFJlbGF0aXZlVG9X
aW5kb3cgPSBmdW5jdGlvbih0YXJnZXRXaW5kb3cpCkBAIC0zMzMsNyArMzMzLDcgQEAgRWxlbWVu
dC5wcm90b3R5cGUub2Zmc2V0UmVsYXRpdmVUb1dpbmRvdyA9IGZ1bmN0aW9uKHRhcmdldFdpbmRv
dykKIH0KIAogLyoqCi0gKiBAcGFyYW0ge0RPTVdpbmRvd30gdGFyZ2V0V2luZG93CisgKiBAcGFy
YW0ge1dpbmRvd30gdGFyZ2V0V2luZG93CiAgKiBAcmV0dXJuIHtBbmNob3JCb3h9CiAgKi8KIEVs
ZW1lbnQucHJvdG90eXBlLmJveEluV2luZG93ID0gZnVuY3Rpb24odGFyZ2V0V2luZG93KQo=
</data>
<flag name="review"
          id="116837"
          type_id="1"
          status="+"
          setter="timothy"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>117420</attachid>
            <date>2011-12-01 07:43:52 -0800</date>
            <delta_ts>2011-12-01 07:43:52 -0800</delta_ts>
            <desc>[Generated InspectorBackendStub.js]</desc>
            <filename>InspectorBackendStub.js</filename>
            <type>text/plain</type>
            <size>25093</size>
            <attacher name="Pavel Feldman">pfeldman</attacher>
            
              <data encoding="base64">Ly8gQ29weXJpZ2h0IChjKSAyMDExIFRoZSBDaHJvbWl1bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgovLyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1z
dHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCi8vIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCgpJ
bnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgiSW5zcGVjdG9yLmVuYWJsZSIsIHt9LCBb
XSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJJbnNwZWN0b3IuZGlzYWJsZSIs
IHt9LCBbXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJQYWdlLmVuYWJsZSIs
IHt9LCBbXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJQYWdlLmRpc2FibGUi
LCB7fSwgW10pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgiUGFnZS5hZGRTY3Jp
cHRUb0V2YWx1YXRlT25Mb2FkIiwgeyJzY3JpcHRTb3VyY2UiOiB7Im9wdGlvbmFsIjogZmFsc2Us
ICJ0eXBlIjogInN0cmluZyJ9fSwgWyJpZGVudGlmaWVyIl0pOwpJbnNwZWN0b3JCYWNrZW5kLnJl
Z2lzdGVyQ29tbWFuZCgiUGFnZS5yZW1vdmVTY3JpcHRUb0V2YWx1YXRlT25Mb2FkIiwgeyJpZGVu
dGlmaWVyIjogeyJvcHRpb25hbCI6IGZhbHNlLCAidHlwZSI6ICJzdHJpbmcifX0sIFtdKTsKSW5z
cGVjdG9yQmFja2VuZC5yZWdpc3RlckNvbW1hbmQoIlBhZ2UucmVsb2FkIiwgeyJpZ25vcmVDYWNo
ZSI6IHsib3B0aW9uYWwiOiB0cnVlLCAidHlwZSI6ICJib29sZWFuIn0sICJzY3JpcHRUb0V2YWx1
YXRlT25Mb2FkIjogeyJvcHRpb25hbCI6IHRydWUsICJ0eXBlIjogInN0cmluZyJ9fSwgW10pOwpJ
bnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgiUGFnZS5vcGVuIiwgeyJ1cmwiOiB7Im9w
dGlvbmFsIjogZmFsc2UsICJ0eXBlIjogInN0cmluZyJ9LCAibmV3V2luZG93IjogeyJvcHRpb25h
bCI6IHRydWUsICJ0eXBlIjogImJvb2xlYW4ifX0sIFtdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdp
c3RlckNvbW1hbmQoIlBhZ2UuZ2V0Q29va2llcyIsIHt9LCBbImNvb2tpZXMiLCAiY29va2llc1N0
cmluZyJdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckNvbW1hbmQoIlBhZ2UuZGVsZXRlQ29v
a2llIiwgeyJjb29raWVOYW1lIjogeyJvcHRpb25hbCI6IGZhbHNlLCAidHlwZSI6ICJzdHJpbmci
fSwgImRvbWFpbiI6IHsib3B0aW9uYWwiOiBmYWxzZSwgInR5cGUiOiAic3RyaW5nIn19LCBbXSk7
Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJQYWdlLmdldFJlc291cmNlVHJlZSIs
IHt9LCBbImZyYW1lVHJlZSJdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckNvbW1hbmQoIlBh
Z2UuZ2V0UmVzb3VyY2VDb250ZW50IiwgeyJmcmFtZUlkIjogeyJvcHRpb25hbCI6IGZhbHNlLCAi
dHlwZSI6ICJzdHJpbmcifSwgInVybCI6IHsib3B0aW9uYWwiOiBmYWxzZSwgInR5cGUiOiAic3Ry
aW5nIn19LCBbImNvbnRlbnQiLCAiYmFzZTY0RW5jb2RlZCJdKTsKSW5zcGVjdG9yQmFja2VuZC5y
ZWdpc3RlckNvbW1hbmQoIlBhZ2Uuc2VhcmNoSW5SZXNvdXJjZSIsIHsiZnJhbWVJZCI6IHsib3B0
aW9uYWwiOiBmYWxzZSwgInR5cGUiOiAic3RyaW5nIn0sICJ1cmwiOiB7Im9wdGlvbmFsIjogZmFs
c2UsICJ0eXBlIjogInN0cmluZyJ9LCAicXVlcnkiOiB7Im9wdGlvbmFsIjogZmFsc2UsICJ0eXBl
IjogInN0cmluZyJ9LCAiY2FzZVNlbnNpdGl2ZSI6IHsib3B0aW9uYWwiOiB0cnVlLCAidHlwZSI6
ICJib29sZWFuIn0sICJpc1JlZ2V4IjogeyJvcHRpb25hbCI6IHRydWUsICJ0eXBlIjogImJvb2xl
YW4ifX0sIFsicmVzdWx0Il0pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgiUGFn
ZS5zZWFyY2hJblJlc291cmNlcyIsIHsidGV4dCI6IHsib3B0aW9uYWwiOiBmYWxzZSwgInR5cGUi
OiAic3RyaW5nIn0sICJjYXNlU2Vuc2l0aXZlIjogeyJvcHRpb25hbCI6IHRydWUsICJ0eXBlIjog
ImJvb2xlYW4ifSwgImlzUmVnZXgiOiB7Im9wdGlvbmFsIjogdHJ1ZSwgInR5cGUiOiAiYm9vbGVh
biJ9fSwgWyJyZXN1bHQiXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJSdW50
aW1lLmV2YWx1YXRlIiwgeyJleHByZXNzaW9uIjogeyJvcHRpb25hbCI6IGZhbHNlLCAidHlwZSI6
ICJzdHJpbmcifSwgIm9iamVjdEdyb3VwIjogeyJvcHRpb25hbCI6IHRydWUsICJ0eXBlIjogInN0
cmluZyJ9LCAiaW5jbHVkZUNvbW1hbmRMaW5lQVBJIjogeyJvcHRpb25hbCI6IHRydWUsICJ0eXBl
IjogImJvb2xlYW4ifSwgImRvTm90UGF1c2VPbkV4Y2VwdGlvbnMiOiB7Im9wdGlvbmFsIjogdHJ1
ZSwgInR5cGUiOiAiYm9vbGVhbiJ9LCAiZnJhbWVJZCI6IHsib3B0aW9uYWwiOiB0cnVlLCAidHlw
ZSI6ICJzdHJpbmcifSwgInJldHVybkJ5VmFsdWUiOiB7Im9wdGlvbmFsIjogdHJ1ZSwgInR5cGUi
OiAiYm9vbGVhbiJ9fSwgWyJyZXN1bHQiLCAid2FzVGhyb3duIl0pOwpJbnNwZWN0b3JCYWNrZW5k
LnJlZ2lzdGVyQ29tbWFuZCgiUnVudGltZS5jYWxsRnVuY3Rpb25PbiIsIHsib2JqZWN0SWQiOiB7
Im9wdGlvbmFsIjogZmFsc2UsICJ0eXBlIjogInN0cmluZyJ9LCAiZnVuY3Rpb25EZWNsYXJhdGlv
biI6IHsib3B0aW9uYWwiOiBmYWxzZSwgInR5cGUiOiAic3RyaW5nIn0sICJhcmd1bWVudHMiOiB7
Im9wdGlvbmFsIjogdHJ1ZSwgInR5cGUiOiAib2JqZWN0In0sICJyZXR1cm5CeVZhbHVlIjogeyJv
cHRpb25hbCI6IHRydWUsICJ0eXBlIjogImJvb2xlYW4ifX0sIFsicmVzdWx0IiwgIndhc1Rocm93
biJdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckNvbW1hbmQoIlJ1bnRpbWUuZ2V0UHJvcGVy
dGllcyIsIHsib2JqZWN0SWQiOiB7Im9wdGlvbmFsIjogZmFsc2UsICJ0eXBlIjogInN0cmluZyJ9
LCAib3duUHJvcGVydGllcyI6IHsib3B0aW9uYWwiOiB0cnVlLCAidHlwZSI6ICJib29sZWFuIn19
LCBbInJlc3VsdCJdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckNvbW1hbmQoIlJ1bnRpbWUu
cmVsZWFzZU9iamVjdCIsIHsib2JqZWN0SWQiOiB7Im9wdGlvbmFsIjogZmFsc2UsICJ0eXBlIjog
InN0cmluZyJ9fSwgW10pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgiUnVudGlt
ZS5yZWxlYXNlT2JqZWN0R3JvdXAiLCB7Im9iamVjdEdyb3VwIjogeyJvcHRpb25hbCI6IGZhbHNl
LCAidHlwZSI6ICJzdHJpbmcifX0sIFtdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckNvbW1h
bmQoIlJ1bnRpbWUucnVuIiwge30sIFtdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckNvbW1h
bmQoIkNvbnNvbGUuZW5hYmxlIiwge30sIFtdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckNv
bW1hbmQoIkNvbnNvbGUuZGlzYWJsZSIsIHt9LCBbXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0
ZXJDb21tYW5kKCJDb25zb2xlLmNsZWFyTWVzc2FnZXMiLCB7fSwgW10pOwpJbnNwZWN0b3JCYWNr
ZW5kLnJlZ2lzdGVyQ29tbWFuZCgiQ29uc29sZS5zZXRNb25pdG9yaW5nWEhSRW5hYmxlZCIsIHsi
ZW5hYmxlZCI6IHsib3B0aW9uYWwiOiBmYWxzZSwgInR5cGUiOiAiYm9vbGVhbiJ9fSwgW10pOwpJ
bnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgiQ29uc29sZS5hZGRJbnNwZWN0ZWROb2Rl
IiwgeyJub2RlSWQiOiB7Im9wdGlvbmFsIjogZmFsc2UsICJ0eXBlIjogIm51bWJlciJ9fSwgW10p
OwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgiTmV0d29yay5lbmFibGUiLCB7fSwg
W10pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgiTmV0d29yay5kaXNhYmxlIiwg
e30sIFtdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckNvbW1hbmQoIk5ldHdvcmsuc2V0VXNl
ckFnZW50T3ZlcnJpZGUiLCB7InVzZXJBZ2VudCI6IHsib3B0aW9uYWwiOiBmYWxzZSwgInR5cGUi
OiAic3RyaW5nIn19LCBbXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJOZXR3
b3JrLnNldEV4dHJhSFRUUEhlYWRlcnMiLCB7ImhlYWRlcnMiOiB7Im9wdGlvbmFsIjogZmFsc2Us
ICJ0eXBlIjogIm9iamVjdCJ9fSwgW10pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyQ29tbWFu
ZCgiTmV0d29yay5nZXRSZXNwb25zZUJvZHkiLCB7InJlcXVlc3RJZCI6IHsib3B0aW9uYWwiOiBm
YWxzZSwgInR5cGUiOiAic3RyaW5nIn19LCBbImJvZHkiLCAiYmFzZTY0RW5jb2RlZCJdKTsKSW5z
cGVjdG9yQmFja2VuZC5yZWdpc3RlckNvbW1hbmQoIk5ldHdvcmsuY2FuQ2xlYXJCcm93c2VyQ2Fj
aGUiLCB7fSwgWyJyZXN1bHQiXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJO
ZXR3b3JrLmNsZWFyQnJvd3NlckNhY2hlIiwge30sIFtdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdp
c3RlckNvbW1hbmQoIk5ldHdvcmsuY2FuQ2xlYXJCcm93c2VyQ29va2llcyIsIHt9LCBbInJlc3Vs
dCJdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckNvbW1hbmQoIk5ldHdvcmsuY2xlYXJCcm93
c2VyQ29va2llcyIsIHt9LCBbXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJO
ZXR3b3JrLnNldENhY2hlRGlzYWJsZWQiLCB7ImNhY2hlRGlzYWJsZWQiOiB7Im9wdGlvbmFsIjog
ZmFsc2UsICJ0eXBlIjogImJvb2xlYW4ifX0sIFtdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3Rl
ckNvbW1hbmQoIkRhdGFiYXNlLmVuYWJsZSIsIHt9LCBbXSk7Ckluc3BlY3RvckJhY2tlbmQucmVn
aXN0ZXJDb21tYW5kKCJEYXRhYmFzZS5kaXNhYmxlIiwge30sIFtdKTsKSW5zcGVjdG9yQmFja2Vu
ZC5yZWdpc3RlckNvbW1hbmQoIkRhdGFiYXNlLmdldERhdGFiYXNlVGFibGVOYW1lcyIsIHsiZGF0
YWJhc2VJZCI6IHsib3B0aW9uYWwiOiBmYWxzZSwgInR5cGUiOiAibnVtYmVyIn19LCBbInRhYmxl
TmFtZXMiXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJEYXRhYmFzZS5leGVj
dXRlU1FMIiwgeyJkYXRhYmFzZUlkIjogeyJvcHRpb25hbCI6IGZhbHNlLCAidHlwZSI6ICJudW1i
ZXIifSwgInF1ZXJ5IjogeyJvcHRpb25hbCI6IGZhbHNlLCAidHlwZSI6ICJzdHJpbmcifX0sIFsi
c3VjY2VzcyIsICJ0cmFuc2FjdGlvbklkIl0pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyQ29t
bWFuZCgiRE9NU3RvcmFnZS5lbmFibGUiLCB7fSwgW10pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lz
dGVyQ29tbWFuZCgiRE9NU3RvcmFnZS5kaXNhYmxlIiwge30sIFtdKTsKSW5zcGVjdG9yQmFja2Vu
ZC5yZWdpc3RlckNvbW1hbmQoIkRPTVN0b3JhZ2UuZ2V0RE9NU3RvcmFnZUVudHJpZXMiLCB7InN0
b3JhZ2VJZCI6IHsib3B0aW9uYWwiOiBmYWxzZSwgInR5cGUiOiAibnVtYmVyIn19LCBbImVudHJp
ZXMiXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJET01TdG9yYWdlLnNldERP
TVN0b3JhZ2VJdGVtIiwgeyJzdG9yYWdlSWQiOiB7Im9wdGlvbmFsIjogZmFsc2UsICJ0eXBlIjog
Im51bWJlciJ9LCAia2V5IjogeyJvcHRpb25hbCI6IGZhbHNlLCAidHlwZSI6ICJzdHJpbmcifSwg
InZhbHVlIjogeyJvcHRpb25hbCI6IGZhbHNlLCAidHlwZSI6ICJzdHJpbmcifX0sIFsic3VjY2Vz
cyJdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckNvbW1hbmQoIkRPTVN0b3JhZ2UucmVtb3Zl
RE9NU3RvcmFnZUl0ZW0iLCB7InN0b3JhZ2VJZCI6IHsib3B0aW9uYWwiOiBmYWxzZSwgInR5cGUi
OiAibnVtYmVyIn0sICJrZXkiOiB7Im9wdGlvbmFsIjogZmFsc2UsICJ0eXBlIjogInN0cmluZyJ9
fSwgWyJzdWNjZXNzIl0pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgiQXBwbGlj
YXRpb25DYWNoZS5nZXRGcmFtZXNXaXRoTWFuaWZlc3RzIiwge30sIFsiZnJhbWVJZHMiXSk7Cklu
c3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJBcHBsaWNhdGlvbkNhY2hlLmVuYWJsZSIs
IHt9LCBbXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJBcHBsaWNhdGlvbkNh
Y2hlLmdldE1hbmlmZXN0Rm9yRnJhbWUiLCB7ImZyYW1lSWQiOiB7Im9wdGlvbmFsIjogZmFsc2Us
ICJ0eXBlIjogInN0cmluZyJ9fSwgWyJtYW5pZmVzdFVSTCJdKTsKSW5zcGVjdG9yQmFja2VuZC5y
ZWdpc3RlckNvbW1hbmQoIkFwcGxpY2F0aW9uQ2FjaGUuZ2V0QXBwbGljYXRpb25DYWNoZUZvckZy
YW1lIiwgeyJmcmFtZUlkIjogeyJvcHRpb25hbCI6IGZhbHNlLCAidHlwZSI6ICJzdHJpbmcifX0s
IFsiYXBwbGljYXRpb25DYWNoZSJdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckNvbW1hbmQo
IkZpbGVTeXN0ZW0uZW5hYmxlIiwge30sIFtdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckNv
bW1hbmQoIkZpbGVTeXN0ZW0uZGlzYWJsZSIsIHt9LCBbXSk7Ckluc3BlY3RvckJhY2tlbmQucmVn
aXN0ZXJDb21tYW5kKCJET00uZ2V0RG9jdW1lbnQiLCB7fSwgWyJyb290Il0pOwpJbnNwZWN0b3JC
YWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgiRE9NLnJlcXVlc3RDaGlsZE5vZGVzIiwgeyJub2RlSWQi
OiB7Im9wdGlvbmFsIjogZmFsc2UsICJ0eXBlIjogIm51bWJlciJ9fSwgW10pOwpJbnNwZWN0b3JC
YWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgiRE9NLnF1ZXJ5U2VsZWN0b3IiLCB7Im5vZGVJZCI6IHsi
b3B0aW9uYWwiOiBmYWxzZSwgInR5cGUiOiAibnVtYmVyIn0sICJzZWxlY3RvciI6IHsib3B0aW9u
YWwiOiBmYWxzZSwgInR5cGUiOiAic3RyaW5nIn19LCBbIm5vZGVJZCJdKTsKSW5zcGVjdG9yQmFj
a2VuZC5yZWdpc3RlckNvbW1hbmQoIkRPTS5xdWVyeVNlbGVjdG9yQWxsIiwgeyJub2RlSWQiOiB7
Im9wdGlvbmFsIjogZmFsc2UsICJ0eXBlIjogIm51bWJlciJ9LCAic2VsZWN0b3IiOiB7Im9wdGlv
bmFsIjogZmFsc2UsICJ0eXBlIjogInN0cmluZyJ9fSwgWyJub2RlSWRzIl0pOwpJbnNwZWN0b3JC
YWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgiRE9NLnNldE5vZGVOYW1lIiwgeyJub2RlSWQiOiB7Im9w
dGlvbmFsIjogZmFsc2UsICJ0eXBlIjogIm51bWJlciJ9LCAibmFtZSI6IHsib3B0aW9uYWwiOiBm
YWxzZSwgInR5cGUiOiAic3RyaW5nIn19LCBbIm5vZGVJZCJdKTsKSW5zcGVjdG9yQmFja2VuZC5y
ZWdpc3RlckNvbW1hbmQoIkRPTS5zZXROb2RlVmFsdWUiLCB7Im5vZGVJZCI6IHsib3B0aW9uYWwi
OiBmYWxzZSwgInR5cGUiOiAibnVtYmVyIn0sICJ2YWx1ZSI6IHsib3B0aW9uYWwiOiBmYWxzZSwg
InR5cGUiOiAic3RyaW5nIn19LCBbXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5k
KCJET00ucmVtb3ZlTm9kZSIsIHsibm9kZUlkIjogeyJvcHRpb25hbCI6IGZhbHNlLCAidHlwZSI6
ICJudW1iZXIifX0sIFtdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckNvbW1hbmQoIkRPTS5z
ZXRBdHRyaWJ1dGVWYWx1ZSIsIHsibm9kZUlkIjogeyJvcHRpb25hbCI6IGZhbHNlLCAidHlwZSI6
ICJudW1iZXIifSwgIm5hbWUiOiB7Im9wdGlvbmFsIjogZmFsc2UsICJ0eXBlIjogInN0cmluZyJ9
LCAidmFsdWUiOiB7Im9wdGlvbmFsIjogZmFsc2UsICJ0eXBlIjogInN0cmluZyJ9fSwgW10pOwpJ
bnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgiRE9NLnNldEF0dHJpYnV0ZXNBc1RleHQi
LCB7Im5vZGVJZCI6IHsib3B0aW9uYWwiOiBmYWxzZSwgInR5cGUiOiAibnVtYmVyIn0sICJ0ZXh0
IjogeyJvcHRpb25hbCI6IGZhbHNlLCAidHlwZSI6ICJzdHJpbmcifSwgIm5hbWUiOiB7Im9wdGlv
bmFsIjogdHJ1ZSwgInR5cGUiOiAic3RyaW5nIn19LCBbXSk7Ckluc3BlY3RvckJhY2tlbmQucmVn
aXN0ZXJDb21tYW5kKCJET00ucmVtb3ZlQXR0cmlidXRlIiwgeyJub2RlSWQiOiB7Im9wdGlvbmFs
IjogZmFsc2UsICJ0eXBlIjogIm51bWJlciJ9LCAibmFtZSI6IHsib3B0aW9uYWwiOiBmYWxzZSwg
InR5cGUiOiAic3RyaW5nIn19LCBbXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5k
KCJET00uZ2V0RXZlbnRMaXN0ZW5lcnNGb3JOb2RlIiwgeyJub2RlSWQiOiB7Im9wdGlvbmFsIjog
ZmFsc2UsICJ0eXBlIjogIm51bWJlciJ9fSwgWyJsaXN0ZW5lcnMiXSk7Ckluc3BlY3RvckJhY2tl
bmQucmVnaXN0ZXJDb21tYW5kKCJET00uY29weU5vZGUiLCB7Im5vZGVJZCI6IHsib3B0aW9uYWwi
OiBmYWxzZSwgInR5cGUiOiAibnVtYmVyIn19LCBbXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0
ZXJDb21tYW5kKCJET00uZ2V0T3V0ZXJIVE1MIiwgeyJub2RlSWQiOiB7Im9wdGlvbmFsIjogZmFs
c2UsICJ0eXBlIjogIm51bWJlciJ9fSwgWyJvdXRlckhUTUwiXSk7Ckluc3BlY3RvckJhY2tlbmQu
cmVnaXN0ZXJDb21tYW5kKCJET00uc2V0T3V0ZXJIVE1MIiwgeyJub2RlSWQiOiB7Im9wdGlvbmFs
IjogZmFsc2UsICJ0eXBlIjogIm51bWJlciJ9LCAib3V0ZXJIVE1MIjogeyJvcHRpb25hbCI6IGZh
bHNlLCAidHlwZSI6ICJzdHJpbmcifX0sIFsibm9kZUlkIl0pOwpJbnNwZWN0b3JCYWNrZW5kLnJl
Z2lzdGVyQ29tbWFuZCgiRE9NLnBlcmZvcm1TZWFyY2giLCB7InF1ZXJ5IjogeyJvcHRpb25hbCI6
IGZhbHNlLCAidHlwZSI6ICJzdHJpbmcifX0sIFsic2VhcmNoSWQiLCAicmVzdWx0Q291bnQiXSk7
Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJET00uZ2V0U2VhcmNoUmVzdWx0cyIs
IHsic2VhcmNoSWQiOiB7Im9wdGlvbmFsIjogZmFsc2UsICJ0eXBlIjogInN0cmluZyJ9LCAiZnJv
bUluZGV4IjogeyJvcHRpb25hbCI6IGZhbHNlLCAidHlwZSI6ICJudW1iZXIifSwgInRvSW5kZXgi
OiB7Im9wdGlvbmFsIjogZmFsc2UsICJ0eXBlIjogIm51bWJlciJ9fSwgWyJub2RlSWRzIl0pOwpJ
bnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgiRE9NLmRpc2NhcmRTZWFyY2hSZXN1bHRz
IiwgeyJzZWFyY2hJZCI6IHsib3B0aW9uYWwiOiBmYWxzZSwgInR5cGUiOiAic3RyaW5nIn19LCBb
XSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJET00ucmVxdWVzdE5vZGUiLCB7
Im9iamVjdElkIjogeyJvcHRpb25hbCI6IGZhbHNlLCAidHlwZSI6ICJzdHJpbmcifX0sIFsibm9k
ZUlkIl0pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgiRE9NLnNldEluc3BlY3RN
b2RlRW5hYmxlZCIsIHsiZW5hYmxlZCI6IHsib3B0aW9uYWwiOiBmYWxzZSwgInR5cGUiOiAiYm9v
bGVhbiJ9LCAiaGlnaGxpZ2h0Q29uZmlnIjogeyJvcHRpb25hbCI6IHRydWUsICJ0eXBlIjogIm9i
amVjdCJ9fSwgW10pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgiRE9NLmhpZ2hs
aWdodFJlY3QiLCB7IngiOiB7Im9wdGlvbmFsIjogZmFsc2UsICJ0eXBlIjogIm51bWJlciJ9LCAi
eSI6IHsib3B0aW9uYWwiOiBmYWxzZSwgInR5cGUiOiAibnVtYmVyIn0sICJ3aWR0aCI6IHsib3B0
aW9uYWwiOiBmYWxzZSwgInR5cGUiOiAibnVtYmVyIn0sICJoZWlnaHQiOiB7Im9wdGlvbmFsIjog
ZmFsc2UsICJ0eXBlIjogIm51bWJlciJ9LCAiY29sb3IiOiB7Im9wdGlvbmFsIjogdHJ1ZSwgInR5
cGUiOiAib2JqZWN0In0sICJvdXRsaW5lQ29sb3IiOiB7Im9wdGlvbmFsIjogdHJ1ZSwgInR5cGUi
OiAib2JqZWN0In19LCBbXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJET00u
aGlnaGxpZ2h0Tm9kZSIsIHsibm9kZUlkIjogeyJvcHRpb25hbCI6IGZhbHNlLCAidHlwZSI6ICJu
dW1iZXIifSwgImhpZ2hsaWdodENvbmZpZyI6IHsib3B0aW9uYWwiOiBmYWxzZSwgInR5cGUiOiAi
b2JqZWN0In19LCBbXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJET00uaGlk
ZUhpZ2hsaWdodCIsIHt9LCBbXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJE
T00uaGlnaGxpZ2h0RnJhbWUiLCB7ImZyYW1lSWQiOiB7Im9wdGlvbmFsIjogZmFsc2UsICJ0eXBl
IjogInN0cmluZyJ9LCAiY29udGVudENvbG9yIjogeyJvcHRpb25hbCI6IHRydWUsICJ0eXBlIjog
Im9iamVjdCJ9LCAiY29udGVudE91dGxpbmVDb2xvciI6IHsib3B0aW9uYWwiOiB0cnVlLCAidHlw
ZSI6ICJvYmplY3QifX0sIFtdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckNvbW1hbmQoIkRP
TS5wdXNoTm9kZUJ5UGF0aFRvRnJvbnRlbmQiLCB7InBhdGgiOiB7Im9wdGlvbmFsIjogZmFsc2Us
ICJ0eXBlIjogInN0cmluZyJ9fSwgWyJub2RlSWQiXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0
ZXJDb21tYW5kKCJET00ucmVzb2x2ZU5vZGUiLCB7Im5vZGVJZCI6IHsib3B0aW9uYWwiOiBmYWxz
ZSwgInR5cGUiOiAibnVtYmVyIn0sICJvYmplY3RHcm91cCI6IHsib3B0aW9uYWwiOiB0cnVlLCAi
dHlwZSI6ICJzdHJpbmcifX0sIFsib2JqZWN0Il0pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVy
Q29tbWFuZCgiRE9NLmdldEF0dHJpYnV0ZXMiLCB7Im5vZGVJZCI6IHsib3B0aW9uYWwiOiBmYWxz
ZSwgInR5cGUiOiAibnVtYmVyIn19LCBbImF0dHJpYnV0ZXMiXSk7Ckluc3BlY3RvckJhY2tlbmQu
cmVnaXN0ZXJDb21tYW5kKCJET00ubW92ZVRvIiwgeyJub2RlSWQiOiB7Im9wdGlvbmFsIjogZmFs
c2UsICJ0eXBlIjogIm51bWJlciJ9LCAidGFyZ2V0Tm9kZUlkIjogeyJvcHRpb25hbCI6IGZhbHNl
LCAidHlwZSI6ICJudW1iZXIifSwgImluc2VydEJlZm9yZU5vZGVJZCI6IHsib3B0aW9uYWwiOiB0
cnVlLCAidHlwZSI6ICJudW1iZXIifX0sIFsibm9kZUlkIl0pOwpJbnNwZWN0b3JCYWNrZW5kLnJl
Z2lzdGVyQ29tbWFuZCgiQ1NTLmdldE1hdGNoZWRTdHlsZXNGb3JOb2RlIiwgeyJub2RlSWQiOiB7
Im9wdGlvbmFsIjogZmFsc2UsICJ0eXBlIjogIm51bWJlciJ9LCAiZm9yY2VkUHNldWRvQ2xhc3Nl
cyI6IHsib3B0aW9uYWwiOiB0cnVlLCAidHlwZSI6ICJvYmplY3QifSwgImluY2x1ZGVQc2V1ZG8i
OiB7Im9wdGlvbmFsIjogdHJ1ZSwgInR5cGUiOiAiYm9vbGVhbiJ9LCAiaW5jbHVkZUluaGVyaXRl
ZCI6IHsib3B0aW9uYWwiOiB0cnVlLCAidHlwZSI6ICJib29sZWFuIn19LCBbIm1hdGNoZWRDU1NS
dWxlcyIsICJwc2V1ZG9FbGVtZW50cyIsICJpbmhlcml0ZWQiXSk7Ckluc3BlY3RvckJhY2tlbmQu
cmVnaXN0ZXJDb21tYW5kKCJDU1MuZ2V0SW5saW5lU3R5bGVzRm9yTm9kZSIsIHsibm9kZUlkIjog
eyJvcHRpb25hbCI6IGZhbHNlLCAidHlwZSI6ICJudW1iZXIifX0sIFsiaW5saW5lU3R5bGUiLCAi
c3R5bGVBdHRyaWJ1dGVzIl0pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgiQ1NT
LmdldENvbXB1dGVkU3R5bGVGb3JOb2RlIiwgeyJub2RlSWQiOiB7Im9wdGlvbmFsIjogZmFsc2Us
ICJ0eXBlIjogIm51bWJlciJ9LCAiZm9yY2VkUHNldWRvQ2xhc3NlcyI6IHsib3B0aW9uYWwiOiB0
cnVlLCAidHlwZSI6ICJvYmplY3QifX0sIFsiY29tcHV0ZWRTdHlsZSJdKTsKSW5zcGVjdG9yQmFj
a2VuZC5yZWdpc3RlckNvbW1hbmQoIkNTUy5nZXRBbGxTdHlsZVNoZWV0cyIsIHt9LCBbImhlYWRl
cnMiXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJDU1MuZ2V0U3R5bGVTaGVl
dCIsIHsic3R5bGVTaGVldElkIjogeyJvcHRpb25hbCI6IGZhbHNlLCAidHlwZSI6ICJzdHJpbmci
fX0sIFsic3R5bGVTaGVldCJdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckNvbW1hbmQoIkNT
Uy5nZXRTdHlsZVNoZWV0VGV4dCIsIHsic3R5bGVTaGVldElkIjogeyJvcHRpb25hbCI6IGZhbHNl
LCAidHlwZSI6ICJzdHJpbmcifX0sIFsidGV4dCJdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3Rl
ckNvbW1hbmQoIkNTUy5zZXRTdHlsZVNoZWV0VGV4dCIsIHsic3R5bGVTaGVldElkIjogeyJvcHRp
b25hbCI6IGZhbHNlLCAidHlwZSI6ICJzdHJpbmcifSwgInRleHQiOiB7Im9wdGlvbmFsIjogZmFs
c2UsICJ0eXBlIjogInN0cmluZyJ9fSwgW10pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyQ29t
bWFuZCgiQ1NTLnNldFByb3BlcnR5VGV4dCIsIHsic3R5bGVJZCI6IHsib3B0aW9uYWwiOiBmYWxz
ZSwgInR5cGUiOiAib2JqZWN0In0sICJwcm9wZXJ0eUluZGV4IjogeyJvcHRpb25hbCI6IGZhbHNl
LCAidHlwZSI6ICJudW1iZXIifSwgInRleHQiOiB7Im9wdGlvbmFsIjogZmFsc2UsICJ0eXBlIjog
InN0cmluZyJ9LCAib3ZlcndyaXRlIjogeyJvcHRpb25hbCI6IGZhbHNlLCAidHlwZSI6ICJib29s
ZWFuIn19LCBbInN0eWxlIl0pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgiQ1NT
LnRvZ2dsZVByb3BlcnR5IiwgeyJzdHlsZUlkIjogeyJvcHRpb25hbCI6IGZhbHNlLCAidHlwZSI6
ICJvYmplY3QifSwgInByb3BlcnR5SW5kZXgiOiB7Im9wdGlvbmFsIjogZmFsc2UsICJ0eXBlIjog
Im51bWJlciJ9LCAiZGlzYWJsZSI6IHsib3B0aW9uYWwiOiBmYWxzZSwgInR5cGUiOiAiYm9vbGVh
biJ9fSwgWyJzdHlsZSJdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckNvbW1hbmQoIkNTUy5z
ZXRSdWxlU2VsZWN0b3IiLCB7InJ1bGVJZCI6IHsib3B0aW9uYWwiOiBmYWxzZSwgInR5cGUiOiAi
b2JqZWN0In0sICJzZWxlY3RvciI6IHsib3B0aW9uYWwiOiBmYWxzZSwgInR5cGUiOiAic3RyaW5n
In19LCBbInJ1bGUiXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJDU1MuYWRk
UnVsZSIsIHsiY29udGV4dE5vZGVJZCI6IHsib3B0aW9uYWwiOiBmYWxzZSwgInR5cGUiOiAibnVt
YmVyIn0sICJzZWxlY3RvciI6IHsib3B0aW9uYWwiOiBmYWxzZSwgInR5cGUiOiAic3RyaW5nIn19
LCBbInJ1bGUiXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJDU1MuZ2V0U3Vw
cG9ydGVkQ1NTUHJvcGVydGllcyIsIHt9LCBbImNzc1Byb3BlcnRpZXMiXSk7Ckluc3BlY3RvckJh
Y2tlbmQucmVnaXN0ZXJDb21tYW5kKCJUaW1lbGluZS5zdGFydCIsIHsibWF4Q2FsbFN0YWNrRGVw
dGgiOiB7Im9wdGlvbmFsIjogdHJ1ZSwgInR5cGUiOiAibnVtYmVyIn19LCBbXSk7Ckluc3BlY3Rv
ckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJUaW1lbGluZS5zdG9wIiwge30sIFtdKTsKSW5zcGVj
dG9yQmFja2VuZC5yZWdpc3RlckNvbW1hbmQoIkRlYnVnZ2VyLmNhdXNlc1JlY29tcGlsYXRpb24i
LCB7fSwgWyJyZXN1bHQiXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJEZWJ1
Z2dlci5zdXBwb3J0c05hdGl2ZUJyZWFrcG9pbnRzIiwge30sIFsicmVzdWx0Il0pOwpJbnNwZWN0
b3JCYWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgiRGVidWdnZXIuZW5hYmxlIiwge30sIFtdKTsKSW5z
cGVjdG9yQmFja2VuZC5yZWdpc3RlckNvbW1hbmQoIkRlYnVnZ2VyLmRpc2FibGUiLCB7fSwgW10p
OwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgiRGVidWdnZXIuc2V0QnJlYWtwb2lu
dHNBY3RpdmUiLCB7ImFjdGl2ZSI6IHsib3B0aW9uYWwiOiBmYWxzZSwgInR5cGUiOiAiYm9vbGVh
biJ9fSwgW10pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgiRGVidWdnZXIuc2V0
QnJlYWtwb2ludEJ5VXJsIiwgeyJsaW5lTnVtYmVyIjogeyJvcHRpb25hbCI6IGZhbHNlLCAidHlw
ZSI6ICJudW1iZXIifSwgInVybCI6IHsib3B0aW9uYWwiOiB0cnVlLCAidHlwZSI6ICJzdHJpbmci
fSwgInVybFJlZ2V4IjogeyJvcHRpb25hbCI6IHRydWUsICJ0eXBlIjogInN0cmluZyJ9LCAiY29s
dW1uTnVtYmVyIjogeyJvcHRpb25hbCI6IHRydWUsICJ0eXBlIjogIm51bWJlciJ9LCAiY29uZGl0
aW9uIjogeyJvcHRpb25hbCI6IHRydWUsICJ0eXBlIjogInN0cmluZyJ9fSwgWyJicmVha3BvaW50
SWQiLCAibG9jYXRpb25zIl0pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgiRGVi
dWdnZXIuc2V0QnJlYWtwb2ludCIsIHsibG9jYXRpb24iOiB7Im9wdGlvbmFsIjogZmFsc2UsICJ0
eXBlIjogIm9iamVjdCJ9LCAiY29uZGl0aW9uIjogeyJvcHRpb25hbCI6IHRydWUsICJ0eXBlIjog
InN0cmluZyJ9fSwgWyJicmVha3BvaW50SWQiLCAiYWN0dWFsTG9jYXRpb24iXSk7Ckluc3BlY3Rv
ckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJEZWJ1Z2dlci5yZW1vdmVCcmVha3BvaW50IiwgeyJi
cmVha3BvaW50SWQiOiB7Im9wdGlvbmFsIjogZmFsc2UsICJ0eXBlIjogInN0cmluZyJ9fSwgW10p
OwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgiRGVidWdnZXIuY29udGludWVUb0xv
Y2F0aW9uIiwgeyJsb2NhdGlvbiI6IHsib3B0aW9uYWwiOiBmYWxzZSwgInR5cGUiOiAib2JqZWN0
In19LCBbXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJEZWJ1Z2dlci5zdGVw
T3ZlciIsIHt9LCBbXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJEZWJ1Z2dl
ci5zdGVwSW50byIsIHt9LCBbXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJE
ZWJ1Z2dlci5zdGVwT3V0Iiwge30sIFtdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckNvbW1h
bmQoIkRlYnVnZ2VyLnBhdXNlIiwge30sIFtdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckNv
bW1hbmQoIkRlYnVnZ2VyLnJlc3VtZSIsIHt9LCBbXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0
ZXJDb21tYW5kKCJEZWJ1Z2dlci5zZWFyY2hJbkNvbnRlbnQiLCB7InNjcmlwdElkIjogeyJvcHRp
b25hbCI6IGZhbHNlLCAidHlwZSI6ICJzdHJpbmcifSwgInF1ZXJ5IjogeyJvcHRpb25hbCI6IGZh
bHNlLCAidHlwZSI6ICJzdHJpbmcifSwgImNhc2VTZW5zaXRpdmUiOiB7Im9wdGlvbmFsIjogdHJ1
ZSwgInR5cGUiOiAiYm9vbGVhbiJ9LCAiaXNSZWdleCI6IHsib3B0aW9uYWwiOiB0cnVlLCAidHlw
ZSI6ICJib29sZWFuIn19LCBbInJlc3VsdCJdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckNv
bW1hbmQoIkRlYnVnZ2VyLmNhblNldFNjcmlwdFNvdXJjZSIsIHt9LCBbInJlc3VsdCJdKTsKSW5z
cGVjdG9yQmFja2VuZC5yZWdpc3RlckNvbW1hbmQoIkRlYnVnZ2VyLnNldFNjcmlwdFNvdXJjZSIs
IHsic2NyaXB0SWQiOiB7Im9wdGlvbmFsIjogZmFsc2UsICJ0eXBlIjogInN0cmluZyJ9LCAic2Ny
aXB0U291cmNlIjogeyJvcHRpb25hbCI6IGZhbHNlLCAidHlwZSI6ICJzdHJpbmcifSwgInByZXZp
ZXciOiB7Im9wdGlvbmFsIjogdHJ1ZSwgInR5cGUiOiAiYm9vbGVhbiJ9fSwgWyJjYWxsRnJhbWVz
IiwgInJlc3VsdCJdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckNvbW1hbmQoIkRlYnVnZ2Vy
LmdldFNjcmlwdFNvdXJjZSIsIHsic2NyaXB0SWQiOiB7Im9wdGlvbmFsIjogZmFsc2UsICJ0eXBl
IjogInN0cmluZyJ9fSwgWyJzY3JpcHRTb3VyY2UiXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0
ZXJDb21tYW5kKCJEZWJ1Z2dlci5nZXRGdW5jdGlvbkxvY2F0aW9uIiwgeyJmdW5jdGlvbklkIjog
eyJvcHRpb25hbCI6IGZhbHNlLCAidHlwZSI6ICJzdHJpbmcifX0sIFsibG9jYXRpb24iXSk7Cklu
c3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJEZWJ1Z2dlci5zZXRQYXVzZU9uRXhjZXB0
aW9ucyIsIHsic3RhdGUiOiB7Im9wdGlvbmFsIjogZmFsc2UsICJ0eXBlIjogInN0cmluZyJ9fSwg
W10pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgiRGVidWdnZXIuZXZhbHVhdGVP
bkNhbGxGcmFtZSIsIHsiY2FsbEZyYW1lSWQiOiB7Im9wdGlvbmFsIjogZmFsc2UsICJ0eXBlIjog
InN0cmluZyJ9LCAiZXhwcmVzc2lvbiI6IHsib3B0aW9uYWwiOiBmYWxzZSwgInR5cGUiOiAic3Ry
aW5nIn0sICJvYmplY3RHcm91cCI6IHsib3B0aW9uYWwiOiB0cnVlLCAidHlwZSI6ICJzdHJpbmci
fSwgImluY2x1ZGVDb21tYW5kTGluZUFQSSI6IHsib3B0aW9uYWwiOiB0cnVlLCAidHlwZSI6ICJi
b29sZWFuIn0sICJyZXR1cm5CeVZhbHVlIjogeyJvcHRpb25hbCI6IHRydWUsICJ0eXBlIjogImJv
b2xlYW4ifX0sIFsicmVzdWx0IiwgIndhc1Rocm93biJdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdp
c3RlckNvbW1hbmQoIkRPTURlYnVnZ2VyLnNldERPTUJyZWFrcG9pbnQiLCB7Im5vZGVJZCI6IHsi
b3B0aW9uYWwiOiBmYWxzZSwgInR5cGUiOiAibnVtYmVyIn0sICJ0eXBlIjogeyJvcHRpb25hbCI6
IGZhbHNlLCAidHlwZSI6ICJzdHJpbmcifX0sIFtdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3Rl
ckNvbW1hbmQoIkRPTURlYnVnZ2VyLnJlbW92ZURPTUJyZWFrcG9pbnQiLCB7Im5vZGVJZCI6IHsi
b3B0aW9uYWwiOiBmYWxzZSwgInR5cGUiOiAibnVtYmVyIn0sICJ0eXBlIjogeyJvcHRpb25hbCI6
IGZhbHNlLCAidHlwZSI6ICJzdHJpbmcifX0sIFtdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3Rl
ckNvbW1hbmQoIkRPTURlYnVnZ2VyLnNldEV2ZW50TGlzdGVuZXJCcmVha3BvaW50IiwgeyJldmVu
dE5hbWUiOiB7Im9wdGlvbmFsIjogZmFsc2UsICJ0eXBlIjogInN0cmluZyJ9fSwgW10pOwpJbnNw
ZWN0b3JCYWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgiRE9NRGVidWdnZXIucmVtb3ZlRXZlbnRMaXN0
ZW5lckJyZWFrcG9pbnQiLCB7ImV2ZW50TmFtZSI6IHsib3B0aW9uYWwiOiBmYWxzZSwgInR5cGUi
OiAic3RyaW5nIn19LCBbXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJET01E
ZWJ1Z2dlci5zZXRYSFJCcmVha3BvaW50IiwgeyJ1cmwiOiB7Im9wdGlvbmFsIjogZmFsc2UsICJ0
eXBlIjogInN0cmluZyJ9fSwgW10pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgi
RE9NRGVidWdnZXIucmVtb3ZlWEhSQnJlYWtwb2ludCIsIHsidXJsIjogeyJvcHRpb25hbCI6IGZh
bHNlLCAidHlwZSI6ICJzdHJpbmcifX0sIFtdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckNv
bW1hbmQoIlByb2ZpbGVyLmNhdXNlc1JlY29tcGlsYXRpb24iLCB7fSwgWyJyZXN1bHQiXSk7Cklu
c3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJQcm9maWxlci5pc1NhbXBsaW5nIiwge30s
IFsicmVzdWx0Il0pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgiUHJvZmlsZXIu
aGFzSGVhcFByb2ZpbGVyIiwge30sIFsicmVzdWx0Il0pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lz
dGVyQ29tbWFuZCgiUHJvZmlsZXIuZW5hYmxlIiwge30sIFtdKTsKSW5zcGVjdG9yQmFja2VuZC5y
ZWdpc3RlckNvbW1hbmQoIlByb2ZpbGVyLmRpc2FibGUiLCB7fSwgW10pOwpJbnNwZWN0b3JCYWNr
ZW5kLnJlZ2lzdGVyQ29tbWFuZCgiUHJvZmlsZXIuc3RhcnQiLCB7fSwgW10pOwpJbnNwZWN0b3JC
YWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgiUHJvZmlsZXIuc3RvcCIsIHt9LCBbXSk7Ckluc3BlY3Rv
ckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJQcm9maWxlci5nZXRQcm9maWxlSGVhZGVycyIsIHt9
LCBbImhlYWRlcnMiXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJQcm9maWxl
ci5nZXRQcm9maWxlIiwgeyJ0eXBlIjogeyJvcHRpb25hbCI6IGZhbHNlLCAidHlwZSI6ICJzdHJp
bmcifSwgInVpZCI6IHsib3B0aW9uYWwiOiBmYWxzZSwgInR5cGUiOiAibnVtYmVyIn19LCBbInBy
b2ZpbGUiXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJQcm9maWxlci5yZW1v
dmVQcm9maWxlIiwgeyJ0eXBlIjogeyJvcHRpb25hbCI6IGZhbHNlLCAidHlwZSI6ICJzdHJpbmci
fSwgInVpZCI6IHsib3B0aW9uYWwiOiBmYWxzZSwgInR5cGUiOiAibnVtYmVyIn19LCBbXSk7Cklu
c3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJQcm9maWxlci5jbGVhclByb2ZpbGVzIiwg
e30sIFtdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckNvbW1hbmQoIlByb2ZpbGVyLnRha2VI
ZWFwU25hcHNob3QiLCB7fSwgW10pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgi
UHJvZmlsZXIuY29sbGVjdEdhcmJhZ2UiLCB7fSwgW10pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lz
dGVyQ29tbWFuZCgiUHJvZmlsZXIuZ2V0T2JqZWN0QnlIZWFwT2JqZWN0SWQiLCB7Im9iamVjdElk
IjogeyJvcHRpb25hbCI6IGZhbHNlLCAidHlwZSI6ICJudW1iZXIifX0sIFsicmVzdWx0Il0pOwpJ
bnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgiV29ya2VyLnNldFdvcmtlckluc3BlY3Rp
b25FbmFibGVkIiwgeyJ2YWx1ZSI6IHsib3B0aW9uYWwiOiBmYWxzZSwgInR5cGUiOiAiYm9vbGVh
biJ9fSwgW10pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgiV29ya2VyLnNlbmRN
ZXNzYWdlVG9Xb3JrZXIiLCB7IndvcmtlcklkIjogeyJvcHRpb25hbCI6IGZhbHNlLCAidHlwZSI6
ICJudW1iZXIifSwgIm1lc3NhZ2UiOiB7Im9wdGlvbmFsIjogZmFsc2UsICJ0eXBlIjogIm9iamVj
dCJ9fSwgW10pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgiV29ya2VyLmNvbm5l
Y3RUb1dvcmtlciIsIHsid29ya2VySWQiOiB7Im9wdGlvbmFsIjogZmFsc2UsICJ0eXBlIjogIm51
bWJlciJ9fSwgW10pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyQ29tbWFuZCgiV29ya2VyLmRp
c2Nvbm5lY3RGcm9tV29ya2VyIiwgeyJ3b3JrZXJJZCI6IHsib3B0aW9uYWwiOiBmYWxzZSwgInR5
cGUiOiAibnVtYmVyIn19LCBbXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb21tYW5kKCJX
b3JrZXIuc2V0QXV0b2Nvbm5lY3RUb1dvcmtlcnMiLCB7InZhbHVlIjogeyJvcHRpb25hbCI6IGZh
bHNlLCAidHlwZSI6ICJib29sZWFuIn19LCBbXSk7CgpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVy
RXZlbnQoIkluc3BlY3Rvci5ldmFsdWF0ZUZvclRlc3RJbkZyb250ZW5kIiwgWyJ0ZXN0Q2FsbElk
IiwgInNjcmlwdCJdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckV2ZW50KCJJbnNwZWN0b3Iu
aW5zcGVjdCIsIFsib2JqZWN0IiwgImhpbnRzIl0pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVy
RXZlbnQoIkluc3BlY3Rvci5kaWRDcmVhdGVXb3JrZXIiLCBbImlkIiwgInVybCIsICJpc1NoYXJl
ZCJdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckV2ZW50KCJJbnNwZWN0b3IuZGlkRGVzdHJv
eVdvcmtlciIsIFsiaWQiXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJFdmVudCgiUGFnZS5k
b21Db250ZW50RXZlbnRGaXJlZCIsIFsidGltZXN0YW1wIl0pOwpJbnNwZWN0b3JCYWNrZW5kLnJl
Z2lzdGVyRXZlbnQoIlBhZ2UubG9hZEV2ZW50RmlyZWQiLCBbInRpbWVzdGFtcCJdKTsKSW5zcGVj
dG9yQmFja2VuZC5yZWdpc3RlckV2ZW50KCJQYWdlLmZyYW1lTmF2aWdhdGVkIiwgWyJmcmFtZSJd
KTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckV2ZW50KCJQYWdlLmZyYW1lRGV0YWNoZWQiLCBb
ImZyYW1lSWQiXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJFdmVudCgiQ29uc29sZS5tZXNz
YWdlQWRkZWQiLCBbIm1lc3NhZ2UiXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJFdmVudCgi
Q29uc29sZS5tZXNzYWdlUmVwZWF0Q291bnRVcGRhdGVkIiwgWyJjb3VudCJdKTsKSW5zcGVjdG9y
QmFja2VuZC5yZWdpc3RlckV2ZW50KCJDb25zb2xlLm1lc3NhZ2VzQ2xlYXJlZCIsIFtdKTsKSW5z
cGVjdG9yQmFja2VuZC5yZWdpc3RlckV2ZW50KCJOZXR3b3JrLnJlcXVlc3RXaWxsQmVTZW50Iiwg
WyJyZXF1ZXN0SWQiLCAiZnJhbWVJZCIsICJsb2FkZXJJZCIsICJkb2N1bWVudFVSTCIsICJyZXF1
ZXN0IiwgInRpbWVzdGFtcCIsICJpbml0aWF0b3IiLCAic3RhY2tUcmFjZSIsICJyZWRpcmVjdFJl
c3BvbnNlIl0pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyRXZlbnQoIk5ldHdvcmsucmVxdWVz
dFNlcnZlZEZyb21DYWNoZSIsIFsicmVxdWVzdElkIl0pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lz
dGVyRXZlbnQoIk5ldHdvcmsucmVzcG9uc2VSZWNlaXZlZCIsIFsicmVxdWVzdElkIiwgImZyYW1l
SWQiLCAibG9hZGVySWQiLCAidGltZXN0YW1wIiwgInR5cGUiLCAicmVzcG9uc2UiXSk7Ckluc3Bl
Y3RvckJhY2tlbmQucmVnaXN0ZXJFdmVudCgiTmV0d29yay5kYXRhUmVjZWl2ZWQiLCBbInJlcXVl
c3RJZCIsICJ0aW1lc3RhbXAiLCAiZGF0YUxlbmd0aCIsICJlbmNvZGVkRGF0YUxlbmd0aCJdKTsK
SW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckV2ZW50KCJOZXR3b3JrLmxvYWRpbmdGaW5pc2hlZCIs
IFsicmVxdWVzdElkIiwgInRpbWVzdGFtcCJdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckV2
ZW50KCJOZXR3b3JrLmxvYWRpbmdGYWlsZWQiLCBbInJlcXVlc3RJZCIsICJ0aW1lc3RhbXAiLCAi
ZXJyb3JUZXh0IiwgImNhbmNlbGVkIl0pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyRXZlbnQo
Ik5ldHdvcmsucmVxdWVzdFNlcnZlZEZyb21NZW1vcnlDYWNoZSIsIFsicmVxdWVzdElkIiwgImZy
YW1lSWQiLCAibG9hZGVySWQiLCAiZG9jdW1lbnRVUkwiLCAidGltZXN0YW1wIiwgImluaXRpYXRv
ciIsICJyZXNvdXJjZSJdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckV2ZW50KCJOZXR3b3Jr
LndlYlNvY2tldFdpbGxTZW5kSGFuZHNoYWtlUmVxdWVzdCIsIFsicmVxdWVzdElkIiwgInRpbWVz
dGFtcCIsICJyZXF1ZXN0Il0pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyRXZlbnQoIk5ldHdv
cmsud2ViU29ja2V0SGFuZHNoYWtlUmVzcG9uc2VSZWNlaXZlZCIsIFsicmVxdWVzdElkIiwgInRp
bWVzdGFtcCIsICJyZXNwb25zZSJdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckV2ZW50KCJO
ZXR3b3JrLndlYlNvY2tldENyZWF0ZWQiLCBbInJlcXVlc3RJZCIsICJ1cmwiXSk7Ckluc3BlY3Rv
ckJhY2tlbmQucmVnaXN0ZXJFdmVudCgiTmV0d29yay53ZWJTb2NrZXRDbG9zZWQiLCBbInJlcXVl
c3RJZCIsICJ0aW1lc3RhbXAiXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJFdmVudCgiRGF0
YWJhc2UuYWRkRGF0YWJhc2UiLCBbImRhdGFiYXNlIl0pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lz
dGVyRXZlbnQoIkRhdGFiYXNlLnNxbFRyYW5zYWN0aW9uU3VjY2VlZGVkIiwgWyJ0cmFuc2FjdGlv
bklkIiwgImNvbHVtbk5hbWVzIiwgInZhbHVlcyJdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3Rl
ckV2ZW50KCJEYXRhYmFzZS5zcWxUcmFuc2FjdGlvbkZhaWxlZCIsIFsidHJhbnNhY3Rpb25JZCIs
ICJzcWxFcnJvciJdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckV2ZW50KCJET01TdG9yYWdl
LmFkZERPTVN0b3JhZ2UiLCBbInN0b3JhZ2UiXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJF
dmVudCgiRE9NU3RvcmFnZS51cGRhdGVET01TdG9yYWdlIiwgWyJzdG9yYWdlSWQiXSk7Ckluc3Bl
Y3RvckJhY2tlbmQucmVnaXN0ZXJFdmVudCgiQXBwbGljYXRpb25DYWNoZS5hcHBsaWNhdGlvbkNh
Y2hlU3RhdHVzVXBkYXRlZCIsIFsiZnJhbWVJZCIsICJtYW5pZmVzdFVSTCIsICJzdGF0dXMiXSk7
Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJFdmVudCgiQXBwbGljYXRpb25DYWNoZS5uZXR3b3Jr
U3RhdGVVcGRhdGVkIiwgWyJpc05vd09ubGluZSJdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3Rl
ckV2ZW50KCJET00uZG9jdW1lbnRVcGRhdGVkIiwgW10pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lz
dGVyRXZlbnQoIkRPTS5zZXRDaGlsZE5vZGVzIiwgWyJwYXJlbnRJZCIsICJub2RlcyJdKTsKSW5z
cGVjdG9yQmFja2VuZC5yZWdpc3RlckV2ZW50KCJET00uYXR0cmlidXRlTW9kaWZpZWQiLCBbIm5v
ZGVJZCIsICJuYW1lIiwgInZhbHVlIl0pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyRXZlbnQo
IkRPTS5hdHRyaWJ1dGVSZW1vdmVkIiwgWyJub2RlSWQiLCAibmFtZSJdKTsKSW5zcGVjdG9yQmFj
a2VuZC5yZWdpc3RlckV2ZW50KCJET00uaW5saW5lU3R5bGVJbnZhbGlkYXRlZCIsIFsibm9kZUlk
cyJdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckV2ZW50KCJET00uY2hhcmFjdGVyRGF0YU1v
ZGlmaWVkIiwgWyJub2RlSWQiLCAiY2hhcmFjdGVyRGF0YSJdKTsKSW5zcGVjdG9yQmFja2VuZC5y
ZWdpc3RlckV2ZW50KCJET00uY2hpbGROb2RlQ291bnRVcGRhdGVkIiwgWyJub2RlSWQiLCAiY2hp
bGROb2RlQ291bnQiXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJFdmVudCgiRE9NLmNoaWxk
Tm9kZUluc2VydGVkIiwgWyJwYXJlbnROb2RlSWQiLCAicHJldmlvdXNOb2RlSWQiLCAibm9kZSJd
KTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckV2ZW50KCJET00uY2hpbGROb2RlUmVtb3ZlZCIs
IFsicGFyZW50Tm9kZUlkIiwgIm5vZGVJZCJdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckV2
ZW50KCJUaW1lbGluZS5ldmVudFJlY29yZGVkIiwgWyJyZWNvcmQiXSk7Ckluc3BlY3RvckJhY2tl
bmQucmVnaXN0ZXJFdmVudCgiRGVidWdnZXIuZ2xvYmFsT2JqZWN0Q2xlYXJlZCIsIFtdKTsKSW5z
cGVjdG9yQmFja2VuZC5yZWdpc3RlckV2ZW50KCJEZWJ1Z2dlci5zY3JpcHRQYXJzZWQiLCBbInNj
cmlwdElkIiwgInVybCIsICJzdGFydExpbmUiLCAic3RhcnRDb2x1bW4iLCAiZW5kTGluZSIsICJl
bmRDb2x1bW4iLCAiaXNDb250ZW50U2NyaXB0Il0pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVy
RXZlbnQoIkRlYnVnZ2VyLnNjcmlwdEZhaWxlZFRvUGFyc2UiLCBbInVybCIsICJzY3JpcHRTb3Vy
Y2UiLCAic3RhcnRMaW5lIiwgImVycm9yTGluZSIsICJlcnJvck1lc3NhZ2UiXSk7Ckluc3BlY3Rv
ckJhY2tlbmQucmVnaXN0ZXJFdmVudCgiRGVidWdnZXIuYnJlYWtwb2ludFJlc29sdmVkIiwgWyJi
cmVha3BvaW50SWQiLCAibG9jYXRpb24iXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJFdmVu
dCgiRGVidWdnZXIucGF1c2VkIiwgWyJjYWxsRnJhbWVzIiwgInJlYXNvbiIsICJkYXRhIl0pOwpJ
bnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyRXZlbnQoIkRlYnVnZ2VyLnJlc3VtZWQiLCBbXSk7Cklu
c3BlY3RvckJhY2tlbmQucmVnaXN0ZXJFdmVudCgiUHJvZmlsZXIuYWRkUHJvZmlsZUhlYWRlciIs
IFsiaGVhZGVyIl0pOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyRXZlbnQoIlByb2ZpbGVyLmFk
ZEhlYXBTbmFwc2hvdENodW5rIiwgWyJ1aWQiLCAiY2h1bmsiXSk7Ckluc3BlY3RvckJhY2tlbmQu
cmVnaXN0ZXJFdmVudCgiUHJvZmlsZXIuZmluaXNoSGVhcFNuYXBzaG90IiwgWyJ1aWQiXSk7Cklu
c3BlY3RvckJhY2tlbmQucmVnaXN0ZXJFdmVudCgiUHJvZmlsZXIuc2V0UmVjb3JkaW5nUHJvZmls
ZSIsIFsiaXNQcm9maWxpbmciXSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJFdmVudCgiUHJv
ZmlsZXIucmVzZXRQcm9maWxlcyIsIFtdKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckV2ZW50
KCJQcm9maWxlci5yZXBvcnRIZWFwU25hcHNob3RQcm9ncmVzcyIsIFsiZG9uZSIsICJ0b3RhbCJd
KTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckV2ZW50KCJXb3JrZXIud29ya2VyQ3JlYXRlZCIs
IFsid29ya2VySWQiLCAidXJsIiwgImluc3BlY3RvckNvbm5lY3RlZCJdKTsKSW5zcGVjdG9yQmFj
a2VuZC5yZWdpc3RlckV2ZW50KCJXb3JrZXIud29ya2VyVGVybWluYXRlZCIsIFsid29ya2VySWQi
XSk7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJFdmVudCgiV29ya2VyLmRpc3BhdGNoTWVzc2Fn
ZUZyb21Xb3JrZXIiLCBbIndvcmtlcklkIiwgIm1lc3NhZ2UiXSk7Ckluc3BlY3RvckJhY2tlbmQu
cmVnaXN0ZXJFdmVudCgiV29ya2VyLmRpc2Nvbm5lY3RlZEZyb21Xb3JrZXIiLCBbXSk7CgpJbnNw
ZWN0b3JCYWNrZW5kLnJlZ2lzdGVySW5zcGVjdG9yRGlzcGF0Y2hlciA9IEluc3BlY3RvckJhY2tl
bmQucmVnaXN0ZXJEb21haW5EaXNwYXRjaGVyLmJpbmQoSW5zcGVjdG9yQmFja2VuZCwgIkluc3Bl
Y3RvciIpOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyUGFnZURpc3BhdGNoZXIgPSBJbnNwZWN0
b3JCYWNrZW5kLnJlZ2lzdGVyRG9tYWluRGlzcGF0Y2hlci5iaW5kKEluc3BlY3RvckJhY2tlbmQs
ICJQYWdlIik7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJDb25zb2xlRGlzcGF0Y2hlciA9IElu
c3BlY3RvckJhY2tlbmQucmVnaXN0ZXJEb21haW5EaXNwYXRjaGVyLmJpbmQoSW5zcGVjdG9yQmFj
a2VuZCwgIkNvbnNvbGUiKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3Rlck5ldHdvcmtEaXNwYXRj
aGVyID0gSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckRvbWFpbkRpc3BhdGNoZXIuYmluZChJbnNw
ZWN0b3JCYWNrZW5kLCAiTmV0d29yayIpOwpJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyRGF0YWJh
c2VEaXNwYXRjaGVyID0gSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckRvbWFpbkRpc3BhdGNoZXIu
YmluZChJbnNwZWN0b3JCYWNrZW5kLCAiRGF0YWJhc2UiKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdp
c3RlckRPTVN0b3JhZ2VEaXNwYXRjaGVyID0gSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlckRvbWFp
bkRpc3BhdGNoZXIuYmluZChJbnNwZWN0b3JCYWNrZW5kLCAiRE9NU3RvcmFnZSIpOwpJbnNwZWN0
b3JCYWNrZW5kLnJlZ2lzdGVyQXBwbGljYXRpb25DYWNoZURpc3BhdGNoZXIgPSBJbnNwZWN0b3JC
YWNrZW5kLnJlZ2lzdGVyRG9tYWluRGlzcGF0Y2hlci5iaW5kKEluc3BlY3RvckJhY2tlbmQsICJB
cHBsaWNhdGlvbkNhY2hlIik7Ckluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJGaWxlU3lzdGVtRGlz
cGF0Y2hlciA9IEluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJEb21haW5EaXNwYXRjaGVyLmJpbmQo
SW5zcGVjdG9yQmFja2VuZCwgIkZpbGVTeXN0ZW0iKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3Rl
ckRPTURpc3BhdGNoZXIgPSBJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVyRG9tYWluRGlzcGF0Y2hl
ci5iaW5kKEluc3BlY3RvckJhY2tlbmQsICJET00iKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3Rl
clRpbWVsaW5lRGlzcGF0Y2hlciA9IEluc3BlY3RvckJhY2tlbmQucmVnaXN0ZXJEb21haW5EaXNw
YXRjaGVyLmJpbmQoSW5zcGVjdG9yQmFja2VuZCwgIlRpbWVsaW5lIik7Ckluc3BlY3RvckJhY2tl
bmQucmVnaXN0ZXJEZWJ1Z2dlckRpc3BhdGNoZXIgPSBJbnNwZWN0b3JCYWNrZW5kLnJlZ2lzdGVy
RG9tYWluRGlzcGF0Y2hlci5iaW5kKEluc3BlY3RvckJhY2tlbmQsICJEZWJ1Z2dlciIpOwpJbnNw
ZWN0b3JCYWNrZW5kLnJlZ2lzdGVyUHJvZmlsZXJEaXNwYXRjaGVyID0gSW5zcGVjdG9yQmFja2Vu
ZC5yZWdpc3RlckRvbWFpbkRpc3BhdGNoZXIuYmluZChJbnNwZWN0b3JCYWNrZW5kLCAiUHJvZmls
ZXIiKTsKSW5zcGVjdG9yQmFja2VuZC5yZWdpc3RlcldvcmtlckRpc3BhdGNoZXIgPSBJbnNwZWN0
b3JCYWNrZW5kLnJlZ2lzdGVyRG9tYWluRGlzcGF0Y2hlci5iaW5kKEluc3BlY3RvckJhY2tlbmQs
ICJXb3JrZXIiKTsKCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>