<?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>119067</bug_id>
          
          <creation_ts>2013-07-24 15:48:09 -0700</creation_ts>
          <short_desc>CoordinatedGraphics: Add API to get and set the active state of a WebView</short_desc>
          <delta_ts>2013-07-31 07:02:15 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Sergio Correia (qrwteyrutiyoup)">sergio</reporter>
          <assigned_to name="Sergio Correia (qrwteyrutiyoup)">sergio</assigned_to>
          <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>luiz</cc>
    
    <cc>noam</cc>
    
    <cc>rakuco</cc>
    
    <cc>tonikitoo</cc>
    
    <cc>zeno</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>911448</commentid>
    <comment_count>0</comment_count>
    <who name="Sergio Correia (qrwteyrutiyoup)">sergio</who>
    <bug_when>2013-07-24 15:48:09 -0700</bug_when>
    <thetext>Add API for getting and setting the active state of a CoordinatedGraphicsScene</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>911450</commentid>
    <comment_count>1</comment_count>
      <attachid>207416</attachid>
    <who name="Sergio Correia (qrwteyrutiyoup)">sergio</who>
    <bug_when>2013-07-24 15:50:32 -0700</bug_when>
    <thetext>Created attachment 207416
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>911451</commentid>
    <comment_count>2</comment_count>
    <who name="Sergio Correia (qrwteyrutiyoup)">sergio</who>
    <bug_when>2013-07-24 15:52:13 -0700</bug_when>
    <thetext>A view being in the &quot;active&quot; state generally means that it is not in the
&quot;background&quot;, although this definition can vary depending on the platform
under consideration.

This patch adds the following APIs:
- bool WKCoordinatedSceneIsActive(WKCoordinatedScene)
This API accepts a WKCoordinatedScene as parameter and returns a boolean
indicating whether the given scene is active.

- void WKCoordinatedSceneSetActive(WKCoordinatedScene, bool)
This API accepts a WKCoordinatedScene and a boolean as parameter, and it
sets the active state of given scene to the boolean argument.

Additionally, this patch adds enablers to get the WKCoordinatedScene from
a WKView.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>911621</commentid>
    <comment_count>3</comment_count>
      <attachid>207416</attachid>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2013-07-25 08:21:11 -0700</bug_when>
    <thetext>Comment on attachment 207416
Patch

This doesn&apos;t belong in WKCoordinatedScene, as it needs to send a message to WebPageProxy/WebPage as well (something like viewStateDidChange), so that the focus controller is aware of the page being deactivated. See how it&apos;s done in QRawWebView or QQuickWebPage|View.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>912481</commentid>
    <comment_count>4</comment_count>
      <attachid>207651</attachid>
    <who name="Sergio Correia (qrwteyrutiyoup)">sergio</who>
    <bug_when>2013-07-29 07:15:03 -0700</bug_when>
    <thetext>Created attachment 207651
Patch

Updated as per Noam&apos;s feedback.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>912485</commentid>
    <comment_count>5</comment_count>
      <attachid>207651</attachid>
    <who name="Mikhail Pozdnyakov">mikhail.pozdnyakov</who>
    <bug_when>2013-07-29 07:20:40 -0700</bug_when>
    <thetext>Comment on attachment 207651
Patch

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

looks good

&gt; Source/WebKit2/UIProcess/CoordinatedGraphics/WebView.h:60
&gt; +    bool isActive();

const method?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>912493</commentid>
    <comment_count>6</comment_count>
      <attachid>207651</attachid>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2013-07-29 07:29:39 -0700</bug_when>
    <thetext>Comment on attachment 207651
Patch

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

&gt;&gt; Source/WebKit2/UIProcess/CoordinatedGraphics/WebView.h:60
&gt;&gt; +    bool isActive();
&gt; 
&gt; const method?

Please make const before submitting.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>912505</commentid>
    <comment_count>7</comment_count>
      <attachid>207659</attachid>
    <who name="Sergio Correia (qrwteyrutiyoup)">sergio</who>
    <bug_when>2013-07-29 08:38:03 -0700</bug_when>
    <thetext>Created attachment 207659
Patch

Marking WebView::isActive() const</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>912515</commentid>
    <comment_count>8</comment_count>
      <attachid>207659</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-07-29 09:23:57 -0700</bug_when>
    <thetext>Comment on attachment 207659
Patch

Clearing flags on attachment: 207659

Committed r153428: &lt;http://trac.webkit.org/changeset/153428&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>207416</attachid>
            <date>2013-07-24 15:50:32 -0700</date>
            <delta_ts>2013-07-29 07:14:56 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-119067-20130724185029.patch</filename>
            <type>text/plain</type>
            <size>18748</size>
            <attacher name="Sergio Correia (qrwteyrutiyoup)">sergio</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUzMDg5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMmI3MzkzMDc3ZDY4ZWE2
