<?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>123559</bug_id>
          
          <creation_ts>2013-10-30 23:31:29 -0700</creation_ts>
          <short_desc>build.webkit.org should have a clean build button</short_desc>
          <delta_ts>2016-03-18 10:07:32 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Ryosuke Niwa">rniwa</assigned_to>
          <cc>ap</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>lforschler</cc>
    
    <cc>mrobinson</cc>
    
    <cc>ossy</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>945410</commentid>
    <comment_count>0</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-10-30 23:31:29 -0700</bug_when>
    <thetext>We should be able to trigger a clean build without having to ask buildslave owners to manually delete WebKitBuild directory.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>945411</commentid>
    <comment_count>1</comment_count>
      <attachid>215621</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-10-30 23:36:05 -0700</bug_when>
    <thetext>Created attachment 215621
Adds the feature</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>945412</commentid>
    <comment_count>2</comment_count>
      <attachid>215621</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-10-30 23:36:41 -0700</bug_when>
    <thetext>Comment on attachment 215621
Adds the feature

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

&gt; Tools/BuildSlaveSupport/clean-build:3
&gt; +# Copyright (C) 2012 Google Inc. All rights reserved.

This is because I copied some code from delete-stale-files.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>945416</commentid>
    <comment_count>3</comment_count>
      <attachid>215622</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-10-30 23:46:07 -0700</bug_when>
    <thetext>Created attachment 215622
Reverted errornous changes to Authz</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>945493</commentid>
    <comment_count>4</comment_count>
      <attachid>215622</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2013-10-31 05:20:06 -0700</bug_when>
    <thetext>Comment on attachment 215622
Reverted errornous changes to Authz

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

In general I like the idea to have a clean build feature 
on build.webkit.org, I have only some minor remarks.

&gt; Tools/ChangeLog:16
&gt; +        (CleanBuildIfScheduled.start): Added. Don&apos;t do a clean build if if this build wasn&apos;t schecueld by

typo: schecueld

&gt; Tools/BuildSlaveSupport/build.webkit.org-config/make-passwords-json.py:12
&gt; +#!/usr/bin/python
&gt; +
&gt; +import json
&gt; +
&gt; +with open(&apos;config.json&apos;, &apos;r&apos;) as config_file:
&gt; +    config = json.load(config_file)
&gt; +    passwords = {}
&gt; +    for slave in config[&apos;slaves&apos;]:
&gt; +        passwords[slave[&apos;name&apos;]] = &apos;a&apos;
&gt; +
&gt; +with open(&apos;passwords.json&apos;, &apos;w&apos;) as passwords_file:
&gt; +    passwords_file.write(json.dumps(passwords))

It is a good idea to have this script for testing. ;)

But it would be great if we can avoid code duplication here. I mean we 
can move _create_mock_passwords_dict from mastercfg_unittest.py to this file.
And then mastercfg_unittest.py can simple import and use it. And we can generate
the password.json in this file in an &quot;if __name__ == &apos;__main__&apos;:&quot; block.

&gt; Tools/BuildSlaveSupport/build.webkit.org-config/master.cfg:922
&gt; +    clean_scheduler = ForceScheduler(name=&quot;clean&quot;,
&gt; +        builderNames=[str(builder[&apos;name&apos;]) for builder in config[&apos;builders&apos;]],
&gt; +        reason=FixedParameter(name=&quot;reason&quot;, default=&quot;The &apos;Clean Build&apos; button was pressed.&quot;),
&gt; +
&gt; +        revision=StringParameter(name=&quot;revision&quot;, default=&quot;&quot;, regex=re.compile(r&apos;^(\d*)$&apos;)),
&gt; +
&gt; +        branch=FixedParameter(name=&quot;branch&quot;),
&gt; +        repository=FixedParameter(name=&quot;repository&quot;),
&gt; +        project=FixedParameter(name=&quot;project&quot;),
&gt; +        properties=[])
&gt; +    c[&apos;schedulers&apos;].append(clean_scheduler)

I prefer adding a new BooleanParameter to the existing ForceScheduler
with clean name and False default value.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>945547</commentid>
    <comment_count>5</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-10-31 09:36:44 -0700</bug_when>
    <thetext>How do we do clean builds now? Does it require logging in to the bot?

IIRC buildbot&apos;s IRC bot can do clean builds, how does it achieve that without all the code added here?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>945553</commentid>
    <comment_count>6</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2013-10-31 09:47:52 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; How do we do clean builds now? Does it require logging in to the bot?
Yes.

&gt; IIRC buildbot&apos;s IRC bot can do clean builds, how does it achieve that without all the code added here?
webkitbot can&apos;t do clean builds now

In my opinioin the change proposed by rniwa is the proper 
way to let committers trigger clean builds on the bots.

If you log in on build.webkit.org with your SVN account (at right-bottom corner)
you can trigger force build on a given revision now:
http://build.webkit.org/builders/Apple%20Mavericks%20Debug%20%28Build%29

This change would add one more checkbox with &quot;clean build&quot; label.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>945559</commentid>
    <comment_count>7</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-10-31 10:01:22 -0700</bug_when>
    <thetext>&gt; webkitbot can&apos;t do clean builds now

I&apos;m not talking about webkitbot, I&apos;m talking about one that&apos;s bundled with Buildbot itself. We used to run it, but no longer do.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>945567</commentid>
    <comment_count>8</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2013-10-31 10:21:38 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; &gt; webkitbot can&apos;t do clean builds now
&gt; I&apos;m not talking about webkitbot, I&apos;m talking about one that&apos;s bundled with Buildbot itself. We used to run it, but no longer do.

Ah, I misinterpreted. I checked buildbot&apos;s IRC bot, it seems it
provides the same force build service as the web UI:
http://docs.buildbot.net/0.8.6p1/manual/cfg-statustargets.html#status-IRC

Unfortunately IRC bot can&apos;t authenticate users, but the web UI can.

And I think some click is much more simpler than:
ircbot: force build --revision 123456 --props=clean=True Apple Mavericks Release WK1 (Tests)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>945667</commentid>
    <comment_count>9</comment_count>
      <attachid>215673</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-10-31 13:40:45 -0700</bug_when>
    <thetext>Created attachment 215673
Add a boolean to the existing forced scheduler</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>945684</commentid>
    <comment_count>10</comment_count>
      <attachid>215673</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2013-10-31 14:07:02 -0700</bug_when>
    <thetext>Comment on attachment 215673
Add a boolean to the existing forced scheduler

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

&gt; Tools/BuildSlaveSupport/build.webkit.org-config/master.cfg:901
&gt;          # Validate SVN revision: number or emtpy string

emtpy</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>945691</commentid>
    <comment_count>11</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-10-31 14:13:16 -0700</bug_when>
    <thetext>Committed r158393: &lt;http://trac.webkit.org/changeset/158393&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>945693</commentid>
    <comment_count>12</comment_count>
      <attachid>215673</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2013-10-31 14:13:39 -0700</bug_when>
    <thetext>Comment on attachment 215673
Add a boolean to the existing forced scheduler

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

LGTM too.

&gt; Tools/ChangeLog:9
&gt; +        Add a new &quot;clean&quot; forced scheduler. When a build was created by this scheduler, CleanBuildIfScheduled
&gt; +        step executes clean-build script that removes the WebKitBuild directory.

Please update it before landing due to the latest change.

&gt; Tools/ChangeLog:16
&gt; +        (CleanBuildIfScheduled.start): Added. Don&apos;t do a clean build if if this build wasn&apos;t schecueld by

