<?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>108182</bug_id>
          
          <creation_ts>2013-01-29 05:21:50 -0800</creation_ts>
          <short_desc>REGRESSION (r141051): Broke plugin support on non-Mac WebKit2 Ports</short_desc>
          <delta_ts>2013-01-30 08:59:48 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit2</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>107456</blocked>
    
    <blocked>79668</blocked>
    
    <blocked>108098</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Thiago Marcos P. Santos">tmpsantos</reporter>
          <assigned_to name="Thiago Marcos P. Santos">tmpsantos</assigned_to>
          <cc>abecsi</cc>
    
    <cc>andersca</cc>
    
    <cc>cgarcia</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>gustavo</cc>
    
    <cc>hausmann</cc>
    
    <cc>jturcotte</cc>
    
    <cc>kenneth</cc>
    
    <cc>menard</cc>
    
    <cc>mrobinson</cc>
    
    <cc>ossy</cc>
    
    <cc>sam</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>zarvai</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>818851</commentid>
    <comment_count>0</comment_count>
    <who name="Thiago Marcos P. Santos">tmpsantos</who>
    <bug_when>2013-01-29 05:21:50 -0800</bug_when>
    <thetext>Failing tests on EFL bot:

  http/tests/plugins/create-v8-script-objects.html [ Failure ]
  http/tests/plugins/cross-frame-object-access.html [ Failure ]
  http/tests/plugins/get-url.html [ Failure ]
  http/tests/plugins/geturlnotify-from-npp-destroystream.html [ Failure ]
  http/tests/plugins/interrupted-get-url.html [ Failure ]
  http/tests/plugins/local-geturl-from-remote.html [ Failure ]
  http/tests/plugins/npapi-response-headers.html [ Failure ]
  http/tests/plugins/third-party-cookie-accept-policy.html [ Failure ]
  http/tests/security/contentSecurityPolicy/object-src-none-allowed.html [ Failure ]
  http/tests/security/cross-origin-plugin-allowed.html [ Failure ]
  http/tests/security/cross-origin-plugin-private-browsing-toggled-allowed.html [ Failure ]
  http/tests/security/storage-blocking-loosened-plugin.html [ Failure ]
  http/tests/security/storage-blocking-loosened-private-browsing-plugin.html [ Failure ]
  plugins/destroy-during-npp-new-object-with-fallback-content.html [ Failure ]
  plugins/destroy-during-npp-new.html [ Failure ]
  plugins/destroy-plugin-from-callback.html [ Failure ]
  plugins/destroy-stream-twice.html [ Failure ]
  plugins/document-open.html [ Failure ]
  plugins/embed-inside-object.html [ Failure ]
  plugins/embed-prefers-plugins-for-images.html [ Failure ]
  plugins/form-value.html [ Failure ]
  plugins/fullscreen-plugins-dont-reload.html [ Failure ]
  plugins/get-empty-url.html [ Failure ]
  plugins/get-file-url.html [ Failure ]
  plugins/get-javascript-url.html [ Failure ]
  plugins/get-url-notify-with-url-that-fails-to-load.html [ Failure ]
  plugins/get-url-with-iframe-target.html [ Failure ]
  plugins/get-url-with-javascript-destroying-plugin.html [ Failure ]
  plugins/get-url-with-javascript-url.html [ Failure ]
  plugins/get-user-agent-with-null-npp-from-npp-new.html [ Failure ]
  plugins/geturl-replace-query.html [ Failure ]
  plugins/inner-html-display-none.html [ Failure ]
  plugins/instance-available-before-stylesheets-loaded-object.html [ Failure ]
  plugins/instance-available-before-stylesheets-loaded.html [ Failure ]
  plugins/mouse-click-plugin-clears-selection.html [ Failure ]
  plugins/multiple-plugins.html [ Failure ]
  plugins/nested-plugin-objects.html [ Failure ]
  plugins/netscape-destroy-plugin-script-objects.html [ Failure ]
  plugins/netscape-dom-access.html [ Failure ]
  plugins/netscape-plugin-map-data-to-src.html [ Failure ]
  plugins/netscape-plugin-property-access-exception.html [ Failure ]
  plugins/npruntime/construct.html [ Failure ]
  plugins/npruntime/delete-plugin-within-invoke.html [ Failure ]
  plugins/npruntime/embed-property.html [ Failure ]
  plugins/npruntime/enumerate.html [ Failure ]
  plugins/npruntime/evaluate.html [ Failure ]
  plugins/npruntime/get-int-identifier-special-values.html [ Failure ]
  plugins/npruntime/get-property-return-value.html [ Failure ]
  plugins/npruntime/identifier-conversion.html [ Failure ]
  plugins/npruntime/invoke-browserfuncs.html [ Failure ]
  plugins/npruntime/invoke-default.html [ Failure ]
  plugins/npruntime/invoke-failure.html [ Failure ]
  plugins/npruntime/invoke.html [ Failure ]
  plugins/npruntime/npruntime-calls-with-null-npp.html [ Failure ]
  plugins/npruntime/npruntime.html [ Failure ]
  plugins/npruntime/object-from-destroyed-plugin-in-subframe.html [ Failure ]
  plugins/npruntime/object-from-destroyed-plugin.html [ Failure ]
  plugins/npruntime/overrides-all-properties.html [ Failure ]
  plugins/npruntime/remove-property.html [ Failure ]
  plugins/npruntime/round-trip-npobject.html [ Failure ]
  plugins/npruntime/throw-exception.html [ Failure ]
  plugins/object-embed-plugin-scripting.html [ Failure ]
  plugins/override-node-method.html [ Failure ]
  plugins/plugin-document-back-forward.html [ Failure ]
  plugins/plugin-remove-subframe.html [ Failure ]
  plugins/private-browsing-mode-2.html [ Failure ]
  plugins/private-browsing-mode.html [ Failure ]
  plugins/reloadplugins-no-pages.html [ Failure ]
  plugins/resize-from-plugin.html [ Failure ]
  plugins/return-error-from-new-stream-doesnt-invoke-destroy-stream.html [ Failure ]
  plugins/return-negative-one-from-write.html [ Failure ]
  plugins/return-npobject.html [ Failure ]
  plugins/script-object-invoke.html [ Failure ]
  plugins/update-widgets-crash.html [ Failure ]
  plugins/window-open.html [ Failure ]</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>818870</commentid>
    <comment_count>1</comment_count>
    <who name="Zoltan Arvai">zarvai</who>
    <bug_when>2013-01-29 05:52:09 -0800</bug_when>
    <thetext>Also on Qt5
http://build.webkit.sed.hu/results/x86-64%20Linux%20Qt%20Release%20WebKit2%20%28Amazon%20EC2%29/r141093%20%2813137%29/results.html

Failing tests on Qt5-WK2:

plugins/destroy-during-npp-new-object-with-fallback-content.html
plugins/destroy-during-npp-new.html
plugins/destroy-plugin-from-callback.html
plugins/fullscreen-plugins-dont-reload.html
plugins/get-empty-url.html
plugins/get-user-agent-with-null-npp-from-npp-new.html
plugins/inner-html-display-none.html
plugins/instance-available-before-stylesheets-loaded-object.html
plugins/instance-available-before-stylesheets-loaded.html
plugins/multiple-plugins.html
plugins/nested-plugin-objects.html
plugins/netscape-destroy-plugin-script-objects.html
plugins/netscape-plugin-map-data-to-src.html
plugins/netscape-plugin-property-access-exception.html
plugins/npruntime/construct.html
plugins/npruntime/embed-property.html
plugins/npruntime/enumerate.html
plugins/npruntime/evaluate.html
plugins/npruntime/get-int-identifier-special-values.html
plugins/npruntime/get-property-return-value.html
plugins/npruntime/identifier-conversion.html
plugins/npruntime/invoke-browserfuncs.html
plugins/npruntime/invoke-default.html
plugins/npruntime/invoke-failure.html
plugins/npruntime/invoke.html
plugins/npruntime/npruntime-calls-with-null-npp.html
plugins/npruntime/npruntime.html
plugins/npruntime/overrides-all-properties.html
plugins/npruntime/remove-property.html
plugins/npruntime/round-trip-npobject.html
plugins/npruntime/throw-exception.html
plugins/object-embed-plugin-scripting.html
plugins/override-node-method.html
plugins/plugin-remove-subframe.html
plugins/private-browsing-mode-2.html
plugins/private-browsing-mode.html
plugins/reloadplugins-no-pages.html
plugins/return-error-from-new-stream-doesnt-invoke-destroy-stream.html
plugins/return-negative-one-from-write.html
plugins/return-npobject.html
plugins/script-object-invoke.html
plugins/update-widgets-crash.html
plugins/window-open.html

Timeouting tests on Qt5-WK2:

plugins/get-targeted-javascript-url.html
plugins/get-url-with-javascript-destroying-plugin.html
plugins/destroy-stream-twice.html
plugins/get-url-with-javascript-url.html
plugins/get-javascript-url.html
plugins/get-url-notify-with-url-that-fails-to-load.html
plugins/get-file-url.html
plugins/get-url-with-iframe-target.html
plugins/geturl-replace-query.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>818987</commentid>
    <comment_count>2</comment_count>
    <who name="Thiago Marcos P. Santos">tmpsantos</who>
    <bug_when>2013-01-29 08:49:47 -0800</bug_when>
    <thetext>Fix is on the way.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>819027</commentid>
    <comment_count>3</comment_count>
      <attachid>185255</attachid>
    <who name="Thiago Marcos P. Santos">tmpsantos</who>
    <bug_when>2013-01-29 09:49:39 -0800</bug_when>
    <thetext>Created attachment 185255
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>819070</commentid>
    <comment_count>4</comment_count>
      <attachid>185255</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2013-01-29 10:26:43 -0800</bug_when>
    <thetext>Comment on attachment 185255
Patch

Can any of the WebKit2 owners review this patch? It&apos;s a test regression fix.

This is one workable approach, the other would be to introduce a way of passing extra initialization data for the other ports.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>819073</commentid>
    <comment_count>5</comment_count>
    <who name="Thiago Marcos P. Santos">tmpsantos</who>
    <bug_when>2013-01-29 10:30:45 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 185255 [details])
&gt; Can any of the WebKit2 owners review this patch? It&apos;s a test regression fix.
&gt; 
&gt; This is one workable approach, the other would be to introduce a way of passing extra initialization data for the other ports.

The extra initialization data is only needed (so far) by Mac. This patch also moves it to inside the PLATFORM(MAC) boundaries.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>819085</commentid>
    <comment_count>6</comment_count>
      <attachid>185255</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-01-29 10:37:38 -0800</bug_when>
    <thetext>Comment on attachment 185255
Patch

