<?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>82265</bug_id>
          
          <creation_ts>2012-03-26 17:09:09 -0700</creation_ts>
          <short_desc>[chromium] Add isInputThrottled/didBecomeReadyForAddionalInput to WebWidget to fix input throttling</short_desc>
          <delta_ts>2012-03-26 19:01:58 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>80977</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Nat Duca">nduca</reporter>
          <assigned_to name="Nat Duca">nduca</assigned_to>
          <cc>abarth</cc>
    
    <cc>cc-bugs</cc>
    
    <cc>dglazkov</cc>
    
    <cc>fishd</cc>
    
    <cc>jamesr</cc>
    
    <cc>tkent</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>588336</commentid>
    <comment_count>0</comment_count>
    <who name="Nat Duca">nduca</who>
    <bug_when>2012-03-26 17:09:09 -0700</bug_when>
    <thetext>[chromium] Fix input flow control in threaded compositing mode</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>588339</commentid>
    <comment_count>1</comment_count>
      <attachid>133933</attachid>
    <who name="Nat Duca">nduca</who>
    <bug_when>2012-03-26 17:09:45 -0700</bug_when>
    <thetext>Created attachment 133933
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>588342</commentid>
    <comment_count>2</comment_count>
    <who name="Nat Duca">nduca</who>
    <bug_when>2012-03-26 17:11:04 -0700</bug_when>
    <thetext>This is a temporary fix due to M19 timing and this causing jank there. We will fix this properly with 80977</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>588346</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-26 17:14:30 -0700</bug_when>
    <thetext>Please wait for approval from abarth@webkit.org, dglazkov@chromium.org, fishd@chromium.org, jamesr@chromium.org or tkent@chromium.org before submitting, as this patch contains changes to the Chromium public API. See also https://trac.webkit.org/wiki/ChromiumWebKitAPI.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>588347</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-26 17:14:54 -0700</bug_when>
    <thetext>Attachment 133933 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/Platform/ChangeLog&apos;, u&apos;Source/Platf...&quot; exit_code: 1
Source/WebCore/ChangeLog:8:  You should remove the &apos;No new tests&apos; and either add and list tests, or explain why no new tests were possible.  [changelog/nonewtests] [5]
Total errors found: 1 in 21 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>588354</commentid>
    <comment_count>5</comment_count>
      <attachid>133933</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-03-26 17:22:18 -0700</bug_when>
    <thetext>Comment on attachment 133933
Patch

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

&gt; Source/WebKit/chromium/ChangeLog:3
&gt; +        [chromium] Fix input flow control in threaded compositing mode

this isn&apos;t terribly descriptive - can you change the title to describe what this patch actually has and put some prose in the body of the ChangeLog describing the expected semantics / flow of these calls?

&gt; Source/WebCore/platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:241
&gt; +    ASSERT_NOT_REACHED();

what&apos;s keeping this from being hit? is the expectation that chromium-side code will only call WebWidget::isInputThrottled() if it is not handling scheduling (i.e. WebWidgetHandlesCompositorScheduling() is true)? if so you should document that on WebWidget. Might be easier to just have this return false and have the chromium code unconditionally check

&gt; Source/WebKit/chromium/public/WebWidgetClient.h:77
&gt; +    // FIXME: Make pure virtual once upstream deps are satisfied.

it doesn&apos;t look like anything else in this file is pure virtual</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>588362</commentid>
    <comment_count>6</comment_count>
      <attachid>133938</attachid>
    <who name="Nat Duca">nduca</who>
    <bug_when>2012-03-26 17:31:53 -0700</bug_when>
    <thetext>Created attachment 133938
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>588366</commentid>
    <comment_count>7</comment_count>
      <attachid>133939</attachid>
    <who name="Nat Duca">nduca</who>
    <bug_when>2012-03-26 17:35:47 -0700</bug_when>
    <thetext>Created attachment 133939
oops</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>588425</commentid>
    <comment_count>8</comment_count>
      <attachid>133939</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-03-26 18:24:21 -0700</bug_when>
    <thetext>Comment on attachment 133939
oops

Cool. R=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>588466</commentid>
    <comment_count>9</comment_count>
    <who name="Nat Duca">nduca</who>
    <bug_when>2012-03-26 19:01:58 -0700</bug_when>
    <thetext>Committed r112191: &lt;http://trac.webkit.org/changeset/112191&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>133933</attachid>
            <date>2012-03-26 17:09:45 -0700</date>
            <delta_ts>2012-03-26 17:31:49 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-82265-20120326170944.patch</filename>
            <type>text/plain</type>
            <size>18199</size>
            <attacher name="Nat Duca">nduca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTEyMTUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvUGxhdGZvcm0v
