<?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>82699</bug_id>
          
          <creation_ts>2012-03-29 23:49:38 -0700</creation_ts>
          <short_desc>[Refactoring] Move Selection from DOMWindow to TreeScope</short_desc>
          <delta_ts>2012-05-11 03:35:55 -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>HTML Editing</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>
          <dependson>86172</dependson>
          <blocked>82697</blocked>
    
    <blocked>82698</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Shinya Kawanaka">shinyak</reporter>
          <assigned_to name="Shinya Kawanaka">shinyak</assigned_to>
          <cc>dglazkov</cc>
    
    <cc>enrica</cc>
    
    <cc>gustavo</cc>
    
    <cc>morrita</cc>
    
    <cc>philn</cc>
    
    <cc>rniwa</cc>
    
    <cc>tkent</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>xan.lopez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>591911</commentid>
    <comment_count>0</comment_count>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-03-29 23:49:38 -0700</bug_when>
    <thetext>Since ShadowRoot will also manage its own version of Selection, it would be beautiful if Selection is owned by TreeScope instead of DOMWindow.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>620268</commentid>
    <comment_count>1</comment_count>
      <attachid>141088</attachid>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-05-09 23:07:35 -0700</bug_when>
    <thetext>Created attachment 141088
WIP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>620276</commentid>
    <comment_count>2</comment_count>
      <attachid>141088</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2012-05-09 23:22:33 -0700</bug_when>
    <thetext>Comment on attachment 141088
WIP

Attachment 141088 did not pass qt-wk2-ews (qt):
Output: http://queues.webkit.org/results/12647828</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>620281</commentid>
    <comment_count>3</comment_count>
      <attachid>141088</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2012-05-09 23:26:21 -0700</bug_when>
    <thetext>Comment on attachment 141088
WIP

Attachment 141088 did not pass qt-ews (qt):
Output: http://queues.webkit.org/results/12646889</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>620283</commentid>
    <comment_count>4</comment_count>
      <attachid>141088</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-05-09 23:32:44 -0700</bug_when>
    <thetext>Comment on attachment 141088
WIP

Attachment 141088 did not pass win-ews (win):
Output: http://queues.webkit.org/results/12645954</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>620284</commentid>
    <comment_count>5</comment_count>
      <attachid>141088</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2012-05-09 23:33:20 -0700</bug_when>
    <thetext>Comment on attachment 141088
WIP

Attachment 141088 did not pass efl-ews (efl):
Output: http://queues.webkit.org/results/12666058</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>620288</commentid>
    <comment_count>6</comment_count>
      <attachid>141092</attachid>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-05-09 23:40:38 -0700</bug_when>
    <thetext>Created attachment 141092
WIP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>620302</commentid>
    <comment_count>7</comment_count>
      <attachid>141092</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-05-10 00:01:25 -0700</bug_when>
    <thetext>Comment on attachment 141092
WIP

Attachment 141092 did not pass win-ews (win):
Output: http://queues.webkit.org/results/12644954</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>620307</commentid>
    <comment_count>8</comment_count>
      <attachid>141092</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-05-10 00:12:35 -0700</bug_when>
    <thetext>Comment on attachment 141092
WIP

Attachment 141092 did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/12649947</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>620308</commentid>
    <comment_count>9</comment_count>
      <attachid>141092</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2012-05-10 00:15:14 -0700</bug_when>
    <thetext>Comment on attachment 141092
WIP

Attachment 141092 did not pass qt-wk2-ews (qt):
Output: http://queues.webkit.org/results/12666066</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>620319</commentid>
    <comment_count>10</comment_count>
      <attachid>141092</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2012-05-10 00:26:49 -0700</bug_when>
    <thetext>Comment on attachment 141092
WIP

Attachment 141092 did not pass qt-ews (qt):
Output: http://queues.webkit.org/results/12653824</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>620341</commentid>
    <comment_count>11</comment_count>
      <attachid>141102</attachid>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-05-10 00:46:54 -0700</bug_when>
    <thetext>Created attachment 141102
WIP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>620379</commentid>
    <comment_count>12</comment_count>
      <attachid>141110</attachid>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-05-10 01:37:32 -0700</bug_when>
    <thetext>Created attachment 141110
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>620381</commentid>
    <comment_count>13</comment_count>
      <attachid>141110</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-05-10 01:49:04 -0700</bug_when>
    <thetext>Comment on attachment 141110
Patch

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

&gt; Source/WebCore/dom/TreeScope.cpp:60
&gt; +        m_selection-&gt;disconnectTreeScope();

