<?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>107922</bug_id>
          
          <creation_ts>2013-01-24 23:34:53 -0800</creation_ts>
          <short_desc>Call FrameView::contentsResized() when setting fixed layout size</short_desc>
          <delta_ts>2013-01-31 11:27:19 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>108120</dependson>
          <blocked>108446</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Alexandre Elias">aelias</reporter>
          <assigned_to name="Alexandre Elias">aelias</assigned_to>
          <cc>abarth</cc>
    
    <cc>hclam</cc>
    
    <cc>jamesr</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>816307</commentid>
    <comment_count>0</comment_count>
    <who name="Alexandre Elias">aelias</who>
    <bug_when>2013-01-24 23:34:53 -0800</bug_when>
    <thetext>Call FrameView::contentResized() when setting fixed layout size</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>816309</commentid>
    <comment_count>1</comment_count>
      <attachid>184680</attachid>
    <who name="Alexandre Elias">aelias</who>
    <bug_when>2013-01-24 23:40:33 -0800</bug_when>
    <thetext>Created attachment 184680
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>816313</commentid>
    <comment_count>2</comment_count>
    <who name="Alexandre Elias">aelias</who>
    <bug_when>2013-01-24 23:45:22 -0800</bug_when>
    <thetext>*** Bug 107206 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>816647</commentid>
    <comment_count>3</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2013-01-25 09:23:05 -0800</bug_when>
    <thetext>Who is the right person to review this change?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>816727</commentid>
    <comment_count>4</comment_count>
      <attachid>184680</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2013-01-25 10:29:29 -0800</bug_when>
    <thetext>Comment on attachment 184680
Patch

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

R=me. The WebCore changes seem quite reasonable.

&gt; Source/WebCore/platform/ScrollView.cpp:280
&gt; +    if (useFixedLayout())

nit: use m_useFixedLayout in ScrollView.cpp, like the rest of the file does</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>816899</commentid>
    <comment_count>5</comment_count>
      <attachid>184807</attachid>
    <who name="Alexandre Elias">aelias</who>
    <bug_when>2013-01-25 13:59:21 -0800</bug_when>
    <thetext>Created attachment 184807
Patch

Fix nit</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>816940</commentid>
    <comment_count>6</comment_count>
      <attachid>184807</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-25 15:03:56 -0800</bug_when>
    <thetext>Comment on attachment 184807
Patch

Clearing flags on attachment: 184807

Committed r140869: &lt;http://trac.webkit.org/changeset/140869&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>816941</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-25 15:04:00 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>818155</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-28 15:02:17 -0800</bug_when>
    <thetext>Re-opened since this is blocked by bug 108120</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>821259</commentid>
    <comment_count>9</comment_count>
      <attachid>185718</attachid>
    <who name="Alexandre Elias">aelias</who>
    <bug_when>2013-01-31 01:53:57 -0800</bug_when>
    <thetext>Created attachment 185718
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>821275</commentid>
    <comment_count>10</comment_count>
      <attachid>185724</attachid>
    <who name="Alexandre Elias">aelias</who>
    <bug_when>2013-01-31 02:19:17 -0800</bug_when>
    <thetext>Created attachment 185724
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>821298</commentid>
    <comment_count>11</comment_count>
    <who name="Alexandre Elias">aelias</who>
    <bug_when>2013-01-31 02:46:41 -0800</bug_when>
    <thetext>Relanding as WebCore changes are identical.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>821300</commentid>
    <comment_count>12</comment_count>
      <attachid>185728</attachid>
    <who name="Alexandre Elias">aelias</who>
    <bug_when>2013-01-31 02:48:20 -0800</bug_when>
    <thetext>Created attachment 185728
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>821362</commentid>
    <comment_count>13</comment_count>
      <attachid>185728</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-31 04:11:35 -0800</bug_when>
    <thetext>Comment on attachment 185728
Patch for landing

Rejecting attachment 185728 from commit-queue.

New failing tests:
media/track/track-cues-enter-exit.html
media/track/track-cues-cuechange.html
Full output: http://queues.webkit.org/results/16280133</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>821642</commentid>
    <comment_count>14</comment_count>
      <attachid>185808</attachid>
    <who name="Alexandre Elias">aelias</who>
    <bug_when>2013-01-31 10:37:18 -0800</bug_when>
    <thetext>Created attachment 185808
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>821749</commentid>
    <comment_count>15</comment_count>
      <attachid>185808</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-31 11:27:15 -0800</bug_when>
    <thetext>Comment on attachment 185808
Patch for landing

Clearing flags on attachment: 185808

Committed r141450: &lt;http://trac.webkit.org/changeset/141450&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>821750</commentid>
    <comment_count>16</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-31 11:27:19 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>184680</attachid>
            <date>2013-01-24 23:40:33 -0800</date>
            <delta_ts>2013-01-25 13:59:19 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-107922-20130124233724.patch</filename>
            <type>text/plain</type>
            <size>7222</size>
            <attacher name="Alexandre Elias">aelias</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQwNTYyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjgzZjExZTViMTVjZDlj
YzY4MzRmM2Y1YjgzY2ZmZDMwMDM1YmJhNi4uOTYwNjM5MzEwODc0OGM1N2UwMzc5MGMxYTk1OGRl
YzMyNDMyYWMyNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDEzLTAxLTI0ICBBbGV4
YW5kcmUgRWxpYXMgIDxhZWxpYXNAY2hyb21pdW0ub3JnPgorCisgICAgICAgIENhbGwgRnJhbWVW
aWV3Ojpjb250ZW50c1Jlc2l6ZWQoKSB3aGVuIHNldHRpbmcgZml4ZWQgbGF5b3V0IHNpemUKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNzkyMgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEluIGZpeGVkIGxh
eW91dCBtb2RlLCB3ZSBzaG91bGQgYmUgY2FsbGluZyBjb250ZW50c1Jlc2l6ZWQoKSB3aGVuIHRo
ZQorICAgICAgICBmaXhlZCBsYXlvdXQgc2l6ZSBpcyBjaGFuZ2VkOyBvbiB0aGUgb3RoZXIgaGFu
ZCwgd2UgZG9uJ3QgbmVlZCB0byBsYXlvdXQKKyAgICAgICAgd2hlbiB0aGUgdmlzaWJsZSBjb250
ZW50cyBzaXplIGNoYW5nZXMuCisKKyAgICAgICAgVGhpcyBmaXhlcyB0ZXN0IFdlYkZyYW1lVGVz
dDo6Rml4ZWRMYXlvdXRJbml0aWFsaXplQXRNaW5pbXVtUGFnZVNjYWxlLgorCisgICAgICAgICog
cGFnZS9GcmFtZVZpZXcuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVWaWV3Ojp2aXNpYmxl
Q29udGVudHNSZXNpemVkKToKKyAgICAgICAgKiBwbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlNjcm9sbFZpZXc6OnNldEZpeGVkTGF5b3V0U2l6ZSk6CisgICAgICAg
IChXZWJDb3JlOjpTY3JvbGxWaWV3OjpzZXRVc2VGaXhlZExheW91dCk6CisKIDIwMTMtMDEtMjMg
IEFsZXhpcyBNZW5hcmQgIDxhbGV4aXNAd2Via2l0Lm9yZz4KIAogICAgICAgICB0cmFuc2l0aW9u
LXByb3BlcnR5IGFjY2VwdHMgaW5jb3JyZWN0ICJhbGwsIG5vbmUiIGFzIHZhbHVlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nCmluZGV4IDA3YmUyYWNhOTFlMzcwYTQ2Zjg3MWQ4NjAwYmEwNjg2OGUy
MTU2OTYuLjIxMWZlNmU1M2FlZDIxZGVlMmM2YWM1YjViMzEwYjJhODI5NTkwZTcgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTMtMDEtMjQgIEFsZXhhbmRy
ZSBFbGlhcyAgPGFlbGlhc0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgQ2FsbCBGcmFtZVZpZXc6
OmNvbnRlbnRSZXNpemVkKCkgd2hlbiBzZXR0aW5nIGZpeGVkIGxheW91dCBzaXplCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDc5MjIKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbiBmaXhlZCBsYXlvdXQg
bW9kZSwgd2Ugc2hvdWxkIGJlIGNhbGxpbmcgY29udGVudHNSZXNpemVkKCkgd2hlbiB0aGUKKyAg
ICAgICAgZml4ZWQgbGF5b3V0IHNpemUgaXMgY2hhbmdlZDsgb24gdGhlIG90aGVyIGhhbmQsIHdl
IGRvbid0IG5lZWQgdG8gbGF5b3V0CisgICAgICAgIHdoZW4gdGhlIHZpc2libGUgY29udGVudHMg
c2l6ZSBjaGFuZ2VzLgorCisgICAgICAgIFRoaXMgZml4ZXMgdGVzdCBXZWJGcmFtZVRlc3Q6OkZp
eGVkTGF5b3V0SW5pdGlhbGl6ZUF0TWluaW11bVBhZ2VTY2FsZS4KKworICAgICAgICAqIHNyYy9X
ZWJWaWV3SW1wbC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlZpZXdJbXBsOjpyZXNpemUpOgor
ICAgICAgICAoV2ViS2l0OjpXZWJWaWV3SW1wbDo6Y29tcHV0ZVBhZ2VTY2FsZUZhY3RvckxpbWl0
cyk6CisgICAgICAgICogdGVzdHMvV2ViRnJhbWVUZXN0LmNwcDoKKwogMjAxMy0wMS0yMyAgRG1p
dHJ5IEdvem1hbiAgPGRnb3ptYW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIEFkZGVkIGNoYW5n
ZUF0dGFjaGVkV2luZG93SGVpZ2h0IG1ldGhvZCB0byBpbnNwZWN0b3IgZnJvbnRlbmQgQVBJLCB3
aGljaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwCmluZGV4IDAxODlmZjExNTExMjhiMTBmNmY1
YTM5NzdkOGRlMDcwZGMwY2NiZTcuLmNlYzUxMDc1NjJmZTA2OGMzOGExMGQ4MGZkMmI1YjdhZmEz
NjdmMzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAKQEAgLTIwMDAsNyArMjAwMCw3IEBA
IHZvaWQgRnJhbWVWaWV3Ojp2aXNpYmxlQ29udGVudHNSZXNpemVkKCkKICAgICBpZiAoIWZyYW1l
KCktPnZpZXcoKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgaWYgKG5lZWRzTGF5b3V0KCkpCisg
ICAgaWYgKCF1c2VGaXhlZExheW91dCgpICYmIG5lZWRzTGF5b3V0KCkpCiAgICAgICAgIGxheW91
dCgpOwogCiAjaWYgVVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9TY3JvbGxWaWV3LmNwcAppbmRleCAyMTFjOWE3MTQ3NjlhZThhYmY2ZjI5NWIzMzc1Yjgw
ODAzNGU2Y2I4Li44MTliMDUwOWE0MGZiYWQyNWU1YzA4MDc2ZWEzNDg3NjM5YzM4NTk3IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcApAQCAtMjc3LDYgKzI3Nyw4IEBAIHZv
aWQgU2Nyb2xsVmlldzo6c2V0Rml4ZWRMYXlvdXRTaXplKGNvbnN0IEludFNpemUmIG5ld1NpemUp
CiAgICAgICAgIHJldHVybjsKICAgICBtX2ZpeGVkTGF5b3V0U2l6ZSA9IG5ld1NpemU7CiAgICAg
dXBkYXRlU2Nyb2xsYmFycyhzY3JvbGxPZmZzZXQoKSk7CisgICAgaWYgKHVzZUZpeGVkTGF5b3V0
KCkpCisgICAgICAgIGNvbnRlbnRzUmVzaXplZCgpOwogfQogCiBib29sIFNjcm9sbFZpZXc6OnVz
ZUZpeGVkTGF5b3V0KCkgY29uc3QKQEAgLTI5MCw2ICsyOTIsNyBAQCB2b2lkIFNjcm9sbFZpZXc6
OnNldFVzZUZpeGVkTGF5b3V0KGJvb2wgZW5hYmxlKQogICAgICAgICByZXR1cm47CiAgICAgbV91
c2VGaXhlZExheW91dCA9IGVuYWJsZTsKICAgICB1cGRhdGVTY3JvbGxiYXJzKHNjcm9sbE9mZnNl
dCgpKTsKKyAgICBjb250ZW50c1Jlc2l6ZWQoKTsKIH0KIAogSW50U2l6ZSBTY3JvbGxWaWV3Ojpj
b250ZW50c1NpemUoKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvV2ViVmlld0ltcGwuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0lt
cGwuY3BwCmluZGV4IGFkODY4ODViNTdmNTBjZjk0OWE1NzM3ZDZlZDkyNDlhYjBmMjU5NTQuLmE4
ZjE3MjdhODViYjE5M2Q0ODE1ZGIyNDBjOTI0YWJlM2NjNDFmZDEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5jcHAKQEAgLTE2NDAsMTEgKzE2NDAsNiBAQCB2b2lk
IFdlYlZpZXdJbXBsOjpyZXNpemUoY29uc3QgV2ViU2l6ZSYgbmV3U2l6ZSkKIAogI2lmIEVOQUJM
RShWSUVXUE9SVCkKICAgICBpZiAoc2V0dGluZ3MoKS0+dmlld3BvcnRFbmFibGVkKCkpIHsKLSAg
ICAgICAgaWYgKCFzZXR0aW5nc0ltcGwoKS0+YXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0
b3IoKSkgewotICAgICAgICAgICAgLy8gUmVsYXlvdXQgaW1tZWRpYXRlbHkgdG8gb2J0YWluIHRo
ZSBuZXcgY29udGVudCB3aWR0aCwgd2hpY2ggaXMgbmVlZGVkCi0gICAgICAgICAgICAvLyB0byBj
YWxjdWxhdGUgdGhlIG1pbmltdW0gc2NhbGUgbGltaXQuCi0gICAgICAgICAgICB2aWV3LT5sYXlv
dXQoKTsKLSAgICAgICAgfQogICAgICAgICBjb21wdXRlUGFnZVNjYWxlRmFjdG9yTGltaXRzKCk7
CiAKICAgICAgICAgLy8gV2hlbiB0aGUgZGV2aWNlIHJvdGF0ZXM6CkBAIC0zMDc3LDYgKzMwNzIs
MTAgQEAgYm9vbCBXZWJWaWV3SW1wbDo6Y29tcHV0ZVBhZ2VTY2FsZUZhY3RvckxpbWl0cygpCiAK
ICAgICBGcmFtZVZpZXcqIHZpZXcgPSBwYWdlKCktPm1haW5GcmFtZSgpLT52aWV3KCk7CiAKKyAg
ICAvLyBMYXlvdXQgdG8gcmVmcmVzaCB0byB0aGUgbGF0ZXN0IGNvbnRlbnRzIHdpZHRoLgorICAg
IGlmICh2aWV3LT5uZWVkc0xheW91dCgpKQorICAgICAgICB2aWV3LT5sYXlvdXQoKTsKKwogICAg
IG1fbWluaW11bVBhZ2VTY2FsZUZhY3RvciA9IG1pbihtYXgobV9wYWdlRGVmaW5lZE1pbmltdW1Q
YWdlU2NhbGVGYWN0b3IsIG1pblBhZ2VTY2FsZUZhY3RvciksIG1heFBhZ2VTY2FsZUZhY3Rvcik7
CiAgICAgbV9tYXhpbXVtUGFnZVNjYWxlRmFjdG9yID0gbWF4KG1pbihtX3BhZ2VEZWZpbmVkTWF4
aW11bVBhZ2VTY2FsZUZhY3RvciwgbWF4UGFnZVNjYWxlRmFjdG9yKSwgbWluUGFnZVNjYWxlRmFj
dG9yKTsKICAgICBpZiAoIW1fd2ViU2V0dGluZ3MtPmFwcGx5RGV2aWNlU2NhbGVGYWN0b3JJbkNv
bXBvc2l0b3IoKSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9X
ZWJGcmFtZVRlc3QuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9XZWJGcmFtZVRl
c3QuY3BwCmluZGV4IDgyOTljMDg2MDQ4MTUyZDU5YzVjYmNlMDE3ODVjMDdlODIyZjRlOTQuLmFi
ZjkxODY1Yjg0MmM5N2M3MzcwNzZhOWJjM2I2YjVlMDE5MTEwNTcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvV2ViRnJhbWVUZXN0LmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3Rlc3RzL1dlYkZyYW1lVGVzdC5jcHAKQEAgLTIzOCw2ICsyMzgsOCBAQCBU
RVNUX0YoV2ViRnJhbWVUZXN0LCBEZXZpY2VTY2FsZUZhY3RvclVzZXNEZWZhdWx0V2l0aG91dFZp
ZXdwb3J0VGFnKQogCiAgICAgV2ViVmlldyogd2ViVmlldyA9IHN0YXRpY19jYXN0PFdlYlZpZXcq
PihGcmFtZVRlc3RIZWxwZXJzOjpjcmVhdGVXZWJWaWV3QW5kTG9hZChtX2Jhc2VVUkwgKyAibm9f
dmlld3BvcnRfdGFnLmh0bWwiLCB0cnVlLCAwLCAmY2xpZW50KSk7CiAKKyAgICB3ZWJWaWV3LT5z
ZXR0aW5ncygpLT5zZXRBcHBseURldmljZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKHRydWUpOwor
ICAgIHdlYlZpZXctPnNldHRpbmdzKCktPnNldEFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3Np
dG9yKHRydWUpOwogICAgIHdlYlZpZXctPnNldHRpbmdzKCktPnNldFZpZXdwb3J0RW5hYmxlZCh0
cnVlKTsKICAgICB3ZWJWaWV3LT5lbmFibGVGaXhlZExheW91dE1vZGUodHJ1ZSk7CiAgICAgd2Vi
Vmlldy0+cmVzaXplKFdlYlNpemUodmlld3BvcnRXaWR0aCwgdmlld3BvcnRIZWlnaHQpKTsKQEAg
LTI0NSwxNyArMjQ3LDE1IEBAIFRFU1RfRihXZWJGcmFtZVRlc3QsIERldmljZVNjYWxlRmFjdG9y
VXNlc0RlZmF1bHRXaXRob3V0Vmlld3BvcnRUYWcpCiAKICAgICBFWFBFQ1RfRVEoMiwgd2ViVmll
dy0+ZGV2aWNlU2NhbGVGYWN0b3IoKSk7CiAKLSAgICAvLyBEZXZpY2Ugc2NhbGUgZmFjdG9yIHNo
b3VsZCBiZSBhIGNvbXBvbmVudCBvZiBwYWdlIHNjYWxlIGZhY3RvciBpbiBmaXhlZC1sYXlvdXQs
IHNvIGEgc2NhbGUgb2YgMSBiZWNvbWVzIDIuCisgICAgLy8gUGFnZSBzY2FsZSBmYWN0b3Igc2hv
dWxkIG5vdCBiZSBhZmZlY3RlZCBieSBkZXZpY2Ugc2NhbGUgZmFjdG9yLgogICAgIHdlYlZpZXct
PnNldFBhZ2VTY2FsZUZhY3RvckxpbWl0cygxLCAyKTsKLSAgICBFWFBFQ1RfRVEoMiwgd2ViVmll
dy0+cGFnZVNjYWxlRmFjdG9yKCkpOworICAgIEVYUEVDVF9FUSgxLCB3ZWJWaWV3LT5wYWdlU2Nh
bGVGYWN0b3IoKSk7CiAKICAgICAvLyBGb3JjZSB0aGUgbGF5b3V0IHRvIGhhcHBlbiBiZWZvcmUg
bGVhdmluZyB0aGUgdGVzdC4KICAgICB3ZWJWaWV3LT5tYWluRnJhbWUoKS0+Y29udGVudEFzVGV4
dCgxMDI0KS51dGY4KCk7CiB9CiAKLS8vIFRlc3QgaXMgZGlzYWJsZWQgYmVjYXVzZSBpdCBzdGFy
dGVkIGZhaWxpbmcgYWZ0ZXIgcjE0MDAyNS4KLS8vIFNlZSBidWcgZm9yIGRldGFpbHM6IHdlYmtp
dC5vcmcvYi8xMDcyMDYuCi1URVNUX0YoV2ViRnJhbWVUZXN0LCBESVNBQkxFRF9GaXhlZExheW91
dEluaXRpYWxpemVBdE1pbmltdW1QYWdlU2NhbGUpCitURVNUX0YoV2ViRnJhbWVUZXN0LCBGaXhl
ZExheW91dEluaXRpYWxpemVBdE1pbmltdW1QYWdlU2NhbGUpCiB7CiAgICAgcmVnaXN0ZXJNb2Nr
ZWRIdHRwVVJMTG9hZCgiZml4ZWRfbGF5b3V0Lmh0bWwiKTsKIApAQCAtMjY3LDYgKzI2Nyw4IEBA
IFRFU1RfRihXZWJGcmFtZVRlc3QsIERJU0FCTEVEX0ZpeGVkTGF5b3V0SW5pdGlhbGl6ZUF0TWlu
aW11bVBhZ2VTY2FsZSkKICAgICAvLyBNYWtlIHN1cmUgd2UgaW5pdGlhbGl6ZSB0byBtaW5pbXVt
IHNjYWxlLCBldmVuIGlmIHRoZSB3aW5kb3cgc2l6ZQogICAgIC8vIG9ubHkgYmVjb21lcyBhdmFp
bGFibGUgYWZ0ZXIgdGhlIGxvYWQgYmVnaW5zLgogICAgIFdlYlZpZXdJbXBsKiB3ZWJWaWV3SW1w
bCA9IHN0YXRpY19jYXN0PFdlYlZpZXdJbXBsKj4oRnJhbWVUZXN0SGVscGVyczo6Y3JlYXRlV2Vi
Vmlld0FuZExvYWQobV9iYXNlVVJMICsgImZpeGVkX2xheW91dC5odG1sIiwgdHJ1ZSwgMCwgJmNs
aWVudCkpOworICAgIHdlYlZpZXdJbXBsLT5zZXR0aW5ncygpLT5zZXRBcHBseURldmljZVNjYWxl
RmFjdG9ySW5Db21wb3NpdG9yKHRydWUpOworICAgIHdlYlZpZXdJbXBsLT5zZXR0aW5ncygpLT5z
ZXRBcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcih0cnVlKTsKICAgICB3ZWJWaWV3SW1w
bC0+ZW5hYmxlRml4ZWRMYXlvdXRNb2RlKHRydWUpOwogICAgIHdlYlZpZXdJbXBsLT5zZXR0aW5n
cygpLT5zZXRWaWV3cG9ydEVuYWJsZWQodHJ1ZSk7CiAgICAgd2ViVmlld0ltcGwtPnJlc2l6ZShX
ZWJTaXplKHZpZXdwb3J0V2lkdGgsIHZpZXdwb3J0SGVpZ2h0KSk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>184807</attachid>
            <date>2013-01-25 13:59:21 -0800</date>
            <delta_ts>2013-01-31 01:53:54 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-107922-20130125135611.patch</filename>
            <type>text/plain</type>
            <size>7223</size>
            <attacher name="Alexandre Elias">aelias</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQwNTYyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjgzZjExZTViMTVjZDlj
