<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.kde.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.6"
          urlbase="https://bugs.kde.org/"
          
          maintainer="sysadmin@kde.org"
>

    <bug>
          <bug_id>465284</bug_id>
          
          <creation_ts>2023-02-04 17:55:34 +0000</creation_ts>
          <short_desc>kwin_wayland crashes involving dri2_create_drawable when Plasma starts and the llvmpipe driver from Mesa 23.0-rc3 and 23.0-rc4 is used</short_desc>
          <delta_ts>2023-02-08 10:19:57 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Plasma</classification>
          <product>kwin</product>
          <component>wayland-generic</component>
          <version>5.26.90</version>
          <rep_platform>Fedora RPMs</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>UPSTREAM</resolution>
          
          
          <bug_file_loc>https://gitlab.freedesktop.org/mesa/mesa/-/issues/8232</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>NOR</priority>
          <bug_severity>crash</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Matt Fagnani">matt.fagnani</reporter>
          <assigned_to name="KWin default assignee">kwin-bugs-null</assigned_to>
          <cc>agurenko</cc>
          
          <cf_commitlink></cf_commitlink>
          <cf_versionfixedin></cf_versionfixedin>
          <cf_sentryurl></cf_sentryurl>
          <votes>0</votes>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>2204999</commentid>
    <comment_count>0</comment_count>
      <attachid>155941</attachid>
    <who name="Matt Fagnani">matt.fagnani</who>
    <bug_when>2023-02-04 17:55:34 +0000</bug_when>
    <thetext>Created attachment 155941
Full trace of all threads of kwin_wayland crash when starting using llvmpipe from mesa 23.0-rc3 by Adam Williamson from https://bugzilla.redhat.com/show_bug.cgi?id=2164667#c10

SUMMARY

kwin_wayland crashes repeatedly when Plasma starts and the llvmpipe driver from Mesa 23.0-rc3 and 23.0-rc4 is used resulting in a black screen with a flashing text cursor _ at the top left of the screen. I first saw this when booting the Fedora Rawhide live image Fedora-KDE-Live-x86_64-Rawhide-20230202.n.0.iso with mesa-23.0.0~rc4-1.fc38 in a GNOME Boxes QEMU/KVM VM with 3D acceleration disabled using the llvmpipe driver. kwin_wayland crashed 10 times in a row. There were also many other Plasma programs that crashed as shown by coredumpctl after the kwin_wayland ones I guess because kwin_wayland didn&apos;t start. This problem didn&apos;t happen with llvmpipe from mesa-22.3.3-3.fc38 and earlier. Adam Williamson first reported this problem at https://bugzilla.redhat.com/show_bug.cgi?id=2164667 with the following trace of the crashing thread 1 involving dri2_create_drawable

Thread 1 (Thread 0x7f3ef8a1ee40 (LWP 905)):
#0  0x0000000000000000 in ?? ()
No symbol table info available.
#1  0x00007f3eeaab44c3 in dri2_create_drawable (dri2_dpy=dri2_dpy@entry=0x56095bfae740, config=config@entry=0x56095bf0d850, dri2_surf=dri2_surf@entry=0x56095c3b6210, loaderPrivate=loaderPrivate@entry=0x56095c3b38c0) at ../src/egl/drivers/dri2/egl_dri2.c:1573
        createNewDrawable = &lt;optimized out&gt;
#2  0x00007f3eeaab95b1 in dri2_drm_create_window_surface (disp=0x56095bfadbf0, conf=&lt;optimized out&gt;, native_surface=0x56095c3b38c0, attrib_list=0x0) at ../src/egl/drivers/dri2/platform_drm.c:180
        dri2_dpy = 0x56095bfae740
        dri2_conf = &lt;optimized out&gt;
        dri2_surf = 0x56095c3b6210
        surface = 0x56095c3b38c0
        surf = 0x56095c3b38c0
        config = 0x56095bf0d850
#3  0x00007f3eeaab1129 in dri2_create_window_surface (disp=0x56095bfadbf0, conf=0x56095bfb0310, native_window=0x56095c3b38c0, attrib_list=0x0) at ../src/egl/drivers/dri2/egl_dri2.c:1745
        dri2_dpy = &lt;optimized out&gt;
        ret = &lt;optimized out&gt;
#4  0x00007f3eeaaa266b in _eglCreateWindowSurfaceCommon (disp=0x56095bfadbf0, config=&lt;optimized out&gt;, native_window=0x56095c3b38c0, attrib_list=0x0) at ../src/egl/main/eglapi.c:1082
        __rs = {0x0}
        __rsp = &lt;optimized out&gt;
        conf = 0x56095bfb0310
        surf = &lt;optimized out&gt;
        ret = &lt;optimized out&gt;
        __func__ = &quot;_eglCreateWindowSurfaceCommon&quot;
#5  0x00007f3eff9b2430 in KWin::GbmSurface::createSurface (backend=0x56095bf882f0, size=..., format=875713112, flags=5, config=0x56095bfb0310) at /usr/src/debug/kwin-5.26.90-1.fc38.x86_64/src/backends/drm/drm_gbm_surface.cpp:134
        surface = 0x56095c3b38c0
        eglSurface = &lt;optimized out&gt;
#6  0x00007f3effabccb4 in KWin::EglGbmLayerSurface::createGbmSurface (forceLinear=false, modifiers=..., format=875713112, size=..., this=0x56095bf6daa8) at /usr/src/debug/kwin-5.26.90-1.fc38.x86_64/src/backends/drm/drm_egl_layer_surface.cpp:325
        config = &lt;optimized out&gt;
        ret = std::variant&lt;std::shared_ptr&lt;KWin::GbmSurface&gt;, KWin::GbmSurface::Error&gt; [no contained value]
        surface = &lt;optimized out&gt;
        allowModifiers = &lt;optimized out&gt;
        gbmFlags = &lt;optimized out&gt;
        modifiersEnvSet = &lt;optimized out&gt;
        modifiersEnv = &lt;optimized out&gt;
        allowModifiers = &lt;optimized out&gt;
        config = &lt;optimized out&gt;
        gbmFlags = &lt;optimized out&gt;
        ret = &lt;optimized out&gt;
        surface = &lt;optimized out&gt;
        ret = &lt;optimized out&gt;
        surface = &lt;optimized out&gt;
#7  KWin::EglGbmLayerSurface::createSurface (importMode=KWin::EglGbmLayerSurface::MultiGpuImportMode::Dmabuf, modifiers=..., format=875713112, size=..., this=0x56095bf6daa8) at /usr/src/debug/kwin-5.26.90-1.fc38.x86_64/src/backends/drm/drm_egl_layer_surface.cpp:281
        ret = {gbmSurface = std::shared_ptr&lt;KWin::GbmSurface&gt; (empty) = {get() = 0x0}, importSwapchain = std::shared_ptr&lt;KWin::DumbSwapchain&gt; (empty) = {get() = 0x0}, importMode = KWin::EglGbmLayerSurface::MultiGpuImportMode::Dmabuf, currentBuffer = std::shared_ptr&lt;KWin::GbmBuffer&gt; (empty) = {get() = 0x0}, currentFramebuffer = std::shared_ptr&lt;KWin::DrmFramebuffer&gt; (empty) = {get() = 0x0}, forceLinear = false}
        ret = &lt;optimized out&gt;
#8  KWin::EglGbmLayerSurface::createSurface(QSize const&amp;, QMap&lt;unsigned int, QVector&lt;unsigned long&gt; &gt; const&amp;) const::{lambda(QVector&lt;KWin::GbmFormat&gt; const&amp;, KWin::EglGbmLayerSurface::MultiGpuImportMode)#1}::operator()(QVector&lt;KWin::GbmFormat&gt; const&amp;, KWin::EglGbmLayerSurface::MultiGpuImportMode) const [clone .isra.0] (__closure=__closure@entry=0x7ffcd5b33180, importMode=importMode@entry=KWin::EglGbmLayerSurface::MultiGpuImportMode::Dmabuf, gbmFormats=...) at /usr/src/debug/kwin-5.26.90-1.fc38.x86_64/src/backends/drm/drm_egl_layer_surface.cpp:248
        surface = std::optional&lt;KWin::EglGbmLayerSurface::Surface&gt; = {[contained value] = {gbmSurface = std::shared_ptr&lt;KWin::GbmSurface&gt; (use count 551797064, weak count -1052120368) = {get() = 0x7f3efdf88160 &lt;QArrayData::shared_null&gt;}, importSwapchain = std::shared_ptr&lt;KWin::DumbSwapchain&gt; (use count -34045600, weak count 32573) = {get() = 0x7ffcd5b330e0}, importMode = (KWin::EglGbmLayerSurface::MultiGpuImportMode::DumbBuffer | unknown: 0xfffffffe), currentBuffer = std::shared_ptr&lt;KWin::GbmBuffer&gt; (use count 1547395312, weak count 22024) = {get() = 0x7ffcd5b33170}, currentFramebuffer = std::shared_ptr&lt;KWin::DrmFramebuffer&gt; (expired, weak count 0) = {get() = 0x7f3eff9a3008 &lt;QVector&lt;KWin::GbmFormat&gt;::realloc(int, QFlags&lt;QArrayData::AllocationOption&gt;)+40&gt;}, forceLinear = 8}}
        format = @0x56095c3b6108: {drmFormat = 875713112, bpp = 24, alphaSize = 0}
        __for_range = &lt;optimized out&gt;
        __for_begin = 0x56095c3b6108
        __for_end = &lt;optimized out&gt;
        formats = @0x7ffcd5b332a8: {d = 0x56095be6de00}
        size = @0x7ffcd5b332b0: {wd = 1280, ht = 800}
        this = 0x56095bf6daa8
#9  0x00007f3eff9a724b in KWin::EglGbmLayerSurface::createSurface (formats=..., size=..., this=0x56095bf6daa8) at /usr/src/debug/kwin-5.26.90-1.fc38.x86_64/src/backends/drm/drm_egl_layer_surface.cpp:256
        surface = std::optional&lt;KWin::EglGbmLayerSurface::Surface&gt; = {[contained value] = {gbmSurface = &lt;error reading variable: Cannot access memory at address 0x7f0100000008&gt;, importSwapchain = &lt;error reading variable: Cannot access memory at address 0x10&gt;, importMode = (unknown: 0xd5b33400), currentBuffer = std::shared_ptr&lt;KWin::GbmBuffer&gt; (use count -6580135, weak count 32573) = {get() = 0x7ffcd5b333f8}, currentFramebuffer = std::shared_ptr&lt;KWin::DrmFramebuffer&gt; (use count 1547383072, weak count 22024) = {get() = 0x7f3efdd32246 &lt;QCryptographicHash::result() const+3542&gt;}, forceLinear = true}}
        preferredFormats = {d = 0x56095c3b60f0}
        fallbackFormats = {d = 0x7f3efdf88160 &lt;QArrayData::shared_null&gt;}
        sort = &lt;optimized out&gt;
        testFormats = {__this = 0x56095bf6daa8, __size = @0x7ffcd5b332b0, __formats = @0x7ffcd5b332a8}
        preferredFormats = &lt;optimized out&gt;
        fallbackFormats = &lt;optimized out&gt;
        sort = &lt;optimized out&gt;
        testFormats = &lt;optimized out&gt;
        it = &lt;optimized out&gt;
        format = &lt;optimized out&gt;
        surface = &lt;optimized out&gt;
        surface = &lt;optimized out&gt;
        surface = &lt;optimized out&gt;
        surface = &lt;optimized out&gt;
#10 KWin::EglGbmLayerSurface::checkSurface (this=this@entry=0x56095bf6daa8, size=..., formats=...) at /usr/src/debug/kwin-5.26.90-1.fc38.x86_64/src/backends/drm/drm_egl_layer_surface.cpp:204
        newSurface = std::optional&lt;KWin::EglGbmLayerSurface::Surface&gt; = {[contained value] = {gbmSurface = &lt;error reading variable: Cannot access memory at address 0xb03b3e57d90427ff&gt;, importSwapchain = &lt;error reading variable: Cannot access memory at address 0xe6673214bbb7285d&gt;, importMode = (unknown: 0x56697274), currentBuffer = &lt;error reading variable: Cannot access memory at address 0x6c2d312d72747569&gt;, currentFramebuffer = &lt;error reading variable: Cannot access memory at address 0x3a80000069746f7a&gt;, forceLinear = false}}
#11 0x00007f3eff9a8ec1 in KWin::EglGbmLayerSurface::renderTestBuffer (formats=..., bufferSize=..., this=0x56095bf6daa8) at /usr/src/debug/kwin-5.26.90-1.fc38.x86_64/src/backends/drm/drm_egl_layer_surface.cpp:188
No locals.
#12 KWin::EglGbmLayer::checkTestBuffer (this=0x56095bf6da70) at /usr/src/debug/kwin-5.26.90-1.fc38.x86_64/src/backends/drm/drm_egl_layer.cpp:68
No locals.
#13 0x00007f3eff9b575a in KWin::DrmPipeline::legacyModeset (this=this@entry=0x56095c3b23a0) at /usr/include/c++/13/bits/shared_ptr_base.h:1665
        connId = 34
        buffer = std::shared_ptr&lt;KWin::DrmFramebuffer&gt; (use count 1547437184, weak count 22024) = {get() = 0x56095c3c0540}
#14 0x00007f3eff9b93b1 in KWin::DrmPipeline::applyPendingChangesLegacy (this=0x56095c3b23a0) at /usr/src/debug/kwin-5.26.90-1.fc38.x86_64/src/backends/drm/drm_pipeline_legacy.cpp:116
        err = &lt;optimized out&gt;
        vrr = &lt;optimized out&gt;
        contentType = &lt;optimized out&gt;
#15 0x00007f3eff9b9859 in KWin::DrmPipeline::commitPipelinesLegacy (mode=KWin::DrmPipeline::CommitMode::TestAllowModeset, pipelines=...) at /usr/src/debug/kwin-5.26.90-1.fc38.x86_64/src/backends/drm/drm_pipeline_legacy.cpp:70
        pipeline = @0x56095c3c0538: 0x56095c3b23a0
        __for_range = @0x56095be81090: {d = 0x56095c3c0520}
        __for_begin = 0x56095c3c0538
        __for_end = 0x56095c3c0540
        err = KWin::DrmPipeline::Error::None
        err = &lt;optimized out&gt;
        pipeline = &lt;optimized out&gt;
        __for_range = &lt;optimized out&gt;
        __for_begin = &lt;optimized out&gt;
        __for_end = &lt;optimized out&gt;
        pipeline = &lt;optimized out&gt;
        __for_range = &lt;optimized out&gt;
        __for_begin = &lt;optimized out&gt;
        __for_end = &lt;optimized out&gt;
        pipeline = &lt;optimized out&gt;
        __for_range = &lt;optimized out&gt;
        __for_begin = &lt;optimized out&gt;
        __for_end = &lt;optimized out&gt;
#16 KWin::DrmPipeline::commitPipelines (pipelines=..., mode=KWin::DrmPipeline::CommitMode::TestAllowModeset, unusedObjects=...) at /usr/src/debug/kwin-5.26.90-1.fc38.x86_64/src/backends/drm/drm_pipeline.cpp:93
No locals.
#17 0x00007f3eff9ad9de in KWin::DrmGpu::testPipelines (this=0x56095be80ff0) at /usr/src/debug/kwin-5.26.90-1.fc38.x86_64/src/backends/drm/drm_gpu.cpp:463
        inactivePipelines = {d = 0x7f3efdf88160 &lt;QArrayData::shared_null&gt;}
        test = &lt;optimized out&gt;
        inactivePipelines = &lt;optimized out&gt;
        test = &lt;optimized out&gt;
        pipeline = &lt;optimized out&gt;
        __for_range = &lt;optimized out&gt;
        __for_begin = &lt;optimized out&gt;
        __for_end = &lt;optimized out&gt;
        pipeline = &lt;optimized out&gt;
        __for_range = &lt;optimized out&gt;
        __for_begin = &lt;optimized out&gt;
        __for_end = &lt;optimized out&gt;
#18 KWin::DrmGpu::checkCrtcAssignment (this=this@entry=0x56095be80ff0, connectors=..., crtcs=...) at /usr/src/debug/kwin-5.26.90-1.fc38.x86_64/src/backends/drm/drm_gpu.cpp:368
        connector = &lt;optimized out&gt;
        pipeline = &lt;optimized out&gt;
        currentCrtc = &lt;optimized out&gt;
#19 0x00007f3eff9adf08 in KWin::DrmGpu::checkCrtcAssignment (this=this@entry=0x56095be80ff0, connectors=..., crtcs=...) at /usr/src/debug/kwin-5.26.90-1.fc38.x86_64/src/backends/drm/drm_gpu.cpp:403
        err = &lt;optimized out&gt;
        crtcsLeft = {d = 0x56095c3b60a0}
        crtc = @0x56095c3b53a8: 0x56095bea2370
        __for_range = @0x7ffcd5b335d0: {d = 0x56095c3b5390}
        __for_begin = 0x56095c3b53a8
        __for_end = 0x56095c3b53b0
        connector = &lt;optimized out&gt;
        pipeline = &lt;optimized out&gt;
        currentCrtc = 0x0
#20 0x00007f3eff9b0531 in KWin::DrmGpu::testPendingConfiguration (this=0x56095be80ff0) at /usr/src/debug/kwin-5.26.90-1.fc38.x86_64/src/backends/drm/drm_gpu.cpp:440
        connectors = {d = 0x56095c3b3980}
        crtcs = {d = 0x56095c3b5390}
        err = &lt;optimized out&gt;
#21 0x00007f3eff99cc5c in KWin::DrmGpu::updateOutputs (this=&lt;optimized out&gt;) at /usr/src/debug/kwin-5.26.90-1.fc38.x86_64/src/backends/drm/drm_gpu.cpp:305
        resources = &lt;optimized out&gt;
        addedOutputs = {d = 0x56095c3c0430}
        err = &lt;optimized out&gt;
        lessees = &lt;optimized out&gt;
        existing = {d = 0x56095c3c0570}
        resources = &lt;optimized out&gt;
        lessees = &lt;optimized out&gt;
        existing = &lt;optimized out&gt;
        addedOutputs = &lt;optimized out&gt;
        err = &lt;optimized out&gt;
        qt_category_enabled = &lt;optimized out&gt;
        output = &lt;optimized out&gt;
        __for_range = &lt;optimized out&gt;
        __for_begin = &lt;optimized out&gt;
        __for_end = &lt;optimized out&gt;
        leaseActive = &lt;optimized out&gt;
        i = &lt;optimized out&gt;
        i = &lt;optimized out&gt;
        currentConnector = &lt;optimized out&gt;
        it = &lt;optimized out&gt;
        conn = &lt;optimized out&gt;
        it = &lt;optimized out&gt;
        conn = &lt;optimized out&gt;
        output = &lt;optimized out&gt;
        stillExists = &lt;optimized out&gt;
        pipeline = &lt;optimized out&gt;
        output = &lt;optimized out&gt;
        qt_category_enabled = &lt;optimized out&gt;
        crtc = &lt;optimized out&gt;
        __for_range = &lt;optimized out&gt;
        __for_begin = &lt;optimized out&gt;
        __for_end = &lt;optimized out&gt;
        plane = &lt;optimized out&gt;
        __for_range = &lt;optimized out&gt;
        __for_begin = &lt;optimized out&gt;
        __for_end = &lt;optimized out&gt;
        pipeline = &lt;optimized out&gt;
        __for_range = &lt;optimized out&gt;
        __for_begin = &lt;optimized out&gt;
        __for_end = &lt;optimized out&gt;
        pipeline = &lt;optimized out&gt;
        __for_range = &lt;optimized out&gt;
        __for_begin = &lt;optimized out&gt;
        __for_end = &lt;optimized out&gt;
        output = &lt;optimized out&gt;
        __for_range = &lt;optimized out&gt;
        __for_begin = &lt;optimized out&gt;
        __for_end = &lt;optimized out&gt;
        it = &lt;optimized out&gt;
        qt_category_enabled = &lt;optimized out&gt;
        pipeline = &lt;optimized out&gt;
        __for_range = &lt;optimized out&gt;
        __for_begin = &lt;optimized out&gt;
        __for_end = &lt;optimized out&gt;
        output = &lt;optimized out&gt;
        __for_range = &lt;optimized out&gt;
        __for_begin = &lt;optimized out&gt;
        __for_end = &lt;optimized out&gt;
#22 KWin::DrmBackend::updateOutputs (this=0x56095be8b570) at /usr/src/debug/kwin-5.26.90-1.fc38.x86_64/src/backends/drm/drm_backend.cpp:325
        it = std::unique_ptr&lt;KWin::DrmGpu&gt; = {get() = 0x56095be80ff0}
#23 0x00007f3efdee7ef1 in QtPrivate::QSlotObjectBase::call (a=0x7ffcd5b33bb0, r=&lt;optimized out&gt;, this=0x56095bfa83d0) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
No locals.
#24 doActivate&lt;false&gt; (sender=0x56095bf85b80, signal_index=6, argv=0x7ffcd5b33bb0) at kernel/qobject.cpp:3923
        obj = &lt;optimized out&gt;
        receiver = &lt;optimized out&gt;
        td = &lt;optimized out&gt;
        receiverInSameThread = &lt;optimized out&gt;
        senderData = {previous = 0x0, receiver = 0x56095be8b570, sender = 0x56095bf85b80, signal = 6}
        c = 0x56095bfa8630
        connections = {d = 0x56095bfa6a90}
        list = &lt;optimized out&gt;
        inSenderThread = true
        highestConnectionId = 4
        signalVector = 0x56095bfa7760
        currentThreadId = 0x7f3ef8a1ee40
        sp = &lt;optimized out&gt;
        signal_spy_set = 0x0
        empty_argv = {0x0}
        senderDeleted = false
#25 0x00007f3eff7f458f in KWin::Compositor::setupStart (this=0x56095bf85b80) at /usr/src/debug/kwin-5.26.90-1.fc38.x86_64/src/composite.cpp:335
        availableCompositors = {d = 0x56095be7d450}
        candidateCompositors = {d = 0x56095bfa43a0}
#26 0x00007f3eff7f4cf5 in KWin::Compositor::setupStart (this=this@entry=0x56095bf85b80) at /usr/src/debug/kwin-5.26.90-1.fc38.x86_64/src/composite.cpp:338
        availableCompositors = &lt;optimized out&gt;
        candidateCompositors = &lt;optimized out&gt;
        userConfigIt = &lt;optimized out&gt;
        qt_category_enabled = &lt;optimized out&gt;
        type = &lt;optimized out&gt;
        __for_range = &lt;optimized out&gt;
        __for_begin = &lt;optimized out&gt;
        __for_end = &lt;optimized out&gt;
        stop = &lt;optimized out&gt;
        qt_category_enabled = &lt;optimized out&gt;
        qt_category_enabled = &lt;optimized out&gt;
        qt_category_enabled = &lt;optimized out&gt;
        con = &lt;optimized out&gt;
        qt_category_enabled = &lt;optimized out&gt;
        qt_category_enabled = &lt;optimized out&gt;
#27 0x00007f3eff7f6008 in KWin::WaylandCompositor::start (this=0x56095bf85b80) at /usr/src/debug/kwin-5.26.90-1.fc38.x86_64/src/composite.cpp:799
No locals.
#28 0x00007f3efdedefdb in QObject::event (this=0x56095bf85b80, e=0x56095bfa6070) at kernel/qobject.cpp:1347
        mce = 0x56095bfa6070
        sender = {previous = 0x0, receiver = 0x56095bf85b80, sender = 0x0, signal = -1}
#29 0x00007f3efd5aece5 in QApplicationPrivate::notify_helper (this=&lt;optimized out&gt;, receiver=0x56095bf85b80, e=0x56095bfa6070) at kernel/qapplication.cpp:3640
        consumed = false
        filtered = false
#30 0x00007f3efdeb35e8 in QCoreApplication::notifyInternal2 (receiver=0x56095bf85b80, event=0x56095bfa6070) at kernel/qcoreapplication.cpp:1064
        selfRequired = true
        result = false
        cbdata = {0x56095bf85b80, 0x56095bfa6070, 0x7ffcd5b33dcf}
        d = &lt;optimized out&gt;
        threadData = 0x56095be70bc0
        scopeLevelCounter = {threadData = 0x56095be70bc0}
