<?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>70839</bug_id>
          
          <creation_ts>2011-10-25 12:34:18 -0700</creation_ts>
          <short_desc>fix sizing of auto sized flexbox</short_desc>
          <delta_ts>2011-10-27 13:30:29 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>62048</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Tony Chang">tony</reporter>
          <assigned_to name="Tony Chang">tony</assigned_to>
          <cc>hyatt</cc>
    
    <cc>japhet</cc>
    
    <cc>ojan</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>490241</commentid>
    <comment_count>0</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2011-10-25 12:34:18 -0700</bug_when>
    <thetext>fix sizing of auto sized flexbox</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>490242</commentid>
    <comment_count>1</comment_count>
      <attachid>112375</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2011-10-25 12:34:40 -0700</bug_when>
    <thetext>Created attachment 112375
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>490244</commentid>
    <comment_count>2</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2011-10-25 12:35:24 -0700</bug_when>
    <thetext>This patch needs more tests.  I&apos;m uploading it so Ojan can try it out a bit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>491082</commentid>
    <comment_count>3</comment_count>
      <attachid>112574</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2011-10-26 12:10:11 -0700</bug_when>
    <thetext>Created attachment 112574
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>491088</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-10-26 12:11:59 -0700</bug_when>
    <thetext>Attachment 112574 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;LayoutTests/ChangeLog&apos;, u&apos;LayoutTests/css2...&quot; exit_code: 1

Source/WebCore/rendering/RenderImage.cpp:481:  A case label should not be indented, but line up with its switch statement.  [whitespace/indent] [4]
Source/WebCore/rendering/RenderImage.cpp:500:  A case label should not be indented, but line up with its switch statement.  [whitespace/indent] [4]
Source/WebCore/rendering/svg/RenderSVGRoot.cpp:273:  Should have only a single space after a punctuation in a comment.  [whitespace/comments] [5]
Total errors found: 3 in 49 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>491099</commentid>
    <comment_count>5</comment_count>
      <attachid>112574</attachid>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2011-10-26 12:26:48 -0700</bug_when>
    <thetext>Comment on attachment 112574
Patch

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

Code changes look good to me. Just a couple nits.

&gt; Source/WebCore/rendering/RenderFlexibleBox.cpp:709
&gt;          if (hasPackingSpace(availableFreeSpace, totalPositiveFlexibility) &amp;&amp; style()-&gt;flexPack() == PackJustify &amp;&amp; childSizes.size() &gt; 1)
&gt;              startEdge += availableFreeSpace / (childSizes.size() - 1);
&gt;      }
&gt; +    if (isColumnFlow() &amp;&amp; flowAwareLogicalWidthLength().isAuto())
&gt; +        setFlowAwareLogicalWidth(startEdge);

Maybe add a flex-pack test case to ensure that the last addition of &quot;availableFreeSpace / (childSizes.size() - 1)&quot; gets the correct result?

&gt; LayoutTests/css3/flexbox/columns-auto-size.html:53
&gt; +&lt;body onload=&quot;checkFlexBoxen(); checkFlexBoxen(&apos;flexbox-vertical-rl&apos;)&quot;&gt;

I&apos;m not opposed to this change, but it doesn&apos;t seem necessary. Just make vertical-rl a separate classname and make the class of these boxes be &quot;flexbox vertical-rl&quot;. It&apos;s what we do in the other tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>491125</commentid>
    <comment_count>6</comment_count>
      <attachid>112581</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2011-10-26 13:13:11 -0700</bug_when>
    <thetext>Created attachment 112581
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>491128</commentid>
    <comment_count>7</comment_count>
      <attachid>112582</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2011-10-26 13:13:52 -0700</bug_when>
    <thetext>Created attachment 112582
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>491129</commentid>
    <comment_count>8</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2011-10-26 13:14:49 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; (From update of attachment 112574 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=112574&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/rendering/RenderFlexibleBox.cpp:709
&gt; &gt;          if (hasPackingSpace(availableFreeSpace, totalPositiveFlexibility) &amp;&amp; style()-&gt;flexPack() == PackJustify &amp;&amp; childSizes.size() &gt; 1)
&gt; &gt;              startEdge += availableFreeSpace / (childSizes.size() - 1);
&gt; &gt;      }
&gt; &gt; +    if (isColumnFlow() &amp;&amp; flowAwareLogicalWidthLength().isAuto())
&gt; &gt; +        setFlowAwareLogicalWidth(startEdge);
&gt; 
&gt; Maybe add a flex-pack test case to ensure that the last addition of &quot;availableFreeSpace / (childSizes.size() - 1)&quot; gets the correct result?

Done, although it&apos;s not that interesting because with an auto height, the available free space is always 0.

&gt; &gt; LayoutTests/css3/flexbox/columns-auto-size.html:53
&gt; &gt; +&lt;body onload=&quot;checkFlexBoxen(); checkFlexBoxen(&apos;flexbox-vertical-rl&apos;)&quot;&gt;
&gt; 
&gt; I&apos;m not opposed to this change, but it doesn&apos;t seem necessary. Just make vertical-rl a separate classname and make the class of these boxes be &quot;flexbox vertical-rl&quot;. It&apos;s what we do in the other tests.

Done (had to add a horizontal class, but that&apos;s not a big deal).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>491148</commentid>
    <comment_count>9</comment_count>
      <attachid>112582</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2011-10-26 13:34:13 -0700</bug_when>
    <thetext>Comment on attachment 112582
Patch

Minusing as per discussion in IRC. I think you need to back up and implement preferred widths.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>491154</commentid>
    <comment_count>10</comment_count>
      <attachid>112582</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2011-10-26 13:38:41 -0700</bug_when>
    <thetext>Comment on attachment 112582
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>491806</commentid>
    <comment_count>11</comment_count>
      <attachid>112727</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2011-10-27 12:15:14 -0700</bug_when>
    <thetext>Created attachment 112727
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>491819</commentid>
    <comment_count>12</comment_count>
      <attachid>112727</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2011-10-27 12:26:31 -0700</bug_when>
    <thetext>Comment on attachment 112727
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>491875</commentid>
    <comment_count>13</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2011-10-27 13:30:16 -0700</bug_when>
    <thetext>Committed r98628: &lt;http://trac.webkit.org/changeset/98628&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>112375</attachid>
            <date>2011-10-25 12:34:40 -0700</date>
            <delta_ts>2011-10-26 12:10:08 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-70839-20111025123444.patch</filename>
            <type>text/plain</type>
            <size>10507</size>
            <attacher name="Tony Chang">tony</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTgzNzYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAxNjMwNjY4OTQ5NTQwNzc0
YWFjOTkzYjIzN2U3MDFmODM1ODVmYzRhLi43OGMxNGM0ZGI1ZWQ0ZDgyYzNlMDdkZGFkOTQ0YWEz
MzZjM2QwMTllIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTEtMTAtMjUgIFRvbnkg
Q2hhbmcgIDx0b255QGNocm9taXVtLm9yZz4KKworICAgICAgICBmaXggc2l6aW5nIG9mIGF1dG8g
c2l6ZWQgZmxleGJveAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NzA4MzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBUZXN0czogY3NzMy9mbGV4Ym94L2NvbHVtbnMtYXV0by1zaXplLmh0bWwKKyAgICAgICAg
ICAgICAgIGNzczMvZmxleGJveC9mbGV4LWZsb3ctbWFyZ2lucy1hdXRvLXNpemUuaHRtbAorCisg
ICAgICAgICogcmVuZGVyaW5nL1JlbmRlckZsZXhpYmxlQm94LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OlJlbmRlckZsZXhpYmxlQm94OjpmbG93QXdhcmVMb2dpY2FsSGVpZ2h0TGVuZ3RoKToKKyAg
ICAgICAgKFdlYkNvcmU6OlJlbmRlckZsZXhpYmxlQm94OjpmbG93QXdhcmVMb2dpY2FsV2lkdGhM
ZW5ndGgpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyRmxleGlibGVCb3g6OmZsb3dBd2FyZUxv
Z2ljYWxXaWR0aExlbmd0aEZvckNoaWxkKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckZsZXhp
YmxlQm94OjpzZXRGbG93QXdhcmVMb2dpY2FsV2lkdGgpOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyRmxleGlibGVCb3g6OmxheW91dEFuZFBsYWNlQ2hpbGRyZW5JbmxpbmVEaXJlY3Rpb24pOgor
ICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJveC5oOgorCiAyMDExLTEwLTI1ICBD
aHJpcyBFdmFucyAgPGNldmFuc0Bnb29nbGUuY29tPgogCiAgICAgICAgIE1hbmFnZSB0aGUgQ1NT
IHByb3BlcnR5IGFycmF5IGxlbmd0aCBjb3JyZWN0bHkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJveC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyRmxleGlibGVCb3guY3BwCmluZGV4IDBiZjI5MjcwMGQ0NjliOTBmMjMwNWFj
YWJjZWQwYzdlOTQ0NTk1OTIuLjYyOGNlMWE5MTkwZDYzM2Q5YTAxZTQ5MDEyYTliMTYwMDkzYWJj
NTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJv
eC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckZsZXhpYmxlQm94LmNw
cApAQCAtMjI4LDE1ICsyMjgsMTkgQEAgYm9vbCBSZW5kZXJGbGV4aWJsZUJveDo6aXNMZWZ0VG9S
aWdodEZsb3coKSBjb25zdAogICAgIHJldHVybiBzdHlsZSgpLT5pc0xlZnRUb1JpZ2h0RGlyZWN0
aW9uKCk7CiB9CiAKLUxlbmd0aCBSZW5kZXJGbGV4aWJsZUJveDo6Zmxvd0F3YXJlTG9naWNhbFdp
ZHRoTGVuZ3RoRm9yQ2hpbGQoUmVuZGVyQm94KiBjaGlsZCkgY29uc3QKK0xlbmd0aCBSZW5kZXJG
bGV4aWJsZUJveDo6Zmxvd0F3YXJlTG9naWNhbEhlaWdodExlbmd0aCgpIGNvbnN0CiB7Ci0gICAg
cmV0dXJuIGlzSG9yaXpvbnRhbEZsb3coKSA/IGNoaWxkLT5zdHlsZSgpLT53aWR0aCgpIDogY2hp
bGQtPnN0eWxlKCktPmhlaWdodCgpOworICAgIHJldHVybiBpc0hvcml6b250YWxGbG93KCkgPyBz
dHlsZSgpLT5oZWlnaHQoKSA6IHN0eWxlKCktPndpZHRoKCk7CiB9CiAKLWJvb2wgUmVuZGVyRmxl
eGlibGVCb3g6OmlzRmxvd0F3YXJlTG9naWNhbEhlaWdodEF1dG8oKSBjb25zdAorTGVuZ3RoIFJl
bmRlckZsZXhpYmxlQm94OjpmbG93QXdhcmVMb2dpY2FsV2lkdGhMZW5ndGgoKSBjb25zdAogewot
ICAgIExlbmd0aCBoZWlnaHQgPSBpc0hvcml6b250YWxGbG93KCkgPyBzdHlsZSgpLT5oZWlnaHQo
KSA6IHN0eWxlKCktPndpZHRoKCk7Ci0gICAgcmV0dXJuIGhlaWdodC5pc0F1dG8oKTsKKyAgICBy
ZXR1cm4gaXNIb3Jpem9udGFsRmxvdygpID8gc3R5bGUoKS0+d2lkdGgoKSA6IHN0eWxlKCktPmhl
aWdodCgpOworfQorCitMZW5ndGggUmVuZGVyRmxleGlibGVCb3g6OmZsb3dBd2FyZUxvZ2ljYWxX
aWR0aExlbmd0aEZvckNoaWxkKFJlbmRlckJveCogY2hpbGQpIGNvbnN0Cit7CisgICAgcmV0dXJu
IGlzSG9yaXpvbnRhbEZsb3coKSA/IGNoaWxkLT5zdHlsZSgpLT53aWR0aCgpIDogY2hpbGQtPnN0
eWxlKCktPmhlaWdodCgpOwogfQogCiB2b2lkIFJlbmRlckZsZXhpYmxlQm94OjpzZXRGbG93QXdh
cmVMb2dpY2FsSGVpZ2h0KExheW91dFVuaXQgc2l6ZSkKQEAgLTI0Nyw2ICsyNTEsMTQgQEAgdm9p
ZCBSZW5kZXJGbGV4aWJsZUJveDo6c2V0Rmxvd0F3YXJlTG9naWNhbEhlaWdodChMYXlvdXRVbml0
IHNpemUpCiAgICAgICAgIHNldFdpZHRoKHNpemUpOwogfQogCit2b2lkIFJlbmRlckZsZXhpYmxl
Qm94OjpzZXRGbG93QXdhcmVMb2dpY2FsV2lkdGgoTGF5b3V0VW5pdCBzaXplKQoreworICAgIGlm
IChpc0hvcml6b250YWxGbG93KCkpCisgICAgICAgIHNldFdpZHRoKHNpemUpOworICAgIGVsc2UK
KyAgICAgICAgc2V0SGVpZ2h0KHNpemUpOworfQorCiBMYXlvdXRVbml0IFJlbmRlckZsZXhpYmxl
Qm94OjpmbG93QXdhcmVMb2dpY2FsSGVpZ2h0Rm9yQ2hpbGQoUmVuZGVyQm94KiBjaGlsZCkKIHsK
ICAgICByZXR1cm4gaXNIb3Jpem9udGFsRmxvdygpID8gY2hpbGQtPmhlaWdodCgpIDogY2hpbGQt
PndpZHRoKCk7CkBAIC02NTcsNyArNjY5LDcgQEAgdm9pZCBSZW5kZXJGbGV4aWJsZUJveDo6bGF5
b3V0QW5kUGxhY2VDaGlsZHJlbklubGluZURpcmVjdGlvbihGbGV4T3JkZXJJdGVyYXRvciYKIAog
ICAgIExheW91dFVuaXQgbG9naWNhbFRvcCA9IGZsb3dBd2FyZUJvcmRlckJlZm9yZSgpICsgZmxv
d0F3YXJlUGFkZGluZ0JlZm9yZSgpOwogICAgIExheW91dFVuaXQgdG90YWxMb2dpY2FsV2lkdGgg
PSBmbG93QXdhcmVMb2dpY2FsV2lkdGgoKTsKLSAgICBpZiAoaXNGbG93QXdhcmVMb2dpY2FsSGVp
Z2h0QXV0bygpKQorICAgIGlmIChmbG93QXdhcmVMb2dpY2FsSGVpZ2h0TGVuZ3RoKCkuaXNBdXRv
KCkpCiAgICAgICAgIHNldEZsb3dBd2FyZUxvZ2ljYWxIZWlnaHQoMCk7CiAgICAgTGF5b3V0VW5p
dCBtYXhBc2NlbnQgPSAwLCBtYXhEZXNjZW50ID0gMDsgLy8gVXNlZCB3aGVuIGZsZXgtYWxpZ246
IGJhc2VsaW5lLgogICAgIHNpemVfdCBpID0gMDsKQEAgLTY3NSw5ICs2ODcsOSBAQCB2b2lkIFJl
bmRlckZsZXhpYmxlQm94OjpsYXlvdXRBbmRQbGFjZUNoaWxkcmVuSW5saW5lRGlyZWN0aW9uKEZs
ZXhPcmRlckl0ZXJhdG9yJgogICAgICAgICAgICAgbWF4RGVzY2VudCA9IHN0ZDo6bWF4KG1heERl
c2NlbnQsIGRlc2NlbnQpOwogCiAgICAgICAgICAgICAvLyBGSVhNRTogYWRkIGZsb3dBd2FyZVNj
cm9sbGJhckxvZ2ljYWxIZWlnaHQuCi0gICAgICAgICAgICBpZiAoaXNGbG93QXdhcmVMb2dpY2Fs
SGVpZ2h0QXV0bygpKQorICAgICAgICAgICAgaWYgKGZsb3dBd2FyZUxvZ2ljYWxIZWlnaHRMZW5n
dGgoKS5pc0F1dG8oKSkKICAgICAgICAgICAgICAgICBzZXRGbG93QXdhcmVMb2dpY2FsSGVpZ2h0
KHN0ZDo6bWF4KGZsb3dBd2FyZUxvZ2ljYWxIZWlnaHQoKSwgZmxvd0F3YXJlQm9yZGVyQW5kUGFk
ZGluZ0xvZ2ljYWxIZWlnaHQoKSArIGZsb3dBd2FyZU1hcmdpbkxvZ2ljYWxIZWlnaHRGb3JDaGls
ZChjaGlsZCkgKyBtYXhBc2NlbnQgKyBtYXhEZXNjZW50ICsgc2Nyb2xsYmFyTG9naWNhbEhlaWdo
dCgpKSk7Ci0gICAgICAgIH0gZWxzZSBpZiAoaXNGbG93QXdhcmVMb2dpY2FsSGVpZ2h0QXV0bygp
KQorICAgICAgICB9IGVsc2UgaWYgKGZsb3dBd2FyZUxvZ2ljYWxIZWlnaHRMZW5ndGgoKS5pc0F1
dG8oKSkKICAgICAgICAgICAgIHNldEZsb3dBd2FyZUxvZ2ljYWxIZWlnaHQoc3RkOjptYXgoZmxv
d0F3YXJlTG9naWNhbEhlaWdodCgpLCBmbG93QXdhcmVCb3JkZXJBbmRQYWRkaW5nTG9naWNhbEhl
aWdodCgpICsgZmxvd0F3YXJlTWFyZ2luTG9naWNhbEhlaWdodEZvckNoaWxkKGNoaWxkKSArIGZs
b3dBd2FyZUxvZ2ljYWxIZWlnaHRGb3JDaGlsZChjaGlsZCkgKyBzY3JvbGxiYXJMb2dpY2FsSGVp
Z2h0KCkpKTsKIAogICAgICAgICBzdGFydEVkZ2UgKz0gZmxvd0F3YXJlTWFyZ2luU3RhcnRGb3JD
aGlsZChjaGlsZCk7CkBAIC02OTMsNiArNzA1LDggQEAgdm9pZCBSZW5kZXJGbGV4aWJsZUJveDo6
bGF5b3V0QW5kUGxhY2VDaGlsZHJlbklubGluZURpcmVjdGlvbihGbGV4T3JkZXJJdGVyYXRvciYK
ICAgICAgICAgaWYgKGhhc1BhY2tpbmdTcGFjZShhdmFpbGFibGVGcmVlU3BhY2UsIHRvdGFsUG9z
aXRpdmVGbGV4aWJpbGl0eSkgJiYgc3R5bGUoKS0+ZmxleFBhY2soKSA9PSBQYWNrSnVzdGlmeSAm
JiBjaGlsZFNpemVzLnNpemUoKSA+IDEpCiAgICAgICAgICAgICBzdGFydEVkZ2UgKz0gYXZhaWxh
YmxlRnJlZVNwYWNlIC8gKGNoaWxkU2l6ZXMuc2l6ZSgpIC0gMSk7CiAgICAgfQorICAgIGlmIChp
c0NvbHVtbkZsb3coKSAmJiBmbG93QXdhcmVMb2dpY2FsV2lkdGhMZW5ndGgoKS5pc0F1dG8oKSkK
KyAgICAgICAgc2V0Rmxvd0F3YXJlTG9naWNhbFdpZHRoKHN0YXJ0RWRnZSk7CiAKICAgICBhbGln
bkNoaWxkcmVuQmxvY2tEaXJlY3Rpb24oaXRlcmF0b3IsIG1heEFzY2VudCk7CiB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRmxleGlibGVCb3guaCBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJveC5oCmluZGV4IDRkYzE5NDE3OTIx
MjNhY2E0NTAxMWFjNTk3Mjk4NzEzMjEwZjMzODcuLmMxZTI5YWVmMTNhMTZiYTU2MDI5NTY1NTY4
MGM4MjAyZWM1MTdkNTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJGbGV4aWJsZUJveC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGbGV4
aWJsZUJveC5oCkBAIC01Nyw5ICs1NywxMSBAQCBwcml2YXRlOgogICAgIGJvb2wgaXNDb2x1bW5G
bG93KCkgY29uc3Q7CiAgICAgYm9vbCBpc0hvcml6b250YWxGbG93KCkgY29uc3Q7CiAgICAgYm9v
bCBpc0xlZnRUb1JpZ2h0RmxvdygpIGNvbnN0OwotICAgIGJvb2wgaXNGbG93QXdhcmVMb2dpY2Fs
SGVpZ2h0QXV0bygpIGNvbnN0OworICAgIExlbmd0aCBmbG93QXdhcmVMb2dpY2FsSGVpZ2h0TGVu
Z3RoKCkgY29uc3Q7CisgICAgTGVuZ3RoIGZsb3dBd2FyZUxvZ2ljYWxXaWR0aExlbmd0aCgpIGNv
bnN0OwogICAgIExlbmd0aCBmbG93QXdhcmVMb2dpY2FsV2lkdGhMZW5ndGhGb3JDaGlsZChSZW5k
ZXJCb3gqIGNoaWxkKSBjb25zdDsKICAgICB2b2lkIHNldEZsb3dBd2FyZUxvZ2ljYWxIZWlnaHQo
TGF5b3V0VW5pdCk7CisgICAgdm9pZCBzZXRGbG93QXdhcmVMb2dpY2FsV2lkdGgoTGF5b3V0VW5p
dCk7CiAgICAgTGF5b3V0VW5pdCBmbG93QXdhcmVMb2dpY2FsSGVpZ2h0Rm9yQ2hpbGQoUmVuZGVy
Qm94KiBjaGlsZCk7CiAgICAgTGF5b3V0VW5pdCBmbG93QXdhcmVMb2dpY2FsV2lkdGhGb3JDaGls
ZChSZW5kZXJCb3gqIGNoaWxkKTsKICAgICBMYXlvdXRVbml0IGZsb3dBd2FyZUxvZ2ljYWxIZWln
aHQoKSBjb25zdDsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRl
c3RzL0NoYW5nZUxvZwppbmRleCBhZmNhOWE2MWEzNjYwZDAwZDQyNWRhZDAwODViNzc3ZDdhM2Yy
YWQ4Li5iNWRjZTY1ZmIyYjkzMTMzMDAzMDI3OWIyYWM5NzQxY2ViNTJjMDk4IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTMgQEAKKzIwMTEtMTAtMjUgIFRvbnkgQ2hhbmcgIDx0b255QGNocm9taXVtLm9yZz4K
KworICAgICAgICBmaXggc2l6aW5nIG9mIGF1dG8gc2l6ZWQgZmxleGJveAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzA4MzkKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGNzczMvZmxleGJveC9jb2x1bW5z
LWF1dG8tc2l6ZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBjc3MzL2ZsZXhib3gvZmxleC1mbG93
LW1hcmdpbnMtYXV0by1zaXplLmh0bWw6IEFkZGVkLgorCiAyMDExLTEwLTI1ICBKdWxpZW4gQ2hh
ZmZyYWl4ICA8amNoYWZmcmFpeEB3ZWJraXQub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQgZ2Fy
ZGVuaW5nLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9mbGV4Ym94L2NvbHVtbnMtYXV0
by1zaXplLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZsZXhib3gvY29sdW1ucy1hdXRvLXNpemUu
aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi4yOWZlNTQzNGQ1ZTI1NWU1Njk2MDVlZGY5ZjQyMzNlNWJhNjA0MjA0
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9mbGV4Ym94L2NvbHVtbnMtYXV0
by1zaXplLmh0bWwKQEAgLTAsMCArMSw0MyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxz
dHlsZT4KK2JvZHkgeworICAgIG1hcmdpbjogMDsKK30KKy5mbGV4Ym94IHsKKyAgICB3aWR0aDog
NDAwcHg7CisgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4Ym94OworICAgIC13ZWJraXQtZmxleC1m
bG93OiBjb2x1bW47CisgICAgYmFja2dyb3VuZC1jb2xvcjogI2FhYTsKKyAgICBwb3NpdGlvbjog
cmVsYXRpdmU7CisgICAgb3V0bGluZQorfQorLmZsZXhib3ggZGl2IHsKKyAgICB3aWR0aDogMTAw
JTsKKyAgICBib3JkZXI6IDA7Cit9CisKKy5mbGV4Ym94ID4gOm50aC1jaGlsZCgxKSB7CisgICAg
YmFja2dyb3VuZC1jb2xvcjogYmx1ZTsKK30KKy5mbGV4Ym94ID4gOm50aC1jaGlsZCgyKSB7Cisg
ICAgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47Cit9CisuZmxleGJveCA+IDpudGgtY2hpbGQoMykg
eworICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDsKK30KKzwvc3R5bGU+Cis8c2NyaXB0PgoraWYg
KHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5k
dW1wQXNUZXh0KCk7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvZmxleGJveC5q
cyI+PC9zY3JpcHQ+Cis8Ym9keSBvbmxvYWQ9ImNoZWNrRmxleEJveGVuKCkiPgorPGRpdiBjbGFz
cz0iZmxleGJveCI+CisgIDxkaXYgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwMCIgZGF0YS1vZmZz
ZXQteT0iMCIgc3R5bGU9ImhlaWdodDogLXdlYmtpdC1mbGV4KDEgMCAxMDBweCkiPjwvZGl2Pgor
ICA8ZGl2IGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMDAiIGRhdGEtb2Zmc2V0LXk9IjEwMCIgc3R5
bGU9ImhlaWdodDogMTAwcHg7Ij48L2Rpdj4KKyAgPGRpdiBkYXRhLWV4cGVjdGVkLWhlaWdodD0i
MTAwIiBkYXRhLW9mZnNldC15PSIyMDAiPjxkaXYgc3R5bGU9ImhlaWdodDogMTAwcHgiPjwvZGl2
PjwvZGl2PgorPC9kaXY+CisKKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2NzczMvZmxleGJveC9mbGV4LWZsb3ctbWFyZ2lucy1hdXRvLXNpemUuaHRtbCBiL0xheW91
dFRlc3RzL2NzczMvZmxleGJveC9mbGV4LWZsb3ctbWFyZ2lucy1hdXRvLXNpemUuaHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi44ZmRjYTBkZGMxNzg3OGExNzdhYTA1YmM1MzAzMzQ5ZmUyODU2MGU2Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9mbGV4Ym94L2ZsZXgtZmxvdy1tYXJnaW5zLWF1
dG8tc2l6ZS5odG1sCkBAIC0wLDAgKzEsOTQgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8
c3R5bGU+CisuY29udGFpbmVyIHsKKyAgICBwb3NpdGlvbjogcmVsYXRpdmU7CisgICAgYmFja2dy
b3VuZC1jb2xvcjogcGluazsKKyAgICBvdXRsaW5lOiAxcHggc29saWQgYmxhY2s7CisgICAgZGlz
cGxheTogaW5saW5lLWJsb2NrOworfQorLmZsZXhib3ggeworICAgIGRpc3BsYXk6IC13ZWJraXQt
ZmxleGJveDsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmV5OworICAgIG1hcmdpbjogMTBweCAy
MHB4IDMwcHggNDBweDsKK30KKy50aXRsZSB7CisgICAgbWFyZ2luLXRvcDogMWVtOworfQorLmx0
ciB7CisgICAgZGlyZWN0aW9uOiBsdHI7Cit9CisucnRsIHsKKyAgICBkaXJlY3Rpb246IHJ0bDsK
K30KKy5ob3Jpem9udGFsLXRiIHsKKyAgICAtd2Via2l0LXdyaXRpbmctbW9kZTogaG9yaXpvbnRh
bC10YjsKK30KKy5ob3Jpem9udGFsLWJ0IHsKKyAgICAtd2Via2l0LXdyaXRpbmctbW9kZTogaG9y
aXpvbnRhbC1idDsKK30KKy52ZXJ0aWNhbC1ybCB7CisgICAgLXdlYmtpdC13cml0aW5nLW1vZGU6
IHZlcnRpY2FsLXJsOworfQorLnZlcnRpY2FsLWxyIHsKKyAgICAtd2Via2l0LXdyaXRpbmctbW9k
ZTogdmVydGljYWwtbHI7Cit9Cisucm93IHsKKyAgICAtd2Via2l0LWZsZXgtZmxvdzogcm93Owor
fQorLnJvdy1yZXZlcnNlIHsKKyAgICAtd2Via2l0LWZsZXgtZmxvdzogcm93LXJldmVyc2U7Cit9
CisuY29sdW1uIHsKKyAgICAtd2Via2l0LWZsZXgtZmxvdzogY29sdW1uOworfQorLmNvbHVtbi1y
ZXZlcnNlIHsKKyAgICAtd2Via2l0LWZsZXgtZmxvdzogY29sdW1uLXJldmVyc2U7Cit9CisuZmxl
eGJveCA+IGRpdiB7CisgICAgbWFyZ2luOiAxM3B4IDJweCAxN3B4IDhweDsKKyAgICBiYWNrZ3Jv
dW5kLWNvbG9yOiBibHVlOworfQorPC9zdHlsZT4KKzxzY3JpcHQ+CitpZiAod2luZG93LmxheW91
dFRlc3RDb250cm9sbGVyKQorICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsK
Kzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy9mbGV4Ym94LmpzIj48L3NjcmlwdD4K
Kzxib2R5IG9ubG9hZD0iY2hlY2tGbGV4Qm94ZW4oKSI+CisKKzxzY3JpcHQ+CisKK3ZhciB3cml0
aW5nTW9kZXMgPSBbJ2hvcml6b250YWwtdGInLCAnaG9yaXpvbnRhbC1idCcsICd2ZXJ0aWNhbC1s
cicsICd2ZXJ0aWNhbC1ybCddOworLy8gRklYTUU6IFRlc3Qgcm93LXJldmVyc2UgYW5kIGNvbHVt
bi1yZXZlcnNlLgordmFyIGZsZXhGbG93cyA9IFsncm93JywgJ2NvbHVtbiddOwordmFyIGRpcmVj
dGlvbnMgPSBbJ3J0bCcsICdsdHInXTsKKword3JpdGluZ01vZGVzLmZvckVhY2goZnVuY3Rpb24o
d3JpdGluZ01vZGUpIHsKKyAgICBmbGV4Rmxvd3MuZm9yRWFjaChmdW5jdGlvbihmbGV4Rmxvdykg
eworICAgICAgICBkaXJlY3Rpb25zLmZvckVhY2goZnVuY3Rpb24oZGlyZWN0aW9uKSB7CisgICAg
ICAgICAgICB2YXIgZmxleGJveENsYXNzTmFtZSA9IHdyaXRpbmdNb2RlICsgJyAnICsgZGlyZWN0
aW9uICsgJyAnICsgZmxleEZsb3c7CisgICAgICAgICAgICB2YXIgdGl0bGUgPSBkb2N1bWVudC5j
cmVhdGVFbGVtZW50KCdkaXYnKTsKKyAgICAgICAgICAgIHRpdGxlLmNsYXNzTmFtZSA9ICd0aXRs
ZSc7CisgICAgICAgICAgICB0aXRsZS5pbm5lckhUTUwgPSBmbGV4Ym94Q2xhc3NOYW1lOworICAg
ICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0aXRsZSk7CisKKyAgICAgICAgICAg
IHZhciBmbGV4Ym94RXhwZWN0YXRpb25zID0gJ2RhdGEtb2Zmc2V0LXg9IjQwIiBkYXRhLW9mZnNl
dC15PSIxMCInOworICAgICAgICAgICAgdmFyIGZsZXhJdGVtRXhwZWN0YXRpb25zID0gJ2RhdGEt
ZXhwZWN0ZWQtd2lkdGg9IjIwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMjAiIGRhdGEtb2Zmc2V0
LXg9IjQ4IiBkYXRhLW9mZnNldC15PSIyMyInOworCisgICAgICAgICAgICB2YXIgY29udGFpbmVy
ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7CisgICAgICAgICAgICBjb250YWluZXIu
Y2xhc3NOYW1lID0gJ2NvbnRhaW5lcic7CisgICAgICAgICAgICBjb250YWluZXIuc2V0QXR0cmli
dXRlKCdkYXRhLWV4cGVjdGVkLXdpZHRoJywgOTApOworICAgICAgICAgICAgY29udGFpbmVyLnNl
dEF0dHJpYnV0ZSgnZGF0YS1leHBlY3RlZC1oZWlnaHQnLCA5MCk7CisKKyAgICAgICAgICAgIGNv
bnRhaW5lci5pbm5lckhUTUwgPSAnPGRpdiBjbGFzcz0iZmxleGJveCAnICsgZmxleGJveENsYXNz
TmFtZSArICciICcgKyBmbGV4Ym94RXhwZWN0YXRpb25zICsgJz5cbicgKworICAgICAgICAgICAg
ICAgICc8ZGl2IHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEgMjBweCk7IGhlaWdodDogLXdl
YmtpdC1mbGV4KDEgMjBweCk7IiAnICsgZmxleEl0ZW1FeHBlY3RhdGlvbnMgKyAnPjwvZGl2Plxu
JyArCisgICAgICAgICAgICAnPC9kaXY+JzsKKworICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5h
cHBlbmRDaGlsZChjb250YWluZXIpOworICAgICAgICB9KQorICAgIH0pCit9KQorPC9zY3JpcHQ+
Cis8L2JvZHk+Cis8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>112574</attachid>
            <date>2011-10-26 12:10:11 -0700</date>
            <delta_ts>2011-10-26 13:13:07 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-70839-20111026121015.patch</filename>
            <type>text/plain</type>
            <size>18721</size>
            <attacher name="Tony Chang">tony</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTg0OTUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBmYzNmOTU2ZTlmOGYwMjcz
