<?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>97773</bug_id>
          
          <creation_ts>2012-09-27 05:23:11 -0700</creation_ts>
          <short_desc>[Qt] Wait for the UI process before re-enabling rendering during page load</short_desc>
          <delta_ts>2012-10-01 10:00: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>
          <dependson>98045</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jocelyn Turcotte">jturcotte</reporter>
          <assigned_to name="Jocelyn Turcotte">jturcotte</assigned_to>
          <cc>abecsi</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>hausmann</cc>
    
    <cc>jturcotte</cc>
    
    <cc>kenneth</cc>
    
    <cc>menard</cc>
    
    <cc>ossy</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>zoltan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>729436</commentid>
    <comment_count>0</comment_count>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2012-09-27 05:23:11 -0700</bug_when>
    <thetext>[Qt] Wait for the UI process before re-enabling rendering during page load</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>729440</commentid>
    <comment_count>1</comment_count>
      <attachid>165979</attachid>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2012-09-27 05:31:25 -0700</bug_when>
    <thetext>Created attachment 165979
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>729525</commentid>
    <comment_count>2</comment_count>
      <attachid>165979</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2012-09-27 07:53:48 -0700</bug_when>
    <thetext>Comment on attachment 165979
Patch

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

&gt; Source/WebKit2/UIProcess/qt/WebPageProxyQt.cpp:127
&gt; +void WebPageProxy::initialViewportReady()

viewportReadyForNewPage ? I think that is more clear.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>729563</commentid>
    <comment_count>3</comment_count>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2012-09-27 08:48:39 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 165979 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=165979&amp;action=review
&gt; 
&gt; &gt; Source/WebKit2/UIProcess/qt/WebPageProxyQt.cpp:127
&gt; &gt; +void WebPageProxy::initialViewportReady()
&gt; 
&gt; viewportReadyForNewPage ? I think that is more clear.

I tried to find a good name for that one for a while but it&apos;s not easy.
What this signal means is essentially that the web process sent all page load related viewport messages and wants the ui process to confirm that it handled them and sent back the resulting visible rect. The name should also reflect that the web process will be locked until the commitInitialViewport message is sent back.

I&apos;m not sure about NewPage, it sounds like it applies when a new WebPage is created.
Any other idea?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>729565</commentid>
    <comment_count>4</comment_count>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2012-09-27 08:53:46 -0700</bug_when>
    <thetext>transitionToCommittedForNewPage is used elsewhere</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>729629</commentid>
    <comment_count>5</comment_count>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2012-09-27 09:44:29 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; transitionToCommittedForNewPage is used elsewhere


&quot;ForNewPage&quot; is used as a contrast for &quot;FromCachedFrame&quot; and makes sense in the context of the frame loader, also because it starts with &quot;transition&quot;. But I think that it&apos;s ambiguous in WebPage.