YzY4MzRmM2Y1YjgzY2ZmZDMwMDM1YmJhNi4uYTk4MmRkMjEwN2E2ZDhlMmExZWU0NzA5YjQ0MDU5
MzU5OWQ0ZmJkZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDEzLTAxLTI1ICBBbGV4
YW5kcmUgRWxpYXMgIDxhZWxpYXNAY2hyb21pdW0ub3JnPgorCisgICAgICAgIENhbGwgRnJhbWVW
aWV3Ojpjb250ZW50c1Jlc2l6ZWQoKSB3aGVuIHNldHRpbmcgZml4ZWQgbGF5b3V0IHNpemUKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNzkyMgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEluIGZpeGVkIGxh
eW91dCBtb2RlLCB3ZSBzaG91bGQgYmUgY2FsbGluZyBjb250ZW50c1Jlc2l6ZWQoKSB3aGVuIHRo
ZQorICAgICAgICBmaXhlZCBsYXlvdXQgc2l6ZSBpcyBjaGFuZ2VkOyBvbiB0aGUgb3RoZXIgaGFu
ZCwgd2UgZG9uJ3QgbmVlZCB0byBsYXlvdXQKKyAgICAgICAgd2hlbiB0aGUgdmlzaWJsZSBjb250
ZW50cyBzaXplIGNoYW5nZXMuCisKKyAgICAgICAgVGhpcyBmaXhlcyB0ZXN0IFdlYkZyYW1lVGVz
dDo6Rml4ZWRMYXlvdXRJbml0aWFsaXplQXRNaW5pbXVtUGFnZVNjYWxlLgorCisgICAgICAgICog
cGFnZS9GcmFtZVZpZXcuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVWaWV3Ojp2aXNpYmxl
Q29udGVudHNSZXNpemVkKToKKyAgICAgICAgKiBwbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlNjcm9sbFZpZXc6OnNldEZpeGVkTGF5b3V0U2l6ZSk6CisgICAgICAg
IChXZWJDb3JlOjpTY3JvbGxWaWV3OjpzZXRVc2VGaXhlZExheW91dCk6CisKIDIwMTMtMDEtMjMg
IEFsZXhpcyBNZW5hcmQgIDxhbGV4aXNAd2Via2l0Lm9yZz4KIAogICAgICAgICB0cmFuc2l0aW9u
LXByb3BlcnR5IGFjY2VwdHMgaW5jb3JyZWN0ICJhbGwsIG5vbmUiIGFzIHZhbHVlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nCmluZGV4IDA3YmUyYWNhOTFlMzcwYTQ2Zjg3MWQ4NjAwYmEwNjg2OGUy
MTU2OTYuLjFkYTk2N2E3ZTJmMjc0NzEwNTdhYTBiNTczOTFkN2FmZGY3YWVhYjQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTMtMDEtMjUgIEFsZXhhbmRy
ZSBFbGlhcyAgPGFlbGlhc0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgQ2FsbCBGcmFtZVZpZXc6
OmNvbnRlbnRzUmVzaXplZCgpIHdoZW4gc2V0dGluZyBmaXhlZCBsYXlvdXQgc2l6ZQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA3OTIyCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW4gZml4ZWQgbGF5b3V0
IG1vZGUsIHdlIHNob3VsZCBiZSBjYWxsaW5nIGNvbnRlbnRzUmVzaXplZCgpIHdoZW4gdGhlCisg
ICAgICAgIGZpeGVkIGxheW91dCBzaXplIGlzIGNoYW5nZWQ7IG9uIHRoZSBvdGhlciBoYW5kLCB3
ZSBkb24ndCBuZWVkIHRvIGxheW91dAorICAgICAgICB3aGVuIHRoZSB2aXNpYmxlIGNvbnRlbnRz
IHNpemUgY2hhbmdlcy4KKworICAgICAgICBUaGlzIGZpeGVzIHRlc3QgV2ViRnJhbWVUZXN0OjpG
aXhlZExheW91dEluaXRpYWxpemVBdE1pbmltdW1QYWdlU2NhbGUuCisKKyAgICAgICAgKiBzcmMv
V2ViVmlld0ltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJWaWV3SW1wbDo6cmVzaXplKToK
KyAgICAgICAgKFdlYktpdDo6V2ViVmlld0ltcGw6OmNvbXB1dGVQYWdlU2NhbGVGYWN0b3JMaW1p
dHMpOgorICAgICAgICAqIHRlc3RzL1dlYkZyYW1lVGVzdC5jcHA6CisKIDIwMTMtMDEtMjMgIERt
aXRyeSBHb3ptYW4gIDxkZ296bWFuQGNocm9taXVtLm9yZz4KIAogICAgICAgICBBZGRlZCBjaGFu
Z2VBdHRhY2hlZFdpbmRvd0hlaWdodCBtZXRob2QgdG8gaW5zcGVjdG9yIGZyb250ZW5kIEFQSSwg
d2hpY2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAppbmRleCAwMTg5ZmYxMTUxMTI4YjEwZjZm
NWEzOTc3ZDhkZTA3MGRjMGNjYmU3Li5jZWM1MTA3NTYyZmUwNjhjMzhhMTBkODBmZDJiNWI3YWZh
MzY3ZjMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwCkBAIC0yMDAwLDcgKzIwMDAsNyBA
QCB2b2lkIEZyYW1lVmlldzo6dmlzaWJsZUNvbnRlbnRzUmVzaXplZCgpCiAgICAgaWYgKCFmcmFt
ZSgpLT52aWV3KCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGlmIChuZWVkc0xheW91dCgpKQor
ICAgIGlmICghdXNlRml4ZWRMYXlvdXQoKSAmJiBuZWVkc0xheW91dCgpKQogICAgICAgICBsYXlv
dXQoKTsKIAogI2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElORykKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vU2Nyb2xsVmlldy5jcHAKaW5kZXggMjExYzlhNzE0NzY5YWU4YWJmNmYyOTViMzM3NWI4
MDgwMzRlNmNiOC4uMzk4NDA0NDRlNWEzNGMzMTRkOTU4NjMyNmJhNmIyM2IxNTNjYWFkNiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHAKQEAgLTI3Nyw2ICsyNzcsOCBAQCB2
b2lkIFNjcm9sbFZpZXc6OnNldEZpeGVkTGF5b3V0U2l6ZShjb25zdCBJbnRTaXplJiBuZXdTaXpl
KQogICAgICAgICByZXR1cm47CiAgICAgbV9maXhlZExheW91dFNpemUgPSBuZXdTaXplOwogICAg
IHVwZGF0ZVNjcm9sbGJhcnMoc2Nyb2xsT2Zmc2V0KCkpOworICAgIGlmIChtX3VzZUZpeGVkTGF5
b3V0KQorICAgICAgICBjb250ZW50c1Jlc2l6ZWQoKTsKIH0KIAogYm9vbCBTY3JvbGxWaWV3Ojp1
c2VGaXhlZExheW91dCgpIGNvbnN0CkBAIC0yOTAsNiArMjkyLDcgQEAgdm9pZCBTY3JvbGxWaWV3
OjpzZXRVc2VGaXhlZExheW91dChib29sIGVuYWJsZSkKICAgICAgICAgcmV0dXJuOwogICAgIG1f
dXNlRml4ZWRMYXlvdXQgPSBlbmFibGU7CiAgICAgdXBkYXRlU2Nyb2xsYmFycyhzY3JvbGxPZmZz
ZXQoKSk7CisgICAgY29udGVudHNSZXNpemVkKCk7CiB9CiAKIEludFNpemUgU2Nyb2xsVmlldzo6
Y29udGVudHNTaXplKCkgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
c3JjL1dlYlZpZXdJbXBsLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJ
bXBsLmNwcAppbmRleCBhZDg2ODg1YjU3ZjUwY2Y5NDlhNTczN2Q2ZWQ5MjQ5YWIwZjI1OTU0Li5h
OGYxNzI3YTg1YmIxOTNkNDgxNWRiMjQwYzkyNGFiZTNjYzQxZmQxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCkBAIC0xNjQwLDExICsxNjQwLDYgQEAgdm9p
ZCBXZWJWaWV3SW1wbDo6cmVzaXplKGNvbnN0IFdlYlNpemUmIG5ld1NpemUpCiAKICNpZiBFTkFC
TEUoVklFV1BPUlQpCiAgICAgaWYgKHNldHRpbmdzKCktPnZpZXdwb3J0RW5hYmxlZCgpKSB7Ci0g
ICAgICAgIGlmICghc2V0dGluZ3NJbXBsKCktPmFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3Np
dG9yKCkpIHsKLSAgICAgICAgICAgIC8vIFJlbGF5b3V0IGltbWVkaWF0ZWx5IHRvIG9idGFpbiB0
aGUgbmV3IGNvbnRlbnQgd2lkdGgsIHdoaWNoIGlzIG5lZWRlZAotICAgICAgICAgICAgLy8gdG8g
Y2FsY3VsYXRlIHRoZSBtaW5pbXVtIHNjYWxlIGxpbWl0LgotICAgICAgICAgICAgdmlldy0+bGF5
b3V0KCk7Ci0gICAgICAgIH0KICAgICAgICAgY29tcHV0ZVBhZ2VTY2FsZUZhY3RvckxpbWl0cygp
OwogCiAgICAgICAgIC8vIFdoZW4gdGhlIGRldmljZSByb3RhdGVzOgpAQCAtMzA3Nyw2ICszMDcy
LDEwIEBAIGJvb2wgV2ViVmlld0ltcGw6OmNvbXB1dGVQYWdlU2NhbGVGYWN0b3JMaW1pdHMoKQog
CiAgICAgRnJhbWVWaWV3KiB2aWV3ID0gcGFnZSgpLT5tYWluRnJhbWUoKS0+dmlldygpOwogCisg
ICAgLy8gTGF5b3V0IHRvIHJlZnJlc2ggdG8gdGhlIGxhdGVzdCBjb250ZW50cyB3aWR0aC4KKyAg
ICBpZiAodmlldy0+bmVlZHNMYXlvdXQoKSkKKyAgICAgICAgdmlldy0+bGF5b3V0KCk7CisKICAg
ICBtX21pbmltdW1QYWdlU2NhbGVGYWN0b3IgPSBtaW4obWF4KG1fcGFnZURlZmluZWRNaW5pbXVt
UGFnZVNjYWxlRmFjdG9yLCBtaW5QYWdlU2NhbGVGYWN0b3IpLCBtYXhQYWdlU2NhbGVGYWN0b3Ip
OwogICAgIG1fbWF4aW11bVBhZ2VTY2FsZUZhY3RvciA9IG1heChtaW4obV9wYWdlRGVmaW5lZE1h
eGltdW1QYWdlU2NhbGVGYWN0b3IsIG1heFBhZ2VTY2FsZUZhY3RvciksIG1pblBhZ2VTY2FsZUZh
Y3Rvcik7CiAgICAgaWYgKCFtX3dlYlNldHRpbmdzLT5hcHBseURldmljZVNjYWxlRmFjdG9ySW5D
b21wb3NpdG9yKCkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMv
V2ViRnJhbWVUZXN0LmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvV2ViRnJhbWVU
ZXN0LmNwcAppbmRleCA4Mjk5YzA4NjA0ODE1MmQ1OWM1Y2JjZTAxNzg1YzA3ZTgyMmY0ZTk0Li5h
YmY5MTg2NWI4NDJjOTdjNzM3MDc2YTliYzNiNmI1ZTAxOTExMDU3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL1dlYkZyYW1lVGVzdC5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9jaHJvbWl1bS90ZXN0cy9XZWJGcmFtZVRlc3QuY3BwCkBAIC0yMzgsNiArMjM4LDggQEAg
VEVTVF9GKFdlYkZyYW1lVGVzdCwgRGV2aWNlU2NhbGVGYWN0b3JVc2VzRGVmYXVsdFdpdGhvdXRW
aWV3cG9ydFRhZykKIAogICAgIFdlYlZpZXcqIHdlYlZpZXcgPSBzdGF0aWNfY2FzdDxXZWJWaWV3
Kj4oRnJhbWVUZXN0SGVscGVyczo6Y3JlYXRlV2ViVmlld0FuZExvYWQobV9iYXNlVVJMICsgIm5v
X3ZpZXdwb3J0X3RhZy5odG1sIiwgdHJ1ZSwgMCwgJmNsaWVudCkpOwogCisgICAgd2ViVmlldy0+
c2V0dGluZ3MoKS0+c2V0QXBwbHlEZXZpY2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcih0cnVlKTsK
KyAgICB3ZWJWaWV3LT5zZXR0aW5ncygpLT5zZXRBcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9z
aXRvcih0cnVlKTsKICAgICB3ZWJWaWV3LT5zZXR0aW5ncygpLT5zZXRWaWV3cG9ydEVuYWJsZWQo
dHJ1ZSk7CiAgICAgd2ViVmlldy0+ZW5hYmxlRml4ZWRMYXlvdXRNb2RlKHRydWUpOwogICAgIHdl
YlZpZXctPnJlc2l6ZShXZWJTaXplKHZpZXdwb3J0V2lkdGgsIHZpZXdwb3J0SGVpZ2h0KSk7CkBA
IC0yNDUsMTcgKzI0NywxNSBAQCBURVNUX0YoV2ViRnJhbWVUZXN0LCBEZXZpY2VTY2FsZUZhY3Rv
clVzZXNEZWZhdWx0V2l0aG91dFZpZXdwb3J0VGFnKQogCiAgICAgRVhQRUNUX0VRKDIsIHdlYlZp
ZXctPmRldmljZVNjYWxlRmFjdG9yKCkpOwogCi0gICAgLy8gRGV2aWNlIHNjYWxlIGZhY3RvciBz
aG91bGQgYmUgYSBjb21wb25lbnQgb2YgcGFnZSBzY2FsZSBmYWN0b3IgaW4gZml4ZWQtbGF5b3V0
LCBzbyBhIHNjYWxlIG9mIDEgYmVjb21lcyAyLgorICAgIC8vIFBhZ2Ugc2NhbGUgZmFjdG9yIHNo
b3VsZCBub3QgYmUgYWZmZWN0ZWQgYnkgZGV2aWNlIHNjYWxlIGZhY3Rvci4KICAgICB3ZWJWaWV3
LT5zZXRQYWdlU2NhbGVGYWN0b3JMaW1pdHMoMSwgMik7Ci0gICAgRVhQRUNUX0VRKDIsIHdlYlZp
ZXctPnBhZ2VTY2FsZUZhY3RvcigpKTsKKyAgICBFWFBFQ1RfRVEoMSwgd2ViVmlldy0+cGFnZVNj
YWxlRmFjdG9yKCkpOwogCiAgICAgLy8gRm9yY2UgdGhlIGxheW91dCB0byBoYXBwZW4gYmVmb3Jl
IGxlYXZpbmcgdGhlIHRlc3QuCiAgICAgd2ViVmlldy0+bWFpbkZyYW1lKCktPmNvbnRlbnRBc1Rl
eHQoMTAyNCkudXRmOCgpOwogfQogCi0vLyBUZXN0IGlzIGRpc2FibGVkIGJlY2F1c2UgaXQgc3Rh
cnRlZCBmYWlsaW5nIGFmdGVyIHIxNDAwMjUuCi0vLyBTZWUgYnVnIGZvciBkZXRhaWxzOiB3ZWJr
aXQub3JnL2IvMTA3MjA2LgotVEVTVF9GKFdlYkZyYW1lVGVzdCwgRElTQUJMRURfRml4ZWRMYXlv
dXRJbml0aWFsaXplQXRNaW5pbXVtUGFnZVNjYWxlKQorVEVTVF9GKFdlYkZyYW1lVGVzdCwgRml4
ZWRMYXlvdXRJbml0aWFsaXplQXRNaW5pbXVtUGFnZVNjYWxlKQogewogICAgIHJlZ2lzdGVyTW9j
a2VkSHR0cFVSTExvYWQoImZpeGVkX2xheW91dC5odG1sIik7CiAKQEAgLTI2Nyw2ICsyNjcsOCBA
QCBURVNUX0YoV2ViRnJhbWVUZXN0LCBESVNBQkxFRF9GaXhlZExheW91dEluaXRpYWxpemVBdE1p
bmltdW1QYWdlU2NhbGUpCiAgICAgLy8gTWFrZSBzdXJlIHdlIGluaXRpYWxpemUgdG8gbWluaW11
bSBzY2FsZSwgZXZlbiBpZiB0aGUgd2luZG93IHNpemUKICAgICAvLyBvbmx5IGJlY29tZXMgYXZh
aWxhYmxlIGFmdGVyIHRoZSBsb2FkIGJlZ2lucy4KICAgICBXZWJWaWV3SW1wbCogd2ViVmlld0lt
cGwgPSBzdGF0aWNfY2FzdDxXZWJWaWV3SW1wbCo+KEZyYW1lVGVzdEhlbHBlcnM6OmNyZWF0ZVdl
YlZpZXdBbmRMb2FkKG1fYmFzZVVSTCArICJmaXhlZF9sYXlvdXQuaHRtbCIsIHRydWUsIDAsICZj
bGllbnQpKTsKKyAgICB3ZWJWaWV3SW1wbC0+c2V0dGluZ3MoKS0+c2V0QXBwbHlEZXZpY2VTY2Fs
ZUZhY3RvckluQ29tcG9zaXRvcih0cnVlKTsKKyAgICB3ZWJWaWV3SW1wbC0+c2V0dGluZ3MoKS0+
c2V0QXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IodHJ1ZSk7CiAgICAgd2ViVmlld0lt
cGwtPmVuYWJsZUZpeGVkTGF5b3V0TW9kZSh0cnVlKTsKICAgICB3ZWJWaWV3SW1wbC0+c2V0dGlu
Z3MoKS0+c2V0Vmlld3BvcnRFbmFibGVkKHRydWUpOwogICAgIHdlYlZpZXdJbXBsLT5yZXNpemUo
V2ViU2l6ZSh2aWV3cG9ydFdpZHRoLCB2aWV3cG9ydEhlaWdodCkpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>185718</attachid>
            <date>2013-01-31 01:53:57 -0800</date>
            <delta_ts>2013-01-31 02:19:15 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-107922-20130131015041.patch</filename>
            <type>text/plain</type>
            <size>5671</size>
            <attacher name="Alexandre Elias">aelias</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxMTYwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODNjZGNhNDg0NDI3MjFl
MzAxNTVlMmM3NjgyZjczZTZiODcwZWJhMi4uN2UyOWI5OWU3ZmVjMzY0Yzg2ZDg4NTAxZTg3NTk0
YTg2OWMwMWZlOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDEzLTAxLTMxICBBbGV4
YW5kcmUgRWxpYXMgIDxhZWxpYXNAY2hyb21pdW0ub3JnPgorCisgICAgICAgIENhbGwgRnJhbWVW
aWV3Ojpjb250ZW50c1Jlc2l6ZWQoKSB3aGVuIHNldHRpbmcgZml4ZWQgbGF5b3V0IHNpemUKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNzkyMgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEluIGZpeGVkIGxh
eW91dCBtb2RlLCB3ZSBzaG91bGQgYmUgY2FsbGluZyBjb250ZW50c1Jlc2l6ZWQoKSB3aGVuIHRo
ZQorICAgICAgICBmaXhlZCBsYXlvdXQgc2l6ZSBpcyBjaGFuZ2VkLgorCisgICAgICAgIFByZXZp
b3VzbHkgbGFuZGVkIGFzIHIxNDA4NjkgYnV0IHdhcyByZXZlcnRlZCBkdWUgdG8gYSBidWcgaW4g
YnVuZGxlZAorICAgICAgICBDaHJvbWl1bS1zcGVjaWZpYyBjb2RlLiBUaGlzIHBhdGNoIGluY2x1
ZGVzIGp1c3QgdGhlIG1pbmltdW0gbmVlZGVkIGluCisgICAgICAgIFdlYkNvcmUuCisKKyAgICAg
ICAgTmV3IFdlYkZyYW1lVGVzdDogRnJhbWVWaWV3TmVlZHNMYXlvdXRPbkZpeGVkTGF5b3V0UmVz
aXplLgorCisgICAgICAgICogcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpTY3JvbGxWaWV3OjpzZXRGaXhlZExheW91dFNpemUpOgorICAgICAgICAoV2ViQ29yZTo6
U2Nyb2xsVmlldzo6c2V0VXNlRml4ZWRMYXlvdXQpOgorCiAyMDEzLTAxLTI5ICBKdXN0aW4gTm92
b3NhZCAgPGp1bm92QGdvb2dsZS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lPTiAocjEzNTYyOC0x
MzU2MzIpOiBEb3VibGUgYm94IHNoYWRvdyBmYWlsdXJlIHRvIHJlbmRlcgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVt
L0NoYW5nZUxvZwppbmRleCAzYzQ5ZTkxNDU1NGQwNzVmYTkzZGJmOTU0ZThjNDgwN2U3YWE4Y2Mz
Li41YWIxN2M3N2Y4ZjdiYzk4YWFmMGRiMTAxOTkyZDE2MzdkNDgxMmI2IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDEzLTAxLTMxICBBbGV4YW5kcmUgRWxp
YXMgIDxhZWxpYXNAY2hyb21pdW0ub3JnPgorCisgICAgICAgIENhbGwgRnJhbWVWaWV3Ojpjb250
ZW50c1Jlc2l6ZWQoKSB3aGVuIHNldHRpbmcgZml4ZWQgbGF5b3V0IHNpemUKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNzkyMgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEluIGZpeGVkIGxheW91dCBtb2Rl
LCB3ZSBzaG91bGQgYmUgY2FsbGluZyBjb250ZW50c1Jlc2l6ZWQoKSB3aGVuIHRoZQorICAgICAg
ICBmaXhlZCBsYXlvdXQgc2l6ZSBpcyBjaGFuZ2VkLgorCisgICAgICAgIFByZXZpb3VzbHkgbGFu
ZGVkIGFzIHIxNDA4NjkgYnV0IHdhcyByZXZlcnRlZCBkdWUgdG8gYSBidWcgaW4gYnVuZGxlZAor
ICAgICAgICBDaHJvbWl1bS1zcGVjaWZpYyBjb2RlLiBUaGlzIHBhdGNoIGluY2x1ZGVzIGp1c3Qg
dGhlIG1pbmltdW0gbmVlZGVkIGluCisgICAgICAgIFdlYkNvcmUuCisKKyAgICAgICAgTmV3IFdl
YkZyYW1lVGVzdDogRnJhbWVWaWV3TmVlZHNMYXlvdXRPbkZpeGVkTGF5b3V0UmVzaXplLgorCisg
ICAgICAgICogdGVzdHMvV2ViRnJhbWVUZXN0LmNwcDoKKwogMjAxMy0wMS0yOSAgWGlhbnpodSBX
YW5nICA8d2FuZ3hpYW56aHVAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFtDaHJvbWl1bV0gQ29y
cmVjdCB6b29tIGZvciBmb2N1c2VkIG5vZGUgd2hlbiB1c2luZyBjb21wb3NpdG9yIHNjYWxpbmcK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHAKaW5kZXggMDQ3Mjc5MTE3MjFmZGY5
OTdkMGNhYjMyODA2NDg5MzI0MzNjZjI2ZC4uNGVkYWRmNmIyMmJmOThlOTZmNDRhNjI2YzFlMjAx
NDE4MWNhODI4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmll
dy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHAKQEAgLTI3
OCw2ICsyNzgsOCBAQCB2b2lkIFNjcm9sbFZpZXc6OnNldEZpeGVkTGF5b3V0U2l6ZShjb25zdCBJ
bnRTaXplJiBuZXdTaXplKQogICAgICAgICByZXR1cm47CiAgICAgbV9maXhlZExheW91dFNpemUg
PSBuZXdTaXplOwogICAgIHVwZGF0ZVNjcm9sbGJhcnMoc2Nyb2xsT2Zmc2V0KCkpOworICAgIGlm
IChtX3VzZUZpeGVkTGF5b3V0KQorICAgICAgICBjb250ZW50c1Jlc2l6ZWQoKTsKIH0KIAogYm9v
bCBTY3JvbGxWaWV3Ojp1c2VGaXhlZExheW91dCgpIGNvbnN0CkBAIC0yOTEsNiArMjkzLDcgQEAg
dm9pZCBTY3JvbGxWaWV3OjpzZXRVc2VGaXhlZExheW91dChib29sIGVuYWJsZSkKICAgICAgICAg
cmV0dXJuOwogICAgIG1fdXNlRml4ZWRMYXlvdXQgPSBlbmFibGU7CiAgICAgdXBkYXRlU2Nyb2xs
YmFycyhzY3JvbGxPZmZzZXQoKSk7CisgICAgY29udGVudHNSZXNpemVkKCk7CiB9CiAKIEludFNp
emUgU2Nyb2xsVmlldzo6Y29udGVudHNTaXplKCkgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vdGVzdHMvV2ViRnJhbWVUZXN0LmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vdGVzdHMvV2ViRnJhbWVUZXN0LmNwcAppbmRleCAwNzczNjQ5MzhjZDNjZmZhZGRjMmY1
ZmZhOTI1NjEyMTA2MmQzNTM2Li5mYWU1NjE2MDkxM2ZiOTQ0ZjIwY2ZjOTVkM2VhNzllODMyNjMz
NGE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL1dlYkZyYW1lVGVz
dC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9XZWJGcmFtZVRlc3QuY3Bw
CkBAIC0yMjcsNiArMjI3LDMwIEBAIGNsYXNzIEZpeGVkTGF5b3V0VGVzdFdlYlZpZXdDbGllbnQg
OiBwdWJsaWMgV2ViVmlld0NsaWVudCB7CiAgICAgV2ViU2NyZWVuSW5mbyBtX3NjcmVlbkluZm87
CiB9OwogCitURVNUX0YoV2ViRnJhbWVUZXN0LCBGcmFtZVZpZXdOZWVkc0xheW91dE9uRml4ZWRM
YXlvdXRSZXNpemUpCit7CisgICAgcmVnaXN0ZXJNb2NrZWRIdHRwVVJMTG9hZCgiZml4ZWRfbGF5
b3V0Lmh0bWwiKTsKKworICAgIEZpeGVkTGF5b3V0VGVzdFdlYlZpZXdDbGllbnQgY2xpZW50Owor
ICAgIGludCB2aWV3cG9ydFdpZHRoID0gNjQwOworICAgIGludCB2aWV3cG9ydEhlaWdodCA9IDQ4
MDsKKworICAgIC8vIE1ha2Ugc3VyZSB3ZSBpbml0aWFsaXplIHRvIG1pbmltdW0gc2NhbGUsIGV2
ZW4gaWYgdGhlIHdpbmRvdyBzaXplCisgICAgLy8gb25seSBiZWNvbWVzIGF2YWlsYWJsZSBhZnRl
ciB0aGUgbG9hZCBiZWdpbnMuCisgICAgV2ViVmlld0ltcGwqIHdlYlZpZXdJbXBsID0gc3RhdGlj
X2Nhc3Q8V2ViVmlld0ltcGwqPihGcmFtZVRlc3RIZWxwZXJzOjpjcmVhdGVXZWJWaWV3QW5kTG9h
ZChtX2Jhc2VVUkwgKyAiZml4ZWRfbGF5b3V0Lmh0bWwiLCB0cnVlLCAwLCAmY2xpZW50KSk7Cisg
ICAgd2ViVmlld0ltcGwtPnNldHRpbmdzKCktPnNldEFwcGx5RGV2aWNlU2NhbGVGYWN0b3JJbkNv
bXBvc2l0b3IodHJ1ZSk7CisgICAgd2ViVmlld0ltcGwtPnNldHRpbmdzKCktPnNldEFwcGx5UGFn
ZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKHRydWUpOworICAgIHdlYlZpZXdJbXBsLT5lbmFibGVG
aXhlZExheW91dE1vZGUodHJ1ZSk7CisgICAgd2ViVmlld0ltcGwtPnNldHRpbmdzKCktPnNldFZp
ZXdwb3J0RW5hYmxlZCh0cnVlKTsKKyAgICB3ZWJWaWV3SW1wbC0+cmVzaXplKFdlYlNpemUodmll
d3BvcnRXaWR0aCwgdmlld3BvcnRIZWlnaHQpKTsKKyAgICB3ZWJWaWV3SW1wbC0+bGF5b3V0KCk7
CisKKyAgICB3ZWJWaWV3SW1wbC0+bWFpbkZyYW1lSW1wbCgpLT5mcmFtZVZpZXcoKS0+c2V0Rml4
ZWRMYXlvdXRTaXplKFdlYkNvcmU6OkludFNpemUoMTAwLCAxMDApKTsKKyAgICBFWFBFQ1RfRVEo
dHJ1ZSwgd2ViVmlld0ltcGwtPm1haW5GcmFtZUltcGwoKS0+ZnJhbWVWaWV3KCktPm5lZWRzTGF5
b3V0KCkpOworCisgICAgd2ViVmlld0ltcGwtPmxheW91dCgpOworfQorCiBURVNUX0YoV2ViRnJh
bWVUZXN0LCBEZXZpY2VTY2FsZUZhY3RvclVzZXNEZWZhdWx0V2l0aG91dFZpZXdwb3J0VGFnKQog
ewogICAgIHJlZ2lzdGVyTW9ja2VkSHR0cFVSTExvYWQoIm5vX3ZpZXdwb3J0X3RhZy5odG1sIik7
CkBAIC0yMzksNiArMjYzLDggQEAgVEVTVF9GKFdlYkZyYW1lVGVzdCwgRGV2aWNlU2NhbGVGYWN0
b3JVc2VzRGVmYXVsdFdpdGhvdXRWaWV3cG9ydFRhZykKIAogICAgIFdlYlZpZXcqIHdlYlZpZXcg
PSBzdGF0aWNfY2FzdDxXZWJWaWV3Kj4oRnJhbWVUZXN0SGVscGVyczo6Y3JlYXRlV2ViVmlld0Fu
ZExvYWQobV9iYXNlVVJMICsgIm5vX3ZpZXdwb3J0X3RhZy5odG1sIiwgdHJ1ZSwgMCwgJmNsaWVu
dCkpOwogCisgICAgd2ViVmlldy0+c2V0dGluZ3MoKS0+c2V0QXBwbHlEZXZpY2VTY2FsZUZhY3Rv
ckluQ29tcG9zaXRvcih0cnVlKTsKKyAgICB3ZWJWaWV3LT5zZXR0aW5ncygpLT5zZXRBcHBseVBh
Z2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcih0cnVlKTsKICAgICB3ZWJWaWV3LT5zZXR0aW5ncygp
LT5zZXRWaWV3cG9ydEVuYWJsZWQodHJ1ZSk7CiAgICAgd2ViVmlldy0+ZW5hYmxlRml4ZWRMYXlv
dXRNb2RlKHRydWUpOwogICAgIHdlYlZpZXctPnJlc2l6ZShXZWJTaXplKHZpZXdwb3J0V2lkdGgs
IHZpZXdwb3J0SGVpZ2h0KSk7CkBAIC0yNDYsOSArMjcyLDkgQEAgVEVTVF9GKFdlYkZyYW1lVGVz
dCwgRGV2aWNlU2NhbGVGYWN0b3JVc2VzRGVmYXVsdFdpdGhvdXRWaWV3cG9ydFRhZykKIAogICAg
IEVYUEVDVF9FUSgyLCB3ZWJWaWV3LT5kZXZpY2VTY2FsZUZhY3RvcigpKTsKIAotICAgIC8vIERl
dmljZSBzY2FsZSBmYWN0b3Igc2hvdWxkIGJlIGEgY29tcG9uZW50IG9mIHBhZ2Ugc2NhbGUgZmFj
dG9yIGluIGZpeGVkLWxheW91dCwgc28gYSBzY2FsZSBvZiAxIGJlY29tZXMgMi4KKyAgICAvLyBE
ZXZpY2Ugc2NhbGUgZmFjdG9yIHNob3VsZCBiZSBpbmRlcGVuZGVudCBvZiBwYWdlIHNjYWxlLgog
ICAgIHdlYlZpZXctPnNldFBhZ2VTY2FsZUZhY3RvckxpbWl0cygxLCAyKTsKLSAgICBFWFBFQ1Rf
RVEoMiwgd2ViVmlldy0+cGFnZVNjYWxlRmFjdG9yKCkpOworICAgIEVYUEVDVF9FUSgxLCB3ZWJW
aWV3LT5wYWdlU2NhbGVGYWN0b3IoKSk7CiAKICAgICAvLyBGb3JjZSB0aGUgbGF5b3V0IHRvIGhh
cHBlbiBiZWZvcmUgbGVhdmluZyB0aGUgdGVzdC4KICAgICB3ZWJWaWV3LT5tYWluRnJhbWUoKS0+
Y29udGVudEFzVGV4dCgxMDI0KS51dGY4KCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>185724</attachid>
            <date>2013-01-31 02:19:17 -0800</date>
            <delta_ts>2013-01-31 02:48:16 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-107922-20130131021601.patch</filename>
            <type>text/plain</type>
            <size>20941</size>
            <attacher name="Alexandre Elias">aelias</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxMTYwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODNjZGNhNDg0NDI3MjFl
