<?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>97890</bug_id>
          
          <creation_ts>2012-09-28 04:23:28 -0700</creation_ts>
          <short_desc>Web Inspector: Profiles: taking heap snapshot causes error message in console.</short_desc>
          <delta_ts>2012-10-03 02:49:59 -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>Web Inspector (Deprecated)</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>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter>eustas.bug</reporter>
          <assigned_to>eustas.bug</assigned_to>
          <cc>apavlov</cc>
    
    <cc>bweinstein</cc>
    
    <cc>caseq</cc>
    
    <cc>eustas.bug</cc>
    
    <cc>joepeck</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>rik</cc>
    
    <cc>timothy</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>730481</commentid>
    <comment_count>0</comment_count>
    <who name="">eustas.bug</who>
    <bug_when>2012-09-28 04:23:28 -0700</bug_when>
    <thetext>Actual problem is that proxy loader is closed twice.

&quot;_snapshotReceived&quot; should never try to close receiver,
because it is a callback fired by close.

Also minor glitches fixed:
 - taking snapshot shows &quot;Loading...&quot; status first,
and then &quot;Saving xxx%&quot;;
 - after all chunks are sent &quot;Parsing&quot; status is set and
then is replaced with &quot;Saving 100%&quot;;
 - &quot;Loading %d\%&quot; is not localized.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>730486</commentid>
    <comment_count>1</comment_count>
      <attachid>166206</attachid>
    <who name="">eustas.bug</who>
    <bug_when>2012-09-28 04:30:29 -0700</bug_when>
    <thetext>Created attachment 166206
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>730495</commentid>
    <comment_count>2</comment_count>
      <attachid>166206</attachid>
    <who name="Andrey Kosyakov">caseq</who>
    <bug_when>2012-09-28 04:41:39 -0700</bug_when>
    <thetext>Comment on attachment 166206
Patch

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

&gt; Source/WebCore/inspector/front-end/HeapSnapshotView.js:898
&gt; +        var status = this._savingToFile ? &quot;Saving\u2026 %d\%&quot; : &quot;Loading\u2026 %d\%&quot;;

We prefer localizeble string literals always to be within UIString(), even if it may be a bit more code.
Also, now that this handles both saving and loading, I think the method could be renamed to something more generic.