MzhmNGMyMDViYmQ5OWRjOGIyMzcxMWZjNi4uYmQ1Y2M2ZTNlNmIzMTZmM2JlNjA3ZTZjZjk0YzU1
YWIyOTk2MTI0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDEzLTA3LTI0ICBTZXJn
aW8gQ29ycmVpYSAgPHNlcmdpby5jb3JyZWlhQG9wZW5ib3NzYS5vcmc+CisKKyAgICAgICAgQWRk
IEFQSSBmb3IgZ2V0dGluZyBhbmQgc2V0dGluZyB0aGUgYWN0aXZlIHN0YXRlIG9mIGEgQ29vcmRp
bmF0ZWRHcmFwaGljc1NjZW5lCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMTkwNjcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBBZGRlZCBhIG1ldGhvZCB0byByZXR1cm4gd2hldGhlciBhIHNjZW5lIGlzIGFj
dGl2ZSBvciBub3QuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCBubyBiZWhhdmlvciBjaGFuZ2Uu
CisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRp
bmF0ZWRHcmFwaGljc1NjZW5lLmg6CisgICAgICAgIChXZWJDb3JlOjpDb29yZGluYXRlZEdyYXBo
aWNzU2NlbmU6OmlzQWN0aXZlKTogQWRkZWQgbWV0aG9kIHRvIHJldHVybiB3aGV0aGVyCisgICAg
ICAgIGEgc2NlbmUgaXMgYWN0aXZlIG9yIG5vdC4KKwogMjAxMy0wNy0yNCAgUm9iZXJ0IEhvZ2Fu
ICA8cm9iZXJ0QHdlYmtpdC5vcmc+CiAKICAgICAgICAgQm9yZGVyIGRyYXdpbmcgaW5jb3JyZWN0
IHdoZW4gdXNpbmcgYm90aCBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlIGFuZCBvdmVyZmxvdzog
aGlkZGVuIG9uIGEgdGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBi
L1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCA5M2VkNTQzZjQ5OTI3MDdkMzkwNTU5YTVh
MmI1MTA5MzY4MGFmMTlmLi4xYzJhZTJlZGQ3NzNmMWEzNGQ3MTdkZmY2N2MwN2IzNGEyMDRkMGVj
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktp
dDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzcgQEAKKzIwMTMtMDctMjQgIFNlcmdpbyBDb3JyZWlh
ICA8c2VyZ2lvLmNvcnJlaWFAb3BlbmJvc3NhLm9yZz4KKworICAgICAgICBBZGQgQVBJIGZvciBn
ZXR0aW5nIGFuZCBzZXR0aW5nIHRoZSBhY3RpdmUgc3RhdGUgb2YgYSBDb29yZGluYXRlZEdyYXBo
aWNzU2NlbmUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTExOTA2NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEEgdmlldyBiZWluZyBpbiB0aGUgImFjdGl2ZSIgc3RhdGUgZ2VuZXJhbGx5IG1lYW5zIHRoYXQg
aXQgaXMgbm90IGluIHRoZQorICAgICAgICAiYmFja2dyb3VuZCIsIGFsdGhvdWdoIHRoaXMgZGVm
aW5pdGlvbiBjYW4gdmFyeSBkZXBlbmRpbmcgb24gdGhlIHBsYXRmb3JtCisgICAgICAgIHVuZGVy
IGNvbnNpZGVyYXRpb24uCisKKyAgICAgICAgVGhpcyBwYXRjaCBhZGRzIHRoZSBmb2xsb3dpbmcg
QVBJczoKKyAgICAgICAgLSBib29sIFdLQ29vcmRpbmF0ZWRTY2VuZUlzQWN0aXZlKFdLQ29vcmRp
bmF0ZWRTY2VuZSkKKyAgICAgICAgICBUaGlzIEFQSSBhY2NlcHRzIGEgV0tDb29yZGluYXRlZFNj
ZW5lIGFzIHBhcmFtZXRlciBhbmQgcmV0dXJucyBhIGJvb2xlYW4KKyAgICAgICAgICBpbmRpY2F0
aW5nIHdoZXRoZXIgdGhlIGdpdmVuIHNjZW5lIGlzIGFjdGl2ZS4KKworICAgICAgICAtIHZvaWQg
V0tDb29yZGluYXRlZFNjZW5lU2V0QWN0aXZlKFdLQ29vcmRpbmF0ZWRTY2VuZSwgYm9vbCkKKyAg
ICAgICAgICBUaGlzIEFQSSBhY2NlcHRzIGEgV0tDb29yZGluYXRlZFNjZW5lIGFuZCBhIGJvb2xl
YW4gYXMgcGFyYW1ldGVyLCBhbmQgaXQKKyAgICAgICAgICBzZXRzIHRoZSBhY3RpdmUgc3RhdGUg
b2YgZ2l2ZW4gc2NlbmUgdG8gdGhlIGJvb2xlYW4gYXJndW1lbnQuCisKKyAgICAgICAgQWRkaXRp
b25hbGx5LCB0aGlzIHBhdGNoIGFkZHMgZW5hYmxlcnMgdG8gZ2V0IHRoZSBXS0Nvb3JkaW5hdGVk
U2NlbmUgZnJvbQorICAgICAgICBhIFdLVmlldy4KKworICAgICAgICAqIFVJUHJvY2Vzcy9BUEkv
Qy9Db29yZGluYXRlZEdyYXBoaWNzL1dLVmlldy5jcHA6CisgICAgICAgIChXS1ZpZXdHZXRDb29y
ZGluYXRlZFNjZW5lKTogTWV0aG9kIHRvIHJldHVybiB0aGUgY29vcmRpbmF0ZWQgc2NlbmUgZnJv
bSBhIHZpZXcuCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9DL0Nvb3JkaW5hdGVkR3JhcGhpY3Mv
V0tWaWV3Lmg6IEV4cG9ydCBXS1ZpZXdHZXRDb29yZGluYXRlZFNjZW5lLgorICAgICAgICAqIFVJ
UHJvY2Vzcy9BUEkvQ29vcmRpbmF0ZWRHcmFwaGljcy9XS0Nvb3JkaW5hdGVkU2NlbmUuY3BwOgor
ICAgICAgICAoV0tDb29yZGluYXRlZFNjZW5lSXNBY3RpdmUpOiBNZXRob2QgdG8gcmV0dXJuIHRo
ZSBhY3RpdmUgc3RhdGUgb2YgYSB2aWV3LgorICAgICAgICAoV0tDb29yZGluYXRlZFNjZW5lU2V0
QWN0aXZlKTogTWV0aG9kIHRvIGNoYW5nZSB0aGUgYWN0aXZlIHN0YXRlIG9mIGEgdmlldy4KKyAg
ICAgICAgKiBVSVByb2Nlc3MvQVBJL0Nvb3JkaW5hdGVkR3JhcGhpY3MvV0tDb29yZGluYXRlZFNj
ZW5lLmg6IEV4cG9ydCBXS0Nvb3JkaW5hdGVkU2NlbmVJc0FjdGl2ZQorICAgICAgICBhbmQgV0tD
b29yZGluYXRlZFNjZW5lU2V0QWN0aXZlLgorICAgICAgICAqIFVJUHJvY2Vzcy9Db29yZGluYXRl
ZEdyYXBoaWNzL1dlYlZpZXcuaDogTWFrZSBjb29yZGluYXRlZEdyYXBoaWNzU2NlbmUoKSBtZXRo
b2QKKyAgICAgICAgcHVibGljLCBpbnN0ZWFkIG9mIHByb3RlY3RlZC4KKwogMjAxMy0wNy0yNCAg
QW50b24gT2J6aGlyb3YgIDxhLm9iemhpcm92QHNhbXN1bmcuY29tPgogCiAgICAgICAgIFtHVEtd
IFRlc3RJbnNwZWN0b3JTZXJ2ZXIgdW5pdCB0ZXN0IGlzIHRpbWluZyBvdXQKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29y
ZGluYXRlZEdyYXBoaWNzU2NlbmUuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L3RleG1hcC9jb29yZGluYXRlZC9Db29yZGluYXRlZEdyYXBoaWNzU2NlbmUuaAppbmRleCA3ZmE5
MmFkODc1NzQzZTM2MmIxMGQwYWI1YTc1ZGZhNDExOWZiNjgxLi5iZDRiM2Y0MGI4ZDQxMjQ5OTRh
Y2UxMThmODk1MzE1YWIyMDM2YmI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVk
L0Nvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZS5oCkBAIC03OCw2ICs3OCw3IEBAIHB1YmxpYzoKICAg
ICAvLyBDdXJyZW50bHksIFFRdWlja1dlYlBhZ2U6OnVwZGF0ZVBhaW50Tm9kZSgpIGxvY2tzIHRo
ZSBtYWluIHRocmVhZCBiZWZvcmUgY2FsbGluZyBib3RoIG1ldGhvZHMuCiAgICAgdm9pZCBwdXJn
ZUdMUmVzb3VyY2VzKCk7CiAgICAgdm9pZCBzZXRBY3RpdmUoYm9vbCk7CisgICAgYm9vbCBpc0Fj
dGl2ZSgpIGNvbnN0IHsgcmV0dXJuIG1faXNBY3RpdmU7IH0KIAogICAgIHZvaWQgY29tbWl0U2Nl
bmVTdGF0ZShjb25zdCBDb29yZGluYXRlZEdyYXBoaWNzU3RhdGUmKTsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL0Nvb3JkaW5hdGVkR3JhcGhpY3MvV0tWaWV3
LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9Db29yZGluYXRlZEdyYXBoaWNz
L1dLVmlldy5jcHAKaW5kZXggMmVkNzRkMzc2ZTdkZTFkYjE3OWU4N2I0YjFkY2ExMjBlZTFkMjAz
YS4uZmJlYmRiNjg4YTc1MzRkY2FjN2U5Nzg2ZjczYWRhOGE4OThhY2EyZiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL0Nvb3JkaW5hdGVkR3JhcGhpY3MvV0tWaWV3
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvQ29vcmRpbmF0ZWRHcmFw
aGljcy9XS1ZpZXcuY3BwCkBAIC0yNCw2ICsyNCw3IEBACiAjaW5jbHVkZSAiV0tWaWV3LmgiCiAK
ICNpbmNsdWRlICJXS0FQSUNhc3QuaCIKKyNpbmNsdWRlICJXS0Nvb3JkaW5hdGVkU2NlbmVBUElD
YXN0LmgiCiAjaW5jbHVkZSAiV2ViVmlldy5oIgogCiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsK
QEAgLTE5NSw0ICsxOTYsOSBAQCB2b2lkIFdLVmlld0ZpbmRab29tYWJsZUFyZWFGb3JSZWN0KFdL
Vmlld1JlZiB2aWV3UmVmLCBXS1JlY3Qgd2tSZWN0KQogICAgIHRvSW1wbCh2aWV3UmVmKS0+Zmlu
ZFpvb21hYmxlQXJlYUZvclBvaW50KHJlY3QuY2VudGVyKCksIHJlY3Quc2l6ZSgpKTsKIH0KIAor
V0tDb29yZGluYXRlZFNjZW5lIFdLVmlld0dldENvb3JkaW5hdGVkU2NlbmUoV0tWaWV3UmVmIHZp
ZXcpCit7CisgICAgcmV0dXJuIHRvQVBJKHRvSW1wbCh2aWV3KS0+Y29vcmRpbmF0ZWRHcmFwaGlj
c1NjZW5lKCkpOworfQorCiAjZW5kaWYgLy8gVVNFKENPT1JESU5BVEVEX0dSQVBISUNTKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL0Nvb3JkaW5hdGVkR3JhcGhp
Y3MvV0tWaWV3LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvQ29vcmRpbmF0ZWRH
cmFwaGljcy9XS1ZpZXcuaAppbmRleCAxZWU1NWVhMzQ1NDIyMzY0NzdiMTVkNmI5NmFkYjUwZjlh
ZWIwYTg4Li5iYmJjYzAyM2VhNGQzMTY5MDI4YmJhY2YzZmE1ZTM4YTUwMTVlMDVkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvQ29vcmRpbmF0ZWRHcmFwaGljcy9X
S1ZpZXcuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvQ29vcmRpbmF0ZWRH
cmFwaGljcy9XS1ZpZXcuaApAQCAtMjIsNiArMjIsNyBAQAogI2RlZmluZSBXS1ZpZXdfaAogCiAj
aW5jbHVkZSA8V2ViS2l0Mi9XS0Jhc2UuaD4KKyNpbmNsdWRlIDxXZWJLaXQyL1dLQ29vcmRpbmF0
ZWRTY2VuZS5oPgogI2luY2x1ZGUgPFdlYktpdDIvV0tHZW9tZXRyeS5oPgogCiAjaWZuZGVmIF9f
Y3BsdXNwbHVzCkBAIC0xMTMsNiArMTE0LDggQEAgV0tfRVhQT1JUIGRvdWJsZSBXS1ZpZXdPcGFj
aXR5KFdLVmlld1JlZiB2aWV3KTsKIAogV0tfRVhQT1JUIHZvaWQgV0tWaWV3RmluZFpvb21hYmxl
QXJlYUZvclJlY3QoV0tWaWV3UmVmLCBXS1JlY3QpOwogCitXS19FWFBPUlQgV0tDb29yZGluYXRl
ZFNjZW5lIFdLVmlld0dldENvb3JkaW5hdGVkU2NlbmUoV0tWaWV3UmVmIHZpZXcpOworCiAjaWZk
ZWYgX19jcGx1c3BsdXMKIH0KICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9Db29yZGluYXRlZEdyYXBoaWNzL1dLQ29vcmRpbmF0ZWRTY2VuZS5jcHAgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0Nvb3JkaW5hdGVkR3JhcGhpY3MvV0tDb29yZGlu
YXRlZFNjZW5lLmNwcAppbmRleCA1ZDE0ZjQzNjk2NTNhZWI3OTE1NDMyODg4ZjczN2FjMjI1OGM1
MDU5Li40MWU2NGNlYmQ0OTA0YTA1Zjk4NDM5NjJjZmRhNmQ0MjBjN2RlMGIzIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0Nvb3JkaW5hdGVkR3JhcGhpY3MvV0tDb29y
ZGluYXRlZFNjZW5lLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0Nvb3Jk
aW5hdGVkR3JhcGhpY3MvV0tDb29yZGluYXRlZFNjZW5lLmNwcApAQCAtNDUsOCArNDUsMTggQEAg
V0tfRVhQT1JUIHVpbnQzMl90IFdLQ29vcmRpbmF0ZWRTY2VuZUdldExheWVySUQoV0tDb29yZGlu
YXRlZFNjZW5lTGF5ZXIgbGF5ZXIpCiAgICAgcmV0dXJuIHRvSW1wbChsYXllciktPmlkKCk7CiB9
CiAKK1dLX0VYUE9SVCBib29sIFdLQ29vcmRpbmF0ZWRTY2VuZUlzQWN0aXZlKFdLQ29vcmRpbmF0
ZWRTY2VuZSBzY2VuZSkKK3sKKyAgICByZXR1cm4gdG9JbXBsKHNjZW5lKS0+aXNBY3RpdmUoKTsK
K30KKwogV0tfRVhQT1JUIHZvaWQgV0tDb29yZGluYXRlZFNjZW5lU2Nyb2xsQnkoV0tDb29yZGlu
YXRlZFNjZW5lTGF5ZXIgbGF5ZXIsIFdLU2l6ZSBvZmZzZXQpCiB7CiAgICAgdG9JbXBsKGxheWVy
KS0+c2Nyb2xsQnkoV2ViQ29yZTo6RmxvYXRTaXplKG9mZnNldC53aWR0aCwgb2Zmc2V0LmhlaWdo
dCkpOwogfQorCitXS19FWFBPUlQgdm9pZCBXS0Nvb3JkaW5hdGVkU2NlbmVTZXRBY3RpdmUoV0tD
b29yZGluYXRlZFNjZW5lIHNjZW5lLCBib29sIGFjdGl2ZSkKK3sKKyAgICB0b0ltcGwoc2NlbmUp
LT5zZXRBY3RpdmUoYWN0aXZlKTsKK30KICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9Db29yZGluYXRlZEdyYXBoaWNzL1dLQ29vcmRpbmF0ZWRTY2VuZS5o
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db29yZGluYXRlZEdyYXBoaWNzL1dLQ29v
cmRpbmF0ZWRTY2VuZS5oCmluZGV4IGM0ZTg4ZGNkZjZhYmQyOTY1NTE0NTZkZjg3NDQ2YmMwYzIw
NGY5Y2MuLjY2NTcwNjM2Y2RkMWEwOWE3NTk4ZTFkYTg4OGVlMDQzNzAzN2ZlOTYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29vcmRpbmF0ZWRHcmFwaGljcy9XS0Nv
b3JkaW5hdGVkU2NlbmUuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0Nvb3Jk
aW5hdGVkR3JhcGhpY3MvV0tDb29yZGluYXRlZFNjZW5lLmgKQEAgLTM5LDcgKzM5LDkgQEAgdHlw
ZWRlZiBzdHJ1Y3QgT3BhcXVlQ0dMYXllciogV0tDb29yZGluYXRlZFNjZW5lTGF5ZXI7CiAKIFdL
X0VYUE9SVCBXS0Nvb3JkaW5hdGVkU2NlbmVMYXllciBXS0Nvb3JkaW5hdGVkU2NlbmVGaW5kU2Ny
b2xsYWJsZUNvbnRlbnRzTGF5ZXJBdChXS0Nvb3JkaW5hdGVkU2NlbmUsIFdLUG9pbnQpOwogV0tf
RVhQT1JUIHVpbnQzMl90IFdLQ29vcmRpbmF0ZWRTY2VuZUdldExheWVySUQoV0tDb29yZGluYXRl
ZFNjZW5lTGF5ZXIpOworV0tfRVhQT1JUIGJvb2wgV0tDb29yZGluYXRlZFNjZW5lSXNBY3RpdmUo
V0tDb29yZGluYXRlZFNjZW5lKTsKIFdLX0VYUE9SVCB2b2lkIFdLQ29vcmRpbmF0ZWRTY2VuZVNj
cm9sbEJ5KFdLQ29vcmRpbmF0ZWRTY2VuZUxheWVyLCBXS1NpemUpOworV0tfRVhQT1JUIHZvaWQg
V0tDb29yZGluYXRlZFNjZW5lU2V0QWN0aXZlKFdLQ29vcmRpbmF0ZWRTY2VuZSwgYm9vbCk7CiAK
ICNpZmRlZiBfX2NwbHVzcGx1cwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0Nvb3JkaW5hdGVkR3JhcGhpY3MvV2ViVmlldy5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0Nvb3JkaW5hdGVkR3JhcGhpY3MvV2ViVmlldy5oCmluZGV4IDBmMDQ2MjMxYWQ3ODk3ZDYz
MjNhNzAyNGZkZjQyYmIwZDgwMGJkYmMuLjhhZWUwNGFlYTRkYWU1MTE4M2M2NWQ3ZTcxNTk5OGNk
MWFlNGMwMGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9Db29yZGluYXRl
ZEdyYXBoaWNzL1dlYlZpZXcuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQ29vcmRp
bmF0ZWRHcmFwaGljcy9XZWJWaWV3LmgKQEAgLTExMiw5ICsxMTIsMTAgQEAgcHVibGljOgogICAg
IHZvaWQgc2V0T3BhY2l0eShkb3VibGUgb3BhY2l0eSkgeyBtX29wYWNpdHkgPSBjbGFtcFRvKG9w
YWNpdHksIDAuMCwgMS4wKTsgfQogICAgIGRvdWJsZSBvcGFjaXR5KCkgY29uc3QgeyByZXR1cm4g
bV9vcGFjaXR5OyB9CiAKKyAgICBXZWJDb3JlOjpDb29yZGluYXRlZEdyYXBoaWNzU2NlbmUqIGNv
b3JkaW5hdGVkR3JhcGhpY3NTY2VuZSgpOworCiBwcm90ZWN0ZWQ6CiAgICAgV2ViVmlldyhXZWJD
b250ZXh0KiwgV2ViUGFnZUdyb3VwKik7Ci0gICAgV2ViQ29yZTo6Q29vcmRpbmF0ZWRHcmFwaGlj
c1NjZW5lKiBjb29yZGluYXRlZEdyYXBoaWNzU2NlbmUoKTsKIAogICAgIHZvaWQgdXBkYXRlVmll
d3BvcnRTaXplKCk7CiAgICAgV2ViQ29yZTo6RmxvYXRTaXplIGRpcFNpemUoKSBjb25zdDsKZGlm
ZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA5ZWMxMzFi
YWYzMGU1MWRjMWFlNGI5ZGMzNjhhMWJjYzliYzFkYWE0Li5iMmQ0OThjNjFlM2UxNjE3OWYxNmNj
NWI3OTQ0NTZkMjBmOGIxMjM2IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9v
bHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTMtMDctMjQgIFNlcmdpbyBDb3JyZWlh
ICA8c2VyZ2lvLmNvcnJlaWFAb3BlbmJvc3NhLm9yZz4KKworICAgICAgICBBZGQgQVBJIGZvciBn
ZXR0aW5nIGFuZCBzZXR0aW5nIHRoZSBhY3RpdmUgc3RhdGUgb2YgYSBDb29yZGluYXRlZEdyYXBo
aWNzU2NlbmUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTExOTA2NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEFkZGVkIEFQSSB0ZXN0cyBmb3IgV0tDb29yZGluYXRlZFNjZW5lSXNBY3RpdmUgYW5kIFdLQ29v
cmRpbmF0ZWRTY2VuZVNldEFjdGl2ZS4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvUGxhdGZv
cm1FZmwuY21ha2U6IEFkZCBXS0Nvb3JkaW5hdGVkU2NlbmVTZXRBY3RpdmUgdGVzdC4KKyAgICAg
ICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvQ29vcmRpbmF0ZWRHcmFwaGljcy9XS0Nv
b3JkaW5hdGVkU2NlbmVTZXRBY3RpdmUuY3BwOiBBZGRlZC4KKyAgICAgICAgKFRlc3RXZWJLaXRB
UEk6OmRpZEZpbmlzaExvYWRGb3JGcmFtZSk6CisgICAgICAgIChUZXN0V2ViS2l0QVBJOjp3ZWJQ
cm9jZXNzQ3Jhc2hlZCk6CisgICAgICAgIChUZXN0V2ViS2l0QVBJOjp3ZWJQcm9jZXNzUmVsYXVu
Y2hlZCk6CisgICAgICAgIChUZXN0V2ViS2l0QVBJOjpURVNUKToKKyAgICAgICAgKiBUZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdDIvQ29vcmRpbmF0ZWRHcmFwaGljcy9XS0Nvb3JkaW5hdGVkU2Nl
bmVTZXRBY3RpdmVfQnVuZGxlLmNwcDoKKyAgICAgICAgQnVuZGxlIHRvIGFsbG93IGNyYXNoaW5n
IHRoZSBXZWJQcm9jZXNzLgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6V0tDb29yZGluYXRlZFNj
ZW5lU2V0QWN0aXZlVGVzdDo6V0tDb29yZGluYXRlZFNjZW5lU2V0QWN0aXZlVGVzdCk6CisgICAg
ICAgIChUZXN0V2ViS2l0QVBJOjpXS0Nvb3JkaW5hdGVkU2NlbmVTZXRBY3RpdmVUZXN0OjpkaWRS
ZWNlaXZlTWVzc2FnZSk6CisKIDIwMTMtMDctMjQgIEFudG9uIE9iemhpcm92ICA8YS5vYnpoaXJv
dkBzYW1zdW5nLmNvbT4KIAogICAgICAgICBbR1RLXSBUZXN0SW5zcGVjdG9yU2VydmVyIHVuaXQg
dGVzdCBpcyB0aW1pbmcgb3V0CmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1BsYXRm
b3JtRWZsLmNtYWtlIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9QbGF0Zm9ybUVmbC5jbWFrZQppbmRl
eCAyOGVhZjc3ZjU5MjNhNmJlOGIyM2Y5NDk2MTZhMjcyZDVkOTc0YTI0Li4wMzgzYzRkZTE2YTI0
ZjcwN2I5ODcwMGQ5Nzg3Y2ViNzEwYmMwMDRlIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0
QVBJL1BsYXRmb3JtRWZsLmNtYWtlCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvUGxhdGZvcm1F
ZmwuY21ha2UKQEAgLTU0LDYgKzU0LDcgQEAgc2V0KHRlc3Rfd2ViY29yZV9CSU5BUklFUwogCiAj
IEluIGhlcmUgd2UgbGlzdCB0aGUgYnVuZGxlcyB0aGF0IGFyZSB1c2VkIGJ5IG91ciBzcGVjaWZp
YyBXSzIgQVBJIFRlc3RzCiBsaXN0KEFQUEVORCBidW5kbGVfaGFybmVzc19TT1VSQ0VTCisgICAg
JHtURVNUV0VCS0lUQVBJX0RJUn0vVGVzdHMvV2ViS2l0Mi9Db29yZGluYXRlZEdyYXBoaWNzL1dL
Q29vcmRpbmF0ZWRTY2VuZVNldEFjdGl2ZV9CdW5kbGUuY3BwCiAgICAgJHtURVNUV0VCS0lUQVBJ
X0RJUn0vVGVzdHMvV2ViS2l0Mi9lZmwvV0tWaWV3Q2xpZW50V2ViUHJvY2Vzc0NhbGxiYWNrc19C
dW5kbGUuY3BwCiApCiAKQEAgLTEwMCw2ICsxMDEsNyBAQCBzZXQodGVzdF93ZWJraXQyX2FwaV9C
SU5BUklFUwogICAgIFdLVVJMCiAgICAgV2lsbExvYWQKICAgICBXaWxsU2VuZFN1Ym1pdEV2ZW50
CisgICAgQ29vcmRpbmF0ZWRHcmFwaGljcy9XS0Nvb3JkaW5hdGVkU2NlbmVTZXRBY3RpdmUKICAg
ICBDb29yZGluYXRlZEdyYXBoaWNzL1dLVmlld1VzZXJWaWV3cG9ydFRvQ29udGVudHMKICAgICBl
ZmwvV0tWaWV3Q2xpZW50V2ViUHJvY2Vzc0NhbGxiYWNrcwogKQpkaWZmIC0tZ2l0IGEvVG9vbHMv
VGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL0Nvb3JkaW5hdGVkR3JhcGhpY3MvV0tDb29yZGlu
YXRlZFNjZW5lU2V0QWN0aXZlLmNwcCBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0
Mi9Db29yZGluYXRlZEdyYXBoaWNzL1dLQ29vcmRpbmF0ZWRTY2VuZVNldEFjdGl2ZS5jcHAKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uZGEzMjZjZDZhNGIzZDQyMjM5NmUxZTcyYTIwZDFlNzE3NzVlMDAxYgotLS0gL2Rl
di9udWxsCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9Db29yZGluYXRl
ZEdyYXBoaWNzL1dLQ29vcmRpbmF0ZWRTY2VuZVNldEFjdGl2ZS5jcHAKQEAgLTAsMCArMSwxMzkg
QEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTMgTm9raWEgQ29ycG9yYXRpb24gYW5kL29yIGl0
cyBzdWJzaWRpYXJ5KC1pZXMpLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBh
cmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZF
TlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVJTIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVY
RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1
ZGUgIlBsYXRmb3JtVXRpbGl0aWVzLmgiCisjaW5jbHVkZSAiVGVzdC5oIgorCisjaW5jbHVkZSA8
V2ViS2l0Mi9XS0NvbnRleHQuaD4KKyNpbmNsdWRlIDxXZWJLaXQyL1dLQ29vcmRpbmF0ZWRTY2Vu
ZS5oPgorI2luY2x1ZGUgPFdlYktpdDIvV0tQYWdlLmg+CisjaW5jbHVkZSA8V2ViS2l0Mi9XS1Jl
dGFpblB0ci5oPgorI2luY2x1ZGUgPFdlYktpdDIvV0tWaWV3Lmg+CisKK25hbWVzcGFjZSBUZXN0
V2ViS2l0QVBJIHsKKworc3RhdGljIGJvb2wgZGlkV2ViUHJvY2Vzc0NyYXNoID0gZmFsc2U7Citz
dGF0aWMgYm9vbCBkaWRXZWJQcm9jZXNzUmVsYXVuY2ggPSBmYWxzZTsKK3N0YXRpYyBib29sIGRp
ZEZpbmlzaExvYWQgPSBmYWxzZTsKKworc3RhdGljIHZvaWQgZGlkRmluaXNoTG9hZEZvckZyYW1l
KFdLUGFnZVJlZiwgV0tGcmFtZVJlZiwgV0tUeXBlUmVmLCBjb25zdCB2b2lkKikKK3sKKyAgICBk
aWRGaW5pc2hMb2FkID0gdHJ1ZTsKK30KKworc3RhdGljIHZvaWQgd2ViUHJvY2Vzc0NyYXNoZWQo
V0tWaWV3UmVmIHZpZXcsIFdLVVJMUmVmLCBjb25zdCB2b2lkKikKK3sKKyAgICAvLyBXZWJQcm9j
ZXNzIGNyYXNoZWQsIHNvIGF0IHRoaXMgcG9pbnQgd2UgaGF2ZSBubyBzY2VuZS4KKyAgICBXS0Nv
b3JkaW5hdGVkU2NlbmUgc2NlbmUgPSBXS1ZpZXdHZXRDb29yZGluYXRlZFNjZW5lKHZpZXcpOwor
ICAgIEFTU0VSVF9OVUxMKHNjZW5lKTsKKyAgICBkaWRXZWJQcm9jZXNzQ3Jhc2ggPSB0cnVlOwor
fQorCitzdGF0aWMgdm9pZCB3ZWJQcm9jZXNzUmVsYXVuY2hlZChXS1ZpZXdSZWYgdmlldywgY29u
c3Qgdm9pZCopCit7CisgICAgLy8gV2ViUHJvY2VzcyByZWxhdW5jaGVkLCBzbyBhdCB0aGlzIHBv
aW50IHdlIGhhdmUgYSBzY2VuZSwgYnV0IGl0IGlzIG5vdCBhY3RpdmUuCisgICAgV0tDb29yZGlu
YXRlZFNjZW5lIHNjZW5lID0gV0tWaWV3R2V0Q29vcmRpbmF0ZWRTY2VuZSh2aWV3KTsKKyAgICBB
U1NFUlRfTk9UX05VTEwoc2NlbmUpOworICAgIEFTU0VSVF9GQUxTRShXS0Nvb3JkaW5hdGVkU2Nl
bmVJc0FjdGl2ZShzY2VuZSkpOworCisgICAgZGlkV2ViUHJvY2Vzc1JlbGF1bmNoID0gdHJ1ZTsK
K30KKworVEVTVChXZWJLaXQyLCBXS0Nvb3JkaW5hdGVkU2NlbmVTZXRBY3RpdmUpCit7CisgICAg
V0tSZXRhaW5QdHI8V0tDb250ZXh0UmVmPiBjb250ZXh0ID0gYWRvcHRXSyhVdGlsOjpjcmVhdGVD
b250ZXh0Rm9ySW5qZWN0ZWRCdW5kbGVUZXN0KCJXS0Nvb3JkaW5hdGVkU2NlbmVTZXRBY3RpdmVU
ZXN0IikpOworICAgIFdLUmV0YWluUHRyPFdLVmlld1JlZj4gdmlldyA9IGFkb3B0V0soV0tWaWV3
Q3JlYXRlKGNvbnRleHQuZ2V0KCksIDApKTsKKworICAgIFdLVmlld0luaXRpYWxpemUodmlldy5n
ZXQoKSk7CisKKyAgICAvLyBBdCB0aGlzIHBvaW50IHdlIHNob3VsZCBoYXZlIGFuIGFjdGl2ZSBz
Y2VuZS4KKyAgICBXS0Nvb3JkaW5hdGVkU2NlbmUgc2NlbmUgPSBXS1ZpZXdHZXRDb29yZGluYXRl
ZFNjZW5lKHZpZXcuZ2V0KCkpOworICAgIEFTU0VSVF9OT1RfTlVMTChzY2VuZSk7CisgICAgQVNT
RVJUX1RSVUUoV0tDb29yZGluYXRlZFNjZW5lSXNBY3RpdmUoc2NlbmUpKTsKKworICAgIC8vIE5v
dyB3ZSBhcmUgZ29pbmcgdG8gY2FsbCBXS0Nvb3JkaW5hdGVkU2NlbmVTZXRBY3RpdmUgYSBmZXcg
dGltZXMgd2l0aCBkaWZmZXJlbnQgdmFsdWVzLgorICAgIFdLQ29vcmRpbmF0ZWRTY2VuZVNldEFj
dGl2ZShzY2VuZSwgdHJ1ZSk7CisgICAgQVNTRVJUX1RSVUUoV0tDb29yZGluYXRlZFNjZW5lSXNB
Y3RpdmUoc2NlbmUpKTsKKworICAgIFdLQ29vcmRpbmF0ZWRTY2VuZVNldEFjdGl2ZShzY2VuZSwg
ZmFsc2UpOworICAgIEFTU0VSVF9GQUxTRShXS0Nvb3JkaW5hdGVkU2NlbmVJc0FjdGl2ZShzY2Vu
ZSkpOworCisgICAgV0tDb29yZGluYXRlZFNjZW5lU2V0QWN0aXZlKHNjZW5lLCBmYWxzZSk7Cisg
ICAgQVNTRVJUX0ZBTFNFKFdLQ29vcmRpbmF0ZWRTY2VuZUlzQWN0aXZlKHNjZW5lKSk7CisKKyAg
ICBXS0Nvb3JkaW5hdGVkU2NlbmVTZXRBY3RpdmUoc2NlbmUsIHRydWUpOworICAgIEFTU0VSVF9U
UlVFKFdLQ29vcmRpbmF0ZWRTY2VuZUlzQWN0aXZlKHNjZW5lKSk7Cit9CisKK1RFU1QoV2ViS2l0
MiwgV0tDb29yZGluYXRlZFNjZW5lSXNBY3RpdmUpCit7CisgICAgV0tSZXRhaW5QdHI8V0tDb250
ZXh0UmVmPiBjb250ZXh0ID0gYWRvcHRXSyhVdGlsOjpjcmVhdGVDb250ZXh0Rm9ySW5qZWN0ZWRC
dW5kbGVUZXN0KCJXS0Nvb3JkaW5hdGVkU2NlbmVTZXRBY3RpdmVUZXN0IikpOworICAgIFdLUmV0
YWluUHRyPFdLVmlld1JlZj4gdmlldyA9IGFkb3B0V0soV0tWaWV3Q3JlYXRlKGNvbnRleHQuZ2V0
KCksIDApKTsKKworICAgIFdLVmlld0NsaWVudCB2aWV3Q2xpZW50OworICAgIG1lbXNldCgmdmll
d0NsaWVudCwgMCwgc2l6ZW9mKFdLVmlld0NsaWVudCkpOworICAgIHZpZXdDbGllbnQudmVyc2lv
biA9IGtXS1ZpZXdDbGllbnRDdXJyZW50VmVyc2lvbjsKKyAgICB2aWV3Q2xpZW50LndlYlByb2Nl
c3NDcmFzaGVkID0gd2ViUHJvY2Vzc0NyYXNoZWQ7CisgICAgdmlld0NsaWVudC53ZWJQcm9jZXNz
RGlkUmVsYXVuY2ggPSB3ZWJQcm9jZXNzUmVsYXVuY2hlZDsKKyAgICBXS1ZpZXdTZXRWaWV3Q2xp
ZW50KHZpZXcuZ2V0KCksICZ2aWV3Q2xpZW50KTsKKworICAgIFdLVmlld0luaXRpYWxpemUodmll
dy5nZXQoKSk7CisKKyAgICAvLyBBdCB0aGlzIHBvaW50IHdlIHNob3VsZCBoYXZlIGFuIGFjdGl2
ZSBzY2VuZS4KKyAgICBXS0Nvb3JkaW5hdGVkU2NlbmUgc2NlbmUgPSBXS1ZpZXdHZXRDb29yZGlu
YXRlZFNjZW5lKHZpZXcuZ2V0KCkpOworICAgIEFTU0VSVF9OT1RfTlVMTChzY2VuZSk7CisgICAg
QVNTRVJUX1RSVUUoV0tDb29yZGluYXRlZFNjZW5lSXNBY3RpdmUoc2NlbmUpKTsKKworICAgIFdL
UGFnZUxvYWRlckNsaWVudCBwYWdlTG9hZGVyQ2xpZW50OworICAgIG1lbXNldCgmcGFnZUxvYWRl
ckNsaWVudCwgMCwgc2l6ZW9mKFdLUGFnZUxvYWRlckNsaWVudCkpOworICAgIHBhZ2VMb2FkZXJD
bGllbnQudmVyc2lvbiA9IGtXS1BhZ2VMb2FkZXJDbGllbnRDdXJyZW50VmVyc2lvbjsKKyAgICBw
YWdlTG9hZGVyQ2xpZW50LmRpZEZpbmlzaExvYWRGb3JGcmFtZSA9IGRpZEZpbmlzaExvYWRGb3JG
cmFtZTsKKyAgICBXS1BhZ2VTZXRQYWdlTG9hZGVyQ2xpZW50KFdLVmlld0dldFBhZ2Uodmlldy5n
ZXQoKSksICZwYWdlTG9hZGVyQ2xpZW50KTsKKworICAgIGNvbnN0IFdLU2l6ZSBzaXplID0gV0tT
aXplTWFrZSgxMDAsIDEwMCk7CisgICAgV0tWaWV3U2V0U2l6ZSh2aWV3LmdldCgpLCBzaXplKTsK
KworICAgIGRpZEZpbmlzaExvYWQgPSBmYWxzZTsKKyAgICBkaWRXZWJQcm9jZXNzQ3Jhc2ggPSBm
YWxzZTsKKyAgICBkaWRXZWJQcm9jZXNzUmVsYXVuY2ggPSBmYWxzZTsKKworICAgIFdLUmV0YWlu
UHRyPFdLVVJMUmVmPiByZWRVcmwgPSBhZG9wdFdLKFV0aWw6OmNyZWF0ZVVSTEZvclJlc291cmNl
KCIuLi9XZWJLaXQyL3NpbXBsZSIsICJodG1sIikpOworICAgIFdLUGFnZUxvYWRVUkwoV0tWaWV3
R2V0UGFnZSh2aWV3LmdldCgpKSwgcmVkVXJsLmdldCgpKTsKKyAgICBVdGlsOjpydW4oJmRpZEZp
bmlzaExvYWQpOworICAgIGRpZEZpbmlzaExvYWQgPSBmYWxzZTsKKworICAgIFdLQ29udGV4dFBv
c3RNZXNzYWdlVG9JbmplY3RlZEJ1bmRsZShjb250ZXh0LmdldCgpLCBVdGlsOjp0b1dLKCJDcmFz
aCIpLmdldCgpLCAwKTsKKyAgICBVdGlsOjpydW4oJmRpZFdlYlByb2Nlc3NDcmFzaCk7CisgICAg
QVNTRVJUX1RSVUUoZGlkV2ViUHJvY2Vzc0NyYXNoKTsKKworICAgIFdLUGFnZUxvYWRVUkwoV0tW
aWV3R2V0UGFnZSh2aWV3LmdldCgpKSwgcmVkVXJsLmdldCgpKTsKKyAgICBVdGlsOjpydW4oJmRp
ZEZpbmlzaExvYWQpOworCisgICAgQVNTRVJUX1RSVUUoZGlkV2ViUHJvY2Vzc1JlbGF1bmNoKTsK
KyAgICBBU1NFUlRfVFJVRShkaWRGaW5pc2hMb2FkKTsKK30KKworfSAvLyBUZXN0V2ViS2l0QVBJ
CmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvQ29vcmRpbmF0
ZWRHcmFwaGljcy9XS0Nvb3JkaW5hdGVkU2NlbmVTZXRBY3RpdmVfQnVuZGxlLmNwcCBiL1Rvb2xz
L1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9Db29yZGluYXRlZEdyYXBoaWNzL1dLQ29vcmRp
bmF0ZWRTY2VuZVNldEFjdGl2ZV9CdW5kbGUuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjUwOWFjM2QzZjZiZGIy
ZDU2MGE3NGE4Y2JlNjMwNWNjODhmNTllZWEKLS0tIC9kZXYvbnVsbAorKysgYi9Ub29scy9UZXN0
V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvQ29vcmRpbmF0ZWRHcmFwaGljcy9XS0Nvb3JkaW5hdGVk
U2NlbmVTZXRBY3RpdmVfQnVuZGxlLmNwcApAQCAtMCwwICsxLDUyIEBACisvKgorICogQ29weXJp
Z2h0IChDKSAyMDEzIE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVz
KS4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRp
c3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZ
UklHSFQgSE9MREVSUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZ
UklHSFQgSE9MREVSUyBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNF
UVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFU
QSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJJbmplY3RlZEJ1bmRs
ZVRlc3QuaCIKKyNpbmNsdWRlIDxXZWJLaXQyL1dLUmV0YWluUHRyLmg+CisKKyNpbmNsdWRlIDxj
c3RkbGliPgorCituYW1lc3BhY2UgVGVzdFdlYktpdEFQSSB7CisKK2NsYXNzIFdLQ29vcmRpbmF0
ZWRTY2VuZVNldEFjdGl2ZVRlc3QgOiBwdWJsaWMgSW5qZWN0ZWRCdW5kbGVUZXN0IHsKK3B1Ymxp
YzoKKyAgICBXS0Nvb3JkaW5hdGVkU2NlbmVTZXRBY3RpdmVUZXN0KGNvbnN0IHN0ZDo6c3RyaW5n
JiBpZGVudGlmaWVyKQorICAgICAgICA6IEluamVjdGVkQnVuZGxlVGVzdChpZGVudGlmaWVyKQor
ICAgIHsKKyAgICB9CisKKyAgICB2aXJ0dWFsIHZvaWQgZGlkUmVjZWl2ZU1lc3NhZ2UoV0tCdW5k
bGVSZWYgYnVuZGxlLCBXS1N0cmluZ1JlZiBtZXNzYWdlTmFtZSwgV0tUeXBlUmVmIG1lc3NhZ2VC
b2R5KQorICAgIHsKKyAgICAgICAgaWYgKCFXS1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKG1l
c3NhZ2VOYW1lLCAiQ3Jhc2giKSkKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgYWJvcnQo
KTsKKyAgICB9Cit9OworCitzdGF0aWMgSW5qZWN0ZWRCdW5kbGVUZXN0OjpSZWdpc3RlcjxXS0Nv
b3JkaW5hdGVkU2NlbmVTZXRBY3RpdmVUZXN0PiByZWdpc3RyYXIoIldLQ29vcmRpbmF0ZWRTY2Vu
ZVNldEFjdGl2ZVRlc3QiKTsKKworfSAvLyBuYW1lc3BhY2UgVGVzdFdlYktpdEFQSQorCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>207651</attachid>
            <date>2013-07-29 07:15:03 -0700</date>
            <delta_ts>2013-07-29 07:29:39 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-119067-20130729101500.patch</filename>
            <type>text/plain</type>
            <size>17849</size>
            <attacher name="Sergio Correia (qrwteyrutiyoup)">sergio</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUzNDIyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODk5Y2E3ODM1OWZhYjY2