MzAxNTVlMmM3NjgyZjczZTZiODcwZWJhMi4uNjRhMjg3MmRkMWE3MTg0YTM2ZjdjNDZkOTkzYzEw
YTUzZTE2ZWJmZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDEzLTAxLTMxICBBbGV4
YW5kcmUgRWxpYXMgIDxhZWxpYXNAY2hyb21pdW0ub3JnPgorCisgICAgICAgIENhbGwgRnJhbWVW
aWV3Ojpjb250ZW50c1Jlc2l6ZWQoKSB3aGVuIHNldHRpbmcgZml4ZWQgbGF5b3V0IHNpemUKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNzkyMgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEluIGZpeGVkIGxh
eW91dCBtb2RlLCB3ZSBzaG91bGQgYmUgY2FsbGluZyBjb250ZW50c1Jlc2l6ZWQoKSB3aGVuIHRo
ZQorICAgICAgICBmaXhlZCBsYXlvdXQgc2l6ZSBpcyBjaGFuZ2VkLCBidXQgbm90IGxheWluZyBv
dXQgd2hlbiB0aGUgdmlzaWJsZQorICAgICAgICBjb250ZW50IHJlY3QgY2hhbmdlcy4KKworICAg
ICAgICBQcmV2aW91c2x5IGxhbmRlZCBhcyByMTQwODY5IGJ1dCB3YXMgcmV2ZXJ0ZWQgZHVlIHRv
IGEgYnVnIGluIGJ1bmRsZWQKKyAgICAgICAgQ2hyb21pdW0tc3BlY2lmaWMgY29kZS4gVGhpcyBw
YXRjaCBpbmNsdWRlcyBqdXN0IHRoZSBtaW5pbXVtIG5lZWRlZCBpbgorICAgICAgICBXZWJDb3Jl
LgorCisgICAgICAgIE5ldyBXZWJGcmFtZVRlc3Q6IEZyYW1lVmlld05lZWRzTGF5b3V0T25GaXhl
ZExheW91dFJlc2l6ZS4gIFNvbWUKKyAgICAgICAgZmxha3kgYW5kIG9ic29sZXRlIHRlc3RzIGZv
ciB0aGUgb2xkIHBhZ2Ugc2NhbGUgbW9kZSBhcmUgYWxzbyBkZWxldGVkLgorCisgICAgICAgICog
cGFnZS9GcmFtZVZpZXcuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVWaWV3Ojp2aXNpYmxl
Q29udGVudHNSZXNpemVkKToKKyAgICAgICAgKiBwbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlNjcm9sbFZpZXc6OnNldEZpeGVkTGF5b3V0U2l6ZSk6CisgICAgICAg
IChXZWJDb3JlOjpTY3JvbGxWaWV3OjpzZXRVc2VGaXhlZExheW91dCk6CisKIDIwMTMtMDEtMjkg
IEp1c3RpbiBOb3Zvc2FkICA8anVub3ZAZ29vZ2xlLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9O
IChyMTM1NjI4LTEzNTYzMik6IERvdWJsZSBib3ggc2hhZG93IGZhaWx1cmUgdG8gcmVuZGVyCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IDNjNDllOTE0NTU0ZDA3NWZhOTNkYmY5NTRlOGM0
ODA3ZTdhYThjYzMuLmE4MTg5MTQ5YTNkZDJhM2E2MDEyNTFlYjI1YTYwZTRlN2EzZjgzNTUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTMtMDEtMzEgIEFs
ZXhhbmRyZSBFbGlhcyAgPGFlbGlhc0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgQ2FsbCBGcmFt
ZVZpZXc6OmNvbnRlbnRzUmVzaXplZCgpIHdoZW4gc2V0dGluZyBmaXhlZCBsYXlvdXQgc2l6ZQor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA3OTIyCisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW4gZml4ZWQg
bGF5b3V0IG1vZGUsIHdlIHNob3VsZCBiZSBjYWxsaW5nIGNvbnRlbnRzUmVzaXplZCgpIHdoZW4g
dGhlCisgICAgICAgIGZpeGVkIGxheW91dCBzaXplIGlzIGNoYW5nZWQsIGJ1dCBub3QgbGF5aW5n
IG91dCB3aGVuIHRoZSB2aXNpYmxlCisgICAgICAgIGNvbnRlbnQgcmVjdCBjaGFuZ2VzLgorCisg
ICAgICAgIFByZXZpb3VzbHkgbGFuZGVkIGFzIHIxNDA4NjkgYnV0IHdhcyByZXZlcnRlZCBkdWUg
dG8gYSBidWcgaW4gYnVuZGxlZAorICAgICAgICBDaHJvbWl1bS1zcGVjaWZpYyBjb2RlLiBUaGlz
IHBhdGNoIGluY2x1ZGVzIGp1c3QgdGhlIG1pbmltdW0gbmVlZGVkIGluCisgICAgICAgIFdlYkNv
cmUuCisKKyAgICAgICAgTmV3IFdlYkZyYW1lVGVzdDogRnJhbWVWaWV3TmVlZHNMYXlvdXRPbkZp
eGVkTGF5b3V0UmVzaXplLiAgU29tZQorICAgICAgICBmbGFreSBhbmQgb2Jzb2xldGUgdGVzdHMg
Zm9yIHRoZSBvbGQgcGFnZSBzY2FsZSBtb2RlIGFyZSBhbHNvIGRlbGV0ZWQuCisKKyAgICAgICAg
KiB0ZXN0cy9XZWJGcmFtZVRlc3QuY3BwOgorCiAyMDEzLTAxLTI5ICBYaWFuemh1IFdhbmcgIDx3
YW5neGlhbnpodUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgW0Nocm9taXVtXSBDb3JyZWN0IHpv
b20gZm9yIGZvY3VzZWQgbm9kZSB3aGVuIHVzaW5nIGNvbXBvc2l0b3Igc2NhbGluZwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9GcmFtZVZpZXcuY3BwCmluZGV4IGE1OGQ2YTA0NDU0MmM2NzI1OTYxNjJlOTNjM2Y4Yzhh
YTM5ZDc4M2IuLjg2NjNhMTM4ZTJiNmU0OTA2N2M5ZTMyM2FhYmQzYTg4MGE3MmU5NDggMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL0ZyYW1lVmlldy5jcHAKQEAgLTIwMjIsNyArMjAyMiw3IEBAIHZvaWQgRnJhbWVW
aWV3Ojp2aXNpYmxlQ29udGVudHNSZXNpemVkKCkKICAgICBpZiAoIWZyYW1lKCktPnZpZXcoKSkK
ICAgICAgICAgcmV0dXJuOwogCi0gICAgaWYgKG5lZWRzTGF5b3V0KCkpCisgICAgaWYgKCF1c2VG
aXhlZExheW91dCgpICYmIG5lZWRzTGF5b3V0KCkpCiAgICAgICAgIGxheW91dCgpOwogCiAjaWYg
VVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vU2Nyb2xsVmlldy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxW
aWV3LmNwcAppbmRleCAwNDcyNzkxMTcyMWZkZjk5N2QwY2FiMzI4MDY0ODkzMjQzM2NmMjZkLi40
ZWRhZGY2YjIyYmY5OGU5NmY0NGE2MjZjMWUyMDE0MTgxY2E4MjgyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9TY3JvbGxWaWV3LmNwcApAQCAtMjc4LDYgKzI3OCw4IEBAIHZvaWQgU2Nyb2xsVmll
dzo6c2V0Rml4ZWRMYXlvdXRTaXplKGNvbnN0IEludFNpemUmIG5ld1NpemUpCiAgICAgICAgIHJl
dHVybjsKICAgICBtX2ZpeGVkTGF5b3V0U2l6ZSA9IG5ld1NpemU7CiAgICAgdXBkYXRlU2Nyb2xs
YmFycyhzY3JvbGxPZmZzZXQoKSk7CisgICAgaWYgKG1fdXNlRml4ZWRMYXlvdXQpCisgICAgICAg
IGNvbnRlbnRzUmVzaXplZCgpOwogfQogCiBib29sIFNjcm9sbFZpZXc6OnVzZUZpeGVkTGF5b3V0
KCkgY29uc3QKQEAgLTI5MSw2ICsyOTMsNyBAQCB2b2lkIFNjcm9sbFZpZXc6OnNldFVzZUZpeGVk
TGF5b3V0KGJvb2wgZW5hYmxlKQogICAgICAgICByZXR1cm47CiAgICAgbV91c2VGaXhlZExheW91
dCA9IGVuYWJsZTsKICAgICB1cGRhdGVTY3JvbGxiYXJzKHNjcm9sbE9mZnNldCgpKTsKKyAgICBj
b250ZW50c1Jlc2l6ZWQoKTsKIH0KIAogSW50U2l6ZSBTY3JvbGxWaWV3Ojpjb250ZW50c1NpemUo
KSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9XZWJGcmFt
ZVRlc3QuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9XZWJGcmFtZVRlc3QuY3Bw
CmluZGV4IDA3NzM2NDkzOGNkM2NmZmFkZGMyZjVmZmE5MjU2MTIxMDYyZDM1MzYuLjQ3MGNlNzRh
NjZhYmYxZDY1MzRiNjE4MTA2MTJmYzE4ZTUyNDUwN2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vdGVzdHMvV2ViRnJhbWVUZXN0LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL3Rlc3RzL1dlYkZyYW1lVGVzdC5jcHAKQEAgLTIyNyw2ICsyMjcsMzQgQEAgY2xhc3Mg
Rml4ZWRMYXlvdXRUZXN0V2ViVmlld0NsaWVudCA6IHB1YmxpYyBXZWJWaWV3Q2xpZW50IHsKICAg
ICBXZWJTY3JlZW5JbmZvIG1fc2NyZWVuSW5mbzsKIH07CiAKK1RFU1RfRihXZWJGcmFtZVRlc3Qs
IEZyYW1lVmlld05lZWRzTGF5b3V0T25GaXhlZExheW91dFJlc2l6ZSkKK3sKKyAgICByZWdpc3Rl
ck1vY2tlZEh0dHBVUkxMb2FkKCJmaXhlZF9sYXlvdXQuaHRtbCIpOworCisgICAgRml4ZWRMYXlv
dXRUZXN0V2ViVmlld0NsaWVudCBjbGllbnQ7CisgICAgaW50IHZpZXdwb3J0V2lkdGggPSA2NDA7
CisgICAgaW50IHZpZXdwb3J0SGVpZ2h0ID0gNDgwOworCisgICAgLy8gTWFrZSBzdXJlIHdlIGlu
aXRpYWxpemUgdG8gbWluaW11bSBzY2FsZSwgZXZlbiBpZiB0aGUgd2luZG93IHNpemUKKyAgICAv
LyBvbmx5IGJlY29tZXMgYXZhaWxhYmxlIGFmdGVyIHRoZSBsb2FkIGJlZ2lucy4KKyAgICBXZWJW
aWV3SW1wbCogd2ViVmlld0ltcGwgPSBzdGF0aWNfY2FzdDxXZWJWaWV3SW1wbCo+KEZyYW1lVGVz
dEhlbHBlcnM6OmNyZWF0ZVdlYlZpZXdBbmRMb2FkKG1fYmFzZVVSTCArICJmaXhlZF9sYXlvdXQu
aHRtbCIsIHRydWUsIDAsICZjbGllbnQpKTsKKyAgICB3ZWJWaWV3SW1wbC0+c2V0dGluZ3MoKS0+
c2V0QXBwbHlEZXZpY2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcih0cnVlKTsKKyAgICB3ZWJWaWV3
SW1wbC0+c2V0dGluZ3MoKS0+c2V0QXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IodHJ1
ZSk7CisgICAgd2ViVmlld0ltcGwtPmVuYWJsZUZpeGVkTGF5b3V0TW9kZSh0cnVlKTsKKyAgICB3
ZWJWaWV3SW1wbC0+c2V0dGluZ3MoKS0+c2V0Vmlld3BvcnRFbmFibGVkKHRydWUpOworICAgIHdl
YlZpZXdJbXBsLT5yZXNpemUoV2ViU2l6ZSh2aWV3cG9ydFdpZHRoLCB2aWV3cG9ydEhlaWdodCkp
OworICAgIHdlYlZpZXdJbXBsLT5sYXlvdXQoKTsKKworICAgIHdlYlZpZXdJbXBsLT5tYWluRnJh
bWVJbXBsKCktPmZyYW1lVmlldygpLT5zZXRGaXhlZExheW91dFNpemUoV2ViQ29yZTo6SW50U2l6
ZSgxMDAsIDEwMCkpOworICAgIEVYUEVDVF9UUlVFKHdlYlZpZXdJbXBsLT5tYWluRnJhbWVJbXBs
KCktPmZyYW1lVmlldygpLT5uZWVkc0xheW91dCgpKTsKKworICAgIGludCBwcmV2TGF5b3V0Q291
bnQgPSB3ZWJWaWV3SW1wbC0+bWFpbkZyYW1lSW1wbCgpLT5mcmFtZVZpZXcoKS0+bGF5b3V0Q291
bnQoKTsKKyAgICB3ZWJWaWV3SW1wbC0+bWFpbkZyYW1lSW1wbCgpLT5mcmFtZVZpZXcoKS0+c2V0
RnJhbWVSZWN0KFdlYkNvcmU6OkludFJlY3QoMCwgMCwgNjQxLCA0ODEpKTsKKyAgICBFWFBFQ1Rf
RVEocHJldkxheW91dENvdW50LCB3ZWJWaWV3SW1wbC0+bWFpbkZyYW1lSW1wbCgpLT5mcmFtZVZp
ZXcoKS0+bGF5b3V0Q291bnQoKSk7CisKKyAgICB3ZWJWaWV3SW1wbC0+bGF5b3V0KCk7Cit9CisK
IFRFU1RfRihXZWJGcmFtZVRlc3QsIERldmljZVNjYWxlRmFjdG9yVXNlc0RlZmF1bHRXaXRob3V0
Vmlld3BvcnRUYWcpCiB7CiAgICAgcmVnaXN0ZXJNb2NrZWRIdHRwVVJMTG9hZCgibm9fdmlld3Bv
cnRfdGFnLmh0bWwiKTsKQEAgLTIzOSw2ICsyNjcsOCBAQCBURVNUX0YoV2ViRnJhbWVUZXN0LCBE
ZXZpY2VTY2FsZUZhY3RvclVzZXNEZWZhdWx0V2l0aG91dFZpZXdwb3J0VGFnKQogCiAgICAgV2Vi
Vmlldyogd2ViVmlldyA9IHN0YXRpY19jYXN0PFdlYlZpZXcqPihGcmFtZVRlc3RIZWxwZXJzOjpj
cmVhdGVXZWJWaWV3QW5kTG9hZChtX2Jhc2VVUkwgKyAibm9fdmlld3BvcnRfdGFnLmh0bWwiLCB0
cnVlLCAwLCAmY2xpZW50KSk7CiAKKyAgICB3ZWJWaWV3LT5zZXR0aW5ncygpLT5zZXRBcHBseURl
dmljZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKHRydWUpOworICAgIHdlYlZpZXctPnNldHRpbmdz
KCktPnNldEFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKHRydWUpOwogICAgIHdlYlZp
ZXctPnNldHRpbmdzKCktPnNldFZpZXdwb3J0RW5hYmxlZCh0cnVlKTsKICAgICB3ZWJWaWV3LT5l
bmFibGVGaXhlZExheW91dE1vZGUodHJ1ZSk7CiAgICAgd2ViVmlldy0+cmVzaXplKFdlYlNpemUo
dmlld3BvcnRXaWR0aCwgdmlld3BvcnRIZWlnaHQpKTsKQEAgLTI0Niw5ICsyNzYsMTEgQEAgVEVT
VF9GKFdlYkZyYW1lVGVzdCwgRGV2aWNlU2NhbGVGYWN0b3JVc2VzRGVmYXVsdFdpdGhvdXRWaWV3
cG9ydFRhZykKIAogICAgIEVYUEVDVF9FUSgyLCB3ZWJWaWV3LT5kZXZpY2VTY2FsZUZhY3Rvcigp
KTsKIAotICAgIC8vIERldmljZSBzY2FsZSBmYWN0b3Igc2hvdWxkIGJlIGEgY29tcG9uZW50IG9m
IHBhZ2Ugc2NhbGUgZmFjdG9yIGluIGZpeGVkLWxheW91dCwgc28gYSBzY2FsZSBvZiAxIGJlY29t
ZXMgMi4KKyAgICAvLyBEZXZpY2Ugc2NhbGUgZmFjdG9yIHNob3VsZCBiZSBpbmRlcGVuZGVudCBv
ZiBwYWdlIHNjYWxlLgogICAgIHdlYlZpZXctPnNldFBhZ2VTY2FsZUZhY3RvckxpbWl0cygxLCAy
KTsKLSAgICBFWFBFQ1RfRVEoMiwgd2ViVmlldy0+cGFnZVNjYWxlRmFjdG9yKCkpOworICAgIHdl
YlZpZXctPnNldFBhZ2VTY2FsZUZhY3RvclByZXNlcnZpbmdTY3JvbGxPZmZzZXQoMC41KTsKKyAg
ICB3ZWJWaWV3LT5sYXlvdXQoKTsKKyAgICBFWFBFQ1RfRVEoMSwgd2ViVmlldy0+cGFnZVNjYWxl
RmFjdG9yKCkpOwogCiAgICAgLy8gRm9yY2UgdGhlIGxheW91dCB0byBoYXBwZW4gYmVmb3JlIGxl
YXZpbmcgdGhlIHRlc3QuCiAgICAgd2ViVmlldy0+bWFpbkZyYW1lKCktPmNvbnRlbnRBc1RleHQo
MTAyNCkudXRmOCgpOwpAQCAtNDQzLDY1ICs0NzUsNiBAQCB2b2lkIHNldFNjYWxlQW5kU2Nyb2xs
QW5kTGF5b3V0KFdlYktpdDo6V2ViVmlldyogd2ViVmlldywgV2ViUG9pbnQgc2Nyb2xsLCBmbG9h
dAogICAgIHdlYlZpZXctPmxheW91dCgpOwogfQogCi1URVNUX0YoV2ViRnJhbWVUZXN0LCBEaXZB
dXRvWm9vbVBhcmFtc1Rlc3RXZWJLaXRTY2FsaW5nKQotewotICAgIHJlZ2lzdGVyTW9ja2VkSHR0
cFVSTExvYWQoImdldF9zY2FsZV9mb3JfYXV0b196b29tX2ludG9fZGl2X3Rlc3QuaHRtbCIpOwot
Ci0gICAgaW50IHZpZXdwb3J0V2lkdGggPSA2NDA7Ci0gICAgaW50IHZpZXdwb3J0SGVpZ2h0ID0g
NDgwOwotICAgIFdlYktpdDo6V2ViVmlldyogd2ViVmlldyA9IEZyYW1lVGVzdEhlbHBlcnM6OmNy
ZWF0ZVdlYlZpZXdBbmRMb2FkKG1fYmFzZVVSTCArICJnZXRfc2NhbGVfZm9yX2F1dG9fem9vbV9p
bnRvX2Rpdl90ZXN0Lmh0bWwiKTsKLSAgICB3ZWJWaWV3LT5zZXR0aW5ncygpLT5zZXRBcHBseURl
dmljZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKGZhbHNlKTsKLSAgICB3ZWJWaWV3LT5zZXR0aW5n
cygpLT5zZXRBcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcihmYWxzZSk7Ci0gICAgd2Vi
Vmlldy0+c2V0RGV2aWNlU2NhbGVGYWN0b3IoMi4wZik7Ci0gICAgd2ViVmlldy0+cmVzaXplKFdl
YlNpemUodmlld3BvcnRXaWR0aCwgdmlld3BvcnRIZWlnaHQpKTsKLSAgICB3ZWJWaWV3LT5zZXRQ
YWdlU2NhbGVGYWN0b3JMaW1pdHMoMC4wMWYsIDQpOwotICAgIHdlYlZpZXctPmVuYWJsZUZpeGVk
TGF5b3V0TW9kZSh0cnVlKTsKLSAgICB3ZWJWaWV3LT5sYXlvdXQoKTsKLQotICAgIFdlYlJlY3Qg
d2lkZURpdigyMDAsIDEwMCwgNDAwLCAxNTApOwotICAgIFdlYlJlY3QgdGFsbERpdigyMDAsIDMw
MCwgNDAwLCA4MDApOwotICAgIFdlYlJlY3QgZG91YmxlVGFwUG9pbnRXaWRlKCh3aWRlRGl2Lngg
KyA1MCkgKiB3ZWJWaWV3LT5wYWdlU2NhbGVGYWN0b3IoKSwKLSAgICAgICAgKHdpZGVEaXYueSAr
IDUwKSAqIHdlYlZpZXctPnBhZ2VTY2FsZUZhY3RvcigpLCAwLCAwKTsKLSAgICBXZWJSZWN0IGRv
dWJsZVRhcFBvaW50VGFsbCgodGFsbERpdi54ICsgNTApICogd2ViVmlldy0+cGFnZVNjYWxlRmFj
dG9yKCksCi0gICAgICAgICh0YWxsRGl2LnkgKyA1MCkgKiB3ZWJWaWV3LT5wYWdlU2NhbGVGYWN0
b3IoKSwgMCwgMCk7Ci0gICAgZmxvYXQgc2NhbGU7Ci0gICAgV2ViUG9pbnQgc2Nyb2xsOwotICAg
IGJvb2wgaXNBbmNob3I7Ci0KLSAgICBXZWJWaWV3SW1wbCogd2ViVmlld0ltcGwgPSBzdGF0aWNf
Y2FzdDxXZWJWaWV3SW1wbCo+KHdlYlZpZXcpOwotICAgIC8vIFRlc3QgZG91YmxlLXRhcCB6b29t
aW5nIGludG8gd2lkZSBkaXYuCi0gICAgd2ViVmlld0ltcGwtPmNvbXB1dGVTY2FsZUFuZFNjcm9s
bEZvckhpdFJlY3QoZG91YmxlVGFwUG9pbnRXaWRlLCBXZWJWaWV3SW1wbDo6RG91YmxlVGFwLCBz
Y2FsZSwgc2Nyb2xsLCBpc0FuY2hvcik7Ci0gICAgLy8gVGhlIGRpdiBzaG91bGQgaG9yaXpvbnRh
bGx5IGZpbGwgdGhlIHNjcmVlbiAobW9kdWxvIG1hcmdpbnMpLCBhbmQKLSAgICAvLyB2ZXJ0aWNh
bGx5IGNlbnRlcmVkIChtb2R1bG8gaW50ZWdlciByb3VuZGluZykuCi0gICAgRVhQRUNUX05FQVIo
dmlld3BvcnRXaWR0aCAvIChmbG9hdCkgd2lkZURpdi53aWR0aCwgc2NhbGUsIDAuMSk7Ci0gICAg
RVhQRUNUX05FQVIod2lkZURpdi54ICogc2NhbGUsIHNjcm9sbC54LCAyMCk7Ci0gICAgaW50IHZT
Y3JvbGwgPSAod2lkZURpdi55ICsgd2lkZURpdi5oZWlnaHQgLyAyKSAqIHNjYWxlIC0gKHZpZXdw
b3J0SGVpZ2h0IC8gMik7Ci0gICAgRVhQRUNUX05FQVIodlNjcm9sbCwgc2Nyb2xsLnksIDEpOwot
ICAgIEVYUEVDVF9GQUxTRShpc0FuY2hvcik7Ci0KLSAgICBzZXRTY2FsZUFuZFNjcm9sbEFuZExh
eW91dCh3ZWJWaWV3SW1wbCwgc2Nyb2xsLCBzY2FsZSk7Ci0KLSAgICAvLyBUZXN0IHpvb20gb3V0
IGJhY2sgdG8gbWluaW11bSBzY2FsZS4KLSAgICB3ZWJWaWV3SW1wbC0+Y29tcHV0ZVNjYWxlQW5k
U2Nyb2xsRm9ySGl0UmVjdChkb3VibGVUYXBQb2ludFdpZGUsIFdlYlZpZXdJbXBsOjpEb3VibGVU
YXAsIHNjYWxlLCBzY3JvbGwsIGlzQW5jaG9yKTsKLSAgICBFWFBFQ1RfRkxPQVRfRVEod2ViVmll
d0ltcGwtPm1pbmltdW1QYWdlU2NhbGVGYWN0b3IoKSwgc2NhbGUpOwotICAgIEVYUEVDVF9UUlVF
KGlzQW5jaG9yKTsKLQotICAgIHNldFNjYWxlQW5kU2Nyb2xsQW5kTGF5b3V0KHdlYlZpZXdJbXBs
LCBXZWJQb2ludCgwLCAwKSwgc2NhbGUpOwotCi0gICAgLy8gVGVzdCBkb3VibGUtdGFwIHpvb21p
bmcgaW50byB0YWxsIGRpdi4KLSAgICB3ZWJWaWV3SW1wbC0+Y29tcHV0ZVNjYWxlQW5kU2Nyb2xs
Rm9ySGl0UmVjdChkb3VibGVUYXBQb2ludFRhbGwsIFdlYlZpZXdJbXBsOjpEb3VibGVUYXAsIHNj
YWxlLCBzY3JvbGwsIGlzQW5jaG9yKTsKLSAgICAvLyBUaGUgZGl2IHNob3VsZCBzdGFydCBhdCB0
aGUgdG9wIGxlZnQgb2YgdGhlIHZpZXdwb3J0LgotICAgIEVYUEVDVF9ORUFSKHZpZXdwb3J0V2lk
dGggLyAoZmxvYXQpIHRhbGxEaXYud2lkdGgsIHNjYWxlLCAwLjEpOwotICAgIEVYUEVDVF9ORUFS
KHRhbGxEaXYueCAqIHNjYWxlLCBzY3JvbGwueCwgMjApOwotICAgIEVYUEVDVF9ORUFSKHRhbGxE
aXYueSAqIHNjYWxlLCBzY3JvbGwueSwgMjApOwotICAgIEVYUEVDVF9GQUxTRShpc0FuY2hvcik7
Ci0KLSAgICAvLyBUZXN0IGZvciBOb24tZG91YmxldGFwIHNjYWxpbmcKLSAgICAvLyBUZXN0IHpv
b21pbmcgaW50byBkaXYuCi0gICAgd2ViVmlld0ltcGwtPmNvbXB1dGVTY2FsZUFuZFNjcm9sbEZv
ckhpdFJlY3QoV2ViUmVjdCgyNTAsIDI1MCwgMTAsIDEwKSwgV2ViVmlld0ltcGw6OkZpbmRJblBh
Z2UsIHNjYWxlLCBzY3JvbGwsIGlzQW5jaG9yKTsKLSAgICBFWFBFQ1RfTkVBUih2aWV3cG9ydFdp
ZHRoIC8gKGZsb2F0KSB3aWRlRGl2LndpZHRoLCBzY2FsZSwgMC4xKTsKLX0KLQogVEVTVF9GKFdl
YkZyYW1lVGVzdCwgRGl2QXV0b1pvb21QYXJhbXNUZXN0Q29tcG9zaXRvclNjYWxpbmcpCiB7CiAg
ICAgcmVnaXN0ZXJNb2NrZWRIdHRwVVJMTG9hZCgiZ2V0X3NjYWxlX2Zvcl9hdXRvX3pvb21faW50
b19kaXZfdGVzdC5odG1sIik7CkBAIC01NjksNDcgKzU0Miw2IEBAIHZvaWQgc2ltdWxhdGVEb3Vi
bGVUYXAoV2ViVmlld0ltcGwqIHdlYlZpZXdJbXBsLCBXZWJQb2ludCYgcG9pbnQsIGZsb2F0JiBz
Y2FsZSkKICAgICBzY2FsZSA9IHdlYlZpZXdJbXBsLT5wYWdlU2NhbGVGYWN0b3IoKTsKIH0KIAot
VEVTVF9GKFdlYkZyYW1lVGVzdCwgRGl2QXV0b1pvb21NdWx0aXBsZURpdnNUZXN0V2ViS2l0U2Nh
bGluZykKLXsKLSAgICByZWdpc3Rlck1vY2tlZEh0dHBVUkxMb2FkKCJnZXRfbXVsdGlwbGVfZGl2
c19mb3JfYXV0b196b29tX3Rlc3QuaHRtbCIpOwotCi0gICAgaW50IHZpZXdwb3J0V2lkdGggPSA2
NDA7Ci0gICAgaW50IHZpZXdwb3J0SGVpZ2h0ID0gNDgwOwotICAgIGZsb2F0IGRvdWJsZVRhcFpv
b21BbHJlYWR5TGVnaWJsZVJhdGlvID0gMS4yZjsKLSAgICBXZWJLaXQ6OldlYlZpZXcqIHdlYlZp
ZXcgPSBGcmFtZVRlc3RIZWxwZXJzOjpjcmVhdGVXZWJWaWV3QW5kTG9hZChtX2Jhc2VVUkwgKyAi
Z2V0X211bHRpcGxlX2RpdnNfZm9yX2F1dG9fem9vbV90ZXN0Lmh0bWwiKTsKLSAgICB3ZWJWaWV3
LT5zZXR0aW5ncygpLT5zZXRBcHBseURldmljZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKGZhbHNl
KTsKLSAgICB3ZWJWaWV3LT5zZXR0aW5ncygpLT5zZXRBcHBseVBhZ2VTY2FsZUZhY3RvckluQ29t
cG9zaXRvcihmYWxzZSk7Ci0gICAgd2ViVmlldy0+ZW5hYmxlRml4ZWRMYXlvdXRNb2RlKHRydWUp
OwotICAgIHdlYlZpZXctPnJlc2l6ZShXZWJTaXplKHZpZXdwb3J0V2lkdGgsIHZpZXdwb3J0SGVp
Z2h0KSk7Ci0gICAgd2ViVmlldy0+c2V0UGFnZVNjYWxlRmFjdG9yTGltaXRzKDEsIDQpOwotICAg
IHdlYlZpZXctPmxheW91dCgpOwotICAgIHdlYlZpZXctPnNldERldmljZVNjYWxlRmFjdG9yKDEu
NWYpOwotCi0gICAgV2ViVmlld0ltcGwqIHdlYlZpZXdJbXBsID0gc3RhdGljX2Nhc3Q8V2ViVmll
d0ltcGwqPih3ZWJWaWV3KTsKLSAgICB3ZWJWaWV3SW1wbC0+c2hvdWxkVXNlQW5pbWF0ZURvdWJs
ZVRhcFRpbWVaZXJvRm9yVGVzdGluZyh0cnVlKTsKLQotICAgIFdlYlJlY3QgdG9wRGl2KDIwMCwg
MTAwLCAyMDAsIDE1MCk7Ci0gICAgV2ViUmVjdCBib3R0b21EaXYoMjAwLCAzMDAsIDIwMCwgMTUw
KTsKLSAgICBXZWJQb2ludCB0b3BQb2ludCh0b3BEaXYueCArIDUwLCB0b3BEaXYueSArIDUwKTsK
LSAgICBXZWJQb2ludCBib3R0b21Qb2ludChib3R0b21EaXYueCArIDUwLCBib3R0b21EaXYueSAr
IDUwKTsKLSAgICBmbG9hdCBzY2FsZTsKLSAgICBzZXRTY2FsZUFuZFNjcm9sbEFuZExheW91dCh3
ZWJWaWV3SW1wbCwgV2ViUG9pbnQoMCwgMCksICh3ZWJWaWV3SW1wbC0+bWluaW11bVBhZ2VTY2Fs
ZUZhY3RvcigpKSAqICgxICsgZG91YmxlVGFwWm9vbUFscmVhZHlMZWdpYmxlUmF0aW8pIC8gMik7
Ci0KLSAgICAvLyBUZXN0IGRvdWJsZSB0YXAgb24gdHdvIGRpZmZlcmVudCBkaXZzCi0gICAgLy8g
QWZ0ZXIgZmlyc3Qgem9vbSwgd2Ugc2hvdWxkIGdvIGJhY2sgdG8gbWluaW11bSBwYWdlIHNjYWxl
IHdpdGggYSBzZWNvbmQgZG91YmxlIHRhcC4KLSAgICBzaW11bGF0ZURvdWJsZVRhcCh3ZWJWaWV3
SW1wbCwgdG9wUG9pbnQsIHNjYWxlKTsKLSAgICBFWFBFQ1RfRkxPQVRfRVEod2ViVmlld0ltcGwt
PmRldmljZVNjYWxlRmFjdG9yKCksIHNjYWxlKTsKLSAgICBzaW11bGF0ZURvdWJsZVRhcCh3ZWJW
aWV3SW1wbCwgYm90dG9tUG9pbnQsIHNjYWxlKTsKLSAgICBFWFBFQ1RfRkxPQVRfRVEod2ViVmll
d0ltcGwtPm1pbmltdW1QYWdlU2NhbGVGYWN0b3IoKSwgc2NhbGUpOwotCi0gICAgLy8gSWYgdGhl
IHVzZXIgcGluY2ggem9vbXMgYWZ0ZXIgZG91YmxlIHRhcCwgYSBzZWNvbmQgZG91YmxlIHRhcCBz
aG91bGQgem9vbSBiYWNrIHRvIHRoZSBkaXYuCi0gICAgc2ltdWxhdGVEb3VibGVUYXAod2ViVmll
d0ltcGwsIHRvcFBvaW50LCBzY2FsZSk7Ci0gICAgRVhQRUNUX0ZMT0FUX0VRKHdlYlZpZXdJbXBs
LT5kZXZpY2VTY2FsZUZhY3RvcigpLCBzY2FsZSk7Ci0gICAgd2ViVmlld0ltcGwtPmFwcGx5U2Ny
b2xsQW5kU2NhbGUoV2ViU2l6ZSgpLCAwLjZmKTsKLSAgICBzaW11bGF0ZURvdWJsZVRhcCh3ZWJW
aWV3SW1wbCwgYm90dG9tUG9pbnQsIHNjYWxlKTsKLSAgICBFWFBFQ1RfRkxPQVRfRVEod2ViVmll
dy0+ZGV2aWNlU2NhbGVGYWN0b3IoKSwgc2NhbGUpOwotfQotCiBURVNUX0YoV2ViRnJhbWVUZXN0
LCBEaXZBdXRvWm9vbU11bHRpcGxlRGl2c1Rlc3RDb21wb3NpdG9yU2NhbGluZykKIHsKICAgICBy
ZWdpc3Rlck1vY2tlZEh0dHBVUkxMb2FkKCJnZXRfbXVsdGlwbGVfZGl2c19mb3JfYXV0b196b29t
X3Rlc3QuaHRtbCIpOwpAQCAtNjUzLDY1ICs1ODUsNiBAQCBURVNUX0YoV2ViRnJhbWVUZXN0LCBE
aXZBdXRvWm9vbU11bHRpcGxlRGl2c1Rlc3RDb21wb3NpdG9yU2NhbGluZykKICAgICBFWFBFQ1Rf
RkxPQVRfRVEoMSwgc2NhbGUpOwogfQogCi1URVNUX0YoV2ViRnJhbWVUZXN0LCBEaXZBdXRvWm9v
bVNjYWxlQm91bmRzVGVzdFdlYktpdFNjYWxpbmcpCi17Ci0gICAgcmVnaXN0ZXJNb2NrZWRIdHRw
VVJMTG9hZCgiZ2V0X3NjYWxlX2JvdW5kc19jaGVja19mb3JfYXV0b196b29tX3Rlc3QuaHRtbCIp
OwotCi0gICAgaW50IHZpZXdwb3J0V2lkdGggPSA2NDA7Ci0gICAgaW50IHZpZXdwb3J0SGVpZ2h0
ID0gNDgwOwotICAgIGZsb2F0IGRvdWJsZVRhcFpvb21BbHJlYWR5TGVnaWJsZVJhdGlvID0gMS4y
ZjsKLSAgICBXZWJLaXQ6OldlYlZpZXcqIHdlYlZpZXcgPSBGcmFtZVRlc3RIZWxwZXJzOjpjcmVh
dGVXZWJWaWV3QW5kTG9hZChtX2Jhc2VVUkwgKyAiZ2V0X3NjYWxlX2JvdW5kc19jaGVja19mb3Jf
YXV0b196b29tX3Rlc3QuaHRtbCIpOwotICAgIHdlYlZpZXctPnNldHRpbmdzKCktPnNldEFwcGx5
RGV2aWNlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoZmFsc2UpOwotICAgIHdlYlZpZXctPnNldHRp
bmdzKCktPnNldEFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKGZhbHNlKTsKLSAgICB3
ZWJWaWV3LT5lbmFibGVGaXhlZExheW91dE1vZGUodHJ1ZSk7Ci0gICAgd2ViVmlldy0+cmVzaXpl
KFdlYlNpemUodmlld3BvcnRXaWR0aCwgdmlld3BvcnRIZWlnaHQpKTsKLSAgICB3ZWJWaWV3LT5z
ZXRQYWdlU2NhbGVGYWN0b3JMaW1pdHMoMSwgNCk7Ci0gICAgd2ViVmlldy0+bGF5b3V0KCk7Ci0K
LSAgICBXZWJWaWV3SW1wbCogd2ViVmlld0ltcGwgPSBzdGF0aWNfY2FzdDxXZWJWaWV3SW1wbCo+
KHdlYlZpZXcpOwotICAgIHdlYlZpZXdJbXBsLT5zaG91bGRVc2VBbmltYXRlRG91YmxlVGFwVGlt
ZVplcm9Gb3JUZXN0aW5nKHRydWUpOwotICAgIGZsb2F0IGRvdWJsZVRhcFpvb21BbHJlYWR5TGVn
aWJsZVNjYWxlID0gd2ViVmlld0ltcGwtPm1pbmltdW1QYWdlU2NhbGVGYWN0b3IoKSAqIGRvdWJs
ZVRhcFpvb21BbHJlYWR5TGVnaWJsZVJhdGlvOwotCi0gICAgV2ViUmVjdCBkaXYoMjAwLCAxMDAs
IDIwMCwgMTUwKTsKLSAgICBXZWJQb2ludCBkb3VibGVUYXBQb2ludChkaXYueCArIDUwLCBkaXYu
eSArIDUwKTsKLSAgICBmbG9hdCBzY2FsZTsKLQotICAgIC8vIFRlc3QgZG91YmxlIHRhcCBzY2Fs
ZSBib3VuZHMuCi0gICAgLy8gbWluaW11bVBhZ2VTY2FsZSA8IGRvdWJsZVRhcFpvb21BbHJlYWR5
TGVnaWJsZVNjYWxlIDwgZGV2aWNlRHBpU2NhbGUKLSAgICB3ZWJWaWV3SW1wbC0+c2V0RGV2aWNl
U2NhbGVGYWN0b3IoMS41Zik7Ci0gICAgc2V0U2NhbGVBbmRTY3JvbGxBbmRMYXlvdXQod2ViVmll
d0ltcGwsIFdlYlBvaW50KDAsIDApLCAod2ViVmlld0ltcGwtPm1pbmltdW1QYWdlU2NhbGVGYWN0
b3IoKSkgKiAoMSArIGRvdWJsZVRhcFpvb21BbHJlYWR5TGVnaWJsZVJhdGlvKSAvIDIpOwotICAg
IHNpbXVsYXRlRG91YmxlVGFwKHdlYlZpZXdJbXBsLCBkb3VibGVUYXBQb2ludCwgc2NhbGUpOwot
ICAgIEVYUEVDVF9GTE9BVF9FUSh3ZWJWaWV3SW1wbC0+ZGV2aWNlU2NhbGVGYWN0b3IoKSwgc2Nh
bGUpOwotICAgIHNpbXVsYXRlRG91YmxlVGFwKHdlYlZpZXdJbXBsLCBkb3VibGVUYXBQb2ludCwg
c2NhbGUpOwotICAgIEVYUEVDVF9GTE9BVF9FUSh3ZWJWaWV3SW1wbC0+bWluaW11bVBhZ2VTY2Fs
ZUZhY3RvcigpLCBzY2FsZSk7Ci0gICAgc2ltdWxhdGVEb3VibGVUYXAod2ViVmlld0ltcGwsIGRv
dWJsZVRhcFBvaW50LCBzY2FsZSk7Ci0gICAgRVhQRUNUX0ZMT0FUX0VRKHdlYlZpZXdJbXBsLT5k
ZXZpY2VTY2FsZUZhY3RvcigpLCBzY2FsZSk7Ci0KLSAgICAvLyBab29tIGluIHRvIHJlc2V0IGRv
dWJsZV90YXBfem9vbV9pbl9lZmZlY3QgZmxhZy4KLSAgICB3ZWJWaWV3SW1wbC0+YXBwbHlTY3Jv
bGxBbmRTY2FsZShXZWJTaXplKCksIDEuMWYpOwotICAgIC8vIGRldmljZURwaVNjYWxlIDwgbWlu
aW11bVBhZ2VTY2FsZSA8IGRvdWJsZVRhcFpvb21BbHJlYWR5TGVnaWJsZVNjYWxlCi0gICAgd2Vi
Vmlld0ltcGwtPnNldERldmljZVNjYWxlRmFjdG9yKDAuNWYpOwotICAgIHNldFNjYWxlQW5kU2Ny
b2xsQW5kTGF5b3V0KHdlYlZpZXdJbXBsLCBXZWJQb2ludCgwLCAwKSwgKHdlYlZpZXdJbXBsLT5t
aW5pbXVtUGFnZVNjYWxlRmFjdG9yKCkpICogKDEgKyBkb3VibGVUYXBab29tQWxyZWFkeUxlZ2li
bGVSYXRpbykgLyAyKTsKLSAgICBzaW11bGF0ZURvdWJsZVRhcCh3ZWJWaWV3SW1wbCwgZG91Ymxl
VGFwUG9pbnQsIHNjYWxlKTsKLSAgICBFWFBFQ1RfRkxPQVRfRVEod2ViVmlld0ltcGwtPm1pbmlt
dW1QYWdlU2NhbGVGYWN0b3IoKSwgc2NhbGUpOwotICAgIHNpbXVsYXRlRG91YmxlVGFwKHdlYlZp
ZXdJbXBsLCBkb3VibGVUYXBQb2ludCwgc2NhbGUpOwotICAgIEVYUEVDVF9GTE9BVF9FUShkb3Vi
bGVUYXBab29tQWxyZWFkeUxlZ2libGVTY2FsZSwgc2NhbGUpOwotICAgIHNpbXVsYXRlRG91Ymxl
VGFwKHdlYlZpZXdJbXBsLCBkb3VibGVUYXBQb2ludCwgc2NhbGUpOwotICAgIEVYUEVDVF9GTE9B
VF9FUSh3ZWJWaWV3SW1wbC0+bWluaW11bVBhZ2VTY2FsZUZhY3RvcigpLCBzY2FsZSk7Ci0KLSAg
ICAvLyBab29tIGluIHRvIHJlc2V0IGRvdWJsZV90YXBfem9vbV9pbl9lZmZlY3QgZmxhZy4KLSAg
ICB3ZWJWaWV3SW1wbC0+YXBwbHlTY3JvbGxBbmRTY2FsZShXZWJTaXplKCksIDEuMWYpOwotICAg
IC8vIG1pbmltdW1QYWdlU2NhbGUgPCBkZXZpY2VEcGlTY2FsZSA8IGRvdWJsZVRhcFpvb21BbHJl
YWR5TGVnaWJsZVNjYWxlCi0gICAgd2ViVmlld0ltcGwtPnNldERldmljZVNjYWxlRmFjdG9yKDEu
MWYpOwotICAgIHNldFNjYWxlQW5kU2Nyb2xsQW5kTGF5b3V0KHdlYlZpZXdJbXBsLCBXZWJQb2lu
dCgwLCAwKSwgKHdlYlZpZXdJbXBsLT5taW5pbXVtUGFnZVNjYWxlRmFjdG9yKCkpICogKDEgKyBk
b3VibGVUYXBab29tQWxyZWFkeUxlZ2libGVSYXRpbykgLyAyKTsKLSAgICBzaW11bGF0ZURvdWJs
ZVRhcCh3ZWJWaWV3SW1wbCwgZG91YmxlVGFwUG9pbnQsIHNjYWxlKTsKLSAgICBFWFBFQ1RfRkxP
QVRfRVEod2ViVmlld0ltcGwtPm1pbmltdW1QYWdlU2NhbGVGYWN0b3IoKSwgc2NhbGUpOwotICAg
IHNpbXVsYXRlRG91YmxlVGFwKHdlYlZpZXdJbXBsLCBkb3VibGVUYXBQb2ludCwgc2NhbGUpOwot
ICAgIEVYUEVDVF9GTE9BVF9FUShkb3VibGVUYXBab29tQWxyZWFkeUxlZ2libGVTY2FsZSwgc2Nh
bGUpOwotICAgIHNpbXVsYXRlRG91YmxlVGFwKHdlYlZpZXdJbXBsLCBkb3VibGVUYXBQb2ludCwg
c2NhbGUpOwotICAgIEVYUEVDVF9GTE9BVF9FUSh3ZWJWaWV3SW1wbC0+bWluaW11bVBhZ2VTY2Fs
ZUZhY3RvcigpLCBzY2FsZSk7Ci19Ci0KIFRFU1RfRihXZWJGcmFtZVRlc3QsIERpdkF1dG9ab29t
U2NhbGVCb3VuZHNUZXN0Q29tcG9zaXRvclNjYWxpbmcpCiB7CiAgICAgcmVnaXN0ZXJNb2NrZWRI
dHRwVVJMTG9hZCgiZ2V0X3NjYWxlX2JvdW5kc19jaGVja19mb3JfYXV0b196b29tX3Rlc3QuaHRt
bCIpOwpAQCAtNzc0LDgzICs2NDcsNiBAQCBURVNUX0YoV2ViRnJhbWVUZXN0LCBEaXZBdXRvWm9v
bVNjYWxlQm91bmRzVGVzdENvbXBvc2l0b3JTY2FsaW5nKQogfQogCiAjaWYgRU5BQkxFKFRFWFRf
QVVUT1NJWklORykKLVRFU1RfRihXZWJGcmFtZVRlc3QsIERpdkF1dG9ab29tU2NhbGVGb250U2Nh
bGVGYWN0b3JUZXN0V2ViS2l0U2NhbGluZykKLXsKLSAgICByZWdpc3Rlck1vY2tlZEh0dHBVUkxM
b2FkKCJnZXRfc2NhbGVfYm91bmRzX2NoZWNrX2Zvcl9hdXRvX3pvb21fdGVzdC5odG1sIik7Ci0K
LSAgICBpbnQgdmlld3BvcnRXaWR0aCA9IDY0MDsKLSAgICBpbnQgdmlld3BvcnRIZWlnaHQgPSA0
ODA7Ci0gICAgZmxvYXQgZG91YmxlVGFwWm9vbUFscmVhZHlMZWdpYmxlUmF0aW8gPSAxLjJmOwot
ICAgIGZsb2F0IHRleHRBdXRvc2l6aW5nRm9udFNjYWxlRmFjdG9yID0gMS4xM2Y7Ci0gICAgV2Vi
S2l0OjpXZWJWaWV3KiB3ZWJWaWV3ID0gRnJhbWVUZXN0SGVscGVyczo6Y3JlYXRlV2ViVmlld0Fu
ZExvYWQobV9iYXNlVVJMICsgImdldF9zY2FsZV9ib3VuZHNfY2hlY2tfZm9yX2F1dG9fem9vbV90
ZXN0Lmh0bWwiKTsKLSAgICB3ZWJWaWV3LT5zZXR0aW5ncygpLT5zZXRBcHBseURldmljZVNjYWxl
RmFjdG9ySW5Db21wb3NpdG9yKGZhbHNlKTsKLSAgICB3ZWJWaWV3LT5zZXR0aW5ncygpLT5zZXRB
cHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcihmYWxzZSk7Ci0gICAgd2ViVmlldy0+ZW5h
YmxlRml4ZWRMYXlvdXRNb2RlKHRydWUpOwotICAgIHdlYlZpZXctPnJlc2l6ZShXZWJTaXplKHZp
ZXdwb3J0V2lkdGgsIHZpZXdwb3J0SGVpZ2h0KSk7Ci0gICAgd2ViVmlldy0+c2V0UGFnZVNjYWxl
RmFjdG9yTGltaXRzKDEsIDQpOwotICAgIHdlYlZpZXctPmxheW91dCgpOwotCi0gICAgV2ViVmll
d0ltcGwqIHdlYlZpZXdJbXBsID0gc3RhdGljX2Nhc3Q8V2ViVmlld0ltcGwqPih3ZWJWaWV3KTsK
LSAgICB3ZWJWaWV3SW1wbC0+c2hvdWxkVXNlQW5pbWF0ZURvdWJsZVRhcFRpbWVaZXJvRm9yVGVz
dGluZyh0cnVlKTsKLSAgICB3ZWJWaWV3SW1wbC0+cGFnZSgpLT5zZXR0aW5ncygpLT5zZXRUZXh0
QXV0b3NpemluZ0ZvbnRTY2FsZUZhY3Rvcih0ZXh0QXV0b3NpemluZ0ZvbnRTY2FsZUZhY3Rvcik7
Ci0gICAgZmxvYXQgZG91YmxlVGFwWm9vbUFscmVhZHlMZWdpYmxlU2NhbGUgPSB3ZWJWaWV3SW1w
bC0+bWluaW11bVBhZ2VTY2FsZUZhY3RvcigpICogZG91YmxlVGFwWm9vbUFscmVhZHlMZWdpYmxl
UmF0aW87Ci0KLSAgICBXZWJSZWN0IGRpdigyMDAsIDEwMCwgMjAwLCAxNTApOwotICAgIFdlYlBv
aW50IGRvdWJsZVRhcFBvaW50KGRpdi54ICsgNTAsIGRpdi55ICsgNTApOwotICAgIGZsb2F0IHNj
YWxlOwotCi0gICAgLy8gVGVzdCBkb3VibGUgdGFwIHNjYWxlIGJvdW5kcy4KLSAgICAvLyBtaW5p
bXVtUGFnZVNjYWxlIDwgZG91YmxlVGFwWm9vbUFscmVhZHlMZWdpYmxlU2NhbGUgPCBkZXZpY2VE
cGlTY2FsZSA8IGRldmljZURwaVNjYWxlICogdGV4dEF1dG9zaXppbmdGb250U2NhbGVGYWN0b3IK
LSAgICB3ZWJWaWV3SW1wbC0+c2V0RGV2aWNlU2NhbGVGYWN0b3IoMS41Zik7Ci0gICAgZmxvYXQg
bGVnaWJsZVNjYWxlID0gd2ViVmlld0ltcGwtPmRldmljZVNjYWxlRmFjdG9yKCkgKiB0ZXh0QXV0
b3NpemluZ0ZvbnRTY2FsZUZhY3RvcjsKLSAgICBzZXRTY2FsZUFuZFNjcm9sbEFuZExheW91dCh3
ZWJWaWV3SW1wbCwgV2ViUG9pbnQoMCwgMCksICh3ZWJWaWV3SW1wbC0+bWluaW11bVBhZ2VTY2Fs
ZUZhY3RvcigpKSAqICgxICsgZG91YmxlVGFwWm9vbUFscmVhZHlMZWdpYmxlUmF0aW8pIC8gMik7
Ci0gICAgc2ltdWxhdGVEb3VibGVUYXAod2ViVmlld0ltcGwsIGRvdWJsZVRhcFBvaW50LCBzY2Fs
ZSk7Ci0gICAgRVhQRUNUX0ZMT0FUX0VRKGxlZ2libGVTY2FsZSwgc2NhbGUpOwotICAgIHNpbXVs
YXRlRG91YmxlVGFwKHdlYlZpZXdJbXBsLCBkb3VibGVUYXBQb2ludCwgc2NhbGUpOwotICAgIEVY
UEVDVF9GTE9BVF9FUSh3ZWJWaWV3SW1wbC0+bWluaW11bVBhZ2VTY2FsZUZhY3RvcigpLCBzY2Fs
ZSk7Ci0gICAgc2ltdWxhdGVEb3VibGVUYXAod2ViVmlld0ltcGwsIGRvdWJsZVRhcFBvaW50LCBz
Y2FsZSk7Ci0gICAgRVhQRUNUX0ZMT0FUX0VRKGxlZ2libGVTY2FsZSwgc2NhbGUpOwotCi0gICAg
Ly8gWm9vbSBpbiB0byByZXNldCBkb3VibGVfdGFwX3pvb21faW5fZWZmZWN0IGZsYWcuCi0gICAg
d2ViVmlld0ltcGwtPmFwcGx5U2Nyb2xsQW5kU2NhbGUoV2ViU2l6ZSgpLCAxLjFmKTsKLSAgICAv
LyBkZXZpY2VEcGlTY2FsZSA8IGRldmljZURwaVNjYWxlICogdGV4dEF1dG9zaXppbmdGb250U2Nh
bGVGYWN0b3IgPCBtaW5pbXVtUGFnZVNjYWxlIDwgZG91YmxlVGFwWm9vbUFscmVhZHlMZWdpYmxl
U2NhbGUKLSAgICB3ZWJWaWV3SW1wbC0+c2V0RGV2aWNlU2NhbGVGYWN0b3IoMC41Zik7Ci0gICAg
bGVnaWJsZVNjYWxlID0gd2ViVmlld0ltcGwtPmRldmljZVNjYWxlRmFjdG9yKCkgKiB0ZXh0QXV0
b3NpemluZ0ZvbnRTY2FsZUZhY3RvcjsKLSAgICBzZXRTY2FsZUFuZFNjcm9sbEFuZExheW91dCh3
ZWJWaWV3SW1wbCwgV2ViUG9pbnQoMCwgMCksICh3ZWJWaWV3SW1wbC0+bWluaW11bVBhZ2VTY2Fs
ZUZhY3RvcigpKSAqICgxICsgZG91YmxlVGFwWm9vbUFscmVhZHlMZWdpYmxlUmF0aW8pIC8gMik7
Ci0gICAgc2ltdWxhdGVEb3VibGVUYXAod2ViVmlld0ltcGwsIGRvdWJsZVRhcFBvaW50LCBzY2Fs
ZSk7Ci0gICAgRVhQRUNUX0ZMT0FUX0VRKHdlYlZpZXdJbXBsLT5taW5pbXVtUGFnZVNjYWxlRmFj
dG9yKCksIHNjYWxlKTsKLSAgICBzaW11bGF0ZURvdWJsZVRhcCh3ZWJWaWV3SW1wbCwgZG91Ymxl
VGFwUG9pbnQsIHNjYWxlKTsKLSAgICBFWFBFQ1RfRkxPQVRfRVEoZG91YmxlVGFwWm9vbUFscmVh
ZHlMZWdpYmxlU2NhbGUsIHNjYWxlKTsKLSAgICBzaW11bGF0ZURvdWJsZVRhcCh3ZWJWaWV3SW1w
bCwgZG91YmxlVGFwUG9pbnQsIHNjYWxlKTsKLSAgICBFWFBFQ1RfRkxPQVRfRVEod2ViVmlld0lt
cGwtPm1pbmltdW1QYWdlU2NhbGVGYWN0b3IoKSwgc2NhbGUpOwotCi0gICAgLy8gWm9vbSBpbiB0
byByZXNldCBkb3VibGVfdGFwX3pvb21faW5fZWZmZWN0IGZsYWcuCi0gICAgd2ViVmlld0ltcGwt
PmFwcGx5U2Nyb2xsQW5kU2NhbGUoV2ViU2l6ZSgpLCAxLjFmKTsKLSAgICAvLyBtaW5pbXVtUGFn
ZVNjYWxlIDwgZGV2aWNlRHBpU2NhbGUgPCBkZXZpY2VEcGlTY2FsZSAqIHRleHRBdXRvc2l6aW5n
Rm9udFNjYWxlRmFjdG9yIDwgZG91YmxlVGFwWm9vbUFscmVhZHlMZWdpYmxlU2NhbGUKLSAgICB3
ZWJWaWV3SW1wbC0+c2V0RGV2aWNlU2NhbGVGYWN0b3IoMS4wNWYpOwotICAgIGxlZ2libGVTY2Fs
ZSA9IHdlYlZpZXdJbXBsLT5kZXZpY2VTY2FsZUZhY3RvcigpICogdGV4dEF1dG9zaXppbmdGb250
U2NhbGVGYWN0b3I7Ci0gICAgc2V0U2NhbGVBbmRTY3JvbGxBbmRMYXlvdXQod2ViVmlld0ltcGws
IFdlYlBvaW50KDAsIDApLCAod2ViVmlld0ltcGwtPm1pbmltdW1QYWdlU2NhbGVGYWN0b3IoKSkg
KiAoMSArIGRvdWJsZVRhcFpvb21BbHJlYWR5TGVnaWJsZVJhdGlvKSAvIDIpOwotICAgIHNpbXVs
YXRlRG91YmxlVGFwKHdlYlZpZXdJbXBsLCBkb3VibGVUYXBQb2ludCwgc2NhbGUpOwotICAgIEVY
UEVDVF9GTE9BVF9FUSh3ZWJWaWV3SW1wbC0+bWluaW11bVBhZ2VTY2FsZUZhY3RvcigpLCBzY2Fs
ZSk7Ci0gICAgc2ltdWxhdGVEb3VibGVUYXAod2ViVmlld0ltcGwsIGRvdWJsZVRhcFBvaW50LCBz
Y2FsZSk7Ci0gICAgRVhQRUNUX0ZMT0FUX0VRKGRvdWJsZVRhcFpvb21BbHJlYWR5TGVnaWJsZVNj
YWxlLCBzY2FsZSk7Ci0gICAgc2ltdWxhdGVEb3VibGVUYXAod2ViVmlld0ltcGwsIGRvdWJsZVRh
cFBvaW50LCBzY2FsZSk7Ci0gICAgRVhQRUNUX0ZMT0FUX0VRKHdlYlZpZXdJbXBsLT5taW5pbXVt
UGFnZVNjYWxlRmFjdG9yKCksIHNjYWxlKTsKLQotICAgIC8vIFpvb20gaW4gdG8gcmVzZXQgZG91
YmxlX3RhcF96b29tX2luX2VmZmVjdCBmbGFnLgotICAgIHdlYlZpZXdJbXBsLT5hcHBseVNjcm9s
bEFuZFNjYWxlKFdlYlNpemUoKSwgMS4xZik7Ci0gICAgLy8gbWluaW11bVBhZ2VTY2FsZSA8IGRl
dmljZURwaVNjYWxlIDwgZG91YmxlVGFwWm9vbUFscmVhZHlMZWdpYmxlU2NhbGUgPCBkZXZpY2VE
cGlTY2FsZSAqIHRleHRBdXRvc2l6aW5nRm9udFNjYWxlRmFjdG9yCi0gICAgd2ViVmlld0ltcGwt
PnNldERldmljZVNjYWxlRmFjdG9yKDEuMWYpOwotICAgIGxlZ2libGVTY2FsZSA9IHdlYlZpZXdJ
bXBsLT5kZXZpY2VTY2FsZUZhY3RvcigpICogdGV4dEF1dG9zaXppbmdGb250U2NhbGVGYWN0b3I7
Ci0gICAgc2V0U2NhbGVBbmRTY3JvbGxBbmRMYXlvdXQod2ViVmlld0ltcGwsIFdlYlBvaW50KDAs
IDApLCAod2ViVmlld0ltcGwtPm1pbmltdW1QYWdlU2NhbGVGYWN0b3IoKSkgKiAoMSArIGRvdWJs
ZVRhcFpvb21BbHJlYWR5TGVnaWJsZVJhdGlvKSAvIDIpOwotICAgIHNpbXVsYXRlRG91YmxlVGFw
KHdlYlZpZXdJbXBsLCBkb3VibGVUYXBQb2ludCwgc2NhbGUpOwotICAgIEVYUEVDVF9GTE9BVF9F
UShsZWdpYmxlU2NhbGUsIHNjYWxlKTsKLSAgICBzaW11bGF0ZURvdWJsZVRhcCh3ZWJWaWV3SW1w
bCwgZG91YmxlVGFwUG9pbnQsIHNjYWxlKTsKLSAgICBFWFBFQ1RfRkxPQVRfRVEod2ViVmlld0lt
cGwtPm1pbmltdW1QYWdlU2NhbGVGYWN0b3IoKSwgc2NhbGUpOwotICAgIHNpbXVsYXRlRG91Ymxl
VGFwKHdlYlZpZXdJbXBsLCBkb3VibGVUYXBQb2ludCwgc2NhbGUpOwotICAgIEVYUEVDVF9GTE9B
VF9FUShsZWdpYmxlU2NhbGUsIHNjYWxlKTsKLX0KLQogVEVTVF9GKFdlYkZyYW1lVGVzdCwgRGl2
QXV0b1pvb21TY2FsZUZvbnRTY2FsZUZhY3RvclRlc3RDb21wb3NpdG9yU2NhbGluZykKIHsKICAg
ICByZWdpc3Rlck1vY2tlZEh0dHBVUkxMb2FkKCJnZXRfc2NhbGVfYm91bmRzX2NoZWNrX2Zvcl9h
dXRvX3pvb21fdGVzdC5odG1sIik7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>185728</attachid>
            <date>2013-01-31 02:48:20 -0800</date>
            <delta_ts>2013-01-31 10:37:16 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-107922-20130131024504.patch</filename>
            <type>text/plain</type>
            <size>20941</size>
            <attacher name="Alexandre Elias">aelias</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxMTYwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODNjZGNhNDg0NDI3MjFl