MWY3NjYyNjJhOThhMjY0MDAxMzE3YzFkLi41MTNiYzQyODllOWQwMDAwNTA1NTUyMDhhOGY1Y2Jh
MzMwMDVhNTExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTEtMTAtMjYgIFRvbnkg
Q2hhbmcgIDx0b255QGNocm9taXVtLm9yZz4KKworICAgICAgICBmaXggc2l6aW5nIG9mIGF1dG8g
c2l6ZWQgZmxleGJveAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NzA4MzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBDb3JyZWN0bHkgc2V0IHRoZSBoZWlnaHQgb2YgdGhlIGZsZXhib3ggd2hlbiB3ZSBoYXZl
IGEgY29sdW1uIGZsb3cKKyAgICAgICAgYW5kIHRoZSBoZWlnaHQgaXMgYXV0by4KKworICAgICAg
ICBUZXN0czogY3NzMy9mbGV4Ym94L2NvbHVtbnMtYXV0by1zaXplLmh0bWwKKyAgICAgICAgICAg
ICAgIGNzczMvZmxleGJveC9mbGV4LWZsb3ctbWFyZ2lucy1hdXRvLXNpemUuaHRtbAorCisgICAg
ICAgICogcmVuZGVyaW5nL1JlbmRlckZsZXhpYmxlQm94LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OlJlbmRlckZsZXhpYmxlQm94OjpmbG93QXdhcmVMb2dpY2FsSGVpZ2h0TGVuZ3RoKTogUmVwbGFj
ZXMgaXNGbG93QXdhcmVMb2dpY2FsSGVpZ2h0QXV0by4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
ckZsZXhpYmxlQm94OjpmbG93QXdhcmVMb2dpY2FsV2lkdGhMZW5ndGgpOgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyRmxleGlibGVCb3g6OnNldEZsb3dBd2FyZUxvZ2ljYWxXaWR0aCk6CisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJGbGV4aWJsZUJveDo6bGF5b3V0QW5kUGxhY2VDaGlsZHJlbklu
bGluZURpcmVjdGlvbik6IFRoZSBoZWlnaHQgaXMgd2hlcmUgdGhlIG5leHQgYm94IHdvdWxkIGhh
dmUgYmVlbiBwbGFjZWQuCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckZsZXhpYmxlQm94Lmg6
CisKIDIwMTEtMTAtMjYgIE1pY2hhZWwgU2Fib2ZmICA8bXNhYm9mZkBhcHBsZS5jb20+CiAKICAg
ICAgICAgSW5jcmVhc2UgU3RyaW5nSW1wbCBGbGFnIEJpdHMgZm9yIDggYml0IFN0cmluZ3MKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJveC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRmxleGlibGVCb3guY3BwCmluZGV4IDBi
ZjI5MjcwMGQ0NjliOTBmMjMwNWFjYWJjZWQwYzdlOTQ0NTk1OTIuLjYyOGNlMWE5MTkwZDYzM2Q5
YTAxZTQ5MDEyYTliMTYwMDkzYWJjNTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJGbGV4aWJsZUJveC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlckZsZXhpYmxlQm94LmNwcApAQCAtMjI4LDE1ICsyMjgsMTkgQEAgYm9vbCBSZW5kZXJG
bGV4aWJsZUJveDo6aXNMZWZ0VG9SaWdodEZsb3coKSBjb25zdAogICAgIHJldHVybiBzdHlsZSgp
LT5pc0xlZnRUb1JpZ2h0RGlyZWN0aW9uKCk7CiB9CiAKLUxlbmd0aCBSZW5kZXJGbGV4aWJsZUJv
eDo6Zmxvd0F3YXJlTG9naWNhbFdpZHRoTGVuZ3RoRm9yQ2hpbGQoUmVuZGVyQm94KiBjaGlsZCkg
Y29uc3QKK0xlbmd0aCBSZW5kZXJGbGV4aWJsZUJveDo6Zmxvd0F3YXJlTG9naWNhbEhlaWdodExl
bmd0aCgpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIGlzSG9yaXpvbnRhbEZsb3coKSA/IGNoaWxkLT5z
dHlsZSgpLT53aWR0aCgpIDogY2hpbGQtPnN0eWxlKCktPmhlaWdodCgpOworICAgIHJldHVybiBp
c0hvcml6b250YWxGbG93KCkgPyBzdHlsZSgpLT5oZWlnaHQoKSA6IHN0eWxlKCktPndpZHRoKCk7
CiB9CiAKLWJvb2wgUmVuZGVyRmxleGlibGVCb3g6OmlzRmxvd0F3YXJlTG9naWNhbEhlaWdodEF1
dG8oKSBjb25zdAorTGVuZ3RoIFJlbmRlckZsZXhpYmxlQm94OjpmbG93QXdhcmVMb2dpY2FsV2lk
dGhMZW5ndGgoKSBjb25zdAogewotICAgIExlbmd0aCBoZWlnaHQgPSBpc0hvcml6b250YWxGbG93
KCkgPyBzdHlsZSgpLT5oZWlnaHQoKSA6IHN0eWxlKCktPndpZHRoKCk7Ci0gICAgcmV0dXJuIGhl
aWdodC5pc0F1dG8oKTsKKyAgICByZXR1cm4gaXNIb3Jpem9udGFsRmxvdygpID8gc3R5bGUoKS0+
d2lkdGgoKSA6IHN0eWxlKCktPmhlaWdodCgpOworfQorCitMZW5ndGggUmVuZGVyRmxleGlibGVC
b3g6OmZsb3dBd2FyZUxvZ2ljYWxXaWR0aExlbmd0aEZvckNoaWxkKFJlbmRlckJveCogY2hpbGQp
IGNvbnN0Cit7CisgICAgcmV0dXJuIGlzSG9yaXpvbnRhbEZsb3coKSA/IGNoaWxkLT5zdHlsZSgp
LT53aWR0aCgpIDogY2hpbGQtPnN0eWxlKCktPmhlaWdodCgpOwogfQogCiB2b2lkIFJlbmRlckZs
ZXhpYmxlQm94OjpzZXRGbG93QXdhcmVMb2dpY2FsSGVpZ2h0KExheW91dFVuaXQgc2l6ZSkKQEAg
LTI0Nyw2ICsyNTEsMTQgQEAgdm9pZCBSZW5kZXJGbGV4aWJsZUJveDo6c2V0Rmxvd0F3YXJlTG9n
aWNhbEhlaWdodChMYXlvdXRVbml0IHNpemUpCiAgICAgICAgIHNldFdpZHRoKHNpemUpOwogfQog
Cit2b2lkIFJlbmRlckZsZXhpYmxlQm94OjpzZXRGbG93QXdhcmVMb2dpY2FsV2lkdGgoTGF5b3V0
VW5pdCBzaXplKQoreworICAgIGlmIChpc0hvcml6b250YWxGbG93KCkpCisgICAgICAgIHNldFdp
ZHRoKHNpemUpOworICAgIGVsc2UKKyAgICAgICAgc2V0SGVpZ2h0KHNpemUpOworfQorCiBMYXlv
dXRVbml0IFJlbmRlckZsZXhpYmxlQm94OjpmbG93QXdhcmVMb2dpY2FsSGVpZ2h0Rm9yQ2hpbGQo
UmVuZGVyQm94KiBjaGlsZCkKIHsKICAgICByZXR1cm4gaXNIb3Jpem9udGFsRmxvdygpID8gY2hp
bGQtPmhlaWdodCgpIDogY2hpbGQtPndpZHRoKCk7CkBAIC02NTcsNyArNjY5LDcgQEAgdm9pZCBS
ZW5kZXJGbGV4aWJsZUJveDo6bGF5b3V0QW5kUGxhY2VDaGlsZHJlbklubGluZURpcmVjdGlvbihG
bGV4T3JkZXJJdGVyYXRvciYKIAogICAgIExheW91dFVuaXQgbG9naWNhbFRvcCA9IGZsb3dBd2Fy
ZUJvcmRlckJlZm9yZSgpICsgZmxvd0F3YXJlUGFkZGluZ0JlZm9yZSgpOwogICAgIExheW91dFVu
aXQgdG90YWxMb2dpY2FsV2lkdGggPSBmbG93QXdhcmVMb2dpY2FsV2lkdGgoKTsKLSAgICBpZiAo
aXNGbG93QXdhcmVMb2dpY2FsSGVpZ2h0QXV0bygpKQorICAgIGlmIChmbG93QXdhcmVMb2dpY2Fs
SGVpZ2h0TGVuZ3RoKCkuaXNBdXRvKCkpCiAgICAgICAgIHNldEZsb3dBd2FyZUxvZ2ljYWxIZWln
aHQoMCk7CiAgICAgTGF5b3V0VW5pdCBtYXhBc2NlbnQgPSAwLCBtYXhEZXNjZW50ID0gMDsgLy8g
VXNlZCB3aGVuIGZsZXgtYWxpZ246IGJhc2VsaW5lLgogICAgIHNpemVfdCBpID0gMDsKQEAgLTY3
NSw5ICs2ODcsOSBAQCB2b2lkIFJlbmRlckZsZXhpYmxlQm94OjpsYXlvdXRBbmRQbGFjZUNoaWxk
cmVuSW5saW5lRGlyZWN0aW9uKEZsZXhPcmRlckl0ZXJhdG9yJgogICAgICAgICAgICAgbWF4RGVz
Y2VudCA9IHN0ZDo6bWF4KG1heERlc2NlbnQsIGRlc2NlbnQpOwogCiAgICAgICAgICAgICAvLyBG
SVhNRTogYWRkIGZsb3dBd2FyZVNjcm9sbGJhckxvZ2ljYWxIZWlnaHQuCi0gICAgICAgICAgICBp
ZiAoaXNGbG93QXdhcmVMb2dpY2FsSGVpZ2h0QXV0bygpKQorICAgICAgICAgICAgaWYgKGZsb3dB
d2FyZUxvZ2ljYWxIZWlnaHRMZW5ndGgoKS5pc0F1dG8oKSkKICAgICAgICAgICAgICAgICBzZXRG
bG93QXdhcmVMb2dpY2FsSGVpZ2h0KHN0ZDo6bWF4KGZsb3dBd2FyZUxvZ2ljYWxIZWlnaHQoKSwg
Zmxvd0F3YXJlQm9yZGVyQW5kUGFkZGluZ0xvZ2ljYWxIZWlnaHQoKSArIGZsb3dBd2FyZU1hcmdp
bkxvZ2ljYWxIZWlnaHRGb3JDaGlsZChjaGlsZCkgKyBtYXhBc2NlbnQgKyBtYXhEZXNjZW50ICsg
c2Nyb2xsYmFyTG9naWNhbEhlaWdodCgpKSk7Ci0gICAgICAgIH0gZWxzZSBpZiAoaXNGbG93QXdh
cmVMb2dpY2FsSGVpZ2h0QXV0bygpKQorICAgICAgICB9IGVsc2UgaWYgKGZsb3dBd2FyZUxvZ2lj
YWxIZWlnaHRMZW5ndGgoKS5pc0F1dG8oKSkKICAgICAgICAgICAgIHNldEZsb3dBd2FyZUxvZ2lj
YWxIZWlnaHQoc3RkOjptYXgoZmxvd0F3YXJlTG9naWNhbEhlaWdodCgpLCBmbG93QXdhcmVCb3Jk
ZXJBbmRQYWRkaW5nTG9naWNhbEhlaWdodCgpICsgZmxvd0F3YXJlTWFyZ2luTG9naWNhbEhlaWdo
dEZvckNoaWxkKGNoaWxkKSArIGZsb3dBd2FyZUxvZ2ljYWxIZWlnaHRGb3JDaGlsZChjaGlsZCkg
KyBzY3JvbGxiYXJMb2dpY2FsSGVpZ2h0KCkpKTsKIAogICAgICAgICBzdGFydEVkZ2UgKz0gZmxv
d0F3YXJlTWFyZ2luU3RhcnRGb3JDaGlsZChjaGlsZCk7CkBAIC02OTMsNiArNzA1LDggQEAgdm9p
ZCBSZW5kZXJGbGV4aWJsZUJveDo6bGF5b3V0QW5kUGxhY2VDaGlsZHJlbklubGluZURpcmVjdGlv
bihGbGV4T3JkZXJJdGVyYXRvciYKICAgICAgICAgaWYgKGhhc1BhY2tpbmdTcGFjZShhdmFpbGFi
bGVGcmVlU3BhY2UsIHRvdGFsUG9zaXRpdmVGbGV4aWJpbGl0eSkgJiYgc3R5bGUoKS0+ZmxleFBh
Y2soKSA9PSBQYWNrSnVzdGlmeSAmJiBjaGlsZFNpemVzLnNpemUoKSA+IDEpCiAgICAgICAgICAg
ICBzdGFydEVkZ2UgKz0gYXZhaWxhYmxlRnJlZVNwYWNlIC8gKGNoaWxkU2l6ZXMuc2l6ZSgpIC0g
MSk7CiAgICAgfQorICAgIGlmIChpc0NvbHVtbkZsb3coKSAmJiBmbG93QXdhcmVMb2dpY2FsV2lk
dGhMZW5ndGgoKS5pc0F1dG8oKSkKKyAgICAgICAgc2V0Rmxvd0F3YXJlTG9naWNhbFdpZHRoKHN0
YXJ0RWRnZSk7CiAKICAgICBhbGlnbkNoaWxkcmVuQmxvY2tEaXJlY3Rpb24oaXRlcmF0b3IsIG1h
eEFzY2VudCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
RmxleGlibGVCb3guaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJv
eC5oCmluZGV4IDRkYzE5NDE3OTIxMjNhY2E0NTAxMWFjNTk3Mjk4NzEzMjEwZjMzODcuLmMxZTI5
YWVmMTNhMTZiYTU2MDI5NTY1NTY4MGM4MjAyZWM1MTdkNTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJveC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJveC5oCkBAIC01Nyw5ICs1NywxMSBAQCBwcml2YXRl
OgogICAgIGJvb2wgaXNDb2x1bW5GbG93KCkgY29uc3Q7CiAgICAgYm9vbCBpc0hvcml6b250YWxG
bG93KCkgY29uc3Q7CiAgICAgYm9vbCBpc0xlZnRUb1JpZ2h0RmxvdygpIGNvbnN0OwotICAgIGJv
b2wgaXNGbG93QXdhcmVMb2dpY2FsSGVpZ2h0QXV0bygpIGNvbnN0OworICAgIExlbmd0aCBmbG93
QXdhcmVMb2dpY2FsSGVpZ2h0TGVuZ3RoKCkgY29uc3Q7CisgICAgTGVuZ3RoIGZsb3dBd2FyZUxv
Z2ljYWxXaWR0aExlbmd0aCgpIGNvbnN0OwogICAgIExlbmd0aCBmbG93QXdhcmVMb2dpY2FsV2lk
dGhMZW5ndGhGb3JDaGlsZChSZW5kZXJCb3gqIGNoaWxkKSBjb25zdDsKICAgICB2b2lkIHNldEZs
b3dBd2FyZUxvZ2ljYWxIZWlnaHQoTGF5b3V0VW5pdCk7CisgICAgdm9pZCBzZXRGbG93QXdhcmVM
b2dpY2FsV2lkdGgoTGF5b3V0VW5pdCk7CiAgICAgTGF5b3V0VW5pdCBmbG93QXdhcmVMb2dpY2Fs
SGVpZ2h0Rm9yQ2hpbGQoUmVuZGVyQm94KiBjaGlsZCk7CiAgICAgTGF5b3V0VW5pdCBmbG93QXdh
cmVMb2dpY2FsV2lkdGhGb3JDaGlsZChSZW5kZXJCb3gqIGNoaWxkKTsKICAgICBMYXlvdXRVbml0
IGZsb3dBd2FyZUxvZ2ljYWxIZWlnaHQoKSBjb25zdDsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA2M2RjMjdhYjcwOTZkNTRh
NTBhZjhlMDkwYWE5MThiYzZkMDEwYmUxLi41MWRmNzhhZWZiNThiYTc4ZjNhYWQyY2I4YTAyNDUx
OWY3MmJiMTdkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTEtMTAtMjYgIFRvbnkgQ2hhbmcg
IDx0b255QGNocm9taXVtLm9yZz4KKworICAgICAgICBmaXggc2l6aW5nIG9mIGF1dG8gc2l6ZWQg
ZmxleGJveAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NzA4MzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAq
IGNzczMvZmxleGJveC9jb2x1bW5zLWF1dG8tc2l6ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGNzczMvZmxleGJveC9jb2x1bW5zLWF1dG8tc2l6ZS5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiBjc3MzL2ZsZXhib3gvZmxleC1mbG93LW1hcmdpbnMtYXV0by1zaXplLWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogY3NzMy9mbGV4Ym94L2ZsZXgtZmxvdy1tYXJnaW5zLWF1dG8t
c2l6ZS5odG1sOiBBZGRlZC4KKyAgICAgICAgICAgIEEgYnVuY2ggb2YgdGhlc2UgY2FzZXMgZmFp
bCwgYnV0IHRoYXQncyBiZWNhdXNlIG9mIGJ1ZyA3MDc2OS4KKyAgICAgICAgKiBjc3MzL2ZsZXhi
b3gvcmVzb3VyY2VzL2ZsZXhib3guanM6CisgICAgICAgIChjaGVja0ZsZXhCb3hlbik6CisKIDIw
MTEtMTAtMjYgIERpbWl0cmkgR2xhemtvdiAgPGRnbGF6a292QGNocm9taXVtLm9yZz4KIAogICAg
ICAgICBSRUdSRVNTSU9OIChyOTQ4ODcpOiBTY3JvbGxpbmcgdGhlIEhUTUwgc3BlYyBpcyBtb3Jl
IGplcmt5IG5vdyB0aGFuIGl0IHdhcyAocmVncmVzc2lvbikKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2NzczMvZmxleGJveC9jb2x1bW5zLWF1dG8tc2l6ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9jc3MzL2ZsZXhib3gvY29sdW1ucy1hdXRvLXNpemUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjEzNzgxM2QwYTJiOTliZDU4NGMwMzBlMTRlYjExMDVlYTY0NzQzZTAKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9jc3MzL2ZsZXhib3gvY29sdW1ucy1hdXRvLXNpemUtZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorUEFTUworUEFTUworUEFTUworUEFTUworUEFTUwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9mbGV4Ym94L2NvbHVtbnMtYXV0by1zaXplLmh0bWwg
Yi9MYXlvdXRUZXN0cy9jc3MzL2ZsZXhib3gvY29sdW1ucy1hdXRvLXNpemUuaHRtbApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi42ZDgzMzM1NjIxOWM1ZjdiZjE3MmM1NjFmYjU2ZTBlNmMwZjAyODJiCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9mbGV4Ym94L2NvbHVtbnMtYXV0by1zaXplLmh0bWwK
QEAgLTAsMCArMSw4OSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxzdHlsZT4KK2JvZHkg
eworICAgIG1hcmdpbjogMDsKK30KKworLmZsZXhib3ggeworICAgIHdpZHRoOiA0MDBweDsKKyAg
ICBkaXNwbGF5OiAtd2Via2l0LWZsZXhib3g7CisgICAgLXdlYmtpdC1mbGV4LWZsb3c6IGNvbHVt
bjsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWFhOworICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsK
K30KKy5mbGV4Ym94IGRpdiB7CisgICAgd2lkdGg6IDEwMCU7Cit9CisKKy5mbGV4Ym94LXZlcnRp
Y2FsLXJsIHsKKyAgICAtd2Via2l0LXdyaXRpbmctbW9kZTogdmVydGljYWwtcmw7CisgICAgaGVp
Z2h0OiA1MHB4OworICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleGJveDsKKyAgICAtd2Via2l0LWZs
ZXgtZmxvdzogY29sdW1uOworICAgIGJhY2tncm91bmQtY29sb3I6ICNhYWE7CisgICAgcG9zaXRp
b246IHJlbGF0aXZlOworfQorLmZsZXhib3gtdmVydGljYWwtcmwgZGl2IHsKKyAgICBoZWlnaHQ6
IDEwMCU7CisgICAgYm9yZGVyOiAwOworfQorCisuZmxleGJveCA+IDpudGgtY2hpbGQoMSksIC5m
bGV4Ym94LXZlcnRpY2FsLXJsID4gOm50aC1jaGlsZCgxKSB7CisgICAgYmFja2dyb3VuZC1jb2xv
cjogYmx1ZTsKK30KKy5mbGV4Ym94ID4gOm50aC1jaGlsZCgyKSwgLmZsZXhib3gtdmVydGljYWwt
cmwgPiA6bnRoLWNoaWxkKDIpIHsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsKK30KKy5m
bGV4Ym94ID4gOm50aC1jaGlsZCgzKSwgLmZsZXhib3gtdmVydGljYWwtcmwgPiA6bnRoLWNoaWxk
KDMpIHsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7Cit9CisuZmxleGJveCA+IDpudGgtY2hp
bGQoNCksIC5mbGV4Ym94LXZlcnRpY2FsLXJsID4gOm50aC1jaGlsZCg0KSB7CisgICAgYmFja2dy
b3VuZC1jb2xvcjogb3JhbmdlOworfQorLmNoaWxkLWRpdiB7CisgICAgYmFja2dyb3VuZC1jb2xv
cjogeWVsbG93OworfQorPC9zdHlsZT4KKzxzY3JpcHQ+CitpZiAod2luZG93LmxheW91dFRlc3RD
b250cm9sbGVyKQorICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKzwvc2Ny
aXB0PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy9mbGV4Ym94LmpzIj48L3NjcmlwdD4KKzxib2R5
IG9ubG9hZD0iY2hlY2tGbGV4Qm94ZW4oKTsgY2hlY2tGbGV4Qm94ZW4oJ2ZsZXhib3gtdmVydGlj
YWwtcmwnKSI+Cis8ZGl2IGNsYXNzPSJmbGV4Ym94Ij4KKyAgPGRpdiBkYXRhLWV4cGVjdGVkLWhl
aWdodD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjAiIHN0eWxlPSJoZWlnaHQ6IC13ZWJraXQtZmxleCgx
IDAgMTBweCkiPjwvZGl2PgorICA8ZGl2IGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMCIgZGF0YS1v
ZmZzZXQteT0iMTAiIHN0eWxlPSJoZWlnaHQ6IDEwcHg7Ij48L2Rpdj4KKyAgPGRpdiBkYXRhLWV4
cGVjdGVkLWhlaWdodD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjIwIj48ZGl2IGRhdGEtZXhwZWN0ZWQt
aGVpZ2h0PSIxMCIgZGF0YS1vZmZzZXQteT0iMjAiIHN0eWxlPSJoZWlnaHQ6IDEwcHgiPjwvZGl2
PjwvZGl2PgorPC9kaXY+CisKKzwhLS0gVGhlIGxhc3QgZGl2IGlzIHNpemVkIHRvIDAgYmVjYXVz
ZSB0aGVyZSBpcyBubyBhdmFpbGFibGUgc3BhY2UsIGhvd2V2ZXIgaXRzIGNoaWxkIG92ZXJmbG93
cy4gLS0+Cis8ZGl2IGNsYXNzPSJmbGV4Ym94Ij4KKyAgPGRpdiBkYXRhLWV4cGVjdGVkLWhlaWdo
dD0iMCIgZGF0YS1vZmZzZXQteT0iMCIgc3R5bGU9ImhlaWdodDogLXdlYmtpdC1mbGV4KDEpIj48
L2Rpdj4KKyAgPGRpdiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjAi
IHN0eWxlPSJoZWlnaHQ6IDEwcHg7Ij48L2Rpdj4KKyAgPGRpdiBkYXRhLWV4cGVjdGVkLWhlaWdo
dD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjEwIiBzdHlsZT0iaGVpZ2h0OiAtd2Via2l0LWZsZXgoMSBh
dXRvKSI+PGRpdiBzdHlsZT0iaGVpZ2h0OiAxMHB4Ij48L2Rpdj48L2Rpdj4KKyAgPGRpdiBkYXRh
LWV4cGVjdGVkLWhlaWdodD0iMCIgZGF0YS1vZmZzZXQteT0iMjAiIHN0eWxlPSJoZWlnaHQ6IC13
ZWJraXQtZmxleCgxKSI+PGRpdiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiIGRhdGEtb2Zmc2V0
LXk9IjIwIiBjbGFzcz0iY2hpbGQtZGl2IiBzdHlsZT0iaGVpZ2h0OiAxMHB4Ij48L2Rpdj48L2Rp
dj4KKzwvZGl2PgorCis8ZGl2IGNsYXNzPSJmbGV4Ym94Ij4KKyAgPGRpdiBkYXRhLWV4cGVjdGVk
LWhlaWdodD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjEwIiBzdHlsZT0iaGVpZ2h0OiAtd2Via2l0LWZs
ZXgoMSAwIDEwcHgpOyBtYXJnaW4tdG9wOiAxMHB4OyI+PC9kaXY+CisgIDxkaXYgZGF0YS1leHBl
Y3RlZC1oZWlnaHQ9IjEwIiBkYXRhLW9mZnNldC15PSIyMCIgc3R5bGU9ImhlaWdodDogMTBweDsg
bWFyZ2luLWJvdHRvbTogMjBweDsiPjwvZGl2PgorICA8ZGl2IGRhdGEtZXhwZWN0ZWQtaGVpZ2h0
PSIyMCIgZGF0YS1vZmZzZXQteT0iNTAiIHN0eWxlPSJwYWRkaW5nLXRvcDogMTBweCI+PGRpdiBk
YXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjYwIiBzdHlsZT0iaGVpZ2h0
OiAxMHB4Ij48L2Rpdj48L2Rpdj4KKzwvZGl2PgorCis8ZGl2IGNsYXNzPSJmbGV4Ym94LXZlcnRp
Y2FsLXJsIj4KKyAgPGRpdiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMCIgZGF0YS1vZmZzZXQteD0i
MjAiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEgMCAxMHB4KSI+PC9kaXY+CisgIDxkaXYg
ZGF0YS1leHBlY3RlZC13aWR0aD0iMTAiIGRhdGEtb2Zmc2V0LXg9IjEwIiBzdHlsZT0id2lkdGg6
IDEwcHg7Ij48L2Rpdj4KKyAgPGRpdiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMCIgZGF0YS1vZmZz
ZXQteD0iMCI+PGRpdiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMCIgZGF0YS1vZmZzZXQteD0iMCIg
c3R5bGU9IndpZHRoOiAxMHB4Ij48L2Rpdj48L2Rpdj4KKzwvZGl2PgorCis8IS0tIFRoZSBmaXJz
dCBkaXYgb3ZlcmZsb3dzIHRvIHRoZSBsZWZ0LCBzbyBnaXZlIGl0IGEgbWFyZ2luLWxlZnQgc28g
d2UgY2FuIHNlZSBib3ggaXQgcGFpbnRzLiAtLT4KKzxkaXYgY2xhc3M9ImZsZXhib3gtdmVydGlj
YWwtcmwiIHN0eWxlPSJtYXJnaW4tbGVmdDogMTAwcHg7Ij4KKyAgPGRpdiBkYXRhLWV4cGVjdGVk
LXdpZHRoPSIwIiBkYXRhLW9mZnNldC14PSIyMCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgo
MSkiPjxkaXYgZGF0YS1leHBlY3RlZC13aWR0aD0iNTAiIGRhdGEtb2Zmc2V0LXg9Ii0zMCIgY2xh
c3M9ImNoaWxkLWRpdiIgc3R5bGU9IndpZHRoOiA1MHB4Ij48L2Rpdj48L2Rpdj4KKyAgPGRpdiBk
YXRhLWV4cGVjdGVkLXdpZHRoPSIwIiBkYXRhLW9mZnNldC14PSIyMCIgc3R5bGU9IndpZHRoOiAt
d2Via2l0LWZsZXgoMSkiPjwvZGl2PgorICA8ZGl2IGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwIiBk
YXRhLW9mZnNldC14PSIxMCIgc3R5bGU9IndpZHRoOiAxMHB4OyI+PC9kaXY+CisgIDxkaXYgZGF0
YS1leHBlY3RlZC13aWR0aD0iMTAiIGRhdGEtb2Zmc2V0LXg9IjAiIHN0eWxlPSJ3aWR0aDogLXdl
YmtpdC1mbGV4KDEgYXV0bykiPjxkaXYgc3R5bGU9IndpZHRoOiAxMHB4Ij48L2Rpdj48L2Rpdj4K
KzwvZGl2PgorCis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3Mz
L2ZsZXhib3gvZmxleC1mbG93LW1hcmdpbnMtYXV0by1zaXplLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2NzczMvZmxleGJveC9mbGV4LWZsb3ctbWFyZ2lucy1hdXRvLXNpemUtZXhwZWN0ZWQu
dHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjhkYTg2OGMwNzRiOWM1ZDFjYWI0NWVkMTQ2YTI3ZmM2NDM5MGU1ZDUK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jc3MzL2ZsZXhib3gvZmxleC1mbG93LW1h
cmdpbnMtYXV0by1zaXplLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDczIEBACitob3Jpem9udGFs
LXRiIHJ0bCByb3cKK1BBU1MKK2hvcml6b250YWwtdGIgbHRyIHJvdworUEFTUworaG9yaXpvbnRh
bC10YiBydGwgY29sdW1uCitQQVNTCitob3Jpem9udGFsLXRiIGx0ciBjb2x1bW4KK1BBU1MKK2hv
cml6b250YWwtYnQgcnRsIHJvdworUEFTUworaG9yaXpvbnRhbC1idCBsdHIgcm93CitQQVNTCito
b3Jpem9udGFsLWJ0IHJ0bCBjb2x1bW4KK1BBU1MKK2hvcml6b250YWwtYnQgbHRyIGNvbHVtbgor
UEFTUwordmVydGljYWwtbHIgcnRsIHJvdworRkFJTDoKK0V4cGVjdGVkIDkwIGZvciB3aWR0aCwg
YnV0IGdvdCA2MC4gCisKKzxkaXYgY2xhc3M9ImNvbnRhaW5lciIgZGF0YS1leHBlY3RlZC13aWR0
aD0iOTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI5MCI+PGRpdiBjbGFzcz0iZmxleGJveCB2ZXJ0
aWNhbC1sciBydGwgcm93IiBkYXRhLW9mZnNldC14PSI0MCIgZGF0YS1vZmZzZXQteT0iMTAiPgor
PGRpdiBzdHlsZT0id2lkdGg6IC13ZWJraXQtZmxleCgxIDIwcHgpOyBoZWlnaHQ6IC13ZWJraXQt
ZmxleCgxIDIwcHgpOyIgZGF0YS1leHBlY3RlZC13aWR0aD0iMjAiIGRhdGEtZXhwZWN0ZWQtaGVp
Z2h0PSIyMCIgZGF0YS1vZmZzZXQteD0iNDgiIGRhdGEtb2Zmc2V0LXk9IjIzIj48L2Rpdj4KKzwv
ZGl2PjwvZGl2PgordmVydGljYWwtbHIgbHRyIHJvdworRkFJTDoKK0V4cGVjdGVkIDkwIGZvciB3
aWR0aCwgYnV0IGdvdCA2MC4gCisKKzxkaXYgY2xhc3M9ImNvbnRhaW5lciIgZGF0YS1leHBlY3Rl
ZC13aWR0aD0iOTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI5MCI+PGRpdiBjbGFzcz0iZmxleGJv
eCB2ZXJ0aWNhbC1sciBsdHIgcm93IiBkYXRhLW9mZnNldC14PSI0MCIgZGF0YS1vZmZzZXQteT0i
MTAiPgorPGRpdiBzdHlsZT0id2lkdGg6IC13ZWJraXQtZmxleCgxIDIwcHgpOyBoZWlnaHQ6IC13
ZWJraXQtZmxleCgxIDIwcHgpOyIgZGF0YS1leHBlY3RlZC13aWR0aD0iMjAiIGRhdGEtZXhwZWN0
ZWQtaGVpZ2h0PSIyMCIgZGF0YS1vZmZzZXQteD0iNDgiIGRhdGEtb2Zmc2V0LXk9IjIzIj48L2Rp
dj4KKzwvZGl2PjwvZGl2PgordmVydGljYWwtbHIgcnRsIGNvbHVtbgorRkFJTDoKK0V4cGVjdGVk
IDkwIGZvciB3aWR0aCwgYnV0IGdvdCA2MC4gCisKKzxkaXYgY2xhc3M9ImNvbnRhaW5lciIgZGF0
YS1leHBlY3RlZC13aWR0aD0iOTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI5MCI+PGRpdiBjbGFz
cz0iZmxleGJveCB2ZXJ0aWNhbC1sciBydGwgY29sdW1uIiBkYXRhLW9mZnNldC14PSI0MCIgZGF0
YS1vZmZzZXQteT0iMTAiPgorPGRpdiBzdHlsZT0id2lkdGg6IC13ZWJraXQtZmxleCgxIDIwcHgp
OyBoZWlnaHQ6IC13ZWJraXQtZmxleCgxIDIwcHgpOyIgZGF0YS1leHBlY3RlZC13aWR0aD0iMjAi
IGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIyMCIgZGF0YS1vZmZzZXQteD0iNDgiIGRhdGEtb2Zmc2V0
LXk9IjIzIj48L2Rpdj4KKzwvZGl2PjwvZGl2PgordmVydGljYWwtbHIgbHRyIGNvbHVtbgorRkFJ
TDoKK0V4cGVjdGVkIDkwIGZvciB3aWR0aCwgYnV0IGdvdCA2MC4gCisKKzxkaXYgY2xhc3M9ImNv
bnRhaW5lciIgZGF0YS1leHBlY3RlZC13aWR0aD0iOTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI5
MCI+PGRpdiBjbGFzcz0iZmxleGJveCB2ZXJ0aWNhbC1sciBsdHIgY29sdW1uIiBkYXRhLW9mZnNl
dC14PSI0MCIgZGF0YS1vZmZzZXQteT0iMTAiPgorPGRpdiBzdHlsZT0id2lkdGg6IC13ZWJraXQt
ZmxleCgxIDIwcHgpOyBoZWlnaHQ6IC13ZWJraXQtZmxleCgxIDIwcHgpOyIgZGF0YS1leHBlY3Rl
ZC13aWR0aD0iMjAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIyMCIgZGF0YS1vZmZzZXQteD0iNDgi
IGRhdGEtb2Zmc2V0LXk9IjIzIj48L2Rpdj4KKzwvZGl2PjwvZGl2PgordmVydGljYWwtcmwgcnRs
IHJvdworRkFJTDoKK0V4cGVjdGVkIDkwIGZvciB3aWR0aCwgYnV0IGdvdCA2MC4gCisKKzxkaXYg
Y2xhc3M9ImNvbnRhaW5lciIgZGF0YS1leHBlY3RlZC13aWR0aD0iOTAiIGRhdGEtZXhwZWN0ZWQt
aGVpZ2h0PSI5MCI+PGRpdiBjbGFzcz0iZmxleGJveCB2ZXJ0aWNhbC1ybCBydGwgcm93IiBkYXRh
LW9mZnNldC14PSI0MCIgZGF0YS1vZmZzZXQteT0iMTAiPgorPGRpdiBzdHlsZT0id2lkdGg6IC13
ZWJraXQtZmxleCgxIDIwcHgpOyBoZWlnaHQ6IC13ZWJraXQtZmxleCgxIDIwcHgpOyIgZGF0YS1l
eHBlY3RlZC13aWR0aD0iMjAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIyMCIgZGF0YS1vZmZzZXQt
eD0iNDgiIGRhdGEtb2Zmc2V0LXk9IjIzIj48L2Rpdj4KKzwvZGl2PjwvZGl2PgordmVydGljYWwt
cmwgbHRyIHJvdworRkFJTDoKK0V4cGVjdGVkIDkwIGZvciB3aWR0aCwgYnV0IGdvdCA2MC4gCisK
KzxkaXYgY2xhc3M9ImNvbnRhaW5lciIgZGF0YS1leHBlY3RlZC13aWR0aD0iOTAiIGRhdGEtZXhw
ZWN0ZWQtaGVpZ2h0PSI5MCI+PGRpdiBjbGFzcz0iZmxleGJveCB2ZXJ0aWNhbC1ybCBsdHIgcm93
IiBkYXRhLW9mZnNldC14PSI0MCIgZGF0YS1vZmZzZXQteT0iMTAiPgorPGRpdiBzdHlsZT0id2lk
dGg6IC13ZWJraXQtZmxleCgxIDIwcHgpOyBoZWlnaHQ6IC13ZWJraXQtZmxleCgxIDIwcHgpOyIg
ZGF0YS1leHBlY3RlZC13aWR0aD0iMjAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIyMCIgZGF0YS1v
ZmZzZXQteD0iNDgiIGRhdGEtb2Zmc2V0LXk9IjIzIj48L2Rpdj4KKzwvZGl2PjwvZGl2PgordmVy
dGljYWwtcmwgcnRsIGNvbHVtbgorRkFJTDoKK0V4cGVjdGVkIDkwIGZvciB3aWR0aCwgYnV0IGdv
dCA2MC4gCisKKzxkaXYgY2xhc3M9ImNvbnRhaW5lciIgZGF0YS1leHBlY3RlZC13aWR0aD0iOTAi
IGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI5MCI+PGRpdiBjbGFzcz0iZmxleGJveCB2ZXJ0aWNhbC1y
bCBydGwgY29sdW1uIiBkYXRhLW9mZnNldC14PSI0MCIgZGF0YS1vZmZzZXQteT0iMTAiPgorPGRp
diBzdHlsZT0id2lkdGg6IC13ZWJraXQtZmxleCgxIDIwcHgpOyBoZWlnaHQ6IC13ZWJraXQtZmxl
eCgxIDIwcHgpOyIgZGF0YS1leHBlY3RlZC13aWR0aD0iMjAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0
PSIyMCIgZGF0YS1vZmZzZXQteD0iNDgiIGRhdGEtb2Zmc2V0LXk9IjIzIj48L2Rpdj4KKzwvZGl2
PjwvZGl2PgordmVydGljYWwtcmwgbHRyIGNvbHVtbgorRkFJTDoKK0V4cGVjdGVkIDkwIGZvciB3
aWR0aCwgYnV0IGdvdCA2MC4gCisKKzxkaXYgY2xhc3M9ImNvbnRhaW5lciIgZGF0YS1leHBlY3Rl
ZC13aWR0aD0iOTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI5MCI+PGRpdiBjbGFzcz0iZmxleGJv
eCB2ZXJ0aWNhbC1ybCBsdHIgY29sdW1uIiBkYXRhLW9mZnNldC14PSI0MCIgZGF0YS1vZmZzZXQt
eT0iMTAiPgorPGRpdiBzdHlsZT0id2lkdGg6IC13ZWJraXQtZmxleCgxIDIwcHgpOyBoZWlnaHQ6
IC13ZWJraXQtZmxleCgxIDIwcHgpOyIgZGF0YS1leHBlY3RlZC13aWR0aD0iMjAiIGRhdGEtZXhw
ZWN0ZWQtaGVpZ2h0PSIyMCIgZGF0YS1vZmZzZXQteD0iNDgiIGRhdGEtb2Zmc2V0LXk9IjIzIj48
L2Rpdj4KKzwvZGl2PjwvZGl2PgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZsZXhi
b3gvZmxleC1mbG93LW1hcmdpbnMtYXV0by1zaXplLmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2Zs
ZXhib3gvZmxleC1mbG93LW1hcmdpbnMtYXV0by1zaXplLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjhlZTI3
YmU5ZGEwZWNlZDQzYmNkMDM5NTE3YWM4OGYyOWFlMWFlNQotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2NzczMvZmxleGJveC9mbGV4LWZsb3ctbWFyZ2lucy1hdXRvLXNpemUuaHRtbApA
QCAtMCwwICsxLDk2IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPHN0eWxlPgorLmNvbnRh
aW5lciB7CisgICAgcG9zaXRpb246IHJlbGF0aXZlOworICAgIGJhY2tncm91bmQtY29sb3I6IHBp
bms7CisgICAgb3V0bGluZTogMXB4IHNvbGlkIGJsYWNrOworICAgIGRpc3BsYXk6IGlubGluZS1i
bG9jazsKK30KKy5mbGV4Ym94IHsKKyAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXhib3g7CisgICAg
YmFja2dyb3VuZC1jb2xvcjogZ3JleTsKKyAgICBtYXJnaW46IDEwcHggMjBweCAzMHB4IDQwcHg7
Cit9CisudGl0bGUgeworICAgIG1hcmdpbi10b3A6IDFlbTsKK30KKy5sdHIgeworICAgIGRpcmVj
dGlvbjogbHRyOworfQorLnJ0bCB7CisgICAgZGlyZWN0aW9uOiBydGw7Cit9CisuaG9yaXpvbnRh
bC10YiB7CisgICAgLXdlYmtpdC13cml0aW5nLW1vZGU6IGhvcml6b250YWwtdGI7Cit9CisuaG9y
aXpvbnRhbC1idCB7CisgICAgLXdlYmtpdC13cml0aW5nLW1vZGU6IGhvcml6b250YWwtYnQ7Cit9
CisudmVydGljYWwtcmwgeworICAgIC13ZWJraXQtd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1ybDsK
K30KKy52ZXJ0aWNhbC1sciB7CisgICAgLXdlYmtpdC13cml0aW5nLW1vZGU6IHZlcnRpY2FsLWxy
OworfQorLnJvdyB7CisgICAgLXdlYmtpdC1mbGV4LWZsb3c6IHJvdzsKK30KKy5yb3ctcmV2ZXJz
ZSB7CisgICAgLXdlYmtpdC1mbGV4LWZsb3c6IHJvdy1yZXZlcnNlOworfQorLmNvbHVtbiB7Cisg
ICAgLXdlYmtpdC1mbGV4LWZsb3c6IGNvbHVtbjsKK30KKy5jb2x1bW4tcmV2ZXJzZSB7CisgICAg
LXdlYmtpdC1mbGV4LWZsb3c6IGNvbHVtbi1yZXZlcnNlOworfQorLmZsZXhib3ggPiBkaXYgewor
ICAgIG1hcmdpbjogMTNweCAycHggMTdweCA4cHg7CisgICAgYmFja2dyb3VuZC1jb2xvcjogYmx1
ZTsKK30KKzwvc3R5bGU+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxl
cikKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7Cis8L3NjcmlwdD4KKzxz
Y3JpcHQgc3JjPSJyZXNvdXJjZXMvZmxleGJveC5qcyI+PC9zY3JpcHQ+Cis8Ym9keSBvbmxvYWQ9
ImNoZWNrRmxleEJveGVuKCkiPgorCis8c2NyaXB0PgorCisvLyBUaGUgdmVydGljYWwgdGVzdCBj
YXNlcyBhcmUgZmFpbGluZyBiZWNhdXNlIG9mIHRoZSBvcnRob2dvbmFsIHdyaXRpbmcgbW9kZXMu
CisvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzA3NjkKK3ZhciB3
cml0aW5nTW9kZXMgPSBbJ2hvcml6b250YWwtdGInLCAnaG9yaXpvbnRhbC1idCcsICd2ZXJ0aWNh
bC1scicsICd2ZXJ0aWNhbC1ybCddOworLy8gRklYTUU6IFRlc3Qgcm93LXJldmVyc2UgYW5kIGNv
bHVtbi1yZXZlcnNlLgordmFyIGZsZXhGbG93cyA9IFsncm93JywgJ2NvbHVtbiddOwordmFyIGRp
cmVjdGlvbnMgPSBbJ3J0bCcsICdsdHInXTsKKword3JpdGluZ01vZGVzLmZvckVhY2goZnVuY3Rp
b24od3JpdGluZ01vZGUpIHsKKyAgICBmbGV4Rmxvd3MuZm9yRWFjaChmdW5jdGlvbihmbGV4Rmxv
dykgeworICAgICAgICBkaXJlY3Rpb25zLmZvckVhY2goZnVuY3Rpb24oZGlyZWN0aW9uKSB7Cisg
ICAgICAgICAgICB2YXIgZmxleGJveENsYXNzTmFtZSA9IHdyaXRpbmdNb2RlICsgJyAnICsgZGly
ZWN0aW9uICsgJyAnICsgZmxleEZsb3c7CisgICAgICAgICAgICB2YXIgdGl0bGUgPSBkb2N1bWVu
dC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKKyAgICAgICAgICAgIHRpdGxlLmNsYXNzTmFtZSA9ICd0
aXRsZSc7CisgICAgICAgICAgICB0aXRsZS5pbm5lckhUTUwgPSBmbGV4Ym94Q2xhc3NOYW1lOwor
ICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0aXRsZSk7CisKKyAgICAgICAg
ICAgIHZhciBmbGV4Ym94RXhwZWN0YXRpb25zID0gJ2RhdGEtb2Zmc2V0LXg9IjQwIiBkYXRhLW9m
ZnNldC15PSIxMCInOworICAgICAgICAgICAgdmFyIGZsZXhJdGVtRXhwZWN0YXRpb25zID0gJ2Rh
dGEtZXhwZWN0ZWQtd2lkdGg9IjIwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMjAiIGRhdGEtb2Zm
c2V0LXg9IjQ4IiBkYXRhLW9mZnNldC15PSIyMyInOworCisgICAgICAgICAgICB2YXIgY29udGFp
bmVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7CisgICAgICAgICAgICBjb250YWlu
ZXIuY2xhc3NOYW1lID0gJ2NvbnRhaW5lcic7CisgICAgICAgICAgICBjb250YWluZXIuc2V0QXR0
cmlidXRlKCdkYXRhLWV4cGVjdGVkLXdpZHRoJywgOTApOworICAgICAgICAgICAgY29udGFpbmVy
LnNldEF0dHJpYnV0ZSgnZGF0YS1leHBlY3RlZC1oZWlnaHQnLCA5MCk7CisKKyAgICAgICAgICAg
IGNvbnRhaW5lci5pbm5lckhUTUwgPSAnPGRpdiBjbGFzcz0iZmxleGJveCAnICsgZmxleGJveENs
YXNzTmFtZSArICciICcgKyBmbGV4Ym94RXhwZWN0YXRpb25zICsgJz5cbicgKworICAgICAgICAg
ICAgICAgICc8ZGl2IHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEgMjBweCk7IGhlaWdodDog
LXdlYmtpdC1mbGV4KDEgMjBweCk7IiAnICsgZmxleEl0ZW1FeHBlY3RhdGlvbnMgKyAnPjwvZGl2
PlxuJyArCisgICAgICAgICAgICAnPC9kaXY+JzsKKworICAgICAgICAgICAgZG9jdW1lbnQuYm9k
eS5hcHBlbmRDaGlsZChjb250YWluZXIpOworICAgICAgICB9KQorICAgIH0pCit9KQorPC9zY3Jp
cHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jc3MzL2ZsZXhi
b3gvcmVzb3VyY2VzL2ZsZXhib3guanMgYi9MYXlvdXRUZXN0cy9jc3MzL2ZsZXhib3gvcmVzb3Vy
Y2VzL2ZsZXhib3guanMKaW5kZXggMzgwYzllN2UyMGU3ODc1YTgzNjE3MTg0N2Q0YjA0N2NkMGEy
N2Y4ZS4uNjNlZjlmYTI2YjA1Y2VjYzMxNWQzY2QxMzdhYTNjNjE1MzcyMjFiYiAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvY3NzMy9mbGV4Ym94L3Jlc291cmNlcy9mbGV4Ym94LmpzCisrKyBiL0xh
eW91dFRlc3RzL2NzczMvZmxleGJveC9yZXNvdXJjZXMvZmxleGJveC5qcwpAQCAtNjcsOSArNjcs
OSBAQCBmdW5jdGlvbiBjaGVja0V4cGVjdGVkVmFsdWVzKG5vZGUsIGZhaWx1cmVzKQogICAgIH0K
IH0KIAotZnVuY3Rpb24gY2hlY2tGbGV4Qm94ZW4oKQorZnVuY3Rpb24gY2hlY2tGbGV4Qm94ZW4o
Y2xhc3NOYW1lKQogewotICAgIHZhciBmbGV4Ym94ZW4gPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5
Q2xhc3NOYW1lKCJmbGV4Ym94Iik7CisgICAgdmFyIGZsZXhib3hlbiA9IGRvY3VtZW50LmdldEVs
ZW1lbnRzQnlDbGFzc05hbWUoY2xhc3NOYW1lIHx8ICJmbGV4Ym94Iik7CiAgICAgQXJyYXkucHJv
dG90eXBlLmZvckVhY2guY2FsbChmbGV4Ym94ZW4sIGZ1bmN0aW9uKGZsZXhib3gpIHsKICAgICAg
ICAgdmFyIGZhaWx1cmVzID0gW107CiAgICAgICAgIGNoZWNrRXhwZWN0ZWRWYWx1ZXMoZmxleGJv
eC5wYXJlbnROb2RlLCBmYWlsdXJlcyk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>112581</attachid>
            <date>2011-10-26 13:13:11 -0700</date>
            <delta_ts>2011-10-26 13:13:49 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-70839-20111026131315.patch</filename>
            <type>text/plain</type>
            <size>18279</size>
            <attacher name="Tony Chang">tony</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTg0OTUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBmYzNmOTU2ZTlmOGYwMjcz