YzJmYTk4MGUzMDI0M2IzYTc2YTZmMmU5MS4uMTlkYmNhY2QzZTFkYWIzMDY2MWRiN2Y2NzZiZTQ0
NmQzMmE2OGQxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDEzLTA3LTI5ICBTZXJn
aW8gQ29ycmVpYSAgPHNlcmdpby5jb3JyZWlhQG9wZW5ib3NzYS5vcmc+CisKKyAgICAgICAgQ29v
cmRpbmF0ZWRHcmFwaGljczogQWRkIEFQSSB0byBnZXQgYW5kIHNldCB0aGUgYWN0aXZlIHN0YXRl
IG9mIGEgV2ViVmlldworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTE5MDY3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgQWRkZWQgYSBtZXRob2QgdG8gcmV0dXJuIHdoZXRoZXIgYSBzY2VuZSBpcyBhY3RpdmUg
b3Igbm90LgorCisgICAgICAgIE5vIG5ldyB0ZXN0cywgbm8gYmVoYXZpb3IgY2hhbmdlLgorCisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVk
R3JhcGhpY3NTY2VuZS5oOgorICAgICAgICAoV2ViQ29yZTo6Q29vcmRpbmF0ZWRHcmFwaGljc1Nj
ZW5lOjppc0FjdGl2ZSk6IEFkZGVkIG1ldGhvZCB0byByZXR1cm4gdGhlCisgICAgICAgIGFjdGl2
ZSBzdGF0ZSBvZiB0aGUgc2NlbmUuCisKIDIwMTMtMDctMjkgIEt3YW5nIFl1bCBTZW8gIDxza3l1
bEBjb21wYW55MTAwLm5ldD4KIAogICAgICAgICBbRUZMXSBJbXByb3ZlIHN0cmluZyB1c2UgaW4g
RXJyb3JzRWZsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2Uv
V2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggMzhmYjEwYmRkZjFjMDMxMzE5YjE5MTBjMjBlNDVhMDZi
ZWZmNjUxYS4uYWNkNzE4YTIwNDJmMjY4MGVjODI0YWZiZDIzMmNhZDAzODQ4OGZhYiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDM5IEBACisyMDEzLTA3LTI5ICBTZXJnaW8gQ29ycmVpYSAgPHNlcmdp
by5jb3JyZWlhQG9wZW5ib3NzYS5vcmc+CisKKyAgICAgICAgQ29vcmRpbmF0ZWRHcmFwaGljczog
QWRkIEFQSSB0byBnZXQgYW5kIHNldCB0aGUgYWN0aXZlIHN0YXRlIG9mIGEgV2ViVmlldworICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE5MDY3CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQSB2aWV3IGJlaW5n
IGluIHRoZSAiYWN0aXZlIiBzdGF0ZSBnZW5lcmFsbHkgbWVhbnMgdGhhdCBpdCBpcyBub3QgaW4g
dGhlCisgICAgICAgICJiYWNrZ3JvdW5kIiwgYWx0aG91Z2ggdGhpcyBkZWZpbml0aW9uIGNhbiB2
YXJ5IGRlcGVuZGluZyBvbiB0aGUgcGxhdGZvcm0KKyAgICAgICAgdW5kZXIgY29uc2lkZXJhdGlv
bi4KKworICAgICAgICBUaGlzIHBhdGNoIGFkZHMgdGhlIGZvbGxvd2luZyBBUElzIHRvIFdLVmll
dzoKKyAgICAgICAgLSBib29sIFdLVmlld0lzQWN0aXZlKFdLVmlld1JlZikKKyAgICAgICAgVGhp
cyBBUEkgYWNjZXB0cyBhIFdLVmlld1JlZiBhcyBwYXJhbWV0ZXIgYW5kIHJldHVybnMgYSBib29s
ZWFuIGluZGljYXRpbmcKKyAgICAgICAgd2hldGhlciB0aGUgZ2l2ZW4gdmlldyBpcyBhY3RpdmUu
CisKKyAgICAgICAgLSB2b2lkIFdLVmlld1NldElzQWN0aXZlKFdLVmlld1JlZiwgYm9vbCkKKyAg
ICAgICAgVGhpcyBBUEkgYWNjZXB0cyBhIFdLVmlld1JlZiBhbmQgYSBib29sZWFuIGFzIHBhcmFt
ZXRlcmVzLCBhbmQgaXQgc2V0cyB0aGUKKyAgICAgICAgYWN0aXZlIHN0YXRlIG9mIHRoZSBnaXZl
biB2aWV3IHRvIHRoZSBnaXZlbiBib29sZWFuIGFyZ3VtZW50LgorCisgICAgICAgICogVUlQcm9j
ZXNzL0FQSS9DL0Nvb3JkaW5hdGVkR3JhcGhpY3MvV0tWaWV3LmNwcDoKKyAgICAgICAgKFdLVmll
d0lzQWN0aXZlKTogQVBJIGFkZGVkLgorICAgICAgICAoV0tWaWV3U2V0SXNBY3RpdmUpOiBEaXR0
by4KKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvQ29vcmRpbmF0ZWRHcmFwaGljcy9XS1ZpZXcu
aDogRXhwb3J0IGFmb3JlbWVudGlvbmVkIEFQSS4KKyAgICAgICAgKiBVSVByb2Nlc3MvQ29vcmRp
bmF0ZWRHcmFwaGljcy9XZWJWaWV3LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViVmlldzo6aW5p
dGlhbGl6ZSk6IFVzZSBuZXcgc2V0QWN0aXZlIG1ldGhvZC4KKyAgICAgICAgKFdlYktpdDo6V2Vi
Vmlldzo6c2V0QWN0aXZlKTogQWRkZWQgbWV0aG9kIHRvIHNldCB0aGUgYWN0aXZlIHN0YXRlIG9m
IHRoZQorICAgICAgICB2aWV3LgorICAgICAgICAoV2ViS2l0OjpXZWJWaWV3Ojppc0FjdGl2ZSk6
IEFkZGVkIG1ldGhvZCB0byByZXR1cm4gdGhlIGFjdGl2ZSBzdGF0ZSBvZgorICAgICAgICB2aWV3
LgorICAgICAgICAoV2ViS2l0OjpXZWJWaWV3OjplbnRlckFjY2VsZXJhdGVkQ29tcG9zaXRpbmdN
b2RlKTogVXNlIG5ldyBzZXRBY3RpdmUKKyAgICAgICAgbWV0aG9kLgorICAgICAgICAoV2ViS2l0
OjpXZWJWaWV3OjpleGl0QWNjZWxlcmF0ZWRDb21wb3NpdGluZ01vZGUpOiBEaXR0by4KKyAgICAg
ICAgKiBVSVByb2Nlc3MvQ29vcmRpbmF0ZWRHcmFwaGljcy9XZWJWaWV3Lmg6IEFkZGVkIGRlY2xh
cmF0aW9ucyBvZiBpc0FjdGl2ZQorICAgICAgICBhbmQgc2V0QWN0aXZlLgorCiAyMDEzLTA3LTI5
ICBaYW4gRG9iZXJzZWsgIDx6ZG9iZXJzZWtAaWdhbGlhLmNvbT4KIAogICAgICAgICBbQXV0b21h
a2VdIFJlbW92ZSByZWZlcmVuY2VzIHRvIG5vbi1leGlzdGVudCAqX0NGTEFHUyBhbmQgKl9MSUJT
IHZhcmlhYmxlcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
dGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZS5oIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3Jh
cGhpY3NTY2VuZS5oCmluZGV4IDdmYTkyYWQ4NzU3NDNlMzYyYjEwZDBhYjVhNzVkZmE0MTE5ZmI2
ODEuLmI5ODRkOTUxMmU2MTY4ZWJmZTg4N2UwN2VmZDRmNTIwZGVjYmY0NWYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29y
ZGluYXRlZEdyYXBoaWNzU2NlbmUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lLmgKQEAgLTc3
LDYgKzc3LDggQEAgcHVibGljOgogICAgIC8vIFRoZSBwYWludGluZyB0aHJlYWQgbXVzdCBsb2Nr
IHRoZSBtYWluIHRocmVhZCB0byB1c2UgYmVsb3cgdHdvIG1ldGhvZHMsIGJlY2F1c2UgdHdvIG1l
dGhvZHMgYWNjZXNzIG1lbWJlcnMgdGhhdCB0aGUgbWFpbiB0aHJlYWQgbWFuYWdlcy4gU2VlIG1f
Y2xpZW50LgogICAgIC8vIEN1cnJlbnRseSwgUVF1aWNrV2ViUGFnZTo6dXBkYXRlUGFpbnROb2Rl
KCkgbG9ja3MgdGhlIG1haW4gdGhyZWFkIGJlZm9yZSBjYWxsaW5nIGJvdGggbWV0aG9kcy4KICAg
ICB2b2lkIHB1cmdlR0xSZXNvdXJjZXMoKTsKKworICAgIGJvb2wgaXNBY3RpdmUoKSBjb25zdCB7
IHJldHVybiBtX2lzQWN0aXZlOyB9CiAgICAgdm9pZCBzZXRBY3RpdmUoYm9vbCk7CiAKICAgICB2
b2lkIGNvbW1pdFNjZW5lU3RhdGUoY29uc3QgQ29vcmRpbmF0ZWRHcmFwaGljc1N0YXRlJik7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvQ29vcmRpbmF0ZWRHcmFw
aGljcy9XS1ZpZXcuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL0Nvb3JkaW5h
dGVkR3JhcGhpY3MvV0tWaWV3LmNwcAppbmRleCAyZWQ3NGQzNzZlN2RlMWRiMTc5ZTg3YjRiMWRj
YTEyMGVlMWQyMDNhLi41MzA0MTA4MTI5ZTRlNWI3NDk5YmE4YTlhNWQzNzk0MTM4MTJkNDBkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvQ29vcmRpbmF0ZWRHcmFw
aGljcy9XS1ZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9Db29y
ZGluYXRlZEdyYXBoaWNzL1dLVmlldy5jcHAKQEAgLTU1LDYgKzU1LDE2IEBAIHZvaWQgV0tWaWV3
U2V0Vmlld0NsaWVudChXS1ZpZXdSZWYgdmlld1JlZiwgY29uc3QgV0tWaWV3Q2xpZW50KiBjbGll
bnQpCiAgICAgdG9JbXBsKHZpZXdSZWYpLT5pbml0aWFsaXplQ2xpZW50KGNsaWVudCk7CiB9CiAK
K2Jvb2wgV0tWaWV3SXNBY3RpdmUoV0tWaWV3UmVmIHZpZXdSZWYpCit7CisgICAgcmV0dXJuIHRv
SW1wbCh2aWV3UmVmKS0+aXNBY3RpdmUoKTsKK30KKwordm9pZCBXS1ZpZXdTZXRJc0FjdGl2ZShX
S1ZpZXdSZWYgdmlld1JlZiwgYm9vbCBpc0FjdGl2ZSkKK3sKKyAgICB0b0ltcGwodmlld1JlZikt
PnNldEFjdGl2ZShpc0FjdGl2ZSk7Cit9CisKIGJvb2wgV0tWaWV3SXNGb2N1c2VkKFdLVmlld1Jl
ZiB2aWV3UmVmKQogewogICAgIHJldHVybiB0b0ltcGwodmlld1JlZiktPmlzRm9jdXNlZCgpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL0Nvb3JkaW5hdGVkR3Jh
cGhpY3MvV0tWaWV3LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvQ29vcmRpbmF0
ZWRHcmFwaGljcy9XS1ZpZXcuaAppbmRleCAxZWU1NWVhMzQ1NDIyMzY0NzdiMTVkNmI5NmFkYjUw
ZjlhZWIwYTg4Li4yZDNiMzAxZjU5Y2FhNTY2MDVhN2RkZjZmNWIyYTczMjhiYmJmOTJhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvQ29vcmRpbmF0ZWRHcmFwaGlj
cy9XS1ZpZXcuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvQ29vcmRpbmF0
ZWRHcmFwaGljcy9XS1ZpZXcuaApAQCAtNzMsNiArNzMsOSBAQCBXS19FWFBPUlQgdm9pZCBXS1Zp
ZXdTZXRTaXplKFdLVmlld1JlZiwgV0tTaXplIHNpemUpOwogCiBXS19FWFBPUlQgdm9pZCBXS1Zp
ZXdTZXRWaWV3Q2xpZW50KFdLVmlld1JlZiwgY29uc3QgV0tWaWV3Q2xpZW50Kik7CiAKK1dLX0VY
UE9SVCBib29sIFdLVmlld0lzQWN0aXZlKFdLVmlld1JlZik7CitXS19FWFBPUlQgdm9pZCBXS1Zp
ZXdTZXRJc0FjdGl2ZShXS1ZpZXdSZWYsIGJvb2wpOworCiBXS19FWFBPUlQgYm9vbCBXS1ZpZXdJ
c0ZvY3VzZWQoV0tWaWV3UmVmKTsKIFdLX0VYUE9SVCB2b2lkIFdLVmlld1NldElzRm9jdXNlZChX
S1ZpZXdSZWYsIGJvb2wpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
Q29vcmRpbmF0ZWRHcmFwaGljcy9XZWJWaWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9Db29yZGluYXRlZEdyYXBoaWNzL1dlYlZpZXcuY3BwCmluZGV4IDI5Mzc0NWU0OGRjMTRmNjk5
YTA5YWUyNGJkNGUyYTM5MmM5ZWRlYTUuLmRlYTM1NWU0YzAyZjAxZjE1M2NhYTQ5ZThlMjNjZDAw
NWJiOWY3YjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9Db29yZGluYXRl
ZEdyYXBoaWNzL1dlYlZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9Db29y
ZGluYXRlZEdyYXBoaWNzL1dlYlZpZXcuY3BwCkBAIC03Myw4ICs3MywxNyBAQCBXZWJWaWV3Ojp+
V2ViVmlldygpCiB2b2lkIFdlYlZpZXc6OmluaXRpYWxpemUoKQogewogICAgIG1fcGFnZS0+aW5p
dGlhbGl6ZVdlYlBhZ2UoKTsKLSAgICBpZiAoQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lKiBzY2Vu
ZSA9IGNvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZSgpKQotICAgICAgICBzY2VuZS0+c2V0QWN0aXZl
KHRydWUpOworICAgIHNldEFjdGl2ZSh0cnVlKTsKK30KKwordm9pZCBXZWJWaWV3OjpzZXRBY3Rp
dmUoYm9vbCBhY3RpdmUpCit7CisgICAgQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lKiBzY2VuZSA9
IGNvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZSgpOworICAgIGlmICghc2NlbmUgfHwgc2NlbmUtPmlz
QWN0aXZlKCkgPT0gYWN0aXZlKQorICAgICAgICByZXR1cm47CisKKyAgICBzY2VuZS0+c2V0QWN0
aXZlKGFjdGl2ZSk7CisgICAgbV9wYWdlLT52aWV3U3RhdGVEaWRDaGFuZ2UoV2ViUGFnZVByb3h5
OjpWaWV3V2luZG93SXNBY3RpdmUpOwogfQogCiB2b2lkIFdlYlZpZXc6OnNldFNpemUoY29uc3Qg
V2ViQ29yZTo6SW50U2l6ZSYgc2l6ZSkKQEAgLTI5OCw2ICszMDcsMTUgQEAgV2ViQ29yZTo6SW50
U2l6ZSBXZWJWaWV3Ojp2aWV3U2l6ZSgpCiAgICAgcmV0dXJuIHJvdW5kZWRJbnRTaXplKGRpcFNp
emUoKSk7CiB9CiAKK2Jvb2wgV2ViVmlldzo6aXNBY3RpdmUoKQoreworICAgIENvb3JkaW5hdGVk
R3JhcGhpY3NTY2VuZSogc2NlbmUgPSBjb29yZGluYXRlZEdyYXBoaWNzU2NlbmUoKTsKKyAgICBp
ZiAoIXNjZW5lKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICByZXR1cm4gc2NlbmUtPmlz
QWN0aXZlKCk7Cit9CisKIGJvb2wgV2ViVmlldzo6aXNWaWV3V2luZG93QWN0aXZlKCkKIHsKICAg
ICBub3RJbXBsZW1lbnRlZCgpOwpAQCAtNDI2LDE0ICs0NDQsMTIgQEAgdm9pZCBXZWJWaWV3Ojpz
ZXRGaW5kSW5kaWNhdG9yKFBhc3NSZWZQdHI8RmluZEluZGljYXRvcj4sIGJvb2wsIGJvb2wpCiAK
IHZvaWQgV2ViVmlldzo6ZW50ZXJBY2NlbGVyYXRlZENvbXBvc2l0aW5nTW9kZShjb25zdCBMYXll
clRyZWVDb250ZXh0JikKIHsKLSAgICBpZiAoQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lKiBzY2Vu
ZSA9IGNvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZSgpKQotICAgICAgICBzY2VuZS0+c2V0QWN0aXZl
KHRydWUpOworICAgIHNldEFjdGl2ZSh0cnVlKTsKIH0KIAogdm9pZCBXZWJWaWV3OjpleGl0QWNj
ZWxlcmF0ZWRDb21wb3NpdGluZ01vZGUoKQogewotICAgIGlmIChDb29yZGluYXRlZEdyYXBoaWNz
U2NlbmUqIHNjZW5lID0gY29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lKCkpCi0gICAgICAgIHNjZW5l
LT5zZXRBY3RpdmUoZmFsc2UpOworICAgIHNldEFjdGl2ZShmYWxzZSk7CiB9CiAKIHZvaWQgV2Vi
Vmlldzo6dXBkYXRlQWNjZWxlcmF0ZWRDb21wb3NpdGluZ01vZGUoY29uc3QgTGF5ZXJUcmVlQ29u
dGV4dCYpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQ29vcmRpbmF0ZWRH
cmFwaGljcy9XZWJWaWV3LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQ29vcmRpbmF0ZWRH
cmFwaGljcy9XZWJWaWV3LmgKaW5kZXggZTc5YTIzOGUzNGE5MTk2MWNkNTEwNTE0NDZiYzI1ZTY2
NzY2ZTgyZS4uNGQ4YWMwOThhNWNjNjQxMTQ2ZGIwMmM2OGEzM2FhNmEyM2YwYjFlMCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0Nvb3JkaW5hdGVkR3JhcGhpY3MvV2ViVmll
dy5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9Db29yZGluYXRlZEdyYXBoaWNzL1dl
YlZpZXcuaApAQCAtNTcsNiArNTcsOSBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRTaXplKGNvbnN0
IFdlYkNvcmU6OkludFNpemUmKTsKICAgICBjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBzaXplKCkg
Y29uc3QgeyByZXR1cm4gbV9zaXplOyB9CiAKKyAgICBib29sIGlzQWN0aXZlKCk7CisgICAgdm9p
ZCBzZXRBY3RpdmUoYm9vbCk7CisKICAgICBib29sIGlzRm9jdXNlZCgpIGNvbnN0IHsgcmV0dXJu
IG1fZm9jdXNlZDsgfQogICAgIHZvaWQgc2V0Rm9jdXNlZChib29sKTsKIApkaWZmIC0tZ2l0IGEv
VG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IGUxYWM2YjJiYTZiMWU4YzA0
MWJkODE4NWFiNzlhNWI0ZjZiZTNkOGMuLjQxODYxOGE2MmMwMzgyYzJkYmU1NWJjMGFmZTQxNjRh
MGUxOTIwZDkgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwyNCBAQAorMjAxMy0wNy0yOSAgU2VyZ2lvIENvcnJlaWEgIDxzZXJnaW8u
Y29ycmVpYUBvcGVuYm9zc2Eub3JnPgorCisgICAgICAgIENvb3JkaW5hdGVkR3JhcGhpY3M6IEFk
ZCBBUEkgdG8gZ2V0IGFuZCBzZXQgdGhlIGFjdGl2ZSBzdGF0ZSBvZiBhIFdlYlZpZXcKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExOTA2NworCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZGVkIEFQSSB0ZXN0
cyBmb3IgV0tWaWV3SXNBY3RpdmUgYW5kIFdLVmlld1NldElzQWN0aXZlLgorCisgICAgICAgICog
VGVzdFdlYktpdEFQSS9QbGF0Zm9ybUVmbC5jbWFrZToKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJ
L1Rlc3RzL1dlYktpdDIvQ29vcmRpbmF0ZWRHcmFwaGljcy9XS1ZpZXdJc0FjdGl2ZVNldElzQWN0
aXZlLmNwcDogQWRkZWQuCisgICAgICAgIChUZXN0V2ViS2l0QVBJOjpkaWRGaW5pc2hMb2FkRm9y
RnJhbWUpOgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6d2ViUHJvY2Vzc0NyYXNoZWQpOgorICAg
ICAgICAoVGVzdFdlYktpdEFQSTo6d2ViUHJvY2Vzc1JlbGF1bmNoZWQpOgorICAgICAgICAoVGVz
dFdlYktpdEFQSTo6VEVTVCk6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQy
L0Nvb3JkaW5hdGVkR3JhcGhpY3MvV0tWaWV3SXNBY3RpdmVTZXRJc0FjdGl2ZV9CdW5kbGUuY3Bw
OgorICAgICAgICBCdW5kbGUgYWRkZWQgdG8gYWxsb3cgY3Jhc2hpbmcgdGhlIFdlYlByb2Nlc3Mg
YW5kIHRlc3RpbmcgdGhlIGFjdGl2ZSBzdGF0ZSBvZiBhIHZpZXcKKyAgICAgICAgdW5kZXIgc3Vj
aCBjb25kaXRpb24uCisgICAgICAgIChUZXN0V2ViS2l0QVBJOjpXS1ZpZXdJc0FjdGl2ZVNldElz
QWN0aXZlVGVzdDo6V0tWaWV3SXNBY3RpdmVTZXRJc0FjdGl2ZVRlc3QpOgorICAgICAgICAoVGVz
dFdlYktpdEFQSTo6V0tWaWV3SXNBY3RpdmVTZXRJc0FjdGl2ZVRlc3Q6OmRpZFJlY2VpdmVNZXNz
YWdlKToKKwogMjAxMy0wNy0yOSAgWmFuIERvYmVyc2VrICA8emRvYmVyc2VrQGlnYWxpYS5jb20+
CiAKICAgICAgICAgW0F1dG9tYWtlXSBSZW1vdmUgcmVmZXJlbmNlcyB0byBub24tZXhpc3RlbnQg
Kl9DRkxBR1MgYW5kICpfTElCUyB2YXJpYWJsZXMKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJL
aXRBUEkvUGxhdGZvcm1FZmwuY21ha2UgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1BsYXRmb3JtRWZs
LmNtYWtlCmluZGV4IDI4ZWFmNzdmNTkyM2E2YmU4YjIzZjk0OTYxNmEyNzJkNWQ5NzRhMjQuLmRm
Y2E0MDk5Mzk3NjhhZDkyYzlkNDhmY2JmNDQ0NGI0ZjAwMGNhNjIgMTAwNjQ0Ci0tLSBhL1Rvb2xz
L1Rlc3RXZWJLaXRBUEkvUGxhdGZvcm1FZmwuY21ha2UKKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQ
SS9QbGF0Zm9ybUVmbC5jbWFrZQpAQCAtNTQsNiArNTQsNyBAQCBzZXQodGVzdF93ZWJjb3JlX0JJ
TkFSSUVTCiAKICMgSW4gaGVyZSB3ZSBsaXN0IHRoZSBidW5kbGVzIHRoYXQgYXJlIHVzZWQgYnkg
b3VyIHNwZWNpZmljIFdLMiBBUEkgVGVzdHMKIGxpc3QoQVBQRU5EIGJ1bmRsZV9oYXJuZXNzX1NP
VVJDRVMKKyAgICAke1RFU1RXRUJLSVRBUElfRElSfS9UZXN0cy9XZWJLaXQyL0Nvb3JkaW5hdGVk
R3JhcGhpY3MvV0tWaWV3SXNBY3RpdmVTZXRJc0FjdGl2ZV9CdW5kbGUuY3BwCiAgICAgJHtURVNU
V0VCS0lUQVBJX0RJUn0vVGVzdHMvV2ViS2l0Mi9lZmwvV0tWaWV3Q2xpZW50V2ViUHJvY2Vzc0Nh
bGxiYWNrc19CdW5kbGUuY3BwCiApCiAKQEAgLTEwMCw2ICsxMDEsNyBAQCBzZXQodGVzdF93ZWJr
aXQyX2FwaV9CSU5BUklFUwogICAgIFdLVVJMCiAgICAgV2lsbExvYWQKICAgICBXaWxsU2VuZFN1
Ym1pdEV2ZW50CisgICAgQ29vcmRpbmF0ZWRHcmFwaGljcy9XS1ZpZXdJc0FjdGl2ZVNldElzQWN0
aXZlCiAgICAgQ29vcmRpbmF0ZWRHcmFwaGljcy9XS1ZpZXdVc2VyVmlld3BvcnRUb0NvbnRlbnRz
CiAgICAgZWZsL1dLVmlld0NsaWVudFdlYlByb2Nlc3NDYWxsYmFja3MKICkKZGlmZiAtLWdpdCBh
L1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9Db29yZGluYXRlZEdyYXBoaWNzL1dL
Vmlld0lzQWN0aXZlU2V0SXNBY3RpdmUuY3BwIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJLaXQyL0Nvb3JkaW5hdGVkR3JhcGhpY3MvV0tWaWV3SXNBY3RpdmVTZXRJc0FjdGl2ZS5jcHAK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uOWE5ZTVkZDAyN2M3NmY1YWQ3Njc1ZTgxOGZkZmZmNjc3MzA1YmJhMQotLS0g
L2Rldi9udWxsCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9Db29yZGlu
YXRlZEdyYXBoaWNzL1dLVmlld0lzQWN0aXZlU2V0SXNBY3RpdmUuY3BwCkBAIC0wLDAgKzEsMTMx
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEzIE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBp
dHMgc3Vic2lkaWFyeSgtaWVzKS4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICog
YXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVW
RU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSUyBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBF
WEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNs
dWRlICJQbGF0Zm9ybVV0aWxpdGllcy5oIgorI2luY2x1ZGUgIlRlc3QuaCIKKworI2luY2x1ZGUg
PFdlYktpdDIvV0tDb250ZXh0Lmg+CisjaW5jbHVkZSA8V2ViS2l0Mi9XS1BhZ2UuaD4KKyNpbmNs
dWRlIDxXZWJLaXQyL1dLUmV0YWluUHRyLmg+CisjaW5jbHVkZSA8V2ViS2l0Mi9XS1ZpZXcuaD4K
KworbmFtZXNwYWNlIFRlc3RXZWJLaXRBUEkgeworCitzdGF0aWMgYm9vbCBkaWRXZWJQcm9jZXNz
Q3Jhc2ggPSBmYWxzZTsKK3N0YXRpYyBib29sIGRpZFdlYlByb2Nlc3NSZWxhdW5jaCA9IGZhbHNl
Oworc3RhdGljIGJvb2wgZGlkRmluaXNoTG9hZCA9IGZhbHNlOworCitzdGF0aWMgdm9pZCBkaWRG
aW5pc2hMb2FkRm9yRnJhbWUoV0tQYWdlUmVmLCBXS0ZyYW1lUmVmLCBXS1R5cGVSZWYsIGNvbnN0
IHZvaWQqKQoreworICAgIGRpZEZpbmlzaExvYWQgPSB0cnVlOworfQorCitzdGF0aWMgdm9pZCB3
ZWJQcm9jZXNzQ3Jhc2hlZChXS1ZpZXdSZWYgdmlldywgV0tVUkxSZWYsIGNvbnN0IHZvaWQqKQor
eworICAgIC8vIFdlYlByb2Nlc3MgY3Jhc2hlZCwgc28gYXQgdGhpcyBwb2ludCB0aGUgdmlldyBz
aG91bGQgbm90IGJlIGFjdGl2ZS4KKyAgICBBU1NFUlRfRkFMU0UoV0tWaWV3SXNBY3RpdmUodmll
dykpOworICAgIGRpZFdlYlByb2Nlc3NDcmFzaCA9IHRydWU7Cit9CisKK3N0YXRpYyB2b2lkIHdl
YlByb2Nlc3NSZWxhdW5jaGVkKFdLVmlld1JlZiB2aWV3LCBjb25zdCB2b2lkKikKK3sKKyAgICAv
LyBXZWJQcm9jZXNzIGp1c3QgcmVsYXVuY2hlZCwgc28gYXQgdGhpcyBwb2ludCB0aGUgdmlldyBz
aG91bGQgbm90IGJlIGFjdGl2ZS4KKyAgICBBU1NFUlRfRkFMU0UoV0tWaWV3SXNBY3RpdmUodmll
dykpOworCisgICAgZGlkV2ViUHJvY2Vzc1JlbGF1bmNoID0gdHJ1ZTsKK30KKworVEVTVChXZWJL
aXQyLCBXS1ZpZXdJc0FjdGl2ZVNldElzQWN0aXZlKQoreworICAgIFdLUmV0YWluUHRyPFdLQ29u
dGV4dFJlZj4gY29udGV4dCA9IGFkb3B0V0soV0tDb250ZXh0Q3JlYXRlKCkpOworICAgIFdLUmV0
YWluUHRyPFdLVmlld1JlZj4gdmlldyA9IGFkb3B0V0soV0tWaWV3Q3JlYXRlKGNvbnRleHQuZ2V0
KCksIDApKTsKKworICAgIFdLVmlld0luaXRpYWxpemUodmlldy5nZXQoKSk7CisKKyAgICAvLyBB
dCB0aGlzIHBvaW50IHdlIHNob3VsZCBoYXZlIGFuIGFjdGl2ZSB2aWV3LgorICAgIEFTU0VSVF9U
UlVFKFdLVmlld0lzQWN0aXZlKHZpZXcuZ2V0KCkpKTsKKworICAgIC8vIE5vdyB3ZSBhcmUgZ29p
bmcgdG8gcGxheSB3aXRoIGl0cyBhY3RpdmUgc3RhdGUgYSBmZXcgdGltZXMuCisgICAgV0tWaWV3
U2V0SXNBY3RpdmUodmlldy5nZXQoKSwgdHJ1ZSk7CisgICAgQVNTRVJUX1RSVUUoV0tWaWV3SXNB
Y3RpdmUodmlldy5nZXQoKSkpOworCisgICAgV0tWaWV3U2V0SXNBY3RpdmUodmlldy5nZXQoKSwg
ZmFsc2UpOworICAgIEFTU0VSVF9GQUxTRShXS1ZpZXdJc0FjdGl2ZSh2aWV3LmdldCgpKSk7CisK
KyAgICBXS1ZpZXdTZXRJc0FjdGl2ZSh2aWV3LmdldCgpLCBmYWxzZSk7CisgICAgQVNTRVJUX0ZB
TFNFKFdLVmlld0lzQWN0aXZlKHZpZXcuZ2V0KCkpKTsKKworICAgIFdLVmlld1NldElzQWN0aXZl
KHZpZXcuZ2V0KCksIHRydWUpOworICAgIEFTU0VSVF9UUlVFKFdLVmlld0lzQWN0aXZlKHZpZXcu
Z2V0KCkpKTsKK30KKworVEVTVChXZWJLaXQyLCBXS1ZpZXdJc0FjdGl2ZSkKK3sKKyAgICBXS1Jl
dGFpblB0cjxXS0NvbnRleHRSZWY+IGNvbnRleHQgPSBhZG9wdFdLKFV0aWw6OmNyZWF0ZUNvbnRl
eHRGb3JJbmplY3RlZEJ1bmRsZVRlc3QoIldLVmlld0lzQWN0aXZlU2V0SXNBY3RpdmVUZXN0Iikp
OworICAgIFdLUmV0YWluUHRyPFdLVmlld1JlZj4gdmlldyA9IGFkb3B0V0soV0tWaWV3Q3JlYXRl
KGNvbnRleHQuZ2V0KCksIDApKTsKKworICAgIFdLVmlld0NsaWVudCB2aWV3Q2xpZW50OworICAg
IG1lbXNldCgmdmlld0NsaWVudCwgMCwgc2l6ZW9mKFdLVmlld0NsaWVudCkpOworICAgIHZpZXdD
bGllbnQudmVyc2lvbiA9IGtXS1ZpZXdDbGllbnRDdXJyZW50VmVyc2lvbjsKKyAgICB2aWV3Q2xp
ZW50LndlYlByb2Nlc3NDcmFzaGVkID0gd2ViUHJvY2Vzc0NyYXNoZWQ7CisgICAgdmlld0NsaWVu
dC53ZWJQcm9jZXNzRGlkUmVsYXVuY2ggPSB3ZWJQcm9jZXNzUmVsYXVuY2hlZDsKKyAgICBXS1Zp
ZXdTZXRWaWV3Q2xpZW50KHZpZXcuZ2V0KCksICZ2aWV3Q2xpZW50KTsKKworICAgIFdLVmlld0lu
aXRpYWxpemUodmlldy5nZXQoKSk7CisKKyAgICAvLyBBdCB0aGlzIHBvaW50IHdlIHNob3VsZCBo
YXZlIGFuIGFjdGl2ZSB2aWV3LgorICAgIEFTU0VSVF9UUlVFKFdLVmlld0lzQWN0aXZlKHZpZXcu
Z2V0KCkpKTsKKworICAgIFdLUGFnZUxvYWRlckNsaWVudCBwYWdlTG9hZGVyQ2xpZW50OworICAg
IG1lbXNldCgmcGFnZUxvYWRlckNsaWVudCwgMCwgc2l6ZW9mKFdLUGFnZUxvYWRlckNsaWVudCkp
OworICAgIHBhZ2VMb2FkZXJDbGllbnQudmVyc2lvbiA9IGtXS1BhZ2VMb2FkZXJDbGllbnRDdXJy
ZW50VmVyc2lvbjsKKyAgICBwYWdlTG9hZGVyQ2xpZW50LmRpZEZpbmlzaExvYWRGb3JGcmFtZSA9
IGRpZEZpbmlzaExvYWRGb3JGcmFtZTsKKyAgICBXS1BhZ2VTZXRQYWdlTG9hZGVyQ2xpZW50KFdL
Vmlld0dldFBhZ2Uodmlldy5nZXQoKSksICZwYWdlTG9hZGVyQ2xpZW50KTsKKworICAgIGNvbnN0
IFdLU2l6ZSBzaXplID0gV0tTaXplTWFrZSgxMDAsIDEwMCk7CisgICAgV0tWaWV3U2V0U2l6ZSh2
aWV3LmdldCgpLCBzaXplKTsKKworICAgIGRpZEZpbmlzaExvYWQgPSBmYWxzZTsKKyAgICBkaWRX
ZWJQcm9jZXNzQ3Jhc2ggPSBmYWxzZTsKKyAgICBkaWRXZWJQcm9jZXNzUmVsYXVuY2ggPSBmYWxz
ZTsKKworICAgIFdLUmV0YWluUHRyPFdLVVJMUmVmPiBzaW1wbGVVcmwgPSBhZG9wdFdLKFV0aWw6
OmNyZWF0ZVVSTEZvclJlc291cmNlKCIuLi9XZWJLaXQyL3NpbXBsZSIsICJodG1sIikpOworICAg
IFdLUGFnZUxvYWRVUkwoV0tWaWV3R2V0UGFnZSh2aWV3LmdldCgpKSwgc2ltcGxlVXJsLmdldCgp
KTsKKyAgICBVdGlsOjpydW4oJmRpZEZpbmlzaExvYWQpOworICAgIGRpZEZpbmlzaExvYWQgPSBm
YWxzZTsKKworICAgIFdLQ29udGV4dFBvc3RNZXNzYWdlVG9JbmplY3RlZEJ1bmRsZShjb250ZXh0
LmdldCgpLCBVdGlsOjp0b1dLKCJDcmFzaCIpLmdldCgpLCAwKTsKKyAgICBVdGlsOjpydW4oJmRp
ZFdlYlByb2Nlc3NDcmFzaCk7CisgICAgQVNTRVJUX1RSVUUoZGlkV2ViUHJvY2Vzc0NyYXNoKTsK
KworICAgIFdLUGFnZUxvYWRVUkwoV0tWaWV3R2V0UGFnZSh2aWV3LmdldCgpKSwgc2ltcGxlVXJs
LmdldCgpKTsKKyAgICBVdGlsOjpydW4oJmRpZEZpbmlzaExvYWQpOworCisgICAgQVNTRVJUX1RS
VUUoZGlkV2ViUHJvY2Vzc1JlbGF1bmNoKTsKKyAgICBBU1NFUlRfVFJVRShkaWRGaW5pc2hMb2Fk
KTsKK30KKworfSAvLyBUZXN0V2ViS2l0QVBJCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0
QVBJL1Rlc3RzL1dlYktpdDIvQ29vcmRpbmF0ZWRHcmFwaGljcy9XS1ZpZXdJc0FjdGl2ZVNldElz
QWN0aXZlX0J1bmRsZS5jcHAgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvQ29v
cmRpbmF0ZWRHcmFwaGljcy9XS1ZpZXdJc0FjdGl2ZVNldElzQWN0aXZlX0J1bmRsZS5jcHAKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uYjhiMWVmOWJiOTE2OWQ0MDYzMDdiYmIxODNiNTViYmUxYWFmZTRlMQotLS0gL2Rl
di9udWxsCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9Db29yZGluYXRl
ZEdyYXBoaWNzL1dLVmlld0lzQWN0aXZlU2V0SXNBY3RpdmVfQnVuZGxlLmNwcApAQCAtMCwwICsx
LDUyIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEzIE5va2lhIENvcnBvcmF0aW9uIGFuZC9v
ciBpdHMgc3Vic2lkaWFyeSgtaWVzKS4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwor
ICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBgYEFTIElTJycgQU5EIEFOWQorICog
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5P
IEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgSE9MREVSUyBPUgorICogQ09OVFJJQlVUT1JTIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisg
KiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNp
bmNsdWRlICJJbmplY3RlZEJ1bmRsZVRlc3QuaCIKKyNpbmNsdWRlIDxXZWJLaXQyL1dLUmV0YWlu
UHRyLmg+CisKKyNpbmNsdWRlIDxjc3RkbGliPgorCituYW1lc3BhY2UgVGVzdFdlYktpdEFQSSB7
CisKK2NsYXNzIFdLVmlld0lzQWN0aXZlU2V0SXNBY3RpdmVUZXN0IDogcHVibGljIEluamVjdGVk
QnVuZGxlVGVzdCB7CitwdWJsaWM6CisgICAgV0tWaWV3SXNBY3RpdmVTZXRJc0FjdGl2ZVRlc3Qo
Y29uc3Qgc3RkOjpzdHJpbmcmIGlkZW50aWZpZXIpCisgICAgICAgIDogSW5qZWN0ZWRCdW5kbGVU
ZXN0KGlkZW50aWZpZXIpCisgICAgeworICAgIH0KKworICAgIHZpcnR1YWwgdm9pZCBkaWRSZWNl
aXZlTWVzc2FnZShXS0J1bmRsZVJlZiBidW5kbGUsIFdLU3RyaW5nUmVmIG1lc3NhZ2VOYW1lLCBX
S1R5cGVSZWYgbWVzc2FnZUJvZHkpCisgICAgeworICAgICAgICBpZiAoIVdLU3RyaW5nSXNFcXVh
bFRvVVRGOENTdHJpbmcobWVzc2FnZU5hbWUsICJDcmFzaCIpKQorICAgICAgICAgICAgcmV0dXJu
OworICAgICAgICBhYm9ydCgpOworICAgIH0KK307CisKK3N0YXRpYyBJbmplY3RlZEJ1bmRsZVRl
c3Q6OlJlZ2lzdGVyPFdLVmlld0lzQWN0aXZlU2V0SXNBY3RpdmVUZXN0PiByZWdpc3RyYXIoIldL
Vmlld0lzQWN0aXZlU2V0SXNBY3RpdmVUZXN0Iik7CisKK30gLy8gbmFtZXNwYWNlIFRlc3RXZWJL
aXRBUEkKKwo=
</data>
<flag name="review"
          id="229443"
          type_id="1"
          status="+"
          setter="noam"
    />
    <flag name="commit-queue"
          id="229449"
          type_id="3"
          status="-"
          setter="noam"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>207659</attachid>
            <date>2013-07-29 08:38:03 -0700</date>
            <delta_ts>2013-07-29 09:23:57 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-119067-20130729113800.patch</filename>
            <type>text/plain</type>
            <size>17895</size>
            <attacher name="Sergio Correia (qrwteyrutiyoup)">sergio</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUzNDIyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODk5Y2E3ODM1OWZhYjY2
