<?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>192723</bug_id>
          
          <creation_ts>2018-12-14 16:16:03 -0800</creation_ts>
          <short_desc>[BigInt] We should enable CSE into arithmetic operations that speculate BigIntUse</short_desc>
          <delta_ts>2018-12-20 03:59:14 -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>
          
          
          <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>
          <dependson>192921</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Caio Lima">ticaiolima</reporter>
          <assigned_to name="Caio Lima">ticaiolima</assigned_to>
          <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>rniwa</cc>
    
    <cc>ryanhaddad</cc>
    
    <cc>saam</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1488094</commentid>
    <comment_count>0</comment_count>
    <who name="Caio Lima">ticaiolima</who>
    <bug_when>2018-12-14 16:16:03 -0800</bug_when>
    <thetext>Now, our rules for ValueArith nodes are conservative and we don&apos;t allow CSE. In the case of SpecBigInt, we can be less conservative and allow CSE.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1488417</commentid>
    <comment_count>1</comment_count>
      <attachid>357436</attachid>
    <who name="Caio Lima">ticaiolima</who>
    <bug_when>2018-12-17 05:51:11 -0800</bug_when>
    <thetext>Created attachment 357436
Proposed Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1489236</commentid>
    <comment_count>2</comment_count>
      <attachid>357436</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2018-12-18 23:33:14 -0800</bug_when>
    <thetext>Comment on attachment 357436
Proposed Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1489271</commentid>
    <comment_count>3</comment_count>
      <attachid>357436</attachid>
    <who name="Caio Lima">ticaiolima</who>
    <bug_when>2018-12-19 03:47:00 -0800</bug_when>
    <thetext>Comment on attachment 357436
Proposed Patch

Thank you very much for the review.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1489273</commentid>
    <comment_count>4</comment_count>
      <attachid>357436</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-12-19 04:12:45 -0800</bug_when>
    <thetext>Comment on attachment 357436
Proposed Patch

Clearing flags on attachment: 357436

Committed r239377: &lt;https://trac.webkit.org/changeset/239377&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1489274</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-12-19 04:12:47 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1489275</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-12-19 04:13:38 -0800</bug_when>
    <thetext>&lt;rdar://problem/46838118&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1489636</commentid>
    <comment_count>7</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2018-12-19 17:39:14 -0800</bug_when>
    <thetext>It looks like this change caused 35 JSC tests to fail an assertion:

 ASSERTION FAILED: node()
 /Volumes/Data/slave/highsierra-debug/build/Source/JavaScriptCore/dfg/DFGEdge.h(82) : JSC::DFG::UseKind JSC::DFG::Edge::useKind() const
 1   0x101610ec9 WTFCrash
 2   0x101611ebb WTFCrashWithInfo(int, char const*, char const*, int)
 3   0x10175245d JSC::DFG::Edge::useKind() const
 4   0x10176ff95 JSC::DFG::Node::binaryUseKind()
 5   0x102507d39 JSC::DFG::StrengthReductionPhase::handleNode()
 6   0x10250656f JSC::DFG::StrengthReductionPhase::run()
 7   0x102506351 bool JSC::DFG::runAndLog&lt;JSC::DFG::StrengthReductionPhase&gt;(JSC::DFG::StrengthReductionPhase&amp;)
 8   0x1024fe72e bool JSC::DFG::runPhase&lt;JSC::DFG::StrengthReductionPhase&gt;(JSC::DFG::Graph&amp;)
 9   0x1024fe6f5 JSC::DFG::performStrengthReduction(JSC::DFG::Graph&amp;)
 10  0x10249a9d7 JSC::DFG::Plan::compileInThreadImpl()
 11  0x102499112 JSC::DFG::Plan::compileInThread(JSC::DFG::ThreadData*)
 12  0x1022e21fe JSC::DFG::compileImpl(JSC::VM&amp;, JSC::CodeBlock*, JSC::CodeBlock*, JSC::DFG::CompilationMode, unsigned int, JSC::Operands&lt;JSC::JSValue&gt; const&amp;, WTF::Ref&lt;JSC::DeferredCompilationCallback, WTF::DumbPtrTraits&lt;JSC::DeferredCompilationCallback&gt; &gt;&amp;&amp;)
 13  0x1022e1c9f JSC::DFG::compile(JSC::VM&amp;, JSC::CodeBlock*, JSC::CodeBlock*, JSC::DFG::CompilationMode, unsigned int, JSC::Operands&lt;JSC::JSValue&gt; const&amp;, WTF::Ref&lt;JSC::DeferredCompilationCallback, WTF::DumbPtrTraits&lt;JSC::DeferredCompilationCallback&gt; &gt;&amp;&amp;)
 14  0x1027dd5cc operationOptimize
 15  0x5e89e90e72b
 16  0x101b012c9 vmEntryToJavaScript
 17  0x1027561de JSC::JITCode::execute(JSC::VM*, JSC::ProtoCallFrame*)
 18  0x10275576f JSC::Interpreter::executeProgram(JSC::SourceCode const&amp;, JSC::ExecState*, JSC::JSObject*)
 19  0x102a4f385 JSC::evaluate(JSC::ExecState*, JSC::SourceCode const&amp;, JSC::JSValue, WTF::NakedPtr&lt;JSC::Exception&gt;&amp;)
 20  0x101545cfb runWithOptions(GlobalObject*, CommandLine&amp;, bool&amp;)
 21  0x10151d31a jscmain(int, char**)::$_6::operator()(JSC::VM&amp;, GlobalObject*, bool&amp;) const
 22  0x101500954 int runJSC&lt;jscmain(int, char**)::$_6&gt;(CommandLine const&amp;, bool, jscmain(int, char**)::$_6 const&amp;)
 23  0x1014ff0e7 jscmain(int, char**)
 24  0x1014fef4e main
 25  0x7fff62e41015 start
 26  0xc

https://build.webkit.org/builders/Apple%20High%20Sierra%20Debug%20JSC%20%28Tests%29/builds/1926/steps/jscore-test/logs/stdio</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1489648</commentid>
    <comment_count>8</comment_count>
    <who name="Caio Lima">ticaiolima</who>
    <bug_when>2018-12-19 17:55:31 -0800</bug_when>
    <thetext>I&apos;m looking into that now. 
