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

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>206190</bug_id>
          
          <creation_ts>2020-01-13 13:05:27 -0800</creation_ts>
          <short_desc>Enable -Wconditional-uninitialized in bmalloc, WTF, JavaScriptCore</short_desc>
          <delta_ts>2020-01-20 12:38:32 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>JavaScriptCore</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=206269</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=206270</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=206508</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="David Kilzer (:ddkilzer)">ddkilzer</reporter>
          <assigned_to name="David Kilzer (:ddkilzer)">ddkilzer</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1606014</commentid>
    <comment_count>0</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2020-01-13 13:05:27 -0800</bug_when>
    <thetext>Enable -Wconditional-uninitialized in bmalloc, WTF, JavaScriptCore.

Neither bmalloc nor WTF have any warnings.

This fixes the following warnings in JavaScriptCore:


Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp:3428:24: error: variable &apos;continuation&apos; may be uninitialized when used here [-Werror,-Wconditional-uninitialized]
            m_out.jump(continuation);
                       ^~~~~~~~~~~~
Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp:3411:33: note: initialize the variable &apos;continuation&apos; to silence this warning
        LBasicBlock continuation;
                                ^
                                 = nullptr
Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp:3429:42: error: variable &apos;lastNext&apos; may be uninitialized when used here [-Werror,-Wconditional-uninitialized]
            m_out.appendTo(continuation, lastNext);
                                         ^~~~~~~~
Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp:3412:29: note: initialize the variable &apos;lastNext&apos; to silence this warning
        LBasicBlock lastNext;
                            ^
                             = nullptr
Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp:13299:44: error: variable &apos;globalObject&apos; may be uninitialized when used here [-Werror,-Wconditional-uninitialized]
            patchpoint-&gt;appendSomeRegister(globalObject);
                                           ^~~~~~~~~~~~
Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp:13288:28: note: initialize the variable &apos;globalObject&apos; to silence this warning
        LValue globalObject;
                           ^
                            = nullptr
3 errors generated.


In file included from Release/DerivedSources/JavaScriptCore/unified-sources/UnifiedSource63.cpp:1:
./ftl/FTLThunks.cpp:170:28: error: variable &apos;someGPR&apos; may be uninitialized when used here [-Werror,-Wconditional-uninitialized]
        jit.move64ToDouble(someGPR, reg.fpr());
                           ^~~~~~~
./ftl/FTLThunks.cpp:157:5: note: variable &apos;someGPR&apos; is declared here
    GPRReg someGPR;
    ^
1 error generated.


In file included from Release/DerivedSources/JavaScriptCore/unified-sources/UnifiedSource137.cpp:8:
./wasm/js/WebAssemblyTablePrototype.cpp:145:35: error: variable &apos;wasmWrapperFunction&apos; may be uninitialized when used here [-Werror,-Wconditional-uninitialized]
                table-&gt;set(index, wasmWrapperFunction);
                                  ^~~~~~~~~~~~~~~~~~~
./wasm/js/WebAssemblyTablePrototype.cpp:133:56: note: initialize the variable &apos;wasmWrapperFunction&apos; to silence this warning
        WebAssemblyWrapperFunction* wasmWrapperFunction;
                                                       ^
                                                        = nullptr
./wasm/js/WebAssemblyTablePrototype.cpp:142:17: error: variable &apos;wasmFunction&apos; may be uninitialized when used here [-Werror,-Wconditional-uninitialized]
            if (wasmFunction)
                ^~~~~~~~~~~~
./wasm/js/WebAssemblyTablePrototype.cpp:132:42: note: initialize the variable &apos;wasmFunction&apos; to silence this warning
        WebAssemblyFunction* wasmFunction;
                                         ^
                                          = nullptr
2 errors generated.


Source/JavaScriptCore/b3/testb3_4.cpp:870:36: error: variable &apos;arg&apos; may be uninitialized when used here [-Werror,-Wconditional-uninitialized]
    CHECK(compileAndRun&lt;int&gt;(proc, arg) == 8675309);
                                   ^~~
In file included from Source/JavaScriptCore/b3/testb3_4.cpp:27:
Source/JavaScriptCore/b3/testb3.h:106:12: note: expanded from macro &apos;CHECK&apos;
    if (!!(x))                                                      \
           ^
Source/JavaScriptCore/b3/testb3_4.cpp:851:18: note: initialize the variable &apos;arg&apos; to silence this warning
    uintptr_t arg;
                 ^
                  = 0
Source/JavaScriptCore/b3/testb3_4.cpp:859:6: error: variable &apos;slot&apos; may be uninitialized when used here [-Werror,-Wconditional-uninitialized]
    *slot = 8675309;
     ^~~~
Source/JavaScriptCore/b3/testb3_4.cpp:850:14: note: initialize the variable &apos;slot&apos; to silence this warning
    int* slot;
             ^
              = nullptr
2 errors generated.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1606015</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-01-13 13:05:49 -0800</bug_when>
    <thetext>&lt;rdar://problem/58540387&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1606026</commentid>
    <comment_count>2</comment_count>
      <attachid>387564</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2020-01-13 13:23:07 -0800</bug_when>
    <thetext>Created attachment 387564
Patch v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1606028</commentid>
    <comment_count>3</comment_count>
      <attachid>387564</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2020-01-13 13:26:00 -0800</bug_when>
    <thetext>Comment on attachment 387564
Patch v1