YzJmYTk4MGUzMDI0M2IzYTc2YTZmMmU5MS4uMzBmMDM0NTg0NjQyN2U5N2YwMmRjOWU5MGM2YTk1
NDA2MmFiYjJhZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDEzLTA3LTI5ICBTZXJn
aW8gQ29ycmVpYSAgPHNlcmdpby5jb3JyZWlhQG9wZW5ib3NzYS5vcmc+CisKKyAgICAgICAgQ29v
cmRpbmF0ZWRHcmFwaGljczogQWRkIEFQSSB0byBnZXQgYW5kIHNldCB0aGUgYWN0aXZlIHN0YXRl
IG9mIGEgV2ViVmlldworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTE5MDY3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTm9hbSBSb3NlbnRoYWwuCisKKyAg
ICAgICAgQWRkZWQgYSBtZXRob2QgdG8gcmV0dXJuIHdoZXRoZXIgYSBzY2VuZSBpcyBhY3RpdmUg
b3Igbm90LgorCisgICAgICAgIE5vIG5ldyB0ZXN0cywgbm8gYmVoYXZpb3IgY2hhbmdlLgorCisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVk
R3JhcGhpY3NTY2VuZS5oOgorICAgICAgICAoV2ViQ29yZTo6Q29vcmRpbmF0ZWRHcmFwaGljc1Nj
ZW5lOjppc0FjdGl2ZSk6IEFkZGVkIG1ldGhvZCB0byByZXR1cm4gdGhlCisgICAgICAgIGFjdGl2
ZSBzdGF0ZSBvZiB0aGUgc2NlbmUuCisKIDIwMTMtMDctMjkgIEt3YW5nIFl1bCBTZW8gIDxza3l1
bEBjb21wYW55MTAwLm5ldD4KIAogICAgICAgICBbRUZMXSBJbXByb3ZlIHN0cmluZyB1c2UgaW4g
RXJyb3JzRWZsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2Uv
V2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggMzhmYjEwYmRkZjFjMDMxMzE5YjE5MTBjMjBlNDVhMDZi
ZWZmNjUxYS4uOTRkNmJhNDI4NGNmYzQwMjI5Y2EzMzkxMGI5YTQ1NGYxNjdlYTk1MiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDM5IEBACisyMDEzLTA3LTI5ICBTZXJnaW8gQ29ycmVpYSAgPHNlcmdp
by5jb3JyZWlhQG9wZW5ib3NzYS5vcmc+CisKKyAgICAgICAgQ29vcmRpbmF0ZWRHcmFwaGljczog
QWRkIEFQSSB0byBnZXQgYW5kIHNldCB0aGUgYWN0aXZlIHN0YXRlIG9mIGEgV2ViVmlldworICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE5MDY3CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTm9hbSBSb3NlbnRoYWwuCisKKyAgICAgICAgQSB2aWV3IGJlaW5n
IGluIHRoZSAiYWN0aXZlIiBzdGF0ZSBnZW5lcmFsbHkgbWVhbnMgdGhhdCBpdCBpcyBub3QgaW4g
dGhlCisgICAgICAgICJiYWNrZ3JvdW5kIiwgYWx0aG91Z2ggdGhpcyBkZWZpbml0aW9uIGNhbiB2
YXJ5IGRlcGVuZGluZyBvbiB0aGUgcGxhdGZvcm0KKyAgICAgICAgdW5kZXIgY29uc2lkZXJhdGlv
bi4KKworICAgICAgICBUaGlzIHBhdGNoIGFkZHMgdGhlIGZvbGxvd2luZyBBUElzIHRvIFdLVmll
dzoKKyAgICAgICAgLSBib29sIFdLVmlld0lzQWN0aXZlKFdLVmlld1JlZikKKyAgICAgICAgVGhp
cyBBUEkgYWNjZXB0cyBhIFdLVmlld1JlZiBhcyBwYXJhbWV0ZXIgYW5kIHJldHVybnMgYSBib29s
ZWFuIGluZGljYXRpbmcKKyAgICAgICAgd2hldGhlciB0aGUgZ2l2ZW4gdmlldyBpcyBhY3RpdmUu
CisKKyAgICAgICAgLSB2b2lkIFdLVmlld1NldElzQWN0aXZlKFdLVmlld1JlZiwgYm9vbCkKKyAg
ICAgICAgVGhpcyBBUEkgYWNjZXB0cyBhIFdLVmlld1JlZiBhbmQgYSBib29sZWFuIGFzIHBhcmFt
ZXRlcmVzLCBhbmQgaXQgc2V0cyB0aGUKKyAgICAgICAgYWN0aXZlIHN0YXRlIG9mIHRoZSBnaXZl
biB2aWV3IHRvIHRoZSBnaXZlbiBib29sZWFuIGFyZ3VtZW50LgorCisgICAgICAgICogVUlQcm9j
ZXNzL0FQSS9DL0Nvb3JkaW5hdGVkR3JhcGhpY3MvV0tWaWV3LmNwcDoKKyAgICAgICAgKFdLVmll
d0lzQWN0aXZlKTogQVBJIGFkZGVkLgorICAgICAgICAoV0tWaWV3U2V0SXNBY3RpdmUpOiBEaXR0
by4KKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvQ29vcmRpbmF0ZWRHcmFwaGljcy9XS1ZpZXcu
aDogRXhwb3J0IGFmb3JlbWVudGlvbmVkIEFQSS4KKyAgICAgICAgKiBVSVByb2Nlc3MvQ29vcmRp
bmF0ZWRHcmFwaGljcy9XZWJWaWV3LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViVmlldzo6aW5p
dGlhbGl6ZSk6IFVzZSBuZXcgc2V0QWN0aXZlIG1ldGhvZC4KKyAgICAgICAgKFdlYktpdDo6V2Vi
Vmlldzo6c2V0QWN0aXZlKTogQWRkZWQgbWV0aG9kIHRvIHNldCB0aGUgYWN0aXZlIHN0YXRlIG9m
IHRoZQorICAgICAgICB2aWV3LgorICAgICAgICAoV2ViS2l0OjpXZWJWaWV3Ojppc0FjdGl2ZSk6
IEFkZGVkIG1ldGhvZCB0byByZXR1cm4gdGhlIGFjdGl2ZSBzdGF0ZSBvZgorICAgICAgICB2aWV3
LgorICAgICAgICAoV2ViS2l0OjpXZWJWaWV3OjplbnRlckFjY2VsZXJhdGVkQ29tcG9zaXRpbmdN
b2RlKTogVXNlIG5ldyBzZXRBY3RpdmUKKyAgICAgICAgbWV0aG9kLgorICAgICAgICAoV2ViS2l0
OjpXZWJWaWV3OjpleGl0QWNjZWxlcmF0ZWRDb21wb3NpdGluZ01vZGUpOiBEaXR0by4KKyAgICAg
ICAgKiBVSVByb2Nlc3MvQ29vcmRpbmF0ZWRHcmFwaGljcy9XZWJWaWV3Lmg6IEFkZGVkIGRlY2xh
cmF0aW9ucyBvZiBpc0FjdGl2ZQorICAgICAgICBhbmQgc2V0QWN0aXZlLgorCiAyMDEzLTA3LTI5
ICBaYW4gRG9iZXJzZWsgIDx6ZG9iZXJzZWtAaWdhbGlhLmNvbT4KIAogICAgICAgICBbQXV0b21h
a2VdIFJlbW92ZSByZWZlcmVuY2VzIHRvIG5vbi1leGlzdGVudCAqX0NGTEFHUyBhbmQgKl9MSUJT
IHZhcmlhYmxlcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
dGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZS5oIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3Jh
cGhpY3NTY2VuZS5oCmluZGV4IDdmYTkyYWQ4NzU3NDNlMzYyYjEwZDBhYjVhNzVkZmE0MTE5ZmI2
ODEuLmI5ODRkOTUxMmU2MTY4ZWJmZTg4N2UwN2VmZDRmNTIwZGVjYmY0NWYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9Db29y
ZGluYXRlZEdyYXBoaWNzU2NlbmUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lLmgKQEAgLTc3
LDYgKzc3LDggQEAgcHVibGljOgogICAgIC8vIFRoZSBwYWludGluZyB0aHJlYWQgbXVzdCBsb2Nr
IHRoZSBtYWluIHRocmVhZCB0byB1c2UgYmVsb3cgdHdvIG1ldGhvZHMsIGJlY2F1c2UgdHdvIG1l
dGhvZHMgYWNjZXNzIG1lbWJlcnMgdGhhdCB0aGUgbWFpbiB0aHJlYWQgbWFuYWdlcy4gU2VlIG1f
Y2xpZW50LgogICAgIC8vIEN1cnJlbnRseSwgUVF1aWNrV2ViUGFnZTo6dXBkYXRlUGFpbnROb2Rl
KCkgbG9ja3MgdGhlIG1haW4gdGhyZWFkIGJlZm9yZSBjYWxsaW5nIGJvdGggbWV0aG9kcy4KICAg
ICB2b2lkIHB1cmdlR0xSZXNvdXJjZXMoKTsKKworICAgIGJvb2wgaXNBY3RpdmUoKSBjb25zdCB7
IHJldHVybiBtX2lzQWN0aXZlOyB9CiAgICAgdm9pZCBzZXRBY3RpdmUoYm9vbCk7CiAKICAgICB2
b2lkIGNvbW1pdFNjZW5lU3RhdGUoY29uc3QgQ29vcmRpbmF0ZWRHcmFwaGljc1N0YXRlJik7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvQ29vcmRpbmF0ZWRHcmFw
aGljcy9XS1ZpZXcuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL0Nvb3JkaW5h
dGVkR3JhcGhpY3MvV0tWaWV3LmNwcAppbmRleCAyZWQ3NGQzNzZlN2RlMWRiMTc5ZTg3YjRiMWRj
YTEyMGVlMWQyMDNhLi41MzA0MTA4MTI5ZTRlNWI3NDk5YmE4YTlhNWQzNzk0MTM4MTJkNDBkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvQ29vcmRpbmF0ZWRHcmFw
aGljcy9XS1ZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9Db29y
ZGluYXRlZEdyYXBoaWNzL1dLVmlldy5jcHAKQEAgLTU1LDYgKzU1LDE2IEBAIHZvaWQgV0tWaWV3
U2V0Vmlld0NsaWVudChXS1ZpZXdSZWYgdmlld1JlZiwgY29uc3QgV0tWaWV3Q2xpZW50KiBjbGll
bnQpCiAgICAgdG9JbXBsKHZpZXdSZWYpLT5pbml0aWFsaXplQ2xpZW50KGNsaWVudCk7CiB9CiAK
K2Jvb2wgV0tWaWV3SXNBY3RpdmUoV0tWaWV3UmVmIHZpZXdSZWYpCit7CisgICAgcmV0dXJuIHRv
SW1wbCh2aWV3UmVmKS0+aXNBY3RpdmUoKTsKK30KKwordm9pZCBXS1ZpZXdTZXRJc0FjdGl2ZShX
S1ZpZXdSZWYgdmlld1JlZiwgYm9vbCBpc0FjdGl2ZSkKK3sKKyAgICB0b0ltcGwodmlld1JlZikt
PnNldEFjdGl2ZShpc0FjdGl2ZSk7Cit9CisKIGJvb2wgV0tWaWV3SXNGb2N1c2VkKFdLVmlld1Jl
ZiB2aWV3UmVmKQogewogICAgIHJldHVybiB0b0ltcGwodmlld1JlZiktPmlzRm9jdXNlZCgpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL0Nvb3JkaW5hdGVkR3Jh
cGhpY3MvV0tWaWV3LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvQ29vcmRpbmF0
ZWRHcmFwaGljcy9XS1ZpZXcuaAppbmRleCAxZWU1NWVhMzQ1NDIyMzY0NzdiMTVkNmI5NmFkYjUw
ZjlhZWIwYTg4Li4yZDNiMzAxZjU5Y2FhNTY2MDVhN2RkZjZmNWIyYTczMjhiYmJmOTJhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvQ29vcmRpbmF0ZWRHcmFwaGlj
cy9XS1ZpZXcuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvQ29vcmRpbmF0
ZWRHcmFwaGljcy9XS1ZpZXcuaApAQCAtNzMsNiArNzMsOSBAQCBXS19FWFBPUlQgdm9pZCBXS1Zp
ZXdTZXRTaXplKFdLVmlld1JlZiwgV0tTaXplIHNpemUpOwogCiBXS19FWFBPUlQgdm9pZCBXS1Zp
ZXdTZXRWaWV3Q2xpZW50KFdLVmlld1JlZiwgY29uc3QgV0tWaWV3Q2xpZW50Kik7CiAKK1dLX0VY
UE9SVCBib29sIFdLVmlld0lzQWN0aXZlKFdLVmlld1JlZik7CitXS19FWFBPUlQgdm9pZCBXS1Zp
ZXdTZXRJc0FjdGl2ZShXS1ZpZXdSZWYsIGJvb2wpOworCiBXS19FWFBPUlQgYm9vbCBXS1ZpZXdJ
c0ZvY3VzZWQoV0tWaWV3UmVmKTsKIFdLX0VYUE9SVCB2b2lkIFdLVmlld1NldElzRm9jdXNlZChX
S1ZpZXdSZWYsIGJvb2wpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
Q29vcmRpbmF0ZWRHcmFwaGljcy9XZWJWaWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9Db29yZGluYXRlZEdyYXBoaWNzL1dlYlZpZXcuY3BwCmluZGV4IDI5Mzc0NWU0OGRjMTRmNjk5
YTA5YWUyNGJkNGUyYTM5MmM5ZWRlYTUuLjFjMWNhNGFhYmJhZWIxN2VhMzRiNjk4ODQwMThiZGFi
ZmY4OTllMDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9Db29yZGluYXRl
ZEdyYXBoaWNzL1dlYlZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9Db29y
ZGluYXRlZEdyYXBoaWNzL1dlYlZpZXcuY3BwCkBAIC03Myw4ICs3MywxNyBAQCBXZWJWaWV3Ojp+
V2ViVmlldygpCiB2b2lkIFdlYlZpZXc6OmluaXRpYWxpemUoKQogewogICAgIG1fcGFnZS0+aW5p
dGlhbGl6ZVdlYlBhZ2UoKTsKLSAgICBpZiAoQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lKiBzY2Vu
ZSA9IGNvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZSgpKQotICAgICAgICBzY2VuZS0+c2V0QWN0aXZl
KHRydWUpOworICAgIHNldEFjdGl2ZSh0cnVlKTsKK30KKwordm9pZCBXZWJWaWV3OjpzZXRBY3Rp
dmUoYm9vbCBhY3RpdmUpCit7CisgICAgQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lKiBzY2VuZSA9
IGNvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZSgpOworICAgIGlmICghc2NlbmUgfHwgc2NlbmUtPmlz
QWN0aXZlKCkgPT0gYWN0aXZlKQorICAgICAgICByZXR1cm47CisKKyAgICBzY2VuZS0+c2V0QWN0
aXZlKGFjdGl2ZSk7CisgICAgbV9wYWdlLT52aWV3U3RhdGVEaWRDaGFuZ2UoV2ViUGFnZVByb3h5
OjpWaWV3V2luZG93SXNBY3RpdmUpOwogfQogCiB2b2lkIFdlYlZpZXc6OnNldFNpemUoY29uc3Qg
V2ViQ29yZTo6SW50U2l6ZSYgc2l6ZSkKQEAgLTI5OCw2ICszMDcsMTUgQEAgV2ViQ29yZTo6SW50
U2l6ZSBXZWJWaWV3Ojp2aWV3U2l6ZSgpCiAgICAgcmV0dXJuIHJvdW5kZWRJbnRTaXplKGRpcFNp
emUoKSk7CiB9CiAKK2Jvb2wgV2ViVmlldzo6aXNBY3RpdmUoKSBjb25zdAoreworICAgIGNvbnN0
IENvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZSogc2NlbmUgPSBjb25zdF9jYXN0PFdlYlZpZXcqPih0
aGlzKS0+Y29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lKCk7CisgICAgaWYgKCFzY2VuZSkKKyAgICAg
ICAgcmV0dXJuIGZhbHNlOworCisgICAgcmV0dXJuIHNjZW5lLT5pc0FjdGl2ZSgpOworfQorCiBi
b29sIFdlYlZpZXc6OmlzVmlld1dpbmRvd0FjdGl2ZSgpCiB7CiAgICAgbm90SW1wbGVtZW50ZWQo
KTsKQEAgLTQyNiwxNCArNDQ0LDEyIEBAIHZvaWQgV2ViVmlldzo6c2V0RmluZEluZGljYXRvcihQ
YXNzUmVmUHRyPEZpbmRJbmRpY2F0b3I+LCBib29sLCBib29sKQogCiB2b2lkIFdlYlZpZXc6OmVu
dGVyQWNjZWxlcmF0ZWRDb21wb3NpdGluZ01vZGUoY29uc3QgTGF5ZXJUcmVlQ29udGV4dCYpCiB7
Ci0gICAgaWYgKENvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZSogc2NlbmUgPSBjb29yZGluYXRlZEdy
YXBoaWNzU2NlbmUoKSkKLSAgICAgICAgc2NlbmUtPnNldEFjdGl2ZSh0cnVlKTsKKyAgICBzZXRB
Y3RpdmUodHJ1ZSk7CiB9CiAKIHZvaWQgV2ViVmlldzo6ZXhpdEFjY2VsZXJhdGVkQ29tcG9zaXRp
bmdNb2RlKCkKIHsKLSAgICBpZiAoQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lKiBzY2VuZSA9IGNv
b3JkaW5hdGVkR3JhcGhpY3NTY2VuZSgpKQotICAgICAgICBzY2VuZS0+c2V0QWN0aXZlKGZhbHNl
KTsKKyAgICBzZXRBY3RpdmUoZmFsc2UpOwogfQogCiB2b2lkIFdlYlZpZXc6OnVwZGF0ZUFjY2Vs
ZXJhdGVkQ29tcG9zaXRpbmdNb2RlKGNvbnN0IExheWVyVHJlZUNvbnRleHQmKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0Nvb3JkaW5hdGVkR3JhcGhpY3MvV2ViVmlldy5o
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0Nvb3JkaW5hdGVkR3JhcGhpY3MvV2ViVmlldy5o
CmluZGV4IGU3OWEyMzhlMzRhOTE5NjFjZDUxMDUxNDQ2YmMyNWU2Njc2NmU4MmUuLmFkMzliYjFi
MDExN2Y1YThhMWFkNDM4NjAzMDY1YzBmMmE5YjYyOGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9Db29yZGluYXRlZEdyYXBoaWNzL1dlYlZpZXcuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQ29vcmRpbmF0ZWRHcmFwaGljcy9XZWJWaWV3LmgKQEAgLTU3LDYg
KzU3LDkgQEAgcHVibGljOgogICAgIHZvaWQgc2V0U2l6ZShjb25zdCBXZWJDb3JlOjpJbnRTaXpl
Jik7CiAgICAgY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgc2l6ZSgpIGNvbnN0IHsgcmV0dXJuIG1f
c2l6ZTsgfQogCisgICAgYm9vbCBpc0FjdGl2ZSgpIGNvbnN0OworICAgIHZvaWQgc2V0QWN0aXZl
KGJvb2wpOworCiAgICAgYm9vbCBpc0ZvY3VzZWQoKSBjb25zdCB7IHJldHVybiBtX2ZvY3VzZWQ7
IH0KICAgICB2b2lkIHNldEZvY3VzZWQoYm9vbCk7CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5n
ZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCBlMWFjNmIyYmE2YjFlOGMwNDFiZDgxODVhYjc5
YTViNGY2YmUzZDhjLi5lM2VkYTczZmQ5NGRiYjI0ZTY2ZTk2ZGY2YWJmNTE3MTVhNjNmOGE3IDEw
MDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMjQgQEAKKzIwMTMtMDctMjkgIFNlcmdpbyBDb3JyZWlhICA8c2VyZ2lvLmNvcnJlaWFAb3Bl
bmJvc3NhLm9yZz4KKworICAgICAgICBDb29yZGluYXRlZEdyYXBoaWNzOiBBZGQgQVBJIHRvIGdl
dCBhbmQgc2V0IHRoZSBhY3RpdmUgc3RhdGUgb2YgYSBXZWJWaWV3CisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTkwNjcKKworICAgICAgICBSZXZpZXdl
ZCBieSBOb2FtIFJvc2VudGhhbC4KKworICAgICAgICBBZGRlZCBBUEkgdGVzdHMgZm9yIFdLVmll
d0lzQWN0aXZlIGFuZCBXS1ZpZXdTZXRJc0FjdGl2ZS4KKworICAgICAgICAqIFRlc3RXZWJLaXRB
UEkvUGxhdGZvcm1FZmwuY21ha2U6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJL
aXQyL0Nvb3JkaW5hdGVkR3JhcGhpY3MvV0tWaWV3SXNBY3RpdmVTZXRJc0FjdGl2ZS5jcHA6IEFk
ZGVkLgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6ZGlkRmluaXNoTG9hZEZvckZyYW1lKToKKyAg
ICAgICAgKFRlc3RXZWJLaXRBUEk6OndlYlByb2Nlc3NDcmFzaGVkKToKKyAgICAgICAgKFRlc3RX
ZWJLaXRBUEk6OndlYlByb2Nlc3NSZWxhdW5jaGVkKToKKyAgICAgICAgKFRlc3RXZWJLaXRBUEk6
OlRFU1QpOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9Db29yZGluYXRl
ZEdyYXBoaWNzL1dLVmlld0lzQWN0aXZlU2V0SXNBY3RpdmVfQnVuZGxlLmNwcDoKKyAgICAgICAg
QnVuZGxlIGFkZGVkIHRvIGFsbG93IGNyYXNoaW5nIHRoZSBXZWJQcm9jZXNzIGFuZCB0ZXN0aW5n
IHRoZSBhY3RpdmUgc3RhdGUgb2YgYSB2aWV3CisgICAgICAgIHVuZGVyIHN1Y2ggY29uZGl0aW9u
LgorICAgICAgICAoVGVzdFdlYktpdEFQSTo6V0tWaWV3SXNBY3RpdmVTZXRJc0FjdGl2ZVRlc3Q6
OldLVmlld0lzQWN0aXZlU2V0SXNBY3RpdmVUZXN0KToKKyAgICAgICAgKFRlc3RXZWJLaXRBUEk6
OldLVmlld0lzQWN0aXZlU2V0SXNBY3RpdmVUZXN0OjpkaWRSZWNlaXZlTWVzc2FnZSk6CisKIDIw
MTMtMDctMjkgIFphbiBEb2JlcnNlayAgPHpkb2JlcnNla0BpZ2FsaWEuY29tPgogCiAgICAgICAg
IFtBdXRvbWFrZV0gUmVtb3ZlIHJlZmVyZW5jZXMgdG8gbm9uLWV4aXN0ZW50ICpfQ0ZMQUdTIGFu
ZCAqX0xJQlMgdmFyaWFibGVzCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1BsYXRm
b3JtRWZsLmNtYWtlIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9QbGF0Zm9ybUVmbC5jbWFrZQppbmRl
eCAyOGVhZjc3ZjU5MjNhNmJlOGIyM2Y5NDk2MTZhMjcyZDVkOTc0YTI0Li5kZmNhNDA5OTM5NzY4
YWQ5MmM5ZDQ4ZmNiZjQ0NDRiNGYwMDBjYTYyIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0
QVBJL1BsYXRmb3JtRWZsLmNtYWtlCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvUGxhdGZvcm1F
ZmwuY21ha2UKQEAgLTU0LDYgKzU0LDcgQEAgc2V0KHRlc3Rfd2ViY29yZV9CSU5BUklFUwogCiAj
IEluIGhlcmUgd2UgbGlzdCB0aGUgYnVuZGxlcyB0aGF0IGFyZSB1c2VkIGJ5IG91ciBzcGVjaWZp
YyBXSzIgQVBJIFRlc3RzCiBsaXN0KEFQUEVORCBidW5kbGVfaGFybmVzc19TT1VSQ0VTCisgICAg
JHtURVNUV0VCS0lUQVBJX0RJUn0vVGVzdHMvV2ViS2l0Mi9Db29yZGluYXRlZEdyYXBoaWNzL1dL
Vmlld0lzQWN0aXZlU2V0SXNBY3RpdmVfQnVuZGxlLmNwcAogICAgICR7VEVTVFdFQktJVEFQSV9E
SVJ9L1Rlc3RzL1dlYktpdDIvZWZsL1dLVmlld0NsaWVudFdlYlByb2Nlc3NDYWxsYmFja3NfQnVu
ZGxlLmNwcAogKQogCkBAIC0xMDAsNiArMTAxLDcgQEAgc2V0KHRlc3Rfd2Via2l0Ml9hcGlfQklO
QVJJRVMKICAgICBXS1VSTAogICAgIFdpbGxMb2FkCiAgICAgV2lsbFNlbmRTdWJtaXRFdmVudAor
ICAgIENvb3JkaW5hdGVkR3JhcGhpY3MvV0tWaWV3SXNBY3RpdmVTZXRJc0FjdGl2ZQogICAgIENv
b3JkaW5hdGVkR3JhcGhpY3MvV0tWaWV3VXNlclZpZXdwb3J0VG9Db250ZW50cwogICAgIGVmbC9X
S1ZpZXdDbGllbnRXZWJQcm9jZXNzQ2FsbGJhY2tzCiApCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0
V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvQ29vcmRpbmF0ZWRHcmFwaGljcy9XS1ZpZXdJc0FjdGl2
ZVNldElzQWN0aXZlLmNwcCBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9Db29y
ZGluYXRlZEdyYXBoaWNzL1dLVmlld0lzQWN0aXZlU2V0SXNBY3RpdmUuY3BwCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjlhOWU1ZGQwMjdjNzZmNWFkNzY3NWU4MThmZGZmZjY3NzMwNWJiYTEKLS0tIC9kZXYvbnVsbAor
KysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvQ29vcmRpbmF0ZWRHcmFwaGlj
cy9XS1ZpZXdJc0FjdGl2ZVNldElzQWN0aXZlLmNwcApAQCAtMCwwICsxLDEzMSBAQAorLyoKKyAq
IENvcHlyaWdodCAoQykgMjAxMyBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlh
cnkoLWllcykuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6Cisg
KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBU
SEUgQ09QWVJJR0hUIEhPTERFUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBU
SEUgQ09QWVJJR0hUIEhPTERFUlMgT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBP
UiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAor
ICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4g
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICog
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiUGxhdGZv
cm1VdGlsaXRpZXMuaCIKKyNpbmNsdWRlICJUZXN0LmgiCisKKyNpbmNsdWRlIDxXZWJLaXQyL1dL
Q29udGV4dC5oPgorI2luY2x1ZGUgPFdlYktpdDIvV0tQYWdlLmg+CisjaW5jbHVkZSA8V2ViS2l0
Mi9XS1JldGFpblB0ci5oPgorI2luY2x1ZGUgPFdlYktpdDIvV0tWaWV3Lmg+CisKK25hbWVzcGFj
ZSBUZXN0V2ViS2l0QVBJIHsKKworc3RhdGljIGJvb2wgZGlkV2ViUHJvY2Vzc0NyYXNoID0gZmFs
c2U7CitzdGF0aWMgYm9vbCBkaWRXZWJQcm9jZXNzUmVsYXVuY2ggPSBmYWxzZTsKK3N0YXRpYyBi
b29sIGRpZEZpbmlzaExvYWQgPSBmYWxzZTsKKworc3RhdGljIHZvaWQgZGlkRmluaXNoTG9hZEZv
ckZyYW1lKFdLUGFnZVJlZiwgV0tGcmFtZVJlZiwgV0tUeXBlUmVmLCBjb25zdCB2b2lkKikKK3sK
KyAgICBkaWRGaW5pc2hMb2FkID0gdHJ1ZTsKK30KKworc3RhdGljIHZvaWQgd2ViUHJvY2Vzc0Ny
YXNoZWQoV0tWaWV3UmVmIHZpZXcsIFdLVVJMUmVmLCBjb25zdCB2b2lkKikKK3sKKyAgICAvLyBX
ZWJQcm9jZXNzIGNyYXNoZWQsIHNvIGF0IHRoaXMgcG9pbnQgdGhlIHZpZXcgc2hvdWxkIG5vdCBi
ZSBhY3RpdmUuCisgICAgQVNTRVJUX0ZBTFNFKFdLVmlld0lzQWN0aXZlKHZpZXcpKTsKKyAgICBk
aWRXZWJQcm9jZXNzQ3Jhc2ggPSB0cnVlOworfQorCitzdGF0aWMgdm9pZCB3ZWJQcm9jZXNzUmVs
YXVuY2hlZChXS1ZpZXdSZWYgdmlldywgY29uc3Qgdm9pZCopCit7CisgICAgLy8gV2ViUHJvY2Vz
cyBqdXN0IHJlbGF1bmNoZWQsIHNvIGF0IHRoaXMgcG9pbnQgdGhlIHZpZXcgc2hvdWxkIG5vdCBi
ZSBhY3RpdmUuCisgICAgQVNTRVJUX0ZBTFNFKFdLVmlld0lzQWN0aXZlKHZpZXcpKTsKKworICAg
IGRpZFdlYlByb2Nlc3NSZWxhdW5jaCA9IHRydWU7Cit9CisKK1RFU1QoV2ViS2l0MiwgV0tWaWV3
SXNBY3RpdmVTZXRJc0FjdGl2ZSkKK3sKKyAgICBXS1JldGFpblB0cjxXS0NvbnRleHRSZWY+IGNv
bnRleHQgPSBhZG9wdFdLKFdLQ29udGV4dENyZWF0ZSgpKTsKKyAgICBXS1JldGFpblB0cjxXS1Zp
ZXdSZWY+IHZpZXcgPSBhZG9wdFdLKFdLVmlld0NyZWF0ZShjb250ZXh0LmdldCgpLCAwKSk7CisK
KyAgICBXS1ZpZXdJbml0aWFsaXplKHZpZXcuZ2V0KCkpOworCisgICAgLy8gQXQgdGhpcyBwb2lu
dCB3ZSBzaG91bGQgaGF2ZSBhbiBhY3RpdmUgdmlldy4KKyAgICBBU1NFUlRfVFJVRShXS1ZpZXdJ
c0FjdGl2ZSh2aWV3LmdldCgpKSk7CisKKyAgICAvLyBOb3cgd2UgYXJlIGdvaW5nIHRvIHBsYXkg
d2l0aCBpdHMgYWN0aXZlIHN0YXRlIGEgZmV3IHRpbWVzLgorICAgIFdLVmlld1NldElzQWN0aXZl
KHZpZXcuZ2V0KCksIHRydWUpOworICAgIEFTU0VSVF9UUlVFKFdLVmlld0lzQWN0aXZlKHZpZXcu
Z2V0KCkpKTsKKworICAgIFdLVmlld1NldElzQWN0aXZlKHZpZXcuZ2V0KCksIGZhbHNlKTsKKyAg
ICBBU1NFUlRfRkFMU0UoV0tWaWV3SXNBY3RpdmUodmlldy5nZXQoKSkpOworCisgICAgV0tWaWV3
U2V0SXNBY3RpdmUodmlldy5nZXQoKSwgZmFsc2UpOworICAgIEFTU0VSVF9GQUxTRShXS1ZpZXdJ
c0FjdGl2ZSh2aWV3LmdldCgpKSk7CisKKyAgICBXS1ZpZXdTZXRJc0FjdGl2ZSh2aWV3LmdldCgp
LCB0cnVlKTsKKyAgICBBU1NFUlRfVFJVRShXS1ZpZXdJc0FjdGl2ZSh2aWV3LmdldCgpKSk7Cit9
CisKK1RFU1QoV2ViS2l0MiwgV0tWaWV3SXNBY3RpdmUpCit7CisgICAgV0tSZXRhaW5QdHI8V0tD
b250ZXh0UmVmPiBjb250ZXh0ID0gYWRvcHRXSyhVdGlsOjpjcmVhdGVDb250ZXh0Rm9ySW5qZWN0
ZWRCdW5kbGVUZXN0KCJXS1ZpZXdJc0FjdGl2ZVNldElzQWN0aXZlVGVzdCIpKTsKKyAgICBXS1Jl
dGFpblB0cjxXS1ZpZXdSZWY+IHZpZXcgPSBhZG9wdFdLKFdLVmlld0NyZWF0ZShjb250ZXh0Lmdl
dCgpLCAwKSk7CisKKyAgICBXS1ZpZXdDbGllbnQgdmlld0NsaWVudDsKKyAgICBtZW1zZXQoJnZp
ZXdDbGllbnQsIDAsIHNpemVvZihXS1ZpZXdDbGllbnQpKTsKKyAgICB2aWV3Q2xpZW50LnZlcnNp
b24gPSBrV0tWaWV3Q2xpZW50Q3VycmVudFZlcnNpb247CisgICAgdmlld0NsaWVudC53ZWJQcm9j
ZXNzQ3Jhc2hlZCA9IHdlYlByb2Nlc3NDcmFzaGVkOworICAgIHZpZXdDbGllbnQud2ViUHJvY2Vz
c0RpZFJlbGF1bmNoID0gd2ViUHJvY2Vzc1JlbGF1bmNoZWQ7CisgICAgV0tWaWV3U2V0Vmlld0Ns
aWVudCh2aWV3LmdldCgpLCAmdmlld0NsaWVudCk7CisKKyAgICBXS1ZpZXdJbml0aWFsaXplKHZp
ZXcuZ2V0KCkpOworCisgICAgLy8gQXQgdGhpcyBwb2ludCB3ZSBzaG91bGQgaGF2ZSBhbiBhY3Rp
dmUgdmlldy4KKyAgICBBU1NFUlRfVFJVRShXS1ZpZXdJc0FjdGl2ZSh2aWV3LmdldCgpKSk7CisK
KyAgICBXS1BhZ2VMb2FkZXJDbGllbnQgcGFnZUxvYWRlckNsaWVudDsKKyAgICBtZW1zZXQoJnBh
Z2VMb2FkZXJDbGllbnQsIDAsIHNpemVvZihXS1BhZ2VMb2FkZXJDbGllbnQpKTsKKyAgICBwYWdl
TG9hZGVyQ2xpZW50LnZlcnNpb24gPSBrV0tQYWdlTG9hZGVyQ2xpZW50Q3VycmVudFZlcnNpb247
CisgICAgcGFnZUxvYWRlckNsaWVudC5kaWRGaW5pc2hMb2FkRm9yRnJhbWUgPSBkaWRGaW5pc2hM
b2FkRm9yRnJhbWU7CisgICAgV0tQYWdlU2V0UGFnZUxvYWRlckNsaWVudChXS1ZpZXdHZXRQYWdl
KHZpZXcuZ2V0KCkpLCAmcGFnZUxvYWRlckNsaWVudCk7CisKKyAgICBjb25zdCBXS1NpemUgc2l6
ZSA9IFdLU2l6ZU1ha2UoMTAwLCAxMDApOworICAgIFdLVmlld1NldFNpemUodmlldy5nZXQoKSwg
c2l6ZSk7CisKKyAgICBkaWRGaW5pc2hMb2FkID0gZmFsc2U7CisgICAgZGlkV2ViUHJvY2Vzc0Ny
YXNoID0gZmFsc2U7CisgICAgZGlkV2ViUHJvY2Vzc1JlbGF1bmNoID0gZmFsc2U7CisKKyAgICBX
S1JldGFpblB0cjxXS1VSTFJlZj4gc2ltcGxlVXJsID0gYWRvcHRXSyhVdGlsOjpjcmVhdGVVUkxG
b3JSZXNvdXJjZSgiLi4vV2ViS2l0Mi9zaW1wbGUiLCAiaHRtbCIpKTsKKyAgICBXS1BhZ2VMb2Fk
VVJMKFdLVmlld0dldFBhZ2Uodmlldy5nZXQoKSksIHNpbXBsZVVybC5nZXQoKSk7CisgICAgVXRp
bDo6cnVuKCZkaWRGaW5pc2hMb2FkKTsKKyAgICBkaWRGaW5pc2hMb2FkID0gZmFsc2U7CisKKyAg
ICBXS0NvbnRleHRQb3N0TWVzc2FnZVRvSW5qZWN0ZWRCdW5kbGUoY29udGV4dC5nZXQoKSwgVXRp
bDo6dG9XSygiQ3Jhc2giKS5nZXQoKSwgMCk7CisgICAgVXRpbDo6cnVuKCZkaWRXZWJQcm9jZXNz
Q3Jhc2gpOworICAgIEFTU0VSVF9UUlVFKGRpZFdlYlByb2Nlc3NDcmFzaCk7CisKKyAgICBXS1Bh
Z2VMb2FkVVJMKFdLVmlld0dldFBhZ2Uodmlldy5nZXQoKSksIHNpbXBsZVVybC5nZXQoKSk7Cisg
ICAgVXRpbDo6cnVuKCZkaWRGaW5pc2hMb2FkKTsKKworICAgIEFTU0VSVF9UUlVFKGRpZFdlYlBy
b2Nlc3NSZWxhdW5jaCk7CisgICAgQVNTRVJUX1RSVUUoZGlkRmluaXNoTG9hZCk7Cit9CisKK30g
Ly8gVGVzdFdlYktpdEFQSQpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJLaXQyL0Nvb3JkaW5hdGVkR3JhcGhpY3MvV0tWaWV3SXNBY3RpdmVTZXRJc0FjdGl2ZV9CdW5k
bGUuY3BwIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL0Nvb3JkaW5hdGVkR3Jh
cGhpY3MvV0tWaWV3SXNBY3RpdmVTZXRJc0FjdGl2ZV9CdW5kbGUuY3BwCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmI4
YjFlZjliYjkxNjlkNDA2MzA3YmJiMTgzYjU1YmJlMWFhZmU0ZTEKLS0tIC9kZXYvbnVsbAorKysg
Yi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvQ29vcmRpbmF0ZWRHcmFwaGljcy9X
S1ZpZXdJc0FjdGl2ZVNldElzQWN0aXZlX0J1bmRsZS5jcHAKQEAgLTAsMCArMSw1MiBAQAorLyoK
KyAqIENvcHlyaWdodCAoQykgMjAxMyBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNp
ZGlhcnkoLWllcykuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6
CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0
aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3
aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisg
KiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFM
TCBUSEUgQ09QWVJJR0hUIEhPTERFUlMgT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9S
IEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZ
LCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBP
RiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQor
ICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiSW5q
ZWN0ZWRCdW5kbGVUZXN0LmgiCisjaW5jbHVkZSA8V2ViS2l0Mi9XS1JldGFpblB0ci5oPgorCisj
aW5jbHVkZSA8Y3N0ZGxpYj4KKworbmFtZXNwYWNlIFRlc3RXZWJLaXRBUEkgeworCitjbGFzcyBX
S1ZpZXdJc0FjdGl2ZVNldElzQWN0aXZlVGVzdCA6IHB1YmxpYyBJbmplY3RlZEJ1bmRsZVRlc3Qg
eworcHVibGljOgorICAgIFdLVmlld0lzQWN0aXZlU2V0SXNBY3RpdmVUZXN0KGNvbnN0IHN0ZDo6
c3RyaW5nJiBpZGVudGlmaWVyKQorICAgICAgICA6IEluamVjdGVkQnVuZGxlVGVzdChpZGVudGlm
aWVyKQorICAgIHsKKyAgICB9CisKKyAgICB2aXJ0dWFsIHZvaWQgZGlkUmVjZWl2ZU1lc3NhZ2Uo
V0tCdW5kbGVSZWYgYnVuZGxlLCBXS1N0cmluZ1JlZiBtZXNzYWdlTmFtZSwgV0tUeXBlUmVmIG1l
c3NhZ2VCb2R5KQorICAgIHsKKyAgICAgICAgaWYgKCFXS1N0cmluZ0lzRXF1YWxUb1VURjhDU3Ry
aW5nKG1lc3NhZ2VOYW1lLCAiQ3Jhc2giKSkKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAg
YWJvcnQoKTsKKyAgICB9Cit9OworCitzdGF0aWMgSW5qZWN0ZWRCdW5kbGVUZXN0OjpSZWdpc3Rl
cjxXS1ZpZXdJc0FjdGl2ZVNldElzQWN0aXZlVGVzdD4gcmVnaXN0cmFyKCJXS1ZpZXdJc0FjdGl2
ZVNldElzQWN0aXZlVGVzdCIpOworCit9IC8vIG5hbWVzcGFjZSBUZXN0V2ViS2l0QVBJCisK
</data>

          </attachment>
      

    </bug>

</bugzilla>