typo: schecueld</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>945695</commentid>
    <comment_count>13</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-10-31 14:20:05 -0700</bug_when>
    <thetext>Oops, I forgot to update the change log :(</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>945696</commentid>
    <comment_count>14</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2013-10-31 14:21:22 -0700</bug_when>
    <thetext>(In reply to comment #13)
&gt; Oops, I forgot to update the change log :(

nevermind :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1176199</commentid>
    <comment_count>15</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2016-03-18 10:01:45 -0700</bug_when>
    <thetext>*** Bug 89391 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>215621</attachid>
            <date>2013-10-30 23:36:05 -0700</date>
            <delta_ts>2013-10-30 23:46:05 -0700</delta_ts>
            <desc>Adds the feature</desc>
            <filename>bug-123559-20131030233604.patch</filename>
            <type>text/plain</type>
            <size>9087</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDE1ODM0OSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDI4IEBACisyMDEzLTEwLTMwICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgor
CisgICAgICAgIGJ1aWxkLndlYmtpdC5vcmcgc2hvdWxkIGhhdmUgYSBjbGVhbiBidWlsZCBidXR0
b24KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyMzU1
OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBh
IG5ldyAiY2xlYW4iIGZvcmNlZCBzY2hlZHVsZXIuIFdoZW4gYSBidWlsZCB3YXMgY3JlYXRlZCBi
eSB0aGlzIHNjaGVkdWxlciwgQ2xlYW5CdWlsZElmU2NoZWR1bGVkCisgICAgICAgIHN0ZXAgZXhl
Y3V0ZXMgY2xlYW4tYnVpbGQgc2NyaXB0IHRoYXQgcmVtb3ZlcyB0aGUgV2ViS2l0QnVpbGQgZGly
ZWN0b3J5LgorCisgICAgICAgIEFsc28gYWRkZWQgbWFrZS1wYXNzd29yZHMtanNvbi5weSB3aGlj
aCBjcmVhdGVzIGEgZmFrZSBwYXNzd29yZHMuanNvbiBmcm9tIGNvbmZpZy5qc29uIGZvciB0ZXN0
aW5nIHB1cnBvc2VzLgorCisgICAgICAgICogQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0
Lm9yZy1jb25maWcvbWFrZS1wYXNzd29yZHMtanNvbi5weTogQWRkZWQuCisgICAgICAgICogQnVp
bGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvbWFzdGVyLmNmZzoKKyAgICAg
ICAgKENsZWFuQnVpbGRJZlNjaGVkdWxlZCk6IEFkZGVkLgorICAgICAgICAoQ2xlYW5CdWlsZElm
U2NoZWR1bGVkLnN0YXJ0KTogQWRkZWQuIERvbid0IGRvIGEgY2xlYW4gYnVpbGQgaWYgaWYgdGhp
cyBidWlsZCB3YXNuJ3Qgc2NoZWN1ZWxkIGJ5CisgICAgICAgIHRoZSBjbGVhbiBidWlsZCBzY2hl
ZHVsZXIuCisgICAgICAgIChEZWxldGVTdGFsZUJ1aWxkRmlsZXMpOiBBZGRlZC4KKyAgICAgICAg
KERlbGV0ZVN0YWxlQnVpbGRGaWxlcy5zdGFydCk6IEFkZGVkLiBEb24ndCBkZWxldGUgc3RhbGUg
YnVpbGQgZmlsZXMgaWYgdGhpcyBidWlsZCB3YXMgc2NoZWR1bGVkIGJ5CisgICAgICAgIHRoZSBj
bGVhbiBidWlsZCBzY2hlZHVsZXIgc2luY2UgZXZlcnl0aGluZyBpbiB0aGUgV2ViS2l0QnVpbGQg
ZGlyZWN0b3J5IGhhZCBhbHJlYWR5IGJlZW4gcmVtb3ZlZC4KKyAgICAgICAgKEZhY3RvcnkuX19p
bml0X18pOiBBbHdheXMgYWRkIENsZWFuQnVpbGRJZlNjaGVkdWxlZC4gIFRoZSBzdGVwIGl0c2Vs
ZiBjaGVja3Mgd2hldGhlciB0byBydW4KKyAgICAgICAgY2xlYW4tYnVpbGQgc2NyaXB0IG9yIGhp
ZGUgaXRzZWxmLgorICAgICAgICAobG9hZEJ1aWxkZXJDb25maWcpOiBBZGRlZCB0aGUgbmV3IGNs
ZWFuIGJ1aWxkIHNjaGVkdWxlci4KKyAgICAgICAgKiBCdWlsZFNsYXZlU3VwcG9ydC9jbGVhbi1i
dWlsZDogQWRkZWQuCisKIDIwMTMtMTAtMzAgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEBhcHBs
ZS5jb20+CiAKICAgICAgICAgVGVhY2ggdGhlIHN0eWxlIGNoZWNrZXIgYWJvdXQgRU5VTV9DTEFT
UwpJbmRleDogVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvY2xlYW4tYnVpbGQKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvY2xlYW4tYnVpbGQJKHJldmlzaW9uIDApCisrKyBU
b29scy9CdWlsZFNsYXZlU3VwcG9ydC9jbGVhbi1idWlsZAkod29ya2luZyBjb3B5KQpAQCAtMCww
ICsxLDU0IEBACisjIS91c3IvYmluL3B5dGhvbgorIyBDb3B5cmlnaHQgKEMpIDIwMTMgQXBwbGUg
SW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyMgQ29weXJpZ2h0IChDKSAyMDEyIEdvb2dsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisjCisjIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorIyBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyMg
YXJlIG1ldDoKKyMKKyMgMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisjICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisjIDIuICBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorIyAg
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZQorIyAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyMKKyMgVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBBUFBMRSBBTkQgSVRTIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORCBBTlkKKyMg
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBUSEUgSU1QTElFRAorIyBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisjIERJU0NMQUlNRUQuIElOIE5PIEVW
RU5UIFNIQUxMIEFQUExFIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyMg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05T
RVFVRU5USUFMIERBTUFHRVMKKyMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworIyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQKKyMgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyMgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GCisjIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CisKK2ltcG9ydCBvcHRwYXJzZQoraW1wb3J0IG9zCitpbXBvcnQgc2h1dGlsCitpbXBvcnQgc3Vi
cHJvY2VzcworaW1wb3J0IHN5cworCitkZWYgbWFpbigpOgorICAgIHBhcnNlciA9IG9wdHBhcnNl
Lk9wdGlvblBhcnNlcigidXNhZ2U6ICVwcm9nIFtvcHRpb25zXSIpCisgICAgcGFyc2VyLmFkZF9v
cHRpb24oIi0tcGxhdGZvcm0iKQorICAgIHBhcnNlci5hZGRfb3B0aW9uKCItLWRlYnVnIiwgYWN0
aW9uPSJzdG9yZV9jb25zdCIsIGNvbnN0PSJkZWJ1ZyIsIGRlc3Q9ImNvbmZpZ3VyYXRpb24iKQor
ICAgIHBhcnNlci5hZGRfb3B0aW9uKCItLXJlbGVhc2UiLCBhY3Rpb249InN0b3JlX2NvbnN0Iiwg
Y29uc3Q9InJlbGVhc2UiLCBkZXN0PSJjb25maWd1cmF0aW9uIikKKworICAgIG9wdGlvbnMsIHBh
cmFtZXRlcnMgPSBwYXJzZXIucGFyc2VfYXJncygpCisgICAgaWYgbm90IG9wdGlvbnMucGxhdGZv
cm06CisgICAgICAgIHBhcnNlci5lcnJvcigiUGxhdGZvcm0gaXMgcmVxdWlyZWQiKQorICAgICAg
ICByZXR1cm4gLTEKKyAgICBpZiBub3Qgb3B0aW9ucy5jb25maWd1cmF0aW9uOgorICAgICAgICBw
YXJzZXIuZXJyb3IoIkNvbmZpZ3VyYXRpb24gaXMgcmVxdWlyZWQiKQorICAgICAgICByZXR1cm4g
LTIKKworICAgIGdlbmVyaWNfcGxhdGZvcm0gPSBvcHRpb25zLnBsYXRmb3JtLnNwbGl0KCctJywg
MSlbMF0KKworICAgIHdlYmtpdF9idWlsZF9kaXJlY3RvcnkgPSBzdWJwcm9jZXNzLlBvcGVuKFsn
cGVybCcsIG9zLnBhdGguam9pbihvcy5wYXRoLmRpcm5hbWUoX19maWxlX18pLCAiLi4iLCAiU2Ny
aXB0cyIsICJ3ZWJraXQtYnVpbGQtZGlyZWN0b3J5IiksCisgICAgICAgICItLSIgKyBnZW5lcmlj
X3BsYXRmb3JtLCAiLS0iICsgb3B0aW9ucy5jb25maWd1cmF0aW9uLCAnLS10b3AtbGV2ZWwnXSwg
c3Rkb3V0PXN1YnByb2Nlc3MuUElQRSkuY29tbXVuaWNhdGUoKVswXS5zdHJpcCgpCisKKyAgICBz
aHV0aWwucm10cmVlKHdlYmtpdF9idWlsZF9kaXJlY3RvcnkpCisKK2lmIF9fbmFtZV9fID09ICdf
X21haW5fXyc6CisgICAgc3lzLmV4aXQobWFpbigpKQoKUHJvcGVydHkgY2hhbmdlcyBvbjogVG9v
bHMvQnVpbGRTbGF2ZVN1cHBvcnQvY2xlYW4tYnVpbGQKX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOmV4
ZWN1dGFibGUKIyMgLTAsMCArMSAjIworKgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIHByb3BlcnR5
CkluZGV4OiBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9t
YWtlLXBhc3N3b3Jkcy1qc29uLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL0J1aWxkU2xhdmVTdXBw
b3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL21ha2UtcGFzc3dvcmRzLWpzb24ucHkJKHJldmlz
aW9uIDApCisrKyBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZp
Zy9tYWtlLXBhc3N3b3Jkcy1qc29uLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMTIgQEAK
KyMhL3Vzci9iaW4vcHl0aG9uCisKK2ltcG9ydCBqc29uCisKK3dpdGggb3BlbignY29uZmlnLmpz
b24nLCAncicpIGFzIGNvbmZpZ19maWxlOgorICAgIGNvbmZpZyA9IGpzb24ubG9hZChjb25maWdf
ZmlsZSkKKyAgICBwYXNzd29yZHMgPSB7fQorICAgIGZvciBzbGF2ZSBpbiBjb25maWdbJ3NsYXZl
cyddOgorICAgICAgICBwYXNzd29yZHNbc2xhdmVbJ25hbWUnXV0gPSAnYScKKword2l0aCBvcGVu
KCdwYXNzd29yZHMuanNvbicsICd3JykgYXMgcGFzc3dvcmRzX2ZpbGU6CisgICAgcGFzc3dvcmRz
X2ZpbGUud3JpdGUoanNvbi5kdW1wcyhwYXNzd29yZHMpKQoKUHJvcGVydHkgY2hhbmdlcyBvbjog
VG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvbWFrZS1wYXNz
d29yZHMtanNvbi5weQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fCkFkZGVkOiBzdm46ZXhlY3V0YWJsZQojIyAtMCwwICsx
ICMjCisqClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgcHJvcGVydHkKSW5kZXg6IFRvb2xzL0J1aWxk
U2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL21hc3Rlci5jZmcKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvbWFz
dGVyLmNmZwkocmV2aXNpb24gMTU4MzM4KQorKysgVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVp
bGQud2Via2l0Lm9yZy1jb25maWcvbWFzdGVyLmNmZwkod29ya2luZyBjb3B5KQpAQCAtMzIsOCAr
MzIsOCBAQCBjWydjaGFuZ2Vfc291cmNlJ10gPSBQQkNoYW5nZVNvdXJjZSgpCiAjIHBlcm1pc3Np
b25zIGZvciBXZWJTdGF0dXMKIGF1dGh6ID0gQXV0aHooCiAgICAgYXV0aD1Db21taXR0ZXJBdXRo
KCdhdXRoLmpzb24nKSwKLSAgICBmb3JjZUJ1aWxkPSdhdXRoJywKLSAgICBmb3JjZUFsbEJ1aWxk
cz0nYXV0aCcsCisgICAgZm9yY2VCdWlsZD1UcnVlLAorICAgIGZvcmNlQWxsQnVpbGRzPVRydWUs
CiAgICAgcGluZ0J1aWxkZXI9VHJ1ZSwKICAgICBncmFjZWZ1bFNodXRkb3duPUZhbHNlLAogICAg
IHN0b3BCdWlsZD0nYXV0aCcsCkBAIC0xNDUsMTIgKzE0NSwzMCBAQCBjbGFzcyBLaWxsT2xkUHJv
Y2Vzc2VzKHNoZWxsLkNvbXBpbGUpOgogICAgIGRlc2NyaXB0aW9uRG9uZSA9IFsia2lsbGVkIG9s
ZCBwcm9jZXNzZXMiXQogICAgIGNvbW1hbmQgPSBbInB5dGhvbiIsICIuL1Rvb2xzL0J1aWxkU2xh
dmVTdXBwb3J0L2tpbGwtb2xkLXByb2Nlc3NlcyJdCiAKK2NsYXNzIENsZWFuQnVpbGRJZlNjaGVk
dWxlZChzaGVsbC5Db21waWxlKToKKyAgICBuYW1lID0gImRlbGV0ZSBXZWJLaXRCdWlsZCBkaXJl
Y3RvcnkiCisgICAgZGVzY3JpcHRpb24gPSBbImRlbGV0aW5nIFdlYktpdEJ1aWxkIGRpcmVjdG9y
eSJdCisgICAgZGVzY3JpcHRpb25Eb25lID0gWyJkZWxldGVkIFdlYktpdEJ1aWxkIGRpcmVjdG9y
eSJdCisgICAgY29tbWFuZCA9IFsicHl0aG9uIiwgIi4vVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQv
Y2xlYW4tYnVpbGQiLCBXaXRoUHJvcGVydGllcygiLS1wbGF0Zm9ybT0lKGZ1bGxQbGF0Zm9ybSlz
IiksIFdpdGhQcm9wZXJ0aWVzKCItLSUoY29uZmlndXJhdGlvbilzIildCisKKyAgICBkZWYgc3Rh
cnQoc2VsZik6CisgICAgICAgIGlmIHNlbGYuZ2V0UHJvcGVydHkoJ3NjaGVkdWxlcicpICE9ICdj
bGVhbic6CisgICAgICAgICAgICBzZWxmLmhpZGVTdGVwSWYgPSBUcnVlCisgICAgICAgICAgICBy
ZXR1cm4gU0tJUFBFRAorICAgICAgICByZXR1cm4gc2hlbGwuQ29tcGlsZS5zdGFydChzZWxmKQor
CiBjbGFzcyBEZWxldGVTdGFsZUJ1aWxkRmlsZXMoc2hlbGwuQ29tcGlsZSk6CiAgICAgbmFtZSA9
ICJkZWxldGUgc3RhbGUgYnVpbGQgZmlsZXMiCiAgICAgZGVzY3JpcHRpb24gPSBbImRlbGV0aW5n
IHN0YWxlIGJ1aWxkIGZpbGVzIl0KLSAgICBkZXNjcmlwdGlvbkRvbmUgPSBbImRlbGV0ZSBzdGFs
ZSBidWlsZCBmaWxlcyJdCisgICAgZGVzY3JpcHRpb25Eb25lID0gWyJkZWxldGVkIHN0YWxlIGJ1
aWxkIGZpbGVzIl0KICAgICBjb21tYW5kID0gWyJweXRob24iLCAiLi9Ub29scy9CdWlsZFNsYXZl
U3VwcG9ydC9kZWxldGUtc3RhbGUtYnVpbGQtZmlsZXMiLCBXaXRoUHJvcGVydGllcygiLS1wbGF0
Zm9ybT0lKGZ1bGxQbGF0Zm9ybSlzIiksIFdpdGhQcm9wZXJ0aWVzKCItLSUoY29uZmlndXJhdGlv
bilzIildCiAKKyAgICBkZWYgc3RhcnQoc2VsZik6CisgICAgICAgIGlmIHNlbGYuZ2V0UHJvcGVy
dHkoJ3NjaGVkdWxlcicpID09ICdjbGVhbic6ICMgTm90aGluZyB0byBiZSBkb25lIGlmIFdlYktp
dEJ1aWxkIGhhZCBiZWVuIHJlbW92ZWQuCisgICAgICAgICAgICBzZWxmLmhpZGVTdGVwSWYgPSBU
cnVlCisgICAgICAgICAgICByZXR1cm4gU0tJUFBFRAorICAgICAgICByZXR1cm4gc2hlbGwuQ29t
cGlsZS5zdGFydChzZWxmKQorCiBjbGFzcyBJbnN0YWxsRWZsRGVwZW5kZW5jaWVzKHNoZWxsLlNo
ZWxsQ29tbWFuZCk6CiAgICAgbmFtZSA9ICJqaGJ1aWxkIgogICAgIGRlc2NyaXB0aW9uID0gWyJ1
cGRhdGluZyBlZmwgZGVwZW5kZW5jaWVzIl0KQEAgLTcxNyw2ICs3MzUsNyBAQCBjbGFzcyBGYWN0
b3J5KGZhY3RvcnkuQnVpbGRGYWN0b3J5KToKICAgICAgICAgICAgIHNlbGYuYWRkU3RlcChXYWl0
Rm9yU1ZOU2VydmVyKCkpCiAgICAgICAgIHNlbGYuYWRkU3RlcChDaGVja091dFNvdXJjZShTVk5N
aXJyb3I9U1ZOTWlycm9yKSkKICAgICAgICAgc2VsZi5hZGRTdGVwKEtpbGxPbGRQcm9jZXNzZXMo
KSkKKyAgICAgICAgc2VsZi5hZGRTdGVwKENsZWFuQnVpbGRJZlNjaGVkdWxlZCgpKQogICAgICAg
ICBzZWxmLmFkZFN0ZXAoRGVsZXRlU3RhbGVCdWlsZEZpbGVzKCkpCiAgICAgICAgIGlmIHBsYXRm
b3JtID09ICJ3aW4iOgogICAgICAgICAgICAgc2VsZi5hZGRTdGVwKEluc3RhbGxXaW4zMkRlcGVu
ZGVuY2llcygpKQpAQCAtODc2LDcgKzg5NSw3IEBAIGRlZiBsb2FkQnVpbGRlckNvbmZpZyhjKToK
IAogICAgIGZvcmNlU2NoZWR1bGVyID0gRm9yY2VTY2hlZHVsZXIoCiAgICAgICAgIG5hbWU9ImZv
cmNlIiwKLSAgICAgICAgYnVpbGRlck5hbWVzPVtidWlsZGVyWyduYW1lJ10gZm9yIGJ1aWxkZXIg
aW4gY29uZmlnWydidWlsZGVycyddXSwKKyAgICAgICAgYnVpbGRlck5hbWVzPVtzdHIoYnVpbGRl
clsnbmFtZSddKSBmb3IgYnVpbGRlciBpbiBjb25maWdbJ2J1aWxkZXJzJ11dLAogICAgICAgICBy
ZWFzb249U3RyaW5nUGFyYW1ldGVyKG5hbWU9InJlYXNvbiIsIGRlZmF1bHQ9IiIsIHNpemU9NDAp
LAogCiAgICAgICAgICMgVmFsaWRhdGUgU1ZOIHJldmlzaW9uOiBudW1iZXIgb3IgZW10cHkgc3Ry
aW5nCkBAIC04OTAsNiArOTA5LDE4IEBAIGRlZiBsb2FkQnVpbGRlckNvbmZpZyhjKToKICAgICAp
CiAgICAgY1snc2NoZWR1bGVycyddLmFwcGVuZChmb3JjZVNjaGVkdWxlcikKIAorICAgIGNsZWFu
X3NjaGVkdWxlciA9IEZvcmNlU2NoZWR1bGVyKG5hbWU9ImNsZWFuIiwKKyAgICAgICAgYnVpbGRl
ck5hbWVzPVtzdHIoYnVpbGRlclsnbmFtZSddKSBmb3IgYnVpbGRlciBpbiBjb25maWdbJ2J1aWxk
ZXJzJ11dLAorICAgICAgICByZWFzb249Rml4ZWRQYXJhbWV0ZXIobmFtZT0icmVhc29uIiwgZGVm
YXVsdD0iVGhlICdDbGVhbiBCdWlsZCcgYnV0dG9uIHdhcyBwcmVzc2VkLiIpLAorCisgICAgICAg
IHJldmlzaW9uPVN0cmluZ1BhcmFtZXRlcihuYW1lPSJyZXZpc2lvbiIsIGRlZmF1bHQ9IiIsIHJl
Z2V4PXJlLmNvbXBpbGUocideKFxkKikkJykpLAorCisgICAgICAgIGJyYW5jaD1GaXhlZFBhcmFt
ZXRlcihuYW1lPSJicmFuY2giKSwKKyAgICAgICAgcmVwb3NpdG9yeT1GaXhlZFBhcmFtZXRlcihu
YW1lPSJyZXBvc2l0b3J5IiksCisgICAgICAgIHByb2plY3Q9Rml4ZWRQYXJhbWV0ZXIobmFtZT0i
cHJvamVjdCIpLAorICAgICAgICBwcm9wZXJ0aWVzPVtdKQorICAgIGNbJ3NjaGVkdWxlcnMnXS5h
cHBlbmQoY2xlYW5fc2NoZWR1bGVyKQorCiAgICAgY1snYnVpbGRlcnMnXSA9IFtdCiAgICAgZm9y
IGJ1aWxkZXIgaW4gY29uZmlnWydidWlsZGVycyddOgogICAgICAgICBmb3Igc2xhdmVOYW1lIGlu
IGJ1aWxkZXJbJ3NsYXZlbmFtZXMnXToK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>215622</attachid>
            <date>2013-10-30 23:46:07 -0700</date>
            <delta_ts>2013-10-31 13:40:43 -0700</delta_ts>
            <desc>Reverted errornous changes to Authz</desc>
            <filename>bug-123559-20131030234606.patch</filename>
            <type>text/plain</type>
            <size>8904</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDE1ODM0OSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDI5IEBACisyMDEzLTEwLTMwICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgor
CisgICAgICAgIGJ1aWxkLndlYmtpdC5vcmcgc2hvdWxkIGhhdmUgYSBjbGVhbiBidWlsZCBidXR0
b24KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyMzU1
OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBh
IG5ldyAiY2xlYW4iIGZvcmNlZCBzY2hlZHVsZXIuIFdoZW4gYSBidWlsZCB3YXMgY3JlYXRlZCBi
eSB0aGlzIHNjaGVkdWxlciwgQ2xlYW5CdWlsZElmU2NoZWR1bGVkCisgICAgICAgIHN0ZXAgZXhl
Y3V0ZXMgY2xlYW4tYnVpbGQgc2NyaXB0IHRoYXQgcmVtb3ZlcyB0aGUgV2ViS2l0QnVpbGQgZGly
ZWN0b3J5LgorCisgICAgICAgIEFsc28gYWRkZWQgbWFrZS1wYXNzd29yZHMtanNvbi5weSB3aGlj
aCBjcmVhdGVzIGEgZmFrZSBwYXNzd29yZHMuanNvbiBmcm9tIGNvbmZpZy5qc29uIGZvciB0ZXN0
aW5nIHB1cnBvc2VzLgorCisgICAgICAgICogQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0
Lm9yZy1jb25maWcvbWFrZS1wYXNzd29yZHMtanNvbi5weTogQWRkZWQuCisgICAgICAgICogQnVp
bGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvbWFzdGVyLmNmZzoKKyAgICAg
ICAgKENsZWFuQnVpbGRJZlNjaGVkdWxlZCk6IEFkZGVkLgorICAgICAgICAoQ2xlYW5CdWlsZElm
U2NoZWR1bGVkLnN0YXJ0KTogQWRkZWQuIERvbid0IGRvIGEgY2xlYW4gYnVpbGQgaWYgaWYgdGhp
cyBidWlsZCB3YXNuJ3Qgc2NoZWN1ZWxkIGJ5CisgICAgICAgIHRoZSBjbGVhbiBidWlsZCBzY2hl
ZHVsZXIuCisgICAgICAgIChEZWxldGVTdGFsZUJ1aWxkRmlsZXMpOiBBZGRlZC4KKyAgICAgICAg
KERlbGV0ZVN0YWxlQnVpbGRGaWxlcy5zdGFydCk6IEFkZGVkLiBEb24ndCBkZWxldGUgc3RhbGUg
YnVpbGQgZmlsZXMgaWYgdGhpcyBidWlsZCB3YXMgc2NoZWR1bGVkIGJ5CisgICAgICAgIHRoZSBj
bGVhbiBidWlsZCBzY2hlZHVsZXIgc2luY2UgZXZlcnl0aGluZyBpbiB0aGUgV2ViS2l0QnVpbGQg
ZGlyZWN0b3J5IGhhZCBhbHJlYWR5IGJlZW4gcmVtb3ZlZC4KKyAgICAgICAgKEZhY3RvcnkuX19p
bml0X18pOiBBbHdheXMgYWRkIENsZWFuQnVpbGRJZlNjaGVkdWxlZC4gIFRoZSBzdGVwIGl0c2Vs
ZiBjaGVja3Mgd2hldGhlciB0byBydW4KKyAgICAgICAgY2xlYW4tYnVpbGQgc2NyaXB0IG9yIGhp
ZGUgaXRzZWxmLgorICAgICAgICAobG9hZEJ1aWxkZXJDb25maWcpOiBBZGRlZCB0aGUgbmV3IGNs
ZWFuIGJ1aWxkIHNjaGVkdWxlci4gQWxzbyBtYWtlIEZvcmNlU2NoZWR1bGVyIGZ1dHVyZSBwcm9v
ZjsgaW4gbmV3ZXIKKyAgICAgICAgdmVyc2lvbnMgb2YgYnVpbGRib3QsIGJ1aWxkZXJOYW1lcyBu
ZWVkcyB0byBiZSBhIGxpc3Qgb2YgcmVndWxhciBzdHJpbmdzLgorICAgICAgICAqIEJ1aWxkU2xh
dmVTdXBwb3J0L2NsZWFuLWJ1aWxkOiBBZGRlZC4KKwogMjAxMy0xMC0zMCAgQWxleGV5IFByb3Nr
dXJ5YWtvdiAgPGFwQGFwcGxlLmNvbT4KIAogICAgICAgICBUZWFjaCB0aGUgc3R5bGUgY2hlY2tl
ciBhYm91dCBFTlVNX0NMQVNTCkluZGV4OiBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9jbGVhbi1i
dWlsZAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9jbGVhbi1idWlsZAko
cmV2aXNpb24gMCkKKysrIFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2NsZWFuLWJ1aWxkCSh3b3Jr
aW5nIGNvcHkpCkBAIC0wLDAgKzEsNTQgQEAKKyMhL3Vzci9iaW4vcHl0aG9uCisjIENvcHlyaWdo
dCAoQykgMjAxMyBBcHBsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorIyBDb3B5cmlnaHQg
KEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyMKKyMgUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisjIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucworIyBhcmUgbWV0OgorIworIyAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMgICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyMg
Mi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0CisjICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisjICAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorIworIyBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIEFORCBJVFMgQ09OVFJJQlVUT1JTICJB
UyBJUyIgQU5EIEFOWQorIyBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisjIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyMgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBM
SUFCTEUgRk9SIEFOWQorIyBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworIyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
CisjIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORAorIyBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorIyAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UgT0YKKyMgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKworaW1wb3J0IG9wdHBhcnNlCitpbXBvcnQgb3MKK2ltcG9ydCBz
aHV0aWwKK2ltcG9ydCBzdWJwcm9jZXNzCitpbXBvcnQgc3lzCisKK2RlZiBtYWluKCk6CisgICAg
cGFyc2VyID0gb3B0cGFyc2UuT3B0aW9uUGFyc2VyKCJ1c2FnZTogJXByb2cgW29wdGlvbnNdIikK
KyAgICBwYXJzZXIuYWRkX29wdGlvbigiLS1wbGF0Zm9ybSIpCisgICAgcGFyc2VyLmFkZF9vcHRp
b24oIi0tZGVidWciLCBhY3Rpb249InN0b3JlX2NvbnN0IiwgY29uc3Q9ImRlYnVnIiwgZGVzdD0i
Y29uZmlndXJhdGlvbiIpCisgICAgcGFyc2VyLmFkZF9vcHRpb24oIi0tcmVsZWFzZSIsIGFjdGlv
bj0ic3RvcmVfY29uc3QiLCBjb25zdD0icmVsZWFzZSIsIGRlc3Q9ImNvbmZpZ3VyYXRpb24iKQor
CisgICAgb3B0aW9ucywgcGFyYW1ldGVycyA9IHBhcnNlci5wYXJzZV9hcmdzKCkKKyAgICBpZiBu
b3Qgb3B0aW9ucy5wbGF0Zm9ybToKKyAgICAgICAgcGFyc2VyLmVycm9yKCJQbGF0Zm9ybSBpcyBy
ZXF1aXJlZCIpCisgICAgICAgIHJldHVybiAtMQorICAgIGlmIG5vdCBvcHRpb25zLmNvbmZpZ3Vy
YXRpb246CisgICAgICAgIHBhcnNlci5lcnJvcigiQ29uZmlndXJhdGlvbiBpcyByZXF1aXJlZCIp
CisgICAgICAgIHJldHVybiAtMgorCisgICAgZ2VuZXJpY19wbGF0Zm9ybSA9IG9wdGlvbnMucGxh
dGZvcm0uc3BsaXQoJy0nLCAxKVswXQorCisgICAgd2Via2l0X2J1aWxkX2RpcmVjdG9yeSA9IHN1
YnByb2Nlc3MuUG9wZW4oWydwZXJsJywgb3MucGF0aC5qb2luKG9zLnBhdGguZGlybmFtZShfX2Zp
bGVfXyksICIuLiIsICJTY3JpcHRzIiwgIndlYmtpdC1idWlsZC1kaXJlY3RvcnkiKSwKKyAgICAg
ICAgIi0tIiArIGdlbmVyaWNfcGxhdGZvcm0sICItLSIgKyBvcHRpb25zLmNvbmZpZ3VyYXRpb24s
ICctLXRvcC1sZXZlbCddLCBzdGRvdXQ9c3VicHJvY2Vzcy5QSVBFKS5jb21tdW5pY2F0ZSgpWzBd
LnN0cmlwKCkKKworICAgIHNodXRpbC5ybXRyZWUod2Via2l0X2J1aWxkX2RpcmVjdG9yeSkKKwor
aWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKKyAgICBzeXMuZXhpdChtYWluKCkpCgpQcm9wZXJ0
eSBjaGFuZ2VzIG9uOiBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9jbGVhbi1idWlsZApfX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fCkFkZGVkOiBzdm46ZXhlY3V0YWJsZQojIyAtMCwwICsxICMjCisqClwgTm8gbmV3bGluZSBh
dCBlbmQgb2YgcHJvcGVydHkKSW5kZXg6IFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndl
YmtpdC5vcmctY29uZmlnL21ha2UtcGFzc3dvcmRzLWpzb24ucHkKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9v
bHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvbWFrZS1wYXNzd29y
ZHMtanNvbi5weQkocmV2aXNpb24gMCkKKysrIFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2J1aWxk
LndlYmtpdC5vcmctY29uZmlnL21ha2UtcGFzc3dvcmRzLWpzb24ucHkJKHdvcmtpbmcgY29weSkK
QEAgLTAsMCArMSwxMiBAQAorIyEvdXNyL2Jpbi9weXRob24KKworaW1wb3J0IGpzb24KKword2l0
aCBvcGVuKCdjb25maWcuanNvbicsICdyJykgYXMgY29uZmlnX2ZpbGU6CisgICAgY29uZmlnID0g
anNvbi5sb2FkKGNvbmZpZ19maWxlKQorICAgIHBhc3N3b3JkcyA9IHt9CisgICAgZm9yIHNsYXZl
IGluIGNvbmZpZ1snc2xhdmVzJ106CisgICAgICAgIHBhc3N3b3Jkc1tzbGF2ZVsnbmFtZSddXSA9
ICdhJworCit3aXRoIG9wZW4oJ3Bhc3N3b3Jkcy5qc29uJywgJ3cnKSBhcyBwYXNzd29yZHNfZmls
ZToKKyAgICBwYXNzd29yZHNfZmlsZS53cml0ZShqc29uLmR1bXBzKHBhc3N3b3JkcykpCgpQcm9w
ZXJ0eSBjaGFuZ2VzIG9uOiBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3Jn
LWNvbmZpZy9tYWtlLXBhc3N3b3Jkcy1qc29uLnB5Cl9fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KQWRkZWQ6IHN2bjpleGVj
dXRhYmxlCiMjIC0wLDAgKzEgIyMKKyoKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBwcm9wZXJ0eQpJ
bmRleDogVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvbWFz
dGVyLmNmZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJr
aXQub3JnLWNvbmZpZy9tYXN0ZXIuY2ZnCShyZXZpc2lvbiAxNTgzMzgpCisrKyBUb29scy9CdWls
ZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9tYXN0ZXIuY2ZnCSh3b3JraW5n
IGNvcHkpCkBAIC0xNDUsMTIgKzE0NSwzMCBAQCBjbGFzcyBLaWxsT2xkUHJvY2Vzc2VzKHNoZWxs
LkNvbXBpbGUpOgogICAgIGRlc2NyaXB0aW9uRG9uZSA9IFsia2lsbGVkIG9sZCBwcm9jZXNzZXMi
XQogICAgIGNvbW1hbmQgPSBbInB5dGhvbiIsICIuL1Rvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2tp
bGwtb2xkLXByb2Nlc3NlcyJdCiAKK2NsYXNzIENsZWFuQnVpbGRJZlNjaGVkdWxlZChzaGVsbC5D
b21waWxlKToKKyAgICBuYW1lID0gImRlbGV0ZSBXZWJLaXRCdWlsZCBkaXJlY3RvcnkiCisgICAg
ZGVzY3JpcHRpb24gPSBbImRlbGV0aW5nIFdlYktpdEJ1aWxkIGRpcmVjdG9yeSJdCisgICAgZGVz
Y3JpcHRpb25Eb25lID0gWyJkZWxldGVkIFdlYktpdEJ1aWxkIGRpcmVjdG9yeSJdCisgICAgY29t
bWFuZCA9IFsicHl0aG9uIiwgIi4vVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvY2xlYW4tYnVpbGQi
LCBXaXRoUHJvcGVydGllcygiLS1wbGF0Zm9ybT0lKGZ1bGxQbGF0Zm9ybSlzIiksIFdpdGhQcm9w
ZXJ0aWVzKCItLSUoY29uZmlndXJhdGlvbilzIildCisKKyAgICBkZWYgc3RhcnQoc2VsZik6Cisg
ICAgICAgIGlmIHNlbGYuZ2V0UHJvcGVydHkoJ3NjaGVkdWxlcicpICE9ICdjbGVhbic6CisgICAg
ICAgICAgICBzZWxmLmhpZGVTdGVwSWYgPSBUcnVlCisgICAgICAgICAgICByZXR1cm4gU0tJUFBF
RAorICAgICAgICByZXR1cm4gc2hlbGwuQ29tcGlsZS5zdGFydChzZWxmKQorCiBjbGFzcyBEZWxl
dGVTdGFsZUJ1aWxkRmlsZXMoc2hlbGwuQ29tcGlsZSk6CiAgICAgbmFtZSA9ICJkZWxldGUgc3Rh
bGUgYnVpbGQgZmlsZXMiCiAgICAgZGVzY3JpcHRpb24gPSBbImRlbGV0aW5nIHN0YWxlIGJ1aWxk
IGZpbGVzIl0KLSAgICBkZXNjcmlwdGlvbkRvbmUgPSBbImRlbGV0ZSBzdGFsZSBidWlsZCBmaWxl
cyJdCisgICAgZGVzY3JpcHRpb25Eb25lID0gWyJkZWxldGVkIHN0YWxlIGJ1aWxkIGZpbGVzIl0K
ICAgICBjb21tYW5kID0gWyJweXRob24iLCAiLi9Ub29scy9CdWlsZFNsYXZlU3VwcG9ydC9kZWxl
dGUtc3RhbGUtYnVpbGQtZmlsZXMiLCBXaXRoUHJvcGVydGllcygiLS1wbGF0Zm9ybT0lKGZ1bGxQ
bGF0Zm9ybSlzIiksIFdpdGhQcm9wZXJ0aWVzKCItLSUoY29uZmlndXJhdGlvbilzIildCiAKKyAg
ICBkZWYgc3RhcnQoc2VsZik6CisgICAgICAgIGlmIHNlbGYuZ2V0UHJvcGVydHkoJ3NjaGVkdWxl
cicpID09ICdjbGVhbic6ICMgTm90aGluZyB0byBiZSBkb25lIGlmIFdlYktpdEJ1aWxkIGhhZCBi
ZWVuIHJlbW92ZWQuCisgICAgICAgICAgICBzZWxmLmhpZGVTdGVwSWYgPSBUcnVlCisgICAgICAg
ICAgICByZXR1cm4gU0tJUFBFRAorICAgICAgICByZXR1cm4gc2hlbGwuQ29tcGlsZS5zdGFydChz
ZWxmKQorCiBjbGFzcyBJbnN0YWxsRWZsRGVwZW5kZW5jaWVzKHNoZWxsLlNoZWxsQ29tbWFuZCk6
CiAgICAgbmFtZSA9ICJqaGJ1aWxkIgogICAgIGRlc2NyaXB0aW9uID0gWyJ1cGRhdGluZyBlZmwg
ZGVwZW5kZW5jaWVzIl0KQEAgLTcxNyw2ICs3MzUsNyBAQCBjbGFzcyBGYWN0b3J5KGZhY3Rvcnku
QnVpbGRGYWN0b3J5KToKICAgICAgICAgICAgIHNlbGYuYWRkU3RlcChXYWl0Rm9yU1ZOU2VydmVy
KCkpCiAgICAgICAgIHNlbGYuYWRkU3RlcChDaGVja091dFNvdXJjZShTVk5NaXJyb3I9U1ZOTWly
cm9yKSkKICAgICAgICAgc2VsZi5hZGRTdGVwKEtpbGxPbGRQcm9jZXNzZXMoKSkKKyAgICAgICAg
c2VsZi5hZGRTdGVwKENsZWFuQnVpbGRJZlNjaGVkdWxlZCgpKQogICAgICAgICBzZWxmLmFkZFN0
ZXAoRGVsZXRlU3RhbGVCdWlsZEZpbGVzKCkpCiAgICAgICAgIGlmIHBsYXRmb3JtID09ICJ3aW4i
OgogICAgICAgICAgICAgc2VsZi5hZGRTdGVwKEluc3RhbGxXaW4zMkRlcGVuZGVuY2llcygpKQpA
QCAtODc2LDcgKzg5NSw3IEBAIGRlZiBsb2FkQnVpbGRlckNvbmZpZyhjKToKIAogICAgIGZvcmNl
U2NoZWR1bGVyID0gRm9yY2VTY2hlZHVsZXIoCiAgICAgICAgIG5hbWU9ImZvcmNlIiwKLSAgICAg
ICAgYnVpbGRlck5hbWVzPVtidWlsZGVyWyduYW1lJ10gZm9yIGJ1aWxkZXIgaW4gY29uZmlnWydi
dWlsZGVycyddXSwKKyAgICAgICAgYnVpbGRlck5hbWVzPVtzdHIoYnVpbGRlclsnbmFtZSddKSBm
b3IgYnVpbGRlciBpbiBjb25maWdbJ2J1aWxkZXJzJ11dLAogICAgICAgICByZWFzb249U3RyaW5n
UGFyYW1ldGVyKG5hbWU9InJlYXNvbiIsIGRlZmF1bHQ9IiIsIHNpemU9NDApLAogCiAgICAgICAg
ICMgVmFsaWRhdGUgU1ZOIHJldmlzaW9uOiBudW1iZXIgb3IgZW10cHkgc3RyaW5nCkBAIC04OTAs
NiArOTA5LDE4IEBAIGRlZiBsb2FkQnVpbGRlckNvbmZpZyhjKToKICAgICApCiAgICAgY1snc2No
ZWR1bGVycyddLmFwcGVuZChmb3JjZVNjaGVkdWxlcikKIAorICAgIGNsZWFuX3NjaGVkdWxlciA9
IEZvcmNlU2NoZWR1bGVyKG5hbWU9ImNsZWFuIiwKKyAgICAgICAgYnVpbGRlck5hbWVzPVtzdHIo
YnVpbGRlclsnbmFtZSddKSBmb3IgYnVpbGRlciBpbiBjb25maWdbJ2J1aWxkZXJzJ11dLAorICAg
ICAgICByZWFzb249Rml4ZWRQYXJhbWV0ZXIobmFtZT0icmVhc29uIiwgZGVmYXVsdD0iVGhlICdD
bGVhbiBCdWlsZCcgYnV0dG9uIHdhcyBwcmVzc2VkLiIpLAorCisgICAgICAgIHJldmlzaW9uPVN0
cmluZ1BhcmFtZXRlcihuYW1lPSJyZXZpc2lvbiIsIGRlZmF1bHQ9IiIsIHJlZ2V4PXJlLmNvbXBp
bGUocideKFxkKikkJykpLAorCisgICAgICAgIGJyYW5jaD1GaXhlZFBhcmFtZXRlcihuYW1lPSJi
cmFuY2giKSwKKyAgICAgICAgcmVwb3NpdG9yeT1GaXhlZFBhcmFtZXRlcihuYW1lPSJyZXBvc2l0
b3J5IiksCisgICAgICAgIHByb2plY3Q9Rml4ZWRQYXJhbWV0ZXIobmFtZT0icHJvamVjdCIpLAor
ICAgICAgICBwcm9wZXJ0aWVzPVtdKQorICAgIGNbJ3NjaGVkdWxlcnMnXS5hcHBlbmQoY2xlYW5f
c2NoZWR1bGVyKQorCiAgICAgY1snYnVpbGRlcnMnXSA9IFtdCiAgICAgZm9yIGJ1aWxkZXIgaW4g
Y29uZmlnWydidWlsZGVycyddOgogICAgICAgICBmb3Igc2xhdmVOYW1lIGluIGJ1aWxkZXJbJ3Ns
YXZlbmFtZXMnXToK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>215673</attachid>
            <date>2013-10-31 13:40:45 -0700</date>
            <delta_ts>2013-10-31 14:13:39 -0700</delta_ts>
            <desc>Add a boolean to the existing forced scheduler</desc>
            <filename>bug-123559-20131031134045.patch</filename>
            <type>text/plain</type>
            <size>8985</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDE1ODM0OSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDI5IEBACisyMDEzLTEwLTMwICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgor
CisgICAgICAgIGJ1aWxkLndlYmtpdC5vcmcgc2hvdWxkIGhhdmUgYSBjbGVhbiBidWlsZCBidXR0
b24KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyMzU1
OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBh
IG5ldyAiY2xlYW4iIGZvcmNlZCBzY2hlZHVsZXIuIFdoZW4gYSBidWlsZCB3YXMgY3JlYXRlZCBi
eSB0aGlzIHNjaGVkdWxlciwgQ2xlYW5CdWlsZElmU2NoZWR1bGVkCisgICAgICAgIHN0ZXAgZXhl
Y3V0ZXMgY2xlYW4tYnVpbGQgc2NyaXB0IHRoYXQgcmVtb3ZlcyB0aGUgV2ViS2l0QnVpbGQgZGly
ZWN0b3J5LgorCisgICAgICAgIEFsc28gYWRkZWQgbWFrZS1wYXNzd29yZHMtanNvbi5weSB3aGlj
aCBjcmVhdGVzIGEgZmFrZSBwYXNzd29yZHMuanNvbiBmcm9tIGNvbmZpZy5qc29uIGZvciB0ZXN0
aW5nIHB1cnBvc2VzLgorCisgICAgICAgICogQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0
Lm9yZy1jb25maWcvbWFrZS1wYXNzd29yZHMtanNvbi5weTogQWRkZWQuCisgICAgICAgICogQnVp
bGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvbWFzdGVyLmNmZzoKKyAgICAg
ICAgKENsZWFuQnVpbGRJZlNjaGVkdWxlZCk6IEFkZGVkLgorICAgICAgICAoQ2xlYW5CdWlsZElm
U2NoZWR1bGVkLnN0YXJ0KTogQWRkZWQuIERvbid0IGRvIGEgY2xlYW4gYnVpbGQgaWYgaWYgdGhp
cyBidWlsZCB3YXNuJ3Qgc2NoZWN1ZWxkIGJ5CisgICAgICAgIHRoZSBjbGVhbiBidWlsZCBzY2hl
ZHVsZXIuCisgICAgICAgIChEZWxldGVTdGFsZUJ1aWxkRmlsZXMpOiBBZGRlZC4KKyAgICAgICAg
KERlbGV0ZVN0YWxlQnVpbGRGaWxlcy5zdGFydCk6IEFkZGVkLiBEb24ndCBkZWxldGUgc3RhbGUg
YnVpbGQgZmlsZXMgaWYgdGhpcyBidWlsZCB3YXMgc2NoZWR1bGVkIGJ5CisgICAgICAgIHRoZSBj
bGVhbiBidWlsZCBzY2hlZHVsZXIgc2luY2UgZXZlcnl0aGluZyBpbiB0aGUgV2ViS2l0QnVpbGQg
ZGlyZWN0b3J5IGhhZCBhbHJlYWR5IGJlZW4gcmVtb3ZlZC4KKyAgICAgICAgKEZhY3RvcnkuX19p
bml0X18pOiBBbHdheXMgYWRkIENsZWFuQnVpbGRJZlNjaGVkdWxlZC4gIFRoZSBzdGVwIGl0c2Vs
ZiBjaGVja3Mgd2hldGhlciB0byBydW4KKyAgICAgICAgY2xlYW4tYnVpbGQgc2NyaXB0IG9yIGhp
ZGUgaXRzZWxmLgorICAgICAgICAobG9hZEJ1aWxkZXJDb25maWcpOiBBZGRlZCB0aGUgbmV3IGNs
ZWFuIGJ1aWxkIHNjaGVkdWxlci4gQWxzbyBtYWtlIEZvcmNlU2NoZWR1bGVyIGZ1dHVyZSBwcm9v
ZjsgaW4gbmV3ZXIKKyAgICAgICAgdmVyc2lvbnMgb2YgYnVpbGRib3QsIGJ1aWxkZXJOYW1lcyBu
ZWVkcyB0byBiZSBhIGxpc3Qgb2YgcmVndWxhciBzdHJpbmdzLgorICAgICAgICAqIEJ1aWxkU2xh
dmVTdXBwb3J0L2NsZWFuLWJ1aWxkOiBBZGRlZC4KKwogMjAxMy0xMC0zMCAgQWxleGV5IFByb3Nr
dXJ5YWtvdiAgPGFwQGFwcGxlLmNvbT4KIAogICAgICAgICBUZWFjaCB0aGUgc3R5bGUgY2hlY2tl
ciBhYm91dCBFTlVNX0NMQVNTCkluZGV4OiBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9jbGVhbi1i
dWlsZAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9jbGVhbi1idWlsZAko
cmV2aXNpb24gMCkKKysrIFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2NsZWFuLWJ1aWxkCSh3b3Jr
aW5nIGNvcHkpCkBAIC0wLDAgKzEsNTQgQEAKKyMhL3Vzci9iaW4vcHl0aG9uCisjIENvcHlyaWdo
dCAoQykgMjAxMyBBcHBsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorIyBDb3B5cmlnaHQg
KEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyMKKyMgUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisjIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucworIyBhcmUgbWV0OgorIworIyAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMgICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyMg
Mi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0CisjICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisjICAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorIworIyBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIEFORCBJVFMgQ09OVFJJQlVUT1JTICJB
UyBJUyIgQU5EIEFOWQorIyBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisjIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyMgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBM
SUFCTEUgRk9SIEFOWQorIyBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworIyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
CisjIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORAorIyBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorIyAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UgT0YKKyMgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKworaW1wb3J0IG9wdHBhcnNlCitpbXBvcnQgb3MKK2ltcG9ydCBz
aHV0aWwKK2ltcG9ydCBzdWJwcm9jZXNzCitpbXBvcnQgc3lzCisKK2RlZiBtYWluKCk6CisgICAg
cGFyc2VyID0gb3B0cGFyc2UuT3B0aW9uUGFyc2VyKCJ1c2FnZTogJXByb2cgW29wdGlvbnNdIikK
KyAgICBwYXJzZXIuYWRkX29wdGlvbigiLS1wbGF0Zm9ybSIpCisgICAgcGFyc2VyLmFkZF9vcHRp
b24oIi0tZGVidWciLCBhY3Rpb249InN0b3JlX2NvbnN0IiwgY29uc3Q9ImRlYnVnIiwgZGVzdD0i
Y29uZmlndXJhdGlvbiIpCisgICAgcGFyc2VyLmFkZF9vcHRpb24oIi0tcmVsZWFzZSIsIGFjdGlv
bj0ic3RvcmVfY29uc3QiLCBjb25zdD0icmVsZWFzZSIsIGRlc3Q9ImNvbmZpZ3VyYXRpb24iKQor
CisgICAgb3B0aW9ucywgcGFyYW1ldGVycyA9IHBhcnNlci5wYXJzZV9hcmdzKCkKKyAgICBpZiBu
b3Qgb3B0aW9ucy5wbGF0Zm9ybToKKyAgICAgICAgcGFyc2VyLmVycm9yKCJQbGF0Zm9ybSBpcyBy
ZXF1aXJlZCIpCisgICAgICAgIHJldHVybiAtMQorICAgIGlmIG5vdCBvcHRpb25zLmNvbmZpZ3Vy
YXRpb246CisgICAgICAgIHBhcnNlci5lcnJvcigiQ29uZmlndXJhdGlvbiBpcyByZXF1aXJlZCIp
CisgICAgICAgIHJldHVybiAtMgorCisgICAgZ2VuZXJpY19wbGF0Zm9ybSA9IG9wdGlvbnMucGxh
dGZvcm0uc3BsaXQoJy0nLCAxKVswXQorCisgICAgd2Via2l0X2J1aWxkX2RpcmVjdG9yeSA9IHN1
YnByb2Nlc3MuUG9wZW4oWydwZXJsJywgb3MucGF0aC5qb2luKG9zLnBhdGguZGlybmFtZShfX2Zp
bGVfXyksICIuLiIsICJTY3JpcHRzIiwgIndlYmtpdC1idWlsZC1kaXJlY3RvcnkiKSwKKyAgICAg
ICAgIi0tIiArIGdlbmVyaWNfcGxhdGZvcm0sICItLSIgKyBvcHRpb25zLmNvbmZpZ3VyYXRpb24s
ICctLXRvcC1sZXZlbCddLCBzdGRvdXQ9c3VicHJvY2Vzcy5QSVBFKS5jb21tdW5pY2F0ZSgpWzBd
LnN0cmlwKCkKKworICAgIHNodXRpbC5ybXRyZWUod2Via2l0X2J1aWxkX2RpcmVjdG9yeSkKKwor
aWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKKyAgICBzeXMuZXhpdChtYWluKCkpCgpQcm9wZXJ0
eSBjaGFuZ2VzIG9uOiBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9jbGVhbi1idWlsZApfX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fCkFkZGVkOiBzdm46ZXhlY3V0YWJsZQojIyAtMCwwICsxICMjCisqClwgTm8gbmV3bGluZSBh
dCBlbmQgb2YgcHJvcGVydHkKSW5kZXg6IFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndl
YmtpdC5vcmctY29uZmlnL21ha2UtcGFzc3dvcmRzLWpzb24ucHkKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9v
bHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvbWFrZS1wYXNzd29y
ZHMtanNvbi5weQkocmV2aXNpb24gMCkKKysrIFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2J1aWxk
LndlYmtpdC5vcmctY29uZmlnL21ha2UtcGFzc3dvcmRzLWpzb24ucHkJKHdvcmtpbmcgY29weSkK
QEAgLTAsMCArMSwxMiBAQAorIyEvdXNyL2Jpbi9weXRob24KKworaW1wb3J0IGpzb24KKword2l0
aCBvcGVuKCdjb25maWcuanNvbicsICdyJykgYXMgY29uZmlnX2ZpbGU6CisgICAgY29uZmlnID0g
anNvbi5sb2FkKGNvbmZpZ19maWxlKQorICAgIHBhc3N3b3JkcyA9IHt9CisgICAgZm9yIHNsYXZl
IGluIGNvbmZpZ1snc2xhdmVzJ106CisgICAgICAgIHBhc3N3b3Jkc1tzbGF2ZVsnbmFtZSddXSA9
ICdhJworCit3aXRoIG9wZW4oJ3Bhc3N3b3Jkcy5qc29uJywgJ3cnKSBhcyBwYXNzd29yZHNfZmls
ZToKKyAgICBwYXNzd29yZHNfZmlsZS53cml0ZShqc29uLmR1bXBzKHBhc3N3b3JkcykpCgpQcm9w
ZXJ0eSBjaGFuZ2VzIG9uOiBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3Jn
LWNvbmZpZy9tYWtlLXBhc3N3b3Jkcy1qc29uLnB5Cl9fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KQWRkZWQ6IHN2bjpleGVj
dXRhYmxlCiMjIC0wLDAgKzEgIyMKKyoKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBwcm9wZXJ0eQpJ
bmRleDogVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvbWFz
dGVyLmNmZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJr
aXQub3JnLWNvbmZpZy9tYXN0ZXIuY2ZnCShyZXZpc2lvbiAxNTgzMzgpCisrKyBUb29scy9CdWls
ZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9tYXN0ZXIuY2ZnCSh3b3JraW5n
IGNvcHkpCkBAIC00LDcgKzQsNyBAQAogZnJvbSBidWlsZGJvdC5idWlsZHNsYXZlIGltcG9ydCBC
dWlsZFNsYXZlCiBmcm9tIGJ1aWxkYm90LmNoYW5nZXMucGIgaW1wb3J0IFBCQ2hhbmdlU291cmNl
CiBmcm9tIGJ1aWxkYm90LnNjaGVkdWxlciBpbXBvcnQgQW55QnJhbmNoU2NoZWR1bGVyLCBUcmln
Z2VyYWJsZQotZnJvbSBidWlsZGJvdC5zY2hlZHVsZXJzLmZvcmNlc2NoZWQgaW1wb3J0IEZpeGVk
UGFyYW1ldGVyLCBGb3JjZVNjaGVkdWxlciwgU3RyaW5nUGFyYW1ldGVyCitmcm9tIGJ1aWxkYm90
LnNjaGVkdWxlcnMuZm9yY2VzY2hlZCBpbXBvcnQgRml4ZWRQYXJhbWV0ZXIsIEZvcmNlU2NoZWR1
bGVyLCBTdHJpbmdQYXJhbWV0ZXIsIEJvb2xlYW5QYXJhbWV0ZXIKIGZyb20gYnVpbGRib3Quc2No
ZWR1bGVycy5maWx0ZXIgaW1wb3J0IENoYW5nZUZpbHRlcgogZnJvbSBidWlsZGJvdC5zdGF0dXMg
aW1wb3J0IGh0bWwKIGZyb20gYnVpbGRib3Quc3RhdHVzLndlYi5hdXRoeiBpbXBvcnQgQXV0aHoK
QEAgLTE0NSwxMiArMTQ1LDMwIEBAIGNsYXNzIEtpbGxPbGRQcm9jZXNzZXMoc2hlbGwuQ29tcGls
ZSk6CiAgICAgZGVzY3JpcHRpb25Eb25lID0gWyJraWxsZWQgb2xkIHByb2Nlc3NlcyJdCiAgICAg
Y29tbWFuZCA9IFsicHl0aG9uIiwgIi4vVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQva2lsbC1vbGQt
cHJvY2Vzc2VzIl0KIAorY2xhc3MgQ2xlYW5CdWlsZElmU2NoZWR1bGVkKHNoZWxsLkNvbXBpbGUp
OgorICAgIG5hbWUgPSAiZGVsZXRlIFdlYktpdEJ1aWxkIGRpcmVjdG9yeSIKKyAgICBkZXNjcmlw
dGlvbiA9IFsiZGVsZXRpbmcgV2ViS2l0QnVpbGQgZGlyZWN0b3J5Il0KKyAgICBkZXNjcmlwdGlv
bkRvbmUgPSBbImRlbGV0ZWQgV2ViS2l0QnVpbGQgZGlyZWN0b3J5Il0KKyAgICBjb21tYW5kID0g
WyJweXRob24iLCAiLi9Ub29scy9CdWlsZFNsYXZlU3VwcG9ydC9jbGVhbi1idWlsZCIsIFdpdGhQ
cm9wZXJ0aWVzKCItLXBsYXRmb3JtPSUoZnVsbFBsYXRmb3JtKXMiKSwgV2l0aFByb3BlcnRpZXMo
Ii0tJShjb25maWd1cmF0aW9uKXMiKV0KKworICAgIGRlZiBzdGFydChzZWxmKToKKyAgICAgICAg
aWYgbm90IHNlbGYuZ2V0UHJvcGVydHkoJ2lzX2NsZWFuJyk6CisgICAgICAgICAgICBzZWxmLmhp
ZGVTdGVwSWYgPSBUcnVlCisgICAgICAgICAgICByZXR1cm4gU0tJUFBFRAorICAgICAgICByZXR1
cm4gc2hlbGwuQ29tcGlsZS5zdGFydChzZWxmKQorCiBjbGFzcyBEZWxldGVTdGFsZUJ1aWxkRmls
ZXMoc2hlbGwuQ29tcGlsZSk6CiAgICAgbmFtZSA9ICJkZWxldGUgc3RhbGUgYnVpbGQgZmlsZXMi
CiAgICAgZGVzY3JpcHRpb24gPSBbImRlbGV0aW5nIHN0YWxlIGJ1aWxkIGZpbGVzIl0KLSAgICBk
ZXNjcmlwdGlvbkRvbmUgPSBbImRlbGV0ZSBzdGFsZSBidWlsZCBmaWxlcyJdCisgICAgZGVzY3Jp
cHRpb25Eb25lID0gWyJkZWxldGVkIHN0YWxlIGJ1aWxkIGZpbGVzIl0KICAgICBjb21tYW5kID0g
WyJweXRob24iLCAiLi9Ub29scy9CdWlsZFNsYXZlU3VwcG9ydC9kZWxldGUtc3RhbGUtYnVpbGQt
ZmlsZXMiLCBXaXRoUHJvcGVydGllcygiLS1wbGF0Zm9ybT0lKGZ1bGxQbGF0Zm9ybSlzIiksIFdp
dGhQcm9wZXJ0aWVzKCItLSUoY29uZmlndXJhdGlvbilzIildCiAKKyAgICBkZWYgc3RhcnQoc2Vs
Zik6CisgICAgICAgIGlmIHNlbGYuZ2V0UHJvcGVydHkoJ2lzX2NsZWFuJyk6ICMgTm90aGluZyB0
byBiZSBkb25lIGlmIFdlYktpdEJ1aWxkIGhhZCBiZWVuIHJlbW92ZWQuCisgICAgICAgICAgICBz
ZWxmLmhpZGVTdGVwSWYgPSBUcnVlCisgICAgICAgICAgICByZXR1cm4gU0tJUFBFRAorICAgICAg
ICByZXR1cm4gc2hlbGwuQ29tcGlsZS5zdGFydChzZWxmKQorCiBjbGFzcyBJbnN0YWxsRWZsRGVw
ZW5kZW5jaWVzKHNoZWxsLlNoZWxsQ29tbWFuZCk6CiAgICAgbmFtZSA9ICJqaGJ1aWxkIgogICAg
IGRlc2NyaXB0aW9uID0gWyJ1cGRhdGluZyBlZmwgZGVwZW5kZW5jaWVzIl0KQEAgLTcxNyw2ICs3
MzUsNyBAQCBjbGFzcyBGYWN0b3J5KGZhY3RvcnkuQnVpbGRGYWN0b3J5KToKICAgICAgICAgICAg
IHNlbGYuYWRkU3RlcChXYWl0Rm9yU1ZOU2VydmVyKCkpCiAgICAgICAgIHNlbGYuYWRkU3RlcChD
aGVja091dFNvdXJjZShTVk5NaXJyb3I9U1ZOTWlycm9yKSkKICAgICAgICAgc2VsZi5hZGRTdGVw
KEtpbGxPbGRQcm9jZXNzZXMoKSkKKyAgICAgICAgc2VsZi5hZGRTdGVwKENsZWFuQnVpbGRJZlNj
aGVkdWxlZCgpKQogICAgICAgICBzZWxmLmFkZFN0ZXAoRGVsZXRlU3RhbGVCdWlsZEZpbGVzKCkp
CiAgICAgICAgIGlmIHBsYXRmb3JtID09ICJ3aW4iOgogICAgICAgICAgICAgc2VsZi5hZGRTdGVw
KEluc3RhbGxXaW4zMkRlcGVuZGVuY2llcygpKQpAQCAtODc2LDcgKzg5NSw3IEBAIGRlZiBsb2Fk
QnVpbGRlckNvbmZpZyhjKToKIAogICAgIGZvcmNlU2NoZWR1bGVyID0gRm9yY2VTY2hlZHVsZXIo
CiAgICAgICAgIG5hbWU9ImZvcmNlIiwKLSAgICAgICAgYnVpbGRlck5hbWVzPVtidWlsZGVyWydu
YW1lJ10gZm9yIGJ1aWxkZXIgaW4gY29uZmlnWydidWlsZGVycyddXSwKKyAgICAgICAgYnVpbGRl
ck5hbWVzPVtzdHIoYnVpbGRlclsnbmFtZSddKSBmb3IgYnVpbGRlciBpbiBjb25maWdbJ2J1aWxk
ZXJzJ11dLAogICAgICAgICByZWFzb249U3RyaW5nUGFyYW1ldGVyKG5hbWU9InJlYXNvbiIsIGRl
ZmF1bHQ9IiIsIHNpemU9NDApLAogCiAgICAgICAgICMgVmFsaWRhdGUgU1ZOIHJldmlzaW9uOiBu
dW1iZXIgb3IgZW10cHkgc3RyaW5nCkBAIC04ODYsNyArOTA1LDcgQEAgZGVmIGxvYWRCdWlsZGVy
Q29uZmlnKGMpOgogICAgICAgICBicmFuY2g9Rml4ZWRQYXJhbWV0ZXIobmFtZT0iYnJhbmNoIiks
CiAgICAgICAgIHJlcG9zaXRvcnk9Rml4ZWRQYXJhbWV0ZXIobmFtZT0icmVwb3NpdG9yeSIpLAog
ICAgICAgICBwcm9qZWN0PUZpeGVkUGFyYW1ldGVyKG5hbWU9InByb2plY3QiKSwKLSAgICAgICAg
cHJvcGVydGllcz1bXQorICAgICAgICBwcm9wZXJ0aWVzPVtCb29sZWFuUGFyYW1ldGVyKG5hbWU9
ImlzX2NsZWFuIiwgbGFiZWw9IkZvcmNlIENsZWFuIGJ1aWxkIildCiAgICAgKQogICAgIGNbJ3Nj
aGVkdWxlcnMnXS5hcHBlbmQoZm9yY2VTY2hlZHVsZXIpCiAK
</data>
<flag name="review"
          id="238460"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>