<?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>90232</bug_id>
          
          <creation_ts>2012-06-28 18:00:15 -0700</creation_ts>
          <short_desc>add a pylint wrapper for linting python code</short_desc>
          <delta_ts>2012-06-28 18:46:19 -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>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="Dirk Pranke">dpranke</reporter>
          <assigned_to name="Dirk Pranke">dpranke</assigned_to>
          <cc>abarth</cc>
    
    <cc>eric</cc>
    
    <cc>levin</cc>
    
    <cc>ojan</cc>
    
    <cc>tony</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>660001</commentid>
    <comment_count>0</comment_count>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2012-06-28 18:00:15 -0700</bug_when>
    <thetext>add a pylint wrapper for linting python code</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>660003</commentid>
    <comment_count>1</comment_count>
      <attachid>150053</attachid>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2012-06-28 18:05:06 -0700</bug_when>
    <thetext>Created attachment 150053
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>660005</commentid>
    <comment_count>2</comment_count>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2012-06-28 18:06:19 -0700</bug_when>
    <thetext>the pylintrc file is cloned from the one chromium uses in depot_tools, tweaked to follow webkit&apos;s coding standards roughly. I will probably want to tweak it some more once I&apos;ve run it over more of the codebase.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>660009</commentid>
    <comment_count>3</comment_count>
      <attachid>150053</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-06-28 18:10:50 -0700</bug_when>
    <thetext>Comment on attachment 150053
Patch

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

We&apos;ll want to integrate this into check-webkit-style at some point so that it gets run automagically.

&gt; Tools/Scripts/webkitpy/pylintrc:43
&gt; +ignore=CVS

Do we need to say something about SVN here?

&gt; Tools/Scripts/webkitpy/pylintrc:130
&gt; +init-import=no

We&apos;d like to do this at some point.  Importing into __init__ turns out to be sketchier than we realized.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>660014</commentid>
    <comment_count>4</comment_count>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2012-06-28 18:13:09 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 150053 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=150053&amp;action=review
&gt; 
&gt; We&apos;ll want to integrate this into check-webkit-style at some point so that it gets run automagically.
&gt; 
&gt; &gt; Tools/Scripts/webkitpy/pylintrc:43
&gt; &gt; +ignore=CVS
&gt; 
&gt; Do we need to say something about SVN here?
&gt; 

Possibly; I haven&apos;t tried this under svn yet.

&gt; &gt; Tools/Scripts/webkitpy/pylintrc:130
&gt; &gt; +init-import=no
&gt; 
&gt; We&apos;d like to do this at some point.  Importing into __init__ turns out to be sketchier than we realized.

Yeah, there&apos;s probably a few things we should turn on.

Also, I need to fix the license text in lint-webkitpy. Somehow the version I added the text to didn&apos;t get included in the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>660048</commentid>
    <comment_count>5</comment_count>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2012-06-28 18:46:19 -0700</bug_when>
    <thetext>Committed r121502: &lt;http://trac.webkit.org/changeset/121502&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>150053</attachid>
            <date>2012-06-28 18:05:06 -0700</date>
            <delta_ts>2012-06-28 18:10:50 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-90232-20120628180505.patch</filename>
            <type>text/plain</type>
            <size>14124</size>
            <attacher name="Dirk Pranke">dpranke</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTIxNDkwCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNmYzNzEwZDU0MzhhZGE5NGUxN2RlNDNjMjkyYjkzMDFi