This isn&apos;t the right approach. ProcessLauncher should support passing the extra initialization data along to the child process. See the part in createProcess in ProcessLauncherMac, where we iterate over the extraInitializationData map and create arguments.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>819259</commentid>
    <comment_count>7</comment_count>
    <who name="Thiago Marcos P. Santos">tmpsantos</who>
    <bug_when>2013-01-29 13:11:26 -0800</bug_when>
    <thetext>(In reply to comment #6)
&gt; (From update of attachment 185255 [details])
&gt; This isn&apos;t the right approach. ProcessLauncher should support passing the extra initialization data along to the child process. See the part in createProcess in ProcessLauncherMac, where we iterate over the extraInitializationData map and create arguments.

That could be done (and was my initial approach to be honest), but wont solve the problem for all the !mac platforms at once, since each port has its own ProcessLauncher.

This is what motivated me to basically restoring the original behavior on this patch. It is also worth mentioning that extraInitializationData is only needed by Mac.

Could you please reconsider? Maybe we could land this patch and give time to each port migrate their ProcessLauncher to the solution you are suggesting.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>819541</commentid>
    <comment_count>8</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2013-01-29 17:12:58 -0800</bug_when>
    <thetext>(In reply to comment #7)
&gt; (In reply to comment #6)
&gt; &gt; (From update of attachment 185255 [details] [details])
&gt; &gt; This isn&apos;t the right approach. ProcessLauncher should support passing the extra initialization data along to the child process. See the part in createProcess in ProcessLauncherMac, where we iterate over the extraInitializationData map and create arguments.
&gt; 
&gt; That could be done (and was my initial approach to be honest), but wont solve the problem for all the !mac platforms at once, since each port has its own ProcessLauncher.
&gt; 
&gt; This is what motivated me to basically restoring the original behavior on this patch. It is also worth mentioning that extraInitializationData is only needed by Mac.
&gt; 
&gt; Could you please reconsider? Maybe we could land this patch and give time to each port migrate their ProcessLauncher to the solution you are suggesting.

You should not feel compelled to fix this for all the ports.  As mentioned in the past, the intent of our new review model is to allow these exact type of change, so I we are not going to reconsider this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>819943</commentid>
    <comment_count>9</comment_count>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2013-01-30 01:29:15 -0800</bug_when>
    <thetext>(In reply to comment #8)
&gt; You should not feel compelled to fix this for all the ports. 

I think that we should try to make an effort to fix this for all the ports, because there is an opportunity of reducing or avoiding duplicated code.

Thiago, what if for Gtk/Efl/Qt we translate the extra initialization data dictionary into environment variables to the launched process and then in the launched process iterate over the environment and get the values back?

I guess that could be shared code because only PLATFORM(MAC) is using XPC and everyone else is using a regular child process.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>819963</commentid>
    <comment_count>10</comment_count>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2013-01-30 01:50:35 -0800</bug_when>
    <thetext>(In reply to comment #9)
&gt; (In reply to comment #8)
&gt; &gt; You should not feel compelled to fix this for all the ports. 
&gt; 
&gt; I think that we should try to make an effort to fix this for all the ports, because there is an opportunity of reducing or avoiding duplicated code.
&gt; 
&gt; Thiago, what if for Gtk/Efl/Qt we translate the extra initialization data dictionary into environment variables to the launched process and then in the launched process iterate over the environment and get the values back?
&gt; 
&gt; I guess that could be shared code because only PLATFORM(MAC) is using XPC and everyone else is using a regular child process.

Oops, I just found out that on Windows environment variable names are case insensitive. That could be an issue. Perhaps we can agree on only using lower-case strings for the keys?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>820211</commentid>
    <comment_count>11</comment_count>
      <attachid>185507</attachid>
    <who name="Thiago Marcos P. Santos">tmpsantos</who>
    <bug_when>2013-01-30 08:01:03 -0800</bug_when>
    <thetext>Created attachment 185507
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>820246</commentid>
    <comment_count>12</comment_count>
    <who name="Thiago Marcos P. Santos">tmpsantos</who>
    <bug_when>2013-01-30 08:59:48 -0800</bug_when>
    <thetext>Committed r141275: &lt;http://trac.webkit.org/changeset/141275&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>185255</attachid>
            <date>2013-01-29 09:49:39 -0800</date>
            <delta_ts>2013-01-30 08:00:58 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-108182-20130129195141.patch</filename>
            <type>text/plain</type>
            <size>15163</size>
            <attacher name="Thiago Marcos P. Santos">tmpsantos</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxMTIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggMjRkNWVjZTFiYTVmNThm
ZmUzNDY2OGE5OTBlMjA4ZDBjMmNmM2E4OS4uNzEzNWJmM2Y3ZTAwZWE4MTAzMWRmOTJlYjE5Yjk3
NjQxODRjNmZmOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM5IEBACisyMDEzLTAxLTI5ICBUaGlh
Z28gTWFyY29zIFAuIFNhbnRvcyAgPHRoaWFnby5zYW50b3NAaW50ZWwuY29tPgorCisgICAgICAg
IFJFR1JFU1NJT04gKHIxNDEwNTEpOiBCcm9rZSBwbHVnaW4gc3VwcG9ydCBvbiBub24tTWFjIFdl
YktpdDIgUG9ydHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTEwODE4MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFNlbmQgdGhlIHBsdWdpbiBwYXRoIHRvIHRoZSBQbHVnaW5Qcm9jZXNzIHVzaW5nIGNvbnZl
bnRpb25hbCBXZWJLaXQyIElQQworICAgICAgICBvbiBwbGF0Zm9ybXMgb3RoZXIgdGhhbiBNYWMs
IHNpbmNlIHRoZXkgZG9uJ3QgaGF2ZSBYUEMgc3VwcG9ydC4KKworICAgICAgICAqIFBsdWdpblBy
b2Nlc3MvUGx1Z2luUHJvY2Vzcy5jcHA6CisgICAgICAgIChXZWJLaXQ6OlBsdWdpblByb2Nlc3M6
OmluaXRpYWxpemVQcm9jZXNzKToKKyAgICAgICAgKiBQbHVnaW5Qcm9jZXNzL21hYy9QbHVnaW5Q
cm9jZXNzTWFjLm1tOgorICAgICAgICAoV2ViS2l0OjpQbHVnaW5Qcm9jZXNzOjpwbGF0Zm9ybUlu
aXRpYWxpemVQcm9jZXNzKToKKyAgICAgICAgKiBQbHVnaW5Qcm9jZXNzL3F0L1BsdWdpblByb2Nl
c3NRdC5jcHA6CisgICAgICAgIChXZWJLaXQ6OlBsdWdpblByb2Nlc3M6OnBsYXRmb3JtSW5pdGlh
bGl6ZVBsdWdpblByb2Nlc3MpOgorICAgICAgICAqIFBsdWdpblByb2Nlc3MvdW5peC9QbHVnaW5Q
cm9jZXNzVW5peC5jcHA6CisgICAgICAgIChXZWJLaXQ6OlBsdWdpblByb2Nlc3M6OnBsYXRmb3Jt
SW5pdGlhbGl6ZVBsdWdpblByb2Nlc3MpOgorICAgICAgICAqIFNoYXJlZC9QbHVnaW5zL1BsdWdp
blByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuY3BwOgorICAgICAgICAoV2ViS2l0OjpQbHVnaW5Q
cm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzOjplbmNvZGUpOgorICAgICAgICAoV2ViS2l0OjpQbHVn
aW5Qcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzOjpkZWNvZGUpOgorICAgICAgICAqIFNoYXJlZC9Q
bHVnaW5zL1BsdWdpblByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaDoKKyAgICAgICAgKFBsdWdp
blByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMpOgorICAgICAgICAqIFVJUHJvY2Vzcy9MYXVuY2hl
ci9Qcm9jZXNzTGF1bmNoZXIuaDoKKyAgICAgICAgKExhdW5jaE9wdGlvbnMpOgorICAgICAgICAq
IFVJUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblByb2Nlc3NQcm94eS5jcHA6CisgICAgICAgIChXZWJL
aXQ6OlBsdWdpblByb2Nlc3NQcm94eTo6ZGlkRmluaXNoTGF1bmNoaW5nKToKKyAgICAgICAgKiBV
SVByb2Nlc3MvUGx1Z2lucy9QbHVnaW5Qcm9jZXNzUHJveHkuaDoKKyAgICAgICAgKFBsdWdpblBy
b2Nlc3NQcm94eSk6CisgICAgICAgICogVUlQcm9jZXNzL1BsdWdpbnMvbWFjL1BsdWdpblByb2Nl
c3NQcm94eU1hYy5tbToKKyAgICAgICAgKFdlYktpdDo6UGx1Z2luUHJvY2Vzc1Byb3h5OjpwbGF0
Zm9ybUluaXRpYWxpemVQbHVnaW5Qcm9jZXNzKToKKyAgICAgICAgKiBVSVByb2Nlc3MvUGx1Z2lu
cy9xdC9QbHVnaW5Qcm9jZXNzUHJveHlRdC5jcHA6CisgICAgICAgIChXZWJLaXQ6OlBsdWdpblBy
b2Nlc3NQcm94eTo6cGxhdGZvcm1Jbml0aWFsaXplUGx1Z2luUHJvY2Vzcyk6CisgICAgICAgICog
VUlQcm9jZXNzL1BsdWdpbnMvdW5peC9QbHVnaW5Qcm9jZXNzUHJveHlVbml4LmNwcDoKKyAgICAg
ICAgKFdlYktpdDo6UGx1Z2luUHJvY2Vzc1Byb3h5OjpwbGF0Zm9ybUluaXRpYWxpemVQbHVnaW5Q
cm9jZXNzKToKKwogMjAxMy0wMS0yOSAgR3J6ZWdvcnogQ3phamtvd3NraSAgPGcuY3phamtvd3Nr
aUBzYW1zdW5nLmNvbT4KIAogICAgICAgICBbRUZMXSBVbmlmaWVkIHRleHQgY2hlY2tlciBpbXBs
ZW1lbnRhdGlvbi4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1BsdWdpblByb2Nlc3MvUGx1
Z2luUHJvY2Vzcy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9QbHVnaW5Qcm9jZXNzL1BsdWdpblByb2Nl
c3MuY3BwCmluZGV4IDI2ZGRjNDAxY2FhMTgwNjc3NDM0MjFlNDNhNzdhMmE0YWI0ODY1ZDAuLjA1
NjliZDM0ZTcyNGY2YmNmZjU3NDc1Mjc5YTIzMmE5ZjQ2OWU0ZTEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQyL1BsdWdpblByb2Nlc3MvUGx1Z2luUHJvY2Vzcy5jcHAKKysrIGIvU291cmNlL1dl
YktpdDIvUGx1Z2luUHJvY2Vzcy9QbHVnaW5Qcm9jZXNzLmNwcApAQCAtODcsNyArODcsNiBAQCBQ
bHVnaW5Qcm9jZXNzOjp+UGx1Z2luUHJvY2VzcygpCiAKIHZvaWQgUGx1Z2luUHJvY2Vzczo6aW5p
dGlhbGl6ZVByb2Nlc3MoY29uc3QgQ2hpbGRQcm9jZXNzSW5pdGlhbGl6YXRpb25QYXJhbWV0ZXJz
JiBwYXJhbWV0ZXJzKQogewotICAgIG1fcGx1Z2luUGF0aCA9IHBhcmFtZXRlcnMuZXh0cmFJbml0
aWFsaXphdGlvbkRhdGEuZ2V0KCJwbHVnaW4tcGF0aCIpOwogICAgIHBsYXRmb3JtSW5pdGlhbGl6
ZVByb2Nlc3MocGFyYW1ldGVycyk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1Bs
dWdpblByb2Nlc3MvbWFjL1BsdWdpblByb2Nlc3NNYWMubW0gYi9Tb3VyY2UvV2ViS2l0Mi9QbHVn
aW5Qcm9jZXNzL21hYy9QbHVnaW5Qcm9jZXNzTWFjLm1tCmluZGV4IDBhZTFmMDIyNjE5NTEwZTAw
NTMxZDNiZDJkODEyMDdiNWZlN2RiNzYuLmI2MjRjZTZjNDI3OGNmMDVkMGEzOWVlODk4NzExMDA2
ZjU0N2Y0ODkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1BsdWdpblByb2Nlc3MvbWFjL1Bs
dWdpblByb2Nlc3NNYWMubW0KKysrIGIvU291cmNlL1dlYktpdDIvUGx1Z2luUHJvY2Vzcy9tYWMv
UGx1Z2luUHJvY2Vzc01hYy5tbQpAQCAtMzMyLDYgKzMzMiw4IEBAIHZvaWQgUGx1Z2luUHJvY2Vz
czo6cGxhdGZvcm1Jbml0aWFsaXplUGx1Z2luUHJvY2Vzcyhjb25zdCBQbHVnaW5Qcm9jZXNzQ3Jl
YXRpb25QCiAKIHZvaWQgUGx1Z2luUHJvY2Vzczo6cGxhdGZvcm1Jbml0aWFsaXplUHJvY2Vzcyhj
b25zdCBDaGlsZFByb2Nlc3NJbml0aWFsaXphdGlvblBhcmFtZXRlcnMmIHBhcmFtZXRlcnMpCiB7
CisgICAgbV9wbHVnaW5QYXRoID0gcGFyYW1ldGVycy5leHRyYUluaXRpYWxpemF0aW9uRGF0YS5n
ZXQoInBsdWdpbi1wYXRoIik7CisKICNpZiBkZWZpbmVkKF9faTM4Nl9fKQogICAgIC8vIEluaXRp
YWxpemUgdGhlIHNoaW0uCiAgICAgaW5pdGlhbGl6ZVNoaW0oKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQyL1BsdWdpblByb2Nlc3MvcXQvUGx1Z2luUHJvY2Vzc1F0LmNwcCBiL1NvdXJjZS9X
ZWJLaXQyL1BsdWdpblByb2Nlc3MvcXQvUGx1Z2luUHJvY2Vzc1F0LmNwcAppbmRleCBmM2JlMWFk
YTJjZTE1NzdlZGI5YmFlNjIyNDY3MjQ5NTkwODQzOTlmLi5kYTdjMzA5NjYyZWY0NTE3ZGVjMTBh
MTczZmI1YTIzOTI1OWY1ZWJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9QbHVnaW5Qcm9j
ZXNzL3F0L1BsdWdpblByb2Nlc3NRdC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvUGx1Z2luUHJv
Y2Vzcy9xdC9QbHVnaW5Qcm9jZXNzUXQuY3BwCkBAIC0zOCw5ICszOCw5IEBAIHZvaWQgUGx1Z2lu
UHJvY2Vzczo6cGxhdGZvcm1Jbml0aWFsaXplUHJvY2Vzcyhjb25zdCBDaGlsZFByb2Nlc3NJbml0
aWFsaXphdGlvblBhCiB7CiB9CiAKLXZvaWQgUGx1Z2luUHJvY2Vzczo6cGxhdGZvcm1Jbml0aWFs
aXplUGx1Z2luUHJvY2Vzcyhjb25zdCBQbHVnaW5Qcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzJikK
K3ZvaWQgUGx1Z2luUHJvY2Vzczo6cGxhdGZvcm1Jbml0aWFsaXplUGx1Z2luUHJvY2Vzcyhjb25z
dCBQbHVnaW5Qcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzJiBwYXJhbWV0ZXJzKQogewotICAgIG5v
dEltcGxlbWVudGVkKCk7CisgICAgbV9wbHVnaW5QYXRoID0gcGFyYW1ldGVycy5wbHVnaW5QYXRo
OwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L1BsdWdpblByb2Nlc3MvdW5peC9QbHVnaW5Qcm9jZXNzVW5peC5jcHAgYi9Tb3VyY2UvV2ViS2l0
Mi9QbHVnaW5Qcm9jZXNzL3VuaXgvUGx1Z2luUHJvY2Vzc1VuaXguY3BwCmluZGV4IDQzZWI4ODQ4
YjQ4OWE3Y2U5ZjVhNGZkZTNmNDBkODI5NGZjODQzOTYuLjkzYTdkMWJmZWU2ODAzOWVhNDZlZGQy
ZGY4NDZhYjAyYmQ4MTlkZDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1BsdWdpblByb2Nl
c3MvdW5peC9QbHVnaW5Qcm9jZXNzVW5peC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvUGx1Z2lu
UHJvY2Vzcy91bml4L1BsdWdpblByb2Nlc3NVbml4LmNwcApAQCAtMzcsOSArMzcsOSBAQCB2b2lk
IFBsdWdpblByb2Nlc3M6OnBsYXRmb3JtSW5pdGlhbGl6ZVByb2Nlc3MoY29uc3QgQ2hpbGRQcm9j
ZXNzSW5pdGlhbGl6YXRpb25QYQogewogfQogCi12b2lkIFBsdWdpblByb2Nlc3M6OnBsYXRmb3Jt
SW5pdGlhbGl6ZVBsdWdpblByb2Nlc3MoY29uc3QgUGx1Z2luUHJvY2Vzc0NyZWF0aW9uUGFyYW1l
dGVycyYpCit2b2lkIFBsdWdpblByb2Nlc3M6OnBsYXRmb3JtSW5pdGlhbGl6ZVBsdWdpblByb2Nl
c3MoY29uc3QgUGx1Z2luUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycyYgcGFyYW1ldGVycykKIHsK
LSAgICBub3RJbXBsZW1lbnRlZCgpOworICAgIG1fcGx1Z2luUGF0aCA9IHBhcmFtZXRlcnMucGx1
Z2luUGF0aDsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9TaGFyZWQvUGx1Z2lucy9QbHVnaW5Qcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmNw
cCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9QbHVnaW5zL1BsdWdpblByb2Nlc3NDcmVhdGlvblBh
cmFtZXRlcnMuY3BwCmluZGV4IGUxMWZjOGQyYjdmYjljM2YyZWEyYWE0MzMwZDE3NDU2ODY5MzRh
MGQuLmU3OWYwNTQ0ZmUwMWRiYmY0YzJlMTAyY2E1ZTQ0ZmQ0MzI1ZjFlZjMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9QbHVnaW5zL1BsdWdpblByb2Nlc3NDcmVhdGlvblBhcmFt
ZXRlcnMuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9QbHVnaW5zL1BsdWdpblByb2Nl
c3NDcmVhdGlvblBhcmFtZXRlcnMuY3BwCkBAIC0zOSw2ICszOSw5IEBAIFBsdWdpblByb2Nlc3ND
cmVhdGlvblBhcmFtZXRlcnM6OlBsdWdpblByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMoKQogCiB2
b2lkIFBsdWdpblByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM6OmVuY29kZShDb3JlSVBDOjpBcmd1
bWVudEVuY29kZXImIGVuY29kZXIpIGNvbnN0CiB7CisjaWYgIVBMQVRGT1JNKE1BQykKKyAgICBl
bmNvZGVyIDw8IHBsdWdpblBhdGg7CisjZW5kaWYKICAgICBlbmNvZGVyLmVuY29kZUVudW0ocHJv
Y2Vzc1R5cGUpOwogICAgIGVuY29kZXIgPDwgc3VwcG9ydHNBc3luY2hyb25vdXNQbHVnaW5Jbml0
aWFsaXphdGlvbjsKICAgICBlbmNvZGVyIDw8IG1pbmltdW1MaWZldGltZTsKQEAgLTUwLDYgKzUz
LDEwIEBAIHZvaWQgUGx1Z2luUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVyczo6ZW5jb2RlKENvcmVJ
UEM6OkFyZ3VtZW50RW5jb2RlciYgZW5jb2RlcikKIAogYm9vbCBQbHVnaW5Qcm9jZXNzQ3JlYXRp
b25QYXJhbWV0ZXJzOjpkZWNvZGUoQ29yZUlQQzo6QXJndW1lbnREZWNvZGVyKiBkZWNvZGVyLCBQ
bHVnaW5Qcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzJiByZXN1bHQpCiB7CisjaWYgIVBMQVRGT1JN
KE1BQykKKyAgICBpZiAoIWRlY29kZXItPmRlY29kZShyZXN1bHQucGx1Z2luUGF0aCkpCisgICAg
ICAgIHJldHVybiBmYWxzZTsKKyNlbmRpZgogICAgIGlmICghZGVjb2Rlci0+ZGVjb2RlRW51bShy
ZXN1bHQucHJvY2Vzc1R5cGUpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgaWYgKCFkZWNv
ZGVyLT5kZWNvZGUocmVzdWx0LnN1cHBvcnRzQXN5bmNocm9ub3VzUGx1Z2luSW5pdGlhbGl6YXRp
b24pKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1BsdWdpbnMvUGx1Z2luUHJv
Y2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1BsdWdpbnMv
UGx1Z2luUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oCmluZGV4IDM2MTgxZTI0NmNkYzAzNDY2
NThmMDkyMWI0NmMxYjY1ZGM1M2NmY2IuLmVkZGIxM2U2MTk3NDg5ZTdkNGRhNWViYjAyMGZlNzhi
MGRlZDhjZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9QbHVnaW5zL1BsdWdp
blByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
UGx1Z2lucy9QbHVnaW5Qcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmgKQEAgLTQ3LDYgKzQ3LDEw
IEBAIHN0cnVjdCBQbHVnaW5Qcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzIHsKICAgICB2b2lkIGVu
Y29kZShDb3JlSVBDOjpBcmd1bWVudEVuY29kZXImKSBjb25zdDsKICAgICBzdGF0aWMgYm9vbCBk
ZWNvZGUoQ29yZUlQQzo6QXJndW1lbnREZWNvZGVyKiwgUGx1Z2luUHJvY2Vzc0NyZWF0aW9uUGFy
YW1ldGVycyYpOwogCisjaWYgIVBMQVRGT1JNKE1BQykKKyAgICBTdHJpbmcgcGx1Z2luUGF0aDsK
KyNlbmRpZgorCiAgICAgUGx1Z2luUHJvY2Vzczo6VHlwZSBwcm9jZXNzVHlwZTsKICAgICBib29s
IHN1cHBvcnRzQXN5bmNocm9ub3VzUGx1Z2luSW5pdGlhbGl6YXRpb247CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9MYXVuY2hlci9Qcm9jZXNzTGF1bmNoZXIuaCBiL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9MYXVuY2hlci9Qcm9jZXNzTGF1bmNoZXIuaAppbmRleCA4
NTQ2N2VlNDRiM2MxZGNmYTNmODgzZDE5YTgzOGI5MWM4MjEzZWUwLi44YTZlNzMxYjExYTAzOGZh
NGViMzBhMWNlMWZmNjUzMzY3MDg0MmMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvTGF1bmNoZXIvUHJvY2Vzc0xhdW5jaGVyLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0xhdW5jaGVyL1Byb2Nlc3NMYXVuY2hlci5oCkBAIC02MCw4ICs2MCw4IEBAIHB1Ymxp
YzoKIAogICAgIHN0cnVjdCBMYXVuY2hPcHRpb25zIHsKICAgICAgICAgUHJvY2Vzc1R5cGUgcHJv
Y2Vzc1R5cGU7Ci0gICAgICAgIEhhc2hNYXA8U3RyaW5nLCBTdHJpbmc+IGV4dHJhSW5pdGlhbGl6
YXRpb25EYXRhOwogI2lmIFBMQVRGT1JNKE1BQykKKyAgICAgICAgSGFzaE1hcDxTdHJpbmcsIFN0
cmluZz4gZXh0cmFJbml0aWFsaXphdGlvbkRhdGE7CiAgICAgICAgIHN0YXRpYyBjb25zdCBjcHVf
dHlwZV90IE1hdGNoQ3VycmVudEFyY2hpdGVjdHVyZSA9IDA7CiAgICAgICAgIGNwdV90eXBlX3Qg
YXJjaGl0ZWN0dXJlOwogICAgICAgICBib29sIGV4ZWN1dGFibGVIZWFwOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1BsdWdpbnMvUGx1Z2luUHJvY2Vzc1Byb3h5LmNwcCBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblByb2Nlc3NQcm94eS5jcHAK
aW5kZXggNTkxMzU1NWZlMWU4MGQ1ZjVlNWQwNTU3N2EzNzQyYjA5OTNjOWE2Mi4uODM1ZjUyZGE2
M2M1ZDQwNzUyNWI2NzA3YWMzZjBlMDQwYmIwY2YxYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL1BsdWdpbnMvUGx1Z2luUHJvY2Vzc1Byb3h5LmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvUGx1Z2lucy9QbHVnaW5Qcm9jZXNzUHJveHkuY3BwCkBAIC0yMDYs
NyArMjA2LDcgQEAgdm9pZCBQbHVnaW5Qcm9jZXNzUHJveHk6OmRpZEZpbmlzaExhdW5jaGluZyhQ
cm9jZXNzTGF1bmNoZXIqLCBDb3JlSVBDOjpDb25uZWN0aW8KICAgICBwYXJhbWV0ZXJzLnByb2Nl
c3NUeXBlID0gbV9wcm9jZXNzVHlwZTsKICAgICBwYXJhbWV0ZXJzLm1pbmltdW1MaWZldGltZSA9
IG1pbmltdW1MaWZldGltZTsKICAgICBwYXJhbWV0ZXJzLnRlcm1pbmF0aW9uVGltZW91dCA9IHNo
dXRkb3duVGltZW91dDsKLSAgICBwbGF0Zm9ybUluaXRpYWxpemVQbHVnaW5Qcm9jZXNzKHBhcmFt
ZXRlcnMpOworICAgIHBsYXRmb3JtSW5pdGlhbGl6ZVBsdWdpblByb2Nlc3MocGFyYW1ldGVycywg
bV9wbHVnaW5JbmZvKTsKIAogICAgIC8vIEluaXRpYWxpemUgdGhlIHBsdWctaW4gaG9zdCBwcm9j
ZXNzLgogICAgIG1fY29ubmVjdGlvbi0+c2VuZChNZXNzYWdlczo6UGx1Z2luUHJvY2Vzczo6SW5p
dGlhbGl6ZVBsdWdpblByb2Nlc3MocGFyYW1ldGVycyksIDApOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL1BsdWdpbnMvUGx1Z2luUHJvY2Vzc1Byb3h5LmggYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvUGx1Z2lucy9QbHVnaW5Qcm9jZXNzUHJveHkuaAppbmRleCAxOTRk
N2EzNzM3NTYzNjJiMWRiYWE0OWUzOWI0NmY5ZjU2ODAxNGZmLi41MzRhMjllMzNjYTM0MjRlMjVj
MzgyZDRjMWU5ODlhMWRhZDRhOTcxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvUGx1Z2lucy9QbHVnaW5Qcm9jZXNzUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvUGx1Z2lucy9QbHVnaW5Qcm9jZXNzUHJveHkuaApAQCAtMTM1LDcgKzEzNSw3IEBAIHBy
aXZhdGU6CiAjZW5kaWYKIAogICAgIHN0YXRpYyB2b2lkIHBsYXRmb3JtSW5pdGlhbGl6ZUxhdW5j
aE9wdGlvbnMoUHJvY2Vzc0xhdW5jaGVyOjpMYXVuY2hPcHRpb25zJiwgY29uc3QgUGx1Z2luTW9k
dWxlSW5mbyYgcGx1Z2luSW5mbyk7Ci0gICAgdm9pZCBwbGF0Zm9ybUluaXRpYWxpemVQbHVnaW5Q
cm9jZXNzKFBsdWdpblByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMmIHBhcmFtZXRlcnMpOworICAg
IHZvaWQgcGxhdGZvcm1Jbml0aWFsaXplUGx1Z2luUHJvY2VzcyhQbHVnaW5Qcm9jZXNzQ3JlYXRp
b25QYXJhbWV0ZXJzJiwgY29uc3QgUGx1Z2luTW9kdWxlSW5mbyYpOwogCiAgICAgLy8gVGhlIHBs
dWctaW4gaG9zdCBwcm9jZXNzIG1hbmFnZXIuCiAgICAgUGx1Z2luUHJvY2Vzc01hbmFnZXIqIG1f
cGx1Z2luUHJvY2Vzc01hbmFnZXI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvUGx1Z2lucy9tYWMvUGx1Z2luUHJvY2Vzc1Byb3h5TWFjLm1tIGIvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL1BsdWdpbnMvbWFjL1BsdWdpblByb2Nlc3NQcm94eU1hYy5tbQppbmRleCBjZGZh
YWRjMTJkYjkzMjYyNmFkMTkwZjkwNmU0N2Q0MWU0ZTQ2OTUzLi42NGNlMzdhMzcwYjY1Mzc1NDY2
YTJmZTBiYzFlYWY3OGYyMDNmYWE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvUGx1Z2lucy9tYWMvUGx1Z2luUHJvY2Vzc1Byb3h5TWFjLm1tCisrKyBiL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9QbHVnaW5zL21hYy9QbHVnaW5Qcm9jZXNzUHJveHlNYWMubW0KQEAgLTE0
OCw3ICsxNDgsNyBAQCB2b2lkIFBsdWdpblByb2Nlc3NQcm94eTo6cGxhdGZvcm1Jbml0aWFsaXpl
TGF1bmNoT3B0aW9ucyhQcm9jZXNzTGF1bmNoZXI6OkxhdW5jaAogI2VuZGlmCiB9CiAKLXZvaWQg
UGx1Z2luUHJvY2Vzc1Byb3h5OjpwbGF0Zm9ybUluaXRpYWxpemVQbHVnaW5Qcm9jZXNzKFBsdWdp
blByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMmIHBhcmFtZXRlcnMpCit2b2lkIFBsdWdpblByb2Nl
c3NQcm94eTo6cGxhdGZvcm1Jbml0aWFsaXplUGx1Z2luUHJvY2VzcyhQbHVnaW5Qcm9jZXNzQ3Jl
YXRpb25QYXJhbWV0ZXJzJiBwYXJhbWV0ZXJzLCBjb25zdCBQbHVnaW5Nb2R1bGVJbmZvJikKIHsK
ICAgICAvLyBGb3Igbm93IG9ubHkgRmxhc2ggaXMga25vd24gdG8gYmVoYXZlIHdpdGggYXN5bmNo
cm9ub3VzIHBsdWctaW4gaW5pdGlhbGl6YXRpb24uCiAgICAgcGFyYW1ldGVycy5zdXBwb3J0c0Fz
eW5jaHJvbm91c1BsdWdpbkluaXRpYWxpemF0aW9uID0gbV9wbHVnaW5JbmZvLmJ1bmRsZUlkZW50
aWZpZXIgPT0gImNvbS5tYWNyb21lZGlhLkZsYXNoIFBsYXllci5wbHVnaW4iOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1BsdWdpbnMvcXQvUGx1Z2luUHJvY2Vzc1Byb3h5
UXQuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1BsdWdpbnMvcXQvUGx1Z2luUHJvY2Vz
c1Byb3h5UXQuY3BwCmluZGV4IGNiNDg4NGQ0Yzc4MjJiMTY2OGU3OGMzZmE4MjlkOGY2ZTJjZDYw
NmUuLjNiZDlmYTk3N2UyZTM4NTUyYmRhNTg3Y2UyMWI1ZWZjNzc2MjI3ZGQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9QbHVnaW5zL3F0L1BsdWdpblByb2Nlc3NQcm94eVF0
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGx1Z2lucy9xdC9QbHVnaW5Qcm9j
ZXNzUHJveHlRdC5jcHAKQEAgLTI4LDYgKzI4LDggQEAKIAogI2lmIEVOQUJMRShQTFVHSU5fUFJP
Q0VTUykKIAorI2luY2x1ZGUgIlBsdWdpbk1vZHVsZUluZm8uaCIKKyNpbmNsdWRlICJQbHVnaW5Q
cm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmgiCiAjaW5jbHVkZSAiUHJvY2Vzc0V4ZWN1dGFibGVQ
YXRoLmgiCiAjaW5jbHVkZSAiUXREZWZhdWx0RGF0YUxvY2F0aW9uLmgiCiAjaW5jbHVkZSA8UUJ5
dGVBcnJheT4KQEAgLTU1LDggKzU3LDkgQEAgdm9pZCBQbHVnaW5Qcm9jZXNzUHJveHk6OnBsYXRm
b3JtSW5pdGlhbGl6ZUxhdW5jaE9wdGlvbnMoUHJvY2Vzc0xhdW5jaGVyOjpMYXVuY2gKIHsKIH0K
IAotdm9pZCBQbHVnaW5Qcm9jZXNzUHJveHk6OnBsYXRmb3JtSW5pdGlhbGl6ZVBsdWdpblByb2Nl
c3MoUGx1Z2luUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycyYpCit2b2lkIFBsdWdpblByb2Nlc3NQ
cm94eTo6cGxhdGZvcm1Jbml0aWFsaXplUGx1Z2luUHJvY2VzcyhQbHVnaW5Qcm9jZXNzQ3JlYXRp
b25QYXJhbWV0ZXJzJiBwYXJhbWV0ZXJzLCBjb25zdCBQbHVnaW5Nb2R1bGVJbmZvJiBwbHVnaW5J
bmZvKQogeworICAgIHBhcmFtZXRlcnMucGx1Z2luUGF0aCA9IHBsdWdpbkluZm8ucGF0aDsKIH0K
IAogc3RhdGljIFBhc3NPd25QdHI8UUZpbGU+IGNhY2hlRmlsZSgpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGx1Z2lucy91bml4L1BsdWdpblByb2Nlc3NQcm94eVVuaXgu
Y3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1BsdWdpbnMvdW5peC9QbHVnaW5Qcm9jZXNz
UHJveHlVbml4LmNwcAppbmRleCBiNTU0ZjUwNGQ2MmQ5ODJhNGI5ZjhmZGE5N2FjODkxNDdlNmJh
YjI1Li43NjVkZGI4NGYzMWM1ZjcxMmFjYjYzMGI3NDIzMmFlMTk0NzhiYzJmIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGx1Z2lucy91bml4L1BsdWdpblByb2Nlc3NQcm94
eVVuaXguY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9QbHVnaW5zL3VuaXgvUGx1
Z2luUHJvY2Vzc1Byb3h5VW5peC5jcHAKQEAgLTU0LDggKzU0LDkgQEAgdm9pZCBQbHVnaW5Qcm9j
ZXNzUHJveHk6OnBsYXRmb3JtSW5pdGlhbGl6ZUxhdW5jaE9wdGlvbnMoUHJvY2Vzc0xhdW5jaGVy
OjpMYXVuY2gKICNlbmRpZgogfQogCi12b2lkIFBsdWdpblByb2Nlc3NQcm94eTo6cGxhdGZvcm1J
bml0aWFsaXplUGx1Z2luUHJvY2VzcyhQbHVnaW5Qcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzJikK
K3ZvaWQgUGx1Z2luUHJvY2Vzc1Byb3h5OjpwbGF0Zm9ybUluaXRpYWxpemVQbHVnaW5Qcm9jZXNz
KFBsdWdpblByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMmIHBhcmFtZXRlcnMsIGNvbnN0IFBsdWdp
bk1vZHVsZUluZm8mIHBsdWdpbkluZm8pCiB7CisgICAgcGFyYW1ldGVycy5wbHVnaW5QYXRoID0g
cGx1Z2luSW5mby5wYXRoOwogfQogCiBib29sIFBsdWdpblByb2Nlc3NQcm94eTo6c2NhblBsdWdp
bihjb25zdCBTdHJpbmcmIHBsdWdpblBhdGgsIFJhd1BsdWdpbk1ldGFEYXRhJiByZXN1bHQpCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cK
aW5kZXggZmRjZWRhZDNkMzc0NDljMDBjYWI5YTdiMWU2MDc2OWI1NDFmYWRjOS4uZDVkOTU5NjYx
OTc4MDIxMGVkZmUwNzE1NDVkZGUzYWJjMGQxNTBlZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisy
MDEzLTAxLTI5ICBUaGlhZ28gTWFyY29zIFAuIFNhbnRvcyAgPHRoaWFnby5zYW50b3NAaW50ZWwu
Y29tPgorCisgICAgICAgIFJFR1JFU1NJT04gKHIxNDEwNTEpOiBCcm9rZSBwbHVnaW4gc3VwcG9y
dCBvbiBub24tTWFjIFdlYktpdDIgUG9ydHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTEwODE4MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFVuc2tpcCBwbHVnaW4gdGVzdHMuCisKKyAgICAgICAgKiBwbGF0
Zm9ybS9lZmwtd2syL1Rlc3RFeHBlY3RhdGlvbnM6CisgICAgICAgICogcGxhdGZvcm0vcXQtNS4w
LXdrMi9UZXN0RXhwZWN0YXRpb25zOgorCiAyMDEzLTAxLTI5ICBBbGV4aXMgTWVuYXJkICA8YWxl
eGlzQHdlYmtpdC5vcmc+CiAKICAgICAgICAgSW1wbGVtZW50IHBzZXVkb0VsZW1lbnQgYXR0cmli
dXRlIG9uIHRyYW5zaXRpb24gRE9NIGV2ZW50cy4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Bs
YXRmb3JtL2VmbC13azIvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2Vm
bC13azIvVGVzdEV4cGVjdGF0aW9ucwppbmRleCBjY2NkNGYzYWMzYjU0NTE2OWRiZmRmMzBhNjZl
ODhhMGFlZmRhMzI1Li5iNjJmZjRjMjk2ZmNiOGE4ZDBkYzdmYTg1MTJkZDhjZjA4MjVjMDRjIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9lZmwtd2syL1Rlc3RFeHBlY3RhdGlvbnMK
KysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZWZsLXdrMi9UZXN0RXhwZWN0YXRpb25zCkBAIC00
MjAsMTYgKzQyMCwzIEBAIHdlYmtpdC5vcmcvYi8xMDcyODYgZmFzdC9jc3Mvc3RpY2t5L3N0aWNr
eS13cml0aW5nLW1vZGUtaG9yaXpvbnRhbC1idC5odG1sIFsgSW1hCiB3ZWJraXQub3JnL2IvMTA3
Mjg2IGZhc3QvY3NzL3N0aWNreS9zdGlja3ktdG9wLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0K
IHdlYmtpdC5vcmcvYi8xMDcyODYgZmFzdC9jc3Mvc3RpY2t5L3N0aWNreS1zaWRlLW1hcmdpbnMu
aHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzEwNzI4NiBmYXN0L2Nzcy9z
dGlja3kvcmVwbGFjZWQtc3RpY2t5Lmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLQotIyBCcm9r
ZW4gYWZ0ZXIgcjE0MTA1MS4KLXdlYmtpdC5vcmcvYi8xMDgxODIgZmFzdC9mcmFtZXMvc2FuZGJv
eGVkLWlmcmFtZS1hYm91dC1ibGFuay5odG1sIFsgU2tpcCBdCi13ZWJraXQub3JnL2IvMTA4MTgy
IGZhc3QvZnJhbWVzL3NhbmRib3hlZC1pZnJhbWUtbmF2aWdhdGlvbi1hbGxvd2VkLmh0bWwgWyBT
a2lwIF0KLXdlYmtpdC5vcmcvYi8xMDgxODIgZmFzdC9qcy9yZWdyZXNzL2ludGVnZXItbW9kdWxv
Lmh0bWwgWyBTa2lwIF0KLXdlYmtpdC5vcmcvYi8xMDgxODIgZmFzdC9yZXBsYWNlZC9pbnZhbGlk
LW9iamVjdC13aXRoLWZhbGxiYWNrLmh0bWwgWyBTa2lwIF0KLXdlYmtpdC5vcmcvYi8xMDgxODIg
aHR0cC90ZXN0cy9wbHVnaW5zIFsgU2tpcCBdCi13ZWJraXQub3JnL2IvMTA4MTgyIGh0dHAvdGVz
dHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L29iamVjdC1zcmMtbm9uZS1hbGxvd2Vk
Lmh0bWwgWyBTa2lwIF0KLXdlYmtpdC5vcmcvYi8xMDgxODIgaHR0cC90ZXN0cy9zZWN1cml0eS9j
cm9zcy1vcmlnaW4tcGx1Z2luLWFsbG93ZWQuaHRtbCBbIFNraXAgXQotd2Via2l0Lm9yZy9iLzEw
ODE4MiBodHRwL3Rlc3RzL3NlY3VyaXR5L2Nyb3NzLW9yaWdpbi1wbHVnaW4tcHJpdmF0ZS1icm93
c2luZy10b2dnbGVkLWFsbG93ZWQuaHRtbCBbIFNraXAgXQotd2Via2l0Lm9yZy9iLzEwODE4MiBo
dHRwL3Rlc3RzL3NlY3VyaXR5L3N0b3JhZ2UtYmxvY2tpbmctbG9vc2VuZWQtcGx1Z2luLmh0bWwg
WyBTa2lwIF0KLXdlYmtpdC5vcmcvYi8xMDgxODIgaHR0cC90ZXN0cy9zZWN1cml0eS9zdG9yYWdl
LWJsb2NraW5nLWxvb3NlbmVkLXByaXZhdGUtYnJvd3NpbmctcGx1Z2luLmh0bWwgWyBTa2lwIF0K
LXdlYmtpdC5vcmcvYi8xMDgxODIgcGx1Z2lucyBbIFNraXAgXQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vcXQtNS4wLXdrMi9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vcXQtNS4wLXdrMi9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDllYjVkZDE0MWQ5ZmE0
NTcyMWQ5MzQzODQxY2FiN2FkZGE3MjJmNzYuLjMwYWE1MmE1ODRmMTRiMWJhNDA4MTRjY2NjZDM1
MzEwZTI1OGRjNjAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3F0LTUuMC13azIv
VGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC01LjAtd2syL1Rl
c3RFeHBlY3RhdGlvbnMKQEAgLTc3Niw5ICs3NzYsMyBAQCB3ZWJraXQub3JnL2IvMTA1MTgyIGNv
bXBvc2l0aW5nL3JlcGFpbnQvcmVzaXplLXJlcGFpbnQuaHRtbAogc3ZnL3RleHQvc2VsZWN0LXRl
eHRMZW5ndGgtc3BhY2luZy1zdHJldGNoLTEuc3ZnCiBzdmcvdGV4dC9zZWxlY3QteC1saXN0LXdp
dGgtdHNwYW5zLTEuc3ZnCiBzdmcvdGV4dC9zZWxlY3QteC1saXN0LTEuc3ZnCi0KLSMgW1dLMl0g
UkVHUkVTU0lPTiAocjE0MTA1MSk6IEJyb2tlIHBsdWdpbiBzdXBwb3J0IG9uIG5vbi1NYWMgV2Vi
S2l0MiBQb3J0cwotd2Via2l0Lm9yZy9iLzEwODE4MiBwbHVnaW5zIFsgU2tpcCBdCi13ZWJraXQu
b3JnL2IvMTA4MTgyIGZhc3QvZnJhbWVzL3NhbmRib3hlZC1pZnJhbWUtYWJvdXQtYmxhbmsuaHRt
bCBbIFNraXAgXQotd2Via2l0Lm9yZy9iLzEwODE4MiBmYXN0L2ZyYW1lcy9zYW5kYm94ZWQtaWZy
YW1lLW5hdmlnYXRpb24tYWxsb3dlZC5odG1sIFsgU2tpcCBdCi13ZWJraXQub3JnL2IvMTA4MTgy
IGZhc3QvcmVwbGFjZWQvaW52YWxpZC1vYmplY3Qtd2l0aC1mYWxsYmFjay5odG1sIFsgU2tpcCBd
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>185507</attachid>
            <date>2013-01-30 08:01:03 -0800</date>
            <delta_ts>2013-01-30 08:12:27 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-108182-20130130175747.patch</filename>
            <type>text/plain</type>
            <size>13639</size>
            <attacher name="Thiago Marcos P. Santos">tmpsantos</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxMjM2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggYTMyMzI3NGVlMGE3MWQx
OWM2YzNkZWI2NGNhMzA5NTc5ZGQ3Mzg3Mi4uNmIwYzcwMWRkNWZiZWNmNTYzZjg4M2Q0YmY3OWY2
NWU0MjkwZWY2OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDEzLTAxLTMwICBUaGlh
Z28gTWFyY29zIFAuIFNhbnRvcyAgPHRoaWFnby5zYW50b3NAaW50ZWwuY29tPgorCisgICAgICAg
IFJFR1JFU1NJT04gKHIxNDEwNTEpOiBCcm9rZSBwbHVnaW4gc3VwcG9ydCBvbiBub24tTWFjIFdl
YktpdDIgUG9ydHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTEwODE4MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFNlbmQgdGhlIHBsdWdpbiBwYXRoIHRvIHRoZSBQbHVnaW5Qcm9jZXNzIGFzIGEgcGFyYW1l
dGVyLgorCisgICAgICAgICogUGx1Z2luUHJvY2Vzcy9xdC9QbHVnaW5Qcm9jZXNzTWFpblF0LmNw
cDoKKyAgICAgICAgKFdlYktpdDo6UGx1Z2luUHJvY2Vzc01haW4pOgorICAgICAgICAqIFBsdWdp
blByb2Nlc3MvdW5peC9QbHVnaW5Qcm9jZXNzTWFpblVuaXguY3BwOgorICAgICAgICAoV2ViS2l0
OjpQbHVnaW5Qcm9jZXNzTWFpblVuaXgpOgorICAgICAgICAqIFVJUHJvY2Vzcy9MYXVuY2hlci9l
ZmwvUHJvY2Vzc0xhdW5jaGVyRWZsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6UHJvY2Vzc0xhdW5j
aGVyOjpsYXVuY2hQcm9jZXNzKToKKyAgICAgICAgKiBVSVByb2Nlc3MvTGF1bmNoZXIvZ3RrL1By
b2Nlc3NMYXVuY2hlckd0ay5jcHA6CisgICAgICAgIChXZWJLaXQ6OlByb2Nlc3NMYXVuY2hlcjo6
bGF1bmNoUHJvY2Vzcyk6CisgICAgICAgICogVUlQcm9jZXNzL0xhdW5jaGVyL3F0L1Byb2Nlc3NM
YXVuY2hlclF0LmNwcDoKKyAgICAgICAgKFdlYktpdDo6UHJvY2Vzc0xhdW5jaGVyOjpsYXVuY2hQ
cm9jZXNzKToKKyAgICAgICAgKiBVSVByb2Nlc3MvUGx1Z2lucy9xdC9QbHVnaW5Qcm9jZXNzUHJv
eHlRdC5jcHA6CisgICAgICAgIChXZWJLaXQ6OlBsdWdpblByb2Nlc3NQcm94eTo6cGxhdGZvcm1J
bml0aWFsaXplTGF1bmNoT3B0aW9ucyk6CisgICAgICAgICogVUlQcm9jZXNzL1BsdWdpbnMvdW5p
eC9QbHVnaW5Qcm9jZXNzUHJveHlVbml4LmNwcDoKKyAgICAgICAgKFdlYktpdDo6UGx1Z2luUHJv
Y2Vzc1Byb3h5OjpwbGF0Zm9ybUluaXRpYWxpemVMYXVuY2hPcHRpb25zKToKKwogMjAxMy0wMS0z
MCAgSHVhbmcgRG9uZ3N1bmcgIDxsdXh0ZWxsYUBjb21wYW55MTAwLm5ldD4KIAogICAgICAgICBD
b29yZGluYXRlZCBHcmFwaGljczogUmVtb3ZlIG1fcGVuZGluZ1N5bmNCYWNraW5nU3RvcmVzIGlu
IExheWVyVHJlZVJlbmRlcmVyLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvUGx1Z2luUHJv
Y2Vzcy9xdC9QbHVnaW5Qcm9jZXNzTWFpblF0LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1BsdWdpblBy
b2Nlc3MvcXQvUGx1Z2luUHJvY2Vzc01haW5RdC5jcHAKaW5kZXggZGI4ZjBiOGE1ZTIzMGQ3Nzdj
ZDg5YzY1YjllNjhhYWE5NmI4YzkwMy4uODk2ZjgyZGVlZWQ1MTllMzBjNTE1MmQ4ZDYwNTZkMTU4
ODNlZTNiMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvUGx1Z2luUHJvY2Vzcy9xdC9QbHVn
aW5Qcm9jZXNzTWFpblF0LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9QbHVnaW5Qcm9jZXNzL3F0
L1BsdWdpblByb2Nlc3NNYWluUXQuY3BwCkBAIC0xMDMsNiArMTAzLDcgQEAgUV9ERUNMX0VYUE9S
VCBpbnQgUGx1Z2luUHJvY2Vzc01haW4oaW50IGFyZ2MsIGNoYXIqKiBhcmd2KQogCiAgICAgV2Vi
S2l0OjpDaGlsZFByb2Nlc3NJbml0aWFsaXphdGlvblBhcmFtZXRlcnMgcGFyYW1ldGVyczsKICAg
ICBwYXJhbWV0ZXJzLmNvbm5lY3Rpb25JZGVudGlmaWVyID0gaWRlbnRpZmllcjsKKyAgICBwYXJh
bWV0ZXJzLmV4dHJhSW5pdGlhbGl6YXRpb25EYXRhLmFkZCgicGx1Z2luLXBhdGgiLCBhcHAuYXJn
dW1lbnRzKCkuYXQoMikpOwogCiAgICAgV2ViS2l0OjpQbHVnaW5Qcm9jZXNzOjpzaGFyZWQoKS5p
bml0aWFsaXplKHBhcmFtZXRlcnMpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9QbHVn
aW5Qcm9jZXNzL3VuaXgvUGx1Z2luUHJvY2Vzc01haW5Vbml4LmNwcCBiL1NvdXJjZS9XZWJLaXQy
L1BsdWdpblByb2Nlc3MvdW5peC9QbHVnaW5Qcm9jZXNzTWFpblVuaXguY3BwCmluZGV4IDNjNTk1
ZjljYjhmNWY0OWM5NDI3N2RkY2EwYmMxZjRlMGI4MTQ1ODUuLjNlZTlkZTZiOTI2OTRmZDBhNTc2
OGM2Y2QwNDg0ODEzZDdlNTA2NzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1BsdWdpblBy
b2Nlc3MvdW5peC9QbHVnaW5Qcm9jZXNzTWFpblVuaXguY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1BsdWdpblByb2Nlc3MvdW5peC9QbHVnaW5Qcm9jZXNzTWFpblVuaXguY3BwCkBAIC03Myw5ICs3
Myw4IEBAIHN0YXRpYyBpbnQgd2Via2l0WEVycm9yKERpc3BsYXkqIHhkaXNwbGF5LCBYRXJyb3JF
dmVudCogZXJyb3IpCiAKIFdLX0VYUE9SVCBpbnQgUGx1Z2luUHJvY2Vzc01haW5Vbml4KGludCBh
cmdjLCBjaGFyKiBhcmd2W10pCiB7Ci0gICAgQVNTRVJUX1VOVVNFRChhcmdjLCBhcmdjID09IDIg
fHwgYXJnYyA9PSAzKTsKICAgICBib29sIHNjYW5QbHVnaW4gPSAhc3RyY21wKGFyZ3ZbMV0sICIt
c2NhblBsdWdpbiIpOwotICAgIEFTU0VSVF9VTlVTRUQoYXJnYywgYXJnYyA9PSAyIHx8IChhcmdj
ID09IDMgJiYgc2NhblBsdWdpbikpOworICAgIEFTU0VSVF9VTlVTRUQoYXJnYywgYXJnYyA9PSAz
KTsKIAogI2lmIFBMQVRGT1JNKEdUSykKICAgICBndGtfaW5pdCgmYXJnYywgJmFyZ3YpOwpAQCAt
MTA5LDYgKzEwOCw3IEBAIFdLX0VYUE9SVCBpbnQgUGx1Z2luUHJvY2Vzc01haW5Vbml4KGludCBh
cmdjLCBjaGFyKiBhcmd2W10pCiAKICAgICBXZWJLaXQ6OkNoaWxkUHJvY2Vzc0luaXRpYWxpemF0
aW9uUGFyYW1ldGVycyBwYXJhbWV0ZXJzOwogICAgIHBhcmFtZXRlcnMuY29ubmVjdGlvbklkZW50
aWZpZXIgPSBzb2NrZXQ7CisgICAgcGFyYW1ldGVycy5leHRyYUluaXRpYWxpemF0aW9uRGF0YS5h
ZGQoInBsdWdpbi1wYXRoIiwgYXJndlsyXSk7CiAKICAgICBXZWJLaXQ6OlBsdWdpblByb2Nlc3M6
OnNoYXJlZCgpLmluaXRpYWxpemUocGFyYW1ldGVycyk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9MYXVuY2hlci9lZmwvUHJvY2Vzc0xhdW5jaGVyRWZsLmNwcCBiL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9MYXVuY2hlci9lZmwvUHJvY2Vzc0xhdW5jaGVyRWZsLmNw
cAppbmRleCBkODlkOGYzOGRlMTJlMDY1M2VkMjM3ZWY3NjNhOTM4M2RmYjcwYTkwLi4zYTM2MzM0
N2Y4ZWNhYmMzNTI3NWZlYzBiNjUxM2IwYTM0YzIyODgxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvTGF1bmNoZXIvZWZsL1Byb2Nlc3NMYXVuY2hlckVmbC5jcHAKKysrIGIv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0xhdW5jaGVyL2VmbC9Qcm9jZXNzTGF1bmNoZXJFZmwu
Y3BwCkBAIC00Miw3ICs0Miw3IEBAIHZvaWQgUHJvY2Vzc0xhdW5jaGVyOjpsYXVuY2hQcm9jZXNz
KCkKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIENTdHJpbmcgZXhlY3V0YWJsZVBhdGg7
CisgICAgQ1N0cmluZyBleGVjdXRhYmxlUGF0aCwgcGx1Z2luUGF0aDsKICAgICBzd2l0Y2ggKG1f
bGF1bmNoT3B0aW9ucy5wcm9jZXNzVHlwZSkgewogICAgIGNhc2UgV2ViUHJvY2VzczoKICAgICAg
ICAgZXhlY3V0YWJsZVBhdGggPSBleGVjdXRhYmxlUGF0aE9mV2ViUHJvY2VzcygpLnV0ZjgoKTsK
QEAgLTUwLDYgKzUwLDcgQEAgdm9pZCBQcm9jZXNzTGF1bmNoZXI6OmxhdW5jaFByb2Nlc3MoKQog
I2lmIEVOQUJMRShQTFVHSU5fUFJPQ0VTUykKICAgICBjYXNlIFBsdWdpblByb2Nlc3M6CiAgICAg
ICAgIGV4ZWN1dGFibGVQYXRoID0gZXhlY3V0YWJsZVBhdGhPZlBsdWdpblByb2Nlc3MoKS51dGY4
KCk7CisgICAgICAgIHBsdWdpblBhdGggPSBtX2xhdW5jaE9wdGlvbnMuZXh0cmFJbml0aWFsaXph
dGlvbkRhdGEuZ2V0KCJwbHVnaW4tcGF0aCIpLnV0ZjgoKTsKICAgICAgICAgYnJlYWs7CiAjZW5k
aWYKICAgICBkZWZhdWx0OgpAQCAtNjMsNyArNjQsOCBAQCB2b2lkIFByb2Nlc3NMYXVuY2hlcjo6
bGF1bmNoUHJvY2VzcygpCiAjaWZuZGVmIE5ERUJVRwogICAgIENTdHJpbmcgcHJlZml4ZWRFeGVj
dXRhYmxlUGF0aDsKICAgICBpZiAoIW1fbGF1bmNoT3B0aW9ucy5wcm9jZXNzQ21kUHJlZml4Lmlz
RW1wdHkoKSkgewotICAgICAgICBTdHJpbmcgcHJlZml4ZWRFeGVjdXRhYmxlUGF0aFN0ciA9IG1f
bGF1bmNoT3B0aW9ucy5wcm9jZXNzQ21kUHJlZml4ICsgJyAnICsgU3RyaW5nOjpmcm9tVVRGOChl
eGVjdXRhYmxlUGF0aC5kYXRhKCkpICsgJyAnICsgc29ja2V0OworICAgICAgICBTdHJpbmcgcHJl
Zml4ZWRFeGVjdXRhYmxlUGF0aFN0ciA9IG1fbGF1bmNoT3B0aW9ucy5wcm9jZXNzQ21kUHJlZml4
ICsgJyAnICsKKyAgICAgICAgICAgIFN0cmluZzo6ZnJvbVVURjgoZXhlY3V0YWJsZVBhdGguZGF0
YSgpKSArICcgJyArIHNvY2tldCArICcgJyArIFN0cmluZzo6ZnJvbVVURjgocGx1Z2luUGF0aC5k
YXRhKCkpOwogICAgICAgICBwcmVmaXhlZEV4ZWN1dGFibGVQYXRoID0gcHJlZml4ZWRFeGVjdXRh
YmxlUGF0aFN0ci51dGY4KCk7CiAgICAgfQogI2VuZGlmCkBAIC04Niw3ICs4OCw3IEBAIHZvaWQg
UHJvY2Vzc0xhdW5jaGVyOjpsYXVuY2hQcm9jZXNzKCkKICAgICAgICAgICAgICAgICBleGl0KEVY
SVRfU1VDQ0VTUyk7CiAgICAgICAgIH0KICNlbmRpZgotICAgICAgICBleGVjbChleGVjdXRhYmxl
UGF0aC5kYXRhKCksIGV4ZWN1dGFibGVQYXRoLmRhdGEoKSwgc29ja2V0LCBzdGF0aWNfY2FzdDxj
aGFyKj4oMCkpOworICAgICAgICBleGVjbChleGVjdXRhYmxlUGF0aC5kYXRhKCksIGV4ZWN1dGFi
bGVQYXRoLmRhdGEoKSwgc29ja2V0LCBwbHVnaW5QYXRoLmRhdGEoKSwgc3RhdGljX2Nhc3Q8Y2hh
cio+KDApKTsKICAgICB9IGVsc2UgaWYgKHBpZCA+IDApIHsgLy8gcGFyZW50IHByb2Nlc3M7CiAg
ICAgICAgIGNsb3NlKHNvY2tldHNbMF0pOwogICAgICAgICBtX3Byb2Nlc3NJZGVudGlmaWVyID0g
cGlkOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0xhdW5jaGVyL2d0ay9Q
cm9jZXNzTGF1bmNoZXJHdGsuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0xhdW5jaGVy
L2d0ay9Qcm9jZXNzTGF1bmNoZXJHdGsuY3BwCmluZGV4IDFiMDhiZDVmNTIzMjhiMTljZTJiMDgz
NzljODFkNmI4NDFmM2Y5ZjQuLjdjN2YwM2FhZGVlYjQwZDcyNGU2ODBiZjc2OTQxNjgxZTNhZjll
ODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9MYXVuY2hlci9ndGsvUHJv
Y2Vzc0xhdW5jaGVyR3RrLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvTGF1bmNo
ZXIvZ3RrL1Byb2Nlc3NMYXVuY2hlckd0ay5jcHAKQEAgLTgzLDE0ICs4MywyMyBAQCB2b2lkIFBy
b2Nlc3NMYXVuY2hlcjo6bGF1bmNoUHJvY2VzcygpCiAgICAgICAgIHJldHVybjsKICAgICB9CiAK
LSAgICBTdHJpbmcgZXhlY3V0YWJsZVBhdGggPSBtX2xhdW5jaE9wdGlvbnMucHJvY2Vzc1R5cGUg
PT0gV2ViUHJvY2VzcyA/Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhlY3V0YWJsZVBh
dGhPZldlYlByb2Nlc3MoKSA6IGV4ZWN1dGFibGVQYXRoT2ZQbHVnaW5Qcm9jZXNzKCk7Ci0gICAg
Q1N0cmluZyBiaW5hcnlQYXRoID0gZmlsZVN5c3RlbVJlcHJlc2VudGF0aW9uKGV4ZWN1dGFibGVQ
YXRoKTsKKyAgICBTdHJpbmcgZXhlY3V0YWJsZVBhdGgsIHBsdWdpblBhdGg7CisgICAgQ1N0cmlu
ZyByZWFsRXhlY3V0YWJsZVBhdGgsIHJlYWxQbHVnaW5QYXRoOworICAgIGlmIChtX2xhdW5jaE9w
dGlvbnMucHJvY2Vzc1R5cGUgPT0gV2ViUHJvY2VzcykKKyAgICAgICAgZXhlY3V0YWJsZVBhdGgg
PSBleGVjdXRhYmxlUGF0aE9mV2ViUHJvY2VzcygpOworICAgIGVsc2UgeworICAgICAgICBleGVj
dXRhYmxlUGF0aCA9IGV4ZWN1dGFibGVQYXRoT2ZQbHVnaW5Qcm9jZXNzKCk7CisgICAgICAgIHBs
dWdpblBhdGggPSBtX2xhdW5jaE9wdGlvbnMuZXh0cmFJbml0aWFsaXphdGlvbkRhdGEuZ2V0KCJw
bHVnaW4tcGF0aCIpOworICAgICAgICByZWFsUGx1Z2luUGF0aCA9IGZpbGVTeXN0ZW1SZXByZXNl
bnRhdGlvbihwbHVnaW5QYXRoKTsKKyAgICB9CisKKyAgICByZWFsRXhlY3V0YWJsZVBhdGggPSBm
aWxlU3lzdGVtUmVwcmVzZW50YXRpb24oZXhlY3V0YWJsZVBhdGgpOwogICAgIEdPd25QdHI8Z2No
YXI+IHNvY2tldChnX3N0cmR1cF9wcmludGYoIiVkIiwgc29ja2V0c1swXSkpOwotICAgIGNoYXIq
IGFyZ3ZbM107Ci0gICAgYXJndlswXSA9IGNvbnN0X2Nhc3Q8Y2hhcio+KGJpbmFyeVBhdGguZGF0
YSgpKTsKKyAgICBjaGFyKiBhcmd2WzRdOworICAgIGFyZ3ZbMF0gPSBjb25zdF9jYXN0PGNoYXIq
PihyZWFsRXhlY3V0YWJsZVBhdGguZGF0YSgpKTsKICAgICBhcmd2WzFdID0gc29ja2V0LmdldCgp
OwotICAgIGFyZ3ZbMl0gPSAwOworICAgIGFyZ3ZbMl0gPSBjb25zdF9jYXN0PGNoYXIqPihyZWFs
UGx1Z2luUGF0aC5kYXRhKCkpOworICAgIGFyZ3ZbM10gPSAwOwogCiAgICAgR093blB0cjxHRXJy
b3I+IGVycm9yOwogICAgIGludCBzcGF3bkZsYWdzID0gR19TUEFXTl9MRUFWRV9ERVNDUklQVE9S
U19PUEVOIHwgR19TUEFXTl9ET19OT1RfUkVBUF9DSElMRDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9MYXVuY2hlci9xdC9Qcm9jZXNzTGF1bmNoZXJRdC5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvTGF1bmNoZXIvcXQvUHJvY2Vzc0xhdW5jaGVyUXQuY3BwCmlu
ZGV4IDhkN2I3ZWFhYmFiMjVhYjBjZWEzZWVjNDJiYTdkNzM3YzA5ZjY5ODcuLjM2YjNjZGJhZTdk
YWE5MWY0YTAzM2U3Zjc4YTUyNGNlMjE4MDM5M2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9MYXVuY2hlci9xdC9Qcm9jZXNzTGF1bmNoZXJRdC5jcHAKKysrIGIvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0xhdW5jaGVyL3F0L1Byb2Nlc3NMYXVuY2hlclF0LmNwcApAQCAt
MTEyLDEyICsxMTIsMTQgQEAgdm9pZCBRdFdlYlByb2Nlc3M6OnNldHVwQ2hpbGRQcm9jZXNzKCkK
IAogdm9pZCBQcm9jZXNzTGF1bmNoZXI6OmxhdW5jaFByb2Nlc3MoKQogewotICAgIFFTdHJpbmcg
Y29tbWFuZExpbmUgPSBRTGF0aW4xU3RyaW5nKCIlMSAlMiAlMyIpOworICAgIFFTdHJpbmcgY29t
bWFuZExpbmU7CiAgICAgaWYgKG1fbGF1bmNoT3B0aW9ucy5wcm9jZXNzVHlwZSA9PSBXZWJQcm9j
ZXNzKSB7CisgICAgICAgIGNvbW1hbmRMaW5lID0gUUxhdGluMVN0cmluZygiJTEgJTIgJTMiKTsK
ICAgICAgICAgUUJ5dGVBcnJheSB3ZWJQcm9jZXNzUHJlZml4ID0gcWdldGVudigiUVRfV0VCS0lU
Ml9XUF9DTURfUFJFRklYIik7CiAgICAgICAgIGNvbW1hbmRMaW5lID0gY29tbWFuZExpbmUuYXJn
KFFMYXRpbjFTdHJpbmcod2ViUHJvY2Vzc1ByZWZpeC5jb25zdERhdGEoKSkpLmFyZyhRU3RyaW5n
KGV4ZWN1dGFibGVQYXRoT2ZXZWJQcm9jZXNzKCkpKTsKICNpZiBFTkFCTEUoUExVR0lOX1BST0NF
U1MpCiAgICAgfSBlbHNlIGlmIChtX2xhdW5jaE9wdGlvbnMucHJvY2Vzc1R5cGUgPT0gUGx1Z2lu
UHJvY2VzcykgeworICAgICAgICBjb21tYW5kTGluZSA9IFFMYXRpbjFTdHJpbmcoIiUxICUyICUz
ICU0Iik7CiAgICAgICAgIFFCeXRlQXJyYXkgcGx1Z2luUHJvY2Vzc1ByZWZpeCA9IHFnZXRlbnYo
IlFUX1dFQktJVDJfUFBfQ01EX1BSRUZJWCIpOwogICAgICAgICBjb21tYW5kTGluZSA9IGNvbW1h
bmRMaW5lLmFyZyhRTGF0aW4xU3RyaW5nKHBsdWdpblByb2Nlc3NQcmVmaXguY29uc3REYXRhKCkp
KS5hcmcoUVN0cmluZyhleGVjdXRhYmxlUGF0aE9mUGx1Z2luUHJvY2VzcygpKSk7CiAjZW5kaWYK
QEAgLTE3MCw2ICsxNzIsMTEgQEAgdm9pZCBQcm9jZXNzTGF1bmNoZXI6OmxhdW5jaFByb2Nlc3Mo
KQogICAgIGNvbW1hbmRMaW5lID0gY29tbWFuZExpbmUuYXJnKHNvY2tldHNbMF0pOwogI2VuZGlm
CiAKKyNpZiBFTkFCTEUoUExVR0lOX1BST0NFU1MpCisgICAgaWYgKG1fbGF1bmNoT3B0aW9ucy5w
cm9jZXNzVHlwZSA9PSBQbHVnaW5Qcm9jZXNzKQorICAgICAgICBjb21tYW5kTGluZSA9IGNvbW1h
bmRMaW5lLmFyZyhRU3RyaW5nKG1fbGF1bmNoT3B0aW9ucy5leHRyYUluaXRpYWxpemF0aW9uRGF0
YS5nZXQoInBsdWdpbi1wYXRoIikpKTsKKyNlbmRpZgorCiAgICAgUVByb2Nlc3MqIHdlYlByb2Nl
c3NPclNVSURIZWxwZXIgPSBuZXcgUXRXZWJQcm9jZXNzKCk7CiAgICAgd2ViUHJvY2Vzc09yU1VJ
REhlbHBlci0+c2V0UHJvY2Vzc0NoYW5uZWxNb2RlKFFQcm9jZXNzOjpGb3J3YXJkZWRDaGFubmVs
cyk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9QbHVnaW5zL3F0L1Bs
dWdpblByb2Nlc3NQcm94eVF0LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9QbHVnaW5z
L3F0L1BsdWdpblByb2Nlc3NQcm94eVF0LmNwcAppbmRleCBjYjQ4ODRkNGM3ODIyYjE2NjhlNzhj
M2ZhODI5ZDhmNmUyY2Q2MDZlLi43NzIwNjcwNGMzY2RhNjVlYjg1YmI4YzkxMzdlNjU1NWU0MWNh
NmE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGx1Z2lucy9xdC9QbHVn
aW5Qcm9jZXNzUHJveHlRdC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1BsdWdp
bnMvcXQvUGx1Z2luUHJvY2Vzc1Byb3h5UXQuY3BwCkBAIC01Myw2ICs1Myw3IEBAIGNsYXNzIFBs
dWdpblByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM7CiAKIHZvaWQgUGx1Z2luUHJvY2Vzc1Byb3h5
OjpwbGF0Zm9ybUluaXRpYWxpemVMYXVuY2hPcHRpb25zKFByb2Nlc3NMYXVuY2hlcjo6TGF1bmNo
T3B0aW9ucyYgbGF1bmNoT3B0aW9ucywgY29uc3QgUGx1Z2luTW9kdWxlSW5mbyYgcGx1Z2luSW5m
bykKIHsKKyAgICBsYXVuY2hPcHRpb25zLmV4dHJhSW5pdGlhbGl6YXRpb25EYXRhLmFkZCgicGx1
Z2luLXBhdGgiLCBwbHVnaW5JbmZvLnBhdGgpOwogfQogCiB2b2lkIFBsdWdpblByb2Nlc3NQcm94
eTo6cGxhdGZvcm1Jbml0aWFsaXplUGx1Z2luUHJvY2VzcyhQbHVnaW5Qcm9jZXNzQ3JlYXRpb25Q
YXJhbWV0ZXJzJikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9QbHVnaW5z
L3VuaXgvUGx1Z2luUHJvY2Vzc1Byb3h5VW5peC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvUGx1Z2lucy91bml4L1BsdWdpblByb2Nlc3NQcm94eVVuaXguY3BwCmluZGV4IGI1NTRmNTA0
ZDYyZDk4MmE0YjlmOGZkYTk3YWM4OTE0N2U2YmFiMjUuLmIyNjlhN2UyNDhhNTYwODRkNjM0ZGEz
MTU2MWM5MGUyOTU1MzExZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9Q
bHVnaW5zL3VuaXgvUGx1Z2luUHJvY2Vzc1Byb3h5VW5peC5jcHAKKysrIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL1BsdWdpbnMvdW5peC9QbHVnaW5Qcm9jZXNzUHJveHlVbml4LmNwcApAQCAt
NDMsMTUgKzQzLDE1IEBAIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCiBuYW1lc3BhY2UgV2Vi
S2l0IHsKIAotdm9pZCBQbHVnaW5Qcm9jZXNzUHJveHk6OnBsYXRmb3JtSW5pdGlhbGl6ZUxhdW5j
aE9wdGlvbnMoUHJvY2Vzc0xhdW5jaGVyOjpMYXVuY2hPcHRpb25zJiBsYXVuY2hPcHRpb25zLCBj
b25zdCBQbHVnaW5Nb2R1bGVJbmZvJikKK3ZvaWQgUGx1Z2luUHJvY2Vzc1Byb3h5OjpwbGF0Zm9y
bUluaXRpYWxpemVMYXVuY2hPcHRpb25zKFByb2Nlc3NMYXVuY2hlcjo6TGF1bmNoT3B0aW9ucyYg
bGF1bmNoT3B0aW9ucywgY29uc3QgUGx1Z2luTW9kdWxlSW5mbyYgcGx1Z2luSW5mbykKIHsKICNp
ZiBQTEFURk9STShFRkwpICYmICFkZWZpbmVkKE5ERUJVRykKICAgICBjb25zdCBjaGFyKiBjb21t
YW5kUHJlZml4ID0gZ2V0ZW52KCJQTFVHSU5fUFJPQ0VTU19DT01NQU5EX1BSRUZJWCIpOwogICAg
IGlmIChjb21tYW5kUHJlZml4ICYmICpjb21tYW5kUHJlZml4KQogICAgICAgICBsYXVuY2hPcHRp
b25zLnByb2Nlc3NDbWRQcmVmaXggPSBTdHJpbmc6OmZyb21VVEY4KGNvbW1hbmRQcmVmaXgpOwot
I2Vsc2UKLSAgICBVTlVTRURfUEFSQU0obGF1bmNoT3B0aW9ucyk7CiAjZW5kaWYKKworICAgIGxh
dW5jaE9wdGlvbnMuZXh0cmFJbml0aWFsaXphdGlvbkRhdGEuYWRkKCJwbHVnaW4tcGF0aCIsIHBs
dWdpbkluZm8ucGF0aCk7CiB9CiAKIHZvaWQgUGx1Z2luUHJvY2Vzc1Byb3h5OjpwbGF0Zm9ybUlu
aXRpYWxpemVQbHVnaW5Qcm9jZXNzKFBsdWdpblByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMmKQpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CmluZGV4IDdiZDQ4Nzk2MTdiZDk2NTgzN2RkOWIwZmQ5MmM1MzQ1YjYxYzEwMWYuLjAxMjRhNGEy
YzU1M2ZkMjRhYWIzZTkwYzZiMjc1NzM2N2IyYTYzMjYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAor
MjAxMy0wMS0zMCAgVGhpYWdvIE1hcmNvcyBQLiBTYW50b3MgIDx0aGlhZ28uc2FudG9zQGludGVs
LmNvbT4KKworICAgICAgICBSRUdSRVNTSU9OIChyMTQxMDUxKTogQnJva2UgcGx1Z2luIHN1cHBv
cnQgb24gbm9uLU1hYyBXZWJLaXQyIFBvcnRzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xMDgxODIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBVbnNraXAgZmFpbGluZyB0ZXN0cy4KKworICAgICAgICAqIHBs
YXRmb3JtL2VmbC13azIvVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAgKiBwbGF0Zm9ybS9xdC01
LjAtd2syL1Rlc3RFeHBlY3RhdGlvbnM6CisKIDIwMTMtMDEtMjkgIFNoaW55YSBLYXdhbmFrYSAg
PHNoaW55YWtAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJlbmRlcmVyIGlzIHJlY3JlYXRlZCB1
bmV4cGVjdGVkbHkgYWZ0ZXIgZGV0YWNoIGluIEhUTUxJbnB1dEVsZW1lbnQKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3BsYXRmb3JtL2VmbC13azIvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRl
c3RzL3BsYXRmb3JtL2VmbC13azIvVGVzdEV4cGVjdGF0aW9ucwppbmRleCBjY2NkNGYzYWMzYjU0
NTE2OWRiZmRmMzBhNjZlODhhMGFlZmRhMzI1Li5iNjJmZjRjMjk2ZmNiOGE4ZDBkYzdmYTg1MTJk
ZDhjZjA4MjVjMDRjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9lZmwtd2syL1Rl
c3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZWZsLXdrMi9UZXN0RXhw
ZWN0YXRpb25zCkBAIC00MjAsMTYgKzQyMCwzIEBAIHdlYmtpdC5vcmcvYi8xMDcyODYgZmFzdC9j
c3Mvc3RpY2t5L3N0aWNreS13cml0aW5nLW1vZGUtaG9yaXpvbnRhbC1idC5odG1sIFsgSW1hCiB3
ZWJraXQub3JnL2IvMTA3Mjg2IGZhc3QvY3NzL3N0aWNreS9zdGlja3ktdG9wLmh0bWwgWyBJbWFn
ZU9ubHlGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi8xMDcyODYgZmFzdC9jc3Mvc3RpY2t5L3N0aWNr
eS1zaWRlLW1hcmdpbnMuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzEw
NzI4NiBmYXN0L2Nzcy9zdGlja3kvcmVwbGFjZWQtc3RpY2t5Lmh0bWwgWyBJbWFnZU9ubHlGYWls
dXJlIF0KLQotIyBCcm9rZW4gYWZ0ZXIgcjE0MTA1MS4KLXdlYmtpdC5vcmcvYi8xMDgxODIgZmFz
dC9mcmFtZXMvc2FuZGJveGVkLWlmcmFtZS1hYm91dC1ibGFuay5odG1sIFsgU2tpcCBdCi13ZWJr
aXQub3JnL2IvMTA4MTgyIGZhc3QvZnJhbWVzL3NhbmRib3hlZC1pZnJhbWUtbmF2aWdhdGlvbi1h
bGxvd2VkLmh0bWwgWyBTa2lwIF0KLXdlYmtpdC5vcmcvYi8xMDgxODIgZmFzdC9qcy9yZWdyZXNz
L2ludGVnZXItbW9kdWxvLmh0bWwgWyBTa2lwIF0KLXdlYmtpdC5vcmcvYi8xMDgxODIgZmFzdC9y
ZXBsYWNlZC9pbnZhbGlkLW9iamVjdC13aXRoLWZhbGxiYWNrLmh0bWwgWyBTa2lwIF0KLXdlYmtp
dC5vcmcvYi8xMDgxODIgaHR0cC90ZXN0cy9wbHVnaW5zIFsgU2tpcCBdCi13ZWJraXQub3JnL2Iv
MTA4MTgyIGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L29iamVjdC1z
cmMtbm9uZS1hbGxvd2VkLmh0bWwgWyBTa2lwIF0KLXdlYmtpdC5vcmcvYi8xMDgxODIgaHR0cC90
ZXN0cy9zZWN1cml0eS9jcm9zcy1vcmlnaW4tcGx1Z2luLWFsbG93ZWQuaHRtbCBbIFNraXAgXQot
d2Via2l0Lm9yZy9iLzEwODE4MiBodHRwL3Rlc3RzL3NlY3VyaXR5L2Nyb3NzLW9yaWdpbi1wbHVn
aW4tcHJpdmF0ZS1icm93c2luZy10b2dnbGVkLWFsbG93ZWQuaHRtbCBbIFNraXAgXQotd2Via2l0
Lm9yZy9iLzEwODE4MiBodHRwL3Rlc3RzL3NlY3VyaXR5L3N0b3JhZ2UtYmxvY2tpbmctbG9vc2Vu
ZWQtcGx1Z2luLmh0bWwgWyBTa2lwIF0KLXdlYmtpdC5vcmcvYi8xMDgxODIgaHR0cC90ZXN0cy9z
ZWN1cml0eS9zdG9yYWdlLWJsb2NraW5nLWxvb3NlbmVkLXByaXZhdGUtYnJvd3NpbmctcGx1Z2lu
Lmh0bWwgWyBTa2lwIF0KLXdlYmtpdC5vcmcvYi8xMDgxODIgcGx1Z2lucyBbIFNraXAgXQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQtNS4wLXdrMi9UZXN0RXhwZWN0YXRpb25z
IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQtNS4wLXdrMi9UZXN0RXhwZWN0YXRpb25zCmluZGV4
IDllYjVkZDE0MWQ5ZmE0NTcyMWQ5MzQzODQxY2FiN2FkZGE3MjJmNzYuLjMwYWE1MmE1ODRmMTRi
MWJhNDA4MTRjY2NjZDM1MzEwZTI1OGRjNjAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRm
b3JtL3F0LTUuMC13azIvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9xdC01LjAtd2syL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTc3Niw5ICs3NzYsMyBAQCB3ZWJraXQu
b3JnL2IvMTA1MTgyIGNvbXBvc2l0aW5nL3JlcGFpbnQvcmVzaXplLXJlcGFpbnQuaHRtbAogc3Zn
L3RleHQvc2VsZWN0LXRleHRMZW5ndGgtc3BhY2luZy1zdHJldGNoLTEuc3ZnCiBzdmcvdGV4dC9z
ZWxlY3QteC1saXN0LXdpdGgtdHNwYW5zLTEuc3ZnCiBzdmcvdGV4dC9zZWxlY3QteC1saXN0LTEu
c3ZnCi0KLSMgW1dLMl0gUkVHUkVTU0lPTiAocjE0MTA1MSk6IEJyb2tlIHBsdWdpbiBzdXBwb3J0
IG9uIG5vbi1NYWMgV2ViS2l0MiBQb3J0cwotd2Via2l0Lm9yZy9iLzEwODE4MiBwbHVnaW5zIFsg
U2tpcCBdCi13ZWJraXQub3JnL2IvMTA4MTgyIGZhc3QvZnJhbWVzL3NhbmRib3hlZC1pZnJhbWUt
YWJvdXQtYmxhbmsuaHRtbCBbIFNraXAgXQotd2Via2l0Lm9yZy9iLzEwODE4MiBmYXN0L2ZyYW1l
cy9zYW5kYm94ZWQtaWZyYW1lLW5hdmlnYXRpb24tYWxsb3dlZC5odG1sIFsgU2tpcCBdCi13ZWJr
aXQub3JnL2IvMTA4MTgyIGZhc3QvcmVwbGFjZWQvaW52YWxpZC1vYmplY3Qtd2l0aC1mYWxsYmFj
ay5odG1sIFsgU2tpcCBdCg==
</data>
<flag name="review"
          id="204588"
          type_id="1"
          status="+"
          setter="sam"
    />
          </attachment>
      

    </bug>

</bugzilla>