Q2hhbmdlTG9nIGIvU291cmNlL1BsYXRmb3JtL0NoYW5nZUxvZwppbmRleCBiMzI3OWZjZjczYmY3
ODkxNjM0NzY3YWI0YjNlMTc3Y2ZlZjEwNTQyLi4wMDNiMzc5Mjk2NzFmYmYwNzY3NjVhM2E2MDhj
NGMwN2ZiNmRhNWVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvUGxhdGZvcm0vQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9QbGF0Zm9ybS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxMi0wMy0yNiAg
TmF0IER1Y2EgIDxuZHVjYUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW2Nocm9taXVtXSBGaXgg
aW5wdXQgZmxvdyBjb250cm9sIGluIHRocmVhZGVkIGNvbXBvc2l0aW5nIG1vZGUKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgyMjY1CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBjaHJvbWl1bS9wdWJsaWMv
V2ViTGF5ZXJUcmVlVmlldy5oOgorICAgICAgICAoV2ViTGF5ZXJUcmVlVmlldyk6CisgICAgICAg
ICogY2hyb21pdW0vcHVibGljL1dlYkxheWVyVHJlZVZpZXdDbGllbnQuaDoKKyAgICAgICAgKFdl
YkxheWVyVHJlZVZpZXdDbGllbnQpOgorICAgICAgICAoV2ViS2l0OjpXZWJMYXllclRyZWVWaWV3
Q2xpZW50OjpkaWRDb21taXQpOgorCiAyMDEyLTAzLTI1ICBOYXQgRHVjYSAgPG5kdWNhQGNocm9t
aXVtLm9yZz4KIAogICAgICAgICBbY2hyb21pdW1dIFJvdXRlIHdpbGxCZWdpbkZyYW1lIGZyb20g
Y29tcG9zaXRvciB0byBXZWJXaWRnZXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA2OGVjZjEwZDRiZGZhMDI3ODA1
MmFkMTBmNTg1N2VmMjkyNWYxODFmLi41ZjY0MDliNWEyYTYyNWNkZGMzYmE0ZWJmMDRjMGZlMDlh
MWY1NWM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNl
L1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzIgQEAKKzIwMTItMDMtMjYgIE5hdCBEdWNh
ICA8bmR1Y2FAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFtjaHJvbWl1bV0gRml4IGlucHV0IGZs
b3cgY29udHJvbCBpbiB0aHJlYWRlZCBjb21wb3NpdGluZyBtb2RlCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04MjI2NQorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cy4gKE9PUFMhKQorCisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0LmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkNDTGF5ZXJUcmVlSG9zdDo6Y29tbWl0Q29tcGxldGUpOgor
ICAgICAgICAoV2ViQ29yZTo6Q0NMYXllclRyZWVIb3N0Ojpjb21taXRSZXF1ZXN0ZWQpOgorICAg
ICAgICAoV2ViQ29yZSk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2Mv
Q0NMYXllclRyZWVIb3N0Lmg6CisgICAgICAgIChDQ0xheWVyVHJlZUhvc3RDbGllbnQpOgorICAg
ICAgICAoQ0NMYXllclRyZWVIb3N0KToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jaHJv
bWl1bS9jYy9DQ1Byb3h5Lmg6CisgICAgICAgIChDQ1Byb3h5KToKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ1NpbmdsZVRocmVhZFByb3h5LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkNDU2luZ2xlVGhyZWFkUHJveHk6OmNvbW1pdFJlcXVlc3RlZCk6CisgICAgICAg
IChXZWJDb3JlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ1Np
bmdsZVRocmVhZFByb3h5Lmg6CisgICAgICAgIChDQ1NpbmdsZVRocmVhZFByb3h5KToKKyAgICAg
ICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ1RocmVhZFByb3h5LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkNDVGhyZWFkUHJveHk6OmNvbW1pdFJlcXVlc3RlZCk6CisgICAgICAg
IChXZWJDb3JlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ1Ro
cmVhZFByb3h5Lmg6CisgICAgICAgIChDQ1RocmVhZFByb3h5KToKKwogMjAxMi0wMy0yNiAgQW5k
ZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUuY29tPgogCiAgICAgICAgIEZpbmQgaW4gcGFn
ZSBvdmVybGF5IGFuZCBib3VuY3kgYXJlIG5vdCBhbHdheXMgcG9zaXRpb25lZCBjb3JyZWN0bHkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nIGIvU291cmNlL1dl
YktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXggMDdhOWMwNDJlNTNkZTAwY2RlYjliNmI5OWIx
NmJjZjgxYjNhMDg1OS4uZDQ0ODliMmZkZTdiMzhjZGMwYzllZmFjMDEzYzE0Y2U5ZGNlNjQ0ZiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIvU291cmNl
L1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzNiBAQAorMjAxMi0wMy0yNiAg
TmF0IER1Y2EgIDxuZHVjYUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW2Nocm9taXVtXSBGaXgg
aW5wdXQgZmxvdyBjb250cm9sIGluIHRocmVhZGVkIGNvbXBvc2l0aW5nIG1vZGUKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgyMjY1CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwdWJsaWMvV2ViV2lkZ2V0
Lmg6CisgICAgICAgIChXZWJXaWRnZXQpOgorICAgICAgICAoV2ViS2l0OjpXZWJXaWRnZXQ6Omlz
SW5wdXRUaHJvdHRsZWQpOgorICAgICAgICAqIHB1YmxpYy9XZWJXaWRnZXRDbGllbnQuaDoKKyAg
ICAgICAgKFdlYldpZGdldENsaWVudCk6CisgICAgICAgIChXZWJLaXQ6OldlYldpZGdldENsaWVu
dDo6ZGlkQmVjb21lUmVhZHlGb3JBZGRpdGlvbmFsSW5wdXQpOgorICAgICAgICAqIHNyYy9XZWJM
YXllclRyZWVWaWV3LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViTGF5ZXJUcmVlVmlldzo6Y29t
bWl0UmVxdWVzdGVkKToKKyAgICAgICAgKFdlYktpdCk6CisgICAgICAgICogc3JjL1dlYkxheWVy
VHJlZVZpZXdJbXBsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViTGF5ZXJUcmVlVmlld0ltcGw6
OmRpZENvbW1pdCk6CisgICAgICAgIChXZWJLaXQpOgorICAgICAgICAqIHNyYy9XZWJMYXllclRy
ZWVWaWV3SW1wbC5oOgorICAgICAgICAoV2ViTGF5ZXJUcmVlVmlld0ltcGwpOgorICAgICAgICAq
IHNyYy9XZWJWaWV3SW1wbC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlZpZXdJbXBsOjppc0lu
cHV0VGhyb3R0bGVkKToKKyAgICAgICAgKFdlYktpdCk6CisgICAgICAgIChXZWJLaXQ6OldlYlZp
ZXdJbXBsOjpkaWRDb21taXQpOgorICAgICAgICAqIHNyYy9XZWJWaWV3SW1wbC5oOgorICAgICAg
ICAoV2ViVmlld0ltcGwpOgorICAgICAgICAqIHRlc3RzL0NDTGF5ZXJUcmVlSG9zdFRlc3QuY3Bw
OgorICAgICAgICAoV1RGOjpNb2NrTGF5ZXJUcmVlSG9zdENsaWVudDo6ZGlkQ29tbWl0KToKKyAg
ICAgICAgKE1vY2tMYXllclRyZWVIb3N0Q2xpZW50KToKKyAgICAgICAgKiB0ZXN0cy9GYWtlQ0NM
YXllclRyZWVIb3N0Q2xpZW50Lmg6CisgICAgICAgIChGYWtlQ0NMYXllclRyZWVIb3N0Q2xpZW50
KToKKwogMjAxMi0wMy0yNiAgSmFtZXMgUm9iaW5zb24gIDxqYW1lc3JAY2hyb21pdW0ub3JnPgog
CiAgICAgICAgIFNjcm9sbGFibGUgcGx1Z2lucyBub3QgcmVnaXN0ZXJlZCBwcm9wZXJseSBpbiBT
Y3JvbGxpbmdDb29yZGluYXRvcgpkaWZmIC0tZ2l0IGEvU291cmNlL1BsYXRmb3JtL2Nocm9taXVt
L3B1YmxpYy9XZWJMYXllclRyZWVWaWV3LmggYi9Tb3VyY2UvUGxhdGZvcm0vY2hyb21pdW0vcHVi
bGljL1dlYkxheWVyVHJlZVZpZXcuaAppbmRleCAzZWYyOTVkOTQ1NTk4MzE5NzNjY2FiNWVjMjUw
YzI3MDE4OGQ0MDRlLi4yYTE2Yzg2NzA1YzNiOTJjY2I0ZThlZDRjMGI5YTNkNjBmYTIxY2Y0IDEw
MDY0NAotLS0gYS9Tb3VyY2UvUGxhdGZvcm0vY2hyb21pdW0vcHVibGljL1dlYkxheWVyVHJlZVZp
ZXcuaAorKysgYi9Tb3VyY2UvUGxhdGZvcm0vY2hyb21pdW0vcHVibGljL1dlYkxheWVyVHJlZVZp
ZXcuaApAQCAtMTI5LDYgKzEyOSw5IEBAIHB1YmxpYzoKICAgICAvLyBJbmRpY2F0ZXMgdGhhdCB0
aGUgdmlldyBuZWVkcyB0byBiZSByZWRyYXduLiBUaGlzIGlzIHR5cGljYWxseSB1c2VkIHdoZW4g
dGhlIGZyb250YnVmZmVyIGlzIGRhbWFnZWQuCiAgICAgV0VCS0lUX0VYUE9SVCB2b2lkIHNldE5l
ZWRzUmVkcmF3KCk7CiAKKyAgICAvLyBJbmRpY2F0ZXMgd2hldGhlciBhIGNvbW1pdCBpcyBwZW5k
aW5nLgorICAgIFdFQktJVF9FWFBPUlQgYm9vbCBjb21taXRSZXF1ZXN0ZWQoKSBjb25zdDsKKwog
ICAgIC8vIFRyaWdnZXJzIGEgY29tcG9zaXRpbmcgcGFzcy4gSWYgdGhlIGNvbXBvc2l0b3IgdGhy
ZWFkIHdhcyBub3QKICAgICAvLyBlbmFibGVkIHZpYSBXZWJDb21wb3NpdG9yOjppbml0aWFsaXpl
LCB0aGUgY29tcG9zaXRpbmcgcGFzcyBoYXBwZW5zCiAgICAgLy8gaW1tZWRpYXRlbHkuIElmIGl0
IGlzIGVuYWJsZWQsIHRoZSBjb21wb3NpdGluZyBwYXNzIHdpbGwgaGFwcGVuIGF0IGEKZGlmZiAt
LWdpdCBhL1NvdXJjZS9QbGF0Zm9ybS9jaHJvbWl1bS9wdWJsaWMvV2ViTGF5ZXJUcmVlVmlld0Ns
aWVudC5oIGIvU291cmNlL1BsYXRmb3JtL2Nocm9taXVtL3B1YmxpYy9XZWJMYXllclRyZWVWaWV3
Q2xpZW50LmgKaW5kZXggOWY5ZDMyNDY0M2YwNTIyMDRlN2NhNTMzNzExNTE3MjYxMDQyNjVmZS4u
MTkwM2ZmZmE5ZTEyYzk2MjFhOGIzZWE2ZjNlYjg1MjQwYjIzZTM2ZSAxMDA2NDQKLS0tIGEvU291
cmNlL1BsYXRmb3JtL2Nocm9taXVtL3B1YmxpYy9XZWJMYXllclRyZWVWaWV3Q2xpZW50LmgKKysr
IGIvU291cmNlL1BsYXRmb3JtL2Nocm9taXVtL3B1YmxpYy9XZWJMYXllclRyZWVWaWV3Q2xpZW50
LmgKQEAgLTU5LDcgKzU5LDE4IEBAIHB1YmxpYzoKICAgICAvLyBjb250ZXh0IGV2ZW50KS4KICAg
ICB2aXJ0dWFsIHZvaWQgZGlkUmViaW5kR3JhcGhpY3NDb250ZXh0KGJvb2wgc3VjY2VzcykgPSAw
OwogCisgICAgLy8gSW5kaWNhdGVzIHRoYXQgYSBmcmFtZSB3YXMgY29tbWl0dGVkIHRvIHRoZSBp
bXBsIHNpZGUgb2YgdGhlIGNvbXBvc2l0b3IKKyAgICAvLyBmb3IgcmVuZGVyaW5nLgorICAgIC8v
CisgICAgLy8gRklYTUU6IG1ha2UgdGhpcyBub24tdmlydHVhbCB3aGVuIHVpL2NvbXBvc2l0b3Ig
REVQIGlzIHJlc29sdmVkLgorICAgIHZpcnR1YWwgdm9pZCBkaWRDb21taXQoKSB7IH0KKworICAg
IC8vIEluZGljYXRlcyB0aGF0IGEgZnJhbWUgd2FzIGNvbW1pdHRlZCB0byB0aGUgaW1wbCBzaWRl
IGFuZCBkcmF3aW5nCisgICAgLy8gY29tbWFuZHMgZm9yIGl0IHdlcmUgaXNzdWVkIHRvIHRoZSBH
UFUuCiAgICAgdmlydHVhbCB2b2lkIGRpZENvbW1pdEFuZERyYXdGcmFtZSgpID0gMDsKKworICAg
IC8vIEluZGljYXRlcyB0aGF0IGEgZnJhbWUgcHJldmlvdXNseSBpc3N1ZWQgdG8gdGhlIEdQVSBo
YXMgY29tcGxldGVkCisgICAgLy8gcmVuZGVyaW5nLgogICAgIHZpcnR1YWwgdm9pZCBkaWRDb21w
bGV0ZVN3YXBCdWZmZXJzKCkgPSAwOwogCiAgICAgLy8gU2NoZWR1bGVzIGEgY29tcG9zaXRpbmcg
cGFzcywgbWVhbmluZyB0aGUgY2xpZW50IHNob3VsZCBjYWxsCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3QuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRy
ZWVIb3N0LmNwcAppbmRleCAwMjkwYTc1Mzk0ZTY2NTI4Nzg3YTNiY2Q0OWM4ZTZmZjc5NmE0Zjhj
Li5lNDY3ODY3ZGFiMTM1ODFiMTZmODQwYzg3ZDQwYWM1MjhlNTMwZGZkIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhv
c3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2Nj
L0NDTGF5ZXJUcmVlSG9zdC5jcHAKQEAgLTIzMSw2ICsyMzEsNyBAQCB2b2lkIENDTGF5ZXJUcmVl
SG9zdDo6Y29tbWl0Q29tcGxldGUoKQogICAgIG1fZGVsZXRlVGV4dHVyZUFmdGVyQ29tbWl0TGlz
dC5jbGVhcigpOwogICAgIGNsZWFyUGVuZGluZ1VwZGF0ZSgpOwogICAgIG1fY29udGVudHNUZXh0
dXJlTWFuYWdlci0+dW5wcm90ZWN0QWxsVGV4dHVyZXMoKTsKKyAgICBtX2NsaWVudC0+ZGlkQ29t
bWl0KCk7CiB9CiAKIFBhc3NSZWZQdHI8R3JhcGhpY3NDb250ZXh0M0Q+IENDTGF5ZXJUcmVlSG9z
dDo6Y3JlYXRlQ29udGV4dCgpCkBAIC0zMDgsNiArMzA5LDExIEBAIHZvaWQgQ0NMYXllclRyZWVI
b3N0OjpzZXROZWVkc1JlZHJhdygpCiAgICAgICAgIG1fY2xpZW50LT5zY2hlZHVsZUNvbXBvc2l0
ZSgpOwogfQogCitib29sIENDTGF5ZXJUcmVlSG9zdDo6Y29tbWl0UmVxdWVzdGVkKCkgY29uc3QK
K3sKKyAgICByZXR1cm4gbV9wcm94eS0+Y29tbWl0UmVxdWVzdGVkKCk7Cit9CisKIHZvaWQgQ0NM
YXllclRyZWVIb3N0OjpzZXRBbmltYXRpb25FdmVudHMoUGFzc093blB0cjxDQ0FuaW1hdGlvbkV2
ZW50c1ZlY3Rvcj4gZXZlbnRzLCBkb3VibGUgd2FsbENsb2NrVGltZSkKIHsKICAgICBBU1NFUlQo
Q0NUaHJlYWRQcm94eTo6aXNNYWluVGhyZWFkKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0LmggYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3Qu
aAppbmRleCA2ZWI3MmFlMDhjYzUxYTk1MDgwMWVhMmMyODE0MDJiMWQyYjhhYmMyLi42MWZjMmVm
YmVkYjNkNjNhMWFiMTYxZmVjYTAxNmFjZDA4N2M3NjdkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3QuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJl
ZUhvc3QuaApAQCAtNTgsNiArNTgsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIGFwcGx5
U2Nyb2xsQW5kU2NhbGUoY29uc3QgSW50U2l6ZSYgc2Nyb2xsRGVsdGEsIGZsb2F0IHBhZ2VTY2Fs
ZSkgPSAwOwogICAgIHZpcnR1YWwgUGFzc1JlZlB0cjxHcmFwaGljc0NvbnRleHQzRD4gY3JlYXRl
Q29udGV4dCgpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgZGlkUmVjcmVhdGVDb250ZXh0KGJvb2wg
c3VjY2VzcykgPSAwOworICAgIHZpcnR1YWwgdm9pZCBkaWRDb21taXQoKSA9IDA7CiAgICAgdmly
dHVhbCB2b2lkIGRpZENvbW1pdEFuZERyYXdGcmFtZSgpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQg
ZGlkQ29tcGxldGVTd2FwQnVmZmVycygpID0gMDsKIApAQCAtMTgxLDYgKzE4Miw3IEBAIHB1Ymxp
YzoKICAgICAvLyB2aXJ0dWFsIGZvciB0ZXN0aW5nCiAgICAgdmlydHVhbCB2b2lkIHNldE5lZWRz
Q29tbWl0KCk7CiAgICAgdm9pZCBzZXROZWVkc1JlZHJhdygpOworICAgIGJvb2wgY29tbWl0UmVx
dWVzdGVkKCkgY29uc3Q7CiAKICAgICB2b2lkIHNldEFuaW1hdGlvbkV2ZW50cyhQYXNzT3duUHRy
PENDQW5pbWF0aW9uRXZlbnRzVmVjdG9yPiwgZG91YmxlIHdhbGxDbG9ja1RpbWUpOwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ1By
b3h5LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ1By
b3h5LmgKaW5kZXggMDE2MjI2Y2E1MTIwMTMxZmNmZTNmYzEzMzE5YWM3MTYwODc2NzU5Yi4uMWE4
ZGUxNjU0ZWU2Mjc0YTZhMGI4NTVjNDdmOWRmNWYyNDgzYjI2OCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NQcm94eS5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDUHJveHkuaApAQCAt
ODYsNiArODYsOCBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHNldE5lZWRzUmVkcmF3KCkg
PSAwOwogICAgIHZpcnR1YWwgdm9pZCBzZXRWaXNpYmxlKGJvb2wpID0gMDsKIAorICAgIHZpcnR1
YWwgYm9vbCBjb21taXRSZXF1ZXN0ZWQoKSBjb25zdCA9IDA7CisKICAgICB2aXJ0dWFsIHZvaWQg
c3RhcnQoKSA9IDA7IC8vIE11c3QgYmUgY2FsbGVkIGJlZm9yZSB1c2luZyB0aGUgcHJveHkuCiAg
ICAgdmlydHVhbCB2b2lkIHN0b3AoKSA9IDA7IC8vIE11c3QgYmUgY2FsbGVkIGJlZm9yZSBkZWxl
dGluZyB0aGUgcHJveHkuCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2Nocm9taXVtL2NjL0NDU2luZ2xlVGhyZWFkUHJveHkuY3BwIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NTaW5nbGVUaHJlYWRQcm94eS5jcHAK
aW5kZXggMmQ5ZTBmMzQxZmU3MjU3ZDM0Nzk4ZjZjZjFiOGQ0ZGY4NTlkMjBiMC4uNWQwZjVkNjQ2
OTEzYzRhNDZiNDdkOTcxY2E5ZTc0NTE0OWFhOTU5OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NTaW5nbGVUaHJlYWRQcm94eS5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NTaW5n
bGVUaHJlYWRQcm94eS5jcHAKQEAgLTIzNiw2ICsyMzYsMTIgQEAgdm9pZCBDQ1NpbmdsZVRocmVh
ZFByb3h5OjpzZXROZWVkc1JlZHJhdygpCiAgICAgc2V0TmVlZHNDb21taXQoKTsKIH0KIAorYm9v
bCBDQ1NpbmdsZVRocmVhZFByb3h5Ojpjb21taXRSZXF1ZXN0ZWQoKSBjb25zdAoreworICAgIEFT
U0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIHJldHVybiBmYWxzZTsKK30KKwogdm9pZCBDQ1Npbmds
ZVRocmVhZFByb3h5OjpzZXRWaXNpYmxlKGJvb2wgdmlzaWJsZSkKIHsKICAgICBtX2xheWVyVHJl
ZUhvc3RJbXBsLT5zZXRWaXNpYmxlKHZpc2libGUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NTaW5nbGVUaHJlYWRQcm94eS5oIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NTaW5nbGVUaHJl
YWRQcm94eS5oCmluZGV4IGViYmQ5NmUyYzM4ODIyMTg5ZDJiOTBiMjFlNmQ5NzZhMzY3YzBlOWMu
Ljk4ODc0MzJlYmFkNmU1M2NlNDA1MjZjNjBlMTIwMTE2MDYxNjMxNGUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDU2luZ2xlVGhyZWFk
UHJveHkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9j
Yy9DQ1NpbmdsZVRocmVhZFByb3h5LmgKQEAgLTU2LDYgKzU2LDcgQEAgcHVibGljOgogICAgIHZp
cnR1YWwgdm9pZCBzZXROZWVkc0FuaW1hdGUoKTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0TmVlZHND
b21taXQoKTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0TmVlZHNSZWRyYXcoKTsKKyAgICB2aXJ0dWFs
IGJvb2wgY29tbWl0UmVxdWVzdGVkKCkgY29uc3Q7CiAgICAgdmlydHVhbCB2b2lkIHNldFZpc2li
bGUoYm9vbCk7CiAgICAgdmlydHVhbCB2b2lkIHN0YXJ0KCk7CiAgICAgdmlydHVhbCB2b2lkIHN0
b3AoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9t
aXVtL2NjL0NDVGhyZWFkUHJveHkuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY2hyb21pdW0vY2MvQ0NUaHJlYWRQcm94eS5jcHAKaW5kZXggZTUxYTc4NDA4MDJlYjljNTYx
NzUwNDdmODljNWVjYjcwNzY3ZmE4Ny4uYTlmYTZiYmMwNGRmZWFmZjAyNmNhNzk5ZWVjZWEyODE0
NDAzNWNhOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hy
b21pdW0vY2MvQ0NUaHJlYWRQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NUaHJlYWRQcm94eS5jcHAKQEAgLTMwOSw2ICszMDksMTIg
QEAgdm9pZCBDQ1RocmVhZFByb3h5OjpzZXROZWVkc1JlZHJhdygpCiAgICAgQ0NQcm94eTo6aW1w
bFRocmVhZCgpLT5wb3N0VGFzayhjcmVhdGVDQ1RocmVhZFRhc2sodGhpcywgJkNDVGhyZWFkUHJv
eHk6OnNldE5lZWRzUmVkcmF3T25JbXBsVGhyZWFkKSk7CiB9CiAKK2Jvb2wgQ0NUaHJlYWRQcm94
eTo6Y29tbWl0UmVxdWVzdGVkKCkgY29uc3QKK3sKKyAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkp
OworICAgIHJldHVybiBtX2NvbW1pdFJlcXVlc3RlZDsKK30KKwogdm9pZCBDQ1RocmVhZFByb3h5
OjpzZXRWaXNpYmxlKGJvb2wgdmlzaWJsZSkKIHsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0v
Y2MvQ0NUaHJlYWRQcm94eS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hy
b21pdW0vY2MvQ0NUaHJlYWRQcm94eS5oCmluZGV4IDQ4NjFmNzkwOTI2MDFjMDA1YTA1MDUyMGQ1
NDdlZDIxY2RmOWQ3YTAuLjYxNDM0YTZhOWNmNjNlODI5Y2RiYzViN2IyNTE3MDVlOGFmOTU1ZTYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2Nj
L0NDVGhyZWFkUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
aHJvbWl1bS9jYy9DQ1RocmVhZFByb3h5LmgKQEAgLTY1LDYgKzY1LDcgQEAgcHVibGljOgogICAg
IHZpcnR1YWwgdm9pZCBzZXROZWVkc0FuaW1hdGUoKTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0TmVl
ZHNDb21taXQoKTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0TmVlZHNSZWRyYXcoKTsKKyAgICB2aXJ0
dWFsIGJvb2wgY29tbWl0UmVxdWVzdGVkKCkgY29uc3Q7CiAgICAgdmlydHVhbCB2b2lkIHNldFZp
c2libGUoYm9vbCk7CiAgICAgdmlydHVhbCB2b2lkIHN0YXJ0KCk7CiAgICAgdmlydHVhbCB2b2lk
IHN0b3AoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYldp
ZGdldC5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViV2lkZ2V0LmgKaW5kZXgg
YWZjZTZhZTYyMGVjZGU5NWRhNTk3NzY3ZDk2NDg3NjdhMjE4ZWI3Yi4uZmMwMTFjYjhmODYwY2Rm
NDRiZjc2MWRjOTk1MzRiNjdhOGIyZmZmYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9wdWJsaWMvV2ViV2lkZ2V0LmgKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJs
aWMvV2ViV2lkZ2V0LmgKQEAgLTExMiw2ICsxMTIsMTUgQEAgcHVibGljOgogICAgIC8vIHJlbW92
ZWQgd2hlbiB0aGUgV2ViV2lkZ2V0IGludmVyc2lvbiBwYXRjaCBsYW5kcyAtLS0gaHR0cDovL2Ny
YnVnLmNvbS8xMTI4MzcKICAgICB2aXJ0dWFsIHZvaWQgc2V0TmVlZHNSZWRyYXcoKSB7IH0KIAor
ICAgIC8vIFRlbXBvcmFyeSBtZXRob2QgZm9yIHRoZSBlbWJlZGRlciB0byBjaGVjayBmb3IgdGhy
b3R0bGVkIGlucHV0LiBXaGVuIHRoaXMKKyAgICAvLyBpcyB0cnVlLCB0aGUgV2ViV2lkZ2V0IGlz
IGluZGljYXRpbmcgdGhhdCBpdCB3b3VsZCBwcmVmZXIgdG8gbm90IHJlY2VpdmUKKyAgICAvLyBh
ZGRpdGlvbmFsIGlucHV0IGV2ZW50cyB1bnRpbAorICAgIC8vIFdlYldpZGdldENsaWVudDo6ZGlk
QmVjb21lUmVhZHlGb3JBZGRpdGlvbmFsSW5wdXQgaXMgY2FsbGVkLgorICAgIC8vCisgICAgLy8g
VGhpcyBtZXRob2Qgd2lsbCBiZSByZW1vdmVkIHdoZW4gdGhlIFdlYldpZGdldCBpbnZlcnNpb24g
cGF0Y2ggbGFuZHMgLS0tCisgICAgLy8gaHR0cDovL2NyYnVnLmNvbS8xMTI4MzcKKyAgICB2aXJ0
dWFsIGJvb2wgaXNJbnB1dFRocm90dGxlZCgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CisKICAg
ICAvLyBDYWxsZWQgdG8gaW5mb3JtIHRoZSBXZWJXaWRnZXQgb2YgYSBjaGFuZ2UgaW4gdGhlbWUu
CiAgICAgLy8gSW1wbGVtZW50b3JzIHRoYXQgY2FjaGUgcmVuZGVyZWQgY29waWVzIG9mIHdpZGdl
dHMgbmVlZCB0byByZS1yZW5kZXIKICAgICAvLyBvbiByZWNlaXZpbmcgdGhpcyBtZXNzYWdlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJXaWRnZXRDbGllbnQu
aCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYldpZGdldENsaWVudC5oCmluZGV4
IDBjZGRlODI5Yzg4MDFlYzY5YmRkMzAyZjc2YTM3MjdjYjllYmY3ZWMuLjU0ZDQ4OWExNDdhNmQ4
NzIyOWE0NDk2ODhjYjRkYjdkMDVhNjc3YjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vcHVibGljL1dlYldpZGdldENsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vcHVibGljL1dlYldpZGdldENsaWVudC5oCkBAIC03MSw2ICs3MSwxMiBAQCBwdWJsaWM6CiAg
ICAgLy8gRklYTUU6IE1ha2UgcHVyZSB2aXJ0dWFsIG9uY2UgdXBzdHJlYW0gZGVwcyBhcmUgc2F0
aXNmaWVkLgogICAgIHZpcnR1YWwgdm9pZCB3aWxsQmVnaW5Db21wb3NpdG9yRnJhbWUoKSB7IH0K
IAorICAgIC8vIEluZGljYXRlcyB0byB0aGUgZW1iZWRkZXIgdGhhdCB0aGUgV2ViV2lkZ2V0IGlz
IHJlYWR5IGZvciBhZGRpdGlvbmFsCisgICAgLy8gaW5wdXQuCisgICAgLy8KKyAgICAvLyBGSVhN
RTogTWFrZSBwdXJlIHZpcnR1YWwgb25jZSB1cHN0cmVhbSBkZXBzIGFyZSBzYXRpc2ZpZWQuCisg
ICAgdmlydHVhbCB2b2lkIGRpZEJlY29tZVJlYWR5Rm9yQWRkaXRpb25hbElucHV0KCkgeyB9CisK
ICAgICAvLyBDYWxsZWQgZm9yIGNvbXBvc2l0aW5nIG1vZGUgd2hlbiB0aGUgZHJhdyBjb21tYW5k
cyBmb3IgYSBXZWJLaXQtc2lkZQogICAgIC8vIGZyYW1lIGhhdmUgYmVlbiBpc3N1ZWQuCiAgICAg
dmlydHVhbCB2b2lkIGRpZENvbW1pdEFuZERyYXdDb21wb3NpdG9yRnJhbWUoKSB7IH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkxheWVyVHJlZVZpZXcuY3BwIGIv
U291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViTGF5ZXJUcmVlVmlldy5jcHAKaW5kZXggMzMx
NGRjMmY1NDRjMWNhOGM1OWM0NzJiYzAyNWU4YzAwN2Y3MDFmMC4uNTMyNDZiMWNhODdmYjNiMWQx
OTljYmNjZGJmNzJiMzNkZjcxMWVmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1
bS9zcmMvV2ViTGF5ZXJUcmVlVmlldy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvV2ViTGF5ZXJUcmVlVmlldy5jcHAKQEAgLTEyMiw2ICsxMjIsMTEgQEAgdm9pZCBXZWJMYXll
clRyZWVWaWV3OjpzZXROZWVkc1JlZHJhdygpCiAgICAgbV9wcml2YXRlLT5zZXROZWVkc1JlZHJh
dygpOwogfQogCitib29sIFdlYkxheWVyVHJlZVZpZXc6OmNvbW1pdFJlcXVlc3RlZCgpIGNvbnN0
Cit7CisgICAgcmV0dXJuIG1fcHJpdmF0ZS0+Y29tbWl0UmVxdWVzdGVkKCk7Cit9CisKIHZvaWQg
V2ViTGF5ZXJUcmVlVmlldzo6Y29tcG9zaXRlKCkKIHsKICAgICBpZiAoQ0NQcm94eTo6aGFzSW1w
bFRocmVhZCgpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViTGF5
ZXJUcmVlVmlld0ltcGwuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViTGF5ZXJU
cmVlVmlld0ltcGwuY3BwCmluZGV4IDdiMmYxNDZhZWI1MWIxNDhmMmYzMDk4YTcxZTQxOWZjNzFi
NWFlYzYuLmI4ZWY1YTkyMDg0MGM2NzgwYTFiZThiZmY2MjBmNzkwMmMzZmExNGIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkxheWVyVHJlZVZpZXdJbXBsLmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJMYXllclRyZWVWaWV3SW1wbC5jcHAK
QEAgLTEwMSw2ICsxMDEsMTIgQEAgdm9pZCBXZWJMYXllclRyZWVWaWV3SW1wbDo6ZGlkUmVjcmVh
dGVDb250ZXh0KGJvb2wgc3VjY2VzcykKICAgICAgICAgbV9jbGllbnQtPmRpZFJlYmluZEdyYXBo
aWNzQ29udGV4dChzdWNjZXNzKTsKIH0KIAordm9pZCBXZWJMYXllclRyZWVWaWV3SW1wbDo6ZGlk
Q29tbWl0KCkKK3sKKyAgICBpZiAobV9jbGllbnQpCisgICAgICAgIG1fY2xpZW50LT5kaWRDb21t
aXQoKTsKK30KKwogdm9pZCBXZWJMYXllclRyZWVWaWV3SW1wbDo6ZGlkQ29tbWl0QW5kRHJhd0Zy
YW1lKCkKIHsKICAgICBpZiAobV9jbGllbnQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL3NyYy9XZWJMYXllclRyZWVWaWV3SW1wbC5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1
bS9zcmMvV2ViTGF5ZXJUcmVlVmlld0ltcGwuaAppbmRleCBlNDdlYjU5MDViNTRlZTY2YTQ0NTE2
MjY5NTZhMDM0YmNkMTU0MzZlLi40M2Q0Y2MxZWJkYzBmMDNlZGRjNWYyNTU1OTBjM2RhNmQ4ZWQz
ZDZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJMYXllclRyZWVW
aWV3SW1wbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkxheWVyVHJlZVZp
ZXdJbXBsLmgKQEAgLTQ3LDYgKzQ3LDcgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIHZvaWQgYXBw
bHlTY3JvbGxBbmRTY2FsZShjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBzY3JvbGxEZWx0YSwgZmxv
YXQgcGFnZVNjYWxlKTsKICAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8V2ViQ29yZTo6R3JhcGhpY3ND
b250ZXh0M0Q+IGNyZWF0ZUNvbnRleHQoKTsKICAgICB2aXJ0dWFsIHZvaWQgZGlkUmVjcmVhdGVD
b250ZXh0KGJvb2wgc3VjY2Vzcyk7CisgICAgdmlydHVhbCB2b2lkIGRpZENvbW1pdCgpOwogICAg
IHZpcnR1YWwgdm9pZCBkaWRDb21taXRBbmREcmF3RnJhbWUoKTsKICAgICB2aXJ0dWFsIHZvaWQg
ZGlkQ29tcGxldGVTd2FwQnVmZmVycygpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL3NyYy9XZWJWaWV3SW1wbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9X
ZWJWaWV3SW1wbC5jcHAKaW5kZXggNzI5MGE1MGRmNzM5NDk5N2FlYjcwZjNlN2Y2NTkxYmNhZWRh
NzRjZC4uYzA2MjFhODA2MTA0MTAyZDkwMmU3NjVmNGJkNGVkYjE4YjQwY2U3OSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcApAQCAtMTQ5Nyw2ICsxNDk3LDE1
IEBAIHZvaWQgV2ViVmlld0ltcGw6OnNldE5lZWRzUmVkcmF3KCkKICNlbmRpZgogfQogCitib29s
IFdlYlZpZXdJbXBsOjppc0lucHV0VGhyb3R0bGVkKCkgY29uc3QKK3sKKyNpZiBVU0UoQUNDRUxF
UkFURURfQ09NUE9TSVRJTkcpCisgICAgaWYgKCFtX2xheWVyVHJlZVZpZXcuaXNOdWxsKCkgJiYg
aXNBY2NlbGVyYXRlZENvbXBvc2l0aW5nQWN0aXZlKCkpCisgICAgICAgIHJldHVybiBtX2xheWVy
VHJlZVZpZXcuY29tbWl0UmVxdWVzdGVkKCk7CisjZW5kaWYKKyAgICByZXR1cm4gZmFsc2U7Cit9
CisKIHZvaWQgV2ViVmlld0ltcGw6Omxvc2VDb21wb3NpdG9yQ29udGV4dChpbnQgbnVtVGltZXMp
CiB7CiAjaWYgVVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQpAQCAtMzM0OSw2ICszMzU4LDEy
IEBAIHZvaWQgV2ViVmlld0ltcGw6OmFwcGx5U2Nyb2xsQW5kU2NhbGUoY29uc3QgV2ViU2l6ZSYg
c2Nyb2xsRGVsdGEsIGZsb2F0IHBhZ2VTY2FsCiAgICAgfQogfQogCit2b2lkIFdlYlZpZXdJbXBs
OjpkaWRDb21taXQoKQoreworICAgIGlmIChtX2NsaWVudCkKKyAgICAgICAgbV9jbGllbnQtPmRp
ZEJlY29tZVJlYWR5Rm9yQWRkaXRpb25hbElucHV0KCk7Cit9CisKIHZvaWQgV2ViVmlld0ltcGw6
OmRpZENvbW1pdEFuZERyYXdGcmFtZSgpCiB7CiAgICAgaWYgKG1fY2xpZW50KQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuaCBiL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmgKaW5kZXggOGFkMTg1YThiOTJmZjMwNzYyNDZl
NmNiMDk1NmMyYjI3MmZlNWYwOC4uMzhiZTZhZGMzMzVkZDI1NzczZjY4M2ZlNDlhYmU1ZmY0ZTBl
YzY2NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwu
aAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5oCkBAIC0xMjIs
NiArMTIyLDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCB0aGVtZUNoYW5nZWQoKTsKICAg
ICB2aXJ0dWFsIHZvaWQgY29tcG9zaXRlKGJvb2wgZmluaXNoKTsKICAgICB2aXJ0dWFsIHZvaWQg
c2V0TmVlZHNSZWRyYXcoKTsKKyAgICB2aXJ0dWFsIGJvb2wgaXNJbnB1dFRocm90dGxlZCgpIGNv
bnN0OwogICAgIHZpcnR1YWwgYm9vbCBoYW5kbGVJbnB1dEV2ZW50KGNvbnN0IFdlYklucHV0RXZl
bnQmKTsKICAgICB2aXJ0dWFsIHZvaWQgbW91c2VDYXB0dXJlTG9zdCgpOwogICAgIHZpcnR1YWwg
dm9pZCBzZXRGb2N1cyhib29sIGVuYWJsZSk7CkBAIC0yNTksNiArMjYwLDcgQEAgcHVibGljOgog
ICAgIHZpcnR1YWwgdm9pZCBhcHBseVNjcm9sbEFuZFNjYWxlKGNvbnN0IFdlYlNpemUmLCBmbG9h
dCk7CiAgICAgdmlydHVhbCBXZWJHcmFwaGljc0NvbnRleHQzRCogY3JlYXRlQ29udGV4dDNEKCk7
CiAgICAgdmlydHVhbCB2b2lkIGRpZFJlYmluZEdyYXBoaWNzQ29udGV4dChib29sKTsKKyAgICB2
aXJ0dWFsIHZvaWQgZGlkQ29tbWl0KCk7CiAgICAgdmlydHVhbCB2b2lkIGRpZENvbW1pdEFuZERy
YXdGcmFtZSgpOwogICAgIHZpcnR1YWwgdm9pZCBkaWRDb21wbGV0ZVN3YXBCdWZmZXJzKCk7CiAg
ICAgdmlydHVhbCB2b2lkIHNjaGVkdWxlQ29tcG9zaXRlKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL3Rlc3RzL0NDTGF5ZXJUcmVlSG9zdFRlc3QuY3BwIGIvU291cmNlL1dl
YktpdC9jaHJvbWl1bS90ZXN0cy9DQ0xheWVyVHJlZUhvc3RUZXN0LmNwcAppbmRleCAwYWQ2OGQz
ZGU4NGNlMWYwNWI2MTdhZjk4MGIyNzM5MWM0ZTlhODgyLi41MTgxMWRlMTgwNTI1MTJiN2UzMDgx
YjI5ZjhhMWY4OTA0NzI4MjcyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rl
c3RzL0NDTGF5ZXJUcmVlSG9zdFRlc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
dGVzdHMvQ0NMYXllclRyZWVIb3N0VGVzdC5jcHAKQEAgLTI0OSw2ICsyNDksMTAgQEAgcHVibGlj
OgogICAgICAgICByZXR1cm4gR3JhcGhpY3NDb250ZXh0M0RQcml2YXRlOjpjcmVhdGVHcmFwaGlj
c0NvbnRleHRGcm9tV2ViQ29udGV4dCh3ZWJDb250ZXh0LnJlbGVhc2UoKSwgR3JhcGhpY3NDb250
ZXh0M0Q6OlJlbmRlckRpcmVjdGx5VG9Ib3N0V2luZG93KTsKICAgICB9CiAKKyAgICB2aXJ0dWFs
IHZvaWQgZGlkQ29tbWl0KCkKKyAgICB7CisgICAgfQorCiAgICAgdmlydHVhbCB2b2lkIGRpZENv
bW1pdEFuZERyYXdGcmFtZSgpCiAgICAgewogICAgICAgICBtX3Rlc3RIb29rcy0+ZGlkQ29tbWl0
QW5kRHJhd0ZyYW1lKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3Rz
L0Zha2VDQ0xheWVyVHJlZUhvc3RDbGllbnQuaCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVz
dHMvRmFrZUNDTGF5ZXJUcmVlSG9zdENsaWVudC5oCmluZGV4IGQxZmU1ZTY1MDY2OGM2NjU1MmY2
MzI0NjZkNWZlNjk4ZWFjMzJjYjkuLmEwYTUyYzY5YzMyZDM2Y2VmMjIxMmQ0MmFjODFkNzEyM2Q5
OTRkYmEgMTAwNzU1Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvRmFrZUNDTGF5
ZXJUcmVlSG9zdENsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvRmFr
ZUNDTGF5ZXJUcmVlSG9zdENsaWVudC5oCkBAIC00NCw2ICs0NCw3IEBAIHB1YmxpYzoKICAgICAg
ICAgcmV0dXJuIGNyZWF0ZUNvbXBvc2l0b3JNb2NrR3JhcGhpY3NDb250ZXh0M0QoYXR0cnMpOwog
ICAgIH0KICAgICB2aXJ0dWFsIHZvaWQgZGlkUmVjcmVhdGVDb250ZXh0KGJvb2wgc3VjY2Vzcykg
eyB9CisgICAgdmlydHVhbCB2b2lkIGRpZENvbW1pdCgpOwogICAgIHZpcnR1YWwgdm9pZCBkaWRD
b21taXRBbmREcmF3RnJhbWUoKSB7IH0KICAgICB2aXJ0dWFsIHZvaWQgZGlkQ29tcGxldGVTd2Fw
QnVmZmVycygpIHsgfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>133938</attachid>
            <date>2012-03-26 17:31:53 -0700</date>
            <delta_ts>2012-03-26 17:35:43 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-82265-20120326173152.patch</filename>
            <type>text/plain</type>
            <size>19317</size>
            <attacher name="Nat Duca">nduca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTEyMTUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvUGxhdGZvcm0v