What about this:
viewportReadyForLoadedPage
commitViewportForLoadedPage</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>729658</commentid>
    <comment_count>6</comment_count>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2012-09-27 10:11:54 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; (In reply to comment #4)
&gt; &gt; transitionToCommittedForNewPage is used elsewhere
&gt; 
&gt; 
&gt; &quot;ForNewPage&quot; is used as a contrast for &quot;FromCachedFrame&quot; and makes sense in the context of the frame loader, also because it starts with &quot;transition&quot;. But I think that it&apos;s ambiguous in WebPage.
&gt; 
&gt; What about this:
&gt; viewportReadyForLoadedPage
&gt; commitViewportForLoadedPage

does it have to be fully loaded? 

Maybe just newViewportReady? I guess it will be called if someone changes the viewport meta tag programmatically?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>729662</commentid>
    <comment_count>7</comment_count>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2012-09-27 10:18:05 -0700</bug_when>
    <thetext>&gt; does it have to be fully loaded? 
&gt; 
&gt; Maybe just newViewportReady? I guess it will be called if someone changes the viewport meta tag programmatically?

initialViewportReady is sent by didCompletePageTransition which is called either by dispatchDidLayout or frameLoadCompleted, whichever comes first.

So it is sent instead of unfreezing the rendering directly after the first layout.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>729670</commentid>
    <comment_count>8</comment_count>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2012-09-27 10:23:27 -0700</bug_when>
    <thetext>viewportReadyForPageTransition ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>730478</commentid>
    <comment_count>9</comment_count>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2012-09-28 04:20:54 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; viewportReadyForPageTransition ?
commitViewportForPageTransition sounds like it&apos;s happening before the transition while it should be at the end.

I&apos;d put it that way, what do you think:
pageTransitionViewportReady
commitPageTransitionViewport

/me crosses fingers</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>730485</commentid>
    <comment_count>10</comment_count>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2012-09-28 04:29:23 -0700</bug_when>
    <thetext>I thikn that is ok</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>730503</commentid>
    <comment_count>11</comment_count>
      <attachid>166210</attachid>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2012-09-28 04:52:58 -0700</bug_when>
    <thetext>Created attachment 166210
Patch

s/initial/pageTransition/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>731579</commentid>
    <comment_count>12</comment_count>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2012-10-01 04:37:21 -0700</bug_when>
    <thetext>Committed r130029: &lt;http://trac.webkit.org/changeset/130029&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>731763</commentid>
    <comment_count>13</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-10-01 10:00:58 -0700</bug_when>
    <thetext>(In reply to comment #12)
&gt; Committed r130029: &lt;http://trac.webkit.org/changeset/130029&gt;

It caused a regression - https://bugs.webkit.org/show_bug.cgi?id=98045
Could you check it, please?</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>165979</attachid>
            <date>2012-09-27 05:31:25 -0700</date>
            <delta_ts>2012-09-28 04:52:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-97773-20120927143041.patch</filename>
            <type>text/plain</type>
            <size>18106</size>
            <attacher name="Jocelyn Turcotte">jturcotte</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI5NjIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNTQ5MmRjZTlhMTAyYjc0
OGYzNzdhZDQ0Njk3MDM1OGQ3OWFkZWYxZS4uY2M3YzQzNTI4N2FiMDY1NmFjMDM5YjM0NjZkNDMz
NTFhOTI0OTc0NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY0IEBACisyMDEyLTA5LTI3ICBKb2Nl
bHluIFR1cmNvdHRlICA8am9jZWx5bi50dXJjb3R0ZUBkaWdpYS5jb20+CisKKyAgICAgICAgW1F0
XSBXYWl0IGZvciB0aGUgVUkgcHJvY2VzcyBiZWZvcmUgcmUtZW5hYmxpbmcgcmVuZGVyaW5nIGR1
cmluZyBwYWdlIGxvYWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTk3NzczCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgRHVyaW5nIHBhZ2UgbmF2aWdhdGlvbiwgV2ViQ29yZSBtaWdodCBhc2sgYXN5bmNocm9u
b3VzbHkgdGhlIFVJIHByb2Nlc3MgdG8KKyAgICAgICAgc2Nyb2xsIHRvIGFuIGFuY2hvciBvciBy
ZXN0b3JlZCBoaXN0b3J5IHBvc2l0aW9uIGFuZCB0aGUgVUkgcHJvY2VzcyB3aWxsCisgICAgICAg
IHJldHVybiB0aGUgY29ycmVzcG9uZGluZyB2aXNpYmxlIHJlY3QgdG8gYmUgcmVuZGVyZWQgYnkg
dGhlIHdlYiBwcm9jZXNzLgorCisgICAgICAgIFRvIGF2b2lkIHJlbmRlcmluZyB0aWxlcyBmb3Ig
dGhlIGludmFsaWRhdGVkIGFyZWEgYnkgdGhlIG5ldyBwYWdlIGxheW91dCBhdAorICAgICAgICB0
aGUgd3JvbmcgcG9zaXRpb24sIHdlIHNob3VsZCBkbyBhbiBleHRyYSBtZXNzYWdlIHJvdW5kLXRy
aXAgdG8gdGhlIFVJCisgICAgICAgIHByb2Nlc3MgYmVmb3JlIHJlc3VtaW5nIHRoZSByZW5kZXJp
bmcuCisgICAgICAgIEFzc3VtaW5nIHRoYXQgYWxsIG1lc3NhZ2VzIGFyZSBoYW5kbGVkIGluIG9y
ZGVyIGJ5IGJvdGggdGhlIHdlYiBhbmQgVUkgcHJvY2VzcywKKyAgICAgICAgc2VuZGluZyB0aGUg
cm91bmQtdHJpcCByZXF1ZXN0IGluIHRoZSB3ZWIgcHJvY2VzcyBvbmNlIHdlIHNlbnQgYWxsIHNj
cm9sbAorICAgICAgICByZXF1ZXN0cywgY29udGVudHMgc2l6ZSBhbmQgdmlld3BvcnQgYXR0cmli
dXRlcyB1cGRhdGVzIGFuZCB0aGVuIGhhbmRsaW5nCisgICAgICAgIHRoZSByb3VuZC10cmlwIHJl
c3BvbnNlLCB3ZSBtYWtlIHN1cmUgdGhhdCBmaW5hbCB2aXNpYmxlIHJlY3QgcmVxdWVzdCBoYXZl
CisgICAgICAgIGJlZW4gaGFuZGxlZCBhbHJlYWR5LgorCisgICAgICAgICogVUlQcm9jZXNzL0FQ
SS9xdC9yYXcvcXJhd3dlYnZpZXcuY3BwOgorICAgICAgICAoUVJhd1dlYlZpZXdQcml2YXRlOjpp
bml0aWFsVmlld3BvcnRSZWFkeSk6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC9yYXcvcXJh
d3dlYnZpZXdfcF9wLmg6CisgICAgICAgIChRUmF3V2ViVmlld1ByaXZhdGUpOgorICAgICAgICAq
IFVJUHJvY2Vzcy9QYWdlQ2xpZW50Lmg6CisgICAgICAgIChQYWdlQ2xpZW50KToKKyAgICAgICAg
KiBVSVByb2Nlc3MvUGFnZVZpZXdwb3J0Q29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJLaXQ6
OlBhZ2VWaWV3cG9ydENvbnRyb2xsZXI6OmluaXRpYWxWaWV3cG9ydFJlYWR5KToKKyAgICAgICAg
KFdlYktpdCk6CisgICAgICAgICogVUlQcm9jZXNzL1BhZ2VWaWV3cG9ydENvbnRyb2xsZXIuaDoK
KyAgICAgICAgKFBhZ2VWaWV3cG9ydENvbnRyb2xsZXIpOgorICAgICAgICAqIFVJUHJvY2Vzcy9X
ZWJQYWdlUHJveHkuaDoKKyAgICAgICAgKFdlYlBhZ2VQcm94eSk6CisgICAgICAgICogVUlQcm9j
ZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbjoKKyAgICAgICAgKiBVSVByb2Nlc3MvcXQvUXRQ
YWdlQ2xpZW50LmNwcDoKKyAgICAgICAgKFdlYktpdDo6UXRQYWdlQ2xpZW50Ojppbml0aWFsVmll
d3BvcnRSZWFkeSk6CisgICAgICAgIChXZWJLaXQpOgorICAgICAgICAqIFVJUHJvY2Vzcy9xdC9R
dFBhZ2VDbGllbnQuaDoKKyAgICAgICAgKFF0UGFnZUNsaWVudCk6CisgICAgICAgICogVUlQcm9j
ZXNzL3F0L1dlYlBhZ2VQcm94eVF0LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5
Ojpjb21taXRJbml0aWFsVmlld3BvcnQpOgorICAgICAgICAoV2ViS2l0KToKKyAgICAgICAgKFdl
YktpdDo6V2ViUGFnZVByb3h5Ojppbml0aWFsVmlld3BvcnRSZWFkeSk6CisgICAgICAgICogV2Vi
UHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50OjpXZWJGcmFtZUxvYWRlckNsaWVudCk6Cisg
ICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERpZExheW91dCk6
CisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50OjpmcmFtZUxvYWRDb21wbGV0
ZWQpOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUxvYWRlckNsaWVudDo6cHJvdmlzaW9uYWxM
b2FkU3RhcnRlZCk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFt
ZUxvYWRlckNsaWVudC5oOgorICAgICAgICAoV2ViRnJhbWVMb2FkZXJDbGllbnQpOgorICAgICAg
ICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2Vi
UGFnZTo6ZGlkU3RhcnRQYWdlVHJhbnNpdGlvbik6CisgICAgICAgIChXZWJLaXQpOgorICAgICAg
ICAoV2ViS2l0OjpXZWJQYWdlOjpkaWRDb21wbGV0ZVBhZ2VUcmFuc2l0aW9uKToKKyAgICAgICAg
KiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oOgorICAgICAgICAoV2ViUGFnZSk6CisgICAg
ICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UubWVzc2FnZXMuaW46CisgICAgICAgICog
V2ViUHJvY2Vzcy9XZWJQYWdlL3F0L1dlYlBhZ2VRdC5jcHA6CisgICAgICAgIChXZWJLaXQ6Oldl
YlBhZ2U6OmNvbW1pdEluaXRpYWxWaWV3cG9ydCk6CisgICAgICAgIChXZWJLaXQpOgorCiAyMDEy
LTA5LTI1ICBSYXBoYWVsIEt1Ym8gZGEgQ29zdGEgIDxyYXBoYWVsLmt1Ym8uZGEuY29zdGFAaW50
ZWwuY29tPgogCiAgICAgICAgIFtEUlRdW1dUUl0gU3VwcG9ydCBvdmVycmlkaW5nIHRoZSAnV2Vi
S2l0RGlzcGxheUltYWdlc0tleScgcHJlZmVyZW5jZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9xdC9yYXcvcXJhd3dlYnZpZXcuY3BwIGIvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9xdC9yYXcvcXJhd3dlYnZpZXcuY3BwCmluZGV4IDBhN2E2ODRjZmM2YmZi
NWVlMDMzMjdhNmRjNTE0ZDYzYWIwNDZmODUuLjcyZTgwNWMyMjdiM2YxMmYwNzIzZWU4ZDAxOTdh
ZjhhMzFlNGI1ZDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQv
cmF3L3FyYXd3ZWJ2aWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0
L3Jhdy9xcmF3d2Vidmlldy5jcHAKQEAgLTE2Nyw2ICsxNjcsMTEgQEAgdm9pZCBRUmF3V2ViVmll
d1ByaXZhdGU6OnRvb2xUaXBDaGFuZ2VkKGNvbnN0IFN0cmluZyYsIGNvbnN0IFN0cmluZyYgbmV3
VG9vbHRpcCkKICAgICBub3RJbXBsZW1lbnRlZCgpOwogfQogCit2b2lkIFFSYXdXZWJWaWV3UHJp
dmF0ZTo6aW5pdGlhbFZpZXdwb3J0UmVhZHkoKQoreworICAgIG1fd2ViUGFnZVByb3h5LT5jb21t
aXRJbml0aWFsVmlld3BvcnQoKTsKK30KKwogdm9pZCBRUmF3V2ViVmlld1ByaXZhdGU6OnN0YXJ0
RHJhZyhjb25zdCBXZWJDb3JlOjpEcmFnRGF0YSYgZHJhZ0RhdGEsIFBhc3NSZWZQdHI8V2ViS2l0
OjpTaGFyZWFibGVCaXRtYXA+IGRyYWdJbWFnZSkKIHsKICAgICBub3RJbXBsZW1lbnRlZCgpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9yYXcvcXJhd3dlYnZp
ZXdfcF9wLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Jhdy9xcmF3d2Vidmll
d19wX3AuaAppbmRleCA1NWJjODViYTAyODA3N2YxNDcxMWY2YWM4NjgwNTNhOGViNDUyYmJjLi42
Y2M2YzA4ZTg3NmJiMjEzNTkwYzU4ZmNlZTc5ZDZlZmUxZmUxODU4IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Jhdy9xcmF3d2Vidmlld19wX3AuaAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Jhdy9xcmF3d2Vidmlld19wX3AuaApAQCAt
ODIsNiArODIsNyBAQCBwdWJsaWM6CiAKICAgICB2aXJ0dWFsIHZvaWQgc2V0Q3Vyc29ySGlkZGVu
VW50aWxNb3VzZU1vdmVzKGJvb2wgaGlkZGVuVW50aWxNb3VzZU1vdmVzKTsKICAgICB2aXJ0dWFs
IHZvaWQgdG9vbFRpcENoYW5nZWQoY29uc3QgU3RyaW5nJiwgY29uc3QgU3RyaW5nJiBuZXdUb29s
dGlwKTsKKyAgICB2aXJ0dWFsIHZvaWQgaW5pdGlhbFZpZXdwb3J0UmVhZHkoKTsKIAogICAgIHZp
cnR1YWwgdm9pZCBzdGFydERyYWcoY29uc3QgV2ViQ29yZTo6RHJhZ0RhdGEmIGRyYWdEYXRhLCBQ
YXNzUmVmUHRyPFdlYktpdDo6U2hhcmVhYmxlQml0bWFwPiBkcmFnSW1hZ2UpOwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGFnZUNsaWVudC5oIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL1BhZ2VDbGllbnQuaAppbmRleCBlYmY1Y2QxNmYxYzFmODY3NjUzZDI4NzM1
MTU2MzIxN2RmMWI3YTY3Li4wNmFmZGI3MDYwNzkwZDM4M2E0MTVmMDI4ZDkyNzBmYmVhMmFjNzhm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGFnZUNsaWVudC5oCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9QYWdlQ2xpZW50LmgKQEAgLTExOCw2ICsxMTgsNyBA
QCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHBhZ2VEaWRSZXF1ZXN0U2Nyb2xsKGNvbnN0IFdl
YkNvcmU6OkludFBvaW50JikgPSAwOwogI2VuZGlmCiAjaWYgUExBVEZPUk0oUVQpCisgICAgdmly
dHVhbCB2b2lkIGluaXRpYWxWaWV3cG9ydFJlYWR5KCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBk
aWRGaW5kWm9vbWFibGVBcmVhKGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiwgY29uc3QgV2ViQ29y
ZTo6SW50UmVjdCYpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgZGlkUmVjZWl2ZU1lc3NhZ2VGcm9t
TmF2aWdhdG9yUXRPYmplY3QoY29uc3QgU3RyaW5nJikgPSAwOwogICAgIHZpcnR1YWwgdm9pZCB1
cGRhdGVUZXh0SW5wdXRTdGF0ZSgpID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9QYWdlVmlld3BvcnRDb250cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9QYWdlVmlld3BvcnRDb250cm9sbGVyLmNwcAppbmRleCBlNDIwMDZhMTRjMGYxNzA2MzQx
NDU4MWQ4ZjE4ZGM2MjI4OGRiNmFmLi5kOGNhZWExMzRiYzUwZjZmNTNkZTg5YmYzZDhlZDgzZTU4
MzJkZjdhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGFnZVZpZXdwb3J0
Q29udHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1BhZ2VWaWV3cG9y
dENvbnRyb2xsZXIuY3BwCkBAIC0xMjAsNiArMTIwLDE1IEBAIHZvaWQgUGFnZVZpZXdwb3J0Q29u
dHJvbGxlcjo6ZGlkQ2hhbmdlQ29udGVudHNTaXplKGNvbnN0IEludFNpemUmIG5ld1NpemUpCiAg
ICAgbV9jbGllbnQtPmRpZENoYW5nZUNvbnRlbnRzU2l6ZSgpOwogfQogCit2b2lkIFBhZ2VWaWV3
cG9ydENvbnRyb2xsZXI6OmluaXRpYWxWaWV3cG9ydFJlYWR5KCkKK3sKKyAgICAvLyBBdCB0aGlz
IHBvaW50IHdlIHNob3VsZCBhbHJlYWR5IGhhdmUgcmVjZWl2ZWQgdGhlIGZpcnN0IHZpZXdwb3J0
IGFyZ3VtZW50cyBhbmQgdGhlIHJlcXVlc3RlZCBzY3JvbGwKKyAgICAvLyBwb3NpdGlvbiBmb3Ig
dGhlIG5ld2x5IGxvYWRlZCBwYWdlIGFuZCBzZW50IG91ciByZWFjdGlvbnMgdG8gdGhlIHdlYiBw
cm9jZXNzLiBJdCdzIG5vdyBzYWZlIHRvIHRlbGwKKyAgICAvLyB0aGUgd2ViIHByb2Nlc3MgdG8g
c3RhcnQgcmVuZGVyaW5nIHRoZSBuZXcgcGFnZSBjb250ZW50cyBhbmQgcG9zc2libHkgcmUtdXNl
IHRoZSBjdXJyZW50IHRpbGVzLgorICAgIC8vIFRoaXMgYXNzdW1lcyB0aGF0IGFsbCBtZXNzYWdl
cyBoYXZlIGJlZW4gaGFuZGxlZCBpbiBvcmRlciBhbmQgdGhhdCBub3RoaW5nIGhhcyBiZWVuIHB1
c2hlZCBiYWNrIG9uIHRoZSBldmVudCBsb29wLgorICAgIG1fd2ViUGFnZVByb3h5LT5jb21taXRJ
bml0aWFsVmlld3BvcnQoKTsKK30KKwogdm9pZCBQYWdlVmlld3BvcnRDb250cm9sbGVyOjpwYWdl
RGlkUmVxdWVzdFNjcm9sbChjb25zdCBJbnRQb2ludCYgY3NzUG9zaXRpb24pCiB7CiAgICAgLy8g
SWdub3JlIHRoZSByZXF1ZXN0IGlmIHN1c3BlbmRlZC4gQ2FuIG9ubHkgaGFwcGVuIGR1ZSB0byBk
ZWxheSBpbiBldmVudCBkZWxpdmVyeS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9QYWdlVmlld3BvcnRDb250cm9sbGVyLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
UGFnZVZpZXdwb3J0Q29udHJvbGxlci5oCmluZGV4IGFjYmIyMmE1OGRkYjI1MDUzMjdmY2E0Yjll
NTU4Njg2Yjg1MjYwNTEuLmJjMzgyN2VmNTM5N2YwNDllMmFmNzgyZDg5ZTk0YjJhNTAwZTk1YTYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9QYWdlVmlld3BvcnRDb250cm9s
bGVyLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1BhZ2VWaWV3cG9ydENvbnRyb2xs
ZXIuaApAQCAtOTcsNiArOTcsNyBAQCBwdWJsaWM6CiAgICAgLy8gTm90aWZpY2F0aW9ucyBmcm9t
IHRoZSBXZWJQcm9jZXNzLgogICAgIHZvaWQgZGlkQ2hhbmdlQ29udGVudHNTaXplKGNvbnN0IFdl
YkNvcmU6OkludFNpemUmIG5ld1NpemUpOwogICAgIHZvaWQgZGlkQ2hhbmdlVmlld3BvcnRBdHRy
aWJ1dGVzKGNvbnN0IFdlYkNvcmU6OlZpZXdwb3J0QXR0cmlidXRlcyYpOworICAgIHZvaWQgaW5p
dGlhbFZpZXdwb3J0UmVhZHkoKTsKICAgICB2b2lkIHBhZ2VEaWRSZXF1ZXN0U2Nyb2xsKGNvbnN0
IFdlYkNvcmU6OkludFBvaW50JiBjc3NQb3NpdGlvbik7CiAKIHByaXZhdGU6CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmggYi9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKaW5kZXggNGNiYWZhM2E5YjkwNGU2OWU4ZGE4MzM3
YTkwZWJlYTFhZWVkODljZC4uNzFlNzZlMDYxMGUzZTRjMmRkY2UyNjYzZjM5ZGIxYjQ2MWRmZTdk
YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCisr
KyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaApAQCAtNDE4LDYgKzQx
OCw3IEBAIHB1YmxpYzoKICNlbmRpZgogI2lmIFVTRShUSUxFRF9CQUNLSU5HX1NUT1JFKQogICAg
IHZvaWQgc2V0Vmlld3BvcnRTaXplKGNvbnN0IFdlYkNvcmU6OkludFNpemUmKTsKKyAgICB2b2lk
IGNvbW1pdEluaXRpYWxWaWV3cG9ydCgpOwogI2VuZGlmCiAKICAgICB2b2lkIGhhbmRsZU1vdXNl
RXZlbnQoY29uc3QgTmF0aXZlV2ViTW91c2VFdmVudCYpOwpAQCAtODUwLDYgKzg1MSw3IEBAIHBy
aXZhdGU6CiAjZW5kaWYKIAogI2lmIFBMQVRGT1JNKFFUKQorICAgIHZvaWQgaW5pdGlhbFZpZXdw
b3J0UmVhZHkoKTsKICAgICB2b2lkIGRpZEZpbmRab29tYWJsZUFyZWEoY29uc3QgV2ViQ29yZTo6
SW50UG9pbnQmLCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0Jik7CiAjZW5kaWYKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbiBiL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4KaW5kZXggM2E3
NTVlMWRkZGRmZGZlOGI4ZmVlNDA1NzU4ZjliMjg3OWIyODA4OC4uNTJiMWRmMGZhNTRiNmUzMjll
ODZjNzExNmIwMTkzZGMyNTA3MTZiOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluCkBAIC03Myw2ICs3Myw3IEBAIG1lc3NhZ2VzIC0+
IFdlYlBhZ2VQcm94eSB7CiAgICAgUGFnZURpZFJlcXVlc3RTY3JvbGwoV2ViQ29yZTo6SW50UG9p
bnQgcG9pbnQpCiAjZW5kaWYKICNpZiBQTEFURk9STShRVCkKKyAgICBJbml0aWFsVmlld3BvcnRS
ZWFkeSgpCiAgICAgRGlkRmluZFpvb21hYmxlQXJlYShXZWJDb3JlOjpJbnRQb2ludCB0YXJnZXQs
IFdlYkNvcmU6OkludFJlY3QgYXJlYSkKICAgICBBdXRoZW50aWNhdGlvblJlcXVpcmVkUmVxdWVz
dChXVEY6OlN0cmluZyBob3N0bmFtZSwgV1RGOjpTdHJpbmcgcmVhbG0sIFdURjo6U3RyaW5nIHBy
ZWZpbGxlZFVzZXJuYW1lKSAtPiAoV1RGOjpTdHJpbmcgdXNlcm5hbWUsIFdURjo6U3RyaW5nIHBh
c3N3b3JkKQogICAgIENlcnRpZmljYXRlVmVyaWZpY2F0aW9uUmVxdWVzdChXVEY6OlN0cmluZyBo
b3N0bmFtZSkgLT4gKGJvb2wgaWdub3JlRXJyb3JzKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL3F0L1F0UGFnZUNsaWVudC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvcXQvUXRQYWdlQ2xpZW50LmNwcAppbmRleCBkNWE1ZjdlY2UzNzA0MzkxMGY3ZDc3OTAxNGUz
ZjMxY2MxMzk1MGFlLi5kM2UyNzAyZTU2NmUwOGU3N2VmNDI4YTBmZjY4YzJhMWVhOTdkMWIxIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXRQYWdlQ2xpZW50LmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXRQYWdlQ2xpZW50LmNwcApAQCAtMjIw
LDYgKzIyMCwxMSBAQCB2b2lkIFF0UGFnZUNsaWVudDo6Zmxhc2hCYWNraW5nU3RvcmVVcGRhdGVz
KGNvbnN0IFZlY3RvcjxJbnRSZWN0PiYpCiAgICAgbm90SW1wbGVtZW50ZWQoKTsKIH0KIAordm9p
ZCBRdFBhZ2VDbGllbnQ6OmluaXRpYWxWaWV3cG9ydFJlYWR5KCkKK3sKKyAgICBRUXVpY2tXZWJW
aWV3UHJpdmF0ZTo6Z2V0KG1fd2ViVmlldyktPnZpZXdwb3J0Q29udHJvbGxlcigpLT5pbml0aWFs
Vmlld3BvcnRSZWFkeSgpOworfQorCiB2b2lkIFF0UGFnZUNsaWVudDo6ZGlkRmluZFpvb21hYmxl
QXJlYShjb25zdCBJbnRQb2ludCYgdGFyZ2V0LCBjb25zdCBJbnRSZWN0JiBhcmVhKQogewogICAg
IEFTU0VSVChtX2V2ZW50SGFuZGxlcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvcXQvUXRQYWdlQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXRQ
YWdlQ2xpZW50LmgKaW5kZXggMmUzNjc1NzBhMzE3YjVmOGRlMDJmZTY5NDg5ODY5ODQ2NGI0MGE4
NS4uZGI4ZTZjYzBhZTE3ZGUxMzJiZDIxYzA4YWMwODkxNTIxNTNkNTMwMCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0UGFnZUNsaWVudC5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdFBhZ2VDbGllbnQuaApAQCAtOTksNiArOTksNyBAQCBwdWJs
aWM6CiAgICAgdmlydHVhbCB2b2lkIGZsYXNoQmFja2luZ1N0b3JlVXBkYXRlcyhjb25zdCBWZWN0
b3I8V2ViQ29yZTo6SW50UmVjdD4mIHVwZGF0ZVJlY3RzKTsKICAgICB2aXJ0dWFsIHZvaWQgZmlu
ZFN0cmluZ0luQ3VzdG9tUmVwcmVzZW50YXRpb24oY29uc3QgU3RyaW5nJiwgV2ViS2l0OjpGaW5k
T3B0aW9ucywgdW5zaWduZWQgbWF4TWF0Y2hDb3VudCkgeyB9CiAgICAgdmlydHVhbCB2b2lkIGNv
dW50U3RyaW5nTWF0Y2hlc0luQ3VzdG9tUmVwcmVzZW50YXRpb24oY29uc3QgU3RyaW5nJiwgV2Vi
S2l0OjpGaW5kT3B0aW9ucywgdW5zaWduZWQgbWF4TWF0Y2hDb3VudCkgeyB9CisgICAgdmlydHVh
bCB2b2lkIGluaXRpYWxWaWV3cG9ydFJlYWR5KCk7CiAgICAgdmlydHVhbCB2b2lkIGRpZEZpbmRa
b29tYWJsZUFyZWEoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmLCBjb25zdCBXZWJDb3JlOjpJbnRS
ZWN0Jik7CiAgICAgdmlydHVhbCB2b2lkIHVwZGF0ZVRleHRJbnB1dFN0YXRlKCk7CiAgICAgdmly
dHVhbCB2b2lkIGRvbmVXaXRoR2VzdHVyZUV2ZW50KGNvbnN0IFdlYkdlc3R1cmVFdmVudCYsIGJv
b2wgd2FzRXZlbnRIYW5kbGVkKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9xdC9XZWJQYWdlUHJveHlRdC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvV2Vi
UGFnZVByb3h5UXQuY3BwCmluZGV4IGVmNmQ1NDc3ZDMzOTI2N2Q1Mzg2Nzg5NDFkMzgyNzM0MDJm
MDY2YzkuLmRlZDg4ZjhiODk2MWMwMWFkYjgwOGNhZWNjZjEwZTZkMjg3ZTE0MTkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9XZWJQYWdlUHJveHlRdC5jcHAKKysrIGIv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1dlYlBhZ2VQcm94eVF0LmNwcApAQCAtNjAsNiAr
NjAsMTQgQEAgdm9pZCBXZWJQYWdlUHJveHk6OmxvYWRSZWNlbnRTZWFyY2hlcyhjb25zdCBTdHJp
bmcmLCBWZWN0b3I8U3RyaW5nPiYpCiAgICAgbm90SW1wbGVtZW50ZWQoKTsKIH0KIAordm9pZCBX
ZWJQYWdlUHJveHk6OmNvbW1pdEluaXRpYWxWaWV3cG9ydCgpCit7CisgICAgaWYgKCFpc1ZhbGlk
KCkpCisgICAgICAgIHJldHVybjsKKworICAgIHByb2Nlc3MoKS0+c2VuZChNZXNzYWdlczo6V2Vi
UGFnZTo6Q29tbWl0SW5pdGlhbFZpZXdwb3J0KCksIG1fcGFnZUlEKTsKK30KKwogdm9pZCBXZWJQ
YWdlUHJveHk6OnNldENvbXBvc2l0aW9uKGNvbnN0IFN0cmluZyYgdGV4dCwgVmVjdG9yPENvbXBv
c2l0aW9uVW5kZXJsaW5lPiB1bmRlcmxpbmVzLCB1aW50NjRfdCBzZWxlY3Rpb25TdGFydCwgdWlu
dDY0X3Qgc2VsZWN0aW9uRW5kLCB1aW50NjRfdCByZXBsYWNlbWVudFJhbmdlU3RhcnQsIHVpbnQ2
NF90IHJlcGxhY2VtZW50UmFuZ2VFbmQpCiB7CiAgICAgLy8gRklYTUU6IFdlIG5lZWQgdG8gZmlu
ZCBvdXQgaG93IHRvIHByb3BlciBoYW5kbGUgdGhlIGNyYXNoZXMgY2FzZS4KQEAgLTExNiw2ICsx
MjQsMTEgQEAgdm9pZCBXZWJQYWdlUHJveHk6OnNldFVzZXJTY3JpcHRzKGNvbnN0IFZlY3RvcjxT
dHJpbmc+JiBzY3JpcHRzKQogICAgIHByb2Nlc3MoKS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZTo6
U2V0VXNlclNjcmlwdHMoc2NyaXB0cyksIG1fcGFnZUlEKTsKIH0KIAordm9pZCBXZWJQYWdlUHJv
eHk6OmluaXRpYWxWaWV3cG9ydFJlYWR5KCkKK3sKKyAgICBtX3BhZ2VDbGllbnQtPmluaXRpYWxW
aWV3cG9ydFJlYWR5KCk7Cit9CisKICNpZiBQTFVHSU5fQVJDSElURUNUVVJFKFgxMSkKIHZvaWQg
V2ViUGFnZVByb3h5OjpjcmVhdGVQbHVnaW5Db250YWluZXIodWludDY0X3QmIHdpbmRvd0lEKQog
ewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9X
ZWJGcmFtZUxvYWRlckNsaWVudC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNv
cmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcAppbmRleCBlMTM5MDhlNjM4ZGE0MTU3
NTZhNjM1YTYyZjI1NDhlNDZhNDY5NWU1Li45M2ZiNzVlM2U5YTJhM2Y3NmE4MzAyMTI4YTkwZjRl
MTIwMzBjNDMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVT
dXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcApAQCAtOTEsNiAr
OTEsNyBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpXZWJGcmFt
ZUxvYWRlckNsaWVudChXZWJGcmFtZSogZnJhbWUpCiAgICAgOiBtX2ZyYW1lKGZyYW1lKQogICAg
ICwgbV9oYXNTZW50UmVzcG9uc2VUb1BsdWdpblZpZXcoZmFsc2UpCisgICAgLCBtX2RpZENvbXBs
ZXRlUGFnZVRyYW5zaXRpb25BbHJlYWR5KGZhbHNlKQogICAgICwgbV9mcmFtZUhhc0N1c3RvbVJl
cHJlc2VudGF0aW9uKGZhbHNlKQogICAgICwgbV9mcmFtZUNhbWVGcm9tUGFnZUNhY2hlKGZhbHNl
KQogewpAQCAtNTYyLDggKzU2MywxMCBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaXNw
YXRjaERpZExheW91dChMYXlvdXRNaWxlc3RvbmVzIG1pbGVzdG9uZXMpCiAgICAgICAgIHdlYlBh
Z2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6RGlkRmlyc3RMYXlvdXRGb3JGcmFtZSht
X2ZyYW1lLT5mcmFtZUlEKCksIEluamVjdGVkQnVuZGxlVXNlck1lc3NhZ2VFbmNvZGVyKHVzZXJE
YXRhLmdldCgpKSkpOwogCiAgICAgICAgIGlmIChtX2ZyYW1lID09IG1fZnJhbWUtPnBhZ2UoKS0+
bWFpbldlYkZyYW1lKCkpIHsKLSAgICAgICAgICAgIGlmICghd2ViUGFnZS0+Y29yZVBhZ2UoKS0+
c2V0dGluZ3MoKS0+c3VwcHJlc3Nlc0luY3JlbWVudGFsUmVuZGVyaW5nKCkpCi0gICAgICAgICAg
ICAgICAgd2ViUGFnZS0+ZHJhd2luZ0FyZWEoKS0+c2V0TGF5ZXJUcmVlU3RhdGVJc0Zyb3plbihm
YWxzZSk7CisgICAgICAgICAgICBpZiAoIXdlYlBhZ2UtPmNvcmVQYWdlKCktPnNldHRpbmdzKCkt
PnN1cHByZXNzZXNJbmNyZW1lbnRhbFJlbmRlcmluZygpICYmICFtX2RpZENvbXBsZXRlUGFnZVRy
YW5zaXRpb25BbHJlYWR5KSB7CisgICAgICAgICAgICAgICAgd2ViUGFnZS0+ZGlkQ29tcGxldGVQ
YWdlVHJhbnNpdGlvbigpOworICAgICAgICAgICAgICAgIG1fZGlkQ29tcGxldGVQYWdlVHJhbnNp
dGlvbkFscmVhZHkgPSB0cnVlOworICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgCiAjaWYg
VVNFKFRJTEVEX0JBQ0tJTkdfU1RPUkUpCkBAIC0xMTIwLDEyICsxMTIzLDE1IEBAIFN0cmluZyBX
ZWJGcmFtZUxvYWRlckNsaWVudDo6Z2VuZXJhdGVkTUlNRVR5cGVGb3JVUkxTY2hlbWUoY29uc3Qg
U3RyaW5nJiAvKlVSTFNjCiAKIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmZyYW1lTG9hZENv
bXBsZXRlZCgpCiB7CisgICAgLy8gTm90ZTogQ2FuIGJlIGNhbGxlZCBtdWx0aXBsZSB0aW1lcy4K
ICAgICBXZWJQYWdlKiB3ZWJQYWdlID0gbV9mcmFtZS0+cGFnZSgpOwogICAgIGlmICghd2ViUGFn
ZSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgaWYgKG1fZnJhbWUgPT0gbV9mcmFtZS0+cGFnZSgp
LT5tYWluV2ViRnJhbWUoKSkKLSAgICAgICAgd2ViUGFnZS0+ZHJhd2luZ0FyZWEoKS0+c2V0TGF5
ZXJUcmVlU3RhdGVJc0Zyb3plbihmYWxzZSk7CisgICAgaWYgKG1fZnJhbWUgPT0gbV9mcmFtZS0+
cGFnZSgpLT5tYWluV2ViRnJhbWUoKSAmJiAhbV9kaWRDb21wbGV0ZVBhZ2VUcmFuc2l0aW9uQWxy
ZWFkeSkgeworICAgICAgICB3ZWJQYWdlLT5kaWRDb21wbGV0ZVBhZ2VUcmFuc2l0aW9uKCk7Cisg
ICAgICAgIG1fZGlkQ29tcGxldGVQYWdlVHJhbnNpdGlvbkFscmVhZHkgPSB0cnVlOworICAgIH0K
IH0KIAogdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6c2F2ZVZpZXdTdGF0ZVRvSXRlbShIaXN0
b3J5SXRlbSopCkBAIC0xMTU1LDggKzExNjEsMTAgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVu
dDo6cHJvdmlzaW9uYWxMb2FkU3RhcnRlZCgpCiAgICAgaWYgKCF3ZWJQYWdlKQogICAgICAgICBy
ZXR1cm47CiAKLSAgICBpZiAobV9mcmFtZSA9PSBtX2ZyYW1lLT5wYWdlKCktPm1haW5XZWJGcmFt
ZSgpKQotICAgICAgICB3ZWJQYWdlLT5kcmF3aW5nQXJlYSgpLT5zZXRMYXllclRyZWVTdGF0ZUlz
RnJvemVuKHRydWUpOworICAgIGlmIChtX2ZyYW1lID09IG1fZnJhbWUtPnBhZ2UoKS0+bWFpbldl
YkZyYW1lKCkpIHsKKyAgICAgICAgd2ViUGFnZS0+ZGlkU3RhcnRQYWdlVHJhbnNpdGlvbigpOwor
ICAgICAgICBtX2RpZENvbXBsZXRlUGFnZVRyYW5zaXRpb25BbHJlYWR5ID0gZmFsc2U7CisgICAg
fQogfQogCiB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpkaWRGaW5pc2hMb2FkKCkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVM
b2FkZXJDbGllbnQuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQv
V2ViRnJhbWVMb2FkZXJDbGllbnQuaAppbmRleCAyMTNhMmZlYTBlMzExNDI0MWFmMjcwZjk1Zjkw
NWFlMjI2MTA4MGU5Li4yN2NlYWI1YzFhYTU5YzA3ZDkyODYzODJlYTJhYjliZDU2Y2I0YTZkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZy
YW1lTG9hZGVyQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3Jl
U3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oCkBAIC0yNDQsNiArMjQ0LDcgQEAgcHJpdmF0
ZToKICAgICBXZWJGcmFtZSogbV9mcmFtZTsKICAgICBSZWZQdHI8UGx1Z2luVmlldz4gbV9wbHVn
aW5WaWV3OwogICAgIGJvb2wgbV9oYXNTZW50UmVzcG9uc2VUb1BsdWdpblZpZXc7CisgICAgYm9v
bCBtX2RpZENvbXBsZXRlUGFnZVRyYW5zaXRpb25BbHJlYWR5OwogICAgIGJvb2wgbV9mcmFtZUhh
c0N1c3RvbVJlcHJlc2VudGF0aW9uOwogICAgIGJvb2wgbV9mcmFtZUNhbWVGcm9tUGFnZUNhY2hl
OwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQ
YWdlLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcApp
bmRleCA2MWU4MmI1ZDk2MjQ5M2QzOGM0ZjQ1MDJkNmI4NThjZjgwZTllNWY2Li41NGRjMzQ1OGUy
MTQwNTQ5OGFlYWRlODExOThmNTEzYWQ1MGRhMzE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCkBAIC0xNzkwLDYgKzE3OTAsMjIgQEAgdm9pZCBX
ZWJQYWdlOjpkaWRSZWNlaXZlUG9saWN5RGVjaXNpb24odWludDY0X3QgZnJhbWVJRCwgdWludDY0
X3QgbGlzdGVuZXJJRCwgdWkKICAgICBmcmFtZS0+ZGlkUmVjZWl2ZVBvbGljeURlY2lzaW9uKGxp
c3RlbmVySUQsIHN0YXRpY19jYXN0PFBvbGljeUFjdGlvbj4ocG9saWN5QWN0aW9uKSwgZG93bmxv
YWRJRCk7CiB9CiAKK3ZvaWQgV2ViUGFnZTo6ZGlkU3RhcnRQYWdlVHJhbnNpdGlvbigpCit7Cisg
ICAgbV9kcmF3aW5nQXJlYS0+c2V0TGF5ZXJUcmVlU3RhdGVJc0Zyb3plbih0cnVlKTsKK30KKwor
dm9pZCBXZWJQYWdlOjpkaWRDb21wbGV0ZVBhZ2VUcmFuc2l0aW9uKCkKK3sKKyNpZiBQTEFURk9S
TShRVCkKKyAgICBpZiAobV9tYWluRnJhbWUtPmNvcmVGcmFtZSgpLT52aWV3KCktPmRlbGVnYXRl
c1Njcm9sbGluZygpKQorICAgICAgICAvLyBXYWl0IHVudGlsIHRoZSBVSSBwcm9jZXNzIHNlbnQg
dXMgdGhlIHZpc2libGUgcmVjdCBpdCB3YW50cyByZW5kZXJlZC4KKyAgICAgICAgc2VuZChNZXNz
YWdlczo6V2ViUGFnZVByb3h5OjpJbml0aWFsVmlld3BvcnRSZWFkeSgpKTsKKyAgICBlbHNlCisj
ZW5kaWYKKyAgICAgICAgbV9kcmF3aW5nQXJlYS0+c2V0TGF5ZXJUcmVlU3RhdGVJc0Zyb3plbihm
YWxzZSk7Cit9CisKIHZvaWQgV2ViUGFnZTo6c2hvdygpCiB7CiAgICAgc2VuZChNZXNzYWdlczo6
V2ViUGFnZVByb3h5OjpTaG93UGFnZSgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViUGFnZS5oCmluZGV4IGZhZGQzYmQ3ZmYxMWFmMDZiODhjYjEzMDE5NGUyNWMwNmE3
MjJkNWQuLjZjYWI1YjE0YmI4YWRkNmFmYjJlMDM0ZDMxODc2MDI3MGI4ZmM2N2MgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgKKysrIGIvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaApAQCAtMjEzLDYgKzIxMyw4
IEBAIHB1YmxpYzoKICAgICBib29sIGhhbmRsZUVkaXRpbmdLZXlib2FyZEV2ZW50KFdlYkNvcmU6
OktleWJvYXJkRXZlbnQqKTsKICNlbmRpZgogCisgICAgdm9pZCBkaWRTdGFydFBhZ2VUcmFuc2l0
aW9uKCk7CisgICAgdm9pZCBkaWRDb21wbGV0ZVBhZ2VUcmFuc2l0aW9uKCk7CiAgICAgdm9pZCBz
aG93KCk7CiAgICAgU3RyaW5nIHVzZXJBZ2VudCgpIGNvbnN0IHsgcmV0dXJuIG1fdXNlckFnZW50
OyB9CiAgICAgV2ViQ29yZTo6SW50UmVjdCB3aW5kb3dSZXNpemVyUmVjdCgpIGNvbnN0OwpAQCAt
NDE2LDYgKzQxOCw3IEBAIHB1YmxpYzoKICNlbmRpZgogCiAjaWYgUExBVEZPUk0oUVQpCisgICAg
dm9pZCBjb21taXRJbml0aWFsVmlld3BvcnQoKTsKICAgICB2b2lkIHNldENvbXBvc2l0aW9uKGNv
bnN0IFN0cmluZyYgdGV4dCwgVmVjdG9yPFdlYkNvcmU6OkNvbXBvc2l0aW9uVW5kZXJsaW5lPiB1
bmRlcmxpbmVzLCB1aW50NjRfdCBzZWxlY3Rpb25TdGFydCwgdWludDY0X3Qgc2VsZWN0aW9uRW5k
LCB1aW50NjRfdCByZXBsYWNlbWVudFJhbmdlU3RhcnQsIHVpbnQ2NF90IHJlcGxhY2VtZW50UmFu
Z2VFbmQpOwogICAgIHZvaWQgY29uZmlybUNvbXBvc2l0aW9uKGNvbnN0IFN0cmluZyYgdGV4dCwg
aW50NjRfdCBzZWxlY3Rpb25TdGFydCwgaW50NjRfdCBzZWxlY3Rpb25MZW5ndGgpOwogICAgIHZv
aWQgY2FuY2VsQ29tcG9zaXRpb24oKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluIGIvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJQYWdlL1dlYlBhZ2UubWVzc2FnZXMuaW4KaW5kZXggZjExM2ZjMjRlOTRiOWQwMjll
N2M1NGU2YjEzODdhOTM2NzYwZjU0NS4uYWZhODlmM2ExYzBjOWQ5OGJjNjIyZjc1YjczYmI3MWVk
MDFkYWQwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dl
YlBhZ2UubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdl
L1dlYlBhZ2UubWVzc2FnZXMuaW4KQEAgLTI0NCw2ICsyNDQsNyBAQCBtZXNzYWdlcyAtPiBXZWJQ
YWdlIHsKICNlbmRpZgogCiAjaWYgUExBVEZPUk0oUVQpCisgICAgQ29tbWl0SW5pdGlhbFZpZXdw
b3J0KCkKICAgICBTZXRDb21wb3NpdGlvbihXVEY6OlN0cmluZyB0ZXh0LCBXVEY6OlZlY3RvcjxX
ZWJDb3JlOjpDb21wb3NpdGlvblVuZGVybGluZT4gdW5kZXJsaW5lcywgdWludDY0X3Qgc2VsZWN0
aW9uU3RhcnQsIHVpbnQ2NF90IHNlbGVjdGlvbkVuZCwgdWludDY0X3QgcmVwbGFjZW1lbnRSYW5n
ZVN0YXJ0LCB1aW50NjRfdCByZXBsYWNlbWVudFJhbmdlRW5kKQogICAgIENvbmZpcm1Db21wb3Np
dGlvbihXVEY6OlN0cmluZyB0ZXh0LCBpbnQ2NF90IHNlbGVjdGlvblN0YXJ0LCBpbnQ2NF90IHNl
bGVjdGlvbkxlbmd0aCkKICAgICBDYW5jZWxDb21wb3NpdGlvbigpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvcXQvV2ViUGFnZVF0LmNwcCBiL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9xdC9XZWJQYWdlUXQuY3BwCmluZGV4IGUzZjYwMzRk
ZjIzNzJkMGQxYjIyYzBlMTFhNzE3MWVmOWZiMDQxZGIuLjlhZmU5OTMzZGIyMTM1NTViMDQ3Y2Jm
ZGI5MTQ3N2YzMDliYzlhZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
V2ViUGFnZS9xdC9XZWJQYWdlUXQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
V2ViUGFnZS9xdC9XZWJQYWdlUXQuY3BwCkBAIC0zMDgsNiArMzA4LDExIEBAIFBhc3NSZWZQdHI8
U2hhcmVkQnVmZmVyPiBXZWJQYWdlOjpjYWNoZWRSZXNwb25zZURhdGFGb3JVUkwoY29uc3QgS1VS
TCYpCiAgICAgcmV0dXJuIDA7CiB9CiAKK3ZvaWQgV2ViUGFnZTo6Y29tbWl0SW5pdGlhbFZpZXdw
b3J0KCkKK3sKKyAgICBtX2RyYXdpbmdBcmVhLT5zZXRMYXllclRyZWVTdGF0ZUlzRnJvemVuKGZh
bHNlKTsKK30KKwogc3RhdGljIEZyYW1lKiB0YXJnZXRGcmFtZUZvckVkaXRpbmcoV2ViUGFnZSog
cGFnZSkKIHsKICAgICBGcmFtZSogdGFyZ2V0RnJhbWUgPSBwYWdlLT5jb3JlUGFnZSgpLT5mb2N1
c0NvbnRyb2xsZXIoKS0+Zm9jdXNlZE9yTWFpbkZyYW1lKCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>166210</attachid>
            <date>2012-09-28 04:52:58 -0700</date>
            <delta_ts>2012-09-28 04:55:10 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-97773-20120928135215.patch</filename>
            <type>text/plain</type>
            <size>18295</size>
            <attacher name="Jocelyn Turcotte">jturcotte</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI5NjIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNTQ5MmRjZTlhMTAyYjc0
OGYzNzdhZDQ0Njk3MDM1OGQ3OWFkZWYxZS4uYWU0MTE4NDQ4YmJlNmQ5MTUzZjE4MWVlNmQ3ODRj
MGJhMWIxMWQ2NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY0IEBACisyMDEyLTA5LTI3ICBKb2Nl
bHluIFR1cmNvdHRlICA8am9jZWx5bi50dXJjb3R0ZUBkaWdpYS5jb20+CisKKyAgICAgICAgW1F0
XSBXYWl0IGZvciB0aGUgVUkgcHJvY2VzcyBiZWZvcmUgcmUtZW5hYmxpbmcgcmVuZGVyaW5nIGR1
cmluZyBwYWdlIGxvYWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTk3NzczCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgRHVyaW5nIHBhZ2UgbmF2aWdhdGlvbiwgV2ViQ29yZSBtaWdodCBhc2sgYXN5bmNocm9u
b3VzbHkgdGhlIFVJIHByb2Nlc3MgdG8KKyAgICAgICAgc2Nyb2xsIHRvIGFuIGFuY2hvciBvciBy
ZXN0b3JlZCBoaXN0b3J5IHBvc2l0aW9uIGFuZCB0aGUgVUkgcHJvY2VzcyB3aWxsCisgICAgICAg
IHJldHVybiB0aGUgY29ycmVzcG9uZGluZyB2aXNpYmxlIHJlY3QgdG8gYmUgcmVuZGVyZWQgYnkg
dGhlIHdlYiBwcm9jZXNzLgorCisgICAgICAgIFRvIGF2b2lkIHJlbmRlcmluZyB0aWxlcyBmb3Ig
dGhlIGludmFsaWRhdGVkIGFyZWEgYnkgdGhlIG5ldyBwYWdlIGxheW91dCBhdAorICAgICAgICB0
aGUgd3JvbmcgcG9zaXRpb24sIHdlIHNob3VsZCBkbyBhbiBleHRyYSBtZXNzYWdlIHJvdW5kLXRy
aXAgdG8gdGhlIFVJCisgICAgICAgIHByb2Nlc3MgYmVmb3JlIHJlc3VtaW5nIHRoZSByZW5kZXJp
bmcuCisgICAgICAgIEFzc3VtaW5nIHRoYXQgYWxsIG1lc3NhZ2VzIGFyZSBoYW5kbGVkIGluIG9y
ZGVyIGJ5IGJvdGggdGhlIHdlYiBhbmQgVUkgcHJvY2VzcywKKyAgICAgICAgc2VuZGluZyB0aGUg
cm91bmQtdHJpcCByZXF1ZXN0IGluIHRoZSB3ZWIgcHJvY2VzcyBvbmNlIHdlIHNlbnQgYWxsIHNj
cm9sbAorICAgICAgICByZXF1ZXN0cywgY29udGVudHMgc2l6ZSBhbmQgdmlld3BvcnQgYXR0cmli
dXRlcyB1cGRhdGVzIGFuZCB0aGVuIGhhbmRsaW5nCisgICAgICAgIHRoZSByb3VuZC10cmlwIHJl
c3BvbnNlLCB3ZSBtYWtlIHN1cmUgdGhhdCBmaW5hbCB2aXNpYmxlIHJlY3QgcmVxdWVzdCBoYXZl
CisgICAgICAgIGJlZW4gaGFuZGxlZCBhbHJlYWR5LgorCisgICAgICAgICogVUlQcm9jZXNzL0FQ
SS9xdC9yYXcvcXJhd3dlYnZpZXcuY3BwOgorICAgICAgICAoUVJhd1dlYlZpZXdQcml2YXRlOjpw
YWdlVHJhbnNpdGlvblZpZXdwb3J0UmVhZHkpOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvcXQv
cmF3L3FyYXd3ZWJ2aWV3X3BfcC5oOgorICAgICAgICAoUVJhd1dlYlZpZXdQcml2YXRlKToKKyAg
ICAgICAgKiBVSVByb2Nlc3MvUGFnZUNsaWVudC5oOgorICAgICAgICAoUGFnZUNsaWVudCk6Cisg
ICAgICAgICogVUlQcm9jZXNzL1BhZ2VWaWV3cG9ydENvbnRyb2xsZXIuY3BwOgorICAgICAgICAo
V2ViS2l0OjpQYWdlVmlld3BvcnRDb250cm9sbGVyOjpwYWdlVHJhbnNpdGlvblZpZXdwb3J0UmVh
ZHkpOgorICAgICAgICAoV2ViS2l0KToKKyAgICAgICAgKiBVSVByb2Nlc3MvUGFnZVZpZXdwb3J0
Q29udHJvbGxlci5oOgorICAgICAgICAoUGFnZVZpZXdwb3J0Q29udHJvbGxlcik6CisgICAgICAg
ICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oOgorICAgICAgICAoV2ViUGFnZVByb3h5KToKKyAg
ICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluOgorICAgICAgICAqIFVJ
UHJvY2Vzcy9xdC9RdFBhZ2VDbGllbnQuY3BwOgorICAgICAgICAoV2ViS2l0OjpRdFBhZ2VDbGll
bnQ6OnBhZ2VUcmFuc2l0aW9uVmlld3BvcnRSZWFkeSk6CisgICAgICAgIChXZWJLaXQpOgorICAg
ICAgICAqIFVJUHJvY2Vzcy9xdC9RdFBhZ2VDbGllbnQuaDoKKyAgICAgICAgKFF0UGFnZUNsaWVu
dCk6CisgICAgICAgICogVUlQcm9jZXNzL3F0L1dlYlBhZ2VQcm94eVF0LmNwcDoKKyAgICAgICAg
KFdlYktpdDo6V2ViUGFnZVByb3h5Ojpjb21taXRQYWdlVHJhbnNpdGlvblZpZXdwb3J0KToKKyAg
ICAgICAgKFdlYktpdCk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6cGFnZVRyYW5z
aXRpb25WaWV3cG9ydFJlYWR5KToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0
L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2Fk
ZXJDbGllbnQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50KToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJh
bWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkTGF5b3V0KToKKyAgICAgICAgKFdlYktpdDo6V2Vi
RnJhbWVMb2FkZXJDbGllbnQ6OmZyYW1lTG9hZENvbXBsZXRlZCk6CisgICAgICAgIChXZWJLaXQ6
OldlYkZyYW1lTG9hZGVyQ2xpZW50Ojpwcm92aXNpb25hbExvYWRTdGFydGVkKToKKyAgICAgICAg
KiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50Lmg6CisgICAg
ICAgIChXZWJGcmFtZUxvYWRlckNsaWVudCk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdl
L1dlYlBhZ2UuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpkaWRTdGFydFBhZ2VUcmFu
c2l0aW9uKToKKyAgICAgICAgKFdlYktpdCk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OmRp
ZENvbXBsZXRlUGFnZVRyYW5zaXRpb24pOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9X
ZWJQYWdlLmg6CisgICAgICAgIChXZWJQYWdlKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBh
Z2UvV2ViUGFnZS5tZXNzYWdlcy5pbjoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvcXQv
V2ViUGFnZVF0LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6Y29tbWl0UGFnZVRyYW5z
aXRpb25WaWV3cG9ydCk6CisgICAgICAgIChXZWJLaXQpOgorCiAyMDEyLTA5LTI1ICBSYXBoYWVs
IEt1Ym8gZGEgQ29zdGEgIDxyYXBoYWVsLmt1Ym8uZGEuY29zdGFAaW50ZWwuY29tPgogCiAgICAg
ICAgIFtEUlRdW1dUUl0gU3VwcG9ydCBvdmVycmlkaW5nIHRoZSAnV2ViS2l0RGlzcGxheUltYWdl
c0tleScgcHJlZmVyZW5jZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9xdC9yYXcvcXJhd3dlYnZpZXcuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9x
dC9yYXcvcXJhd3dlYnZpZXcuY3BwCmluZGV4IDBhN2E2ODRjZmM2YmZiNWVlMDMzMjdhNmRjNTE0
ZDYzYWIwNDZmODUuLjVmMTkyNDI5MjYwMzg2OGI1ZTYyNmUxMTAyNjQyYTIxNDJlZGM4ZDAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcmF3L3FyYXd3ZWJ2aWV3
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Jhdy9xcmF3d2Vidmll
dy5jcHAKQEAgLTE2Nyw2ICsxNjcsMTEgQEAgdm9pZCBRUmF3V2ViVmlld1ByaXZhdGU6OnRvb2xU
aXBDaGFuZ2VkKGNvbnN0IFN0cmluZyYsIGNvbnN0IFN0cmluZyYgbmV3VG9vbHRpcCkKICAgICBu
b3RJbXBsZW1lbnRlZCgpOwogfQogCit2b2lkIFFSYXdXZWJWaWV3UHJpdmF0ZTo6cGFnZVRyYW5z
aXRpb25WaWV3cG9ydFJlYWR5KCkKK3sKKyAgICBtX3dlYlBhZ2VQcm94eS0+Y29tbWl0UGFnZVRy
YW5zaXRpb25WaWV3cG9ydCgpOworfQorCiB2b2lkIFFSYXdXZWJWaWV3UHJpdmF0ZTo6c3RhcnRE
cmFnKGNvbnN0IFdlYkNvcmU6OkRyYWdEYXRhJiBkcmFnRGF0YSwgUGFzc1JlZlB0cjxXZWJLaXQ6
OlNoYXJlYWJsZUJpdG1hcD4gZHJhZ0ltYWdlKQogewogICAgIG5vdEltcGxlbWVudGVkKCk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Jhdy9xcmF3d2Vidmll
d19wX3AuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcmF3L3FyYXd3ZWJ2aWV3
X3BfcC5oCmluZGV4IDU1YmM4NWJhMDI4MDc3ZjE0NzExZjZhYzg2ODA1M2E4ZWI0NTJiYmMuLmIw
MGQ0Njc1YjE1NzIxNzQ0ZjNiNmE5MWM4MmU3ZTM4NzA5MzFjMjkgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcmF3L3FyYXd3ZWJ2aWV3X3BfcC5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcmF3L3FyYXd3ZWJ2aWV3X3BfcC5oCkBAIC04
Miw2ICs4Miw3IEBAIHB1YmxpYzoKIAogICAgIHZpcnR1YWwgdm9pZCBzZXRDdXJzb3JIaWRkZW5V
bnRpbE1vdXNlTW92ZXMoYm9vbCBoaWRkZW5VbnRpbE1vdXNlTW92ZXMpOwogICAgIHZpcnR1YWwg
dm9pZCB0b29sVGlwQ2hhbmdlZChjb25zdCBTdHJpbmcmLCBjb25zdCBTdHJpbmcmIG5ld1Rvb2x0
aXApOworICAgIHZpcnR1YWwgdm9pZCBwYWdlVHJhbnNpdGlvblZpZXdwb3J0UmVhZHkoKTsKIAog
ICAgIHZpcnR1YWwgdm9pZCBzdGFydERyYWcoY29uc3QgV2ViQ29yZTo6RHJhZ0RhdGEmIGRyYWdE
YXRhLCBQYXNzUmVmUHRyPFdlYktpdDo6U2hhcmVhYmxlQml0bWFwPiBkcmFnSW1hZ2UpOwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGFnZUNsaWVudC5oIGIvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL1BhZ2VDbGllbnQuaAppbmRleCBlYmY1Y2QxNmYxYzFmODY3NjUz
ZDI4NzM1MTU2MzIxN2RmMWI3YTY3Li5hM2Y0N2E5NDlhYTUxYWQ3ODFkNzQwMDU4MTY3MWZhMWM5
ZGI2OTA2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGFnZUNsaWVudC5o
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9QYWdlQ2xpZW50LmgKQEAgLTExOCw2ICsx
MTgsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHBhZ2VEaWRSZXF1ZXN0U2Nyb2xsKGNv
bnN0IFdlYkNvcmU6OkludFBvaW50JikgPSAwOwogI2VuZGlmCiAjaWYgUExBVEZPUk0oUVQpCisg
ICAgdmlydHVhbCB2b2lkIHBhZ2VUcmFuc2l0aW9uVmlld3BvcnRSZWFkeSgpID0gMDsKICAgICB2
aXJ0dWFsIHZvaWQgZGlkRmluZFpvb21hYmxlQXJlYShjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYs
IGNvbnN0IFdlYkNvcmU6OkludFJlY3QmKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIGRpZFJlY2Vp
dmVNZXNzYWdlRnJvbU5hdmlnYXRvclF0T2JqZWN0KGNvbnN0IFN0cmluZyYpID0gMDsKICAgICB2
aXJ0dWFsIHZvaWQgdXBkYXRlVGV4dElucHV0U3RhdGUoKSA9IDA7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGFnZVZpZXdwb3J0Q29udHJvbGxlci5jcHAgYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvUGFnZVZpZXdwb3J0Q29udHJvbGxlci5jcHAKaW5kZXggZTQyMDA2
YTE0YzBmMTcwNjM0MTQ1ODFkOGYxOGRjNjIyODhkYjZhZi4uMjljZjZkZTliZWZiNDFkMzNhOWFj
OWE3ODgzNGM1ZjA3NDJhNDMzOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L1BhZ2VWaWV3cG9ydENvbnRyb2xsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9QYWdlVmlld3BvcnRDb250cm9sbGVyLmNwcApAQCAtMTIwLDYgKzEyMCwxNSBAQCB2b2lkIFBh
Z2VWaWV3cG9ydENvbnRyb2xsZXI6OmRpZENoYW5nZUNvbnRlbnRzU2l6ZShjb25zdCBJbnRTaXpl
JiBuZXdTaXplKQogICAgIG1fY2xpZW50LT5kaWRDaGFuZ2VDb250ZW50c1NpemUoKTsKIH0KIAor
dm9pZCBQYWdlVmlld3BvcnRDb250cm9sbGVyOjpwYWdlVHJhbnNpdGlvblZpZXdwb3J0UmVhZHko
KQoreworICAgIC8vIEF0IHRoaXMgcG9pbnQgd2Ugc2hvdWxkIGFscmVhZHkgaGF2ZSByZWNlaXZl
ZCB0aGUgZmlyc3Qgdmlld3BvcnQgYXJndW1lbnRzIGFuZCB0aGUgcmVxdWVzdGVkIHNjcm9sbAor
ICAgIC8vIHBvc2l0aW9uIGZvciB0aGUgbmV3bHkgbG9hZGVkIHBhZ2UgYW5kIHNlbnQgb3VyIHJl
YWN0aW9ucyB0byB0aGUgd2ViIHByb2Nlc3MuIEl0J3Mgbm93IHNhZmUgdG8gdGVsbAorICAgIC8v
IHRoZSB3ZWIgcHJvY2VzcyB0byBzdGFydCByZW5kZXJpbmcgdGhlIG5ldyBwYWdlIGNvbnRlbnRz
IGFuZCBwb3NzaWJseSByZS11c2UgdGhlIGN1cnJlbnQgdGlsZXMuCisgICAgLy8gVGhpcyBhc3N1
bWVzIHRoYXQgYWxsIG1lc3NhZ2VzIGhhdmUgYmVlbiBoYW5kbGVkIGluIG9yZGVyIGFuZCB0aGF0
IG5vdGhpbmcgaGFzIGJlZW4gcHVzaGVkIGJhY2sgb24gdGhlIGV2ZW50IGxvb3AuCisgICAgbV93
ZWJQYWdlUHJveHktPmNvbW1pdFBhZ2VUcmFuc2l0aW9uVmlld3BvcnQoKTsKK30KKwogdm9pZCBQ
YWdlVmlld3BvcnRDb250cm9sbGVyOjpwYWdlRGlkUmVxdWVzdFNjcm9sbChjb25zdCBJbnRQb2lu
dCYgY3NzUG9zaXRpb24pCiB7CiAgICAgLy8gSWdub3JlIHRoZSByZXF1ZXN0IGlmIHN1c3BlbmRl
ZC4gQ2FuIG9ubHkgaGFwcGVuIGR1ZSB0byBkZWxheSBpbiBldmVudCBkZWxpdmVyeS4KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9QYWdlVmlld3BvcnRDb250cm9sbGVyLmgg
Yi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGFnZVZpZXdwb3J0Q29udHJvbGxlci5oCmluZGV4
IGFjYmIyMmE1OGRkYjI1MDUzMjdmY2E0YjllNTU4Njg2Yjg1MjYwNTEuLmEzNWQ5MzNmMzRjZDEx
NmEyNjc0ZDBjMTdiZWExY2MzYWMxM2I2ZDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9QYWdlVmlld3BvcnRDb250cm9sbGVyLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL1BhZ2VWaWV3cG9ydENvbnRyb2xsZXIuaApAQCAtOTcsNiArOTcsNyBAQCBwdWJsaWM6
CiAgICAgLy8gTm90aWZpY2F0aW9ucyBmcm9tIHRoZSBXZWJQcm9jZXNzLgogICAgIHZvaWQgZGlk
Q2hhbmdlQ29udGVudHNTaXplKGNvbnN0IFdlYkNvcmU6OkludFNpemUmIG5ld1NpemUpOwogICAg
IHZvaWQgZGlkQ2hhbmdlVmlld3BvcnRBdHRyaWJ1dGVzKGNvbnN0IFdlYkNvcmU6OlZpZXdwb3J0
QXR0cmlidXRlcyYpOworICAgIHZvaWQgcGFnZVRyYW5zaXRpb25WaWV3cG9ydFJlYWR5KCk7CiAg
ICAgdm9pZCBwYWdlRGlkUmVxdWVzdFNjcm9sbChjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYgY3Nz
UG9zaXRpb24pOwogCiBwcml2YXRlOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL1dlYlBhZ2VQcm94eS5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94
eS5oCmluZGV4IDRjYmFmYTNhOWI5MDRlNjllOGRhODMzN2E5MGViZWExYWVlZDg5Y2QuLjRlZjYy
ZTM2ZDFmOTI1ZTJmNjhiNTZkZDY3NTY0MGM1YWMyN2QwMDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvV2ViUGFnZVByb3h5LmgKQEAgLTQxOCw2ICs0MTgsNyBAQCBwdWJsaWM6CiAjZW5kaWYK
ICNpZiBVU0UoVElMRURfQkFDS0lOR19TVE9SRSkKICAgICB2b2lkIHNldFZpZXdwb3J0U2l6ZShj
b25zdCBXZWJDb3JlOjpJbnRTaXplJik7CisgICAgdm9pZCBjb21taXRQYWdlVHJhbnNpdGlvblZp
ZXdwb3J0KCk7CiAjZW5kaWYKIAogICAgIHZvaWQgaGFuZGxlTW91c2VFdmVudChjb25zdCBOYXRp
dmVXZWJNb3VzZUV2ZW50Jik7CkBAIC04NTAsNiArODUxLDcgQEAgcHJpdmF0ZToKICNlbmRpZgog
CiAjaWYgUExBVEZPUk0oUVQpCisgICAgdm9pZCBwYWdlVHJhbnNpdGlvblZpZXdwb3J0UmVhZHko
KTsKICAgICB2b2lkIGRpZEZpbmRab29tYWJsZUFyZWEoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQm
LCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0Jik7CiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4KaW5kZXggM2E3NTVlMWRkZGRm
ZGZlOGI4ZmVlNDA1NzU4ZjliMjg3OWIyODA4OC4uOTJkZTUzNTExZDM2MWVmNDE2MjYyNDhlOGNm
NGNjMTBhZTM5YTYxOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBh
Z2VQcm94eS5tZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFn
ZVByb3h5Lm1lc3NhZ2VzLmluCkBAIC03Myw2ICs3Myw3IEBAIG1lc3NhZ2VzIC0+IFdlYlBhZ2VQ
cm94eSB7CiAgICAgUGFnZURpZFJlcXVlc3RTY3JvbGwoV2ViQ29yZTo6SW50UG9pbnQgcG9pbnQp
CiAjZW5kaWYKICNpZiBQTEFURk9STShRVCkKKyAgICBQYWdlVHJhbnNpdGlvblZpZXdwb3J0UmVh
ZHkoKQogICAgIERpZEZpbmRab29tYWJsZUFyZWEoV2ViQ29yZTo6SW50UG9pbnQgdGFyZ2V0LCBX
ZWJDb3JlOjpJbnRSZWN0IGFyZWEpCiAgICAgQXV0aGVudGljYXRpb25SZXF1aXJlZFJlcXVlc3Qo
V1RGOjpTdHJpbmcgaG9zdG5hbWUsIFdURjo6U3RyaW5nIHJlYWxtLCBXVEY6OlN0cmluZyBwcmVm
aWxsZWRVc2VybmFtZSkgLT4gKFdURjo6U3RyaW5nIHVzZXJuYW1lLCBXVEY6OlN0cmluZyBwYXNz
d29yZCkKICAgICBDZXJ0aWZpY2F0ZVZlcmlmaWNhdGlvblJlcXVlc3QoV1RGOjpTdHJpbmcgaG9z
dG5hbWUpIC0+IChib29sIGlnbm9yZUVycm9ycykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9xdC9RdFBhZ2VDbGllbnQuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L3F0L1F0UGFnZUNsaWVudC5jcHAKaW5kZXggZDVhNWY3ZWNlMzcwNDM5MTBmN2Q3NzkwMTRlM2Yz
MWNjMTM5NTBhZS4uYmQ5MzJiNzBiMDQxZDVjZDQxNTBkMWQxOTkwYTcyMjJhZDU2MDMzZSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0UGFnZUNsaWVudC5jcHAKKysr
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0UGFnZUNsaWVudC5jcHAKQEAgLTIyMCw2
ICsyMjAsMTEgQEAgdm9pZCBRdFBhZ2VDbGllbnQ6OmZsYXNoQmFja2luZ1N0b3JlVXBkYXRlcyhj
b25zdCBWZWN0b3I8SW50UmVjdD4mKQogICAgIG5vdEltcGxlbWVudGVkKCk7CiB9CiAKK3ZvaWQg
UXRQYWdlQ2xpZW50OjpwYWdlVHJhbnNpdGlvblZpZXdwb3J0UmVhZHkoKQoreworICAgIFFRdWlj
a1dlYlZpZXdQcml2YXRlOjpnZXQobV93ZWJWaWV3KS0+dmlld3BvcnRDb250cm9sbGVyKCktPnBh
Z2VUcmFuc2l0aW9uVmlld3BvcnRSZWFkeSgpOworfQorCiB2b2lkIFF0UGFnZUNsaWVudDo6ZGlk
RmluZFpvb21hYmxlQXJlYShjb25zdCBJbnRQb2ludCYgdGFyZ2V0LCBjb25zdCBJbnRSZWN0JiBh
cmVhKQogewogICAgIEFTU0VSVChtX2V2ZW50SGFuZGxlcik7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXRQYWdlQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvcXQvUXRQYWdlQ2xpZW50LmgKaW5kZXggMmUzNjc1NzBhMzE3YjVmOGRlMDJmZTY5NDg5
ODY5ODQ2NGI0MGE4NS4uYmI0MjU4MDVmMGY0OGY3MDEyOGM1ZDQ3ZGM1MjdlMmUwYzkwODQ3YSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0UGFnZUNsaWVudC5oCisr
KyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdFBhZ2VDbGllbnQuaApAQCAtOTksNiAr
OTksNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIGZsYXNoQmFja2luZ1N0b3JlVXBkYXRl
cyhjb25zdCBWZWN0b3I8V2ViQ29yZTo6SW50UmVjdD4mIHVwZGF0ZVJlY3RzKTsKICAgICB2aXJ0
dWFsIHZvaWQgZmluZFN0cmluZ0luQ3VzdG9tUmVwcmVzZW50YXRpb24oY29uc3QgU3RyaW5nJiwg
V2ViS2l0OjpGaW5kT3B0aW9ucywgdW5zaWduZWQgbWF4TWF0Y2hDb3VudCkgeyB9CiAgICAgdmly
dHVhbCB2b2lkIGNvdW50U3RyaW5nTWF0Y2hlc0luQ3VzdG9tUmVwcmVzZW50YXRpb24oY29uc3Qg
U3RyaW5nJiwgV2ViS2l0OjpGaW5kT3B0aW9ucywgdW5zaWduZWQgbWF4TWF0Y2hDb3VudCkgeyB9
CisgICAgdmlydHVhbCB2b2lkIHBhZ2VUcmFuc2l0aW9uVmlld3BvcnRSZWFkeSgpOwogICAgIHZp
cnR1YWwgdm9pZCBkaWRGaW5kWm9vbWFibGVBcmVhKGNvbnN0IFdlYkNvcmU6OkludFBvaW50Jiwg
Y29uc3QgV2ViQ29yZTo6SW50UmVjdCYpOwogICAgIHZpcnR1YWwgdm9pZCB1cGRhdGVUZXh0SW5w
dXRTdGF0ZSgpOwogICAgIHZpcnR1YWwgdm9pZCBkb25lV2l0aEdlc3R1cmVFdmVudChjb25zdCBX
ZWJHZXN0dXJlRXZlbnQmLCBib29sIHdhc0V2ZW50SGFuZGxlZCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvV2ViUGFnZVByb3h5UXQuY3BwIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL3F0L1dlYlBhZ2VQcm94eVF0LmNwcAppbmRleCBlZjZkNTQ3N2QzMzkyNjdk
NTM4Njc4OTQxZDM4MjczNDAyZjA2NmM5Li41NDlmYzI4Mzc1MzQ4Njk1MDRiNzNlMWM5ZGJlMjM1
NzFhYTZkMDhlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvV2ViUGFn
ZVByb3h5UXQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9XZWJQYWdlUHJv
eHlRdC5jcHAKQEAgLTYwLDYgKzYwLDE0IEBAIHZvaWQgV2ViUGFnZVByb3h5Ojpsb2FkUmVjZW50
U2VhcmNoZXMoY29uc3QgU3RyaW5nJiwgVmVjdG9yPFN0cmluZz4mKQogICAgIG5vdEltcGxlbWVu
dGVkKCk7CiB9CiAKK3ZvaWQgV2ViUGFnZVByb3h5Ojpjb21taXRQYWdlVHJhbnNpdGlvblZpZXdw
b3J0KCkKK3sKKyAgICBpZiAoIWlzVmFsaWQoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgcHJv
Y2VzcygpLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpDb21taXRQYWdlVHJhbnNpdGlvblZpZXdw
b3J0KCksIG1fcGFnZUlEKTsKK30KKwogdm9pZCBXZWJQYWdlUHJveHk6OnNldENvbXBvc2l0aW9u
KGNvbnN0IFN0cmluZyYgdGV4dCwgVmVjdG9yPENvbXBvc2l0aW9uVW5kZXJsaW5lPiB1bmRlcmxp
bmVzLCB1aW50NjRfdCBzZWxlY3Rpb25TdGFydCwgdWludDY0X3Qgc2VsZWN0aW9uRW5kLCB1aW50
NjRfdCByZXBsYWNlbWVudFJhbmdlU3RhcnQsIHVpbnQ2NF90IHJlcGxhY2VtZW50UmFuZ2VFbmQp
CiB7CiAgICAgLy8gRklYTUU6IFdlIG5lZWQgdG8gZmluZCBvdXQgaG93IHRvIHByb3BlciBoYW5k
bGUgdGhlIGNyYXNoZXMgY2FzZS4KQEAgLTExNiw2ICsxMjQsMTEgQEAgdm9pZCBXZWJQYWdlUHJv
eHk6OnNldFVzZXJTY3JpcHRzKGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBzY3JpcHRzKQogICAgIHBy
b2Nlc3MoKS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZTo6U2V0VXNlclNjcmlwdHMoc2NyaXB0cyks
IG1fcGFnZUlEKTsKIH0KIAordm9pZCBXZWJQYWdlUHJveHk6OnBhZ2VUcmFuc2l0aW9uVmlld3Bv
cnRSZWFkeSgpCit7CisgICAgbV9wYWdlQ2xpZW50LT5wYWdlVHJhbnNpdGlvblZpZXdwb3J0UmVh
ZHkoKTsKK30KKwogI2lmIFBMVUdJTl9BUkNISVRFQ1RVUkUoWDExKQogdm9pZCBXZWJQYWdlUHJv
eHk6OmNyZWF0ZVBsdWdpbkNvbnRhaW5lcih1aW50NjRfdCYgd2luZG93SUQpCiB7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9h
ZGVyQ2xpZW50LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQv
V2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwCmluZGV4IGUxMzkwOGU2MzhkYTQxNTc1NmE2MzVhNjJm
MjU0OGU0NmE0Njk1ZTUuLjkzZmI3NWUzZTlhMmEzZjc2YTgzMDIxMjhhOTBmNGUxMjAzMGM0MzEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2Vi
RnJhbWVMb2FkZXJDbGllbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
Q29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwCkBAIC05MSw2ICs5MSw3IEBAIG5h
bWVzcGFjZSBXZWJLaXQgewogV2ViRnJhbWVMb2FkZXJDbGllbnQ6OldlYkZyYW1lTG9hZGVyQ2xp
ZW50KFdlYkZyYW1lKiBmcmFtZSkKICAgICA6IG1fZnJhbWUoZnJhbWUpCiAgICAgLCBtX2hhc1Nl
bnRSZXNwb25zZVRvUGx1Z2luVmlldyhmYWxzZSkKKyAgICAsIG1fZGlkQ29tcGxldGVQYWdlVHJh
bnNpdGlvbkFscmVhZHkoZmFsc2UpCiAgICAgLCBtX2ZyYW1lSGFzQ3VzdG9tUmVwcmVzZW50YXRp
b24oZmFsc2UpCiAgICAgLCBtX2ZyYW1lQ2FtZUZyb21QYWdlQ2FjaGUoZmFsc2UpCiB7CkBAIC01
NjIsOCArNTYzLDEwIEBAIHZvaWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpc3BhdGNoRGlkTGF5
b3V0KExheW91dE1pbGVzdG9uZXMgbWlsZXN0b25lcykKICAgICAgICAgd2ViUGFnZS0+c2VuZChN
ZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEaWRGaXJzdExheW91dEZvckZyYW1lKG1fZnJhbWUtPmZy
YW1lSUQoKSwgSW5qZWN0ZWRCdW5kbGVVc2VyTWVzc2FnZUVuY29kZXIodXNlckRhdGEuZ2V0KCkp
KSk7CiAKICAgICAgICAgaWYgKG1fZnJhbWUgPT0gbV9mcmFtZS0+cGFnZSgpLT5tYWluV2ViRnJh
bWUoKSkgewotICAgICAgICAgICAgaWYgKCF3ZWJQYWdlLT5jb3JlUGFnZSgpLT5zZXR0aW5ncygp
LT5zdXBwcmVzc2VzSW5jcmVtZW50YWxSZW5kZXJpbmcoKSkKLSAgICAgICAgICAgICAgICB3ZWJQ
YWdlLT5kcmF3aW5nQXJlYSgpLT5zZXRMYXllclRyZWVTdGF0ZUlzRnJvemVuKGZhbHNlKTsKKyAg
ICAgICAgICAgIGlmICghd2ViUGFnZS0+Y29yZVBhZ2UoKS0+c2V0dGluZ3MoKS0+c3VwcHJlc3Nl
c0luY3JlbWVudGFsUmVuZGVyaW5nKCkgJiYgIW1fZGlkQ29tcGxldGVQYWdlVHJhbnNpdGlvbkFs
cmVhZHkpIHsKKyAgICAgICAgICAgICAgICB3ZWJQYWdlLT5kaWRDb21wbGV0ZVBhZ2VUcmFuc2l0
aW9uKCk7CisgICAgICAgICAgICAgICAgbV9kaWRDb21wbGV0ZVBhZ2VUcmFuc2l0aW9uQWxyZWFk
eSA9IHRydWU7CisgICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICAKICNpZiBVU0UoVElMRURf
QkFDS0lOR19TVE9SRSkKQEAgLTExMjAsMTIgKzExMjMsMTUgQEAgU3RyaW5nIFdlYkZyYW1lTG9h
ZGVyQ2xpZW50OjpnZW5lcmF0ZWRNSU1FVHlwZUZvclVSTFNjaGVtZShjb25zdCBTdHJpbmcmIC8q
VVJMU2MKIAogdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6ZnJhbWVMb2FkQ29tcGxldGVkKCkK
IHsKKyAgICAvLyBOb3RlOiBDYW4gYmUgY2FsbGVkIG11bHRpcGxlIHRpbWVzLgogICAgIFdlYlBh
Z2UqIHdlYlBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCk7CiAgICAgaWYgKCF3ZWJQYWdlKQogICAgICAg
ICByZXR1cm47CiAKLSAgICBpZiAobV9mcmFtZSA9PSBtX2ZyYW1lLT5wYWdlKCktPm1haW5XZWJG
cmFtZSgpKQotICAgICAgICB3ZWJQYWdlLT5kcmF3aW5nQXJlYSgpLT5zZXRMYXllclRyZWVTdGF0
ZUlzRnJvemVuKGZhbHNlKTsKKyAgICBpZiAobV9mcmFtZSA9PSBtX2ZyYW1lLT5wYWdlKCktPm1h
aW5XZWJGcmFtZSgpICYmICFtX2RpZENvbXBsZXRlUGFnZVRyYW5zaXRpb25BbHJlYWR5KSB7Cisg
ICAgICAgIHdlYlBhZ2UtPmRpZENvbXBsZXRlUGFnZVRyYW5zaXRpb24oKTsKKyAgICAgICAgbV9k
aWRDb21wbGV0ZVBhZ2VUcmFuc2l0aW9uQWxyZWFkeSA9IHRydWU7CisgICAgfQogfQogCiB2b2lk
IFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpzYXZlVmlld1N0YXRlVG9JdGVtKEhpc3RvcnlJdGVtKikK
QEAgLTExNTUsOCArMTE2MSwxMCBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50Ojpwcm92aXNp
b25hbExvYWRTdGFydGVkKCkKICAgICBpZiAoIXdlYlBhZ2UpCiAgICAgICAgIHJldHVybjsKIAot
ICAgIGlmIChtX2ZyYW1lID09IG1fZnJhbWUtPnBhZ2UoKS0+bWFpbldlYkZyYW1lKCkpCi0gICAg
ICAgIHdlYlBhZ2UtPmRyYXdpbmdBcmVhKCktPnNldExheWVyVHJlZVN0YXRlSXNGcm96ZW4odHJ1
ZSk7CisgICAgaWYgKG1fZnJhbWUgPT0gbV9mcmFtZS0+cGFnZSgpLT5tYWluV2ViRnJhbWUoKSkg
eworICAgICAgICB3ZWJQYWdlLT5kaWRTdGFydFBhZ2VUcmFuc2l0aW9uKCk7CisgICAgICAgIG1f
ZGlkQ29tcGxldGVQYWdlVHJhbnNpdGlvbkFscmVhZHkgPSBmYWxzZTsKKyAgICB9CiB9CiAKIHZv
aWQgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmRpZEZpbmlzaExvYWQoKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVu
dC5oIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxv
YWRlckNsaWVudC5oCmluZGV4IDIxM2EyZmVhMGUzMTE0MjQxYWYyNzBmOTVmOTA1YWUyMjYxMDgw
ZTkuLjI3Y2VhYjVjMWFhNTljMDdkOTI4NjM4MmVhMmFiOWJkNTZjYjRhNmQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJD
bGllbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dl
YkZyYW1lTG9hZGVyQ2xpZW50LmgKQEAgLTI0NCw2ICsyNDQsNyBAQCBwcml2YXRlOgogICAgIFdl
YkZyYW1lKiBtX2ZyYW1lOwogICAgIFJlZlB0cjxQbHVnaW5WaWV3PiBtX3BsdWdpblZpZXc7CiAg
ICAgYm9vbCBtX2hhc1NlbnRSZXNwb25zZVRvUGx1Z2luVmlldzsKKyAgICBib29sIG1fZGlkQ29t
cGxldGVQYWdlVHJhbnNpdGlvbkFscmVhZHk7CiAgICAgYm9vbCBtX2ZyYW1lSGFzQ3VzdG9tUmVw
cmVzZW50YXRpb247CiAgICAgYm9vbCBtX2ZyYW1lQ2FtZUZyb21QYWdlQ2FjaGU7CiB9OwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwIGIv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCmluZGV4IDYxZTgy
YjVkOTYyNDkzZDM4YzRmNDUwMmQ2Yjg1OGNmODBlOWU1ZjYuLjFiZDZmNDc4YjUyYjM0YTU2MWQ5
OTkxZDA2MzQ1NTBkMjFlYjM1MTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViUGFnZS9XZWJQYWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViUGFnZS5jcHAKQEAgLTE3OTAsNiArMTc5MCwyMiBAQCB2b2lkIFdlYlBhZ2U6OmRp
ZFJlY2VpdmVQb2xpY3lEZWNpc2lvbih1aW50NjRfdCBmcmFtZUlELCB1aW50NjRfdCBsaXN0ZW5l
cklELCB1aQogICAgIGZyYW1lLT5kaWRSZWNlaXZlUG9saWN5RGVjaXNpb24obGlzdGVuZXJJRCwg
c3RhdGljX2Nhc3Q8UG9saWN5QWN0aW9uPihwb2xpY3lBY3Rpb24pLCBkb3dubG9hZElEKTsKIH0K
IAordm9pZCBXZWJQYWdlOjpkaWRTdGFydFBhZ2VUcmFuc2l0aW9uKCkKK3sKKyAgICBtX2RyYXdp
bmdBcmVhLT5zZXRMYXllclRyZWVTdGF0ZUlzRnJvemVuKHRydWUpOworfQorCit2b2lkIFdlYlBh
Z2U6OmRpZENvbXBsZXRlUGFnZVRyYW5zaXRpb24oKQoreworI2lmIFBMQVRGT1JNKFFUKQorICAg
IGlmIChtX21haW5GcmFtZS0+Y29yZUZyYW1lKCktPnZpZXcoKS0+ZGVsZWdhdGVzU2Nyb2xsaW5n
KCkpCisgICAgICAgIC8vIFdhaXQgdW50aWwgdGhlIFVJIHByb2Nlc3Mgc2VudCB1cyB0aGUgdmlz
aWJsZSByZWN0IGl0IHdhbnRzIHJlbmRlcmVkLgorICAgICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQ
YWdlUHJveHk6OlBhZ2VUcmFuc2l0aW9uVmlld3BvcnRSZWFkeSgpKTsKKyAgICBlbHNlCisjZW5k
aWYKKyAgICAgICAgbV9kcmF3aW5nQXJlYS0+c2V0TGF5ZXJUcmVlU3RhdGVJc0Zyb3plbihmYWxz
ZSk7Cit9CisKIHZvaWQgV2ViUGFnZTo6c2hvdygpCiB7CiAgICAgc2VuZChNZXNzYWdlczo6V2Vi
UGFnZVByb3h5OjpTaG93UGFnZSgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBh
Z2UvV2ViUGFnZS5oCmluZGV4IGZhZGQzYmQ3ZmYxMWFmMDZiODhjYjEzMDE5NGUyNWMwNmE3MjJk
NWQuLmNhMzRkMzc1ZTE4Mjg0NGJmYTZlNzdjZWIzYjNlOGMyZmI5N2IxMzQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgKKysrIGIvU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaApAQCAtMjEzLDYgKzIxMyw4IEBA
IHB1YmxpYzoKICAgICBib29sIGhhbmRsZUVkaXRpbmdLZXlib2FyZEV2ZW50KFdlYkNvcmU6Oktl
eWJvYXJkRXZlbnQqKTsKICNlbmRpZgogCisgICAgdm9pZCBkaWRTdGFydFBhZ2VUcmFuc2l0aW9u
KCk7CisgICAgdm9pZCBkaWRDb21wbGV0ZVBhZ2VUcmFuc2l0aW9uKCk7CiAgICAgdm9pZCBzaG93
KCk7CiAgICAgU3RyaW5nIHVzZXJBZ2VudCgpIGNvbnN0IHsgcmV0dXJuIG1fdXNlckFnZW50OyB9
CiAgICAgV2ViQ29yZTo6SW50UmVjdCB3aW5kb3dSZXNpemVyUmVjdCgpIGNvbnN0OwpAQCAtNDE2
LDYgKzQxOCw3IEBAIHB1YmxpYzoKICNlbmRpZgogCiAjaWYgUExBVEZPUk0oUVQpCisgICAgdm9p
ZCBjb21taXRQYWdlVHJhbnNpdGlvblZpZXdwb3J0KCk7CiAgICAgdm9pZCBzZXRDb21wb3NpdGlv
bihjb25zdCBTdHJpbmcmIHRleHQsIFZlY3RvcjxXZWJDb3JlOjpDb21wb3NpdGlvblVuZGVybGlu
ZT4gdW5kZXJsaW5lcywgdWludDY0X3Qgc2VsZWN0aW9uU3RhcnQsIHVpbnQ2NF90IHNlbGVjdGlv
bkVuZCwgdWludDY0X3QgcmVwbGFjZW1lbnRSYW5nZVN0YXJ0LCB1aW50NjRfdCByZXBsYWNlbWVu
dFJhbmdlRW5kKTsKICAgICB2b2lkIGNvbmZpcm1Db21wb3NpdGlvbihjb25zdCBTdHJpbmcmIHRl
eHQsIGludDY0X3Qgc2VsZWN0aW9uU3RhcnQsIGludDY0X3Qgc2VsZWN0aW9uTGVuZ3RoKTsKICAg
ICB2b2lkIGNhbmNlbENvbXBvc2l0aW9uKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9X
ZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluCmluZGV4IGYxMTNmYzI0ZTk0Yjlk
MDI5ZTdjNTRlNmIxMzg3YTkzNjc2MGY1NDUuLmQ5N2FkMzE3ZDM3Nzc3MDM5N2YzNzk5NmZhNDE3
MjJkOTNhYjc5M2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFn
ZS9XZWJQYWdlLm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
UGFnZS9XZWJQYWdlLm1lc3NhZ2VzLmluCkBAIC0yNDQsNiArMjQ0LDcgQEAgbWVzc2FnZXMgLT4g
V2ViUGFnZSB7CiAjZW5kaWYKIAogI2lmIFBMQVRGT1JNKFFUKQorICAgIENvbW1pdFBhZ2VUcmFu
c2l0aW9uVmlld3BvcnQoKQogICAgIFNldENvbXBvc2l0aW9uKFdURjo6U3RyaW5nIHRleHQsIFdU
Rjo6VmVjdG9yPFdlYkNvcmU6OkNvbXBvc2l0aW9uVW5kZXJsaW5lPiB1bmRlcmxpbmVzLCB1aW50
NjRfdCBzZWxlY3Rpb25TdGFydCwgdWludDY0X3Qgc2VsZWN0aW9uRW5kLCB1aW50NjRfdCByZXBs
YWNlbWVudFJhbmdlU3RhcnQsIHVpbnQ2NF90IHJlcGxhY2VtZW50UmFuZ2VFbmQpCiAgICAgQ29u
ZmlybUNvbXBvc2l0aW9uKFdURjo6U3RyaW5nIHRleHQsIGludDY0X3Qgc2VsZWN0aW9uU3RhcnQs
IGludDY0X3Qgc2VsZWN0aW9uTGVuZ3RoKQogICAgIENhbmNlbENvbXBvc2l0aW9uKCkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9xdC9XZWJQYWdlUXQuY3Bw
IGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL3F0L1dlYlBhZ2VRdC5jcHAKaW5k
ZXggZTNmNjAzNGRmMjM3MmQwZDFiMjJjMGUxMWE3MTcxZWY5ZmIwNDFkYi4uMmIyZTEyYjQ4NWI5
ZGE1ZjkyNmRkOWEwOWQwOTE2ZDExMjE2N2E2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJQYWdlL3F0L1dlYlBhZ2VRdC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJQYWdlL3F0L1dlYlBhZ2VRdC5jcHAKQEAgLTMwOCw2ICszMDgsMTEgQEAg
UGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IFdlYlBhZ2U6OmNhY2hlZFJlc3BvbnNlRGF0YUZvclVS
TChjb25zdCBLVVJMJikKICAgICByZXR1cm4gMDsKIH0KIAordm9pZCBXZWJQYWdlOjpjb21taXRQ
YWdlVHJhbnNpdGlvblZpZXdwb3J0KCkKK3sKKyAgICBtX2RyYXdpbmdBcmVhLT5zZXRMYXllclRy
ZWVTdGF0ZUlzRnJvemVuKGZhbHNlKTsKK30KKwogc3RhdGljIEZyYW1lKiB0YXJnZXRGcmFtZUZv
ckVkaXRpbmcoV2ViUGFnZSogcGFnZSkKIHsKICAgICBGcmFtZSogdGFyZ2V0RnJhbWUgPSBwYWdl
LT5jb3JlUGFnZSgpLT5mb2N1c0NvbnRyb2xsZXIoKS0+Zm9jdXNlZE9yTWFpbkZyYW1lKCk7Cg==
</data>
<flag name="review"
          id="178480"
          type_id="1"
          status="+"
          setter="kenneth"
    />
          </attachment>
      

    </bug>

</bugzilla>