#31 0x00007f3efdeb6a95 in QCoreApplicationPrivate::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=data@entry=0x56095be70bc0) at kernel/qcoreapplication.cpp:1821
        e = 0x56095bfa6070
        pe = &lt;optimized out&gt;
        r = 0x56095bf85b80
        relocker = &lt;optimized out&gt;
        event_deleter = {d = 0x56095bfa6070}
        locker = {_M_device = 0x56095be70bf0, _M_owns = false}
        startOffset = 0
        i = @0x56095be70be4: 7
        cleanup = {receiver = 0x0, event_type = 0, data = 0x56095be70bc0, exceptionCaught = true}
#32 0x00007f3efdf03311 in QEventDispatcherUNIX::processEvents (this=0x56095be73940, flags=...) at kernel/qeventdispatcher_unix.cpp:468
        d = 0x56095be758c0
        threadData = 0x56095be70bc0
        include_timers = &lt;optimized out&gt;
        include_notifiers = &lt;optimized out&gt;
        wait_for_events = &lt;optimized out&gt;
        canWait = &lt;optimized out&gt;
        tm = &lt;optimized out&gt;
        wait_tm = {tv_sec = 140723893780512, tv_nsec = 5}
        nevents = &lt;optimized out&gt;
#33 0x000056095ae16041 in QUnixEventDispatcherQPA::processEvents(QFlags&lt;QEventLoop::ProcessEventsFlag&gt;) ()
No symbol table info available.
#34 0x00007f3efdeb1fbb in QEventLoop::exec (this=this@entry=0x7ffcd5b34020, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69
        d = 0x56095bfa6000
        threadData = &lt;optimized out&gt;
        locker = {val = 94598196397240}
        ref = {d = 0x56095bfa6000, locker = @0x7ffcd5b33fa8, exceptionCaught = true}
        app = 0x7ffcd5b342c0
#35 0x00007f3efdeba23b in QCoreApplication::exec () at ../../include/QtCore/../../src/corelib/global/qflags.h:121
        threadData = 0x56095be70bc0
        eventLoop = {&lt;QObject&gt; = {_vptr.QObject = 0x7f3efe166b48 &lt;vtable for QEventLoop+16&gt;, static staticMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7f3efe06c7a0 &lt;qt_meta_stringdata_QObject&gt;, data = 0x7f3efe06c680 &lt;qt_meta_data_QObject&gt;, static_metacall = 0x7f3efdee5290 &lt;QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)&gt;, relatedMetaObjects = 0x0, extradata = 0x0}}, d_ptr = {d = 0x56095bfa6000}, static staticQtMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7f3efe06f740 &lt;qt_meta_stringdata_Qt&gt;, data = 0x7f3efe06c8c0 &lt;qt_meta_data_Qt&gt;, static_metacall = 0x0, relatedMetaObjects = 0x0, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = {direct = 0x7f3efe15e3c0 &lt;QObject::staticMetaObject&gt;}, stringdata = 0x7f3efe066580 &lt;qt_meta_stringdata_QEventLoop&gt;, data = 0x7f3efe066520 &lt;qt_meta_data_QEventLoop&gt;, static_metacall = 0x7f3efdeb1bc0 &lt;QEventLoop::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)&gt;, relatedMetaObjects = 0x0, extradata = 0x0}}}
        returnCode = &lt;optimized out&gt;
