<?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>68975</bug_id>
          
          <creation_ts>2011-09-27 23:57:09 -0700</creation_ts>
          <short_desc>watchlist: Add cross-checks for WatchList once it is filled.</short_desc>
          <delta_ts>2011-09-29 22:22:56 -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>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>68822</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="David Levin">levin</reporter>
          <assigned_to name="David Levin">levin</assigned_to>
          <cc>abarth</cc>
    
    <cc>eric</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>474545</commentid>
    <comment_count>0</comment_count>
    <who name="David Levin">levin</who>
    <bug_when>2011-09-27 23:57:09 -0700</bug_when>
    <thetext>No definition should be allowed to remain if it is unused.

No definition should be referenced if it isn&apos;t defined.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>475723</commentid>
    <comment_count>1</comment_count>
      <attachid>109212</attachid>
    <who name="David Levin">levin</who>
    <bug_when>2011-09-29 15:36:21 -0700</bug_when>
    <thetext>Created attachment 109212
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>475784</commentid>
    <comment_count>2</comment_count>
      <attachid>109212</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-09-29 17:59:24 -0700</bug_when>
    <thetext>Comment on attachment 109212
Patch

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

drive-by-nits.

&gt; Tools/Scripts/webkitpy/common/watchlist/watchlistparser.py:32
&gt; +from webkitpy.common.memoized import memoized

Did you intend to use this?

&gt; Tools/Scripts/webkitpy/common/watchlist/watchlistparser.py:140
&gt; +        if len(definition_set):

if definition_set: will do approximately the same thing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>475834</commentid>
    <comment_count>3</comment_count>
    <who name="David Levin">levin</who>
    <bug_when>2011-09-29 19:29:09 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 109212 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=109212&amp;action=review
&gt; 
&gt; drive-by-nits.
&gt; 
&gt; &gt; Tools/Scripts/webkitpy/common/watchlist/watchlistparser.py:32
&gt; &gt; +from webkitpy.common.memoized import memoized
&gt; 
&gt; Did you intend to use this?

I&apos;ll remove that. I attempted to use it but found that I couldn&apos;t use it for a dictionary.

&gt; 
&gt; &gt; Tools/Scripts/webkitpy/common/watchlist/watchlistparser.py:140
&gt; &gt; +        if len(definition_set):
&gt; 
&gt; if definition_set: will do approximately the same thing.

Yep, will change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>475854</commentid>
    <comment_count>4</comment_count>
      <attachid>109212</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-09-29 20:43:08 -0700</bug_when>
    <thetext>Comment on attachment 109212
Patch

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

I&apos;m not sure I 100% follow, but I&apos;m willing to rubber-stamp this.

&gt; Tools/Scripts/webkitpy/common/watchlist/watchlistparser.py:111
&gt; +                raise Exception(&apos;A rule for definition &quot;%s&quot; is empty, so it should be deleted.&apos; % complex_definition)

I wonder if you want your own Exception subclass.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>475902</commentid>
    <comment_count>5</comment_count>
    <who name="David Levin">levin</who>
    <bug_when>2011-09-29 22:22:56 -0700</bug_when>
    <thetext>Committed as http://trac.webkit.org/changeset/96390</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>109212</attachid>
            <date>2011-09-29 15:36:21 -0700</date>
            <delta_ts>2011-09-29 20:43:08 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-68975-20110929153620.patch</filename>
            <type>text/plain</type>
            <size>16753</size>
            <attacher name="David Levin">levin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTYyNjQKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBi
L1Rvb2xzL0NoYW5nZUxvZwppbmRleCBkZjkyZDIwNzNkNDhhYTBlOTYzNTVhNzVjYTg3NGE4Yzgz
MjYwNjIxLi5iYmNjYTFjNjhkNzE2ZmE3Yjc0ZTk5MWMzZjE0MDgyZTMwNmZhYjQwIDEwMDY0NAot
LS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAg
QEAKKzIwMTEtMDktMjkgIERhdmlkIExldmluICA8bGV2aW5AY2hyb21pdW0ub3JnPgorCisgICAg
ICAgIHdhdGNobGlzdDogQWRkIGNyb3NzLWNoZWNrcyBmb3IgV2F0Y2hMaXN0IG9uY2UgaXQgaXMg
ZmlsbGVkLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
Njg5NzUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAq
IFNjcmlwdHMvd2Via2l0cHkvY29tbW9uL3dhdGNobGlzdC93YXRjaGxpc3QucHk6IE1hZGUgdGhl
IGRhdGEgbWVtYmVycyBwdWJsaWMKKyAgICAgICAgaW5zdGVhZCBvZiBoYXZpbmcgdHJpdmlhbCBn
ZXR0ZXIgYW5kIHNldHRlcnMuCisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9jb21tb24vd2F0
Y2hsaXN0L3dhdGNobGlzdF91bml0dGVzdC5weTogRml4IHRoZSB1bml0IHRlc3RzIHRvCisgICAg
ICAgIHBhc3MgdGhlIHZhbGlkYXRpb24gY2hlY2tzLgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0
cHkvY29tbW9uL3dhdGNobGlzdC93YXRjaGxpc3RwYXJzZXIucHk6IEFkZCB2YWxpZGF0aW9uIGNo
ZWNrcworICAgICAgICBhbmQgZml4IGEgZmV3IHN0eWxlIG5pdHMuCisgICAgICAgICogU2NyaXB0
cy93ZWJraXRweS9jb21tb24vd2F0Y2hsaXN0L3dhdGNobGlzdHBhcnNlcl91bml0dGVzdC5weTog
QWRkIHRlc3RzIGZvciB0aGUKKyAgICAgICAgdmFsaWRhdGlvbiBjaGVja3MuCisgICAgICAgICog
U2NyaXB0cy93ZWJraXRweS9jb21tb24vd2F0Y2hsaXN0L3dhdGNobGlzdHJ1bGUucHk6IE1ha2Ug
ZGVmaW5pdGlvbnNfdG9fbWF0Y2ggcHVibGljLgorCiAyMDExLTA5LTI4ICBEYXZpZCBMZXZpbiAg
PGxldmluQGNocm9taXVtLm9yZz4KIAogICAgICAgICB3YXRjaGxpc3Q6IEFkZCBhIHdheSB0byBs
b2FkIHRoZSB3YXRjaGxpc3QgZnJvbSBjb25maWcuCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRz
L3dlYmtpdHB5L2NvbW1vbi93YXRjaGxpc3Qvd2F0Y2hsaXN0LnB5IGIvVG9vbHMvU2NyaXB0cy93
ZWJraXRweS9jb21tb24vd2F0Y2hsaXN0L3dhdGNobGlzdC5weQppbmRleCA4YTA2YzU4MzQ2YjJl
MjY4YjMwZWUwMDI5YWZlZmJkNWJlYjBkNGYyLi41OWYxNDAyZmE5YmY0NWQ2Y2YxYjJjOGQ0OGFh
NTRmY2EyOTYxZjA4IDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi93
YXRjaGxpc3Qvd2F0Y2hsaXN0LnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9u
L3dhdGNobGlzdC93YXRjaGxpc3QucHkKQEAgLTMxLDMxICszMSwyMiBAQCBmcm9tIHdlYmtpdHB5
LmNvbW1vbi5jaGVja291dC5kaWZmX3BhcnNlciBpbXBvcnQgRGlmZlBhcnNlcgogCiBjbGFzcyBX
YXRjaExpc3Qob2JqZWN0KToKICAgICBkZWYgX19pbml0X18oc2VsZik6Ci0gICAgICAgIHNlbGYu
X2RlZmluaXRpb25zID0ge30KLSAgICAgICAgc2VsZi5fY2NfcnVsZXMgPSBzZXQoKQotICAgICAg
ICBzZWxmLl9tZXNzYWdlX3J1bGVzID0gc2V0KCkKLQotICAgIGRlZiBzZXRfZGVmaW5pdGlvbnMo
c2VsZiwgZGVmaW5pdGlvbnMpOgotICAgICAgICBzZWxmLl9kZWZpbml0aW9ucyA9IGRlZmluaXRp
b25zCi0KLSAgICBkZWYgc2V0X2NjX3J1bGVzKHNlbGYsIGNjX3J1bGVzKToKLSAgICAgICAgc2Vs
Zi5fY2NfcnVsZXMgPSBjY19ydWxlcwotCi0gICAgZGVmIHNldF9tZXNzYWdlX3J1bGVzKHNlbGYs
IG1lc3NhZ2VfcnVsZXMpOgotICAgICAgICBzZWxmLl9tZXNzYWdlX3J1bGVzID0gbWVzc2FnZV9y
dWxlcworICAgICAgICBzZWxmLmRlZmluaXRpb25zID0ge30KKyAgICAgICAgc2VsZi5jY19ydWxl
cyA9IHNldCgpCisgICAgICAgIHNlbGYubWVzc2FnZV9ydWxlcyA9IHNldCgpCiAKICAgICBkZWYg
ZmluZF9tYXRjaGluZ19kZWZpbml0aW9ucyhzZWxmLCBkaWZmKToKICAgICAgICAgbWF0Y2hpbmdf
ZGVmaW5pdGlvbnMgPSBzZXQoKQogICAgICAgICBwYXRjaF9maWxlcyA9IERpZmZQYXJzZXIoZGlm
Zi5zcGxpdGxpbmVzKCkpLmZpbGVzCiAKICAgICAgICAgZm9yIHBhdGgsIGRpZmZfZmlsZSBpbiBw
YXRjaF9maWxlcy5pdGVyaXRlbXMoKToKLSAgICAgICAgICAgIGZvciBkZWZpbml0aW9uIGluIHNl
bGYuX2RlZmluaXRpb25zOgorICAgICAgICAgICAgZm9yIGRlZmluaXRpb24gaW4gc2VsZi5kZWZp
bml0aW9uczoKICAgICAgICAgICAgICAgICAjIElmIGEgZGVmaW5pdGlvbiBoYXMgYWxyZWFkeSBt
YXRjaGVkLCB0aGVyZSBpcyBubyBuZWVkIHRvIHByb2Nlc3MgaXQuCiAgICAgICAgICAgICAgICAg
aWYgZGVmaW5pdGlvbiBpbiBtYXRjaGluZ19kZWZpbml0aW9uczoKICAgICAgICAgICAgICAgICAg
ICAgY29udGludWUKIAogICAgICAgICAgICAgICAgICMgU2VlIGlmIHRoZSBkZWZpbml0aW9uIG1h
dGNoZXMgd2l0aGluIG9uZSBmaWxlLgotICAgICAgICAgICAgICAgIGZvciBwYXR0ZXJuIGluIHNl
bGYuX2RlZmluaXRpb25zW2RlZmluaXRpb25dOgorICAgICAgICAgICAgICAgIGZvciBwYXR0ZXJu
IGluIHNlbGYuZGVmaW5pdGlvbnNbZGVmaW5pdGlvbl06CiAgICAgICAgICAgICAgICAgICAgIGlm
IG5vdCBwYXR0ZXJuLm1hdGNoKHBhdGgsIGRpZmZfZmlsZS5saW5lcyk6CiAgICAgICAgICAgICAg
ICAgICAgICAgICBicmVhawogICAgICAgICAgICAgICAgIGVsc2U6CkBAIC03MCwxMCArNjEsMTAg
QEAgY2xhc3MgV2F0Y2hMaXN0KG9iamVjdCk6CiAgICAgICAgIHJldHVybiBpbnN0cnVjdGlvbnMK
IAogICAgIGRlZiBkZXRlcm1pbmVfY2Nfc2V0KHNlbGYsIG1hdGNoaW5nX2RlZmluaXRpb25zKToK
LSAgICAgICAgcmV0dXJuIHNlbGYuX2RldGVybWluZV9pbnN0cnVjdGlvbnMobWF0Y2hpbmdfZGVm
aW5pdGlvbnMsIHNlbGYuX2NjX3J1bGVzKQorICAgICAgICByZXR1cm4gc2VsZi5fZGV0ZXJtaW5l
X2luc3RydWN0aW9ucyhtYXRjaGluZ19kZWZpbml0aW9ucywgc2VsZi5jY19ydWxlcykKIAogICAg
IGRlZiBkZXRlcm1pbmVfbWVzc2FnZXMoc2VsZiwgbWF0Y2hpbmdfZGVmaW5pdGlvbnMpOgotICAg
ICAgICByZXR1cm4gc2VsZi5fZGV0ZXJtaW5lX2luc3RydWN0aW9ucyhtYXRjaGluZ19kZWZpbml0
aW9ucywgc2VsZi5fbWVzc2FnZV9ydWxlcykKKyAgICAgICAgcmV0dXJuIHNlbGYuX2RldGVybWlu
ZV9pbnN0cnVjdGlvbnMobWF0Y2hpbmdfZGVmaW5pdGlvbnMsIHNlbGYubWVzc2FnZV9ydWxlcykK
IAogICAgIGRlZiBkZXRlcm1pbmVfY2Nfc2V0X2FuZF9tZXNzYWdlcyhzZWxmLCBkaWZmKToKICAg
ICAgICAgZGVmaW5pdGlvbnMgPSBzZWxmLmZpbmRfbWF0Y2hpbmdfZGVmaW5pdGlvbnMoZGlmZikK
ZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL3dhdGNobGlzdC93YXRj
aGxpc3RfdW5pdHRlc3QucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi93YXRjaGxp
c3Qvd2F0Y2hsaXN0X3VuaXR0ZXN0LnB5CmluZGV4IDU5ODc0NmM1ZmE5ZDYwZWUyZGUzMDFjNjc1
YTUyMTUxYTAyNmEwMGUuLjZiYmM2MmI1YWU0NzBmZWIzOTVmOGExZmE1NGRmNjYzMzU3NmFjOTcg
MTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL3dhdGNobGlzdC93YXRj
aGxpc3RfdW5pdHRlc3QucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vd2F0
Y2hsaXN0L3dhdGNobGlzdF91bml0dGVzdC5weQpAQCAtNDYsNiArNDYsMTEgQEAgY2xhc3MgV2F0
Y2hMaXN0VGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CiAgICAgICAgICAgICAnICAgICAgICAgICAg
ImZpbGVuYW1lIjogciIuKlxcTXlGaWxlTmFtZVxcLmNwcCIsJwogICAgICAgICAgICAgJyAgICAg
ICAgfSwnCiAgICAgICAgICAgICAnICAgICB9LCcKKyAgICAgICAgICAgICcgICAgIkNDX1JVTEVT
IjogeycKKyAgICAgICAgICAgICcgICAgICAgICJXYXRjaExpc3QxIjogWycKKyAgICAgICAgICAg
ICcgICAgICAgICAgICAibGV2aW5AY2hyb21pdW0ub3JnIiwnCisgICAgICAgICAgICAnICAgICAg
ICBdLCcKKyAgICAgICAgICAgJyAgICB9LCcKICAgICAgICAgICAgICd9JykKICAgICAgICAgc2Vs
Zi5hc3NlcnRFcXVhbHMoc2V0KFtdKSwgd2F0Y2hfbGlzdC5maW5kX21hdGNoaW5nX2RlZmluaXRp
b25zKERJRkZfVEVTVF9EQVRBKSkKIApAQCAtNTcsNiArNjIsMTEgQEAgY2xhc3MgV2F0Y2hMaXN0
VGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CiAgICAgICAgICAgICAnICAgICAgICAgICAgImZpbGVu
YW1lIjogciJXZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUZsZXhpYmxlQm94RGF0YVwuaCIs
JwogICAgICAgICAgICAgJyAgICAgICAgfSwnCiAgICAgICAgICAgICAnICAgICB9LCcKKyAgICAg
ICAgICAgICcgICAgIkNDX1JVTEVTIjogeycKKyAgICAgICAgICAgICcgICAgICAgICJXYXRjaExp
c3QxIjogWycKKyAgICAgICAgICAgICcgICAgICAgICAgICAibGV2aW5AY2hyb21pdW0ub3JnIiwn
CisgICAgICAgICAgICAnICAgICAgICBdLCcKKyAgICAgICAgICAgJyAgICB9LCcKICAgICAgICAg
ICAgICd9JykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbHMoc2V0KFsnV2F0Y2hMaXN0MSddKSwg
d2F0Y2hfbGlzdC5maW5kX21hdGNoaW5nX2RlZmluaXRpb25zKERJRkZfVEVTVF9EQVRBKSkKIApA
QCAtODcsNiArOTcsMTIgQEAgY2xhc3MgV2F0Y2hMaXN0VGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6
CiAgICAgICAgICAgICAnICAgICAgICAiV2F0Y2hMaXN0MSI6IHsnCiAgICAgICAgICAgICAnICAg
ICAgICAgICAgImZpbGVuYW1lIjogciJXZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUZsZXhp
YmxlQm94RGF0YVwuaCIsJwogICAgICAgICAgICAgJyAgICAgICAgfSwnCisgICAgICAgICAgICAn
ICAgICAgICAiV2F0Y2hMaXN0MiI6IHsnCisgICAgICAgICAgICAnICAgICAgICAgICAgImZpbGVu
YW1lIjogciJXaWxsTm90TWF0Y2giLCcKKyAgICAgICAgICAgICcgICAgICAgIH0sJworICAgICAg
ICAgICAgJyAgICAgICAgIldhdGNoTGlzdDMiOiB7JworICAgICAgICAgICAgJyAgICAgICAgICAg
ICJmaWxlbmFtZSI6IHIiV2lsbE5vdE1hdGNoIiwnCisgICAgICAgICAgICAnICAgICAgICB9LCcK
ICAgICAgICAgICAgICcgICAgIH0sJwogICAgICAgICAgICAgJyAgICAiQ0NfUlVMRVMiOiB7Jwog
ICAgICAgICAgICAgJyAgICAgICAgIldhdGNoTGlzdDJ8V2F0Y2hMaXN0MXxXYXRjaExpc3QzIjog
WyAibGV2aW5AY2hyb21pdW0ub3JnIiwgXSwnCkBAIC0xMDUsNiArMTIxLDEyIEBAIGNsYXNzIFdh
dGNoTGlzdFRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgogICAgICAgICAgICAgJyAgICAgICAgIldh
dGNoTGlzdDEiOiB7JwogICAgICAgICAgICAgJyAgICAgICAgICAgICJmaWxlbmFtZSI6IHIiV2Vi
Q29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVGbGV4aWJsZUJveERhdGFcLmgiLCcKICAgICAgICAg
ICAgICcgICAgICAgIH0sJworICAgICAgICAgICAgJyAgICAgICAgIldhdGNoTGlzdDIiOiB7Jwor
ICAgICAgICAgICAgJyAgICAgICAgICAgICJmaWxlbmFtZSI6IHIiV2lsbE5vdE1hdGNoIiwnCisg
ICAgICAgICAgICAnICAgICAgICB9LCcKKyAgICAgICAgICAgICcgICAgICAgICJXYXRjaExpc3Qz
IjogeycKKyAgICAgICAgICAgICcgICAgICAgICAgICAiZmlsZW5hbWUiOiByIldpbGxOb3RNYXRj
aCIsJworICAgICAgICAgICAgJyAgICAgICAgfSwnCiAgICAgICAgICAgICAnICAgICB9LCcKICAg
ICAgICAgICAgICcgICAgIkNDX1JVTEVTIjogeycKICAgICAgICAgICAgICcgICAgICAgICJXYXRj
aExpc3QyfFdhdGNoTGlzdDF8V2F0Y2hMaXN0MyI6IFsgImxldmluQGNocm9taXVtLm9yZyIsIF0s
JwpAQCAtMTI2LDYgKzE0OCwxMiBAQCBjbGFzcyBXYXRjaExpc3RUZXN0KHVuaXR0ZXN0LlRlc3RD
YXNlKToKICAgICAgICAgICAgICcgICAgICAgICJXYXRjaExpc3QxIjogeycKICAgICAgICAgICAg
ICcgICAgICAgICAgICAiZmlsZW5hbWUiOiByIldlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1RoaXNG
aWxlRG9lc05vdEV4aXN0XC5oIiwnCiAgICAgICAgICAgICAnICAgICAgICB9LCcKKyAgICAgICAg
ICAgICcgICAgICAgICJXYXRjaExpc3QyIjogeycKKyAgICAgICAgICAgICcgICAgICAgICAgICAi
ZmlsZW5hbWUiOiByIldpbGxOb3RNYXRjaCIsJworICAgICAgICAgICAgJyAgICAgICAgfSwnCisg
ICAgICAgICAgICAnICAgICAgICAiV2F0Y2hMaXN0MyI6IHsnCisgICAgICAgICAgICAnICAgICAg
ICAgICAgImZpbGVuYW1lIjogciJXaWxsTm90TWF0Y2giLCcKKyAgICAgICAgICAgICcgICAgICAg
IH0sJwogICAgICAgICAgICAgJyAgICAgfSwnCiAgICAgICAgICAgICAnICAgICJDQ19SVUxFUyI6
IHsnCiAgICAgICAgICAgICAnICAgICAgICAiV2F0Y2hMaXN0MnxXYXRjaExpc3QxfFdhdGNoTGlz
dDMiOiBbICJsZXZpbkBjaHJvbWl1bS5vcmciLCBdLCcKZGlmZiAtLWdpdCBhL1Rvb2xzL1Njcmlw
dHMvd2Via2l0cHkvY29tbW9uL3dhdGNobGlzdC93YXRjaGxpc3RwYXJzZXIucHkgYi9Ub29scy9T
Y3JpcHRzL3dlYmtpdHB5L2NvbW1vbi93YXRjaGxpc3Qvd2F0Y2hsaXN0cGFyc2VyLnB5CmluZGV4
IGU5MTA4OThmYzY3YjI3YjUwMjdmMjY4YjY2MjA3ZDQ3NDc1ZGM2N2YuLjRmZDFlODAwZGUyMTli
NmYwNTVhZDFhZmY3YjNhNGMwMDYzNDczYmQgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Vi
a2l0cHkvY29tbW9uL3dhdGNobGlzdC93YXRjaGxpc3RwYXJzZXIucHkKKysrIGIvVG9vbHMvU2Ny
aXB0cy93ZWJraXRweS9jb21tb24vd2F0Y2hsaXN0L3dhdGNobGlzdHBhcnNlci5weQpAQCAtMjgs
NiArMjgsOCBAQAogCiBpbXBvcnQgZGlmZmxpYgogaW1wb3J0IHJlCisKK2Zyb20gd2Via2l0cHku
Y29tbW9uLm1lbW9pemVkIGltcG9ydCBtZW1vaXplZAogZnJvbSB3ZWJraXRweS5jb21tb24ud2F0
Y2hsaXN0LmNoYW5nZWRsaW5lcGF0dGVybiBpbXBvcnQgQ2hhbmdlZExpbmVQYXR0ZXJuCiBmcm9t
IHdlYmtpdHB5LmNvbW1vbi53YXRjaGxpc3QuZmlsZW5hbWVwYXR0ZXJuIGltcG9ydCBGaWxlbmFt
ZVBhdHRlcm4KIGZyb20gd2Via2l0cHkuY29tbW9uLndhdGNobGlzdC53YXRjaGxpc3QgaW1wb3J0
IFdhdGNoTGlzdApAQCAtNDUsMTIgKzQ3LDEyIEBAIGNsYXNzIFdhdGNoTGlzdFBhcnNlcihvYmpl
Y3QpOgogICAgICAgICAgICAgc2VsZi5fREVGSU5JVElPTlM6IHNlbGYuX3BhcnNlX2RlZmluaXRp
b25fc2VjdGlvbiwKICAgICAgICAgICAgIHNlbGYuX0NDX1JVTEVTOiBzZWxmLl9wYXJzZV9jY19y
dWxlcywKICAgICAgICAgICAgIHNlbGYuX01FU1NBR0VfUlVMRVM6IHNlbGYuX3BhcnNlX21lc3Nh
Z2VfcnVsZXMsCi0gICAgICAgICAgICB9CisgICAgICAgIH0KICAgICAgICAgc2VsZi5fZGVmaW5p
dGlvbl9wYXR0ZXJuX3BhcnNlcnMgPSB7CiAgICAgICAgICAgICAnZmlsZW5hbWUnOiBGaWxlbmFt
ZVBhdHRlcm4sCiAgICAgICAgICAgICAnaW5fYWRkZWRfbGluZXMnOiAobGFtYmRhIHJlZ2V4OiBD
aGFuZ2VkTGluZVBhdHRlcm4ocmVnZXgsIDApKSwKICAgICAgICAgICAgICdpbl9kZWxldGVkX2xp
bmVzJzogKGxhbWJkYSByZWdleDogQ2hhbmdlZExpbmVQYXR0ZXJuKHJlZ2V4LCAxKSksCi0gICAg
ICAgICAgICB9CisgICAgICAgIH0KIAogICAgIGRlZiBwYXJzZShzZWxmLCB3YXRjaF9saXN0X2Nv
bnRlbnRzKToKICAgICAgICAgd2F0Y2hfbGlzdCA9IFdhdGNoTGlzdCgpCkBAIC02Nyw2ICs2OSw3
IEBAIGNsYXNzIFdhdGNoTGlzdFBhcnNlcihvYmplY3QpOgogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAlIHNlY3Rpb24pCiAgICAgICAgICAgICBwYXJzZXIoZGljdGlvbmFyeVtzZWN0
aW9uXSwgd2F0Y2hfbGlzdCkKIAorICAgICAgICBzZWxmLl92YWxpZGF0ZSh3YXRjaF9saXN0KQog
ICAgICAgICByZXR1cm4gd2F0Y2hfbGlzdAogCiAgICAgZGVmIF9ldmFsX3dhdGNoX2xpc3Qoc2Vs
Ziwgd2F0Y2hfbGlzdF9jb250ZW50cyk6CkBAIC05NiwxNiArOTksNTIgQEAgY2xhc3MgV2F0Y2hM
aXN0UGFyc2VyKG9iamVjdCk6CiAKICAgICAgICAgICAgICAgICBwYXR0ZXJuID0gcGF0dGVybl9w
YXJzZXIoZGVmaW5pdGlvbltwYXR0ZXJuX3R5cGVdKQogICAgICAgICAgICAgICAgIGRlZmluaXRp
b25zW25hbWVdLmFwcGVuZChwYXR0ZXJuKQotICAgICAgICB3YXRjaF9saXN0LnNldF9kZWZpbml0
aW9ucyhkZWZpbml0aW9ucykKKyAgICAgICAgICAgIGlmIG5vdCBkZWZpbml0aW9uc1tuYW1lXToK
KyAgICAgICAgICAgICAgICByYWlzZSBFeGNlcHRpb24oJ1RoZSBkZWZpbml0aW9uICIlcyIgaGFz
IG5vIHBhdHRlcm5zLCBzbyBpdCBzaG91bGQgYmUgZGVsZXRlZC4nICUgbmFtZSkKKyAgICAgICAg
d2F0Y2hfbGlzdC5kZWZpbml0aW9ucyA9IGRlZmluaXRpb25zCiAKICAgICBkZWYgX3BhcnNlX3J1
bGVzKHNlbGYsIHJ1bGVzX3NlY3Rpb24pOgogICAgICAgICBydWxlcyA9IFtdCiAgICAgICAgIGZv
ciBjb21wbGV4X2RlZmluaXRpb24gaW4gcnVsZXNfc2VjdGlvbjoKLSAgICAgICAgICAgIHJ1bGVz
LmFwcGVuZChXYXRjaExpc3RSdWxlKGNvbXBsZXhfZGVmaW5pdGlvbiwgcnVsZXNfc2VjdGlvbltj
b21wbGV4X2RlZmluaXRpb25dKSkKKyAgICAgICAgICAgIGluc3RydWN0aW9ucyA9IHJ1bGVzX3Nl
Y3Rpb25bY29tcGxleF9kZWZpbml0aW9uXQorICAgICAgICAgICAgaWYgbm90IGluc3RydWN0aW9u
czoKKyAgICAgICAgICAgICAgICByYWlzZSBFeGNlcHRpb24oJ0EgcnVsZSBmb3IgZGVmaW5pdGlv
biAiJXMiIGlzIGVtcHR5LCBzbyBpdCBzaG91bGQgYmUgZGVsZXRlZC4nICUgY29tcGxleF9kZWZp
bml0aW9uKQorICAgICAgICAgICAgcnVsZXMuYXBwZW5kKFdhdGNoTGlzdFJ1bGUoY29tcGxleF9k
ZWZpbml0aW9uLCBpbnN0cnVjdGlvbnMpKQogICAgICAgICByZXR1cm4gcnVsZXMKIAogICAgIGRl
ZiBfcGFyc2VfY2NfcnVsZXMoc2VsZiwgY2Nfc2VjdGlvbiwgd2F0Y2hfbGlzdCk6Ci0gICAgICAg
IHdhdGNoX2xpc3Quc2V0X2NjX3J1bGVzKHNlbGYuX3BhcnNlX3J1bGVzKGNjX3NlY3Rpb24pKQor
ICAgICAgICB3YXRjaF9saXN0LmNjX3J1bGVzID0gc2VsZi5fcGFyc2VfcnVsZXMoY2Nfc2VjdGlv
bikKIAogICAgIGRlZiBfcGFyc2VfbWVzc2FnZV9ydWxlcyhzZWxmLCBtZXNzYWdlX3NlY3Rpb24s
IHdhdGNoX2xpc3QpOgotICAgICAgICB3YXRjaF9saXN0LnNldF9tZXNzYWdlX3J1bGVzKHNlbGYu
X3BhcnNlX3J1bGVzKG1lc3NhZ2Vfc2VjdGlvbikpCisgICAgICAgIHdhdGNoX2xpc3QubWVzc2Fn
ZV9ydWxlcyA9IHNlbGYuX3BhcnNlX3J1bGVzKG1lc3NhZ2Vfc2VjdGlvbikKKworICAgIGRlZiBf
dmFsaWRhdGUoc2VsZiwgd2F0Y2hfbGlzdCk6CisgICAgICAgIGNjX2RlZmluaXRpb25zX3NldCA9
IHNlbGYuX3J1bGVfZGVmaW5pdGlvbnNfYXNfc2V0KHdhdGNoX2xpc3QuY2NfcnVsZXMpCisgICAg
ICAgIG1lc3NhZ2VzX2RlZmluaXRpb25zX3NldCA9IHNlbGYuX3J1bGVfZGVmaW5pdGlvbnNfYXNf
c2V0KHdhdGNoX2xpc3QubWVzc2FnZV9ydWxlcykKKyAgICAgICAgc2VsZi5fdmVyaWZ5X2FsbF9k
ZWZpbml0aW9uc19hcmVfdXNlZCh3YXRjaF9saXN0LCBjY19kZWZpbml0aW9uc19zZXQudW5pb24o
bWVzc2FnZXNfZGVmaW5pdGlvbnNfc2V0KSkKKworICAgICAgICBzZWxmLl92YWxpZGF0ZV9kZWZp
bml0aW9ucyhjY19kZWZpbml0aW9uc19zZXQsIHNlbGYuX0NDX1JVTEVTLCB3YXRjaF9saXN0KQor
ICAgICAgICBzZWxmLl92YWxpZGF0ZV9kZWZpbml0aW9ucyhtZXNzYWdlc19kZWZpbml0aW9uc19z
ZXQsIHNlbGYuX01FU1NBR0VfUlVMRVMsIHdhdGNoX2xpc3QpCisKKyAgICBkZWYgX3ZlcmlmeV9h
bGxfZGVmaW5pdGlvbnNfYXJlX3VzZWQoc2VsZiwgd2F0Y2hfbGlzdCwgdXNlZF9kZWZpbml0aW9u
cyk6CisgICAgICAgIGRlZmluaXRpb25zX25vdF91c2VkID0gc2V0KHdhdGNoX2xpc3QuZGVmaW5p
dGlvbnMua2V5cygpKQorICAgICAgICBkZWZpbml0aW9uc19ub3RfdXNlZC5kaWZmZXJlbmNlX3Vw
ZGF0ZSh1c2VkX2RlZmluaXRpb25zKQorICAgICAgICBpZiBsZW4oZGVmaW5pdGlvbnNfbm90X3Vz
ZWQpOgorICAgICAgICAgICAgcmFpc2UgRXhjZXB0aW9uKCdUaGUgZm9sbG93aW5nIGRlZmluaXRp
b25zIGFyZSBub3QgdXNlZCBhbmQgc2hvdWxkIGJlIHJlbW92ZWQ6ICVzJyAlICgnLCAnLmpvaW4o
ZGVmaW5pdGlvbnNfbm90X3VzZWQpKSkKKworICAgIGRlZiBfdmFsaWRhdGVfZGVmaW5pdGlvbnMo
c2VsZiwgZGVmaW5pdGlvbnMsIHJ1bGVzX3NlY3Rpb25fbmFtZSwgd2F0Y2hfbGlzdCk6CisgICAg
ICAgIGRlY2xhcmVkX2RlZmluaXRpb25zID0gd2F0Y2hfbGlzdC5kZWZpbml0aW9ucy5rZXlzKCkK
KyAgICAgICAgZGVmaW5pdGlvbl9zZXQgPSBzZXQoZGVmaW5pdGlvbnMpCisgICAgICAgIGRlZmlu
aXRpb25fc2V0LmRpZmZlcmVuY2VfdXBkYXRlKGRlY2xhcmVkX2RlZmluaXRpb25zKQorCisgICAg
ICAgIGlmIGxlbihkZWZpbml0aW9uX3NldCk6CisgICAgICAgICAgICBzdWdnZXN0aW9ucyA9ICcn
CisgICAgICAgICAgICBpZiBsZW4oZGVmaW5pdGlvbl9zZXQpID09IDE6CisgICAgICAgICAgICAg
ICAgc3VnZ2VzdGlvbnMgPSBzZWxmLl9zdWdnZXN0X3dvcmRzKHNldCgpLnVuaW9uKGRlZmluaXRp
b25fc2V0KS5wb3AoKSwgZGVjbGFyZWRfZGVmaW5pdGlvbnMpCisgICAgICAgICAgICByYWlzZSBF
eGNlcHRpb24oJ0luIHNlY3Rpb24gIiVzIiwgdGhlIGZvbGxvd2luZyBkZWZpbml0aW9ucyBhcmUg
bm90IHVzZWQgYW5kIHNob3VsZCBiZSByZW1vdmVkOiAlcyVzJyAlIChydWxlc19zZWN0aW9uX25h
bWUsICcsICcuam9pbihkZWZpbml0aW9uX3NldCksIHN1Z2dlc3Rpb25zKSkKKworICAgIGRlZiBf
cnVsZV9kZWZpbml0aW9uc19hc19zZXQoc2VsZiwgcnVsZXMpOgorICAgICAgICBkZWZpbml0aW9u
X3NldCA9IHNldCgpCisgICAgICAgIGZvciBydWxlIGluIHJ1bGVzOgorICAgICAgICAgICAgZGVm
aW5pdGlvbl9zZXQgPSBkZWZpbml0aW9uX3NldC51bmlvbihydWxlLmRlZmluaXRpb25zX3RvX21h
dGNoKQorICAgICAgICByZXR1cm4gZGVmaW5pdGlvbl9zZXQKZGlmZiAtLWdpdCBhL1Rvb2xzL1Nj
cmlwdHMvd2Via2l0cHkvY29tbW9uL3dhdGNobGlzdC93YXRjaGxpc3RwYXJzZXJfdW5pdHRlc3Qu
cHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi93YXRjaGxpc3Qvd2F0Y2hsaXN0cGFy
c2VyX3VuaXR0ZXN0LnB5CmluZGV4IDhiNzgxMDZlY2FmMmNhYTAyMzk2MGY3YjE4ZTRkMDY3M2Uz
OTU0MGIuLmU0OTBhNjA2NGRlYmQ0YzQ4YmVhNWE0ZGU1NjNlYjU4OTc3NjEwMjYgMTAwNjQ0Ci0t
LSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL3dhdGNobGlzdC93YXRjaGxpc3RwYXJz
ZXJfdW5pdHRlc3QucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vd2F0Y2hs
aXN0L3dhdGNobGlzdHBhcnNlcl91bml0dGVzdC5weQpAQCAtODcsMyArODcsMTAzIEBAIGNsYXNz
IFdhdGNoTGlzdFBhcnNlclRlc3Qod2Via2l0dW5pdHRlc3QuVGVzdENhc2UpOgogICAgICAgICBz
ZWxmLmFzc2VydFJhaXNlc1JlZ2V4cChyJ1Vua25vd24gcGF0dGVybiB0eXBlICJpZmxlbmFtZSIg
aW4gZGVmaW5pdGlvbiAiV2F0Y2hMaXN0MSJcLlxzKicKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKyByJ1BlcmhhcHMgaXQgc2hvdWxkIGJlIGZpbGVuYW1lXC4nLAogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBzZWxmLl93YXRjaF9saXN0X3BhcnNlci5wYXJzZSwgd2F0
Y2hfbGlzdF93aXRoX2JhZF9tYXRjaF90eXBlKQorCisgICAgZGVmIHRlc3RfZW1wdHlfZGVmaW5p
dGlvbihzZWxmKToKKyAgICAgICAgd2F0Y2hfbGlzdCA9ICgKKyAgICAgICAgICAgICd7JworICAg
ICAgICAgICAgJyAgICAiREVGSU5JVElPTlMiOiB7JworICAgICAgICAgICAgJyAgICAgICAgIldh
dGNoTGlzdDEiOiB7JworICAgICAgICAgICAgJyAgICAgICAgfSwnCisgICAgICAgICAgICAnICAg
ICB9LCcKKyAgICAgICAgICAgICd9JykKKworICAgICAgICBzZWxmLmFzc2VydFJhaXNlc1JlZ2V4
cChyJ1RoZSBkZWZpbml0aW9uICJXYXRjaExpc3QxIiBoYXMgbm8gcGF0dGVybnMsIHNvIGl0IHNo
b3VsZCBiZSBkZWxldGVkLicsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYu
X3dhdGNoX2xpc3RfcGFyc2VyLnBhcnNlLCB3YXRjaF9saXN0KQorCisgICAgZGVmIHRlc3RfZW1w
dHlfY2NfcnVsZShzZWxmKToKKyAgICAgICAgd2F0Y2hfbGlzdCA9ICgKKyAgICAgICAgICAgICd7
JworICAgICAgICAgICAgJyAgICAiREVGSU5JVElPTlMiOiB7JworICAgICAgICAgICAgJyAgICAg
ICAgIldhdGNoTGlzdDEiOiB7JworICAgICAgICAgICAgJyAgICAgICAgICAgICJmaWxlbmFtZSI6
IHIiLipcXE15RmlsZU5hbWVcXC5jcHAiLCcKKyAgICAgICAgICAgICcgICAgICAgIH0sJworICAg
ICAgICAgICAgJyAgICAgfSwnCisgICAgICAgICAgICAnICAgICJDQ19SVUxFUyI6IHsnCisgICAg
ICAgICAgICAnICAgICAgICAiV2F0Y2hMaXN0MSI6IFtdLCcKKyAgICAgICAgICAgICcgICAgIH0s
JworICAgICAgICAgICAgJ30nKQorCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzUmVnZXhwKHIn
QSBydWxlIGZvciBkZWZpbml0aW9uICJXYXRjaExpc3QxIiBpcyBlbXB0eSwgc28gaXQgc2hvdWxk
IGJlIGRlbGV0ZWQuJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5fd2F0
Y2hfbGlzdF9wYXJzZXIucGFyc2UsIHdhdGNoX2xpc3QpCisKKyAgICBkZWYgdGVzdF9lbXB0eV9t
ZXNzYWdlX3J1bGUoc2VsZik6CisgICAgICAgIHdhdGNoX2xpc3QgPSAoCisgICAgICAgICAgICAn
eycKKyAgICAgICAgICAgICcgICAgIkRFRklOSVRJT05TIjogeycKKyAgICAgICAgICAgICcgICAg
ICAgICJXYXRjaExpc3QxIjogeycKKyAgICAgICAgICAgICcgICAgICAgICAgICAiZmlsZW5hbWUi
OiByIi4qXFxNeUZpbGVOYW1lXFwuY3BwIiwnCisgICAgICAgICAgICAnICAgICAgICB9LCcKKyAg
ICAgICAgICAgICcgICAgIH0sJworICAgICAgICAgICAgJyAgICAiTUVTU0FHRV9SVUxFUyI6IHsn
CisgICAgICAgICAgICAnICAgICAgICAiV2F0Y2hMaXN0MSI6IFsnCisgICAgICAgICAgICAnICAg
ICAgICBdLCcKKyAgICAgICAgICAgICcgICAgIH0sJworICAgICAgICAgICAgJ30nKQorCisgICAg
ICAgIHNlbGYuYXNzZXJ0UmFpc2VzUmVnZXhwKHInQSBydWxlIGZvciBkZWZpbml0aW9uICJXYXRj
aExpc3QxIiBpcyBlbXB0eSwgc28gaXQgc2hvdWxkIGJlIGRlbGV0ZWQuJywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgc2VsZi5fd2F0Y2hfbGlzdF9wYXJzZXIucGFyc2UsIHdhdGNo
X2xpc3QpCisKKyAgICBkZWYgdGVzdF91bnVzZWRfZGVmaW50aW9uKHNlbGYpOgorICAgICAgICB3
YXRjaF9saXN0ID0gKAorICAgICAgICAgICAgJ3snCisgICAgICAgICAgICAnICAgICJERUZJTklU
SU9OUyI6IHsnCisgICAgICAgICAgICAnICAgICAgICAiV2F0Y2hMaXN0MSI6IHsnCisgICAgICAg
ICAgICAnICAgICAgICAgICAgImZpbGVuYW1lIjogciIuKlxcTXlGaWxlTmFtZVxcLmNwcCIsJwor
ICAgICAgICAgICAgJyAgICAgICAgfSwnCisgICAgICAgICAgICAnICAgICB9LCcKKyAgICAgICAg
ICAgICd9JykKKworICAgICAgICBzZWxmLmFzc2VydFJhaXNlc1JlZ2V4cChyJ1RoZSBmb2xsb3dp
bmcgZGVmaW5pdGlvbnMgYXJlIG5vdCB1c2VkIGFuZCBzaG91bGQgYmUgcmVtb3ZlZDogV2F0Y2hM
aXN0MScsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuX3dhdGNoX2xpc3Rf
cGFyc2VyLnBhcnNlLCB3YXRjaF9saXN0KQorCisgICAgZGVmIHRlc3RfY2NfcnVsZV93aXRoX3Vu
ZGVmaW5lZF9kZWZpbnRpb24oc2VsZik6CisgICAgICAgIHdhdGNoX2xpc3QgPSAoCisgICAgICAg
ICAgICAneycKKyAgICAgICAgICAgICcgICAgIkNDX1JVTEVTIjogeycKKyAgICAgICAgICAgICcg
ICAgICAgICJXYXRjaExpc3QxIjogWyJsZXZpbkBjaHJvbWl1bS5vcmciXScKKyAgICAgICAgICAg
ICcgICAgIH0sJworICAgICAgICAgICAgJ30nKQorCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2Vz
UmVnZXhwKHInSW4gc2VjdGlvbiAiQ0NfUlVMRVMiLCB0aGUgZm9sbG93aW5nIGRlZmluaXRpb25z
IGFyZSBub3QgdXNlZCBhbmQgc2hvdWxkIGJlIHJlbW92ZWQ6IFdhdGNoTGlzdDEnLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLl93YXRjaF9saXN0X3BhcnNlci5wYXJzZSwg
d2F0Y2hfbGlzdCkKKworICAgIGRlZiB0ZXN0X21lc3NhZ2VfcnVsZV93aXRoX3VuZGVmaW5lZF9k
ZWZpbnRpb24oc2VsZik6CisgICAgICAgIHdhdGNoX2xpc3QgPSAoCisgICAgICAgICAgICAneycK
KyAgICAgICAgICAgICcgICAgIk1FU1NBR0VfUlVMRVMiOiB7JworICAgICAgICAgICAgJyAgICAg
ICAgIldhdGNoTGlzdDEiOiBbIlRoZSBtZXNzYWdlLiJdJworICAgICAgICAgICAgJyAgICAgfSwn
CisgICAgICAgICAgICAnfScpCisKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXNSZWdleHAocidJ
biBzZWN0aW9uICJNRVNTQUdFX1JVTEVTIiwgdGhlIGZvbGxvd2luZyBkZWZpbml0aW9ucyBhcmUg
bm90IHVzZWQgYW5kIHNob3VsZCBiZSByZW1vdmVkOiBXYXRjaExpc3QxJywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgc2VsZi5fd2F0Y2hfbGlzdF9wYXJzZXIucGFyc2UsIHdhdGNo
X2xpc3QpCisKKyAgICBkZWYgdGVzdF9jY19ydWxlX3dpdGhfdW5kZWZpbmVkX2RlZmludGlvbl93
aXRoX3N1Z2dlc3Rpb24oc2VsZik6CisgICAgICAgIHdhdGNoX2xpc3QgPSAoCisgICAgICAgICAg
ICAneycKKyAgICAgICAgICAgICcgICAgIkRFRklOSVRJT05TIjogeycKKyAgICAgICAgICAgICcg
ICAgICAgICJXYXRjaExpc3QxIjogeycKKyAgICAgICAgICAgICcgICAgICAgICAgICAiZmlsZW5h
bWUiOiByIi4qXFxNeUZpbGVOYW1lXFwuY3BwIiwnCisgICAgICAgICAgICAnICAgICAgICB9LCcK
KyAgICAgICAgICAgICcgICAgIH0sJworICAgICAgICAgICAgJyAgICAiQ0NfUlVMRVMiOiB7Jwor
ICAgICAgICAgICAgJyAgICAgICAgIldhdGNoTGlzdCI6IFsibGV2aW5AY2hyb21pdW0ub3JnIl0n
CisgICAgICAgICAgICAnICAgICB9LCcKKyAgICAgICAgICAgICcgICAgIk1FU1NBR0VfUlVMRVMi
OiB7JworICAgICAgICAgICAgJyAgICAgICAgIldhdGNoTGlzdDEiOiBbImxldmluQGNocm9taXVt
Lm9yZyJdJworICAgICAgICAgICAgJyAgICAgfSwnCisgICAgICAgICAgICAnfScpCisKKyAgICAg
ICAgc2VsZi5hc3NlcnRSYWlzZXNSZWdleHAocidJbiBzZWN0aW9uICJDQ19SVUxFUyIsIHRoZSBm
b2xsb3dpbmcgZGVmaW5pdGlvbnMgYXJlIG5vdCB1c2VkIGFuZCBzaG91bGQgYmUgcmVtb3ZlZDog
V2F0Y2hMaXN0XHMqJworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByJ1BlcmhhcHMg
aXQgc2hvdWxkIGJlIFdhdGNoTGlzdDFcLicsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHNlbGYuX3dhdGNoX2xpc3RfcGFyc2VyLnBhcnNlLCB3YXRjaF9saXN0KQpkaWZmIC0tZ2l0
IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vd2F0Y2hsaXN0L3dhdGNobGlzdHJ1bGUu
cHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi93YXRjaGxpc3Qvd2F0Y2hsaXN0cnVs
ZS5weQppbmRleCBhYzNlYTNjMTM1YzRmYTJhMDI5YmY5ZDYwMDllYjNmNjU1MzdjNDg4Li5kN2U2
ZjdiZjFjMzkzNWUwOTkxZDJmNDgyN2Y1ZDQ3NGIyMzkwNGM0IDEwMDY0NAotLS0gYS9Ub29scy9T
Y3JpcHRzL3dlYmtpdHB5L2NvbW1vbi93YXRjaGxpc3Qvd2F0Y2hsaXN0cnVsZS5weQorKysgYi9U
b29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi93YXRjaGxpc3Qvd2F0Y2hsaXN0cnVsZS5weQpA
QCAtMzAsMTEgKzMwLDExIEBACiBjbGFzcyBXYXRjaExpc3RSdWxlOgogICAgICcnJ0EgcnVsZSB3
aXRoIGluc3RydWN0aW9ucyB0byBkbyB3aGVuIHRoZSBydWxlIGlzIHNhdGlzaWZpZWQuJycnCiAg
ICAgZGVmIF9faW5pdF9fKHNlbGYsIGNvbXBsZXhfZGVmaW5pdGlvbiwgaW5zdHJ1Y3Rpb25zKToK
LSAgICAgICAgc2VsZi5fZGVmaW5pdGlvbnNfdG9fbWF0Y2ggPSBjb21wbGV4X2RlZmluaXRpb24u
c3BsaXQoJ3wnKQorICAgICAgICBzZWxmLmRlZmluaXRpb25zX3RvX21hdGNoID0gY29tcGxleF9k
ZWZpbml0aW9uLnNwbGl0KCd8JykKICAgICAgICAgc2VsZi5faW5zdHJ1Y3Rpb25zID0gaW5zdHJ1
Y3Rpb25zCiAKICAgICBkZWYgbWF0Y2goc2VsZiwgbWF0Y2hpbmdfZGVmaW5pdGlvbnMpOgotICAg
ICAgICBmb3IgdGVzdF9kZWZpbml0aW9uIGluIHNlbGYuX2RlZmluaXRpb25zX3RvX21hdGNoOgor
ICAgICAgICBmb3IgdGVzdF9kZWZpbml0aW9uIGluIHNlbGYuZGVmaW5pdGlvbnNfdG9fbWF0Y2g6
CiAgICAgICAgICAgICBpZiB0ZXN0X2RlZmluaXRpb24gaW4gbWF0Y2hpbmdfZGVmaW5pdGlvbnM6
CiAgICAgICAgICAgICAgICAgcmV0dXJuIFRydWUKICAgICAgICAgcmV0dXJuIEZhbHNlCg==
</data>
<flag name="review"
          id="106403"
          type_id="1"
          status="+"
          setter="eric"
    />
          </attachment>
      

    </bug>

</bugzilla>