<?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>208523</bug_id>
          
          <creation_ts>2020-03-03 11:00:50 -0800</creation_ts>
          <short_desc>[GTK][WPE] Building with -DENABLE_ACCELERATED_2D_CANVAS=ON fails</short_desc>
          <delta_ts>2020-10-13 12:24:02 -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>WebKitGTK</component>
          <version>Other</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>DUPLICATE</resolution>
          <dup_id>217384</dup_id>
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Que Quotion">quequotion</reporter>
          <assigned_to name="Adrian Perez">aperez</assigned_to>
          <cc>aperez</cc>
    
    <cc>bugs-noreply</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>steve</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1625136</commentid>
    <comment_count>0</comment_count>
      <attachid>392299</attachid>
    <who name="Que Quotion">quequotion</who>
    <bug_when>2020-03-03 11:00:50 -0800</bug_when>
    <thetext>Created attachment 392299
log of build failure

I&apos;ve been trying to build epiphany 3.35.92 (latest unstable release as of this posting) and to test out webkit&apos;s &quot;Accelerated 2D Canvas&quot;. epiphany gives the minimum required version of &quot;webkit2gtk-4.0&quot; as &quot;2.27.4&quot;, so that is the version I have been attempting to build (in order to use it to build epiphany).

Since I&apos;m using Archlinux, prerequisite to enabling the accelerated 2d canvas was building a custom cairo with the cairo-gl backend enabled, which I have done using cairo 1.17.2+17+g52a7c79fd

I had successfully built webkit2gtk 2.27.3 against the same cairo previously, to build epiphany 3.35.3; at that time it was not necessary to explicitly enable the accelerated 2d canvas feature at build time: webkit detected the presence of cairo and the cairo-gl module, and enabled it automatically.

When building 2.27.4 against the same cairo package, I noticed at first that the 2d accelerated canvas is _not_ automatically enabled; nor does configure attempt to find the cairo-gl module.

Specifying -DENABLE__ACCELERATED_2D_CANVAS=ON at build time to explicitly enable the feature seems to work, but then build fails around 76~77%.

See attached output for log of build failure.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625462</commentid>
    <comment_count>1</comment_count>
    <who name="Adrian Perez">aperez</who>
    <bug_when>2020-03-04 02:21:46 -0800</bug_when>
    <thetext>(In reply to Que Quotion from comment #0)
&gt; Created attachment 392299 [details]
&gt; log of build failure
&gt; 
&gt; I&apos;ve been trying to build epiphany 3.35.92 (latest unstable release as of
&gt; this posting) and to test out webkit&apos;s &quot;Accelerated 2D Canvas&quot;. epiphany
&gt; gives the minimum required version of &quot;webkit2gtk-4.0&quot; as &quot;2.27.4&quot;, so that
&gt; is the version I have been attempting to build (in order to use it to build
&gt; epiphany).

I have just checked an “trunk” also has trouble building with the option
enabled. There are also a couple of build issues with non-unified builds.
All in all it looks like none of us working on WebKit has tried doing a
build with ENABLE_ACCELERATED_2D_CANVAS=ON, but it should work even if it
is not the default — I&apos;ll take a stab at unbreaking it.

&gt; Since I&apos;m using Archlinux, prerequisite to enabling the accelerated 2d
&gt; canvas was building a custom cairo with the cairo-gl backend enabled, which
&gt; I have done using cairo 1.17.2+17+g52a7c79fd

I use Arch Linux myself, so thanks for pointing out that the Cairo package
does not have GL support enabled, this has saved me some time trying to
figure out why the WebKit build would fail configuration :]

&gt; I had successfully built webkit2gtk 2.27.3 against the same cairo
&gt; previously, to build epiphany 3.35.3; at that time it was not necessary to
&gt; explicitly enable the accelerated 2d canvas feature at build time: webkit
&gt; detected the presence of cairo and the cairo-gl module, and enabled it
&gt; automatically.
&gt; 
&gt; When building 2.27.4 against the same cairo package, I noticed at first that
&gt; the 2d accelerated canvas is _not_ automatically enabled; nor does configure
&gt; attempt to find the cairo-gl module.

Dunno what might have changed… Anyway, in general we prefer to avoid
automatically detecting which features to enable depending on what is
installed at build time: specifying them explicitly is more robust also
for packagers so I will *not* be trying to bring autodetection back.
 
&gt; Specifying -DENABLE_ACCELERATED_2D_CANVAS=ON at build time to explicitly
&gt; enable the feature seems to work, but then build fails around 76~77%.
&gt; 
&gt; See attached output for log of build failure.

Thanks for the detailed bug report!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1632447</commentid>
    <comment_count>2</comment_count>
      <attachid>394163</attachid>
    <who name="Steven Newbury">steve</who>
    <bug_when>2020-03-21 02:39:24 -0700</bug_when>
    <thetext>Created attachment 394163
Enable use of EGL/OpenGL(core 4.2) for GTK/WPE builds

I&apos;ve made a patch which enables this to work by using OpenGL4 instead of GLES2 with EGL.
My intention was to get WebGL2 working, but I didn&apos;t manage to successfully debug it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1632448</commentid>
    <comment_count>3</comment_count>
    <who name="Steven Newbury">steve</who>
    <bug_when>2020-03-21 02:41:54 -0700</bug_when>
    <thetext>Requires -DWL_EGL_PLATFORM=1 -DUSE_OPENGL=1 -DHAVE_OPENGL_4=1 -DUSE_OPENGL_ES=0 to be set.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1632478</commentid>
    <comment_count>4</comment_count>
    <who name="Steven Newbury">steve</who>
    <bug_when>2020-03-21 07:48:52 -0700</bug_when>
    <thetext>about:gpu