I would call it clearTreeScope.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>620383</commentid>
    <comment_count>14</comment_count>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-05-10 01:57:27 -0700</bug_when>
    <thetext>(In reply to comment #13)
&gt; (From update of attachment 141110 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=141110&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/dom/TreeScope.cpp:60
&gt; &gt; +        m_selection-&gt;disconnectTreeScope();
&gt; 
&gt; I would call it clearTreeScope.

Thank you for very fast reviewing!
I&apos;ll update the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>621187</commentid>
    <comment_count>15</comment_count>
      <attachid>141309</attachid>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-05-10 18:42:30 -0700</bug_when>
    <thetext>Created attachment 141309
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>621188</commentid>
    <comment_count>16</comment_count>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-05-10 18:45:09 -0700</bug_when>
    <thetext>Committed r116715: &lt;http://trac.webkit.org/changeset/116715&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>621237</commentid>
    <comment_count>17</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-10 20:57:14 -0700</bug_when>
    <thetext>Re-opened since this is blocked by 86172</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>621241</commentid>
    <comment_count>18</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2012-05-10 21:00:10 -0700</bug_when>
    <thetext>It seems that cross-frame-access-selection.html was broken by the patch.
http://test-results.appspot.com/dashboards/flakiness_dashboard.html#showExpectations=true&amp;showLargeExpectations=true&amp;tests=http%2Ftests%2Fsecurity%2Fcross-frame-access-selection.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>621348</commentid>
    <comment_count>19</comment_count>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-05-11 00:26:59 -0700</bug_when>
    <thetext>(In reply to comment #18)
&gt; It seems that cross-frame-access-selection.html was broken by the patch.
&gt; http://test-results.appspot.com/dashboards/flakiness_dashboard.html#showExpectations=true&amp;showLargeExpectations=true&amp;tests=http%2Ftests%2Fsecurity%2Fcross-frame-access-selection.html

Thank you for notifying that!

I&apos;ve investigated the issue. Making DOMSelection non-DOMWindowProperty seems to cause that issue. I&apos;ll update the patch soon. I think this patch should be reviewed again.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>621349</commentid>
    <comment_count>20</comment_count>
      <attachid>141344</attachid>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-05-11 00:29:02 -0700</bug_when>
    <thetext>Created attachment 141344
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>621462</commentid>
    <comment_count>21</comment_count>
      <attachid>141344</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-11 03:35:49 -0700</bug_when>
    <thetext>Comment on attachment 141344
Patch

Clearing flags on attachment: 141344

Committed r116746: &lt;http://trac.webkit.org/changeset/116746&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>621463</commentid>
    <comment_count>22</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-11 03:35:55 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>141088</attachid>
            <date>2012-05-09 23:07:35 -0700</date>
            <delta_ts>2012-05-09 23:40:32 -0700</delta_ts>
            <desc>WIP</desc>
            <filename>bug-82699-20120510150734.patch</filename>
            <type>text/plain</type>
            <size>10746</size>
            <attacher name="Shinya Kawanaka">shinyak</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE2NjA1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjE4NTQ5ZDg4NGQyOGU0
ZTgxZWM4ZTYyNThjZjcyMzI1YTIyZjk1YS4uMGY3NzdlYTkxODdiMjVjNWJjNGNjMTVlNTdlNTIw
ZWI2MjQ0ZDY0NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDEyLTA1LTA5ICBTaGlu
eWEgS2F3YW5ha2EgIDxzaGlueWFrQGNocm9taXVtLm9yZz4KKworICAgICAgICBbUmVmYWN0b3Jp
bmddIE1vdmUgU2VsZWN0aW9uIGZyb20gRE9NV2luZG93IHRvIFRyZWVTY29wZS4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgyNjk5CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgU2luY2UgU2hhZG93Um9vdCB3
aWxsIGFsc28gbWFuYWdlIGl0cyBvd24gdmVyc2lvbiBvZiBET01TZWxlY3Rpb24sIHdlIHdvdWxk
IGxpa2UgdG8KKyAgICAgICAgc2hhcmUgdGhlIGNvZGUgdG8gcmV0dXJuIERPTVNlbGVjdGlvbiBh
bW9uZyBEb2N1bWVudCBhbmQgRE9NU2VsZWN0aW9uLiBUaGlzIHBhdGNoIG1vdmVzCisgICAgICAg
IERPTVNlbGVjdGlvbiByZWxhdGVkIGNvZGUgZnJvbSBET01XaW5kb3cgdG8gVHJlZVNjb3BlLgor
CisgICAgICAgIE5vIG5ldyB0ZXN0cywgc2hvdWxkIGNvdmVyZXJlZCBieSBleGlzdGluZyB0ZXN0
cy4KKworICAgICAgICAqIGRvbS9Eb2N1bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEb2N1
bWVudDo6dXBkYXRlRm9jdXNBcHBlYXJhbmNlVGltZXJGaXJlZCk6CisgICAgICAgICogZG9tL0Rv
Y3VtZW50Lmg6CisgICAgICAgIChEb2N1bWVudCk6CisgICAgICAgICogZG9tL1NoYWRvd1Jvb3Qu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6U2hhZG93Um9vdDo6c2VsZWN0aW9uKToKKyAgICAgICAg
KiBkb20vVHJlZVNjb3BlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlRyZWVTY29wZTo6flRyZWVT
Y29wZSk6CisgICAgICAgIChXZWJDb3JlOjpUcmVlU2NvcGU6OmdldFNlbGVjdGlvbik6CisgICAg
ICAgIChXZWJDb3JlKToKKyAgICAgICAgKiBkb20vVHJlZVNjb3BlLmg6CisgICAgICAgIChXZWJD
b3JlKToKKyAgICAgICAgKFRyZWVTY29wZSk6CisgICAgICAgICogcGFnZS9ET01TZWxlY3Rpb24u
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6RE9NU2VsZWN0aW9uOjpET01TZWxlY3Rpb24pOgorICAg
ICAgICAoV2ViQ29yZTo6RE9NU2VsZWN0aW9uOjpkaXNjb25uZWN0VHJlZVNjb3BlKToKKyAgICAg
ICAgKFdlYkNvcmUpOgorICAgICAgICAqIHBhZ2UvRE9NU2VsZWN0aW9uLmg6CisgICAgICAgIChX
ZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OkRPTVNlbGVjdGlvbjo6Y3JlYXRlKToKKyAgICAg
ICAgKERPTVNlbGVjdGlvbik6CisgICAgICAgICogcGFnZS9ET01XaW5kb3cuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6RE9NV2luZG93Ojp+RE9NV2luZG93KToKKyAgICAgICAgKFdlYkNvcmU6OkRP
TVdpbmRvdzo6Y2xlYXJET01XaW5kb3dQcm9wZXJ0aWVzKToKKyAgICAgICAgKFdlYkNvcmU6OkRP
TVdpbmRvdzo6Z2V0U2VsZWN0aW9uKToKKyAgICAgICAgKiBwYWdlL0RPTVdpbmRvdy5oOgorICAg
ICAgICAoRE9NV2luZG93KToKKwogMjAxMi0wNS0wOSAgSmFzb24gTGl1ICA8amFzb24ubGl1QHRv
cmNobW9iaWxlLmNvbS5jbj4KIAogICAgICAgICBbQmxhY2tCZXJyeV0gQ29va2llIHBhcnNpbmcg
aXNzdWUuIElmIHRoZSBjb29raWUgdmFsdWUgcHJvdmlkZWQgd2FzICgiKSB0aGVuIHRoZSBicm93
c2VyIGNyZWF0ZXMgYSBzZXNzaW9uIGNvb2tpZSBpbnN0ZWFkLgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5j
cHAKaW5kZXggMDBhN2RjY2U0ZTk4ZTFmNDA4YzBmNWIzY2Q0ODIxN2YyZTg5YTBkMi4uOTYzMmM1
YTZjZGM0MWQ0ODBjYjU4OTlkZTI1NzdmOTViMTNlY2JhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvZG9tL0RvY3VtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQu
Y3BwCkBAIC00Niw2ICs0Niw3IEBACiAjaW5jbHVkZSAiQ29udGVudFNlY3VyaXR5UG9saWN5Lmgi
CiAjaW5jbHVkZSAiQ29va2llSmFyLmgiCiAjaW5jbHVkZSAiRE9NSW1wbGVtZW50YXRpb24uaCIK
KyNpbmNsdWRlICJET01TZWxlY3Rpb24uaCIKICNpbmNsdWRlICJET01XaW5kb3cuaCIKICNpbmNs
dWRlICJEYXRlQ29tcG9uZW50cy5oIgogI2luY2x1ZGUgIkRldmljZU1vdGlvbkNvbnRyb2xsZXIu
aCIKQEAgLTUwODQsMTIgKzUwODUsNiBAQCB2b2lkIERvY3VtZW50Ojp1cGRhdGVGb2N1c0FwcGVh
cmFuY2VUaW1lckZpcmVkKFRpbWVyPERvY3VtZW50PiopCiAgICAgICAgIGVsZW1lbnQtPnVwZGF0
ZUZvY3VzQXBwZWFyYW5jZShtX3VwZGF0ZUZvY3VzQXBwZWFyYW5jZVJlc3RvcmVzU2VsZWN0aW9u
KTsKIH0KIAotLy8gRkYgbWV0aG9kIGZvciBhY2Nlc3NpbmcgdGhlIHNlbGVjdGlvbiBhZGRlZCBm
b3IgY29tcGF0aWJpbGl0eS4KLURPTVNlbGVjdGlvbiogRG9jdW1lbnQ6OmdldFNlbGVjdGlvbigp
IGNvbnN0Ci17Ci0gICAgcmV0dXJuIGZyYW1lKCkgPyBmcmFtZSgpLT5kb21XaW5kb3coKS0+Z2V0
U2VsZWN0aW9uKCkgOiAwOwotfQotCiB2b2lkIERvY3VtZW50OjphdHRhY2hSYW5nZShSYW5nZSog
cmFuZ2UpCiB7CiAgICAgQVNTRVJUKCFtX3Jhbmdlcy5jb250YWlucyhyYW5nZSkpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20v
RG9jdW1lbnQuaAppbmRleCA2YzY4NGU4MjI4YjM4MWYwZTkxNDM1YjBhYzFlZDQ0YzE2NzA1MmRm
Li4xZWY2YjRhOWJhYmRhYzM3OGNmZmM4ZGU4ZTAzN2YyMDEyMTAyNzlmIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9j
dW1lbnQuaApAQCAtOTY5LDkgKzk2OSw2IEBAIHB1YmxpYzoKICAgICB2b2lkIHVwZGF0ZUZvY3Vz
QXBwZWFyYW5jZVNvb24oYm9vbCByZXN0b3JlUHJldmlvdXNTZWxlY3Rpb24pOwogICAgIHZvaWQg
Y2FuY2VsRm9jdXNBcHBlYXJhbmNlVXBkYXRlKCk7CiAgICAgICAgIAotICAgIC8vIEZGIG1ldGhv
ZCBmb3IgYWNjZXNzaW5nIHRoZSBzZWxlY3Rpb24gYWRkZWQgZm9yIGNvbXBhdGliaWxpdHkuCi0g
ICAgRE9NU2VsZWN0aW9uKiBnZXRTZWxlY3Rpb24oKSBjb25zdDsKLSAgICAKICAgICAvLyBFeHRl
bnNpb24gZm9yIG1hbmlwdWxhdGluZyBjYW52YXMgZHJhd2luZyBjb250ZXh0cyBmb3IgdXNlIGlu
IENTUwogICAgIENhbnZhc1JlbmRlcmluZ0NvbnRleHQqIGdldENTU0NhbnZhc0NvbnRleHQoY29u
c3QgU3RyaW5nJiB0eXBlLCBjb25zdCBTdHJpbmcmIG5hbWUsIGludCB3aWR0aCwgaW50IGhlaWdo
dCk7CiAgICAgSFRNTENhbnZhc0VsZW1lbnQqIGdldENTU0NhbnZhc0VsZW1lbnQoY29uc3QgU3Ry
aW5nJiBuYW1lKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TaGFkb3dSb290LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TaGFkb3dSb290LmNwcAppbmRleCBhYTAzNGJhMzAwZTI3
NTYxN2U1YjdmOTVhY2I3NTdhNzM2Njk1NmQ1Li42ZTRjM2JkNjIyOGMyNGZmNmE1YmYzYzQ5Mzk2
OTdjZDlmOTUwNDM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2hhZG93Um9vdC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1NoYWRvd1Jvb3QuY3BwCkBAIC0xNTEsOCArMTUx
LDggQEAgdm9pZCBTaGFkb3dSb290OjpzZXRJbm5lckhUTUwoY29uc3QgU3RyaW5nJiBtYXJrdXAs
IEV4Y2VwdGlvbkNvZGUmIGVjKQogCiBET01TZWxlY3Rpb24qIFNoYWRvd1Jvb3Q6OnNlbGVjdGlv
bigpCiB7Ci0gICAgaWYgKGRvY3VtZW50KCkgJiYgZG9jdW1lbnQoKS0+ZG9tV2luZG93KCkpCi0g
ICAgICAgIHJldHVybiBkb2N1bWVudCgpLT5kb21XaW5kb3coKS0+Z2V0U2VsZWN0aW9uKCk7Cisg
ICAgaWYgKGRvY3VtZW50KCkpCisgICAgICAgIHJldHVybiBkb2N1bWVudCgpLT5nZXRTZWxlY3Rp
b24oKTsKICAgICByZXR1cm4gMDsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9t
L1RyZWVTY29wZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vVHJlZVNjb3BlLmNwcAppbmRleCA5
OTgyNjQ1MzIwODc2NTA2OTNjNDQ4ZmM1YTc2YjkzMGMxYzQwZjkxLi40N2ZiNzkwNzA5MzNhZWNm
ODRlNmQ5NTU3M2Q1MGY0Nzc2MDA0ZWJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20v
VHJlZVNjb3BlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vVHJlZVNjb3BlLmNwcApAQCAt
MjcsNiArMjcsNyBAQAogI2luY2x1ZGUgIlRyZWVTY29wZS5oIgogCiAjaW5jbHVkZSAiQ29udGFp
bmVyTm9kZS5oIgorI2luY2x1ZGUgIkRPTVNlbGVjdGlvbi5oIgogI2luY2x1ZGUgIkRvY3VtZW50
LmgiCiAjaW5jbHVkZSAiRWxlbWVudC5oIgogI2luY2x1ZGUgIkZvY3VzQ29udHJvbGxlci5oIgpA
QCAtMzYsNiArMzcsNyBAQAogI2luY2x1ZGUgIkhUTUxNYXBFbGVtZW50LmgiCiAjaW5jbHVkZSAi
SFRNTE5hbWVzLmgiCiAjaW5jbHVkZSAiUGFnZS5oIgorI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVk
RmVhdHVyZXMuaCIKICNpbmNsdWRlICJUcmVlU2NvcGVBZG9wdGVyLmgiCiAjaW5jbHVkZSA8d3Rm
L3RleHQvQXRvbWljU3RyaW5nLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgpAQCAt
NTQsNiArNTYsOSBAQCBUcmVlU2NvcGU6OlRyZWVTY29wZShDb250YWluZXJOb2RlKiByb290Tm9k
ZSkKIAogVHJlZVNjb3BlOjp+VHJlZVNjb3BlKCkKIHsKKyAgICBpZiAobV9zZWxlY3Rpb24pCisg
ICAgICAgIG1fc2VsZWN0aW9uLT5kaXNjb25uZWN0VHJlZVNjb3BlKCk7CisgICAgbV9zZWxlY3Rp
b24gPSAwOwogfQogCiB2b2lkIFRyZWVTY29wZTo6ZGVzdHJveVRyZWVTY29wZURhdGEoKQpAQCAt
MTE2LDYgKzEyMSwxOCBAQCBIVE1MTWFwRWxlbWVudCogVHJlZVNjb3BlOjpnZXRJbWFnZU1hcChj
b25zdCBTdHJpbmcmIHVybCkgY29uc3QKICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8SFRNTE1hcEVs
ZW1lbnQqPihtX2ltYWdlTWFwc0J5TmFtZS5nZXRFbGVtZW50QnlNYXBOYW1lKEF0b21pY1N0cmlu
ZyhuYW1lKS5pbXBsKCksIHRoaXMpKTsKIH0KIAorRE9NU2VsZWN0aW9uKiBUcmVlU2NvcGU6Omdl
dFNlbGVjdGlvbigpIGNvbnN0Cit7CisgICAgaWYgKCFyb290Tm9kZSgpLT5kb2N1bWVudCgpLT5m
cmFtZSgpKQorICAgICAgICByZXR1cm4gMDsKKworICAgIGlmIChtX3NlbGVjdGlvbikKKyAgICAg
ICAgcmV0dXJuIG1fc2VsZWN0aW9uLmdldCgpOworCisgICAgbV9zZWxlY3Rpb24gPSBET01TZWxl
Y3Rpb246OmNyZWF0ZShyb290Tm9kZSgpLT5kb2N1bWVudCgpKTsKKyAgICByZXR1cm4gbV9zZWxl
Y3Rpb24uZ2V0KCk7Cit9CisKIEVsZW1lbnQqIFRyZWVTY29wZTo6ZmluZEFuY2hvcihjb25zdCBT
dHJpbmcmIG5hbWUpCiB7CiAgICAgaWYgKG5hbWUuaXNFbXB0eSgpKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvZG9tL1RyZWVTY29wZS5oIGIvU291cmNlL1dlYkNvcmUvZG9tL1RyZWVTY29w
ZS5oCmluZGV4IDc2YzEyZTVjOTBmNzFlMjRjZTk4Yzg3ZDFiZjE3MThmMzE4MjZmOTYuLjk5MjA5
MzI2OTZkMjJjMTQ4YWVhODcyOTNhMDA0NjU0Yjk0YWFhMTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2RvbS9UcmVlU2NvcGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vVHJlZVNjb3Bl
LmgKQEAgLTMzLDYgKzMzLDcgQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgQ29udGFp
bmVyTm9kZTsKK2NsYXNzIERPTVNlbGVjdGlvbjsKIGNsYXNzIEVsZW1lbnQ7CiBjbGFzcyBIVE1M
TWFwRWxlbWVudDsKIGNsYXNzIE5vZGU7CkBAIC02Miw2ICs2Myw4IEBAIHB1YmxpYzoKICAgICB2
b2lkIHJlbW92ZU5vZGVMaXN0Q2FjaGUoKSB7IEFTU0VSVChtX251bU5vZGVMaXN0Q2FjaGVzID4g
MCk7IC0tbV9udW1Ob2RlTGlzdENhY2hlczsgfQogICAgIGJvb2wgaGFzTm9kZUxpc3RDYWNoZXMo
KSBjb25zdCB7IHJldHVybiBtX251bU5vZGVMaXN0Q2FjaGVzOyB9CiAKKyAgICBET01TZWxlY3Rp
b24qIGdldFNlbGVjdGlvbigpIGNvbnN0OworCiAgICAgLy8gRmluZCBmaXJzdCBhbmNob3Igd2l0
aCB0aGUgZ2l2ZW4gbmFtZS4KICAgICAvLyBGaXJzdCBzZWFyY2hlcyBmb3IgYW4gZWxlbWVudCB3
aXRoIHRoZSBnaXZlbiBJRCwgYnV0IGlmIHRoYXQgZmFpbHMsIHRoZW4gbG9va3MKICAgICAvLyBm
b3IgYW4gYW5jaG9yIHdpdGggdGhlIGdpdmVuIG5hbWUuIElEIG1hdGNoaW5nIGlzIGFsd2F5cyBj
YXNlIHNlbnNpdGl2ZSwgYnV0CkBAIC05MCw2ICs5Myw4IEBAIHByaXZhdGU6CiAgICAgRG9jdW1l
bnRPcmRlcmVkTWFwIG1faW1hZ2VNYXBzQnlOYW1lOwogCiAgICAgdW5zaWduZWQgbV9udW1Ob2Rl
TGlzdENhY2hlczsKKworICAgIG11dGFibGUgUmVmUHRyPERPTVNlbGVjdGlvbj4gbV9zZWxlY3Rp
b247CiB9OwogCiBpbmxpbmUgYm9vbCBUcmVlU2NvcGU6Omhhc0VsZW1lbnRXaXRoSWQoQXRvbWlj
U3RyaW5nSW1wbCogaWQpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RP
TVNlbGVjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVNlbGVjdGlvbi5jcHAKaW5k
ZXggZmQ4NDY1ODNmZmI1ZTZjODY4ZjhiZGZjYTg2ZWQ1YTQ3OGM0MTgyNC4uNzE1NjQ1MDJkMmRl
NjNiODZkZDU0ZGY0ZDA2OWE3NmNhNTMxYmRiMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGFnZS9ET01TZWxlY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NU2VsZWN0
aW9uLmNwcApAQCAtNTgsMTEgKzU4LDE4IEBAIHN0YXRpYyBOb2RlKiBzZWxlY3Rpb25TaGFkb3dB
bmNlc3RvcihGcmFtZSogZnJhbWUpCiAgICAgcmV0dXJuIHNoYWRvd0FuY2VzdG9yOwogfQogCi1E
T01TZWxlY3Rpb246OkRPTVNlbGVjdGlvbihGcmFtZSogZnJhbWUpCi0gICAgOiBET01XaW5kb3dQ
cm9wZXJ0eShmcmFtZSkKK0RPTVNlbGVjdGlvbjo6RE9NU2VsZWN0aW9uKGNvbnN0IFRyZWVTY29w
ZSogdHJlZVNjb3BlKQorICAgIDogbV90cmVlU2NvcGUodHJlZVNjb3BlKQorICAgICwgbV9mcmFt
ZSh0cmVlU2NvcGUtPnJvb3ROb2RlKCktPmRvY3VtZW50KCktPmZyYW1lKCkpCiB7CiB9CiAKK3Zv
aWQgRE9NU2VsZWN0aW9uOjpkaXNjb25uZWN0VHJlZVNjb3BlKCkKK3sKKyAgICBtX2ZyYW1lID0g
MDsKKyAgICBtX3RyZWVTY29wZSA9IDAKK30KKwogY29uc3QgVmlzaWJsZVNlbGVjdGlvbiYgRE9N
U2VsZWN0aW9uOjp2aXNpYmxlU2VsZWN0aW9uKCkgY29uc3QKIHsKICAgICBBU1NFUlQobV9mcmFt
ZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVNlbGVjdGlvbi5oIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9ET01TZWxlY3Rpb24uaAppbmRleCA5ODAzYWNjYTIyYmE0M2M1Mjc2
Nzg1NmEyMzk1Yzc2OGM4YTdkN2Y0Li43MDU4YjUwYjlmNjYzYzliZDU4ZTIxNWMwOTMxZmFhZTcz
Yjg3ZGM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVNlbGVjdGlvbi5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NU2VsZWN0aW9uLmgKQEAgLTEsNSArMSw2IEBACiAv
KgogICogQ29weXJpZ2h0IChDKSAyMDA3IEFwcGxlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTM4LDE1ICszOSwxOCBAQAogbmFt
ZXNwYWNlIFdlYkNvcmUgewogCiAgICAgY2xhc3MgRnJhbWU7Ci0gICAgY2xhc3MgUmFuZ2U7CiAg
ICAgY2xhc3MgTm9kZTsKKyAgICBjbGFzcyBSYW5nZTsKKyAgICBjbGFzcyBUcmVlU2NvcGU7CiAg
ICAgY2xhc3MgVmlzaWJsZVNlbGVjdGlvbjsKIAogICAgIHR5cGVkZWYgaW50IEV4Y2VwdGlvbkNv
ZGU7CiAKLSAgICBjbGFzcyBET01TZWxlY3Rpb24gOiBwdWJsaWMgUmVmQ291bnRlZDxET01TZWxl
Y3Rpb24+LCBwdWJsaWMgRE9NV2luZG93UHJvcGVydHkgeworICAgIGNsYXNzIERPTVNlbGVjdGlv
biA6IHB1YmxpYyBSZWZDb3VudGVkPERPTVNlbGVjdGlvbj4gewogICAgIHB1YmxpYzoKLSAgICAg
ICAgc3RhdGljIFBhc3NSZWZQdHI8RE9NU2VsZWN0aW9uPiBjcmVhdGUoRnJhbWUqIGZyYW1lKSB7
IHJldHVybiBhZG9wdFJlZihuZXcgRE9NU2VsZWN0aW9uKGZyYW1lKSk7IH0KKyAgICAgICAgc3Rh
dGljIFBhc3NSZWZQdHI8RE9NU2VsZWN0aW9uPiBjcmVhdGUoY29uc3QgVHJlZVNjb3BlKiB0cmVl
U2NvcGUpIHsgcmV0dXJuIGFkb3B0UmVmKG5ldyBET01TZWxlY3Rpb24odHJlZVNjb3BlKSk7IH0K
KworICAgICAgICB2b2lkIGRpc2Nvbm5lY3RUcmVlU2NvcGUoKTsKIAogICAgICAgICAvLyBTYWZh
cmkgU2VsZWN0aW9uIE9iamVjdCBBUEkKICAgICAgICAgLy8gVGhlc2UgbWV0aG9kcyByZXR1cm4g
dGhlIHZhbGlkIGVxdWl2YWxlbnRzIG9mIGludGVybmFsIGVkaXRpbmcgcG9zaXRpb25zLgpAQCAt
ODgsNyArOTIsMTAgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICB2b2lkIGVtcHR5KCk7
CiAKICAgICBwcml2YXRlOgotICAgICAgICBleHBsaWNpdCBET01TZWxlY3Rpb24oRnJhbWUqKTsK
KyAgICAgICAgY29uc3QgVHJlZVNjb3BlKiBtX3RyZWVTY29wZTsKKyAgICAgICAgRnJhbWUqIG1f
ZnJhbWU7CisKKyAgICAgICAgZXhwbGljaXQgRE9NU2VsZWN0aW9uKGNvbnN0IFRyZWVTY29wZSop
OwogCiAgICAgICAgIC8vIENvbnZlbmllbmNlIG1ldGhvZCBmb3IgYWNjZXNzb3JzLCBkb2VzIG5v
dCBOVUxMIGNoZWNrIG1fZnJhbWUuCiAgICAgICAgIGNvbnN0IFZpc2libGVTZWxlY3Rpb24mIHZp
c2libGVTZWxlY3Rpb24oKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
RE9NV2luZG93LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcAppbmRleCBk
ZWYwZTYyNmM0YmUzYTE4NmI4NzBiMzUwZjRmMmU4M2QyNzViNjNlLi41N2RkOTExZWVkNmZmYWU3
MjExM2NkN2Y0MGRmZWZkZGY4YWNlZGQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L0RPTVdpbmRvdy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuY3BwCkBA
IC0zOTksNyArMzk5LDYgQEAgRE9NV2luZG93Ojp+RE9NV2luZG93KCkKICNpZm5kZWYgTkRFQlVH
CiAgICAgaWYgKCFtX3N1c3BlbmRlZEZvclBhZ2VDYWNoZSkgewogICAgICAgICBBU1NFUlQoIW1f
c2NyZWVuKTsKLSAgICAgICAgQVNTRVJUKCFtX3NlbGVjdGlvbik7CiAgICAgICAgIEFTU0VSVCgh
bV9oaXN0b3J5KTsKICAgICAgICAgQVNTRVJUKCFtX2NyeXB0byk7CiAgICAgICAgIEFTU0VSVCgh
bV9sb2NhdGlvbmJhcik7CkBAIC01NzIsNyArNTcxLDYgQEAgdm9pZCBET01XaW5kb3c6OmNsZWFy
RE9NV2luZG93UHJvcGVydGllcygpCiAgICAgbV9wcm9wZXJ0aWVzLmNsZWFyKCk7CiAKICAgICBt
X3NjcmVlbiA9IDA7Ci0gICAgbV9zZWxlY3Rpb24gPSAwOwogICAgIG1faGlzdG9yeSA9IDA7CiAg
ICAgbV9jcnlwdG8gPSAwOwogICAgIG1fbG9jYXRpb25iYXIgPSAwOwpAQCAtODgzLDkgKzg4MSw4
IEBAIERPTVNlbGVjdGlvbiogRE9NV2luZG93OjpnZXRTZWxlY3Rpb24oKQogewogICAgIGlmICgh
aXNDdXJyZW50bHlEaXNwbGF5ZWRJbkZyYW1lKCkpCiAgICAgICAgIHJldHVybiAwOwotICAgIGlm
ICghbV9zZWxlY3Rpb24pCi0gICAgICAgIG1fc2VsZWN0aW9uID0gRE9NU2VsZWN0aW9uOjpjcmVh
dGUobV9mcmFtZSk7Ci0gICAgcmV0dXJuIG1fc2VsZWN0aW9uLmdldCgpOworCisgICAgcmV0dXJu
IG1fZnJhbWUtPmRvY3VtZW50KCktPmdldFNlbGVjdGlvbigpOwogfQogCiBFbGVtZW50KiBET01X
aW5kb3c6OmZyYW1lRWxlbWVudCgpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL0RPTVdpbmRvdy5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuaAppbmRleCA3
OGZiNmY2ZTNiMTZkNWFmOGYxMTk3ZjUxNzc4OWVkZDk4Yzk4YzRiLi41Zjk5ZjA5ZjE2MTdjODlk
MDgwYzkxNTA4YzljNzMxMmM2ZDM2Yzc5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L0RPTVdpbmRvdy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmgKQEAgLTQy
NSw3ICs0MjUsNiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIEhhc2hTZXQ8RE9NV2lu
ZG93UHJvcGVydHkqPiBtX3Byb3BlcnRpZXM7CiAKICAgICAgICAgbXV0YWJsZSBSZWZQdHI8U2Ny
ZWVuPiBtX3NjcmVlbjsKLSAgICAgICAgbXV0YWJsZSBSZWZQdHI8RE9NU2VsZWN0aW9uPiBtX3Nl
bGVjdGlvbjsKICAgICAgICAgbXV0YWJsZSBSZWZQdHI8SGlzdG9yeT4gbV9oaXN0b3J5OwogICAg
ICAgICBtdXRhYmxlIFJlZlB0cjxDcnlwdG8+ICBtX2NyeXB0bzsKICAgICAgICAgbXV0YWJsZSBS
ZWZQdHI8QmFySW5mbz4gbV9sb2NhdGlvbmJhcjsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>141092</attachid>
            <date>2012-05-09 23:40:38 -0700</date>
            <delta_ts>2012-05-10 00:46:48 -0700</delta_ts>
            <desc>WIP</desc>
            <filename>bug-82699-20120510154036.patch</filename>
            <type>text/plain</type>
            <size>10747</size>
            <attacher name="Shinya Kawanaka">shinyak</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE2NjA1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjE4NTQ5ZDg4NGQyOGU0
ZTgxZWM4ZTYyNThjZjcyMzI1YTIyZjk1YS4uMGY3NzdlYTkxODdiMjVjNWJjNGNjMTVlNTdlNTIw
ZWI2MjQ0ZDY0NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDEyLTA1LTA5ICBTaGlu
eWEgS2F3YW5ha2EgIDxzaGlueWFrQGNocm9taXVtLm9yZz4KKworICAgICAgICBbUmVmYWN0b3Jp
bmddIE1vdmUgU2VsZWN0aW9uIGZyb20gRE9NV2luZG93IHRvIFRyZWVTY29wZS4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgyNjk5CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgU2luY2UgU2hhZG93Um9vdCB3
aWxsIGFsc28gbWFuYWdlIGl0cyBvd24gdmVyc2lvbiBvZiBET01TZWxlY3Rpb24sIHdlIHdvdWxk
IGxpa2UgdG8KKyAgICAgICAgc2hhcmUgdGhlIGNvZGUgdG8gcmV0dXJuIERPTVNlbGVjdGlvbiBh
bW9uZyBEb2N1bWVudCBhbmQgRE9NU2VsZWN0aW9uLiBUaGlzIHBhdGNoIG1vdmVzCisgICAgICAg
IERPTVNlbGVjdGlvbiByZWxhdGVkIGNvZGUgZnJvbSBET01XaW5kb3cgdG8gVHJlZVNjb3BlLgor
CisgICAgICAgIE5vIG5ldyB0ZXN0cywgc2hvdWxkIGNvdmVyZXJlZCBieSBleGlzdGluZyB0ZXN0
cy4KKworICAgICAgICAqIGRvbS9Eb2N1bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEb2N1
bWVudDo6dXBkYXRlRm9jdXNBcHBlYXJhbmNlVGltZXJGaXJlZCk6CisgICAgICAgICogZG9tL0Rv
Y3VtZW50Lmg6CisgICAgICAgIChEb2N1bWVudCk6CisgICAgICAgICogZG9tL1NoYWRvd1Jvb3Qu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6U2hhZG93Um9vdDo6c2VsZWN0aW9uKToKKyAgICAgICAg
KiBkb20vVHJlZVNjb3BlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlRyZWVTY29wZTo6flRyZWVT
Y29wZSk6CisgICAgICAgIChXZWJDb3JlOjpUcmVlU2NvcGU6OmdldFNlbGVjdGlvbik6CisgICAg
ICAgIChXZWJDb3JlKToKKyAgICAgICAgKiBkb20vVHJlZVNjb3BlLmg6CisgICAgICAgIChXZWJD
b3JlKToKKyAgICAgICAgKFRyZWVTY29wZSk6CisgICAgICAgICogcGFnZS9ET01TZWxlY3Rpb24u
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6RE9NU2VsZWN0aW9uOjpET01TZWxlY3Rpb24pOgorICAg
ICAgICAoV2ViQ29yZTo6RE9NU2VsZWN0aW9uOjpkaXNjb25uZWN0VHJlZVNjb3BlKToKKyAgICAg
ICAgKFdlYkNvcmUpOgorICAgICAgICAqIHBhZ2UvRE9NU2VsZWN0aW9uLmg6CisgICAgICAgIChX
ZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OkRPTVNlbGVjdGlvbjo6Y3JlYXRlKToKKyAgICAg
ICAgKERPTVNlbGVjdGlvbik6CisgICAgICAgICogcGFnZS9ET01XaW5kb3cuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6RE9NV2luZG93Ojp+RE9NV2luZG93KToKKyAgICAgICAgKFdlYkNvcmU6OkRP
TVdpbmRvdzo6Y2xlYXJET01XaW5kb3dQcm9wZXJ0aWVzKToKKyAgICAgICAgKFdlYkNvcmU6OkRP
TVdpbmRvdzo6Z2V0U2VsZWN0aW9uKToKKyAgICAgICAgKiBwYWdlL0RPTVdpbmRvdy5oOgorICAg
ICAgICAoRE9NV2luZG93KToKKwogMjAxMi0wNS0wOSAgSmFzb24gTGl1ICA8amFzb24ubGl1QHRv
cmNobW9iaWxlLmNvbS5jbj4KIAogICAgICAgICBbQmxhY2tCZXJyeV0gQ29va2llIHBhcnNpbmcg
aXNzdWUuIElmIHRoZSBjb29raWUgdmFsdWUgcHJvdmlkZWQgd2FzICgiKSB0aGVuIHRoZSBicm93
c2VyIGNyZWF0ZXMgYSBzZXNzaW9uIGNvb2tpZSBpbnN0ZWFkLgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5j
cHAKaW5kZXggMDBhN2RjY2U0ZTk4ZTFmNDA4YzBmNWIzY2Q0ODIxN2YyZTg5YTBkMi4uOTYzMmM1
YTZjZGM0MWQ0ODBjYjU4OTlkZTI1NzdmOTViMTNlY2JhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvZG9tL0RvY3VtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQu
Y3BwCkBAIC00Niw2ICs0Niw3IEBACiAjaW5jbHVkZSAiQ29udGVudFNlY3VyaXR5UG9saWN5Lmgi
CiAjaW5jbHVkZSAiQ29va2llSmFyLmgiCiAjaW5jbHVkZSAiRE9NSW1wbGVtZW50YXRpb24uaCIK
KyNpbmNsdWRlICJET01TZWxlY3Rpb24uaCIKICNpbmNsdWRlICJET01XaW5kb3cuaCIKICNpbmNs
dWRlICJEYXRlQ29tcG9uZW50cy5oIgogI2luY2x1ZGUgIkRldmljZU1vdGlvbkNvbnRyb2xsZXIu
aCIKQEAgLTUwODQsMTIgKzUwODUsNiBAQCB2b2lkIERvY3VtZW50Ojp1cGRhdGVGb2N1c0FwcGVh
cmFuY2VUaW1lckZpcmVkKFRpbWVyPERvY3VtZW50PiopCiAgICAgICAgIGVsZW1lbnQtPnVwZGF0
ZUZvY3VzQXBwZWFyYW5jZShtX3VwZGF0ZUZvY3VzQXBwZWFyYW5jZVJlc3RvcmVzU2VsZWN0aW9u
KTsKIH0KIAotLy8gRkYgbWV0aG9kIGZvciBhY2Nlc3NpbmcgdGhlIHNlbGVjdGlvbiBhZGRlZCBm
b3IgY29tcGF0aWJpbGl0eS4KLURPTVNlbGVjdGlvbiogRG9jdW1lbnQ6OmdldFNlbGVjdGlvbigp
IGNvbnN0Ci17Ci0gICAgcmV0dXJuIGZyYW1lKCkgPyBmcmFtZSgpLT5kb21XaW5kb3coKS0+Z2V0
U2VsZWN0aW9uKCkgOiAwOwotfQotCiB2b2lkIERvY3VtZW50OjphdHRhY2hSYW5nZShSYW5nZSog
cmFuZ2UpCiB7CiAgICAgQVNTRVJUKCFtX3Jhbmdlcy5jb250YWlucyhyYW5nZSkpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20v
RG9jdW1lbnQuaAppbmRleCA2YzY4NGU4MjI4YjM4MWYwZTkxNDM1YjBhYzFlZDQ0YzE2NzA1MmRm
Li4xZWY2YjRhOWJhYmRhYzM3OGNmZmM4ZGU4ZTAzN2YyMDEyMTAyNzlmIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9j
dW1lbnQuaApAQCAtOTY5LDkgKzk2OSw2IEBAIHB1YmxpYzoKICAgICB2b2lkIHVwZGF0ZUZvY3Vz
QXBwZWFyYW5jZVNvb24oYm9vbCByZXN0b3JlUHJldmlvdXNTZWxlY3Rpb24pOwogICAgIHZvaWQg
Y2FuY2VsRm9jdXNBcHBlYXJhbmNlVXBkYXRlKCk7CiAgICAgICAgIAotICAgIC8vIEZGIG1ldGhv
ZCBmb3IgYWNjZXNzaW5nIHRoZSBzZWxlY3Rpb24gYWRkZWQgZm9yIGNvbXBhdGliaWxpdHkuCi0g
ICAgRE9NU2VsZWN0aW9uKiBnZXRTZWxlY3Rpb24oKSBjb25zdDsKLSAgICAKICAgICAvLyBFeHRl
bnNpb24gZm9yIG1hbmlwdWxhdGluZyBjYW52YXMgZHJhd2luZyBjb250ZXh0cyBmb3IgdXNlIGlu
IENTUwogICAgIENhbnZhc1JlbmRlcmluZ0NvbnRleHQqIGdldENTU0NhbnZhc0NvbnRleHQoY29u
c3QgU3RyaW5nJiB0eXBlLCBjb25zdCBTdHJpbmcmIG5hbWUsIGludCB3aWR0aCwgaW50IGhlaWdo
dCk7CiAgICAgSFRNTENhbnZhc0VsZW1lbnQqIGdldENTU0NhbnZhc0VsZW1lbnQoY29uc3QgU3Ry
aW5nJiBuYW1lKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TaGFkb3dSb290LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TaGFkb3dSb290LmNwcAppbmRleCBhYTAzNGJhMzAwZTI3
NTYxN2U1YjdmOTVhY2I3NTdhNzM2Njk1NmQ1Li42ZTRjM2JkNjIyOGMyNGZmNmE1YmYzYzQ5Mzk2
OTdjZDlmOTUwNDM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2hhZG93Um9vdC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1NoYWRvd1Jvb3QuY3BwCkBAIC0xNTEsOCArMTUx
LDggQEAgdm9pZCBTaGFkb3dSb290OjpzZXRJbm5lckhUTUwoY29uc3QgU3RyaW5nJiBtYXJrdXAs
IEV4Y2VwdGlvbkNvZGUmIGVjKQogCiBET01TZWxlY3Rpb24qIFNoYWRvd1Jvb3Q6OnNlbGVjdGlv
bigpCiB7Ci0gICAgaWYgKGRvY3VtZW50KCkgJiYgZG9jdW1lbnQoKS0+ZG9tV2luZG93KCkpCi0g
ICAgICAgIHJldHVybiBkb2N1bWVudCgpLT5kb21XaW5kb3coKS0+Z2V0U2VsZWN0aW9uKCk7Cisg
ICAgaWYgKGRvY3VtZW50KCkpCisgICAgICAgIHJldHVybiBkb2N1bWVudCgpLT5nZXRTZWxlY3Rp
b24oKTsKICAgICByZXR1cm4gMDsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9t
L1RyZWVTY29wZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vVHJlZVNjb3BlLmNwcAppbmRleCA5
OTgyNjQ1MzIwODc2NTA2OTNjNDQ4ZmM1YTc2YjkzMGMxYzQwZjkxLi40N2ZiNzkwNzA5MzNhZWNm
ODRlNmQ5NTU3M2Q1MGY0Nzc2MDA0ZWJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20v
VHJlZVNjb3BlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vVHJlZVNjb3BlLmNwcApAQCAt
MjcsNiArMjcsNyBAQAogI2luY2x1ZGUgIlRyZWVTY29wZS5oIgogCiAjaW5jbHVkZSAiQ29udGFp
bmVyTm9kZS5oIgorI2luY2x1ZGUgIkRPTVNlbGVjdGlvbi5oIgogI2luY2x1ZGUgIkRvY3VtZW50
LmgiCiAjaW5jbHVkZSAiRWxlbWVudC5oIgogI2luY2x1ZGUgIkZvY3VzQ29udHJvbGxlci5oIgpA
QCAtMzYsNiArMzcsNyBAQAogI2luY2x1ZGUgIkhUTUxNYXBFbGVtZW50LmgiCiAjaW5jbHVkZSAi
SFRNTE5hbWVzLmgiCiAjaW5jbHVkZSAiUGFnZS5oIgorI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVk
RmVhdHVyZXMuaCIKICNpbmNsdWRlICJUcmVlU2NvcGVBZG9wdGVyLmgiCiAjaW5jbHVkZSA8d3Rm
L3RleHQvQXRvbWljU3RyaW5nLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgpAQCAt
NTQsNiArNTYsOSBAQCBUcmVlU2NvcGU6OlRyZWVTY29wZShDb250YWluZXJOb2RlKiByb290Tm9k
ZSkKIAogVHJlZVNjb3BlOjp+VHJlZVNjb3BlKCkKIHsKKyAgICBpZiAobV9zZWxlY3Rpb24pCisg
ICAgICAgIG1fc2VsZWN0aW9uLT5kaXNjb25uZWN0VHJlZVNjb3BlKCk7CisgICAgbV9zZWxlY3Rp
b24gPSAwOwogfQogCiB2b2lkIFRyZWVTY29wZTo6ZGVzdHJveVRyZWVTY29wZURhdGEoKQpAQCAt
MTE2LDYgKzEyMSwxOCBAQCBIVE1MTWFwRWxlbWVudCogVHJlZVNjb3BlOjpnZXRJbWFnZU1hcChj
b25zdCBTdHJpbmcmIHVybCkgY29uc3QKICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8SFRNTE1hcEVs
ZW1lbnQqPihtX2ltYWdlTWFwc0J5TmFtZS5nZXRFbGVtZW50QnlNYXBOYW1lKEF0b21pY1N0cmlu
ZyhuYW1lKS5pbXBsKCksIHRoaXMpKTsKIH0KIAorRE9NU2VsZWN0aW9uKiBUcmVlU2NvcGU6Omdl
dFNlbGVjdGlvbigpIGNvbnN0Cit7CisgICAgaWYgKCFyb290Tm9kZSgpLT5kb2N1bWVudCgpLT5m
cmFtZSgpKQorICAgICAgICByZXR1cm4gMDsKKworICAgIGlmIChtX3NlbGVjdGlvbikKKyAgICAg
ICAgcmV0dXJuIG1fc2VsZWN0aW9uLmdldCgpOworCisgICAgbV9zZWxlY3Rpb24gPSBET01TZWxl
Y3Rpb246OmNyZWF0ZShyb290Tm9kZSgpLT5kb2N1bWVudCgpKTsKKyAgICByZXR1cm4gbV9zZWxl
Y3Rpb24uZ2V0KCk7Cit9CisKIEVsZW1lbnQqIFRyZWVTY29wZTo6ZmluZEFuY2hvcihjb25zdCBT
dHJpbmcmIG5hbWUpCiB7CiAgICAgaWYgKG5hbWUuaXNFbXB0eSgpKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvZG9tL1RyZWVTY29wZS5oIGIvU291cmNlL1dlYkNvcmUvZG9tL1RyZWVTY29w
ZS5oCmluZGV4IDc2YzEyZTVjOTBmNzFlMjRjZTk4Yzg3ZDFiZjE3MThmMzE4MjZmOTYuLjk5MjA5
MzI2OTZkMjJjMTQ4YWVhODcyOTNhMDA0NjU0Yjk0YWFhMTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2RvbS9UcmVlU2NvcGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vVHJlZVNjb3Bl
LmgKQEAgLTMzLDYgKzMzLDcgQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgQ29udGFp
bmVyTm9kZTsKK2NsYXNzIERPTVNlbGVjdGlvbjsKIGNsYXNzIEVsZW1lbnQ7CiBjbGFzcyBIVE1M
TWFwRWxlbWVudDsKIGNsYXNzIE5vZGU7CkBAIC02Miw2ICs2Myw4IEBAIHB1YmxpYzoKICAgICB2
b2lkIHJlbW92ZU5vZGVMaXN0Q2FjaGUoKSB7IEFTU0VSVChtX251bU5vZGVMaXN0Q2FjaGVzID4g
MCk7IC0tbV9udW1Ob2RlTGlzdENhY2hlczsgfQogICAgIGJvb2wgaGFzTm9kZUxpc3RDYWNoZXMo
KSBjb25zdCB7IHJldHVybiBtX251bU5vZGVMaXN0Q2FjaGVzOyB9CiAKKyAgICBET01TZWxlY3Rp
b24qIGdldFNlbGVjdGlvbigpIGNvbnN0OworCiAgICAgLy8gRmluZCBmaXJzdCBhbmNob3Igd2l0
aCB0aGUgZ2l2ZW4gbmFtZS4KICAgICAvLyBGaXJzdCBzZWFyY2hlcyBmb3IgYW4gZWxlbWVudCB3
aXRoIHRoZSBnaXZlbiBJRCwgYnV0IGlmIHRoYXQgZmFpbHMsIHRoZW4gbG9va3MKICAgICAvLyBm
b3IgYW4gYW5jaG9yIHdpdGggdGhlIGdpdmVuIG5hbWUuIElEIG1hdGNoaW5nIGlzIGFsd2F5cyBj
YXNlIHNlbnNpdGl2ZSwgYnV0CkBAIC05MCw2ICs5Myw4IEBAIHByaXZhdGU6CiAgICAgRG9jdW1l
bnRPcmRlcmVkTWFwIG1faW1hZ2VNYXBzQnlOYW1lOwogCiAgICAgdW5zaWduZWQgbV9udW1Ob2Rl
TGlzdENhY2hlczsKKworICAgIG11dGFibGUgUmVmUHRyPERPTVNlbGVjdGlvbj4gbV9zZWxlY3Rp
b247CiB9OwogCiBpbmxpbmUgYm9vbCBUcmVlU2NvcGU6Omhhc0VsZW1lbnRXaXRoSWQoQXRvbWlj
U3RyaW5nSW1wbCogaWQpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RP
TVNlbGVjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVNlbGVjdGlvbi5jcHAKaW5k
ZXggZmQ4NDY1ODNmZmI1ZTZjODY4ZjhiZGZjYTg2ZWQ1YTQ3OGM0MTgyNC4uZGVmYzIwOWVlMjNm
NWM2NjE5Yjg1NDc2NDFlZDZiZWRiMWJmMDY2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGFnZS9ET01TZWxlY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NU2VsZWN0
aW9uLmNwcApAQCAtNTgsMTEgKzU4LDE4IEBAIHN0YXRpYyBOb2RlKiBzZWxlY3Rpb25TaGFkb3dB
bmNlc3RvcihGcmFtZSogZnJhbWUpCiAgICAgcmV0dXJuIHNoYWRvd0FuY2VzdG9yOwogfQogCi1E
T01TZWxlY3Rpb246OkRPTVNlbGVjdGlvbihGcmFtZSogZnJhbWUpCi0gICAgOiBET01XaW5kb3dQ
cm9wZXJ0eShmcmFtZSkKK0RPTVNlbGVjdGlvbjo6RE9NU2VsZWN0aW9uKGNvbnN0IFRyZWVTY29w
ZSogdHJlZVNjb3BlKQorICAgIDogbV90cmVlU2NvcGUodHJlZVNjb3BlKQorICAgICwgbV9mcmFt
ZSh0cmVlU2NvcGUtPnJvb3ROb2RlKCktPmRvY3VtZW50KCktPmZyYW1lKCkpCiB7CiB9CiAKK3Zv
aWQgRE9NU2VsZWN0aW9uOjpkaXNjb25uZWN0VHJlZVNjb3BlKCkKK3sKKyAgICBtX2ZyYW1lID0g
MDsKKyAgICBtX3RyZWVTY29wZSA9IDA7Cit9CisKIGNvbnN0IFZpc2libGVTZWxlY3Rpb24mIERP
TVNlbGVjdGlvbjo6dmlzaWJsZVNlbGVjdGlvbigpIGNvbnN0CiB7CiAgICAgQVNTRVJUKG1fZnJh
bWUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9ET01TZWxlY3Rpb24uaCBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvRE9NU2VsZWN0aW9uLmgKaW5kZXggOTgwM2FjY2EyMmJhNDNjNTI3
Njc4NTZhMjM5NWM3NjhjOGE3ZDdmNC4uNzA1OGI1MGI5ZjY2M2M5YmQ1OGUyMTVjMDkzMWZhYWU3
M2I4N2RjNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9ET01TZWxlY3Rpb24uaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVNlbGVjdGlvbi5oCkBAIC0xLDUgKzEsNiBAQAog
LyoKICAqIENvcHlyaWdodCAoQykgMjAwNyBBcHBsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICogQ29weXJpZ2h0IChDKSAyMDEyIEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVk
LgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0zOCwxNSArMzksMTggQEAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAogICAgIGNsYXNzIEZyYW1lOwotICAgIGNsYXNzIFJhbmdlOwog
ICAgIGNsYXNzIE5vZGU7CisgICAgY2xhc3MgUmFuZ2U7CisgICAgY2xhc3MgVHJlZVNjb3BlOwog
ICAgIGNsYXNzIFZpc2libGVTZWxlY3Rpb247CiAKICAgICB0eXBlZGVmIGludCBFeGNlcHRpb25D
b2RlOwogCi0gICAgY2xhc3MgRE9NU2VsZWN0aW9uIDogcHVibGljIFJlZkNvdW50ZWQ8RE9NU2Vs
ZWN0aW9uPiwgcHVibGljIERPTVdpbmRvd1Byb3BlcnR5IHsKKyAgICBjbGFzcyBET01TZWxlY3Rp
b24gOiBwdWJsaWMgUmVmQ291bnRlZDxET01TZWxlY3Rpb24+IHsKICAgICBwdWJsaWM6Ci0gICAg
ICAgIHN0YXRpYyBQYXNzUmVmUHRyPERPTVNlbGVjdGlvbj4gY3JlYXRlKEZyYW1lKiBmcmFtZSkg
eyByZXR1cm4gYWRvcHRSZWYobmV3IERPTVNlbGVjdGlvbihmcmFtZSkpOyB9CisgICAgICAgIHN0
YXRpYyBQYXNzUmVmUHRyPERPTVNlbGVjdGlvbj4gY3JlYXRlKGNvbnN0IFRyZWVTY29wZSogdHJl
ZVNjb3BlKSB7IHJldHVybiBhZG9wdFJlZihuZXcgRE9NU2VsZWN0aW9uKHRyZWVTY29wZSkpOyB9
CisKKyAgICAgICAgdm9pZCBkaXNjb25uZWN0VHJlZVNjb3BlKCk7CiAKICAgICAgICAgLy8gU2Fm
YXJpIFNlbGVjdGlvbiBPYmplY3QgQVBJCiAgICAgICAgIC8vIFRoZXNlIG1ldGhvZHMgcmV0dXJu
IHRoZSB2YWxpZCBlcXVpdmFsZW50cyBvZiBpbnRlcm5hbCBlZGl0aW5nIHBvc2l0aW9ucy4KQEAg
LTg4LDcgKzkyLDEwIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdm9pZCBlbXB0eSgp
OwogCiAgICAgcHJpdmF0ZToKLSAgICAgICAgZXhwbGljaXQgRE9NU2VsZWN0aW9uKEZyYW1lKik7
CisgICAgICAgIGNvbnN0IFRyZWVTY29wZSogbV90cmVlU2NvcGU7CisgICAgICAgIEZyYW1lKiBt
X2ZyYW1lOworCisgICAgICAgIGV4cGxpY2l0IERPTVNlbGVjdGlvbihjb25zdCBUcmVlU2NvcGUq
KTsKIAogICAgICAgICAvLyBDb252ZW5pZW5jZSBtZXRob2QgZm9yIGFjY2Vzc29ycywgZG9lcyBu
b3QgTlVMTCBjaGVjayBtX2ZyYW1lLgogICAgICAgICBjb25zdCBWaXNpYmxlU2VsZWN0aW9uJiB2
aXNpYmxlU2VsZWN0aW9uKCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L0RPTVdpbmRvdy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5jcHAKaW5kZXgg
ZGVmMGU2MjZjNGJlM2ExODZiODcwYjM1MGY0ZjJlODNkMjc1YjYzZS4uNTdkZDkxMWVlZDZmZmFl
NzIxMTNjZDdmNDBkZmVmZGRmOGFjZWRkMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9ET01XaW5kb3cuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcApA
QCAtMzk5LDcgKzM5OSw2IEBAIERPTVdpbmRvdzo6fkRPTVdpbmRvdygpCiAjaWZuZGVmIE5ERUJV
RwogICAgIGlmICghbV9zdXNwZW5kZWRGb3JQYWdlQ2FjaGUpIHsKICAgICAgICAgQVNTRVJUKCFt
X3NjcmVlbik7Ci0gICAgICAgIEFTU0VSVCghbV9zZWxlY3Rpb24pOwogICAgICAgICBBU1NFUlQo
IW1faGlzdG9yeSk7CiAgICAgICAgIEFTU0VSVCghbV9jcnlwdG8pOwogICAgICAgICBBU1NFUlQo
IW1fbG9jYXRpb25iYXIpOwpAQCAtNTcyLDcgKzU3MSw2IEBAIHZvaWQgRE9NV2luZG93OjpjbGVh
ckRPTVdpbmRvd1Byb3BlcnRpZXMoKQogICAgIG1fcHJvcGVydGllcy5jbGVhcigpOwogCiAgICAg
bV9zY3JlZW4gPSAwOwotICAgIG1fc2VsZWN0aW9uID0gMDsKICAgICBtX2hpc3RvcnkgPSAwOwog
ICAgIG1fY3J5cHRvID0gMDsKICAgICBtX2xvY2F0aW9uYmFyID0gMDsKQEAgLTg4Myw5ICs4ODEs
OCBAQCBET01TZWxlY3Rpb24qIERPTVdpbmRvdzo6Z2V0U2VsZWN0aW9uKCkKIHsKICAgICBpZiAo
IWlzQ3VycmVudGx5RGlzcGxheWVkSW5GcmFtZSgpKQogICAgICAgICByZXR1cm4gMDsKLSAgICBp
ZiAoIW1fc2VsZWN0aW9uKQotICAgICAgICBtX3NlbGVjdGlvbiA9IERPTVNlbGVjdGlvbjo6Y3Jl
YXRlKG1fZnJhbWUpOwotICAgIHJldHVybiBtX3NlbGVjdGlvbi5nZXQoKTsKKworICAgIHJldHVy
biBtX2ZyYW1lLT5kb2N1bWVudCgpLT5nZXRTZWxlY3Rpb24oKTsKIH0KIAogRWxlbWVudCogRE9N
V2luZG93OjpmcmFtZUVsZW1lbnQoKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGFnZS9ET01XaW5kb3cuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmgKaW5kZXgg
NzhmYjZmNmUzYjE2ZDVhZjhmMTE5N2Y1MTc3ODllZGQ5OGM5OGM0Yi4uNWY5OWYwOWYxNjE3Yzg5
ZDA4MGM5MTUwOGM5YzczMTJjNmQzNmM3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9ET01XaW5kb3cuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5oCkBAIC00
MjUsNyArNDI1LDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBIYXNoU2V0PERPTVdp
bmRvd1Byb3BlcnR5Kj4gbV9wcm9wZXJ0aWVzOwogCiAgICAgICAgIG11dGFibGUgUmVmUHRyPFNj
cmVlbj4gbV9zY3JlZW47Ci0gICAgICAgIG11dGFibGUgUmVmUHRyPERPTVNlbGVjdGlvbj4gbV9z
ZWxlY3Rpb247CiAgICAgICAgIG11dGFibGUgUmVmUHRyPEhpc3Rvcnk+IG1faGlzdG9yeTsKICAg
ICAgICAgbXV0YWJsZSBSZWZQdHI8Q3J5cHRvPiAgbV9jcnlwdG87CiAgICAgICAgIG11dGFibGUg
UmVmUHRyPEJhckluZm8+IG1fbG9jYXRpb25iYXI7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>141102</attachid>
            <date>2012-05-10 00:46:54 -0700</date>
            <delta_ts>2012-05-10 01:37:26 -0700</delta_ts>
            <desc>WIP</desc>
            <filename>bug-82699-20120510164652.patch</filename>
            <type>text/plain</type>
            <size>10797</size>
            <attacher name="Shinya Kawanaka">shinyak</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE2NjE0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYWM3YTE1YTYxOGJhYjUx
NWE4MTFiNmUzN2JmOWNiYzhlNzg2MzAwYy4uZjBiNDNhYzkwYzZjNDcyYzZiZGY1Nzg0OTBhODI4
N2QzODVlNjlkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDEyLTA1LTA5ICBTaGlu
eWEgS2F3YW5ha2EgIDxzaGlueWFrQGNocm9taXVtLm9yZz4KKworICAgICAgICBbUmVmYWN0b3Jp
bmddIE1vdmUgU2VsZWN0aW9uIGZyb20gRE9NV2luZG93IHRvIFRyZWVTY29wZS4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgyNjk5CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgU2luY2UgU2hhZG93Um9vdCB3
aWxsIGFsc28gbWFuYWdlIGl0cyBvd24gdmVyc2lvbiBvZiBET01TZWxlY3Rpb24sIHdlIHdvdWxk
IGxpa2UgdG8KKyAgICAgICAgc2hhcmUgdGhlIGNvZGUgdG8gcmV0dXJuIERPTVNlbGVjdGlvbiBh
bW9uZyBEb2N1bWVudCBhbmQgRE9NU2VsZWN0aW9uLiBUaGlzIHBhdGNoIG1vdmVzCisgICAgICAg
IERPTVNlbGVjdGlvbiByZWxhdGVkIGNvZGUgZnJvbSBET01XaW5kb3cgdG8gVHJlZVNjb3BlLgor
CisgICAgICAgIE5vIG5ldyB0ZXN0cywgc2hvdWxkIGNvdmVyZXJlZCBieSBleGlzdGluZyB0ZXN0
cy4KKworICAgICAgICAqIGRvbS9Eb2N1bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEb2N1
bWVudDo6dXBkYXRlRm9jdXNBcHBlYXJhbmNlVGltZXJGaXJlZCk6CisgICAgICAgICogZG9tL0Rv
Y3VtZW50Lmg6CisgICAgICAgIChEb2N1bWVudCk6CisgICAgICAgICogZG9tL1NoYWRvd1Jvb3Qu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6U2hhZG93Um9vdDo6c2VsZWN0aW9uKToKKyAgICAgICAg
KiBkb20vVHJlZVNjb3BlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlRyZWVTY29wZTo6flRyZWVT
Y29wZSk6CisgICAgICAgIChXZWJDb3JlOjpUcmVlU2NvcGU6OmdldFNlbGVjdGlvbik6CisgICAg
ICAgIChXZWJDb3JlKToKKyAgICAgICAgKiBkb20vVHJlZVNjb3BlLmg6CisgICAgICAgIChXZWJD
b3JlKToKKyAgICAgICAgKFRyZWVTY29wZSk6CisgICAgICAgICogcGFnZS9ET01TZWxlY3Rpb24u
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6RE9NU2VsZWN0aW9uOjpET01TZWxlY3Rpb24pOgorICAg
ICAgICAoV2ViQ29yZTo6RE9NU2VsZWN0aW9uOjpkaXNjb25uZWN0VHJlZVNjb3BlKToKKyAgICAg
ICAgKFdlYkNvcmUpOgorICAgICAgICAqIHBhZ2UvRE9NU2VsZWN0aW9uLmg6CisgICAgICAgIChX
ZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OkRPTVNlbGVjdGlvbjo6Y3JlYXRlKToKKyAgICAg
ICAgKERPTVNlbGVjdGlvbik6CisgICAgICAgICogcGFnZS9ET01XaW5kb3cuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6RE9NV2luZG93Ojp+RE9NV2luZG93KToKKyAgICAgICAgKFdlYkNvcmU6OkRP
TVdpbmRvdzo6Y2xlYXJET01XaW5kb3dQcm9wZXJ0aWVzKToKKyAgICAgICAgKFdlYkNvcmU6OkRP
TVdpbmRvdzo6Z2V0U2VsZWN0aW9uKToKKyAgICAgICAgKiBwYWdlL0RPTVdpbmRvdy5oOgorICAg
ICAgICAoRE9NV2luZG93KToKKwogMjAxMi0wNS0wOSAgS2VudCBUYW11cmEgIDx0a2VudEBjaHJv
bWl1bS5vcmc+CiAKICAgICAgICAgQ2FsZW5kYXIgUGlja2VyOiBGaXggYSBjcmFzaCBieSBjaGFu
Z2luZyBpbnB1dCB0eXBlLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKaW5kZXggMDBhN2RjY2U0ZTk4
ZTFmNDA4YzBmNWIzY2Q0ODIxN2YyZTg5YTBkMi4uOTYzMmM1YTZjZGM0MWQ0ODBjYjU4OTlkZTI1
NzdmOTViMTNlY2JhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCkBAIC00Niw2ICs0Niw3IEBA
CiAjaW5jbHVkZSAiQ29udGVudFNlY3VyaXR5UG9saWN5LmgiCiAjaW5jbHVkZSAiQ29va2llSmFy
LmgiCiAjaW5jbHVkZSAiRE9NSW1wbGVtZW50YXRpb24uaCIKKyNpbmNsdWRlICJET01TZWxlY3Rp
b24uaCIKICNpbmNsdWRlICJET01XaW5kb3cuaCIKICNpbmNsdWRlICJEYXRlQ29tcG9uZW50cy5o
IgogI2luY2x1ZGUgIkRldmljZU1vdGlvbkNvbnRyb2xsZXIuaCIKQEAgLTUwODQsMTIgKzUwODUs
NiBAQCB2b2lkIERvY3VtZW50Ojp1cGRhdGVGb2N1c0FwcGVhcmFuY2VUaW1lckZpcmVkKFRpbWVy
PERvY3VtZW50PiopCiAgICAgICAgIGVsZW1lbnQtPnVwZGF0ZUZvY3VzQXBwZWFyYW5jZShtX3Vw
ZGF0ZUZvY3VzQXBwZWFyYW5jZVJlc3RvcmVzU2VsZWN0aW9uKTsKIH0KIAotLy8gRkYgbWV0aG9k
IGZvciBhY2Nlc3NpbmcgdGhlIHNlbGVjdGlvbiBhZGRlZCBmb3IgY29tcGF0aWJpbGl0eS4KLURP
TVNlbGVjdGlvbiogRG9jdW1lbnQ6OmdldFNlbGVjdGlvbigpIGNvbnN0Ci17Ci0gICAgcmV0dXJu
IGZyYW1lKCkgPyBmcmFtZSgpLT5kb21XaW5kb3coKS0+Z2V0U2VsZWN0aW9uKCkgOiAwOwotfQot
CiB2b2lkIERvY3VtZW50OjphdHRhY2hSYW5nZShSYW5nZSogcmFuZ2UpCiB7CiAgICAgQVNTRVJU
KCFtX3Jhbmdlcy5jb250YWlucyhyYW5nZSkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
ZG9tL0RvY3VtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaAppbmRleCA2YzY4
NGU4MjI4YjM4MWYwZTkxNDM1YjBhYzFlZDQ0YzE2NzA1MmRmLi4xZWY2YjRhOWJhYmRhYzM3OGNm
ZmM4ZGU4ZTAzN2YyMDEyMTAyNzlmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9j
dW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaApAQCAtOTY5LDkgKzk2
OSw2IEBAIHB1YmxpYzoKICAgICB2b2lkIHVwZGF0ZUZvY3VzQXBwZWFyYW5jZVNvb24oYm9vbCBy
ZXN0b3JlUHJldmlvdXNTZWxlY3Rpb24pOwogICAgIHZvaWQgY2FuY2VsRm9jdXNBcHBlYXJhbmNl
VXBkYXRlKCk7CiAgICAgICAgIAotICAgIC8vIEZGIG1ldGhvZCBmb3IgYWNjZXNzaW5nIHRoZSBz
ZWxlY3Rpb24gYWRkZWQgZm9yIGNvbXBhdGliaWxpdHkuCi0gICAgRE9NU2VsZWN0aW9uKiBnZXRT
ZWxlY3Rpb24oKSBjb25zdDsKLSAgICAKICAgICAvLyBFeHRlbnNpb24gZm9yIG1hbmlwdWxhdGlu
ZyBjYW52YXMgZHJhd2luZyBjb250ZXh0cyBmb3IgdXNlIGluIENTUwogICAgIENhbnZhc1JlbmRl
cmluZ0NvbnRleHQqIGdldENTU0NhbnZhc0NvbnRleHQoY29uc3QgU3RyaW5nJiB0eXBlLCBjb25z
dCBTdHJpbmcmIG5hbWUsIGludCB3aWR0aCwgaW50IGhlaWdodCk7CiAgICAgSFRNTENhbnZhc0Vs
ZW1lbnQqIGdldENTU0NhbnZhc0VsZW1lbnQoY29uc3QgU3RyaW5nJiBuYW1lKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TaGFkb3dSb290LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9TaGFkb3dSb290LmNwcAppbmRleCBhYTAzNGJhMzAwZTI3NTYxN2U1YjdmOTVhY2I3NTdhNzM2
Njk1NmQ1Li42ZTRjM2JkNjIyOGMyNGZmNmE1YmYzYzQ5Mzk2OTdjZDlmOTUwNDM0IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2hhZG93Um9vdC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvZG9tL1NoYWRvd1Jvb3QuY3BwCkBAIC0xNTEsOCArMTUxLDggQEAgdm9pZCBTaGFkb3dSb290
OjpzZXRJbm5lckhUTUwoY29uc3QgU3RyaW5nJiBtYXJrdXAsIEV4Y2VwdGlvbkNvZGUmIGVjKQog
CiBET01TZWxlY3Rpb24qIFNoYWRvd1Jvb3Q6OnNlbGVjdGlvbigpCiB7Ci0gICAgaWYgKGRvY3Vt
ZW50KCkgJiYgZG9jdW1lbnQoKS0+ZG9tV2luZG93KCkpCi0gICAgICAgIHJldHVybiBkb2N1bWVu
dCgpLT5kb21XaW5kb3coKS0+Z2V0U2VsZWN0aW9uKCk7CisgICAgaWYgKGRvY3VtZW50KCkpCisg
ICAgICAgIHJldHVybiBkb2N1bWVudCgpLT5nZXRTZWxlY3Rpb24oKTsKICAgICByZXR1cm4gMDsK
IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1RyZWVTY29wZS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vVHJlZVNjb3BlLmNwcAppbmRleCA5OTgyNjQ1MzIwODc2NTA2OTNjNDQ4
ZmM1YTc2YjkzMGMxYzQwZjkxLi40N2ZiNzkwNzA5MzNhZWNmODRlNmQ5NTU3M2Q1MGY0Nzc2MDA0
ZWJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vVHJlZVNjb3BlLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9kb20vVHJlZVNjb3BlLmNwcApAQCAtMjcsNiArMjcsNyBAQAogI2luY2x1
ZGUgIlRyZWVTY29wZS5oIgogCiAjaW5jbHVkZSAiQ29udGFpbmVyTm9kZS5oIgorI2luY2x1ZGUg
IkRPTVNlbGVjdGlvbi5oIgogI2luY2x1ZGUgIkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiRWxlbWVu
dC5oIgogI2luY2x1ZGUgIkZvY3VzQ29udHJvbGxlci5oIgpAQCAtMzYsNiArMzcsNyBAQAogI2lu
Y2x1ZGUgIkhUTUxNYXBFbGVtZW50LmgiCiAjaW5jbHVkZSAiSFRNTE5hbWVzLmgiCiAjaW5jbHVk
ZSAiUGFnZS5oIgorI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIKICNpbmNsdWRl
ICJUcmVlU2NvcGVBZG9wdGVyLmgiCiAjaW5jbHVkZSA8d3RmL3RleHQvQXRvbWljU3RyaW5nLmg+
CiAjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgpAQCAtNTQsNiArNTYsOSBAQCBUcmVlU2Nv
cGU6OlRyZWVTY29wZShDb250YWluZXJOb2RlKiByb290Tm9kZSkKIAogVHJlZVNjb3BlOjp+VHJl
ZVNjb3BlKCkKIHsKKyAgICBpZiAobV9zZWxlY3Rpb24pCisgICAgICAgIG1fc2VsZWN0aW9uLT5k
aXNjb25uZWN0VHJlZVNjb3BlKCk7CisgICAgbV9zZWxlY3Rpb24gPSAwOwogfQogCiB2b2lkIFRy
ZWVTY29wZTo6ZGVzdHJveVRyZWVTY29wZURhdGEoKQpAQCAtMTE2LDYgKzEyMSwxOCBAQCBIVE1M
TWFwRWxlbWVudCogVHJlZVNjb3BlOjpnZXRJbWFnZU1hcChjb25zdCBTdHJpbmcmIHVybCkgY29u
c3QKICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8SFRNTE1hcEVsZW1lbnQqPihtX2ltYWdlTWFwc0J5
TmFtZS5nZXRFbGVtZW50QnlNYXBOYW1lKEF0b21pY1N0cmluZyhuYW1lKS5pbXBsKCksIHRoaXMp
KTsKIH0KIAorRE9NU2VsZWN0aW9uKiBUcmVlU2NvcGU6OmdldFNlbGVjdGlvbigpIGNvbnN0Cit7
CisgICAgaWYgKCFyb290Tm9kZSgpLT5kb2N1bWVudCgpLT5mcmFtZSgpKQorICAgICAgICByZXR1
cm4gMDsKKworICAgIGlmIChtX3NlbGVjdGlvbikKKyAgICAgICAgcmV0dXJuIG1fc2VsZWN0aW9u
LmdldCgpOworCisgICAgbV9zZWxlY3Rpb24gPSBET01TZWxlY3Rpb246OmNyZWF0ZShyb290Tm9k
ZSgpLT5kb2N1bWVudCgpKTsKKyAgICByZXR1cm4gbV9zZWxlY3Rpb24uZ2V0KCk7Cit9CisKIEVs
ZW1lbnQqIFRyZWVTY29wZTo6ZmluZEFuY2hvcihjb25zdCBTdHJpbmcmIG5hbWUpCiB7CiAgICAg
aWYgKG5hbWUuaXNFbXB0eSgpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1RyZWVT
Y29wZS5oIGIvU291cmNlL1dlYkNvcmUvZG9tL1RyZWVTY29wZS5oCmluZGV4IDc2YzEyZTVjOTBm
NzFlMjRjZTk4Yzg3ZDFiZjE3MThmMzE4MjZmOTYuLjk5MjA5MzI2OTZkMjJjMTQ4YWVhODcyOTNh
MDA0NjU0Yjk0YWFhMTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9UcmVlU2NvcGUu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vVHJlZVNjb3BlLmgKQEAgLTMzLDYgKzMzLDcgQEAK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgQ29udGFpbmVyTm9kZTsKK2NsYXNzIERPTVNl
bGVjdGlvbjsKIGNsYXNzIEVsZW1lbnQ7CiBjbGFzcyBIVE1MTWFwRWxlbWVudDsKIGNsYXNzIE5v
ZGU7CkBAIC02Miw2ICs2Myw4IEBAIHB1YmxpYzoKICAgICB2b2lkIHJlbW92ZU5vZGVMaXN0Q2Fj
aGUoKSB7IEFTU0VSVChtX251bU5vZGVMaXN0Q2FjaGVzID4gMCk7IC0tbV9udW1Ob2RlTGlzdENh
Y2hlczsgfQogICAgIGJvb2wgaGFzTm9kZUxpc3RDYWNoZXMoKSBjb25zdCB7IHJldHVybiBtX251
bU5vZGVMaXN0Q2FjaGVzOyB9CiAKKyAgICBET01TZWxlY3Rpb24qIGdldFNlbGVjdGlvbigpIGNv
bnN0OworCiAgICAgLy8gRmluZCBmaXJzdCBhbmNob3Igd2l0aCB0aGUgZ2l2ZW4gbmFtZS4KICAg
ICAvLyBGaXJzdCBzZWFyY2hlcyBmb3IgYW4gZWxlbWVudCB3aXRoIHRoZSBnaXZlbiBJRCwgYnV0
IGlmIHRoYXQgZmFpbHMsIHRoZW4gbG9va3MKICAgICAvLyBmb3IgYW4gYW5jaG9yIHdpdGggdGhl
IGdpdmVuIG5hbWUuIElEIG1hdGNoaW5nIGlzIGFsd2F5cyBjYXNlIHNlbnNpdGl2ZSwgYnV0CkBA
IC05MCw2ICs5Myw4IEBAIHByaXZhdGU6CiAgICAgRG9jdW1lbnRPcmRlcmVkTWFwIG1faW1hZ2VN
YXBzQnlOYW1lOwogCiAgICAgdW5zaWduZWQgbV9udW1Ob2RlTGlzdENhY2hlczsKKworICAgIG11
dGFibGUgUmVmUHRyPERPTVNlbGVjdGlvbj4gbV9zZWxlY3Rpb247CiB9OwogCiBpbmxpbmUgYm9v
bCBUcmVlU2NvcGU6Omhhc0VsZW1lbnRXaXRoSWQoQXRvbWljU3RyaW5nSW1wbCogaWQpIGNvbnN0
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVNlbGVjdGlvbi5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0RPTVNlbGVjdGlvbi5jcHAKaW5kZXggZmQ4NDY1ODNmZmI1ZTZjODY4
ZjhiZGZjYTg2ZWQ1YTQ3OGM0MTgyNC4uZGVmYzIwOWVlMjNmNWM2NjE5Yjg1NDc2NDFlZDZiZWRi
MWJmMDY2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9ET01TZWxlY3Rpb24uY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NU2VsZWN0aW9uLmNwcApAQCAtNTgsMTEgKzU4
LDE4IEBAIHN0YXRpYyBOb2RlKiBzZWxlY3Rpb25TaGFkb3dBbmNlc3RvcihGcmFtZSogZnJhbWUp
CiAgICAgcmV0dXJuIHNoYWRvd0FuY2VzdG9yOwogfQogCi1ET01TZWxlY3Rpb246OkRPTVNlbGVj
dGlvbihGcmFtZSogZnJhbWUpCi0gICAgOiBET01XaW5kb3dQcm9wZXJ0eShmcmFtZSkKK0RPTVNl
bGVjdGlvbjo6RE9NU2VsZWN0aW9uKGNvbnN0IFRyZWVTY29wZSogdHJlZVNjb3BlKQorICAgIDog
bV90cmVlU2NvcGUodHJlZVNjb3BlKQorICAgICwgbV9mcmFtZSh0cmVlU2NvcGUtPnJvb3ROb2Rl
KCktPmRvY3VtZW50KCktPmZyYW1lKCkpCiB7CiB9CiAKK3ZvaWQgRE9NU2VsZWN0aW9uOjpkaXNj
b25uZWN0VHJlZVNjb3BlKCkKK3sKKyAgICBtX2ZyYW1lID0gMDsKKyAgICBtX3RyZWVTY29wZSA9
IDA7Cit9CisKIGNvbnN0IFZpc2libGVTZWxlY3Rpb24mIERPTVNlbGVjdGlvbjo6dmlzaWJsZVNl
bGVjdGlvbigpIGNvbnN0CiB7CiAgICAgQVNTRVJUKG1fZnJhbWUpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGFnZS9ET01TZWxlY3Rpb24uaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9N
U2VsZWN0aW9uLmgKaW5kZXggOTgwM2FjY2EyMmJhNDNjNTI3Njc4NTZhMjM5NWM3NjhjOGE3ZDdm
NC4uNjljY2QyYTRmYWVlMjk2MDYzN2E4NGMwNTExNmE3ZWY0NGNkZGRkMiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGFnZS9ET01TZWxlY3Rpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL0RPTVNlbGVjdGlvbi5oCkBAIC0xLDUgKzEsNiBAQAogLyoKICAqIENvcHlyaWdodCAoQykg
MjAwNyBBcHBsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAy
MDEyIEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAog
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCkBAIC0zOCwxNSArMzksMTggQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAog
ICAgIGNsYXNzIEZyYW1lOwotICAgIGNsYXNzIFJhbmdlOwogICAgIGNsYXNzIE5vZGU7CisgICAg
Y2xhc3MgUmFuZ2U7CisgICAgY2xhc3MgVHJlZVNjb3BlOwogICAgIGNsYXNzIFZpc2libGVTZWxl
Y3Rpb247CiAKICAgICB0eXBlZGVmIGludCBFeGNlcHRpb25Db2RlOwogCi0gICAgY2xhc3MgRE9N
U2VsZWN0aW9uIDogcHVibGljIFJlZkNvdW50ZWQ8RE9NU2VsZWN0aW9uPiwgcHVibGljIERPTVdp
bmRvd1Byb3BlcnR5IHsKKyAgICBjbGFzcyBET01TZWxlY3Rpb24gOiBwdWJsaWMgUmVmQ291bnRl
ZDxET01TZWxlY3Rpb24+IHsKICAgICBwdWJsaWM6Ci0gICAgICAgIHN0YXRpYyBQYXNzUmVmUHRy
PERPTVNlbGVjdGlvbj4gY3JlYXRlKEZyYW1lKiBmcmFtZSkgeyByZXR1cm4gYWRvcHRSZWYobmV3
IERPTVNlbGVjdGlvbihmcmFtZSkpOyB9CisgICAgICAgIHN0YXRpYyBQYXNzUmVmUHRyPERPTVNl
bGVjdGlvbj4gY3JlYXRlKGNvbnN0IFRyZWVTY29wZSogdHJlZVNjb3BlKSB7IHJldHVybiBhZG9w
dFJlZihuZXcgRE9NU2VsZWN0aW9uKHRyZWVTY29wZSkpOyB9CisKKyAgICAgICAgdm9pZCBkaXNj
b25uZWN0VHJlZVNjb3BlKCk7CiAKICAgICAgICAgLy8gU2FmYXJpIFNlbGVjdGlvbiBPYmplY3Qg
QVBJCiAgICAgICAgIC8vIFRoZXNlIG1ldGhvZHMgcmV0dXJuIHRoZSB2YWxpZCBlcXVpdmFsZW50
cyBvZiBpbnRlcm5hbCBlZGl0aW5nIHBvc2l0aW9ucy4KQEAgLTg0LDExICs4OCwxNiBAQCBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKICAgICAgICAgU3RyaW5nIHRvU3RyaW5nKCk7CiAKKyAgICAgICAg
RnJhbWUqIGZyYW1lKCkgY29uc3QgeyByZXR1cm4gbV9mcmFtZTsgfQorCiAgICAgICAgIC8vIE1p
Y3Jvc29mdCBTZWxlY3Rpb24gT2JqZWN0IEFQSQogICAgICAgICB2b2lkIGVtcHR5KCk7CiAKICAg
ICBwcml2YXRlOgotICAgICAgICBleHBsaWNpdCBET01TZWxlY3Rpb24oRnJhbWUqKTsKKyAgICAg
ICAgY29uc3QgVHJlZVNjb3BlKiBtX3RyZWVTY29wZTsKKyAgICAgICAgRnJhbWUqIG1fZnJhbWU7
CisKKyAgICAgICAgZXhwbGljaXQgRE9NU2VsZWN0aW9uKGNvbnN0IFRyZWVTY29wZSopOwogCiAg
ICAgICAgIC8vIENvbnZlbmllbmNlIG1ldGhvZCBmb3IgYWNjZXNzb3JzLCBkb2VzIG5vdCBOVUxM
IGNoZWNrIG1fZnJhbWUuCiAgICAgICAgIGNvbnN0IFZpc2libGVTZWxlY3Rpb24mIHZpc2libGVT
ZWxlY3Rpb24oKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2lu
ZG93LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcAppbmRleCAxYjhkNDRj
OTJiOWQ0ZDBjOTEzN2YyMGZlZTQyMTNlMjhmM2VlMDdlLi45MWEyZWE1OWVmNDY0MmJkYzY4MTFj
NjhlNDUyOTlhYmVjYmYwMjFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdp
bmRvdy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuY3BwCkBAIC0zOTks
NyArMzk5LDYgQEAgRE9NV2luZG93Ojp+RE9NV2luZG93KCkKICNpZm5kZWYgTkRFQlVHCiAgICAg
aWYgKCFtX3N1c3BlbmRlZEZvclBhZ2VDYWNoZSkgewogICAgICAgICBBU1NFUlQoIW1fc2NyZWVu
KTsKLSAgICAgICAgQVNTRVJUKCFtX3NlbGVjdGlvbik7CiAgICAgICAgIEFTU0VSVCghbV9oaXN0
b3J5KTsKICAgICAgICAgQVNTRVJUKCFtX2NyeXB0byk7CiAgICAgICAgIEFTU0VSVCghbV9sb2Nh
dGlvbmJhcik7CkBAIC01NzIsNyArNTcxLDYgQEAgdm9pZCBET01XaW5kb3c6OmNsZWFyRE9NV2lu
ZG93UHJvcGVydGllcygpCiAgICAgbV9wcm9wZXJ0aWVzLmNsZWFyKCk7CiAKICAgICBtX3NjcmVl
biA9IDA7Ci0gICAgbV9zZWxlY3Rpb24gPSAwOwogICAgIG1faGlzdG9yeSA9IDA7CiAgICAgbV9j
cnlwdG8gPSAwOwogICAgIG1fbG9jYXRpb25iYXIgPSAwOwpAQCAtODg4LDkgKzg4Niw4IEBAIERP
TVNlbGVjdGlvbiogRE9NV2luZG93OjpnZXRTZWxlY3Rpb24oKQogewogICAgIGlmICghaXNDdXJy
ZW50bHlEaXNwbGF5ZWRJbkZyYW1lKCkpCiAgICAgICAgIHJldHVybiAwOwotICAgIGlmICghbV9z
ZWxlY3Rpb24pCi0gICAgICAgIG1fc2VsZWN0aW9uID0gRE9NU2VsZWN0aW9uOjpjcmVhdGUobV9m
cmFtZSk7Ci0gICAgcmV0dXJuIG1fc2VsZWN0aW9uLmdldCgpOworCisgICAgcmV0dXJuIG1fZnJh
bWUtPmRvY3VtZW50KCktPmdldFNlbGVjdGlvbigpOwogfQogCiBFbGVtZW50KiBET01XaW5kb3c6
OmZyYW1lRWxlbWVudCgpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RP
TVdpbmRvdy5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuaAppbmRleCBiYjZkZjg1
YjAzODMyNDE1NTdmY2Y5YjU0OWZlZjAwNTIwMDZmOGQyLi40YWM4MTYyNGQxYjg1NzQ1ODQ2YjVj
NWQ2MGQ2MTkyMjRhMmU1ZDlmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdp
bmRvdy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmgKQEAgLTQyOCw3ICs0
MjgsNiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIEhhc2hTZXQ8RE9NV2luZG93UHJv
cGVydHkqPiBtX3Byb3BlcnRpZXM7CiAKICAgICAgICAgbXV0YWJsZSBSZWZQdHI8U2NyZWVuPiBt
X3NjcmVlbjsKLSAgICAgICAgbXV0YWJsZSBSZWZQdHI8RE9NU2VsZWN0aW9uPiBtX3NlbGVjdGlv
bjsKICAgICAgICAgbXV0YWJsZSBSZWZQdHI8SGlzdG9yeT4gbV9oaXN0b3J5OwogICAgICAgICBt
dXRhYmxlIFJlZlB0cjxDcnlwdG8+ICBtX2NyeXB0bzsKICAgICAgICAgbXV0YWJsZSBSZWZQdHI8
QmFySW5mbz4gbV9sb2NhdGlvbmJhcjsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>141110</attachid>
            <date>2012-05-10 01:37:32 -0700</date>
            <delta_ts>2012-05-10 18:42:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-82699-20120510173731.patch</filename>
            <type>text/plain</type>
            <size>10933</size>
            <attacher name="Shinya Kawanaka">shinyak</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE2NjE0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYWM3YTE1YTYxOGJhYjUx
NWE4MTFiNmUzN2JmOWNiYzhlNzg2MzAwYy4uM2NjN2MwNDBiNmUyYTQ2ZTgzYjMwMzIwOWQ1NjUy
YjAwZTk5YmFjMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDEyLTA1LTA5ICBTaGlu
eWEgS2F3YW5ha2EgIDxzaGlueWFrQGNocm9taXVtLm9yZz4KKworICAgICAgICBbUmVmYWN0b3Jp
bmddIE1vdmUgU2VsZWN0aW9uIGZyb20gRE9NV2luZG93IHRvIFRyZWVTY29wZS4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgyNjk5CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgU2luY2UgU2hhZG93Um9vdCB3
aWxsIGFsc28gbWFuYWdlIGl0cyBvd24gdmVyc2lvbiBvZiBET01TZWxlY3Rpb24sIHdlIHdvdWxk
IGxpa2UgdG8KKyAgICAgICAgc2hhcmUgdGhlIGNvZGUgYW1vbmcgRG9jdW1lbnQgYW5kIERPTVNl
bGVjdGlvbi4gVGhpcyBwYXRjaCBtb3ZlcyBET01TZWxlY3Rpb24gZnJvbSBET01XaW5kb3cgdG8g
VHJlZVNjb3BlCisgICAgICAgIHNvIHRoYXQgU2hhZG93Um9vdCBjYW4gYWxzbyB1c2UgaXQuCisK
KyAgICAgICAgTm8gbmV3IHRlc3RzLCBzaG91bGQgY292ZXJlZCBieSBleGlzdGluZyB0ZXN0cy4K
KworICAgICAgICAqIGRvbS9Eb2N1bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVu
dDo6dXBkYXRlRm9jdXNBcHBlYXJhbmNlVGltZXJGaXJlZCk6CisgICAgICAgICogZG9tL0RvY3Vt
ZW50Lmg6CisgICAgICAgIChEb2N1bWVudCk6CisgICAgICAgICogZG9tL1NoYWRvd1Jvb3QuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6U2hhZG93Um9vdDo6c2VsZWN0aW9uKToKKyAgICAgICAgKiBk
b20vVHJlZVNjb3BlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlRyZWVTY29wZTo6flRyZWVTY29w
ZSk6CisgICAgICAgIChXZWJDb3JlOjpUcmVlU2NvcGU6OmdldFNlbGVjdGlvbik6CisgICAgICAg
IChXZWJDb3JlKToKKyAgICAgICAgKiBkb20vVHJlZVNjb3BlLmg6CisgICAgICAgIChXZWJDb3Jl
KToKKyAgICAgICAgKFRyZWVTY29wZSk6CisgICAgICAgICogcGFnZS9ET01TZWxlY3Rpb24uY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6RE9NU2VsZWN0aW9uOjpET01TZWxlY3Rpb24pOgorICAgICAg
ICAoV2ViQ29yZTo6RE9NU2VsZWN0aW9uOjpkaXNjb25uZWN0VHJlZVNjb3BlKToKKyAgICAgICAg
KFdlYkNvcmUpOgorICAgICAgICAqIHBhZ2UvRE9NU2VsZWN0aW9uLmg6CisgICAgICAgIChXZWJD
b3JlKToKKyAgICAgICAgKFdlYkNvcmU6OkRPTVNlbGVjdGlvbjo6Y3JlYXRlKToKKyAgICAgICAg
KERPTVNlbGVjdGlvbik6CisgICAgICAgICogcGFnZS9ET01XaW5kb3cuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6RE9NV2luZG93Ojp+RE9NV2luZG93KToKKyAgICAgICAgKFdlYkNvcmU6OkRPTVdp
bmRvdzo6Y2xlYXJET01XaW5kb3dQcm9wZXJ0aWVzKToKKyAgICAgICAgKFdlYkNvcmU6OkRPTVdp
bmRvdzo6Z2V0U2VsZWN0aW9uKToKKyAgICAgICAgKiBwYWdlL0RPTVdpbmRvdy5oOgorICAgICAg
ICAoRE9NV2luZG93KToKKwogMjAxMi0wNS0wOSAgS2VudCBUYW11cmEgIDx0a2VudEBjaHJvbWl1
bS5vcmc+CiAKICAgICAgICAgQ2FsZW5kYXIgUGlja2VyOiBGaXggYSBjcmFzaCBieSBjaGFuZ2lu
ZyBpbnB1dCB0eXBlLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKaW5kZXggMDBhN2RjY2U0ZTk4ZTFm
NDA4YzBmNWIzY2Q0ODIxN2YyZTg5YTBkMi4uOTYzMmM1YTZjZGM0MWQ0ODBjYjU4OTlkZTI1Nzdm
OTViMTNlY2JhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCkBAIC00Niw2ICs0Niw3IEBACiAj
aW5jbHVkZSAiQ29udGVudFNlY3VyaXR5UG9saWN5LmgiCiAjaW5jbHVkZSAiQ29va2llSmFyLmgi
CiAjaW5jbHVkZSAiRE9NSW1wbGVtZW50YXRpb24uaCIKKyNpbmNsdWRlICJET01TZWxlY3Rpb24u
aCIKICNpbmNsdWRlICJET01XaW5kb3cuaCIKICNpbmNsdWRlICJEYXRlQ29tcG9uZW50cy5oIgog
I2luY2x1ZGUgIkRldmljZU1vdGlvbkNvbnRyb2xsZXIuaCIKQEAgLTUwODQsMTIgKzUwODUsNiBA
QCB2b2lkIERvY3VtZW50Ojp1cGRhdGVGb2N1c0FwcGVhcmFuY2VUaW1lckZpcmVkKFRpbWVyPERv
Y3VtZW50PiopCiAgICAgICAgIGVsZW1lbnQtPnVwZGF0ZUZvY3VzQXBwZWFyYW5jZShtX3VwZGF0
ZUZvY3VzQXBwZWFyYW5jZVJlc3RvcmVzU2VsZWN0aW9uKTsKIH0KIAotLy8gRkYgbWV0aG9kIGZv
ciBhY2Nlc3NpbmcgdGhlIHNlbGVjdGlvbiBhZGRlZCBmb3IgY29tcGF0aWJpbGl0eS4KLURPTVNl
bGVjdGlvbiogRG9jdW1lbnQ6OmdldFNlbGVjdGlvbigpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIGZy
YW1lKCkgPyBmcmFtZSgpLT5kb21XaW5kb3coKS0+Z2V0U2VsZWN0aW9uKCkgOiAwOwotfQotCiB2
b2lkIERvY3VtZW50OjphdHRhY2hSYW5nZShSYW5nZSogcmFuZ2UpCiB7CiAgICAgQVNTRVJUKCFt
X3Jhbmdlcy5jb250YWlucyhyYW5nZSkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9t
L0RvY3VtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaAppbmRleCA2YzY4NGU4
MjI4YjM4MWYwZTkxNDM1YjBhYzFlZDQ0YzE2NzA1MmRmLi4xZWY2YjRhOWJhYmRhYzM3OGNmZmM4
ZGU4ZTAzN2YyMDEyMTAyNzlmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1l
bnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaApAQCAtOTY5LDkgKzk2OSw2
IEBAIHB1YmxpYzoKICAgICB2b2lkIHVwZGF0ZUZvY3VzQXBwZWFyYW5jZVNvb24oYm9vbCByZXN0
b3JlUHJldmlvdXNTZWxlY3Rpb24pOwogICAgIHZvaWQgY2FuY2VsRm9jdXNBcHBlYXJhbmNlVXBk
YXRlKCk7CiAgICAgICAgIAotICAgIC8vIEZGIG1ldGhvZCBmb3IgYWNjZXNzaW5nIHRoZSBzZWxl
Y3Rpb24gYWRkZWQgZm9yIGNvbXBhdGliaWxpdHkuCi0gICAgRE9NU2VsZWN0aW9uKiBnZXRTZWxl
Y3Rpb24oKSBjb25zdDsKLSAgICAKICAgICAvLyBFeHRlbnNpb24gZm9yIG1hbmlwdWxhdGluZyBj
YW52YXMgZHJhd2luZyBjb250ZXh0cyBmb3IgdXNlIGluIENTUwogICAgIENhbnZhc1JlbmRlcmlu
Z0NvbnRleHQqIGdldENTU0NhbnZhc0NvbnRleHQoY29uc3QgU3RyaW5nJiB0eXBlLCBjb25zdCBT
dHJpbmcmIG5hbWUsIGludCB3aWR0aCwgaW50IGhlaWdodCk7CiAgICAgSFRNTENhbnZhc0VsZW1l
bnQqIGdldENTU0NhbnZhc0VsZW1lbnQoY29uc3QgU3RyaW5nJiBuYW1lKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2RvbS9TaGFkb3dSb290LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9T
aGFkb3dSb290LmNwcAppbmRleCBhYTAzNGJhMzAwZTI3NTYxN2U1YjdmOTVhY2I3NTdhNzM2Njk1
NmQ1Li42ZTRjM2JkNjIyOGMyNGZmNmE1YmYzYzQ5Mzk2OTdjZDlmOTUwNDM0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9kb20vU2hhZG93Um9vdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
ZG9tL1NoYWRvd1Jvb3QuY3BwCkBAIC0xNTEsOCArMTUxLDggQEAgdm9pZCBTaGFkb3dSb290Ojpz
ZXRJbm5lckhUTUwoY29uc3QgU3RyaW5nJiBtYXJrdXAsIEV4Y2VwdGlvbkNvZGUmIGVjKQogCiBE
T01TZWxlY3Rpb24qIFNoYWRvd1Jvb3Q6OnNlbGVjdGlvbigpCiB7Ci0gICAgaWYgKGRvY3VtZW50
KCkgJiYgZG9jdW1lbnQoKS0+ZG9tV2luZG93KCkpCi0gICAgICAgIHJldHVybiBkb2N1bWVudCgp
LT5kb21XaW5kb3coKS0+Z2V0U2VsZWN0aW9uKCk7CisgICAgaWYgKGRvY3VtZW50KCkpCisgICAg
ICAgIHJldHVybiBkb2N1bWVudCgpLT5nZXRTZWxlY3Rpb24oKTsKICAgICByZXR1cm4gMDsKIH0K
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1RyZWVTY29wZS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vVHJlZVNjb3BlLmNwcAppbmRleCA5OTgyNjQ1MzIwODc2NTA2OTNjNDQ4ZmM1
YTc2YjkzMGMxYzQwZjkxLi40N2ZiNzkwNzA5MzNhZWNmODRlNmQ5NTU3M2Q1MGY0Nzc2MDA0ZWJl
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vVHJlZVNjb3BlLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vVHJlZVNjb3BlLmNwcApAQCAtMjcsNiArMjcsNyBAQAogI2luY2x1ZGUg
IlRyZWVTY29wZS5oIgogCiAjaW5jbHVkZSAiQ29udGFpbmVyTm9kZS5oIgorI2luY2x1ZGUgIkRP
TVNlbGVjdGlvbi5oIgogI2luY2x1ZGUgIkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiRWxlbWVudC5o
IgogI2luY2x1ZGUgIkZvY3VzQ29udHJvbGxlci5oIgpAQCAtMzYsNiArMzcsNyBAQAogI2luY2x1
ZGUgIkhUTUxNYXBFbGVtZW50LmgiCiAjaW5jbHVkZSAiSFRNTE5hbWVzLmgiCiAjaW5jbHVkZSAi
UGFnZS5oIgorI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIKICNpbmNsdWRlICJU
cmVlU2NvcGVBZG9wdGVyLmgiCiAjaW5jbHVkZSA8d3RmL3RleHQvQXRvbWljU3RyaW5nLmg+CiAj
aW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgpAQCAtNTQsNiArNTYsOSBAQCBUcmVlU2NvcGU6
OlRyZWVTY29wZShDb250YWluZXJOb2RlKiByb290Tm9kZSkKIAogVHJlZVNjb3BlOjp+VHJlZVNj
b3BlKCkKIHsKKyAgICBpZiAobV9zZWxlY3Rpb24pCisgICAgICAgIG1fc2VsZWN0aW9uLT5kaXNj
b25uZWN0VHJlZVNjb3BlKCk7CisgICAgbV9zZWxlY3Rpb24gPSAwOwogfQogCiB2b2lkIFRyZWVT
Y29wZTo6ZGVzdHJveVRyZWVTY29wZURhdGEoKQpAQCAtMTE2LDYgKzEyMSwxOCBAQCBIVE1MTWFw
RWxlbWVudCogVHJlZVNjb3BlOjpnZXRJbWFnZU1hcChjb25zdCBTdHJpbmcmIHVybCkgY29uc3QK
ICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8SFRNTE1hcEVsZW1lbnQqPihtX2ltYWdlTWFwc0J5TmFt
ZS5nZXRFbGVtZW50QnlNYXBOYW1lKEF0b21pY1N0cmluZyhuYW1lKS5pbXBsKCksIHRoaXMpKTsK
IH0KIAorRE9NU2VsZWN0aW9uKiBUcmVlU2NvcGU6OmdldFNlbGVjdGlvbigpIGNvbnN0Cit7Cisg
ICAgaWYgKCFyb290Tm9kZSgpLT5kb2N1bWVudCgpLT5mcmFtZSgpKQorICAgICAgICByZXR1cm4g
MDsKKworICAgIGlmIChtX3NlbGVjdGlvbikKKyAgICAgICAgcmV0dXJuIG1fc2VsZWN0aW9uLmdl
dCgpOworCisgICAgbV9zZWxlY3Rpb24gPSBET01TZWxlY3Rpb246OmNyZWF0ZShyb290Tm9kZSgp
LT5kb2N1bWVudCgpKTsKKyAgICByZXR1cm4gbV9zZWxlY3Rpb24uZ2V0KCk7Cit9CisKIEVsZW1l
bnQqIFRyZWVTY29wZTo6ZmluZEFuY2hvcihjb25zdCBTdHJpbmcmIG5hbWUpCiB7CiAgICAgaWYg
KG5hbWUuaXNFbXB0eSgpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1RyZWVTY29w
ZS5oIGIvU291cmNlL1dlYkNvcmUvZG9tL1RyZWVTY29wZS5oCmluZGV4IDc2YzEyZTVjOTBmNzFl
MjRjZTk4Yzg3ZDFiZjE3MThmMzE4MjZmOTYuLjk5MjA5MzI2OTZkMjJjMTQ4YWVhODcyOTNhMDA0
NjU0Yjk0YWFhMTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9UcmVlU2NvcGUuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vVHJlZVNjb3BlLmgKQEAgLTMzLDYgKzMzLDcgQEAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgQ29udGFpbmVyTm9kZTsKK2NsYXNzIERPTVNlbGVj
dGlvbjsKIGNsYXNzIEVsZW1lbnQ7CiBjbGFzcyBIVE1MTWFwRWxlbWVudDsKIGNsYXNzIE5vZGU7
CkBAIC02Miw2ICs2Myw4IEBAIHB1YmxpYzoKICAgICB2b2lkIHJlbW92ZU5vZGVMaXN0Q2FjaGUo
KSB7IEFTU0VSVChtX251bU5vZGVMaXN0Q2FjaGVzID4gMCk7IC0tbV9udW1Ob2RlTGlzdENhY2hl
czsgfQogICAgIGJvb2wgaGFzTm9kZUxpc3RDYWNoZXMoKSBjb25zdCB7IHJldHVybiBtX251bU5v
ZGVMaXN0Q2FjaGVzOyB9CiAKKyAgICBET01TZWxlY3Rpb24qIGdldFNlbGVjdGlvbigpIGNvbnN0
OworCiAgICAgLy8gRmluZCBmaXJzdCBhbmNob3Igd2l0aCB0aGUgZ2l2ZW4gbmFtZS4KICAgICAv
LyBGaXJzdCBzZWFyY2hlcyBmb3IgYW4gZWxlbWVudCB3aXRoIHRoZSBnaXZlbiBJRCwgYnV0IGlm
IHRoYXQgZmFpbHMsIHRoZW4gbG9va3MKICAgICAvLyBmb3IgYW4gYW5jaG9yIHdpdGggdGhlIGdp
dmVuIG5hbWUuIElEIG1hdGNoaW5nIGlzIGFsd2F5cyBjYXNlIHNlbnNpdGl2ZSwgYnV0CkBAIC05
MCw2ICs5Myw4IEBAIHByaXZhdGU6CiAgICAgRG9jdW1lbnRPcmRlcmVkTWFwIG1faW1hZ2VNYXBz
QnlOYW1lOwogCiAgICAgdW5zaWduZWQgbV9udW1Ob2RlTGlzdENhY2hlczsKKworICAgIG11dGFi
bGUgUmVmUHRyPERPTVNlbGVjdGlvbj4gbV9zZWxlY3Rpb247CiB9OwogCiBpbmxpbmUgYm9vbCBU
cmVlU2NvcGU6Omhhc0VsZW1lbnRXaXRoSWQoQXRvbWljU3RyaW5nSW1wbCogaWQpIGNvbnN0CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVNlbGVjdGlvbi5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL0RPTVNlbGVjdGlvbi5jcHAKaW5kZXggZmQ4NDY1ODNmZmI1ZTZjODY4Zjhi
ZGZjYTg2ZWQ1YTQ3OGM0MTgyNC4uZGVmYzIwOWVlMjNmNWM2NjE5Yjg1NDc2NDFlZDZiZWRiMWJm
MDY2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9ET01TZWxlY3Rpb24uY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NU2VsZWN0aW9uLmNwcApAQCAtNTgsMTEgKzU4LDE4
IEBAIHN0YXRpYyBOb2RlKiBzZWxlY3Rpb25TaGFkb3dBbmNlc3RvcihGcmFtZSogZnJhbWUpCiAg
ICAgcmV0dXJuIHNoYWRvd0FuY2VzdG9yOwogfQogCi1ET01TZWxlY3Rpb246OkRPTVNlbGVjdGlv
bihGcmFtZSogZnJhbWUpCi0gICAgOiBET01XaW5kb3dQcm9wZXJ0eShmcmFtZSkKK0RPTVNlbGVj
dGlvbjo6RE9NU2VsZWN0aW9uKGNvbnN0IFRyZWVTY29wZSogdHJlZVNjb3BlKQorICAgIDogbV90
cmVlU2NvcGUodHJlZVNjb3BlKQorICAgICwgbV9mcmFtZSh0cmVlU2NvcGUtPnJvb3ROb2RlKCkt
PmRvY3VtZW50KCktPmZyYW1lKCkpCiB7CiB9CiAKK3ZvaWQgRE9NU2VsZWN0aW9uOjpkaXNjb25u
ZWN0VHJlZVNjb3BlKCkKK3sKKyAgICBtX2ZyYW1lID0gMDsKKyAgICBtX3RyZWVTY29wZSA9IDA7
Cit9CisKIGNvbnN0IFZpc2libGVTZWxlY3Rpb24mIERPTVNlbGVjdGlvbjo6dmlzaWJsZVNlbGVj
dGlvbigpIGNvbnN0CiB7CiAgICAgQVNTRVJUKG1fZnJhbWUpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGFnZS9ET01TZWxlY3Rpb24uaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NU2Vs
ZWN0aW9uLmgKaW5kZXggOTgwM2FjY2EyMmJhNDNjNTI3Njc4NTZhMjM5NWM3NjhjOGE3ZDdmNC4u
NjljY2QyYTRmYWVlMjk2MDYzN2E4NGMwNTExNmE3ZWY0NGNkZGRkMiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGFnZS9ET01TZWxlY3Rpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L0RPTVNlbGVjdGlvbi5oCkBAIC0xLDUgKzEsNiBAQAogLyoKICAqIENvcHlyaWdodCAoQykgMjAw
NyBBcHBsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDEy
IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCkBAIC0zOCwxNSArMzksMTggQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAg
IGNsYXNzIEZyYW1lOwotICAgIGNsYXNzIFJhbmdlOwogICAgIGNsYXNzIE5vZGU7CisgICAgY2xh
c3MgUmFuZ2U7CisgICAgY2xhc3MgVHJlZVNjb3BlOwogICAgIGNsYXNzIFZpc2libGVTZWxlY3Rp
b247CiAKICAgICB0eXBlZGVmIGludCBFeGNlcHRpb25Db2RlOwogCi0gICAgY2xhc3MgRE9NU2Vs
ZWN0aW9uIDogcHVibGljIFJlZkNvdW50ZWQ8RE9NU2VsZWN0aW9uPiwgcHVibGljIERPTVdpbmRv
d1Byb3BlcnR5IHsKKyAgICBjbGFzcyBET01TZWxlY3Rpb24gOiBwdWJsaWMgUmVmQ291bnRlZDxE
T01TZWxlY3Rpb24+IHsKICAgICBwdWJsaWM6Ci0gICAgICAgIHN0YXRpYyBQYXNzUmVmUHRyPERP
TVNlbGVjdGlvbj4gY3JlYXRlKEZyYW1lKiBmcmFtZSkgeyByZXR1cm4gYWRvcHRSZWYobmV3IERP
TVNlbGVjdGlvbihmcmFtZSkpOyB9CisgICAgICAgIHN0YXRpYyBQYXNzUmVmUHRyPERPTVNlbGVj
dGlvbj4gY3JlYXRlKGNvbnN0IFRyZWVTY29wZSogdHJlZVNjb3BlKSB7IHJldHVybiBhZG9wdFJl
ZihuZXcgRE9NU2VsZWN0aW9uKHRyZWVTY29wZSkpOyB9CisKKyAgICAgICAgdm9pZCBkaXNjb25u
ZWN0VHJlZVNjb3BlKCk7CiAKICAgICAgICAgLy8gU2FmYXJpIFNlbGVjdGlvbiBPYmplY3QgQVBJ
CiAgICAgICAgIC8vIFRoZXNlIG1ldGhvZHMgcmV0dXJuIHRoZSB2YWxpZCBlcXVpdmFsZW50cyBv
ZiBpbnRlcm5hbCBlZGl0aW5nIHBvc2l0aW9ucy4KQEAgLTg0LDExICs4OCwxNiBAQCBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKICAgICAgICAgU3RyaW5nIHRvU3RyaW5nKCk7CiAKKyAgICAgICAgRnJh
bWUqIGZyYW1lKCkgY29uc3QgeyByZXR1cm4gbV9mcmFtZTsgfQorCiAgICAgICAgIC8vIE1pY3Jv
c29mdCBTZWxlY3Rpb24gT2JqZWN0IEFQSQogICAgICAgICB2b2lkIGVtcHR5KCk7CiAKICAgICBw
cml2YXRlOgotICAgICAgICBleHBsaWNpdCBET01TZWxlY3Rpb24oRnJhbWUqKTsKKyAgICAgICAg
Y29uc3QgVHJlZVNjb3BlKiBtX3RyZWVTY29wZTsKKyAgICAgICAgRnJhbWUqIG1fZnJhbWU7CisK
KyAgICAgICAgZXhwbGljaXQgRE9NU2VsZWN0aW9uKGNvbnN0IFRyZWVTY29wZSopOwogCiAgICAg
ICAgIC8vIENvbnZlbmllbmNlIG1ldGhvZCBmb3IgYWNjZXNzb3JzLCBkb2VzIG5vdCBOVUxMIGNo
ZWNrIG1fZnJhbWUuCiAgICAgICAgIGNvbnN0IFZpc2libGVTZWxlY3Rpb24mIHZpc2libGVTZWxl
Y3Rpb24oKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcAppbmRleCAxYjhkNDRjOTJi
OWQ0ZDBjOTEzN2YyMGZlZTQyMTNlMjhmM2VlMDdlLi40MGUwYjJhZmYxYjBkZmYxM2M2MGI1MDY2
NTg0NDgwN2ZiZDBjZjUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRv
dy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuY3BwCkBAIC0zOTksNyAr
Mzk5LDYgQEAgRE9NV2luZG93Ojp+RE9NV2luZG93KCkKICNpZm5kZWYgTkRFQlVHCiAgICAgaWYg
KCFtX3N1c3BlbmRlZEZvclBhZ2VDYWNoZSkgewogICAgICAgICBBU1NFUlQoIW1fc2NyZWVuKTsK
LSAgICAgICAgQVNTRVJUKCFtX3NlbGVjdGlvbik7CiAgICAgICAgIEFTU0VSVCghbV9oaXN0b3J5
KTsKICAgICAgICAgQVNTRVJUKCFtX2NyeXB0byk7CiAgICAgICAgIEFTU0VSVCghbV9sb2NhdGlv
bmJhcik7CkBAIC01NzIsNyArNTcxLDYgQEAgdm9pZCBET01XaW5kb3c6OmNsZWFyRE9NV2luZG93
UHJvcGVydGllcygpCiAgICAgbV9wcm9wZXJ0aWVzLmNsZWFyKCk7CiAKICAgICBtX3NjcmVlbiA9
IDA7Ci0gICAgbV9zZWxlY3Rpb24gPSAwOwogICAgIG1faGlzdG9yeSA9IDA7CiAgICAgbV9jcnlw
dG8gPSAwOwogICAgIG1fbG9jYXRpb25iYXIgPSAwOwpAQCAtODg2LDExICs4ODQsMTAgQEAgdm9p
ZCBET01XaW5kb3c6OmRpc3BhdGNoTWVzc2FnZUV2ZW50V2l0aE9yaWdpbkNoZWNrKFNlY3VyaXR5
T3JpZ2luKiBpbnRlbmRlZFRhcmcKIAogRE9NU2VsZWN0aW9uKiBET01XaW5kb3c6OmdldFNlbGVj
dGlvbigpCiB7Ci0gICAgaWYgKCFpc0N1cnJlbnRseURpc3BsYXllZEluRnJhbWUoKSkKKyAgICBp
ZiAoIWlzQ3VycmVudGx5RGlzcGxheWVkSW5GcmFtZSgpIHx8ICFtX2ZyYW1lKQogICAgICAgICBy
ZXR1cm4gMDsKLSAgICBpZiAoIW1fc2VsZWN0aW9uKQotICAgICAgICBtX3NlbGVjdGlvbiA9IERP
TVNlbGVjdGlvbjo6Y3JlYXRlKG1fZnJhbWUpOwotICAgIHJldHVybiBtX3NlbGVjdGlvbi5nZXQo
KTsKKworICAgIHJldHVybiBtX2ZyYW1lLT5kb2N1bWVudCgpLT5nZXRTZWxlY3Rpb24oKTsKIH0K
IAogRWxlbWVudCogRE9NV2luZG93OjpmcmFtZUVsZW1lbnQoKSBjb25zdApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9N
V2luZG93LmgKaW5kZXggYmI2ZGY4NWIwMzgzMjQxNTU3ZmNmOWI1NDlmZWYwMDUyMDA2ZjhkMi4u
NGFjODE2MjRkMWI4NTc0NTg0NmI1YzVkNjBkNjE5MjI0YTJlNWQ5ZiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RP
TVdpbmRvdy5oCkBAIC00MjgsNyArNDI4LDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAg
ICBIYXNoU2V0PERPTVdpbmRvd1Byb3BlcnR5Kj4gbV9wcm9wZXJ0aWVzOwogCiAgICAgICAgIG11
dGFibGUgUmVmUHRyPFNjcmVlbj4gbV9zY3JlZW47Ci0gICAgICAgIG11dGFibGUgUmVmUHRyPERP
TVNlbGVjdGlvbj4gbV9zZWxlY3Rpb247CiAgICAgICAgIG11dGFibGUgUmVmUHRyPEhpc3Rvcnk+
IG1faGlzdG9yeTsKICAgICAgICAgbXV0YWJsZSBSZWZQdHI8Q3J5cHRvPiAgbV9jcnlwdG87CiAg
ICAgICAgIG11dGFibGUgUmVmUHRyPEJhckluZm8+IG1fbG9jYXRpb25iYXI7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>141309</attachid>
            <date>2012-05-10 18:42:30 -0700</date>
            <delta_ts>2012-05-11 00:28:56 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-82699-20120511104229.patch</filename>
            <type>text/plain</type>
            <size>10948</size>
            <attacher name="Shinya Kawanaka">shinyak</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE2NzE0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzU5ODc5OTUwOWUxODgx
YjIwMDU2OWFlZGQ3NjkwMjk5NzRhNDRiOC4uZThiZWY3ZTA4YTAwY2M0MWRkOGM3ZTFiZWYxYjgz
NTEyNGNlNjJkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ1IEBACisyMDEyLTA1LTEwICBTaGlu
eWEgS2F3YW5ha2EgIDxzaGlueWFrQGNocm9taXVtLm9yZz4KKworICAgICAgICBbUmVmYWN0b3Jp
bmddIE1vdmUgU2VsZWN0aW9uIGZyb20gRE9NV2luZG93IHRvIFRyZWVTY29wZS4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgyNjk5CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgU2luY2UgU2hhZG93Um9vdCB3
aWxsIGFsc28gbWFuYWdlIGl0cyBvd24gdmVyc2lvbiBvZiBET01TZWxlY3Rpb24sIHdlIHdvdWxk
IGxpa2UgdG8KKyAgICAgICAgc2hhcmUgdGhlIGNvZGUgYW1vbmcgRG9jdW1lbnQgYW5kIERPTVNl
bGVjdGlvbi4gVGhpcyBwYXRjaCBtb3ZlcyBET01TZWxlY3Rpb24gZnJvbSBET01XaW5kb3cgdG8g
VHJlZVNjb3BlCisgICAgICAgIHNvIHRoYXQgU2hhZG93Um9vdCBjYW4gYWxzbyB1c2UgaXQuCisK
KyAgICAgICAgTm8gbmV3IHRlc3RzLCBzaG91bGQgY292ZXJlZCBieSBleGlzdGluZyB0ZXN0cy4K
KworICAgICAgICAqIGRvbS9Eb2N1bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVu
dDo6dXBkYXRlRm9jdXNBcHBlYXJhbmNlVGltZXJGaXJlZCk6CisgICAgICAgICogZG9tL0RvY3Vt
ZW50Lmg6CisgICAgICAgIChEb2N1bWVudCk6CisgICAgICAgICogZG9tL1NoYWRvd1Jvb3QuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6U2hhZG93Um9vdDo6c2VsZWN0aW9uKToKKyAgICAgICAgKiBk
by9tVHJlZVNjb3BlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlRyZWVTY29wZTo6flRyZWVTY29w
ZSk6CisgICAgICAgIChXZWJDb3JlOjpUcmVlU2NvcGU6OmdldFNlbGVjdGlvbik6CisgICAgICAg
IChXZWJDb3JlKToKKyAgICAgICAgKiBkb20vVHJlZVNjb3BlLmg6CisgICAgICAgIChXZWJDb3Jl
KToKKyAgICAgICAgKFRyZWVTY29wZSk6CisgICAgICAgICogcGFnZS9ET01TZWxlY3Rpb24uY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6RE9NU2VsZWN0aW9uOjpET01TZWxlY3Rpb24pOgorICAgICAg
ICAoV2ViQ29yZTo6RE9NU2VsZWN0aW9uOjpjbGVhclRyZWVTY29wZSk6CisgICAgICAgIChXZWJD
b3JlKToKKyAgICAgICAgKiBwYWdlL0RPTVNlbGVjdGlvbi5oOgorICAgICAgICAoV2ViQ29yZSk6
CisgICAgICAgIChXZWJDb3JlOjpET01TZWxlY3Rpb246OmNyZWF0ZSk6CisgICAgICAgIChET01T
ZWxlY3Rpb24pOgorICAgICAgICAoV2ViQ29yZTo6RE9NU2VsZWN0aW9uOjpmcmFtZSk6CisgICAg
ICAgICogcGFnZS9ET01XaW5kb3cuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RE9NV2luZG93Ojp+
RE9NV2luZG93KToKKyAgICAgICAgKFdlYkNvcmU6OkRPTVdpbmRvdzo6Y2xlYXJET01XaW5kb3dQ
cm9wZXJ0aWVzKToKKyAgICAgICAgKFdlYkNvcmU6OkRPTVdpbmRvdzo6Z2V0U2VsZWN0aW9uKToK
KyAgICAgICAgKiBwYWdlL0RPTVdpbmRvdy5oOgorICAgICAgICAoRE9NV2luZG93KToKKwogMjAx
Mi0wNS0xMCAgS2VudCBUYW11cmEgIDx0a2VudEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5y
ZXZpZXdlZCwgcm9sbGluZyBvdXQgcjExNjU5NC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2RvbS9Eb2N1bWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCmluZGV4
IGY0NjdhZjMzMjc0MTkxMDU5ODJlOTgyY2I5NDQ1ZTFhOGRjOTY4MTguLjVhNTA0M2E3Zjg4YTMy
OGYxNDZkMzE2N2RkN2I5M2MyMWU5MTgzOTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9Eb2N1bWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcApAQCAt
NDYsNiArNDYsNyBAQAogI2luY2x1ZGUgIkNvbnRlbnRTZWN1cml0eVBvbGljeS5oIgogI2luY2x1
ZGUgIkNvb2tpZUphci5oIgogI2luY2x1ZGUgIkRPTUltcGxlbWVudGF0aW9uLmgiCisjaW5jbHVk
ZSAiRE9NU2VsZWN0aW9uLmgiCiAjaW5jbHVkZSAiRE9NV2luZG93LmgiCiAjaW5jbHVkZSAiRGF0
ZUNvbXBvbmVudHMuaCIKICNpbmNsdWRlICJEZXZpY2VNb3Rpb25Db250cm9sbGVyLmgiCkBAIC01
MDkyLDEyICs1MDkzLDYgQEAgdm9pZCBEb2N1bWVudDo6dXBkYXRlRm9jdXNBcHBlYXJhbmNlVGlt
ZXJGaXJlZChUaW1lcjxEb2N1bWVudD4qKQogICAgICAgICBlbGVtZW50LT51cGRhdGVGb2N1c0Fw
cGVhcmFuY2UobV91cGRhdGVGb2N1c0FwcGVhcmFuY2VSZXN0b3Jlc1NlbGVjdGlvbik7CiB9CiAK
LS8vIEZGIG1ldGhvZCBmb3IgYWNjZXNzaW5nIHRoZSBzZWxlY3Rpb24gYWRkZWQgZm9yIGNvbXBh
dGliaWxpdHkuCi1ET01TZWxlY3Rpb24qIERvY3VtZW50OjpnZXRTZWxlY3Rpb24oKSBjb25zdAot
ewotICAgIHJldHVybiBmcmFtZSgpID8gZnJhbWUoKS0+ZG9tV2luZG93KCktPmdldFNlbGVjdGlv
bigpIDogMDsKLX0KLQogdm9pZCBEb2N1bWVudDo6YXR0YWNoUmFuZ2UoUmFuZ2UqIHJhbmdlKQog
ewogICAgIEFTU0VSVCghbV9yYW5nZXMuY29udGFpbnMocmFuZ2UpKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50
LmgKaW5kZXggNmM2ODRlODIyOGIzODFmMGU5MTQzNWIwYWMxZWQ0NGMxNjcwNTJkZi4uMWVmNmI0
YTliYWJkYWMzNzhjZmZjOGRlOGUwMzdmMjAxMjEwMjc5ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvZG9tL0RvY3VtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgK
QEAgLTk2OSw5ICs5NjksNiBAQCBwdWJsaWM6CiAgICAgdm9pZCB1cGRhdGVGb2N1c0FwcGVhcmFu
Y2VTb29uKGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uKTsKICAgICB2b2lkIGNhbmNlbEZv
Y3VzQXBwZWFyYW5jZVVwZGF0ZSgpOwogICAgICAgICAKLSAgICAvLyBGRiBtZXRob2QgZm9yIGFj
Y2Vzc2luZyB0aGUgc2VsZWN0aW9uIGFkZGVkIGZvciBjb21wYXRpYmlsaXR5LgotICAgIERPTVNl
bGVjdGlvbiogZ2V0U2VsZWN0aW9uKCkgY29uc3Q7Ci0gICAgCiAgICAgLy8gRXh0ZW5zaW9uIGZv
ciBtYW5pcHVsYXRpbmcgY2FudmFzIGRyYXdpbmcgY29udGV4dHMgZm9yIHVzZSBpbiBDU1MKICAg
ICBDYW52YXNSZW5kZXJpbmdDb250ZXh0KiBnZXRDU1NDYW52YXNDb250ZXh0KGNvbnN0IFN0cmlu
ZyYgdHlwZSwgY29uc3QgU3RyaW5nJiBuYW1lLCBpbnQgd2lkdGgsIGludCBoZWlnaHQpOwogICAg
IEhUTUxDYW52YXNFbGVtZW50KiBnZXRDU1NDYW52YXNFbGVtZW50KGNvbnN0IFN0cmluZyYgbmFt
ZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2hhZG93Um9vdC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vU2hhZG93Um9vdC5jcHAKaW5kZXggYWEwMzRiYTMwMGUyNzU2MTdlNWI3
Zjk1YWNiNzU3YTczNjY5NTZkNS4uNmU0YzNiZDYyMjhjMjRmZjZhNWJmM2M0OTM5Njk3Y2Q5Zjk1
MDQzNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1NoYWRvd1Jvb3QuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2RvbS9TaGFkb3dSb290LmNwcApAQCAtMTUxLDggKzE1MSw4IEBAIHZv
aWQgU2hhZG93Um9vdDo6c2V0SW5uZXJIVE1MKGNvbnN0IFN0cmluZyYgbWFya3VwLCBFeGNlcHRp
b25Db2RlJiBlYykKIAogRE9NU2VsZWN0aW9uKiBTaGFkb3dSb290OjpzZWxlY3Rpb24oKQogewot
ICAgIGlmIChkb2N1bWVudCgpICYmIGRvY3VtZW50KCktPmRvbVdpbmRvdygpKQotICAgICAgICBy
ZXR1cm4gZG9jdW1lbnQoKS0+ZG9tV2luZG93KCktPmdldFNlbGVjdGlvbigpOworICAgIGlmIChk
b2N1bWVudCgpKQorICAgICAgICByZXR1cm4gZG9jdW1lbnQoKS0+Z2V0U2VsZWN0aW9uKCk7CiAg
ICAgcmV0dXJuIDA7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9UcmVlU2Nv
cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL1RyZWVTY29wZS5jcHAKaW5kZXggOTk4MjY0NTMy
MDg3NjUwNjkzYzQ0OGZjNWE3NmI5MzBjMWM0MGY5MS4uNGQ5Nzg5NjJlNzVmZmQ5NDdjY2NhMWRj
NDgwMmFlOGYyMGRkMGYxZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1RyZWVTY29w
ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1RyZWVTY29wZS5jcHAKQEAgLTI3LDYgKzI3
LDcgQEAKICNpbmNsdWRlICJUcmVlU2NvcGUuaCIKIAogI2luY2x1ZGUgIkNvbnRhaW5lck5vZGUu
aCIKKyNpbmNsdWRlICJET01TZWxlY3Rpb24uaCIKICNpbmNsdWRlICJEb2N1bWVudC5oIgogI2lu
Y2x1ZGUgIkVsZW1lbnQuaCIKICNpbmNsdWRlICJGb2N1c0NvbnRyb2xsZXIuaCIKQEAgLTM2LDYg
KzM3LDcgQEAKICNpbmNsdWRlICJIVE1MTWFwRWxlbWVudC5oIgogI2luY2x1ZGUgIkhUTUxOYW1l
cy5oIgogI2luY2x1ZGUgIlBhZ2UuaCIKKyNpbmNsdWRlICJSdW50aW1lRW5hYmxlZEZlYXR1cmVz
LmgiCiAjaW5jbHVkZSAiVHJlZVNjb3BlQWRvcHRlci5oIgogI2luY2x1ZGUgPHd0Zi90ZXh0L0F0
b21pY1N0cmluZy5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L0NTdHJpbmcuaD4KQEAgLTU0LDYgKzU2
LDEwIEBAIFRyZWVTY29wZTo6VHJlZVNjb3BlKENvbnRhaW5lck5vZGUqIHJvb3ROb2RlKQogCiBU
cmVlU2NvcGU6On5UcmVlU2NvcGUoKQogeworICAgIGlmIChtX3NlbGVjdGlvbikgeworICAgICAg
ICBtX3NlbGVjdGlvbi0+Y2xlYXJUcmVlU2NvcGUoKTsKKyAgICAgICAgbV9zZWxlY3Rpb24gPSAw
OworICAgIH0KIH0KIAogdm9pZCBUcmVlU2NvcGU6OmRlc3Ryb3lUcmVlU2NvcGVEYXRhKCkKQEAg
LTExNiw2ICsxMjIsMTggQEAgSFRNTE1hcEVsZW1lbnQqIFRyZWVTY29wZTo6Z2V0SW1hZ2VNYXAo
Y29uc3QgU3RyaW5nJiB1cmwpIGNvbnN0CiAgICAgcmV0dXJuIHN0YXRpY19jYXN0PEhUTUxNYXBF
bGVtZW50Kj4obV9pbWFnZU1hcHNCeU5hbWUuZ2V0RWxlbWVudEJ5TWFwTmFtZShBdG9taWNTdHJp
bmcobmFtZSkuaW1wbCgpLCB0aGlzKSk7CiB9CiAKK0RPTVNlbGVjdGlvbiogVHJlZVNjb3BlOjpn
ZXRTZWxlY3Rpb24oKSBjb25zdAoreworICAgIGlmICghcm9vdE5vZGUoKS0+ZG9jdW1lbnQoKS0+
ZnJhbWUoKSkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBpZiAobV9zZWxlY3Rpb24pCisgICAg
ICAgIHJldHVybiBtX3NlbGVjdGlvbi5nZXQoKTsKKworICAgIG1fc2VsZWN0aW9uID0gRE9NU2Vs
ZWN0aW9uOjpjcmVhdGUocm9vdE5vZGUoKS0+ZG9jdW1lbnQoKSk7CisgICAgcmV0dXJuIG1fc2Vs
ZWN0aW9uLmdldCgpOworfQorCiBFbGVtZW50KiBUcmVlU2NvcGU6OmZpbmRBbmNob3IoY29uc3Qg
U3RyaW5nJiBuYW1lKQogewogICAgIGlmIChuYW1lLmlzRW1wdHkoKSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2RvbS9UcmVlU2NvcGUuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9UcmVlU2Nv
cGUuaAppbmRleCA3NmMxMmU1YzkwZjcxZTI0Y2U5OGM4N2QxYmYxNzE4ZjMxODI2Zjk2Li45OTIw
OTMyNjk2ZDIyYzE0OGFlYTg3MjkzYTAwNDY1NGI5NGFhYTExIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9kb20vVHJlZVNjb3BlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1RyZWVTY29w
ZS5oCkBAIC0zMyw2ICszMyw3IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIENvbnRh
aW5lck5vZGU7CitjbGFzcyBET01TZWxlY3Rpb247CiBjbGFzcyBFbGVtZW50OwogY2xhc3MgSFRN
TE1hcEVsZW1lbnQ7CiBjbGFzcyBOb2RlOwpAQCAtNjIsNiArNjMsOCBAQCBwdWJsaWM6CiAgICAg
dm9pZCByZW1vdmVOb2RlTGlzdENhY2hlKCkgeyBBU1NFUlQobV9udW1Ob2RlTGlzdENhY2hlcyA+
IDApOyAtLW1fbnVtTm9kZUxpc3RDYWNoZXM7IH0KICAgICBib29sIGhhc05vZGVMaXN0Q2FjaGVz
KCkgY29uc3QgeyByZXR1cm4gbV9udW1Ob2RlTGlzdENhY2hlczsgfQogCisgICAgRE9NU2VsZWN0
aW9uKiBnZXRTZWxlY3Rpb24oKSBjb25zdDsKKwogICAgIC8vIEZpbmQgZmlyc3QgYW5jaG9yIHdp
dGggdGhlIGdpdmVuIG5hbWUuCiAgICAgLy8gRmlyc3Qgc2VhcmNoZXMgZm9yIGFuIGVsZW1lbnQg
d2l0aCB0aGUgZ2l2ZW4gSUQsIGJ1dCBpZiB0aGF0IGZhaWxzLCB0aGVuIGxvb2tzCiAgICAgLy8g
Zm9yIGFuIGFuY2hvciB3aXRoIHRoZSBnaXZlbiBuYW1lLiBJRCBtYXRjaGluZyBpcyBhbHdheXMg
Y2FzZSBzZW5zaXRpdmUsIGJ1dApAQCAtOTAsNiArOTMsOCBAQCBwcml2YXRlOgogICAgIERvY3Vt
ZW50T3JkZXJlZE1hcCBtX2ltYWdlTWFwc0J5TmFtZTsKIAogICAgIHVuc2lnbmVkIG1fbnVtTm9k
ZUxpc3RDYWNoZXM7CisKKyAgICBtdXRhYmxlIFJlZlB0cjxET01TZWxlY3Rpb24+IG1fc2VsZWN0
aW9uOwogfTsKIAogaW5saW5lIGJvb2wgVHJlZVNjb3BlOjpoYXNFbGVtZW50V2l0aElkKEF0b21p
Y1N0cmluZ0ltcGwqIGlkKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9E
T01TZWxlY3Rpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9ET01TZWxlY3Rpb24uY3BwCmlu
ZGV4IGZkODQ2NTgzZmZiNWU2Yzg2OGY4YmRmY2E4NmVkNWE0NzhjNDE4MjQuLmU1ODQ0YTAzY2Y2
ZGFiNGRmOTQ2MjgyMzJjMmM3ODYyZGRmZTdiNTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvRE9NU2VsZWN0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVNlbGVj
dGlvbi5jcHAKQEAgLTU4LDExICs1OCwxOCBAQCBzdGF0aWMgTm9kZSogc2VsZWN0aW9uU2hhZG93
QW5jZXN0b3IoRnJhbWUqIGZyYW1lKQogICAgIHJldHVybiBzaGFkb3dBbmNlc3RvcjsKIH0KIAot
RE9NU2VsZWN0aW9uOjpET01TZWxlY3Rpb24oRnJhbWUqIGZyYW1lKQotICAgIDogRE9NV2luZG93
UHJvcGVydHkoZnJhbWUpCitET01TZWxlY3Rpb246OkRPTVNlbGVjdGlvbihjb25zdCBUcmVlU2Nv
cGUqIHRyZWVTY29wZSkKKyAgICA6IG1fdHJlZVNjb3BlKHRyZWVTY29wZSkKKyAgICAsIG1fZnJh
bWUodHJlZVNjb3BlLT5yb290Tm9kZSgpLT5kb2N1bWVudCgpLT5mcmFtZSgpKQogewogfQogCit2
b2lkIERPTVNlbGVjdGlvbjo6Y2xlYXJUcmVlU2NvcGUoKQoreworICAgIG1fZnJhbWUgPSAwOwor
ICAgIG1fdHJlZVNjb3BlID0gMDsKK30KKwogY29uc3QgVmlzaWJsZVNlbGVjdGlvbiYgRE9NU2Vs
ZWN0aW9uOjp2aXNpYmxlU2VsZWN0aW9uKCkgY29uc3QKIHsKICAgICBBU1NFUlQobV9mcmFtZSk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVNlbGVjdGlvbi5oIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9ET01TZWxlY3Rpb24uaAppbmRleCA5ODAzYWNjYTIyYmE0M2M1Mjc2Nzg1
NmEyMzk1Yzc2OGM4YTdkN2Y0Li5mNDQ2ZWFhZjMxODU5ODQ1NmQwN2VlZWRlMmMyMDg3MTcyYjkx
N2ZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVNlbGVjdGlvbi5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NU2VsZWN0aW9uLmgKQEAgLTEsNSArMSw2IEBACiAvKgog
ICogQ29weXJpZ2h0IChDKSAyMDA3IEFwcGxlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAg
KgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTM4LDE1ICszOSwxOCBAQAogbmFtZXNw
YWNlIFdlYkNvcmUgewogCiAgICAgY2xhc3MgRnJhbWU7Ci0gICAgY2xhc3MgUmFuZ2U7CiAgICAg
Y2xhc3MgTm9kZTsKKyAgICBjbGFzcyBSYW5nZTsKKyAgICBjbGFzcyBUcmVlU2NvcGU7CiAgICAg
Y2xhc3MgVmlzaWJsZVNlbGVjdGlvbjsKIAogICAgIHR5cGVkZWYgaW50IEV4Y2VwdGlvbkNvZGU7
CiAKLSAgICBjbGFzcyBET01TZWxlY3Rpb24gOiBwdWJsaWMgUmVmQ291bnRlZDxET01TZWxlY3Rp
b24+LCBwdWJsaWMgRE9NV2luZG93UHJvcGVydHkgeworICAgIGNsYXNzIERPTVNlbGVjdGlvbiA6
IHB1YmxpYyBSZWZDb3VudGVkPERPTVNlbGVjdGlvbj4gewogICAgIHB1YmxpYzoKLSAgICAgICAg
c3RhdGljIFBhc3NSZWZQdHI8RE9NU2VsZWN0aW9uPiBjcmVhdGUoRnJhbWUqIGZyYW1lKSB7IHJl
dHVybiBhZG9wdFJlZihuZXcgRE9NU2VsZWN0aW9uKGZyYW1lKSk7IH0KKyAgICAgICAgc3RhdGlj
IFBhc3NSZWZQdHI8RE9NU2VsZWN0aW9uPiBjcmVhdGUoY29uc3QgVHJlZVNjb3BlKiB0cmVlU2Nv
cGUpIHsgcmV0dXJuIGFkb3B0UmVmKG5ldyBET01TZWxlY3Rpb24odHJlZVNjb3BlKSk7IH0KKwor
ICAgICAgICB2b2lkIGNsZWFyVHJlZVNjb3BlKCk7CiAKICAgICAgICAgLy8gU2FmYXJpIFNlbGVj
dGlvbiBPYmplY3QgQVBJCiAgICAgICAgIC8vIFRoZXNlIG1ldGhvZHMgcmV0dXJuIHRoZSB2YWxp
ZCBlcXVpdmFsZW50cyBvZiBpbnRlcm5hbCBlZGl0aW5nIHBvc2l0aW9ucy4KQEAgLTg0LDExICs4
OCwxNiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKICAgICAgICAgU3RyaW5nIHRvU3RyaW5nKCk7
CiAKKyAgICAgICAgRnJhbWUqIGZyYW1lKCkgY29uc3QgeyByZXR1cm4gbV9mcmFtZTsgfQorCiAg
ICAgICAgIC8vIE1pY3Jvc29mdCBTZWxlY3Rpb24gT2JqZWN0IEFQSQogICAgICAgICB2b2lkIGVt
cHR5KCk7CiAKICAgICBwcml2YXRlOgotICAgICAgICBleHBsaWNpdCBET01TZWxlY3Rpb24oRnJh
bWUqKTsKKyAgICAgICAgY29uc3QgVHJlZVNjb3BlKiBtX3RyZWVTY29wZTsKKyAgICAgICAgRnJh
bWUqIG1fZnJhbWU7CisKKyAgICAgICAgZXhwbGljaXQgRE9NU2VsZWN0aW9uKGNvbnN0IFRyZWVT
Y29wZSopOwogCiAgICAgICAgIC8vIENvbnZlbmllbmNlIG1ldGhvZCBmb3IgYWNjZXNzb3JzLCBk
b2VzIG5vdCBOVUxMIGNoZWNrIG1fZnJhbWUuCiAgICAgICAgIGNvbnN0IFZpc2libGVTZWxlY3Rp
b24mIHZpc2libGVTZWxlY3Rpb24oKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvRE9NV2luZG93LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcApp
bmRleCAxYjhkNDRjOTJiOWQ0ZDBjOTEzN2YyMGZlZTQyMTNlMjhmM2VlMDdlLi40MGUwYjJhZmYx
YjBkZmYxM2M2MGI1MDY2NTg0NDgwN2ZiZDBjZjUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL0RPTVdpbmRvdy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cu
Y3BwCkBAIC0zOTksNyArMzk5LDYgQEAgRE9NV2luZG93Ojp+RE9NV2luZG93KCkKICNpZm5kZWYg
TkRFQlVHCiAgICAgaWYgKCFtX3N1c3BlbmRlZEZvclBhZ2VDYWNoZSkgewogICAgICAgICBBU1NF
UlQoIW1fc2NyZWVuKTsKLSAgICAgICAgQVNTRVJUKCFtX3NlbGVjdGlvbik7CiAgICAgICAgIEFT
U0VSVCghbV9oaXN0b3J5KTsKICAgICAgICAgQVNTRVJUKCFtX2NyeXB0byk7CiAgICAgICAgIEFT
U0VSVCghbV9sb2NhdGlvbmJhcik7CkBAIC01NzIsNyArNTcxLDYgQEAgdm9pZCBET01XaW5kb3c6
OmNsZWFyRE9NV2luZG93UHJvcGVydGllcygpCiAgICAgbV9wcm9wZXJ0aWVzLmNsZWFyKCk7CiAK
ICAgICBtX3NjcmVlbiA9IDA7Ci0gICAgbV9zZWxlY3Rpb24gPSAwOwogICAgIG1faGlzdG9yeSA9
IDA7CiAgICAgbV9jcnlwdG8gPSAwOwogICAgIG1fbG9jYXRpb25iYXIgPSAwOwpAQCAtODg2LDEx
ICs4ODQsMTAgQEAgdm9pZCBET01XaW5kb3c6OmRpc3BhdGNoTWVzc2FnZUV2ZW50V2l0aE9yaWdp
bkNoZWNrKFNlY3VyaXR5T3JpZ2luKiBpbnRlbmRlZFRhcmcKIAogRE9NU2VsZWN0aW9uKiBET01X
aW5kb3c6OmdldFNlbGVjdGlvbigpCiB7Ci0gICAgaWYgKCFpc0N1cnJlbnRseURpc3BsYXllZElu
RnJhbWUoKSkKKyAgICBpZiAoIWlzQ3VycmVudGx5RGlzcGxheWVkSW5GcmFtZSgpIHx8ICFtX2Zy
YW1lKQogICAgICAgICByZXR1cm4gMDsKLSAgICBpZiAoIW1fc2VsZWN0aW9uKQotICAgICAgICBt
X3NlbGVjdGlvbiA9IERPTVNlbGVjdGlvbjo6Y3JlYXRlKG1fZnJhbWUpOwotICAgIHJldHVybiBt
X3NlbGVjdGlvbi5nZXQoKTsKKworICAgIHJldHVybiBtX2ZyYW1lLT5kb2N1bWVudCgpLT5nZXRT
ZWxlY3Rpb24oKTsKIH0KIAogRWxlbWVudCogRE9NV2luZG93OjpmcmFtZUVsZW1lbnQoKSBjb25z
dApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuaCBiL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvRE9NV2luZG93LmgKaW5kZXggYmI2ZGY4NWIwMzgzMjQxNTU3ZmNmOWI1NDlm
ZWYwMDUyMDA2ZjhkMi4uNGFjODE2MjRkMWI4NTc0NTg0NmI1YzVkNjBkNjE5MjI0YTJlNWQ5ZiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5oCkBAIC00MjgsNyArNDI4LDYgQEAgbmFtZXNwYWNlIFdl
YkNvcmUgewogICAgICAgICBIYXNoU2V0PERPTVdpbmRvd1Byb3BlcnR5Kj4gbV9wcm9wZXJ0aWVz
OwogCiAgICAgICAgIG11dGFibGUgUmVmUHRyPFNjcmVlbj4gbV9zY3JlZW47Ci0gICAgICAgIG11
dGFibGUgUmVmUHRyPERPTVNlbGVjdGlvbj4gbV9zZWxlY3Rpb247CiAgICAgICAgIG11dGFibGUg
UmVmUHRyPEhpc3Rvcnk+IG1faGlzdG9yeTsKICAgICAgICAgbXV0YWJsZSBSZWZQdHI8Q3J5cHRv
PiAgbV9jcnlwdG87CiAgICAgICAgIG11dGFibGUgUmVmUHRyPEJhckluZm8+IG1fbG9jYXRpb25i
YXI7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>141344</attachid>
            <date>2012-05-11 00:29:02 -0700</date>
            <delta_ts>2012-05-11 03:35:48 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-82699-20120511162900.patch</filename>
            <type>text/plain</type>
            <size>10732</size>
            <attacher name="Shinya Kawanaka">shinyak</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE2NzI3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDQxMzEyZTc2ZjEyYTYz
NjM4M2RkOTcwYzRmYjdmMzI4NGM5NTE0Mi4uMDE1NDE1NDE1MTIzYTk5OTJhNjQ5ZWNjZDAwNThm
ZTRhNTM5NzE4NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDEyLTA1LTExICBTaGlu
eWEgS2F3YW5ha2EgIDxzaGlueWFrQGNocm9taXVtLm9yZz4KKworICAgICAgICBbUmVmYWN0b3Jp
bmddIE1vdmUgU2VsZWN0aW9uIGZyb20gRE9NV2luZG93IHRvIFRyZWVTY29wZS4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgyNjk5CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgU2luY2UgU2hhZG93Um9vdCB3
aWxsIGFsc28gbWFuYWdlIGl0cyBvd24gdmVyc2lvbiBvZiBET01TZWxlY3Rpb24sIHdlIHdvdWxk
IGxpa2UgdG8KKyAgICAgICAgc2hhcmUgdGhlIGNvZGUgYW1vbmcgRG9jdW1lbnQgYW5kIERPTVNl
bGVjdGlvbi4gVGhpcyBwYXRjaCBtb3ZlcyBET01TZWxlY3Rpb24gZnJvbSBET01XaW5kb3cgdG8g
VHJlZVNjb3BlCisgICAgICAgIHNvIHRoYXQgU2hhZG93Um9vdCBjYW4gYWxzbyB1c2UgaXQuCisK
KyAgICAgICAgTm8gbmV3IHRlc3RzLCBzaG91bGQgY292ZXJlZCBieSBleGlzdGluZyB0ZXN0cy4K
KworICAgICAgICAqIGRvbS9Eb2N1bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVu
dDo6dXBkYXRlRm9jdXNBcHBlYXJhbmNlVGltZXJGaXJlZCk6CisgICAgICAgICogZG9tL0RvY3Vt
ZW50Lmg6CisgICAgICAgIChEb2N1bWVudCk6CisgICAgICAgICogZG9tL1NoYWRvd1Jvb3QuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6U2hhZG93Um9vdDo6c2VsZWN0aW9uKToKKyAgICAgICAgKiBk
b20vVHJlZVNjb3BlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlRyZWVTY29wZTo6flRyZWVTY29w
ZSk6CisgICAgICAgIChXZWJDb3JlOjpUcmVlU2NvcGU6OmdldFNlbGVjdGlvbik6CisgICAgICAg
IChXZWJDb3JlKToKKyAgICAgICAgKiBkb20vVHJlZVNjb3BlLmg6CisgICAgICAgIChXZWJDb3Jl
KToKKyAgICAgICAgKFRyZWVTY29wZSk6CisgICAgICAgICogcGFnZS9ET01TZWxlY3Rpb24uY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6RE9NU2VsZWN0aW9uOjpET01TZWxlY3Rpb24pOgorICAgICAg
ICAoV2ViQ29yZTo6RE9NU2VsZWN0aW9uOjpjbGVhclRyZWVTY29wZSk6CisgICAgICAgIChXZWJD
b3JlKToKKyAgICAgICAgKiBwYWdlL0RPTVNlbGVjdGlvbi5oOgorICAgICAgICAoV2ViQ29yZSk6
CisgICAgICAgIChXZWJDb3JlOjpET01TZWxlY3Rpb246OmNyZWF0ZSk6CisgICAgICAgIChET01T
ZWxlY3Rpb24pOgorICAgICAgICAqIHBhZ2UvRE9NV2luZG93LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkRPTVdpbmRvdzo6fkRPTVdpbmRvdyk6CisgICAgICAgIChXZWJDb3JlOjpET01XaW5kb3c6
OmNsZWFyRE9NV2luZG93UHJvcGVydGllcyk6CisgICAgICAgIChXZWJDb3JlOjpET01XaW5kb3c6
OmdldFNlbGVjdGlvbik6CisgICAgICAgICogcGFnZS9ET01XaW5kb3cuaDoKKyAgICAgICAgKERP
TVdpbmRvdyk6CisKIDIwMTItMDUtMTAgIE1pbiBRaW4gIDxxaW5taW5AZ29vZ2xlLmNvbT4KIAog
ICAgICAgICBzcGxpdCBNZWRpYVBsYXllcjo6ZW50ZXJGdWxsc2NyZWVuIGludG8gMiBzZXBlcmF0
ZSBmdW5jdGlvbnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCmluZGV4IGY0NjdhZjMzMjc0MTkxMDU5
ODJlOTgyY2I5NDQ1ZTFhOGRjOTY4MTguLjVhNTA0M2E3Zjg4YTMyOGYxNDZkMzE2N2RkN2I5M2My
MWU5MTgzOTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcApAQCAtNDYsNiArNDYsNyBAQAogI2lu
Y2x1ZGUgIkNvbnRlbnRTZWN1cml0eVBvbGljeS5oIgogI2luY2x1ZGUgIkNvb2tpZUphci5oIgog
I2luY2x1ZGUgIkRPTUltcGxlbWVudGF0aW9uLmgiCisjaW5jbHVkZSAiRE9NU2VsZWN0aW9uLmgi
CiAjaW5jbHVkZSAiRE9NV2luZG93LmgiCiAjaW5jbHVkZSAiRGF0ZUNvbXBvbmVudHMuaCIKICNp
bmNsdWRlICJEZXZpY2VNb3Rpb25Db250cm9sbGVyLmgiCkBAIC01MDkyLDEyICs1MDkzLDYgQEAg
dm9pZCBEb2N1bWVudDo6dXBkYXRlRm9jdXNBcHBlYXJhbmNlVGltZXJGaXJlZChUaW1lcjxEb2N1
bWVudD4qKQogICAgICAgICBlbGVtZW50LT51cGRhdGVGb2N1c0FwcGVhcmFuY2UobV91cGRhdGVG
b2N1c0FwcGVhcmFuY2VSZXN0b3Jlc1NlbGVjdGlvbik7CiB9CiAKLS8vIEZGIG1ldGhvZCBmb3Ig
YWNjZXNzaW5nIHRoZSBzZWxlY3Rpb24gYWRkZWQgZm9yIGNvbXBhdGliaWxpdHkuCi1ET01TZWxl
Y3Rpb24qIERvY3VtZW50OjpnZXRTZWxlY3Rpb24oKSBjb25zdAotewotICAgIHJldHVybiBmcmFt
ZSgpID8gZnJhbWUoKS0+ZG9tV2luZG93KCktPmdldFNlbGVjdGlvbigpIDogMDsKLX0KLQogdm9p
ZCBEb2N1bWVudDo6YXR0YWNoUmFuZ2UoUmFuZ2UqIHJhbmdlKQogewogICAgIEFTU0VSVCghbV9y
YW5nZXMuY29udGFpbnMocmFuZ2UpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9E
b2N1bWVudC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgKaW5kZXggNmM2ODRlODIy
OGIzODFmMGU5MTQzNWIwYWMxZWQ0NGMxNjcwNTJkZi4uMWVmNmI0YTliYWJkYWMzNzhjZmZjOGRl
OGUwMzdmMjAxMjEwMjc5ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgKQEAgLTk2OSw5ICs5NjksNiBA
QCBwdWJsaWM6CiAgICAgdm9pZCB1cGRhdGVGb2N1c0FwcGVhcmFuY2VTb29uKGJvb2wgcmVzdG9y
ZVByZXZpb3VzU2VsZWN0aW9uKTsKICAgICB2b2lkIGNhbmNlbEZvY3VzQXBwZWFyYW5jZVVwZGF0
ZSgpOwogICAgICAgICAKLSAgICAvLyBGRiBtZXRob2QgZm9yIGFjY2Vzc2luZyB0aGUgc2VsZWN0
aW9uIGFkZGVkIGZvciBjb21wYXRpYmlsaXR5LgotICAgIERPTVNlbGVjdGlvbiogZ2V0U2VsZWN0
aW9uKCkgY29uc3Q7Ci0gICAgCiAgICAgLy8gRXh0ZW5zaW9uIGZvciBtYW5pcHVsYXRpbmcgY2Fu
dmFzIGRyYXdpbmcgY29udGV4dHMgZm9yIHVzZSBpbiBDU1MKICAgICBDYW52YXNSZW5kZXJpbmdD
b250ZXh0KiBnZXRDU1NDYW52YXNDb250ZXh0KGNvbnN0IFN0cmluZyYgdHlwZSwgY29uc3QgU3Ry
aW5nJiBuYW1lLCBpbnQgd2lkdGgsIGludCBoZWlnaHQpOwogICAgIEhUTUxDYW52YXNFbGVtZW50
KiBnZXRDU1NDYW52YXNFbGVtZW50KGNvbnN0IFN0cmluZyYgbmFtZSk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9kb20vU2hhZG93Um9vdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vU2hh
ZG93Um9vdC5jcHAKaW5kZXggYWEwMzRiYTMwMGUyNzU2MTdlNWI3Zjk1YWNiNzU3YTczNjY5NTZk
NS4uNmU0YzNiZDYyMjhjMjRmZjZhNWJmM2M0OTM5Njk3Y2Q5Zjk1MDQzNCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvZG9tL1NoYWRvd1Jvb3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9TaGFkb3dSb290LmNwcApAQCAtMTUxLDggKzE1MSw4IEBAIHZvaWQgU2hhZG93Um9vdDo6c2V0
SW5uZXJIVE1MKGNvbnN0IFN0cmluZyYgbWFya3VwLCBFeGNlcHRpb25Db2RlJiBlYykKIAogRE9N
U2VsZWN0aW9uKiBTaGFkb3dSb290OjpzZWxlY3Rpb24oKQogewotICAgIGlmIChkb2N1bWVudCgp
ICYmIGRvY3VtZW50KCktPmRvbVdpbmRvdygpKQotICAgICAgICByZXR1cm4gZG9jdW1lbnQoKS0+
ZG9tV2luZG93KCktPmdldFNlbGVjdGlvbigpOworICAgIGlmIChkb2N1bWVudCgpKQorICAgICAg
ICByZXR1cm4gZG9jdW1lbnQoKS0+Z2V0U2VsZWN0aW9uKCk7CiAgICAgcmV0dXJuIDA7CiB9CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9UcmVlU2NvcGUuY3BwIGIvU291cmNlL1dl
YkNvcmUvZG9tL1RyZWVTY29wZS5jcHAKaW5kZXggOTk4MjY0NTMyMDg3NjUwNjkzYzQ0OGZjNWE3
NmI5MzBjMWM0MGY5MS4uYzJlZmMzOTZmNjAzYTMwN2Y5MGE1NTExMDhhOTJjYzFiZjc5OWZiNyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1RyZWVTY29wZS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvZG9tL1RyZWVTY29wZS5jcHAKQEAgLTI3LDYgKzI3LDggQEAKICNpbmNsdWRlICJU
cmVlU2NvcGUuaCIKIAogI2luY2x1ZGUgIkNvbnRhaW5lck5vZGUuaCIKKyNpbmNsdWRlICJET01T
ZWxlY3Rpb24uaCIKKyNpbmNsdWRlICJET01XaW5kb3cuaCIKICNpbmNsdWRlICJEb2N1bWVudC5o
IgogI2luY2x1ZGUgIkVsZW1lbnQuaCIKICNpbmNsdWRlICJGb2N1c0NvbnRyb2xsZXIuaCIKQEAg
LTM2LDYgKzM4LDcgQEAKICNpbmNsdWRlICJIVE1MTWFwRWxlbWVudC5oIgogI2luY2x1ZGUgIkhU
TUxOYW1lcy5oIgogI2luY2x1ZGUgIlBhZ2UuaCIKKyNpbmNsdWRlICJSdW50aW1lRW5hYmxlZEZl
YXR1cmVzLmgiCiAjaW5jbHVkZSAiVHJlZVNjb3BlQWRvcHRlci5oIgogI2luY2x1ZGUgPHd0Zi90
ZXh0L0F0b21pY1N0cmluZy5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L0NTdHJpbmcuaD4KQEAgLTU0
LDYgKzU3LDEwIEBAIFRyZWVTY29wZTo6VHJlZVNjb3BlKENvbnRhaW5lck5vZGUqIHJvb3ROb2Rl
KQogCiBUcmVlU2NvcGU6On5UcmVlU2NvcGUoKQogeworICAgIGlmIChtX3NlbGVjdGlvbikgewor
ICAgICAgICBtX3NlbGVjdGlvbi0+Y2xlYXJUcmVlU2NvcGUoKTsKKyAgICAgICAgbV9zZWxlY3Rp
b24gPSAwOworICAgIH0KIH0KIAogdm9pZCBUcmVlU2NvcGU6OmRlc3Ryb3lUcmVlU2NvcGVEYXRh
KCkKQEAgLTExNiw2ICsxMjMsMTggQEAgSFRNTE1hcEVsZW1lbnQqIFRyZWVTY29wZTo6Z2V0SW1h
Z2VNYXAoY29uc3QgU3RyaW5nJiB1cmwpIGNvbnN0CiAgICAgcmV0dXJuIHN0YXRpY19jYXN0PEhU
TUxNYXBFbGVtZW50Kj4obV9pbWFnZU1hcHNCeU5hbWUuZ2V0RWxlbWVudEJ5TWFwTmFtZShBdG9t
aWNTdHJpbmcobmFtZSkuaW1wbCgpLCB0aGlzKSk7CiB9CiAKK0RPTVNlbGVjdGlvbiogVHJlZVNj
b3BlOjpnZXRTZWxlY3Rpb24oKSBjb25zdAoreworICAgIGlmICghcm9vdE5vZGUoKS0+ZG9jdW1l
bnQoKS0+ZnJhbWUoKSkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBpZiAobV9zZWxlY3Rpb24p
CisgICAgICAgIHJldHVybiBtX3NlbGVjdGlvbi5nZXQoKTsKKworICAgIG1fc2VsZWN0aW9uID0g
RE9NU2VsZWN0aW9uOjpjcmVhdGUocm9vdE5vZGUoKS0+ZG9jdW1lbnQoKSk7CisgICAgcmV0dXJu
IG1fc2VsZWN0aW9uLmdldCgpOworfQorCiBFbGVtZW50KiBUcmVlU2NvcGU6OmZpbmRBbmNob3Io
Y29uc3QgU3RyaW5nJiBuYW1lKQogewogICAgIGlmIChuYW1lLmlzRW1wdHkoKSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9UcmVlU2NvcGUuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9U
cmVlU2NvcGUuaAppbmRleCA3NmMxMmU1YzkwZjcxZTI0Y2U5OGM4N2QxYmYxNzE4ZjMxODI2Zjk2
Li45OTIwOTMyNjk2ZDIyYzE0OGFlYTg3MjkzYTAwNDY1NGI5NGFhYTExIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9kb20vVHJlZVNjb3BlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1Ry
ZWVTY29wZS5oCkBAIC0zMyw2ICszMyw3IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNz
IENvbnRhaW5lck5vZGU7CitjbGFzcyBET01TZWxlY3Rpb247CiBjbGFzcyBFbGVtZW50OwogY2xh
c3MgSFRNTE1hcEVsZW1lbnQ7CiBjbGFzcyBOb2RlOwpAQCAtNjIsNiArNjMsOCBAQCBwdWJsaWM6
CiAgICAgdm9pZCByZW1vdmVOb2RlTGlzdENhY2hlKCkgeyBBU1NFUlQobV9udW1Ob2RlTGlzdENh
Y2hlcyA+IDApOyAtLW1fbnVtTm9kZUxpc3RDYWNoZXM7IH0KICAgICBib29sIGhhc05vZGVMaXN0
Q2FjaGVzKCkgY29uc3QgeyByZXR1cm4gbV9udW1Ob2RlTGlzdENhY2hlczsgfQogCisgICAgRE9N
U2VsZWN0aW9uKiBnZXRTZWxlY3Rpb24oKSBjb25zdDsKKwogICAgIC8vIEZpbmQgZmlyc3QgYW5j
aG9yIHdpdGggdGhlIGdpdmVuIG5hbWUuCiAgICAgLy8gRmlyc3Qgc2VhcmNoZXMgZm9yIGFuIGVs
ZW1lbnQgd2l0aCB0aGUgZ2l2ZW4gSUQsIGJ1dCBpZiB0aGF0IGZhaWxzLCB0aGVuIGxvb2tzCiAg
ICAgLy8gZm9yIGFuIGFuY2hvciB3aXRoIHRoZSBnaXZlbiBuYW1lLiBJRCBtYXRjaGluZyBpcyBh
bHdheXMgY2FzZSBzZW5zaXRpdmUsIGJ1dApAQCAtOTAsNiArOTMsOCBAQCBwcml2YXRlOgogICAg
IERvY3VtZW50T3JkZXJlZE1hcCBtX2ltYWdlTWFwc0J5TmFtZTsKIAogICAgIHVuc2lnbmVkIG1f
bnVtTm9kZUxpc3RDYWNoZXM7CisKKyAgICBtdXRhYmxlIFJlZlB0cjxET01TZWxlY3Rpb24+IG1f
c2VsZWN0aW9uOwogfTsKIAogaW5saW5lIGJvb2wgVHJlZVNjb3BlOjpoYXNFbGVtZW50V2l0aElk
KEF0b21pY1N0cmluZ0ltcGwqIGlkKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGFnZS9ET01TZWxlY3Rpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9ET01TZWxlY3Rpb24u
Y3BwCmluZGV4IGZkODQ2NTgzZmZiNWU2Yzg2OGY4YmRmY2E4NmVkNWE0NzhjNDE4MjQuLmVjMzI2
MDUyYzYwZDRlNzc3NGFmN2UxZDY4OGQzZjY3ODM3ODZhYWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvRE9NU2VsZWN0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RP
TVNlbGVjdGlvbi5jcHAKQEAgLTU4LDExICs1OCwxNyBAQCBzdGF0aWMgTm9kZSogc2VsZWN0aW9u
U2hhZG93QW5jZXN0b3IoRnJhbWUqIGZyYW1lKQogICAgIHJldHVybiBzaGFkb3dBbmNlc3RvcjsK
IH0KIAotRE9NU2VsZWN0aW9uOjpET01TZWxlY3Rpb24oRnJhbWUqIGZyYW1lKQotICAgIDogRE9N
V2luZG93UHJvcGVydHkoZnJhbWUpCitET01TZWxlY3Rpb246OkRPTVNlbGVjdGlvbihjb25zdCBU
cmVlU2NvcGUqIHRyZWVTY29wZSkKKyAgICA6IERPTVdpbmRvd1Byb3BlcnR5KHRyZWVTY29wZS0+
cm9vdE5vZGUoKS0+ZG9jdW1lbnQoKS0+ZnJhbWUoKSkKKyAgICAsIG1fdHJlZVNjb3BlKHRyZWVT
Y29wZSkKIHsKIH0KIAordm9pZCBET01TZWxlY3Rpb246OmNsZWFyVHJlZVNjb3BlKCkKK3sKKyAg
ICBtX3RyZWVTY29wZSA9IDA7Cit9CisKIGNvbnN0IFZpc2libGVTZWxlY3Rpb24mIERPTVNlbGVj
dGlvbjo6dmlzaWJsZVNlbGVjdGlvbigpIGNvbnN0CiB7CiAgICAgQVNTRVJUKG1fZnJhbWUpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9ET01TZWxlY3Rpb24uaCBiL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvRE9NU2VsZWN0aW9uLmgKaW5kZXggOTgwM2FjY2EyMmJhNDNjNTI3Njc4NTZh
MjM5NWM3NjhjOGE3ZDdmNC4uYjZhZDhlMWFiNTk3MDFiNmY1YTM1YmI4MjVjYzA2NTRlZDkzYTI2
YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9ET01TZWxlY3Rpb24uaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL0RPTVNlbGVjdGlvbi5oCkBAIC0xLDUgKzEsNiBAQAogLyoKICAq
IENvcHlyaWdodCAoQykgMjAwNyBBcHBsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorICog
Q29weXJpZ2h0IChDKSAyMDEyIEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoK
ICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0zOCwxNSArMzksMTggQEAKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIAogICAgIGNsYXNzIEZyYW1lOwotICAgIGNsYXNzIFJhbmdlOwogICAgIGNs
YXNzIE5vZGU7CisgICAgY2xhc3MgUmFuZ2U7CisgICAgY2xhc3MgVHJlZVNjb3BlOwogICAgIGNs
YXNzIFZpc2libGVTZWxlY3Rpb247CiAKICAgICB0eXBlZGVmIGludCBFeGNlcHRpb25Db2RlOwog
CiAgICAgY2xhc3MgRE9NU2VsZWN0aW9uIDogcHVibGljIFJlZkNvdW50ZWQ8RE9NU2VsZWN0aW9u
PiwgcHVibGljIERPTVdpbmRvd1Byb3BlcnR5IHsKICAgICBwdWJsaWM6Ci0gICAgICAgIHN0YXRp
YyBQYXNzUmVmUHRyPERPTVNlbGVjdGlvbj4gY3JlYXRlKEZyYW1lKiBmcmFtZSkgeyByZXR1cm4g
YWRvcHRSZWYobmV3IERPTVNlbGVjdGlvbihmcmFtZSkpOyB9CisgICAgICAgIHN0YXRpYyBQYXNz
UmVmUHRyPERPTVNlbGVjdGlvbj4gY3JlYXRlKGNvbnN0IFRyZWVTY29wZSogdHJlZVNjb3BlKSB7
IHJldHVybiBhZG9wdFJlZihuZXcgRE9NU2VsZWN0aW9uKHRyZWVTY29wZSkpOyB9CisKKyAgICAg
ICAgdm9pZCBjbGVhclRyZWVTY29wZSgpOwogCiAgICAgICAgIC8vIFNhZmFyaSBTZWxlY3Rpb24g
T2JqZWN0IEFQSQogICAgICAgICAvLyBUaGVzZSBtZXRob2RzIHJldHVybiB0aGUgdmFsaWQgZXF1
aXZhbGVudHMgb2YgaW50ZXJuYWwgZWRpdGluZyBwb3NpdGlvbnMuCkBAIC04OCw3ICs5Miw5IEBA
IG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdm9pZCBlbXB0eSgpOwogCiAgICAgcHJpdmF0
ZToKLSAgICAgICAgZXhwbGljaXQgRE9NU2VsZWN0aW9uKEZyYW1lKik7CisgICAgICAgIGNvbnN0
IFRyZWVTY29wZSogbV90cmVlU2NvcGU7CisKKyAgICAgICAgZXhwbGljaXQgRE9NU2VsZWN0aW9u
KGNvbnN0IFRyZWVTY29wZSopOwogCiAgICAgICAgIC8vIENvbnZlbmllbmNlIG1ldGhvZCBmb3Ig
YWNjZXNzb3JzLCBkb2VzIG5vdCBOVUxMIGNoZWNrIG1fZnJhbWUuCiAgICAgICAgIGNvbnN0IFZp
c2libGVTZWxlY3Rpb24mIHZpc2libGVTZWxlY3Rpb24oKSBjb25zdDsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9N
V2luZG93LmNwcAppbmRleCAxYjhkNDRjOTJiOWQ0ZDBjOTEzN2YyMGZlZTQyMTNlMjhmM2VlMDdl
Li40MGUwYjJhZmYxYjBkZmYxM2M2MGI1MDY2NTg0NDgwN2ZiZDBjZjUwIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9ET01XaW5kb3cuY3BwCkBAIC0zOTksNyArMzk5LDYgQEAgRE9NV2luZG93Ojp+RE9NV2luZG93
KCkKICNpZm5kZWYgTkRFQlVHCiAgICAgaWYgKCFtX3N1c3BlbmRlZEZvclBhZ2VDYWNoZSkgewog
ICAgICAgICBBU1NFUlQoIW1fc2NyZWVuKTsKLSAgICAgICAgQVNTRVJUKCFtX3NlbGVjdGlvbik7
CiAgICAgICAgIEFTU0VSVCghbV9oaXN0b3J5KTsKICAgICAgICAgQVNTRVJUKCFtX2NyeXB0byk7
CiAgICAgICAgIEFTU0VSVCghbV9sb2NhdGlvbmJhcik7CkBAIC01NzIsNyArNTcxLDYgQEAgdm9p
ZCBET01XaW5kb3c6OmNsZWFyRE9NV2luZG93UHJvcGVydGllcygpCiAgICAgbV9wcm9wZXJ0aWVz
LmNsZWFyKCk7CiAKICAgICBtX3NjcmVlbiA9IDA7Ci0gICAgbV9zZWxlY3Rpb24gPSAwOwogICAg
IG1faGlzdG9yeSA9IDA7CiAgICAgbV9jcnlwdG8gPSAwOwogICAgIG1fbG9jYXRpb25iYXIgPSAw
OwpAQCAtODg2LDExICs4ODQsMTAgQEAgdm9pZCBET01XaW5kb3c6OmRpc3BhdGNoTWVzc2FnZUV2
ZW50V2l0aE9yaWdpbkNoZWNrKFNlY3VyaXR5T3JpZ2luKiBpbnRlbmRlZFRhcmcKIAogRE9NU2Vs
ZWN0aW9uKiBET01XaW5kb3c6OmdldFNlbGVjdGlvbigpCiB7Ci0gICAgaWYgKCFpc0N1cnJlbnRs
eURpc3BsYXllZEluRnJhbWUoKSkKKyAgICBpZiAoIWlzQ3VycmVudGx5RGlzcGxheWVkSW5GcmFt
ZSgpIHx8ICFtX2ZyYW1lKQogICAgICAgICByZXR1cm4gMDsKLSAgICBpZiAoIW1fc2VsZWN0aW9u
KQotICAgICAgICBtX3NlbGVjdGlvbiA9IERPTVNlbGVjdGlvbjo6Y3JlYXRlKG1fZnJhbWUpOwot
ICAgIHJldHVybiBtX3NlbGVjdGlvbi5nZXQoKTsKKworICAgIHJldHVybiBtX2ZyYW1lLT5kb2N1
bWVudCgpLT5nZXRTZWxlY3Rpb24oKTsKIH0KIAogRWxlbWVudCogRE9NV2luZG93OjpmcmFtZUVs
ZW1lbnQoKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cu
aCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmgKaW5kZXggYmI2ZGY4NWIwMzgzMjQx
NTU3ZmNmOWI1NDlmZWYwMDUyMDA2ZjhkMi4uNGFjODE2MjRkMWI4NTc0NTg0NmI1YzVkNjBkNjE5
MjI0YTJlNWQ5ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5oCkBAIC00MjgsNyArNDI4LDYgQEAg
bmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBIYXNoU2V0PERPTVdpbmRvd1Byb3BlcnR5Kj4g
bV9wcm9wZXJ0aWVzOwogCiAgICAgICAgIG11dGFibGUgUmVmUHRyPFNjcmVlbj4gbV9zY3JlZW47
Ci0gICAgICAgIG11dGFibGUgUmVmUHRyPERPTVNlbGVjdGlvbj4gbV9zZWxlY3Rpb247CiAgICAg
ICAgIG11dGFibGUgUmVmUHRyPEhpc3Rvcnk+IG1faGlzdG9yeTsKICAgICAgICAgbXV0YWJsZSBS
ZWZQdHI8Q3J5cHRvPiAgbV9jcnlwdG87CiAgICAgICAgIG11dGFibGUgUmVmUHRyPEJhckluZm8+
IG1fbG9jYXRpb25iYXI7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>