MWY3NjYyNjJhOThhMjY0MDAxMzE3YzFkLi41MTNiYzQyODllOWQwMDAwNTA1NTUyMDhhOGY1Y2Jh
MzMwMDVhNTExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTEtMTAtMjYgIFRvbnkg
Q2hhbmcgIDx0b255QGNocm9taXVtLm9yZz4KKworICAgICAgICBmaXggc2l6aW5nIG9mIGF1dG8g
c2l6ZWQgZmxleGJveAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NzA4MzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBDb3JyZWN0bHkgc2V0IHRoZSBoZWlnaHQgb2YgdGhlIGZsZXhib3ggd2hlbiB3ZSBoYXZl
IGEgY29sdW1uIGZsb3cKKyAgICAgICAgYW5kIHRoZSBoZWlnaHQgaXMgYXV0by4KKworICAgICAg
ICBUZXN0czogY3NzMy9mbGV4Ym94L2NvbHVtbnMtYXV0by1zaXplLmh0bWwKKyAgICAgICAgICAg
ICAgIGNzczMvZmxleGJveC9mbGV4LWZsb3ctbWFyZ2lucy1hdXRvLXNpemUuaHRtbAorCisgICAg
ICAgICogcmVuZGVyaW5nL1JlbmRlckZsZXhpYmxlQm94LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OlJlbmRlckZsZXhpYmxlQm94OjpmbG93QXdhcmVMb2dpY2FsSGVpZ2h0TGVuZ3RoKTogUmVwbGFj
ZXMgaXNGbG93QXdhcmVMb2dpY2FsSGVpZ2h0QXV0by4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
ckZsZXhpYmxlQm94OjpmbG93QXdhcmVMb2dpY2FsV2lkdGhMZW5ndGgpOgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyRmxleGlibGVCb3g6OnNldEZsb3dBd2FyZUxvZ2ljYWxXaWR0aCk6CisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJGbGV4aWJsZUJveDo6bGF5b3V0QW5kUGxhY2VDaGlsZHJlbklu
bGluZURpcmVjdGlvbik6IFRoZSBoZWlnaHQgaXMgd2hlcmUgdGhlIG5leHQgYm94IHdvdWxkIGhh
dmUgYmVlbiBwbGFjZWQuCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckZsZXhpYmxlQm94Lmg6
CisKIDIwMTEtMTAtMjYgIE1pY2hhZWwgU2Fib2ZmICA8bXNhYm9mZkBhcHBsZS5jb20+CiAKICAg
ICAgICAgSW5jcmVhc2UgU3RyaW5nSW1wbCBGbGFnIEJpdHMgZm9yIDggYml0IFN0cmluZ3MKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJveC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRmxleGlibGVCb3guY3BwCmluZGV4IDBi
ZjI5MjcwMGQ0NjliOTBmMjMwNWFjYWJjZWQwYzdlOTQ0NTk1OTIuLjYyOGNlMWE5MTkwZDYzM2Q5
YTAxZTQ5MDEyYTliMTYwMDkzYWJjNTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJGbGV4aWJsZUJveC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlckZsZXhpYmxlQm94LmNwcApAQCAtMjI4LDE1ICsyMjgsMTkgQEAgYm9vbCBSZW5kZXJG
bGV4aWJsZUJveDo6aXNMZWZ0VG9SaWdodEZsb3coKSBjb25zdAogICAgIHJldHVybiBzdHlsZSgp
LT5pc0xlZnRUb1JpZ2h0RGlyZWN0aW9uKCk7CiB9CiAKLUxlbmd0aCBSZW5kZXJGbGV4aWJsZUJv
eDo6Zmxvd0F3YXJlTG9naWNhbFdpZHRoTGVuZ3RoRm9yQ2hpbGQoUmVuZGVyQm94KiBjaGlsZCkg
Y29uc3QKK0xlbmd0aCBSZW5kZXJGbGV4aWJsZUJveDo6Zmxvd0F3YXJlTG9naWNhbEhlaWdodExl
bmd0aCgpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIGlzSG9yaXpvbnRhbEZsb3coKSA/IGNoaWxkLT5z
dHlsZSgpLT53aWR0aCgpIDogY2hpbGQtPnN0eWxlKCktPmhlaWdodCgpOworICAgIHJldHVybiBp
c0hvcml6b250YWxGbG93KCkgPyBzdHlsZSgpLT5oZWlnaHQoKSA6IHN0eWxlKCktPndpZHRoKCk7
CiB9CiAKLWJvb2wgUmVuZGVyRmxleGlibGVCb3g6OmlzRmxvd0F3YXJlTG9naWNhbEhlaWdodEF1
dG8oKSBjb25zdAorTGVuZ3RoIFJlbmRlckZsZXhpYmxlQm94OjpmbG93QXdhcmVMb2dpY2FsV2lk
dGhMZW5ndGgoKSBjb25zdAogewotICAgIExlbmd0aCBoZWlnaHQgPSBpc0hvcml6b250YWxGbG93
KCkgPyBzdHlsZSgpLT5oZWlnaHQoKSA6IHN0eWxlKCktPndpZHRoKCk7Ci0gICAgcmV0dXJuIGhl
aWdodC5pc0F1dG8oKTsKKyAgICByZXR1cm4gaXNIb3Jpem9udGFsRmxvdygpID8gc3R5bGUoKS0+
d2lkdGgoKSA6IHN0eWxlKCktPmhlaWdodCgpOworfQorCitMZW5ndGggUmVuZGVyRmxleGlibGVC
b3g6OmZsb3dBd2FyZUxvZ2ljYWxXaWR0aExlbmd0aEZvckNoaWxkKFJlbmRlckJveCogY2hpbGQp
IGNvbnN0Cit7CisgICAgcmV0dXJuIGlzSG9yaXpvbnRhbEZsb3coKSA/IGNoaWxkLT5zdHlsZSgp
LT53aWR0aCgpIDogY2hpbGQtPnN0eWxlKCktPmhlaWdodCgpOwogfQogCiB2b2lkIFJlbmRlckZs
ZXhpYmxlQm94OjpzZXRGbG93QXdhcmVMb2dpY2FsSGVpZ2h0KExheW91dFVuaXQgc2l6ZSkKQEAg
LTI0Nyw2ICsyNTEsMTQgQEAgdm9pZCBSZW5kZXJGbGV4aWJsZUJveDo6c2V0Rmxvd0F3YXJlTG9n
aWNhbEhlaWdodChMYXlvdXRVbml0IHNpemUpCiAgICAgICAgIHNldFdpZHRoKHNpemUpOwogfQog
Cit2b2lkIFJlbmRlckZsZXhpYmxlQm94OjpzZXRGbG93QXdhcmVMb2dpY2FsV2lkdGgoTGF5b3V0
VW5pdCBzaXplKQoreworICAgIGlmIChpc0hvcml6b250YWxGbG93KCkpCisgICAgICAgIHNldFdp
ZHRoKHNpemUpOworICAgIGVsc2UKKyAgICAgICAgc2V0SGVpZ2h0KHNpemUpOworfQorCiBMYXlv
dXRVbml0IFJlbmRlckZsZXhpYmxlQm94OjpmbG93QXdhcmVMb2dpY2FsSGVpZ2h0Rm9yQ2hpbGQo
UmVuZGVyQm94KiBjaGlsZCkKIHsKICAgICByZXR1cm4gaXNIb3Jpem9udGFsRmxvdygpID8gY2hp
bGQtPmhlaWdodCgpIDogY2hpbGQtPndpZHRoKCk7CkBAIC02NTcsNyArNjY5LDcgQEAgdm9pZCBS
ZW5kZXJGbGV4aWJsZUJveDo6bGF5b3V0QW5kUGxhY2VDaGlsZHJlbklubGluZURpcmVjdGlvbihG
bGV4T3JkZXJJdGVyYXRvciYKIAogICAgIExheW91dFVuaXQgbG9naWNhbFRvcCA9IGZsb3dBd2Fy
ZUJvcmRlckJlZm9yZSgpICsgZmxvd0F3YXJlUGFkZGluZ0JlZm9yZSgpOwogICAgIExheW91dFVu
aXQgdG90YWxMb2dpY2FsV2lkdGggPSBmbG93QXdhcmVMb2dpY2FsV2lkdGgoKTsKLSAgICBpZiAo
aXNGbG93QXdhcmVMb2dpY2FsSGVpZ2h0QXV0bygpKQorICAgIGlmIChmbG93QXdhcmVMb2dpY2Fs
SGVpZ2h0TGVuZ3RoKCkuaXNBdXRvKCkpCiAgICAgICAgIHNldEZsb3dBd2FyZUxvZ2ljYWxIZWln
aHQoMCk7CiAgICAgTGF5b3V0VW5pdCBtYXhBc2NlbnQgPSAwLCBtYXhEZXNjZW50ID0gMDsgLy8g
VXNlZCB3aGVuIGZsZXgtYWxpZ246IGJhc2VsaW5lLgogICAgIHNpemVfdCBpID0gMDsKQEAgLTY3
NSw5ICs2ODcsOSBAQCB2b2lkIFJlbmRlckZsZXhpYmxlQm94OjpsYXlvdXRBbmRQbGFjZUNoaWxk
cmVuSW5saW5lRGlyZWN0aW9uKEZsZXhPcmRlckl0ZXJhdG9yJgogICAgICAgICAgICAgbWF4RGVz
Y2VudCA9IHN0ZDo6bWF4KG1heERlc2NlbnQsIGRlc2NlbnQpOwogCiAgICAgICAgICAgICAvLyBG
SVhNRTogYWRkIGZsb3dBd2FyZVNjcm9sbGJhckxvZ2ljYWxIZWlnaHQuCi0gICAgICAgICAgICBp
ZiAoaXNGbG93QXdhcmVMb2dpY2FsSGVpZ2h0QXV0bygpKQorICAgICAgICAgICAgaWYgKGZsb3dB
d2FyZUxvZ2ljYWxIZWlnaHRMZW5ndGgoKS5pc0F1dG8oKSkKICAgICAgICAgICAgICAgICBzZXRG
bG93QXdhcmVMb2dpY2FsSGVpZ2h0KHN0ZDo6bWF4KGZsb3dBd2FyZUxvZ2ljYWxIZWlnaHQoKSwg
Zmxvd0F3YXJlQm9yZGVyQW5kUGFkZGluZ0xvZ2ljYWxIZWlnaHQoKSArIGZsb3dBd2FyZU1hcmdp
bkxvZ2ljYWxIZWlnaHRGb3JDaGlsZChjaGlsZCkgKyBtYXhBc2NlbnQgKyBtYXhEZXNjZW50ICsg
c2Nyb2xsYmFyTG9naWNhbEhlaWdodCgpKSk7Ci0gICAgICAgIH0gZWxzZSBpZiAoaXNGbG93QXdh
cmVMb2dpY2FsSGVpZ2h0QXV0bygpKQorICAgICAgICB9IGVsc2UgaWYgKGZsb3dBd2FyZUxvZ2lj
YWxIZWlnaHRMZW5ndGgoKS5pc0F1dG8oKSkKICAgICAgICAgICAgIHNldEZsb3dBd2FyZUxvZ2lj
YWxIZWlnaHQoc3RkOjptYXgoZmxvd0F3YXJlTG9naWNhbEhlaWdodCgpLCBmbG93QXdhcmVCb3Jk
ZXJBbmRQYWRkaW5nTG9naWNhbEhlaWdodCgpICsgZmxvd0F3YXJlTWFyZ2luTG9naWNhbEhlaWdo
dEZvckNoaWxkKGNoaWxkKSArIGZsb3dBd2FyZUxvZ2ljYWxIZWlnaHRGb3JDaGlsZChjaGlsZCkg
KyBzY3JvbGxiYXJMb2dpY2FsSGVpZ2h0KCkpKTsKIAogICAgICAgICBzdGFydEVkZ2UgKz0gZmxv
d0F3YXJlTWFyZ2luU3RhcnRGb3JDaGlsZChjaGlsZCk7CkBAIC02OTMsNiArNzA1LDggQEAgdm9p
ZCBSZW5kZXJGbGV4aWJsZUJveDo6bGF5b3V0QW5kUGxhY2VDaGlsZHJlbklubGluZURpcmVjdGlv
bihGbGV4T3JkZXJJdGVyYXRvciYKICAgICAgICAgaWYgKGhhc1BhY2tpbmdTcGFjZShhdmFpbGFi
bGVGcmVlU3BhY2UsIHRvdGFsUG9zaXRpdmVGbGV4aWJpbGl0eSkgJiYgc3R5bGUoKS0+ZmxleFBh
Y2soKSA9PSBQYWNrSnVzdGlmeSAmJiBjaGlsZFNpemVzLnNpemUoKSA+IDEpCiAgICAgICAgICAg
ICBzdGFydEVkZ2UgKz0gYXZhaWxhYmxlRnJlZVNwYWNlIC8gKGNoaWxkU2l6ZXMuc2l6ZSgpIC0g
MSk7CiAgICAgfQorICAgIGlmIChpc0NvbHVtbkZsb3coKSAmJiBmbG93QXdhcmVMb2dpY2FsV2lk
dGhMZW5ndGgoKS5pc0F1dG8oKSkKKyAgICAgICAgc2V0Rmxvd0F3YXJlTG9naWNhbFdpZHRoKHN0
YXJ0RWRnZSk7CiAKICAgICBhbGlnbkNoaWxkcmVuQmxvY2tEaXJlY3Rpb24oaXRlcmF0b3IsIG1h
eEFzY2VudCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
RmxleGlibGVCb3guaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJv
eC5oCmluZGV4IDRkYzE5NDE3OTIxMjNhY2E0NTAxMWFjNTk3Mjk4NzEzMjEwZjMzODcuLmMxZTI5
YWVmMTNhMTZiYTU2MDI5NTY1NTY4MGM4MjAyZWM1MTdkNTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJveC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJveC5oCkBAIC01Nyw5ICs1NywxMSBAQCBwcml2YXRl
OgogICAgIGJvb2wgaXNDb2x1bW5GbG93KCkgY29uc3Q7CiAgICAgYm9vbCBpc0hvcml6b250YWxG
bG93KCkgY29uc3Q7CiAgICAgYm9vbCBpc0xlZnRUb1JpZ2h0RmxvdygpIGNvbnN0OwotICAgIGJv
b2wgaXNGbG93QXdhcmVMb2dpY2FsSGVpZ2h0QXV0bygpIGNvbnN0OworICAgIExlbmd0aCBmbG93
QXdhcmVMb2dpY2FsSGVpZ2h0TGVuZ3RoKCkgY29uc3Q7CisgICAgTGVuZ3RoIGZsb3dBd2FyZUxv
Z2ljYWxXaWR0aExlbmd0aCgpIGNvbnN0OwogICAgIExlbmd0aCBmbG93QXdhcmVMb2dpY2FsV2lk
dGhMZW5ndGhGb3JDaGlsZChSZW5kZXJCb3gqIGNoaWxkKSBjb25zdDsKICAgICB2b2lkIHNldEZs
b3dBd2FyZUxvZ2ljYWxIZWlnaHQoTGF5b3V0VW5pdCk7CisgICAgdm9pZCBzZXRGbG93QXdhcmVM
b2dpY2FsV2lkdGgoTGF5b3V0VW5pdCk7CiAgICAgTGF5b3V0VW5pdCBmbG93QXdhcmVMb2dpY2Fs
SGVpZ2h0Rm9yQ2hpbGQoUmVuZGVyQm94KiBjaGlsZCk7CiAgICAgTGF5b3V0VW5pdCBmbG93QXdh
cmVMb2dpY2FsV2lkdGhGb3JDaGlsZChSZW5kZXJCb3gqIGNoaWxkKTsKICAgICBMYXlvdXRVbml0
IGZsb3dBd2FyZUxvZ2ljYWxIZWlnaHQoKSBjb25zdDsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA2M2RjMjdhYjcwOTZkNTRh
NTBhZjhlMDkwYWE5MThiYzZkMDEwYmUxLi41MWRmNzhhZWZiNThiYTc4ZjNhYWQyY2I4YTAyNDUx
OWY3MmJiMTdkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTEtMTAtMjYgIFRvbnkgQ2hhbmcg
IDx0b255QGNocm9taXVtLm9yZz4KKworICAgICAgICBmaXggc2l6aW5nIG9mIGF1dG8gc2l6ZWQg
ZmxleGJveAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NzA4MzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAq
IGNzczMvZmxleGJveC9jb2x1bW5zLWF1dG8tc2l6ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGNzczMvZmxleGJveC9jb2x1bW5zLWF1dG8tc2l6ZS5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiBjc3MzL2ZsZXhib3gvZmxleC1mbG93LW1hcmdpbnMtYXV0by1zaXplLWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogY3NzMy9mbGV4Ym94L2ZsZXgtZmxvdy1tYXJnaW5zLWF1dG8t
c2l6ZS5odG1sOiBBZGRlZC4KKyAgICAgICAgICAgIEEgYnVuY2ggb2YgdGhlc2UgY2FzZXMgZmFp
bCwgYnV0IHRoYXQncyBiZWNhdXNlIG9mIGJ1ZyA3MDc2OS4KKyAgICAgICAgKiBjc3MzL2ZsZXhi
b3gvcmVzb3VyY2VzL2ZsZXhib3guanM6CisgICAgICAgIChjaGVja0ZsZXhCb3hlbik6CisKIDIw
MTEtMTAtMjYgIERpbWl0cmkgR2xhemtvdiAgPGRnbGF6a292QGNocm9taXVtLm9yZz4KIAogICAg
ICAgICBSRUdSRVNTSU9OIChyOTQ4ODcpOiBTY3JvbGxpbmcgdGhlIEhUTUwgc3BlYyBpcyBtb3Jl
IGplcmt5IG5vdyB0aGFuIGl0IHdhcyAocmVncmVzc2lvbikKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2NzczMvZmxleGJveC9jb2x1bW5zLWF1dG8tc2l6ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9jc3MzL2ZsZXhib3gvY29sdW1ucy1hdXRvLXNpemUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjAwZThiOTI0OThhMWE3OWE3OGJhMzM2ZDMxZGRjNDg0ODdkYzE4ZWUKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9jc3MzL2ZsZXhib3gvY29sdW1ucy1hdXRvLXNpemUtZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsNiBAQAorUEFTUworUEFTUworUEFTUworUEFTUworUEFTUworUEFT
UwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9mbGV4Ym94L2NvbHVtbnMtYXV0by1zaXpl
Lmh0bWwgYi9MYXlvdXRUZXN0cy9jc3MzL2ZsZXhib3gvY29sdW1ucy1hdXRvLXNpemUuaHRtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi40Mjg0YTljM2FjNzQ5NmM5MzQzNDA3M2IyN2ZlODlmMmEyMmFlYmJhCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9mbGV4Ym94L2NvbHVtbnMtYXV0by1zaXpl
Lmh0bWwKQEAgLTAsMCArMSw5NCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxzdHlsZT4K
K2JvZHkgeworICAgIG1hcmdpbjogMDsKK30KKworLmZsZXhib3ggeworICAgIGRpc3BsYXk6IC13
ZWJraXQtZmxleGJveDsKKyAgICAtd2Via2l0LWZsZXgtZmxvdzogY29sdW1uOworICAgIGJhY2tn
cm91bmQtY29sb3I6ICNhYWE7CisgICAgcG9zaXRpb246IHJlbGF0aXZlOworfQorLmhvcml6b250
YWwgeworICAgIHdpZHRoOiA0MDBweDsKK30KKworLmhvcml6b250YWwgZGl2IHsKKyAgICB3aWR0
aDogMTAwJTsKK30KKy52ZXJ0aWNhbCB7CisgICAgLXdlYmtpdC13cml0aW5nLW1vZGU6IHZlcnRp
Y2FsLXJsOworICAgIGhlaWdodDogNTBweDsKK30KKy52ZXJ0aWNhbCBkaXYgeworICAgIGhlaWdo
dDogMTAwJTsKK30KKworLmZsZXhib3ggPiA6bnRoLWNoaWxkKDEpIHsKKyAgICBiYWNrZ3JvdW5k
LWNvbG9yOiBibHVlOworfQorLmZsZXhib3ggPiA6bnRoLWNoaWxkKDIpIHsKKyAgICBiYWNrZ3Jv
dW5kLWNvbG9yOiBncmVlbjsKK30KKy5mbGV4Ym94ID4gOm50aC1jaGlsZCgzKSB7CisgICAgYmFj
a2dyb3VuZC1jb2xvcjogcmVkOworfQorLmZsZXhib3ggPiA6bnRoLWNoaWxkKDQpIHsKKyAgICBi
YWNrZ3JvdW5kLWNvbG9yOiBvcmFuZ2U7Cit9CisuY2hpbGQtZGl2IHsKKyAgICBiYWNrZ3JvdW5k
LWNvbG9yOiB5ZWxsb3c7Cit9Cis8L3N0eWxlPgorPHNjcmlwdD4KK2lmICh3aW5kb3cubGF5b3V0
VGVzdENvbnRyb2xsZXIpCisgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOwor
PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2ZsZXhib3guanMiPjwvc2NyaXB0Pgor
PGJvZHkgb25sb2FkPSJjaGVja0ZsZXhCb3hlbigpIj4KKzxkaXYgY2xhc3M9ImZsZXhib3ggaG9y
aXpvbnRhbCI+CisgIDxkaXYgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwIiBkYXRhLW9mZnNldC15
PSIwIiBzdHlsZT0iaGVpZ2h0OiAtd2Via2l0LWZsZXgoMSAwIDEwcHgpIj48L2Rpdj4KKyAgPGRp
diBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjEwIiBzdHlsZT0iaGVp
Z2h0OiAxMHB4OyI+PC9kaXY+CisgIDxkaXYgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwIiBkYXRh
LW9mZnNldC15PSIyMCI+PGRpdiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiIGRhdGEtb2Zmc2V0
LXk9IjIwIiBzdHlsZT0iaGVpZ2h0OiAxMHB4Ij48L2Rpdj48L2Rpdj4KKzwvZGl2PgorCis8IS0t
IFRoZSBsYXN0IGRpdiBpcyBzaXplZCB0byAwIGJlY2F1c2UgdGhlcmUgaXMgbm8gYXZhaWxhYmxl
IHNwYWNlLCBob3dldmVyIGl0cyBjaGlsZCBvdmVyZmxvd3MuIC0tPgorPGRpdiBjbGFzcz0iZmxl
eGJveCBob3Jpem9udGFsIj4KKyAgPGRpdiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMCIgZGF0YS1v
ZmZzZXQteT0iMCIgc3R5bGU9ImhlaWdodDogLXdlYmtpdC1mbGV4KDEpIj48L2Rpdj4KKyAgPGRp
diBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjAiIHN0eWxlPSJoZWln
aHQ6IDEwcHg7Ij48L2Rpdj4KKyAgPGRpdiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiIGRhdGEt
b2Zmc2V0LXk9IjEwIiBzdHlsZT0iaGVpZ2h0OiAtd2Via2l0LWZsZXgoMSBhdXRvKSI+PGRpdiBz
dHlsZT0iaGVpZ2h0OiAxMHB4Ij48L2Rpdj48L2Rpdj4KKyAgPGRpdiBkYXRhLWV4cGVjdGVkLWhl
aWdodD0iMCIgZGF0YS1vZmZzZXQteT0iMjAiIHN0eWxlPSJoZWlnaHQ6IC13ZWJraXQtZmxleCgx
KSI+PGRpdiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjIwIiBjbGFz
cz0iY2hpbGQtZGl2IiBzdHlsZT0iaGVpZ2h0OiAxMHB4Ij48L2Rpdj48L2Rpdj4KKzwvZGl2Pgor
Cis8ZGl2IGNsYXNzPSJmbGV4Ym94IGhvcml6b250YWwiPgorICA8ZGl2IGRhdGEtZXhwZWN0ZWQt
aGVpZ2h0PSIxMCIgZGF0YS1vZmZzZXQteT0iMTAiIHN0eWxlPSJoZWlnaHQ6IC13ZWJraXQtZmxl
eCgxIDAgMTBweCk7IG1hcmdpbi10b3A6IDEwcHg7Ij48L2Rpdj4KKyAgPGRpdiBkYXRhLWV4cGVj
dGVkLWhlaWdodD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjIwIiBzdHlsZT0iaGVpZ2h0OiAxMHB4OyBt
YXJnaW4tYm90dG9tOiAyMHB4OyI+PC9kaXY+CisgIDxkaXYgZGF0YS1leHBlY3RlZC1oZWlnaHQ9
IjIwIiBkYXRhLW9mZnNldC15PSI1MCIgc3R5bGU9InBhZGRpbmctdG9wOiAxMHB4Ij48ZGl2IGRh
dGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMCIgZGF0YS1vZmZzZXQteT0iNjAiIHN0eWxlPSJoZWlnaHQ6
IDEwcHgiPjwvZGl2PjwvZGl2PgorPC9kaXY+CisKKzwhLS0gU2FtZSBhcyBwcmV2aW91cyB0ZXN0
IGNhc2UgYnV0IHdpdGggYSBmbGV4LXBhY2sgc2V0LiAgU2luY2UgdGhlcmUncyBubworICAgICBh
dmFpbGFibGUgc3BhY2UsIGl0IHNob3VsZCBsYXlvdXQgdGhlIHNhbWUuIC0tPgorPGRpdiBjbGFz
cz0iZmxleGJveCBob3Jpem9udGFsIiBzdHlsZT0iLXdlYmtpdC1mbGV4LXBhY2s6IGp1c3RpZnki
PgorICA8ZGl2IGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMCIgZGF0YS1vZmZzZXQteT0iMTAiIHN0
eWxlPSJoZWlnaHQ6IC13ZWJraXQtZmxleCgxIDAgMTBweCk7IG1hcmdpbi10b3A6IDEwcHg7Ij48
L2Rpdj4KKyAgPGRpdiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjIw
IiBzdHlsZT0iaGVpZ2h0OiAxMHB4OyBtYXJnaW4tYm90dG9tOiAyMHB4OyI+PC9kaXY+CisgIDxk
aXYgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjIwIiBkYXRhLW9mZnNldC15PSI1MCIgc3R5bGU9InBh
ZGRpbmctdG9wOiAxMHB4Ij48ZGl2IGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMCIgZGF0YS1vZmZz
ZXQteT0iNjAiIHN0eWxlPSJoZWlnaHQ6IDEwcHgiPjwvZGl2PjwvZGl2PgorPC9kaXY+CisKKzxk
aXYgY2xhc3M9ImZsZXhib3ggdmVydGljYWwiPgorICA8ZGl2IGRhdGEtZXhwZWN0ZWQtd2lkdGg9
IjEwIiBkYXRhLW9mZnNldC14PSIyMCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgoMSAwIDEw
cHgpIj48L2Rpdj4KKyAgPGRpdiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMCIgZGF0YS1vZmZzZXQt
eD0iMTAiIHN0eWxlPSJ3aWR0aDogMTBweDsiPjwvZGl2PgorICA8ZGl2IGRhdGEtZXhwZWN0ZWQt
d2lkdGg9IjEwIiBkYXRhLW9mZnNldC14PSIwIj48ZGl2IGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEw
IiBkYXRhLW9mZnNldC14PSIwIiBzdHlsZT0id2lkdGg6IDEwcHgiPjwvZGl2PjwvZGl2PgorPC9k
aXY+CisKKzwhLS0gVGhlIGZpcnN0IGRpdiBvdmVyZmxvd3MgdG8gdGhlIGxlZnQsIHNvIGdpdmUg
aXQgYSBtYXJnaW4tbGVmdCBzbyB3ZSBjYW4gc2VlIGJveCBpdCBwYWludHMuIC0tPgorPGRpdiBj
bGFzcz0iZmxleGJveCB2ZXJ0aWNhbCIgc3R5bGU9Im1hcmdpbi1sZWZ0OiAxMDBweDsiPgorICA8
ZGl2IGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjAiIGRhdGEtb2Zmc2V0LXg9IjIwIiBzdHlsZT0id2lk
dGg6IC13ZWJraXQtZmxleCgxKSI+PGRpdiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI1MCIgZGF0YS1v
ZmZzZXQteD0iLTMwIiBjbGFzcz0iY2hpbGQtZGl2IiBzdHlsZT0id2lkdGg6IDUwcHgiPjwvZGl2
PjwvZGl2PgorICA8ZGl2IGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjAiIGRhdGEtb2Zmc2V0LXg9IjIw
IiBzdHlsZT0id2lkdGg6IC13ZWJraXQtZmxleCgxKSI+PC9kaXY+CisgIDxkaXYgZGF0YS1leHBl
Y3RlZC13aWR0aD0iMTAiIGRhdGEtb2Zmc2V0LXg9IjEwIiBzdHlsZT0id2lkdGg6IDEwcHg7Ij48
L2Rpdj4KKyAgPGRpdiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMCIgZGF0YS1vZmZzZXQteD0iMCIg
c3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgoMSBhdXRvKSI+PGRpdiBzdHlsZT0id2lkdGg6IDEw
cHgiPjwvZGl2PjwvZGl2PgorPC9kaXY+CisKKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NzczMvZmxleGJveC9mbGV4LWZsb3ctbWFyZ2lucy1hdXRvLXNpemUtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3NzMy9mbGV4Ym94L2ZsZXgtZmxvdy1tYXJnaW5zLWF1
dG8tc2l6ZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOGRhODY4YzA3NGI5YzVkMWNhYjQ1ZWQx
NDZhMjdmYzY0MzkwZTVkNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NzczMvZmxl
eGJveC9mbGV4LWZsb3ctbWFyZ2lucy1hdXRvLXNpemUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
NzMgQEAKK2hvcml6b250YWwtdGIgcnRsIHJvdworUEFTUworaG9yaXpvbnRhbC10YiBsdHIgcm93
CitQQVNTCitob3Jpem9udGFsLXRiIHJ0bCBjb2x1bW4KK1BBU1MKK2hvcml6b250YWwtdGIgbHRy
IGNvbHVtbgorUEFTUworaG9yaXpvbnRhbC1idCBydGwgcm93CitQQVNTCitob3Jpem9udGFsLWJ0
IGx0ciByb3cKK1BBU1MKK2hvcml6b250YWwtYnQgcnRsIGNvbHVtbgorUEFTUworaG9yaXpvbnRh
bC1idCBsdHIgY29sdW1uCitQQVNTCit2ZXJ0aWNhbC1sciBydGwgcm93CitGQUlMOgorRXhwZWN0
ZWQgOTAgZm9yIHdpZHRoLCBidXQgZ290IDYwLiAKKworPGRpdiBjbGFzcz0iY29udGFpbmVyIiBk
YXRhLWV4cGVjdGVkLXdpZHRoPSI5MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjkwIj48ZGl2IGNs
YXNzPSJmbGV4Ym94IHZlcnRpY2FsLWxyIHJ0bCByb3ciIGRhdGEtb2Zmc2V0LXg9IjQwIiBkYXRh
LW9mZnNldC15PSIxMCI+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEgMjBweCk7
IGhlaWdodDogLXdlYmtpdC1mbGV4KDEgMjBweCk7IiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIyMCIg
ZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjIwIiBkYXRhLW9mZnNldC14PSI0OCIgZGF0YS1vZmZzZXQt
eT0iMjMiPjwvZGl2PgorPC9kaXY+PC9kaXY+Cit2ZXJ0aWNhbC1sciBsdHIgcm93CitGQUlMOgor
RXhwZWN0ZWQgOTAgZm9yIHdpZHRoLCBidXQgZ290IDYwLiAKKworPGRpdiBjbGFzcz0iY29udGFp
bmVyIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI5MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjkwIj48
ZGl2IGNsYXNzPSJmbGV4Ym94IHZlcnRpY2FsLWxyIGx0ciByb3ciIGRhdGEtb2Zmc2V0LXg9IjQw
IiBkYXRhLW9mZnNldC15PSIxMCI+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEg
MjBweCk7IGhlaWdodDogLXdlYmtpdC1mbGV4KDEgMjBweCk7IiBkYXRhLWV4cGVjdGVkLXdpZHRo
PSIyMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjIwIiBkYXRhLW9mZnNldC14PSI0OCIgZGF0YS1v
ZmZzZXQteT0iMjMiPjwvZGl2PgorPC9kaXY+PC9kaXY+Cit2ZXJ0aWNhbC1sciBydGwgY29sdW1u
CitGQUlMOgorRXhwZWN0ZWQgOTAgZm9yIHdpZHRoLCBidXQgZ290IDYwLiAKKworPGRpdiBjbGFz
cz0iY29udGFpbmVyIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI5MCIgZGF0YS1leHBlY3RlZC1oZWln
aHQ9IjkwIj48ZGl2IGNsYXNzPSJmbGV4Ym94IHZlcnRpY2FsLWxyIHJ0bCBjb2x1bW4iIGRhdGEt
b2Zmc2V0LXg9IjQwIiBkYXRhLW9mZnNldC15PSIxMCI+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogLXdl
YmtpdC1mbGV4KDEgMjBweCk7IGhlaWdodDogLXdlYmtpdC1mbGV4KDEgMjBweCk7IiBkYXRhLWV4
cGVjdGVkLXdpZHRoPSIyMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjIwIiBkYXRhLW9mZnNldC14
PSI0OCIgZGF0YS1vZmZzZXQteT0iMjMiPjwvZGl2PgorPC9kaXY+PC9kaXY+Cit2ZXJ0aWNhbC1s
ciBsdHIgY29sdW1uCitGQUlMOgorRXhwZWN0ZWQgOTAgZm9yIHdpZHRoLCBidXQgZ290IDYwLiAK
KworPGRpdiBjbGFzcz0iY29udGFpbmVyIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI5MCIgZGF0YS1l
eHBlY3RlZC1oZWlnaHQ9IjkwIj48ZGl2IGNsYXNzPSJmbGV4Ym94IHZlcnRpY2FsLWxyIGx0ciBj
b2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjQwIiBkYXRhLW9mZnNldC15PSIxMCI+Cis8ZGl2IHN0eWxl
PSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEgMjBweCk7IGhlaWdodDogLXdlYmtpdC1mbGV4KDEgMjBw
eCk7IiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIyMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjIwIiBk
YXRhLW9mZnNldC14PSI0OCIgZGF0YS1vZmZzZXQteT0iMjMiPjwvZGl2PgorPC9kaXY+PC9kaXY+
Cit2ZXJ0aWNhbC1ybCBydGwgcm93CitGQUlMOgorRXhwZWN0ZWQgOTAgZm9yIHdpZHRoLCBidXQg
Z290IDYwLiAKKworPGRpdiBjbGFzcz0iY29udGFpbmVyIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI5
MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjkwIj48ZGl2IGNsYXNzPSJmbGV4Ym94IHZlcnRpY2Fs
LXJsIHJ0bCByb3ciIGRhdGEtb2Zmc2V0LXg9IjQwIiBkYXRhLW9mZnNldC15PSIxMCI+Cis8ZGl2
IHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEgMjBweCk7IGhlaWdodDogLXdlYmtpdC1mbGV4
KDEgMjBweCk7IiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIyMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9
IjIwIiBkYXRhLW9mZnNldC14PSI0OCIgZGF0YS1vZmZzZXQteT0iMjMiPjwvZGl2PgorPC9kaXY+
PC9kaXY+Cit2ZXJ0aWNhbC1ybCBsdHIgcm93CitGQUlMOgorRXhwZWN0ZWQgOTAgZm9yIHdpZHRo
LCBidXQgZ290IDYwLiAKKworPGRpdiBjbGFzcz0iY29udGFpbmVyIiBkYXRhLWV4cGVjdGVkLXdp
ZHRoPSI5MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjkwIj48ZGl2IGNsYXNzPSJmbGV4Ym94IHZl
cnRpY2FsLXJsIGx0ciByb3ciIGRhdGEtb2Zmc2V0LXg9IjQwIiBkYXRhLW9mZnNldC15PSIxMCI+
Cis8ZGl2IHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEgMjBweCk7IGhlaWdodDogLXdlYmtp
dC1mbGV4KDEgMjBweCk7IiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIyMCIgZGF0YS1leHBlY3RlZC1o
ZWlnaHQ9IjIwIiBkYXRhLW9mZnNldC14PSI0OCIgZGF0YS1vZmZzZXQteT0iMjMiPjwvZGl2Pgor
PC9kaXY+PC9kaXY+Cit2ZXJ0aWNhbC1ybCBydGwgY29sdW1uCitGQUlMOgorRXhwZWN0ZWQgOTAg
Zm9yIHdpZHRoLCBidXQgZ290IDYwLiAKKworPGRpdiBjbGFzcz0iY29udGFpbmVyIiBkYXRhLWV4
cGVjdGVkLXdpZHRoPSI5MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjkwIj48ZGl2IGNsYXNzPSJm
bGV4Ym94IHZlcnRpY2FsLXJsIHJ0bCBjb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjQwIiBkYXRhLW9m
ZnNldC15PSIxMCI+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEgMjBweCk7IGhl
aWdodDogLXdlYmtpdC1mbGV4KDEgMjBweCk7IiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIyMCIgZGF0
YS1leHBlY3RlZC1oZWlnaHQ9IjIwIiBkYXRhLW9mZnNldC14PSI0OCIgZGF0YS1vZmZzZXQteT0i
MjMiPjwvZGl2PgorPC9kaXY+PC9kaXY+Cit2ZXJ0aWNhbC1ybCBsdHIgY29sdW1uCitGQUlMOgor
RXhwZWN0ZWQgOTAgZm9yIHdpZHRoLCBidXQgZ290IDYwLiAKKworPGRpdiBjbGFzcz0iY29udGFp
bmVyIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI5MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjkwIj48
ZGl2IGNsYXNzPSJmbGV4Ym94IHZlcnRpY2FsLXJsIGx0ciBjb2x1bW4iIGRhdGEtb2Zmc2V0LXg9
IjQwIiBkYXRhLW9mZnNldC15PSIxMCI+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4
KDEgMjBweCk7IGhlaWdodDogLXdlYmtpdC1mbGV4KDEgMjBweCk7IiBkYXRhLWV4cGVjdGVkLXdp
ZHRoPSIyMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjIwIiBkYXRhLW9mZnNldC14PSI0OCIgZGF0
YS1vZmZzZXQteT0iMjMiPjwvZGl2PgorPC9kaXY+PC9kaXY+CisKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2NzczMvZmxleGJveC9mbGV4LWZsb3ctbWFyZ2lucy1hdXRvLXNpemUuaHRtbCBiL0xh
eW91dFRlc3RzL2NzczMvZmxleGJveC9mbGV4LWZsb3ctbWFyZ2lucy1hdXRvLXNpemUuaHRtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi42OGVlMjdiZTlkYTBlY2VkNDNiY2QwMzk1MTdhYzg4ZjI5YWUxYWU1Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9mbGV4Ym94L2ZsZXgtZmxvdy1tYXJnaW5z
LWF1dG8tc2l6ZS5odG1sCkBAIC0wLDAgKzEsOTYgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+
Cis8c3R5bGU+CisuY29udGFpbmVyIHsKKyAgICBwb3NpdGlvbjogcmVsYXRpdmU7CisgICAgYmFj
a2dyb3VuZC1jb2xvcjogcGluazsKKyAgICBvdXRsaW5lOiAxcHggc29saWQgYmxhY2s7CisgICAg
ZGlzcGxheTogaW5saW5lLWJsb2NrOworfQorLmZsZXhib3ggeworICAgIGRpc3BsYXk6IC13ZWJr
aXQtZmxleGJveDsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmV5OworICAgIG1hcmdpbjogMTBw
eCAyMHB4IDMwcHggNDBweDsKK30KKy50aXRsZSB7CisgICAgbWFyZ2luLXRvcDogMWVtOworfQor
Lmx0ciB7CisgICAgZGlyZWN0aW9uOiBsdHI7Cit9CisucnRsIHsKKyAgICBkaXJlY3Rpb246IHJ0
bDsKK30KKy5ob3Jpem9udGFsLXRiIHsKKyAgICAtd2Via2l0LXdyaXRpbmctbW9kZTogaG9yaXpv
bnRhbC10YjsKK30KKy5ob3Jpem9udGFsLWJ0IHsKKyAgICAtd2Via2l0LXdyaXRpbmctbW9kZTog
aG9yaXpvbnRhbC1idDsKK30KKy52ZXJ0aWNhbC1ybCB7CisgICAgLXdlYmtpdC13cml0aW5nLW1v
ZGU6IHZlcnRpY2FsLXJsOworfQorLnZlcnRpY2FsLWxyIHsKKyAgICAtd2Via2l0LXdyaXRpbmct
bW9kZTogdmVydGljYWwtbHI7Cit9Cisucm93IHsKKyAgICAtd2Via2l0LWZsZXgtZmxvdzogcm93
OworfQorLnJvdy1yZXZlcnNlIHsKKyAgICAtd2Via2l0LWZsZXgtZmxvdzogcm93LXJldmVyc2U7
Cit9CisuY29sdW1uIHsKKyAgICAtd2Via2l0LWZsZXgtZmxvdzogY29sdW1uOworfQorLmNvbHVt
bi1yZXZlcnNlIHsKKyAgICAtd2Via2l0LWZsZXgtZmxvdzogY29sdW1uLXJldmVyc2U7Cit9Cisu
ZmxleGJveCA+IGRpdiB7CisgICAgbWFyZ2luOiAxM3B4IDJweCAxN3B4IDhweDsKKyAgICBiYWNr
Z3JvdW5kLWNvbG9yOiBibHVlOworfQorPC9zdHlsZT4KKzxzY3JpcHQ+CitpZiAod2luZG93Lmxh
eW91dFRlc3RDb250cm9sbGVyKQorICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQo
KTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy9mbGV4Ym94LmpzIj48L3Njcmlw
dD4KKzxib2R5IG9ubG9hZD0iY2hlY2tGbGV4Qm94ZW4oKSI+CisKKzxzY3JpcHQ+CisKKy8vIFRo
ZSB2ZXJ0aWNhbCB0ZXN0IGNhc2VzIGFyZSBmYWlsaW5nIGJlY2F1c2Ugb2YgdGhlIG9ydGhvZ29u
YWwgd3JpdGluZyBtb2Rlcy4KKy8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD03MDc2OQordmFyIHdyaXRpbmdNb2RlcyA9IFsnaG9yaXpvbnRhbC10YicsICdob3Jpem9u
dGFsLWJ0JywgJ3ZlcnRpY2FsLWxyJywgJ3ZlcnRpY2FsLXJsJ107CisvLyBGSVhNRTogVGVzdCBy
b3ctcmV2ZXJzZSBhbmQgY29sdW1uLXJldmVyc2UuCit2YXIgZmxleEZsb3dzID0gWydyb3cnLCAn
Y29sdW1uJ107Cit2YXIgZGlyZWN0aW9ucyA9IFsncnRsJywgJ2x0ciddOworCit3cml0aW5nTW9k
ZXMuZm9yRWFjaChmdW5jdGlvbih3cml0aW5nTW9kZSkgeworICAgIGZsZXhGbG93cy5mb3JFYWNo
KGZ1bmN0aW9uKGZsZXhGbG93KSB7CisgICAgICAgIGRpcmVjdGlvbnMuZm9yRWFjaChmdW5jdGlv
bihkaXJlY3Rpb24pIHsKKyAgICAgICAgICAgIHZhciBmbGV4Ym94Q2xhc3NOYW1lID0gd3JpdGlu
Z01vZGUgKyAnICcgKyBkaXJlY3Rpb24gKyAnICcgKyBmbGV4RmxvdzsKKyAgICAgICAgICAgIHZh
ciB0aXRsZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOworICAgICAgICAgICAgdGl0
bGUuY2xhc3NOYW1lID0gJ3RpdGxlJzsKKyAgICAgICAgICAgIHRpdGxlLmlubmVySFRNTCA9IGZs
ZXhib3hDbGFzc05hbWU7CisgICAgICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHRp
dGxlKTsKKworICAgICAgICAgICAgdmFyIGZsZXhib3hFeHBlY3RhdGlvbnMgPSAnZGF0YS1vZmZz
ZXQteD0iNDAiIGRhdGEtb2Zmc2V0LXk9IjEwIic7CisgICAgICAgICAgICB2YXIgZmxleEl0ZW1F
eHBlY3RhdGlvbnMgPSAnZGF0YS1leHBlY3RlZC13aWR0aD0iMjAiIGRhdGEtZXhwZWN0ZWQtaGVp
Z2h0PSIyMCIgZGF0YS1vZmZzZXQteD0iNDgiIGRhdGEtb2Zmc2V0LXk9IjIzIic7CisKKyAgICAg
ICAgICAgIHZhciBjb250YWluZXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKKyAg
ICAgICAgICAgIGNvbnRhaW5lci5jbGFzc05hbWUgPSAnY29udGFpbmVyJzsKKyAgICAgICAgICAg
IGNvbnRhaW5lci5zZXRBdHRyaWJ1dGUoJ2RhdGEtZXhwZWN0ZWQtd2lkdGgnLCA5MCk7CisgICAg
ICAgICAgICBjb250YWluZXIuc2V0QXR0cmlidXRlKCdkYXRhLWV4cGVjdGVkLWhlaWdodCcsIDkw
KTsKKworICAgICAgICAgICAgY29udGFpbmVyLmlubmVySFRNTCA9ICc8ZGl2IGNsYXNzPSJmbGV4
Ym94ICcgKyBmbGV4Ym94Q2xhc3NOYW1lICsgJyIgJyArIGZsZXhib3hFeHBlY3RhdGlvbnMgKyAn
PlxuJyArCisgICAgICAgICAgICAgICAgJzxkaXYgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgo
MSAyMHB4KTsgaGVpZ2h0OiAtd2Via2l0LWZsZXgoMSAyMHB4KTsiICcgKyBmbGV4SXRlbUV4cGVj
dGF0aW9ucyArICc+PC9kaXY+XG4nICsKKyAgICAgICAgICAgICc8L2Rpdj4nOworCisgICAgICAg
ICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGNvbnRhaW5lcik7CisgICAgICAgIH0pCisg
ICAgfSkKK30pCis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>112582</attachid>
            <date>2011-10-26 13:13:52 -0700</date>
            <delta_ts>2011-10-27 12:15:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-70839-20111026131356.patch</filename>
            <type>text/plain</type>
            <size>18206</size>
            <attacher name="Tony Chang">tony</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTg0OTUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBmYzNmOTU2ZTlmOGYwMjcz