Oops, different variables aren&apos;t initialized on iOS.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1606057</commentid>
    <comment_count>4</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2020-01-13 14:37:01 -0800</bug_when>
    <thetext>(In reply to David Kilzer (:ddkilzer) from comment #3)
&gt; Comment on attachment 387564 [details]
&gt; Patch v1
&gt; 
&gt; Oops, different variables aren&apos;t initialized on iOS.


In file included from Release-iphoneos/DerivedSources/JavaScriptCore/unified-sources/UnifiedSource12.cpp:7:
./b3/B3LowerToAir.cpp:2298:34: error: variable &apos;strongFailBlock&apos; may be uninitialized when used here [-Werror,-Wconditional-uninitialized]
                comparisonFail = strongFailBlock;
                                 ^~~~~~~~~~~~~~~
./b3/B3LowerToAir.cpp:2291:41: note: initialize the variable &apos;strongFailBlock&apos; to silence this warning
        Air::BasicBlock* strongFailBlock;
                                        ^
                                         = nullptr
1 error generated.


And there are additional errors for Debug builds:


In file included from WebKitBuild/Debug/DerivedSources/JavaScriptCore/unified-sources/UnifiedSource129.cpp:1:
In file included from ./wasm/WasmB3IRGenerator.cpp:58:
./wasm/WasmFunctionParser.h:238:12: error: variable &apos;op&apos; may be uninitialized when used here [-Werror,-Wconditional-uninitialized]
    ASSERT(op == OpType::End);
           ^~
In file included from WebKitBuild/Debug/DerivedSources/JavaScriptCore/unified-sources/UnifiedSource129.cpp:1:
In file included from ./wasm/WasmB3IRGenerator.cpp:26:
In file included from Source/JavaScriptCore/config.h:38:
In file included from Debug/usr/local/include/wtf/FastMalloc.h:26:
In file included from Debug/usr/local/include/wtf/StdLibExtras.h:32:
Debug/usr/local/include/wtf/Assertions.h:324:11: note: expanded from macro &apos;ASSERT&apos;
    if (!(assertion)) { \
          ^~~~~~~~~
In file included from WebKitBuild/Debug/DerivedSources/JavaScriptCore/unified-sources/UnifiedSource129.cpp:1:
In file included from ./wasm/WasmB3IRGenerator.cpp:58:
./wasm/WasmFunctionParser.h:208:31: note: in instantiation of member function &apos;JSC::Wasm::FunctionParser&lt;JSC::Wasm::B3IRGenerator&gt;::parseBody&apos; requested here
    WASM_FAIL_IF_HELPER_FAILS(parseBody());
                              ^
In file included from WebKitBuild/Debug/DerivedSources/JavaScriptCore/unified-sources/UnifiedSource129.cpp:1:
./wasm/WasmB3IRGenerator.cpp:1991:38: note: in instantiation of member function &apos;JSC::Wasm::FunctionParser&lt;JSC::Wasm::B3IRGenerator&gt;::parse&apos; requested here
    WASM_FAIL_IF_HELPER_FAILS(parser.parse());
                                     ^
In file included from WebKitBuild/Debug/DerivedSources/JavaScriptCore/unified-sources/UnifiedSource129.cpp:1:
In file included from ./wasm/WasmB3IRGenerator.cpp:58:
./wasm/WasmFunctionParser.h:217:15: note: initialize the variable &apos;op&apos; to silence this warning
    uint8_t op;
              ^
               = &apos;\0&apos;
1 error generated.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1606068</commentid>
    <comment_count>5</comment_count>
      <attachid>387570</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2020-01-13 14:52:12 -0800</bug_when>
    <thetext>Created attachment 387570
Patch v2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1606139</commentid>
    <comment_count>6</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2020-01-13 16:42:05 -0800</bug_when>
    <thetext>The &quot;jsc&quot; bot failure:

{&quot;allMasmTestsPassed&quot;:true,&quot;allApiTestsPassed&quot;:true,&quot;stressTestFailures&quot;:[&quot;wasm.yaml/wasm/lowExecutableMemory/imports-oom.js.default-wasm&quot;],&quot;allDFGTestsPassed&quot;:true,&quot;allB3TestsPassed&quot;:true,&quot;allAirTestsPassed&quot;:true}

Waiting to see if this failure is specific to this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1606140</commentid>
    <comment_count>7</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2020-01-13 16:42:49 -0800</bug_when>
    <thetext>(In reply to David Kilzer (:ddkilzer) from comment #6)
&gt; The &quot;jsc&quot; bot failure:
&gt; 
&gt; {&quot;allMasmTestsPassed&quot;:true,&quot;allApiTestsPassed&quot;:true,&quot;stressTestFailures&quot;:
&gt; [&quot;wasm.yaml/wasm/lowExecutableMemory/imports-oom.js.default-wasm&quot;],
&gt; &quot;allDFGTestsPassed&quot;:true,&quot;allB3TestsPassed&quot;:true,&quot;allAirTestsPassed&quot;:true}
&gt; 
&gt; Waiting to see if this failure is specific to this patch.

Hmmm, the results just turned green.

Waiting for remaining bots to go green before cq+.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1606239</commentid>
    <comment_count>8</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2020-01-13 21:16:34 -0800</bug_when>
    <thetext>The mac-debug-wk1 failure is unrelated.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1606290</commentid>
    <comment_count>9</comment_count>
      <attachid>387570</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-01-14 00:40:54 -0800</bug_when>
    <thetext>Comment on attachment 387570
Patch v2

Clearing flags on attachment: 387570

Committed r254500: &lt;https://trac.webkit.org/changeset/254500&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1606291</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-01-14 00:40:56 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1606445</commentid>
    <comment_count>11</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2020-01-14 09:35:00 -0800</bug_when>
    <thetext>(In reply to David Kilzer (:ddkilzer) from comment #8)
&gt; The mac-debug-wk1 failure is unrelated.

Filed Bug 206241 for this.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>387564</attachid>
            <date>2020-01-13 13:23:07 -0800</date>
            <delta_ts>2020-01-13 14:51:21 -0800</delta_ts>
            <desc>Patch v1</desc>
            <filename>bug-206190-20200113132306.patch</filename>
            <type>text/plain</type>
            <size>10687</size>
            <attacher name="David Kilzer (:ddkilzer)">ddkilzer</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU0NDQxCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAw
Njk3MjkwNDJmMDk3YmFlZWJlN2I0OWE1MjY3NTcxOTAyMTExZWQ0Li42M2Q1ZDc0MjRiNzg4MzM3
NTU1NTU2ZmE0MDQ5NGRiNjA1MDQ5Zjg2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyNyBAQAorMjAyMC0wMS0xMyAgRGF2aWQgS2lsemVyICA8ZGRraWx6ZXJAYXBwbGUuY29t
PgorCisgICAgICAgIEVuYWJsZSAtV2NvbmRpdGlvbmFsLXVuaW5pdGlhbGl6ZWQgaW4gYm1hbGxv
YywgV1RGLCBKYXZhU2NyaXB0Q29yZQorICAgICAgICA8aHR0cHM6Ly93ZWJraXQub3JnL2IvMjA2
MTkwPgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTg1NDAzODc+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhj
Y29uZmlnOgorICAgICAgICAoV0FSTklOR19DRkxBR1MpOiBBZGQgLVdjb25kaXRpb25hbC11bmlu
aXRpYWxpemVkLgorICAgICAgICAqIGIzL3Rlc3RiM180LmNwcDoKKyAgICAgICAgKHRlc3RMb2Fk
QWRkclNoaWZ0KTogSW5pdGlhbGl6ZSB0d28gc3RhY2sgdmFyaWFibGVzLgorICAgICAgICAqIGZ0
bC9GVExMb3dlckRGR1RvQjMuY3BwOgorICAgICAgICAoSlNDOjpGVEw6OkRGRzo6TG93ZXJERkdU
b0IzOjpjb21waWxlQ2hlY2tTdHJ1Y3R1cmVPckVtcHR5KToKKyAgICAgICAgSW5pdGlhbGl6ZSB0
d28gc3RhY2sgdmFyaWFibGVzLiAgTW92ZSBkZWNsYXJhdGlvbiBvZiBgbm90RW1wdHlgCisgICAg
ICAgIGludG8gaWYgYmxvY2sgc2luY2UgaXQncyBub3QgdXNlZCBvdXRzaWRlIHRoYXQgc2NvcGUu
CisgICAgICAgIChKU0M6OkZUTDo6REZHOjpMb3dlckRGR1RvQjM6OmNvbXBpbGVDYWxsRE9NR2V0
dGVyKTogSW5pdGlhbGl6ZQorICAgICAgICBzdGFjayB2YXJpYWJsZS4KKyAgICAgICAgKiBmdGwv
RlRMVGh1bmtzLmNwcDoKKyAgICAgICAgKEpTQzo6RlRMOjpyZWdpc3RlckNsb2JiZXJDaGVjayk6
IEluaXRpYWxpemUgc3RhY2sgdmFyaWFibGUuCisgICAgICAgICogd2FzbS9qcy9XZWJBc3NlbWJs
eVRhYmxlUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKEpTQzo6d2ViQXNzZW1ibHlUYWJsZVByb3Rv
RnVuY1NldCk6IEluaXRpYWxpemUgdHdvIHN0YWNrCisgICAgICAgIHZhcmlhYmxlcy4KKwogMjAy
MC0wMS0xMSAgS2VpdGggTWlsbGVyICA8a2VpdGhfbWlsbGVyQGFwcGxlLmNvbT4KIAogICAgICAg
ICBDaGVja05ldXRlcmVkIG5lZWRzIHRvIGNsYWltIGl0IHJlYWRzIEpTVHlwZSBpbiBjbG9iYmVy
aXplLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZwppbmRleCA0M2UwMzVhZjFjNTkwN2IxOTgwYWQ3NDQ0NDhlZjQ2ZTU2ZTAyZTlhLi5mMjEz
ZjNiODc5ZGU3ZWRjZmJjODVmZjI2NTkxNTg2MjIwYjE4ZjMxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V1RGL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV1RGL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBA
CisyMDIwLTAxLTEzICBEYXZpZCBLaWx6ZXIgIDxkZGtpbHplckBhcHBsZS5jb20+CisKKyAgICAg
ICAgRW5hYmxlIC1XY29uZGl0aW9uYWwtdW5pbml0aWFsaXplZCBpbiBibWFsbG9jLCBXVEYsIEph
dmFTY3JpcHRDb3JlCisgICAgICAgIDxodHRwczovL3dlYmtpdC5vcmcvYi8yMDYxOTA+CisgICAg
ICAgIDxyZGFyOi8vcHJvYmxlbS81ODU0MDM4Nz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6Cisg
ICAgICAgIChXQVJOSU5HX0NGTEFHUyk6IEFkZCAtV2NvbmRpdGlvbmFsLXVuaW5pdGlhbGl6ZWQu
CisKIDIwMjAtMDEtMTIgIFNhbSBXZWluaWcgIDx3ZWluaWdAYXBwbGUuY29tPgogCiAgICAgICAg
IFBsYXRmb3JtLmggaXMgb3V0IG9mIGNvbnRyb2wgUGFydCAyOiBTcGxpdCBXVEZfT1NfKiBtYWNy
byBkZWZpbml0aW9ucyBvdXQgb2YgUGxhdGZvcm0uaCBhbmQgaW50byBhIG5ldyBPUy5oCmRpZmYg
LS1naXQgYS9Tb3VyY2UvYm1hbGxvYy9DaGFuZ2VMb2cgYi9Tb3VyY2UvYm1hbGxvYy9DaGFuZ2VM
b2cKaW5kZXggMzljYmY1YzJlYTJhOGE1NWUyMTBlMGI1NGMyMGI5ZTc0MTNhMjk5Ny4uODc1MTE2
YjdmZjczYzBlODNjODc1ZDY3NTU0ZDhkZWQ2YTcxMTYwYSAxMDA2NDQKLS0tIGEvU291cmNlL2Jt
YWxsb2MvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9ibWFsbG9jL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDE0IEBACisyMDIwLTAxLTEzICBEYXZpZCBLaWx6ZXIgIDxkZGtpbHplckBhcHBsZS5jb20+CisK
KyAgICAgICAgRW5hYmxlIC1XY29uZGl0aW9uYWwtdW5pbml0aWFsaXplZCBpbiBibWFsbG9jLCBX
VEYsIEphdmFTY3JpcHRDb3JlCisgICAgICAgIDxodHRwczovL3dlYmtpdC5vcmcvYi8yMDYxOTA+
CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81ODU0MDM4Nz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25m
aWc6CisgICAgICAgIChXQVJOSU5HX0NGTEFHUyk6IEFkZCAtV2NvbmRpdGlvbmFsLXVuaW5pdGlh
bGl6ZWQuCisKIDIwMjAtMDEtMDkgIEJhc3VrZSBTdXp1a2kgIDxiYXN1a2Uuc3V6dWtpQHNvbnku
Y29tPgogCiAgICAgICAgIFtibWFsbG9jXSBFeHRyYWN0IGNvbnN0YW50cyBmcm9tIEhlYXAgYW5k
IHNoYXJlIGl0IGFtb25nIEhlYXBzLgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L0NvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWcgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ29u
ZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZwppbmRleCA1ZTIxMGNlNTVlYTI0ODkzMjg0OGJjZTY2
YjQ4MWIxMjQ2YmJlMzE1Li5lOWVkMDRjNmViMmFkMGNhMjA5NDE2ODkxMjVkYWFhY2VjNjRiNTM1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ29uZmlndXJhdGlvbnMvQmFzZS54
Y2NvbmZpZworKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ29uZmlndXJhdGlvbnMvQmFzZS54
Y2NvbmZpZwpAQCAtOTgsNyArOTgsNyBAQCBHQ0NfV0FSTl9VTlVTRURfRlVOQ1RJT04gPSBZRVM7
CiBHQ0NfV0FSTl9VTlVTRURfVkFSSUFCTEUgPSBZRVM7CiBDTEFOR19XQVJOX0RPQ1VNRU5UQVRJ
T05fQ09NTUVOVFMgPSBZRVM7CiBQUkVCSU5ESU5HID0gTk87Ci1XQVJOSU5HX0NGTEFHUyA9IC1X
YWxsIC1XZXh0cmEgLVdjYXN0LXF1YWwgLVdjaGFyLXN1YnNjcmlwdHMgLVdleHRyYS10b2tlbnMg
LVdmb3JtYXQ9MiAtV2luaXQtc2VsZiAtV21pc3NpbmctZm9ybWF0LWF0dHJpYnV0ZSAtV21pc3Np
bmctbm9yZXR1cm4gLVdwYWNrZWQgLVdwb2ludGVyLWFyaXRoIC1XcmVkdW5kYW50LWRlY2xzIC1X
dW5kZWYgLVd3cml0ZS1zdHJpbmdzIC1XZXhpdC10aW1lLWRlc3RydWN0b3JzIC1XZ2xvYmFsLWNv
bnN0cnVjdG9ycyAtV3RhdXRvbG9naWNhbC1jb21wYXJlIC1XaW1wbGljaXQtZmFsbHRocm91Z2g7
CitXQVJOSU5HX0NGTEFHUyA9IC1XYWxsIC1XZXh0cmEgLVdjYXN0LXF1YWwgLVdjaGFyLXN1YnNj
cmlwdHMgLVdjb25kaXRpb25hbC11bmluaXRpYWxpemVkIC1XZXh0cmEtdG9rZW5zIC1XZm9ybWF0
PTIgLVdpbml0LXNlbGYgLVdtaXNzaW5nLWZvcm1hdC1hdHRyaWJ1dGUgLVdtaXNzaW5nLW5vcmV0
dXJuIC1XcGFja2VkIC1XcG9pbnRlci1hcml0aCAtV3JlZHVuZGFudC1kZWNscyAtV3VuZGVmIC1X
d3JpdGUtc3RyaW5ncyAtV2V4aXQtdGltZS1kZXN0cnVjdG9ycyAtV2dsb2JhbC1jb25zdHJ1Y3Rv
cnMgLVd0YXV0b2xvZ2ljYWwtY29tcGFyZSAtV2ltcGxpY2l0LWZhbGx0aHJvdWdoOwogCiBIRUFE
RVJfU0VBUkNIX1BBVEhTID0gLiAiJHtCVUlMVF9QUk9EVUNUU19ESVJ9L3Vzci9sb2NhbC9pbmNs
dWRlIiAkKEhFQURFUl9TRUFSQ0hfUEFUSFMpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvYjMvdGVzdGIzXzQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL3Rlc3Ri
M180LmNwcAppbmRleCAzNjRkMjgwZGM2YzE4OWQ2ZmIwYTk2MmVhNDBhMDllYTQ2NzUyOTZlLi41
NDQzODA2NzExODIyOTVjMjBhM2E2OTZlOGMyOTU1Zjg2MDRjYTZjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvYjMvdGVzdGIzXzQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9iMy90ZXN0YjNfNC5jcHAKQEAgLTg0Nyw4ICs4NDcsOCBAQCB2b2lkIHRlc3RMb2FkQWRk
clNoaWZ0KHVuc2lnbmVkIHNoaWZ0KQogICAgIGludCBzbG90c1syXTsKIAogICAgIC8vIEZpZ3Vy
ZSBvdXQgd2hpY2ggc2xvdCB0byB1c2Ugd2hpbGUgaGF2aW5nIHByb3BlciBhbGlnbm1lbnQgZm9y
IHRoZSBzaGlmdC4KLSAgICBpbnQqIHNsb3Q7Ci0gICAgdWludHB0cl90IGFyZzsKKyAgICBpbnQq
IHNsb3QgPSBudWxscHRyOworICAgIHVpbnRwdHJfdCBhcmcgPSAwOwogICAgIGZvciAodW5zaWdu
ZWQgaSA9IHNpemVvZihzbG90cykvc2l6ZW9mKHNsb3RzWzBdKTsgaS0tOykgewogICAgICAgICBz
bG90ID0gc2xvdHMgKyBpOwogICAgICAgICBhcmcgPSBiaXR3aXNlX2Nhc3Q8dWludHB0cl90Pihz
bG90KSA+PiBzaGlmdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRM
TG93ZXJERkdUb0IzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMTG93ZXJERkdU
b0IzLmNwcAppbmRleCBkOTg0NTRlNTUxOTU2Mzg5M2EyZDgwYTUxZGVmMjM1M2UyYTg4MjY5Li44
NTRkNGYxMjk4OTE1OTE3MDk4YzkzZjkxNzAzMTA3ODY3YmFkZWYyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTExvd2VyREZHVG9CMy5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2Z0bC9GVExMb3dlckRGR1RvQjMuY3BwCkBAIC0zNDA3LDExICszNDA3LDEw
IEBAIHByaXZhdGU6CiAKICAgICAgICAgTFZhbHVlIGNlbGwgPSBsb3dDZWxsKG1fbm9kZS0+Y2hp
bGQxKCkpOwogICAgICAgICBib29sIG1heVNlZUVtcHR5VmFsdWUgPSBtX2ludGVycHJldGVyLmZv
ck5vZGUobV9ub2RlLT5jaGlsZDEoKSkubV90eXBlICYgU3BlY0VtcHR5OwotICAgICAgICBMQmFz
aWNCbG9jayBub3RFbXB0eTsKLSAgICAgICAgTEJhc2ljQmxvY2sgY29udGludWF0aW9uOwotICAg
ICAgICBMQmFzaWNCbG9jayBsYXN0TmV4dDsKKyAgICAgICAgTEJhc2ljQmxvY2sgY29udGludWF0
aW9uID0gbnVsbHB0cjsKKyAgICAgICAgTEJhc2ljQmxvY2sgbGFzdE5leHQgPSBudWxscHRyOwog
ICAgICAgICBpZiAobWF5U2VlRW1wdHlWYWx1ZSkgewotICAgICAgICAgICAgbm90RW1wdHkgPSBt
X291dC5uZXdCbG9jaygpOworICAgICAgICAgICAgTEJhc2ljQmxvY2sgbm90RW1wdHkgPSBtX291
dC5uZXdCbG9jaygpOwogICAgICAgICAgICAgY29udGludWF0aW9uID0gbV9vdXQubmV3QmxvY2so
KTsKICAgICAgICAgICAgIG1fb3V0LmJyYW5jaChtX291dC5pc1plcm82NChjZWxsKSwgdW5zdXJl
KGNvbnRpbnVhdGlvbiksIHVuc3VyZShub3RFbXB0eSkpOwogICAgICAgICAgICAgbGFzdE5leHQg
PSBtX291dC5hcHBlbmRUbyhub3RFbXB0eSwgY29udGludWF0aW9uKTsKQEAgLTEzMjg1LDcgKzEz
Mjg0LDcgQEAgcHJpdmF0ZToKICAgICAgICAgTFZhbHVlIGJhc2UgPSBsb3dDZWxsKGJhc2VFZGdl
KTsKICAgICAgICAgSlNWYWx1ZSBiYXNlQ29uc3RhbnQgPSBtX3N0YXRlLmZvck5vZGUoYmFzZUVk
Z2UpLnZhbHVlKCk7CiAKLSAgICAgICAgTFZhbHVlIGdsb2JhbE9iamVjdDsKKyAgICAgICAgTFZh
bHVlIGdsb2JhbE9iamVjdCA9IG51bGxwdHI7CiAgICAgICAgIEpTVmFsdWUgZ2xvYmFsT2JqZWN0
Q29uc3RhbnQ7CiAgICAgICAgIGlmIChkb21KSVQtPnJlcXVpcmVHbG9iYWxPYmplY3QpIHsKICAg
ICAgICAgICAgIEVkZ2UmIGdsb2JhbE9iamVjdEVkZ2UgPSBtX25vZGUtPmNoaWxkMigpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9GVExUaHVua3MuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2Z0bC9GVExUaHVua3MuY3BwCmluZGV4IGU0Mjk0NTM3MzgxY2Y2OTFi
ZWM2MmYwZTFhZmJhZTliZGRkZTRkZjIuLjA3OGQxMjg1NTc1NDlkODMyZWQ0ODgyODFmY2U2Yzc5
MmNjYmYzM2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMVGh1bmtz
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTFRodW5rcy5jcHAKQEAgLTE1
NCw3ICsxNTQsNyBAQCBzdGF0aWMgdm9pZCByZWdpc3RlckNsb2JiZXJDaGVjayhBc3NlbWJseUhl
bHBlcnMmIGppdCwgUmVnaXN0ZXJTZXQgZG9udENsb2JiZXIpCiAgICAgY2xvYmJlci5leGNsdWRl
KFJlZ2lzdGVyU2V0OjpjYWxsZWVTYXZlUmVnaXN0ZXJzKCkpOwogICAgIGNsb2JiZXIuZXhjbHVk
ZShkb250Q2xvYmJlcik7CiAgICAgCi0gICAgR1BSUmVnIHNvbWVHUFI7CisgICAgR1BSUmVnIHNv
bWVHUFIgPSBJbnZhbGlkR1BSUmVnOwogICAgIGZvciAoUmVnIHJlZyA9IFJlZzo6Zmlyc3QoKTsg
cmVnIDw9IFJlZzo6bGFzdCgpOyByZWcgPSByZWcubmV4dCgpKSB7CiAgICAgICAgIGlmICghY2xv
YmJlci5nZXQocmVnKSB8fCAhcmVnLmlzR1BSKCkpCiAgICAgICAgICAgICBjb250aW51ZTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5VGFibGVQ
cm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlU
YWJsZVByb3RvdHlwZS5jcHAKaW5kZXggZDE2OGYzMTg5ODMwZjQxMmFhYTBkYzQ3ZDM2MGYyOGVk
MGNmNDA5OC4uOTc4OTE4NmIyZGRjYzM0MmZkZGIwODM1M2UxZWVlZDE5Njg1YTdkNCAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlUYWJsZVByb3Rv
dHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vanMvV2ViQXNzZW1ibHlU
YWJsZVByb3RvdHlwZS5jcHAKQEAgLTEyOSw4ICsxMjksOCBAQCBzdGF0aWMgRW5jb2RlZEpTVmFs
dWUgSlNDX0hPU1RfQ0FMTCB3ZWJBc3NlbWJseVRhYmxlUHJvdG9GdW5jU2V0KEpTR2xvYmFsT2Jq
ZWN0KgogICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93RXhjZXB0aW9uKGdsb2Jh
bE9iamVjdCwgdGhyb3dTY29wZSwgY3JlYXRlUmFuZ2VFcnJvcihnbG9iYWxPYmplY3QsICJXZWJB
c3NlbWJseS5UYWJsZS5wcm90b3R5cGUuc2V0IGV4cGVjdHMgYW4gaW50ZWdlciBsZXNzIHRoYW4g
dGhlIGxlbmd0aCBvZiB0aGUgdGFibGUiX3MpKSk7CiAKICAgICBpZiAodGFibGUtPnRhYmxlKCkt
PmFzRnVuY3JlZlRhYmxlKCkpIHsKLSAgICAgICAgV2ViQXNzZW1ibHlGdW5jdGlvbiogd2FzbUZ1
bmN0aW9uOwotICAgICAgICBXZWJBc3NlbWJseVdyYXBwZXJGdW5jdGlvbiogd2FzbVdyYXBwZXJG
dW5jdGlvbjsKKyAgICAgICAgV2ViQXNzZW1ibHlGdW5jdGlvbiogd2FzbUZ1bmN0aW9uID0gbnVs
bHB0cjsKKyAgICAgICAgV2ViQXNzZW1ibHlXcmFwcGVyRnVuY3Rpb24qIHdhc21XcmFwcGVyRnVu
Y3Rpb24gPSBudWxscHRyOwogICAgICAgICBpZiAoIXZhbHVlLmlzTnVsbCgpICYmICFpc1dlYkFz
c2VtYmx5SG9zdEZ1bmN0aW9uKHZtLCB2YWx1ZSwgd2FzbUZ1bmN0aW9uLCB3YXNtV3JhcHBlckZ1
bmN0aW9uKSkKICAgICAgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUodGhyb3dFeGNlcHRp
b24oZ2xvYmFsT2JqZWN0LCB0aHJvd1Njb3BlLCBjcmVhdGVUeXBlRXJyb3IoZ2xvYmFsT2JqZWN0
LCAiV2ViQXNzZW1ibHkuVGFibGUucHJvdG90eXBlLnNldCBleHBlY3RzIHRoZSBzZWNvbmQgYXJn
dW1lbnQgdG8gYmUgbnVsbCBvciBhbiBpbnN0YW5jZSBvZiBXZWJBc3NlbWJseS5GdW5jdGlvbiJf
cykpKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dURi9Db25maWd1cmF0aW9ucy9CYXNlLnhjY29u
ZmlnIGIvU291cmNlL1dURi9Db25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnCmluZGV4IDQ1ODRl
NGExM2QzMmZlNjg3NGMwZDgzZDllODYyNzlmM2UyZTU3MmQuLmFjYjQ4ZWI5ZjEyM2QwNWFhN2Qw
YWY1Yzc2ZDUzMzc1ZTdhODAzNDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ29uZmlndXJhdGlv
bnMvQmFzZS54Y2NvbmZpZworKysgYi9Tb3VyY2UvV1RGL0NvbmZpZ3VyYXRpb25zL0Jhc2UueGNj
b25maWcKQEAgLTk3LDcgKzk3LDcgQEAgR0NDX1dBUk5fVU5JTklUSUFMSVpFRF9BVVRPUyA9IFlF
UzsKIEdDQ19XQVJOX1VOVVNFRF9GVU5DVElPTiA9IFlFUzsKIEdDQ19XQVJOX1VOVVNFRF9WQVJJ
QUJMRSA9IFlFUzsKIFBSRUJJTkRJTkcgPSBOTzsKLVdBUk5JTkdfQ0ZMQUdTID0gLVdhbGwgLVdl
eHRyYSAtV2Nhc3QtcXVhbCAtV2NoYXItc3Vic2NyaXB0cyAtV2V4dHJhLXRva2VucyAtV2Zvcm1h
dD0yIC1XaW5pdC1zZWxmIC1XbWlzc2luZy1mb3JtYXQtYXR0cmlidXRlIC1XbWlzc2luZy1ub3Jl
dHVybiAtV3BhY2tlZCAtV3BvaW50ZXItYXJpdGggLVdyZWR1bmRhbnQtZGVjbHMgLVd1bmRlZiAt
V3dyaXRlLXN0cmluZ3MgLVdleGl0LXRpbWUtZGVzdHJ1Y3RvcnMgLVdnbG9iYWwtY29uc3RydWN0
b3JzIC1XdGF1dG9sb2dpY2FsLWNvbXBhcmUgLVdpbXBsaWNpdC1mYWxsdGhyb3VnaDsKK1dBUk5J
TkdfQ0ZMQUdTID0gLVdhbGwgLVdleHRyYSAtV2Nhc3QtcXVhbCAtV2NoYXItc3Vic2NyaXB0cyAt
V2NvbmRpdGlvbmFsLXVuaW5pdGlhbGl6ZWQgLVdleHRyYS10b2tlbnMgLVdmb3JtYXQ9MiAtV2lu
aXQtc2VsZiAtV21pc3NpbmctZm9ybWF0LWF0dHJpYnV0ZSAtV21pc3Npbmctbm9yZXR1cm4gLVdw
YWNrZWQgLVdwb2ludGVyLWFyaXRoIC1XcmVkdW5kYW50LWRlY2xzIC1XdW5kZWYgLVd3cml0ZS1z
dHJpbmdzIC1XZXhpdC10aW1lLWRlc3RydWN0b3JzIC1XZ2xvYmFsLWNvbnN0cnVjdG9ycyAtV3Rh
dXRvbG9naWNhbC1jb21wYXJlIC1XaW1wbGljaXQtZmFsbHRocm91Z2g7CiBIRUFERVJfU0VBUkNI
X1BBVEhTID0gJChCVUlMVF9QUk9EVUNUU19ESVIpJChXVEZfSU5TVEFMTF9QQVRIX1BSRUZJWCkv
dXNyL2xvY2FsL2luY2x1ZGUgJChEU1RST09UKSQoV1RGX0lOU1RBTExfUEFUSF9QUkVGSVgpL3Vz
ci9sb2NhbC9pbmNsdWRlICQoaW5oZXJpdGVkKTsKIFNZU1RFTV9IRUFERVJfU0VBUkNIX1BBVEhT
ID0gJChTREtfRElSKSQoV1RGX0lOU1RBTExfUEFUSF9QUkVGSVgpL3Vzci9sb2NhbC9pbmNsdWRl
ICQoaW5oZXJpdGVkKTsKIExJQlJBUllfU0VBUkNIX1BBVEhTID0gJChTREtfRElSKSQoV1RGX0lO
U1RBTExfUEFUSF9QUkVGSVgpL3Vzci9sb2NhbC9saWIgJChpbmhlcml0ZWQpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL2JtYWxsb2MvQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZyBiL1NvdXJjZS9i
bWFsbG9jL0NvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWcKaW5kZXggM2NhMTVkMzkwZWU1NTgx
N2IzN2FlYWNjZjcyYzBhMDVjMGM2ZWZjZC4uZDQwYjJlZTBiNDE2MTQ1Y2I5MTgwODVlMTk0YWFh
ZjcwNGE5NTJmZCAxMDA2NDQKLS0tIGEvU291cmNlL2JtYWxsb2MvQ29uZmlndXJhdGlvbnMvQmFz
ZS54Y2NvbmZpZworKysgYi9Tb3VyY2UvYm1hbGxvYy9Db25maWd1cmF0aW9ucy9CYXNlLnhjY29u
ZmlnCkBAIC05NCw3ICs5NCw3IEBAIEdDQ19XQVJOX1VOSU5JVElBTElaRURfQVVUT1MgPSBZRVM7
CiBHQ0NfV0FSTl9VTlVTRURfRlVOQ1RJT04gPSBZRVM7CiBHQ0NfV0FSTl9VTlVTRURfVkFSSUFC
TEUgPSBZRVM7CiBQUkVCSU5ESU5HID0gTk87Ci1XQVJOSU5HX0NGTEFHUyA9IC1XYWxsIC1XZXh0
cmEgLVdjYXN0LXF1YWwgLVdjaGFyLXN1YnNjcmlwdHMgLVdleHRyYS10b2tlbnMgLVdmb3JtYXQ9
MiAtV2luaXQtc2VsZiAtV21pc3NpbmctZm9ybWF0LWF0dHJpYnV0ZSAtV21pc3Npbmctbm9yZXR1
cm4gLVdwYWNrZWQgLVdwb2ludGVyLWFyaXRoIC1XcmVkdW5kYW50LWRlY2xzIC1XdW5kZWYgLVd3
cml0ZS1zdHJpbmdzIC1XZXhpdC10aW1lLWRlc3RydWN0b3JzIC1XZ2xvYmFsLWNvbnN0cnVjdG9y
cyAtV3RhdXRvbG9naWNhbC1jb21wYXJlIC1XaW1wbGljaXQtZmFsbHRocm91Z2g7CitXQVJOSU5H
X0NGTEFHUyA9IC1XYWxsIC1XZXh0cmEgLVdjYXN0LXF1YWwgLVdjaGFyLXN1YnNjcmlwdHMgLVdj
b25kaXRpb25hbC11bmluaXRpYWxpemVkIC1XZXh0cmEtdG9rZW5zIC1XZm9ybWF0PTIgLVdpbml0
LXNlbGYgLVdtaXNzaW5nLWZvcm1hdC1hdHRyaWJ1dGUgLVdtaXNzaW5nLW5vcmV0dXJuIC1XcGFj
a2VkIC1XcG9pbnRlci1hcml0aCAtV3JlZHVuZGFudC1kZWNscyAtV3VuZGVmIC1Xd3JpdGUtc3Ry
aW5ncyAtV2V4aXQtdGltZS1kZXN0cnVjdG9ycyAtV2dsb2JhbC1jb25zdHJ1Y3RvcnMgLVd0YXV0
b2xvZ2ljYWwtY29tcGFyZSAtV2ltcGxpY2l0LWZhbGx0aHJvdWdoOwogCiBUQVJHRVRfTUFDX09T
X1hfVkVSU0lPTl9NQUpPUiA9ICQoVEFSR0VUX01BQ19PU19YX1ZFUlNJT05fTUFKT1IkKE1BQ09T
WF9ERVBMT1lNRU5UX1RBUkdFVDpzdWZmaXg6aWRlbnRpZmllcikpOwogVEFSR0VUX01BQ19PU19Y
X1ZFUlNJT05fTUFKT1JfMTMgPSAxMDEzMDA7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>387570</attachid>
            <date>2020-01-13 14:52:12 -0800</date>
            <delta_ts>2020-01-14 00:40:54 -0800</delta_ts>
            <desc>Patch v2</desc>
            <filename>bug-206190-20200113145211.patch</filename>
            <type>text/plain</type>
            <size>12089</size>
            <attacher name="David Kilzer (:ddkilzer)">ddkilzer</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU0NDQxCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAw
Njk3MjkwNDJmMDk3YmFlZWJlN2I0OWE1MjY3NTcxOTAyMTExZWQ0Li40NWIwZjU2NWU0YWNkOGRm
ZDdmYjM4YWEyMDlmYTZlYTg4NDI0OWM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzMiBAQAorMjAyMC0wMS0xMyAgRGF2aWQgS2lsemVyICA8ZGRraWx6ZXJAYXBwbGUuY29t
PgorCisgICAgICAgIEVuYWJsZSAtV2NvbmRpdGlvbmFsLXVuaW5pdGlhbGl6ZWQgaW4gYm1hbGxv
YywgV1RGLCBKYXZhU2NyaXB0Q29yZQorICAgICAgICA8aHR0cHM6Ly93ZWJraXQub3JnL2IvMjA2
MTkwPgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTg1NDAzODc+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW5pdGlhbGl6ZSBzdGFjayB2YXJpYWJs
ZXMgdG8gZml4IHdhcm5pbmdzLgorCisgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2Nv
bmZpZzoKKyAgICAgICAgKFdBUk5JTkdfQ0ZMQUdTKTogQWRkIC1XY29uZGl0aW9uYWwtdW5pbml0
aWFsaXplZC4KKyAgICAgICAgKiBiMy9CM0xvd2VyVG9BaXIuY3BwOgorICAgICAgICAoTG93ZXJU
b0Fpcjo6YXBwZW5kQ0FTKToKKyAgICAgICAgKiBiMy90ZXN0YjNfNC5jcHA6CisgICAgICAgICh0
ZXN0TG9hZEFkZHJTaGlmdCk6CisgICAgICAgICogZnRsL0ZUTExvd2VyREZHVG9CMy5jcHA6Cisg
ICAgICAgIChKU0M6OkZUTDo6REZHOjpMb3dlckRGR1RvQjM6OmNvbXBpbGVDaGVja1N0cnVjdHVy
ZU9yRW1wdHkpOgorICAgICAgICBNb3ZlIGRlY2xhcmF0aW9uIG9mIGBub3RFbXB0eWAgaW50byBp
ZiBibG9jayBzaW5jZSBpdCdzIG5vdCB1c2VkCisgICAgICAgIG91dHNpZGUgdGhhdCBzY29wZS4K
KyAgICAgICAgKEpTQzo6RlRMOjpERkc6Okxvd2VyREZHVG9CMzo6Y29tcGlsZUNhbGxET01HZXR0
ZXIpOgorICAgICAgICAqIGZ0bC9GVExUaHVua3MuY3BwOgorICAgICAgICAoSlNDOjpGVEw6OnJl
Z2lzdGVyQ2xvYmJlckNoZWNrKToKKyAgICAgICAgKiB3YXNtL2pzL1dlYkFzc2VtYmx5VGFibGVQ
cm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjp3ZWJBc3NlbWJseVRhYmxlUHJvdG9GdW5jU2V0
KToKKyAgICAgICAgdmFyaWFibGVzLgorICAgICAgICAqIHdhc20vV2FzbUZ1bmN0aW9uUGFyc2Vy
Lmg6CisgICAgICAgIChKU0M6Oldhc206OkZ1bmN0aW9uUGFyc2VyPENvbnRleHQ+OjpwYXJzZUJv
ZHkpOgorCiAyMDIwLTAxLTExICBLZWl0aCBNaWxsZXIgIDxrZWl0aF9taWxsZXJAYXBwbGUuY29t
PgogCiAgICAgICAgIENoZWNrTmV1dGVyZWQgbmVlZHMgdG8gY2xhaW0gaXQgcmVhZHMgSlNUeXBl
IGluIGNsb2JiZXJpemUuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5nZUxvZyBiL1NvdXJj
ZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDQzZTAzNWFmMWM1OTA3YjE5ODBhZDc0NDQ0OGVmNDZlNTZl
MDJlOWEuLmYyMTNmM2I4NzlkZTdlZGNmYmM4NWZmMjY1OTE1ODYyMjBiMThmMzEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTQgQEAKKzIwMjAtMDEtMTMgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNv
bT4KKworICAgICAgICBFbmFibGUgLVdjb25kaXRpb25hbC11bmluaXRpYWxpemVkIGluIGJtYWxs
b2MsIFdURiwgSmF2YVNjcmlwdENvcmUKKyAgICAgICAgPGh0dHBzOi8vd2Via2l0Lm9yZy9iLzIw
NjE5MD4KKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU4NTQwMzg3PgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54
Y2NvbmZpZzoKKyAgICAgICAgKFdBUk5JTkdfQ0ZMQUdTKTogQWRkIC1XY29uZGl0aW9uYWwtdW5p
bml0aWFsaXplZC4KKwogMjAyMC0wMS0xMiAgU2FtIFdlaW5pZyAgPHdlaW5pZ0BhcHBsZS5jb20+
CiAKICAgICAgICAgUGxhdGZvcm0uaCBpcyBvdXQgb2YgY29udHJvbCBQYXJ0IDI6IFNwbGl0IFdU
Rl9PU18qIG1hY3JvIGRlZmluaXRpb25zIG91dCBvZiBQbGF0Zm9ybS5oIGFuZCBpbnRvIGEgbmV3
IE9TLmgKZGlmZiAtLWdpdCBhL1NvdXJjZS9ibWFsbG9jL0NoYW5nZUxvZyBiL1NvdXJjZS9ibWFs
bG9jL0NoYW5nZUxvZwppbmRleCAzOWNiZjVjMmVhMmE4YTU1ZTIxMGUwYjU0YzIwYjllNzQxM2Ey
OTk3Li44NzUxMTZiN2ZmNzNjMGU4M2M4NzVkNjc1NTRkOGRlZDZhNzExNjBhIDEwMDY0NAotLS0g
YS9Tb3VyY2UvYm1hbGxvYy9DaGFuZ2VMb2cKKysrIGIvU291cmNlL2JtYWxsb2MvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMTQgQEAKKzIwMjAtMDEtMTMgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFw
cGxlLmNvbT4KKworICAgICAgICBFbmFibGUgLVdjb25kaXRpb25hbC11bmluaXRpYWxpemVkIGlu
IGJtYWxsb2MsIFdURiwgSmF2YVNjcmlwdENvcmUKKyAgICAgICAgPGh0dHBzOi8vd2Via2l0Lm9y
Zy9iLzIwNjE5MD4KKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU4NTQwMzg3PgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogQ29uZmlndXJhdGlvbnMv
QmFzZS54Y2NvbmZpZzoKKyAgICAgICAgKFdBUk5JTkdfQ0ZMQUdTKTogQWRkIC1XY29uZGl0aW9u
YWwtdW5pbml0aWFsaXplZC4KKwogMjAyMC0wMS0wOSAgQmFzdWtlIFN1enVraSAgPGJhc3VrZS5z
dXp1a2lAc29ueS5jb20+CiAKICAgICAgICAgW2JtYWxsb2NdIEV4dHJhY3QgY29uc3RhbnRzIGZy
b20gSGVhcCBhbmQgc2hhcmUgaXQgYW1vbmcgSGVhcHMuCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9Db25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnCmluZGV4IDVlMjEwY2U1NWVhMjQ4
OTMyODQ4YmNlNjZiNDgxYjEyNDZiYmUzMTUuLmU5ZWQwNGM2ZWIyYWQwY2EyMDk0MTY4OTEyNWRh
YWFjZWM2NGI1MzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9Db25maWd1cmF0
aW9ucy9CYXNlLnhjY29uZmlnCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9Db25maWd1cmF0
aW9ucy9CYXNlLnhjY29uZmlnCkBAIC05OCw3ICs5OCw3IEBAIEdDQ19XQVJOX1VOVVNFRF9GVU5D
VElPTiA9IFlFUzsKIEdDQ19XQVJOX1VOVVNFRF9WQVJJQUJMRSA9IFlFUzsKIENMQU5HX1dBUk5f
RE9DVU1FTlRBVElPTl9DT01NRU5UUyA9IFlFUzsKIFBSRUJJTkRJTkcgPSBOTzsKLVdBUk5JTkdf
Q0ZMQUdTID0gLVdhbGwgLVdleHRyYSAtV2Nhc3QtcXVhbCAtV2NoYXItc3Vic2NyaXB0cyAtV2V4
dHJhLXRva2VucyAtV2Zvcm1hdD0yIC1XaW5pdC1zZWxmIC1XbWlzc2luZy1mb3JtYXQtYXR0cmli
dXRlIC1XbWlzc2luZy1ub3JldHVybiAtV3BhY2tlZCAtV3BvaW50ZXItYXJpdGggLVdyZWR1bmRh
bnQtZGVjbHMgLVd1bmRlZiAtV3dyaXRlLXN0cmluZ3MgLVdleGl0LXRpbWUtZGVzdHJ1Y3RvcnMg
LVdnbG9iYWwtY29uc3RydWN0b3JzIC1XdGF1dG9sb2dpY2FsLWNvbXBhcmUgLVdpbXBsaWNpdC1m
YWxsdGhyb3VnaDsKK1dBUk5JTkdfQ0ZMQUdTID0gLVdhbGwgLVdleHRyYSAtV2Nhc3QtcXVhbCAt
V2NoYXItc3Vic2NyaXB0cyAtV2NvbmRpdGlvbmFsLXVuaW5pdGlhbGl6ZWQgLVdleHRyYS10b2tl
bnMgLVdmb3JtYXQ9MiAtV2luaXQtc2VsZiAtV21pc3NpbmctZm9ybWF0LWF0dHJpYnV0ZSAtV21p
c3Npbmctbm9yZXR1cm4gLVdwYWNrZWQgLVdwb2ludGVyLWFyaXRoIC1XcmVkdW5kYW50LWRlY2xz
IC1XdW5kZWYgLVd3cml0ZS1zdHJpbmdzIC1XZXhpdC10aW1lLWRlc3RydWN0b3JzIC1XZ2xvYmFs
LWNvbnN0cnVjdG9ycyAtV3RhdXRvbG9naWNhbC1jb21wYXJlIC1XaW1wbGljaXQtZmFsbHRocm91
Z2g7CiAKIEhFQURFUl9TRUFSQ0hfUEFUSFMgPSAuICIke0JVSUxUX1BST0RVQ1RTX0RJUn0vdXNy
L2xvY2FsL2luY2x1ZGUiICQoSEVBREVSX1NFQVJDSF9QQVRIUyk7CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM0xvd2VyVG9BaXIuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2IzL0IzTG93ZXJUb0Fpci5jcHAKaW5kZXggMTU3NDA5ZTkzZDYzYWZhYTdmNTI1YmNm
Y2Y0NGU3NzgyY2IzNzNiMS4uOTg3NGUxNjczZTA4ZmIyMWYzN2I0ZDI3NGVlOTg3YmI3YzQ4MjZk
YyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzTG93ZXJUb0Fpci5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzTG93ZXJUb0Fpci5jcHAKQEAgLTIyODgs
NyArMjI4OCw3IEBAIHByaXZhdGU6CiAgICAgICAgICAgICBmYWlsQmxvY2sgPSBuZXdCbG9jaygp
OwogICAgICAgICAgICAgZmFpbHVyZSA9IGZhaWxCbG9jazsKICAgICAgICAgfQotICAgICAgICBB
aXI6OkJhc2ljQmxvY2sqIHN0cm9uZ0ZhaWxCbG9jazsKKyAgICAgICAgQWlyOjpCYXNpY0Jsb2Nr
KiBzdHJvbmdGYWlsQmxvY2sgPSBudWxscHRyOwogICAgICAgICBpZiAoaXNTdHJvbmcgJiYgaGFz
RmVuY2UpCiAgICAgICAgICAgICBzdHJvbmdGYWlsQmxvY2sgPSBuZXdCbG9jaygpOwogICAgICAg
ICBBaXI6OkZyZXF1ZW50ZWRCbG9jayBjb21wYXJpc29uRmFpbCA9IGZhaWx1cmU7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvdGVzdGIzXzQuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2IzL3Rlc3RiM180LmNwcAppbmRleCAzNjRkMjgwZGM2YzE4OWQ2ZmIwYTk2MmVh
NDBhMDllYTQ2NzUyOTZlLi41NDQzODA2NzExODIyOTVjMjBhM2E2OTZlOGMyOTU1Zjg2MDRjYTZj
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvdGVzdGIzXzQuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy90ZXN0YjNfNC5jcHAKQEAgLTg0Nyw4ICs4NDcsOCBA
QCB2b2lkIHRlc3RMb2FkQWRkclNoaWZ0KHVuc2lnbmVkIHNoaWZ0KQogICAgIGludCBzbG90c1sy
XTsKIAogICAgIC8vIEZpZ3VyZSBvdXQgd2hpY2ggc2xvdCB0byB1c2Ugd2hpbGUgaGF2aW5nIHBy
b3BlciBhbGlnbm1lbnQgZm9yIHRoZSBzaGlmdC4KLSAgICBpbnQqIHNsb3Q7Ci0gICAgdWludHB0
cl90IGFyZzsKKyAgICBpbnQqIHNsb3QgPSBudWxscHRyOworICAgIHVpbnRwdHJfdCBhcmcgPSAw
OwogICAgIGZvciAodW5zaWduZWQgaSA9IHNpemVvZihzbG90cykvc2l6ZW9mKHNsb3RzWzBdKTsg
aS0tOykgewogICAgICAgICBzbG90ID0gc2xvdHMgKyBpOwogICAgICAgICBhcmcgPSBiaXR3aXNl
X2Nhc3Q8dWludHB0cl90PihzbG90KSA+PiBzaGlmdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9mdGwvRlRMTG93ZXJERkdUb0IzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9mdGwvRlRMTG93ZXJERkdUb0IzLmNwcAppbmRleCBkOTg0NTRlNTUxOTU2Mzg5M2EyZDgwYTUx
ZGVmMjM1M2UyYTg4MjY5Li44NTRkNGYxMjk4OTE1OTE3MDk4YzkzZjkxNzAzMTA3ODY3YmFkZWYy
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTExvd2VyREZHVG9CMy5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9GVExMb3dlckRGR1RvQjMuY3BwCkBA
IC0zNDA3LDExICszNDA3LDEwIEBAIHByaXZhdGU6CiAKICAgICAgICAgTFZhbHVlIGNlbGwgPSBs
b3dDZWxsKG1fbm9kZS0+Y2hpbGQxKCkpOwogICAgICAgICBib29sIG1heVNlZUVtcHR5VmFsdWUg
PSBtX2ludGVycHJldGVyLmZvck5vZGUobV9ub2RlLT5jaGlsZDEoKSkubV90eXBlICYgU3BlY0Vt
cHR5OwotICAgICAgICBMQmFzaWNCbG9jayBub3RFbXB0eTsKLSAgICAgICAgTEJhc2ljQmxvY2sg
Y29udGludWF0aW9uOwotICAgICAgICBMQmFzaWNCbG9jayBsYXN0TmV4dDsKKyAgICAgICAgTEJh
c2ljQmxvY2sgY29udGludWF0aW9uID0gbnVsbHB0cjsKKyAgICAgICAgTEJhc2ljQmxvY2sgbGFz
dE5leHQgPSBudWxscHRyOwogICAgICAgICBpZiAobWF5U2VlRW1wdHlWYWx1ZSkgewotICAgICAg
ICAgICAgbm90RW1wdHkgPSBtX291dC5uZXdCbG9jaygpOworICAgICAgICAgICAgTEJhc2ljQmxv
Y2sgbm90RW1wdHkgPSBtX291dC5uZXdCbG9jaygpOwogICAgICAgICAgICAgY29udGludWF0aW9u
ID0gbV9vdXQubmV3QmxvY2soKTsKICAgICAgICAgICAgIG1fb3V0LmJyYW5jaChtX291dC5pc1pl
cm82NChjZWxsKSwgdW5zdXJlKGNvbnRpbnVhdGlvbiksIHVuc3VyZShub3RFbXB0eSkpOwogICAg
ICAgICAgICAgbGFzdE5leHQgPSBtX291dC5hcHBlbmRUbyhub3RFbXB0eSwgY29udGludWF0aW9u
KTsKQEAgLTEzMjg1LDcgKzEzMjg0LDcgQEAgcHJpdmF0ZToKICAgICAgICAgTFZhbHVlIGJhc2Ug
PSBsb3dDZWxsKGJhc2VFZGdlKTsKICAgICAgICAgSlNWYWx1ZSBiYXNlQ29uc3RhbnQgPSBtX3N0
YXRlLmZvck5vZGUoYmFzZUVkZ2UpLnZhbHVlKCk7CiAKLSAgICAgICAgTFZhbHVlIGdsb2JhbE9i
amVjdDsKKyAgICAgICAgTFZhbHVlIGdsb2JhbE9iamVjdCA9IG51bGxwdHI7CiAgICAgICAgIEpT
VmFsdWUgZ2xvYmFsT2JqZWN0Q29uc3RhbnQ7CiAgICAgICAgIGlmIChkb21KSVQtPnJlcXVpcmVH
bG9iYWxPYmplY3QpIHsKICAgICAgICAgICAgIEVkZ2UmIGdsb2JhbE9iamVjdEVkZ2UgPSBtX25v
ZGUtPmNoaWxkMigpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9GVExU
aHVua3MuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9GVExUaHVua3MuY3BwCmluZGV4
IGU0Mjk0NTM3MzgxY2Y2OTFiZWM2MmYwZTFhZmJhZTliZGRkZTRkZjIuLjA3OGQxMjg1NTc1NDlk
ODMyZWQ0ODgyODFmY2U2Yzc5MmNjYmYzM2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9mdGwvRlRMVGh1bmtzLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZU
TFRodW5rcy5jcHAKQEAgLTE1NCw3ICsxNTQsNyBAQCBzdGF0aWMgdm9pZCByZWdpc3RlckNsb2Ji
ZXJDaGVjayhBc3NlbWJseUhlbHBlcnMmIGppdCwgUmVnaXN0ZXJTZXQgZG9udENsb2JiZXIpCiAg
ICAgY2xvYmJlci5leGNsdWRlKFJlZ2lzdGVyU2V0OjpjYWxsZWVTYXZlUmVnaXN0ZXJzKCkpOwog
ICAgIGNsb2JiZXIuZXhjbHVkZShkb250Q2xvYmJlcik7CiAgICAgCi0gICAgR1BSUmVnIHNvbWVH
UFI7CisgICAgR1BSUmVnIHNvbWVHUFIgPSBJbnZhbGlkR1BSUmVnOwogICAgIGZvciAoUmVnIHJl
ZyA9IFJlZzo6Zmlyc3QoKTsgcmVnIDw9IFJlZzo6bGFzdCgpOyByZWcgPSByZWcubmV4dCgpKSB7
CiAgICAgICAgIGlmICghY2xvYmJlci5nZXQocmVnKSB8fCAhcmVnLmlzR1BSKCkpCiAgICAgICAg
ICAgICBjb250aW51ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93YXNtL1dh
c21GdW5jdGlvblBhcnNlci5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUZ1bmN0
aW9uUGFyc2VyLmgKaW5kZXggNzIzYTAzMzBkMzkwMTU5YjhmOTZhYzZiOTM5NTUwODg3MjM0ZjQ1
MC4uNGUxZWMyMDljMTJhZTE5NzhhMWZhNWY4OWM2MDEzMDA3YWU3NTQ3NyAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUZ1bmN0aW9uUGFyc2VyLmgKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3dhc20vV2FzbUZ1bmN0aW9uUGFyc2VyLmgKQEAgLTIxNCw3ICsy
MTQsNyBAQCB0ZW1wbGF0ZTx0eXBlbmFtZSBDb250ZXh0PgogYXV0byBGdW5jdGlvblBhcnNlcjxD
b250ZXh0Pjo6cGFyc2VCb2R5KCkgLT4gUGFydGlhbFJlc3VsdAogewogICAgIG1fY29udHJvbFN0
YWNrLmFwcGVuZCh7IHsgfSwgeyB9LCBtX2NvbnRleHQuYWRkVG9wTGV2ZWwoJm1fc2lnbmF0dXJl
KSB9KTsKLSAgICB1aW50OF90IG9wOworICAgIHVpbnQ4X3Qgb3AgPSAwOwogICAgIHdoaWxlICht
X2NvbnRyb2xTdGFjay5zaXplKCkpIHsKICAgICAgICAgbV9jdXJyZW50T3Bjb2RlU3RhcnRpbmdP
ZmZzZXQgPSBtX29mZnNldDsKICAgICAgICAgV0FTTV9QQVJTRVJfRkFJTF9JRighcGFyc2VVSW50
OChvcCksICJjYW4ndCBkZWNvZGUgb3Bjb2RlIik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvd2FzbS9qcy9XZWJBc3NlbWJseVRhYmxlUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5VGFibGVQcm90b3R5cGUuY3BwCmluZGV4
IGQxNjhmMzE4OTgzMGY0MTJhYWEwZGM0N2QzNjBmMjhlZDBjZjQwOTguLjk3ODkxODZiMmRkY2Mz
NDJmZGRiMDgzNTNlMWVlZWQxOTY4NWE3ZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5VGFibGVQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS93YXNtL2pzL1dlYkFzc2VtYmx5VGFibGVQcm90b3R5cGUuY3BwCkBAIC0x
MjksOCArMTI5LDggQEAgc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgd2ViQXNz
ZW1ibHlUYWJsZVByb3RvRnVuY1NldChKU0dsb2JhbE9iamVjdCoKICAgICAgICAgcmV0dXJuIEpT
VmFsdWU6OmVuY29kZSh0aHJvd0V4Y2VwdGlvbihnbG9iYWxPYmplY3QsIHRocm93U2NvcGUsIGNy
ZWF0ZVJhbmdlRXJyb3IoZ2xvYmFsT2JqZWN0LCAiV2ViQXNzZW1ibHkuVGFibGUucHJvdG90eXBl
LnNldCBleHBlY3RzIGFuIGludGVnZXIgbGVzcyB0aGFuIHRoZSBsZW5ndGggb2YgdGhlIHRhYmxl
Il9zKSkpOwogCiAgICAgaWYgKHRhYmxlLT50YWJsZSgpLT5hc0Z1bmNyZWZUYWJsZSgpKSB7Ci0g
ICAgICAgIFdlYkFzc2VtYmx5RnVuY3Rpb24qIHdhc21GdW5jdGlvbjsKLSAgICAgICAgV2ViQXNz
ZW1ibHlXcmFwcGVyRnVuY3Rpb24qIHdhc21XcmFwcGVyRnVuY3Rpb247CisgICAgICAgIFdlYkFz
c2VtYmx5RnVuY3Rpb24qIHdhc21GdW5jdGlvbiA9IG51bGxwdHI7CisgICAgICAgIFdlYkFzc2Vt
Ymx5V3JhcHBlckZ1bmN0aW9uKiB3YXNtV3JhcHBlckZ1bmN0aW9uID0gbnVsbHB0cjsKICAgICAg
ICAgaWYgKCF2YWx1ZS5pc051bGwoKSAmJiAhaXNXZWJBc3NlbWJseUhvc3RGdW5jdGlvbih2bSwg
dmFsdWUsIHdhc21GdW5jdGlvbiwgd2FzbVdyYXBwZXJGdW5jdGlvbikpCiAgICAgICAgICAgICBy
ZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHRocm93RXhjZXB0aW9uKGdsb2JhbE9iamVjdCwgdGhyb3dT
Y29wZSwgY3JlYXRlVHlwZUVycm9yKGdsb2JhbE9iamVjdCwgIldlYkFzc2VtYmx5LlRhYmxlLnBy
b3RvdHlwZS5zZXQgZXhwZWN0cyB0aGUgc2Vjb25kIGFyZ3VtZW50IHRvIGJlIG51bGwgb3IgYW4g
aW5zdGFuY2Ugb2YgV2ViQXNzZW1ibHkuRnVuY3Rpb24iX3MpKSk7CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XVEYvQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZyBiL1NvdXJjZS9XVEYvQ29uZmln
dXJhdGlvbnMvQmFzZS54Y2NvbmZpZwppbmRleCA0NTg0ZTRhMTNkMzJmZTY4NzRjMGQ4M2Q5ZTg2
Mjc5ZjNlMmU1NzJkLi5hY2I0OGViOWYxMjNkMDVhYTdkMGFmNWM3NmQ1MzM3NWU3YTgwMzQ2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV1RGL0NvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWcKKysrIGIv
U291cmNlL1dURi9Db25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnCkBAIC05Nyw3ICs5Nyw3IEBA
IEdDQ19XQVJOX1VOSU5JVElBTElaRURfQVVUT1MgPSBZRVM7CiBHQ0NfV0FSTl9VTlVTRURfRlVO
Q1RJT04gPSBZRVM7CiBHQ0NfV0FSTl9VTlVTRURfVkFSSUFCTEUgPSBZRVM7CiBQUkVCSU5ESU5H
ID0gTk87Ci1XQVJOSU5HX0NGTEFHUyA9IC1XYWxsIC1XZXh0cmEgLVdjYXN0LXF1YWwgLVdjaGFy
LXN1YnNjcmlwdHMgLVdleHRyYS10b2tlbnMgLVdmb3JtYXQ9MiAtV2luaXQtc2VsZiAtV21pc3Np
bmctZm9ybWF0LWF0dHJpYnV0ZSAtV21pc3Npbmctbm9yZXR1cm4gLVdwYWNrZWQgLVdwb2ludGVy
LWFyaXRoIC1XcmVkdW5kYW50LWRlY2xzIC1XdW5kZWYgLVd3cml0ZS1zdHJpbmdzIC1XZXhpdC10
aW1lLWRlc3RydWN0b3JzIC1XZ2xvYmFsLWNvbnN0cnVjdG9ycyAtV3RhdXRvbG9naWNhbC1jb21w
YXJlIC1XaW1wbGljaXQtZmFsbHRocm91Z2g7CitXQVJOSU5HX0NGTEFHUyA9IC1XYWxsIC1XZXh0
cmEgLVdjYXN0LXF1YWwgLVdjaGFyLXN1YnNjcmlwdHMgLVdjb25kaXRpb25hbC11bmluaXRpYWxp
emVkIC1XZXh0cmEtdG9rZW5zIC1XZm9ybWF0PTIgLVdpbml0LXNlbGYgLVdtaXNzaW5nLWZvcm1h
dC1hdHRyaWJ1dGUgLVdtaXNzaW5nLW5vcmV0dXJuIC1XcGFja2VkIC1XcG9pbnRlci1hcml0aCAt
V3JlZHVuZGFudC1kZWNscyAtV3VuZGVmIC1Xd3JpdGUtc3RyaW5ncyAtV2V4aXQtdGltZS1kZXN0
cnVjdG9ycyAtV2dsb2JhbC1jb25zdHJ1Y3RvcnMgLVd0YXV0b2xvZ2ljYWwtY29tcGFyZSAtV2lt
cGxpY2l0LWZhbGx0aHJvdWdoOwogSEVBREVSX1NFQVJDSF9QQVRIUyA9ICQoQlVJTFRfUFJPRFVD
VFNfRElSKSQoV1RGX0lOU1RBTExfUEFUSF9QUkVGSVgpL3Vzci9sb2NhbC9pbmNsdWRlICQoRFNU
Uk9PVCkkKFdURl9JTlNUQUxMX1BBVEhfUFJFRklYKS91c3IvbG9jYWwvaW5jbHVkZSAkKGluaGVy
aXRlZCk7CiBTWVNURU1fSEVBREVSX1NFQVJDSF9QQVRIUyA9ICQoU0RLX0RJUikkKFdURl9JTlNU
QUxMX1BBVEhfUFJFRklYKS91c3IvbG9jYWwvaW5jbHVkZSAkKGluaGVyaXRlZCk7CiBMSUJSQVJZ
X1NFQVJDSF9QQVRIUyA9ICQoU0RLX0RJUikkKFdURl9JTlNUQUxMX1BBVEhfUFJFRklYKS91c3Iv
bG9jYWwvbGliICQoaW5oZXJpdGVkKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9ibWFsbG9jL0NvbmZp
Z3VyYXRpb25zL0Jhc2UueGNjb25maWcgYi9Tb3VyY2UvYm1hbGxvYy9Db25maWd1cmF0aW9ucy9C
YXNlLnhjY29uZmlnCmluZGV4IDNjYTE1ZDM5MGVlNTU4MTdiMzdhZWFjY2Y3MmMwYTA1YzBjNmVm
Y2QuLmQ0MGIyZWUwYjQxNjE0NWNiOTE4MDg1ZTE5NGFhYWY3MDRhOTUyZmQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9ibWFsbG9jL0NvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWcKKysrIGIvU291cmNl
L2JtYWxsb2MvQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZwpAQCAtOTQsNyArOTQsNyBAQCBH
Q0NfV0FSTl9VTklOSVRJQUxJWkVEX0FVVE9TID0gWUVTOwogR0NDX1dBUk5fVU5VU0VEX0ZVTkNU
SU9OID0gWUVTOwogR0NDX1dBUk5fVU5VU0VEX1ZBUklBQkxFID0gWUVTOwogUFJFQklORElORyA9
IE5POwotV0FSTklOR19DRkxBR1MgPSAtV2FsbCAtV2V4dHJhIC1XY2FzdC1xdWFsIC1XY2hhci1z
dWJzY3JpcHRzIC1XZXh0cmEtdG9rZW5zIC1XZm9ybWF0PTIgLVdpbml0LXNlbGYgLVdtaXNzaW5n
LWZvcm1hdC1hdHRyaWJ1dGUgLVdtaXNzaW5nLW5vcmV0dXJuIC1XcGFja2VkIC1XcG9pbnRlci1h
cml0aCAtV3JlZHVuZGFudC1kZWNscyAtV3VuZGVmIC1Xd3JpdGUtc3RyaW5ncyAtV2V4aXQtdGlt
ZS1kZXN0cnVjdG9ycyAtV2dsb2JhbC1jb25zdHJ1Y3RvcnMgLVd0YXV0b2xvZ2ljYWwtY29tcGFy
ZSAtV2ltcGxpY2l0LWZhbGx0aHJvdWdoOworV0FSTklOR19DRkxBR1MgPSAtV2FsbCAtV2V4dHJh
IC1XY2FzdC1xdWFsIC1XY2hhci1zdWJzY3JpcHRzIC1XY29uZGl0aW9uYWwtdW5pbml0aWFsaXpl
ZCAtV2V4dHJhLXRva2VucyAtV2Zvcm1hdD0yIC1XaW5pdC1zZWxmIC1XbWlzc2luZy1mb3JtYXQt
YXR0cmlidXRlIC1XbWlzc2luZy1ub3JldHVybiAtV3BhY2tlZCAtV3BvaW50ZXItYXJpdGggLVdy
ZWR1bmRhbnQtZGVjbHMgLVd1bmRlZiAtV3dyaXRlLXN0cmluZ3MgLVdleGl0LXRpbWUtZGVzdHJ1
Y3RvcnMgLVdnbG9iYWwtY29uc3RydWN0b3JzIC1XdGF1dG9sb2dpY2FsLWNvbXBhcmUgLVdpbXBs
aWNpdC1mYWxsdGhyb3VnaDsKIAogVEFSR0VUX01BQ19PU19YX1ZFUlNJT05fTUFKT1IgPSAkKFRB
UkdFVF9NQUNfT1NfWF9WRVJTSU9OX01BSk9SJChNQUNPU1hfREVQTE9ZTUVOVF9UQVJHRVQ6c3Vm
Zml4OmlkZW50aWZpZXIpKTsKIFRBUkdFVF9NQUNfT1NfWF9WRVJTSU9OX01BSk9SXzEzID0gMTAx
MzAwOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>