&gt; Source/WebCore/inspector/front-end/HeapSnapshotView.js:903
&gt; +    _updateSnapshotStatus: function() {

style: { =&gt; next line

&gt; Source/WebCore/inspector/front-end/HeapSnapshotView.js:1022
&gt; +            &quot;Loading\u2026 %d\%&quot;, (source.loadedSize() * 100 / source.fileSize()).toFixed(2));

Can we reuse saveStatusUpdate() here?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>730513</commentid>
    <comment_count>3</comment_count>
      <attachid>166206</attachid>
    <who name="">eustas.bug</who>
    <bug_when>2012-09-28 05:02:21 -0700</bug_when>
    <thetext>Comment on attachment 166206
Patch

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

&gt;&gt; Source/WebCore/inspector/front-end/HeapSnapshotView.js:898
&gt;&gt; +        var status = this._savingToFile ? &quot;Saving\u2026 %d\%&quot; : &quot;Loading\u2026 %d\%&quot;;
&gt; 
&gt; We prefer localizeble string literals always to be within UIString(), even if it may be a bit more code.
&gt; Also, now that this handles both saving and loading, I think the method could be renamed to something more generic.

Done.

&gt;&gt; Source/WebCore/inspector/front-end/HeapSnapshotView.js:903
&gt;&gt; +    _updateSnapshotStatus: function() {
&gt; 
&gt; style: { =&gt; next line

Fixed

&gt;&gt; Source/WebCore/inspector/front-end/HeapSnapshotView.js:1022
&gt;&gt; +            &quot;Loading\u2026 %d\%&quot;, (source.loadedSize() * 100 / source.fileSize()).toFixed(2));
&gt; 
&gt; Can we reuse saveStatusUpdate() here?

Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>730515</commentid>
    <comment_count>4</comment_count>
      <attachid>166215</attachid>
    <who name="">eustas.bug</who>
    <bug_when>2012-09-28 05:03:45 -0700</bug_when>
    <thetext>Created attachment 166215
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>731681</commentid>
    <comment_count>5</comment_count>
      <attachid>166473</attachid>
    <who name="">eustas.bug</who>
    <bug_when>2012-10-01 07:22:35 -0700</bug_when>
    <thetext>Created attachment 166473
Patch

rebased</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>732270</commentid>
    <comment_count>6</comment_count>
      <attachid>166473</attachid>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2012-10-01 22:30:08 -0700</bug_when>
    <thetext>Comment on attachment 166473
Patch

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

&gt; Source/WebCore/ChangeLog:18
&gt; +         - removed edad code in proxy;

typo: edad -&gt; dead

&gt; Source/WebCore/inspector/front-end/HeapSnapshotView.js:967
&gt; +            this._updateTransferProgress(0, 0);

Should it be (0, this._totalNumberOfChunks) ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>732328</commentid>
    <comment_count>7</comment_count>
      <attachid>166473</attachid>
    <who name="">eustas.bug</who>
    <bug_when>2012-10-01 23:33:34 -0700</bug_when>
    <thetext>Comment on attachment 166473
Patch

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

&gt;&gt; Source/WebCore/ChangeLog:18
&gt;&gt; +         - removed edad code in proxy;
&gt; 
&gt; typo: edad -&gt; dead

oops. fixed

&gt;&gt; Source/WebCore/inspector/front-end/HeapSnapshotView.js:967
&gt;&gt; +            this._updateTransferProgress(0, 0);
&gt; 
&gt; Should it be (0, this._totalNumberOfChunks) ?

Sure.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>732333</commentid>
    <comment_count>8</comment_count>
      <attachid>166618</attachid>
    <who name="">eustas.bug</who>
    <bug_when>2012-10-01 23:42:04 -0700</bug_when>
    <thetext>Created attachment 166618
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>733505</commentid>
    <comment_count>9</comment_count>
      <attachid>166618</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-10-03 02:49:55 -0700</bug_when>
    <thetext>Comment on attachment 166618
Patch

Clearing flags on attachment: 166618

Committed r130269: &lt;http://trac.webkit.org/changeset/130269&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>733506</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-10-03 02:49:59 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>166206</attachid>
            <date>2012-09-28 04:30:29 -0700</date>
            <delta_ts>2012-09-28 05:03:39 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-97890-20120928152945.patch</filename>
            <type>text/plain</type>
            <size>9611</size>
            <attacher>eustas.bug</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI5ODU2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTQzYjdkN2YxNzc0OWI5
ZGJiNmM3Mzk5NmVmMmRiYWM3ZTg2MmQzOC4uMmNhYWRlOTM0MWE1MTJmZWNlYjA5ZTIwYjhhYzc3
YWIzZjc3ODZkYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDM1IEBACiAyMDEyLTA5LTI4ICBFdWdl
bmUgS2x5dWNobmlrb3YgIDxldXN0YXMuYnVnQGdtYWlsLmNvbT4KIAorICAgICAgICBXZWIgSW5z
cGVjdG9yOiBQcm9maWxlczogdGFraW5nIGhlYXAgc25hcHNob3QgY2F1c2VzIGVycm9yIG1lc3Nh
Z2UgaW4gY29uc29sZS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTk3ODkwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgQWN0dWFsIHByb2JsZW0gaXMgdGhhdCBwcm94eSBsb2FkZXIgaXMgY2xvc2VkIHR3aWNl
LgorCisgICAgICAgICJfc25hcHNob3RSZWNlaXZlZCIgc2hvdWxkIG5ldmVyIHRyeSB0byBjbG9z
ZSByZWNlaXZlciwKKyAgICAgICAgYmVjYXVzZSBpdCBpcyBhIGNhbGxiYWNrIGZpcmVkIGJ5IGNs
b3NlLgorCisgICAgICAgIEFsc28gbWlub3IgZ2xpdGNoZXMgZml4ZWQ6CisgICAgICAgICAtIHRh
a2luZyBzbmFwc2hvdCBzaG93cyAiTG9hZGluZy4uLiIgc3RhdHVzIGZpcnN0LAorICAgICAgICBh
bmQgdGhlbiAiU2F2aW5nIHh4eCUiOworICAgICAgICAgLSBhZnRlciBhbGwgY2h1bmtzIGFyZSBz
ZW50ICJQYXJzaW5nIiBzdGF0dXMgaXMgc2V0IGFuZAorICAgICAgICB0aGVuIGlzIHJlcGxhY2Vk
IHdpdGggIlNhdmluZyAxMDAlIjsKKyAgICAgICAgIC0gcmVtb3ZlZCBlZGFkIGNvZGUgaW4gcHJv
eHk7CisgICAgICAgICAtIHByb3h5IHdhcyBpZ25vcmluZyBjYWxsYmFjayBwYXJhbWV0ZXI7Cisg
ICAgICAgICAtICJMb2FkaW5nICVkXCUiIGlzIG5vdCBsb2NhbGl6ZWQuCisKKyAgICAgICAgKiBF
bmdsaXNoLmxwcm9qL2xvY2FsaXplZFN0cmluZ3MuanM6IEFkZGVkIG1pc3NpbmcgIkxvYWRpbmcg
JWQlIiBzdHJpbmcuCisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9IZWFwU25hcHNob3RQ
cm94eS5qczogUmVtb3ZlZCBkZWFkIGNvZGUuCisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNu
YXBzaG90TG9hZGVyUHJveHkpOiAKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RM
b2FkZXJQcm94eS5wcm90b3R5cGUud3JpdGUpOiBNYWtlIHRoaXMgbWV0aG9kCisgICAgICAgIGlu
dGVyZmFjZS1jb25mb3JtYW50LgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvSGVhcFNu
YXBzaG90Vmlldy5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwUHJvZmlsZUhlYWRlcik6
IEZpeGVkIHVwZGF0ZS1zdGF0dXMgYW5kCisgICAgICAgIGZpbmlzaC10cmFuc2ZlciBsb2dpYy4K
KworMjAxMi0wOS0yOCAgRXVnZW5lIEtseXVjaG5pa292ICA8ZXVzdGFzLmJ1Z0BnbWFpbC5jb20+
CisKICAgICAgICAgV2ViIEluc3BlY3RvcjogRWxlbWVudHM6IFNob3cgZW50aXRpZXMgaW4gZWRp
dCBhcyBIVE1MLgogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9OTc3OTgKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRW5nbGlzaC5scHJvai9sb2Nh
bGl6ZWRTdHJpbmdzLmpzIGIvU291cmNlL1dlYkNvcmUvRW5nbGlzaC5scHJvai9sb2NhbGl6ZWRT
dHJpbmdzLmpzCmluZGV4IDdiZTI1N2JmY2YyYjdkNjA0NWZjZDNkZmMwODdiOWU2NTcxNzBmNjcu
LjUwYmFhNTI5YjUxYmU0MDYyODIxOWY1YTJiOWY0MTQxMWE3NWE4MGIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL0VuZ2xpc2gubHByb2ovbG9jYWxpemVkU3RyaW5ncy5qcworKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9FbmdsaXNoLmxwcm9qL2xvY2FsaXplZFN0cmluZ3MuanMKQEAgLTcwNCw2ICs3
MDQsNyBAQCBsb2NhbGl6ZWRTdHJpbmdzWyI8UmlnaHQ+Il0gPSAiPFJpZ2h0PiI7CiBsb2NhbGl6
ZWRTdHJpbmdzWyI8VXA+Il0gPSAiPFVwPiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyI8RG93bj4iXSA9
ICI8RG93bj4iOwogbG9jYWxpemVkU3RyaW5nc1siRXZlbnRzIl0gPSAiRXZlbnRzIjsKK2xvY2Fs
aXplZFN0cmluZ3NbIkxvYWRpbmdcdTIwMjYgJWRcJSJdID0gIkxvYWRpbmdcdTIwMjYgJWRcJSI7
CiBsb2NhbGl6ZWRTdHJpbmdzWyJTYXZpbmdcdTIwMjYgJWRcJSJdID0gIlNhdmluZ1x1MjAyNiAl
ZFwlIjsKIGxvY2FsaXplZFN0cmluZ3NbIk9ubHkgaGVhcCBzbmFwc2hvdHMgZnJvbSBmaWxlcyB3
aXRoIGV4dGVuc2lvbiAnLndocycgY2FuIGJlIGxvYWRlZC4iXSA9ICJPbmx5IGhlYXAgc25hcHNo
b3RzIGZyb20gZmlsZXMgd2l0aCBleHRlbnNpb24gJy53aHMnIGNhbiBiZSBsb2FkZWQuIjsKIGxv
Y2FsaXplZFN0cmluZ3NbIkNhbid0IGxvYWQgcHJvZmlsZSB3aGVuIG90aGVyIHByb2ZpbGUgaXMg
cmVjb3JkaW5nLiJdID0gIkNhbid0IGxvYWQgcHJvZmlsZSB3aGVuIG90aGVyIHByb2ZpbGUgaXMg
cmVjb3JkaW5nLiI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQt
ZW5kL0hlYXBTbmFwc2hvdFByb3h5LmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250
LWVuZC9IZWFwU25hcHNob3RQcm94eS5qcwppbmRleCAxYjI0YmEyMGY0N2IwNzAwODVlMWQwOGE5
OTgzMzk0YjA0YWEyNjUyLi45MTk3OGNiM2I5NWE1N2Y3OGU5NTM1Yjg5MmU3MTE4ZWUzN2Q0ZTM1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0hlYXBTbmFw
c2hvdFByb3h5LmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvSGVh
cFNuYXBzaG90UHJveHkuanMKQEAgLTM2MCwyMSArMzYwLDEwIEBAIFdlYkluc3BlY3Rvci5IZWFw
U25hcHNob3RQcm94eU9iamVjdC5wcm90b3R5cGUgPSB7CiBXZWJJbnNwZWN0b3IuSGVhcFNuYXBz
aG90TG9hZGVyUHJveHkgPSBmdW5jdGlvbih3b3JrZXIsIG9iamVjdElkKQogewogICAgIFdlYklu
c3BlY3Rvci5IZWFwU25hcHNob3RQcm94eU9iamVjdC5jYWxsKHRoaXMsIHdvcmtlciwgb2JqZWN0
SWQpOwotICAgIHRoaXMuX3N0YXJ0ZWQgPSBmYWxzZTsKICAgICB0aGlzLl9wZW5kaW5nU25hcHNo
b3RDb25zdW1lcnMgPSBbXTsKIH0KIAogV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdExvYWRlclBy
b3h5LnByb3RvdHlwZSA9IHsKLSAgICBzdGFydFRyYW5zZmVyOiBmdW5jdGlvbigpCi0gICAgewot
ICAgICAgICB0aGlzLl9zdGFydGVkID0gdHJ1ZTsKLSAgICB9LAotCi0gICAgaXNTdGFydGVkOiBm
dW5jdGlvbigpCi0gICAgewotICAgICAgICByZXR1cm4gdGhpcy5fc3RhcnRlZDsKLSAgICB9LAot
CiAgICAgLyoqCiAgICAgICogQHBhcmFtIHtmdW5jdGlvbihXZWJJbnNwZWN0b3IuSGVhcFNuYXBz
aG90UHJveHkpfSBjYWxsYmFjawogICAgICAqLwpAQCAtMzg1LDEwICszNzQsMTEgQEAgV2ViSW5z
cGVjdG9yLkhlYXBTbmFwc2hvdExvYWRlclByb3h5LnByb3RvdHlwZSA9IHsKIAogICAgIC8qKgog
ICAgICAqIEBwYXJhbSB7c3RyaW5nfSBjaHVuaworICAgICAqIEBwYXJhbSB7ZnVuY3Rpb24oV2Vi
SW5zcGVjdG9yLk91dHB1dFN0cmVhbSk9fSBjYWxsYmFjawogICAgICAqLwotICAgIHdyaXRlOiBm
dW5jdGlvbihjaHVuaykKKyAgICB3cml0ZTogZnVuY3Rpb24oY2h1bmssIGNhbGxiYWNrKQogICAg
IHsKLSAgICAgICAgdGhpcy5jYWxsTWV0aG9kKG51bGwsICJ3cml0ZSIsIGNodW5rKTsKKyAgICAg
ICAgdGhpcy5jYWxsTWV0aG9kKGNhbGxiYWNrLCAid3JpdGUiLCBjaHVuayk7CiAgICAgfSwKIAog
ICAgIGNsb3NlOiBmdW5jdGlvbigpCkBAIC00MDYsOCArMzk2LDYgQEAgV2ViSW5zcGVjdG9yLkhl
YXBTbmFwc2hvdExvYWRlclByb3h5LnByb3RvdHlwZSA9IHsKICAgICAgICAgewogICAgICAgICAg
ICAgZm9yICh2YXIgaSA9IDA7IGkgPCB0aGlzLl9wZW5kaW5nU25hcHNob3RDb25zdW1lcnMubGVu
Z3RoOyArK2kpCiAgICAgICAgICAgICAgICAgdGhpcy5fcGVuZGluZ1NuYXBzaG90Q29uc3VtZXJz
W2ldKHNuYXBzaG90UHJveHkpOwotCi0gICAgICAgICAgICB0aGlzLl9zdGFydGVkID0gZmFsc2U7
CiAgICAgICAgICAgICB0aGlzLl9wZW5kaW5nU25hcHNob3RDb25zdW1lcnMgPSBbXTsKICAgICAg
ICAgfQogICAgICAgICB0aGlzLmNhbGxNZXRob2QoYnVpbGRTbmFwc2hvdC5iaW5kKHRoaXMpLCAi
Y2xvc2UiKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQv
SGVhcFNuYXBzaG90Vmlldy5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQv
SGVhcFNuYXBzaG90Vmlldy5qcwppbmRleCAzNWVkNzk2NzdlMDE5ZDExNjM0NGE3MmZjZmRkYmEx
OWMwNTBmMzg4Li4wMzJhODczMDlkMjRlMDFkZTMzNTQyZjdiZjRkMmY5YmQ2MzAyZDE0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0hlYXBTbmFwc2hvdFZp
ZXcuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9IZWFwU25hcHNo
b3RWaWV3LmpzCkBAIC04MTIsNyArODEyLDcgQEAgV2ViSW5zcGVjdG9yLkhlYXBQcm9maWxlSGVh
ZGVyID0gZnVuY3Rpb24odHlwZSwgdGl0bGUsIHVpZCwgbWF4SlNPYmplY3RJZCkKICAgICBXZWJJ
bnNwZWN0b3IuUHJvZmlsZUhlYWRlci5jYWxsKHRoaXMsIHR5cGUsIHRpdGxlLCB1aWQpOwogICAg
IHRoaXMubWF4SlNPYmplY3RJZCA9IG1heEpTT2JqZWN0SWQ7CiAgICAgLyoqCi0gICAgICogQHR5
cGUge1dlYkluc3BlY3Rvci5GaWxlT3V0cHV0U3RyZWFtfQorICAgICAqIEB0eXBlIHtXZWJJbnNw
ZWN0b3IuT3V0cHV0U3RyZWFtfQogICAgICAqLwogICAgIHRoaXMuX3JlY2VpdmVyID0gbnVsbDsK
ICAgICAvKioKQEAgLTg1Nyw2ICs4NTcsOCBAQCBXZWJJbnNwZWN0b3IuSGVhcFByb2ZpbGVIZWFk
ZXIucHJvdG90eXBlID0gewogICAgICAgICB9CiAKICAgICAgICAgdGhpcy5fbnVtYmVyT2ZDaHVu
a3MgPSAwOworICAgICAgICB0aGlzLl9zYXZlZENodW5rcyA9IDA7CisgICAgICAgIHRoaXMuX3Nh
dmluZ1RvRmlsZSA9IGZhbHNlOwogICAgICAgICBpZiAoIXRoaXMuX3JlY2VpdmVyKSB7CiAgICAg
ICAgICAgICB0aGlzLl9zZXR1cFdvcmtlcigpOwogICAgICAgICAgICAgdGhpcy5zaWRlYmFyRWxl
bWVudC5zdWJ0aXRsZSA9IFdlYkluc3BlY3Rvci5VSVN0cmluZygiTG9hZGluZ1x1MjAyNiIpOwpA
QCAtODkzLDExICs4OTUsMTQgQEAgV2ViSW5zcGVjdG9yLkhlYXBQcm9maWxlSGVhZGVyLnByb3Rv
dHlwZSA9IHsKICAgICAgKi8KICAgICBfc2F2ZVN0YXR1c1VwZGF0ZTogZnVuY3Rpb24oc2F2ZWRD
aHVua3NDb3VudCkKICAgICB7Ci0gICAgICAgIGlmIChzYXZlZENodW5rc0NvdW50ID09PSB0aGlz
Ll90b3RhbE51bWJlck9mQ2h1bmtzKSB7Ci0gICAgICAgICAgICB0aGlzLnNpZGViYXJFbGVtZW50
LnN1YnRpdGxlID0gTnVtYmVyLmJ5dGVzVG9TdHJpbmcodGhpcy5fc25hcHNob3RQcm94eS50b3Rh
bFNpemUpOwotICAgICAgICAgICAgdGhpcy5zaWRlYmFyRWxlbWVudC53YWl0ID0gZmFsc2U7Ci0g
ICAgICAgIH0gZWxzZQotICAgICAgICAgICAgdGhpcy5zaWRlYmFyRWxlbWVudC5zdWJ0aXRsZSA9
IFdlYkluc3BlY3Rvci5VSVN0cmluZygiU2F2aW5nXHUyMDI2ICVkXCUiLCAoc2F2ZWRDaHVua3ND
b3VudCAqIDEwMCAvIHRoaXMuX3RvdGFsTnVtYmVyT2ZDaHVua3MpLnRvRml4ZWQoMikpOworICAg
ICAgICB2YXIgc3RhdHVzID0gdGhpcy5fc2F2aW5nVG9GaWxlID8gIlNhdmluZ1x1MjAyNiAlZFwl
IiA6ICJMb2FkaW5nXHUyMDI2ICVkXCUiOworICAgICAgICB2YXIgdmFsdWUgPSB0aGlzLl90b3Rh
bE51bWJlck9mQ2h1bmtzID8gc2F2ZWRDaHVua3NDb3VudCAvIHRoaXMuX3RvdGFsTnVtYmVyT2ZD
aHVua3MgOiAwOworICAgICAgICB0aGlzLnNpZGViYXJFbGVtZW50LnN1YnRpdGxlID0gV2ViSW5z
cGVjdG9yLlVJU3RyaW5nKHN0YXR1cywgKHZhbHVlICogMTAwKS50b0ZpeGVkKDIpKTsKKyAgICB9
LAorCisgICAgX3VwZGF0ZVNuYXBzaG90U3RhdHVzOiBmdW5jdGlvbigpIHsKKyAgICAgICAgdGhp
cy5zaWRlYmFyRWxlbWVudC5zdWJ0aXRsZSA9IE51bWJlci5ieXRlc1RvU3RyaW5nKHRoaXMuX3Nu
YXBzaG90UHJveHkudG90YWxTaXplKTsKKyAgICAgICAgdGhpcy5zaWRlYmFyRWxlbWVudC53YWl0
ID0gZmFsc2U7CiAgICAgfSwKIAogICAgIC8qKgpAQCAtOTEwLDMwICs5MTUsMzEgQEAgV2ViSW5z
cGVjdG9yLkhlYXBQcm9maWxlSGVhZGVyLnByb3RvdHlwZSA9IHsKICAgICAgICAgZnVuY3Rpb24g
Y2FsbGJhY2soKQogICAgICAgICB7CiAgICAgICAgICAgICB0aGlzLl9zYXZlU3RhdHVzVXBkYXRl
KCsrdGhpcy5fc2F2ZWRDaHVua3MpOwotICAgICAgICAgICAgaWYgKHRoaXMuX3RvdGFsTnVtYmVy
T2ZDaHVua3MgPT09IHRoaXMuX3NhdmVkQ2h1bmtzKQotICAgICAgICAgICAgICAgIHRoaXMuX3Nu
YXBzaG90UmVjZWl2ZWQobnVsbCk7CisgICAgICAgICAgICBpZiAodGhpcy5fdG90YWxOdW1iZXJP
ZkNodW5rcyA9PT0gdGhpcy5fc2F2ZWRDaHVua3MpIHsKKyAgICAgICAgICAgICAgICBpZiAodGhp
cy5fc2F2aW5nVG9GaWxlKQorICAgICAgICAgICAgICAgICAgICB0aGlzLl91cGRhdGVTbmFwc2hv
dFN0YXR1cygpOworICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgdGhp
cy5zaWRlYmFyRWxlbWVudC5zdWJ0aXRsZSA9IFdlYkluc3BlY3Rvci5VSVN0cmluZygiUGFyc2lu
Z1x1MjAyNiIpOworCisgICAgICAgICAgICAgICAgdGhpcy5fcmVjZWl2ZXIuY2xvc2UoKTsKKyAg
ICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0sCiAKICAgICBfc25hcHNob3RSZWNlaXZlZDog
ZnVuY3Rpb24oc25hcHNob3RQcm94eSkKICAgICB7Ci0gICAgICAgIHRoaXMuX3JlY2VpdmVyLmNs
b3NlKCk7CiAgICAgICAgIHRoaXMuX3JlY2VpdmVyID0gbnVsbDsKICAgICAgICAgaWYgKHNuYXBz
aG90UHJveHkpCiAgICAgICAgICAgICB0aGlzLl9zbmFwc2hvdFByb3h5ID0gc25hcHNob3RQcm94
eTsKLSAgICAgICAgdGhpcy5zaWRlYmFyRWxlbWVudC5zdWJ0aXRsZSA9IE51bWJlci5ieXRlc1Rv
U3RyaW5nKHRoaXMuX3NuYXBzaG90UHJveHkudG90YWxTaXplKTsKLSAgICAgICAgdGhpcy5zaWRl
YmFyRWxlbWVudC53YWl0ID0gZmFsc2U7CisgICAgICAgIHRoaXMuX3VwZGF0ZVNuYXBzaG90U3Rh
dHVzKCk7CiAgICAgICAgIHZhciB3b3JrZXIgPSAvKiogQHR5cGUge1dlYkluc3BlY3Rvci5IZWFw
U25hcHNob3RXb3JrZXJ9ICovIHRoaXMuX3NuYXBzaG90UHJveHkud29ya2VyOwogICAgICAgICB0
aGlzLmlzVGVtcG9yYXJ5ID0gZmFsc2U7CiAgICAgICAgIHdvcmtlci5zdGFydENoZWNraW5nRm9y
TG9uZ1J1bm5pbmdDYWxscygpOwogICAgIH0sCiAKLSAgICBmaW5pc2hIZWFwU25hcHNob3Q6IGZ1
bmN0aW9uKHRyYW5zZmVyRmluaXNoZWQpCisgICAgZmluaXNoSGVhcFNuYXBzaG90OiBmdW5jdGlv
bigpCiAgICAgewogICAgICAgICB0aGlzLl90b3RhbE51bWJlck9mQ2h1bmtzID0gdGhpcy5fbnVt
YmVyT2ZDaHVua3M7Ci0gICAgICAgIHRoaXMuc2lkZWJhckVsZW1lbnQuc3VidGl0bGUgPSBXZWJJ
bnNwZWN0b3IuVUlTdHJpbmcoIlBhcnNpbmdcdTIwMjYiKTsKLSAgICAgICAgaWYgKCF0cmFuc2Zl
ckZpbmlzaGVkICYmIHRoaXMuX3JlY2VpdmVyKQotICAgICAgICAgICAgdGhpcy5fcmVjZWl2ZXIu
Y2xvc2UoKTsKICAgICB9LAogCiAgICAgLyoqCkBAIC05NTcsNiArOTYzLDcgQEAgV2ViSW5zcGVj
dG9yLkhlYXBQcm9maWxlSGVhZGVyLnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgIHRoaXMuX3Nh
dmVTdGF0dXNVcGRhdGUoMCk7CiAgICAgICAgICAgICBQcm9maWxlckFnZW50LmdldFByb2ZpbGUo
dGhpcy5wcm9maWxlVHlwZSgpLmlkLCB0aGlzLnVpZCk7CiAgICAgICAgIH0KKyAgICAgICAgdGhp
cy5fc2F2aW5nVG9GaWxlID0gdHJ1ZTsKICAgICAgICAgdGhpcy5fZmlsZU5hbWUgPSB0aGlzLl9m
aWxlTmFtZSB8fCAiSGVhcC0iICsgbmV3IERhdGUoKS50b0lTTzg2MDFDb21wYWN0KCkgKyAiLmhl
YXBzbmFwc2hvdCI7CiAgICAgICAgIHRoaXMuX3JlY2VpdmVyID0gbmV3IFdlYkluc3BlY3Rvci5G
aWxlT3V0cHV0U3RyZWFtKCk7CiAgICAgICAgIHRoaXMuX3JlY2VpdmVyLm9wZW4odGhpcy5fZmls
ZU5hbWUsIG9uT3Blbi5iaW5kKHRoaXMpKTsKQEAgLTEwMTIsMTIgKzEwMTksMTIgQEAgV2ViSW5z
cGVjdG9yLkhlYXBTbmFwc2hvdExvYWRGcm9tRmlsZURlbGVnYXRlLnByb3RvdHlwZSA9IHsKICAg
ICBvbkNodW5rVHJhbnNmZXJyZWQ6IGZ1bmN0aW9uKHNvdXJjZSkKICAgICB7CiAgICAgICAgIHRo
aXMuX3NuYXBzaG90SGVhZGVyLnNpZGViYXJFbGVtZW50LnN1YnRpdGxlID0gV2ViSW5zcGVjdG9y
LlVJU3RyaW5nKAotICAgICAgICAgICAgIkxvYWRpbmdcdTIwMjYgJWQlIiwgKHNvdXJjZS5sb2Fk
ZWRTaXplKCkgKiAxMDAgLyBzb3VyY2UuZmlsZVNpemUoKSkudG9GaXhlZCgyKSk7CisgICAgICAg
ICAgICAiTG9hZGluZ1x1MjAyNiAlZFwlIiwgKHNvdXJjZS5sb2FkZWRTaXplKCkgKiAxMDAgLyBz
b3VyY2UuZmlsZVNpemUoKSkudG9GaXhlZCgyKSk7CiAgICAgfSwKIAogICAgIG9uVHJhbnNmZXJG
aW5pc2hlZDogZnVuY3Rpb24oc291cmNlKQogICAgIHsKLSAgICAgICAgdGhpcy5fc25hcHNob3RI
ZWFkZXIuZmluaXNoSGVhcFNuYXBzaG90KHRydWUpOworICAgICAgICB0aGlzLl9zbmFwc2hvdEhl
YWRlci5maW5pc2hIZWFwU25hcHNob3QoKTsKICAgICB9LAogCiAgICAgb25FcnJvcjogZnVuY3Rp
b24gKHNvdXJjZSwgZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9u
dC1lbmQvUHJvZmlsZXNQYW5lbC5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1l
bmQvUHJvZmlsZXNQYW5lbC5qcwppbmRleCBkMGQyMGFhNjlhY2VkZGU2ZDU1OWYwNzFkOGU2ZmEy
NDE1MmIwNWFlLi5mOTVjNTY1NGRiNTdkMGJlNzMxMWMzZTNkZjI1MTM0NWEzMzEwZjIxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Byb2ZpbGVzUGFuZWwu
anMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Qcm9maWxlc1BhbmVs
LmpzCkBAIC02NzEsNyArNjcxLDcgQEAgV2ViSW5zcGVjdG9yLlByb2ZpbGVzUGFuZWwucHJvdG90
eXBlID0gewogICAgICAgICB2YXIgcHJvZmlsZSA9IHRoaXMuX3Byb2ZpbGVzSWRNYXBbdGhpcy5f
bWFrZUtleSh1aWQsIFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RQcm9maWxlVHlwZS5UeXBlSWQp
XTsKICAgICAgICAgaWYgKCFwcm9maWxlKQogICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICBw
cm9maWxlLmZpbmlzaEhlYXBTbmFwc2hvdChmYWxzZSk7CisgICAgICAgIHByb2ZpbGUuZmluaXNo
SGVhcFNuYXBzaG90KCk7CiAgICAgfSwKIAogICAgIC8qKgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>166215</attachid>
            <date>2012-09-28 05:03:45 -0700</date>
            <delta_ts>2012-10-01 07:22:29 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-97890-20120928160301.patch</filename>
            <type>text/plain</type>
            <size>10424</size>
            <attacher>eustas.bug</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI5ODc1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZmIyYjhmZmFmOTA3ODYz
ZmU4NjFiYTU4ZDI0YjI1NTU0ZGI5ZmYwMy4uYmVhNjBmNzY2YTc5ZWFlYWNjMjYxOTE2YzEzZTE1
NTBjNWE1NmIyMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDEyLTA5LTI4ICBFdWdl
bmUgS2x5dWNobmlrb3YgIDxldXN0YXMuYnVnQGdtYWlsLmNvbT4KKworICAgICAgICBXZWIgSW5z
cGVjdG9yOiBQcm9maWxlczogdGFraW5nIGhlYXAgc25hcHNob3QgY2F1c2VzIGVycm9yIG1lc3Nh
Z2UgaW4gY29uc29sZS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTk3ODkwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgQWN0dWFsIHByb2JsZW0gaXMgdGhhdCBwcm94eSBsb2FkZXIgaXMgY2xvc2VkIHR3aWNl
LgorCisgICAgICAgICJfc25hcHNob3RSZWNlaXZlZCIgc2hvdWxkIG5ldmVyIHRyeSB0byBjbG9z
ZSByZWNlaXZlciwKKyAgICAgICAgYmVjYXVzZSBpdCBpcyBhIGNhbGxiYWNrIGZpcmVkIGJ5IGNs
b3NlLgorCisgICAgICAgIEFsc28gbWlub3IgZ2xpdGNoZXMgZml4ZWQ6CisgICAgICAgICAtIHRh
a2luZyBzbmFwc2hvdCBzaG93cyAiTG9hZGluZy4uLiIgc3RhdHVzIGZpcnN0LAorICAgICAgICBh
bmQgdGhlbiAiU2F2aW5nIHh4eCUiOworICAgICAgICAgLSBhZnRlciBhbGwgY2h1bmtzIGFyZSBz
ZW50ICJQYXJzaW5nIiBzdGF0dXMgaXMgc2V0IGFuZAorICAgICAgICB0aGVuIGlzIHJlcGxhY2Vk
IHdpdGggIlNhdmluZyAxMDAlIjsKKyAgICAgICAgIC0gcmVtb3ZlZCBlZGFkIGNvZGUgaW4gcHJv
eHk7CisgICAgICAgICAtIHByb3h5IHdhcyBpZ25vcmluZyBjYWxsYmFjayBwYXJhbWV0ZXI7Cisg
ICAgICAgICAtICJMb2FkaW5nICVkXCUiIGlzIG5vdCBsb2NhbGl6ZWQuCisKKyAgICAgICAgKiBF
bmdsaXNoLmxwcm9qL2xvY2FsaXplZFN0cmluZ3MuanM6IEFkZGVkIG1pc3NpbmcgIkxvYWRpbmcg
JWQlIiBzdHJpbmcuCisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9IZWFwU25hcHNob3RQ
cm94eS5qczogUmVtb3ZlZCBkZWFkIGNvZGUuCisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNu
YXBzaG90TG9hZGVyUHJveHkpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdExv
YWRlclByb3h5LnByb3RvdHlwZS53cml0ZSk6IE1ha2UgdGhpcyBtZXRob2QKKyAgICAgICAgaW50
ZXJmYWNlLWNvbmZvcm1hbnQuCisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9IZWFwU25h
cHNob3RWaWV3LmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBQcm9maWxlSGVhZGVyKTog
Rml4ZWQgdXBkYXRlLXN0YXR1cyBhbmQKKyAgICAgICAgZmluaXNoLXRyYW5zZmVyIGxvZ2ljLgor
CiAyMDEyLTA5LTI4ICBHeXV5b3VuZyBLaW0gIDxneXV5b3VuZy5raW1Ac2Ftc3VuZy5jb20+CiAK
ICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjEyOTg2My4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL0VuZ2xpc2gubHByb2ovbG9jYWxpemVkU3RyaW5ncy5qcyBiL1NvdXJjZS9X
ZWJDb3JlL0VuZ2xpc2gubHByb2ovbG9jYWxpemVkU3RyaW5ncy5qcwppbmRleCA4YWMwMTVlYmY3
OWJhMjM3ZjQ4ZGJiY2YwOGQxM2Q5MmYzMzM2NzA3Li40MDQ1YmIwN2RiMDk5NTFkMWU5NjFiZGQ2
M2RhMTg5MWEzYmFjYWI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9FbmdsaXNoLmxwcm9q
L2xvY2FsaXplZFN0cmluZ3MuanMKKysrIGIvU291cmNlL1dlYkNvcmUvRW5nbGlzaC5scHJvai9s
b2NhbGl6ZWRTdHJpbmdzLmpzCkBAIC03MDUsNiArNzA1LDcgQEAgbG9jYWxpemVkU3RyaW5nc1si
PFJpZ2h0PiJdID0gIjxSaWdodD4iOwogbG9jYWxpemVkU3RyaW5nc1siPFVwPiJdID0gIjxVcD4i
OwogbG9jYWxpemVkU3RyaW5nc1siPERvd24+Il0gPSAiPERvd24+IjsKIGxvY2FsaXplZFN0cmlu
Z3NbIkV2ZW50cyJdID0gIkV2ZW50cyI7Citsb2NhbGl6ZWRTdHJpbmdzWyJMb2FkaW5nXHUyMDI2
ICVkXCUiXSA9ICJMb2FkaW5nXHUyMDI2ICVkXCUiOwogbG9jYWxpemVkU3RyaW5nc1siU2F2aW5n
XHUyMDI2ICVkXCUiXSA9ICJTYXZpbmdcdTIwMjYgJWRcJSI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJP
bmx5IGhlYXAgc25hcHNob3RzIGZyb20gZmlsZXMgd2l0aCBleHRlbnNpb24gJy53aHMnIGNhbiBi
ZSBsb2FkZWQuIl0gPSAiT25seSBoZWFwIHNuYXBzaG90cyBmcm9tIGZpbGVzIHdpdGggZXh0ZW5z
aW9uICcud2hzJyBjYW4gYmUgbG9hZGVkLiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJDYW4ndCBsb2Fk
IHByb2ZpbGUgd2hlbiBvdGhlciBwcm9maWxlIGlzIHJlY29yZGluZy4iXSA9ICJDYW4ndCBsb2Fk
IHByb2ZpbGUgd2hlbiBvdGhlciBwcm9maWxlIGlzIHJlY29yZGluZy4iOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9IZWFwU25hcHNob3RQcm94eS5qcyBi
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvSGVhcFNuYXBzaG90UHJveHkuanMK
aW5kZXggMWIyNGJhMjBmNDdiMDcwMDg1ZTFkMDhhOTk4MzM5NGIwNGFhMjY1Mi4uOTE5NzhjYjNi
OTVhNTdmNzhlOTUzNWI4OTJlNzExOGVlMzdkNGUzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9IZWFwU25hcHNob3RQcm94eS5qcworKysgYi9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0hlYXBTbmFwc2hvdFByb3h5LmpzCkBAIC0zNjAs
MjEgKzM2MCwxMCBAQCBXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90UHJveHlPYmplY3QucHJvdG90
eXBlID0gewogV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdExvYWRlclByb3h5ID0gZnVuY3Rpb24o
d29ya2VyLCBvYmplY3RJZCkKIHsKICAgICBXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90UHJveHlP
YmplY3QuY2FsbCh0aGlzLCB3b3JrZXIsIG9iamVjdElkKTsKLSAgICB0aGlzLl9zdGFydGVkID0g
ZmFsc2U7CiAgICAgdGhpcy5fcGVuZGluZ1NuYXBzaG90Q29uc3VtZXJzID0gW107CiB9CiAKIFdl
Ykluc3BlY3Rvci5IZWFwU25hcHNob3RMb2FkZXJQcm94eS5wcm90b3R5cGUgPSB7Ci0gICAgc3Rh
cnRUcmFuc2ZlcjogZnVuY3Rpb24oKQotICAgIHsKLSAgICAgICAgdGhpcy5fc3RhcnRlZCA9IHRy
dWU7Ci0gICAgfSwKLQotICAgIGlzU3RhcnRlZDogZnVuY3Rpb24oKQotICAgIHsKLSAgICAgICAg
cmV0dXJuIHRoaXMuX3N0YXJ0ZWQ7Ci0gICAgfSwKLQogICAgIC8qKgogICAgICAqIEBwYXJhbSB7
ZnVuY3Rpb24oV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFByb3h5KX0gY2FsbGJhY2sKICAgICAg
Ki8KQEAgLTM4NSwxMCArMzc0LDExIEBAIFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RMb2FkZXJQ
cm94eS5wcm90b3R5cGUgPSB7CiAKICAgICAvKioKICAgICAgKiBAcGFyYW0ge3N0cmluZ30gY2h1
bmsKKyAgICAgKiBAcGFyYW0ge2Z1bmN0aW9uKFdlYkluc3BlY3Rvci5PdXRwdXRTdHJlYW0pPX0g
Y2FsbGJhY2sKICAgICAgKi8KLSAgICB3cml0ZTogZnVuY3Rpb24oY2h1bmspCisgICAgd3JpdGU6
IGZ1bmN0aW9uKGNodW5rLCBjYWxsYmFjaykKICAgICB7Ci0gICAgICAgIHRoaXMuY2FsbE1ldGhv
ZChudWxsLCAid3JpdGUiLCBjaHVuayk7CisgICAgICAgIHRoaXMuY2FsbE1ldGhvZChjYWxsYmFj
aywgIndyaXRlIiwgY2h1bmspOwogICAgIH0sCiAKICAgICBjbG9zZTogZnVuY3Rpb24oKQpAQCAt
NDA2LDggKzM5Niw2IEBAIFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RMb2FkZXJQcm94eS5wcm90
b3R5cGUgPSB7CiAgICAgICAgIHsKICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhp
cy5fcGVuZGluZ1NuYXBzaG90Q29uc3VtZXJzLmxlbmd0aDsgKytpKQogICAgICAgICAgICAgICAg
IHRoaXMuX3BlbmRpbmdTbmFwc2hvdENvbnN1bWVyc1tpXShzbmFwc2hvdFByb3h5KTsKLQotICAg
ICAgICAgICAgdGhpcy5fc3RhcnRlZCA9IGZhbHNlOwogICAgICAgICAgICAgdGhpcy5fcGVuZGlu
Z1NuYXBzaG90Q29uc3VtZXJzID0gW107CiAgICAgICAgIH0KICAgICAgICAgdGhpcy5jYWxsTWV0
aG9kKGJ1aWxkU25hcHNob3QuYmluZCh0aGlzKSwgImNsb3NlIik7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0hlYXBTbmFwc2hvdFZpZXcuanMgYi9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0hlYXBTbmFwc2hvdFZpZXcuanMKaW5kZXgg
MzVlZDc5Njc3ZTAxOWQxMTYzNDRhNzJmY2ZkZGJhMTljMDUwZjM4OC4uMjk2NjI5MTVkOWFmMmZl
MWU3MjMxZWE5OTJlMGViYTFmYTM2NTM3MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL2Zyb250LWVuZC9IZWFwU25hcHNob3RWaWV3LmpzCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9mcm9udC1lbmQvSGVhcFNuYXBzaG90Vmlldy5qcwpAQCAtODEyLDcgKzgxMiw3
IEBAIFdlYkluc3BlY3Rvci5IZWFwUHJvZmlsZUhlYWRlciA9IGZ1bmN0aW9uKHR5cGUsIHRpdGxl
LCB1aWQsIG1heEpTT2JqZWN0SWQpCiAgICAgV2ViSW5zcGVjdG9yLlByb2ZpbGVIZWFkZXIuY2Fs
bCh0aGlzLCB0eXBlLCB0aXRsZSwgdWlkKTsKICAgICB0aGlzLm1heEpTT2JqZWN0SWQgPSBtYXhK
U09iamVjdElkOwogICAgIC8qKgotICAgICAqIEB0eXBlIHtXZWJJbnNwZWN0b3IuRmlsZU91dHB1
dFN0cmVhbX0KKyAgICAgKiBAdHlwZSB7V2ViSW5zcGVjdG9yLk91dHB1dFN0cmVhbX0KICAgICAg
Ki8KICAgICB0aGlzLl9yZWNlaXZlciA9IG51bGw7CiAgICAgLyoqCkBAIC04NTcsNiArODU3LDgg
QEAgV2ViSW5zcGVjdG9yLkhlYXBQcm9maWxlSGVhZGVyLnByb3RvdHlwZSA9IHsKICAgICAgICAg
fQogCiAgICAgICAgIHRoaXMuX251bWJlck9mQ2h1bmtzID0gMDsKKyAgICAgICAgdGhpcy5fc2F2
ZWRDaHVua3MgPSAwOworICAgICAgICB0aGlzLl9zYXZpbmdUb0ZpbGUgPSBmYWxzZTsKICAgICAg
ICAgaWYgKCF0aGlzLl9yZWNlaXZlcikgewogICAgICAgICAgICAgdGhpcy5fc2V0dXBXb3JrZXIo
KTsKICAgICAgICAgICAgIHRoaXMuc2lkZWJhckVsZW1lbnQuc3VidGl0bGUgPSBXZWJJbnNwZWN0
b3IuVUlTdHJpbmcoIkxvYWRpbmdcdTIwMjYiKTsKQEAgLTg4OSwxNSArODkxLDIzIEBAIFdlYklu
c3BlY3Rvci5IZWFwUHJvZmlsZUhlYWRlci5wcm90b3R5cGUgPSB7CiAgICAgfSwKIAogICAgIC8q
KgotICAgICAqIEBwYXJhbSB7bnVtYmVyfSBzYXZlZENodW5rc0NvdW50CisgICAgICogQHBhcmFt
IHtudW1iZXJ9IHZhbHVlCisgICAgICogQHBhcmFtIHtudW1iZXJ9IG1heFZhbHVlCiAgICAgICov
Ci0gICAgX3NhdmVTdGF0dXNVcGRhdGU6IGZ1bmN0aW9uKHNhdmVkQ2h1bmtzQ291bnQpCisgICAg
X3VwZGF0ZVRyYW5zZmVyUHJvZ3Jlc3M6IGZ1bmN0aW9uKHZhbHVlLCBtYXhWYWx1ZSkKICAgICB7
Ci0gICAgICAgIGlmIChzYXZlZENodW5rc0NvdW50ID09PSB0aGlzLl90b3RhbE51bWJlck9mQ2h1
bmtzKSB7Ci0gICAgICAgICAgICB0aGlzLnNpZGViYXJFbGVtZW50LnN1YnRpdGxlID0gTnVtYmVy
LmJ5dGVzVG9TdHJpbmcodGhpcy5fc25hcHNob3RQcm94eS50b3RhbFNpemUpOwotICAgICAgICAg
ICAgdGhpcy5zaWRlYmFyRWxlbWVudC53YWl0ID0gZmFsc2U7Ci0gICAgICAgIH0gZWxzZQotICAg
ICAgICAgICAgdGhpcy5zaWRlYmFyRWxlbWVudC5zdWJ0aXRsZSA9IFdlYkluc3BlY3Rvci5VSVN0
cmluZygiU2F2aW5nXHUyMDI2ICVkXCUiLCAoc2F2ZWRDaHVua3NDb3VudCAqIDEwMCAvIHRoaXMu
X3RvdGFsTnVtYmVyT2ZDaHVua3MpLnRvRml4ZWQoMikpOworICAgICAgICB2YXIgdmFsdWUgPSBt
YXhWYWx1ZSA/ICh2YWx1ZSAvIG1heFZhbHVlKSA6IDA7CisgICAgICAgIHZhciBwZXJjZW50VmFs
dWUgPSAodmFsdWUgKiAxMDApLnRvRml4ZWQoMik7CisgICAgICAgIGlmICh0aGlzLl9zYXZpbmdU
b0ZpbGUpCisgICAgICAgICAgICB0aGlzLnNpZGViYXJFbGVtZW50LnN1YnRpdGxlID0gV2ViSW5z
cGVjdG9yLlVJU3RyaW5nKCJTYXZpbmdcdTIwMjYgJWRcJSIsIHBlcmNlbnRWYWx1ZSk7CisgICAg
ICAgIGVsc2UKKyAgICAgICAgICAgIHRoaXMuc2lkZWJhckVsZW1lbnQuc3VidGl0bGUgPSBXZWJJ
bnNwZWN0b3IuVUlTdHJpbmcoIkxvYWRpbmdcdTIwMjYgJWRcJSIsIHBlcmNlbnRWYWx1ZSk7Cisg
ICAgfSwKKworICAgIF91cGRhdGVTbmFwc2hvdFN0YXR1czogZnVuY3Rpb24oKQorICAgIHsKKyAg
ICAgICAgdGhpcy5zaWRlYmFyRWxlbWVudC5zdWJ0aXRsZSA9IE51bWJlci5ieXRlc1RvU3RyaW5n
KHRoaXMuX3NuYXBzaG90UHJveHkudG90YWxTaXplKTsKKyAgICAgICAgdGhpcy5zaWRlYmFyRWxl
bWVudC53YWl0ID0gZmFsc2U7CiAgICAgfSwKIAogICAgIC8qKgpAQCAtOTA5LDMxICs5MTksMzIg
QEAgV2ViSW5zcGVjdG9yLkhlYXBQcm9maWxlSGVhZGVyLnByb3RvdHlwZSA9IHsKICAgICAgICAg
dGhpcy5fcmVjZWl2ZXIud3JpdGUoY2h1bmssIGNhbGxiYWNrLmJpbmQodGhpcykpOwogICAgICAg
ICBmdW5jdGlvbiBjYWxsYmFjaygpCiAgICAgICAgIHsKLSAgICAgICAgICAgIHRoaXMuX3NhdmVT
dGF0dXNVcGRhdGUoKyt0aGlzLl9zYXZlZENodW5rcyk7Ci0gICAgICAgICAgICBpZiAodGhpcy5f
dG90YWxOdW1iZXJPZkNodW5rcyA9PT0gdGhpcy5fc2F2ZWRDaHVua3MpCi0gICAgICAgICAgICAg
ICAgdGhpcy5fc25hcHNob3RSZWNlaXZlZChudWxsKTsKKyAgICAgICAgICAgIHRoaXMuX3VwZGF0
ZVRyYW5zZmVyUHJvZ3Jlc3MoKyt0aGlzLl9zYXZlZENodW5rcywgdGhpcy5fdG90YWxOdW1iZXJP
ZkNodW5rcyk7CisgICAgICAgICAgICBpZiAodGhpcy5fdG90YWxOdW1iZXJPZkNodW5rcyA9PT0g
dGhpcy5fc2F2ZWRDaHVua3MpIHsKKyAgICAgICAgICAgICAgICBpZiAodGhpcy5fc2F2aW5nVG9G
aWxlKQorICAgICAgICAgICAgICAgICAgICB0aGlzLl91cGRhdGVTbmFwc2hvdFN0YXR1cygpOwor
ICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgdGhpcy5zaWRlYmFyRWxl
bWVudC5zdWJ0aXRsZSA9IFdlYkluc3BlY3Rvci5VSVN0cmluZygiUGFyc2luZ1x1MjAyNiIpOwor
CisgICAgICAgICAgICAgICAgdGhpcy5fcmVjZWl2ZXIuY2xvc2UoKTsKKyAgICAgICAgICAgIH0K
ICAgICAgICAgfQogICAgIH0sCiAKICAgICBfc25hcHNob3RSZWNlaXZlZDogZnVuY3Rpb24oc25h
cHNob3RQcm94eSkKICAgICB7Ci0gICAgICAgIHRoaXMuX3JlY2VpdmVyLmNsb3NlKCk7CiAgICAg
ICAgIHRoaXMuX3JlY2VpdmVyID0gbnVsbDsKICAgICAgICAgaWYgKHNuYXBzaG90UHJveHkpCiAg
ICAgICAgICAgICB0aGlzLl9zbmFwc2hvdFByb3h5ID0gc25hcHNob3RQcm94eTsKLSAgICAgICAg
dGhpcy5zaWRlYmFyRWxlbWVudC5zdWJ0aXRsZSA9IE51bWJlci5ieXRlc1RvU3RyaW5nKHRoaXMu
X3NuYXBzaG90UHJveHkudG90YWxTaXplKTsKLSAgICAgICAgdGhpcy5zaWRlYmFyRWxlbWVudC53
YWl0ID0gZmFsc2U7CisgICAgICAgIHRoaXMuX3VwZGF0ZVNuYXBzaG90U3RhdHVzKCk7CiAgICAg
ICAgIHZhciB3b3JrZXIgPSAvKiogQHR5cGUge1dlYkluc3BlY3Rvci5IZWFwU25hcHNob3RXb3Jr
ZXJ9ICovIHRoaXMuX3NuYXBzaG90UHJveHkud29ya2VyOwogICAgICAgICB0aGlzLmlzVGVtcG9y
YXJ5ID0gZmFsc2U7CiAgICAgICAgIHdvcmtlci5zdGFydENoZWNraW5nRm9yTG9uZ1J1bm5pbmdD
YWxscygpOwogICAgIH0sCiAKLSAgICBmaW5pc2hIZWFwU25hcHNob3Q6IGZ1bmN0aW9uKHRyYW5z
ZmVyRmluaXNoZWQpCisgICAgZmluaXNoSGVhcFNuYXBzaG90OiBmdW5jdGlvbigpCiAgICAgewog
ICAgICAgICB0aGlzLl90b3RhbE51bWJlck9mQ2h1bmtzID0gdGhpcy5fbnVtYmVyT2ZDaHVua3M7
Ci0gICAgICAgIHRoaXMuc2lkZWJhckVsZW1lbnQuc3VidGl0bGUgPSBXZWJJbnNwZWN0b3IuVUlT
dHJpbmcoIlBhcnNpbmdcdTIwMjYiKTsKLSAgICAgICAgaWYgKCF0cmFuc2ZlckZpbmlzaGVkICYm
IHRoaXMuX3JlY2VpdmVyKQotICAgICAgICAgICAgdGhpcy5fcmVjZWl2ZXIuY2xvc2UoKTsKICAg
ICB9LAogCiAgICAgLyoqCkBAIC05NTQsOSArOTY1LDEwIEBAIFdlYkluc3BlY3Rvci5IZWFwUHJv
ZmlsZUhlYWRlci5wcm90b3R5cGUgPSB7CiAgICAgICAgIGZ1bmN0aW9uIG9uT3BlbigpCiAgICAg
ICAgIHsKICAgICAgICAgICAgIHRoaXMuX3NhdmVkQ2h1bmtzID0gMDsKLSAgICAgICAgICAgIHRo
aXMuX3NhdmVTdGF0dXNVcGRhdGUoMCk7CisgICAgICAgICAgICB0aGlzLl91cGRhdGVUcmFuc2Zl
clByb2dyZXNzKDAsIDApOwogICAgICAgICAgICAgUHJvZmlsZXJBZ2VudC5nZXRQcm9maWxlKHRo
aXMucHJvZmlsZVR5cGUoKS5pZCwgdGhpcy51aWQpOwogICAgICAgICB9CisgICAgICAgIHRoaXMu
X3NhdmluZ1RvRmlsZSA9IHRydWU7CiAgICAgICAgIHRoaXMuX2ZpbGVOYW1lID0gdGhpcy5fZmls
ZU5hbWUgfHwgIkhlYXAtIiArIG5ldyBEYXRlKCkudG9JU084NjAxQ29tcGFjdCgpICsgIi5oZWFw
c25hcHNob3QiOwogICAgICAgICB0aGlzLl9yZWNlaXZlciA9IG5ldyBXZWJJbnNwZWN0b3IuRmls
ZU91dHB1dFN0cmVhbSgpOwogICAgICAgICB0aGlzLl9yZWNlaXZlci5vcGVuKHRoaXMuX2ZpbGVO
YW1lLCBvbk9wZW4uYmluZCh0aGlzKSk7CkBAIC05ODEsNiArOTkzLDcgQEAgV2ViSW5zcGVjdG9y
LkhlYXBQcm9maWxlSGVhZGVyLnByb3RvdHlwZSA9IHsKICAgICAgICAgdGhpcy5zaWRlYmFyRWxl
bWVudC53YWl0ID0gdHJ1ZTsKICAgICAgICAgdGhpcy5fc2V0dXBXb3JrZXIoKTsKICAgICAgICAg
dGhpcy5fbnVtYmVyT2ZDaHVua3MgPSAwOworICAgICAgICB0aGlzLl9zYXZpbmdUb0ZpbGUgPSBm
YWxzZTsKIAogICAgICAgICB2YXIgZGVsZWdhdGUgPSBuZXcgV2ViSW5zcGVjdG9yLkhlYXBTbmFw
c2hvdExvYWRGcm9tRmlsZURlbGVnYXRlKHRoaXMpOwogICAgICAgICB2YXIgZmlsZVJlYWRlciA9
IHRoaXMuX2NyZWF0ZUZpbGVSZWFkZXIoZmlsZSwgZGVsZWdhdGUpOwpAQCAtMTAxMSwxMyArMTAy
NCwxMiBAQCBXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90TG9hZEZyb21GaWxlRGVsZWdhdGUucHJv
dG90eXBlID0gewogCiAgICAgb25DaHVua1RyYW5zZmVycmVkOiBmdW5jdGlvbihzb3VyY2UpCiAg
ICAgewotICAgICAgICB0aGlzLl9zbmFwc2hvdEhlYWRlci5zaWRlYmFyRWxlbWVudC5zdWJ0aXRs
ZSA9IFdlYkluc3BlY3Rvci5VSVN0cmluZygKLSAgICAgICAgICAgICJMb2FkaW5nXHUyMDI2ICVk
JSIsIChzb3VyY2UubG9hZGVkU2l6ZSgpICogMTAwIC8gc291cmNlLmZpbGVTaXplKCkpLnRvRml4
ZWQoMikpOworICAgICAgICB0aGlzLl9zbmFwc2hvdEhlYWRlci5fdXBkYXRlVHJhbnNmZXJQcm9n
cmVzcyhzb3VyY2UubG9hZGVkU2l6ZSgpLCBzb3VyY2UuZmlsZVNpemUoKSk7CiAgICAgfSwKIAog
ICAgIG9uVHJhbnNmZXJGaW5pc2hlZDogZnVuY3Rpb24oc291cmNlKQogICAgIHsKLSAgICAgICAg
dGhpcy5fc25hcHNob3RIZWFkZXIuZmluaXNoSGVhcFNuYXBzaG90KHRydWUpOworICAgICAgICB0
aGlzLl9zbmFwc2hvdEhlYWRlci5maW5pc2hIZWFwU25hcHNob3QoKTsKICAgICB9LAogCiAgICAg
b25FcnJvcjogZnVuY3Rpb24gKHNvdXJjZSwgZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9mcm9udC1lbmQvUHJvZmlsZXNQYW5lbC5qcyBiL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9mcm9udC1lbmQvUHJvZmlsZXNQYW5lbC5qcwppbmRleCBkMGQyMGFhNjlhY2VkZGU2
ZDU1OWYwNzFkOGU2ZmEyNDE1MmIwNWFlLi5mOTVjNTY1NGRiNTdkMGJlNzMxMWMzZTNkZjI1MTM0
NWEzMzEwZjIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5k
L1Byb2ZpbGVzUGFuZWwuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVu
ZC9Qcm9maWxlc1BhbmVsLmpzCkBAIC02NzEsNyArNjcxLDcgQEAgV2ViSW5zcGVjdG9yLlByb2Zp
bGVzUGFuZWwucHJvdG90eXBlID0gewogICAgICAgICB2YXIgcHJvZmlsZSA9IHRoaXMuX3Byb2Zp
bGVzSWRNYXBbdGhpcy5fbWFrZUtleSh1aWQsIFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RQcm9m
aWxlVHlwZS5UeXBlSWQpXTsKICAgICAgICAgaWYgKCFwcm9maWxlKQogICAgICAgICAgICAgcmV0
dXJuOwotICAgICAgICBwcm9maWxlLmZpbmlzaEhlYXBTbmFwc2hvdChmYWxzZSk7CisgICAgICAg
IHByb2ZpbGUuZmluaXNoSGVhcFNuYXBzaG90KCk7CiAgICAgfSwKIAogICAgIC8qKgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>166473</attachid>
            <date>2012-10-01 07:22:35 -0700</date>
            <delta_ts>2012-10-01 23:41:58 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-97890-20121001182148.patch</filename>
            <type>text/plain</type>
            <size>10401</size>
            <attacher>eustas.bug</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTMwMDQyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWE4ZWI5NTJhMjllNWQ1
NjMwOWUyYmM0MGIxYWYyMzJlNjJhMmE5Mi4uODc3NjE4MjFiNTViZWM4ZDE5OTVhY2M5ZWY5NzVi
MGI4MGExM2EyYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDEyLTEwLTAxICBFdWdl
bmUgS2x5dWNobmlrb3YgIDxldXN0YXMuYnVnQGdtYWlsLmNvbT4KKworICAgICAgICBXZWIgSW5z
cGVjdG9yOiBQcm9maWxlczogdGFraW5nIGhlYXAgc25hcHNob3QgY2F1c2VzIGVycm9yIG1lc3Nh
Z2UgaW4gY29uc29sZS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTk3ODkwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgQWN0dWFsIHByb2JsZW0gaXMgdGhhdCBwcm94eSBsb2FkZXIgaXMgY2xvc2VkIHR3aWNl
LgorCisgICAgICAgICJfc25hcHNob3RSZWNlaXZlZCIgc2hvdWxkIG5ldmVyIHRyeSB0byBjbG9z
ZSByZWNlaXZlciwKKyAgICAgICAgYmVjYXVzZSBpdCBpcyBhIGNhbGxiYWNrIGZpcmVkIGJ5IGNs
b3NlLgorCisgICAgICAgIEFsc28gbWlub3IgZ2xpdGNoZXMgZml4ZWQ6CisgICAgICAgICAtIHRh
a2luZyBzbmFwc2hvdCBzaG93cyAiTG9hZGluZy4uLiIgc3RhdHVzIGZpcnN0LAorICAgICAgICBh
bmQgdGhlbiAiU2F2aW5nIHh4eCUiOworICAgICAgICAgLSBhZnRlciBhbGwgY2h1bmtzIGFyZSBz
ZW50ICJQYXJzaW5nIiBzdGF0dXMgaXMgc2V0IGFuZAorICAgICAgICB0aGVuIGlzIHJlcGxhY2Vk
IHdpdGggIlNhdmluZyAxMDAlIjsKKyAgICAgICAgIC0gcmVtb3ZlZCBlZGFkIGNvZGUgaW4gcHJv
eHk7CisgICAgICAgICAtIHByb3h5IHdhcyBpZ25vcmluZyBjYWxsYmFjayBwYXJhbWV0ZXI7Cisg
ICAgICAgICAtICJMb2FkaW5nICVkXCUiIGlzIG5vdCBsb2NhbGl6ZWQuCisKKyAgICAgICAgKiBF
bmdsaXNoLmxwcm9qL2xvY2FsaXplZFN0cmluZ3MuanM6IEFkZGVkIG1pc3NpbmcgIkxvYWRpbmcg
JWQlIiBzdHJpbmcuCisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9IZWFwU25hcHNob3RQ
cm94eS5qczogUmVtb3ZlZCBkZWFkIGNvZGUuCisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNu
YXBzaG90TG9hZGVyUHJveHkpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdExv
YWRlclByb3h5LnByb3RvdHlwZS53cml0ZSk6IE1ha2UgdGhpcyBtZXRob2QKKyAgICAgICAgaW50
ZXJmYWNlLWNvbmZvcm1hbnQuCisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9IZWFwU25h
cHNob3RWaWV3LmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBQcm9maWxlSGVhZGVyKTog
Rml4ZWQgdXBkYXRlLXN0YXR1cyBhbmQKKyAgICAgICAgZmluaXNoLXRyYW5zZmVyIGxvZ2ljLgor
CiAyMDEyLTEwLTAxICBBbmRyZWkgQnVjdXIgIDxhYnVjdXJAYWRvYmUuY29tPgogCiAgICAgICAg
IFtDU1MgUmVnaW9uc10gUmVtb3ZlIHRoZSBkZXByZWNhdGVkIEFQSSBEb2N1bWVudC53ZWJraXRH
ZXRGbG93QnlOYW1lCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9FbmdsaXNoLmxwcm9qL2xv
Y2FsaXplZFN0cmluZ3MuanMgYi9Tb3VyY2UvV2ViQ29yZS9FbmdsaXNoLmxwcm9qL2xvY2FsaXpl
ZFN0cmluZ3MuanMKaW5kZXggOGFjMDE1ZWJmNzliYTIzN2Y0OGRiYmNmMDhkMTNkOTJmMzMzNjcw
Ny4uNDA0NWJiMDdkYjA5OTUxZDFlOTYxYmRkNjNkYTE4OTFhM2JhY2FiNiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvRW5nbGlzaC5scHJvai9sb2NhbGl6ZWRTdHJpbmdzLmpzCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0VuZ2xpc2gubHByb2ovbG9jYWxpemVkU3RyaW5ncy5qcwpAQCAtNzA1LDYg
KzcwNSw3IEBAIGxvY2FsaXplZFN0cmluZ3NbIjxSaWdodD4iXSA9ICI8UmlnaHQ+IjsKIGxvY2Fs
aXplZFN0cmluZ3NbIjxVcD4iXSA9ICI8VXA+IjsKIGxvY2FsaXplZFN0cmluZ3NbIjxEb3duPiJd
ID0gIjxEb3duPiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJFdmVudHMiXSA9ICJFdmVudHMiOworbG9j
YWxpemVkU3RyaW5nc1siTG9hZGluZ1x1MjAyNiAlZFwlIl0gPSAiTG9hZGluZ1x1MjAyNiAlZFwl
IjsKIGxvY2FsaXplZFN0cmluZ3NbIlNhdmluZ1x1MjAyNiAlZFwlIl0gPSAiU2F2aW5nXHUyMDI2
ICVkXCUiOwogbG9jYWxpemVkU3RyaW5nc1siT25seSBoZWFwIHNuYXBzaG90cyBmcm9tIGZpbGVz
IHdpdGggZXh0ZW5zaW9uICcud2hzJyBjYW4gYmUgbG9hZGVkLiJdID0gIk9ubHkgaGVhcCBzbmFw
c2hvdHMgZnJvbSBmaWxlcyB3aXRoIGV4dGVuc2lvbiAnLndocycgY2FuIGJlIGxvYWRlZC4iOwog
bG9jYWxpemVkU3RyaW5nc1siQ2FuJ3QgbG9hZCBwcm9maWxlIHdoZW4gb3RoZXIgcHJvZmlsZSBp
cyByZWNvcmRpbmcuIl0gPSAiQ2FuJ3QgbG9hZCBwcm9maWxlIHdoZW4gb3RoZXIgcHJvZmlsZSBp
cyByZWNvcmRpbmcuIjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9u
dC1lbmQvSGVhcFNuYXBzaG90UHJveHkuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL0hlYXBTbmFwc2hvdFByb3h5LmpzCmluZGV4IDFiMjRiYTIwZjQ3YjA3MDA4NWUxZDA4
YTk5ODMzOTRiMDRhYTI2NTIuLjkxOTc4Y2IzYjk1YTU3Zjc4ZTk1MzViODkyZTcxMThlZTM3ZDRl
MzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvSGVhcFNu
YXBzaG90UHJveHkuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9I
ZWFwU25hcHNob3RQcm94eS5qcwpAQCAtMzYwLDIxICszNjAsMTAgQEAgV2ViSW5zcGVjdG9yLkhl
YXBTbmFwc2hvdFByb3h5T2JqZWN0LnByb3RvdHlwZSA9IHsKIFdlYkluc3BlY3Rvci5IZWFwU25h
cHNob3RMb2FkZXJQcm94eSA9IGZ1bmN0aW9uKHdvcmtlciwgb2JqZWN0SWQpCiB7CiAgICAgV2Vi
SW5zcGVjdG9yLkhlYXBTbmFwc2hvdFByb3h5T2JqZWN0LmNhbGwodGhpcywgd29ya2VyLCBvYmpl
Y3RJZCk7Ci0gICAgdGhpcy5fc3RhcnRlZCA9IGZhbHNlOwogICAgIHRoaXMuX3BlbmRpbmdTbmFw
c2hvdENvbnN1bWVycyA9IFtdOwogfQogCiBXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90TG9hZGVy
UHJveHkucHJvdG90eXBlID0gewotICAgIHN0YXJ0VHJhbnNmZXI6IGZ1bmN0aW9uKCkKLSAgICB7
Ci0gICAgICAgIHRoaXMuX3N0YXJ0ZWQgPSB0cnVlOwotICAgIH0sCi0KLSAgICBpc1N0YXJ0ZWQ6
IGZ1bmN0aW9uKCkKLSAgICB7Ci0gICAgICAgIHJldHVybiB0aGlzLl9zdGFydGVkOwotICAgIH0s
Ci0KICAgICAvKioKICAgICAgKiBAcGFyYW0ge2Z1bmN0aW9uKFdlYkluc3BlY3Rvci5IZWFwU25h
cHNob3RQcm94eSl9IGNhbGxiYWNrCiAgICAgICovCkBAIC0zODUsMTAgKzM3NCwxMSBAQCBXZWJJ
bnNwZWN0b3IuSGVhcFNuYXBzaG90TG9hZGVyUHJveHkucHJvdG90eXBlID0gewogCiAgICAgLyoq
CiAgICAgICogQHBhcmFtIHtzdHJpbmd9IGNodW5rCisgICAgICogQHBhcmFtIHtmdW5jdGlvbihX
ZWJJbnNwZWN0b3IuT3V0cHV0U3RyZWFtKT19IGNhbGxiYWNrCiAgICAgICovCi0gICAgd3JpdGU6
IGZ1bmN0aW9uKGNodW5rKQorICAgIHdyaXRlOiBmdW5jdGlvbihjaHVuaywgY2FsbGJhY2spCiAg
ICAgewotICAgICAgICB0aGlzLmNhbGxNZXRob2QobnVsbCwgIndyaXRlIiwgY2h1bmspOworICAg
ICAgICB0aGlzLmNhbGxNZXRob2QoY2FsbGJhY2ssICJ3cml0ZSIsIGNodW5rKTsKICAgICB9LAog
CiAgICAgY2xvc2U6IGZ1bmN0aW9uKCkKQEAgLTQwNiw4ICszOTYsNiBAQCBXZWJJbnNwZWN0b3Iu
SGVhcFNuYXBzaG90TG9hZGVyUHJveHkucHJvdG90eXBlID0gewogICAgICAgICB7CiAgICAgICAg
ICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHRoaXMuX3BlbmRpbmdTbmFwc2hvdENvbnN1bWVycy5s
ZW5ndGg7ICsraSkKICAgICAgICAgICAgICAgICB0aGlzLl9wZW5kaW5nU25hcHNob3RDb25zdW1l
cnNbaV0oc25hcHNob3RQcm94eSk7Ci0KLSAgICAgICAgICAgIHRoaXMuX3N0YXJ0ZWQgPSBmYWxz
ZTsKICAgICAgICAgICAgIHRoaXMuX3BlbmRpbmdTbmFwc2hvdENvbnN1bWVycyA9IFtdOwogICAg
ICAgICB9CiAgICAgICAgIHRoaXMuY2FsbE1ldGhvZChidWlsZFNuYXBzaG90LmJpbmQodGhpcyks
ICJjbG9zZSIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVu
ZC9IZWFwU25hcHNob3RWaWV3LmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVu
ZC9IZWFwU25hcHNob3RWaWV3LmpzCmluZGV4IDI1OWJhNzQ2NzNlMmExY2U5OWM5NjU2MGMxYzFh
MGI5NTEwNWNmNzYuLjcwOTBkY2FkMWRmNTJlOTlmOWZjMzkzNWRkNDc5MDRkMGI5ZDIxZTggMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvSGVhcFNuYXBzaG90
Vmlldy5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0hlYXBTbmFw
c2hvdFZpZXcuanMKQEAgLTgxMiw3ICs4MTIsNyBAQCBXZWJJbnNwZWN0b3IuSGVhcFByb2ZpbGVI
ZWFkZXIgPSBmdW5jdGlvbih0eXBlLCB0aXRsZSwgdWlkLCBtYXhKU09iamVjdElkKQogICAgIFdl
Ykluc3BlY3Rvci5Qcm9maWxlSGVhZGVyLmNhbGwodGhpcywgdHlwZSwgdGl0bGUsIHVpZCk7CiAg
ICAgdGhpcy5tYXhKU09iamVjdElkID0gbWF4SlNPYmplY3RJZDsKICAgICAvKioKLSAgICAgKiBA
dHlwZSB7V2ViSW5zcGVjdG9yLkZpbGVPdXRwdXRTdHJlYW19CisgICAgICogQHR5cGUge1dlYklu
c3BlY3Rvci5PdXRwdXRTdHJlYW19CiAgICAgICovCiAgICAgdGhpcy5fcmVjZWl2ZXIgPSBudWxs
OwogICAgIC8qKgpAQCAtODU3LDYgKzg1Nyw4IEBAIFdlYkluc3BlY3Rvci5IZWFwUHJvZmlsZUhl
YWRlci5wcm90b3R5cGUgPSB7CiAgICAgICAgIH0KIAogICAgICAgICB0aGlzLl9udW1iZXJPZkNo
dW5rcyA9IDA7CisgICAgICAgIHRoaXMuX3NhdmVkQ2h1bmtzID0gMDsKKyAgICAgICAgdGhpcy5f
c2F2aW5nVG9GaWxlID0gZmFsc2U7CiAgICAgICAgIGlmICghdGhpcy5fcmVjZWl2ZXIpIHsKICAg
ICAgICAgICAgIHRoaXMuX3NldHVwV29ya2VyKCk7CiAgICAgICAgICAgICB0aGlzLnNpZGViYXJF
bGVtZW50LnN1YnRpdGxlID0gV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJMb2FkaW5nXHUyMDI2Iik7
CkBAIC04ODksMTUgKzg5MSwyMiBAQCBXZWJJbnNwZWN0b3IuSGVhcFByb2ZpbGVIZWFkZXIucHJv
dG90eXBlID0gewogICAgIH0sCiAKICAgICAvKioKLSAgICAgKiBAcGFyYW0ge251bWJlcn0gc2F2
ZWRDaHVua3NDb3VudAorICAgICAqIEBwYXJhbSB7bnVtYmVyfSB2YWx1ZQorICAgICAqIEBwYXJh
bSB7bnVtYmVyfSBtYXhWYWx1ZQogICAgICAqLwotICAgIF9zYXZlU3RhdHVzVXBkYXRlOiBmdW5j
dGlvbihzYXZlZENodW5rc0NvdW50KQorICAgIF91cGRhdGVUcmFuc2ZlclByb2dyZXNzOiBmdW5j
dGlvbih2YWx1ZSwgbWF4VmFsdWUpCiAgICAgewotICAgICAgICBpZiAoc2F2ZWRDaHVua3NDb3Vu
dCA9PT0gdGhpcy5fdG90YWxOdW1iZXJPZkNodW5rcykgewotICAgICAgICAgICAgdGhpcy5zaWRl
YmFyRWxlbWVudC5zdWJ0aXRsZSA9IE51bWJlci5ieXRlc1RvU3RyaW5nKHRoaXMuX3NuYXBzaG90
UHJveHkudG90YWxTaXplKTsKLSAgICAgICAgICAgIHRoaXMuc2lkZWJhckVsZW1lbnQud2FpdCA9
IGZhbHNlOwotICAgICAgICB9IGVsc2UKLSAgICAgICAgICAgIHRoaXMuc2lkZWJhckVsZW1lbnQu
c3VidGl0bGUgPSBXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIlNhdmluZ1x1MjAyNiAlZFwlIiwgKHNh
dmVkQ2h1bmtzQ291bnQgKiAxMDAgLyB0aGlzLl90b3RhbE51bWJlck9mQ2h1bmtzKS50b0ZpeGVk
KDIpKTsKKyAgICAgICAgdmFyIHBlcmNlbnRWYWx1ZSA9ICgobWF4VmFsdWUgPyAodmFsdWUgLyBt
YXhWYWx1ZSkgOiAwKSAqIDEwMCkudG9GaXhlZCgyKTsKKyAgICAgICAgaWYgKHRoaXMuX3Nhdmlu
Z1RvRmlsZSkKKyAgICAgICAgICAgIHRoaXMuc2lkZWJhckVsZW1lbnQuc3VidGl0bGUgPSBXZWJJ
bnNwZWN0b3IuVUlTdHJpbmcoIlNhdmluZ1x1MjAyNiAlZFwlIiwgcGVyY2VudFZhbHVlKTsKKyAg
ICAgICAgZWxzZQorICAgICAgICAgICAgdGhpcy5zaWRlYmFyRWxlbWVudC5zdWJ0aXRsZSA9IFdl
Ykluc3BlY3Rvci5VSVN0cmluZygiTG9hZGluZ1x1MjAyNiAlZFwlIiwgcGVyY2VudFZhbHVlKTsK
KyAgICB9LAorCisgICAgX3VwZGF0ZVNuYXBzaG90U3RhdHVzOiBmdW5jdGlvbigpCisgICAgewor
ICAgICAgICB0aGlzLnNpZGViYXJFbGVtZW50LnN1YnRpdGxlID0gTnVtYmVyLmJ5dGVzVG9TdHJp
bmcodGhpcy5fc25hcHNob3RQcm94eS50b3RhbFNpemUpOworICAgICAgICB0aGlzLnNpZGViYXJF
bGVtZW50LndhaXQgPSBmYWxzZTsKICAgICB9LAogCiAgICAgLyoqCkBAIC05MDksMzEgKzkxOCwz
MiBAQCBXZWJJbnNwZWN0b3IuSGVhcFByb2ZpbGVIZWFkZXIucHJvdG90eXBlID0gewogICAgICAg
ICB0aGlzLl9yZWNlaXZlci53cml0ZShjaHVuaywgY2FsbGJhY2suYmluZCh0aGlzKSk7CiAgICAg
ICAgIGZ1bmN0aW9uIGNhbGxiYWNrKCkKICAgICAgICAgewotICAgICAgICAgICAgdGhpcy5fc2F2
ZVN0YXR1c1VwZGF0ZSgrK3RoaXMuX3NhdmVkQ2h1bmtzKTsKLSAgICAgICAgICAgIGlmICh0aGlz
Ll90b3RhbE51bWJlck9mQ2h1bmtzID09PSB0aGlzLl9zYXZlZENodW5rcykKLSAgICAgICAgICAg
ICAgICB0aGlzLl9zbmFwc2hvdFJlY2VpdmVkKG51bGwpOworICAgICAgICAgICAgdGhpcy5fdXBk
YXRlVHJhbnNmZXJQcm9ncmVzcygrK3RoaXMuX3NhdmVkQ2h1bmtzLCB0aGlzLl90b3RhbE51bWJl
ck9mQ2h1bmtzKTsKKyAgICAgICAgICAgIGlmICh0aGlzLl90b3RhbE51bWJlck9mQ2h1bmtzID09
PSB0aGlzLl9zYXZlZENodW5rcykgeworICAgICAgICAgICAgICAgIGlmICh0aGlzLl9zYXZpbmdU
b0ZpbGUpCisgICAgICAgICAgICAgICAgICAgIHRoaXMuX3VwZGF0ZVNuYXBzaG90U3RhdHVzKCk7
CisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICB0aGlzLnNpZGViYXJF
bGVtZW50LnN1YnRpdGxlID0gV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJQYXJzaW5nXHUyMDI2Iik7
CisKKyAgICAgICAgICAgICAgICB0aGlzLl9yZWNlaXZlci5jbG9zZSgpOworICAgICAgICAgICAg
fQogICAgICAgICB9CiAgICAgfSwKIAogICAgIF9zbmFwc2hvdFJlY2VpdmVkOiBmdW5jdGlvbihz
bmFwc2hvdFByb3h5KQogICAgIHsKLSAgICAgICAgdGhpcy5fcmVjZWl2ZXIuY2xvc2UoKTsKICAg
ICAgICAgdGhpcy5fcmVjZWl2ZXIgPSBudWxsOwogICAgICAgICBpZiAoc25hcHNob3RQcm94eSkK
ICAgICAgICAgICAgIHRoaXMuX3NuYXBzaG90UHJveHkgPSBzbmFwc2hvdFByb3h5OwotICAgICAg
ICB0aGlzLnNpZGViYXJFbGVtZW50LnN1YnRpdGxlID0gTnVtYmVyLmJ5dGVzVG9TdHJpbmcodGhp
cy5fc25hcHNob3RQcm94eS50b3RhbFNpemUpOwotICAgICAgICB0aGlzLnNpZGViYXJFbGVtZW50
LndhaXQgPSBmYWxzZTsKKyAgICAgICAgdGhpcy5fdXBkYXRlU25hcHNob3RTdGF0dXMoKTsKICAg
ICAgICAgdmFyIHdvcmtlciA9IC8qKiBAdHlwZSB7V2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFdv
cmtlcn0gKi8gdGhpcy5fc25hcHNob3RQcm94eS53b3JrZXI7CiAgICAgICAgIHRoaXMuaXNUZW1w
b3JhcnkgPSBmYWxzZTsKICAgICAgICAgd29ya2VyLnN0YXJ0Q2hlY2tpbmdGb3JMb25nUnVubmlu
Z0NhbGxzKCk7CiAgICAgfSwKIAotICAgIGZpbmlzaEhlYXBTbmFwc2hvdDogZnVuY3Rpb24odHJh
bnNmZXJGaW5pc2hlZCkKKyAgICBmaW5pc2hIZWFwU25hcHNob3Q6IGZ1bmN0aW9uKCkKICAgICB7
CiAgICAgICAgIHRoaXMuX3RvdGFsTnVtYmVyT2ZDaHVua3MgPSB0aGlzLl9udW1iZXJPZkNodW5r
czsKLSAgICAgICAgdGhpcy5zaWRlYmFyRWxlbWVudC5zdWJ0aXRsZSA9IFdlYkluc3BlY3Rvci5V
SVN0cmluZygiUGFyc2luZ1x1MjAyNiIpOwotICAgICAgICBpZiAoIXRyYW5zZmVyRmluaXNoZWQg
JiYgdGhpcy5fcmVjZWl2ZXIpCi0gICAgICAgICAgICB0aGlzLl9yZWNlaXZlci5jbG9zZSgpOwog
ICAgIH0sCiAKICAgICAvKioKQEAgLTk1NCw5ICs5NjQsMTAgQEAgV2ViSW5zcGVjdG9yLkhlYXBQ
cm9maWxlSGVhZGVyLnByb3RvdHlwZSA9IHsKICAgICAgICAgZnVuY3Rpb24gb25PcGVuKCkKICAg
ICAgICAgewogICAgICAgICAgICAgdGhpcy5fc2F2ZWRDaHVua3MgPSAwOwotICAgICAgICAgICAg
dGhpcy5fc2F2ZVN0YXR1c1VwZGF0ZSgwKTsKKyAgICAgICAgICAgIHRoaXMuX3VwZGF0ZVRyYW5z
ZmVyUHJvZ3Jlc3MoMCwgMCk7CiAgICAgICAgICAgICBQcm9maWxlckFnZW50LmdldFByb2ZpbGUo
dGhpcy5wcm9maWxlVHlwZSgpLmlkLCB0aGlzLnVpZCk7CiAgICAgICAgIH0KKyAgICAgICAgdGhp
cy5fc2F2aW5nVG9GaWxlID0gdHJ1ZTsKICAgICAgICAgdGhpcy5fZmlsZU5hbWUgPSB0aGlzLl9m
aWxlTmFtZSB8fCAiSGVhcC0iICsgbmV3IERhdGUoKS50b0lTTzg2MDFDb21wYWN0KCkgKyAiLmhl
YXBzbmFwc2hvdCI7CiAgICAgICAgIHRoaXMuX3JlY2VpdmVyID0gbmV3IFdlYkluc3BlY3Rvci5G
aWxlT3V0cHV0U3RyZWFtKCk7CiAgICAgICAgIHRoaXMuX3JlY2VpdmVyLm9wZW4odGhpcy5fZmls
ZU5hbWUsIG9uT3Blbi5iaW5kKHRoaXMpKTsKQEAgLTk4MSw2ICs5OTIsNyBAQCBXZWJJbnNwZWN0
b3IuSGVhcFByb2ZpbGVIZWFkZXIucHJvdG90eXBlID0gewogICAgICAgICB0aGlzLnNpZGViYXJF
bGVtZW50LndhaXQgPSB0cnVlOwogICAgICAgICB0aGlzLl9zZXR1cFdvcmtlcigpOwogICAgICAg
ICB0aGlzLl9udW1iZXJPZkNodW5rcyA9IDA7CisgICAgICAgIHRoaXMuX3NhdmluZ1RvRmlsZSA9
IGZhbHNlOwogCiAgICAgICAgIHZhciBkZWxlZ2F0ZSA9IG5ldyBXZWJJbnNwZWN0b3IuSGVhcFNu
YXBzaG90TG9hZEZyb21GaWxlRGVsZWdhdGUodGhpcyk7CiAgICAgICAgIHZhciBmaWxlUmVhZGVy
ID0gdGhpcy5fY3JlYXRlRmlsZVJlYWRlcihmaWxlLCBkZWxlZ2F0ZSk7CkBAIC0xMDE0LDEzICsx
MDI2LDEyIEBAIFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RMb2FkRnJvbUZpbGVEZWxlZ2F0ZS5w
cm90b3R5cGUgPSB7CiAgICAgICovCiAgICAgb25DaHVua1RyYW5zZmVycmVkOiBmdW5jdGlvbihy
ZWFkZXIpCiAgICAgewotICAgICAgICB0aGlzLl9zbmFwc2hvdEhlYWRlci5zaWRlYmFyRWxlbWVu
dC5zdWJ0aXRsZSA9IFdlYkluc3BlY3Rvci5VSVN0cmluZygKLSAgICAgICAgICAgICJMb2FkaW5n
XHUyMDI2ICVkJSIsIChyZWFkZXIubG9hZGVkU2l6ZSgpICogMTAwIC8gcmVhZGVyLmZpbGVTaXpl
KCkpLnRvRml4ZWQoMikpOworICAgICAgICB0aGlzLl9zbmFwc2hvdEhlYWRlci5fdXBkYXRlVHJh
bnNmZXJQcm9ncmVzcyhyZWFkZXIubG9hZGVkU2l6ZSgpLCByZWFkZXIuZmlsZVNpemUoKSk7CiAg
ICAgfSwKIAogICAgIG9uVHJhbnNmZXJGaW5pc2hlZDogZnVuY3Rpb24oKQogICAgIHsKLSAgICAg
ICAgdGhpcy5fc25hcHNob3RIZWFkZXIuZmluaXNoSGVhcFNuYXBzaG90KHRydWUpOworICAgICAg
ICB0aGlzLl9zbmFwc2hvdEhlYWRlci5maW5pc2hIZWFwU25hcHNob3QoKTsKICAgICB9LAogCiAg
ICAgLyoqCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1By
b2ZpbGVzUGFuZWwuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Byb2Zp
bGVzUGFuZWwuanMKaW5kZXggZDBkMjBhYTY5YWNlZGRlNmQ1NTlmMDcxZDhlNmZhMjQxNTJiMDVh
ZS4uZjk1YzU2NTRkYjU3ZDBiZTczMTFjM2UzZGYyNTEzNDVhMzMxMGYyMSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Qcm9maWxlc1BhbmVsLmpzCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvUHJvZmlsZXNQYW5lbC5qcwpAQCAt
NjcxLDcgKzY3MSw3IEBAIFdlYkluc3BlY3Rvci5Qcm9maWxlc1BhbmVsLnByb3RvdHlwZSA9IHsK
ICAgICAgICAgdmFyIHByb2ZpbGUgPSB0aGlzLl9wcm9maWxlc0lkTWFwW3RoaXMuX21ha2VLZXko
dWlkLCBXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90UHJvZmlsZVR5cGUuVHlwZUlkKV07CiAgICAg
ICAgIGlmICghcHJvZmlsZSkKICAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgcHJvZmlsZS5m
aW5pc2hIZWFwU25hcHNob3QoZmFsc2UpOworICAgICAgICBwcm9maWxlLmZpbmlzaEhlYXBTbmFw
c2hvdCgpOwogICAgIH0sCiAKICAgICAvKioK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>166618</attachid>
            <date>2012-10-01 23:42:04 -0700</date>
            <delta_ts>2012-10-03 02:49:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-97890-20121002104116.patch</filename>
            <type>text/plain</type>
            <size>10392</size>
            <attacher>eustas.bug</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTMwMTI1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTNlZTRiNTA3ZTcyOWZi
NDRiNzg5NjQzY2Q0N2IyOWIwZTJiYzM5Yi4uNzJjYjAzZDFiMmJjZTEzNWM5NTJlODhmNDlhYWFj
MDM4OTAyMTZlMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDEyLTEwLTAyICBFdWdl
bmUgS2x5dWNobmlrb3YgIDxldXN0YXMuYnVnQGdtYWlsLmNvbT4KKworICAgICAgICBXZWIgSW5z
cGVjdG9yOiBQcm9maWxlczogdGFraW5nIGhlYXAgc25hcHNob3QgY2F1c2VzIGVycm9yIG1lc3Nh
Z2UgaW4gY29uc29sZS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTk3ODkwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgQWN0dWFsIHByb2JsZW0gaXMgdGhhdCBwcm94eSBsb2FkZXIgaXMgY2xvc2VkIHR3aWNl
LgorCisgICAgICAgICJfc25hcHNob3RSZWNlaXZlZCIgc2hvdWxkIG5ldmVyIHRyeSB0byBjbG9z
ZSByZWNlaXZlciwKKyAgICAgICAgYmVjYXVzZSBpdCBpcyBhIGNhbGxiYWNrIGZpcmVkIGJ5IGNs
b3NlLgorCisgICAgICAgIEFsc28gbWlub3IgZ2xpdGNoZXMgZml4ZWQ6CisgICAgICAgICAtIHRh
a2luZyBzbmFwc2hvdCBzaG93cyAiTG9hZGluZy4uLiIgc3RhdHVzIGZpcnN0LAorICAgICAgICBh
bmQgdGhlbiAiU2F2aW5nIHh4eCUiOworICAgICAgICAgLSBhZnRlciBhbGwgY2h1bmtzIGFyZSBz
ZW50ICJQYXJzaW5nIiBzdGF0dXMgaXMgc2V0IGFuZAorICAgICAgICB0aGVuIGlzIHJlcGxhY2Vk
IHdpdGggIlNhdmluZyAxMDAlIjsKKyAgICAgICAgIC0gcmVtb3ZlZCBkZWFkIGNvZGUgaW4gcHJv
eHk7CisgICAgICAgICAtIHByb3h5IHdhcyBpZ25vcmluZyBjYWxsYmFjayBwYXJhbWV0ZXI7Cisg
ICAgICAgICAtICJMb2FkaW5nICVkXCUiIGlzIG5vdCBsb2NhbGl6ZWQuCisKKyAgICAgICAgKiBF
bmdsaXNoLmxwcm9qL2xvY2FsaXplZFN0cmluZ3MuanM6IEFkZGVkIG1pc3NpbmcgIkxvYWRpbmcg
JWQlIiBzdHJpbmcuCisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9IZWFwU25hcHNob3RQ
cm94eS5qczogUmVtb3ZlZCBkZWFkIGNvZGUuCisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNu
YXBzaG90TG9hZGVyUHJveHkpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdExv
YWRlclByb3h5LnByb3RvdHlwZS53cml0ZSk6IE1ha2UgdGhpcyBtZXRob2QKKyAgICAgICAgaW50
ZXJmYWNlLWNvbmZvcm1hbnQuCisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9IZWFwU25h
cHNob3RWaWV3LmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkhlYXBQcm9maWxlSGVhZGVyKTog
Rml4ZWQgdXBkYXRlLXN0YXR1cyBhbmQKKyAgICAgICAgZmluaXNoLXRyYW5zZmVyIGxvZ2ljLgor
CiAyMDEyLTEwLTAxICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CiAKICAgICAgICAg
VW5yZXZpZXdlZC4gRml4IEFTU0VSVCBpbnRyb2R1Y2VkIGluCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9FbmdsaXNoLmxwcm9qL2xvY2FsaXplZFN0cmluZ3MuanMgYi9Tb3VyY2UvV2ViQ29y
ZS9FbmdsaXNoLmxwcm9qL2xvY2FsaXplZFN0cmluZ3MuanMKaW5kZXggOGFjMDE1ZWJmNzliYTIz
N2Y0OGRiYmNmMDhkMTNkOTJmMzMzNjcwNy4uNDA0NWJiMDdkYjA5OTUxZDFlOTYxYmRkNjNkYTE4
OTFhM2JhY2FiNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRW5nbGlzaC5scHJvai9sb2Nh
bGl6ZWRTdHJpbmdzLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL0VuZ2xpc2gubHByb2ovbG9jYWxp
emVkU3RyaW5ncy5qcwpAQCAtNzA1LDYgKzcwNSw3IEBAIGxvY2FsaXplZFN0cmluZ3NbIjxSaWdo
dD4iXSA9ICI8UmlnaHQ+IjsKIGxvY2FsaXplZFN0cmluZ3NbIjxVcD4iXSA9ICI8VXA+IjsKIGxv
Y2FsaXplZFN0cmluZ3NbIjxEb3duPiJdID0gIjxEb3duPiI7CiBsb2NhbGl6ZWRTdHJpbmdzWyJF
dmVudHMiXSA9ICJFdmVudHMiOworbG9jYWxpemVkU3RyaW5nc1siTG9hZGluZ1x1MjAyNiAlZFwl
Il0gPSAiTG9hZGluZ1x1MjAyNiAlZFwlIjsKIGxvY2FsaXplZFN0cmluZ3NbIlNhdmluZ1x1MjAy
NiAlZFwlIl0gPSAiU2F2aW5nXHUyMDI2ICVkXCUiOwogbG9jYWxpemVkU3RyaW5nc1siT25seSBo
ZWFwIHNuYXBzaG90cyBmcm9tIGZpbGVzIHdpdGggZXh0ZW5zaW9uICcud2hzJyBjYW4gYmUgbG9h
ZGVkLiJdID0gIk9ubHkgaGVhcCBzbmFwc2hvdHMgZnJvbSBmaWxlcyB3aXRoIGV4dGVuc2lvbiAn
LndocycgY2FuIGJlIGxvYWRlZC4iOwogbG9jYWxpemVkU3RyaW5nc1siQ2FuJ3QgbG9hZCBwcm9m
aWxlIHdoZW4gb3RoZXIgcHJvZmlsZSBpcyByZWNvcmRpbmcuIl0gPSAiQ2FuJ3QgbG9hZCBwcm9m
aWxlIHdoZW4gb3RoZXIgcHJvZmlsZSBpcyByZWNvcmRpbmcuIjsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvSGVhcFNuYXBzaG90UHJveHkuanMgYi9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0hlYXBTbmFwc2hvdFByb3h5LmpzCmluZGV4
IDFiMjRiYTIwZjQ3YjA3MDA4NWUxZDA4YTk5ODMzOTRiMDRhYTI2NTIuLjkxOTc4Y2IzYjk1YTU3
Zjc4ZTk1MzViODkyZTcxMThlZTM3ZDRlMzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9mcm9udC1lbmQvSGVhcFNuYXBzaG90UHJveHkuanMKKysrIGIvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9IZWFwU25hcHNob3RQcm94eS5qcwpAQCAtMzYwLDIxICsz
NjAsMTAgQEAgV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFByb3h5T2JqZWN0LnByb3RvdHlwZSA9
IHsKIFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RMb2FkZXJQcm94eSA9IGZ1bmN0aW9uKHdvcmtl
ciwgb2JqZWN0SWQpCiB7CiAgICAgV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFByb3h5T2JqZWN0
LmNhbGwodGhpcywgd29ya2VyLCBvYmplY3RJZCk7Ci0gICAgdGhpcy5fc3RhcnRlZCA9IGZhbHNl
OwogICAgIHRoaXMuX3BlbmRpbmdTbmFwc2hvdENvbnN1bWVycyA9IFtdOwogfQogCiBXZWJJbnNw
ZWN0b3IuSGVhcFNuYXBzaG90TG9hZGVyUHJveHkucHJvdG90eXBlID0gewotICAgIHN0YXJ0VHJh
bnNmZXI6IGZ1bmN0aW9uKCkKLSAgICB7Ci0gICAgICAgIHRoaXMuX3N0YXJ0ZWQgPSB0cnVlOwot
ICAgIH0sCi0KLSAgICBpc1N0YXJ0ZWQ6IGZ1bmN0aW9uKCkKLSAgICB7Ci0gICAgICAgIHJldHVy
biB0aGlzLl9zdGFydGVkOwotICAgIH0sCi0KICAgICAvKioKICAgICAgKiBAcGFyYW0ge2Z1bmN0
aW9uKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RQcm94eSl9IGNhbGxiYWNrCiAgICAgICovCkBA
IC0zODUsMTAgKzM3NCwxMSBAQCBXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90TG9hZGVyUHJveHku
cHJvdG90eXBlID0gewogCiAgICAgLyoqCiAgICAgICogQHBhcmFtIHtzdHJpbmd9IGNodW5rCisg
ICAgICogQHBhcmFtIHtmdW5jdGlvbihXZWJJbnNwZWN0b3IuT3V0cHV0U3RyZWFtKT19IGNhbGxi
YWNrCiAgICAgICovCi0gICAgd3JpdGU6IGZ1bmN0aW9uKGNodW5rKQorICAgIHdyaXRlOiBmdW5j
dGlvbihjaHVuaywgY2FsbGJhY2spCiAgICAgewotICAgICAgICB0aGlzLmNhbGxNZXRob2QobnVs
bCwgIndyaXRlIiwgY2h1bmspOworICAgICAgICB0aGlzLmNhbGxNZXRob2QoY2FsbGJhY2ssICJ3
cml0ZSIsIGNodW5rKTsKICAgICB9LAogCiAgICAgY2xvc2U6IGZ1bmN0aW9uKCkKQEAgLTQwNiw4
ICszOTYsNiBAQCBXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90TG9hZGVyUHJveHkucHJvdG90eXBl
ID0gewogICAgICAgICB7CiAgICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHRoaXMuX3Bl
bmRpbmdTbmFwc2hvdENvbnN1bWVycy5sZW5ndGg7ICsraSkKICAgICAgICAgICAgICAgICB0aGlz
Ll9wZW5kaW5nU25hcHNob3RDb25zdW1lcnNbaV0oc25hcHNob3RQcm94eSk7Ci0KLSAgICAgICAg
ICAgIHRoaXMuX3N0YXJ0ZWQgPSBmYWxzZTsKICAgICAgICAgICAgIHRoaXMuX3BlbmRpbmdTbmFw
c2hvdENvbnN1bWVycyA9IFtdOwogICAgICAgICB9CiAgICAgICAgIHRoaXMuY2FsbE1ldGhvZChi
dWlsZFNuYXBzaG90LmJpbmQodGhpcyksICJjbG9zZSIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9IZWFwU25hcHNob3RWaWV3LmpzIGIvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9IZWFwU25hcHNob3RWaWV3LmpzCmluZGV4IDI1OWJh
NzQ2NzNlMmExY2U5OWM5NjU2MGMxYzFhMGI5NTEwNWNmNzYuLjRkNWJlMDY5Mjk0NjdhMWZkNGI2
YmQxMDVhMGVkYzU0NmIxMTYxNmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9mcm9udC1lbmQvSGVhcFNuYXBzaG90Vmlldy5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNw
ZWN0b3IvZnJvbnQtZW5kL0hlYXBTbmFwc2hvdFZpZXcuanMKQEAgLTgxMiw3ICs4MTIsNyBAQCBX
ZWJJbnNwZWN0b3IuSGVhcFByb2ZpbGVIZWFkZXIgPSBmdW5jdGlvbih0eXBlLCB0aXRsZSwgdWlk
LCBtYXhKU09iamVjdElkKQogICAgIFdlYkluc3BlY3Rvci5Qcm9maWxlSGVhZGVyLmNhbGwodGhp
cywgdHlwZSwgdGl0bGUsIHVpZCk7CiAgICAgdGhpcy5tYXhKU09iamVjdElkID0gbWF4SlNPYmpl
Y3RJZDsKICAgICAvKioKLSAgICAgKiBAdHlwZSB7V2ViSW5zcGVjdG9yLkZpbGVPdXRwdXRTdHJl
YW19CisgICAgICogQHR5cGUge1dlYkluc3BlY3Rvci5PdXRwdXRTdHJlYW19CiAgICAgICovCiAg
ICAgdGhpcy5fcmVjZWl2ZXIgPSBudWxsOwogICAgIC8qKgpAQCAtODU3LDYgKzg1Nyw4IEBAIFdl
Ykluc3BlY3Rvci5IZWFwUHJvZmlsZUhlYWRlci5wcm90b3R5cGUgPSB7CiAgICAgICAgIH0KIAog
ICAgICAgICB0aGlzLl9udW1iZXJPZkNodW5rcyA9IDA7CisgICAgICAgIHRoaXMuX3NhdmVkQ2h1
bmtzID0gMDsKKyAgICAgICAgdGhpcy5fc2F2aW5nVG9GaWxlID0gZmFsc2U7CiAgICAgICAgIGlm
ICghdGhpcy5fcmVjZWl2ZXIpIHsKICAgICAgICAgICAgIHRoaXMuX3NldHVwV29ya2VyKCk7CiAg
ICAgICAgICAgICB0aGlzLnNpZGViYXJFbGVtZW50LnN1YnRpdGxlID0gV2ViSW5zcGVjdG9yLlVJ
U3RyaW5nKCJMb2FkaW5nXHUyMDI2Iik7CkBAIC04ODksMTUgKzg5MSwyMiBAQCBXZWJJbnNwZWN0
b3IuSGVhcFByb2ZpbGVIZWFkZXIucHJvdG90eXBlID0gewogICAgIH0sCiAKICAgICAvKioKLSAg
ICAgKiBAcGFyYW0ge251bWJlcn0gc2F2ZWRDaHVua3NDb3VudAorICAgICAqIEBwYXJhbSB7bnVt
YmVyfSB2YWx1ZQorICAgICAqIEBwYXJhbSB7bnVtYmVyfSBtYXhWYWx1ZQogICAgICAqLwotICAg
IF9zYXZlU3RhdHVzVXBkYXRlOiBmdW5jdGlvbihzYXZlZENodW5rc0NvdW50KQorICAgIF91cGRh
dGVUcmFuc2ZlclByb2dyZXNzOiBmdW5jdGlvbih2YWx1ZSwgbWF4VmFsdWUpCiAgICAgewotICAg
ICAgICBpZiAoc2F2ZWRDaHVua3NDb3VudCA9PT0gdGhpcy5fdG90YWxOdW1iZXJPZkNodW5rcykg
ewotICAgICAgICAgICAgdGhpcy5zaWRlYmFyRWxlbWVudC5zdWJ0aXRsZSA9IE51bWJlci5ieXRl
c1RvU3RyaW5nKHRoaXMuX3NuYXBzaG90UHJveHkudG90YWxTaXplKTsKLSAgICAgICAgICAgIHRo
aXMuc2lkZWJhckVsZW1lbnQud2FpdCA9IGZhbHNlOwotICAgICAgICB9IGVsc2UKLSAgICAgICAg
ICAgIHRoaXMuc2lkZWJhckVsZW1lbnQuc3VidGl0bGUgPSBXZWJJbnNwZWN0b3IuVUlTdHJpbmco
IlNhdmluZ1x1MjAyNiAlZFwlIiwgKHNhdmVkQ2h1bmtzQ291bnQgKiAxMDAgLyB0aGlzLl90b3Rh
bE51bWJlck9mQ2h1bmtzKS50b0ZpeGVkKDIpKTsKKyAgICAgICAgdmFyIHBlcmNlbnRWYWx1ZSA9
ICgobWF4VmFsdWUgPyAodmFsdWUgLyBtYXhWYWx1ZSkgOiAwKSAqIDEwMCkudG9GaXhlZCgyKTsK
KyAgICAgICAgaWYgKHRoaXMuX3NhdmluZ1RvRmlsZSkKKyAgICAgICAgICAgIHRoaXMuc2lkZWJh
ckVsZW1lbnQuc3VidGl0bGUgPSBXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIlNhdmluZ1x1MjAyNiAl
ZFwlIiwgcGVyY2VudFZhbHVlKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgdGhpcy5zaWRl
YmFyRWxlbWVudC5zdWJ0aXRsZSA9IFdlYkluc3BlY3Rvci5VSVN0cmluZygiTG9hZGluZ1x1MjAy
NiAlZFwlIiwgcGVyY2VudFZhbHVlKTsKKyAgICB9LAorCisgICAgX3VwZGF0ZVNuYXBzaG90U3Rh
dHVzOiBmdW5jdGlvbigpCisgICAgeworICAgICAgICB0aGlzLnNpZGViYXJFbGVtZW50LnN1YnRp
dGxlID0gTnVtYmVyLmJ5dGVzVG9TdHJpbmcodGhpcy5fc25hcHNob3RQcm94eS50b3RhbFNpemUp
OworICAgICAgICB0aGlzLnNpZGViYXJFbGVtZW50LndhaXQgPSBmYWxzZTsKICAgICB9LAogCiAg
ICAgLyoqCkBAIC05MDksMzEgKzkxOCwzMiBAQCBXZWJJbnNwZWN0b3IuSGVhcFByb2ZpbGVIZWFk
ZXIucHJvdG90eXBlID0gewogICAgICAgICB0aGlzLl9yZWNlaXZlci53cml0ZShjaHVuaywgY2Fs
bGJhY2suYmluZCh0aGlzKSk7CiAgICAgICAgIGZ1bmN0aW9uIGNhbGxiYWNrKCkKICAgICAgICAg
ewotICAgICAgICAgICAgdGhpcy5fc2F2ZVN0YXR1c1VwZGF0ZSgrK3RoaXMuX3NhdmVkQ2h1bmtz
KTsKLSAgICAgICAgICAgIGlmICh0aGlzLl90b3RhbE51bWJlck9mQ2h1bmtzID09PSB0aGlzLl9z
YXZlZENodW5rcykKLSAgICAgICAgICAgICAgICB0aGlzLl9zbmFwc2hvdFJlY2VpdmVkKG51bGwp
OworICAgICAgICAgICAgdGhpcy5fdXBkYXRlVHJhbnNmZXJQcm9ncmVzcygrK3RoaXMuX3NhdmVk
Q2h1bmtzLCB0aGlzLl90b3RhbE51bWJlck9mQ2h1bmtzKTsKKyAgICAgICAgICAgIGlmICh0aGlz
Ll90b3RhbE51bWJlck9mQ2h1bmtzID09PSB0aGlzLl9zYXZlZENodW5rcykgeworICAgICAgICAg
ICAgICAgIGlmICh0aGlzLl9zYXZpbmdUb0ZpbGUpCisgICAgICAgICAgICAgICAgICAgIHRoaXMu
X3VwZGF0ZVNuYXBzaG90U3RhdHVzKCk7CisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAg
ICAgICAgICAgICB0aGlzLnNpZGViYXJFbGVtZW50LnN1YnRpdGxlID0gV2ViSW5zcGVjdG9yLlVJ
U3RyaW5nKCJQYXJzaW5nXHUyMDI2Iik7CisKKyAgICAgICAgICAgICAgICB0aGlzLl9yZWNlaXZl
ci5jbG9zZSgpOworICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgfSwKIAogICAgIF9zbmFw
c2hvdFJlY2VpdmVkOiBmdW5jdGlvbihzbmFwc2hvdFByb3h5KQogICAgIHsKLSAgICAgICAgdGhp
cy5fcmVjZWl2ZXIuY2xvc2UoKTsKICAgICAgICAgdGhpcy5fcmVjZWl2ZXIgPSBudWxsOwogICAg
ICAgICBpZiAoc25hcHNob3RQcm94eSkKICAgICAgICAgICAgIHRoaXMuX3NuYXBzaG90UHJveHkg
PSBzbmFwc2hvdFByb3h5OwotICAgICAgICB0aGlzLnNpZGViYXJFbGVtZW50LnN1YnRpdGxlID0g
TnVtYmVyLmJ5dGVzVG9TdHJpbmcodGhpcy5fc25hcHNob3RQcm94eS50b3RhbFNpemUpOwotICAg
ICAgICB0aGlzLnNpZGViYXJFbGVtZW50LndhaXQgPSBmYWxzZTsKKyAgICAgICAgdGhpcy5fdXBk
YXRlU25hcHNob3RTdGF0dXMoKTsKICAgICAgICAgdmFyIHdvcmtlciA9IC8qKiBAdHlwZSB7V2Vi
SW5zcGVjdG9yLkhlYXBTbmFwc2hvdFdvcmtlcn0gKi8gdGhpcy5fc25hcHNob3RQcm94eS53b3Jr
ZXI7CiAgICAgICAgIHRoaXMuaXNUZW1wb3JhcnkgPSBmYWxzZTsKICAgICAgICAgd29ya2VyLnN0
YXJ0Q2hlY2tpbmdGb3JMb25nUnVubmluZ0NhbGxzKCk7CiAgICAgfSwKIAotICAgIGZpbmlzaEhl
YXBTbmFwc2hvdDogZnVuY3Rpb24odHJhbnNmZXJGaW5pc2hlZCkKKyAgICBmaW5pc2hIZWFwU25h
cHNob3Q6IGZ1bmN0aW9uKCkKICAgICB7CiAgICAgICAgIHRoaXMuX3RvdGFsTnVtYmVyT2ZDaHVu
a3MgPSB0aGlzLl9udW1iZXJPZkNodW5rczsKLSAgICAgICAgdGhpcy5zaWRlYmFyRWxlbWVudC5z
dWJ0aXRsZSA9IFdlYkluc3BlY3Rvci5VSVN0cmluZygiUGFyc2luZ1x1MjAyNiIpOwotICAgICAg
ICBpZiAoIXRyYW5zZmVyRmluaXNoZWQgJiYgdGhpcy5fcmVjZWl2ZXIpCi0gICAgICAgICAgICB0
aGlzLl9yZWNlaXZlci5jbG9zZSgpOwogICAgIH0sCiAKICAgICAvKioKQEAgLTk1NCw5ICs5NjQs
MTAgQEAgV2ViSW5zcGVjdG9yLkhlYXBQcm9maWxlSGVhZGVyLnByb3RvdHlwZSA9IHsKICAgICAg
ICAgZnVuY3Rpb24gb25PcGVuKCkKICAgICAgICAgewogICAgICAgICAgICAgdGhpcy5fc2F2ZWRD
aHVua3MgPSAwOwotICAgICAgICAgICAgdGhpcy5fc2F2ZVN0YXR1c1VwZGF0ZSgwKTsKKyAgICAg
ICAgICAgIHRoaXMuX3VwZGF0ZVRyYW5zZmVyUHJvZ3Jlc3MoMCwgdGhpcy5fdG90YWxOdW1iZXJP
ZkNodW5rcyk7CiAgICAgICAgICAgICBQcm9maWxlckFnZW50LmdldFByb2ZpbGUodGhpcy5wcm9m
aWxlVHlwZSgpLmlkLCB0aGlzLnVpZCk7CiAgICAgICAgIH0KKyAgICAgICAgdGhpcy5fc2F2aW5n
VG9GaWxlID0gdHJ1ZTsKICAgICAgICAgdGhpcy5fZmlsZU5hbWUgPSB0aGlzLl9maWxlTmFtZSB8
fCAiSGVhcC0iICsgbmV3IERhdGUoKS50b0lTTzg2MDFDb21wYWN0KCkgKyAiLmhlYXBzbmFwc2hv
dCI7CiAgICAgICAgIHRoaXMuX3JlY2VpdmVyID0gbmV3IFdlYkluc3BlY3Rvci5GaWxlT3V0cHV0
U3RyZWFtKCk7CiAgICAgICAgIHRoaXMuX3JlY2VpdmVyLm9wZW4odGhpcy5fZmlsZU5hbWUsIG9u
T3Blbi5iaW5kKHRoaXMpKTsKQEAgLTk4MSw2ICs5OTIsNyBAQCBXZWJJbnNwZWN0b3IuSGVhcFBy
b2ZpbGVIZWFkZXIucHJvdG90eXBlID0gewogICAgICAgICB0aGlzLnNpZGViYXJFbGVtZW50Lndh
aXQgPSB0cnVlOwogICAgICAgICB0aGlzLl9zZXR1cFdvcmtlcigpOwogICAgICAgICB0aGlzLl9u
dW1iZXJPZkNodW5rcyA9IDA7CisgICAgICAgIHRoaXMuX3NhdmluZ1RvRmlsZSA9IGZhbHNlOwog
CiAgICAgICAgIHZhciBkZWxlZ2F0ZSA9IG5ldyBXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90TG9h
ZEZyb21GaWxlRGVsZWdhdGUodGhpcyk7CiAgICAgICAgIHZhciBmaWxlUmVhZGVyID0gdGhpcy5f
Y3JlYXRlRmlsZVJlYWRlcihmaWxlLCBkZWxlZ2F0ZSk7CkBAIC0xMDE0LDEzICsxMDI2LDEyIEBA
IFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RMb2FkRnJvbUZpbGVEZWxlZ2F0ZS5wcm90b3R5cGUg
PSB7CiAgICAgICovCiAgICAgb25DaHVua1RyYW5zZmVycmVkOiBmdW5jdGlvbihyZWFkZXIpCiAg
ICAgewotICAgICAgICB0aGlzLl9zbmFwc2hvdEhlYWRlci5zaWRlYmFyRWxlbWVudC5zdWJ0aXRs
ZSA9IFdlYkluc3BlY3Rvci5VSVN0cmluZygKLSAgICAgICAgICAgICJMb2FkaW5nXHUyMDI2ICVk
JSIsIChyZWFkZXIubG9hZGVkU2l6ZSgpICogMTAwIC8gcmVhZGVyLmZpbGVTaXplKCkpLnRvRml4
ZWQoMikpOworICAgICAgICB0aGlzLl9zbmFwc2hvdEhlYWRlci5fdXBkYXRlVHJhbnNmZXJQcm9n
cmVzcyhyZWFkZXIubG9hZGVkU2l6ZSgpLCByZWFkZXIuZmlsZVNpemUoKSk7CiAgICAgfSwKIAog
ICAgIG9uVHJhbnNmZXJGaW5pc2hlZDogZnVuY3Rpb24oKQogICAgIHsKLSAgICAgICAgdGhpcy5f
c25hcHNob3RIZWFkZXIuZmluaXNoSGVhcFNuYXBzaG90KHRydWUpOworICAgICAgICB0aGlzLl9z
bmFwc2hvdEhlYWRlci5maW5pc2hIZWFwU25hcHNob3QoKTsKICAgICB9LAogCiAgICAgLyoqCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Byb2ZpbGVzUGFu
ZWwuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Byb2ZpbGVzUGFuZWwu
anMKaW5kZXggZDBkMjBhYTY5YWNlZGRlNmQ1NTlmMDcxZDhlNmZhMjQxNTJiMDVhZS4uZjk1YzU2
NTRkYjU3ZDBiZTczMTFjM2UzZGYyNTEzNDVhMzMxMGYyMSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Qcm9maWxlc1BhbmVsLmpzCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvUHJvZmlsZXNQYW5lbC5qcwpAQCAtNjcxLDcgKzY3
MSw3IEBAIFdlYkluc3BlY3Rvci5Qcm9maWxlc1BhbmVsLnByb3RvdHlwZSA9IHsKICAgICAgICAg
dmFyIHByb2ZpbGUgPSB0aGlzLl9wcm9maWxlc0lkTWFwW3RoaXMuX21ha2VLZXkodWlkLCBXZWJJ
bnNwZWN0b3IuSGVhcFNuYXBzaG90UHJvZmlsZVR5cGUuVHlwZUlkKV07CiAgICAgICAgIGlmICgh
cHJvZmlsZSkKICAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgcHJvZmlsZS5maW5pc2hIZWFw
U25hcHNob3QoZmFsc2UpOworICAgICAgICBwcm9maWxlLmZpbmlzaEhlYXBTbmFwc2hvdCgpOwog
ICAgIH0sCiAKICAgICAvKioK
</data>

          </attachment>
      

    </bug>

</bugzilla>