MWY3NjYyNjJhOThhMjY0MDAxMzE3YzFkLi41MTNiYzQyODllOWQwMDAwNTA1NTUyMDhhOGY1Y2Jh
MzMwMDVhNTExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTEtMTAtMjYgIFRvbnkg
Q2hhbmcgIDx0b255QGNocm9taXVtLm9yZz4KKworICAgICAgICBmaXggc2l6aW5nIG9mIGF1dG8g
c2l6ZWQgZmxleGJveAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NzA4MzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBDb3JyZWN0bHkgc2V0IHRoZSBoZWlnaHQgb2YgdGhlIGZsZXhib3ggd2hlbiB3ZSBoYXZl
IGEgY29sdW1uIGZsb3cKKyAgICAgICAgYW5kIHRoZSBoZWlnaHQgaXMgYXV0by4KKworICAgICAg
ICBUZXN0czogY3NzMy9mbGV4Ym94L2NvbHVtbnMtYXV0by1zaXplLmh0bWwKKyAgICAgICAgICAg
ICAgIGNzczMvZmxleGJveC9mbGV4LWZsb3ctbWFyZ2lucy1hdXRvLXNpemUuaHRtbAorCisgICAg
ICAgICogcmVuZGVyaW5nL1JlbmRlckZsZXhpYmxlQm94LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OlJlbmRlckZsZXhpYmxlQm94OjpmbG93QXdhcmVMb2dpY2FsSGVpZ2h0TGVuZ3RoKTogUmVwbGFj
ZXMgaXNGbG93QXdhcmVMb2dpY2FsSGVpZ2h0QXV0by4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
ckZsZXhpYmxlQm94OjpmbG93QXdhcmVMb2dpY2FsV2lkdGhMZW5ndGgpOgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyRmxleGlibGVCb3g6OnNldEZsb3dBd2FyZUxvZ2ljYWxXaWR0aCk6CisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJGbGV4aWJsZUJveDo6bGF5b3V0QW5kUGxhY2VDaGlsZHJlbklu
bGluZURpcmVjdGlvbik6IFRoZSBoZWlnaHQgaXMgd2hlcmUgdGhlIG5leHQgYm94IHdvdWxkIGhh
dmUgYmVlbiBwbGFjZWQuCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckZsZXhpYmxlQm94Lmg6
CisKIDIwMTEtMTAtMjYgIE1pY2hhZWwgU2Fib2ZmICA8bXNhYm9mZkBhcHBsZS5jb20+CiAKICAg
ICAgICAgSW5jcmVhc2UgU3RyaW5nSW1wbCBGbGFnIEJpdHMgZm9yIDggYml0IFN0cmluZ3MKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJveC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRmxleGlibGVCb3guY3BwCmluZGV4IDBi
ZjI5MjcwMGQ0NjliOTBmMjMwNWFjYWJjZWQwYzdlOTQ0NTk1OTIuLjYyOGNlMWE5MTkwZDYzM2Q5
YTAxZTQ5MDEyYTliMTYwMDkzYWJjNTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJGbGV4aWJsZUJveC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlckZsZXhpYmxlQm94LmNwcApAQCAtMjI4LDE1ICsyMjgsMTkgQEAgYm9vbCBSZW5kZXJG
bGV4aWJsZUJveDo6aXNMZWZ0VG9SaWdodEZsb3coKSBjb25zdAogICAgIHJldHVybiBzdHlsZSgp
LT5pc0xlZnRUb1JpZ2h0RGlyZWN0aW9uKCk7CiB9CiAKLUxlbmd0aCBSZW5kZXJGbGV4aWJsZUJv
eDo6Zmxvd0F3YXJlTG9naWNhbFdpZHRoTGVuZ3RoRm9yQ2hpbGQoUmVuZGVyQm94KiBjaGlsZCkg
Y29uc3QKK0xlbmd0aCBSZW5kZXJGbGV4aWJsZUJveDo6Zmxvd0F3YXJlTG9naWNhbEhlaWdodExl
bmd0aCgpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIGlzSG9yaXpvbnRhbEZsb3coKSA/IGNoaWxkLT5z
dHlsZSgpLT53aWR0aCgpIDogY2hpbGQtPnN0eWxlKCktPmhlaWdodCgpOworICAgIHJldHVybiBp
c0hvcml6b250YWxGbG93KCkgPyBzdHlsZSgpLT5oZWlnaHQoKSA6IHN0eWxlKCktPndpZHRoKCk7
CiB9CiAKLWJvb2wgUmVuZGVyRmxleGlibGVCb3g6OmlzRmxvd0F3YXJlTG9naWNhbEhlaWdodEF1
dG8oKSBjb25zdAorTGVuZ3RoIFJlbmRlckZsZXhpYmxlQm94OjpmbG93QXdhcmVMb2dpY2FsV2lk
dGhMZW5ndGgoKSBjb25zdAogewotICAgIExlbmd0aCBoZWlnaHQgPSBpc0hvcml6b250YWxGbG93
KCkgPyBzdHlsZSgpLT5oZWlnaHQoKSA6IHN0eWxlKCktPndpZHRoKCk7Ci0gICAgcmV0dXJuIGhl
aWdodC5pc0F1dG8oKTsKKyAgICByZXR1cm4gaXNIb3Jpem9udGFsRmxvdygpID8gc3R5bGUoKS0+
d2lkdGgoKSA6IHN0eWxlKCktPmhlaWdodCgpOworfQorCitMZW5ndGggUmVuZGVyRmxleGlibGVC
b3g6OmZsb3dBd2FyZUxvZ2ljYWxXaWR0aExlbmd0aEZvckNoaWxkKFJlbmRlckJveCogY2hpbGQp
IGNvbnN0Cit7CisgICAgcmV0dXJuIGlzSG9yaXpvbnRhbEZsb3coKSA/IGNoaWxkLT5zdHlsZSgp
LT53aWR0aCgpIDogY2hpbGQtPnN0eWxlKCktPmhlaWdodCgpOwogfQogCiB2b2lkIFJlbmRlckZs
ZXhpYmxlQm94OjpzZXRGbG93QXdhcmVMb2dpY2FsSGVpZ2h0KExheW91dFVuaXQgc2l6ZSkKQEAg
LTI0Nyw2ICsyNTEsMTQgQEAgdm9pZCBSZW5kZXJGbGV4aWJsZUJveDo6c2V0Rmxvd0F3YXJlTG9n
aWNhbEhlaWdodChMYXlvdXRVbml0IHNpemUpCiAgICAgICAgIHNldFdpZHRoKHNpemUpOwogfQog
Cit2b2lkIFJlbmRlckZsZXhpYmxlQm94OjpzZXRGbG93QXdhcmVMb2dpY2FsV2lkdGgoTGF5b3V0
VW5pdCBzaXplKQoreworICAgIGlmIChpc0hvcml6b250YWxGbG93KCkpCisgICAgICAgIHNldFdp
ZHRoKHNpemUpOworICAgIGVsc2UKKyAgICAgICAgc2V0SGVpZ2h0KHNpemUpOworfQorCiBMYXlv
dXRVbml0IFJlbmRlckZsZXhpYmxlQm94OjpmbG93QXdhcmVMb2dpY2FsSGVpZ2h0Rm9yQ2hpbGQo
UmVuZGVyQm94KiBjaGlsZCkKIHsKICAgICByZXR1cm4gaXNIb3Jpem9udGFsRmxvdygpID8gY2hp
bGQtPmhlaWdodCgpIDogY2hpbGQtPndpZHRoKCk7CkBAIC02NTcsNyArNjY5LDcgQEAgdm9pZCBS
ZW5kZXJGbGV4aWJsZUJveDo6bGF5b3V0QW5kUGxhY2VDaGlsZHJlbklubGluZURpcmVjdGlvbihG
bGV4T3JkZXJJdGVyYXRvciYKIAogICAgIExheW91dFVuaXQgbG9naWNhbFRvcCA9IGZsb3dBd2Fy
ZUJvcmRlckJlZm9yZSgpICsgZmxvd0F3YXJlUGFkZGluZ0JlZm9yZSgpOwogICAgIExheW91dFVu
aXQgdG90YWxMb2dpY2FsV2lkdGggPSBmbG93QXdhcmVMb2dpY2FsV2lkdGgoKTsKLSAgICBpZiAo
aXNGbG93QXdhcmVMb2dpY2FsSGVpZ2h0QXV0bygpKQorICAgIGlmIChmbG93QXdhcmVMb2dpY2Fs
SGVpZ2h0TGVuZ3RoKCkuaXNBdXRvKCkpCiAgICAgICAgIHNldEZsb3dBd2FyZUxvZ2ljYWxIZWln
aHQoMCk7CiAgICAgTGF5b3V0VW5pdCBtYXhBc2NlbnQgPSAwLCBtYXhEZXNjZW50ID0gMDsgLy8g
VXNlZCB3aGVuIGZsZXgtYWxpZ246IGJhc2VsaW5lLgogICAgIHNpemVfdCBpID0gMDsKQEAgLTY3
NSw5ICs2ODcsOSBAQCB2b2lkIFJlbmRlckZsZXhpYmxlQm94OjpsYXlvdXRBbmRQbGFjZUNoaWxk
cmVuSW5saW5lRGlyZWN0aW9uKEZsZXhPcmRlckl0ZXJhdG9yJgogICAgICAgICAgICAgbWF4RGVz
Y2VudCA9IHN0ZDo6bWF4KG1heERlc2NlbnQsIGRlc2NlbnQpOwogCiAgICAgICAgICAgICAvLyBG
SVhNRTogYWRkIGZsb3dBd2FyZVNjcm9sbGJhckxvZ2ljYWxIZWlnaHQuCi0gICAgICAgICAgICBp
ZiAoaXNGbG93QXdhcmVMb2dpY2FsSGVpZ2h0QXV0bygpKQorICAgICAgICAgICAgaWYgKGZsb3dB
d2FyZUxvZ2ljYWxIZWlnaHRMZW5ndGgoKS5pc0F1dG8oKSkKICAgICAgICAgICAgICAgICBzZXRG
bG93QXdhcmVMb2dpY2FsSGVpZ2h0KHN0ZDo6bWF4KGZsb3dBd2FyZUxvZ2ljYWxIZWlnaHQoKSwg
Zmxvd0F3YXJlQm9yZGVyQW5kUGFkZGluZ0xvZ2ljYWxIZWlnaHQoKSArIGZsb3dBd2FyZU1hcmdp
bkxvZ2ljYWxIZWlnaHRGb3JDaGlsZChjaGlsZCkgKyBtYXhBc2NlbnQgKyBtYXhEZXNjZW50ICsg
c2Nyb2xsYmFyTG9naWNhbEhlaWdodCgpKSk7Ci0gICAgICAgIH0gZWxzZSBpZiAoaXNGbG93QXdh
cmVMb2dpY2FsSGVpZ2h0QXV0bygpKQorICAgICAgICB9IGVsc2UgaWYgKGZsb3dBd2FyZUxvZ2lj
YWxIZWlnaHRMZW5ndGgoKS5pc0F1dG8oKSkKICAgICAgICAgICAgIHNldEZsb3dBd2FyZUxvZ2lj
YWxIZWlnaHQoc3RkOjptYXgoZmxvd0F3YXJlTG9naWNhbEhlaWdodCgpLCBmbG93QXdhcmVCb3Jk
ZXJBbmRQYWRkaW5nTG9naWNhbEhlaWdodCgpICsgZmxvd0F3YXJlTWFyZ2luTG9naWNhbEhlaWdo
dEZvckNoaWxkKGNoaWxkKSArIGZsb3dBd2FyZUxvZ2ljYWxIZWlnaHRGb3JDaGlsZChjaGlsZCkg
KyBzY3JvbGxiYXJMb2dpY2FsSGVpZ2h0KCkpKTsKIAogICAgICAgICBzdGFydEVkZ2UgKz0gZmxv
d0F3YXJlTWFyZ2luU3RhcnRGb3JDaGlsZChjaGlsZCk7CkBAIC02OTMsNiArNzA1LDggQEAgdm9p
ZCBSZW5kZXJGbGV4aWJsZUJveDo6bGF5b3V0QW5kUGxhY2VDaGlsZHJlbklubGluZURpcmVjdGlv
bihGbGV4T3JkZXJJdGVyYXRvciYKICAgICAgICAgaWYgKGhhc1BhY2tpbmdTcGFjZShhdmFpbGFi
bGVGcmVlU3BhY2UsIHRvdGFsUG9zaXRpdmVGbGV4aWJpbGl0eSkgJiYgc3R5bGUoKS0+ZmxleFBh
Y2soKSA9PSBQYWNrSnVzdGlmeSAmJiBjaGlsZFNpemVzLnNpemUoKSA+IDEpCiAgICAgICAgICAg
ICBzdGFydEVkZ2UgKz0gYXZhaWxhYmxlRnJlZVNwYWNlIC8gKGNoaWxkU2l6ZXMuc2l6ZSgpIC0g
MSk7CiAgICAgfQorICAgIGlmIChpc0NvbHVtbkZsb3coKSAmJiBmbG93QXdhcmVMb2dpY2FsV2lk
dGhMZW5ndGgoKS5pc0F1dG8oKSkKKyAgICAgICAgc2V0Rmxvd0F3YXJlTG9naWNhbFdpZHRoKHN0
YXJ0RWRnZSk7CiAKICAgICBhbGlnbkNoaWxkcmVuQmxvY2tEaXJlY3Rpb24oaXRlcmF0b3IsIG1h
eEFzY2VudCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
RmxleGlibGVCb3guaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJv
eC5oCmluZGV4IDRkYzE5NDE3OTIxMjNhY2E0NTAxMWFjNTk3Mjk4NzEzMjEwZjMzODcuLmMxZTI5
YWVmMTNhMTZiYTU2MDI5NTY1NTY4MGM4MjAyZWM1MTdkNTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJveC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJveC5oCkBAIC01Nyw5ICs1NywxMSBAQCBwcml2YXRl
OgogICAgIGJvb2wgaXNDb2x1bW5GbG93KCkgY29uc3Q7CiAgICAgYm9vbCBpc0hvcml6b250YWxG
bG93KCkgY29uc3Q7CiAgICAgYm9vbCBpc0xlZnRUb1JpZ2h0RmxvdygpIGNvbnN0OwotICAgIGJv
b2wgaXNGbG93QXdhcmVMb2dpY2FsSGVpZ2h0QXV0bygpIGNvbnN0OworICAgIExlbmd0aCBmbG93
QXdhcmVMb2dpY2FsSGVpZ2h0TGVuZ3RoKCkgY29uc3Q7CisgICAgTGVuZ3RoIGZsb3dBd2FyZUxv
Z2ljYWxXaWR0aExlbmd0aCgpIGNvbnN0OwogICAgIExlbmd0aCBmbG93QXdhcmVMb2dpY2FsV2lk
dGhMZW5ndGhGb3JDaGlsZChSZW5kZXJCb3gqIGNoaWxkKSBjb25zdDsKICAgICB2b2lkIHNldEZs
b3dBd2FyZUxvZ2ljYWxIZWlnaHQoTGF5b3V0VW5pdCk7CisgICAgdm9pZCBzZXRGbG93QXdhcmVM
b2dpY2FsV2lkdGgoTGF5b3V0VW5pdCk7CiAgICAgTGF5b3V0VW5pdCBmbG93QXdhcmVMb2dpY2Fs
SGVpZ2h0Rm9yQ2hpbGQoUmVuZGVyQm94KiBjaGlsZCk7CiAgICAgTGF5b3V0VW5pdCBmbG93QXdh
cmVMb2dpY2FsV2lkdGhGb3JDaGlsZChSZW5kZXJCb3gqIGNoaWxkKTsKICAgICBMYXlvdXRVbml0
IGZsb3dBd2FyZUxvZ2ljYWxIZWlnaHQoKSBjb25zdDsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA2M2RjMjdhYjcwOTZkNTRh
NTBhZjhlMDkwYWE5MThiYzZkMDEwYmUxLi5hYmRlZjFjZGUyYTQwZDUyNTQwYzg5ZmJhOWMxMDRi
YzIyODcxOTdlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTEtMTAtMjYgIFRvbnkgQ2hhbmcg
IDx0b255QGNocm9taXVtLm9yZz4KKworICAgICAgICBmaXggc2l6aW5nIG9mIGF1dG8gc2l6ZWQg
ZmxleGJveAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NzA4MzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAq
IGNzczMvZmxleGJveC9jb2x1bW5zLWF1dG8tc2l6ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGNzczMvZmxleGJveC9jb2x1bW5zLWF1dG8tc2l6ZS5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiBjc3MzL2ZsZXhib3gvZmxleC1mbG93LW1hcmdpbnMtYXV0by1zaXplLWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogY3NzMy9mbGV4Ym94L2ZsZXgtZmxvdy1tYXJnaW5zLWF1dG8t
c2l6ZS5odG1sOiBBZGRlZC4KKyAgICAgICAgICAgIEEgYnVuY2ggb2YgdGhlc2UgY2FzZXMgZmFp
bCwgYnV0IHRoYXQncyBiZWNhdXNlIG9mIGJ1ZyA3MDc2OS4KKwogMjAxMS0xMC0yNiAgRGltaXRy
aSBHbGF6a292ICA8ZGdsYXprb3ZAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJFR1JFU1NJT04g
KHI5NDg4Nyk6IFNjcm9sbGluZyB0aGUgSFRNTCBzcGVjIGlzIG1vcmUgamVya3kgbm93IHRoYW4g
aXQgd2FzIChyZWdyZXNzaW9uKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9mbGV4Ym94
L2NvbHVtbnMtYXV0by1zaXplLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NzczMvZmxleGJv
eC9jb2x1bW5zLWF1dG8tc2l6ZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDBlOGI5MjQ5OGEx
YTc5YTc4YmEzMzZkMzFkZGM0ODQ4N2RjMThlZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2NzczMvZmxleGJveC9jb2x1bW5zLWF1dG8tc2l6ZS1leHBlY3RlZC50eHQKQEAgLTAsMCAr
MSw2IEBACitQQVNTCitQQVNTCitQQVNTCitQQVNTCitQQVNTCitQQVNTCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9jc3MzL2ZsZXhib3gvY29sdW1ucy1hdXRvLXNpemUuaHRtbCBiL0xheW91dFRl
c3RzL2NzczMvZmxleGJveC9jb2x1bW5zLWF1dG8tc2l6ZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQyODRh
OWMzYWM3NDk2YzkzNDM0MDczYjI3ZmU4OWYyYTIyYWViYmEKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9jc3MzL2ZsZXhib3gvY29sdW1ucy1hdXRvLXNpemUuaHRtbApAQCAtMCwwICsx
LDk0IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPHN0eWxlPgorYm9keSB7CisgICAgbWFy
Z2luOiAwOworfQorCisuZmxleGJveCB7CisgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4Ym94Owor
ICAgIC13ZWJraXQtZmxleC1mbG93OiBjb2x1bW47CisgICAgYmFja2dyb3VuZC1jb2xvcjogI2Fh
YTsKKyAgICBwb3NpdGlvbjogcmVsYXRpdmU7Cit9CisuaG9yaXpvbnRhbCB7CisgICAgd2lkdGg6
IDQwMHB4OworfQorCisuaG9yaXpvbnRhbCBkaXYgeworICAgIHdpZHRoOiAxMDAlOworfQorLnZl
cnRpY2FsIHsKKyAgICAtd2Via2l0LXdyaXRpbmctbW9kZTogdmVydGljYWwtcmw7CisgICAgaGVp
Z2h0OiA1MHB4OworfQorLnZlcnRpY2FsIGRpdiB7CisgICAgaGVpZ2h0OiAxMDAlOworfQorCisu
ZmxleGJveCA+IDpudGgtY2hpbGQoMSkgeworICAgIGJhY2tncm91bmQtY29sb3I6IGJsdWU7Cit9
CisuZmxleGJveCA+IDpudGgtY2hpbGQoMikgeworICAgIGJhY2tncm91bmQtY29sb3I6IGdyZWVu
OworfQorLmZsZXhib3ggPiA6bnRoLWNoaWxkKDMpIHsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiBy
ZWQ7Cit9CisuZmxleGJveCA+IDpudGgtY2hpbGQoNCkgeworICAgIGJhY2tncm91bmQtY29sb3I6
IG9yYW5nZTsKK30KKy5jaGlsZC1kaXYgeworICAgIGJhY2tncm91bmQtY29sb3I6IHllbGxvdzsK
K30KKzwvc3R5bGU+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikK
KyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7Cis8L3NjcmlwdD4KKzxzY3Jp
cHQgc3JjPSJyZXNvdXJjZXMvZmxleGJveC5qcyI+PC9zY3JpcHQ+Cis8Ym9keSBvbmxvYWQ9ImNo
ZWNrRmxleEJveGVuKCkiPgorPGRpdiBjbGFzcz0iZmxleGJveCBob3Jpem9udGFsIj4KKyAgPGRp
diBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjAiIHN0eWxlPSJoZWln
aHQ6IC13ZWJraXQtZmxleCgxIDAgMTBweCkiPjwvZGl2PgorICA8ZGl2IGRhdGEtZXhwZWN0ZWQt
aGVpZ2h0PSIxMCIgZGF0YS1vZmZzZXQteT0iMTAiIHN0eWxlPSJoZWlnaHQ6IDEwcHg7Ij48L2Rp
dj4KKyAgPGRpdiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjIwIj48
ZGl2IGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMCIgZGF0YS1vZmZzZXQteT0iMjAiIHN0eWxlPSJo
ZWlnaHQ6IDEwcHgiPjwvZGl2PjwvZGl2PgorPC9kaXY+CisKKzwhLS0gVGhlIGxhc3QgZGl2IGlz
IHNpemVkIHRvIDAgYmVjYXVzZSB0aGVyZSBpcyBubyBhdmFpbGFibGUgc3BhY2UsIGhvd2V2ZXIg
aXRzIGNoaWxkIG92ZXJmbG93cy4gLS0+Cis8ZGl2IGNsYXNzPSJmbGV4Ym94IGhvcml6b250YWwi
PgorICA8ZGl2IGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIwIiBkYXRhLW9mZnNldC15PSIwIiBzdHls
ZT0iaGVpZ2h0OiAtd2Via2l0LWZsZXgoMSkiPjwvZGl2PgorICA8ZGl2IGRhdGEtZXhwZWN0ZWQt
aGVpZ2h0PSIxMCIgZGF0YS1vZmZzZXQteT0iMCIgc3R5bGU9ImhlaWdodDogMTBweDsiPjwvZGl2
PgorICA8ZGl2IGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMCIgZGF0YS1vZmZzZXQteT0iMTAiIHN0
eWxlPSJoZWlnaHQ6IC13ZWJraXQtZmxleCgxIGF1dG8pIj48ZGl2IHN0eWxlPSJoZWlnaHQ6IDEw
cHgiPjwvZGl2PjwvZGl2PgorICA8ZGl2IGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIwIiBkYXRhLW9m
ZnNldC15PSIyMCIgc3R5bGU9ImhlaWdodDogLXdlYmtpdC1mbGV4KDEpIj48ZGl2IGRhdGEtZXhw
ZWN0ZWQtaGVpZ2h0PSIxMCIgZGF0YS1vZmZzZXQteT0iMjAiIGNsYXNzPSJjaGlsZC1kaXYiIHN0
eWxlPSJoZWlnaHQ6IDEwcHgiPjwvZGl2PjwvZGl2PgorPC9kaXY+CisKKzxkaXYgY2xhc3M9ImZs
ZXhib3ggaG9yaXpvbnRhbCI+CisgIDxkaXYgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwIiBkYXRh
LW9mZnNldC15PSIxMCIgc3R5bGU9ImhlaWdodDogLXdlYmtpdC1mbGV4KDEgMCAxMHB4KTsgbWFy
Z2luLXRvcDogMTBweDsiPjwvZGl2PgorICA8ZGl2IGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMCIg
ZGF0YS1vZmZzZXQteT0iMjAiIHN0eWxlPSJoZWlnaHQ6IDEwcHg7IG1hcmdpbi1ib3R0b206IDIw
cHg7Ij48L2Rpdj4KKyAgPGRpdiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMjAiIGRhdGEtb2Zmc2V0
LXk9IjUwIiBzdHlsZT0icGFkZGluZy10b3A6IDEwcHgiPjxkaXYgZGF0YS1leHBlY3RlZC1oZWln
aHQ9IjEwIiBkYXRhLW9mZnNldC15PSI2MCIgc3R5bGU9ImhlaWdodDogMTBweCI+PC9kaXY+PC9k
aXY+Cis8L2Rpdj4KKworPCEtLSBTYW1lIGFzIHByZXZpb3VzIHRlc3QgY2FzZSBidXQgd2l0aCBh
IGZsZXgtcGFjayBzZXQuICBTaW5jZSB0aGVyZSdzIG5vCisgICAgIGF2YWlsYWJsZSBzcGFjZSwg
aXQgc2hvdWxkIGxheW91dCB0aGUgc2FtZS4gLS0+Cis8ZGl2IGNsYXNzPSJmbGV4Ym94IGhvcml6
b250YWwiIHN0eWxlPSItd2Via2l0LWZsZXgtcGFjazoganVzdGlmeSI+CisgIDxkaXYgZGF0YS1l
eHBlY3RlZC1oZWlnaHQ9IjEwIiBkYXRhLW9mZnNldC15PSIxMCIgc3R5bGU9ImhlaWdodDogLXdl
YmtpdC1mbGV4KDEgMCAxMHB4KTsgbWFyZ2luLXRvcDogMTBweDsiPjwvZGl2PgorICA8ZGl2IGRh
dGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMCIgZGF0YS1vZmZzZXQteT0iMjAiIHN0eWxlPSJoZWlnaHQ6
IDEwcHg7IG1hcmdpbi1ib3R0b206IDIwcHg7Ij48L2Rpdj4KKyAgPGRpdiBkYXRhLWV4cGVjdGVk
LWhlaWdodD0iMjAiIGRhdGEtb2Zmc2V0LXk9IjUwIiBzdHlsZT0icGFkZGluZy10b3A6IDEwcHgi
PjxkaXYgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwIiBkYXRhLW9mZnNldC15PSI2MCIgc3R5bGU9
ImhlaWdodDogMTBweCI+PC9kaXY+PC9kaXY+Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0iZmxleGJv
eCB2ZXJ0aWNhbCI+CisgIDxkaXYgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAiIGRhdGEtb2Zmc2V0
LXg9IjIwIiBzdHlsZT0id2lkdGg6IC13ZWJraXQtZmxleCgxIDAgMTBweCkiPjwvZGl2PgorICA8
ZGl2IGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwIiBkYXRhLW9mZnNldC14PSIxMCIgc3R5bGU9Indp
ZHRoOiAxMHB4OyI+PC9kaXY+CisgIDxkaXYgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAiIGRhdGEt
b2Zmc2V0LXg9IjAiPjxkaXYgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAiIGRhdGEtb2Zmc2V0LXg9
IjAiIHN0eWxlPSJ3aWR0aDogMTBweCI+PC9kaXY+PC9kaXY+Cis8L2Rpdj4KKworPCEtLSBUaGUg
Zmlyc3QgZGl2IG92ZXJmbG93cyB0byB0aGUgbGVmdCwgc28gZ2l2ZSBpdCBhIG1hcmdpbi1sZWZ0
IHNvIHdlIGNhbiBzZWUgYm94IGl0IHBhaW50cy4gLS0+Cis8ZGl2IGNsYXNzPSJmbGV4Ym94IHZl
cnRpY2FsIiBzdHlsZT0ibWFyZ2luLWxlZnQ6IDEwMHB4OyI+CisgIDxkaXYgZGF0YS1leHBlY3Rl
ZC13aWR0aD0iMCIgZGF0YS1vZmZzZXQteD0iMjAiIHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4
KDEpIj48ZGl2IGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjUwIiBkYXRhLW9mZnNldC14PSItMzAiIGNs
YXNzPSJjaGlsZC1kaXYiIHN0eWxlPSJ3aWR0aDogNTBweCI+PC9kaXY+PC9kaXY+CisgIDxkaXYg
ZGF0YS1leHBlY3RlZC13aWR0aD0iMCIgZGF0YS1vZmZzZXQteD0iMjAiIHN0eWxlPSJ3aWR0aDog
LXdlYmtpdC1mbGV4KDEpIj48L2Rpdj4KKyAgPGRpdiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMCIg
ZGF0YS1vZmZzZXQteD0iMTAiIHN0eWxlPSJ3aWR0aDogMTBweDsiPjwvZGl2PgorICA8ZGl2IGRh
dGEtZXhwZWN0ZWQtd2lkdGg9IjEwIiBkYXRhLW9mZnNldC14PSIwIiBzdHlsZT0id2lkdGg6IC13
ZWJraXQtZmxleCgxIGF1dG8pIj48ZGl2IHN0eWxlPSJ3aWR0aDogMTBweCI+PC9kaXY+PC9kaXY+
Cis8L2Rpdj4KKworPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3Nz
My9mbGV4Ym94L2ZsZXgtZmxvdy1tYXJnaW5zLWF1dG8tc2l6ZS1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9jc3MzL2ZsZXhib3gvZmxleC1mbG93LW1hcmdpbnMtYXV0by1zaXplLWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi44ZGE4NjhjMDc0YjljNWQxY2FiNDVlZDE0NmEyN2ZjNjQzOTBlNWQ1
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3NzMy9mbGV4Ym94L2ZsZXgtZmxvdy1t
YXJnaW5zLWF1dG8tc2l6ZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw3MyBAQAoraG9yaXpvbnRh
bC10YiBydGwgcm93CitQQVNTCitob3Jpem9udGFsLXRiIGx0ciByb3cKK1BBU1MKK2hvcml6b250
YWwtdGIgcnRsIGNvbHVtbgorUEFTUworaG9yaXpvbnRhbC10YiBsdHIgY29sdW1uCitQQVNTCito
b3Jpem9udGFsLWJ0IHJ0bCByb3cKK1BBU1MKK2hvcml6b250YWwtYnQgbHRyIHJvdworUEFTUwor
aG9yaXpvbnRhbC1idCBydGwgY29sdW1uCitQQVNTCitob3Jpem9udGFsLWJ0IGx0ciBjb2x1bW4K
K1BBU1MKK3ZlcnRpY2FsLWxyIHJ0bCByb3cKK0ZBSUw6CitFeHBlY3RlZCA5MCBmb3Igd2lkdGgs
IGJ1dCBnb3QgNjAuIAorCis8ZGl2IGNsYXNzPSJjb250YWluZXIiIGRhdGEtZXhwZWN0ZWQtd2lk
dGg9IjkwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iOTAiPjxkaXYgY2xhc3M9ImZsZXhib3ggdmVy
dGljYWwtbHIgcnRsIHJvdyIgZGF0YS1vZmZzZXQteD0iNDAiIGRhdGEtb2Zmc2V0LXk9IjEwIj4K
KzxkaXYgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgoMSAyMHB4KTsgaGVpZ2h0OiAtd2Via2l0
LWZsZXgoMSAyMHB4KTsiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjIwIiBkYXRhLWV4cGVjdGVkLWhl
aWdodD0iMjAiIGRhdGEtb2Zmc2V0LXg9IjQ4IiBkYXRhLW9mZnNldC15PSIyMyI+PC9kaXY+Cis8
L2Rpdj48L2Rpdj4KK3ZlcnRpY2FsLWxyIGx0ciByb3cKK0ZBSUw6CitFeHBlY3RlZCA5MCBmb3Ig
d2lkdGgsIGJ1dCBnb3QgNjAuIAorCis8ZGl2IGNsYXNzPSJjb250YWluZXIiIGRhdGEtZXhwZWN0
ZWQtd2lkdGg9IjkwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iOTAiPjxkaXYgY2xhc3M9ImZsZXhi
b3ggdmVydGljYWwtbHIgbHRyIHJvdyIgZGF0YS1vZmZzZXQteD0iNDAiIGRhdGEtb2Zmc2V0LXk9
IjEwIj4KKzxkaXYgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgoMSAyMHB4KTsgaGVpZ2h0OiAt
d2Via2l0LWZsZXgoMSAyMHB4KTsiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjIwIiBkYXRhLWV4cGVj
dGVkLWhlaWdodD0iMjAiIGRhdGEtb2Zmc2V0LXg9IjQ4IiBkYXRhLW9mZnNldC15PSIyMyI+PC9k
aXY+Cis8L2Rpdj48L2Rpdj4KK3ZlcnRpY2FsLWxyIHJ0bCBjb2x1bW4KK0ZBSUw6CitFeHBlY3Rl
ZCA5MCBmb3Igd2lkdGgsIGJ1dCBnb3QgNjAuIAorCis8ZGl2IGNsYXNzPSJjb250YWluZXIiIGRh
dGEtZXhwZWN0ZWQtd2lkdGg9IjkwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iOTAiPjxkaXYgY2xh
c3M9ImZsZXhib3ggdmVydGljYWwtbHIgcnRsIGNvbHVtbiIgZGF0YS1vZmZzZXQteD0iNDAiIGRh
dGEtb2Zmc2V0LXk9IjEwIj4KKzxkaXYgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgoMSAyMHB4
KTsgaGVpZ2h0OiAtd2Via2l0LWZsZXgoMSAyMHB4KTsiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjIw
IiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMjAiIGRhdGEtb2Zmc2V0LXg9IjQ4IiBkYXRhLW9mZnNl
dC15PSIyMyI+PC9kaXY+Cis8L2Rpdj48L2Rpdj4KK3ZlcnRpY2FsLWxyIGx0ciBjb2x1bW4KK0ZB
SUw6CitFeHBlY3RlZCA5MCBmb3Igd2lkdGgsIGJ1dCBnb3QgNjAuIAorCis8ZGl2IGNsYXNzPSJj
b250YWluZXIiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjkwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0i
OTAiPjxkaXYgY2xhc3M9ImZsZXhib3ggdmVydGljYWwtbHIgbHRyIGNvbHVtbiIgZGF0YS1vZmZz
ZXQteD0iNDAiIGRhdGEtb2Zmc2V0LXk9IjEwIj4KKzxkaXYgc3R5bGU9IndpZHRoOiAtd2Via2l0
LWZsZXgoMSAyMHB4KTsgaGVpZ2h0OiAtd2Via2l0LWZsZXgoMSAyMHB4KTsiIGRhdGEtZXhwZWN0
ZWQtd2lkdGg9IjIwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMjAiIGRhdGEtb2Zmc2V0LXg9IjQ4
IiBkYXRhLW9mZnNldC15PSIyMyI+PC9kaXY+Cis8L2Rpdj48L2Rpdj4KK3ZlcnRpY2FsLXJsIHJ0
bCByb3cKK0ZBSUw6CitFeHBlY3RlZCA5MCBmb3Igd2lkdGgsIGJ1dCBnb3QgNjAuIAorCis8ZGl2
IGNsYXNzPSJjb250YWluZXIiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjkwIiBkYXRhLWV4cGVjdGVk
LWhlaWdodD0iOTAiPjxkaXYgY2xhc3M9ImZsZXhib3ggdmVydGljYWwtcmwgcnRsIHJvdyIgZGF0
YS1vZmZzZXQteD0iNDAiIGRhdGEtb2Zmc2V0LXk9IjEwIj4KKzxkaXYgc3R5bGU9IndpZHRoOiAt
d2Via2l0LWZsZXgoMSAyMHB4KTsgaGVpZ2h0OiAtd2Via2l0LWZsZXgoMSAyMHB4KTsiIGRhdGEt
ZXhwZWN0ZWQtd2lkdGg9IjIwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMjAiIGRhdGEtb2Zmc2V0
LXg9IjQ4IiBkYXRhLW9mZnNldC15PSIyMyI+PC9kaXY+Cis8L2Rpdj48L2Rpdj4KK3ZlcnRpY2Fs
LXJsIGx0ciByb3cKK0ZBSUw6CitFeHBlY3RlZCA5MCBmb3Igd2lkdGgsIGJ1dCBnb3QgNjAuIAor
Cis8ZGl2IGNsYXNzPSJjb250YWluZXIiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjkwIiBkYXRhLWV4
cGVjdGVkLWhlaWdodD0iOTAiPjxkaXYgY2xhc3M9ImZsZXhib3ggdmVydGljYWwtcmwgbHRyIHJv
dyIgZGF0YS1vZmZzZXQteD0iNDAiIGRhdGEtb2Zmc2V0LXk9IjEwIj4KKzxkaXYgc3R5bGU9Indp
ZHRoOiAtd2Via2l0LWZsZXgoMSAyMHB4KTsgaGVpZ2h0OiAtd2Via2l0LWZsZXgoMSAyMHB4KTsi
IGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjIwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMjAiIGRhdGEt
b2Zmc2V0LXg9IjQ4IiBkYXRhLW9mZnNldC15PSIyMyI+PC9kaXY+Cis8L2Rpdj48L2Rpdj4KK3Zl
cnRpY2FsLXJsIHJ0bCBjb2x1bW4KK0ZBSUw6CitFeHBlY3RlZCA5MCBmb3Igd2lkdGgsIGJ1dCBn
b3QgNjAuIAorCis8ZGl2IGNsYXNzPSJjb250YWluZXIiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9Ijkw
IiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iOTAiPjxkaXYgY2xhc3M9ImZsZXhib3ggdmVydGljYWwt
cmwgcnRsIGNvbHVtbiIgZGF0YS1vZmZzZXQteD0iNDAiIGRhdGEtb2Zmc2V0LXk9IjEwIj4KKzxk
aXYgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgoMSAyMHB4KTsgaGVpZ2h0OiAtd2Via2l0LWZs
ZXgoMSAyMHB4KTsiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjIwIiBkYXRhLWV4cGVjdGVkLWhlaWdo
dD0iMjAiIGRhdGEtb2Zmc2V0LXg9IjQ4IiBkYXRhLW9mZnNldC15PSIyMyI+PC9kaXY+Cis8L2Rp
dj48L2Rpdj4KK3ZlcnRpY2FsLXJsIGx0ciBjb2x1bW4KK0ZBSUw6CitFeHBlY3RlZCA5MCBmb3Ig
d2lkdGgsIGJ1dCBnb3QgNjAuIAorCis8ZGl2IGNsYXNzPSJjb250YWluZXIiIGRhdGEtZXhwZWN0
ZWQtd2lkdGg9IjkwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iOTAiPjxkaXYgY2xhc3M9ImZsZXhi
b3ggdmVydGljYWwtcmwgbHRyIGNvbHVtbiIgZGF0YS1vZmZzZXQteD0iNDAiIGRhdGEtb2Zmc2V0
LXk9IjEwIj4KKzxkaXYgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgoMSAyMHB4KTsgaGVpZ2h0
OiAtd2Via2l0LWZsZXgoMSAyMHB4KTsiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjIwIiBkYXRhLWV4
cGVjdGVkLWhlaWdodD0iMjAiIGRhdGEtb2Zmc2V0LXg9IjQ4IiBkYXRhLW9mZnNldC15PSIyMyI+
PC9kaXY+Cis8L2Rpdj48L2Rpdj4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3NzMy9mbGV4
Ym94L2ZsZXgtZmxvdy1tYXJnaW5zLWF1dG8tc2l6ZS5odG1sIGIvTGF5b3V0VGVzdHMvY3NzMy9m
bGV4Ym94L2ZsZXgtZmxvdy1tYXJnaW5zLWF1dG8tc2l6ZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY4ZWUy
N2JlOWRhMGVjZWQ0M2JjZDAzOTUxN2FjODhmMjlhZTFhZTUKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9jc3MzL2ZsZXhib3gvZmxleC1mbG93LW1hcmdpbnMtYXV0by1zaXplLmh0bWwK
QEAgLTAsMCArMSw5NiBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxzdHlsZT4KKy5jb250
YWluZXIgeworICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiBw
aW5rOworICAgIG91dGxpbmU6IDFweCBzb2xpZCBibGFjazsKKyAgICBkaXNwbGF5OiBpbmxpbmUt
YmxvY2s7Cit9CisuZmxleGJveCB7CisgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4Ym94OworICAg
IGJhY2tncm91bmQtY29sb3I6IGdyZXk7CisgICAgbWFyZ2luOiAxMHB4IDIwcHggMzBweCA0MHB4
OworfQorLnRpdGxlIHsKKyAgICBtYXJnaW4tdG9wOiAxZW07Cit9CisubHRyIHsKKyAgICBkaXJl
Y3Rpb246IGx0cjsKK30KKy5ydGwgeworICAgIGRpcmVjdGlvbjogcnRsOworfQorLmhvcml6b250
YWwtdGIgeworICAgIC13ZWJraXQtd3JpdGluZy1tb2RlOiBob3Jpem9udGFsLXRiOworfQorLmhv
cml6b250YWwtYnQgeworICAgIC13ZWJraXQtd3JpdGluZy1tb2RlOiBob3Jpem9udGFsLWJ0Owor
fQorLnZlcnRpY2FsLXJsIHsKKyAgICAtd2Via2l0LXdyaXRpbmctbW9kZTogdmVydGljYWwtcmw7
Cit9CisudmVydGljYWwtbHIgeworICAgIC13ZWJraXQtd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1s
cjsKK30KKy5yb3cgeworICAgIC13ZWJraXQtZmxleC1mbG93OiByb3c7Cit9Cisucm93LXJldmVy
c2UgeworICAgIC13ZWJraXQtZmxleC1mbG93OiByb3ctcmV2ZXJzZTsKK30KKy5jb2x1bW4gewor
ICAgIC13ZWJraXQtZmxleC1mbG93OiBjb2x1bW47Cit9CisuY29sdW1uLXJldmVyc2UgeworICAg
IC13ZWJraXQtZmxleC1mbG93OiBjb2x1bW4tcmV2ZXJzZTsKK30KKy5mbGV4Ym94ID4gZGl2IHsK
KyAgICBtYXJnaW46IDEzcHggMnB4IDE3cHggOHB4OworICAgIGJhY2tncm91bmQtY29sb3I6IGJs
dWU7Cit9Cis8L3N0eWxlPgorPHNjcmlwdD4KK2lmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xs
ZXIpCisgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOworPC9zY3JpcHQ+Cis8
c2NyaXB0IHNyYz0icmVzb3VyY2VzL2ZsZXhib3guanMiPjwvc2NyaXB0PgorPGJvZHkgb25sb2Fk
PSJjaGVja0ZsZXhCb3hlbigpIj4KKworPHNjcmlwdD4KKworLy8gVGhlIHZlcnRpY2FsIHRlc3Qg
Y2FzZXMgYXJlIGZhaWxpbmcgYmVjYXVzZSBvZiB0aGUgb3J0aG9nb25hbCB3cml0aW5nIG1vZGVz
LgorLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcwNzY5Cit2YXIg
d3JpdGluZ01vZGVzID0gWydob3Jpem9udGFsLXRiJywgJ2hvcml6b250YWwtYnQnLCAndmVydGlj
YWwtbHInLCAndmVydGljYWwtcmwnXTsKKy8vIEZJWE1FOiBUZXN0IHJvdy1yZXZlcnNlIGFuZCBj
b2x1bW4tcmV2ZXJzZS4KK3ZhciBmbGV4Rmxvd3MgPSBbJ3JvdycsICdjb2x1bW4nXTsKK3ZhciBk
aXJlY3Rpb25zID0gWydydGwnLCAnbHRyJ107CisKK3dyaXRpbmdNb2Rlcy5mb3JFYWNoKGZ1bmN0
aW9uKHdyaXRpbmdNb2RlKSB7CisgICAgZmxleEZsb3dzLmZvckVhY2goZnVuY3Rpb24oZmxleEZs
b3cpIHsKKyAgICAgICAgZGlyZWN0aW9ucy5mb3JFYWNoKGZ1bmN0aW9uKGRpcmVjdGlvbikgewor
ICAgICAgICAgICAgdmFyIGZsZXhib3hDbGFzc05hbWUgPSB3cml0aW5nTW9kZSArICcgJyArIGRp
cmVjdGlvbiArICcgJyArIGZsZXhGbG93OworICAgICAgICAgICAgdmFyIHRpdGxlID0gZG9jdW1l
bnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7CisgICAgICAgICAgICB0aXRsZS5jbGFzc05hbWUgPSAn
dGl0bGUnOworICAgICAgICAgICAgdGl0bGUuaW5uZXJIVE1MID0gZmxleGJveENsYXNzTmFtZTsK
KyAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodGl0bGUpOworCisgICAgICAg
ICAgICB2YXIgZmxleGJveEV4cGVjdGF0aW9ucyA9ICdkYXRhLW9mZnNldC14PSI0MCIgZGF0YS1v
ZmZzZXQteT0iMTAiJzsKKyAgICAgICAgICAgIHZhciBmbGV4SXRlbUV4cGVjdGF0aW9ucyA9ICdk
YXRhLWV4cGVjdGVkLXdpZHRoPSIyMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjIwIiBkYXRhLW9m
ZnNldC14PSI0OCIgZGF0YS1vZmZzZXQteT0iMjMiJzsKKworICAgICAgICAgICAgdmFyIGNvbnRh
aW5lciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOworICAgICAgICAgICAgY29udGFp
bmVyLmNsYXNzTmFtZSA9ICdjb250YWluZXInOworICAgICAgICAgICAgY29udGFpbmVyLnNldEF0
dHJpYnV0ZSgnZGF0YS1leHBlY3RlZC13aWR0aCcsIDkwKTsKKyAgICAgICAgICAgIGNvbnRhaW5l
ci5zZXRBdHRyaWJ1dGUoJ2RhdGEtZXhwZWN0ZWQtaGVpZ2h0JywgOTApOworCisgICAgICAgICAg
ICBjb250YWluZXIuaW5uZXJIVE1MID0gJzxkaXYgY2xhc3M9ImZsZXhib3ggJyArIGZsZXhib3hD
bGFzc05hbWUgKyAnIiAnICsgZmxleGJveEV4cGVjdGF0aW9ucyArICc+XG4nICsKKyAgICAgICAg
ICAgICAgICAnPGRpdiBzdHlsZT0id2lkdGg6IC13ZWJraXQtZmxleCgxIDIwcHgpOyBoZWlnaHQ6
IC13ZWJraXQtZmxleCgxIDIwcHgpOyIgJyArIGZsZXhJdGVtRXhwZWN0YXRpb25zICsgJz48L2Rp
dj5cbicgKworICAgICAgICAgICAgJzwvZGl2Pic7CisKKyAgICAgICAgICAgIGRvY3VtZW50LmJv
ZHkuYXBwZW5kQ2hpbGQoY29udGFpbmVyKTsKKyAgICAgICAgfSkKKyAgICB9KQorfSkKKzwvc2Ny
aXB0PgorPC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>112727</attachid>
            <date>2011-10-27 12:15:14 -0700</date>
            <delta_ts>2011-10-27 13:30:29 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-70839-20111027121519.patch</filename>
            <type>text/plain</type>
            <size>14496</size>
            <attacher name="Tony Chang">tony</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTg2MDAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAyYzAwZjk4ZWI1M2FlYmUy
