<?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>106870</bug_id>
          
          <creation_ts>2013-01-14 21:45:22 -0800</creation_ts>
          <short_desc>Renaming CleanWorkingDirectory step to DiscardLocalChanges to make functionality match name.</short_desc>
          <delta_ts>2013-01-15 12:04:42 -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>New Bugs</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="Tim &apos;mithro&apos; Ansell">mithro</reporter>
          <assigned_to name="Tim &apos;mithro&apos; Ansell">mithro</assigned_to>
          <cc>abarth</cc>
    
    <cc>dpranke</cc>
    
    <cc>eric</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>806972</commentid>
    <comment_count>0</comment_count>
    <who name="Tim &apos;mithro&apos; Ansell">mithro</who>
    <bug_when>2013-01-14 21:45:22 -0800</bug_when>
    <thetext>Renaming CleanWorkingDirectory step to DiscardLocalChanges to make it match functionality.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>806973</commentid>
    <comment_count>1</comment_count>
      <attachid>182698</attachid>
    <who name="Tim &apos;mithro&apos; Ansell">mithro</who>
    <bug_when>2013-01-14 21:46:38 -0800</bug_when>
    <thetext>Created attachment 182698
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>806977</commentid>
    <comment_count>2</comment_count>
      <attachid>182700</attachid>
    <who name="Tim &apos;mithro&apos; Ansell">mithro</who>
    <bug_when>2013-01-14 22:01:56 -0800</bug_when>
    <thetext>Created attachment 182700
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>807543</commentid>
    <comment_count>3</comment_count>
      <attachid>182700</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-15 12:04:38 -0800</bug_when>
    <thetext>Comment on attachment 182700
Patch

Clearing flags on attachment: 182700

Committed r139771: &lt;http://trac.webkit.org/changeset/139771&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>807544</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-15 12:04:42 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>182698</attachid>
            <date>2013-01-14 21:46:38 -0800</date>
            <delta_ts>2013-01-14 22:01:51 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-106870-20130115164337.patch</filename>
            <type>text/plain</type>
            <size>27087</size>
            <attacher name="Tim &apos;mithro&apos; Ansell">mithro</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM5NzEzCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNmRjOWZhNjE2NzMyOTU2OTE4YzNhMTUyZWYyZjVmYzYy