Q2hhbmdlTG9nIGIvU291cmNlL1BsYXRmb3JtL0NoYW5nZUxvZwppbmRleCBiMzI3OWZjZjczYmY3
ODkxNjM0NzY3YWI0YjNlMTc3Y2ZlZjEwNTQyLi4xMTk1NDRiMWFiMTdiZjcwNGFhMjkwMjcyN2Iw
NjE4MzUyZTkxNTI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvUGxhdGZvcm0vQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9QbGF0Zm9ybS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxMi0wMy0yNiAg
TmF0IER1Y2EgIDxuZHVjYUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW2Nocm9taXVtXSBBZGQg
aXNJbnB1dFRocm90dGxlZC9kaWRCZWNvbWVSZWFkeUZvckFkZGl0aW9uYWxJbnB1dCB0byBXZWJX
aWRnZXQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgy
MjY1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBj
aHJvbWl1bS9wdWJsaWMvV2ViTGF5ZXJUcmVlVmlldy5oOgorICAgICAgICAoV2ViTGF5ZXJUcmVl
Vmlldyk6CisgICAgICAgICogY2hyb21pdW0vcHVibGljL1dlYkxheWVyVHJlZVZpZXdDbGllbnQu
aDoKKyAgICAgICAgKFdlYkxheWVyVHJlZVZpZXdDbGllbnQpOgorICAgICAgICAoV2ViS2l0OjpX
ZWJMYXllclRyZWVWaWV3Q2xpZW50OjpkaWRDb21taXQpOgorCiAyMDEyLTAzLTI1ICBOYXQgRHVj
YSAgPG5kdWNhQGNocm9taXVtLm9yZz4KIAogICAgICAgICBbY2hyb21pdW1dIFJvdXRlIHdpbGxC
ZWdpbkZyYW1lIGZyb20gY29tcG9zaXRvciB0byBXZWJXaWRnZXQKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA2OGVj
ZjEwZDRiZGZhMDI3ODA1MmFkMTBmNTg1N2VmMjkyNWYxODFmLi4zNmVmODk0NTY3ZGRmMGJkODZh
YzQ3NDhkMWZmY2E3YzE3M2JlZmY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzggQEAKKzIwMTIt
MDMtMjYgIE5hdCBEdWNhICA8bmR1Y2FAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFtjaHJvbWl1
bV0gQWRkIGlzSW5wdXRUaHJvdHRsZWQvZGlkQmVjb21lUmVhZHlGb3JBZGRpdGlvbmFsSW5wdXQg
dG8gV2ViV2lkZ2V0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD04MjI2NQorCisgICAgICAgIEluIHRocmVhZGVkIGNvbXBvc2l0aW5nIG1vZGUsIHRoZSBX
ZWJXaWRnZXQgaXMgc2VsZi1zY2hlZHVsZWQsCisgICAgICAgIHJlY2VpdmluZyBkYW1hZ2UgYW5k
IHByb2Nlc3NpbmcgaXQgd2l0aG91dCBmb3J3YXJkaW5nIHRoYXQgZGFtYWdlCisgICAgICAgIHVw
IHRvIHRoZSBlbWJlZGRpbmcgV2ViV2lkZ2V0Q2xpZW50LiBJbiBDaHJvbWl1bSdzIGNhc2UsIHRo
ZQorICAgICAgICBjbGllbnQgdXNlcyB0aGUgcHJlc2VuY2Ugb2YgZGFtYWdlIHRvIHBlcmZvcm0g
aW5wdXQgZmxvdworICAgICAgICBjb250cm9sLiBUaGlzIHBhdGNoIGV4cG9zZXMgdGhlIG5lZWQg
Zm9yIGlucHV0IGZsb3cgY29udHJvbCB0byB0aGUKKyAgICAgICAgZW1iZWRkZXIsIHdoaWxlIGtl
ZXBpbmcgdGhlIGFjdHVhbCBsb2dpYyBhYm91dCB3aGF0IGV4YWN0bHkKKyAgICAgICAgd2FycmFu
dHMgaW5wdXQgZmxvdyBjb250cm9sIGluc2lkZSB0aGUgaW1wbGVtZW50YXRpb24uCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
Q0NMYXllclRyZWVIb3N0Ojpjb21taXRDb21wbGV0ZSk6CisgICAgICAgIChXZWJDb3JlOjpDQ0xh
eWVyVHJlZUhvc3Q6OmNvbW1pdFJlcXVlc3RlZCk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAg
ICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3QuaDoKKyAg
ICAgICAgKENDTGF5ZXJUcmVlSG9zdENsaWVudCk6CisgICAgICAgIChDQ0xheWVyVHJlZUhvc3Qp
OgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDUHJveHkuaDoKKyAg
ICAgICAgKENDUHJveHkpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2Nj
L0NDU2luZ2xlVGhyZWFkUHJveHkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q0NTaW5nbGVUaHJl
YWRQcm94eTo6Y29tbWl0UmVxdWVzdGVkKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDU2luZ2xlVGhyZWFkUHJveHkuaDoKKyAg
ICAgICAgKENDU2luZ2xlVGhyZWFkUHJveHkpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNz
L2Nocm9taXVtL2NjL0NDVGhyZWFkUHJveHkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q0NUaHJl
YWRQcm94eTo6Y29tbWl0UmVxdWVzdGVkKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDVGhyZWFkUHJveHkuaDoKKyAgICAgICAg
KENDVGhyZWFkUHJveHkpOgorCiAyMDEyLTAzLTI2ICBBbmRlcnMgQ2FybHNzb24gIDxhbmRlcnNj
YUBhcHBsZS5jb20+CiAKICAgICAgICAgRmluZCBpbiBwYWdlIG92ZXJsYXkgYW5kIGJvdW5jeSBh
cmUgbm90IGFsd2F5cyBwb3NpdGlvbmVkIGNvcnJlY3RseQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxv
ZwppbmRleCAwN2E5YzA0MmU1M2RlMDBjZGViOWI2Yjk5YjE2YmNmODFiM2EwODU5Li5iZTI0N2I2
ZDVkNzQ4ZDRkMTY5YmI3MTAxNjQ1Y2E3MzZhNTZmYmJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDEyLTAzLTI2ICBOYXQgRHVjYSAgPG5kdWNhQGNocm9t
aXVtLm9yZz4KKworICAgICAgICBbY2hyb21pdW1dIEFkZCBpc0lucHV0VGhyb3R0bGVkL2RpZEJl
Y29tZVJlYWR5Rm9yQWRkaXRpb25hbElucHV0IHRvIFdlYldpZGdldAorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODIyNjUKKworICAgICAgICBJbiB0aHJl
YWRlZCBjb21wb3NpdGluZyBtb2RlLCB0aGUgV2ViV2lkZ2V0IGlzIHNlbGYtc2NoZWR1bGVkLAor
ICAgICAgICByZWNlaXZpbmcgZGFtYWdlIGFuZCBwcm9jZXNzaW5nIGl0IHdpdGhvdXQgZm9yd2Fy
ZGluZyB0aGF0IGRhbWFnZQorICAgICAgICB1cCB0byB0aGUgZW1iZWRkaW5nIFdlYldpZGdldENs
aWVudC4gSW4gQ2hyb21pdW0ncyBjYXNlLCB0aGUKKyAgICAgICAgY2xpZW50IHVzZXMgdGhlIHBy
ZXNlbmNlIG9mIGRhbWFnZSB0byBwZXJmb3JtIGlucHV0IGZsb3cKKyAgICAgICAgY29udHJvbC4g
VGhpcyBwYXRjaCBleHBvc2VzIHRoZSBuZWVkIGZvciBpbnB1dCBmbG93IGNvbnRyb2wgdG8gdGhl
CisgICAgICAgIGVtYmVkZGVyLCB3aGlsZSBrZWVwaW5nIHRoZSBhY3R1YWwgbG9naWMgYWJvdXQg
d2hhdCBleGFjdGx5CisgICAgICAgIHdhcnJhbnRzIGlucHV0IGZsb3cgY29udHJvbCBpbnNpZGUg
dGhlIGltcGxlbWVudGF0aW9uLgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgICogcHVibGljL1dlYldpZGdldC5oOgorICAgICAgICAoV2ViV2lkZ2V0KToK
KyAgICAgICAgKFdlYktpdDo6V2ViV2lkZ2V0Ojppc0lucHV0VGhyb3R0bGVkKToKKyAgICAgICAg
KiBwdWJsaWMvV2ViV2lkZ2V0Q2xpZW50Lmg6CisgICAgICAgIChXZWJXaWRnZXRDbGllbnQpOgor
ICAgICAgICAoV2ViS2l0OjpXZWJXaWRnZXRDbGllbnQ6OmRpZEJlY29tZVJlYWR5Rm9yQWRkaXRp
b25hbElucHV0KToKKyAgICAgICAgKiBzcmMvV2ViTGF5ZXJUcmVlVmlldy5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYkxheWVyVHJlZVZpZXc6OmNvbW1pdFJlcXVlc3RlZCk6CisgICAgICAgIChX
ZWJLaXQpOgorICAgICAgICAqIHNyYy9XZWJMYXllclRyZWVWaWV3SW1wbC5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYkxheWVyVHJlZVZpZXdJbXBsOjpkaWRDb21taXQpOgorICAgICAgICAoV2Vi
S2l0KToKKyAgICAgICAgKiBzcmMvV2ViTGF5ZXJUcmVlVmlld0ltcGwuaDoKKyAgICAgICAgKFdl
YkxheWVyVHJlZVZpZXdJbXBsKToKKyAgICAgICAgKiBzcmMvV2ViVmlld0ltcGwuY3BwOgorICAg
ICAgICAoV2ViS2l0OjpXZWJWaWV3SW1wbDo6aXNJbnB1dFRocm90dGxlZCk6CisgICAgICAgIChX
ZWJLaXQpOgorICAgICAgICAoV2ViS2l0OjpXZWJWaWV3SW1wbDo6ZGlkQ29tbWl0KToKKyAgICAg
ICAgKiBzcmMvV2ViVmlld0ltcGwuaDoKKyAgICAgICAgKFdlYlZpZXdJbXBsKToKKyAgICAgICAg
KiB0ZXN0cy9DQ0xheWVyVHJlZUhvc3RUZXN0LmNwcDoKKyAgICAgICAgKFdURjo6TW9ja0xheWVy
VHJlZUhvc3RDbGllbnQ6OmRpZENvbW1pdCk6CisgICAgICAgIChNb2NrTGF5ZXJUcmVlSG9zdENs
aWVudCk6CisgICAgICAgICogdGVzdHMvRmFrZUNDTGF5ZXJUcmVlSG9zdENsaWVudC5oOgorICAg
ICAgICAoRmFrZUNDTGF5ZXJUcmVlSG9zdENsaWVudCk6CisKIDIwMTItMDMtMjYgIEphbWVzIFJv
Ymluc29uICA8amFtZXNyQGNocm9taXVtLm9yZz4KIAogICAgICAgICBTY3JvbGxhYmxlIHBsdWdp
bnMgbm90IHJlZ2lzdGVyZWQgcHJvcGVybHkgaW4gU2Nyb2xsaW5nQ29vcmRpbmF0b3IKZGlmZiAt
LWdpdCBhL1NvdXJjZS9QbGF0Zm9ybS9jaHJvbWl1bS9wdWJsaWMvV2ViTGF5ZXJUcmVlVmlldy5o
IGIvU291cmNlL1BsYXRmb3JtL2Nocm9taXVtL3B1YmxpYy9XZWJMYXllclRyZWVWaWV3LmgKaW5k
ZXggM2VmMjk1ZDk0NTU5ODMxOTczY2NhYjVlYzI1MGMyNzAxODhkNDA0ZS4uMmExNmM4NjcwNWMz
YjkyY2NiNGU4ZWQ0YzBiOWEzZDYwZmEyMWNmNCAxMDA2NDQKLS0tIGEvU291cmNlL1BsYXRmb3Jt
L2Nocm9taXVtL3B1YmxpYy9XZWJMYXllclRyZWVWaWV3LmgKKysrIGIvU291cmNlL1BsYXRmb3Jt
L2Nocm9taXVtL3B1YmxpYy9XZWJMYXllclRyZWVWaWV3LmgKQEAgLTEyOSw2ICsxMjksOSBAQCBw
dWJsaWM6CiAgICAgLy8gSW5kaWNhdGVzIHRoYXQgdGhlIHZpZXcgbmVlZHMgdG8gYmUgcmVkcmF3
bi4gVGhpcyBpcyB0eXBpY2FsbHkgdXNlZCB3aGVuIHRoZSBmcm9udGJ1ZmZlciBpcyBkYW1hZ2Vk
LgogICAgIFdFQktJVF9FWFBPUlQgdm9pZCBzZXROZWVkc1JlZHJhdygpOwogCisgICAgLy8gSW5k
aWNhdGVzIHdoZXRoZXIgYSBjb21taXQgaXMgcGVuZGluZy4KKyAgICBXRUJLSVRfRVhQT1JUIGJv
b2wgY29tbWl0UmVxdWVzdGVkKCkgY29uc3Q7CisKICAgICAvLyBUcmlnZ2VycyBhIGNvbXBvc2l0
aW5nIHBhc3MuIElmIHRoZSBjb21wb3NpdG9yIHRocmVhZCB3YXMgbm90CiAgICAgLy8gZW5hYmxl
ZCB2aWEgV2ViQ29tcG9zaXRvcjo6aW5pdGlhbGl6ZSwgdGhlIGNvbXBvc2l0aW5nIHBhc3MgaGFw
cGVucwogICAgIC8vIGltbWVkaWF0ZWx5LiBJZiBpdCBpcyBlbmFibGVkLCB0aGUgY29tcG9zaXRp
bmcgcGFzcyB3aWxsIGhhcHBlbiBhdCBhCmRpZmYgLS1naXQgYS9Tb3VyY2UvUGxhdGZvcm0vY2hy
b21pdW0vcHVibGljL1dlYkxheWVyVHJlZVZpZXdDbGllbnQuaCBiL1NvdXJjZS9QbGF0Zm9ybS9j
aHJvbWl1bS9wdWJsaWMvV2ViTGF5ZXJUcmVlVmlld0NsaWVudC5oCmluZGV4IDlmOWQzMjQ2NDNm
MDUyMjA0ZTdjYTUzMzcxMTUxNzI2MTA0MjY1ZmUuLjE5MDNmZmZhOWUxMmM5NjIxYThiM2VhNmYz
ZWI4NTI0MGIyM2UzNmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9QbGF0Zm9ybS9jaHJvbWl1bS9wdWJs
aWMvV2ViTGF5ZXJUcmVlVmlld0NsaWVudC5oCisrKyBiL1NvdXJjZS9QbGF0Zm9ybS9jaHJvbWl1
bS9wdWJsaWMvV2ViTGF5ZXJUcmVlVmlld0NsaWVudC5oCkBAIC01OSw3ICs1OSwxOCBAQCBwdWJs
aWM6CiAgICAgLy8gY29udGV4dCBldmVudCkuCiAgICAgdmlydHVhbCB2b2lkIGRpZFJlYmluZEdy
YXBoaWNzQ29udGV4dChib29sIHN1Y2Nlc3MpID0gMDsKIAorICAgIC8vIEluZGljYXRlcyB0aGF0
IGEgZnJhbWUgd2FzIGNvbW1pdHRlZCB0byB0aGUgaW1wbCBzaWRlIG9mIHRoZSBjb21wb3NpdG9y
CisgICAgLy8gZm9yIHJlbmRlcmluZy4KKyAgICAvLworICAgIC8vIEZJWE1FOiBtYWtlIHRoaXMg
bm9uLXZpcnR1YWwgd2hlbiB1aS9jb21wb3NpdG9yIERFUCBpcyByZXNvbHZlZC4KKyAgICB2aXJ0
dWFsIHZvaWQgZGlkQ29tbWl0KCkgeyB9CisKKyAgICAvLyBJbmRpY2F0ZXMgdGhhdCBhIGZyYW1l
IHdhcyBjb21taXR0ZWQgdG8gdGhlIGltcGwgc2lkZSBhbmQgZHJhd2luZworICAgIC8vIGNvbW1h
bmRzIGZvciBpdCB3ZXJlIGlzc3VlZCB0byB0aGUgR1BVLgogICAgIHZpcnR1YWwgdm9pZCBkaWRD
b21taXRBbmREcmF3RnJhbWUoKSA9IDA7CisKKyAgICAvLyBJbmRpY2F0ZXMgdGhhdCBhIGZyYW1l
IHByZXZpb3VzbHkgaXNzdWVkIHRvIHRoZSBHUFUgaGFzIGNvbXBsZXRlZAorICAgIC8vIHJlbmRl
cmluZy4KICAgICB2aXJ0dWFsIHZvaWQgZGlkQ29tcGxldGVTd2FwQnVmZmVycygpID0gMDsKIAog
ICAgIC8vIFNjaGVkdWxlcyBhIGNvbXBvc2l0aW5nIHBhc3MsIG1lYW5pbmcgdGhlIGNsaWVudCBz
aG91bGQgY2FsbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Y2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdC5jcHAKaW5kZXggMDI5MGE3NTM5
NGU2NjUyODc4N2EzYmNkNDljOGU2ZmY3OTZhNGY4Yy4uZTQ2Nzg2N2RhYjEzNTgxYjE2Zjg0MGM4
N2Q0MGFjNTI4ZTUzMGRmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3QuY3BwCkBAIC0y
MzEsNiArMjMxLDcgQEAgdm9pZCBDQ0xheWVyVHJlZUhvc3Q6OmNvbW1pdENvbXBsZXRlKCkKICAg
ICBtX2RlbGV0ZVRleHR1cmVBZnRlckNvbW1pdExpc3QuY2xlYXIoKTsKICAgICBjbGVhclBlbmRp
bmdVcGRhdGUoKTsKICAgICBtX2NvbnRlbnRzVGV4dHVyZU1hbmFnZXItPnVucHJvdGVjdEFsbFRl
eHR1cmVzKCk7CisgICAgbV9jbGllbnQtPmRpZENvbW1pdCgpOwogfQogCiBQYXNzUmVmUHRyPEdy
YXBoaWNzQ29udGV4dDNEPiBDQ0xheWVyVHJlZUhvc3Q6OmNyZWF0ZUNvbnRleHQoKQpAQCAtMzA4
LDYgKzMwOSwxMSBAQCB2b2lkIENDTGF5ZXJUcmVlSG9zdDo6c2V0TmVlZHNSZWRyYXcoKQogICAg
ICAgICBtX2NsaWVudC0+c2NoZWR1bGVDb21wb3NpdGUoKTsKIH0KIAorYm9vbCBDQ0xheWVyVHJl
ZUhvc3Q6OmNvbW1pdFJlcXVlc3RlZCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fcHJveHktPmNv
bW1pdFJlcXVlc3RlZCgpOworfQorCiB2b2lkIENDTGF5ZXJUcmVlSG9zdDo6c2V0QW5pbWF0aW9u
RXZlbnRzKFBhc3NPd25QdHI8Q0NBbmltYXRpb25FdmVudHNWZWN0b3I+IGV2ZW50cywgZG91Ymxl
IHdhbGxDbG9ja1RpbWUpCiB7CiAgICAgQVNTRVJUKENDVGhyZWFkUHJveHk6OmlzTWFpblRocmVh
ZCgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9t
aXVtL2NjL0NDTGF5ZXJUcmVlSG9zdC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0LmgKaW5kZXggNmViNzJhZTA4Y2M1MWE5NTA4
MDFlYTJjMjgxNDAyYjFkMmI4YWJjMi4uNjFmYzJlZmJlZGIzZDYzYTFhYjE2MWZlY2EwMTZhY2Qw
ODdjNzY3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hy
b21pdW0vY2MvQ0NMYXllclRyZWVIb3N0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0LmgKQEAgLTU4LDYgKzU4LDcgQEAg
cHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBhcHBseVNjcm9sbEFuZFNjYWxlKGNvbnN0IEludFNp
emUmIHNjcm9sbERlbHRhLCBmbG9hdCBwYWdlU2NhbGUpID0gMDsKICAgICB2aXJ0dWFsIFBhc3NS
ZWZQdHI8R3JhcGhpY3NDb250ZXh0M0Q+IGNyZWF0ZUNvbnRleHQoKSA9IDA7CiAgICAgdmlydHVh
bCB2b2lkIGRpZFJlY3JlYXRlQ29udGV4dChib29sIHN1Y2Nlc3MpID0gMDsKKyAgICB2aXJ0dWFs
IHZvaWQgZGlkQ29tbWl0KCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBkaWRDb21taXRBbmREcmF3
RnJhbWUoKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIGRpZENvbXBsZXRlU3dhcEJ1ZmZlcnMoKSA9
IDA7CiAKQEAgLTE4MSw2ICsxODIsNyBAQCBwdWJsaWM6CiAgICAgLy8gdmlydHVhbCBmb3IgdGVz
dGluZwogICAgIHZpcnR1YWwgdm9pZCBzZXROZWVkc0NvbW1pdCgpOwogICAgIHZvaWQgc2V0TmVl
ZHNSZWRyYXcoKTsKKyAgICBib29sIGNvbW1pdFJlcXVlc3RlZCgpIGNvbnN0OwogCiAgICAgdm9p
ZCBzZXRBbmltYXRpb25FdmVudHMoUGFzc093blB0cjxDQ0FuaW1hdGlvbkV2ZW50c1ZlY3Rvcj4s
IGRvdWJsZSB3YWxsQ2xvY2tUaW1lKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NQcm94eS5oIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NQcm94eS5oCmluZGV4IDAxNjIyNmNhNTEyMDEz
MWZjZmUzZmMxMzMxOWFjNzE2MDg3Njc1OWIuLjFhOGRlMTY1NGVlNjI3NGE2YTBiODU1YzQ3Zjlk
ZjVmMjQ4M2IyNjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2Nocm9taXVtL2NjL0NDUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jaHJvbWl1bS9jYy9DQ1Byb3h5LmgKQEAgLTg2LDYgKzg2LDggQEAgcHVibGljOgogICAg
IHZpcnR1YWwgdm9pZCBzZXROZWVkc1JlZHJhdygpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc2V0
VmlzaWJsZShib29sKSA9IDA7CiAKKyAgICB2aXJ0dWFsIGJvb2wgY29tbWl0UmVxdWVzdGVkKCkg
Y29uc3QgPSAwOworCiAgICAgdmlydHVhbCB2b2lkIHN0YXJ0KCkgPSAwOyAvLyBNdXN0IGJlIGNh
bGxlZCBiZWZvcmUgdXNpbmcgdGhlIHByb3h5LgogICAgIHZpcnR1YWwgdm9pZCBzdG9wKCkgPSAw
OyAvLyBNdXN0IGJlIGNhbGxlZCBiZWZvcmUgZGVsZXRpbmcgdGhlIHByb3h5LgogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ1Npbmds
ZVRocmVhZFByb3h5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9t
aXVtL2NjL0NDU2luZ2xlVGhyZWFkUHJveHkuY3BwCmluZGV4IDJkOWUwZjM0MWZlNzI1N2QzNDc5
OGY2Y2YxYjhkNGRmODU5ZDIwYjAuLjc2NTI1ODZkNGYzNWE2MzllZDg2YjY0YTU2YzJmZWJhODdh
YmMxMmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9t
aXVtL2NjL0NDU2luZ2xlVGhyZWFkUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDU2luZ2xlVGhyZWFkUHJveHkuY3BwCkBAIC0yMzYs
NiArMjM2LDExIEBAIHZvaWQgQ0NTaW5nbGVUaHJlYWRQcm94eTo6c2V0TmVlZHNSZWRyYXcoKQog
ICAgIHNldE5lZWRzQ29tbWl0KCk7CiB9CiAKK2Jvb2wgQ0NTaW5nbGVUaHJlYWRQcm94eTo6Y29t
bWl0UmVxdWVzdGVkKCkgY29uc3QKK3sKKyAgICByZXR1cm4gZmFsc2U7Cit9CisKIHZvaWQgQ0NT
aW5nbGVUaHJlYWRQcm94eTo6c2V0VmlzaWJsZShib29sIHZpc2libGUpCiB7CiAgICAgbV9sYXll
clRyZWVIb3N0SW1wbC0+c2V0VmlzaWJsZSh2aXNpYmxlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDU2luZ2xlVGhyZWFkUHJveHku
aCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDU2luZ2xl
VGhyZWFkUHJveHkuaAppbmRleCBlYmJkOTZlMmMzODgyMjE4OWQyYjkwYjIxZTZkOTc2YTM2N2Mw
ZTljLi45ODg3NDMyZWJhZDZlNTNjZTQwNTI2YzYwZTEyMDExNjA2MTYzMTRlIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ1NpbmdsZVRo
cmVhZFByb3h5LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21p
dW0vY2MvQ0NTaW5nbGVUaHJlYWRQcm94eS5oCkBAIC01Niw2ICs1Niw3IEBAIHB1YmxpYzoKICAg
ICB2aXJ0dWFsIHZvaWQgc2V0TmVlZHNBbmltYXRlKCk7CiAgICAgdmlydHVhbCB2b2lkIHNldE5l
ZWRzQ29tbWl0KCk7CiAgICAgdmlydHVhbCB2b2lkIHNldE5lZWRzUmVkcmF3KCk7CisgICAgdmly
dHVhbCBib29sIGNvbW1pdFJlcXVlc3RlZCgpIGNvbnN0OwogICAgIHZpcnR1YWwgdm9pZCBzZXRW
aXNpYmxlKGJvb2wpOwogICAgIHZpcnR1YWwgdm9pZCBzdGFydCgpOwogICAgIHZpcnR1YWwgdm9p
ZCBzdG9wKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
aHJvbWl1bS9jYy9DQ1RocmVhZFByb3h5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2Nocm9taXVtL2NjL0NDVGhyZWFkUHJveHkuY3BwCmluZGV4IGU1MWE3ODQwODAyZWI5
YzU2MTc1MDQ3Zjg5YzVlY2I3MDc2N2ZhODcuLmE5ZmE2YmJjMDRkZmVhZmYwMjZjYTc5OWVlY2Vh
MjgxNDQwMzVjYTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2Nocm9taXVtL2NjL0NDVGhyZWFkUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDVGhyZWFkUHJveHkuY3BwCkBAIC0zMDksNiArMzA5
LDEyIEBAIHZvaWQgQ0NUaHJlYWRQcm94eTo6c2V0TmVlZHNSZWRyYXcoKQogICAgIENDUHJveHk6
OmltcGxUaHJlYWQoKS0+cG9zdFRhc2soY3JlYXRlQ0NUaHJlYWRUYXNrKHRoaXMsICZDQ1RocmVh
ZFByb3h5OjpzZXROZWVkc1JlZHJhd09uSW1wbFRocmVhZCkpOwogfQogCitib29sIENDVGhyZWFk
UHJveHk6OmNvbW1pdFJlcXVlc3RlZCgpIGNvbnN0Cit7CisgICAgQVNTRVJUKGlzTWFpblRocmVh
ZCgpKTsKKyAgICByZXR1cm4gbV9jb21taXRSZXF1ZXN0ZWQ7Cit9CisKIHZvaWQgQ0NUaHJlYWRQ
cm94eTo6c2V0VmlzaWJsZShib29sIHZpc2libGUpCiB7CiAgICAgQVNTRVJUKGlzTWFpblRocmVh
ZCgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9t
aXVtL2NjL0NDVGhyZWFkUHJveHkuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2Nocm9taXVtL2NjL0NDVGhyZWFkUHJveHkuaAppbmRleCA0ODYxZjc5MDkyNjAxYzAwNWEwNTA1
MjBkNTQ3ZWQyMWNkZjlkN2EwLi42MTQzNGE2YTljZjYzZTgyOWNkYmM1YjdiMjUxNzA1ZThhZjk1
NWU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1
bS9jYy9DQ1RocmVhZFByb3h5LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY2hyb21pdW0vY2MvQ0NUaHJlYWRQcm94eS5oCkBAIC02NSw2ICs2NSw3IEBAIHB1YmxpYzoK
ICAgICB2aXJ0dWFsIHZvaWQgc2V0TmVlZHNBbmltYXRlKCk7CiAgICAgdmlydHVhbCB2b2lkIHNl
dE5lZWRzQ29tbWl0KCk7CiAgICAgdmlydHVhbCB2b2lkIHNldE5lZWRzUmVkcmF3KCk7CisgICAg
dmlydHVhbCBib29sIGNvbW1pdFJlcXVlc3RlZCgpIGNvbnN0OwogICAgIHZpcnR1YWwgdm9pZCBz
ZXRWaXNpYmxlKGJvb2wpOwogICAgIHZpcnR1YWwgdm9pZCBzdGFydCgpOwogICAgIHZpcnR1YWwg
dm9pZCBzdG9wKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9X
ZWJXaWRnZXQuaCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYldpZGdldC5oCmlu
ZGV4IGFmY2U2YWU2MjBlY2RlOTVkYTU5Nzc2N2Q5NjQ4NzY3YTIxOGViN2IuLmZjMDExY2I4Zjg2
MGNkZjQ0YmY3NjFkYzk5NTM0YjY3YThiMmZmZmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vcHVibGljL1dlYldpZGdldC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
cHVibGljL1dlYldpZGdldC5oCkBAIC0xMTIsNiArMTEyLDE1IEBAIHB1YmxpYzoKICAgICAvLyBy
ZW1vdmVkIHdoZW4gdGhlIFdlYldpZGdldCBpbnZlcnNpb24gcGF0Y2ggbGFuZHMgLS0tIGh0dHA6
Ly9jcmJ1Zy5jb20vMTEyODM3CiAgICAgdmlydHVhbCB2b2lkIHNldE5lZWRzUmVkcmF3KCkgeyB9
CiAKKyAgICAvLyBUZW1wb3JhcnkgbWV0aG9kIGZvciB0aGUgZW1iZWRkZXIgdG8gY2hlY2sgZm9y
IHRocm90dGxlZCBpbnB1dC4gV2hlbiB0aGlzCisgICAgLy8gaXMgdHJ1ZSwgdGhlIFdlYldpZGdl
dCBpcyBpbmRpY2F0aW5nIHRoYXQgaXQgd291bGQgcHJlZmVyIHRvIG5vdCByZWNlaXZlCisgICAg
Ly8gYWRkaXRpb25hbCBpbnB1dCBldmVudHMgdW50aWwKKyAgICAvLyBXZWJXaWRnZXRDbGllbnQ6
OmRpZEJlY29tZVJlYWR5Rm9yQWRkaXRpb25hbElucHV0IGlzIGNhbGxlZC4KKyAgICAvLworICAg
IC8vIFRoaXMgbWV0aG9kIHdpbGwgYmUgcmVtb3ZlZCB3aGVuIHRoZSBXZWJXaWRnZXQgaW52ZXJz
aW9uIHBhdGNoIGxhbmRzIC0tLQorICAgIC8vIGh0dHA6Ly9jcmJ1Zy5jb20vMTEyODM3CisgICAg
dmlydHVhbCBib29sIGlzSW5wdXRUaHJvdHRsZWQoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQor
CiAgICAgLy8gQ2FsbGVkIHRvIGluZm9ybSB0aGUgV2ViV2lkZ2V0IG9mIGEgY2hhbmdlIGluIHRo
ZW1lLgogICAgIC8vIEltcGxlbWVudG9ycyB0aGF0IGNhY2hlIHJlbmRlcmVkIGNvcGllcyBvZiB3
aWRnZXRzIG5lZWQgdG8gcmUtcmVuZGVyCiAgICAgLy8gb24gcmVjZWl2aW5nIHRoaXMgbWVzc2Fn
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViV2lkZ2V0Q2xp
ZW50LmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJXaWRnZXRDbGllbnQuaApp
bmRleCAwY2RkZTgyOWM4ODAxZWM2OWJkZDMwMmY3NmEzNzI3Y2I5ZWJmN2VjLi4xNzY3MDU1MzMz
MTE3MTBkNGMxMDI4NmE5ZTI1NGJiODZmZDhlMzVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL3B1YmxpYy9XZWJXaWRnZXRDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL3B1YmxpYy9XZWJXaWRnZXRDbGllbnQuaApAQCAtNjcsOSArNjcsMTMgQEAgcHVibGlj
OgogICAgIC8vIEluZGljYXRlcyB0byB0aGUgZW1iZWRkZXIgdGhhdCB0aGUgY29tcG9zaXRvciBp
cyBhYm91dCB0byBiZWdpbiBhCiAgICAgLy8gZnJhbWUuIFRoaXMgaXMgcHJpbWFyaWx5IHRvIHNp
Z25hbCB0byBmbG93IGNvbnRyb2wgbWVjaGFuaXNtcyB0aGF0IGEKICAgICAvLyBmcmFtZSBpcyBi
ZWdpbm5pbmcsIG5vdCB0byBwZXJmb3JtIGFjdHVhbCBwYWludGluZyB3b3JrLgorICAgIHZpcnR1
YWwgdm9pZCB3aWxsQmVnaW5Db21wb3NpdG9yRnJhbWUoKSB7IH0KKworICAgIC8vIEluZGljYXRl
cyB0byB0aGUgZW1iZWRkZXIgdGhhdCB0aGUgV2ViV2lkZ2V0IGlzIHJlYWR5IGZvciBhZGRpdGlv
bmFsCisgICAgLy8gaW5wdXQuCiAgICAgLy8KICAgICAvLyBGSVhNRTogTWFrZSBwdXJlIHZpcnR1
YWwgb25jZSB1cHN0cmVhbSBkZXBzIGFyZSBzYXRpc2ZpZWQuCi0gICAgdmlydHVhbCB2b2lkIHdp
bGxCZWdpbkNvbXBvc2l0b3JGcmFtZSgpIHsgfQorICAgIHZpcnR1YWwgdm9pZCBkaWRCZWNvbWVS
ZWFkeUZvckFkZGl0aW9uYWxJbnB1dCgpIHsgfQogCiAgICAgLy8gQ2FsbGVkIGZvciBjb21wb3Np
dGluZyBtb2RlIHdoZW4gdGhlIGRyYXcgY29tbWFuZHMgZm9yIGEgV2ViS2l0LXNpZGUKICAgICAv
LyBmcmFtZSBoYXZlIGJlZW4gaXNzdWVkLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9zcmMvV2ViTGF5ZXJUcmVlVmlldy5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Ny
Yy9XZWJMYXllclRyZWVWaWV3LmNwcAppbmRleCAzMzE0ZGMyZjU0NGMxY2E4YzU5YzQ3MmJjMDI1
ZThjMDA3ZjcwMWYwLi41MzI0NmIxY2E4N2ZiM2IxZDE5OWNiY2NkYmY3MmIzM2RmNzExZWZkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJMYXllclRyZWVWaWV3LmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJMYXllclRyZWVWaWV3LmNwcApA
QCAtMTIyLDYgKzEyMiwxMSBAQCB2b2lkIFdlYkxheWVyVHJlZVZpZXc6OnNldE5lZWRzUmVkcmF3
KCkKICAgICBtX3ByaXZhdGUtPnNldE5lZWRzUmVkcmF3KCk7CiB9CiAKK2Jvb2wgV2ViTGF5ZXJU
cmVlVmlldzo6Y29tbWl0UmVxdWVzdGVkKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9wcml2YXRl
LT5jb21taXRSZXF1ZXN0ZWQoKTsKK30KKwogdm9pZCBXZWJMYXllclRyZWVWaWV3Ojpjb21wb3Np
dGUoKQogewogICAgIGlmIChDQ1Byb3h5OjpoYXNJbXBsVGhyZWFkKCkpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJMYXllclRyZWVWaWV3SW1wbC5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJMYXllclRyZWVWaWV3SW1wbC5jcHAKaW5kZXggN2Iy
ZjE0NmFlYjUxYjE0OGYyZjMwOThhNzFlNDE5ZmM3MWI1YWVjNi4uYjhlZjVhOTIwODQwYzY3ODBh
MWJlOGJmZjYyMGY3OTAyYzNmYTE0YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1
bS9zcmMvV2ViTGF5ZXJUcmVlVmlld0ltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vc3JjL1dlYkxheWVyVHJlZVZpZXdJbXBsLmNwcApAQCAtMTAxLDYgKzEwMSwxMiBAQCB2b2lk
IFdlYkxheWVyVHJlZVZpZXdJbXBsOjpkaWRSZWNyZWF0ZUNvbnRleHQoYm9vbCBzdWNjZXNzKQog
ICAgICAgICBtX2NsaWVudC0+ZGlkUmViaW5kR3JhcGhpY3NDb250ZXh0KHN1Y2Nlc3MpOwogfQog
Cit2b2lkIFdlYkxheWVyVHJlZVZpZXdJbXBsOjpkaWRDb21taXQoKQoreworICAgIGlmIChtX2Ns
aWVudCkKKyAgICAgICAgbV9jbGllbnQtPmRpZENvbW1pdCgpOworfQorCiB2b2lkIFdlYkxheWVy
VHJlZVZpZXdJbXBsOjpkaWRDb21taXRBbmREcmF3RnJhbWUoKQogewogICAgIGlmIChtX2NsaWVu
dCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkxheWVyVHJlZVZp
ZXdJbXBsLmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJMYXllclRyZWVWaWV3SW1w
bC5oCmluZGV4IGU0N2ViNTkwNWI1NGVlNjZhNDQ1MTYyNjk1NmEwMzRiY2QxNTQzNmUuLjQzZDRj
YzFlYmRjMGYwM2VkZGM1ZjI1NTU5MGMzZGE2ZDhlZDNkNmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vc3JjL1dlYkxheWVyVHJlZVZpZXdJbXBsLmgKKysrIGIvU291cmNlL1dl
YktpdC9jaHJvbWl1bS9zcmMvV2ViTGF5ZXJUcmVlVmlld0ltcGwuaApAQCAtNDcsNiArNDcsNyBA
QCBwcml2YXRlOgogICAgIHZpcnR1YWwgdm9pZCBhcHBseVNjcm9sbEFuZFNjYWxlKGNvbnN0IFdl
YkNvcmU6OkludFNpemUmIHNjcm9sbERlbHRhLCBmbG9hdCBwYWdlU2NhbGUpOwogICAgIHZpcnR1
YWwgUGFzc1JlZlB0cjxXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQzRD4gY3JlYXRlQ29udGV4dCgp
OwogICAgIHZpcnR1YWwgdm9pZCBkaWRSZWNyZWF0ZUNvbnRleHQoYm9vbCBzdWNjZXNzKTsKKyAg
ICB2aXJ0dWFsIHZvaWQgZGlkQ29tbWl0KCk7CiAgICAgdmlydHVhbCB2b2lkIGRpZENvbW1pdEFu
ZERyYXdGcmFtZSgpOwogICAgIHZpcnR1YWwgdm9pZCBkaWRDb21wbGV0ZVN3YXBCdWZmZXJzKCk7
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNw
cCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcAppbmRleCA3Mjkw
YTUwZGY3Mzk0OTk3YWViNzBmM2U3ZjY1OTFiY2FlZGE3NGNkLi5jMDYyMWE4MDYxMDQxMDJkOTAy
ZTc2NWY0YmQ0ZWRiMThiNDBjZTc5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVt
L3NyYy9XZWJWaWV3SW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2Vi
Vmlld0ltcGwuY3BwCkBAIC0xNDk3LDYgKzE0OTcsMTUgQEAgdm9pZCBXZWJWaWV3SW1wbDo6c2V0
TmVlZHNSZWRyYXcoKQogI2VuZGlmCiB9CiAKK2Jvb2wgV2ViVmlld0ltcGw6OmlzSW5wdXRUaHJv
dHRsZWQoKSBjb25zdAoreworI2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElORykKKyAgICBp
ZiAoIW1fbGF5ZXJUcmVlVmlldy5pc051bGwoKSAmJiBpc0FjY2VsZXJhdGVkQ29tcG9zaXRpbmdB
Y3RpdmUoKSkKKyAgICAgICAgcmV0dXJuIG1fbGF5ZXJUcmVlVmlldy5jb21taXRSZXF1ZXN0ZWQo
KTsKKyNlbmRpZgorICAgIHJldHVybiBmYWxzZTsKK30KKwogdm9pZCBXZWJWaWV3SW1wbDo6bG9z
ZUNvbXBvc2l0b3JDb250ZXh0KGludCBudW1UaW1lcykKIHsKICNpZiBVU0UoQUNDRUxFUkFURURf
Q09NUE9TSVRJTkcpCkBAIC0zMzQ5LDYgKzMzNTgsMTIgQEAgdm9pZCBXZWJWaWV3SW1wbDo6YXBw
bHlTY3JvbGxBbmRTY2FsZShjb25zdCBXZWJTaXplJiBzY3JvbGxEZWx0YSwgZmxvYXQgcGFnZVNj
YWwKICAgICB9CiB9CiAKK3ZvaWQgV2ViVmlld0ltcGw6OmRpZENvbW1pdCgpCit7CisgICAgaWYg
KG1fY2xpZW50KQorICAgICAgICBtX2NsaWVudC0+ZGlkQmVjb21lUmVhZHlGb3JBZGRpdGlvbmFs
SW5wdXQoKTsKK30KKwogdm9pZCBXZWJWaWV3SW1wbDo6ZGlkQ29tbWl0QW5kRHJhd0ZyYW1lKCkK
IHsKICAgICBpZiAobV9jbGllbnQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVt
L3NyYy9XZWJWaWV3SW1wbC5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0lt
cGwuaAppbmRleCA4YWQxODVhOGI5MmZmMzA3NjI0NmU2Y2IwOTU2YzJiMjcyZmU1ZjA4Li4zOGJl
NmFkYzMzNWRkMjU3NzNmNjgzZmU0OWFiZTVmZjRlMGVjNjY2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vc3JjL1dlYlZpZXdJbXBsLmgKQEAgLTEyMiw2ICsxMjIsNyBAQCBwdWJsaWM6CiAgICAg
dmlydHVhbCB2b2lkIHRoZW1lQ2hhbmdlZCgpOwogICAgIHZpcnR1YWwgdm9pZCBjb21wb3NpdGUo
Ym9vbCBmaW5pc2gpOwogICAgIHZpcnR1YWwgdm9pZCBzZXROZWVkc1JlZHJhdygpOworICAgIHZp
cnR1YWwgYm9vbCBpc0lucHV0VGhyb3R0bGVkKCkgY29uc3Q7CiAgICAgdmlydHVhbCBib29sIGhh
bmRsZUlucHV0RXZlbnQoY29uc3QgV2ViSW5wdXRFdmVudCYpOwogICAgIHZpcnR1YWwgdm9pZCBt
b3VzZUNhcHR1cmVMb3N0KCk7CiAgICAgdmlydHVhbCB2b2lkIHNldEZvY3VzKGJvb2wgZW5hYmxl
KTsKQEAgLTI1OSw2ICsyNjAsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIGFwcGx5U2Ny
b2xsQW5kU2NhbGUoY29uc3QgV2ViU2l6ZSYsIGZsb2F0KTsKICAgICB2aXJ0dWFsIFdlYkdyYXBo
aWNzQ29udGV4dDNEKiBjcmVhdGVDb250ZXh0M0QoKTsKICAgICB2aXJ0dWFsIHZvaWQgZGlkUmVi
aW5kR3JhcGhpY3NDb250ZXh0KGJvb2wpOworICAgIHZpcnR1YWwgdm9pZCBkaWRDb21taXQoKTsK
ICAgICB2aXJ0dWFsIHZvaWQgZGlkQ29tbWl0QW5kRHJhd0ZyYW1lKCk7CiAgICAgdmlydHVhbCB2
b2lkIGRpZENvbXBsZXRlU3dhcEJ1ZmZlcnMoKTsKICAgICB2aXJ0dWFsIHZvaWQgc2NoZWR1bGVD
b21wb3NpdGUoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvQ0NM
YXllclRyZWVIb3N0VGVzdC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL0NDTGF5
ZXJUcmVlSG9zdFRlc3QuY3BwCmluZGV4IDBhZDY4ZDNkZTg0Y2UxZjA1YjYxN2FmOTgwYjI3Mzkx
YzRlOWE4ODIuLjUxODExZGUxODA1MjUxMmI3ZTMwODFiMjlmOGExZjg5MDQ3MjgyNzIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvQ0NMYXllclRyZWVIb3N0VGVzdC5j
cHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9DQ0xheWVyVHJlZUhvc3RUZXN0
LmNwcApAQCAtMjQ5LDYgKzI0OSwxMCBAQCBwdWJsaWM6CiAgICAgICAgIHJldHVybiBHcmFwaGlj
c0NvbnRleHQzRFByaXZhdGU6OmNyZWF0ZUdyYXBoaWNzQ29udGV4dEZyb21XZWJDb250ZXh0KHdl
YkNvbnRleHQucmVsZWFzZSgpLCBHcmFwaGljc0NvbnRleHQzRDo6UmVuZGVyRGlyZWN0bHlUb0hv
c3RXaW5kb3cpOwogICAgIH0KIAorICAgIHZpcnR1YWwgdm9pZCBkaWRDb21taXQoKQorICAgIHsK
KyAgICB9CisKICAgICB2aXJ0dWFsIHZvaWQgZGlkQ29tbWl0QW5kRHJhd0ZyYW1lKCkKICAgICB7
CiAgICAgICAgIG1fdGVzdEhvb2tzLT5kaWRDb21taXRBbmREcmF3RnJhbWUoKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvRmFrZUNDTGF5ZXJUcmVlSG9zdENsaWVu
dC5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9GYWtlQ0NMYXllclRyZWVIb3N0Q2xp
ZW50LmgKaW5kZXggZDFmZTVlNjUwNjY4YzY2NTUyZjYzMjQ2NmQ1ZmU2OThlYWMzMmNiOS4uNjUw
MmY4MmEzYWQwYjkxYjlkMDY3Y2IzZWQ1OGZjMGE4NGUwYzMxZSAxMDA3NTUKLS0tIGEvU291cmNl
L1dlYktpdC9jaHJvbWl1bS90ZXN0cy9GYWtlQ0NMYXllclRyZWVIb3N0Q2xpZW50LmgKKysrIGIv
U291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9GYWtlQ0NMYXllclRyZWVIb3N0Q2xpZW50LmgK
QEAgLTQ0LDYgKzQ0LDcgQEAgcHVibGljOgogICAgICAgICByZXR1cm4gY3JlYXRlQ29tcG9zaXRv
ck1vY2tHcmFwaGljc0NvbnRleHQzRChhdHRycyk7CiAgICAgfQogICAgIHZpcnR1YWwgdm9pZCBk
aWRSZWNyZWF0ZUNvbnRleHQoYm9vbCBzdWNjZXNzKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgZGlk
Q29tbWl0KCkgeyB9CiAgICAgdmlydHVhbCB2b2lkIGRpZENvbW1pdEFuZERyYXdGcmFtZSgpIHsg
fQogICAgIHZpcnR1YWwgdm9pZCBkaWRDb21wbGV0ZVN3YXBCdWZmZXJzKCkgeyB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>133939</attachid>
            <date>2012-03-26 17:35:47 -0700</date>
            <delta_ts>2012-03-26 18:24:21 -0700</delta_ts>
            <desc>oops</desc>
            <filename>bug-82265-20120326173546.patch</filename>
            <type>text/plain</type>
            <size>19325</size>
            <attacher name="Nat Duca">nduca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTEyMTUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvUGxhdGZvcm0v