MzAxNTVlMmM3NjgyZjczZTZiODcwZWJhMi4uMDdlMDE3MTIxMGM2MDIzZDk3MzI4ZGQxNDMzZGYx
M2I0ZWZiODMzYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDEzLTAxLTMxICBBbGV4
YW5kcmUgRWxpYXMgIDxhZWxpYXNAY2hyb21pdW0ub3JnPgorCisgICAgICAgIENhbGwgRnJhbWVW
aWV3Ojpjb250ZW50c1Jlc2l6ZWQoKSB3aGVuIHNldHRpbmcgZml4ZWQgbGF5b3V0IHNpemUKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNzkyMgorCisg
ICAgICAgIFJldmlld2VkIGJ5IEphbWVzIFJvYmluc29uLgorCisgICAgICAgIEluIGZpeGVkIGxh
eW91dCBtb2RlLCB3ZSBzaG91bGQgYmUgY2FsbGluZyBjb250ZW50c1Jlc2l6ZWQoKSB3aGVuIHRo
ZQorICAgICAgICBmaXhlZCBsYXlvdXQgc2l6ZSBpcyBjaGFuZ2VkLCBidXQgbm90IGxheWluZyBv
dXQgd2hlbiB0aGUgdmlzaWJsZQorICAgICAgICBjb250ZW50IHJlY3QgY2hhbmdlcy4KKworICAg
ICAgICBQcmV2aW91c2x5IGxhbmRlZCBhcyByMTQwODY5IGJ1dCB3YXMgcmV2ZXJ0ZWQgZHVlIHRv
IGEgYnVnIGluIGJ1bmRsZWQKKyAgICAgICAgQ2hyb21pdW0tc3BlY2lmaWMgY29kZS4gVGhpcyBw
YXRjaCBpbmNsdWRlcyBqdXN0IHRoZSBtaW5pbXVtIG5lZWRlZCBpbgorICAgICAgICBXZWJDb3Jl
LgorCisgICAgICAgIE5ldyBXZWJGcmFtZVRlc3Q6IEZyYW1lVmlld05lZWRzTGF5b3V0T25GaXhl
ZExheW91dFJlc2l6ZS4gIFNvbWUKKyAgICAgICAgZmxha3kgYW5kIG9ic29sZXRlIHRlc3RzIGZv
ciB0aGUgb2xkIHBhZ2Ugc2NhbGUgbW9kZSBhcmUgYWxzbyBkZWxldGVkLgorCisgICAgICAgICog
cGFnZS9GcmFtZVZpZXcuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVWaWV3Ojp2aXNpYmxl
Q29udGVudHNSZXNpemVkKToKKyAgICAgICAgKiBwbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlNjcm9sbFZpZXc6OnNldEZpeGVkTGF5b3V0U2l6ZSk6CisgICAgICAg
IChXZWJDb3JlOjpTY3JvbGxWaWV3OjpzZXRVc2VGaXhlZExheW91dCk6CisKIDIwMTMtMDEtMjkg
IEp1c3RpbiBOb3Zvc2FkICA8anVub3ZAZ29vZ2xlLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9O
IChyMTM1NjI4LTEzNTYzMik6IERvdWJsZSBib3ggc2hhZG93IGZhaWx1cmUgdG8gcmVuZGVyCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IDNjNDllOTE0NTU0ZDA3NWZhOTNkYmY5NTRlOGM0
ODA3ZTdhYThjYzMuLjNhOTE5MzE5ZGUzNWEzZWIwYzg1MTU1NGQwYTdiZWQ2M2UwN2JmMGMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTMtMDEtMzEgIEFs
ZXhhbmRyZSBFbGlhcyAgPGFlbGlhc0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgQ2FsbCBGcmFt
ZVZpZXc6OmNvbnRlbnRzUmVzaXplZCgpIHdoZW4gc2V0dGluZyBmaXhlZCBsYXlvdXQgc2l6ZQor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA3OTIyCisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgSmFtZXMgUm9iaW5zb24uCisKKyAgICAgICAgSW4gZml4ZWQg
bGF5b3V0IG1vZGUsIHdlIHNob3VsZCBiZSBjYWxsaW5nIGNvbnRlbnRzUmVzaXplZCgpIHdoZW4g
dGhlCisgICAgICAgIGZpeGVkIGxheW91dCBzaXplIGlzIGNoYW5nZWQsIGJ1dCBub3QgbGF5aW5n
IG91dCB3aGVuIHRoZSB2aXNpYmxlCisgICAgICAgIGNvbnRlbnQgcmVjdCBjaGFuZ2VzLgorCisg
ICAgICAgIFByZXZpb3VzbHkgbGFuZGVkIGFzIHIxNDA4NjkgYnV0IHdhcyByZXZlcnRlZCBkdWUg
dG8gYSBidWcgaW4gYnVuZGxlZAorICAgICAgICBDaHJvbWl1bS1zcGVjaWZpYyBjb2RlLiBUaGlz
IHBhdGNoIGluY2x1ZGVzIGp1c3QgdGhlIG1pbmltdW0gbmVlZGVkIGluCisgICAgICAgIFdlYkNv
cmUuCisKKyAgICAgICAgTmV3IFdlYkZyYW1lVGVzdDogRnJhbWVWaWV3TmVlZHNMYXlvdXRPbkZp
eGVkTGF5b3V0UmVzaXplLiAgU29tZQorICAgICAgICBmbGFreSBhbmQgb2Jzb2xldGUgdGVzdHMg
Zm9yIHRoZSBvbGQgcGFnZSBzY2FsZSBtb2RlIGFyZSBhbHNvIGRlbGV0ZWQuCisKKyAgICAgICAg
KiB0ZXN0cy9XZWJGcmFtZVRlc3QuY3BwOgorCiAyMDEzLTAxLTI5ICBYaWFuemh1IFdhbmcgIDx3
YW5neGlhbnpodUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgW0Nocm9taXVtXSBDb3JyZWN0IHpv
b20gZm9yIGZvY3VzZWQgbm9kZSB3aGVuIHVzaW5nIGNvbXBvc2l0b3Igc2NhbGluZwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9GcmFtZVZpZXcuY3BwCmluZGV4IGE1OGQ2YTA0NDU0MmM2NzI1OTYxNjJlOTNjM2Y4Yzhh
YTM5ZDc4M2IuLjg2NjNhMTM4ZTJiNmU0OTA2N2M5ZTMyM2FhYmQzYTg4MGE3MmU5NDggMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL0ZyYW1lVmlldy5jcHAKQEAgLTIwMjIsNyArMjAyMiw3IEBAIHZvaWQgRnJhbWVW
aWV3Ojp2aXNpYmxlQ29udGVudHNSZXNpemVkKCkKICAgICBpZiAoIWZyYW1lKCktPnZpZXcoKSkK
ICAgICAgICAgcmV0dXJuOwogCi0gICAgaWYgKG5lZWRzTGF5b3V0KCkpCisgICAgaWYgKCF1c2VG
aXhlZExheW91dCgpICYmIG5lZWRzTGF5b3V0KCkpCiAgICAgICAgIGxheW91dCgpOwogCiAjaWYg
VVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vU2Nyb2xsVmlldy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxW
aWV3LmNwcAppbmRleCAwNDcyNzkxMTcyMWZkZjk5N2QwY2FiMzI4MDY0ODkzMjQzM2NmMjZkLi40
ZWRhZGY2YjIyYmY5OGU5NmY0NGE2MjZjMWUyMDE0MTgxY2E4MjgyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9TY3JvbGxWaWV3LmNwcApAQCAtMjc4LDYgKzI3OCw4IEBAIHZvaWQgU2Nyb2xsVmll
dzo6c2V0Rml4ZWRMYXlvdXRTaXplKGNvbnN0IEludFNpemUmIG5ld1NpemUpCiAgICAgICAgIHJl
dHVybjsKICAgICBtX2ZpeGVkTGF5b3V0U2l6ZSA9IG5ld1NpemU7CiAgICAgdXBkYXRlU2Nyb2xs
YmFycyhzY3JvbGxPZmZzZXQoKSk7CisgICAgaWYgKG1fdXNlRml4ZWRMYXlvdXQpCisgICAgICAg
IGNvbnRlbnRzUmVzaXplZCgpOwogfQogCiBib29sIFNjcm9sbFZpZXc6OnVzZUZpeGVkTGF5b3V0
KCkgY29uc3QKQEAgLTI5MSw2ICsyOTMsNyBAQCB2b2lkIFNjcm9sbFZpZXc6OnNldFVzZUZpeGVk
TGF5b3V0KGJvb2wgZW5hYmxlKQogICAgICAgICByZXR1cm47CiAgICAgbV91c2VGaXhlZExheW91
dCA9IGVuYWJsZTsKICAgICB1cGRhdGVTY3JvbGxiYXJzKHNjcm9sbE9mZnNldCgpKTsKKyAgICBj
b250ZW50c1Jlc2l6ZWQoKTsKIH0KIAogSW50U2l6ZSBTY3JvbGxWaWV3Ojpjb250ZW50c1NpemUo
KSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9XZWJGcmFt
ZVRlc3QuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9XZWJGcmFtZVRlc3QuY3Bw
CmluZGV4IDA3NzM2NDkzOGNkM2NmZmFkZGMyZjVmZmE5MjU2MTIxMDYyZDM1MzYuLjQ3MGNlNzRh
NjZhYmYxZDY1MzRiNjE4MTA2MTJmYzE4ZTUyNDUwN2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vdGVzdHMvV2ViRnJhbWVUZXN0LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL3Rlc3RzL1dlYkZyYW1lVGVzdC5jcHAKQEAgLTIyNyw2ICsyMjcsMzQgQEAgY2xhc3Mg
Rml4ZWRMYXlvdXRUZXN0V2ViVmlld0NsaWVudCA6IHB1YmxpYyBXZWJWaWV3Q2xpZW50IHsKICAg
ICBXZWJTY3JlZW5JbmZvIG1fc2NyZWVuSW5mbzsKIH07CiAKK1RFU1RfRihXZWJGcmFtZVRlc3Qs
IEZyYW1lVmlld05lZWRzTGF5b3V0T25GaXhlZExheW91dFJlc2l6ZSkKK3sKKyAgICByZWdpc3Rl
ck1vY2tlZEh0dHBVUkxMb2FkKCJmaXhlZF9sYXlvdXQuaHRtbCIpOworCisgICAgRml4ZWRMYXlv
dXRUZXN0V2ViVmlld0NsaWVudCBjbGllbnQ7CisgICAgaW50IHZpZXdwb3J0V2lkdGggPSA2NDA7
CisgICAgaW50IHZpZXdwb3J0SGVpZ2h0ID0gNDgwOworCisgICAgLy8gTWFrZSBzdXJlIHdlIGlu
aXRpYWxpemUgdG8gbWluaW11bSBzY2FsZSwgZXZlbiBpZiB0aGUgd2luZG93IHNpemUKKyAgICAv
LyBvbmx5IGJlY29tZXMgYXZhaWxhYmxlIGFmdGVyIHRoZSBsb2FkIGJlZ2lucy4KKyAgICBXZWJW
aWV3SW1wbCogd2ViVmlld0ltcGwgPSBzdGF0aWNfY2FzdDxXZWJWaWV3SW1wbCo+KEZyYW1lVGVz
dEhlbHBlcnM6OmNyZWF0ZVdlYlZpZXdBbmRMb2FkKG1fYmFzZVVSTCArICJmaXhlZF9sYXlvdXQu
aHRtbCIsIHRydWUsIDAsICZjbGllbnQpKTsKKyAgICB3ZWJWaWV3SW1wbC0+c2V0dGluZ3MoKS0+
c2V0QXBwbHlEZXZpY2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcih0cnVlKTsKKyAgICB3ZWJWaWV3
SW1wbC0+c2V0dGluZ3MoKS0+c2V0QXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IodHJ1
ZSk7CisgICAgd2ViVmlld0ltcGwtPmVuYWJsZUZpeGVkTGF5b3V0TW9kZSh0cnVlKTsKKyAgICB3
ZWJWaWV3SW1wbC0+c2V0dGluZ3MoKS0+c2V0Vmlld3BvcnRFbmFibGVkKHRydWUpOworICAgIHdl
YlZpZXdJbXBsLT5yZXNpemUoV2ViU2l6ZSh2aWV3cG9ydFdpZHRoLCB2aWV3cG9ydEhlaWdodCkp
OworICAgIHdlYlZpZXdJbXBsLT5sYXlvdXQoKTsKKworICAgIHdlYlZpZXdJbXBsLT5tYWluRnJh
bWVJbXBsKCktPmZyYW1lVmlldygpLT5zZXRGaXhlZExheW91dFNpemUoV2ViQ29yZTo6SW50U2l6
ZSgxMDAsIDEwMCkpOworICAgIEVYUEVDVF9UUlVFKHdlYlZpZXdJbXBsLT5tYWluRnJhbWVJbXBs
KCktPmZyYW1lVmlldygpLT5uZWVkc0xheW91dCgpKTsKKworICAgIGludCBwcmV2TGF5b3V0Q291
bnQgPSB3ZWJWaWV3SW1wbC0+bWFpbkZyYW1lSW1wbCgpLT5mcmFtZVZpZXcoKS0+bGF5b3V0Q291
bnQoKTsKKyAgICB3ZWJWaWV3SW1wbC0+bWFpbkZyYW1lSW1wbCgpLT5mcmFtZVZpZXcoKS0+c2V0
RnJhbWVSZWN0KFdlYkNvcmU6OkludFJlY3QoMCwgMCwgNjQxLCA0ODEpKTsKKyAgICBFWFBFQ1Rf
RVEocHJldkxheW91dENvdW50LCB3ZWJWaWV3SW1wbC0+bWFpbkZyYW1lSW1wbCgpLT5mcmFtZVZp
ZXcoKS0+bGF5b3V0Q291bnQoKSk7CisKKyAgICB3ZWJWaWV3SW1wbC0+bGF5b3V0KCk7Cit9CisK
IFRFU1RfRihXZWJGcmFtZVRlc3QsIERldmljZVNjYWxlRmFjdG9yVXNlc0RlZmF1bHRXaXRob3V0
Vmlld3BvcnRUYWcpCiB7CiAgICAgcmVnaXN0ZXJNb2NrZWRIdHRwVVJMTG9hZCgibm9fdmlld3Bv
cnRfdGFnLmh0bWwiKTsKQEAgLTIzOSw2ICsyNjcsOCBAQCBURVNUX0YoV2ViRnJhbWVUZXN0LCBE
ZXZpY2VTY2FsZUZhY3RvclVzZXNEZWZhdWx0V2l0aG91dFZpZXdwb3J0VGFnKQogCiAgICAgV2Vi
Vmlldyogd2ViVmlldyA9IHN0YXRpY19jYXN0PFdlYlZpZXcqPihGcmFtZVRlc3RIZWxwZXJzOjpj
cmVhdGVXZWJWaWV3QW5kTG9hZChtX2Jhc2VVUkwgKyAibm9fdmlld3BvcnRfdGFnLmh0bWwiLCB0
cnVlLCAwLCAmY2xpZW50KSk7CiAKKyAgICB3ZWJWaWV3LT5zZXR0aW5ncygpLT5zZXRBcHBseURl
dmljZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKHRydWUpOworICAgIHdlYlZpZXctPnNldHRpbmdz
KCktPnNldEFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKHRydWUpOwogICAgIHdlYlZp
ZXctPnNldHRpbmdzKCktPnNldFZpZXdwb3J0RW5hYmxlZCh0cnVlKTsKICAgICB3ZWJWaWV3LT5l
bmFibGVGaXhlZExheW91dE1vZGUodHJ1ZSk7CiAgICAgd2ViVmlldy0+cmVzaXplKFdlYlNpemUo
dmlld3BvcnRXaWR0aCwgdmlld3BvcnRIZWlnaHQpKTsKQEAgLTI0Niw5ICsyNzYsMTEgQEAgVEVT
VF9GKFdlYkZyYW1lVGVzdCwgRGV2aWNlU2NhbGVGYWN0b3JVc2VzRGVmYXVsdFdpdGhvdXRWaWV3
cG9ydFRhZykKIAogICAgIEVYUEVDVF9FUSgyLCB3ZWJWaWV3LT5kZXZpY2VTY2FsZUZhY3Rvcigp
KTsKIAotICAgIC8vIERldmljZSBzY2FsZSBmYWN0b3Igc2hvdWxkIGJlIGEgY29tcG9uZW50IG9m
IHBhZ2Ugc2NhbGUgZmFjdG9yIGluIGZpeGVkLWxheW91dCwgc28gYSBzY2FsZSBvZiAxIGJlY29t
ZXMgMi4KKyAgICAvLyBEZXZpY2Ugc2NhbGUgZmFjdG9yIHNob3VsZCBiZSBpbmRlcGVuZGVudCBv
ZiBwYWdlIHNjYWxlLgogICAgIHdlYlZpZXctPnNldFBhZ2VTY2FsZUZhY3RvckxpbWl0cygxLCAy
KTsKLSAgICBFWFBFQ1RfRVEoMiwgd2ViVmlldy0+cGFnZVNjYWxlRmFjdG9yKCkpOworICAgIHdl
YlZpZXctPnNldFBhZ2VTY2FsZUZhY3RvclByZXNlcnZpbmdTY3JvbGxPZmZzZXQoMC41KTsKKyAg
ICB3ZWJWaWV3LT5sYXlvdXQoKTsKKyAgICBFWFBFQ1RfRVEoMSwgd2ViVmlldy0+cGFnZVNjYWxl
RmFjdG9yKCkpOwogCiAgICAgLy8gRm9yY2UgdGhlIGxheW91dCB0byBoYXBwZW4gYmVmb3JlIGxl
YXZpbmcgdGhlIHRlc3QuCiAgICAgd2ViVmlldy0+bWFpbkZyYW1lKCktPmNvbnRlbnRBc1RleHQo
MTAyNCkudXRmOCgpOwpAQCAtNDQzLDY1ICs0NzUsNiBAQCB2b2lkIHNldFNjYWxlQW5kU2Nyb2xs
QW5kTGF5b3V0KFdlYktpdDo6V2ViVmlldyogd2ViVmlldywgV2ViUG9pbnQgc2Nyb2xsLCBmbG9h
dAogICAgIHdlYlZpZXctPmxheW91dCgpOwogfQogCi1URVNUX0YoV2ViRnJhbWVUZXN0LCBEaXZB
dXRvWm9vbVBhcmFtc1Rlc3RXZWJLaXRTY2FsaW5nKQotewotICAgIHJlZ2lzdGVyTW9ja2VkSHR0
cFVSTExvYWQoImdldF9zY2FsZV9mb3JfYXV0b196b29tX2ludG9fZGl2X3Rlc3QuaHRtbCIpOwot
Ci0gICAgaW50IHZpZXdwb3J0V2lkdGggPSA2NDA7Ci0gICAgaW50IHZpZXdwb3J0SGVpZ2h0ID0g
NDgwOwotICAgIFdlYktpdDo6V2ViVmlldyogd2ViVmlldyA9IEZyYW1lVGVzdEhlbHBlcnM6OmNy
ZWF0ZVdlYlZpZXdBbmRMb2FkKG1fYmFzZVVSTCArICJnZXRfc2NhbGVfZm9yX2F1dG9fem9vbV9p
bnRvX2Rpdl90ZXN0Lmh0bWwiKTsKLSAgICB3ZWJWaWV3LT5zZXR0aW5ncygpLT5zZXRBcHBseURl
dmljZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKGZhbHNlKTsKLSAgICB3ZWJWaWV3LT5zZXR0aW5n
cygpLT5zZXRBcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcihmYWxzZSk7Ci0gICAgd2Vi
Vmlldy0+c2V0RGV2aWNlU2NhbGVGYWN0b3IoMi4wZik7Ci0gICAgd2ViVmlldy0+cmVzaXplKFdl
YlNpemUodmlld3BvcnRXaWR0aCwgdmlld3BvcnRIZWlnaHQpKTsKLSAgICB3ZWJWaWV3LT5zZXRQ
YWdlU2NhbGVGYWN0b3JMaW1pdHMoMC4wMWYsIDQpOwotICAgIHdlYlZpZXctPmVuYWJsZUZpeGVk
TGF5b3V0TW9kZSh0cnVlKTsKLSAgICB3ZWJWaWV3LT5sYXlvdXQoKTsKLQotICAgIFdlYlJlY3Qg
d2lkZURpdigyMDAsIDEwMCwgNDAwLCAxNTApOwotICAgIFdlYlJlY3QgdGFsbERpdigyMDAsIDMw
MCwgNDAwLCA4MDApOwotICAgIFdlYlJlY3QgZG91YmxlVGFwUG9pbnRXaWRlKCh3aWRlRGl2Lngg
KyA1MCkgKiB3ZWJWaWV3LT5wYWdlU2NhbGVGYWN0b3IoKSwKLSAgICAgICAgKHdpZGVEaXYueSAr
IDUwKSAqIHdlYlZpZXctPnBhZ2VTY2FsZUZhY3RvcigpLCAwLCAwKTsKLSAgICBXZWJSZWN0IGRv
dWJsZVRhcFBvaW50VGFsbCgodGFsbERpdi54ICsgNTApICogd2ViVmlldy0+cGFnZVNjYWxlRmFj
dG9yKCksCi0gICAgICAgICh0YWxsRGl2LnkgKyA1MCkgKiB3ZWJWaWV3LT5wYWdlU2NhbGVGYWN0
b3IoKSwgMCwgMCk7Ci0gICAgZmxvYXQgc2NhbGU7Ci0gICAgV2ViUG9pbnQgc2Nyb2xsOwotICAg
IGJvb2wgaXNBbmNob3I7Ci0KLSAgICBXZWJWaWV3SW1wbCogd2ViVmlld0ltcGwgPSBzdGF0aWNf
Y2FzdDxXZWJWaWV3SW1wbCo+KHdlYlZpZXcpOwotICAgIC8vIFRlc3QgZG91YmxlLXRhcCB6b29t
aW5nIGludG8gd2lkZSBkaXYuCi0gICAgd2ViVmlld0ltcGwtPmNvbXB1dGVTY2FsZUFuZFNjcm9s
bEZvckhpdFJlY3QoZG91YmxlVGFwUG9pbnRXaWRlLCBXZWJWaWV3SW1wbDo6RG91YmxlVGFwLCBz
Y2FsZSwgc2Nyb2xsLCBpc0FuY2hvcik7Ci0gICAgLy8gVGhlIGRpdiBzaG91bGQgaG9yaXpvbnRh
bGx5IGZpbGwgdGhlIHNjcmVlbiAobW9kdWxvIG1hcmdpbnMpLCBhbmQKLSAgICAvLyB2ZXJ0aWNh
bGx5IGNlbnRlcmVkIChtb2R1bG8gaW50ZWdlciByb3VuZGluZykuCi0gICAgRVhQRUNUX05FQVIo
dmlld3BvcnRXaWR0aCAvIChmbG9hdCkgd2lkZURpdi53aWR0aCwgc2NhbGUsIDAuMSk7Ci0gICAg
RVhQRUNUX05FQVIod2lkZURpdi54ICogc2NhbGUsIHNjcm9sbC54LCAyMCk7Ci0gICAgaW50IHZT
Y3JvbGwgPSAod2lkZURpdi55ICsgd2lkZURpdi5oZWlnaHQgLyAyKSAqIHNjYWxlIC0gKHZpZXdw
b3J0SGVpZ2h0IC8gMik7Ci0gICAgRVhQRUNUX05FQVIodlNjcm9sbCwgc2Nyb2xsLnksIDEpOwot
ICAgIEVYUEVDVF9GQUxTRShpc0FuY2hvcik7Ci0KLSAgICBzZXRTY2FsZUFuZFNjcm9sbEFuZExh
eW91dCh3ZWJWaWV3SW1wbCwgc2Nyb2xsLCBzY2FsZSk7Ci0KLSAgICAvLyBUZXN0IHpvb20gb3V0
IGJhY2sgdG8gbWluaW11bSBzY2FsZS4KLSAgICB3ZWJWaWV3SW1wbC0+Y29tcHV0ZVNjYWxlQW5k
U2Nyb2xsRm9ySGl0UmVjdChkb3VibGVUYXBQb2ludFdpZGUsIFdlYlZpZXdJbXBsOjpEb3VibGVU
YXAsIHNjYWxlLCBzY3JvbGwsIGlzQW5jaG9yKTsKLSAgICBFWFBFQ1RfRkxPQVRfRVEod2ViVmll
d0ltcGwtPm1pbmltdW1QYWdlU2NhbGVGYWN0b3IoKSwgc2NhbGUpOwotICAgIEVYUEVDVF9UUlVF
KGlzQW5jaG9yKTsKLQotICAgIHNldFNjYWxlQW5kU2Nyb2xsQW5kTGF5b3V0KHdlYlZpZXdJbXBs
LCBXZWJQb2ludCgwLCAwKSwgc2NhbGUpOwotCi0gICAgLy8gVGVzdCBkb3VibGUtdGFwIHpvb21p
bmcgaW50byB0YWxsIGRpdi4KLSAgICB3ZWJWaWV3SW1wbC0+Y29tcHV0ZVNjYWxlQW5kU2Nyb2xs
Rm9ySGl0UmVjdChkb3VibGVUYXBQb2ludFRhbGwsIFdlYlZpZXdJbXBsOjpEb3VibGVUYXAsIHNj
YWxlLCBzY3JvbGwsIGlzQW5jaG9yKTsKLSAgICAvLyBUaGUgZGl2IHNob3VsZCBzdGFydCBhdCB0
aGUgdG9wIGxlZnQgb2YgdGhlIHZpZXdwb3J0LgotICAgIEVYUEVDVF9ORUFSKHZpZXdwb3J0V2lk
dGggLyAoZmxvYXQpIHRhbGxEaXYud2lkdGgsIHNjYWxlLCAwLjEpOwotICAgIEVYUEVDVF9ORUFS
KHRhbGxEaXYueCAqIHNjYWxlLCBzY3JvbGwueCwgMjApOwotICAgIEVYUEVDVF9ORUFSKHRhbGxE
aXYueSAqIHNjYWxlLCBzY3JvbGwueSwgMjApOwotICAgIEVYUEVDVF9GQUxTRShpc0FuY2hvcik7
Ci0KLSAgICAvLyBUZXN0IGZvciBOb24tZG91YmxldGFwIHNjYWxpbmcKLSAgICAvLyBUZXN0IHpv
b21pbmcgaW50byBkaXYuCi0gICAgd2ViVmlld0ltcGwtPmNvbXB1dGVTY2FsZUFuZFNjcm9sbEZv
ckhpdFJlY3QoV2ViUmVjdCgyNTAsIDI1MCwgMTAsIDEwKSwgV2ViVmlld0ltcGw6OkZpbmRJblBh
Z2UsIHNjYWxlLCBzY3JvbGwsIGlzQW5jaG9yKTsKLSAgICBFWFBFQ1RfTkVBUih2aWV3cG9ydFdp
ZHRoIC8gKGZsb2F0KSB3aWRlRGl2LndpZHRoLCBzY2FsZSwgMC4xKTsKLX0KLQogVEVTVF9GKFdl
YkZyYW1lVGVzdCwgRGl2QXV0b1pvb21QYXJhbXNUZXN0Q29tcG9zaXRvclNjYWxpbmcpCiB7CiAg
ICAgcmVnaXN0ZXJNb2NrZWRIdHRwVVJMTG9hZCgiZ2V0X3NjYWxlX2Zvcl9hdXRvX3pvb21faW50
b19kaXZfdGVzdC5odG1sIik7CkBAIC01NjksNDcgKzU0Miw2IEBAIHZvaWQgc2ltdWxhdGVEb3Vi
bGVUYXAoV2ViVmlld0ltcGwqIHdlYlZpZXdJbXBsLCBXZWJQb2ludCYgcG9pbnQsIGZsb2F0JiBz
Y2FsZSkKICAgICBzY2FsZSA9IHdlYlZpZXdJbXBsLT5wYWdlU2NhbGVGYWN0b3IoKTsKIH0KIAot
VEVTVF9GKFdlYkZyYW1lVGVzdCwgRGl2QXV0b1pvb21NdWx0aXBsZURpdnNUZXN0V2ViS2l0U2Nh
bGluZykKLXsKLSAgICByZWdpc3Rlck1vY2tlZEh0dHBVUkxMb2FkKCJnZXRfbXVsdGlwbGVfZGl2
c19mb3JfYXV0b196b29tX3Rlc3QuaHRtbCIpOwotCi0gICAgaW50IHZpZXdwb3J0V2lkdGggPSA2
NDA7Ci0gICAgaW50IHZpZXdwb3J0SGVpZ2h0ID0gNDgwOwotICAgIGZsb2F0IGRvdWJsZVRhcFpv
b21BbHJlYWR5TGVnaWJsZVJhdGlvID0gMS4yZjsKLSAgICBXZWJLaXQ6OldlYlZpZXcqIHdlYlZp
ZXcgPSBGcmFtZVRlc3RIZWxwZXJzOjpjcmVhdGVXZWJWaWV3QW5kTG9hZChtX2Jhc2VVUkwgKyAi
Z2V0X211bHRpcGxlX2RpdnNfZm9yX2F1dG9fem9vbV90ZXN0Lmh0bWwiKTsKLSAgICB3ZWJWaWV3
LT5zZXR0aW5ncygpLT5zZXRBcHBseURldmljZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKGZhbHNl
KTsKLSAgICB3ZWJWaWV3LT5zZXR0aW5ncygpLT5zZXRBcHBseVBhZ2VTY2FsZUZhY3RvckluQ29t
cG9zaXRvcihmYWxzZSk7Ci0gICAgd2ViVmlldy0+ZW5hYmxlRml4ZWRMYXlvdXRNb2RlKHRydWUp
OwotICAgIHdlYlZpZXctPnJlc2l6ZShXZWJTaXplKHZpZXdwb3J0V2lkdGgsIHZpZXdwb3J0SGVp
Z2h0KSk7Ci0gICAgd2ViVmlldy0+c2V0UGFnZVNjYWxlRmFjdG9yTGltaXRzKDEsIDQpOwotICAg
IHdlYlZpZXctPmxheW91dCgpOwotICAgIHdlYlZpZXctPnNldERldmljZVNjYWxlRmFjdG9yKDEu
NWYpOwotCi0gICAgV2ViVmlld0ltcGwqIHdlYlZpZXdJbXBsID0gc3RhdGljX2Nhc3Q8V2ViVmll
d0ltcGwqPih3ZWJWaWV3KTsKLSAgICB3ZWJWaWV3SW1wbC0+c2hvdWxkVXNlQW5pbWF0ZURvdWJs
ZVRhcFRpbWVaZXJvRm9yVGVzdGluZyh0cnVlKTsKLQotICAgIFdlYlJlY3QgdG9wRGl2KDIwMCwg
MTAwLCAyMDAsIDE1MCk7Ci0gICAgV2ViUmVjdCBib3R0b21EaXYoMjAwLCAzMDAsIDIwMCwgMTUw
KTsKLSAgICBXZWJQb2ludCB0b3BQb2ludCh0b3BEaXYueCArIDUwLCB0b3BEaXYueSArIDUwKTsK
LSAgICBXZWJQb2ludCBib3R0b21Qb2ludChib3R0b21EaXYueCArIDUwLCBib3R0b21EaXYueSAr
IDUwKTsKLSAgICBmbG9hdCBzY2FsZTsKLSAgICBzZXRTY2FsZUFuZFNjcm9sbEFuZExheW91dCh3
ZWJWaWV3SW1wbCwgV2ViUG9pbnQoMCwgMCksICh3ZWJWaWV3SW1wbC0+bWluaW11bVBhZ2VTY2Fs
ZUZhY3RvcigpKSAqICgxICsgZG91YmxlVGFwWm9vbUFscmVhZHlMZWdpYmxlUmF0aW8pIC8gMik7
Ci0KLSAgICAvLyBUZXN0IGRvdWJsZSB0YXAgb24gdHdvIGRpZmZlcmVudCBkaXZzCi0gICAgLy8g
QWZ0ZXIgZmlyc3Qgem9vbSwgd2Ugc2hvdWxkIGdvIGJhY2sgdG8gbWluaW11bSBwYWdlIHNjYWxl
IHdpdGggYSBzZWNvbmQgZG91YmxlIHRhcC4KLSAgICBzaW11bGF0ZURvdWJsZVRhcCh3ZWJWaWV3
SW1wbCwgdG9wUG9pbnQsIHNjYWxlKTsKLSAgICBFWFBFQ1RfRkxPQVRfRVEod2ViVmlld0ltcGwt
PmRldmljZVNjYWxlRmFjdG9yKCksIHNjYWxlKTsKLSAgICBzaW11bGF0ZURvdWJsZVRhcCh3ZWJW
aWV3SW1wbCwgYm90dG9tUG9pbnQsIHNjYWxlKTsKLSAgICBFWFBFQ1RfRkxPQVRfRVEod2ViVmll
d0ltcGwtPm1pbmltdW1QYWdlU2NhbGVGYWN0b3IoKSwgc2NhbGUpOwotCi0gICAgLy8gSWYgdGhl
IHVzZXIgcGluY2ggem9vbXMgYWZ0ZXIgZG91YmxlIHRhcCwgYSBzZWNvbmQgZG91YmxlIHRhcCBz
aG91bGQgem9vbSBiYWNrIHRvIHRoZSBkaXYuCi0gICAgc2ltdWxhdGVEb3VibGVUYXAod2ViVmll
d0ltcGwsIHRvcFBvaW50LCBzY2FsZSk7Ci0gICAgRVhQRUNUX0ZMT0FUX0VRKHdlYlZpZXdJbXBs
LT5kZXZpY2VTY2FsZUZhY3RvcigpLCBzY2FsZSk7Ci0gICAgd2ViVmlld0ltcGwtPmFwcGx5U2Ny
b2xsQW5kU2NhbGUoV2ViU2l6ZSgpLCAwLjZmKTsKLSAgICBzaW11bGF0ZURvdWJsZVRhcCh3ZWJW
aWV3SW1wbCwgYm90dG9tUG9pbnQsIHNjYWxlKTsKLSAgICBFWFBFQ1RfRkxPQVRfRVEod2ViVmll
dy0+ZGV2aWNlU2NhbGVGYWN0b3IoKSwgc2NhbGUpOwotfQotCiBURVNUX0YoV2ViRnJhbWVUZXN0
LCBEaXZBdXRvWm9vbU11bHRpcGxlRGl2c1Rlc3RDb21wb3NpdG9yU2NhbGluZykKIHsKICAgICBy
ZWdpc3Rlck1vY2tlZEh0dHBVUkxMb2FkKCJnZXRfbXVsdGlwbGVfZGl2c19mb3JfYXV0b196b29t
X3Rlc3QuaHRtbCIpOwpAQCAtNjUzLDY1ICs1ODUsNiBAQCBURVNUX0YoV2ViRnJhbWVUZXN0LCBE
aXZBdXRvWm9vbU11bHRpcGxlRGl2c1Rlc3RDb21wb3NpdG9yU2NhbGluZykKICAgICBFWFBFQ1Rf
RkxPQVRfRVEoMSwgc2NhbGUpOwogfQogCi1URVNUX0YoV2ViRnJhbWVUZXN0LCBEaXZBdXRvWm9v
bVNjYWxlQm91bmRzVGVzdFdlYktpdFNjYWxpbmcpCi17Ci0gICAgcmVnaXN0ZXJNb2NrZWRIdHRw
VVJMTG9hZCgiZ2V0X3NjYWxlX2JvdW5kc19jaGVja19mb3JfYXV0b196b29tX3Rlc3QuaHRtbCIp
OwotCi0gICAgaW50IHZpZXdwb3J0V2lkdGggPSA2NDA7Ci0gICAgaW50IHZpZXdwb3J0SGVpZ2h0
ID0gNDgwOwotICAgIGZsb2F0IGRvdWJsZVRhcFpvb21BbHJlYWR5TGVnaWJsZVJhdGlvID0gMS4y
ZjsKLSAgICBXZWJLaXQ6OldlYlZpZXcqIHdlYlZpZXcgPSBGcmFtZVRlc3RIZWxwZXJzOjpjcmVh
dGVXZWJWaWV3QW5kTG9hZChtX2Jhc2VVUkwgKyAiZ2V0X3NjYWxlX2JvdW5kc19jaGVja19mb3Jf
YXV0b196b29tX3Rlc3QuaHRtbCIpOwotICAgIHdlYlZpZXctPnNldHRpbmdzKCktPnNldEFwcGx5
RGV2aWNlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoZmFsc2UpOwotICAgIHdlYlZpZXctPnNldHRp
bmdzKCktPnNldEFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKGZhbHNlKTsKLSAgICB3
ZWJWaWV3LT5lbmFibGVGaXhlZExheW91dE1vZGUodHJ1ZSk7Ci0gICAgd2ViVmlldy0+cmVzaXpl
KFdlYlNpemUodmlld3BvcnRXaWR0aCwgdmlld3BvcnRIZWlnaHQpKTsKLSAgICB3ZWJWaWV3LT5z
ZXRQYWdlU2NhbGVGYWN0b3JMaW1pdHMoMSwgNCk7Ci0gICAgd2ViVmlldy0+bGF5b3V0KCk7Ci0K
LSAgICBXZWJWaWV3SW1wbCogd2ViVmlld0ltcGwgPSBzdGF0aWNfY2FzdDxXZWJWaWV3SW1wbCo+
KHdlYlZpZXcpOwotICAgIHdlYlZpZXdJbXBsLT5zaG91bGRVc2VBbmltYXRlRG91YmxlVGFwVGlt
ZVplcm9Gb3JUZXN0aW5nKHRydWUpOwotICAgIGZsb2F0IGRvdWJsZVRhcFpvb21BbHJlYWR5TGVn
aWJsZVNjYWxlID0gd2ViVmlld0ltcGwtPm1pbmltdW1QYWdlU2NhbGVGYWN0b3IoKSAqIGRvdWJs
ZVRhcFpvb21BbHJlYWR5TGVnaWJsZVJhdGlvOwotCi0gICAgV2ViUmVjdCBkaXYoMjAwLCAxMDAs
IDIwMCwgMTUwKTsKLSAgICBXZWJQb2ludCBkb3VibGVUYXBQb2ludChkaXYueCArIDUwLCBkaXYu
eSArIDUwKTsKLSAgICBmbG9hdCBzY2FsZTsKLQotICAgIC8vIFRlc3QgZG91YmxlIHRhcCBzY2Fs
ZSBib3VuZHMuCi0gICAgLy8gbWluaW11bVBhZ2VTY2FsZSA8IGRvdWJsZVRhcFpvb21BbHJlYWR5
TGVnaWJsZVNjYWxlIDwgZGV2aWNlRHBpU2NhbGUKLSAgICB3ZWJWaWV3SW1wbC0+c2V0RGV2aWNl
U2NhbGVGYWN0b3IoMS41Zik7Ci0gICAgc2V0U2NhbGVBbmRTY3JvbGxBbmRMYXlvdXQod2ViVmll
d0ltcGwsIFdlYlBvaW50KDAsIDApLCAod2ViVmlld0ltcGwtPm1pbmltdW1QYWdlU2NhbGVGYWN0
b3IoKSkgKiAoMSArIGRvdWJsZVRhcFpvb21BbHJlYWR5TGVnaWJsZVJhdGlvKSAvIDIpOwotICAg
IHNpbXVsYXRlRG91YmxlVGFwKHdlYlZpZXdJbXBsLCBkb3VibGVUYXBQb2ludCwgc2NhbGUpOwot
ICAgIEVYUEVDVF9GTE9BVF9FUSh3ZWJWaWV3SW1wbC0+ZGV2aWNlU2NhbGVGYWN0b3IoKSwgc2Nh
bGUpOwotICAgIHNpbXVsYXRlRG91YmxlVGFwKHdlYlZpZXdJbXBsLCBkb3VibGVUYXBQb2ludCwg
c2NhbGUpOwotICAgIEVYUEVDVF9GTE9BVF9FUSh3ZWJWaWV3SW1wbC0+bWluaW11bVBhZ2VTY2Fs
ZUZhY3RvcigpLCBzY2FsZSk7Ci0gICAgc2ltdWxhdGVEb3VibGVUYXAod2ViVmlld0ltcGwsIGRv
dWJsZVRhcFBvaW50LCBzY2FsZSk7Ci0gICAgRVhQRUNUX0ZMT0FUX0VRKHdlYlZpZXdJbXBsLT5k
ZXZpY2VTY2FsZUZhY3RvcigpLCBzY2FsZSk7Ci0KLSAgICAvLyBab29tIGluIHRvIHJlc2V0IGRv
dWJsZV90YXBfem9vbV9pbl9lZmZlY3QgZmxhZy4KLSAgICB3ZWJWaWV3SW1wbC0+YXBwbHlTY3Jv
bGxBbmRTY2FsZShXZWJTaXplKCksIDEuMWYpOwotICAgIC8vIGRldmljZURwaVNjYWxlIDwgbWlu
aW11bVBhZ2VTY2FsZSA8IGRvdWJsZVRhcFpvb21BbHJlYWR5TGVnaWJsZVNjYWxlCi0gICAgd2Vi
Vmlld0ltcGwtPnNldERldmljZVNjYWxlRmFjdG9yKDAuNWYpOwotICAgIHNldFNjYWxlQW5kU2Ny
b2xsQW5kTGF5b3V0KHdlYlZpZXdJbXBsLCBXZWJQb2ludCgwLCAwKSwgKHdlYlZpZXdJbXBsLT5t
aW5pbXVtUGFnZVNjYWxlRmFjdG9yKCkpICogKDEgKyBkb3VibGVUYXBab29tQWxyZWFkeUxlZ2li
bGVSYXRpbykgLyAyKTsKLSAgICBzaW11bGF0ZURvdWJsZVRhcCh3ZWJWaWV3SW1wbCwgZG91Ymxl
VGFwUG9pbnQsIHNjYWxlKTsKLSAgICBFWFBFQ1RfRkxPQVRfRVEod2ViVmlld0ltcGwtPm1pbmlt
dW1QYWdlU2NhbGVGYWN0b3IoKSwgc2NhbGUpOwotICAgIHNpbXVsYXRlRG91YmxlVGFwKHdlYlZp
ZXdJbXBsLCBkb3VibGVUYXBQb2ludCwgc2NhbGUpOwotICAgIEVYUEVDVF9GTE9BVF9FUShkb3Vi
bGVUYXBab29tQWxyZWFkeUxlZ2libGVTY2FsZSwgc2NhbGUpOwotICAgIHNpbXVsYXRlRG91Ymxl
VGFwKHdlYlZpZXdJbXBsLCBkb3VibGVUYXBQb2ludCwgc2NhbGUpOwotICAgIEVYUEVDVF9GTE9B
VF9FUSh3ZWJWaWV3SW1wbC0+bWluaW11bVBhZ2VTY2FsZUZhY3RvcigpLCBzY2FsZSk7Ci0KLSAg
ICAvLyBab29tIGluIHRvIHJlc2V0IGRvdWJsZV90YXBfem9vbV9pbl9lZmZlY3QgZmxhZy4KLSAg
ICB3ZWJWaWV3SW1wbC0+YXBwbHlTY3JvbGxBbmRTY2FsZShXZWJTaXplKCksIDEuMWYpOwotICAg
IC8vIG1pbmltdW1QYWdlU2NhbGUgPCBkZXZpY2VEcGlTY2FsZSA8IGRvdWJsZVRhcFpvb21BbHJl
YWR5TGVnaWJsZVNjYWxlCi0gICAgd2ViVmlld0ltcGwtPnNldERldmljZVNjYWxlRmFjdG9yKDEu
MWYpOwotICAgIHNldFNjYWxlQW5kU2Nyb2xsQW5kTGF5b3V0KHdlYlZpZXdJbXBsLCBXZWJQb2lu
dCgwLCAwKSwgKHdlYlZpZXdJbXBsLT5taW5pbXVtUGFnZVNjYWxlRmFjdG9yKCkpICogKDEgKyBk
b3VibGVUYXBab29tQWxyZWFkeUxlZ2libGVSYXRpbykgLyAyKTsKLSAgICBzaW11bGF0ZURvdWJs
ZVRhcCh3ZWJWaWV3SW1wbCwgZG91YmxlVGFwUG9pbnQsIHNjYWxlKTsKLSAgICBFWFBFQ1RfRkxP
QVRfRVEod2ViVmlld0ltcGwtPm1pbmltdW1QYWdlU2NhbGVGYWN0b3IoKSwgc2NhbGUpOwotICAg
IHNpbXVsYXRlRG91YmxlVGFwKHdlYlZpZXdJbXBsLCBkb3VibGVUYXBQb2ludCwgc2NhbGUpOwot
ICAgIEVYUEVDVF9GTE9BVF9FUShkb3VibGVUYXBab29tQWxyZWFkeUxlZ2libGVTY2FsZSwgc2Nh
bGUpOwotICAgIHNpbXVsYXRlRG91YmxlVGFwKHdlYlZpZXdJbXBsLCBkb3VibGVUYXBQb2ludCwg
c2NhbGUpOwotICAgIEVYUEVDVF9GTE9BVF9FUSh3ZWJWaWV3SW1wbC0+bWluaW11bVBhZ2VTY2Fs
ZUZhY3RvcigpLCBzY2FsZSk7Ci19Ci0KIFRFU1RfRihXZWJGcmFtZVRlc3QsIERpdkF1dG9ab29t
U2NhbGVCb3VuZHNUZXN0Q29tcG9zaXRvclNjYWxpbmcpCiB7CiAgICAgcmVnaXN0ZXJNb2NrZWRI
dHRwVVJMTG9hZCgiZ2V0X3NjYWxlX2JvdW5kc19jaGVja19mb3JfYXV0b196b29tX3Rlc3QuaHRt
bCIpOwpAQCAtNzc0LDgzICs2NDcsNiBAQCBURVNUX0YoV2ViRnJhbWVUZXN0LCBEaXZBdXRvWm9v
bVNjYWxlQm91bmRzVGVzdENvbXBvc2l0b3JTY2FsaW5nKQogfQogCiAjaWYgRU5BQkxFKFRFWFRf
QVVUT1NJWklORykKLVRFU1RfRihXZWJGcmFtZVRlc3QsIERpdkF1dG9ab29tU2NhbGVGb250U2Nh
bGVGYWN0b3JUZXN0V2ViS2l0U2NhbGluZykKLXsKLSAgICByZWdpc3Rlck1vY2tlZEh0dHBVUkxM
b2FkKCJnZXRfc2NhbGVfYm91bmRzX2NoZWNrX2Zvcl9hdXRvX3pvb21fdGVzdC5odG1sIik7Ci0K
LSAgICBpbnQgdmlld3BvcnRXaWR0aCA9IDY0MDsKLSAgICBpbnQgdmlld3BvcnRIZWlnaHQgPSA0
ODA7Ci0gICAgZmxvYXQgZG91YmxlVGFwWm9vbUFscmVhZHlMZWdpYmxlUmF0aW8gPSAxLjJmOwot
ICAgIGZsb2F0IHRleHRBdXRvc2l6aW5nRm9udFNjYWxlRmFjdG9yID0gMS4xM2Y7Ci0gICAgV2Vi
S2l0OjpXZWJWaWV3KiB3ZWJWaWV3ID0gRnJhbWVUZXN0SGVscGVyczo6Y3JlYXRlV2ViVmlld0Fu
ZExvYWQobV9iYXNlVVJMICsgImdldF9zY2FsZV9ib3VuZHNfY2hlY2tfZm9yX2F1dG9fem9vbV90
ZXN0Lmh0bWwiKTsKLSAgICB3ZWJWaWV3LT5zZXR0aW5ncygpLT5zZXRBcHBseURldmljZVNjYWxl
RmFjdG9ySW5Db21wb3NpdG9yKGZhbHNlKTsKLSAgICB3ZWJWaWV3LT5zZXR0aW5ncygpLT5zZXRB
cHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcihmYWxzZSk7Ci0gICAgd2ViVmlldy0+ZW5h
YmxlRml4ZWRMYXlvdXRNb2RlKHRydWUpOwotICAgIHdlYlZpZXctPnJlc2l6ZShXZWJTaXplKHZp
ZXdwb3J0V2lkdGgsIHZpZXdwb3J0SGVpZ2h0KSk7Ci0gICAgd2ViVmlldy0+c2V0UGFnZVNjYWxl
RmFjdG9yTGltaXRzKDEsIDQpOwotICAgIHdlYlZpZXctPmxheW91dCgpOwotCi0gICAgV2ViVmll
d0ltcGwqIHdlYlZpZXdJbXBsID0gc3RhdGljX2Nhc3Q8V2ViVmlld0ltcGwqPih3ZWJWaWV3KTsK
LSAgICB3ZWJWaWV3SW1wbC0+c2hvdWxkVXNlQW5pbWF0ZURvdWJsZVRhcFRpbWVaZXJvRm9yVGVz
dGluZyh0cnVlKTsKLSAgICB3ZWJWaWV3SW1wbC0+cGFnZSgpLT5zZXR0aW5ncygpLT5zZXRUZXh0
QXV0b3NpemluZ0ZvbnRTY2FsZUZhY3Rvcih0ZXh0QXV0b3NpemluZ0ZvbnRTY2FsZUZhY3Rvcik7
Ci0gICAgZmxvYXQgZG91YmxlVGFwWm9vbUFscmVhZHlMZWdpYmxlU2NhbGUgPSB3ZWJWaWV3SW1w
bC0+bWluaW11bVBhZ2VTY2FsZUZhY3RvcigpICogZG91YmxlVGFwWm9vbUFscmVhZHlMZWdpYmxl
UmF0aW87Ci0KLSAgICBXZWJSZWN0IGRpdigyMDAsIDEwMCwgMjAwLCAxNTApOwotICAgIFdlYlBv
aW50IGRvdWJsZVRhcFBvaW50KGRpdi54ICsgNTAsIGRpdi55ICsgNTApOwotICAgIGZsb2F0IHNj
YWxlOwotCi0gICAgLy8gVGVzdCBkb3VibGUgdGFwIHNjYWxlIGJvdW5kcy4KLSAgICAvLyBtaW5p
bXVtUGFnZVNjYWxlIDwgZG91YmxlVGFwWm9vbUFscmVhZHlMZWdpYmxlU2NhbGUgPCBkZXZpY2VE
cGlTY2FsZSA8IGRldmljZURwaVNjYWxlICogdGV4dEF1dG9zaXppbmdGb250U2NhbGVGYWN0b3IK
LSAgICB3ZWJWaWV3SW1wbC0+c2V0RGV2aWNlU2NhbGVGYWN0b3IoMS41Zik7Ci0gICAgZmxvYXQg
bGVnaWJsZVNjYWxlID0gd2ViVmlld0ltcGwtPmRldmljZVNjYWxlRmFjdG9yKCkgKiB0ZXh0QXV0
b3NpemluZ0ZvbnRTY2FsZUZhY3RvcjsKLSAgICBzZXRTY2FsZUFuZFNjcm9sbEFuZExheW91dCh3
ZWJWaWV3SW1wbCwgV2ViUG9pbnQoMCwgMCksICh3ZWJWaWV3SW1wbC0+bWluaW11bVBhZ2VTY2Fs
ZUZhY3RvcigpKSAqICgxICsgZG91YmxlVGFwWm9vbUFscmVhZHlMZWdpYmxlUmF0aW8pIC8gMik7
Ci0gICAgc2ltdWxhdGVEb3VibGVUYXAod2ViVmlld0ltcGwsIGRvdWJsZVRhcFBvaW50LCBzY2Fs
ZSk7Ci0gICAgRVhQRUNUX0ZMT0FUX0VRKGxlZ2libGVTY2FsZSwgc2NhbGUpOwotICAgIHNpbXVs
YXRlRG91YmxlVGFwKHdlYlZpZXdJbXBsLCBkb3VibGVUYXBQb2ludCwgc2NhbGUpOwotICAgIEVY
UEVDVF9GTE9BVF9FUSh3ZWJWaWV3SW1wbC0+bWluaW11bVBhZ2VTY2FsZUZhY3RvcigpLCBzY2Fs
ZSk7Ci0gICAgc2ltdWxhdGVEb3VibGVUYXAod2ViVmlld0ltcGwsIGRvdWJsZVRhcFBvaW50LCBz
Y2FsZSk7Ci0gICAgRVhQRUNUX0ZMT0FUX0VRKGxlZ2libGVTY2FsZSwgc2NhbGUpOwotCi0gICAg
Ly8gWm9vbSBpbiB0byByZXNldCBkb3VibGVfdGFwX3pvb21faW5fZWZmZWN0IGZsYWcuCi0gICAg
d2ViVmlld0ltcGwtPmFwcGx5U2Nyb2xsQW5kU2NhbGUoV2ViU2l6ZSgpLCAxLjFmKTsKLSAgICAv
LyBkZXZpY2VEcGlTY2FsZSA8IGRldmljZURwaVNjYWxlICogdGV4dEF1dG9zaXppbmdGb250U2Nh
bGVGYWN0b3IgPCBtaW5pbXVtUGFnZVNjYWxlIDwgZG91YmxlVGFwWm9vbUFscmVhZHlMZWdpYmxl
U2NhbGUKLSAgICB3ZWJWaWV3SW1wbC0+c2V0RGV2aWNlU2NhbGVGYWN0b3IoMC41Zik7Ci0gICAg
bGVnaWJsZVNjYWxlID0gd2ViVmlld0ltcGwtPmRldmljZVNjYWxlRmFjdG9yKCkgKiB0ZXh0QXV0
b3NpemluZ0ZvbnRTY2FsZUZhY3RvcjsKLSAgICBzZXRTY2FsZUFuZFNjcm9sbEFuZExheW91dCh3
ZWJWaWV3SW1wbCwgV2ViUG9pbnQoMCwgMCksICh3ZWJWaWV3SW1wbC0+bWluaW11bVBhZ2VTY2Fs
ZUZhY3RvcigpKSAqICgxICsgZG91YmxlVGFwWm9vbUFscmVhZHlMZWdpYmxlUmF0aW8pIC8gMik7
Ci0gICAgc2ltdWxhdGVEb3VibGVUYXAod2ViVmlld0ltcGwsIGRvdWJsZVRhcFBvaW50LCBzY2Fs
ZSk7Ci0gICAgRVhQRUNUX0ZMT0FUX0VRKHdlYlZpZXdJbXBsLT5taW5pbXVtUGFnZVNjYWxlRmFj
dG9yKCksIHNjYWxlKTsKLSAgICBzaW11bGF0ZURvdWJsZVRhcCh3ZWJWaWV3SW1wbCwgZG91Ymxl
VGFwUG9pbnQsIHNjYWxlKTsKLSAgICBFWFBFQ1RfRkxPQVRfRVEoZG91YmxlVGFwWm9vbUFscmVh
ZHlMZWdpYmxlU2NhbGUsIHNjYWxlKTsKLSAgICBzaW11bGF0ZURvdWJsZVRhcCh3ZWJWaWV3SW1w
bCwgZG91YmxlVGFwUG9pbnQsIHNjYWxlKTsKLSAgICBFWFBFQ1RfRkxPQVRfRVEod2ViVmlld0lt
cGwtPm1pbmltdW1QYWdlU2NhbGVGYWN0b3IoKSwgc2NhbGUpOwotCi0gICAgLy8gWm9vbSBpbiB0
byByZXNldCBkb3VibGVfdGFwX3pvb21faW5fZWZmZWN0IGZsYWcuCi0gICAgd2ViVmlld0ltcGwt
PmFwcGx5U2Nyb2xsQW5kU2NhbGUoV2ViU2l6ZSgpLCAxLjFmKTsKLSAgICAvLyBtaW5pbXVtUGFn
ZVNjYWxlIDwgZGV2aWNlRHBpU2NhbGUgPCBkZXZpY2VEcGlTY2FsZSAqIHRleHRBdXRvc2l6aW5n
Rm9udFNjYWxlRmFjdG9yIDwgZG91YmxlVGFwWm9vbUFscmVhZHlMZWdpYmxlU2NhbGUKLSAgICB3
ZWJWaWV3SW1wbC0+c2V0RGV2aWNlU2NhbGVGYWN0b3IoMS4wNWYpOwotICAgIGxlZ2libGVTY2Fs
ZSA9IHdlYlZpZXdJbXBsLT5kZXZpY2VTY2FsZUZhY3RvcigpICogdGV4dEF1dG9zaXppbmdGb250
U2NhbGVGYWN0b3I7Ci0gICAgc2V0U2NhbGVBbmRTY3JvbGxBbmRMYXlvdXQod2ViVmlld0ltcGws
IFdlYlBvaW50KDAsIDApLCAod2ViVmlld0ltcGwtPm1pbmltdW1QYWdlU2NhbGVGYWN0b3IoKSkg
KiAoMSArIGRvdWJsZVRhcFpvb21BbHJlYWR5TGVnaWJsZVJhdGlvKSAvIDIpOwotICAgIHNpbXVs
YXRlRG91YmxlVGFwKHdlYlZpZXdJbXBsLCBkb3VibGVUYXBQb2ludCwgc2NhbGUpOwotICAgIEVY
UEVDVF9GTE9BVF9FUSh3ZWJWaWV3SW1wbC0+bWluaW11bVBhZ2VTY2FsZUZhY3RvcigpLCBzY2Fs
ZSk7Ci0gICAgc2ltdWxhdGVEb3VibGVUYXAod2ViVmlld0ltcGwsIGRvdWJsZVRhcFBvaW50LCBz
Y2FsZSk7Ci0gICAgRVhQRUNUX0ZMT0FUX0VRKGRvdWJsZVRhcFpvb21BbHJlYWR5TGVnaWJsZVNj
YWxlLCBzY2FsZSk7Ci0gICAgc2ltdWxhdGVEb3VibGVUYXAod2ViVmlld0ltcGwsIGRvdWJsZVRh
cFBvaW50LCBzY2FsZSk7Ci0gICAgRVhQRUNUX0ZMT0FUX0VRKHdlYlZpZXdJbXBsLT5taW5pbXVt
UGFnZVNjYWxlRmFjdG9yKCksIHNjYWxlKTsKLQotICAgIC8vIFpvb20gaW4gdG8gcmVzZXQgZG91
YmxlX3RhcF96b29tX2luX2VmZmVjdCBmbGFnLgotICAgIHdlYlZpZXdJbXBsLT5hcHBseVNjcm9s
bEFuZFNjYWxlKFdlYlNpemUoKSwgMS4xZik7Ci0gICAgLy8gbWluaW11bVBhZ2VTY2FsZSA8IGRl
dmljZURwaVNjYWxlIDwgZG91YmxlVGFwWm9vbUFscmVhZHlMZWdpYmxlU2NhbGUgPCBkZXZpY2VE
cGlTY2FsZSAqIHRleHRBdXRvc2l6aW5nRm9udFNjYWxlRmFjdG9yCi0gICAgd2ViVmlld0ltcGwt
PnNldERldmljZVNjYWxlRmFjdG9yKDEuMWYpOwotICAgIGxlZ2libGVTY2FsZSA9IHdlYlZpZXdJ
bXBsLT5kZXZpY2VTY2FsZUZhY3RvcigpICogdGV4dEF1dG9zaXppbmdGb250U2NhbGVGYWN0b3I7
Ci0gICAgc2V0U2NhbGVBbmRTY3JvbGxBbmRMYXlvdXQod2ViVmlld0ltcGwsIFdlYlBvaW50KDAs
IDApLCAod2ViVmlld0ltcGwtPm1pbmltdW1QYWdlU2NhbGVGYWN0b3IoKSkgKiAoMSArIGRvdWJs
ZVRhcFpvb21BbHJlYWR5TGVnaWJsZVJhdGlvKSAvIDIpOwotICAgIHNpbXVsYXRlRG91YmxlVGFw
KHdlYlZpZXdJbXBsLCBkb3VibGVUYXBQb2ludCwgc2NhbGUpOwotICAgIEVYUEVDVF9GTE9BVF9F
UShsZWdpYmxlU2NhbGUsIHNjYWxlKTsKLSAgICBzaW11bGF0ZURvdWJsZVRhcCh3ZWJWaWV3SW1w
bCwgZG91YmxlVGFwUG9pbnQsIHNjYWxlKTsKLSAgICBFWFBFQ1RfRkxPQVRfRVEod2ViVmlld0lt
cGwtPm1pbmltdW1QYWdlU2NhbGVGYWN0b3IoKSwgc2NhbGUpOwotICAgIHNpbXVsYXRlRG91Ymxl
VGFwKHdlYlZpZXdJbXBsLCBkb3VibGVUYXBQb2ludCwgc2NhbGUpOwotICAgIEVYUEVDVF9GTE9B
VF9FUShsZWdpYmxlU2NhbGUsIHNjYWxlKTsKLX0KLQogVEVTVF9GKFdlYkZyYW1lVGVzdCwgRGl2
QXV0b1pvb21TY2FsZUZvbnRTY2FsZUZhY3RvclRlc3RDb21wb3NpdG9yU2NhbGluZykKIHsKICAg
ICByZWdpc3Rlck1vY2tlZEh0dHBVUkxMb2FkKCJnZXRfc2NhbGVfYm91bmRzX2NoZWNrX2Zvcl9h
dXRvX3pvb21fdGVzdC5odG1sIik7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>185808</attachid>
            <date>2013-01-31 10:37:18 -0800</date>
            <delta_ts>2013-01-31 11:27:15 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-107922-20130131103402.patch</filename>
            <type>text/plain</type>
            <size>20941</size>
            <attacher name="Alexandre Elias">aelias</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxMTYwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODNjZGNhNDg0NDI3MjFl