#36 0x00007f3efe35f5bd in QGuiApplication::exec () at kernel/qguiapplication.cpp:1863
No locals.
#37 0x00007f3efd5aec59 in QApplication::exec () at kernel/qapplication.cpp:2832
No locals.
#38 0x000056095ad32c24 in main (argc=&lt;optimized out&gt;, argv=&lt;optimized out&gt;) at /usr/src/debug/kwin-5.26.90-1.fc38.x86_64/src/main_wayland.cpp:628
        environment = {d = {d = 0x56095be6fb10}}
        a = {&lt;KWin::Application&gt; = {&lt;QApplication&gt; = {&lt;QGuiApplication&gt; = {&lt;QCoreApplication&gt; = {&lt;QObject&gt; = {_vptr.QObject = 0x56095ae697a0 &lt;vtable for KWin::ApplicationWayland+16&gt;, static staticMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7f3efe06c7a0 &lt;qt_meta_stringdata_QObject&gt;, data = 0x7f3efe06c680 &lt;qt_meta_data_QObject&gt;, static_metacall = 0x7f3efdee5290 &lt;QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)&gt;, relatedMetaObjects = 0x0, extradata = 0x0}}, d_ptr = {d = 0x56095be70a50}, static staticQtMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7f3efe06f740 &lt;qt_meta_stringdata_Qt&gt;, data = 0x7f3efe06c8c0 &lt;qt_meta_data_Qt&gt;, static_metacall = 0x0, relatedMetaObjects = 0x0, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = {direct = 0x7f3efe15e3c0 &lt;QObject::staticMetaObject&gt;}, stringdata = 0x7f3efe066c60 &lt;qt_meta_stringdata_QCoreApplication&gt;, data = 0x7f3efe066b40 &lt;qt_meta_data_QCoreApplication&gt;, static_metacall = 0x7f3efdeb4ef0 &lt;QCoreApplication::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)&gt;, relatedMetaObjects = 0x0, extradata = 0x0}}, static self = 0x7ffcd5b342c0}, static staticMetaObject = {d = {superdata = {direct = 0x7f3efe166ce0 &lt;QCoreApplication::staticMetaObject&gt;}, stringdata = 0x7f3efe7315c0 &lt;qt_meta_stringdata_QGuiApplication&gt;, data = 0x7f3efe731340 &lt;qt_meta_data_QGuiApplication&gt;, static_metacall = 0x7f3efe360670 &lt;QGuiApplication::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)&gt;, relatedMetaObjects = 0x0, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = {direct = 0x7f3efe816b20 &lt;QGuiApplication::staticMetaObject&gt;}, stringdata = 0x7f3efd9868c0 &lt;qt_meta_stringdata_QApplication&gt;, data = 0x7f3efd986740 &lt;qt_meta_data_QApplication&gt;, static_metacall = 0x7f3efd5b2a20 &lt;QApplication::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)&gt;, relatedMetaObjects = 0x0, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = {direct = 0x7f3efdace4a0 &lt;QApplication::staticMetaObject&gt;}, stringdata = 0x7f3effadb580 &lt;_ZL36qt_meta_stringdata_KWin__Application.lto_priv.0&gt;, data = 0x7f3effad54c0 &lt;_ZL30qt_meta_data_KWin__Application.lto_priv.0&gt;, static_metacall = 0x7f3eff7b8f40 &lt;KWin::Application::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)&gt;, relatedMetaObjects = 0x0, extradata = 0x0}}, m_eventFilters = {&lt;QListSpecialMethods&lt;QPointer&lt;KWin::X11EventFilterContainer&gt; &gt;&gt; = {&lt;No data fields&gt;}, {p = {static shared_null = {ref = {atomic = {_q_value = std::atomic&lt;int&gt; = { -1 }}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f3efdf88c40 &lt;QListData::shared_null&gt;}, d = 0x7f3efdf88c40 &lt;QListData::shared_null&gt;}}, m_genericEventFilters = {&lt;QListSpecialMethods&lt;QPointer&lt;KWin::X11EventFilterContainer&gt; &gt;&gt; = {&lt;No data fields&gt;}, {p = {static shared_null = {ref = {atomic = {_q_value = std::atomic&lt;int&gt; = { -1 }}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f3efdf88c40 &lt;QListData::shared_null&gt;}, d = 0x7f3efdf88c40 &lt;QListData::shared_null&gt;}}, m_eventFilter = std::unique_ptr&lt;KWin::XcbEventFilter&gt; = {get() = 0x56095be7e8e0}, m_followLocale1 = true, m_configLock = false, m_config = {d = 0x56095be7a100}, m_kxkbConfig = {d = 0x56095be8ad70}, m_operationMode = KWin::Application::OperationModeWaylandOnly, m_x11Time = 0, m_rootWindow = 0, m_connection = 0x0, m_useKActivities = true, m_session = std::unique_ptr&lt;KWin::Session&gt; = {get() = 0x56095be87520}, m_outputBackend = std::unique_ptr&lt;KWin::OutputBackend&gt; = {get() = 0x56095be8b570}, m_terminating = false, m_xwaylandScale = 1, m_processEnvironment = {d = {d = 0x56095be6fb10}}, m_pluginManager = std::unique_ptr&lt;KWin::PluginManager&gt; = {get() = 0x0}, m_inputMethod = std::unique_ptr&lt;KWin::InputMethod&gt; = {get() = 0x56095bf85da0}, m_colorManager = std::unique_ptr&lt;KWin::ColorManager&gt; = {get() = 0x0}, m_tabletModeManager = std::unique_ptr&lt;KWin::TabletModeManager&gt; = {get() = 0x56095bfaaf10}, m_screenLockerWatcher = std::unique_ptr&lt;KWin::ScreenLockerWatcher&gt; = {get() = 0x56095be8b400}}, static staticMetaObject = {d = {superdata = {direct = 0x7f3effbee660 &lt;KWin::Application::staticMetaObject&gt;}, stringdata = 0x56095ae1f0a0 &lt;qt_meta_stringdata_KWin__ApplicationWayland&gt;, data = 0x56095ae1d740 &lt;qt_meta_data_KWin__ApplicationWayland&gt;, static_metacall = 0x56095ad34800 &lt;KWin::ApplicationWayland::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)&gt;, relatedMetaObjects = 0x0, extradata = 0x0}}, m_startXWayland = false, m_applicationsToStart = {&lt;QList&lt;QString&gt;&gt; = {&lt;QListSpecialMethods&lt;QString&gt;&gt; = {&lt;No data fields&gt;}, {p = {d = 0x7f3efdf88c40 &lt;QListData::shared_null&gt;}, d = 0x7f3efdf88c40 &lt;QListData::shared_null&gt;}}, &lt;No data fields&gt;}, m_inputMethodServerToStart = {d = 0x56095be7dc60}, m_sessionArgument = {d = 0x7f3efdf88160 &lt;QArrayData::shared_null&gt;}, m_xwayland = std::unique_ptr&lt;KWin::Xwl::Xwayland&gt; = {get() = 0x0}, m_xwaylandListenFds = {d = 0x7f3efdf88160 &lt;QArrayData::shared_null&gt;}, m_xwaylandDisplay = {d = 0x7f3efdf88160 &lt;QArrayData::shared_null&gt;}, m_xwaylandXauthority = {d = 0x7f3efdf88160 &lt;QArrayData::shared_null&gt;}, m_settingsWatcher = {value = 0x0, d = 0x0}}
        xwaylandOption = {d = {d = 0x56095be72290}}
        waylandSocketOption = {d = {d = 0x56095be81b20}}
        x11DisplayOption = {d = {d = 0x56095be81b60}}
        waylandDisplayOption = {d = {d = 0x56095be81ba0}}
        virtualFbOption = {d = {d = 0x56095be81be0}}
        widthOption = {d = {d = 0x56095be81c50}}
        heightOption = {d = {d = 0x56095be81cf0}}
        scaleOption = {d = {d = 0x56095be81db0}}
        outputCountOption = {d = {d = 0x56095be81fa0}}
        waylandSocketFdOption = {d = {d = 0x56095be82060}}
        xwaylandListenFdOption = {d = {d = 0x56095be820d0}}
        xwaylandDisplayOption = {d = {d = 0x56095be82140}}
        xwaylandXAuthorityOption = {d = {d = 0x56095be82180}}
        replaceOption = {d = {d = 0x56095be822d0}}
        drmOption = {d = {d = 0x56095be82310}}
        locale1Option = {d = {d = 0x56095be82470}}
        parser = {d = 0x56095be7d280}
        inputMethodOption = {d = {d = 0x56095be83250}}
        screenLockerOption = {d = {d = 0x56095be83420}}
        noScreenLockerOption = {d = {d = 0x56095be834c0}}
        noGlobalShortcutsOption = {d = {d = 0x56095be835c0}}
        noActivitiesOption = {d = {d = 0x56095be836d0}}
        exitWithSessionOption = {d = {d = 0x56095be83890}}
        backendType = &lt;optimized out&gt;
        pluginName = {d = 0x7f3efdf88160 &lt;QArrayData::shared_null&gt;}
        initialWindowSize = {wd = 1024, ht = 768}
        outputCount = &lt;optimized out&gt;
        outputScale = &lt;optimized out&gt;
        ok = true
        width = &lt;optimized out&gt;
        height = &lt;optimized out&gt;
        scale = &lt;optimized out&gt;
        count = &lt;optimized out&gt;
        server = &lt;optimized out&gt;
        flags = &lt;optimized out&gt;
        socketName = {d = 0x7f3efdf88160 &lt;QArrayData::shared_null&gt;}
        BackendType::Kms = BackendType::Kms
        BackendType::X11 = BackendType::X11
        BackendType::Wayland = BackendType::Wayland
        BackendType::Virtual = BackendType::Virtual

The trace had errors accessing memory in frame #9 in KWin::EglGbmLayerSurface::createSurface 
surface = std::optional&lt;KWin::EglGbmLayerSurface::Surface&gt; = {[contained value] = {gbmSurface = &lt;error reading variable: Cannot access memory at address 0x7f0100000008&gt;, importSwapchain = &lt;error reading variable: Cannot access memory at address 0x10&gt;,

Frame #10 had similar errors in KWin::EglGbmLayerSurface::checkSurface 
newSurface = std::optional&lt;KWin::EglGbmLayerSurface::Surface&gt; = {[contained value] = {gbmSurface = &lt;error reading variable: Cannot access memory at address 0xb03b3e57d90427ff&gt;, importSwapchain = &lt;error reading variable: Cannot access memory at address 0xe6673214bbb7285d&gt;, importMode = (unknown: 0x56697274), currentBuffer = &lt;error reading variable: Cannot access memory at address 0x6c2d312d72747569&gt;, currentFramebuffer = &lt;error reading variable: Cannot access memory at address 0x3a80000069746f7a&gt;, forceLinear = false}}

Those errors might indicate memory corruption in the Wayland surface kwin was creating or using which could&apos;ve led to the crash higher in the trace. I&apos;m attaching the full trace of all threads of the kwin_wayland crash using llvmpipe from mesa 23.0-rc3 by Adam Williamson from https://bugzilla.redhat.com/show_bug.cgi?id=2164667#c10

When I booted Fedora-KDE-Live-x86_64-Rawhide-20230202.n.0.iso in a GNOME Boxes QEMU/KVM VM with 3D acceleration disabled using the llvmpipe driver after the black screen I ran startx &amp; from another VT . Plasma on X ran normally. So the problem might be specific to Plasma on Wayland. I disabled automatic login from sddm in System Settings and logged out. kwin_wayland on Wayland as the sddm compositor crashed with the same type of trace after logging out. The black screen problem with the flashing text cursor at the top left happened.

Plasma started normally without these crashes with Fedora-KDE-Live-x86_64-Rawhide-20230202.n.0.iso in a GNOME Boxes QEMU/KVM VM with 3D acceleration enabled using the virgl mesa driver and virtio_gpu kernel driver and on bare metal using the radeonsi mesa driver and amdgpu and driver with amd_iommu=off on the kernel command line to work around the black screen problem involving amdgpu and AMD IOMMUs with 6.2 kernels I reported at https://bugzilla.redhat.com/show_bug.cgi?id=2156691 The kwin_wayland crash might be specific to the use of the llvmpipe driver.

A mesa patch at https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20955 didn&apos;t fix the problem according to Adam at https://bugzilla.redhat.com/show_bug.cgi?id=2164667#c26

STEPS TO REPRODUCE
1. Boot a Fedora 37 KDE Plasma installation updated to 2023-2-3 with updates-testing enabled
2. Log in to Plasma on Wayland
3. Download Fedora-KDE-Live-x86_64-Rawhide-20230202.n.0.iso from https://koji.fedoraproject.org/koji/buildinfo?buildID=2145429 mesa-23.0.0~rc4-1.fc38 was untagged from Rawhide due to this problem so later images might have mesa-22.3.3-3.fc38 and so would not be affected https://pagure.io/releng/issue/11247
4. Install GNOME Boxes if it isn&apos;t already with sudo dnf install gnome-boxes
5. Start GNOME Boxes
6. boot the Fedora Rawhide live image Fedora-KDE-Live-x86_64-Rawhide-20230202.n.0.iso in a GNOME Boxes QEMU/KVM VM with 3D acceleration disabled using the llvmpipe driver, EFI enabled, and 3 GB RAM

OBSERVED RESULT
kwin_wayland crashes involving dri2_create_drawable when Plasma starts and the llvmpipe driver from Mesa 23.0-rc3 and 23.0-rc4 is used

EXPECTED RESULT
kwin_wayland wouldn&apos;t crash

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: Fedora Rawhide/38
(available in About System)
KDE Plasma Version: 5.26.90
KDE Frameworks Version: 5.102.0
Qt Version: 5.15.8

ADDITIONAL INFORMATION

I&apos;ve seen frequent journal warnings that the dri2 screen wasn&apos;t created in recent Rawhide KDE Plasma GNOME Boxes QEMU/KVM VMs with 3D acceleration disabled using llvmpipe like the following in my report on plasmashell crashes at https://bugs.kde.org/show_bug.cgi?id=464258
plasmashell[2722]: libEGL warning: egl: failed to create dri2 screen

The dri2 screen not being created properly might be related to this problem crashes with mesa-23.0.0~rc3-2.fc38 and later given the similarities in the functions and variables like dri2_create_drawable and dri2_dpy-&gt;dri2-&gt;createNewDrawable.
I didn&apos;t see the libEGL warning: egl: failed to create dri2 screen in the journal with Fedora-KDE-Live-x86_64-Rawhide-20230202.n.0.iso in a GNOME Boxes QEMU/KVM VM with 3D acceleration disabled using the llvmpipe driver after the black screen from another VT. Those warnings happened with many KDE programs including kwin_wayland_wrapper in Rawhide KDE Plasma VMs from the last few weeks at least, but I only saw them when the llvmpipe driver was used and not with virgl and virtio_gpu or radeonsi and amdgpu. Those other KDE programs might not have been running long enough for the dri2 screen warnings to appear with Fedora-KDE-Live-x86_64-Rawhide-20230202.n.0.iso before kwin_wayland crashed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2205313</commentid>
    <comment_count>1</comment_count>
    <who name="Vlad Zahorodnii">vlad.zahorodnii</who>
    <bug_when>2023-02-06 09:26:10 +0000</bug_when>
    <thetext>If you update mesa and plasma stops working, it sounds like a driver bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>155941</attachid>
            <date>2023-02-04 17:55:34 +0000</date>
            <delta_ts>2023-02-04 17:55:34 +0000</delta_ts>
            <desc>Full trace of all threads of kwin_wayland crash when starting using llvmpipe from mesa 23.0-rc3 by Adam Williamson from https://bugzilla.redhat.com/show_bug.cgi?id=2164667#c10</desc>
            <filename>file_465284.txt</filename>
            <type>text/plain</type>
            <size>54094</size>
            <attacher name="Matt Fagnani">matt.fagnani</attacher>
            
              <data encoding="base64">DQpUaHJlYWQgOCAoVGhyZWFkIDB4N2YzZWQ2ZmZkNmMwIChMV1AgOTQ0KSk6DQojMCAgMHgwMDAw
N2YzZWZjZGNhNDY5IGluIF9fZnV0ZXhfYWJzdGltZWRfd2FpdF9jb21tb242NCAocHJpdmF0ZT0w
LCBjYW5jZWw9dHJ1ZSwgYWJzdGltZT0weDAsIG9wPTM5MywgZXhwZWN0ZWQ9MCwgZnV0ZXhfd29y
ZD0weDU2MDk1YmY2ZWFjOCkgYXQgZnV0ZXgtaW50ZXJuYWwuYzo1Nw0KICAgICAgICBzY19jYW5j
ZWxfb2xkdHlwZSA9IDANCiAgICAgICAgX19hcmc2ID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAg
IF9fYXJnMyA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBfYTUgPSA8b3B0aW1pemVkIG91dD4N
CiAgICAgICAgX2EyID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIHNjX3JldCA9IDxvcHRpbWl6
ZWQgb3V0Pg0KICAgICAgICBfX2FyZzQgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgX19hcmcx
ID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIF9hNiA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAg
ICBfYTMgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgcmVzdWx0dmFyID0gPG9wdGltaXplZCBv
dXQ+DQogICAgICAgIF9fYXJnNSA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBfX2FyZzIgPSA8
b3B0aW1pemVkIG91dD4NCiAgICAgICAgX2E0ID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIF9h
MSA9IDxvcHRpbWl6ZWQgb3V0Pg0KIzEgIF9fZnV0ZXhfYWJzdGltZWRfd2FpdF9jb21tb24gKGZ1
dGV4X3dvcmQ9ZnV0ZXhfd29yZEBlbnRyeT0weDU2MDk1YmY2ZWFjOCwgZXhwZWN0ZWQ9ZXhwZWN0
ZWRAZW50cnk9MCwgY2xvY2tpZD1jbG9ja2lkQGVudHJ5PTAsIGFic3RpbWU9YWJzdGltZUBlbnRy
eT0weDAsIHByaXZhdGU9cHJpdmF0ZUBlbnRyeT0wLCBjYW5jZWw9Y2FuY2VsQGVudHJ5PXRydWUp
IGF0IGZ1dGV4LWludGVybmFsLmM6ODcNCiAgICAgICAgZXJyID0gPG9wdGltaXplZCBvdXQ+DQog
ICAgICAgIGNsb2NrYml0ID0gMjU2DQogICAgICAgIG9wID0gMzkzDQojMiAgMHgwMDAwN2YzZWZj
ZGNhNGVmIGluIF9fR0lfX19mdXRleF9hYnN0aW1lZF93YWl0X2NhbmNlbGFibGU2NCAoZnV0ZXhf
d29yZD1mdXRleF93b3JkQGVudHJ5PTB4NTYwOTViZjZlYWM4LCBleHBlY3RlZD1leHBlY3RlZEBl
bnRyeT0wLCBjbG9ja2lkPWNsb2NraWRAZW50cnk9MCwgYWJzdGltZT1hYnN0aW1lQGVudHJ5PTB4
MCwgcHJpdmF0ZT1wcml2YXRlQGVudHJ5PTApIGF0IGZ1dGV4LWludGVybmFsLmM6MTM5DQpObyBs
b2NhbHMuDQojMyAgMHgwMDAwN2YzZWZjZGNjZTA5IGluIF9fcHRocmVhZF9jb25kX3dhaXRfY29t
bW9uIChhYnN0aW1lPTB4MCwgY2xvY2tpZD0wLCBtdXRleD08b3B0aW1pemVkIG91dD4sIGNvbmQ9
MHg1NjA5NWJmNmVhYTApIGF0IHB0aHJlYWRfY29uZF93YWl0LmM6NTAzDQogICAgICAgIHNwaW4g
PSAwDQogICAgICAgIGJ1ZmZlciA9IHtfX3JvdXRpbmUgPSAweDdmM2VmY2RjY2IzMCA8X19jb25k
dmFyX2NsZWFudXBfd2FpdGluZz4sIF9fYXJnID0gMHg3ZjNlZDZmZmNhZTAsIF9fY2FuY2VsdHlw
ZSA9IDAsIF9fcHJldiA9IDB4MH0NCiAgICAgICAgY2J1ZmZlciA9IHt3c2VxID0gMCwgY29uZCA9
IDB4NTYwOTViZjZlYWEwLCBtdXRleCA9IDB4NTYwOTViZjZlYTc4LCBwcml2YXRlID0gMH0NCiAg
ICAgICAgZXJyID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIGcgPSAwDQogICAgICAgIGZsYWdz
ID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIGcxX3N0YXJ0ID0gPG9wdGltaXplZCBvdXQ+DQog
ICAgICAgIG1heHNwaW4gPSAwDQogICAgICAgIHNpZ25hbHMgPSA8b3B0aW1pemVkIG91dD4NCiAg
ICAgICAgcmVzdWx0ID0gMA0KICAgICAgICB3c2VxID0gMA0KICAgICAgICBzZXEgPSAwDQogICAg
ICAgIHByaXZhdGUgPSAwDQogICAgICAgIG1heHNwaW4gPSA8b3B0aW1pemVkIG91dD4NCiAgICAg
ICAgZXJyID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIHJlc3VsdCA9IDxvcHRpbWl6ZWQgb3V0
Pg0KICAgICAgICB3c2VxID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIGcgPSA8b3B0aW1pemVk
IG91dD4NCiAgICAgICAgc2VxID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIGZsYWdzID0gPG9w
dGltaXplZCBvdXQ+DQogICAgICAgIHByaXZhdGUgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAg
c2lnbmFscyA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBkb25lID0gPG9wdGltaXplZCBvdXQ+
DQogICAgICAgIGcxX3N0YXJ0ID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIHNwaW4gPSA8b3B0
aW1pemVkIG91dD4NCiAgICAgICAgYnVmZmVyID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIGNi
dWZmZXIgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgcyA9IDxvcHRpbWl6ZWQgb3V0Pg0KIzQg
IF9fX3B0aHJlYWRfY29uZF93YWl0IChjb25kPTB4NTYwOTViZjZlYWEwLCBtdXRleD08b3B0aW1p
emVkIG91dD4pIGF0IHB0aHJlYWRfY29uZF93YWl0LmM6NjE4DQpObyBsb2NhbHMuDQojNSAgMHgw
MDAwN2YzZWU4ZDEyOTBkIGluIGNuZF93YWl0IChjb25kPTxvcHRpbWl6ZWQgb3V0PiwgbXR4PTxv
cHRpbWl6ZWQgb3V0PikgYXQgLi4vc3JjL2MxMS9pbXBsL3RocmVhZHNfcG9zaXguYzoxMzUNCk5v
IGxvY2Fscy4NCiM2ICAweDAwMDA3ZjNlZThjYzE2MGIgaW4gdXRpbF9xdWV1ZV90aHJlYWRfZnVu
YyAoaW5wdXQ9aW5wdXRAZW50cnk9MHg1NjA5NWJmYmM4ZTApIGF0IC4uL3NyYy91dGlsL3VfcXVl
dWUuYzoyOTANCiAgICAgICAgam9iID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIHF1ZXVlID0g
MHg1NjA5NWJmNmVhNjANCiAgICAgICAgdGhyZWFkX2luZGV4ID0gMA0KIzcgIDB4MDAwMDdmM2Vl
OGQxMjgzYyBpbiBpbXBsX3RocmRfcm91dGluZSAocD08b3B0aW1pemVkIG91dD4pIGF0IC4uL3Ny
Yy9jMTEvaW1wbC90aHJlYWRzX3Bvc2l4LmM6NjcNCiAgICAgICAgcGFjayA9IHtmdW5jID0gMHg3
ZjNlZThjYzE1ODAgPHV0aWxfcXVldWVfdGhyZWFkX2Z1bmM+LCBhcmcgPSAweDU2MDk1YmZiYzhl
MH0NCiM4ICAweDAwMDA3ZjNlZmNkY2RiOTcgaW4gc3RhcnRfdGhyZWFkIChhcmc9PG9wdGltaXpl
ZCBvdXQ+KSBhdCBwdGhyZWFkX2NyZWF0ZS5jOjQ0NA0KICAgICAgICByZXQgPSA8b3B0aW1pemVk
IG91dD4NCiAgICAgICAgcGQgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgb3V0ID0gPG9wdGlt
aXplZCBvdXQ+DQogICAgICAgIHVud2luZF9idWYgPSB7Y2FuY2VsX2ptcF9idWYgPSB7e2ptcF9i
dWYgPSB7MTM5OTA4NTA3MDMxNzEyLCAtNzM4OTA4OTM3MjQ3MzU0MzM5MiwgMTM5OTA3ODcxNzkw
Nzg0LCAtMjgwLCAwLCAxNDA3MjM4OTM3NzYzMDQsIC03Mzg5MDg5MzcyNDE5MDE3NDQwLCAtNzM4
OTAwNjA5MzQ1MjA2OTYwMH0sIG1hc2tfd2FzX3NhdmVkID0gMH19LCBwcml2ID0ge3BhZCA9IHsw
eDAsIDB4MCwgMHgwLCAweDB9LCBkYXRhID0ge3ByZXYgPSAweDAsIGNsZWFudXAgPSAweDAsIGNh
bmNlbHR5cGUgPSAwfX19DQogICAgICAgIG5vdF9maXJzdF9jYWxsID0gPG9wdGltaXplZCBvdXQ+
DQojOSAgMHgwMDAwN2YzZWZjZTUzOWIwIGluIGNsb25lMyAoKSBhdCAuLi9zeXNkZXBzL3VuaXgv
c3lzdi9saW51eC94ODZfNjQvY2xvbmUzLlM6ODENCk5vIGxvY2Fscy4NCg0KVGhyZWFkIDcgKFRo
cmVhZCAweDdmM2VkN2ZmZjZjMCAoTFdQIDk0MikpOg0KIzAgIDB4MDAwMDdmM2VmY2RjYTQ2OSBp
biBfX2Z1dGV4X2Fic3RpbWVkX3dhaXRfY29tbW9uNjQgKHByaXZhdGU9MCwgY2FuY2VsPXRydWUs
IGFic3RpbWU9MHgwLCBvcD0zOTMsIGV4cGVjdGVkPTAsIGZ1dGV4X3dvcmQ9MHg1NjA5NWJmYmI3
NjApIGF0IGZ1dGV4LWludGVybmFsLmM6NTcNCiAgICAgICAgc2NfY2FuY2VsX29sZHR5cGUgPSAw
DQogICAgICAgIF9fYXJnNiA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBfX2FyZzMgPSA8b3B0
aW1pemVkIG91dD4NCiAgICAgICAgX2E1ID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIF9hMiA9
IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBzY19yZXQgPSA8b3B0aW1pemVkIG91dD4NCiAgICAg
ICAgX19hcmc0ID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIF9fYXJnMSA9IDxvcHRpbWl6ZWQg
b3V0Pg0KICAgICAgICBfYTYgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgX2EzID0gPG9wdGlt
aXplZCBvdXQ+DQogICAgICAgIHJlc3VsdHZhciA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBf
X2FyZzUgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgX19hcmcyID0gPG9wdGltaXplZCBvdXQ+
DQogICAgICAgIF9hNCA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBfYTEgPSA8b3B0aW1pemVk
IG91dD4NCiMxICBfX2Z1dGV4X2Fic3RpbWVkX3dhaXRfY29tbW9uIChmdXRleF93b3JkPWZ1dGV4
X3dvcmRAZW50cnk9MHg1NjA5NWJmYmI3NjAsIGV4cGVjdGVkPWV4cGVjdGVkQGVudHJ5PTAsIGNs
b2NraWQ9Y2xvY2tpZEBlbnRyeT0wLCBhYnN0aW1lPWFic3RpbWVAZW50cnk9MHgwLCBwcml2YXRl
PXByaXZhdGVAZW50cnk9MCwgY2FuY2VsPWNhbmNlbEBlbnRyeT10cnVlKSBhdCBmdXRleC1pbnRl
cm5hbC5jOjg3DQogICAgICAgIGVyciA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBjbG9ja2Jp
dCA9IDI1Ng0KICAgICAgICBvcCA9IDM5Mw0KIzIgIDB4MDAwMDdmM2VmY2RjYTRlZiBpbiBfX0dJ
X19fZnV0ZXhfYWJzdGltZWRfd2FpdF9jYW5jZWxhYmxlNjQgKGZ1dGV4X3dvcmQ9ZnV0ZXhfd29y
ZEBlbnRyeT0weDU2MDk1YmZiYjc2MCwgZXhwZWN0ZWQ9ZXhwZWN0ZWRAZW50cnk9MCwgY2xvY2tp
ZD1jbG9ja2lkQGVudHJ5PTAsIGFic3RpbWU9YWJzdGltZUBlbnRyeT0weDAsIHByaXZhdGU9cHJp
dmF0ZUBlbnRyeT0wKSBhdCBmdXRleC1pbnRlcm5hbC5jOjEzOQ0KTm8gbG9jYWxzLg0KIzMgIDB4
MDAwMDdmM2VmY2RjY2UwOSBpbiBfX3B0aHJlYWRfY29uZF93YWl0X2NvbW1vbiAoYWJzdGltZT0w
eDAsIGNsb2NraWQ9MCwgbXV0ZXg9PG9wdGltaXplZCBvdXQ+LCBjb25kPTB4NTYwOTViZmJiNzM4
KSBhdCBwdGhyZWFkX2NvbmRfd2FpdC5jOjUwMw0KICAgICAgICBzcGluID0gMA0KICAgICAgICBi
dWZmZXIgPSB7X19yb3V0aW5lID0gMHg3ZjNlZmNkY2NiMzAgPF9fY29uZHZhcl9jbGVhbnVwX3dh
aXRpbmc+LCBfX2FyZyA9IDB4N2YzZWQ3ZmZlYjgwLCBfX2NhbmNlbHR5cGUgPSAwLCBfX3ByZXYg
PSAweDB9DQogICAgICAgIGNidWZmZXIgPSB7d3NlcSA9IDAsIGNvbmQgPSAweDU2MDk1YmZiYjcz
OCwgbXV0ZXggPSAweDU2MDk1YmZiYjcxMCwgcHJpdmF0ZSA9IDB9DQogICAgICAgIGVyciA9IDxv
cHRpbWl6ZWQgb3V0Pg0KICAgICAgICBnID0gMA0KICAgICAgICBmbGFncyA9IDxvcHRpbWl6ZWQg
b3V0Pg0KICAgICAgICBnMV9zdGFydCA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBtYXhzcGlu
ID0gMA0KICAgICAgICBzaWduYWxzID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIHJlc3VsdCA9
IDANCiAgICAgICAgd3NlcSA9IDANCiAgICAgICAgc2VxID0gMA0KICAgICAgICBwcml2YXRlID0g
MA0KICAgICAgICBtYXhzcGluID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIGVyciA9IDxvcHRp
bWl6ZWQgb3V0Pg0KICAgICAgICByZXN1bHQgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgd3Nl
cSA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBnID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAg
IHNlcSA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBmbGFncyA9IDxvcHRpbWl6ZWQgb3V0Pg0K
ICAgICAgICBwcml2YXRlID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIHNpZ25hbHMgPSA8b3B0
aW1pemVkIG91dD4NCiAgICAgICAgZG9uZSA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBnMV9z
dGFydCA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBzcGluID0gPG9wdGltaXplZCBvdXQ+DQog
ICAgICAgIGJ1ZmZlciA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBjYnVmZmVyID0gPG9wdGlt
aXplZCBvdXQ+DQogICAgICAgIHMgPSA8b3B0aW1pemVkIG91dD4NCiM0ICBfX19wdGhyZWFkX2Nv
bmRfd2FpdCAoY29uZD0weDU2MDk1YmZiYjczOCwgbXV0ZXg9PG9wdGltaXplZCBvdXQ+KSBhdCBw
dGhyZWFkX2NvbmRfd2FpdC5jOjYxOA0KTm8gbG9jYWxzLg0KIzUgIDB4MDAwMDdmM2VlOGQxMjkw
ZCBpbiBjbmRfd2FpdCAoY29uZD08b3B0aW1pemVkIG91dD4sIG10eD08b3B0aW1pemVkIG91dD4p
IGF0IC4uL3NyYy9jMTEvaW1wbC90aHJlYWRzX3Bvc2l4LmM6MTM1DQpObyBsb2NhbHMuDQojNiAg
MHgwMDAwN2YzZWU5MzE3YTJiIGluIGxwX2NzX3Rwb29sX3dvcmtlciAoZGF0YT1kYXRhQGVudHJ5
PTB4NTYwOTViZmJiNzEwKSBhdCAuLi9zcmMvZ2FsbGl1bS9kcml2ZXJzL2xsdm1waXBlL2xwX2Nz
X3Rwb29sLmM6NDkNCiAgICAgICAgdGFzayA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBpdGVy
X3Blcl90aHJlYWQgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgdGhpc19pdGVyID0gPG9wdGlt
aXplZCBvdXQ+DQogICAgICAgIHBvb2wgPSAweDU2MDk1YmZiYjcxMA0KICAgICAgICBsbWVtID0g
e2xvY2FsX3NpemUgPSAwLCBsb2NhbF9tZW1fcHRyID0gMHgwfQ0KIzcgIDB4MDAwMDdmM2VlOGQx
MjgzYyBpbiBpbXBsX3RocmRfcm91dGluZSAocD08b3B0aW1pemVkIG91dD4pIGF0IC4uL3NyYy9j
MTEvaW1wbC90aHJlYWRzX3Bvc2l4LmM6NjcNCiAgICAgICAgcGFjayA9IHtmdW5jID0gMHg3ZjNl
ZTkzMTc5YzAgPGxwX2NzX3Rwb29sX3dvcmtlcj4sIGFyZyA9IDB4NTYwOTViZmJiNzEwfQ0KIzgg
IDB4MDAwMDdmM2VmY2RjZGI5NyBpbiBzdGFydF90aHJlYWQgKGFyZz08b3B0aW1pemVkIG91dD4p
IGF0IHB0aHJlYWRfY3JlYXRlLmM6NDQ0DQogICAgICAgIHJldCA9IDxvcHRpbWl6ZWQgb3V0Pg0K
ICAgICAgICBwZCA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBvdXQgPSA8b3B0aW1pemVkIG91
dD4NCiAgICAgICAgdW53aW5kX2J1ZiA9IHtjYW5jZWxfam1wX2J1ZiA9IHt7am1wX2J1ZiA9IHsx
Mzk5MDg1MDcwMzE3MTIsIC03Mzg5MDkxNTcyNTcwNTQwNzY4LCAxMzk5MDc4ODg1NzYxOTIsIC0y
ODAsIDIyLCAxNDA3MjM4OTM3NzY5OTIsIC03Mzg5MDkxNTcyNTE2MDE0ODE2LCAtNzM4OTAwNjA5
MzQ1MjA2OTYwMH0sIG1hc2tfd2FzX3NhdmVkID0gMH19LCBwcml2ID0ge3BhZCA9IHsweDAsIDB4
MCwgMHgwLCAweDB9LCBkYXRhID0ge3ByZXYgPSAweDAsIGNsZWFudXAgPSAweDAsIGNhbmNlbHR5
cGUgPSAwfX19DQogICAgICAgIG5vdF9maXJzdF9jYWxsID0gPG9wdGltaXplZCBvdXQ+DQojOSAg
MHgwMDAwN2YzZWZjZTUzOWIwIGluIGNsb25lMyAoKSBhdCAuLi9zeXNkZXBzL3VuaXgvc3lzdi9s
aW51eC94ODZfNjQvY2xvbmUzLlM6ODENCk5vIGxvY2Fscy4NCg0KVGhyZWFkIDYgKFRocmVhZCAw
eDdmM2VkYzlmZTZjMCAoTFdQIDk0MSkpOg0KIzAgIDB4MDAwMDdmM2VmY2RjYTQ2OSBpbiBfX2Z1
dGV4X2Fic3RpbWVkX3dhaXRfY29tbW9uNjQgKHByaXZhdGU9MCwgY2FuY2VsPXRydWUsIGFic3Rp
bWU9MHgwLCBvcD0zOTMsIGV4cGVjdGVkPTAsIGZ1dGV4X3dvcmQ9MHg1NjA5NWJmYjNkOTgpIGF0
IGZ1dGV4LWludGVybmFsLmM6NTcNCiAgICAgICAgc2NfY2FuY2VsX29sZHR5cGUgPSAwDQogICAg
ICAgIF9fYXJnNiA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBfX2FyZzMgPSA8b3B0aW1pemVk
IG91dD4NCiAgICAgICAgX2E1ID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIF9hMiA9IDxvcHRp
bWl6ZWQgb3V0Pg0KICAgICAgICBzY19yZXQgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgX19h
cmc0ID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIF9fYXJnMSA9IDxvcHRpbWl6ZWQgb3V0Pg0K
ICAgICAgICBfYTYgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgX2EzID0gPG9wdGltaXplZCBv
dXQ+DQogICAgICAgIHJlc3VsdHZhciA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBfX2FyZzUg
PSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgX19hcmcyID0gPG9wdGltaXplZCBvdXQ+DQogICAg
ICAgIF9hNCA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBfYTEgPSA8b3B0aW1pemVkIG91dD4N
CiMxICBfX2Z1dGV4X2Fic3RpbWVkX3dhaXRfY29tbW9uIChmdXRleF93b3JkPWZ1dGV4X3dvcmRA
ZW50cnk9MHg1NjA5NWJmYjNkOTgsIGV4cGVjdGVkPWV4cGVjdGVkQGVudHJ5PTAsIGNsb2NraWQ9
Y2xvY2tpZEBlbnRyeT0wLCBhYnN0aW1lPWFic3RpbWVAZW50cnk9MHgwLCBwcml2YXRlPXByaXZh
dGVAZW50cnk9MCwgY2FuY2VsPWNhbmNlbEBlbnRyeT10cnVlKSBhdCBmdXRleC1pbnRlcm5hbC5j
Ojg3DQogICAgICAgIGVyciA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBjbG9ja2JpdCA9IDI1
Ng0KICAgICAgICBvcCA9IDM5Mw0KIzIgIDB4MDAwMDdmM2VmY2RjYTRlZiBpbiBfX0dJX19fZnV0
ZXhfYWJzdGltZWRfd2FpdF9jYW5jZWxhYmxlNjQgKGZ1dGV4X3dvcmQ9ZnV0ZXhfd29yZEBlbnRy
eT0weDU2MDk1YmZiM2Q5OCwgZXhwZWN0ZWQ9ZXhwZWN0ZWRAZW50cnk9MCwgY2xvY2tpZD1jbG9j
a2lkQGVudHJ5PTAsIGFic3RpbWU9YWJzdGltZUBlbnRyeT0weDAsIHByaXZhdGU9cHJpdmF0ZUBl
bnRyeT0wKSBhdCBmdXRleC1pbnRlcm5hbC5jOjEzOQ0KTm8gbG9jYWxzLg0KIzMgIDB4MDAwMDdm
M2VmY2RjY2UwOSBpbiBfX3B0aHJlYWRfY29uZF93YWl0X2NvbW1vbiAoYWJzdGltZT0weDAsIGNs
b2NraWQ9MCwgbXV0ZXg9PG9wdGltaXplZCBvdXQ+LCBjb25kPTB4NTYwOTViZmIzZDcwKSBhdCBw
dGhyZWFkX2NvbmRfd2FpdC5jOjUwMw0KICAgICAgICBzcGluID0gMA0KICAgICAgICBidWZmZXIg
PSB7X19yb3V0aW5lID0gMHg3ZjNlZmNkY2NiMzAgPF9fY29uZHZhcl9jbGVhbnVwX3dhaXRpbmc+
LCBfX2FyZyA9IDB4N2YzZWRjOWZkYjkwLCBfX2NhbmNlbHR5cGUgPSAxMzUxNjgsIF9fcHJldiA9
IDB4MH0NCiAgICAgICAgY2J1ZmZlciA9IHt3c2VxID0gMCwgY29uZCA9IDB4NTYwOTViZmIzZDcw
LCBtdXRleCA9IDB4NTYwOTViZmIzZDQ4LCBwcml2YXRlID0gMH0NCiAgICAgICAgZXJyID0gPG9w
dGltaXplZCBvdXQ+DQogICAgICAgIGcgPSAwDQogICAgICAgIGZsYWdzID0gPG9wdGltaXplZCBv
dXQ+DQogICAgICAgIGcxX3N0YXJ0ID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIG1heHNwaW4g
PSAwDQogICAgICAgIHNpZ25hbHMgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgcmVzdWx0ID0g
MA0KICAgICAgICB3c2VxID0gMA0KICAgICAgICBzZXEgPSAwDQogICAgICAgIHByaXZhdGUgPSAw
DQogICAgICAgIG1heHNwaW4gPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgZXJyID0gPG9wdGlt
aXplZCBvdXQ+DQogICAgICAgIHJlc3VsdCA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICB3c2Vx
ID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIGcgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAg
c2VxID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIGZsYWdzID0gPG9wdGltaXplZCBvdXQ+DQog
ICAgICAgIHByaXZhdGUgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgc2lnbmFscyA9IDxvcHRp
bWl6ZWQgb3V0Pg0KICAgICAgICBkb25lID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIGcxX3N0
YXJ0ID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIHNwaW4gPSA8b3B0aW1pemVkIG91dD4NCiAg
ICAgICAgYnVmZmVyID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIGNidWZmZXIgPSA8b3B0aW1p
emVkIG91dD4NCiAgICAgICAgcyA9IDxvcHRpbWl6ZWQgb3V0Pg0KIzQgIF9fX3B0aHJlYWRfY29u
ZF93YWl0IChjb25kPTB4NTYwOTViZmIzZDcwLCBtdXRleD08b3B0aW1pemVkIG91dD4pIGF0IHB0
aHJlYWRfY29uZF93YWl0LmM6NjE4DQpObyBsb2NhbHMuDQojNSAgMHgwMDAwN2YzZWU4ZDEyOTBk
IGluIGNuZF93YWl0IChjb25kPTxvcHRpbWl6ZWQgb3V0PiwgbXR4PTxvcHRpbWl6ZWQgb3V0Pikg
YXQgLi4vc3JjL2MxMS9pbXBsL3RocmVhZHNfcG9zaXguYzoxMzUNCk5vIGxvY2Fscy4NCiM2ICAw
eDAwMDA3ZjNlZTkzMWFmMWIgaW4gdXRpbF9zZW1hcGhvcmVfd2FpdCAoc2VtYT0weDU2MDk1YmZi
M2Q0OCkgYXQgLi4vc3JjL3V0aWwvdV90aHJlYWQuaDoxODQNCk5vIGxvY2Fscy4NCiM3ICB0aHJl
YWRfZnVuY3Rpb24gKGluaXRfZGF0YT1pbml0X2RhdGFAZW50cnk9MHg1NjA5NWJmYjNjYTgpIGF0
IC4uL3NyYy9nYWxsaXVtL2RyaXZlcnMvbGx2bXBpcGUvbHBfcmFzdC5jOjExNzgNCiAgICAgICAg
dGFzayA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICByYXN0ID0gMHg1NjA5NWJmYjNiMzANCiAg
ICAgICAgZGVidWcgPSAwICdcMDAwJw0KICAgICAgICB0aHJlYWRfbmFtZSA9ICJsbHZtcGlwZS0x
XDAwMFwzMjVcMzc0XDE3N1wwMDAiDQogICAgICAgIGZwc3RhdGUgPSA8b3B0aW1pemVkIG91dD4N
CiM4ICAweDAwMDA3ZjNlZThkMTI4M2MgaW4gaW1wbF90aHJkX3JvdXRpbmUgKHA9PG9wdGltaXpl
ZCBvdXQ+KSBhdCAuLi9zcmMvYzExL2ltcGwvdGhyZWFkc19wb3NpeC5jOjY3DQogICAgICAgIHBh
Y2sgPSB7ZnVuYyA9IDB4N2YzZWU5MzFhZTgwIDx0aHJlYWRfZnVuY3Rpb24+LCBhcmcgPSAweDU2
MDk1YmZiM2NhOH0NCiM5ICAweDAwMDA3ZjNlZmNkY2RiOTcgaW4gc3RhcnRfdGhyZWFkIChhcmc9
PG9wdGltaXplZCBvdXQ+KSBhdCBwdGhyZWFkX2NyZWF0ZS5jOjQ0NA0KICAgICAgICByZXQgPSA8
b3B0aW1pemVkIG91dD4NCiAgICAgICAgcGQgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgb3V0
ID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIHVud2luZF9idWYgPSB7Y2FuY2VsX2ptcF9idWYg
PSB7e2ptcF9idWYgPSB7MTM5OTA4NTA3MDMxNzEyLCAtNzM4OTA3NTkwMzk5Mjk3NDA0OCwgMTM5
OTA3OTY2MTY2NzIwLCAtMjgwLCAyMiwgMTQwNzIzODkzNzc2OTYwLCAtNzM4OTA3NTkwMzkzODQ0
ODA5NiwgLTczODkwMDYwOTM0NTIwNjk2MDB9LCBtYXNrX3dhc19zYXZlZCA9IDB9fSwgcHJpdiA9
IHtwYWQgPSB7MHgwLCAweDAsIDB4MCwgMHgwfSwgZGF0YSA9IHtwcmV2ID0gMHgwLCBjbGVhbnVw
ID0gMHgwLCBjYW5jZWx0eXBlID0gMH19fQ0KICAgICAgICBub3RfZmlyc3RfY2FsbCA9IDxvcHRp
bWl6ZWQgb3V0Pg0KIzEwIDB4MDAwMDdmM2VmY2U1MzliMCBpbiBjbG9uZTMgKCkgYXQgLi4vc3lz
ZGVwcy91bml4L3N5c3YvbGludXgveDg2XzY0L2Nsb25lMy5TOjgxDQpObyBsb2NhbHMuDQoNClRo
cmVhZCA1IChUaHJlYWQgMHg3ZjNlZGQxZmY2YzAgKExXUCA5NDApKToNCiMwICAweDAwMDA3ZjNl
ZmNkY2E0NjkgaW4gX19mdXRleF9hYnN0aW1lZF93YWl0X2NvbW1vbjY0IChwcml2YXRlPTAsIGNh
bmNlbD10cnVlLCBhYnN0aW1lPTB4MCwgb3A9MzkzLCBleHBlY3RlZD0wLCBmdXRleF93b3JkPTB4
NTYwOTViZmIzYzM4KSBhdCBmdXRleC1pbnRlcm5hbC5jOjU3DQogICAgICAgIHNjX2NhbmNlbF9v
bGR0eXBlID0gMA0KICAgICAgICBfX2FyZzYgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgX19h
cmczID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIF9hNSA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAg
ICAgICBfYTIgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgc2NfcmV0ID0gPG9wdGltaXplZCBv
dXQ+DQogICAgICAgIF9fYXJnNCA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBfX2FyZzEgPSA8
b3B0aW1pemVkIG91dD4NCiAgICAgICAgX2E2ID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIF9h
MyA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICByZXN1bHR2YXIgPSA8b3B0aW1pemVkIG91dD4N
CiAgICAgICAgX19hcmc1ID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIF9fYXJnMiA9IDxvcHRp
bWl6ZWQgb3V0Pg0KICAgICAgICBfYTQgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgX2ExID0g
PG9wdGltaXplZCBvdXQ+DQojMSAgX19mdXRleF9hYnN0aW1lZF93YWl0X2NvbW1vbiAoZnV0ZXhf
d29yZD1mdXRleF93b3JkQGVudHJ5PTB4NTYwOTViZmIzYzM4LCBleHBlY3RlZD1leHBlY3RlZEBl
bnRyeT0wLCBjbG9ja2lkPWNsb2NraWRAZW50cnk9MCwgYWJzdGltZT1hYnN0aW1lQGVudHJ5PTB4
MCwgcHJpdmF0ZT1wcml2YXRlQGVudHJ5PTAsIGNhbmNlbD1jYW5jZWxAZW50cnk9dHJ1ZSkgYXQg
ZnV0ZXgtaW50ZXJuYWwuYzo4Nw0KICAgICAgICBlcnIgPSA8b3B0aW1pemVkIG91dD4NCiAgICAg
ICAgY2xvY2tiaXQgPSAyNTYNCiAgICAgICAgb3AgPSAzOTMNCiMyICAweDAwMDA3ZjNlZmNkY2E0
ZWYgaW4gX19HSV9fX2Z1dGV4X2Fic3RpbWVkX3dhaXRfY2FuY2VsYWJsZTY0IChmdXRleF93b3Jk
PWZ1dGV4X3dvcmRAZW50cnk9MHg1NjA5NWJmYjNjMzgsIGV4cGVjdGVkPWV4cGVjdGVkQGVudHJ5
PTAsIGNsb2NraWQ9Y2xvY2tpZEBlbnRyeT0wLCBhYnN0aW1lPWFic3RpbWVAZW50cnk9MHgwLCBw
cml2YXRlPXByaXZhdGVAZW50cnk9MCkgYXQgZnV0ZXgtaW50ZXJuYWwuYzoxMzkNCk5vIGxvY2Fs
cy4NCiMzICAweDAwMDA3ZjNlZmNkY2NlMDkgaW4gX19wdGhyZWFkX2NvbmRfd2FpdF9jb21tb24g
KGFic3RpbWU9MHgwLCBjbG9ja2lkPTAsIG11dGV4PTxvcHRpbWl6ZWQgb3V0PiwgY29uZD0weDU2
MDk1YmZiM2MxMCkgYXQgcHRocmVhZF9jb25kX3dhaXQuYzo1MDMNCiAgICAgICAgc3BpbiA9IDAN
CiAgICAgICAgYnVmZmVyID0ge19fcm91dGluZSA9IDB4N2YzZWZjZGNjYjMwIDxfX2NvbmR2YXJf
Y2xlYW51cF93YWl0aW5nPiwgX19hcmcgPSAweDdmM2VkZDFmZWI5MCwgX19jYW5jZWx0eXBlID0g
MTM1MTY4LCBfX3ByZXYgPSAweDB9DQogICAgICAgIGNidWZmZXIgPSB7d3NlcSA9IDAsIGNvbmQg
PSAweDU2MDk1YmZiM2MxMCwgbXV0ZXggPSAweDU2MDk1YmZiM2JlOCwgcHJpdmF0ZSA9IDB9DQog
ICAgICAgIGVyciA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBnID0gMA0KICAgICAgICBmbGFn
cyA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBnMV9zdGFydCA9IDxvcHRpbWl6ZWQgb3V0Pg0K
ICAgICAgICBtYXhzcGluID0gMA0KICAgICAgICBzaWduYWxzID0gPG9wdGltaXplZCBvdXQ+DQog
ICAgICAgIHJlc3VsdCA9IDANCiAgICAgICAgd3NlcSA9IDANCiAgICAgICAgc2VxID0gMA0KICAg
ICAgICBwcml2YXRlID0gMA0KICAgICAgICBtYXhzcGluID0gPG9wdGltaXplZCBvdXQ+DQogICAg
ICAgIGVyciA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICByZXN1bHQgPSA8b3B0aW1pemVkIG91
dD4NCiAgICAgICAgd3NlcSA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBnID0gPG9wdGltaXpl
ZCBvdXQ+DQogICAgICAgIHNlcSA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBmbGFncyA9IDxv
cHRpbWl6ZWQgb3V0Pg0KICAgICAgICBwcml2YXRlID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAg
IHNpZ25hbHMgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgZG9uZSA9IDxvcHRpbWl6ZWQgb3V0
Pg0KICAgICAgICBnMV9zdGFydCA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBzcGluID0gPG9w
dGltaXplZCBvdXQ+DQogICAgICAgIGJ1ZmZlciA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBj
YnVmZmVyID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIHMgPSA8b3B0aW1pemVkIG91dD4NCiM0
ICBfX19wdGhyZWFkX2NvbmRfd2FpdCAoY29uZD0weDU2MDk1YmZiM2MxMCwgbXV0ZXg9PG9wdGlt
aXplZCBvdXQ+KSBhdCBwdGhyZWFkX2NvbmRfd2FpdC5jOjYxOA0KTm8gbG9jYWxzLg0KIzUgIDB4
MDAwMDdmM2VlOGQxMjkwZCBpbiBjbmRfd2FpdCAoY29uZD08b3B0aW1pemVkIG91dD4sIG10eD08
b3B0aW1pemVkIG91dD4pIGF0IC4uL3NyYy9jMTEvaW1wbC90aHJlYWRzX3Bvc2l4LmM6MTM1DQpO
byBsb2NhbHMuDQojNiAgMHgwMDAwN2YzZWU5MzFhZjFiIGluIHV0aWxfc2VtYXBob3JlX3dhaXQg
KHNlbWE9MHg1NjA5NWJmYjNiZTgpIGF0IC4uL3NyYy91dGlsL3VfdGhyZWFkLmg6MTg0DQpObyBs
b2NhbHMuDQojNyAgdGhyZWFkX2Z1bmN0aW9uIChpbml0X2RhdGE9aW5pdF9kYXRhQGVudHJ5PTB4
NTYwOTViZmIzYjQ4KSBhdCAuLi9zcmMvZ2FsbGl1bS9kcml2ZXJzL2xsdm1waXBlL2xwX3Jhc3Qu
YzoxMTc4DQogICAgICAgIHRhc2sgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgcmFzdCA9IDB4
NTYwOTViZmIzYjMwDQogICAgICAgIGRlYnVnID0gMCAnXDAwMCcNCiAgICAgICAgdGhyZWFkX25h
bWUgPSAibGx2bXBpcGUtMFwwMDBcMzI1XDM3NFwxNzdcMDAwIg0KICAgICAgICBmcHN0YXRlID0g
PG9wdGltaXplZCBvdXQ+DQojOCAgMHgwMDAwN2YzZWU4ZDEyODNjIGluIGltcGxfdGhyZF9yb3V0
aW5lIChwPTxvcHRpbWl6ZWQgb3V0PikgYXQgLi4vc3JjL2MxMS9pbXBsL3RocmVhZHNfcG9zaXgu
Yzo2Nw0KICAgICAgICBwYWNrID0ge2Z1bmMgPSAweDdmM2VlOTMxYWU4MCA8dGhyZWFkX2Z1bmN0
aW9uPiwgYXJnID0gMHg1NjA5NWJmYjNiNDh9DQojOSAgMHgwMDAwN2YzZWZjZGNkYjk3IGluIHN0
YXJ0X3RocmVhZCAoYXJnPTxvcHRpbWl6ZWQgb3V0PikgYXQgcHRocmVhZF9jcmVhdGUuYzo0NDQN
CiAgICAgICAgcmV0ID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIHBkID0gPG9wdGltaXplZCBv
dXQ+DQogICAgICAgIG91dCA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICB1bndpbmRfYnVmID0g
e2NhbmNlbF9qbXBfYnVmID0ge3tqbXBfYnVmID0gezEzOTkwODUwNzAzMTcxMiwgLTczODkwNzcw
MDQwNDE0NzI3MzYsIDEzOTkwNzk3NDU1OTQyNCwgLTI4MCwgMjIsIDE0MDcyMzg5Mzc3Njk2MCwg
LTczODkwNzcwMDM5ODY5NDY3ODQsIC03Mzg5MDA2MDkzNDUyMDY5NjAwfSwgbWFza193YXNfc2F2
ZWQgPSAwfX0sIHByaXYgPSB7cGFkID0gezB4MCwgMHgwLCAweDAsIDB4MH0sIGRhdGEgPSB7cHJl
diA9IDB4MCwgY2xlYW51cCA9IDB4MCwgY2FuY2VsdHlwZSA9IDB9fX0NCiAgICAgICAgbm90X2Zp
cnN0X2NhbGwgPSA8b3B0aW1pemVkIG91dD4NCiMxMCAweDAwMDA3ZjNlZmNlNTM5YjAgaW4gY2xv
bmUzICgpIGF0IC4uL3N5c2RlcHMvdW5peC9zeXN2L2xpbnV4L3g4Nl82NC9jbG9uZTMuUzo4MQ0K
Tm8gbG9jYWxzLg0KDQpUaHJlYWQgNCAoVGhyZWFkIDB4N2YzZWU4YmZmNmMwIChMV1AgOTM5KSk6
DQojMCAgMHgwMDAwN2YzZWZjZTQ2NDZkIGluIF9fR0lfX19wb2xsIChmZHM9MHg3ZjNlZDgwMDI5
ZTAsIG5mZHM9MiwgdGltZW91dD0tMSkgYXQgLi4vc3lzZGVwcy91bml4L3N5c3YvbGludXgvcG9s
bC5jOjI5DQogICAgICAgIHNjX3JldCA9IC01MTYNCiAgICAgICAgc2NfY2FuY2VsX29sZHR5cGUg
PSAwDQogICAgICAgIHNjX3JldCA9IDxvcHRpbWl6ZWQgb3V0Pg0KIzEgIDB4MDAwMDdmM2VmYjk3
MjQ1OSBpbiBnX21haW5fY29udGV4dF9wb2xsIChwcmlvcml0eT08b3B0aW1pemVkIG91dD4sIG5f
ZmRzPTIsIGZkcz0weDdmM2VkODAwMjllMCwgdGltZW91dD08b3B0aW1pemVkIG91dD4sIGNvbnRl
eHQ9MHg3ZjNlZDgwMDBjMzApIGF0IC4uL2dsaWIvZ21haW4uYzo0NTQzDQogICAgICAgIHJldCA9
IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBlcnJzdiA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAg
ICBwb2xsX2Z1bmMgPSAweDdmM2VmYjkxZmRiMCA8Z19wb2xsPg0KICAgICAgICBwb2xsX2Z1bmMg
PSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgcmV0ID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAg
IGVycnN2ID0gPG9wdGltaXplZCBvdXQ+DQojMiAgZ19tYWluX2NvbnRleHRfaXRlcmF0ZS5pc3Jh
LjAgKGNvbnRleHQ9MHg3ZjNlZDgwMDBjMzAsIGJsb2NrPTEsIGRpc3BhdGNoPTEsIHNlbGY9PG9w
dGltaXplZCBvdXQ+KSBhdCAuLi9nbGliL2dtYWluLmM6NDIzMw0KICAgICAgICBtYXhfcHJpb3Jp
dHkgPSAyMTQ3NDgzNjQ3DQogICAgICAgIHRpbWVvdXQgPSAtMQ0KICAgICAgICBzb21lX3JlYWR5
ID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIG5mZHMgPSAyDQogICAgICAgIGFsbG9jYXRlZF9u
ZmRzID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIGZkcyA9IDB4N2YzZWQ4MDAyOWUwDQogICAg
ICAgIGJlZ2luX3RpbWVfbnNlYyA9IDIwMTI3OTQ1NzUzDQojMyAgMHgwMDAwN2YzZWZiOTE3Njgz
IGluIGdfbWFpbl9jb250ZXh0X2l0ZXJhdGlvbiAoY29udGV4dD0weDdmM2VkODAwMGMzMCwgbWF5
X2Jsb2NrPTEpIGF0IC4uL2dsaWIvZ21haW4uYzo0MzAzDQogICAgICAgIHJldHZhbCA9IDxvcHRp
bWl6ZWQgb3V0Pg0KIzQgIDB4MDAwMDdmM2VmZGYwNjFjOSBpbiBRRXZlbnREaXNwYXRjaGVyR2xp
Yjo6cHJvY2Vzc0V2ZW50cyAodGhpcz0weDdmM2VkODAwMGI3MCwgZmxhZ3M9Li4uKSBhdCBrZXJu
ZWwvcWV2ZW50ZGlzcGF0Y2hlcl9nbGliLmNwcDo0MjMNCiAgICAgICAgZCA9IDB4N2YzZWQ4MDAw
YjkwDQogICAgICAgIGNhbldhaXQgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgc2F2ZWRGbGFn
cyA9IHtpID0gMH0NCiAgICAgICAgcmVzdWx0ID0gPG9wdGltaXplZCBvdXQ+DQojNSAgMHgwMDAw
N2YzZWZkZWIxZmJiIGluIFFFdmVudExvb3A6OmV4ZWMgKHRoaXM9dGhpc0BlbnRyeT0weDdmM2Vl
OGJmZWJmMCwgZmxhZ3M9Li4uLCBmbGFnc0BlbnRyeT0uLi4pIGF0IC4uLy4uL2luY2x1ZGUvUXRD
b3JlLy4uLy4uL3NyYy9jb3JlbGliL2dsb2JhbC9xZmxhZ3MuaDo2OQ0KICAgICAgICBkID0gMHg3
ZjNlZDgwMDQ3OTANCiAgICAgICAgdGhyZWFkRGF0YSA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAg
ICBsb2NrZXIgPSB7dmFsID0gOTQ1OTgxOTY3NDY1MDR9DQogICAgICAgIHJlZiA9IHtkID0gMHg3
ZjNlZDgwMDQ3OTAsIGxvY2tlciA9IEAweDdmM2VlOGJmZWI2OCwgZXhjZXB0aW9uQ2F1Z2h0ID0g
dHJ1ZX0NCiAgICAgICAgYXBwID0gMHg3ZmZjZDViMzQyYzANCiM2ICAweDAwMDA3ZjNlZmRjZjQx
MTAgaW4gUVRocmVhZDo6ZXhlYyAodGhpcz08b3B0aW1pemVkIG91dD4pIGF0IC4uLy4uL2luY2x1
ZGUvUXRDb3JlLy4uLy4uL3NyYy9jb3JlbGliL2dsb2JhbC9xZmxhZ3MuaDoxMjENCiAgICAgICAg
ZCA9IDB4NTYwOTViZTlkOGIwDQogICAgICAgIGxvY2tlciA9IHt2YWwgPSA5NDU5ODE5Njc0NjUw
NH0NCiAgICAgICAgZXZlbnRMb29wID0gezxRT2JqZWN0PiA9IHtfdnB0ci5RT2JqZWN0ID0gMHg3
ZjNlZmUxNjZiNDggPHZ0YWJsZSBmb3IgUUV2ZW50TG9vcCsxNj4sIHN0YXRpYyBzdGF0aWNNZXRh
T2JqZWN0ID0ge2QgPSB7c3VwZXJkYXRhID0ge2RpcmVjdCA9IDB4MH0sIHN0cmluZ2RhdGEgPSAw
eDdmM2VmZTA2YzdhMCA8cXRfbWV0YV9zdHJpbmdkYXRhX1FPYmplY3Q+LCBkYXRhID0gMHg3ZjNl
ZmUwNmM2ODAgPHF0X21ldGFfZGF0YV9RT2JqZWN0Piwgc3RhdGljX21ldGFjYWxsID0gMHg3ZjNl
ZmRlZTUyOTAgPFFPYmplY3Q6OnF0X3N0YXRpY19tZXRhY2FsbChRT2JqZWN0KiwgUU1ldGFPYmpl
Y3Q6OkNhbGwsIGludCwgdm9pZCoqKT4sIHJlbGF0ZWRNZXRhT2JqZWN0cyA9IDB4MCwgZXh0cmFk
YXRhID0gMHgwfX0sIGRfcHRyID0ge2QgPSAweDdmM2VkODAwNDc5MH0sIHN0YXRpYyBzdGF0aWNR
dE1ldGFPYmplY3QgPSB7ZCA9IHtzdXBlcmRhdGEgPSB7ZGlyZWN0ID0gMHgwfSwgc3RyaW5nZGF0
YSA9IDB4N2YzZWZlMDZmNzQwIDxxdF9tZXRhX3N0cmluZ2RhdGFfUXQ+LCBkYXRhID0gMHg3ZjNl
ZmUwNmM4YzAgPHF0X21ldGFfZGF0YV9RdD4sIHN0YXRpY19tZXRhY2FsbCA9IDB4MCwgcmVsYXRl
ZE1ldGFPYmplY3RzID0gMHgwLCBleHRyYWRhdGEgPSAweDB9fX0sIHN0YXRpYyBzdGF0aWNNZXRh
T2JqZWN0ID0ge2QgPSB7c3VwZXJkYXRhID0ge2RpcmVjdCA9IDB4N2YzZWZlMTVlM2MwIDxRT2Jq
ZWN0OjpzdGF0aWNNZXRhT2JqZWN0Pn0sIHN0cmluZ2RhdGEgPSAweDdmM2VmZTA2NjU4MCA8cXRf
bWV0YV9zdHJpbmdkYXRhX1FFdmVudExvb3A+LCBkYXRhID0gMHg3ZjNlZmUwNjY1MjAgPHF0X21l
dGFfZGF0YV9RRXZlbnRMb29wPiwgc3RhdGljX21ldGFjYWxsID0gMHg3ZjNlZmRlYjFiYzAgPFFF
dmVudExvb3A6OnF0X3N0YXRpY19tZXRhY2FsbChRT2JqZWN0KiwgUU1ldGFPYmplY3Q6OkNhbGws
IGludCwgdm9pZCoqKT4sIHJlbGF0ZWRNZXRhT2JqZWN0cyA9IDB4MCwgZXh0cmFkYXRhID0gMHgw
fX19DQogICAgICAgIHJldHVybkNvZGUgPSA8b3B0aW1pemVkIG91dD4NCiM3ICAweDAwMDA3ZjNl
ZmRjZjU0OGQgaW4gUVRocmVhZFByaXZhdGU6OnN0YXJ0IChhcmc9MHg1NjA5NWJmMDUyYTgpIGF0
IHRocmVhZC9xdGhyZWFkX3VuaXguY3BwOjMzMA0KICAgICAgICB0aHIgPSAweDU2MDk1YmYwNTJh
OA0KICAgICAgICBkYXRhID0gMHg1NjA5NWJmMTdkODANCiAgICAgICAgX19jbGZyYW1lID0ge19f
Y2FuY2VsX3JvdXRpbmUgPSAweDdmM2VmZGNmNDhiMCA8UVRocmVhZFByaXZhdGU6OmZpbmlzaCh2
b2lkKik+LCBfX2NhbmNlbF9hcmcgPSAweDU2MDk1YmYwNTJhOCwgX19kb19pdCA9IDEsIF9fY2Fu
Y2VsX3R5cGUgPSA8b3B0aW1pemVkIG91dD59DQojOCAgMHgwMDAwN2YzZWZjZGNkYjk3IGluIHN0
YXJ0X3RocmVhZCAoYXJnPTxvcHRpbWl6ZWQgb3V0PikgYXQgcHRocmVhZF9jcmVhdGUuYzo0NDQN
CiAgICAgICAgcmV0ID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIHBkID0gPG9wdGltaXplZCBv
dXQ+DQogICAgICAgIG91dCA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICB1bndpbmRfYnVmID0g
e2NhbmNlbF9qbXBfYnVmID0ge3tqbXBfYnVmID0gezEzOTkwODUwNzAzMTcxMiwgLTczODkwNDky
NDEzNzI4NzEzOTIsIDEzOTkwODE2OTU5NDU2MCwgLTI4MCwgMiwgMTQwNzIzODkzNzc5MzYwLCAt
NzM4OTA0OTI0MTMxODM0NTQ0MCwgLTczODkwMDYwOTM0NTIwNjk2MDB9LCBtYXNrX3dhc19zYXZl
ZCA9IDB9fSwgcHJpdiA9IHtwYWQgPSB7MHgwLCAweDAsIDB4MCwgMHgwfSwgZGF0YSA9IHtwcmV2
ID0gMHgwLCBjbGVhbnVwID0gMHgwLCBjYW5jZWx0eXBlID0gMH19fQ0KICAgICAgICBub3RfZmly
c3RfY2FsbCA9IDxvcHRpbWl6ZWQgb3V0Pg0KIzkgIDB4MDAwMDdmM2VmY2U1MzliMCBpbiBjbG9u
ZTMgKCkgYXQgLi4vc3lzZGVwcy91bml4L3N5c3YvbGludXgveDg2XzY0L2Nsb25lMy5TOjgxDQpO
byBsb2NhbHMuDQoNClRocmVhZCAzIChUaHJlYWQgMHg3ZjNlZWIzZmY2YzAgKExXUCA5MDYpKToN
CiMwICAweDAwMDA3ZjNlZmNlNDY0NmQgaW4gX19HSV9fX3BvbGwgKGZkcz0weDdmM2VlNDAwNTNl
MCwgbmZkcz0zLCB0aW1lb3V0PTIzODczKSBhdCAuLi9zeXNkZXBzL3VuaXgvc3lzdi9saW51eC9w
b2xsLmM6MjkNCiAgICAgICAgc2NfcmV0ID0gLTUxNg0KICAgICAgICBzY19jYW5jZWxfb2xkdHlw
ZSA9IDANCiAgICAgICAgc2NfcmV0ID0gPG9wdGltaXplZCBvdXQ+DQojMSAgMHgwMDAwN2YzZWZi
OTcyNDU5IGluIGdfbWFpbl9jb250ZXh0X3BvbGwgKHByaW9yaXR5PTxvcHRpbWl6ZWQgb3V0Piwg
bl9mZHM9MywgZmRzPTB4N2YzZWU0MDA1M2UwLCB0aW1lb3V0PTxvcHRpbWl6ZWQgb3V0PiwgY29u
dGV4dD0weDdmM2VlNDAwMWNmMCkgYXQgLi4vZ2xpYi9nbWFpbi5jOjQ1NDMNCiAgICAgICAgcmV0
ID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIGVycnN2ID0gPG9wdGltaXplZCBvdXQ+DQogICAg
ICAgIHBvbGxfZnVuYyA9IDB4N2YzZWZiOTFmZGIwIDxnX3BvbGw+DQogICAgICAgIHBvbGxfZnVu
YyA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICByZXQgPSA8b3B0aW1pemVkIG91dD4NCiAgICAg
ICAgZXJyc3YgPSA8b3B0aW1pemVkIG91dD4NCiMyICBnX21haW5fY29udGV4dF9pdGVyYXRlLmlz
cmEuMCAoY29udGV4dD0weDdmM2VlNDAwMWNmMCwgYmxvY2s9MSwgZGlzcGF0Y2g9MSwgc2VsZj08
b3B0aW1pemVkIG91dD4pIGF0IC4uL2dsaWIvZ21haW4uYzo0MjMzDQogICAgICAgIG1heF9wcmlv
cml0eSA9IDIxNDc0ODM2NDcNCiAgICAgICAgdGltZW91dCA9IDIzODczDQogICAgICAgIHNvbWVf
cmVhZHkgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgbmZkcyA9IDMNCiAgICAgICAgYWxsb2Nh
dGVkX25mZHMgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgZmRzID0gMHg3ZjNlZTQwMDUzZTAN
CiAgICAgICAgYmVnaW5fdGltZV9uc2VjID0gMjAxMjc5NDA0MjgNCiMzICAweDAwMDA3ZjNlZmI5
MTc2ODMgaW4gZ19tYWluX2NvbnRleHRfaXRlcmF0aW9uIChjb250ZXh0PTB4N2YzZWU0MDAxY2Yw
LCBtYXlfYmxvY2s9MSkgYXQgLi4vZ2xpYi9nbWFpbi5jOjQzMDMNCiAgICAgICAgcmV0dmFsID0g
PG9wdGltaXplZCBvdXQ+DQojNCAgMHgwMDAwN2YzZWZkZjA2MWM5IGluIFFFdmVudERpc3BhdGNo
ZXJHbGliOjpwcm9jZXNzRXZlbnRzICh0aGlzPTB4N2YzZWU0MDAwYjcwLCBmbGFncz0uLi4pIGF0
IGtlcm5lbC9xZXZlbnRkaXNwYXRjaGVyX2dsaWIuY3BwOjQyMw0KICAgICAgICBkID0gMHg3ZjNl
ZTQwMDBiOTANCiAgICAgICAgY2FuV2FpdCA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBzYXZl
ZEZsYWdzID0ge2kgPSAwfQ0KICAgICAgICByZXN1bHQgPSA8b3B0aW1pemVkIG91dD4NCiM1ICAw
eDAwMDA3ZjNlZmRlYjFmYmIgaW4gUUV2ZW50TG9vcDo6ZXhlYyAodGhpcz10aGlzQGVudHJ5PTB4
N2YzZWViM2ZlYmMwLCBmbGFncz0uLi4sIGZsYWdzQGVudHJ5PS4uLikgYXQgLi4vLi4vaW5jbHVk
ZS9RdENvcmUvLi4vLi4vc3JjL2NvcmVsaWIvZ2xvYmFsL3FmbGFncy5oOjY5DQogICAgICAgIGQg
PSAweDdmM2VlNDAwMTg5MA0KICAgICAgICB0aHJlYWREYXRhID0gPG9wdGltaXplZCBvdXQ+DQog
ICAgICAgIGxvY2tlciA9IHt2YWwgPSA5NDU5ODE5NjU3MDk4NH0NCiAgICAgICAgcmVmID0ge2Qg
PSAweDdmM2VlNDAwMTg5MCwgbG9ja2VyID0gQDB4N2YzZWViM2ZlYjM4LCBleGNlcHRpb25DYXVn
aHQgPSB0cnVlfQ0KICAgICAgICBhcHAgPSAweDdmZmNkNWIzNDJjMA0KIzYgIDB4MDAwMDdmM2Vm
ZGNmNDExMCBpbiBRVGhyZWFkOjpleGVjICh0aGlzPXRoaXNAZW50cnk9MHg3ZjNlZmZlNTAwNjAg
PChhbm9ueW1vdXMgbmFtZXNwYWNlKTo6UV9RR1NfX3FfbWFuYWdlcjo6aW5uZXJGdW5jdGlvbigp
Ojpob2xkZXI+KSBhdCAuLi8uLi9pbmNsdWRlL1F0Q29yZS8uLi8uLi9zcmMvY29yZWxpYi9nbG9i
YWwvcWZsYWdzLmg6MTIxDQogICAgICAgIGQgPSAweDU2MDk1YmU3MmIxMA0KICAgICAgICBsb2Nr
ZXIgPSB7dmFsID0gOTQ1OTgxOTY1NzA5ODR9DQogICAgICAgIGV2ZW50TG9vcCA9IHs8UU9iamVj
dD4gPSB7X3ZwdHIuUU9iamVjdCA9IDB4N2YzZWZlMTY2YjQ4IDx2dGFibGUgZm9yIFFFdmVudExv
b3ArMTY+LCBzdGF0aWMgc3RhdGljTWV0YU9iamVjdCA9IHtkID0ge3N1cGVyZGF0YSA9IHtkaXJl
Y3QgPSAweDB9LCBzdHJpbmdkYXRhID0gMHg3ZjNlZmUwNmM3YTAgPHF0X21ldGFfc3RyaW5nZGF0
YV9RT2JqZWN0PiwgZGF0YSA9IDB4N2YzZWZlMDZjNjgwIDxxdF9tZXRhX2RhdGFfUU9iamVjdD4s
IHN0YXRpY19tZXRhY2FsbCA9IDB4N2YzZWZkZWU1MjkwIDxRT2JqZWN0OjpxdF9zdGF0aWNfbWV0
YWNhbGwoUU9iamVjdCosIFFNZXRhT2JqZWN0OjpDYWxsLCBpbnQsIHZvaWQqKik+LCByZWxhdGVk
TWV0YU9iamVjdHMgPSAweDAsIGV4dHJhZGF0YSA9IDB4MH19LCBkX3B0ciA9IHtkID0gMHg3ZjNl
ZTQwMDE4OTB9LCBzdGF0aWMgc3RhdGljUXRNZXRhT2JqZWN0ID0ge2QgPSB7c3VwZXJkYXRhID0g
e2RpcmVjdCA9IDB4MH0sIHN0cmluZ2RhdGEgPSAweDdmM2VmZTA2Zjc0MCA8cXRfbWV0YV9zdHJp
bmdkYXRhX1F0PiwgZGF0YSA9IDB4N2YzZWZlMDZjOGMwIDxxdF9tZXRhX2RhdGFfUXQ+LCBzdGF0
aWNfbWV0YWNhbGwgPSAweDAsIHJlbGF0ZWRNZXRhT2JqZWN0cyA9IDB4MCwgZXh0cmFkYXRhID0g
MHgwfX19LCBzdGF0aWMgc3RhdGljTWV0YU9iamVjdCA9IHtkID0ge3N1cGVyZGF0YSA9IHtkaXJl
Y3QgPSAweDdmM2VmZTE1ZTNjMCA8UU9iamVjdDo6c3RhdGljTWV0YU9iamVjdD59LCBzdHJpbmdk
YXRhID0gMHg3ZjNlZmUwNjY1ODAgPHF0X21ldGFfc3RyaW5nZGF0YV9RRXZlbnRMb29wPiwgZGF0
YSA9IDB4N2YzZWZlMDY2NTIwIDxxdF9tZXRhX2RhdGFfUUV2ZW50TG9vcD4sIHN0YXRpY19tZXRh
Y2FsbCA9IDB4N2YzZWZkZWIxYmMwIDxRRXZlbnRMb29wOjpxdF9zdGF0aWNfbWV0YWNhbGwoUU9i
amVjdCosIFFNZXRhT2JqZWN0OjpDYWxsLCBpbnQsIHZvaWQqKik+LCByZWxhdGVkTWV0YU9iamVj
dHMgPSAweDAsIGV4dHJhZGF0YSA9IDB4MH19fQ0KICAgICAgICByZXR1cm5Db2RlID0gPG9wdGlt
aXplZCBvdXQ+DQojNyAgMHgwMDAwN2YzZWZmZGQ2YjNiIGluIFFEQnVzQ29ubmVjdGlvbk1hbmFn
ZXI6OnJ1biAodGhpcz0weDdmM2VmZmU1MDA2MCA8KGFub255bW91cyBuYW1lc3BhY2UpOjpRX1FH
U19fcV9tYW5hZ2VyOjppbm5lckZ1bmN0aW9uKCk6OmhvbGRlcj4pIGF0IHFkYnVzY29ubmVjdGlv
bi5jcHA6MTc5DQogICAgICAgIGxvY2tlciA9IDxvcHRpbWl6ZWQgb3V0Pg0KIzggIDB4MDAwMDdm
M2VmZGNmNTQ4ZCBpbiBRVGhyZWFkUHJpdmF0ZTo6c3RhcnQgKGFyZz0weDdmM2VmZmU1MDA2MCA8
KGFub255bW91cyBuYW1lc3BhY2UpOjpRX1FHU19fcV9tYW5hZ2VyOjppbm5lckZ1bmN0aW9uKCk6
OmhvbGRlcj4pIGF0IHRocmVhZC9xdGhyZWFkX3VuaXguY3BwOjMzMA0KICAgICAgICB0aHIgPSAw
eDdmM2VmZmU1MDA2MCA8KGFub255bW91cyBuYW1lc3BhY2UpOjpRX1FHU19fcV9tYW5hZ2VyOjpp
bm5lckZ1bmN0aW9uKCk6OmhvbGRlcj4NCiAgICAgICAgZGF0YSA9IDB4NTYwOTViZTdjNGEwDQog
ICAgICAgIF9fY2xmcmFtZSA9IHtfX2NhbmNlbF9yb3V0aW5lID0gMHg3ZjNlZmRjZjQ4YjAgPFFU
aHJlYWRQcml2YXRlOjpmaW5pc2godm9pZCopPiwgX19jYW5jZWxfYXJnID0gMHg3ZjNlZmZlNTAw
NjAgPChhbm9ueW1vdXMgbmFtZXNwYWNlKTo6UV9RR1NfX3FfbWFuYWdlcjo6aW5uZXJGdW5jdGlv
bigpOjpob2xkZXI+LCBfX2RvX2l0ID0gMSwgX19jYW5jZWxfdHlwZSA9IDxvcHRpbWl6ZWQgb3V0
Pn0NCiM5ICAweDAwMDA3ZjNlZmNkY2RiOTcgaW4gc3RhcnRfdGhyZWFkIChhcmc9PG9wdGltaXpl
ZCBvdXQ+KSBhdCBwdGhyZWFkX2NyZWF0ZS5jOjQ0NA0KICAgICAgICByZXQgPSA8b3B0aW1pemVk
IG91dD4NCiAgICAgICAgcGQgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgb3V0ID0gPG9wdGlt
aXplZCBvdXQ+DQogICAgICAgIHVud2luZF9idWYgPSB7Y2FuY2VsX2ptcF9idWYgPSB7e2ptcF9i
dWYgPSB7MTM5OTA4NTA3MDMxNzEyLCAtNzM4OTA0NTk0MjgzNzk4ODA2NCwgMTM5OTA4MjExNTM3
NjAwLCAtMjgwLCAyLCAxNDA3MjM4OTM3Nzg2NDAsIC03Mzg5MDQ1OTQyNzgzNDYyMTEyLCAtNzM4
OTAwNjA5MzQ1MjA2OTYwMH0sIG1hc2tfd2FzX3NhdmVkID0gMH19LCBwcml2ID0ge3BhZCA9IHsw
eDAsIDB4MCwgMHgwLCAweDB9LCBkYXRhID0ge3ByZXYgPSAweDAsIGNsZWFudXAgPSAweDAsIGNh
bmNlbHR5cGUgPSAwfX19DQogICAgICAgIG5vdF9maXJzdF9jYWxsID0gPG9wdGltaXplZCBvdXQ+
DQojMTAgMHgwMDAwN2YzZWZjZTUzOWIwIGluIGNsb25lMyAoKSBhdCAuLi9zeXNkZXBzL3VuaXgv
c3lzdi9saW51eC94ODZfNjQvY2xvbmUzLlM6ODENCk5vIGxvY2Fscy4NCg0KVGhyZWFkIDIgKFRo
cmVhZCAweDdmM2VkNzdmZTZjMCAoTFdQIDk0MykpOg0KIzAgIDB4MDAwMDdmM2VmY2RjYTQ2OSBp
biBfX2Z1dGV4X2Fic3RpbWVkX3dhaXRfY29tbW9uNjQgKHByaXZhdGU9MCwgY2FuY2VsPXRydWUs
IGFic3RpbWU9MHgwLCBvcD0zOTMsIGV4cGVjdGVkPTAsIGZ1dGV4X3dvcmQ9MHg1NjA5NWJmYmI3
NjApIGF0IGZ1dGV4LWludGVybmFsLmM6NTcNCiAgICAgICAgc2NfY2FuY2VsX29sZHR5cGUgPSAw
DQogICAgICAgIF9fYXJnNiA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBfX2FyZzMgPSA8b3B0
aW1pemVkIG91dD4NCiAgICAgICAgX2E1ID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIF9hMiA9
IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBzY19yZXQgPSA8b3B0aW1pemVkIG91dD4NCiAgICAg
ICAgX19hcmc0ID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIF9fYXJnMSA9IDxvcHRpbWl6ZWQg
b3V0Pg0KICAgICAgICBfYTYgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgX2EzID0gPG9wdGlt
aXplZCBvdXQ+DQogICAgICAgIHJlc3VsdHZhciA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBf
X2FyZzUgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgX19hcmcyID0gPG9wdGltaXplZCBvdXQ+
DQogICAgICAgIF9hNCA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBfYTEgPSA8b3B0aW1pemVk
IG91dD4NCiMxICBfX2Z1dGV4X2Fic3RpbWVkX3dhaXRfY29tbW9uIChmdXRleF93b3JkPWZ1dGV4
X3dvcmRAZW50cnk9MHg1NjA5NWJmYmI3NjAsIGV4cGVjdGVkPWV4cGVjdGVkQGVudHJ5PTAsIGNs
b2NraWQ9Y2xvY2tpZEBlbnRyeT0wLCBhYnN0aW1lPWFic3RpbWVAZW50cnk9MHgwLCBwcml2YXRl
PXByaXZhdGVAZW50cnk9MCwgY2FuY2VsPWNhbmNlbEBlbnRyeT10cnVlKSBhdCBmdXRleC1pbnRl
cm5hbC5jOjg3DQogICAgICAgIGVyciA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBjbG9ja2Jp
dCA9IDI1Ng0KICAgICAgICBvcCA9IDM5Mw0KIzIgIDB4MDAwMDdmM2VmY2RjYTRlZiBpbiBfX0dJ
X19fZnV0ZXhfYWJzdGltZWRfd2FpdF9jYW5jZWxhYmxlNjQgKGZ1dGV4X3dvcmQ9ZnV0ZXhfd29y
ZEBlbnRyeT0weDU2MDk1YmZiYjc2MCwgZXhwZWN0ZWQ9ZXhwZWN0ZWRAZW50cnk9MCwgY2xvY2tp
ZD1jbG9ja2lkQGVudHJ5PTAsIGFic3RpbWU9YWJzdGltZUBlbnRyeT0weDAsIHByaXZhdGU9cHJp
dmF0ZUBlbnRyeT0wKSBhdCBmdXRleC1pbnRlcm5hbC5jOjEzOQ0KTm8gbG9jYWxzLg0KIzMgIDB4
MDAwMDdmM2VmY2RjY2UwOSBpbiBfX3B0aHJlYWRfY29uZF93YWl0X2NvbW1vbiAoYWJzdGltZT0w
eDAsIGNsb2NraWQ9MCwgbXV0ZXg9PG9wdGltaXplZCBvdXQ+LCBjb25kPTB4NTYwOTViZmJiNzM4
KSBhdCBwdGhyZWFkX2NvbmRfd2FpdC5jOjUwMw0KICAgICAgICBzcGluID0gMA0KICAgICAgICBi
dWZmZXIgPSB7X19yb3V0aW5lID0gMHg3ZjNlZmNkY2NiMzAgPF9fY29uZHZhcl9jbGVhbnVwX3dh
aXRpbmc+LCBfX2FyZyA9IDB4N2YzZWQ3N2ZkYjgwLCBfX2NhbmNlbHR5cGUgPSAwLCBfX3ByZXYg
PSAweDB9DQogICAgICAgIGNidWZmZXIgPSB7d3NlcSA9IDIsIGNvbmQgPSAweDU2MDk1YmZiYjcz
OCwgbXV0ZXggPSAweDU2MDk1YmZiYjcxMCwgcHJpdmF0ZSA9IDB9DQogICAgICAgIGVyciA9IDxv
cHRpbWl6ZWQgb3V0Pg0KICAgICAgICBnID0gMA0KICAgICAgICBmbGFncyA9IDxvcHRpbWl6ZWQg
b3V0Pg0KICAgICAgICBnMV9zdGFydCA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBtYXhzcGlu
ID0gMA0KICAgICAgICBzaWduYWxzID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIHJlc3VsdCA9
IDANCiAgICAgICAgd3NlcSA9IDINCiAgICAgICAgc2VxID0gMQ0KICAgICAgICBwcml2YXRlID0g
MA0KICAgICAgICBtYXhzcGluID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIGVyciA9IDxvcHRp
bWl6ZWQgb3V0Pg0KICAgICAgICByZXN1bHQgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgd3Nl
cSA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBnID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAg
IHNlcSA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBmbGFncyA9IDxvcHRpbWl6ZWQgb3V0Pg0K
ICAgICAgICBwcml2YXRlID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIHNpZ25hbHMgPSA8b3B0
aW1pemVkIG91dD4NCiAgICAgICAgZG9uZSA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBnMV9z
dGFydCA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBzcGluID0gPG9wdGltaXplZCBvdXQ+DQog
ICAgICAgIGJ1ZmZlciA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBjYnVmZmVyID0gPG9wdGlt
aXplZCBvdXQ+DQogICAgICAgIHMgPSA8b3B0aW1pemVkIG91dD4NCiM0ICBfX19wdGhyZWFkX2Nv
bmRfd2FpdCAoY29uZD0weDU2MDk1YmZiYjczOCwgbXV0ZXg9PG9wdGltaXplZCBvdXQ+KSBhdCBw
dGhyZWFkX2NvbmRfd2FpdC5jOjYxOA0KTm8gbG9jYWxzLg0KIzUgIDB4MDAwMDdmM2VlOGQxMjkw
ZCBpbiBjbmRfd2FpdCAoY29uZD08b3B0aW1pemVkIG91dD4sIG10eD08b3B0aW1pemVkIG91dD4p
IGF0IC4uL3NyYy9jMTEvaW1wbC90aHJlYWRzX3Bvc2l4LmM6MTM1DQpObyBsb2NhbHMuDQojNiAg
MHgwMDAwN2YzZWU5MzE3YTJiIGluIGxwX2NzX3Rwb29sX3dvcmtlciAoZGF0YT1kYXRhQGVudHJ5
PTB4NTYwOTViZmJiNzEwKSBhdCAuLi9zcmMvZ2FsbGl1bS9kcml2ZXJzL2xsdm1waXBlL2xwX2Nz
X3Rwb29sLmM6NDkNCiAgICAgICAgdGFzayA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBpdGVy
X3Blcl90aHJlYWQgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgdGhpc19pdGVyID0gPG9wdGlt
aXplZCBvdXQ+DQogICAgICAgIHBvb2wgPSAweDU2MDk1YmZiYjcxMA0KICAgICAgICBsbWVtID0g
e2xvY2FsX3NpemUgPSAwLCBsb2NhbF9tZW1fcHRyID0gMHgwfQ0KIzcgIDB4MDAwMDdmM2VlOGQx
MjgzYyBpbiBpbXBsX3RocmRfcm91dGluZSAocD08b3B0aW1pemVkIG91dD4pIGF0IC4uL3NyYy9j
MTEvaW1wbC90aHJlYWRzX3Bvc2l4LmM6NjcNCiAgICAgICAgcGFjayA9IHtmdW5jID0gMHg3ZjNl
ZTkzMTc5YzAgPGxwX2NzX3Rwb29sX3dvcmtlcj4sIGFyZyA9IDB4NTYwOTViZmJiNzEwfQ0KIzgg
IDB4MDAwMDdmM2VmY2RjZGI5NyBpbiBzdGFydF90aHJlYWQgKGFyZz08b3B0aW1pemVkIG91dD4p
IGF0IHB0aHJlYWRfY3JlYXRlLmM6NDQ0DQogICAgICAgIHJldCA9IDxvcHRpbWl6ZWQgb3V0Pg0K
ICAgICAgICBwZCA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBvdXQgPSA8b3B0aW1pemVkIG91
dD4NCiAgICAgICAgdW53aW5kX2J1ZiA9IHtjYW5jZWxfam1wX2J1ZiA9IHt7am1wX2J1ZiA9IHsx
Mzk5MDg1MDcwMzE3MTIsIC03Mzg5MDkwNDcyNTIyMDQyMDgwLCAxMzk5MDc4ODAxODM0ODgsIC0y
ODAsIDIyLCAxNDA3MjM4OTM3NzY5OTIsIC03Mzg5MDkwNDcyNDY3NTE2MTI4LCAtNzM4OTAwNjA5
MzQ1MjA2OTYwMH0sIG1hc2tfd2FzX3NhdmVkID0gMH19LCBwcml2ID0ge3BhZCA9IHsweDAsIDB4
MCwgMHgwLCAweDB9LCBkYXRhID0ge3ByZXYgPSAweDAsIGNsZWFudXAgPSAweDAsIGNhbmNlbHR5
cGUgPSAwfX19DQogICAgICAgIG5vdF9maXJzdF9jYWxsID0gPG9wdGltaXplZCBvdXQ+DQojOSAg
MHgwMDAwN2YzZWZjZTUzOWIwIGluIGNsb25lMyAoKSBhdCAuLi9zeXNkZXBzL3VuaXgvc3lzdi9s
aW51eC94ODZfNjQvY2xvbmUzLlM6ODENCk5vIGxvY2Fscy4NCg0KVGhyZWFkIDEgKFRocmVhZCAw
eDdmM2VmOGExZWU0MCAoTFdQIDkwNSkpOg0KIzAgIDB4MDAwMDAwMDAwMDAwMDAwMCBpbiA/PyAo
KQ0KTm8gc3ltYm9sIHRhYmxlIGluZm8gYXZhaWxhYmxlLg0KIzEgIDB4MDAwMDdmM2VlYWFiNDRj
MyBpbiBkcmkyX2NyZWF0ZV9kcmF3YWJsZSAoZHJpMl9kcHk9ZHJpMl9kcHlAZW50cnk9MHg1NjA5
NWJmYWU3NDAsIGNvbmZpZz1jb25maWdAZW50cnk9MHg1NjA5NWJmMGQ4NTAsIGRyaTJfc3VyZj1k
cmkyX3N1cmZAZW50cnk9MHg1NjA5NWMzYjYyMTAsIGxvYWRlclByaXZhdGU9bG9hZGVyUHJpdmF0
ZUBlbnRyeT0weDU2MDk1YzNiMzhjMCkgYXQgLi4vc3JjL2VnbC9kcml2ZXJzL2RyaTIvZWdsX2Ry
aTIuYzoxNTczDQogICAgICAgIGNyZWF0ZU5ld0RyYXdhYmxlID0gPG9wdGltaXplZCBvdXQ+DQoj
MiAgMHgwMDAwN2YzZWVhYWI5NWIxIGluIGRyaTJfZHJtX2NyZWF0ZV93aW5kb3dfc3VyZmFjZSAo
ZGlzcD0weDU2MDk1YmZhZGJmMCwgY29uZj08b3B0aW1pemVkIG91dD4sIG5hdGl2ZV9zdXJmYWNl
PTB4NTYwOTVjM2IzOGMwLCBhdHRyaWJfbGlzdD0weDApIGF0IC4uL3NyYy9lZ2wvZHJpdmVycy9k
cmkyL3BsYXRmb3JtX2RybS5jOjE4MA0KICAgICAgICBkcmkyX2RweSA9IDB4NTYwOTViZmFlNzQw
DQogICAgICAgIGRyaTJfY29uZiA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBkcmkyX3N1cmYg
PSAweDU2MDk1YzNiNjIxMA0KICAgICAgICBzdXJmYWNlID0gMHg1NjA5NWMzYjM4YzANCiAgICAg
ICAgc3VyZiA9IDB4NTYwOTVjM2IzOGMwDQogICAgICAgIGNvbmZpZyA9IDB4NTYwOTViZjBkODUw
DQojMyAgMHgwMDAwN2YzZWVhYWIxMTI5IGluIGRyaTJfY3JlYXRlX3dpbmRvd19zdXJmYWNlIChk
aXNwPTB4NTYwOTViZmFkYmYwLCBjb25mPTB4NTYwOTViZmIwMzEwLCBuYXRpdmVfd2luZG93PTB4
NTYwOTVjM2IzOGMwLCBhdHRyaWJfbGlzdD0weDApIGF0IC4uL3NyYy9lZ2wvZHJpdmVycy9kcmky
L2VnbF9kcmkyLmM6MTc0NQ0KICAgICAgICBkcmkyX2RweSA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAg
ICAgICByZXQgPSA8b3B0aW1pemVkIG91dD4NCiM0ICAweDAwMDA3ZjNlZWFhYTI2NmIgaW4gX2Vn
bENyZWF0ZVdpbmRvd1N1cmZhY2VDb21tb24gKGRpc3A9MHg1NjA5NWJmYWRiZjAsIGNvbmZpZz08
b3B0aW1pemVkIG91dD4sIG5hdGl2ZV93aW5kb3c9MHg1NjA5NWMzYjM4YzAsIGF0dHJpYl9saXN0
PTB4MCkgYXQgLi4vc3JjL2VnbC9tYWluL2VnbGFwaS5jOjEwODINCiAgICAgICAgX19ycyA9IHsw
eDB9DQogICAgICAgIF9fcnNwID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIGNvbmYgPSAweDU2
MDk1YmZiMDMxMA0KICAgICAgICBzdXJmID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIHJldCA9
IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBfX2Z1bmNfXyA9ICJfZWdsQ3JlYXRlV2luZG93U3Vy
ZmFjZUNvbW1vbiINCiM1ICAweDAwMDA3ZjNlZmY5YjI0MzAgaW4gS1dpbjo6R2JtU3VyZmFjZTo6
Y3JlYXRlU3VyZmFjZSAoYmFja2VuZD0weDU2MDk1YmY4ODJmMCwgc2l6ZT0uLi4sIGZvcm1hdD04
NzU3MTMxMTIsIGZsYWdzPTUsIGNvbmZpZz0weDU2MDk1YmZiMDMxMCkgYXQgL3Vzci9zcmMvZGVi
dWcva3dpbi01LjI2LjkwLTEuZmMzOC54ODZfNjQvc3JjL2JhY2tlbmRzL2RybS9kcm1fZ2JtX3N1
cmZhY2UuY3BwOjEzNA0KICAgICAgICBzdXJmYWNlID0gMHg1NjA5NWMzYjM4YzANCiAgICAgICAg
ZWdsU3VyZmFjZSA9IDxvcHRpbWl6ZWQgb3V0Pg0KIzYgIDB4MDAwMDdmM2VmZmFiY2NiNCBpbiBL
V2luOjpFZ2xHYm1MYXllclN1cmZhY2U6OmNyZWF0ZUdibVN1cmZhY2UgKGZvcmNlTGluZWFyPWZh
bHNlLCBtb2RpZmllcnM9Li4uLCBmb3JtYXQ9ODc1NzEzMTEyLCBzaXplPS4uLiwgdGhpcz0weDU2
MDk1YmY2ZGFhOCkgYXQgL3Vzci9zcmMvZGVidWcva3dpbi01LjI2LjkwLTEuZmMzOC54ODZfNjQv
c3JjL2JhY2tlbmRzL2RybS9kcm1fZWdsX2xheWVyX3N1cmZhY2UuY3BwOjMyNQ0KICAgICAgICBj
b25maWcgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgcmV0ID0gc3RkOjp2YXJpYW50PHN0ZDo6
c2hhcmVkX3B0cjxLV2luOjpHYm1TdXJmYWNlPiwgS1dpbjo6R2JtU3VyZmFjZTo6RXJyb3I+IFtu
byBjb250YWluZWQgdmFsdWVdDQogICAgICAgIHN1cmZhY2UgPSA8b3B0aW1pemVkIG91dD4NCiAg
ICAgICAgYWxsb3dNb2RpZmllcnMgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgZ2JtRmxhZ3Mg
PSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgbW9kaWZpZXJzRW52U2V0ID0gPG9wdGltaXplZCBv
dXQ+DQogICAgICAgIG1vZGlmaWVyc0VudiA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBhbGxv
d01vZGlmaWVycyA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBjb25maWcgPSA8b3B0aW1pemVk
IG91dD4NCiAgICAgICAgZ2JtRmxhZ3MgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgcmV0ID0g
PG9wdGltaXplZCBvdXQ+DQogICAgICAgIHN1cmZhY2UgPSA8b3B0aW1pemVkIG91dD4NCiAgICAg
ICAgcmV0ID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIHN1cmZhY2UgPSA8b3B0aW1pemVkIG91
dD4NCiM3ICBLV2luOjpFZ2xHYm1MYXllclN1cmZhY2U6OmNyZWF0ZVN1cmZhY2UgKGltcG9ydE1v
ZGU9S1dpbjo6RWdsR2JtTGF5ZXJTdXJmYWNlOjpNdWx0aUdwdUltcG9ydE1vZGU6OkRtYWJ1Ziwg
bW9kaWZpZXJzPS4uLiwgZm9ybWF0PTg3NTcxMzExMiwgc2l6ZT0uLi4sIHRoaXM9MHg1NjA5NWJm
NmRhYTgpIGF0IC91c3Ivc3JjL2RlYnVnL2t3aW4tNS4yNi45MC0xLmZjMzgueDg2XzY0L3NyYy9i
YWNrZW5kcy9kcm0vZHJtX2VnbF9sYXllcl9zdXJmYWNlLmNwcDoyODENCiAgICAgICAgcmV0ID0g
e2dibVN1cmZhY2UgPSBzdGQ6OnNoYXJlZF9wdHI8S1dpbjo6R2JtU3VyZmFjZT4gKGVtcHR5KSA9
IHtnZXQoKSA9IDB4MH0sIGltcG9ydFN3YXBjaGFpbiA9IHN0ZDo6c2hhcmVkX3B0cjxLV2luOjpE
dW1iU3dhcGNoYWluPiAoZW1wdHkpID0ge2dldCgpID0gMHgwfSwgaW1wb3J0TW9kZSA9IEtXaW46
OkVnbEdibUxheWVyU3VyZmFjZTo6TXVsdGlHcHVJbXBvcnRNb2RlOjpEbWFidWYsIGN1cnJlbnRC
dWZmZXIgPSBzdGQ6OnNoYXJlZF9wdHI8S1dpbjo6R2JtQnVmZmVyPiAoZW1wdHkpID0ge2dldCgp
ID0gMHgwfSwgY3VycmVudEZyYW1lYnVmZmVyID0gc3RkOjpzaGFyZWRfcHRyPEtXaW46OkRybUZy
YW1lYnVmZmVyPiAoZW1wdHkpID0ge2dldCgpID0gMHgwfSwgZm9yY2VMaW5lYXIgPSBmYWxzZX0N
CiAgICAgICAgcmV0ID0gPG9wdGltaXplZCBvdXQ+DQojOCAgS1dpbjo6RWdsR2JtTGF5ZXJTdXJm
YWNlOjpjcmVhdGVTdXJmYWNlKFFTaXplIGNvbnN0JiwgUU1hcDx1bnNpZ25lZCBpbnQsIFFWZWN0
b3I8dW5zaWduZWQgbG9uZz4gPiBjb25zdCYpIGNvbnN0Ojp7bGFtYmRhKFFWZWN0b3I8S1dpbjo6
R2JtRm9ybWF0PiBjb25zdCYsIEtXaW46OkVnbEdibUxheWVyU3VyZmFjZTo6TXVsdGlHcHVJbXBv
cnRNb2RlKSMxfTo6b3BlcmF0b3IoKShRVmVjdG9yPEtXaW46OkdibUZvcm1hdD4gY29uc3QmLCBL
V2luOjpFZ2xHYm1MYXllclN1cmZhY2U6Ok11bHRpR3B1SW1wb3J0TW9kZSkgY29uc3QgW2Nsb25l
IC5pc3JhLjBdIChfX2Nsb3N1cmU9X19jbG9zdXJlQGVudHJ5PTB4N2ZmY2Q1YjMzMTgwLCBpbXBv
cnRNb2RlPWltcG9ydE1vZGVAZW50cnk9S1dpbjo6RWdsR2JtTGF5ZXJTdXJmYWNlOjpNdWx0aUdw
dUltcG9ydE1vZGU6OkRtYWJ1ZiwgZ2JtRm9ybWF0cz0uLi4pIGF0IC91c3Ivc3JjL2RlYnVnL2t3
aW4tNS4yNi45MC0xLmZjMzgueDg2XzY0L3NyYy9iYWNrZW5kcy9kcm0vZHJtX2VnbF9sYXllcl9z
dXJmYWNlLmNwcDoyNDgNCiAgICAgICAgc3VyZmFjZSA9IHN0ZDo6b3B0aW9uYWw8S1dpbjo6RWds
R2JtTGF5ZXJTdXJmYWNlOjpTdXJmYWNlPiA9IHtbY29udGFpbmVkIHZhbHVlXSA9IHtnYm1TdXJm
YWNlID0gc3RkOjpzaGFyZWRfcHRyPEtXaW46OkdibVN1cmZhY2U+ICh1c2UgY291bnQgNTUxNzk3
MDY0LCB3ZWFrIGNvdW50IC0xMDUyMTIwMzY4KSA9IHtnZXQoKSA9IDB4N2YzZWZkZjg4MTYwIDxR
QXJyYXlEYXRhOjpzaGFyZWRfbnVsbD59LCBpbXBvcnRTd2FwY2hhaW4gPSBzdGQ6OnNoYXJlZF9w
dHI8S1dpbjo6RHVtYlN3YXBjaGFpbj4gKHVzZSBjb3VudCAtMzQwNDU2MDAsIHdlYWsgY291bnQg
MzI1NzMpID0ge2dldCgpID0gMHg3ZmZjZDViMzMwZTB9LCBpbXBvcnRNb2RlID0gKEtXaW46OkVn
bEdibUxheWVyU3VyZmFjZTo6TXVsdGlHcHVJbXBvcnRNb2RlOjpEdW1iQnVmZmVyIHwgdW5rbm93
bjogMHhmZmZmZmZmZSksIGN1cnJlbnRCdWZmZXIgPSBzdGQ6OnNoYXJlZF9wdHI8S1dpbjo6R2Jt
QnVmZmVyPiAodXNlIGNvdW50IDE1NDczOTUzMTIsIHdlYWsgY291bnQgMjIwMjQpID0ge2dldCgp
ID0gMHg3ZmZjZDViMzMxNzB9LCBjdXJyZW50RnJhbWVidWZmZXIgPSBzdGQ6OnNoYXJlZF9wdHI8
S1dpbjo6RHJtRnJhbWVidWZmZXI+IChleHBpcmVkLCB3ZWFrIGNvdW50IDApID0ge2dldCgpID0g
MHg3ZjNlZmY5YTMwMDggPFFWZWN0b3I8S1dpbjo6R2JtRm9ybWF0Pjo6cmVhbGxvYyhpbnQsIFFG
bGFnczxRQXJyYXlEYXRhOjpBbGxvY2F0aW9uT3B0aW9uPikrNDA+fSwgZm9yY2VMaW5lYXIgPSA4
fX0NCiAgICAgICAgZm9ybWF0ID0gQDB4NTYwOTVjM2I2MTA4OiB7ZHJtRm9ybWF0ID0gODc1NzEz
MTEyLCBicHAgPSAyNCwgYWxwaGFTaXplID0gMH0NCiAgICAgICAgX19mb3JfcmFuZ2UgPSA8b3B0
aW1pemVkIG91dD4NCiAgICAgICAgX19mb3JfYmVnaW4gPSAweDU2MDk1YzNiNjEwOA0KICAgICAg
ICBfX2Zvcl9lbmQgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgZm9ybWF0cyA9IEAweDdmZmNk
NWIzMzJhODoge2QgPSAweDU2MDk1YmU2ZGUwMH0NCiAgICAgICAgc2l6ZSA9IEAweDdmZmNkNWIz
MzJiMDoge3dkID0gMTI4MCwgaHQgPSA4MDB9DQogICAgICAgIHRoaXMgPSAweDU2MDk1YmY2ZGFh
OA0KIzkgIDB4MDAwMDdmM2VmZjlhNzI0YiBpbiBLV2luOjpFZ2xHYm1MYXllclN1cmZhY2U6OmNy
ZWF0ZVN1cmZhY2UgKGZvcm1hdHM9Li4uLCBzaXplPS4uLiwgdGhpcz0weDU2MDk1YmY2ZGFhOCkg
YXQgL3Vzci9zcmMvZGVidWcva3dpbi01LjI2LjkwLTEuZmMzOC54ODZfNjQvc3JjL2JhY2tlbmRz
L2RybS9kcm1fZWdsX2xheWVyX3N1cmZhY2UuY3BwOjI1Ng0KICAgICAgICBzdXJmYWNlID0gc3Rk
OjpvcHRpb25hbDxLV2luOjpFZ2xHYm1MYXllclN1cmZhY2U6OlN1cmZhY2U+ID0ge1tjb250YWlu
ZWQgdmFsdWVdID0ge2dibVN1cmZhY2UgPSA8ZXJyb3IgcmVhZGluZyB2YXJpYWJsZTogQ2Fubm90
IGFjY2VzcyBtZW1vcnkgYXQgYWRkcmVzcyAweDdmMDEwMDAwMDAwOD4sIGltcG9ydFN3YXBjaGFp
biA9IDxlcnJvciByZWFkaW5nIHZhcmlhYmxlOiBDYW5ub3QgYWNjZXNzIG1lbW9yeSBhdCBhZGRy
ZXNzIDB4MTA+LCBpbXBvcnRNb2RlID0gKHVua25vd246IDB4ZDViMzM0MDApLCBjdXJyZW50QnVm
ZmVyID0gc3RkOjpzaGFyZWRfcHRyPEtXaW46OkdibUJ1ZmZlcj4gKHVzZSBjb3VudCAtNjU4MDEz
NSwgd2VhayBjb3VudCAzMjU3MykgPSB7Z2V0KCkgPSAweDdmZmNkNWIzMzNmOH0sIGN1cnJlbnRG
cmFtZWJ1ZmZlciA9IHN0ZDo6c2hhcmVkX3B0cjxLV2luOjpEcm1GcmFtZWJ1ZmZlcj4gKHVzZSBj
b3VudCAxNTQ3MzgzMDcyLCB3ZWFrIGNvdW50IDIyMDI0KSA9IHtnZXQoKSA9IDB4N2YzZWZkZDMy
MjQ2IDxRQ3J5cHRvZ3JhcGhpY0hhc2g6OnJlc3VsdCgpIGNvbnN0KzM1NDI+fSwgZm9yY2VMaW5l
YXIgPSB0cnVlfX0NCiAgICAgICAgcHJlZmVycmVkRm9ybWF0cyA9IHtkID0gMHg1NjA5NWMzYjYw
ZjB9DQogICAgICAgIGZhbGxiYWNrRm9ybWF0cyA9IHtkID0gMHg3ZjNlZmRmODgxNjAgPFFBcnJh
eURhdGE6OnNoYXJlZF9udWxsPn0NCiAgICAgICAgc29ydCA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAg
ICAgICB0ZXN0Rm9ybWF0cyA9IHtfX3RoaXMgPSAweDU2MDk1YmY2ZGFhOCwgX19zaXplID0gQDB4
N2ZmY2Q1YjMzMmIwLCBfX2Zvcm1hdHMgPSBAMHg3ZmZjZDViMzMyYTh9DQogICAgICAgIHByZWZl
cnJlZEZvcm1hdHMgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgZmFsbGJhY2tGb3JtYXRzID0g
PG9wdGltaXplZCBvdXQ+DQogICAgICAgIHNvcnQgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAg
dGVzdEZvcm1hdHMgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgaXQgPSA8b3B0aW1pemVkIG91
dD4NCiAgICAgICAgZm9ybWF0ID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIHN1cmZhY2UgPSA8
b3B0aW1pemVkIG91dD4NCiAgICAgICAgc3VyZmFjZSA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAg
ICBzdXJmYWNlID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIHN1cmZhY2UgPSA8b3B0aW1pemVk
IG91dD4NCiMxMCBLV2luOjpFZ2xHYm1MYXllclN1cmZhY2U6OmNoZWNrU3VyZmFjZSAodGhpcz10
aGlzQGVudHJ5PTB4NTYwOTViZjZkYWE4LCBzaXplPS4uLiwgZm9ybWF0cz0uLi4pIGF0IC91c3Iv
c3JjL2RlYnVnL2t3aW4tNS4yNi45MC0xLmZjMzgueDg2XzY0L3NyYy9iYWNrZW5kcy9kcm0vZHJt
X2VnbF9sYXllcl9zdXJmYWNlLmNwcDoyMDQNCiAgICAgICAgbmV3U3VyZmFjZSA9IHN0ZDo6b3B0
aW9uYWw8S1dpbjo6RWdsR2JtTGF5ZXJTdXJmYWNlOjpTdXJmYWNlPiA9IHtbY29udGFpbmVkIHZh
bHVlXSA9IHtnYm1TdXJmYWNlID0gPGVycm9yIHJlYWRpbmcgdmFyaWFibGU6IENhbm5vdCBhY2Nl
c3MgbWVtb3J5IGF0IGFkZHJlc3MgMHhiMDNiM2U1N2Q5MDQyN2ZmPiwgaW1wb3J0U3dhcGNoYWlu
ID0gPGVycm9yIHJlYWRpbmcgdmFyaWFibGU6IENhbm5vdCBhY2Nlc3MgbWVtb3J5IGF0IGFkZHJl
c3MgMHhlNjY3MzIxNGJiYjcyODVkPiwgaW1wb3J0TW9kZSA9ICh1bmtub3duOiAweDU2Njk3Mjc0
KSwgY3VycmVudEJ1ZmZlciA9IDxlcnJvciByZWFkaW5nIHZhcmlhYmxlOiBDYW5ub3QgYWNjZXNz
IG1lbW9yeSBhdCBhZGRyZXNzIDB4NmMyZDMxMmQ3Mjc0NzU2OT4sIGN1cnJlbnRGcmFtZWJ1ZmZl
ciA9IDxlcnJvciByZWFkaW5nIHZhcmlhYmxlOiBDYW5ub3QgYWNjZXNzIG1lbW9yeSBhdCBhZGRy
ZXNzIDB4M2E4MDAwMDA2OTc0NmY3YT4sIGZvcmNlTGluZWFyID0gZmFsc2V9fQ0KIzExIDB4MDAw
MDdmM2VmZjlhOGVjMSBpbiBLV2luOjpFZ2xHYm1MYXllclN1cmZhY2U6OnJlbmRlclRlc3RCdWZm
ZXIgKGZvcm1hdHM9Li4uLCBidWZmZXJTaXplPS4uLiwgdGhpcz0weDU2MDk1YmY2ZGFhOCkgYXQg
L3Vzci9zcmMvZGVidWcva3dpbi01LjI2LjkwLTEuZmMzOC54ODZfNjQvc3JjL2JhY2tlbmRzL2Ry
bS9kcm1fZWdsX2xheWVyX3N1cmZhY2UuY3BwOjE4OA0KTm8gbG9jYWxzLg0KIzEyIEtXaW46OkVn
bEdibUxheWVyOjpjaGVja1Rlc3RCdWZmZXIgKHRoaXM9MHg1NjA5NWJmNmRhNzApIGF0IC91c3Iv
c3JjL2RlYnVnL2t3aW4tNS4yNi45MC0xLmZjMzgueDg2XzY0L3NyYy9iYWNrZW5kcy9kcm0vZHJt
X2VnbF9sYXllci5jcHA6NjgNCk5vIGxvY2Fscy4NCiMxMyAweDAwMDA3ZjNlZmY5YjU3NWEgaW4g
S1dpbjo6RHJtUGlwZWxpbmU6OmxlZ2FjeU1vZGVzZXQgKHRoaXM9dGhpc0BlbnRyeT0weDU2MDk1
YzNiMjNhMCkgYXQgL3Vzci9pbmNsdWRlL2MrKy8xMy9iaXRzL3NoYXJlZF9wdHJfYmFzZS5oOjE2
NjUNCiAgICAgICAgY29ubklkID0gMzQNCiAgICAgICAgYnVmZmVyID0gc3RkOjpzaGFyZWRfcHRy
PEtXaW46OkRybUZyYW1lYnVmZmVyPiAodXNlIGNvdW50IDE1NDc0MzcxODQsIHdlYWsgY291bnQg
MjIwMjQpID0ge2dldCgpID0gMHg1NjA5NWMzYzA1NDB9DQojMTQgMHgwMDAwN2YzZWZmOWI5M2Ix
IGluIEtXaW46OkRybVBpcGVsaW5lOjphcHBseVBlbmRpbmdDaGFuZ2VzTGVnYWN5ICh0aGlzPTB4
NTYwOTVjM2IyM2EwKSBhdCAvdXNyL3NyYy9kZWJ1Zy9rd2luLTUuMjYuOTAtMS5mYzM4Lng4Nl82
NC9zcmMvYmFja2VuZHMvZHJtL2RybV9waXBlbGluZV9sZWdhY3kuY3BwOjExNg0KICAgICAgICBl
cnIgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgdnJyID0gPG9wdGltaXplZCBvdXQ+DQogICAg
ICAgIGNvbnRlbnRUeXBlID0gPG9wdGltaXplZCBvdXQ+DQojMTUgMHgwMDAwN2YzZWZmOWI5ODU5
IGluIEtXaW46OkRybVBpcGVsaW5lOjpjb21taXRQaXBlbGluZXNMZWdhY3kgKG1vZGU9S1dpbjo6
RHJtUGlwZWxpbmU6OkNvbW1pdE1vZGU6OlRlc3RBbGxvd01vZGVzZXQsIHBpcGVsaW5lcz0uLi4p
IGF0IC91c3Ivc3JjL2RlYnVnL2t3aW4tNS4yNi45MC0xLmZjMzgueDg2XzY0L3NyYy9iYWNrZW5k
cy9kcm0vZHJtX3BpcGVsaW5lX2xlZ2FjeS5jcHA6NzANCiAgICAgICAgcGlwZWxpbmUgPSBAMHg1
NjA5NWMzYzA1Mzg6IDB4NTYwOTVjM2IyM2EwDQogICAgICAgIF9fZm9yX3JhbmdlID0gQDB4NTYw
OTViZTgxMDkwOiB7ZCA9IDB4NTYwOTVjM2MwNTIwfQ0KICAgICAgICBfX2Zvcl9iZWdpbiA9IDB4
NTYwOTVjM2MwNTM4DQogICAgICAgIF9fZm9yX2VuZCA9IDB4NTYwOTVjM2MwNTQwDQogICAgICAg
IGVyciA9IEtXaW46OkRybVBpcGVsaW5lOjpFcnJvcjo6Tm9uZQ0KICAgICAgICBlcnIgPSA8b3B0
aW1pemVkIG91dD4NCiAgICAgICAgcGlwZWxpbmUgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAg
X19mb3JfcmFuZ2UgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgX19mb3JfYmVnaW4gPSA8b3B0
aW1pemVkIG91dD4NCiAgICAgICAgX19mb3JfZW5kID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAg
IHBpcGVsaW5lID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIF9fZm9yX3JhbmdlID0gPG9wdGlt
aXplZCBvdXQ+DQogICAgICAgIF9fZm9yX2JlZ2luID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAg
IF9fZm9yX2VuZCA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBwaXBlbGluZSA9IDxvcHRpbWl6
ZWQgb3V0Pg0KICAgICAgICBfX2Zvcl9yYW5nZSA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBf
X2Zvcl9iZWdpbiA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBfX2Zvcl9lbmQgPSA8b3B0aW1p
emVkIG91dD4NCiMxNiBLV2luOjpEcm1QaXBlbGluZTo6Y29tbWl0UGlwZWxpbmVzIChwaXBlbGlu
ZXM9Li4uLCBtb2RlPUtXaW46OkRybVBpcGVsaW5lOjpDb21taXRNb2RlOjpUZXN0QWxsb3dNb2Rl
c2V0LCB1bnVzZWRPYmplY3RzPS4uLikgYXQgL3Vzci9zcmMvZGVidWcva3dpbi01LjI2LjkwLTEu
ZmMzOC54ODZfNjQvc3JjL2JhY2tlbmRzL2RybS9kcm1fcGlwZWxpbmUuY3BwOjkzDQpObyBsb2Nh
bHMuDQojMTcgMHgwMDAwN2YzZWZmOWFkOWRlIGluIEtXaW46OkRybUdwdTo6dGVzdFBpcGVsaW5l
cyAodGhpcz0weDU2MDk1YmU4MGZmMCkgYXQgL3Vzci9zcmMvZGVidWcva3dpbi01LjI2LjkwLTEu
ZmMzOC54ODZfNjQvc3JjL2JhY2tlbmRzL2RybS9kcm1fZ3B1LmNwcDo0NjMNCiAgICAgICAgaW5h
Y3RpdmVQaXBlbGluZXMgPSB7ZCA9IDB4N2YzZWZkZjg4MTYwIDxRQXJyYXlEYXRhOjpzaGFyZWRf
bnVsbD59DQogICAgICAgIHRlc3QgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgaW5hY3RpdmVQ
aXBlbGluZXMgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgdGVzdCA9IDxvcHRpbWl6ZWQgb3V0
Pg0KICAgICAgICBwaXBlbGluZSA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBfX2Zvcl9yYW5n
ZSA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBfX2Zvcl9iZWdpbiA9IDxvcHRpbWl6ZWQgb3V0
Pg0KICAgICAgICBfX2Zvcl9lbmQgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgcGlwZWxpbmUg
PSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgX19mb3JfcmFuZ2UgPSA8b3B0aW1pemVkIG91dD4N
CiAgICAgICAgX19mb3JfYmVnaW4gPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgX19mb3JfZW5k
ID0gPG9wdGltaXplZCBvdXQ+DQojMTggS1dpbjo6RHJtR3B1OjpjaGVja0NydGNBc3NpZ25tZW50
ICh0aGlzPXRoaXNAZW50cnk9MHg1NjA5NWJlODBmZjAsIGNvbm5lY3RvcnM9Li4uLCBjcnRjcz0u
Li4pIGF0IC91c3Ivc3JjL2RlYnVnL2t3aW4tNS4yNi45MC0xLmZjMzgueDg2XzY0L3NyYy9iYWNr
ZW5kcy9kcm0vZHJtX2dwdS5jcHA6MzY4DQogICAgICAgIGNvbm5lY3RvciA9IDxvcHRpbWl6ZWQg
b3V0Pg0KICAgICAgICBwaXBlbGluZSA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBjdXJyZW50
Q3J0YyA9IDxvcHRpbWl6ZWQgb3V0Pg0KIzE5IDB4MDAwMDdmM2VmZjlhZGYwOCBpbiBLV2luOjpE
cm1HcHU6OmNoZWNrQ3J0Y0Fzc2lnbm1lbnQgKHRoaXM9dGhpc0BlbnRyeT0weDU2MDk1YmU4MGZm
MCwgY29ubmVjdG9ycz0uLi4sIGNydGNzPS4uLikgYXQgL3Vzci9zcmMvZGVidWcva3dpbi01LjI2
LjkwLTEuZmMzOC54ODZfNjQvc3JjL2JhY2tlbmRzL2RybS9kcm1fZ3B1LmNwcDo0MDMNCiAgICAg
ICAgZXJyID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIGNydGNzTGVmdCA9IHtkID0gMHg1NjA5
NWMzYjYwYTB9DQogICAgICAgIGNydGMgPSBAMHg1NjA5NWMzYjUzYTg6IDB4NTYwOTViZWEyMzcw
DQogICAgICAgIF9fZm9yX3JhbmdlID0gQDB4N2ZmY2Q1YjMzNWQwOiB7ZCA9IDB4NTYwOTVjM2I1
MzkwfQ0KICAgICAgICBfX2Zvcl9iZWdpbiA9IDB4NTYwOTVjM2I1M2E4DQogICAgICAgIF9fZm9y
X2VuZCA9IDB4NTYwOTVjM2I1M2IwDQogICAgICAgIGNvbm5lY3RvciA9IDxvcHRpbWl6ZWQgb3V0
Pg0KICAgICAgICBwaXBlbGluZSA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBjdXJyZW50Q3J0
YyA9IDB4MA0KIzIwIDB4MDAwMDdmM2VmZjliMDUzMSBpbiBLV2luOjpEcm1HcHU6OnRlc3RQZW5k
aW5nQ29uZmlndXJhdGlvbiAodGhpcz0weDU2MDk1YmU4MGZmMCkgYXQgL3Vzci9zcmMvZGVidWcv
a3dpbi01LjI2LjkwLTEuZmMzOC54ODZfNjQvc3JjL2JhY2tlbmRzL2RybS9kcm1fZ3B1LmNwcDo0
NDANCiAgICAgICAgY29ubmVjdG9ycyA9IHtkID0gMHg1NjA5NWMzYjM5ODB9DQogICAgICAgIGNy
dGNzID0ge2QgPSAweDU2MDk1YzNiNTM5MH0NCiAgICAgICAgZXJyID0gPG9wdGltaXplZCBvdXQ+
DQojMjEgMHgwMDAwN2YzZWZmOTljYzVjIGluIEtXaW46OkRybUdwdTo6dXBkYXRlT3V0cHV0cyAo
dGhpcz08b3B0aW1pemVkIG91dD4pIGF0IC91c3Ivc3JjL2RlYnVnL2t3aW4tNS4yNi45MC0xLmZj
MzgueDg2XzY0L3NyYy9iYWNrZW5kcy9kcm0vZHJtX2dwdS5jcHA6MzA1DQogICAgICAgIHJlc291
cmNlcyA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBhZGRlZE91dHB1dHMgPSB7ZCA9IDB4NTYw
OTVjM2MwNDMwfQ0KICAgICAgICBlcnIgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgbGVzc2Vl
cyA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBleGlzdGluZyA9IHtkID0gMHg1NjA5NWMzYzA1
NzB9DQogICAgICAgIHJlc291cmNlcyA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBsZXNzZWVz
ID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIGV4aXN0aW5nID0gPG9wdGltaXplZCBvdXQ+DQog
ICAgICAgIGFkZGVkT3V0cHV0cyA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBlcnIgPSA8b3B0
aW1pemVkIG91dD4NCiAgICAgICAgcXRfY2F0ZWdvcnlfZW5hYmxlZCA9IDxvcHRpbWl6ZWQgb3V0
Pg0KICAgICAgICBvdXRwdXQgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgX19mb3JfcmFuZ2Ug
PSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgX19mb3JfYmVnaW4gPSA8b3B0aW1pemVkIG91dD4N
CiAgICAgICAgX19mb3JfZW5kID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIGxlYXNlQWN0aXZl
ID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIGkgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAg
aSA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBjdXJyZW50Q29ubmVjdG9yID0gPG9wdGltaXpl
ZCBvdXQ+DQogICAgICAgIGl0ID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIGNvbm4gPSA8b3B0
aW1pemVkIG91dD4NCiAgICAgICAgaXQgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgY29ubiA9
IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBvdXRwdXQgPSA8b3B0aW1pemVkIG91dD4NCiAgICAg
ICAgc3RpbGxFeGlzdHMgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgcGlwZWxpbmUgPSA8b3B0
aW1pemVkIG91dD4NCiAgICAgICAgb3V0cHV0ID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIHF0
X2NhdGVnb3J5X2VuYWJsZWQgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgY3J0YyA9IDxvcHRp
bWl6ZWQgb3V0Pg0KICAgICAgICBfX2Zvcl9yYW5nZSA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAg
ICBfX2Zvcl9iZWdpbiA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBfX2Zvcl9lbmQgPSA8b3B0
aW1pemVkIG91dD4NCiAgICAgICAgcGxhbmUgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgX19m
b3JfcmFuZ2UgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgX19mb3JfYmVnaW4gPSA8b3B0aW1p
emVkIG91dD4NCiAgICAgICAgX19mb3JfZW5kID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIHBp
cGVsaW5lID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIF9fZm9yX3JhbmdlID0gPG9wdGltaXpl
ZCBvdXQ+DQogICAgICAgIF9fZm9yX2JlZ2luID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIF9f
Zm9yX2VuZCA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBwaXBlbGluZSA9IDxvcHRpbWl6ZWQg
b3V0Pg0KICAgICAgICBfX2Zvcl9yYW5nZSA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBfX2Zv
cl9iZWdpbiA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBfX2Zvcl9lbmQgPSA8b3B0aW1pemVk
IG91dD4NCiAgICAgICAgb3V0cHV0ID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIF9fZm9yX3Jh
bmdlID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIF9fZm9yX2JlZ2luID0gPG9wdGltaXplZCBv
dXQ+DQogICAgICAgIF9fZm9yX2VuZCA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBpdCA9IDxv
cHRpbWl6ZWQgb3V0Pg0KICAgICAgICBxdF9jYXRlZ29yeV9lbmFibGVkID0gPG9wdGltaXplZCBv
dXQ+DQogICAgICAgIHBpcGVsaW5lID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIF9fZm9yX3Jh
bmdlID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIF9fZm9yX2JlZ2luID0gPG9wdGltaXplZCBv
dXQ+DQogICAgICAgIF9fZm9yX2VuZCA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBvdXRwdXQg
PSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgX19mb3JfcmFuZ2UgPSA8b3B0aW1pemVkIG91dD4N
CiAgICAgICAgX19mb3JfYmVnaW4gPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgX19mb3JfZW5k
ID0gPG9wdGltaXplZCBvdXQ+DQojMjIgS1dpbjo6RHJtQmFja2VuZDo6dXBkYXRlT3V0cHV0cyAo
dGhpcz0weDU2MDk1YmU4YjU3MCkgYXQgL3Vzci9zcmMvZGVidWcva3dpbi01LjI2LjkwLTEuZmMz
OC54ODZfNjQvc3JjL2JhY2tlbmRzL2RybS9kcm1fYmFja2VuZC5jcHA6MzI1DQogICAgICAgIGl0
ID0gc3RkOjp1bmlxdWVfcHRyPEtXaW46OkRybUdwdT4gPSB7Z2V0KCkgPSAweDU2MDk1YmU4MGZm
MH0NCiMyMyAweDAwMDA3ZjNlZmRlZTdlZjEgaW4gUXRQcml2YXRlOjpRU2xvdE9iamVjdEJhc2U6
OmNhbGwgKGE9MHg3ZmZjZDViMzNiYjAsIHI9PG9wdGltaXplZCBvdXQ+LCB0aGlzPTB4NTYwOTVi
ZmE4M2QwKSBhdCAuLi8uLi9pbmNsdWRlL1F0Q29yZS8uLi8uLi9zcmMvY29yZWxpYi9rZXJuZWwv
cW9iamVjdGRlZnNfaW1wbC5oOjM5OA0KTm8gbG9jYWxzLg0KIzI0IGRvQWN0aXZhdGU8ZmFsc2U+
IChzZW5kZXI9MHg1NjA5NWJmODViODAsIHNpZ25hbF9pbmRleD02LCBhcmd2PTB4N2ZmY2Q1YjMz
YmIwKSBhdCBrZXJuZWwvcW9iamVjdC5jcHA6MzkyMw0KICAgICAgICBvYmogPSA8b3B0aW1pemVk
IG91dD4NCiAgICAgICAgcmVjZWl2ZXIgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgdGQgPSA8
b3B0aW1pemVkIG91dD4NCiAgICAgICAgcmVjZWl2ZXJJblNhbWVUaHJlYWQgPSA8b3B0aW1pemVk
IG91dD4NCiAgICAgICAgc2VuZGVyRGF0YSA9IHtwcmV2aW91cyA9IDB4MCwgcmVjZWl2ZXIgPSAw
eDU2MDk1YmU4YjU3MCwgc2VuZGVyID0gMHg1NjA5NWJmODViODAsIHNpZ25hbCA9IDZ9DQogICAg
ICAgIGMgPSAweDU2MDk1YmZhODYzMA0KICAgICAgICBjb25uZWN0aW9ucyA9IHtkID0gMHg1NjA5
NWJmYTZhOTB9DQogICAgICAgIGxpc3QgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgaW5TZW5k
ZXJUaHJlYWQgPSB0cnVlDQogICAgICAgIGhpZ2hlc3RDb25uZWN0aW9uSWQgPSA0DQogICAgICAg
IHNpZ25hbFZlY3RvciA9IDB4NTYwOTViZmE3NzYwDQogICAgICAgIGN1cnJlbnRUaHJlYWRJZCA9
IDB4N2YzZWY4YTFlZTQwDQogICAgICAgIHNwID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIHNp
Z25hbF9zcHlfc2V0ID0gMHgwDQogICAgICAgIGVtcHR5X2FyZ3YgPSB7MHgwfQ0KICAgICAgICBz
ZW5kZXJEZWxldGVkID0gZmFsc2UNCiMyNSAweDAwMDA3ZjNlZmY3ZjQ1OGYgaW4gS1dpbjo6Q29t
cG9zaXRvcjo6c2V0dXBTdGFydCAodGhpcz0weDU2MDk1YmY4NWI4MCkgYXQgL3Vzci9zcmMvZGVi
dWcva3dpbi01LjI2LjkwLTEuZmMzOC54ODZfNjQvc3JjL2NvbXBvc2l0ZS5jcHA6MzM1DQogICAg
ICAgIGF2YWlsYWJsZUNvbXBvc2l0b3JzID0ge2QgPSAweDU2MDk1YmU3ZDQ1MH0NCiAgICAgICAg
Y2FuZGlkYXRlQ29tcG9zaXRvcnMgPSB7ZCA9IDB4NTYwOTViZmE0M2EwfQ0KIzI2IDB4MDAwMDdm
M2VmZjdmNGNmNSBpbiBLV2luOjpDb21wb3NpdG9yOjpzZXR1cFN0YXJ0ICh0aGlzPXRoaXNAZW50
cnk9MHg1NjA5NWJmODViODApIGF0IC91c3Ivc3JjL2RlYnVnL2t3aW4tNS4yNi45MC0xLmZjMzgu
eDg2XzY0L3NyYy9jb21wb3NpdGUuY3BwOjMzOA0KICAgICAgICBhdmFpbGFibGVDb21wb3NpdG9y
cyA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBjYW5kaWRhdGVDb21wb3NpdG9ycyA9IDxvcHRp
bWl6ZWQgb3V0Pg0KICAgICAgICB1c2VyQ29uZmlnSXQgPSA8b3B0aW1pemVkIG91dD4NCiAgICAg
ICAgcXRfY2F0ZWdvcnlfZW5hYmxlZCA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICB0eXBlID0g
PG9wdGltaXplZCBvdXQ+DQogICAgICAgIF9fZm9yX3JhbmdlID0gPG9wdGltaXplZCBvdXQ+DQog
ICAgICAgIF9fZm9yX2JlZ2luID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIF9fZm9yX2VuZCA9
IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBzdG9wID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAg
IHF0X2NhdGVnb3J5X2VuYWJsZWQgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgcXRfY2F0ZWdv
cnlfZW5hYmxlZCA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBxdF9jYXRlZ29yeV9lbmFibGVk
ID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIGNvbiA9IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAg
ICBxdF9jYXRlZ29yeV9lbmFibGVkID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIHF0X2NhdGVn
b3J5X2VuYWJsZWQgPSA8b3B0aW1pemVkIG91dD4NCiMyNyAweDAwMDA3ZjNlZmY3ZjYwMDggaW4g
S1dpbjo6V2F5bGFuZENvbXBvc2l0b3I6OnN0YXJ0ICh0aGlzPTB4NTYwOTViZjg1YjgwKSBhdCAv
dXNyL3NyYy9kZWJ1Zy9rd2luLTUuMjYuOTAtMS5mYzM4Lng4Nl82NC9zcmMvY29tcG9zaXRlLmNw
cDo3OTkNCk5vIGxvY2Fscy4NCiMyOCAweDAwMDA3ZjNlZmRlZGVmZGIgaW4gUU9iamVjdDo6ZXZl
bnQgKHRoaXM9MHg1NjA5NWJmODViODAsIGU9MHg1NjA5NWJmYTYwNzApIGF0IGtlcm5lbC9xb2Jq
ZWN0LmNwcDoxMzQ3DQogICAgICAgIG1jZSA9IDB4NTYwOTViZmE2MDcwDQogICAgICAgIHNlbmRl
ciA9IHtwcmV2aW91cyA9IDB4MCwgcmVjZWl2ZXIgPSAweDU2MDk1YmY4NWI4MCwgc2VuZGVyID0g
MHgwLCBzaWduYWwgPSAtMX0NCiMyOSAweDAwMDA3ZjNlZmQ1YWVjZTUgaW4gUUFwcGxpY2F0aW9u
UHJpdmF0ZTo6bm90aWZ5X2hlbHBlciAodGhpcz08b3B0aW1pemVkIG91dD4sIHJlY2VpdmVyPTB4
NTYwOTViZjg1YjgwLCBlPTB4NTYwOTViZmE2MDcwKSBhdCBrZXJuZWwvcWFwcGxpY2F0aW9uLmNw
cDozNjQwDQogICAgICAgIGNvbnN1bWVkID0gZmFsc2UNCiAgICAgICAgZmlsdGVyZWQgPSBmYWxz
ZQ0KIzMwIDB4MDAwMDdmM2VmZGViMzVlOCBpbiBRQ29yZUFwcGxpY2F0aW9uOjpub3RpZnlJbnRl
cm5hbDIgKHJlY2VpdmVyPTB4NTYwOTViZjg1YjgwLCBldmVudD0weDU2MDk1YmZhNjA3MCkgYXQg
a2VybmVsL3Fjb3JlYXBwbGljYXRpb24uY3BwOjEwNjQNCiAgICAgICAgc2VsZlJlcXVpcmVkID0g
dHJ1ZQ0KICAgICAgICByZXN1bHQgPSBmYWxzZQ0KICAgICAgICBjYmRhdGEgPSB7MHg1NjA5NWJm
ODViODAsIDB4NTYwOTViZmE2MDcwLCAweDdmZmNkNWIzM2RjZn0NCiAgICAgICAgZCA9IDxvcHRp
bWl6ZWQgb3V0Pg0KICAgICAgICB0aHJlYWREYXRhID0gMHg1NjA5NWJlNzBiYzANCiAgICAgICAg
c2NvcGVMZXZlbENvdW50ZXIgPSB7dGhyZWFkRGF0YSA9IDB4NTYwOTViZTcwYmMwfQ0KIzMxIDB4
MDAwMDdmM2VmZGViNmE5NSBpbiBRQ29yZUFwcGxpY2F0aW9uUHJpdmF0ZTo6c2VuZFBvc3RlZEV2
ZW50cyAocmVjZWl2ZXI9cmVjZWl2ZXJAZW50cnk9MHgwLCBldmVudF90eXBlPWV2ZW50X3R5cGVA
ZW50cnk9MCwgZGF0YT1kYXRhQGVudHJ5PTB4NTYwOTViZTcwYmMwKSBhdCBrZXJuZWwvcWNvcmVh
cHBsaWNhdGlvbi5jcHA6MTgyMQ0KICAgICAgICBlID0gMHg1NjA5NWJmYTYwNzANCiAgICAgICAg
cGUgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgciA9IDB4NTYwOTViZjg1YjgwDQogICAgICAg
IHJlbG9ja2VyID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIGV2ZW50X2RlbGV0ZXIgPSB7ZCA9
IDB4NTYwOTViZmE2MDcwfQ0KICAgICAgICBsb2NrZXIgPSB7X01fZGV2aWNlID0gMHg1NjA5NWJl
NzBiZjAsIF9NX293bnMgPSBmYWxzZX0NCiAgICAgICAgc3RhcnRPZmZzZXQgPSAwDQogICAgICAg
IGkgPSBAMHg1NjA5NWJlNzBiZTQ6IDcNCiAgICAgICAgY2xlYW51cCA9IHtyZWNlaXZlciA9IDB4
MCwgZXZlbnRfdHlwZSA9IDAsIGRhdGEgPSAweDU2MDk1YmU3MGJjMCwgZXhjZXB0aW9uQ2F1Z2h0
ID0gdHJ1ZX0NCiMzMiAweDAwMDA3ZjNlZmRmMDMzMTEgaW4gUUV2ZW50RGlzcGF0Y2hlclVOSVg6
OnByb2Nlc3NFdmVudHMgKHRoaXM9MHg1NjA5NWJlNzM5NDAsIGZsYWdzPS4uLikgYXQga2VybmVs
L3FldmVudGRpc3BhdGNoZXJfdW5peC5jcHA6NDY4DQogICAgICAgIGQgPSAweDU2MDk1YmU3NThj
MA0KICAgICAgICB0aHJlYWREYXRhID0gMHg1NjA5NWJlNzBiYzANCiAgICAgICAgaW5jbHVkZV90
aW1lcnMgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgaW5jbHVkZV9ub3RpZmllcnMgPSA8b3B0
aW1pemVkIG91dD4NCiAgICAgICAgd2FpdF9mb3JfZXZlbnRzID0gPG9wdGltaXplZCBvdXQ+DQog
ICAgICAgIGNhbldhaXQgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgdG0gPSA8b3B0aW1pemVk
IG91dD4NCiAgICAgICAgd2FpdF90bSA9IHt0dl9zZWMgPSAxNDA3MjM4OTM3ODA1MTIsIHR2X25z
ZWMgPSA1fQ0KICAgICAgICBuZXZlbnRzID0gPG9wdGltaXplZCBvdXQ+DQojMzMgMHgwMDAwNTYw
OTVhZTE2MDQxIGluIFFVbml4RXZlbnREaXNwYXRjaGVyUVBBOjpwcm9jZXNzRXZlbnRzKFFGbGFn
czxRRXZlbnRMb29wOjpQcm9jZXNzRXZlbnRzRmxhZz4pICgpDQpObyBzeW1ib2wgdGFibGUgaW5m
byBhdmFpbGFibGUuDQojMzQgMHgwMDAwN2YzZWZkZWIxZmJiIGluIFFFdmVudExvb3A6OmV4ZWMg
KHRoaXM9dGhpc0BlbnRyeT0weDdmZmNkNWIzNDAyMCwgZmxhZ3M9Li4uLCBmbGFnc0BlbnRyeT0u
Li4pIGF0IC4uLy4uL2luY2x1ZGUvUXRDb3JlLy4uLy4uL3NyYy9jb3JlbGliL2dsb2JhbC9xZmxh
Z3MuaDo2OQ0KICAgICAgICBkID0gMHg1NjA5NWJmYTYwMDANCiAgICAgICAgdGhyZWFkRGF0YSA9
IDxvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBsb2NrZXIgPSB7dmFsID0gOTQ1OTgxOTYzOTcyNDB9
DQogICAgICAgIHJlZiA9IHtkID0gMHg1NjA5NWJmYTYwMDAsIGxvY2tlciA9IEAweDdmZmNkNWIz
M2ZhOCwgZXhjZXB0aW9uQ2F1Z2h0ID0gdHJ1ZX0NCiAgICAgICAgYXBwID0gMHg3ZmZjZDViMzQy
YzANCiMzNSAweDAwMDA3ZjNlZmRlYmEyM2IgaW4gUUNvcmVBcHBsaWNhdGlvbjo6ZXhlYyAoKSBh
dCAuLi8uLi9pbmNsdWRlL1F0Q29yZS8uLi8uLi9zcmMvY29yZWxpYi9nbG9iYWwvcWZsYWdzLmg6
MTIxDQogICAgICAgIHRocmVhZERhdGEgPSAweDU2MDk1YmU3MGJjMA0KICAgICAgICBldmVudExv
b3AgPSB7PFFPYmplY3Q+ID0ge192cHRyLlFPYmplY3QgPSAweDdmM2VmZTE2NmI0OCA8dnRhYmxl
IGZvciBRRXZlbnRMb29wKzE2Piwgc3RhdGljIHN0YXRpY01ldGFPYmplY3QgPSB7ZCA9IHtzdXBl
cmRhdGEgPSB7ZGlyZWN0ID0gMHgwfSwgc3RyaW5nZGF0YSA9IDB4N2YzZWZlMDZjN2EwIDxxdF9t
ZXRhX3N0cmluZ2RhdGFfUU9iamVjdD4sIGRhdGEgPSAweDdmM2VmZTA2YzY4MCA8cXRfbWV0YV9k
YXRhX1FPYmplY3Q+LCBzdGF0aWNfbWV0YWNhbGwgPSAweDdmM2VmZGVlNTI5MCA8UU9iamVjdDo6
cXRfc3RhdGljX21ldGFjYWxsKFFPYmplY3QqLCBRTWV0YU9iamVjdDo6Q2FsbCwgaW50LCB2b2lk
KiopPiwgcmVsYXRlZE1ldGFPYmplY3RzID0gMHgwLCBleHRyYWRhdGEgPSAweDB9fSwgZF9wdHIg
PSB7ZCA9IDB4NTYwOTViZmE2MDAwfSwgc3RhdGljIHN0YXRpY1F0TWV0YU9iamVjdCA9IHtkID0g
e3N1cGVyZGF0YSA9IHtkaXJlY3QgPSAweDB9LCBzdHJpbmdkYXRhID0gMHg3ZjNlZmUwNmY3NDAg
PHF0X21ldGFfc3RyaW5nZGF0YV9RdD4sIGRhdGEgPSAweDdmM2VmZTA2YzhjMCA8cXRfbWV0YV9k
YXRhX1F0Piwgc3RhdGljX21ldGFjYWxsID0gMHgwLCByZWxhdGVkTWV0YU9iamVjdHMgPSAweDAs
IGV4dHJhZGF0YSA9IDB4MH19fSwgc3RhdGljIHN0YXRpY01ldGFPYmplY3QgPSB7ZCA9IHtzdXBl
cmRhdGEgPSB7ZGlyZWN0ID0gMHg3ZjNlZmUxNWUzYzAgPFFPYmplY3Q6OnN0YXRpY01ldGFPYmpl
Y3Q+fSwgc3RyaW5nZGF0YSA9IDB4N2YzZWZlMDY2NTgwIDxxdF9tZXRhX3N0cmluZ2RhdGFfUUV2
ZW50TG9vcD4sIGRhdGEgPSAweDdmM2VmZTA2NjUyMCA8cXRfbWV0YV9kYXRhX1FFdmVudExvb3A+
LCBzdGF0aWNfbWV0YWNhbGwgPSAweDdmM2VmZGViMWJjMCA8UUV2ZW50TG9vcDo6cXRfc3RhdGlj
X21ldGFjYWxsKFFPYmplY3QqLCBRTWV0YU9iamVjdDo6Q2FsbCwgaW50LCB2b2lkKiopPiwgcmVs
YXRlZE1ldGFPYmplY3RzID0gMHgwLCBleHRyYWRhdGEgPSAweDB9fX0NCiAgICAgICAgcmV0dXJu
Q29kZSA9IDxvcHRpbWl6ZWQgb3V0Pg0KIzM2IDB4MDAwMDdmM2VmZTM1ZjViZCBpbiBRR3VpQXBw
bGljYXRpb246OmV4ZWMgKCkgYXQga2VybmVsL3FndWlhcHBsaWNhdGlvbi5jcHA6MTg2Mw0KTm8g
bG9jYWxzLg0KIzM3IDB4MDAwMDdmM2VmZDVhZWM1OSBpbiBRQXBwbGljYXRpb246OmV4ZWMgKCkg
YXQga2VybmVsL3FhcHBsaWNhdGlvbi5jcHA6MjgzMg0KTm8gbG9jYWxzLg0KIzM4IDB4MDAwMDU2
MDk1YWQzMmMyNCBpbiBtYWluIChhcmdjPTxvcHRpbWl6ZWQgb3V0PiwgYXJndj08b3B0aW1pemVk
IG91dD4pIGF0IC91c3Ivc3JjL2RlYnVnL2t3aW4tNS4yNi45MC0xLmZjMzgueDg2XzY0L3NyYy9t
YWluX3dheWxhbmQuY3BwOjYyOA0KICAgICAgICBlbnZpcm9ubWVudCA9IHtkID0ge2QgPSAweDU2
MDk1YmU2ZmIxMH19DQogICAgICAgIGEgPSB7PEtXaW46OkFwcGxpY2F0aW9uPiA9IHs8UUFwcGxp
Y2F0aW9uPiA9IHs8UUd1aUFwcGxpY2F0aW9uPiA9IHs8UUNvcmVBcHBsaWNhdGlvbj4gPSB7PFFP
YmplY3Q+ID0ge192cHRyLlFPYmplY3QgPSAweDU2MDk1YWU2OTdhMCA8dnRhYmxlIGZvciBLV2lu
OjpBcHBsaWNhdGlvbldheWxhbmQrMTY+LCBzdGF0aWMgc3RhdGljTWV0YU9iamVjdCA9IHtkID0g
e3N1cGVyZGF0YSA9IHtkaXJlY3QgPSAweDB9LCBzdHJpbmdkYXRhID0gMHg3ZjNlZmUwNmM3YTAg
PHF0X21ldGFfc3RyaW5nZGF0YV9RT2JqZWN0PiwgZGF0YSA9IDB4N2YzZWZlMDZjNjgwIDxxdF9t
ZXRhX2RhdGFfUU9iamVjdD4sIHN0YXRpY19tZXRhY2FsbCA9IDB4N2YzZWZkZWU1MjkwIDxRT2Jq
ZWN0OjpxdF9zdGF0aWNfbWV0YWNhbGwoUU9iamVjdCosIFFNZXRhT2JqZWN0OjpDYWxsLCBpbnQs
IHZvaWQqKik+LCByZWxhdGVkTWV0YU9iamVjdHMgPSAweDAsIGV4dHJhZGF0YSA9IDB4MH19LCBk
X3B0ciA9IHtkID0gMHg1NjA5NWJlNzBhNTB9LCBzdGF0aWMgc3RhdGljUXRNZXRhT2JqZWN0ID0g
e2QgPSB7c3VwZXJkYXRhID0ge2RpcmVjdCA9IDB4MH0sIHN0cmluZ2RhdGEgPSAweDdmM2VmZTA2
Zjc0MCA8cXRfbWV0YV9zdHJpbmdkYXRhX1F0PiwgZGF0YSA9IDB4N2YzZWZlMDZjOGMwIDxxdF9t
ZXRhX2RhdGFfUXQ+LCBzdGF0aWNfbWV0YWNhbGwgPSAweDAsIHJlbGF0ZWRNZXRhT2JqZWN0cyA9
IDB4MCwgZXh0cmFkYXRhID0gMHgwfX19LCBzdGF0aWMgc3RhdGljTWV0YU9iamVjdCA9IHtkID0g
e3N1cGVyZGF0YSA9IHtkaXJlY3QgPSAweDdmM2VmZTE1ZTNjMCA8UU9iamVjdDo6c3RhdGljTWV0
YU9iamVjdD59LCBzdHJpbmdkYXRhID0gMHg3ZjNlZmUwNjZjNjAgPHF0X21ldGFfc3RyaW5nZGF0
YV9RQ29yZUFwcGxpY2F0aW9uPiwgZGF0YSA9IDB4N2YzZWZlMDY2YjQwIDxxdF9tZXRhX2RhdGFf
UUNvcmVBcHBsaWNhdGlvbj4sIHN0YXRpY19tZXRhY2FsbCA9IDB4N2YzZWZkZWI0ZWYwIDxRQ29y
ZUFwcGxpY2F0aW9uOjpxdF9zdGF0aWNfbWV0YWNhbGwoUU9iamVjdCosIFFNZXRhT2JqZWN0OjpD
YWxsLCBpbnQsIHZvaWQqKik+LCByZWxhdGVkTWV0YU9iamVjdHMgPSAweDAsIGV4dHJhZGF0YSA9
IDB4MH19LCBzdGF0aWMgc2VsZiA9IDB4N2ZmY2Q1YjM0MmMwfSwgc3RhdGljIHN0YXRpY01ldGFP
YmplY3QgPSB7ZCA9IHtzdXBlcmRhdGEgPSB7ZGlyZWN0ID0gMHg3ZjNlZmUxNjZjZTAgPFFDb3Jl
QXBwbGljYXRpb246OnN0YXRpY01ldGFPYmplY3Q+fSwgc3RyaW5nZGF0YSA9IDB4N2YzZWZlNzMx
NWMwIDxxdF9tZXRhX3N0cmluZ2RhdGFfUUd1aUFwcGxpY2F0aW9uPiwgZGF0YSA9IDB4N2YzZWZl
NzMxMzQwIDxxdF9tZXRhX2RhdGFfUUd1aUFwcGxpY2F0aW9uPiwgc3RhdGljX21ldGFjYWxsID0g
MHg3ZjNlZmUzNjA2NzAgPFFHdWlBcHBsaWNhdGlvbjo6cXRfc3RhdGljX21ldGFjYWxsKFFPYmpl
Y3QqLCBRTWV0YU9iamVjdDo6Q2FsbCwgaW50LCB2b2lkKiopPiwgcmVsYXRlZE1ldGFPYmplY3Rz
ID0gMHgwLCBleHRyYWRhdGEgPSAweDB9fX0sIHN0YXRpYyBzdGF0aWNNZXRhT2JqZWN0ID0ge2Qg
PSB7c3VwZXJkYXRhID0ge2RpcmVjdCA9IDB4N2YzZWZlODE2YjIwIDxRR3VpQXBwbGljYXRpb246
OnN0YXRpY01ldGFPYmplY3Q+fSwgc3RyaW5nZGF0YSA9IDB4N2YzZWZkOTg2OGMwIDxxdF9tZXRh
X3N0cmluZ2RhdGFfUUFwcGxpY2F0aW9uPiwgZGF0YSA9IDB4N2YzZWZkOTg2NzQwIDxxdF9tZXRh
X2RhdGFfUUFwcGxpY2F0aW9uPiwgc3RhdGljX21ldGFjYWxsID0gMHg3ZjNlZmQ1YjJhMjAgPFFB
cHBsaWNhdGlvbjo6cXRfc3RhdGljX21ldGFjYWxsKFFPYmplY3QqLCBRTWV0YU9iamVjdDo6Q2Fs
bCwgaW50LCB2b2lkKiopPiwgcmVsYXRlZE1ldGFPYmplY3RzID0gMHgwLCBleHRyYWRhdGEgPSAw
eDB9fX0sIHN0YXRpYyBzdGF0aWNNZXRhT2JqZWN0ID0ge2QgPSB7c3VwZXJkYXRhID0ge2RpcmVj
dCA9IDB4N2YzZWZkYWNlNGEwIDxRQXBwbGljYXRpb246OnN0YXRpY01ldGFPYmplY3Q+fSwgc3Ry
aW5nZGF0YSA9IDB4N2YzZWZmYWRiNTgwIDxfWkwzNnF0X21ldGFfc3RyaW5nZGF0YV9LV2luX19B
cHBsaWNhdGlvbi5sdG9fcHJpdi4wPiwgZGF0YSA9IDB4N2YzZWZmYWQ1NGMwIDxfWkwzMHF0X21l
dGFfZGF0YV9LV2luX19BcHBsaWNhdGlvbi5sdG9fcHJpdi4wPiwgc3RhdGljX21ldGFjYWxsID0g
MHg3ZjNlZmY3YjhmNDAgPEtXaW46OkFwcGxpY2F0aW9uOjpxdF9zdGF0aWNfbWV0YWNhbGwoUU9i
amVjdCosIFFNZXRhT2JqZWN0OjpDYWxsLCBpbnQsIHZvaWQqKik+LCByZWxhdGVkTWV0YU9iamVj
dHMgPSAweDAsIGV4dHJhZGF0YSA9IDB4MH19LCBtX2V2ZW50RmlsdGVycyA9IHs8UUxpc3RTcGVj
aWFsTWV0aG9kczxRUG9pbnRlcjxLV2luOjpYMTFFdmVudEZpbHRlckNvbnRhaW5lcj4gPj4gPSB7
PE5vIGRhdGEgZmllbGRzPn0sIHtwID0ge3N0YXRpYyBzaGFyZWRfbnVsbCA9IHtyZWYgPSB7YXRv
bWljID0ge19xX3ZhbHVlID0gc3RkOjphdG9taWM8aW50PiA9IHsgLTEgfX19LCBhbGxvYyA9IDAs
IGJlZ2luID0gMCwgZW5kID0gMCwgYXJyYXkgPSB7MHgwfX0sIGQgPSAweDdmM2VmZGY4OGM0MCA8
UUxpc3REYXRhOjpzaGFyZWRfbnVsbD59LCBkID0gMHg3ZjNlZmRmODhjNDAgPFFMaXN0RGF0YTo6
c2hhcmVkX251bGw+fX0sIG1fZ2VuZXJpY0V2ZW50RmlsdGVycyA9IHs8UUxpc3RTcGVjaWFsTWV0
aG9kczxRUG9pbnRlcjxLV2luOjpYMTFFdmVudEZpbHRlckNvbnRhaW5lcj4gPj4gPSB7PE5vIGRh
dGEgZmllbGRzPn0sIHtwID0ge3N0YXRpYyBzaGFyZWRfbnVsbCA9IHtyZWYgPSB7YXRvbWljID0g
e19xX3ZhbHVlID0gc3RkOjphdG9taWM8aW50PiA9IHsgLTEgfX19LCBhbGxvYyA9IDAsIGJlZ2lu
ID0gMCwgZW5kID0gMCwgYXJyYXkgPSB7MHgwfX0sIGQgPSAweDdmM2VmZGY4OGM0MCA8UUxpc3RE
YXRhOjpzaGFyZWRfbnVsbD59LCBkID0gMHg3ZjNlZmRmODhjNDAgPFFMaXN0RGF0YTo6c2hhcmVk
X251bGw+fX0sIG1fZXZlbnRGaWx0ZXIgPSBzdGQ6OnVuaXF1ZV9wdHI8S1dpbjo6WGNiRXZlbnRG
aWx0ZXI+ID0ge2dldCgpID0gMHg1NjA5NWJlN2U4ZTB9LCBtX2ZvbGxvd0xvY2FsZTEgPSB0cnVl
LCBtX2NvbmZpZ0xvY2sgPSBmYWxzZSwgbV9jb25maWcgPSB7ZCA9IDB4NTYwOTViZTdhMTAwfSwg
bV9reGtiQ29uZmlnID0ge2QgPSAweDU2MDk1YmU4YWQ3MH0sIG1fb3BlcmF0aW9uTW9kZSA9IEtX
aW46OkFwcGxpY2F0aW9uOjpPcGVyYXRpb25Nb2RlV2F5bGFuZE9ubHksIG1feDExVGltZSA9IDAs
IG1fcm9vdFdpbmRvdyA9IDAsIG1fY29ubmVjdGlvbiA9IDB4MCwgbV91c2VLQWN0aXZpdGllcyA9
IHRydWUsIG1fc2Vzc2lvbiA9IHN0ZDo6dW5pcXVlX3B0cjxLV2luOjpTZXNzaW9uPiA9IHtnZXQo
KSA9IDB4NTYwOTViZTg3NTIwfSwgbV9vdXRwdXRCYWNrZW5kID0gc3RkOjp1bmlxdWVfcHRyPEtX
aW46Ok91dHB1dEJhY2tlbmQ+ID0ge2dldCgpID0gMHg1NjA5NWJlOGI1NzB9LCBtX3Rlcm1pbmF0
aW5nID0gZmFsc2UsIG1feHdheWxhbmRTY2FsZSA9IDEsIG1fcHJvY2Vzc0Vudmlyb25tZW50ID0g
e2QgPSB7ZCA9IDB4NTYwOTViZTZmYjEwfX0sIG1fcGx1Z2luTWFuYWdlciA9IHN0ZDo6dW5pcXVl
X3B0cjxLV2luOjpQbHVnaW5NYW5hZ2VyPiA9IHtnZXQoKSA9IDB4MH0sIG1faW5wdXRNZXRob2Qg
PSBzdGQ6OnVuaXF1ZV9wdHI8S1dpbjo6SW5wdXRNZXRob2Q+ID0ge2dldCgpID0gMHg1NjA5NWJm
ODVkYTB9LCBtX2NvbG9yTWFuYWdlciA9IHN0ZDo6dW5pcXVlX3B0cjxLV2luOjpDb2xvck1hbmFn
ZXI+ID0ge2dldCgpID0gMHgwfSwgbV90YWJsZXRNb2RlTWFuYWdlciA9IHN0ZDo6dW5pcXVlX3B0
cjxLV2luOjpUYWJsZXRNb2RlTWFuYWdlcj4gPSB7Z2V0KCkgPSAweDU2MDk1YmZhYWYxMH0sIG1f
c2NyZWVuTG9ja2VyV2F0Y2hlciA9IHN0ZDo6dW5pcXVlX3B0cjxLV2luOjpTY3JlZW5Mb2NrZXJX
YXRjaGVyPiA9IHtnZXQoKSA9IDB4NTYwOTViZThiNDAwfX0sIHN0YXRpYyBzdGF0aWNNZXRhT2Jq
ZWN0ID0ge2QgPSB7c3VwZXJkYXRhID0ge2RpcmVjdCA9IDB4N2YzZWZmYmVlNjYwIDxLV2luOjpB
cHBsaWNhdGlvbjo6c3RhdGljTWV0YU9iamVjdD59LCBzdHJpbmdkYXRhID0gMHg1NjA5NWFlMWYw
YTAgPHF0X21ldGFfc3RyaW5nZGF0YV9LV2luX19BcHBsaWNhdGlvbldheWxhbmQ+LCBkYXRhID0g
MHg1NjA5NWFlMWQ3NDAgPHF0X21ldGFfZGF0YV9LV2luX19BcHBsaWNhdGlvbldheWxhbmQ+LCBz
dGF0aWNfbWV0YWNhbGwgPSAweDU2MDk1YWQzNDgwMCA8S1dpbjo6QXBwbGljYXRpb25XYXlsYW5k
OjpxdF9zdGF0aWNfbWV0YWNhbGwoUU9iamVjdCosIFFNZXRhT2JqZWN0OjpDYWxsLCBpbnQsIHZv
aWQqKik+LCByZWxhdGVkTWV0YU9iamVjdHMgPSAweDAsIGV4dHJhZGF0YSA9IDB4MH19LCBtX3N0
YXJ0WFdheWxhbmQgPSBmYWxzZSwgbV9hcHBsaWNhdGlvbnNUb1N0YXJ0ID0gezxRTGlzdDxRU3Ry
aW5nPj4gPSB7PFFMaXN0U3BlY2lhbE1ldGhvZHM8UVN0cmluZz4+ID0gezxObyBkYXRhIGZpZWxk
cz59LCB7cCA9IHtkID0gMHg3ZjNlZmRmODhjNDAgPFFMaXN0RGF0YTo6c2hhcmVkX251bGw+fSwg
ZCA9IDB4N2YzZWZkZjg4YzQwIDxRTGlzdERhdGE6OnNoYXJlZF9udWxsPn19LCA8Tm8gZGF0YSBm
aWVsZHM+fSwgbV9pbnB1dE1ldGhvZFNlcnZlclRvU3RhcnQgPSB7ZCA9IDB4NTYwOTViZTdkYzYw
fSwgbV9zZXNzaW9uQXJndW1lbnQgPSB7ZCA9IDB4N2YzZWZkZjg4MTYwIDxRQXJyYXlEYXRhOjpz
aGFyZWRfbnVsbD59LCBtX3h3YXlsYW5kID0gc3RkOjp1bmlxdWVfcHRyPEtXaW46Olh3bDo6WHdh
eWxhbmQ+ID0ge2dldCgpID0gMHgwfSwgbV94d2F5bGFuZExpc3RlbkZkcyA9IHtkID0gMHg3ZjNl
ZmRmODgxNjAgPFFBcnJheURhdGE6OnNoYXJlZF9udWxsPn0sIG1feHdheWxhbmREaXNwbGF5ID0g
e2QgPSAweDdmM2VmZGY4ODE2MCA8UUFycmF5RGF0YTo6c2hhcmVkX251bGw+fSwgbV94d2F5bGFu
ZFhhdXRob3JpdHkgPSB7ZCA9IDB4N2YzZWZkZjg4MTYwIDxRQXJyYXlEYXRhOjpzaGFyZWRfbnVs
bD59LCBtX3NldHRpbmdzV2F0Y2hlciA9IHt2YWx1ZSA9IDB4MCwgZCA9IDB4MH19DQogICAgICAg
IHh3YXlsYW5kT3B0aW9uID0ge2QgPSB7ZCA9IDB4NTYwOTViZTcyMjkwfX0NCiAgICAgICAgd2F5
bGFuZFNvY2tldE9wdGlvbiA9IHtkID0ge2QgPSAweDU2MDk1YmU4MWIyMH19DQogICAgICAgIHgx
MURpc3BsYXlPcHRpb24gPSB7ZCA9IHtkID0gMHg1NjA5NWJlODFiNjB9fQ0KICAgICAgICB3YXls
YW5kRGlzcGxheU9wdGlvbiA9IHtkID0ge2QgPSAweDU2MDk1YmU4MWJhMH19DQogICAgICAgIHZp
cnR1YWxGYk9wdGlvbiA9IHtkID0ge2QgPSAweDU2MDk1YmU4MWJlMH19DQogICAgICAgIHdpZHRo
T3B0aW9uID0ge2QgPSB7ZCA9IDB4NTYwOTViZTgxYzUwfX0NCiAgICAgICAgaGVpZ2h0T3B0aW9u
ID0ge2QgPSB7ZCA9IDB4NTYwOTViZTgxY2YwfX0NCiAgICAgICAgc2NhbGVPcHRpb24gPSB7ZCA9
IHtkID0gMHg1NjA5NWJlODFkYjB9fQ0KICAgICAgICBvdXRwdXRDb3VudE9wdGlvbiA9IHtkID0g
e2QgPSAweDU2MDk1YmU4MWZhMH19DQogICAgICAgIHdheWxhbmRTb2NrZXRGZE9wdGlvbiA9IHtk
ID0ge2QgPSAweDU2MDk1YmU4MjA2MH19DQogICAgICAgIHh3YXlsYW5kTGlzdGVuRmRPcHRpb24g
PSB7ZCA9IHtkID0gMHg1NjA5NWJlODIwZDB9fQ0KICAgICAgICB4d2F5bGFuZERpc3BsYXlPcHRp
b24gPSB7ZCA9IHtkID0gMHg1NjA5NWJlODIxNDB9fQ0KICAgICAgICB4d2F5bGFuZFhBdXRob3Jp
dHlPcHRpb24gPSB7ZCA9IHtkID0gMHg1NjA5NWJlODIxODB9fQ0KICAgICAgICByZXBsYWNlT3B0
aW9uID0ge2QgPSB7ZCA9IDB4NTYwOTViZTgyMmQwfX0NCiAgICAgICAgZHJtT3B0aW9uID0ge2Qg
PSB7ZCA9IDB4NTYwOTViZTgyMzEwfX0NCiAgICAgICAgbG9jYWxlMU9wdGlvbiA9IHtkID0ge2Qg
PSAweDU2MDk1YmU4MjQ3MH19DQogICAgICAgIHBhcnNlciA9IHtkID0gMHg1NjA5NWJlN2QyODB9
DQogICAgICAgIGlucHV0TWV0aG9kT3B0aW9uID0ge2QgPSB7ZCA9IDB4NTYwOTViZTgzMjUwfX0N
CiAgICAgICAgc2NyZWVuTG9ja2VyT3B0aW9uID0ge2QgPSB7ZCA9IDB4NTYwOTViZTgzNDIwfX0N
CiAgICAgICAgbm9TY3JlZW5Mb2NrZXJPcHRpb24gPSB7ZCA9IHtkID0gMHg1NjA5NWJlODM0YzB9
fQ0KICAgICAgICBub0dsb2JhbFNob3J0Y3V0c09wdGlvbiA9IHtkID0ge2QgPSAweDU2MDk1YmU4
MzVjMH19DQogICAgICAgIG5vQWN0aXZpdGllc09wdGlvbiA9IHtkID0ge2QgPSAweDU2MDk1YmU4
MzZkMH19DQogICAgICAgIGV4aXRXaXRoU2Vzc2lvbk9wdGlvbiA9IHtkID0ge2QgPSAweDU2MDk1
YmU4Mzg5MH19DQogICAgICAgIGJhY2tlbmRUeXBlID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAg
IHBsdWdpbk5hbWUgPSB7ZCA9IDB4N2YzZWZkZjg4MTYwIDxRQXJyYXlEYXRhOjpzaGFyZWRfbnVs
bD59DQogICAgICAgIGluaXRpYWxXaW5kb3dTaXplID0ge3dkID0gMTAyNCwgaHQgPSA3Njh9DQog
ICAgICAgIG91dHB1dENvdW50ID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIG91dHB1dFNjYWxl
ID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIG9rID0gdHJ1ZQ0KICAgICAgICB3aWR0aCA9IDxv
cHRpbWl6ZWQgb3V0Pg0KICAgICAgICBoZWlnaHQgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAg
c2NhbGUgPSA8b3B0aW1pemVkIG91dD4NCiAgICAgICAgY291bnQgPSA8b3B0aW1pemVkIG91dD4N
CiAgICAgICAgc2VydmVyID0gPG9wdGltaXplZCBvdXQ+DQogICAgICAgIGZsYWdzID0gPG9wdGlt
aXplZCBvdXQ+DQogICAgICAgIHNvY2tldE5hbWUgPSB7ZCA9IDB4N2YzZWZkZjg4MTYwIDxRQXJy
YXlEYXRhOjpzaGFyZWRfbnVsbD59DQogICAgICAgIEJhY2tlbmRUeXBlOjpLbXMgPSBCYWNrZW5k
VHlwZTo6S21zDQogICAgICAgIEJhY2tlbmRUeXBlOjpYMTEgPSBCYWNrZW5kVHlwZTo6WDExDQog
ICAgICAgIEJhY2tlbmRUeXBlOjpXYXlsYW5kID0gQmFja2VuZFR5cGU6OldheWxhbmQNCiAgICAg
ICAgQmFja2VuZFR5cGU6OlZpcnR1YWwgPSBCYWNrZW5kVHlwZTo6VmlydHVhbA0KDQpxdWl0DQoN
Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>