MjlkODFjNzEwN2YwYTU5ZGRhODAxZWQ5Li40OGVmZjQ1OTNkOGNiMWU2OTI3YmMwMTJkYWMxOTdi
MDEyOTZhMDY0IDEwMDc1NQotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAKKzIwMTEtMTAtMjcgIFRvbnkg
Q2hhbmcgIDx0b255QGNocm9taXVtLm9yZz4KKworICAgICAgICBmaXggc2l6aW5nIG9mIGF1dG8g
c2l6ZWQgZmxleGJveAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NzA4MzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBDb3JyZWN0bHkgc2V0IHRoZSBoZWlnaHQgb2YgdGhlIGZsZXhib3ggd2hlbiB3ZSBoYXZl
IGEgY29sdW1uIGZsb3cKKyAgICAgICAgYW5kIHRoZSBoZWlnaHQgaXMgYXV0by4KKworICAgICAg
ICBUZXN0czogY3NzMy9mbGV4Ym94L2NvbHVtbnMtYXV0by1zaXplLmh0bWwKKyAgICAgICAgICAg
ICAgIGNzczMvZmxleGJveC9mbGV4LWZsb3ctbWFyZ2lucy1hdXRvLXNpemUuaHRtbAorCisgICAg
ICAgICogcmVuZGVyaW5nL1JlbmRlckZsZXhpYmxlQm94LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OlJlbmRlckZsZXhpYmxlQm94OjpsYXlvdXRCbG9jayk6IEFsd2F5cyBjb21wdXRlTG9naWNhbEhl
aWdodCgpIGFmdGVyIHdlJ3JlIGRvbmUgcGxhY2luZyBjaGlsZHJlbi4KKyAgICAgICAgKFdlYkNv
cmU6OlJlbmRlckZsZXhpYmxlQm94OjpsYXlvdXRBbmRQbGFjZUNoaWxkcmVuSW5saW5lRGlyZWN0
aW9uKTogU2V0IHRoZSBoZWlnaHQgYXMgd2UgcGxhY2UgY2hpbGRyZW4uCisKIDIwMTEtMTAtMjcg
IE1paG5lYSBPdmlkZW5pZSAgPG1paG5lYUBhZG9iZS5jb20+CiAKICAgICAgICAgW0NTU1JlZ2lv
bnNdRmxhZyByZWdpb25zIHdpdGggY3VzdG9tIHN0eWxpbmcKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJveC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyRmxleGlibGVCb3guY3BwCmluZGV4IGY5NGY2N2ZlNTk2OTJjN2JlOGVm
OTQwZDZlNmFmODkyNzMzM2VhNmUuLjA1MmFhYWRjNjYwMWZhNzk4MzZjNDRmY2YwOGM1MmQ2NmU5
ZDhlMjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGbGV4aWJs
ZUJveC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckZsZXhpYmxlQm94
LmNwcApAQCAtMTgzLDEwICsxODMsNyBAQCB2b2lkIFJlbmRlckZsZXhpYmxlQm94OjpsYXlvdXRC
bG9jayhib29sIHJlbGF5b3V0Q2hpbGRyZW4sIGludCwgQmxvY2tMYXlvdXRQYXNzKQogCiAgICAg
bGF5b3V0SW5saW5lRGlyZWN0aW9uKHJlbGF5b3V0Q2hpbGRyZW4pOwogCi0gICAgaWYgKGlzQ29s
dW1uRmxvdygpKQotICAgICAgICBjb21wdXRlTG9naWNhbFdpZHRoKCk7Ci0gICAgZWxzZQotICAg
ICAgICBjb21wdXRlTG9naWNhbEhlaWdodCgpOworICAgIGNvbXB1dGVMb2dpY2FsSGVpZ2h0KCk7
CiAKICAgICBpZiAoc2l6ZSgpICE9IHByZXZpb3VzU2l6ZSkKICAgICAgICAgcmVsYXlvdXRDaGls
ZHJlbiA9IHRydWU7CkBAIC02OTEsOCArNjg4LDEwIEBAIHZvaWQgUmVuZGVyRmxleGlibGVCb3g6
OmxheW91dEFuZFBsYWNlQ2hpbGRyZW5JbmxpbmVEaXJlY3Rpb24oRmxleE9yZGVySXRlcmF0b3Im
CiAKICAgICAgICAgaWYgKGhhc1BhY2tpbmdTcGFjZShhdmFpbGFibGVGcmVlU3BhY2UsIHRvdGFs
UG9zaXRpdmVGbGV4aWJpbGl0eSkgJiYgc3R5bGUoKS0+ZmxleFBhY2soKSA9PSBQYWNrSnVzdGlm
eSAmJiBjaGlsZFNpemVzLnNpemUoKSA+IDEpCiAgICAgICAgICAgICBzdGFydEVkZ2UgKz0gYXZh
aWxhYmxlRnJlZVNwYWNlIC8gKGNoaWxkU2l6ZXMuc2l6ZSgpIC0gMSk7Ci0gICAgfQogCisgICAg
ICAgIGlmIChpc0NvbHVtbkZsb3coKSkKKyAgICAgICAgICAgIHNldExvZ2ljYWxIZWlnaHQoc3Rh
cnRFZGdlKTsKKyAgICB9CiAgICAgYWxpZ25DaGlsZHJlbkJsb2NrRGlyZWN0aW9uKGl0ZXJhdG9y
LCBtYXhBc2NlbnQpOwogfQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMTFhYTM1YjE5OGE3MjAwNmZkMWFkZWJjN2U2NDY3
ZTliNmJjZjM5NC4uMzYxMGVjMjE3Yzg1YWUxNTAzMjMwOTI2MWI0ODhmMmFlNjJjZTViMCAxMDA3
NTUKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDE2IEBACisyMDExLTEwLTI3ICBUb255IENoYW5nICA8dG9ueUBjaHJvbWl1
bS5vcmc+CisKKyAgICAgICAgZml4IHNpemluZyBvZiBhdXRvIHNpemVkIGZsZXhib3gKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcwODM5CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBjc3MzL2ZsZXhib3gv
Y29sdW1ucy1hdXRvLXNpemUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBjc3MzL2Zs
ZXhib3gvY29sdW1ucy1hdXRvLXNpemUuaHRtbDogQWRkZWQuCisgICAgICAgICogY3NzMy9mbGV4
Ym94L2ZsZXgtZmxvdy1tYXJnaW5zLWF1dG8tc2l6ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGNzczMvZmxleGJveC9mbGV4LWZsb3ctbWFyZ2lucy1hdXRvLXNpemUuaHRtbDogQWRk
ZWQuCisgICAgICAgICAgICBBIGJ1bmNoIG9mIHRoZXNlIGNhc2VzIGZhaWwsIGJ1dCB0aGF0J3Mg
YmVjYXVzZSBvZiBidWcgNzA3NjkuCisKIDIwMTEtMTAtMjcgIE1paG5lYSBPdmlkZW5pZSAgPG1p
aG5lYUBhZG9iZS5jb20+CiAKICAgICAgICAgW0NTU1JlZ2lvbnNdRmxhZyByZWdpb25zIHdpdGgg
Y3VzdG9tIHN0eWxpbmcKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmxleGJveC9jb2x1
bW5zLWF1dG8tc2l6ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jc3MzL2ZsZXhib3gvY29s
dW1ucy1hdXRvLXNpemUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjAwZThiOTI0OThhMWE3OWE3
OGJhMzM2ZDMxZGRjNDg0ODdkYzE4ZWUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9j
c3MzL2ZsZXhib3gvY29sdW1ucy1hdXRvLXNpemUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNiBA
QAorUEFTUworUEFTUworUEFTUworUEFTUworUEFTUworUEFTUwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvY3NzMy9mbGV4Ym94L2NvbHVtbnMtYXV0by1zaXplLmh0bWwgYi9MYXlvdXRUZXN0cy9j
c3MzL2ZsZXhib3gvY29sdW1ucy1hdXRvLXNpemUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40Mjg0YTljM2Fj
NzQ5NmM5MzQzNDA3M2IyN2ZlODlmMmEyMmFlYmJhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvY3NzMy9mbGV4Ym94L2NvbHVtbnMtYXV0by1zaXplLmh0bWwKQEAgLTAsMCArMSw5NCBA
QAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxzdHlsZT4KK2JvZHkgeworICAgIG1hcmdpbjog
MDsKK30KKworLmZsZXhib3ggeworICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleGJveDsKKyAgICAt
d2Via2l0LWZsZXgtZmxvdzogY29sdW1uOworICAgIGJhY2tncm91bmQtY29sb3I6ICNhYWE7Cisg
ICAgcG9zaXRpb246IHJlbGF0aXZlOworfQorLmhvcml6b250YWwgeworICAgIHdpZHRoOiA0MDBw
eDsKK30KKworLmhvcml6b250YWwgZGl2IHsKKyAgICB3aWR0aDogMTAwJTsKK30KKy52ZXJ0aWNh
bCB7CisgICAgLXdlYmtpdC13cml0aW5nLW1vZGU6IHZlcnRpY2FsLXJsOworICAgIGhlaWdodDog
NTBweDsKK30KKy52ZXJ0aWNhbCBkaXYgeworICAgIGhlaWdodDogMTAwJTsKK30KKworLmZsZXhi
b3ggPiA6bnRoLWNoaWxkKDEpIHsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibHVlOworfQorLmZs
ZXhib3ggPiA6bnRoLWNoaWxkKDIpIHsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsKK30K
Ky5mbGV4Ym94ID4gOm50aC1jaGlsZCgzKSB7CisgICAgYmFja2dyb3VuZC1jb2xvcjogcmVkOwor
fQorLmZsZXhib3ggPiA6bnRoLWNoaWxkKDQpIHsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiBvcmFu
Z2U7Cit9CisuY2hpbGQtZGl2IHsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiB5ZWxsb3c7Cit9Cis8
L3N0eWxlPgorPHNjcmlwdD4KK2lmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAg
bGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNy
Yz0icmVzb3VyY2VzL2ZsZXhib3guanMiPjwvc2NyaXB0PgorPGJvZHkgb25sb2FkPSJjaGVja0Zs
ZXhCb3hlbigpIj4KKzxkaXYgY2xhc3M9ImZsZXhib3ggaG9yaXpvbnRhbCI+CisgIDxkaXYgZGF0
YS1leHBlY3RlZC1oZWlnaHQ9IjEwIiBkYXRhLW9mZnNldC15PSIwIiBzdHlsZT0iaGVpZ2h0OiAt
d2Via2l0LWZsZXgoMSAwIDEwcHgpIj48L2Rpdj4KKyAgPGRpdiBkYXRhLWV4cGVjdGVkLWhlaWdo
dD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjEwIiBzdHlsZT0iaGVpZ2h0OiAxMHB4OyI+PC9kaXY+Cisg
IDxkaXYgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwIiBkYXRhLW9mZnNldC15PSIyMCI+PGRpdiBk
YXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjIwIiBzdHlsZT0iaGVpZ2h0
OiAxMHB4Ij48L2Rpdj48L2Rpdj4KKzwvZGl2PgorCis8IS0tIFRoZSBsYXN0IGRpdiBpcyBzaXpl
ZCB0byAwIGJlY2F1c2UgdGhlcmUgaXMgbm8gYXZhaWxhYmxlIHNwYWNlLCBob3dldmVyIGl0cyBj
aGlsZCBvdmVyZmxvd3MuIC0tPgorPGRpdiBjbGFzcz0iZmxleGJveCBob3Jpem9udGFsIj4KKyAg
PGRpdiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMCIgZGF0YS1vZmZzZXQteT0iMCIgc3R5bGU9Imhl
aWdodDogLXdlYmtpdC1mbGV4KDEpIj48L2Rpdj4KKyAgPGRpdiBkYXRhLWV4cGVjdGVkLWhlaWdo
dD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjAiIHN0eWxlPSJoZWlnaHQ6IDEwcHg7Ij48L2Rpdj4KKyAg
PGRpdiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjEwIiBzdHlsZT0i
aGVpZ2h0OiAtd2Via2l0LWZsZXgoMSBhdXRvKSI+PGRpdiBzdHlsZT0iaGVpZ2h0OiAxMHB4Ij48
L2Rpdj48L2Rpdj4KKyAgPGRpdiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMCIgZGF0YS1vZmZzZXQt
eT0iMjAiIHN0eWxlPSJoZWlnaHQ6IC13ZWJraXQtZmxleCgxKSI+PGRpdiBkYXRhLWV4cGVjdGVk
LWhlaWdodD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjIwIiBjbGFzcz0iY2hpbGQtZGl2IiBzdHlsZT0i
aGVpZ2h0OiAxMHB4Ij48L2Rpdj48L2Rpdj4KKzwvZGl2PgorCis8ZGl2IGNsYXNzPSJmbGV4Ym94
IGhvcml6b250YWwiPgorICA8ZGl2IGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMCIgZGF0YS1vZmZz
ZXQteT0iMTAiIHN0eWxlPSJoZWlnaHQ6IC13ZWJraXQtZmxleCgxIDAgMTBweCk7IG1hcmdpbi10
b3A6IDEwcHg7Ij48L2Rpdj4KKyAgPGRpdiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAiIGRhdGEt
b2Zmc2V0LXk9IjIwIiBzdHlsZT0iaGVpZ2h0OiAxMHB4OyBtYXJnaW4tYm90dG9tOiAyMHB4OyI+
PC9kaXY+CisgIDxkaXYgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjIwIiBkYXRhLW9mZnNldC15PSI1
MCIgc3R5bGU9InBhZGRpbmctdG9wOiAxMHB4Ij48ZGl2IGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIx
MCIgZGF0YS1vZmZzZXQteT0iNjAiIHN0eWxlPSJoZWlnaHQ6IDEwcHgiPjwvZGl2PjwvZGl2Pgor
PC9kaXY+CisKKzwhLS0gU2FtZSBhcyBwcmV2aW91cyB0ZXN0IGNhc2UgYnV0IHdpdGggYSBmbGV4
LXBhY2sgc2V0LiAgU2luY2UgdGhlcmUncyBubworICAgICBhdmFpbGFibGUgc3BhY2UsIGl0IHNo
b3VsZCBsYXlvdXQgdGhlIHNhbWUuIC0tPgorPGRpdiBjbGFzcz0iZmxleGJveCBob3Jpem9udGFs
IiBzdHlsZT0iLXdlYmtpdC1mbGV4LXBhY2s6IGp1c3RpZnkiPgorICA8ZGl2IGRhdGEtZXhwZWN0
ZWQtaGVpZ2h0PSIxMCIgZGF0YS1vZmZzZXQteT0iMTAiIHN0eWxlPSJoZWlnaHQ6IC13ZWJraXQt
ZmxleCgxIDAgMTBweCk7IG1hcmdpbi10b3A6IDEwcHg7Ij48L2Rpdj4KKyAgPGRpdiBkYXRhLWV4
cGVjdGVkLWhlaWdodD0iMTAiIGRhdGEtb2Zmc2V0LXk9IjIwIiBzdHlsZT0iaGVpZ2h0OiAxMHB4
OyBtYXJnaW4tYm90dG9tOiAyMHB4OyI+PC9kaXY+CisgIDxkaXYgZGF0YS1leHBlY3RlZC1oZWln
aHQ9IjIwIiBkYXRhLW9mZnNldC15PSI1MCIgc3R5bGU9InBhZGRpbmctdG9wOiAxMHB4Ij48ZGl2
IGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMCIgZGF0YS1vZmZzZXQteT0iNjAiIHN0eWxlPSJoZWln
aHQ6IDEwcHgiPjwvZGl2PjwvZGl2PgorPC9kaXY+CisKKzxkaXYgY2xhc3M9ImZsZXhib3ggdmVy
dGljYWwiPgorICA8ZGl2IGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwIiBkYXRhLW9mZnNldC14PSIy
MCIgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgoMSAwIDEwcHgpIj48L2Rpdj4KKyAgPGRpdiBk
YXRhLWV4cGVjdGVkLXdpZHRoPSIxMCIgZGF0YS1vZmZzZXQteD0iMTAiIHN0eWxlPSJ3aWR0aDog
MTBweDsiPjwvZGl2PgorICA8ZGl2IGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwIiBkYXRhLW9mZnNl
dC14PSIwIj48ZGl2IGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjEwIiBkYXRhLW9mZnNldC14PSIwIiBz
dHlsZT0id2lkdGg6IDEwcHgiPjwvZGl2PjwvZGl2PgorPC9kaXY+CisKKzwhLS0gVGhlIGZpcnN0
IGRpdiBvdmVyZmxvd3MgdG8gdGhlIGxlZnQsIHNvIGdpdmUgaXQgYSBtYXJnaW4tbGVmdCBzbyB3
ZSBjYW4gc2VlIGJveCBpdCBwYWludHMuIC0tPgorPGRpdiBjbGFzcz0iZmxleGJveCB2ZXJ0aWNh
bCIgc3R5bGU9Im1hcmdpbi1sZWZ0OiAxMDBweDsiPgorICA8ZGl2IGRhdGEtZXhwZWN0ZWQtd2lk
dGg9IjAiIGRhdGEtb2Zmc2V0LXg9IjIwIiBzdHlsZT0id2lkdGg6IC13ZWJraXQtZmxleCgxKSI+
PGRpdiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI1MCIgZGF0YS1vZmZzZXQteD0iLTMwIiBjbGFzcz0i
Y2hpbGQtZGl2IiBzdHlsZT0id2lkdGg6IDUwcHgiPjwvZGl2PjwvZGl2PgorICA8ZGl2IGRhdGEt
ZXhwZWN0ZWQtd2lkdGg9IjAiIGRhdGEtb2Zmc2V0LXg9IjIwIiBzdHlsZT0id2lkdGg6IC13ZWJr
aXQtZmxleCgxKSI+PC9kaXY+CisgIDxkaXYgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAiIGRhdGEt
b2Zmc2V0LXg9IjEwIiBzdHlsZT0id2lkdGg6IDEwcHg7Ij48L2Rpdj4KKyAgPGRpdiBkYXRhLWV4
cGVjdGVkLXdpZHRoPSIxMCIgZGF0YS1vZmZzZXQteD0iMCIgc3R5bGU9IndpZHRoOiAtd2Via2l0
LWZsZXgoMSBhdXRvKSI+PGRpdiBzdHlsZT0id2lkdGg6IDEwcHgiPjwvZGl2PjwvZGl2PgorPC9k
aXY+CisKKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmxl
eGJveC9mbGV4LWZsb3ctbWFyZ2lucy1hdXRvLXNpemUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvY3NzMy9mbGV4Ym94L2ZsZXgtZmxvdy1tYXJnaW5zLWF1dG8tc2l6ZS1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uOGRhODY4YzA3NGI5YzVkMWNhYjQ1ZWQxNDZhMjdmYzY0MzkwZTVkNQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NzczMvZmxleGJveC9mbGV4LWZsb3ctbWFyZ2lu
cy1hdXRvLXNpemUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNzMgQEAKK2hvcml6b250YWwtdGIg
cnRsIHJvdworUEFTUworaG9yaXpvbnRhbC10YiBsdHIgcm93CitQQVNTCitob3Jpem9udGFsLXRi
IHJ0bCBjb2x1bW4KK1BBU1MKK2hvcml6b250YWwtdGIgbHRyIGNvbHVtbgorUEFTUworaG9yaXpv
bnRhbC1idCBydGwgcm93CitQQVNTCitob3Jpem9udGFsLWJ0IGx0ciByb3cKK1BBU1MKK2hvcml6
b250YWwtYnQgcnRsIGNvbHVtbgorUEFTUworaG9yaXpvbnRhbC1idCBsdHIgY29sdW1uCitQQVNT
Cit2ZXJ0aWNhbC1sciBydGwgcm93CitGQUlMOgorRXhwZWN0ZWQgOTAgZm9yIHdpZHRoLCBidXQg
Z290IDYwLiAKKworPGRpdiBjbGFzcz0iY29udGFpbmVyIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI5
MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjkwIj48ZGl2IGNsYXNzPSJmbGV4Ym94IHZlcnRpY2Fs
LWxyIHJ0bCByb3ciIGRhdGEtb2Zmc2V0LXg9IjQwIiBkYXRhLW9mZnNldC15PSIxMCI+Cis8ZGl2
IHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEgMjBweCk7IGhlaWdodDogLXdlYmtpdC1mbGV4
KDEgMjBweCk7IiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIyMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9
IjIwIiBkYXRhLW9mZnNldC14PSI0OCIgZGF0YS1vZmZzZXQteT0iMjMiPjwvZGl2PgorPC9kaXY+
PC9kaXY+Cit2ZXJ0aWNhbC1sciBsdHIgcm93CitGQUlMOgorRXhwZWN0ZWQgOTAgZm9yIHdpZHRo
LCBidXQgZ290IDYwLiAKKworPGRpdiBjbGFzcz0iY29udGFpbmVyIiBkYXRhLWV4cGVjdGVkLXdp
ZHRoPSI5MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjkwIj48ZGl2IGNsYXNzPSJmbGV4Ym94IHZl
cnRpY2FsLWxyIGx0ciByb3ciIGRhdGEtb2Zmc2V0LXg9IjQwIiBkYXRhLW9mZnNldC15PSIxMCI+
Cis8ZGl2IHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEgMjBweCk7IGhlaWdodDogLXdlYmtp
dC1mbGV4KDEgMjBweCk7IiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIyMCIgZGF0YS1leHBlY3RlZC1o
ZWlnaHQ9IjIwIiBkYXRhLW9mZnNldC14PSI0OCIgZGF0YS1vZmZzZXQteT0iMjMiPjwvZGl2Pgor
PC9kaXY+PC9kaXY+Cit2ZXJ0aWNhbC1sciBydGwgY29sdW1uCitGQUlMOgorRXhwZWN0ZWQgOTAg
Zm9yIHdpZHRoLCBidXQgZ290IDYwLiAKKworPGRpdiBjbGFzcz0iY29udGFpbmVyIiBkYXRhLWV4
cGVjdGVkLXdpZHRoPSI5MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjkwIj48ZGl2IGNsYXNzPSJm
bGV4Ym94IHZlcnRpY2FsLWxyIHJ0bCBjb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjQwIiBkYXRhLW9m
ZnNldC15PSIxMCI+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEgMjBweCk7IGhl
aWdodDogLXdlYmtpdC1mbGV4KDEgMjBweCk7IiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIyMCIgZGF0
YS1leHBlY3RlZC1oZWlnaHQ9IjIwIiBkYXRhLW9mZnNldC14PSI0OCIgZGF0YS1vZmZzZXQteT0i
MjMiPjwvZGl2PgorPC9kaXY+PC9kaXY+Cit2ZXJ0aWNhbC1sciBsdHIgY29sdW1uCitGQUlMOgor
RXhwZWN0ZWQgOTAgZm9yIHdpZHRoLCBidXQgZ290IDYwLiAKKworPGRpdiBjbGFzcz0iY29udGFp
bmVyIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI5MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjkwIj48
ZGl2IGNsYXNzPSJmbGV4Ym94IHZlcnRpY2FsLWxyIGx0ciBjb2x1bW4iIGRhdGEtb2Zmc2V0LXg9
IjQwIiBkYXRhLW9mZnNldC15PSIxMCI+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4
KDEgMjBweCk7IGhlaWdodDogLXdlYmtpdC1mbGV4KDEgMjBweCk7IiBkYXRhLWV4cGVjdGVkLXdp
ZHRoPSIyMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjIwIiBkYXRhLW9mZnNldC14PSI0OCIgZGF0
YS1vZmZzZXQteT0iMjMiPjwvZGl2PgorPC9kaXY+PC9kaXY+Cit2ZXJ0aWNhbC1ybCBydGwgcm93
CitGQUlMOgorRXhwZWN0ZWQgOTAgZm9yIHdpZHRoLCBidXQgZ290IDYwLiAKKworPGRpdiBjbGFz
cz0iY29udGFpbmVyIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI5MCIgZGF0YS1leHBlY3RlZC1oZWln
aHQ9IjkwIj48ZGl2IGNsYXNzPSJmbGV4Ym94IHZlcnRpY2FsLXJsIHJ0bCByb3ciIGRhdGEtb2Zm
c2V0LXg9IjQwIiBkYXRhLW9mZnNldC15PSIxMCI+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogLXdlYmtp
dC1mbGV4KDEgMjBweCk7IGhlaWdodDogLXdlYmtpdC1mbGV4KDEgMjBweCk7IiBkYXRhLWV4cGVj
dGVkLXdpZHRoPSIyMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjIwIiBkYXRhLW9mZnNldC14PSI0
OCIgZGF0YS1vZmZzZXQteT0iMjMiPjwvZGl2PgorPC9kaXY+PC9kaXY+Cit2ZXJ0aWNhbC1ybCBs
dHIgcm93CitGQUlMOgorRXhwZWN0ZWQgOTAgZm9yIHdpZHRoLCBidXQgZ290IDYwLiAKKworPGRp
diBjbGFzcz0iY29udGFpbmVyIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI5MCIgZGF0YS1leHBlY3Rl
ZC1oZWlnaHQ9IjkwIj48ZGl2IGNsYXNzPSJmbGV4Ym94IHZlcnRpY2FsLXJsIGx0ciByb3ciIGRh
dGEtb2Zmc2V0LXg9IjQwIiBkYXRhLW9mZnNldC15PSIxMCI+Cis8ZGl2IHN0eWxlPSJ3aWR0aDog
LXdlYmtpdC1mbGV4KDEgMjBweCk7IGhlaWdodDogLXdlYmtpdC1mbGV4KDEgMjBweCk7IiBkYXRh
LWV4cGVjdGVkLXdpZHRoPSIyMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjIwIiBkYXRhLW9mZnNl
dC14PSI0OCIgZGF0YS1vZmZzZXQteT0iMjMiPjwvZGl2PgorPC9kaXY+PC9kaXY+Cit2ZXJ0aWNh
bC1ybCBydGwgY29sdW1uCitGQUlMOgorRXhwZWN0ZWQgOTAgZm9yIHdpZHRoLCBidXQgZ290IDYw
LiAKKworPGRpdiBjbGFzcz0iY29udGFpbmVyIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI5MCIgZGF0
YS1leHBlY3RlZC1oZWlnaHQ9IjkwIj48ZGl2IGNsYXNzPSJmbGV4Ym94IHZlcnRpY2FsLXJsIHJ0
bCBjb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjQwIiBkYXRhLW9mZnNldC15PSIxMCI+Cis8ZGl2IHN0
eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEgMjBweCk7IGhlaWdodDogLXdlYmtpdC1mbGV4KDEg
MjBweCk7IiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIyMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjIw
IiBkYXRhLW9mZnNldC14PSI0OCIgZGF0YS1vZmZzZXQteT0iMjMiPjwvZGl2PgorPC9kaXY+PC9k
aXY+Cit2ZXJ0aWNhbC1ybCBsdHIgY29sdW1uCitGQUlMOgorRXhwZWN0ZWQgOTAgZm9yIHdpZHRo
LCBidXQgZ290IDYwLiAKKworPGRpdiBjbGFzcz0iY29udGFpbmVyIiBkYXRhLWV4cGVjdGVkLXdp
ZHRoPSI5MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjkwIj48ZGl2IGNsYXNzPSJmbGV4Ym94IHZl
cnRpY2FsLXJsIGx0ciBjb2x1bW4iIGRhdGEtb2Zmc2V0LXg9IjQwIiBkYXRhLW9mZnNldC15PSIx
MCI+Cis8ZGl2IHN0eWxlPSJ3aWR0aDogLXdlYmtpdC1mbGV4KDEgMjBweCk7IGhlaWdodDogLXdl
YmtpdC1mbGV4KDEgMjBweCk7IiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIyMCIgZGF0YS1leHBlY3Rl
ZC1oZWlnaHQ9IjIwIiBkYXRhLW9mZnNldC14PSI0OCIgZGF0YS1vZmZzZXQteT0iMjMiPjwvZGl2
PgorPC9kaXY+PC9kaXY+CisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NzczMvZmxleGJveC9m
bGV4LWZsb3ctbWFyZ2lucy1hdXRvLXNpemUuaHRtbCBiL0xheW91dFRlc3RzL2NzczMvZmxleGJv
eC9mbGV4LWZsb3ctbWFyZ2lucy1hdXRvLXNpemUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42OGVlMjdiZTlk
YTBlY2VkNDNiY2QwMzk1MTdhYzg4ZjI5YWUxYWU1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvY3NzMy9mbGV4Ym94L2ZsZXgtZmxvdy1tYXJnaW5zLWF1dG8tc2l6ZS5odG1sCkBAIC0w
LDAgKzEsOTYgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8c3R5bGU+CisuY29udGFpbmVy
IHsKKyAgICBwb3NpdGlvbjogcmVsYXRpdmU7CisgICAgYmFja2dyb3VuZC1jb2xvcjogcGluazsK
KyAgICBvdXRsaW5lOiAxcHggc29saWQgYmxhY2s7CisgICAgZGlzcGxheTogaW5saW5lLWJsb2Nr
OworfQorLmZsZXhib3ggeworICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleGJveDsKKyAgICBiYWNr
Z3JvdW5kLWNvbG9yOiBncmV5OworICAgIG1hcmdpbjogMTBweCAyMHB4IDMwcHggNDBweDsKK30K
Ky50aXRsZSB7CisgICAgbWFyZ2luLXRvcDogMWVtOworfQorLmx0ciB7CisgICAgZGlyZWN0aW9u
OiBsdHI7Cit9CisucnRsIHsKKyAgICBkaXJlY3Rpb246IHJ0bDsKK30KKy5ob3Jpem9udGFsLXRi
IHsKKyAgICAtd2Via2l0LXdyaXRpbmctbW9kZTogaG9yaXpvbnRhbC10YjsKK30KKy5ob3Jpem9u
dGFsLWJ0IHsKKyAgICAtd2Via2l0LXdyaXRpbmctbW9kZTogaG9yaXpvbnRhbC1idDsKK30KKy52
ZXJ0aWNhbC1ybCB7CisgICAgLXdlYmtpdC13cml0aW5nLW1vZGU6IHZlcnRpY2FsLXJsOworfQor
LnZlcnRpY2FsLWxyIHsKKyAgICAtd2Via2l0LXdyaXRpbmctbW9kZTogdmVydGljYWwtbHI7Cit9
Cisucm93IHsKKyAgICAtd2Via2l0LWZsZXgtZmxvdzogcm93OworfQorLnJvdy1yZXZlcnNlIHsK
KyAgICAtd2Via2l0LWZsZXgtZmxvdzogcm93LXJldmVyc2U7Cit9CisuY29sdW1uIHsKKyAgICAt
d2Via2l0LWZsZXgtZmxvdzogY29sdW1uOworfQorLmNvbHVtbi1yZXZlcnNlIHsKKyAgICAtd2Vi
a2l0LWZsZXgtZmxvdzogY29sdW1uLXJldmVyc2U7Cit9CisuZmxleGJveCA+IGRpdiB7CisgICAg
bWFyZ2luOiAxM3B4IDJweCAxN3B4IDhweDsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibHVlOwor
fQorPC9zdHlsZT4KKzxzY3JpcHQ+CitpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQor
ICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKzwvc2NyaXB0PgorPHNjcmlw
dCBzcmM9InJlc291cmNlcy9mbGV4Ym94LmpzIj48L3NjcmlwdD4KKzxib2R5IG9ubG9hZD0iY2hl
Y2tGbGV4Qm94ZW4oKSI+CisKKzxzY3JpcHQ+CisKKy8vIFRoZSB2ZXJ0aWNhbCB0ZXN0IGNhc2Vz
IGFyZSBmYWlsaW5nIGJlY2F1c2Ugb2YgdGhlIG9ydGhvZ29uYWwgd3JpdGluZyBtb2Rlcy4KKy8v
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MDc2OQordmFyIHdyaXRp
bmdNb2RlcyA9IFsnaG9yaXpvbnRhbC10YicsICdob3Jpem9udGFsLWJ0JywgJ3ZlcnRpY2FsLWxy
JywgJ3ZlcnRpY2FsLXJsJ107CisvLyBGSVhNRTogVGVzdCByb3ctcmV2ZXJzZSBhbmQgY29sdW1u
LXJldmVyc2UuCit2YXIgZmxleEZsb3dzID0gWydyb3cnLCAnY29sdW1uJ107Cit2YXIgZGlyZWN0
aW9ucyA9IFsncnRsJywgJ2x0ciddOworCit3cml0aW5nTW9kZXMuZm9yRWFjaChmdW5jdGlvbih3
cml0aW5nTW9kZSkgeworICAgIGZsZXhGbG93cy5mb3JFYWNoKGZ1bmN0aW9uKGZsZXhGbG93KSB7
CisgICAgICAgIGRpcmVjdGlvbnMuZm9yRWFjaChmdW5jdGlvbihkaXJlY3Rpb24pIHsKKyAgICAg
ICAgICAgIHZhciBmbGV4Ym94Q2xhc3NOYW1lID0gd3JpdGluZ01vZGUgKyAnICcgKyBkaXJlY3Rp
b24gKyAnICcgKyBmbGV4RmxvdzsKKyAgICAgICAgICAgIHZhciB0aXRsZSA9IGRvY3VtZW50LmNy
ZWF0ZUVsZW1lbnQoJ2RpdicpOworICAgICAgICAgICAgdGl0bGUuY2xhc3NOYW1lID0gJ3RpdGxl
JzsKKyAgICAgICAgICAgIHRpdGxlLmlubmVySFRNTCA9IGZsZXhib3hDbGFzc05hbWU7CisgICAg
ICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHRpdGxlKTsKKworICAgICAgICAgICAg
dmFyIGZsZXhib3hFeHBlY3RhdGlvbnMgPSAnZGF0YS1vZmZzZXQteD0iNDAiIGRhdGEtb2Zmc2V0
LXk9IjEwIic7CisgICAgICAgICAgICB2YXIgZmxleEl0ZW1FeHBlY3RhdGlvbnMgPSAnZGF0YS1l
eHBlY3RlZC13aWR0aD0iMjAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIyMCIgZGF0YS1vZmZzZXQt
eD0iNDgiIGRhdGEtb2Zmc2V0LXk9IjIzIic7CisKKyAgICAgICAgICAgIHZhciBjb250YWluZXIg
PSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKKyAgICAgICAgICAgIGNvbnRhaW5lci5j
bGFzc05hbWUgPSAnY29udGFpbmVyJzsKKyAgICAgICAgICAgIGNvbnRhaW5lci5zZXRBdHRyaWJ1
dGUoJ2RhdGEtZXhwZWN0ZWQtd2lkdGgnLCA5MCk7CisgICAgICAgICAgICBjb250YWluZXIuc2V0
QXR0cmlidXRlKCdkYXRhLWV4cGVjdGVkLWhlaWdodCcsIDkwKTsKKworICAgICAgICAgICAgY29u
dGFpbmVyLmlubmVySFRNTCA9ICc8ZGl2IGNsYXNzPSJmbGV4Ym94ICcgKyBmbGV4Ym94Q2xhc3NO
YW1lICsgJyIgJyArIGZsZXhib3hFeHBlY3RhdGlvbnMgKyAnPlxuJyArCisgICAgICAgICAgICAg
ICAgJzxkaXYgc3R5bGU9IndpZHRoOiAtd2Via2l0LWZsZXgoMSAyMHB4KTsgaGVpZ2h0OiAtd2Vi
a2l0LWZsZXgoMSAyMHB4KTsiICcgKyBmbGV4SXRlbUV4cGVjdGF0aW9ucyArICc+PC9kaXY+XG4n
ICsKKyAgICAgICAgICAgICc8L2Rpdj4nOworCisgICAgICAgICAgICBkb2N1bWVudC5ib2R5LmFw
cGVuZENoaWxkKGNvbnRhaW5lcik7CisgICAgICAgIH0pCisgICAgfSkKK30pCis8L3NjcmlwdD4K
KzwvYm9keT4KKzwvaHRtbD4K
</data>
<flag name="review"
          id="110860"
          type_id="1"
          status="+"
          setter="hyatt"
    />
          </attachment>
      

    </bug>

</bugzilla>