<?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>114559</bug_id>
          
          <creation_ts>2013-04-13 03:42:34 -0700</creation_ts>
          <short_desc>Merge AbstractDeclarativeCommand into Command as a comment suggests</short_desc>
          <delta_ts>2013-04-13 10:38:02 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Ryosuke Niwa">rniwa</assigned_to>
          <cc>benjamin</cc>
    
    <cc>dpranke</cc>
    
    <cc>koivisto</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>875137</commentid>
    <comment_count>0</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-04-13 03:42:34 -0700</bug_when>
    <thetext>Merge AbstractDeclarativeCommand into Command as a comment suggests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>875138</commentid>
    <comment_count>1</comment_count>
      <attachid>197931</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-04-13 03:44:10 -0700</bug_when>
    <thetext>Created attachment 197931
Cleanup</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>875198</commentid>
    <comment_count>2</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-04-13 10:38:02 -0700</bug_when>
    <thetext>Committed r148360: &lt;http://trac.webkit.org/changeset/148360&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>197931</attachid>
            <date>2013-04-13 03:44:10 -0700</date>
            <delta_ts>2013-04-13 03:46:52 -0700</delta_ts>
            <desc>Cleanup</desc>
            <filename>bug-114559-20130413034346.patch</filename>
            <type>text/plain</type>
            <size>34561</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDE0ODM1NCkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDkwIEBACisyMDEzLTA0LTEzICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgor
CisgICAgICAgIE1lcmdlIEFic3RyYWN0RGVjbGFyYXRpdmVDb21tYW5kIGludG8gQ29tbWFuZCBh
cyBhIGNvbW1lbnQgc3VnZ2VzdHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTExNDU1OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIE1lcmdlZCB0d28gY2xhc3NlcyBhcyB0aGUgY29tbWVudCByaWdodCBhYm92
ZSBBYnN0cmFjdERlY2xhcmF0aXZlQ29tbWFuZCBzdWdnZXN0ZWQuCisgICAgICAgIFdlIG5lZWQg
dG8gbWVyZ2UgYSBsb3QgbW9yZSBjbGFzc2VzIHRvIG1ha2Ugd2Via2l0cHkgaGFja2FibGUuCisK
KyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvYWJzdHJhY3Rsb2NhbHNl
cnZlcmNvbW1hbmQucHk6CisgICAgICAgIChBYnN0cmFjdExvY2FsU2VydmVyQ29tbWFuZCk6Cisg
ICAgICAgIChBYnN0cmFjdExvY2FsU2VydmVyQ29tbWFuZC5fX2luaXRfXyk6CisgICAgICAgICog
U2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL2Fic3RyYWN0c2VxdWVuY2VkY29tbWFuZC5w
eToKKyAgICAgICAgKEFic3RyYWN0U2VxdWVuY2VkQ29tbWFuZCk6CisgICAgICAgIChBYnN0cmFj
dFNlcXVlbmNlZENvbW1hbmQuX19pbml0X18pOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkv
dG9vbC9jb21tYW5kcy9hZGR1c2Vyc3RvZ3JvdXBzLnB5OgorICAgICAgICAoQWRkVXNlcnNUb0dy
b3Vwcyk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL2FuYWx5emVj
aGFuZ2Vsb2cucHk6CisgICAgICAgIChBbmFseXplQ2hhbmdlTG9nKToKKyAgICAgICAgKEFuYWx5
emVDaGFuZ2VMb2cuX19pbml0X18pOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9j
b21tYW5kcy9hbmFseXplY2hhbmdlbG9nX3VuaXR0ZXN0LnB5OgorICAgICAgICAqIFNjcmlwdHMv
d2Via2l0cHkvdG9vbC9jb21tYW5kcy9idWdmb3J0ZXN0LnB5OgorICAgICAgICAoQnVnRm9yVGVz
dCk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL2J1Z3NlYXJjaC5w
eToKKyAgICAgICAgKEJ1Z1NlYXJjaCk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS90b29s
L2NvbW1hbmRzL2Nocm9tZWNoYW5uZWxzLnB5OgorICAgICAgICAoQ2hyb21lQ2hhbm5lbHMpOgor
ICAgICAgICAoX19pbml0X18pOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9jb21t
YW5kcy9kb3dubG9hZC5weToKKyAgICAgICAgKEFic3RyYWN0UGF0Y2hQcm9jZXNzaW5nQ29tbWFu
ZCk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL2ZpbmR1c2Vycy5w
eToKKyAgICAgICAgKEZpbmRVc2Vycyk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS90b29s
L2NvbW1hbmRzL29wZW5idWdzLnB5OgorICAgICAgICAoT3BlbkJ1Z3MpOgorICAgICAgICAqIFNj
cmlwdHMvd2Via2l0cHkvdG9vbC9jb21tYW5kcy9xdWVyaWVzLnB5OgorICAgICAgICAoQnVnc1Rv
Q29tbWl0KToKKyAgICAgICAgKFBhdGNoZXNJbkNvbW1pdFF1ZXVlKToKKyAgICAgICAgKFBhdGNo
ZXNUb0NvbW1pdFF1ZXVlKToKKyAgICAgICAgKFBhdGNoZXNUb0NvbW1pdFF1ZXVlLl9faW5pdF9f
KToKKyAgICAgICAgKFBhdGNoZXNUb1Jldmlldyk6CisgICAgICAgIChQYXRjaGVzVG9SZXZpZXcu
X19pbml0X18pOgorICAgICAgICAoUGF0Y2hlc1RvUmV2aWV3LmV4ZWN1dGUpOgorICAgICAgICAo
V2hhdEJyb2tlKToKKyAgICAgICAgKFJlc3VsdHNGb3IpOgorICAgICAgICAoRmFpbHVyZVJlYXNv
bik6CisgICAgICAgIChGaW5kRmxha3lUZXN0cyk6CisgICAgICAgIChUcmVlU3RhdHVzKToKKyAg
ICAgICAgKENyYXNoTG9nKToKKyAgICAgICAgKFByaW50RXhwZWN0YXRpb25zKToKKyAgICAgICAg
KFByaW50RXhwZWN0YXRpb25zLl9faW5pdF9fKToKKyAgICAgICAgKFByaW50QmFzZWxpbmVzKToK
KyAgICAgICAgKFByaW50QmFzZWxpbmVzLl9faW5pdF9fKToKKyAgICAgICAgKiBTY3JpcHRzL3dl
YmtpdHB5L3Rvb2wvY29tbWFuZHMvcXVldWVzLnB5OgorICAgICAgICAoQWJzdHJhY3RRdWV1ZS5f
X2luaXRfXyk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL3JlYmFz
ZWxpbmUucHk6CisgICAgICAgIChBYnN0cmFjdFJlYmFzZWxpbmluZ0NvbW1hbmQpOgorICAgICAg
ICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9jb21tYW5kcy9zdWdnZXN0bm9taW5hdGlvbnMucHk6
CisgICAgICAgIChTdWdnZXN0Tm9taW5hdGlvbnMpOgorICAgICAgICAoU3VnZ2VzdE5vbWluYXRp
b25zLl9faW5pdF9fKToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMv
dXBsb2FkLnB5OgorICAgICAgICAoQ29tbWl0TWVzc2FnZUZvckN1cnJlbnREaWZmKToKKyAgICAg
ICAgKENvbW1pdE1lc3NhZ2VGb3JDdXJyZW50RGlmZi5fX2luaXRfXyk6CisgICAgICAgIChDbGVh
blBlbmRpbmdDb21taXQpOgorICAgICAgICAoQ2xlYW5SZXZpZXdRdWV1ZSk6CisgICAgICAgIChB
c3NpZ25Ub0NvbW1pdHRlcik6CisgICAgICAgIChQb3N0Q29tbWl0cyk6CisgICAgICAgIChQb3N0
Q29tbWl0cy5fX2luaXRfXyk6CisgICAgICAgIChNYXJrQnVnRml4ZWQpOgorICAgICAgICAoTWFy
a0J1Z0ZpeGVkLl9faW5pdF9fKToKKyAgICAgICAgKENyZWF0ZUJ1Zyk6CisgICAgICAgIChDcmVh
dGVCdWcuX19pbml0X18pOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9tdWx0aWNv
bW1hbmR0b29sLnB5OgorICAgICAgICAoQ29tbWFuZCk6CisgICAgICAgIChDb21tYW5kLl9faW5p
dF9fKToKKyAgICAgICAgKENvbW1hbmQubWFpbik6CisgICAgICAgIChIZWxwQ29tbWFuZCk6Cisg
ICAgICAgIChIZWxwQ29tbWFuZC5fX2luaXRfXyk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRw
eS90b29sL211bHRpY29tbWFuZHRvb2xfdW5pdHRlc3QucHk6CisgICAgICAgIChUcml2aWFsQ29t
bWFuZCk6CisgICAgICAgIChUcml2aWFsQ29tbWFuZC5fX2luaXRfXyk6CisgICAgICAgIChMaWtl
c1RvUmV0cnkpOgorICAgICAgICAoTGlrZXNUb1JldHJ5Ll9faW5pdF9fKToKKyAgICAgICAgKENv
bW1hbmRUZXN0LnRlc3RfbmFtZV93aXRoX2FyZ3VtZW50cyk6CisgICAgICAgIChDb21tYW5kVGVz
dC50ZXN0X3JlcXVpcmVkX2FyZ3VtZW50cyk6CisgICAgICAgICh0ZXN0X2NvbW1hbmRfaGVscCk6
CisKIDIwMTMtMDQtMTMgIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5vcmc+CiAKICAgICAg
ICAgTWVyZ2Ugd2F0Y2hsaXN0bG9hZGVyIGludG8gaG9zdCBzaW5jZSBpdCdzIGFuIHVubmVjZXNz
YXJ5IGluZGlyZWN0aW9uCkluZGV4OiBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvbXVsdGlj
b21tYW5kdG9vbC5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wv
bXVsdGljb21tYW5kdG9vbC5weQkocmV2aXNpb24gMTQ4MzUyKQorKysgVG9vbHMvU2NyaXB0cy93
ZWJraXRweS90b29sL211bHRpY29tbWFuZHRvb2wucHkJKHdvcmtpbmcgY29weSkKQEAgLTQ4LDEx
ICs0OCwxMiBAQCBjbGFzcyBUcnlBZ2FpbihFeGNlcHRpb24pOgogY2xhc3MgQ29tbWFuZChvYmpl
Y3QpOgogICAgIG5hbWUgPSBOb25lCiAgICAgc2hvd19pbl9tYWluX2hlbHAgPSBGYWxzZQotICAg
IGRlZiBfX2luaXRfXyhzZWxmLCBoZWxwX3RleHQsIGFyZ3VtZW50X25hbWVzPU5vbmUsIG9wdGlv
bnM9Tm9uZSwgbG9uZ19oZWxwPU5vbmUsIHJlcXVpcmVzX2xvY2FsX2NvbW1pdHM9RmFsc2UpOgot
ICAgICAgICBzZWxmLmhlbHBfdGV4dCA9IGhlbHBfdGV4dAotICAgICAgICBzZWxmLmxvbmdfaGVs
cCA9IGxvbmdfaGVscAotICAgICAgICBzZWxmLmFyZ3VtZW50X25hbWVzID0gYXJndW1lbnRfbmFt
ZXMKLSAgICAgICAgc2VsZi5yZXF1aXJlZF9hcmd1bWVudHMgPSBzZWxmLl9wYXJzZV9yZXF1aXJl
ZF9hcmd1bWVudHMoYXJndW1lbnRfbmFtZXMpCisgICAgaGVscF90ZXh0ID0gTm9uZQorICAgIGxv
bmdfaGVscCA9IE5vbmUKKyAgICBhcmd1bWVudF9uYW1lcyA9IE5vbmUKKworICAgIGRlZiBfX2lu
aXRfXyhzZWxmLCBvcHRpb25zPU5vbmUsIHJlcXVpcmVzX2xvY2FsX2NvbW1pdHM9RmFsc2UpOgor
ICAgICAgICBzZWxmLnJlcXVpcmVkX2FyZ3VtZW50cyA9IHNlbGYuX3BhcnNlX3JlcXVpcmVkX2Fy
Z3VtZW50cyhzZWxmLmFyZ3VtZW50X25hbWVzKQogICAgICAgICBzZWxmLm9wdGlvbnMgPSBvcHRp
b25zCiAgICAgICAgIHNlbGYucmVxdWlyZXNfbG9jYWxfY29tbWl0cyA9IHJlcXVpcmVzX2xvY2Fs
X2NvbW1pdHMKICAgICAgICAgc2VsZi5fdG9vbCA9IE5vbmUKQEAgLTEzOSwxNSArMTQwLDYgQEAg
Y2xhc3MgQ29tbWFuZChvYmplY3QpOgogICAgICAgICByZXR1cm4gc2VsZi5jaGVja19hcmd1bWVu
dHNfYW5kX2V4ZWN1dGUob3B0aW9ucywgYXJncykKIAogCi0jIEZJWE1FOiBUaGlzIHNob3VsZCBq
dXN0IGJlIHJvbGxlZCBpbnRvIENvbW1hbmQuICBoZWxwX3RleHQgYW5kIGFyZ3VtZW50X25hbWVz
IGRvIG5vdCBuZWVkIHRvIGJlIGluc3RhbmNlIHZhcmlhYmxlcy4KLWNsYXNzIEFic3RyYWN0RGVj
bGFyYXRpdmVDb21tYW5kKENvbW1hbmQpOgotICAgIGhlbHBfdGV4dCA9IE5vbmUKLSAgICBhcmd1
bWVudF9uYW1lcyA9IE5vbmUKLSAgICBsb25nX2hlbHAgPSBOb25lCi0gICAgZGVmIF9faW5pdF9f
KHNlbGYsIG9wdGlvbnM9Tm9uZSwgKiprd2FyZ3MpOgotICAgICAgICBDb21tYW5kLl9faW5pdF9f
KHNlbGYsIHNlbGYuaGVscF90ZXh0LCBzZWxmLmFyZ3VtZW50X25hbWVzLCBvcHRpb25zPW9wdGlv
bnMsIGxvbmdfaGVscD1zZWxmLmxvbmdfaGVscCwgKiprd2FyZ3MpCi0KLQogY2xhc3MgSGVscFBy
aW50aW5nT3B0aW9uUGFyc2VyKE9wdGlvblBhcnNlcik6CiAgICAgZGVmIF9faW5pdF9fKHNlbGYs
IGVwaWxvZ19tZXRob2Q9Tm9uZSwgKmFyZ3MsICoqa3dhcmdzKToKICAgICAgICAgc2VsZi5lcGls
b2dfbWV0aG9kID0gZXBpbG9nX21ldGhvZApAQCAtMTY4LDcgKzE2MCw3IEBAIGNsYXNzIEhlbHBQ
cmludGluZ09wdGlvblBhcnNlcihPcHRpb25QYXIKICAgICAgICAgcmV0dXJuICIiCiAKIAotY2xh
c3MgSGVscENvbW1hbmQoQWJzdHJhY3REZWNsYXJhdGl2ZUNvbW1hbmQpOgorY2xhc3MgSGVscENv
bW1hbmQoQ29tbWFuZCk6CiAgICAgbmFtZSA9ICJoZWxwIgogICAgIGhlbHBfdGV4dCA9ICJEaXNw
bGF5IGluZm9ybWF0aW9uIGFib3V0IHRoaXMgcHJvZ3JhbSBvciBpdHMgc3ViY29tbWFuZHMiCiAg
ICAgYXJndW1lbnRfbmFtZXMgPSAiW0NPTU1BTkRdIgpAQCAtMTc3LDcgKzE2OSw3IEBAIGNsYXNz
IEhlbHBDb21tYW5kKEFic3RyYWN0RGVjbGFyYXRpdmVDb20KICAgICAgICAgb3B0aW9ucyA9IFsK
ICAgICAgICAgICAgIG1ha2Vfb3B0aW9uKCItYSIsICItLWFsbC1jb21tYW5kcyIsIGFjdGlvbj0i
c3RvcmVfdHJ1ZSIsIGRlc3Q9InNob3dfYWxsX2NvbW1hbmRzIiwgaGVscD0iUHJpbnQgYWxsIGF2
YWlsYWJsZSBjb21tYW5kcyIpLAogICAgICAgICBdCi0gICAgICAgIEFic3RyYWN0RGVjbGFyYXRp
dmVDb21tYW5kLl9faW5pdF9fKHNlbGYsIG9wdGlvbnMpCisgICAgICAgIENvbW1hbmQuX19pbml0
X18oc2VsZiwgb3B0aW9ucykKICAgICAgICAgc2VsZi5zaG93X2FsbF9jb21tYW5kcyA9IEZhbHNl
ICMgQSBoYWNrIHVzZWQgdG8gcGFzcyAtLWFsbC1jb21tYW5kcyB0byBfaGVscF9lcGlsb2cgZXZl
biB0aG91Z2ggaXQncyBjYWxsZWQgYnkgdGhlIE9wdGlvblBhcnNlci4KIAogICAgIGRlZiBfaGVs
cF9lcGlsb2coc2VsZik6CkluZGV4OiBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvbXVsdGlj
b21tYW5kdG9vbF91bml0dGVzdC5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL3dlYmtp
dHB5L3Rvb2wvbXVsdGljb21tYW5kdG9vbF91bml0dGVzdC5weQkocmV2aXNpb24gMTQ4MzUyKQor
KysgVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL211bHRpY29tbWFuZHRvb2xfdW5pdHRlc3Qu
cHkJKHdvcmtpbmcgY29weSkKQEAgLTM4LDggKzM4LDkgQEAgZnJvbSB3ZWJraXRweS50b29sLm11
bHRpY29tbWFuZHRvb2wgaW1wbwogY2xhc3MgVHJpdmlhbENvbW1hbmQoQ29tbWFuZCk6CiAgICAg
bmFtZSA9ICJ0cml2aWFsIgogICAgIHNob3dfaW5fbWFpbl9oZWxwID0gVHJ1ZQorICAgIGhlbHBf
dGV4dCA9ICJoZWxwIHRleHQiCiAgICAgZGVmIF9faW5pdF9fKHNlbGYsICoqa3dhcmdzKToKLSAg
ICAgICAgQ29tbWFuZC5fX2luaXRfXyhzZWxmLCAiaGVscCB0ZXh0IiwgKiprd2FyZ3MpCisgICAg
ICAgIENvbW1hbmQuX19pbml0X18oc2VsZiwgKiprd2FyZ3MpCiAKICAgICBkZWYgZXhlY3V0ZShz
ZWxmLCBvcHRpb25zLCBhcmdzLCB0b29sKToKICAgICAgICAgcGFzcwpAQCAtNTMsOSArNTQsMTAg
QEAgY2xhc3MgVW5jb21tb25Db21tYW5kKFRyaXZpYWxDb21tYW5kKToKIGNsYXNzIExpa2VzVG9S
ZXRyeShDb21tYW5kKToKICAgICBuYW1lID0gImxpa2VzLXRvLXJldHJ5IgogICAgIHNob3dfaW5f
bWFpbl9oZWxwID0gVHJ1ZQorICAgIGhlbHBfdGV4dCA9ICJoZWxwIHRleHQiCiAKICAgICBkZWYg
X19pbml0X18oc2VsZiwgKiprd2FyZ3MpOgotICAgICAgICBDb21tYW5kLl9faW5pdF9fKHNlbGYs
ICJoZWxwIHRleHQiLCAqKmt3YXJncykKKyAgICAgICAgQ29tbWFuZC5fX2luaXRfXyhzZWxmLCAq
Kmt3YXJncykKICAgICAgICAgc2VsZi5leGVjdXRlX2NvdW50ID0gMAogCiAgICAgZGVmIGV4ZWN1
dGUoc2VsZiwgb3B0aW9ucywgYXJncywgdG9vbCk6CkBAIC02Niw5ICs2OCwxMSBAQCBjbGFzcyBM
aWtlc1RvUmV0cnkoQ29tbWFuZCk6CiAKIGNsYXNzIENvbW1hbmRUZXN0KHVuaXR0ZXN0LlRlc3RD
YXNlKToKICAgICBkZWYgdGVzdF9uYW1lX3dpdGhfYXJndW1lbnRzKHNlbGYpOgotICAgICAgICBj
b21tYW5kX3dpdGhfYXJncyA9IFRyaXZpYWxDb21tYW5kKGFyZ3VtZW50X25hbWVzPSJBUkcxIEFS
RzIiKQorICAgICAgICBUcml2aWFsQ29tbWFuZC5hcmd1bWVudF9uYW1lcyA9ICJBUkcxIEFSRzIi
CisgICAgICAgIGNvbW1hbmRfd2l0aF9hcmdzID0gVHJpdmlhbENvbW1hbmQoKQogICAgICAgICBz
ZWxmLmFzc2VydEVxdWFsKGNvbW1hbmRfd2l0aF9hcmdzLm5hbWVfd2l0aF9hcmd1bWVudHMoKSwg
InRyaXZpYWwgQVJHMSBBUkcyIikKIAorICAgICAgICBUcml2aWFsQ29tbWFuZC5hcmd1bWVudF9u
YW1lcyA9IE5vbmUKICAgICAgICAgY29tbWFuZF93aXRoX2FyZ3MgPSBUcml2aWFsQ29tbWFuZChv
cHRpb25zPVttYWtlX29wdGlvbigiLS1teV9vcHRpb24iKV0pCiAgICAgICAgIHNlbGYuYXNzZXJ0
RXF1YWwoY29tbWFuZF93aXRoX2FyZ3MubmFtZV93aXRoX2FyZ3VtZW50cygpLCAidHJpdmlhbCBb
b3B0aW9uc10iKQogCkBAIC04MCw3ICs4NCw4IEBAIGNsYXNzIENvbW1hbmRUZXN0KHVuaXR0ZXN0
LlRlc3RDYXNlKToKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoRXhjZXB0aW9uLCBDb21tYW5k
Ll9wYXJzZV9yZXF1aXJlZF9hcmd1bWVudHMsICJbQVJHMSBBUkcyXSIpCiAKICAgICBkZWYgdGVz
dF9yZXF1aXJlZF9hcmd1bWVudHMoc2VsZik6Ci0gICAgICAgIHR3b19yZXF1aXJlZF9hcmd1bWVu
dHMgPSBUcml2aWFsQ29tbWFuZChhcmd1bWVudF9uYW1lcz0iQVJHMSBBUkcyIFtBUkczXSIpCisg
ICAgICAgIFRyaXZpYWxDb21tYW5kLmFyZ3VtZW50X25hbWVzID0gIkFSRzEgQVJHMiBbQVJHM10i
CisgICAgICAgIHR3b19yZXF1aXJlZF9hcmd1bWVudHMgPSBUcml2aWFsQ29tbWFuZCgpCiAgICAg
ICAgIGV4cGVjdGVkX2xvZ3MgPSAiMiBhcmd1bWVudHMgcmVxdWlyZWQsIDEgYXJndW1lbnQgcHJv
dmlkZWQuICBQcm92aWRlZDogJ2ZvbycgIFJlcXVpcmVkOiBBUkcxIEFSRzJcblNlZSAndHJpdmlh
bC10b29sIGhlbHAgdHJpdmlhbCcgZm9yIHVzYWdlLlxuIgogICAgICAgICBleGl0X2NvZGUgPSBP
dXRwdXRDYXB0dXJlKCkuYXNzZXJ0X291dHB1dHMoc2VsZiwgdHdvX3JlcXVpcmVkX2FyZ3VtZW50
cy5jaGVja19hcmd1bWVudHNfYW5kX2V4ZWN1dGUsIFtOb25lLCBbImZvbyJdLCBUcml2aWFsVG9v
bCgpXSwgZXhwZWN0ZWRfbG9ncz1leHBlY3RlZF9sb2dzKQogICAgICAgICBzZWxmLmFzc2VydEVx
dWFsKGV4aXRfY29kZSwgMSkKQEAgLTE2Nyw3ICsxNzIsOCBAQCBTZWUgJ3RyaXZpYWwtdG9vbCBo
ZWxwIENPTU1BTkQnIGZvciBtb3JlCiAKIAogICAgIGRlZiB0ZXN0X2NvbW1hbmRfaGVscChzZWxm
KToKLSAgICAgICAgY29tbWFuZF93aXRoX29wdGlvbnMgPSBUcml2aWFsQ29tbWFuZChvcHRpb25z
PVttYWtlX29wdGlvbigiLS1teV9vcHRpb24iKV0sIGxvbmdfaGVscD0iTE9ORyBIRUxQIikKKyAg
ICAgICAgY29tbWFuZF93aXRoX29wdGlvbnMgPSBUcml2aWFsQ29tbWFuZChvcHRpb25zPVttYWtl
X29wdGlvbigiLS1teV9vcHRpb24iKV0pCisgICAgICAgIGNvbW1hbmRfd2l0aF9vcHRpb25zLmxv
bmdfaGVscCA9ICJMT05HIEhFTFAiCiAgICAgICAgIHRvb2wgPSBUcml2aWFsVG9vbChjb21tYW5k
cz1bY29tbWFuZF93aXRoX29wdGlvbnNdKQogICAgICAgICBleHBlY3RlZF9zdWJjb21tYW5kX2hl
bHAgPSAidHJpdmlhbCBbb3B0aW9uc10gICBoZWxwIHRleHRcblxuTE9ORyBIRUxQXG5cbk9wdGlv
bnM6XG4gIC0tbXlfb3B0aW9uPU1ZX09QVElPTlxuXG4iCiAgICAgICAgIHNlbGYuX2Fzc2VydF90
b29sX21haW5fb3V0cHV0cyh0b29sLCBbInRvb2wiLCAiaGVscCIsICJ0cml2aWFsIl0sIGV4cGVj
dGVkX3N1YmNvbW1hbmRfaGVscCkKSW5kZXg6IFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9j
b21tYW5kcy9hYnN0cmFjdGxvY2Fsc2VydmVyY29tbWFuZC5weQo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29s
cy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvYWJzdHJhY3Rsb2NhbHNlcnZlcmNvbW1h
bmQucHkJKHJldmlzaW9uIDE0ODM1MikKKysrIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9j
b21tYW5kcy9hYnN0cmFjdGxvY2Fsc2VydmVyY29tbWFuZC5weQkod29ya2luZyBjb3B5KQpAQCAt
MjUsMTAgKzI1LDEwIEBACiBmcm9tIG9wdHBhcnNlIGltcG9ydCBtYWtlX29wdGlvbgogaW1wb3J0
IHRocmVhZGluZwogCi1mcm9tIHdlYmtpdHB5LnRvb2wubXVsdGljb21tYW5kdG9vbCBpbXBvcnQg
QWJzdHJhY3REZWNsYXJhdGl2ZUNvbW1hbmQKK2Zyb20gd2Via2l0cHkudG9vbC5tdWx0aWNvbW1h
bmR0b29sIGltcG9ydCBDb21tYW5kCiAKIAotY2xhc3MgQWJzdHJhY3RMb2NhbFNlcnZlckNvbW1h
bmQoQWJzdHJhY3REZWNsYXJhdGl2ZUNvbW1hbmQpOgorY2xhc3MgQWJzdHJhY3RMb2NhbFNlcnZl
ckNvbW1hbmQoQ29tbWFuZCk6CiAgICAgc2VydmVyID0gTm9uZQogICAgIGxhdW5jaF9wYXRoID0g
Ii8iCiAKQEAgLTM3LDcgKzM3LDcgQEAgY2xhc3MgQWJzdHJhY3RMb2NhbFNlcnZlckNvbW1hbmQo
QWJzdHJhYwogICAgICAgICAgICAgbWFrZV9vcHRpb24oIi0taHR0cGQtcG9ydCIsIGFjdGlvbj0i
c3RvcmUiLCB0eXBlPSJpbnQiLCBkZWZhdWx0PTgxMjcsIGhlbHA9IlBvcnQgdG8gdXNlIGZvciB0
aGUgSFRUUCBzZXJ2ZXIiKSwKICAgICAgICAgICAgIG1ha2Vfb3B0aW9uKCItLW5vLXNob3ctcmVz
dWx0cyIsIGFjdGlvbj0ic3RvcmVfZmFsc2UiLCBkZWZhdWx0PVRydWUsIGRlc3Q9InNob3dfcmVz
dWx0cyIsIGhlbHA9IkRvbid0IGxhdW5jaCBhIGJyb3dzZXIgd2l0aCB0aGUgcmViYXNlbGluZSBz
ZXJ2ZXIiKSwKICAgICAgICAgXQotICAgICAgICBBYnN0cmFjdERlY2xhcmF0aXZlQ29tbWFuZC5f
X2luaXRfXyhzZWxmLCBvcHRpb25zPW9wdGlvbnMpCisgICAgICAgIENvbW1hbmQuX19pbml0X18o
c2VsZiwgb3B0aW9ucz1vcHRpb25zKQogCiAgICAgZGVmIF9wcmVwYXJlX2NvbmZpZyhzZWxmLCBv
cHRpb25zLCBhcmdzLCB0b29sKToKICAgICAgICAgcmV0dXJuIE5vbmUKSW5kZXg6IFRvb2xzL1Nj
cmlwdHMvd2Via2l0cHkvdG9vbC9jb21tYW5kcy9hYnN0cmFjdHNlcXVlbmNlZGNvbW1hbmQucHkK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL2Fic3Ry
YWN0c2VxdWVuY2VkY29tbWFuZC5weQkocmV2aXNpb24gMTQ4MzUyKQorKysgVG9vbHMvU2NyaXB0
cy93ZWJraXRweS90b29sL2NvbW1hbmRzL2Fic3RyYWN0c2VxdWVuY2VkY29tbWFuZC5weQkod29y
a2luZyBjb3B5KQpAQCAtMzAsMTYgKzMwLDE2IEBAIGltcG9ydCBsb2dnaW5nCiAKIGZyb20gd2Vi
a2l0cHkuY29tbW9uLnN5c3RlbS5leGVjdXRpdmUgaW1wb3J0IFNjcmlwdEVycm9yCiBmcm9tIHdl
YmtpdHB5LnRvb2wuY29tbWFuZHMuc3RlcHNlcXVlbmNlIGltcG9ydCBTdGVwU2VxdWVuY2UKLWZy
b20gd2Via2l0cHkudG9vbC5tdWx0aWNvbW1hbmR0b29sIGltcG9ydCBBYnN0cmFjdERlY2xhcmF0
aXZlQ29tbWFuZAorZnJvbSB3ZWJraXRweS50b29sLm11bHRpY29tbWFuZHRvb2wgaW1wb3J0IENv
bW1hbmQKIAogX2xvZyA9IGxvZ2dpbmcuZ2V0TG9nZ2VyKF9fbmFtZV9fKQogCiAKLWNsYXNzIEFi
c3RyYWN0U2VxdWVuY2VkQ29tbWFuZChBYnN0cmFjdERlY2xhcmF0aXZlQ29tbWFuZCk6CitjbGFz
cyBBYnN0cmFjdFNlcXVlbmNlZENvbW1hbmQoQ29tbWFuZCk6CiAgICAgc3RlcHMgPSBOb25lCiAg
ICAgZGVmIF9faW5pdF9fKHNlbGYpOgogICAgICAgICBzZWxmLl9zZXF1ZW5jZSA9IFN0ZXBTZXF1
ZW5jZShzZWxmLnN0ZXBzKQotICAgICAgICBBYnN0cmFjdERlY2xhcmF0aXZlQ29tbWFuZC5fX2lu
aXRfXyhzZWxmLCBzZWxmLl9zZXF1ZW5jZS5vcHRpb25zKCkpCisgICAgICAgIENvbW1hbmQuX19p
bml0X18oc2VsZiwgc2VsZi5fc2VxdWVuY2Uub3B0aW9ucygpKQogCiAgICAgZGVmIF9wcmVwYXJl
X3N0YXRlKHNlbGYsIG9wdGlvbnMsIGFyZ3MsIHRvb2wpOgogICAgICAgICByZXR1cm4gTm9uZQpJ
bmRleDogVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL2FkZHVzZXJzdG9ncm91
cHMucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRz
L2FkZHVzZXJzdG9ncm91cHMucHkJKHJldmlzaW9uIDE0ODM1MikKKysrIFRvb2xzL1NjcmlwdHMv
d2Via2l0cHkvdG9vbC9jb21tYW5kcy9hZGR1c2Vyc3RvZ3JvdXBzLnB5CSh3b3JraW5nIGNvcHkp
CkBAIC0yNiwxMCArMjYsMTAgQEAKICMgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCiAjIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAKLWZy
b20gd2Via2l0cHkudG9vbC5tdWx0aWNvbW1hbmR0b29sIGltcG9ydCBBYnN0cmFjdERlY2xhcmF0
aXZlQ29tbWFuZAorZnJvbSB3ZWJraXRweS50b29sLm11bHRpY29tbWFuZHRvb2wgaW1wb3J0IENv
bW1hbmQKIAogCi1jbGFzcyBBZGRVc2Vyc1RvR3JvdXBzKEFic3RyYWN0RGVjbGFyYXRpdmVDb21t
YW5kKToKK2NsYXNzIEFkZFVzZXJzVG9Hcm91cHMoQ29tbWFuZCk6CiAgICAgbmFtZSA9ICJhZGQt
dXNlcnMtdG8tZ3JvdXBzIgogICAgIGhlbHBfdGV4dCA9ICJBZGQgdXNlcnMgbWF0Y2hpbmcgc3Vi
dHJpbmcgdG8gc3BlY2lmaWVkIGdyb3VwcyIKIApJbmRleDogVG9vbHMvU2NyaXB0cy93ZWJraXRw
eS90b29sL2NvbW1hbmRzL2FuYWx5emVjaGFuZ2Vsb2cucHkKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMv
U2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL2FuYWx5emVjaGFuZ2Vsb2cucHkJKHJldmlz
aW9uIDE0ODM1MikKKysrIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9jb21tYW5kcy9hbmFs
eXplY2hhbmdlbG9nLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0zNSwxMSArMzUsMTEgQEAgZnJvbSB3
ZWJraXRweS5jb21tb24uY2hlY2tvdXQuY2hhbmdlbG9nIAogZnJvbSB3ZWJraXRweS5jb21tb24u
Y29uZmlnLmNvbnRyaWJ1dGlvbmFyZWFzIGltcG9ydCBDb250cmlidXRpb25BcmVhcwogZnJvbSB3
ZWJraXRweS5jb21tb24uc3lzdGVtLmZpbGVzeXN0ZW0gaW1wb3J0IEZpbGVTeXN0ZW0KIGZyb20g
d2Via2l0cHkuY29tbW9uLnN5c3RlbS5leGVjdXRpdmUgaW1wb3J0IEV4ZWN1dGl2ZQotZnJvbSB3
ZWJraXRweS50b29sLm11bHRpY29tbWFuZHRvb2wgaW1wb3J0IEFic3RyYWN0RGVjbGFyYXRpdmVD
b21tYW5kCitmcm9tIHdlYmtpdHB5LnRvb2wubXVsdGljb21tYW5kdG9vbCBpbXBvcnQgQ29tbWFu
ZAogZnJvbSB3ZWJraXRweS50b29sIGltcG9ydCBzdGVwcwogCiAKLWNsYXNzIEFuYWx5emVDaGFu
Z2VMb2coQWJzdHJhY3REZWNsYXJhdGl2ZUNvbW1hbmQpOgorY2xhc3MgQW5hbHl6ZUNoYW5nZUxv
ZyhDb21tYW5kKToKICAgICBuYW1lID0gImFuYWx5emUtY2hhbmdlbG9nIgogICAgIGhlbHBfdGV4
dCA9ICJFeHBlcmltZW50YWwgY29tbWFuZCBmb3IgYW5hbHl6aW5nIGNoYW5nZSBsb2dzLiIKICAg
ICBsb25nX2hlbHAgPSAiVGhpcyBjb21tYW5kIHBhcnNlcyBjaGFuZ2Vsb2dzIGluIGEgc3BlY2lm
aWVkIGRpcmVjdG9yeSBhbmQgc3VtbWFyaXplcyB0aGUgcmVzdWx0IGFzIEpTT04gZmlsZXMuIgpA
QCAtNDgsNyArNDgsNyBAQCBjbGFzcyBBbmFseXplQ2hhbmdlTG9nKEFic3RyYWN0RGVjbGFyYXRp
CiAgICAgICAgIG9wdGlvbnMgPSBbCiAgICAgICAgICAgICBzdGVwcy5PcHRpb25zLmNoYW5nZWxv
Z19jb3VudCwKICAgICAgICAgXQotICAgICAgICBBYnN0cmFjdERlY2xhcmF0aXZlQ29tbWFuZC5f
X2luaXRfXyhzZWxmLCBvcHRpb25zPW9wdGlvbnMpCisgICAgICAgIENvbW1hbmQuX19pbml0X18o
c2VsZiwgb3B0aW9ucz1vcHRpb25zKQogCiAgICAgQHN0YXRpY21ldGhvZAogICAgIGRlZiBfZW51
bWVyYXRlX2NoYW5nZWxvZ3MoZmlsZXN5c3RlbSwgZGlybmFtZSwgY2hhbmdlbG9nX2NvdW50KToK
SW5kZXg6IFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9jb21tYW5kcy9hbmFseXplY2hhbmdl
bG9nX3VuaXR0ZXN0LnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9v
bC9jb21tYW5kcy9hbmFseXplY2hhbmdlbG9nX3VuaXR0ZXN0LnB5CShyZXZpc2lvbiAxNDgzNTIp
CisrKyBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvYW5hbHl6ZWNoYW5nZWxv
Z191bml0dGVzdC5weQkod29ya2luZyBjb3B5KQpAQCAtMzYsNyArMzYsNyBAQCBmcm9tIHdlYmtp
dHB5LmNvbW1vbi5zeXN0ZW0ub3V0cHV0Y2FwdHVyCiBmcm9tIHdlYmtpdHB5LnRvb2wuY29tbWFu
ZHMuYW5hbHl6ZWNoYW5nZWxvZyBpbXBvcnQgQW5hbHl6ZUNoYW5nZUxvZwogZnJvbSB3ZWJraXRw
eS50b29sLmNvbW1hbmRzLmFuYWx5emVjaGFuZ2Vsb2cgaW1wb3J0IENoYW5nZUxvZ0FuYWx5emVy
CiBmcm9tIHdlYmtpdHB5LnRvb2wuY29tbWFuZHMuY29tbWFuZHRlc3QgaW1wb3J0IENvbW1hbmRz
VGVzdAotZnJvbSB3ZWJraXRweS50b29sLm11bHRpY29tbWFuZHRvb2wgaW1wb3J0IEFic3RyYWN0
RGVjbGFyYXRpdmVDb21tYW5kCitmcm9tIHdlYmtpdHB5LnRvb2wubXVsdGljb21tYW5kdG9vbCBp
bXBvcnQgQ29tbWFuZAogCiAKIGNsYXNzIEFuYWx5emVDaGFuZ2VMb2dUZXN0KENvbW1hbmRzVGVz
dCk6CkluZGV4OiBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvYnVnZm9ydGVz
dC5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMv
YnVnZm9ydGVzdC5weQkocmV2aXNpb24gMTQ4MzUyKQorKysgVG9vbHMvU2NyaXB0cy93ZWJraXRw
eS90b29sL2NvbW1hbmRzL2J1Z2ZvcnRlc3QucHkJKHdvcmtpbmcgY29weSkKQEAgLTI2LDE0ICsy
NiwxNCBAQAogIyAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKICMgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KIAotZnJvbSB3ZWJraXRweS50
b29sLm11bHRpY29tbWFuZHRvb2wgaW1wb3J0IEFic3RyYWN0RGVjbGFyYXRpdmVDb21tYW5kCitm
cm9tIHdlYmtpdHB5LnRvb2wubXVsdGljb21tYW5kdG9vbCBpbXBvcnQgQ29tbWFuZAogZnJvbSB3
ZWJraXRweS50b29sLmJvdC5mbGFreXRlc3RyZXBvcnRlciBpbXBvcnQgRmxha3lUZXN0UmVwb3J0
ZXIKIAogCiAjIFRoaXMgaXMgbW9zdGx5IGEgY29tbWFuZCBmb3IgdGVzdGluZyBGbGFreVRlc3RS
ZXBvcnRlciwgaG93ZXZlcgogIyBpdCBjb3VsZCBiZSBlYXNpbHkgZXhwYW5kZWQgdG8gYXV0by1j
cmVhdGUgYnVncywgZXRjLiBpZiBhbm90aGVyCiAjIGNvbW1hbmQgb3V0c2lkZSBvZiB3ZWJraXRw
eSB3YW50ZWQgdG8gdXNlIGl0LgotY2xhc3MgQnVnRm9yVGVzdChBYnN0cmFjdERlY2xhcmF0aXZl
Q29tbWFuZCk6CitjbGFzcyBCdWdGb3JUZXN0KENvbW1hbmQpOgogICAgIG5hbWUgPSAiYnVnLWZv
ci10ZXN0IgogICAgIGhlbHBfdGV4dCA9ICJGaW5kcyB0aGUgYnVnemlsbGEgYnVnIGZvciBhIGdp
dmVuIHRlc3QiCiAKSW5kZXg6IFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9jb21tYW5kcy9i
dWdzZWFyY2gucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2Nv
bW1hbmRzL2J1Z3NlYXJjaC5weQkocmV2aXNpb24gMTQ4MzUyKQorKysgVG9vbHMvU2NyaXB0cy93
ZWJraXRweS90b29sL2NvbW1hbmRzL2J1Z3NlYXJjaC5weQkod29ya2luZyBjb3B5KQpAQCAtMjYs
MTAgKzI2LDEwIEBACiAjIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQogIyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogCi1mcm9tIHdlYmtp
dHB5LnRvb2wubXVsdGljb21tYW5kdG9vbCBpbXBvcnQgQWJzdHJhY3REZWNsYXJhdGl2ZUNvbW1h
bmQKK2Zyb20gd2Via2l0cHkudG9vbC5tdWx0aWNvbW1hbmR0b29sIGltcG9ydCBDb21tYW5kCiAK
IAotY2xhc3MgQnVnU2VhcmNoKEFic3RyYWN0RGVjbGFyYXRpdmVDb21tYW5kKToKK2NsYXNzIEJ1
Z1NlYXJjaChDb21tYW5kKToKICAgICBuYW1lID0gImJ1Zy1zZWFyY2giCiAgICAgaGVscF90ZXh0
ID0gIkxpc3QgYnVncyBtYXRjaGluZyBhIHF1ZXJ5IgogICAgIGFyZ3VtZW50X25hbWVzID0gIlFV
RVJZIgpJbmRleDogVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL2Nocm9tZWNo
YW5uZWxzLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9jb21t
YW5kcy9jaHJvbWVjaGFubmVscy5weQkocmV2aXNpb24gMTQ4MzUyKQorKysgVG9vbHMvU2NyaXB0
cy93ZWJraXRweS90b29sL2NvbW1hbmRzL2Nocm9tZWNoYW5uZWxzLnB5CSh3b3JraW5nIGNvcHkp
CkBAIC0yOSwxMiArMjksMTIgQEAKIGZyb20gb3B0cGFyc2UgaW1wb3J0IG1ha2Vfb3B0aW9uCiAK
IGZyb20gd2Via2l0cHkuY29tbW9uLm5ldC5vbWFoYXByb3h5IGltcG9ydCBPbWFoYVByb3h5Ci1m
cm9tIHdlYmtpdHB5LnRvb2wubXVsdGljb21tYW5kdG9vbCBpbXBvcnQgQWJzdHJhY3REZWNsYXJh
dGl2ZUNvbW1hbmQKK2Zyb20gd2Via2l0cHkudG9vbC5tdWx0aWNvbW1hbmR0b29sIGltcG9ydCBD
b21tYW5kCiAKIGltcG9ydCByZQogCiAKLWNsYXNzIENocm9tZUNoYW5uZWxzKEFic3RyYWN0RGVj
bGFyYXRpdmVDb21tYW5kKToKK2NsYXNzIENocm9tZUNoYW5uZWxzKENvbW1hbmQpOgogICAgIG5h
bWUgPSAiY2hyb21lLWNoYW5uZWxzIgogICAgIGhlbHBfdGV4dCA9ICJMaXN0IHdoaWNoIGNocm9t
ZSBjaGFubmVscyBpbmNsdWRlIHRoZSBwYXRjaGVzIGluIGJ1Z3MgcmV0dXJuZWQgYnkgUVVFUlku
IgogICAgIGFyZ3VtZW50X25hbWVzID0gIlFVRVJZIgpAQCAtNTMsNyArNTMsNyBAQCBkb2N1bWVu
dGF0aW9uIG9uIHRoZSBxdWVyeSBmb3JtYXQuIiIiCiAgICAgcm9sbG91dF9wYXR0ZXJuID0gIlJv
bGxlZCBvdXQgaW4gaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvWzAtOV0rIgogCiAg
ICAgZGVmIF9faW5pdF9fKHNlbGYpOgotICAgICAgICBBYnN0cmFjdERlY2xhcmF0aXZlQ29tbWFu
ZC5fX2luaXRfXyhzZWxmKQorICAgICAgICBDb21tYW5kLl9faW5pdF9fKHNlbGYpCiAgICAgICAg
IHNlbGYuX3JlX2NvbW1pdHRlZCA9IHJlLmNvbXBpbGUoc2VsZi5jb21taXRlZF9wYXR0ZXJuKQog
ICAgICAgICBzZWxmLl9yZV9yb2xsb3V0ID0gcmUuY29tcGlsZShzZWxmLnJvbGxvdXRfcGF0dGVy
bikKICAgICAgICAgc2VsZi5fb21haGFwcm94eSA9IE9tYWhhUHJveHkoKQpJbmRleDogVG9vbHMv
U2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL2Rvd25sb2FkLnB5Cj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9jb21tYW5kcy9kb3dubG9hZC5weQkocmV2aXNp
b24gMTQ4MzUyKQorKysgVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL2Rvd25s
b2FkLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0zOCw3ICszOCw3IEBAIGZyb20gd2Via2l0cHkudG9v
bC5jb21tYW5kcy5hYnN0cmFjdHNlcXUKIGZyb20gd2Via2l0cHkudG9vbC5jb21tYW5kcy5zdGVw
c2VxdWVuY2UgaW1wb3J0IFN0ZXBTZXF1ZW5jZQogZnJvbSB3ZWJraXRweS50b29sLmNvbW1lbnRz
IGltcG9ydCBidWdfY29tbWVudF9mcm9tX2NvbW1pdF90ZXh0CiBmcm9tIHdlYmtpdHB5LnRvb2wu
Z3JhbW1hciBpbXBvcnQgcGx1cmFsaXplCi1mcm9tIHdlYmtpdHB5LnRvb2wubXVsdGljb21tYW5k
dG9vbCBpbXBvcnQgQWJzdHJhY3REZWNsYXJhdGl2ZUNvbW1hbmQKK2Zyb20gd2Via2l0cHkudG9v
bC5tdWx0aWNvbW1hbmR0b29sIGltcG9ydCBDb21tYW5kCiAKIF9sb2cgPSBsb2dnaW5nLmdldExv
Z2dlcihfX25hbWVfXykKIApAQCAtMTQ1LDcgKzE0NSw3IEBAIGNsYXNzIENoZWNrU3R5bGVMb2Nh
bChBYnN0cmFjdFNlcXVlbmNlZEMKICAgICBdCiAKIAotY2xhc3MgQWJzdHJhY3RQYXRjaFByb2Nl
c3NpbmdDb21tYW5kKEFic3RyYWN0RGVjbGFyYXRpdmVDb21tYW5kKToKK2NsYXNzIEFic3RyYWN0
UGF0Y2hQcm9jZXNzaW5nQ29tbWFuZChDb21tYW5kKToKICAgICAjIFN1YmNsYXNzZXMgbXVzdCBp
bXBsZW1lbnQgdGhlIG1ldGhvZHMgYmVsb3cuICBXZSBkb24ndCBkZWNsYXJlIHRoZW0gaGVyZQog
ICAgICMgYmVjYXVzZSB3ZSB3YW50IHRvIGJlIGFibGUgdG8gaW1wbGVtZW50IHRoZW0gd2l0aCBt
aXgtaW5zLgogICAgICMKSW5kZXg6IFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9jb21tYW5k
cy9maW5kdXNlcnMucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29s
L2NvbW1hbmRzL2ZpbmR1c2Vycy5weQkocmV2aXNpb24gMTQ4MzUyKQorKysgVG9vbHMvU2NyaXB0
cy93ZWJraXRweS90b29sL2NvbW1hbmRzL2ZpbmR1c2Vycy5weQkod29ya2luZyBjb3B5KQpAQCAt
MjYsMTAgKzI2LDEwIEBACiAjIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQogIyBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogCi1mcm9tIHdl
YmtpdHB5LnRvb2wubXVsdGljb21tYW5kdG9vbCBpbXBvcnQgQWJzdHJhY3REZWNsYXJhdGl2ZUNv
bW1hbmQKK2Zyb20gd2Via2l0cHkudG9vbC5tdWx0aWNvbW1hbmR0b29sIGltcG9ydCBDb21tYW5k
CiAKIAotY2xhc3MgRmluZFVzZXJzKEFic3RyYWN0RGVjbGFyYXRpdmVDb21tYW5kKToKK2NsYXNz
IEZpbmRVc2VycyhDb21tYW5kKToKICAgICBuYW1lID0gImZpbmQtdXNlcnMiCiAgICAgaGVscF90
ZXh0ID0gIkZpbmQgdXNlcnMgbWF0Y2hpbmcgc3Vic3RyaW5nIgogCkluZGV4OiBUb29scy9TY3Jp
cHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvb3BlbmJ1Z3MucHkKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9v
bHMvU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL29wZW5idWdzLnB5CShyZXZpc2lvbiAx
NDgzNTIpCisrKyBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvb3BlbmJ1Z3Mu
cHkJKHdvcmtpbmcgY29weSkKQEAgLTMwLDEyICszMCwxMiBAQCBpbXBvcnQgbG9nZ2luZwogaW1w
b3J0IHJlCiBpbXBvcnQgc3lzCiAKLWZyb20gd2Via2l0cHkudG9vbC5tdWx0aWNvbW1hbmR0b29s
IGltcG9ydCBBYnN0cmFjdERlY2xhcmF0aXZlQ29tbWFuZAorZnJvbSB3ZWJraXRweS50b29sLm11
bHRpY29tbWFuZHRvb2wgaW1wb3J0IENvbW1hbmQKIAogX2xvZyA9IGxvZ2dpbmcuZ2V0TG9nZ2Vy
KF9fbmFtZV9fKQogCiAKLWNsYXNzIE9wZW5CdWdzKEFic3RyYWN0RGVjbGFyYXRpdmVDb21tYW5k
KToKK2NsYXNzIE9wZW5CdWdzKENvbW1hbmQpOgogICAgIG5hbWUgPSAib3Blbi1idWdzIgogICAg
IGhlbHBfdGV4dCA9ICJGaW5kcyBhbGwgYnVnIG51bWJlcnMgcGFzc2VkIGluIGFyZ3VtZW50cyAo
b3Igc3RkaW4gaWYgbm8gYXJncyBwcm92aWRlZCkgYW5kIG9wZW5zIHRoZW0gaW4gYSB3ZWIgYnJv
d3NlciIKIApJbmRleDogVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL3F1ZXJp
ZXMucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRz
L3F1ZXJpZXMucHkJKHJldmlzaW9uIDE0ODM1MikKKysrIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkv
dG9vbC9jb21tYW5kcy9xdWVyaWVzLnB5CSh3b3JraW5nIGNvcHkpCkBAIC00Niw3ICs0Niw3IEBA
IGZyb20gd2Via2l0cHkuY29tbW9uLnN5c3RlbS5jcmFzaGxvZ3MgaW0KIGZyb20gd2Via2l0cHku
Y29tbW9uLnN5c3RlbS51c2VyIGltcG9ydCBVc2VyCiBmcm9tIHdlYmtpdHB5LnRvb2wuY29tbWFu
ZHMuYWJzdHJhY3RzZXF1ZW5jZWRjb21tYW5kIGltcG9ydCBBYnN0cmFjdFNlcXVlbmNlZENvbW1h
bmQKIGZyb20gd2Via2l0cHkudG9vbC5ncmFtbWFyIGltcG9ydCBwbHVyYWxpemUKLWZyb20gd2Vi
a2l0cHkudG9vbC5tdWx0aWNvbW1hbmR0b29sIGltcG9ydCBBYnN0cmFjdERlY2xhcmF0aXZlQ29t
bWFuZAorZnJvbSB3ZWJraXRweS50b29sLm11bHRpY29tbWFuZHRvb2wgaW1wb3J0IENvbW1hbmQK
IGZyb20gd2Via2l0cHkubGF5b3V0X3Rlc3RzLm1vZGVscy50ZXN0X2V4cGVjdGF0aW9ucyBpbXBv
cnQgVGVzdEV4cGVjdGF0aW9ucwogZnJvbSB3ZWJraXRweS5sYXlvdXRfdGVzdHMucG9ydCBpbXBv
cnQgcGxhdGZvcm1fb3B0aW9ucywgY29uZmlndXJhdGlvbl9vcHRpb25zCiAKQEAgLTY0LDcgKzY0
LDcgQEAgY2xhc3MgU3VnZ2VzdFJldmlld2VycyhBYnN0cmFjdFNlcXVlbmNlZAogICAgICAgICBv
cHRpb25zLnN1Z2dlc3RfcmV2aWV3ZXJzID0gVHJ1ZQogCiAKLWNsYXNzIEJ1Z3NUb0NvbW1pdChB
YnN0cmFjdERlY2xhcmF0aXZlQ29tbWFuZCk6CitjbGFzcyBCdWdzVG9Db21taXQoQ29tbWFuZCk6
CiAgICAgbmFtZSA9ICJidWdzLXRvLWNvbW1pdCIKICAgICBoZWxwX3RleHQgPSAiTGlzdCBidWdz
IGluIHRoZSBjb21taXQtcXVldWUiCiAKQEAgLTc1LDcgKzc1LDcgQEAgY2xhc3MgQnVnc1RvQ29t
bWl0KEFic3RyYWN0RGVjbGFyYXRpdmVDbwogICAgICAgICAgICAgcHJpbnQgIiVzIiAlIGJ1Z19p
ZAogCiAKLWNsYXNzIFBhdGNoZXNJbkNvbW1pdFF1ZXVlKEFic3RyYWN0RGVjbGFyYXRpdmVDb21t
YW5kKToKK2NsYXNzIFBhdGNoZXNJbkNvbW1pdFF1ZXVlKENvbW1hbmQpOgogICAgIG5hbWUgPSAi
cGF0Y2hlcy1pbi1jb21taXQtcXVldWUiCiAgICAgaGVscF90ZXh0ID0gIkxpc3QgcGF0Y2hlcyBp
biB0aGUgY29tbWl0LXF1ZXVlIgogCkBAIC04NiwxNCArODYsMTQgQEAgY2xhc3MgUGF0Y2hlc0lu
Q29tbWl0UXVldWUoQWJzdHJhY3REZWNsYQogICAgICAgICAgICAgcHJpbnQgcGF0Y2gudXJsKCkK
IAogCi1jbGFzcyBQYXRjaGVzVG9Db21taXRRdWV1ZShBYnN0cmFjdERlY2xhcmF0aXZlQ29tbWFu
ZCk6CitjbGFzcyBQYXRjaGVzVG9Db21taXRRdWV1ZShDb21tYW5kKToKICAgICBuYW1lID0gInBh
dGNoZXMtdG8tY29tbWl0LXF1ZXVlIgogICAgIGhlbHBfdGV4dCA9ICJQYXRjaGVzIHdoaWNoIHNo
b3VsZCBiZSBhZGRlZCB0byB0aGUgY29tbWl0IHF1ZXVlIgogICAgIGRlZiBfX2luaXRfXyhzZWxm
KToKICAgICAgICAgb3B0aW9ucyA9IFsKICAgICAgICAgICAgIG1ha2Vfb3B0aW9uKCItLWJ1Z3Mi
LCBhY3Rpb249InN0b3JlX3RydWUiLCBkZXN0PSJidWdzIiwgaGVscD0iT3V0cHV0IGJ1ZyBsaW5r
cyBpbnN0ZWFkIG9mIHBhdGNoIGxpbmtzIiksCiAgICAgICAgIF0KLSAgICAgICAgQWJzdHJhY3RE
ZWNsYXJhdGl2ZUNvbW1hbmQuX19pbml0X18oc2VsZiwgb3B0aW9ucz1vcHRpb25zKQorICAgICAg
ICBDb21tYW5kLl9faW5pdF9fKHNlbGYsIG9wdGlvbnM9b3B0aW9ucykKIAogICAgIEBzdGF0aWNt
ZXRob2QKICAgICBkZWYgX25lZWRzX2NvbW1pdF9xdWV1ZShwYXRjaCk6CkBAIC0xMjAsNyArMTIw
LDcgQEAgY2xhc3MgUGF0Y2hlc1RvQ29tbWl0UXVldWUoQWJzdHJhY3REZWNsYQogICAgICAgICAg
ICAgICAgIHByaW50ICIlcyIgJSB0b29sLmJ1Z3MuYXR0YWNobWVudF91cmxfZm9yX2lkKHBhdGNo
LmlkKCksIGFjdGlvbj0iZWRpdCIpCiAKIAotY2xhc3MgUGF0Y2hlc1RvUmV2aWV3KEFic3RyYWN0
RGVjbGFyYXRpdmVDb21tYW5kKToKK2NsYXNzIFBhdGNoZXNUb1JldmlldyhDb21tYW5kKToKICAg
ICBuYW1lID0gInBhdGNoZXMtdG8tcmV2aWV3IgogICAgIGhlbHBfdGV4dCA9ICJMaXN0IGJ1Z3Mg
d2hpY2ggaGF2ZSBhdHRhY2htZW50cyBwZW5kaW5nIHJldmlldyIKIApAQCAtMTMzLDcgKzEzMyw3
IEBAIGNsYXNzIFBhdGNoZXNUb1JldmlldyhBYnN0cmFjdERlY2xhcmF0aXYKICAgICAgICAgICAg
IG1ha2Vfb3B0aW9uKCItLWNjLWVtYWlsIiwKICAgICAgICAgICAgICAgICAgICAgICAgIGhlbHA9
IlNwZWNpZmllcyB0aGUgZW1haWwgb24gdGhlIENDIGZpZWxkIChkZWZhdWx0cyB0byB5b3VyIGJ1
Z3ppbGxhIGxvZ2luIGVtYWlsKSIpLAogICAgICAgICBdCi0gICAgICAgIEFic3RyYWN0RGVjbGFy
YXRpdmVDb21tYW5kLl9faW5pdF9fKHNlbGYsIG9wdGlvbnM9b3B0aW9ucykKKyAgICAgICAgQ29t
bWFuZC5fX2luaXRfXyhzZWxmLCBvcHRpb25zPW9wdGlvbnMpCiAKICAgICBkZWYgX3ByaW50X3Jl
cG9ydChzZWxmLCByZXBvcnQsIGNjX2VtYWlsLCBwcmludF9hbGwpOgogICAgICAgICBpZiBwcmlu
dF9hbGw6CkBAIC0xNzMsNyArMTczLDggQEAgY2xhc3MgUGF0Y2hlc1RvUmV2aWV3KEFic3RyYWN0
RGVjbGFyYXRpdgogICAgICAgICByZXBvcnQgPSBzZWxmLl9nZW5lcmF0ZV9yZXBvcnQoYnVncywg
b3B0aW9ucy5pbmNsdWRlX2NxX2RlbmllZCkKICAgICAgICAgc2VsZi5fcHJpbnRfcmVwb3J0KHJl
cG9ydCwgY2NfZW1haWwsIG9wdGlvbnMuYWxsKQogCi1jbGFzcyBXaGF0QnJva2UoQWJzdHJhY3RE
ZWNsYXJhdGl2ZUNvbW1hbmQpOgorCitjbGFzcyBXaGF0QnJva2UoQ29tbWFuZCk6CiAgICAgbmFt
ZSA9ICJ3aGF0LWJyb2tlIgogICAgIGhlbHBfdGV4dCA9ICJQcmludCBmYWlsaW5nIGJ1aWxkYm90
cyAoJXMpIGFuZCB3aGF0IHJldmlzaW9ucyBicm9rZSB0aGVtIiAlIGNvbmZpZ191cmxzLmJ1aWxk
Ym90X3VybAogCkBAIC0yMTksNyArMjIwLDcgQEAgY2xhc3MgV2hhdEJyb2tlKEFic3RyYWN0RGVj
bGFyYXRpdmVDb21tYQogICAgICAgICAgICAgcHJpbnQgIkFsbCBidWlsZGVycyBhcmUgcGFzc2lu
ZyEiCiAKIAotY2xhc3MgUmVzdWx0c0ZvcihBYnN0cmFjdERlY2xhcmF0aXZlQ29tbWFuZCk6Citj
bGFzcyBSZXN1bHRzRm9yKENvbW1hbmQpOgogICAgIG5hbWUgPSAicmVzdWx0cy1mb3IiCiAgICAg
aGVscF90ZXh0ID0gIlByaW50IGEgbGlzdCBvZiBmYWlsdXJlcyBmb3IgdGhlIHBhc3NlZCByZXZp
c2lvbiBmcm9tIGJvdHMgb24gJXMiICUgY29uZmlnX3VybHMuYnVpbGRib3RfdXJsCiAgICAgYXJn
dW1lbnRfbmFtZXMgPSAiUkVWSVNJT04iCkBAIC0yNDEsNyArMjQyLDcgQEAgY2xhc3MgUmVzdWx0
c0ZvcihBYnN0cmFjdERlY2xhcmF0aXZlQ29tbQogICAgICAgICAgICAgc2VsZi5fcHJpbnRfbGF5
b3V0X3Rlc3RfcmVzdWx0cyhidWlsZC5sYXlvdXRfdGVzdF9yZXN1bHRzKCkpCiAKIAotY2xhc3Mg
RmFpbHVyZVJlYXNvbihBYnN0cmFjdERlY2xhcmF0aXZlQ29tbWFuZCk6CitjbGFzcyBGYWlsdXJl
UmVhc29uKENvbW1hbmQpOgogICAgIG5hbWUgPSAiZmFpbHVyZS1yZWFzb24iCiAgICAgaGVscF90
ZXh0ID0gIkxpc3RzIHJldmlzaW9ucyB3aGVyZSBpbmRpdmlkdWFsIHRlc3QgZmFpbHVyZXMgc3Rh
cnRlZCBhdCAlcyIgJSBjb25maWdfdXJscy5idWlsZGJvdF91cmwKIApAQCAtMzI3LDcgKzMyOCw3
IEBAIGNsYXNzIEZhaWx1cmVSZWFzb24oQWJzdHJhY3REZWNsYXJhdGl2ZUMKICAgICAgICAgcmV0
dXJuIHNlbGYuX2V4cGxhaW5fZmFpbHVyZXNfZm9yX2J1aWxkZXIoYnVpbGRlciwgc3RhcnRfcmV2
aXNpb249aW50KHN0YXJ0X3JldmlzaW9uKSkKIAogCi1jbGFzcyBGaW5kRmxha3lUZXN0cyhBYnN0
cmFjdERlY2xhcmF0aXZlQ29tbWFuZCk6CitjbGFzcyBGaW5kRmxha3lUZXN0cyhDb21tYW5kKToK
ICAgICBuYW1lID0gImZpbmQtZmxha3ktdGVzdHMiCiAgICAgaGVscF90ZXh0ID0gIkxpc3RzIHRl
c3RzIHRoYXQgb2Z0ZW4gZmFpbCBmb3IgYSBzaW5nbGUgYnVpbGQgYXQgJXMiICUgY29uZmlnX3Vy
bHMuYnVpbGRib3RfdXJsCiAKQEAgLTM5Niw3ICszOTcsNyBAQCBjbGFzcyBGaW5kRmxha3lUZXN0
cyhBYnN0cmFjdERlY2xhcmF0aXZlCiAgICAgICAgIHJldHVybiBzZWxmLl93YWxrX2JhY2t3YXJk
c19mcm9tKGJ1aWxkZXIsIGxhdGVzdF9yZXZpc2lvbiwgbGltaXQ9aW50KGxpbWl0KSkKIAogCi1j
bGFzcyBUcmVlU3RhdHVzKEFic3RyYWN0RGVjbGFyYXRpdmVDb21tYW5kKToKK2NsYXNzIFRyZWVT
dGF0dXMoQ29tbWFuZCk6CiAgICAgbmFtZSA9ICJ0cmVlLXN0YXR1cyIKICAgICBoZWxwX3RleHQg
PSAiUHJpbnQgdGhlIHN0YXR1cyBvZiB0aGUgJXMgYnVpbGRib3RzIiAlIGNvbmZpZ191cmxzLmJ1
aWxkYm90X3VybAogICAgIGxvbmdfaGVscCA9ICIiIkZldGNoZXMgYnVpbGQgc3RhdHVzIGZyb20g
aHR0cDovL2J1aWxkLndlYmtpdC5vcmcvb25lX2JveF9wZXJfYnVpbGRlcgpAQCAtNDA4LDcgKzQw
OSw3IEBAIGFuZCBkaXNwbGF5ZXMgdGhlIHN0YXR1cyBvZiBlYWNoIGJ1aWxkZXIKICAgICAgICAg
ICAgIHByaW50ICIlcyA6ICVzIiAlIChzdGF0dXNfc3RyaW5nLmxqdXN0KDQpLCBidWlsZGVyWyJu
YW1lIl0pCiAKIAotY2xhc3MgQ3Jhc2hMb2coQWJzdHJhY3REZWNsYXJhdGl2ZUNvbW1hbmQpOgor
Y2xhc3MgQ3Jhc2hMb2coQ29tbWFuZCk6CiAgICAgbmFtZSA9ICJjcmFzaC1sb2ciCiAgICAgaGVs
cF90ZXh0ID0gIlByaW50IHRoZSBuZXdlc3QgY3Jhc2ggbG9nIGZvciB0aGUgZ2l2ZW4gcHJvY2Vz
cyIKICAgICBsb25nX2hlbHAgPSAiIiJGaW5kcyB0aGUgbmV3ZXN0IGNyYXNoIGxvZyBtYXRjaGlu
ZyB0aGUgZ2l2ZW4gcHJvY2VzcyBuYW1lCkBAIC00MjMsNyArNDI0LDcgQEAgYW5kIFBJRCBhbmQg
cHJpbnRzIGl0IHRvIHN0ZG91dC4iIiIKICAgICAgICAgcHJpbnQgY3Jhc2hfbG9ncy5maW5kX25l
d2VzdF9sb2coYXJnc1swXSwgcGlkKQogCiAKLWNsYXNzIFByaW50RXhwZWN0YXRpb25zKEFic3Ry
YWN0RGVjbGFyYXRpdmVDb21tYW5kKToKK2NsYXNzIFByaW50RXhwZWN0YXRpb25zKENvbW1hbmQp
OgogICAgIG5hbWUgPSAncHJpbnQtZXhwZWN0YXRpb25zJwogICAgIGhlbHBfdGV4dCA9ICdQcmlu
dCB0aGUgZXhwZWN0ZWQgcmVzdWx0IGZvciB0aGUgZ2l2ZW4gdGVzdChzKSBvbiB0aGUgZ2l2ZW4g
cG9ydChzKScKIApAQCAtNDQzLDcgKzQ0NCw3IEBAIGNsYXNzIFByaW50RXhwZWN0YXRpb25zKEFi
c3RyYWN0RGVjbGFyYXQKICAgICAgICAgICAgICAgICAgICAgICAgIGhlbHA9J2Rpc3BsYXkgdGhl
IHBhdGhzIGZvciBhbGwgYXBwbGljYWJsZSBleHBlY3RhdGlvbiBmaWxlcycpLAogICAgICAgICBd
ICsgcGxhdGZvcm1fb3B0aW9ucyh1c2VfZ2xvYnM9VHJ1ZSkKIAotICAgICAgICBBYnN0cmFjdERl
Y2xhcmF0aXZlQ29tbWFuZC5fX2luaXRfXyhzZWxmLCBvcHRpb25zPW9wdGlvbnMpCisgICAgICAg
IENvbW1hbmQuX19pbml0X18oc2VsZiwgb3B0aW9ucz1vcHRpb25zKQogICAgICAgICBzZWxmLl9l
eHBlY3RhdGlvbl9tb2RlbHMgPSB7fQogCiAgICAgZGVmIGV4ZWN1dGUoc2VsZiwgb3B0aW9ucywg
YXJncywgdG9vbCk6CkBAIC01MTQsNyArNTE1LDcgQEAgY2xhc3MgUHJpbnRFeHBlY3RhdGlvbnMo
QWJzdHJhY3REZWNsYXJhdAogICAgICAgICByZXR1cm4gVGVzdEV4cGVjdGF0aW9ucyhwb3J0LCB0
ZXN0cykubW9kZWwoKQogCiAKLWNsYXNzIFByaW50QmFzZWxpbmVzKEFic3RyYWN0RGVjbGFyYXRp
dmVDb21tYW5kKToKK2NsYXNzIFByaW50QmFzZWxpbmVzKENvbW1hbmQpOgogICAgIG5hbWUgPSAn
cHJpbnQtYmFzZWxpbmVzJwogICAgIGhlbHBfdGV4dCA9ICdQcmludHMgdGhlIGJhc2VsaW5lIGxv
Y2F0aW9ucyBmb3IgZ2l2ZW4gdGVzdChzKSBvbiB0aGUgZ2l2ZW4gcG9ydChzKScKIApAQCAtNTI3
LDcgKzUyOCw3IEBAIGNsYXNzIFByaW50QmFzZWxpbmVzKEFic3RyYWN0RGVjbGFyYXRpdmUKICAg
ICAgICAgICAgIG1ha2Vfb3B0aW9uKCctLWluY2x1ZGUtdmlydHVhbC10ZXN0cycsIGFjdGlvbj0n
c3RvcmVfdHJ1ZScsCiAgICAgICAgICAgICAgICAgICAgICAgICBoZWxwPSdJbmNsdWRlIHZpcnR1
YWwgdGVzdHMnKSwKICAgICAgICAgXSArIHBsYXRmb3JtX29wdGlvbnModXNlX2dsb2JzPVRydWUp
Ci0gICAgICAgIEFic3RyYWN0RGVjbGFyYXRpdmVDb21tYW5kLl9faW5pdF9fKHNlbGYsIG9wdGlv
bnM9b3B0aW9ucykKKyAgICAgICAgQ29tbWFuZC5fX2luaXRfXyhzZWxmLCBvcHRpb25zPW9wdGlv
bnMpCiAgICAgICAgIHNlbGYuX3BsYXRmb3JtX3JlZ2V4cCA9IHJlLmNvbXBpbGUoJ3BsYXRmb3Jt
LyhbXlwvXSspLyguKyknKQogCiAgICAgZGVmIGV4ZWN1dGUoc2VsZiwgb3B0aW9ucywgYXJncywg
dG9vbCk6CkluZGV4OiBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvcXVldWVz
LnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9jb21tYW5kcy9x
dWV1ZXMucHkJKHJldmlzaW9uIDE0ODM1MikKKysrIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9v
bC9jb21tYW5kcy9xdWV1ZXMucHkJKHdvcmtpbmcgY29weSkKQEAgLTcyLDcgKzcyLDggQEAgY2xh
c3MgQWJzdHJhY3RRdWV1ZShDb21tYW5kLCBRdWV1ZUVuZ2luZQogICAgICAgICAgICAgbWFrZV9v
cHRpb24oIi0tbm8tY29uZmlybSIsIGFjdGlvbj0ic3RvcmVfZmFsc2UiLCBkZXN0PSJjb25maXJt
IiwgZGVmYXVsdD1UcnVlLCBoZWxwPSJEbyBub3QgYXNrIHRoZSB1c2VyIGZvciBjb25maXJtYXRp
b24gYmVmb3JlIHJ1bm5pbmcgdGhlIHF1ZXVlLiAgRGFuZ2Vyb3VzISIpLAogICAgICAgICAgICAg
bWFrZV9vcHRpb24oIi0tZXhpdC1hZnRlci1pdGVyYXRpb24iLCBhY3Rpb249InN0b3JlIiwgdHlw
ZT0iaW50IiwgZGVzdD0iaXRlcmF0aW9ucyIsIGRlZmF1bHQ9Tm9uZSwgaGVscD0iU3RvcCBydW5u
aW5nIHRoZSBxdWV1ZSBhZnRlciBpdGVyYXRpbmcgdGhpcyBudW1iZXIgb2YgdGltZXMuIiksCiAg
ICAgICAgIF0KLSAgICAgICAgQ29tbWFuZC5fX2luaXRfXyhzZWxmLCAiUnVuIHRoZSAlcyIgJSBz
ZWxmLm5hbWUsIG9wdGlvbnM9b3B0aW9uc19saXN0KQorICAgICAgICBzZWxmLmhlbHBfdGV4dCA9
ICJSdW4gdGhlICVzIiAlIHNlbGYubmFtZQorICAgICAgICBDb21tYW5kLl9faW5pdF9fKHNlbGYs
IG9wdGlvbnM9b3B0aW9uc19saXN0KQogICAgICAgICBzZWxmLl9pdGVyYXRpb25fY291bnQgPSAw
CiAKICAgICBkZWYgX2NjX3dhdGNoZXJzKHNlbGYsIGJ1Z19pZCk6CkluZGV4OiBUb29scy9TY3Jp
cHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvcmViYXNlbGluZS5weQo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBU
b29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvcmViYXNlbGluZS5weQkocmV2aXNp
b24gMTQ4MzUyKQorKysgVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL3JlYmFz
ZWxpbmUucHkJKHdvcmtpbmcgY29weSkKQEAgLTM4LDcgKzM4LDcgQEAgZnJvbSB3ZWJraXRweS5s
YXlvdXRfdGVzdHMubW9kZWxzIGltcG9ydAogZnJvbSB3ZWJraXRweS5sYXlvdXRfdGVzdHMubW9k
ZWxzLnRlc3RfZXhwZWN0YXRpb25zIGltcG9ydCBUZXN0RXhwZWN0YXRpb25zLCBCQVNFTElORV9T
VUZGSVhfTElTVAogZnJvbSB3ZWJraXRweS5sYXlvdXRfdGVzdHMucG9ydCBpbXBvcnQgYnVpbGRl
cnMKIGZyb20gd2Via2l0cHkubGF5b3V0X3Rlc3RzLnBvcnQgaW1wb3J0IGZhY3RvcnkKLWZyb20g
d2Via2l0cHkudG9vbC5tdWx0aWNvbW1hbmR0b29sIGltcG9ydCBBYnN0cmFjdERlY2xhcmF0aXZl
Q29tbWFuZAorZnJvbSB3ZWJraXRweS50b29sLm11bHRpY29tbWFuZHRvb2wgaW1wb3J0IENvbW1h
bmQKIAogCiBfbG9nID0gbG9nZ2luZy5nZXRMb2dnZXIoX19uYW1lX18pCkBAIC00OSw3ICs0OSw3
IEBAIGRlZiBfYmFzZWxpbmVfbmFtZShmcywgdGVzdF9uYW1lLCBzdWZmaXgKICAgICByZXR1cm4g
ZnMuc3BsaXRleHQodGVzdF9uYW1lKVswXSArIFRlc3RSZXN1bHRXcml0ZXIuRklMRU5BTUVfU1VG
RklYX0VYUEVDVEVEICsgIi4iICsgc3VmZml4CiAKIAotY2xhc3MgQWJzdHJhY3RSZWJhc2VsaW5p
bmdDb21tYW5kKEFic3RyYWN0RGVjbGFyYXRpdmVDb21tYW5kKToKK2NsYXNzIEFic3RyYWN0UmVi
YXNlbGluaW5nQ29tbWFuZChDb21tYW5kKToKICAgICAjIG5vdCBvdmVycmlkaW5nIGV4ZWN1dGUo
KSAtIHB5bGludDogZGlzYWJsZT1XMDIyMwogCiAgICAgbW92ZV9vdmVyd3JpdHRlbl9iYXNlbGlu
ZXNfb3B0aW9uID0gb3B0cGFyc2UubWFrZV9vcHRpb24oIi0tbW92ZS1vdmVyd3JpdHRlbi1iYXNl
bGluZXMiLCBhY3Rpb249InN0b3JlX3RydWUiLCBkZWZhdWx0PUZhbHNlLApJbmRleDogVG9vbHMv
U2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL3N1Z2dlc3Rub21pbmF0aW9ucy5weQo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvc3VnZ2VzdG5v
bWluYXRpb25zLnB5CShyZXZpc2lvbiAxNDgzNTIpCisrKyBUb29scy9TY3JpcHRzL3dlYmtpdHB5
L3Rvb2wvY29tbWFuZHMvc3VnZ2VzdG5vbWluYXRpb25zLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0z
NCwxMCArMzQsMTAgQEAgZnJvbSB3ZWJraXRweS5jb21tb24uY2hlY2tvdXQuY2hhbmdlbG9nIAog
ZnJvbSB3ZWJraXRweS5jb21tb24uY29uZmlnLmNvbW1pdHRlcnMgaW1wb3J0IENvbW1pdHRlckxp
c3QKIGZyb20gd2Via2l0cHkudG9vbCBpbXBvcnQgc3RlcHMKIGZyb20gd2Via2l0cHkudG9vbC5n
cmFtbWFyIGltcG9ydCBqb2luX3dpdGhfc2VwYXJhdG9ycwotZnJvbSB3ZWJraXRweS50b29sLm11
bHRpY29tbWFuZHRvb2wgaW1wb3J0IEFic3RyYWN0RGVjbGFyYXRpdmVDb21tYW5kCitmcm9tIHdl
YmtpdHB5LnRvb2wubXVsdGljb21tYW5kdG9vbCBpbXBvcnQgQ29tbWFuZAogCiAKLWNsYXNzIFN1
Z2dlc3ROb21pbmF0aW9ucyhBYnN0cmFjdERlY2xhcmF0aXZlQ29tbWFuZCk6CitjbGFzcyBTdWdn
ZXN0Tm9taW5hdGlvbnMoQ29tbWFuZCk6CiAgICAgbmFtZSA9ICJzdWdnZXN0LW5vbWluYXRpb25z
IgogICAgIGhlbHBfdGV4dCA9ICJTdWdnZXN0IGNvbnRyaWJ1dG9ycyBmb3IgY29tbWl0dGVyL3Jl
dmlld2VyIG5vbWluYXRpb25zIgogCkBAIC00OSw3ICs0OSw3IEBAIGNsYXNzIFN1Z2dlc3ROb21p
bmF0aW9ucyhBYnN0cmFjdERlY2xhcmEKICAgICAgICAgICAgIG1ha2Vfb3B0aW9uKCItLXNob3ct
Y29tbWl0cyIsIGFjdGlvbj0ic3RvcmVfdHJ1ZSIsIGRlc3Q9InNob3dfY29tbWl0cyIsIGRlZmF1
bHQ9RmFsc2UsIGhlbHA9IlNob3cgY29tbWl0IGhpc3Rvcnkgd2l0aCBub21pbmF0aW9uIHN1Z2dl
c3Rpb25zLiIpLAogICAgICAgICBdCiAKLSAgICAgICAgQWJzdHJhY3REZWNsYXJhdGl2ZUNvbW1h
bmQuX19pbml0X18oc2VsZiwgb3B0aW9ucz1vcHRpb25zKQorICAgICAgICBDb21tYW5kLl9faW5p
dF9fKHNlbGYsIG9wdGlvbnM9b3B0aW9ucykKICAgICAgICAgIyBGSVhNRTogVGhpcyBzaG91bGQg
cHJvYmFibHkgYmUgb24gdGhlIHRvb2wgc29tZXdoZXJlLgogICAgICAgICBzZWxmLl9jb21taXR0
ZXJfbGlzdCA9IENvbW1pdHRlckxpc3QoKQogCkluZGV4OiBUb29scy9TY3JpcHRzL3dlYmtpdHB5
L3Rvb2wvY29tbWFuZHMvdXBsb2FkLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMvd2Vi
a2l0cHkvdG9vbC9jb21tYW5kcy91cGxvYWQucHkJKHJldmlzaW9uIDE0ODM1MikKKysrIFRvb2xz
L1NjcmlwdHMvd2Via2l0cHkvdG9vbC9jb21tYW5kcy91cGxvYWQucHkJKHdvcmtpbmcgY29weSkK
QEAgLTQzLDEyICs0MywxMiBAQCBmcm9tIHdlYmtpdHB5LnRoaXJkcGFydHkubW9jayBpbXBvcnQg
TW9jCiBmcm9tIHdlYmtpdHB5LnRvb2wuY29tbWFuZHMuYWJzdHJhY3RzZXF1ZW5jZWRjb21tYW5k
IGltcG9ydCBBYnN0cmFjdFNlcXVlbmNlZENvbW1hbmQKIGZyb20gd2Via2l0cHkudG9vbC5jb21t
ZW50cyBpbXBvcnQgYnVnX2NvbW1lbnRfZnJvbV9zdm5fcmV2aXNpb24KIGZyb20gd2Via2l0cHku
dG9vbC5ncmFtbWFyIGltcG9ydCBwbHVyYWxpemUsIGpvaW5fd2l0aF9zZXBhcmF0b3JzCi1mcm9t
IHdlYmtpdHB5LnRvb2wubXVsdGljb21tYW5kdG9vbCBpbXBvcnQgQWJzdHJhY3REZWNsYXJhdGl2
ZUNvbW1hbmQKK2Zyb20gd2Via2l0cHkudG9vbC5tdWx0aWNvbW1hbmR0b29sIGltcG9ydCBDb21t
YW5kCiAKIF9sb2cgPSBsb2dnaW5nLmdldExvZ2dlcihfX25hbWVfXykKIAogCi1jbGFzcyBDb21t
aXRNZXNzYWdlRm9yQ3VycmVudERpZmYoQWJzdHJhY3REZWNsYXJhdGl2ZUNvbW1hbmQpOgorY2xh
c3MgQ29tbWl0TWVzc2FnZUZvckN1cnJlbnREaWZmKENvbW1hbmQpOgogICAgIG5hbWUgPSAiY29t
bWl0LW1lc3NhZ2UiCiAgICAgaGVscF90ZXh0ID0gIlByaW50IGEgY29tbWl0IG1lc3NhZ2Ugc3Vp
dGFibGUgZm9yIHRoZSB1bmNvbW1pdHRlZCBjaGFuZ2VzIgogCkBAIC01Niw3ICs1Niw3IEBAIGNs
YXNzIENvbW1pdE1lc3NhZ2VGb3JDdXJyZW50RGlmZihBYnN0cmEKICAgICAgICAgb3B0aW9ucyA9
IFsKICAgICAgICAgICAgIHN0ZXBzLk9wdGlvbnMuZ2l0X2NvbW1pdCwKICAgICAgICAgXQotICAg
ICAgICBBYnN0cmFjdERlY2xhcmF0aXZlQ29tbWFuZC5fX2luaXRfXyhzZWxmLCBvcHRpb25zPW9w
dGlvbnMpCisgICAgICAgIENvbW1hbmQuX19pbml0X18oc2VsZiwgb3B0aW9ucz1vcHRpb25zKQog
CiAgICAgZGVmIGV4ZWN1dGUoc2VsZiwgb3B0aW9ucywgYXJncywgdG9vbCk6CiAgICAgICAgICMg
VGhpcyBjb21tYW5kIGlzIGEgdXNlZnVsIHRlc3QgdG8gbWFrZSBzdXJlIGNvbW1pdF9tZXNzYWdl
X2Zvcl90aGlzX2NvbW1pdApAQCAtNjQsNyArNjQsNyBAQCBjbGFzcyBDb21taXRNZXNzYWdlRm9y
Q3VycmVudERpZmYoQWJzdHJhCiAgICAgICAgIHByaW50ICIlcyIgJSB0b29sLmNoZWNrb3V0KCku
Y29tbWl0X21lc3NhZ2VfZm9yX3RoaXNfY29tbWl0KG9wdGlvbnMuZ2l0X2NvbW1pdCkubWVzc2Fn
ZSgpCiAKIAotY2xhc3MgQ2xlYW5QZW5kaW5nQ29tbWl0KEFic3RyYWN0RGVjbGFyYXRpdmVDb21t
YW5kKToKK2NsYXNzIENsZWFuUGVuZGluZ0NvbW1pdChDb21tYW5kKToKICAgICBuYW1lID0gImNs
ZWFuLXBlbmRpbmctY29tbWl0IgogICAgIGhlbHBfdGV4dCA9ICJDbGVhciByKyBvbiBvYnNvbGV0
ZSBwYXRjaGVzIHNvIHRoZXkgZG8gbm90IGFwcGVhciBpbiB0aGUgcGVuZGluZy1jb21taXQgbGlz
dC4iCiAKQEAgLTk0LDcgKzk0LDcgQEAgY2xhc3MgQ2xlYW5QZW5kaW5nQ29tbWl0KEFic3RyYWN0
RGVjbGFyYQogCiAKICMgRklYTUU6IFRoaXMgc2hvdWxkIGJlIHNoYXJlIG1vcmUgbG9naWMgd2l0
aCBBc3NpZ25Ub0NvbW1pdHRlciBhbmQgQ2xlYW5QZW5kaW5nQ29tbWl0Ci1jbGFzcyBDbGVhblJl
dmlld1F1ZXVlKEFic3RyYWN0RGVjbGFyYXRpdmVDb21tYW5kKToKK2NsYXNzIENsZWFuUmV2aWV3
UXVldWUoQ29tbWFuZCk6CiAgICAgbmFtZSA9ICJjbGVhbi1yZXZpZXctcXVldWUiCiAgICAgaGVs
cF90ZXh0ID0gIkNsZWFyIHI/IG9uIG9ic29sZXRlIHBhdGNoZXMgc28gdGhleSBkbyBub3QgYXBw
ZWFyIGluIHRoZSBwZW5kaW5nLXJldmlldyBsaXN0LiIKIApAQCAtMTE5LDcgKzExOSw3IEBAIGNs
YXNzIENsZWFuUmV2aWV3UXVldWUoQWJzdHJhY3REZWNsYXJhdGkKICAgICAgICAgICAgIHNlbGYu
X3Rvb2wuYnVncy5vYnNvbGV0ZV9hdHRhY2htZW50KHBhdGNoLmlkKCksIG1lc3NhZ2UpCiAKIAot
Y2xhc3MgQXNzaWduVG9Db21taXR0ZXIoQWJzdHJhY3REZWNsYXJhdGl2ZUNvbW1hbmQpOgorY2xh
c3MgQXNzaWduVG9Db21taXR0ZXIoQ29tbWFuZCk6CiAgICAgbmFtZSA9ICJhc3NpZ24tdG8tY29t
bWl0dGVyIgogICAgIGhlbHBfdGV4dCA9ICJBc3NpZ24gYnVnIHRvIHdob2V2ZXIgYXR0YWNoZWQg
dGhlIG1vc3QgcmVjZW50IHIrJ2QgcGF0Y2giCiAKQEAgLTMwNiw3ICszMDYsNyBAQCBjbGFzcyBF
ZGl0Q2hhbmdlTG9ncyhBYnN0cmFjdFNlcXVlbmNlZENvCiAgICAgXQogCiAKLWNsYXNzIFBvc3RD
b21taXRzKEFic3RyYWN0RGVjbGFyYXRpdmVDb21tYW5kKToKK2NsYXNzIFBvc3RDb21taXRzKENv
bW1hbmQpOgogICAgIG5hbWUgPSAicG9zdC1jb21taXRzIgogICAgIGhlbHBfdGV4dCA9ICJBdHRh
Y2ggYSByYW5nZSBvZiBsb2NhbCBjb21taXRzIHRvIGJ1Z3MgYXMgcGF0Y2ggZmlsZXMiCiAgICAg
YXJndW1lbnRfbmFtZXMgPSAiQ09NTUlUSVNIIgpAQCAtMzIwLDcgKzMyMCw3IEBAIGNsYXNzIFBv
c3RDb21taXRzKEFic3RyYWN0RGVjbGFyYXRpdmVDb20KICAgICAgICAgICAgIHN0ZXBzLk9wdGlv
bnMucmV2aWV3LAogICAgICAgICAgICAgc3RlcHMuT3B0aW9ucy5yZXF1ZXN0X2NvbW1pdCwKICAg
ICAgICAgXQotICAgICAgICBBYnN0cmFjdERlY2xhcmF0aXZlQ29tbWFuZC5fX2luaXRfXyhzZWxm
LCBvcHRpb25zPW9wdGlvbnMsIHJlcXVpcmVzX2xvY2FsX2NvbW1pdHM9VHJ1ZSkKKyAgICAgICAg
Q29tbWFuZC5fX2luaXRfXyhzZWxmLCBvcHRpb25zPW9wdGlvbnMsIHJlcXVpcmVzX2xvY2FsX2Nv
bW1pdHM9VHJ1ZSkKIAogICAgIGRlZiBfY29tbWVudF90ZXh0X2Zvcl9jb21taXQoc2VsZiwgb3B0
aW9ucywgY29tbWl0X21lc3NhZ2UsIHRvb2wsIGNvbW1pdF9pZCk6CiAgICAgICAgIGNvbW1lbnRf
dGV4dCA9IE5vbmUKQEAgLTM1OCw3ICszNTgsNyBAQCBjbGFzcyBQb3N0Q29tbWl0cyhBYnN0cmFj
dERlY2xhcmF0aXZlQ29tCiAKIAogIyBGSVhNRTogVGhpcyBjb21tYW5kIG5lZWRzIHRvIGJlIGJy
b3VnaHQgaW50byB0aGUgbW9kZXJuIGFnZSB3aXRoIHN0ZXBzIGFuZCBDb21taXRJbmZvLgotY2xh
c3MgTWFya0J1Z0ZpeGVkKEFic3RyYWN0RGVjbGFyYXRpdmVDb21tYW5kKToKK2NsYXNzIE1hcmtC
dWdGaXhlZChDb21tYW5kKToKICAgICBuYW1lID0gIm1hcmstYnVnLWZpeGVkIgogICAgIGhlbHBf
dGV4dCA9ICJNYXJrIHRoZSBzcGVjaWZpZWQgYnVnIGFzIGZpeGVkIgogICAgIGFyZ3VtZW50X25h
bWVzID0gIltTVk5fUkVWSVNJT05dIgpAQCAtMzY5LDcgKzM2OSw3IEBAIGNsYXNzIE1hcmtCdWdG
aXhlZChBYnN0cmFjdERlY2xhcmF0aXZlQ28KICAgICAgICAgICAgIG1ha2Vfb3B0aW9uKCItLW9w
ZW4iLCBhY3Rpb249InN0b3JlX3RydWUiLCBkZWZhdWx0PUZhbHNlLCBkZXN0PSJvcGVuX2J1ZyIs
IGhlbHA9Ik9wZW4gYnVnIGluIGRlZmF1bHQgd2ViIGJyb3dzZXIgKE1hYyBvbmx5KS4iKSwKICAg
ICAgICAgICAgIG1ha2Vfb3B0aW9uKCItLXVwZGF0ZS1vbmx5IiwgYWN0aW9uPSJzdG9yZV90cnVl
IiwgZGVmYXVsdD1GYWxzZSwgZGVzdD0idXBkYXRlX29ubHkiLCBoZWxwPSJBZGQgY29tbWVudCB0
byB0aGUgYnVnLCBidXQgZG8gbm90IGNsb3NlIGl0LiIpLAogICAgICAgICBdCi0gICAgICAgIEFi
c3RyYWN0RGVjbGFyYXRpdmVDb21tYW5kLl9faW5pdF9fKHNlbGYsIG9wdGlvbnM9b3B0aW9ucykK
KyAgICAgICAgQ29tbWFuZC5fX2luaXRfXyhzZWxmLCBvcHRpb25zPW9wdGlvbnMpCiAKICAgICAj
IEZJWE1FOiBXZSBzaG91bGQgYmUgdXNpbmcgY2hlY2tvdXQoKS5jaGFuZ2Vsb2dfZW50cmllc19m
b3JfcmV2aXNpb24oLi4uKSBpbnN0ZWFkIGhlcmUuCiAgICAgZGVmIF9mZXRjaF9jb21taXRfbG9n
KHNlbGYsIHRvb2wsIHN2bl9yZXZpc2lvbik6CkBAIC00MzksNyArNDM5LDcgQEAgY2xhc3MgTWFy
a0J1Z0ZpeGVkKEFic3RyYWN0RGVjbGFyYXRpdmVDbwogCiAKICMgRklYTUU6IFJlcXVpcmVzIHVu
aXQgdGVzdC4gIEJsb2NraW5nIGlzc3VlOiB0b28gY29tcGxleCBmb3Igbm93LgotY2xhc3MgQ3Jl
YXRlQnVnKEFic3RyYWN0RGVjbGFyYXRpdmVDb21tYW5kKToKK2NsYXNzIENyZWF0ZUJ1ZyhDb21t
YW5kKToKICAgICBuYW1lID0gImNyZWF0ZS1idWciCiAgICAgaGVscF90ZXh0ID0gIkNyZWF0ZSBh
IGJ1ZyBmcm9tIGxvY2FsIGNoYW5nZXMgb3IgbG9jYWwgY29tbWl0cyIKICAgICBhcmd1bWVudF9u
YW1lcyA9ICJbQ09NTUlUSVNIXSIKQEAgLTQ1Miw3ICs0NTIsNyBAQCBjbGFzcyBDcmVhdGVCdWco
QWJzdHJhY3REZWNsYXJhdGl2ZUNvbW1hCiAgICAgICAgICAgICBtYWtlX29wdGlvbigiLS1uby1y
ZXZpZXciLCBhY3Rpb249InN0b3JlX2ZhbHNlIiwgZGVzdD0icmV2aWV3IiwgZGVmYXVsdD1UcnVl
LCBoZWxwPSJEbyBub3QgbWFyayB0aGUgcGF0Y2ggZm9yIHJldmlldy4iKSwKICAgICAgICAgICAg
IG1ha2Vfb3B0aW9uKCItLXJlcXVlc3QtY29tbWl0IiwgYWN0aW9uPSJzdG9yZV90cnVlIiwgZGVz
dD0icmVxdWVzdF9jb21taXQiLCBkZWZhdWx0PUZhbHNlLCBoZWxwPSJNYXJrIHRoZSBwYXRjaCBh
cyBuZWVkaW5nIGF1dG8tY29tbWl0IGFmdGVyIHJldmlldy4iKSwKICAgICAgICAgXQotICAgICAg
ICBBYnN0cmFjdERlY2xhcmF0aXZlQ29tbWFuZC5fX2luaXRfXyhzZWxmLCBvcHRpb25zPW9wdGlv
bnMpCisgICAgICAgIENvbW1hbmQuX19pbml0X18oc2VsZiwgb3B0aW9ucz1vcHRpb25zKQogCiAg
ICAgZGVmIGNyZWF0ZV9idWdfZnJvbV9jb21taXQoc2VsZiwgb3B0aW9ucywgYXJncywgdG9vbCk6
CiAgICAgICAgIGNvbW1pdF9pZHMgPSB0b29sLnNjbSgpLmNvbW1pdF9pZHNfZnJvbV9jb21taXRp
c2hfYXJndW1lbnRzKGFyZ3MpCg==
</data>
<flag name="review"
          id="219783"
          type_id="1"
          status="+"
          setter="koivisto"
    />
          </attachment>
      

    </bug>

</bugzilla>