Version Information
WebKit version
WebKitGTK 2.28.0 (tarball)
Operating system
Linux 5.6.0-rc6-00016-g8cf00335c050 #18 SMP PREEMPT Thu Mar 19 08:38:16 GMT 2020 x86_64
Desktop
GNOME
Cairo version
1.16.0 (build) 1.16.0 (runtime)
GStreamer version
1.16.2 (build) GStreamer 1.16.2 (runtime)
GTK version
3.24.14 (build) 3.24.14 (runtime)
WPE version
1.4.0 (using fdo backend 1.4.0)
Display Information
Type
Wayland
Screen geometry
0,0 1920x1080
Screen work area
0,0 1920x1080
Depth
32
Bits per color component
8
DPI
96.00
Hardware Acceleration Information
Policy
always
WebGL enabled
Yes
API
OpenGL
Native interface
EGL
GL_RENDERER
Mesa DRI Intel(R) HD Graphics 4000 (IVB GT2)
GL_VENDOR
Intel Open Source Technology Center
GL_VERSION
4.2 (Core Profile) Mesa 20.1.0-devel (git-d60375cbc2)
GL_SHADING_LANGUAGE_VERSION
4.20
GL_EXTENSIONS
GL_3DFX_texture_compression_FXT1 GL_AMD_conservative_depth GL_AMD_draw_buffers_blend GL_AMD_multi_draw_indirect GL_AMD_seamless_cubemap_per_texture GL_AMD_shader_trinary_minmax GL_AMD_texture_texture4 GL_AMD_vertex_shader_layer GL_AMD_vertex_shader_viewport_index GL_ANGLE_texture_compression_dxt3 GL_ANGLE_texture_compression_dxt5 GL_APPLE_object_purgeable GL_ARB_ES2_compatibility GL_ARB_ES3_compatibility GL_ARB_arrays_of_arrays GL_ARB_base_instance GL_ARB_blend_func_extended GL_ARB_buffer_storage GL_ARB_clear_buffer_object GL_ARB_clear_texture GL_ARB_clip_control GL_ARB_compressed_texture_pixel_storage GL_ARB_compute_shader GL_ARB_conditional_render_inverted GL_ARB_conservative_depth GL_ARB_copy_buffer GL_ARB_copy_image GL_ARB_cull_distance GL_ARB_debug_output GL_ARB_depth_buffer_float GL_ARB_depth_clamp GL_ARB_derivative_control GL_ARB_direct_state_access GL_ARB_draw_buffers GL_ARB_draw_buffers_blend GL_ARB_draw_elements_base_vertex GL_ARB_draw_indirect GL_ARB_draw_instanced GL_ARB_enhanced_layouts GL_ARB_explicit_attrib_location GL_ARB_explicit_uniform_location GL_ARB_fragment_coord_conventions GL_ARB_fragment_layer_viewport GL_ARB_fragment_shader GL_ARB_framebuffer_no_attachments GL_ARB_framebuffer_object GL_ARB_framebuffer_sRGB GL_ARB_get_program_binary GL_ARB_get_texture_sub_image GL_ARB_gl_spirv GL_ARB_gpu_shader5 GL_ARB_gpu_shader_fp64 GL_ARB_half_float_pixel GL_ARB_half_float_vertex GL_ARB_indirect_parameters GL_ARB_instanced_arrays GL_ARB_internalformat_query GL_ARB_internalformat_query2 GL_ARB_invalidate_subdata GL_ARB_map_buffer_alignment GL_ARB_map_buffer_range GL_ARB_multi_bind GL_ARB_multi_draw_indirect GL_ARB_occlusion_query2 GL_ARB_parallel_shader_compile GL_ARB_pipeline_statistics_query GL_ARB_pixel_buffer_object GL_ARB_point_sprite GL_ARB_polygon_offset_clamp GL_ARB_program_interface_query GL_ARB_provoking_vertex GL_ARB_robustness GL_ARB_sample_shading GL_ARB_sampler_objects GL_ARB_seamless_cube_map GL_ARB_seamless_cubemap_per_texture GL_ARB_separate_shader_objects GL_ARB_shader_atomic_counter_ops GL_ARB_shader_atomic_counters GL_ARB_shader_bit_encoding GL_ARB_shader_clock GL_ARB_shader_draw_parameters GL_ARB_shader_group_vote GL_ARB_shader_image_load_store GL_ARB_shader_image_size GL_ARB_shader_objects GL_ARB_shader_precision GL_ARB_shader_storage_buffer_object GL_ARB_shader_subroutine GL_ARB_shader_texture_image_samples GL_ARB_shader_texture_lod GL_ARB_shader_viewport_layer_array GL_ARB_shading_language_420pack GL_ARB_shading_language_include GL_ARB_shading_language_packing GL_ARB_spirv_extensions GL_ARB_sync GL_ARB_tessellation_shader GL_ARB_texture_barrier GL_ARB_texture_buffer_object GL_ARB_texture_buffer_object_rgb32 GL_ARB_texture_buffer_range GL_ARB_texture_compression_bptc GL_ARB_texture_compression_rgtc GL_ARB_texture_cube_map_array GL_ARB_texture_filter_anisotropic GL_ARB_texture_float GL_ARB_texture_gather GL_ARB_texture_mirror_clamp_to_edge GL_ARB_texture_multisample GL_ARB_texture_non_power_of_two GL_ARB_texture_query_levels GL_ARB_texture_query_lod GL_ARB_texture_rectangle GL_ARB_texture_rg GL_ARB_texture_rgb10_a2ui GL_ARB_texture_storage GL_ARB_texture_storage_multisample GL_ARB_texture_swizzle GL_ARB_texture_view GL_ARB_timer_query GL_ARB_transform_feedback2 GL_ARB_transform_feedback3 GL_ARB_transform_feedback_instanced GL_ARB_transform_feedback_overflow_query GL_ARB_uniform_buffer_object GL_ARB_vertex_array_bgra GL_ARB_vertex_array_object GL_ARB_vertex_attrib_64bit GL_ARB_vertex_attrib_binding GL_ARB_vertex_buffer_object GL_ARB_vertex_shader GL_ARB_vertex_type_10f_11f_11f_rev GL_ARB_vertex_type_2_10_10_10_rev GL_ARB_viewport_array GL_ATI_blend_equation_separate GL_ATI_texture_float GL_EXT_EGL_image_storage GL_EXT_EGL_sync GL_EXT_abgr GL_EXT_blend_equation_separate GL_EXT_demote_to_helper_invocation GL_EXT_draw_buffers2 GL_EXT_draw_instanced GL_EXT_framebuffer_blit GL_EXT_framebuffer_multisample GL_EXT_framebuffer_multisample_blit_scaled GL_EXT_framebuffer_object GL_EXT_framebuffer_sRGB GL_EXT_packed_depth_stencil GL_EXT_packed_float GL_EXT_pixel_buffer_object GL_EXT_polygon_offset_clamp GL_EXT_provoking_vertex GL_EXT_shader_framebuffer_fetch_non_coherent GL_EXT_shader_integer_mix GL_EXT_shader_samples_identical GL_EXT_texture_array GL_EXT_texture_compression_dxt1 GL_EXT_texture_compression_rgtc GL_EXT_texture_compression_s3tc GL_EXT_texture_filter_anisotropic GL_EXT_texture_integer GL_EXT_texture_sRGB GL_EXT_texture_sRGB_R8 GL_EXT_texture_sRGB_decode GL_EXT_texture_shadow_lod GL_EXT_texture_shared_exponent GL_EXT_texture_snorm GL_EXT_texture_swizzle GL_EXT_timer_query GL_EXT_transform_feedback GL_EXT_vertex_array_bgra GL_EXT_vertex_attrib_64bit GL_IBM_multimode_draw_arrays GL_INTEL_blackhole_render GL_INTEL_performance_query GL_KHR_blend_equation_advanced GL_KHR_context_flush_control GL_KHR_debug GL_KHR_no_error GL_KHR_parallel_shader_compile GL_KHR_robustness GL_MESA_pack_invert GL_MESA_shader_integer_functions GL_MESA_texture_signed_rgba GL_NV_compute_shader_derivatives GL_NV_conditional_render GL_NV_depth_clamp GL_NV_packed_depth_stencil GL_NV_texture_barrier GL_OES_EGL_image GL_S3_s3tc
EGL_VERSION
1.4
EGL_VENDOR
Mesa Project
EGL_EXTENSIONS
EGL_EXT_client_extensions EGL_EXT_device_base EGL_EXT_device_enumeration EGL_EXT_device_query EGL_EXT_platform_base EGL_KHR_client_get_all_proc_addresses EGL_KHR_debug EGL_EXT_platform_wayland EGL_EXT_platform_x11 EGL_MESA_platform_gbm EGL_MESA_platform_surfaceless EGL_EXT_platform_device EGL_ANDROID_blob_cache EGL_ANDROID_native_fence_sync EGL_EXT_buffer_age EGL_EXT_create_context_robustness EGL_EXT_image_dma_buf_import EGL_EXT_image_dma_buf_import_modifiers EGL_EXT_swap_buffers_with_damage EGL_KHR_config_attribs EGL_KHR_create_context EGL_KHR_create_context_no_error EGL_KHR_fence_sync EGL_KHR_get_all_proc_addresses EGL_KHR_gl_colorspace EGL_KHR_gl_renderbuffer_image EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_3D_image EGL_KHR_gl_texture_cubemap_image EGL_KHR_image_base EGL_KHR_no_config_context EGL_KHR_reusable_sync EGL_KHR_surfaceless_context EGL_KHR_swap_buffers_with_damage EGL_EXT_pixel_format_float EGL_KHR_wait_sync EGL_MESA_configless_context EGL_MESA_drm_image EGL_MESA_image_dma_buf_export EGL_MESA_query_driver EGL_WL_bind_wayland_display EGL_WL_create_wayland_buffer_from_image</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1697245</commentid>
    <comment_count>5</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2020-10-13 07:29:24 -0700</bug_when>
    <thetext>This build option is removed in bug #217603, so probably better to not use it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1697254</commentid>
    <comment_count>6</comment_count>
    <who name="Adrian Perez">aperez</who>
    <bug_when>2020-10-13 07:53:17 -0700</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #5)
&gt; This build option is removed in bug #217603, so probably better to not use
&gt; it.

For the record, we fixed the build in bug #217384 and backported the fix
to the 2.30.x branch. The rationale is that 2.30.0 and 2.30.1 are already
published with the option available, so it&apos;s desirable to have a fix for
the release branch (2.30.2 will include it) — so at the moment it&apos;s possible
to build both trunk and the 2.30.x branch with the option.

While fixing things, we discussed a bit about the future for this option,
and decided that it could be a good idea to remove it: it&apos;s never built
nor tested by default, therefore it tends to break and bitrot; and while
in some cases it gives marginal rendering performance improvements, in
many situations it makes things worse. The latter is why it&apos;s not enabled
by default.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1697255</commentid>
    <comment_count>7</comment_count>
    <who name="Adrian Perez">aperez</who>
    <bug_when>2020-10-13 07:53:37 -0700</bug_when>
    <thetext>

*** This bug has been marked as a duplicate of bug 217603 ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1697257</commentid>
    <comment_count>8</comment_count>
    <who name="Adrian Perez">aperez</who>
    <bug_when>2020-10-13 07:53:56 -0700</bug_when>
    <thetext>