MWMxMzdmYS4uMTMwZmU5MDBkYjM3NjM1YzU1MDAyYjk1NGM5ZTIwZTJiOTk5YjYxOCAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDM0
IEBACiAyMDEzLTAxLTE0ICBUaW0gJ21pdGhybycgQW5zZWxsICA8bWl0aHJvQG1pdGhpcy5jb20+
CiAKKyAgICAgICAgUmVuYW1pbmcgQ2xlYW5Xb3JraW5nRGlyZWN0b3J5IHN0ZXAgdG8gRGlzY2Fy
ZExvY2FsQ2hhbmdlcyB0byBtYWtlIGl0IG1hdGNoIGZ1bmN0aW9uYWxpdHkuCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDY4NzAKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkv
Y29tbW9uL2NoZWNrb3V0L3NjbS9naXQucHk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9j
b21tb24vY2hlY2tvdXQvc2NtL3NjbV91bml0dGVzdC5weToKKyAgICAgICAgKiBTY3JpcHRzL3dl
YmtpdHB5L3Rvb2wvY29tbWFuZHMvZG93bmxvYWQucHk6CisgICAgICAgIChDbGVhbik6CisgICAg
ICAgIChVcGRhdGUpOgorICAgICAgICAoQnVpbGQpOgorICAgICAgICAoQnVpbGRBbmRUZXN0KToK
KyAgICAgICAgKENoZWNrU3R5bGUpOgorICAgICAgICAoQnVpbGRBdHRhY2htZW50KToKKyAgICAg
ICAgKEJ1aWxkQW5kVGVzdEF0dGFjaG1lbnQpOgorICAgICAgICAoQWJzdHJhY3RQYXRjaEFwcGx5
aW5nQ29tbWFuZCk6CisgICAgICAgIChBcHBseVdhdGNoTGlzdCk6CisgICAgICAgIChBYnN0cmFj
dFBhdGNoTGFuZGluZ0NvbW1hbmQpOgorICAgICAgICAoQ3JlYXRlUm9sbG91dCk6CisgICAgICAg
ICogU2NyaXB0cy93ZWJraXRweS90b29sL3N0ZXBzL19faW5pdF9fLnB5OgorICAgICAgICAqIFNj
cmlwdHMvd2Via2l0cHkvdG9vbC9zdGVwcy9jbGVhbndvcmtpbmdkaXJlY3RvcnkucHk6CisgICAg
ICAgIChDbGVhbldvcmtpbmdEaXJlY3Rvcnkub3B0aW9ucyk6CisgICAgICAgIChDbGVhbldvcmtp
bmdEaXJlY3RvcnkucnVuKToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvc3RlcHMv
Y2xlYW53b3JraW5nZGlyZWN0b3J5X3VuaXR0ZXN0LnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Vi
a2l0cHkvdG9vbC9zdGVwcy9kaXNjYXJkbG9jYWxjaGFuZ2VzLnB5OiBDb3BpZWQgZnJvbSBUb29s
cy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvc3RlcHMvY2xlYW53b3JraW5nZGlyZWN0b3J5LnB5Lgor
ICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9zdGVwcy9kaXNjYXJkbG9jYWxjaGFuZ2Vz
X3VuaXR0ZXN0LnB5OiBDb3BpZWQgZnJvbSBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvc3Rl
cHMvY2xlYW53b3JraW5nZGlyZWN0b3J5X3VuaXR0ZXN0LnB5LgorCisyMDEzLTAxLTE0ICBUaW0g
J21pdGhybycgQW5zZWxsICA8bWl0aHJvQG1pdGhpcy5jb20+CisKICAgICAgICAgQ2hhbmdpbmcg
Y2xlYW5fd29ya2luZ19kaXJlY3RvcnkvY2xlYW5fbG9jYWxfY29tbWl0cyBhbmQgcmVsYXRlZAog
ICAgICAgICBmdW5jdGlvbnMgdG8gaGF2ZSBjb25zaXN0ZW50IG5hbWluZy4KIApkaWZmIC0tZ2l0
IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vY2hlY2tvdXQvc2NtL2dpdC5weSBiL1Rv
b2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL2NoZWNrb3V0L3NjbS9naXQucHkKaW5kZXggNGUx
OGE1ZjUzMjQ2ZmUxYjE2YTVlYWY3M2Q0NjkwMWEzYmMyODk2Yi4uN2E2YzI4ZWVkZTUxYjlkNTBj
MjhkZjgyYWU0MjkyY2YwYzRjNGYyYyAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRw
eS9jb21tb24vY2hlY2tvdXQvc2NtL2dpdC5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5
L2NvbW1vbi9jaGVja291dC9zY20vZ2l0LnB5CkBAIC0zMzYsMjAgKzMzNiwxMiBAQCBjbGFzcyBH
aXQoU0NNLCBTVk5SZXBvc2l0b3J5KToKICAgICBkZWYgcmV2ZXJ0X2ZpbGVzKHNlbGYsIGZpbGVf
cGF0aHMpOgogICAgICAgICBzZWxmLl9ydW5fZ2l0KFsnY2hlY2tvdXQnLCAnSEVBRCddICsgZmls
ZV9wYXRocykKIAotICAgIGRlZiBfYXNzZXJ0X2Nhbl9zcXVhc2goc2VsZiwgaGFzX3dvcmtpbmdf
ZGlyZWN0b3J5X2NoYW5nZXMpOgotICAgICAgICBzcXVhc2ggPSBHaXQucmVhZF9naXRfY29uZmln
KCd3ZWJraXQtcGF0Y2guY29tbWl0LXNob3VsZC1hbHdheXMtc3F1YXNoJywgY3dkPXNlbGYuY2hl
Y2tvdXRfcm9vdCkKLSAgICAgICAgc2hvdWxkX3NxdWFzaCA9IHNxdWFzaCBhbmQgc3F1YXNoLmxv
d2VyKCkgPT0gInRydWUiCi0KLSAgICAgICAgaWYgbm90IHNob3VsZF9zcXVhc2g6Ci0gICAgICAg
ICAgICAjIE9ubHkgd2FybiBpZiB0aGVyZSBhcmUgYWN0dWFsbHkgbXVsdGlwbGUgY29tbWl0cyB0
byBzcXVhc2guCi0gICAgICAgICAgICBudW1fbG9jYWxfY29tbWl0cyA9IGxlbihzZWxmLmxvY2Fs
X2NvbW1pdHMoKSkKLSAgICAgICAgICAgIGlmIG51bV9sb2NhbF9jb21taXRzID4gMSBvciAobnVt
X2xvY2FsX2NvbW1pdHMgPiAwIGFuZCBoYXNfd29ya2luZ19kaXJlY3RvcnlfY2hhbmdlcyk6Ci0g
ICAgICAgICAgICAgICAgcmFpc2UgQW1iaWd1b3VzQ29tbWl0RXJyb3IobnVtX2xvY2FsX2NvbW1p
dHMsIGhhc193b3JraW5nX2RpcmVjdG9yeV9jaGFuZ2VzKQotCiAgICAgZGVmIGNvbW1pdF93aXRo
X21lc3NhZ2Uoc2VsZiwgbWVzc2FnZSwgdXNlcm5hbWU9Tm9uZSwgcGFzc3dvcmQ9Tm9uZSwgZ2l0
X2NvbW1pdD1Ob25lLCBmb3JjZV9zcXVhc2g9RmFsc2UsIGNoYW5nZWRfZmlsZXM9Tm9uZSk6CiAg
ICAgICAgICMgVXNlcm5hbWUgaXMgaWdub3JlZCBkdXJpbmcgR2l0IGNvbW1pdHMuCisKICAgICAg
ICAgaGFzX3dvcmtpbmdfZGlyZWN0b3J5X2NoYW5nZXMgPSBzZWxmLmhhc193b3JraW5nX2RpcmVj
dG9yeV9jaGFuZ2VzKCkKIAorICAgICAgICAjIFBhdGNoZXMgdG8gY29tbWl0IGhhdmUgYmVlbiBz
cGVjaWZpZWQsIHNvIGFjdHVhbGx5IGNvbW1pdCB0aGVtCiAgICAgICAgIGlmIGdpdF9jb21taXQ6
CiAgICAgICAgICAgICAjIFNwZWNpYWwtY2FzZSBIRUFELi4gdG8gbWVhbiB3b3JraW5nLWNvcHkg
Y2hhbmdlcyBvbmx5LgogICAgICAgICAgICAgaWYgZ2l0X2NvbW1pdC51cHBlcigpID09ICdIRUFE
Li4nOgpAQCAtMzY2LDExICszNTgsMTkgQEAgY2xhc3MgR2l0KFNDTSwgU1ZOUmVwb3NpdG9yeSk6
CiAgICAgICAgICAgICAgICAgcmFpc2UgU2NyaXB0RXJyb3IobWVzc2FnZT0iV29ya2luZyBjb3B5
IGlzIG1vZGlmaWVkLiBDYW5ub3QgY29tbWl0IGluZGl2aWR1YWwgZ2l0X2NvbW1pdHMuIikKICAg
ICAgICAgICAgIHJldHVybiBzZWxmLl9jb21taXRfb25fYnJhbmNoKG1lc3NhZ2UsIGdpdF9jb21t
aXQsIHVzZXJuYW1lPXVzZXJuYW1lLCBwYXNzd29yZD1wYXNzd29yZCkKIAotICAgICAgICBpZiBu
b3QgZm9yY2Vfc3F1YXNoOgotICAgICAgICAgICAgc2VsZi5fYXNzZXJ0X2Nhbl9zcXVhc2goaGFz
X3dvcmtpbmdfZGlyZWN0b3J5X2NoYW5nZXMpCi0gICAgICAgIHNlbGYuX3J1bl9naXQoWydyZXNl
dCcsICctLXNvZnQnLCBzZWxmLnJlbW90ZV9tZXJnZV9iYXNlKCldKQotICAgICAgICBzZWxmLmNv
bW1pdF9sb2NhbGx5X3dpdGhfbWVzc2FnZShtZXNzYWdlKQotICAgICAgICByZXR1cm4gc2VsZi5w
dXNoX2xvY2FsX2NvbW1pdHNfdG9fc2VydmVyKHVzZXJuYW1lPXVzZXJuYW1lLCBwYXNzd29yZD1w
YXNzd29yZCkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgICMgU2hvdWxkIHdlIGFsbG93IHRo
ZSBjb21taXQgdG8gc3F1YXNoIG11bHRpcGxlIGNoYW5nZXMgdG9ndGhlcj8KKyAgICAgICAgICAg
IGlmIG5vdCBmb3JjZV9zcXVhc2g6CisgICAgICAgICAgICAgICAgZm9yY2Vfc3F1YXNoID0gR2l0
LnJlYWRfZ2l0X2NvbmZpZygnd2Via2l0LXBhdGNoLmNvbW1pdC1zaG91bGQtYWx3YXlzLXNxdWFz
aCcsIGN3ZD1zZWxmLmNoZWNrb3V0X3Jvb3QpLmxvd2VyKCkgPT0gInRydWUiCisKKyAgICAgICAg
ICAgIGlmIG5vdCBmb3JjZV9zcXVhc2g6CisgICAgICAgICAgICAgICAgbG9jYWxfY29tbWl0cyA9
IGxlbihzZWxmLmxvY2FsX2NvbW1pdHMoKSkKKyAgICAgICAgICAgICAgICBpZiAgbG9jYWxfY29t
bWl0cyA+IDEgb3IgKGxvY2FsX2NvbW1pdHMgYW5kIGhhc193b3JraW5nX2RpcmVjdG9yeV9jaGFu
Z2VzKToKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UgQW1iaWd1b3VzQ29tbWl0RXJyb3IobG9j
YWxfY29tbWl0cywgaGFzX3dvcmtpbmdfZGlyZWN0b3J5X2NoYW5nZXMpCisKKyAgICAgICAgICAg
IHNlbGYuX3J1bl9naXQoWydyZXNldCcsICctLXNvZnQnLCBzZWxmLnJlbW90ZV9tZXJnZV9iYXNl
KCldKQorICAgICAgICAgICAgc2VsZi5jb21taXRfbG9jYWxseV93aXRoX21lc3NhZ2UobWVzc2Fn
ZSkKKyAgICAgICAgICAgIHJldHVybiBzZWxmLnB1c2hfbG9jYWxfY29tbWl0c190b19zZXJ2ZXIo
dXNlcm5hbWU9dXNlcm5hbWUsIHBhc3N3b3JkPXBhc3N3b3JkKQogCiAgICAgZGVmIF9jb21taXRf
b25fYnJhbmNoKHNlbGYsIG1lc3NhZ2UsIGdpdF9jb21taXQsIHVzZXJuYW1lPU5vbmUsIHBhc3N3
b3JkPU5vbmUpOgogICAgICAgICBicmFuY2hfbmFtZSA9IHNlbGYuX2N1cnJlbnRfYnJhbmNoKCkK
ZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL2NoZWNrb3V0L3NjbS9z
Y21fdW5pdHRlc3QucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9jaGVja291dC9z
Y20vc2NtX3VuaXR0ZXN0LnB5CmluZGV4IDAwMjM0MDllY2U4MGIwZDA5ZjMwMmRhMWRhNzBmYmI4
OGY3YjA2MDguLjQ0MjIxMzA1MzRiYTE0YWI4ZGE1ZWQ4Njk4N2MzY2QxMjIxYjM5ZDAgMTAwNjQ0
Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL2NoZWNrb3V0L3NjbS9zY21fdW5p
dHRlc3QucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vY2hlY2tvdXQvc2Nt
L3NjbV91bml0dGVzdC5weQpAQCAtMTIzOSw4ICsxMjM5LDggQEAgY2xhc3MgR2l0U1ZOVGVzdChT
Q01UZXN0KToKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoU2NyaXB0RXJyb3IsIHNlbGYuc2Nt
LmNvbW1pdF93aXRoX21lc3NhZ2UsICJhbm90aGVyIHRlc3QgY29tbWl0IiwgZ2l0X2NvbW1pdD0i
SEVBRF4iKQogCiAgICAgZGVmIHRlc3RfY29tbWl0X3dpdGhfbWVzc2FnZV9tdWx0aXBsZV9sb2Nh
bF9jb21taXRzX2Fsd2F5c19zcXVhc2goc2VsZik6CisgICAgICAgIHJ1bl9jb21tYW5kKFsnZ2l0
JywgJ2NvbmZpZycsICd3ZWJraXQtcGF0Y2guY29tbWl0LXNob3VsZC1hbHdheXMtc3F1YXNoJywg
J3RydWUnXSkKICAgICAgICAgc2VsZi5fdHdvX2xvY2FsX2NvbW1pdHMoKQotICAgICAgICBzZWxm
LnNjbS5fYXNzZXJ0X2Nhbl9zcXVhc2ggPSBsYW1iZGEgd29ya2luZ19kaXJlY3RvcnlfaXNfY2xl
YW46IFRydWUKICAgICAgICAgY29tbWl0X3RleHQgPSBzZWxmLnNjbS5jb21taXRfd2l0aF9tZXNz
YWdlKCJ5ZXQgYW5vdGhlciB0ZXN0IGNvbW1pdCIpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwo
c2VsZi5zY20uc3ZuX3JldmlzaW9uX2Zyb21fY29tbWl0X3RleHQoY29tbWl0X3RleHQpLCAnNicp
CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9jb21tYW5kcy9kb3du
bG9hZC5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9jb21tYW5kcy9kb3dubG9hZC5w
eQppbmRleCBiZGQ3ODBkMmMzZjg5NGU5OGM1Y2RlN2UwMWJiMzhjZTkzNzE0Y2JmLi4wNDc3ZDZj
NjE4YTVhMTJhODhmYTdkNzMyZWQ0ZDU0MzcyZWEwMmY1IDEwMDY0NAotLS0gYS9Ub29scy9TY3Jp
cHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvZG93bmxvYWQucHkKKysrIGIvVG9vbHMvU2NyaXB0
cy93ZWJraXRweS90b29sL2NvbW1hbmRzL2Rvd25sb2FkLnB5CkBAIC00Nyw3ICs0Nyw3IEBAIGNs
YXNzIENsZWFuKEFic3RyYWN0U2VxdWVuY2VkQ29tbWFuZCk6CiAgICAgbmFtZSA9ICJjbGVhbiIK
ICAgICBoZWxwX3RleHQgPSAiQ2xlYW4gdGhlIHdvcmtpbmcgY29weSIKICAgICBzdGVwcyA9IFsK
LSAgICAgICAgc3RlcHMuQ2xlYW5Xb3JraW5nRGlyZWN0b3J5LAorICAgICAgICBzdGVwcy5EaXNj
YXJkTG9jYWxDaGFuZ2VzLAogICAgIF0KIAogICAgIGRlZiBfcHJlcGFyZV9zdGF0ZShzZWxmLCBv
cHRpb25zLCBhcmdzLCB0b29sKToKQEAgLTU4LDcgKzU4LDcgQEAgY2xhc3MgVXBkYXRlKEFic3Ry
YWN0U2VxdWVuY2VkQ29tbWFuZCk6CiAgICAgbmFtZSA9ICJ1cGRhdGUiCiAgICAgaGVscF90ZXh0
ID0gIlVwZGF0ZSB3b3JraW5nIGNvcHkgKHVzZWQgaW50ZXJuYWxseSkiCiAgICAgc3RlcHMgPSBb
Ci0gICAgICAgIHN0ZXBzLkNsZWFuV29ya2luZ0RpcmVjdG9yeSwKKyAgICAgICAgc3RlcHMuRGlz
Y2FyZExvY2FsQ2hhbmdlcywKICAgICAgICAgc3RlcHMuVXBkYXRlLAogICAgIF0KIApAQCAtNjcs
NyArNjcsNyBAQCBjbGFzcyBCdWlsZChBYnN0cmFjdFNlcXVlbmNlZENvbW1hbmQpOgogICAgIG5h
bWUgPSAiYnVpbGQiCiAgICAgaGVscF90ZXh0ID0gIlVwZGF0ZSB3b3JraW5nIGNvcHkgYW5kIGJ1
aWxkIgogICAgIHN0ZXBzID0gWwotICAgICAgICBzdGVwcy5DbGVhbldvcmtpbmdEaXJlY3Rvcnks
CisgICAgICAgIHN0ZXBzLkRpc2NhcmRMb2NhbENoYW5nZXMsCiAgICAgICAgIHN0ZXBzLlVwZGF0
ZSwKICAgICAgICAgc3RlcHMuQnVpbGQsCiAgICAgXQpAQCAtODAsNyArODAsNyBAQCBjbGFzcyBC
dWlsZEFuZFRlc3QoQWJzdHJhY3RTZXF1ZW5jZWRDb21tYW5kKToKICAgICBuYW1lID0gImJ1aWxk
LWFuZC10ZXN0IgogICAgIGhlbHBfdGV4dCA9ICJVcGRhdGUgd29ya2luZyBjb3B5LCBidWlsZCwg
YW5kIHJ1biB0aGUgdGVzdHMiCiAgICAgc3RlcHMgPSBbCi0gICAgICAgIHN0ZXBzLkNsZWFuV29y
a2luZ0RpcmVjdG9yeSwKKyAgICAgICAgc3RlcHMuRGlzY2FyZExvY2FsQ2hhbmdlcywKICAgICAg
ICAgc3RlcHMuVXBkYXRlLAogICAgICAgICBzdGVwcy5CdWlsZCwKICAgICAgICAgc3RlcHMuUnVu
VGVzdHMsCkBAIC0yMzUsNyArMjM1LDcgQEAgY2xhc3MgQ2hlY2tTdHlsZShBYnN0cmFjdFBhdGNo
U2VxdWVuY2luZ0NvbW1hbmQsIFByb2Nlc3NBdHRhY2htZW50c01peGluKToKICAgICBoZWxwX3Rl
eHQgPSAiUnVuIGNoZWNrLXdlYmtpdC1zdHlsZSBvbiB0aGUgc3BlY2lmaWVkIGF0dGFjaG1lbnRz
IgogICAgIGFyZ3VtZW50X25hbWVzID0gIkFUVEFDSE1FTlRfSUQgW0FUVEFDSE1FTlRfSURTXSIK
ICAgICBtYWluX3N0ZXBzID0gWwotICAgICAgICBzdGVwcy5DbGVhbldvcmtpbmdEaXJlY3Rvcnks
CisgICAgICAgIHN0ZXBzLkRpc2NhcmRMb2NhbENoYW5nZXMsCiAgICAgICAgIHN0ZXBzLlVwZGF0
ZSwKICAgICAgICAgc3RlcHMuQXBwbHlQYXRjaCwKICAgICAgICAgc3RlcHMuQ2hlY2tTdHlsZSwK
QEAgLTI0Nyw3ICsyNDcsNyBAQCBjbGFzcyBCdWlsZEF0dGFjaG1lbnQoQWJzdHJhY3RQYXRjaFNl
cXVlbmNpbmdDb21tYW5kLCBQcm9jZXNzQXR0YWNobWVudHNNaXhpbik6CiAgICAgaGVscF90ZXh0
ID0gIkFwcGx5IGFuZCBidWlsZCBwYXRjaGVzIGZyb20gYnVnemlsbGEiCiAgICAgYXJndW1lbnRf
bmFtZXMgPSAiQVRUQUNITUVOVF9JRCBbQVRUQUNITUVOVF9JRFNdIgogICAgIG1haW5fc3RlcHMg
PSBbCi0gICAgICAgIHN0ZXBzLkNsZWFuV29ya2luZ0RpcmVjdG9yeSwKKyAgICAgICAgc3RlcHMu
RGlzY2FyZExvY2FsQ2hhbmdlcywKICAgICAgICAgc3RlcHMuVXBkYXRlLAogICAgICAgICBzdGVw
cy5BcHBseVBhdGNoLAogICAgICAgICBzdGVwcy5CdWlsZCwKQEAgLTI1OSw3ICsyNTksNyBAQCBj
bGFzcyBCdWlsZEFuZFRlc3RBdHRhY2htZW50KEFic3RyYWN0UGF0Y2hTZXF1ZW5jaW5nQ29tbWFu
ZCwgUHJvY2Vzc0F0dGFjaG1lbnRzTQogICAgIGhlbHBfdGV4dCA9ICJBcHBseSwgYnVpbGQsIGFu
ZCB0ZXN0IHBhdGNoZXMgZnJvbSBidWd6aWxsYSIKICAgICBhcmd1bWVudF9uYW1lcyA9ICJBVFRB
Q0hNRU5UX0lEIFtBVFRBQ0hNRU5UX0lEU10iCiAgICAgbWFpbl9zdGVwcyA9IFsKLSAgICAgICAg
c3RlcHMuQ2xlYW5Xb3JraW5nRGlyZWN0b3J5LAorICAgICAgICBzdGVwcy5EaXNjYXJkTG9jYWxD
aGFuZ2VzLAogICAgICAgICBzdGVwcy5VcGRhdGUsCiAgICAgICAgIHN0ZXBzLkFwcGx5UGF0Y2gs
CiAgICAgICAgIHN0ZXBzLkJ1aWxkLApAQCAtMjcwLDcgKzI3MCw3IEBAIGNsYXNzIEJ1aWxkQW5k
VGVzdEF0dGFjaG1lbnQoQWJzdHJhY3RQYXRjaFNlcXVlbmNpbmdDb21tYW5kLCBQcm9jZXNzQXR0
YWNobWVudHNNCiBjbGFzcyBBYnN0cmFjdFBhdGNoQXBwbHlpbmdDb21tYW5kKEFic3RyYWN0UGF0
Y2hTZXF1ZW5jaW5nQ29tbWFuZCk6CiAgICAgcHJlcGFyZV9zdGVwcyA9IFsKICAgICAgICAgc3Rl
cHMuRW5zdXJlTG9jYWxDb21taXRJZk5lZWRlZCwKLSAgICAgICAgc3RlcHMuQ2xlYW5Xb3JraW5n
RGlyZWN0b3J5V2l0aExvY2FsQ29tbWl0cywKKyAgICAgICAgc3RlcHMuQ2xlYW5Xb3JraW5nRGly
ZWN0b3J5LAogICAgICAgICBzdGVwcy5VcGRhdGUsCiAgICAgXQogICAgIG1haW5fc3RlcHMgPSBb
CkBAIC0yOTksNyArMjk5LDcgQEAgY2xhc3MgQXBwbHlXYXRjaExpc3QoQWJzdHJhY3RQYXRjaFNl
cXVlbmNpbmdDb21tYW5kLCBQcm9jZXNzQXR0YWNobWVudHNNaXhpbik6CiAgICAgaGVscF90ZXh0
ID0gIkFwcGxpZXMgdGhlIHdhdGNobGlzdCB0byB0aGUgc3BlY2lmaWVkIGF0dGFjaG1lbnRzIgog
ICAgIGFyZ3VtZW50X25hbWVzID0gIkFUVEFDSE1FTlRfSUQgW0FUVEFDSE1FTlRfSURTXSIKICAg
ICBtYWluX3N0ZXBzID0gWwotICAgICAgICBzdGVwcy5DbGVhbldvcmtpbmdEaXJlY3RvcnksCisg
ICAgICAgIHN0ZXBzLkRpc2NhcmRMb2NhbENoYW5nZXMsCiAgICAgICAgIHN0ZXBzLlVwZGF0ZSwK
ICAgICAgICAgc3RlcHMuQXBwbHlQYXRjaCwKICAgICAgICAgc3RlcHMuQXBwbHlXYXRjaExpc3Qs
CkBAIC0zMTAsNyArMzEwLDcgQEAgRG93bmxvYWRzIHRoZSBhdHRhY2htZW50LCBhcHBsaWVzIGl0
IGxvY2FsbHksIHJ1bnMgdGhlIHdhdGNobGlzdCBhZ2FpbnN0IGl0LCBhbmQKIAogY2xhc3MgQWJz
dHJhY3RQYXRjaExhbmRpbmdDb21tYW5kKEFic3RyYWN0UGF0Y2hTZXF1ZW5jaW5nQ29tbWFuZCk6
CiAgICAgbWFpbl9zdGVwcyA9IFsKLSAgICAgICAgc3RlcHMuQ2xlYW5Xb3JraW5nRGlyZWN0b3J5
LAorICAgICAgICBzdGVwcy5EaXNjYXJkTG9jYWxDaGFuZ2VzLAogICAgICAgICBzdGVwcy5VcGRh
dGUsCiAgICAgICAgIHN0ZXBzLkFwcGx5UGF0Y2gsCiAgICAgICAgIHN0ZXBzLlZhbGlkYXRlQ2hh
bmdlTG9ncywKQEAgLTQxMyw3ICs0MTMsNyBAQCBBcHBsaWVzIHRoZSBpbnZlcnNlIGRpZmYgZm9y
IHRoZSBwcm92aWRlZCByZXZpc2lvbihzKS4KIENyZWF0ZXMgYW4gYXBwcm9wcmlhdGUgcm9sbG91
dCBDaGFuZ2VMb2csIGluY2x1ZGluZyBhIHRyYWMgbGluayBhbmQgYnVnIGxpbmsuCiAiIiIKICAg
ICBzdGVwcyA9IFsKLSAgICAgICAgc3RlcHMuQ2xlYW5Xb3JraW5nRGlyZWN0b3J5LAorICAgICAg
ICBzdGVwcy5EaXNjYXJkTG9jYWxDaGFuZ2VzLAogICAgICAgICBzdGVwcy5VcGRhdGUsCiAgICAg
ICAgIHN0ZXBzLlJldmVydFJldmlzaW9uLAogICAgICAgICBzdGVwcy5QcmVwYXJlQ2hhbmdlTG9n
Rm9yUmV2ZXJ0LApAQCAtNDI0LDcgKzQyNCw3IEBAIGNsYXNzIENyZWF0ZVJvbGxvdXQoQWJzdHJh
Y3RSb2xsb3V0UHJlcENvbW1hbmQpOgogICAgIG5hbWUgPSAiY3JlYXRlLXJvbGxvdXQiCiAgICAg
aGVscF90ZXh0ID0gIkNyZWF0ZXMgYSBidWcgdG8gdHJhY2sgdGhlIGJyb2tlbiBTVk4gcmV2aXNp
b24ocykgYW5kIHVwbG9hZHMgYSByb2xsb3V0IHBhdGNoLiIKICAgICBzdGVwcyA9IFsKLSAgICAg
ICAgc3RlcHMuQ2xlYW5Xb3JraW5nRGlyZWN0b3J5LAorICAgICAgICBzdGVwcy5EaXNjYXJkTG9j
YWxDaGFuZ2VzLAogICAgICAgICBzdGVwcy5VcGRhdGUsCiAgICAgICAgIHN0ZXBzLlJldmVydFJl
dmlzaW9uLAogICAgICAgICBzdGVwcy5DcmVhdGVCdWcsCkBAIC00NzAsNyArNDcwLDcgQEAgT3Bl
bnMgdGhlIGdlbmVyYXRlZCBDaGFuZ2VMb2dzIGluICRFRElUT1IuCiBTaG93cyB0aGUgcHJlcGFy
ZWQgZGlmZiBmb3IgY29uZmlybWF0aW9uLgogQ29tbWl0cyB0aGUgcmV2ZXJ0IGFuZCB1cGRhdGVz
IHRoZSBidWcgKGluY2x1ZGluZyByZS1vcGVuaW5nIHRoZSBidWcgaWYgbmVjZXNzYXJ5KS4iIiIK
ICAgICBzdGVwcyA9IFsKLSAgICAgICAgc3RlcHMuQ2xlYW5Xb3JraW5nRGlyZWN0b3J5LAorICAg
ICAgICBzdGVwcy5EaXNjYXJkTG9jYWxDaGFuZ2VzLAogICAgICAgICBzdGVwcy5VcGRhdGUsCiAg
ICAgICAgIHN0ZXBzLlJldmVydFJldmlzaW9uLAogICAgICAgICBzdGVwcy5QcmVwYXJlQ2hhbmdl
TG9nRm9yUmV2ZXJ0LApkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL3N0
ZXBzL19faW5pdF9fLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL3N0ZXBzL19faW5p
dF9fLnB5CmluZGV4IDU2NDI5ZThmZTI0ZWJjNDdjYjQ5ODllZmI3MGM3MGJjOGI1MmZjNDEuLjUw
MjMxOWY3YmRhMGYwMWZmOWQ3NDk0YTIwMGQ4NjI5NGFmMGUzOTQgMTAwNjQ0Ci0tLSBhL1Rvb2xz
L1NjcmlwdHMvd2Via2l0cHkvdG9vbC9zdGVwcy9fX2luaXRfXy5weQorKysgYi9Ub29scy9TY3Jp
cHRzL3dlYmtpdHB5L3Rvb2wvc3RlcHMvX19pbml0X18ucHkKQEAgLTM1LDEzICszNSwxMyBAQCBm
cm9tIHdlYmtpdHB5LnRvb2wuc3RlcHMuYXR0YWNodG9idWcgaW1wb3J0IEF0dGFjaFRvQnVnCiBm
cm9tIHdlYmtpdHB5LnRvb2wuc3RlcHMuYnVpbGQgaW1wb3J0IEJ1aWxkCiBmcm9tIHdlYmtpdHB5
LnRvb2wuc3RlcHMuY2hlY2tzdHlsZSBpbXBvcnQgQ2hlY2tTdHlsZQogZnJvbSB3ZWJraXRweS50
b29sLnN0ZXBzLmNsZWFud29ya2luZ2RpcmVjdG9yeSBpbXBvcnQgQ2xlYW5Xb3JraW5nRGlyZWN0
b3J5Ci1mcm9tIHdlYmtpdHB5LnRvb2wuc3RlcHMuY2xlYW53b3JraW5nZGlyZWN0b3J5d2l0aGxv
Y2FsY29tbWl0cyBpbXBvcnQgQ2xlYW5Xb3JraW5nRGlyZWN0b3J5V2l0aExvY2FsQ29tbWl0cwog
ZnJvbSB3ZWJraXRweS50b29sLnN0ZXBzLmNsb3NlYnVnIGltcG9ydCBDbG9zZUJ1ZwogZnJvbSB3
ZWJraXRweS50b29sLnN0ZXBzLmNsb3NlYnVnZm9ybGFuZGRpZmYgaW1wb3J0IENsb3NlQnVnRm9y
TGFuZERpZmYKIGZyb20gd2Via2l0cHkudG9vbC5zdGVwcy5jbG9zZXBhdGNoIGltcG9ydCBDbG9z
ZVBhdGNoCiBmcm9tIHdlYmtpdHB5LnRvb2wuc3RlcHMuY29tbWl0IGltcG9ydCBDb21taXQKIGZy
b20gd2Via2l0cHkudG9vbC5zdGVwcy5jb25maXJtZGlmZiBpbXBvcnQgQ29uZmlybURpZmYKIGZy
b20gd2Via2l0cHkudG9vbC5zdGVwcy5jcmVhdGVidWcgaW1wb3J0IENyZWF0ZUJ1ZworZnJvbSB3
ZWJraXRweS50b29sLnN0ZXBzLmRpc2NhcmRsb2NhbGNoYW5nZXMgaW1wb3J0IERpc2NhcmRMb2Nh
bENoYW5nZXMKIGZyb20gd2Via2l0cHkudG9vbC5zdGVwcy5lZGl0Y2hhbmdlbG9nIGltcG9ydCBF
ZGl0Q2hhbmdlTG9nCiBmcm9tIHdlYmtpdHB5LnRvb2wuc3RlcHMuZW5zdXJlYnVnaXNvcGVuYW5k
YXNzaWduZWQgaW1wb3J0IEVuc3VyZUJ1Z0lzT3BlbkFuZEFzc2lnbmVkCiBmcm9tIHdlYmtpdHB5
LnRvb2wuc3RlcHMuZW5zdXJlbG9jYWxjb21taXRpZm5lZWRlZCBpbXBvcnQgRW5zdXJlTG9jYWxD
b21taXRJZk5lZWRlZApkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL3N0
ZXBzL2NsZWFud29ya2luZ2RpcmVjdG9yeS5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9v
bC9zdGVwcy9jbGVhbndvcmtpbmdkaXJlY3RvcnkucHkKaW5kZXggOGM5MTQyOGY3NDRjYjc3YWQ1
NTdiYjAyYjAyZWY2MjVmMTNhZDgxYi4uZDVkMzQ5NGEyOWIxMTMyNTljOTJlOWQ4MmYxOTY1YmVj
YWQxZTViNCAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL3N0ZXBzL2Ns
ZWFud29ya2luZ2RpcmVjdG9yeS5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wv
c3RlcHMvY2xlYW53b3JraW5nZGlyZWN0b3J5LnB5CkBAIC0zMiwyNCArMzIsMjAgQEAgZnJvbSB3
ZWJraXRweS5jb21tb24uc3lzdGVtLmV4ZWN1dGl2ZSBpbXBvcnQgU2NyaXB0RXJyb3IKIAogCiBj
bGFzcyBDbGVhbldvcmtpbmdEaXJlY3RvcnkoQWJzdHJhY3RTdGVwKToKLSAgICBkZWYgX19pbml0
X18oc2VsZiwgdG9vbCwgb3B0aW9ucywgYWxsb3dfbG9jYWxfY29tbWl0cz1GYWxzZSk6Ci0gICAg
ICAgIEFic3RyYWN0U3RlcC5fX2luaXRfXyhzZWxmLCB0b29sLCBvcHRpb25zKQotICAgICAgICBz
ZWxmLl9hbGxvd19sb2NhbF9jb21taXRzID0gYWxsb3dfbG9jYWxfY29tbWl0cwogCiAgICAgQGNs
YXNzbWV0aG9kCiAgICAgZGVmIG9wdGlvbnMoY2xzKToKICAgICAgICAgcmV0dXJuIEFic3RyYWN0
U3RlcC5vcHRpb25zKCkgKyBbCi0gICAgICAgICAgICBPcHRpb25zLmZvcmNlX2NsZWFuLAogICAg
ICAgICAgICAgT3B0aW9ucy5jbGVhbiwKKyAgICAgICAgICAgIE9wdGlvbnMuZm9yY2VfY2xlYW4s
CiAgICAgICAgIF0KIAogICAgIGRlZiBydW4oc2VsZiwgc3RhdGUpOgogICAgICAgICBpZiBub3Qg
c2VsZi5fb3B0aW9ucy5jbGVhbjoKICAgICAgICAgICAgIHJldHVybgotICAgICAgICBpZiBub3Qg
c2VsZi5fYWxsb3dfbG9jYWxfY29tbWl0czoKLSAgICAgICAgICAgIGlmIHNlbGYuX3Rvb2wuc2Nt
KCkuaGFzX2xvY2FsX2NvbW1pdHMoKSBhbmQgbm90IHNlbGYuX29wdGlvbnMuZm9yY2VfY2xlYW46
Ci0gICAgICAgICAgICAgICAgcmFpc2UgU2NyaXB0RXJyb3IoIlJlcG9zaXRvcnkgaGFzIGxvY2Fs
IGNvbW1pdHMsIHBhc3MgLS1mb3JjZS1jbGVhbiB0byBjb250aW51ZS4iKQotICAgICAgICAgICAg
c2VsZi5fdG9vbC5zY20oKS5kaXNjYXJkX2xvY2FsX2NvbW1pdHMoKQotICAgICAgICBpZiBzZWxm
Ll90b29sLnNjbSgpLmhhc193b3JraW5nX2RpcmVjdG9yeV9jaGFuZ2VzKCkgYW5kIG5vdCBzZWxm
Ll9vcHRpb25zLmZvcmNlX2NsZWFuOgotICAgICAgICAgICAgcmFpc2UgU2NyaXB0RXJyb3IoIldv
cmtpbmcgZGlyZWN0b3J5IGhhcyBjaGFuZ2VzLCBwYXNzIC0tZm9yY2UtY2xlYW4gdG8gY29udGlu
dWUuIikKKworICAgICAgICBpZiBub3Qgc2VsZi5fb3B0aW9ucy5mb3JjZV9jbGVhbjoKKyAgICAg
ICAgICAgIGlmIHNlbGYuX3Rvb2wuc2NtKCkuaGFzX3dvcmtpbmdfZGlyZWN0b3J5X2NoYW5nZXMo
KToKKyAgICAgICAgICAgICAgICByYWlzZSBTY3JpcHRFcnJvcigiV29ya2luZyBkaXJlY3Rvcnkg
aGFzIGNoYW5nZXMsIHBhc3MgLS1mb3JjZS1jbGVhbiB0byBjb250aW51ZS4iKQorCiAgICAgICAg
IHNlbGYuX3Rvb2wuc2NtKCkuZGlzY2FyZF93b3JraW5nX2RpcmVjdG9yeV9jaGFuZ2VzKCkKZGlm
ZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9zdGVwcy9jbGVhbndvcmtpbmdk
aXJlY3RvcnlfdW5pdHRlc3QucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvc3RlcHMv
Y2xlYW53b3JraW5nZGlyZWN0b3J5X3VuaXR0ZXN0LnB5CmluZGV4IGNjNjA1MTg0ZDUzY2YwMzk1
ZTc5NDkzZGM5MWNjNGU5ODhjNmMwZTkuLjU0YWMzMDYyMTgxZjg0YjM0MTJlZmE0ZTUwY2ZmZmUx
NThjZWFkOWIgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9zdGVwcy9j
bGVhbndvcmtpbmdkaXJlY3RvcnlfdW5pdHRlc3QucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJr
aXRweS90b29sL3N0ZXBzL2NsZWFud29ya2luZ2RpcmVjdG9yeV91bml0dGVzdC5weQpAQCAtMzUs
NTYgKzM1LDM1IEBAIGZyb20gd2Via2l0cHkuY29tbW9uLnN5c3RlbS5leGVjdXRpdmUgaW1wb3J0
IFNjcmlwdEVycm9yCiAKIAogY2xhc3MgQ2xlYW5Xb3JraW5nRGlyZWN0b3J5VGVzdCh1bml0dGVz
dC5UZXN0Q2FzZSk6Ci0gICAgZGVmIHRlc3RfcnVuX3dvcmtpbmdfZGlyZWN0b3J5X2NoYW5nZXNf
bm9fZm9yY2Uoc2VsZik6Ci0gICAgICAgIHRvb2wgPSBNb2NrVG9vbCgpCi0gICAgICAgIHRvb2wu
X3NjbSA9IE1vY2soKQotICAgICAgICBzdGVwID0gQ2xlYW5Xb3JraW5nRGlyZWN0b3J5KHRvb2ws
IE1vY2tPcHRpb25zKGNsZWFuPVRydWUsIGZvcmNlX2NsZWFuPUZhbHNlKSkKLSAgICAgICAgdG9v
bC5fc2NtLmhhc193b3JraW5nX2RpcmVjdG9yeV9jaGFuZ2VzID0gbGFtYmRhOiBUcnVlCi0gICAg
ICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFNjcmlwdEVycm9yLCBzdGVwLnJ1biwge30pCi0gICAgICAg
IHNlbGYuYXNzZXJ0RXF1YWwodG9vbC5fc2NtLmRpc2NhcmRfbG9jYWxfY29tbWl0cy5jYWxsX2Nv
dW50LCAwKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRvb2wuX3NjbS5kaXNjYXJkX3dvcmtp
bmdfZGlyZWN0b3J5X2NoYW5nZXMuY2FsbF9jb3VudCwgMCkKIAotICAgIGRlZiB0ZXN0X3J1bl9s
b2NhbF9jb21taXRzX25vX2ZvcmNlKHNlbGYpOgorICAgIGRlZiB0ZXN0X25vX2NoYW5nZXMoc2Vs
Zik6CiAgICAgICAgIHRvb2wgPSBNb2NrVG9vbCgpCiAgICAgICAgIHRvb2wuX3NjbSA9IE1vY2so
KQogICAgICAgICBzdGVwID0gQ2xlYW5Xb3JraW5nRGlyZWN0b3J5KHRvb2wsIE1vY2tPcHRpb25z
KGNsZWFuPVRydWUsIGZvcmNlX2NsZWFuPUZhbHNlKSkKLSAgICAgICAgdG9vbC5fc2NtLmhhc19s
b2NhbF9jb21taXRzID0gbGFtYmRhOiBUcnVlCi0gICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFNj
cmlwdEVycm9yLCBzdGVwLnJ1biwge30pCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodG9vbC5f
c2NtLmRpc2NhcmRfbG9jYWxfY29tbWl0cy5jYWxsX2NvdW50LCAwKQorICAgICAgICB0b29sLl9z
Y20uaGFzX3dvcmtpbmdfZGlyZWN0b3J5X2NoYW5nZXMgPSBsYW1iZGE6IEZhbHNlCisgICAgICAg
IHN0ZXAucnVuKHt9KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRvb2wuX3NjbS5kaXNjYXJk
X3dvcmtpbmdfZGlyZWN0b3J5X2NoYW5nZXMuY2FsbF9jb3VudCwgMCkKIAotICAgIGRlZiB0ZXN0
X3J1bl93b3JraW5nX2RpcmVjdG9yeV9jaGFuZ2VzX2ZvcmNlKHNlbGYpOgorICAgIGRlZiB0ZXN0
X2NoYW5nZXNfZXhpc3Rfd2l0aF9mb3JjZShzZWxmKToKICAgICAgICAgdG9vbCA9IE1vY2tUb29s
KCkKICAgICAgICAgdG9vbC5fc2NtID0gTW9jaygpCi0gICAgICAgIHN0ZXAgPSBDbGVhbldvcmtp
bmdEaXJlY3RvcnkodG9vbCwgTW9ja09wdGlvbnMoY2xlYW49VHJ1ZSwgZm9yY2VfY2xlYW49VHJ1
ZSkpCiAgICAgICAgIHRvb2wuX3NjbS5oYXNfd29ya2luZ19kaXJlY3RvcnlfY2hhbmdlcyA9IGxh
bWJkYTogVHJ1ZQorICAgICAgICBzdGVwID0gQ2xlYW5Xb3JraW5nRGlyZWN0b3J5KHRvb2wsIE1v
Y2tPcHRpb25zKGZvcmNlX2NsZWFuPVRydWUpKQogICAgICAgICBzdGVwLnJ1bih7fSkKLSAgICAg
ICAgc2VsZi5hc3NlcnRFcXVhbCh0b29sLl9zY20uZGlzY2FyZF9sb2NhbF9jb21taXRzLmNhbGxf
Y291bnQsIDEpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodG9vbC5fc2NtLmRpc2NhcmRfd29y
a2luZ19kaXJlY3RvcnlfY2hhbmdlcy5jYWxsX2NvdW50LCAxKQotCi0gICAgZGVmIHRlc3RfcnVu
X2xvY2FsX2NvbW1pdHNfZm9yY2Uoc2VsZik6Ci0gICAgICAgIHRvb2wgPSBNb2NrVG9vbCgpCi0g
ICAgICAgIHRvb2wuX3NjbSA9IE1vY2soKQotICAgICAgICBzdGVwID0gQ2xlYW5Xb3JraW5nRGly
ZWN0b3J5KHRvb2wsIE1vY2tPcHRpb25zKGNsZWFuPVRydWUsIGZvcmNlX2NsZWFuPVRydWUpKQot
ICAgICAgICB0b29sLl9zY20uaGFzX2xvY2FsX2NvbW1pdHMgPSBsYW1iZGE6IFRydWUKLSAgICAg
ICAgc3RlcC5ydW4oe30pCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodG9vbC5fc2NtLmRpc2Nh
cmRfbG9jYWxfY29tbWl0cy5jYWxsX2NvdW50LCAxKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFs
KHRvb2wuX3NjbS5kaXNjYXJkX3dvcmtpbmdfZGlyZWN0b3J5X2NoYW5nZXMuY2FsbF9jb3VudCwg
MSkKIAotICAgIGRlZiB0ZXN0X3J1bl9ub19sb2NhbF9jaGFuZ2VzKHNlbGYpOgorICAgIGRlZiB0
ZXN0X25vX2NoYW5nZXNfd2l0aF9mb3JjZShzZWxmKToKICAgICAgICAgdG9vbCA9IE1vY2tUb29s
KCkKICAgICAgICAgdG9vbC5fc2NtID0gTW9jaygpCi0gICAgICAgIHN0ZXAgPSBDbGVhbldvcmtp
bmdEaXJlY3RvcnkodG9vbCwgTW9ja09wdGlvbnMoY2xlYW49VHJ1ZSwgZm9yY2VfY2xlYW49RmFs
c2UpKQotICAgICAgICB0b29sLl9zY20uaGFzX3dvcmtpbmdfZGlyZWN0b3J5X2NoYW5nZXMgPSBs
YW1iZGE6IEZhbHNlCi0gICAgICAgIHRvb2wuX3NjbS5oYXNfbG9jYWxfY29tbWl0cyA9IGxhbWJk
YTogRmFsc2UKKyAgICAgICAgdG9vbC5fc2NtLmhhc193b3JraW5nX2RpcmVjdG9yeV9jaGFuZ2Vz
ID0gbGFtYmRhOiBUcnVlCisgICAgICAgIHN0ZXAgPSBDbGVhbldvcmtpbmdEaXJlY3RvcnkodG9v
bCwgTW9ja09wdGlvbnMoZm9yY2VfY2xlYW49VHJ1ZSkpCiAgICAgICAgIHN0ZXAucnVuKHt9KQot
ICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRvb2wuX3NjbS5kaXNjYXJkX2xvY2FsX2NvbW1pdHMu
Y2FsbF9jb3VudCwgMSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0b29sLl9zY20uZGlzY2Fy
ZF93b3JraW5nX2RpcmVjdG9yeV9jaGFuZ2VzLmNhbGxfY291bnQsIDEpCiAKLSAgICBkZWYgdGVz
dF9ub19jbGVhbihzZWxmKToKKyAgICBkZWYgdGVzdF9lcnJvcl9jaGFuZ2VzX2V4aXN0X3dpdGhv
dXRfZm9yY2Uoc2VsZik6CiAgICAgICAgIHRvb2wgPSBNb2NrVG9vbCgpCiAgICAgICAgIHRvb2wu
X3NjbSA9IE1vY2soKQotICAgICAgICBzdGVwID0gQ2xlYW5Xb3JraW5nRGlyZWN0b3J5KHRvb2ws
IE1vY2tPcHRpb25zKGNsZWFuPUZhbHNlKSkKLSAgICAgICAgc3RlcC5ydW4oe30pCi0gICAgICAg
IHNlbGYuYXNzZXJ0RXF1YWwodG9vbC5fc2NtLmRpc2NhcmRfbG9jYWxfY29tbWl0cy5jYWxsX2Nv
dW50LCAwKQorICAgICAgICB0b29sLl9zY20uaGFzX3dvcmtpbmdfZGlyZWN0b3J5X2NoYW5nZXMg
PSBsYW1iZGE6IFRydWUKKyAgICAgICAgc3RlcCA9IENsZWFuV29ya2luZ0RpcmVjdG9yeSh0b29s
LCBNb2NrT3B0aW9ucyhmb3JjZV9jbGVhbj1GYWxzZSkpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFp
c2VzKFNjcmlwdEVycm9yLCBzdGVwLnJ1biwge30pCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwo
dG9vbC5fc2NtLmRpc2NhcmRfd29ya2luZ19kaXJlY3RvcnlfY2hhbmdlcy5jYWxsX2NvdW50LCAw
KQpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL3N0ZXBzL2NsZWFud29y
a2luZ2RpcmVjdG9yeXdpdGhsb2NhbGNvbW1pdHMucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5
L3Rvb2wvc3RlcHMvY2xlYW53b3JraW5nZGlyZWN0b3J5d2l0aGxvY2FsY29tbWl0cy5weQpkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZjA2Zjk0ZWY0YWQyZTA1YzVmMWFjZjY4NzBkZGFl
N2Q4Yjg1MmExNC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0g
YS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvc3RlcHMvY2xlYW53b3JraW5nZGlyZWN0b3J5
d2l0aGxvY2FsY29tbWl0cy5weQorKysgL2Rldi9udWxsCkBAIC0xLDM0ICswLDAgQEAKLSMgQ29w
eXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0jIAotIyBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKLSMgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQotIyBtZXQ6Ci0jIAotIyAgICAgKiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotIyBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCi0jICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUKLSMgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgotIyBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCi0jIGRpc3RyaWJ1dGlvbi4KLSMg
ICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0
cwotIyBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1
Y3RzIGRlcml2ZWQgZnJvbQotIyB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Ig
d3JpdHRlbiBwZXJtaXNzaW9uLgotIyAKLSMgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBU
SEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwotIyAiQVMgSVMiIEFORCBBTlkg
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotIyBMSU1J
VEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IKLSMgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVW
RU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKLSMgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCi0jIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKLSMgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsCi0jIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotIyBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0jIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQot
IyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgotCi1mcm9tIHdlYmtpdHB5LnRvb2wuc3RlcHMuY2xlYW53b3JraW5nZGly
ZWN0b3J5IGltcG9ydCBDbGVhbldvcmtpbmdEaXJlY3RvcnkKLQotY2xhc3MgQ2xlYW5Xb3JraW5n
RGlyZWN0b3J5V2l0aExvY2FsQ29tbWl0cyhDbGVhbldvcmtpbmdEaXJlY3RvcnkpOgotICAgIGRl
ZiBfX2luaXRfXyhzZWxmLCB0b29sLCBvcHRpb25zKToKLSAgICAgICAgIyBGSVhNRTogVGhpcyBh
IGJpdCBvZiBhIGhhY2suICBDb25zaWRlciBkb2luZyB0aGlzIG1vcmUgY2xlYW5seS4KLSAgICAg
ICAgQ2xlYW5Xb3JraW5nRGlyZWN0b3J5Ll9faW5pdF9fKHNlbGYsIHRvb2wsIG9wdGlvbnMsIGFs
bG93X2xvY2FsX2NvbW1pdHM9VHJ1ZSkKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0
cHkvdG9vbC9zdGVwcy9kaXNjYXJkbG9jYWxjaGFuZ2VzLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJr
aXRweS90b29sL3N0ZXBzL2Rpc2NhcmRsb2NhbGNoYW5nZXMucHkKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOGE4NGNj
NzAyNGY4OGZjMmNhMWJmMjIyZTRhYTRmNGE5YzMwYjdmOAotLS0gL2Rldi9udWxsCisrKyBiL1Rv
b2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9zdGVwcy9kaXNjYXJkbG9jYWxjaGFuZ2VzLnB5CkBA
IC0wLDAgKzEsNTIgQEAKKyMgQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisjCisjIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorIyBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisjIG1ldDoKKyMK
KyMgICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyMgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyLgorIyAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisjIGNvcHlyaWdodCBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyMgaW4gdGhl
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQor
IyBkaXN0cmlidXRpb24uCisjICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4g
bm9yIHRoZSBuYW1lcyBvZiBpdHMKKyMgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9y
c2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyMgdGhpcyBzb2Z0d2FyZSB3aXRo
b3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyMKKyMgVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwor
IyAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVAorIyBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyMgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyMgT1dORVIgT1IgQ09O
VFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
CisjIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QKKyMgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09E
UyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisjIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorIyBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JU
CisjIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRQorIyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorCitmcm9tIHdlYmtpdHB5LnRvb2wuc3Rl
cHMuYWJzdHJhY3RzdGVwIGltcG9ydCBBYnN0cmFjdFN0ZXAKK2Zyb20gd2Via2l0cHkudG9vbC5z
dGVwcy5vcHRpb25zIGltcG9ydCBPcHRpb25zCitmcm9tIHdlYmtpdHB5LmNvbW1vbi5zeXN0ZW0u
ZXhlY3V0aXZlIGltcG9ydCBTY3JpcHRFcnJvcgorCisKK2NsYXNzIERpc2NhcmRMb2NhbENoYW5n
ZXMoQWJzdHJhY3RTdGVwKToKKworICAgIEBjbGFzc21ldGhvZAorICAgIGRlZiBvcHRpb25zKGNs
cyk6CisgICAgICAgIHJldHVybiBBYnN0cmFjdFN0ZXAub3B0aW9ucygpICsgWworICAgICAgICAg
ICAgT3B0aW9ucy5jbGVhbiwKKyAgICAgICAgICAgIE9wdGlvbnMuZm9yY2VfY2xlYW4sCisgICAg
ICAgIF0KKworICAgIGRlZiBydW4oc2VsZiwgc3RhdGUpOgorICAgICAgICBpZiBub3Qgc2VsZi5f
b3B0aW9ucy5jbGVhbjoKKyAgICAgICAgICAgIHJldHVybgorCisgICAgICAgIGlmIG5vdCBzZWxm
Ll9vcHRpb25zLmZvcmNlX2NsZWFuOgorICAgICAgICAgICAgaWYgc2VsZi5fdG9vbC5zY20oKS5o
YXNfd29ya2luZ19kaXJlY3RvcnlfY2hhbmdlcygpOgorICAgICAgICAgICAgICAgIHJhaXNlIFNj
cmlwdEVycm9yKCJXb3JraW5nIGRpcmVjdG9yeSBoYXMgY2hhbmdlcywgcGFzcyAtLWZvcmNlLWNs
ZWFuIHRvIGNvbnRpbnVlLiIpCisgICAgICAgICAgICBpZiBzZWxmLl90b29sLnNjbSgpLmhhc19s
b2NhbF9jb21taXRzKCk6CisgICAgICAgICAgICAgICAgcmFpc2UgU2NyaXB0RXJyb3IoIlJlcG9z
aXRvcnkgaGFzIGxvY2FsIGNvbW1pdHMsIHBhc3MgLS1mb3JjZS1jbGVhbiB0byBjb250aW51ZS4i
KQorICAgICAgICBzZWxmLl90b29sLnNjbSgpLmRpc2NhcmRfbG9jYWxfY2hhbmdlcygpCmRpZmYg
LS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvc3RlcHMvZGlzY2FyZGxvY2FsY2hh
bmdlc191bml0dGVzdC5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9zdGVwcy9kaXNj
YXJkbG9jYWxjaGFuZ2VzX3VuaXR0ZXN0LnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQ4MGMxZDIwMzA1MzY3YTFh
Zjg4MzlhOGY0MTExM2YwODEyYzY3ZDYKLS0tIC9kZXYvbnVsbAorKysgYi9Ub29scy9TY3JpcHRz
L3dlYmtpdHB5L3Rvb2wvc3RlcHMvZGlzY2FyZGxvY2FsY2hhbmdlc191bml0dGVzdC5weQpAQCAt
MCwwICsxLDkwIEBACisjIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorIworIyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyMgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorIyBtZXQ6CisjCisj
ICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0CisjIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyMgICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorIyBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisjIGluIHRoZSBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyMg
ZGlzdHJpYnV0aW9uLgorIyAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5v
ciB0aGUgbmFtZXMgb2YgaXRzCisjIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNl
IG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisjIHRoaXMgc29mdHdhcmUgd2l0aG91
dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisjCisjIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyMg
IkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QKKyMgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisjIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisjIE9XTkVSIE9SIENPTlRS
SUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAor
IyBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UCisjIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorIyBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyMgVEhFT1JZIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAor
IyAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UKKyMgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKworaW1wb3J0IHVuaXR0ZXN0CisKK2Zyb20g
d2Via2l0cHkudGhpcmRwYXJ0eS5tb2NrIGltcG9ydCBNb2NrCitmcm9tIHdlYmtpdHB5LnRvb2wu
bW9ja3Rvb2wgaW1wb3J0IE1vY2tPcHRpb25zLCBNb2NrVG9vbAorZnJvbSB3ZWJraXRweS50b29s
LnN0ZXBzLmRpc2NhcmRsb2NhbGNoYW5nZXMgaW1wb3J0IERpc2NhcmRMb2NhbENoYW5nZXMKK2Zy
b20gd2Via2l0cHkuY29tbW9uLnN5c3RlbS5leGVjdXRpdmUgaW1wb3J0IFNjcmlwdEVycm9yCisK
KworY2xhc3MgRGlzY2FyZExvY2FsQ2hhbmdlc1Rlc3QodW5pdHRlc3QuVGVzdENhc2UpOgorICAg
IGRlZiB0ZXN0X3dvcmtpbmdfY2hhbmdlc19leGlzdF93aXRoX2ZvcmNlKHNlbGYpOgorICAgICAg
ICB0b29sID0gTW9ja1Rvb2woKQorICAgICAgICB0b29sLl9zY20gPSBNb2NrKCkKKyAgICAgICAg
dG9vbC5fc2NtLmhhc193b3JraW5nX2RpcmVjdG9yeV9jaGFuZ2VzID0gbGFtYmRhOiBUcnVlCisg
ICAgICAgIHRvb2wuX3NjbS5oYXNfbG9jYWxfY29tbWl0cyA9IGxhbWJkYTogRmFsc2UKKyAgICAg
ICAgc3RlcCA9IERpc2NhcmRMb2NhbENoYW5nZXModG9vbCwgTW9ja09wdGlvbnMoZm9yY2VfY2xl
YW49VHJ1ZSkpCisgICAgICAgIHN0ZXAucnVuKHt9KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFs
KHRvb2wuX3NjbS5kaXNjYXJkX2xvY2FsX2NoYW5nZXMuY2FsbF9jb3VudCwgMSkKKworICAgIGRl
ZiB0ZXN0X2xvY2FsX2NvbW1pdHNfZXhpc3Rfd2l0aF9mb3JjZShzZWxmKToKKyAgICAgICAgdG9v
bCA9IE1vY2tUb29sKCkKKyAgICAgICAgdG9vbC5fc2NtID0gTW9jaygpCisgICAgICAgIHRvb2wu
X3NjbS5oYXNfd29ya2luZ19kaXJlY3RvcnlfY2hhbmdlcyA9IGxhbWJkYTogRmFsc2UKKyAgICAg
ICAgdG9vbC5fc2NtLmhhc19sb2NhbF9jb21taXRzID0gbGFtYmRhOiBUcnVlCisgICAgICAgIHN0
ZXAgPSBEaXNjYXJkTG9jYWxDaGFuZ2VzKHRvb2wsIE1vY2tPcHRpb25zKGZvcmNlX2NsZWFuPVRy
dWUpKQorICAgICAgICBzdGVwLnJ1bih7fSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0b29s
Ll9zY20uZGlzY2FyZF9sb2NhbF9jaGFuZ2VzLmNhbGxfY291bnQsIDEpCisKKyAgICBkZWYgdGVz
dF9sb2NhbF9jb21taXRzX2FuZF93b3JraW5nX2NoYW5nZXNfZXhpc3Rfd2l0aF9mb3JjZShzZWxm
KToKKyAgICAgICAgdG9vbCA9IE1vY2tUb29sKCkKKyAgICAgICAgdG9vbC5fc2NtID0gTW9jaygp
CisgICAgICAgIHRvb2wuX3NjbS5oYXNfd29ya2luZ19kaXJlY3RvcnlfY2hhbmdlcyA9IGxhbWJk
YTogVHJ1ZQorICAgICAgICB0b29sLl9zY20uaGFzX2xvY2FsX2NvbW1pdHMgPSBsYW1iZGE6IFRy
dWUKKyAgICAgICAgc3RlcCA9IERpc2NhcmRMb2NhbENoYW5nZXModG9vbCwgTW9ja09wdGlvbnMo
Zm9yY2VfY2xlYW49VHJ1ZSkpCisgICAgICAgIHN0ZXAucnVuKHt9KQorICAgICAgICBzZWxmLmFz
c2VydEVxdWFsKHRvb2wuX3NjbS5kaXNjYXJkX2xvY2FsX2NoYW5nZXMuY2FsbF9jb3VudCwgMSkK
KworICAgIGRlZiB0ZXN0X25vX2NoYW5nZXNfZXhpc3Rfd2l0aF9mb3JjZShzZWxmKToKKyAgICAg
ICAgdG9vbCA9IE1vY2tUb29sKCkKKyAgICAgICAgdG9vbC5fc2NtID0gTW9jaygpCisgICAgICAg
IHRvb2wuX3NjbS5oYXNfd29ya2luZ19kaXJlY3RvcnlfY2hhbmdlcyA9IGxhbWJkYTogRmFsc2UK
KyAgICAgICAgdG9vbC5fc2NtLmhhc19sb2NhbF9jb21taXRzID0gbGFtYmRhOiBGYWxzZQorICAg
ICAgICBzdGVwID0gRGlzY2FyZExvY2FsQ2hhbmdlcyh0b29sLCBNb2NrT3B0aW9ucyhmb3JjZV9j
bGVhbj1UcnVlKSkKKyAgICAgICAgc3RlcC5ydW4oe30pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1
YWwodG9vbC5fc2NtLmRpc2NhcmRfbG9jYWxfY2hhbmdlcy5jYWxsX2NvdW50LCAxKQorCisgICAg
ZGVmIHRlc3RfZXJyb3Jfd29ya2luZ19jaGFuZ2VzX2V4aXN0X3dpdGhvdXRfZm9yY2Uoc2VsZik6
CisgICAgICAgIHRvb2wgPSBNb2NrVG9vbCgpCisgICAgICAgIHRvb2wuX3NjbSA9IE1vY2soKQor
ICAgICAgICB0b29sLl9zY20uaGFzX3dvcmtpbmdfZGlyZWN0b3J5X2NoYW5nZXMgPSBsYW1iZGE6
IFRydWUKKyAgICAgICAgdG9vbC5fc2NtLmhhc19sb2NhbF9jb21taXRzID0gbGFtYmRhOiBGYWxz
ZQorICAgICAgICBzdGVwID0gRGlzY2FyZExvY2FsQ2hhbmdlcyh0b29sLCBNb2NrT3B0aW9ucyhm
b3JjZV9jbGVhbj1GYWxzZSkpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFNjcmlwdEVycm9y
LCBzdGVwLnJ1biwge30pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodG9vbC5fc2NtLmRpc2Nh
cmRfbG9jYWxfY2hhbmdlcy5jYWxsX2NvdW50LCAwKQorCisgICAgZGVmIHRlc3RfZXJyb3JfbG9j
YWxfY29tbWl0c19leGlzdF93aXRob3V0X2ZvcmNlKHNlbGYpOgorICAgICAgICB0b29sID0gTW9j
a1Rvb2woKQorICAgICAgICB0b29sLl9zY20gPSBNb2NrKCkKKyAgICAgICAgdG9vbC5fc2NtLmhh
c193b3JraW5nX2RpcmVjdG9yeV9jaGFuZ2VzID0gbGFtYmRhOiBGYWxzZQorICAgICAgICB0b29s
Ll9zY20uaGFzX2xvY2FsX2NvbW1pdHMgPSBsYW1iZGE6IFRydWUKKyAgICAgICAgc3RlcCA9IERp
c2NhcmRMb2NhbENoYW5nZXModG9vbCwgTW9ja09wdGlvbnMoZm9yY2VfY2xlYW49RmFsc2UpKQor
ICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhTY3JpcHRFcnJvciwgc3RlcC5ydW4sIHt9KQorICAg
ICAgICBzZWxmLmFzc2VydEVxdWFsKHRvb2wuX3NjbS5kaXNjYXJkX2xvY2FsX2NoYW5nZXMuY2Fs
bF9jb3VudCwgMCkK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>182700</attachid>
            <date>2013-01-14 22:01:56 -0800</date>
            <delta_ts>2013-01-15 12:04:38 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-106870-20130115165855.patch</filename>
            <type>text/plain</type>
            <size>22140</size>
            <attacher name="Tim &apos;mithro&apos; Ansell">mithro</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM5NzEzCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNmRjOWZhNjE2NzMyOTU2OTE4YzNhMTUyZWYyZjVmYzYy