MzAxNTVlMmM3NjgyZjczZTZiODcwZWJhMi4uMDdlMDE3MTIxMGM2MDIzZDk3MzI4ZGQxNDMzZGYx
M2I0ZWZiODMzYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDEzLTAxLTMxICBBbGV4
YW5kcmUgRWxpYXMgIDxhZWxpYXNAY2hyb21pdW0ub3JnPgorCisgICAgICAgIENhbGwgRnJhbWVW
aWV3Ojpjb250ZW50c1Jlc2l6ZWQoKSB3aGVuIHNldHRpbmcgZml4ZWQgbGF5b3V0IHNpemUKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNzkyMgorCisg
ICAgICAgIFJldmlld2VkIGJ5IEphbWVzIFJvYmluc29uLgorCisgICAgICAgIEluIGZpeGVkIGxh
eW91dCBtb2RlLCB3ZSBzaG91bGQgYmUgY2FsbGluZyBjb250ZW50c1Jlc2l6ZWQoKSB3aGVuIHRo
ZQorICAgICAgICBmaXhlZCBsYXlvdXQgc2l6ZSBpcyBjaGFuZ2VkLCBidXQgbm90IGxheWluZyBv
dXQgd2hlbiB0aGUgdmlzaWJsZQorICAgICAgICBjb250ZW50IHJlY3QgY2hhbmdlcy4KKworICAg
ICAgICBQcmV2aW91c2x5IGxhbmRlZCBhcyByMTQwODY5IGJ1dCB3YXMgcmV2ZXJ0ZWQgZHVlIHRv
IGEgYnVnIGluIGJ1bmRsZWQKKyAgICAgICAgQ2hyb21pdW0tc3BlY2lmaWMgY29kZS4gVGhpcyBw
YXRjaCBpbmNsdWRlcyBqdXN0IHRoZSBtaW5pbXVtIG5lZWRlZCBpbgorICAgICAgICBXZWJDb3Jl
LgorCisgICAgICAgIE5ldyBXZWJGcmFtZVRlc3Q6IEZyYW1lVmlld05lZWRzTGF5b3V0T25GaXhl
ZExheW91dFJlc2l6ZS4gIFNvbWUKKyAgICAgICAgZmxha3kgYW5kIG9ic29sZXRlIHRlc3RzIGZv
ciB0aGUgb2xkIHBhZ2Ugc2NhbGUgbW9kZSBhcmUgYWxzbyBkZWxldGVkLgorCisgICAgICAgICog
cGFnZS9GcmFtZVZpZXcuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVWaWV3Ojp2aXNpYmxl
Q29udGVudHNSZXNpemVkKToKKyAgICAgICAgKiBwbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlNjcm9sbFZpZXc6OnNldEZpeGVkTGF5b3V0U2l6ZSk6CisgICAgICAg
IChXZWJDb3JlOjpTY3JvbGxWaWV3OjpzZXRVc2VGaXhlZExheW91dCk6CisKIDIwMTMtMDEtMjkg
IEp1c3RpbiBOb3Zvc2FkICA8anVub3ZAZ29vZ2xlLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9O
IChyMTM1NjI4LTEzNTYzMik6IERvdWJsZSBib3ggc2hhZG93IGZhaWx1cmUgdG8gcmVuZGVyCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IDNjNDllOTE0NTU0ZDA3NWZhOTNkYmY5NTRlOGM0
ODA3ZTdhYThjYzMuLjNhOTE5MzE5ZGUzNWEzZWIwYzg1MTU1NGQwYTdiZWQ2M2UwN2JmMGMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTMtMDEtMzEgIEFs
ZXhhbmRyZSBFbGlhcyAgPGFlbGlhc0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgQ2FsbCBGcmFt
ZVZpZXc6OmNvbnRlbnRzUmVzaXplZCgpIHdoZW4gc2V0dGluZyBmaXhlZCBsYXlvdXQgc2l6ZQor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA3OTIyCisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgSmFtZXMgUm9iaW5zb24uCisKKyAgICAgICAgSW4gZml4ZWQg
bGF5b3V0IG1vZGUsIHdlIHNob3VsZCBiZSBjYWxsaW5nIGNvbnRlbnRzUmVzaXplZCgpIHdoZW4g
dGhlCisgICAgICAgIGZpeGVkIGxheW91dCBzaXplIGlzIGNoYW5nZWQsIGJ1dCBub3QgbGF5aW5n
IG91dCB3aGVuIHRoZSB2aXNpYmxlCisgICAgICAgIGNvbnRlbnQgcmVjdCBjaGFuZ2VzLgorCisg
ICAgICAgIFByZXZpb3VzbHkgbGFuZGVkIGFzIHIxNDA4NjkgYnV0IHdhcyByZXZlcnRlZCBkdWUg
dG8gYSBidWcgaW4gYnVuZGxlZAorICAgICAgICBDaHJvbWl1bS1zcGVjaWZpYyBjb2RlLiBUaGlz
IHBhdGNoIGluY2x1ZGVzIGp1c3QgdGhlIG1pbmltdW0gbmVlZGVkIGluCisgICAgICAgIFdlYkNv
cmUuCisKKyAgICAgICAgTmV3IFdlYkZyYW1lVGVzdDogRnJhbWVWaWV3TmVlZHNMYXlvdXRPbkZp
eGVkTGF5b3V0UmVzaXplLiAgU29tZQorICAgICAgICBmbGFreSBhbmQgb2Jzb2xldGUgdGVzdHMg
Zm9yIHRoZSBvbGQgcGFnZSBzY2FsZSBtb2RlIGFyZSBhbHNvIGRlbGV0ZWQuCisKKyAgICAgICAg
KiB0ZXN0cy9XZWJGcmFtZVRlc3QuY3BwOgorCiAyMDEzLTAxLTI5ICBYaWFuemh1IFdhbmcgIDx3
YW5neGlhbnpodUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgW0Nocm9taXVtXSBDb3JyZWN0IHpv
b20gZm9yIGZvY3VzZWQgbm9kZSB3aGVuIHVzaW5nIGNvbXBvc2l0b3Igc2NhbGluZwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9GcmFtZVZpZXcuY3BwCmluZGV4IGE1OGQ2YTA0NDU0MmM2NzI1OTYxNjJlOTNjM2Y4Yzhh
YTM5ZDc4M2IuLjg2NjNhMTM4ZTJiNmU0OTA2N2M5ZTMyM2FhYmQzYTg4MGE3MmU5NDggMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL0ZyYW1lVmlldy5jcHAKQEAgLTIwMjIsNyArMjAyMiw3IEBAIHZvaWQgRnJhbWVW
aWV3Ojp2aXNpYmxlQ29udGVudHNSZXNpemVkKCkKICAgICBpZiAoIWZyYW1lKCktPnZpZXcoKSkK
ICAgICAgICAgcmV0dXJuOwogCi0gICAgaWYgKG5lZWRzTGF5b3V0KCkpCisgICAgaWYgKCF1c2VG
aXhlZExheW91dCgpICYmIG5lZWRzTGF5b3V0KCkpCiAgICAgICAgIGxheW91dCgpOwogCiAjaWYg
VVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vU2Nyb2xsVmlldy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxW
aWV3LmNwcAppbmRleCAwNDcyNzkxMTcyMWZkZjk5N2QwY2FiMzI4MDY0ODkzMjQzM2NmMjZkLi40
ZWRhZGY2YjIyYmY5OGU5NmY0NGE2MjZjMWUyMDE0MTgxY2E4MjgyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9TY3JvbGxWaWV3LmNwcApAQCAtMjc4LDYgKzI3OCw4IEBAIHZvaWQgU2Nyb2xsVmll
dzo6c2V0Rml4ZWRMYXlvdXRTaXplKGNvbnN0IEludFNpemUmIG5ld1NpemUpCiAgICAgICAgIHJl
dHVybjsKICAgICBtX2ZpeGVkTGF5b3V0U2l6ZSA9IG5ld1NpemU7CiAgICAgdXBkYXRlU2Nyb2xs
YmFycyhzY3JvbGxPZmZzZXQoKSk7CisgICAgaWYgKG1fdXNlRml4ZWRMYXlvdXQpCisgICAgICAg
IGNvbnRlbnRzUmVzaXplZCgpOwogfQogCiBib29sIFNjcm9sbFZpZXc6OnVzZUZpeGVkTGF5b3V0
KCkgY29uc3QKQEAgLTI5MSw2ICsyOTMsNyBAQCB2b2lkIFNjcm9sbFZpZXc6OnNldFVzZUZpeGVk
TGF5b3V0KGJvb2wgZW5hYmxlKQogICAgICAgICByZXR1cm47CiAgICAgbV91c2VGaXhlZExheW91
dCA9IGVuYWJsZTsKICAgICB1cGRhdGVTY3JvbGxiYXJzKHNjcm9sbE9mZnNldCgpKTsKKyAgICBj
b250ZW50c1Jlc2l6ZWQoKTsKIH0KIAogSW50U2l6ZSBTY3JvbGxWaWV3Ojpjb250ZW50c1NpemUo
KSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9XZWJGcmFt
ZVRlc3QuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9XZWJGcmFtZVRlc3QuY3Bw
CmluZGV4IDA3NzM2NDkzOGNkM2NmZmFkZGMyZjVmZmE5MjU2MTIxMDYyZDM1MzYuLjQ3MGNlNzRh
NjZhYmYxZDY1MzRiNjE4MTA2MTJmYzE4ZTUyNDUwN2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vdGVzdHMvV2ViRnJhbWVUZXN0LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL3Rlc3RzL1dlYkZyYW1lVGVzdC5jcHAKQEAgLTIyNyw2ICsyMjcsMzQgQEAgY2xhc3Mg
Rml4ZWRMYXlvdXRUZXN0V2ViVmlld0NsaWVudCA6IHB1YmxpYyBXZWJWaWV3Q2xpZW50IHsKICAg
ICBXZWJTY3JlZW5JbmZvIG1fc2NyZWVuSW5mbzsKIH07CiAKK1RFU1RfRihXZWJGcmFtZVRlc3Qs
IEZyYW1lVmlld05lZWRzTGF5b3V0T25GaXhlZExheW91dFJlc2l6ZSkKK3sKKyAgICByZWdpc3Rl
ck1vY2tlZEh0dHBVUkxMb2FkKCJmaXhlZF9sYXlvdXQuaHRtbCIpOworCisgICAgRml4ZWRMYXlv
dXRUZXN0V2ViVmlld0NsaWVudCBjbGllbnQ7CisgICAgaW50IHZpZXdwb3J0V2lkdGggPSA2NDA7
CisgICAgaW50IHZpZXdwb3J0SGVpZ2h0ID0gNDgwOworCisgICAgLy8gTWFrZSBzdXJlIHdlIGlu
aXRpYWxpemUgdG8gbWluaW11bSBzY2FsZSwgZXZlbiBpZiB0aGUgd2luZG93IHNpemUKKyAgICAv
LyBvbmx5IGJlY29tZXMgYXZhaWxhYmxlIGFmdGVyIHRoZSBsb2FkIGJlZ2lucy4KKyAgICBXZWJW
aWV3SW1wbCogd2ViVmlld0ltcGwgPSBzdGF0aWNfY2FzdDxXZWJWaWV3SW1wbCo+KEZyYW1lVGVz
dEhlbHBlcnM6OmNyZWF0ZVdlYlZpZXdBbmRMb2FkKG1fYmFzZVVSTCArICJmaXhlZF9sYXlvdXQu
aHRtbCIsIHRydWUsIDAsICZjbGllbnQpKTsKKyAgICB3ZWJWaWV3SW1wbC0+c2V0dGluZ3MoKS0+
c2V0QXBwbHlEZXZpY2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcih0cnVlKTsKKyAgICB3ZWJWaWV3
SW1wbC0+c2V0dGluZ3MoKS0+c2V0QXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IodHJ1
ZSk7CisgICAgd2ViVmlld0ltcGwtPmVuYWJsZUZpeGVkTGF5b3V0TW9kZSh0cnVlKTsKKyAgICB3
ZWJWaWV3SW1wbC0+c2V0dGluZ3MoKS0+c2V0Vmlld3BvcnRFbmFibGVkKHRydWUpOworICAgIHdl
YlZpZXdJbXBsLT5yZXNpemUoV2ViU2l6ZSh2aWV3cG9ydFdpZHRoLCB2aWV3cG9ydEhlaWdodCkp
OworICAgIHdlYlZpZXdJbXBsLT5sYXlvdXQoKTsKKworICAgIHdlYlZpZXdJbXBsLT5tYWluRnJh
bWVJbXBsKCktPmZyYW1lVmlldygpLT5zZXRGaXhlZExheW91dFNpemUoV2ViQ29yZTo6SW50U2l6
ZSgxMDAsIDEwMCkpOworICAgIEVYUEVDVF9UUlVFKHdlYlZpZXdJbXBsLT5tYWluRnJhbWVJbXBs
KCktPmZyYW1lVmlldygpLT5uZWVkc0xheW91dCgpKTsKKworICAgIGludCBwcmV2TGF5b3V0Q291
bnQgPSB3ZWJWaWV3SW1wbC0+bWFpbkZyYW1lSW1wbCgpLT5mcmFtZVZpZXcoKS0+bGF5b3V0Q291
bnQoKTsKKyAgICB3ZWJWaWV3SW1wbC0+bWFpbkZyYW1lSW1wbCgpLT5mcmFtZVZpZXcoKS0+c2V0
RnJhbWVSZWN0KFdlYkNvcmU6OkludFJlY3QoMCwgMCwgNjQxLCA0ODEpKTsKKyAgICBFWFBFQ1Rf
RVEocHJldkxheW91dENvdW50LCB3ZWJWaWV3SW1wbC0+bWFpbkZyYW1lSW1wbCgpLT5mcmFtZVZp
ZXcoKS0+bGF5b3V0Q291bnQoKSk7CisKKyAgICB3ZWJWaWV3SW1wbC0+bGF5b3V0KCk7Cit9CisK
IFRFU1RfRihXZWJGcmFtZVRlc3QsIERldmljZVNjYWxlRmFjdG9yVXNlc0RlZmF1bHRXaXRob3V0
Vmlld3BvcnRUYWcpCiB7CiAgICAgcmVnaXN0ZXJNb2NrZWRIdHRwVVJMTG9hZCgibm9fdmlld3Bv
cnRfdGFnLmh0bWwiKTsKQEAgLTIzOSw2ICsyNjcsOCBAQCBURVNUX0YoV2ViRnJhbWVUZXN0LCBE
ZXZpY2VTY2FsZUZhY3RvclVzZXNEZWZhdWx0V2l0aG91dFZpZXdwb3J0VGFnKQogCiAgICAgV2Vi
Vmlldyogd2ViVmlldyA9IHN0YXRpY19jYXN0PFdlYlZpZXcqPihGcmFtZVRlc3RIZWxwZXJzOjpj
cmVhdGVXZWJWaWV3QW5kTG9hZChtX2Jhc2VVUkwgKyAibm9fdmlld3BvcnRfdGFnLmh0bWwiLCB0
cnVlLCAwLCAmY2xpZW50KSk7CiAKKyAgICB3ZWJWaWV3LT5zZXR0aW5ncygpLT5zZXRBcHBseURl
dmljZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKHRydWUpOworICAgIHdlYlZpZXctPnNldHRpbmdz
KCktPnNldEFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKHRydWUpOwogICAgIHdlYlZp
ZXctPnNldHRpbmdzKCktPnNldFZpZXdwb3J0RW5hYmxlZCh0cnVlKTsKICAgICB3ZWJWaWV3LT5l
bmFibGVGaXhlZExheW91dE1vZGUodHJ1ZSk7CiAgICAgd2ViVmlldy0+cmVzaXplKFdlYlNpemUo
dmlld3BvcnRXaWR0aCwgdmlld3BvcnRIZWlnaHQpKTsKQEAgLTI0Niw5ICsyNzYsMTEgQEAgVEVT
VF9GKFdlYkZyYW1lVGVzdCwgRGV2aWNlU2NhbGVGYWN0b3JVc2VzRGVmYXVsdFdpdGhvdXRWaWV3
cG9ydFRhZykKIAogICAgIEVYUEVDVF9FUSgyLCB3ZWJWaWV3LT5kZXZpY2VTY2FsZUZhY3Rvcigp
KTsKIAotICAgIC8vIERldmljZSBzY2FsZSBmYWN0b3Igc2hvdWxkIGJlIGEgY29tcG9uZW50IG9m
IHBhZ2Ugc2NhbGUgZmFjdG9yIGluIGZpeGVkLWxheW91dCwgc28gYSBzY2FsZSBvZiAxIGJlY29t
ZXMgMi4KKyAgICAvLyBEZXZpY2Ugc2NhbGUgZmFjdG9yIHNob3VsZCBiZSBpbmRlcGVuZGVudCBv
ZiBwYWdlIHNjYWxlLgogICAgIHdlYlZpZXctPnNldFBhZ2VTY2FsZUZhY3RvckxpbWl0cygxLCAy
KTsKLSAgICBFWFBFQ1RfRVEoMiwgd2ViVmlldy0+cGFnZVNjYWxlRmFjdG9yKCkpOworICAgIHdl
YlZpZXctPnNldFBhZ2VTY2FsZUZhY3RvclByZXNlcnZpbmdTY3JvbGxPZmZzZXQoMC41KTsKKyAg
ICB3ZWJWaWV3LT5sYXlvdXQoKTsKKyAgICBFWFBFQ1RfRVEoMSwgd2ViVmlldy0+cGFnZVNjYWxl
RmFjdG9yKCkpOwogCiAgICAgLy8gRm9yY2UgdGhlIGxheW91dCB0byBoYXBwZW4gYmVmb3JlIGxl
YXZpbmcgdGhlIHRlc3QuCiAgICAgd2ViVmlldy0+bWFpbkZyYW1lKCktPmNvbnRlbnRBc1RleHQo
MTAyNCkudXRmOCgpOwpAQCAtNDQzLDY1ICs0NzUsNiBAQCB2b2lkIHNldFNjYWxlQW5kU2Nyb2xs
QW5kTGF5b3V0KFdlYktpdDo6V2ViVmlldyogd2ViVmlldywgV2ViUG9pbnQgc2Nyb2xsLCBmbG9h
dAogICAgIHdlYlZpZXctPmxheW91dCgpOwogfQogCi1URVNUX0YoV2ViRnJhbWVUZXN0LCBEaXZB
dXRvWm9vbVBhcmFtc1Rlc3RXZWJLaXRTY2FsaW5nKQotewotICAgIHJlZ2lzdGVyTW9ja2VkSHR0
cFVSTExvYWQoImdldF9zY2FsZV9mb3JfYXV0b196b29tX2ludG9fZGl2X3Rlc3QuaHRtbCIpOwot
Ci0gICAgaW50IHZpZXdwb3J0V2lkdGggPSA2NDA7Ci0gICAgaW50IHZpZXdwb3J0SGVpZ2h0ID0g
NDgwOwotICAgIFdlYktpdDo6V2ViVmlldyogd2ViVmlldyA9IEZyYW1lVGVzdEhlbHBlcnM6OmNy
ZWF0ZVdlYlZpZXdBbmRMb2FkKG1fYmFzZVVSTCArICJnZXRfc2NhbGVfZm9yX2F1dG9fem9vbV9p
bnRvX2Rpdl90ZXN0Lmh0bWwiKTsKLSAgICB3ZWJWaWV3LT5zZXR0aW5ncygpLT5zZXRBcHBseURl
dmljZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKGZhbHNlKTsKLSAgICB3ZWJWaWV3LT5zZXR0aW5n
cygpLT5zZXRBcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcihmYWxzZSk7Ci0gICAgd2Vi
Vmlldy0+c2V0RGV2aWNlU2NhbGVGYWN0b3IoMi4wZik7Ci0gICAgd2ViVmlldy0+cmVzaXplKFdl
YlNpemUodmlld3BvcnRXaWR0aCwgdmlld3BvcnRIZWlnaHQpKTsKLSAgICB3ZWJWaWV3LT5zZXRQ
YWdlU2NhbGVGYWN0b3JMaW1pdHMoMC4wMWYsIDQpOwotICAgIHdlYlZpZXctPmVuYWJsZUZpeGVk
TGF5b3V0TW9kZSh0cnVlKTsKLSAgICB3ZWJWaWV3LT5sYXlvdXQoKTsKLQotICAgIFdlYlJlY3Qg
d2lkZURpdigyMDAsIDEwMCwgNDAwLCAxNTApOwotICAgIFdlYlJlY3QgdGFsbERpdigyMDAsIDMw
MCwgNDAwLCA4MDApOwotICAgIFdlYlJlY3QgZG91YmxlVGFwUG9pbnRXaWRlKCh3aWRlRGl2Lngg
KyA1MCkgKiB3ZWJWaWV3LT5wYWdlU2NhbGVGYWN0b3IoKSwKLSAgICAgICAgKHdpZGVEaXYueSAr
IDUwKSAqIHdlYlZpZXctPnBhZ2VTY2FsZUZhY3RvcigpLCAwLCAwKTsKLSAgICBXZWJSZWN0IGRv
dWJsZVRhcFBvaW50VGFsbCgodGFsbERpdi54ICsgNTApICogd2ViVmlldy0+cGFnZVNjYWxlRmFj
dG9yKCksCi0gICAgICAgICh0YWxsRGl2LnkgKyA1MCkgKiB3ZWJWaWV3LT5wYWdlU2NhbGVGYWN0
b3IoKSwgMCwgMCk7Ci0gICAgZmxvYXQgc2NhbGU7Ci0gICAgV2ViUG9pbnQgc2Nyb2xsOwotICAg
IGJvb2wgaXNBbmNob3I7Ci0KLSAgICBXZWJWaWV3SW1wbCogd2ViVmlld0ltcGwgPSBzdGF0aWNf
Y2FzdDxXZWJWaWV3SW1wbCo+KHdlYlZpZXcpOwotICAgIC8vIFRlc3QgZG91YmxlLXRhcCB6b29t
aW5nIGludG8gd2lkZSBkaXYuCi0gICAgd2ViVmlld0ltcGwtPmNvbXB1dGVTY2FsZUFuZFNjcm9s
bEZvckhpdFJlY3QoZG91YmxlVGFwUG9pbnRXaWRlLCBXZWJWaWV3SW1wbDo6RG91YmxlVGFwLCBz
Y2FsZSwgc2Nyb2xsLCBpc0FuY2hvcik7Ci0gICAgLy8gVGhlIGRpdiBzaG91bGQgaG9yaXpvbnRh
bGx5IGZpbGwgdGhlIHNjcmVlbiAobW9kdWxvIG1hcmdpbnMpLCBhbmQKLSAgICAvLyB2ZXJ0aWNh
bGx5IGNlbnRlcmVkIChtb2R1bG8gaW50ZWdlciByb3VuZGluZykuCi0gICAgRVhQRUNUX05FQVIo
dmlld3BvcnRXaWR0aCAvIChmbG9hdCkgd2lkZURpdi53aWR0aCwgc2NhbGUsIDAuMSk7Ci0gICAg
RVhQRUNUX05FQVIod2lkZURpdi54ICogc2NhbGUsIHNjcm9sbC54LCAyMCk7Ci0gICAgaW50IHZT
Y3JvbGwgPSAod2lkZURpdi55ICsgd2lkZURpdi5oZWlnaHQgLyAyKSAqIHNjYWxlIC0gKHZpZXdw
b3J0SGVpZ2h0IC8gMik7Ci0gICAgRVhQRUNUX05FQVIodlNjcm9sbCwgc2Nyb2xsLnksIDEpOwot
ICAgIEVYUEVDVF9GQUxTRShpc0FuY2hvcik7Ci0KLSAgICBzZXRTY2FsZUFuZFNjcm9sbEFuZExh
eW91dCh3ZWJWaWV3SW1wbCwgc2Nyb2xsLCBzY2FsZSk7Ci0KLSAgICAvLyBUZXN0IHpvb20gb3V0
IGJhY2sgdG8gbWluaW11bSBzY2FsZS4KLSAgICB3ZWJWaWV3SW1wbC0+Y29tcHV0ZVNjYWxlQW5k
U2Nyb2xsRm9ySGl0UmVjdChkb3VibGVUYXBQb2ludFdpZGUsIFdlYlZpZXdJbXBsOjpEb3VibGVU
YXAsIHNjYWxlLCBzY3JvbGwsIGlzQW5jaG9yKTsKLSAgICBFWFBFQ1RfRkxPQVRfRVEod2ViVmll
d0ltcGwtPm1pbmltdW1QYWdlU2NhbGVGYWN0b3IoKSwgc2NhbGUpOwotICAgIEVYUEVDVF9UUlVF
KGlzQW5jaG9yKTsKLQotICAgIHNldFNjYWxlQW5kU2Nyb2xsQW5kTGF5b3V0KHdlYlZpZXdJbXBs
LCBXZWJQb2ludCgwLCAwKSwgc2NhbGUpOwotCi0gICAgLy8gVGVzdCBkb3VibGUtdGFwIHpvb21p
bmcgaW50byB0YWxsIGRpdi4KLSAgICB3ZWJWaWV3SW1wbC0+Y29tcHV0ZVNjYWxlQW5kU2Nyb2xs
Rm9ySGl0UmVjdChkb3VibGVUYXBQb2ludFRhbGwsIFdlYlZpZXdJbXBsOjpEb3VibGVUYXAsIHNj
YWxlLCBzY3JvbGwsIGlzQW5jaG9yKTsKLSAgICAvLyBUaGUgZGl2IHNob3VsZCBzdGFydCBhdCB0
aGUgdG9wIGxlZnQgb2YgdGhlIHZpZXdwb3J0LgotICAgIEVYUEVDVF9ORUFSKHZpZXdwb3J0V2lk
dGggLyAoZmxvYXQpIHRhbGxEaXYud2lkdGgsIHNjYWxlLCAwLjEpOwotICAgIEVYUEVDVF9ORUFS
KHRhbGxEaXYueCAqIHNjYWxlLCBzY3JvbGwueCwgMjApOwotICAgIEVYUEVDVF9ORUFSKHRhbGxE
aXYueSAqIHNjYWxlLCBzY3JvbGwueSwgMjApOwotICAgIEVYUEVDVF9GQUxTRShpc0FuY2hvcik7
Ci0KLSAgICAvLyBUZXN0IGZvciBOb24tZG91YmxldGFwIHNjYWxpbmcKLSAgICAvLyBUZXN0IHpv
b21pbmcgaW50byBkaXYuCi0gICAgd2ViVmlld0ltcGwtPmNvbXB1dGVTY2FsZUFuZFNjcm9sbEZv
ckhpdFJlY3QoV2ViUmVjdCgyNTAsIDI1MCwgMTAsIDEwKSwgV2ViVmlld0ltcGw6OkZpbmRJblBh
Z2UsIHNjYWxlLCBzY3JvbGwsIGlzQW5jaG9yKTsKLSAgICBFWFBFQ1RfTkVBUih2aWV3cG9ydFdp
ZHRoIC8gKGZsb2F0KSB3aWRlRGl2LndpZHRoLCBzY2FsZSwgMC4xKTsKLX0KLQogVEVTVF9GKFdl
YkZyYW1lVGVzdCwgRGl2QXV0b1pvb21QYXJhbXNUZXN0Q29tcG9zaXRvclNjYWxpbmcpCiB7CiAg
ICAgcmVnaXN0ZXJNb2NrZWRIdHRwVVJMTG9hZCgiZ2V0X3NjYWxlX2Zvcl9hdXRvX3pvb21faW50
b19kaXZfdGVzdC5odG1sIik7CkBAIC01NjksNDcgKzU0Miw2IEBAIHZvaWQgc2ltdWxhdGVEb3Vi
bGVUYXAoV2ViVmlld0ltcGwqIHdlYlZpZXdJbXBsLCBXZWJQb2ludCYgcG9pbnQsIGZsb2F0JiBz
Y2FsZSkKICAgICBzY2FsZSA9IHdlYlZpZXdJbXBsLT5wYWdlU2NhbGVGYWN0b3IoKTsKIH0KIAot
VEVTVF9GKFdlYkZyYW1lVGVzdCwgRGl2QXV0b1pvb21NdWx0aXBsZURpdnNUZXN0V2ViS2l0U2Nh
bGluZykKLXsKLSAgICByZWdpc3Rlck1vY2tlZEh0dHBVUkxMb2FkKCJnZXRfbXVsdGlwbGVfZGl2
c19mb3JfYXV0b196b29tX3Rlc3QuaHRtbCIpOwotCi0gICAgaW50IHZpZXdwb3J0V2lkdGggPSA2
NDA7Ci0gICAgaW50IHZpZXdwb3J0SGVpZ2h0ID0gNDgwOwotICAgIGZsb2F0IGRvdWJsZVRhcFpv
b21BbHJlYWR5TGVnaWJsZVJhdGlvID0gMS4yZjsKLSAgICBXZWJLaXQ6OldlYlZpZXcqIHdlYlZp
ZXcgPSBGcmFtZVRlc3RIZWxwZXJzOjpjcmVhdGVXZWJWaWV3QW5kTG9hZChtX2Jhc2VVUkwgKyAi
Z2V0X211bHRpcGxlX2RpdnNfZm9yX2F1dG9fem9vbV90ZXN0Lmh0bWwiKTsKLSAgICB3ZWJWaWV3
LT5zZXR0aW5ncygpLT5zZXRBcHBseURldmljZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKGZhbHNl
KTsKLSAgICB3ZWJWaWV3LT5zZXR0aW5ncygpLT5zZXRBcHBseVBhZ2VTY2FsZUZhY3RvckluQ29t
cG9zaXRvcihmYWxzZSk7Ci0gICAgd2ViVmlldy0+ZW5hYmxlRml4ZWRMYXlvdXRNb2RlKHRydWUp
OwotICAgIHdlYlZpZXctPnJlc2l6ZShXZWJTaXplKHZpZXdwb3J0V2lkdGgsIHZpZXdwb3J0SGVp
Z2h0KSk7Ci0gICAgd2ViVmlldy0+c2V0UGFnZVNjYWxlRmFjdG9yTGltaXRzKDEsIDQpOwotICAg
IHdlYlZpZXctPmxheW91dCgpOwotICAgIHdlYlZpZXctPnNldERldmljZVNjYWxlRmFjdG9yKDEu
NWYpOwotCi0gICAgV2ViVmlld0ltcGwqIHdlYlZpZXdJbXBsID0gc3RhdGljX2Nhc3Q8V2ViVmll
d0ltcGwqPih3ZWJWaWV3KTsKLSAgICB3ZWJWaWV3SW1wbC0+c2hvdWxkVXNlQW5pbWF0ZURvdWJs
ZVRhcFRpbWVaZXJvRm9yVGVzdGluZyh0cnVlKTsKLQotICAgIFdlYlJlY3QgdG9wRGl2KDIwMCwg
MTAwLCAyMDAsIDE1MCk7Ci0gICAgV2ViUmVjdCBib3R0b21EaXYoMjAwLCAzMDAsIDIwMCwgMTUw
KTsKLSAgICBXZWJQb2ludCB0b3BQb2ludCh0b3BEaXYueCArIDUwLCB0b3BEaXYueSArIDUwKTsK
LSAgICBXZWJQb2ludCBib3R0b21Qb2ludChib3R0b21EaXYueCArIDUwLCBib3R0b21EaXYueSAr
IDUwKTsKLSAgICBmbG9hdCBzY2FsZTsKLSAgICBzZXRTY2FsZUFuZFNjcm9sbEFuZExheW91dCh3
ZWJWaWV3SW1wbCwgV2ViUG9pbnQoMCwgMCksICh3ZWJWaWV3SW1wbC0+bWluaW11bVBhZ2VTY2Fs
ZUZhY3RvcigpKSAqICgxICsgZG91YmxlVGFwWm9vbUFscmVhZHlMZWdpYmxlUmF0aW8pIC8gMik7
Ci0KLSAgICAvLyBUZXN0IGRvdWJsZSB0YXAgb24gdHdvIGRpZmZlcmVudCBkaXZzCi0gICAgLy8g
QWZ0ZXIgZmlyc3Qgem9vbSwgd2Ugc2hvdWxkIGdvIGJhY2sgdG8gbWluaW11bSBwYWdlIHNjYWxl
IHdpdGggYSBzZWNvbmQgZG91YmxlIHRhcC4KLSAgICBzaW11bGF0ZURvdWJsZVRhcCh3ZWJWaWV3
SW1wbCwgdG9wUG9pbnQsIHNjYWxlKTsKLSAgICBFWFBFQ1RfRkxPQVRfRVEod2ViVmlld0ltcGwt
PmRldmljZVNjYWxlRmFjdG9yKCksIHNjYWxlKTsKLSAgICBzaW11bGF0ZURvdWJsZVRhcCh3ZWJW
aWV3SW1wbCwgYm90dG9tUG9pbnQsIHNjYWxlKTsKLSAgICBFWFBFQ1RfRkxPQVRfRVEod2ViVmll
d0ltcGwtPm1pbmltdW1QYWdlU2NhbGVGYWN0b3IoKSwgc2NhbGUpOwotCi0gICAgLy8gSWYgdGhl
IHVzZXIgcGluY2ggem9vbXMgYWZ0ZXIgZG91YmxlIHRhcCwgYSBzZWNvbmQgZG91YmxlIHRhcCBz
aG91bGQgem9vbSBiYWNrIHRvIHRoZSBkaXYuCi0gICAgc2ltdWxhdGVEb3VibGVUYXAod2ViVmll
d0ltcGwsIHRvcFBvaW50LCBzY2FsZSk7Ci0gICAgRVhQRUNUX0ZMT0FUX0VRKHdlYlZpZXdJbXBs
LT5kZXZpY2VTY2FsZUZhY3RvcigpLCBzY2FsZSk7Ci0gICAgd2ViVmlld0ltcGwtPmFwcGx5U2Ny
b2xsQW5kU2NhbGUoV2ViU2l6ZSgpLCAwLjZmKTsKLSAgICBzaW11bGF0ZURvdWJsZVRhcCh3ZWJW
aWV3SW1wbCwgYm90dG9tUG9pbnQsIHNjYWxlKTsKLSAgICBFWFBFQ1RfRkxPQVRfRVEod2ViVmll
dy0+ZGV2aWNlU2NhbGVGYWN0b3IoKSwgc2NhbGUpOwotfQotCiBURVNUX0YoV2ViRnJhbWVUZXN0
LCBEaXZBdXRvWm9vbU11bHRpcGxlRGl2c1Rlc3RDb21wb3NpdG9yU2NhbGluZykKIHsKICAgICBy
ZWdpc3Rlck1vY2tlZEh0dHBVUkxMb2FkKCJnZXRfbXVsdGlwbGVfZGl2c19mb3JfYXV0b196b29t
X3Rlc3QuaHRtbCIpOwpAQCAtNjUzLDY1ICs1ODUsNiBAQCBURVNUX0YoV2ViRnJhbWVUZXN0LCBE
aXZBdXRvWm9vbU11bHRpcGxlRGl2c1Rlc3RDb21wb3NpdG9yU2NhbGluZykKICAgICBFWFBFQ1Rf
RkxPQVRfRVEoMSwgc2NhbGUpOwogfQogCi1URVNUX0YoV2ViRnJhbWVUZXN0LCBEaXZBdXRvWm9v
bVNjYWxlQm91bmRzVGVzdFdlYktpdFNjYWxpbmcpCi17Ci0gICAgcmVnaXN0ZXJNb2NrZWRIdHRw
VVJMTG9hZCgiZ2V0X3NjYWxlX2JvdW5kc19jaGVja19mb3JfYXV0b196b29tX3Rlc3QuaHRtbCIp
OwotCi0gICAgaW50IHZpZXdwb3J0V2lkdGggPSA2NDA7Ci0gICAgaW50IHZpZXdwb3J0SGVpZ2h0
ID0gNDgwOwotICAgIGZsb2F0IGRvdWJsZVRhcFpvb21BbHJlYWR5TGVnaWJsZVJhdGlvID0gMS4y
ZjsKLSAgICBXZWJLaXQ6OldlYlZpZXcqIHdlYlZpZXcgPSBGcmFtZVRlc3RIZWxwZXJzOjpjcmVh
dGVXZWJWaWV3QW5kTG9hZChtX2Jhc2VVUkwgKyAiZ2V0X3NjYWxlX2JvdW5kc19jaGVja19mb3Jf
YXV0b196b29tX3Rlc3QuaHRtbCIpOwotICAgIHdlYlZpZXctPnNldHRpbmdzKCktPnNldEFwcGx5
RGV2aWNlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoZmFsc2UpOwotICAgIHdlYlZpZXctPnNldHRp
bmdzKCktPnNldEFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKGZhbHNlKTsKLSAgICB3
ZWJWaWV3LT5lbmFibGVGaXhlZExheW91dE1vZGUodHJ1ZSk7Ci0gICAgd2ViVmlldy0+cmVzaXpl
KFdlYlNpemUodmlld3BvcnRXaWR0aCwgdmlld3BvcnRIZWlnaHQpKTsKLSAgICB3ZWJWaWV3LT5z
ZXRQYWdlU2NhbGVGYWN0b3JMaW1pdHMoMSwgNCk7Ci0gICAgd2ViVmlldy0+bGF5b3V0KCk7Ci0K
LSAgICBXZWJWaWV3SW1wbCogd2ViVmlld0ltcGwgPSBzdGF0aWNfY2FzdDxXZWJWaWV3SW1wbCo+
KHdlYlZpZXcpOwotICAgIHdlYlZpZXdJbXBsLT5zaG91bGRVc2VBbmltYXRlRG91YmxlVGFwVGlt
ZVplcm9Gb3JUZXN0aW5nKHRydWUpOwotICAgIGZsb2F0IGRvdWJsZVRhcFpvb21BbHJlYWR5TGVn
aWJsZVNjYWxlID0gd2ViVmlld0ltcGwtPm1pbmltdW1QYWdlU2NhbGVGYWN0b3IoKSAqIGRvdWJs
ZVRhcFpvb21BbHJlYWR5TGVnaWJsZVJhdGlvOwotCi0gICAgV2ViUmVjdCBkaXYoMjAwLCAxMDAs
IDIwMCwgMTUwKTsKLSAgICBXZWJQb2ludCBkb3VibGVUYXBQb2ludChkaXYueCArIDUwLCBkaXYu
eSArIDUwKTsKLSAgICBmbG9hdCBzY2FsZTsKLQotICAgIC8vIFRlc3QgZG91YmxlIHRhcCBzY2Fs
ZSBib3VuZHMuCi0gICAgLy8gbWluaW11bVBhZ2VTY2FsZSA8IGRvdWJsZVRhcFpvb21BbHJlYWR5
TGVnaWJsZVNjYWxlIDwgZGV2aWNlRHBpU2NhbGUKLSAgICB3ZWJWaWV3SW1wbC0+c2V0RGV2aWNl
U2NhbGVGYWN0b3IoMS41Zik7Ci0gICAgc2V0U2NhbGVBbmRTY3JvbGxBbmRMYXlvdXQod2ViVmll
d0ltcGwsIFdlYlBvaW50KDAsIDApLCAod2ViVmlld0ltcGwtPm1pbmltdW1QYWdlU2NhbGVGYWN0
b3IoKSkgKiAoMSArIGRvdWJsZVRhcFpvb21BbHJlYWR5TGVnaWJsZVJhdGlvKSAvIDIpOwotICAg
IHNpbXVsYXRlRG91YmxlVGFwKHdlYlZpZXdJbXBsLCBkb3VibGVUYXBQb2ludCwgc2NhbGUpOwot
ICAgIEVYUEVDVF9GTE9BVF9FUSh3ZWJWaWV3SW1wbC0+ZGV2aWNlU2NhbGVGYWN0b3IoKSwgc2Nh
bGUpOwotICAgIHNpbXVsYXRlRG91YmxlVGFwKHdlYlZpZXdJbXBsLCBkb3VibGVUYXBQb2ludCwg
c2NhbGUpOwotICAgIEVYUEVDVF9GTE9BVF9FUSh3ZWJWaWV3SW1wbC0+bWluaW11bVBhZ2VTY2Fs
ZUZhY3RvcigpLCBzY2FsZSk7Ci0gICAgc2ltdWxhdGVEb3VibGVUYXAod2ViVmlld0ltcGwsIGRv
dWJsZVRhcFBvaW50LCBzY2FsZSk7Ci0gICAgRVhQRUNUX0ZMT0FUX0VRKHdlYlZpZXdJbXBsLT5k
ZXZpY2VTY2FsZUZhY3RvcigpLCBzY2FsZSk7Ci0KLSAgICAvLyBab29tIGluIHRvIHJlc2V0IGRv
dWJsZV90YXBfem9vbV9pbl9lZmZlY3QgZmxhZy4KLSAgICB3ZWJWaWV3SW1wbC0+YXBwbHlTY3Jv
bGxBbmRTY2FsZShXZWJTaXplKCksIDEuMWYpOwotICAgIC8vIGRldmljZURwaVNjYWxlIDwgbWlu
aW11bVBhZ2VTY2FsZSA8IGRvdWJsZVRhcFpvb21BbHJlYWR5TGVnaWJsZVNjYWxlCi0gICAgd2Vi
Vmlld0ltcGwtPnNldERldmljZVNjYWxlRmFjdG9yKDAuNWYpOwotICAgIHNldFNjYWxlQW5kU2Ny
b2xsQW5kTGF5b3V0KHdlYlZpZXdJbXBsLCBXZWJQb2ludCgwLCAwKSwgKHdlYlZpZXdJbXBsLT5t
aW5pbXVtUGFnZVNjYWxlRmFjdG9yKCkpICogKDEgKyBkb3VibGVUYXBab29tQWxyZWFkeUxlZ2li
bGVSYXRpbykgLyAyKTsKLSAgICBzaW11bGF0ZURvdWJsZVRhcCh3ZWJWaWV3SW1wbCwgZG91Ymxl
VGFwUG9pbnQsIHNjYWxlKTsKLSAgICBFWFBFQ1RfRkxPQVRfRVEod2ViVmlld0ltcGwtPm1pbmlt
dW1QYWdlU2NhbGVGYWN0b3IoKSwgc2NhbGUpOwotICAgIHNpbXVsYXRlRG91YmxlVGFwKHdlYlZp
ZXdJbXBsLCBkb3VibGVUYXBQb2ludCwgc2NhbGUpOwotICAgIEVYUEVDVF9GTE9BVF9FUShkb3Vi
bGVUYXBab29tQWxyZWFkeUxlZ2libGVTY2FsZSwgc2NhbGUpOwotICAgIHNpbXVsYXRlRG91Ymxl
VGFwKHdlYlZpZXdJbXBsLCBkb3VibGVUYXBQb2ludCwgc2NhbGUpOwotICAgIEVYUEVDVF9GTE9B
VF9FUSh3ZWJWaWV3SW1wbC0+bWluaW11bVBhZ2VTY2FsZUZhY3RvcigpLCBzY2FsZSk7Ci0KLSAg
ICAvLyBab29tIGluIHRvIHJlc2V0IGRvdWJsZV90YXBfem9vbV9pbl9lZmZlY3QgZmxhZy4KLSAg
ICB3ZWJWaWV3SW1wbC0+YXBwbHlTY3JvbGxBbmRTY2FsZShXZWJTaXplKCksIDEuMWYpOwotICAg
IC8vIG1pbmltdW1QYWdlU2NhbGUgPCBkZXZpY2VEcGlTY2FsZSA8IGRvdWJsZVRhcFpvb21BbHJl
YWR5TGVnaWJsZVNjYWxlCi0gICAgd2ViVmlld0ltcGwtPnNldERldmljZVNjYWxlRmFjdG9yKDEu
MWYpOwotICAgIHNldFNjYWxlQW5kU2Nyb2xsQW5kTGF5b3V0KHdlYlZpZXdJbXBsLCBXZWJQb2lu
dCgwLCAwKSwgKHdlYlZpZXdJbXBsLT5taW5pbXVtUGFnZVNjYWxlRmFjdG9yKCkpICogKDEgKyBk
b3VibGVUYXBab29tQWxyZWFkeUxlZ2libGVSYXRpbykgLyAyKTsKLSAgICBzaW11bGF0ZURvdWJs
ZVRhcCh3ZWJWaWV3SW1wbCwgZG91YmxlVGFwUG9pbnQsIHNjYWxlKTsKLSAgICBFWFBFQ1RfRkxP
QVRfRVEod2ViVmlld0ltcGwtPm1pbmltdW1QYWdlU2NhbGVGYWN0b3IoKSwgc2NhbGUpOwotICAg
IHNpbXVsYXRlRG91YmxlVGFwKHdlYlZpZXdJbXBsLCBkb3VibGVUYXBQb2ludCwgc2NhbGUpOwot
ICAgIEVYUEVDVF9GTE9BVF9FUShkb3VibGVUYXBab29tQWxyZWFkeUxlZ2libGVTY2FsZSwgc2Nh
bGUpOwotICAgIHNpbXVsYXRlRG91YmxlVGFwKHdlYlZpZXdJbXBsLCBkb3VibGVUYXBQb2ludCwg
c2NhbGUpOwotICAgIEVYUEVDVF9GTE9BVF9FUSh3ZWJWaWV3SW1wbC0+bWluaW11bVBhZ2VTY2Fs
ZUZhY3RvcigpLCBzY2FsZSk7Ci19Ci0KIFRFU1RfRihXZWJGcmFtZVRlc3QsIERpdkF1dG9ab29t
U2NhbGVCb3VuZHNUZXN0Q29tcG9zaXRvclNjYWxpbmcpCiB7CiAgICAgcmVnaXN0ZXJNb2NrZWRI
dHRwVVJMTG9hZCgiZ2V0X3NjYWxlX2JvdW5kc19jaGVja19mb3JfYXV0b196b29tX3Rlc3QuaHRt
bCIpOwpAQCAtNzc0LDgzICs2NDcsNiBAQCBURVNUX0YoV2ViRnJhbWVUZXN0LCBEaXZBdXRvWm9v
bVNjYWxlQm91bmRzVGVzdENvbXBvc2l0b3JTY2FsaW5nKQogfQogCiAjaWYgRU5BQkxFKFRFWFRf
QVVUT1NJWklORykKLVRFU1RfRihXZWJGcmFtZVRlc3QsIERpdkF1dG9ab29tU2NhbGVGb250U2Nh
bGVGYWN0b3JUZXN0V2ViS2l0U2NhbGluZykKLXsKLSAgICByZWdpc3Rlck1vY2tlZEh0dHBVUkxM
b2FkKCJnZXRfc2NhbGVfYm91bmRzX2NoZWNrX2Zvcl9hdXRvX3pvb21fdGVzdC5odG1sIik7Ci0K
LSAgICBpbnQgdmlld3BvcnRXaWR0aCA9IDY0MDsKLSAgICBpbnQgdmlld3BvcnRIZWlnaHQgPSA0
ODA7Ci0gICAgZmxvYXQgZG91YmxlVGFwWm9vbUFscmVhZHlMZWdpYmxlUmF0aW8gPSAxLjJmOwot
ICAgIGZsb2F0IHRleHRBdXRvc2l6aW5nRm9udFNjYWxlRmFjdG9yID0gMS4xM2Y7Ci0gICAgV2Vi
S2l0OjpXZWJWaWV3KiB3ZWJWaWV3ID0gRnJhbWVUZXN0SGVscGVyczo6Y3JlYXRlV2ViVmlld0Fu
ZExvYWQobV9iYXNlVVJMICsgImdldF9zY2FsZV9ib3VuZHNfY2hlY2tfZm9yX2F1dG9fem9vbV90
ZXN0Lmh0bWwiKTsKLSAgICB3ZWJWaWV3LT5zZXR0aW5ncygpLT5zZXRBcHBseURldmljZVNjYWxl
RmFjdG9ySW5Db21wb3NpdG9yKGZhbHNlKTsKLSAgICB3ZWJWaWV3LT5zZXR0aW5ncygpLT5zZXRB
cHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcihmYWxzZSk7Ci0gICAgd2ViVmlldy0+ZW5h
YmxlRml4ZWRMYXlvdXRNb2RlKHRydWUpOwotICAgIHdlYlZpZXctPnJlc2l6ZShXZWJTaXplKHZp
ZXdwb3J0V2lkdGgsIHZpZXdwb3J0SGVpZ2h0KSk7Ci0gICAgd2ViVmlldy0+c2V0UGFnZVNjYWxl
RmFjdG9yTGltaXRzKDEsIDQpOwotICAgIHdlYlZpZXctPmxheW91dCgpOwotCi0gICAgV2ViVmll
d0ltcGwqIHdlYlZpZXdJbXBsID0gc3RhdGljX2Nhc3Q8V2ViVmlld0ltcGwqPih3ZWJWaWV3KTsK
LSAgICB3ZWJWaWV3SW1wbC0+c2hvdWxkVXNlQW5pbWF0ZURvdWJsZVRhcFRpbWVaZXJvRm9yVGVz
dGluZyh0cnVlKTsKLSAgICB3ZWJWaWV3SW1wbC0+cGFnZSgpLT5zZXR0aW5ncygpLT5zZXRUZXh0
QXV0b3NpemluZ0ZvbnRTY2FsZUZhY3Rvcih0ZXh0QXV0b3NpemluZ0ZvbnRTY2FsZUZhY3Rvcik7
Ci0gICAgZmxvYXQgZG91YmxlVGFwWm9vbUFscmVhZHlMZWdpYmxlU2NhbGUgPSB3ZWJWaWV3SW1w
bC0+bWluaW11bVBhZ2VTY2FsZUZhY3RvcigpICogZG91YmxlVGFwWm9vbUFscmVhZHlMZWdpYmxl
UmF0aW87Ci0KLSAgICBXZWJSZWN0IGRpdigyMDAsIDEwMCwgMjAwLCAxNTApOwotICAgIFdlYlBv
aW50IGRvdWJsZVRhcFBvaW50KGRpdi54ICsgNTAsIGRpdi55ICsgNTApOwotICAgIGZsb2F0IHNj
YWxlOwotCi0gICAgLy8gVGVzdCBkb3VibGUgdGFwIHNjYWxlIGJvdW5kcy4KLSAgICAvLyBtaW5p
bXVtUGFnZVNjYWxlIDwgZG91YmxlVGFwWm9vbUFscmVhZHlMZWdpYmxlU2NhbGUgPCBkZXZpY2VE
cGlTY2FsZSA8IGRldmljZURwaVNjYWxlICogdGV4dEF1dG9zaXppbmdGb250U2NhbGVGYWN0b3IK
LSAgICB3ZWJWaWV3SW1wbC0+c2V0RGV2aWNlU2NhbGVGYWN0b3IoMS41Zik7Ci0gICAgZmxvYXQg
bGVnaWJsZVNjYWxlID0gd2ViVmlld0ltcGwtPmRldmljZVNjYWxlRmFjdG9yKCkgKiB0ZXh0QXV0
b3NpemluZ0ZvbnRTY2FsZUZhY3RvcjsKLSAgICBzZXRTY2FsZUFuZFNjcm9sbEFuZExheW91dCh3
ZWJWaWV3SW1wbCwgV2ViUG9pbnQoMCwgMCksICh3ZWJWaWV3SW1wbC0+bWluaW11bVBhZ2VTY2Fs
ZUZhY3RvcigpKSAqICgxICsgZG91YmxlVGFwWm9vbUFscmVhZHlMZWdpYmxlUmF0aW8pIC8gMik7
Ci0gICAgc2ltdWxhdGVEb3VibGVUYXAod2ViVmlld0ltcGwsIGRvdWJsZVRhcFBvaW50LCBzY2Fs
ZSk7Ci0gICAgRVhQRUNUX0ZMT0FUX0VRKGxlZ2libGVTY2FsZSwgc2NhbGUpOwotICAgIHNpbXVs
YXRlRG91YmxlVGFwKHdlYlZpZXdJbXBsLCBkb3VibGVUYXBQb2ludCwgc2NhbGUpOwotICAgIEVY
UEVDVF9GTE9BVF9FUSh3ZWJWaWV3SW1wbC0+bWluaW11bVBhZ2VTY2FsZUZhY3RvcigpLCBzY2Fs
ZSk7Ci0gICAgc2ltdWxhdGVEb3VibGVUYXAod2ViVmlld0ltcGwsIGRvdWJsZVRhcFBvaW50LCBz
Y2FsZSk7Ci0gICAgRVhQRUNUX0ZMT0FUX0VRKGxlZ2libGVTY2FsZSwgc2NhbGUpOwotCi0gICAg
Ly8gWm9vbSBpbiB0byByZXNldCBkb3VibGVfdGFwX3pvb21faW5fZWZmZWN0IGZsYWcuCi0gICAg
d2ViVmlld0ltcGwtPmFwcGx5U2Nyb2xsQW5kU2NhbGUoV2ViU2l6ZSgpLCAxLjFmKTsKLSAgICAv
LyBkZXZpY2VEcGlTY2FsZSA8IGRldmljZURwaVNjYWxlICogdGV4dEF1dG9zaXppbmdGb250U2Nh
bGVGYWN0b3IgPCBtaW5pbXVtUGFnZVNjYWxlIDwgZG91YmxlVGFwWm9vbUFscmVhZHlMZWdpYmxl
U2NhbGUKLSAgICB3ZWJWaWV3SW1wbC0+c2V0RGV2aWNlU2NhbGVGYWN0b3IoMC41Zik7Ci0gICAg
bGVnaWJsZVNjYWxlID0gd2ViVmlld0ltcGwtPmRldmljZVNjYWxlRmFjdG9yKCkgKiB0ZXh0QXV0
b3NpemluZ0ZvbnRTY2FsZUZhY3RvcjsKLSAgICBzZXRTY2FsZUFuZFNjcm9sbEFuZExheW91dCh3
ZWJWaWV3SW1wbCwgV2ViUG9pbnQoMCwgMCksICh3ZWJWaWV3SW1wbC0+bWluaW11bVBhZ2VTY2Fs
ZUZhY3RvcigpKSAqICgxICsgZG91YmxlVGFwWm9vbUFscmVhZHlMZWdpYmxlUmF0aW8pIC8gMik7
Ci0gICAgc2ltdWxhdGVEb3VibGVUYXAod2ViVmlld0ltcGwsIGRvdWJsZVRhcFBvaW50LCBzY2Fs
ZSk7Ci0gICAgRVhQRUNUX0ZMT0FUX0VRKHdlYlZpZXdJbXBsLT5taW5pbXVtUGFnZVNjYWxlRmFj
dG9yKCksIHNjYWxlKTsKLSAgICBzaW11bGF0ZURvdWJsZVRhcCh3ZWJWaWV3SW1wbCwgZG91Ymxl
VGFwUG9pbnQsIHNjYWxlKTsKLSAgICBFWFBFQ1RfRkxPQVRfRVEoZG91YmxlVGFwWm9vbUFscmVh
ZHlMZWdpYmxlU2NhbGUsIHNjYWxlKTsKLSAgICBzaW11bGF0ZURvdWJsZVRhcCh3ZWJWaWV3SW1w
bCwgZG91YmxlVGFwUG9pbnQsIHNjYWxlKTsKLSAgICBFWFBFQ1RfRkxPQVRfRVEod2ViVmlld0lt
cGwtPm1pbmltdW1QYWdlU2NhbGVGYWN0b3IoKSwgc2NhbGUpOwotCi0gICAgLy8gWm9vbSBpbiB0
byByZXNldCBkb3VibGVfdGFwX3pvb21faW5fZWZmZWN0IGZsYWcuCi0gICAgd2ViVmlld0ltcGwt
PmFwcGx5U2Nyb2xsQW5kU2NhbGUoV2ViU2l6ZSgpLCAxLjFmKTsKLSAgICAvLyBtaW5pbXVtUGFn
ZVNjYWxlIDwgZGV2aWNlRHBpU2NhbGUgPCBkZXZpY2VEcGlTY2FsZSAqIHRleHRBdXRvc2l6aW5n
Rm9udFNjYWxlRmFjdG9yIDwgZG91YmxlVGFwWm9vbUFscmVhZHlMZWdpYmxlU2NhbGUKLSAgICB3
ZWJWaWV3SW1wbC0+c2V0RGV2aWNlU2NhbGVGYWN0b3IoMS4wNWYpOwotICAgIGxlZ2libGVTY2Fs
ZSA9IHdlYlZpZXdJbXBsLT5kZXZpY2VTY2FsZUZhY3RvcigpICogdGV4dEF1dG9zaXppbmdGb250
U2NhbGVGYWN0b3I7Ci0gICAgc2V0U2NhbGVBbmRTY3JvbGxBbmRMYXlvdXQod2ViVmlld0ltcGws
IFdlYlBvaW50KDAsIDApLCAod2ViVmlld0ltcGwtPm1pbmltdW1QYWdlU2NhbGVGYWN0b3IoKSkg
KiAoMSArIGRvdWJsZVRhcFpvb21BbHJlYWR5TGVnaWJsZVJhdGlvKSAvIDIpOwotICAgIHNpbXVs
YXRlRG91YmxlVGFwKHdlYlZpZXdJbXBsLCBkb3VibGVUYXBQb2ludCwgc2NhbGUpOwotICAgIEVY
UEVDVF9GTE9BVF9FUSh3ZWJWaWV3SW1wbC0+bWluaW11bVBhZ2VTY2FsZUZhY3RvcigpLCBzY2Fs
ZSk7Ci0gICAgc2ltdWxhdGVEb3VibGVUYXAod2ViVmlld0ltcGwsIGRvdWJsZVRhcFBvaW50LCBz
Y2FsZSk7Ci0gICAgRVhQRUNUX0ZMT0FUX0VRKGRvdWJsZVRhcFpvb21BbHJlYWR5TGVnaWJsZVNj
YWxlLCBzY2FsZSk7Ci0gICAgc2ltdWxhdGVEb3VibGVUYXAod2ViVmlld0ltcGwsIGRvdWJsZVRh
cFBvaW50LCBzY2FsZSk7Ci0gICAgRVhQRUNUX0ZMT0FUX0VRKHdlYlZpZXdJbXBsLT5taW5pbXVt
UGFnZVNjYWxlRmFjdG9yKCksIHNjYWxlKTsKLQotICAgIC8vIFpvb20gaW4gdG8gcmVzZXQgZG91
YmxlX3RhcF96b29tX2luX2VmZmVjdCBmbGFnLgotICAgIHdlYlZpZXdJbXBsLT5hcHBseVNjcm9s
bEFuZFNjYWxlKFdlYlNpemUoKSwgMS4xZik7Ci0gICAgLy8gbWluaW11bVBhZ2VTY2FsZSA8IGRl
dmljZURwaVNjYWxlIDwgZG91YmxlVGFwWm9vbUFscmVhZHlMZWdpYmxlU2NhbGUgPCBkZXZpY2VE
cGlTY2FsZSAqIHRleHRBdXRvc2l6aW5nRm9udFNjYWxlRmFjdG9yCi0gICAgd2ViVmlld0ltcGwt
PnNldERldmljZVNjYWxlRmFjdG9yKDEuMWYpOwotICAgIGxlZ2libGVTY2FsZSA9IHdlYlZpZXdJ
bXBsLT5kZXZpY2VTY2FsZUZhY3RvcigpICogdGV4dEF1dG9zaXppbmdGb250U2NhbGVGYWN0b3I7
Ci0gICAgc2V0U2NhbGVBbmRTY3JvbGxBbmRMYXlvdXQod2ViVmlld0ltcGwsIFdlYlBvaW50KDAs
IDApLCAod2ViVmlld0ltcGwtPm1pbmltdW1QYWdlU2NhbGVGYWN0b3IoKSkgKiAoMSArIGRvdWJs
ZVRhcFpvb21BbHJlYWR5TGVnaWJsZVJhdGlvKSAvIDIpOwotICAgIHNpbXVsYXRlRG91YmxlVGFw
KHdlYlZpZXdJbXBsLCBkb3VibGVUYXBQb2ludCwgc2NhbGUpOwotICAgIEVYUEVDVF9GTE9BVF9F
UShsZWdpYmxlU2NhbGUsIHNjYWxlKTsKLSAgICBzaW11bGF0ZURvdWJsZVRhcCh3ZWJWaWV3SW1w
bCwgZG91YmxlVGFwUG9pbnQsIHNjYWxlKTsKLSAgICBFWFBFQ1RfRkxPQVRfRVEod2ViVmlld0lt
cGwtPm1pbmltdW1QYWdlU2NhbGVGYWN0b3IoKSwgc2NhbGUpOwotICAgIHNpbXVsYXRlRG91Ymxl
VGFwKHdlYlZpZXdJbXBsLCBkb3VibGVUYXBQb2ludCwgc2NhbGUpOwotICAgIEVYUEVDVF9GTE9B
VF9FUShsZWdpYmxlU2NhbGUsIHNjYWxlKTsKLX0KLQogVEVTVF9GKFdlYkZyYW1lVGVzdCwgRGl2
QXV0b1pvb21TY2FsZUZvbnRTY2FsZUZhY3RvclRlc3RDb21wb3NpdG9yU2NhbGluZykKIHsKICAg
ICByZWdpc3Rlck1vY2tlZEh0dHBVUkxMb2FkKCJnZXRfc2NhbGVfYm91bmRzX2NoZWNrX2Zvcl9h
dXRvX3pvb21fdGVzdC5odG1sIik7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>