*** This bug has been marked as a duplicate of bug 217384 ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1697261</commentid>
    <comment_count>9</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2020-10-13 08:07:29 -0700</bug_when>
    <thetext>(In reply to Adrian Perez from comment #6)
&gt; For the record, we fixed the build in bug #217384 and backported the fix
&gt; to the 2.30.x branch.

Hm, there&apos;s also bug #216602 (which I didn&apos;t close, maybe should?).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1697338</commentid>
    <comment_count>10</comment_count>
    <who name="Adrian Perez">aperez</who>
    <bug_when>2020-10-13 12:24:02 -0700</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #9)
&gt; (In reply to Adrian Perez from comment #6)
&gt; &gt; For the record, we fixed the build in bug #217384 and backported the fix
&gt; &gt; to the 2.30.x branch.
&gt; 
&gt; Hm, there&apos;s also bug #216602 (which I didn&apos;t close, maybe should?).

I closed it as well, thanks for pointing me to it; somehow I managed
to miss it back when it was filed 😓️</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>392299</attachid>
            <date>2020-03-03 11:00:50 -0800</date>
            <delta_ts>2020-03-03 11:00:50 -0800</delta_ts>
            <desc>log of build failure</desc>
            <filename>build-failure.txt</filename>
            <type>text/plain</type>
            <size>5618</size>
            <attacher name="Que Quotion">quequotion</attacher>
            
              <data encoding="base64">WyA3NiVdIEJ1aWxkaW5nIENYWCBvYmplY3QgU291cmNlL1dlYkNvcmUvQ01ha2VGaWxlcy9XZWJD
b3JlLmRpci9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvbXNlL0dTdHJlYW1lclJlZ2lzdHJ5
U2Nhbm5lck1TRS5jcHAubwpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3Vzci9pbmNsdWRlL1gxMS9Y
bGliLmg6NDQsCiAgICAgICAgICAgICAgICAgZnJvbSAvdXNyL2luY2x1ZGUvR0wvZ2x4Lmg6MzAs
CiAgICAgICAgICAgICAgICAgZnJvbSAvdXNyL2luY2x1ZGUvY2Fpcm8vY2Fpcm8tZ2wuaDo5NiwK
ICAgICAgICAgICAgICAgICBmcm9tIC9idWlsZC93ZWJraXQyZ3RrL3NyYy93ZWJraXRndGstMi4y
Ny40L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXll
clByaXZhdGVHU3RyZWFtZXIuY3BwOjEzOToKL2J1aWxkL3dlYmtpdDJndGsvc3JjL3dlYmtpdGd0
ay0yLjI3LjQvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlh
UGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHA6IEluIG1lbWJlciBmdW5jdGlvbiDigJh2b2lkIFdl
YkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lcjo6bG9hZEZ1bGwoY29uc3QgV1RGOjpT
dHJpbmcmLCBjb25zdCBXVEY6OlN0cmluZyYp4oCZOgovYnVpbGQvd2Via2l0Mmd0ay9zcmMvd2Vi
a2l0Z3RrLTIuMjcuNC9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIv
TWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNwcDo1Mjk6NDQ6IGVycm9yOiBleHBlY3RlZCB1
bnF1YWxpZmllZC1pZCBiZWZvcmUgbnVtZXJpYyBjb25zdGFudAogIDUyOSB8ICAgICBpZiAobV9w
cmVsb2FkID09IE1lZGlhUGxheWVyOjpQcmVsb2FkOjpOb25lKSB7CiAgICAgIHwgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+fn4KL2J1aWxkL3dlYmtpdDJndGsv
c3JjL3dlYmtpdGd0ay0yLjI3LjQvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0
cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHA6NTI5OjMzOiBlcnJvcjogZXhw
ZWN0ZWQg4oCYKeKAmSBiZWZvcmUgbnVtZXJpYyBjb25zdGFudAogIDUyOSB8ICAgICBpZiAobV9w
cmVsb2FkID09IE1lZGlhUGxheWVyOjpQcmVsb2FkOjpOb25lKSB7CiAgICAgIHwgICAgICAgIH4g
ICAgICAgICAgICAgICAgICAgICAgICBeCiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICApCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdXNyL2luY2x1ZGUvWDExL1hsaWIuaDo0
NCwKICAgICAgICAgICAgICAgICBmcm9tIC91c3IvaW5jbHVkZS9HTC9nbHguaDozMCwKICAgICAg
ICAgICAgICAgICBmcm9tIC91c3IvaW5jbHVkZS9jYWlyby9jYWlyby1nbC5oOjk2LAogICAgICAg
ICAgICAgICAgIGZyb20gL2J1aWxkL3dlYmtpdDJndGsvc3JjL3dlYmtpdGd0ay0yLjI3LjQvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0
ZUdTdHJlYW1lci5jcHA6MTM5OgovYnVpbGQvd2Via2l0Mmd0ay9zcmMvd2Via2l0Z3RrLTIuMjcu
NC9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQ
cml2YXRlR1N0cmVhbWVyLmNwcDogSW4gbWVtYmVyIGZ1bmN0aW9uIOKAmHZpcnR1YWwgdm9pZCBX
ZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXI6OnNldFByZWxvYWQoV2ViQ29yZTo6
TWVkaWFQbGF5ZXJFbnVtczo6UHJlbG9hZCnigJk6Ci9idWlsZC93ZWJraXQyZ3RrL3NyYy93ZWJr
aXRndGstMi4yNy40L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9N
ZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3BwOjg0NTo2NDogZXJyb3I6IGV4cGVjdGVkIHVu
cXVhbGlmaWVkLWlkIGJlZm9yZSBudW1lcmljIGNvbnN0YW50CiAgODQ1IHwgICAgIGlmIChtX2lz
RGVsYXlpbmdMb2FkICYmIG1fcHJlbG9hZCAhPSBNZWRpYVBsYXllcjo6UHJlbG9hZDo6Tm9uZSkg
ewogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIF5+fn4KL2J1aWxkL3dlYmtpdDJndGsvc3JjL3dlYmtpdGd0ay0yLjI3
LjQvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVy
UHJpdmF0ZUdTdHJlYW1lci5jcHA6ODQ1OjUzOiBlcnJvcjogZXhwZWN0ZWQg4oCYKeKAmSBiZWZv
cmUgbnVtZXJpYyBjb25zdGFudAogIDg0NSB8ICAgICBpZiAobV9pc0RlbGF5aW5nTG9hZCAmJiBt
X3ByZWxvYWQgIT0gTWVkaWFQbGF5ZXI6OlByZWxvYWQ6Ok5vbmUpIHsKICAgICAgfCAgICAgICAg
fiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgogICAgICB8ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApClsgNzcl
XSBCdWlsZGluZyBDWFggb2JqZWN0IFNvdXJjZS9XZWJDb3JlL0NNYWtlRmlsZXMvV2ViQ29yZS5k
aXIvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9NZWRpYVBsYXllclByaXZhdGVHU3Ry
ZWFtZXJNU0UuY3BwLm8KL2J1aWxkL3dlYmtpdDJndGsvc3JjL3dlYmtpdGd0ay0yLjI3LjQvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0
ZUdTdHJlYW1lci5jcHA6IEluIG1lbWJlciBmdW5jdGlvbiDigJh2aXJ0dWFsIFdlYkNvcmU6Ok5h
dGl2ZUltYWdlUHRyIFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lcjo6bmF0aXZl
SW1hZ2VGb3JDdXJyZW50VGltZSgp4oCZOgovYnVpbGQvd2Via2l0Mmd0ay9zcmMvd2Via2l0Z3Rr
LTIuMjcuNC9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQ
bGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNwcDozMzUxOjI2OiBlcnJvcjog4oCYUGxhdGZvcm1EaXNw
bGF54oCZIGhhcyBub3QgYmVlbiBkZWNsYXJlZAogMzM1MSB8ICAgICBHTENvbnRleHQqIGNvbnRl
eHQgPSBQbGF0Zm9ybURpc3BsYXk6OnNoYXJlZERpc3BsYXlGb3JDb21wb3NpdGluZygpLnNoYXJp
bmdHTENvbnRleHQoKTsKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+
fn5+fn5+Ci9idWlsZC93ZWJraXQyZ3RrL3NyYy93ZWJraXRndGstMi4yNy40L1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFt
ZXIuY3BwOjMzNTI6MTI6IGVycm9yOiBpbnZhbGlkIHVzZSBvZiBpbmNvbXBsZXRlIHR5cGUg4oCY
Y2xhc3MgV2ViQ29yZTo6R0xDb250ZXh04oCZCiAzMzUyIHwgICAgIGNvbnRleHQtPm1ha2VDb250
ZXh0Q3VycmVudCgpOwogICAgICB8ICAgICAgICAgICAgXn4KSW4gZmlsZSBpbmNsdWRlZCBmcm9t
IC9idWlsZC93ZWJraXQyZ3RrL3NyYy93ZWJraXRndGstMi4yNy40L1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3Bw
OjI3OgovYnVpbGQvd2Via2l0Mmd0ay9zcmMvd2Via2l0Z3RrLTIuMjcuNC9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVy
Lmg6ODc6Nzogbm90ZTogZm9yd2FyZCBkZWNsYXJhdGlvbiBvZiDigJhjbGFzcyBXZWJDb3JlOjpH
TENvbnRleHTigJkKICAgODcgfCBjbGFzcyBHTENvbnRleHQ7CiAgICAgIHwgICAgICAgXn5+fn5+
fn5+Ci9idWlsZC93ZWJraXQyZ3RrL3NyYy93ZWJraXRndGstMi4yNy40L1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIu
Y3BwOjMzNjI6NjQ6IGVycm9yOiBpbnZhbGlkIHVzZSBvZiBpbmNvbXBsZXRlIHR5cGUg4oCYY2xh
c3MgV2ViQ29yZTo6R0xDb250ZXh04oCZCiAzMzYyIHwgICAgIHJldHVybiBhZG9wdFJlZihjYWly
b19nbF9zdXJmYWNlX2NyZWF0ZV9mb3JfdGV4dHVyZShjb250ZXh0LT5jYWlyb0RldmljZSgpLCBD
QUlST19DT05URU5UX0NPTE9SX0FMUEhBLCBtX3ZpZGVvVGV4dHVyZUNvcGllci0+cmVzdWx0VGV4
dHVyZSgpLCBzaXplLndpZHRoKCksIHNpemUuaGVpZ2h0KCkpKTsKICAgICAgfCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBefgpJ
biBmaWxlIGluY2x1ZGVkIGZyb20gL2J1aWxkL3dlYmtpdDJndGsvc3JjL3dlYmtpdGd0ay0yLjI3
LjQvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVy
UHJpdmF0ZUdTdHJlYW1lci5jcHA6Mjc6Ci9idWlsZC93ZWJraXQyZ3RrL3NyYy93ZWJraXRndGst
Mi4yNy40L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBs
YXllclByaXZhdGVHU3RyZWFtZXIuaDo4Nzo3OiBub3RlOiBmb3J3YXJkIGRlY2xhcmF0aW9uIG9m
IOKAmGNsYXNzIFdlYkNvcmU6OkdMQ29udGV4dOKAmQogICA4NyB8IGNsYXNzIEdMQ29udGV4dDsK
ICAgICAgfCAgICAgICBefn5+fn5+fn4KWyA3NyVdIEJ1aWxkaW5nIENYWCBvYmplY3QgU291cmNl
L1dlYkNvcmUvQ01ha2VGaWxlcy9XZWJDb3JlLmRpci9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFt
ZXIvbXNlL01lZGlhU291cmNlQ2xpZW50R1N0cmVhbWVyTVNFLmNwcC5vClsgNzclXSBCdWlsZGlu
ZyBDWFggb2JqZWN0IFNvdXJjZS9XZWJDb3JlL0NNYWtlRmlsZXMvV2ViQ29yZS5kaXIvcGxhdGZv
cm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL21zZS9NZWRpYVNvdXJjZUdTdHJlYW1lci5jcHAubwpbIDc3
JV0gQnVpbGRpbmcgQ1hYIG9iamVjdCBTb3VyY2UvV2ViQ29yZS9DTWFrZUZpbGVzL1dlYkNvcmUu
ZGlyL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvUGxheWJhY2tQaXBlbGluZS5jcHAu
bwpbIDc3JV0gQnVpbGRpbmcgQ1hYIG9iamVjdCBTb3VyY2UvV2ViQ29yZS9DTWFrZUZpbGVzL1dl
YkNvcmUuZGlyL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9tc2UvU291cmNlQnVmZmVyUHJp
dmF0ZUdTdHJlYW1lci5jcHAubwptYWtlWzJdOiAqKiogW1NvdXJjZS9XZWJDb3JlL0NNYWtlRmls
ZXMvV2ViQ29yZS5kaXIvYnVpbGQubWFrZToxNDUxOiBTb3VyY2UvV2ViQ29yZS9DTWFrZUZpbGVz
L1dlYkNvcmUuZGlyL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZh
dGVHU3RyZWFtZXIuY3BwLm9dIEVycm9yIDEKbWFrZVsyXTogKioqIFdhaXRpbmcgZm9yIHVuZmlu
aXNoZWQgam9icy4uLi4KbWFrZVsyXTogTGVhdmluZyBkaXJlY3RvcnkgJy9idWlsZC93ZWJraXQy
Z3RrL3NyYy9idWlsZCcKbWFrZVsxXTogKioqIFtDTWFrZUZpbGVzL01ha2VmaWxlMjoxMDIyOiBT
b3VyY2UvV2ViQ29yZS9DTWFrZUZpbGVzL1dlYkNvcmUuZGlyL2FsbF0gRXJyb3IgMgptYWtlWzFd
OiBMZWF2aW5nIGRpcmVjdG9yeSAnL2J1aWxkL3dlYmtpdDJndGsvc3JjL2J1aWxkJwptYWtlOiAq
KiogW01ha2VmaWxlOjE1MjogYWxsXSBFcnJvciAyCgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>394163</attachid>
            <date>2020-03-21 02:39:24 -0700</date>
            <delta_ts>2020-03-21 02:39:24 -0700</delta_ts>
            <desc>Enable use of EGL/OpenGL(core 4.2) for GTK/WPE builds</desc>
            <filename>OpenGL4-EGL.patch</filename>
            <type>text/plain</type>
            <size>17184</size>
            <attacher name="Steven Newbury">steve</attacher>
            
              <data encoding="base64">LS0tIC4vU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZWdsL0dMQ29udGV4dEVHTC5j
cHB+CTIwMTktMDYtMTIgMjM6Mzc6MzcuMDAwMDAwMDAwICswMTAwCisrKyAuL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2VnbC9HTENvbnRleHRFR0wuY3BwCTIwMTktMDYtMTMgMTg6
MDk6MDMuNzk3NTI2ODc2ICswMTAwCkBAIC0xNzMsNyArMTczLDEwIEBACiAgICAgfQogCiAgICAg
RUdMU3VyZmFjZSBzdXJmYWNlID0gRUdMX05PX1NVUkZBQ0U7Ci0jaWYgUExBVEZPUk0oR1RLKQor
I2lmIFVTRShXUEVfUkVOREVSRVIpCisgICAgaWYgKHBsYXRmb3JtRGlzcGxheS50eXBlKCkgPT0g
UGxhdGZvcm1EaXNwbGF5OjpUeXBlOjpXUEUpCisgICAgICAgIHN1cmZhY2UgPSBjcmVhdGVXaW5k
b3dTdXJmYWNlV1BFKGRpc3BsYXksIGNvbmZpZywgd2luZG93KTsKKyNlbGlmIFBMQVRGT1JNKEdU
SykKICNpZiBQTEFURk9STShYMTEpCiAgICAgaWYgKHBsYXRmb3JtRGlzcGxheS50eXBlKCkgPT0g
UGxhdGZvcm1EaXNwbGF5OjpUeXBlOjpYMTEpCiAgICAgICAgIHN1cmZhY2UgPSBjcmVhdGVXaW5k
b3dTdXJmYWNlWDExKGRpc3BsYXksIGNvbmZpZywgd2luZG93KTsKQEAgLTE4MiwxMSArMTg1LDYg
QEAKICAgICBpZiAocGxhdGZvcm1EaXNwbGF5LnR5cGUoKSA9PSBQbGF0Zm9ybURpc3BsYXk6OlR5
cGU6OldheWxhbmQpCiAgICAgICAgIHN1cmZhY2UgPSBjcmVhdGVXaW5kb3dTdXJmYWNlV2F5bGFu
ZChkaXNwbGF5LCBjb25maWcsIHdpbmRvdyk7CiAjZW5kaWYKLSNlbmRpZgotCi0jaWYgVVNFKFdQ
RV9SRU5ERVJFUikKLSAgICBpZiAocGxhdGZvcm1EaXNwbGF5LnR5cGUoKSA9PSBQbGF0Zm9ybURp
c3BsYXk6OlR5cGU6OldQRSkKLSAgICAgICAgc3VyZmFjZSA9IGNyZWF0ZVdpbmRvd1N1cmZhY2VX
UEUoZGlzcGxheSwgY29uZmlnLCB3aW5kb3cpOwogI2Vsc2UKICAgICBzdXJmYWNlID0gZWdsQ3Jl
YXRlV2luZG93U3VyZmFjZShkaXNwbGF5LCBjb25maWcsIHN0YXRpY19jYXN0PEVHTE5hdGl2ZVdp
bmRvd1R5cGU+KHdpbmRvdyksIG51bGxwdHIpOwogI2VuZGlmCi0tLSAuL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL0dMQ29udGV4dC5jcHB+CTIwMjAtMDItMDYgMTE6NTg6MjMuMDAw
MDAwMDAwICswMDAwCisrKyAuL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dMQ29u
dGV4dC5jcHAJMjAyMC0wMi0wNiAxMjowMTozMy42MDQzNDkzOTkgKzAwMDAKQEAgLTI4LDYgKzI4
LDggQEAKIAogI2lmIFVTRShHTFgpCiAjaW5jbHVkZSAiR0xDb250ZXh0R0xYLmgiCisjZW5kaWYK
KyNpZiBVU0UoT1BFTkdMKQogI2luY2x1ZGUgIk9wZW5HTFNoaW1zLmgiCiAjZW5kaWYKIAotLS0g
Li9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ2xpYi9XZWJLaXRQcm90b2NvbEhhbmRsZXIu
Y3BwfgkyMDIwLTAyLTA1IDIyOjMzOjE1LjAwMDAwMDAwMCArMDAwMAorKysgLi9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9BUEkvZ2xpYi9XZWJLaXRQcm90b2NvbEhhbmRsZXIuY3BwCTIwMjAtMDIt
MDYgMTI6NDI6NDguOTkxMzExNTkyICswMDAwCkBAIC02NCw2ICs2NCw5IEBACiAKICNpZiBVU0Uo
R0xYKQogI2luY2x1ZGUgPEdML2dseC5oPgorI2VuZGlmCisKKyNpZiBVU0UoT1BFTkdMKQogI2lu
Y2x1ZGUgPFdlYkNvcmUvT3BlbkdMU2hpbXMuaD4KICNlbmRpZgogCi0tLSAuL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzVHlwZXNHTC5ofgkyMDE5LTA2LTExIDE0OjQx
OjM1LjAwMDAwMDAwMCArMDEwMAorKysgLi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9HcmFwaGljc1R5cGVzR0wuaAkyMDE5LTA2LTExIDE3OjA4OjA5LjYzNzg4NDkzNyArMDEwMApA
QCAtNDYsOCArNDYsOCBAQAogdHlwZWRlZiBpbnRwdHJfdCBHQ0dMaW50cHRyOwogdHlwZWRlZiBp
bnRwdHJfdCBHQ0dMc2l6ZWlwdHI7CiB0eXBlZGVmIGNoYXIgR0NHTGNoYXI7Ci10eXBlZGVmIGxv
bmcgbG9uZyBHQ0dMaW50NjQ7Ci10eXBlZGVmIHVuc2lnbmVkIGxvbmcgbG9uZyBHQ0dMdWludDY0
OwordHlwZWRlZiBpbnQ2NF90IEdDR0xpbnQ2NDsKK3R5cGVkZWYgdWludDY0X3QgR0NHTHVpbnQ2
NDsKIAogdHlwZWRlZiBHQ0dMdWludCBQbGF0Zm9ybTNET2JqZWN0OwogCi0tLSAuL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL09wZW5HTFNoaW1zLmgub3JpZwkyMDE5LTA2LTExIDE4
OjU0OjU5LjcwNzAxNDkxMiArMDEwMAorKysgLi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9PcGVuR0xTaGltcy5oCTIwMTktMDYtMTEgMTg6NTc6MDkuMzE5MDE5MzI2ICswMTAwCkBA
IC01OSw2ICs1OSw5IEBACiB0eXBlZGVmIHZvaWQgKEdMQVBJRU5UUlkgKmdsQ29tcGlsZVNoYWRl
clR5cGUpIChHTHVpbnQpOwogdHlwZWRlZiB2b2lkIChHTEFQSUVOVFJZICpnbENvbXByZXNzZWRU
ZXhJbWFnZTJEVHlwZSkgKEdMZW51bSwgR0xpbnQsIEdMZW51bSwgR0xzaXplaSwgR0xzaXplaSwg
R0xpbnQsIEdMc2l6ZWksIGNvbnN0IEdMdm9pZCopOwogdHlwZWRlZiB2b2lkIChHTEFQSUVOVFJZ
ICpnbENvbXByZXNzZWRUZXhTdWJJbWFnZTJEVHlwZSkgKEdMZW51bSwgR0xpbnQsIEdMaW50LCBH
TGludCwgR0xzaXplaSwgR0xzaXplaSwgR0xlbnVtLCBHTHNpemVpLCBjb25zdCBHTHZvaWQqKTsK
KyNpZiBIQVZFKE9QRU5HTF80KQordHlwZWRlZiB2b2lkIChHTEFQSUVOVFJZICpnbENvcHlCdWZm
ZXJTdWJEYXRhVHlwZSkgKEdMZW51bSwgR0xlbnVtLCBHTGludHB0ciwgR0xpbnRwdHIsIEdMc2l6
ZWlwdHIpOworI2VuZGlmCiB0eXBlZGVmIEdMdWludCAoR0xBUElFTlRSWSAqZ2xDcmVhdGVQcm9n
cmFtVHlwZSkgKCk7CiB0eXBlZGVmIEdMdWludCAoR0xBUElFTlRSWSAqZ2xDcmVhdGVTaGFkZXJU
eXBlKSAoR0xlbnVtKTsKIHR5cGVkZWYgdm9pZCAoR0xBUElFTlRSWSAqZ2xEZWxldGVCdWZmZXJz
VHlwZSkgKEdMc2l6ZWksIGNvbnN0IEdMdWludCopOwpAQCAtODIsMTAgKzg1LDE3IEBACiB0eXBl
ZGVmIHZvaWQgKEdMQVBJRU5UUlkgKmdsR2VuVmVydGV4QXJyYXlzVHlwZSkgKEdMc2l6ZWksIEdM
dWludCopOwogdHlwZWRlZiB2b2lkIChHTEFQSUVOVFJZICpnbEdldEFjdGl2ZUF0dHJpYlR5cGUp
IChHTHVpbnQsIEdMdWludCwgR0xzaXplaSwgR0xzaXplaSosIEdMaW50KiwgR0xlbnVtKiwgR0xj
aGFyKik7CiB0eXBlZGVmIHZvaWQgKEdMQVBJRU5UUlkgKmdsR2V0QWN0aXZlVW5pZm9ybVR5cGUp
IChHTHVpbnQsIEdMdWludCwgR0xzaXplaSwgR0xzaXplaSosIEdMaW50KiwgR0xlbnVtKiwgR0xj
aGFyKik7CisjaWYgSEFWRShPUEVOR0xfNCkKK3R5cGVkZWYgdm9pZCAoR0xBUElFTlRSWSAqZ2xH
ZXRBY3RpdmVVbmlmb3Jtc2l2VHlwZSkgKEdMdWludCwgR0xzaXplaSwgY29uc3QgR0x1aW50Kiwg
R0xlbnVtLCBHTGludCopOworI2VuZGlmCiB0eXBlZGVmIHZvaWQgKEdMQVBJRU5UUlkgKmdsR2V0
QXR0YWNoZWRTaGFkZXJzVHlwZSkgKEdMdWludCwgR0xzaXplaSwgR0xzaXplaSosIEdMdWludCop
OwogdHlwZWRlZiBHTGludCAoR0xBUElFTlRSWSAqZ2xHZXRBdHRyaWJMb2NhdGlvblR5cGUpIChH
THVpbnQsIGNvbnN0IGNoYXIqKTsKIHR5cGVkZWYgdm9pZCAoR0xBUElFTlRSWSAqZ2xHZXRCdWZm
ZXJQYXJhbWV0ZXJpdlR5cGUpIChHTGVudW0sIEdMZW51bSwgR0xpbnQqKTsKIHR5cGVkZWYgdm9p
ZCAoR0xBUElFTlRSWSAqZ2xHZXRGcmFtZWJ1ZmZlckF0dGFjaG1lbnRQYXJhbWV0ZXJpdlR5cGUp
IChHTGVudW0sIEdMZW51bSwgR0xlbnVtLCBHTGludCogcGFyYW1zKTsKKyNpZiBIQVZFKE9QRU5H
TF80KQordHlwZWRlZiB2b2lkIChHTEFQSUVOVFJZICpnbEdldEludGVnZXI2NHZUeXBlKSAoR0xl
bnVtLCBHTGludDY0Kik7Cit0eXBlZGVmIHZvaWQgKEdMQVBJRU5UUlkgKmdsR2V0SW50ZXJuYWxm
b3JtYXRpdlR5cGUpIChHTGVudW0sIEdMZW51bSwgR0xlbnVtLCBHTHNpemVpLCBHTGludCopOwor
I2VuZGlmCiB0eXBlZGVmIHZvaWQgKEdMQVBJRU5UUlkgKmdsR2V0UHJvZ3JhbUluZm9Mb2dUeXBl
KSAoR0x1aW50LCBHTHNpemVpLCBHTHNpemVpKiwgY2hhciopOwogdHlwZWRlZiB2b2lkIChHTEFQ
SUVOVFJZICpnbEdldFByb2dyYW1pdlR5cGUpIChHTHVpbnQsIEdMZW51bSwgR0xpbnQqKTsKIHR5
cGVkZWYgdm9pZCAoR0xBUElFTlRSWSAqZ2xHZXRSZW5kZXJidWZmZXJQYXJhbWV0ZXJpdlR5cGUp
IChHTGVudW0sIEdMZW51bSwgR0xpbnQqKTsKQEAgLTEwNiw2ICsxMTYsMTAgQEAKIHR5cGVkZWYg
R0xib29sZWFuIChHTEFQSUVOVFJZICpnbElzU2hhZGVyVHlwZSkgKEdMdWludCk7CiB0eXBlZGVm
IEdMYm9vbGVhbiAoR0xBUElFTlRSWSAqZ2xJc1ZlcnRleEFycmF5VHlwZSkgKEdMdWludCk7CiB0
eXBlZGVmIHZvaWQgKEdMQVBJRU5UUlkgKmdsTGlua1Byb2dyYW1UeXBlKSAoR0x1aW50KTsKKyNp
ZiBIQVZFKE9QRU5HTF80KQordHlwZWRlZiB2b2lkICooR0xBUElFTlRSWSAqZ2xNYXBCdWZmZXJS
YW5nZVR5cGUpIChHTGVudW0sIEdMaW50cHRyLCBHTHNpemVpcHRyLCBHTGJpdGZpZWxkKTsKK3R5
cGVkZWYgdm9pZCAoR0xBUElFTlRSWSAqZ2xQcmltaXRpdmVSZXN0YXJ0SW5kZXhUeXBlKSAoR0x1
aW50KTsKKyNlbmRpZgogdHlwZWRlZiB2b2lkIChHTEFQSUVOVFJZICpnbFJlbmRlcmJ1ZmZlclN0
b3JhZ2VUeXBlKSAoR0xlbnVtLCBHTGVudW0sIEdMc2l6ZWksIEdMc2l6ZWkpOwogdHlwZWRlZiB2
b2lkIChHTEFQSUVOVFJZICpnbFJlbmRlcmJ1ZmZlclN0b3JhZ2VNdWx0aXNhbXBsZVR5cGUpIChH
TGVudW0sIEdMc2l6ZWksIEdMZW51bSwgR0xzaXplaSwgR0xzaXplaSk7CiB0eXBlZGVmIHZvaWQg
KEdMQVBJRU5UUlkgKmdsU2FtcGxlQ292ZXJhZ2VUeXBlKSAoR0xjbGFtcGYsIEdMYm9vbGVhbik7
CkBAIC0xMTMsNiArMTI3LDEwIEBACiB0eXBlZGVmIHZvaWQgKEdMQVBJRU5UUlkgKmdsU3RlbmNp
bEZ1bmNTZXBhcmF0ZVR5cGUpIChHTGVudW0sIEdMZW51bSwgR0xpbnQsIEdMdWludCk7CiB0eXBl
ZGVmIHZvaWQgKEdMQVBJRU5UUlkgKmdsU3RlbmNpbE1hc2tTZXBhcmF0ZVR5cGUpIChHTGVudW0s
IEdMdWludCk7CiB0eXBlZGVmIHZvaWQgKEdMQVBJRU5UUlkgKmdsU3RlbmNpbE9wU2VwYXJhdGVU
eXBlKSAoR0xlbnVtLCBHTGVudW0sIEdMZW51bSwgR0xlbnVtKTsKKyNpZiBIQVZFKE9QRU5HTF80
KQordHlwZWRlZiB2b2lkIChHTEFQSUVOVFJZICpnbFRleFN0b3JhZ2UyRFR5cGUpIChHTGVudW0s
IEdMc2l6ZWksIEdMZW51bSwgR0xzaXplaSwgR0xzaXplaSk7Cit0eXBlZGVmIHZvaWQgKEdMQVBJ
RU5UUlkgKmdsVGV4U3RvcmFnZTNEVHlwZSkgKEdMZW51bSwgR0xzaXplaSwgR0xlbnVtLCBHTHNp
emVpLCBHTHNpemVpLCBHTHNpemVpKTsKKyNlbmRpZgogdHlwZWRlZiB2b2lkIChHTEFQSUVOVFJZ
ICpnbFVuaWZvcm0xZlR5cGUpIChHTGludCwgR0xmbG9hdCk7CiB0eXBlZGVmIHZvaWQgKEdMQVBJ
RU5UUlkgKmdsVW5pZm9ybTFmdlR5cGUpIChHTGludCwgR0xzaXplaSwgY29uc3QgR0xmbG9hdCop
OwogdHlwZWRlZiB2b2lkIChHTEFQSUVOVFJZICpnbFVuaWZvcm0xaVR5cGUpIChHTGludCwgR0xp
bnQpOwpAQCAtMTMyLDYgKzE1MCw5IEBACiB0eXBlZGVmIHZvaWQgKEdMQVBJRU5UUlkgKmdsVW5p
Zm9ybU1hdHJpeDJmdlR5cGUpIChHTGludCwgR0xzaXplaSwgR0xib29sZWFuLCBjb25zdCBHTGZs
b2F0Kik7CiB0eXBlZGVmIHZvaWQgKEdMQVBJRU5UUlkgKmdsVW5pZm9ybU1hdHJpeDNmdlR5cGUp
IChHTGludCwgR0xzaXplaSwgR0xib29sZWFuLCBjb25zdCBHTGZsb2F0Kik7CiB0eXBlZGVmIHZv
aWQgKEdMQVBJRU5UUlkgKmdsVW5pZm9ybU1hdHJpeDRmdlR5cGUpIChHTGludCwgR0xzaXplaSwg
R0xib29sZWFuLCBjb25zdCBHTGZsb2F0Kik7CisjaWYgSEFWRShPUEVOR0xfNCkKK3R5cGVkZWYg
R0xib29sZWFuIChHTEFQSUVOVFJZICpnbFVubWFwQnVmZmVyVHlwZSkgKEdMZW51bSk7CisjZW5k
aWYKIHR5cGVkZWYgdm9pZCAoR0xBUElFTlRSWSAqZ2xVc2VQcm9ncmFtVHlwZSkgKEdMdWludCk7
CiB0eXBlZGVmIHZvaWQgKEdMQVBJRU5UUlkgKmdsVmFsaWRhdGVQcm9ncmFtVHlwZSkgKEdMdWlu
dCk7CiB0eXBlZGVmIHZvaWQgKEdMQVBJRU5UUlkgKmdsVmVydGV4QXR0cmliMWZUeXBlKSAoR0x1
aW50LCBjb25zdCBHTGZsb2F0KTsKQEAgLTE2Niw2ICsxODcsOSBAQAogICAgIEZVTkNUSU9OX1RB
QkxFX0VOVFJZKGdsQ29tcGlsZVNoYWRlcik7CiAgICAgRlVOQ1RJT05fVEFCTEVfRU5UUlkoZ2xD
b21wcmVzc2VkVGV4SW1hZ2UyRCk7CiAgICAgRlVOQ1RJT05fVEFCTEVfRU5UUlkoZ2xDb21wcmVz
c2VkVGV4U3ViSW1hZ2UyRCk7CisjaWYgSEFWRShPUEVOR0xfNCkKKyAgICBGVU5DVElPTl9UQUJM
RV9FTlRSWShnbENvcHlCdWZmZXJTdWJEYXRhKTsKKyNlbmRpZgogICAgIEZVTkNUSU9OX1RBQkxF
X0VOVFJZKGdsQ3JlYXRlUHJvZ3JhbSk7CiAgICAgRlVOQ1RJT05fVEFCTEVfRU5UUlkoZ2xDcmVh
dGVTaGFkZXIpOwogICAgIEZVTkNUSU9OX1RBQkxFX0VOVFJZKGdsRGVsZXRlQnVmZmVycyk7CkBA
IC0xODksMTAgKzIxMywxNyBAQAogICAgIEZVTkNUSU9OX1RBQkxFX0VOVFJZKGdsR2VuVmVydGV4
QXJyYXlzKTsKICAgICBGVU5DVElPTl9UQUJMRV9FTlRSWShnbEdldEFjdGl2ZUF0dHJpYik7CiAg
ICAgRlVOQ1RJT05fVEFCTEVfRU5UUlkoZ2xHZXRBY3RpdmVVbmlmb3JtKTsKKyNpZiBIQVZFKE9Q
RU5HTF80KQorICAgIEZVTkNUSU9OX1RBQkxFX0VOVFJZKGdsR2V0QWN0aXZlVW5pZm9ybXNpdik7
CisjZW5kaWYKICAgICBGVU5DVElPTl9UQUJMRV9FTlRSWShnbEdldEF0dGFjaGVkU2hhZGVycyk7
CiAgICAgRlVOQ1RJT05fVEFCTEVfRU5UUlkoZ2xHZXRBdHRyaWJMb2NhdGlvbik7CiAgICAgRlVO
Q1RJT05fVEFCTEVfRU5UUlkoZ2xHZXRCdWZmZXJQYXJhbWV0ZXJpdik7CiAgICAgRlVOQ1RJT05f
VEFCTEVfRU5UUlkoZ2xHZXRGcmFtZWJ1ZmZlckF0dGFjaG1lbnRQYXJhbWV0ZXJpdik7CisjaWYg
SEFWRShPUEVOR0xfNCkKKyAgICBGVU5DVElPTl9UQUJMRV9FTlRSWShnbEdldEludGVnZXI2NHYp
OworICAgIEZVTkNUSU9OX1RBQkxFX0VOVFJZKGdsR2V0SW50ZXJuYWxmb3JtYXRpdik7CisjZW5k
aWYKICAgICBGVU5DVElPTl9UQUJMRV9FTlRSWShnbEdldFByb2dyYW1JbmZvTG9nKTsKICAgICBG
VU5DVElPTl9UQUJMRV9FTlRSWShnbEdldFByb2dyYW1pdik7CiAgICAgRlVOQ1RJT05fVEFCTEVf
RU5UUlkoZ2xHZXRSZW5kZXJidWZmZXJQYXJhbWV0ZXJpdik7CkBAIC0yMTMsNiArMjQ0LDEwIEBA
CiAgICAgRlVOQ1RJT05fVEFCTEVfRU5UUlkoZ2xJc1NoYWRlcik7CiAgICAgRlVOQ1RJT05fVEFC
TEVfRU5UUlkoZ2xJc1ZlcnRleEFycmF5KTsKICAgICBGVU5DVElPTl9UQUJMRV9FTlRSWShnbExp
bmtQcm9ncmFtKTsKKyNpZiBIQVZFKE9QRU5HTF80KQorICAgIEZVTkNUSU9OX1RBQkxFX0VOVFJZ
KGdsTWFwQnVmZmVyUmFuZ2UpOworICAgIEZVTkNUSU9OX1RBQkxFX0VOVFJZKGdsUHJpbWl0aXZl
UmVzdGFydEluZGV4KTsKKyNlbmRpZgogICAgIEZVTkNUSU9OX1RBQkxFX0VOVFJZKGdsUmVuZGVy
YnVmZmVyU3RvcmFnZSk7CiAgICAgRlVOQ1RJT05fVEFCTEVfRU5UUlkoZ2xSZW5kZXJidWZmZXJT
dG9yYWdlTXVsdGlzYW1wbGUpOwogICAgIEZVTkNUSU9OX1RBQkxFX0VOVFJZKGdsU2FtcGxlQ292
ZXJhZ2UpOwpAQCAtMjIwLDYgKzI1NSwxMCBAQAogICAgIEZVTkNUSU9OX1RBQkxFX0VOVFJZKGds
U3RlbmNpbEZ1bmNTZXBhcmF0ZSk7CiAgICAgRlVOQ1RJT05fVEFCTEVfRU5UUlkoZ2xTdGVuY2ls
TWFza1NlcGFyYXRlKTsKICAgICBGVU5DVElPTl9UQUJMRV9FTlRSWShnbFN0ZW5jaWxPcFNlcGFy
YXRlKTsKKyNpZiBIQVZFKE9QRU5HTF80KQorICAgIEZVTkNUSU9OX1RBQkxFX0VOVFJZKGdsVGV4
U3RvcmFnZTJEKTsKKyAgICBGVU5DVElPTl9UQUJMRV9FTlRSWShnbFRleFN0b3JhZ2UzRCk7Cisj
ZW5kaWYKICAgICBGVU5DVElPTl9UQUJMRV9FTlRSWShnbFVuaWZvcm0xZik7CiAgICAgRlVOQ1RJ
T05fVEFCTEVfRU5UUlkoZ2xVbmlmb3JtMWZ2KTsKICAgICBGVU5DVElPTl9UQUJMRV9FTlRSWShn
bFVuaWZvcm0xaSk7CkBAIC0yMzksNiArMjc4LDkgQEAKICAgICBGVU5DVElPTl9UQUJMRV9FTlRS
WShnbFVuaWZvcm1NYXRyaXgyZnYpOwogICAgIEZVTkNUSU9OX1RBQkxFX0VOVFJZKGdsVW5pZm9y
bU1hdHJpeDNmdik7CiAgICAgRlVOQ1RJT05fVEFCTEVfRU5UUlkoZ2xVbmlmb3JtTWF0cml4NGZ2
KTsKKyNpZiBIQVZFKE9QRU5HTF80KQorICAgIEZVTkNUSU9OX1RBQkxFX0VOVFJZKGdsVW5tYXBC
dWZmZXIpOworI2VuZGlmCiAgICAgRlVOQ1RJT05fVEFCTEVfRU5UUlkoZ2xVc2VQcm9ncmFtKTsK
ICAgICBGVU5DVElPTl9UQUJMRV9FTlRSWShnbFZhbGlkYXRlUHJvZ3JhbSk7CiAgICAgRlVOQ1RJ
T05fVEFCTEVfRU5UUlkoZ2xWZXJ0ZXhBdHRyaWIxZik7CkBAIC0yNzksNiArMzIxLDkgQEAKICNk
ZWZpbmUgZ2xDb21waWxlU2hhZGVyICAgICAgICAgICAgICAgICAgICAgICAgTE9PS1VQX0dMX0ZV
TkNUSU9OKGdsQ29tcGlsZVNoYWRlcikKICNkZWZpbmUgZ2xDb21wcmVzc2VkVGV4SW1hZ2UyRCAg
ICAgICAgICAgICAgICAgTE9PS1VQX0dMX0ZVTkNUSU9OKGdsQ29tcHJlc3NlZFRleEltYWdlMkQp
CiAjZGVmaW5lIGdsQ29tcHJlc3NlZFRleFN1YkltYWdlMkQgICAgICAgICAgICAgIExPT0tVUF9H
TF9GVU5DVElPTihnbENvbXByZXNzZWRUZXhTdWJJbWFnZTJEKQorI2lmIEhBVkUoT1BFTkdMXzQp
CisjZGVmaW5lIGdsQ29weUJ1ZmZlclN1YkRhdGEgICAgICAgICAgICAgICAgICAgIExPT0tVUF9H
TF9GVU5DVElPTihnbENvcHlCdWZmZXJTdWJEYXRhKQorI2VuZGlmCiAjZGVmaW5lIGdsQ3JlYXRl
UHJvZ3JhbSAgICAgICAgICAgICAgICAgICAgICAgIExPT0tVUF9HTF9GVU5DVElPTihnbENyZWF0
ZVByb2dyYW0pCiAjZGVmaW5lIGdsQ3JlYXRlU2hhZGVyICAgICAgICAgICAgICAgICAgICAgICAg
IExPT0tVUF9HTF9GVU5DVElPTihnbENyZWF0ZVNoYWRlcikKICNkZWZpbmUgZ2xEZWxldGVCdWZm
ZXJzICAgICAgICAgICAgICAgICAgICAgICAgTE9PS1VQX0dMX0ZVTkNUSU9OKGdsRGVsZXRlQnVm
ZmVycykKQEAgLTMxNCwxMiArMzU5LDIwIEBACiAjZGVmaW5lIGdsR2VuVmVydGV4QXJyYXlzICAg
ICAgICAgICAgICAgICAgICAgIExPT0tVUF9HTF9GVU5DVElPTihnbEdlblZlcnRleEFycmF5cykK
ICNkZWZpbmUgZ2xHZXRBY3RpdmVBdHRyaWIgICAgICAgICAgICAgICAgICAgICAgTE9PS1VQX0dM
X0ZVTkNUSU9OKGdsR2V0QWN0aXZlQXR0cmliKQogI2RlZmluZSBnbEdldEFjdGl2ZVVuaWZvcm0g
ICAgICAgICAgICAgICAgICAgICBMT09LVVBfR0xfRlVOQ1RJT04oZ2xHZXRBY3RpdmVVbmlmb3Jt
KQorI2lmIEhBVkUoT1BFTkdMXzQpCisjZGVmaW5lIGdsR2V0QWN0aXZlVW5pZm9ybXNpdiAgICAg
ICAgICAgICAgICAgIExPT0tVUF9HTF9GVU5DVElPTihnbEdldEFjdGl2ZVVuaWZvcm1zaXYpCisj
ZW5kaWYKICNkZWZpbmUgZ2xHZXRBdHRhY2hlZFNoYWRlcnMgICAgICAgICAgICAgICAgICAgTE9P
S1VQX0dMX0ZVTkNUSU9OKGdsR2V0QXR0YWNoZWRTaGFkZXJzKQogI2RlZmluZSBnbEdldEF0dHJp
YkxvY2F0aW9uICAgICAgICAgICAgICAgICAgICBMT09LVVBfR0xfRlVOQ1RJT04oZ2xHZXRBdHRy
aWJMb2NhdGlvbikKICNkZWZpbmUgZ2xHZXRCdWZmZXJQYXJhbWV0ZXJpdkVYVCAgICAgICAgICAg
ICAgZ2xHZXRCdWZmZXJQYXJhbWV0ZXJpdgogI2RlZmluZSBnbEdldEJ1ZmZlclBhcmFtZXRlcml2
ICAgICAgICAgICAgICAgICBMT09LVVBfR0xfRlVOQ1RJT04oZ2xHZXRCdWZmZXJQYXJhbWV0ZXJp
dikKICNkZWZpbmUgZ2xHZXRGcmFtZWJ1ZmZlckF0dGFjaG1lbnRQYXJhbWV0ZXJpdkVYVCBnbEdl
dEZyYW1lYnVmZmVyQXR0YWNobWVudFBhcmFtZXRlcml2CiAjZGVmaW5lIGdsR2V0RnJhbWVidWZm
ZXJBdHRhY2htZW50UGFyYW1ldGVyaXYgIExPT0tVUF9HTF9GVU5DVElPTihnbEdldEZyYW1lYnVm
ZmVyQXR0YWNobWVudFBhcmFtZXRlcml2KQorI2lmIEhBVkUoT1BFTkdMXzQpCisjZGVmaW5lIGds
R2V0SW50ZWdlcjY0dkFQUExFICAgICAgICAgICAgICAgICAgIGdsR2V0SW50ZWdlcjY0dgorI2Rl
ZmluZSBnbEdldEludGVnZXI2NHYgICAgICAgICAgICAgICAgICAgICAgICBMT09LVVBfR0xfRlVO
Q1RJT04oZ2xHZXRJbnRlZ2VyNjR2KQorI2RlZmluZSBnbEdldEludGVybmFsZm9ybWF0aXYgICAg
ICAgICAgICAgICAgICBMT09LVVBfR0xfRlVOQ1RJT04oZ2xHZXRJbnRlcm5hbGZvcm1hdGl2KQor
I2VuZGlmCiAjZGVmaW5lIGdsR2V0UHJvZ3JhbUluZm9Mb2cgICAgICAgICAgICAgICAgICAgIExP
T0tVUF9HTF9GVU5DVElPTihnbEdldFByb2dyYW1JbmZvTG9nKQogI2RlZmluZSBnbEdldFByb2dy
YW1pdiAgICAgICAgICAgICAgICAgICAgICAgICBMT09LVVBfR0xfRlVOQ1RJT04oZ2xHZXRQcm9n
cmFtaXYpCiAjZGVmaW5lIGdsR2V0UmVuZGVyYnVmZmVyUGFyYW1ldGVyaXZFWFQgICAgICAgIGds
R2V0UmVuZGVyYnVmZmVyUGFyYW1ldGVyaXYKQEAgLTMyOCw2ICszODEsMTAgQEAKICNkZWZpbmUg
Z2xHZXRTaGFkZXJpdiAgICAgICAgICAgICAgICAgICAgICAgICAgTE9PS1VQX0dMX0ZVTkNUSU9O
KGdsR2V0U2hhZGVyaXYpCiAjZGVmaW5lIGdsR2V0U2hhZGVyU291cmNlICAgICAgICAgICAgICAg
ICAgICAgIExPT0tVUF9HTF9GVU5DVElPTihnbEdldFNoYWRlclNvdXJjZSkKICNkZWZpbmUgZ2xH
ZXRTdHJpbmdpICAgICAgICAgICAgICAgICAgICAgICAgICAgTE9PS1VQX0dMX0ZVTkNUSU9OKGds
R2V0U3RyaW5naSkKKyNpZiBIQVZFKE9QRU5HTF80KQorI2RlZmluZSBnbFRleFN0b3JhZ2UyRCAg
ICAgICAgICAgICAgICAgICAgICAgICBMT09LVVBfR0xfRlVOQ1RJT04oZ2xUZXhTdG9yYWdlMkQp
CisjZGVmaW5lIGdsVGV4U3RvcmFnZTNEICAgICAgICAgICAgICAgICAgICAgICAgIExPT0tVUF9H
TF9GVU5DVElPTihnbFRleFN0b3JhZ2UzRCkKKyNlbmRpZgogI2RlZmluZSBnbEdldFVuaWZvcm1m
diAgICAgICAgICAgICAgICAgICAgICAgICBMT09LVVBfR0xfRlVOQ1RJT04oZ2xHZXRVbmlmb3Jt
ZnYpCiAjZGVmaW5lIGdsR2V0VW5pZm9ybWl2ICAgICAgICAgICAgICAgICAgICAgICAgIExPT0tV
UF9HTF9GVU5DVElPTihnbEdldFVuaWZvcm1pdikKICNkZWZpbmUgZ2xHZXRVbmlmb3JtTG9jYXRp
b24gICAgICAgICAgICAgICAgICAgTE9PS1VQX0dMX0ZVTkNUSU9OKGdsR2V0VW5pZm9ybUxvY2F0
aW9uKQpAQCAtMzQ0LDYgKzQwMSwxMSBAQAogI2RlZmluZSBnbElzVmVydGV4QXJyYXlPRVMgICAg
ICAgICAgICAgICAgICAgICBnbElzVmVydGV4QXJyYXk7CiAjZGVmaW5lIGdsSXNWZXJ0ZXhBcnJh
eSAgICAgICAgICAgICAgICAgICAgICAgIExPT0tVUF9HTF9GVU5DVElPTihnbElzVmVydGV4QXJy
YXkpCiAjZGVmaW5lIGdsTGlua1Byb2dyYW0gICAgICAgICAgICAgICAgICAgICAgICAgIExPT0tV
UF9HTF9GVU5DVElPTihnbExpbmtQcm9ncmFtKQorI2lmIEhBVkUoT1BFTkdMXzQpCisjZGVmaW5l
IGdsTWFwQnVmZmVyUmFuZ2UgICAgICAgICAgICAgICAgICAgICAgIExPT0tVUF9HTF9GVU5DVElP
TihnbE1hcEJ1ZmZlclJhbmdlKQorI2RlZmluZSBnbFByaW1pdGl2ZVJlc3RhcnRJbmRleE5WICAg
ICAgICAgICAgICBnbFByaW1pdGl2ZVJlc3RhcnRJbmRleAorI2RlZmluZSBnbFByaW1pdGl2ZVJl
c3RhcnRJbmRleCAgICAgICAgICAgICAgICBMT09LVVBfR0xfRlVOQ1RJT04oZ2xQcmltaXRpdmVS
ZXN0YXJ0SW5kZXgpCisjZW5kaWYKICNkZWZpbmUgZ2xSZW5kZXJidWZmZXJTdG9yYWdlRVhUICAg
ICAgICAgICAgICAgZ2xSZW5kZXJidWZmZXJTdG9yYWdlCiAjZGVmaW5lIGdsUmVuZGVyYnVmZmVy
U3RvcmFnZSAgICAgICAgICAgICAgICAgIExPT0tVUF9HTF9GVU5DVElPTihnbFJlbmRlcmJ1ZmZl
clN0b3JhZ2UpCiAjZGVmaW5lIGdsUmVuZGVyYnVmZmVyU3RvcmFnZU11bHRpc2FtcGxlRVhUICAg
IGdsUmVuZGVyYnVmZmVyU3RvcmFnZU11bHRpc2FtcGxlCkBAIC0zNzIsNiArNDM0LDkgQEAKICNk
ZWZpbmUgZ2xVbmlmb3JtTWF0cml4MmZ2ICAgICAgICAgICAgICAgICAgICAgTE9PS1VQX0dMX0ZV
TkNUSU9OKGdsVW5pZm9ybU1hdHJpeDJmdikKICNkZWZpbmUgZ2xVbmlmb3JtTWF0cml4M2Z2ICAg
ICAgICAgICAgICAgICAgICAgTE9PS1VQX0dMX0ZVTkNUSU9OKGdsVW5pZm9ybU1hdHJpeDNmdikK
ICNkZWZpbmUgZ2xVbmlmb3JtTWF0cml4NGZ2ICAgICAgICAgICAgICAgICAgICAgTE9PS1VQX0dM
X0ZVTkNUSU9OKGdsVW5pZm9ybU1hdHJpeDRmdikKKyNpZiBIQVZFKE9QRU5HTF80KQorI2RlZmlu
ZSBnbFVubWFwQnVmZmVyICAgICAgICAgICAgICAgICAgICAgICAgICBMT09LVVBfR0xfRlVOQ1RJ
T04oZ2xVbm1hcEJ1ZmZlcikKKyNlbmRpZgogI2RlZmluZSBnbFVzZVByb2dyYW0gICAgICAgICAg
ICAgICAgICAgICAgICAgICBMT09LVVBfR0xfRlVOQ1RJT04oZ2xVc2VQcm9ncmFtKQogI2RlZmlu
ZSBnbFZhbGlkYXRlUHJvZ3JhbSAgICAgICAgICAgICAgICAgICAgICBMT09LVVBfR0xfRlVOQ1RJ
T04oZ2xWYWxpZGF0ZVByb2dyYW0pCiAjZGVmaW5lIGdsVmVydGV4QXR0cmliMWYgICAgICAgICAg
ICAgICAgICAgICAgIExPT0tVUF9HTF9GVU5DVElPTihnbFZlcnRleEF0dHJpYjFmKQotLS0gLi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wvR3JhcGhpY3NDb250ZXh0R0xP
cGVuR0xDb21tb24uY3BwLm9yaWcJMjAxOS0wNi0wOSAxODo1NDoyOC40NTgyODQzOTUgKzAxMDAK
KysrIC4vU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbmdsL0dyYXBoaWNzQ29u
dGV4dEdMT3BlbkdMQ29tbW9uLmNwcAkyMDE5LTA2LTA5IDE4OjU4OjAyLjY4NDkzMDY4NSArMDEw
MApAQCAtMTYwNCwxMSArMTYwNCwxNSBAQAogICAgIAogdm9pZCBHcmFwaGljc0NvbnRleHQzRDo6
Z2V0SW50ZWdlcjY0dihHQ0dMZW51bSBwbmFtZSwgR0NHTGludDY0KiB2YWx1ZSkKIHsKKyNpZiBI
QVZFKE9QRU5HTF80KQorICAgIG1ha2VDb250ZXh0Q3VycmVudCgpOworICAgIDo6Z2xHZXRJbnRl
Z2VyNjR2KHBuYW1lLCB2YWx1ZSk7CisgICAgKnZhbHVlID0gMDsKKyNlbHNlCiAgICAgVU5VU0VE
X1BBUkFNKHBuYW1lKTsKICAgICBtYWtlQ29udGV4dEN1cnJlbnQoKTsKICAgICAqdmFsdWUgPSAw
OwotICAgIC8vIEZJWE1FIDE0MTE3ODogQmVmb3JlIGVuYWJsaW5nIHRoaXMgd2UgbXVzdCBmaXJz
dCBzd2l0Y2ggb3ZlciB0byB1c2luZyBnbDMuaCBhbmQgY3JlYXRpbmcgYW5kIGluaXRpYWxpbmcg
dGhlIFdlYkdMMiBjb250ZXh0IHVzaW5nIE9wZW5HTCBFUyAzLjAuCi0gICAgLy8gOjpnbEdldElu
dGVnZXI2NHYocG5hbWUsIHZhbHVlKTsKKyNlbmRpZiAgICAKIH0KIAogdm9pZCBHcmFwaGljc0Nv
bnRleHQzRDo6Z2V0RnJhbWVidWZmZXJBdHRhY2htZW50UGFyYW1ldGVyaXYoR0NHTGVudW0gdGFy
Z2V0LCBHQ0dMZW51bSBhdHRhY2htZW50LCBHQ0dMZW51bSBwbmFtZSwgR0NHTGludCogdmFsdWUp
Ci0tLSAuL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9HcmFwaGljc0Nv
bnRleHRHTE9wZW5HTENvbW1vbi5jcHB+CTIwMTktMDYtMTMgMTc6MDQ6MjUuMDAwMDAwMDAwICsw
MTAwCisrKyAuL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbC9HcmFwaGlj
c0NvbnRleHRHTE9wZW5HTENvbW1vbi5jcHAJMjAxOS0wNi0xMyAxODoyMzozMy4wOTc2MzcwMzIg
KzAxMDAKQEAgLTU3MSw3ICs1NzEsNyBAQAogCiB2b2lkIEdyYXBoaWNzQ29udGV4dDNEOjpnZXRJ
bnRlcm5hbGZvcm1hdGl2KEdDR0xlbnVtIHRhcmdldCwgR0NHTGVudW0gaW50ZXJuYWxmb3JtYXQs
IEdDR0xlbnVtIHBuYW1lLCBHQ0dMc2l6ZWkgYnVmU2l6ZSwgR0NHTGludCogcGFyYW1zKQogewot
I2lmIFVTRShPUEVOR0xfRVMpCisjaWYgVVNFKE9QRU5HTF9FUykgfHwgSEFWRShPUEVOR0xfNCkK
ICAgICBtYWtlQ29udGV4dEN1cnJlbnQoKTsKICAgICA6OmdsR2V0SW50ZXJuYWxmb3JtYXRpdih0
YXJnZXQsIGludGVybmFsZm9ybWF0LCBwbmFtZSwgYnVmU2l6ZSwgcGFyYW1zKTsKICNlbHNlCi0t
LSAuL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2VnbC9HTENvbnRleHRFR0wuY3Bw
fgkyMDE5LTAzLTEzIDA5OjE4OjI5LjAwMDAwMDAwMCArMDAwMAorKysgLi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9lZ2wvR0xDb250ZXh0RUdMLmNwcAkyMDE5LTA2LTEzIDE4OjI3
OjAxLjIyNzUyMjM3MSArMDEwMApAQCAtNDA2LDEwICs0MDYsMTcgQEAKICAgICAgICAgRUdMQ29u
dGV4dCBjb250ZXh0ID0gRUdMX05PX0NPTlRFWFQ7CiAKICAgICAgICAgaWYgKHBsYXRmb3JtRGlz
cGxheS5lZ2xDaGVja1ZlcnNpb24oMSwgNSkpIHsKKyNpZiBIQVZFKE9QRU5HTF80KQorICAgICAg
ICAgICAgY29udGV4dEF0dHJpYnV0ZXNbMF0gPSBFR0xfQ09OVEVYVF9NQUpPUl9WRVJTSU9OOwor
ICAgICAgICAgICAgY29udGV4dEF0dHJpYnV0ZXNbMV0gPSA0OworICAgICAgICAgICAgY29udGV4
dEF0dHJpYnV0ZXNbMl0gPSBFR0xfQ09OVEVYVF9NSU5PUl9WRVJTSU9OOworICAgICAgICAgICAg
Y29udGV4dEF0dHJpYnV0ZXNbM10gPSAxOworI2Vsc2UKICAgICAgICAgICAgIGNvbnRleHRBdHRy
aWJ1dGVzWzBdID0gRUdMX0NPTlRFWFRfTUFKT1JfVkVSU0lPTjsKICAgICAgICAgICAgIGNvbnRl
eHRBdHRyaWJ1dGVzWzFdID0gMzsKICAgICAgICAgICAgIGNvbnRleHRBdHRyaWJ1dGVzWzJdID0g
RUdMX0NPTlRFWFRfTUlOT1JfVkVSU0lPTjsKICAgICAgICAgICAgIGNvbnRleHRBdHRyaWJ1dGVz
WzNdID0gMjsKKyNlbmRpZgogICAgICAgICAgICAgY29udGV4dEF0dHJpYnV0ZXNbNF0gPSBFR0xf
Q09OVEVYVF9PUEVOR0xfUFJPRklMRV9NQVNLOwogICAgICAgICAgICAgY29udGV4dEF0dHJpYnV0
ZXNbNV0gPSBFR0xfQ09OVEVYVF9PUEVOR0xfQ09SRV9QUk9GSUxFX0JJVDsKICAgICAgICAgICAg
IGNvbnRleHRBdHRyaWJ1dGVzWzZdID0gRUdMX05PTkU7CkBAIC00MTksMTAgKzQyNiwxNyBAQAog
ICAgICAgICB9IGVsc2UgaWYgKHBsYXRmb3JtRGlzcGxheS5lZ2xDaGVja1ZlcnNpb24oMSwgNCkp
IHsKICAgICAgICAgICAgIGNvbnN0IGNoYXIqIGV4dGVuc2lvbnMgPSBlZ2xRdWVyeVN0cmluZyhw
bGF0Zm9ybURpc3BsYXkuZWdsRGlzcGxheSgpLCBFR0xfRVhURU5TSU9OUyk7CiAgICAgICAgICAg
ICBpZiAoR0xDb250ZXh0Ojppc0V4dGVuc2lvblN1cHBvcnRlZChleHRlbnNpb25zLCAiRUdMX0tI
Ul9jcmVhdGVfY29udGV4dCIpKSB7CisjaWYgSEFWRShPUEVOR0xfNCkKKyAgICAgICAgICAgICAg
ICBjb250ZXh0QXR0cmlidXRlc1swXSA9IEVHTF9DT05URVhUX01BSk9SX1ZFUlNJT05fS0hSOwor
ICAgICAgICAgICAgICAgIGNvbnRleHRBdHRyaWJ1dGVzWzFdID0gNDsKKyAgICAgICAgICAgICAg
ICBjb250ZXh0QXR0cmlidXRlc1syXSA9IEVHTF9DT05URVhUX01JTk9SX1ZFUlNJT05fS0hSOwor
ICAgICAgICAgICAgICAgIGNvbnRleHRBdHRyaWJ1dGVzWzNdID0gMTsKKyNlbHNlCiAgICAgICAg
ICAgICAgICAgY29udGV4dEF0dHJpYnV0ZXNbMF0gPSBFR0xfQ09OVEVYVF9NQUpPUl9WRVJTSU9O
X0tIUjsKICAgICAgICAgICAgICAgICBjb250ZXh0QXR0cmlidXRlc1sxXSA9IDM7CiAgICAgICAg
ICAgICAgICAgY29udGV4dEF0dHJpYnV0ZXNbMl0gPSBFR0xfQ09OVEVYVF9NSU5PUl9WRVJTSU9O
X0tIUjsKICAgICAgICAgICAgICAgICBjb250ZXh0QXR0cmlidXRlc1szXSA9IDI7CisjZW5kaWYK
ICAgICAgICAgICAgICAgICBjb250ZXh0QXR0cmlidXRlc1s0XSA9IEVHTF9DT05URVhUX09QRU5H
TF9QUk9GSUxFX01BU0tfS0hSOwogICAgICAgICAgICAgICAgIGNvbnRleHRBdHRyaWJ1dGVzWzVd
ID0gRUdMX0NPTlRFWFRfT1BFTkdMX0NPUkVfUFJPRklMRV9CSVRfS0hSOwogICAgICAgICAgICAg
ICAgIGNvbnRleHRBdHRyaWJ1dGVzWzZdID0gRUdMX05PTkU7Ci0tLSAuL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9HcmFwaGljc0NvbnRleHRHTFRleHR1cmVNYXBwZXIu
Y3BwfgkyMDE5LTA0LTA4IDEwOjI4OjI2LjAwMDAwMDAwMCArMDEwMAorKysgLi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvR3JhcGhpY3NDb250ZXh0R0xUZXh0dXJlTWFw
cGVyLmNwcAkyMDE5LTA2LTEzIDE4OjQ3OjI3LjUwMzE1MzA1NiArMDEwMApAQCAtMTgzLDcgKzE4
MywxMSBAQAogCiAgICAgICAgIC8vIEZyb20gdmVyc2lvbiAzLjIgb24gd2UgdXNlIHRoZSBPcGVu
R0wgQ29yZSBwcm9maWxlLCBzbyByZXF1ZXN0IHRoYXQgb3VwdXQgdG8gdGhlIHNoYWRlciBjb21w
aWxlci4KICAgICAgICAgLy8gT3BlbkdMIHZlcnNpb24gMy4yIHVzZXMgR0xTTCB2ZXJzaW9uIDEu
NTAuCisjaWYgSEFWRShPUEVOR0xfNCkKKyAgICAgICAgbV9jb21waWxlciA9IEFOR0xFV2ViS2l0
QnJpZGdlKFNIX0dMU0xfNDEwX0NPUkVfT1VUUFVUKTsKKyNlbHNlCiAgICAgICAgIG1fY29tcGls
ZXIgPSBBTkdMRVdlYktpdEJyaWRnZShTSF9HTFNMXzE1MF9DT1JFX09VVFBVVCk7CisjZW5kaWYg
CiAKICAgICAgICAgLy8gRnJvbSB2ZXJzaW9uIDMuMiBvbiB3ZSB1c2UgdGhlIE9wZW5HTCBDb3Jl
IHByb2ZpbGUsIGFuZCB3ZSBuZWVkIGEgVkFPIGZvciByZW5kZXJpbmcuCiAgICAgICAgIC8vIEEg
VkFPIGNvdWxkIGJlIGNyZWF0ZWQgYW5kIGJvdW5kIGJ5IGVhY2ggY29tcG9uZW50IHVzaW5nIEdM
IHJlbmRlcmluZyAoVGV4dHVyZU1hcHBlciwgV2ViR0wsIGV0YykuIFRoaXMgaXMKLS0tIC4vU291
cmNlL1dlYktpdC9TaGFyZWQvV2ViUHJlZmVyZW5jZXMueWFtbH4JMjAyMC0wMi0xMiAxMToyNzow
My4wMDAwMDAwMDAgKzAwMDAKKysrIC4vU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUHJlZmVyZW5j
ZXMueWFtbAkyMDIwLTAyLTEyIDExOjQ0OjI1LjQ1MDMyNTk4NyArMDAwMApAQCAtMTM0LDcgKzEz
NCw3IEBACiAKIEFjY2VsZXJhdGVkMmRDYW52YXNFbmFibGVkOgogICB0eXBlOiBib29sCi0gIGRl
ZmF1bHRWYWx1ZTogZmFsc2UKKyAgZGVmYXVsdFZhbHVlOiB0cnVlCiAKIEZvcmNlRlRQRGlyZWN0
b3J5TGlzdGluZ3M6CiAgIHR5cGU6IGJvb2wK
</data>

          </attachment>
      

    </bug>

</bugzilla>