Q2hhbmdlTG9nIGIvU291cmNlL1BsYXRmb3JtL0NoYW5nZUxvZwppbmRleCBiMzI3OWZjZjczYmY3
ODkxNjM0NzY3YWI0YjNlMTc3Y2ZlZjEwNTQyLi4xMTk1NDRiMWFiMTdiZjcwNGFhMjkwMjcyN2Iw
NjE4MzUyZTkxNTI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvUGxhdGZvcm0vQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9QbGF0Zm9ybS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxMi0wMy0yNiAg
TmF0IER1Y2EgIDxuZHVjYUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW2Nocm9taXVtXSBBZGQg
aXNJbnB1dFRocm90dGxlZC9kaWRCZWNvbWVSZWFkeUZvckFkZGl0aW9uYWxJbnB1dCB0byBXZWJX
aWRnZXQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgy
MjY1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBj
aHJvbWl1bS9wdWJsaWMvV2ViTGF5ZXJUcmVlVmlldy5oOgorICAgICAgICAoV2ViTGF5ZXJUcmVl
Vmlldyk6CisgICAgICAgICogY2hyb21pdW0vcHVibGljL1dlYkxheWVyVHJlZVZpZXdDbGllbnQu
aDoKKyAgICAgICAgKFdlYkxheWVyVHJlZVZpZXdDbGllbnQpOgorICAgICAgICAoV2ViS2l0OjpX
ZWJMYXllclRyZWVWaWV3Q2xpZW50OjpkaWRDb21taXQpOgorCiAyMDEyLTAzLTI1ICBOYXQgRHVj
YSAgPG5kdWNhQGNocm9taXVtLm9yZz4KIAogICAgICAgICBbY2hyb21pdW1dIFJvdXRlIHdpbGxC
ZWdpbkZyYW1lIGZyb20gY29tcG9zaXRvciB0byBXZWJXaWRnZXQKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA2OGVj
ZjEwZDRiZGZhMDI3ODA1MmFkMTBmNTg1N2VmMjkyNWYxODFmLi4zNmVmODk0NTY3ZGRmMGJkODZh
YzQ3NDhkMWZmY2E3YzE3M2JlZmY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzggQEAKKzIwMTIt
MDMtMjYgIE5hdCBEdWNhICA8bmR1Y2FAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFtjaHJvbWl1
bV0gQWRkIGlzSW5wdXRUaHJvdHRsZWQvZGlkQmVjb21lUmVhZHlGb3JBZGRpdGlvbmFsSW5wdXQg
dG8gV2ViV2lkZ2V0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD04MjI2NQorCisgICAgICAgIEluIHRocmVhZGVkIGNvbXBvc2l0aW5nIG1vZGUsIHRoZSBX
ZWJXaWRnZXQgaXMgc2VsZi1zY2hlZHVsZWQsCisgICAgICAgIHJlY2VpdmluZyBkYW1hZ2UgYW5k
IHByb2Nlc3NpbmcgaXQgd2l0aG91dCBmb3J3YXJkaW5nIHRoYXQgZGFtYWdlCisgICAgICAgIHVw
IHRvIHRoZSBlbWJlZGRpbmcgV2ViV2lkZ2V0Q2xpZW50LiBJbiBDaHJvbWl1bSdzIGNhc2UsIHRo
ZQorICAgICAgICBjbGllbnQgdXNlcyB0aGUgcHJlc2VuY2Ugb2YgZGFtYWdlIHRvIHBlcmZvcm0g
aW5wdXQgZmxvdworICAgICAgICBjb250cm9sLiBUaGlzIHBhdGNoIGV4cG9zZXMgdGhlIG5lZWQg
Zm9yIGlucHV0IGZsb3cgY29udHJvbCB0byB0aGUKKyAgICAgICAgZW1iZWRkZXIsIHdoaWxlIGtl
ZXBpbmcgdGhlIGFjdHVhbCBsb2dpYyBhYm91dCB3aGF0IGV4YWN0bHkKKyAgICAgICAgd2FycmFu
dHMgaW5wdXQgZmxvdyBjb250cm9sIGluc2lkZSB0aGUgaW1wbGVtZW50YXRpb24uCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
Q0NMYXllclRyZWVIb3N0Ojpjb21taXRDb21wbGV0ZSk6CisgICAgICAgIChXZWJDb3JlOjpDQ0xh
eWVyVHJlZUhvc3Q6OmNvbW1pdFJlcXVlc3RlZCk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAg
ICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3QuaDoKKyAg
ICAgICAgKENDTGF5ZXJUcmVlSG9zdENsaWVudCk6CisgICAgICAgIChDQ0xheWVyVHJlZUhvc3Qp
OgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDUHJveHkuaDoKKyAg
ICAgICAgKENDUHJveHkpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2Nj
L0NDU2luZ2xlVGhyZWFkUHJveHkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q0NTaW5nbGVUaHJl
YWRQcm94eTo6Y29tbWl0UmVxdWVzdGVkKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDU2luZ2xlVGhyZWFkUHJveHkuaDoKKyAg
ICAgICAgKENDU2luZ2xlVGhyZWFkUHJveHkpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNz
L2Nocm9taXVtL2NjL0NDVGhyZWFkUHJveHkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q0NUaHJl
YWRQcm94eTo6Y29tbWl0UmVxdWVzdGVkKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDVGhyZWFkUHJveHkuaDoKKyAgICAgICAg
KENDVGhyZWFkUHJveHkpOgorCiAyMDEyLTAzLTI2ICBBbmRlcnMgQ2FybHNzb24gIDxhbmRlcnNj
YUBhcHBsZS5jb20+CiAKICAgICAgICAgRmluZCBpbiBwYWdlIG92ZXJsYXkgYW5kIGJvdW5jeSBh
cmUgbm90IGFsd2F5cyBwb3NpdGlvbmVkIGNvcnJlY3RseQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxv
ZwppbmRleCAwN2E5YzA0MmU1M2RlMDBjZGViOWI2Yjk5YjE2YmNmODFiM2EwODU5Li5iZTI0N2I2
ZDVkNzQ4ZDRkMTY5YmI3MTAxNjQ1Y2E3MzZhNTZmYmJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDEyLTAzLTI2ICBOYXQgRHVjYSAgPG5kdWNhQGNocm9t
aXVtLm9yZz4KKworICAgICAgICBbY2hyb21pdW1dIEFkZCBpc0lucHV0VGhyb3R0bGVkL2RpZEJl
Y29tZVJlYWR5Rm9yQWRkaXRpb25hbElucHV0IHRvIFdlYldpZGdldAorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODIyNjUKKworICAgICAgICBJbiB0aHJl
YWRlZCBjb21wb3NpdGluZyBtb2RlLCB0aGUgV2ViV2lkZ2V0IGlzIHNlbGYtc2NoZWR1bGVkLAor
ICAgICAgICByZWNlaXZpbmcgZGFtYWdlIGFuZCBwcm9jZXNzaW5nIGl0IHdpdGhvdXQgZm9yd2Fy
ZGluZyB0aGF0IGRhbWFnZQorICAgICAgICB1cCB0byB0aGUgZW1iZWRkaW5nIFdlYldpZGdldENs
aWVudC4gSW4gQ2hyb21pdW0ncyBjYXNlLCB0aGUKKyAgICAgICAgY2xpZW50IHVzZXMgdGhlIHBy
ZXNlbmNlIG9mIGRhbWFnZSB0byBwZXJmb3JtIGlucHV0IGZsb3cKKyAgICAgICAgY29udHJvbC4g
VGhpcyBwYXRjaCBleHBvc2VzIHRoZSBuZWVkIGZvciBpbnB1dCBmbG93IGNvbnRyb2wgdG8gdGhl
CisgICAgICAgIGVtYmVkZGVyLCB3aGlsZSBrZWVwaW5nIHRoZSBhY3R1YWwgbG9naWMgYWJvdXQg
d2hhdCBleGFjdGx5CisgICAgICAgIHdhcnJhbnRzIGlucHV0IGZsb3cgY29udHJvbCBpbnNpZGUg
dGhlIGltcGxlbWVudGF0aW9uLgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgICogcHVibGljL1dlYldpZGdldC5oOgorICAgICAgICAoV2ViV2lkZ2V0KToK
KyAgICAgICAgKFdlYktpdDo6V2ViV2lkZ2V0Ojppc0lucHV0VGhyb3R0bGVkKToKKyAgICAgICAg
KiBwdWJsaWMvV2ViV2lkZ2V0Q2xpZW50Lmg6CisgICAgICAgIChXZWJXaWRnZXRDbGllbnQpOgor
ICAgICAgICAoV2ViS2l0OjpXZWJXaWRnZXRDbGllbnQ6OmRpZEJlY29tZVJlYWR5Rm9yQWRkaXRp
b25hbElucHV0KToKKyAgICAgICAgKiBzcmMvV2ViTGF5ZXJUcmVlVmlldy5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYkxheWVyVHJlZVZpZXc6OmNvbW1pdFJlcXVlc3RlZCk6CisgICAgICAgIChX
ZWJLaXQpOgorICAgICAgICAqIHNyYy9XZWJMYXllclRyZWVWaWV3SW1wbC5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYkxheWVyVHJlZVZpZXdJbXBsOjpkaWRDb21taXQpOgorICAgICAgICAoV2Vi
S2l0KToKKyAgICAgICAgKiBzcmMvV2ViTGF5ZXJUcmVlVmlld0ltcGwuaDoKKyAgICAgICAgKFdl
YkxheWVyVHJlZVZpZXdJbXBsKToKKyAgICAgICAgKiBzcmMvV2ViVmlld0ltcGwuY3BwOgorICAg
ICAgICAoV2ViS2l0OjpXZWJWaWV3SW1wbDo6aXNJbnB1dFRocm90dGxlZCk6CisgICAgICAgIChX
ZWJLaXQpOgorICAgICAgICAoV2ViS2l0OjpXZWJWaWV3SW1wbDo6ZGlkQ29tbWl0KToKKyAgICAg
ICAgKiBzcmMvV2ViVmlld0ltcGwuaDoKKyAgICAgICAgKFdlYlZpZXdJbXBsKToKKyAgICAgICAg
KiB0ZXN0cy9DQ0xheWVyVHJlZUhvc3RUZXN0LmNwcDoKKyAgICAgICAgKFdURjo6TW9ja0xheWVy
VHJlZUhvc3RDbGllbnQ6OmRpZENvbW1pdCk6CisgICAgICAgIChNb2NrTGF5ZXJUcmVlSG9zdENs
aWVudCk6CisgICAgICAgICogdGVzdHMvRmFrZUNDTGF5ZXJUcmVlSG9zdENsaWVudC5oOgorICAg
ICAgICAoRmFrZUNDTGF5ZXJUcmVlSG9zdENsaWVudCk6CisKIDIwMTItMDMtMjYgIEphbWVzIFJv
Ymluc29uICA8amFtZXNyQGNocm9taXVtLm9yZz4KIAogICAgICAgICBTY3JvbGxhYmxlIHBsdWdp
bnMgbm90IHJlZ2lzdGVyZWQgcHJvcGVybHkgaW4gU2Nyb2xsaW5nQ29vcmRpbmF0b3IKZGlmZiAt
LWdpdCBhL1NvdXJjZS9QbGF0Zm9ybS9jaHJvbWl1bS9wdWJsaWMvV2ViTGF5ZXJUcmVlVmlldy5o
IGIvU291cmNlL1BsYXRmb3JtL2Nocm9taXVtL3B1YmxpYy9XZWJMYXllclRyZWVWaWV3LmgKaW5k
ZXggM2VmMjk1ZDk0NTU5ODMxOTczY2NhYjVlYzI1MGMyNzAxODhkNDA0ZS4uMmExNmM4NjcwNWMz
YjkyY2NiNGU4ZWQ0YzBiOWEzZDYwZmEyMWNmNCAxMDA2NDQKLS0tIGEvU291cmNlL1BsYXRmb3Jt
L2Nocm9taXVtL3B1YmxpYy9XZWJMYXllclRyZWVWaWV3LmgKKysrIGIvU291cmNlL1BsYXRmb3Jt
L2Nocm9taXVtL3B1YmxpYy9XZWJMYXllclRyZWVWaWV3LmgKQEAgLTEyOSw2ICsxMjksOSBAQCBw
dWJsaWM6CiAgICAgLy8gSW5kaWNhdGVzIHRoYXQgdGhlIHZpZXcgbmVlZHMgdG8gYmUgcmVkcmF3
bi4gVGhpcyBpcyB0eXBpY2FsbHkgdXNlZCB3aGVuIHRoZSBmcm9udGJ1ZmZlciBpcyBkYW1hZ2Vk
LgogICAgIFdFQktJVF9FWFBPUlQgdm9pZCBzZXROZWVkc1JlZHJhdygpOwogCisgICAgLy8gSW5k
aWNhdGVzIHdoZXRoZXIgYSBjb21taXQgaXMgcGVuZGluZy4KKyAgICBXRUJLSVRfRVhQT1JUIGJv
b2wgY29tbWl0UmVxdWVzdGVkKCkgY29uc3Q7CisKICAgICAvLyBUcmlnZ2VycyBhIGNvbXBvc2l0
aW5nIHBhc3MuIElmIHRoZSBjb21wb3NpdG9yIHRocmVhZCB3YXMgbm90CiAgICAgLy8gZW5hYmxl
ZCB2aWEgV2ViQ29tcG9zaXRvcjo6aW5pdGlhbGl6ZSwgdGhlIGNvbXBvc2l0aW5nIHBhc3MgaGFw
cGVucwogICAgIC8vIGltbWVkaWF0ZWx5LiBJZiBpdCBpcyBlbmFibGVkLCB0aGUgY29tcG9zaXRp
bmcgcGFzcyB3aWxsIGhhcHBlbiBhdCBhCmRpZmYgLS1naXQgYS9Tb3VyY2UvUGxhdGZvcm0vY2hy
b21pdW0vcHVibGljL1dlYkxheWVyVHJlZVZpZXdDbGllbnQuaCBiL1NvdXJjZS9QbGF0Zm9ybS9j
aHJvbWl1bS9wdWJsaWMvV2ViTGF5ZXJUcmVlVmlld0NsaWVudC5oCmluZGV4IDlmOWQzMjQ2NDNm
MDUyMjA0ZTdjYTUzMzcxMTUxNzI2MTA0MjY1ZmUuLjE5MDNmZmZhOWUxMmM5NjIxYThiM2VhNmYz
ZWI4NTI0MGIyM2UzNmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9QbGF0Zm9ybS9jaHJvbWl1bS9wdWJs
aWMvV2ViTGF5ZXJUcmVlVmlld0NsaWVudC5oCisrKyBiL1NvdXJjZS9QbGF0Zm9ybS9jaHJvbWl1
bS9wdWJsaWMvV2ViTGF5ZXJUcmVlVmlld0NsaWVudC5oCkBAIC01OSw3ICs1OSwxOCBAQCBwdWJs
aWM6CiAgICAgLy8gY29udGV4dCBldmVudCkuCiAgICAgdmlydHVhbCB2b2lkIGRpZFJlYmluZEdy
YXBoaWNzQ29udGV4dChib29sIHN1Y2Nlc3MpID0gMDsKIAorICAgIC8vIEluZGljYXRlcyB0aGF0
IGEgZnJhbWUgd2FzIGNvbW1pdHRlZCB0byB0aGUgaW1wbCBzaWRlIG9mIHRoZSBjb21wb3NpdG9y
CisgICAgLy8gZm9yIHJlbmRlcmluZy4KKyAgICAvLworICAgIC8vIEZJWE1FOiBtYWtlIHRoaXMg
bm9uLXZpcnR1YWwgd2hlbiB1aS9jb21wb3NpdG9yIERFUCBpcyByZXNvbHZlZC4KKyAgICB2aXJ0
dWFsIHZvaWQgZGlkQ29tbWl0KCkgeyB9CisKKyAgICAvLyBJbmRpY2F0ZXMgdGhhdCBhIGZyYW1l
IHdhcyBjb21taXR0ZWQgdG8gdGhlIGltcGwgc2lkZSBhbmQgZHJhd2luZworICAgIC8vIGNvbW1h
bmRzIGZvciBpdCB3ZXJlIGlzc3VlZCB0byB0aGUgR1BVLgogICAgIHZpcnR1YWwgdm9pZCBkaWRD
b21taXRBbmREcmF3RnJhbWUoKSA9IDA7CisKKyAgICAvLyBJbmRpY2F0ZXMgdGhhdCBhIGZyYW1l
IHByZXZpb3VzbHkgaXNzdWVkIHRvIHRoZSBHUFUgaGFzIGNvbXBsZXRlZAorICAgIC8vIHJlbmRl
cmluZy4KICAgICB2aXJ0dWFsIHZvaWQgZGlkQ29tcGxldGVTd2FwQnVmZmVycygpID0gMDsKIAog
ICAgIC8vIFNjaGVkdWxlcyBhIGNvbXBvc2l0aW5nIHBhc3MsIG1lYW5pbmcgdGhlIGNsaWVudCBz
aG91bGQgY2FsbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Y2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdC5jcHAKaW5kZXggMDI5MGE3NTM5
NGU2NjUyODc4N2EzYmNkNDljOGU2ZmY3OTZhNGY4Yy4uZTQ2Nzg2N2RhYjEzNTgxYjE2Zjg0MGM4
N2Q0MGFjNTI4ZTUzMGRmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3QuY3BwCkBAIC0y
MzEsNiArMjMxLDcgQEAgdm9pZCBDQ0xheWVyVHJlZUhvc3Q6OmNvbW1pdENvbXBsZXRlKCkKICAg
ICBtX2RlbGV0ZVRleHR1cmVBZnRlckNvbW1pdExpc3QuY2xlYXIoKTsKICAgICBjbGVhclBlbmRp
bmdVcGRhdGUoKTsKICAgICBtX2NvbnRlbnRzVGV4dHVyZU1hbmFnZXItPnVucHJvdGVjdEFsbFRl
eHR1cmVzKCk7CisgICAgbV9jbGllbnQtPmRpZENvbW1pdCgpOwogfQogCiBQYXNzUmVmUHRyPEdy
YXBoaWNzQ29udGV4dDNEPiBDQ0xheWVyVHJlZUhvc3Q6OmNyZWF0ZUNvbnRleHQoKQpAQCAtMzA4
LDYgKzMwOSwxMSBAQCB2b2lkIENDTGF5ZXJUcmVlSG9zdDo6c2V0TmVlZHNSZWRyYXcoKQogICAg
ICAgICBtX2NsaWVudC0+c2NoZWR1bGVDb21wb3NpdGUoKTsKIH0KIAorYm9vbCBDQ0xheWVyVHJl
ZUhvc3Q6OmNvbW1pdFJlcXVlc3RlZCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fcHJveHktPmNv
bW1pdFJlcXVlc3RlZCgpOworfQorCiB2b2lkIENDTGF5ZXJUcmVlSG9zdDo6c2V0QW5pbWF0aW9u
RXZlbnRzKFBhc3NPd25QdHI8Q0NBbmltYXRpb25FdmVudHNWZWN0b3I+IGV2ZW50cywgZG91Ymxl
IHdhbGxDbG9ja1RpbWUpCiB7CiAgICAgQVNTRVJUKENDVGhyZWFkUHJveHk6OmlzTWFpblRocmVh
ZCgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9t
aXVtL2NjL0NDTGF5ZXJUcmVlSG9zdC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0LmgKaW5kZXggNmViNzJhZTA4Y2M1MWE5NTA4
MDFlYTJjMjgxNDAyYjFkMmI4YWJjMi4uNjFmYzJlZmJlZGIzZDYzYTFhYjE2MWZlY2EwMTZhY2Qw
ODdjNzY3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hy
b21pdW0vY2MvQ0NMYXllclRyZWVIb3N0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0LmgKQEAgLTU4LDYgKzU4LDcgQEAg
cHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBhcHBseVNjcm9sbEFuZFNjYWxlKGNvbnN0IEludFNp
emUmIHNjcm9sbERlbHRhLCBmbG9hdCBwYWdlU2NhbGUpID0gMDsKICAgICB2aXJ0dWFsIFBhc3NS
ZWZQdHI8R3JhcGhpY3NDb250ZXh0M0Q+IGNyZWF0ZUNvbnRleHQoKSA9IDA7CiAgICAgdmlydHVh
bCB2b2lkIGRpZFJlY3JlYXRlQ29udGV4dChib29sIHN1Y2Nlc3MpID0gMDsKKyAgICB2aXJ0dWFs
IHZvaWQgZGlkQ29tbWl0KCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBkaWRDb21taXRBbmREcmF3
RnJhbWUoKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIGRpZENvbXBsZXRlU3dhcEJ1ZmZlcnMoKSA9
IDA7CiAKQEAgLTE4MSw2ICsxODIsNyBAQCBwdWJsaWM6CiAgICAgLy8gdmlydHVhbCBmb3IgdGVz
dGluZwogICAgIHZpcnR1YWwgdm9pZCBzZXROZWVkc0NvbW1pdCgpOwogICAgIHZvaWQgc2V0TmVl
ZHNSZWRyYXcoKTsKKyAgICBib29sIGNvbW1pdFJlcXVlc3RlZCgpIGNvbnN0OwogCiAgICAgdm9p
ZCBzZXRBbmltYXRpb25FdmVudHMoUGFzc093blB0cjxDQ0FuaW1hdGlvbkV2ZW50c1ZlY3Rvcj4s
IGRvdWJsZSB3YWxsQ2xvY2tUaW1lKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NQcm94eS5oIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NQcm94eS5oCmluZGV4IDAxNjIyNmNhNTEyMDEz
MWZjZmUzZmMxMzMxOWFjNzE2MDg3Njc1OWIuLjFhOGRlMTY1NGVlNjI3NGE2YTBiODU1YzQ3Zjlk
ZjVmMjQ4M2IyNjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2Nocm9taXVtL2NjL0NDUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jaHJvbWl1bS9jYy9DQ1Byb3h5LmgKQEAgLTg2LDYgKzg2LDggQEAgcHVibGljOgogICAg
IHZpcnR1YWwgdm9pZCBzZXROZWVkc1JlZHJhdygpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc2V0
VmlzaWJsZShib29sKSA9IDA7CiAKKyAgICB2aXJ0dWFsIGJvb2wgY29tbWl0UmVxdWVzdGVkKCkg
Y29uc3QgPSAwOworCiAgICAgdmlydHVhbCB2b2lkIHN0YXJ0KCkgPSAwOyAvLyBNdXN0IGJlIGNh
bGxlZCBiZWZvcmUgdXNpbmcgdGhlIHByb3h5LgogICAgIHZpcnR1YWwgdm9pZCBzdG9wKCkgPSAw
OyAvLyBNdXN0IGJlIGNhbGxlZCBiZWZvcmUgZGVsZXRpbmcgdGhlIHByb3h5LgogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ1Npbmds
ZVRocmVhZFByb3h5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9t
aXVtL2NjL0NDU2luZ2xlVGhyZWFkUHJveHkuY3BwCmluZGV4IDJkOWUwZjM0MWZlNzI1N2QzNDc5
OGY2Y2YxYjhkNGRmODU5ZDIwYjAuLjc2NTI1ODZkNGYzNWE2MzllZDg2YjY0YTU2YzJmZWJhODdh
YmMxMmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9t
aXVtL2NjL0NDU2luZ2xlVGhyZWFkUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDU2luZ2xlVGhyZWFkUHJveHkuY3BwCkBAIC0yMzYs
NiArMjM2LDExIEBAIHZvaWQgQ0NTaW5nbGVUaHJlYWRQcm94eTo6c2V0TmVlZHNSZWRyYXcoKQog
ICAgIHNldE5lZWRzQ29tbWl0KCk7CiB9CiAKK2Jvb2wgQ0NTaW5nbGVUaHJlYWRQcm94eTo6Y29t
bWl0UmVxdWVzdGVkKCkgY29uc3QKK3sKKyAgICByZXR1cm4gZmFsc2U7Cit9CisKIHZvaWQgQ0NT
aW5nbGVUaHJlYWRQcm94eTo6c2V0VmlzaWJsZShib29sIHZpc2libGUpCiB7CiAgICAgbV9sYXll
clRyZWVIb3N0SW1wbC0+c2V0VmlzaWJsZSh2aXNpYmxlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDU2luZ2xlVGhyZWFkUHJveHku
aCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDU2luZ2xl
VGhyZWFkUHJveHkuaAppbmRleCBlYmJkOTZlMmMzODgyMjE4OWQyYjkwYjIxZTZkOTc2YTM2N2Mw
ZTljLi45ODg3NDMyZWJhZDZlNTNjZTQwNTI2YzYwZTEyMDExNjA2MTYzMTRlIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ1NpbmdsZVRo
cmVhZFByb3h5LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21p
dW0vY2MvQ0NTaW5nbGVUaHJlYWRQcm94eS5oCkBAIC01Niw2ICs1Niw3IEBAIHB1YmxpYzoKICAg
ICB2aXJ0dWFsIHZvaWQgc2V0TmVlZHNBbmltYXRlKCk7CiAgICAgdmlydHVhbCB2b2lkIHNldE5l
ZWRzQ29tbWl0KCk7CiAgICAgdmlydHVhbCB2b2lkIHNldE5lZWRzUmVkcmF3KCk7CisgICAgdmly
dHVhbCBib29sIGNvbW1pdFJlcXVlc3RlZCgpIGNvbnN0OwogICAgIHZpcnR1YWwgdm9pZCBzZXRW
aXNpYmxlKGJvb2wpOwogICAgIHZpcnR1YWwgdm9pZCBzdGFydCgpOwogICAgIHZpcnR1YWwgdm9p
ZCBzdG9wKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
aHJvbWl1bS9jYy9DQ1RocmVhZFByb3h5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2Nocm9taXVtL2NjL0NDVGhyZWFkUHJveHkuY3BwCmluZGV4IGU1MWE3ODQwODAyZWI5
YzU2MTc1MDQ3Zjg5YzVlY2I3MDc2N2ZhODcuLmE5ZmE2YmJjMDRkZmVhZmYwMjZjYTc5OWVlY2Vh
MjgxNDQwMzVjYTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2Nocm9taXVtL2NjL0NDVGhyZWFkUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDVGhyZWFkUHJveHkuY3BwCkBAIC0zMDksNiArMzA5
LDEyIEBAIHZvaWQgQ0NUaHJlYWRQcm94eTo6c2V0TmVlZHNSZWRyYXcoKQogICAgIENDUHJveHk6
OmltcGxUaHJlYWQoKS0+cG9zdFRhc2soY3JlYXRlQ0NUaHJlYWRUYXNrKHRoaXMsICZDQ1RocmVh
ZFByb3h5OjpzZXROZWVkc1JlZHJhd09uSW1wbFRocmVhZCkpOwogfQogCitib29sIENDVGhyZWFk
UHJveHk6OmNvbW1pdFJlcXVlc3RlZCgpIGNvbnN0Cit7CisgICAgQVNTRVJUKGlzTWFpblRocmVh
ZCgpKTsKKyAgICByZXR1cm4gbV9jb21taXRSZXF1ZXN0ZWQ7Cit9CisKIHZvaWQgQ0NUaHJlYWRQ
cm94eTo6c2V0VmlzaWJsZShib29sIHZpc2libGUpCiB7CiAgICAgQVNTRVJUKGlzTWFpblRocmVh
ZCgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9t
aXVtL2NjL0NDVGhyZWFkUHJveHkuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2Nocm9taXVtL2NjL0NDVGhyZWFkUHJveHkuaAppbmRleCA0ODYxZjc5MDkyNjAxYzAwNWEwNTA1
MjBkNTQ3ZWQyMWNkZjlkN2EwLi42MTQzNGE2YTljZjYzZTgyOWNkYmM1YjdiMjUxNzA1ZThhZjk1
NWU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1
bS9jYy9DQ1RocmVhZFByb3h5LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY2hyb21pdW0vY2MvQ0NUaHJlYWRQcm94eS5oCkBAIC02NSw2ICs2NSw3IEBAIHB1YmxpYzoK
ICAgICB2aXJ0dWFsIHZvaWQgc2V0TmVlZHNBbmltYXRlKCk7CiAgICAgdmlydHVhbCB2b2lkIHNl
dE5lZWRzQ29tbWl0KCk7CiAgICAgdmlydHVhbCB2b2lkIHNldE5lZWRzUmVkcmF3KCk7CisgICAg
dmlydHVhbCBib29sIGNvbW1pdFJlcXVlc3RlZCgpIGNvbnN0OwogICAgIHZpcnR1YWwgdm9pZCBz
ZXRWaXNpYmxlKGJvb2wpOwogICAgIHZpcnR1YWwgdm9pZCBzdGFydCgpOwogICAgIHZpcnR1YWwg
dm9pZCBzdG9wKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9X
ZWJXaWRnZXQuaCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYldpZGdldC5oCmlu
ZGV4IGFmY2U2YWU2MjBlY2RlOTVkYTU5Nzc2N2Q5NjQ4NzY3YTIxOGViN2IuLmZjMDExY2I4Zjg2
MGNkZjQ0YmY3NjFkYzk5NTM0YjY3YThiMmZmZmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vcHVibGljL1dlYldpZGdldC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
cHVibGljL1dlYldpZGdldC5oCkBAIC0xMTIsNiArMTEyLDE1IEBAIHB1YmxpYzoKICAgICAvLyBy
ZW1vdmVkIHdoZW4gdGhlIFdlYldpZGdldCBpbnZlcnNpb24gcGF0Y2ggbGFuZHMgLS0tIGh0dHA6
Ly9jcmJ1Zy5jb20vMTEyODM3CiAgICAgdmlydHVhbCB2b2lkIHNldE5lZWRzUmVkcmF3KCkgeyB9
CiAKKyAgICAvLyBUZW1wb3JhcnkgbWV0aG9kIGZvciB0aGUgZW1iZWRkZXIgdG8gY2hlY2sgZm9y
IHRocm90dGxlZCBpbnB1dC4gV2hlbiB0aGlzCisgICAgLy8gaXMgdHJ1ZSwgdGhlIFdlYldpZGdl
dCBpcyBpbmRpY2F0aW5nIHRoYXQgaXQgd291bGQgcHJlZmVyIHRvIG5vdCByZWNlaXZlCisgICAg
Ly8gYWRkaXRpb25hbCBpbnB1dCBldmVudHMgdW50aWwKKyAgICAvLyBXZWJXaWRnZXRDbGllbnQ6
OmRpZEJlY29tZVJlYWR5Rm9yQWRkaXRpb25hbElucHV0IGlzIGNhbGxlZC4KKyAgICAvLworICAg
IC8vIFRoaXMgbWV0aG9kIHdpbGwgYmUgcmVtb3ZlZCB3aGVuIHRoZSBXZWJXaWRnZXQgaW52ZXJz
aW9uIHBhdGNoIGxhbmRzIC0tLQorICAgIC8vIGh0dHA6Ly9jcmJ1Zy5jb20vMTEyODM3CisgICAg
dmlydHVhbCBib29sIGlzSW5wdXRUaHJvdHRsZWQoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQor
CiAgICAgLy8gQ2FsbGVkIHRvIGluZm9ybSB0aGUgV2ViV2lkZ2V0IG9mIGEgY2hhbmdlIGluIHRo
ZW1lLgogICAgIC8vIEltcGxlbWVudG9ycyB0aGF0IGNhY2hlIHJlbmRlcmVkIGNvcGllcyBvZiB3
aWRnZXRzIG5lZWQgdG8gcmUtcmVuZGVyCiAgICAgLy8gb24gcmVjZWl2aW5nIHRoaXMgbWVzc2Fn
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViV2lkZ2V0Q2xp
ZW50LmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJXaWRnZXRDbGllbnQuaApp
bmRleCAwY2RkZTgyOWM4ODAxZWM2OWJkZDMwMmY3NmEzNzI3Y2I5ZWJmN2VjLi45MmRmYjM2NzEw
NjdmMzg5NTM1YTA2MGY0NGM2YzRiM2VmZTdkNGMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL3B1YmxpYy9XZWJXaWRnZXRDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL3B1YmxpYy9XZWJXaWRnZXRDbGllbnQuaApAQCAtNjcsMTAgKzY3LDEyIEBAIHB1Ymxp
YzoKICAgICAvLyBJbmRpY2F0ZXMgdG8gdGhlIGVtYmVkZGVyIHRoYXQgdGhlIGNvbXBvc2l0b3Ig
aXMgYWJvdXQgdG8gYmVnaW4gYQogICAgIC8vIGZyYW1lLiBUaGlzIGlzIHByaW1hcmlseSB0byBz
aWduYWwgdG8gZmxvdyBjb250cm9sIG1lY2hhbmlzbXMgdGhhdCBhCiAgICAgLy8gZnJhbWUgaXMg
YmVnaW5uaW5nLCBub3QgdG8gcGVyZm9ybSBhY3R1YWwgcGFpbnRpbmcgd29yay4KLSAgICAvLwot
ICAgIC8vIEZJWE1FOiBNYWtlIHB1cmUgdmlydHVhbCBvbmNlIHVwc3RyZWFtIGRlcHMgYXJlIHNh
dGlzZmllZC4KICAgICB2aXJ0dWFsIHZvaWQgd2lsbEJlZ2luQ29tcG9zaXRvckZyYW1lKCkgeyB9
CiAKKyAgICAvLyBJbmRpY2F0ZXMgdG8gdGhlIGVtYmVkZGVyIHRoYXQgdGhlIFdlYldpZGdldCBp
cyByZWFkeSBmb3IgYWRkaXRpb25hbAorICAgIC8vIGlucHV0LgorICAgIHZpcnR1YWwgdm9pZCBk
aWRCZWNvbWVSZWFkeUZvckFkZGl0aW9uYWxJbnB1dCgpIHsgfQorCiAgICAgLy8gQ2FsbGVkIGZv
ciBjb21wb3NpdGluZyBtb2RlIHdoZW4gdGhlIGRyYXcgY29tbWFuZHMgZm9yIGEgV2ViS2l0LXNp
ZGUKICAgICAvLyBmcmFtZSBoYXZlIGJlZW4gaXNzdWVkLgogICAgIHZpcnR1YWwgdm9pZCBkaWRD
b21taXRBbmREcmF3Q29tcG9zaXRvckZyYW1lKCkgeyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3NyYy9XZWJMYXllclRyZWVWaWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vc3JjL1dlYkxheWVyVHJlZVZpZXcuY3BwCmluZGV4IDMzMTRkYzJmNTQ0YzFjYThjNTlj
NDcyYmMwMjVlOGMwMDdmNzAxZjAuLjUzMjQ2YjFjYTg3ZmIzYjFkMTk5Y2JjY2RiZjcyYjMzZGY3
MTFlZmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkxheWVyVHJl
ZVZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkxheWVyVHJlZVZp
ZXcuY3BwCkBAIC0xMjIsNiArMTIyLDExIEBAIHZvaWQgV2ViTGF5ZXJUcmVlVmlldzo6c2V0TmVl
ZHNSZWRyYXcoKQogICAgIG1fcHJpdmF0ZS0+c2V0TmVlZHNSZWRyYXcoKTsKIH0KIAorYm9vbCBX
ZWJMYXllclRyZWVWaWV3Ojpjb21taXRSZXF1ZXN0ZWQoKSBjb25zdAoreworICAgIHJldHVybiBt
X3ByaXZhdGUtPmNvbW1pdFJlcXVlc3RlZCgpOworfQorCiB2b2lkIFdlYkxheWVyVHJlZVZpZXc6
OmNvbXBvc2l0ZSgpCiB7CiAgICAgaWYgKENDUHJveHk6Omhhc0ltcGxUaHJlYWQoKSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkxheWVyVHJlZVZpZXdJbXBsLmNw
cCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkxheWVyVHJlZVZpZXdJbXBsLmNwcApp
bmRleCA3YjJmMTQ2YWViNTFiMTQ4ZjJmMzA5OGE3MWU0MTlmYzcxYjVhZWM2Li5iOGVmNWE5MjA4
NDBjNjc4MGExYmU4YmZmNjIwZjc5MDJjM2ZhMTRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL3NyYy9XZWJMYXllclRyZWVWaWV3SW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9zcmMvV2ViTGF5ZXJUcmVlVmlld0ltcGwuY3BwCkBAIC0xMDEsNiArMTAxLDEy
IEBAIHZvaWQgV2ViTGF5ZXJUcmVlVmlld0ltcGw6OmRpZFJlY3JlYXRlQ29udGV4dChib29sIHN1
Y2Nlc3MpCiAgICAgICAgIG1fY2xpZW50LT5kaWRSZWJpbmRHcmFwaGljc0NvbnRleHQoc3VjY2Vz
cyk7CiB9CiAKK3ZvaWQgV2ViTGF5ZXJUcmVlVmlld0ltcGw6OmRpZENvbW1pdCgpCit7CisgICAg
aWYgKG1fY2xpZW50KQorICAgICAgICBtX2NsaWVudC0+ZGlkQ29tbWl0KCk7Cit9CisKIHZvaWQg
V2ViTGF5ZXJUcmVlVmlld0ltcGw6OmRpZENvbW1pdEFuZERyYXdGcmFtZSgpCiB7CiAgICAgaWYg
KG1fY2xpZW50KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViTGF5
ZXJUcmVlVmlld0ltcGwuaCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkxheWVyVHJl
ZVZpZXdJbXBsLmgKaW5kZXggZTQ3ZWI1OTA1YjU0ZWU2NmE0NDUxNjI2OTU2YTAzNGJjZDE1NDM2
ZS4uNDNkNGNjMWViZGMwZjAzZWRkYzVmMjU1NTkwYzNkYTZkOGVkM2Q2YiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViTGF5ZXJUcmVlVmlld0ltcGwuaAorKysgYi9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJMYXllclRyZWVWaWV3SW1wbC5oCkBAIC00Nyw2
ICs0Nyw3IEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCB2b2lkIGFwcGx5U2Nyb2xsQW5kU2NhbGUo
Y29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgc2Nyb2xsRGVsdGEsIGZsb2F0IHBhZ2VTY2FsZSk7CiAg
ICAgdmlydHVhbCBQYXNzUmVmUHRyPFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dDNEPiBjcmVhdGVD
b250ZXh0KCk7CiAgICAgdmlydHVhbCB2b2lkIGRpZFJlY3JlYXRlQ29udGV4dChib29sIHN1Y2Nl
c3MpOworICAgIHZpcnR1YWwgdm9pZCBkaWRDb21taXQoKTsKICAgICB2aXJ0dWFsIHZvaWQgZGlk
Q29tbWl0QW5kRHJhd0ZyYW1lKCk7CiAgICAgdmlydHVhbCB2b2lkIGRpZENvbXBsZXRlU3dhcEJ1
ZmZlcnMoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmll
d0ltcGwuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCmlu
ZGV4IDcyOTBhNTBkZjczOTQ5OTdhZWI3MGYzZTdmNjU5MWJjYWVkYTc0Y2QuLmMwNjIxYTgwNjEw
NDEwMmQ5MDJlNzY1ZjRiZDRlZGIxOGI0MGNlNzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVt
L3NyYy9XZWJWaWV3SW1wbC5jcHAKQEAgLTE0OTcsNiArMTQ5NywxNSBAQCB2b2lkIFdlYlZpZXdJ
bXBsOjpzZXROZWVkc1JlZHJhdygpCiAjZW5kaWYKIH0KIAorYm9vbCBXZWJWaWV3SW1wbDo6aXNJ
bnB1dFRocm90dGxlZCgpIGNvbnN0Cit7CisjaWYgVVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5H
KQorICAgIGlmICghbV9sYXllclRyZWVWaWV3LmlzTnVsbCgpICYmIGlzQWNjZWxlcmF0ZWRDb21w
b3NpdGluZ0FjdGl2ZSgpKQorICAgICAgICByZXR1cm4gbV9sYXllclRyZWVWaWV3LmNvbW1pdFJl
cXVlc3RlZCgpOworI2VuZGlmCisgICAgcmV0dXJuIGZhbHNlOworfQorCiB2b2lkIFdlYlZpZXdJ
bXBsOjpsb3NlQ29tcG9zaXRvckNvbnRleHQoaW50IG51bVRpbWVzKQogewogI2lmIFVTRShBQ0NF
TEVSQVRFRF9DT01QT1NJVElORykKQEAgLTMzNDksNiArMzM1OCwxMiBAQCB2b2lkIFdlYlZpZXdJ
bXBsOjphcHBseVNjcm9sbEFuZFNjYWxlKGNvbnN0IFdlYlNpemUmIHNjcm9sbERlbHRhLCBmbG9h
dCBwYWdlU2NhbAogICAgIH0KIH0KIAordm9pZCBXZWJWaWV3SW1wbDo6ZGlkQ29tbWl0KCkKK3sK
KyAgICBpZiAobV9jbGllbnQpCisgICAgICAgIG1fY2xpZW50LT5kaWRCZWNvbWVSZWFkeUZvckFk
ZGl0aW9uYWxJbnB1dCgpOworfQorCiB2b2lkIFdlYlZpZXdJbXBsOjpkaWRDb21taXRBbmREcmF3
RnJhbWUoKQogewogICAgIGlmIChtX2NsaWVudCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9X
ZWJWaWV3SW1wbC5oCmluZGV4IDhhZDE4NWE4YjkyZmYzMDc2MjQ2ZTZjYjA5NTZjMmIyNzJmZTVm
MDguLjM4YmU2YWRjMzM1ZGQyNTc3M2Y2ODNmZTQ5YWJlNWZmNGUwZWM2NjYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmgKKysrIGIvU291cmNlL1dl
YktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuaApAQCAtMTIyLDYgKzEyMiw3IEBAIHB1Ymxp
YzoKICAgICB2aXJ0dWFsIHZvaWQgdGhlbWVDaGFuZ2VkKCk7CiAgICAgdmlydHVhbCB2b2lkIGNv
bXBvc2l0ZShib29sIGZpbmlzaCk7CiAgICAgdmlydHVhbCB2b2lkIHNldE5lZWRzUmVkcmF3KCk7
CisgICAgdmlydHVhbCBib29sIGlzSW5wdXRUaHJvdHRsZWQoKSBjb25zdDsKICAgICB2aXJ0dWFs
IGJvb2wgaGFuZGxlSW5wdXRFdmVudChjb25zdCBXZWJJbnB1dEV2ZW50Jik7CiAgICAgdmlydHVh
bCB2b2lkIG1vdXNlQ2FwdHVyZUxvc3QoKTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0Rm9jdXMoYm9v
bCBlbmFibGUpOwpAQCAtMjU5LDYgKzI2MCw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQg
YXBwbHlTY3JvbGxBbmRTY2FsZShjb25zdCBXZWJTaXplJiwgZmxvYXQpOwogICAgIHZpcnR1YWwg
V2ViR3JhcGhpY3NDb250ZXh0M0QqIGNyZWF0ZUNvbnRleHQzRCgpOwogICAgIHZpcnR1YWwgdm9p
ZCBkaWRSZWJpbmRHcmFwaGljc0NvbnRleHQoYm9vbCk7CisgICAgdmlydHVhbCB2b2lkIGRpZENv
bW1pdCgpOwogICAgIHZpcnR1YWwgdm9pZCBkaWRDb21taXRBbmREcmF3RnJhbWUoKTsKICAgICB2
aXJ0dWFsIHZvaWQgZGlkQ29tcGxldGVTd2FwQnVmZmVycygpOwogICAgIHZpcnR1YWwgdm9pZCBz
Y2hlZHVsZUNvbXBvc2l0ZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS90
ZXN0cy9DQ0xheWVyVHJlZUhvc3RUZXN0LmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVz
dHMvQ0NMYXllclRyZWVIb3N0VGVzdC5jcHAKaW5kZXggMGFkNjhkM2RlODRjZTFmMDViNjE3YWY5
ODBiMjczOTFjNGU5YTg4Mi4uNTE4MTFkZTE4MDUyNTEyYjdlMzA4MWIyOWY4YTFmODkwNDcyODI3
MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9DQ0xheWVyVHJlZUhv
c3RUZXN0LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL0NDTGF5ZXJUcmVl
SG9zdFRlc3QuY3BwCkBAIC0yNDksNiArMjQ5LDEwIEBAIHB1YmxpYzoKICAgICAgICAgcmV0dXJu
IEdyYXBoaWNzQ29udGV4dDNEUHJpdmF0ZTo6Y3JlYXRlR3JhcGhpY3NDb250ZXh0RnJvbVdlYkNv
bnRleHQod2ViQ29udGV4dC5yZWxlYXNlKCksIEdyYXBoaWNzQ29udGV4dDNEOjpSZW5kZXJEaXJl
Y3RseVRvSG9zdFdpbmRvdyk7CiAgICAgfQogCisgICAgdmlydHVhbCB2b2lkIGRpZENvbW1pdCgp
CisgICAgeworICAgIH0KKwogICAgIHZpcnR1YWwgdm9pZCBkaWRDb21taXRBbmREcmF3RnJhbWUo
KQogICAgIHsKICAgICAgICAgbV90ZXN0SG9va3MtPmRpZENvbW1pdEFuZERyYXdGcmFtZSgpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9GYWtlQ0NMYXllclRyZWVI
b3N0Q2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL0Zha2VDQ0xheWVyVHJl
ZUhvc3RDbGllbnQuaAppbmRleCBkMWZlNWU2NTA2NjhjNjY1NTJmNjMyNDY2ZDVmZTY5OGVhYzMy
Y2I5Li42NTAyZjgyYTNhZDBiOTFiOWQwNjdjYjNlZDU4ZmMwYTg0ZTBjMzFlIDEwMDc1NQotLS0g
YS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL0Zha2VDQ0xheWVyVHJlZUhvc3RDbGllbnQu
aAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL0Zha2VDQ0xheWVyVHJlZUhvc3RD
bGllbnQuaApAQCAtNDQsNiArNDQsNyBAQCBwdWJsaWM6CiAgICAgICAgIHJldHVybiBjcmVhdGVD
b21wb3NpdG9yTW9ja0dyYXBoaWNzQ29udGV4dDNEKGF0dHJzKTsKICAgICB9CiAgICAgdmlydHVh
bCB2b2lkIGRpZFJlY3JlYXRlQ29udGV4dChib29sIHN1Y2Nlc3MpIHsgfQorICAgIHZpcnR1YWwg
dm9pZCBkaWRDb21taXQoKSB7IH0KICAgICB2aXJ0dWFsIHZvaWQgZGlkQ29tbWl0QW5kRHJhd0Zy
YW1lKCkgeyB9CiAgICAgdmlydHVhbCB2b2lkIGRpZENvbXBsZXRlU3dhcEJ1ZmZlcnMoKSB7IH0K
IAo=
</data>
<flag name="review"
          id="138067"
          type_id="1"
          status="+"
          setter="jamesr"
    />
          </attachment>
      

    </bug>

</bugzilla>