(In reply to Ryan Haddad from comment #7)
&gt; It looks like this change caused 35 JSC tests to fail an assertion:
&gt; 
&gt;  ASSERTION FAILED: node()
&gt;  /Volumes/Data/slave/highsierra-debug/build/Source/JavaScriptCore/dfg/
&gt; DFGEdge.h(82) : JSC::DFG::UseKind JSC::DFG::Edge::useKind() const
&gt;  1   0x101610ec9 WTFCrash
&gt;  2   0x101611ebb WTFCrashWithInfo(int, char const*, char const*, int)
&gt;  3   0x10175245d JSC::DFG::Edge::useKind() const
&gt;  4   0x10176ff95 JSC::DFG::Node::binaryUseKind()
&gt;  5   0x102507d39 JSC::DFG::StrengthReductionPhase::handleNode()
&gt;  6   0x10250656f JSC::DFG::StrengthReductionPhase::run()
&gt;  7   0x102506351 bool
&gt; JSC::DFG::runAndLog&lt;JSC::DFG::StrengthReductionPhase&gt;(JSC::DFG::
&gt; StrengthReductionPhase&amp;)
&gt;  8   0x1024fe72e bool
&gt; JSC::DFG::runPhase&lt;JSC::DFG::StrengthReductionPhase&gt;(JSC::DFG::Graph&amp;)
&gt;  9   0x1024fe6f5 JSC::DFG::performStrengthReduction(JSC::DFG::Graph&amp;)
&gt;  10  0x10249a9d7 JSC::DFG::Plan::compileInThreadImpl()
&gt;  11  0x102499112 JSC::DFG::Plan::compileInThread(JSC::DFG::ThreadData*)
&gt;  12  0x1022e21fe JSC::DFG::compileImpl(JSC::VM&amp;, JSC::CodeBlock*,
&gt; JSC::CodeBlock*, JSC::DFG::CompilationMode, unsigned int,
&gt; JSC::Operands&lt;JSC::JSValue&gt; const&amp;,
&gt; WTF::Ref&lt;JSC::DeferredCompilationCallback,
&gt; WTF::DumbPtrTraits&lt;JSC::DeferredCompilationCallback&gt; &gt;&amp;&amp;)
&gt;  13  0x1022e1c9f JSC::DFG::compile(JSC::VM&amp;, JSC::CodeBlock*,
&gt; JSC::CodeBlock*, JSC::DFG::CompilationMode, unsigned int,
&gt; JSC::Operands&lt;JSC::JSValue&gt; const&amp;,
&gt; WTF::Ref&lt;JSC::DeferredCompilationCallback,
&gt; WTF::DumbPtrTraits&lt;JSC::DeferredCompilationCallback&gt; &gt;&amp;&amp;)
&gt;  14  0x1027dd5cc operationOptimize
&gt;  15  0x5e89e90e72b
&gt;  16  0x101b012c9 vmEntryToJavaScript
&gt;  17  0x1027561de JSC::JITCode::execute(JSC::VM*, JSC::ProtoCallFrame*)
&gt;  18  0x10275576f JSC::Interpreter::executeProgram(JSC::SourceCode const&amp;,
&gt; JSC::ExecState*, JSC::JSObject*)
&gt;  19  0x102a4f385 JSC::evaluate(JSC::ExecState*, JSC::SourceCode const&amp;,
&gt; JSC::JSValue, WTF::NakedPtr&lt;JSC::Exception&gt;&amp;)
&gt;  20  0x101545cfb runWithOptions(GlobalObject*, CommandLine&amp;, bool&amp;)
&gt;  21  0x10151d31a jscmain(int, char**)::$_6::operator()(JSC::VM&amp;,
&gt; GlobalObject*, bool&amp;) const
&gt;  22  0x101500954 int runJSC&lt;jscmain(int, char**)::$_6&gt;(CommandLine const&amp;,
&gt; bool, jscmain(int, char**)::$_6 const&amp;)
&gt;  23  0x1014ff0e7 jscmain(int, char**)
&gt;  24  0x1014fef4e main
&gt;  25  0x7fff62e41015 start
&gt;  26  0xc
&gt; 
&gt; https://build.webkit.org/builders/
&gt; Apple%20High%20Sierra%20Debug%20JSC%20%28Tests%29/builds/1926/steps/jscore-
&gt; test/logs/stdio</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1489654</commentid>
    <comment_count>9</comment_count>
    <who name="Caio Lima">ticaiolima</who>
    <bug_when>2018-12-19 18:19:36 -0800</bug_when>
    <thetext>Handling the issue in https://bugs.webkit.org/show_bug.cgi?id=192908</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1489770</commentid>
    <comment_count>10</comment_count>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2018-12-19 23:32:46 -0800</bug_when>
    <thetext>I think we should revert this until we can reland it with a fix. It&apos;s not great to leave failing tests in the tree for an extended period of time.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1489773</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-12-19 23:33:42 -0800</bug_when>
    <thetext>Re-opened since this is blocked by bug 192921</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1489810</commentid>
    <comment_count>12</comment_count>
    <who name="Caio Lima">ticaiolima</who>
    <bug_when>2018-12-20 02:28:44 -0800</bug_when>
    <thetext>*** Bug 192908 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1489811</commentid>
    <comment_count>13</comment_count>
    <who name="Caio Lima">ticaiolima</who>
    <bug_when>2018-12-20 02:32:38 -0800</bug_when>
    <thetext>(In reply to Keith Miller from comment #10)
&gt; I think we should revert this until we can reland it with a fix. It&apos;s not
&gt; great to leave failing tests in the tree for an extended period of time.

Sorry for leaving this so long and thx for the rollback.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1489812</commentid>
    <comment_count>14</comment_count>
      <attachid>357805</attachid>
    <who name="Caio Lima">ticaiolima</who>
    <bug_when>2018-12-20 02:37:51 -0800</bug_when>
    <thetext>Created attachment 357805
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1489813</commentid>
    <comment_count>15</comment_count>
    <who name="Caio Lima">ticaiolima</who>
    <bug_when>2018-12-20 02:40:01 -0800</bug_when>
    <thetext>(In reply to Caio Lima from comment #14)
&gt; Created attachment 357805 [details]
&gt; Patch

The difference from previous version is that we need to avoid execution of &apos;m_node-&gt;binaryUseKind()&apos; after performing String Folding into DFGStrengthReductionPhase.cpp. I added a break into line 375</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1489814</commentid>
    <comment_count>16</comment_count>
      <attachid>357805</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-12-20 02:53:18 -0800</bug_when>
    <thetext>Comment on attachment 357805
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1489815</commentid>
    <comment_count>17</comment_count>
      <attachid>357805</attachid>
    <who name="Caio Lima">ticaiolima</who>
    <bug_when>2018-12-20 03:33:20 -0800</bug_when>
    <thetext>Comment on attachment 357805
Patch

Thank you for the review!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1489817</commentid>
    <comment_count>18</comment_count>
      <attachid>357805</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-12-20 03:59:12 -0800</bug_when>
    <thetext>Comment on attachment 357805
Patch

Clearing flags on attachment: 357805

Committed r239438: &lt;https://trac.webkit.org/changeset/239438&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1489818</commentid>
    <comment_count>19</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-12-20 03:59:14 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>357436</attachid>
            <date>2018-12-17 05:51:11 -0800</date>
            <delta_ts>2018-12-20 02:37:29 -0800</delta_ts>
            <desc>Proposed Patch</desc>
            <filename>bug-192723-20181217115108.patch</filename>
            <type>text/plain</type>
            <size>13382</size>
            <attacher name="Caio Lima">ticaiolima</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM5MjUxCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBh
NzA0NjNmNDZlM2NlZDg2M2Y3NTM5M2MyYjI0MDBlYjFlYTU5ODUwLi42MDQ3YTY1YmViZTFhMTM1
ZTc2NGJiOTNhNDU2NGJhMmZjODJjNTJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzMCBAQAorMjAxOC0xMi0xNyAgQ2FpbyBMaW1hICA8dGljYWlvbGltYUBnbWFpbC5jb20+
CisKKyAgICAgICAgW0JpZ0ludF0gV2Ugc2hvdWxkIGVuYWJsZSBDU0UgaW50byBhcml0aG1ldGlj
IG9wZXJhdGlvbnMgdGhhdCBzcGVjdWxhdGUgQmlnSW50VXNlCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTI3MjMKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBhdGNoIGlzIGFkanVzdGluZyBjbG9i
YmVyaXplIHJ1bGVzIGludG8gVmFsdWVPcCBub2RlcyB0byBlbmFibGUKKyAgICAgICAgbW9yZSBv
cHRpbWl6YXRpb25zIHdoZW4gd2Ugc3BlY3VsYXRlIEJpZ0ludFVzZS4gSW4gc3VjaCBjYXNlLCBE
Rkcgbm93CisgICAgICAgIGlzIGFibGUgdG8gYXBwbHkgQ1NFLCBMSUNNIGFuZCBjb21tdXRhdGl2
aXR5IG9uIG5vZGVzIGxpa2UKKyAgICAgICAgVmFsdWVBZGQoQmlnSW50LCBCaWdJbnQpLCBWYWx1
ZVN1YihCaWdJbnQsIEJpZ0ludCksIGV0Yy4KKworICAgICAgICBIZXJlIGFyZSB0aGUgbnVtYmVy
cyB3ZSBjYW4gb2JzZXJ2ZSB3aXRoIHNvbWUgbWljcm9iZW5jaG1hcmtzOgorCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgYmFzZWxpbmUgICAgICAgICAgICAgICAgIGNoYW5nZXMK
KworICAgICAgICBiaWctaW50LWNzZSAgICAgICAgICAgMTA4LjI3MzMrLTAuODQ0NSAgICBeICAg
IDgwLjk4OTcrLTQuOTc4MSAgIF4gZGVmaW5pdGVseSAxLjMzNjl4IGZhc3RlcgorICAgICAgICBi
aWctaW50LWxpY20gICAgICAgICAgNzUuNjY0MSstMC4zNDc3ICAgICBeICAgIDU3LjgxNDQrLTEu
NjA0MyAgIF4gZGVmaW5pdGVseSAxLjMwODd4IGZhc3RlcgorICAgICAgICBiaWctaW50LWdsb2Jh
bC1jc2UgICAgMTQ1LjM1NTcrLTEuMDU1MiAgICBeICAgIDg2LjU4NjYrLTAuMzAyNSAgIF4gZGVm
aW5pdGVseSAxLjY3ODd4IGZhc3RlcgorCisgICAgICAgICogZGZnL0RGR0Fic3RyYWN0SW50ZXJw
cmV0ZXJJbmxpbmVzLmg6CisgICAgICAgIChKU0M6OkRGRzo6QWJzdHJhY3RJbnRlcnByZXRlcjxB
YnN0cmFjdFN0YXRlVHlwZT46OmV4ZWN1dGVFZmZlY3RzKToKKyAgICAgICAgKiBkZmcvREZHQ2xv
YmJlcml6ZS5oOgorICAgICAgICAoSlNDOjpERkc6OmNsb2JiZXJpemUpOgorICAgICAgICAqIGRm
Zy9ERkdTdHJlbmd0aFJlZHVjdGlvblBoYXNlLmNwcDoKKyAgICAgICAgKEpTQzo6REZHOjpTdHJl
bmd0aFJlZHVjdGlvblBoYXNlOjpoYW5kbGVOb2RlKToKKwogMjAxOC0xMi0xNCAgRGFyaW4gQWRs
ZXIgIDxkYXJpbkBhcHBsZS5jb20+CiAKICAgICAgICAgTGl0ZXJhbFBhcnNlciBoYXMgYSBidW5j
aCBvZiB1c2VzIG9mIFN0cmluZzo6Zm9ybWF0IHdpdGggdW50cnVzdGVkIGRhdGEKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQWJzdHJhY3RJbnRlcnByZXRlcklubGlu
ZXMuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQWJzdHJhY3RJbnRlcnByZXRlcklu
bGluZXMuaAppbmRleCA1ZjVlY2NjMzMwYzIyYmU4YmQ5MWUxYjRjZDdiNzU5NzE0YTBkZDY3Li5j
N2U5ZjdmZmFmYzczNzQ2YmNhNDE1M2IwZjE0YmUxNTMxYTkzZTYzIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0Fic3RyYWN0SW50ZXJwcmV0ZXJJbmxpbmVzLmgKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdBYnN0cmFjdEludGVycHJldGVySW5saW5l
cy5oCkBAIC0zOTYsMTEgKzM5NiwxMiBAQCBib29sIEFic3RyYWN0SW50ZXJwcmV0ZXI8QWJzdHJh
Y3RTdGF0ZVR5cGU+OjpleGVjdXRlRWZmZWN0cyh1bnNpZ25lZCBjbG9iYmVyTGltaQogICAgIGNh
c2UgVmFsdWVCaXRYb3I6CiAgICAgY2FzZSBWYWx1ZUJpdEFuZDoKICAgICBjYXNlIFZhbHVlQml0
T3I6Ci0gICAgICAgIGNsb2JiZXJXb3JsZCgpOwogICAgICAgICBpZiAobm9kZS0+YmluYXJ5VXNl
S2luZCgpID09IEJpZ0ludFVzZSkKICAgICAgICAgICAgIHNldFR5cGVGb3JOb2RlKG5vZGUsIFNw
ZWNCaWdJbnQpOwotICAgICAgICBlbHNlCisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgY2xv
YmJlcldvcmxkKCk7CiAgICAgICAgICAgICBzZXRUeXBlRm9yTm9kZShub2RlLCBTcGVjQm9vbElu
dDMyIHwgU3BlY0JpZ0ludCk7CisgICAgICAgIH0KICAgICAgICAgYnJlYWs7CiAgICAgICAgICAg
ICAKICAgICBjYXNlIEFyaXRoQml0QW5kOgpAQCAtNjEyLDExICs2MTMsMTIgQEAgYm9vbCBBYnN0
cmFjdEludGVycHJldGVyPEFic3RyYWN0U3RhdGVUeXBlPjo6ZXhlY3V0ZUVmZmVjdHModW5zaWdu
ZWQgY2xvYmJlckxpbWkKICAgICBjYXNlIFZhbHVlU3ViOgogICAgIGNhc2UgVmFsdWVBZGQ6IHsK
ICAgICAgICAgREZHX0FTU0VSVChtX2dyYXBoLCBub2RlLCBub2RlLT5iaW5hcnlVc2VLaW5kKCkg
PT0gVW50eXBlZFVzZSB8fCBub2RlLT5iaW5hcnlVc2VLaW5kKCkgPT0gQmlnSW50VXNlKTsKLSAg
ICAgICAgY2xvYmJlcldvcmxkKCk7CiAgICAgICAgIGlmIChub2RlLT5iaW5hcnlVc2VLaW5kKCkg
PT0gQmlnSW50VXNlKQogICAgICAgICAgICAgc2V0VHlwZUZvck5vZGUobm9kZSwgU3BlY0JpZ0lu
dCk7Ci0gICAgICAgIGVsc2UKKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICBjbG9iYmVyV29y
bGQoKTsKICAgICAgICAgICAgIHNldFR5cGVGb3JOb2RlKG5vZGUsIFNwZWNTdHJpbmcgfCBTcGVj
Qnl0ZWNvZGVOdW1iZXIgfCBTcGVjQmlnSW50KTsKKyAgICAgICAgfQogICAgICAgICBicmVhazsK
ICAgICB9CiAKQEAgLTg1NSwxMSArODU3LDEyIEBAIGJvb2wgQWJzdHJhY3RJbnRlcnByZXRlcjxB
YnN0cmFjdFN0YXRlVHlwZT46OmV4ZWN1dGVFZmZlY3RzKHVuc2lnbmVkIGNsb2JiZXJMaW1pCiAg
ICAgfQogICAgICAgICAKICAgICBjYXNlIFZhbHVlTXVsOiB7Ci0gICAgICAgIGNsb2JiZXJXb3Js
ZCgpOwogICAgICAgICBpZiAobm9kZS0+YmluYXJ5VXNlS2luZCgpID09IEJpZ0ludFVzZSkKICAg
ICAgICAgICAgIHNldFR5cGVGb3JOb2RlKG5vZGUsIFNwZWNCaWdJbnQpOwotICAgICAgICBlbHNl
CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgY2xvYmJlcldvcmxkKCk7CiAgICAgICAgICAg
ICBzZXRUeXBlRm9yTm9kZShub2RlLCBTcGVjQnl0ZWNvZGVOdW1iZXIgfCBTcGVjQmlnSW50KTsK
KyAgICAgICAgfQogICAgICAgICBicmVhazsKICAgICB9CiAKQEAgLTkxNCwxMSArOTE3LDEyIEBA
IGJvb2wgQWJzdHJhY3RJbnRlcnByZXRlcjxBYnN0cmFjdFN0YXRlVHlwZT46OmV4ZWN1dGVFZmZl
Y3RzKHVuc2lnbmVkIGNsb2JiZXJMaW1pCiAgICAgfQogICAgICAgICAKICAgICBjYXNlIFZhbHVl
RGl2OiB7Ci0gICAgICAgIGNsb2JiZXJXb3JsZCgpOwogICAgICAgICBpZiAobm9kZS0+YmluYXJ5
VXNlS2luZCgpID09IEJpZ0ludFVzZSkKICAgICAgICAgICAgIHNldFR5cGVGb3JOb2RlKG5vZGUs
IFNwZWNCaWdJbnQpOwotICAgICAgICBlbHNlCisgICAgICAgIGVsc2UgeworICAgICAgICAgICAg
Y2xvYmJlcldvcmxkKCk7CiAgICAgICAgICAgICBzZXRUeXBlRm9yTm9kZShub2RlLCBTcGVjQnl0
ZWNvZGVOdW1iZXIgfCBTcGVjQmlnSW50KTsKKyAgICAgICAgfQogICAgICAgICBicmVhazsKICAg
ICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQ2xvYmJlcml6
ZS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdDbG9iYmVyaXplLmgKaW5kZXggODc0
MjQyMDdjNDAxNjQ4M2JkYmZiNDIwMjk5MGUyYTI3ZWU5OWQ1Zi4uMzBmNDFmZWUzMmNhZDU5Zjdh
NDJhMzFiY2QxZDY5NzUyODY3YjFiZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2RmZy9ERkdDbG9iYmVyaXplLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdD
bG9iYmVyaXplLmgKQEAgLTY0NCwxNCArNjQ0LDcgQEAgdm9pZCBjbG9iYmVyaXplKEdyYXBoJiBn
cmFwaCwgTm9kZSogbm9kZSwgY29uc3QgUmVhZEZ1bmN0b3ImIHJlYWQsIGNvbnN0IFdyaXRlRnUK
ICAgICBjYXNlIEluQnlWYWw6CiAgICAgY2FzZSBJbkJ5SWQ6CiAgICAgY2FzZSBIYXNPd25Qcm9w
ZXJ0eToKLSAgICBjYXNlIFZhbHVlQml0QW5kOgotICAgIGNhc2UgVmFsdWVCaXRYb3I6Ci0gICAg
Y2FzZSBWYWx1ZUJpdE9yOgogICAgIGNhc2UgVmFsdWVOZWdhdGU6Ci0gICAgY2FzZSBWYWx1ZUFk
ZDoKLSAgICBjYXNlIFZhbHVlU3ViOgotICAgIGNhc2UgVmFsdWVNdWw6Ci0gICAgY2FzZSBWYWx1
ZURpdjoKICAgICBjYXNlIFNldEZ1bmN0aW9uTmFtZToKICAgICBjYXNlIEdldER5bmFtaWNWYXI6
CiAgICAgY2FzZSBQdXREeW5hbWljVmFyOgpAQCAtNjcyLDYgKzY2NSwyMSBAQCB2b2lkIGNsb2Ji
ZXJpemUoR3JhcGgmIGdyYXBoLCBOb2RlKiBub2RlLCBjb25zdCBSZWFkRnVuY3RvciYgcmVhZCwg
Y29uc3QgV3JpdGVGdQogICAgICAgICB3cml0ZShIZWFwKTsKICAgICAgICAgcmV0dXJuOwogCisg
ICAgY2FzZSBWYWx1ZUJpdEFuZDoKKyAgICBjYXNlIFZhbHVlQml0WG9yOgorICAgIGNhc2UgVmFs
dWVCaXRPcjoKKyAgICBjYXNlIFZhbHVlQWRkOgorICAgIGNhc2UgVmFsdWVTdWI6CisgICAgY2Fz
ZSBWYWx1ZU11bDoKKyAgICBjYXNlIFZhbHVlRGl2OgorICAgICAgICBpZiAobm9kZS0+aXNCaW5h
cnlVc2VLaW5kKEJpZ0ludFVzZSkpIHsKKyAgICAgICAgICAgIGRlZihQdXJlVmFsdWUobm9kZSkp
OworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgICAgIHJlYWQoV29ybGQpOwor
ICAgICAgICB3cml0ZShIZWFwKTsKKyAgICAgICAgcmV0dXJuOworCiAgICAgY2FzZSBBdG9taWNz
QWRkOgogICAgIGNhc2UgQXRvbWljc0FuZDoKICAgICBjYXNlIEF0b21pY3NDb21wYXJlRXhjaGFu
Z2U6CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1N0cmVuZ3RoUmVk
dWN0aW9uUGhhc2UuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTdHJlbmd0aFJl
ZHVjdGlvblBoYXNlLmNwcAppbmRleCA5MDMxNjA1N2VjZjc4OWY4ZjRkMmMxODBlZWUzNmExZmI5
NjBkZjI3Li45NWM2ZTczOWI1N2M5YzVlZDc4M2QyNjJmNGIyOTY4MDdiYzlmN2Y5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1N0cmVuZ3RoUmVkdWN0aW9uUGhhc2Uu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU3RyZW5ndGhSZWR1Y3Rpb25Q
aGFzZS5jcHAKQEAgLTEyMSw2ICsxMjEsMTUgQEAgcHJpdmF0ZToKICAgICAgICAgICAgIH0KICAg
ICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgCisgICAgICAgIGNhc2UgVmFsdWVNdWw6Cisg
ICAgICAgIGNhc2UgVmFsdWVCaXRPcjoKKyAgICAgICAgY2FzZSBWYWx1ZUJpdEFuZDoKKyAgICAg
ICAgY2FzZSBWYWx1ZUJpdFhvcjogeworICAgICAgICAgICAgaWYgKG1fbm9kZS0+YmluYXJ5VXNl
S2luZCgpID09IEJpZ0ludFVzZSkKKyAgICAgICAgICAgICAgICBoYW5kbGVDb21tdXRhdGl2aXR5
KCk7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorCiAgICAgICAgIGNhc2UgQXJpdGhN
dWw6IHsKICAgICAgICAgICAgIGhhbmRsZUNvbW11dGF0aXZpdHkoKTsKICAgICAgICAgICAgIEVk
Z2UmIGNoaWxkMiA9IG1fbm9kZS0+Y2hpbGQyKCk7CkBAIC0zNjQsNiArMzczLDEwIEBAIHByaXZh
dGU6CiAgICAgICAgICAgICAgICAgY29udmVydFRvTGF6eUpTVmFsdWUobV9ub2RlLCBMYXp5SlNW
YWx1ZTo6bmV3U3RyaW5nKG1fZ3JhcGgsIGJ1aWxkZXIudG9TdHJpbmcoKSkpOwogICAgICAgICAg
ICAgICAgIG1fY2hhbmdlZCA9IHRydWU7CiAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGlm
IChtX25vZGUtPmJpbmFyeVVzZUtpbmQoKSA9PSBCaWdJbnRVc2UpCisgICAgICAgICAgICAgICAg
aGFuZGxlQ29tbXV0YXRpdml0eSgpOworCiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQog
CmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0JpZ0ludEJlbmNoL2JpZy1pbnQtY3NlLmpz
IGIvUGVyZm9ybWFuY2VUZXN0cy9CaWdJbnRCZW5jaC9iaWctaW50LWNzZS5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5kOGI1M2RkNzIxMjc0NmY1OTBlMTViNjY4NTMyNzA5MDVlYzUyMjMwCi0tLSAvZGV2L251bGwK
KysrIGIvUGVyZm9ybWFuY2VUZXN0cy9CaWdJbnRCZW5jaC9iaWctaW50LWNzZS5qcwpAQCAtMCww
ICsxLDEwMyBAQAorZnVuY3Rpb24gYXNzZXJ0KGEsIGUpIHsKKyAgICBpZiAoYSAhPT0gZSkKKyAg
ICAgICAgdGhyb3cgbmV3IEVycm9yKCJFeHBlY3RlZCAiICsgZSArICIgYnV0IGdvdDogIiArIGEp
OworfQorCitmdW5jdGlvbiBiaWdJbnRBZGQoYSwgYikgeworICAgIGxldCBjID0gYSArIGI7Cisg
ICAgcmV0dXJuIGIgKyBhICsgYzsKK30KK25vSW5saW5lKGJpZ0ludEFkZCk7CisKK2ZvciAobGV0
IGkgPSAwOyBpIDwgMTAwMDAwOyBpKyspIHsKKyAgICBhc3NlcnQoYmlnSW50QWRkKDNuLCA1biks
IDE2bik7Cit9CisKK2ZvciAobGV0IGkgPSAwOyBpIDwgMTAwMDAwOyBpKyspIHsKKyAgICBhc3Nl
cnQoYmlnSW50QWRkKDB4ZmZmZmZmZmZmZmZmZmZmZmZmbiwgMHhhYWZmZmZmZmZmZmZmZmZmZmZm
Zm4pLCAxNjI0NDk0MDcwMTA3MTU3OTUzNTExNDIwbik7Cit9CisKK2Z1bmN0aW9uIGJpZ0ludE11
bChhLCBiKSB7CisgICAgbGV0IGMgPSBhICogYjsKKyAgICByZXR1cm4gYiAqIGEgKyBjOworfQor
bm9JbmxpbmUoYmlnSW50TXVsKTsKKworZm9yIChsZXQgaSA9IDA7IGkgPCAxMDAwMDA7IGkrKykg
eworICAgIGFzc2VydChiaWdJbnRNdWwoM24sIDVuKSwgMzBuKTsKK30KKworZm9yIChsZXQgaSA9
IDA7IGkgPCAxMDAwMDA7IGkrKykgeworICAgIGFzc2VydChiaWdJbnRNdWwoMHhmZmZmZmZmZmZm
ZmZmZmZmZmZuLCAweGFhZmZmZmZmZmZmZmZmZmZmZmZmbiksIDc2MjY4NTQ4NTc4OTc0NzMxMTQ0
MDM1OTExNTUxNzU2MzI0NzcwOTE3OTA4NTBuKTsKK30KKworZnVuY3Rpb24gYmlnSW50RGl2KGEs
IGIpIHsKKyAgICBsZXQgYyA9IGEgLyBiOworICAgIHJldHVybiBhIC8gYiArIGM7Cit9Citub0lu
bGluZShiaWdJbnREaXYpOworCitmb3IgKGxldCBpID0gMDsgaSA8IDEwMDAwMDsgaSsrKSB7Cisg
ICAgYXNzZXJ0KGJpZ0ludERpdigxNW4sIDVuKSwgNm4pOworfQorCitmb3IgKGxldCBpID0gMDsg
aSA8IDEwMDAwMDsgaSsrKSB7CisgICAgYXNzZXJ0KGJpZ0ludERpdigweGFhZmZmZmZmZmZmZmZm
ZmZmZmZmbiwgMHhmZmZmZmZmZmZmZmZmZmZmZmZuKSwgMzQybik7Cit9CisKK2Z1bmN0aW9uIGJp
Z0ludFN1YihhLCBiKSB7CisgICAgbGV0IGMgPSBhIC0gYjsKKyAgICByZXR1cm4gYSAtIGIgKyBj
OworfQorbm9JbmxpbmUoYmlnSW50U3ViKTsKKworZm9yIChsZXQgaSA9IDA7IGkgPCAxMDAwMDA7
IGkrKykgeworICAgIGFzc2VydChiaWdJbnRTdWIoMTVuLCA1biksIDIwbik7Cit9CisKK2ZvciAo
bGV0IGkgPSAwOyBpIDwgMTAwMDAwOyBpKyspIHsKKyAgICBhc3NlcnQoYmlnSW50U3ViKDB4YWFm
ZmZmZmZmZmZmZmZmZmZmZmZuLCAweGZmZmZmZmZmZmZmZmZmZmZmZm4pLCAxNjA1NjA0NjA0MTc1
Njc5MzcyNjU2NjQwbik7Cit9CisKK2Z1bmN0aW9uIGJpZ0ludEJpdE9yKGEsIGIpIHsKKyAgICBs
ZXQgYyA9IGEgfCBiOworICAgIHJldHVybiAoYiB8IGEpICsgYzsKK30KK25vSW5saW5lKGJpZ0lu
dEJpdE9yKTsKKworZm9yIChsZXQgaSA9IDA7IGkgPCAxMDAwMDA7IGkrKykgeworICAgIGFzc2Vy
dChiaWdJbnRCaXRPcigwYjExMDFuLCAwYjAwMTBuKSwgMzBuKTsKK30KKworZm9yIChsZXQgaSA9
IDA7IGkgPCAxMDAwMDA7IGkrKykgeworICAgIGFzc2VydChiaWdJbnRCaXRPcigweGFhZmZmZmZm
ZmZmZmZmZmZmZmZmbiwgMHhmZmZmZmZmZmZmZmZmZmZmZmZuKSwgMTYxNTA0OTMzNzE0MTQxODY2
MzA4NDAzMG4pOworfQorCitmdW5jdGlvbiBiaWdJbnRCaXRBbmQoYSwgYikgeworICAgIGxldCBj
ID0gYSAmIGI7CisgICAgcmV0dXJuIChiICYgYSkgKyBjOworfQorbm9JbmxpbmUoYmlnSW50Qml0
QW5kKTsKKworZm9yIChsZXQgaSA9IDA7IGkgPCAxMDAwMDA7IGkrKykgeworICAgIGFzc2VydChi
aWdJbnRCaXRBbmQoMGIxMTAxbiwgMGIwMDEwbiksIDBuKTsKK30KKworZm9yIChsZXQgaSA9IDA7
IGkgPCAxMDAwMDA7IGkrKykgeworICAgIGFzc2VydChiaWdJbnRCaXRBbmQoMHhhYWZmZmZmZmZm
ZmZmZmZmZmZmZm4sIDB4ZmZmZmZmZmZmZmZmZmZmZmZmbiksIDk0NDQ3MzI5NjU3MzkyOTA0Mjcz
OTBuKTsKK30KKworZnVuY3Rpb24gYmlnSW50Qml0WG9yKGEsIGIpIHsKKyAgICBsZXQgYyA9IGEg
XiBiOworICAgIHJldHVybiAoYiBeIGEpICsgYzsKK30KK25vSW5saW5lKGJpZ0ludEJpdFhvcik7
CisKK2ZvciAobGV0IGkgPSAwOyBpIDwgMTAwMDAwOyBpKyspIHsKKyAgICBhc3NlcnQoYmlnSW50
Qml0WG9yKDBiMTEwMW4sIDBiMDAxMG4pLCAzMG4pOworfQorCitmb3IgKGxldCBpID0gMDsgaSA8
IDEwMDAwMDsgaSsrKSB7CisgICAgYXNzZXJ0KGJpZ0ludEJpdFhvcigweGFhZmZmZmZmZmZmZmZm
ZmZmZmZmbiwgMHhmZmZmZmZmZmZmZmZmZmZmZmZuKSwgMTYwNTYwNDYwNDE3NTY3OTM3MjY1NjY0
MG4pOworfQorCmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL0JpZ0ludEJlbmNoL2JpZy1p
bnQtZ2xvYmFsLWNzZS5qcyBiL1BlcmZvcm1hbmNlVGVzdHMvQmlnSW50QmVuY2gvYmlnLWludC1n
bG9iYWwtY3NlLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQ1YzAyNDZiMjYzY2E3NzcwYWYxZWU3MDgxZTZjNWEz
ZDRjMTdjM2IKLS0tIC9kZXYvbnVsbAorKysgYi9QZXJmb3JtYW5jZVRlc3RzL0JpZ0ludEJlbmNo
L2JpZy1pbnQtZ2xvYmFsLWNzZS5qcwpAQCAtMCwwICsxLDEyNCBAQAorZnVuY3Rpb24gYXNzZXJ0
KGEsIGUpIHsKKyAgICBpZiAoYSAhPT0gZSkKKyAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJFeHBl
Y3RlZCAiICsgZSArICIgYnV0IGdvdDogIiArIGEpOworfQorCitmdW5jdGlvbiBiaWdJbnRBZGQo
YSwgYikgeworICAgIGxldCBjID0gYSArIGI7CisgICAgaWYgKGIpIHsKKyAgICAgICAgYXNzZXJ0
KGMsIGEgKyBiKTsKKyAgICB9CisgICAgcmV0dXJuIGEgKyBiICsgYzsKK30KK25vSW5saW5lKGJp
Z0ludEFkZCk7CisKK2ZvciAobGV0IGkgPSAwOyBpIDwgMTAwMDAwOyBpKyspIHsKKyAgICBhc3Nl
cnQoYmlnSW50QWRkKDNuLCA1biksIDE2bik7Cit9CisKK2ZvciAobGV0IGkgPSAwOyBpIDwgMTAw
MDAwOyBpKyspIHsKKyAgICBhc3NlcnQoYmlnSW50QWRkKDB4ZmZmZmZmZmZmZmZmZmZmZmZmbiwg
MHhhYWZmZmZmZmZmZmZmZmZmZmZmZm4pLCAxNjI0NDk0MDcwMTA3MTU3OTUzNTExNDIwbik7Cit9
CisKK2Z1bmN0aW9uIGJpZ0ludE11bChhLCBiKSB7CisgICAgbGV0IGMgPSBhICogYjsKKyAgICBp
ZiAoYikgeworICAgICAgICBhc3NlcnQoYywgYSAqIGIpOworICAgIH0KKyAgICByZXR1cm4gYSAq
IGIgKyBjOworfQorbm9JbmxpbmUoYmlnSW50TXVsKTsKKworZm9yIChsZXQgaSA9IDA7IGkgPCAx
MDAwMDA7IGkrKykgeworICAgIGFzc2VydChiaWdJbnRNdWwoM24sIDVuKSwgMzBuKTsKK30KKwor
Zm9yIChsZXQgaSA9IDA7IGkgPCAxMDAwMDA7IGkrKykgeworICAgIGFzc2VydChiaWdJbnRNdWwo
MHhmZmZmZmZmZmZmZmZmZmZmZmZuLCAweGFhZmZmZmZmZmZmZmZmZmZmZmZmbiksIDc2MjY4NTQ4
NTc4OTc0NzMxMTQ0MDM1OTExNTUxNzU2MzI0NzcwOTE3OTA4NTBuKTsKK30KKworZnVuY3Rpb24g
YmlnSW50RGl2KGEsIGIpIHsKKyAgICBsZXQgYyA9IGEgLyBiOworICAgIGlmIChiKSB7CisgICAg
ICAgIGFzc2VydChjLCBhIC8gYik7CisgICAgfQorICAgIHJldHVybiBhIC8gYiArIGM7Cit9Citu
b0lubGluZShiaWdJbnREaXYpOworCitmb3IgKGxldCBpID0gMDsgaSA8IDEwMDAwMDsgaSsrKSB7
CisgICAgYXNzZXJ0KGJpZ0ludERpdigxNW4sIDVuKSwgNm4pOworfQorCitmb3IgKGxldCBpID0g
MDsgaSA8IDEwMDAwMDsgaSsrKSB7CisgICAgYXNzZXJ0KGJpZ0ludERpdigweGFhZmZmZmZmZmZm
ZmZmZmZmZmZmbiwgMHhmZmZmZmZmZmZmZmZmZmZmZmZuKSwgMzQybik7Cit9CisKK2Z1bmN0aW9u
IGJpZ0ludFN1YihhLCBiKSB7CisgICAgbGV0IGMgPSBhIC0gYjsKKyAgICBpZiAoYikgeworICAg
ICAgICBhc3NlcnQoYywgYSAtIGIpOworICAgIH0KKyAgICByZXR1cm4gYSAtIGIgKyBjOworfQor
bm9JbmxpbmUoYmlnSW50U3ViKTsKKworZm9yIChsZXQgaSA9IDA7IGkgPCAxMDAwMDA7IGkrKykg
eworICAgIGFzc2VydChiaWdJbnRTdWIoMTVuLCA1biksIDIwbik7Cit9CisKK2ZvciAobGV0IGkg
PSAwOyBpIDwgMTAwMDAwOyBpKyspIHsKKyAgICBhc3NlcnQoYmlnSW50U3ViKDB4YWFmZmZmZmZm
ZmZmZmZmZmZmZmZuLCAweGZmZmZmZmZmZmZmZmZmZmZmZm4pLCAxNjA1NjA0NjA0MTc1Njc5Mzcy
NjU2NjQwbik7Cit9CisKK2Z1bmN0aW9uIGJpZ0ludEJpdE9yKGEsIGIpIHsKKyAgICBsZXQgYyA9
IGEgfCBiOworICAgIGlmIChiKSB7CisgICAgICAgIGFzc2VydChjLCBhIHwgYik7CisgICAgfQor
ICAgIHJldHVybiAoYSB8IGIpICsgYzsKK30KK25vSW5saW5lKGJpZ0ludEJpdE9yKTsKKworZm9y
IChsZXQgaSA9IDA7IGkgPCAxMDAwMDA7IGkrKykgeworICAgIGFzc2VydChiaWdJbnRCaXRPcigw
YjExMDFuLCAwYjAwMTBuKSwgMzBuKTsKK30KKworZm9yIChsZXQgaSA9IDA7IGkgPCAxMDAwMDA7
IGkrKykgeworICAgIGFzc2VydChiaWdJbnRCaXRPcigweGFhZmZmZmZmZmZmZmZmZmZmZmZmbiwg
MHhmZmZmZmZmZmZmZmZmZmZmZmZuKSwgMTYxNTA0OTMzNzE0MTQxODY2MzA4NDAzMG4pOworfQor
CitmdW5jdGlvbiBiaWdJbnRCaXRBbmQoYSwgYikgeworICAgIGxldCBjID0gYSAmIGI7CisgICAg
aWYgKGIpIHsKKyAgICAgICAgYXNzZXJ0KGMsIGEgJiBiKTsKKyAgICB9CisgICAgcmV0dXJuIChh
ICYgYikgKyBjOworfQorbm9JbmxpbmUoYmlnSW50Qml0QW5kKTsKKworZm9yIChsZXQgaSA9IDA7
IGkgPCAxMDAwMDA7IGkrKykgeworICAgIGFzc2VydChiaWdJbnRCaXRBbmQoMGIxMTAxbiwgMGIw
MDEwbiksIDBuKTsKK30KKworZm9yIChsZXQgaSA9IDA7IGkgPCAxMDAwMDA7IGkrKykgeworICAg
IGFzc2VydChiaWdJbnRCaXRBbmQoMHhhYWZmZmZmZmZmZmZmZmZmZmZmZm4sIDB4ZmZmZmZmZmZm
ZmZmZmZmZmZmbiksIDk0NDQ3MzI5NjU3MzkyOTA0MjczOTBuKTsKK30KKworZnVuY3Rpb24gYmln
SW50Qml0WG9yKGEsIGIpIHsKKyAgICBsZXQgYyA9IGEgXiBiOworICAgIGlmIChiKSB7CisgICAg
ICAgIGFzc2VydChjLCBhIF4gYik7CisgICAgfQorICAgIHJldHVybiAoYSBeIGIpICsgYzsKK30K
K25vSW5saW5lKGJpZ0ludEJpdFhvcik7CisKK2ZvciAobGV0IGkgPSAwOyBpIDwgMTAwMDAwOyBp
KyspIHsKKyAgICBhc3NlcnQoYmlnSW50Qml0WG9yKDBiMTEwMW4sIDBiMDAxMG4pLCAzMG4pOwor
fQorCitmb3IgKGxldCBpID0gMDsgaSA8IDEwMDAwMDsgaSsrKSB7CisgICAgYXNzZXJ0KGJpZ0lu
dEJpdFhvcigweGFhZmZmZmZmZmZmZmZmZmZmZmZmbiwgMHhmZmZmZmZmZmZmZmZmZmZmZmZuKSwg
MTYwNTYwNDYwNDE3NTY3OTM3MjY1NjY0MG4pOworfQorCmRpZmYgLS1naXQgYS9QZXJmb3JtYW5j
ZVRlc3RzL0JpZ0ludEJlbmNoL2JpZy1pbnQtbGljbS5qcyBiL1BlcmZvcm1hbmNlVGVzdHMvQmln
SW50QmVuY2gvYmlnLWludC1saWNtLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjZjNjRjOTc1Nzk4M2VkYzU5ZTI1
ZTZiZDkxMmEwNDlmMDdlNmIyY2UKLS0tIC9kZXYvbnVsbAorKysgYi9QZXJmb3JtYW5jZVRlc3Rz
L0JpZ0ludEJlbmNoL2JpZy1pbnQtbGljbS5qcwpAQCAtMCwwICsxLDE5IEBACitmdW5jdGlvbiBh
c3NlcnQoYSwgZSkgeworICAgIGlmIChhICE9PSBlKQorICAgICAgICB0aHJvdyBuZXcgRXJyb3Io
IkV4cGVjdGVkICIgKyBlICsgIiBidXQgZ290OiAiICsgYSk7Cit9CisKK2Z1bmN0aW9uIGl0ZXJh
dGlvbihhLCBiLCByKSB7CisgICAgbGV0IGFjYyA9IDBuOworICAgIGZvciAobGV0IGkgPSAwbjsg
aSA8IHI7IGkgKz0gMW4pIHsKKyAgICAgICAgYWNjICs9IGEgKyBiOworICAgIH0KKworICAgIHJl
dHVybiBhY2M7Cit9Citub0lubGluZShpdGVyYXRpb24pOworCitmb3IgKGxldCBpID0gMDsgaSA8
IDEwMDAwOyBpKyspIHsKKyAgICBhc3NlcnQoaXRlcmF0aW9uKDFuLCAybiwgMTAwbiksIDMwMG4p
Cit9CisKZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvQ2hhbmdlTG9nIGIvUGVyZm9ybWFu
Y2VUZXN0cy9DaGFuZ2VMb2cKaW5kZXggYzU5ZjNmNjBkMjhiYjdkMGI4NTIyOWQzMzk5MzRmZmEz
YThiNDc2My4uMjMyYWY5MmJlNjMyNmM0ZDVlYThmOTA5MGE1NjAyMWJmMTgxNTMwYyAxMDA2NDQK
LS0tIGEvUGVyZm9ybWFuY2VUZXN0cy9DaGFuZ2VMb2cKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxOC0xMi0xNyAgQ2FpbyBMaW1hICA8dGljYWlv
bGltYUBnbWFpbC5jb20+CisKKyAgICAgICAgW0JpZ0ludF0gV2Ugc2hvdWxkIGVuYWJsZSBDU0Ug
aW50byBhcml0aG1ldGljIG9wZXJhdGlvbnMgdGhhdCBzcGVjdWxhdGUgQmlnSW50VXNlCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTI3MjMKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIEJpZ0ludEJlbmNo
L2JpZy1pbnQtY3NlLmpzOiBBZGRlZC4KKyAgICAgICAgKiBCaWdJbnRCZW5jaC9iaWctaW50LWds
b2JhbC1jc2UuanM6IEFkZGVkLgorICAgICAgICAqIEJpZ0ludEJlbmNoL2JpZy1pbnQtbGljbS5q
czogQWRkZWQuCisKIDIwMTgtMTItMTMgIENhaW8gTGltYSAgPHRpY2Fpb2xpbWFAZ21haWwuY29t
PgogCiAgICAgICAgIFtCaWdJbnRdIEFkZCBWYWx1ZURpdiBpbnRvIERGRwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>357805</attachid>
            <date>2018-12-20 02:37:51 -0800</date>
            <delta_ts>2018-12-20 03:59:12 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-192723-20181220083733.patch</filename>
            <type>text/plain</type>
            <size>13430</size>
            <attacher name="Caio Lima">ticaiolima</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM5NDM3CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBk
NjBmY2YxZWJlNjYwNDM3MDM0MzBlZmM4MzkyZjQ1ZjJiMTI0YzUxLi40N2ViMTA4NTMwMjNkODlk
YmY3YzEwODk4NjNhYzFkM2YzNzBjNzk0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzMCBAQAorMjAxOC0xMi0yMCAgQ2FpbyBMaW1hICA8dGljYWlvbGltYUBnbWFpbC5jb20+
CisKKyAgICAgICAgW0JpZ0ludF0gV2Ugc2hvdWxkIGVuYWJsZSBDU0UgaW50byBhcml0aG1ldGlj
IG9wZXJhdGlvbnMgdGhhdCBzcGVjdWxhdGUgQmlnSW50VXNlCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTI3MjMKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBhdGNoIGlzIGFkanVzdGluZyBjbG9i
YmVyaXplIHJ1bGVzIGludG8gVmFsdWVPcCBub2RlcyB0byBlbmFibGUKKyAgICAgICAgbW9yZSBv
cHRpbWl6YXRpb25zIHdoZW4gd2Ugc3BlY3VsYXRlIEJpZ0ludFVzZS4gSW4gc3VjaCBjYXNlLCBE
Rkcgbm93CisgICAgICAgIGlzIGFibGUgdG8gYXBwbHkgQ1NFLCBMSUNNIGFuZCBjb21tdXRhdGl2
aXR5IG9uIG5vZGVzIGxpa2UKKyAgICAgICAgVmFsdWVBZGQoQmlnSW50LCBCaWdJbnQpLCBWYWx1
ZVN1YihCaWdJbnQsIEJpZ0ludCksIGV0Yy4KKworICAgICAgICBIZXJlIGFyZSB0aGUgbnVtYmVy
cyB3ZSBjYW4gb2JzZXJ2ZSB3aXRoIHNvbWUgbWljcm9iZW5jaG1hcmtzOgorCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgYmFzZWxpbmUgICAgICAgICAgICAgICAgIGNoYW5nZXMK
KworICAgICAgICBiaWctaW50LWNzZSAgICAgICAgICAgMTA4LjI3MzMrLTAuODQ0NSAgICBeICAg
IDgwLjk4OTcrLTQuOTc4MSAgIF4gZGVmaW5pdGVseSAxLjMzNjl4IGZhc3RlcgorICAgICAgICBi
aWctaW50LWxpY20gICAgICAgICAgNzUuNjY0MSstMC4zNDc3ICAgICBeICAgIDU3LjgxNDQrLTEu
NjA0MyAgIF4gZGVmaW5pdGVseSAxLjMwODd4IGZhc3RlcgorICAgICAgICBiaWctaW50LWdsb2Jh
bC1jc2UgICAgMTQ1LjM1NTcrLTEuMDU1MiAgICBeICAgIDg2LjU4NjYrLTAuMzAyNSAgIF4gZGVm
aW5pdGVseSAxLjY3ODd4IGZhc3RlcgorCisgICAgICAgICogZGZnL0RGR0Fic3RyYWN0SW50ZXJw
cmV0ZXJJbmxpbmVzLmg6CisgICAgICAgIChKU0M6OkRGRzo6QWJzdHJhY3RJbnRlcnByZXRlcjxB
YnN0cmFjdFN0YXRlVHlwZT46OmV4ZWN1dGVFZmZlY3RzKToKKyAgICAgICAgKiBkZmcvREZHQ2xv
YmJlcml6ZS5oOgorICAgICAgICAoSlNDOjpERkc6OmNsb2JiZXJpemUpOgorICAgICAgICAqIGRm
Zy9ERkdTdHJlbmd0aFJlZHVjdGlvblBoYXNlLmNwcDoKKyAgICAgICAgKEpTQzo6REZHOjpTdHJl
bmd0aFJlZHVjdGlvblBoYXNlOjpoYW5kbGVOb2RlKToKKwogMjAxOC0xMi0xOSAgQ29tbWl0IFF1
ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9s
bGluZyBvdXQgcjIzOTM3Ny4KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcv
REZHQWJzdHJhY3RJbnRlcnByZXRlcklubGluZXMuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9k
ZmcvREZHQWJzdHJhY3RJbnRlcnByZXRlcklubGluZXMuaAppbmRleCBmMjg4ZDZlNmE3NDA3ZWUx
MTAwMmQ5ZDJlYjg1YjZjMjIyOWFkZDEzLi41MTk3MTMzZWFkNGIyZDI4ZDFmYjNlY2ZjNTQ3ZmY3
N2YwMWJhOTA1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0Fic3Ry
YWN0SW50ZXJwcmV0ZXJJbmxpbmVzLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9E
RkdBYnN0cmFjdEludGVycHJldGVySW5saW5lcy5oCkBAIC0zOTcsMTEgKzM5NywxMiBAQCBib29s
IEFic3RyYWN0SW50ZXJwcmV0ZXI8QWJzdHJhY3RTdGF0ZVR5cGU+OjpleGVjdXRlRWZmZWN0cyh1
bnNpZ25lZCBjbG9iYmVyTGltaQogICAgIGNhc2UgVmFsdWVCaXRYb3I6CiAgICAgY2FzZSBWYWx1
ZUJpdEFuZDoKICAgICBjYXNlIFZhbHVlQml0T3I6Ci0gICAgICAgIGNsb2JiZXJXb3JsZCgpOwog
ICAgICAgICBpZiAobm9kZS0+YmluYXJ5VXNlS2luZCgpID09IEJpZ0ludFVzZSkKICAgICAgICAg
ICAgIHNldFR5cGVGb3JOb2RlKG5vZGUsIFNwZWNCaWdJbnQpOwotICAgICAgICBlbHNlCisgICAg
ICAgIGVsc2UgeworICAgICAgICAgICAgY2xvYmJlcldvcmxkKCk7CiAgICAgICAgICAgICBzZXRU
eXBlRm9yTm9kZShub2RlLCBTcGVjQm9vbEludDMyIHwgU3BlY0JpZ0ludCk7CisgICAgICAgIH0K
ICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAKICAgICBjYXNlIEFyaXRoQml0QW5kOgpAQCAt
NjEzLDExICs2MTQsMTIgQEAgYm9vbCBBYnN0cmFjdEludGVycHJldGVyPEFic3RyYWN0U3RhdGVU
eXBlPjo6ZXhlY3V0ZUVmZmVjdHModW5zaWduZWQgY2xvYmJlckxpbWkKICAgICBjYXNlIFZhbHVl
U3ViOgogICAgIGNhc2UgVmFsdWVBZGQ6IHsKICAgICAgICAgREZHX0FTU0VSVChtX2dyYXBoLCBu
b2RlLCBub2RlLT5iaW5hcnlVc2VLaW5kKCkgPT0gVW50eXBlZFVzZSB8fCBub2RlLT5iaW5hcnlV
c2VLaW5kKCkgPT0gQmlnSW50VXNlKTsKLSAgICAgICAgY2xvYmJlcldvcmxkKCk7CiAgICAgICAg
IGlmIChub2RlLT5iaW5hcnlVc2VLaW5kKCkgPT0gQmlnSW50VXNlKQogICAgICAgICAgICAgc2V0
VHlwZUZvck5vZGUobm9kZSwgU3BlY0JpZ0ludCk7Ci0gICAgICAgIGVsc2UKKyAgICAgICAgZWxz
ZSB7CisgICAgICAgICAgICBjbG9iYmVyV29ybGQoKTsKICAgICAgICAgICAgIHNldFR5cGVGb3JO
b2RlKG5vZGUsIFNwZWNTdHJpbmcgfCBTcGVjQnl0ZWNvZGVOdW1iZXIgfCBTcGVjQmlnSW50KTsK
KyAgICAgICAgfQogICAgICAgICBicmVhazsKICAgICB9CiAKQEAgLTg1NiwxMSArODU4LDEyIEBA
IGJvb2wgQWJzdHJhY3RJbnRlcnByZXRlcjxBYnN0cmFjdFN0YXRlVHlwZT46OmV4ZWN1dGVFZmZl
Y3RzKHVuc2lnbmVkIGNsb2JiZXJMaW1pCiAgICAgfQogICAgICAgICAKICAgICBjYXNlIFZhbHVl
TXVsOiB7Ci0gICAgICAgIGNsb2JiZXJXb3JsZCgpOwogICAgICAgICBpZiAobm9kZS0+YmluYXJ5
VXNlS2luZCgpID09IEJpZ0ludFVzZSkKICAgICAgICAgICAgIHNldFR5cGVGb3JOb2RlKG5vZGUs
IFNwZWNCaWdJbnQpOwotICAgICAgICBlbHNlCisgICAgICAgIGVsc2UgeworICAgICAgICAgICAg
Y2xvYmJlcldvcmxkKCk7CiAgICAgICAgICAgICBzZXRUeXBlRm9yTm9kZShub2RlLCBTcGVjQnl0
ZWNvZGVOdW1iZXIgfCBTcGVjQmlnSW50KTsKKyAgICAgICAgfQogICAgICAgICBicmVhazsKICAg
ICB9CiAKQEAgLTkxNSwxMSArOTE4LDEyIEBAIGJvb2wgQWJzdHJhY3RJbnRlcnByZXRlcjxBYnN0
cmFjdFN0YXRlVHlwZT46OmV4ZWN1dGVFZmZlY3RzKHVuc2lnbmVkIGNsb2JiZXJMaW1pCiAgICAg
fQogICAgICAgICAKICAgICBjYXNlIFZhbHVlRGl2OiB7Ci0gICAgICAgIGNsb2JiZXJXb3JsZCgp
OwogICAgICAgICBpZiAobm9kZS0+YmluYXJ5VXNlS2luZCgpID09IEJpZ0ludFVzZSkKICAgICAg
ICAgICAgIHNldFR5cGVGb3JOb2RlKG5vZGUsIFNwZWNCaWdJbnQpOwotICAgICAgICBlbHNlCisg
ICAgICAgIGVsc2UgeworICAgICAgICAgICAgY2xvYmJlcldvcmxkKCk7CiAgICAgICAgICAgICBz
ZXRUeXBlRm9yTm9kZShub2RlLCBTcGVjQnl0ZWNvZGVOdW1iZXIgfCBTcGVjQmlnSW50KTsKKyAg
ICAgICAgfQogICAgICAgICBicmVhazsKICAgICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9kZmcvREZHQ2xvYmJlcml6ZS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Rm
Zy9ERkdDbG9iYmVyaXplLmgKaW5kZXggMjUwZWMwMDQ0M2QxMmMwNjNhYTQzZWVlYmRjNDhjNzAy
OTQxMjVhNS4uNDhjODQ2YmQzODk3ZDE0ZGU0ZTI1YjI3ZDk1NzBkODJkYTg3MWFlOSAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdDbG9iYmVyaXplLmgKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdDbG9iYmVyaXplLmgKQEAgLTY0NCwxNCArNjQ0LDcg
QEAgdm9pZCBjbG9iYmVyaXplKEdyYXBoJiBncmFwaCwgTm9kZSogbm9kZSwgY29uc3QgUmVhZEZ1
bmN0b3ImIHJlYWQsIGNvbnN0IFdyaXRlRnUKICAgICBjYXNlIEluQnlWYWw6CiAgICAgY2FzZSBJ
bkJ5SWQ6CiAgICAgY2FzZSBIYXNPd25Qcm9wZXJ0eToKLSAgICBjYXNlIFZhbHVlQml0QW5kOgot
ICAgIGNhc2UgVmFsdWVCaXRYb3I6Ci0gICAgY2FzZSBWYWx1ZUJpdE9yOgogICAgIGNhc2UgVmFs
dWVOZWdhdGU6Ci0gICAgY2FzZSBWYWx1ZUFkZDoKLSAgICBjYXNlIFZhbHVlU3ViOgotICAgIGNh
c2UgVmFsdWVNdWw6Ci0gICAgY2FzZSBWYWx1ZURpdjoKICAgICBjYXNlIFNldEZ1bmN0aW9uTmFt
ZToKICAgICBjYXNlIEdldER5bmFtaWNWYXI6CiAgICAgY2FzZSBQdXREeW5hbWljVmFyOgpAQCAt
NjczLDYgKzY2NiwyMSBAQCB2b2lkIGNsb2JiZXJpemUoR3JhcGgmIGdyYXBoLCBOb2RlKiBub2Rl
LCBjb25zdCBSZWFkRnVuY3RvciYgcmVhZCwgY29uc3QgV3JpdGVGdQogICAgICAgICB3cml0ZShI
ZWFwKTsKICAgICAgICAgcmV0dXJuOwogCisgICAgY2FzZSBWYWx1ZUJpdEFuZDoKKyAgICBjYXNl
IFZhbHVlQml0WG9yOgorICAgIGNhc2UgVmFsdWVCaXRPcjoKKyAgICBjYXNlIFZhbHVlQWRkOgor
ICAgIGNhc2UgVmFsdWVTdWI6CisgICAgY2FzZSBWYWx1ZU11bDoKKyAgICBjYXNlIFZhbHVlRGl2
OgorICAgICAgICBpZiAobm9kZS0+aXNCaW5hcnlVc2VLaW5kKEJpZ0ludFVzZSkpIHsKKyAgICAg
ICAgICAgIGRlZihQdXJlVmFsdWUobm9kZSkpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAg
ICB9CisgICAgICAgIHJlYWQoV29ybGQpOworICAgICAgICB3cml0ZShIZWFwKTsKKyAgICAgICAg
cmV0dXJuOworCiAgICAgY2FzZSBBdG9taWNzQWRkOgogICAgIGNhc2UgQXRvbWljc0FuZDoKICAg
ICBjYXNlIEF0b21pY3NDb21wYXJlRXhjaGFuZ2U6CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvZGZnL0RGR1N0cmVuZ3RoUmVkdWN0aW9uUGhhc2UuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2RmZy9ERkdTdHJlbmd0aFJlZHVjdGlvblBoYXNlLmNwcAppbmRleCA0ZjJmMWQw
Yjg1ZmIzZjcwYzIyNWU0N2E1OWM0ZjcwNjUxMWU3ZDQxLi4xOGJlYzY5M2UyZDBmNzBjZDZkZDVl
OTBjYjAxYTdjMDg2ZDM1MGI5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZn
L0RGR1N0cmVuZ3RoUmVkdWN0aW9uUGhhc2UuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9kZmcvREZHU3RyZW5ndGhSZWR1Y3Rpb25QaGFzZS5jcHAKQEAgLTEyMSw2ICsxMjEsMTUgQEAg
cHJpdmF0ZToKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAg
CisgICAgICAgIGNhc2UgVmFsdWVNdWw6CisgICAgICAgIGNhc2UgVmFsdWVCaXRPcjoKKyAgICAg
ICAgY2FzZSBWYWx1ZUJpdEFuZDoKKyAgICAgICAgY2FzZSBWYWx1ZUJpdFhvcjogeworICAgICAg
ICAgICAgaWYgKG1fbm9kZS0+YmluYXJ5VXNlS2luZCgpID09IEJpZ0ludFVzZSkKKyAgICAgICAg
ICAgICAgICBoYW5kbGVDb21tdXRhdGl2aXR5KCk7CisgICAgICAgICAgICBicmVhazsKKyAgICAg
ICAgfQorCiAgICAgICAgIGNhc2UgQXJpdGhNdWw6IHsKICAgICAgICAgICAgIGhhbmRsZUNvbW11
dGF0aXZpdHkoKTsKICAgICAgICAgICAgIEVkZ2UmIGNoaWxkMiA9IG1fbm9kZS0+Y2hpbGQyKCk7
CkBAIC0zNjMsNyArMzcyLDEyIEBAIHByaXZhdGU6CiAgICAgICAgICAgICAgICAgYnVpbGRlci5h
cHBlbmQocmlnaHRTdHJpbmcpOwogICAgICAgICAgICAgICAgIGNvbnZlcnRUb0xhenlKU1ZhbHVl
KG1fbm9kZSwgTGF6eUpTVmFsdWU6Om5ld1N0cmluZyhtX2dyYXBoLCBidWlsZGVyLnRvU3RyaW5n
KCkpKTsKICAgICAgICAgICAgICAgICBtX2NoYW5nZWQgPSB0cnVlOworICAgICAgICAgICAgICAg
IGJyZWFrOwogICAgICAgICAgICAgfQorCisgICAgICAgICAgICBpZiAobV9ub2RlLT5iaW5hcnlV
c2VLaW5kKCkgPT0gQmlnSW50VXNlKQorICAgICAgICAgICAgICAgIGhhbmRsZUNvbW11dGF0aXZp
dHkoKTsKKwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KIApkaWZmIC0tZ2l0IGEvUGVy
Zm9ybWFuY2VUZXN0cy9CaWdJbnRCZW5jaC9iaWctaW50LWNzZS5qcyBiL1BlcmZvcm1hbmNlVGVz
dHMvQmlnSW50QmVuY2gvYmlnLWludC1jc2UuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDhiNTNkZDcyMTI3NDZm
NTkwZTE1YjY2ODUzMjcwOTA1ZWM1MjIzMAotLS0gL2Rldi9udWxsCisrKyBiL1BlcmZvcm1hbmNl
VGVzdHMvQmlnSW50QmVuY2gvYmlnLWludC1jc2UuanMKQEAgLTAsMCArMSwxMDMgQEAKK2Z1bmN0
aW9uIGFzc2VydChhLCBlKSB7CisgICAgaWYgKGEgIT09IGUpCisgICAgICAgIHRocm93IG5ldyBF
cnJvcigiRXhwZWN0ZWQgIiArIGUgKyAiIGJ1dCBnb3Q6ICIgKyBhKTsKK30KKworZnVuY3Rpb24g
YmlnSW50QWRkKGEsIGIpIHsKKyAgICBsZXQgYyA9IGEgKyBiOworICAgIHJldHVybiBiICsgYSAr
IGM7Cit9Citub0lubGluZShiaWdJbnRBZGQpOworCitmb3IgKGxldCBpID0gMDsgaSA8IDEwMDAw
MDsgaSsrKSB7CisgICAgYXNzZXJ0KGJpZ0ludEFkZCgzbiwgNW4pLCAxNm4pOworfQorCitmb3Ig
KGxldCBpID0gMDsgaSA8IDEwMDAwMDsgaSsrKSB7CisgICAgYXNzZXJ0KGJpZ0ludEFkZCgweGZm
ZmZmZmZmZmZmZmZmZmZmZm4sIDB4YWFmZmZmZmZmZmZmZmZmZmZmZmZuKSwgMTYyNDQ5NDA3MDEw
NzE1Nzk1MzUxMTQyMG4pOworfQorCitmdW5jdGlvbiBiaWdJbnRNdWwoYSwgYikgeworICAgIGxl
dCBjID0gYSAqIGI7CisgICAgcmV0dXJuIGIgKiBhICsgYzsKK30KK25vSW5saW5lKGJpZ0ludE11
bCk7CisKK2ZvciAobGV0IGkgPSAwOyBpIDwgMTAwMDAwOyBpKyspIHsKKyAgICBhc3NlcnQoYmln
SW50TXVsKDNuLCA1biksIDMwbik7Cit9CisKK2ZvciAobGV0IGkgPSAwOyBpIDwgMTAwMDAwOyBp
KyspIHsKKyAgICBhc3NlcnQoYmlnSW50TXVsKDB4ZmZmZmZmZmZmZmZmZmZmZmZmbiwgMHhhYWZm
ZmZmZmZmZmZmZmZmZmZmZm4pLCA3NjI2ODU0ODU3ODk3NDczMTE0NDAzNTkxMTU1MTc1NjMyNDc3
MDkxNzkwODUwbik7Cit9CisKK2Z1bmN0aW9uIGJpZ0ludERpdihhLCBiKSB7CisgICAgbGV0IGMg
PSBhIC8gYjsKKyAgICByZXR1cm4gYSAvIGIgKyBjOworfQorbm9JbmxpbmUoYmlnSW50RGl2KTsK
KworZm9yIChsZXQgaSA9IDA7IGkgPCAxMDAwMDA7IGkrKykgeworICAgIGFzc2VydChiaWdJbnRE
aXYoMTVuLCA1biksIDZuKTsKK30KKworZm9yIChsZXQgaSA9IDA7IGkgPCAxMDAwMDA7IGkrKykg
eworICAgIGFzc2VydChiaWdJbnREaXYoMHhhYWZmZmZmZmZmZmZmZmZmZmZmZm4sIDB4ZmZmZmZm
ZmZmZmZmZmZmZmZmbiksIDM0Mm4pOworfQorCitmdW5jdGlvbiBiaWdJbnRTdWIoYSwgYikgewor
ICAgIGxldCBjID0gYSAtIGI7CisgICAgcmV0dXJuIGEgLSBiICsgYzsKK30KK25vSW5saW5lKGJp
Z0ludFN1Yik7CisKK2ZvciAobGV0IGkgPSAwOyBpIDwgMTAwMDAwOyBpKyspIHsKKyAgICBhc3Nl
cnQoYmlnSW50U3ViKDE1biwgNW4pLCAyMG4pOworfQorCitmb3IgKGxldCBpID0gMDsgaSA8IDEw
MDAwMDsgaSsrKSB7CisgICAgYXNzZXJ0KGJpZ0ludFN1YigweGFhZmZmZmZmZmZmZmZmZmZmZmZm
biwgMHhmZmZmZmZmZmZmZmZmZmZmZmZuKSwgMTYwNTYwNDYwNDE3NTY3OTM3MjY1NjY0MG4pOwor
fQorCitmdW5jdGlvbiBiaWdJbnRCaXRPcihhLCBiKSB7CisgICAgbGV0IGMgPSBhIHwgYjsKKyAg
ICByZXR1cm4gKGIgfCBhKSArIGM7Cit9Citub0lubGluZShiaWdJbnRCaXRPcik7CisKK2ZvciAo
bGV0IGkgPSAwOyBpIDwgMTAwMDAwOyBpKyspIHsKKyAgICBhc3NlcnQoYmlnSW50Qml0T3IoMGIx
MTAxbiwgMGIwMDEwbiksIDMwbik7Cit9CisKK2ZvciAobGV0IGkgPSAwOyBpIDwgMTAwMDAwOyBp
KyspIHsKKyAgICBhc3NlcnQoYmlnSW50Qml0T3IoMHhhYWZmZmZmZmZmZmZmZmZmZmZmZm4sIDB4
ZmZmZmZmZmZmZmZmZmZmZmZmbiksIDE2MTUwNDkzMzcxNDE0MTg2NjMwODQwMzBuKTsKK30KKwor
ZnVuY3Rpb24gYmlnSW50Qml0QW5kKGEsIGIpIHsKKyAgICBsZXQgYyA9IGEgJiBiOworICAgIHJl
dHVybiAoYiAmIGEpICsgYzsKK30KK25vSW5saW5lKGJpZ0ludEJpdEFuZCk7CisKK2ZvciAobGV0
IGkgPSAwOyBpIDwgMTAwMDAwOyBpKyspIHsKKyAgICBhc3NlcnQoYmlnSW50Qml0QW5kKDBiMTEw
MW4sIDBiMDAxMG4pLCAwbik7Cit9CisKK2ZvciAobGV0IGkgPSAwOyBpIDwgMTAwMDAwOyBpKysp
IHsKKyAgICBhc3NlcnQoYmlnSW50Qml0QW5kKDB4YWFmZmZmZmZmZmZmZmZmZmZmZmZuLCAweGZm
ZmZmZmZmZmZmZmZmZmZmZm4pLCA5NDQ0NzMyOTY1NzM5MjkwNDI3Mzkwbik7Cit9CisKK2Z1bmN0
aW9uIGJpZ0ludEJpdFhvcihhLCBiKSB7CisgICAgbGV0IGMgPSBhIF4gYjsKKyAgICByZXR1cm4g
KGIgXiBhKSArIGM7Cit9Citub0lubGluZShiaWdJbnRCaXRYb3IpOworCitmb3IgKGxldCBpID0g
MDsgaSA8IDEwMDAwMDsgaSsrKSB7CisgICAgYXNzZXJ0KGJpZ0ludEJpdFhvcigwYjExMDFuLCAw
YjAwMTBuKSwgMzBuKTsKK30KKworZm9yIChsZXQgaSA9IDA7IGkgPCAxMDAwMDA7IGkrKykgewor
ICAgIGFzc2VydChiaWdJbnRCaXRYb3IoMHhhYWZmZmZmZmZmZmZmZmZmZmZmZm4sIDB4ZmZmZmZm
ZmZmZmZmZmZmZmZmbiksIDE2MDU2MDQ2MDQxNzU2NzkzNzI2NTY2NDBuKTsKK30KKwpkaWZmIC0t
Z2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9CaWdJbnRCZW5jaC9iaWctaW50LWdsb2JhbC1jc2UuanMg
Yi9QZXJmb3JtYW5jZVRlc3RzL0JpZ0ludEJlbmNoL2JpZy1pbnQtZ2xvYmFsLWNzZS5qcwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5kNWMwMjQ2YjI2M2NhNzc3MGFmMWVlNzA4MWU2YzVhM2Q0YzE3YzNiCi0tLSAvZGV2
L251bGwKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9CaWdJbnRCZW5jaC9iaWctaW50LWdsb2JhbC1j
c2UuanMKQEAgLTAsMCArMSwxMjQgQEAKK2Z1bmN0aW9uIGFzc2VydChhLCBlKSB7CisgICAgaWYg
KGEgIT09IGUpCisgICAgICAgIHRocm93IG5ldyBFcnJvcigiRXhwZWN0ZWQgIiArIGUgKyAiIGJ1
dCBnb3Q6ICIgKyBhKTsKK30KKworZnVuY3Rpb24gYmlnSW50QWRkKGEsIGIpIHsKKyAgICBsZXQg
YyA9IGEgKyBiOworICAgIGlmIChiKSB7CisgICAgICAgIGFzc2VydChjLCBhICsgYik7CisgICAg
fQorICAgIHJldHVybiBhICsgYiArIGM7Cit9Citub0lubGluZShiaWdJbnRBZGQpOworCitmb3Ig
KGxldCBpID0gMDsgaSA8IDEwMDAwMDsgaSsrKSB7CisgICAgYXNzZXJ0KGJpZ0ludEFkZCgzbiwg
NW4pLCAxNm4pOworfQorCitmb3IgKGxldCBpID0gMDsgaSA8IDEwMDAwMDsgaSsrKSB7CisgICAg
YXNzZXJ0KGJpZ0ludEFkZCgweGZmZmZmZmZmZmZmZmZmZmZmZm4sIDB4YWFmZmZmZmZmZmZmZmZm
ZmZmZmZuKSwgMTYyNDQ5NDA3MDEwNzE1Nzk1MzUxMTQyMG4pOworfQorCitmdW5jdGlvbiBiaWdJ
bnRNdWwoYSwgYikgeworICAgIGxldCBjID0gYSAqIGI7CisgICAgaWYgKGIpIHsKKyAgICAgICAg
YXNzZXJ0KGMsIGEgKiBiKTsKKyAgICB9CisgICAgcmV0dXJuIGEgKiBiICsgYzsKK30KK25vSW5s
aW5lKGJpZ0ludE11bCk7CisKK2ZvciAobGV0IGkgPSAwOyBpIDwgMTAwMDAwOyBpKyspIHsKKyAg
ICBhc3NlcnQoYmlnSW50TXVsKDNuLCA1biksIDMwbik7Cit9CisKK2ZvciAobGV0IGkgPSAwOyBp
IDwgMTAwMDAwOyBpKyspIHsKKyAgICBhc3NlcnQoYmlnSW50TXVsKDB4ZmZmZmZmZmZmZmZmZmZm
ZmZmbiwgMHhhYWZmZmZmZmZmZmZmZmZmZmZmZm4pLCA3NjI2ODU0ODU3ODk3NDczMTE0NDAzNTkx
MTU1MTc1NjMyNDc3MDkxNzkwODUwbik7Cit9CisKK2Z1bmN0aW9uIGJpZ0ludERpdihhLCBiKSB7
CisgICAgbGV0IGMgPSBhIC8gYjsKKyAgICBpZiAoYikgeworICAgICAgICBhc3NlcnQoYywgYSAv
IGIpOworICAgIH0KKyAgICByZXR1cm4gYSAvIGIgKyBjOworfQorbm9JbmxpbmUoYmlnSW50RGl2
KTsKKworZm9yIChsZXQgaSA9IDA7IGkgPCAxMDAwMDA7IGkrKykgeworICAgIGFzc2VydChiaWdJ
bnREaXYoMTVuLCA1biksIDZuKTsKK30KKworZm9yIChsZXQgaSA9IDA7IGkgPCAxMDAwMDA7IGkr
KykgeworICAgIGFzc2VydChiaWdJbnREaXYoMHhhYWZmZmZmZmZmZmZmZmZmZmZmZm4sIDB4ZmZm
ZmZmZmZmZmZmZmZmZmZmbiksIDM0Mm4pOworfQorCitmdW5jdGlvbiBiaWdJbnRTdWIoYSwgYikg
eworICAgIGxldCBjID0gYSAtIGI7CisgICAgaWYgKGIpIHsKKyAgICAgICAgYXNzZXJ0KGMsIGEg
LSBiKTsKKyAgICB9CisgICAgcmV0dXJuIGEgLSBiICsgYzsKK30KK25vSW5saW5lKGJpZ0ludFN1
Yik7CisKK2ZvciAobGV0IGkgPSAwOyBpIDwgMTAwMDAwOyBpKyspIHsKKyAgICBhc3NlcnQoYmln
SW50U3ViKDE1biwgNW4pLCAyMG4pOworfQorCitmb3IgKGxldCBpID0gMDsgaSA8IDEwMDAwMDsg
aSsrKSB7CisgICAgYXNzZXJ0KGJpZ0ludFN1YigweGFhZmZmZmZmZmZmZmZmZmZmZmZmbiwgMHhm
ZmZmZmZmZmZmZmZmZmZmZmZuKSwgMTYwNTYwNDYwNDE3NTY3OTM3MjY1NjY0MG4pOworfQorCitm
dW5jdGlvbiBiaWdJbnRCaXRPcihhLCBiKSB7CisgICAgbGV0IGMgPSBhIHwgYjsKKyAgICBpZiAo
YikgeworICAgICAgICBhc3NlcnQoYywgYSB8IGIpOworICAgIH0KKyAgICByZXR1cm4gKGEgfCBi
KSArIGM7Cit9Citub0lubGluZShiaWdJbnRCaXRPcik7CisKK2ZvciAobGV0IGkgPSAwOyBpIDwg
MTAwMDAwOyBpKyspIHsKKyAgICBhc3NlcnQoYmlnSW50Qml0T3IoMGIxMTAxbiwgMGIwMDEwbiks
IDMwbik7Cit9CisKK2ZvciAobGV0IGkgPSAwOyBpIDwgMTAwMDAwOyBpKyspIHsKKyAgICBhc3Nl
cnQoYmlnSW50Qml0T3IoMHhhYWZmZmZmZmZmZmZmZmZmZmZmZm4sIDB4ZmZmZmZmZmZmZmZmZmZm
ZmZmbiksIDE2MTUwNDkzMzcxNDE0MTg2NjMwODQwMzBuKTsKK30KKworZnVuY3Rpb24gYmlnSW50
Qml0QW5kKGEsIGIpIHsKKyAgICBsZXQgYyA9IGEgJiBiOworICAgIGlmIChiKSB7CisgICAgICAg
IGFzc2VydChjLCBhICYgYik7CisgICAgfQorICAgIHJldHVybiAoYSAmIGIpICsgYzsKK30KK25v
SW5saW5lKGJpZ0ludEJpdEFuZCk7CisKK2ZvciAobGV0IGkgPSAwOyBpIDwgMTAwMDAwOyBpKysp
IHsKKyAgICBhc3NlcnQoYmlnSW50Qml0QW5kKDBiMTEwMW4sIDBiMDAxMG4pLCAwbik7Cit9CisK
K2ZvciAobGV0IGkgPSAwOyBpIDwgMTAwMDAwOyBpKyspIHsKKyAgICBhc3NlcnQoYmlnSW50Qml0
QW5kKDB4YWFmZmZmZmZmZmZmZmZmZmZmZmZuLCAweGZmZmZmZmZmZmZmZmZmZmZmZm4pLCA5NDQ0
NzMyOTY1NzM5MjkwNDI3Mzkwbik7Cit9CisKK2Z1bmN0aW9uIGJpZ0ludEJpdFhvcihhLCBiKSB7
CisgICAgbGV0IGMgPSBhIF4gYjsKKyAgICBpZiAoYikgeworICAgICAgICBhc3NlcnQoYywgYSBe
IGIpOworICAgIH0KKyAgICByZXR1cm4gKGEgXiBiKSArIGM7Cit9Citub0lubGluZShiaWdJbnRC
aXRYb3IpOworCitmb3IgKGxldCBpID0gMDsgaSA8IDEwMDAwMDsgaSsrKSB7CisgICAgYXNzZXJ0
KGJpZ0ludEJpdFhvcigwYjExMDFuLCAwYjAwMTBuKSwgMzBuKTsKK30KKworZm9yIChsZXQgaSA9
IDA7IGkgPCAxMDAwMDA7IGkrKykgeworICAgIGFzc2VydChiaWdJbnRCaXRYb3IoMHhhYWZmZmZm
ZmZmZmZmZmZmZmZmZm4sIDB4ZmZmZmZmZmZmZmZmZmZmZmZmbiksIDE2MDU2MDQ2MDQxNzU2Nzkz
NzI2NTY2NDBuKTsKK30KKwpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9CaWdJbnRCZW5j
aC9iaWctaW50LWxpY20uanMgYi9QZXJmb3JtYW5jZVRlc3RzL0JpZ0ludEJlbmNoL2JpZy1pbnQt
bGljbS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi42YzY0Yzk3NTc5ODNlZGM1OWUyNWU2YmQ5MTJhMDQ5ZjA3ZTZi
MmNlCi0tLSAvZGV2L251bGwKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9CaWdJbnRCZW5jaC9iaWct
aW50LWxpY20uanMKQEAgLTAsMCArMSwxOSBAQAorZnVuY3Rpb24gYXNzZXJ0KGEsIGUpIHsKKyAg
ICBpZiAoYSAhPT0gZSkKKyAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJFeHBlY3RlZCAiICsgZSAr
ICIgYnV0IGdvdDogIiArIGEpOworfQorCitmdW5jdGlvbiBpdGVyYXRpb24oYSwgYiwgcikgewor
ICAgIGxldCBhY2MgPSAwbjsKKyAgICBmb3IgKGxldCBpID0gMG47IGkgPCByOyBpICs9IDFuKSB7
CisgICAgICAgIGFjYyArPSBhICsgYjsKKyAgICB9CisKKyAgICByZXR1cm4gYWNjOworfQorbm9J
bmxpbmUoaXRlcmF0aW9uKTsKKworZm9yIChsZXQgaSA9IDA7IGkgPCAxMDAwMDsgaSsrKSB7Cisg
ICAgYXNzZXJ0KGl0ZXJhdGlvbigxbiwgMm4sIDEwMG4pLCAzMDBuKQorfQorCmRpZmYgLS1naXQg
YS9QZXJmb3JtYW5jZVRlc3RzL0NoYW5nZUxvZyBiL1BlcmZvcm1hbmNlVGVzdHMvQ2hhbmdlTG9n
CmluZGV4IGMxMTVjNWJhMzFhZjM0ZmY5NmJhNmNjOTY2YjMxOWRkYmQwMjVjNmUuLjQ3YjRmNjM0
MjRkMjQyYzJjZjgwOTZiOTRmZTJjMWU1ZWM3YWQzOGIgMTAwNjQ0Ci0tLSBhL1BlcmZvcm1hbmNl
VGVzdHMvQ2hhbmdlTG9nCisrKyBiL1BlcmZvcm1hbmNlVGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTQgQEAKKzIwMTgtMTItMjAgIENhaW8gTGltYSAgPHRpY2Fpb2xpbWFAZ21haWwuY29tPgor
CisgICAgICAgIFtCaWdJbnRdIFdlIHNob3VsZCBlbmFibGUgQ1NFIGludG8gYXJpdGhtZXRpYyBv
cGVyYXRpb25zIHRoYXQgc3BlY3VsYXRlIEJpZ0ludFVzZQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkyNzIzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBCaWdJbnRCZW5jaC9iaWctaW50LWNzZS5qczog
QWRkZWQuCisgICAgICAgICogQmlnSW50QmVuY2gvYmlnLWludC1nbG9iYWwtY3NlLmpzOiBBZGRl
ZC4KKyAgICAgICAgKiBCaWdJbnRCZW5jaC9iaWctaW50LWxpY20uanM6IEFkZGVkLgorCiAyMDE4
LTEyLTE5ICBDb21taXQgUXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KIAogICAgICAg
ICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByMjM5Mzc3Lgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>