MWMxMzdmYS4uYjk4NzIxYjMzMWE3ODczOWQxNTU1ZDZlZTVhZjhhYWVmMjlmYjBjMiAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDMz
IEBACiAyMDEzLTAxLTE0ICBUaW0gJ21pdGhybycgQW5zZWxsICA8bWl0aHJvQG1pdGhpcy5jb20+
CiAKKyAgICAgICAgUmVuYW1pbmcgQ2xlYW5Xb3JraW5nRGlyZWN0b3J5IHN0ZXAgdG8gRGlzY2Fy
ZExvY2FsQ2hhbmdlcyB0byBtYWtlCisgICAgICAgIGZ1bmN0aW9uYWxpdHkgbWF0Y2ggdGhlIG5h
bWUuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDY4
NzAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNj
cmlwdHMvd2Via2l0cHkvdG9vbC9jb21tYW5kcy9kb3dubG9hZC5weToKKyAgICAgICAgKENsZWFu
KToKKyAgICAgICAgKFVwZGF0ZSk6CisgICAgICAgIChCdWlsZCk6CisgICAgICAgIChCdWlsZEFu
ZFRlc3QpOgorICAgICAgICAoQ2hlY2tTdHlsZSk6CisgICAgICAgIChCdWlsZEF0dGFjaG1lbnQp
OgorICAgICAgICAoQnVpbGRBbmRUZXN0QXR0YWNobWVudCk6CisgICAgICAgIChBYnN0cmFjdFBh
dGNoQXBwbHlpbmdDb21tYW5kKToKKyAgICAgICAgKEFwcGx5V2F0Y2hMaXN0KToKKyAgICAgICAg
KEFic3RyYWN0UGF0Y2hMYW5kaW5nQ29tbWFuZCk6CisgICAgICAgIChDcmVhdGVSb2xsb3V0KToK
KyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvc3RlcHMvX19pbml0X18ucHk6CisgICAg
ICAgICogU2NyaXB0cy93ZWJraXRweS90b29sL3N0ZXBzL2NsZWFud29ya2luZ2RpcmVjdG9yeS5w
eToKKyAgICAgICAgKENsZWFuV29ya2luZ0RpcmVjdG9yeS5vcHRpb25zKToKKyAgICAgICAgKENs
ZWFuV29ya2luZ0RpcmVjdG9yeS5ydW4pOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9v
bC9zdGVwcy9jbGVhbndvcmtpbmdkaXJlY3RvcnlfdW5pdHRlc3QucHk6CisgICAgICAgICogU2Ny
aXB0cy93ZWJraXRweS90b29sL3N0ZXBzL2Rpc2NhcmRsb2NhbGNoYW5nZXMucHk6IENvcGllZCBm
cm9tIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9zdGVwcy9jbGVhbndvcmtpbmdkaXJlY3Rv
cnkucHkuCisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS90b29sL3N0ZXBzL2Rpc2NhcmRsb2Nh
bGNoYW5nZXNfdW5pdHRlc3QucHk6IENvcGllZCBmcm9tIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkv
dG9vbC9zdGVwcy9jbGVhbndvcmtpbmdkaXJlY3RvcnlfdW5pdHRlc3QucHkuCisKKzIwMTMtMDEt
MTQgIFRpbSAnbWl0aHJvJyBBbnNlbGwgIDxtaXRocm9AbWl0aGlzLmNvbT4KKwogICAgICAgICBD
aGFuZ2luZyBjbGVhbl93b3JraW5nX2RpcmVjdG9yeS9jbGVhbl9sb2NhbF9jb21taXRzIGFuZCBy
ZWxhdGVkCiAgICAgICAgIGZ1bmN0aW9ucyB0byBoYXZlIGNvbnNpc3RlbnQgbmFtaW5nLgogCmRp
ZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvZG93bmxvYWQu
cHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvZG93bmxvYWQucHkKaW5k
ZXggYmRkNzgwZDJjM2Y4OTRlOThjNWNkZTdlMDFiYjM4Y2U5MzcxNGNiZi4uMDQ3N2Q2YzYxOGE1
YTEyYTg4ZmE3ZDczMmVkNGQ1NDM3MmVhMDJmNSAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93
ZWJraXRweS90b29sL2NvbW1hbmRzL2Rvd25sb2FkLnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Vi
a2l0cHkvdG9vbC9jb21tYW5kcy9kb3dubG9hZC5weQpAQCAtNDcsNyArNDcsNyBAQCBjbGFzcyBD
bGVhbihBYnN0cmFjdFNlcXVlbmNlZENvbW1hbmQpOgogICAgIG5hbWUgPSAiY2xlYW4iCiAgICAg
aGVscF90ZXh0ID0gIkNsZWFuIHRoZSB3b3JraW5nIGNvcHkiCiAgICAgc3RlcHMgPSBbCi0gICAg
ICAgIHN0ZXBzLkNsZWFuV29ya2luZ0RpcmVjdG9yeSwKKyAgICAgICAgc3RlcHMuRGlzY2FyZExv
Y2FsQ2hhbmdlcywKICAgICBdCiAKICAgICBkZWYgX3ByZXBhcmVfc3RhdGUoc2VsZiwgb3B0aW9u
cywgYXJncywgdG9vbCk6CkBAIC01OCw3ICs1OCw3IEBAIGNsYXNzIFVwZGF0ZShBYnN0cmFjdFNl
cXVlbmNlZENvbW1hbmQpOgogICAgIG5hbWUgPSAidXBkYXRlIgogICAgIGhlbHBfdGV4dCA9ICJV
cGRhdGUgd29ya2luZyBjb3B5ICh1c2VkIGludGVybmFsbHkpIgogICAgIHN0ZXBzID0gWwotICAg
ICAgICBzdGVwcy5DbGVhbldvcmtpbmdEaXJlY3RvcnksCisgICAgICAgIHN0ZXBzLkRpc2NhcmRM
b2NhbENoYW5nZXMsCiAgICAgICAgIHN0ZXBzLlVwZGF0ZSwKICAgICBdCiAKQEAgLTY3LDcgKzY3
LDcgQEAgY2xhc3MgQnVpbGQoQWJzdHJhY3RTZXF1ZW5jZWRDb21tYW5kKToKICAgICBuYW1lID0g
ImJ1aWxkIgogICAgIGhlbHBfdGV4dCA9ICJVcGRhdGUgd29ya2luZyBjb3B5IGFuZCBidWlsZCIK
ICAgICBzdGVwcyA9IFsKLSAgICAgICAgc3RlcHMuQ2xlYW5Xb3JraW5nRGlyZWN0b3J5LAorICAg
ICAgICBzdGVwcy5EaXNjYXJkTG9jYWxDaGFuZ2VzLAogICAgICAgICBzdGVwcy5VcGRhdGUsCiAg
ICAgICAgIHN0ZXBzLkJ1aWxkLAogICAgIF0KQEAgLTgwLDcgKzgwLDcgQEAgY2xhc3MgQnVpbGRB
bmRUZXN0KEFic3RyYWN0U2VxdWVuY2VkQ29tbWFuZCk6CiAgICAgbmFtZSA9ICJidWlsZC1hbmQt
dGVzdCIKICAgICBoZWxwX3RleHQgPSAiVXBkYXRlIHdvcmtpbmcgY29weSwgYnVpbGQsIGFuZCBy
dW4gdGhlIHRlc3RzIgogICAgIHN0ZXBzID0gWwotICAgICAgICBzdGVwcy5DbGVhbldvcmtpbmdE
aXJlY3RvcnksCisgICAgICAgIHN0ZXBzLkRpc2NhcmRMb2NhbENoYW5nZXMsCiAgICAgICAgIHN0
ZXBzLlVwZGF0ZSwKICAgICAgICAgc3RlcHMuQnVpbGQsCiAgICAgICAgIHN0ZXBzLlJ1blRlc3Rz
LApAQCAtMjM1LDcgKzIzNSw3IEBAIGNsYXNzIENoZWNrU3R5bGUoQWJzdHJhY3RQYXRjaFNlcXVl
bmNpbmdDb21tYW5kLCBQcm9jZXNzQXR0YWNobWVudHNNaXhpbik6CiAgICAgaGVscF90ZXh0ID0g
IlJ1biBjaGVjay13ZWJraXQtc3R5bGUgb24gdGhlIHNwZWNpZmllZCBhdHRhY2htZW50cyIKICAg
ICBhcmd1bWVudF9uYW1lcyA9ICJBVFRBQ0hNRU5UX0lEIFtBVFRBQ0hNRU5UX0lEU10iCiAgICAg
bWFpbl9zdGVwcyA9IFsKLSAgICAgICAgc3RlcHMuQ2xlYW5Xb3JraW5nRGlyZWN0b3J5LAorICAg
ICAgICBzdGVwcy5EaXNjYXJkTG9jYWxDaGFuZ2VzLAogICAgICAgICBzdGVwcy5VcGRhdGUsCiAg
ICAgICAgIHN0ZXBzLkFwcGx5UGF0Y2gsCiAgICAgICAgIHN0ZXBzLkNoZWNrU3R5bGUsCkBAIC0y
NDcsNyArMjQ3LDcgQEAgY2xhc3MgQnVpbGRBdHRhY2htZW50KEFic3RyYWN0UGF0Y2hTZXF1ZW5j
aW5nQ29tbWFuZCwgUHJvY2Vzc0F0dGFjaG1lbnRzTWl4aW4pOgogICAgIGhlbHBfdGV4dCA9ICJB
cHBseSBhbmQgYnVpbGQgcGF0Y2hlcyBmcm9tIGJ1Z3ppbGxhIgogICAgIGFyZ3VtZW50X25hbWVz
ID0gIkFUVEFDSE1FTlRfSUQgW0FUVEFDSE1FTlRfSURTXSIKICAgICBtYWluX3N0ZXBzID0gWwot
ICAgICAgICBzdGVwcy5DbGVhbldvcmtpbmdEaXJlY3RvcnksCisgICAgICAgIHN0ZXBzLkRpc2Nh
cmRMb2NhbENoYW5nZXMsCiAgICAgICAgIHN0ZXBzLlVwZGF0ZSwKICAgICAgICAgc3RlcHMuQXBw
bHlQYXRjaCwKICAgICAgICAgc3RlcHMuQnVpbGQsCkBAIC0yNTksNyArMjU5LDcgQEAgY2xhc3Mg
QnVpbGRBbmRUZXN0QXR0YWNobWVudChBYnN0cmFjdFBhdGNoU2VxdWVuY2luZ0NvbW1hbmQsIFBy
b2Nlc3NBdHRhY2htZW50c00KICAgICBoZWxwX3RleHQgPSAiQXBwbHksIGJ1aWxkLCBhbmQgdGVz
dCBwYXRjaGVzIGZyb20gYnVnemlsbGEiCiAgICAgYXJndW1lbnRfbmFtZXMgPSAiQVRUQUNITUVO
VF9JRCBbQVRUQUNITUVOVF9JRFNdIgogICAgIG1haW5fc3RlcHMgPSBbCi0gICAgICAgIHN0ZXBz
LkNsZWFuV29ya2luZ0RpcmVjdG9yeSwKKyAgICAgICAgc3RlcHMuRGlzY2FyZExvY2FsQ2hhbmdl
cywKICAgICAgICAgc3RlcHMuVXBkYXRlLAogICAgICAgICBzdGVwcy5BcHBseVBhdGNoLAogICAg
ICAgICBzdGVwcy5CdWlsZCwKQEAgLTI3MCw3ICsyNzAsNyBAQCBjbGFzcyBCdWlsZEFuZFRlc3RB
dHRhY2htZW50KEFic3RyYWN0UGF0Y2hTZXF1ZW5jaW5nQ29tbWFuZCwgUHJvY2Vzc0F0dGFjaG1l
bnRzTQogY2xhc3MgQWJzdHJhY3RQYXRjaEFwcGx5aW5nQ29tbWFuZChBYnN0cmFjdFBhdGNoU2Vx
dWVuY2luZ0NvbW1hbmQpOgogICAgIHByZXBhcmVfc3RlcHMgPSBbCiAgICAgICAgIHN0ZXBzLkVu
c3VyZUxvY2FsQ29tbWl0SWZOZWVkZWQsCi0gICAgICAgIHN0ZXBzLkNsZWFuV29ya2luZ0RpcmVj
dG9yeVdpdGhMb2NhbENvbW1pdHMsCisgICAgICAgIHN0ZXBzLkNsZWFuV29ya2luZ0RpcmVjdG9y
eSwKICAgICAgICAgc3RlcHMuVXBkYXRlLAogICAgIF0KICAgICBtYWluX3N0ZXBzID0gWwpAQCAt
Mjk5LDcgKzI5OSw3IEBAIGNsYXNzIEFwcGx5V2F0Y2hMaXN0KEFic3RyYWN0UGF0Y2hTZXF1ZW5j
aW5nQ29tbWFuZCwgUHJvY2Vzc0F0dGFjaG1lbnRzTWl4aW4pOgogICAgIGhlbHBfdGV4dCA9ICJB
cHBsaWVzIHRoZSB3YXRjaGxpc3QgdG8gdGhlIHNwZWNpZmllZCBhdHRhY2htZW50cyIKICAgICBh
cmd1bWVudF9uYW1lcyA9ICJBVFRBQ0hNRU5UX0lEIFtBVFRBQ0hNRU5UX0lEU10iCiAgICAgbWFp
bl9zdGVwcyA9IFsKLSAgICAgICAgc3RlcHMuQ2xlYW5Xb3JraW5nRGlyZWN0b3J5LAorICAgICAg
ICBzdGVwcy5EaXNjYXJkTG9jYWxDaGFuZ2VzLAogICAgICAgICBzdGVwcy5VcGRhdGUsCiAgICAg
ICAgIHN0ZXBzLkFwcGx5UGF0Y2gsCiAgICAgICAgIHN0ZXBzLkFwcGx5V2F0Y2hMaXN0LApAQCAt
MzEwLDcgKzMxMCw3IEBAIERvd25sb2FkcyB0aGUgYXR0YWNobWVudCwgYXBwbGllcyBpdCBsb2Nh
bGx5LCBydW5zIHRoZSB3YXRjaGxpc3QgYWdhaW5zdCBpdCwgYW5kCiAKIGNsYXNzIEFic3RyYWN0
UGF0Y2hMYW5kaW5nQ29tbWFuZChBYnN0cmFjdFBhdGNoU2VxdWVuY2luZ0NvbW1hbmQpOgogICAg
IG1haW5fc3RlcHMgPSBbCi0gICAgICAgIHN0ZXBzLkNsZWFuV29ya2luZ0RpcmVjdG9yeSwKKyAg
ICAgICAgc3RlcHMuRGlzY2FyZExvY2FsQ2hhbmdlcywKICAgICAgICAgc3RlcHMuVXBkYXRlLAog
ICAgICAgICBzdGVwcy5BcHBseVBhdGNoLAogICAgICAgICBzdGVwcy5WYWxpZGF0ZUNoYW5nZUxv
Z3MsCkBAIC00MTMsNyArNDEzLDcgQEAgQXBwbGllcyB0aGUgaW52ZXJzZSBkaWZmIGZvciB0aGUg
cHJvdmlkZWQgcmV2aXNpb24ocykuCiBDcmVhdGVzIGFuIGFwcHJvcHJpYXRlIHJvbGxvdXQgQ2hh
bmdlTG9nLCBpbmNsdWRpbmcgYSB0cmFjIGxpbmsgYW5kIGJ1ZyBsaW5rLgogIiIiCiAgICAgc3Rl
cHMgPSBbCi0gICAgICAgIHN0ZXBzLkNsZWFuV29ya2luZ0RpcmVjdG9yeSwKKyAgICAgICAgc3Rl
cHMuRGlzY2FyZExvY2FsQ2hhbmdlcywKICAgICAgICAgc3RlcHMuVXBkYXRlLAogICAgICAgICBz
dGVwcy5SZXZlcnRSZXZpc2lvbiwKICAgICAgICAgc3RlcHMuUHJlcGFyZUNoYW5nZUxvZ0ZvclJl
dmVydCwKQEAgLTQyNCw3ICs0MjQsNyBAQCBjbGFzcyBDcmVhdGVSb2xsb3V0KEFic3RyYWN0Um9s
bG91dFByZXBDb21tYW5kKToKICAgICBuYW1lID0gImNyZWF0ZS1yb2xsb3V0IgogICAgIGhlbHBf
dGV4dCA9ICJDcmVhdGVzIGEgYnVnIHRvIHRyYWNrIHRoZSBicm9rZW4gU1ZOIHJldmlzaW9uKHMp
IGFuZCB1cGxvYWRzIGEgcm9sbG91dCBwYXRjaC4iCiAgICAgc3RlcHMgPSBbCi0gICAgICAgIHN0
ZXBzLkNsZWFuV29ya2luZ0RpcmVjdG9yeSwKKyAgICAgICAgc3RlcHMuRGlzY2FyZExvY2FsQ2hh
bmdlcywKICAgICAgICAgc3RlcHMuVXBkYXRlLAogICAgICAgICBzdGVwcy5SZXZlcnRSZXZpc2lv
biwKICAgICAgICAgc3RlcHMuQ3JlYXRlQnVnLApAQCAtNDcwLDcgKzQ3MCw3IEBAIE9wZW5zIHRo
ZSBnZW5lcmF0ZWQgQ2hhbmdlTG9ncyBpbiAkRURJVE9SLgogU2hvd3MgdGhlIHByZXBhcmVkIGRp
ZmYgZm9yIGNvbmZpcm1hdGlvbi4KIENvbW1pdHMgdGhlIHJldmVydCBhbmQgdXBkYXRlcyB0aGUg
YnVnIChpbmNsdWRpbmcgcmUtb3BlbmluZyB0aGUgYnVnIGlmIG5lY2Vzc2FyeSkuIiIiCiAgICAg
c3RlcHMgPSBbCi0gICAgICAgIHN0ZXBzLkNsZWFuV29ya2luZ0RpcmVjdG9yeSwKKyAgICAgICAg
c3RlcHMuRGlzY2FyZExvY2FsQ2hhbmdlcywKICAgICAgICAgc3RlcHMuVXBkYXRlLAogICAgICAg
ICBzdGVwcy5SZXZlcnRSZXZpc2lvbiwKICAgICAgICAgc3RlcHMuUHJlcGFyZUNoYW5nZUxvZ0Zv
clJldmVydCwKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9zdGVwcy9f
X2luaXRfXy5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9zdGVwcy9fX2luaXRfXy5w
eQppbmRleCA1NjQyOWU4ZmUyNGViYzQ3Y2I0OTg5ZWZiNzBjNzBiYzhiNTJmYzQxLi41MDIzMTlm
N2JkYTBmMDFmZjlkNzQ5NGEyMDBkODYyOTRhZjBlMzk0IDEwMDY0NAotLS0gYS9Ub29scy9TY3Jp
cHRzL3dlYmtpdHB5L3Rvb2wvc3RlcHMvX19pbml0X18ucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93
ZWJraXRweS90b29sL3N0ZXBzL19faW5pdF9fLnB5CkBAIC0zNSwxMyArMzUsMTMgQEAgZnJvbSB3
ZWJraXRweS50b29sLnN0ZXBzLmF0dGFjaHRvYnVnIGltcG9ydCBBdHRhY2hUb0J1ZwogZnJvbSB3
ZWJraXRweS50b29sLnN0ZXBzLmJ1aWxkIGltcG9ydCBCdWlsZAogZnJvbSB3ZWJraXRweS50b29s
LnN0ZXBzLmNoZWNrc3R5bGUgaW1wb3J0IENoZWNrU3R5bGUKIGZyb20gd2Via2l0cHkudG9vbC5z
dGVwcy5jbGVhbndvcmtpbmdkaXJlY3RvcnkgaW1wb3J0IENsZWFuV29ya2luZ0RpcmVjdG9yeQot
ZnJvbSB3ZWJraXRweS50b29sLnN0ZXBzLmNsZWFud29ya2luZ2RpcmVjdG9yeXdpdGhsb2NhbGNv
bW1pdHMgaW1wb3J0IENsZWFuV29ya2luZ0RpcmVjdG9yeVdpdGhMb2NhbENvbW1pdHMKIGZyb20g
d2Via2l0cHkudG9vbC5zdGVwcy5jbG9zZWJ1ZyBpbXBvcnQgQ2xvc2VCdWcKIGZyb20gd2Via2l0
cHkudG9vbC5zdGVwcy5jbG9zZWJ1Z2ZvcmxhbmRkaWZmIGltcG9ydCBDbG9zZUJ1Z0ZvckxhbmRE
aWZmCiBmcm9tIHdlYmtpdHB5LnRvb2wuc3RlcHMuY2xvc2VwYXRjaCBpbXBvcnQgQ2xvc2VQYXRj
aAogZnJvbSB3ZWJraXRweS50b29sLnN0ZXBzLmNvbW1pdCBpbXBvcnQgQ29tbWl0CiBmcm9tIHdl
YmtpdHB5LnRvb2wuc3RlcHMuY29uZmlybWRpZmYgaW1wb3J0IENvbmZpcm1EaWZmCiBmcm9tIHdl
YmtpdHB5LnRvb2wuc3RlcHMuY3JlYXRlYnVnIGltcG9ydCBDcmVhdGVCdWcKK2Zyb20gd2Via2l0
cHkudG9vbC5zdGVwcy5kaXNjYXJkbG9jYWxjaGFuZ2VzIGltcG9ydCBEaXNjYXJkTG9jYWxDaGFu
Z2VzCiBmcm9tIHdlYmtpdHB5LnRvb2wuc3RlcHMuZWRpdGNoYW5nZWxvZyBpbXBvcnQgRWRpdENo
YW5nZUxvZwogZnJvbSB3ZWJraXRweS50b29sLnN0ZXBzLmVuc3VyZWJ1Z2lzb3BlbmFuZGFzc2ln
bmVkIGltcG9ydCBFbnN1cmVCdWdJc09wZW5BbmRBc3NpZ25lZAogZnJvbSB3ZWJraXRweS50b29s
LnN0ZXBzLmVuc3VyZWxvY2FsY29tbWl0aWZuZWVkZWQgaW1wb3J0IEVuc3VyZUxvY2FsQ29tbWl0
SWZOZWVkZWQKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9zdGVwcy9j
bGVhbndvcmtpbmdkaXJlY3RvcnkucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvc3Rl
cHMvY2xlYW53b3JraW5nZGlyZWN0b3J5LnB5CmluZGV4IDhjOTE0MjhmNzQ0Y2I3N2FkNTU3YmIw
MmIwMmVmNjI1ZjEzYWQ4MWIuLmE0Y2JlODJjNTI3MTE5ZmE5NmJkZDZhMDdmZDk3NjYwOWMzMjQx
YjQgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9zdGVwcy9jbGVhbndv
cmtpbmdkaXJlY3RvcnkucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL3N0ZXBz
L2NsZWFud29ya2luZ2RpcmVjdG9yeS5weQpAQCAtMzIsOSArMzIsNiBAQCBmcm9tIHdlYmtpdHB5
LmNvbW1vbi5zeXN0ZW0uZXhlY3V0aXZlIGltcG9ydCBTY3JpcHRFcnJvcgogCiAKIGNsYXNzIENs
ZWFuV29ya2luZ0RpcmVjdG9yeShBYnN0cmFjdFN0ZXApOgotICAgIGRlZiBfX2luaXRfXyhzZWxm
LCB0b29sLCBvcHRpb25zLCBhbGxvd19sb2NhbF9jb21taXRzPUZhbHNlKToKLSAgICAgICAgQWJz
dHJhY3RTdGVwLl9faW5pdF9fKHNlbGYsIHRvb2wsIG9wdGlvbnMpCi0gICAgICAgIHNlbGYuX2Fs
bG93X2xvY2FsX2NvbW1pdHMgPSBhbGxvd19sb2NhbF9jb21taXRzCiAKICAgICBAY2xhc3NtZXRo
b2QKICAgICBkZWYgb3B0aW9ucyhjbHMpOgpAQCAtNDYsMTAgKzQzLDggQEAgY2xhc3MgQ2xlYW5X
b3JraW5nRGlyZWN0b3J5KEFic3RyYWN0U3RlcCk6CiAgICAgZGVmIHJ1bihzZWxmLCBzdGF0ZSk6
CiAgICAgICAgIGlmIG5vdCBzZWxmLl9vcHRpb25zLmNsZWFuOgogICAgICAgICAgICAgcmV0dXJu
Ci0gICAgICAgIGlmIG5vdCBzZWxmLl9hbGxvd19sb2NhbF9jb21taXRzOgotICAgICAgICAgICAg
aWYgc2VsZi5fdG9vbC5zY20oKS5oYXNfbG9jYWxfY29tbWl0cygpIGFuZCBub3Qgc2VsZi5fb3B0
aW9ucy5mb3JjZV9jbGVhbjoKLSAgICAgICAgICAgICAgICByYWlzZSBTY3JpcHRFcnJvcigiUmVw
b3NpdG9yeSBoYXMgbG9jYWwgY29tbWl0cywgcGFzcyAtLWZvcmNlLWNsZWFuIHRvIGNvbnRpbnVl
LiIpCi0gICAgICAgICAgICBzZWxmLl90b29sLnNjbSgpLmRpc2NhcmRfbG9jYWxfY29tbWl0cygp
CisKICAgICAgICAgaWYgc2VsZi5fdG9vbC5zY20oKS5oYXNfd29ya2luZ19kaXJlY3RvcnlfY2hh
bmdlcygpIGFuZCBub3Qgc2VsZi5fb3B0aW9ucy5mb3JjZV9jbGVhbjoKICAgICAgICAgICAgIHJh
aXNlIFNjcmlwdEVycm9yKCJXb3JraW5nIGRpcmVjdG9yeSBoYXMgY2hhbmdlcywgcGFzcyAtLWZv
cmNlLWNsZWFuIHRvIGNvbnRpbnVlLiIpCisKICAgICAgICAgc2VsZi5fdG9vbC5zY20oKS5kaXNj
YXJkX3dvcmtpbmdfZGlyZWN0b3J5X2NoYW5nZXMoKQpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0
cy93ZWJraXRweS90b29sL3N0ZXBzL2NsZWFud29ya2luZ2RpcmVjdG9yeV91bml0dGVzdC5weSBi
L1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9zdGVwcy9jbGVhbndvcmtpbmdkaXJlY3Rvcnlf
dW5pdHRlc3QucHkKaW5kZXggY2M2MDUxODRkNTNjZjAzOTVlNzk0OTNkYzkxY2M0ZTk4OGM2YzBl
OS4uMWEyMDkzZGYyYTQ5OWE4NTU0ODZjN2Q1MGI1YmU1MzUwOGI4NWJlZSAxMDA2NDQKLS0tIGEv
VG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL3N0ZXBzL2NsZWFud29ya2luZ2RpcmVjdG9yeV91
bml0dGVzdC5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvc3RlcHMvY2xlYW53
b3JraW5nZGlyZWN0b3J5X3VuaXR0ZXN0LnB5CkBAIC00MSwxNiArNDEsNiBAQCBjbGFzcyBDbGVh
bldvcmtpbmdEaXJlY3RvcnlUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICAgICAgc3RlcCA9
IENsZWFuV29ya2luZ0RpcmVjdG9yeSh0b29sLCBNb2NrT3B0aW9ucyhjbGVhbj1UcnVlLCBmb3Jj
ZV9jbGVhbj1GYWxzZSkpCiAgICAgICAgIHRvb2wuX3NjbS5oYXNfd29ya2luZ19kaXJlY3Rvcnlf
Y2hhbmdlcyA9IGxhbWJkYTogVHJ1ZQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhTY3JpcHRF
cnJvciwgc3RlcC5ydW4sIHt9KQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRvb2wuX3NjbS5k
aXNjYXJkX2xvY2FsX2NvbW1pdHMuY2FsbF9jb3VudCwgMCkKLSAgICAgICAgc2VsZi5hc3NlcnRF
cXVhbCh0b29sLl9zY20uZGlzY2FyZF93b3JraW5nX2RpcmVjdG9yeV9jaGFuZ2VzLmNhbGxfY291
bnQsIDApCi0KLSAgICBkZWYgdGVzdF9ydW5fbG9jYWxfY29tbWl0c19ub19mb3JjZShzZWxmKToK
LSAgICAgICAgdG9vbCA9IE1vY2tUb29sKCkKLSAgICAgICAgdG9vbC5fc2NtID0gTW9jaygpCi0g
ICAgICAgIHN0ZXAgPSBDbGVhbldvcmtpbmdEaXJlY3RvcnkodG9vbCwgTW9ja09wdGlvbnMoY2xl
YW49VHJ1ZSwgZm9yY2VfY2xlYW49RmFsc2UpKQotICAgICAgICB0b29sLl9zY20uaGFzX2xvY2Fs
X2NvbW1pdHMgPSBsYW1iZGE6IFRydWUKLSAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoU2NyaXB0
RXJyb3IsIHN0ZXAucnVuLCB7fSkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0b29sLl9zY20u
ZGlzY2FyZF9sb2NhbF9jb21taXRzLmNhbGxfY291bnQsIDApCiAgICAgICAgIHNlbGYuYXNzZXJ0
RXF1YWwodG9vbC5fc2NtLmRpc2NhcmRfd29ya2luZ19kaXJlY3RvcnlfY2hhbmdlcy5jYWxsX2Nv
dW50LCAwKQogCiAgICAgZGVmIHRlc3RfcnVuX3dvcmtpbmdfZGlyZWN0b3J5X2NoYW5nZXNfZm9y
Y2Uoc2VsZik6CkBAIC01OSwxNiArNDksNiBAQCBjbGFzcyBDbGVhbldvcmtpbmdEaXJlY3RvcnlU
ZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICAgICAgc3RlcCA9IENsZWFuV29ya2luZ0RpcmVj
dG9yeSh0b29sLCBNb2NrT3B0aW9ucyhjbGVhbj1UcnVlLCBmb3JjZV9jbGVhbj1UcnVlKSkKICAg
ICAgICAgdG9vbC5fc2NtLmhhc193b3JraW5nX2RpcmVjdG9yeV9jaGFuZ2VzID0gbGFtYmRhOiBU
cnVlCiAgICAgICAgIHN0ZXAucnVuKHt9KQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRvb2wu
X3NjbS5kaXNjYXJkX2xvY2FsX2NvbW1pdHMuY2FsbF9jb3VudCwgMSkKLSAgICAgICAgc2VsZi5h
c3NlcnRFcXVhbCh0b29sLl9zY20uZGlzY2FyZF93b3JraW5nX2RpcmVjdG9yeV9jaGFuZ2VzLmNh
bGxfY291bnQsIDEpCi0KLSAgICBkZWYgdGVzdF9ydW5fbG9jYWxfY29tbWl0c19mb3JjZShzZWxm
KToKLSAgICAgICAgdG9vbCA9IE1vY2tUb29sKCkKLSAgICAgICAgdG9vbC5fc2NtID0gTW9jaygp
Ci0gICAgICAgIHN0ZXAgPSBDbGVhbldvcmtpbmdEaXJlY3RvcnkodG9vbCwgTW9ja09wdGlvbnMo
Y2xlYW49VHJ1ZSwgZm9yY2VfY2xlYW49VHJ1ZSkpCi0gICAgICAgIHRvb2wuX3NjbS5oYXNfbG9j
YWxfY29tbWl0cyA9IGxhbWJkYTogVHJ1ZQotICAgICAgICBzdGVwLnJ1bih7fSkKLSAgICAgICAg
c2VsZi5hc3NlcnRFcXVhbCh0b29sLl9zY20uZGlzY2FyZF9sb2NhbF9jb21taXRzLmNhbGxfY291
bnQsIDEpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodG9vbC5fc2NtLmRpc2NhcmRfd29ya2lu
Z19kaXJlY3RvcnlfY2hhbmdlcy5jYWxsX2NvdW50LCAxKQogCiAgICAgZGVmIHRlc3RfcnVuX25v
X2xvY2FsX2NoYW5nZXMoc2VsZik6CkBAIC03OCw3ICs1OCw2IEBAIGNsYXNzIENsZWFuV29ya2lu
Z0RpcmVjdG9yeVRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgogICAgICAgICB0b29sLl9zY20uaGFz
X3dvcmtpbmdfZGlyZWN0b3J5X2NoYW5nZXMgPSBsYW1iZGE6IEZhbHNlCiAgICAgICAgIHRvb2wu
X3NjbS5oYXNfbG9jYWxfY29tbWl0cyA9IGxhbWJkYTogRmFsc2UKICAgICAgICAgc3RlcC5ydW4o
e30pCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodG9vbC5fc2NtLmRpc2NhcmRfbG9jYWxfY29t
bWl0cy5jYWxsX2NvdW50LCAxKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRvb2wuX3NjbS5k
aXNjYXJkX3dvcmtpbmdfZGlyZWN0b3J5X2NoYW5nZXMuY2FsbF9jb3VudCwgMSkKIAogICAgIGRl
ZiB0ZXN0X25vX2NsZWFuKHNlbGYpOgpAQCAtODYsNSArNjUsNCBAQCBjbGFzcyBDbGVhbldvcmtp
bmdEaXJlY3RvcnlUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICAgICAgdG9vbC5fc2NtID0g
TW9jaygpCiAgICAgICAgIHN0ZXAgPSBDbGVhbldvcmtpbmdEaXJlY3RvcnkodG9vbCwgTW9ja09w
dGlvbnMoY2xlYW49RmFsc2UpKQogICAgICAgICBzdGVwLnJ1bih7fSkKLSAgICAgICAgc2VsZi5h
c3NlcnRFcXVhbCh0b29sLl9zY20uZGlzY2FyZF9sb2NhbF9jb21taXRzLmNhbGxfY291bnQsIDAp
CiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodG9vbC5fc2NtLmRpc2NhcmRfd29ya2luZ19kaXJl
Y3RvcnlfY2hhbmdlcy5jYWxsX2NvdW50LCAwKQpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93
ZWJraXRweS90b29sL3N0ZXBzL2NsZWFud29ya2luZ2RpcmVjdG9yeXdpdGhsb2NhbGNvbW1pdHMu
cHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvc3RlcHMvY2xlYW53b3JraW5nZGlyZWN0
b3J5d2l0aGxvY2FsY29tbWl0cy5weQpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZjA2
Zjk0ZWY0YWQyZTA1YzVmMWFjZjY4NzBkZGFlN2Q4Yjg1MmExNC4uMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wv
c3RlcHMvY2xlYW53b3JraW5nZGlyZWN0b3J5d2l0aGxvY2FsY29tbWl0cy5weQorKysgL2Rldi9u
dWxsCkBAIC0xLDM0ICswLDAgQEAKLSMgQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCi0jIAotIyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSMgbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQotIyBt
ZXQ6Ci0jIAotIyAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAotIyBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0jICAgICAqIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSMgY29weXJpZ2h0IG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgot
IyBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlCi0jIGRpc3RyaWJ1dGlvbi4KLSMgICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29n
bGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwotIyBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQg
dG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQotIyB0aGlzIHNvZnR3
YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotIyAKLSMgVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRS
SUJVVE9SUwotIyAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVAotIyBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKLSMgQSBQQVJUSUNVTEFSIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKLSMgT1dO
RVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsCi0jIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QKLSMgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCi0jIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotIyBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUCi0jIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotIyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotCi1mcm9tIHdlYmtpdHB5
LnRvb2wuc3RlcHMuY2xlYW53b3JraW5nZGlyZWN0b3J5IGltcG9ydCBDbGVhbldvcmtpbmdEaXJl
Y3RvcnkKLQotY2xhc3MgQ2xlYW5Xb3JraW5nRGlyZWN0b3J5V2l0aExvY2FsQ29tbWl0cyhDbGVh
bldvcmtpbmdEaXJlY3RvcnkpOgotICAgIGRlZiBfX2luaXRfXyhzZWxmLCB0b29sLCBvcHRpb25z
KToKLSAgICAgICAgIyBGSVhNRTogVGhpcyBhIGJpdCBvZiBhIGhhY2suICBDb25zaWRlciBkb2lu
ZyB0aGlzIG1vcmUgY2xlYW5seS4KLSAgICAgICAgQ2xlYW5Xb3JraW5nRGlyZWN0b3J5Ll9faW5p
dF9fKHNlbGYsIHRvb2wsIG9wdGlvbnMsIGFsbG93X2xvY2FsX2NvbW1pdHM9VHJ1ZSkKZGlmZiAt
LWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9zdGVwcy9kaXNjYXJkbG9jYWxjaGFu
Z2VzLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL3N0ZXBzL2Rpc2NhcmRsb2NhbGNo
YW5nZXMucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uOGE4NGNjNzAyNGY4OGZjMmNhMWJmMjIyZTRhYTRmNGE5YzMw
YjdmOAotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9zdGVw
cy9kaXNjYXJkbG9jYWxjaGFuZ2VzLnB5CkBAIC0wLDAgKzEsNTIgQEAKKyMgQ29weXJpZ2h0IChD
KSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisjCisjIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAor
IyBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMgYXJlCisjIG1ldDoKKyMKKyMgICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorIyAgICAg
KiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
CisjIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIKKyMgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorIyBkaXN0cmlidXRpb24uCisjICAgICAqIE5laXRo
ZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyMgY29udHJp
YnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVk
IGZyb20KKyMgdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVy
bWlzc2lvbi4KKyMKKyMgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hU
IEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworIyAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorIyBMSU1JVEVEIFRPLCBUSEUg
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyMg
QSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRI
RSBDT1BZUklHSFQKKyMgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisjIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyMgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisj
IERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWQorIyBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisjIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorIyBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorCitmcm9tIHdlYmtpdHB5LnRvb2wuc3RlcHMuYWJzdHJhY3RzdGVwIGltcG9ydCBBYnN0cmFj
dFN0ZXAKK2Zyb20gd2Via2l0cHkudG9vbC5zdGVwcy5vcHRpb25zIGltcG9ydCBPcHRpb25zCitm
cm9tIHdlYmtpdHB5LmNvbW1vbi5zeXN0ZW0uZXhlY3V0aXZlIGltcG9ydCBTY3JpcHRFcnJvcgor
CisKK2NsYXNzIERpc2NhcmRMb2NhbENoYW5nZXMoQWJzdHJhY3RTdGVwKToKKworICAgIEBjbGFz
c21ldGhvZAorICAgIGRlZiBvcHRpb25zKGNscyk6CisgICAgICAgIHJldHVybiBBYnN0cmFjdFN0
ZXAub3B0aW9ucygpICsgWworICAgICAgICAgICAgT3B0aW9ucy5jbGVhbiwKKyAgICAgICAgICAg
IE9wdGlvbnMuZm9yY2VfY2xlYW4sCisgICAgICAgIF0KKworICAgIGRlZiBydW4oc2VsZiwgc3Rh
dGUpOgorICAgICAgICBpZiBub3Qgc2VsZi5fb3B0aW9ucy5jbGVhbjoKKyAgICAgICAgICAgIHJl
dHVybgorCisgICAgICAgIGlmIG5vdCBzZWxmLl9vcHRpb25zLmZvcmNlX2NsZWFuOgorICAgICAg
ICAgICAgaWYgc2VsZi5fdG9vbC5zY20oKS5oYXNfd29ya2luZ19kaXJlY3RvcnlfY2hhbmdlcygp
OgorICAgICAgICAgICAgICAgIHJhaXNlIFNjcmlwdEVycm9yKCJXb3JraW5nIGRpcmVjdG9yeSBo
YXMgY2hhbmdlcywgcGFzcyAtLWZvcmNlLWNsZWFuIHRvIGNvbnRpbnVlLiIpCisgICAgICAgICAg
ICBpZiBzZWxmLl90b29sLnNjbSgpLmhhc19sb2NhbF9jb21taXRzKCk6CisgICAgICAgICAgICAg
ICAgcmFpc2UgU2NyaXB0RXJyb3IoIlJlcG9zaXRvcnkgaGFzIGxvY2FsIGNvbW1pdHMsIHBhc3Mg
LS1mb3JjZS1jbGVhbiB0byBjb250aW51ZS4iKQorICAgICAgICBzZWxmLl90b29sLnNjbSgpLmRp
c2NhcmRfbG9jYWxfY2hhbmdlcygpCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5
L3Rvb2wvc3RlcHMvZGlzY2FyZGxvY2FsY2hhbmdlc191bml0dGVzdC5weSBiL1Rvb2xzL1Njcmlw
dHMvd2Via2l0cHkvdG9vbC9zdGVwcy9kaXNjYXJkbG9jYWxjaGFuZ2VzX3VuaXR0ZXN0LnB5Cm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjZmOGY0MmM1YThjMDllMjdiZGFkMjE5YjA4MTIyNzE0YjE3OTY3NmYKLS0tIC9k
ZXYvbnVsbAorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvc3RlcHMvZGlzY2FyZGxv
Y2FsY2hhbmdlc191bml0dGVzdC5weQpAQCAtMCwwICsxLDk3IEBACisjIENvcHlyaWdodCAoQykg
MjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorIworIyBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyMg
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zIGFyZQorIyBtZXQ6CisjCisjICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisjIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyMgICAgICog
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQor
IyBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyCisjIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyMgZGlzdHJpYnV0aW9uLgorIyAgICAgKiBOZWl0aGVy
IHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisjIGNvbnRyaWJ1
dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBm
cm9tCisjIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1p
c3Npb24uCisjCisjIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBI
T0xERVJTIEFORCBDT05UUklCVVRPUlMKKyMgIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyMgTElNSVRFRCBUTywgVEhFIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisjIEEg
UEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUg
Q09QWVJJR0hUCisjIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLAorIyBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNF
UVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisjIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorIyBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkKKyMgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorIyAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyMgT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
KworaW1wb3J0IHVuaXR0ZXN0CisKK2Zyb20gd2Via2l0cHkudGhpcmRwYXJ0eS5tb2NrIGltcG9y
dCBNb2NrCitmcm9tIHdlYmtpdHB5LnRvb2wubW9ja3Rvb2wgaW1wb3J0IE1vY2tPcHRpb25zLCBN
b2NrVG9vbAorZnJvbSB3ZWJraXRweS50b29sLnN0ZXBzLmRpc2NhcmRsb2NhbGNoYW5nZXMgaW1w
b3J0IERpc2NhcmRMb2NhbENoYW5nZXMKK2Zyb20gd2Via2l0cHkuY29tbW9uLnN5c3RlbS5leGVj
dXRpdmUgaW1wb3J0IFNjcmlwdEVycm9yCisKKworY2xhc3MgRGlzY2FyZExvY2FsQ2hhbmdlc1Rl
c3QodW5pdHRlc3QuVGVzdENhc2UpOgorICAgIGRlZiB0ZXN0X3NraXBfb25fY2xlYW4oc2VsZik6
CisgICAgICAgIHRvb2wgPSBNb2NrVG9vbCgpCisgICAgICAgIHRvb2wuX3NjbSA9IE1vY2soKQor
ICAgICAgICBzdGVwID0gRGlzY2FyZExvY2FsQ2hhbmdlcyh0b29sLCBNb2NrT3B0aW9ucyhjbGVh
bj1GYWxzZSkpCisgICAgICAgIHN0ZXAucnVuKHt9KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFs
KHRvb2wuX3NjbS5kaXNjYXJkX2xvY2FsX2NoYW5nZXMuY2FsbF9jb3VudCwgMCkKKworICAgIGRl
ZiB0ZXN0X3dvcmtpbmdfY2hhbmdlc19leGlzdF93aXRoX2ZvcmNlKHNlbGYpOgorICAgICAgICB0
b29sID0gTW9ja1Rvb2woKQorICAgICAgICB0b29sLl9zY20gPSBNb2NrKCkKKyAgICAgICAgdG9v
bC5fc2NtLmhhc193b3JraW5nX2RpcmVjdG9yeV9jaGFuZ2VzID0gbGFtYmRhOiBUcnVlCisgICAg
ICAgIHRvb2wuX3NjbS5oYXNfbG9jYWxfY29tbWl0cyA9IGxhbWJkYTogRmFsc2UKKyAgICAgICAg
c3RlcCA9IERpc2NhcmRMb2NhbENoYW5nZXModG9vbCwgTW9ja09wdGlvbnMoY2xlYW49VHJ1ZSwg
Zm9yY2VfY2xlYW49VHJ1ZSkpCisgICAgICAgIHN0ZXAucnVuKHt9KQorICAgICAgICBzZWxmLmFz
c2VydEVxdWFsKHRvb2wuX3NjbS5kaXNjYXJkX2xvY2FsX2NoYW5nZXMuY2FsbF9jb3VudCwgMSkK
KworICAgIGRlZiB0ZXN0X2xvY2FsX2NvbW1pdHNfZXhpc3Rfd2l0aF9mb3JjZShzZWxmKToKKyAg
ICAgICAgdG9vbCA9IE1vY2tUb29sKCkKKyAgICAgICAgdG9vbC5fc2NtID0gTW9jaygpCisgICAg
ICAgIHRvb2wuX3NjbS5oYXNfd29ya2luZ19kaXJlY3RvcnlfY2hhbmdlcyA9IGxhbWJkYTogRmFs
c2UKKyAgICAgICAgdG9vbC5fc2NtLmhhc19sb2NhbF9jb21taXRzID0gbGFtYmRhOiBUcnVlCisg
ICAgICAgIHN0ZXAgPSBEaXNjYXJkTG9jYWxDaGFuZ2VzKHRvb2wsIE1vY2tPcHRpb25zKGNsZWFu
PVRydWUsIGZvcmNlX2NsZWFuPVRydWUpKQorICAgICAgICBzdGVwLnJ1bih7fSkKKyAgICAgICAg
c2VsZi5hc3NlcnRFcXVhbCh0b29sLl9zY20uZGlzY2FyZF9sb2NhbF9jaGFuZ2VzLmNhbGxfY291
bnQsIDEpCisKKyAgICBkZWYgdGVzdF9sb2NhbF9jb21taXRzX2FuZF93b3JraW5nX2NoYW5nZXNf
ZXhpc3Rfd2l0aF9mb3JjZShzZWxmKToKKyAgICAgICAgdG9vbCA9IE1vY2tUb29sKCkKKyAgICAg
ICAgdG9vbC5fc2NtID0gTW9jaygpCisgICAgICAgIHRvb2wuX3NjbS5oYXNfd29ya2luZ19kaXJl
Y3RvcnlfY2hhbmdlcyA9IGxhbWJkYTogVHJ1ZQorICAgICAgICB0b29sLl9zY20uaGFzX2xvY2Fs
X2NvbW1pdHMgPSBsYW1iZGE6IFRydWUKKyAgICAgICAgc3RlcCA9IERpc2NhcmRMb2NhbENoYW5n
ZXModG9vbCwgTW9ja09wdGlvbnMoY2xlYW49VHJ1ZSwgZm9yY2VfY2xlYW49VHJ1ZSkpCisgICAg
ICAgIHN0ZXAucnVuKHt9KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRvb2wuX3NjbS5kaXNj
YXJkX2xvY2FsX2NoYW5nZXMuY2FsbF9jb3VudCwgMSkKKworICAgIGRlZiB0ZXN0X25vX2NoYW5n
ZXNfZXhpc3Rfd2l0aF9mb3JjZShzZWxmKToKKyAgICAgICAgdG9vbCA9IE1vY2tUb29sKCkKKyAg
ICAgICAgdG9vbC5fc2NtID0gTW9jaygpCisgICAgICAgIHRvb2wuX3NjbS5oYXNfd29ya2luZ19k
aXJlY3RvcnlfY2hhbmdlcyA9IGxhbWJkYTogRmFsc2UKKyAgICAgICAgdG9vbC5fc2NtLmhhc19s
b2NhbF9jb21taXRzID0gbGFtYmRhOiBGYWxzZQorICAgICAgICBzdGVwID0gRGlzY2FyZExvY2Fs
Q2hhbmdlcyh0b29sLCBNb2NrT3B0aW9ucyhjbGVhbj1UcnVlLCBmb3JjZV9jbGVhbj1UcnVlKSkK
KyAgICAgICAgc3RlcC5ydW4oe30pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodG9vbC5fc2Nt
LmRpc2NhcmRfbG9jYWxfY2hhbmdlcy5jYWxsX2NvdW50LCAxKQorCisgICAgZGVmIHRlc3RfZXJy
b3Jfd29ya2luZ19jaGFuZ2VzX2V4aXN0X3dpdGhvdXRfZm9yY2Uoc2VsZik6CisgICAgICAgIHRv
b2wgPSBNb2NrVG9vbCgpCisgICAgICAgIHRvb2wuX3NjbSA9IE1vY2soKQorICAgICAgICB0b29s
Ll9zY20uaGFzX3dvcmtpbmdfZGlyZWN0b3J5X2NoYW5nZXMgPSBsYW1iZGE6IFRydWUKKyAgICAg
ICAgdG9vbC5fc2NtLmhhc19sb2NhbF9jb21taXRzID0gbGFtYmRhOiBGYWxzZQorICAgICAgICBz
dGVwID0gRGlzY2FyZExvY2FsQ2hhbmdlcyh0b29sLCBNb2NrT3B0aW9ucyhjbGVhbj1UcnVlLCBm
b3JjZV9jbGVhbj1GYWxzZSkpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFNjcmlwdEVycm9y
LCBzdGVwLnJ1biwge30pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodG9vbC5fc2NtLmRpc2Nh
cmRfbG9jYWxfY2hhbmdlcy5jYWxsX2NvdW50LCAwKQorCisgICAgZGVmIHRlc3RfZXJyb3JfbG9j
YWxfY29tbWl0c19leGlzdF93aXRob3V0X2ZvcmNlKHNlbGYpOgorICAgICAgICB0b29sID0gTW9j
a1Rvb2woKQorICAgICAgICB0b29sLl9zY20gPSBNb2NrKCkKKyAgICAgICAgdG9vbC5fc2NtLmhh
c193b3JraW5nX2RpcmVjdG9yeV9jaGFuZ2VzID0gbGFtYmRhOiBGYWxzZQorICAgICAgICB0b29s
Ll9zY20uaGFzX2xvY2FsX2NvbW1pdHMgPSBsYW1iZGE6IFRydWUKKyAgICAgICAgc3RlcCA9IERp
c2NhcmRMb2NhbENoYW5nZXModG9vbCwgTW9ja09wdGlvbnMoY2xlYW49VHJ1ZSwgZm9yY2VfY2xl
YW49RmFsc2UpKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhTY3JpcHRFcnJvciwgc3RlcC5y
dW4sIHt9KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRvb2wuX3NjbS5kaXNjYXJkX2xvY2Fs
X2NoYW5nZXMuY2FsbF9jb3VudCwgMCkK
</data>

          </attachment>
      

    </bug>

</bugzilla>