OTkzYTExZS4uY2EyYmI4YjhiYWRmZDIzYWM5ZTljYTQ4NDJlNzkyNDNkMTEzNzdlNCAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2
IEBACisyMDEyLTA2LTI4ICBEaXJrIFByYW5rZSAgPGRwcmFua2VAY2hyb21pdW0ub3JnPgorCisg
ICAgICAgIGFkZCBhIHB5bGludCB3cmFwcGVyIGZvciBsaW50aW5nIHB5dGhvbiBjb2RlCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05MDIzMgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEN1cnJlbnRseSB3ZSB1
c2UgJ3BlcDgnIHRvIGNoZWNrIHB5dGhvbiBjb2RlIGluCisgICAgICAgIGNoZWNrLXdlYmtpdC1z
dHlsZS4gcGVwOCBpcyBmYXN0IGJ1dCBzaW1wbGU7IHB5bGludCBpcyBzbG93ZXIKKyAgICAgICAg
YnV0IGhhcyBtdWNoIG1vcmUgcm9idXN0IGxpbnRpbmcgY2FwYWJpbGl0aWVzIGFuZCB3aWxsIGNh
dGNoCisgICAgICAgIHZhcmlhYmxlIHR5cG9zIGFuZCBhbGwgc29ydHMgb2Ygb3RoZXIgdGhpbmdz
LiBFdmVudHVhbGx5IHdlCisgICAgICAgIHNob3VsZCBzd2l0Y2ggY2hlY2std2Via2l0LXN0eWxl
IHRvIHVzZSB0aGlzLCBidXQgb3VyIGNvZGUgaXMKKyAgICAgICAgZmFyIGZyb20gbGludGluZyBu
b3cgc28gaXQgbmVlZHMgdG8gYmUgY2xlYW5lZCB1cCBmaXJzdC4KKworICAgICAgICBUaGlzIGNo
YW5nZSBhZGRzIHRoZSBpbmZyYXN0cnVjdHVyZSBhbmQgYSB3cmFwcGVyIHNvIHdlIGNhbgorICAg
ICAgICBzdGFydCBkb2luZyB0aGF0LgorCisgICAgICAgICogU2NyaXB0cy9saW50LXdlYmtpdHB5
OiBBZGRlZC4KKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3B5bGludHJjOiBBZGRlZC4KKyAg
ICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3RoaXJkcGFydHkvX19pbml0X18ucHk6CisgICAgICAg
IChBdXRvaW5zdGFsbEltcG9ydEhvb2suZmluZF9tb2R1bGUpOgorICAgICAgICAoQXV0b2luc3Rh
bGxJbXBvcnRIb29rLl9pbnN0YWxsX3B5bGludCk6CisKIDIwMTItMDYtMjggIFRlcnJ5IEFuZGVy
c29uICA8dGRhbmRlcnNvbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgW2Nocm9taXVtXSBSZXNl
dCB0aGUgZGV2aWNlIHNjYWxlIGZhY3RvciB0byAxIGJlZm9yZSBlYWNoIHRlc3QgaXMgcnVuCmRp
ZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL2xpbnQtd2Via2l0cHkgYi9Ub29scy9TY3JpcHRzL2xp
bnQtd2Via2l0cHkKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjM0YjlhMmQ0NzhiYWVjYWI1NzMwYTZlMWY1ZWJkMWIy
MzFlMjQ4NAotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL1NjcmlwdHMvbGludC13ZWJraXRweQpA
QCAtMCwwICsxLDEyIEBACisjIS91c3IvYmluL2VudiBweXRob24KK2ltcG9ydCBvcworaW1wb3J0
IHN5cworCitmcm9tIHdlYmtpdHB5LnRoaXJkcGFydHkuYXV0b2luc3RhbGxlZC5weWxpbnQgaW1w
b3J0IGxpbnQKKworc2NyaXB0X2RpciA9IG9zLnBhdGguYWJzcGF0aChvcy5wYXRoLmRpcm5hbWUo
X19maWxlX18pKQoraWYgbm90IHNjcmlwdF9kaXIgaW4gc3lzLnBhdGg6CisgICAgc3lzLnBhdGgu
YXBwZW5kKHNjcmlwdF9kaXIpCisKK3B5bGludHJjID0gb3MucGF0aC5qb2luKHNjcmlwdF9kaXIs
ICd3ZWJraXRweScsICdweWxpbnRyYycpCitsaW50LlJ1bihbJy0tcmNmaWxlJywgcHlsaW50cmMs
ICctZicsICdwYXJzZWFibGUnIF0gKyBzeXMuYXJndlsxOl0pCmRpZmYgLS1naXQgYS9Ub29scy9T
Y3JpcHRzL3dlYmtpdHB5L3B5bGludHJjIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9weWxpbnRy
YwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi5kYWU3NzhkNjMxNTMxZjkzZWZiMzYyYzkxY2VjZmUxMjZmMGRiOGQ5Ci0t
LSAvZGV2L251bGwKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9weWxpbnRyYwpAQCAtMCww
ICsxLDMwOSBAQAorIyBDb3B5cmlnaHQgKGMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKyMKKyMgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisjIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyMgbWV0OgorIworIyAg
ICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAorIyBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisjICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyMgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorIyBpbiB0aGUgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisjIGRp
c3RyaWJ1dGlvbi4KKyMgICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3Ig
dGhlIG5hbWVzIG9mIGl0cworIyBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBv
ciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorIyB0aGlzIHNvZnR3YXJlIHdpdGhvdXQg
c3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorIworIyBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisjICJB
UyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UCisjIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUgorIyBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorIyBPV05FUiBPUiBDT05UUklC
VVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyMg
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVAorIyBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyMgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisjIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyMg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFCisjIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisKK1tNQVNURVJdCisKKyMgU3BlY2lmeSBhIGNv
bmZpZ3VyYXRpb24gZmlsZS4KKyNyY2ZpbGU9CisKKyMgUHl0aG9uIGNvZGUgdG8gZXhlY3V0ZSwg
dXN1YWxseSBmb3Igc3lzLnBhdGggbWFuaXB1bGF0aW9uIHN1Y2ggYXMKKyMgcHlndGsucmVxdWly
ZSgpLgorI2luaXQtaG9vaz0KKworIyBQcm9maWxlZCBleGVjdXRpb24uCitwcm9maWxlPW5vCisK
KyMgQWRkIGZpbGVzIG9yIGRpcmVjdG9yaWVzIHRvIHRoZSBibGFja2xpc3QuIFRoZXkgc2hvdWxk
IGJlIGJhc2UgbmFtZXMsIG5vdAorIyBwYXRocy4KK2lnbm9yZT1DVlMKKworIyBQaWNrbGUgY29s
bGVjdGVkIGRhdGEgZm9yIGxhdGVyIGNvbXBhcmlzb25zLgorcGVyc2lzdGVudD15ZXMKKworIyBM
aXN0IG9mIHBsdWdpbnMgKGFzIGNvbW1hIHNlcGFyYXRlZCB2YWx1ZXMgb2YgcHl0aG9uIG1vZHVs
ZXMgbmFtZXMpIHRvIGxvYWQsCisjIHVzdWFsbHkgdG8gcmVnaXN0ZXIgYWRkaXRpb25hbCBjaGVj
a2Vycy4KK2xvYWQtcGx1Z2lucz0KKworCitbTUVTU0FHRVMgQ09OVFJPTF0KKworIyBFbmFibGUg
dGhlIG1lc3NhZ2UsIHJlcG9ydCwgY2F0ZWdvcnkgb3IgY2hlY2tlciB3aXRoIHRoZSBnaXZlbiBp
ZChzKS4gWW91IGNhbgorIyBlaXRoZXIgZ2l2ZSBtdWx0aXBsZSBpZGVudGlmaWVyIHNlcGFyYXRl
ZCBieSBjb21tYSAoLCkgb3IgcHV0IHRoaXMgb3B0aW9uCisjIG11bHRpcGxlIHRpbWUuCisjZW5h
YmxlPQorCisjIERpc2FibGUgdGhlIG1lc3NhZ2UsIHJlcG9ydCwgY2F0ZWdvcnkgb3IgY2hlY2tl
ciB3aXRoIHRoZSBnaXZlbiBpZChzKS4gWW91CisjIGNhbiBlaXRoZXIgZ2l2ZSBtdWx0aXBsZSBp
ZGVudGlmaWVyIHNlcGFyYXRlZCBieSBjb21tYSAoLCkgb3IgcHV0IHRoaXMgb3B0aW9uCisjIG11
bHRpcGxlIHRpbWUgKG9ubHkgb24gdGhlIGNvbW1hbmQgbGluZSwgbm90IGluIHRoZSBjb25maWd1
cmF0aW9uIGZpbGUgd2hlcmUKKyMgaXQgc2hvdWxkIGFwcGVhciBvbmx5IG9uY2UpLgorIyBDSEFO
R0VEOgorIyBDMDEwMzogSW52YWxpZCBuYW1lICIiCisjIEMwMTExOiBNaXNzaW5nIGRvY3N0cmlu
ZworIyBDMDMwMjogVG9vIG1hbnkgbGluZXMgaW4gbW9kdWxlIChOKQorIyBJMDAxMDogVW5hYmxl
IHRvIGNvbnNpZGVyIGlubGluZSBvcHRpb24gJycKKyMgSTAwMTE6IExvY2FsbHkgZGlzYWJsaW5n
IFdOTk5OCisjCisjIFIwMjAxOiBNZXRob2QgY291bGQgYmUgYSBmdW5jdGlvbgorIyBSMDgwMTog
U2ltaWxhciBsaW5lcyBpbiBOIGZpbGVzCisjIFIwOTAxOiBUb28gbWFueSBhbmNlc3RvcnMgKDgv
NykKKyMgUjA5MDI6IFRvbyBtYW55IGluc3RhbmNlIGF0dHJpYnV0ZXMgKE4vNykKKyMgUjA5MDM6
IFRvbyBmZXcgcHVibGljIG1ldGhvZHMgKE4vMikKKyMgUjA5MDQ6IFRvbyBtYW55IHB1YmxpYyBt
ZXRob2RzIChOLzIwKQorIyBSMDkxMTogVG9vIG1hbnkgcmV0dXJuIHN0YXRlbWVudHMgKE4vNikK
KyMgUjA5MTI6IFRvbyBtYW55IGJyYW5jaGVzIChOLzEyKQorIyBSMDkxMzogVG9vIG1hbnkgYXJn
dW1lbnRzIChOLzUpCisjIFIwOTE0OiBUb28gbWFueSBsb2NhbCB2YXJpYWJsZXMgKE4vMTUpCisj
IFIwOTE1OiBUb28gbWFueSBzdGF0ZW1lbnRzIChOLzUwKQorIyBSMDkyMTogQWJzdHJhY3QgY2xh
c3Mgbm90IHJlZmVyZW5jZWQKKyMgUjA5MjI6IEFic3RyYWN0IGNsYXNzIGlzIG9ubHkgcmVmZXJl
bmNlZCAxIHRpbWVzCisjIFcwMTIyOiBVc2Ugb2YgdGhlIGV4ZWMgc3RhdGVtZW50CisjIFcwMTQx
OiBVc2VkIGJ1aWx0aW4gZnVuY3Rpb24gJycKKyMgVzAyMTI6IEFjY2VzcyB0byBhIHByb3RlY3Rl
ZCBtZW1iZXIgWCBvZiBhIGNsaWVudCBjbGFzcworIyBXMDE0MjogVXNlZCAqIG9yICoqIG1hZ2lj
CisjIFcwNDAyOiBVc2VzIG9mIGEgZGVwcmVjYXRlZCBtb2R1bGUgJ3N0cmluZycKKyMgVzA0MDQ6
IDQxOiBSZWltcG9ydCAnWFgnIChpbXBvcnRlZCBsaW5lIE5OKQorIyBXMDUxMTogVE9ETworIyBX
MDYwMzogVXNpbmcgdGhlIGdsb2JhbCBzdGF0ZW1lbnQKKyMgVzA3MDM6IENhdGNoICJFeGNlcHRp
b24iCisjIFcxMjAxOiBTcGVjaWZ5IHN0cmluZyBmb3JtYXQgYXJndW1lbnRzIGFzIGxvZ2dpbmcg
ZnVuY3Rpb24gcGFyYW1ldGVycworZGlzYWJsZT1DMDEwMyxDMDExMSxDMDMwMixJMDAxMCxJMDAx
MSxSMDIwMSxSMDgwMSxSMDkwMSxSMDkwMixSMDkwMyxSMDkwNCxSMDkxMSxSMDkxMixSMDkxMyxS
MDkxNCxSMDkxNSxSMDkyMSxSMDkyMixXMDEyMixXMDE0MSxXMDE0MixXMDIxMixXMDQwMixXMDQw
NCxXMDUxMSxXMDYwMyxXMDcwMyxXMTIwMQorCisKK1tSRVBPUlRTXQorCisjIFNldCB0aGUgb3V0
cHV0IGZvcm1hdC4gQXZhaWxhYmxlIGZvcm1hdHMgYXJlIHRleHQsIHBhcnNlYWJsZSwgY29sb3Jp
emVkLCBtc3ZzCisjICh2aXN1YWwgc3R1ZGlvKSBhbmQgaHRtbAorb3V0cHV0LWZvcm1hdD10ZXh0
CisKKyMgSW5jbHVkZSBtZXNzYWdlJ3MgaWQgaW4gb3V0cHV0CitpbmNsdWRlLWlkcz15ZXMKKwor
IyBQdXQgbWVzc2FnZXMgaW4gYSBzZXBhcmF0ZSBmaWxlIGZvciBlYWNoIG1vZHVsZSAvIHBhY2th
Z2Ugc3BlY2lmaWVkIG9uIHRoZQorIyBjb21tYW5kIGxpbmUgaW5zdGVhZCBvZiBwcmludGluZyB0
aGVtIG9uIHN0ZG91dC4gUmVwb3J0cyAoaWYgYW55KSB3aWxsIGJlCisjIHdyaXR0ZW4gaW4gYSBm
aWxlIG5hbWUgInB5bGludF9nbG9iYWwuW3R4dHxodG1sXSIuCitmaWxlcy1vdXRwdXQ9bm8KKwor
IyBUZWxscyB3aGV0aGVyIHRvIGRpc3BsYXkgYSBmdWxsIHJlcG9ydCBvciBvbmx5IHRoZSBtZXNz
YWdlcworIyBDSEFOR0VEOgorcmVwb3J0cz1ubworCisjIFB5dGhvbiBleHByZXNzaW9uIHdoaWNo
IHNob3VsZCByZXR1cm4gYSBub3RlIGxlc3MgdGhhbiAxMCAoMTAgaXMgdGhlIGhpZ2hlc3QKKyMg
bm90ZSkuIFlvdSBoYXZlIGFjY2VzcyB0byB0aGUgdmFyaWFibGVzIGVycm9ycyB3YXJuaW5nLCBz
dGF0ZW1lbnQgd2hpY2gKKyMgcmVzcGVjdGl2ZWx5IGNvbnRhaW4gdGhlIG51bWJlciBvZiBlcnJv
cnMgLyB3YXJuaW5ncyBtZXNzYWdlcyBhbmQgdGhlIHRvdGFsCisjIG51bWJlciBvZiBzdGF0ZW1l
bnRzIGFuYWx5emVkLiBUaGlzIGlzIHVzZWQgYnkgdGhlIGdsb2JhbCBldmFsdWF0aW9uIHJlcG9y
dAorIyAoUlAwMDA0KS4KK2V2YWx1YXRpb249MTAuMCAtICgoZmxvYXQoNSAqIGVycm9yICsgd2Fy
bmluZyArIHJlZmFjdG9yICsgY29udmVudGlvbikgLyBzdGF0ZW1lbnQpICogMTApCisKKyMgQWRk
IGEgY29tbWVudCBhY2NvcmRpbmcgdG8geW91ciBldmFsdWF0aW9uIG5vdGUuIFRoaXMgaXMgdXNl
ZCBieSB0aGUgZ2xvYmFsCisjIGV2YWx1YXRpb24gcmVwb3J0IChSUDAwMDQpLgorY29tbWVudD1u
bworCisKK1tWQVJJQUJMRVNdCisKKyMgVGVsbHMgd2hldGhlciB3ZSBzaG91bGQgY2hlY2sgZm9y
IHVudXNlZCBpbXBvcnQgaW4gX19pbml0X18gZmlsZXMuCitpbml0LWltcG9ydD1ubworCisjIEEg
cmVndWxhciBleHByZXNzaW9uIG1hdGNoaW5nIHRoZSBiZWdpbm5pbmcgb2YgdGhlIG5hbWUgb2Yg
ZHVtbXkgdmFyaWFibGVzCisjIChpLmUuIG5vdCB1c2VkKS4KK2R1bW15LXZhcmlhYmxlcy1yZ3g9
X3xkdW1teQorCisjIExpc3Qgb2YgYWRkaXRpb25hbCBuYW1lcyBzdXBwb3NlZCB0byBiZSBkZWZp
bmVkIGluIGJ1aWx0aW5zLiBSZW1lbWJlciB0aGF0CisjIHlvdSBzaG91bGQgYXZvaWQgdG8gZGVm
aW5lIG5ldyBidWlsdGlucyB3aGVuIHBvc3NpYmxlLgorYWRkaXRpb25hbC1idWlsdGlucz0KKwor
CitbVFlQRUNIRUNLXQorCisjIFRlbGxzIHdoZXRoZXIgbWlzc2luZyBtZW1iZXJzIGFjY2Vzc2Vk
IGluIG1peGluIGNsYXNzIHNob3VsZCBiZSBpZ25vcmVkLiBBCisjIG1peGluIGNsYXNzIGlzIGRl
dGVjdGVkIGlmIGl0cyBuYW1lIGVuZHMgd2l0aCAibWl4aW4iIChjYXNlIGluc2Vuc2l0aXZlKS4K
K2lnbm9yZS1taXhpbi1tZW1iZXJzPXllcworCisjIExpc3Qgb2YgY2xhc3NlcyBuYW1lcyBmb3Ig
d2hpY2ggbWVtYmVyIGF0dHJpYnV0ZXMgc2hvdWxkIG5vdCBiZSBjaGVja2VkCisjICh1c2VmdWwg
Zm9yIGNsYXNzZXMgd2l0aCBhdHRyaWJ1dGVzIGR5bmFtaWNhbGx5IHNldCkuCitpZ25vcmVkLWNs
YXNzZXM9U1FMT2JqZWN0LHR3aXN0ZWQuaW50ZXJuZXQucmVhY3RvcixoYXNobGliLGdvb2dsZS5h
cHBlbmdpbmUuYXBpLm1lbWNhY2hlCisKKyMgV2hlbiB6b3BlIG1vZGUgaXMgYWN0aXZhdGVkLCBh
ZGQgYSBwcmVkZWZpbmVkIHNldCBvZiBab3BlIGFjcXVpcmVkIGF0dHJpYnV0ZXMKKyMgdG8gZ2Vu
ZXJhdGVkLW1lbWJlcnMuCit6b3BlPW5vCisKKyMgTGlzdCBvZiBtZW1iZXJzIHdoaWNoIGFyZSBz
ZXQgZHluYW1pY2FsbHkgYW5kIG1pc3NlZCBieSBweWxpbnQgaW5mZXJlbmNlCisjIHN5c3RlbSwg
YW5kIHNvIHNob3VsZG4ndCB0cmlnZ2VyIEUwMjAxIHdoZW4gYWNjZXNzZWQuIFB5dGhvbiByZWd1
bGFyCisjIGV4cHJlc3Npb25zIGFyZSBhY2NlcHRlZC4KK2dlbmVyYXRlZC1tZW1iZXJzPVJFUVVF
U1QsYWNsX3VzZXJzLGFxX3BhcmVudAorCisKK1tNSVNDRUxMQU5FT1VTXQorCisjIExpc3Qgb2Yg
bm90ZSB0YWdzIHRvIHRha2UgaW4gY29uc2lkZXJhdGlvbiwgc2VwYXJhdGVkIGJ5IGEgY29tbWEu
Citub3Rlcz1GSVhNRSxYWFgsVE9ETworCisKK1tTSU1JTEFSSVRJRVNdCisKKyMgTWluaW11bSBs
aW5lcyBudW1iZXIgb2YgYSBzaW1pbGFyaXR5LgorbWluLXNpbWlsYXJpdHktbGluZXM9NAorCisj
IElnbm9yZSBjb21tZW50cyB3aGVuIGNvbXB1dGluZyBzaW1pbGFyaXRpZXMuCitpZ25vcmUtY29t
bWVudHM9eWVzCisKKyMgSWdub3JlIGRvY3N0cmluZ3Mgd2hlbiBjb21wdXRpbmcgc2ltaWxhcml0
aWVzLgoraWdub3JlLWRvY3N0cmluZ3M9eWVzCisKKworW0ZPUk1BVF0KKworIyBNYXhpbXVtIG51
bWJlciBvZiBjaGFyYWN0ZXJzIG9uIGEgc2luZ2xlIGxpbmUuCittYXgtbGluZS1sZW5ndGg9MjAw
CisKKyMgTWF4aW11bSBudW1iZXIgb2YgbGluZXMgaW4gYSBtb2R1bGUKK21heC1tb2R1bGUtbGlu
ZXM9MTAwMAorCisjIFN0cmluZyB1c2VkIGFzIGluZGVudGF0aW9uIHVuaXQuIFRoaXMgaXMgdXN1
YWxseSAiICIgKDQgc3BhY2VzKSBvciAiXHQiICgxCisjIHRhYikuCisjIENIQU5HRUQ6CitpbmRl
bnQtc3RyaW5nPScgICAgJworCisKK1tCQVNJQ10KKworIyBSZXF1aXJlZCBhdHRyaWJ1dGVzIGZv
ciBtb2R1bGUsIHNlcGFyYXRlZCBieSBhIGNvbW1hCityZXF1aXJlZC1hdHRyaWJ1dGVzPQorCisj
IExpc3Qgb2YgYnVpbHRpbnMgZnVuY3Rpb24gbmFtZXMgdGhhdCBzaG91bGQgbm90IGJlIHVzZWQs
IHNlcGFyYXRlZCBieSBhIGNvbW1hCitiYWQtZnVuY3Rpb25zPW1hcCxmaWx0ZXIsYXBwbHksaW5w
dXQKKworIyBSZWd1bGFyIGV4cHJlc3Npb24gd2hpY2ggc2hvdWxkIG9ubHkgbWF0Y2ggY29ycmVj
dCBtb2R1bGUgbmFtZXMKK21vZHVsZS1yZ3g9KChbYS16X11bYS16MC05X10qKXwoW0EtWl1bYS16
QS1aMC05XSspKSQKKworIyBSZWd1bGFyIGV4cHJlc3Npb24gd2hpY2ggc2hvdWxkIG9ubHkgbWF0
Y2ggY29ycmVjdCBtb2R1bGUgbGV2ZWwgbmFtZXMKK2NvbnN0LXJneD0oKFtBLVpfXVtBLVowLTlf
XSopfChfXy4qX18pKSQKKworIyBSZWd1bGFyIGV4cHJlc3Npb24gd2hpY2ggc2hvdWxkIG9ubHkg
bWF0Y2ggY29ycmVjdCBjbGFzcyBuYW1lcworY2xhc3Mtcmd4PVtBLVpfXVthLXpBLVowLTldKyQK
KworIyBSZWd1bGFyIGV4cHJlc3Npb24gd2hpY2ggc2hvdWxkIG9ubHkgbWF0Y2ggY29ycmVjdCBm
dW5jdGlvbiBuYW1lcworZnVuY3Rpb24tcmd4PVthLXpfXVthLXowLTlfXXsyLDMwfSQKKworIyBS
ZWd1bGFyIGV4cHJlc3Npb24gd2hpY2ggc2hvdWxkIG9ubHkgbWF0Y2ggY29ycmVjdCBtZXRob2Qg
bmFtZXMKK21ldGhvZC1yZ3g9W2Etel9dW2EtejAtOV9dezIsMzB9JAorCisjIFJlZ3VsYXIgZXhw
cmVzc2lvbiB3aGljaCBzaG91bGQgb25seSBtYXRjaCBjb3JyZWN0IGluc3RhbmNlIGF0dHJpYnV0
ZSBuYW1lcworYXR0ci1yZ3g9W2Etel9dW2EtejAtOV9dezIsMzB9JAorCisjIFJlZ3VsYXIgZXhw
cmVzc2lvbiB3aGljaCBzaG91bGQgb25seSBtYXRjaCBjb3JyZWN0IGFyZ3VtZW50IG5hbWVzCith
cmd1bWVudC1yZ3g9W2Etel9dW2EtejAtOV9dezIsMzB9JAorCisjIFJlZ3VsYXIgZXhwcmVzc2lv
biB3aGljaCBzaG91bGQgb25seSBtYXRjaCBjb3JyZWN0IHZhcmlhYmxlIG5hbWVzCit2YXJpYWJs
ZS1yZ3g9W2Etel9dW2EtejAtOV9dezIsMzB9JAorCisjIFJlZ3VsYXIgZXhwcmVzc2lvbiB3aGlj
aCBzaG91bGQgb25seSBtYXRjaCBjb3JyZWN0IGxpc3QgY29tcHJlaGVuc2lvbiAvCisjIGdlbmVy
YXRvciBleHByZXNzaW9uIHZhcmlhYmxlIG5hbWVzCitpbmxpbmV2YXItcmd4PVtBLVphLXpfXVtB
LVphLXowLTlfXSokCisKKyMgR29vZCB2YXJpYWJsZSBuYW1lcyB3aGljaCBzaG91bGQgYWx3YXlz
IGJlIGFjY2VwdGVkLCBzZXBhcmF0ZWQgYnkgYSBjb21tYQorZ29vZC1uYW1lcz1pLGosayxleCxS
dW4sXworCisjIEJhZCB2YXJpYWJsZSBuYW1lcyB3aGljaCBzaG91bGQgYWx3YXlzIGJlIHJlZnVz
ZWQsIHNlcGFyYXRlZCBieSBhIGNvbW1hCitiYWQtbmFtZXM9Zm9vLGJhcixiYXosdG90byx0dXR1
LHRhdGEKKworIyBSZWd1bGFyIGV4cHJlc3Npb24gd2hpY2ggc2hvdWxkIG9ubHkgbWF0Y2ggZnVu
Y3Rpb25zIG9yIGNsYXNzZXMgbmFtZSB3aGljaCBkbworIyBub3QgcmVxdWlyZSBhIGRvY3N0cmlu
Zworbm8tZG9jc3RyaW5nLXJneD1fXy4qX18KKworCitbREVTSUdOXQorCisjIE1heGltdW0gbnVt
YmVyIG9mIGFyZ3VtZW50cyBmb3IgZnVuY3Rpb24gLyBtZXRob2QKK21heC1hcmdzPTUKKworIyBB
cmd1bWVudCBuYW1lcyB0aGF0IG1hdGNoIHRoaXMgZXhwcmVzc2lvbiB3aWxsIGJlIGlnbm9yZWQu
IERlZmF1bHQgdG8gbmFtZQorIyB3aXRoIGxlYWRpbmcgdW5kZXJzY29yZQoraWdub3JlZC1hcmd1
bWVudC1uYW1lcz1fLioKKworIyBNYXhpbXVtIG51bWJlciBvZiBsb2NhbHMgZm9yIGZ1bmN0aW9u
IC8gbWV0aG9kIGJvZHkKK21heC1sb2NhbHM9MTUKKworIyBNYXhpbXVtIG51bWJlciBvZiByZXR1
cm4gLyB5aWVsZCBmb3IgZnVuY3Rpb24gLyBtZXRob2QgYm9keQorbWF4LXJldHVybnM9NgorCisj
IE1heGltdW0gbnVtYmVyIG9mIGJyYW5jaCBmb3IgZnVuY3Rpb24gLyBtZXRob2QgYm9keQorbWF4
LWJyYW5jaHM9MTIKKworIyBNYXhpbXVtIG51bWJlciBvZiBzdGF0ZW1lbnRzIGluIGZ1bmN0aW9u
IC8gbWV0aG9kIGJvZHkKK21heC1zdGF0ZW1lbnRzPTUwCisKKyMgTWF4aW11bSBudW1iZXIgb2Yg
cGFyZW50cyBmb3IgYSBjbGFzcyAoc2VlIFIwOTAxKS4KK21heC1wYXJlbnRzPTcKKworIyBNYXhp
bXVtIG51bWJlciBvZiBhdHRyaWJ1dGVzIGZvciBhIGNsYXNzIChzZWUgUjA5MDIpLgorbWF4LWF0
dHJpYnV0ZXM9NworCisjIE1pbmltdW0gbnVtYmVyIG9mIHB1YmxpYyBtZXRob2RzIGZvciBhIGNs
YXNzIChzZWUgUjA5MDMpLgorbWluLXB1YmxpYy1tZXRob2RzPTIKKworIyBNYXhpbXVtIG51bWJl
ciBvZiBwdWJsaWMgbWV0aG9kcyBmb3IgYSBjbGFzcyAoc2VlIFIwOTA0KS4KK21heC1wdWJsaWMt
bWV0aG9kcz0yMAorCisKK1tDTEFTU0VTXQorCisjIExpc3Qgb2YgaW50ZXJmYWNlIG1ldGhvZHMg
dG8gaWdub3JlLCBzZXBhcmF0ZWQgYnkgYSBjb21tYS4gVGhpcyBpcyB1c2VkIGZvcgorIyBpbnN0
YW5jZSB0byBub3QgY2hlY2sgbWV0aG9kcyBkZWZpbmVzIGluIFpvcGUncyBJbnRlcmZhY2UgYmFz
ZSBjbGFzcy4KK2lnbm9yZS1pZmFjZS1tZXRob2RzPWlzSW1wbGVtZW50ZWRCeSxkZWZlcnJlZCxl
eHRlbmRzLG5hbWVzLG5hbWVzQW5kRGVzY3JpcHRpb25zLHF1ZXJ5RGVzY3JpcHRpb25Gb3IsZ2V0
QmFzZXMsZ2V0RGVzY3JpcHRpb25Gb3IsZ2V0RG9jLGdldE5hbWUsZ2V0VGFnZ2VkVmFsdWUsZ2V0
VGFnZ2VkVmFsdWVUYWdzLGlzRXF1YWxPckV4dGVuZGVkQnksc2V0VGFnZ2VkVmFsdWUsaXNJbXBs
ZW1lbnRlZEJ5SW5zdGFuY2VzT2YsYWRhcHRXaXRoLGlzX2ltcGxlbWVudGVkX2J5CisKKyMgTGlz
dCBvZiBtZXRob2QgbmFtZXMgdXNlZCB0byBkZWNsYXJlIChpLmUuIGFzc2lnbikgaW5zdGFuY2Ug
YXR0cmlidXRlcy4KK2RlZmluaW5nLWF0dHItbWV0aG9kcz1fX2luaXRfXyxfX25ld19fLHNldFVw
CisKKyMgTGlzdCBvZiB2YWxpZCBuYW1lcyBmb3IgdGhlIGZpcnN0IGFyZ3VtZW50IGluIGEgY2xh
c3MgbWV0aG9kLgordmFsaWQtY2xhc3NtZXRob2QtZmlyc3QtYXJnPWNscworCisKK1tJTVBPUlRT
XQorCisjIERlcHJlY2F0ZWQgbW9kdWxlcyB3aGljaCBzaG91bGQgbm90IGJlIHVzZWQsIHNlcGFy
YXRlZCBieSBhIGNvbW1hCitkZXByZWNhdGVkLW1vZHVsZXM9cmVnc3ViLHN0cmluZyxURVJNSU9T
LEJhc3Rpb24scmV4ZWMKKworIyBDcmVhdGUgYSBncmFwaCBvZiBldmVyeSAoaS5lLiBpbnRlcm5h
bCBhbmQgZXh0ZXJuYWwpIGRlcGVuZGVuY2llcyBpbiB0aGUKKyMgZ2l2ZW4gZmlsZSAocmVwb3J0
IFJQMDQwMiBtdXN0IG5vdCBiZSBkaXNhYmxlZCkKK2ltcG9ydC1ncmFwaD0KKworIyBDcmVhdGUg
YSBncmFwaCBvZiBleHRlcm5hbCBkZXBlbmRlbmNpZXMgaW4gdGhlIGdpdmVuIGZpbGUgKHJlcG9y
dCBSUDA0MDIgbXVzdAorIyBub3QgYmUgZGlzYWJsZWQpCitleHQtaW1wb3J0LWdyYXBoPQorCisj
IENyZWF0ZSBhIGdyYXBoIG9mIGludGVybmFsIGRlcGVuZGVuY2llcyBpbiB0aGUgZ2l2ZW4gZmls
ZSAocmVwb3J0IFJQMDQwMiBtdXN0CisjIG5vdCBiZSBkaXNhYmxlZCkKK2ludC1pbXBvcnQtZ3Jh
cGg9CisKKworW0VYQ0VQVElPTlNdCisKKyMgRXhjZXB0aW9ucyB0aGF0IHdpbGwgZW1pdCBhIHdh
cm5pbmcgd2hlbiBiZWluZyBjYXVnaHQuIERlZmF1bHRzIHRvCisjICJFeGNlcHRpb24iCitvdmVy
Z2VuZXJhbC1leGNlcHRpb25zPUV4Y2VwdGlvbgpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93
ZWJraXRweS90aGlyZHBhcnR5L19faW5pdF9fLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90
aGlyZHBhcnR5L19faW5pdF9fLnB5CmluZGV4IDA3OGUxODA0MTQxYzFjZGY0NmIwZDVlMDVlNDIw
MzNjODJkMzQwNTkuLmIxZWRkNGQwYmQwNjBkNjQ4OTExMjMwNmRjOTJmMDcxODY1NjYzNWMgMTAw
NjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdGhpcmRwYXJ0eS9fX2luaXRfXy5weQor
KysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3RoaXJkcGFydHkvX19pbml0X18ucHkKQEAgLTc0
LDYgKzc0LDggQEAgY2xhc3MgQXV0b2luc3RhbGxJbXBvcnRIb29rKG9iamVjdCk6CiAgICAgICAg
ICAgICBzZWxmLl9pbnN0YWxsX21lY2hhbml6ZSgpCiAgICAgICAgIGVsaWYgJy5wZXA4JyBpbiBm
dWxsbmFtZToKICAgICAgICAgICAgIHNlbGYuX2luc3RhbGxfcGVwOCgpCisgICAgICAgIGVsaWYg
Jy5weWxpbnQnIGluIGZ1bGxuYW1lOgorICAgICAgICAgICAgc2VsZi5faW5zdGFsbF9weWxpbnQo
KQogICAgICAgICBlbGlmICcuY292ZXJhZ2UnIGluIGZ1bGxuYW1lOgogICAgICAgICAgICAgc2Vs
Zi5faW5zdGFsbF9jb3ZlcmFnZSgpCiAgICAgICAgIGVsaWYgJy5lbGl6YScgaW4gZnVsbG5hbWU6
CkBAIC05Myw2ICs5NSwxMiBAQCBjbGFzcyBBdXRvaW5zdGFsbEltcG9ydEhvb2sob2JqZWN0KToK
ICAgICAgICAgc2VsZi5faW5zdGFsbCgiaHR0cDovL3B5cGkucHl0aG9uLm9yZy9wYWNrYWdlcy9z
b3VyY2UvcC9wZXA4L3BlcDgtMC41LjAudGFyLmd6I21kNT01MTJhODE4YWY5OTc5MjkwY2Q2MTlj
Y2U4ZTljMmUyYiIsCiAgICAgICAgICAgICAgICAgICAgICAgInBlcDgtMC41LjAvcGVwOC5weSIp
CiAKKyAgICBkZWYgX2luc3RhbGxfcHlsaW50KHNlbGYpOgorICAgICAgICBpZiBub3Qgc2VsZi5f
ZnMuZXhpc3RzKHNlbGYuX2ZzLmpvaW4oX0FVVE9JTlNUQUxMRURfRElSLCAicHlsaW50IikpOgor
ICAgICAgICAgICAgc2VsZi5faW5zdGFsbCgnaHR0cDovL3B5cGkucHl0aG9uLm9yZy9wYWNrYWdl
cy9zb3VyY2UvcC9weWxpbnQvcHlsaW50LTAuMjUuMS50YXIuZ3ojbWQ1PTcyOGJiYzJiMzM5YmMz
NzQ5YWYwMTM3MDlhN2Y4N2E1JywgJ3B5bGludC0wLjI1LjEnKQorICAgICAgICAgICAgc2VsZi5f
ZnMubW92ZShzZWxmLl9mcy5qb2luKF9BVVRPSU5TVEFMTEVEX0RJUiwgInB5bGludC0wLjI1LjEi
KSwgc2VsZi5fZnMuam9pbihfQVVUT0lOU1RBTExFRF9ESVIsICJweWxpbnQiKSkKKworCiAgICAg
IyBhdXRvaW5zdGFsbGVkLmJ1aWxkYm90IGlzIHVzZWQgYnkgQnVpbGRTbGF2ZVN1cHBvcnQvYnVp
bGQud2Via2l0Lm9yZy1jb25maWcvbWFzdGVyY2ZnX3VuaXR0ZXN0LnB5CiAgICAgIyBhbmQgc2hv
dWxkIGlkZWFsbHkgbWF0Y2ggdGhlIHZlcnNpb24gb2YgQnVpbGRCb3QgdXNlZCBhdCBidWlsZC53
ZWJraXQub3JnLgogICAgIGRlZiBfaW5zdGFsbF9idWlsZGJvdChzZWxmKToK
</data>
<flag name="review"
          id="158224"
          type_id="1"
          status="+"
          setter="abarth"
    />
          </attachment>
      

    </bug>

</bugzilla>