<?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>229035</bug_id>
          
          <creation_ts>2021-08-12 05:03:00 -0700</creation_ts>
          <short_desc>RISCV64 support in LLInt</short_desc>
          <delta_ts>2022-03-11 05:33:46 -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>New Bugs</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>
          
          <blocked>237775</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Zan Dobersek">zan</reporter>
          <assigned_to name="Zan Dobersek">zan</assigned_to>
          <cc>annulen</cc>
    
    <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>pierceandjelkovic</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>saam</cc>
    
    <cc>sergio</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>ysuzuki</cc>
    
    <cc>zdobersek</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1783794</commentid>
    <comment_count>0</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2021-08-12 05:03:00 -0700</bug_when>
    <thetext>This would track progress on the 64-bit RISC-V support in the LLInt system, underlying subsequent enablement of JIT levels.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1783795</commentid>
    <comment_count>1</comment_count>
      <attachid>435416</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2021-08-12 05:13:49 -0700</bug_when>
    <thetext>Created attachment 435416
WIP

This patch contains the current snapshot of the done work. Main item is the riscv64 offlineasm backend. Necessary ENABLE(ASSEMBLER) facilities are also added to keep things compiling (even with ENABLE_JIT disabled), but every JIT-level operation is currently no-op.

The offlineasm backend still can be improved and simplified. For the moment only the used instructions are supported.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1785426</commentid>
    <comment_count>2</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-08-19 05:03:15 -0700</bug_when>
    <thetext>&lt;rdar://problem/82120908&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1785514</commentid>
    <comment_count>3</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-08-19 10:31:52 -0700</bug_when>
    <thetext>I think this is very cool!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1786343</commentid>
    <comment_count>4</comment_count>
      <attachid>436160</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2021-08-23 01:12:54 -0700</bug_when>
    <thetext>Created attachment 436160
WIP

Templated no-op methods in MacroAssemblerRISCV64.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1788080</commentid>
    <comment_count>5</comment_count>
      <attachid>436644</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2021-08-27 11:26:54 -0700</bug_when>
    <thetext>Created attachment 436644
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1788181</commentid>
    <comment_count>6</comment_count>
      <attachid>436644</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-08-27 14:40:13 -0700</bug_when>
    <thetext>Comment on attachment 436644
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=436644&amp;action=review

Great! I found several bugs so r-, but I think the shape of the patch looks quite great.

&gt; Source/JavaScriptCore/assembler/RISCV64Assembler.h:69
&gt; +    x31,

How about defining it via FOR_EACH_GP_REGISTER? (ARM64Assembler.h is doing so).

&gt; Source/JavaScriptCore/assembler/RISCV64Assembler.h:77
&gt; +    fp = x8,

Let&apos;s define FOR_EACH_REGISTER_ALIAS and use it here.

&gt; Source/JavaScriptCore/assembler/RISCV64Assembler.h:83
&gt; +} SPRegisterID;

How about defining it via FOR_EACH_SP_REGISTER? (ARM64Assembler.h is doing so).

&gt; Source/JavaScriptCore/assembler/RISCV64Assembler.h:119
&gt; +} FPRegisterID;

How about defining it via FOR_EACH_FP_REGISTER? (ARM64Assembler.h is doing so).

&gt; Source/JavaScriptCore/assembler/RISCV64Assembler.h:147
&gt; +        static const char* const nameForRegister[numberOfRegisters()] = {
&gt; +            &quot;x0&quot;, &quot;x1&quot;, &quot;x2&quot;, &quot;x3&quot;, &quot;x4&quot;, &quot;x5&quot;, &quot;x6&quot;, &quot;x7&quot;, &quot;x8&quot;, &quot;x9&quot;, &quot;x10&quot;, &quot;x11&quot;, &quot;x12&quot;, &quot;x13&quot;, &quot;x14&quot;, &quot;x15&quot;,
&gt; +            &quot;x16&quot;, &quot;x17&quot;, &quot;x18&quot;, &quot;x19&quot;, &quot;x20&quot;, &quot;x21&quot;, &quot;x22&quot;, &quot;x23&quot;, &quot;x24&quot;, &quot;x25&quot;, &quot;x26&quot;, &quot;x27&quot;, &quot;x28&quot;, &quot;x29&quot;, &quot;x30&quot;, &quot;x31&quot;,
&gt; +        };

How about defining it via FOR_EACH_GP_REGISTER? (ARM64Assembler.h is doing so).

&gt; Source/JavaScriptCore/assembler/RISCV64Assembler.h:156
&gt; +        ASSERT(id &gt;= firstSPRegister() &amp;&amp; id &lt;= lastSPRegister());
&gt; +        static const char* const nameForRegister[numberOfSPRegisters()] = { &quot;pc&quot;, };
&gt; +        return nameForRegister[id];
&gt; +    }

How about defining it via FOR_EACH_SP_REGISTER? (ARM64Assembler.h is doing so).

&gt; Source/JavaScriptCore/assembler/RISCV64Assembler.h:164
&gt; +        ASSERT(id &gt;= firstFPRegister() &amp;&amp; id &lt;= lastFPRegister());
&gt; +        static const char* const nameForRegister[numberOfFPRegisters()] = {
&gt; +            &quot;f0&quot;, &quot;f1&quot;, &quot;f2&quot;, &quot;f3&quot;, &quot;f4&quot;, &quot;f5&quot;, &quot;f6&quot;, &quot;f7&quot;, &quot;f8&quot;, &quot;f9&quot;, &quot;f10&quot;, &quot;f11&quot;, &quot;f12&quot;, &quot;f13&quot;, &quot;f14&quot;, &quot;f15&quot;,
&gt; +            &quot;f16&quot;, &quot;f17&quot;, &quot;f18&quot;, &quot;f19&quot;, &quot;f20&quot;, &quot;f21&quot;, &quot;f22&quot;, &quot;f23&quot;, &quot;f24&quot;, &quot;f25&quot;, &quot;f26&quot;, &quot;f27&quot;, &quot;f28&quot;, &quot;f29&quot;, &quot;f30&quot;, &quot;f31&quot;,
&gt; +        };

How about defining it via FOR_EACH_FP_REGISTER? (ARM64Assembler.h is doing so).

&gt; Source/JavaScriptCore/assembler/RISCV64Registers.h:28
&gt; +#define RegisterNames RISCV64Registers

Maybe adding a link to https://riscv.org/wp-content/uploads/2015/01/riscv-calling.pdf would be good.

&gt; Source/JavaScriptCore/assembler/RISCV64Registers.h:31
&gt; +    macro(zero, &quot;zero&quot;, 1, 0)       \

Since it is hardware one, I think it should not be included in GP list here. (see ARM64Registers.h&apos;s zr handling).

&gt; Source/JavaScriptCore/assembler/RISCV64Registers.h:40
&gt; +    macro(ra, &quot;ra&quot;, 1, 0)           \
&gt; +    macro(sp, &quot;sp&quot;, 1, 1)           \
&gt; +    macro(gp, &quot;gp&quot;, 1, 0)           \
&gt; +    macro(tp, &quot;tp&quot;, 1, 0)           \
&gt; +    macro(x5, &quot;x5&quot;, 0, 0)           \
&gt; +    macro(x6, &quot;x6&quot;, 0, 0)           \
&gt; +    macro(x7, &quot;x7&quot;, 0, 0)           \
&gt; +    macro(fp, &quot;fp&quot;, 1, 1)           \
&gt; +    macro(x9, &quot;x9&quot;, 0, 1)           \

For these names, you can define via FOR_EACH_REGISTER_ALIAS.

&gt; Source/JavaScriptCore/assembler/RISCV64Registers.h:62
&gt; +    macro(x30, &quot;x30&quot;, 0, 0)         \
&gt; +    macro(x31, &quot;x31&quot;, 0, 0)

Add comment like,
/* MacroAssembler scratch registers */

&gt; Source/JavaScriptCore/assembler/RISCV64Registers.h:96
&gt; +    macro(f31, &quot;f31&quot;, 0, 0)

Let&apos;s add FOR_EACH_SP_REGISTER too.

&gt; Source/JavaScriptCore/jit/FPRInfo.h:359
&gt; +    static constexpr FPRReg fpRegT0 = RISCV64Registers::f0;
&gt; +    static constexpr FPRReg fpRegT1 = RISCV64Registers::f1;
&gt; +    static constexpr FPRReg fpRegT2 = RISCV64Registers::f2;
&gt; +    static constexpr FPRReg fpRegT3 = RISCV64Registers::f3;
&gt; +    static constexpr FPRReg fpRegT4 = RISCV64Registers::f4;
&gt; +    static constexpr FPRReg fpRegT5 = RISCV64Registers::f5;
&gt; +    static constexpr FPRReg fpRegT6 = RISCV64Registers::f6;
&gt; +    static constexpr FPRReg fpRegT7 = RISCV64Registers::f7;
&gt; +    static constexpr FPRReg fpRegT8 = RISCV64Registers::f10;
&gt; +    static constexpr FPRReg fpRegT9 = RISCV64Registers::f11;
&gt; +    static constexpr FPRReg fpRegT10 = RISCV64Registers::f12;
&gt; +    static constexpr FPRReg fpRegT11 = RISCV64Registers::f13;
&gt; +    static constexpr FPRReg fpRegT12 = RISCV64Registers::f14;
&gt; +    static constexpr FPRReg fpRegT13 = RISCV64Registers::f15;
&gt; +    static constexpr FPRReg fpRegT14 = RISCV64Registers::f16;
&gt; +    static constexpr FPRReg fpRegT15 = RISCV64Registers::f17;
&gt; +    static constexpr FPRReg fpRegT16 = RISCV64Registers::f28;
&gt; +    static constexpr FPRReg fpRegT17 = RISCV64Registers::f29;
&gt; +    static constexpr FPRReg fpRegT18 = RISCV64Registers::f30;
&gt; +    static constexpr FPRReg fpRegT19 = RISCV64Registers::f31;

If some of these registers are used for internal macro-assembler / offline-assembler scratch registers, then we need to exclude them from this list.

&gt; Source/JavaScriptCore/jit/FPRInfo.h:383
&gt; +    static constexpr FPRReg argumentFPR0 = RISCV64Registers::f10;
&gt; +    static constexpr FPRReg argumentFPR1 = RISCV64Registers::f11;
&gt; +    static constexpr FPRReg argumentFPR2 = RISCV64Registers::f12;
&gt; +    static constexpr FPRReg argumentFPR3 = RISCV64Registers::f13;
&gt; +    static constexpr FPRReg argumentFPR4 = RISCV64Registers::f14;
&gt; +    static constexpr FPRReg argumentFPR5 = RISCV64Registers::f15;
&gt; +    static constexpr FPRReg argumentFPR6 = RISCV64Registers::f16;
&gt; +    static constexpr FPRReg argumentFPR7 = RISCV64Registers::f17;
&gt; +
&gt; +    static constexpr FPRReg returnValueFPR = RISCV64Registers::f10;

Let&apos;s annotate it with FPRInfo name for readability (Like ARM64 FPRInfo.h).

static constexpr FPRReg argumentFPR0 = RISCV64Registers::f10; // fpRegT8

&gt; Source/JavaScriptCore/jit/GPRInfo.h:831
&gt; +    static constexpr GPRReg regT13 = RISCV64Registers::x30;
&gt; +    static constexpr GPRReg regT14 = RISCV64Registers::x31;

We are using x28, x29, x30 and x31 for LLInt scratch registers. Possibly we will do the same thing for MacroAssembler. Then we should not list it here.
And we need to adjust numberOfRegisters etc. too because these registers will be removed from here.
BTW, can we reduce # of these scratch registers? If we can reduce them, this means that we can offer more registers to GPRInfo.h

And please adjust toRegister, toIndex, numberOfRegisters etc. too.

&gt; Source/JavaScriptCore/jit/GPRInfo.h:842
&gt; +    static constexpr GPRReg regCS8 = RISCV64Registers::x25;
&gt; +    static constexpr GPRReg regCS9 = RISCV64Registers::x26;

Let&apos;s annotate it with special name.

static constexpr GPRReg regCS8 = RISCV64Registers::x25; // numberTagRegister

&gt; Source/JavaScriptCore/jit/GPRInfo.h:865
&gt; +    static constexpr GPRReg argumentGPR0 = RISCV64Registers::x10;
&gt; +    static constexpr GPRReg argumentGPR1 = RISCV64Registers::x11;
&gt; +    static constexpr GPRReg argumentGPR2 = RISCV64Registers::x12;
&gt; +    static constexpr GPRReg argumentGPR3 = RISCV64Registers::x13;
&gt; +    static constexpr GPRReg argumentGPR4 = RISCV64Registers::x14;
&gt; +    static constexpr GPRReg argumentGPR5 = RISCV64Registers::x15;
&gt; +    static constexpr GPRReg argumentGPR6 = RISCV64Registers::x16;
&gt; +    static constexpr GPRReg argumentGPR7 = RISCV64Registers::x17;
&gt; +
&gt; +    static constexpr GPRReg nonArgGPR0 = RISCV64Registers::x5;
&gt; +    static constexpr GPRReg nonArgGPR1 = RISCV64Registers::x6;
&gt; +
&gt; +    static constexpr GPRReg returnValueGPR = RISCV64Registers::x10;
&gt; +    static constexpr GPRReg returnValueGPR2 = RISCV64Registers::x11;
&gt; +
&gt; +    static constexpr GPRReg nonPreservedNonReturnGPR = RISCV64Registers::x12;
&gt; +    static constexpr GPRReg nonPreservedNonArgumentGPR0 = RISCV64Registers::x5;
&gt; +    static constexpr GPRReg nonPreservedNonArgumentGPR1 = RISCV64Registers::x6;
&gt; +
&gt; +    static constexpr GPRReg wasmScratchGPR0 = RISCV64Registers::x6;
&gt; +    static constexpr GPRReg wasmScratchGPR1 = RISCV64Registers::x7;

Let&apos;s annotate them with regTx names.

static constexpr GPRReg argumentGPR0 = RISCV64Registers::x10; // regT0

&gt; Source/JavaScriptCore/offlineasm/riscv64.rb:23
&gt; +

Let&apos;s write a documentation comment about how registers are mapped in LLInt. (See arm64.rb for example).
And let&apos;s describe that x28, x29, x30 and x31 are used for internal offlineasm scratch registers.

&gt; Source/JavaScriptCore/offlineasm/riscv64.rb:550
&gt; +def riscv64EmitConditionalBranchForMultiplicationOperation(operands, size, test)
&gt; +    raise &quot;Unsupported size&quot; unless size == :w
&gt; +
&gt; +    def emitMultiplication(lhs, rhs)
&gt; +        $asm.puts &quot;sext.w x28, #{lhs.riscv64Operand}&quot;
&gt; +        $asm.puts &quot;sext.w x29, #{rhs.riscv64Operand}&quot;
&gt; +        $asm.puts &quot;mulh x30, x28, x29&quot;
&gt; +        $asm.puts &quot;mul x29, x28, x29&quot;
&gt; +    end
&gt; +
&gt; +    def emitBranchForTest(test, targetHi, targetLo, label)
&gt; +        case test
&gt; +        when :z
&gt; +            $asm.puts &quot;or x31, #{targetLo.riscv64Operand}, #{targetHi.riscv64Operand}&quot;
&gt; +            $asm.puts &quot;beqz x31, #{label.asmLabel}&quot;
&gt; +        when :nz
&gt; +            $asm.puts &quot;or x31, #{targetLo.riscv64Operand}, #{targetHi.riscv64Operand}&quot;
&gt; +            $asm.puts &quot;bnez x31, #{label.asmLabel}&quot;
&gt; +        when :s
&gt; +            $asm.puts &quot;bltz #{targetHi.riscv64Operand}, #{label.asmLabel}&quot;
&gt; +        else
&gt; +            raise &quot;Unsupported test&quot;
&gt; +        end
&gt; +    end
&gt; +
&gt; +    case riscv64OperandTypes(operands)
&gt; +    when [RegisterID, RegisterID, LocalLabelReference]
&gt; +        emitMultiplication(operands[0], operands[1])
&gt; +        $asm.puts &quot;mv #{operands[1].riscv64Operand}, x29&quot;
&gt; +        riscv64EmitRegisterMask(operands[1], size)
&gt; +
&gt; +        emitBranchForTest(test, RISCV64ScratchRegister.x30, RISCV64ScratchRegister.x29, operands[2])
&gt; +    when [Immediate, RegisterID, LocalLabelReference]
&gt; +        $asm.puts &quot;li x28, #{operands[0].riscv64Operand}&quot;
&gt; +        emitMultiplication(RISCV64ScratchRegister.x28, operands[1])
&gt; +        $asm.puts &quot;mv #{operands[1].riscv64Operand}, x29&quot;
&gt; +        riscv64EmitRegisterMask(operands[1], size)
&gt; +
&gt; +        emitBranchForTest(test, RISCV64ScratchRegister.x30, RISCV64ScratchRegister.x29, operands[2])
&gt; +    else
&gt; +        riscv64RaiseMismatchedOperands(operands)
&gt; +    end
&gt; +end

We are using x28, x29, x30, and x31. This means that these four registers will become macro-assembler only registers.
Is it possible to reduce # of registers we are using for scratch registers? If we cannot, then please note that x28-31 are macro-assembler registers, and we should remove them from regTX etc.

&gt; Source/JavaScriptCore/offlineasm/riscv64.rb:1219
&gt; +        when &apos;t11&apos;
&gt; +            &apos;x28&apos;
&gt; +        when &apos;t12&apos;
&gt; +            &apos;x29&apos;
&gt; +        when &apos;t13&apos;
&gt; +            &apos;x30&apos;
&gt; +        when &apos;t14&apos;
&gt; +            &apos;x31&apos;

If they are used for llint offline-asm internal scratch registers, then we cannot use it for temporary registers for user program. Let&apos;s remove them.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1788210</commentid>
    <comment_count>7</comment_count>
      <attachid>436644</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-08-27 15:38:41 -0700</bug_when>
    <thetext>Comment on attachment 436644
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=436644&amp;action=review

&gt; Source/JavaScriptCore/offlineasm/riscv64.rb:508
&gt; +def riscv64EmitConditionalBranchForMultiplicationOperation(operands, size, test)

I think x28 is only used for this multiplication branching. And only instruction used in LLInt is bmulio.
And in risc.rb, we are lowering it to different form. So maybe we don&apos;t need to support this if it requires many registers.
Then, we can reduce # of scratch registers.

So, let&apos;s try using riscLowerXXX and assignRegistersToTemporaries things (See arm64.rb for usage).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1788297</commentid>
    <comment_count>8</comment_count>
      <attachid>436644</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2021-08-28 05:57:50 -0700</bug_when>
    <thetext>Comment on attachment 436644
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=436644&amp;action=review

First round of incorporating review feedback (the simpler parts).

&gt;&gt; Source/JavaScriptCore/assembler/RISCV64Assembler.h:69
&gt;&gt; +    x31,
&gt; 
&gt; How about defining it via FOR_EACH_GP_REGISTER? (ARM64Assembler.h is doing so).

Done, along with other recommended changes for this file.

&gt;&gt; Source/JavaScriptCore/assembler/RISCV64Registers.h:28
&gt;&gt; +#define RegisterNames RISCV64Registers
&gt; 
&gt; Maybe adding a link to https://riscv.org/wp-content/uploads/2015/01/riscv-calling.pdf would be good.

Will do.

&gt;&gt; Source/JavaScriptCore/assembler/RISCV64Registers.h:31
&gt;&gt; +    macro(zero, &quot;zero&quot;, 1, 0)       \
&gt; 
&gt; Since it is hardware one, I think it should not be included in GP list here. (see ARM64Registers.h&apos;s zr handling).

OK, will move to the SP registers.

&gt;&gt; Source/JavaScriptCore/assembler/RISCV64Registers.h:40
&gt;&gt; +    macro(x9, &quot;x9&quot;, 0, 1)           \
&gt; 
&gt; For these names, you can define via FOR_EACH_REGISTER_ALIAS.

Done.

&gt;&gt; Source/JavaScriptCore/assembler/RISCV64Registers.h:62
&gt;&gt; +    macro(x31, &quot;x31&quot;, 0, 0)
&gt; 
&gt; Add comment like,
&gt; /* MacroAssembler scratch registers */

Will do.

&gt;&gt; Source/JavaScriptCore/assembler/RISCV64Registers.h:96
&gt;&gt; +    macro(f31, &quot;f31&quot;, 0, 0)
&gt; 
&gt; Let&apos;s add FOR_EACH_SP_REGISTER too.

Right.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1788302</commentid>
    <comment_count>9</comment_count>
      <attachid>436644</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2021-08-28 08:41:31 -0700</bug_when>
    <thetext>Comment on attachment 436644
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=436644&amp;action=review

&gt;&gt; Source/JavaScriptCore/jit/FPRInfo.h:359
&gt;&gt; +    static constexpr FPRReg fpRegT19 = RISCV64Registers::f31;
&gt; 
&gt; If some of these registers are used for internal macro-assembler / offline-assembler scratch registers, then we need to exclude them from this list.

For now none of these are used as scratch registers.

&gt;&gt; Source/JavaScriptCore/jit/FPRInfo.h:383
&gt;&gt; +    static constexpr FPRReg returnValueFPR = RISCV64Registers::f10;
&gt; 
&gt; Let&apos;s annotate it with FPRInfo name for readability (Like ARM64 FPRInfo.h).
&gt; 
&gt; static constexpr FPRReg argumentFPR0 = RISCV64Registers::f10; // fpRegT8

Done.

&gt;&gt; Source/JavaScriptCore/jit/GPRInfo.h:831
&gt;&gt; +    static constexpr GPRReg regT14 = RISCV64Registers::x31;
&gt; 
&gt; We are using x28, x29, x30 and x31 for LLInt scratch registers. Possibly we will do the same thing for MacroAssembler. Then we should not list it here.
&gt; And we need to adjust numberOfRegisters etc. too because these registers will be removed from here.
&gt; BTW, can we reduce # of these scratch registers? If we can reduce them, this means that we can offer more registers to GPRInfo.h
&gt; 
&gt; And please adjust toRegister, toIndex, numberOfRegisters etc. too.

I was able to reduce the scratch registers to just x30 and x31. So regT13 and regT14 are removed, and associated constants and mapping functions are adjusted.

&gt;&gt; Source/JavaScriptCore/jit/GPRInfo.h:842
&gt;&gt; +    static constexpr GPRReg regCS9 = RISCV64Registers::x26;
&gt; 
&gt; Let&apos;s annotate it with special name.
&gt; 
&gt; static constexpr GPRReg regCS8 = RISCV64Registers::x25; // numberTagRegister

OK.

&gt;&gt; Source/JavaScriptCore/jit/GPRInfo.h:865
&gt;&gt; +    static constexpr GPRReg wasmScratchGPR1 = RISCV64Registers::x7;
&gt; 
&gt; Let&apos;s annotate them with regTx names.
&gt; 
&gt; static constexpr GPRReg argumentGPR0 = RISCV64Registers::x10; // regT0

OK.

&gt;&gt; Source/JavaScriptCore/offlineasm/riscv64.rb:23
&gt;&gt; +
&gt; 
&gt; Let&apos;s write a documentation comment about how registers are mapped in LLInt. (See arm64.rb for example).
&gt; And let&apos;s describe that x28, x29, x30 and x31 are used for internal offlineasm scratch registers.

Will do.

&gt;&gt; Source/JavaScriptCore/offlineasm/riscv64.rb:508
&gt;&gt; +def riscv64EmitConditionalBranchForMultiplicationOperation(operands, size, test)
&gt; 
&gt; I think x28 is only used for this multiplication branching. And only instruction used in LLInt is bmulio.
&gt; And in risc.rb, we are lowering it to different form. So maybe we don&apos;t need to support this if it requires many registers.
&gt; Then, we can reduce # of scratch registers.
&gt; 
&gt; So, let&apos;s try using riscLowerXXX and assignRegistersToTemporaries things (See arm64.rb for usage).

I reworked this to only use x30 and x31 as scratch registers. x28 and x29 are not needed as scratch registers anymore. Some general fixes to correctness were also done.

&gt;&gt; Source/JavaScriptCore/offlineasm/riscv64.rb:550
&gt;&gt; +end
&gt; 
&gt; We are using x28, x29, x30, and x31. This means that these four registers will become macro-assembler only registers.
&gt; Is it possible to reduce # of registers we are using for scratch registers? If we cannot, then please note that x28-31 are macro-assembler registers, and we should remove them from regTX etc.

Reduced to just x30 and x31, and GPRInfo was updated appropriately.

&gt;&gt; Source/JavaScriptCore/offlineasm/riscv64.rb:1219
&gt;&gt; +            &apos;x31&apos;
&gt; 
&gt; If they are used for llint offline-asm internal scratch registers, then we cannot use it for temporary registers for user program. Let&apos;s remove them.

After revisiting this, there&apos;s basically no t8-t14 registers defined in offlineasm and used in LLint anyway, so those mappings were removed. Same applies to floating-point registers ft6-ft11.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1788309</commentid>
    <comment_count>10</comment_count>
      <attachid>436717</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2021-08-28 09:10:36 -0700</bug_when>
    <thetext>Created attachment 436717
Updated patch, only missing thing is the riscv64.rb documentation.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1788337</commentid>
    <comment_count>11</comment_count>
      <attachid>436717</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-08-28 14:34:22 -0700</bug_when>
    <thetext>Comment on attachment 436717
Updated patch, only missing thing is the riscv64.rb documentation.

View in context: https://bugs.webkit.org/attachment.cgi?id=436717&amp;action=review

Commented, looks very nice.

&gt; Source/JavaScriptCore/assembler/MacroAssemblerRISCV64.h:53
&gt; +
&gt; +    RegisterID scratchRegister()
&gt; +    {
&gt; +        return InvalidGPRReg;
&gt; +    }
&gt; +

Let&apos;s define two scratch registers already (x30 and x31).

&gt; Source/JavaScriptCore/assembler/RISCV64Assembler.h:75
&gt; +    static constexpr RegisterID firstRegister() { return RISCV64Registers::x1; }
&gt; +    static constexpr RegisterID lastRegister() { return RISCV64Registers::x31; }
&gt; +    static constexpr unsigned numberOfRegisters() { return lastRegister() - firstRegister() + 1; }

Looks correct.

&gt; Source/JavaScriptCore/assembler/RISCV64Assembler.h:79
&gt; +    static constexpr SPRegisterID firstSPRegister() { return RISCV64Registers::zero; }
&gt; +    static constexpr SPRegisterID lastSPRegister() { return RISCV64Registers::pc; }
&gt; +    static constexpr unsigned numberOfSPRegisters() { return lastSPRegister() - firstSPRegister() + 1; }

I think we do not need to include zero. See ARM64 implementation.

&gt; Source/JavaScriptCore/assembler/RISCV64Assembler.h:87
&gt; +        ASSERT(id &gt;= firstRegister() &amp;&amp; id &lt;= lastRegister());

Maybe, adding &quot;zero&quot; register case before this assert would be nice if we define GPRReg for zero.
And I think ARM64 should have that too

&gt; Source/JavaScriptCore/assembler/RISCV64Registers.h:74
&gt; +    macro(ra, &quot;ra&quot;, x1)                \
&gt; +    macro(sp, &quot;sp&quot;, x1)                \
&gt; +    macro(gp, &quot;gp&quot;, x1)                \
&gt; +    macro(tp, &quot;tp&quot;, x1)                \
&gt; +    macro(fp, &quot;fp&quot;, x1)

They are saying x1 for all, this is not correct.

&gt; Source/JavaScriptCore/assembler/RISCV64Registers.h:77
&gt; +    macro(zero, &quot;zero&quot;)             \

I recommend including it in `FOR_EACH_REGISTER_ALIAS` as ARM64 is doing. Then GPRReg for zero will be declared while it is not included in FOR_EACH_GP_REGISTER.
This allows macro-assembler to take zero register as GPRReg arguments.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1788363</commentid>
    <comment_count>12</comment_count>
      <attachid>436717</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2021-08-28 23:10:30 -0700</bug_when>
    <thetext>Comment on attachment 436717
Updated patch, only missing thing is the riscv64.rb documentation.

View in context: https://bugs.webkit.org/attachment.cgi?id=436717&amp;action=review

&gt;&gt; Source/JavaScriptCore/assembler/MacroAssemblerRISCV64.h:53
&gt;&gt; +
&gt; 
&gt; Let&apos;s define two scratch registers already (x30 and x31).

OK, I&apos;ll pre-define dataTempRegister and memoryTempRegister values, and have scratchRegister() return dataTempRegister value.

&gt;&gt; Source/JavaScriptCore/assembler/RISCV64Assembler.h:79
&gt;&gt; +    static constexpr unsigned numberOfSPRegisters() { return lastSPRegister() - firstSPRegister() + 1; }
&gt; 
&gt; I think we do not need to include zero. See ARM64 implementation.

OK.

&gt;&gt; Source/JavaScriptCore/assembler/RISCV64Registers.h:74
&gt;&gt; +    macro(fp, &quot;fp&quot;, x1)
&gt; 
&gt; They are saying x1 for all, this is not correct.

My bad.

&gt;&gt; Source/JavaScriptCore/assembler/RISCV64Registers.h:77
&gt;&gt; +    macro(zero, &quot;zero&quot;)             \
&gt; 
&gt; I recommend including it in `FOR_EACH_REGISTER_ALIAS` as ARM64 is doing. Then GPRReg for zero will be declared while it is not included in FOR_EACH_GP_REGISTER.
&gt; This allows macro-assembler to take zero register as GPRReg arguments.

Doing a GPRReg alias for zero is possible, but it would need some special value to disassociate it from the other general-purpose registers, since the 0 value in the RegisterID enum is taken by the x1 register.

This enum layout, along with subsequent special-casing for the zero register value, would complicate things a bit when it comes to encoding the register IDs in the instructions. For zero/x0, a mask would have to be detected, whereas for every other GPRReg the register ID value would have to be incremented. Keeping x0/zero in the FOR_EACH_GP_REGISTER list would make things straightforward in this regard.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1788382</commentid>
    <comment_count>13</comment_count>
      <attachid>436740</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2021-08-29 07:12:34 -0700</bug_when>
    <thetext>Created attachment 436740
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1788383</commentid>
    <comment_count>14</comment_count>
      <attachid>436740</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2021-08-29 07:15:54 -0700</bug_when>
    <thetext>Comment on attachment 436740
Patch

This finally adds a register layout documentation in riscv64.rb. It also reverts back to placing x0 in the FOR_EACH_GP_REGISTER list, just for the convenience of subsequent instruction encoding, as explained before. I can still make it a special-valued alias if you insist on excluding it from that list.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1788384</commentid>
    <comment_count>15</comment_count>
      <attachid>436741</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2021-08-29 07:19:25 -0700</bug_when>
    <thetext>Created attachment 436741
Patch

Style fixes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1788475</commentid>
    <comment_count>16</comment_count>
      <attachid>436741</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-08-30 04:54:22 -0700</bug_when>
    <thetext>Comment on attachment 436741
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1788496</commentid>
    <comment_count>17</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2021-08-30 07:34:26 -0700</bug_when>
    <thetext>Thanks for the reviews!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1788503</commentid>
    <comment_count>18</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-08-30 08:11:46 -0700</bug_when>
    <thetext>Committed r281757 (241099@main): &lt;https://commits.webkit.org/241099@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 436741.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1788563</commentid>
    <comment_count>19</comment_count>
      <attachid>436741</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2021-08-30 10:34:33 -0700</bug_when>
    <thetext>Comment on attachment 436741
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=436741&amp;action=review

&gt; Source/JavaScriptCore/ChangeLog:9
&gt; +        Introduce RISCV64 support at the LLint level. Along with the necessary

nice!

&gt; Source/JavaScriptCore/assembler/MacroAssemblerRISCV64.cpp:37
&gt; +    // TODO

nit: should be a FIXME with a linked bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>435416</attachid>
            <date>2021-08-12 05:13:49 -0700</date>
            <delta_ts>2021-08-23 01:12:46 -0700</delta_ts>
            <desc>WIP</desc>
            <filename>riscv.patch</filename>
            <type>text/plain</type>
            <size>171616</size>
            <attacher name="Zan Dobersek">zan</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCA5ODc3ZTBjNzVjMGUuLjRmZmUy
OGY0NzdlNSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NNYWtlTGlzdHMudHh0
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMjE2LDYgKzIx
Niw3IEBAIHNldChPRkZMSU5FX0FTTQogICAgIG9mZmxpbmVhc20vcGFyc2VyLnJiCiAgICAgb2Zm
bGluZWFzbS9yZWdpc3RlcnMucmIKICAgICBvZmZsaW5lYXNtL3Jpc2MucmIKKyAgICBvZmZsaW5l
YXNtL3Jpc2N2NjQucmIKICAgICBvZmZsaW5lYXNtL3NlbGZfaGFzaC5yYgogICAgIG9mZmxpbmVh
c20vc2V0dGluZ3MucmIKICAgICBvZmZsaW5lYXNtL3RyYW5zZm9ybS5yYgpAQCAtMjczLDYgKzI3
NCw4IEBAIGVsc2UgKCkKICAgICAgICAgc2V0KE9GRkxJTkVfQVNNX0JBQ0tFTkQgIkFSTXY3IikK
ICAgICBlbHNlaWYgKFdURl9DUFVfTUlQUykKICAgICAgICAgc2V0KE9GRkxJTkVfQVNNX0JBQ0tF
TkQgIk1JUFMiKQorICAgIGVsc2VpZiAoV1RGX0NQVV9SSVNDVjY0KQorICAgICAgICBzZXQoT0ZG
TElORV9BU01fQkFDS0VORCAiUklTQ1Y2NCIpCiAgICAgZW5kaWYgKCkKIAogICAgIGlmIChOT1Qg
RU5BQkxFX0pJVCkKQEAgLTUxMywxMCArNTE2LDEzIEBAIHNldChKYXZhU2NyaXB0Q29yZV9QUklW
QVRFX0ZSQU1FV09SS19IRUFERVJTCiAgICAgYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyQ29kZVJl
Zi5oCiAgICAgYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVySGVscGVycy5oCiAgICAgYXNzZW1ibGVy
L01hY3JvQXNzZW1ibGVyTUlQUy5oCisgICAgYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyUklTQ1Y2
NC5oCiAgICAgYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyWDg2LmgKICAgICBhc3NlbWJsZXIvTWFj
cm9Bc3NlbWJsZXJYODZDb21tb24uaAogICAgIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlclg4Nl82
NC5oCiAgICAgYXNzZW1ibGVyL1ByaW50ZXIuaAorICAgIGFzc2VtYmxlci9SSVNDVjY0QXNzZW1i
bGVyLmgKKyAgICBhc3NlbWJsZXIvUklTQ1Y2NFJlZ2lzdGVycy5oCiAgICAgYXNzZW1ibGVyL1Jl
Z2lzdGVySW5mby5oCiAgICAgYXNzZW1ibGVyL1g4NkFzc2VtYmxlci5oCiAgICAgYXNzZW1ibGVy
L1g4NlJlZ2lzdGVycy5oCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvU291cmNl
cy50eHQgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvU291cmNlcy50eHQKaW5kZXggYTY0NzAyZGI2
MDFjLi5jZDIxOTJkNGQxZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9Tb3Vy
Y2VzLnR4dAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvU291cmNlcy50eHQKQEAgLTU1LDYg
KzU1LDcgQEAgYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyQVJNdjcuY3BwCiBhc3NlbWJsZXIvTWFj
cm9Bc3NlbWJsZXJDb2RlUmVmLmNwcAogYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyTUlQUy5jcHAK
IGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlclByaW50ZXIuY3BwCithc3NlbWJsZXIvTWFjcm9Bc3Nl
bWJsZXJSSVNDVjY0LmNwcAogYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyWDg2Q29tbW9uLmNwcAog
YXNzZW1ibGVyL1BlcmZMb2cuY3BwCiBhc3NlbWJsZXIvUHJpbnRlci5jcHAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvQWJzdHJhY3RNYWNyb0Fzc2VtYmxlci5o
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9BYnN0cmFjdE1hY3JvQXNzZW1ibGVy
LmgKaW5kZXggMTkxNjVmZmY0ZjVhLi40M2Y3ODRhNGFiOTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvQWJzdHJhY3RNYWNyb0Fzc2VtYmxlci5oCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvQWJzdHJhY3RNYWNyb0Fzc2VtYmxlci5oCkBA
IC0zOTcsNyArMzk3LDcgQEAgcHVibGljOgogICAgICAgICB7CiAgICAgICAgIH0KIAotI2lmIENQ
VShYODZfNjQpIHx8IENQVShBUk02NCkKKyNpZiBDUFUoWDg2XzY0KSB8fCBDUFUoQVJNNjQpIHx8
IENQVShSSVNDVjY0KQogICAgICAgICBleHBsaWNpdCBUcnVzdGVkSW1tNjQoVHJ1c3RlZEltbVB0
ciBwdHIpCiAgICAgICAgICAgICA6IG1fdmFsdWUocHRyLmFzSW50cHRyKCkpCiAgICAgICAgIHsK
QEAgLTQxMyw3ICs0MTMsNyBAQCBwdWJsaWM6CiAgICAgICAgICAgICA6IFRydXN0ZWRJbW02NCh2
YWx1ZSkKICAgICAgICAgewogICAgICAgICB9Ci0jaWYgQ1BVKFg4Nl82NCkgfHwgQ1BVKEFSTTY0
KQorI2lmIENQVShYODZfNjQpIHx8IENQVShBUk02NCkgfHwgQ1BVKFJJU0NWNjQpCiAgICAgICAg
IGV4cGxpY2l0IEltbTY0KFRydXN0ZWRJbW1QdHIgcHRyKQogICAgICAgICAgICAgOiBUcnVzdGVk
SW1tNjQocHRyKQogICAgICAgICB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
YXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1i
bGVyL01hY3JvQXNzZW1ibGVyLmgKaW5kZXggYzAwZGIxN2ZmMDQxLi42NTVhYjFhZTk1ZjggMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXIu
aAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyLmgK
QEAgLTYwLDYgKzYwLDExIEBAIG5hbWVzcGFjZSBKU0MgeyB0eXBlZGVmIE1hY3JvQXNzZW1ibGVy
QVJNdjcgTWFjcm9Bc3NlbWJsZXJCYXNlOyB9OwogI2RlZmluZSBUQVJHRVRfTUFDUk9BU1NFTUJM
RVIgTWFjcm9Bc3NlbWJsZXJYODZfNjQKICNpbmNsdWRlICJNYWNyb0Fzc2VtYmxlclg4Nl82NC5o
IgogCisjZWxpZiBDUFUoUklTQ1Y2NCkKKyNkZWZpbmUgVEFSR0VUX0FTU0VNQkxFUiBSSVNDVjY0
QXNzZW1ibGVyCisjZGVmaW5lIFRBUkdFVF9NQUNST0FTU0VNQkxFUiBNYWNyb0Fzc2VtYmxlclJJ
U0NWNjQKKyNpbmNsdWRlICJNYWNyb0Fzc2VtYmxlclJJU0NWNjQuaCIKKwogI2Vsc2UKICNlcnJv
ciAiVGhlIE1hY3JvQXNzZW1ibGVyIGlzIG5vdCBzdXBwb3J0ZWQgb24gdGhpcyBwbGF0Zm9ybS4i
CiAjZW5kaWYKQEAgLTEzNyw3ICsxNDIsNyBAQCBwdWJsaWM6CiAgICAgdXNpbmcgTWFjcm9Bc3Nl
bWJsZXJCYXNlOjphbmQzMjsKICAgICB1c2luZyBNYWNyb0Fzc2VtYmxlckJhc2U6OmJyYW5jaEFk
ZDMyOwogICAgIHVzaW5nIE1hY3JvQXNzZW1ibGVyQmFzZTo6YnJhbmNoTXVsMzI7Ci0jaWYgQ1BV
KEFSTTY0KSB8fCBDUFUoQVJNX1RIVU1CMikgfHwgQ1BVKFg4Nl82NCkgfHwgQ1BVKE1JUFMpCisj
aWYgQ1BVKEFSTTY0KSB8fCBDUFUoQVJNX1RIVU1CMikgfHwgQ1BVKFg4Nl82NCkgfHwgQ1BVKE1J
UFMpIHx8IENQVShSSVNDVjY0KQogICAgIHVzaW5nIE1hY3JvQXNzZW1ibGVyQmFzZTo6YnJhbmNo
UHRyOwogI2VuZGlmCiAgICAgdXNpbmcgTWFjcm9Bc3NlbWJsZXJCYXNlOjpicmFuY2hTdWIzMjsK
QEAgLTE0OSw3ICsxNTQsNyBAQCBwdWJsaWM6CiAgICAgdXNpbmcgTWFjcm9Bc3NlbWJsZXJCYXNl
Ojp1cnNoaWZ0MzI7CiAgICAgdXNpbmcgTWFjcm9Bc3NlbWJsZXJCYXNlOjp4b3IzMjsKIAotI2lm
IENQVShBUk02NCkgfHwgQ1BVKFg4Nl82NCkKKyNpZiBDUFUoQVJNNjQpIHx8IENQVShYODZfNjQp
IHx8IENQVShSSVNDVjY0KQogICAgIHVzaW5nIE1hY3JvQXNzZW1ibGVyQmFzZTo6YW5kNjQ7CiAg
ICAgdXNpbmcgTWFjcm9Bc3NlbWJsZXJCYXNlOjpjb252ZXJ0SW50MzJUb0RvdWJsZTsKICAgICB1
c2luZyBNYWNyb0Fzc2VtYmxlckJhc2U6OnN0b3JlNjQ7CkBAIC0zNDAsNyArMzQ1LDcgQEAgcHVi
bGljOgogICAgIHN0YXRpYyBjb25zdGV4cHIgcHRyZGlmZl90IHB1c2hUb1NhdmVCeXRlT2Zmc2V0
KCkgeyByZXR1cm4gc2l6ZW9mKHZvaWQqKTsgfQogI2VuZGlmIC8vICFDUFUoQVJNNjQpCiAKLSNp
ZiBDUFUoWDg2XzY0KSB8fCBDUFUoQVJNNjQpCisjaWYgQ1BVKFg4Nl82NCkgfHwgQ1BVKEFSTTY0
KSB8fCBDUFUoUklTQ1Y2NCkKICAgICB2b2lkIHBlZWs2NChSZWdpc3RlcklEIGRlc3QsIGludCBp
bmRleCA9IDApCiAgICAgewogICAgICAgICBsb2FkNjQoQWRkcmVzcyhzdGFja1BvaW50ZXJSZWdp
c3RlciwgKGluZGV4ICogc2l6ZW9mKHZvaWQqKSkpLCBkZXN0KTsKQEAgLTE3MTEsNyArMTcxNiw3
IEBAIHB1YmxpYzoKICAgICAgICAgc3RvcmVQdHIodmFsdWUsIGFkZHJlc3NGb3JQb2tlKGluZGV4
KSk7CiAgICAgfQogICAgIAotI2lmIENQVShYODZfNjQpIHx8IENQVShBUk02NCkKKyNpZiBDUFUo
WDg2XzY0KSB8fCBDUFUoQVJNNjQpIHx8IENQVShSSVNDVjY0KQogICAgIHZvaWQgcG9rZShJbW02
NCB2YWx1ZSwgaW50IGluZGV4ID0gMCkKICAgICB7CiAgICAgICAgIHN0b3JlNjQodmFsdWUsIGFk
ZHJlc3NGb3JQb2tlKGluZGV4KSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
YXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyUklTQ1Y2NC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyUklTQ1Y2NC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwLi4xZjQ1MDM2ZmYzOTkKLS0tIC9kZXYvbnVsbAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyUklTQ1Y2NC5jcHAK
QEAgLTAsMCArMSw0MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBJZ2FsaWEgUy5MLgor
ICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBg
YEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRS
SUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBT
UEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09E
UyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRP
UlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5Z
IFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29u
ZmlnLmgiCisjaW5jbHVkZSAiTWFjcm9Bc3NlbWJsZXIuaCIKKworI2lmIEVOQUJMRShBU1NFTUJM
RVIpICYmIENQVShSSVNDVjY0KQorCisjaW5jbHVkZSAiUHJvYmVDb250ZXh0LmgiCisKK25hbWVz
cGFjZSBKU0MgeworCit2b2lkIE1hY3JvQXNzZW1ibGVyOjpwcm9iZShQcm9iZTo6RnVuY3Rpb24s
IHZvaWQqKQoreworfQorCit9IC8vIG5hbWVzcGFjZSBKU0MKKworI2VuZGlmIC8vIEVOQUJMRShB
U1NFTUJMRVIpICYmIENQVShSSVNDVjY0KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlclJJU0NWNjQuaCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJSSVNDVjY0LmgKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwLi4yNzI2Mjg2OWM0MzAKLS0tIC9kZXYvbnVsbAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyUklTQ1Y2NC5oCkBA
IC0wLDAgKzEsNjYzIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIElnYWxpYSBTLkwuCisg
KgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBg
QVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJ
QlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQor
CisjaWYgRU5BQkxFKEFTU0VNQkxFUikgJiYgQ1BVKFJJU0NWNjQpCisKKyNpbmNsdWRlICJBYnN0
cmFjdE1hY3JvQXNzZW1ibGVyLmgiCisjaW5jbHVkZSAiUklTQ1Y2NEFzc2VtYmxlci5oIgorCitu
YW1lc3BhY2UgSlNDIHsKKwordXNpbmcgQXNzZW1ibGVyID0gVEFSR0VUX0FTU0VNQkxFUjsKKwor
Y2xhc3MgTWFjcm9Bc3NlbWJsZXJSSVNDVjY0IDogcHVibGljIEFic3RyYWN0TWFjcm9Bc3NlbWJs
ZXI8QXNzZW1ibGVyPiB7CitwdWJsaWM6CisgICAgc3RhdGljIGNvbnN0ZXhwciB1bnNpZ25lZCBu
dW1HUFJzID0gMzI7CisgICAgc3RhdGljIGNvbnN0ZXhwciB1bnNpZ25lZCBudW1GUFJzID0gMzI7
CisKKyAgICBzdGF0aWMgY29uc3RleHByIFJlZ2lzdGVySUQgSW52YWxpZEdQUlJlZyA9IFJJU0NW
NjRSZWdpc3RlcnM6OkludmFsaWRHUFJSZWc7CisKKyAgICBSZWdpc3RlcklEIHNjcmF0Y2hSZWdp
c3RlcigpCisgICAgeworICAgICAgICByZXR1cm4gSW52YWxpZEdQUlJlZzsKKyAgICB9CisKKyAg
ICBlbnVtIFJlbGF0aW9uYWxDb25kaXRpb24geworICAgICAgICBFcXVhbCwKKyAgICAgICAgTm90
RXF1YWwsCisgICAgICAgIEFib3ZlLAorICAgICAgICBBYm92ZU9yRXF1YWwsCisgICAgICAgIEJl
bG93LAorICAgICAgICBCZWxvd09yRXF1YWwsCisgICAgICAgIEdyZWF0ZXJUaGFuLAorICAgICAg
ICBHcmVhdGVyVGhhbk9yRXF1YWwsCisgICAgICAgIExlc3NUaGFuLAorICAgICAgICBMZXNzVGhh
bk9yRXF1YWwsCisgICAgfTsKKworICAgIGVudW0gUmVzdWx0Q29uZGl0aW9uIHsKKyAgICAgICAg
T3ZlcmZsb3csCisgICAgICAgIFNpZ25lZCwKKyAgICAgICAgUG9zaXRpdmVPclplcm8sCisgICAg
ICAgIFplcm8sCisgICAgICAgIE5vblplcm8sCisgICAgfTsKKworICAgIGVudW0gWmVyb0NvbmRp
dGlvbiB7CisgICAgICAgIElzWmVybywKKyAgICAgICAgSXNOb25aZXJvLAorICAgIH07CisKKyAg
ICBlbnVtIERvdWJsZUNvbmRpdGlvbiB7CisgICAgICAgIERvdWJsZUVxdWFsQW5kT3JkZXJlZCwK
KyAgICAgICAgRG91YmxlTm90RXF1YWxBbmRPcmRlcmVkLAorICAgICAgICBEb3VibGVHcmVhdGVy
VGhhbkFuZE9yZGVyZWQsCisgICAgICAgIERvdWJsZUdyZWF0ZXJUaGFuT3JFcXVhbEFuZE9yZGVy
ZWQsCisgICAgICAgIERvdWJsZUxlc3NUaGFuQW5kT3JkZXJlZCwKKyAgICAgICAgRG91YmxlTGVz
c1RoYW5PckVxdWFsQW5kT3JkZXJlZCwKKyAgICAgICAgRG91YmxlRXF1YWxPclVub3JkZXJlZCwK
KyAgICAgICAgRG91YmxlTm90RXF1YWxPclVub3JkZXJlZCwKKyAgICAgICAgRG91YmxlR3JlYXRl
clRoYW5PclVub3JkZXJlZCwKKyAgICAgICAgRG91YmxlR3JlYXRlclRoYW5PckVxdWFsT3JVbm9y
ZGVyZWQsCisgICAgICAgIERvdWJsZUxlc3NUaGFuT3JVbm9yZGVyZWQsCisgICAgICAgIERvdWJs
ZUxlc3NUaGFuT3JFcXVhbE9yVW5vcmRlcmVkLAorICAgIH07CisKKyAgICBzdGF0aWMgY29uc3Rl
eHByIFJlZ2lzdGVySUQgc3RhY2tQb2ludGVyUmVnaXN0ZXIgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4
MjsKKyAgICBzdGF0aWMgY29uc3RleHByIFJlZ2lzdGVySUQgZnJhbWVQb2ludGVyUmVnaXN0ZXIg
PSBSSVNDVjY0UmVnaXN0ZXJzOjp4ODsKKyAgICBzdGF0aWMgY29uc3RleHByIFJlZ2lzdGVySUQg
bGlua1JlZ2lzdGVyID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDE7CisKKyAgICB2b2lkIGFkZDMyKFJl
Z2lzdGVySUQsIFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgYWRkMzIoUmVn
aXN0ZXJJRCwgUmVnaXN0ZXJJRCkgeyB9CisgICAgdm9pZCBhZGQzMihUcnVzdGVkSW1tMzIsIFJl
Z2lzdGVySUQpIHsgfQorICAgIHZvaWQgYWRkMzIoVHJ1c3RlZEltbTMyLCBSZWdpc3RlcklELCBS
ZWdpc3RlcklEKSB7IH0KKyAgICB2b2lkIGFkZDMyKFRydXN0ZWRJbW0zMiwgQWRkcmVzcykgeyB9
CisgICAgdm9pZCBhZGQzMihUcnVzdGVkSW1tMzIsIEFic29sdXRlQWRkcmVzcykgeyB9CisgICAg
dm9pZCBhZGQzMihBZGRyZXNzLCBSZWdpc3RlcklEKSB7IH0KKyAgICB2b2lkIGFkZDMyKEFic29s
dXRlQWRkcmVzcywgUmVnaXN0ZXJJRCkgeyB9CisKKyAgICB2b2lkIGFkZDY0KFJlZ2lzdGVySUQs
IFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgYWRkNjQoUmVnaXN0ZXJJRCwg
UmVnaXN0ZXJJRCkgeyB9CisgICAgdm9pZCBhZGQ2NChUcnVzdGVkSW1tMzIsIFJlZ2lzdGVySUQp
IHsgfQorICAgIHZvaWQgYWRkNjQoVHJ1c3RlZEltbTY0LCBSZWdpc3RlcklEKSB7IH0KKyAgICB2
b2lkIGFkZDY0KFRydXN0ZWRJbW0zMiwgUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCkgeyB9CisgICAg
dm9pZCBhZGQ2NChUcnVzdGVkSW1tMzIsIEFkZHJlc3MpIHsgfQorICAgIHZvaWQgYWRkNjQoVHJ1
c3RlZEltbTMyLCBBYnNvbHV0ZUFkZHJlc3MpIHsgfQorICAgIHZvaWQgYWRkNjQoQWRkcmVzcywg
UmVnaXN0ZXJJRCkgeyB9CisgICAgdm9pZCBhZGQ2NChBYnNvbHV0ZUFkZHJlc3MsIFJlZ2lzdGVy
SUQpIHsgfQorCisgICAgdm9pZCBzdWIzMihSZWdpc3RlcklELCBSZWdpc3RlcklEKSB7IH0KKyAg
ICB2b2lkIHN1YjMyKFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQpIHsgfQorICAg
IHZvaWQgc3ViMzIoVHJ1c3RlZEltbTMyLCBSZWdpc3RlcklEKSB7IH0KKyAgICB2b2lkIHN1YjMy
KFJlZ2lzdGVySUQsIFRydXN0ZWRJbW0zMiwgUmVnaXN0ZXJJRCkgeyB9CisgICAgdm9pZCBzdWIz
MihUcnVzdGVkSW1tMzIsIEFkZHJlc3MpIHsgfQorICAgIHZvaWQgc3ViMzIoVHJ1c3RlZEltbTMy
LCBBYnNvbHV0ZUFkZHJlc3MpIHsgfQorICAgIHZvaWQgc3ViMzIoQWRkcmVzcywgUmVnaXN0ZXJJ
RCkgeyB9CisKKyAgICB2b2lkIHN1YjY0KFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQpIHsgfQorICAg
IHZvaWQgc3ViNjQoUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCkgeyB9CisgICAg
dm9pZCBzdWI2NChUcnVzdGVkSW1tMzIsIFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgc3ViNjQo
UmVnaXN0ZXJJRCwgVHJ1c3RlZEltbTMyLCBSZWdpc3RlcklEKSB7IH0KKyAgICB2b2lkIHN1YjY0
KFRydXN0ZWRJbW02NCwgUmVnaXN0ZXJJRCkgeyB9CisgICAgdm9pZCBzdWI2NChSZWdpc3RlcklE
LCBUcnVzdGVkSW1tNjQsIFJlZ2lzdGVySUQpIHsgfQorCisgICAgdm9pZCBtdWwzMihSZWdpc3Rl
cklELCBSZWdpc3RlcklELCBSZWdpc3RlcklEKSB7IH0KKyAgICB2b2lkIG11bDMyKFJlZ2lzdGVy
SUQsIFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgbXVsMzIoVHJ1c3RlZEltbTMyLCBSZWdpc3Rl
cklELCBSZWdpc3RlcklEKSB7IH0KKworICAgIHZvaWQgbXVsNjQoUmVnaXN0ZXJJRCwgUmVnaXN0
ZXJJRCkgeyB9CisgICAgdm9pZCBtdWw2NChSZWdpc3RlcklELCBSZWdpc3RlcklELCBSZWdpc3Rl
cklEKSB7IH0KKworICAgIHZvaWQgYW5kMzIoUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCkgeyB9Cisg
ICAgdm9pZCBhbmQzMihSZWdpc3RlcklELCBSZWdpc3RlcklELCBSZWdpc3RlcklEKSB7IH0KKyAg
ICB2b2lkIGFuZDMyKFRydXN0ZWRJbW0zMiwgUmVnaXN0ZXJJRCkgeyB9CisgICAgdm9pZCBhbmQz
MihUcnVzdGVkSW1tMzIsIFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgYW5k
MzIoQWRkcmVzcywgUmVnaXN0ZXJJRCkgeyB9CisKKyAgICB2b2lkIGFuZDY0KFJlZ2lzdGVySUQs
IFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgYW5kNjQoVHJ1c3RlZEltbTY0
LCBSZWdpc3RlcklELCBSZWdpc3RlcklEKSB7IH0KKyAgICB2b2lkIGFuZDY0KFJlZ2lzdGVySUQs
IFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgYW5kNjQoVHJ1c3RlZEltbTMyLCBSZWdpc3RlcklE
KSB7IH0KKyAgICB2b2lkIGFuZDY0KFRydXN0ZWRJbW1QdHIsIFJlZ2lzdGVySUQpIHsgfQorICAg
IHZvaWQgYW5kNjQoVHJ1c3RlZEltbTY0LCBSZWdpc3RlcklEKSB7IH0KKworICAgIHZvaWQgY291
bnRMZWFkaW5nWmVyb3MzMihSZWdpc3RlcklELCBSZWdpc3RlcklEKSB7IH0KKyAgICB2b2lkIGNv
dW50TGVhZGluZ1plcm9zNjQoUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCkgeyB9CisgICAgdm9pZCBj
b3VudFRyYWlsaW5nWmVyb3MzMihSZWdpc3RlcklELCBSZWdpc3RlcklEKSB7IH0KKyAgICB2b2lk
IGNvdW50VHJhaWxpbmdaZXJvczY0KFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQpIHsgfQorCisgICAg
dm9pZCBieXRlU3dhcDE2KFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgYnl0ZVN3YXAzMihSZWdp
c3RlcklEKSB7IH0KKyAgICB2b2lkIGJ5dGVTd2FwNjQoUmVnaXN0ZXJJRCkgeyB9CisKKyAgICB2
b2lkIGxzaGlmdDMyKFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQpIHsgfQorICAg
IHZvaWQgbHNoaWZ0MzIoUmVnaXN0ZXJJRCwgVHJ1c3RlZEltbTMyLCBSZWdpc3RlcklEKSB7IH0K
KyAgICB2b2lkIGxzaGlmdDMyKFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQg
bHNoaWZ0MzIoVHJ1c3RlZEltbTMyLCBSZWdpc3RlcklEKSB7IH0KKworICAgIHZvaWQgcnNoaWZ0
MzIoUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCkgeyB9CisgICAgdm9pZCByc2hp
ZnQzMihSZWdpc3RlcklELCBUcnVzdGVkSW1tMzIsIFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQg
cnNoaWZ0MzIoUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCkgeyB9CisgICAgdm9pZCByc2hpZnQzMihU
cnVzdGVkSW1tMzIsIFJlZ2lzdGVySUQpIHsgfQorCisgICAgdm9pZCBsc2hpZnQ2NChSZWdpc3Rl
cklELCBSZWdpc3RlcklELCBSZWdpc3RlcklEKSB7IH0KKyAgICB2b2lkIGxzaGlmdDY0KFJlZ2lz
dGVySUQsIFRydXN0ZWRJbW0zMiwgUmVnaXN0ZXJJRCkgeyB9CisgICAgdm9pZCBsc2hpZnQ2NChS
ZWdpc3RlcklELCBSZWdpc3RlcklEKSB7IH0KKyAgICB2b2lkIGxzaGlmdDY0KFRydXN0ZWRJbW0z
MiwgUmVnaXN0ZXJJRCkgeyB9CisKKyAgICB2b2lkIHJzaGlmdDY0KFJlZ2lzdGVySUQsIFJlZ2lz
dGVySUQsIFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgcnNoaWZ0NjQoUmVnaXN0ZXJJRCwgVHJ1
c3RlZEltbTMyLCBSZWdpc3RlcklEKSB7IH0KKyAgICB2b2lkIHJzaGlmdDY0KFJlZ2lzdGVySUQs
IFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgcnNoaWZ0NjQoVHJ1c3RlZEltbTMyLCBSZWdpc3Rl
cklEKSB7IH0KKworICAgIHZvaWQgdXJzaGlmdDMyKFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQsIFJl
Z2lzdGVySUQpIHsgfQorICAgIHZvaWQgdXJzaGlmdDMyKFJlZ2lzdGVySUQsIFRydXN0ZWRJbW0z
MiwgUmVnaXN0ZXJJRCkgeyB9CisgICAgdm9pZCB1cnNoaWZ0MzIoUmVnaXN0ZXJJRCwgUmVnaXN0
ZXJJRCkgeyB9CisgICAgdm9pZCB1cnNoaWZ0MzIoVHJ1c3RlZEltbTMyLCBSZWdpc3RlcklEKSB7
IH0KKworICAgIHZvaWQgdXJzaGlmdDY0KFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQsIFJlZ2lzdGVy
SUQpIHsgfQorICAgIHZvaWQgdXJzaGlmdDY0KFJlZ2lzdGVySUQsIFRydXN0ZWRJbW0zMiwgUmVn
aXN0ZXJJRCkgeyB9CisgICAgdm9pZCB1cnNoaWZ0NjQoUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCkg
eyB9CisgICAgdm9pZCB1cnNoaWZ0NjQoVHJ1c3RlZEltbTMyLCBSZWdpc3RlcklEKSB7IH0KKwor
ICAgIHZvaWQgcm90YXRlUmlnaHQzMihUcnVzdGVkSW1tMzIsIFJlZ2lzdGVySUQpIHsgfQorICAg
IHZvaWQgcm90YXRlUmlnaHQzMihSZWdpc3RlcklELCBSZWdpc3RlcklELCBSZWdpc3RlcklEKSB7
IH0KKworICAgIHZvaWQgcm90YXRlUmlnaHQ2NChSZWdpc3RlcklELCBUcnVzdGVkSW1tMzIsIFJl
Z2lzdGVySUQpIHsgfQorICAgIHZvaWQgcm90YXRlUmlnaHQ2NChUcnVzdGVkSW1tMzIsIFJlZ2lz
dGVySUQpIHsgfQorICAgIHZvaWQgcm90YXRlUmlnaHQ2NChSZWdpc3RlcklELCBSZWdpc3RlcklE
LCBSZWdpc3RlcklEKSB7IH0KKworICAgIHZvaWQgbG9hZDgoSW1wbGljaXRBZGRyZXNzLCBSZWdp
c3RlcklEKSB7IH0KKyAgICB2b2lkIGxvYWQ4KEJhc2VJbmRleCwgUmVnaXN0ZXJJRCkgeyB9Cisg
ICAgdm9pZCBsb2FkOChjb25zdCB2b2lkKiwgUmVnaXN0ZXJJRCkgeyB9CisgICAgdm9pZCBsb2Fk
OFNpZ25lZEV4dGVuZFRvMzIoSW1wbGljaXRBZGRyZXNzLCBSZWdpc3RlcklEKSB7IH0KKyAgICB2
b2lkIGxvYWQ4U2lnbmVkRXh0ZW5kVG8zMihCYXNlSW5kZXgsIFJlZ2lzdGVySUQpIHsgfQorICAg
IHZvaWQgbG9hZDhTaWduZWRFeHRlbmRUbzMyKGNvbnN0IHZvaWQqLCBSZWdpc3RlcklEKSB7IH0K
KworICAgIHZvaWQgbG9hZDE2KEltcGxpY2l0QWRkcmVzcywgUmVnaXN0ZXJJRCkgeyB9CisgICAg
dm9pZCBsb2FkMTYoQmFzZUluZGV4LCBSZWdpc3RlcklEKSB7IH0KKyAgICB2b2lkIGxvYWQxNihF
eHRlbmRlZEFkZHJlc3MsIFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgbG9hZDE2KGNvbnN0IHZv
aWQqLCBSZWdpc3RlcklEKSB7IH0KKyAgICB2b2lkIGxvYWQxNlVuYWxpZ25lZChJbXBsaWNpdEFk
ZHJlc3MsIFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgbG9hZDE2VW5hbGlnbmVkKEJhc2VJbmRl
eCwgUmVnaXN0ZXJJRCkgeyB9CisgICAgdm9pZCBsb2FkMTZTaWduZWRFeHRlbmRUbzMyKEltcGxp
Y2l0QWRkcmVzcywgUmVnaXN0ZXJJRCkgeyB9CisgICAgdm9pZCBsb2FkMTZTaWduZWRFeHRlbmRU
bzMyKEJhc2VJbmRleCwgUmVnaXN0ZXJJRCkgeyB9CisKKyAgICB2b2lkIHplcm9FeHRlbmQ4VG8z
MihSZWdpc3RlcklELCBSZWdpc3RlcklEKSB7IH0KKyAgICB2b2lkIHplcm9FeHRlbmQxNlRvMzIo
UmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCkgeyB9CisKKyAgICB2b2lkIHNpZ25FeHRlbmQ4VG8zMihS
ZWdpc3RlcklELCBSZWdpc3RlcklEKSB7IH0KKyAgICB2b2lkIHNpZ25FeHRlbmQxNlRvMzIoUmVn
aXN0ZXJJRCwgUmVnaXN0ZXJJRCkgeyB9CisgICAgdm9pZCBzaWduRXh0ZW5kMzJUb1B0cihUcnVz
dGVkSW1tMzIsIFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgc2lnbkV4dGVuZDMyVG9QdHIoUmVn
aXN0ZXJJRCwgUmVnaXN0ZXJJRCkgeyB9CisgICAgdm9pZCB6ZXJvRXh0ZW5kMzJUb1dvcmQoUmVn
aXN0ZXJJRCwgUmVnaXN0ZXJJRCkgeyB9CisKKyAgICB2b2lkIGxvYWQzMihJbXBsaWNpdEFkZHJl
c3MsIFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgbG9hZDMyKEJhc2VJbmRleCwgUmVnaXN0ZXJJ
RCkgeyB9CisgICAgdm9pZCBsb2FkMzIoY29uc3Qgdm9pZCosIFJlZ2lzdGVySUQpIHsgfQorCisg
ICAgdm9pZCBsb2FkMzJXaXRoVW5hbGlnbmVkSGFsZldvcmRzKEJhc2VJbmRleCwgUmVnaXN0ZXJJ
RCkgeyB9CisKKyAgICB2b2lkIGxvYWQ2NChJbXBsaWNpdEFkZHJlc3MsIFJlZ2lzdGVySUQpIHsg
fQorICAgIHZvaWQgbG9hZDY0KEJhc2VJbmRleCwgUmVnaXN0ZXJJRCkgeyB9CisgICAgdm9pZCBs
b2FkNjQoY29uc3Qgdm9pZCosIFJlZ2lzdGVySUQpIHsgfQorICAgIC8vIHZvaWQgbG9hZDY0KFJl
Z2lzdGVySUQsIFBvc3RJbmRleCwgUmVnaXN0ZXJJRCkgeyB9CisKKyAgICBEYXRhTGFiZWwzMiBs
b2FkNjRXaXRoQWRkcmVzc09mZnNldFBhdGNoKEFkZHJlc3MsIFJlZ2lzdGVySUQpIHsgcmV0dXJu
IHsgfTsgfQorICAgIERhdGFMYWJlbENvbXBhY3QgbG9hZDY0V2l0aENvbXBhY3RBZGRyZXNzT2Zm
c2V0UGF0Y2goQWRkcmVzcywgUmVnaXN0ZXJJRCkgeyByZXR1cm4geyB9OyB9CisKKyAgICB2b2lk
IHN0b3JlOChSZWdpc3RlcklELCBCYXNlSW5kZXgpIHsgfQorICAgIHZvaWQgc3RvcmU4KFJlZ2lz
dGVySUQsIGNvbnN0IHZvaWQqKSB7IH0KKyAgICB2b2lkIHN0b3JlOChSZWdpc3RlcklELCBJbXBs
aWNpdEFkZHJlc3MpIHsgfQorICAgIHZvaWQgc3RvcmU4KFRydXN0ZWRJbW0zMiwgY29uc3Qgdm9p
ZCopIHsgfQorICAgIHZvaWQgc3RvcmU4KFRydXN0ZWRJbW0zMiwgSW1wbGljaXRBZGRyZXNzKSB7
IH0KKworICAgIHZvaWQgc3RvcmUxNihSZWdpc3RlcklELCBJbXBsaWNpdEFkZHJlc3MpIHsgfQor
ICAgIHZvaWQgc3RvcmUxNihSZWdpc3RlcklELCBCYXNlSW5kZXgpIHsgfQorICAgIHZvaWQgc3Rv
cmUxNihSZWdpc3RlcklELCBjb25zdCB2b2lkKikgeyB9CisgICAgdm9pZCBzdG9yZTE2KFRydXN0
ZWRJbW0zMiwgY29uc3Qgdm9pZCopIHsgfQorCisgICAgdm9pZCBzdG9yZTMyKFJlZ2lzdGVySUQs
IEltcGxpY2l0QWRkcmVzcykgeyB9CisgICAgdm9pZCBzdG9yZTMyKFJlZ2lzdGVySUQsIEJhc2VJ
bmRleCkgeyB9CisgICAgdm9pZCBzdG9yZTMyKFJlZ2lzdGVySUQsIGNvbnN0IHZvaWQqKSB7IH0K
KyAgICB2b2lkIHN0b3JlMzIoVHJ1c3RlZEltbTMyLCBJbXBsaWNpdEFkZHJlc3MpIHsgfQorICAg
IHZvaWQgc3RvcmUzMihUcnVzdGVkSW1tMzIsIEJhc2VJbmRleCkgeyB9CisgICAgdm9pZCBzdG9y
ZTMyKFRydXN0ZWRJbW0zMiwgY29uc3Qgdm9pZCopIHsgfQorCisgICAgdm9pZCBzdG9yZTY0KFJl
Z2lzdGVySUQsIEltcGxpY2l0QWRkcmVzcykgeyB9CisgICAgdm9pZCBzdG9yZTY0KFJlZ2lzdGVy
SUQsIEJhc2VJbmRleCkgeyB9CisgICAgdm9pZCBzdG9yZTY0KFJlZ2lzdGVySUQsIGNvbnN0IHZv
aWQqKSB7IH0KKyAgICB2b2lkIHN0b3JlNjQoVHJ1c3RlZEltbTY0LCBjb25zdCB2b2lkKikgeyB9
CisgICAgdm9pZCBzdG9yZTY0KFRydXN0ZWRJbW0zMiwgSW1wbGljaXRBZGRyZXNzKSB7IH0KKyAg
ICB2b2lkIHN0b3JlNjQoVHJ1c3RlZEltbTY0LCBJbXBsaWNpdEFkZHJlc3MpIHsgfQorICAgIHZv
aWQgc3RvcmU2NChUcnVzdGVkSW1tNjQsIEJhc2VJbmRleCkgeyB9CisgICAgLy8gdm9pZCBzdG9y
ZTY0KFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQsIFBvc3RJbmRleCkgeyB9CisKKyAgICBEYXRhTGFi
ZWwzMiBzdG9yZTY0V2l0aEFkZHJlc3NPZmZzZXRQYXRjaChSZWdpc3RlcklELCBBZGRyZXNzKSB7
IHJldHVybiB7IH07IH0KKworICAgIHZvaWQgb3I4KFRydXN0ZWRJbW0zMiwgQWJzb2x1dGVBZGRy
ZXNzKSB7IH0KKworICAgIHZvaWQgb3IxNihUcnVzdGVkSW1tMzIsIEFic29sdXRlQWRkcmVzcykg
eyB9CisKKyAgICB2b2lkIG9yMzIoUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCkgeyB9CisgICAgdm9p
ZCBvcjMyKFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQg
b3IzMihUcnVzdGVkSW1tMzIsIFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgb3IzMihUcnVzdGVk
SW1tMzIsIFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgb3IzMihSZWdpc3Rl
cklELCBBYnNvbHV0ZUFkZHJlc3MpIHsgfQorICAgIHZvaWQgb3IzMihUcnVzdGVkSW1tMzIsIEFi
c29sdXRlQWRkcmVzcykgeyB9CisgICAgdm9pZCBvcjMyKFRydXN0ZWRJbW0zMiwgQWRkcmVzcykg
eyB9CisKKyAgICB2b2lkIG9yNjQoUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCkgeyB9CisgICAgdm9p
ZCBvcjY0KFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQg
b3I2NChUcnVzdGVkSW1tMzIsIFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgb3I2NChUcnVzdGVk
SW1tMzIsIFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgb3I2NChUcnVzdGVk
SW1tNjQsIFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgb3I2NChUcnVzdGVk
SW1tNjQsIFJlZ2lzdGVySUQpIHsgfQorCisgICAgdm9pZCB4b3IzMihSZWdpc3RlcklELCBSZWdp
c3RlcklEKSB7IH0KKyAgICB2b2lkIHhvcjMyKEFkZHJlc3MsIFJlZ2lzdGVySUQpIHsgfQorICAg
IHZvaWQgeG9yMzIoUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCkgeyB9CisgICAg
dm9pZCB4b3IzMihUcnVzdGVkSW1tMzIsIFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgeG9yMzIo
VHJ1c3RlZEltbTMyLCBSZWdpc3RlcklELCBSZWdpc3RlcklEKSB7IH0KKworICAgIHZvaWQgeG9y
NjQoUmVnaXN0ZXJJRCwgQWRkcmVzcykgeyB9CisgICAgdm9pZCB4b3I2NChSZWdpc3RlcklELCBS
ZWdpc3RlcklEKSB7IH0KKyAgICB2b2lkIHhvcjY0KFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQsIFJl
Z2lzdGVySUQpIHsgfQorICAgIHZvaWQgeG9yNjQoVHJ1c3RlZEltbTMyLCBSZWdpc3RlcklEKSB7
IH0KKyAgICB2b2lkIHhvcjY0KFRydXN0ZWRJbW02NCwgUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCkg
eyB9CisgICAgdm9pZCB4b3I2NChUcnVzdGVkSW1tNjQsIFJlZ2lzdGVySUQpIHsgfQorICAgIHZv
aWQgeG9yNjQoVHJ1c3RlZEltbTMyLCBSZWdpc3RlcklELCBSZWdpc3RlcklEKSB7IH0KKyAgICB2
b2lkIHhvcjY0KEFkZHJlc3MsIFJlZ2lzdGVySUQpIHsgfQorCisgICAgdm9pZCBub3QzMihSZWdp
c3RlcklEKSB7IH0KKyAgICB2b2lkIG5vdDMyKFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQpIHsgfQor
CisgICAgdm9pZCBub3Q2NChSZWdpc3RlcklELCBSZWdpc3RlcklEKSB7IH0KKyAgICB2b2lkIG5v
dDY0KFJlZ2lzdGVySUQpIHsgfQorCisgICAgdm9pZCBuZWczMihSZWdpc3RlcklEKSB7IH0KKyAg
ICB2b2lkIG5lZzMyKFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQpIHsgfQorCisgICAgdm9pZCBuZWc2
NChSZWdpc3RlcklEKSB7IH0KKyAgICB2b2lkIG5lZzY0KFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQp
IHsgfQorCisgICAgdm9pZCBtb3ZlKFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQpIHsgfQorICAgIHZv
aWQgbW92ZShUcnVzdGVkSW1tMzIsIFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgbW92ZShUcnVz
dGVkSW1tUHRyLCBSZWdpc3RlcklEKSB7IH0KKyAgICB2b2lkIG1vdmUoVHJ1c3RlZEltbTY0LCBS
ZWdpc3RlcklEKSB7IH0KKworICAgIHZvaWQgc3dhcChSZWdpc3RlcklELCBSZWdpc3RlcklEKSB7
IH0KKyAgICB2b2lkIHN3YXAoRlBSZWdpc3RlcklELCBGUFJlZ2lzdGVySUQpIHsgfQorCisgICAg
dm9pZCBtb3ZlWmVyb1RvRG91YmxlKEZQUmVnaXN0ZXJJRCkgeyB9CisgICAgdm9pZCBtb3ZlRmxv
YXRUbzMyKEZQUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCkgeyB9CisgICAgdm9pZCBtb3ZlMzJUb0Zs
b2F0KFJlZ2lzdGVySUQsIEZQUmVnaXN0ZXJJRCkgeyB9CisKKyAgICB2b2lkIG1vdmVEb3VibGUo
RlBSZWdpc3RlcklELCBGUFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgbW92ZURvdWJsZVRvNjQo
RlBSZWdpc3RlcklELCBSZWdpc3RlcklEKSB7IH0KKyAgICB2b2lkIG1vdmU2NFRvRG91YmxlKFJl
Z2lzdGVySUQsIEZQUmVnaXN0ZXJJRCkgeyB9CisKKyAgICB2b2lkIGNvbXBhcmU4KFJlbGF0aW9u
YWxDb25kaXRpb24sIEFkZHJlc3MsIFRydXN0ZWRJbW0zMiwgUmVnaXN0ZXJJRCkgeyB9CisKKyAg
ICB2b2lkIGNvbXBhcmUzMihSZWxhdGlvbmFsQ29uZGl0aW9uLCBSZWdpc3RlcklELCBSZWdpc3Rl
cklELCBSZWdpc3RlcklEKSB7IH0KKyAgICB2b2lkIGNvbXBhcmUzMihSZWxhdGlvbmFsQ29uZGl0
aW9uLCBBZGRyZXNzLCBSZWdpc3RlcklELCBSZWdpc3RlcklEKSB7IH0KKyAgICB2b2lkIGNvbXBh
cmUzMihSZWxhdGlvbmFsQ29uZGl0aW9uLCBSZWdpc3RlcklELCBUcnVzdGVkSW1tMzIsIFJlZ2lz
dGVySUQpIHsgfQorCisgICAgdm9pZCBjb21wYXJlNjQoUmVsYXRpb25hbENvbmRpdGlvbiwgUmVn
aXN0ZXJJRCwgUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCkgeyB9CisgICAgdm9pZCBjb21wYXJlNjQo
UmVsYXRpb25hbENvbmRpdGlvbiwgUmVnaXN0ZXJJRCwgVHJ1c3RlZEltbTMyLCBSZWdpc3RlcklE
KSB7IH0KKworICAgIHN0YXRpYyBSZWxhdGlvbmFsQ29uZGl0aW9uIGludmVydChSZWxhdGlvbmFs
Q29uZGl0aW9uIGNvbmQpCisgICAgeworICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8UmVsYXRp
b25hbENvbmRpdGlvbj4oQXNzZW1ibGVyOjppbnZlcnQoc3RhdGljX2Nhc3Q8QXNzZW1ibGVyOjpD
b25kaXRpb24+KGNvbmQpKSk7CisgICAgfQorCisgICAgdGVtcGxhdGU8UHRyVGFnIHJlc3VsdFRh
ZywgUHRyVGFnIGxvY2F0aW9uVGFnPgorICAgIHN0YXRpYyBGdW5jdGlvblB0cjxyZXN1bHRUYWc+
IHJlYWRDYWxsVGFyZ2V0KENvZGVMb2NhdGlvbkNhbGw8bG9jYXRpb25UYWc+KSB7IHJldHVybiB7
IH07IH0KKworICAgIHRlbXBsYXRlPFB0clRhZyB0YWc+CisgICAgc3RhdGljIHZvaWQgcmVwbGFj
ZVdpdGhWTUhhbHQoQ29kZUxvY2F0aW9uTGFiZWw8dGFnPikgeyB9CisKKyAgICB0ZW1wbGF0ZTxQ
dHJUYWcgc3RhcnRUYWcsIFB0clRhZyBkZXN0VGFnPgorICAgIHN0YXRpYyB2b2lkIHJlcGxhY2VX
aXRoSnVtcChDb2RlTG9jYXRpb25MYWJlbDxzdGFydFRhZz4sIENvZGVMb2NhdGlvbkxhYmVsPGRl
c3RUYWc+KSB7IH0KKworICAgIHN0YXRpYyBwdHJkaWZmX3QgbWF4SnVtcFJlcGxhY2VtZW50U2l6
ZSgpCisgICAgeworICAgICAgICByZXR1cm4gQXNzZW1ibGVyOjptYXhKdW1wUmVwbGFjZW1lbnRT
aXplKCk7CisgICAgfQorCisgICAgc3RhdGljIHB0cmRpZmZfdCBwYXRjaGFibGVKdW1wU2l6ZSgp
CisgICAgeworICAgICAgICByZXR1cm4gQXNzZW1ibGVyOjpwYXRjaGFibGVKdW1wU2l6ZSgpOwor
ICAgIH0KKworICAgIHRlbXBsYXRlPFB0clRhZyB0YWc+CisgICAgc3RhdGljIENvZGVMb2NhdGlv
bkxhYmVsPHRhZz4gc3RhcnRPZkJyYW5jaFB0cldpdGhQYXRjaE9uUmVnaXN0ZXIoQ29kZUxvY2F0
aW9uRGF0YUxhYmVsUHRyPHRhZz4pIHsgcmV0dXJuIHsgfTsgfQorCisgICAgdGVtcGxhdGU8UHRy
VGFnIHRhZz4KKyAgICBzdGF0aWMgQ29kZUxvY2F0aW9uTGFiZWw8dGFnPiBzdGFydE9mUGF0Y2hh
YmxlQnJhbmNoUHRyV2l0aFBhdGNoT25BZGRyZXNzKENvZGVMb2NhdGlvbkRhdGFMYWJlbFB0cjx0
YWc+KSB7IHJldHVybiB7IH07IH0KKworICAgIHRlbXBsYXRlPFB0clRhZyB0YWc+CisgICAgc3Rh
dGljIENvZGVMb2NhdGlvbkxhYmVsPHRhZz4gc3RhcnRPZlBhdGNoYWJsZUJyYW5jaDMyV2l0aFBh
dGNoT25BZGRyZXNzKENvZGVMb2NhdGlvbkRhdGFMYWJlbDMyPHRhZz4pIHsgcmV0dXJuIHsgfTsg
fQorCisgICAgdGVtcGxhdGU8UHRyVGFnIHRhZz4KKyAgICBzdGF0aWMgdm9pZCByZXZlcnRKdW1w
UmVwbGFjZW1lbnRUb0JyYW5jaFB0cldpdGhQYXRjaChDb2RlTG9jYXRpb25MYWJlbDx0YWc+LCBS
ZWdpc3RlcklELCB2b2lkKikgeyB9CisKKyAgICB0ZW1wbGF0ZTxQdHJUYWcgdGFnPgorICAgIHN0
YXRpYyB2b2lkIHJldmVydEp1bXBSZXBsYWNlbWVudFRvUGF0Y2hhYmxlQnJhbmNoUHRyV2l0aFBh
dGNoKENvZGVMb2NhdGlvbkxhYmVsPHRhZz4sIEFkZHJlc3MsIHZvaWQqKSB7IH0KKworICAgIHRl
bXBsYXRlPFB0clRhZyB0YWc+CisgICAgc3RhdGljIHZvaWQgcmV2ZXJ0SnVtcFJlcGxhY2VtZW50
VG9QYXRjaGFibGVCcmFuY2gzMldpdGhQYXRjaChDb2RlTG9jYXRpb25MYWJlbDx0YWc+LCBBZGRy
ZXNzLCBpbnQzMl90KSB7IH0KKworICAgIHRlbXBsYXRlPFB0clRhZyBjYWxsVGFnLCBQdHJUYWcg
ZGVzdFRhZz4KKyAgICBzdGF0aWMgdm9pZCByZXBhdGNoQ2FsbChDb2RlTG9jYXRpb25DYWxsPGNh
bGxUYWc+LCBDb2RlTG9jYXRpb25MYWJlbDxkZXN0VGFnPikgeyB9CisKKyAgICB0ZW1wbGF0ZTxQ
dHJUYWcgY2FsbFRhZywgUHRyVGFnIGRlc3RUYWc+CisgICAgc3RhdGljIHZvaWQgcmVwYXRjaENh
bGwoQ29kZUxvY2F0aW9uQ2FsbDxjYWxsVGFnPiwgRnVuY3Rpb25QdHI8ZGVzdFRhZz4pIHsgfQor
CisgICAgSnVtcCBqdW1wKCkgeyByZXR1cm4geyB9OyB9CisKKyAgICB2b2lkIGZhckp1bXAoUmVn
aXN0ZXJJRCwgUHRyVGFnKSB7IH0KKyAgICB2b2lkIGZhckp1bXAoVHJ1c3RlZEltbVB0ciwgUHRy
VGFnKSB7IH0KKyAgICB2b2lkIGZhckp1bXAoQWRkcmVzcywgUHRyVGFnKSB7IH0KKyAgICB2b2lk
IGZhckp1bXAoQmFzZUluZGV4LCBQdHJUYWcpIHsgfQorICAgIHZvaWQgZmFySnVtcChBYnNvbHV0
ZUFkZHJlc3MsIFB0clRhZykgeyB9CisKKyAgICB2b2lkIGZhckp1bXAoUmVnaXN0ZXJJRCwgUmVn
aXN0ZXJJRCkgeyB9CisgICAgdm9pZCBmYXJKdW1wKEJhc2VJbmRleCwgUmVnaXN0ZXJJRCkgeyB9
CisgICAgdm9pZCBmYXJKdW1wKEFkZHJlc3MsIFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgZmFy
SnVtcChBYnNvbHV0ZUFkZHJlc3MsIFJlZ2lzdGVySUQpIHsgfQorCisgICAgQ2FsbCBuZWFyQ2Fs
bCgpIHsgcmV0dXJuIHsgfTsgfQorICAgIENhbGwgbmVhclRhaWxDYWxsKCkgeyByZXR1cm4geyB9
OyB9CisgICAgQ2FsbCB0aHJlYWRTYWZlUGF0Y2hhYmxlTmVhckNhbGwoKSB7IHJldHVybiB7IH07
IH0KKworICAgIHZvaWQgcmV0KCkgeyB9CisKKyAgICB2b2lkIHRlc3Q4KFJlc3VsdENvbmRpdGlv
biwgQWRkcmVzcywgVHJ1c3RlZEltbTMyLCBSZWdpc3RlcklEKSB7IH0KKworICAgIHZvaWQgdGVz
dDMyKFJlZ2lzdGVySUQsIFRydXN0ZWRJbW0zMiA9IFRydXN0ZWRJbW0zMigtMSkpIHsgfQorICAg
IHZvaWQgdGVzdDMyKFJlc3VsdENvbmRpdGlvbiwgUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCwgUmVn
aXN0ZXJJRCkgeyB9CisgICAgdm9pZCB0ZXN0MzIoUmVzdWx0Q29uZGl0aW9uLCBSZWdpc3RlcklE
LCBUcnVzdGVkSW1tMzIsIFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgdGVzdDMyKFJlc3VsdENv
bmRpdGlvbiwgQWRkcmVzcywgVHJ1c3RlZEltbTMyLCBSZWdpc3RlcklEKSB7IH0KKworICAgIHZv
aWQgdGVzdDY0KFJlc3VsdENvbmRpdGlvbiwgUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCwgUmVnaXN0
ZXJJRCkgeyB9CisgICAgdm9pZCB0ZXN0NjQoUmVzdWx0Q29uZGl0aW9uLCBSZWdpc3RlcklELCBU
cnVzdGVkSW1tMzIsIFJlZ2lzdGVySUQpIHsgfQorCisgICAgSnVtcCBicmFuY2g4KFJlbGF0aW9u
YWxDb25kaXRpb24sIEFkZHJlc3MsIFRydXN0ZWRJbW0zMikgeyByZXR1cm4geyB9OyB9CisgICAg
SnVtcCBicmFuY2g4KFJlbGF0aW9uYWxDb25kaXRpb24sIEJhc2VJbmRleCwgVHJ1c3RlZEltbTMy
KSB7IHJldHVybiB7IH07IH0KKyAgICBKdW1wIGJyYW5jaDgoUmVsYXRpb25hbENvbmRpdGlvbiwg
QWJzb2x1dGVBZGRyZXNzLCBUcnVzdGVkSW1tMzIpIHsgcmV0dXJuIHsgfTsgfQorCisgICAgSnVt
cCBicmFuY2gzMihSZWxhdGlvbmFsQ29uZGl0aW9uLCBSZWdpc3RlcklELCBSZWdpc3RlcklEKSB7
IHJldHVybiB7IH07IH0KKyAgICBKdW1wIGJyYW5jaDMyKFJlbGF0aW9uYWxDb25kaXRpb24sIFJl
Z2lzdGVySUQsIFRydXN0ZWRJbW0zMikgeyByZXR1cm4geyB9OyB9CisgICAgSnVtcCBicmFuY2gz
MihSZWxhdGlvbmFsQ29uZGl0aW9uLCBSZWdpc3RlcklELCBBZGRyZXNzKSB7IHJldHVybiB7IH07
IH0KKyAgICBKdW1wIGJyYW5jaDMyKFJlbGF0aW9uYWxDb25kaXRpb24sIEFkZHJlc3MsIFJlZ2lz
dGVySUQpIHsgcmV0dXJuIHsgfTsgfQorICAgIEp1bXAgYnJhbmNoMzIoUmVsYXRpb25hbENvbmRp
dGlvbiwgQWRkcmVzcywgVHJ1c3RlZEltbTMyKSB7IHJldHVybiB7IH07IH0KKyAgICBKdW1wIGJy
YW5jaDMyKFJlbGF0aW9uYWxDb25kaXRpb24sIEJhc2VJbmRleCwgVHJ1c3RlZEltbTMyKSB7IHJl
dHVybiB7IH07IH0KKyAgICBKdW1wIGJyYW5jaDMyKFJlbGF0aW9uYWxDb25kaXRpb24sIEFic29s
dXRlQWRkcmVzcywgUmVnaXN0ZXJJRCkgeyByZXR1cm4geyB9OyB9CisgICAgSnVtcCBicmFuY2gz
MihSZWxhdGlvbmFsQ29uZGl0aW9uLCBBYnNvbHV0ZUFkZHJlc3MsIFRydXN0ZWRJbW0zMikgeyBy
ZXR1cm4geyB9OyB9CisKKyAgICBKdW1wIGJyYW5jaDMyV2l0aFBhdGNoKFJlbGF0aW9uYWxDb25k
aXRpb24sIEFkZHJlc3MsIERhdGFMYWJlbDMyJiwgVHJ1c3RlZEltbTMyID0gVHJ1c3RlZEltbTMy
KDApKSB7IHJldHVybiB7IH07IH0KKyAgICBKdW1wIGJyYW5jaDMyV2l0aFVuYWxpZ25lZEhhbGZX
b3JkcyhSZWxhdGlvbmFsQ29uZGl0aW9uLCBCYXNlSW5kZXgsIFRydXN0ZWRJbW0zMikgeyByZXR1
cm4geyB9OyB9CisKKyAgICBKdW1wIGJyYW5jaDY0KFJlbGF0aW9uYWxDb25kaXRpb24sIFJlZ2lz
dGVySUQsIFJlZ2lzdGVySUQpIHsgcmV0dXJuIHsgfTsgfQorICAgIEp1bXAgYnJhbmNoNjQoUmVs
YXRpb25hbENvbmRpdGlvbiwgUmVnaXN0ZXJJRCwgVHJ1c3RlZEltbTMyKSB7IHJldHVybiB7IH07
IH0KKyAgICBKdW1wIGJyYW5jaDY0KFJlbGF0aW9uYWxDb25kaXRpb24sIFJlZ2lzdGVySUQsIFRy
dXN0ZWRJbW02NCkgeyByZXR1cm4geyB9OyB9CisgICAgSnVtcCBicmFuY2g2NChSZWxhdGlvbmFs
Q29uZGl0aW9uLCBSZWdpc3RlcklELCBBZGRyZXNzKSB7IHJldHVybiB7IH07IH0KKyAgICBKdW1w
IGJyYW5jaDY0KFJlbGF0aW9uYWxDb25kaXRpb24sIEFic29sdXRlQWRkcmVzcywgUmVnaXN0ZXJJ
RCkgeyByZXR1cm4geyB9OyB9CisgICAgSnVtcCBicmFuY2g2NChSZWxhdGlvbmFsQ29uZGl0aW9u
LCBBZGRyZXNzLCBSZWdpc3RlcklEKSB7IHJldHVybiB7IH07IH0KKyAgICBKdW1wIGJyYW5jaDY0
KFJlbGF0aW9uYWxDb25kaXRpb24sIEFkZHJlc3MsIFRydXN0ZWRJbW02NCkgeyByZXR1cm4geyB9
OyB9CisgICAgSnVtcCBicmFuY2g2NChSZWxhdGlvbmFsQ29uZGl0aW9uLCBCYXNlSW5kZXgsIFJl
Z2lzdGVySUQpIHsgcmV0dXJuIHsgfTsgfQorCisgICAgSnVtcCBicmFuY2hBZGQzMihSZXN1bHRD
b25kaXRpb24sIFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQpIHsgcmV0dXJuIHsg
fTsgfQorICAgIEp1bXAgYnJhbmNoQWRkMzIoUmVzdWx0Q29uZGl0aW9uLCBSZWdpc3RlcklELCBU
cnVzdGVkSW1tMzIsIFJlZ2lzdGVySUQpIHsgcmV0dXJuIHsgfTsgfQorICAgIEp1bXAgYnJhbmNo
QWRkMzIoUmVzdWx0Q29uZGl0aW9uLCBBZGRyZXNzLCBSZWdpc3RlcklEKSB7IHJldHVybiB7IH07
IH0KKyAgICBKdW1wIGJyYW5jaEFkZDMyKFJlc3VsdENvbmRpdGlvbiwgUmVnaXN0ZXJJRCwgUmVn
aXN0ZXJJRCkgeyByZXR1cm4geyB9OyB9CisgICAgSnVtcCBicmFuY2hBZGQzMihSZXN1bHRDb25k
aXRpb24sIFRydXN0ZWRJbW0zMiwgUmVnaXN0ZXJJRCkgeyByZXR1cm4geyB9OyB9CisgICAgSnVt
cCBicmFuY2hBZGQzMihSZXN1bHRDb25kaXRpb24sIFRydXN0ZWRJbW0zMiwgQWJzb2x1dGVBZGRy
ZXNzKSB7IHJldHVybiB7IH07IH0KKyAgICBKdW1wIGJyYW5jaEFkZDMyKFJlc3VsdENvbmRpdGlv
biwgVHJ1c3RlZEltbTMyLCBBZGRyZXNzKSB7IHJldHVybiB7IH07IH0KKworICAgIEp1bXAgYnJh
bmNoQWRkNjQoUmVzdWx0Q29uZGl0aW9uLCBSZWdpc3RlcklELCBSZWdpc3RlcklELCBSZWdpc3Rl
cklEKSB7IHJldHVybiB7IH07IH0KKyAgICBKdW1wIGJyYW5jaEFkZDY0KFJlc3VsdENvbmRpdGlv
biwgUmVnaXN0ZXJJRCwgVHJ1c3RlZEltbTMyLCBSZWdpc3RlcklEKSB7IHJldHVybiB7IH07IH0K
KyAgICBKdW1wIGJyYW5jaEFkZDY0KFJlc3VsdENvbmRpdGlvbiwgUmVnaXN0ZXJJRCwgUmVnaXN0
ZXJJRCkgeyByZXR1cm4geyB9OyB9CisgICAgSnVtcCBicmFuY2hBZGQ2NChSZXN1bHRDb25kaXRp
b24sIFRydXN0ZWRJbW0zMiwgUmVnaXN0ZXJJRCkgeyByZXR1cm4geyB9OyB9CisgICAgSnVtcCBi
cmFuY2hBZGQ2NChSZWxhdGlvbmFsQ29uZGl0aW9uLCBUcnVzdGVkSW1tMzIsIFJlZ2lzdGVySUQp
IHsgcmV0dXJuIHsgfTsgfQorCisgICAgSnVtcCBicmFuY2hNdWwzMihSZXN1bHRDb25kaXRpb24s
IFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQsIFJlZ2lzdGVy
SUQpIHsgcmV0dXJuIHsgfTsgfQorICAgIEp1bXAgYnJhbmNoTXVsMzIoUmVzdWx0Q29uZGl0aW9u
LCBSZWdpc3RlcklELCBSZWdpc3RlcklELCBSZWdpc3RlcklEKSB7IHJldHVybiB7IH07IH0KKyAg
ICBKdW1wIGJyYW5jaE11bDMyKFJlc3VsdENvbmRpdGlvbiwgUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJ
RCkgeyByZXR1cm4geyB9OyB9CisgICAgSnVtcCBicmFuY2hNdWwzMihSZXN1bHRDb25kaXRpb24s
IFJlZ2lzdGVySUQsIFRydXN0ZWRJbW0zMiwgUmVnaXN0ZXJJRCkgeyByZXR1cm4geyB9OyB9CisK
KyAgICBKdW1wIGJyYW5jaE11bDY0KFJlc3VsdENvbmRpdGlvbiwgUmVnaXN0ZXJJRCwgUmVnaXN0
ZXJJRCwgUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCkgeyByZXR1cm4geyB9OyB9
CisgICAgSnVtcCBicmFuY2hNdWw2NChSZXN1bHRDb25kaXRpb24sIFJlZ2lzdGVySUQsIFJlZ2lz
dGVySUQsIFJlZ2lzdGVySUQpIHsgcmV0dXJuIHsgfTsgfQorICAgIEp1bXAgYnJhbmNoTXVsNjQo
UmVzdWx0Q29uZGl0aW9uLCBSZWdpc3RlcklELCBSZWdpc3RlcklEKSB7IHJldHVybiB7IH07IH0K
KworICAgIEp1bXAgYnJhbmNoTmVnMzIoUmVzdWx0Q29uZGl0aW9uLCBSZWdpc3RlcklEKSB7IHJl
dHVybiB7IH07IH0KKyAgICBKdW1wIGJyYW5jaE5lZzY0KFJlc3VsdENvbmRpdGlvbiwgUmVnaXN0
ZXJJRCkgeyByZXR1cm4geyB9OyB9CisKKyAgICBKdW1wIGJyYW5jaFN1YjMyKFJlc3VsdENvbmRp
dGlvbiwgUmVnaXN0ZXJJRCkgeyByZXR1cm4geyB9OyB9CisgICAgSnVtcCBicmFuY2hTdWIzMihS
ZXN1bHRDb25kaXRpb24sIFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQpIHsgcmV0
dXJuIHsgfTsgfQorICAgIEp1bXAgYnJhbmNoU3ViMzIoUmVzdWx0Q29uZGl0aW9uLCBSZWdpc3Rl
cklELCBUcnVzdGVkSW1tMzIsIFJlZ2lzdGVySUQpIHsgcmV0dXJuIHsgfTsgfQorICAgIEp1bXAg
YnJhbmNoU3ViMzIoUmVzdWx0Q29uZGl0aW9uLCBSZWdpc3RlcklELCBSZWdpc3RlcklEKSB7IHJl
dHVybiB7IH07IH0KKyAgICBKdW1wIGJyYW5jaFN1YjMyKFJlc3VsdENvbmRpdGlvbiwgVHJ1c3Rl
ZEltbTMyLCBSZWdpc3RlcklEKSB7IHJldHVybiB7IH07IH0KKworICAgIEp1bXAgYnJhbmNoU3Vi
NjQoUmVzdWx0Q29uZGl0aW9uLCBSZWdpc3RlcklELCBSZWdpc3RlcklELCBSZWdpc3RlcklEKSB7
IHJldHVybiB7IH07IH0KKyAgICBKdW1wIGJyYW5jaFN1YjY0KFJlc3VsdENvbmRpdGlvbiwgUmVn
aXN0ZXJJRCwgVHJ1c3RlZEltbTMyLCBSZWdpc3RlcklEKSB7IHJldHVybiB7IH07IH0KKyAgICBK
dW1wIGJyYW5jaFN1YjY0KFJlc3VsdENvbmRpdGlvbiwgUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCkg
eyByZXR1cm4geyB9OyB9CisgICAgSnVtcCBicmFuY2hTdWI2NChSZXN1bHRDb25kaXRpb24sIFRy
dXN0ZWRJbW0zMiwgUmVnaXN0ZXJJRCkgeyByZXR1cm4geyB9OyB9CisgICAgSnVtcCBicmFuY2hT
dWI2NChSZWxhdGlvbmFsQ29uZGl0aW9uLCBUcnVzdGVkSW1tMzIsIFJlZ2lzdGVySUQpIHsgcmV0
dXJuIHsgfTsgfQorCisgICAgSnVtcCBicmFuY2hUZXN0OChSZXN1bHRDb25kaXRpb24sIEFkZHJl
c3MsIFRydXN0ZWRJbW0zMiA9IFRydXN0ZWRJbW0zMigtMSkpIHsgcmV0dXJuIHsgfTsgfQorICAg
IEp1bXAgYnJhbmNoVGVzdDgoUmVzdWx0Q29uZGl0aW9uLCBBYnNvbHV0ZUFkZHJlc3MsIFRydXN0
ZWRJbW0zMiA9IFRydXN0ZWRJbW0zMigtMSkpIHsgcmV0dXJuIHsgfTsgfQorICAgIEp1bXAgYnJh
bmNoVGVzdDgoUmVzdWx0Q29uZGl0aW9uLCBFeHRlbmRlZEFkZHJlc3MsIFRydXN0ZWRJbW0zMiA9
IFRydXN0ZWRJbW0zMigtMSkpIHsgcmV0dXJuIHsgfTsgfQorICAgIEp1bXAgYnJhbmNoVGVzdDgo
UmVzdWx0Q29uZGl0aW9uLCBCYXNlSW5kZXgsIFRydXN0ZWRJbW0zMiA9IFRydXN0ZWRJbW0zMigt
MSkpIHsgcmV0dXJuIHsgfTsgfQorCisgICAgSnVtcCBicmFuY2hUZXN0MzIoUmVzdWx0Q29uZGl0
aW9uLCBSZWdpc3RlcklELCBSZWdpc3RlcklEKSB7IHJldHVybiB7IH07IH0KKyAgICBKdW1wIGJy
YW5jaFRlc3QzMihSZXN1bHRDb25kaXRpb24sIFJlZ2lzdGVySUQsIFRydXN0ZWRJbW0zMiA9IFRy
dXN0ZWRJbW0zMigtMSkpIHsgcmV0dXJuIHsgfTsgfQorICAgIEp1bXAgYnJhbmNoVGVzdDMyKFJl
c3VsdENvbmRpdGlvbiwgQWRkcmVzcywgVHJ1c3RlZEltbTMyID0gVHJ1c3RlZEltbTMyKC0xKSkg
eyByZXR1cm4geyB9OyB9CisgICAgSnVtcCBicmFuY2hUZXN0MzIoUmVzdWx0Q29uZGl0aW9uLCBC
YXNlSW5kZXgsIFRydXN0ZWRJbW0zMiA9IFRydXN0ZWRJbW0zMigtMSkpIHsgcmV0dXJuIHsgfTsg
fQorICAgIEp1bXAgYnJhbmNoVGVzdDMyKFJlc3VsdENvbmRpdGlvbiwgQWJzb2x1dGVBZGRyZXNz
LCBUcnVzdGVkSW1tMzIgPSBUcnVzdGVkSW1tMzIoLTEpKSB7IHJldHVybiB7IH07IH0KKworICAg
IEp1bXAgYnJhbmNoVGVzdDY0KFJlc3VsdENvbmRpdGlvbiwgUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJ
RCkgeyByZXR1cm4geyB9OyB9CisgICAgSnVtcCBicmFuY2hUZXN0NjQoUmVzdWx0Q29uZGl0aW9u
LCBSZWdpc3RlcklELCBUcnVzdGVkSW1tMzIgPSBUcnVzdGVkSW1tMzIoLTEpKSB7IHJldHVybiB7
IH07IH0KKyAgICBKdW1wIGJyYW5jaFRlc3Q2NChSZXN1bHRDb25kaXRpb24sIFJlZ2lzdGVySUQs
IFRydXN0ZWRJbW02NCkgeyByZXR1cm4geyB9OyB9CisgICAgSnVtcCBicmFuY2hUZXN0NjQoUmVz
dWx0Q29uZGl0aW9uLCBBZGRyZXNzLCBSZWdpc3RlcklEKSB7IHJldHVybiB7IH07IH0KKyAgICBK
dW1wIGJyYW5jaFRlc3Q2NChSZXN1bHRDb25kaXRpb24sIEFkZHJlc3MsIFRydXN0ZWRJbW0zMiA9
IFRydXN0ZWRJbW0zMigtMSkpIHsgcmV0dXJuIHsgfTsgfQorICAgIEp1bXAgYnJhbmNoVGVzdDY0
KFJlc3VsdENvbmRpdGlvbiwgQmFzZUluZGV4LCBUcnVzdGVkSW1tMzIgPSBUcnVzdGVkSW1tMzIo
LTEpKSB7IHJldHVybiB7IH07IH0KKyAgICBKdW1wIGJyYW5jaFRlc3Q2NChSZXN1bHRDb25kaXRp
b24sIEFic29sdXRlQWRkcmVzcywgVHJ1c3RlZEltbTMyID0gVHJ1c3RlZEltbTMyKC0xKSkgeyBy
ZXR1cm4geyB9OyB9CisKKyAgICBKdW1wIGJyYW5jaFB0cihSZWxhdGlvbmFsQ29uZGl0aW9uLCBC
YXNlSW5kZXgsIFJlZ2lzdGVySUQpIHsgcmV0dXJuIHsgfTsgfQorCisgICAgRGF0YUxhYmVsMzIg
bW92ZVdpdGhQYXRjaChUcnVzdGVkSW1tMzIsIFJlZ2lzdGVySUQpIHsgcmV0dXJuIHsgfTsgfQor
ICAgIERhdGFMYWJlbFB0ciBtb3ZlV2l0aFBhdGNoKFRydXN0ZWRJbW1QdHIsIFJlZ2lzdGVySUQp
IHsgcmV0dXJuIHsgfTsgfQorCisgICAgSnVtcCBicmFuY2hQdHJXaXRoUGF0Y2goUmVsYXRpb25h
bENvbmRpdGlvbiwgUmVnaXN0ZXJJRCwgRGF0YUxhYmVsUHRyJiwgVHJ1c3RlZEltbVB0ciA9IFRy
dXN0ZWRJbW1QdHIobnVsbHB0cikpIHsgcmV0dXJuIHsgfTsgfQorICAgIEp1bXAgYnJhbmNoUHRy
V2l0aFBhdGNoKFJlbGF0aW9uYWxDb25kaXRpb24sIEFkZHJlc3MsIERhdGFMYWJlbFB0ciYsIFRy
dXN0ZWRJbW1QdHIgPSBUcnVzdGVkSW1tUHRyKG51bGxwdHIpKSB7IHJldHVybiB7IH07IH0KKwor
ICAgIFBhdGNoYWJsZUp1bXAgcGF0Y2hhYmxlQnJhbmNoOChSZWxhdGlvbmFsQ29uZGl0aW9uLCBB
ZGRyZXNzLCBUcnVzdGVkSW1tMzIpIHsgcmV0dXJuIHsgfTsgfQorICAgIFBhdGNoYWJsZUp1bXAg
cGF0Y2hhYmxlQnJhbmNoMzIoUmVsYXRpb25hbENvbmRpdGlvbiwgUmVnaXN0ZXJJRCwgVHJ1c3Rl
ZEltbTMyKSB7IHJldHVybiB7IH07IH0KKyAgICBQYXRjaGFibGVKdW1wIHBhdGNoYWJsZUJyYW5j
aDMyKFJlbGF0aW9uYWxDb25kaXRpb24sIEFkZHJlc3MsIFRydXN0ZWRJbW0zMikgeyByZXR1cm4g
eyB9OyB9CisKKyAgICBQYXRjaGFibGVKdW1wIHBhdGNoYWJsZUJyYW5jaDY0KFJlbGF0aW9uYWxD
b25kaXRpb24sIFJlZ2lzdGVySUQsIFRydXN0ZWRJbW02NCkgeyByZXR1cm4geyB9OyB9CisgICAg
UGF0Y2hhYmxlSnVtcCBwYXRjaGFibGVCcmFuY2g2NChSZWxhdGlvbmFsQ29uZGl0aW9uLCBSZWdp
c3RlcklELCBSZWdpc3RlcklEKSB7IHJldHVybiB7IH07IH0KKworICAgIEp1bXAgYnJhbmNoRmxv
YXQoRG91YmxlQ29uZGl0aW9uLCBGUFJlZ2lzdGVySUQsIEZQUmVnaXN0ZXJJRCkgeyByZXR1cm4g
eyB9OyB9CisgICAgSnVtcCBicmFuY2hEb3VibGUoRG91YmxlQ29uZGl0aW9uLCBGUFJlZ2lzdGVy
SUQsIEZQUmVnaXN0ZXJJRCkgeyByZXR1cm4geyB9OyB9CisgICAgSnVtcCBicmFuY2hEb3VibGVO
b25aZXJvKEZQUmVnaXN0ZXJJRCwgRlBSZWdpc3RlcklEKSB7IHJldHVybiB7IH07IH0KKyAgICBK
dW1wIGJyYW5jaERvdWJsZVplcm9Pck5hTihGUFJlZ2lzdGVySUQsIEZQUmVnaXN0ZXJJRCkgeyBy
ZXR1cm4geyB9OyB9CisKKyAgICBlbnVtIEJyYW5jaFRydW5jYXRlVHlwZSB7IEJyYW5jaElmVHJ1
bmNhdGVGYWlsZWQsIEJyYW5jaElmVHJ1bmNhdGVTdWNjZXNzZnVsIH07CisgICAgSnVtcCBicmFu
Y2hUcnVuY2F0ZURvdWJsZVRvSW50MzIoRlBSZWdpc3RlcklELCBSZWdpc3RlcklELCBCcmFuY2hU
cnVuY2F0ZVR5cGUgPSBCcmFuY2hJZlRydW5jYXRlRmFpbGVkKSB7IHJldHVybiB7IH07IH0KKwor
ICAgIHZvaWQgYnJhbmNoQ29udmVydERvdWJsZVRvSW50MzIoRlBSZWdpc3RlcklELCBSZWdpc3Rl
cklELCBKdW1wTGlzdCYsIEZQUmVnaXN0ZXJJRCwgYm9vbCA9IHRydWUpIHsgfQorCisgICAgQ2Fs
bCBjYWxsKFB0clRhZykgeyByZXR1cm4geyB9OyB9CisgICAgQ2FsbCBjYWxsKFJlZ2lzdGVySUQs
IFB0clRhZykgeyByZXR1cm4geyB9OyB9CisgICAgQ2FsbCBjYWxsKEFkZHJlc3MsIFB0clRhZykg
eyByZXR1cm4geyB9OyB9CisgICAgQ2FsbCBjYWxsKFJlZ2lzdGVySUQpIHsgcmV0dXJuIHsgfTsg
fQorICAgIENhbGwgY2FsbChSZWdpc3RlcklELCBSZWdpc3RlcklEKSB7IHJldHVybiB7IH07IH0K
KyAgICBDYWxsIGNhbGwoQWRkcmVzcywgUmVnaXN0ZXJJRCkgeyByZXR1cm4geyB9OyB9CisKKyAg
ICB2b2lkIGNhbGxPcGVyYXRpb24oY29uc3QgRnVuY3Rpb25QdHI8T3BlcmF0aW9uUHRyVGFnPikg
eyB9CisKKyAgICB2b2lkIGdldEVmZmVjdGl2ZUFkZHJlc3MoQmFzZUluZGV4LCBSZWdpc3RlcklE
KSB7IH0KKworICAgIHN0YXRpYyBib29sIHN1cHBvcnRzRmxvYXRpbmdQb2ludCgpIHsgcmV0dXJu
IHRydWU7IH0KKyAgICBzdGF0aWMgYm9vbCBzdXBwb3J0c0Zsb2F0aW5nUG9pbnRUcnVuY2F0ZSgp
IHsgcmV0dXJuIHRydWU7IH0KKyAgICBzdGF0aWMgYm9vbCBzdXBwb3J0c0Zsb2F0aW5nUG9pbnRT
cXJ0KCkgeyByZXR1cm4gdHJ1ZTsgfQorICAgIHN0YXRpYyBib29sIHN1cHBvcnRzRmxvYXRpbmdQ
b2ludEFicygpIHsgcmV0dXJuIHRydWU7IH0KKyAgICBzdGF0aWMgYm9vbCBzdXBwb3J0c0Zsb2F0
aW5nUG9pbnRSb3VuZGluZygpIHsgcmV0dXJuIHRydWU7IH0KKworICAgIHZvaWQgYWJzRmxvYXQo
RlBSZWdpc3RlcklELCBGUFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgYWJzRG91YmxlKEZQUmVn
aXN0ZXJJRCwgRlBSZWdpc3RlcklEKSB7IH0KKworICAgIHZvaWQgYWRkRmxvYXQoRlBSZWdpc3Rl
cklELCBGUFJlZ2lzdGVySUQsIEZQUmVnaXN0ZXJJRCkgeyB9CisgICAgdm9pZCBhZGREb3VibGUo
RlBSZWdpc3RlcklELCBGUFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgYWRkRG91YmxlKEZQUmVn
aXN0ZXJJRCwgRlBSZWdpc3RlcklELCBGUFJlZ2lzdGVySUQpIHsgfTsKKyAgICB2b2lkIGFkZERv
dWJsZShBZGRyZXNzLCBGUFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgYWRkRG91YmxlKEFic29s
dXRlQWRkcmVzcywgRlBSZWdpc3RlcklEKSB7IH0KKworICAgIHZvaWQgc3ViRmxvYXQoRlBSZWdp
c3RlcklELCBGUFJlZ2lzdGVySUQsIEZQUmVnaXN0ZXJJRCkgeyB9CisgICAgdm9pZCBzdWJEb3Vi
bGUoRlBSZWdpc3RlcklELCBGUFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgc3ViRG91YmxlKEZQ
UmVnaXN0ZXJJRCwgRlBSZWdpc3RlcklELCBGUFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgc3Vi
RG91YmxlKEFkZHJlc3MsIEZQUmVnaXN0ZXJJRCkgeyB9CisKKyAgICB2b2lkIG11bEZsb2F0KEZQ
UmVnaXN0ZXJJRCwgRlBSZWdpc3RlcklELCBGUFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgbXVs
RG91YmxlKEZQUmVnaXN0ZXJJRCwgRlBSZWdpc3RlcklEKSB7IH0KKyAgICB2b2lkIG11bERvdWJs
ZShGUFJlZ2lzdGVySUQsIEZQUmVnaXN0ZXJJRCwgRlBSZWdpc3RlcklEKSB7IH0KKyAgICB2b2lk
IG11bERvdWJsZShBZGRyZXNzLCBGUFJlZ2lzdGVySUQpIHsgfQorCisgICAgdm9pZCBkaXZGbG9h
dChGUFJlZ2lzdGVySUQsIEZQUmVnaXN0ZXJJRCwgRlBSZWdpc3RlcklEKSB7IH0KKyAgICB2b2lk
IGRpdkRvdWJsZShGUFJlZ2lzdGVySUQsIEZQUmVnaXN0ZXJJRCkgeyB9CisgICAgdm9pZCBkaXZE
b3VibGUoRlBSZWdpc3RlcklELCBGUFJlZ2lzdGVySUQsIEZQUmVnaXN0ZXJJRCkgeyB9CisKKyAg
ICB2b2lkIGNlaWxGbG9hdChGUFJlZ2lzdGVySUQsIEZQUmVnaXN0ZXJJRCkgeyB9CisgICAgdm9p
ZCBjZWlsRG91YmxlKEZQUmVnaXN0ZXJJRCwgRlBSZWdpc3RlcklEKSB7IH0KKworICAgIHZvaWQg
Zmxvb3JGbG9hdChGUFJlZ2lzdGVySUQsIEZQUmVnaXN0ZXJJRCkgeyB9CisgICAgdm9pZCBmbG9v
ckRvdWJsZShGUFJlZ2lzdGVySUQsIEZQUmVnaXN0ZXJJRCkgeyB9CisKKyAgICB2b2lkIHJvdW5k
VG93YXJkTmVhcmVzdEludEZsb2F0KEZQUmVnaXN0ZXJJRCwgRlBSZWdpc3RlcklEKSB7IH0KKyAg
ICB2b2lkIHJvdW5kVG93YXJkTmVhcmVzdEludERvdWJsZShGUFJlZ2lzdGVySUQsIEZQUmVnaXN0
ZXJJRCkgeyB9CisgICAgdm9pZCByb3VuZFRvd2FyZFplcm9GbG9hdChGUFJlZ2lzdGVySUQsIEZQ
UmVnaXN0ZXJJRCkgeyB9CisgICAgdm9pZCByb3VuZFRvd2FyZFplcm9Eb3VibGUoRlBSZWdpc3Rl
cklELCBGUFJlZ2lzdGVySUQpIHsgfQorCisgICAgdm9pZCBhbmRGbG9hdChGUFJlZ2lzdGVySUQs
IEZQUmVnaXN0ZXJJRCwgRlBSZWdpc3RlcklEKSB7IH0KKyAgICB2b2lkIGFuZERvdWJsZShGUFJl
Z2lzdGVySUQsIEZQUmVnaXN0ZXJJRCwgRlBSZWdpc3RlcklEKSB7IH0KKworICAgIHZvaWQgb3JG
bG9hdChGUFJlZ2lzdGVySUQsIEZQUmVnaXN0ZXJJRCwgRlBSZWdpc3RlcklEKSB7IH0KKyAgICB2
b2lkIG9yRG91YmxlKEZQUmVnaXN0ZXJJRCwgRlBSZWdpc3RlcklELCBGUFJlZ2lzdGVySUQpIHsg
fQorCisgICAgdm9pZCBuZWdhdGVGbG9hdChGUFJlZ2lzdGVySUQsIEZQUmVnaXN0ZXJJRCkgeyB9
CisgICAgdm9pZCBuZWdhdGVEb3VibGUoRlBSZWdpc3RlcklELCBGUFJlZ2lzdGVySUQpIHsgfQor
CisgICAgdm9pZCBzcXJ0RmxvYXQoRlBSZWdpc3RlcklELCBGUFJlZ2lzdGVySUQpIHsgfQorICAg
IHZvaWQgc3FydERvdWJsZShGUFJlZ2lzdGVySUQsIEZQUmVnaXN0ZXJJRCkgeyB9CisKKyAgICBK
dW1wIGNvbXBhcmVGbG9hdChEb3VibGVDb25kaXRpb24sIEZQUmVnaXN0ZXJJRCwgRlBSZWdpc3Rl
cklELCBSZWdpc3RlcklEKSB7IHJldHVybiB7IH07IH0KKyAgICBKdW1wIGNvbXBhcmVEb3VibGUo
RG91YmxlQ29uZGl0aW9uLCBGUFJlZ2lzdGVySUQsIEZQUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCkg
eyByZXR1cm4geyB9OyB9CisKKyAgICB2b2lkIGxvYWRGbG9hdChJbXBsaWNpdEFkZHJlc3MsIEZQ
UmVnaXN0ZXJJRCkgeyB9CisgICAgdm9pZCBsb2FkRmxvYXQoQmFzZUluZGV4LCBGUFJlZ2lzdGVy
SUQpIHsgfQorICAgIHZvaWQgbG9hZEZsb2F0KFRydXN0ZWRJbW1QdHIsIEZQUmVnaXN0ZXJJRCkg
eyB9CisKKyAgICB2b2lkIGxvYWREb3VibGUoSW1wbGljaXRBZGRyZXNzLCBGUFJlZ2lzdGVySUQp
IHsgfQorICAgIHZvaWQgbG9hZERvdWJsZShCYXNlSW5kZXgsIEZQUmVnaXN0ZXJJRCkgeyB9Cisg
ICAgdm9pZCBsb2FkRG91YmxlKFRydXN0ZWRJbW1QdHIsIEZQUmVnaXN0ZXJJRCkgeyB9CisKKyAg
ICB2b2lkIHN0b3JlRmxvYXQoRlBSZWdpc3RlcklELCBJbXBsaWNpdEFkZHJlc3MpIHsgfQorICAg
IHZvaWQgc3RvcmVGbG9hdChGUFJlZ2lzdGVySUQsIEJhc2VJbmRleCkgeyB9CisKKyAgICB2b2lk
IHN0b3JlRG91YmxlKEZQUmVnaXN0ZXJJRCwgSW1wbGljaXRBZGRyZXNzKSB7IH0KKyAgICB2b2lk
IHN0b3JlRG91YmxlKEZQUmVnaXN0ZXJJRCwgVHJ1c3RlZEltbVB0cikgeyB9CisgICAgdm9pZCBz
dG9yZURvdWJsZShGUFJlZ2lzdGVySUQsIEJhc2VJbmRleCkgeyB9CisKKyAgICB2b2lkIGNvbnZl
cnRJbnQzMlRvRmxvYXQoUmVnaXN0ZXJJRCwgRlBSZWdpc3RlcklEKSB7IH0KKyAgICB2b2lkIGNv
bnZlcnRJbnQzMlRvRG91YmxlKFRydXN0ZWRJbW0zMiwgRlBSZWdpc3RlcklEKSB7IH0KKyAgICB2
b2lkIGNvbnZlcnRJbnQzMlRvRG91YmxlKFJlZ2lzdGVySUQsIEZQUmVnaXN0ZXJJRCkgeyB9Cisg
ICAgdm9pZCBjb252ZXJ0SW50MzJUb0RvdWJsZShBZGRyZXNzLCBGUFJlZ2lzdGVySUQpIHsgfQor
ICAgIHZvaWQgY29udmVydEludDMyVG9Eb3VibGUoQWJzb2x1dGVBZGRyZXNzLCBGUFJlZ2lzdGVy
SUQpIHsgfQorICAgIHZvaWQgY29udmVydEludDY0VG9GbG9hdChSZWdpc3RlcklELCBGUFJlZ2lz
dGVySUQpIHsgfQorICAgIHZvaWQgY29udmVydEludDY0VG9Eb3VibGUoUmVnaXN0ZXJJRCwgRlBS
ZWdpc3RlcklEKSB7IH0KKworICAgIHZvaWQgY29udmVydEZsb2F0VG9Eb3VibGUoRlBSZWdpc3Rl
cklELCBGUFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgY29udmVydERvdWJsZVRvRmxvYXQoRlBS
ZWdpc3RlcklELCBGUFJlZ2lzdGVySUQpIHsgfQorCisgICAgdm9pZCB0cnVuY2F0ZUZsb2F0VG9J
bnQzMihGUFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgdHJ1bmNhdGVGbG9h
dFRvVWludDMyKEZQUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCkgeyB9CisgICAgdm9pZCB0cnVuY2F0
ZUZsb2F0VG9JbnQ2NChGUFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgdHJ1
bmNhdGVGbG9hdFRvVWludDY0KEZQUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCkgeyB9CisgICAgdm9p
ZCB0cnVuY2F0ZURvdWJsZVRvSW50MzIoRlBSZWdpc3RlcklELCBSZWdpc3RlcklEKSB7IH0KKyAg
ICB2b2lkIHRydW5jYXRlRG91YmxlVG9VaW50MzIoRlBSZWdpc3RlcklELCBSZWdpc3RlcklEKSB7
IH0KKyAgICB2b2lkIHRydW5jYXRlRG91YmxlVG9JbnQ2NChGUFJlZ2lzdGVySUQsIFJlZ2lzdGVy
SUQpIHsgfQorICAgIHZvaWQgdHJ1bmNhdGVEb3VibGVUb1VpbnQ2NChGUFJlZ2lzdGVySUQsIFJl
Z2lzdGVySUQpIHsgfQorCisgICAgdm9pZCBwdXNoKFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQg
cHVzaChBZGRyZXNzKSB7IH0KKyAgICB2b2lkIHB1c2goVHJ1c3RlZEltbTMyKSB7IH0KKyAgICB2
b2lkIHB1c2hQYWlyKFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQpIHsgfQorICAgIHZvaWQgcHVzaFRv
U2F2ZShSZWdpc3RlcklEKSB7IH0KKyAgICB2b2lkIHB1c2hUb1NhdmUoQWRkcmVzcykgeyB9Cisg
ICAgdm9pZCBwdXNoVG9TYXZlKFRydXN0ZWRJbW0zMikgeyB9CisgICAgdm9pZCBwdXNoVG9TYXZl
KEZQUmVnaXN0ZXJJRCkgeyB9CisKKyAgICB2b2lkIHBvcChSZWdpc3RlcklEKSB7IH0KKyAgICB2
b2lkIHBvcFBhaXIoUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCkgeyB9CisgICAgdm9pZCBwb3BUb1Jl
c3RvcmUoUmVnaXN0ZXJJRCkgeyB9CisgICAgdm9pZCBwb3BUb1Jlc3RvcmUoRlBSZWdpc3RlcklE
KSB7IH0KKworICAgIHZvaWQgYWJvcnRXaXRoUmVhc29uKEFib3J0UmVhc29uKSB7IH0KKyAgICB2
b2lkIGFib3J0V2l0aFJlYXNvbihBYm9ydFJlYXNvbiwgaW50cHRyX3QpIHsgfQorCisgICAgRGF0
YUxhYmVsUHRyIHN0b3JlUHRyV2l0aFBhdGNoKFRydXN0ZWRJbW1QdHIsIEltcGxpY2l0QWRkcmVz
cykgeyByZXR1cm4geyB9OyB9CisgICAgRGF0YUxhYmVsUHRyIHN0b3JlUHRyV2l0aFBhdGNoKElt
cGxpY2l0QWRkcmVzcykgeyByZXR1cm4geyB9OyB9CisKKyAgICB2b2lkIGJyZWFrcG9pbnQodWlu
dDE2X3QgPSAweGM0NzEpIHsgfQorICAgIHZvaWQgbm9wKCkgeyB9CisKKyAgICB2b2lkIG1lbW9y
eUZlbmNlKCkgeyB9CisgICAgdm9pZCBzdG9yZUZlbmNlKCkgeyB9CisgICAgdm9pZCBsb2FkRmVu
Y2UoKSB7IH0KKworICAgIHRlbXBsYXRlPHR5cGVuYW1lIEFkZHJlc3NUeXBlPgorICAgIEp1bXBM
aXN0IGJyYW5jaEF0b21pY1dlYWtDQVM4KFN0YXR1c0NvbmRpdGlvbiwgUmVnaXN0ZXJJRCwgUmVn
aXN0ZXJJRCwgQWRkcmVzc1R5cGUpIHsgcmV0dXJuIHsgfTsgfQorICAgIAorICAgIHRlbXBsYXRl
PHR5cGVuYW1lIEFkZHJlc3NUeXBlPgorICAgIEp1bXBMaXN0IGJyYW5jaEF0b21pY1dlYWtDQVMx
NihTdGF0dXNDb25kaXRpb24sIFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQsIEFkZHJlc3NUeXBlKSB7
IHJldHVybiB7IH07IH0KKyAgICAKKyAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBBZGRyZXNzVHlwZT4K
KyAgICBKdW1wTGlzdCBicmFuY2hBdG9taWNXZWFrQ0FTMzIoU3RhdHVzQ29uZGl0aW9uLCBSZWdp
c3RlcklELCBSZWdpc3RlcklELCBBZGRyZXNzVHlwZSkgeyByZXR1cm4geyB9OyB9CisgICAgCisg
ICAgdGVtcGxhdGU8dHlwZW5hbWUgQWRkcmVzc1R5cGU+CisgICAgSnVtcExpc3QgYnJhbmNoQXRv
bWljV2Vha0NBUzY0KFN0YXR1c0NvbmRpdGlvbiwgUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCwgQWRk
cmVzc1R5cGUpIHsgcmV0dXJuIHsgfTsgfQorCisgICAgdGVtcGxhdGU8UHRyVGFnIHRhZz4KKyAg
ICBzdGF0aWMgdm9pZCBsaW5rQ2FsbCh2b2lkKiwgQ2FsbCwgRnVuY3Rpb25QdHI8dGFnPikgeyB9
Cit9OworCit9IC8vIG5hbWVzcGFjZSBKU0MKKworI2VuZGlmIC8vIEVOQUJMRShBU1NFTUJMRVIp
ICYmIENQVShSSVNDVjY0KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2Vt
Ymxlci9NYXhGcmFtZUV4dGVudEZvclNsb3dQYXRoQ2FsbC5oIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2Fzc2VtYmxlci9NYXhGcmFtZUV4dGVudEZvclNsb3dQYXRoQ2FsbC5oCmluZGV4IDZkYWMw
OWMyYzkxMy4uODYyYTVkN2MyYjYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
YXNzZW1ibGVyL01heEZyYW1lRXh0ZW50Rm9yU2xvd1BhdGhDYWxsLmgKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYXhGcmFtZUV4dGVudEZvclNsb3dQYXRoQ2FsbC5oCkBA
IC01MCw3ICs1MCw3IEBAIHN0YXRpYyBjb25zdGV4cHIgc2l6ZV90IG1heEZyYW1lRXh0ZW50Rm9y
U2xvd1BhdGhDYWxsID0gMDsKIC8vIDcgYXJncyBvbiBzdGFjayAoMjggYnl0ZXMpLgogc3RhdGlj
IGNvbnN0ZXhwciBzaXplX3QgbWF4RnJhbWVFeHRlbnRGb3JTbG93UGF0aENhbGwgPSA0MDsKIAot
I2VsaWYgQ1BVKEFSTTY0KSB8fCBDUFUoQVJNNjRFKQorI2VsaWYgQ1BVKEFSTTY0KSB8fCBDUFUo
QVJNNjRFKSB8fCBDUFUoUklTQ1Y2NCkKIC8vIEFsbCBhcmdzIGluIHJlZ2lzdGVycy4KIHN0YXRp
YyBjb25zdGV4cHIgc2l6ZV90IG1heEZyYW1lRXh0ZW50Rm9yU2xvd1BhdGhDYWxsID0gMDsKIApk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9QZXJmTG9nLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvUGVyZkxvZy5jcHAKaW5kZXggYTQ5Y2Nk
N2ZkNGFmLi40NmJjODU5ZDkxMmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9h
c3NlbWJsZXIvUGVyZkxvZy5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxl
ci9QZXJmTG9nLmNwcApAQCAtNzcsNiArNzcsOCBAQCBzdGF0aWMgY29uc3RleHByIHVpbnQzMl90
IGVsZk1hY2hpbmUgPSBFTV9NSVBTX1JTM19MRTsKICNlbHNlCiBzdGF0aWMgY29uc3RleHByIHVp
bnQzMl90IGVsZk1hY2hpbmUgPSBFTV9NSVBTOwogI2VuZGlmCisjZWxpZiBDUFUoUklTQ1Y2NCkK
K3N0YXRpYyBjb25zdGV4cHIgdWludDMyX3QgZWxmTWFjaGluZSA9IEVNX1JJU0NWOwogI2VuZGlm
CiAKIH0gLy8gbmFtZXNwYWNlIENvbnN0YW50cwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2Fzc2VtYmxlci9Qcm9iZUNvbnRleHQuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9h
c3NlbWJsZXIvUHJvYmVDb250ZXh0LmgKaW5kZXggOGQ1MGJiZTU4YjlmLi41ZDRlMzJkYzYyZjUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvUHJvYmVDb250ZXh0
LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9Qcm9iZUNvbnRleHQuaApA
QCAtMTE2LDYgKzExNiw4IEBAIGlubGluZSB2b2lkKiYgQ1BVU3RhdGU6OnBjKCkKICAgICByZXR1
cm4gKnJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCoqPigmZ3ByKEFSTVJlZ2lzdGVyczo6cGMpKTsKICNl
bGlmIENQVShNSVBTKQogICAgIHJldHVybiAqcmVpbnRlcnByZXRfY2FzdDx2b2lkKio+KCZzcHIo
TUlQU1JlZ2lzdGVyczo6cGMpKTsKKyNlbGlmIENQVShSSVNDVjY0KQorICAgIHJldHVybiAqcmVp
bnRlcnByZXRfY2FzdDx2b2lkKio+KCZzcHIoUklTQ1Y2NFJlZ2lzdGVyczo6cGMpKTsKICNlbHNl
CiAjZXJyb3IgIlVuc3VwcG9ydGVkIENQVSIKICNlbmRpZgpAQCAtMTMxLDYgKzEzMyw4IEBAIGlu
bGluZSB2b2lkKiYgQ1BVU3RhdGU6OmZwKCkKICAgICByZXR1cm4gKnJlaW50ZXJwcmV0X2Nhc3Q8
dm9pZCoqPigmZ3ByKEFSTVJlZ2lzdGVyczo6ZnApKTsKICNlbGlmIENQVShNSVBTKQogICAgIHJl
dHVybiAqcmVpbnRlcnByZXRfY2FzdDx2b2lkKio+KCZncHIoTUlQU1JlZ2lzdGVyczo6ZnApKTsK
KyNlbGlmIENQVShSSVNDVjY0KQorICAgIHJldHVybiAqcmVpbnRlcnByZXRfY2FzdDx2b2lkKio+
KCZncHIoUklTQ1Y2NFJlZ2lzdGVyczo6ZnApKTsKICNlbHNlCiAjZXJyb3IgIlVuc3VwcG9ydGVk
IENQVSIKICNlbmRpZgpAQCAtMTQ2LDYgKzE1MCw4IEBAIGlubGluZSB2b2lkKiYgQ1BVU3RhdGU6
OnNwKCkKICAgICByZXR1cm4gKnJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCoqPigmZ3ByKEFSTVJlZ2lz
dGVyczo6c3ApKTsKICNlbGlmIENQVShNSVBTKQogICAgIHJldHVybiAqcmVpbnRlcnByZXRfY2Fz
dDx2b2lkKio+KCZncHIoTUlQU1JlZ2lzdGVyczo6c3ApKTsKKyNlbGlmIENQVShSSVNDVjY0KQor
ICAgIHJldHVybiAqcmVpbnRlcnByZXRfY2FzdDx2b2lkKio+KCZncHIoUklTQ1Y2NFJlZ2lzdGVy
czo6c3ApKTsKICNlbHNlCiAjZXJyb3IgIlVuc3VwcG9ydGVkIENQVSIKICNlbmRpZgpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9SSVNDVjY0QXNzZW1ibGVyLmgg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL1JJU0NWNjRBc3NlbWJsZXIuaApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLmY5MjdlNTM3ZGM3OAotLS0gL2Rl
di9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvUklTQ1Y2NEFzc2Vt
Ymxlci5oCkBAIC0wLDAgKzEsMjQ3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIElnYWxp
YSBTLkwuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAq
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBM
RSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgor
ICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFn
bWEgb25jZQorCisjaWYgRU5BQkxFKEFTU0VNQkxFUikgJiYgQ1BVKFJJU0NWNjQpCisKKyNpbmNs
dWRlICJBc3NlbWJsZXJCdWZmZXIuaCIKKyNpbmNsdWRlICJSSVNDVjY0UmVnaXN0ZXJzLmgiCisK
K25hbWVzcGFjZSBKU0MgeworCituYW1lc3BhY2UgUklTQ1Y2NFJlZ2lzdGVycyB7CisKK3R5cGVk
ZWYgZW51bSA6IGludDhfdCB7CisgICAgeDAsCisgICAgeDEsIC8vIHJhIHJlZ2lzdGVyCisgICAg
eDIsIC8vIHNwIHJlZ2lzdGVyCisgICAgeDMsCisgICAgeDQsCisgICAgeDUsCisgICAgeDYsCisg
ICAgeDcsCisgICAgeDgsIC8vIGZwIHJlZ2lzdGVyCisgICAgeDksCisgICAgeDEwLAorICAgIHgx
MSwKKyAgICB4MTIsCisgICAgeDEzLAorICAgIHgxNCwKKyAgICB4MTUsCisgICAgeDE2LAorICAg
IHgxNywKKyAgICB4MTgsCisgICAgeDE5LAorICAgIHgyMCwKKyAgICB4MjEsCisgICAgeDIyLAor
ICAgIHgyMywKKyAgICB4MjQsCisgICAgeDI1LAorICAgIHgyNiwKKyAgICB4MjcsCisgICAgeDI4
LAorICAgIHgyOSwKKyAgICB4MzAsCisgICAgeDMxLAorICAgIEludmFsaWRHUFJSZWcgPSAtMSwK
KworICAgIHplcm8gPSB4MCwKKyAgICByYSA9IHgxLAorICAgIHNwID0geDIsCisgICAgZ3AgPSB4
MywKKyAgICB0cCA9IHg0LAorICAgIGZwID0geDgsCit9IFJlZ2lzdGVySUQ7CisKK3R5cGVkZWYg
ZW51bSA6IGludDhfdCB7CisgICAgcGMsCisgICAgSW52YWxpZFNQUmVnID0gLTEsCit9IFNQUmVn
aXN0ZXJJRDsKKwordHlwZWRlZiBlbnVtIDogaW50OF90IHsKKyAgICBmMCwKKyAgICBmMSwKKyAg
ICBmMiwKKyAgICBmMywKKyAgICBmNCwKKyAgICBmNSwKKyAgICBmNiwKKyAgICBmNywKKyAgICBm
OCwKKyAgICBmOSwKKyAgICBmMTAsCisgICAgZjExLAorICAgIGYxMiwKKyAgICBmMTMsCisgICAg
ZjE0LAorICAgIGYxNSwKKyAgICBmMTYsCisgICAgZjE3LAorICAgIGYxOCwKKyAgICBmMTksCisg
ICAgZjIwLAorICAgIGYyMSwKKyAgICBmMjIsCisgICAgZjIzLAorICAgIGYyNCwKKyAgICBmMjUs
CisgICAgZjI2LAorICAgIGYyNywKKyAgICBmMjgsCisgICAgZjI5LAorICAgIGYzMCwKKyAgICBm
MzEsCisgICAgSW52YWxpZEZQUlJlZyA9IC0xLAorfSBGUFJlZ2lzdGVySUQ7CisKK30gLy8gbmFt
ZXNwYWNlIFJJU0NWNjRSZWdpc3RlcnMKKworY2xhc3MgUklTQ1Y2NEFzc2VtYmxlciB7CitwdWJs
aWM6CisgICAgdXNpbmcgUmVnaXN0ZXJJRCA9IFJJU0NWNjRSZWdpc3RlcnM6OlJlZ2lzdGVySUQ7
CisgICAgdXNpbmcgU1BSZWdpc3RlcklEID0gUklTQ1Y2NFJlZ2lzdGVyczo6U1BSZWdpc3RlcklE
OworICAgIHVzaW5nIEZQUmVnaXN0ZXJJRCA9IFJJU0NWNjRSZWdpc3RlcnM6OkZQUmVnaXN0ZXJJ
RDsKKworICAgIHN0YXRpYyBjb25zdGV4cHIgUmVnaXN0ZXJJRCBmaXJzdFJlZ2lzdGVyKCkgeyBy
ZXR1cm4gUklTQ1Y2NFJlZ2lzdGVyczo6eDA7IH0KKyAgICBzdGF0aWMgY29uc3RleHByIFJlZ2lz
dGVySUQgbGFzdFJlZ2lzdGVyKCkgeyByZXR1cm4gUklTQ1Y2NFJlZ2lzdGVyczo6eDMxOyB9Cisg
ICAgc3RhdGljIGNvbnN0ZXhwciB1bnNpZ25lZCBudW1iZXJPZlJlZ2lzdGVycygpIHsgcmV0dXJu
IGxhc3RSZWdpc3RlcigpIC0gZmlyc3RSZWdpc3RlcigpICsgMTsgfQorCisgICAgc3RhdGljIGNv
bnN0ZXhwciBTUFJlZ2lzdGVySUQgZmlyc3RTUFJlZ2lzdGVyKCkgeyByZXR1cm4gUklTQ1Y2NFJl
Z2lzdGVyczo6cGM7IH0KKyAgICBzdGF0aWMgY29uc3RleHByIFNQUmVnaXN0ZXJJRCBsYXN0U1BS
ZWdpc3RlcigpIHsgcmV0dXJuIFJJU0NWNjRSZWdpc3RlcnM6OnBjOyB9CisgICAgc3RhdGljIGNv
bnN0ZXhwciB1bnNpZ25lZCBudW1iZXJPZlNQUmVnaXN0ZXJzKCkgeyByZXR1cm4gbGFzdFNQUmVn
aXN0ZXIoKSAtIGZpcnN0U1BSZWdpc3RlcigpICsgMTsgfQorCisgICAgc3RhdGljIGNvbnN0ZXhw
ciBGUFJlZ2lzdGVySUQgZmlyc3RGUFJlZ2lzdGVyKCkgeyByZXR1cm4gUklTQ1Y2NFJlZ2lzdGVy
czo6ZjA7IH0KKyAgICBzdGF0aWMgY29uc3RleHByIEZQUmVnaXN0ZXJJRCBsYXN0RlBSZWdpc3Rl
cigpIHsgcmV0dXJuIFJJU0NWNjRSZWdpc3RlcnM6OmYzMTsgfQorICAgIHN0YXRpYyBjb25zdGV4
cHIgdW5zaWduZWQgbnVtYmVyT2ZGUFJlZ2lzdGVycygpIHsgcmV0dXJuIGxhc3RGUFJlZ2lzdGVy
KCkgLSBmaXJzdEZQUmVnaXN0ZXIoKSArIDE7IH0KKworICAgIHN0YXRpYyBjb25zdCBjaGFyKiBn
cHJOYW1lKFJlZ2lzdGVySUQgaWQpCisgICAgeworICAgICAgICBBU1NFUlQoaWQgPj0gZmlyc3RS
ZWdpc3RlcigpICYmIGlkIDw9IGxhc3RSZWdpc3RlcigpKTsKKyAgICAgICAgc3RhdGljIGNvbnN0
IGNoYXIqIGNvbnN0IG5hbWVGb3JSZWdpc3RlcltudW1iZXJPZlJlZ2lzdGVycygpXSA9IHsKKyAg
ICAgICAgICAgICAgICAieDAiLCAieDEiLCAieDIiLCAieDMiLCAieDQiLCAieDUiLCAieDYiLCAi
eDciLCAieDgiLCAieDkiLCAieDEwIiwgIngxMSIsICJ4MTIiLCAieDEzIiwgIngxNCIsICJ4MTUi
LAorICAgICAgICAgICAgICAgICJ4MTYiLCAieDE3IiwgIngxOCIsICJ4MTkiLCAieDIwIiwgIngy
MSIsICJ4MjIiLCAieDIzIiwgIngyNCIsICJ4MjUiLCAieDI2IiwgIngyNyIsICJ4MjgiLCAieDI5
IiwgIngzMCIsICJ4MzEiLAorICAgICAgICAgICAgfTsKKyAgICAgICAgcmV0dXJuIG5hbWVGb3JS
ZWdpc3RlcltpZF07CisgICAgfQorCisgICAgc3RhdGljIGNvbnN0IGNoYXIqIHNwck5hbWUoU1BS
ZWdpc3RlcklEIGlkKQorICAgIHsKKyAgICAgICAgQVNTRVJUKGlkID49IGZpcnN0U1BSZWdpc3Rl
cigpICYmIGlkIDw9IGxhc3RTUFJlZ2lzdGVyKCkpOworICAgICAgICBzdGF0aWMgY29uc3QgY2hh
ciogY29uc3QgbmFtZUZvclJlZ2lzdGVyW251bWJlck9mU1BSZWdpc3RlcnMoKV0gPSB7ICJwYyIs
IH07CisgICAgICAgIHJldHVybiBuYW1lRm9yUmVnaXN0ZXJbaWRdOworICAgIH0KKworICAgIHN0
YXRpYyBjb25zdCBjaGFyKiBmcHJOYW1lKEZQUmVnaXN0ZXJJRCBpZCkKKyAgICB7CisgICAgICAg
IEFTU0VSVChpZCA+PSBmaXJzdEZQUmVnaXN0ZXIoKSAmJiBpZCA8PSBsYXN0RlBSZWdpc3Rlcigp
KTsKKyAgICAgICAgc3RhdGljIGNvbnN0IGNoYXIqIGNvbnN0IG5hbWVGb3JSZWdpc3RlcltudW1i
ZXJPZkZQUmVnaXN0ZXJzKCldID0geworICAgICAgICAgICAgICAgICJmMCIsICJmMSIsICJmMiIs
ICJmMyIsICJmNCIsICJmNSIsICJmNiIsICJmNyIsICJmOCIsICJmOSIsICJmMTAiLCAiZjExIiwg
ImYxMiIsICJmMTMiLCAiZjE0IiwgImYxNSIsCisgICAgICAgICAgICAgICAgImYxNiIsICJmMTci
LCAiZjE4IiwgImYxOSIsICJmMjAiLCAiZjIxIiwgImYyMiIsICJmMjMiLCAiZjI0IiwgImYyNSIs
ICJmMjYiLCAiZjI3IiwgImYyOCIsICJmMjkiLCAiZjMwIiwgImYzMSIsCisgICAgICAgICAgICB9
OworICAgICAgICByZXR1cm4gbmFtZUZvclJlZ2lzdGVyW2lkXTsKKyAgICB9CisKKyAgICBSSVND
VjY0QXNzZW1ibGVyKCkgeyB9CisKKyAgICBBc3NlbWJsZXJCdWZmZXImIGJ1ZmZlcigpIHsgcmV0
dXJuIG1fYnVmZmVyOyB9CisKKyAgICB0eXBlZGVmIGVudW0geworICAgICAgICBDb25kaXRpb25F
USwKKyAgICAgICAgQ29uZGl0aW9uTkUsCisgICAgICAgIENvbmRpdGlvbkhTLCBDb25kaXRpb25D
UyA9IENvbmRpdGlvbkhTLAorICAgICAgICBDb25kaXRpb25MTywgQ29uZGl0aW9uQ0MgPSBDb25k
aXRpb25MTywKKyAgICAgICAgQ29uZGl0aW9uTUksCisgICAgICAgIENvbmRpdGlvblBMLAorICAg
ICAgICBDb25kaXRpb25WUywKKyAgICAgICAgQ29uZGl0aW9uVkMsCisgICAgICAgIENvbmRpdGlv
bkhJLAorICAgICAgICBDb25kaXRpb25MUywKKyAgICAgICAgQ29uZGl0aW9uR0UsCisgICAgICAg
IENvbmRpdGlvbkxULAorICAgICAgICBDb25kaXRpb25HVCwKKyAgICAgICAgQ29uZGl0aW9uTEUs
CisgICAgICAgIENvbmRpdGlvbkFMLAorICAgICAgICBDb25kaXRpb25JbnZhbGlkCisgICAgfSBD
b25kaXRpb247CisKKyAgICBzdGF0aWMgQ29uZGl0aW9uIGludmVydChDb25kaXRpb24gY29uZCkK
KyAgICB7CisgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxDb25kaXRpb24+KGNvbmQgXiAxKTsK
KyAgICB9CisKKyAgICBzdGF0aWMgdm9pZCogZ2V0UmVsb2NhdGVkQWRkcmVzcyh2b2lkKiBjb2Rl
LCBBc3NlbWJsZXJMYWJlbCBsYWJlbCkKKyAgICB7CisgICAgICAgIEFTU0VSVChsYWJlbC5pc1Nl
dCgpKTsKKyAgICAgICAgcmV0dXJuIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KHJlaW50ZXJwcmV0
X2Nhc3Q8cHRyZGlmZl90Pihjb2RlKSArIGxhYmVsLm9mZnNldCgpKTsKKyAgICB9CisKKyAgICBz
aXplX3QgY29kZVNpemUoKSBjb25zdCB7IHJldHVybiBtX2J1ZmZlci5jb2RlU2l6ZSgpOyB9CisK
KyAgICBzdGF0aWMgdW5zaWduZWQgZ2V0Q2FsbFJldHVybk9mZnNldChBc3NlbWJsZXJMYWJlbCkg
eyByZXR1cm4gMDsgfQorCisgICAgQXNzZW1ibGVyTGFiZWwgbGFiZWxJZ25vcmluZ1dhdGNocG9p
bnRzKCkgeyByZXR1cm4geyB9OyB9CisgICAgQXNzZW1ibGVyTGFiZWwgbGFiZWxGb3JXYXRjaHBv
aW50KCkgeyByZXR1cm4geyB9OyB9CisgICAgQXNzZW1ibGVyTGFiZWwgbGFiZWwoKSB7IHJldHVy
biB7IH07IH0KKworICAgIHN0YXRpYyB2b2lkIGxpbmtKdW1wKHZvaWQqLCBBc3NlbWJsZXJMYWJl
bCwgdm9pZCopIHsgfQorCisgICAgc3RhdGljIHZvaWQgbGlua0p1bXAoQXNzZW1ibGVyTGFiZWws
IEFzc2VtYmxlckxhYmVsKSB7IH0KKworICAgIHN0YXRpYyB2b2lkIGxpbmtDYWxsKHZvaWQqLCBB
c3NlbWJsZXJMYWJlbCwgdm9pZCopIHsgfQorCisgICAgc3RhdGljIHZvaWQgbGlua1BvaW50ZXIo
dm9pZCosIEFzc2VtYmxlckxhYmVsLCB2b2lkKikgeyB9CisKKyAgICBzdGF0aWMgcHRyZGlmZl90
IG1heEp1bXBSZXBsYWNlbWVudFNpemUoKQorICAgIHsKKyAgICAgICAgcmV0dXJuIDQ7CisgICAg
fQorCisgICAgc3RhdGljIGNvbnN0ZXhwciBwdHJkaWZmX3QgcGF0Y2hhYmxlSnVtcFNpemUoKQor
ICAgIHsKKyAgICAgICAgcmV0dXJuIDQ7CisgICAgfQorCisgICAgc3RhdGljIHZvaWQgcmVwYXRj
aFBvaW50ZXIodm9pZCosIHZvaWQqKSB7IH0KKworICAgIHN0YXRpYyB2b2lkIHJlbGlua0p1bXAo
dm9pZCosIHZvaWQqKSB7IH0KKyAgICBzdGF0aWMgdm9pZCByZWxpbmtKdW1wVG9Ob3Aodm9pZCop
IHsgfQorICAgIHN0YXRpYyB2b2lkIHJlbGlua0NhbGwodm9pZCosIHZvaWQqKSB7IH0KKworICAg
IHVuc2lnbmVkIGRlYnVnT2Zmc2V0KCkgeyByZXR1cm4gbV9idWZmZXIuZGVidWdPZmZzZXQoKTsg
fQorCisgICAgc3RhdGljIHZvaWQgY2FjaGVGbHVzaCh2b2lkKiwgc2l6ZV90KSB7IH0KKworICAg
IHVzaW5nIENvcHlGdW5jdGlvbiA9IHZvaWQqKCYpKHZvaWQqLCBjb25zdCB2b2lkKiwgc2l6ZV90
KTsKKyAgICB0ZW1wbGF0ZSA8Q29weUZ1bmN0aW9uIGNvcHk+CisgICAgc3RhdGljIHZvaWQgZmls
bE5vcHModm9pZCosIHNpemVfdCkgeyB9CisKKyAgICBBc3NlbWJsZXJCdWZmZXIgbV9idWZmZXI7
Cit9OworCit9IC8vIG5hbWVzcGFjZSBKU0MKKworI2VuZGlmIC8vIEVOQUJMRShBU1NFTUJMRVIp
ICYmIENQVShSSVNDVjY0KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2Vt
Ymxlci9SSVNDVjY0UmVnaXN0ZXJzLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVy
L1JJU0NWNjRSZWdpc3RlcnMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAuLjUwMDY0ZTgxZTU3OAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9hc3NlbWJsZXIvUklTQ1Y2NFJlZ2lzdGVycy5oCkBAIC0wLDAgKzEsOTYgQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMjEgSWdhbGlhIFMuTC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
VEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVO
VCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1Ig
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAq
IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNkZWZpbmUgUmVnaXN0ZXJOYW1lcyBS
SVNDVjY0UmVnaXN0ZXJzCisKKyNkZWZpbmUgRk9SX0VBQ0hfR1BfUkVHSVNURVIobWFjcm8pIFwK
KyAgICBtYWNybyh6ZXJvLCAiemVybyIsIDEsIDApICAgICAgIFwKKyAgICBtYWNybyhyYSwgInJh
IiwgMSwgMCkgICAgICAgICAgIFwKKyAgICBtYWNybyhzcCwgInNwIiwgMSwgMSkgICAgICAgICAg
IFwKKyAgICBtYWNybyhncCwgImdwIiwgMSwgMCkgICAgICAgICAgIFwKKyAgICBtYWNybyh0cCwg
InRwIiwgMSwgMCkgICAgICAgICAgIFwKKyAgICBtYWNybyh4NSwgIng1IiwgMCwgMCkgICAgICAg
ICAgIFwKKyAgICBtYWNybyh4NiwgIng2IiwgMCwgMCkgICAgICAgICAgIFwKKyAgICBtYWNybyh4
NywgIng3IiwgMCwgMCkgICAgICAgICAgIFwKKyAgICBtYWNybyhmcCwgImZwIiwgMSwgMSkgICAg
ICAgICAgIFwKKyAgICBtYWNybyh4OSwgIng5IiwgMCwgMSkgICAgICAgICAgIFwKKyAgICBtYWNy
byh4MTAsICJ4MTAiLCAwLCAwKSAgICAgICAgIFwKKyAgICBtYWNybyh4MTEsICJ4MTEiLCAwLCAw
KSAgICAgICAgIFwKKyAgICBtYWNybyh4MTIsICJ4MTIiLCAwLCAwKSAgICAgICAgIFwKKyAgICBt
YWNybyh4MTMsICJ4MTMiLCAwLCAwKSAgICAgICAgIFwKKyAgICBtYWNybyh4MTQsICJ4MTQiLCAw
LCAwKSAgICAgICAgIFwKKyAgICBtYWNybyh4MTUsICJ4MTUiLCAwLCAwKSAgICAgICAgIFwKKyAg
ICBtYWNybyh4MTYsICJ4MTYiLCAwLCAwKSAgICAgICAgIFwKKyAgICBtYWNybyh4MTcsICJ4MTci
LCAwLCAwKSAgICAgICAgIFwKKyAgICBtYWNybyh4MTgsICJ4MTgiLCAwLCAxKSAgICAgICAgIFwK
KyAgICBtYWNybyh4MTksICJ4MTkiLCAwLCAxKSAgICAgICAgIFwKKyAgICBtYWNybyh4MjAsICJ4
MjAiLCAwLCAxKSAgICAgICAgIFwKKyAgICBtYWNybyh4MjEsICJ4MjEiLCAwLCAxKSAgICAgICAg
IFwKKyAgICBtYWNybyh4MjIsICJ4MjIiLCAwLCAxKSAgICAgICAgIFwKKyAgICBtYWNybyh4MjMs
ICJ4MjMiLCAwLCAxKSAgICAgICAgIFwKKyAgICBtYWNybyh4MjQsICJ4MjQiLCAwLCAxKSAgICAg
ICAgIFwKKyAgICBtYWNybyh4MjUsICJ4MjUiLCAwLCAxKSAgICAgICAgIFwKKyAgICBtYWNybyh4
MjYsICJ4MjYiLCAwLCAxKSAgICAgICAgIFwKKyAgICBtYWNybyh4MjcsICJ4MjciLCAwLCAxKSAg
ICAgICAgIFwKKyAgICBtYWNybyh4MjgsICJ4MjgiLCAwLCAwKSAgICAgICAgIFwKKyAgICBtYWNy
byh4MjksICJ4MjkiLCAwLCAwKSAgICAgICAgIFwKKyAgICBtYWNybyh4MzAsICJ4MzAiLCAwLCAw
KSAgICAgICAgIFwKKyAgICBtYWNybyh4MzEsICJ4MzEiLCAwLCAwKQorCisjZGVmaW5lIEZPUl9F
QUNIX0ZQX1JFR0lTVEVSKG1hY3JvKSBcCisgICAgbWFjcm8oZjAsICJmMCIsIDAsIDApICAgICAg
ICAgICBcCisgICAgbWFjcm8oZjEsICJmMSIsIDAsIDApICAgICAgICAgICBcCisgICAgbWFjcm8o
ZjIsICJmMiIsIDAsIDApICAgICAgICAgICBcCisgICAgbWFjcm8oZjMsICJmMyIsIDAsIDApICAg
ICAgICAgICBcCisgICAgbWFjcm8oZjQsICJmNCIsIDAsIDApICAgICAgICAgICBcCisgICAgbWFj
cm8oZjUsICJmNSIsIDAsIDApICAgICAgICAgICBcCisgICAgbWFjcm8oZjYsICJmNiIsIDAsIDAp
ICAgICAgICAgICBcCisgICAgbWFjcm8oZjcsICJmNyIsIDAsIDApICAgICAgICAgICBcCisgICAg
bWFjcm8oZjgsICJmOCIsIDAsIDEpICAgICAgICAgICBcCisgICAgbWFjcm8oZjksICJmOSIsIDAs
IDEpICAgICAgICAgICBcCisgICAgbWFjcm8oZjEwLCAiZjEwIiwgMCwgMCkgICAgICAgICBcCisg
ICAgbWFjcm8oZjExLCAiZjExIiwgMCwgMCkgICAgICAgICBcCisgICAgbWFjcm8oZjEyLCAiZjEy
IiwgMCwgMCkgICAgICAgICBcCisgICAgbWFjcm8oZjEzLCAiZjEzIiwgMCwgMCkgICAgICAgICBc
CisgICAgbWFjcm8oZjE0LCAiZjE0IiwgMCwgMCkgICAgICAgICBcCisgICAgbWFjcm8oZjE1LCAi
ZjE1IiwgMCwgMCkgICAgICAgICBcCisgICAgbWFjcm8oZjE2LCAiZjE2IiwgMCwgMCkgICAgICAg
ICBcCisgICAgbWFjcm8oZjE3LCAiZjE3IiwgMCwgMCkgICAgICAgICBcCisgICAgbWFjcm8oZjE4
LCAiZjE4IiwgMCwgMSkgICAgICAgICBcCisgICAgbWFjcm8oZjE5LCAiZjE5IiwgMCwgMSkgICAg
ICAgICBcCisgICAgbWFjcm8oZjIwLCAiZjIwIiwgMCwgMSkgICAgICAgICBcCisgICAgbWFjcm8o
ZjIxLCAiZjIxIiwgMCwgMSkgICAgICAgICBcCisgICAgbWFjcm8oZjIyLCAiZjIyIiwgMCwgMSkg
ICAgICAgICBcCisgICAgbWFjcm8oZjIzLCAiZjIzIiwgMCwgMSkgICAgICAgICBcCisgICAgbWFj
cm8oZjI0LCAiZjI0IiwgMCwgMSkgICAgICAgICBcCisgICAgbWFjcm8oZjI1LCAiZjI1IiwgMCwg
MSkgICAgICAgICBcCisgICAgbWFjcm8oZjI2LCAiZjI2IiwgMCwgMSkgICAgICAgICBcCisgICAg
bWFjcm8oZjI3LCAiZjI3IiwgMCwgMSkgICAgICAgICBcCisgICAgbWFjcm8oZjI4LCAiZjI4Iiwg
MCwgMCkgICAgICAgICBcCisgICAgbWFjcm8oZjI5LCAiZjI5IiwgMCwgMCkgICAgICAgICBcCisg
ICAgbWFjcm8oZjMwLCAiZjMwIiwgMCwgMCkgICAgICAgICBcCisgICAgbWFjcm8oZjMxLCAiZjMx
IiwgMCwgMCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9Jbmxp
bmVBY2Nlc3MuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9JbmxpbmVBY2Nlc3Mu
aAppbmRleCA4M2ZjOGFkYWI5OGQuLjIzYTQxMDhlN2Y1ZiAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2J5dGVjb2RlL0lubGluZUFjY2Vzcy5oCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ieXRlY29kZS9JbmxpbmVBY2Nlc3MuaApAQCAtNTQsNiArNTQsOCBAQCBwdWJsaWM6
CiAgICAgICAgIHJldHVybiA0ODsKICNlbGlmIENQVShNSVBTKQogICAgICAgICByZXR1cm4gNzI7
CisjZWxpZiBDUFUoUklTQ1Y2NCkKKyAgICAgICAgcmV0dXJuIDQwOwogI2Vsc2UKICNlcnJvciAi
dW5zdXBwb3J0ZWQgcGxhdGZvcm0iCiAjZW5kaWYKQEAgLTcyLDYgKzc0LDggQEAgcHVibGljOgog
ICAgICAgICByZXR1cm4gNDg7CiAjZWxpZiBDUFUoTUlQUykKICAgICAgICAgcmV0dXJuIDcyOwor
I2VsaWYgQ1BVKFJJU0NWNjQpCisgICAgICAgIHJldHVybiA0MDsKICNlbHNlCiAjZXJyb3IgInVu
c3VwcG9ydGVkIHBsYXRmb3JtIgogI2VuZGlmCkBAIC05Myw2ICs5Nyw4IEBAIHB1YmxpYzoKICAg
ICAgICAgc2l6ZV90IHNpemUgPSAzMDsKICNlbGlmIENQVShNSVBTKQogICAgICAgICBzaXplX3Qg
c2l6ZSA9IDU2OworI2VsaWYgQ1BVKFJJU0NWNjQpCisgICAgICAgIHNpemVfdCBzaXplID0gNDQ7
CiAjZWxzZQogI2Vycm9yICJ1bnN1cHBvcnRlZCBwbGF0Zm9ybSIKICNlbmRpZgpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9GUFJJbmZvLmggYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvaml0L0ZQUkluZm8uaAppbmRleCBmNzk5OTAwMTc2NzAuLmFlMDc3NGI1YTQ5ZCAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9GUFJJbmZvLmgKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2ppdC9GUFJJbmZvLmgKQEAgLTMyOSw2ICszMjksMTA0IEBAIHB1Ymxp
YzoKIAogI2VuZGlmIC8vIENQVShNSVBTKQogCisjaWYgQ1BVKFJJU0NWNjQpCisKK2NsYXNzIEZQ
UkluZm8geworcHVibGljOgorICAgIHR5cGVkZWYgRlBSUmVnIFJlZ2lzdGVyVHlwZTsKKyAgICBz
dGF0aWMgY29uc3RleHByIHVuc2lnbmVkIG51bWJlck9mUmVnaXN0ZXJzID0gMjA7CisgICAgc3Rh
dGljIGNvbnN0ZXhwciB1bnNpZ25lZCBudW1iZXJPZkFyZ3VtZW50UmVnaXN0ZXJzID0gODsKKwor
ICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGZwUmVnVDAgPSBSSVNDVjY0UmVnaXN0ZXJzOjpm
MDsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ1QxID0gUklTQ1Y2NFJlZ2lzdGVy
czo6ZjE7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdUMiA9IFJJU0NWNjRSZWdp
c3RlcnM6OmYyOworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGZwUmVnVDMgPSBSSVNDVjY0
UmVnaXN0ZXJzOjpmMzsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ1Q0ID0gUklT
Q1Y2NFJlZ2lzdGVyczo6ZjQ7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdUNSA9
IFJJU0NWNjRSZWdpc3RlcnM6OmY1OworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGZwUmVn
VDYgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmNjsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBm
cFJlZ1Q3ID0gUklTQ1Y2NFJlZ2lzdGVyczo6Zjc7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJS
ZWcgZnBSZWdUOCA9IFJJU0NWNjRSZWdpc3RlcnM6OmYxMDsKKyAgICBzdGF0aWMgY29uc3RleHBy
IEZQUlJlZyBmcFJlZ1Q5ID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjExOworICAgIHN0YXRpYyBjb25z
dGV4cHIgRlBSUmVnIGZwUmVnVDEwID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjEyOworICAgIHN0YXRp
YyBjb25zdGV4cHIgRlBSUmVnIGZwUmVnVDExID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjEzOworICAg
IHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGZwUmVnVDEyID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjE0
OworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGZwUmVnVDEzID0gUklTQ1Y2NFJlZ2lzdGVy
czo6ZjE1OworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGZwUmVnVDE0ID0gUklTQ1Y2NFJl
Z2lzdGVyczo6ZjE2OworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGZwUmVnVDE1ID0gUklT
Q1Y2NFJlZ2lzdGVyczo6ZjE3OworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGZwUmVnVDE2
ID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjI4OworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGZw
UmVnVDE3ID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjI5OworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBS
UmVnIGZwUmVnVDE4ID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjMwOworICAgIHN0YXRpYyBjb25zdGV4
cHIgRlBSUmVnIGZwUmVnVDE5ID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjMxOworCisgICAgc3RhdGlj
IGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdDUzAgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmODsKKyAgICBz
dGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ0NTMSA9IFJJU0NWNjRSZWdpc3RlcnM6OmY5Owor
ICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGZwUmVnQ1MyID0gUklTQ1Y2NFJlZ2lzdGVyczo6
ZjE4OworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGZwUmVnQ1MzID0gUklTQ1Y2NFJlZ2lz
dGVyczo6ZjE5OworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGZwUmVnQ1M0ID0gUklTQ1Y2
NFJlZ2lzdGVyczo6ZjIwOworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGZwUmVnQ1M1ID0g
UklTQ1Y2NFJlZ2lzdGVyczo6ZjIxOworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGZwUmVn
Q1M2ID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjIyOworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVn
IGZwUmVnQ1M3ID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjIzOworICAgIHN0YXRpYyBjb25zdGV4cHIg
RlBSUmVnIGZwUmVnQ1M4ID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjI0OworICAgIHN0YXRpYyBjb25z
dGV4cHIgRlBSUmVnIGZwUmVnQ1M5ID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjI1OworICAgIHN0YXRp
YyBjb25zdGV4cHIgRlBSUmVnIGZwUmVnQ1MxMCA9IFJJU0NWNjRSZWdpc3RlcnM6OmYyNjsKKyAg
ICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ0NTMTEgPSBSSVNDVjY0UmVnaXN0ZXJzOjpm
Mjc7CisKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBhcmd1bWVudEZQUjAgPSBSSVNDVjY0
UmVnaXN0ZXJzOjpmMTA7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgYXJndW1lbnRGUFIx
ID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjExOworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGFy
Z3VtZW50RlBSMiA9IFJJU0NWNjRSZWdpc3RlcnM6OmYxMjsKKyAgICBzdGF0aWMgY29uc3RleHBy
IEZQUlJlZyBhcmd1bWVudEZQUjMgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMTM7CisgICAgc3RhdGlj
IGNvbnN0ZXhwciBGUFJSZWcgYXJndW1lbnRGUFI0ID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjE0Owor
ICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGFyZ3VtZW50RlBSNSA9IFJJU0NWNjRSZWdpc3Rl
cnM6OmYxNTsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBhcmd1bWVudEZQUjYgPSBSSVND
VjY0UmVnaXN0ZXJzOjpmMTY7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgYXJndW1lbnRG
UFI3ID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjE3OworCisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJS
ZWcgcmV0dXJuVmFsdWVGUFIgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMTA7CisKKyAgICBzdGF0aWMg
RlBSUmVnIHRvUmVnaXN0ZXIodW5zaWduZWQgaW5kZXgpCisgICAgeworICAgICAgICBBU1NFUlQo
aW5kZXggPCBudW1iZXJPZlJlZ2lzdGVycyk7CisgICAgICAgIHN0YXRpYyBjb25zdCBGUFJSZWcg
cmVnaXN0ZXJGb3JJbmRleFtudW1iZXJPZlJlZ2lzdGVyc10gPSB7CisgICAgICAgICAgICAgICAg
ZnBSZWdUMCwgZnBSZWdUMSwgZnBSZWdUMiwgZnBSZWdUMywgZnBSZWdUNCwgZnBSZWdUNSwgZnBS
ZWdUNiwgZnBSZWdUNywKKyAgICAgICAgICAgICAgICBmcFJlZ1Q4LCBmcFJlZ1Q5LCBmcFJlZ1Qx
MCwgZnBSZWdUMTEsIGZwUmVnVDEyLCBmcFJlZ1QxMywgZnBSZWdUMTQsIGZwUmVnVDE1LAorICAg
ICAgICAgICAgICAgIGZwUmVnVDE2LCBmcFJlZ1QxNywgZnBSZWdUMTgsIGZwUmVnVDE5LAorICAg
ICAgICAgICAgfTsKKyAgICAgICAgcmV0dXJuIHJlZ2lzdGVyRm9ySW5kZXhbaW5kZXhdOworICAg
IH0KKworICAgIHN0YXRpYyBGUFJSZWcgdG9Bcmd1bWVudFJlZ2lzdGVyKHVuc2lnbmVkIGluZGV4
KQorICAgIHsKKyAgICAgICAgQVNTRVJUKGluZGV4IDwgbnVtYmVyT2ZBcmd1bWVudFJlZ2lzdGVy
cyk7CisgICAgICAgIHN0YXRpYyBjb25zdCBGUFJSZWcgcmVnaXN0ZXJGb3JJbmRleFtudW1iZXJP
ZkFyZ3VtZW50UmVnaXN0ZXJzXSA9IHsKKyAgICAgICAgICAgICAgICBhcmd1bWVudEZQUjAsIGFy
Z3VtZW50RlBSMSwgYXJndW1lbnRGUFIyLCBhcmd1bWVudEZQUjMsCisgICAgICAgICAgICAgICAg
YXJndW1lbnRGUFI0LCBhcmd1bWVudEZQUjUsIGFyZ3VtZW50RlBSNiwgYXJndW1lbnRGUFI3LAor
ICAgICAgICAgICAgfTsKKyAgICAgICAgcmV0dXJuIHJlZ2lzdGVyRm9ySW5kZXhbaW5kZXhdOwor
ICAgIH0KKworICAgIHN0YXRpYyB1bnNpZ25lZCB0b0luZGV4KEZQUlJlZyByZWcpCisgICAgewor
ICAgICAgICBBU1NFUlQocmVnICE9IEludmFsaWRGUFJSZWcpOworICAgICAgICBBU1NFUlQoc3Rh
dGljX2Nhc3Q8aW50PihyZWcpIDwgMzIpOworICAgICAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQg
aW5kZXhGb3JSZWdpc3RlclszMl0gPSB7CisgICAgICAgICAgICAgICAgMCwgMSwgMiwgMywgNCwg
NSwgNiwgNywKKyAgICAgICAgICAgICAgICBJbnZhbGlkSW5kZXgsIEludmFsaWRJbmRleCwgOCwg
OSwgMTAsIDExLCAxMiwgMTMsCisgICAgICAgICAgICAgICAgMTQsIDE1LCBJbnZhbGlkSW5kZXgs
IEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LCBJbnZhbGlkSW5kZXgsIEludmFsaWRJbmRleCwg
SW52YWxpZEluZGV4LAorICAgICAgICAgICAgICAgIEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4
LCBJbnZhbGlkSW5kZXgsIEludmFsaWRJbmRleCwgMTYsIDE3LCAxOCwgMTksCisgICAgICAgICAg
ICB9OworICAgICAgICByZXR1cm4gaW5kZXhGb3JSZWdpc3RlcltyZWddOworICAgIH0KKworICAg
IHN0YXRpYyBjb25zdCBjaGFyKiBkZWJ1Z05hbWUoRlBSUmVnIHJlZykKKyAgICB7CisgICAgICAg
IEFTU0VSVChyZWcgIT0gSW52YWxpZEZQUlJlZyk7CisgICAgICAgIHJldHVybiBNYWNyb0Fzc2Vt
Ymxlcjo6ZnByTmFtZShyZWcpOworICAgIH0KKworICAgIHN0YXRpYyBjb25zdGV4cHIgdW5zaWdu
ZWQgSW52YWxpZEluZGV4ID0gMHhmZmZmZmZmZjsKK307CisKKyNlbmRpZiAvLyBDUFUoUklTQ1Y2
NCkKKwogLy8gV2UgdXNlIHRoaXMgaGFjayB0byBnZXQgdGhlIEZQUkluZm8gZnJvbSB0aGUgRlBS
UmVnIHR5cGUgaW4gdGVtcGxhdGVzIGJlY2F1c2Ugb3VyIGNvZGUgaXMgYmFkIGFuZCB3ZSBzaG91
bGQgZmVlbCBiYWQuLgogY29uc3RleHByIEZQUkluZm8gdG9JbmZvRnJvbVJlZyhGUFJSZWcpIHsg
cmV0dXJuIEZQUkluZm8oKTsgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aml0L0dQUkluZm8uaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvR1BSSW5mby5oCmluZGV4
IDA2N2FiZmYxZDZhZC4uMWEwOWRlYzU0ZmU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvaml0L0dQUkluZm8uaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0dQUklu
Zm8uaApAQCAtNzk4LDYgKzc5OCwxMTYgQEAgcHVibGljOgogCiAjZW5kaWYgLy8gQ1BVKE1JUFMp
CiAKKyNpZiBDUFUoUklTQ1Y2NCkKKworI2RlZmluZSBOVU1CRVJfT0ZfQVJHVU1FTlRfUkVHSVNU
RVJTIDh1CisjZGVmaW5lIE5VTUJFUl9PRl9DQUxMRUVfU0FWRVNfUkVHSVNURVJTIDIzdQorCitj
bGFzcyBHUFJJbmZvIHsKK3B1YmxpYzoKKyAgICB0eXBlZGVmIEdQUlJlZyBSZWdpc3RlclR5cGU7
CisgICAgc3RhdGljIGNvbnN0ZXhwciB1bnNpZ25lZCBudW1iZXJPZlJlZ2lzdGVycyA9IDE1Owor
ICAgIHN0YXRpYyBjb25zdGV4cHIgdW5zaWduZWQgbnVtYmVyT2ZBcmd1bWVudFJlZ2lzdGVycyA9
IDg7CisKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBjYWxsRnJhbWVSZWdpc3RlciA9IFJJ
U0NWNjRSZWdpc3RlcnM6Ong4OworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIG51bWJlclRh
Z1JlZ2lzdGVyID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDI1OworICAgIHN0YXRpYyBjb25zdGV4cHIg
R1BSUmVnIG5vdENlbGxNYXNrUmVnaXN0ZXIgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MjY7CisKKyAg
ICAvLyBUZW1wb3JhcnkgcmVnaXN0ZXJzCisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgcmVn
VDAgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MTA7CisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcg
cmVnVDEgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MTE7CisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJS
ZWcgcmVnVDIgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MTI7CisgICAgc3RhdGljIGNvbnN0ZXhwciBH
UFJSZWcgcmVnVDMgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MTM7CisgICAgc3RhdGljIGNvbnN0ZXhw
ciBHUFJSZWcgcmVnVDQgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MTQ7CisgICAgc3RhdGljIGNvbnN0
ZXhwciBHUFJSZWcgcmVnVDUgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MTU7CisgICAgc3RhdGljIGNv
bnN0ZXhwciBHUFJSZWcgcmVnVDYgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MTY7CisgICAgc3RhdGlj
IGNvbnN0ZXhwciBHUFJSZWcgcmVnVDcgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MTc7CisgICAgc3Rh
dGljIGNvbnN0ZXhwciBHUFJSZWcgcmVnVDggPSBSSVNDVjY0UmVnaXN0ZXJzOjp4NTsKKyAgICBz
dGF0aWMgY29uc3RleHByIEdQUlJlZyByZWdUOSA9IFJJU0NWNjRSZWdpc3RlcnM6Ong2OworICAg
IHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ1QxMCA9IFJJU0NWNjRSZWdpc3RlcnM6Ong3Owor
ICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ1QxMSA9IFJJU0NWNjRSZWdpc3RlcnM6Ongy
ODsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyByZWdUMTIgPSBSSVNDVjY0UmVnaXN0ZXJz
Ojp4Mjk7CisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgcmVnVDEzID0gUklTQ1Y2NFJlZ2lz
dGVyczo6eDMwOworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ1QxNCA9IFJJU0NWNjRS
ZWdpc3RlcnM6OngzMTsKKworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ0NTMCA9IFJJ
U0NWNjRSZWdpc3RlcnM6Ong5OworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ0NTMSA9
IFJJU0NWNjRSZWdpc3RlcnM6OngxODsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyByZWdD
UzIgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MTk7CisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcg
cmVnQ1MzID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDIwOworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BS
UmVnIHJlZ0NTNCA9IFJJU0NWNjRSZWdpc3RlcnM6OngyMTsKKyAgICBzdGF0aWMgY29uc3RleHBy
IEdQUlJlZyByZWdDUzUgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MjI7CisgICAgc3RhdGljIGNvbnN0
ZXhwciBHUFJSZWcgcmVnQ1M2ID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDIzOworICAgIHN0YXRpYyBj
b25zdGV4cHIgR1BSUmVnIHJlZ0NTNyA9IFJJU0NWNjRSZWdpc3RlcnM6OngyNDsKKyAgICBzdGF0
aWMgY29uc3RleHByIEdQUlJlZyByZWdDUzggPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MjU7CisgICAg
c3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgcmVnQ1M5ID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDI2Owor
ICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ0NTMTAgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4
Mjc7CisKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBhcmd1bWVudEdQUjAgPSBSSVNDVjY0
UmVnaXN0ZXJzOjp4MTA7CisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgYXJndW1lbnRHUFIx
ID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDExOworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIGFy
Z3VtZW50R1BSMiA9IFJJU0NWNjRSZWdpc3RlcnM6OngxMjsKKyAgICBzdGF0aWMgY29uc3RleHBy
IEdQUlJlZyBhcmd1bWVudEdQUjMgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MTM7CisgICAgc3RhdGlj
IGNvbnN0ZXhwciBHUFJSZWcgYXJndW1lbnRHUFI0ID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDE0Owor
ICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIGFyZ3VtZW50R1BSNSA9IFJJU0NWNjRSZWdpc3Rl
cnM6OngxNTsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBhcmd1bWVudEdQUjYgPSBSSVND
VjY0UmVnaXN0ZXJzOjp4MTY7CisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgYXJndW1lbnRH
UFI3ID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDE3OworCisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJS
ZWcgbm9uQXJnR1BSMCA9IFJJU0NWNjRSZWdpc3RlcnM6Ong1OworICAgIHN0YXRpYyBjb25zdGV4
cHIgR1BSUmVnIG5vbkFyZ0dQUjEgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4NjsKKworICAgIHN0YXRp
YyBjb25zdGV4cHIgR1BSUmVnIHJldHVyblZhbHVlR1BSID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDEw
OworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJldHVyblZhbHVlR1BSMiA9IFJJU0NWNjRS
ZWdpc3RlcnM6OngxMTsKKworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIG5vblByZXNlcnZl
ZE5vblJldHVybkdQUiA9IFJJU0NWNjRSZWdpc3RlcnM6OngxMjsKKyAgICBzdGF0aWMgY29uc3Rl
eHByIEdQUlJlZyBub25QcmVzZXJ2ZWROb25Bcmd1bWVudEdQUjAgPSBSSVNDVjY0UmVnaXN0ZXJz
Ojp4NTsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBub25QcmVzZXJ2ZWROb25Bcmd1bWVu
dEdQUjEgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4NjsKKworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BS
UmVnIHdhc21TY3JhdGNoR1BSMCA9IFJJU0NWNjRSZWdpc3RlcnM6Ong2OworICAgIHN0YXRpYyBj
b25zdGV4cHIgR1BSUmVnIHdhc21TY3JhdGNoR1BSMSA9IFJJU0NWNjRSZWdpc3RlcnM6Ong3Owor
CisgICAgc3RhdGljIEdQUlJlZyB0b1JlZ2lzdGVyKHVuc2lnbmVkIGluZGV4KQorICAgIHsKKyAg
ICAgICAgQVNTRVJUKGluZGV4IDwgbnVtYmVyT2ZSZWdpc3RlcnMpOworICAgICAgICBzdGF0aWMg
Y29uc3QgR1BSUmVnIHJlZ2lzdGVyRm9ySW5kZXhbbnVtYmVyT2ZSZWdpc3RlcnNdID0geworICAg
ICAgICAgICAgICAgIHJlZ1QwLCByZWdUMSwgcmVnVDIsIHJlZ1QzLCByZWdUNCwgcmVnVDUsIHJl
Z1Q2LCByZWdUNywKKyAgICAgICAgICAgICAgICByZWdUOCwgcmVnVDksIHJlZ1QxMCwgcmVnVDEx
LCByZWdUMTIsIHJlZ1QxMywgcmVnVDE0LAorICAgICAgICAgICAgfTsKKyAgICAgICAgcmV0dXJu
IHJlZ2lzdGVyRm9ySW5kZXhbaW5kZXhdOworICAgIH0KKworICAgIHN0YXRpYyBHUFJSZWcgdG9B
cmd1bWVudFJlZ2lzdGVyKHVuc2lnbmVkIGluZGV4KQorICAgIHsKKyAgICAgICAgQVNTRVJUKGlu
ZGV4IDwgbnVtYmVyT2ZBcmd1bWVudFJlZ2lzdGVycyk7CisgICAgICAgIHN0YXRpYyBjb25zdCBH
UFJSZWcgcmVnaXN0ZXJGb3JJbmRleFtudW1iZXJPZkFyZ3VtZW50UmVnaXN0ZXJzXSA9IHsKKyAg
ICAgICAgICAgICAgICBhcmd1bWVudEdQUjAsIGFyZ3VtZW50R1BSMSwgYXJndW1lbnRHUFIyLCBh
cmd1bWVudEdQUjMsCisgICAgICAgICAgICAgICAgYXJndW1lbnRHUFI0LCBhcmd1bWVudEdQUjUs
IGFyZ3VtZW50R1BSNiwgYXJndW1lbnRHUFI3LAorICAgICAgICAgICAgfTsKKyAgICAgICAgcmV0
dXJuIHJlZ2lzdGVyRm9ySW5kZXhbaW5kZXhdOworICAgIH0KKworICAgIHN0YXRpYyB1bnNpZ25l
ZCB0b0luZGV4KEdQUlJlZyByZWcpCisgICAgeworICAgICAgICBBU1NFUlQocmVnICE9IEludmFs
aWRHUFJSZWcpOworICAgICAgICBBU1NFUlQoc3RhdGljX2Nhc3Q8aW50PihyZWcpIDwgMzIpOwor
ICAgICAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgaW5kZXhGb3JSZWdpc3RlclszMl0gPSB7Cisg
ICAgICAgICAgICAgICAgSW52YWxpZEluZGV4LCBJbnZhbGlkSW5kZXgsIEludmFsaWRJbmRleCwg
SW52YWxpZEluZGV4LCBJbnZhbGlkSW5kZXgsIDgsIDksIDEwLAorICAgICAgICAgICAgICAgIElu
dmFsaWRJbmRleCwgSW52YWxpZEluZGV4LCAwLCAxLCAyLCAzLCA0LCA1LAorICAgICAgICAgICAg
ICAgIDYsIDcsIEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LCBJbnZhbGlkSW5kZXgsIEludmFs
aWRJbmRleCwgSW52YWxpZEluZGV4LCBJbnZhbGlkSW5kZXgsCisgICAgICAgICAgICAgICAgSW52
YWxpZEluZGV4LCBJbnZhbGlkSW5kZXgsIEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LCAxMSwg
MTIsIDEzLCAxNCwKKyAgICAgICAgICAgIH07CisgICAgICAgIHJldHVybiBpbmRleEZvclJlZ2lz
dGVyW3JlZ107CisgICAgfQorCisgICAgc3RhdGljIGNvbnN0IGNoYXIqIGRlYnVnTmFtZShHUFJS
ZWcgcmVnKQorICAgIHsKKyAgICAgICAgQVNTRVJUKHJlZyAhPSBJbnZhbGlkR1BSUmVnKTsKKyAg
ICAgICAgcmV0dXJuIE1hY3JvQXNzZW1ibGVyOjpncHJOYW1lKHJlZyk7CisgICAgfQorCisgICAg
c3RhdGljIGNvbnN0ZXhwciB1bnNpZ25lZCBJbnZhbGlkSW5kZXggPSAweGZmZmZmZmZmOworfTsK
KworI2VuZGlmIC8vIENQVShSSVNDVjY0KQorCiAvLyBUaGUgYmFzZWxpbmUgSklUIHVzZXMgImFj
Y3VtdWxhdG9yIiBzdHlsZSBleGVjdXRpb24gd2l0aCByZWdUMCAoZm9yIDY0LWJpdCkKIC8vIGFu
ZCByZWdUMCArIHJlZ1QxIChmb3IgMzItYml0KSBzZXJ2aW5nIGFzIHRoZSBhY2N1bXVsYXRvciBy
ZWdpc3RlcihzKSBmb3IKIC8vIHBhc3NpbmcgcmVzdWx0cyBvZiBvbmUgb3Bjb2RlIHRvIHRoZSBu
ZXh0LiBIZW5jZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvUmVnaXN0
ZXJTZXQuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9SZWdpc3RlclNldC5jcHAKaW5k
ZXggYTc2MjcyMjdiZmIzLi5jNTI5ZDc0YWZlYzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9qaXQvUmVnaXN0ZXJTZXQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9q
aXQvUmVnaXN0ZXJTZXQuY3BwCkBAIC0xNTUsNiArMTU1LDMwIEBAIFJlZ2lzdGVyU2V0IFJlZ2lz
dGVyU2V0Ojp2bUNhbGxlZVNhdmVSZWdpc3RlcnMoKQogI2VsaWYgQ1BVKEFSTV9USFVNQjIpIHx8
IENQVShNSVBTKQogICAgIHJlc3VsdC5zZXQoR1BSSW5mbzo6cmVnQ1MwKTsKICAgICByZXN1bHQu
c2V0KEdQUkluZm86OnJlZ0NTMSk7CisjZWxpZiBDUFUoUklTQ1Y2NCkKKyAgICByZXN1bHQuc2V0
KEdQUkluZm86OnJlZ0NTMCk7CisgICAgcmVzdWx0LnNldChHUFJJbmZvOjpyZWdDUzEpOworICAg
IHJlc3VsdC5zZXQoR1BSSW5mbzo6cmVnQ1MyKTsKKyAgICByZXN1bHQuc2V0KEdQUkluZm86OnJl
Z0NTMyk7CisgICAgcmVzdWx0LnNldChHUFJJbmZvOjpyZWdDUzQpOworICAgIHJlc3VsdC5zZXQo
R1BSSW5mbzo6cmVnQ1M1KTsKKyAgICByZXN1bHQuc2V0KEdQUkluZm86OnJlZ0NTNik7CisgICAg
cmVzdWx0LnNldChHUFJJbmZvOjpyZWdDUzcpOworICAgIHJlc3VsdC5zZXQoR1BSSW5mbzo6cmVn
Q1M4KTsKKyAgICByZXN1bHQuc2V0KEdQUkluZm86OnJlZ0NTOSk7CisgICAgcmVzdWx0LnNldChH
UFJJbmZvOjpyZWdDUzEwKTsKKyAgICByZXN1bHQuc2V0KEZQUkluZm86OmZwUmVnQ1MwKTsKKyAg
ICByZXN1bHQuc2V0KEZQUkluZm86OmZwUmVnQ1MxKTsKKyAgICByZXN1bHQuc2V0KEZQUkluZm86
OmZwUmVnQ1MyKTsKKyAgICByZXN1bHQuc2V0KEZQUkluZm86OmZwUmVnQ1MzKTsKKyAgICByZXN1
bHQuc2V0KEZQUkluZm86OmZwUmVnQ1M0KTsKKyAgICByZXN1bHQuc2V0KEZQUkluZm86OmZwUmVn
Q1M1KTsKKyAgICByZXN1bHQuc2V0KEZQUkluZm86OmZwUmVnQ1M2KTsKKyAgICByZXN1bHQuc2V0
KEZQUkluZm86OmZwUmVnQ1M3KTsKKyAgICByZXN1bHQuc2V0KEZQUkluZm86OmZwUmVnQ1M4KTsK
KyAgICByZXN1bHQuc2V0KEZQUkluZm86OmZwUmVnQ1M5KTsKKyAgICByZXN1bHQuc2V0KEZQUklu
Zm86OmZwUmVnQ1MxMCk7CisgICAgcmVzdWx0LnNldChGUFJJbmZvOjpmcFJlZ0NTMTEpOwogI2Vu
ZGlmCiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KQEAgLTE5Miw3ICsyMTYsNyBAQCBSZWdpc3RlclNl
dCBSZWdpc3RlclNldDo6bGxpbnRCYXNlbGluZUNhbGxlZVNhdmVSZWdpc3RlcnMoKQogI2VsaWYg
Q1BVKEFSTV9USFVNQjIpCiAgICAgcmVzdWx0LnNldChHUFJJbmZvOjpyZWdDUzApOwogICAgIHJl
c3VsdC5zZXQoR1BSSW5mbzo6cmVnQ1MxKTsKLSNlbGlmIENQVShBUk02NCkKKyNlbGlmIENQVShB
Uk02NCkgfHwgQ1BVKFJJU0NWNjQpCiAgICAgcmVzdWx0LnNldChHUFJJbmZvOjpyZWdDUzYpOwog
ICAgIHJlc3VsdC5zZXQoR1BSSW5mbzo6cmVnQ1M3KTsKICAgICBzdGF0aWNfYXNzZXJ0KEdQUklu
Zm86OnJlZ0NTOCA9PSBHUFJJbmZvOjpudW1iZXJUYWdSZWdpc3RlciwgIiIpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xMSW50RGF0YS5oIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2xsaW50L0xMSW50RGF0YS5oCmluZGV4IDNmOGU4OGRiNmJiYS4uNDcxZmI1ZDJm
ZDNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTExJbnREYXRhLmgK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xMSW50RGF0YS5oCkBAIC0zODEsNyAr
MzgxLDcgQEAgc3RydWN0IFJlZ2lzdGVycyB7CiAjZWxpZiBDUFUoWDg2XzY0KSAmJiBPUyhXSU5E
T1dTKQogICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIG1ldGFkYXRhVGFibGVHUFIgPSBHUFJJ
bmZvOjpyZWdDUzM7CiAgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgcGJHUFIgPSBHUFJJbmZv
OjpyZWdDUzQ7Ci0jZWxpZiBDUFUoQVJNNjQpCisjZWxpZiBDUFUoQVJNNjQpIHx8IENQVShSSVND
VjY0KQogICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIG1ldGFkYXRhVGFibGVHUFIgPSBHUFJJ
bmZvOjpyZWdDUzY7CiAgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgcGJHUFIgPSBHUFJJbmZv
OjpyZWdDUzc7CiAjZWxpZiBDUFUoTUlQUykgfHwgQ1BVKEFSTV9USFVNQjIpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTExJbnRPZmZsaW5lQXNtQ29uZmlnLmggYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTExJbnRPZmZsaW5lQXNtQ29uZmlnLmgKaW5kZXgg
MzNiZTQwNTg3YTI1Li44YjllNTdkMzNmNzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9sbGludC9MTEludE9mZmxpbmVBc21Db25maWcuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvbGxpbnQvTExJbnRPZmZsaW5lQXNtQ29uZmlnLmgKQEAgLTQ3LDYgKzQ3LDcgQEAKICNk
ZWZpbmUgT0ZGTElORV9BU01fQVJNdjdrIDAKICNkZWZpbmUgT0ZGTElORV9BU01fQVJNdjdzIDAK
ICNkZWZpbmUgT0ZGTElORV9BU01fTUlQUyAwCisjZGVmaW5lIE9GRkxJTkVfQVNNX1JJU0NWNjQg
MAogCiAjZWxzZSAvLyBFTkFCTEUoQ19MT09QKQogCkBAIC0xMTUsNiArMTE2LDEyIEBACiAjZGVm
aW5lIE9GRkxJTkVfQVNNX0FSTTY0RSAwCiAjZW5kaWYKIAorI2lmIENQVShSSVNDVjY0KQorI2Rl
ZmluZSBPRkZMSU5FX0FTTV9SSVNDVjY0IDEKKyNlbHNlCisjZGVmaW5lIE9GRkxJTkVfQVNNX1JJ
U0NWNjQgMAorI2VuZGlmCisKICNpZiBDUFUoTUlQUykKICNpZmRlZiBXVEZfTUlQU19QSUMKICNk
ZWZpbmUgUyh4KSAjeApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xv
d0xldmVsSW50ZXJwcmV0ZXIuYXNtIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xvd0xl
dmVsSW50ZXJwcmV0ZXIuYXNtCmluZGV4IGU3MTgzYTcyYTM2OC4uMGFlODQ2MzlmYTE5IDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTG93TGV2ZWxJbnRlcnByZXRlci5h
c20KKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xvd0xldmVsSW50ZXJwcmV0ZXIu
YXNtCkBAIC0yMTksNyArMjE5LDcgQEAgZW5kCiAKIGNvbnN0IG1heEZyYW1lRXh0ZW50Rm9yU2xv
d1BhdGhDYWxsID0gY29uc3RleHByIG1heEZyYW1lRXh0ZW50Rm9yU2xvd1BhdGhDYWxsCiAKLWlm
IFg4Nl82NCBvciBYODZfNjRfV0lOIG9yIEFSTTY0IG9yIEFSTTY0RQoraWYgWDg2XzY0IG9yIFg4
Nl82NF9XSU4gb3IgQVJNNjQgb3IgQVJNNjRFIG9yIFJJU0NWNjQKICAgICBjb25zdCBDYWxsZWVT
YXZlU3BhY2VBc1ZpcnR1YWxSZWdpc3RlcnMgPSA0CiBlbHNpZiBDX0xPT1Agb3IgQ19MT09QX1dJ
TgogICAgIGNvbnN0IENhbGxlZVNhdmVTcGFjZUFzVmlydHVhbFJlZ2lzdGVycyA9IDEKQEAgLTI3
Niw3ICsyNzYsNyBAQCBjb25zdCBWTVRyYXBzQXN5bmNFdmVudHMgPSBjb25zdGV4cHIgVk1UcmFw
czo6QXN5bmNFdmVudHMKICMgICBUaGlzIHJlcXVpcmVzIGFuIGFkZCBiZWZvcmUgdGhlIGNhbGws
IGFuZCBhIHN1YiBhZnRlci4KIGlmIEpTVkFMVUU2NAogICAgIGNvbnN0IFBDID0gdDQgIyBXaGVu
IGNoYW5naW5nIHRoaXMsIG1ha2Ugc3VyZSBMTEludFBDIGlzIHVwIHRvIGRhdGUgaW4gTExJbnRQ
Q1Jhbmdlcy5oCi0gICAgaWYgQVJNNjQgb3IgQVJNNjRFCisgICAgaWYgQVJNNjQgb3IgQVJNNjRF
IG9yIFJJU0NWNjQKICAgICAgICAgY29uc3QgbWV0YWRhdGFUYWJsZSA9IGNzcjYKICAgICAgICAg
Y29uc3QgUEIgPSBjc3I3CiAgICAgICAgIGNvbnN0IG51bWJlclRhZyA9IGNzcjgKQEAgLTczMCw3
ICs3MzAsNyBAQCBtYWNybyBjaGVja1N0YWNrUG9pbnRlckFsaWdubWVudCh0ZW1wUmVnLCBsb2Nh
dGlvbikKICAgICBlbmQKIGVuZAogCi1pZiBDX0xPT1Agb3IgQ19MT09QX1dJTiBvciBBUk02NCBv
ciBBUk02NEUgb3IgWDg2XzY0IG9yIFg4Nl82NF9XSU4KK2lmIENfTE9PUCBvciBDX0xPT1BfV0lO
IG9yIEFSTTY0IG9yIEFSTTY0RSBvciBYODZfNjQgb3IgWDg2XzY0X1dJTiBvciBSSVNDVjY0CiAg
ICAgY29uc3QgQ2FsbGVlU2F2ZVJlZ2lzdGVyQ291bnQgPSAwCiBlbHNpZiBBUk12NwogICAgIGNv
bnN0IENhbGxlZVNhdmVSZWdpc3RlckNvdW50ID0gNwpAQCAtNzQ3LDcgKzc0Nyw3IEBAIGNvbnN0
IENhbGxlZVJlZ2lzdGVyU2F2ZVNpemUgPSBDYWxsZWVTYXZlUmVnaXN0ZXJDb3VudCAqIE1hY2hp
bmVSZWdpc3RlclNpemUKIGNvbnN0IFZNRW50cnlUb3RhbEZyYW1lU2l6ZSA9IChDYWxsZWVSZWdp
c3RlclNhdmVTaXplICsgc2l6ZW9mIFZNRW50cnlSZWNvcmQgKyBTdGFja0FsaWdubWVudCAtIDEp
ICYgflN0YWNrQWxpZ25tZW50TWFzawogCiBtYWNybyBwdXNoQ2FsbGVlU2F2ZXMoKQotICAgIGlm
IENfTE9PUCBvciBDX0xPT1BfV0lOIG9yIEFSTTY0IG9yIEFSTTY0RSBvciBYODZfNjQgb3IgWDg2
XzY0X1dJTgorICAgIGlmIENfTE9PUCBvciBDX0xPT1BfV0lOIG9yIEFSTTY0IG9yIEFSTTY0RSBv
ciBYODZfNjQgb3IgWDg2XzY0X1dJTiBvciBSSVNDVjY0CiAgICAgZWxzaWYgQVJNdjcKICAgICAg
ICAgZW1pdCAicHVzaCB7cjQtcjYsIHI4LXIxMX0iCiAgICAgZWxzaWYgTUlQUwpAQCAtNzY5LDcg
Kzc2OSw3IEBAIG1hY3JvIHB1c2hDYWxsZWVTYXZlcygpCiBlbmQKIAogbWFjcm8gcG9wQ2FsbGVl
U2F2ZXMoKQotICAgIGlmIENfTE9PUCBvciBDX0xPT1BfV0lOIG9yIEFSTTY0IG9yIEFSTTY0RSBv
ciBYODZfNjQgb3IgWDg2XzY0X1dJTgorICAgIGlmIENfTE9PUCBvciBDX0xPT1BfV0lOIG9yIEFS
TTY0IG9yIEFSTTY0RSBvciBYODZfNjQgb3IgWDg2XzY0X1dJTiBvciBSSVNDVjY0CiAgICAgZWxz
aWYgQVJNdjcKICAgICAgICAgZW1pdCAicG9wIHtyNC1yNiwgcjgtcjExfSIKICAgICBlbHNpZiBN
SVBTCkBAIC03OTQsNyArNzk0LDcgQEAgbWFjcm8gcHJlc2VydmVDYWxsZXJQQ0FuZENGUigpCiAg
ICAgICAgIHB1c2ggY2ZyCiAgICAgZWxzaWYgWDg2IG9yIFg4Nl9XSU4gb3IgWDg2XzY0IG9yIFg4
Nl82NF9XSU4KICAgICAgICAgcHVzaCBjZnIKLSAgICBlbHNpZiBBUk02NCBvciBBUk02NEUKKyAg
ICBlbHNpZiBBUk02NCBvciBBUk02NEUgb3IgUklTQ1Y2NAogICAgICAgICBwdXNoIGNmciwgbHIK
ICAgICBlbHNlCiAgICAgICAgIGVycm9yCkBAIC04MDksNyArODA5LDcgQEAgbWFjcm8gcmVzdG9y
ZUNhbGxlclBDQW5kQ0ZSKCkKICAgICAgICAgcG9wIGxyCiAgICAgZWxzaWYgWDg2IG9yIFg4Nl9X
SU4gb3IgWDg2XzY0IG9yIFg4Nl82NF9XSU4KICAgICAgICAgcG9wIGNmcgotICAgIGVsc2lmIEFS
TTY0IG9yIEFSTTY0RQorICAgIGVsc2lmIEFSTTY0IG9yIEFSTTY0RSBvciBSSVNDVjY0CiAgICAg
ICAgIHBvcCBsciwgY2ZyCiAgICAgZW5kCiBlbmQKQEAgLTg0Nyw2ICs4NDcsMTEgQEAgbWFjcm8g
cHJlc2VydmVDYWxsZWVTYXZlc1VzZWRCeUxMSW50KCkKICAgICAgICAgc3RvcmVwIGNzcjUsIC0x
NltjZnJdCiAgICAgICAgIHN0b3JlcCBjc3I0LCAtMjRbY2ZyXQogICAgICAgICBzdG9yZXAgY3Ny
MywgLTMyW2Nmcl0KKyAgICBlbHNpZiBSSVNDVjY0CisgICAgICAgIHN0b3JlcCBjc3I5LCAtOFtj
ZnJdCisgICAgICAgIHN0b3JlcCBjc3I4LCAtMTZbY2ZyXQorICAgICAgICBzdG9yZXAgY3NyNywg
LTI0W2Nmcl0KKyAgICAgICAgc3RvcmVwIGNzcjYsIC0zMltjZnJdCiAgICAgZW5kCiBlbmQKIApA
QCAtODc2LDExICs4ODEsMTYgQEAgbWFjcm8gcmVzdG9yZUNhbGxlZVNhdmVzVXNlZEJ5TExJbnQo
KQogICAgICAgICBsb2FkcCAtMjRbY2ZyXSwgY3NyNAogICAgICAgICBsb2FkcCAtMTZbY2ZyXSwg
Y3NyNQogICAgICAgICBsb2FkcCAtOFtjZnJdLCBjc3I2CisgICAgZWxzaWYgUklTQ1Y2NAorICAg
ICAgICBsb2FkcCAtMzJbY2ZyXSwgY3NyNgorICAgICAgICBsb2FkcCAtMjRbY2ZyXSwgY3NyNwor
ICAgICAgICBsb2FkcCAtMTZbY2ZyXSwgY3NyOAorICAgICAgICBsb2FkcCAtOFtjZnJdLCBjc3I5
CiAgICAgZW5kCiBlbmQKIAogbWFjcm8gY29weUNhbGxlZVNhdmVzVG9FbnRyeUZyYW1lQ2FsbGVl
U2F2ZXNCdWZmZXIoZW50cnlGcmFtZSkKLSAgICBpZiBBUk02NCBvciBBUk02NEUgb3IgWDg2XzY0
IG9yIFg4Nl82NF9XSU4gb3IgQVJNdjcgb3IgTUlQUworICAgIGlmIEFSTTY0IG9yIEFSTTY0RSBv
ciBYODZfNjQgb3IgWDg2XzY0X1dJTiBvciBBUk12NyBvciBNSVBTIG9yIFJJU0NWNjQKICAgICAg
ICAgdm1FbnRyeVJlY29yZChlbnRyeUZyYW1lLCBlbnRyeUZyYW1lKQogICAgICAgICBsZWFwIFZN
RW50cnlSZWNvcmQ6OmNhbGxlZVNhdmVSZWdpc3RlcnNCdWZmZXJbZW50cnlGcmFtZV0sIGVudHJ5
RnJhbWUKICAgICAgICAgaWYgQVJNNjQgb3IgQVJNNjRFCkBAIC05MTksMTkgKzkyOSw0MyBAQCBt
YWNybyBjb3B5Q2FsbGVlU2F2ZXNUb0VudHJ5RnJhbWVDYWxsZWVTYXZlc0J1ZmZlcihlbnRyeUZy
YW1lKQogICAgICAgICBlbHNpZiBBUk12NyBvciBNSVBTCiAgICAgICAgICAgICBzdG9yZXAgY3Ny
MCwgW2VudHJ5RnJhbWVdCiAgICAgICAgICAgICBzdG9yZXAgY3NyMSwgNFtlbnRyeUZyYW1lXQor
ICAgICAgICBlbHNpZiBSSVNDVjY0CisgICAgICAgICAgICBzdG9yZXAgY3NyMCwgW2VudHJ5RnJh
bWVdCisgICAgICAgICAgICBzdG9yZXAgY3NyMSwgOFtlbnRyeUZyYW1lXQorICAgICAgICAgICAg
c3RvcmVwIGNzcjIsIDE2W2VudHJ5RnJhbWVdCisgICAgICAgICAgICBzdG9yZXAgY3NyMywgMjRb
ZW50cnlGcmFtZV0KKyAgICAgICAgICAgIHN0b3JlcCBjc3I0LCAzMltlbnRyeUZyYW1lXQorICAg
ICAgICAgICAgc3RvcmVwIGNzcjUsIDQwW2VudHJ5RnJhbWVdCisgICAgICAgICAgICBzdG9yZXAg
Y3NyNiwgNDhbZW50cnlGcmFtZV0KKyAgICAgICAgICAgIHN0b3JlcCBjc3I3LCA1NltlbnRyeUZy
YW1lXQorICAgICAgICAgICAgc3RvcmVwIGNzcjgsIDY0W2VudHJ5RnJhbWVdCisgICAgICAgICAg
ICBzdG9yZXAgY3NyOSwgNzJbZW50cnlGcmFtZV0KKyAgICAgICAgICAgIHN0b3JlcCBjc3IxMCwg
ODBbZW50cnlGcmFtZV0KKyAgICAgICAgICAgIHN0b3JlZCBjc2ZyMCwgODhbZW50cnlGcmFtZV0K
KyAgICAgICAgICAgIHN0b3JlZCBjc2ZyMSwgOTZbZW50cnlGcmFtZV0KKyAgICAgICAgICAgIHN0
b3JlZCBjc2ZyMiwgMTA0W2VudHJ5RnJhbWVdCisgICAgICAgICAgICBzdG9yZWQgY3NmcjMsIDEx
MltlbnRyeUZyYW1lXQorICAgICAgICAgICAgc3RvcmVkIGNzZnI0LCAxMjBbZW50cnlGcmFtZV0K
KyAgICAgICAgICAgIHN0b3JlZCBjc2ZyNSwgMTI4W2VudHJ5RnJhbWVdCisgICAgICAgICAgICBz
dG9yZWQgY3NmcjYsIDEzNltlbnRyeUZyYW1lXQorICAgICAgICAgICAgc3RvcmVkIGNzZnI3LCAx
NDRbZW50cnlGcmFtZV0KKyAgICAgICAgICAgIHN0b3JlZCBjc2ZyOCwgMTUyW2VudHJ5RnJhbWVd
CisgICAgICAgICAgICBzdG9yZWQgY3NmcjksIDE2MFtlbnRyeUZyYW1lXQorICAgICAgICAgICAg
c3RvcmVkIGNzZnIxMCwgMTY4W2VudHJ5RnJhbWVdCisgICAgICAgICAgICBzdG9yZWQgY3NmcjEx
LCAxNzZbZW50cnlGcmFtZV0KICAgICAgICAgZW5kCiAgICAgZW5kCiBlbmQKIAogbWFjcm8gY29w
eUNhbGxlZVNhdmVzVG9WTUVudHJ5RnJhbWVDYWxsZWVTYXZlc0J1ZmZlcih2bSwgdGVtcCkKLSAg
ICBpZiBBUk02NCBvciBBUk02NEUgb3IgWDg2XzY0IG9yIFg4Nl82NF9XSU4gb3IgQVJNdjcgb3Ig
TUlQUworICAgIGlmIEFSTTY0IG9yIEFSTTY0RSBvciBYODZfNjQgb3IgWDg2XzY0X1dJTiBvciBB
Uk12NyBvciBNSVBTIG9yIFJJU0NWNjQKICAgICAgICAgbG9hZHAgVk06OnRvcEVudHJ5RnJhbWVb
dm1dLCB0ZW1wCiAgICAgICAgIGNvcHlDYWxsZWVTYXZlc1RvRW50cnlGcmFtZUNhbGxlZVNhdmVz
QnVmZmVyKHRlbXApCiAgICAgZW5kCiBlbmQKIAogbWFjcm8gcmVzdG9yZUNhbGxlZVNhdmVzRnJv
bVZNRW50cnlGcmFtZUNhbGxlZVNhdmVzQnVmZmVyKHZtLCB0ZW1wKQotICAgIGlmIEFSTTY0IG9y
IEFSTTY0RSBvciBYODZfNjQgb3IgWDg2XzY0X1dJTiBvciBBUk12NyBvciBNSVBTCisgICAgaWYg
QVJNNjQgb3IgQVJNNjRFIG9yIFg4Nl82NCBvciBYODZfNjRfV0lOIG9yIEFSTXY3IG9yIE1JUFMg
b3IgUklTQ1Y2NAogICAgICAgICBsb2FkcCBWTTo6dG9wRW50cnlGcmFtZVt2bV0sIHRlbXAKICAg
ICAgICAgdm1FbnRyeVJlY29yZCh0ZW1wLCB0ZW1wKQogICAgICAgICBsZWFwIFZNRW50cnlSZWNv
cmQ6OmNhbGxlZVNhdmVSZWdpc3RlcnNCdWZmZXJbdGVtcF0sIHRlbXAKQEAgLTk3MSwxMiArMTAw
NSwzNiBAQCBtYWNybyByZXN0b3JlQ2FsbGVlU2F2ZXNGcm9tVk1FbnRyeUZyYW1lQ2FsbGVlU2F2
ZXNCdWZmZXIodm0sIHRlbXApCiAgICAgICAgIGVsc2lmIEFSTXY3IG9yIE1JUFMKICAgICAgICAg
ICAgIGxvYWRwIFt0ZW1wXSwgY3NyMAogICAgICAgICAgICAgbG9hZHAgNFt0ZW1wXSwgY3NyMQor
ICAgICAgICBlbHNpZiBSSVNDVjY0CisgICAgICAgICAgICBsb2FkcSBbdGVtcF0sIGNzcjAKKyAg
ICAgICAgICAgIGxvYWRxIDhbdGVtcF0sIGNzcjEKKyAgICAgICAgICAgIGxvYWRxIDE2W3RlbXBd
LCBjc3IyCisgICAgICAgICAgICBsb2FkcSAyNFt0ZW1wXSwgY3NyMworICAgICAgICAgICAgbG9h
ZHEgMzJbdGVtcF0sIGNzcjQKKyAgICAgICAgICAgIGxvYWRxIDQwW3RlbXBdLCBjc3I1CisgICAg
ICAgICAgICBsb2FkcSA0OFt0ZW1wXSwgY3NyNgorICAgICAgICAgICAgbG9hZHEgNTZbdGVtcF0s
IGNzcjcKKyAgICAgICAgICAgIGxvYWRxIDY0W3RlbXBdLCBjc3I4CisgICAgICAgICAgICBsb2Fk
cSA3Mlt0ZW1wXSwgY3NyOQorICAgICAgICAgICAgbG9hZHEgODBbdGVtcF0sIGNzcjEwCisgICAg
ICAgICAgICBsb2FkZCA4OFt0ZW1wXSwgY3NmcjAKKyAgICAgICAgICAgIGxvYWRkIDk2W3RlbXBd
LCBjc2ZyMQorICAgICAgICAgICAgbG9hZGQgMTA0W3RlbXBdLCBjc2ZyMgorICAgICAgICAgICAg
bG9hZGQgMTEyW3RlbXBdLCBjc2ZyMworICAgICAgICAgICAgbG9hZGQgMTIwW3RlbXBdLCBjc2Zy
NAorICAgICAgICAgICAgbG9hZGQgMTI4W3RlbXBdLCBjc2ZyNQorICAgICAgICAgICAgbG9hZGQg
MTM2W3RlbXBdLCBjc2ZyNgorICAgICAgICAgICAgbG9hZGQgMTQ0W3RlbXBdLCBjc2ZyNworICAg
ICAgICAgICAgbG9hZGQgMTUyW3RlbXBdLCBjc2ZyOAorICAgICAgICAgICAgbG9hZGQgMTYwW3Rl
bXBdLCBjc2ZyOQorICAgICAgICAgICAgbG9hZGQgMTY4W3RlbXBdLCBjc2ZyMTAKKyAgICAgICAg
ICAgIGxvYWRkIDE3Nlt0ZW1wXSwgY3NmcjExCiAgICAgICAgIGVuZAogICAgIGVuZAogZW5kCiAK
IG1hY3JvIHByZXNlcnZlUmV0dXJuQWRkcmVzc0FmdGVyQ2FsbChkZXN0aW5hdGlvblJlZ2lzdGVy
KQotICAgIGlmIENfTE9PUCBvciBDX0xPT1BfV0lOIG9yIEFSTXY3IG9yIEFSTTY0IG9yIEFSTTY0
RSBvciBNSVBTCisgICAgaWYgQ19MT09QIG9yIENfTE9PUF9XSU4gb3IgQVJNdjcgb3IgQVJNNjQg
b3IgQVJNNjRFIG9yIE1JUFMgb3IgUklTQ1Y2NAogICAgICAgICAjIEluIENfTE9PUCBvciBDX0xP
T1BfV0lOIGNhc2UsIHdlJ3JlIG9ubHkgcHJlc2VydmluZyB0aGUgYnl0ZWNvZGUgdlBDLgogICAg
ICAgICBtb3ZlIGxyLCBkZXN0aW5hdGlvblJlZ2lzdGVyCiAgICAgZWxzaWYgWDg2IG9yIFg4Nl9X
SU4gb3IgWDg2XzY0IG9yIFg4Nl82NF9XSU4KQEAgLTk5MCw3ICsxMDQ4LDcgQEAgbWFjcm8gZnVu
Y3Rpb25Qcm9sb2d1ZSgpCiAgICAgdGFnUmV0dXJuQWRkcmVzcyBzcAogICAgIGlmIFg4NiBvciBY
ODZfV0lOIG9yIFg4Nl82NCBvciBYODZfNjRfV0lOCiAgICAgICAgIHB1c2ggY2ZyCi0gICAgZWxz
aWYgQVJNNjQgb3IgQVJNNjRFCisgICAgZWxzaWYgQVJNNjQgb3IgQVJNNjRFIG9yIFJJU0NWNjQK
ICAgICAgICAgcHVzaCBjZnIsIGxyCiAgICAgZWxzaWYgQ19MT09QIG9yIENfTE9PUF9XSU4gb3Ig
QVJNdjcgb3IgTUlQUwogICAgICAgICBwdXNoIGxyCkBAIC0xMDAyLDcgKzEwNjAsNyBAQCBlbmQK
IG1hY3JvIGZ1bmN0aW9uRXBpbG9ndWUoKQogICAgIGlmIFg4NiBvciBYODZfV0lOIG9yIFg4Nl82
NCBvciBYODZfNjRfV0lOCiAgICAgICAgIHBvcCBjZnIKLSAgICBlbHNpZiBBUk02NCBvciBBUk02
NEUKKyAgICBlbHNpZiBBUk02NCBvciBBUk02NEUgb3IgUklTQ1Y2NAogICAgICAgICBwb3AgbHIs
IGNmcgogICAgIGVsc2lmIENfTE9PUCBvciBDX0xPT1BfV0lOIG9yIEFSTXY3IG9yIE1JUFMKICAg
ICAgICAgcG9wIGNmcgpAQCAtMTE1OCw3ICsxMjE2LDcgQEAgbWFjcm8gcHJlcGFyZUZvclRhaWxD
YWxsKGNhbGxlZSwgdGVtcDEsIHRlbXAyLCB0ZW1wMywgdGVtcDQsIGNhbGxQdHJUYWcpCiAgICAg
YWRkaSBTdGFja0FsaWdubWVudCAtIDEgKyBDYWxsRnJhbWVIZWFkZXJTaXplLCB0ZW1wMgogICAg
IGFuZGkgflN0YWNrQWxpZ25tZW50TWFzaywgdGVtcDIKIAotICAgIGlmIEFSTXY3IG9yIEFSTTY0
IG9yIEFSTTY0RSBvciBDX0xPT1Agb3IgQ19MT09QX1dJTiBvciBNSVBTCisgICAgaWYgQVJNdjcg
b3IgQVJNNjQgb3IgQVJNNjRFIG9yIENfTE9PUCBvciBDX0xPT1BfV0lOIG9yIE1JUFMgb3IgUklT
Q1Y2NAogICAgICAgICBhZGRwIENhbGxlckZyYW1lQW5kUENTaXplLCBzcAogICAgICAgICBzdWJp
IENhbGxlckZyYW1lQW5kUENTaXplLCB0ZW1wMgogICAgICAgICBsb2FkcCBDYWxsZXJGcmFtZUFu
ZFBDOjpyZXR1cm5QQ1tjZnJdLCBscgpAQCAtMTQ1NCw3ICsxNTEyLDcgQEAgbWFjcm8gcHJvbG9n
dWUoY29kZUJsb2NrR2V0dGVyLCBjb2RlQmxvY2tTZXR0ZXIsIG9zclNsb3dQYXRoLCB0cmFjZVNs
b3dQYXRoKQogICAgICAgICBidHB6IHIwLCAucmVjb3ZlcgogICAgICAgICBtb3ZlIGNmciwgc3Ag
IyByZXN0b3JlIHRoZSBwcmV2aW91cyBzcAogICAgICAgICAjIHBvcCB0aGUgY2FsbGVyRnJhbWUg
c2luY2Ugd2Ugd2lsbCBqdW1wIHRvIGEgZnVuY3Rpb24gdGhhdCB3YW50cyB0byBzYXZlIGl0Ci0g
ICAgICAgIGlmIEFSTTY0CisgICAgICAgIGlmIEFSTTY0IG9yIFJJU0NWNjQKICAgICAgICAgICAg
IHBvcCBsciwgY2ZyCiAgICAgICAgIGVsc2lmIEFSTTY0RQogICAgICAgICAgICAgIyB1bnRhZ1Jl
dHVybkFkZHJlc3Mgd2lsbCBiZSBwZXJmb3JtZWQgaW4gR2F0ZTo6ZW50cnlPU1JFbnRyeS4KQEAg
LTE4MTAsNyArMTg2OCw3IEBAIGVsc2UKICAgICAgICAgICAgIGxlYXAgKGxhYmVsIC0gXyVraW5k
JV9yZWxhdGl2ZVBDQmFzZSlbdDNdLCB0NAogICAgICAgICAgICAgbW92ZSBpbmRleCwgdDUKICAg
ICAgICAgICAgIHN0b3JlcCB0NCwgW21hcCwgdDUsIDRdCi0gICAgICAgIGVsc2lmIEFSTTY0Cisg
ICAgICAgIGVsc2lmIEFSTTY0IG9yIFJJU0NWNjQKICAgICAgICAgICAgIHBjcnRvYWRkciBsYWJl
bCwgdDMKICAgICAgICAgICAgIG1vdmUgaW5kZXgsIHQ0CiAgICAgICAgICAgICBzdG9yZXAgdDMs
IFttYXAsIHQ0LCBQdHJTaXplXQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2xs
aW50L0xvd0xldmVsSW50ZXJwcmV0ZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50
L0xvd0xldmVsSW50ZXJwcmV0ZXIuY3BwCmluZGV4IDBkMWMyOGJhOGQ0ZC4uZWQ4NzE1NTZlZTRi
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTG93TGV2ZWxJbnRlcnBy
ZXRlci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xvd0xldmVsSW50ZXJw
cmV0ZXIuY3BwCkBAIC00OTAsNyArNDkwLDkgQEAgSlNWYWx1ZSBDTG9vcDo6ZXhlY3V0ZShPcGNv
ZGVJRCBlbnRyeU9wY29kZUlELCB2b2lkKiBleGVjdXRhYmxlQWRkcmVzcywgVk0qIHZtLAogICAg
IE9GRkxJTkVfQVNNX09QQ09ERV9ERUJVR19MQUJFTChsbGludF8jI19fb3Bjb2RlKSBcCiAgICAg
T0ZGTElORV9BU01fTE9DQUxfTEFCRUwobGxpbnRfIyNfX29wY29kZSkKIAotI2RlZmluZSBPRkZM
SU5FX0FTTV9HTFVFX0xBQkVMKF9fb3Bjb2RlKSAgIE9GRkxJTkVfQVNNX0xPQ0FMX0xBQkVMKF9f
b3Bjb2RlKQorI2RlZmluZSBPRkZMSU5FX0FTTV9HTFVFX0xBQkVMKF9fb3Bjb2RlKSBcCisgICAg
T0ZGTElORV9BU01fT1BDT0RFX0RFQlVHX0xBQkVMKF9fb3Bjb2RlKSBcCisgICAgT0ZGTElORV9B
U01fTE9DQUxfTEFCRUwoX19vcGNvZGUpCiAKICNpZiBDUFUoQVJNX1RIVU1CMikKICNkZWZpbmUg
T0ZGTElORV9BU01fR0xPQkFMX0xBQkVMKGxhYmVsKSAgICAgICAgICBcCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTG93TGV2ZWxJbnRlcnByZXRlcjY0LmFzbSBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9sbGludC9Mb3dMZXZlbEludGVycHJldGVyNjQuYXNtCmluZGV4
IDhhNWY3ZDIzZTY0Ny4uZTIxZjgwY2FlNDlkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvbGxpbnQvTG93TGV2ZWxJbnRlcnByZXRlcjY0LmFzbQorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvbGxpbnQvTG93TGV2ZWxJbnRlcnByZXRlcjY0LmFzbQpAQCAtOTMsNyArOTMsNyBA
QCBlbmQKIAogbWFjcm8gY0NhbGwyKGZ1bmN0aW9uKQogICAgIGNoZWNrU3RhY2tQb2ludGVyQWxp
Z25tZW50KHQ0LCAweGJhZDBjMDAyKQotICAgIGlmIFg4Nl82NCBvciBBUk02NCBvciBBUk02NEUK
KyAgICBpZiBYODZfNjQgb3IgQVJNNjQgb3IgQVJNNjRFIG9yIFJJU0NWNjQKICAgICAgICAgY2Fs
bCBmdW5jdGlvbgogICAgIGVsc2lmIFg4Nl82NF9XSU4KICAgICAgICAgIyBOb3RlOiB0aGlzIGlt
cGxlbWVudGF0aW9uIGlzIG9ubHkgY29ycmVjdCBpZiB0aGUgcmV0dXJuIHR5cGUgc2l6ZSBpcyA+
IDggYnl0ZXMuCkBAIC0xNDAsNyArMTQwLDcgQEAgZW5kCiAjIFRoaXMgYmFyZWx5IHdvcmtzLiBh
cmczIGFuZCBhcmc0IHNob3VsZCBwcm9iYWJseSBiZSBpbW1lZGlhdGVzLgogbWFjcm8gY0NhbGw0
KGZ1bmN0aW9uKQogICAgIGNoZWNrU3RhY2tQb2ludGVyQWxpZ25tZW50KHQ0LCAweGJhZDBjMDA0
KQotICAgIGlmIFg4Nl82NCBvciBBUk02NCBvciBBUk02NEUKKyAgICBpZiBYODZfNjQgb3IgQVJN
NjQgb3IgQVJNNjRFIG9yIFJJU0NWNjQKICAgICAgICAgY2FsbCBmdW5jdGlvbgogICAgIGVsc2lm
IFg4Nl82NF9XSU4KICAgICAgICAgIyBPbiBXaW42NCwgcmN4LCByZHgsIHI4LCBhbmQgcjkgYXJl
IHVzZWQgZm9yIHBhc3NpbmcgdGhlIGZpcnN0IGZvdXIgcGFyYW1ldGVycy4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9vZmZsaW5lYXNtL2JhY2tlbmRzLnJiIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL29mZmxpbmVhc20vYmFja2VuZHMucmIKaW5kZXggNDE0ZjFlYWJlYWQyLi40
NTA2Njg2Zjk5ZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9vZmZsaW5lYXNt
L2JhY2tlbmRzLnJiCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9vZmZsaW5lYXNtL2JhY2tl
bmRzLnJiCkBAIC0yNyw2ICsyNyw3IEBAIHJlcXVpcmUgImFybTY0IgogcmVxdWlyZSAiYXN0Igog
cmVxdWlyZSAieDg2IgogcmVxdWlyZSAibWlwcyIKK3JlcXVpcmUgInJpc2N2NjQiCiByZXF1aXJl
ICJjbG9vcCIKIAogYmVnaW4KQEAgLTQ0LDYgKzQ1LDcgQEAgQkFDS0VORFMgPQogICAgICAiQVJN
NjQiLAogICAgICAiQVJNNjRFIiwKICAgICAgIk1JUFMiLAorICAgICAiUklTQ1Y2NCIsCiAgICAg
ICJDX0xPT1AiLAogICAgICAiQ19MT09QX1dJTiIKICAgICBdCkBAIC02Myw2ICs2NSw3IEBAIFdP
UktJTkdfQkFDS0VORFMgPQogICAgICAiQVJNNjQiLAogICAgICAiQVJNNjRFIiwKICAgICAgIk1J
UFMiLAorICAgICAiUklTQ1Y2NCIsCiAgICAgICJDX0xPT1AiLAogICAgICAiQ19MT09QX1dJTiIK
ICAgICBdCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvb2ZmbGluZWFzbS9yZWdp
c3RlcnMucmIgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvb2ZmbGluZWFzbS9yZWdpc3RlcnMucmIK
aW5kZXggY2I4NDU3YjhmOTQ4Li4wZGM0NGMyM2RmYjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9vZmZsaW5lYXNtL3JlZ2lzdGVycy5yYgorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvb2ZmbGluZWFzbS9yZWdpc3RlcnMucmIKQEAgLTU3LDcgKzU3LDggQEAgR1BSUyA9CiAg
ICAgICJjc3I2IiwKICAgICAgImNzcjciLAogICAgICAiY3NyOCIsCi0gICAgICJjc3I5IgorICAg
ICAiY3NyOSIsCisgICAgICJjc3IxMCIKICAgICBdCiAKIEZQUlMgPQpAQCAtODAsNiArODEsMTAg
QEAgRlBSUyA9CiAgICAgICJjc2ZyNSIsCiAgICAgICJjc2ZyNiIsCiAgICAgICJjc2ZyNyIsCisg
ICAgICJjc2ZyOCIsCisgICAgICJjc2ZyOSIsCisgICAgICJjc2ZyMTAiLAorICAgICAiY3NmcjEx
IiwKICAgICAgImZyIgogICAgIF0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L29mZmxpbmVhc20vcmlzY3Y2NC5yYiBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9vZmZsaW5lYXNt
L3Jpc2N2NjQucmIKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi5jN2U0
ZjYyZTgzZTIKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvb2ZmbGlu
ZWFzbS9yaXNjdjY0LnJiCkBAIC0wLDAgKzEsMjMwMCBAQAorIyBDb3B5cmlnaHQgKEMpIDIwMjEg
SWdhbGlhIFMuTC4KKyMKKyMgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisjIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworIyBhcmUgbWV0OgorIyAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorIyAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisjIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisjICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyMgICAg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRp
c3RyaWJ1dGlvbi4KKyMKKyMgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMu
IEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworIyBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyMgVEhFIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUgorIyBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorIyBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBP
RgorIyBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MKKyMgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyMgQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkK
KyMgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRgorIyBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisKK2Rl
ZiByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgIHJldHVybiBvcGVyYW5kcy5tYXAg
eworICAgICAgICB8b3B8CisgICAgICAgIG9wLmNsYXNzCisgICAgfQorZW5kCisKK2RlZiByaXNj
djY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgcmFpc2UgIlVuYWJsZSB0
byBtYXRjaCBvcGVyYW5kcyAje3Jpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpfSIKK2VuZAor
CitkZWYgcmlzY3Y2NFJhaXNlVW5zdXBwb3J0ZWQKKyAgICByYWlzZSAiTm90IHN1cHBvcnRlZCBm
b3IgUklTQ1Y2NCIKK2VuZAorCitkZWYgcmlzY3Y2NExvYWRJbnN0cnVjdGlvbihzaXplKQorICAg
IGNhc2Ugc2l6ZQorICAgIHdoZW4gOmIKKyAgICAgICAgImxiIgorICAgIHdoZW4gOncKKyAgICAg
ICAgImx3IgorICAgIHdoZW4gOmQKKyAgICAgICAgImxkIgorICAgIGVsc2UKKyAgICAgICAgcmFp
c2UgIlVuc3VwcG9ydGVkIHNpemUgI3tzaXplfSIKKyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2
NENvbmRpdGlvbmFsQnJhbmNoSW5zdHJ1Y3Rpb24oY29uZGl0aW9uKQorICAgIGNhc2UgY29uZGl0
aW9uCisgICAgd2hlbiA6ZXEKKyAgICAgICAgImJlcSIKKyAgICB3aGVuIDpuZXEKKyAgICAgICAg
ImJuZSIKKyAgICB3aGVuIDphCisgICAgICAgICJiZ3R1IgorICAgIHdoZW4gOmFlcQorICAgICAg
ICAiYmdldSIKKyAgICB3aGVuIDpiCisgICAgICAgICJibHR1IgorICAgIHdoZW4gOmJlcQorICAg
ICAgICAiYmxldSIKKyAgICB3aGVuIDpndAorICAgICAgICAiYmd0IgorICAgIHdoZW4gOmd0ZXEK
KyAgICAgICAgImJnZSIKKyAgICB3aGVuIDpsdAorICAgICAgICAiYmx0IgorICAgIHdoZW4gOmx0
ZXEKKyAgICAgICAgImJsZSIKKyAgICBlbHNlCisgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCBj
b25kaXRpb24gI3tjb25kaXRpb259IgorICAgIGVuZAorZW5kCisKK2RlZiByaXNjdjY0RW1pdExv
YWQob3BlcmFuZHMsIHR5cGUsIG1hc2spCisgICAgZGVmIGxvYWRJbnN0cnVjdGlvbih0eXBlKQor
ICAgICAgICBjYXNlIHR5cGUKKyAgICAgICAgd2hlbiA6YnUKKyAgICAgICAgICAgICJsYnUiCisg
ICAgICAgIHdoZW4gOmIKKyAgICAgICAgICAgICJsYiIKKyAgICAgICAgd2hlbiA6aHUKKyAgICAg
ICAgICAgICJsaHUiCisgICAgICAgIHdoZW4gOmgKKyAgICAgICAgICAgICJsaCIKKyAgICAgICAg
d2hlbiA6d3UKKyAgICAgICAgICAgICJsd3UiCisgICAgICAgIHdoZW4gOncKKyAgICAgICAgICAg
ICJsdyIKKyAgICAgICAgd2hlbiA6ZAorICAgICAgICAgICAgImxkIgorICAgICAgICBlbHNlCisg
ICAgICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgbG9hZCB0eXBlIgorICAgICAgICBlbmQKKyAg
ICBlbmQKKworICAgIGluc3RydWN0aW9uID0gbG9hZEluc3RydWN0aW9uKHR5cGUpCisKKyAgICBj
YXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgd2hlbiBbQWRkcmVzcywgUmVn
aXN0ZXJJRF0KKyAgICAgICAgaWYgb3BlcmFuZHNbMF0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAg
ICAgICAgICAgb3BlcmFuZHNbMF0ucmlzY3Y2NExvYWQKKyAgICAgICAgICAgICRhc20ucHV0cyAi
I3tpbnN0cnVjdGlvbn0gI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIDAoeDMxKSIKKyAg
ICAgICAgZWxzZQorICAgICAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSAje29wZXJh
bmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisg
ICAgICAgIGVuZAorICAgIHdoZW4gW0Jhc2VJbmRleCwgUmVnaXN0ZXJJRF0KKyAgICAgICAgb3Bl
cmFuZHNbMF0ucmlzY3Y2NExvYWQKKyAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSAj
e29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgMCh4MzEpIgorICAgIGVsc2UKKyAgICAgICAg
cmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgIGVuZAorCisgICAg
Y2FzZSBtYXNrCisgICAgd2hlbiA6dworICAgICAgICAkYXNtLnB1dHMgImxpIHgzMSwgMHhmZmZm
ZmZmZiIKKyAgICAgICAgJGFzbS5wdXRzICJhbmQgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFu
ZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEiCisgICAgd2hlbiA6bm9uZQor
ICAgIGVsc2UKKyAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIG1hc2sgdHlwZSIKKyAgICBlbmQK
K2VuZAorCitkZWYgcmlzY3Y2NEVtaXRTdG9yZShvcGVyYW5kcywgdHlwZSkKKyAgICBkZWYgc3Rv
cmVJbnN0cnVjdGlvbih0eXBlKQorICAgICAgICBjYXNlIHR5cGUKKyAgICAgICAgd2hlbiA6Ygor
ICAgICAgICAgICAgInNiIgorICAgICAgICB3aGVuIDpoCisgICAgICAgICAgICAic2giCisgICAg
ICAgIHdoZW4gOncKKyAgICAgICAgICAgICJzdyIKKyAgICAgICAgd2hlbiA6ZAorICAgICAgICAg
ICAgInNkIgorICAgICAgICBlbHNlCisgICAgICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgc3Rv
cmUgdHlwZSIKKyAgICAgICAgZW5kCisgICAgZW5kCisKKyAgICBpbnN0cnVjdGlvbiA9IHN0b3Jl
SW5zdHJ1Y3Rpb24odHlwZSkKKworICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5k
cykKKyAgICB3aGVuIFtSZWdpc3RlcklELCBBZGRyZXNzXQorICAgICAgICBpZiBvcGVyYW5kc1sx
XS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICBvcGVyYW5kc1sxXS5yaXNjdjY0TG9h
ZAorICAgICAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSAje29wZXJhbmRzWzBdLnJp
c2N2NjRPcGVyYW5kfSwgMCh4MzEpIgorICAgICAgICBlbHNlCisgICAgICAgICAgICAkYXNtLnB1
dHMgIiN7aW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJh
bmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZW5kCisgICAgd2hlbiBbUmVnaXN0ZXJJ
RCwgQmFzZUluZGV4XQorICAgICAgICBvcGVyYW5kc1sxXS5yaXNjdjY0TG9hZAorICAgICAgICAk
YXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAw
KHgzMSkiCisgICAgd2hlbiBbSW1tZWRpYXRlLCBBZGRyZXNzXQorICAgICAgICAkYXNtLnB1dHMg
ImxpIHgzMCwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGlmIG9wZXJh
bmRzWzFdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAgIG9wZXJhbmRzWzFdLnJpc2N2
NjRMb2FkCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259IHgzMCwgMCh4MzEp
IgorICAgICAgICBlbHNlCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259IHgz
MCwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVuZAorICAgIHdoZW4g
W0ltbWVkaWF0ZSwgQmFzZUluZGV4XQorICAgICAgICAkYXNtLnB1dHMgImxpIHgzMCwgI3tvcGVy
YW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIG9wZXJhbmRzWzFdLnJpc2N2NjRMb2Fk
CisgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0geDMwLCAwKHgzMSkiCisgICAgZWxz
ZQorICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAg
ZW5kCitlbmQKKworZGVmIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFuZHMsIHNp
emUsIGNvbmRpdGlvbikKKyAgICBpbnN0cnVjdGlvbiA9IHJpc2N2NjRDb25kaXRpb25hbEJyYW5j
aEluc3RydWN0aW9uKGNvbmRpdGlvbikKKworICAgIGRlZiBzaWduRXh0ZW5kRm9yU2l6ZShyZWdp
c3RlciwgdGFyZ2V0LCBzaXplKQorICAgICAgICBjYXNlIHNpemUKKyAgICAgICAgd2hlbiA6Ygor
ICAgICAgICAgICAgJGFzbS5wdXRzICJzbGxpICN7dGFyZ2V0fSwgI3tyZWdpc3Rlci5yaXNjdjY0
T3BlcmFuZH0sIDI0IgorICAgICAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgI3t0YXJnZXR9LCAj
e3RhcmdldH0iCisgICAgICAgICAgICAkYXNtLnB1dHMgInNyYWkgI3t0YXJnZXR9LCAje3Rhcmdl
dH0sIDI0IgorICAgICAgICB3aGVuIDp3CisgICAgICAgICAgICAkYXNtLnB1dHMgInNleHQudyAj
e3RhcmdldH0sICN7cmVnaXN0ZXIucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICB3aGVuIDpkCisg
ICAgICAgICAgICAkYXNtLnB1dHMgIm12ICN7dGFyZ2V0fSwgI3tyZWdpc3Rlci5yaXNjdjY0T3Bl
cmFuZH0iCisgICAgICAgIGVuZAorICAgIGVuZAorCisgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5
cGVzKG9wZXJhbmRzKQorICAgIHdoZW4gW1JlZ2lzdGVySUQsIFJlZ2lzdGVySUQsIExvY2FsTGFi
ZWxSZWZlcmVuY2VdCisgICAgICAgIHNpZ25FeHRlbmRGb3JTaXplKG9wZXJhbmRzWzBdLCAneDMw
Jywgc2l6ZSkKKyAgICAgICAgc2lnbkV4dGVuZEZvclNpemUob3BlcmFuZHNbMV0sICd4MzEnLCBz
aXplKQorICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259IHgzMCwgeDMxLCAje29wZXJh
bmRzWzJdLmFzbUxhYmVsfSIKKyAgICB3aGVuIFtSZWdpc3RlcklELCBJbW1lZGlhdGUsIExvY2Fs
TGFiZWxSZWZlcmVuY2VdCisgICAgICAgIHNpZ25FeHRlbmRGb3JTaXplKG9wZXJhbmRzWzBdLCAn
eDMwJywgc2l6ZSkKKyAgICAgICAgJGFzbS5wdXRzICJsaSB4MzEsICN7b3BlcmFuZHNbMV0ucmlz
Y3Y2NE9wZXJhbmR9IgorICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259IHgzMCwgeDMx
LCAje29wZXJhbmRzWzJdLmFzbUxhYmVsfSIKKyAgICB3aGVuIFtSZWdpc3RlcklELCBBZGRyZXNz
LCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICBzaWduRXh0ZW5kRm9yU2l6ZShvcGVyYW5k
c1swXSwgJ3gzMCcsIHNpemUpCisgICAgICAgIGlmIG9wZXJhbmRzWzFdLnJpc2N2NjRSZXF1aXJl
c0xvYWQKKyAgICAgICAgICAgIG9wZXJhbmRzWzFdLnJpc2N2NjRMb2FkCisgICAgICAgICAgICAk
YXNtLnB1dHMgIiN7cmlzY3Y2NExvYWRJbnN0cnVjdGlvbihzaXplKX0geDMxLCAwKHgzMSkiCisg
ICAgICAgIGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tyaXNjdjY0TG9hZEluc3RydWN0
aW9uKHNpemUpfSB4MzEsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICBl
bmQKKyAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSB4MzAsIHgzMSwgI3tvcGVyYW5k
c1syXS5hc21MYWJlbH0iCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgQmFzZUluZGV4LCBMb2NhbExh
YmVsUmVmZXJlbmNlXQorICAgICAgICBvcGVyYW5kc1sxXS5yaXNjdjY0TG9hZAorICAgICAgICAk
YXNtLnB1dHMgIiN7cmlzY3Y2NExvYWRJbnN0cnVjdGlvbihzaXplKX0geDMxLCAwKHgzMSkiCisg
ICAgICAgIHNpZ25FeHRlbmRGb3JTaXplKG9wZXJhbmRzWzBdLCAneDMwJywgc2l6ZSkKKyAgICAg
ICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSB4MzAsIHgzMSwgI3tvcGVyYW5kc1syXS5hc21M
YWJlbH0iCisgICAgd2hlbiBbQWRkcmVzcywgUmVnaXN0ZXJJRCwgTG9jYWxMYWJlbFJlZmVyZW5j
ZV0KKyAgICAgICAgaWYgb3BlcmFuZHNbMF0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAg
ICAgb3BlcmFuZHNbMF0ucmlzY3Y2NExvYWQKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tyaXNj
djY0TG9hZEluc3RydWN0aW9uKHNpemUpfSB4MzAsIDAoeDMxKSIKKyAgICAgICAgZWxzZQorICAg
ICAgICAgICAgJGFzbS5wdXRzICIje3Jpc2N2NjRMb2FkSW5zdHJ1Y3Rpb24oc2l6ZSl9IHgzMCwg
I3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVuZAorICAgICAgICBzaWdu
RXh0ZW5kRm9yU2l6ZShvcGVyYW5kc1sxXSwgJ3gzMScsIHNpemUpCisgICAgICAgICRhc20ucHV0
cyAiI3tpbnN0cnVjdGlvbn0geDMwLCB4MzEsICN7b3BlcmFuZHNbMl0uYXNtTGFiZWx9IgorICAg
IHdoZW4gW0FkZHJlc3MsIEltbWVkaWF0ZSwgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAg
aWYgb3BlcmFuZHNbMF0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgb3BlcmFuZHNb
MF0ucmlzY3Y2NExvYWQKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tyaXNjdjY0TG9hZEluc3Ry
dWN0aW9uKHNpemUpfSB4MzAsIDAoeDMxKSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgJGFz
bS5wdXRzICIje3Jpc2N2NjRMb2FkSW5zdHJ1Y3Rpb24oc2l6ZSl9IHgzMCwgI3tvcGVyYW5kc1sw
XS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVuZAorICAgICAgICAkYXNtLnB1dHMgImxpIHgz
MSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICRhc20ucHV0cyAiI3tp
bnN0cnVjdGlvbn0geDMwLCB4MzEsICN7b3BlcmFuZHNbMl0uYXNtTGFiZWx9IgorICAgIGVsc2UK
KyAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgIGVu
ZAorZW5kCisKK2RlZiByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5k
cywgc2l6ZSwgdGVzdCkKKyAgICBkZWYgYnJhbmNoSW5zdHJ1Y3Rpb25Gb3JUZXN0KHRlc3QpCisg
ICAgICAgIGNhc2UgdGVzdAorICAgICAgICB3aGVuIDp6CisgICAgICAgICAgICAiYmVxeiIKKyAg
ICAgICAgd2hlbiA6bnoKKyAgICAgICAgICAgICJibmV6IgorICAgICAgICB3aGVuIDpzCisgICAg
ICAgICAgICAiYmx0eiIKKyAgICAgICAgZWxzZQorICAgICAgICBlbmQKKyAgICBlbmQKKworICAg
IGRlZiBzaWduRXh0ZW5kRm9yU2l6ZSh0YXJnZXQsIHNpemUpCisgICAgICAgIGNhc2Ugc2l6ZQor
ICAgICAgICB3aGVuIDpiCisgICAgICAgICAgICAkYXNtLnB1dHMgInNsbGkgI3t0YXJnZXR9LCAj
e3RhcmdldH0sIDI0IgorICAgICAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgI3t0YXJnZXR9LCAj
e3RhcmdldH0iCisgICAgICAgICAgICAkYXNtLnB1dHMgInNyYWkgI3t0YXJnZXR9LCAje3Rhcmdl
dH0sIDI0IgorICAgICAgICB3aGVuIDpoCisgICAgICAgICAgICAkYXNtLnB1dHMgInNsbGkgI3t0
YXJnZXR9LCAje3RhcmdldH0sIDE2IgorICAgICAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgI3t0
YXJnZXR9LCAje3RhcmdldH0iCisgICAgICAgICAgICAkYXNtLnB1dHMgInNyYWkgI3t0YXJnZXR9
LCAje3RhcmdldH0sIDE2IgorICAgICAgICB3aGVuIDp3CisgICAgICAgICAgICAkYXNtLnB1dHMg
InNleHQudyAje3RhcmdldH0sICN7dGFyZ2V0fSIKKyAgICAgICAgd2hlbiA6ZAorICAgICAgICAg
ICAgcmV0dXJuCisgICAgICAgIGVuZAorICAgIGVuZAorCisgICAgY2FzZSByaXNjdjY0T3BlcmFu
ZFR5cGVzKG9wZXJhbmRzKQorICAgIHdoZW4gW1JlZ2lzdGVySUQsIExvY2FsTGFiZWxSZWZlcmVu
Y2VdCisgICAgICAgIGNhc2UgdGVzdAorICAgICAgICB3aGVuIDpzCisgICAgICAgICAgICAkYXNt
LnB1dHMgIm12IHgzMSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAg
ICBzaWduRXh0ZW5kRm9yU2l6ZSgneDMxJywgc2l6ZSkKKyAgICAgICAgICAgICRhc20ucHV0cyAi
I3ticmFuY2hJbnN0cnVjdGlvbkZvclRlc3QodGVzdCl9IHgzMSwgI3tvcGVyYW5kc1sxXS5hc21M
YWJlbH0iCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3ticmFuY2hJbnN0
cnVjdGlvbkZvclRlc3QodGVzdCl9ICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAje29w
ZXJhbmRzWzFdLmFzbUxhYmVsfSIKKyAgICAgICAgZW5kCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwg
UmVnaXN0ZXJJRCwgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgJGFzbS5wdXRzICJhbmQg
eDMxLCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0
T3BlcmFuZH0iCisgICAgICAgIHNpZ25FeHRlbmRGb3JTaXplKCd4MzEnLCBzaXplKQorICAgICAg
ICAkYXNtLnB1dHMgIiN7YnJhbmNoSW5zdHJ1Y3Rpb25Gb3JUZXN0KHRlc3QpfSB4MzEsICN7b3Bl
cmFuZHNbMl0uYXNtTGFiZWx9IgorICAgIHdoZW4gW1JlZ2lzdGVySUQsIEltbWVkaWF0ZSwgTG9j
YWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgaWYgb3BlcmFuZHNbMV0ucmlzY3Y2NFJlcXVpcmVz
TG9hZAorICAgICAgICAgICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExvYWQKKyAgICAgICAgICAgICRh
c20ucHV0cyAiYW5kIHgzMSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAg
ICAgICAgZWxzZQorICAgICAgICAgICAgJGFzbS5wdXRzICJhbmRpIHgzMSwgI3tvcGVyYW5kc1sw
XS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAg
ICBlbmQKKyAgICAgICAgc2lnbkV4dGVuZEZvclNpemUoJ3gzMScsIHNpemUpCisgICAgICAgICRh
c20ucHV0cyAiI3ticmFuY2hJbnN0cnVjdGlvbkZvclRlc3QodGVzdCl9IHgzMSwgI3tvcGVyYW5k
c1syXS5hc21MYWJlbH0iCisgICAgd2hlbiBbQWRkcmVzcywgTG9jYWxMYWJlbFJlZmVyZW5jZV0K
KyAgICAgICAgaWYgb3BlcmFuZHNbMF0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAg
b3BlcmFuZHNbMF0ucmlzY3Y2NExvYWQKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tyaXNjdjY0
TG9hZEluc3RydWN0aW9uKHNpemUpfSB4MzEsIDAoeDMxKSIKKyAgICAgICAgZWxzZQorICAgICAg
ICAgICAgJGFzbS5wdXRzICIje3Jpc2N2NjRMb2FkSW5zdHJ1Y3Rpb24oc2l6ZSl9IHgzMSwgI3tv
cGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVuZAorICAgICAgICAkYXNtLnB1
dHMgIiN7YnJhbmNoSW5zdHJ1Y3Rpb25Gb3JUZXN0KHRlc3QpfSB4MzEsICN7b3BlcmFuZHNbMV0u
YXNtTGFiZWx9IgorICAgIHdoZW4gW0FkZHJlc3MsIEltbWVkaWF0ZSwgTG9jYWxMYWJlbFJlZmVy
ZW5jZV0KKyAgICAgICAgaWYgb3BlcmFuZHNbMF0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAg
ICAgICAgb3BlcmFuZHNbMF0ucmlzY3Y2NExvYWQKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3ty
aXNjdjY0TG9hZEluc3RydWN0aW9uKHNpemUpfSB4MzAsIDAoeDMxKSIKKyAgICAgICAgZWxzZQor
ICAgICAgICAgICAgJGFzbS5wdXRzICIje3Jpc2N2NjRMb2FkSW5zdHJ1Y3Rpb24oc2l6ZSl9IHgz
MCwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVuZAorICAgICAgICBp
ZiBvcGVyYW5kc1sxXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICBvcGVyYW5kc1sx
XS5yaXNjdjY0TG9hZAorICAgICAgICAgICAgJGFzbS5wdXRzICJhbmQgeDMxLCB4MzAsIHgzMSIK
KyAgICAgICAgZWxzZQorICAgICAgICAgICAgJGFzbS5wdXRzICJhbmRpIHgzMSwgeDMwLCAje29w
ZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZW5kCisgICAgICAgIHNpZ25FeHRl
bmRGb3JTaXplKCd4MzEnLCBzaXplKQorICAgICAgICAkYXNtLnB1dHMgIiN7YnJhbmNoSW5zdHJ1
Y3Rpb25Gb3JUZXN0KHRlc3QpfSB4MzEsICN7b3BlcmFuZHNbMl0uYXNtTGFiZWx9IgorICAgIHdo
ZW4gW0Jhc2VJbmRleCwgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgb3BlcmFuZHNbMF0u
cmlzY3Y2NExvYWQKKyAgICAgICAgJGFzbS5wdXRzICIje3Jpc2N2NjRMb2FkSW5zdHJ1Y3Rpb24o
c2l6ZSl9IHgzMSwgMCh4MzEpIgorICAgICAgICAkYXNtLnB1dHMgIiN7YnJhbmNoSW5zdHJ1Y3Rp
b25Gb3JUZXN0KHRlc3QpfSB4MzEsICN7b3BlcmFuZHNbMV0uYXNtTGFiZWx9IgorICAgIGVsc2UK
KyAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgIGVu
ZAorZW5kCisKK2RlZiByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMsIHNpemUsIGNvbmRpdGlv
bikKKworICAgIGRlZiBzaWduRXh0ZW5kUmVnaXN0ZXJGb3JTaXplKHJlZ2lzdGVyLCB0YXJnZXQs
IHNpemUpCisgICAgICAgIGNhc2Ugc2l6ZQorICAgICAgICB3aGVuIDpiCisgICAgICAgICAgICAk
YXNtLnB1dHMgInNsbGkgI3t0YXJnZXR9LCAje3JlZ2lzdGVyLnJpc2N2NjRPcGVyYW5kfSwgMjQi
CisgICAgICAgICAgICAkYXNtLnB1dHMgInNleHQudyAje3RhcmdldH0sICN7dGFyZ2V0fSIKKyAg
ICAgICAgICAgICRhc20ucHV0cyAic3JhaSAje3RhcmdldH0sICN7dGFyZ2V0fSwgMjQiCisgICAg
ICAgIHdoZW4gOncKKyAgICAgICAgICAgICRhc20ucHV0cyAic2V4dC53ICN7dGFyZ2V0fSwgI3ty
ZWdpc3Rlci5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIHdoZW4gOmQKKyAgICAgICAgICAgICRh
c20ucHV0cyAibXYgI3t0YXJnZXR9LCAje3JlZ2lzdGVyLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAg
ICAgZWxzZQorICAgICAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIHNpemUiCisgICAgICAgIGVu
ZAorICAgIGVuZAorCisgICAgZGVmIHNpZ25FeHRlbmRJbW1lZGlhdGVGb3JTaXplKGltbWVkaWF0
ZSwgdGFyZ2V0LCBzaXplKQorICAgICAgICAkYXNtLnB1dHMgImxpICN7dGFyZ2V0fSwgI3tpbW1l
ZGlhdGUucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICBjYXNlIHNpemUKKyAgICAgICAgd2hlbiA6
YgorICAgICAgICAgICAgJGFzbS5wdXRzICJzbGxpICN7dGFyZ2V0fSwgI3t0YXJnZXR9LCAyNCIK
KyAgICAgICAgICAgICRhc20ucHV0cyAic2V4dC53ICN7dGFyZ2V0fSwgI3t0YXJnZXR9IgorICAg
ICAgICAgICAgJGFzbS5wdXRzICJzcmFpICN7dGFyZ2V0fSwgI3t0YXJnZXR9LCAyNCIKKyAgICAg
ICAgd2hlbiA6dworICAgICAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgI3t0YXJnZXR9LCAje3Rh
cmdldH0iCisgICAgICAgIHdoZW4gOmQKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmFpc2Ug
IlVuc3VwcG9ydGVkIHNpemUiCisgICAgICAgIGVuZAorICAgIGVuZAorCisgICAgZGVmIGxvYWRB
bmRTaWduRXh0ZW5kQWRkcmVzc0ZvclNpemUoYWRkcmVzcywgdGFyZ2V0LCBzaXplKQorICAgICAg
ICBpZiBhZGRyZXNzLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAgIGFkZHJlc3Mucmlz
Y3Y2NExvYWQKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tyaXNjdjY0TG9hZEluc3RydWN0aW9u
KHNpemUpfSAje3RhcmdldH0sIDAoeDMxKSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgJGFz
bS5wdXRzICIje3Jpc2N2NjRMb2FkSW5zdHJ1Y3Rpb24oc2l6ZSl9ICN7dGFyZ2V0fSwgI3thZGRy
ZXNzLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZW5kCisgICAgZW5kCisKKyAgICBkZWYgc2V0
Rm9yQ29uZGl0aW9uKGxocywgcmhzLCB0YXJnZXQsIGNvbmRpdGlvbikKKyAgICAgICAgY2FzZSBj
b25kaXRpb24KKyAgICAgICAgd2hlbiA6ZXEKKyAgICAgICAgICAgICRhc20ucHV0cyAic3ViIHgz
MSwgI3tsaHN9LCAje3Joc30iCisgICAgICAgICAgICAkYXNtLnB1dHMgInNlcXogI3tvcGVyYW5k
c1syXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAgICAgICAgd2hlbiA6bmVxCisgICAgICAgICAg
ICAkYXNtLnB1dHMgInN1YiB4MzEsICN7bGhzfSwgI3tyaHN9IgorICAgICAgICAgICAgJGFzbS5w
dXRzICJzbmV6ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEiCisgICAgICAgIHdo
ZW4gOmEKKyAgICAgICAgICAgICRhc20ucHV0cyAic2x0dSAje29wZXJhbmRzWzJdLnJpc2N2NjRP
cGVyYW5kfSwgI3tyaHN9LCAje2xoc30iCisgICAgICAgIHdoZW4gOmFlcQorICAgICAgICAgICAg
JGFzbS5wdXRzICJzbHR1ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje2xoc30sICN7
cmhzfSIKKyAgICAgICAgICAgICRhc20ucHV0cyAieG9yaSAje29wZXJhbmRzWzJdLnJpc2N2NjRP
cGVyYW5kfSwgI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sIDEiCisgICAgICAgIHdoZW4g
OmIKKyAgICAgICAgICAgICRhc20ucHV0cyAic2x0dSAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVy
YW5kfSwgI3tsaHN9LCAje3Joc30iCisgICAgICAgIHdoZW4gOmJlcQorICAgICAgICAgICAgJGFz
bS5wdXRzICJzbHR1ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje3Joc30sICN7bGhz
fSIKKyAgICAgICAgICAgICRhc20ucHV0cyAieG9yaSAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVy
YW5kfSwgI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sIDEiCisgICAgICAgIHdoZW4gOmx0
CisgICAgICAgICAgICAkYXNtLnB1dHMgInNsdCAje3RhcmdldC5yaXNjdjY0T3BlcmFuZH0sICN7
bGhzfSwgI3tyaHN9IgorICAgICAgICB3aGVuIDpsdGVxCisgICAgICAgICAgICAkYXNtLnB1dHMg
InNsdCAje3RhcmdldC5yaXNjdjY0T3BlcmFuZH0sICN7cmhzfSwgI3tsaHN9IgorICAgICAgICAg
ICAgJGFzbS5wdXRzICJ4b3JpICN7dGFyZ2V0LnJpc2N2NjRPcGVyYW5kfSwgI3t0YXJnZXQucmlz
Y3Y2NE9wZXJhbmR9LCAxIgorICAgICAgICB3aGVuIDpndAorICAgICAgICAgICAgJGFzbS5wdXRz
ICJzbHQgI3t0YXJnZXQucmlzY3Y2NE9wZXJhbmR9LCAje3Joc30sICN7bGhzfSIKKyAgICAgICAg
d2hlbiA6Z3RlcQorICAgICAgICAgICAgJGFzbS5wdXRzICJzbHQgI3t0YXJnZXQucmlzY3Y2NE9w
ZXJhbmR9LCAje2xoc30sICN7cmhzfSIKKyAgICAgICAgICAgICRhc20ucHV0cyAieG9yaSAje3Rh
cmdldC5yaXNjdjY0T3BlcmFuZH0sICN7dGFyZ2V0LnJpc2N2NjRPcGVyYW5kfSwgMSIKKyAgICAg
ICAgZWxzZQorICAgICAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIGNvbmRpdGlvbiIKKyAgICAg
ICAgZW5kCisgICAgZW5kCisKKyAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMp
CisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAgICAg
c2lnbkV4dGVuZFJlZ2lzdGVyRm9yU2l6ZShvcGVyYW5kc1swXSwgJ3gzMCcsIHNpemUpCisgICAg
ICAgIHNpZ25FeHRlbmRSZWdpc3RlckZvclNpemUob3BlcmFuZHNbMV0sICd4MzEnLCBzaXplKQor
ICAgICAgICBzZXRGb3JDb25kaXRpb24oJ3gzMCcsICd4MzEnLCBvcGVyYW5kc1syXSwgY29uZGl0
aW9uKQorICAgIHdoZW4gW1JlZ2lzdGVySUQsIEltbWVkaWF0ZSwgUmVnaXN0ZXJJRF0KKyAgICAg
ICAgc2lnbkV4dGVuZFJlZ2lzdGVyRm9yU2l6ZShvcGVyYW5kc1swXSwgJ3gzMCcsIHNpemUpCisg
ICAgICAgIHNpZ25FeHRlbmRJbW1lZGlhdGVGb3JTaXplKG9wZXJhbmRzWzFdLCAneDMxJywgc2l6
ZSkKKyAgICAgICAgc2V0Rm9yQ29uZGl0aW9uKCd4MzAnLCAneDMxJywgb3BlcmFuZHNbMl0sIGNv
bmRpdGlvbikKKyAgICB3aGVuIFtBZGRyZXNzLCBSZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAg
ICAgICBsb2FkQW5kU2lnbkV4dGVuZEFkZHJlc3NGb3JTaXplKG9wZXJhbmRzWzBdLCAneDMwJywg
c2l6ZSkKKyAgICAgICAgc2lnbkV4dGVuZFJlZ2lzdGVyRm9yU2l6ZShvcGVyYW5kc1sxXSwgJ3gz
MScsIHNpemUpCisgICAgICAgIHNldEZvckNvbmRpdGlvbigneDMwJywgJ3gzMScsIG9wZXJhbmRz
WzJdLCBjb25kaXRpb24pCisgICAgd2hlbiBbQWRkcmVzcywgSW1tZWRpYXRlLCBSZWdpc3RlcklE
XQorICAgICAgICBsb2FkQW5kU2lnbkV4dGVuZEFkZHJlc3NGb3JTaXplKG9wZXJhbmRzWzBdLCAn
eDMwJywgc2l6ZSkKKyAgICAgICAgc2lnbkV4dGVuZEltbWVkaWF0ZUZvclNpemUob3BlcmFuZHNb
MV0sICd4MzEnLCBzaXplKQorICAgICAgICBzZXRGb3JDb25kaXRpb24oJ3gzMCcsICd4MzEnLCBv
cGVyYW5kc1syXSwgY29uZGl0aW9uKQorICAgIGVsc2UKKyAgICAgICAgcmlzY3Y2NFJhaXNlTWlz
bWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgIGVuZAorZW5kCisKK2RlZiByaXNjdjY0RW1p
dFRlc3Qob3BlcmFuZHMsIHNpemUsIHRlc3QpCisgICAgZGVmIGxvYWRJbnN0cnVjdGlvbihzaXpl
KQorICAgICAgICBjYXNlIHNpemUKKyAgICAgICAgd2hlbiA6YgorICAgICAgICAgICAgImxidSIK
KyAgICAgICAgd2hlbiA6aAorICAgICAgICAgICAgImxodSIKKyAgICAgICAgd2hlbiA6dworICAg
ICAgICAgICAgImx3dSIKKyAgICAgICAgd2hlbiA6ZAorICAgICAgICAgICAgImxkIgorICAgICAg
ICBlbHNlCisgICAgICAgICAgICByYWlzZSAiVW5rbm93biBzaXplIgorICAgICAgICBlbmQKKyAg
ICBlbmQKKworICAgIGRlZiB0ZXN0SW5zdHJ1Y3Rpb24odGVzdCkKKyAgICAgICAgY2FzZSB0ZXN0
CisgICAgICAgIHdoZW4gOnoKKyAgICAgICAgICAgICJzZXF6IgorICAgICAgICB3aGVuIDpuegor
ICAgICAgICAgICAgInNuZXoiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJhaXNlICJVbmtu
b3duIHRlc3QgdHlwZSIKKyAgICAgICAgZW5kCisgICAgZW5kCisKKyAgICBjYXNlIHJpc2N2NjRP
cGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCwg
UmVnaXN0ZXJJRF0KKyAgICAgICAgJGFzbS5wdXRzICJhbmQgeDMxLCAje29wZXJhbmRzWzBdLnJp
c2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICRh
c20ucHV0cyAiI3t0ZXN0SW5zdHJ1Y3Rpb24odGVzdCl9ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9w
ZXJhbmR9LCB4MzEiCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgSW1tZWRpYXRlLCBSZWdpc3RlcklE
XQorICAgICAgICBpZiBvcGVyYW5kc1sxXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAg
ICAkYXNtLnB1dHMgImxpIHgzMSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAg
ICAgICAgICAkYXNtLnB1dHMgImFuZCB4MzEsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9
LCB4MzEiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0cyAiYW5kaSB4MzEsICN7
b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5k
fSIKKyAgICAgICAgZW5kCisgICAgICAgICRhc20ucHV0cyAiI3t0ZXN0SW5zdHJ1Y3Rpb24odGVz
dCl9ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEiCisgICAgd2hlbiBbQWRkcmVz
cywgSW1tZWRpYXRlLCBSZWdpc3RlcklEXQorICAgICAgICBpZiBvcGVyYW5kc1swXS5yaXNjdjY0
UmVxdWlyZXNMb2FkCisgICAgICAgICAgICBvcGVyYW5kc1swXS5yaXNjdjY0TG9hZAorICAgICAg
ICAgICAgJGFzbS5wdXRzICIje2xvYWRJbnN0cnVjdGlvbihzaXplKX0geDMxLCAwKHgzMSkiCisg
ICAgICAgIGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tsb2FkSW5zdHJ1Y3Rpb24oc2l6
ZSl9IHgzMSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVuZAorICAg
ICAgICBpZiBvcGVyYW5kc1sxXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICAkYXNt
LnB1dHMgImxpIHgzMCwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAg
ICAkYXNtLnB1dHMgImFuZCB4MzEsIHgzMCwgeDMxIgorICAgICAgICBlbHNlCisgICAgICAgICAg
ICAkYXNtLnB1dHMgImFuZGkgeDMxLCB4MzEsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9
IgorICAgICAgICBlbmQKKyAgICAgICAgJGFzbS5wdXRzICIje3Rlc3RJbnN0cnVjdGlvbih0ZXN0
KX0gI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAgICBlbHNlCisgICAgICAg
IHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICBlbmQKK2VuZAor
CitkZWYgcmlzY3Y2NEVtaXRMb2dpY2FsT3BlcmF0aW9uKG9wZXJhbmRzLCBzaXplLCBvcGVyYXRp
b24pCisgICAgZGVmIGxvYWRJbnN0cnVjdGlvbihzaXplKQorICAgICAgICBjYXNlIHNpemUKKyAg
ICAgICAgd2hlbiA6aAorICAgICAgICAgICAgImxodSIKKyAgICAgICAgd2hlbiA6dworICAgICAg
ICAgICAgImx3dSIKKyAgICAgICAgd2hlbiA6ZAorICAgICAgICAgICAgImxkIgorICAgICAgICBl
bHNlCisgICAgICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgc2l6ZSIKKyAgICAgICAgZW5kCisg
ICAgZW5kCisKKyAgICBkZWYgc3RvcmVJbnN0cnVjdGlvbihzaXplKQorICAgICAgICBjYXNlIHNp
emUKKyAgICAgICAgd2hlbiA6aAorICAgICAgICAgICAgInNoIgorICAgICAgICB3aGVuIDp3Cisg
ICAgICAgICAgICAic3ciCisgICAgICAgIHdoZW4gOmQKKyAgICAgICAgICAgICJzZCIKKyAgICAg
ICAgZWxzZQorICAgICAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIHNpemUiCisgICAgICAgIGVu
ZAorICAgIGVuZAorCisgICAgZGVmIG9wSW5zdHJ1Y3Rpb24ob3BlcmF0aW9uKQorICAgICAgICBj
YXNlIG9wZXJhdGlvbgorICAgICAgICB3aGVuIDphbmQKKyAgICAgICAgICAgICJhbmQiCisgICAg
ICAgIHdoZW4gOm9yCisgICAgICAgICAgICAib3IiCisgICAgICAgIHdoZW4gOnhvcgorICAgICAg
ICAgICAgInhvciIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVk
IGxvZ2ljYWwgb3BlcmF0aW9uIgorICAgICAgICBlbmQKKyAgICBlbmQKKworICAgIGRlZiBlbWl0
TWFza0ZvclNpemUodGFyZ2V0LCBzaXplKQorICAgICAgICBjYXNlIHNpemUKKyAgICAgICAgd2hl
biA6dworICAgICAgICAgICAgJGFzbS5wdXRzICJsaSB4MzEsIDB4ZmZmZmZmZmYiCisgICAgICAg
ICAgICAkYXNtLnB1dHMgImFuZCAje3RhcmdldC5yaXNjdjY0T3BlcmFuZH0sICN7dGFyZ2V0LnJp
c2N2NjRPcGVyYW5kfSwgeDMxIgorICAgICAgICB3aGVuIDpkCisgICAgICAgIGVsc2UKKyAgICAg
ICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCBzaXplIgorICAgICAgICBlbmQKKyAgICBlbmQKKwor
ICAgIGluc3RydWN0aW9uID0gb3BJbnN0cnVjdGlvbihvcGVyYXRpb24pCisKKyAgICBjYXNlIHJp
c2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0
ZXJJRF0KKyAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSAje29wZXJhbmRzWzFdLnJp
c2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNb
MV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICBlbWl0TWFza0ZvclNpemUob3BlcmFuZHNbMV0s
IHNpemUpCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAg
ICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVy
YW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2
NE9wZXJhbmR9IgorICAgICAgICBlbWl0TWFza0ZvclNpemUob3BlcmFuZHNbMl0sIHNpemUpCisg
ICAgd2hlbiBbUmVnaXN0ZXJJRCwgSW1tZWRpYXRlLCBSZWdpc3RlcklEXQorICAgICAgICBpZiBv
cGVyYW5kc1sxXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICAkYXNtLnB1dHMgImxp
IHgzMSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAkYXNtLnB1
dHMgIiN7aW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJh
bmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgeDMxIgorICAgICAgICBlbHNlCisgICAgICAgICAgICAk
YXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259aSAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwg
I3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJh
bmR9IgorICAgICAgICBlbmQKKyAgICAgICAgZW1pdE1hc2tGb3JTaXplKG9wZXJhbmRzWzJdLCBz
aXplKQorICAgIHdoZW4gW0ltbWVkaWF0ZSwgUmVnaXN0ZXJJRF0KKyAgICAgICAgaWYgb3BlcmFu
ZHNbMF0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgJGFzbS5wdXRzICJsaSB4MzEs
ICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgJGFzbS5wdXRzICIj
e2luc3RydWN0aW9ufSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgeDMxLCAje29wZXJh
bmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgJGFzbS5w
dXRzICIje2luc3RydWN0aW9ufWkgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3Bl
cmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIK
KyAgICAgICAgZW5kCisgICAgICAgIGVtaXRNYXNrRm9yU2l6ZShvcGVyYW5kc1sxXSwgc2l6ZSkK
KyAgICB3aGVuIFtJbW1lZGlhdGUsIEFkZHJlc3NdCisgICAgICAgIGlmIG9wZXJhbmRzWzFdLnJp
c2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAgIG9wZXJhbmRzWzFdLnJpc2N2NjRMb2FkCisg
ICAgICAgICAgICAkYXNtLnB1dHMgIiN7bG9hZEluc3RydWN0aW9uKHNpemUpfSB4MzAsIDAoeDMx
KSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgJGFzbS5wdXRzICIje2xvYWRJbnN0cnVjdGlv
bihzaXplKX0geDMwLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZW5k
CisgICAgICAgICRhc20ucHV0cyAibGkgeDMxLCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5k
fSIKKyAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSB4MzAsIHgzMSwgeDMwIgorICAg
ICAgICBpZiBvcGVyYW5kc1sxXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICBvcGVy
YW5kc1sxXS5yaXNjdjY0TG9hZAorICAgICAgICAgICAgJGFzbS5wdXRzICIje3N0b3JlSW5zdHJ1
Y3Rpb24oc2l6ZSl9IHgzMCwgMCh4MzEpIgorICAgICAgICBlbHNlCisgICAgICAgICAgICAkYXNt
LnB1dHMgIiN7c3RvcmVJbnN0cnVjdGlvbihzaXplKX0geDMwLCAje29wZXJhbmRzWzFdLnJpc2N2
NjRPcGVyYW5kfSIKKyAgICAgICAgZW5kCisgICAgZWxzZQorICAgICAgICByaXNjdjY0UmFpc2VN
aXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgZW5kCitlbmQKKworZGVmIHJpc2N2NjRF
bWl0U2hpZnQob3BlcmFuZHMsIHNpemUsIHNoaWZ0KQorICAgIHJhaXNlICJVbnN1cHBvcnRlZCBz
aXplIiB1bmxlc3MgWzp3LCA6ZF0uaW5jbHVkZT8gc2l6ZQorCisgICAgZGVmIHNoaWZ0SW5zdHJ1
Y3Rpb24oc2l6ZSwgc2hpZnQpCisgICAgICAgIGNhc2Ugc2hpZnQKKyAgICAgICAgd2hlbiA6bGxl
ZnQKKyAgICAgICAgICAgIHNpemUgPT0gOncgPyAic2xsdyIgOiAic2xsIgorICAgICAgICB3aGVu
IDpscmlnaHQKKyAgICAgICAgICAgIHNpemUgPT0gOncgPyAic3JsdyIgOiAic3JsIgorICAgICAg
ICB3aGVuIDphcmlnaHQKKyAgICAgICAgICAgIHNpemUgPT0gOncgPyAic3JhdyIgOiAic3JhIgor
ICAgICAgICBlbHNlCisgICAgICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgc2hpZnQgdHlwZSIK
KyAgICAgICAgZW5kCisgICAgZW5kCisKKyAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3Bl
cmFuZHMpCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAgICAgJGFzbS5w
dXRzICIje3NoaWZ0SW5zdHJ1Y3Rpb24oc2l6ZSwgc2hpZnQpfSAje29wZXJhbmRzWzFdLnJpc2N2
NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0u
cmlzY3Y2NE9wZXJhbmR9IgorICAgIHdoZW4gW0ltbWVkaWF0ZSwgUmVnaXN0ZXJJRF0KKyAgICAg
ICAgJGFzbS5wdXRzICJsaSB4MzEsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAg
ICAgICAkYXNtLnB1dHMgIiN7c2hpZnRJbnN0cnVjdGlvbihzaXplLCBzaGlmdCl9ICN7b3BlcmFu
ZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgeDMx
IgorICAgIGVsc2UKKyAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJh
bmRzKQorICAgIGVuZAorCisgICAgaWYgc2l6ZSA9PSA6dworICAgICAgICAkYXNtLnB1dHMgImxp
IHgzMSwgMHhmZmZmZmZmZiIKKyAgICAgICAgJGFzbS5wdXRzICJhbmQgI3tvcGVyYW5kc1sxXS5y
aXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEiCisgICAg
ZW5kCitlbmQKKworZGVmIHJpc2N2NjRFbWl0RlBMb2FkKG9wZXJhbmRzLCBsb2FkSW5zdHJ1Y3Rp
b24pCisgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgIHdoZW4gW0Fk
ZHJlc3MsIEZQUmVnaXN0ZXJJRF0KKyAgICAgICAgaWYgb3BlcmFuZHNbMF0ucmlzY3Y2NFJlcXVp
cmVzTG9hZAorICAgICAgICAgICAgb3BlcmFuZHNbMF0ucmlzY3Y2NExvYWQKKyAgICAgICAgICAg
ICRhc20ucHV0cyAiI3tsb2FkSW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJh
bmR9LCAwKHgzMSkiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tsb2Fk
SW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBd
LnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZW5kCisgICAgd2hlbiBbQmFzZUluZGV4LCBGUFJl
Z2lzdGVySURdCisgICAgICAgIG9wZXJhbmRzWzBdLnJpc2N2NjRMb2FkCisgICAgICAgICRhc20u
cHV0cyAiI3tsb2FkSW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAw
KHgzMSkiCisgICAgZWxzZQorICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMo
b3BlcmFuZHMpCisgICAgZW5kCitlbmQKKworZGVmIHJpc2N2NjRFbWl0RlBTdG9yZShvcGVyYW5k
cywgc3RvcmVJbnN0cnVjdGlvbikKKyAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFu
ZHMpCisgICAgd2hlbiBbRlBSZWdpc3RlcklELCBBZGRyZXNzXQorICAgICAgICBpZiBvcGVyYW5k
c1sxXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICBvcGVyYW5kc1sxXS5yaXNjdjY0
TG9hZAorICAgICAgICAgICAgJGFzbS5wdXRzICIje3N0b3JlSW5zdHJ1Y3Rpb259ICN7b3BlcmFu
ZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAwKHgzMSkiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAg
ICRhc20ucHV0cyAiI3tzdG9yZUluc3RydWN0aW9ufSAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVy
YW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVuZAorICAgIHdo
ZW4gW0ZQUmVnaXN0ZXJJRCwgQmFzZUluZGV4XQorICAgICAgICBvcGVyYW5kc1sxXS5yaXNjdjY0
TG9hZAorICAgICAgICAkYXNtLnB1dHMgIiN7c3RvcmVJbnN0cnVjdGlvbn0gI3tvcGVyYW5kc1sw
XS5yaXNjdjY0T3BlcmFuZH0sIDAoeDMxKSIKKyAgICBlbHNlCisgICAgICAgIHJpc2N2NjRSYWlz
ZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2
NEVtaXRGUE9wZXJhdGlvbihvcGVyYW5kcywgb3BlcmF0aW9uKQorICAgIGNhc2UgcmlzY3Y2NE9w
ZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICB3aGVuIFtGUFJlZ2lzdGVySUQsIEZQUmVnaXN0ZXJJ
RCwgRlBSZWdpc3RlcklEXQorICAgICAgICAkYXNtLnB1dHMgIiN7b3BlcmF0aW9ufSAje29wZXJh
bmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sICN7
b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgIHdoZW4gW0ZQUmVnaXN0ZXJJRCwgRlBS
ZWdpc3RlcklEXQorICAgICAgICAkYXNtLnB1dHMgIiN7b3BlcmF0aW9ufSAje29wZXJhbmRzWzFd
LnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgZWxz
ZQorICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAg
ZW5kCitlbmQKKworZGVmIHJpc2N2NjRFbWl0RlBDb21wYXJlKG9wZXJhbmRzLCBwcmVjaXNpb24s
IGNvbmRpdGlvbikKKyAgICBkZWYgc3VmZml4Rm9yUHJlY2lzaW9uKHByZWNpc2lvbikKKyAgICAg
ICAgY2FzZSBwcmVjaXNpb24KKyAgICAgICAgd2hlbiA6cworICAgICAgICAgICAgInMiCisgICAg
ICAgIHdoZW4gOmQKKyAgICAgICAgICAgICJkIgorICAgICAgICBlbHNlCisgICAgICAgICAgICBy
YWlzZSAiVW5zdXBwb3J0ZWQgcHJlY2lzaW9uIgorICAgICAgICBlbmQKKyAgICBlbmQKKworICAg
IGRlZiBpbnN0cnVjdGlvbkZvckNvbmRpdGlvbihjb25kaXRpb24sIHByZWNpc2lvbikKKyAgICAg
ICAgc3VmZml4ID0gc3VmZml4Rm9yUHJlY2lzaW9uKHByZWNpc2lvbikKKyAgICAgICAgY2FzZSBj
b25kaXRpb24KKyAgICAgICAgd2hlbiA6ZXEsIDpuZXEKKyAgICAgICAgICAgICJmZXEuI3tzdWZm
aXh9IgorICAgICAgICB3aGVuIDpsdCwgOmd0CisgICAgICAgICAgICAiZmx0LiN7c3VmZml4fSIK
KyAgICAgICAgd2hlbiA6bHRlcSwgOmd0ZXEKKyAgICAgICAgICAgICJmbGUuI3tzdWZmaXh9Igor
ICAgICAgICBlbHNlCisgICAgICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgY29uZGl0aW9uIgor
ICAgICAgICBlbmQKKyAgICBlbmQKKworICAgIGRlZiBzZXRGb3JDb25kaXRpb24ob3BlcmFuZHMs
IHByZWNpc2lvbiwgY29uZGl0aW9uKQorICAgICAgICBpbnN0cnVjdGlvbiA9IGluc3RydWN0aW9u
Rm9yQ29uZGl0aW9uKGNvbmRpdGlvbiwgcHJlY2lzaW9uKQorICAgICAgICBjYXNlIGNvbmRpdGlv
bgorICAgICAgICB3aGVuIDplcQorICAgICAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9u
fSAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3Bl
cmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICB3aGVuIDpuZXEK
KyAgICAgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0gI3tvcGVyYW5kc1syXS5yaXNj
djY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFd
LnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICRhc20ucHV0cyAieG9yaSAje29wZXJhbmRz
WzJdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sIDEiCisg
ICAgICAgIHdoZW4gOmx0LCA6bHRlcQorICAgICAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0
aW9ufSAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0
T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICB3aGVuIDpn
dCwgOmd0ZXEKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0gI3tvcGVyYW5k
c1syXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29w
ZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmFp
c2UgIlVuc3VwcG9ydGVkIGNvbmRpdGlvbiIKKyAgICAgICAgZW5kCisgICAgZW5kCisKKyAgICBj
YXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgd2hlbiBbRlBSZWdpc3RlcklE
LCBGUFJlZ2lzdGVySUQsIFJlZ2lzdGVySURdCisgICAgICAgIHNldEZvckNvbmRpdGlvbihvcGVy
YW5kcywgcHJlY2lzaW9uLCBjb25kaXRpb24pCisgICAgZWxzZQorICAgICAgICByaXNjdjY0UmFp
c2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgZW5kCitlbmQKKworZGVmIHJpc2N2
NjRFbWl0RlBCaXR3aXNlT3BlcmF0aW9uKG9wZXJhbmRzLCBwcmVjaXNpb24sIG9wZXJhdGlvbikK
KyAgICBkZWYgc3VmZml4Rm9yUHJlY2lzaW9uKHByZWNpc2lvbikKKyAgICAgICAgY2FzZSBwcmVj
aXNpb24KKyAgICAgICAgd2hlbiA6cworICAgICAgICAgICAgInciCisgICAgICAgIHdoZW4gOmQK
KyAgICAgICAgICAgICJkIgorICAgICAgICBlbHNlCisgICAgICAgICAgICByYWlzZSAiVW5zdXBw
b3J0ZWQgcHJlY2lzaW9uIgorICAgICAgICBlbmQKKyAgICBlbmQKKworICAgIHN1ZmZpeCA9IHN1
ZmZpeEZvclByZWNpc2lvbihwcmVjaXNpb24pCisKKyAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlw
ZXMob3BlcmFuZHMpCisgICAgd2hlbiBbRlBSZWdpc3RlcklELCBGUFJlZ2lzdGVySURdCisgICAg
ICAgICRhc20ucHV0cyAiZm12LnguI3tzdWZmaXh9IHgzMCwgI3tvcGVyYW5kc1swXS5yaXNjdjY0
T3BlcmFuZH0iCisgICAgICAgICRhc20ucHV0cyAiZm12LnguI3tzdWZmaXh9IHgzMSwgI3tvcGVy
YW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICRhc20ucHV0cyAiI3tvcGVyYXRpb259
IHgzMSwgeDMwLCB4MzEiCisgICAgICAgICRhc20ucHV0cyAiZm12LiN7c3VmZml4fS54ICN7b3Bl
cmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEiCisgICAgZWxzZQorICAgICAgICByaXNjdjY0
UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgZW5kCitlbmQKKworZGVmIHJp
c2N2NjRFbWl0RlBDb3B5KG9wZXJhbmRzLCBwcmVjaXNpb24pCisgICAgZGVmIHN1ZmZpeEZvclBy
ZWNpc2lvbihwcmVjaXNpb24pCisgICAgICAgIGNhc2UgcHJlY2lzaW9uCisgICAgICAgIHdoZW4g
OnMKKyAgICAgICAgICAgICJ3IgorICAgICAgICB3aGVuIDpkCisgICAgICAgICAgICAiZCIKKyAg
ICAgICAgZWxzZQorICAgICAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIHByZWNpc2lvbiIKKyAg
ICAgICAgZW5kCisgICAgZW5kCisKKyAgICBzdWZmaXggPSBzdWZmaXhGb3JQcmVjaXNpb24ocHJl
Y2lzaW9uKQorCisgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgIHdo
ZW4gW1JlZ2lzdGVySUQsIEZQUmVnaXN0ZXJJRF0KKyAgICAgICAgJGFzbS5wdXRzICJmbXYuI3tz
dWZmaXh9LnggI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlz
Y3Y2NE9wZXJhbmR9IgorICAgIHdoZW4gW0ZQUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAg
ICAgJGFzbS5wdXRzICJmbXYueC4je3N1ZmZpeH0gI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFu
ZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgIGVsc2UKKyAgICAgICAgcmlz
Y3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgIGVuZAorZW5kCisKK2Rl
ZiByaXNjdjY0RW1pdEZQQ29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCBwcmVjaXNp
b24sIHRlc3QpCisgICAgZGVmIHN1ZmZpeEZvclByZWNpc2lvbihwcmVjaXNpb24pCisgICAgICAg
IGNhc2UgcHJlY2lzaW9uCisgICAgICAgIHdoZW4gOnMKKyAgICAgICAgICAgICJzIgorICAgICAg
ICB3aGVuIDpkCisgICAgICAgICAgICAiZCIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmFp
c2UgIlVuc3VwcG9ydGVkIHByZWNpc2lvbiIKKyAgICAgICAgZW5kCisgICAgZW5kCisKKyAgICBk
ZWYgZW1pdEJyYW5jaEZvclVub3JkZXJlZChsaHMsIHJocywgbGFiZWwsIHByZWNpc2lvbikKKyAg
ICAgICAgc3VmZml4ID0gc3VmZml4Rm9yUHJlY2lzaW9uKHByZWNpc2lvbikKKworICAgICAgICAk
YXNtLnB1dHMgImZjbGFzcy5kIHgzMCwgI3tsaHMucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAk
YXNtLnB1dHMgImZjbGFzcy5kIHgzMSwgI3tyaHMucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAk
YXNtLnB1dHMgIm9yIHgzMSwgeDMwLCB4MzEiCisgICAgICAgICRhc20ucHV0cyAibGkgeDMwLCAw
eDMwMCIKKyAgICAgICAgJGFzbS5wdXRzICJhbmQgeDMxLCB4MzEsIHgzMCIKKyAgICAgICAgJGFz
bS5wdXRzICJibmV6IHgzMSwgI3tsYWJlbC5hc21MYWJlbH0iCisgICAgZW5kCisKKyAgICBkZWYg
ZW1pdEJyYW5jaEZvclRlc3QodGVzdCwgbGhzLCByaHMsIGJyYW5jaCwgbGFiZWwsIHByZWNpc2lv
bikKKyAgICAgICAgc3VmZml4ID0gc3VmZml4Rm9yUHJlY2lzaW9uKHByZWNpc2lvbikKKworICAg
ICAgICAkYXNtLnB1dHMgIiN7dGVzdH0uI3tzdWZmaXh9IHgzMSwgI3tsaHMucmlzY3Y2NE9wZXJh
bmR9LCAje3Jocy5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICRhc20ucHV0cyAiI3ticmFuY2h9
IHgzMSwgI3tsYWJlbC5hc21MYWJlbH0iCisgICAgZW5kCisKKyAgICBzdWZmaXggPSBzdWZmaXhG
b3JQcmVjaXNpb24ocHJlY2lzaW9uKQorCisgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9w
ZXJhbmRzKQorICAgIHdoZW4gW0ZQUmVnaXN0ZXJJRCwgRlBSZWdpc3RlcklELCBMb2NhbExhYmVs
UmVmZXJlbmNlXQorICAgICAgICBjYXNlIHRlc3QKKyAgICAgICAgd2hlbiA6ZXEKKyAgICAgICAg
ICAgIGVtaXRCcmFuY2hGb3JUZXN0KCJmZXEiLCBvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV0sICJi
bmV6Iiwgb3BlcmFuZHNbMl0sIHByZWNpc2lvbikKKyAgICAgICAgd2hlbiA6bmVxCisgICAgICAg
ICAgICBlbWl0QnJhbmNoRm9yVGVzdCgiZmVxIiwgb3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdLCAi
YmVxeiIsIG9wZXJhbmRzWzJdLCBwcmVjaXNpb24pCisgICAgICAgIHdoZW4gOmx0CisgICAgICAg
ICAgICBlbWl0QnJhbmNoRm9yVGVzdCgiZmx0Iiwgb3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdLCAi
Ym5leiIsIG9wZXJhbmRzWzJdLCBwcmVjaXNpb24pCisgICAgICAgIHdoZW4gOmx0ZXEKKyAgICAg
ICAgICAgIGVtaXRCcmFuY2hGb3JUZXN0KCJmbGUiLCBvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV0s
ICJibmV6Iiwgb3BlcmFuZHNbMl0sIHByZWNpc2lvbikKKyAgICAgICAgd2hlbiA6Z3QKKyAgICAg
ICAgICAgIGVtaXRCcmFuY2hGb3JUZXN0KCJmbHQiLCBvcGVyYW5kc1sxXSwgb3BlcmFuZHNbMF0s
ICJibmV6Iiwgb3BlcmFuZHNbMl0sIHByZWNpc2lvbikKKyAgICAgICAgd2hlbiA6Z3RlcQorICAg
ICAgICAgICAgZW1pdEJyYW5jaEZvclRlc3QoImZsZSIsIG9wZXJhbmRzWzFdLCBvcGVyYW5kc1sw
XSwgImJuZXoiLCBvcGVyYW5kc1syXSwgcHJlY2lzaW9uKQorICAgICAgICB3aGVuIDplcXVuCisg
ICAgICAgICAgICBlbWl0QnJhbmNoRm9yVW5vcmRlcmVkKG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sx
XSwgb3BlcmFuZHNbMl0sIHByZWNpc2lvbikKKyAgICAgICAgICAgIGVtaXRCcmFuY2hGb3JUZXN0
KCJmZXEiLCBvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV0sICJibmV6Iiwgb3BlcmFuZHNbMl0sIHBy
ZWNpc2lvbikKKyAgICAgICAgd2hlbiA6bmVxdW4KKyAgICAgICAgICAgIGVtaXRCcmFuY2hGb3JV
bm9yZGVyZWQob3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdLCBvcGVyYW5kc1syXSwgcHJlY2lzaW9u
KQorICAgICAgICAgICAgZW1pdEJyYW5jaEZvclRlc3QoImZlcSIsIG9wZXJhbmRzWzBdLCBvcGVy
YW5kc1sxXSwgImJlcXoiLCBvcGVyYW5kc1syXSwgcHJlY2lzaW9uKQorICAgICAgICB3aGVuIDps
dHVuCisgICAgICAgICAgICBlbWl0QnJhbmNoRm9yVW5vcmRlcmVkKG9wZXJhbmRzWzBdLCBvcGVy
YW5kc1sxXSwgb3BlcmFuZHNbMl0sIHByZWNpc2lvbikKKyAgICAgICAgICAgIGVtaXRCcmFuY2hG
b3JUZXN0KCJmbHQiLCBvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV0sICJibmV6Iiwgb3BlcmFuZHNb
Ml0sIHByZWNpc2lvbikKKyAgICAgICAgd2hlbiA6bHRlcXVuCisgICAgICAgICAgICBlbWl0QnJh
bmNoRm9yVW5vcmRlcmVkKG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSwgb3BlcmFuZHNbMl0sIHBy
ZWNpc2lvbikKKyAgICAgICAgICAgIGVtaXRCcmFuY2hGb3JUZXN0KCJmbGUiLCBvcGVyYW5kc1sw
XSwgb3BlcmFuZHNbMV0sICJibmV6Iiwgb3BlcmFuZHNbMl0sIHByZWNpc2lvbikKKyAgICAgICAg
d2hlbiA6Z3R1bgorICAgICAgICAgICAgZW1pdEJyYW5jaEZvclVub3JkZXJlZChvcGVyYW5kc1sw
XSwgb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzJdLCBwcmVjaXNpb24pCisgICAgICAgICAgICBlbWl0
QnJhbmNoRm9yVGVzdCgiZmx0Iiwgb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzBdLCAiYm5leiIsIG9w
ZXJhbmRzWzJdLCBwcmVjaXNpb24pCisgICAgICAgIHdoZW4gOmd0ZXF1bgorICAgICAgICAgICAg
ZW1pdEJyYW5jaEZvclVub3JkZXJlZChvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV0sIG9wZXJhbmRz
WzJdLCBwcmVjaXNpb24pCisgICAgICAgICAgICBlbWl0QnJhbmNoRm9yVGVzdCgiZmxlIiwgb3Bl
cmFuZHNbMV0sIG9wZXJhbmRzWzBdLCAiYm5leiIsIG9wZXJhbmRzWzJdLCBwcmVjaXNpb24pCisg
ICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCB0ZXN0IgorICAgICAg
ICBlbmQKKyAgICBlbHNlCisgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhv
cGVyYW5kcykKKyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NEVtaXRGUFJvdW5kT3BlcmF0aW9u
KG9wZXJhbmRzLCBwcmVjaXNpb24sIHJvdW5kaW5nTW9kZSkKKyAgICBkZWYgaW50U3VmZml4Rm9y
UHJlY2lzaW9uKHByZWNpc2lvbikKKyAgICAgICAgY2FzZSBwcmVjaXNpb24KKyAgICAgICAgd2hl
biA6cworICAgICAgICAgICAgInciCisgICAgICAgIHdoZW4gOmQKKyAgICAgICAgICAgICJsIgor
ICAgICAgICBlbHNlCisgICAgICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgcHJlY2lzaW9uIgor
ICAgICAgICBlbmQKKyAgICBlbmQKKworICAgIGRlZiBmcFN1ZmZpeEZvclByZWNpc2lvbihwcmVj
aXNpb24pCisgICAgICAgIGNhc2UgcHJlY2lzaW9uCisgICAgICAgIHdoZW4gOnMKKyAgICAgICAg
ICAgICJzIgorICAgICAgICB3aGVuIDpkCisgICAgICAgICAgICAiZCIKKyAgICAgICAgZWxzZQor
ICAgICAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIHByZWNpc2lvbiIKKyAgICAgICAgZW5kCisg
ICAgZW5kCisKKyAgICBpbnRTdWZmaXggPSBpbnRTdWZmaXhGb3JQcmVjaXNpb24ocHJlY2lzaW9u
KQorICAgIGZwU3VmZml4ID0gZnBTdWZmaXhGb3JQcmVjaXNpb24ocHJlY2lzaW9uKQorCisgICAg
Y2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgIHdoZW4gW0ZQUmVnaXN0ZXJJ
RCwgRlBSZWdpc3RlcklEXQorICAgICAgICAkYXNtLnB1dHMgImZjdnQuI3tpbnRTdWZmaXh9LiN7
ZnBTdWZmaXh9IHgzMSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sICN7cm91bmRpbmdN
b2RlfSIKKyAgICAgICAgJGFzbS5wdXRzICJmY3Z0LiN7ZnBTdWZmaXh9LiN7aW50U3VmZml4fSAj
e29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgeDMxLCAje3JvdW5kaW5nTW9kZX0iCisgICAg
ZWxzZQorICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisg
ICAgZW5kCitlbmQKKworZGVmIHJpc2N2NjRFbWl0RlBDb252ZXJ0T3BlcmF0aW9uKG9wZXJhbmRz
LCBmcm9tVHlwZSwgdG9UeXBlLCByb3VuZGluZ01vZGUpCisgICAgZGVmIGludFN1ZmZpeEZvclR5
cGUodHlwZSkKKyAgICAgICAgY2FzZSB0eXBlCisgICAgICAgIHdoZW4gOncKKyAgICAgICAgICAg
ICJ3IgorICAgICAgICB3aGVuIDp3dQorICAgICAgICAgICAgInd1IgorICAgICAgICB3aGVuIDps
CisgICAgICAgICAgICAibCIKKyAgICAgICAgd2hlbiA6bHUKKyAgICAgICAgICAgICJsdSIKKyAg
ICAgICAgZWxzZQorICAgICAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIHByZWNpc2lvbiIKKyAg
ICAgICAgZW5kCisgICAgZW5kCisKKyAgICBkZWYgZnBTdWZmaXhGb3JUeXBlKHR5cGUpCisgICAg
ICAgIGNhc2UgdHlwZQorICAgICAgICB3aGVuIDpzCisgICAgICAgICAgICAicyIKKyAgICAgICAg
d2hlbiA6ZAorICAgICAgICAgICAgImQiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJhaXNl
ICJVbnN1cHBvcnRlZCBwcmVjaXNpb24iCisgICAgICAgIGVuZAorICAgIGVuZAorCisgICAgY2Fz
ZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgIHdoZW4gW0ZQUmVnaXN0ZXJJRCwg
UmVnaXN0ZXJJRF0KKyAgICAgICAgZnBTdWZmaXggPSBmcFN1ZmZpeEZvclR5cGUoZnJvbVR5cGUp
CisgICAgICAgIGludFN1ZmZpeCA9IGludFN1ZmZpeEZvclR5cGUodG9UeXBlKQorCisgICAgICAg
ICRhc20ucHV0cyAiZmN2dC4je2ludFN1ZmZpeH0uI3tmcFN1ZmZpeH0gI3tvcGVyYW5kc1sxXS5y
aXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAje3JvdW5kaW5n
TW9kZX0iCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgRlBSZWdpc3RlcklEXQorICAgICAgICByYWlz
ZSAiVW5zdXBwb3J0ZWQgcm91bmRpbmcgbW9kZSIgdW5sZXNzIHJvdW5kaW5nTW9kZSA9PSA6bm9u
ZQorICAgICAgICBpbnRTdWZmaXggPSBpbnRTdWZmaXhGb3JUeXBlKGZyb21UeXBlKQorICAgICAg
ICBmcFN1ZmZpeCA9IGZwU3VmZml4Rm9yVHlwZSh0b1R5cGUpCisKKyAgICAgICAgJGFzbS5wdXRz
ICJmY3Z0LiN7ZnBTdWZmaXh9LiN7aW50U3VmZml4fSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVy
YW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgd2hlbiBbRlBSZWdpc3Rl
cklELCBGUFJlZ2lzdGVySURdCisgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCByb3VuZGluZyBt
b2RlIiB1bmxlc3Mgcm91bmRpbmdNb2RlID09IDpub25lCisgICAgICAgIGZwRnJvbVN1ZmZpeCA9
IGZwU3VmZml4Rm9yVHlwZShmcm9tVHlwZSkKKyAgICAgICAgZnBUb1N1ZmZpeCA9IGZwU3VmZml4
Rm9yVHlwZSh0b1R5cGUpCisKKyAgICAgICAgJGFzbS5wdXRzICJmY3Z0LiN7ZnBUb1N1ZmZpeH0u
I3tmcEZyb21TdWZmaXh9ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRz
WzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICBlbHNlCisgICAgICAgIHJpc2N2NjRSYWlzZU1pc21h
dGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICBlbmQKK2VuZAorCitjbGFzcyBSZWdpc3RlcklE
CisgICAgZGVmIHJpc2N2NjRPcGVyYW5kCisgICAgICAgIGNhc2UgQG5hbWUKKyAgICAgICAgd2hl
biAndDAnLCAnYTAnLCAnd2EwJywgJ3IwJworICAgICAgICAgICAgJ3gxMCcKKyAgICAgICAgd2hl
biAndDEnLCAnYTEnLCAnd2ExJywgJ3IxJworICAgICAgICAgICAgJ3gxMScKKyAgICAgICAgd2hl
biAndDInLCAnYTInLCAnd2EyJworICAgICAgICAgICAgJ3gxMicKKyAgICAgICAgd2hlbiAndDMn
LCAnYTMnLCAnd2EzJworICAgICAgICAgICAgJ3gxMycKKyAgICAgICAgd2hlbiAndDQnLCAnYTQn
LCAnd2E0JworICAgICAgICAgICAgJ3gxNCcKKyAgICAgICAgd2hlbiAndDUnLCAnYTUnLCAnd2E1
JworICAgICAgICAgICAgJ3gxNScKKyAgICAgICAgd2hlbiAndDYnLCAnYTYnLCAnd2E2JworICAg
ICAgICAgICAgJ3gxNicKKyAgICAgICAgd2hlbiAndDcnLCAnYTcnLCAnd2E3JworICAgICAgICAg
ICAgJ3gxNycKKyAgICAgICAgd2hlbiAndDgnCisgICAgICAgICAgICAneDUnCisgICAgICAgIHdo
ZW4gJ3Q5JywgJ3dzMCcKKyAgICAgICAgICAgICd4NicKKyAgICAgICAgd2hlbiAndDEwJywgJ3dz
MScKKyAgICAgICAgICAgICd4NycKKyAgICAgICAgd2hlbiAndDExJworICAgICAgICAgICAgJ3gy
OCcKKyAgICAgICAgd2hlbiAndDEyJworICAgICAgICAgICAgJ3gyOScKKyAgICAgICAgd2hlbiAn
dDEzJworICAgICAgICAgICAgJ3gzMCcKKyAgICAgICAgd2hlbiAndDE0JworICAgICAgICAgICAg
J3gzMScKKyAgICAgICAgd2hlbiAnY3NyMCcKKyAgICAgICAgICAgICd4OScKKyAgICAgICAgd2hl
biAnY3NyMScKKyAgICAgICAgICAgICd4MTgnCisgICAgICAgIHdoZW4gJ2NzcjInCisgICAgICAg
ICAgICAneDE5JworICAgICAgICB3aGVuICdjc3IzJworICAgICAgICAgICAgJ3gyMCcKKyAgICAg
ICAgd2hlbiAnY3NyNCcKKyAgICAgICAgICAgICd4MjEnCisgICAgICAgIHdoZW4gJ2NzcjUnCisg
ICAgICAgICAgICAneDIyJworICAgICAgICB3aGVuICdjc3I2JworICAgICAgICAgICAgJ3gyMycK
KyAgICAgICAgd2hlbiAnY3NyNycKKyAgICAgICAgICAgICd4MjQnCisgICAgICAgIHdoZW4gJ2Nz
cjgnCisgICAgICAgICAgICAneDI1JworICAgICAgICB3aGVuICdjc3I5JworICAgICAgICAgICAg
J3gyNicKKyAgICAgICAgd2hlbiAnY3NyMTAnCisgICAgICAgICAgICAneDI3JworICAgICAgICB3
aGVuICdscicKKyAgICAgICAgICAgICdyYScKKyAgICAgICAgd2hlbiAnc3AnCisgICAgICAgICAg
ICAnc3AnCisgICAgICAgIHdoZW4gJ2NmcicKKyAgICAgICAgICAgICdmcCcKKyAgICAgICAgZWxz
ZQorICAgICAgICAgICAgcmFpc2UgIkJhZCByZWdpc3RlciBuYW1lICN7QG5hbWV9IGF0ICN7Y29k
ZU9yaWdpblN0cmluZ30iCisgICAgICAgIGVuZAorICAgIGVuZAorZW5kCisKK2NsYXNzIEZQUmVn
aXN0ZXJJRAorICAgIGRlZiByaXNjdjY0T3BlcmFuZAorICAgICAgICBjYXNlIEBuYW1lCisgICAg
ICAgIHdoZW4gJ2Z0MCcKKyAgICAgICAgICAgICdmMCcKKyAgICAgICAgd2hlbiAnZnQxJworICAg
ICAgICAgICAgJ2YxJworICAgICAgICB3aGVuICdmdDInCisgICAgICAgICAgICAnZjInCisgICAg
ICAgIHdoZW4gJ2Z0MycKKyAgICAgICAgICAgICdmMycKKyAgICAgICAgd2hlbiAnZnQ0JworICAg
ICAgICAgICAgJ2Y0JworICAgICAgICB3aGVuICdmdDUnCisgICAgICAgICAgICAnZjUnCisgICAg
ICAgIHdoZW4gJ2Z0NicKKyAgICAgICAgICAgICdmNicKKyAgICAgICAgd2hlbiAnZnQ3JworICAg
ICAgICAgICAgJ2Y3JworICAgICAgICB3aGVuICdjc2ZyMCcKKyAgICAgICAgICAgICdmOCcKKyAg
ICAgICAgd2hlbiAnY3NmcjEnCisgICAgICAgICAgICAnZjknCisgICAgICAgIHdoZW4gJ2ZhMCcs
ICd3ZmEwJworICAgICAgICAgICAgJ2YxMCcKKyAgICAgICAgd2hlbiAnZmExJywgJ3dmYTEnCisg
ICAgICAgICAgICAnZjExJworICAgICAgICB3aGVuICdmYTInLCAnd2ZhMicKKyAgICAgICAgICAg
ICdmMTInCisgICAgICAgIHdoZW4gJ2ZhMycsICd3ZmEzJworICAgICAgICAgICAgJ2YxMycKKyAg
ICAgICAgd2hlbiAnZmE0JywgJ3dmYTQnCisgICAgICAgICAgICAnZjE0JworICAgICAgICB3aGVu
ICdmYTUnLCAnd2ZhNScKKyAgICAgICAgICAgICdmMTUnCisgICAgICAgIHdoZW4gJ2ZhNicsICd3
ZmE2JworICAgICAgICAgICAgJ2YxNicKKyAgICAgICAgd2hlbiAnZmE3JywgJ3dmYTcnCisgICAg
ICAgICAgICAnZjE3JworICAgICAgICB3aGVuICdjc2ZyMicKKyAgICAgICAgICAgICdmMTgnCisg
ICAgICAgIHdoZW4gJ2NzZnIzJworICAgICAgICAgICAgJ2YxOScKKyAgICAgICAgd2hlbiAnY3Nm
cjQnCisgICAgICAgICAgICAnZjIwJworICAgICAgICB3aGVuICdjc2ZyNScKKyAgICAgICAgICAg
ICdmMjEnCisgICAgICAgIHdoZW4gJ2NzZnI2JworICAgICAgICAgICAgJ2YyMicKKyAgICAgICAg
d2hlbiAnY3NmcjcnCisgICAgICAgICAgICAnZjIzJworICAgICAgICB3aGVuICdjc2ZyOCcKKyAg
ICAgICAgICAgICdmMjQnCisgICAgICAgIHdoZW4gJ2NzZnI5JworICAgICAgICAgICAgJ2YyNScK
KyAgICAgICAgd2hlbiAnY3NmcjEwJworICAgICAgICAgICAgJ2YyNicKKyAgICAgICAgd2hlbiAn
Y3NmcjExJworICAgICAgICAgICAgJ2YyNycKKyAgICAgICAgd2hlbiAnZnQ4JworICAgICAgICAg
ICAgJ2YyOCcKKyAgICAgICAgd2hlbiAnZnQ5JworICAgICAgICAgICAgJ2YyOScKKyAgICAgICAg
d2hlbiAnZnQxMCcKKyAgICAgICAgICAgICdmMzAnCisgICAgICAgIHdoZW4gJ2Z0MTEnCisgICAg
ICAgICAgICAnZjMxJworICAgICAgICBlbHNlCisgICAgICAgICAgICByYWlzZSAiQmFkIHJlZ2lz
dGVyIG5hbWUgI3tAbmFtZX0gYXQgI3tjb2RlT3JpZ2luU3RyaW5nfSIKKyAgICAgICAgZW5kCisg
ICAgZW5kCitlbmQKKworY2xhc3MgSW1tZWRpYXRlCisgICAgZGVmIHJpc2N2NjRPcGVyYW5kCisg
ICAgICAgICIje3ZhbHVlfSIKKyAgICBlbmQKKworICAgIGRlZiByaXNjdjY0UmVxdWlyZXNMb2Fk
CisgICAgICAgIHZhbHVlID4gMHg3ZmYgb3IgdmFsdWUgPCAtMHg4MDAKKyAgICBlbmQKKworICAg
IGRlZiByaXNjdjY0TG9hZAorICAgICAgICAkYXNtLnB1dHMgImxpIHgzMSwgI3t2YWx1ZX0iCisg
ICAgZW5kCitlbmQKKworY2xhc3MgQWRkcmVzcworICAgIGRlZiByaXNjdjY0T3BlcmFuZAorICAg
ICAgICByYWlzZSAiSW52YWxpZCBvZmZzZXQgI3tvZmZzZXQudmFsdWV9IGF0ICN7Y29kZU9yaWdp
blN0cmluZ30iIGlmIG9mZnNldC52YWx1ZSA+IDB4N2ZmIG9yIG9mZnNldC52YWx1ZSA8IC0weDgw
MAorICAgICAgICAiI3tvZmZzZXQudmFsdWV9KCN7YmFzZS5yaXNjdjY0T3BlcmFuZH0pIgorICAg
IGVuZAorCisgICAgZGVmIHJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgb2Zmc2V0LnZhbHVl
ID4gMHg3ZmYgb3Igb2Zmc2V0LnZhbHVlIDwgLTB4ODAwCisgICAgZW5kCisKKyAgICBkZWYgcmlz
Y3Y2NExvYWQKKyAgICAgICAgJGFzbS5wdXRzICJsaSB4MzEsICN7b2Zmc2V0LnZhbHVlfSIKKyAg
ICAgICAgJGFzbS5wdXRzICJhZGQgeDMxLCAje2Jhc2UucmlzY3Y2NE9wZXJhbmR9LCB4MzEiCisg
ICAgZW5kCitlbmQKKworY2xhc3MgQmFzZUluZGV4CisgICAgZGVmIHJpc2N2NjRMb2FkCisgICAg
ICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhbIGJhc2UsIGluZGV4IF0pCisgICAgICAgIHdo
ZW4gW1JlZ2lzdGVySUQsIFJlZ2lzdGVySURdCisgICAgICAgICAgICAkYXNtLnB1dHMgInNsbGkg
eDMxLCAje2luZGV4LnJpc2N2NjRPcGVyYW5kfSwgI3tzY2FsZVNoaWZ0fSIKKyAgICAgICAgICAg
ICRhc20ucHV0cyAiYWRkIHgzMSwgI3tiYXNlLnJpc2N2NjRPcGVyYW5kfSwgeDMxIgorICAgICAg
ICAgICAgaWYgb2Zmc2V0LnZhbHVlICE9IDAKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImxp
IHgzMCwgI3tvZmZzZXQudmFsdWV9IgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYWRkIHgz
MSwgeDMxLCB4MzAiCisgICAgICAgICAgICBlbmQKKyAgICAgICAgZWxzZQorICAgICAgICAgICAg
cmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKFtiYXNlLCBpbmRleF0pCisgICAgICAgIGVu
ZAorICAgIGVuZAorZW5kCisKK2NsYXNzIEluc3RydWN0aW9uCisgICAgZGVmIGxvd2VyUklTQ1Y2
NAorICAgICAgICBjYXNlIG9wY29kZQorICAgICAgICB3aGVuICJhZGRpIgorICAgICAgICAgICAg
Y2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgICAgICAgICAgd2hlbiBbUmVn
aXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImFkZHcgI3tv
cGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9
LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICAkYXNtLnB1
dHMgImxpIHgzMSwgMHhmZmZmZmZmZiIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImFuZCAj
e29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFu
ZH0sIHgzMSIKKyAgICAgICAgICAgIHdoZW4gW1JlZ2lzdGVySUQsIFJlZ2lzdGVySUQsIFJlZ2lz
dGVySURdCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJhZGR3ICN7b3BlcmFuZHNbMl0ucmlz
Y3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sx
XS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJsaSB4MzEsIDB4
ZmZmZmZmZmYiCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJhbmQgI3tvcGVyYW5kc1syXS5y
aXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEiCisgICAg
ICAgICAgICB3aGVuIFtJbW1lZGlhdGUsIFJlZ2lzdGVySURdCisgICAgICAgICAgICAgICAgaWYg
b3BlcmFuZHNbMF0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgICAgICAgICBvcGVy
YW5kc1swXS5yaXNjdjY0TG9hZAorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImFkZHcg
I3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJh
bmR9LCB4MzEiCisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICAkYXNt
LnB1dHMgImFkZGl3ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFd
LnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAg
ICAgICAgICAgZW5kCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJsaSB4MzEsIDB4ZmZmZmZm
ZmYiCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJhbmQgI3tvcGVyYW5kc1sxXS5yaXNjdjY0
T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEiCisgICAgICAgICAg
ICB3aGVuIFtJbW1lZGlhdGUsIFJlZ2lzdGVySUQsIFJlZ2lzdGVySURdCisgICAgICAgICAgICAg
ICAgaWYgb3BlcmFuZHNbMF0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgICAgICAg
ICBvcGVyYW5kc1swXS5yaXNjdjY0TG9hZAorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMg
ImFkZHcgI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2
NE9wZXJhbmR9LCB4MzEiCisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAg
ICAkYXNtLnB1dHMgImFkZGl3ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJh
bmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisg
ICAgICAgICAgICAgICAgZW5kCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJsaSB4MzEsIDB4
ZmZmZmZmZmYiCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJhbmQgI3tvcGVyYW5kc1syXS5y
aXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEiCisgICAg
ICAgICAgICB3aGVuIFtJbW1lZGlhdGUsIEFkZHJlc3NdCisgICAgICAgICAgICAgICAgaWYgb3Bl
cmFuZHNbMV0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgICAgICAgICBvcGVyYW5k
c1sxXS5yaXNjdjY0TG9hZAorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImx3IHgzMCwg
MCh4MzEpIgorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImFkZGl3IHgzMCwgeDMwLCAj
e29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICAgICAgJGFzbS5w
dXRzICJzdyB4MzAsIDB4KDMxKSIKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAg
ICAgICAgICRhc20ucHV0cyAibHcgeDMxLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIK
KyAgICAgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJhZGRpdyB4MzEsIHgzMSwgI3tvcGVyYW5k
c1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgICAgICRhc20ucHV0cyAic3cg
eDMxLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICBlbmQK
KyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVk
T3BlcmFuZHMob3BlcmFuZHMpCisgICAgICAgICAgICBlbmQKKyAgICAgICAgd2hlbiAiYWRkcCIs
ICJhZGRxIgorICAgICAgICAgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQor
ICAgICAgICAgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAgICAgICAgICAg
ICAkYXNtLnB1dHMgImFkZCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5k
c1swXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAg
ICAgICAgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAg
ICAgICAgICAgICAkYXNtLnB1dHMgImFkZCAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwg
I3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJh
bmR9IgorICAgICAgICAgICAgd2hlbiBbSW1tZWRpYXRlLCBSZWdpc3RlcklEXQorICAgICAgICAg
ICAgICAgIGlmIG9wZXJhbmRzWzBdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAgICAg
ICAgICAgb3BlcmFuZHNbMF0ucmlzY3Y2NExvYWQKKyAgICAgICAgICAgICAgICAgICAgJGFzbS5w
dXRzICJhZGQgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlz
Y3Y2NE9wZXJhbmR9LCB4MzEiCisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAg
ICAgICAkYXNtLnB1dHMgImFkZGkgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3Bl
cmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIK
KyAgICAgICAgICAgICAgICBlbmQKKyAgICAgICAgICAgIHdoZW4gW0ltbWVkaWF0ZSwgUmVnaXN0
ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAgICAgICAgICAgICBpZiBvcGVyYW5kc1swXS5yaXNjdjY0
UmVxdWlyZXNMb2FkCisgICAgICAgICAgICAgICAgICAgIG9wZXJhbmRzWzBdLnJpc2N2NjRMb2Fk
CisgICAgICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYWRkICN7b3BlcmFuZHNbMl0ucmlzY3Y2
NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgeDMxIgorICAgICAgICAg
ICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJhZGRpICN7b3BlcmFu
ZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tv
cGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgZW5kCisgICAgICAg
ICAgICB3aGVuIFtJbW1lZGlhdGUsIEFkZHJlc3NdCisgICAgICAgICAgICAgICAgaWYgb3BlcmFu
ZHNbMV0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgICAgICAgICBvcGVyYW5kc1sx
XS5yaXNjdjY0TG9hZAorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImxkIHgzMCwgMCh4
MzEpIgorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImFkZGkgeDMwLCB4MzAsICN7b3Bl
cmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMg
InNkIHgzMCwgMHgoMzEpIgorICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAg
ICAgJGFzbS5wdXRzICJsZCB4MzEsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAg
ICAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImFkZGkgeDMxLCB4MzEsICN7b3BlcmFuZHNbMF0u
cmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMgInNkIHgzMSwg
I3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgZW5kCisgICAg
ICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJh
bmRzKG9wZXJhbmRzKQorICAgICAgICAgICAgZW5kCisgICAgICAgIHdoZW4gImFkZGlzIgorICAg
ICAgICAgICAgcmlzY3Y2NFJhaXNlVW5zdXBwb3J0ZWQKKyAgICAgICAgd2hlbiAiYWRkcHMiCisg
ICAgICAgICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3aGVuICJhbmRpIgor
ICAgICAgICAgICAgcmlzY3Y2NEVtaXRMb2dpY2FsT3BlcmF0aW9uKG9wZXJhbmRzLCA6dywgOmFu
ZCkKKyAgICAgICAgd2hlbiAiYW5kcCIsICJhbmRxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRM
b2dpY2FsT3BlcmF0aW9uKG9wZXJhbmRzLCA6ZCwgOmFuZCkKKyAgICAgICAgd2hlbiAib3JoIgor
ICAgICAgICAgICAgcmlzY3Y2NEVtaXRMb2dpY2FsT3BlcmF0aW9uKG9wZXJhbmRzLCA6aCwgOm9y
KQorICAgICAgICB3aGVuICJvcmkiCisgICAgICAgICAgICByaXNjdjY0RW1pdExvZ2ljYWxPcGVy
YXRpb24ob3BlcmFuZHMsIDp3LCA6b3IpCisgICAgICAgIHdoZW4gIm9ycCIsICJvcnEiCisgICAg
ICAgICAgICByaXNjdjY0RW1pdExvZ2ljYWxPcGVyYXRpb24ob3BlcmFuZHMsIDpkLCA6b3IpCisg
ICAgICAgIHdoZW4gInhvcmkiCisgICAgICAgICAgICByaXNjdjY0RW1pdExvZ2ljYWxPcGVyYXRp
b24ob3BlcmFuZHMsIDp3LCA6eG9yKQorICAgICAgICB3aGVuICJ4b3JwIiwgInhvcnEiCisgICAg
ICAgICAgICByaXNjdjY0RW1pdExvZ2ljYWxPcGVyYXRpb24ob3BlcmFuZHMsIDpkLCA6eG9yKQor
ICAgICAgICB3aGVuICJsc2hpZnRpIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRTaGlmdChvcGVy
YW5kcywgOncsIDpsbGVmdCkKKyAgICAgICAgd2hlbiAibHNoaWZ0cCIsICJsc2hpZnRxIgorICAg
ICAgICAgICAgcmlzY3Y2NEVtaXRTaGlmdChvcGVyYW5kcywgOmQsIDpsbGVmdCkKKyAgICAgICAg
d2hlbiAicnNoaWZ0aSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0U2hpZnQob3BlcmFuZHMsIDp3
LCA6YXJpZ2h0KQorICAgICAgICB3aGVuICJyc2hpZnRwIiwgInJzaGlmdHEiCisgICAgICAgICAg
ICByaXNjdjY0RW1pdFNoaWZ0KG9wZXJhbmRzLCA6ZCwgOmFyaWdodCkKKyAgICAgICAgd2hlbiAi
dXJzaGlmdGkiCisgICAgICAgICAgICByaXNjdjY0RW1pdFNoaWZ0KG9wZXJhbmRzLCA6dywgOmxy
aWdodCkKKyAgICAgICAgd2hlbiAidXJzaGlmdHAiLCAidXJzaGlmdHEiCisgICAgICAgICAgICBy
aXNjdjY0RW1pdFNoaWZ0KG9wZXJhbmRzLCA6ZCwgOmxyaWdodCkKKyAgICAgICAgd2hlbiAibXVs
aSIKKyAgICAgICAgICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICAg
ICAgICAgIHdoZW4gW1JlZ2lzdGVySUQsIFJlZ2lzdGVySURdCisgICAgICAgICAgICAgICAgJGFz
bS5wdXRzICJtdWx3ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBd
LnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAg
ICAgICB3aGVuIFtJbW1lZGlhdGUsIFJlZ2lzdGVySURdCisgICAgICAgICAgICAgICAgaWYgb3Bl
cmFuZHNbMF0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgICAgICAgICBvcGVyYW5k
c1swXS5yaXNjdjY0TG9hZAorICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAg
ICAgJGFzbS5wdXRzICJsaSB4MzEsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAg
ICAgICAgICAgICAgIGVuZAorICAgICAgICAgICAgICAgICRhc20ucHV0cyAibXVsdyAje29wZXJh
bmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgeDMxLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5k
fSIKKyAgICAgICAgICAgIHdoZW4gW0ltbWVkaWF0ZSwgUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0K
KyAgICAgICAgICAgICAgICBpZiBvcGVyYW5kc1swXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAg
ICAgICAgICAgICAgICAgIG9wZXJhbmRzWzBdLnJpc2N2NjRMb2FkCisgICAgICAgICAgICAgICAg
ZWxzZQorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImxpIHgzMSwgI3tvcGVyYW5kc1sw
XS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgZW5kCisgICAgICAgICAgICAgICAg
JGFzbS5wdXRzICJtdWx3ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEsICN7b3Bl
cmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAg
ICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICAgICAgICAg
IGVuZAorICAgICAgICB3aGVuICJtdWxwIiwgIm11bHEiCisgICAgICAgICAgICBjYXNlIHJpc2N2
NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgICAgICAgICB3aGVuIFtSZWdpc3RlcklELCBS
ZWdpc3RlcklEXQorICAgICAgICAgICAgICAgICRhc20ucHV0cyAibXVsICN7b3BlcmFuZHNbMV0u
cmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5k
c1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICB3aGVuIFtJbW1lZGlhdGUsIFJlZ2lz
dGVySURdCisgICAgICAgICAgICAgICAgaWYgb3BlcmFuZHNbMF0ucmlzY3Y2NFJlcXVpcmVzTG9h
ZAorICAgICAgICAgICAgICAgICAgICBvcGVyYW5kc1swXS5yaXNjdjY0TG9hZAorICAgICAgICAg
ICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJsaSB4MzEsICN7b3Bl
cmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgIGVuZAorICAgICAgICAg
ICAgICAgICRhc20ucHV0cyAibXVsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEs
ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgd2hlbiBbSW1tZWRp
YXRlLCBSZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAgICAgICAgICAgICAgIGlmIG9wZXJhbmRz
WzBdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAgICAgICAgICAgb3BlcmFuZHNbMF0u
cmlzY3Y2NExvYWQKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgICRh
c20ucHV0cyAibGkgeDMxLCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAg
ICAgICAgICBlbmQKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgIm11bCAje29wZXJhbmRzWzJd
LnJpc2N2NjRPcGVyYW5kfSwgeDMxLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAg
ICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3Bl
cmFuZHMob3BlcmFuZHMpCisgICAgICAgICAgICBlbmQKKyAgICAgICAgd2hlbiAiZGl2aSIKKyAg
ICAgICAgICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICAgICAgICAg
IHdoZW4gW1JlZ2lzdGVySUQsIFJlZ2lzdGVySURdCisgICAgICAgICAgICAgICAgJGFzbS5wdXRz
ICJkaXZ1dyAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNj
djY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAg
d2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAgICAgICAgICAg
ICAkYXNtLnB1dHMgImRpdnV3ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJh
bmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisg
ICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9w
ZXJhbmRzKG9wZXJhbmRzKQorICAgICAgICAgICAgZW5kCisgICAgICAgIHdoZW4gImRpdnEiCisg
ICAgICAgICAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgICAgICAg
ICB3aGVuIFtSZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAgICAgICAgICAgICAgICRhc20ucHV0
cyAiZGl2dSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNj
djY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAg
d2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAgICAgICAgICAg
ICAkYXNtLnB1dHMgImRpdnUgI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFu
ZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAg
ICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3Bl
cmFuZHMob3BlcmFuZHMpCisgICAgICAgICAgICBlbmQKKyAgICAgICAgd2hlbiAiZGl2aXMiCisg
ICAgICAgICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3aGVuICJkaXZxcyIK
KyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAgIHdoZW4gInN1Ymki
CisgICAgICAgICAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgICAg
ICAgICB3aGVuIFtSZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAgICAgICAgICAgICAgICRhc20u
cHV0cyAic3VidyAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5y
aXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAg
ICAgd2hlbiBbSW1tZWRpYXRlLCBSZWdpc3RlcklEXQorICAgICAgICAgICAgICAgIGlmIG9wZXJh
bmRzWzBdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAgICAgICAgICAgb3BlcmFuZHNb
MF0ucmlzY3Y2NExvYWQKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAg
ICRhc20ucHV0cyAibGkgeDMxLCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAg
ICAgICAgICAgICBlbmQKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgInN1YncgI3tvcGVyYW5k
c1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEi
CisgICAgICAgICAgICB3aGVuIFtBZGRyZXNzLCBSZWdpc3RlcklEXQorICAgICAgICAgICAgICAg
IGlmIG9wZXJhbmRzWzBdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAgICAgICAgICAg
b3BlcmFuZHNbMF0ucmlzY3Y2NExvYWQKKyAgICAgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJs
dyB4MzEsIDAoeDMxKSIKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAg
ICRhc20ucHV0cyAibHcgeDMxLCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAg
ICAgICAgICAgICBlbmQKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgInN1YncgI3tvcGVyYW5k
c1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEi
CisgICAgICAgICAgICB3aGVuIFtSZWdpc3RlcklELCBSZWdpc3RlcklELCBSZWdpc3RlcklEXQor
ICAgICAgICAgICAgICAgICRhc20ucHV0cyAic3VidyAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVy
YW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2
NE9wZXJhbmR9IgorICAgICAgICAgICAgd2hlbiBbUmVnaXN0ZXJJRCwgSW1tZWRpYXRlLCBSZWdp
c3RlcklEXQorICAgICAgICAgICAgICAgIGlmIG9wZXJhbmRzWzFdLnJpc2N2NjRSZXF1aXJlc0xv
YWQKKyAgICAgICAgICAgICAgICAgICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExvYWQKKyAgICAgICAg
ICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgICRhc20ucHV0cyAibGkgeDMxLCAje29w
ZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICBlbmQKKyAgICAgICAg
ICAgICAgICAkYXNtLnB1dHMgInN1YncgI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sICN7
b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEiCisgICAgICAgICAgICBlbHNlCisgICAg
ICAgICAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAg
ICAgICAgICAgZW5kCisgICAgICAgIHdoZW4gInN1YnAiLCAic3VicSIKKyAgICAgICAgICAgIGNh
c2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICAgICAgICAgIHdoZW4gW1JlZ2lz
dGVySUQsIFJlZ2lzdGVySURdCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJzdWIgI3tvcGVy
YW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAj
e29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgIHdoZW4gW0ltbWVkaWF0
ZSwgUmVnaXN0ZXJJRF0KKyAgICAgICAgICAgICAgICBvcGVyYW5kc1swXS5yaXNjdjY0TG9hZAor
ICAgICAgICAgICAgICAgICRhc20ucHV0cyAic3ViICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJh
bmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgeDMxIgorICAgICAgICAgICAgd2hl
biBbQWRkcmVzcywgUmVnaXN0ZXJJRF0KKyAgICAgICAgICAgICAgICBpZiBvcGVyYW5kc1swXS5y
aXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICAgICAgICAgIG9wZXJhbmRzWzBdLnJpc2N2
NjRMb2FkCisgICAgICAgICAgICAgICAgICAgICRhc20ucHV0cyAibGQgeDMxLCAwKHgzMSkiCisg
ICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImxkIHgz
MSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgZW5kCisg
ICAgICAgICAgICAgICAgJGFzbS5wdXRzICJzdWIgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFu
ZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEiCisgICAgICAgICAgICB3aGVu
IFtSZWdpc3RlcklELCBSZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAgICAgICAgICAgICAgICRh
c20ucHV0cyAic3ViICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBd
LnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAg
ICAgICB3aGVuIFtSZWdpc3RlcklELCBJbW1lZGlhdGUsIFJlZ2lzdGVySURdCisgICAgICAgICAg
ICAgICAgaWYgb3BlcmFuZHNbMV0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgICAg
ICAgICBvcGVyYW5kc1sxXS5yaXNjdjY0TG9hZAorICAgICAgICAgICAgICAgIGVsc2UKKyAgICAg
ICAgICAgICAgICAgICAgJGFzbS5wdXRzICJsaSB4MzEsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9w
ZXJhbmR9IgorICAgICAgICAgICAgICAgIGVuZAorICAgICAgICAgICAgICAgICRhc20ucHV0cyAi
c3ViICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRP
cGVyYW5kfSwgeDMxIgorICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJpc2N2NjRS
YWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICAgICAgICAgIGVuZAorICAgICAg
ICB3aGVuICJzdWJpcyIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5k
cyhvcGVyYW5kcykKKyAgICAgICAgd2hlbiAibmVnaSIKKyAgICAgICAgICAgIGNhc2UgcmlzY3Y2
NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICAgICAgICAgIHdoZW4gW1JlZ2lzdGVySURdCisg
ICAgICAgICAgICAgICAgJGFzbS5wdXRzICJuZWd3ICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJh
bmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICAkYXNt
LnB1dHMgImxpIHgzMSwgMHhmZmZmZmZmZiIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImFu
ZCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3Bl
cmFuZH0sIHgzMSIKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICByaXNjdjY0UmFp
c2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgICAgICAgICBlbmQKKyAgICAgICAg
d2hlbiAibmVncCIsICJuZWdxIgorICAgICAgICAgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVz
KG9wZXJhbmRzKQorICAgICAgICAgICAgd2hlbiBbUmVnaXN0ZXJJRF0KKyAgICAgICAgICAgICAg
ICAkYXNtLnB1dHMgIm5lZyAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5k
c1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAg
cmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgICAgICAgICAgZW5k
CisgICAgICAgIHdoZW4gIm5vdGkiCisgICAgICAgICAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlw
ZXMob3BlcmFuZHMpCisgICAgICAgICAgICB3aGVuIFtSZWdpc3RlcklEXQorICAgICAgICAgICAg
ICAgICRhc20ucHV0cyAibGkgeDMxLCAweGZmZmZmZmZmIgorICAgICAgICAgICAgICAgICRhc20u
cHV0cyAieG9yICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJp
c2N2NjRPcGVyYW5kfSwgeDMxIgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYW5kICN7b3Bl
cmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwg
eDMxIgorICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJpc2N2NjRSYWlzZU1pc21h
dGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICAgICAgICAgIGVuZAorICAgICAgICB3aGVuICJu
b3RxIgorICAgICAgICAgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAg
ICAgICAgICAgd2hlbiBbUmVnaXN0ZXJJRF0KKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgIm5v
dCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3Bl
cmFuZH0iCisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgcmlzY3Y2NFJhaXNlTWlz
bWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgICAgICAgICAgZW5kCisgICAgICAgIHdoZW4g
InN0b3JlYiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0U3RvcmUob3BlcmFuZHMsIDpiKQorICAg
ICAgICB3aGVuICJzdG9yZWgiCisgICAgICAgICAgICByaXNjdjY0RW1pdFN0b3JlKG9wZXJhbmRz
LCA6aCkKKyAgICAgICAgd2hlbiAic3RvcmVpIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRTdG9y
ZShvcGVyYW5kcywgOncpCisgICAgICAgIHdoZW4gInN0b3JlcCIsICJzdG9yZXEiCisgICAgICAg
ICAgICByaXNjdjY0RW1pdFN0b3JlKG9wZXJhbmRzLCA6ZCkKKyAgICAgICAgd2hlbiAibG9hZGIi
CisgICAgICAgICAgICByaXNjdjY0RW1pdExvYWQob3BlcmFuZHMsIDpidSwgOm5vbmUpCisgICAg
ICAgIHdoZW4gImxvYWRoIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRMb2FkKG9wZXJhbmRzLCA6
aHUsIDpub25lKQorICAgICAgICB3aGVuICJsb2FkaSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0
TG9hZChvcGVyYW5kcywgOnd1LCA6bm9uZSkKKyAgICAgICAgd2hlbiAibG9hZGlzIgorICAgICAg
ICAgICAgcmlzY3Y2NEVtaXRMb2FkKG9wZXJhbmRzLCA6dywgOm5vbmUpCisgICAgICAgIHdoZW4g
ImxvYWRwIiwgImxvYWRxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRMb2FkKG9wZXJhbmRzLCA6
ZCwgOm5vbmUpCisgICAgICAgIHdoZW4gImxvYWRic2kiCisgICAgICAgICAgICByaXNjdjY0RW1p
dExvYWQob3BlcmFuZHMsIDpiLCA6dykKKyAgICAgICAgd2hlbiAibG9hZGJzcSIKKyAgICAgICAg
ICAgIHJpc2N2NjRFbWl0TG9hZChvcGVyYW5kcywgOmIsIDpub25lKQorICAgICAgICB3aGVuICJs
b2FkaHNpIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRMb2FkKG9wZXJhbmRzLCA6aCwgOncpCisg
ICAgICAgIHdoZW4gImxvYWRoc3EiCisgICAgICAgICAgICByaXNjdjY0RW1pdExvYWQob3BlcmFu
ZHMsIDpoLCA6bm9uZSkKKyAgICAgICAgd2hlbiAiYmZlcSIKKyAgICAgICAgICAgIHJpc2N2NjRF
bWl0RlBDb25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3BlcmFuZHMsIDpzLCA6ZXEpCisgICAgICAg
IHdoZW4gImJmbHQiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29uZGl0aW9uYWxCcmFuY2hG
b3JUZXN0KG9wZXJhbmRzLCA6cywgOmx0KQorICAgICAgICB3aGVuICJiZmd0IgorICAgICAgICAg
ICAgcmlzY3Y2NEVtaXRGUENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOnMsIDpn
dCkKKyAgICAgICAgd2hlbiAiYmZsdHVuIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbmRp
dGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOnMsIDpsdHVuKQorICAgICAgICB3aGVuICJi
Zmx0ZXF1biIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb25kaXRpb25hbEJyYW5jaEZvclRl
c3Qob3BlcmFuZHMsIDpzLCA6bHRlcXVuKQorICAgICAgICB3aGVuICJiZmd0dW4iCisgICAgICAg
ICAgICByaXNjdjY0RW1pdEZQQ29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6cywg
Omd0dW4pCisgICAgICAgIHdoZW4gImJmZ3RlcXVuIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRG
UENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOnMsIDpndGVxdW4pCisgICAgICAg
IHdoZW4gImJkZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29uZGl0aW9uYWxCcmFuY2hG
b3JUZXN0KG9wZXJhbmRzLCA6ZCwgOmVxKQorICAgICAgICB3aGVuICJiZG5lcSIKKyAgICAgICAg
ICAgIHJpc2N2NjRFbWl0RlBDb25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3BlcmFuZHMsIDpkLCA6
bmVxKQorICAgICAgICB3aGVuICJiZGx0IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbmRp
dGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOmQsIDpsdCkKKyAgICAgICAgd2hlbiAiYmRs
dGVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChv
cGVyYW5kcywgOmQsIDpsdGVxKQorICAgICAgICB3aGVuICJiZGd0IgorICAgICAgICAgICAgcmlz
Y3Y2NEVtaXRGUENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOmQsIDpndCkKKyAg
ICAgICAgd2hlbiAiYmRndGVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbmRpdGlvbmFs
QnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOmQsIDpndGVxKQorICAgICAgICB3aGVuICJiZGVxdW4i
CisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJh
bmRzLCA6ZCwgOmVxdW4pCisgICAgICAgIHdoZW4gImJkbmVxdW4iCisgICAgICAgICAgICByaXNj
djY0RW1pdEZQQ29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6ZCwgOm5lcXVuKQor
ICAgICAgICB3aGVuICJiZGx0dW4iCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29uZGl0aW9u
YWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6ZCwgOmx0dW4pCisgICAgICAgIHdoZW4gImJkbHRl
cXVuIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChv
cGVyYW5kcywgOmQsIDpsdGVxdW4pCisgICAgICAgIHdoZW4gImJkZ3R1biIKKyAgICAgICAgICAg
IHJpc2N2NjRFbWl0RlBDb25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3BlcmFuZHMsIDpkLCA6Z3R1
bikKKyAgICAgICAgd2hlbiAiYmRndGVxdW4iCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29u
ZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6ZCwgOmd0ZXF1bikKKyAgICAgICAgd2hl
biAidGQyaSIsICJiY2QyaSIsICJidGQyaSIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3Vw
cG9ydGVkCisgICAgICAgIHdoZW4gIm1vdmR6IgorICAgICAgICAgICAgcmlzY3Y2NFJhaXNlVW5z
dXBwb3J0ZWQKKyAgICAgICAgd2hlbiAicG9wIgorICAgICAgICAgICAgc2l6ZSA9IDggKiBvcGVy
YW5kcy5zaXplCisgICAgICAgICAgICBvcGVyYW5kcy5lYWNoX3dpdGhfaW5kZXggeworICAgICAg
ICAgICAgICAgIHwgb3AsIGluZGV4IHwKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImxkICN7
b3AucmlzY3Y2NE9wZXJhbmR9LCAje3NpemUgLSA4ICogKGluZGV4ICsgMSl9KHNwKSIKKyAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgICRhc20ucHV0cyAiYWRkaSBzcCwgc3AsICN7c2l6ZX0iCisg
ICAgICAgIHdoZW4gInB1c2giCisgICAgICAgICAgICBzaXplID0gOCAqIG9wZXJhbmRzLnNpemUK
KyAgICAgICAgICAgICRhc20ucHV0cyAiYWRkaSBzcCwgc3AsICN7LXNpemV9IgorICAgICAgICAg
ICAgb3BlcmFuZHMucmV2ZXJzZS5lYWNoX3dpdGhfaW5kZXggeworICAgICAgICAgICAgICAgIHwg
b3AsIGluZGV4IHwKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgInNkICN7b3AucmlzY3Y2NE9w
ZXJhbmR9LCAje3NpemUgLSA4ICogKGluZGV4ICsgMSl9KHNwKSIKKyAgICAgICAgICAgIH0KKyAg
ICAgICAgd2hlbiAibW92ZSIKKyAgICAgICAgICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhv
cGVyYW5kcykKKyAgICAgICAgICAgIHdoZW4gW1JlZ2lzdGVySUQsIFJlZ2lzdGVySURdCisgICAg
ICAgICAgICAgICAgJGFzbS5wdXRzICJtdiAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwg
I3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICB3aGVuIFtJbW1lZGlh
dGUsIFJlZ2lzdGVySURdCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJsaSAje29wZXJhbmRz
WzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAg
ICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJh
bmRzKG9wZXJhbmRzKQorICAgICAgICAgICAgZW5kCisKKyAgICAgICAgd2hlbiAienhpMnAiLCAi
enhpMnEiCisgICAgICAgICAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisg
ICAgICAgICAgICB3aGVuIFtSZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAgICAgICAgICAgICAg
ICRhc20ucHV0cyAic2xsaSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5k
c1swXS5yaXNjdjY0T3BlcmFuZH0sIDMyIgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAic3Js
aSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3Bl
cmFuZH0sIDMyIgorICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJhaXNlIHJpc2N2
NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICAgICAgICAgIGVuZAorCisg
ICAgICAgIHdoZW4gInN4YjJpIgorICAgICAgICAgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVz
KG9wZXJhbmRzKQorICAgICAgICAgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAg
ICAgICAgICAgICAgICAkYXNtLnB1dHMgImxpIHgzMSwgMHhmZiIKKyAgICAgICAgICAgICAgICAk
YXNtLnB1dHMgImFuZCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sw
XS5yaXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgInNsbGl3
ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVy
YW5kfSwgMjQiCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJzcmFpdyAje29wZXJhbmRzWzFd
LnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIDI0IgorICAg
ICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJhaXNlIHJpc2N2NjRSYWlzZU1pc21hdGNo
ZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICAgICAgICAgIGVuZAorICAgICAgICB3aGVuICJzeGIy
cSIKKyAgICAgICAgICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICAg
ICAgICAgIHdoZW4gW1JlZ2lzdGVySUQsIFJlZ2lzdGVySURdCisgICAgICAgICAgICAgICAgJGFz
bS5wdXRzICJzbGxpICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBd
LnJpc2N2NjRPcGVyYW5kfSwgMjQiCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJzZXh0Lncg
I3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJh
bmR9IgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAic3JhaSAje29wZXJhbmRzWzFdLnJpc2N2
NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIDI0IgorICAgICAgICAg
ICAgZWxzZQorICAgICAgICAgICAgICAgIHJhaXNlIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVy
YW5kcyhvcGVyYW5kcykKKyAgICAgICAgICAgIGVuZAorICAgICAgICB3aGVuICJzeGgyaSIKKyAg
ICAgICAgICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICAgICAgICAg
IHdoZW4gW1JlZ2lzdGVySUQsIFJlZ2lzdGVySURdCisgICAgICAgICAgICAgICAgJGFzbS5wdXRz
ICJsaSB4MzEsIDB4ZmZmZiIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImFuZCAje29wZXJh
bmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sIHgz
MSIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgInNsbGl3ICN7b3BlcmFuZHNbMV0ucmlzY3Y2
NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgMTYiCisgICAgICAgICAg
ICAgICAgJGFzbS5wdXRzICJzcmFpdyAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tv
cGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIDE2IgorICAgICAgICAgICAgZWxzZQorICAgICAg
ICAgICAgICAgIHJhaXNlIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykK
KyAgICAgICAgICAgIGVuZAorICAgICAgICB3aGVuICJzeGgycSIKKyAgICAgICAgICAgIGNhc2Ug
cmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICAgICAgICAgIHdoZW4gW1JlZ2lzdGVy
SUQsIFJlZ2lzdGVySURdCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJzbGxpICN7b3BlcmFu
ZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgMTYi
CisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgI3tvcGVyYW5kc1sxXS5yaXNjdjY0
T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAg
ICRhc20ucHV0cyAic3JhaSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5k
c1sxXS5yaXNjdjY0T3BlcmFuZH0sIDI0IgorICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAg
ICAgIHJhaXNlIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICAg
ICAgICAgIGVuZAorICAgICAgICB3aGVuICJzeGkycCIsICJzeGkycSIKKyAgICAgICAgICAgIGNh
c2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICAgICAgICAgIHdoZW4gW1JlZ2lz
dGVySUQsIFJlZ2lzdGVySURdCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgI3tv
cGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9
IgorICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJhaXNlIHJpc2N2NjRSYWlzZU1p
c21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICAgICAgICAgIGVuZAorCisgICAgICAgIHdo
ZW4gIm5vcCIKKyAgICAgICAgICAgICRhc20ucHV0cyAibm9wIgorCisgICAgICAgIHdoZW4gImJi
ZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6
YiwgOmVxKQorICAgICAgICB3aGVuICJiaWVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25k
aXRpb25hbEJyYW5jaChvcGVyYW5kcywgOncsIDplcSkKKyAgICAgICAgd2hlbiAiYnBlcSIsICJi
cWVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywg
OmQsIDplcSkKKyAgICAgICAgd2hlbiAiYmJuZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENv
bmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6YiwgOm5lcSkKKyAgICAgICAgd2hlbiAiYmluZXEi
CisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6dywg
Om5lcSkKKyAgICAgICAgd2hlbiAiYnBuZXEiLCAiYnFuZXEiCisgICAgICAgICAgICByaXNjdjY0
RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6ZCwgOm5lcSkKKyAgICAgICAgd2hlbiAi
YmJhIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywg
OmIsIDphKQorICAgICAgICB3aGVuICJiaWEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRp
dGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6dywgOmEpCisgICAgICAgIHdoZW4gImJwYSIsICJicWEi
CisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6ZCwg
OmEpCisgICAgICAgIHdoZW4gImJiYWVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRp
b25hbEJyYW5jaChvcGVyYW5kcywgOmIsIDphZXEpCisgICAgICAgIHdoZW4gImJpYWVxIgorICAg
ICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywgOncsIDphZXEp
CisgICAgICAgIHdoZW4gImJwYWVxIiwgImJxYWVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRD
b25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywgOmQsIDphZXEpCisgICAgICAgIHdoZW4gImJiYiIK
KyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFuZHMsIDpiLCA6
YikKKyAgICAgICAgd2hlbiAiYmliIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25h
bEJyYW5jaChvcGVyYW5kcywgOncsIDpiKQorICAgICAgICB3aGVuICJicGIiLCAiYnFiIgorICAg
ICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywgOmQsIDpiKQor
ICAgICAgICB3aGVuICJiYmJlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxC
cmFuY2gob3BlcmFuZHMsIDpiLCA6YmVxKQorICAgICAgICB3aGVuICJiaWJlcSIKKyAgICAgICAg
ICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFuZHMsIDp3LCA6YmVxKQorICAg
ICAgICB3aGVuICJicGJlcSIsICJicWJlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0
aW9uYWxCcmFuY2gob3BlcmFuZHMsIDpkLCA6YmVxKQorICAgICAgICB3aGVuICJiYmd0IgorICAg
ICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywgOmIsIDpndCkK
KyAgICAgICAgd2hlbiAiYmlndCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxC
cmFuY2gob3BlcmFuZHMsIDp3LCA6Z3QpCisgICAgICAgIHdoZW4gImJwZ3QiLCAiYnFndCIKKyAg
ICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFuZHMsIDpkLCA6Z3Qp
CisgICAgICAgIHdoZW4gImJiZ3RlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9u
YWxCcmFuY2gob3BlcmFuZHMsIDpiLCA6Z3RlcSkKKyAgICAgICAgd2hlbiAiYmlndGVxIgorICAg
ICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywgOncsIDpndGVx
KQorICAgICAgICB3aGVuICJicGd0ZXEiLCAiYnFndGVxIgorICAgICAgICAgICAgcmlzY3Y2NEVt
aXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywgOmQsIDpndGVxKQorICAgICAgICB3aGVuICJi
Ymx0IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywg
OmIsIDpsdCkKKyAgICAgICAgd2hlbiAiYmlsdCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29u
ZGl0aW9uYWxCcmFuY2gob3BlcmFuZHMsIDp3LCA6bHQpCisgICAgICAgIHdoZW4gImJwbHQiLCAi
YnFsdCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFuZHMs
IDpkLCA6bHQpCisgICAgICAgIHdoZW4gImJibHRlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0
Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFuZHMsIDpiLCA6bHRlcSkKKyAgICAgICAgd2hlbiAiYmls
dGVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywg
OncsIDpsdGVxKQorICAgICAgICB3aGVuICJicGx0ZXEiLCAiYnFsdGVxIgorICAgICAgICAgICAg
cmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywgOmQsIDpsdGVxKQorICAgICAg
ICB3aGVuICJidGJ6IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaEZv
clRlc3Qob3BlcmFuZHMsIDpiLCA6eikKKyAgICAgICAgd2hlbiAiYnRibnoiCisgICAgICAgICAg
ICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOmIsIDpueikK
KyAgICAgICAgd2hlbiAiYnRicyIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxC
cmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6YiwgOnMpCisgICAgICAgIHdoZW4gImJ0aXoiCisgICAg
ICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOncs
IDp6KQorICAgICAgICB3aGVuICJidGlueiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0
aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6dywgOm56KQorICAgICAgICB3aGVuICJidGlz
IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3BlcmFu
ZHMsIDp3LCA6cykKKyAgICAgICAgd2hlbiAiYnRweiIsICJidHF6IgorICAgICAgICAgICAgcmlz
Y3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3BlcmFuZHMsIDpkLCA6eikKKyAgICAg
ICAgd2hlbiAiYnRwbnoiLCAiYnRxbnoiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlv
bmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOmQsIDpueikKKyAgICAgICAgd2hlbiAiYnRwcyIs
ICJidHFzIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaEZvclRlc3Qo
b3BlcmFuZHMsIDpkLCA6cykKKworICAgICAgICB3aGVuICJiYWRkaXoiCisgICAgICAgICAgICBj
YXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgICAgICAgICB3aGVuIFtSZWdp
c3RlcklELCBSZWdpc3RlcklELCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICAgICAgICAg
ICRhc20ucHV0cyAiYWRkICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRz
WzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAg
ICAgICAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFu
ZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgICRhc20u
cHV0cyAiYmVxeiAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1syXS5h
c21MYWJlbH0iCisgICAgICAgICAgICB3aGVuIFtJbW1lZGlhdGUsIFJlZ2lzdGVySUQsIExvY2Fs
TGFiZWxSZWZlcmVuY2VdCisgICAgICAgICAgICAgICAgaWYgb3BlcmFuZHNbMF0ucmlzY3Y2NFJl
cXVpcmVzTG9hZAorICAgICAgICAgICAgICAgICAgICBvcGVyYW5kc1swXS5yaXNjdjY0TG9hZAor
ICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImFkZCAje29wZXJhbmRzWzFdLnJpc2N2NjRP
cGVyYW5kfSwgeDMxLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAg
ICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYWRkaSAje29wZXJhbmRz
WzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3Bl
cmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgIGVuZAorICAgICAgICAg
ICAgICAgICRhc20ucHV0cyAic2V4dC53ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAj
e29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMg
ImJlcXogI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMl0uYXNtTGFi
ZWx9IgorICAgICAgICAgICAgd2hlbiBbSW1tZWRpYXRlLCBBZGRyZXNzLCBMb2NhbExhYmVsUmVm
ZXJlbmNlXQorICAgICAgICAgICAgICAgIGlmIG9wZXJhbmRzWzFdLnJpc2N2NjRSZXF1aXJlc0xv
YWQKKyAgICAgICAgICAgICAgICAgICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExvYWQKKyAgICAgICAg
ICAgICAgICAgICAgJGFzbS5wdXRzICJsdyB4MzAsIDAoeDMxKSIKKyAgICAgICAgICAgICAgICBl
bHNlCisgICAgICAgICAgICAgICAgICAgICRhc20ucHV0cyAibHcgeDMwLCAje29wZXJhbmRzWzFd
LnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICBlbmQKKyAgICAgICAgICAgICAgICBv
cGVyYW5kc1swXS5yaXNjdjY0TG9hZAorICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYWRkIHgz
MCwgeDMwLCB4MzEiCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgeDMwLCB4MzAi
CisgICAgICAgICAgICAgICAgaWYgb3BlcmFuZHNbMV0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAg
ICAgICAgICAgICAgICAgICBvcGVyYW5kc1sxXS5yaXNjdjY0TG9hZAorICAgICAgICAgICAgICAg
ICAgICAkYXNtLnB1dHMgInN3IHgzMCwgMCh4MzEpIgorICAgICAgICAgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJzdyB4MzAsICN7b3BlcmFuZHNbMV0ucmlzY3Y2
NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgIGVuZAorICAgICAgICAgICAgICAgICRhc20ucHV0
cyAiYmVxeiB4MzAsICN7b3BlcmFuZHNbMl0uYXNtTGFiZWx9IgorICAgICAgICAgICAgZWxzZQor
ICAgICAgICAgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykK
KyAgICAgICAgICAgIGVuZAorICAgICAgICB3aGVuICJiYWRkaW56IgorICAgICAgICAgICAgY2Fz
ZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgICAgICAgICAgd2hlbiBbUmVnaXN0
ZXJJRCwgUmVnaXN0ZXJJRCwgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgICAgICAgICAk
YXNtLnB1dHMgImFkZCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sw
XS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAg
ICAgICAgICAgICRhc20ucHV0cyAic2V4dC53ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9
LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICAkYXNtLnB1
dHMgImJuZXogI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMl0uYXNt
TGFiZWx9IgorICAgICAgICAgICAgd2hlbiBbSW1tZWRpYXRlLCBSZWdpc3RlcklELCBMb2NhbExh
YmVsUmVmZXJlbmNlXQorICAgICAgICAgICAgICAgIGlmIG9wZXJhbmRzWzBdLnJpc2N2NjRSZXF1
aXJlc0xvYWQKKyAgICAgICAgICAgICAgICAgICAgb3BlcmFuZHNbMF0ucmlzY3Y2NExvYWQKKyAg
ICAgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJhZGQgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3Bl
cmFuZH0sIHgzMSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAg
ICAgZWxzZQorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImFkZGkgI3tvcGVyYW5kc1sx
XS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJh
bmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICBlbmQKKyAgICAgICAgICAg
ICAgICAkYXNtLnB1dHMgInNleHQudyAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tv
cGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJi
bmV6ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzJdLmFzbUxhYmVs
fSIKKyAgICAgICAgICAgIHdoZW4gW0ltbWVkaWF0ZSwgQWRkcmVzcywgTG9jYWxMYWJlbFJlZmVy
ZW5jZV0KKyAgICAgICAgICAgICAgICBpZiBvcGVyYW5kc1sxXS5yaXNjdjY0UmVxdWlyZXNMb2Fk
CisgICAgICAgICAgICAgICAgICAgIG9wZXJhbmRzWzFdLnJpc2N2NjRMb2FkCisgICAgICAgICAg
ICAgICAgICAgICRhc20ucHV0cyAibHcgeDMwLCAwKHgzMSkiCisgICAgICAgICAgICAgICAgZWxz
ZQorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImx3IHgzMCwgI3tvcGVyYW5kc1sxXS5y
aXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgZW5kCisgICAgICAgICAgICAgICAgb3Bl
cmFuZHNbMF0ucmlzY3Y2NExvYWQKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImFkZCB4MzAs
IHgzMCwgeDMxIgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAic2V4dC53IHgzMCwgeDMwIgor
ICAgICAgICAgICAgICAgIGlmIG9wZXJhbmRzWzFdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAg
ICAgICAgICAgICAgICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExvYWQKKyAgICAgICAgICAgICAgICAg
ICAgJGFzbS5wdXRzICJzdyB4MzAsIDAoeDMxKSIKKyAgICAgICAgICAgICAgICBlbHNlCisgICAg
ICAgICAgICAgICAgICAgICRhc20ucHV0cyAic3cgeDMwLCAje29wZXJhbmRzWzFdLnJpc2N2NjRP
cGVyYW5kfSIKKyAgICAgICAgICAgICAgICBlbmQKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMg
ImJuZXogeDMwLCAje29wZXJhbmRzWzJdLmFzbUxhYmVsfSIKKyAgICAgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisg
ICAgICAgICAgICBlbmQKKyAgICAgICAgd2hlbiAiYmFkZGlzIgorICAgICAgICAgICAgY2FzZSBy
aXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgICAgICAgICAgd2hlbiBbUmVnaXN0ZXJJ
RCwgUmVnaXN0ZXJJRCwgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgICAgICAgICAkYXNt
LnB1dHMgImFkZCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5y
aXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAg
ICAgICAgICRhc20ucHV0cyAic2V4dC53ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAj
e29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMg
ImJsdHogI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMl0uYXNtTGFi
ZWx9IgorICAgICAgICAgICAgd2hlbiBbSW1tZWRpYXRlLCBSZWdpc3RlcklELCBMb2NhbExhYmVs
UmVmZXJlbmNlXQorICAgICAgICAgICAgICAgIGlmIG9wZXJhbmRzWzBdLnJpc2N2NjRSZXF1aXJl
c0xvYWQKKyAgICAgICAgICAgICAgICAgICAgb3BlcmFuZHNbMF0ucmlzY3Y2NExvYWQKKyAgICAg
ICAgICAgICAgICAgICAgJGFzbS5wdXRzICJhZGQgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFu
ZH0sIHgzMSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAg
ZWxzZQorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImFkZGkgI3tvcGVyYW5kc1sxXS5y
aXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRz
WzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICBlbmQKKyAgICAgICAgICAgICAg
ICAkYXNtLnB1dHMgInNleHQudyAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVy
YW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJibHR6
ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzJdLmFzbUxhYmVsfSIK
KyAgICAgICAgICAgIHdoZW4gW0ltbWVkaWF0ZSwgQWRkcmVzcywgTG9jYWxMYWJlbFJlZmVyZW5j
ZV0KKyAgICAgICAgICAgICAgICBpZiBvcGVyYW5kc1sxXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisg
ICAgICAgICAgICAgICAgICAgIG9wZXJhbmRzWzFdLnJpc2N2NjRMb2FkCisgICAgICAgICAgICAg
ICAgICAgICRhc20ucHV0cyAibHcgeDMwLCAwKHgzMSkiCisgICAgICAgICAgICAgICAgZWxzZQor
ICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImx3IHgzMCwgI3tvcGVyYW5kc1sxXS5yaXNj
djY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgZW5kCisgICAgICAgICAgICAgICAgb3BlcmFu
ZHNbMF0ucmlzY3Y2NExvYWQKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImFkZCB4MzAsIHgz
MCwgeDMxIgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAic2V4dC53IHgzMCwgeDMwIgorICAg
ICAgICAgICAgICAgIGlmIG9wZXJhbmRzWzFdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAg
ICAgICAgICAgICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExvYWQKKyAgICAgICAgICAgICAgICAgICAg
JGFzbS5wdXRzICJzdyB4MzAsIDAoeDMxKSIKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAg
ICAgICAgICAgICAgICRhc20ucHV0cyAic3cgeDMwLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVy
YW5kfSIKKyAgICAgICAgICAgICAgICBlbmQKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImJs
dHogeDMwLCAje29wZXJhbmRzWzJdLmFzbUxhYmVsfSIKKyAgICAgICAgICAgIGVsc2UKKyAgICAg
ICAgICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAg
ICAgICAgICBlbmQKKyAgICAgICAgd2hlbiAiYmFkZGlvIgorICAgICAgICAgICAgY2FzZSByaXNj
djY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgICAgICAgICAgd2hlbiBbUmVnaXN0ZXJJRCwg
UmVnaXN0ZXJJRCwgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgICAgICAgICAkYXNtLnB1
dHMgInNleHQudyB4MzAsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAg
ICAgICAgICRhc20ucHV0cyAic2V4dC53IHgzMSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFu
ZH0iCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJhZGQgeDMwLCB4MzAsIHgzMSIKKyAgICAg
ICAgICAgICAgICAkYXNtLnB1dHMgInNleHQudyAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5k
fSwgeDMwIgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYm5lICN7b3BlcmFuZHNbMV0ucmlz
Y3Y2NE9wZXJhbmR9LCB4MzAsICN7b3BlcmFuZHNbMl0uYXNtTGFiZWx9IgorICAgICAgICAgICAg
ICAgICRhc20ucHV0cyAibGkgeDMxLCAweGZmZmZmZmZmIgorICAgICAgICAgICAgICAgICRhc20u
cHV0cyAiYW5kICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJp
c2N2NjRPcGVyYW5kfSwgeDMxIgorICAgICAgICAgICAgd2hlbiBbSW1tZWRpYXRlLCBSZWdpc3Rl
cklELCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICAgICAgICAgICRhc20ucHV0cyAibGkg
eDMwLCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICAkYXNt
LnB1dHMgInNleHQudyB4MzAsIHgzMCIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgInNleHQu
dyB4MzEsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgICRh
c20ucHV0cyAiYWRkIHgzMCwgeDMwLCB4MzEiCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJz
ZXh0LncgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIHgzMCIKKyAgICAgICAgICAgICAg
ICAkYXNtLnB1dHMgImJuZSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgeDMwLCAje29w
ZXJhbmRzWzJdLmFzbUxhYmVsfSIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImxpIHgzMSwg
MHhmZmZmZmZmZiIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImFuZCAje29wZXJhbmRzWzFd
LnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAg
ICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3Bl
cmFuZHMob3BlcmFuZHMpCisgICAgICAgICAgICBlbmQKKworICAgICAgICB3aGVuICJiYWRkcHoi
LCAiYmFkZHF6IgorICAgICAgICAgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRz
KQorICAgICAgICAgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCwgTG9jYWxMYWJlbFJl
ZmVyZW5jZV0KKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImVicmVhayIKKyAgICAgICAgICAg
IHdoZW4gW0ltbWVkaWF0ZSwgUmVnaXN0ZXJJRCwgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAg
ICAgICAgICAgICAkYXNtLnB1dHMgImVicmVhayIKKyAgICAgICAgICAgIHdoZW4gW0ltbWVkaWF0
ZSwgQWRkcmVzcywgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgICAgICAgICAkYXNtLnB1
dHMgImVicmVhayIKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICByaXNjdjY0UmFp
c2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgICAgICAgICBlbmQKKyAgICAgICAg
d2hlbiAiYmFkZHBueiIsICJiYWRkcW56IgorICAgICAgICAgICAgY2FzZSByaXNjdjY0T3BlcmFu
ZFR5cGVzKG9wZXJhbmRzKQorICAgICAgICAgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJ
RCwgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImVicmVh
ayIKKyAgICAgICAgICAgIHdoZW4gW0ltbWVkaWF0ZSwgUmVnaXN0ZXJJRCwgTG9jYWxMYWJlbFJl
ZmVyZW5jZV0KKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImVicmVhayIKKyAgICAgICAgICAg
IHdoZW4gW0ltbWVkaWF0ZSwgQWRkcmVzcywgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAg
ICAgICAgICAkYXNtLnB1dHMgImVicmVhayIKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAg
ICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgICAgICAg
ICBlbmQKKyAgICAgICAgd2hlbiAiYmFkZHBzIiwgImJhZGRxcyIKKyAgICAgICAgICAgIGNhc2Ug
cmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICAgICAgICAgIHdoZW4gW1JlZ2lzdGVy
SUQsIFJlZ2lzdGVySUQsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAgICAgICAgICAgJGFz
bS5wdXRzICJlYnJlYWsiCisgICAgICAgICAgICB3aGVuIFtJbW1lZGlhdGUsIFJlZ2lzdGVySUQs
IExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJlYnJlYWsi
CisgICAgICAgICAgICB3aGVuIFtJbW1lZGlhdGUsIEFkZHJlc3MsIExvY2FsTGFiZWxSZWZlcmVu
Y2VdCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJlYnJlYWsiCisgICAgICAgICAgICBlbHNl
CisgICAgICAgICAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRz
KQorICAgICAgICAgICAgZW5kCisgICAgICAgIHdoZW4gImJhZGRwbyIsICJiYWRkcW8iCisgICAg
ICAgICAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgICAgICAgICB3
aGVuIFtSZWdpc3RlcklELCBSZWdpc3RlcklELCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAg
ICAgICAgICAgICRhc20ucHV0cyAiZWJyZWFrIgorICAgICAgICAgICAgd2hlbiBbSW1tZWRpYXRl
LCBSZWdpc3RlcklELCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICAgICAgICAgICRhc20u
cHV0cyAiZWJyZWFrIgorICAgICAgICAgICAgd2hlbiBbSW1tZWRpYXRlLCBBZGRyZXNzLCBMb2Nh
bExhYmVsUmVmZXJlbmNlXQorICAgICAgICAgICAgICAgICRhc20ucHV0cyAiZWJyZWFrIgorICAg
ICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVy
YW5kcyhvcGVyYW5kcykKKyAgICAgICAgICAgIGVuZAorCisgICAgICAgIHdoZW4gImJzdWJpeiIK
KyAgICAgICAgICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICAgICAg
ICAgIHdoZW4gW1JlZ2lzdGVySUQsIFJlZ2lzdGVySUQsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisg
ICAgICAgICAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgeDMwLCAje29wZXJhbmRzWzBdLnJpc2N2
NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgInNleHQudyB4MzEsICN7b3Bl
cmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAic3Vi
IHgzMCwgeDMxLCB4MzAiCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgI3tvcGVy
YW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIHgzMCIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMg
ImJlcXogI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMl0uYXNtTGFi
ZWx9IgorICAgICAgICAgICAgd2hlbiBbSW1tZWRpYXRlLCBSZWdpc3RlcklELCBMb2NhbExhYmVs
UmVmZXJlbmNlXQorICAgICAgICAgICAgICAgICRhc20ucHV0cyAibGkgeDMwLCAje29wZXJhbmRz
WzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgInNleHQudyB4
MzEsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgICRhc20u
cHV0cyAic3ViIHgzMCwgeDMxLCB4MzAiCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJzZXh0
LncgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIHgzMCIKKyAgICAgICAgICAgICAgICAk
YXNtLnB1dHMgImJuZXogI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNb
Ml0uYXNtTGFiZWx9IgorICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJpc2N2NjRS
YWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICAgICAgICAgIGVuZAorICAgICAg
ICB3aGVuICJic3ViaW56IgorICAgICAgICAgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9w
ZXJhbmRzKQorICAgICAgICAgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCwgTG9jYWxM
YWJlbFJlZmVyZW5jZV0KKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgInNleHQudyB4MzAsICN7
b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAi
c2V4dC53IHgzMSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAg
ICAgJGFzbS5wdXRzICJzdWIgeDMwLCB4MzEsIHgzMCIKKyAgICAgICAgICAgICAgICAkYXNtLnB1
dHMgInNleHQudyAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgeDMwIgorICAgICAgICAg
ICAgICAgICRhc20ucHV0cyAiYm5leiAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tv
cGVyYW5kc1syXS5hc21MYWJlbH0iCisgICAgICAgICAgICB3aGVuIFtJbW1lZGlhdGUsIFJlZ2lz
dGVySUQsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJs
aSB4MzAsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgICRh
c20ucHV0cyAic2V4dC53IHgzMSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAg
ICAgICAgICAgICAgJGFzbS5wdXRzICJzdWIgeDMwLCB4MzEsIHgzMCIKKyAgICAgICAgICAgICAg
ICAkYXNtLnB1dHMgInNleHQudyAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgeDMwIgor
ICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYm5leiAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVy
YW5kfSwgI3tvcGVyYW5kc1syXS5hc21MYWJlbH0iCisgICAgICAgICAgICBlbHNlCisgICAgICAg
ICAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgICAg
ICAgICAgZW5kCisgICAgICAgIHdoZW4gImJzdWJpcyIKKyAgICAgICAgICAgIGNhc2UgcmlzY3Y2
NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICAgICAgICAgIHdoZW4gW1JlZ2lzdGVySUQsIFJl
Z2lzdGVySUQsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAgICAgICAgICAgJGFzbS5wdXRz
ICJzdWIgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2
NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAg
ICAkYXNtLnB1dHMgInNleHQudyAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVy
YW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJibHR6
ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzJdLmFzbUxhYmVsfSIK
KyAgICAgICAgICAgIHdoZW4gW0ltbWVkaWF0ZSwgUmVnaXN0ZXJJRCwgTG9jYWxMYWJlbFJlZmVy
ZW5jZV0KKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImVicmVhayIKKyAgICAgICAgICAgIHdo
ZW4gW0ltbWVkaWF0ZSwgQWRkcmVzcywgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgICAg
ICAgICAkYXNtLnB1dHMgImVicmVhayIKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAg
ICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgICAgICAgICBl
bmQKKyAgICAgICAgd2hlbiAiYnN1YmlvIgorICAgICAgICAgICAgY2FzZSByaXNjdjY0T3BlcmFu
ZFR5cGVzKG9wZXJhbmRzKQorICAgICAgICAgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJ
RCwgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgInNleHQu
dyAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3Bl
cmFuZH0iCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgI3tvcGVyYW5kc1sxXS5y
aXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAg
ICAgICAgICRhc20ucHV0cyAic3ViIHgzMCwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0s
ICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgICRhc20ucHV0
cyAic2V4dC53ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCB4MzAiCisgICAgICAgICAg
ICAgICAgJGFzbS5wdXRzICJibmUgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIHgzMCwg
I3tvcGVyYW5kc1syXS5hc21MYWJlbH0iCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJsaSB4
MzEsIDB4ZmZmZmZmZmYiCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJhbmQgI3tvcGVyYW5k
c1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEi
CisgICAgICAgICAgICB3aGVuIFtJbW1lZGlhdGUsIFJlZ2lzdGVySUQsIExvY2FsTGFiZWxSZWZl
cmVuY2VdCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJsaSB4MzAsICN7b3BlcmFuZHNbMF0u
cmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAic2V4dC53IHgzMCwg
eDMwIgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAic2V4dC53ICN7b3BlcmFuZHNbMV0ucmlz
Y3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAg
ICAgICAkYXNtLnB1dHMgInN1YiB4MzAsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCB4
MzAiCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgI3tvcGVyYW5kc1sxXS5yaXNj
djY0T3BlcmFuZH0sIHgzMCIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImJuZSAje29wZXJh
bmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgeDMwLCAje29wZXJhbmRzWzJdLmFzbUxhYmVsfSIKKyAg
ICAgICAgICAgICAgICAkYXNtLnB1dHMgImxpIHgzMSwgMHhmZmZmZmZmZiIKKyAgICAgICAgICAg
ICAgICAkYXNtLnB1dHMgImFuZCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVy
YW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAg
ICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgICAg
ICAgICBlbmQKKworICAgICAgICB3aGVuICJibXVsaXoiCisgICAgICAgICAgICAkYXNtLnB1dHMg
ImVicmVhayIKKyAgICAgICAgICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykK
KyAgICAgICAgICAgIHdoZW4gW1JlZ2lzdGVySUQsIFJlZ2lzdGVySUQsIExvY2FsTGFiZWxSZWZl
cmVuY2VdCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJtdWxoIHgzMCwgI3tvcGVyYW5kc1sw
XS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAg
ICAgICAgICAgICRhc20ucHV0cyAibXVsIHgzMSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFu
ZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgICRhc20u
cHV0cyAib3IgeDMxLCB4MzAsIHgzMSIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImJlcXog
eDMxLCAje29wZXJhbmRzWzJdLmFzbUxhYmVsfSIKKyAgICAgICAgICAgIHdoZW4gW0ltbWVkaWF0
ZSwgUmVnaXN0ZXJJRCwgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgICAgICAgICBpZiBv
cGVyYW5kc1swXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICAgICAgICAgIG9wZXJh
bmRzWzBdLnJpc2N2NjRMb2FkCisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAg
ICAgICAkYXNtLnB1dHMgImx3IHgzMSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisg
ICAgICAgICAgICAgICAgZW5kCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJtdWxoIHgzMCwg
eDMxLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICAkYXNt
LnB1dHMgIm11bCB4MzEsIHgzMSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAg
ICAgICAgICAgICAgJGFzbS5wdXRzICJvciB4MzEsIHgzMCwgeDMxIgorICAgICAgICAgICAgICAg
ICRhc20ucHV0cyAiYmVxeiB4MzEsICN7b3BlcmFuZHNbMl0uYXNtTGFiZWx9IgorICAgICAgICAg
ICAgd2hlbiBbSW1tZWRpYXRlLCBBZGRyZXNzLCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAg
ICAgICAgICAgIGlmIG9wZXJhbmRzWzFdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAg
ICAgICAgICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExvYWQKKyAgICAgICAgICAgICAgICAgICAgJGFz
bS5wdXRzICJsdyB4MzAsIDAoeDMxKSIKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAg
ICAgICAgICAgICRhc20ucHV0cyAibHcgeDMwLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5k
fSIKKyAgICAgICAgICAgICAgICBlbmQKKyAgICAgICAgICAgICAgICBpZiBvcGVyYW5kc1swXS5y
aXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICAgICAgICAgIG9wZXJhbmRzWzBdLnJpc2N2
NjRMb2FkCisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1
dHMgImx3IHgzMSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAg
ICAgZW5kCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJtdWxoIHgyOSwgeDMxLCAje29wZXJh
bmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgIm11bCB4
MzEsIHgzMSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAg
JGFzbS5wdXRzICJvciB4MzEsIHgyOSwgeDMxIgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAi
YmVxeiB4MzEsICN7b3BlcmFuZHNbMl0uYXNtTGFiZWx9IgorICAgICAgICAgICAgZWxzZQorICAg
ICAgICAgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAg
ICAgICAgICAgIGVuZAorICAgICAgICB3aGVuICJibXVsaW56IgorICAgICAgICAgICAgJGFzbS5w
dXRzICJlYnJlYWsiCisgICAgICAgICAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFu
ZHMpCisgICAgICAgICAgICB3aGVuIFtSZWdpc3RlcklELCBSZWdpc3RlcklELCBMb2NhbExhYmVs
UmVmZXJlbmNlXQorICAgICAgICAgICAgICAgICRhc20ucHV0cyAibXVsaCB4MzAsICN7b3BlcmFu
ZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAg
ICAgICAgICAgICAgICAkYXNtLnB1dHMgIm11bCB4MzEsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9w
ZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICAk
YXNtLnB1dHMgIm9yIHgzMSwgeDMwLCB4MzEiCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJi
bmV6IHgzMSwgI3tvcGVyYW5kc1syXS5hc21MYWJlbH0iCisgICAgICAgICAgICB3aGVuIFtJbW1l
ZGlhdGUsIFJlZ2lzdGVySUQsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAgICAgICAgICAg
aWYgb3BlcmFuZHNbMF0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgICAgICAgICBv
cGVyYW5kc1swXS5yaXNjdjY0TG9hZAorICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAg
ICAgICAgICAgJGFzbS5wdXRzICJsdyB4MzEsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9
IgorICAgICAgICAgICAgICAgIGVuZAorICAgICAgICAgICAgICAgICRhc20ucHV0cyAibXVsaCB4
MzAsIHgzMSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAg
JGFzbS5wdXRzICJtdWwgeDMxLCB4MzEsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9Igor
ICAgICAgICAgICAgICAgICRhc20ucHV0cyAib3IgeDMxLCB4MzAsIHgzMSIKKyAgICAgICAgICAg
ICAgICAkYXNtLnB1dHMgImJuZXogeDMxLCAje29wZXJhbmRzWzJdLmFzbUxhYmVsfSIKKyAgICAg
ICAgICAgIHdoZW4gW0ltbWVkaWF0ZSwgQWRkcmVzcywgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAg
ICAgICAgICAgICAgICBpZiBvcGVyYW5kc1sxXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAg
ICAgICAgICAgICAgIG9wZXJhbmRzWzFdLnJpc2N2NjRMb2FkCisgICAgICAgICAgICAgICAgICAg
ICRhc20ucHV0cyAibHcgeDMwLCAwKHgzMSkiCisgICAgICAgICAgICAgICAgZWxzZQorICAgICAg
ICAgICAgICAgICAgICAkYXNtLnB1dHMgImx3IHgzMCwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3Bl
cmFuZH0iCisgICAgICAgICAgICAgICAgZW5kCisgICAgICAgICAgICAgICAgaWYgb3BlcmFuZHNb
MF0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgICAgICAgICBvcGVyYW5kc1swXS5y
aXNjdjY0TG9hZAorICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgJGFz
bS5wdXRzICJsdyB4MzEsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAg
ICAgICAgIGVuZAorICAgICAgICAgICAgICAgICRhc20ucHV0cyAibXVsaCB4MjksIHgzMSwgI3tv
cGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJt
dWwgeDMxLCB4MzEsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAg
ICAgICRhc20ucHV0cyAib3IgeDMxLCB4MjksIHgzMSIKKyAgICAgICAgICAgICAgICAkYXNtLnB1
dHMgImJuZXogeDMxLCAje29wZXJhbmRzWzJdLmFzbUxhYmVsfSIKKyAgICAgICAgICAgIGVsc2UK
KyAgICAgICAgICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMp
CisgICAgICAgICAgICBlbmQKKyAgICAgICAgd2hlbiAiYm11bGlvIgorICAgICAgICAgICAgY2Fz
ZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgICAgICAgICAgd2hlbiBbUmVnaXN0
ZXJJRCwgUmVnaXN0ZXJJRCwgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgICAgICAgICAk
YXNtLnB1dHMgInNleHQudyB4MzAsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAg
ICAgICAgICAgICAgICRhc20ucHV0cyAic2V4dC53IHgzMSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0
T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJtdWwgeDMwLCB4MzAsIHgzMSIK
KyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgInNleHQudyAje29wZXJhbmRzWzFdLnJpc2N2NjRP
cGVyYW5kfSwgeDMwIgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYm5lICN7b3BlcmFuZHNb
MV0ucmlzY3Y2NE9wZXJhbmR9LCB4MzAsICN7b3BlcmFuZHNbMl0uYXNtTGFiZWx9IgorICAgICAg
ICAgICAgICAgICRhc20ucHV0cyAibGkgeDMxLCAweGZmZmZmZmZmIgorICAgICAgICAgICAgICAg
ICRhc20ucHV0cyAiYW5kICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRz
WzFdLnJpc2N2NjRPcGVyYW5kfSwgeDMxIgorICAgICAgICAgICAgd2hlbiBbSW1tZWRpYXRlLCBS
ZWdpc3RlcklELCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICAgICAgICAgICRhc20ucHV0
cyAibGkgeDMwLCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAg
ICAkYXNtLnB1dHMgInNleHQudyB4MzAsIHgzMCIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMg
InNleHQudyB4MzEsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAg
ICAgICRhc20ucHV0cyAibXVsIHgzMCwgeDMwLCB4MzEiCisgICAgICAgICAgICAgICAgJGFzbS5w
dXRzICJzZXh0LncgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIHgzMCIKKyAgICAgICAg
ICAgICAgICAkYXNtLnB1dHMgImJuZSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgeDMw
LCAje29wZXJhbmRzWzJdLmFzbUxhYmVsfSIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImxp
IHgzMSwgMHhmZmZmZmZmZiIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImFuZCAje29wZXJh
bmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIHgz
MSIKKyAgICAgICAgICAgIHdoZW4gW0ltbWVkaWF0ZSwgQWRkcmVzcywgTG9jYWxMYWJlbFJlZmVy
ZW5jZV0KKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImVicmVhayIKKyAgICAgICAgICAgIGVs
c2UKKyAgICAgICAgICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFu
ZHMpCisgICAgICAgICAgICBlbmQKKyAgICAgICAgd2hlbiAiYm11bGlzIgorICAgICAgICAgICAg
JGFzbS5wdXRzICJlYnJlYWsiCisgICAgICAgICAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMo
b3BlcmFuZHMpCisgICAgICAgICAgICB3aGVuIFtSZWdpc3RlcklELCBSZWdpc3RlcklELCBMb2Nh
bExhYmVsUmVmZXJlbmNlXQorICAgICAgICAgICAgICAgICRhc20ucHV0cyAibXVsICN7b3BlcmFu
ZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tv
cGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJz
ZXh0LncgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2
NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYmx0eiAje29wZXJhbmRzWzFd
LnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1syXS5hc21MYWJlbH0iCisgICAgICAgICAgICB3
aGVuIFtJbW1lZGlhdGUsIFJlZ2lzdGVySUQsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAg
ICAgICAgICAgaWYgb3BlcmFuZHNbMF0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAg
ICAgICAgICBvcGVyYW5kc1swXS5yaXNjdjY0TG9hZAorICAgICAgICAgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJsdyB4MzEsICN7b3BlcmFuZHNbMF0ucmlzY3Y2
NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgIGVuZAorICAgICAgICAgICAgICAgICRhc20ucHV0
cyAibXVsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEsICN7b3BlcmFuZHNbMV0u
cmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAic2V4dC53ICN7b3Bl
cmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIK
KyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImJsdHogeDMxLCAje29wZXJhbmRzWzJdLmFzbUxh
YmVsfSIKKyAgICAgICAgICAgIHdoZW4gW0ltbWVkaWF0ZSwgQWRkcmVzcywgTG9jYWxMYWJlbFJl
ZmVyZW5jZV0KKyAgICAgICAgICAgICAgICBpZiBvcGVyYW5kc1sxXS5yaXNjdjY0UmVxdWlyZXNM
b2FkCisgICAgICAgICAgICAgICAgICAgIG9wZXJhbmRzWzFdLnJpc2N2NjRMb2FkCisgICAgICAg
ICAgICAgICAgICAgICRhc20ucHV0cyAibHcgeDMwLCAwKHgzMSkiCisgICAgICAgICAgICAgICAg
ZWxzZQorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImx3IHgzMCwgI3tvcGVyYW5kc1sx
XS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgZW5kCisgICAgICAgICAgICAgICAg
aWYgb3BlcmFuZHNbMF0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgICAgICAgICBv
cGVyYW5kc1swXS5yaXNjdjY0TG9hZAorICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAg
ICAgICAgICAgJGFzbS5wdXRzICJsdyB4MzEsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9
IgorICAgICAgICAgICAgICAgIGVuZAorICAgICAgICAgICAgICAgICRhc20ucHV0cyAibXVsIHgz
MCwgeDMwLCB4MzEiCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgeDMwLCB4MzAi
CisgICAgICAgICAgICAgICAgaWYgb3BlcmFuZHNbMV0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAg
ICAgICAgICAgICAgICAgICBvcGVyYW5kc1sxXS5yaXNjdjY0TG9hZAorICAgICAgICAgICAgICAg
ICAgICAkYXNtLnB1dHMgInN3IHgzMCwgMCh4MzEpIgorICAgICAgICAgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJzdyB4MzAsICN7b3BlcmFuZHNbMV0ucmlzY3Y2
NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgIGVuZAorICAgICAgICAgICAgICAgICRhc20ucHV0
cyAiYmx0eiB4MzAsICN7b3BlcmFuZHNbMl0uYXNtTGFiZWx9IgorICAgICAgICAgICAgZWxzZQor
ICAgICAgICAgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykK
KyAgICAgICAgICAgIGVuZAorCisgICAgICAgIHdoZW4gImJvcmlvIiwgImJvcmlzIiwgImJvcml6
IiwgImJvcmlueiIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAg
IHdoZW4gImptcCIKKyAgICAgICAgICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5k
cykKKyAgICAgICAgICAgIHdoZW4gW1JlZ2lzdGVySUQsIEltbWVkaWF0ZV0KKyAgICAgICAgICAg
ICAgICAkYXNtLnB1dHMgImpyICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAg
ICAgICAgd2hlbiBbQmFzZUluZGV4LCBJbW1lZGlhdGUsIEltbWVkaWF0ZV0KKyAgICAgICAgICAg
ICAgICBvcGVyYW5kc1swXS5yaXNjdjY0TG9hZAorICAgICAgICAgICAgICAgICRhc20ucHV0cyAi
bGQgeDMxLCAwKHgzMSkiCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJqciB4MzEiCisgICAg
ICAgICAgICB3aGVuIFtBZGRyZXNzLCBJbW1lZGlhdGVdCisgICAgICAgICAgICAgICAgaWYgb3Bl
cmFuZHNbMF0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgICAgICAgICBvcGVyYW5k
c1swXS5yaXNjdjY0TG9hZAorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImxkIHgzMSwg
MCh4MzEpIgorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImpyIHgzMSIKKyAgICAgICAg
ICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgICRhc20ucHV0cyAibGQgeDMxLCAje29w
ZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICAgICAgJGFzbS5wdXRz
ICJqciB4MzEiCisgICAgICAgICAgICAgICAgZW5kCisgICAgICAgICAgICB3aGVuIFtMYWJlbFJl
ZmVyZW5jZV0KKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgInRhaWwgI3tvcGVyYW5kc1swXS5h
c21MYWJlbH0iCisgICAgICAgICAgICB3aGVuIFtMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAg
ICAgICAgICAgICRhc20ucHV0cyAidGFpbCAje29wZXJhbmRzWzBdLmFzbUxhYmVsfSIKKyAgICAg
ICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFu
ZHMob3BlcmFuZHMpCisgICAgICAgICAgICBlbmQKKyAgICAgICAgd2hlbiAiY2FsbCIKKyAgICAg
ICAgICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICAgICAgICAgIHdo
ZW4gW1JlZ2lzdGVySUQsIEltbWVkaWF0ZV0KKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImph
bHIgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICB3aGVuIFtBZGRy
ZXNzLCBJbW1lZGlhdGVdCisgICAgICAgICAgICAgICAgaWYgb3BlcmFuZHNbMF0ucmlzY3Y2NFJl
cXVpcmVzTG9hZAorICAgICAgICAgICAgICAgICAgICBvcGVyYW5kc1swXS5yaXNjdjY0TG9hZAor
ICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImxkIHgzMSwgMCh4MzEpIgorICAgICAgICAg
ICAgICAgICAgICAkYXNtLnB1dHMgImphbHIgeDMxIgorICAgICAgICAgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJsZCB4MzEsICN7b3BlcmFuZHNbMF0ucmlzY3Y2
NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImphbHIgeDMxIgorICAg
ICAgICAgICAgICAgIGVuZAorICAgICAgICAgICAgd2hlbiBbTGFiZWxSZWZlcmVuY2VdCisgICAg
ICAgICAgICAgICAgJGFzbS5wdXRzICJjYWxsICN7b3BlcmFuZHNbMF0uYXNtTGFiZWx9IgorICAg
ICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVy
YW5kcyhvcGVyYW5kcykKKyAgICAgICAgICAgIGVuZAorICAgICAgICB3aGVuICJicmVhayIKKyAg
ICAgICAgICAgICRhc20ucHV0cyAiZWJyZWFrIgorICAgICAgICB3aGVuICJyZXQiCisgICAgICAg
ICAgICAkYXNtLnB1dHMgInJldCIKKworICAgICAgICB3aGVuICJjYmVxIgorICAgICAgICAgICAg
cmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6YiwgOmVxKQorICAgICAgICB3aGVuICJjaWVx
IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6dywgOmVxKQorICAg
ICAgICB3aGVuICJjcGVxIiwgImNxZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUo
b3BlcmFuZHMsIDpkLCA6ZXEpCisgICAgICAgIHdoZW4gImNibmVxIgorICAgICAgICAgICAgcmlz
Y3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6YiwgOm5lcSkKKyAgICAgICAgd2hlbiAiY2luZXEi
CisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDp3LCA6bmVxKQorICAg
ICAgICB3aGVuICJjcG5lcSIsICJjcW5lcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFy
ZShvcGVyYW5kcywgOmQsIDpuZXEpCisgICAgICAgIHdoZW4gImNiYSIKKyAgICAgICAgICAgIHJp
c2N2NjRFbWl0Q29tcGFyZShvcGVyYW5kcywgOmIsIDphKQorICAgICAgICB3aGVuICJjaWEiCisg
ICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDp3LCA6YSkKKyAgICAgICAg
d2hlbiAiY3BhIiwgImNxYSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVyYW5k
cywgOmQsIDphKQorICAgICAgICB3aGVuICJjYmFlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0
Q29tcGFyZShvcGVyYW5kcywgOmIsIDphZXEpCisgICAgICAgIHdoZW4gImNpYWVxIgorICAgICAg
ICAgICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6dywgOmFlcSkKKyAgICAgICAgd2hl
biAiY3BhZXEiLCAiY3FhZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFu
ZHMsIDpkLCA6YWVxKQorICAgICAgICB3aGVuICJjYmIiCisgICAgICAgICAgICByaXNjdjY0RW1p
dENvbXBhcmUob3BlcmFuZHMsIDpiLCA6YikKKyAgICAgICAgd2hlbiAiY2liIgorICAgICAgICAg
ICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6dywgOmIpCisgICAgICAgIHdoZW4gImNw
YiIsICJjcWIiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDpkLCA6
YikKKyAgICAgICAgd2hlbiAiY2JiZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUo
b3BlcmFuZHMsIDpiLCA6YmVxKQorICAgICAgICB3aGVuICJjaWJlcSIKKyAgICAgICAgICAgIHJp
c2N2NjRFbWl0Q29tcGFyZShvcGVyYW5kcywgOncsIDpiZXEpCisgICAgICAgIHdoZW4gImNwYmVx
IiwgImNxYmVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6ZCwg
OmJlcSkKKyAgICAgICAgd2hlbiAiY2JsdCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFy
ZShvcGVyYW5kcywgOmIsIDpsdCkKKyAgICAgICAgd2hlbiAiY2lsdCIKKyAgICAgICAgICAgIHJp
c2N2NjRFbWl0Q29tcGFyZShvcGVyYW5kcywgOncsIDpsdCkKKyAgICAgICAgd2hlbiAiY3BsdCIs
ICJjcWx0IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6ZCwgOmx0
KQorICAgICAgICB3aGVuICJjYmx0ZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUo
b3BlcmFuZHMsIDpiLCA6bHRlcSkKKyAgICAgICAgd2hlbiAiY2lsdGVxIgorICAgICAgICAgICAg
cmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6dywgOmx0ZXEpCisgICAgICAgIHdoZW4gImNw
bHRlcSIsICJjcWx0ZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMs
IDpkLCA6bHRlcSkKKyAgICAgICAgd2hlbiAiY2JndCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0
Q29tcGFyZShvcGVyYW5kcywgOmIsIDpndCkKKyAgICAgICAgd2hlbiAiY2lndCIKKyAgICAgICAg
ICAgIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVyYW5kcywgOncsIDpndCkKKyAgICAgICAgd2hlbiAi
Y3BndCIsICJjcWd0IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6
ZCwgOmd0KQorICAgICAgICB3aGVuICJjYmd0ZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENv
bXBhcmUob3BlcmFuZHMsIDpiLCA6Z3RlcSkKKyAgICAgICAgd2hlbiAiY2lndGVxIgorICAgICAg
ICAgICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6dywgOmd0ZXEpCisgICAgICAgIHdo
ZW4gImNwZ3RlcSIsICJjcWd0ZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3Bl
cmFuZHMsIDpkLCA6Z3RlcSkKKyAgICAgICAgd2hlbiAidGJ6IgorICAgICAgICAgICAgcmlzY3Y2
NEVtaXRUZXN0KG9wZXJhbmRzLCA6YiwgOnopCisgICAgICAgIHdoZW4gInRibnoiCisgICAgICAg
ICAgICByaXNjdjY0RW1pdFRlc3Qob3BlcmFuZHMsIDpiLCA6bnopCisgICAgICAgIHdoZW4gInRp
eiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0VGVzdChvcGVyYW5kcywgOncsIDp6KQorICAgICAg
ICB3aGVuICJ0aW56IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRUZXN0KG9wZXJhbmRzLCA6dywg
Om56KQorICAgICAgICB3aGVuICJ0cHoiLCAidHF6IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRU
ZXN0KG9wZXJhbmRzLCA6ZCwgOnopCisgICAgICAgIHdoZW4gInRwbnoiLCAidHFueiIKKyAgICAg
ICAgICAgIHJpc2N2NjRFbWl0VGVzdChvcGVyYW5kcywgOmQsIDpueikKKyAgICAgICAgd2hlbiAi
dGJzIiwgInRpcyIsICJ0cHMiLCAidHFzIgorICAgICAgICAgICAgcmlzY3Y2NFJhaXNlVW5zdXBw
b3J0ZWQKKyAgICAgICAgd2hlbiAicGVlayIsICJwb2tlIgorICAgICAgICAgICAgcmlzY3Y2NFJh
aXNlVW5zdXBwb3J0ZWQKKyAgICAgICAgd2hlbiAiYm8iLCAiYnMiLCAiYnoiLCAiYm56IgorICAg
ICAgICAgICAgcmlzY3Y2NFJhaXNlVW5zdXBwb3J0ZWQKKyAgICAgICAgd2hlbiAibGVhcCIsICJs
ZWFxIgorICAgICAgICAgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAg
ICAgICAgICAgd2hlbiBbQWRkcmVzcywgUmVnaXN0ZXJJRF0KKyAgICAgICAgICAgICAgICBpZiBv
cGVyYW5kc1swXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICAgICAgICAgIG9wZXJh
bmRzWzBdLnJpc2N2NjRMb2FkCisgICAgICAgICAgICAgICAgICAgICRhc20ucHV0cyAibXYgI3tv
cGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAgICAgICAgICAgICAgICBlbHNlCisg
ICAgICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYWRkaSAje29wZXJhbmRzWzFdLnJpc2N2NjRP
cGVyYW5kfSwgI3tvcGVyYW5kc1swXS5iYXNlLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sw
XS5vZmZzZXQudmFsdWV9IgorICAgICAgICAgICAgICAgIGVuZAorICAgICAgICAgICAgd2hlbiBb
QmFzZUluZGV4LCBSZWdpc3RlcklEXQorICAgICAgICAgICAgICAgIG9wZXJhbmRzWzBdLnJpc2N2
NjRMb2FkCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJtdiAje29wZXJhbmRzWzFdLnJpc2N2
NjRPcGVyYW5kfSwgeDMxIgorICAgICAgICAgICAgd2hlbiBbTGFiZWxSZWZlcmVuY2UsIFJlZ2lz
dGVySURdCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJsbGEgI3tvcGVyYW5kc1sxXS5yaXNj
djY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0uYXNtTGFiZWx9IgorICAgICAgICAgICAgZWxzZQor
ICAgICAgICAgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykK
KyAgICAgICAgICAgIGVuZAorICAgICAgICB3aGVuICJzbXVsbGkiCisgICAgICAgICAgICByaXNj
djY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3aGVuICJtZW1mZW5jZSIKKyAgICAgICAgICAg
ICRhc20ucHV0cyAiZmVuY2UgcncsIHJ3IgorICAgICAgICB3aGVuICJmZW5jZSIKKyAgICAgICAg
ICAgICRhc20ucHV0cyAiZmVuY2UiCisgICAgICAgIHdoZW4gImJmaXEiCisgICAgICAgICAgICBy
aXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3aGVuICJwY3J0b2FkZHIiCisgICAgICAg
ICAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgICAgICAgICB3aGVu
IFtMYWJlbFJlZmVyZW5jZSwgUmVnaXN0ZXJJRF0KKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMg
ImxsYSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5hc21MYWJl
bH0iCisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0
Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgICAgICAgICAgZW5kCisgICAgICAgIHdoZW4gImds
b2JhbGFkZHIiCisgICAgICAgICAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMp
CisgICAgICAgICAgICB3aGVuIFtMYWJlbFJlZmVyZW5jZSwgUmVnaXN0ZXJJRF0KKyAgICAgICAg
ICAgICAgICAkYXNtLnB1dHMgImxhICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29w
ZXJhbmRzWzBdLmFzbUxhYmVsfSIKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICBy
aXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgICAgICAgICBlbmQK
KyAgICAgICAgd2hlbiAibHJvdGF0ZWkiLCAibHJvdGF0ZXEiCisgICAgICAgICAgICByaXNjdjY0
UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3aGVuICJycm90YXRlaSIsICJycm90YXRlcSIKKyAg
ICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAgIHdoZW4gIm1vdmVkIgor
ICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUE9wZXJhdGlvbihvcGVyYW5kcywgImZtdi5kIikKKyAg
ICAgICAgd2hlbiAibG9hZGYiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQTG9hZChvcGVyYW5k
cywgImZsdyIpCisgICAgICAgIHdoZW4gImxvYWRkIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRG
UExvYWQob3BlcmFuZHMsICJmbGQiKQorICAgICAgICB3aGVuICJzdG9yZWYiCisgICAgICAgICAg
ICByaXNjdjY0RW1pdEZQU3RvcmUob3BlcmFuZHMsICJmc3ciKQorICAgICAgICB3aGVuICJzdG9y
ZWQiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQU3RvcmUob3BlcmFuZHMsICJmc2QiKQorICAg
ICAgICB3aGVuICJhZGRmIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUE9wZXJhdGlvbihbb3Bl
cmFuZHNbMF0sIG9wZXJhbmRzWzFdLCBvcGVyYW5kc1sxXV0sICJmYWRkLnMiKQorICAgICAgICB3
aGVuICJhZGRkIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUE9wZXJhdGlvbihbb3BlcmFuZHNb
MF0sIG9wZXJhbmRzWzFdLCBvcGVyYW5kc1sxXV0sICJmYWRkLmQiKQorICAgICAgICB3aGVuICJz
dWJmIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUE9wZXJhdGlvbihbb3BlcmFuZHNbMV0sIG9w
ZXJhbmRzWzBdLCBvcGVyYW5kc1sxXV0sICJmc3ViLnMiKQorICAgICAgICB3aGVuICJzdWJkIgor
ICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUE9wZXJhdGlvbihbb3BlcmFuZHNbMV0sIG9wZXJhbmRz
WzBdLCBvcGVyYW5kc1sxXV0sICJmc3ViLmQiKQorICAgICAgICB3aGVuICJtdWxmIgorICAgICAg
ICAgICAgcmlzY3Y2NEVtaXRGUE9wZXJhdGlvbihbb3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdLCBv
cGVyYW5kc1sxXV0sICJmbXVsLnMiKQorICAgICAgICB3aGVuICJtdWxkIgorICAgICAgICAgICAg
cmlzY3Y2NEVtaXRGUE9wZXJhdGlvbihbb3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdLCBvcGVyYW5k
c1sxXV0sICJmbXVsLmQiKQorICAgICAgICB3aGVuICJkaXZmIgorICAgICAgICAgICAgcmlzY3Y2
NEVtaXRGUE9wZXJhdGlvbihbb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXV0s
ICJmZGl2LnMiKQorICAgICAgICB3aGVuICJkaXZkIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRG
UE9wZXJhdGlvbihbb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXV0sICJmZGl2
LmQiKQorICAgICAgICB3aGVuICJzcXJ0ZiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBPcGVy
YXRpb24ob3BlcmFuZHMsICJmc3FydC5zIikKKyAgICAgICAgd2hlbiAic3FydGQiCisgICAgICAg
ICAgICByaXNjdjY0RW1pdEZQT3BlcmF0aW9uKG9wZXJhbmRzLCAiZnNxcnQuZCIpCisgICAgICAg
IHdoZW4gImFic2YiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQT3BlcmF0aW9uKG9wZXJhbmRz
LCAiZmFicy5zIikKKyAgICAgICAgd2hlbiAiYWJzZCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0
RlBPcGVyYXRpb24ob3BlcmFuZHMsICJmYWJzLmQiKQorICAgICAgICB3aGVuICJuZWdmIgorICAg
ICAgICAgICAgcmlzY3Y2NEVtaXRGUE9wZXJhdGlvbihvcGVyYW5kcywgImZuZWcucyIpCisgICAg
ICAgIHdoZW4gIm5lZ2QiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQT3BlcmF0aW9uKG9wZXJh
bmRzLCAiZm5lZy5kIikKKyAgICAgICAgd2hlbiAiZmxvb3JmIgorICAgICAgICAgICAgcmlzY3Y2
NEVtaXRGUFJvdW5kT3BlcmF0aW9uKG9wZXJhbmRzLCA6cywgInJkbiIpCisgICAgICAgIHdoZW4g
ImZsb29yZCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBSb3VuZE9wZXJhdGlvbihvcGVyYW5k
cywgOmQsICJyZG4iKQorICAgICAgICB3aGVuICJjZWlsZiIKKyAgICAgICAgICAgIHJpc2N2NjRF
bWl0RlBSb3VuZE9wZXJhdGlvbihvcGVyYW5kcywgOnMsICJydXAiKQorICAgICAgICB3aGVuICJj
ZWlsZCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBSb3VuZE9wZXJhdGlvbihvcGVyYW5kcywg
OmQsICJydXAiKQorICAgICAgICB3aGVuICJyb3VuZGYiCisgICAgICAgICAgICByaXNjdjY0RW1p
dEZQUm91bmRPcGVyYXRpb24ob3BlcmFuZHMsIDpzLCAicm5lIikKKyAgICAgICAgd2hlbiAicm91
bmRkIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUFJvdW5kT3BlcmF0aW9uKG9wZXJhbmRzLCA6
ZCwgInJuZSIpCisgICAgICAgIHdoZW4gInRydW5jYXRlZiIKKyAgICAgICAgICAgIHJpc2N2NjRF
bWl0RlBSb3VuZE9wZXJhdGlvbihvcGVyYW5kcywgOnMsICJydHoiKQorICAgICAgICB3aGVuICJ0
cnVuY2F0ZWQiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQUm91bmRPcGVyYXRpb24ob3BlcmFu
ZHMsIDpkLCAicnR6IikKKyAgICAgICAgd2hlbiAidHJ1bmNhdGVmMmkiCisgICAgICAgICAgICBy
aXNjdjY0RW1pdEZQQ29udmVydE9wZXJhdGlvbihvcGVyYW5kcywgOnMsIDp3dSwgInJ0eiIpCisg
ICAgICAgIHdoZW4gInRydW5jYXRlZDJpIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbnZl
cnRPcGVyYXRpb24ob3BlcmFuZHMsIDpkLCA6d3UsICJydHoiKQorICAgICAgICB3aGVuICJ0cnVu
Y2F0ZWYycSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb252ZXJ0T3BlcmF0aW9uKG9wZXJh
bmRzLCA6cywgOmx1LCAicnR6IikKKyAgICAgICAgd2hlbiAidHJ1bmNhdGVkMnEiCisgICAgICAg
ICAgICByaXNjdjY0RW1pdEZQQ29udmVydE9wZXJhdGlvbihvcGVyYW5kcywgOmQsIDpsdSwgInJ0
eiIpCisgICAgICAgIHdoZW4gInRydW5jYXRlZjJpcyIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0
RlBDb252ZXJ0T3BlcmF0aW9uKG9wZXJhbmRzLCA6cywgOncsICJydHoiKQorICAgICAgICB3aGVu
ICJ0cnVuY2F0ZWQyaXMiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29udmVydE9wZXJhdGlv
bihvcGVyYW5kcywgOmQsIDp3LCAicnR6IikKKyAgICAgICAgd2hlbiAidHJ1bmNhdGVmMnFzIgor
ICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbnZlcnRPcGVyYXRpb24ob3BlcmFuZHMsIDpzLCA6
bCwgInJ0eiIpCisgICAgICAgIHdoZW4gInRydW5jYXRlZDJxcyIKKyAgICAgICAgICAgIHJpc2N2
NjRFbWl0RlBDb252ZXJ0T3BlcmF0aW9uKG9wZXJhbmRzLCA6ZCwgOmwsICJydHoiKQorICAgICAg
ICB3aGVuICJjaTJmIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbnZlcnRPcGVyYXRpb24o
b3BlcmFuZHMsIDp3dSwgOnMsIDpub25lKQorICAgICAgICB3aGVuICJjaTJkIgorICAgICAgICAg
ICAgcmlzY3Y2NEVtaXRGUENvbnZlcnRPcGVyYXRpb24ob3BlcmFuZHMsIDp3dSwgOmQsIDpub25l
KQorICAgICAgICB3aGVuICJjaTJmcyIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb252ZXJ0
T3BlcmF0aW9uKG9wZXJhbmRzLCA6dywgOnMsIDpub25lKQorICAgICAgICB3aGVuICJjaTJkcyIK
KyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb252ZXJ0T3BlcmF0aW9uKG9wZXJhbmRzLCA6dywg
OmQsIDpub25lKQorICAgICAgICB3aGVuICJjcTJmIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRG
UENvbnZlcnRPcGVyYXRpb24ob3BlcmFuZHMsIDpsdSwgOnMsIDpub25lKQorICAgICAgICB3aGVu
ICJjcTJkIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbnZlcnRPcGVyYXRpb24ob3BlcmFu
ZHMsIDpsdSwgOmQsIDpub25lKQorICAgICAgICB3aGVuICJjcTJmcyIKKyAgICAgICAgICAgIHJp
c2N2NjRFbWl0RlBDb252ZXJ0T3BlcmF0aW9uKG9wZXJhbmRzLCA6bCwgOnMsIDpub25lKQorICAg
ICAgICB3aGVuICJjcTJkcyIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb252ZXJ0T3BlcmF0
aW9uKG9wZXJhbmRzLCA6bCwgOmQsIDpub25lKQorICAgICAgICB3aGVuICJjZjJkIgorICAgICAg
ICAgICAgcmlzY3Y2NEVtaXRGUENvbnZlcnRPcGVyYXRpb24ob3BlcmFuZHMsIDpzLCA6ZCwgOm5v
bmUpCisgICAgICAgIHdoZW4gImNkMmYiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29udmVy
dE9wZXJhdGlvbihvcGVyYW5kcywgOmQsIDpzLCA6bm9uZSkKKyAgICAgICAgd2hlbiAidHpjbnRp
IiwgInR6Y250cSIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAg
IHdoZW4gImx6Y250aSIsICJsemNudHEiCisgICAgICAgICAgICByaXNjdjY0UmFpc2VVbnN1cHBv
cnRlZAorICAgICAgICB3aGVuICJhbmRmIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUEJpdHdp
c2VPcGVyYXRpb24ob3BlcmFuZHMsIDpzLCAiYW5kIikKKyAgICAgICAgd2hlbiAiYW5kZCIKKyAg
ICAgICAgICAgIHJpc2N2NjRFbWl0RlBCaXR3aXNlT3BlcmF0aW9uKG9wZXJhbmRzLCA6ZCwgImFu
ZCIpCisgICAgICAgIHdoZW4gIm9yZiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBCaXR3aXNl
T3BlcmF0aW9uKG9wZXJhbmRzLCA6cywgIm9yIikKKyAgICAgICAgd2hlbiAib3JkIgorICAgICAg
ICAgICAgcmlzY3Y2NEVtaXRGUEJpdHdpc2VPcGVyYXRpb24ob3BlcmFuZHMsIDpkLCAib3IiKQor
ICAgICAgICB3aGVuICJjZmVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbXBhcmUob3Bl
cmFuZHMsIDpzLCA6ZXEpCisgICAgICAgIHdoZW4gImNmbmVxIgorICAgICAgICAgICAgcmlzY3Y2
NEVtaXRGUENvbXBhcmUob3BlcmFuZHMsIDpzLCA6bmVxKQorICAgICAgICB3aGVuICJjZmx0Igor
ICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbXBhcmUob3BlcmFuZHMsIDpzLCA6bHQpCisgICAg
ICAgIHdoZW4gImNmbHRlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb21wYXJlKG9wZXJh
bmRzLCA6cywgOmx0ZXEpCisgICAgICAgIHdoZW4gImNmZ3QiCisgICAgICAgICAgICByaXNjdjY0
RW1pdEZQQ29tcGFyZShvcGVyYW5kcywgOnMsIDpndCkKKyAgICAgICAgd2hlbiAiY2ZndGVxIgor
ICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbXBhcmUob3BlcmFuZHMsIDpzLCA6Z3RlcSkKKyAg
ICAgICAgd2hlbiAiY2ZuZXF1biIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb21wYXJlKG9w
ZXJhbmRzLCA6cywgOm5lcXVuKQorICAgICAgICB3aGVuICJjZGVxIgorICAgICAgICAgICAgcmlz
Y3Y2NEVtaXRGUENvbXBhcmUob3BlcmFuZHMsIDpkLCA6ZXEpCisgICAgICAgIHdoZW4gImNkbmVx
IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbXBhcmUob3BlcmFuZHMsIDpkLCA6bmVxKQor
ICAgICAgICB3aGVuICJjZGx0IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbXBhcmUob3Bl
cmFuZHMsIDpkLCA6bHQpCisgICAgICAgIHdoZW4gImNkbHRlcSIKKyAgICAgICAgICAgIHJpc2N2
NjRFbWl0RlBDb21wYXJlKG9wZXJhbmRzLCA6ZCwgOmx0ZXEpCisgICAgICAgIHdoZW4gImNkZ3Qi
CisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29tcGFyZShvcGVyYW5kcywgOmQsIDpndCkKKyAg
ICAgICAgd2hlbiAiY2RndGVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbXBhcmUob3Bl
cmFuZHMsIDpkLCA6Z3RlcSkKKyAgICAgICAgd2hlbiAiY2RuZXF1biIKKyAgICAgICAgICAgIHJp
c2N2NjRFbWl0RlBDb21wYXJlKG9wZXJhbmRzLCA6ZCwgOm5lcXVuKQorICAgICAgICB3aGVuICJm
aTJmIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvcHkob3BlcmFuZHMsIDpzKQorICAgICAg
ICB3aGVuICJmZjJpIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvcHkob3BlcmFuZHMsIDpz
KQorICAgICAgICB3aGVuICJmcDJkIiwgImZxMmQiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQ
Q29weShvcGVyYW5kcywgOmQpCisgICAgICAgIHdoZW4gImZkMnAiLCAiZmQycSIKKyAgICAgICAg
ICAgIHJpc2N2NjRFbWl0RlBDb3B5KG9wZXJhbmRzLCA6ZCkKKyAgICAgICAgd2hlbiAidGxzX2xv
YWRwIiwgInRsc19zdG9yZXAiCisgICAgICAgICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAor
ICAgICAgICB3aGVuICJsb2FkbGlua2FjcWIiLCAibG9hZGxpbmthY3FoIiwgImxvYWRsaW5rYWNx
aSIsICJsb2FkbGlua2FjcXEiCisgICAgICAgICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAor
ICAgICAgICB3aGVuICJzdG9yZWNvbmRyZWxiIiwgInN0b3JlY29uZHJlbGgiLCAic3RvcmVjb25k
cmVsaSIsICJzdG9yZWNvbmRyZWxxIgorICAgICAgICAgICAgcmlzY3Y2NFJhaXNlVW5zdXBwb3J0
ZWQKKyAgICAgICAgd2hlbiAiYXRvbWljeGNoZ2FkZGIiLCAiYXRvbWljeGNoZ2FkZGgiLCAiYXRv
bWljeGNoZ2FkZGkiLCAiYXRvbWljeGNoZ2FkZHEiCisgICAgICAgICAgICByaXNjdjY0UmFpc2VV
bnN1cHBvcnRlZAorICAgICAgICB3aGVuICJhdG9taWN4Y2hnY2xlYXJiIiwgImF0b21pY3hjaGdj
bGVhcmgiLCAiYXRvbWljeGNoZ2NsZWFyaSIsICJhdG9taWN4Y2hnY2xlYXJxIgorICAgICAgICAg
ICAgcmlzY3Y2NFJhaXNlVW5zdXBwb3J0ZWQKKyAgICAgICAgd2hlbiAiYXRvbWljeGNoZ29yYiIs
ICJhdG9taWN4Y2hnb3JoIiwgImF0b21pY3hjaGdvcmkiLCAiYXRvbWljeGNoZ29ycSIKKyAgICAg
ICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAgIHdoZW4gImF0b21pY3hjaGd4
b3JiIiwgImF0b21pY3hjaGd4b3JoIiwgImF0b21pY3hjaGd4b3JpIiwgImF0b21pY3hjaGd4b3Jx
IgorICAgICAgICAgICAgcmlzY3Y2NFJhaXNlVW5zdXBwb3J0ZWQKKyAgICAgICAgd2hlbiAiYXRv
bWljeGNoZ2IiLCAiYXRvbWljeGNoZ2giLCAiYXRvbWljeGNoZ2kiLCAiYXRvbWljeGNoZ3EiCisg
ICAgICAgICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3aGVuICJhdG9taWN3
ZWFrY2FzYiIsICJhdG9taWN3ZWFrY2FzaCIsICJhdG9taWN3ZWFrY2FzaSIsICJhdG9taWN3ZWFr
Y2FzcSIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAgIHdoZW4g
ImF0b21pY2xvYWRiIiwgImF0b21pY2xvYWRoIiwgImF0b21pY2xvYWRpIiwgImF0b21pY2xvYWRx
IgorICAgICAgICAgICAgcmlzY3Y2NFJhaXNlVW5zdXBwb3J0ZWQKKyAgICAgICAgZWxzZQorICAg
ICAgICAgICAgbG93ZXJEZWZhdWx0CisgICAgICAgIGVuZAorICAgIGVuZAorZW5kCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUVuYWJsZS5oIGIvU291cmNlL1dURi93dGYvUGxh
dGZvcm1FbmFibGUuaAppbmRleCA1YzE0ZDE0YzE0ODIuLmJhYWZhZjg3ZDE5YiAxMDA2NDQKLS0t
IGEvU291cmNlL1dURi93dGYvUGxhdGZvcm1FbmFibGUuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9Q
bGF0Zm9ybUVuYWJsZS5oCkBAIC04ODAsNyArODgwLDcgQEAKICAgIHRoYXQgZXhlY3V0ZXMgZWFj
aCBvcGNvZGUuIEl0IGNhbm5vdCBiZSBzdXBwb3J0ZWQgYnkgdGhlIENMb29wIHNpbmNlIHRoZXJl
J3Mgbm8gd2F5IHRvIGVtYmVkIHRoZQogICAgT3Bjb2RlSUQgd29yZCBpbiB0aGUgQ0xvb3AncyBz
d2l0Y2ggc3RhdGVtZW50IGNhc2VzLiBJdCBpcyBhbHNvIGN1cnJlbnRseSBub3QgaW1wbGVtZW50
ZWQgZm9yIE1TVkMuCiAqLwotI2lmICFkZWZpbmVkKEVOQUJMRV9MTElOVF9FTUJFRERFRF9PUENP
REVfSUQpICYmICFFTkFCTEUoQ19MT09QKSAmJiAhQ09NUElMRVIoTVNWQykgJiYgKENQVShYODYp
IHx8IENQVShYODZfNjQpIHx8IENQVShBUk02NCkgfHwgKENQVShBUk1fVEhVTUIyKSAmJiBPUyhE
QVJXSU4pKSkKKyNpZiAhZGVmaW5lZChFTkFCTEVfTExJTlRfRU1CRURERURfT1BDT0RFX0lEKSAm
JiAhRU5BQkxFKENfTE9PUCkgJiYgIUNPTVBJTEVSKE1TVkMpICYmIChDUFUoWDg2KSB8fCBDUFUo
WDg2XzY0KSB8fCBDUFUoQVJNNjQpIHx8IChDUFUoQVJNX1RIVU1CMikgJiYgT1MoREFSV0lOKSkg
fHwgQ1BVKFJJU0NWNjQpKQogI2RlZmluZSBFTkFCTEVfTExJTlRfRU1CRURERURfT1BDT0RFX0lE
IDEKICNlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21h
a2UgYi9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UKaW5kZXggZDc4ZTZkMzQ1YTAw
Li4xZWI5ZjhjMTEyYzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5j
bWFrZQorKysgYi9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UKQEAgLTg0LDcgKzg0
LDcgQEAgbWFjcm8oV0VCS0lUX09QVElPTl9CRUdJTikKICAgICAgICAgc2V0KEVOQUJMRV9KSVRf
REVGQVVMVCBPRkYpCiAgICAgICAgIHNldChFTkFCTEVfRlRMX0RFRkFVTFQgT0ZGKQogICAgICAg
ICBzZXQoVVNFX1NZU1RFTV9NQUxMT0NfREVGQVVMVCBPRkYpCi0gICAgICAgIHNldChFTkFCTEVf
Q19MT09QX0RFRkFVTFQgT04pCisgICAgICAgIHNldChFTkFCTEVfQ19MT09QX0RFRkFVTFQgT0ZG
KQogICAgICAgICBzZXQoRU5BQkxFX1NBTVBMSU5HX1BST0ZJTEVSX0RFRkFVTFQgT0ZGKQogICAg
IGVsc2UgKCkKICAgICAgICAgc2V0KEVOQUJMRV9KSVRfREVGQVVMVCBPRkYpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>436160</attachid>
            <date>2021-08-23 01:12:54 -0700</date>
            <delta_ts>2021-08-27 11:26:48 -0700</delta_ts>
            <desc>WIP</desc>
            <filename>bug-229035-20210823101252.patch</filename>
            <type>text/plain</type>
            <size>167570</size>
            <attacher name="Zan Dobersek">zan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgxNDM5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1
NWQ0NTJlN2MwODc0MjZkNWZjODgxMDBiODQ3NzYxOTRlNjJjMGQ3Li4wMDMyZGQ0Njk4ZDkxMDUx
MzQ0OWU0NmVmNDRhZDc1YjdkYThiZDJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMTAgQEAKKzIwMjEtMDgtMjMgIFphbiBEb2JlcnNlayAgPHpkb2JlcnNla0BpZ2FsaWEu
Y29tPgorCisgICAgICAgIFJJU0NWNjQgc3VwcG9ydCBpbiBMTEludAorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI5MDM1CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAgICAg
ICAgKiBTb3VyY2VzLnR4dDoKKyAgICAgICAgKiBhc3NlbWJsZXIvQWJzdHJhY3RNYWNyb0Fzc2Vt
Ymxlci5oOgorICAgICAgICAqIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlci5oOgorICAgICAgICAq
IGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlclJJU0NWNjQuY3BwOiBBZGRlZC4KKyAgICAgICAgKEpT
Qzo6TWFjcm9Bc3NlbWJsZXI6OnByb2JlKToKKyAgICAgICAgKiBhc3NlbWJsZXIvTWFjcm9Bc3Nl
bWJsZXJSSVNDVjY0Lmg6IEFkZGVkLgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlclJJU0NW
NjQ6OnNjcmF0Y2hSZWdpc3Rlcik6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyUklTQ1Y2
NDo6c3VwcG9ydHNGbG9hdGluZ1BvaW50KToKKyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJS
SVNDVjY0OjpzdXBwb3J0c0Zsb2F0aW5nUG9pbnRUcnVuY2F0ZSk6CisgICAgICAgIChKU0M6Ok1h
Y3JvQXNzZW1ibGVyUklTQ1Y2NDo6c3VwcG9ydHNGbG9hdGluZ1BvaW50U3FydCk6CisgICAgICAg
IChKU0M6Ok1hY3JvQXNzZW1ibGVyUklTQ1Y2NDo6c3VwcG9ydHNGbG9hdGluZ1BvaW50QWJzKToK
KyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJSSVNDVjY0OjpzdXBwb3J0c0Zsb2F0aW5nUG9p
bnRSb3VuZGluZyk6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyUklTQ1Y2NDo6aW52ZXJ0
KToKKyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJSSVNDVjY0OjpyZWFkQ2FsbFRhcmdldCk6
CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyUklTQ1Y2NDo6cmVwbGFjZVdpdGhWTUhhbHQp
OgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlclJJU0NWNjQ6OnJlcGxhY2VXaXRoSnVtcCk6
CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyUklTQ1Y2NDo6bWF4SnVtcFJlcGxhY2VtZW50
U2l6ZSk6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyUklTQ1Y2NDo6cGF0Y2hhYmxlSnVt
cFNpemUpOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlclJJU0NWNjQ6OnN0YXJ0T2ZCcmFu
Y2hQdHJXaXRoUGF0Y2hPblJlZ2lzdGVyKToKKyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJS
SVNDVjY0OjpzdGFydE9mUGF0Y2hhYmxlQnJhbmNoUHRyV2l0aFBhdGNoT25BZGRyZXNzKToKKyAg
ICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJSSVNDVjY0OjpzdGFydE9mUGF0Y2hhYmxlQnJhbmNo
MzJXaXRoUGF0Y2hPbkFkZHJlc3MpOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlclJJU0NW
NjQ6OnJldmVydEp1bXBSZXBsYWNlbWVudFRvQnJhbmNoUHRyV2l0aFBhdGNoKToKKyAgICAgICAg
KEpTQzo6TWFjcm9Bc3NlbWJsZXJSSVNDVjY0OjpyZXZlcnRKdW1wUmVwbGFjZW1lbnRUb1BhdGNo
YWJsZUJyYW5jaFB0cldpdGhQYXRjaCk6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyUklT
Q1Y2NDo6cmV2ZXJ0SnVtcFJlcGxhY2VtZW50VG9QYXRjaGFibGVCcmFuY2gzMldpdGhQYXRjaCk6
CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyUklTQ1Y2NDo6cmVwYXRjaENhbGwpOgorICAg
ICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlclJJU0NWNjQ6OnJldCk6CisgICAgICAgIChKU0M6Ok1h
Y3JvQXNzZW1ibGVyUklTQ1Y2NDo6YnJlYWtwb2ludCk6CisgICAgICAgIChKU0M6Ok1hY3JvQXNz
ZW1ibGVyUklTQ1Y2NDo6bm9wKToKKyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJSSVNDVjY0
OjptZW1vcnlGZW5jZSk6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyUklTQ1Y2NDo6c3Rv
cmVGZW5jZSk6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyUklTQ1Y2NDo6bG9hZEZlbmNl
KToKKyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJSSVNDVjY0OjpsaW5rQ2FsbCk6CisgICAg
ICAgICogYXNzZW1ibGVyL01heEZyYW1lRXh0ZW50Rm9yU2xvd1BhdGhDYWxsLmg6CisgICAgICAg
ICogYXNzZW1ibGVyL1BlcmZMb2cuY3BwOgorICAgICAgICAqIGFzc2VtYmxlci9Qcm9iZUNvbnRl
eHQuaDoKKyAgICAgICAgKEpTQzo6UHJvYmU6OkNQVVN0YXRlOjpwYyk6CisgICAgICAgIChKU0M6
OlByb2JlOjpDUFVTdGF0ZTo6ZnApOgorICAgICAgICAoSlNDOjpQcm9iZTo6Q1BVU3RhdGU6OnNw
KToKKyAgICAgICAgKiBhc3NlbWJsZXIvUklTQ1Y2NEFzc2VtYmxlci5oOiBBZGRlZC4KKyAgICAg
ICAgKEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6Zmlyc3RSZWdpc3Rlcik6CisgICAgICAgIChKU0M6
OlJJU0NWNjRBc3NlbWJsZXI6Omxhc3RSZWdpc3Rlcik6CisgICAgICAgIChKU0M6OlJJU0NWNjRB
c3NlbWJsZXI6Om51bWJlck9mUmVnaXN0ZXJzKToKKyAgICAgICAgKEpTQzo6UklTQ1Y2NEFzc2Vt
Ymxlcjo6Zmlyc3RTUFJlZ2lzdGVyKToKKyAgICAgICAgKEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6
bGFzdFNQUmVnaXN0ZXIpOgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVyOjpudW1iZXJP
ZlNQUmVnaXN0ZXJzKToKKyAgICAgICAgKEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6Zmlyc3RGUFJl
Z2lzdGVyKToKKyAgICAgICAgKEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6bGFzdEZQUmVnaXN0ZXIp
OgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVyOjpudW1iZXJPZkZQUmVnaXN0ZXJzKToK
KyAgICAgICAgKEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6Z3ByTmFtZSk6CisgICAgICAgIChKU0M6
OlJJU0NWNjRBc3NlbWJsZXI6OnNwck5hbWUpOgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1i
bGVyOjpmcHJOYW1lKToKKyAgICAgICAgKEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6UklTQ1Y2NEFz
c2VtYmxlcik6CisgICAgICAgIChKU0M6OlJJU0NWNjRBc3NlbWJsZXI6OmJ1ZmZlcik6CisgICAg
ICAgIChKU0M6OlJJU0NWNjRBc3NlbWJsZXI6OmludmVydCk6CisgICAgICAgIChKU0M6OlJJU0NW
NjRBc3NlbWJsZXI6OmdldFJlbG9jYXRlZEFkZHJlc3MpOgorICAgICAgICAoSlNDOjpSSVNDVjY0
QXNzZW1ibGVyOjpjb2RlU2l6ZSBjb25zdCk6CisgICAgICAgIChKU0M6OlJJU0NWNjRBc3NlbWJs
ZXI6OmdldENhbGxSZXR1cm5PZmZzZXQpOgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVy
OjpsYWJlbElnbm9yaW5nV2F0Y2hwb2ludHMpOgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1i
bGVyOjpsYWJlbEZvcldhdGNocG9pbnQpOgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVy
OjpsYWJlbCk6CisgICAgICAgIChKU0M6OlJJU0NWNjRBc3NlbWJsZXI6OmxpbmtKdW1wKToKKyAg
ICAgICAgKEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6bGlua0NhbGwpOgorICAgICAgICAoSlNDOjpS
SVNDVjY0QXNzZW1ibGVyOjpsaW5rUG9pbnRlcik6CisgICAgICAgIChKU0M6OlJJU0NWNjRBc3Nl
bWJsZXI6Om1heEp1bXBSZXBsYWNlbWVudFNpemUpOgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNz
ZW1ibGVyOjpwYXRjaGFibGVKdW1wU2l6ZSk6CisgICAgICAgIChKU0M6OlJJU0NWNjRBc3NlbWJs
ZXI6OnJlcGF0Y2hQb2ludGVyKToKKyAgICAgICAgKEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6cmVs
aW5rSnVtcCk6CisgICAgICAgIChKU0M6OlJJU0NWNjRBc3NlbWJsZXI6OnJlbGlua0p1bXBUb05v
cCk6CisgICAgICAgIChKU0M6OlJJU0NWNjRBc3NlbWJsZXI6OnJlbGlua0NhbGwpOgorICAgICAg
ICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVyOjpkZWJ1Z09mZnNldCk6CisgICAgICAgIChKU0M6OlJJ
U0NWNjRBc3NlbWJsZXI6OmNhY2hlRmx1c2gpOgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1i
bGVyOjpmaWxsTm9wcyk6CisgICAgICAgICogYXNzZW1ibGVyL1JJU0NWNjRSZWdpc3RlcnMuaDog
QWRkZWQuCisgICAgICAgICogYnl0ZWNvZGUvSW5saW5lQWNjZXNzLmg6CisgICAgICAgIChKU0M6
OklubGluZUFjY2Vzczo6c2l6ZUZvclByb3BlcnR5QWNjZXNzKToKKyAgICAgICAgKEpTQzo6SW5s
aW5lQWNjZXNzOjpzaXplRm9yUHJvcGVydHlSZXBsYWNlKToKKyAgICAgICAgKEpTQzo6SW5saW5l
QWNjZXNzOjpzaXplRm9yTGVuZ3RoQWNjZXNzKToKKyAgICAgICAgKiBqaXQvRlBSSW5mby5oOgor
ICAgICAgICAoSlNDOjpGUFJJbmZvOjp0b1JlZ2lzdGVyKToKKyAgICAgICAgKEpTQzo6RlBSSW5m
bzo6dG9Bcmd1bWVudFJlZ2lzdGVyKToKKyAgICAgICAgKEpTQzo6RlBSSW5mbzo6dG9JbmRleCk6
CisgICAgICAgIChKU0M6OkZQUkluZm86OmRlYnVnTmFtZSk6CisgICAgICAgICogaml0L0dQUklu
Zm8uaDoKKyAgICAgICAgKEpTQzo6R1BSSW5mbzo6dG9SZWdpc3Rlcik6CisgICAgICAgIChKU0M6
OkdQUkluZm86OnRvQXJndW1lbnRSZWdpc3Rlcik6CisgICAgICAgIChKU0M6OkdQUkluZm86OnRv
SW5kZXgpOgorICAgICAgICAoSlNDOjpHUFJJbmZvOjpkZWJ1Z05hbWUpOgorICAgICAgICAqIGpp
dC9SZWdpc3RlclNldC5jcHA6CisgICAgICAgIChKU0M6OlJlZ2lzdGVyU2V0Ojp2bUNhbGxlZVNh
dmVSZWdpc3RlcnMpOgorICAgICAgICAoSlNDOjpSZWdpc3RlclNldDo6bGxpbnRCYXNlbGluZUNh
bGxlZVNhdmVSZWdpc3RlcnMpOgorICAgICAgICAqIGxsaW50L0xMSW50RGF0YS5oOgorICAgICAg
ICAqIGxsaW50L0xMSW50T2ZmbGluZUFzbUNvbmZpZy5oOgorICAgICAgICAqIGxsaW50L0xvd0xl
dmVsSW50ZXJwcmV0ZXIuYXNtOgorICAgICAgICAqIGxsaW50L0xvd0xldmVsSW50ZXJwcmV0ZXIu
Y3BwOgorICAgICAgICAqIGxsaW50L0xvd0xldmVsSW50ZXJwcmV0ZXI2NC5hc206CisgICAgICAg
ICogb2ZmbGluZWFzbS9iYWNrZW5kcy5yYjoKKyAgICAgICAgKiBvZmZsaW5lYXNtL3JlZ2lzdGVy
cy5yYjoKKyAgICAgICAgKiBvZmZsaW5lYXNtL3Jpc2N2NjQucmI6IEFkZGVkLgorCiAyMDIxLTA4
LTIyICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CiAKICAgICAgICAgW0pTQ10g
UmVtb3ZlIGFscmVhZHktc2hpcHBlZCB3YXNtIG9wdGlvbiBmbGFncwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dURi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV1RGL0NoYW5nZUxvZwppbmRleCA2NDZhMWY3NGNj
OTgwMWU5MWZkMGNmN2RmNTVjZjQ1YjkzYmMxM2FlLi40ZDM2Y2UyMWUwMWQ3ZDAyNTY0NjNmMWE3
M2UzZTFmYjkwYThmZmNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL0NoYW5nZUxvZworKysgYi9T
b3VyY2UvV1RGL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDIxLTA4LTIzICBaYW4gRG9i
ZXJzZWsgIDx6ZG9iZXJzZWtAaWdhbGlhLmNvbT4KKworICAgICAgICBSSVNDVjY0IHN1cHBvcnQg
aW4gTExJbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIyOTAzNQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
ICogd3RmL1BsYXRmb3JtRW5hYmxlLmg6CisKIDIwMjEtMDgtMjEgIE15bGVzIEMuIE1heGZpZWxk
ICA8bW1heGZpZWxkQGFwcGxlLmNvbT4KIAogICAgICAgICBvdmVyd3JpdGVDb2RlUG9pbnQoKSBp
biBjcmVhdGVBbmRGaWxsR2x5cGhQYWdlKCkgaXMgd3JvbmcKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DTWFr
ZUxpc3RzLnR4dAppbmRleCBiYjY1NGI1NDQ0ZDIxOTY3OTZlYWZhNDI1NTc4ZDAzOGVhYjc2Y2U5
Li5lYjU5ZWU1MmQ1ZmFiZDMxMTg5NjE0OTRhNTJlZDliZWFjZjY1ODQzIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC0yMTYsNiArMjE2LDcgQEAgc2V0KE9GRkxJTkVfQVNN
CiAgICAgb2ZmbGluZWFzbS9wYXJzZXIucmIKICAgICBvZmZsaW5lYXNtL3JlZ2lzdGVycy5yYgog
ICAgIG9mZmxpbmVhc20vcmlzYy5yYgorICAgIG9mZmxpbmVhc20vcmlzY3Y2NC5yYgogICAgIG9m
ZmxpbmVhc20vc2VsZl9oYXNoLnJiCiAgICAgb2ZmbGluZWFzbS9zZXR0aW5ncy5yYgogICAgIG9m
ZmxpbmVhc20vdHJhbnNmb3JtLnJiCkBAIC0yNzMsNiArMjc0LDggQEAgZWxzZSAoKQogICAgICAg
ICBzZXQoT0ZGTElORV9BU01fQkFDS0VORCAiQVJNdjciKQogICAgIGVsc2VpZiAoV1RGX0NQVV9N
SVBTKQogICAgICAgICBzZXQoT0ZGTElORV9BU01fQkFDS0VORCAiTUlQUyIpCisgICAgZWxzZWlm
IChXVEZfQ1BVX1JJU0NWNjQpCisgICAgICAgIHNldChPRkZMSU5FX0FTTV9CQUNLRU5EICJSSVND
VjY0IikKICAgICBlbmRpZiAoKQogCiAgICAgaWYgKE5PVCBFTkFCTEVfSklUKQpAQCAtNTEzLDkg
KzUxNiwxMiBAQCBzZXQoSmF2YVNjcmlwdENvcmVfUFJJVkFURV9GUkFNRVdPUktfSEVBREVSUwog
ICAgIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlckNvZGVSZWYuaAogICAgIGFzc2VtYmxlci9NYWNy
b0Fzc2VtYmxlckhlbHBlcnMuaAogICAgIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlck1JUFMuaAor
ICAgIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlclJJU0NWNjQuaAogICAgIGFzc2VtYmxlci9NYWNy
b0Fzc2VtYmxlclg4NkNvbW1vbi5oCiAgICAgYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyWDg2XzY0
LmgKICAgICBhc3NlbWJsZXIvUHJpbnRlci5oCisgICAgYXNzZW1ibGVyL1JJU0NWNjRBc3NlbWJs
ZXIuaAorICAgIGFzc2VtYmxlci9SSVNDVjY0UmVnaXN0ZXJzLmgKICAgICBhc3NlbWJsZXIvUmVn
aXN0ZXJJbmZvLmgKICAgICBhc3NlbWJsZXIvWDg2QXNzZW1ibGVyLmgKICAgICBhc3NlbWJsZXIv
WDg2UmVnaXN0ZXJzLmgKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9Tb3VyY2Vz
LnR4dCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9Tb3VyY2VzLnR4dAppbmRleCBhNjQ3MDJkYjYw
MWNjMjFhYmI0YzI2Mjk0NTdkZDFhNzU5YzMwMjBkLi5jZDIxOTJkNGQxZTdlNTY4M2VkM2RhNDY4
MzYyNzAxN2E1MzI2Y2JmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvU291cmNl
cy50eHQKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL1NvdXJjZXMudHh0CkBAIC01NSw2ICs1
NSw3IEBAIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTXY3LmNwcAogYXNzZW1ibGVyL01hY3Jv
QXNzZW1ibGVyQ29kZVJlZi5jcHAKIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlck1JUFMuY3BwCiBh
c3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJQcmludGVyLmNwcAorYXNzZW1ibGVyL01hY3JvQXNzZW1i
bGVyUklTQ1Y2NC5jcHAKIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlclg4NkNvbW1vbi5jcHAKIGFz
c2VtYmxlci9QZXJmTG9nLmNwcAogYXNzZW1ibGVyL1ByaW50ZXIuY3BwCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL0Fic3RyYWN0TWFjcm9Bc3NlbWJsZXIuaCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvQWJzdHJhY3RNYWNyb0Fzc2VtYmxlci5o
CmluZGV4IDE5MTY1ZmZmNGY1YWFiN2JhMzc3ZjdlNDBiYTgyMzIyNmFmMzNkZDMuLjQzZjc4NGE0
YWI5MzVhOWFmMjM5ZjI2YzhjYjMzOGFhYjIyZWRkNWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9hc3NlbWJsZXIvQWJzdHJhY3RNYWNyb0Fzc2VtYmxlci5oCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvQWJzdHJhY3RNYWNyb0Fzc2VtYmxlci5oCkBAIC0z
OTcsNyArMzk3LDcgQEAgcHVibGljOgogICAgICAgICB7CiAgICAgICAgIH0KIAotI2lmIENQVShY
ODZfNjQpIHx8IENQVShBUk02NCkKKyNpZiBDUFUoWDg2XzY0KSB8fCBDUFUoQVJNNjQpIHx8IENQ
VShSSVNDVjY0KQogICAgICAgICBleHBsaWNpdCBUcnVzdGVkSW1tNjQoVHJ1c3RlZEltbVB0ciBw
dHIpCiAgICAgICAgICAgICA6IG1fdmFsdWUocHRyLmFzSW50cHRyKCkpCiAgICAgICAgIHsKQEAg
LTQxMyw3ICs0MTMsNyBAQCBwdWJsaWM6CiAgICAgICAgICAgICA6IFRydXN0ZWRJbW02NCh2YWx1
ZSkKICAgICAgICAgewogICAgICAgICB9Ci0jaWYgQ1BVKFg4Nl82NCkgfHwgQ1BVKEFSTTY0KQor
I2lmIENQVShYODZfNjQpIHx8IENQVShBUk02NCkgfHwgQ1BVKFJJU0NWNjQpCiAgICAgICAgIGV4
cGxpY2l0IEltbTY0KFRydXN0ZWRJbW1QdHIgcHRyKQogICAgICAgICAgICAgOiBUcnVzdGVkSW1t
NjQocHRyKQogICAgICAgICB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNz
ZW1ibGVyL01hY3JvQXNzZW1ibGVyLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVy
L01hY3JvQXNzZW1ibGVyLmgKaW5kZXggNjk3MTFiZjg3NTI5NGU0NGZlMTFlZjJjZTM3NTRhNDU1
YTA2MDk4OC4uZDdmZTNhODFlMzQxMTljMWU2ZWU0YmI0NWY1ODY1ZjcyMWY0NjIxNiAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlci5oCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXIuaApAQCAt
NTUsNiArNTUsMTEgQEAgbmFtZXNwYWNlIEpTQyB7IHR5cGVkZWYgTWFjcm9Bc3NlbWJsZXJBUk12
NyBNYWNyb0Fzc2VtYmxlckJhc2U7IH07CiAjZGVmaW5lIFRBUkdFVF9NQUNST0FTU0VNQkxFUiBN
YWNyb0Fzc2VtYmxlclg4Nl82NAogI2luY2x1ZGUgIk1hY3JvQXNzZW1ibGVyWDg2XzY0LmgiCiAK
KyNlbGlmIENQVShSSVNDVjY0KQorI2RlZmluZSBUQVJHRVRfQVNTRU1CTEVSIFJJU0NWNjRBc3Nl
bWJsZXIKKyNkZWZpbmUgVEFSR0VUX01BQ1JPQVNTRU1CTEVSIE1hY3JvQXNzZW1ibGVyUklTQ1Y2
NAorI2luY2x1ZGUgIk1hY3JvQXNzZW1ibGVyUklTQ1Y2NC5oIgorCiAjZWxzZQogI2Vycm9yICJU
aGUgTWFjcm9Bc3NlbWJsZXIgaXMgbm90IHN1cHBvcnRlZCBvbiB0aGlzIHBsYXRmb3JtLiIKICNl
bmRpZgpAQCAtMTMyLDcgKzEzNyw3IEBAIHB1YmxpYzoKICAgICB1c2luZyBNYWNyb0Fzc2VtYmxl
ckJhc2U6OmFuZDMyOwogICAgIHVzaW5nIE1hY3JvQXNzZW1ibGVyQmFzZTo6YnJhbmNoQWRkMzI7
CiAgICAgdXNpbmcgTWFjcm9Bc3NlbWJsZXJCYXNlOjpicmFuY2hNdWwzMjsKLSNpZiBDUFUoQVJN
NjQpIHx8IENQVShBUk1fVEhVTUIyKSB8fCBDUFUoWDg2XzY0KSB8fCBDUFUoTUlQUykKKyNpZiBD
UFUoQVJNNjQpIHx8IENQVShBUk1fVEhVTUIyKSB8fCBDUFUoWDg2XzY0KSB8fCBDUFUoTUlQUykg
fHwgQ1BVKFJJU0NWNjQpCiAgICAgdXNpbmcgTWFjcm9Bc3NlbWJsZXJCYXNlOjpicmFuY2hQdHI7
CiAjZW5kaWYKICAgICB1c2luZyBNYWNyb0Fzc2VtYmxlckJhc2U6OmJyYW5jaFN1YjMyOwpAQCAt
MTQ0LDcgKzE0OSw3IEBAIHB1YmxpYzoKICAgICB1c2luZyBNYWNyb0Fzc2VtYmxlckJhc2U6OnVy
c2hpZnQzMjsKICAgICB1c2luZyBNYWNyb0Fzc2VtYmxlckJhc2U6OnhvcjMyOwogCi0jaWYgQ1BV
KEFSTTY0KSB8fCBDUFUoWDg2XzY0KQorI2lmIENQVShBUk02NCkgfHwgQ1BVKFg4Nl82NCkgfHwg
Q1BVKFJJU0NWNjQpCiAgICAgdXNpbmcgTWFjcm9Bc3NlbWJsZXJCYXNlOjphbmQ2NDsKICAgICB1
c2luZyBNYWNyb0Fzc2VtYmxlckJhc2U6OmNvbnZlcnRJbnQzMlRvRG91YmxlOwogICAgIHVzaW5n
IE1hY3JvQXNzZW1ibGVyQmFzZTo6c3RvcmU2NDsKQEAgLTMzNSw3ICszNDAsNyBAQCBwdWJsaWM6
CiAgICAgc3RhdGljIGNvbnN0ZXhwciBwdHJkaWZmX3QgcHVzaFRvU2F2ZUJ5dGVPZmZzZXQoKSB7
IHJldHVybiBzaXplb2Yodm9pZCopOyB9CiAjZW5kaWYgLy8gIUNQVShBUk02NCkKIAotI2lmIENQ
VShYODZfNjQpIHx8IENQVShBUk02NCkKKyNpZiBDUFUoWDg2XzY0KSB8fCBDUFUoQVJNNjQpIHx8
IENQVShSSVNDVjY0KQogICAgIHZvaWQgcGVlazY0KFJlZ2lzdGVySUQgZGVzdCwgaW50IGluZGV4
ID0gMCkKICAgICB7CiAgICAgICAgIGxvYWQ2NChBZGRyZXNzKHN0YWNrUG9pbnRlclJlZ2lzdGVy
LCAoaW5kZXggKiBzaXplb2Yodm9pZCopKSksIGRlc3QpOwpAQCAtMTcwNiw3ICsxNzExLDcgQEAg
cHVibGljOgogICAgICAgICBzdG9yZVB0cih2YWx1ZSwgYWRkcmVzc0ZvclBva2UoaW5kZXgpKTsK
ICAgICB9CiAgICAgCi0jaWYgQ1BVKFg4Nl82NCkgfHwgQ1BVKEFSTTY0KQorI2lmIENQVShYODZf
NjQpIHx8IENQVShBUk02NCkgfHwgQ1BVKFJJU0NWNjQpCiAgICAgdm9pZCBwb2tlKEltbTY0IHZh
bHVlLCBpbnQgaW5kZXggPSAwKQogICAgIHsKICAgICAgICAgc3RvcmU2NCh2YWx1ZSwgYWRkcmVz
c0ZvclBva2UoaW5kZXgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3Nl
bWJsZXIvTWFjcm9Bc3NlbWJsZXJSSVNDVjY0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9h
c3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJSSVNDVjY0LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42M2IzMjY1Mjg5
YzVjNjY3YTU4NGYzMWRkZjc0MWZhNWM5ZDViZTU1Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlclJJU0NWNjQuY3BwCkBAIC0w
LDAgKzEsNDIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgSWdhbGlhIFMuTC4KKyAqCisg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJ
UycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRP
UlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisg
KiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5o
IgorI2luY2x1ZGUgIk1hY3JvQXNzZW1ibGVyLmgiCisKKyNpZiBFTkFCTEUoQVNTRU1CTEVSKSAm
JiBDUFUoUklTQ1Y2NCkKKworI2luY2x1ZGUgIlByb2JlQ29udGV4dC5oIgorCituYW1lc3BhY2Ug
SlNDIHsKKwordm9pZCBNYWNyb0Fzc2VtYmxlcjo6cHJvYmUoUHJvYmU6OkZ1bmN0aW9uLCB2b2lk
KikKK3sKKyAgICAvLyBUT0RPCit9CisKK30gLy8gbmFtZXNwYWNlIEpTQworCisjZW5kaWYgLy8g
RU5BQkxFKEFTU0VNQkxFUikgJiYgQ1BVKFJJU0NWNjQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyUklTQ1Y2NC5oIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlclJJU0NWNjQuaApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4xY2QwODExM2I4OTY3M2JkNzM2YmU3ZTRjYzBlYmMwNmE1ZWM2OWU4Ci0tLSAvZGV2L251bGwK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlclJJU0NW
NjQuaApAQCAtMCwwICsxLDM5NSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBJZ2FsaWEg
Uy5MLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4g
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAg
ICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUg
SU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAq
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZ
CisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21h
IG9uY2UKKworI2lmIEVOQUJMRShBU1NFTUJMRVIpICYmIENQVShSSVNDVjY0KQorCisjaW5jbHVk
ZSAiQWJzdHJhY3RNYWNyb0Fzc2VtYmxlci5oIgorI2luY2x1ZGUgIlJJU0NWNjRBc3NlbWJsZXIu
aCIKKworI2RlZmluZSBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRI
T0QobWV0aG9kTmFtZSkgXAorICAgIHRlbXBsYXRlPHR5cGVuYW1lLi4uIEFyZ3M+IHZvaWQgbWV0
aG9kTmFtZShBcmdzJiYuLi4pIHsgfQorI2RlZmluZSBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9U
RU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4obWV0aG9kTmFtZSwgcmV0dXJuVHlwZSkg
XAorICAgIHRlbXBsYXRlPHR5cGVuYW1lLi4uIEFyZ3M+IHJldHVyblR5cGUgbWV0aG9kTmFtZShB
cmdzJiYuLi4pIHsgcmV0dXJuIHsgfTsgfQorCituYW1lc3BhY2UgSlNDIHsKKwordXNpbmcgQXNz
ZW1ibGVyID0gVEFSR0VUX0FTU0VNQkxFUjsKKworY2xhc3MgTWFjcm9Bc3NlbWJsZXJSSVNDVjY0
IDogcHVibGljIEFic3RyYWN0TWFjcm9Bc3NlbWJsZXI8QXNzZW1ibGVyPiB7CitwdWJsaWM6Cisg
ICAgc3RhdGljIGNvbnN0ZXhwciB1bnNpZ25lZCBudW1HUFJzID0gMzI7CisgICAgc3RhdGljIGNv
bnN0ZXhwciB1bnNpZ25lZCBudW1GUFJzID0gMzI7CisKKyAgICBzdGF0aWMgY29uc3RleHByIFJl
Z2lzdGVySUQgSW52YWxpZEdQUlJlZyA9IFJJU0NWNjRSZWdpc3RlcnM6OkludmFsaWRHUFJSZWc7
CisKKyAgICBSZWdpc3RlcklEIHNjcmF0Y2hSZWdpc3RlcigpCisgICAgeworICAgICAgICByZXR1
cm4gSW52YWxpZEdQUlJlZzsKKyAgICB9CisKKyAgICBzdGF0aWMgYm9vbCBzdXBwb3J0c0Zsb2F0
aW5nUG9pbnQoKSB7IHJldHVybiB0cnVlOyB9CisgICAgc3RhdGljIGJvb2wgc3VwcG9ydHNGbG9h
dGluZ1BvaW50VHJ1bmNhdGUoKSB7IHJldHVybiB0cnVlOyB9CisgICAgc3RhdGljIGJvb2wgc3Vw
cG9ydHNGbG9hdGluZ1BvaW50U3FydCgpIHsgcmV0dXJuIHRydWU7IH0KKyAgICBzdGF0aWMgYm9v
bCBzdXBwb3J0c0Zsb2F0aW5nUG9pbnRBYnMoKSB7IHJldHVybiB0cnVlOyB9CisgICAgc3RhdGlj
IGJvb2wgc3VwcG9ydHNGbG9hdGluZ1BvaW50Um91bmRpbmcoKSB7IHJldHVybiB0cnVlOyB9CisK
KyAgICBlbnVtIFJlbGF0aW9uYWxDb25kaXRpb24geworICAgICAgICBFcXVhbCwKKyAgICAgICAg
Tm90RXF1YWwsCisgICAgICAgIEFib3ZlLAorICAgICAgICBBYm92ZU9yRXF1YWwsCisgICAgICAg
IEJlbG93LAorICAgICAgICBCZWxvd09yRXF1YWwsCisgICAgICAgIEdyZWF0ZXJUaGFuLAorICAg
ICAgICBHcmVhdGVyVGhhbk9yRXF1YWwsCisgICAgICAgIExlc3NUaGFuLAorICAgICAgICBMZXNz
VGhhbk9yRXF1YWwsCisgICAgfTsKKworICAgIGVudW0gUmVzdWx0Q29uZGl0aW9uIHsKKyAgICAg
ICAgT3ZlcmZsb3csCisgICAgICAgIFNpZ25lZCwKKyAgICAgICAgUG9zaXRpdmVPclplcm8sCisg
ICAgICAgIFplcm8sCisgICAgICAgIE5vblplcm8sCisgICAgfTsKKworICAgIGVudW0gWmVyb0Nv
bmRpdGlvbiB7CisgICAgICAgIElzWmVybywKKyAgICAgICAgSXNOb25aZXJvLAorICAgIH07CisK
KyAgICBlbnVtIERvdWJsZUNvbmRpdGlvbiB7CisgICAgICAgIERvdWJsZUVxdWFsQW5kT3JkZXJl
ZCwKKyAgICAgICAgRG91YmxlTm90RXF1YWxBbmRPcmRlcmVkLAorICAgICAgICBEb3VibGVHcmVh
dGVyVGhhbkFuZE9yZGVyZWQsCisgICAgICAgIERvdWJsZUdyZWF0ZXJUaGFuT3JFcXVhbEFuZE9y
ZGVyZWQsCisgICAgICAgIERvdWJsZUxlc3NUaGFuQW5kT3JkZXJlZCwKKyAgICAgICAgRG91Ymxl
TGVzc1RoYW5PckVxdWFsQW5kT3JkZXJlZCwKKyAgICAgICAgRG91YmxlRXF1YWxPclVub3JkZXJl
ZCwKKyAgICAgICAgRG91YmxlTm90RXF1YWxPclVub3JkZXJlZCwKKyAgICAgICAgRG91YmxlR3Jl
YXRlclRoYW5PclVub3JkZXJlZCwKKyAgICAgICAgRG91YmxlR3JlYXRlclRoYW5PckVxdWFsT3JV
bm9yZGVyZWQsCisgICAgICAgIERvdWJsZUxlc3NUaGFuT3JVbm9yZGVyZWQsCisgICAgICAgIERv
dWJsZUxlc3NUaGFuT3JFcXVhbE9yVW5vcmRlcmVkLAorICAgIH07CisKKyAgICBzdGF0aWMgY29u
c3RleHByIFJlZ2lzdGVySUQgc3RhY2tQb2ludGVyUmVnaXN0ZXIgPSBSSVNDVjY0UmVnaXN0ZXJz
Ojp4MjsKKyAgICBzdGF0aWMgY29uc3RleHByIFJlZ2lzdGVySUQgZnJhbWVQb2ludGVyUmVnaXN0
ZXIgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4ODsKKyAgICBzdGF0aWMgY29uc3RleHByIFJlZ2lzdGVy
SUQgbGlua1JlZ2lzdGVyID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDE7CisKKyAgICBNQUNST19BU1NF
TUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoYWRkMzIpOworICAgIE1BQ1JPX0FT
U0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChhZGQ2NCk7CisgICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHN1YjMyKTsKKyAgICBNQUNS
T19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qoc3ViNjQpOworICAgIE1B
Q1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChtdWwzMik7CisgICAg
TUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKG11bDY0KTsKKyAg
ICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoYW5kMzIpOwor
ICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChhbmQ2NCk7
CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoY291
bnRMZWFkaW5nWmVyb3MzMik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVE
X05PT1BfTUVUSE9EKGNvdW50TGVhZGluZ1plcm9zNjQpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9S
SVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChjb3VudFRyYWlsaW5nWmVyb3MzMik7CisgICAg
TUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGNvdW50VHJhaWxp
bmdaZXJvczY0KTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09Q
X01FVEhPRChieXRlU3dhcDE2KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFU
RURfTk9PUF9NRVRIT0QoYnl0ZVN3YXAzMik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRf
VEVNUExBVEVEX05PT1BfTUVUSE9EKGJ5dGVTd2FwNjQpOworCisgICAgTUFDUk9fQVNTRU1CTEVS
X1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGxzaGlmdDMyKTsKKyAgICBNQUNST19BU1NF
TUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QobHNoaWZ0NjQpOworICAgIE1BQ1JP
X0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChyc2hpZnQzMik7CisgICAg
TUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHJzaGlmdDY0KTsK
KyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QodXJzaGlm
dDMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qo
dXJzaGlmdDY0KTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09Q
X01FVEhPRChyb3RhdGVSaWdodDMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1Q
TEFURURfTk9PUF9NRVRIT0Qocm90YXRlUmlnaHQ2NCk7CisKKyAgICBNQUNST19BU1NFTUJMRVJf
UklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QobG9hZDgpOworICAgIE1BQ1JPX0FTU0VNQkxF
Ul9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChsb2FkOFNpZ25lZEV4dGVuZFRvMzIpOwor
ICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChsb2FkMTYp
OworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChsb2Fk
MTZVbmFsaWduZWQpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09Q
X01FVEhPRChsb2FkMTZTaWduZWRFeHRlbmRUbzMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklT
Q1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QobG9hZDMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJf
UklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QobG9hZDMyV2l0aFVuYWxpZ25lZEhhbGZXb3Jk
cyk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGxv
YWQ2NCk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRI
T0Qoc3RvcmU4KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9N
RVRIT0Qoc3RvcmUxNik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05P
T1BfTUVUSE9EKHN0b3JlMzIpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRF
RF9OT09QX01FVEhPRChzdG9yZTY0KTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RF
TVBMQVRFRF9OT09QX01FVEhPRCh6ZXJvRXh0ZW5kOFRvMzIpOworICAgIE1BQ1JPX0FTU0VNQkxF
Ul9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRCh6ZXJvRXh0ZW5kMTZUbzMyKTsKKworICAg
IE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChzaWduRXh0ZW5k
OFRvMzIpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhP
RChzaWduRXh0ZW5kMTZUbzMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFU
RURfTk9PUF9NRVRIT0Qoc2lnbkV4dGVuZDMyVG9QdHIpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9S
SVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRCh6ZXJvRXh0ZW5kMzJUb1dvcmQpOworCisgICAg
TUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJO
KGxvYWQ2NFdpdGhBZGRyZXNzT2Zmc2V0UGF0Y2gsIERhdGFMYWJlbDMyKTsKKyAgICBNQUNST19B
U1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4obG9hZDY0
V2l0aENvbXBhY3RBZGRyZXNzT2Zmc2V0UGF0Y2gsIERhdGFMYWJlbENvbXBhY3QpOworICAgIE1B
Q1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihz
dG9yZTY0V2l0aEFkZHJlc3NPZmZzZXRQYXRjaCwgRGF0YUxhYmVsMzIpOworCisgICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKG9yOCk7CisgICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKG9yMTYpOworICAgIE1BQ1JP
X0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChvcjMyKTsKKyAgICBNQUNS
T19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qob3I2NCk7CisKKyAgICBN
QUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoeG9yMzIpOworICAg
IE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRCh4b3I2NCk7CisK
KyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qobm90MzIp
OworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChub3Q2
NCk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qo
bmVnMzIpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhP
RChuZWc2NCk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9N
RVRIT0QobW92ZSk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1Bf
TUVUSE9EKHN3YXApOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05P
T1BfTUVUSE9EKG1vdmVaZXJvVG9Eb3VibGUpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0
X1RFTVBMQVRFRF9OT09QX01FVEhPRChtb3ZlRmxvYXRUbzMyKTsKKyAgICBNQUNST19BU1NFTUJM
RVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QobW92ZTMyVG9GbG9hdCk7CisKKyAgICBN
QUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QobW92ZURvdWJsZSk7
CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKG1vdmVE
b3VibGVUbzY0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9N
RVRIT0QobW92ZTY0VG9Eb3VibGUpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVN
UExBVEVEX05PT1BfTUVUSE9EKGNvbXBhcmU4KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2
NF9URU1QTEFURURfTk9PUF9NRVRIT0QoY29tcGFyZTMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJf
UklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoY29tcGFyZTY0KTsKKworICAgIHN0YXRpYyBS
ZWxhdGlvbmFsQ29uZGl0aW9uIGludmVydChSZWxhdGlvbmFsQ29uZGl0aW9uIGNvbmQpCisgICAg
eworICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8UmVsYXRpb25hbENvbmRpdGlvbj4oQXNzZW1i
bGVyOjppbnZlcnQoc3RhdGljX2Nhc3Q8QXNzZW1ibGVyOjpDb25kaXRpb24+KGNvbmQpKSk7Cisg
ICAgfQorCisgICAgdGVtcGxhdGU8UHRyVGFnIHJlc3VsdFRhZywgUHRyVGFnIGxvY2F0aW9uVGFn
PgorICAgIHN0YXRpYyBGdW5jdGlvblB0cjxyZXN1bHRUYWc+IHJlYWRDYWxsVGFyZ2V0KENvZGVM
b2NhdGlvbkNhbGw8bG9jYXRpb25UYWc+KSB7IHJldHVybiB7IH07IH0KKworICAgIHRlbXBsYXRl
PFB0clRhZyB0YWc+CisgICAgc3RhdGljIHZvaWQgcmVwbGFjZVdpdGhWTUhhbHQoQ29kZUxvY2F0
aW9uTGFiZWw8dGFnPikgeyB9CisKKyAgICB0ZW1wbGF0ZTxQdHJUYWcgc3RhcnRUYWcsIFB0clRh
ZyBkZXN0VGFnPgorICAgIHN0YXRpYyB2b2lkIHJlcGxhY2VXaXRoSnVtcChDb2RlTG9jYXRpb25M
YWJlbDxzdGFydFRhZz4sIENvZGVMb2NhdGlvbkxhYmVsPGRlc3RUYWc+KSB7IH0KKworICAgIHN0
YXRpYyBwdHJkaWZmX3QgbWF4SnVtcFJlcGxhY2VtZW50U2l6ZSgpCisgICAgeworICAgICAgICBy
ZXR1cm4gQXNzZW1ibGVyOjptYXhKdW1wUmVwbGFjZW1lbnRTaXplKCk7CisgICAgfQorCisgICAg
c3RhdGljIHB0cmRpZmZfdCBwYXRjaGFibGVKdW1wU2l6ZSgpCisgICAgeworICAgICAgICByZXR1
cm4gQXNzZW1ibGVyOjpwYXRjaGFibGVKdW1wU2l6ZSgpOworICAgIH0KKworICAgIHRlbXBsYXRl
PFB0clRhZyB0YWc+CisgICAgc3RhdGljIENvZGVMb2NhdGlvbkxhYmVsPHRhZz4gc3RhcnRPZkJy
YW5jaFB0cldpdGhQYXRjaE9uUmVnaXN0ZXIoQ29kZUxvY2F0aW9uRGF0YUxhYmVsUHRyPHRhZz4p
IHsgcmV0dXJuIHsgfTsgfQorCisgICAgdGVtcGxhdGU8UHRyVGFnIHRhZz4KKyAgICBzdGF0aWMg
Q29kZUxvY2F0aW9uTGFiZWw8dGFnPiBzdGFydE9mUGF0Y2hhYmxlQnJhbmNoUHRyV2l0aFBhdGNo
T25BZGRyZXNzKENvZGVMb2NhdGlvbkRhdGFMYWJlbFB0cjx0YWc+KSB7IHJldHVybiB7IH07IH0K
KworICAgIHRlbXBsYXRlPFB0clRhZyB0YWc+CisgICAgc3RhdGljIENvZGVMb2NhdGlvbkxhYmVs
PHRhZz4gc3RhcnRPZlBhdGNoYWJsZUJyYW5jaDMyV2l0aFBhdGNoT25BZGRyZXNzKENvZGVMb2Nh
dGlvbkRhdGFMYWJlbDMyPHRhZz4pIHsgcmV0dXJuIHsgfTsgfQorCisgICAgdGVtcGxhdGU8UHRy
VGFnIHRhZz4KKyAgICBzdGF0aWMgdm9pZCByZXZlcnRKdW1wUmVwbGFjZW1lbnRUb0JyYW5jaFB0
cldpdGhQYXRjaChDb2RlTG9jYXRpb25MYWJlbDx0YWc+LCBSZWdpc3RlcklELCB2b2lkKikgeyB9
CisKKyAgICB0ZW1wbGF0ZTxQdHJUYWcgdGFnPgorICAgIHN0YXRpYyB2b2lkIHJldmVydEp1bXBS
ZXBsYWNlbWVudFRvUGF0Y2hhYmxlQnJhbmNoUHRyV2l0aFBhdGNoKENvZGVMb2NhdGlvbkxhYmVs
PHRhZz4sIEFkZHJlc3MsIHZvaWQqKSB7IH0KKworICAgIHRlbXBsYXRlPFB0clRhZyB0YWc+Cisg
ICAgc3RhdGljIHZvaWQgcmV2ZXJ0SnVtcFJlcGxhY2VtZW50VG9QYXRjaGFibGVCcmFuY2gzMldp
dGhQYXRjaChDb2RlTG9jYXRpb25MYWJlbDx0YWc+LCBBZGRyZXNzLCBpbnQzMl90KSB7IH0KKwor
ICAgIHRlbXBsYXRlPFB0clRhZyBjYWxsVGFnLCBQdHJUYWcgZGVzdFRhZz4KKyAgICBzdGF0aWMg
dm9pZCByZXBhdGNoQ2FsbChDb2RlTG9jYXRpb25DYWxsPGNhbGxUYWc+LCBDb2RlTG9jYXRpb25M
YWJlbDxkZXN0VGFnPikgeyB9CisKKyAgICB0ZW1wbGF0ZTxQdHJUYWcgY2FsbFRhZywgUHRyVGFn
IGRlc3RUYWc+CisgICAgc3RhdGljIHZvaWQgcmVwYXRjaENhbGwoQ29kZUxvY2F0aW9uQ2FsbDxj
YWxsVGFnPiwgRnVuY3Rpb25QdHI8ZGVzdFRhZz4pIHsgfQorCisgICAgTUFDUk9fQVNTRU1CTEVS
X1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKGp1bXAsIEp1bXApOwor
ICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChmYXJKdW1w
KTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9X
SVRIX1JFVFVSTihuZWFyQ2FsbCwgQ2FsbCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRf
VEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKG5lYXJUYWlsQ2FsbCwgQ2FsbCk7Cisg
ICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVU
VVJOKHRocmVhZFNhZmVQYXRjaGFibGVOZWFyQ2FsbCwgQ2FsbCk7CisKKyAgICB2b2lkIHJldCgp
IHsgfQorCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9E
KHRlc3Q4KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRI
T0QodGVzdDMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9N
RVRIT0QodGVzdDY0KTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9O
T09QX01FVEhPRF9XSVRIX1JFVFVSTihicmFuY2g4LCBKdW1wKTsKKyAgICBNQUNST19BU1NFTUJM
RVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoMzIsIEp1
bXApOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9X
SVRIX1JFVFVSTihicmFuY2g2NCwgSnVtcCk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2
NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoMzJXaXRoUGF0Y2gsIEp1
bXApOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9X
SVRIX1JFVFVSTihicmFuY2gzMldpdGhVbmFsaWduZWRIYWxmV29yZHMsIEp1bXApOworCisgICAg
TUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJO
KGJyYW5jaEFkZDMyLCBKdW1wKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFU
RURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoQWRkNjQsIEp1bXApOworCisgICAgTUFD
Uk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKGJy
YW5jaFN1YjMyLCBKdW1wKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURf
Tk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoU3ViNjQsIEp1bXApOworCisgICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKGJyYW5j
aE11bDMyLCBKdW1wKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9P
UF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoTXVsNjQsIEp1bXApOworCisgICAgTUFDUk9fQVNT
RU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKGJyYW5jaE5l
ZzMyLCBKdW1wKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9N
RVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoTmVnNjQsIEp1bXApOworCisgICAgTUFDUk9fQVNTRU1C
TEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKGJyYW5jaFRlc3Q4
LCBKdW1wKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRI
T0RfV0lUSF9SRVRVUk4oYnJhbmNoVGVzdDMyLCBKdW1wKTsKKyAgICBNQUNST19BU1NFTUJMRVJf
UklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoVGVzdDY0LCBK
dW1wKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhP
RF9XSVRIX1JFVFVSTihicmFuY2hQdHIsIEp1bXApOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJ
U0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKG1vdmVXaXRoUGF0Y2gsIERh
dGFMYWJlbDMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9N
RVRIT0RfV0lUSF9SRVRVUk4obW92ZVdpdGhQYXRjaCwgRGF0YUxhYmVsUHRyKTsKKworICAgIE1B
Q1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihi
cmFuY2hQdHJXaXRoUGF0Y2gsIEp1bXApOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRf
VEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKHBhdGNoYWJsZUJyYW5jaDgsIFBhdGNo
YWJsZUp1bXApOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01F
VEhPRF9XSVRIX1JFVFVSTihwYXRjaGFibGVCcmFuY2gzMiwgUGF0Y2hhYmxlSnVtcCk7CisgICAg
TUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJO
KHBhdGNoYWJsZUJyYW5jaDY0LCBQYXRjaGFibGVKdW1wKTsKKworICAgIE1BQ1JPX0FTU0VNQkxF
Ul9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihicmFuY2hGbG9hdCwg
SnVtcCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9E
X1dJVEhfUkVUVVJOKGJyYW5jaERvdWJsZSwgSnVtcCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJ
U0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKGJyYW5jaERvdWJsZU5vblpl
cm8sIEp1bXApOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01F
VEhPRF9XSVRIX1JFVFVSTihicmFuY2hEb3VibGVaZXJvT3JOYU4sIEp1bXApOworCisgICAgZW51
bSBCcmFuY2hUcnVuY2F0ZVR5cGUgeyBCcmFuY2hJZlRydW5jYXRlRmFpbGVkLCBCcmFuY2hJZlRy
dW5jYXRlU3VjY2Vzc2Z1bCB9OworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRF
RF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihicmFuY2hUcnVuY2F0ZURvdWJsZVRvSW50MzIsIEp1
bXApOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9E
KGJyYW5jaENvbnZlcnREb3VibGVUb0ludDMyKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVND
VjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihjYWxsLCBDYWxsKTsKKyAgICBN
QUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoY2FsbE9wZXJhdGlv
bik7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qo
Z2V0RWZmZWN0aXZlQWRkcmVzcyk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1Q
TEFURURfTk9PUF9NRVRIT0QobG9hZEZsb2F0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2
NF9URU1QTEFURURfTk9PUF9NRVRIT0QobG9hZERvdWJsZSk7CisKKyAgICBNQUNST19BU1NFTUJM
RVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qoc3RvcmVGbG9hdCk7CisgICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHN0b3JlRG91YmxlKTsKKwor
ICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChhZGRGbG9h
dCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGFk
ZERvdWJsZSk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9N
RVRIT0Qoc3ViRmxvYXQpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9O
T09QX01FVEhPRChzdWJEb3VibGUpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVN
UExBVEVEX05PT1BfTUVUSE9EKG11bEZsb2F0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2
NF9URU1QTEFURURfTk9PUF9NRVRIT0QobXVsRG91YmxlKTsKKworICAgIE1BQ1JPX0FTU0VNQkxF
Ul9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChkaXZGbG9hdCk7CisgICAgTUFDUk9fQVNT
RU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGRpdkRvdWJsZSk7CisKKyAgICBN
QUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qoc3FydEZsb2F0KTsK
KyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qoc3FydERv
dWJsZSk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRI
T0QoYWJzRmxvYXQpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09Q
X01FVEhPRChhYnNEb3VibGUpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExB
VEVEX05PT1BfTUVUSE9EKGNlaWxGbG9hdCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRf
VEVNUExBVEVEX05PT1BfTUVUSE9EKGNlaWxEb3VibGUpOworCisgICAgTUFDUk9fQVNTRU1CTEVS
X1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGZsb29yRmxvYXQpOworICAgIE1BQ1JPX0FT
U0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChmbG9vckRvdWJsZSk7CisKKyAg
ICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoYW5kRmxvYXQp
OworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChhbmRE
b3VibGUpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVU
SE9EKG9yRmxvYXQpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09Q
X01FVEhPRChvckRvdWJsZSk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFU
RURfTk9PUF9NRVRIT0QobmVnYXRlRmxvYXQpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0
X1RFTVBMQVRFRF9OT09QX01FVEhPRChuZWdhdGVEb3VibGUpOworCisgICAgTUFDUk9fQVNTRU1C
TEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHJvdW5kVG93YXJkTmVhcmVzdEludEZs
b2F0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qo
cm91bmRUb3dhcmROZWFyZXN0SW50RG91YmxlKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2
NF9URU1QTEFURURfTk9PUF9NRVRIT0Qocm91bmRUb3dhcmRaZXJvRmxvYXQpOworICAgIE1BQ1JP
X0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChyb3VuZFRvd2FyZFplcm9E
b3VibGUpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVU
SE9EX1dJVEhfUkVUVVJOKGNvbXBhcmVGbG9hdCwgSnVtcCk7CisgICAgTUFDUk9fQVNTRU1CTEVS
X1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKGNvbXBhcmVEb3VibGUs
IEp1bXApOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVU
SE9EKGNvbnZlcnRJbnQzMlRvRmxvYXQpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RF
TVBMQVRFRF9OT09QX01FVEhPRChjb252ZXJ0SW50MzJUb0RvdWJsZSk7CisgICAgTUFDUk9fQVNT
RU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGNvbnZlcnRJbnQ2NFRvRmxvYXQp
OworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChjb252
ZXJ0SW50NjRUb0RvdWJsZSk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFU
RURfTk9PUF9NRVRIT0QoY29udmVydEZsb2F0VG9Eb3VibGUpOworICAgIE1BQ1JPX0FTU0VNQkxF
Ul9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChjb252ZXJ0RG91YmxlVG9GbG9hdCk7CisK
KyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QodHJ1bmNh
dGVGbG9hdFRvSW50MzIpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9O
T09QX01FVEhPRCh0cnVuY2F0ZUZsb2F0VG9VaW50MzIpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9S
SVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRCh0cnVuY2F0ZUZsb2F0VG9JbnQ2NCk7CisgICAg
TUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHRydW5jYXRlRmxv
YXRUb1VpbnQ2NCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1Bf
TUVUSE9EKHRydW5jYXRlRG91YmxlVG9JbnQzMik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NW
NjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHRydW5jYXRlRG91YmxlVG9VaW50MzIpOworICAgIE1B
Q1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRCh0cnVuY2F0ZURvdWJs
ZVRvSW50NjQpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01F
VEhPRCh0cnVuY2F0ZURvdWJsZVRvVWludDY0KTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVND
VjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChwdXNoKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklT
Q1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QocHVzaFBhaXIpOworICAgIE1BQ1JPX0FTU0VNQkxF
Ul9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChwdXNoVG9TYXZlKTsKKworICAgIE1BQ1JP
X0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChwb3ApOworICAgIE1BQ1JP
X0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChwb3BQYWlyKTsKKyAgICBN
QUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QocG9wVG9SZXN0b3Jl
KTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChh
Ym9ydFdpdGhSZWFzb24pOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVE
X05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKHN0b3JlUHRyV2l0aFBhdGNoLCBEYXRhTGFiZWxQdHIp
OworCisgICAgdm9pZCBicmVha3BvaW50KHVpbnQxNl90ID0gMHhjNDcxKSB7IH0KKyAgICB2b2lk
IG5vcCgpIHsgfQorCisgICAgdm9pZCBtZW1vcnlGZW5jZSgpIHsgfQorICAgIHZvaWQgc3RvcmVG
ZW5jZSgpIHsgfQorICAgIHZvaWQgbG9hZEZlbmNlKCkgeyB9CisKKyAgICBNQUNST19BU1NFTUJM
RVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoQXRvbWlj
V2Vha0NBUzgsIEp1bXBMaXN0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFU
RURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoQXRvbWljV2Vha0NBUzE2LCBKdW1wTGlz
dCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJ
VEhfUkVUVVJOKGJyYW5jaEF0b21pY1dlYWtDQVMzMiwgSnVtcExpc3QpOworICAgIE1BQ1JPX0FT
U0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihicmFuY2hB
dG9taWNXZWFrQ0FTNjQsIEp1bXBMaXN0KTsKKworICAgIHRlbXBsYXRlPFB0clRhZyB0YWc+Cisg
ICAgc3RhdGljIHZvaWQgbGlua0NhbGwodm9pZCosIENhbGwsIEZ1bmN0aW9uUHRyPHRhZz4pIHsg
fQorfTsKKworfSAvLyBuYW1lc3BhY2UgSlNDCisKKyN1bmRlZiBNQUNST19BU1NFTUJMRVJfUklT
Q1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QKKyN1bmRlZiBNQUNST19BU1NFTUJMRVJfUklTQ1Y2
NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4KKworI2VuZGlmIC8vIEVOQUJMRShB
U1NFTUJMRVIpICYmIENQVShSSVNDVjY0KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2Fzc2VtYmxlci9NYXhGcmFtZUV4dGVudEZvclNsb3dQYXRoQ2FsbC5oIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYXhGcmFtZUV4dGVudEZvclNsb3dQYXRoQ2FsbC5oCmlu
ZGV4IDZkYWMwOWMyYzkxM2VhMDlhZTRjNWIwYTY5MGM1OTY1ODE5NDQ3ODAuLjg2MmE1ZDdjMmI2
MDQ3YmE0N2MxYWE3NzliMTMzMDAwZjk0MDFmMzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9hc3NlbWJsZXIvTWF4RnJhbWVFeHRlbnRGb3JTbG93UGF0aENhbGwuaAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01heEZyYW1lRXh0ZW50Rm9yU2xvd1BhdGhD
YWxsLmgKQEAgLTUwLDcgKzUwLDcgQEAgc3RhdGljIGNvbnN0ZXhwciBzaXplX3QgbWF4RnJhbWVF
eHRlbnRGb3JTbG93UGF0aENhbGwgPSAwOwogLy8gNyBhcmdzIG9uIHN0YWNrICgyOCBieXRlcyku
CiBzdGF0aWMgY29uc3RleHByIHNpemVfdCBtYXhGcmFtZUV4dGVudEZvclNsb3dQYXRoQ2FsbCA9
IDQwOwogCi0jZWxpZiBDUFUoQVJNNjQpIHx8IENQVShBUk02NEUpCisjZWxpZiBDUFUoQVJNNjQp
IHx8IENQVShBUk02NEUpIHx8IENQVShSSVNDVjY0KQogLy8gQWxsIGFyZ3MgaW4gcmVnaXN0ZXJz
Lgogc3RhdGljIGNvbnN0ZXhwciBzaXplX3QgbWF4RnJhbWVFeHRlbnRGb3JTbG93UGF0aENhbGwg
PSAwOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL1BlcmZM
b2cuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9QZXJmTG9nLmNwcAppbmRl
eCBhNDljY2Q3ZmQ0YWY0NjQyMTQ5OGY0MDI0YTY2ZjA1MDFhNjRmY2E5Li40NmJjODU5ZDkxMmE1
Mjc2OTQ2MTZmYjI3ZTdkYTE0ZmEyNGQ1ZTgzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvYXNzZW1ibGVyL1BlcmZMb2cuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9h
c3NlbWJsZXIvUGVyZkxvZy5jcHAKQEAgLTc3LDYgKzc3LDggQEAgc3RhdGljIGNvbnN0ZXhwciB1
aW50MzJfdCBlbGZNYWNoaW5lID0gRU1fTUlQU19SUzNfTEU7CiAjZWxzZQogc3RhdGljIGNvbnN0
ZXhwciB1aW50MzJfdCBlbGZNYWNoaW5lID0gRU1fTUlQUzsKICNlbmRpZgorI2VsaWYgQ1BVKFJJ
U0NWNjQpCitzdGF0aWMgY29uc3RleHByIHVpbnQzMl90IGVsZk1hY2hpbmUgPSBFTV9SSVNDVjsK
ICNlbmRpZgogCiB9IC8vIG5hbWVzcGFjZSBDb25zdGFudHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvUHJvYmVDb250ZXh0LmggYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvYXNzZW1ibGVyL1Byb2JlQ29udGV4dC5oCmluZGV4IDhkNTBiYmU1OGI5ZjM5YmM5MGY3
NzVhMjYzNzg4ZTJiZWUxNWFiYmIuLjVkNGUzMmRjNjJmNWEyOTRkMjkxNjJlMGRiNzQxMmE0MGEy
YzljZWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvUHJvYmVD
b250ZXh0LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9Qcm9iZUNvbnRl
eHQuaApAQCAtMTE2LDYgKzExNiw4IEBAIGlubGluZSB2b2lkKiYgQ1BVU3RhdGU6OnBjKCkKICAg
ICByZXR1cm4gKnJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCoqPigmZ3ByKEFSTVJlZ2lzdGVyczo6cGMp
KTsKICNlbGlmIENQVShNSVBTKQogICAgIHJldHVybiAqcmVpbnRlcnByZXRfY2FzdDx2b2lkKio+
KCZzcHIoTUlQU1JlZ2lzdGVyczo6cGMpKTsKKyNlbGlmIENQVShSSVNDVjY0KQorICAgIHJldHVy
biAqcmVpbnRlcnByZXRfY2FzdDx2b2lkKio+KCZzcHIoUklTQ1Y2NFJlZ2lzdGVyczo6cGMpKTsK
ICNlbHNlCiAjZXJyb3IgIlVuc3VwcG9ydGVkIENQVSIKICNlbmRpZgpAQCAtMTMxLDYgKzEzMyw4
IEBAIGlubGluZSB2b2lkKiYgQ1BVU3RhdGU6OmZwKCkKICAgICByZXR1cm4gKnJlaW50ZXJwcmV0
X2Nhc3Q8dm9pZCoqPigmZ3ByKEFSTVJlZ2lzdGVyczo6ZnApKTsKICNlbGlmIENQVShNSVBTKQog
ICAgIHJldHVybiAqcmVpbnRlcnByZXRfY2FzdDx2b2lkKio+KCZncHIoTUlQU1JlZ2lzdGVyczo6
ZnApKTsKKyNlbGlmIENQVShSSVNDVjY0KQorICAgIHJldHVybiAqcmVpbnRlcnByZXRfY2FzdDx2
b2lkKio+KCZncHIoUklTQ1Y2NFJlZ2lzdGVyczo6ZnApKTsKICNlbHNlCiAjZXJyb3IgIlVuc3Vw
cG9ydGVkIENQVSIKICNlbmRpZgpAQCAtMTQ2LDYgKzE1MCw4IEBAIGlubGluZSB2b2lkKiYgQ1BV
U3RhdGU6OnNwKCkKICAgICByZXR1cm4gKnJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCoqPigmZ3ByKEFS
TVJlZ2lzdGVyczo6c3ApKTsKICNlbGlmIENQVShNSVBTKQogICAgIHJldHVybiAqcmVpbnRlcnBy
ZXRfY2FzdDx2b2lkKio+KCZncHIoTUlQU1JlZ2lzdGVyczo6c3ApKTsKKyNlbGlmIENQVShSSVND
VjY0KQorICAgIHJldHVybiAqcmVpbnRlcnByZXRfY2FzdDx2b2lkKio+KCZncHIoUklTQ1Y2NFJl
Z2lzdGVyczo6c3ApKTsKICNlbHNlCiAjZXJyb3IgIlVuc3VwcG9ydGVkIENQVSIKICNlbmRpZgpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9SSVNDVjY0QXNzZW1i
bGVyLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL1JJU0NWNjRBc3NlbWJsZXIu
aApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi4wZjA5NDhhZGNhMGViYWQ5ZjE0YzMzY2JlYTUyOTE1ZDc0ZDgzYmE0Ci0t
LSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9SSVNDVjY0
QXNzZW1ibGVyLmgKQEAgLTAsMCArMSwyNDcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEg
SWdhbGlhIFMuTC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoK
KyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRo
ZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIK
KyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMu
IE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJP
RklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
IFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKwor
I3ByYWdtYSBvbmNlCisKKyNpZiBFTkFCTEUoQVNTRU1CTEVSKSAmJiBDUFUoUklTQ1Y2NCkKKwor
I2luY2x1ZGUgIkFzc2VtYmxlckJ1ZmZlci5oIgorI2luY2x1ZGUgIlJJU0NWNjRSZWdpc3RlcnMu
aCIKKworbmFtZXNwYWNlIEpTQyB7CisKK25hbWVzcGFjZSBSSVNDVjY0UmVnaXN0ZXJzIHsKKwor
dHlwZWRlZiBlbnVtIDogaW50OF90IHsKKyAgICB4MCwKKyAgICB4MSwgLy8gcmEgcmVnaXN0ZXIK
KyAgICB4MiwgLy8gc3AgcmVnaXN0ZXIKKyAgICB4MywKKyAgICB4NCwKKyAgICB4NSwKKyAgICB4
NiwKKyAgICB4NywKKyAgICB4OCwgLy8gZnAgcmVnaXN0ZXIKKyAgICB4OSwKKyAgICB4MTAsCisg
ICAgeDExLAorICAgIHgxMiwKKyAgICB4MTMsCisgICAgeDE0LAorICAgIHgxNSwKKyAgICB4MTYs
CisgICAgeDE3LAorICAgIHgxOCwKKyAgICB4MTksCisgICAgeDIwLAorICAgIHgyMSwKKyAgICB4
MjIsCisgICAgeDIzLAorICAgIHgyNCwKKyAgICB4MjUsCisgICAgeDI2LAorICAgIHgyNywKKyAg
ICB4MjgsCisgICAgeDI5LAorICAgIHgzMCwKKyAgICB4MzEsCisgICAgSW52YWxpZEdQUlJlZyA9
IC0xLAorCisgICAgemVybyA9IHgwLAorICAgIHJhID0geDEsCisgICAgc3AgPSB4MiwKKyAgICBn
cCA9IHgzLAorICAgIHRwID0geDQsCisgICAgZnAgPSB4OCwKK30gUmVnaXN0ZXJJRDsKKwordHlw
ZWRlZiBlbnVtIDogaW50OF90IHsKKyAgICBwYywKKyAgICBJbnZhbGlkU1BSZWcgPSAtMSwKK30g
U1BSZWdpc3RlcklEOworCit0eXBlZGVmIGVudW0gOiBpbnQ4X3QgeworICAgIGYwLAorICAgIGYx
LAorICAgIGYyLAorICAgIGYzLAorICAgIGY0LAorICAgIGY1LAorICAgIGY2LAorICAgIGY3LAor
ICAgIGY4LAorICAgIGY5LAorICAgIGYxMCwKKyAgICBmMTEsCisgICAgZjEyLAorICAgIGYxMywK
KyAgICBmMTQsCisgICAgZjE1LAorICAgIGYxNiwKKyAgICBmMTcsCisgICAgZjE4LAorICAgIGYx
OSwKKyAgICBmMjAsCisgICAgZjIxLAorICAgIGYyMiwKKyAgICBmMjMsCisgICAgZjI0LAorICAg
IGYyNSwKKyAgICBmMjYsCisgICAgZjI3LAorICAgIGYyOCwKKyAgICBmMjksCisgICAgZjMwLAor
ICAgIGYzMSwKKyAgICBJbnZhbGlkRlBSUmVnID0gLTEsCit9IEZQUmVnaXN0ZXJJRDsKKworfSAv
LyBuYW1lc3BhY2UgUklTQ1Y2NFJlZ2lzdGVycworCitjbGFzcyBSSVNDVjY0QXNzZW1ibGVyIHsK
K3B1YmxpYzoKKyAgICB1c2luZyBSZWdpc3RlcklEID0gUklTQ1Y2NFJlZ2lzdGVyczo6UmVnaXN0
ZXJJRDsKKyAgICB1c2luZyBTUFJlZ2lzdGVySUQgPSBSSVNDVjY0UmVnaXN0ZXJzOjpTUFJlZ2lz
dGVySUQ7CisgICAgdXNpbmcgRlBSZWdpc3RlcklEID0gUklTQ1Y2NFJlZ2lzdGVyczo6RlBSZWdp
c3RlcklEOworCisgICAgc3RhdGljIGNvbnN0ZXhwciBSZWdpc3RlcklEIGZpcnN0UmVnaXN0ZXIo
KSB7IHJldHVybiBSSVNDVjY0UmVnaXN0ZXJzOjp4MDsgfQorICAgIHN0YXRpYyBjb25zdGV4cHIg
UmVnaXN0ZXJJRCBsYXN0UmVnaXN0ZXIoKSB7IHJldHVybiBSSVNDVjY0UmVnaXN0ZXJzOjp4MzE7
IH0KKyAgICBzdGF0aWMgY29uc3RleHByIHVuc2lnbmVkIG51bWJlck9mUmVnaXN0ZXJzKCkgeyBy
ZXR1cm4gbGFzdFJlZ2lzdGVyKCkgLSBmaXJzdFJlZ2lzdGVyKCkgKyAxOyB9CisKKyAgICBzdGF0
aWMgY29uc3RleHByIFNQUmVnaXN0ZXJJRCBmaXJzdFNQUmVnaXN0ZXIoKSB7IHJldHVybiBSSVND
VjY0UmVnaXN0ZXJzOjpwYzsgfQorICAgIHN0YXRpYyBjb25zdGV4cHIgU1BSZWdpc3RlcklEIGxh
c3RTUFJlZ2lzdGVyKCkgeyByZXR1cm4gUklTQ1Y2NFJlZ2lzdGVyczo6cGM7IH0KKyAgICBzdGF0
aWMgY29uc3RleHByIHVuc2lnbmVkIG51bWJlck9mU1BSZWdpc3RlcnMoKSB7IHJldHVybiBsYXN0
U1BSZWdpc3RlcigpIC0gZmlyc3RTUFJlZ2lzdGVyKCkgKyAxOyB9CisKKyAgICBzdGF0aWMgY29u
c3RleHByIEZQUmVnaXN0ZXJJRCBmaXJzdEZQUmVnaXN0ZXIoKSB7IHJldHVybiBSSVNDVjY0UmVn
aXN0ZXJzOjpmMDsgfQorICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSZWdpc3RlcklEIGxhc3RGUFJl
Z2lzdGVyKCkgeyByZXR1cm4gUklTQ1Y2NFJlZ2lzdGVyczo6ZjMxOyB9CisgICAgc3RhdGljIGNv
bnN0ZXhwciB1bnNpZ25lZCBudW1iZXJPZkZQUmVnaXN0ZXJzKCkgeyByZXR1cm4gbGFzdEZQUmVn
aXN0ZXIoKSAtIGZpcnN0RlBSZWdpc3RlcigpICsgMTsgfQorCisgICAgc3RhdGljIGNvbnN0IGNo
YXIqIGdwck5hbWUoUmVnaXN0ZXJJRCBpZCkKKyAgICB7CisgICAgICAgIEFTU0VSVChpZCA+PSBm
aXJzdFJlZ2lzdGVyKCkgJiYgaWQgPD0gbGFzdFJlZ2lzdGVyKCkpOworICAgICAgICBzdGF0aWMg
Y29uc3QgY2hhciogY29uc3QgbmFtZUZvclJlZ2lzdGVyW251bWJlck9mUmVnaXN0ZXJzKCldID0g
eworICAgICAgICAgICAgIngwIiwgIngxIiwgIngyIiwgIngzIiwgIng0IiwgIng1IiwgIng2Iiwg
Ing3IiwgIng4IiwgIng5IiwgIngxMCIsICJ4MTEiLCAieDEyIiwgIngxMyIsICJ4MTQiLCAieDE1
IiwKKyAgICAgICAgICAgICJ4MTYiLCAieDE3IiwgIngxOCIsICJ4MTkiLCAieDIwIiwgIngyMSIs
ICJ4MjIiLCAieDIzIiwgIngyNCIsICJ4MjUiLCAieDI2IiwgIngyNyIsICJ4MjgiLCAieDI5Iiwg
IngzMCIsICJ4MzEiLAorICAgICAgICB9OworICAgICAgICByZXR1cm4gbmFtZUZvclJlZ2lzdGVy
W2lkXTsKKyAgICB9CisKKyAgICBzdGF0aWMgY29uc3QgY2hhciogc3ByTmFtZShTUFJlZ2lzdGVy
SUQgaWQpCisgICAgeworICAgICAgICBBU1NFUlQoaWQgPj0gZmlyc3RTUFJlZ2lzdGVyKCkgJiYg
aWQgPD0gbGFzdFNQUmVnaXN0ZXIoKSk7CisgICAgICAgIHN0YXRpYyBjb25zdCBjaGFyKiBjb25z
dCBuYW1lRm9yUmVnaXN0ZXJbbnVtYmVyT2ZTUFJlZ2lzdGVycygpXSA9IHsgInBjIiwgfTsKKyAg
ICAgICAgcmV0dXJuIG5hbWVGb3JSZWdpc3RlcltpZF07CisgICAgfQorCisgICAgc3RhdGljIGNv
bnN0IGNoYXIqIGZwck5hbWUoRlBSZWdpc3RlcklEIGlkKQorICAgIHsKKyAgICAgICAgQVNTRVJU
KGlkID49IGZpcnN0RlBSZWdpc3RlcigpICYmIGlkIDw9IGxhc3RGUFJlZ2lzdGVyKCkpOworICAg
ICAgICBzdGF0aWMgY29uc3QgY2hhciogY29uc3QgbmFtZUZvclJlZ2lzdGVyW251bWJlck9mRlBS
ZWdpc3RlcnMoKV0gPSB7CisgICAgICAgICAgICAiZjAiLCAiZjEiLCAiZjIiLCAiZjMiLCAiZjQi
LCAiZjUiLCAiZjYiLCAiZjciLCAiZjgiLCAiZjkiLCAiZjEwIiwgImYxMSIsICJmMTIiLCAiZjEz
IiwgImYxNCIsICJmMTUiLAorICAgICAgICAgICAgImYxNiIsICJmMTciLCAiZjE4IiwgImYxOSIs
ICJmMjAiLCAiZjIxIiwgImYyMiIsICJmMjMiLCAiZjI0IiwgImYyNSIsICJmMjYiLCAiZjI3Iiwg
ImYyOCIsICJmMjkiLCAiZjMwIiwgImYzMSIsCisgICAgICAgIH07CisgICAgICAgIHJldHVybiBu
YW1lRm9yUmVnaXN0ZXJbaWRdOworICAgIH0KKworICAgIFJJU0NWNjRBc3NlbWJsZXIoKSB7IH0K
KworICAgIEFzc2VtYmxlckJ1ZmZlciYgYnVmZmVyKCkgeyByZXR1cm4gbV9idWZmZXI7IH0KKwor
ICAgIHR5cGVkZWYgZW51bSB7CisgICAgICAgIENvbmRpdGlvbkVRLAorICAgICAgICBDb25kaXRp
b25ORSwKKyAgICAgICAgQ29uZGl0aW9uSFMsIENvbmRpdGlvbkNTID0gQ29uZGl0aW9uSFMsCisg
ICAgICAgIENvbmRpdGlvbkxPLCBDb25kaXRpb25DQyA9IENvbmRpdGlvbkxPLAorICAgICAgICBD
b25kaXRpb25NSSwKKyAgICAgICAgQ29uZGl0aW9uUEwsCisgICAgICAgIENvbmRpdGlvblZTLAor
ICAgICAgICBDb25kaXRpb25WQywKKyAgICAgICAgQ29uZGl0aW9uSEksCisgICAgICAgIENvbmRp
dGlvbkxTLAorICAgICAgICBDb25kaXRpb25HRSwKKyAgICAgICAgQ29uZGl0aW9uTFQsCisgICAg
ICAgIENvbmRpdGlvbkdULAorICAgICAgICBDb25kaXRpb25MRSwKKyAgICAgICAgQ29uZGl0aW9u
QUwsCisgICAgICAgIENvbmRpdGlvbkludmFsaWQKKyAgICB9IENvbmRpdGlvbjsKKworICAgIHN0
YXRpYyBDb25kaXRpb24gaW52ZXJ0KENvbmRpdGlvbiBjb25kKQorICAgIHsKKyAgICAgICAgcmV0
dXJuIHN0YXRpY19jYXN0PENvbmRpdGlvbj4oY29uZCBeIDEpOworICAgIH0KKworICAgIHN0YXRp
YyB2b2lkKiBnZXRSZWxvY2F0ZWRBZGRyZXNzKHZvaWQqIGNvZGUsIEFzc2VtYmxlckxhYmVsIGxh
YmVsKQorICAgIHsKKyAgICAgICAgQVNTRVJUKGxhYmVsLmlzU2V0KCkpOworICAgICAgICByZXR1
cm4gcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4ocmVpbnRlcnByZXRfY2FzdDxwdHJkaWZmX3Q+KGNv
ZGUpICsgbGFiZWwub2Zmc2V0KCkpOworICAgIH0KKworICAgIHNpemVfdCBjb2RlU2l6ZSgpIGNv
bnN0IHsgcmV0dXJuIG1fYnVmZmVyLmNvZGVTaXplKCk7IH0KKworICAgIHN0YXRpYyB1bnNpZ25l
ZCBnZXRDYWxsUmV0dXJuT2Zmc2V0KEFzc2VtYmxlckxhYmVsKSB7IHJldHVybiAwOyB9CisKKyAg
ICBBc3NlbWJsZXJMYWJlbCBsYWJlbElnbm9yaW5nV2F0Y2hwb2ludHMoKSB7IHJldHVybiB7IH07
IH0KKyAgICBBc3NlbWJsZXJMYWJlbCBsYWJlbEZvcldhdGNocG9pbnQoKSB7IHJldHVybiB7IH07
IH0KKyAgICBBc3NlbWJsZXJMYWJlbCBsYWJlbCgpIHsgcmV0dXJuIHsgfTsgfQorCisgICAgc3Rh
dGljIHZvaWQgbGlua0p1bXAodm9pZCosIEFzc2VtYmxlckxhYmVsLCB2b2lkKikgeyB9CisKKyAg
ICBzdGF0aWMgdm9pZCBsaW5rSnVtcChBc3NlbWJsZXJMYWJlbCwgQXNzZW1ibGVyTGFiZWwpIHsg
fQorCisgICAgc3RhdGljIHZvaWQgbGlua0NhbGwodm9pZCosIEFzc2VtYmxlckxhYmVsLCB2b2lk
KikgeyB9CisKKyAgICBzdGF0aWMgdm9pZCBsaW5rUG9pbnRlcih2b2lkKiwgQXNzZW1ibGVyTGFi
ZWwsIHZvaWQqKSB7IH0KKworICAgIHN0YXRpYyBwdHJkaWZmX3QgbWF4SnVtcFJlcGxhY2VtZW50
U2l6ZSgpCisgICAgeworICAgICAgICByZXR1cm4gNDsKKyAgICB9CisKKyAgICBzdGF0aWMgY29u
c3RleHByIHB0cmRpZmZfdCBwYXRjaGFibGVKdW1wU2l6ZSgpCisgICAgeworICAgICAgICByZXR1
cm4gNDsKKyAgICB9CisKKyAgICBzdGF0aWMgdm9pZCByZXBhdGNoUG9pbnRlcih2b2lkKiwgdm9p
ZCopIHsgfQorCisgICAgc3RhdGljIHZvaWQgcmVsaW5rSnVtcCh2b2lkKiwgdm9pZCopIHsgfQor
ICAgIHN0YXRpYyB2b2lkIHJlbGlua0p1bXBUb05vcCh2b2lkKikgeyB9CisgICAgc3RhdGljIHZv
aWQgcmVsaW5rQ2FsbCh2b2lkKiwgdm9pZCopIHsgfQorCisgICAgdW5zaWduZWQgZGVidWdPZmZz
ZXQoKSB7IHJldHVybiBtX2J1ZmZlci5kZWJ1Z09mZnNldCgpOyB9CisKKyAgICBzdGF0aWMgdm9p
ZCBjYWNoZUZsdXNoKHZvaWQqLCBzaXplX3QpIHsgfQorCisgICAgdXNpbmcgQ29weUZ1bmN0aW9u
ID0gdm9pZCooJikodm9pZCosIGNvbnN0IHZvaWQqLCBzaXplX3QpOworICAgIHRlbXBsYXRlIDxD
b3B5RnVuY3Rpb24gY29weT4KKyAgICBzdGF0aWMgdm9pZCBmaWxsTm9wcyh2b2lkKiwgc2l6ZV90
KSB7IH0KKworICAgIEFzc2VtYmxlckJ1ZmZlciBtX2J1ZmZlcjsKK307CisKK30gLy8gbmFtZXNw
YWNlIEpTQworCisjZW5kaWYgLy8gRU5BQkxFKEFTU0VNQkxFUikgJiYgQ1BVKFJJU0NWNjQpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL1JJU0NWNjRSZWdpc3Rl
cnMuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvUklTQ1Y2NFJlZ2lzdGVycy5o
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjUwMDY0ZTgxZTU3ODIzMTQwZTM0ODBhZDg1YjQwYmNiM2QzMTcwMDYKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL1JJU0NWNjRS
ZWdpc3RlcnMuaApAQCAtMCwwICsxLDk2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEln
YWxpYSBTLkwuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6Cisg
KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBB
UFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisg
KiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBP
UgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNw
cmFnbWEgb25jZQorCisjZGVmaW5lIFJlZ2lzdGVyTmFtZXMgUklTQ1Y2NFJlZ2lzdGVycworCisj
ZGVmaW5lIEZPUl9FQUNIX0dQX1JFR0lTVEVSKG1hY3JvKSBcCisgICAgbWFjcm8oemVybywgInpl
cm8iLCAxLCAwKSAgICAgICBcCisgICAgbWFjcm8ocmEsICJyYSIsIDEsIDApICAgICAgICAgICBc
CisgICAgbWFjcm8oc3AsICJzcCIsIDEsIDEpICAgICAgICAgICBcCisgICAgbWFjcm8oZ3AsICJn
cCIsIDEsIDApICAgICAgICAgICBcCisgICAgbWFjcm8odHAsICJ0cCIsIDEsIDApICAgICAgICAg
ICBcCisgICAgbWFjcm8oeDUsICJ4NSIsIDAsIDApICAgICAgICAgICBcCisgICAgbWFjcm8oeDYs
ICJ4NiIsIDAsIDApICAgICAgICAgICBcCisgICAgbWFjcm8oeDcsICJ4NyIsIDAsIDApICAgICAg
ICAgICBcCisgICAgbWFjcm8oZnAsICJmcCIsIDEsIDEpICAgICAgICAgICBcCisgICAgbWFjcm8o
eDksICJ4OSIsIDAsIDEpICAgICAgICAgICBcCisgICAgbWFjcm8oeDEwLCAieDEwIiwgMCwgMCkg
ICAgICAgICBcCisgICAgbWFjcm8oeDExLCAieDExIiwgMCwgMCkgICAgICAgICBcCisgICAgbWFj
cm8oeDEyLCAieDEyIiwgMCwgMCkgICAgICAgICBcCisgICAgbWFjcm8oeDEzLCAieDEzIiwgMCwg
MCkgICAgICAgICBcCisgICAgbWFjcm8oeDE0LCAieDE0IiwgMCwgMCkgICAgICAgICBcCisgICAg
bWFjcm8oeDE1LCAieDE1IiwgMCwgMCkgICAgICAgICBcCisgICAgbWFjcm8oeDE2LCAieDE2Iiwg
MCwgMCkgICAgICAgICBcCisgICAgbWFjcm8oeDE3LCAieDE3IiwgMCwgMCkgICAgICAgICBcCisg
ICAgbWFjcm8oeDE4LCAieDE4IiwgMCwgMSkgICAgICAgICBcCisgICAgbWFjcm8oeDE5LCAieDE5
IiwgMCwgMSkgICAgICAgICBcCisgICAgbWFjcm8oeDIwLCAieDIwIiwgMCwgMSkgICAgICAgICBc
CisgICAgbWFjcm8oeDIxLCAieDIxIiwgMCwgMSkgICAgICAgICBcCisgICAgbWFjcm8oeDIyLCAi
eDIyIiwgMCwgMSkgICAgICAgICBcCisgICAgbWFjcm8oeDIzLCAieDIzIiwgMCwgMSkgICAgICAg
ICBcCisgICAgbWFjcm8oeDI0LCAieDI0IiwgMCwgMSkgICAgICAgICBcCisgICAgbWFjcm8oeDI1
LCAieDI1IiwgMCwgMSkgICAgICAgICBcCisgICAgbWFjcm8oeDI2LCAieDI2IiwgMCwgMSkgICAg
ICAgICBcCisgICAgbWFjcm8oeDI3LCAieDI3IiwgMCwgMSkgICAgICAgICBcCisgICAgbWFjcm8o
eDI4LCAieDI4IiwgMCwgMCkgICAgICAgICBcCisgICAgbWFjcm8oeDI5LCAieDI5IiwgMCwgMCkg
ICAgICAgICBcCisgICAgbWFjcm8oeDMwLCAieDMwIiwgMCwgMCkgICAgICAgICBcCisgICAgbWFj
cm8oeDMxLCAieDMxIiwgMCwgMCkKKworI2RlZmluZSBGT1JfRUFDSF9GUF9SRUdJU1RFUihtYWNy
bykgXAorICAgIG1hY3JvKGYwLCAiZjAiLCAwLCAwKSAgICAgICAgICAgXAorICAgIG1hY3JvKGYx
LCAiZjEiLCAwLCAwKSAgICAgICAgICAgXAorICAgIG1hY3JvKGYyLCAiZjIiLCAwLCAwKSAgICAg
ICAgICAgXAorICAgIG1hY3JvKGYzLCAiZjMiLCAwLCAwKSAgICAgICAgICAgXAorICAgIG1hY3Jv
KGY0LCAiZjQiLCAwLCAwKSAgICAgICAgICAgXAorICAgIG1hY3JvKGY1LCAiZjUiLCAwLCAwKSAg
ICAgICAgICAgXAorICAgIG1hY3JvKGY2LCAiZjYiLCAwLCAwKSAgICAgICAgICAgXAorICAgIG1h
Y3JvKGY3LCAiZjciLCAwLCAwKSAgICAgICAgICAgXAorICAgIG1hY3JvKGY4LCAiZjgiLCAwLCAx
KSAgICAgICAgICAgXAorICAgIG1hY3JvKGY5LCAiZjkiLCAwLCAxKSAgICAgICAgICAgXAorICAg
IG1hY3JvKGYxMCwgImYxMCIsIDAsIDApICAgICAgICAgXAorICAgIG1hY3JvKGYxMSwgImYxMSIs
IDAsIDApICAgICAgICAgXAorICAgIG1hY3JvKGYxMiwgImYxMiIsIDAsIDApICAgICAgICAgXAor
ICAgIG1hY3JvKGYxMywgImYxMyIsIDAsIDApICAgICAgICAgXAorICAgIG1hY3JvKGYxNCwgImYx
NCIsIDAsIDApICAgICAgICAgXAorICAgIG1hY3JvKGYxNSwgImYxNSIsIDAsIDApICAgICAgICAg
XAorICAgIG1hY3JvKGYxNiwgImYxNiIsIDAsIDApICAgICAgICAgXAorICAgIG1hY3JvKGYxNywg
ImYxNyIsIDAsIDApICAgICAgICAgXAorICAgIG1hY3JvKGYxOCwgImYxOCIsIDAsIDEpICAgICAg
ICAgXAorICAgIG1hY3JvKGYxOSwgImYxOSIsIDAsIDEpICAgICAgICAgXAorICAgIG1hY3JvKGYy
MCwgImYyMCIsIDAsIDEpICAgICAgICAgXAorICAgIG1hY3JvKGYyMSwgImYyMSIsIDAsIDEpICAg
ICAgICAgXAorICAgIG1hY3JvKGYyMiwgImYyMiIsIDAsIDEpICAgICAgICAgXAorICAgIG1hY3Jv
KGYyMywgImYyMyIsIDAsIDEpICAgICAgICAgXAorICAgIG1hY3JvKGYyNCwgImYyNCIsIDAsIDEp
ICAgICAgICAgXAorICAgIG1hY3JvKGYyNSwgImYyNSIsIDAsIDEpICAgICAgICAgXAorICAgIG1h
Y3JvKGYyNiwgImYyNiIsIDAsIDEpICAgICAgICAgXAorICAgIG1hY3JvKGYyNywgImYyNyIsIDAs
IDEpICAgICAgICAgXAorICAgIG1hY3JvKGYyOCwgImYyOCIsIDAsIDApICAgICAgICAgXAorICAg
IG1hY3JvKGYyOSwgImYyOSIsIDAsIDApICAgICAgICAgXAorICAgIG1hY3JvKGYzMCwgImYzMCIs
IDAsIDApICAgICAgICAgXAorICAgIG1hY3JvKGYzMSwgImYzMSIsIDAsIDApCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvSW5saW5lQWNjZXNzLmggYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvSW5saW5lQWNjZXNzLmgKaW5kZXggODNmYzhhZGFiOThk
ZjU2YTlhZjUwYjQ1N2Q2NDYyYWQ3MjI2MDkyZi4uMjNhNDEwOGU3ZjVmYzFkMWM1MzVmNGNlYzY4
MmMwOWM4YTM4Njg4NyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2Rl
L0lubGluZUFjY2Vzcy5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9Jbmxp
bmVBY2Nlc3MuaApAQCAtNTQsNiArNTQsOCBAQCBwdWJsaWM6CiAgICAgICAgIHJldHVybiA0ODsK
ICNlbGlmIENQVShNSVBTKQogICAgICAgICByZXR1cm4gNzI7CisjZWxpZiBDUFUoUklTQ1Y2NCkK
KyAgICAgICAgcmV0dXJuIDQwOwogI2Vsc2UKICNlcnJvciAidW5zdXBwb3J0ZWQgcGxhdGZvcm0i
CiAjZW5kaWYKQEAgLTcyLDYgKzc0LDggQEAgcHVibGljOgogICAgICAgICByZXR1cm4gNDg7CiAj
ZWxpZiBDUFUoTUlQUykKICAgICAgICAgcmV0dXJuIDcyOworI2VsaWYgQ1BVKFJJU0NWNjQpCisg
ICAgICAgIHJldHVybiA0MDsKICNlbHNlCiAjZXJyb3IgInVuc3VwcG9ydGVkIHBsYXRmb3JtIgog
I2VuZGlmCkBAIC05Myw2ICs5Nyw4IEBAIHB1YmxpYzoKICAgICAgICAgc2l6ZV90IHNpemUgPSAz
MDsKICNlbGlmIENQVShNSVBTKQogICAgICAgICBzaXplX3Qgc2l6ZSA9IDU2OworI2VsaWYgQ1BV
KFJJU0NWNjQpCisgICAgICAgIHNpemVfdCBzaXplID0gNDQ7CiAjZWxzZQogI2Vycm9yICJ1bnN1
cHBvcnRlZCBwbGF0Zm9ybSIKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2ppdC9GUFJJbmZvLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0ZQUkluZm8uaApp
bmRleCBmNzk5OTAwMTc2NzA3ZjU5N2Q0NTJiM2RiNDQ3MTNjYWYzNWY5M2M3Li5hY2M3NGRjOWJj
NGE0Y2FkNGI2MzdiNWNjN2YwZDBkOWM1MTEwZDMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvaml0L0ZQUkluZm8uaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0ZQ
UkluZm8uaApAQCAtMzI5LDYgKzMyOSwxMDQgQEAgcHVibGljOgogCiAjZW5kaWYgLy8gQ1BVKE1J
UFMpCiAKKyNpZiBDUFUoUklTQ1Y2NCkKKworY2xhc3MgRlBSSW5mbyB7CitwdWJsaWM6CisgICAg
dHlwZWRlZiBGUFJSZWcgUmVnaXN0ZXJUeXBlOworICAgIHN0YXRpYyBjb25zdGV4cHIgdW5zaWdu
ZWQgbnVtYmVyT2ZSZWdpc3RlcnMgPSAyMDsKKyAgICBzdGF0aWMgY29uc3RleHByIHVuc2lnbmVk
IG51bWJlck9mQXJndW1lbnRSZWdpc3RlcnMgPSA4OworCisgICAgc3RhdGljIGNvbnN0ZXhwciBG
UFJSZWcgZnBSZWdUMCA9IFJJU0NWNjRSZWdpc3RlcnM6OmYwOworICAgIHN0YXRpYyBjb25zdGV4
cHIgRlBSUmVnIGZwUmVnVDEgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMTsKKyAgICBzdGF0aWMgY29u
c3RleHByIEZQUlJlZyBmcFJlZ1QyID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjI7CisgICAgc3RhdGlj
IGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdUMyA9IFJJU0NWNjRSZWdpc3RlcnM6OmYzOworICAgIHN0
YXRpYyBjb25zdGV4cHIgRlBSUmVnIGZwUmVnVDQgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmNDsKKyAg
ICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ1Q1ID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjU7
CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdUNiA9IFJJU0NWNjRSZWdpc3RlcnM6
OmY2OworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGZwUmVnVDcgPSBSSVNDVjY0UmVnaXN0
ZXJzOjpmNzsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ1Q4ID0gUklTQ1Y2NFJl
Z2lzdGVyczo6ZjEwOworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGZwUmVnVDkgPSBSSVND
VjY0UmVnaXN0ZXJzOjpmMTE7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdUMTAg
PSBSSVNDVjY0UmVnaXN0ZXJzOjpmMTI7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBS
ZWdUMTEgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMTM7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJS
ZWcgZnBSZWdUMTIgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMTQ7CisgICAgc3RhdGljIGNvbnN0ZXhw
ciBGUFJSZWcgZnBSZWdUMTMgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMTU7CisgICAgc3RhdGljIGNv
bnN0ZXhwciBGUFJSZWcgZnBSZWdUMTQgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMTY7CisgICAgc3Rh
dGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdUMTUgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMTc7Cisg
ICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdUMTYgPSBSSVNDVjY0UmVnaXN0ZXJzOjpm
Mjg7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdUMTcgPSBSSVNDVjY0UmVnaXN0
ZXJzOjpmMjk7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdUMTggPSBSSVNDVjY0
UmVnaXN0ZXJzOjpmMzA7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdUMTkgPSBS
SVNDVjY0UmVnaXN0ZXJzOjpmMzE7CisKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJl
Z0NTMCA9IFJJU0NWNjRSZWdpc3RlcnM6OmY4OworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVn
IGZwUmVnQ1MxID0gUklTQ1Y2NFJlZ2lzdGVyczo6Zjk7CisgICAgc3RhdGljIGNvbnN0ZXhwciBG
UFJSZWcgZnBSZWdDUzIgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMTg7CisgICAgc3RhdGljIGNvbnN0
ZXhwciBGUFJSZWcgZnBSZWdDUzMgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMTk7CisgICAgc3RhdGlj
IGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdDUzQgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMjA7CisgICAg
c3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdDUzUgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMjE7
CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdDUzYgPSBSSVNDVjY0UmVnaXN0ZXJz
OjpmMjI7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdDUzcgPSBSSVNDVjY0UmVn
aXN0ZXJzOjpmMjM7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdDUzggPSBSSVND
VjY0UmVnaXN0ZXJzOjpmMjQ7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdDUzkg
PSBSSVNDVjY0UmVnaXN0ZXJzOjpmMjU7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBS
ZWdDUzEwID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjI2OworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBS
UmVnIGZwUmVnQ1MxMSA9IFJJU0NWNjRSZWdpc3RlcnM6OmYyNzsKKworICAgIHN0YXRpYyBjb25z
dGV4cHIgRlBSUmVnIGFyZ3VtZW50RlBSMCA9IFJJU0NWNjRSZWdpc3RlcnM6OmYxMDsKKyAgICBz
dGF0aWMgY29uc3RleHByIEZQUlJlZyBhcmd1bWVudEZQUjEgPSBSSVNDVjY0UmVnaXN0ZXJzOjpm
MTE7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgYXJndW1lbnRGUFIyID0gUklTQ1Y2NFJl
Z2lzdGVyczo6ZjEyOworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGFyZ3VtZW50RlBSMyA9
IFJJU0NWNjRSZWdpc3RlcnM6OmYxMzsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBhcmd1
bWVudEZQUjQgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMTQ7CisgICAgc3RhdGljIGNvbnN0ZXhwciBG
UFJSZWcgYXJndW1lbnRGUFI1ID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjE1OworICAgIHN0YXRpYyBj
b25zdGV4cHIgRlBSUmVnIGFyZ3VtZW50RlBSNiA9IFJJU0NWNjRSZWdpc3RlcnM6OmYxNjsKKyAg
ICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBhcmd1bWVudEZQUjcgPSBSSVNDVjY0UmVnaXN0ZXJz
OjpmMTc7CisKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyByZXR1cm5WYWx1ZUZQUiA9IFJJ
U0NWNjRSZWdpc3RlcnM6OmYxMDsKKworICAgIHN0YXRpYyBGUFJSZWcgdG9SZWdpc3Rlcih1bnNp
Z25lZCBpbmRleCkKKyAgICB7CisgICAgICAgIEFTU0VSVChpbmRleCA8IG51bWJlck9mUmVnaXN0
ZXJzKTsKKyAgICAgICAgc3RhdGljIGNvbnN0IEZQUlJlZyByZWdpc3RlckZvckluZGV4W251bWJl
ck9mUmVnaXN0ZXJzXSA9IHsKKyAgICAgICAgICAgIGZwUmVnVDAsIGZwUmVnVDEsIGZwUmVnVDIs
IGZwUmVnVDMsIGZwUmVnVDQsIGZwUmVnVDUsIGZwUmVnVDYsIGZwUmVnVDcsCisgICAgICAgICAg
ICBmcFJlZ1Q4LCBmcFJlZ1Q5LCBmcFJlZ1QxMCwgZnBSZWdUMTEsIGZwUmVnVDEyLCBmcFJlZ1Qx
MywgZnBSZWdUMTQsIGZwUmVnVDE1LAorICAgICAgICAgICAgZnBSZWdUMTYsIGZwUmVnVDE3LCBm
cFJlZ1QxOCwgZnBSZWdUMTksCisgICAgICAgIH07CisgICAgICAgIHJldHVybiByZWdpc3RlckZv
ckluZGV4W2luZGV4XTsKKyAgICB9CisKKyAgICBzdGF0aWMgRlBSUmVnIHRvQXJndW1lbnRSZWdp
c3Rlcih1bnNpZ25lZCBpbmRleCkKKyAgICB7CisgICAgICAgIEFTU0VSVChpbmRleCA8IG51bWJl
ck9mQXJndW1lbnRSZWdpc3RlcnMpOworICAgICAgICBzdGF0aWMgY29uc3QgRlBSUmVnIHJlZ2lz
dGVyRm9ySW5kZXhbbnVtYmVyT2ZBcmd1bWVudFJlZ2lzdGVyc10gPSB7CisgICAgICAgICAgICBh
cmd1bWVudEZQUjAsIGFyZ3VtZW50RlBSMSwgYXJndW1lbnRGUFIyLCBhcmd1bWVudEZQUjMsCisg
ICAgICAgICAgICBhcmd1bWVudEZQUjQsIGFyZ3VtZW50RlBSNSwgYXJndW1lbnRGUFI2LCBhcmd1
bWVudEZQUjcsCisgICAgICAgIH07CisgICAgICAgIHJldHVybiByZWdpc3RlckZvckluZGV4W2lu
ZGV4XTsKKyAgICB9CisKKyAgICBzdGF0aWMgdW5zaWduZWQgdG9JbmRleChGUFJSZWcgcmVnKQor
ICAgIHsKKyAgICAgICAgQVNTRVJUKHJlZyAhPSBJbnZhbGlkRlBSUmVnKTsKKyAgICAgICAgQVNT
RVJUKHN0YXRpY19jYXN0PGludD4ocmVnKSA8IDMyKTsKKyAgICAgICAgc3RhdGljIGNvbnN0IHVu
c2lnbmVkIGluZGV4Rm9yUmVnaXN0ZXJbMzJdID0geworICAgICAgICAgICAgMCwgMSwgMiwgMywg
NCwgNSwgNiwgNywKKyAgICAgICAgICAgIEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LCA4LCA5
LCAxMCwgMTEsIDEyLCAxMywKKyAgICAgICAgICAgIDE0LCAxNSwgSW52YWxpZEluZGV4LCBJbnZh
bGlkSW5kZXgsIEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LCBJbnZhbGlkSW5kZXgsIEludmFs
aWRJbmRleCwKKyAgICAgICAgICAgIEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LCBJbnZhbGlk
SW5kZXgsIEludmFsaWRJbmRleCwgMTYsIDE3LCAxOCwgMTksCisgICAgICAgIH07CisgICAgICAg
IHJldHVybiBpbmRleEZvclJlZ2lzdGVyW3JlZ107CisgICAgfQorCisgICAgc3RhdGljIGNvbnN0
IGNoYXIqIGRlYnVnTmFtZShGUFJSZWcgcmVnKQorICAgIHsKKyAgICAgICAgQVNTRVJUKHJlZyAh
PSBJbnZhbGlkRlBSUmVnKTsKKyAgICAgICAgcmV0dXJuIE1hY3JvQXNzZW1ibGVyOjpmcHJOYW1l
KHJlZyk7CisgICAgfQorCisgICAgc3RhdGljIGNvbnN0ZXhwciB1bnNpZ25lZCBJbnZhbGlkSW5k
ZXggPSAweGZmZmZmZmZmOworfTsKKworI2VuZGlmIC8vIENQVShSSVNDVjY0KQorCiAvLyBXZSB1
c2UgdGhpcyBoYWNrIHRvIGdldCB0aGUgRlBSSW5mbyBmcm9tIHRoZSBGUFJSZWcgdHlwZSBpbiB0
ZW1wbGF0ZXMgYmVjYXVzZSBvdXIgY29kZSBpcyBiYWQgYW5kIHdlIHNob3VsZCBmZWVsIGJhZC4u
CiBjb25zdGV4cHIgRlBSSW5mbyB0b0luZm9Gcm9tUmVnKEZQUlJlZykgeyByZXR1cm4gRlBSSW5m
bygpOyB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvR1BSSW5mby5o
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9HUFJJbmZvLmgKaW5kZXggMDY3YWJmZjFkNmFk
MjAwNzU0NTE4MDA3N2IwYzRhNTVjNzc3MjI2Ni4uMDlhMmU5M2EyZDA3Y2I3ZWE0YzQ2MWEzZTcw
MTQ2MGQ5MDI2M2E3OCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9HUFJJ
bmZvLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9HUFJJbmZvLmgKQEAgLTc5OCw2
ICs3OTgsMTE2IEBAIHB1YmxpYzoKIAogI2VuZGlmIC8vIENQVShNSVBTKQogCisjaWYgQ1BVKFJJ
U0NWNjQpCisKKyNkZWZpbmUgTlVNQkVSX09GX0FSR1VNRU5UX1JFR0lTVEVSUyA4dQorI2RlZmlu
ZSBOVU1CRVJfT0ZfQ0FMTEVFX1NBVkVTX1JFR0lTVEVSUyAyM3UKKworY2xhc3MgR1BSSW5mbyB7
CitwdWJsaWM6CisgICAgdHlwZWRlZiBHUFJSZWcgUmVnaXN0ZXJUeXBlOworICAgIHN0YXRpYyBj
b25zdGV4cHIgdW5zaWduZWQgbnVtYmVyT2ZSZWdpc3RlcnMgPSAxNTsKKyAgICBzdGF0aWMgY29u
c3RleHByIHVuc2lnbmVkIG51bWJlck9mQXJndW1lbnRSZWdpc3RlcnMgPSA4OworCisgICAgc3Rh
dGljIGNvbnN0ZXhwciBHUFJSZWcgY2FsbEZyYW1lUmVnaXN0ZXIgPSBSSVNDVjY0UmVnaXN0ZXJz
Ojp4ODsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBudW1iZXJUYWdSZWdpc3RlciA9IFJJ
U0NWNjRSZWdpc3RlcnM6OngyNTsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBub3RDZWxs
TWFza1JlZ2lzdGVyID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDI2OworCisgICAgLy8gVGVtcG9yYXJ5
IHJlZ2lzdGVycworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ1QwID0gUklTQ1Y2NFJl
Z2lzdGVyczo6eDEwOworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ1QxID0gUklTQ1Y2
NFJlZ2lzdGVyczo6eDExOworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ1QyID0gUklT
Q1Y2NFJlZ2lzdGVyczo6eDEyOworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ1QzID0g
UklTQ1Y2NFJlZ2lzdGVyczo6eDEzOworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ1Q0
ID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDE0OworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJl
Z1Q1ID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDE1OworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVn
IHJlZ1Q2ID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDE2OworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BS
UmVnIHJlZ1Q3ID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDE3OworICAgIHN0YXRpYyBjb25zdGV4cHIg
R1BSUmVnIHJlZ1Q4ID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDU7CisgICAgc3RhdGljIGNvbnN0ZXhw
ciBHUFJSZWcgcmVnVDkgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4NjsKKyAgICBzdGF0aWMgY29uc3Rl
eHByIEdQUlJlZyByZWdUMTAgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4NzsKKyAgICBzdGF0aWMgY29u
c3RleHByIEdQUlJlZyByZWdUMTEgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4Mjg7CisgICAgc3RhdGlj
IGNvbnN0ZXhwciBHUFJSZWcgcmVnVDEyID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDI5OworICAgIHN0
YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ1QxMyA9IFJJU0NWNjRSZWdpc3RlcnM6OngzMDsKKyAg
ICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyByZWdUMTQgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MzE7
CisKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyByZWdDUzAgPSBSSVNDVjY0UmVnaXN0ZXJz
Ojp4OTsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyByZWdDUzEgPSBSSVNDVjY0UmVnaXN0
ZXJzOjp4MTg7CisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgcmVnQ1MyID0gUklTQ1Y2NFJl
Z2lzdGVyczo6eDE5OworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ0NTMyA9IFJJU0NW
NjRSZWdpc3RlcnM6OngyMDsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyByZWdDUzQgPSBS
SVNDVjY0UmVnaXN0ZXJzOjp4MjE7CisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgcmVnQ1M1
ID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDIyOworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJl
Z0NTNiA9IFJJU0NWNjRSZWdpc3RlcnM6OngyMzsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJl
ZyByZWdDUzcgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MjQ7CisgICAgc3RhdGljIGNvbnN0ZXhwciBH
UFJSZWcgcmVnQ1M4ID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDI1OworICAgIHN0YXRpYyBjb25zdGV4
cHIgR1BSUmVnIHJlZ0NTOSA9IFJJU0NWNjRSZWdpc3RlcnM6OngyNjsKKyAgICBzdGF0aWMgY29u
c3RleHByIEdQUlJlZyByZWdDUzEwID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDI3OworCisgICAgc3Rh
dGljIGNvbnN0ZXhwciBHUFJSZWcgYXJndW1lbnRHUFIwID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDEw
OworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIGFyZ3VtZW50R1BSMSA9IFJJU0NWNjRSZWdp
c3RlcnM6OngxMTsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBhcmd1bWVudEdQUjIgPSBS
SVNDVjY0UmVnaXN0ZXJzOjp4MTI7CisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgYXJndW1l
bnRHUFIzID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDEzOworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BS
UmVnIGFyZ3VtZW50R1BSNCA9IFJJU0NWNjRSZWdpc3RlcnM6OngxNDsKKyAgICBzdGF0aWMgY29u
c3RleHByIEdQUlJlZyBhcmd1bWVudEdQUjUgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MTU7CisgICAg
c3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgYXJndW1lbnRHUFI2ID0gUklTQ1Y2NFJlZ2lzdGVyczo6
eDE2OworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIGFyZ3VtZW50R1BSNyA9IFJJU0NWNjRS
ZWdpc3RlcnM6OngxNzsKKworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIG5vbkFyZ0dQUjAg
PSBSSVNDVjY0UmVnaXN0ZXJzOjp4NTsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBub25B
cmdHUFIxID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDY7CisKKyAgICBzdGF0aWMgY29uc3RleHByIEdQ
UlJlZyByZXR1cm5WYWx1ZUdQUiA9IFJJU0NWNjRSZWdpc3RlcnM6OngxMDsKKyAgICBzdGF0aWMg
Y29uc3RleHByIEdQUlJlZyByZXR1cm5WYWx1ZUdQUjIgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MTE7
CisKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBub25QcmVzZXJ2ZWROb25SZXR1cm5HUFIg
PSBSSVNDVjY0UmVnaXN0ZXJzOjp4MTI7CisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgbm9u
UHJlc2VydmVkTm9uQXJndW1lbnRHUFIwID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDU7CisgICAgc3Rh
dGljIGNvbnN0ZXhwciBHUFJSZWcgbm9uUHJlc2VydmVkTm9uQXJndW1lbnRHUFIxID0gUklTQ1Y2
NFJlZ2lzdGVyczo6eDY7CisKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyB3YXNtU2NyYXRj
aEdQUjAgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4NjsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJl
ZyB3YXNtU2NyYXRjaEdQUjEgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4NzsKKworICAgIHN0YXRpYyBH
UFJSZWcgdG9SZWdpc3Rlcih1bnNpZ25lZCBpbmRleCkKKyAgICB7CisgICAgICAgIEFTU0VSVChp
bmRleCA8IG51bWJlck9mUmVnaXN0ZXJzKTsKKyAgICAgICAgc3RhdGljIGNvbnN0IEdQUlJlZyBy
ZWdpc3RlckZvckluZGV4W251bWJlck9mUmVnaXN0ZXJzXSA9IHsKKyAgICAgICAgICAgIHJlZ1Qw
LCByZWdUMSwgcmVnVDIsIHJlZ1QzLCByZWdUNCwgcmVnVDUsIHJlZ1Q2LCByZWdUNywKKyAgICAg
ICAgICAgIHJlZ1Q4LCByZWdUOSwgcmVnVDEwLCByZWdUMTEsIHJlZ1QxMiwgcmVnVDEzLCByZWdU
MTQsCisgICAgICAgIH07CisgICAgICAgIHJldHVybiByZWdpc3RlckZvckluZGV4W2luZGV4XTsK
KyAgICB9CisKKyAgICBzdGF0aWMgR1BSUmVnIHRvQXJndW1lbnRSZWdpc3Rlcih1bnNpZ25lZCBp
bmRleCkKKyAgICB7CisgICAgICAgIEFTU0VSVChpbmRleCA8IG51bWJlck9mQXJndW1lbnRSZWdp
c3RlcnMpOworICAgICAgICBzdGF0aWMgY29uc3QgR1BSUmVnIHJlZ2lzdGVyRm9ySW5kZXhbbnVt
YmVyT2ZBcmd1bWVudFJlZ2lzdGVyc10gPSB7CisgICAgICAgICAgICBhcmd1bWVudEdQUjAsIGFy
Z3VtZW50R1BSMSwgYXJndW1lbnRHUFIyLCBhcmd1bWVudEdQUjMsCisgICAgICAgICAgICBhcmd1
bWVudEdQUjQsIGFyZ3VtZW50R1BSNSwgYXJndW1lbnRHUFI2LCBhcmd1bWVudEdQUjcsCisgICAg
ICAgIH07CisgICAgICAgIHJldHVybiByZWdpc3RlckZvckluZGV4W2luZGV4XTsKKyAgICB9CisK
KyAgICBzdGF0aWMgdW5zaWduZWQgdG9JbmRleChHUFJSZWcgcmVnKQorICAgIHsKKyAgICAgICAg
QVNTRVJUKHJlZyAhPSBJbnZhbGlkR1BSUmVnKTsKKyAgICAgICAgQVNTRVJUKHN0YXRpY19jYXN0
PGludD4ocmVnKSA8IDMyKTsKKyAgICAgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGluZGV4Rm9y
UmVnaXN0ZXJbMzJdID0geworICAgICAgICAgICAgSW52YWxpZEluZGV4LCBJbnZhbGlkSW5kZXgs
IEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LCBJbnZhbGlkSW5kZXgsIDgsIDksIDEwLAorICAg
ICAgICAgICAgSW52YWxpZEluZGV4LCBJbnZhbGlkSW5kZXgsIDAsIDEsIDIsIDMsIDQsIDUsCisg
ICAgICAgICAgICA2LCA3LCBJbnZhbGlkSW5kZXgsIEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4
LCBJbnZhbGlkSW5kZXgsIEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LAorICAgICAgICAgICAg
SW52YWxpZEluZGV4LCBJbnZhbGlkSW5kZXgsIEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LCAx
MSwgMTIsIDEzLCAxNCwKKyAgICAgICAgfTsKKyAgICAgICAgcmV0dXJuIGluZGV4Rm9yUmVnaXN0
ZXJbcmVnXTsKKyAgICB9CisKKyAgICBzdGF0aWMgY29uc3QgY2hhciogZGVidWdOYW1lKEdQUlJl
ZyByZWcpCisgICAgeworICAgICAgICBBU1NFUlQocmVnICE9IEludmFsaWRHUFJSZWcpOworICAg
ICAgICByZXR1cm4gTWFjcm9Bc3NlbWJsZXI6Omdwck5hbWUocmVnKTsKKyAgICB9CisKKyAgICBz
dGF0aWMgY29uc3RleHByIHVuc2lnbmVkIEludmFsaWRJbmRleCA9IDB4ZmZmZmZmZmY7Cit9Owor
CisjZW5kaWYgLy8gQ1BVKFJJU0NWNjQpCisKIC8vIFRoZSBiYXNlbGluZSBKSVQgdXNlcyAiYWNj
dW11bGF0b3IiIHN0eWxlIGV4ZWN1dGlvbiB3aXRoIHJlZ1QwIChmb3IgNjQtYml0KQogLy8gYW5k
IHJlZ1QwICsgcmVnVDEgKGZvciAzMi1iaXQpIHNlcnZpbmcgYXMgdGhlIGFjY3VtdWxhdG9yIHJl
Z2lzdGVyKHMpIGZvcgogLy8gcGFzc2luZyByZXN1bHRzIG9mIG9uZSBvcGNvZGUgdG8gdGhlIG5l
eHQuIEhlbmNlOgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9SZWdpc3Rl
clNldC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L1JlZ2lzdGVyU2V0LmNwcAppbmRl
eCBhNzYyNzIyN2JmYjMxOWVjYzk2YzQ3NjJjNGMwM2Y0ZTkxN2Q2NTEwLi5jNTI5ZDc0YWZlYzhl
YTg2NmMwODY0NjQ5NTRiZjc5YTEwOGIzZDkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvaml0L1JlZ2lzdGVyU2V0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0
L1JlZ2lzdGVyU2V0LmNwcApAQCAtMTU1LDYgKzE1NSwzMCBAQCBSZWdpc3RlclNldCBSZWdpc3Rl
clNldDo6dm1DYWxsZWVTYXZlUmVnaXN0ZXJzKCkKICNlbGlmIENQVShBUk1fVEhVTUIyKSB8fCBD
UFUoTUlQUykKICAgICByZXN1bHQuc2V0KEdQUkluZm86OnJlZ0NTMCk7CiAgICAgcmVzdWx0LnNl
dChHUFJJbmZvOjpyZWdDUzEpOworI2VsaWYgQ1BVKFJJU0NWNjQpCisgICAgcmVzdWx0LnNldChH
UFJJbmZvOjpyZWdDUzApOworICAgIHJlc3VsdC5zZXQoR1BSSW5mbzo6cmVnQ1MxKTsKKyAgICBy
ZXN1bHQuc2V0KEdQUkluZm86OnJlZ0NTMik7CisgICAgcmVzdWx0LnNldChHUFJJbmZvOjpyZWdD
UzMpOworICAgIHJlc3VsdC5zZXQoR1BSSW5mbzo6cmVnQ1M0KTsKKyAgICByZXN1bHQuc2V0KEdQ
UkluZm86OnJlZ0NTNSk7CisgICAgcmVzdWx0LnNldChHUFJJbmZvOjpyZWdDUzYpOworICAgIHJl
c3VsdC5zZXQoR1BSSW5mbzo6cmVnQ1M3KTsKKyAgICByZXN1bHQuc2V0KEdQUkluZm86OnJlZ0NT
OCk7CisgICAgcmVzdWx0LnNldChHUFJJbmZvOjpyZWdDUzkpOworICAgIHJlc3VsdC5zZXQoR1BS
SW5mbzo6cmVnQ1MxMCk7CisgICAgcmVzdWx0LnNldChGUFJJbmZvOjpmcFJlZ0NTMCk7CisgICAg
cmVzdWx0LnNldChGUFJJbmZvOjpmcFJlZ0NTMSk7CisgICAgcmVzdWx0LnNldChGUFJJbmZvOjpm
cFJlZ0NTMik7CisgICAgcmVzdWx0LnNldChGUFJJbmZvOjpmcFJlZ0NTMyk7CisgICAgcmVzdWx0
LnNldChGUFJJbmZvOjpmcFJlZ0NTNCk7CisgICAgcmVzdWx0LnNldChGUFJJbmZvOjpmcFJlZ0NT
NSk7CisgICAgcmVzdWx0LnNldChGUFJJbmZvOjpmcFJlZ0NTNik7CisgICAgcmVzdWx0LnNldChG
UFJJbmZvOjpmcFJlZ0NTNyk7CisgICAgcmVzdWx0LnNldChGUFJJbmZvOjpmcFJlZ0NTOCk7Cisg
ICAgcmVzdWx0LnNldChGUFJJbmZvOjpmcFJlZ0NTOSk7CisgICAgcmVzdWx0LnNldChGUFJJbmZv
OjpmcFJlZ0NTMTApOworICAgIHJlc3VsdC5zZXQoRlBSSW5mbzo6ZnBSZWdDUzExKTsKICNlbmRp
ZgogICAgIHJldHVybiByZXN1bHQ7CiB9CkBAIC0xOTIsNyArMjE2LDcgQEAgUmVnaXN0ZXJTZXQg
UmVnaXN0ZXJTZXQ6OmxsaW50QmFzZWxpbmVDYWxsZWVTYXZlUmVnaXN0ZXJzKCkKICNlbGlmIENQ
VShBUk1fVEhVTUIyKQogICAgIHJlc3VsdC5zZXQoR1BSSW5mbzo6cmVnQ1MwKTsKICAgICByZXN1
bHQuc2V0KEdQUkluZm86OnJlZ0NTMSk7Ci0jZWxpZiBDUFUoQVJNNjQpCisjZWxpZiBDUFUoQVJN
NjQpIHx8IENQVShSSVNDVjY0KQogICAgIHJlc3VsdC5zZXQoR1BSSW5mbzo6cmVnQ1M2KTsKICAg
ICByZXN1bHQuc2V0KEdQUkluZm86OnJlZ0NTNyk7CiAgICAgc3RhdGljX2Fzc2VydChHUFJJbmZv
OjpyZWdDUzggPT0gR1BSSW5mbzo6bnVtYmVyVGFnUmVnaXN0ZXIsICIiKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9sbGludC9MTEludERhdGEuaCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9sbGludC9MTEludERhdGEuaAppbmRleCAzZjhlODhkYjZiYmFkYmQ0NTE1MThjMTI4
Y2E2ZDZkNWVkMWViYzUyLi40NzFmYjVkMmZkM2I4MDkzOTZhNTIzY2UzM2ZjYjJhODU5ODM2YWNi
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTExJbnREYXRhLmgKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xMSW50RGF0YS5oCkBAIC0zODEsNyArMzgx
LDcgQEAgc3RydWN0IFJlZ2lzdGVycyB7CiAjZWxpZiBDUFUoWDg2XzY0KSAmJiBPUyhXSU5ET1dT
KQogICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIG1ldGFkYXRhVGFibGVHUFIgPSBHUFJJbmZv
OjpyZWdDUzM7CiAgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgcGJHUFIgPSBHUFJJbmZvOjpy
ZWdDUzQ7Ci0jZWxpZiBDUFUoQVJNNjQpCisjZWxpZiBDUFUoQVJNNjQpIHx8IENQVShSSVNDVjY0
KQogICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIG1ldGFkYXRhVGFibGVHUFIgPSBHUFJJbmZv
OjpyZWdDUzY7CiAgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgcGJHUFIgPSBHUFJJbmZvOjpy
ZWdDUzc7CiAjZWxpZiBDUFUoTUlQUykgfHwgQ1BVKEFSTV9USFVNQjIpCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTExJbnRPZmZsaW5lQXNtQ29uZmlnLmggYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTExJbnRPZmZsaW5lQXNtQ29uZmlnLmgKaW5kZXggMzNi
ZTQwNTg3YTI1YmE0NTI2MzU4YTM4Nzc0YjA5YjBkZGM3N2I1Yy4uOGI5ZTU3ZDMzZjczMjQ5Yjli
MTFjYjc2MzM3ZTVjYzA0MWI0MjI1MyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2xsaW50L0xMSW50T2ZmbGluZUFzbUNvbmZpZy5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9sbGludC9MTEludE9mZmxpbmVBc21Db25maWcuaApAQCAtNDcsNiArNDcsNyBAQAogI2RlZmlu
ZSBPRkZMSU5FX0FTTV9BUk12N2sgMAogI2RlZmluZSBPRkZMSU5FX0FTTV9BUk12N3MgMAogI2Rl
ZmluZSBPRkZMSU5FX0FTTV9NSVBTIDAKKyNkZWZpbmUgT0ZGTElORV9BU01fUklTQ1Y2NCAwCiAK
ICNlbHNlIC8vIEVOQUJMRShDX0xPT1ApCiAKQEAgLTExNSw2ICsxMTYsMTIgQEAKICNkZWZpbmUg
T0ZGTElORV9BU01fQVJNNjRFIDAKICNlbmRpZgogCisjaWYgQ1BVKFJJU0NWNjQpCisjZGVmaW5l
IE9GRkxJTkVfQVNNX1JJU0NWNjQgMQorI2Vsc2UKKyNkZWZpbmUgT0ZGTElORV9BU01fUklTQ1Y2
NCAwCisjZW5kaWYKKwogI2lmIENQVShNSVBTKQogI2lmZGVmIFdURl9NSVBTX1BJQwogI2RlZmlu
ZSBTKHgpICN4CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTG93TGV2
ZWxJbnRlcnByZXRlci5hc20gYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTG93TGV2ZWxJ
bnRlcnByZXRlci5hc20KaW5kZXggMTdmYjdiYmJiNjdiNmIyYTFmZGM5Mjg4ZWE5ZmJjMzM0N2M0
NzVlYy4uZjMxMTA1OGY5ZjlkMzQ0NjkwZmQ5OTQ2MzBmYmYzMDc4ODRkNWRlZCAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xvd0xldmVsSW50ZXJwcmV0ZXIuYXNtCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9sbGludC9Mb3dMZXZlbEludGVycHJldGVyLmFzbQpA
QCAtMjE5LDcgKzIxOSw3IEBAIGVuZAogCiBjb25zdCBtYXhGcmFtZUV4dGVudEZvclNsb3dQYXRo
Q2FsbCA9IGNvbnN0ZXhwciBtYXhGcmFtZUV4dGVudEZvclNsb3dQYXRoQ2FsbAogCi1pZiBYODZf
NjQgb3IgWDg2XzY0X1dJTiBvciBBUk02NCBvciBBUk02NEUKK2lmIFg4Nl82NCBvciBYODZfNjRf
V0lOIG9yIEFSTTY0IG9yIEFSTTY0RSBvciBSSVNDVjY0CiAgICAgY29uc3QgQ2FsbGVlU2F2ZVNw
YWNlQXNWaXJ0dWFsUmVnaXN0ZXJzID0gNAogZWxzaWYgQ19MT09QIG9yIENfTE9PUF9XSU4KICAg
ICBjb25zdCBDYWxsZWVTYXZlU3BhY2VBc1ZpcnR1YWxSZWdpc3RlcnMgPSAxCkBAIC0yNzYsNyAr
Mjc2LDcgQEAgY29uc3QgVk1UcmFwc0FzeW5jRXZlbnRzID0gY29uc3RleHByIFZNVHJhcHM6OkFz
eW5jRXZlbnRzCiAjICAgVGhpcyByZXF1aXJlcyBhbiBhZGQgYmVmb3JlIHRoZSBjYWxsLCBhbmQg
YSBzdWIgYWZ0ZXIuCiBpZiBKU1ZBTFVFNjQKICAgICBjb25zdCBQQyA9IHQ0ICMgV2hlbiBjaGFu
Z2luZyB0aGlzLCBtYWtlIHN1cmUgTExJbnRQQyBpcyB1cCB0byBkYXRlIGluIExMSW50UENSYW5n
ZXMuaAotICAgIGlmIEFSTTY0IG9yIEFSTTY0RQorICAgIGlmIEFSTTY0IG9yIEFSTTY0RSBvciBS
SVNDVjY0CiAgICAgICAgIGNvbnN0IG1ldGFkYXRhVGFibGUgPSBjc3I2CiAgICAgICAgIGNvbnN0
IFBCID0gY3NyNwogICAgICAgICBjb25zdCBudW1iZXJUYWcgPSBjc3I4CkBAIC03MzAsNyArNzMw
LDcgQEAgbWFjcm8gY2hlY2tTdGFja1BvaW50ZXJBbGlnbm1lbnQodGVtcFJlZywgbG9jYXRpb24p
CiAgICAgZW5kCiBlbmQKIAotaWYgQ19MT09QIG9yIENfTE9PUF9XSU4gb3IgQVJNNjQgb3IgQVJN
NjRFIG9yIFg4Nl82NCBvciBYODZfNjRfV0lOCitpZiBDX0xPT1Agb3IgQ19MT09QX1dJTiBvciBB
Uk02NCBvciBBUk02NEUgb3IgWDg2XzY0IG9yIFg4Nl82NF9XSU4gb3IgUklTQ1Y2NAogICAgIGNv
bnN0IENhbGxlZVNhdmVSZWdpc3RlckNvdW50ID0gMAogZWxzaWYgQVJNdjcKICAgICBjb25zdCBD
YWxsZWVTYXZlUmVnaXN0ZXJDb3VudCA9IDcKQEAgLTc0Nyw3ICs3NDcsNyBAQCBjb25zdCBDYWxs
ZWVSZWdpc3RlclNhdmVTaXplID0gQ2FsbGVlU2F2ZVJlZ2lzdGVyQ291bnQgKiBNYWNoaW5lUmVn
aXN0ZXJTaXplCiBjb25zdCBWTUVudHJ5VG90YWxGcmFtZVNpemUgPSAoQ2FsbGVlUmVnaXN0ZXJT
YXZlU2l6ZSArIHNpemVvZiBWTUVudHJ5UmVjb3JkICsgU3RhY2tBbGlnbm1lbnQgLSAxKSAmIH5T
dGFja0FsaWdubWVudE1hc2sKIAogbWFjcm8gcHVzaENhbGxlZVNhdmVzKCkKLSAgICBpZiBDX0xP
T1Agb3IgQ19MT09QX1dJTiBvciBBUk02NCBvciBBUk02NEUgb3IgWDg2XzY0IG9yIFg4Nl82NF9X
SU4KKyAgICBpZiBDX0xPT1Agb3IgQ19MT09QX1dJTiBvciBBUk02NCBvciBBUk02NEUgb3IgWDg2
XzY0IG9yIFg4Nl82NF9XSU4gb3IgUklTQ1Y2NAogICAgIGVsc2lmIEFSTXY3CiAgICAgICAgIGVt
aXQgInB1c2gge3I0LXI2LCByOC1yMTF9IgogICAgIGVsc2lmIE1JUFMKQEAgLTc2OSw3ICs3Njks
NyBAQCBtYWNybyBwdXNoQ2FsbGVlU2F2ZXMoKQogZW5kCiAKIG1hY3JvIHBvcENhbGxlZVNhdmVz
KCkKLSAgICBpZiBDX0xPT1Agb3IgQ19MT09QX1dJTiBvciBBUk02NCBvciBBUk02NEUgb3IgWDg2
XzY0IG9yIFg4Nl82NF9XSU4KKyAgICBpZiBDX0xPT1Agb3IgQ19MT09QX1dJTiBvciBBUk02NCBv
ciBBUk02NEUgb3IgWDg2XzY0IG9yIFg4Nl82NF9XSU4gb3IgUklTQ1Y2NAogICAgIGVsc2lmIEFS
TXY3CiAgICAgICAgIGVtaXQgInBvcCB7cjQtcjYsIHI4LXIxMX0iCiAgICAgZWxzaWYgTUlQUwpA
QCAtNzk0LDcgKzc5NCw3IEBAIG1hY3JvIHByZXNlcnZlQ2FsbGVyUENBbmRDRlIoKQogICAgICAg
ICBwdXNoIGNmcgogICAgIGVsc2lmIFg4NiBvciBYODZfV0lOIG9yIFg4Nl82NCBvciBYODZfNjRf
V0lOCiAgICAgICAgIHB1c2ggY2ZyCi0gICAgZWxzaWYgQVJNNjQgb3IgQVJNNjRFCisgICAgZWxz
aWYgQVJNNjQgb3IgQVJNNjRFIG9yIFJJU0NWNjQKICAgICAgICAgcHVzaCBjZnIsIGxyCiAgICAg
ZWxzZQogICAgICAgICBlcnJvcgpAQCAtODA5LDcgKzgwOSw3IEBAIG1hY3JvIHJlc3RvcmVDYWxs
ZXJQQ0FuZENGUigpCiAgICAgICAgIHBvcCBscgogICAgIGVsc2lmIFg4NiBvciBYODZfV0lOIG9y
IFg4Nl82NCBvciBYODZfNjRfV0lOCiAgICAgICAgIHBvcCBjZnIKLSAgICBlbHNpZiBBUk02NCBv
ciBBUk02NEUKKyAgICBlbHNpZiBBUk02NCBvciBBUk02NEUgb3IgUklTQ1Y2NAogICAgICAgICBw
b3AgbHIsIGNmcgogICAgIGVuZAogZW5kCkBAIC04NDcsNiArODQ3LDExIEBAIG1hY3JvIHByZXNl
cnZlQ2FsbGVlU2F2ZXNVc2VkQnlMTEludCgpCiAgICAgICAgIHN0b3JlcCBjc3I1LCAtMTZbY2Zy
XQogICAgICAgICBzdG9yZXAgY3NyNCwgLTI0W2Nmcl0KICAgICAgICAgc3RvcmVwIGNzcjMsIC0z
MltjZnJdCisgICAgZWxzaWYgUklTQ1Y2NAorICAgICAgICBzdG9yZXAgY3NyOSwgLThbY2ZyXQor
ICAgICAgICBzdG9yZXAgY3NyOCwgLTE2W2Nmcl0KKyAgICAgICAgc3RvcmVwIGNzcjcsIC0yNFtj
ZnJdCisgICAgICAgIHN0b3JlcCBjc3I2LCAtMzJbY2ZyXQogICAgIGVuZAogZW5kCiAKQEAgLTg3
NiwxMSArODgxLDE2IEBAIG1hY3JvIHJlc3RvcmVDYWxsZWVTYXZlc1VzZWRCeUxMSW50KCkKICAg
ICAgICAgbG9hZHAgLTI0W2Nmcl0sIGNzcjQKICAgICAgICAgbG9hZHAgLTE2W2Nmcl0sIGNzcjUK
ICAgICAgICAgbG9hZHAgLThbY2ZyXSwgY3NyNgorICAgIGVsc2lmIFJJU0NWNjQKKyAgICAgICAg
bG9hZHAgLTMyW2Nmcl0sIGNzcjYKKyAgICAgICAgbG9hZHAgLTI0W2Nmcl0sIGNzcjcKKyAgICAg
ICAgbG9hZHAgLTE2W2Nmcl0sIGNzcjgKKyAgICAgICAgbG9hZHAgLThbY2ZyXSwgY3NyOQogICAg
IGVuZAogZW5kCiAKIG1hY3JvIGNvcHlDYWxsZWVTYXZlc1RvRW50cnlGcmFtZUNhbGxlZVNhdmVz
QnVmZmVyKGVudHJ5RnJhbWUpCi0gICAgaWYgQVJNNjQgb3IgQVJNNjRFIG9yIFg4Nl82NCBvciBY
ODZfNjRfV0lOIG9yIEFSTXY3IG9yIE1JUFMKKyAgICBpZiBBUk02NCBvciBBUk02NEUgb3IgWDg2
XzY0IG9yIFg4Nl82NF9XSU4gb3IgQVJNdjcgb3IgTUlQUyBvciBSSVNDVjY0CiAgICAgICAgIHZt
RW50cnlSZWNvcmQoZW50cnlGcmFtZSwgZW50cnlGcmFtZSkKICAgICAgICAgbGVhcCBWTUVudHJ5
UmVjb3JkOjpjYWxsZWVTYXZlUmVnaXN0ZXJzQnVmZmVyW2VudHJ5RnJhbWVdLCBlbnRyeUZyYW1l
CiAgICAgICAgIGlmIEFSTTY0IG9yIEFSTTY0RQpAQCAtOTE5LDE5ICs5MjksNDMgQEAgbWFjcm8g
Y29weUNhbGxlZVNhdmVzVG9FbnRyeUZyYW1lQ2FsbGVlU2F2ZXNCdWZmZXIoZW50cnlGcmFtZSkK
ICAgICAgICAgZWxzaWYgQVJNdjcgb3IgTUlQUwogICAgICAgICAgICAgc3RvcmVwIGNzcjAsIFtl
bnRyeUZyYW1lXQogICAgICAgICAgICAgc3RvcmVwIGNzcjEsIDRbZW50cnlGcmFtZV0KKyAgICAg
ICAgZWxzaWYgUklTQ1Y2NAorICAgICAgICAgICAgc3RvcmVwIGNzcjAsIFtlbnRyeUZyYW1lXQor
ICAgICAgICAgICAgc3RvcmVwIGNzcjEsIDhbZW50cnlGcmFtZV0KKyAgICAgICAgICAgIHN0b3Jl
cCBjc3IyLCAxNltlbnRyeUZyYW1lXQorICAgICAgICAgICAgc3RvcmVwIGNzcjMsIDI0W2VudHJ5
RnJhbWVdCisgICAgICAgICAgICBzdG9yZXAgY3NyNCwgMzJbZW50cnlGcmFtZV0KKyAgICAgICAg
ICAgIHN0b3JlcCBjc3I1LCA0MFtlbnRyeUZyYW1lXQorICAgICAgICAgICAgc3RvcmVwIGNzcjYs
IDQ4W2VudHJ5RnJhbWVdCisgICAgICAgICAgICBzdG9yZXAgY3NyNywgNTZbZW50cnlGcmFtZV0K
KyAgICAgICAgICAgIHN0b3JlcCBjc3I4LCA2NFtlbnRyeUZyYW1lXQorICAgICAgICAgICAgc3Rv
cmVwIGNzcjksIDcyW2VudHJ5RnJhbWVdCisgICAgICAgICAgICBzdG9yZXAgY3NyMTAsIDgwW2Vu
dHJ5RnJhbWVdCisgICAgICAgICAgICBzdG9yZWQgY3NmcjAsIDg4W2VudHJ5RnJhbWVdCisgICAg
ICAgICAgICBzdG9yZWQgY3NmcjEsIDk2W2VudHJ5RnJhbWVdCisgICAgICAgICAgICBzdG9yZWQg
Y3NmcjIsIDEwNFtlbnRyeUZyYW1lXQorICAgICAgICAgICAgc3RvcmVkIGNzZnIzLCAxMTJbZW50
cnlGcmFtZV0KKyAgICAgICAgICAgIHN0b3JlZCBjc2ZyNCwgMTIwW2VudHJ5RnJhbWVdCisgICAg
ICAgICAgICBzdG9yZWQgY3NmcjUsIDEyOFtlbnRyeUZyYW1lXQorICAgICAgICAgICAgc3RvcmVk
IGNzZnI2LCAxMzZbZW50cnlGcmFtZV0KKyAgICAgICAgICAgIHN0b3JlZCBjc2ZyNywgMTQ0W2Vu
dHJ5RnJhbWVdCisgICAgICAgICAgICBzdG9yZWQgY3NmcjgsIDE1MltlbnRyeUZyYW1lXQorICAg
ICAgICAgICAgc3RvcmVkIGNzZnI5LCAxNjBbZW50cnlGcmFtZV0KKyAgICAgICAgICAgIHN0b3Jl
ZCBjc2ZyMTAsIDE2OFtlbnRyeUZyYW1lXQorICAgICAgICAgICAgc3RvcmVkIGNzZnIxMSwgMTc2
W2VudHJ5RnJhbWVdCiAgICAgICAgIGVuZAogICAgIGVuZAogZW5kCiAKIG1hY3JvIGNvcHlDYWxs
ZWVTYXZlc1RvVk1FbnRyeUZyYW1lQ2FsbGVlU2F2ZXNCdWZmZXIodm0sIHRlbXApCi0gICAgaWYg
QVJNNjQgb3IgQVJNNjRFIG9yIFg4Nl82NCBvciBYODZfNjRfV0lOIG9yIEFSTXY3IG9yIE1JUFMK
KyAgICBpZiBBUk02NCBvciBBUk02NEUgb3IgWDg2XzY0IG9yIFg4Nl82NF9XSU4gb3IgQVJNdjcg
b3IgTUlQUyBvciBSSVNDVjY0CiAgICAgICAgIGxvYWRwIFZNOjp0b3BFbnRyeUZyYW1lW3ZtXSwg
dGVtcAogICAgICAgICBjb3B5Q2FsbGVlU2F2ZXNUb0VudHJ5RnJhbWVDYWxsZWVTYXZlc0J1ZmZl
cih0ZW1wKQogICAgIGVuZAogZW5kCiAKIG1hY3JvIHJlc3RvcmVDYWxsZWVTYXZlc0Zyb21WTUVu
dHJ5RnJhbWVDYWxsZWVTYXZlc0J1ZmZlcih2bSwgdGVtcCkKLSAgICBpZiBBUk02NCBvciBBUk02
NEUgb3IgWDg2XzY0IG9yIFg4Nl82NF9XSU4gb3IgQVJNdjcgb3IgTUlQUworICAgIGlmIEFSTTY0
IG9yIEFSTTY0RSBvciBYODZfNjQgb3IgWDg2XzY0X1dJTiBvciBBUk12NyBvciBNSVBTIG9yIFJJ
U0NWNjQKICAgICAgICAgbG9hZHAgVk06OnRvcEVudHJ5RnJhbWVbdm1dLCB0ZW1wCiAgICAgICAg
IHZtRW50cnlSZWNvcmQodGVtcCwgdGVtcCkKICAgICAgICAgbGVhcCBWTUVudHJ5UmVjb3JkOjpj
YWxsZWVTYXZlUmVnaXN0ZXJzQnVmZmVyW3RlbXBdLCB0ZW1wCkBAIC05NzEsMTIgKzEwMDUsMzYg
QEAgbWFjcm8gcmVzdG9yZUNhbGxlZVNhdmVzRnJvbVZNRW50cnlGcmFtZUNhbGxlZVNhdmVzQnVm
ZmVyKHZtLCB0ZW1wKQogICAgICAgICBlbHNpZiBBUk12NyBvciBNSVBTCiAgICAgICAgICAgICBs
b2FkcCBbdGVtcF0sIGNzcjAKICAgICAgICAgICAgIGxvYWRwIDRbdGVtcF0sIGNzcjEKKyAgICAg
ICAgZWxzaWYgUklTQ1Y2NAorICAgICAgICAgICAgbG9hZHEgW3RlbXBdLCBjc3IwCisgICAgICAg
ICAgICBsb2FkcSA4W3RlbXBdLCBjc3IxCisgICAgICAgICAgICBsb2FkcSAxNlt0ZW1wXSwgY3Ny
MgorICAgICAgICAgICAgbG9hZHEgMjRbdGVtcF0sIGNzcjMKKyAgICAgICAgICAgIGxvYWRxIDMy
W3RlbXBdLCBjc3I0CisgICAgICAgICAgICBsb2FkcSA0MFt0ZW1wXSwgY3NyNQorICAgICAgICAg
ICAgbG9hZHEgNDhbdGVtcF0sIGNzcjYKKyAgICAgICAgICAgIGxvYWRxIDU2W3RlbXBdLCBjc3I3
CisgICAgICAgICAgICBsb2FkcSA2NFt0ZW1wXSwgY3NyOAorICAgICAgICAgICAgbG9hZHEgNzJb
dGVtcF0sIGNzcjkKKyAgICAgICAgICAgIGxvYWRxIDgwW3RlbXBdLCBjc3IxMAorICAgICAgICAg
ICAgbG9hZGQgODhbdGVtcF0sIGNzZnIwCisgICAgICAgICAgICBsb2FkZCA5Nlt0ZW1wXSwgY3Nm
cjEKKyAgICAgICAgICAgIGxvYWRkIDEwNFt0ZW1wXSwgY3NmcjIKKyAgICAgICAgICAgIGxvYWRk
IDExMlt0ZW1wXSwgY3NmcjMKKyAgICAgICAgICAgIGxvYWRkIDEyMFt0ZW1wXSwgY3NmcjQKKyAg
ICAgICAgICAgIGxvYWRkIDEyOFt0ZW1wXSwgY3NmcjUKKyAgICAgICAgICAgIGxvYWRkIDEzNlt0
ZW1wXSwgY3NmcjYKKyAgICAgICAgICAgIGxvYWRkIDE0NFt0ZW1wXSwgY3NmcjcKKyAgICAgICAg
ICAgIGxvYWRkIDE1Mlt0ZW1wXSwgY3NmcjgKKyAgICAgICAgICAgIGxvYWRkIDE2MFt0ZW1wXSwg
Y3NmcjkKKyAgICAgICAgICAgIGxvYWRkIDE2OFt0ZW1wXSwgY3NmcjEwCisgICAgICAgICAgICBs
b2FkZCAxNzZbdGVtcF0sIGNzZnIxMQogICAgICAgICBlbmQKICAgICBlbmQKIGVuZAogCiBtYWNy
byBwcmVzZXJ2ZVJldHVybkFkZHJlc3NBZnRlckNhbGwoZGVzdGluYXRpb25SZWdpc3RlcikKLSAg
ICBpZiBDX0xPT1Agb3IgQ19MT09QX1dJTiBvciBBUk12NyBvciBBUk02NCBvciBBUk02NEUgb3Ig
TUlQUworICAgIGlmIENfTE9PUCBvciBDX0xPT1BfV0lOIG9yIEFSTXY3IG9yIEFSTTY0IG9yIEFS
TTY0RSBvciBNSVBTIG9yIFJJU0NWNjQKICAgICAgICAgIyBJbiBDX0xPT1Agb3IgQ19MT09QX1dJ
TiBjYXNlLCB3ZSdyZSBvbmx5IHByZXNlcnZpbmcgdGhlIGJ5dGVjb2RlIHZQQy4KICAgICAgICAg
bW92ZSBsciwgZGVzdGluYXRpb25SZWdpc3RlcgogICAgIGVsc2lmIFg4NiBvciBYODZfV0lOIG9y
IFg4Nl82NCBvciBYODZfNjRfV0lOCkBAIC05OTAsNyArMTA0OCw3IEBAIG1hY3JvIGZ1bmN0aW9u
UHJvbG9ndWUoKQogICAgIHRhZ1JldHVybkFkZHJlc3Mgc3AKICAgICBpZiBYODYgb3IgWDg2X1dJ
TiBvciBYODZfNjQgb3IgWDg2XzY0X1dJTgogICAgICAgICBwdXNoIGNmcgotICAgIGVsc2lmIEFS
TTY0IG9yIEFSTTY0RQorICAgIGVsc2lmIEFSTTY0IG9yIEFSTTY0RSBvciBSSVNDVjY0CiAgICAg
ICAgIHB1c2ggY2ZyLCBscgogICAgIGVsc2lmIENfTE9PUCBvciBDX0xPT1BfV0lOIG9yIEFSTXY3
IG9yIE1JUFMKICAgICAgICAgcHVzaCBscgpAQCAtMTAwMiw3ICsxMDYwLDcgQEAgZW5kCiBtYWNy
byBmdW5jdGlvbkVwaWxvZ3VlKCkKICAgICBpZiBYODYgb3IgWDg2X1dJTiBvciBYODZfNjQgb3Ig
WDg2XzY0X1dJTgogICAgICAgICBwb3AgY2ZyCi0gICAgZWxzaWYgQVJNNjQgb3IgQVJNNjRFCisg
ICAgZWxzaWYgQVJNNjQgb3IgQVJNNjRFIG9yIFJJU0NWNjQKICAgICAgICAgcG9wIGxyLCBjZnIK
ICAgICBlbHNpZiBDX0xPT1Agb3IgQ19MT09QX1dJTiBvciBBUk12NyBvciBNSVBTCiAgICAgICAg
IHBvcCBjZnIKQEAgLTExNTgsNyArMTIxNiw3IEBAIG1hY3JvIHByZXBhcmVGb3JUYWlsQ2FsbChj
YWxsZWUsIHRlbXAxLCB0ZW1wMiwgdGVtcDMsIHRlbXA0LCBjYWxsUHRyVGFnKQogICAgIGFkZGkg
U3RhY2tBbGlnbm1lbnQgLSAxICsgQ2FsbEZyYW1lSGVhZGVyU2l6ZSwgdGVtcDIKICAgICBhbmRp
IH5TdGFja0FsaWdubWVudE1hc2ssIHRlbXAyCiAKLSAgICBpZiBBUk12NyBvciBBUk02NCBvciBB
Uk02NEUgb3IgQ19MT09QIG9yIENfTE9PUF9XSU4gb3IgTUlQUworICAgIGlmIEFSTXY3IG9yIEFS
TTY0IG9yIEFSTTY0RSBvciBDX0xPT1Agb3IgQ19MT09QX1dJTiBvciBNSVBTIG9yIFJJU0NWNjQK
ICAgICAgICAgYWRkcCBDYWxsZXJGcmFtZUFuZFBDU2l6ZSwgc3AKICAgICAgICAgc3ViaSBDYWxs
ZXJGcmFtZUFuZFBDU2l6ZSwgdGVtcDIKICAgICAgICAgbG9hZHAgQ2FsbGVyRnJhbWVBbmRQQzo6
cmV0dXJuUENbY2ZyXSwgbHIKQEAgLTE0NTQsNyArMTUxMiw3IEBAIG1hY3JvIHByb2xvZ3VlKGNv
ZGVCbG9ja0dldHRlciwgY29kZUJsb2NrU2V0dGVyLCBvc3JTbG93UGF0aCwgdHJhY2VTbG93UGF0
aCkKICAgICAgICAgYnRweiByMCwgLnJlY292ZXIKICAgICAgICAgbW92ZSBjZnIsIHNwICMgcmVz
dG9yZSB0aGUgcHJldmlvdXMgc3AKICAgICAgICAgIyBwb3AgdGhlIGNhbGxlckZyYW1lIHNpbmNl
IHdlIHdpbGwganVtcCB0byBhIGZ1bmN0aW9uIHRoYXQgd2FudHMgdG8gc2F2ZSBpdAotICAgICAg
ICBpZiBBUk02NAorICAgICAgICBpZiBBUk02NCBvciBSSVNDVjY0CiAgICAgICAgICAgICBwb3Ag
bHIsIGNmcgogICAgICAgICBlbHNpZiBBUk02NEUKICAgICAgICAgICAgICMgdW50YWdSZXR1cm5B
ZGRyZXNzIHdpbGwgYmUgcGVyZm9ybWVkIGluIEdhdGU6OmVudHJ5T1NSRW50cnkuCkBAIC0xODEw
LDcgKzE4NjgsNyBAQCBlbHNlCiAgICAgICAgICAgICBsZWFwIChsYWJlbCAtIF8la2luZCVfcmVs
YXRpdmVQQ0Jhc2UpW3QzXSwgdDQKICAgICAgICAgICAgIG1vdmUgaW5kZXgsIHQ1CiAgICAgICAg
ICAgICBzdG9yZXAgdDQsIFttYXAsIHQ1LCA0XQotICAgICAgICBlbHNpZiBBUk02NAorICAgICAg
ICBlbHNpZiBBUk02NCBvciBSSVNDVjY0CiAgICAgICAgICAgICBwY3J0b2FkZHIgbGFiZWwsIHQz
CiAgICAgICAgICAgICBtb3ZlIGluZGV4LCB0NAogICAgICAgICAgICAgc3RvcmVwIHQzLCBbbWFw
LCB0NCwgUHRyU2l6ZV0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9sbGludC9M
b3dMZXZlbEludGVycHJldGVyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9sbGludC9Mb3dM
ZXZlbEludGVycHJldGVyLmNwcAppbmRleCAzZmI0OTQ4ZjI2NzQ4MjIxZTFmZTk1NmM4YTA3ODU2
M2Y2YWFjZTM4Li5jMDRmZmQ2YjBiYzNmMjZlMTkyZjA2ZjJiYmY3NGIwNjRkY2IyNzlhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTG93TGV2ZWxJbnRlcnByZXRlci5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xvd0xldmVsSW50ZXJwcmV0ZXIu
Y3BwCkBAIC00OTAsNyArNDkwLDkgQEAgSlNWYWx1ZSBDTG9vcDo6ZXhlY3V0ZShPcGNvZGVJRCBl
bnRyeU9wY29kZUlELCB2b2lkKiBleGVjdXRhYmxlQWRkcmVzcywgVk0qIHZtLAogICAgIE9GRkxJ
TkVfQVNNX09QQ09ERV9ERUJVR19MQUJFTChsbGludF8jI19fb3Bjb2RlKSBcCiAgICAgT0ZGTElO
RV9BU01fTE9DQUxfTEFCRUwobGxpbnRfIyNfX29wY29kZSkKIAotI2RlZmluZSBPRkZMSU5FX0FT
TV9HTFVFX0xBQkVMKF9fb3Bjb2RlKSAgIE9GRkxJTkVfQVNNX0xPQ0FMX0xBQkVMKF9fb3Bjb2Rl
KQorI2RlZmluZSBPRkZMSU5FX0FTTV9HTFVFX0xBQkVMKF9fb3Bjb2RlKSBcCisgICAgT0ZGTElO
RV9BU01fT1BDT0RFX0RFQlVHX0xBQkVMKF9fb3Bjb2RlKSBcCisgICAgT0ZGTElORV9BU01fTE9D
QUxfTEFCRUwoX19vcGNvZGUpCiAKICNpZiBDUFUoQVJNX1RIVU1CMikKICNkZWZpbmUgT0ZGTElO
RV9BU01fR0xPQkFMX0xBQkVMKGxhYmVsKSAgICAgICAgICBcCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvbGxpbnQvTG93TGV2ZWxJbnRlcnByZXRlcjY0LmFzbSBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9sbGludC9Mb3dMZXZlbEludGVycHJldGVyNjQuYXNtCmluZGV4IDhhNWY3
ZDIzZTY0NzYzYmEyNTllMWIyYzVkODdmOGQxNmI4MjlhZGEuLmUyMWY4MGNhZTQ5ZGJiZDZiMmVl
NzY5ZjU5ZmNiZThjZWRmZWUyODUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9s
bGludC9Mb3dMZXZlbEludGVycHJldGVyNjQuYXNtCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9sbGludC9Mb3dMZXZlbEludGVycHJldGVyNjQuYXNtCkBAIC05Myw3ICs5Myw3IEBAIGVuZAog
CiBtYWNybyBjQ2FsbDIoZnVuY3Rpb24pCiAgICAgY2hlY2tTdGFja1BvaW50ZXJBbGlnbm1lbnQo
dDQsIDB4YmFkMGMwMDIpCi0gICAgaWYgWDg2XzY0IG9yIEFSTTY0IG9yIEFSTTY0RQorICAgIGlm
IFg4Nl82NCBvciBBUk02NCBvciBBUk02NEUgb3IgUklTQ1Y2NAogICAgICAgICBjYWxsIGZ1bmN0
aW9uCiAgICAgZWxzaWYgWDg2XzY0X1dJTgogICAgICAgICAjIE5vdGU6IHRoaXMgaW1wbGVtZW50
YXRpb24gaXMgb25seSBjb3JyZWN0IGlmIHRoZSByZXR1cm4gdHlwZSBzaXplIGlzID4gOCBieXRl
cy4KQEAgLTE0MCw3ICsxNDAsNyBAQCBlbmQKICMgVGhpcyBiYXJlbHkgd29ya3MuIGFyZzMgYW5k
IGFyZzQgc2hvdWxkIHByb2JhYmx5IGJlIGltbWVkaWF0ZXMuCiBtYWNybyBjQ2FsbDQoZnVuY3Rp
b24pCiAgICAgY2hlY2tTdGFja1BvaW50ZXJBbGlnbm1lbnQodDQsIDB4YmFkMGMwMDQpCi0gICAg
aWYgWDg2XzY0IG9yIEFSTTY0IG9yIEFSTTY0RQorICAgIGlmIFg4Nl82NCBvciBBUk02NCBvciBB
Uk02NEUgb3IgUklTQ1Y2NAogICAgICAgICBjYWxsIGZ1bmN0aW9uCiAgICAgZWxzaWYgWDg2XzY0
X1dJTgogICAgICAgICAjIE9uIFdpbjY0LCByY3gsIHJkeCwgcjgsIGFuZCByOSBhcmUgdXNlZCBm
b3IgcGFzc2luZyB0aGUgZmlyc3QgZm91ciBwYXJhbWV0ZXJzLgpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL29mZmxpbmVhc20vYmFja2VuZHMucmIgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvb2ZmbGluZWFzbS9iYWNrZW5kcy5yYgppbmRleCA0MTRmMWVhYmVhZDIyMjFmYjkxMjc3
YzcwMjE3NmNlMWZhODA2MDcyLi40NTA2Njg2Zjk5ZjI0NDRhZjM4MjdhMTdiNGVlODU2MGM5ZjNi
YjY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvb2ZmbGluZWFzbS9iYWNrZW5k
cy5yYgorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvb2ZmbGluZWFzbS9iYWNrZW5kcy5yYgpA
QCAtMjcsNiArMjcsNyBAQCByZXF1aXJlICJhcm02NCIKIHJlcXVpcmUgImFzdCIKIHJlcXVpcmUg
Ing4NiIKIHJlcXVpcmUgIm1pcHMiCityZXF1aXJlICJyaXNjdjY0IgogcmVxdWlyZSAiY2xvb3Ai
CiAKIGJlZ2luCkBAIC00NCw2ICs0NSw3IEBAIEJBQ0tFTkRTID0KICAgICAgIkFSTTY0IiwKICAg
ICAgIkFSTTY0RSIsCiAgICAgICJNSVBTIiwKKyAgICAgIlJJU0NWNjQiLAogICAgICAiQ19MT09Q
IiwKICAgICAgIkNfTE9PUF9XSU4iCiAgICAgXQpAQCAtNjMsNiArNjUsNyBAQCBXT1JLSU5HX0JB
Q0tFTkRTID0KICAgICAgIkFSTTY0IiwKICAgICAgIkFSTTY0RSIsCiAgICAgICJNSVBTIiwKKyAg
ICAgIlJJU0NWNjQiLAogICAgICAiQ19MT09QIiwKICAgICAgIkNfTE9PUF9XSU4iCiAgICAgXQpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL29mZmxpbmVhc20vcmVnaXN0ZXJzLnJi
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL29mZmxpbmVhc20vcmVnaXN0ZXJzLnJiCmluZGV4IGNi
ODQ1N2I4Zjk0OGFjYjI4ZTc2YjBkNzk0OTI4ODYxZmU1ODE1MDYuLjBkYzQ0YzIzZGZiMmJhZDM2
NWEwZmViNTcxMDNhZDJmZDMzZmVhZTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9vZmZsaW5lYXNtL3JlZ2lzdGVycy5yYgorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvb2Zm
bGluZWFzbS9yZWdpc3RlcnMucmIKQEAgLTU3LDcgKzU3LDggQEAgR1BSUyA9CiAgICAgICJjc3I2
IiwKICAgICAgImNzcjciLAogICAgICAiY3NyOCIsCi0gICAgICJjc3I5IgorICAgICAiY3NyOSIs
CisgICAgICJjc3IxMCIKICAgICBdCiAKIEZQUlMgPQpAQCAtODAsNiArODEsMTAgQEAgRlBSUyA9
CiAgICAgICJjc2ZyNSIsCiAgICAgICJjc2ZyNiIsCiAgICAgICJjc2ZyNyIsCisgICAgICJjc2Zy
OCIsCisgICAgICJjc2ZyOSIsCisgICAgICJjc2ZyMTAiLAorICAgICAiY3NmcjExIiwKICAgICAg
ImZyIgogICAgIF0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL29mZmxpbmVh
c20vcmlzY3Y2NC5yYiBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9vZmZsaW5lYXNtL3Jpc2N2NjQu
cmIKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uYzdlNGY2MmU4M2UyZGExMDkyZDBmMTcyNGU0MWVmYjBiODFiMThmNQot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9vZmZsaW5lYXNtL3Jpc2N2
NjQucmIKQEAgLTAsMCArMSwyMzAwIEBACisjIENvcHlyaWdodCAoQykgMjAyMSBJZ2FsaWEgUy5M
LgorIworIyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKKyMgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisjIGFyZSBtZXQ6CisjIDEuIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cisj
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyMgMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorIyAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorIworIyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBD
T05UUklCVVRPUlMgYGBBUyBJUycnCisjIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorIyBUSEUgSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisj
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1Ig
SVRTIENPTlRSSUJVVE9SUworIyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisjIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisjIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUworIyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorIyBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorIyBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GCisjIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKworZGVmIHJpc2N2NjRP
cGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgcmV0dXJuIG9wZXJhbmRzLm1hcCB7CisgICAgICAg
IHxvcHwKKyAgICAgICAgb3AuY2xhc3MKKyAgICB9CitlbmQKKworZGVmIHJpc2N2NjRSYWlzZU1p
c21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICByYWlzZSAiVW5hYmxlIHRvIG1hdGNoIG9w
ZXJhbmRzICN7cmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcyl9IgorZW5kCisKK2RlZiByaXNj
djY0UmFpc2VVbnN1cHBvcnRlZAorICAgIHJhaXNlICJOb3Qgc3VwcG9ydGVkIGZvciBSSVNDVjY0
IgorZW5kCisKK2RlZiByaXNjdjY0TG9hZEluc3RydWN0aW9uKHNpemUpCisgICAgY2FzZSBzaXpl
CisgICAgd2hlbiA6YgorICAgICAgICAibGIiCisgICAgd2hlbiA6dworICAgICAgICAibHciCisg
ICAgd2hlbiA6ZAorICAgICAgICAibGQiCisgICAgZWxzZQorICAgICAgICByYWlzZSAiVW5zdXBw
b3J0ZWQgc2l6ZSAje3NpemV9IgorICAgIGVuZAorZW5kCisKK2RlZiByaXNjdjY0Q29uZGl0aW9u
YWxCcmFuY2hJbnN0cnVjdGlvbihjb25kaXRpb24pCisgICAgY2FzZSBjb25kaXRpb24KKyAgICB3
aGVuIDplcQorICAgICAgICAiYmVxIgorICAgIHdoZW4gOm5lcQorICAgICAgICAiYm5lIgorICAg
IHdoZW4gOmEKKyAgICAgICAgImJndHUiCisgICAgd2hlbiA6YWVxCisgICAgICAgICJiZ2V1Igor
ICAgIHdoZW4gOmIKKyAgICAgICAgImJsdHUiCisgICAgd2hlbiA6YmVxCisgICAgICAgICJibGV1
IgorICAgIHdoZW4gOmd0CisgICAgICAgICJiZ3QiCisgICAgd2hlbiA6Z3RlcQorICAgICAgICAi
YmdlIgorICAgIHdoZW4gOmx0CisgICAgICAgICJibHQiCisgICAgd2hlbiA6bHRlcQorICAgICAg
ICAiYmxlIgorICAgIGVsc2UKKyAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIGNvbmRpdGlvbiAj
e2NvbmRpdGlvbn0iCisgICAgZW5kCitlbmQKKworZGVmIHJpc2N2NjRFbWl0TG9hZChvcGVyYW5k
cywgdHlwZSwgbWFzaykKKyAgICBkZWYgbG9hZEluc3RydWN0aW9uKHR5cGUpCisgICAgICAgIGNh
c2UgdHlwZQorICAgICAgICB3aGVuIDpidQorICAgICAgICAgICAgImxidSIKKyAgICAgICAgd2hl
biA6YgorICAgICAgICAgICAgImxiIgorICAgICAgICB3aGVuIDpodQorICAgICAgICAgICAgImxo
dSIKKyAgICAgICAgd2hlbiA6aAorICAgICAgICAgICAgImxoIgorICAgICAgICB3aGVuIDp3dQor
ICAgICAgICAgICAgImx3dSIKKyAgICAgICAgd2hlbiA6dworICAgICAgICAgICAgImx3IgorICAg
ICAgICB3aGVuIDpkCisgICAgICAgICAgICAibGQiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAg
IHJhaXNlICJVbnN1cHBvcnRlZCBsb2FkIHR5cGUiCisgICAgICAgIGVuZAorICAgIGVuZAorCisg
ICAgaW5zdHJ1Y3Rpb24gPSBsb2FkSW5zdHJ1Y3Rpb24odHlwZSkKKworICAgIGNhc2UgcmlzY3Y2
NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICB3aGVuIFtBZGRyZXNzLCBSZWdpc3RlcklEXQor
ICAgICAgICBpZiBvcGVyYW5kc1swXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICBv
cGVyYW5kc1swXS5yaXNjdjY0TG9hZAorICAgICAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0
aW9ufSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgMCh4MzEpIgorICAgICAgICBlbHNl
CisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMV0ucmlz
Y3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZW5k
CisgICAgd2hlbiBbQmFzZUluZGV4LCBSZWdpc3RlcklEXQorICAgICAgICBvcGVyYW5kc1swXS5y
aXNjdjY0TG9hZAorICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNb
MV0ucmlzY3Y2NE9wZXJhbmR9LCAwKHgzMSkiCisgICAgZWxzZQorICAgICAgICByaXNjdjY0UmFp
c2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgZW5kCisKKyAgICBjYXNlIG1hc2sK
KyAgICB3aGVuIDp3CisgICAgICAgICRhc20ucHV0cyAibGkgeDMxLCAweGZmZmZmZmZmIgorICAg
ICAgICAkYXNtLnB1dHMgImFuZCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVy
YW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAgICB3aGVuIDpub25lCisgICAgZWxzZQor
ICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgbWFzayB0eXBlIgorICAgIGVuZAorZW5kCisKK2Rl
ZiByaXNjdjY0RW1pdFN0b3JlKG9wZXJhbmRzLCB0eXBlKQorICAgIGRlZiBzdG9yZUluc3RydWN0
aW9uKHR5cGUpCisgICAgICAgIGNhc2UgdHlwZQorICAgICAgICB3aGVuIDpiCisgICAgICAgICAg
ICAic2IiCisgICAgICAgIHdoZW4gOmgKKyAgICAgICAgICAgICJzaCIKKyAgICAgICAgd2hlbiA6
dworICAgICAgICAgICAgInN3IgorICAgICAgICB3aGVuIDpkCisgICAgICAgICAgICAic2QiCisg
ICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCBzdG9yZSB0eXBlIgor
ICAgICAgICBlbmQKKyAgICBlbmQKKworICAgIGluc3RydWN0aW9uID0gc3RvcmVJbnN0cnVjdGlv
bih0eXBlKQorCisgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgIHdo
ZW4gW1JlZ2lzdGVySUQsIEFkZHJlc3NdCisgICAgICAgIGlmIG9wZXJhbmRzWzFdLnJpc2N2NjRS
ZXF1aXJlc0xvYWQKKyAgICAgICAgICAgIG9wZXJhbmRzWzFdLnJpc2N2NjRMb2FkCisgICAgICAg
ICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJh
bmR9LCAwKHgzMSkiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tpbnN0
cnVjdGlvbn0gI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlz
Y3Y2NE9wZXJhbmR9IgorICAgICAgICBlbmQKKyAgICB3aGVuIFtSZWdpc3RlcklELCBCYXNlSW5k
ZXhdCisgICAgICAgIG9wZXJhbmRzWzFdLnJpc2N2NjRMb2FkCisgICAgICAgICRhc20ucHV0cyAi
I3tpbnN0cnVjdGlvbn0gI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sIDAoeDMxKSIKKyAg
ICB3aGVuIFtJbW1lZGlhdGUsIEFkZHJlc3NdCisgICAgICAgICRhc20ucHV0cyAibGkgeDMwLCAj
e29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgaWYgb3BlcmFuZHNbMV0ucmlz
Y3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExvYWQKKyAg
ICAgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0geDMwLCAwKHgzMSkiCisgICAgICAg
IGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0geDMwLCAje29wZXJh
bmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZW5kCisgICAgd2hlbiBbSW1tZWRpYXRl
LCBCYXNlSW5kZXhdCisgICAgICAgICRhc20ucHV0cyAibGkgeDMwLCAje29wZXJhbmRzWzBdLnJp
c2N2NjRPcGVyYW5kfSIKKyAgICAgICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExvYWQKKyAgICAgICAg
JGFzbS5wdXRzICIje2luc3RydWN0aW9ufSB4MzAsIDAoeDMxKSIKKyAgICBlbHNlCisgICAgICAg
IHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICBlbmQKK2VuZAor
CitkZWYgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywgc2l6ZSwgY29uZGl0
aW9uKQorICAgIGluc3RydWN0aW9uID0gcmlzY3Y2NENvbmRpdGlvbmFsQnJhbmNoSW5zdHJ1Y3Rp
b24oY29uZGl0aW9uKQorCisgICAgZGVmIHNpZ25FeHRlbmRGb3JTaXplKHJlZ2lzdGVyLCB0YXJn
ZXQsIHNpemUpCisgICAgICAgIGNhc2Ugc2l6ZQorICAgICAgICB3aGVuIDpiCisgICAgICAgICAg
ICAkYXNtLnB1dHMgInNsbGkgI3t0YXJnZXR9LCAje3JlZ2lzdGVyLnJpc2N2NjRPcGVyYW5kfSwg
MjQiCisgICAgICAgICAgICAkYXNtLnB1dHMgInNleHQudyAje3RhcmdldH0sICN7dGFyZ2V0fSIK
KyAgICAgICAgICAgICRhc20ucHV0cyAic3JhaSAje3RhcmdldH0sICN7dGFyZ2V0fSwgMjQiCisg
ICAgICAgIHdoZW4gOncKKyAgICAgICAgICAgICRhc20ucHV0cyAic2V4dC53ICN7dGFyZ2V0fSwg
I3tyZWdpc3Rlci5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIHdoZW4gOmQKKyAgICAgICAgICAg
ICRhc20ucHV0cyAibXYgI3t0YXJnZXR9LCAje3JlZ2lzdGVyLnJpc2N2NjRPcGVyYW5kfSIKKyAg
ICAgICAgZW5kCisgICAgZW5kCisKKyAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFu
ZHMpCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCwgTG9jYWxMYWJlbFJlZmVyZW5j
ZV0KKyAgICAgICAgc2lnbkV4dGVuZEZvclNpemUob3BlcmFuZHNbMF0sICd4MzAnLCBzaXplKQor
ICAgICAgICBzaWduRXh0ZW5kRm9yU2l6ZShvcGVyYW5kc1sxXSwgJ3gzMScsIHNpemUpCisgICAg
ICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0geDMwLCB4MzEsICN7b3BlcmFuZHNbMl0uYXNt
TGFiZWx9IgorICAgIHdoZW4gW1JlZ2lzdGVySUQsIEltbWVkaWF0ZSwgTG9jYWxMYWJlbFJlZmVy
ZW5jZV0KKyAgICAgICAgc2lnbkV4dGVuZEZvclNpemUob3BlcmFuZHNbMF0sICd4MzAnLCBzaXpl
KQorICAgICAgICAkYXNtLnB1dHMgImxpIHgzMSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFu
ZH0iCisgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0geDMwLCB4MzEsICN7b3BlcmFu
ZHNbMl0uYXNtTGFiZWx9IgorICAgIHdoZW4gW1JlZ2lzdGVySUQsIEFkZHJlc3MsIExvY2FsTGFi
ZWxSZWZlcmVuY2VdCisgICAgICAgIHNpZ25FeHRlbmRGb3JTaXplKG9wZXJhbmRzWzBdLCAneDMw
Jywgc2l6ZSkKKyAgICAgICAgaWYgb3BlcmFuZHNbMV0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAg
ICAgICAgICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExvYWQKKyAgICAgICAgICAgICRhc20ucHV0cyAi
I3tyaXNjdjY0TG9hZEluc3RydWN0aW9uKHNpemUpfSB4MzEsIDAoeDMxKSIKKyAgICAgICAgZWxz
ZQorICAgICAgICAgICAgJGFzbS5wdXRzICIje3Jpc2N2NjRMb2FkSW5zdHJ1Y3Rpb24oc2l6ZSl9
IHgzMSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVuZAorICAgICAg
ICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259IHgzMCwgeDMxLCAje29wZXJhbmRzWzJdLmFzbUxh
YmVsfSIKKyAgICB3aGVuIFtSZWdpc3RlcklELCBCYXNlSW5kZXgsIExvY2FsTGFiZWxSZWZlcmVu
Y2VdCisgICAgICAgIG9wZXJhbmRzWzFdLnJpc2N2NjRMb2FkCisgICAgICAgICRhc20ucHV0cyAi
I3tyaXNjdjY0TG9hZEluc3RydWN0aW9uKHNpemUpfSB4MzEsIDAoeDMxKSIKKyAgICAgICAgc2ln
bkV4dGVuZEZvclNpemUob3BlcmFuZHNbMF0sICd4MzAnLCBzaXplKQorICAgICAgICAkYXNtLnB1
dHMgIiN7aW5zdHJ1Y3Rpb259IHgzMCwgeDMxLCAje29wZXJhbmRzWzJdLmFzbUxhYmVsfSIKKyAg
ICB3aGVuIFtBZGRyZXNzLCBSZWdpc3RlcklELCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAg
ICBpZiBvcGVyYW5kc1swXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICBvcGVyYW5k
c1swXS5yaXNjdjY0TG9hZAorICAgICAgICAgICAgJGFzbS5wdXRzICIje3Jpc2N2NjRMb2FkSW5z
dHJ1Y3Rpb24oc2l6ZSl9IHgzMCwgMCh4MzEpIgorICAgICAgICBlbHNlCisgICAgICAgICAgICAk
YXNtLnB1dHMgIiN7cmlzY3Y2NExvYWRJbnN0cnVjdGlvbihzaXplKX0geDMwLCAje29wZXJhbmRz
WzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZW5kCisgICAgICAgIHNpZ25FeHRlbmRGb3JT
aXplKG9wZXJhbmRzWzFdLCAneDMxJywgc2l6ZSkKKyAgICAgICAgJGFzbS5wdXRzICIje2luc3Ry
dWN0aW9ufSB4MzAsIHgzMSwgI3tvcGVyYW5kc1syXS5hc21MYWJlbH0iCisgICAgd2hlbiBbQWRk
cmVzcywgSW1tZWRpYXRlLCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICBpZiBvcGVyYW5k
c1swXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICBvcGVyYW5kc1swXS5yaXNjdjY0
TG9hZAorICAgICAgICAgICAgJGFzbS5wdXRzICIje3Jpc2N2NjRMb2FkSW5zdHJ1Y3Rpb24oc2l6
ZSl9IHgzMCwgMCh4MzEpIgorICAgICAgICBlbHNlCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7
cmlzY3Y2NExvYWRJbnN0cnVjdGlvbihzaXplKX0geDMwLCAje29wZXJhbmRzWzBdLnJpc2N2NjRP
cGVyYW5kfSIKKyAgICAgICAgZW5kCisgICAgICAgICRhc20ucHV0cyAibGkgeDMxLCAje29wZXJh
bmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9u
fSB4MzAsIHgzMSwgI3tvcGVyYW5kc1syXS5hc21MYWJlbH0iCisgICAgZWxzZQorICAgICAgICBy
aXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgZW5kCitlbmQKKwor
ZGVmIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCBzaXplLCB0
ZXN0KQorICAgIGRlZiBicmFuY2hJbnN0cnVjdGlvbkZvclRlc3QodGVzdCkKKyAgICAgICAgY2Fz
ZSB0ZXN0CisgICAgICAgIHdoZW4gOnoKKyAgICAgICAgICAgICJiZXF6IgorICAgICAgICB3aGVu
IDpuegorICAgICAgICAgICAgImJuZXoiCisgICAgICAgIHdoZW4gOnMKKyAgICAgICAgICAgICJi
bHR6IgorICAgICAgICBlbHNlCisgICAgICAgIGVuZAorICAgIGVuZAorCisgICAgZGVmIHNpZ25F
eHRlbmRGb3JTaXplKHRhcmdldCwgc2l6ZSkKKyAgICAgICAgY2FzZSBzaXplCisgICAgICAgIHdo
ZW4gOmIKKyAgICAgICAgICAgICRhc20ucHV0cyAic2xsaSAje3RhcmdldH0sICN7dGFyZ2V0fSwg
MjQiCisgICAgICAgICAgICAkYXNtLnB1dHMgInNleHQudyAje3RhcmdldH0sICN7dGFyZ2V0fSIK
KyAgICAgICAgICAgICRhc20ucHV0cyAic3JhaSAje3RhcmdldH0sICN7dGFyZ2V0fSwgMjQiCisg
ICAgICAgIHdoZW4gOmgKKyAgICAgICAgICAgICRhc20ucHV0cyAic2xsaSAje3RhcmdldH0sICN7
dGFyZ2V0fSwgMTYiCisgICAgICAgICAgICAkYXNtLnB1dHMgInNleHQudyAje3RhcmdldH0sICN7
dGFyZ2V0fSIKKyAgICAgICAgICAgICRhc20ucHV0cyAic3JhaSAje3RhcmdldH0sICN7dGFyZ2V0
fSwgMTYiCisgICAgICAgIHdoZW4gOncKKyAgICAgICAgICAgICRhc20ucHV0cyAic2V4dC53ICN7
dGFyZ2V0fSwgI3t0YXJnZXR9IgorICAgICAgICB3aGVuIDpkCisgICAgICAgICAgICByZXR1cm4K
KyAgICAgICAgZW5kCisgICAgZW5kCisKKyAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3Bl
cmFuZHMpCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAg
ICAgY2FzZSB0ZXN0CisgICAgICAgIHdoZW4gOnMKKyAgICAgICAgICAgICRhc20ucHV0cyAibXYg
eDMxLCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgIHNpZ25FeHRl
bmRGb3JTaXplKCd4MzEnLCBzaXplKQorICAgICAgICAgICAgJGFzbS5wdXRzICIje2JyYW5jaElu
c3RydWN0aW9uRm9yVGVzdCh0ZXN0KX0geDMxLCAje29wZXJhbmRzWzFdLmFzbUxhYmVsfSIKKyAg
ICAgICAgZWxzZQorICAgICAgICAgICAgJGFzbS5wdXRzICIje2JyYW5jaEluc3RydWN0aW9uRm9y
VGVzdCh0ZXN0KX0gI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0u
YXNtTGFiZWx9IgorICAgICAgICBlbmQKKyAgICB3aGVuIFtSZWdpc3RlcklELCBSZWdpc3RlcklE
LCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICAkYXNtLnB1dHMgImFuZCB4MzEsICN7b3Bl
cmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIK
KyAgICAgICAgc2lnbkV4dGVuZEZvclNpemUoJ3gzMScsIHNpemUpCisgICAgICAgICRhc20ucHV0
cyAiI3ticmFuY2hJbnN0cnVjdGlvbkZvclRlc3QodGVzdCl9IHgzMSwgI3tvcGVyYW5kc1syXS5h
c21MYWJlbH0iCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgSW1tZWRpYXRlLCBMb2NhbExhYmVsUmVm
ZXJlbmNlXQorICAgICAgICBpZiBvcGVyYW5kc1sxXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAg
ICAgICAgICBvcGVyYW5kc1sxXS5yaXNjdjY0TG9hZAorICAgICAgICAgICAgJGFzbS5wdXRzICJh
bmQgeDMxLCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgeDMxIgorICAgICAgICBlbHNl
CisgICAgICAgICAgICAkYXNtLnB1dHMgImFuZGkgeDMxLCAje29wZXJhbmRzWzBdLnJpc2N2NjRP
cGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVuZAorICAg
ICAgICBzaWduRXh0ZW5kRm9yU2l6ZSgneDMxJywgc2l6ZSkKKyAgICAgICAgJGFzbS5wdXRzICIj
e2JyYW5jaEluc3RydWN0aW9uRm9yVGVzdCh0ZXN0KX0geDMxLCAje29wZXJhbmRzWzJdLmFzbUxh
YmVsfSIKKyAgICB3aGVuIFtBZGRyZXNzLCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICBp
ZiBvcGVyYW5kc1swXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICBvcGVyYW5kc1sw
XS5yaXNjdjY0TG9hZAorICAgICAgICAgICAgJGFzbS5wdXRzICIje3Jpc2N2NjRMb2FkSW5zdHJ1
Y3Rpb24oc2l6ZSl9IHgzMSwgMCh4MzEpIgorICAgICAgICBlbHNlCisgICAgICAgICAgICAkYXNt
LnB1dHMgIiN7cmlzY3Y2NExvYWRJbnN0cnVjdGlvbihzaXplKX0geDMxLCAje29wZXJhbmRzWzBd
LnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZW5kCisgICAgICAgICRhc20ucHV0cyAiI3ticmFu
Y2hJbnN0cnVjdGlvbkZvclRlc3QodGVzdCl9IHgzMSwgI3tvcGVyYW5kc1sxXS5hc21MYWJlbH0i
CisgICAgd2hlbiBbQWRkcmVzcywgSW1tZWRpYXRlLCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAg
ICAgICBpZiBvcGVyYW5kc1swXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICBvcGVy
YW5kc1swXS5yaXNjdjY0TG9hZAorICAgICAgICAgICAgJGFzbS5wdXRzICIje3Jpc2N2NjRMb2Fk
SW5zdHJ1Y3Rpb24oc2l6ZSl9IHgzMCwgMCh4MzEpIgorICAgICAgICBlbHNlCisgICAgICAgICAg
ICAkYXNtLnB1dHMgIiN7cmlzY3Y2NExvYWRJbnN0cnVjdGlvbihzaXplKX0geDMwLCAje29wZXJh
bmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZW5kCisgICAgICAgIGlmIG9wZXJhbmRz
WzFdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAgIG9wZXJhbmRzWzFdLnJpc2N2NjRM
b2FkCisgICAgICAgICAgICAkYXNtLnB1dHMgImFuZCB4MzEsIHgzMCwgeDMxIgorICAgICAgICBl
bHNlCisgICAgICAgICAgICAkYXNtLnB1dHMgImFuZGkgeDMxLCB4MzAsICN7b3BlcmFuZHNbMV0u
cmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICBlbmQKKyAgICAgICAgc2lnbkV4dGVuZEZvclNpemUo
J3gzMScsIHNpemUpCisgICAgICAgICRhc20ucHV0cyAiI3ticmFuY2hJbnN0cnVjdGlvbkZvclRl
c3QodGVzdCl9IHgzMSwgI3tvcGVyYW5kc1syXS5hc21MYWJlbH0iCisgICAgd2hlbiBbQmFzZUlu
ZGV4LCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICBvcGVyYW5kc1swXS5yaXNjdjY0TG9h
ZAorICAgICAgICAkYXNtLnB1dHMgIiN7cmlzY3Y2NExvYWRJbnN0cnVjdGlvbihzaXplKX0geDMx
LCAwKHgzMSkiCisgICAgICAgICRhc20ucHV0cyAiI3ticmFuY2hJbnN0cnVjdGlvbkZvclRlc3Qo
dGVzdCl9IHgzMSwgI3tvcGVyYW5kc1sxXS5hc21MYWJlbH0iCisgICAgZWxzZQorICAgICAgICBy
aXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgZW5kCitlbmQKKwor
ZGVmIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVyYW5kcywgc2l6ZSwgY29uZGl0aW9uKQorCisgICAg
ZGVmIHNpZ25FeHRlbmRSZWdpc3RlckZvclNpemUocmVnaXN0ZXIsIHRhcmdldCwgc2l6ZSkKKyAg
ICAgICAgY2FzZSBzaXplCisgICAgICAgIHdoZW4gOmIKKyAgICAgICAgICAgICRhc20ucHV0cyAi
c2xsaSAje3RhcmdldH0sICN7cmVnaXN0ZXIucmlzY3Y2NE9wZXJhbmR9LCAyNCIKKyAgICAgICAg
ICAgICRhc20ucHV0cyAic2V4dC53ICN7dGFyZ2V0fSwgI3t0YXJnZXR9IgorICAgICAgICAgICAg
JGFzbS5wdXRzICJzcmFpICN7dGFyZ2V0fSwgI3t0YXJnZXR9LCAyNCIKKyAgICAgICAgd2hlbiA6
dworICAgICAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgI3t0YXJnZXR9LCAje3JlZ2lzdGVyLnJp
c2N2NjRPcGVyYW5kfSIKKyAgICAgICAgd2hlbiA6ZAorICAgICAgICAgICAgJGFzbS5wdXRzICJt
diAje3RhcmdldH0sICN7cmVnaXN0ZXIucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICBlbHNlCisg
ICAgICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgc2l6ZSIKKyAgICAgICAgZW5kCisgICAgZW5k
CisKKyAgICBkZWYgc2lnbkV4dGVuZEltbWVkaWF0ZUZvclNpemUoaW1tZWRpYXRlLCB0YXJnZXQs
IHNpemUpCisgICAgICAgICRhc20ucHV0cyAibGkgI3t0YXJnZXR9LCAje2ltbWVkaWF0ZS5yaXNj
djY0T3BlcmFuZH0iCisgICAgICAgIGNhc2Ugc2l6ZQorICAgICAgICB3aGVuIDpiCisgICAgICAg
ICAgICAkYXNtLnB1dHMgInNsbGkgI3t0YXJnZXR9LCAje3RhcmdldH0sIDI0IgorICAgICAgICAg
ICAgJGFzbS5wdXRzICJzZXh0LncgI3t0YXJnZXR9LCAje3RhcmdldH0iCisgICAgICAgICAgICAk
YXNtLnB1dHMgInNyYWkgI3t0YXJnZXR9LCAje3RhcmdldH0sIDI0IgorICAgICAgICB3aGVuIDp3
CisgICAgICAgICAgICAkYXNtLnB1dHMgInNleHQudyAje3RhcmdldH0sICN7dGFyZ2V0fSIKKyAg
ICAgICAgd2hlbiA6ZAorICAgICAgICBlbHNlCisgICAgICAgICAgICByYWlzZSAiVW5zdXBwb3J0
ZWQgc2l6ZSIKKyAgICAgICAgZW5kCisgICAgZW5kCisKKyAgICBkZWYgbG9hZEFuZFNpZ25FeHRl
bmRBZGRyZXNzRm9yU2l6ZShhZGRyZXNzLCB0YXJnZXQsIHNpemUpCisgICAgICAgIGlmIGFkZHJl
c3MucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgYWRkcmVzcy5yaXNjdjY0TG9hZAor
ICAgICAgICAgICAgJGFzbS5wdXRzICIje3Jpc2N2NjRMb2FkSW5zdHJ1Y3Rpb24oc2l6ZSl9ICN7
dGFyZ2V0fSwgMCh4MzEpIgorICAgICAgICBlbHNlCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7
cmlzY3Y2NExvYWRJbnN0cnVjdGlvbihzaXplKX0gI3t0YXJnZXR9LCAje2FkZHJlc3MucmlzY3Y2
NE9wZXJhbmR9IgorICAgICAgICBlbmQKKyAgICBlbmQKKworICAgIGRlZiBzZXRGb3JDb25kaXRp
b24obGhzLCByaHMsIHRhcmdldCwgY29uZGl0aW9uKQorICAgICAgICBjYXNlIGNvbmRpdGlvbgor
ICAgICAgICB3aGVuIDplcQorICAgICAgICAgICAgJGFzbS5wdXRzICJzdWIgeDMxLCAje2xoc30s
ICN7cmhzfSIKKyAgICAgICAgICAgICRhc20ucHV0cyAic2VxeiAje29wZXJhbmRzWzJdLnJpc2N2
NjRPcGVyYW5kfSwgeDMxIgorICAgICAgICB3aGVuIDpuZXEKKyAgICAgICAgICAgICRhc20ucHV0
cyAic3ViIHgzMSwgI3tsaHN9LCAje3Joc30iCisgICAgICAgICAgICAkYXNtLnB1dHMgInNuZXog
I3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAgICAgICAgd2hlbiA6YQorICAg
ICAgICAgICAgJGFzbS5wdXRzICJzbHR1ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAj
e3Joc30sICN7bGhzfSIKKyAgICAgICAgd2hlbiA6YWVxCisgICAgICAgICAgICAkYXNtLnB1dHMg
InNsdHUgI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sICN7bGhzfSwgI3tyaHN9IgorICAg
ICAgICAgICAgJGFzbS5wdXRzICJ4b3JpICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAj
e29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgMSIKKyAgICAgICAgd2hlbiA6YgorICAgICAg
ICAgICAgJGFzbS5wdXRzICJzbHR1ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje2xo
c30sICN7cmhzfSIKKyAgICAgICAgd2hlbiA6YmVxCisgICAgICAgICAgICAkYXNtLnB1dHMgInNs
dHUgI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sICN7cmhzfSwgI3tsaHN9IgorICAgICAg
ICAgICAgJGFzbS5wdXRzICJ4b3JpICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje29w
ZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgMSIKKyAgICAgICAgd2hlbiA6bHQKKyAgICAgICAg
ICAgICRhc20ucHV0cyAic2x0ICN7dGFyZ2V0LnJpc2N2NjRPcGVyYW5kfSwgI3tsaHN9LCAje3Jo
c30iCisgICAgICAgIHdoZW4gOmx0ZXEKKyAgICAgICAgICAgICRhc20ucHV0cyAic2x0ICN7dGFy
Z2V0LnJpc2N2NjRPcGVyYW5kfSwgI3tyaHN9LCAje2xoc30iCisgICAgICAgICAgICAkYXNtLnB1
dHMgInhvcmkgI3t0YXJnZXQucmlzY3Y2NE9wZXJhbmR9LCAje3RhcmdldC5yaXNjdjY0T3BlcmFu
ZH0sIDEiCisgICAgICAgIHdoZW4gOmd0CisgICAgICAgICAgICAkYXNtLnB1dHMgInNsdCAje3Rh
cmdldC5yaXNjdjY0T3BlcmFuZH0sICN7cmhzfSwgI3tsaHN9IgorICAgICAgICB3aGVuIDpndGVx
CisgICAgICAgICAgICAkYXNtLnB1dHMgInNsdCAje3RhcmdldC5yaXNjdjY0T3BlcmFuZH0sICN7
bGhzfSwgI3tyaHN9IgorICAgICAgICAgICAgJGFzbS5wdXRzICJ4b3JpICN7dGFyZ2V0LnJpc2N2
NjRPcGVyYW5kfSwgI3t0YXJnZXQucmlzY3Y2NE9wZXJhbmR9LCAxIgorICAgICAgICBlbHNlCisg
ICAgICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgY29uZGl0aW9uIgorICAgICAgICBlbmQKKyAg
ICBlbmQKKworICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICB3aGVu
IFtSZWdpc3RlcklELCBSZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAgICAgICBzaWduRXh0ZW5k
UmVnaXN0ZXJGb3JTaXplKG9wZXJhbmRzWzBdLCAneDMwJywgc2l6ZSkKKyAgICAgICAgc2lnbkV4
dGVuZFJlZ2lzdGVyRm9yU2l6ZShvcGVyYW5kc1sxXSwgJ3gzMScsIHNpemUpCisgICAgICAgIHNl
dEZvckNvbmRpdGlvbigneDMwJywgJ3gzMScsIG9wZXJhbmRzWzJdLCBjb25kaXRpb24pCisgICAg
d2hlbiBbUmVnaXN0ZXJJRCwgSW1tZWRpYXRlLCBSZWdpc3RlcklEXQorICAgICAgICBzaWduRXh0
ZW5kUmVnaXN0ZXJGb3JTaXplKG9wZXJhbmRzWzBdLCAneDMwJywgc2l6ZSkKKyAgICAgICAgc2ln
bkV4dGVuZEltbWVkaWF0ZUZvclNpemUob3BlcmFuZHNbMV0sICd4MzEnLCBzaXplKQorICAgICAg
ICBzZXRGb3JDb25kaXRpb24oJ3gzMCcsICd4MzEnLCBvcGVyYW5kc1syXSwgY29uZGl0aW9uKQor
ICAgIHdoZW4gW0FkZHJlc3MsIFJlZ2lzdGVySUQsIFJlZ2lzdGVySURdCisgICAgICAgIGxvYWRB
bmRTaWduRXh0ZW5kQWRkcmVzc0ZvclNpemUob3BlcmFuZHNbMF0sICd4MzAnLCBzaXplKQorICAg
ICAgICBzaWduRXh0ZW5kUmVnaXN0ZXJGb3JTaXplKG9wZXJhbmRzWzFdLCAneDMxJywgc2l6ZSkK
KyAgICAgICAgc2V0Rm9yQ29uZGl0aW9uKCd4MzAnLCAneDMxJywgb3BlcmFuZHNbMl0sIGNvbmRp
dGlvbikKKyAgICB3aGVuIFtBZGRyZXNzLCBJbW1lZGlhdGUsIFJlZ2lzdGVySURdCisgICAgICAg
IGxvYWRBbmRTaWduRXh0ZW5kQWRkcmVzc0ZvclNpemUob3BlcmFuZHNbMF0sICd4MzAnLCBzaXpl
KQorICAgICAgICBzaWduRXh0ZW5kSW1tZWRpYXRlRm9yU2l6ZShvcGVyYW5kc1sxXSwgJ3gzMScs
IHNpemUpCisgICAgICAgIHNldEZvckNvbmRpdGlvbigneDMwJywgJ3gzMScsIG9wZXJhbmRzWzJd
LCBjb25kaXRpb24pCisgICAgZWxzZQorICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3Bl
cmFuZHMob3BlcmFuZHMpCisgICAgZW5kCitlbmQKKworZGVmIHJpc2N2NjRFbWl0VGVzdChvcGVy
YW5kcywgc2l6ZSwgdGVzdCkKKyAgICBkZWYgbG9hZEluc3RydWN0aW9uKHNpemUpCisgICAgICAg
IGNhc2Ugc2l6ZQorICAgICAgICB3aGVuIDpiCisgICAgICAgICAgICAibGJ1IgorICAgICAgICB3
aGVuIDpoCisgICAgICAgICAgICAibGh1IgorICAgICAgICB3aGVuIDp3CisgICAgICAgICAgICAi
bHd1IgorICAgICAgICB3aGVuIDpkCisgICAgICAgICAgICAibGQiCisgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgIHJhaXNlICJVbmtub3duIHNpemUiCisgICAgICAgIGVuZAorICAgIGVuZAorCisg
ICAgZGVmIHRlc3RJbnN0cnVjdGlvbih0ZXN0KQorICAgICAgICBjYXNlIHRlc3QKKyAgICAgICAg
d2hlbiA6egorICAgICAgICAgICAgInNlcXoiCisgICAgICAgIHdoZW4gOm56CisgICAgICAgICAg
ICAic25leiIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmFpc2UgIlVua25vd24gdGVzdCB0
eXBlIgorICAgICAgICBlbmQKKyAgICBlbmQKKworICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBl
cyhvcGVyYW5kcykKKyAgICB3aGVuIFtSZWdpc3RlcklELCBSZWdpc3RlcklELCBSZWdpc3RlcklE
XQorICAgICAgICAkYXNtLnB1dHMgImFuZCB4MzEsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJh
bmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgJGFzbS5wdXRzICIj
e3Rlc3RJbnN0cnVjdGlvbih0ZXN0KX0gI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sIHgz
MSIKKyAgICB3aGVuIFtSZWdpc3RlcklELCBJbW1lZGlhdGUsIFJlZ2lzdGVySURdCisgICAgICAg
IGlmIG9wZXJhbmRzWzFdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAgICRhc20ucHV0
cyAibGkgeDMxLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICRh
c20ucHV0cyAiYW5kIHgzMSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAg
ICAgICAgZWxzZQorICAgICAgICAgICAgJGFzbS5wdXRzICJhbmRpIHgzMSwgI3tvcGVyYW5kc1sw
XS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAg
ICBlbmQKKyAgICAgICAgJGFzbS5wdXRzICIje3Rlc3RJbnN0cnVjdGlvbih0ZXN0KX0gI3tvcGVy
YW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAgICB3aGVuIFtBZGRyZXNzLCBJbW1lZGlh
dGUsIFJlZ2lzdGVySURdCisgICAgICAgIGlmIG9wZXJhbmRzWzBdLnJpc2N2NjRSZXF1aXJlc0xv
YWQKKyAgICAgICAgICAgIG9wZXJhbmRzWzBdLnJpc2N2NjRMb2FkCisgICAgICAgICAgICAkYXNt
LnB1dHMgIiN7bG9hZEluc3RydWN0aW9uKHNpemUpfSB4MzEsIDAoeDMxKSIKKyAgICAgICAgZWxz
ZQorICAgICAgICAgICAgJGFzbS5wdXRzICIje2xvYWRJbnN0cnVjdGlvbihzaXplKX0geDMxLCAj
e29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZW5kCisgICAgICAgIGlmIG9w
ZXJhbmRzWzFdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAgICRhc20ucHV0cyAibGkg
eDMwLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICRhc20ucHV0
cyAiYW5kIHgzMSwgeDMwLCB4MzEiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0
cyAiYW5kaSB4MzEsIHgzMSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAg
IGVuZAorICAgICAgICAkYXNtLnB1dHMgIiN7dGVzdEluc3RydWN0aW9uKHRlc3QpfSAje29wZXJh
bmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgeDMxIgorICAgIGVsc2UKKyAgICAgICAgcmlzY3Y2NFJh
aXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgIGVuZAorZW5kCisKK2RlZiByaXNj
djY0RW1pdExvZ2ljYWxPcGVyYXRpb24ob3BlcmFuZHMsIHNpemUsIG9wZXJhdGlvbikKKyAgICBk
ZWYgbG9hZEluc3RydWN0aW9uKHNpemUpCisgICAgICAgIGNhc2Ugc2l6ZQorICAgICAgICB3aGVu
IDpoCisgICAgICAgICAgICAibGh1IgorICAgICAgICB3aGVuIDp3CisgICAgICAgICAgICAibHd1
IgorICAgICAgICB3aGVuIDpkCisgICAgICAgICAgICAibGQiCisgICAgICAgIGVsc2UKKyAgICAg
ICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCBzaXplIgorICAgICAgICBlbmQKKyAgICBlbmQKKwor
ICAgIGRlZiBzdG9yZUluc3RydWN0aW9uKHNpemUpCisgICAgICAgIGNhc2Ugc2l6ZQorICAgICAg
ICB3aGVuIDpoCisgICAgICAgICAgICAic2giCisgICAgICAgIHdoZW4gOncKKyAgICAgICAgICAg
ICJzdyIKKyAgICAgICAgd2hlbiA6ZAorICAgICAgICAgICAgInNkIgorICAgICAgICBlbHNlCisg
ICAgICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgc2l6ZSIKKyAgICAgICAgZW5kCisgICAgZW5k
CisKKyAgICBkZWYgb3BJbnN0cnVjdGlvbihvcGVyYXRpb24pCisgICAgICAgIGNhc2Ugb3BlcmF0
aW9uCisgICAgICAgIHdoZW4gOmFuZAorICAgICAgICAgICAgImFuZCIKKyAgICAgICAgd2hlbiA6
b3IKKyAgICAgICAgICAgICJvciIKKyAgICAgICAgd2hlbiA6eG9yCisgICAgICAgICAgICAieG9y
IgorICAgICAgICBlbHNlCisgICAgICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgbG9naWNhbCBv
cGVyYXRpb24iCisgICAgICAgIGVuZAorICAgIGVuZAorCisgICAgZGVmIGVtaXRNYXNrRm9yU2l6
ZSh0YXJnZXQsIHNpemUpCisgICAgICAgIGNhc2Ugc2l6ZQorICAgICAgICB3aGVuIDp3CisgICAg
ICAgICAgICAkYXNtLnB1dHMgImxpIHgzMSwgMHhmZmZmZmZmZiIKKyAgICAgICAgICAgICRhc20u
cHV0cyAiYW5kICN7dGFyZ2V0LnJpc2N2NjRPcGVyYW5kfSwgI3t0YXJnZXQucmlzY3Y2NE9wZXJh
bmR9LCB4MzEiCisgICAgICAgIHdoZW4gOmQKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmFp
c2UgIlVuc3VwcG9ydGVkIHNpemUiCisgICAgICAgIGVuZAorICAgIGVuZAorCisgICAgaW5zdHJ1
Y3Rpb24gPSBvcEluc3RydWN0aW9uKG9wZXJhdGlvbikKKworICAgIGNhc2UgcmlzY3Y2NE9wZXJh
bmRUeXBlcyhvcGVyYW5kcykKKyAgICB3aGVuIFtSZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAg
ICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJh
bmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0
T3BlcmFuZH0iCisgICAgICAgIGVtaXRNYXNrRm9yU2l6ZShvcGVyYW5kc1sxXSwgc2l6ZSkKKyAg
ICB3aGVuIFtSZWdpc3RlcklELCBSZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAgICAgICAkYXNt
LnB1dHMgIiN7aW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje29w
ZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0i
CisgICAgICAgIGVtaXRNYXNrRm9yU2l6ZShvcGVyYW5kc1syXSwgc2l6ZSkKKyAgICB3aGVuIFtS
ZWdpc3RlcklELCBJbW1lZGlhdGUsIFJlZ2lzdGVySURdCisgICAgICAgIGlmIG9wZXJhbmRzWzFd
LnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAgICRhc20ucHV0cyAibGkgeDMxLCAje29w
ZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tpbnN0
cnVjdGlvbn0gI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlz
Y3Y2NE9wZXJhbmR9LCB4MzEiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0cyAi
I3tpbnN0cnVjdGlvbn1pICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRz
WzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAg
ICAgIGVuZAorICAgICAgICBlbWl0TWFza0ZvclNpemUob3BlcmFuZHNbMl0sIHNpemUpCisgICAg
d2hlbiBbSW1tZWRpYXRlLCBSZWdpc3RlcklEXQorICAgICAgICBpZiBvcGVyYW5kc1swXS5yaXNj
djY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICAkYXNtLnB1dHMgImxpIHgzMSwgI3tvcGVyYW5k
c1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rp
b259ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEsICN7b3BlcmFuZHNbMV0ucmlz
Y3Y2NE9wZXJhbmR9IgorICAgICAgICBlbHNlCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7aW5z
dHJ1Y3Rpb259aSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5y
aXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICBl
bmQKKyAgICAgICAgZW1pdE1hc2tGb3JTaXplKG9wZXJhbmRzWzFdLCBzaXplKQorICAgIHdoZW4g
W0ltbWVkaWF0ZSwgQWRkcmVzc10KKyAgICAgICAgaWYgb3BlcmFuZHNbMV0ucmlzY3Y2NFJlcXVp
cmVzTG9hZAorICAgICAgICAgICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExvYWQKKyAgICAgICAgICAg
ICRhc20ucHV0cyAiI3tsb2FkSW5zdHJ1Y3Rpb24oc2l6ZSl9IHgzMCwgMCh4MzEpIgorICAgICAg
ICBlbHNlCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7bG9hZEluc3RydWN0aW9uKHNpemUpfSB4
MzAsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICBlbmQKKyAgICAgICAg
JGFzbS5wdXRzICJsaSB4MzEsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAg
ICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259IHgzMCwgeDMxLCB4MzAiCisgICAgICAgIGlmIG9w
ZXJhbmRzWzFdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAgIG9wZXJhbmRzWzFdLnJp
c2N2NjRMb2FkCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7c3RvcmVJbnN0cnVjdGlvbihzaXpl
KX0geDMwLCAwKHgzMSkiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tz
dG9yZUluc3RydWN0aW9uKHNpemUpfSB4MzAsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9
IgorICAgICAgICBlbmQKKyAgICBlbHNlCisgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRP
cGVyYW5kcyhvcGVyYW5kcykKKyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NEVtaXRTaGlmdChv
cGVyYW5kcywgc2l6ZSwgc2hpZnQpCisgICAgcmFpc2UgIlVuc3VwcG9ydGVkIHNpemUiIHVubGVz
cyBbOncsIDpkXS5pbmNsdWRlPyBzaXplCisKKyAgICBkZWYgc2hpZnRJbnN0cnVjdGlvbihzaXpl
LCBzaGlmdCkKKyAgICAgICAgY2FzZSBzaGlmdAorICAgICAgICB3aGVuIDpsbGVmdAorICAgICAg
ICAgICAgc2l6ZSA9PSA6dyA/ICJzbGx3IiA6ICJzbGwiCisgICAgICAgIHdoZW4gOmxyaWdodAor
ICAgICAgICAgICAgc2l6ZSA9PSA6dyA/ICJzcmx3IiA6ICJzcmwiCisgICAgICAgIHdoZW4gOmFy
aWdodAorICAgICAgICAgICAgc2l6ZSA9PSA6dyA/ICJzcmF3IiA6ICJzcmEiCisgICAgICAgIGVs
c2UKKyAgICAgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCBzaGlmdCB0eXBlIgorICAgICAgICBl
bmQKKyAgICBlbmQKKworICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAg
ICB3aGVuIFtSZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAgICAgICAkYXNtLnB1dHMgIiN7c2hp
ZnRJbnN0cnVjdGlvbihzaXplLCBzaGlmdCl9ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9
LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3Bl
cmFuZH0iCisgICAgd2hlbiBbSW1tZWRpYXRlLCBSZWdpc3RlcklEXQorICAgICAgICAkYXNtLnB1
dHMgImxpIHgzMSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICRhc20u
cHV0cyAiI3tzaGlmdEluc3RydWN0aW9uKHNpemUsIHNoaWZ0KX0gI3tvcGVyYW5kc1sxXS5yaXNj
djY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEiCisgICAgZWxz
ZQorICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAg
ZW5kCisKKyAgICBpZiBzaXplID09IDp3CisgICAgICAgICRhc20ucHV0cyAibGkgeDMxLCAweGZm
ZmZmZmZmIgorICAgICAgICAkYXNtLnB1dHMgImFuZCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVy
YW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAgICBlbmQKK2VuZAor
CitkZWYgcmlzY3Y2NEVtaXRGUExvYWQob3BlcmFuZHMsIGxvYWRJbnN0cnVjdGlvbikKKyAgICBj
YXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgd2hlbiBbQWRkcmVzcywgRlBS
ZWdpc3RlcklEXQorICAgICAgICBpZiBvcGVyYW5kc1swXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisg
ICAgICAgICAgICBvcGVyYW5kc1swXS5yaXNjdjY0TG9hZAorICAgICAgICAgICAgJGFzbS5wdXRz
ICIje2xvYWRJbnN0cnVjdGlvbn0gI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIDAoeDMx
KSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgJGFzbS5wdXRzICIje2xvYWRJbnN0cnVjdGlv
bn0gI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9w
ZXJhbmR9IgorICAgICAgICBlbmQKKyAgICB3aGVuIFtCYXNlSW5kZXgsIEZQUmVnaXN0ZXJJRF0K
KyAgICAgICAgb3BlcmFuZHNbMF0ucmlzY3Y2NExvYWQKKyAgICAgICAgJGFzbS5wdXRzICIje2xv
YWRJbnN0cnVjdGlvbn0gI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIDAoeDMxKSIKKyAg
ICBlbHNlCisgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykK
KyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NEVtaXRGUFN0b3JlKG9wZXJhbmRzLCBzdG9yZUlu
c3RydWN0aW9uKQorICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICB3
aGVuIFtGUFJlZ2lzdGVySUQsIEFkZHJlc3NdCisgICAgICAgIGlmIG9wZXJhbmRzWzFdLnJpc2N2
NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAgIG9wZXJhbmRzWzFdLnJpc2N2NjRMb2FkCisgICAg
ICAgICAgICAkYXNtLnB1dHMgIiN7c3RvcmVJbnN0cnVjdGlvbn0gI3tvcGVyYW5kc1swXS5yaXNj
djY0T3BlcmFuZH0sIDAoeDMxKSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgJGFzbS5wdXRz
ICIje3N0b3JlSW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAje29w
ZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZW5kCisgICAgd2hlbiBbRlBSZWdp
c3RlcklELCBCYXNlSW5kZXhdCisgICAgICAgIG9wZXJhbmRzWzFdLnJpc2N2NjRMb2FkCisgICAg
ICAgICRhc20ucHV0cyAiI3tzdG9yZUluc3RydWN0aW9ufSAje29wZXJhbmRzWzBdLnJpc2N2NjRP
cGVyYW5kfSwgMCh4MzEpIgorICAgIGVsc2UKKyAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hl
ZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgIGVuZAorZW5kCisKK2RlZiByaXNjdjY0RW1pdEZQT3Bl
cmF0aW9uKG9wZXJhbmRzLCBvcGVyYXRpb24pCisgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVz
KG9wZXJhbmRzKQorICAgIHdoZW4gW0ZQUmVnaXN0ZXJJRCwgRlBSZWdpc3RlcklELCBGUFJlZ2lz
dGVySURdCisgICAgICAgICRhc20ucHV0cyAiI3tvcGVyYXRpb259ICN7b3BlcmFuZHNbMl0ucmlz
Y3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sx
XS5yaXNjdjY0T3BlcmFuZH0iCisgICAgd2hlbiBbRlBSZWdpc3RlcklELCBGUFJlZ2lzdGVySURd
CisgICAgICAgICRhc20ucHV0cyAiI3tvcGVyYXRpb259ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9w
ZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICBlbHNlCisgICAgICAg
IHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICBlbmQKK2VuZAor
CitkZWYgcmlzY3Y2NEVtaXRGUENvbXBhcmUob3BlcmFuZHMsIHByZWNpc2lvbiwgY29uZGl0aW9u
KQorICAgIGRlZiBzdWZmaXhGb3JQcmVjaXNpb24ocHJlY2lzaW9uKQorICAgICAgICBjYXNlIHBy
ZWNpc2lvbgorICAgICAgICB3aGVuIDpzCisgICAgICAgICAgICAicyIKKyAgICAgICAgd2hlbiA6
ZAorICAgICAgICAgICAgImQiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJhaXNlICJVbnN1
cHBvcnRlZCBwcmVjaXNpb24iCisgICAgICAgIGVuZAorICAgIGVuZAorCisgICAgZGVmIGluc3Ry
dWN0aW9uRm9yQ29uZGl0aW9uKGNvbmRpdGlvbiwgcHJlY2lzaW9uKQorICAgICAgICBzdWZmaXgg
PSBzdWZmaXhGb3JQcmVjaXNpb24ocHJlY2lzaW9uKQorICAgICAgICBjYXNlIGNvbmRpdGlvbgor
ICAgICAgICB3aGVuIDplcSwgOm5lcQorICAgICAgICAgICAgImZlcS4je3N1ZmZpeH0iCisgICAg
ICAgIHdoZW4gOmx0LCA6Z3QKKyAgICAgICAgICAgICJmbHQuI3tzdWZmaXh9IgorICAgICAgICB3
aGVuIDpsdGVxLCA6Z3RlcQorICAgICAgICAgICAgImZsZS4je3N1ZmZpeH0iCisgICAgICAgIGVs
c2UKKyAgICAgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCBjb25kaXRpb24iCisgICAgICAgIGVu
ZAorICAgIGVuZAorCisgICAgZGVmIHNldEZvckNvbmRpdGlvbihvcGVyYW5kcywgcHJlY2lzaW9u
LCBjb25kaXRpb24pCisgICAgICAgIGluc3RydWN0aW9uID0gaW5zdHJ1Y3Rpb25Gb3JDb25kaXRp
b24oY29uZGl0aW9uLCBwcmVjaXNpb24pCisgICAgICAgIGNhc2UgY29uZGl0aW9uCisgICAgICAg
IHdoZW4gOmVxCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259ICN7b3BlcmFu
ZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tv
cGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIHdoZW4gOm5lcQorICAgICAgICAg
ICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5k
fSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9w
ZXJhbmR9IgorICAgICAgICAgICAgJGFzbS5wdXRzICJ4b3JpICN7b3BlcmFuZHNbMl0ucmlzY3Y2
NE9wZXJhbmR9LCAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgMSIKKyAgICAgICAgd2hl
biA6bHQsIDpsdGVxCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259ICN7b3Bl
cmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwg
I3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIHdoZW4gOmd0LCA6Z3RlcQor
ICAgICAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSAje29wZXJhbmRzWzJdLnJpc2N2
NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0u
cmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICBlbHNlCisgICAgICAgICAgICByYWlzZSAiVW5zdXBw
b3J0ZWQgY29uZGl0aW9uIgorICAgICAgICBlbmQKKyAgICBlbmQKKworICAgIGNhc2UgcmlzY3Y2
NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICB3aGVuIFtGUFJlZ2lzdGVySUQsIEZQUmVnaXN0
ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAgICAgc2V0Rm9yQ29uZGl0aW9uKG9wZXJhbmRzLCBwcmVj
aXNpb24sIGNvbmRpdGlvbikKKyAgICBlbHNlCisgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNo
ZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NEVtaXRGUEJp
dHdpc2VPcGVyYXRpb24ob3BlcmFuZHMsIHByZWNpc2lvbiwgb3BlcmF0aW9uKQorICAgIGRlZiBz
dWZmaXhGb3JQcmVjaXNpb24ocHJlY2lzaW9uKQorICAgICAgICBjYXNlIHByZWNpc2lvbgorICAg
ICAgICB3aGVuIDpzCisgICAgICAgICAgICAidyIKKyAgICAgICAgd2hlbiA6ZAorICAgICAgICAg
ICAgImQiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCBwcmVj
aXNpb24iCisgICAgICAgIGVuZAorICAgIGVuZAorCisgICAgc3VmZml4ID0gc3VmZml4Rm9yUHJl
Y2lzaW9uKHByZWNpc2lvbikKKworICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5k
cykKKyAgICB3aGVuIFtGUFJlZ2lzdGVySUQsIEZQUmVnaXN0ZXJJRF0KKyAgICAgICAgJGFzbS5w
dXRzICJmbXYueC4je3N1ZmZpeH0geDMwLCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIK
KyAgICAgICAgJGFzbS5wdXRzICJmbXYueC4je3N1ZmZpeH0geDMxLCAje29wZXJhbmRzWzFdLnJp
c2N2NjRPcGVyYW5kfSIKKyAgICAgICAgJGFzbS5wdXRzICIje29wZXJhdGlvbn0geDMxLCB4MzAs
IHgzMSIKKyAgICAgICAgJGFzbS5wdXRzICJmbXYuI3tzdWZmaXh9LnggI3tvcGVyYW5kc1sxXS5y
aXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAgICBlbHNlCisgICAgICAgIHJpc2N2NjRSYWlzZU1pc21h
dGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NEVtaXRG
UENvcHkob3BlcmFuZHMsIHByZWNpc2lvbikKKyAgICBkZWYgc3VmZml4Rm9yUHJlY2lzaW9uKHBy
ZWNpc2lvbikKKyAgICAgICAgY2FzZSBwcmVjaXNpb24KKyAgICAgICAgd2hlbiA6cworICAgICAg
ICAgICAgInciCisgICAgICAgIHdoZW4gOmQKKyAgICAgICAgICAgICJkIgorICAgICAgICBlbHNl
CisgICAgICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgcHJlY2lzaW9uIgorICAgICAgICBlbmQK
KyAgICBlbmQKKworICAgIHN1ZmZpeCA9IHN1ZmZpeEZvclByZWNpc2lvbihwcmVjaXNpb24pCisK
KyAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgd2hlbiBbUmVnaXN0
ZXJJRCwgRlBSZWdpc3RlcklEXQorICAgICAgICAkYXNtLnB1dHMgImZtdi4je3N1ZmZpeH0ueCAj
e29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFu
ZH0iCisgICAgd2hlbiBbRlBSZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAgICAgICAkYXNtLnB1
dHMgImZtdi54LiN7c3VmZml4fSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVy
YW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgZWxzZQorICAgICAgICByaXNjdjY0UmFpc2VN
aXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgZW5kCitlbmQKKworZGVmIHJpc2N2NjRF
bWl0RlBDb25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3BlcmFuZHMsIHByZWNpc2lvbiwgdGVzdCkK
KyAgICBkZWYgc3VmZml4Rm9yUHJlY2lzaW9uKHByZWNpc2lvbikKKyAgICAgICAgY2FzZSBwcmVj
aXNpb24KKyAgICAgICAgd2hlbiA6cworICAgICAgICAgICAgInMiCisgICAgICAgIHdoZW4gOmQK
KyAgICAgICAgICAgICJkIgorICAgICAgICBlbHNlCisgICAgICAgICAgICByYWlzZSAiVW5zdXBw
b3J0ZWQgcHJlY2lzaW9uIgorICAgICAgICBlbmQKKyAgICBlbmQKKworICAgIGRlZiBlbWl0QnJh
bmNoRm9yVW5vcmRlcmVkKGxocywgcmhzLCBsYWJlbCwgcHJlY2lzaW9uKQorICAgICAgICBzdWZm
aXggPSBzdWZmaXhGb3JQcmVjaXNpb24ocHJlY2lzaW9uKQorCisgICAgICAgICRhc20ucHV0cyAi
ZmNsYXNzLmQgeDMwLCAje2xocy5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICRhc20ucHV0cyAi
ZmNsYXNzLmQgeDMxLCAje3Jocy5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICRhc20ucHV0cyAi
b3IgeDMxLCB4MzAsIHgzMSIKKyAgICAgICAgJGFzbS5wdXRzICJsaSB4MzAsIDB4MzAwIgorICAg
ICAgICAkYXNtLnB1dHMgImFuZCB4MzEsIHgzMSwgeDMwIgorICAgICAgICAkYXNtLnB1dHMgImJu
ZXogeDMxLCAje2xhYmVsLmFzbUxhYmVsfSIKKyAgICBlbmQKKworICAgIGRlZiBlbWl0QnJhbmNo
Rm9yVGVzdCh0ZXN0LCBsaHMsIHJocywgYnJhbmNoLCBsYWJlbCwgcHJlY2lzaW9uKQorICAgICAg
ICBzdWZmaXggPSBzdWZmaXhGb3JQcmVjaXNpb24ocHJlY2lzaW9uKQorCisgICAgICAgICRhc20u
cHV0cyAiI3t0ZXN0fS4je3N1ZmZpeH0geDMxLCAje2xocy5yaXNjdjY0T3BlcmFuZH0sICN7cmhz
LnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgJGFzbS5wdXRzICIje2JyYW5jaH0geDMxLCAje2xh
YmVsLmFzbUxhYmVsfSIKKyAgICBlbmQKKworICAgIHN1ZmZpeCA9IHN1ZmZpeEZvclByZWNpc2lv
bihwcmVjaXNpb24pCisKKyAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisg
ICAgd2hlbiBbRlBSZWdpc3RlcklELCBGUFJlZ2lzdGVySUQsIExvY2FsTGFiZWxSZWZlcmVuY2Vd
CisgICAgICAgIGNhc2UgdGVzdAorICAgICAgICB3aGVuIDplcQorICAgICAgICAgICAgZW1pdEJy
YW5jaEZvclRlc3QoImZlcSIsIG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSwgImJuZXoiLCBvcGVy
YW5kc1syXSwgcHJlY2lzaW9uKQorICAgICAgICB3aGVuIDpuZXEKKyAgICAgICAgICAgIGVtaXRC
cmFuY2hGb3JUZXN0KCJmZXEiLCBvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV0sICJiZXF6Iiwgb3Bl
cmFuZHNbMl0sIHByZWNpc2lvbikKKyAgICAgICAgd2hlbiA6bHQKKyAgICAgICAgICAgIGVtaXRC
cmFuY2hGb3JUZXN0KCJmbHQiLCBvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV0sICJibmV6Iiwgb3Bl
cmFuZHNbMl0sIHByZWNpc2lvbikKKyAgICAgICAgd2hlbiA6bHRlcQorICAgICAgICAgICAgZW1p
dEJyYW5jaEZvclRlc3QoImZsZSIsIG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSwgImJuZXoiLCBv
cGVyYW5kc1syXSwgcHJlY2lzaW9uKQorICAgICAgICB3aGVuIDpndAorICAgICAgICAgICAgZW1p
dEJyYW5jaEZvclRlc3QoImZsdCIsIG9wZXJhbmRzWzFdLCBvcGVyYW5kc1swXSwgImJuZXoiLCBv
cGVyYW5kc1syXSwgcHJlY2lzaW9uKQorICAgICAgICB3aGVuIDpndGVxCisgICAgICAgICAgICBl
bWl0QnJhbmNoRm9yVGVzdCgiZmxlIiwgb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzBdLCAiYm5leiIs
IG9wZXJhbmRzWzJdLCBwcmVjaXNpb24pCisgICAgICAgIHdoZW4gOmVxdW4KKyAgICAgICAgICAg
IGVtaXRCcmFuY2hGb3JVbm9yZGVyZWQob3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdLCBvcGVyYW5k
c1syXSwgcHJlY2lzaW9uKQorICAgICAgICAgICAgZW1pdEJyYW5jaEZvclRlc3QoImZlcSIsIG9w
ZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSwgImJuZXoiLCBvcGVyYW5kc1syXSwgcHJlY2lzaW9uKQor
ICAgICAgICB3aGVuIDpuZXF1bgorICAgICAgICAgICAgZW1pdEJyYW5jaEZvclVub3JkZXJlZChv
cGVyYW5kc1swXSwgb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzJdLCBwcmVjaXNpb24pCisgICAgICAg
ICAgICBlbWl0QnJhbmNoRm9yVGVzdCgiZmVxIiwgb3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdLCAi
YmVxeiIsIG9wZXJhbmRzWzJdLCBwcmVjaXNpb24pCisgICAgICAgIHdoZW4gOmx0dW4KKyAgICAg
ICAgICAgIGVtaXRCcmFuY2hGb3JVbm9yZGVyZWQob3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdLCBv
cGVyYW5kc1syXSwgcHJlY2lzaW9uKQorICAgICAgICAgICAgZW1pdEJyYW5jaEZvclRlc3QoImZs
dCIsIG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSwgImJuZXoiLCBvcGVyYW5kc1syXSwgcHJlY2lz
aW9uKQorICAgICAgICB3aGVuIDpsdGVxdW4KKyAgICAgICAgICAgIGVtaXRCcmFuY2hGb3JVbm9y
ZGVyZWQob3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdLCBvcGVyYW5kc1syXSwgcHJlY2lzaW9uKQor
ICAgICAgICAgICAgZW1pdEJyYW5jaEZvclRlc3QoImZsZSIsIG9wZXJhbmRzWzBdLCBvcGVyYW5k
c1sxXSwgImJuZXoiLCBvcGVyYW5kc1syXSwgcHJlY2lzaW9uKQorICAgICAgICB3aGVuIDpndHVu
CisgICAgICAgICAgICBlbWl0QnJhbmNoRm9yVW5vcmRlcmVkKG9wZXJhbmRzWzBdLCBvcGVyYW5k
c1sxXSwgb3BlcmFuZHNbMl0sIHByZWNpc2lvbikKKyAgICAgICAgICAgIGVtaXRCcmFuY2hGb3JU
ZXN0KCJmbHQiLCBvcGVyYW5kc1sxXSwgb3BlcmFuZHNbMF0sICJibmV6Iiwgb3BlcmFuZHNbMl0s
IHByZWNpc2lvbikKKyAgICAgICAgd2hlbiA6Z3RlcXVuCisgICAgICAgICAgICBlbWl0QnJhbmNo
Rm9yVW5vcmRlcmVkKG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSwgb3BlcmFuZHNbMl0sIHByZWNp
c2lvbikKKyAgICAgICAgICAgIGVtaXRCcmFuY2hGb3JUZXN0KCJmbGUiLCBvcGVyYW5kc1sxXSwg
b3BlcmFuZHNbMF0sICJibmV6Iiwgb3BlcmFuZHNbMl0sIHByZWNpc2lvbikKKyAgICAgICAgZWxz
ZQorICAgICAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIHRlc3QiCisgICAgICAgIGVuZAorICAg
IGVsc2UKKyAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQor
ICAgIGVuZAorZW5kCisKK2RlZiByaXNjdjY0RW1pdEZQUm91bmRPcGVyYXRpb24ob3BlcmFuZHMs
IHByZWNpc2lvbiwgcm91bmRpbmdNb2RlKQorICAgIGRlZiBpbnRTdWZmaXhGb3JQcmVjaXNpb24o
cHJlY2lzaW9uKQorICAgICAgICBjYXNlIHByZWNpc2lvbgorICAgICAgICB3aGVuIDpzCisgICAg
ICAgICAgICAidyIKKyAgICAgICAgd2hlbiA6ZAorICAgICAgICAgICAgImwiCisgICAgICAgIGVs
c2UKKyAgICAgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCBwcmVjaXNpb24iCisgICAgICAgIGVu
ZAorICAgIGVuZAorCisgICAgZGVmIGZwU3VmZml4Rm9yUHJlY2lzaW9uKHByZWNpc2lvbikKKyAg
ICAgICAgY2FzZSBwcmVjaXNpb24KKyAgICAgICAgd2hlbiA6cworICAgICAgICAgICAgInMiCisg
ICAgICAgIHdoZW4gOmQKKyAgICAgICAgICAgICJkIgorICAgICAgICBlbHNlCisgICAgICAgICAg
ICByYWlzZSAiVW5zdXBwb3J0ZWQgcHJlY2lzaW9uIgorICAgICAgICBlbmQKKyAgICBlbmQKKwor
ICAgIGludFN1ZmZpeCA9IGludFN1ZmZpeEZvclByZWNpc2lvbihwcmVjaXNpb24pCisgICAgZnBT
dWZmaXggPSBmcFN1ZmZpeEZvclByZWNpc2lvbihwcmVjaXNpb24pCisKKyAgICBjYXNlIHJpc2N2
NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgd2hlbiBbRlBSZWdpc3RlcklELCBGUFJlZ2lz
dGVySURdCisgICAgICAgICRhc20ucHV0cyAiZmN2dC4je2ludFN1ZmZpeH0uI3tmcFN1ZmZpeH0g
eDMxLCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tyb3VuZGluZ01vZGV9IgorICAg
ICAgICAkYXNtLnB1dHMgImZjdnQuI3tmcFN1ZmZpeH0uI3tpbnRTdWZmaXh9ICN7b3BlcmFuZHNb
MV0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEsICN7cm91bmRpbmdNb2RlfSIKKyAgICBlbHNlCisgICAg
ICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICBlbmQKK2Vu
ZAorCitkZWYgcmlzY3Y2NEVtaXRGUENvbnZlcnRPcGVyYXRpb24ob3BlcmFuZHMsIGZyb21UeXBl
LCB0b1R5cGUsIHJvdW5kaW5nTW9kZSkKKyAgICBkZWYgaW50U3VmZml4Rm9yVHlwZSh0eXBlKQor
ICAgICAgICBjYXNlIHR5cGUKKyAgICAgICAgd2hlbiA6dworICAgICAgICAgICAgInciCisgICAg
ICAgIHdoZW4gOnd1CisgICAgICAgICAgICAid3UiCisgICAgICAgIHdoZW4gOmwKKyAgICAgICAg
ICAgICJsIgorICAgICAgICB3aGVuIDpsdQorICAgICAgICAgICAgImx1IgorICAgICAgICBlbHNl
CisgICAgICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgcHJlY2lzaW9uIgorICAgICAgICBlbmQK
KyAgICBlbmQKKworICAgIGRlZiBmcFN1ZmZpeEZvclR5cGUodHlwZSkKKyAgICAgICAgY2FzZSB0
eXBlCisgICAgICAgIHdoZW4gOnMKKyAgICAgICAgICAgICJzIgorICAgICAgICB3aGVuIDpkCisg
ICAgICAgICAgICAiZCIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmFpc2UgIlVuc3VwcG9y
dGVkIHByZWNpc2lvbiIKKyAgICAgICAgZW5kCisgICAgZW5kCisKKyAgICBjYXNlIHJpc2N2NjRP
cGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgd2hlbiBbRlBSZWdpc3RlcklELCBSZWdpc3RlcklE
XQorICAgICAgICBmcFN1ZmZpeCA9IGZwU3VmZml4Rm9yVHlwZShmcm9tVHlwZSkKKyAgICAgICAg
aW50U3VmZml4ID0gaW50U3VmZml4Rm9yVHlwZSh0b1R5cGUpCisKKyAgICAgICAgJGFzbS5wdXRz
ICJmY3Z0LiN7aW50U3VmZml4fS4je2ZwU3VmZml4fSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVy
YW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sICN7cm91bmRpbmdNb2RlfSIKKyAg
ICB3aGVuIFtSZWdpc3RlcklELCBGUFJlZ2lzdGVySURdCisgICAgICAgIHJhaXNlICJVbnN1cHBv
cnRlZCByb3VuZGluZyBtb2RlIiB1bmxlc3Mgcm91bmRpbmdNb2RlID09IDpub25lCisgICAgICAg
IGludFN1ZmZpeCA9IGludFN1ZmZpeEZvclR5cGUoZnJvbVR5cGUpCisgICAgICAgIGZwU3VmZml4
ID0gZnBTdWZmaXhGb3JUeXBlKHRvVHlwZSkKKworICAgICAgICAkYXNtLnB1dHMgImZjdnQuI3tm
cFN1ZmZpeH0uI3tpbnRTdWZmaXh9ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29w
ZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICB3aGVuIFtGUFJlZ2lzdGVySUQsIEZQUmVn
aXN0ZXJJRF0KKyAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIHJvdW5kaW5nIG1vZGUiIHVubGVz
cyByb3VuZGluZ01vZGUgPT0gOm5vbmUKKyAgICAgICAgZnBGcm9tU3VmZml4ID0gZnBTdWZmaXhG
b3JUeXBlKGZyb21UeXBlKQorICAgICAgICBmcFRvU3VmZml4ID0gZnBTdWZmaXhGb3JUeXBlKHRv
VHlwZSkKKworICAgICAgICAkYXNtLnB1dHMgImZjdnQuI3tmcFRvU3VmZml4fS4je2ZwRnJvbVN1
ZmZpeH0gI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2
NE9wZXJhbmR9IgorICAgIGVsc2UKKyAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJh
bmRzKG9wZXJhbmRzKQorICAgIGVuZAorZW5kCisKK2NsYXNzIFJlZ2lzdGVySUQKKyAgICBkZWYg
cmlzY3Y2NE9wZXJhbmQKKyAgICAgICAgY2FzZSBAbmFtZQorICAgICAgICB3aGVuICd0MCcsICdh
MCcsICd3YTAnLCAncjAnCisgICAgICAgICAgICAneDEwJworICAgICAgICB3aGVuICd0MScsICdh
MScsICd3YTEnLCAncjEnCisgICAgICAgICAgICAneDExJworICAgICAgICB3aGVuICd0MicsICdh
MicsICd3YTInCisgICAgICAgICAgICAneDEyJworICAgICAgICB3aGVuICd0MycsICdhMycsICd3
YTMnCisgICAgICAgICAgICAneDEzJworICAgICAgICB3aGVuICd0NCcsICdhNCcsICd3YTQnCisg
ICAgICAgICAgICAneDE0JworICAgICAgICB3aGVuICd0NScsICdhNScsICd3YTUnCisgICAgICAg
ICAgICAneDE1JworICAgICAgICB3aGVuICd0NicsICdhNicsICd3YTYnCisgICAgICAgICAgICAn
eDE2JworICAgICAgICB3aGVuICd0NycsICdhNycsICd3YTcnCisgICAgICAgICAgICAneDE3Jwor
ICAgICAgICB3aGVuICd0OCcKKyAgICAgICAgICAgICd4NScKKyAgICAgICAgd2hlbiAndDknLCAn
d3MwJworICAgICAgICAgICAgJ3g2JworICAgICAgICB3aGVuICd0MTAnLCAnd3MxJworICAgICAg
ICAgICAgJ3g3JworICAgICAgICB3aGVuICd0MTEnCisgICAgICAgICAgICAneDI4JworICAgICAg
ICB3aGVuICd0MTInCisgICAgICAgICAgICAneDI5JworICAgICAgICB3aGVuICd0MTMnCisgICAg
ICAgICAgICAneDMwJworICAgICAgICB3aGVuICd0MTQnCisgICAgICAgICAgICAneDMxJworICAg
ICAgICB3aGVuICdjc3IwJworICAgICAgICAgICAgJ3g5JworICAgICAgICB3aGVuICdjc3IxJwor
ICAgICAgICAgICAgJ3gxOCcKKyAgICAgICAgd2hlbiAnY3NyMicKKyAgICAgICAgICAgICd4MTkn
CisgICAgICAgIHdoZW4gJ2NzcjMnCisgICAgICAgICAgICAneDIwJworICAgICAgICB3aGVuICdj
c3I0JworICAgICAgICAgICAgJ3gyMScKKyAgICAgICAgd2hlbiAnY3NyNScKKyAgICAgICAgICAg
ICd4MjInCisgICAgICAgIHdoZW4gJ2NzcjYnCisgICAgICAgICAgICAneDIzJworICAgICAgICB3
aGVuICdjc3I3JworICAgICAgICAgICAgJ3gyNCcKKyAgICAgICAgd2hlbiAnY3NyOCcKKyAgICAg
ICAgICAgICd4MjUnCisgICAgICAgIHdoZW4gJ2NzcjknCisgICAgICAgICAgICAneDI2JworICAg
ICAgICB3aGVuICdjc3IxMCcKKyAgICAgICAgICAgICd4MjcnCisgICAgICAgIHdoZW4gJ2xyJwor
ICAgICAgICAgICAgJ3JhJworICAgICAgICB3aGVuICdzcCcKKyAgICAgICAgICAgICdzcCcKKyAg
ICAgICAgd2hlbiAnY2ZyJworICAgICAgICAgICAgJ2ZwJworICAgICAgICBlbHNlCisgICAgICAg
ICAgICByYWlzZSAiQmFkIHJlZ2lzdGVyIG5hbWUgI3tAbmFtZX0gYXQgI3tjb2RlT3JpZ2luU3Ry
aW5nfSIKKyAgICAgICAgZW5kCisgICAgZW5kCitlbmQKKworY2xhc3MgRlBSZWdpc3RlcklECisg
ICAgZGVmIHJpc2N2NjRPcGVyYW5kCisgICAgICAgIGNhc2UgQG5hbWUKKyAgICAgICAgd2hlbiAn
ZnQwJworICAgICAgICAgICAgJ2YwJworICAgICAgICB3aGVuICdmdDEnCisgICAgICAgICAgICAn
ZjEnCisgICAgICAgIHdoZW4gJ2Z0MicKKyAgICAgICAgICAgICdmMicKKyAgICAgICAgd2hlbiAn
ZnQzJworICAgICAgICAgICAgJ2YzJworICAgICAgICB3aGVuICdmdDQnCisgICAgICAgICAgICAn
ZjQnCisgICAgICAgIHdoZW4gJ2Z0NScKKyAgICAgICAgICAgICdmNScKKyAgICAgICAgd2hlbiAn
ZnQ2JworICAgICAgICAgICAgJ2Y2JworICAgICAgICB3aGVuICdmdDcnCisgICAgICAgICAgICAn
ZjcnCisgICAgICAgIHdoZW4gJ2NzZnIwJworICAgICAgICAgICAgJ2Y4JworICAgICAgICB3aGVu
ICdjc2ZyMScKKyAgICAgICAgICAgICdmOScKKyAgICAgICAgd2hlbiAnZmEwJywgJ3dmYTAnCisg
ICAgICAgICAgICAnZjEwJworICAgICAgICB3aGVuICdmYTEnLCAnd2ZhMScKKyAgICAgICAgICAg
ICdmMTEnCisgICAgICAgIHdoZW4gJ2ZhMicsICd3ZmEyJworICAgICAgICAgICAgJ2YxMicKKyAg
ICAgICAgd2hlbiAnZmEzJywgJ3dmYTMnCisgICAgICAgICAgICAnZjEzJworICAgICAgICB3aGVu
ICdmYTQnLCAnd2ZhNCcKKyAgICAgICAgICAgICdmMTQnCisgICAgICAgIHdoZW4gJ2ZhNScsICd3
ZmE1JworICAgICAgICAgICAgJ2YxNScKKyAgICAgICAgd2hlbiAnZmE2JywgJ3dmYTYnCisgICAg
ICAgICAgICAnZjE2JworICAgICAgICB3aGVuICdmYTcnLCAnd2ZhNycKKyAgICAgICAgICAgICdm
MTcnCisgICAgICAgIHdoZW4gJ2NzZnIyJworICAgICAgICAgICAgJ2YxOCcKKyAgICAgICAgd2hl
biAnY3NmcjMnCisgICAgICAgICAgICAnZjE5JworICAgICAgICB3aGVuICdjc2ZyNCcKKyAgICAg
ICAgICAgICdmMjAnCisgICAgICAgIHdoZW4gJ2NzZnI1JworICAgICAgICAgICAgJ2YyMScKKyAg
ICAgICAgd2hlbiAnY3NmcjYnCisgICAgICAgICAgICAnZjIyJworICAgICAgICB3aGVuICdjc2Zy
NycKKyAgICAgICAgICAgICdmMjMnCisgICAgICAgIHdoZW4gJ2NzZnI4JworICAgICAgICAgICAg
J2YyNCcKKyAgICAgICAgd2hlbiAnY3NmcjknCisgICAgICAgICAgICAnZjI1JworICAgICAgICB3
aGVuICdjc2ZyMTAnCisgICAgICAgICAgICAnZjI2JworICAgICAgICB3aGVuICdjc2ZyMTEnCisg
ICAgICAgICAgICAnZjI3JworICAgICAgICB3aGVuICdmdDgnCisgICAgICAgICAgICAnZjI4Jwor
ICAgICAgICB3aGVuICdmdDknCisgICAgICAgICAgICAnZjI5JworICAgICAgICB3aGVuICdmdDEw
JworICAgICAgICAgICAgJ2YzMCcKKyAgICAgICAgd2hlbiAnZnQxMScKKyAgICAgICAgICAgICdm
MzEnCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJhaXNlICJCYWQgcmVnaXN0ZXIgbmFtZSAj
e0BuYW1lfSBhdCAje2NvZGVPcmlnaW5TdHJpbmd9IgorICAgICAgICBlbmQKKyAgICBlbmQKK2Vu
ZAorCitjbGFzcyBJbW1lZGlhdGUKKyAgICBkZWYgcmlzY3Y2NE9wZXJhbmQKKyAgICAgICAgIiN7
dmFsdWV9IgorICAgIGVuZAorCisgICAgZGVmIHJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAg
dmFsdWUgPiAweDdmZiBvciB2YWx1ZSA8IC0weDgwMAorICAgIGVuZAorCisgICAgZGVmIHJpc2N2
NjRMb2FkCisgICAgICAgICRhc20ucHV0cyAibGkgeDMxLCAje3ZhbHVlfSIKKyAgICBlbmQKK2Vu
ZAorCitjbGFzcyBBZGRyZXNzCisgICAgZGVmIHJpc2N2NjRPcGVyYW5kCisgICAgICAgIHJhaXNl
ICJJbnZhbGlkIG9mZnNldCAje29mZnNldC52YWx1ZX0gYXQgI3tjb2RlT3JpZ2luU3RyaW5nfSIg
aWYgb2Zmc2V0LnZhbHVlID4gMHg3ZmYgb3Igb2Zmc2V0LnZhbHVlIDwgLTB4ODAwCisgICAgICAg
ICIje29mZnNldC52YWx1ZX0oI3tiYXNlLnJpc2N2NjRPcGVyYW5kfSkiCisgICAgZW5kCisKKyAg
ICBkZWYgcmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICBvZmZzZXQudmFsdWUgPiAweDdmZiBv
ciBvZmZzZXQudmFsdWUgPCAtMHg4MDAKKyAgICBlbmQKKworICAgIGRlZiByaXNjdjY0TG9hZAor
ICAgICAgICAkYXNtLnB1dHMgImxpIHgzMSwgI3tvZmZzZXQudmFsdWV9IgorICAgICAgICAkYXNt
LnB1dHMgImFkZCB4MzEsICN7YmFzZS5yaXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAgICBlbmQKK2Vu
ZAorCitjbGFzcyBCYXNlSW5kZXgKKyAgICBkZWYgcmlzY3Y2NExvYWQKKyAgICAgICAgY2FzZSBy
aXNjdjY0T3BlcmFuZFR5cGVzKFsgYmFzZSwgaW5kZXggXSkKKyAgICAgICAgd2hlbiBbUmVnaXN0
ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAgICAgICAgICRhc20ucHV0cyAic2xsaSB4MzEsICN7aW5k
ZXgucmlzY3Y2NE9wZXJhbmR9LCAje3NjYWxlU2hpZnR9IgorICAgICAgICAgICAgJGFzbS5wdXRz
ICJhZGQgeDMxLCAje2Jhc2UucmlzY3Y2NE9wZXJhbmR9LCB4MzEiCisgICAgICAgICAgICBpZiBv
ZmZzZXQudmFsdWUgIT0gMAorICAgICAgICAgICAgICAgICRhc20ucHV0cyAibGkgeDMwLCAje29m
ZnNldC52YWx1ZX0iCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJhZGQgeDMxLCB4MzEsIHgz
MCIKKyAgICAgICAgICAgIGVuZAorICAgICAgICBlbHNlCisgICAgICAgICAgICByaXNjdjY0UmFp
c2VNaXNtYXRjaGVkT3BlcmFuZHMoW2Jhc2UsIGluZGV4XSkKKyAgICAgICAgZW5kCisgICAgZW5k
CitlbmQKKworY2xhc3MgSW5zdHJ1Y3Rpb24KKyAgICBkZWYgbG93ZXJSSVNDVjY0CisgICAgICAg
IGNhc2Ugb3Bjb2RlCisgICAgICAgIHdoZW4gImFkZGkiCisgICAgICAgICAgICBjYXNlIHJpc2N2
NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgICAgICAgICB3aGVuIFtSZWdpc3RlcklELCBS
ZWdpc3RlcklEXQorICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYWRkdyAje29wZXJhbmRzWzFd
LnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFu
ZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAibGkgeDMx
LCAweGZmZmZmZmZmIgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYW5kICN7b3BlcmFuZHNb
MV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgeDMxIgor
ICAgICAgICAgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAg
ICAgICAgICAgICAgICAkYXNtLnB1dHMgImFkZHcgI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFu
ZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRP
cGVyYW5kfSIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImxpIHgzMSwgMHhmZmZmZmZmZiIK
KyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImFuZCAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVy
YW5kfSwgI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAgICAgICAgICAgIHdo
ZW4gW0ltbWVkaWF0ZSwgUmVnaXN0ZXJJRF0KKyAgICAgICAgICAgICAgICBpZiBvcGVyYW5kc1sw
XS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICAgICAgICAgIG9wZXJhbmRzWzBdLnJp
c2N2NjRMb2FkCisgICAgICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYWRkdyAje29wZXJhbmRz
WzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSIK
KyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYWRk
aXcgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9w
ZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICBl
bmQKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImxpIHgzMSwgMHhmZmZmZmZmZiIKKyAgICAg
ICAgICAgICAgICAkYXNtLnB1dHMgImFuZCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwg
I3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAgICAgICAgICAgIHdoZW4gW0lt
bWVkaWF0ZSwgUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAgICAgICAgICAgICBpZiBvcGVy
YW5kc1swXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICAgICAgICAgIG9wZXJhbmRz
WzBdLnJpc2N2NjRMb2FkCisgICAgICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYWRkdyAje29w
ZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0s
IHgzMSIKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgICRhc20ucHV0
cyAiYWRkaXcgI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlz
Y3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAg
ICAgICBlbmQKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImxpIHgzMSwgMHhmZmZmZmZmZiIK
KyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImFuZCAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVy
YW5kfSwgI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAgICAgICAgICAgIHdo
ZW4gW0ltbWVkaWF0ZSwgQWRkcmVzc10KKyAgICAgICAgICAgICAgICBpZiBvcGVyYW5kc1sxXS5y
aXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICAgICAgICAgIG9wZXJhbmRzWzFdLnJpc2N2
NjRMb2FkCisgICAgICAgICAgICAgICAgICAgICRhc20ucHV0cyAibHcgeDMwLCAwKHgzMSkiCisg
ICAgICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYWRkaXcgeDMwLCB4MzAsICN7b3BlcmFuZHNb
MF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMgInN3IHgz
MCwgMHgoMzEpIgorICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgJGFz
bS5wdXRzICJsdyB4MzEsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAg
ICAgICAgICAgICAkYXNtLnB1dHMgImFkZGl3IHgzMSwgeDMxLCAje29wZXJhbmRzWzBdLnJpc2N2
NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJzdyB4MzEsICN7b3Bl
cmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgIGVuZAorICAgICAgICAg
ICAgZWxzZQorICAgICAgICAgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhv
cGVyYW5kcykKKyAgICAgICAgICAgIGVuZAorICAgICAgICB3aGVuICJhZGRwIiwgImFkZHEiCisg
ICAgICAgICAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgICAgICAg
ICB3aGVuIFtSZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAgICAgICAgICAgICAgICRhc20ucHV0
cyAiYWRkICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2
NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICB3
aGVuIFtSZWdpc3RlcklELCBSZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAgICAgICAgICAgICAg
ICRhc20ucHV0cyAiYWRkICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRz
WzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAg
ICAgICAgICB3aGVuIFtJbW1lZGlhdGUsIFJlZ2lzdGVySURdCisgICAgICAgICAgICAgICAgaWYg
b3BlcmFuZHNbMF0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgICAgICAgICBvcGVy
YW5kc1swXS5yaXNjdjY0TG9hZAorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImFkZCAj
e29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFu
ZH0sIHgzMSIKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgICRhc20u
cHV0cyAiYWRkaSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5y
aXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAg
ICAgICAgIGVuZAorICAgICAgICAgICAgd2hlbiBbSW1tZWRpYXRlLCBSZWdpc3RlcklELCBSZWdp
c3RlcklEXQorICAgICAgICAgICAgICAgIGlmIG9wZXJhbmRzWzBdLnJpc2N2NjRSZXF1aXJlc0xv
YWQKKyAgICAgICAgICAgICAgICAgICAgb3BlcmFuZHNbMF0ucmlzY3Y2NExvYWQKKyAgICAgICAg
ICAgICAgICAgICAgJGFzbS5wdXRzICJhZGQgI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0s
ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEiCisgICAgICAgICAgICAgICAgZWxz
ZQorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImFkZGkgI3tvcGVyYW5kc1syXS5yaXNj
djY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBd
LnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICBlbmQKKyAgICAgICAgICAgIHdoZW4g
W0ltbWVkaWF0ZSwgQWRkcmVzc10KKyAgICAgICAgICAgICAgICBpZiBvcGVyYW5kc1sxXS5yaXNj
djY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICAgICAgICAgIG9wZXJhbmRzWzFdLnJpc2N2NjRM
b2FkCisgICAgICAgICAgICAgICAgICAgICRhc20ucHV0cyAibGQgeDMwLCAwKHgzMSkiCisgICAg
ICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYWRkaSB4MzAsIHgzMCwgI3tvcGVyYW5kc1swXS5y
aXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgICAgICRhc20ucHV0cyAic2QgeDMwLCAw
eCgzMSkiCisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1
dHMgImxkIHgzMSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAg
ICAgICAgICRhc20ucHV0cyAiYWRkaSB4MzEsIHgzMSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3Bl
cmFuZH0iCisgICAgICAgICAgICAgICAgICAgICRhc20ucHV0cyAic2QgeDMxLCAje29wZXJhbmRz
WzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICBlbmQKKyAgICAgICAgICAgIGVs
c2UKKyAgICAgICAgICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFu
ZHMpCisgICAgICAgICAgICBlbmQKKyAgICAgICAgd2hlbiAiYWRkaXMiCisgICAgICAgICAgICBy
aXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3aGVuICJhZGRwcyIKKyAgICAgICAgICAg
IHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAgIHdoZW4gImFuZGkiCisgICAgICAgICAg
ICByaXNjdjY0RW1pdExvZ2ljYWxPcGVyYXRpb24ob3BlcmFuZHMsIDp3LCA6YW5kKQorICAgICAg
ICB3aGVuICJhbmRwIiwgImFuZHEiCisgICAgICAgICAgICByaXNjdjY0RW1pdExvZ2ljYWxPcGVy
YXRpb24ob3BlcmFuZHMsIDpkLCA6YW5kKQorICAgICAgICB3aGVuICJvcmgiCisgICAgICAgICAg
ICByaXNjdjY0RW1pdExvZ2ljYWxPcGVyYXRpb24ob3BlcmFuZHMsIDpoLCA6b3IpCisgICAgICAg
IHdoZW4gIm9yaSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0TG9naWNhbE9wZXJhdGlvbihvcGVy
YW5kcywgOncsIDpvcikKKyAgICAgICAgd2hlbiAib3JwIiwgIm9ycSIKKyAgICAgICAgICAgIHJp
c2N2NjRFbWl0TG9naWNhbE9wZXJhdGlvbihvcGVyYW5kcywgOmQsIDpvcikKKyAgICAgICAgd2hl
biAieG9yaSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0TG9naWNhbE9wZXJhdGlvbihvcGVyYW5k
cywgOncsIDp4b3IpCisgICAgICAgIHdoZW4gInhvcnAiLCAieG9ycSIKKyAgICAgICAgICAgIHJp
c2N2NjRFbWl0TG9naWNhbE9wZXJhdGlvbihvcGVyYW5kcywgOmQsIDp4b3IpCisgICAgICAgIHdo
ZW4gImxzaGlmdGkiCisgICAgICAgICAgICByaXNjdjY0RW1pdFNoaWZ0KG9wZXJhbmRzLCA6dywg
OmxsZWZ0KQorICAgICAgICB3aGVuICJsc2hpZnRwIiwgImxzaGlmdHEiCisgICAgICAgICAgICBy
aXNjdjY0RW1pdFNoaWZ0KG9wZXJhbmRzLCA6ZCwgOmxsZWZ0KQorICAgICAgICB3aGVuICJyc2hp
ZnRpIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRTaGlmdChvcGVyYW5kcywgOncsIDphcmlnaHQp
CisgICAgICAgIHdoZW4gInJzaGlmdHAiLCAicnNoaWZ0cSIKKyAgICAgICAgICAgIHJpc2N2NjRF
bWl0U2hpZnQob3BlcmFuZHMsIDpkLCA6YXJpZ2h0KQorICAgICAgICB3aGVuICJ1cnNoaWZ0aSIK
KyAgICAgICAgICAgIHJpc2N2NjRFbWl0U2hpZnQob3BlcmFuZHMsIDp3LCA6bHJpZ2h0KQorICAg
ICAgICB3aGVuICJ1cnNoaWZ0cCIsICJ1cnNoaWZ0cSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0
U2hpZnQob3BlcmFuZHMsIDpkLCA6bHJpZ2h0KQorICAgICAgICB3aGVuICJtdWxpIgorICAgICAg
ICAgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgICAgICAgICAgd2hl
biBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgIm11
bHcgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9w
ZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgIHdoZW4g
W0ltbWVkaWF0ZSwgUmVnaXN0ZXJJRF0KKyAgICAgICAgICAgICAgICBpZiBvcGVyYW5kc1swXS5y
aXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICAgICAgICAgIG9wZXJhbmRzWzBdLnJpc2N2
NjRMb2FkCisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1
dHMgImxpIHgzMSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAg
ICAgZW5kCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJtdWx3ICN7b3BlcmFuZHNbMV0ucmlz
Y3Y2NE9wZXJhbmR9LCB4MzEsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAg
ICAgICAgd2hlbiBbSW1tZWRpYXRlLCBSZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAgICAgICAg
ICAgICAgIGlmIG9wZXJhbmRzWzBdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAgICAg
ICAgICAgb3BlcmFuZHNbMF0ucmlzY3Y2NExvYWQKKyAgICAgICAgICAgICAgICBlbHNlCisgICAg
ICAgICAgICAgICAgICAgICRhc20ucHV0cyAibGkgeDMxLCAje29wZXJhbmRzWzBdLnJpc2N2NjRP
cGVyYW5kfSIKKyAgICAgICAgICAgICAgICBlbmQKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMg
Im11bHcgI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSwgI3tvcGVyYW5kc1sxXS5y
aXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgcmlzY3Y2
NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgICAgICAgICAgZW5kCisgICAg
ICAgIHdoZW4gIm11bHAiLCAibXVscSIKKyAgICAgICAgICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRU
eXBlcyhvcGVyYW5kcykKKyAgICAgICAgICAgIHdoZW4gW1JlZ2lzdGVySUQsIFJlZ2lzdGVySURd
CisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJtdWwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3Bl
cmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2
NjRPcGVyYW5kfSIKKyAgICAgICAgICAgIHdoZW4gW0ltbWVkaWF0ZSwgUmVnaXN0ZXJJRF0KKyAg
ICAgICAgICAgICAgICBpZiBvcGVyYW5kc1swXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAg
ICAgICAgICAgICAgIG9wZXJhbmRzWzBdLnJpc2N2NjRMb2FkCisgICAgICAgICAgICAgICAgZWxz
ZQorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImxpIHgzMSwgI3tvcGVyYW5kc1swXS5y
aXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgZW5kCisgICAgICAgICAgICAgICAgJGFz
bS5wdXRzICJtdWwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSwgI3tvcGVyYW5k
c1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICB3aGVuIFtJbW1lZGlhdGUsIFJlZ2lz
dGVySUQsIFJlZ2lzdGVySURdCisgICAgICAgICAgICAgICAgaWYgb3BlcmFuZHNbMF0ucmlzY3Y2
NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgICAgICAgICBvcGVyYW5kc1swXS5yaXNjdjY0TG9h
ZAorICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJs
aSB4MzEsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgIGVu
ZAorICAgICAgICAgICAgICAgICRhc20ucHV0cyAibXVsICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9w
ZXJhbmR9LCB4MzEsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAg
ZWxzZQorICAgICAgICAgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVy
YW5kcykKKyAgICAgICAgICAgIGVuZAorICAgICAgICB3aGVuICJkaXZpIgorICAgICAgICAgICAg
Y2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgICAgICAgICAgd2hlbiBbUmVn
aXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImRpdnV3ICN7
b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5k
fSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICB3aGVuIFtSZWdp
c3RlcklELCBSZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAgICAgICAgICAgICAgICRhc20ucHV0
cyAiZGl2dXcgI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlz
Y3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAg
IGVsc2UKKyAgICAgICAgICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3Bl
cmFuZHMpCisgICAgICAgICAgICBlbmQKKyAgICAgICAgd2hlbiAiZGl2cSIKKyAgICAgICAgICAg
IGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICAgICAgICAgIHdoZW4gW1Jl
Z2lzdGVySUQsIFJlZ2lzdGVySURdCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJkaXZ1ICN7
b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5k
fSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICB3aGVuIFtSZWdp
c3RlcklELCBSZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAgICAgICAgICAgICAgICRhc20ucHV0
cyAiZGl2dSAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNj
djY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAg
ZWxzZQorICAgICAgICAgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVy
YW5kcykKKyAgICAgICAgICAgIGVuZAorICAgICAgICB3aGVuICJkaXZpcyIKKyAgICAgICAgICAg
IHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAgIHdoZW4gImRpdnFzIgorICAgICAgICAg
ICAgcmlzY3Y2NFJhaXNlVW5zdXBwb3J0ZWQKKyAgICAgICAgd2hlbiAic3ViaSIKKyAgICAgICAg
ICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICAgICAgICAgIHdoZW4g
W1JlZ2lzdGVySUQsIFJlZ2lzdGVySURdCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJzdWJ3
ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVy
YW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICB3aGVuIFtJ
bW1lZGlhdGUsIFJlZ2lzdGVySURdCisgICAgICAgICAgICAgICAgaWYgb3BlcmFuZHNbMF0ucmlz
Y3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgICAgICAgICBvcGVyYW5kc1swXS5yaXNjdjY0
TG9hZAorICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgJGFzbS5wdXRz
ICJsaSB4MzEsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAg
IGVuZAorICAgICAgICAgICAgICAgICRhc20ucHV0cyAic3VidyAje29wZXJhbmRzWzFdLnJpc2N2
NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAgICAgICAg
ICAgIHdoZW4gW0FkZHJlc3MsIFJlZ2lzdGVySURdCisgICAgICAgICAgICAgICAgaWYgb3BlcmFu
ZHNbMF0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgICAgICAgICBvcGVyYW5kc1sw
XS5yaXNjdjY0TG9hZAorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImx3IHgzMSwgMCh4
MzEpIgorICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgJGFzbS5wdXRz
ICJsdyB4MzEsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAg
IGVuZAorICAgICAgICAgICAgICAgICRhc20ucHV0cyAic3VidyAje29wZXJhbmRzWzFdLnJpc2N2
NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAgICAgICAg
ICAgIHdoZW4gW1JlZ2lzdGVySUQsIFJlZ2lzdGVySUQsIFJlZ2lzdGVySURdCisgICAgICAgICAg
ICAgICAgJGFzbS5wdXRzICJzdWJ3ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje29w
ZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0i
CisgICAgICAgICAgICB3aGVuIFtSZWdpc3RlcklELCBJbW1lZGlhdGUsIFJlZ2lzdGVySURdCisg
ICAgICAgICAgICAgICAgaWYgb3BlcmFuZHNbMV0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAg
ICAgICAgICAgICAgICBvcGVyYW5kc1sxXS5yaXNjdjY0TG9hZAorICAgICAgICAgICAgICAgIGVs
c2UKKyAgICAgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJsaSB4MzEsICN7b3BlcmFuZHNbMV0u
cmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgIGVuZAorICAgICAgICAgICAgICAgICRh
c20ucHV0cyAic3VidyAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sw
XS5yaXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAg
ICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgICAgICAgICBl
bmQKKyAgICAgICAgd2hlbiAic3VicCIsICJzdWJxIgorICAgICAgICAgICAgY2FzZSByaXNjdjY0
T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgICAgICAgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVn
aXN0ZXJJRF0KKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgInN1YiAje29wZXJhbmRzWzFdLnJp
c2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNb
MF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgd2hlbiBbSW1tZWRpYXRlLCBSZWdpc3Rl
cklEXQorICAgICAgICAgICAgICAgIG9wZXJhbmRzWzBdLnJpc2N2NjRMb2FkCisgICAgICAgICAg
ICAgICAgJGFzbS5wdXRzICJzdWIgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3Bl
cmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEiCisgICAgICAgICAgICB3aGVuIFtBZGRyZXNz
LCBSZWdpc3RlcklEXQorICAgICAgICAgICAgICAgIGlmIG9wZXJhbmRzWzBdLnJpc2N2NjRSZXF1
aXJlc0xvYWQKKyAgICAgICAgICAgICAgICAgICAgb3BlcmFuZHNbMF0ucmlzY3Y2NExvYWQKKyAg
ICAgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJsZCB4MzEsIDAoeDMxKSIKKyAgICAgICAgICAg
ICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgICRhc20ucHV0cyAibGQgeDMxLCAje29wZXJh
bmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICBlbmQKKyAgICAgICAgICAg
ICAgICAkYXNtLnB1dHMgInN1YiAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVy
YW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAgICAgICAgICAgIHdoZW4gW1JlZ2lzdGVy
SUQsIFJlZ2lzdGVySUQsIFJlZ2lzdGVySURdCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJz
dWIgI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9w
ZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgIHdoZW4g
W1JlZ2lzdGVySUQsIEltbWVkaWF0ZSwgUmVnaXN0ZXJJRF0KKyAgICAgICAgICAgICAgICBpZiBv
cGVyYW5kc1sxXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICAgICAgICAgIG9wZXJh
bmRzWzFdLnJpc2N2NjRMb2FkCisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAg
ICAgICAkYXNtLnB1dHMgImxpIHgzMSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisg
ICAgICAgICAgICAgICAgZW5kCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJzdWIgI3tvcGVy
YW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCB4
MzEiCisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0
Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgICAgICAgICAgZW5kCisgICAgICAgIHdoZW4gInN1
YmlzIgorICAgICAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRz
KQorICAgICAgICB3aGVuICJuZWdpIgorICAgICAgICAgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5
cGVzKG9wZXJhbmRzKQorICAgICAgICAgICAgd2hlbiBbUmVnaXN0ZXJJRF0KKyAgICAgICAgICAg
ICAgICAkYXNtLnB1dHMgIm5lZ3cgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sICN7b3Bl
cmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAibGkg
eDMxLCAweGZmZmZmZmZmIgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYW5kICN7b3BlcmFu
ZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgeDMx
IgorICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNo
ZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICAgICAgICAgIGVuZAorICAgICAgICB3aGVuICJuZWdw
IiwgIm5lZ3EiCisgICAgICAgICAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMp
CisgICAgICAgICAgICB3aGVuIFtSZWdpc3RlcklEXQorICAgICAgICAgICAgICAgICRhc20ucHV0
cyAibmVnICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2
NjRPcGVyYW5kfSIKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICByaXNjdjY0UmFp
c2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgICAgICAgICBlbmQKKyAgICAgICAg
d2hlbiAibm90aSIKKyAgICAgICAgICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5k
cykKKyAgICAgICAgICAgIHdoZW4gW1JlZ2lzdGVySURdCisgICAgICAgICAgICAgICAgJGFzbS5w
dXRzICJsaSB4MzEsIDB4ZmZmZmZmZmYiCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJ4b3Ig
I3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJh
bmR9LCB4MzEiCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJhbmQgI3tvcGVyYW5kc1swXS5y
aXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEiCisgICAg
ICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJh
bmRzKG9wZXJhbmRzKQorICAgICAgICAgICAgZW5kCisgICAgICAgIHdoZW4gIm5vdHEiCisgICAg
ICAgICAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgICAgICAgICB3
aGVuIFtSZWdpc3RlcklEXQorICAgICAgICAgICAgICAgICRhc20ucHV0cyAibm90ICN7b3BlcmFu
ZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAg
ICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3Bl
cmFuZHMob3BlcmFuZHMpCisgICAgICAgICAgICBlbmQKKyAgICAgICAgd2hlbiAic3RvcmViIgor
ICAgICAgICAgICAgcmlzY3Y2NEVtaXRTdG9yZShvcGVyYW5kcywgOmIpCisgICAgICAgIHdoZW4g
InN0b3JlaCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0U3RvcmUob3BlcmFuZHMsIDpoKQorICAg
ICAgICB3aGVuICJzdG9yZWkiCisgICAgICAgICAgICByaXNjdjY0RW1pdFN0b3JlKG9wZXJhbmRz
LCA6dykKKyAgICAgICAgd2hlbiAic3RvcmVwIiwgInN0b3JlcSIKKyAgICAgICAgICAgIHJpc2N2
NjRFbWl0U3RvcmUob3BlcmFuZHMsIDpkKQorICAgICAgICB3aGVuICJsb2FkYiIKKyAgICAgICAg
ICAgIHJpc2N2NjRFbWl0TG9hZChvcGVyYW5kcywgOmJ1LCA6bm9uZSkKKyAgICAgICAgd2hlbiAi
bG9hZGgiCisgICAgICAgICAgICByaXNjdjY0RW1pdExvYWQob3BlcmFuZHMsIDpodSwgOm5vbmUp
CisgICAgICAgIHdoZW4gImxvYWRpIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRMb2FkKG9wZXJh
bmRzLCA6d3UsIDpub25lKQorICAgICAgICB3aGVuICJsb2FkaXMiCisgICAgICAgICAgICByaXNj
djY0RW1pdExvYWQob3BlcmFuZHMsIDp3LCA6bm9uZSkKKyAgICAgICAgd2hlbiAibG9hZHAiLCAi
bG9hZHEiCisgICAgICAgICAgICByaXNjdjY0RW1pdExvYWQob3BlcmFuZHMsIDpkLCA6bm9uZSkK
KyAgICAgICAgd2hlbiAibG9hZGJzaSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0TG9hZChvcGVy
YW5kcywgOmIsIDp3KQorICAgICAgICB3aGVuICJsb2FkYnNxIgorICAgICAgICAgICAgcmlzY3Y2
NEVtaXRMb2FkKG9wZXJhbmRzLCA6YiwgOm5vbmUpCisgICAgICAgIHdoZW4gImxvYWRoc2kiCisg
ICAgICAgICAgICByaXNjdjY0RW1pdExvYWQob3BlcmFuZHMsIDpoLCA6dykKKyAgICAgICAgd2hl
biAibG9hZGhzcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0TG9hZChvcGVyYW5kcywgOmgsIDpu
b25lKQorICAgICAgICB3aGVuICJiZmVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbmRp
dGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOnMsIDplcSkKKyAgICAgICAgd2hlbiAiYmZs
dCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3Bl
cmFuZHMsIDpzLCA6bHQpCisgICAgICAgIHdoZW4gImJmZ3QiCisgICAgICAgICAgICByaXNjdjY0
RW1pdEZQQ29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6cywgOmd0KQorICAgICAg
ICB3aGVuICJiZmx0dW4iCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29uZGl0aW9uYWxCcmFu
Y2hGb3JUZXN0KG9wZXJhbmRzLCA6cywgOmx0dW4pCisgICAgICAgIHdoZW4gImJmbHRlcXVuIgor
ICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5k
cywgOnMsIDpsdGVxdW4pCisgICAgICAgIHdoZW4gImJmZ3R1biIKKyAgICAgICAgICAgIHJpc2N2
NjRFbWl0RlBDb25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3BlcmFuZHMsIDpzLCA6Z3R1bikKKyAg
ICAgICAgd2hlbiAiYmZndGVxdW4iCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29uZGl0aW9u
YWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6cywgOmd0ZXF1bikKKyAgICAgICAgd2hlbiAiYmRl
cSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3Bl
cmFuZHMsIDpkLCA6ZXEpCisgICAgICAgIHdoZW4gImJkbmVxIgorICAgICAgICAgICAgcmlzY3Y2
NEVtaXRGUENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOmQsIDpuZXEpCisgICAg
ICAgIHdoZW4gImJkbHQiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29uZGl0aW9uYWxCcmFu
Y2hGb3JUZXN0KG9wZXJhbmRzLCA6ZCwgOmx0KQorICAgICAgICB3aGVuICJiZGx0ZXEiCisgICAg
ICAgICAgICByaXNjdjY0RW1pdEZQQ29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6
ZCwgOmx0ZXEpCisgICAgICAgIHdoZW4gImJkZ3QiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQ
Q29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6ZCwgOmd0KQorICAgICAgICB3aGVu
ICJiZGd0ZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29uZGl0aW9uYWxCcmFuY2hGb3JU
ZXN0KG9wZXJhbmRzLCA6ZCwgOmd0ZXEpCisgICAgICAgIHdoZW4gImJkZXF1biIKKyAgICAgICAg
ICAgIHJpc2N2NjRFbWl0RlBDb25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3BlcmFuZHMsIDpkLCA6
ZXF1bikKKyAgICAgICAgd2hlbiAiYmRuZXF1biIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBD
b25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3BlcmFuZHMsIDpkLCA6bmVxdW4pCisgICAgICAgIHdo
ZW4gImJkbHR1biIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb25kaXRpb25hbEJyYW5jaEZv
clRlc3Qob3BlcmFuZHMsIDpkLCA6bHR1bikKKyAgICAgICAgd2hlbiAiYmRsdGVxdW4iCisgICAg
ICAgICAgICByaXNjdjY0RW1pdEZQQ29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6
ZCwgOmx0ZXF1bikKKyAgICAgICAgd2hlbiAiYmRndHVuIgorICAgICAgICAgICAgcmlzY3Y2NEVt
aXRGUENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOmQsIDpndHVuKQorICAgICAg
ICB3aGVuICJiZGd0ZXF1biIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb25kaXRpb25hbEJy
YW5jaEZvclRlc3Qob3BlcmFuZHMsIDpkLCA6Z3RlcXVuKQorICAgICAgICB3aGVuICJ0ZDJpIiwg
ImJjZDJpIiwgImJ0ZDJpIgorICAgICAgICAgICAgcmlzY3Y2NFJhaXNlVW5zdXBwb3J0ZWQKKyAg
ICAgICAgd2hlbiAibW92ZHoiCisgICAgICAgICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAor
ICAgICAgICB3aGVuICJwb3AiCisgICAgICAgICAgICBzaXplID0gOCAqIG9wZXJhbmRzLnNpemUK
KyAgICAgICAgICAgIG9wZXJhbmRzLmVhY2hfd2l0aF9pbmRleCB7CisgICAgICAgICAgICAgICAg
fCBvcCwgaW5kZXggfAorICAgICAgICAgICAgICAgICRhc20ucHV0cyAibGQgI3tvcC5yaXNjdjY0
T3BlcmFuZH0sICN7c2l6ZSAtIDggKiAoaW5kZXggKyAxKX0oc3ApIgorICAgICAgICAgICAgfQor
ICAgICAgICAgICAgJGFzbS5wdXRzICJhZGRpIHNwLCBzcCwgI3tzaXplfSIKKyAgICAgICAgd2hl
biAicHVzaCIKKyAgICAgICAgICAgIHNpemUgPSA4ICogb3BlcmFuZHMuc2l6ZQorICAgICAgICAg
ICAgJGFzbS5wdXRzICJhZGRpIHNwLCBzcCwgI3stc2l6ZX0iCisgICAgICAgICAgICBvcGVyYW5k
cy5yZXZlcnNlLmVhY2hfd2l0aF9pbmRleCB7CisgICAgICAgICAgICAgICAgfCBvcCwgaW5kZXgg
fAorICAgICAgICAgICAgICAgICRhc20ucHV0cyAic2QgI3tvcC5yaXNjdjY0T3BlcmFuZH0sICN7
c2l6ZSAtIDggKiAoaW5kZXggKyAxKX0oc3ApIgorICAgICAgICAgICAgfQorICAgICAgICB3aGVu
ICJtb3ZlIgorICAgICAgICAgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQor
ICAgICAgICAgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAgICAgICAgICAg
ICAkYXNtLnB1dHMgIm12ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRz
WzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgIHdoZW4gW0ltbWVkaWF0ZSwgUmVnaXN0
ZXJJRF0KKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImxpICN7b3BlcmFuZHNbMV0ucmlzY3Y2
NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgIGVs
c2UKKyAgICAgICAgICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFu
ZHMpCisgICAgICAgICAgICBlbmQKKworICAgICAgICB3aGVuICJ6eGkycCIsICJ6eGkycSIKKyAg
ICAgICAgICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICAgICAgICAg
IHdoZW4gW1JlZ2lzdGVySUQsIFJlZ2lzdGVySURdCisgICAgICAgICAgICAgICAgJGFzbS5wdXRz
ICJzbGxpICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2
NjRPcGVyYW5kfSwgMzIiCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJzcmxpICN7b3BlcmFu
ZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgMzIi
CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgcmFpc2UgcmlzY3Y2NFJhaXNlTWlz
bWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgICAgICAgICAgZW5kCisKKyAgICAgICAgd2hl
biAic3hiMmkiCisgICAgICAgICAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMp
CisgICAgICAgICAgICB3aGVuIFtSZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAgICAgICAgICAg
ICAgICRhc20ucHV0cyAibGkgeDMxLCAweGZmIgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAi
YW5kICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRP
cGVyYW5kfSwgeDMxIgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAic2xsaXcgI3tvcGVyYW5k
c1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAyNCIK
KyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgInNyYWl3ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9w
ZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgMjQiCisgICAgICAgICAgICBl
bHNlCisgICAgICAgICAgICAgICAgcmFpc2UgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRz
KG9wZXJhbmRzKQorICAgICAgICAgICAgZW5kCisgICAgICAgIHdoZW4gInN4YjJxIgorICAgICAg
ICAgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgICAgICAgICAgd2hl
biBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgInNs
bGkgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9w
ZXJhbmR9LCAyNCIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgInNleHQudyAje29wZXJhbmRz
WzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAg
ICAgICAgICAgICAgJGFzbS5wdXRzICJzcmFpICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9
LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgMjQiCisgICAgICAgICAgICBlbHNlCisg
ICAgICAgICAgICAgICAgcmFpc2UgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJh
bmRzKQorICAgICAgICAgICAgZW5kCisgICAgICAgIHdoZW4gInN4aDJpIgorICAgICAgICAgICAg
Y2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgICAgICAgICAgd2hlbiBbUmVn
aXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImxpIHgzMSwg
MHhmZmZmIgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYW5kICN7b3BlcmFuZHNbMV0ucmlz
Y3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgeDMxIgorICAgICAg
ICAgICAgICAgICRhc20ucHV0cyAic2xsaXcgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0s
ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAxNiIKKyAgICAgICAgICAgICAgICAkYXNt
LnB1dHMgInNyYWl3ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFd
LnJpc2N2NjRPcGVyYW5kfSwgMTYiCisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAg
cmFpc2UgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgICAgICAg
ICAgZW5kCisgICAgICAgIHdoZW4gInN4aDJxIgorICAgICAgICAgICAgY2FzZSByaXNjdjY0T3Bl
cmFuZFR5cGVzKG9wZXJhbmRzKQorICAgICAgICAgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0
ZXJJRF0KKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgInNsbGkgI3tvcGVyYW5kc1sxXS5yaXNj
djY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAxNiIKKyAgICAgICAg
ICAgICAgICAkYXNtLnB1dHMgInNleHQudyAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwg
I3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgJGFzbS5wdXRz
ICJzcmFpICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2
NjRPcGVyYW5kfSwgMjQiCisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgcmFpc2Ug
cmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgICAgICAgICAgZW5k
CisgICAgICAgIHdoZW4gInN4aTJwIiwgInN4aTJxIgorICAgICAgICAgICAgY2FzZSByaXNjdjY0
T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgICAgICAgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVn
aXN0ZXJJRF0KKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgInNleHQudyAje29wZXJhbmRzWzFd
LnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAg
ICAgICBlbHNlCisgICAgICAgICAgICAgICAgcmFpc2UgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9w
ZXJhbmRzKG9wZXJhbmRzKQorICAgICAgICAgICAgZW5kCisKKyAgICAgICAgd2hlbiAibm9wIgor
ICAgICAgICAgICAgJGFzbS5wdXRzICJub3AiCisKKyAgICAgICAgd2hlbiAiYmJlcSIKKyAgICAg
ICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFuZHMsIDpiLCA6ZXEpCisg
ICAgICAgIHdoZW4gImJpZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJh
bmNoKG9wZXJhbmRzLCA6dywgOmVxKQorICAgICAgICB3aGVuICJicGVxIiwgImJxZXEiCisgICAg
ICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6ZCwgOmVxKQor
ICAgICAgICB3aGVuICJiYm5lcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxC
cmFuY2gob3BlcmFuZHMsIDpiLCA6bmVxKQorICAgICAgICB3aGVuICJiaW5lcSIKKyAgICAgICAg
ICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFuZHMsIDp3LCA6bmVxKQorICAg
ICAgICB3aGVuICJicG5lcSIsICJicW5lcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0
aW9uYWxCcmFuY2gob3BlcmFuZHMsIDpkLCA6bmVxKQorICAgICAgICB3aGVuICJiYmEiCisgICAg
ICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6YiwgOmEpCisg
ICAgICAgIHdoZW4gImJpYSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFu
Y2gob3BlcmFuZHMsIDp3LCA6YSkKKyAgICAgICAgd2hlbiAiYnBhIiwgImJxYSIKKyAgICAgICAg
ICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFuZHMsIDpkLCA6YSkKKyAgICAg
ICAgd2hlbiAiYmJhZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNo
KG9wZXJhbmRzLCA6YiwgOmFlcSkKKyAgICAgICAgd2hlbiAiYmlhZXEiCisgICAgICAgICAgICBy
aXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6dywgOmFlcSkKKyAgICAgICAg
d2hlbiAiYnBhZXEiLCAiYnFhZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFs
QnJhbmNoKG9wZXJhbmRzLCA6ZCwgOmFlcSkKKyAgICAgICAgd2hlbiAiYmJiIgorICAgICAgICAg
ICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywgOmIsIDpiKQorICAgICAg
ICB3aGVuICJiaWIiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9w
ZXJhbmRzLCA6dywgOmIpCisgICAgICAgIHdoZW4gImJwYiIsICJicWIiCisgICAgICAgICAgICBy
aXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6ZCwgOmIpCisgICAgICAgIHdo
ZW4gImJiYmVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVy
YW5kcywgOmIsIDpiZXEpCisgICAgICAgIHdoZW4gImJpYmVxIgorICAgICAgICAgICAgcmlzY3Y2
NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywgOncsIDpiZXEpCisgICAgICAgIHdoZW4g
ImJwYmVxIiwgImJxYmVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5j
aChvcGVyYW5kcywgOmQsIDpiZXEpCisgICAgICAgIHdoZW4gImJiZ3QiCisgICAgICAgICAgICBy
aXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6YiwgOmd0KQorICAgICAgICB3
aGVuICJiaWd0IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVy
YW5kcywgOncsIDpndCkKKyAgICAgICAgd2hlbiAiYnBndCIsICJicWd0IgorICAgICAgICAgICAg
cmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywgOmQsIDpndCkKKyAgICAgICAg
d2hlbiAiYmJndGVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChv
cGVyYW5kcywgOmIsIDpndGVxKQorICAgICAgICB3aGVuICJiaWd0ZXEiCisgICAgICAgICAgICBy
aXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6dywgOmd0ZXEpCisgICAgICAg
IHdoZW4gImJwZ3RlcSIsICJicWd0ZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlv
bmFsQnJhbmNoKG9wZXJhbmRzLCA6ZCwgOmd0ZXEpCisgICAgICAgIHdoZW4gImJibHQiCisgICAg
ICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6YiwgOmx0KQor
ICAgICAgICB3aGVuICJiaWx0IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJy
YW5jaChvcGVyYW5kcywgOncsIDpsdCkKKyAgICAgICAgd2hlbiAiYnBsdCIsICJicWx0IgorICAg
ICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywgOmQsIDpsdCkK
KyAgICAgICAgd2hlbiAiYmJsdGVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25h
bEJyYW5jaChvcGVyYW5kcywgOmIsIDpsdGVxKQorICAgICAgICB3aGVuICJiaWx0ZXEiCisgICAg
ICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6dywgOmx0ZXEp
CisgICAgICAgIHdoZW4gImJwbHRlcSIsICJicWx0ZXEiCisgICAgICAgICAgICByaXNjdjY0RW1p
dENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6ZCwgOmx0ZXEpCisgICAgICAgIHdoZW4gImJ0
YnoiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVy
YW5kcywgOmIsIDp6KQorICAgICAgICB3aGVuICJidGJueiIKKyAgICAgICAgICAgIHJpc2N2NjRF
bWl0Q29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6YiwgOm56KQorICAgICAgICB3
aGVuICJidGJzIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaEZvclRl
c3Qob3BlcmFuZHMsIDpiLCA6cykKKyAgICAgICAgd2hlbiAiYnRpeiIKKyAgICAgICAgICAgIHJp
c2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6dywgOnopCisgICAg
ICAgIHdoZW4gImJ0aW56IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5j
aEZvclRlc3Qob3BlcmFuZHMsIDp3LCA6bnopCisgICAgICAgIHdoZW4gImJ0aXMiCisgICAgICAg
ICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOncsIDpz
KQorICAgICAgICB3aGVuICJidHB6IiwgImJ0cXoiCisgICAgICAgICAgICByaXNjdjY0RW1pdENv
bmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOmQsIDp6KQorICAgICAgICB3aGVuICJi
dHBueiIsICJidHFueiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2hG
b3JUZXN0KG9wZXJhbmRzLCA6ZCwgOm56KQorICAgICAgICB3aGVuICJidHBzIiwgImJ0cXMiCisg
ICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywg
OmQsIDpzKQorCisgICAgICAgIHdoZW4gImJhZGRpeiIKKyAgICAgICAgICAgIGNhc2UgcmlzY3Y2
NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICAgICAgICAgIHdoZW4gW1JlZ2lzdGVySUQsIFJl
Z2lzdGVySUQsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAgICAgICAgICAgJGFzbS5wdXRz
ICJhZGQgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2
NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAg
ICAkYXNtLnB1dHMgInNleHQudyAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVy
YW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJiZXF6
ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzJdLmFzbUxhYmVsfSIK
KyAgICAgICAgICAgIHdoZW4gW0ltbWVkaWF0ZSwgUmVnaXN0ZXJJRCwgTG9jYWxMYWJlbFJlZmVy
ZW5jZV0KKyAgICAgICAgICAgICAgICBpZiBvcGVyYW5kc1swXS5yaXNjdjY0UmVxdWlyZXNMb2Fk
CisgICAgICAgICAgICAgICAgICAgIG9wZXJhbmRzWzBdLnJpc2N2NjRMb2FkCisgICAgICAgICAg
ICAgICAgICAgICRhc20ucHV0cyAiYWRkICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCB4
MzEsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgIGVsc2UK
KyAgICAgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJhZGRpICN7b3BlcmFuZHNbMV0ucmlzY3Y2
NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5y
aXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgZW5kCisgICAgICAgICAgICAgICAgJGFz
bS5wdXRzICJzZXh0LncgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNb
MV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYmVxeiAje29w
ZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1syXS5hc21MYWJlbH0iCisgICAg
ICAgICAgICB3aGVuIFtJbW1lZGlhdGUsIEFkZHJlc3MsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisg
ICAgICAgICAgICAgICAgaWYgb3BlcmFuZHNbMV0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAg
ICAgICAgICAgICAgICBvcGVyYW5kc1sxXS5yaXNjdjY0TG9hZAorICAgICAgICAgICAgICAgICAg
ICAkYXNtLnB1dHMgImx3IHgzMCwgMCh4MzEpIgorICAgICAgICAgICAgICAgIGVsc2UKKyAgICAg
ICAgICAgICAgICAgICAgJGFzbS5wdXRzICJsdyB4MzAsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9w
ZXJhbmR9IgorICAgICAgICAgICAgICAgIGVuZAorICAgICAgICAgICAgICAgIG9wZXJhbmRzWzBd
LnJpc2N2NjRMb2FkCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJhZGQgeDMwLCB4MzAsIHgz
MSIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgInNleHQudyB4MzAsIHgzMCIKKyAgICAgICAg
ICAgICAgICBpZiBvcGVyYW5kc1sxXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICAg
ICAgICAgIG9wZXJhbmRzWzFdLnJpc2N2NjRMb2FkCisgICAgICAgICAgICAgICAgICAgICRhc20u
cHV0cyAic3cgeDMwLCAwKHgzMSkiCisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAg
ICAgICAgICAkYXNtLnB1dHMgInN3IHgzMCwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0i
CisgICAgICAgICAgICAgICAgZW5kCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJiZXF6IHgz
MCwgI3tvcGVyYW5kc1syXS5hc21MYWJlbH0iCisgICAgICAgICAgICBlbHNlCisgICAgICAgICAg
ICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgICAgICAg
ICAgZW5kCisgICAgICAgIHdoZW4gImJhZGRpbnoiCisgICAgICAgICAgICBjYXNlIHJpc2N2NjRP
cGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgICAgICAgICB3aGVuIFtSZWdpc3RlcklELCBSZWdp
c3RlcklELCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICAgICAgICAgICRhc20ucHV0cyAi
YWRkICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRP
cGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAg
JGFzbS5wdXRzICJzZXh0LncgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFu
ZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYm5leiAj
e29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1syXS5hc21MYWJlbH0iCisg
ICAgICAgICAgICB3aGVuIFtJbW1lZGlhdGUsIFJlZ2lzdGVySUQsIExvY2FsTGFiZWxSZWZlcmVu
Y2VdCisgICAgICAgICAgICAgICAgaWYgb3BlcmFuZHNbMF0ucmlzY3Y2NFJlcXVpcmVzTG9hZAor
ICAgICAgICAgICAgICAgICAgICBvcGVyYW5kc1swXS5yaXNjdjY0TG9hZAorICAgICAgICAgICAg
ICAgICAgICAkYXNtLnB1dHMgImFkZCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgeDMx
LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICBlbHNlCisg
ICAgICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYWRkaSAje29wZXJhbmRzWzFdLnJpc2N2NjRP
cGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlz
Y3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgIGVuZAorICAgICAgICAgICAgICAgICRhc20u
cHV0cyAic2V4dC53ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFd
LnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImJuZXogI3tvcGVy
YW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMl0uYXNtTGFiZWx9IgorICAgICAg
ICAgICAgd2hlbiBbSW1tZWRpYXRlLCBBZGRyZXNzLCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAg
ICAgICAgICAgICAgIGlmIG9wZXJhbmRzWzFdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAg
ICAgICAgICAgICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExvYWQKKyAgICAgICAgICAgICAgICAgICAg
JGFzbS5wdXRzICJsdyB4MzAsIDAoeDMxKSIKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAg
ICAgICAgICAgICAgICRhc20ucHV0cyAibHcgeDMwLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVy
YW5kfSIKKyAgICAgICAgICAgICAgICBlbmQKKyAgICAgICAgICAgICAgICBvcGVyYW5kc1swXS5y
aXNjdjY0TG9hZAorICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYWRkIHgzMCwgeDMwLCB4MzEi
CisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgeDMwLCB4MzAiCisgICAgICAgICAg
ICAgICAgaWYgb3BlcmFuZHNbMV0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgICAg
ICAgICBvcGVyYW5kc1sxXS5yaXNjdjY0TG9hZAorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1
dHMgInN3IHgzMCwgMCh4MzEpIgorICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAg
ICAgICAgJGFzbS5wdXRzICJzdyB4MzAsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9Igor
ICAgICAgICAgICAgICAgIGVuZAorICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYm5leiB4MzAs
ICN7b3BlcmFuZHNbMl0uYXNtTGFiZWx9IgorICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAg
ICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICAgICAgICAg
IGVuZAorICAgICAgICB3aGVuICJiYWRkaXMiCisgICAgICAgICAgICBjYXNlIHJpc2N2NjRPcGVy
YW5kVHlwZXMob3BlcmFuZHMpCisgICAgICAgICAgICB3aGVuIFtSZWdpc3RlcklELCBSZWdpc3Rl
cklELCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYWRk
ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVy
YW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgJGFz
bS5wdXRzICJzZXh0LncgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNb
MV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYmx0eiAje29w
ZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1syXS5hc21MYWJlbH0iCisgICAg
ICAgICAgICB3aGVuIFtJbW1lZGlhdGUsIFJlZ2lzdGVySUQsIExvY2FsTGFiZWxSZWZlcmVuY2Vd
CisgICAgICAgICAgICAgICAgaWYgb3BlcmFuZHNbMF0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAg
ICAgICAgICAgICAgICAgICBvcGVyYW5kc1swXS5yaXNjdjY0TG9hZAorICAgICAgICAgICAgICAg
ICAgICAkYXNtLnB1dHMgImFkZCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgeDMxLCAj
e29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICBlbHNlCisgICAg
ICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYWRkaSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVy
YW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2
NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgIGVuZAorICAgICAgICAgICAgICAgICRhc20ucHV0
cyAic2V4dC53ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJp
c2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImJsdHogI3tvcGVyYW5k
c1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMl0uYXNtTGFiZWx9IgorICAgICAgICAg
ICAgd2hlbiBbSW1tZWRpYXRlLCBBZGRyZXNzLCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAg
ICAgICAgICAgIGlmIG9wZXJhbmRzWzFdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAg
ICAgICAgICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExvYWQKKyAgICAgICAgICAgICAgICAgICAgJGFz
bS5wdXRzICJsdyB4MzAsIDAoeDMxKSIKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAg
ICAgICAgICAgICRhc20ucHV0cyAibHcgeDMwLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5k
fSIKKyAgICAgICAgICAgICAgICBlbmQKKyAgICAgICAgICAgICAgICBvcGVyYW5kc1swXS5yaXNj
djY0TG9hZAorICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYWRkIHgzMCwgeDMwLCB4MzEiCisg
ICAgICAgICAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgeDMwLCB4MzAiCisgICAgICAgICAgICAg
ICAgaWYgb3BlcmFuZHNbMV0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgICAgICAg
ICBvcGVyYW5kc1sxXS5yaXNjdjY0TG9hZAorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMg
InN3IHgzMCwgMCh4MzEpIgorICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAg
ICAgJGFzbS5wdXRzICJzdyB4MzAsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAg
ICAgICAgICAgICAgIGVuZAorICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYmx0eiB4MzAsICN7
b3BlcmFuZHNbMl0uYXNtTGFiZWx9IgorICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAg
IHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICAgICAgICAgIGVu
ZAorICAgICAgICB3aGVuICJiYWRkaW8iCisgICAgICAgICAgICBjYXNlIHJpc2N2NjRPcGVyYW5k
VHlwZXMob3BlcmFuZHMpCisgICAgICAgICAgICB3aGVuIFtSZWdpc3RlcklELCBSZWdpc3RlcklE
LCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICAgICAgICAgICRhc20ucHV0cyAic2V4dC53
IHgzMCwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgJGFz
bS5wdXRzICJzZXh0LncgeDMxLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAg
ICAgICAgICAgICAkYXNtLnB1dHMgImFkZCB4MzAsIHgzMCwgeDMxIgorICAgICAgICAgICAgICAg
ICRhc20ucHV0cyAic2V4dC53ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCB4MzAiCisg
ICAgICAgICAgICAgICAgJGFzbS5wdXRzICJibmUgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFu
ZH0sIHgzMCwgI3tvcGVyYW5kc1syXS5hc21MYWJlbH0iCisgICAgICAgICAgICAgICAgJGFzbS5w
dXRzICJsaSB4MzEsIDB4ZmZmZmZmZmYiCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJhbmQg
I3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJh
bmR9LCB4MzEiCisgICAgICAgICAgICB3aGVuIFtJbW1lZGlhdGUsIFJlZ2lzdGVySUQsIExvY2Fs
TGFiZWxSZWZlcmVuY2VdCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJsaSB4MzAsICN7b3Bl
cmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAic2V4
dC53IHgzMCwgeDMwIgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAic2V4dC53IHgzMSwgI3tv
cGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJh
ZGQgeDMwLCB4MzAsIHgzMSIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgInNleHQudyAje29w
ZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgeDMwIgorICAgICAgICAgICAgICAgICRhc20ucHV0
cyAiYm5lICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCB4MzAsICN7b3BlcmFuZHNbMl0u
YXNtTGFiZWx9IgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAibGkgeDMxLCAweGZmZmZmZmZm
IgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYW5kICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9w
ZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgeDMxIgorICAgICAgICAgICAg
ZWxzZQorICAgICAgICAgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVy
YW5kcykKKyAgICAgICAgICAgIGVuZAorCisgICAgICAgIHdoZW4gImJhZGRweiIsICJiYWRkcXoi
CisgICAgICAgICAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgICAg
ICAgICB3aGVuIFtSZWdpc3RlcklELCBSZWdpc3RlcklELCBMb2NhbExhYmVsUmVmZXJlbmNlXQor
ICAgICAgICAgICAgICAgICRhc20ucHV0cyAiZWJyZWFrIgorICAgICAgICAgICAgd2hlbiBbSW1t
ZWRpYXRlLCBSZWdpc3RlcklELCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICAgICAgICAg
ICRhc20ucHV0cyAiZWJyZWFrIgorICAgICAgICAgICAgd2hlbiBbSW1tZWRpYXRlLCBBZGRyZXNz
LCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICAgICAgICAgICRhc20ucHV0cyAiZWJyZWFr
IgorICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNo
ZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICAgICAgICAgIGVuZAorICAgICAgICB3aGVuICJiYWRk
cG56IiwgImJhZGRxbnoiCisgICAgICAgICAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3Bl
cmFuZHMpCisgICAgICAgICAgICB3aGVuIFtSZWdpc3RlcklELCBSZWdpc3RlcklELCBMb2NhbExh
YmVsUmVmZXJlbmNlXQorICAgICAgICAgICAgICAgICRhc20ucHV0cyAiZWJyZWFrIgorICAgICAg
ICAgICAgd2hlbiBbSW1tZWRpYXRlLCBSZWdpc3RlcklELCBMb2NhbExhYmVsUmVmZXJlbmNlXQor
ICAgICAgICAgICAgICAgICRhc20ucHV0cyAiZWJyZWFrIgorICAgICAgICAgICAgd2hlbiBbSW1t
ZWRpYXRlLCBBZGRyZXNzLCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICAgICAgICAgICRh
c20ucHV0cyAiZWJyZWFrIgorICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJpc2N2
NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICAgICAgICAgIGVuZAorICAg
ICAgICB3aGVuICJiYWRkcHMiLCAiYmFkZHFzIgorICAgICAgICAgICAgY2FzZSByaXNjdjY0T3Bl
cmFuZFR5cGVzKG9wZXJhbmRzKQorICAgICAgICAgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0
ZXJJRCwgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImVi
cmVhayIKKyAgICAgICAgICAgIHdoZW4gW0ltbWVkaWF0ZSwgUmVnaXN0ZXJJRCwgTG9jYWxMYWJl
bFJlZmVyZW5jZV0KKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImVicmVhayIKKyAgICAgICAg
ICAgIHdoZW4gW0ltbWVkaWF0ZSwgQWRkcmVzcywgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAg
ICAgICAgICAgICAkYXNtLnB1dHMgImVicmVhayIKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAg
ICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgICAg
ICAgICBlbmQKKyAgICAgICAgd2hlbiAiYmFkZHBvIiwgImJhZGRxbyIKKyAgICAgICAgICAgIGNh
c2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICAgICAgICAgIHdoZW4gW1JlZ2lz
dGVySUQsIFJlZ2lzdGVySUQsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAgICAgICAgICAg
JGFzbS5wdXRzICJlYnJlYWsiCisgICAgICAgICAgICB3aGVuIFtJbW1lZGlhdGUsIFJlZ2lzdGVy
SUQsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJlYnJl
YWsiCisgICAgICAgICAgICB3aGVuIFtJbW1lZGlhdGUsIEFkZHJlc3MsIExvY2FsTGFiZWxSZWZl
cmVuY2VdCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJlYnJlYWsiCisgICAgICAgICAgICBl
bHNlCisgICAgICAgICAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJh
bmRzKQorICAgICAgICAgICAgZW5kCisKKyAgICAgICAgd2hlbiAiYnN1Yml6IgorICAgICAgICAg
ICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgICAgICAgICAgd2hlbiBb
UmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCwgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgICAg
ICAgICAkYXNtLnB1dHMgInNleHQudyB4MzAsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9
IgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAic2V4dC53IHgzMSwgI3tvcGVyYW5kc1sxXS5y
aXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJzdWIgeDMwLCB4MzEs
IHgzMCIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgInNleHQudyAje29wZXJhbmRzWzFdLnJp
c2N2NjRPcGVyYW5kfSwgeDMwIgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYmVxeiAje29w
ZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1syXS5hc21MYWJlbH0iCisgICAg
ICAgICAgICB3aGVuIFtJbW1lZGlhdGUsIFJlZ2lzdGVySUQsIExvY2FsTGFiZWxSZWZlcmVuY2Vd
CisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJsaSB4MzAsICN7b3BlcmFuZHNbMF0ucmlzY3Y2
NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAic2V4dC53IHgzMSwgI3tvcGVy
YW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJzdWIg
eDMwLCB4MzEsIHgzMCIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgInNleHQudyAje29wZXJh
bmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgeDMwIgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAi
Ym5leiAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1syXS5hc21MYWJl
bH0iCisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0
Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgICAgICAgICAgZW5kCisgICAgICAgIHdoZW4gImJz
dWJpbnoiCisgICAgICAgICAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisg
ICAgICAgICAgICB3aGVuIFtSZWdpc3RlcklELCBSZWdpc3RlcklELCBMb2NhbExhYmVsUmVmZXJl
bmNlXQorICAgICAgICAgICAgICAgICRhc20ucHV0cyAic2V4dC53IHgzMCwgI3tvcGVyYW5kc1sw
XS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgeDMx
LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICAkYXNtLnB1
dHMgInN1YiB4MzAsIHgzMSwgeDMwIgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAic2V4dC53
ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCB4MzAiCisgICAgICAgICAgICAgICAgJGFz
bS5wdXRzICJibmV6ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzJd
LmFzbUxhYmVsfSIKKyAgICAgICAgICAgIHdoZW4gW0ltbWVkaWF0ZSwgUmVnaXN0ZXJJRCwgTG9j
YWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImxpIHgzMCwgI3tv
cGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJz
ZXh0LncgeDMxLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAg
ICAkYXNtLnB1dHMgInN1YiB4MzAsIHgzMSwgeDMwIgorICAgICAgICAgICAgICAgICRhc20ucHV0
cyAic2V4dC53ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCB4MzAiCisgICAgICAgICAg
ICAgICAgJGFzbS5wdXRzICJibmV6ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29w
ZXJhbmRzWzJdLmFzbUxhYmVsfSIKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICBy
aXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgICAgICAgICBlbmQK
KyAgICAgICAgd2hlbiAiYnN1YmlzIgorICAgICAgICAgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5
cGVzKG9wZXJhbmRzKQorICAgICAgICAgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCwg
TG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgInN1YiAje29w
ZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0s
ICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgICRhc20ucHV0
cyAic2V4dC53ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJp
c2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImJsdHogI3tvcGVyYW5k
c1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMl0uYXNtTGFiZWx9IgorICAgICAgICAg
ICAgd2hlbiBbSW1tZWRpYXRlLCBSZWdpc3RlcklELCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAg
ICAgICAgICAgICAgICRhc20ucHV0cyAiZWJyZWFrIgorICAgICAgICAgICAgd2hlbiBbSW1tZWRp
YXRlLCBBZGRyZXNzLCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICAgICAgICAgICRhc20u
cHV0cyAiZWJyZWFrIgorICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJpc2N2NjRS
YWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICAgICAgICAgIGVuZAorICAgICAg
ICB3aGVuICJic3ViaW8iCisgICAgICAgICAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3Bl
cmFuZHMpCisgICAgICAgICAgICB3aGVuIFtSZWdpc3RlcklELCBSZWdpc3RlcklELCBMb2NhbExh
YmVsUmVmZXJlbmNlXQorICAgICAgICAgICAgICAgICRhc20ucHV0cyAic2V4dC53ICN7b3BlcmFu
ZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAg
ICAgICAgICAgICAgICAkYXNtLnB1dHMgInNleHQudyAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVy
YW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgJGFz
bS5wdXRzICJzdWIgeDMwLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5k
c1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJzZXh0Lncg
I3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIHgzMCIKKyAgICAgICAgICAgICAgICAkYXNt
LnB1dHMgImJuZSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgeDMwLCAje29wZXJhbmRz
WzJdLmFzbUxhYmVsfSIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImxpIHgzMSwgMHhmZmZm
ZmZmZiIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImFuZCAje29wZXJhbmRzWzFdLnJpc2N2
NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAgICAgICAg
ICAgIHdoZW4gW0ltbWVkaWF0ZSwgUmVnaXN0ZXJJRCwgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAg
ICAgICAgICAgICAgICAkYXNtLnB1dHMgImxpIHgzMCwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3Bl
cmFuZH0iCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgeDMwLCB4MzAiCisgICAg
ICAgICAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFu
ZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgICRhc20u
cHV0cyAic3ViIHgzMCwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIHgzMCIKKyAgICAg
ICAgICAgICAgICAkYXNtLnB1dHMgInNleHQudyAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5k
fSwgeDMwIgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYm5lICN7b3BlcmFuZHNbMV0ucmlz
Y3Y2NE9wZXJhbmR9LCB4MzAsICN7b3BlcmFuZHNbMl0uYXNtTGFiZWx9IgorICAgICAgICAgICAg
ICAgICRhc20ucHV0cyAibGkgeDMxLCAweGZmZmZmZmZmIgorICAgICAgICAgICAgICAgICRhc20u
cHV0cyAiYW5kICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJp
c2N2NjRPcGVyYW5kfSwgeDMxIgorICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJp
c2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICAgICAgICAgIGVuZAor
CisgICAgICAgIHdoZW4gImJtdWxpeiIKKyAgICAgICAgICAgICRhc20ucHV0cyAiZWJyZWFrIgor
ICAgICAgICAgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgICAgICAg
ICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCwgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAg
ICAgICAgICAgICAgICAkYXNtLnB1dHMgIm11bGggeDMwLCAje29wZXJhbmRzWzBdLnJpc2N2NjRP
cGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAg
JGFzbS5wdXRzICJtdWwgeDMxLCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVy
YW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJvciB4
MzEsIHgzMCwgeDMxIgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYmVxeiB4MzEsICN7b3Bl
cmFuZHNbMl0uYXNtTGFiZWx9IgorICAgICAgICAgICAgd2hlbiBbSW1tZWRpYXRlLCBSZWdpc3Rl
cklELCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICAgICAgICAgIGlmIG9wZXJhbmRzWzBd
LnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAgICAgICAgICAgb3BlcmFuZHNbMF0ucmlz
Y3Y2NExvYWQKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgICRhc20u
cHV0cyAibHcgeDMxLCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAg
ICAgICBlbmQKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgIm11bGggeDMwLCB4MzEsICN7b3Bl
cmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAibXVs
IHgzMSwgeDMxLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAg
ICAkYXNtLnB1dHMgIm9yIHgzMSwgeDMwLCB4MzEiCisgICAgICAgICAgICAgICAgJGFzbS5wdXRz
ICJiZXF6IHgzMSwgI3tvcGVyYW5kc1syXS5hc21MYWJlbH0iCisgICAgICAgICAgICB3aGVuIFtJ
bW1lZGlhdGUsIEFkZHJlc3MsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAgICAgICAgICAg
aWYgb3BlcmFuZHNbMV0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgICAgICAgICBv
cGVyYW5kc1sxXS5yaXNjdjY0TG9hZAorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImx3
IHgzMCwgMCh4MzEpIgorICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAg
JGFzbS5wdXRzICJsdyB4MzAsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAg
ICAgICAgICAgIGVuZAorICAgICAgICAgICAgICAgIGlmIG9wZXJhbmRzWzBdLnJpc2N2NjRSZXF1
aXJlc0xvYWQKKyAgICAgICAgICAgICAgICAgICAgb3BlcmFuZHNbMF0ucmlzY3Y2NExvYWQKKyAg
ICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgICRhc20ucHV0cyAibHcgeDMx
LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICBlbmQKKyAg
ICAgICAgICAgICAgICAkYXNtLnB1dHMgIm11bGggeDI5LCB4MzEsICN7b3BlcmFuZHNbMV0ucmlz
Y3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAibXVsIHgzMSwgeDMxLCAj
e29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMg
Im9yIHgzMSwgeDI5LCB4MzEiCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJiZXF6IHgzMSwg
I3tvcGVyYW5kc1syXS5hc21MYWJlbH0iCisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAg
ICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgICAgICAgICAg
ZW5kCisgICAgICAgIHdoZW4gImJtdWxpbnoiCisgICAgICAgICAgICAkYXNtLnB1dHMgImVicmVh
ayIKKyAgICAgICAgICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICAg
ICAgICAgIHdoZW4gW1JlZ2lzdGVySUQsIFJlZ2lzdGVySUQsIExvY2FsTGFiZWxSZWZlcmVuY2Vd
CisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJtdWxoIHgzMCwgI3tvcGVyYW5kc1swXS5yaXNj
djY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAg
ICAgICRhc20ucHV0cyAibXVsIHgzMSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sICN7
b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAi
b3IgeDMxLCB4MzAsIHgzMSIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImJuZXogeDMxLCAj
e29wZXJhbmRzWzJdLmFzbUxhYmVsfSIKKyAgICAgICAgICAgIHdoZW4gW0ltbWVkaWF0ZSwgUmVn
aXN0ZXJJRCwgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgICAgICAgICBpZiBvcGVyYW5k
c1swXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICAgICAgICAgIG9wZXJhbmRzWzBd
LnJpc2N2NjRMb2FkCisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICAk
YXNtLnB1dHMgImx3IHgzMSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAg
ICAgICAgICAgZW5kCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJtdWxoIHgzMCwgeDMxLCAj
e29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMg
Im11bCB4MzEsIHgzMSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAg
ICAgICAgJGFzbS5wdXRzICJvciB4MzEsIHgzMCwgeDMxIgorICAgICAgICAgICAgICAgICRhc20u
cHV0cyAiYm5leiB4MzEsICN7b3BlcmFuZHNbMl0uYXNtTGFiZWx9IgorICAgICAgICAgICAgd2hl
biBbSW1tZWRpYXRlLCBBZGRyZXNzLCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICAgICAg
ICAgIGlmIG9wZXJhbmRzWzFdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAgICAgICAg
ICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExvYWQKKyAgICAgICAgICAgICAgICAgICAgJGFzbS5wdXRz
ICJsdyB4MzAsIDAoeDMxKSIKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAg
ICAgICRhc20ucHV0cyAibHcgeDMwLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAg
ICAgICAgICAgICAgICBlbmQKKyAgICAgICAgICAgICAgICBpZiBvcGVyYW5kc1swXS5yaXNjdjY0
UmVxdWlyZXNMb2FkCisgICAgICAgICAgICAgICAgICAgIG9wZXJhbmRzWzBdLnJpc2N2NjRMb2Fk
CisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImx3
IHgzMSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgZW5k
CisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJtdWxoIHgyOSwgeDMxLCAje29wZXJhbmRzWzFd
LnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgIm11bCB4MzEsIHgz
MSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgJGFzbS5w
dXRzICJvciB4MzEsIHgyOSwgeDMxIgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYm5leiB4
MzEsICN7b3BlcmFuZHNbMl0uYXNtTGFiZWx9IgorICAgICAgICAgICAgZWxzZQorICAgICAgICAg
ICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICAgICAg
ICAgIGVuZAorICAgICAgICB3aGVuICJibXVsaW8iCisgICAgICAgICAgICBjYXNlIHJpc2N2NjRP
cGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgICAgICAgICB3aGVuIFtSZWdpc3RlcklELCBSZWdp
c3RlcklELCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICAgICAgICAgICRhc20ucHV0cyAi
c2V4dC53IHgzMCwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAg
ICAgJGFzbS5wdXRzICJzZXh0LncgeDMxLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIK
KyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgIm11bCB4MzAsIHgzMCwgeDMxIgorICAgICAgICAg
ICAgICAgICRhc20ucHV0cyAic2V4dC53ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCB4
MzAiCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJibmUgI3tvcGVyYW5kc1sxXS5yaXNjdjY0
T3BlcmFuZH0sIHgzMCwgI3tvcGVyYW5kc1syXS5hc21MYWJlbH0iCisgICAgICAgICAgICAgICAg
JGFzbS5wdXRzICJsaSB4MzEsIDB4ZmZmZmZmZmYiCisgICAgICAgICAgICAgICAgJGFzbS5wdXRz
ICJhbmQgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2
NE9wZXJhbmR9LCB4MzEiCisgICAgICAgICAgICB3aGVuIFtJbW1lZGlhdGUsIFJlZ2lzdGVySUQs
IExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJsaSB4MzAs
ICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgICRhc20ucHV0
cyAic2V4dC53IHgzMCwgeDMwIgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAic2V4dC53IHgz
MSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgJGFzbS5w
dXRzICJtdWwgeDMwLCB4MzAsIHgzMSIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgInNleHQu
dyAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgeDMwIgorICAgICAgICAgICAgICAgICRh
c20ucHV0cyAiYm5lICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCB4MzAsICN7b3BlcmFu
ZHNbMl0uYXNtTGFiZWx9IgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAibGkgeDMxLCAweGZm
ZmZmZmZmIgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYW5kICN7b3BlcmFuZHNbMV0ucmlz
Y3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgeDMxIgorICAgICAg
ICAgICAgd2hlbiBbSW1tZWRpYXRlLCBBZGRyZXNzLCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAg
ICAgICAgICAgICAgICRhc20ucHV0cyAiZWJyZWFrIgorICAgICAgICAgICAgZWxzZQorICAgICAg
ICAgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICAg
ICAgICAgIGVuZAorICAgICAgICB3aGVuICJibXVsaXMiCisgICAgICAgICAgICAkYXNtLnB1dHMg
ImVicmVhayIKKyAgICAgICAgICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykK
KyAgICAgICAgICAgIHdoZW4gW1JlZ2lzdGVySUQsIFJlZ2lzdGVySUQsIExvY2FsTGFiZWxSZWZl
cmVuY2VdCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJtdWwgI3tvcGVyYW5kc1sxXS5yaXNj
djY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFd
LnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgInNleHQudyAje29w
ZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0i
CisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJibHR6ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9w
ZXJhbmR9LCAje29wZXJhbmRzWzJdLmFzbUxhYmVsfSIKKyAgICAgICAgICAgIHdoZW4gW0ltbWVk
aWF0ZSwgUmVnaXN0ZXJJRCwgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgICAgICAgICBp
ZiBvcGVyYW5kc1swXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICAgICAgICAgIG9w
ZXJhbmRzWzBdLnJpc2N2NjRMb2FkCisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAg
ICAgICAgICAkYXNtLnB1dHMgImx3IHgzMSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0i
CisgICAgICAgICAgICAgICAgZW5kCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJtdWwgI3tv
cGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3Bl
cmFuZH0iCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgI3tvcGVyYW5kc1sxXS5y
aXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAg
ICAgICAgICRhc20ucHV0cyAiYmx0eiB4MzEsICN7b3BlcmFuZHNbMl0uYXNtTGFiZWx9IgorICAg
ICAgICAgICAgd2hlbiBbSW1tZWRpYXRlLCBBZGRyZXNzLCBMb2NhbExhYmVsUmVmZXJlbmNlXQor
ICAgICAgICAgICAgICAgIGlmIG9wZXJhbmRzWzFdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAg
ICAgICAgICAgICAgICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExvYWQKKyAgICAgICAgICAgICAgICAg
ICAgJGFzbS5wdXRzICJsdyB4MzAsIDAoeDMxKSIKKyAgICAgICAgICAgICAgICBlbHNlCisgICAg
ICAgICAgICAgICAgICAgICRhc20ucHV0cyAibHcgeDMwLCAje29wZXJhbmRzWzFdLnJpc2N2NjRP
cGVyYW5kfSIKKyAgICAgICAgICAgICAgICBlbmQKKyAgICAgICAgICAgICAgICBpZiBvcGVyYW5k
c1swXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICAgICAgICAgIG9wZXJhbmRzWzBd
LnJpc2N2NjRMb2FkCisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICAk
YXNtLnB1dHMgImx3IHgzMSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAg
ICAgICAgICAgZW5kCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJtdWwgeDMwLCB4MzAsIHgz
MSIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgInNleHQudyB4MzAsIHgzMCIKKyAgICAgICAg
ICAgICAgICBpZiBvcGVyYW5kc1sxXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICAg
ICAgICAgIG9wZXJhbmRzWzFdLnJpc2N2NjRMb2FkCisgICAgICAgICAgICAgICAgICAgICRhc20u
cHV0cyAic3cgeDMwLCAwKHgzMSkiCisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAg
ICAgICAgICAkYXNtLnB1dHMgInN3IHgzMCwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0i
CisgICAgICAgICAgICAgICAgZW5kCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJibHR6IHgz
MCwgI3tvcGVyYW5kc1syXS5hc21MYWJlbH0iCisgICAgICAgICAgICBlbHNlCisgICAgICAgICAg
ICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgICAgICAg
ICAgZW5kCisKKyAgICAgICAgd2hlbiAiYm9yaW8iLCAiYm9yaXMiLCAiYm9yaXoiLCAiYm9yaW56
IgorICAgICAgICAgICAgcmlzY3Y2NFJhaXNlVW5zdXBwb3J0ZWQKKyAgICAgICAgd2hlbiAiam1w
IgorICAgICAgICAgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgICAg
ICAgICAgd2hlbiBbUmVnaXN0ZXJJRCwgSW1tZWRpYXRlXQorICAgICAgICAgICAgICAgICRhc20u
cHV0cyAianIgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICB3aGVu
IFtCYXNlSW5kZXgsIEltbWVkaWF0ZSwgSW1tZWRpYXRlXQorICAgICAgICAgICAgICAgIG9wZXJh
bmRzWzBdLnJpc2N2NjRMb2FkCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJsZCB4MzEsIDAo
eDMxKSIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImpyIHgzMSIKKyAgICAgICAgICAgIHdo
ZW4gW0FkZHJlc3MsIEltbWVkaWF0ZV0KKyAgICAgICAgICAgICAgICBpZiBvcGVyYW5kc1swXS5y
aXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICAgICAgICAgIG9wZXJhbmRzWzBdLnJpc2N2
NjRMb2FkCisgICAgICAgICAgICAgICAgICAgICRhc20ucHV0cyAibGQgeDMxLCAwKHgzMSkiCisg
ICAgICAgICAgICAgICAgICAgICRhc20ucHV0cyAianIgeDMxIgorICAgICAgICAgICAgICAgIGVs
c2UKKyAgICAgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJsZCB4MzEsICN7b3BlcmFuZHNbMF0u
cmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImpyIHgzMSIK
KyAgICAgICAgICAgICAgICBlbmQKKyAgICAgICAgICAgIHdoZW4gW0xhYmVsUmVmZXJlbmNlXQor
ICAgICAgICAgICAgICAgICRhc20ucHV0cyAidGFpbCAje29wZXJhbmRzWzBdLmFzbUxhYmVsfSIK
KyAgICAgICAgICAgIHdoZW4gW0xvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAgICAgICAgICAg
JGFzbS5wdXRzICJ0YWlsICN7b3BlcmFuZHNbMF0uYXNtTGFiZWx9IgorICAgICAgICAgICAgZWxz
ZQorICAgICAgICAgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5k
cykKKyAgICAgICAgICAgIGVuZAorICAgICAgICB3aGVuICJjYWxsIgorICAgICAgICAgICAgY2Fz
ZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgICAgICAgICAgd2hlbiBbUmVnaXN0
ZXJJRCwgSW1tZWRpYXRlXQorICAgICAgICAgICAgICAgICRhc20ucHV0cyAiamFsciAje29wZXJh
bmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgIHdoZW4gW0FkZHJlc3MsIEltbWVk
aWF0ZV0KKyAgICAgICAgICAgICAgICBpZiBvcGVyYW5kc1swXS5yaXNjdjY0UmVxdWlyZXNMb2Fk
CisgICAgICAgICAgICAgICAgICAgIG9wZXJhbmRzWzBdLnJpc2N2NjRMb2FkCisgICAgICAgICAg
ICAgICAgICAgICRhc20ucHV0cyAibGQgeDMxLCAwKHgzMSkiCisgICAgICAgICAgICAgICAgICAg
ICRhc20ucHV0cyAiamFsciB4MzEiCisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAg
ICAgICAgICAkYXNtLnB1dHMgImxkIHgzMSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0i
CisgICAgICAgICAgICAgICAgICAgICRhc20ucHV0cyAiamFsciB4MzEiCisgICAgICAgICAgICAg
ICAgZW5kCisgICAgICAgICAgICB3aGVuIFtMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgICAgICAg
ICAkYXNtLnB1dHMgImNhbGwgI3tvcGVyYW5kc1swXS5hc21MYWJlbH0iCisgICAgICAgICAgICBl
bHNlCisgICAgICAgICAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJh
bmRzKQorICAgICAgICAgICAgZW5kCisgICAgICAgIHdoZW4gImJyZWFrIgorICAgICAgICAgICAg
JGFzbS5wdXRzICJlYnJlYWsiCisgICAgICAgIHdoZW4gInJldCIKKyAgICAgICAgICAgICRhc20u
cHV0cyAicmV0IgorCisgICAgICAgIHdoZW4gImNiZXEiCisgICAgICAgICAgICByaXNjdjY0RW1p
dENvbXBhcmUob3BlcmFuZHMsIDpiLCA6ZXEpCisgICAgICAgIHdoZW4gImNpZXEiCisgICAgICAg
ICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDp3LCA6ZXEpCisgICAgICAgIHdoZW4g
ImNwZXEiLCAiY3FlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVyYW5kcywg
OmQsIDplcSkKKyAgICAgICAgd2hlbiAiY2JuZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENv
bXBhcmUob3BlcmFuZHMsIDpiLCA6bmVxKQorICAgICAgICB3aGVuICJjaW5lcSIKKyAgICAgICAg
ICAgIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVyYW5kcywgOncsIDpuZXEpCisgICAgICAgIHdoZW4g
ImNwbmVxIiwgImNxbmVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRz
LCA6ZCwgOm5lcSkKKyAgICAgICAgd2hlbiAiY2JhIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRD
b21wYXJlKG9wZXJhbmRzLCA6YiwgOmEpCisgICAgICAgIHdoZW4gImNpYSIKKyAgICAgICAgICAg
IHJpc2N2NjRFbWl0Q29tcGFyZShvcGVyYW5kcywgOncsIDphKQorICAgICAgICB3aGVuICJjcGEi
LCAiY3FhIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6ZCwgOmEp
CisgICAgICAgIHdoZW4gImNiYWVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9w
ZXJhbmRzLCA6YiwgOmFlcSkKKyAgICAgICAgd2hlbiAiY2lhZXEiCisgICAgICAgICAgICByaXNj
djY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDp3LCA6YWVxKQorICAgICAgICB3aGVuICJjcGFlcSIs
ICJjcWFlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVyYW5kcywgOmQsIDph
ZXEpCisgICAgICAgIHdoZW4gImNiYiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShv
cGVyYW5kcywgOmIsIDpiKQorICAgICAgICB3aGVuICJjaWIiCisgICAgICAgICAgICByaXNjdjY0
RW1pdENvbXBhcmUob3BlcmFuZHMsIDp3LCA6YikKKyAgICAgICAgd2hlbiAiY3BiIiwgImNxYiIK
KyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVyYW5kcywgOmQsIDpiKQorICAgICAg
ICB3aGVuICJjYmJlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVyYW5kcywg
OmIsIDpiZXEpCisgICAgICAgIHdoZW4gImNpYmVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRD
b21wYXJlKG9wZXJhbmRzLCA6dywgOmJlcSkKKyAgICAgICAgd2hlbiAiY3BiZXEiLCAiY3FiZXEi
CisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDpkLCA6YmVxKQorICAg
ICAgICB3aGVuICJjYmx0IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRz
LCA6YiwgOmx0KQorICAgICAgICB3aGVuICJjaWx0IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRD
b21wYXJlKG9wZXJhbmRzLCA6dywgOmx0KQorICAgICAgICB3aGVuICJjcGx0IiwgImNxbHQiCisg
ICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDpkLCA6bHQpCisgICAgICAg
IHdoZW4gImNibHRlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVyYW5kcywg
OmIsIDpsdGVxKQorICAgICAgICB3aGVuICJjaWx0ZXEiCisgICAgICAgICAgICByaXNjdjY0RW1p
dENvbXBhcmUob3BlcmFuZHMsIDp3LCA6bHRlcSkKKyAgICAgICAgd2hlbiAiY3BsdGVxIiwgImNx
bHRlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVyYW5kcywgOmQsIDpsdGVx
KQorICAgICAgICB3aGVuICJjYmd0IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9w
ZXJhbmRzLCA6YiwgOmd0KQorICAgICAgICB3aGVuICJjaWd0IgorICAgICAgICAgICAgcmlzY3Y2
NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6dywgOmd0KQorICAgICAgICB3aGVuICJjcGd0IiwgImNx
Z3QiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDpkLCA6Z3QpCisg
ICAgICAgIHdoZW4gImNiZ3RlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVy
YW5kcywgOmIsIDpndGVxKQorICAgICAgICB3aGVuICJjaWd0ZXEiCisgICAgICAgICAgICByaXNj
djY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDp3LCA6Z3RlcSkKKyAgICAgICAgd2hlbiAiY3BndGVx
IiwgImNxZ3RlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVyYW5kcywgOmQs
IDpndGVxKQorICAgICAgICB3aGVuICJ0YnoiCisgICAgICAgICAgICByaXNjdjY0RW1pdFRlc3Qo
b3BlcmFuZHMsIDpiLCA6eikKKyAgICAgICAgd2hlbiAidGJueiIKKyAgICAgICAgICAgIHJpc2N2
NjRFbWl0VGVzdChvcGVyYW5kcywgOmIsIDpueikKKyAgICAgICAgd2hlbiAidGl6IgorICAgICAg
ICAgICAgcmlzY3Y2NEVtaXRUZXN0KG9wZXJhbmRzLCA6dywgOnopCisgICAgICAgIHdoZW4gInRp
bnoiCisgICAgICAgICAgICByaXNjdjY0RW1pdFRlc3Qob3BlcmFuZHMsIDp3LCA6bnopCisgICAg
ICAgIHdoZW4gInRweiIsICJ0cXoiCisgICAgICAgICAgICByaXNjdjY0RW1pdFRlc3Qob3BlcmFu
ZHMsIDpkLCA6eikKKyAgICAgICAgd2hlbiAidHBueiIsICJ0cW56IgorICAgICAgICAgICAgcmlz
Y3Y2NEVtaXRUZXN0KG9wZXJhbmRzLCA6ZCwgOm56KQorICAgICAgICB3aGVuICJ0YnMiLCAidGlz
IiwgInRwcyIsICJ0cXMiCisgICAgICAgICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAg
ICAgICB3aGVuICJwZWVrIiwgInBva2UiCisgICAgICAgICAgICByaXNjdjY0UmFpc2VVbnN1cHBv
cnRlZAorICAgICAgICB3aGVuICJibyIsICJicyIsICJieiIsICJibnoiCisgICAgICAgICAgICBy
aXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3aGVuICJsZWFwIiwgImxlYXEiCisgICAg
ICAgICAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgICAgICAgICB3
aGVuIFtBZGRyZXNzLCBSZWdpc3RlcklEXQorICAgICAgICAgICAgICAgIGlmIG9wZXJhbmRzWzBd
LnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAgICAgICAgICAgb3BlcmFuZHNbMF0ucmlz
Y3Y2NExvYWQKKyAgICAgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJtdiAje29wZXJhbmRzWzFd
LnJpc2N2NjRPcGVyYW5kfSwgeDMxIgorICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAg
ICAgICAgICAgJGFzbS5wdXRzICJhZGRpICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAj
e29wZXJhbmRzWzBdLmJhc2UucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLm9mZnNldC52
YWx1ZX0iCisgICAgICAgICAgICAgICAgZW5kCisgICAgICAgICAgICB3aGVuIFtCYXNlSW5kZXgs
IFJlZ2lzdGVySURdCisgICAgICAgICAgICAgICAgb3BlcmFuZHNbMF0ucmlzY3Y2NExvYWQKKyAg
ICAgICAgICAgICAgICAkYXNtLnB1dHMgIm12ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9
LCB4MzEiCisgICAgICAgICAgICB3aGVuIFtMYWJlbFJlZmVyZW5jZSwgUmVnaXN0ZXJJRF0KKyAg
ICAgICAgICAgICAgICAkYXNtLnB1dHMgImxsYSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5k
fSwgI3tvcGVyYW5kc1swXS5hc21MYWJlbH0iCisgICAgICAgICAgICBlbHNlCisgICAgICAgICAg
ICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgICAgICAg
ICAgZW5kCisgICAgICAgIHdoZW4gInNtdWxsaSIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVu
c3VwcG9ydGVkCisgICAgICAgIHdoZW4gIm1lbWZlbmNlIgorICAgICAgICAgICAgJGFzbS5wdXRz
ICJmZW5jZSBydywgcnciCisgICAgICAgIHdoZW4gImZlbmNlIgorICAgICAgICAgICAgJGFzbS5w
dXRzICJmZW5jZSIKKyAgICAgICAgd2hlbiAiYmZpcSIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlz
ZVVuc3VwcG9ydGVkCisgICAgICAgIHdoZW4gInBjcnRvYWRkciIKKyAgICAgICAgICAgIGNhc2Ug
cmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICAgICAgICAgIHdoZW4gW0xhYmVsUmVm
ZXJlbmNlLCBSZWdpc3RlcklEXQorICAgICAgICAgICAgICAgICRhc20ucHV0cyAibGxhICN7b3Bl
cmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLmFzbUxhYmVsfSIKKyAgICAg
ICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFu
ZHMob3BlcmFuZHMpCisgICAgICAgICAgICBlbmQKKyAgICAgICAgd2hlbiAiZ2xvYmFsYWRkciIK
KyAgICAgICAgICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICAgICAg
ICAgIHdoZW4gW0xhYmVsUmVmZXJlbmNlLCBSZWdpc3RlcklEXQorICAgICAgICAgICAgICAgICRh
c20ucHV0cyAibGEgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0u
YXNtTGFiZWx9IgorICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJpc2N2NjRSYWlz
ZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICAgICAgICAgIGVuZAorICAgICAgICB3
aGVuICJscm90YXRlaSIsICJscm90YXRlcSIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3Vw
cG9ydGVkCisgICAgICAgIHdoZW4gInJyb3RhdGVpIiwgInJyb3RhdGVxIgorICAgICAgICAgICAg
cmlzY3Y2NFJhaXNlVW5zdXBwb3J0ZWQKKyAgICAgICAgd2hlbiAibW92ZWQiCisgICAgICAgICAg
ICByaXNjdjY0RW1pdEZQT3BlcmF0aW9uKG9wZXJhbmRzLCAiZm12LmQiKQorICAgICAgICB3aGVu
ICJsb2FkZiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBMb2FkKG9wZXJhbmRzLCAiZmx3IikK
KyAgICAgICAgd2hlbiAibG9hZGQiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQTG9hZChvcGVy
YW5kcywgImZsZCIpCisgICAgICAgIHdoZW4gInN0b3JlZiIKKyAgICAgICAgICAgIHJpc2N2NjRF
bWl0RlBTdG9yZShvcGVyYW5kcywgImZzdyIpCisgICAgICAgIHdoZW4gInN0b3JlZCIKKyAgICAg
ICAgICAgIHJpc2N2NjRFbWl0RlBTdG9yZShvcGVyYW5kcywgImZzZCIpCisgICAgICAgIHdoZW4g
ImFkZGYiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQT3BlcmF0aW9uKFtvcGVyYW5kc1swXSwg
b3BlcmFuZHNbMV0sIG9wZXJhbmRzWzFdXSwgImZhZGQucyIpCisgICAgICAgIHdoZW4gImFkZGQi
CisgICAgICAgICAgICByaXNjdjY0RW1pdEZQT3BlcmF0aW9uKFtvcGVyYW5kc1swXSwgb3BlcmFu
ZHNbMV0sIG9wZXJhbmRzWzFdXSwgImZhZGQuZCIpCisgICAgICAgIHdoZW4gInN1YmYiCisgICAg
ICAgICAgICByaXNjdjY0RW1pdEZQT3BlcmF0aW9uKFtvcGVyYW5kc1sxXSwgb3BlcmFuZHNbMF0s
IG9wZXJhbmRzWzFdXSwgImZzdWIucyIpCisgICAgICAgIHdoZW4gInN1YmQiCisgICAgICAgICAg
ICByaXNjdjY0RW1pdEZQT3BlcmF0aW9uKFtvcGVyYW5kc1sxXSwgb3BlcmFuZHNbMF0sIG9wZXJh
bmRzWzFdXSwgImZzdWIuZCIpCisgICAgICAgIHdoZW4gIm11bGYiCisgICAgICAgICAgICByaXNj
djY0RW1pdEZQT3BlcmF0aW9uKFtvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzFd
XSwgImZtdWwucyIpCisgICAgICAgIHdoZW4gIm11bGQiCisgICAgICAgICAgICByaXNjdjY0RW1p
dEZQT3BlcmF0aW9uKFtvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzFdXSwgImZt
dWwuZCIpCisgICAgICAgIHdoZW4gImRpdmYiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQT3Bl
cmF0aW9uKFtvcGVyYW5kc1sxXSwgb3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdXSwgImZkaXYucyIp
CisgICAgICAgIHdoZW4gImRpdmQiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQT3BlcmF0aW9u
KFtvcGVyYW5kc1sxXSwgb3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdXSwgImZkaXYuZCIpCisgICAg
ICAgIHdoZW4gInNxcnRmIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUE9wZXJhdGlvbihvcGVy
YW5kcywgImZzcXJ0LnMiKQorICAgICAgICB3aGVuICJzcXJ0ZCIKKyAgICAgICAgICAgIHJpc2N2
NjRFbWl0RlBPcGVyYXRpb24ob3BlcmFuZHMsICJmc3FydC5kIikKKyAgICAgICAgd2hlbiAiYWJz
ZiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBPcGVyYXRpb24ob3BlcmFuZHMsICJmYWJzLnMi
KQorICAgICAgICB3aGVuICJhYnNkIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUE9wZXJhdGlv
bihvcGVyYW5kcywgImZhYnMuZCIpCisgICAgICAgIHdoZW4gIm5lZ2YiCisgICAgICAgICAgICBy
aXNjdjY0RW1pdEZQT3BlcmF0aW9uKG9wZXJhbmRzLCAiZm5lZy5zIikKKyAgICAgICAgd2hlbiAi
bmVnZCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBPcGVyYXRpb24ob3BlcmFuZHMsICJmbmVn
LmQiKQorICAgICAgICB3aGVuICJmbG9vcmYiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQUm91
bmRPcGVyYXRpb24ob3BlcmFuZHMsIDpzLCAicmRuIikKKyAgICAgICAgd2hlbiAiZmxvb3JkIgor
ICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUFJvdW5kT3BlcmF0aW9uKG9wZXJhbmRzLCA6ZCwgInJk
biIpCisgICAgICAgIHdoZW4gImNlaWxmIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUFJvdW5k
T3BlcmF0aW9uKG9wZXJhbmRzLCA6cywgInJ1cCIpCisgICAgICAgIHdoZW4gImNlaWxkIgorICAg
ICAgICAgICAgcmlzY3Y2NEVtaXRGUFJvdW5kT3BlcmF0aW9uKG9wZXJhbmRzLCA6ZCwgInJ1cCIp
CisgICAgICAgIHdoZW4gInJvdW5kZiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBSb3VuZE9w
ZXJhdGlvbihvcGVyYW5kcywgOnMsICJybmUiKQorICAgICAgICB3aGVuICJyb3VuZGQiCisgICAg
ICAgICAgICByaXNjdjY0RW1pdEZQUm91bmRPcGVyYXRpb24ob3BlcmFuZHMsIDpkLCAicm5lIikK
KyAgICAgICAgd2hlbiAidHJ1bmNhdGVmIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUFJvdW5k
T3BlcmF0aW9uKG9wZXJhbmRzLCA6cywgInJ0eiIpCisgICAgICAgIHdoZW4gInRydW5jYXRlZCIK
KyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBSb3VuZE9wZXJhdGlvbihvcGVyYW5kcywgOmQsICJy
dHoiKQorICAgICAgICB3aGVuICJ0cnVuY2F0ZWYyaSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0
RlBDb252ZXJ0T3BlcmF0aW9uKG9wZXJhbmRzLCA6cywgOnd1LCAicnR6IikKKyAgICAgICAgd2hl
biAidHJ1bmNhdGVkMmkiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29udmVydE9wZXJhdGlv
bihvcGVyYW5kcywgOmQsIDp3dSwgInJ0eiIpCisgICAgICAgIHdoZW4gInRydW5jYXRlZjJxIgor
ICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbnZlcnRPcGVyYXRpb24ob3BlcmFuZHMsIDpzLCA6
bHUsICJydHoiKQorICAgICAgICB3aGVuICJ0cnVuY2F0ZWQycSIKKyAgICAgICAgICAgIHJpc2N2
NjRFbWl0RlBDb252ZXJ0T3BlcmF0aW9uKG9wZXJhbmRzLCA6ZCwgOmx1LCAicnR6IikKKyAgICAg
ICAgd2hlbiAidHJ1bmNhdGVmMmlzIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbnZlcnRP
cGVyYXRpb24ob3BlcmFuZHMsIDpzLCA6dywgInJ0eiIpCisgICAgICAgIHdoZW4gInRydW5jYXRl
ZDJpcyIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb252ZXJ0T3BlcmF0aW9uKG9wZXJhbmRz
LCA6ZCwgOncsICJydHoiKQorICAgICAgICB3aGVuICJ0cnVuY2F0ZWYycXMiCisgICAgICAgICAg
ICByaXNjdjY0RW1pdEZQQ29udmVydE9wZXJhdGlvbihvcGVyYW5kcywgOnMsIDpsLCAicnR6IikK
KyAgICAgICAgd2hlbiAidHJ1bmNhdGVkMnFzIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENv
bnZlcnRPcGVyYXRpb24ob3BlcmFuZHMsIDpkLCA6bCwgInJ0eiIpCisgICAgICAgIHdoZW4gImNp
MmYiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29udmVydE9wZXJhdGlvbihvcGVyYW5kcywg
Ond1LCA6cywgOm5vbmUpCisgICAgICAgIHdoZW4gImNpMmQiCisgICAgICAgICAgICByaXNjdjY0
RW1pdEZQQ29udmVydE9wZXJhdGlvbihvcGVyYW5kcywgOnd1LCA6ZCwgOm5vbmUpCisgICAgICAg
IHdoZW4gImNpMmZzIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbnZlcnRPcGVyYXRpb24o
b3BlcmFuZHMsIDp3LCA6cywgOm5vbmUpCisgICAgICAgIHdoZW4gImNpMmRzIgorICAgICAgICAg
ICAgcmlzY3Y2NEVtaXRGUENvbnZlcnRPcGVyYXRpb24ob3BlcmFuZHMsIDp3LCA6ZCwgOm5vbmUp
CisgICAgICAgIHdoZW4gImNxMmYiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29udmVydE9w
ZXJhdGlvbihvcGVyYW5kcywgOmx1LCA6cywgOm5vbmUpCisgICAgICAgIHdoZW4gImNxMmQiCisg
ICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29udmVydE9wZXJhdGlvbihvcGVyYW5kcywgOmx1LCA6
ZCwgOm5vbmUpCisgICAgICAgIHdoZW4gImNxMmZzIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRG
UENvbnZlcnRPcGVyYXRpb24ob3BlcmFuZHMsIDpsLCA6cywgOm5vbmUpCisgICAgICAgIHdoZW4g
ImNxMmRzIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbnZlcnRPcGVyYXRpb24ob3BlcmFu
ZHMsIDpsLCA6ZCwgOm5vbmUpCisgICAgICAgIHdoZW4gImNmMmQiCisgICAgICAgICAgICByaXNj
djY0RW1pdEZQQ29udmVydE9wZXJhdGlvbihvcGVyYW5kcywgOnMsIDpkLCA6bm9uZSkKKyAgICAg
ICAgd2hlbiAiY2QyZiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb252ZXJ0T3BlcmF0aW9u
KG9wZXJhbmRzLCA6ZCwgOnMsIDpub25lKQorICAgICAgICB3aGVuICJ0emNudGkiLCAidHpjbnRx
IgorICAgICAgICAgICAgcmlzY3Y2NFJhaXNlVW5zdXBwb3J0ZWQKKyAgICAgICAgd2hlbiAibHpj
bnRpIiwgImx6Y250cSIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAg
ICAgIHdoZW4gImFuZGYiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQml0d2lzZU9wZXJhdGlv
bihvcGVyYW5kcywgOnMsICJhbmQiKQorICAgICAgICB3aGVuICJhbmRkIgorICAgICAgICAgICAg
cmlzY3Y2NEVtaXRGUEJpdHdpc2VPcGVyYXRpb24ob3BlcmFuZHMsIDpkLCAiYW5kIikKKyAgICAg
ICAgd2hlbiAib3JmIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUEJpdHdpc2VPcGVyYXRpb24o
b3BlcmFuZHMsIDpzLCAib3IiKQorICAgICAgICB3aGVuICJvcmQiCisgICAgICAgICAgICByaXNj
djY0RW1pdEZQQml0d2lzZU9wZXJhdGlvbihvcGVyYW5kcywgOmQsICJvciIpCisgICAgICAgIHdo
ZW4gImNmZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29tcGFyZShvcGVyYW5kcywgOnMs
IDplcSkKKyAgICAgICAgd2hlbiAiY2ZuZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29t
cGFyZShvcGVyYW5kcywgOnMsIDpuZXEpCisgICAgICAgIHdoZW4gImNmbHQiCisgICAgICAgICAg
ICByaXNjdjY0RW1pdEZQQ29tcGFyZShvcGVyYW5kcywgOnMsIDpsdCkKKyAgICAgICAgd2hlbiAi
Y2ZsdGVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbXBhcmUob3BlcmFuZHMsIDpzLCA6
bHRlcSkKKyAgICAgICAgd2hlbiAiY2ZndCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb21w
YXJlKG9wZXJhbmRzLCA6cywgOmd0KQorICAgICAgICB3aGVuICJjZmd0ZXEiCisgICAgICAgICAg
ICByaXNjdjY0RW1pdEZQQ29tcGFyZShvcGVyYW5kcywgOnMsIDpndGVxKQorICAgICAgICB3aGVu
ICJjZm5lcXVuIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbXBhcmUob3BlcmFuZHMsIDpz
LCA6bmVxdW4pCisgICAgICAgIHdoZW4gImNkZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQ
Q29tcGFyZShvcGVyYW5kcywgOmQsIDplcSkKKyAgICAgICAgd2hlbiAiY2RuZXEiCisgICAgICAg
ICAgICByaXNjdjY0RW1pdEZQQ29tcGFyZShvcGVyYW5kcywgOmQsIDpuZXEpCisgICAgICAgIHdo
ZW4gImNkbHQiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29tcGFyZShvcGVyYW5kcywgOmQs
IDpsdCkKKyAgICAgICAgd2hlbiAiY2RsdGVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENv
bXBhcmUob3BlcmFuZHMsIDpkLCA6bHRlcSkKKyAgICAgICAgd2hlbiAiY2RndCIKKyAgICAgICAg
ICAgIHJpc2N2NjRFbWl0RlBDb21wYXJlKG9wZXJhbmRzLCA6ZCwgOmd0KQorICAgICAgICB3aGVu
ICJjZGd0ZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29tcGFyZShvcGVyYW5kcywgOmQs
IDpndGVxKQorICAgICAgICB3aGVuICJjZG5lcXVuIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRG
UENvbXBhcmUob3BlcmFuZHMsIDpkLCA6bmVxdW4pCisgICAgICAgIHdoZW4gImZpMmYiCisgICAg
ICAgICAgICByaXNjdjY0RW1pdEZQQ29weShvcGVyYW5kcywgOnMpCisgICAgICAgIHdoZW4gImZm
MmkiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29weShvcGVyYW5kcywgOnMpCisgICAgICAg
IHdoZW4gImZwMmQiLCAiZnEyZCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb3B5KG9wZXJh
bmRzLCA6ZCkKKyAgICAgICAgd2hlbiAiZmQycCIsICJmZDJxIgorICAgICAgICAgICAgcmlzY3Y2
NEVtaXRGUENvcHkob3BlcmFuZHMsIDpkKQorICAgICAgICB3aGVuICJ0bHNfbG9hZHAiLCAidGxz
X3N0b3JlcCIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAgIHdo
ZW4gImxvYWRsaW5rYWNxYiIsICJsb2FkbGlua2FjcWgiLCAibG9hZGxpbmthY3FpIiwgImxvYWRs
aW5rYWNxcSIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAgIHdo
ZW4gInN0b3JlY29uZHJlbGIiLCAic3RvcmVjb25kcmVsaCIsICJzdG9yZWNvbmRyZWxpIiwgInN0
b3JlY29uZHJlbHEiCisgICAgICAgICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAg
ICB3aGVuICJhdG9taWN4Y2hnYWRkYiIsICJhdG9taWN4Y2hnYWRkaCIsICJhdG9taWN4Y2hnYWRk
aSIsICJhdG9taWN4Y2hnYWRkcSIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVk
CisgICAgICAgIHdoZW4gImF0b21pY3hjaGdjbGVhcmIiLCAiYXRvbWljeGNoZ2NsZWFyaCIsICJh
dG9taWN4Y2hnY2xlYXJpIiwgImF0b21pY3hjaGdjbGVhcnEiCisgICAgICAgICAgICByaXNjdjY0
UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3aGVuICJhdG9taWN4Y2hnb3JiIiwgImF0b21pY3hj
aGdvcmgiLCAiYXRvbWljeGNoZ29yaSIsICJhdG9taWN4Y2hnb3JxIgorICAgICAgICAgICAgcmlz
Y3Y2NFJhaXNlVW5zdXBwb3J0ZWQKKyAgICAgICAgd2hlbiAiYXRvbWljeGNoZ3hvcmIiLCAiYXRv
bWljeGNoZ3hvcmgiLCAiYXRvbWljeGNoZ3hvcmkiLCAiYXRvbWljeGNoZ3hvcnEiCisgICAgICAg
ICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3aGVuICJhdG9taWN4Y2hnYiIs
ICJhdG9taWN4Y2hnaCIsICJhdG9taWN4Y2hnaSIsICJhdG9taWN4Y2hncSIKKyAgICAgICAgICAg
IHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAgIHdoZW4gImF0b21pY3dlYWtjYXNiIiwg
ImF0b21pY3dlYWtjYXNoIiwgImF0b21pY3dlYWtjYXNpIiwgImF0b21pY3dlYWtjYXNxIgorICAg
ICAgICAgICAgcmlzY3Y2NFJhaXNlVW5zdXBwb3J0ZWQKKyAgICAgICAgd2hlbiAiYXRvbWljbG9h
ZGIiLCAiYXRvbWljbG9hZGgiLCAiYXRvbWljbG9hZGkiLCAiYXRvbWljbG9hZHEiCisgICAgICAg
ICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICBlbHNlCisgICAgICAgICAgICBs
b3dlckRlZmF1bHQKKyAgICAgICAgZW5kCisgICAgZW5kCitlbmQKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XVEYvd3RmL1BsYXRmb3JtRW5hYmxlLmggYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUVuYWJs
ZS5oCmluZGV4IDVjMTRkMTRjMTQ4MmNlZTRjNTQwNTRlZmUxODM2NzhkNTY4N2ZlMTkuLmJhYWZh
Zjg3ZDE5YjAwNWE3OWQyYzgxMDkyOTI2NTA4MmM5ODc3MjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
VEYvd3RmL1BsYXRmb3JtRW5hYmxlLmgKKysrIGIvU291cmNlL1dURi93dGYvUGxhdGZvcm1FbmFi
bGUuaApAQCAtODgwLDcgKzg4MCw3IEBACiAgICB0aGF0IGV4ZWN1dGVzIGVhY2ggb3Bjb2RlLiBJ
dCBjYW5ub3QgYmUgc3VwcG9ydGVkIGJ5IHRoZSBDTG9vcCBzaW5jZSB0aGVyZSdzIG5vIHdheSB0
byBlbWJlZCB0aGUKICAgIE9wY29kZUlEIHdvcmQgaW4gdGhlIENMb29wJ3Mgc3dpdGNoIHN0YXRl
bWVudCBjYXNlcy4gSXQgaXMgYWxzbyBjdXJyZW50bHkgbm90IGltcGxlbWVudGVkIGZvciBNU1ZD
LgogKi8KLSNpZiAhZGVmaW5lZChFTkFCTEVfTExJTlRfRU1CRURERURfT1BDT0RFX0lEKSAmJiAh
RU5BQkxFKENfTE9PUCkgJiYgIUNPTVBJTEVSKE1TVkMpICYmIChDUFUoWDg2KSB8fCBDUFUoWDg2
XzY0KSB8fCBDUFUoQVJNNjQpIHx8IChDUFUoQVJNX1RIVU1CMikgJiYgT1MoREFSV0lOKSkpCisj
aWYgIWRlZmluZWQoRU5BQkxFX0xMSU5UX0VNQkVEREVEX09QQ09ERV9JRCkgJiYgIUVOQUJMRShD
X0xPT1ApICYmICFDT01QSUxFUihNU1ZDKSAmJiAoQ1BVKFg4NikgfHwgQ1BVKFg4Nl82NCkgfHwg
Q1BVKEFSTTY0KSB8fCAoQ1BVKEFSTV9USFVNQjIpICYmIE9TKERBUldJTikpIHx8IENQVShSSVND
VjY0KSkKICNkZWZpbmUgRU5BQkxFX0xMSU5UX0VNQkVEREVEX09QQ09ERV9JRCAxCiAjZW5kaWYK
IApkaWZmIC0tZ2l0IGEvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlIGIvU291cmNl
L2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlCmluZGV4IGQ3OGU2ZDM0NWEwMDI1YjcwM2FjOGYw
MzYyMjNlZWQzYTQ3NTM4ZjUuLjFlYjlmOGMxMTJjNWEyYmQyYzYwMWZiOWNmMzc2NTBmZDk1ZjNl
ZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZQorKysgYi9T
b3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UKQEAgLTg0LDcgKzg0LDcgQEAgbWFjcm8o
V0VCS0lUX09QVElPTl9CRUdJTikKICAgICAgICAgc2V0KEVOQUJMRV9KSVRfREVGQVVMVCBPRkYp
CiAgICAgICAgIHNldChFTkFCTEVfRlRMX0RFRkFVTFQgT0ZGKQogICAgICAgICBzZXQoVVNFX1NZ
U1RFTV9NQUxMT0NfREVGQVVMVCBPRkYpCi0gICAgICAgIHNldChFTkFCTEVfQ19MT09QX0RFRkFV
TFQgT04pCisgICAgICAgIHNldChFTkFCTEVfQ19MT09QX0RFRkFVTFQgT0ZGKQogICAgICAgICBz
ZXQoRU5BQkxFX1NBTVBMSU5HX1BST0ZJTEVSX0RFRkFVTFQgT0ZGKQogICAgIGVsc2UgKCkKICAg
ICAgICAgc2V0KEVOQUJMRV9KSVRfREVGQVVMVCBPRkYpCmRpZmYgLS1naXQgYS9DaGFuZ2VMb2cg
Yi9DaGFuZ2VMb2cKaW5kZXggNjA2NDJkN2RkY2Y5NzIwYWIyZjA0YjEyNzJmNTZiMWVmOTJmZjQ0
ZS4uNjMzNmEwYjVlODMxODk4YjY5ZGYwOTMwNmE2NDg0OWQ3M2NiMjM4YSAxMDA2NDQKLS0tIGEv
Q2hhbmdlTG9nCisrKyBiL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDIxLTA4LTIzICBa
YW4gRG9iZXJzZWsgIDx6ZG9iZXJzZWtAaWdhbGlhLmNvbT4KKworICAgICAgICBSSVNDVjY0IHN1
cHBvcnQgaW4gTExJbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIyOTAzNQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgICogU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlOgorCiAyMDIxLTA4LTIw
ICBDYXJsb3MgQWxiZXJ0byBMb3BleiBQZXJleiAgPGNsb3BlekBpZ2FsaWEuY29tPgogCiAgICAg
ICAgIFJFR1JFU1NJT04ocjI3NDE2Nik6IFtHVEtdIEl0IGJyb2tlIHJ1bi1qYXZhc2NyaXB0Y29y
ZS10ZXN0cyBjYXVzaW5nIGFsbCB0ZXN0cyB0byB1c2UgbG90IG9mIG1lbW9yeQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>436644</attachid>
            <date>2021-08-27 11:26:54 -0700</date>
            <delta_ts>2021-08-28 09:10:29 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-229035-20210827202652.patch</filename>
            <type>text/plain</type>
            <size>147515</size>
            <attacher name="Zan Dobersek">zan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgxNzAxCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBm
NmZiYTg4MjJhZGU2MWRlYTk5NTcxYTc0M2Q4MTRlYzNhM2I5YWI2Li5kMzM0Y2UyMDEzMGRlOTJk
NDNkOWIwMDI4NGVmYmZhN2QxYWMwZDYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMDcgQEAKKzIwMjEtMDgtMjcgIFphbiBEb2JlcnNlayAgPHpkb2JlcnNla0BpZ2FsaWEu
Y29tPgorCisgICAgICAgIFJJU0NWNjQgc3VwcG9ydCBpbiBMTEludAorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI5MDM1CisgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS84MjEyMDkwOD4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBJbnRyb2R1Y2UgUklTQ1Y2NCBzdXBwb3J0IGF0IHRoZSBMTGludCBsZXZlbC4g
QWxvbmcgd2l0aCB0aGUgbmVjZXNzYXJ5CisgICAgICAgIG9mZmxpbmVhc20gYmFja2VuZCwgcGxl
bnR5IG9mIG1pc2NlbGxhbmVvdXMgY29kZSBhcm91bmQgTWFjcm9Bc3NlbWJsZXIKKyAgICAgICAg
aW5mcmFzdHJ1Y3R1cmUgaXMgYWxzbyBpbnRyb2R1Y2VkLgorCisgICAgICAgIE9mIHRoZSBleGlz
dGluZyBzdXBwb3J0ZWQgYXJjaGl0ZWN0dXJlcywgUklTQ1Y2NCBpcyBtb3N0IHNpbWlsYXIgdG8K
KyAgICAgICAgQVJNNjQsIHdpdGggdGhlIHNhbWUgd29yZCBzaXplIGFuZCBzaW1pbGFyIHJlZ2lz
dGVyIGFidW5kYW5jZS4gVGhpcyBpcworICAgICAgICBtaXJyb3JlZCBpbiBtb3N0IGNoYW5nZXMg
YXJvdW5kIHRoZSBNYWNyb0Fzc2VtYmxlciBpbmZyYXN0cnVjdHVyZSBhcworICAgICAgICB3ZWxs
IGFzIHVzaW5nIHNhbWUgb3Igc2ltaWxhciBjb2RlcGF0aHMgaW4gTExpbnQgZm9yIHRoZSB0d28g
SVNBcy4KKworICAgICAgICBGb3IgdGhlIE1hY3JvQXNzZW1ibGVyIGluZnJhc3RydWN0dXJlLCBp
dCB3b24ndCBiZSB1c2VkIHVudGlsIHByb3BlciBKSVQKKyAgICAgICAgc3VwcG9ydCBpcyBpbnRy
b2R1Y2VkLCBidXQgdGhlIGJhc2ljIGZhY2lsaXRpZXMgYXJlIHN0aWxsIG5lY2Vzc2FyeSB0bwor
ICAgICAgICBrZWVwIHRoaW5ncyBjb21waWxpbmcgd2l0aG91dCBjb21wbGljYXRpbmcgdGhlIGNv
bmZpZ3VyYXRpb24gbWF0cml4LgorICAgICAgICBNYWNyb0Fzc2VtYmxlclJJU0NWNjQgY2xhc3Mg
cHJvdmlkZXMgbm8tb3AgbWV0aG9kcyB0aHJvdWdoIEMrKyB0ZW1wbGF0ZXMKKyAgICAgICAgd2hp
bGUgUklTQ1Y2NEFzc2VtYmxlciBpcyBhbHNvIGFkZGVkIGluIGEgbGltaXRlZCBmb3JtLgorCisg
ICAgICAgIFRoZSByaXNjdjY0IG9mZmxpbmVhc20gYmFja2VuZCBjb3ZlcnMgYXNzZW1ibHkgZ2Vu
ZXJhdGlvbiBmb3IKKyAgICAgICAgaW5zdHJ1Y3Rpb25zIHRoYXQgYXJlIGV4aGliaXRlZCBieSBM
TEludCBpbiB0aGUgY3VycmVudCBjb25maWd1cmF0aW9uLgorICAgICAgICBJdCBkb2Vzbid0IGNv
dmVyIGluc3RydWN0aW9ucyB0aGF0IGUuZy4gYXJlIG9ubHkgdXNlZCBpbiB0aGUgV2ViQXNzZW1i
bHkKKyAgICAgICAgb3Bjb2RlcywgYW5kIFdlYkFzc2VtYmx5IHdvbid0IGJlIGVuYWJsZWQgdW50
aWwgdGhlIGhpZ2hlciBKSVQgdGllcnMgYXJlCisgICAgICAgIHN1cHBvcnRlZCBhbnl3YXkuCisK
KyAgICAgICAgVGhlIG9mZmxpbmVhc20gYmFja2VuZCdzIGFzc2VtYmx5IGdlbmVyYXRpb24gZm9y
IHNwZWNpZmljIGluc3RydWN0aW9ucworICAgICAgICB1c2VzIHBhdHRlcm4gbWF0Y2hpbmcgb2Yg
b3BlcmFuZCB0eXBlcyBmb3IgYmV0dGVyIG92ZXJ2aWV3IG9mIGhvdworICAgICAgICByZXN1bHRp
bmcgYXNzZW1ibHkgaXMgY29uc3RydWN0ZWQuIFRoZXJlJ3Mgc3RpbGwgY2VydGFpbiBpbXByb3Zl
bWVudHMKKyAgICAgICAgcG9zc2libGUsIGUuZy4gaW4gaG93IHNjcmF0Y2ggcmVnaXN0ZXJzIGZv
ciBtb3JlIGV4cGFuc2l2ZSBvcGVyYXRpb25zCisgICAgICAgIGFyZSBhbGxvY2F0ZWQuCisKKyAg
ICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBTb3VyY2VzLnR4dDoKKyAgICAgICAg
KiBhc3NlbWJsZXIvQWJzdHJhY3RNYWNyb0Fzc2VtYmxlci5oOgorICAgICAgICAqIGFzc2VtYmxl
ci9NYWNyb0Fzc2VtYmxlci5oOgorICAgICAgICAqIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlclJJ
U0NWNjQuY3BwOiBBZGRlZC4KKyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXI6OnByb2JlKToK
KyAgICAgICAgKiBhc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJSSVNDVjY0Lmg6IEFkZGVkLgorICAg
ICAgICBEaXN0b3J0ZWQgYXV0by1nZW5lcmF0ZWQgbWV0aG9kIGxpc3QgcmVtb3ZlZC4gTmVjZXNz
YXJ5IG1ldGhvZHMgYXJlCisgICAgICAgIGludHJvZHVjZWQgdGhyb3VnaCBuby1vcCB0ZW1wbGF0
ZXMgdW50aWwgYWN0dWFsbHkgbmVlZGVkIGZvciBKSVQKKyAgICAgICAgZ2VuZXJhdGlvbi4KKyAg
ICAgICAgKiBhc3NlbWJsZXIvTWF4RnJhbWVFeHRlbnRGb3JTbG93UGF0aENhbGwuaDoKKyAgICAg
ICAgKiBhc3NlbWJsZXIvUGVyZkxvZy5jcHA6CisgICAgICAgICogYXNzZW1ibGVyL1Byb2JlQ29u
dGV4dC5oOgorICAgICAgICAqIGFzc2VtYmxlci9SSVNDVjY0QXNzZW1ibGVyLmg6IEFkZGVkLgor
ICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVyOjpmaXJzdFJlZ2lzdGVyKToKKyAgICAgICAg
KEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6bGFzdFJlZ2lzdGVyKToKKyAgICAgICAgKEpTQzo6UklT
Q1Y2NEFzc2VtYmxlcjo6bnVtYmVyT2ZSZWdpc3RlcnMpOgorICAgICAgICAoSlNDOjpSSVNDVjY0
QXNzZW1ibGVyOjpmaXJzdFNQUmVnaXN0ZXIpOgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1i
bGVyOjpsYXN0U1BSZWdpc3Rlcik6CisgICAgICAgIChKU0M6OlJJU0NWNjRBc3NlbWJsZXI6Om51
bWJlck9mU1BSZWdpc3RlcnMpOgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVyOjpmaXJz
dEZQUmVnaXN0ZXIpOgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVyOjpsYXN0RlBSZWdp
c3Rlcik6CisgICAgICAgIChKU0M6OlJJU0NWNjRBc3NlbWJsZXI6Om51bWJlck9mRlBSZWdpc3Rl
cnMpOgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVyOjpncHJOYW1lKToKKyAgICAgICAg
KEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6c3ByTmFtZSk6CisgICAgICAgIChKU0M6OlJJU0NWNjRB
c3NlbWJsZXI6OmZwck5hbWUpOgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVyOjpSSVND
VjY0QXNzZW1ibGVyKToKKyAgICAgICAgKEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6YnVmZmVyKToK
KyAgICAgICAgKEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6aW52ZXJ0KToKKyAgICAgICAgKEpTQzo6
UklTQ1Y2NEFzc2VtYmxlcjo6Z2V0UmVsb2NhdGVkQWRkcmVzcyk6CisgICAgICAgIChKU0M6OlJJ
U0NWNjRBc3NlbWJsZXI6OmNvZGVTaXplIGNvbnN0KToKKyAgICAgICAgKEpTQzo6UklTQ1Y2NEFz
c2VtYmxlcjo6Z2V0Q2FsbFJldHVybk9mZnNldCk6CisgICAgICAgIChKU0M6OlJJU0NWNjRBc3Nl
bWJsZXI6OmxhYmVsSWdub3JpbmdXYXRjaHBvaW50cyk6CisgICAgICAgIChKU0M6OlJJU0NWNjRB
c3NlbWJsZXI6OmxhYmVsRm9yV2F0Y2hwb2ludCk6CisgICAgICAgIChKU0M6OlJJU0NWNjRBc3Nl
bWJsZXI6OmxhYmVsKToKKyAgICAgICAgKEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6bGlua0p1bXAp
OgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVyOjpsaW5rQ2FsbCk6CisgICAgICAgIChK
U0M6OlJJU0NWNjRBc3NlbWJsZXI6OmxpbmtQb2ludGVyKToKKyAgICAgICAgKEpTQzo6UklTQ1Y2
NEFzc2VtYmxlcjo6bWF4SnVtcFJlcGxhY2VtZW50U2l6ZSk6CisgICAgICAgIChKU0M6OlJJU0NW
NjRBc3NlbWJsZXI6OnBhdGNoYWJsZUp1bXBTaXplKToKKyAgICAgICAgKEpTQzo6UklTQ1Y2NEFz
c2VtYmxlcjo6cmVwYXRjaFBvaW50ZXIpOgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVy
OjpyZWxpbmtKdW1wKToKKyAgICAgICAgKEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6cmVsaW5rSnVt
cFRvTm9wKToKKyAgICAgICAgKEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6cmVsaW5rQ2FsbCk6Cisg
ICAgICAgIChKU0M6OlJJU0NWNjRBc3NlbWJsZXI6OmRlYnVnT2Zmc2V0KToKKyAgICAgICAgKEpT
Qzo6UklTQ1Y2NEFzc2VtYmxlcjo6Y2FjaGVGbHVzaCk6CisgICAgICAgIChKU0M6OlJJU0NWNjRB
c3NlbWJsZXI6OmZpbGxOb3BzKToKKyAgICAgICAgKiBhc3NlbWJsZXIvUklTQ1Y2NFJlZ2lzdGVy
cy5oOiBBZGRlZC4KKyAgICAgICAgKiBqaXQvRlBSSW5mby5oOgorICAgICAgICAoSlNDOjpGUFJJ
bmZvOjp0b1JlZ2lzdGVyKToKKyAgICAgICAgKEpTQzo6RlBSSW5mbzo6dG9Bcmd1bWVudFJlZ2lz
dGVyKToKKyAgICAgICAgKEpTQzo6RlBSSW5mbzo6dG9JbmRleCk6CisgICAgICAgIChKU0M6OkZQ
UkluZm86OmRlYnVnTmFtZSk6CisgICAgICAgICogaml0L0dQUkluZm8uaDoKKyAgICAgICAgKEpT
Qzo6R1BSSW5mbzo6dG9SZWdpc3Rlcik6CisgICAgICAgIChKU0M6OkdQUkluZm86OnRvQXJndW1l
bnRSZWdpc3Rlcik6CisgICAgICAgIChKU0M6OkdQUkluZm86OnRvSW5kZXgpOgorICAgICAgICAo
SlNDOjpHUFJJbmZvOjpkZWJ1Z05hbWUpOgorICAgICAgICAqIGppdC9SZWdpc3RlclNldC5jcHA6
CisgICAgICAgIChKU0M6OlJlZ2lzdGVyU2V0Ojp2bUNhbGxlZVNhdmVSZWdpc3RlcnMpOgorICAg
ICAgICAoSlNDOjpSZWdpc3RlclNldDo6bGxpbnRCYXNlbGluZUNhbGxlZVNhdmVSZWdpc3RlcnMp
OgorICAgICAgICAqIGxsaW50L0xMSW50RGF0YS5oOgorICAgICAgICAqIGxsaW50L0xMSW50T2Zm
bGluZUFzbUNvbmZpZy5oOgorICAgICAgICAqIGxsaW50L0xvd0xldmVsSW50ZXJwcmV0ZXIuYXNt
OgorICAgICAgICAqIGxsaW50L0xvd0xldmVsSW50ZXJwcmV0ZXI2NC5hc206CisgICAgICAgICog
b2ZmbGluZWFzbS9iYWNrZW5kcy5yYjogUmVmZXJlbmNlIHRoZSByaXNjdjY0IGJhY2tlbmQgYXMg
cmVxdWlyZWQuCisgICAgICAgICogb2ZmbGluZWFzbS9yZWdpc3RlcnMucmI6IExpc3QgYWRkaXRp
b25hbCBwb3NzaWJsZSByZWdpc3RlcnMuCisgICAgICAgICogb2ZmbGluZWFzbS9yaXNjdjY0LnJi
OiBBZGRlZC4KKwogMjAyMS0wOC0yNyAgTWlraGFpbCBSLiBHYWRlbGhhICA8bWlraGFpbEBpZ2Fs
aWEuY29tPgogCiAgICAgICAgIEF2b2lkIGluY3JlYXNpbmcgcmVxdWlyZWQgYWxpZ25tZW50IG9m
IHRhcmdldCB0eXBlIHdhcm5pbmcgb24gQVJNIDMyIGJpdHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
VEYvQ2hhbmdlTG9nIGIvU291cmNlL1dURi9DaGFuZ2VMb2cKaW5kZXggMWIwMjkxMDRiYTg3N2Jj
MWQwMWU4NDIzYWU4OWM3ZDY4MzZjMmVmZS4uMmQ0ZDMxMDQ0ZmI0OGFmMmEzM2ExZTJmZTM3M2Vi
YTY3MmUyYzE4YSAxMDA2NDQKLS0tIGEvU291cmNlL1dURi9DaGFuZ2VMb2cKKysrIGIvU291cmNl
L1dURi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAyMS0wOC0yNyAgWmFuIERvYmVyc2Vr
ICA8emRvYmVyc2VrQGlnYWxpYS5jb20+CisKKyAgICAgICAgUklTQ1Y2NCBzdXBwb3J0IGluIExM
SW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjkw
MzUKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzgyMTIwOTA4PgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogd3RmL1BsYXRmb3JtRW5hYmxlLmg6Cisg
ICAgICAgIERlZmluZSBFTkFCTEVfTExJTlRfRU1CRURERURfT1BDT0RFX0lEIHRvIDEgZm9yIENQ
VShSSVNDVjY0KS4KKwogMjAyMS0wOC0yNyAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5j
b20+CiAKICAgICAgICAgW0NTUyBDYXNjYWRlIExheWVyc10gSW5pdGlhbCBzdXBwb3J0CmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ01ha2VMaXN0cy50eHQKaW5kZXggZWQzMGYxYTFmMmNmYzE2MjRhMTRkZTM2
ZjJmZmM4ZGVhNjQzZjczNi4uZDhkMWMwMWM1ZmMyM2ZjNzY1NDhjMmVmOTU2OGMyNjEyZTMxZmMw
YyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMjE2LDYgKzIxNiw3IEBA
IHNldChPRkZMSU5FX0FTTQogICAgIG9mZmxpbmVhc20vcGFyc2VyLnJiCiAgICAgb2ZmbGluZWFz
bS9yZWdpc3RlcnMucmIKICAgICBvZmZsaW5lYXNtL3Jpc2MucmIKKyAgICBvZmZsaW5lYXNtL3Jp
c2N2NjQucmIKICAgICBvZmZsaW5lYXNtL3NlbGZfaGFzaC5yYgogICAgIG9mZmxpbmVhc20vc2V0
dGluZ3MucmIKICAgICBvZmZsaW5lYXNtL3RyYW5zZm9ybS5yYgpAQCAtMjczLDYgKzI3NCw4IEBA
IGVsc2UgKCkKICAgICAgICAgc2V0KE9GRkxJTkVfQVNNX0JBQ0tFTkQgIkFSTXY3IikKICAgICBl
bHNlaWYgKFdURl9DUFVfTUlQUykKICAgICAgICAgc2V0KE9GRkxJTkVfQVNNX0JBQ0tFTkQgIk1J
UFMiKQorICAgIGVsc2VpZiAoV1RGX0NQVV9SSVNDVjY0KQorICAgICAgICBzZXQoT0ZGTElORV9B
U01fQkFDS0VORCAiUklTQ1Y2NCIpCiAgICAgZW5kaWYgKCkKIAogICAgIGlmIChOT1QgRU5BQkxF
X0pJVCkKQEAgLTU3Nyw5ICs1ODAsMTIgQEAgc2V0KEphdmFTY3JpcHRDb3JlX1BSSVZBVEVfRlJB
TUVXT1JLX0hFQURFUlMKICAgICBhc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJDb2RlUmVmLmgKICAg
ICBhc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJIZWxwZXJzLmgKICAgICBhc3NlbWJsZXIvTWFjcm9B
c3NlbWJsZXJNSVBTLmgKKyAgICBhc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJSSVNDVjY0LmgKICAg
ICBhc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJYODZDb21tb24uaAogICAgIGFzc2VtYmxlci9NYWNy
b0Fzc2VtYmxlclg4Nl82NC5oCiAgICAgYXNzZW1ibGVyL1ByaW50ZXIuaAorICAgIGFzc2VtYmxl
ci9SSVNDVjY0QXNzZW1ibGVyLmgKKyAgICBhc3NlbWJsZXIvUklTQ1Y2NFJlZ2lzdGVycy5oCiAg
ICAgYXNzZW1ibGVyL1JlZ2lzdGVySW5mby5oCiAgICAgYXNzZW1ibGVyL1g4NkFzc2VtYmxlci5o
CiAgICAgYXNzZW1ibGVyL1g4NlJlZ2lzdGVycy5oCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvU291cmNlcy50eHQgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvU291cmNlcy50eHQK
aW5kZXggNTJiOTNlZThkOGJiYTY2MDY0ZGIyMDE4ZjNmMzE3NzAyZjc2YWE5Yy4uZTIxYTU4MWM0
ZjY2ZTQzYWY3MDVmZGE0YjI3OGZhNjNiZjM4NDk2NyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL1NvdXJjZXMudHh0CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9Tb3VyY2Vz
LnR4dApAQCAtNTUsNiArNTUsNyBAQCBhc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJBUk12Ny5jcHAK
IGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlckNvZGVSZWYuY3BwCiBhc3NlbWJsZXIvTWFjcm9Bc3Nl
bWJsZXJNSVBTLmNwcAogYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyUHJpbnRlci5jcHAKK2Fzc2Vt
Ymxlci9NYWNyb0Fzc2VtYmxlclJJU0NWNjQuY3BwCiBhc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJY
ODZDb21tb24uY3BwCiBhc3NlbWJsZXIvUGVyZkxvZy5jcHAKIGFzc2VtYmxlci9QcmludGVyLmNw
cApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9BYnN0cmFjdE1h
Y3JvQXNzZW1ibGVyLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL0Fic3RyYWN0
TWFjcm9Bc3NlbWJsZXIuaAppbmRleCAxOTE2NWZmZjRmNWFhYjdiYTM3N2Y3ZTQwYmE4MjMyMjZh
ZjMzZGQzLi40M2Y3ODRhNGFiOTM1YTlhZjIzOWYyNmM4Y2IzMzhhYWIyMmVkZDVkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL0Fic3RyYWN0TWFjcm9Bc3NlbWJs
ZXIuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL0Fic3RyYWN0TWFjcm9B
c3NlbWJsZXIuaApAQCAtMzk3LDcgKzM5Nyw3IEBAIHB1YmxpYzoKICAgICAgICAgewogICAgICAg
ICB9CiAKLSNpZiBDUFUoWDg2XzY0KSB8fCBDUFUoQVJNNjQpCisjaWYgQ1BVKFg4Nl82NCkgfHwg
Q1BVKEFSTTY0KSB8fCBDUFUoUklTQ1Y2NCkKICAgICAgICAgZXhwbGljaXQgVHJ1c3RlZEltbTY0
KFRydXN0ZWRJbW1QdHIgcHRyKQogICAgICAgICAgICAgOiBtX3ZhbHVlKHB0ci5hc0ludHB0cigp
KQogICAgICAgICB7CkBAIC00MTMsNyArNDEzLDcgQEAgcHVibGljOgogICAgICAgICAgICAgOiBU
cnVzdGVkSW1tNjQodmFsdWUpCiAgICAgICAgIHsKICAgICAgICAgfQotI2lmIENQVShYODZfNjQp
IHx8IENQVShBUk02NCkKKyNpZiBDUFUoWDg2XzY0KSB8fCBDUFUoQVJNNjQpIHx8IENQVShSSVND
VjY0KQogICAgICAgICBleHBsaWNpdCBJbW02NChUcnVzdGVkSW1tUHRyIHB0cikKICAgICAgICAg
ICAgIDogVHJ1c3RlZEltbTY0KHB0cikKICAgICAgICAgewpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlci5oIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlci5oCmluZGV4IDY5NzExYmY4NzUyOTRlNDRm
ZTExZWYyY2UzNzU0YTQ1NWEwNjA5ODguLmQ3ZmUzYTgxZTM0MTE5YzFlNmVlNGJiNDVmNTg2NWY3
MjFmNDYyMTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFj
cm9Bc3NlbWJsZXIuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3Jv
QXNzZW1ibGVyLmgKQEAgLTU1LDYgKzU1LDExIEBAIG5hbWVzcGFjZSBKU0MgeyB0eXBlZGVmIE1h
Y3JvQXNzZW1ibGVyQVJNdjcgTWFjcm9Bc3NlbWJsZXJCYXNlOyB9OwogI2RlZmluZSBUQVJHRVRf
TUFDUk9BU1NFTUJMRVIgTWFjcm9Bc3NlbWJsZXJYODZfNjQKICNpbmNsdWRlICJNYWNyb0Fzc2Vt
Ymxlclg4Nl82NC5oIgogCisjZWxpZiBDUFUoUklTQ1Y2NCkKKyNkZWZpbmUgVEFSR0VUX0FTU0VN
QkxFUiBSSVNDVjY0QXNzZW1ibGVyCisjZGVmaW5lIFRBUkdFVF9NQUNST0FTU0VNQkxFUiBNYWNy
b0Fzc2VtYmxlclJJU0NWNjQKKyNpbmNsdWRlICJNYWNyb0Fzc2VtYmxlclJJU0NWNjQuaCIKKwog
I2Vsc2UKICNlcnJvciAiVGhlIE1hY3JvQXNzZW1ibGVyIGlzIG5vdCBzdXBwb3J0ZWQgb24gdGhp
cyBwbGF0Zm9ybS4iCiAjZW5kaWYKQEAgLTEzMiw3ICsxMzcsNyBAQCBwdWJsaWM6CiAgICAgdXNp
bmcgTWFjcm9Bc3NlbWJsZXJCYXNlOjphbmQzMjsKICAgICB1c2luZyBNYWNyb0Fzc2VtYmxlckJh
c2U6OmJyYW5jaEFkZDMyOwogICAgIHVzaW5nIE1hY3JvQXNzZW1ibGVyQmFzZTo6YnJhbmNoTXVs
MzI7Ci0jaWYgQ1BVKEFSTTY0KSB8fCBDUFUoQVJNX1RIVU1CMikgfHwgQ1BVKFg4Nl82NCkgfHwg
Q1BVKE1JUFMpCisjaWYgQ1BVKEFSTTY0KSB8fCBDUFUoQVJNX1RIVU1CMikgfHwgQ1BVKFg4Nl82
NCkgfHwgQ1BVKE1JUFMpIHx8IENQVShSSVNDVjY0KQogICAgIHVzaW5nIE1hY3JvQXNzZW1ibGVy
QmFzZTo6YnJhbmNoUHRyOwogI2VuZGlmCiAgICAgdXNpbmcgTWFjcm9Bc3NlbWJsZXJCYXNlOjpi
cmFuY2hTdWIzMjsKQEAgLTE0NCw3ICsxNDksNyBAQCBwdWJsaWM6CiAgICAgdXNpbmcgTWFjcm9B
c3NlbWJsZXJCYXNlOjp1cnNoaWZ0MzI7CiAgICAgdXNpbmcgTWFjcm9Bc3NlbWJsZXJCYXNlOjp4
b3IzMjsKIAotI2lmIENQVShBUk02NCkgfHwgQ1BVKFg4Nl82NCkKKyNpZiBDUFUoQVJNNjQpIHx8
IENQVShYODZfNjQpIHx8IENQVShSSVNDVjY0KQogICAgIHVzaW5nIE1hY3JvQXNzZW1ibGVyQmFz
ZTo6YW5kNjQ7CiAgICAgdXNpbmcgTWFjcm9Bc3NlbWJsZXJCYXNlOjpjb252ZXJ0SW50MzJUb0Rv
dWJsZTsKICAgICB1c2luZyBNYWNyb0Fzc2VtYmxlckJhc2U6OnN0b3JlNjQ7CkBAIC0zMzUsNyAr
MzQwLDcgQEAgcHVibGljOgogICAgIHN0YXRpYyBjb25zdGV4cHIgcHRyZGlmZl90IHB1c2hUb1Nh
dmVCeXRlT2Zmc2V0KCkgeyByZXR1cm4gc2l6ZW9mKHZvaWQqKTsgfQogI2VuZGlmIC8vICFDUFUo
QVJNNjQpCiAKLSNpZiBDUFUoWDg2XzY0KSB8fCBDUFUoQVJNNjQpCisjaWYgQ1BVKFg4Nl82NCkg
fHwgQ1BVKEFSTTY0KSB8fCBDUFUoUklTQ1Y2NCkKICAgICB2b2lkIHBlZWs2NChSZWdpc3RlcklE
IGRlc3QsIGludCBpbmRleCA9IDApCiAgICAgewogICAgICAgICBsb2FkNjQoQWRkcmVzcyhzdGFj
a1BvaW50ZXJSZWdpc3RlciwgKGluZGV4ICogc2l6ZW9mKHZvaWQqKSkpLCBkZXN0KTsKQEAgLTE3
MDYsNyArMTcxMSw3IEBAIHB1YmxpYzoKICAgICAgICAgc3RvcmVQdHIodmFsdWUsIGFkZHJlc3NG
b3JQb2tlKGluZGV4KSk7CiAgICAgfQogICAgIAotI2lmIENQVShYODZfNjQpIHx8IENQVShBUk02
NCkKKyNpZiBDUFUoWDg2XzY0KSB8fCBDUFUoQVJNNjQpIHx8IENQVShSSVNDVjY0KQogICAgIHZv
aWQgcG9rZShJbW02NCB2YWx1ZSwgaW50IGluZGV4ID0gMCkKICAgICB7CiAgICAgICAgIHN0b3Jl
NjQodmFsdWUsIGFkZHJlc3NGb3JQb2tlKGluZGV4KSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyUklTQ1Y2NC5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyUklTQ1Y2NC5jcHAKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uNjNiMzI2NTI4OWM1YzY2N2E1ODRmMzFkZGY3NDFmYTVjOWQ1YmU1NQotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJS
SVNDVjY0LmNwcApAQCAtMCwwICsxLDQyIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEln
YWxpYSBTLkwuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6Cisg
KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBB
UFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisg
KiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBP
UgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNp
bmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJNYWNyb0Fzc2VtYmxlci5oIgorCisjaWYgRU5B
QkxFKEFTU0VNQkxFUikgJiYgQ1BVKFJJU0NWNjQpCisKKyNpbmNsdWRlICJQcm9iZUNvbnRleHQu
aCIKKworbmFtZXNwYWNlIEpTQyB7CisKK3ZvaWQgTWFjcm9Bc3NlbWJsZXI6OnByb2JlKFByb2Jl
OjpGdW5jdGlvbiwgdm9pZCopCit7CisgICAgLy8gVE9ETworfQorCit9IC8vIG5hbWVzcGFjZSBK
U0MKKworI2VuZGlmIC8vIEVOQUJMRShBU1NFTUJMRVIpICYmIENQVShSSVNDVjY0KQpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlclJJU0NW
NjQuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJSSVND
VjY0LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uNWM5OGE5MGM0MmZkYTM3OTgwYmM2ZmU4NDU3MjQwYThmNGFkZjVk
MAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFj
cm9Bc3NlbWJsZXJSSVNDVjY0LmgKQEAgLTAsMCArMSwzOTUgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMjEgSWdhbGlhIFMuTC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICog
YXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBB
UFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVN
RU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpZiBFTkFCTEUoQVNTRU1CTEVSKSAmJiBDUFUoUklT
Q1Y2NCkKKworI2luY2x1ZGUgIkFic3RyYWN0TWFjcm9Bc3NlbWJsZXIuaCIKKyNpbmNsdWRlICJS
SVNDVjY0QXNzZW1ibGVyLmgiCisKKyNkZWZpbmUgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVN
UExBVEVEX05PT1BfTUVUSE9EKG1ldGhvZE5hbWUpIFwKKyAgICB0ZW1wbGF0ZTx0eXBlbmFtZS4u
LiBBcmdzPiB2b2lkIG1ldGhvZE5hbWUoQXJncyYmLi4uKSB7IH0KKyNkZWZpbmUgTUFDUk9fQVNT
RU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKG1ldGhvZE5h
bWUsIHJldHVyblR5cGUpIFwKKyAgICB0ZW1wbGF0ZTx0eXBlbmFtZS4uLiBBcmdzPiByZXR1cm5U
eXBlIG1ldGhvZE5hbWUoQXJncyYmLi4uKSB7IHJldHVybiB7IH07IH0KKworbmFtZXNwYWNlIEpT
QyB7CisKK3VzaW5nIEFzc2VtYmxlciA9IFRBUkdFVF9BU1NFTUJMRVI7CisKK2NsYXNzIE1hY3Jv
QXNzZW1ibGVyUklTQ1Y2NCA6IHB1YmxpYyBBYnN0cmFjdE1hY3JvQXNzZW1ibGVyPEFzc2VtYmxl
cj4geworcHVibGljOgorICAgIHN0YXRpYyBjb25zdGV4cHIgdW5zaWduZWQgbnVtR1BScyA9IDMy
OworICAgIHN0YXRpYyBjb25zdGV4cHIgdW5zaWduZWQgbnVtRlBScyA9IDMyOworCisgICAgc3Rh
dGljIGNvbnN0ZXhwciBSZWdpc3RlcklEIEludmFsaWRHUFJSZWcgPSBSSVNDVjY0UmVnaXN0ZXJz
OjpJbnZhbGlkR1BSUmVnOworCisgICAgUmVnaXN0ZXJJRCBzY3JhdGNoUmVnaXN0ZXIoKQorICAg
IHsKKyAgICAgICAgcmV0dXJuIEludmFsaWRHUFJSZWc7CisgICAgfQorCisgICAgc3RhdGljIGJv
b2wgc3VwcG9ydHNGbG9hdGluZ1BvaW50KCkgeyByZXR1cm4gdHJ1ZTsgfQorICAgIHN0YXRpYyBi
b29sIHN1cHBvcnRzRmxvYXRpbmdQb2ludFRydW5jYXRlKCkgeyByZXR1cm4gdHJ1ZTsgfQorICAg
IHN0YXRpYyBib29sIHN1cHBvcnRzRmxvYXRpbmdQb2ludFNxcnQoKSB7IHJldHVybiB0cnVlOyB9
CisgICAgc3RhdGljIGJvb2wgc3VwcG9ydHNGbG9hdGluZ1BvaW50QWJzKCkgeyByZXR1cm4gdHJ1
ZTsgfQorICAgIHN0YXRpYyBib29sIHN1cHBvcnRzRmxvYXRpbmdQb2ludFJvdW5kaW5nKCkgeyBy
ZXR1cm4gdHJ1ZTsgfQorCisgICAgZW51bSBSZWxhdGlvbmFsQ29uZGl0aW9uIHsKKyAgICAgICAg
RXF1YWwsCisgICAgICAgIE5vdEVxdWFsLAorICAgICAgICBBYm92ZSwKKyAgICAgICAgQWJvdmVP
ckVxdWFsLAorICAgICAgICBCZWxvdywKKyAgICAgICAgQmVsb3dPckVxdWFsLAorICAgICAgICBH
cmVhdGVyVGhhbiwKKyAgICAgICAgR3JlYXRlclRoYW5PckVxdWFsLAorICAgICAgICBMZXNzVGhh
biwKKyAgICAgICAgTGVzc1RoYW5PckVxdWFsLAorICAgIH07CisKKyAgICBlbnVtIFJlc3VsdENv
bmRpdGlvbiB7CisgICAgICAgIE92ZXJmbG93LAorICAgICAgICBTaWduZWQsCisgICAgICAgIFBv
c2l0aXZlT3JaZXJvLAorICAgICAgICBaZXJvLAorICAgICAgICBOb25aZXJvLAorICAgIH07CisK
KyAgICBlbnVtIFplcm9Db25kaXRpb24geworICAgICAgICBJc1plcm8sCisgICAgICAgIElzTm9u
WmVybywKKyAgICB9OworCisgICAgZW51bSBEb3VibGVDb25kaXRpb24geworICAgICAgICBEb3Vi
bGVFcXVhbEFuZE9yZGVyZWQsCisgICAgICAgIERvdWJsZU5vdEVxdWFsQW5kT3JkZXJlZCwKKyAg
ICAgICAgRG91YmxlR3JlYXRlclRoYW5BbmRPcmRlcmVkLAorICAgICAgICBEb3VibGVHcmVhdGVy
VGhhbk9yRXF1YWxBbmRPcmRlcmVkLAorICAgICAgICBEb3VibGVMZXNzVGhhbkFuZE9yZGVyZWQs
CisgICAgICAgIERvdWJsZUxlc3NUaGFuT3JFcXVhbEFuZE9yZGVyZWQsCisgICAgICAgIERvdWJs
ZUVxdWFsT3JVbm9yZGVyZWQsCisgICAgICAgIERvdWJsZU5vdEVxdWFsT3JVbm9yZGVyZWQsCisg
ICAgICAgIERvdWJsZUdyZWF0ZXJUaGFuT3JVbm9yZGVyZWQsCisgICAgICAgIERvdWJsZUdyZWF0
ZXJUaGFuT3JFcXVhbE9yVW5vcmRlcmVkLAorICAgICAgICBEb3VibGVMZXNzVGhhbk9yVW5vcmRl
cmVkLAorICAgICAgICBEb3VibGVMZXNzVGhhbk9yRXF1YWxPclVub3JkZXJlZCwKKyAgICB9Owor
CisgICAgc3RhdGljIGNvbnN0ZXhwciBSZWdpc3RlcklEIHN0YWNrUG9pbnRlclJlZ2lzdGVyID0g
UklTQ1Y2NFJlZ2lzdGVyczo6c3A7CisgICAgc3RhdGljIGNvbnN0ZXhwciBSZWdpc3RlcklEIGZy
YW1lUG9pbnRlclJlZ2lzdGVyID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZnA7CisgICAgc3RhdGljIGNv
bnN0ZXhwciBSZWdpc3RlcklEIGxpbmtSZWdpc3RlciA9IFJJU0NWNjRSZWdpc3RlcnM6OnJhOwor
CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGFkZDMy
KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoYWRk
NjQpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChz
dWIzMik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9E
KHN1YjY0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRI
T0QobXVsMzIpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01F
VEhPRChtdWw2NCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1Bf
TUVUSE9EKGFuZDMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9P
UF9NRVRIT0QoYW5kNjQpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVE
X05PT1BfTUVUSE9EKGNvdW50TGVhZGluZ1plcm9zMzIpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9S
SVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChjb3VudExlYWRpbmdaZXJvczY0KTsKKyAgICBN
QUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoY291bnRUcmFpbGlu
Z1plcm9zMzIpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01F
VEhPRChjb3VudFRyYWlsaW5nWmVyb3M2NCk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2
NF9URU1QTEFURURfTk9PUF9NRVRIT0QoYnl0ZVN3YXAxNik7CisgICAgTUFDUk9fQVNTRU1CTEVS
X1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGJ5dGVTd2FwMzIpOworICAgIE1BQ1JPX0FT
U0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChieXRlU3dhcDY0KTsKKworICAg
IE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChsc2hpZnQzMik7
CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGxzaGlm
dDY0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qo
cnNoaWZ0MzIpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01F
VEhPRChyc2hpZnQ2NCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05P
T1BfTUVUSE9EKHVyc2hpZnQzMik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExB
VEVEX05PT1BfTUVUSE9EKHVyc2hpZnQ2NCk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2
NF9URU1QTEFURURfTk9PUF9NRVRIT0Qocm90YXRlUmlnaHQzMik7CisgICAgTUFDUk9fQVNTRU1C
TEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHJvdGF0ZVJpZ2h0NjQpOworCisgICAg
TUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGxvYWQ4KTsKKyAg
ICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QobG9hZDhTaWdu
ZWRFeHRlbmRUbzMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9P
UF9NRVRIT0QobG9hZDE2KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURf
Tk9PUF9NRVRIT0QobG9hZDE2VW5hbGlnbmVkKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2
NF9URU1QTEFURURfTk9PUF9NRVRIT0QobG9hZDE2U2lnbmVkRXh0ZW5kVG8zMik7CisgICAgTUFD
Uk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGxvYWQzMik7CisgICAg
TUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGxvYWQzMldpdGhV
bmFsaWduZWRIYWxmV29yZHMpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRF
RF9OT09QX01FVEhPRChsb2FkNjQpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVN
UExBVEVEX05PT1BfTUVUSE9EKHN0b3JlOCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRf
VEVNUExBVEVEX05PT1BfTUVUSE9EKHN0b3JlMTYpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVND
VjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChzdG9yZTMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJf
UklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qoc3RvcmU2NCk7CisKKyAgICBNQUNST19BU1NF
TUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoemVyb0V4dGVuZDhUbzMyKTsKKyAg
ICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoemVyb0V4dGVu
ZDE2VG8zMik7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9N
RVRIT0Qoc2lnbkV4dGVuZDhUbzMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1Q
TEFURURfTk9PUF9NRVRIT0Qoc2lnbkV4dGVuZDE2VG8zMik7CisgICAgTUFDUk9fQVNTRU1CTEVS
X1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHNpZ25FeHRlbmQzMlRvUHRyKTsKKyAgICBN
QUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoemVyb0V4dGVuZDMy
VG9Xb3JkKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01F
VEhPRF9XSVRIX1JFVFVSTihsb2FkNjRXaXRoQWRkcmVzc09mZnNldFBhdGNoLCBEYXRhTGFiZWwz
Mik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJ
VEhfUkVUVVJOKGxvYWQ2NFdpdGhDb21wYWN0QWRkcmVzc09mZnNldFBhdGNoLCBEYXRhTGFiZWxD
b21wYWN0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRI
T0RfV0lUSF9SRVRVUk4oc3RvcmU2NFdpdGhBZGRyZXNzT2Zmc2V0UGF0Y2gsIERhdGFMYWJlbDMy
KTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChv
cjgpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChv
cjE2KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qo
b3IzMik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9E
KG9yNjQpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVU
SE9EKHhvcjMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9N
RVRIT0QoeG9yNjQpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05P
T1BfTUVUSE9EKG5vdDMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURf
Tk9PUF9NRVRIT0Qobm90NjQpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExB
VEVEX05PT1BfTUVUSE9EKG5lZzMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1Q
TEFURURfTk9PUF9NRVRIT0QobmVnNjQpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRf
VEVNUExBVEVEX05PT1BfTUVUSE9EKG1vdmUpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0
X1RFTVBMQVRFRF9OT09QX01FVEhPRChzd2FwKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVND
VjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChtb3ZlWmVyb1RvRG91YmxlKTsKKyAgICBNQUNST19B
U1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QobW92ZUZsb2F0VG8zMik7Cisg
ICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKG1vdmUzMlRv
RmxvYXQpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVU
SE9EKG1vdmVEb3VibGUpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9O
T09QX01FVEhPRChtb3ZlRG91YmxlVG82NCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRf
VEVNUExBVEVEX05PT1BfTUVUSE9EKG1vdmU2NFRvRG91YmxlKTsKKworICAgIE1BQ1JPX0FTU0VN
QkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChjb21wYXJlOCk7CisgICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGNvbXBhcmUzMik7CisgICAg
TUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGNvbXBhcmU2NCk7
CisKKyAgICBzdGF0aWMgUmVsYXRpb25hbENvbmRpdGlvbiBpbnZlcnQoUmVsYXRpb25hbENvbmRp
dGlvbiBjb25kKQorICAgIHsKKyAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PFJlbGF0aW9uYWxD
b25kaXRpb24+KEFzc2VtYmxlcjo6aW52ZXJ0KHN0YXRpY19jYXN0PEFzc2VtYmxlcjo6Q29uZGl0
aW9uPihjb25kKSkpOworICAgIH0KKworICAgIHRlbXBsYXRlPFB0clRhZyByZXN1bHRUYWcsIFB0
clRhZyBsb2NhdGlvblRhZz4KKyAgICBzdGF0aWMgRnVuY3Rpb25QdHI8cmVzdWx0VGFnPiByZWFk
Q2FsbFRhcmdldChDb2RlTG9jYXRpb25DYWxsPGxvY2F0aW9uVGFnPikgeyByZXR1cm4geyB9OyB9
CisKKyAgICB0ZW1wbGF0ZTxQdHJUYWcgdGFnPgorICAgIHN0YXRpYyB2b2lkIHJlcGxhY2VXaXRo
Vk1IYWx0KENvZGVMb2NhdGlvbkxhYmVsPHRhZz4pIHsgfQorCisgICAgdGVtcGxhdGU8UHRyVGFn
IHN0YXJ0VGFnLCBQdHJUYWcgZGVzdFRhZz4KKyAgICBzdGF0aWMgdm9pZCByZXBsYWNlV2l0aEp1
bXAoQ29kZUxvY2F0aW9uTGFiZWw8c3RhcnRUYWc+LCBDb2RlTG9jYXRpb25MYWJlbDxkZXN0VGFn
PikgeyB9CisKKyAgICBzdGF0aWMgcHRyZGlmZl90IG1heEp1bXBSZXBsYWNlbWVudFNpemUoKQor
ICAgIHsKKyAgICAgICAgcmV0dXJuIEFzc2VtYmxlcjo6bWF4SnVtcFJlcGxhY2VtZW50U2l6ZSgp
OworICAgIH0KKworICAgIHN0YXRpYyBwdHJkaWZmX3QgcGF0Y2hhYmxlSnVtcFNpemUoKQorICAg
IHsKKyAgICAgICAgcmV0dXJuIEFzc2VtYmxlcjo6cGF0Y2hhYmxlSnVtcFNpemUoKTsKKyAgICB9
CisKKyAgICB0ZW1wbGF0ZTxQdHJUYWcgdGFnPgorICAgIHN0YXRpYyBDb2RlTG9jYXRpb25MYWJl
bDx0YWc+IHN0YXJ0T2ZCcmFuY2hQdHJXaXRoUGF0Y2hPblJlZ2lzdGVyKENvZGVMb2NhdGlvbkRh
dGFMYWJlbFB0cjx0YWc+KSB7IHJldHVybiB7IH07IH0KKworICAgIHRlbXBsYXRlPFB0clRhZyB0
YWc+CisgICAgc3RhdGljIENvZGVMb2NhdGlvbkxhYmVsPHRhZz4gc3RhcnRPZlBhdGNoYWJsZUJy
YW5jaFB0cldpdGhQYXRjaE9uQWRkcmVzcyhDb2RlTG9jYXRpb25EYXRhTGFiZWxQdHI8dGFnPikg
eyByZXR1cm4geyB9OyB9CisKKyAgICB0ZW1wbGF0ZTxQdHJUYWcgdGFnPgorICAgIHN0YXRpYyBD
b2RlTG9jYXRpb25MYWJlbDx0YWc+IHN0YXJ0T2ZQYXRjaGFibGVCcmFuY2gzMldpdGhQYXRjaE9u
QWRkcmVzcyhDb2RlTG9jYXRpb25EYXRhTGFiZWwzMjx0YWc+KSB7IHJldHVybiB7IH07IH0KKwor
ICAgIHRlbXBsYXRlPFB0clRhZyB0YWc+CisgICAgc3RhdGljIHZvaWQgcmV2ZXJ0SnVtcFJlcGxh
Y2VtZW50VG9CcmFuY2hQdHJXaXRoUGF0Y2goQ29kZUxvY2F0aW9uTGFiZWw8dGFnPiwgUmVnaXN0
ZXJJRCwgdm9pZCopIHsgfQorCisgICAgdGVtcGxhdGU8UHRyVGFnIHRhZz4KKyAgICBzdGF0aWMg
dm9pZCByZXZlcnRKdW1wUmVwbGFjZW1lbnRUb1BhdGNoYWJsZUJyYW5jaFB0cldpdGhQYXRjaChD
b2RlTG9jYXRpb25MYWJlbDx0YWc+LCBBZGRyZXNzLCB2b2lkKikgeyB9CisKKyAgICB0ZW1wbGF0
ZTxQdHJUYWcgdGFnPgorICAgIHN0YXRpYyB2b2lkIHJldmVydEp1bXBSZXBsYWNlbWVudFRvUGF0
Y2hhYmxlQnJhbmNoMzJXaXRoUGF0Y2goQ29kZUxvY2F0aW9uTGFiZWw8dGFnPiwgQWRkcmVzcywg
aW50MzJfdCkgeyB9CisKKyAgICB0ZW1wbGF0ZTxQdHJUYWcgY2FsbFRhZywgUHRyVGFnIGRlc3RU
YWc+CisgICAgc3RhdGljIHZvaWQgcmVwYXRjaENhbGwoQ29kZUxvY2F0aW9uQ2FsbDxjYWxsVGFn
PiwgQ29kZUxvY2F0aW9uTGFiZWw8ZGVzdFRhZz4pIHsgfQorCisgICAgdGVtcGxhdGU8UHRyVGFn
IGNhbGxUYWcsIFB0clRhZyBkZXN0VGFnPgorICAgIHN0YXRpYyB2b2lkIHJlcGF0Y2hDYWxsKENv
ZGVMb2NhdGlvbkNhbGw8Y2FsbFRhZz4sIEZ1bmN0aW9uUHRyPGRlc3RUYWc+KSB7IH0KKworICAg
IE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVS
TihqdW1wLCBKdW1wKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9P
UF9NRVRIT0QoZmFySnVtcCk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFU
RURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4obmVhckNhbGwsIENhbGwpOworICAgIE1BQ1JPX0FT
U0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihuZWFyVGFp
bENhbGwsIENhbGwpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09Q
X01FVEhPRF9XSVRIX1JFVFVSTih0aHJlYWRTYWZlUGF0Y2hhYmxlTmVhckNhbGwsIENhbGwpOwor
CisgICAgdm9pZCByZXQoKSB7IH0KKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBM
QVRFRF9OT09QX01FVEhPRCh0ZXN0OCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVN
UExBVEVEX05PT1BfTUVUSE9EKHRlc3QzMik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRf
VEVNUExBVEVEX05PT1BfTUVUSE9EKHRlc3Q2NCk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklT
Q1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoOCwgSnVtcCk7Cisg
ICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVU
VVJOKGJyYW5jaDMyLCBKdW1wKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFU
RURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoNjQsIEp1bXApOworCisgICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKGJyYW5j
aDMyV2l0aFBhdGNoLCBKdW1wKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFU
RURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoMzJXaXRoVW5hbGlnbmVkSGFsZldvcmRz
LCBKdW1wKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01F
VEhPRF9XSVRIX1JFVFVSTihicmFuY2hBZGQzMiwgSnVtcCk7CisgICAgTUFDUk9fQVNTRU1CTEVS
X1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKGJyYW5jaEFkZDY0LCBK
dW1wKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhP
RF9XSVRIX1JFVFVSTihicmFuY2hTdWIzMiwgSnVtcCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJ
U0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKGJyYW5jaFN1YjY0LCBKdW1w
KTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9X
SVRIX1JFVFVSTihicmFuY2hNdWwzMiwgSnVtcCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NW
NjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKGJyYW5jaE11bDY0LCBKdW1wKTsK
KworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRI
X1JFVFVSTihicmFuY2hOZWczMiwgSnVtcCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRf
VEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKGJyYW5jaE5lZzY0LCBKdW1wKTsKKwor
ICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JF
VFVSTihicmFuY2hUZXN0OCwgSnVtcCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVN
UExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKGJyYW5jaFRlc3QzMiwgSnVtcCk7CisgICAg
TUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJO
KGJyYW5jaFRlc3Q2NCwgSnVtcCk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1Q
TEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoUHRyLCBKdW1wKTsKKworICAgIE1B
Q1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTiht
b3ZlV2l0aFBhdGNoLCBEYXRhTGFiZWwzMik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRf
VEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKG1vdmVXaXRoUGF0Y2gsIERhdGFMYWJl
bFB0cik7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRI
T0RfV0lUSF9SRVRVUk4oYnJhbmNoUHRyV2l0aFBhdGNoLCBKdW1wKTsKKworICAgIE1BQ1JPX0FT
U0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihwYXRjaGFi
bGVCcmFuY2g4LCBQYXRjaGFibGVKdW1wKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9U
RU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4ocGF0Y2hhYmxlQnJhbmNoMzIsIFBhdGNo
YWJsZUp1bXApOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01F
VEhPRF9XSVRIX1JFVFVSTihwYXRjaGFibGVCcmFuY2g2NCwgUGF0Y2hhYmxlSnVtcCk7CisKKyAg
ICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRV
Uk4oYnJhbmNoRmxvYXQsIEp1bXApOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBM
QVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihicmFuY2hEb3VibGUsIEp1bXApOworICAgIE1B
Q1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihi
cmFuY2hEb3VibGVOb25aZXJvLCBKdW1wKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9U
RU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoRG91YmxlWmVyb09yTmFOLCBK
dW1wKTsKKworICAgIGVudW0gQnJhbmNoVHJ1bmNhdGVUeXBlIHsgQnJhbmNoSWZUcnVuY2F0ZUZh
aWxlZCwgQnJhbmNoSWZUcnVuY2F0ZVN1Y2Nlc3NmdWwgfTsKKyAgICBNQUNST19BU1NFTUJMRVJf
UklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoVHJ1bmNhdGVE
b3VibGVUb0ludDMyLCBKdW1wKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBM
QVRFRF9OT09QX01FVEhPRChicmFuY2hDb252ZXJ0RG91YmxlVG9JbnQzMik7CisKKyAgICBNQUNS
T19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oY2Fs
bCwgQ2FsbCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVU
SE9EKGNhbGxPcGVyYXRpb24pOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExB
VEVEX05PT1BfTUVUSE9EKGdldEVmZmVjdGl2ZUFkZHJlc3MpOworCisgICAgTUFDUk9fQVNTRU1C
TEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGxvYWRGbG9hdCk7CisgICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGxvYWREb3VibGUpOworCisg
ICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHN0b3JlRmxv
YXQpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChz
dG9yZURvdWJsZSk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9P
UF9NRVRIT0QoYWRkRmxvYXQpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRF
RF9OT09QX01FVEhPRChhZGREb3VibGUpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRf
VEVNUExBVEVEX05PT1BfTUVUSE9EKHN1YkZsb2F0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklT
Q1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qoc3ViRG91YmxlKTsKKworICAgIE1BQ1JPX0FTU0VN
QkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChtdWxGbG9hdCk7CisgICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKG11bERvdWJsZSk7CisKKyAg
ICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoZGl2RmxvYXQp
OworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChkaXZE
b3VibGUpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVU
SE9EKHNxcnRGbG9hdCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05P
T1BfTUVUSE9EKHNxcnREb3VibGUpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVN
UExBVEVEX05PT1BfTUVUSE9EKGFic0Zsb2F0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2
NF9URU1QTEFURURfTk9PUF9NRVRIT0QoYWJzRG91YmxlKTsKKworICAgIE1BQ1JPX0FTU0VNQkxF
Ul9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChjZWlsRmxvYXQpOworICAgIE1BQ1JPX0FT
U0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChjZWlsRG91YmxlKTsKKworICAg
IE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChmbG9vckZsb2F0
KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoZmxv
b3JEb3VibGUpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1Bf
TUVUSE9EKGFuZEZsb2F0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURf
Tk9PUF9NRVRIT0QoYW5kRG91YmxlKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RF
TVBMQVRFRF9OT09QX01FVEhPRChvckZsb2F0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2
NF9URU1QTEFURURfTk9PUF9NRVRIT0Qob3JEb3VibGUpOworCisgICAgTUFDUk9fQVNTRU1CTEVS
X1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKG5lZ2F0ZUZsb2F0KTsKKyAgICBNQUNST19B
U1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QobmVnYXRlRG91YmxlKTsKKwor
ICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChyb3VuZFRv
d2FyZE5lYXJlc3RJbnRGbG9hdCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExB
VEVEX05PT1BfTUVUSE9EKHJvdW5kVG93YXJkTmVhcmVzdEludERvdWJsZSk7CisgICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHJvdW5kVG93YXJkWmVyb0Zs
b2F0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qo
cm91bmRUb3dhcmRaZXJvRG91YmxlKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RF
TVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihjb21wYXJlRmxvYXQsIEp1bXApOworICAg
IE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVS
Tihjb21wYXJlRG91YmxlLCBKdW1wKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RF
TVBMQVRFRF9OT09QX01FVEhPRChjb252ZXJ0SW50MzJUb0Zsb2F0KTsKKyAgICBNQUNST19BU1NF
TUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoY29udmVydEludDMyVG9Eb3VibGUp
OworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChjb252
ZXJ0SW50NjRUb0Zsb2F0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURf
Tk9PUF9NRVRIT0QoY29udmVydEludDY0VG9Eb3VibGUpOworCisgICAgTUFDUk9fQVNTRU1CTEVS
X1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGNvbnZlcnRGbG9hdFRvRG91YmxlKTsKKyAg
ICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoY29udmVydERv
dWJsZVRvRmxvYXQpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05P
T1BfTUVUSE9EKHRydW5jYXRlRmxvYXRUb0ludDMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklT
Q1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QodHJ1bmNhdGVGbG9hdFRvVWludDMyKTsKKyAgICBN
QUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QodHJ1bmNhdGVGbG9h
dFRvSW50NjQpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01F
VEhPRCh0cnVuY2F0ZUZsb2F0VG9VaW50NjQpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0
X1RFTVBMQVRFRF9OT09QX01FVEhPRCh0cnVuY2F0ZURvdWJsZVRvSW50MzIpOworICAgIE1BQ1JP
X0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRCh0cnVuY2F0ZURvdWJsZVRv
VWludDMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRI
T0QodHJ1bmNhdGVEb3VibGVUb0ludDY0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9U
RU1QTEFURURfTk9PUF9NRVRIT0QodHJ1bmNhdGVEb3VibGVUb1VpbnQ2NCk7CisKKyAgICBNQUNS
T19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QocHVzaCk7CisgICAgTUFD
Uk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHB1c2hQYWlyKTsKKyAg
ICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QocHVzaFRvU2F2
ZSk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qo
cG9wKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qo
cG9wUGFpcik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVU
SE9EKHBvcFRvUmVzdG9yZSk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFU
RURfTk9PUF9NRVRIT0QoYWJvcnRXaXRoUmVhc29uKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9S
SVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihzdG9yZVB0cldpdGhQYXRj
aCwgRGF0YUxhYmVsUHRyKTsKKworICAgIHZvaWQgYnJlYWtwb2ludCh1aW50MTZfdCA9IDB4YzQ3
MSkgeyB9CisgICAgdm9pZCBub3AoKSB7IH0KKworICAgIHZvaWQgbWVtb3J5RmVuY2UoKSB7IH0K
KyAgICB2b2lkIHN0b3JlRmVuY2UoKSB7IH0KKyAgICB2b2lkIGxvYWRGZW5jZSgpIHsgfQorCisg
ICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVU
VVJOKGJyYW5jaEF0b21pY1dlYWtDQVM4LCBKdW1wTGlzdCk7CisgICAgTUFDUk9fQVNTRU1CTEVS
X1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKGJyYW5jaEF0b21pY1dl
YWtDQVMxNiwgSnVtcExpc3QpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRF
RF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihicmFuY2hBdG9taWNXZWFrQ0FTMzIsIEp1bXBMaXN0
KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lU
SF9SRVRVUk4oYnJhbmNoQXRvbWljV2Vha0NBUzY0LCBKdW1wTGlzdCk7CisKKyAgICB0ZW1wbGF0
ZTxQdHJUYWcgdGFnPgorICAgIHN0YXRpYyB2b2lkIGxpbmtDYWxsKHZvaWQqLCBDYWxsLCBGdW5j
dGlvblB0cjx0YWc+KSB7IH0KK307CisKK30gLy8gbmFtZXNwYWNlIEpTQworCisjdW5kZWYgTUFD
Uk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9ECisjdW5kZWYgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOCisKKyNl
bmRpZiAvLyBFTkFCTEUoQVNTRU1CTEVSKSAmJiBDUFUoUklTQ1Y2NCkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWF4RnJhbWVFeHRlbnRGb3JTbG93UGF0aENh
bGwuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWF4RnJhbWVFeHRlbnRGb3JT
bG93UGF0aENhbGwuaAppbmRleCA2ZGFjMDljMmM5MTNlYTA5YWU0YzViMGE2OTBjNTk2NTgxOTQ0
NzgwLi44NjJhNWQ3YzJiNjA0N2JhNDdjMWFhNzc5YjEzMzAwMGY5NDAxZjM4IDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01heEZyYW1lRXh0ZW50Rm9yU2xvd1Bh
dGhDYWxsLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYXhGcmFtZUV4
dGVudEZvclNsb3dQYXRoQ2FsbC5oCkBAIC01MCw3ICs1MCw3IEBAIHN0YXRpYyBjb25zdGV4cHIg
c2l6ZV90IG1heEZyYW1lRXh0ZW50Rm9yU2xvd1BhdGhDYWxsID0gMDsKIC8vIDcgYXJncyBvbiBz
dGFjayAoMjggYnl0ZXMpLgogc3RhdGljIGNvbnN0ZXhwciBzaXplX3QgbWF4RnJhbWVFeHRlbnRG
b3JTbG93UGF0aENhbGwgPSA0MDsKIAotI2VsaWYgQ1BVKEFSTTY0KSB8fCBDUFUoQVJNNjRFKQor
I2VsaWYgQ1BVKEFSTTY0KSB8fCBDUFUoQVJNNjRFKSB8fCBDUFUoUklTQ1Y2NCkKIC8vIEFsbCBh
cmdzIGluIHJlZ2lzdGVycy4KIHN0YXRpYyBjb25zdGV4cHIgc2l6ZV90IG1heEZyYW1lRXh0ZW50
Rm9yU2xvd1BhdGhDYWxsID0gMDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2Fzc2VtYmxlci9QZXJmTG9nLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIv
UGVyZkxvZy5jcHAKaW5kZXggYTQ5Y2NkN2ZkNGFmNDY0MjE0OThmNDAyNGE2NmYwNTAxYTY0ZmNh
OS4uNDZiYzg1OWQ5MTJhNTI3Njk0NjE2ZmIyN2U3ZGExNGZhMjRkNWU4MyAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9QZXJmTG9nLmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL1BlcmZMb2cuY3BwCkBAIC03Nyw2ICs3Nyw4IEBAIHN0
YXRpYyBjb25zdGV4cHIgdWludDMyX3QgZWxmTWFjaGluZSA9IEVNX01JUFNfUlMzX0xFOwogI2Vs
c2UKIHN0YXRpYyBjb25zdGV4cHIgdWludDMyX3QgZWxmTWFjaGluZSA9IEVNX01JUFM7CiAjZW5k
aWYKKyNlbGlmIENQVShSSVNDVjY0KQorc3RhdGljIGNvbnN0ZXhwciB1aW50MzJfdCBlbGZNYWNo
aW5lID0gRU1fUklTQ1Y7CiAjZW5kaWYKIAogfSAvLyBuYW1lc3BhY2UgQ29uc3RhbnRzCmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL1Byb2JlQ29udGV4dC5oIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9Qcm9iZUNvbnRleHQuaAppbmRleCA4ZDUw
YmJlNThiOWYzOWJjOTBmNzc1YTI2Mzc4OGUyYmVlMTVhYmJiLi41ZDRlMzJkYzYyZjVhMjk0ZDI5
MTYyZTBkYjc0MTJhNDBhMmM5Y2VlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
YXNzZW1ibGVyL1Byb2JlQ29udGV4dC5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3Nl
bWJsZXIvUHJvYmVDb250ZXh0LmgKQEAgLTExNiw2ICsxMTYsOCBAQCBpbmxpbmUgdm9pZComIENQ
VVN0YXRlOjpwYygpCiAgICAgcmV0dXJuICpyZWludGVycHJldF9jYXN0PHZvaWQqKj4oJmdwcihB
Uk1SZWdpc3RlcnM6OnBjKSk7CiAjZWxpZiBDUFUoTUlQUykKICAgICByZXR1cm4gKnJlaW50ZXJw
cmV0X2Nhc3Q8dm9pZCoqPigmc3ByKE1JUFNSZWdpc3RlcnM6OnBjKSk7CisjZWxpZiBDUFUoUklT
Q1Y2NCkKKyAgICByZXR1cm4gKnJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCoqPigmc3ByKFJJU0NWNjRS
ZWdpc3RlcnM6OnBjKSk7CiAjZWxzZQogI2Vycm9yICJVbnN1cHBvcnRlZCBDUFUiCiAjZW5kaWYK
QEAgLTEzMSw2ICsxMzMsOCBAQCBpbmxpbmUgdm9pZComIENQVVN0YXRlOjpmcCgpCiAgICAgcmV0
dXJuICpyZWludGVycHJldF9jYXN0PHZvaWQqKj4oJmdwcihBUk1SZWdpc3RlcnM6OmZwKSk7CiAj
ZWxpZiBDUFUoTUlQUykKICAgICByZXR1cm4gKnJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCoqPigmZ3By
KE1JUFNSZWdpc3RlcnM6OmZwKSk7CisjZWxpZiBDUFUoUklTQ1Y2NCkKKyAgICByZXR1cm4gKnJl
aW50ZXJwcmV0X2Nhc3Q8dm9pZCoqPigmZ3ByKFJJU0NWNjRSZWdpc3RlcnM6OmZwKSk7CiAjZWxz
ZQogI2Vycm9yICJVbnN1cHBvcnRlZCBDUFUiCiAjZW5kaWYKQEAgLTE0Niw2ICsxNTAsOCBAQCBp
bmxpbmUgdm9pZComIENQVVN0YXRlOjpzcCgpCiAgICAgcmV0dXJuICpyZWludGVycHJldF9jYXN0
PHZvaWQqKj4oJmdwcihBUk1SZWdpc3RlcnM6OnNwKSk7CiAjZWxpZiBDUFUoTUlQUykKICAgICBy
ZXR1cm4gKnJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCoqPigmZ3ByKE1JUFNSZWdpc3RlcnM6OnNwKSk7
CisjZWxpZiBDUFUoUklTQ1Y2NCkKKyAgICByZXR1cm4gKnJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCoq
PigmZ3ByKFJJU0NWNjRSZWdpc3RlcnM6OnNwKSk7CiAjZWxzZQogI2Vycm9yICJVbnN1cHBvcnRl
ZCBDUFUiCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJs
ZXIvUklTQ1Y2NEFzc2VtYmxlci5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9S
SVNDVjY0QXNzZW1ibGVyLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTI4ZjA4MGYyMGRkOWU4OTY0ZTE2YmRkYzcz
MmM2ZTk2M2ZhNTMxNwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9h
c3NlbWJsZXIvUklTQ1Y2NEFzc2VtYmxlci5oCkBAIC0wLDAgKzEsMjQ3IEBACisvKgorICogQ29w
eXJpZ2h0IChDKSAyMDIxIElnYWxpYSBTLkwuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRI
RQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaWYgRU5BQkxFKEFTU0VNQkxFUikgJiYg
Q1BVKFJJU0NWNjQpCisKKyNpbmNsdWRlICJBc3NlbWJsZXJCdWZmZXIuaCIKKyNpbmNsdWRlICJS
SVNDVjY0UmVnaXN0ZXJzLmgiCisKK25hbWVzcGFjZSBKU0MgeworCituYW1lc3BhY2UgUklTQ1Y2
NFJlZ2lzdGVycyB7CisKK3R5cGVkZWYgZW51bSA6IGludDhfdCB7CisgICAgeDAsCisgICAgeDEs
CisgICAgeDIsCisgICAgeDMsCisgICAgeDQsCisgICAgeDUsCisgICAgeDYsCisgICAgeDcsCisg
ICAgeDgsCisgICAgeDksCisgICAgeDEwLAorICAgIHgxMSwKKyAgICB4MTIsCisgICAgeDEzLAor
ICAgIHgxNCwKKyAgICB4MTUsCisgICAgeDE2LAorICAgIHgxNywKKyAgICB4MTgsCisgICAgeDE5
LAorICAgIHgyMCwKKyAgICB4MjEsCisgICAgeDIyLAorICAgIHgyMywKKyAgICB4MjQsCisgICAg
eDI1LAorICAgIHgyNiwKKyAgICB4MjcsCisgICAgeDI4LAorICAgIHgyOSwKKyAgICB4MzAsCisg
ICAgeDMxLAorICAgIEludmFsaWRHUFJSZWcgPSAtMSwKKworICAgIHplcm8gPSB4MCwKKyAgICBy
YSA9IHgxLAorICAgIHNwID0geDIsCisgICAgZ3AgPSB4MywKKyAgICB0cCA9IHg0LAorICAgIGZw
ID0geDgsCit9IFJlZ2lzdGVySUQ7CisKK3R5cGVkZWYgZW51bSA6IGludDhfdCB7CisgICAgcGMs
CisgICAgSW52YWxpZFNQUmVnID0gLTEsCit9IFNQUmVnaXN0ZXJJRDsKKwordHlwZWRlZiBlbnVt
IDogaW50OF90IHsKKyAgICBmMCwKKyAgICBmMSwKKyAgICBmMiwKKyAgICBmMywKKyAgICBmNCwK
KyAgICBmNSwKKyAgICBmNiwKKyAgICBmNywKKyAgICBmOCwKKyAgICBmOSwKKyAgICBmMTAsCisg
ICAgZjExLAorICAgIGYxMiwKKyAgICBmMTMsCisgICAgZjE0LAorICAgIGYxNSwKKyAgICBmMTYs
CisgICAgZjE3LAorICAgIGYxOCwKKyAgICBmMTksCisgICAgZjIwLAorICAgIGYyMSwKKyAgICBm
MjIsCisgICAgZjIzLAorICAgIGYyNCwKKyAgICBmMjUsCisgICAgZjI2LAorICAgIGYyNywKKyAg
ICBmMjgsCisgICAgZjI5LAorICAgIGYzMCwKKyAgICBmMzEsCisgICAgSW52YWxpZEZQUlJlZyA9
IC0xLAorfSBGUFJlZ2lzdGVySUQ7CisKK30gLy8gbmFtZXNwYWNlIFJJU0NWNjRSZWdpc3RlcnMK
KworY2xhc3MgUklTQ1Y2NEFzc2VtYmxlciB7CitwdWJsaWM6CisgICAgdXNpbmcgUmVnaXN0ZXJJ
RCA9IFJJU0NWNjRSZWdpc3RlcnM6OlJlZ2lzdGVySUQ7CisgICAgdXNpbmcgU1BSZWdpc3RlcklE
ID0gUklTQ1Y2NFJlZ2lzdGVyczo6U1BSZWdpc3RlcklEOworICAgIHVzaW5nIEZQUmVnaXN0ZXJJ
RCA9IFJJU0NWNjRSZWdpc3RlcnM6OkZQUmVnaXN0ZXJJRDsKKworICAgIHN0YXRpYyBjb25zdGV4
cHIgUmVnaXN0ZXJJRCBmaXJzdFJlZ2lzdGVyKCkgeyByZXR1cm4gUklTQ1Y2NFJlZ2lzdGVyczo6
eDA7IH0KKyAgICBzdGF0aWMgY29uc3RleHByIFJlZ2lzdGVySUQgbGFzdFJlZ2lzdGVyKCkgeyBy
ZXR1cm4gUklTQ1Y2NFJlZ2lzdGVyczo6eDMxOyB9CisgICAgc3RhdGljIGNvbnN0ZXhwciB1bnNp
Z25lZCBudW1iZXJPZlJlZ2lzdGVycygpIHsgcmV0dXJuIGxhc3RSZWdpc3RlcigpIC0gZmlyc3RS
ZWdpc3RlcigpICsgMTsgfQorCisgICAgc3RhdGljIGNvbnN0ZXhwciBTUFJlZ2lzdGVySUQgZmly
c3RTUFJlZ2lzdGVyKCkgeyByZXR1cm4gUklTQ1Y2NFJlZ2lzdGVyczo6cGM7IH0KKyAgICBzdGF0
aWMgY29uc3RleHByIFNQUmVnaXN0ZXJJRCBsYXN0U1BSZWdpc3RlcigpIHsgcmV0dXJuIFJJU0NW
NjRSZWdpc3RlcnM6OnBjOyB9CisgICAgc3RhdGljIGNvbnN0ZXhwciB1bnNpZ25lZCBudW1iZXJP
ZlNQUmVnaXN0ZXJzKCkgeyByZXR1cm4gbGFzdFNQUmVnaXN0ZXIoKSAtIGZpcnN0U1BSZWdpc3Rl
cigpICsgMTsgfQorCisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJlZ2lzdGVySUQgZmlyc3RGUFJl
Z2lzdGVyKCkgeyByZXR1cm4gUklTQ1Y2NFJlZ2lzdGVyczo6ZjA7IH0KKyAgICBzdGF0aWMgY29u
c3RleHByIEZQUmVnaXN0ZXJJRCBsYXN0RlBSZWdpc3RlcigpIHsgcmV0dXJuIFJJU0NWNjRSZWdp
c3RlcnM6OmYzMTsgfQorICAgIHN0YXRpYyBjb25zdGV4cHIgdW5zaWduZWQgbnVtYmVyT2ZGUFJl
Z2lzdGVycygpIHsgcmV0dXJuIGxhc3RGUFJlZ2lzdGVyKCkgLSBmaXJzdEZQUmVnaXN0ZXIoKSAr
IDE7IH0KKworICAgIHN0YXRpYyBjb25zdCBjaGFyKiBncHJOYW1lKFJlZ2lzdGVySUQgaWQpCisg
ICAgeworICAgICAgICBBU1NFUlQoaWQgPj0gZmlyc3RSZWdpc3RlcigpICYmIGlkIDw9IGxhc3RS
ZWdpc3RlcigpKTsKKyAgICAgICAgc3RhdGljIGNvbnN0IGNoYXIqIGNvbnN0IG5hbWVGb3JSZWdp
c3RlcltudW1iZXJPZlJlZ2lzdGVycygpXSA9IHsKKyAgICAgICAgICAgICJ4MCIsICJ4MSIsICJ4
MiIsICJ4MyIsICJ4NCIsICJ4NSIsICJ4NiIsICJ4NyIsICJ4OCIsICJ4OSIsICJ4MTAiLCAieDEx
IiwgIngxMiIsICJ4MTMiLCAieDE0IiwgIngxNSIsCisgICAgICAgICAgICAieDE2IiwgIngxNyIs
ICJ4MTgiLCAieDE5IiwgIngyMCIsICJ4MjEiLCAieDIyIiwgIngyMyIsICJ4MjQiLCAieDI1Iiwg
IngyNiIsICJ4MjciLCAieDI4IiwgIngyOSIsICJ4MzAiLCAieDMxIiwKKyAgICAgICAgfTsKKyAg
ICAgICAgcmV0dXJuIG5hbWVGb3JSZWdpc3RlcltpZF07CisgICAgfQorCisgICAgc3RhdGljIGNv
bnN0IGNoYXIqIHNwck5hbWUoU1BSZWdpc3RlcklEIGlkKQorICAgIHsKKyAgICAgICAgQVNTRVJU
KGlkID49IGZpcnN0U1BSZWdpc3RlcigpICYmIGlkIDw9IGxhc3RTUFJlZ2lzdGVyKCkpOworICAg
ICAgICBzdGF0aWMgY29uc3QgY2hhciogY29uc3QgbmFtZUZvclJlZ2lzdGVyW251bWJlck9mU1BS
ZWdpc3RlcnMoKV0gPSB7ICJwYyIsIH07CisgICAgICAgIHJldHVybiBuYW1lRm9yUmVnaXN0ZXJb
aWRdOworICAgIH0KKworICAgIHN0YXRpYyBjb25zdCBjaGFyKiBmcHJOYW1lKEZQUmVnaXN0ZXJJ
RCBpZCkKKyAgICB7CisgICAgICAgIEFTU0VSVChpZCA+PSBmaXJzdEZQUmVnaXN0ZXIoKSAmJiBp
ZCA8PSBsYXN0RlBSZWdpc3RlcigpKTsKKyAgICAgICAgc3RhdGljIGNvbnN0IGNoYXIqIGNvbnN0
IG5hbWVGb3JSZWdpc3RlcltudW1iZXJPZkZQUmVnaXN0ZXJzKCldID0geworICAgICAgICAgICAg
ImYwIiwgImYxIiwgImYyIiwgImYzIiwgImY0IiwgImY1IiwgImY2IiwgImY3IiwgImY4IiwgImY5
IiwgImYxMCIsICJmMTEiLCAiZjEyIiwgImYxMyIsICJmMTQiLCAiZjE1IiwKKyAgICAgICAgICAg
ICJmMTYiLCAiZjE3IiwgImYxOCIsICJmMTkiLCAiZjIwIiwgImYyMSIsICJmMjIiLCAiZjIzIiwg
ImYyNCIsICJmMjUiLCAiZjI2IiwgImYyNyIsICJmMjgiLCAiZjI5IiwgImYzMCIsICJmMzEiLAor
ICAgICAgICB9OworICAgICAgICByZXR1cm4gbmFtZUZvclJlZ2lzdGVyW2lkXTsKKyAgICB9CisK
KyAgICBSSVNDVjY0QXNzZW1ibGVyKCkgeyB9CisKKyAgICBBc3NlbWJsZXJCdWZmZXImIGJ1ZmZl
cigpIHsgcmV0dXJuIG1fYnVmZmVyOyB9CisKKyAgICB0eXBlZGVmIGVudW0geworICAgICAgICBD
b25kaXRpb25FUSwKKyAgICAgICAgQ29uZGl0aW9uTkUsCisgICAgICAgIENvbmRpdGlvbkhTLCBD
b25kaXRpb25DUyA9IENvbmRpdGlvbkhTLAorICAgICAgICBDb25kaXRpb25MTywgQ29uZGl0aW9u
Q0MgPSBDb25kaXRpb25MTywKKyAgICAgICAgQ29uZGl0aW9uTUksCisgICAgICAgIENvbmRpdGlv
blBMLAorICAgICAgICBDb25kaXRpb25WUywKKyAgICAgICAgQ29uZGl0aW9uVkMsCisgICAgICAg
IENvbmRpdGlvbkhJLAorICAgICAgICBDb25kaXRpb25MUywKKyAgICAgICAgQ29uZGl0aW9uR0Us
CisgICAgICAgIENvbmRpdGlvbkxULAorICAgICAgICBDb25kaXRpb25HVCwKKyAgICAgICAgQ29u
ZGl0aW9uTEUsCisgICAgICAgIENvbmRpdGlvbkFMLAorICAgICAgICBDb25kaXRpb25JbnZhbGlk
CisgICAgfSBDb25kaXRpb247CisKKyAgICBzdGF0aWMgQ29uZGl0aW9uIGludmVydChDb25kaXRp
b24gY29uZCkKKyAgICB7CisgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxDb25kaXRpb24+KGNv
bmQgXiAxKTsKKyAgICB9CisKKyAgICBzdGF0aWMgdm9pZCogZ2V0UmVsb2NhdGVkQWRkcmVzcyh2
b2lkKiBjb2RlLCBBc3NlbWJsZXJMYWJlbCBsYWJlbCkKKyAgICB7CisgICAgICAgIEFTU0VSVChs
YWJlbC5pc1NldCgpKTsKKyAgICAgICAgcmV0dXJuIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KHJl
aW50ZXJwcmV0X2Nhc3Q8cHRyZGlmZl90Pihjb2RlKSArIGxhYmVsLm9mZnNldCgpKTsKKyAgICB9
CisKKyAgICBzaXplX3QgY29kZVNpemUoKSBjb25zdCB7IHJldHVybiBtX2J1ZmZlci5jb2RlU2l6
ZSgpOyB9CisKKyAgICBzdGF0aWMgdW5zaWduZWQgZ2V0Q2FsbFJldHVybk9mZnNldChBc3NlbWJs
ZXJMYWJlbCkgeyByZXR1cm4gMDsgfQorCisgICAgQXNzZW1ibGVyTGFiZWwgbGFiZWxJZ25vcmlu
Z1dhdGNocG9pbnRzKCkgeyByZXR1cm4geyB9OyB9CisgICAgQXNzZW1ibGVyTGFiZWwgbGFiZWxG
b3JXYXRjaHBvaW50KCkgeyByZXR1cm4geyB9OyB9CisgICAgQXNzZW1ibGVyTGFiZWwgbGFiZWwo
KSB7IHJldHVybiB7IH07IH0KKworICAgIHN0YXRpYyB2b2lkIGxpbmtKdW1wKHZvaWQqLCBBc3Nl
bWJsZXJMYWJlbCwgdm9pZCopIHsgfQorCisgICAgc3RhdGljIHZvaWQgbGlua0p1bXAoQXNzZW1i
bGVyTGFiZWwsIEFzc2VtYmxlckxhYmVsKSB7IH0KKworICAgIHN0YXRpYyB2b2lkIGxpbmtDYWxs
KHZvaWQqLCBBc3NlbWJsZXJMYWJlbCwgdm9pZCopIHsgfQorCisgICAgc3RhdGljIHZvaWQgbGlu
a1BvaW50ZXIodm9pZCosIEFzc2VtYmxlckxhYmVsLCB2b2lkKikgeyB9CisKKyAgICBzdGF0aWMg
cHRyZGlmZl90IG1heEp1bXBSZXBsYWNlbWVudFNpemUoKQorICAgIHsKKyAgICAgICAgcmV0dXJu
IDQ7CisgICAgfQorCisgICAgc3RhdGljIGNvbnN0ZXhwciBwdHJkaWZmX3QgcGF0Y2hhYmxlSnVt
cFNpemUoKQorICAgIHsKKyAgICAgICAgcmV0dXJuIDQ7CisgICAgfQorCisgICAgc3RhdGljIHZv
aWQgcmVwYXRjaFBvaW50ZXIodm9pZCosIHZvaWQqKSB7IH0KKworICAgIHN0YXRpYyB2b2lkIHJl
bGlua0p1bXAodm9pZCosIHZvaWQqKSB7IH0KKyAgICBzdGF0aWMgdm9pZCByZWxpbmtKdW1wVG9O
b3Aodm9pZCopIHsgfQorICAgIHN0YXRpYyB2b2lkIHJlbGlua0NhbGwodm9pZCosIHZvaWQqKSB7
IH0KKworICAgIHVuc2lnbmVkIGRlYnVnT2Zmc2V0KCkgeyByZXR1cm4gbV9idWZmZXIuZGVidWdP
ZmZzZXQoKTsgfQorCisgICAgc3RhdGljIHZvaWQgY2FjaGVGbHVzaCh2b2lkKiwgc2l6ZV90KSB7
IH0KKworICAgIHVzaW5nIENvcHlGdW5jdGlvbiA9IHZvaWQqKCYpKHZvaWQqLCBjb25zdCB2b2lk
Kiwgc2l6ZV90KTsKKyAgICB0ZW1wbGF0ZSA8Q29weUZ1bmN0aW9uIGNvcHk+CisgICAgc3RhdGlj
IHZvaWQgZmlsbE5vcHModm9pZCosIHNpemVfdCkgeyB9CisKKyAgICBBc3NlbWJsZXJCdWZmZXIg
bV9idWZmZXI7Cit9OworCit9IC8vIG5hbWVzcGFjZSBKU0MKKworI2VuZGlmIC8vIEVOQUJMRShB
U1NFTUJMRVIpICYmIENQVShSSVNDVjY0KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2Fzc2VtYmxlci9SSVNDVjY0UmVnaXN0ZXJzLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
YXNzZW1ibGVyL1JJU0NWNjRSZWdpc3RlcnMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41MDA2NGU4MWU1NzgyMzE0
MGUzNDgwYWQ4NWI0MGJjYjNkMzE3MDA2Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2Fzc2VtYmxlci9SSVNDVjY0UmVnaXN0ZXJzLmgKQEAgLTAsMCArMSw5NiBAQAor
LyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBJZ2FsaWEgUy5MLgorICoKKyAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAor
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIu
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQor
ICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBM
QVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2RlZmluZSBSZWdpc3Rl
ck5hbWVzIFJJU0NWNjRSZWdpc3RlcnMKKworI2RlZmluZSBGT1JfRUFDSF9HUF9SRUdJU1RFUiht
YWNybykgXAorICAgIG1hY3JvKHplcm8sICJ6ZXJvIiwgMSwgMCkgICAgICAgXAorICAgIG1hY3Jv
KHJhLCAicmEiLCAxLCAwKSAgICAgICAgICAgXAorICAgIG1hY3JvKHNwLCAic3AiLCAxLCAxKSAg
ICAgICAgICAgXAorICAgIG1hY3JvKGdwLCAiZ3AiLCAxLCAwKSAgICAgICAgICAgXAorICAgIG1h
Y3JvKHRwLCAidHAiLCAxLCAwKSAgICAgICAgICAgXAorICAgIG1hY3JvKHg1LCAieDUiLCAwLCAw
KSAgICAgICAgICAgXAorICAgIG1hY3JvKHg2LCAieDYiLCAwLCAwKSAgICAgICAgICAgXAorICAg
IG1hY3JvKHg3LCAieDciLCAwLCAwKSAgICAgICAgICAgXAorICAgIG1hY3JvKGZwLCAiZnAiLCAx
LCAxKSAgICAgICAgICAgXAorICAgIG1hY3JvKHg5LCAieDkiLCAwLCAxKSAgICAgICAgICAgXAor
ICAgIG1hY3JvKHgxMCwgIngxMCIsIDAsIDApICAgICAgICAgXAorICAgIG1hY3JvKHgxMSwgIngx
MSIsIDAsIDApICAgICAgICAgXAorICAgIG1hY3JvKHgxMiwgIngxMiIsIDAsIDApICAgICAgICAg
XAorICAgIG1hY3JvKHgxMywgIngxMyIsIDAsIDApICAgICAgICAgXAorICAgIG1hY3JvKHgxNCwg
IngxNCIsIDAsIDApICAgICAgICAgXAorICAgIG1hY3JvKHgxNSwgIngxNSIsIDAsIDApICAgICAg
ICAgXAorICAgIG1hY3JvKHgxNiwgIngxNiIsIDAsIDApICAgICAgICAgXAorICAgIG1hY3JvKHgx
NywgIngxNyIsIDAsIDApICAgICAgICAgXAorICAgIG1hY3JvKHgxOCwgIngxOCIsIDAsIDEpICAg
ICAgICAgXAorICAgIG1hY3JvKHgxOSwgIngxOSIsIDAsIDEpICAgICAgICAgXAorICAgIG1hY3Jv
KHgyMCwgIngyMCIsIDAsIDEpICAgICAgICAgXAorICAgIG1hY3JvKHgyMSwgIngyMSIsIDAsIDEp
ICAgICAgICAgXAorICAgIG1hY3JvKHgyMiwgIngyMiIsIDAsIDEpICAgICAgICAgXAorICAgIG1h
Y3JvKHgyMywgIngyMyIsIDAsIDEpICAgICAgICAgXAorICAgIG1hY3JvKHgyNCwgIngyNCIsIDAs
IDEpICAgICAgICAgXAorICAgIG1hY3JvKHgyNSwgIngyNSIsIDAsIDEpICAgICAgICAgXAorICAg
IG1hY3JvKHgyNiwgIngyNiIsIDAsIDEpICAgICAgICAgXAorICAgIG1hY3JvKHgyNywgIngyNyIs
IDAsIDEpICAgICAgICAgXAorICAgIG1hY3JvKHgyOCwgIngyOCIsIDAsIDApICAgICAgICAgXAor
ICAgIG1hY3JvKHgyOSwgIngyOSIsIDAsIDApICAgICAgICAgXAorICAgIG1hY3JvKHgzMCwgIngz
MCIsIDAsIDApICAgICAgICAgXAorICAgIG1hY3JvKHgzMSwgIngzMSIsIDAsIDApCisKKyNkZWZp
bmUgRk9SX0VBQ0hfRlBfUkVHSVNURVIobWFjcm8pIFwKKyAgICBtYWNybyhmMCwgImYwIiwgMCwg
MCkgICAgICAgICAgIFwKKyAgICBtYWNybyhmMSwgImYxIiwgMCwgMCkgICAgICAgICAgIFwKKyAg
ICBtYWNybyhmMiwgImYyIiwgMCwgMCkgICAgICAgICAgIFwKKyAgICBtYWNybyhmMywgImYzIiwg
MCwgMCkgICAgICAgICAgIFwKKyAgICBtYWNybyhmNCwgImY0IiwgMCwgMCkgICAgICAgICAgIFwK
KyAgICBtYWNybyhmNSwgImY1IiwgMCwgMCkgICAgICAgICAgIFwKKyAgICBtYWNybyhmNiwgImY2
IiwgMCwgMCkgICAgICAgICAgIFwKKyAgICBtYWNybyhmNywgImY3IiwgMCwgMCkgICAgICAgICAg
IFwKKyAgICBtYWNybyhmOCwgImY4IiwgMCwgMSkgICAgICAgICAgIFwKKyAgICBtYWNybyhmOSwg
ImY5IiwgMCwgMSkgICAgICAgICAgIFwKKyAgICBtYWNybyhmMTAsICJmMTAiLCAwLCAwKSAgICAg
ICAgIFwKKyAgICBtYWNybyhmMTEsICJmMTEiLCAwLCAwKSAgICAgICAgIFwKKyAgICBtYWNybyhm
MTIsICJmMTIiLCAwLCAwKSAgICAgICAgIFwKKyAgICBtYWNybyhmMTMsICJmMTMiLCAwLCAwKSAg
ICAgICAgIFwKKyAgICBtYWNybyhmMTQsICJmMTQiLCAwLCAwKSAgICAgICAgIFwKKyAgICBtYWNy
byhmMTUsICJmMTUiLCAwLCAwKSAgICAgICAgIFwKKyAgICBtYWNybyhmMTYsICJmMTYiLCAwLCAw
KSAgICAgICAgIFwKKyAgICBtYWNybyhmMTcsICJmMTciLCAwLCAwKSAgICAgICAgIFwKKyAgICBt
YWNybyhmMTgsICJmMTgiLCAwLCAxKSAgICAgICAgIFwKKyAgICBtYWNybyhmMTksICJmMTkiLCAw
LCAxKSAgICAgICAgIFwKKyAgICBtYWNybyhmMjAsICJmMjAiLCAwLCAxKSAgICAgICAgIFwKKyAg
ICBtYWNybyhmMjEsICJmMjEiLCAwLCAxKSAgICAgICAgIFwKKyAgICBtYWNybyhmMjIsICJmMjIi
LCAwLCAxKSAgICAgICAgIFwKKyAgICBtYWNybyhmMjMsICJmMjMiLCAwLCAxKSAgICAgICAgIFwK
KyAgICBtYWNybyhmMjQsICJmMjQiLCAwLCAxKSAgICAgICAgIFwKKyAgICBtYWNybyhmMjUsICJm
MjUiLCAwLCAxKSAgICAgICAgIFwKKyAgICBtYWNybyhmMjYsICJmMjYiLCAwLCAxKSAgICAgICAg
IFwKKyAgICBtYWNybyhmMjcsICJmMjciLCAwLCAxKSAgICAgICAgIFwKKyAgICBtYWNybyhmMjgs
ICJmMjgiLCAwLCAwKSAgICAgICAgIFwKKyAgICBtYWNybyhmMjksICJmMjkiLCAwLCAwKSAgICAg
ICAgIFwKKyAgICBtYWNybyhmMzAsICJmMzAiLCAwLCAwKSAgICAgICAgIFwKKyAgICBtYWNybyhm
MzEsICJmMzEiLCAwLCAwKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9G
UFJJbmZvLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0ZQUkluZm8uaAppbmRleCBmNzk5
OTAwMTc2NzA3ZjU5N2Q0NTJiM2RiNDQ3MTNjYWYzNWY5M2M3Li5hY2M3NGRjOWJjNGE0Y2FkNGI2
MzdiNWNjN2YwZDBkOWM1MTEwZDMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aml0L0ZQUkluZm8uaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0ZQUkluZm8uaApA
QCAtMzI5LDYgKzMyOSwxMDQgQEAgcHVibGljOgogCiAjZW5kaWYgLy8gQ1BVKE1JUFMpCiAKKyNp
ZiBDUFUoUklTQ1Y2NCkKKworY2xhc3MgRlBSSW5mbyB7CitwdWJsaWM6CisgICAgdHlwZWRlZiBG
UFJSZWcgUmVnaXN0ZXJUeXBlOworICAgIHN0YXRpYyBjb25zdGV4cHIgdW5zaWduZWQgbnVtYmVy
T2ZSZWdpc3RlcnMgPSAyMDsKKyAgICBzdGF0aWMgY29uc3RleHByIHVuc2lnbmVkIG51bWJlck9m
QXJndW1lbnRSZWdpc3RlcnMgPSA4OworCisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBS
ZWdUMCA9IFJJU0NWNjRSZWdpc3RlcnM6OmYwOworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVn
IGZwUmVnVDEgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMTsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQ
UlJlZyBmcFJlZ1QyID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjI7CisgICAgc3RhdGljIGNvbnN0ZXhw
ciBGUFJSZWcgZnBSZWdUMyA9IFJJU0NWNjRSZWdpc3RlcnM6OmYzOworICAgIHN0YXRpYyBjb25z
dGV4cHIgRlBSUmVnIGZwUmVnVDQgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmNDsKKyAgICBzdGF0aWMg
Y29uc3RleHByIEZQUlJlZyBmcFJlZ1Q1ID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjU7CisgICAgc3Rh
dGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdUNiA9IFJJU0NWNjRSZWdpc3RlcnM6OmY2OworICAg
IHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGZwUmVnVDcgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmNzsK
KyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ1Q4ID0gUklTQ1Y2NFJlZ2lzdGVyczo6
ZjEwOworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGZwUmVnVDkgPSBSSVNDVjY0UmVnaXN0
ZXJzOjpmMTE7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdUMTAgPSBSSVNDVjY0
UmVnaXN0ZXJzOjpmMTI7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdUMTEgPSBS
SVNDVjY0UmVnaXN0ZXJzOjpmMTM7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdU
MTIgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMTQ7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcg
ZnBSZWdUMTMgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMTU7CisgICAgc3RhdGljIGNvbnN0ZXhwciBG
UFJSZWcgZnBSZWdUMTQgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMTY7CisgICAgc3RhdGljIGNvbnN0
ZXhwciBGUFJSZWcgZnBSZWdUMTUgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMTc7CisgICAgc3RhdGlj
IGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdUMTYgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMjg7CisgICAg
c3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdUMTcgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMjk7
CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdUMTggPSBSSVNDVjY0UmVnaXN0ZXJz
OjpmMzA7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdUMTkgPSBSSVNDVjY0UmVn
aXN0ZXJzOjpmMzE7CisKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ0NTMCA9IFJJ
U0NWNjRSZWdpc3RlcnM6OmY4OworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGZwUmVnQ1Mx
ID0gUklTQ1Y2NFJlZ2lzdGVyczo6Zjk7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBS
ZWdDUzIgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMTg7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJS
ZWcgZnBSZWdDUzMgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMTk7CisgICAgc3RhdGljIGNvbnN0ZXhw
ciBGUFJSZWcgZnBSZWdDUzQgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMjA7CisgICAgc3RhdGljIGNv
bnN0ZXhwciBGUFJSZWcgZnBSZWdDUzUgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMjE7CisgICAgc3Rh
dGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdDUzYgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMjI7Cisg
ICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdDUzcgPSBSSVNDVjY0UmVnaXN0ZXJzOjpm
MjM7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdDUzggPSBSSVNDVjY0UmVnaXN0
ZXJzOjpmMjQ7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdDUzkgPSBSSVNDVjY0
UmVnaXN0ZXJzOjpmMjU7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdDUzEwID0g
UklTQ1Y2NFJlZ2lzdGVyczo6ZjI2OworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGZwUmVn
Q1MxMSA9IFJJU0NWNjRSZWdpc3RlcnM6OmYyNzsKKworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBS
UmVnIGFyZ3VtZW50RlBSMCA9IFJJU0NWNjRSZWdpc3RlcnM6OmYxMDsKKyAgICBzdGF0aWMgY29u
c3RleHByIEZQUlJlZyBhcmd1bWVudEZQUjEgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMTE7CisgICAg
c3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgYXJndW1lbnRGUFIyID0gUklTQ1Y2NFJlZ2lzdGVyczo6
ZjEyOworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGFyZ3VtZW50RlBSMyA9IFJJU0NWNjRS
ZWdpc3RlcnM6OmYxMzsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBhcmd1bWVudEZQUjQg
PSBSSVNDVjY0UmVnaXN0ZXJzOjpmMTQ7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgYXJn
dW1lbnRGUFI1ID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjE1OworICAgIHN0YXRpYyBjb25zdGV4cHIg
RlBSUmVnIGFyZ3VtZW50RlBSNiA9IFJJU0NWNjRSZWdpc3RlcnM6OmYxNjsKKyAgICBzdGF0aWMg
Y29uc3RleHByIEZQUlJlZyBhcmd1bWVudEZQUjcgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMTc7CisK
KyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyByZXR1cm5WYWx1ZUZQUiA9IFJJU0NWNjRSZWdp
c3RlcnM6OmYxMDsKKworICAgIHN0YXRpYyBGUFJSZWcgdG9SZWdpc3Rlcih1bnNpZ25lZCBpbmRl
eCkKKyAgICB7CisgICAgICAgIEFTU0VSVChpbmRleCA8IG51bWJlck9mUmVnaXN0ZXJzKTsKKyAg
ICAgICAgc3RhdGljIGNvbnN0IEZQUlJlZyByZWdpc3RlckZvckluZGV4W251bWJlck9mUmVnaXN0
ZXJzXSA9IHsKKyAgICAgICAgICAgIGZwUmVnVDAsIGZwUmVnVDEsIGZwUmVnVDIsIGZwUmVnVDMs
IGZwUmVnVDQsIGZwUmVnVDUsIGZwUmVnVDYsIGZwUmVnVDcsCisgICAgICAgICAgICBmcFJlZ1Q4
LCBmcFJlZ1Q5LCBmcFJlZ1QxMCwgZnBSZWdUMTEsIGZwUmVnVDEyLCBmcFJlZ1QxMywgZnBSZWdU
MTQsIGZwUmVnVDE1LAorICAgICAgICAgICAgZnBSZWdUMTYsIGZwUmVnVDE3LCBmcFJlZ1QxOCwg
ZnBSZWdUMTksCisgICAgICAgIH07CisgICAgICAgIHJldHVybiByZWdpc3RlckZvckluZGV4W2lu
ZGV4XTsKKyAgICB9CisKKyAgICBzdGF0aWMgRlBSUmVnIHRvQXJndW1lbnRSZWdpc3Rlcih1bnNp
Z25lZCBpbmRleCkKKyAgICB7CisgICAgICAgIEFTU0VSVChpbmRleCA8IG51bWJlck9mQXJndW1l
bnRSZWdpc3RlcnMpOworICAgICAgICBzdGF0aWMgY29uc3QgRlBSUmVnIHJlZ2lzdGVyRm9ySW5k
ZXhbbnVtYmVyT2ZBcmd1bWVudFJlZ2lzdGVyc10gPSB7CisgICAgICAgICAgICBhcmd1bWVudEZQ
UjAsIGFyZ3VtZW50RlBSMSwgYXJndW1lbnRGUFIyLCBhcmd1bWVudEZQUjMsCisgICAgICAgICAg
ICBhcmd1bWVudEZQUjQsIGFyZ3VtZW50RlBSNSwgYXJndW1lbnRGUFI2LCBhcmd1bWVudEZQUjcs
CisgICAgICAgIH07CisgICAgICAgIHJldHVybiByZWdpc3RlckZvckluZGV4W2luZGV4XTsKKyAg
ICB9CisKKyAgICBzdGF0aWMgdW5zaWduZWQgdG9JbmRleChGUFJSZWcgcmVnKQorICAgIHsKKyAg
ICAgICAgQVNTRVJUKHJlZyAhPSBJbnZhbGlkRlBSUmVnKTsKKyAgICAgICAgQVNTRVJUKHN0YXRp
Y19jYXN0PGludD4ocmVnKSA8IDMyKTsKKyAgICAgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGlu
ZGV4Rm9yUmVnaXN0ZXJbMzJdID0geworICAgICAgICAgICAgMCwgMSwgMiwgMywgNCwgNSwgNiwg
NywKKyAgICAgICAgICAgIEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LCA4LCA5LCAxMCwgMTEs
IDEyLCAxMywKKyAgICAgICAgICAgIDE0LCAxNSwgSW52YWxpZEluZGV4LCBJbnZhbGlkSW5kZXgs
IEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LCBJbnZhbGlkSW5kZXgsIEludmFsaWRJbmRleCwK
KyAgICAgICAgICAgIEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LCBJbnZhbGlkSW5kZXgsIElu
dmFsaWRJbmRleCwgMTYsIDE3LCAxOCwgMTksCisgICAgICAgIH07CisgICAgICAgIHJldHVybiBp
bmRleEZvclJlZ2lzdGVyW3JlZ107CisgICAgfQorCisgICAgc3RhdGljIGNvbnN0IGNoYXIqIGRl
YnVnTmFtZShGUFJSZWcgcmVnKQorICAgIHsKKyAgICAgICAgQVNTRVJUKHJlZyAhPSBJbnZhbGlk
RlBSUmVnKTsKKyAgICAgICAgcmV0dXJuIE1hY3JvQXNzZW1ibGVyOjpmcHJOYW1lKHJlZyk7Cisg
ICAgfQorCisgICAgc3RhdGljIGNvbnN0ZXhwciB1bnNpZ25lZCBJbnZhbGlkSW5kZXggPSAweGZm
ZmZmZmZmOworfTsKKworI2VuZGlmIC8vIENQVShSSVNDVjY0KQorCiAvLyBXZSB1c2UgdGhpcyBo
YWNrIHRvIGdldCB0aGUgRlBSSW5mbyBmcm9tIHRoZSBGUFJSZWcgdHlwZSBpbiB0ZW1wbGF0ZXMg
YmVjYXVzZSBvdXIgY29kZSBpcyBiYWQgYW5kIHdlIHNob3VsZCBmZWVsIGJhZC4uCiBjb25zdGV4
cHIgRlBSSW5mbyB0b0luZm9Gcm9tUmVnKEZQUlJlZykgeyByZXR1cm4gRlBSSW5mbygpOyB9CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvR1BSSW5mby5oIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2ppdC9HUFJJbmZvLmgKaW5kZXggMDY3YWJmZjFkNmFkMjAwNzU0NTE4
MDA3N2IwYzRhNTVjNzc3MjI2Ni4uZTRhOTYwNTc5MGVjODJhMTRmMjFiMjQwYzVhZDQ3NTkxODFl
YTQ2OSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9HUFJJbmZvLmgKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9HUFJJbmZvLmgKQEAgLTc5OCw2ICs3OTgsMTE2
IEBAIHB1YmxpYzoKIAogI2VuZGlmIC8vIENQVShNSVBTKQogCisjaWYgQ1BVKFJJU0NWNjQpCisK
KyNkZWZpbmUgTlVNQkVSX09GX0FSR1VNRU5UX1JFR0lTVEVSUyA4dQorI2RlZmluZSBOVU1CRVJf
T0ZfQ0FMTEVFX1NBVkVTX1JFR0lTVEVSUyAyM3UKKworY2xhc3MgR1BSSW5mbyB7CitwdWJsaWM6
CisgICAgdHlwZWRlZiBHUFJSZWcgUmVnaXN0ZXJUeXBlOworICAgIHN0YXRpYyBjb25zdGV4cHIg
dW5zaWduZWQgbnVtYmVyT2ZSZWdpc3RlcnMgPSAxNTsKKyAgICBzdGF0aWMgY29uc3RleHByIHVu
c2lnbmVkIG51bWJlck9mQXJndW1lbnRSZWdpc3RlcnMgPSA4OworCisgICAgc3RhdGljIGNvbnN0
ZXhwciBHUFJSZWcgY2FsbEZyYW1lUmVnaXN0ZXIgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmcDsKKyAg
ICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBudW1iZXJUYWdSZWdpc3RlciA9IFJJU0NWNjRSZWdp
c3RlcnM6OngyNTsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBub3RDZWxsTWFza1JlZ2lz
dGVyID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDI2OworCisgICAgLy8gVGVtcG9yYXJ5IHJlZ2lzdGVy
cworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ1QwID0gUklTQ1Y2NFJlZ2lzdGVyczo6
eDEwOworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ1QxID0gUklTQ1Y2NFJlZ2lzdGVy
czo6eDExOworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ1QyID0gUklTQ1Y2NFJlZ2lz
dGVyczo6eDEyOworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ1QzID0gUklTQ1Y2NFJl
Z2lzdGVyczo6eDEzOworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ1Q0ID0gUklTQ1Y2
NFJlZ2lzdGVyczo6eDE0OworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ1Q1ID0gUklT
Q1Y2NFJlZ2lzdGVyczo6eDE1OworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ1Q2ID0g
UklTQ1Y2NFJlZ2lzdGVyczo6eDE2OworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ1Q3
ID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDE3OworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJl
Z1Q4ID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDU7CisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcg
cmVnVDkgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4NjsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJl
ZyByZWdUMTAgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4NzsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQ
UlJlZyByZWdUMTEgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4Mjg7CisgICAgc3RhdGljIGNvbnN0ZXhw
ciBHUFJSZWcgcmVnVDEyID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDI5OworICAgIHN0YXRpYyBjb25z
dGV4cHIgR1BSUmVnIHJlZ1QxMyA9IFJJU0NWNjRSZWdpc3RlcnM6OngzMDsKKyAgICBzdGF0aWMg
Y29uc3RleHByIEdQUlJlZyByZWdUMTQgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MzE7CisKKyAgICBz
dGF0aWMgY29uc3RleHByIEdQUlJlZyByZWdDUzAgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4OTsKKyAg
ICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyByZWdDUzEgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MTg7
CisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgcmVnQ1MyID0gUklTQ1Y2NFJlZ2lzdGVyczo6
eDE5OworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ0NTMyA9IFJJU0NWNjRSZWdpc3Rl
cnM6OngyMDsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyByZWdDUzQgPSBSSVNDVjY0UmVn
aXN0ZXJzOjp4MjE7CisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgcmVnQ1M1ID0gUklTQ1Y2
NFJlZ2lzdGVyczo6eDIyOworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ0NTNiA9IFJJ
U0NWNjRSZWdpc3RlcnM6OngyMzsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyByZWdDUzcg
PSBSSVNDVjY0UmVnaXN0ZXJzOjp4MjQ7CisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgcmVn
Q1M4ID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDI1OworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVn
IHJlZ0NTOSA9IFJJU0NWNjRSZWdpc3RlcnM6OngyNjsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQ
UlJlZyByZWdDUzEwID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDI3OworCisgICAgc3RhdGljIGNvbnN0
ZXhwciBHUFJSZWcgYXJndW1lbnRHUFIwID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDEwOworICAgIHN0
YXRpYyBjb25zdGV4cHIgR1BSUmVnIGFyZ3VtZW50R1BSMSA9IFJJU0NWNjRSZWdpc3RlcnM6Ongx
MTsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBhcmd1bWVudEdQUjIgPSBSSVNDVjY0UmVn
aXN0ZXJzOjp4MTI7CisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgYXJndW1lbnRHUFIzID0g
UklTQ1Y2NFJlZ2lzdGVyczo6eDEzOworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIGFyZ3Vt
ZW50R1BSNCA9IFJJU0NWNjRSZWdpc3RlcnM6OngxNDsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQ
UlJlZyBhcmd1bWVudEdQUjUgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MTU7CisgICAgc3RhdGljIGNv
bnN0ZXhwciBHUFJSZWcgYXJndW1lbnRHUFI2ID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDE2OworICAg
IHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIGFyZ3VtZW50R1BSNyA9IFJJU0NWNjRSZWdpc3RlcnM6
OngxNzsKKworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIG5vbkFyZ0dQUjAgPSBSSVNDVjY0
UmVnaXN0ZXJzOjp4NTsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBub25BcmdHUFIxID0g
UklTQ1Y2NFJlZ2lzdGVyczo6eDY7CisKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyByZXR1
cm5WYWx1ZUdQUiA9IFJJU0NWNjRSZWdpc3RlcnM6OngxMDsKKyAgICBzdGF0aWMgY29uc3RleHBy
IEdQUlJlZyByZXR1cm5WYWx1ZUdQUjIgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MTE7CisKKyAgICBz
dGF0aWMgY29uc3RleHByIEdQUlJlZyBub25QcmVzZXJ2ZWROb25SZXR1cm5HUFIgPSBSSVNDVjY0
UmVnaXN0ZXJzOjp4MTI7CisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgbm9uUHJlc2VydmVk
Tm9uQXJndW1lbnRHUFIwID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDU7CisgICAgc3RhdGljIGNvbnN0
ZXhwciBHUFJSZWcgbm9uUHJlc2VydmVkTm9uQXJndW1lbnRHUFIxID0gUklTQ1Y2NFJlZ2lzdGVy
czo6eDY7CisKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyB3YXNtU2NyYXRjaEdQUjAgPSBS
SVNDVjY0UmVnaXN0ZXJzOjp4NjsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyB3YXNtU2Ny
YXRjaEdQUjEgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4NzsKKworICAgIHN0YXRpYyBHUFJSZWcgdG9S
ZWdpc3Rlcih1bnNpZ25lZCBpbmRleCkKKyAgICB7CisgICAgICAgIEFTU0VSVChpbmRleCA8IG51
bWJlck9mUmVnaXN0ZXJzKTsKKyAgICAgICAgc3RhdGljIGNvbnN0IEdQUlJlZyByZWdpc3RlckZv
ckluZGV4W251bWJlck9mUmVnaXN0ZXJzXSA9IHsKKyAgICAgICAgICAgIHJlZ1QwLCByZWdUMSwg
cmVnVDIsIHJlZ1QzLCByZWdUNCwgcmVnVDUsIHJlZ1Q2LCByZWdUNywKKyAgICAgICAgICAgIHJl
Z1Q4LCByZWdUOSwgcmVnVDEwLCByZWdUMTEsIHJlZ1QxMiwgcmVnVDEzLCByZWdUMTQsCisgICAg
ICAgIH07CisgICAgICAgIHJldHVybiByZWdpc3RlckZvckluZGV4W2luZGV4XTsKKyAgICB9CisK
KyAgICBzdGF0aWMgR1BSUmVnIHRvQXJndW1lbnRSZWdpc3Rlcih1bnNpZ25lZCBpbmRleCkKKyAg
ICB7CisgICAgICAgIEFTU0VSVChpbmRleCA8IG51bWJlck9mQXJndW1lbnRSZWdpc3RlcnMpOwor
ICAgICAgICBzdGF0aWMgY29uc3QgR1BSUmVnIHJlZ2lzdGVyRm9ySW5kZXhbbnVtYmVyT2ZBcmd1
bWVudFJlZ2lzdGVyc10gPSB7CisgICAgICAgICAgICBhcmd1bWVudEdQUjAsIGFyZ3VtZW50R1BS
MSwgYXJndW1lbnRHUFIyLCBhcmd1bWVudEdQUjMsCisgICAgICAgICAgICBhcmd1bWVudEdQUjQs
IGFyZ3VtZW50R1BSNSwgYXJndW1lbnRHUFI2LCBhcmd1bWVudEdQUjcsCisgICAgICAgIH07Cisg
ICAgICAgIHJldHVybiByZWdpc3RlckZvckluZGV4W2luZGV4XTsKKyAgICB9CisKKyAgICBzdGF0
aWMgdW5zaWduZWQgdG9JbmRleChHUFJSZWcgcmVnKQorICAgIHsKKyAgICAgICAgQVNTRVJUKHJl
ZyAhPSBJbnZhbGlkR1BSUmVnKTsKKyAgICAgICAgQVNTRVJUKHN0YXRpY19jYXN0PGludD4ocmVn
KSA8IDMyKTsKKyAgICAgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGluZGV4Rm9yUmVnaXN0ZXJb
MzJdID0geworICAgICAgICAgICAgSW52YWxpZEluZGV4LCBJbnZhbGlkSW5kZXgsIEludmFsaWRJ
bmRleCwgSW52YWxpZEluZGV4LCBJbnZhbGlkSW5kZXgsIDgsIDksIDEwLAorICAgICAgICAgICAg
SW52YWxpZEluZGV4LCBJbnZhbGlkSW5kZXgsIDAsIDEsIDIsIDMsIDQsIDUsCisgICAgICAgICAg
ICA2LCA3LCBJbnZhbGlkSW5kZXgsIEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LCBJbnZhbGlk
SW5kZXgsIEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LAorICAgICAgICAgICAgSW52YWxpZElu
ZGV4LCBJbnZhbGlkSW5kZXgsIEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LCAxMSwgMTIsIDEz
LCAxNCwKKyAgICAgICAgfTsKKyAgICAgICAgcmV0dXJuIGluZGV4Rm9yUmVnaXN0ZXJbcmVnXTsK
KyAgICB9CisKKyAgICBzdGF0aWMgY29uc3QgY2hhciogZGVidWdOYW1lKEdQUlJlZyByZWcpCisg
ICAgeworICAgICAgICBBU1NFUlQocmVnICE9IEludmFsaWRHUFJSZWcpOworICAgICAgICByZXR1
cm4gTWFjcm9Bc3NlbWJsZXI6Omdwck5hbWUocmVnKTsKKyAgICB9CisKKyAgICBzdGF0aWMgY29u
c3RleHByIHVuc2lnbmVkIEludmFsaWRJbmRleCA9IDB4ZmZmZmZmZmY7Cit9OworCisjZW5kaWYg
Ly8gQ1BVKFJJU0NWNjQpCisKIC8vIFRoZSBiYXNlbGluZSBKSVQgdXNlcyAiYWNjdW11bGF0b3Ii
IHN0eWxlIGV4ZWN1dGlvbiB3aXRoIHJlZ1QwIChmb3IgNjQtYml0KQogLy8gYW5kIHJlZ1QwICsg
cmVnVDEgKGZvciAzMi1iaXQpIHNlcnZpbmcgYXMgdGhlIGFjY3VtdWxhdG9yIHJlZ2lzdGVyKHMp
IGZvcgogLy8gcGFzc2luZyByZXN1bHRzIG9mIG9uZSBvcGNvZGUgdG8gdGhlIG5leHQuIEhlbmNl
OgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9SZWdpc3RlclNldC5jcHAg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L1JlZ2lzdGVyU2V0LmNwcAppbmRleCBhNzYyNzIy
N2JmYjMxOWVjYzk2YzQ3NjJjNGMwM2Y0ZTkxN2Q2NTEwLi5jNTI5ZDc0YWZlYzhlYTg2NmMwODY0
NjQ5NTRiZjc5YTEwOGIzZDkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0
L1JlZ2lzdGVyU2V0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L1JlZ2lzdGVy
U2V0LmNwcApAQCAtMTU1LDYgKzE1NSwzMCBAQCBSZWdpc3RlclNldCBSZWdpc3RlclNldDo6dm1D
YWxsZWVTYXZlUmVnaXN0ZXJzKCkKICNlbGlmIENQVShBUk1fVEhVTUIyKSB8fCBDUFUoTUlQUykK
ICAgICByZXN1bHQuc2V0KEdQUkluZm86OnJlZ0NTMCk7CiAgICAgcmVzdWx0LnNldChHUFJJbmZv
OjpyZWdDUzEpOworI2VsaWYgQ1BVKFJJU0NWNjQpCisgICAgcmVzdWx0LnNldChHUFJJbmZvOjpy
ZWdDUzApOworICAgIHJlc3VsdC5zZXQoR1BSSW5mbzo6cmVnQ1MxKTsKKyAgICByZXN1bHQuc2V0
KEdQUkluZm86OnJlZ0NTMik7CisgICAgcmVzdWx0LnNldChHUFJJbmZvOjpyZWdDUzMpOworICAg
IHJlc3VsdC5zZXQoR1BSSW5mbzo6cmVnQ1M0KTsKKyAgICByZXN1bHQuc2V0KEdQUkluZm86OnJl
Z0NTNSk7CisgICAgcmVzdWx0LnNldChHUFJJbmZvOjpyZWdDUzYpOworICAgIHJlc3VsdC5zZXQo
R1BSSW5mbzo6cmVnQ1M3KTsKKyAgICByZXN1bHQuc2V0KEdQUkluZm86OnJlZ0NTOCk7CisgICAg
cmVzdWx0LnNldChHUFJJbmZvOjpyZWdDUzkpOworICAgIHJlc3VsdC5zZXQoR1BSSW5mbzo6cmVn
Q1MxMCk7CisgICAgcmVzdWx0LnNldChGUFJJbmZvOjpmcFJlZ0NTMCk7CisgICAgcmVzdWx0LnNl
dChGUFJJbmZvOjpmcFJlZ0NTMSk7CisgICAgcmVzdWx0LnNldChGUFJJbmZvOjpmcFJlZ0NTMik7
CisgICAgcmVzdWx0LnNldChGUFJJbmZvOjpmcFJlZ0NTMyk7CisgICAgcmVzdWx0LnNldChGUFJJ
bmZvOjpmcFJlZ0NTNCk7CisgICAgcmVzdWx0LnNldChGUFJJbmZvOjpmcFJlZ0NTNSk7CisgICAg
cmVzdWx0LnNldChGUFJJbmZvOjpmcFJlZ0NTNik7CisgICAgcmVzdWx0LnNldChGUFJJbmZvOjpm
cFJlZ0NTNyk7CisgICAgcmVzdWx0LnNldChGUFJJbmZvOjpmcFJlZ0NTOCk7CisgICAgcmVzdWx0
LnNldChGUFJJbmZvOjpmcFJlZ0NTOSk7CisgICAgcmVzdWx0LnNldChGUFJJbmZvOjpmcFJlZ0NT
MTApOworICAgIHJlc3VsdC5zZXQoRlBSSW5mbzo6ZnBSZWdDUzExKTsKICNlbmRpZgogICAgIHJl
dHVybiByZXN1bHQ7CiB9CkBAIC0xOTIsNyArMjE2LDcgQEAgUmVnaXN0ZXJTZXQgUmVnaXN0ZXJT
ZXQ6OmxsaW50QmFzZWxpbmVDYWxsZWVTYXZlUmVnaXN0ZXJzKCkKICNlbGlmIENQVShBUk1fVEhV
TUIyKQogICAgIHJlc3VsdC5zZXQoR1BSSW5mbzo6cmVnQ1MwKTsKICAgICByZXN1bHQuc2V0KEdQ
UkluZm86OnJlZ0NTMSk7Ci0jZWxpZiBDUFUoQVJNNjQpCisjZWxpZiBDUFUoQVJNNjQpIHx8IENQ
VShSSVNDVjY0KQogICAgIHJlc3VsdC5zZXQoR1BSSW5mbzo6cmVnQ1M2KTsKICAgICByZXN1bHQu
c2V0KEdQUkluZm86OnJlZ0NTNyk7CiAgICAgc3RhdGljX2Fzc2VydChHUFJJbmZvOjpyZWdDUzgg
PT0gR1BSSW5mbzo6bnVtYmVyVGFnUmVnaXN0ZXIsICIiKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9sbGludC9MTEludERhdGEuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9s
bGludC9MTEludERhdGEuaAppbmRleCAzZjhlODhkYjZiYmFkYmQ0NTE1MThjMTI4Y2E2ZDZkNWVk
MWViYzUyLi40NzFmYjVkMmZkM2I4MDkzOTZhNTIzY2UzM2ZjYjJhODU5ODM2YWNiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTExJbnREYXRhLmgKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2xsaW50L0xMSW50RGF0YS5oCkBAIC0zODEsNyArMzgxLDcgQEAgc3Ry
dWN0IFJlZ2lzdGVycyB7CiAjZWxpZiBDUFUoWDg2XzY0KSAmJiBPUyhXSU5ET1dTKQogICAgIHN0
YXRpYyBjb25zdGV4cHIgR1BSUmVnIG1ldGFkYXRhVGFibGVHUFIgPSBHUFJJbmZvOjpyZWdDUzM7
CiAgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgcGJHUFIgPSBHUFJJbmZvOjpyZWdDUzQ7Ci0j
ZWxpZiBDUFUoQVJNNjQpCisjZWxpZiBDUFUoQVJNNjQpIHx8IENQVShSSVNDVjY0KQogICAgIHN0
YXRpYyBjb25zdGV4cHIgR1BSUmVnIG1ldGFkYXRhVGFibGVHUFIgPSBHUFJJbmZvOjpyZWdDUzY7
CiAgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgcGJHUFIgPSBHUFJJbmZvOjpyZWdDUzc7CiAj
ZWxpZiBDUFUoTUlQUykgfHwgQ1BVKEFSTV9USFVNQjIpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvbGxpbnQvTExJbnRPZmZsaW5lQXNtQ29uZmlnLmggYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvbGxpbnQvTExJbnRPZmZsaW5lQXNtQ29uZmlnLmgKaW5kZXggMzNiZTQwNTg3YTI1
YmE0NTI2MzU4YTM4Nzc0YjA5YjBkZGM3N2I1Yy4uOGI5ZTU3ZDMzZjczMjQ5YjliMTFjYjc2MzM3
ZTVjYzA0MWI0MjI1MyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xM
SW50T2ZmbGluZUFzbUNvbmZpZy5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9sbGludC9M
TEludE9mZmxpbmVBc21Db25maWcuaApAQCAtNDcsNiArNDcsNyBAQAogI2RlZmluZSBPRkZMSU5F
X0FTTV9BUk12N2sgMAogI2RlZmluZSBPRkZMSU5FX0FTTV9BUk12N3MgMAogI2RlZmluZSBPRkZM
SU5FX0FTTV9NSVBTIDAKKyNkZWZpbmUgT0ZGTElORV9BU01fUklTQ1Y2NCAwCiAKICNlbHNlIC8v
IEVOQUJMRShDX0xPT1ApCiAKQEAgLTExNSw2ICsxMTYsMTIgQEAKICNkZWZpbmUgT0ZGTElORV9B
U01fQVJNNjRFIDAKICNlbmRpZgogCisjaWYgQ1BVKFJJU0NWNjQpCisjZGVmaW5lIE9GRkxJTkVf
QVNNX1JJU0NWNjQgMQorI2Vsc2UKKyNkZWZpbmUgT0ZGTElORV9BU01fUklTQ1Y2NCAwCisjZW5k
aWYKKwogI2lmIENQVShNSVBTKQogI2lmZGVmIFdURl9NSVBTX1BJQwogI2RlZmluZSBTKHgpICN4
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTG93TGV2ZWxJbnRlcnBy
ZXRlci5hc20gYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTG93TGV2ZWxJbnRlcnByZXRl
ci5hc20KaW5kZXggODM0MmIzYTJiZGZkYWI1MGI0NmQ2Nzk2NThiMjJjMmFlZDdhOTJkOC4uYmFm
MGM4OWI1MjU5MjRjMzIxNzMwM2EwN2IwYmMzNTg1YTk1OWRjZSAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL2xsaW50L0xvd0xldmVsSW50ZXJwcmV0ZXIuYXNtCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9sbGludC9Mb3dMZXZlbEludGVycHJldGVyLmFzbQpAQCAtMjE5LDcg
KzIxOSw3IEBAIGVuZAogCiBjb25zdCBtYXhGcmFtZUV4dGVudEZvclNsb3dQYXRoQ2FsbCA9IGNv
bnN0ZXhwciBtYXhGcmFtZUV4dGVudEZvclNsb3dQYXRoQ2FsbAogCi1pZiBYODZfNjQgb3IgWDg2
XzY0X1dJTiBvciBBUk02NCBvciBBUk02NEUKK2lmIFg4Nl82NCBvciBYODZfNjRfV0lOIG9yIEFS
TTY0IG9yIEFSTTY0RSBvciBSSVNDVjY0CiAgICAgY29uc3QgQ2FsbGVlU2F2ZVNwYWNlQXNWaXJ0
dWFsUmVnaXN0ZXJzID0gNAogZWxzaWYgQ19MT09QIG9yIENfTE9PUF9XSU4KICAgICBjb25zdCBD
YWxsZWVTYXZlU3BhY2VBc1ZpcnR1YWxSZWdpc3RlcnMgPSAxCkBAIC0yNzYsNyArMjc2LDcgQEAg
Y29uc3QgVk1UcmFwc0FzeW5jRXZlbnRzID0gY29uc3RleHByIFZNVHJhcHM6OkFzeW5jRXZlbnRz
CiAjICAgVGhpcyByZXF1aXJlcyBhbiBhZGQgYmVmb3JlIHRoZSBjYWxsLCBhbmQgYSBzdWIgYWZ0
ZXIuCiBpZiBKU1ZBTFVFNjQKICAgICBjb25zdCBQQyA9IHQ0ICMgV2hlbiBjaGFuZ2luZyB0aGlz
LCBtYWtlIHN1cmUgTExJbnRQQyBpcyB1cCB0byBkYXRlIGluIExMSW50UENSYW5nZXMuaAotICAg
IGlmIEFSTTY0IG9yIEFSTTY0RQorICAgIGlmIEFSTTY0IG9yIEFSTTY0RSBvciBSSVNDVjY0CiAg
ICAgICAgIGNvbnN0IG1ldGFkYXRhVGFibGUgPSBjc3I2CiAgICAgICAgIGNvbnN0IFBCID0gY3Ny
NwogICAgICAgICBjb25zdCBudW1iZXJUYWcgPSBjc3I4CkBAIC03MzAsNyArNzMwLDcgQEAgbWFj
cm8gY2hlY2tTdGFja1BvaW50ZXJBbGlnbm1lbnQodGVtcFJlZywgbG9jYXRpb24pCiAgICAgZW5k
CiBlbmQKIAotaWYgQ19MT09QIG9yIENfTE9PUF9XSU4gb3IgQVJNNjQgb3IgQVJNNjRFIG9yIFg4
Nl82NCBvciBYODZfNjRfV0lOCitpZiBDX0xPT1Agb3IgQ19MT09QX1dJTiBvciBBUk02NCBvciBB
Uk02NEUgb3IgWDg2XzY0IG9yIFg4Nl82NF9XSU4gb3IgUklTQ1Y2NAogICAgIGNvbnN0IENhbGxl
ZVNhdmVSZWdpc3RlckNvdW50ID0gMAogZWxzaWYgQVJNdjcKICAgICBjb25zdCBDYWxsZWVTYXZl
UmVnaXN0ZXJDb3VudCA9IDcKQEAgLTc0Nyw3ICs3NDcsNyBAQCBjb25zdCBDYWxsZWVSZWdpc3Rl
clNhdmVTaXplID0gQ2FsbGVlU2F2ZVJlZ2lzdGVyQ291bnQgKiBNYWNoaW5lUmVnaXN0ZXJTaXpl
CiBjb25zdCBWTUVudHJ5VG90YWxGcmFtZVNpemUgPSAoQ2FsbGVlUmVnaXN0ZXJTYXZlU2l6ZSAr
IHNpemVvZiBWTUVudHJ5UmVjb3JkICsgU3RhY2tBbGlnbm1lbnQgLSAxKSAmIH5TdGFja0FsaWdu
bWVudE1hc2sKIAogbWFjcm8gcHVzaENhbGxlZVNhdmVzKCkKLSAgICBpZiBDX0xPT1Agb3IgQ19M
T09QX1dJTiBvciBBUk02NCBvciBBUk02NEUgb3IgWDg2XzY0IG9yIFg4Nl82NF9XSU4KKyAgICBp
ZiBDX0xPT1Agb3IgQ19MT09QX1dJTiBvciBBUk02NCBvciBBUk02NEUgb3IgWDg2XzY0IG9yIFg4
Nl82NF9XSU4gb3IgUklTQ1Y2NAogICAgIGVsc2lmIEFSTXY3CiAgICAgICAgIGVtaXQgInB1c2gg
e3I0LXI2LCByOC1yMTF9IgogICAgIGVsc2lmIE1JUFMKQEAgLTc2OSw3ICs3NjksNyBAQCBtYWNy
byBwdXNoQ2FsbGVlU2F2ZXMoKQogZW5kCiAKIG1hY3JvIHBvcENhbGxlZVNhdmVzKCkKLSAgICBp
ZiBDX0xPT1Agb3IgQ19MT09QX1dJTiBvciBBUk02NCBvciBBUk02NEUgb3IgWDg2XzY0IG9yIFg4
Nl82NF9XSU4KKyAgICBpZiBDX0xPT1Agb3IgQ19MT09QX1dJTiBvciBBUk02NCBvciBBUk02NEUg
b3IgWDg2XzY0IG9yIFg4Nl82NF9XSU4gb3IgUklTQ1Y2NAogICAgIGVsc2lmIEFSTXY3CiAgICAg
ICAgIGVtaXQgInBvcCB7cjQtcjYsIHI4LXIxMX0iCiAgICAgZWxzaWYgTUlQUwpAQCAtNzk0LDcg
Kzc5NCw3IEBAIG1hY3JvIHByZXNlcnZlQ2FsbGVyUENBbmRDRlIoKQogICAgICAgICBwdXNoIGNm
cgogICAgIGVsc2lmIFg4NiBvciBYODZfV0lOIG9yIFg4Nl82NCBvciBYODZfNjRfV0lOCiAgICAg
ICAgIHB1c2ggY2ZyCi0gICAgZWxzaWYgQVJNNjQgb3IgQVJNNjRFCisgICAgZWxzaWYgQVJNNjQg
b3IgQVJNNjRFIG9yIFJJU0NWNjQKICAgICAgICAgcHVzaCBjZnIsIGxyCiAgICAgZWxzZQogICAg
ICAgICBlcnJvcgpAQCAtODA5LDcgKzgwOSw3IEBAIG1hY3JvIHJlc3RvcmVDYWxsZXJQQ0FuZENG
UigpCiAgICAgICAgIHBvcCBscgogICAgIGVsc2lmIFg4NiBvciBYODZfV0lOIG9yIFg4Nl82NCBv
ciBYODZfNjRfV0lOCiAgICAgICAgIHBvcCBjZnIKLSAgICBlbHNpZiBBUk02NCBvciBBUk02NEUK
KyAgICBlbHNpZiBBUk02NCBvciBBUk02NEUgb3IgUklTQ1Y2NAogICAgICAgICBwb3AgbHIsIGNm
cgogICAgIGVuZAogZW5kCkBAIC04NDcsNiArODQ3LDExIEBAIG1hY3JvIHByZXNlcnZlQ2FsbGVl
U2F2ZXNVc2VkQnlMTEludCgpCiAgICAgICAgIHN0b3JlcCBjc3I1LCAtMTZbY2ZyXQogICAgICAg
ICBzdG9yZXAgY3NyNCwgLTI0W2Nmcl0KICAgICAgICAgc3RvcmVwIGNzcjMsIC0zMltjZnJdCisg
ICAgZWxzaWYgUklTQ1Y2NAorICAgICAgICBzdG9yZXAgY3NyOSwgLThbY2ZyXQorICAgICAgICBz
dG9yZXAgY3NyOCwgLTE2W2Nmcl0KKyAgICAgICAgc3RvcmVwIGNzcjcsIC0yNFtjZnJdCisgICAg
ICAgIHN0b3JlcCBjc3I2LCAtMzJbY2ZyXQogICAgIGVuZAogZW5kCiAKQEAgLTg3NiwxMSArODgx
LDE2IEBAIG1hY3JvIHJlc3RvcmVDYWxsZWVTYXZlc1VzZWRCeUxMSW50KCkKICAgICAgICAgbG9h
ZHAgLTI0W2Nmcl0sIGNzcjQKICAgICAgICAgbG9hZHAgLTE2W2Nmcl0sIGNzcjUKICAgICAgICAg
bG9hZHAgLThbY2ZyXSwgY3NyNgorICAgIGVsc2lmIFJJU0NWNjQKKyAgICAgICAgbG9hZHAgLTMy
W2Nmcl0sIGNzcjYKKyAgICAgICAgbG9hZHAgLTI0W2Nmcl0sIGNzcjcKKyAgICAgICAgbG9hZHAg
LTE2W2Nmcl0sIGNzcjgKKyAgICAgICAgbG9hZHAgLThbY2ZyXSwgY3NyOQogICAgIGVuZAogZW5k
CiAKIG1hY3JvIGNvcHlDYWxsZWVTYXZlc1RvRW50cnlGcmFtZUNhbGxlZVNhdmVzQnVmZmVyKGVu
dHJ5RnJhbWUpCi0gICAgaWYgQVJNNjQgb3IgQVJNNjRFIG9yIFg4Nl82NCBvciBYODZfNjRfV0lO
IG9yIEFSTXY3IG9yIE1JUFMKKyAgICBpZiBBUk02NCBvciBBUk02NEUgb3IgWDg2XzY0IG9yIFg4
Nl82NF9XSU4gb3IgQVJNdjcgb3IgTUlQUyBvciBSSVNDVjY0CiAgICAgICAgIHZtRW50cnlSZWNv
cmQoZW50cnlGcmFtZSwgZW50cnlGcmFtZSkKICAgICAgICAgbGVhcCBWTUVudHJ5UmVjb3JkOjpj
YWxsZWVTYXZlUmVnaXN0ZXJzQnVmZmVyW2VudHJ5RnJhbWVdLCBlbnRyeUZyYW1lCiAgICAgICAg
IGlmIEFSTTY0IG9yIEFSTTY0RQpAQCAtOTE5LDE5ICs5MjksNDMgQEAgbWFjcm8gY29weUNhbGxl
ZVNhdmVzVG9FbnRyeUZyYW1lQ2FsbGVlU2F2ZXNCdWZmZXIoZW50cnlGcmFtZSkKICAgICAgICAg
ZWxzaWYgQVJNdjcgb3IgTUlQUwogICAgICAgICAgICAgc3RvcmVwIGNzcjAsIFtlbnRyeUZyYW1l
XQogICAgICAgICAgICAgc3RvcmVwIGNzcjEsIDRbZW50cnlGcmFtZV0KKyAgICAgICAgZWxzaWYg
UklTQ1Y2NAorICAgICAgICAgICAgc3RvcmVwIGNzcjAsIFtlbnRyeUZyYW1lXQorICAgICAgICAg
ICAgc3RvcmVwIGNzcjEsIDhbZW50cnlGcmFtZV0KKyAgICAgICAgICAgIHN0b3JlcCBjc3IyLCAx
NltlbnRyeUZyYW1lXQorICAgICAgICAgICAgc3RvcmVwIGNzcjMsIDI0W2VudHJ5RnJhbWVdCisg
ICAgICAgICAgICBzdG9yZXAgY3NyNCwgMzJbZW50cnlGcmFtZV0KKyAgICAgICAgICAgIHN0b3Jl
cCBjc3I1LCA0MFtlbnRyeUZyYW1lXQorICAgICAgICAgICAgc3RvcmVwIGNzcjYsIDQ4W2VudHJ5
RnJhbWVdCisgICAgICAgICAgICBzdG9yZXAgY3NyNywgNTZbZW50cnlGcmFtZV0KKyAgICAgICAg
ICAgIHN0b3JlcCBjc3I4LCA2NFtlbnRyeUZyYW1lXQorICAgICAgICAgICAgc3RvcmVwIGNzcjks
IDcyW2VudHJ5RnJhbWVdCisgICAgICAgICAgICBzdG9yZXAgY3NyMTAsIDgwW2VudHJ5RnJhbWVd
CisgICAgICAgICAgICBzdG9yZWQgY3NmcjAsIDg4W2VudHJ5RnJhbWVdCisgICAgICAgICAgICBz
dG9yZWQgY3NmcjEsIDk2W2VudHJ5RnJhbWVdCisgICAgICAgICAgICBzdG9yZWQgY3NmcjIsIDEw
NFtlbnRyeUZyYW1lXQorICAgICAgICAgICAgc3RvcmVkIGNzZnIzLCAxMTJbZW50cnlGcmFtZV0K
KyAgICAgICAgICAgIHN0b3JlZCBjc2ZyNCwgMTIwW2VudHJ5RnJhbWVdCisgICAgICAgICAgICBz
dG9yZWQgY3NmcjUsIDEyOFtlbnRyeUZyYW1lXQorICAgICAgICAgICAgc3RvcmVkIGNzZnI2LCAx
MzZbZW50cnlGcmFtZV0KKyAgICAgICAgICAgIHN0b3JlZCBjc2ZyNywgMTQ0W2VudHJ5RnJhbWVd
CisgICAgICAgICAgICBzdG9yZWQgY3NmcjgsIDE1MltlbnRyeUZyYW1lXQorICAgICAgICAgICAg
c3RvcmVkIGNzZnI5LCAxNjBbZW50cnlGcmFtZV0KKyAgICAgICAgICAgIHN0b3JlZCBjc2ZyMTAs
IDE2OFtlbnRyeUZyYW1lXQorICAgICAgICAgICAgc3RvcmVkIGNzZnIxMSwgMTc2W2VudHJ5RnJh
bWVdCiAgICAgICAgIGVuZAogICAgIGVuZAogZW5kCiAKIG1hY3JvIGNvcHlDYWxsZWVTYXZlc1Rv
Vk1FbnRyeUZyYW1lQ2FsbGVlU2F2ZXNCdWZmZXIodm0sIHRlbXApCi0gICAgaWYgQVJNNjQgb3Ig
QVJNNjRFIG9yIFg4Nl82NCBvciBYODZfNjRfV0lOIG9yIEFSTXY3IG9yIE1JUFMKKyAgICBpZiBB
Uk02NCBvciBBUk02NEUgb3IgWDg2XzY0IG9yIFg4Nl82NF9XSU4gb3IgQVJNdjcgb3IgTUlQUyBv
ciBSSVNDVjY0CiAgICAgICAgIGxvYWRwIFZNOjp0b3BFbnRyeUZyYW1lW3ZtXSwgdGVtcAogICAg
ICAgICBjb3B5Q2FsbGVlU2F2ZXNUb0VudHJ5RnJhbWVDYWxsZWVTYXZlc0J1ZmZlcih0ZW1wKQog
ICAgIGVuZAogZW5kCiAKIG1hY3JvIHJlc3RvcmVDYWxsZWVTYXZlc0Zyb21WTUVudHJ5RnJhbWVD
YWxsZWVTYXZlc0J1ZmZlcih2bSwgdGVtcCkKLSAgICBpZiBBUk02NCBvciBBUk02NEUgb3IgWDg2
XzY0IG9yIFg4Nl82NF9XSU4gb3IgQVJNdjcgb3IgTUlQUworICAgIGlmIEFSTTY0IG9yIEFSTTY0
RSBvciBYODZfNjQgb3IgWDg2XzY0X1dJTiBvciBBUk12NyBvciBNSVBTIG9yIFJJU0NWNjQKICAg
ICAgICAgbG9hZHAgVk06OnRvcEVudHJ5RnJhbWVbdm1dLCB0ZW1wCiAgICAgICAgIHZtRW50cnlS
ZWNvcmQodGVtcCwgdGVtcCkKICAgICAgICAgbGVhcCBWTUVudHJ5UmVjb3JkOjpjYWxsZWVTYXZl
UmVnaXN0ZXJzQnVmZmVyW3RlbXBdLCB0ZW1wCkBAIC05NzEsMTIgKzEwMDUsMzYgQEAgbWFjcm8g
cmVzdG9yZUNhbGxlZVNhdmVzRnJvbVZNRW50cnlGcmFtZUNhbGxlZVNhdmVzQnVmZmVyKHZtLCB0
ZW1wKQogICAgICAgICBlbHNpZiBBUk12NyBvciBNSVBTCiAgICAgICAgICAgICBsb2FkcCBbdGVt
cF0sIGNzcjAKICAgICAgICAgICAgIGxvYWRwIDRbdGVtcF0sIGNzcjEKKyAgICAgICAgZWxzaWYg
UklTQ1Y2NAorICAgICAgICAgICAgbG9hZHEgW3RlbXBdLCBjc3IwCisgICAgICAgICAgICBsb2Fk
cSA4W3RlbXBdLCBjc3IxCisgICAgICAgICAgICBsb2FkcSAxNlt0ZW1wXSwgY3NyMgorICAgICAg
ICAgICAgbG9hZHEgMjRbdGVtcF0sIGNzcjMKKyAgICAgICAgICAgIGxvYWRxIDMyW3RlbXBdLCBj
c3I0CisgICAgICAgICAgICBsb2FkcSA0MFt0ZW1wXSwgY3NyNQorICAgICAgICAgICAgbG9hZHEg
NDhbdGVtcF0sIGNzcjYKKyAgICAgICAgICAgIGxvYWRxIDU2W3RlbXBdLCBjc3I3CisgICAgICAg
ICAgICBsb2FkcSA2NFt0ZW1wXSwgY3NyOAorICAgICAgICAgICAgbG9hZHEgNzJbdGVtcF0sIGNz
cjkKKyAgICAgICAgICAgIGxvYWRxIDgwW3RlbXBdLCBjc3IxMAorICAgICAgICAgICAgbG9hZGQg
ODhbdGVtcF0sIGNzZnIwCisgICAgICAgICAgICBsb2FkZCA5Nlt0ZW1wXSwgY3NmcjEKKyAgICAg
ICAgICAgIGxvYWRkIDEwNFt0ZW1wXSwgY3NmcjIKKyAgICAgICAgICAgIGxvYWRkIDExMlt0ZW1w
XSwgY3NmcjMKKyAgICAgICAgICAgIGxvYWRkIDEyMFt0ZW1wXSwgY3NmcjQKKyAgICAgICAgICAg
IGxvYWRkIDEyOFt0ZW1wXSwgY3NmcjUKKyAgICAgICAgICAgIGxvYWRkIDEzNlt0ZW1wXSwgY3Nm
cjYKKyAgICAgICAgICAgIGxvYWRkIDE0NFt0ZW1wXSwgY3NmcjcKKyAgICAgICAgICAgIGxvYWRk
IDE1Mlt0ZW1wXSwgY3NmcjgKKyAgICAgICAgICAgIGxvYWRkIDE2MFt0ZW1wXSwgY3NmcjkKKyAg
ICAgICAgICAgIGxvYWRkIDE2OFt0ZW1wXSwgY3NmcjEwCisgICAgICAgICAgICBsb2FkZCAxNzZb
dGVtcF0sIGNzZnIxMQogICAgICAgICBlbmQKICAgICBlbmQKIGVuZAogCiBtYWNybyBwcmVzZXJ2
ZVJldHVybkFkZHJlc3NBZnRlckNhbGwoZGVzdGluYXRpb25SZWdpc3RlcikKLSAgICBpZiBDX0xP
T1Agb3IgQ19MT09QX1dJTiBvciBBUk12NyBvciBBUk02NCBvciBBUk02NEUgb3IgTUlQUworICAg
IGlmIENfTE9PUCBvciBDX0xPT1BfV0lOIG9yIEFSTXY3IG9yIEFSTTY0IG9yIEFSTTY0RSBvciBN
SVBTIG9yIFJJU0NWNjQKICAgICAgICAgIyBJbiBDX0xPT1Agb3IgQ19MT09QX1dJTiBjYXNlLCB3
ZSdyZSBvbmx5IHByZXNlcnZpbmcgdGhlIGJ5dGVjb2RlIHZQQy4KICAgICAgICAgbW92ZSBsciwg
ZGVzdGluYXRpb25SZWdpc3RlcgogICAgIGVsc2lmIFg4NiBvciBYODZfV0lOIG9yIFg4Nl82NCBv
ciBYODZfNjRfV0lOCkBAIC05OTAsNyArMTA0OCw3IEBAIG1hY3JvIGZ1bmN0aW9uUHJvbG9ndWUo
KQogICAgIHRhZ1JldHVybkFkZHJlc3Mgc3AKICAgICBpZiBYODYgb3IgWDg2X1dJTiBvciBYODZf
NjQgb3IgWDg2XzY0X1dJTgogICAgICAgICBwdXNoIGNmcgotICAgIGVsc2lmIEFSTTY0IG9yIEFS
TTY0RQorICAgIGVsc2lmIEFSTTY0IG9yIEFSTTY0RSBvciBSSVNDVjY0CiAgICAgICAgIHB1c2gg
Y2ZyLCBscgogICAgIGVsc2lmIENfTE9PUCBvciBDX0xPT1BfV0lOIG9yIEFSTXY3IG9yIE1JUFMK
ICAgICAgICAgcHVzaCBscgpAQCAtMTAwMiw3ICsxMDYwLDcgQEAgZW5kCiBtYWNybyBmdW5jdGlv
bkVwaWxvZ3VlKCkKICAgICBpZiBYODYgb3IgWDg2X1dJTiBvciBYODZfNjQgb3IgWDg2XzY0X1dJ
TgogICAgICAgICBwb3AgY2ZyCi0gICAgZWxzaWYgQVJNNjQgb3IgQVJNNjRFCisgICAgZWxzaWYg
QVJNNjQgb3IgQVJNNjRFIG9yIFJJU0NWNjQKICAgICAgICAgcG9wIGxyLCBjZnIKICAgICBlbHNp
ZiBDX0xPT1Agb3IgQ19MT09QX1dJTiBvciBBUk12NyBvciBNSVBTCiAgICAgICAgIHBvcCBjZnIK
QEAgLTExNTgsNyArMTIxNiw3IEBAIG1hY3JvIHByZXBhcmVGb3JUYWlsQ2FsbChjYWxsZWUsIHRl
bXAxLCB0ZW1wMiwgdGVtcDMsIHRlbXA0LCBjYWxsUHRyVGFnKQogICAgIGFkZGkgU3RhY2tBbGln
bm1lbnQgLSAxICsgQ2FsbEZyYW1lSGVhZGVyU2l6ZSwgdGVtcDIKICAgICBhbmRpIH5TdGFja0Fs
aWdubWVudE1hc2ssIHRlbXAyCiAKLSAgICBpZiBBUk12NyBvciBBUk02NCBvciBBUk02NEUgb3Ig
Q19MT09QIG9yIENfTE9PUF9XSU4gb3IgTUlQUworICAgIGlmIEFSTXY3IG9yIEFSTTY0IG9yIEFS
TTY0RSBvciBDX0xPT1Agb3IgQ19MT09QX1dJTiBvciBNSVBTIG9yIFJJU0NWNjQKICAgICAgICAg
YWRkcCBDYWxsZXJGcmFtZUFuZFBDU2l6ZSwgc3AKICAgICAgICAgc3ViaSBDYWxsZXJGcmFtZUFu
ZFBDU2l6ZSwgdGVtcDIKICAgICAgICAgbG9hZHAgQ2FsbGVyRnJhbWVBbmRQQzo6cmV0dXJuUENb
Y2ZyXSwgbHIKQEAgLTE0NTQsNyArMTUxMiw3IEBAIG1hY3JvIHByb2xvZ3VlKGNvZGVCbG9ja0dl
dHRlciwgY29kZUJsb2NrU2V0dGVyLCBvc3JTbG93UGF0aCwgdHJhY2VTbG93UGF0aCkKICAgICAg
ICAgYnRweiByMCwgLnJlY292ZXIKICAgICAgICAgbW92ZSBjZnIsIHNwICMgcmVzdG9yZSB0aGUg
cHJldmlvdXMgc3AKICAgICAgICAgIyBwb3AgdGhlIGNhbGxlckZyYW1lIHNpbmNlIHdlIHdpbGwg
anVtcCB0byBhIGZ1bmN0aW9uIHRoYXQgd2FudHMgdG8gc2F2ZSBpdAotICAgICAgICBpZiBBUk02
NAorICAgICAgICBpZiBBUk02NCBvciBSSVNDVjY0CiAgICAgICAgICAgICBwb3AgbHIsIGNmcgog
ICAgICAgICBlbHNpZiBBUk02NEUKICAgICAgICAgICAgICMgdW50YWdSZXR1cm5BZGRyZXNzIHdp
bGwgYmUgcGVyZm9ybWVkIGluIEdhdGU6OmVudHJ5T1NSRW50cnkuCkBAIC0xODEwLDcgKzE4Njgs
NyBAQCBlbHNlCiAgICAgICAgICAgICBsZWFwIChsYWJlbCAtIF8la2luZCVfcmVsYXRpdmVQQ0Jh
c2UpW3QzXSwgdDQKICAgICAgICAgICAgIG1vdmUgaW5kZXgsIHQ1CiAgICAgICAgICAgICBzdG9y
ZXAgdDQsIFttYXAsIHQ1LCA0XQotICAgICAgICBlbHNpZiBBUk02NAorICAgICAgICBlbHNpZiBB
Uk02NCBvciBSSVNDVjY0CiAgICAgICAgICAgICBwY3J0b2FkZHIgbGFiZWwsIHQzCiAgICAgICAg
ICAgICBtb3ZlIGluZGV4LCB0NAogICAgICAgICAgICAgc3RvcmVwIHQzLCBbbWFwLCB0NCwgUHRy
U2l6ZV0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9sbGludC9Mb3dMZXZlbElu
dGVycHJldGVyNjQuYXNtIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xvd0xldmVsSW50
ZXJwcmV0ZXI2NC5hc20KaW5kZXggYmFhMDc2YTA4ZjQzMDNlMmM4MmNiZjBhN2MzOThlMjNjNjUy
MTVlNy4uYzdkMWEyMDQ4MDkzMjhkYjA0MTM5NzVkNWI4Nzk2MjBhNTMxN2YwZCAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xvd0xldmVsSW50ZXJwcmV0ZXI2NC5hc20K
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xvd0xldmVsSW50ZXJwcmV0ZXI2NC5h
c20KQEAgLTkzLDcgKzkzLDcgQEAgZW5kCiAKIG1hY3JvIGNDYWxsMihmdW5jdGlvbikKICAgICBj
aGVja1N0YWNrUG9pbnRlckFsaWdubWVudCh0NCwgMHhiYWQwYzAwMikKLSAgICBpZiBYODZfNjQg
b3IgQVJNNjQgb3IgQVJNNjRFCisgICAgaWYgWDg2XzY0IG9yIEFSTTY0IG9yIEFSTTY0RSBvciBS
SVNDVjY0CiAgICAgICAgIGNhbGwgZnVuY3Rpb24KICAgICBlbHNpZiBYODZfNjRfV0lOCiAgICAg
ICAgICMgTm90ZTogdGhpcyBpbXBsZW1lbnRhdGlvbiBpcyBvbmx5IGNvcnJlY3QgaWYgdGhlIHJl
dHVybiB0eXBlIHNpemUgaXMgPiA4IGJ5dGVzLgpAQCAtMTQwLDcgKzE0MCw3IEBAIGVuZAogIyBU
aGlzIGJhcmVseSB3b3Jrcy4gYXJnMyBhbmQgYXJnNCBzaG91bGQgcHJvYmFibHkgYmUgaW1tZWRp
YXRlcy4KIG1hY3JvIGNDYWxsNChmdW5jdGlvbikKICAgICBjaGVja1N0YWNrUG9pbnRlckFsaWdu
bWVudCh0NCwgMHhiYWQwYzAwNCkKLSAgICBpZiBYODZfNjQgb3IgQVJNNjQgb3IgQVJNNjRFCisg
ICAgaWYgWDg2XzY0IG9yIEFSTTY0IG9yIEFSTTY0RSBvciBSSVNDVjY0CiAgICAgICAgIGNhbGwg
ZnVuY3Rpb24KICAgICBlbHNpZiBYODZfNjRfV0lOCiAgICAgICAgICMgT24gV2luNjQsIHJjeCwg
cmR4LCByOCwgYW5kIHI5IGFyZSB1c2VkIGZvciBwYXNzaW5nIHRoZSBmaXJzdCBmb3VyIHBhcmFt
ZXRlcnMuCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvb2ZmbGluZWFzbS9iYWNr
ZW5kcy5yYiBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9vZmZsaW5lYXNtL2JhY2tlbmRzLnJiCmlu
ZGV4IDQxNGYxZWFiZWFkMjIyMWZiOTEyNzdjNzAyMTc2Y2UxZmE4MDYwNzIuLjQ1MDY2ODZmOTlm
MjQ0NGFmMzgyN2ExN2I0ZWU4NTYwYzlmM2JiNjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9vZmZsaW5lYXNtL2JhY2tlbmRzLnJiCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9vZmZsaW5lYXNtL2JhY2tlbmRzLnJiCkBAIC0yNyw2ICsyNyw3IEBAIHJlcXVpcmUgImFybTY0
IgogcmVxdWlyZSAiYXN0IgogcmVxdWlyZSAieDg2IgogcmVxdWlyZSAibWlwcyIKK3JlcXVpcmUg
InJpc2N2NjQiCiByZXF1aXJlICJjbG9vcCIKIAogYmVnaW4KQEAgLTQ0LDYgKzQ1LDcgQEAgQkFD
S0VORFMgPQogICAgICAiQVJNNjQiLAogICAgICAiQVJNNjRFIiwKICAgICAgIk1JUFMiLAorICAg
ICAiUklTQ1Y2NCIsCiAgICAgICJDX0xPT1AiLAogICAgICAiQ19MT09QX1dJTiIKICAgICBdCkBA
IC02Myw2ICs2NSw3IEBAIFdPUktJTkdfQkFDS0VORFMgPQogICAgICAiQVJNNjQiLAogICAgICAi
QVJNNjRFIiwKICAgICAgIk1JUFMiLAorICAgICAiUklTQ1Y2NCIsCiAgICAgICJDX0xPT1AiLAog
ICAgICAiQ19MT09QX1dJTiIKICAgICBdCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvb2ZmbGluZWFzbS9yZWdpc3RlcnMucmIgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvb2ZmbGlu
ZWFzbS9yZWdpc3RlcnMucmIKaW5kZXggY2I4NDU3YjhmOTQ4YWNiMjhlNzZiMGQ3OTQ5Mjg4NjFm
ZTU4MTUwNi4uMGRjNDRjMjNkZmIyYmFkMzY1YTBmZWI1NzEwM2FkMmZkMzNmZWFlNCAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL29mZmxpbmVhc20vcmVnaXN0ZXJzLnJiCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9vZmZsaW5lYXNtL3JlZ2lzdGVycy5yYgpAQCAtNTcsNyAr
NTcsOCBAQCBHUFJTID0KICAgICAgImNzcjYiLAogICAgICAiY3NyNyIsCiAgICAgICJjc3I4IiwK
LSAgICAgImNzcjkiCisgICAgICJjc3I5IiwKKyAgICAgImNzcjEwIgogICAgIF0KIAogRlBSUyA9
CkBAIC04MCw2ICs4MSwxMCBAQCBGUFJTID0KICAgICAgImNzZnI1IiwKICAgICAgImNzZnI2IiwK
ICAgICAgImNzZnI3IiwKKyAgICAgImNzZnI4IiwKKyAgICAgImNzZnI5IiwKKyAgICAgImNzZnIx
MCIsCisgICAgICJjc2ZyMTEiLAogICAgICAiZnIiCiAgICAgXQogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvb2ZmbGluZWFzbS9yaXNjdjY0LnJiIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL29mZmxpbmVhc20vcmlzY3Y2NC5yYgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hYWMyZGE2NTJkZTdhNDFh
MDAxYzk4ZjI5NGFiNTQwZWUyNDNhZDYzCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL29mZmxpbmVhc20vcmlzY3Y2NC5yYgpAQCAtMCwwICsxLDIwMTUgQEAKKyMgQ29w
eXJpZ2h0IChDKSAyMDIxIElnYWxpYSBTLkwuCisjCisjIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorIyBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyMgYXJlIG1ldDoKKyMgMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorIyAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorIyAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIgaW4gdGhlCisjICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisjCisjIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyMgQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sCisjIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyMgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisjIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwg
T1IKKyMgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgUFJPQ1VSRU1FTlQgT0YKKyMgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBP
RiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisjIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisj
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpCisjIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyMgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorCitkZWYgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICByZXR1
cm4gb3BlcmFuZHMubWFwIHsKKyAgICAgICAgfG9wfAorICAgICAgICBvcC5jbGFzcworICAgIH0K
K2VuZAorCitkZWYgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAg
IHJhaXNlICJVbmFibGUgdG8gbWF0Y2ggb3BlcmFuZHMgI3tyaXNjdjY0T3BlcmFuZFR5cGVzKG9w
ZXJhbmRzKX0iCitlbmQKKworZGVmIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgcmFpc2Ug
Ik5vdCBzdXBwb3J0ZWQgZm9yIFJJU0NWNjQiCitlbmQKKworZGVmIHJpc2N2NjRMb2FkSW5zdHJ1
Y3Rpb24oc2l6ZSkKKyAgICBjYXNlIHNpemUKKyAgICB3aGVuIDpiCisgICAgICAgICJsYiIKKyAg
ICB3aGVuIDpidQorICAgICAgICAibGJ1IgorICAgIHdoZW4gOmgKKyAgICAgICAgImxoIgorICAg
IHdoZW4gOmh1CisgICAgICAgICJsaHUiCisgICAgd2hlbiA6dworICAgICAgICAibHciCisgICAg
d2hlbiA6d3UKKyAgICAgICAgImx3dSIKKyAgICB3aGVuIDpkCisgICAgICAgICJsZCIKKyAgICBl
bHNlCisgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCBzaXplICN7c2l6ZX0iCisgICAgZW5kCitl
bmQKKworZGVmIHJpc2N2NjRaZXJvRXh0ZW5kZWRMb2FkSW5zdHJ1Y3Rpb24oc2l6ZSkKKyAgICBj
YXNlIHNpemUKKyAgICB3aGVuIDpiCisgICAgICAgIHJpc2N2NjRMb2FkSW5zdHJ1Y3Rpb24oOmJ1
KQorICAgIHdoZW4gOmgKKyAgICAgICAgcmlzY3Y2NExvYWRJbnN0cnVjdGlvbig6aHUpCisgICAg
d2hlbiA6dworICAgICAgICByaXNjdjY0TG9hZEluc3RydWN0aW9uKDp3dSkKKyAgICB3aGVuIDpk
CisgICAgICAgIHJpc2N2NjRMb2FkSW5zdHJ1Y3Rpb24oOmQpCisgICAgZWxzZQorICAgICAgICBy
YWlzZSAiVW5zdXBwb3J0ZWQgc2l6ZSAje3NpemV9IgorICAgIGVuZAorZW5kCisKK2RlZiByaXNj
djY0U3RvcmVJbnN0cnVjdGlvbihzaXplKQorICAgIGNhc2Ugc2l6ZQorICAgIHdoZW4gOmIKKyAg
ICAgICAgInNiIgorICAgIHdoZW4gOmgKKyAgICAgICAgInNoIgorICAgIHdoZW4gOncKKyAgICAg
ICAgInN3IgorICAgIHdoZW4gOmQKKyAgICAgICAgInNkIgorICAgIGVsc2UKKyAgICAgICAgcmFp
c2UgIlVuc3VwcG9ydGVkIHNpemUgI3tzaXplfSIKKyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2
NEVtaXRSZWdpc3Rlck1hc2sodGFyZ2V0LCBzaXplKQorICAgIGNhc2Ugc2l6ZQorICAgIHdoZW4g
OncKKyAgICAgICAgJGFzbS5wdXRzICJsaSB4MzEsIDB4ZmZmZmZmZmYiCisgICAgICAgICRhc20u
cHV0cyAiYW5kICN7dGFyZ2V0LnJpc2N2NjRPcGVyYW5kfSwgI3t0YXJnZXQucmlzY3Y2NE9wZXJh
bmR9LCB4MzEiCisgICAgd2hlbiA6ZAorICAgIGVsc2UKKyAgICAgICAgcmFpc2UgIlVuc3VwcG9y
dGVkIHNpemUiCisgICAgZW5kCitlbmQKKworZGVmIHJpc2N2NjRDb25kaXRpb25hbEJyYW5jaElu
c3RydWN0aW9uKGNvbmRpdGlvbikKKyAgICBjYXNlIGNvbmRpdGlvbgorICAgIHdoZW4gOmVxCisg
ICAgICAgICJiZXEiCisgICAgd2hlbiA6bmVxCisgICAgICAgICJibmUiCisgICAgd2hlbiA6YQor
ICAgICAgICAiYmd0dSIKKyAgICB3aGVuIDphZXEKKyAgICAgICAgImJnZXUiCisgICAgd2hlbiA6
YgorICAgICAgICAiYmx0dSIKKyAgICB3aGVuIDpiZXEKKyAgICAgICAgImJsZXUiCisgICAgd2hl
biA6Z3QKKyAgICAgICAgImJndCIKKyAgICB3aGVuIDpndGVxCisgICAgICAgICJiZ2UiCisgICAg
d2hlbiA6bHQKKyAgICAgICAgImJsdCIKKyAgICB3aGVuIDpsdGVxCisgICAgICAgICJibGUiCisg
ICAgZWxzZQorICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgY29uZGl0aW9uICN7Y29uZGl0aW9u
fSIKKyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NEVtaXRMb2FkKG9wZXJhbmRzLCB0eXBlLCBt
YXNrKQorICAgIGluc3RydWN0aW9uID0gcmlzY3Y2NExvYWRJbnN0cnVjdGlvbih0eXBlKQorCisg
ICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgIHdoZW4gW0FkZHJlc3Ms
IFJlZ2lzdGVySURdCisgICAgICAgIGlmIG9wZXJhbmRzWzBdLnJpc2N2NjRSZXF1aXJlc0xvYWQK
KyAgICAgICAgICAgIG9wZXJhbmRzWzBdLnJpc2N2NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVnaXN0
ZXIueDMxKQorICAgICAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSAje29wZXJhbmRz
WzFdLnJpc2N2NjRPcGVyYW5kfSwgMCh4MzEpIgorICAgICAgICBlbHNlCisgICAgICAgICAgICAk
YXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAj
e29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZW5kCisgICAgd2hlbiBbQmFz
ZUluZGV4LCBSZWdpc3RlcklEXQorICAgICAgICBvcGVyYW5kc1swXS5yaXNjdjY0TG9hZChSSVND
VjY0U2NyYXRjaFJlZ2lzdGVyLngzMSwgUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzApCisgICAg
ICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0gI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFu
ZH0sIDAoeDMxKSIKKyAgICBlbHNlCisgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVy
YW5kcyhvcGVyYW5kcykKKyAgICBlbmQKKworICAgIGNhc2UgbWFzaworICAgIHdoZW4gOncKKyAg
ICAgICAgcmlzY3Y2NEVtaXRSZWdpc3Rlck1hc2sob3BlcmFuZHNbMV0sIDp3KQorICAgIHdoZW4g
Om5vbmUKKyAgICBlbHNlCisgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCBtYXNrIHR5cGUiCisg
ICAgZW5kCitlbmQKKworZGVmIHJpc2N2NjRFbWl0U3RvcmUob3BlcmFuZHMsIHR5cGUpCisgICAg
aW5zdHJ1Y3Rpb24gPSByaXNjdjY0U3RvcmVJbnN0cnVjdGlvbih0eXBlKQorCisgICAgY2FzZSBy
aXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgIHdoZW4gW1JlZ2lzdGVySUQsIEFkZHJl
c3NdCisgICAgICAgIGlmIG9wZXJhbmRzWzFdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAg
ICAgIG9wZXJhbmRzWzFdLnJpc2N2NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxKQor
ICAgICAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSAje29wZXJhbmRzWzBdLnJpc2N2
NjRPcGVyYW5kfSwgMCh4MzEpIgorICAgICAgICBlbHNlCisgICAgICAgICAgICAkYXNtLnB1dHMg
IiN7aW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRz
WzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZW5kCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwg
QmFzZUluZGV4XQorICAgICAgICBvcGVyYW5kc1sxXS5yaXNjdjY0TG9hZChSSVNDVjY0U2NyYXRj
aFJlZ2lzdGVyLngzMSwgUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzApCisgICAgICAgICRhc20u
cHV0cyAiI3tpbnN0cnVjdGlvbn0gI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sIDAoeDMx
KSIKKyAgICB3aGVuIFtJbW1lZGlhdGUsIEFkZHJlc3NdCisgICAgICAgICRhc20ucHV0cyAibGkg
eDMwLCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgaWYgb3BlcmFuZHNb
MV0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExv
YWQoUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzEpCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7
aW5zdHJ1Y3Rpb259IHgzMCwgMCh4MzEpIgorICAgICAgICBlbHNlCisgICAgICAgICAgICAkYXNt
LnB1dHMgIiN7aW5zdHJ1Y3Rpb259IHgzMCwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0i
CisgICAgICAgIGVuZAorICAgIHdoZW4gW0ltbWVkaWF0ZSwgQmFzZUluZGV4XQorICAgICAgICBv
cGVyYW5kc1sxXS5yaXNjdjY0TG9hZChSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMSwgUklTQ1Y2
NFNjcmF0Y2hSZWdpc3Rlci54MzApCisgICAgICAgICRhc20ucHV0cyAibGkgeDMwLCAje29wZXJh
bmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9u
fSB4MzAsIDAoeDMxKSIKKyAgICBlbHNlCisgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRP
cGVyYW5kcyhvcGVyYW5kcykKKyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NEVtaXRBZGRpdGlv
bk9wZXJhdGlvbihvcGVyYW5kcywgc2l6ZSwgb3BlcmF0aW9uKQorICAgIHJhaXNlICJVbnN1cHBv
cnRlZCBzaXplIiB1bmxlc3MgWzp3LCA6ZF0uaW5jbHVkZT8gc2l6ZQorCisgICAgZGVmIGFkZGl0
aW9uSW5zdHJ1Y3Rpb24oc2l6ZSwgb3BlcmF0aW9uKQorICAgICAgICBjYXNlIG9wZXJhdGlvbgor
ICAgICAgICB3aGVuIDphZGQKKyAgICAgICAgICAgIHNpemUgPT0gOncgPyAiYWRkdyIgOiAiYWRk
IgorICAgICAgICB3aGVuIDpzdWIKKyAgICAgICAgICAgIHNpemUgPT0gOncgPyAic3VidyIgOiAi
c3ViIgorICAgICAgICBlbHNlCisgICAgICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgYXJpdGht
ZXRpYyBvcGVyYXRpb24iCisgICAgICAgIGVuZAorICAgIGVuZAorCisgICAgaW5zdHJ1Y3Rpb24g
PSBhZGRpdGlvbkluc3RydWN0aW9uKHNpemUsIG9wZXJhdGlvbikKKyAgICBsb2FkSW5zdHJ1Y3Rp
b24gPSByaXNjdjY0TG9hZEluc3RydWN0aW9uKHNpemUpCisgICAgc3RvcmVJbnN0cnVjdGlvbiA9
IHJpc2N2NjRTdG9yZUluc3RydWN0aW9uKHNpemUpCisKKyAgICBjYXNlIHJpc2N2NjRPcGVyYW5k
VHlwZXMob3BlcmFuZHMpCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAg
ICAgb3BlcmFuZHMgPSBbb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXV0KKyAg
ICB3aGVuIFtJbW1lZGlhdGUsIFJlZ2lzdGVySURdCisgICAgICAgIG9wZXJhbmRzID0gW29wZXJh
bmRzWzFdLCBvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV1dCisgICAgd2hlbiBbQWRkcmVzcywgUmVn
aXN0ZXJJRF0KKyAgICAgICAgb3BlcmFuZHMgPSBbb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzBdLCBv
cGVyYW5kc1sxXV0KKyAgICBlbmQKKworICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVy
YW5kcykKKyAgICB3aGVuIFtSZWdpc3RlcklELCBSZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAg
ICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJh
bmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0
T3BlcmFuZH0iCisgICAgICAgIHJpc2N2NjRFbWl0UmVnaXN0ZXJNYXNrKG9wZXJhbmRzWzJdLCBz
aXplKQorICAgIHdoZW4gW1JlZ2lzdGVySUQsIEltbWVkaWF0ZSwgUmVnaXN0ZXJJRF0KKyAgICAg
ICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExvYWQoUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzEpCisg
ICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0gI3tvcGVyYW5kc1syXS5yaXNjdjY0T3Bl
cmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEiCisgICAgICAgIHJpc2N2
NjRFbWl0UmVnaXN0ZXJNYXNrKG9wZXJhbmRzWzJdLCBzaXplKQorICAgIHdoZW4gW0ltbWVkaWF0
ZSwgUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAgICAgb3BlcmFuZHNbMF0ucmlzY3Y2NExv
YWQoUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzEpCisgICAgICAgICRhc20ucHV0cyAiI3tpbnN0
cnVjdGlvbn0gI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSwgI3tvcGVyYW5kc1sx
XS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIHJpc2N2NjRFbWl0UmVnaXN0ZXJNYXNrKG9wZXJh
bmRzWzJdLCBzaXplKQorICAgIHdoZW4gW1JlZ2lzdGVySUQsIEFkZHJlc3MsIFJlZ2lzdGVySURd
CisgICAgICAgIGlmIG9wZXJhbmRzWzFdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAg
IG9wZXJhbmRzWzFdLnJpc2N2NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxKQorICAg
ICAgICAgICAgJGFzbS5wdXRzICIje2xvYWRJbnN0cnVjdGlvbn0geDMxLCAwKHgzMSkiCisgICAg
ICAgIGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tsb2FkSW5zdHJ1Y3Rpb259IHgzMSwg
I3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVuZAorICAgICAgICAkYXNt
LnB1dHMgIiN7aW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje29w
ZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgeDMxIgorICAgICAgICByaXNjdjY0RW1pdFJlZ2lz
dGVyTWFzayhvcGVyYW5kc1syXSwgc2l6ZSkKKyAgICB3aGVuIFtJbW1lZGlhdGUsIEFkZHJlc3Nd
CisgICAgICAgIGlmIG9wZXJhbmRzWzFdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAg
IG9wZXJhbmRzWzFdLnJpc2N2NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxKQorICAg
ICAgICAgICAgJGFzbS5wdXRzICJsaSB4MzAsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9
IgorICAgICAgICAgICAgJGFzbS5wdXRzICIje2xvYWRJbnN0cnVjdGlvbn0geDI5LCAwKHgzMSki
CisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259IHgyOSwgeDI5LCB4MzAiCisg
ICAgICAgICAgICAkYXNtLnB1dHMgIiN7c3RvcmVJbnN0cnVjdGlvbn0geDI5LCAwKHgzMSkiCisg
ICAgICAgIGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0cyAibGkgeDMxLCAje29wZXJhbmRzWzBd
LnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tsb2FkSW5zdHJ1Y3Rp
b259IHgzMCwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAkYXNt
LnB1dHMgIiN7aW5zdHJ1Y3Rpb259IHgzMCwgeDMwLCB4MzEiCisgICAgICAgICAgICAkYXNtLnB1
dHMgIiN7c3RvcmVJbnN0cnVjdGlvbn0geDMwLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5k
fSIKKyAgICAgICAgZW5kCisgICAgZWxzZQorICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVk
T3BlcmFuZHMob3BlcmFuZHMpCisgICAgZW5kCitlbmQKKworZGVmIHJpc2N2NjRFbWl0TXVsRGl2
QXJpdGhtZXRpYyhvcGVyYW5kcywgc2l6ZSwgb3BlcmF0aW9uKQorICAgIHJhaXNlICJVbnN1cHBv
cnRlZCBzaXplIiB1bmxlc3MgWzp3LCA6ZF0uaW5jbHVkZT8gc2l6ZQorCisgICAgZGVmIGFyaXRo
bWV0aWNJbnN0cnVjdGlvbihzaXplLCBvcGVyYXRpb24pCisgICAgICAgIGNhc2Ugb3BlcmF0aW9u
CisgICAgICAgIHdoZW4gOm11bAorICAgICAgICAgICAgc2l6ZSA9PSA6dyA/ICJtdWx3IiA6ICJt
dWwiCisgICAgICAgIHdoZW4gOmRpdgorICAgICAgICAgICAgc2l6ZSA9PSA6dyA/ICJkaXZ1dyIg
OiAiZGl2dSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIGFy
aXRobWV0aWMgb3BlcmF0aW9uIgorICAgICAgICBlbmQKKyAgICBlbmQKKworICAgIGluc3RydWN0
aW9uID0gYXJpdGhtZXRpY0luc3RydWN0aW9uKHNpemUsIG9wZXJhdGlvbikKKworICAgIGNhc2Ug
cmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICB3aGVuIFtSZWdpc3RlcklELCBSZWdp
c3RlcklEXQorICAgICAgICBvcGVyYW5kcyA9IFtvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV0sIG9w
ZXJhbmRzWzFdXQorICAgIHdoZW4gW0ltbWVkaWF0ZSwgUmVnaXN0ZXJJRF0KKyAgICAgICAgb3Bl
cmFuZHMgPSBbb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXV0KKyAgICBlbmQK
KworICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICB3aGVuIFtSZWdp
c3RlcklELCBSZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAgICAgICAkYXNtLnB1dHMgIiN7aW5z
dHJ1Y3Rpb259ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJp
c2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgd2hlbiBb
UmVnaXN0ZXJJRCwgSW1tZWRpYXRlLCBSZWdpc3RlcklEXQorICAgICAgICAkYXNtLnB1dHMgImxp
IHgzMSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICRhc20ucHV0cyAi
I3tpbnN0cnVjdGlvbn0gI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNb
MF0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEiCisgICAgd2hlbiBbSW1tZWRpYXRlLCBSZWdpc3RlcklE
LCBSZWdpc3RlcklEXQorICAgICAgICAkYXNtLnB1dHMgImxpIHgzMSwgI3tvcGVyYW5kc1swXS5y
aXNjdjY0T3BlcmFuZH0iCisgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0gI3tvcGVy
YW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFu
ZH0iCisgICAgZWxzZQorICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3Bl
cmFuZHMpCisgICAgZW5kCitlbmQKKworZGVmIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2go
b3BlcmFuZHMsIHNpemUsIGNvbmRpdGlvbikKKyAgICBpbnN0cnVjdGlvbiA9IHJpc2N2NjRDb25k
aXRpb25hbEJyYW5jaEluc3RydWN0aW9uKGNvbmRpdGlvbikKKworICAgIGRlZiBzaWduRXh0ZW5k
Rm9yU2l6ZShyZWdpc3RlciwgdGFyZ2V0LCBzaXplKQorICAgICAgICBjYXNlIHNpemUKKyAgICAg
ICAgd2hlbiA6YgorICAgICAgICAgICAgJGFzbS5wdXRzICJzbGxpICN7dGFyZ2V0fSwgI3tyZWdp
c3Rlci5yaXNjdjY0T3BlcmFuZH0sIDI0IgorICAgICAgICAgICAgJGFzbS5wdXRzICJzZXh0Lncg
I3t0YXJnZXR9LCAje3RhcmdldH0iCisgICAgICAgICAgICAkYXNtLnB1dHMgInNyYWkgI3t0YXJn
ZXR9LCAje3RhcmdldH0sIDI0IgorICAgICAgICB3aGVuIDp3CisgICAgICAgICAgICAkYXNtLnB1
dHMgInNleHQudyAje3RhcmdldH0sICN7cmVnaXN0ZXIucmlzY3Y2NE9wZXJhbmR9IgorICAgICAg
ICB3aGVuIDpkCisgICAgICAgICAgICAkYXNtLnB1dHMgIm12ICN7dGFyZ2V0fSwgI3tyZWdpc3Rl
ci5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVuZAorICAgIGVuZAorCisgICAgY2FzZSByaXNj
djY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgIHdoZW4gW1JlZ2lzdGVySUQsIFJlZ2lzdGVy
SUQsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAgIHNpZ25FeHRlbmRGb3JTaXplKG9wZXJh
bmRzWzBdLCAneDMwJywgc2l6ZSkKKyAgICAgICAgc2lnbkV4dGVuZEZvclNpemUob3BlcmFuZHNb
MV0sICd4MzEnLCBzaXplKQorICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259IHgzMCwg
eDMxLCAje29wZXJhbmRzWzJdLmFzbUxhYmVsfSIKKyAgICB3aGVuIFtSZWdpc3RlcklELCBJbW1l
ZGlhdGUsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAgIHNpZ25FeHRlbmRGb3JTaXplKG9w
ZXJhbmRzWzBdLCAneDMwJywgc2l6ZSkKKyAgICAgICAgJGFzbS5wdXRzICJsaSB4MzEsICN7b3Bl
cmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rp
b259IHgzMCwgeDMxLCAje29wZXJhbmRzWzJdLmFzbUxhYmVsfSIKKyAgICB3aGVuIFtSZWdpc3Rl
cklELCBBZGRyZXNzLCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICBzaWduRXh0ZW5kRm9y
U2l6ZShvcGVyYW5kc1swXSwgJ3gzMCcsIHNpemUpCisgICAgICAgIGlmIG9wZXJhbmRzWzFdLnJp
c2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAgIG9wZXJhbmRzWzFdLnJpc2N2NjRMb2FkKFJJ
U0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxKQorICAgICAgICAgICAgJGFzbS5wdXRzICIje3Jpc2N2
NjRMb2FkSW5zdHJ1Y3Rpb24oc2l6ZSl9IHgzMSwgMCh4MzEpIgorICAgICAgICBlbHNlCisgICAg
ICAgICAgICAkYXNtLnB1dHMgIiN7cmlzY3Y2NExvYWRJbnN0cnVjdGlvbihzaXplKX0geDMxLCAj
e29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZW5kCisgICAgICAgICRhc20u
cHV0cyAiI3tpbnN0cnVjdGlvbn0geDMwLCB4MzEsICN7b3BlcmFuZHNbMl0uYXNtTGFiZWx9Igor
ICAgIHdoZW4gW1JlZ2lzdGVySUQsIEJhc2VJbmRleCwgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAg
ICAgICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExvYWQoUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzEs
IFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMwKQorICAgICAgICAkYXNtLnB1dHMgIiN7cmlzY3Y2
NExvYWRJbnN0cnVjdGlvbihzaXplKX0geDMxLCAwKHgzMSkiCisgICAgICAgIHNpZ25FeHRlbmRG
b3JTaXplKG9wZXJhbmRzWzBdLCAneDMwJywgc2l6ZSkKKyAgICAgICAgJGFzbS5wdXRzICIje2lu
c3RydWN0aW9ufSB4MzAsIHgzMSwgI3tvcGVyYW5kc1syXS5hc21MYWJlbH0iCisgICAgd2hlbiBb
QWRkcmVzcywgUmVnaXN0ZXJJRCwgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgaWYgb3Bl
cmFuZHNbMF0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgb3BlcmFuZHNbMF0ucmlz
Y3Y2NExvYWQoUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzEpCisgICAgICAgICAgICAkYXNtLnB1
dHMgIiN7cmlzY3Y2NExvYWRJbnN0cnVjdGlvbihzaXplKX0geDMwLCAwKHgzMSkiCisgICAgICAg
IGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tyaXNjdjY0TG9hZEluc3RydWN0aW9uKHNp
emUpfSB4MzAsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICBlbmQKKyAg
ICAgICAgc2lnbkV4dGVuZEZvclNpemUob3BlcmFuZHNbMV0sICd4MzEnLCBzaXplKQorICAgICAg
ICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259IHgzMCwgeDMxLCAje29wZXJhbmRzWzJdLmFzbUxh
YmVsfSIKKyAgICB3aGVuIFtBZGRyZXNzLCBJbW1lZGlhdGUsIExvY2FsTGFiZWxSZWZlcmVuY2Vd
CisgICAgICAgIGlmIG9wZXJhbmRzWzBdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAg
IG9wZXJhbmRzWzBdLnJpc2N2NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxKQorICAg
ICAgICAgICAgJGFzbS5wdXRzICIje3Jpc2N2NjRMb2FkSW5zdHJ1Y3Rpb24oc2l6ZSl9IHgzMCwg
MCh4MzEpIgorICAgICAgICBlbHNlCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7cmlzY3Y2NExv
YWRJbnN0cnVjdGlvbihzaXplKX0geDMwLCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIK
KyAgICAgICAgZW5kCisgICAgICAgICRhc20ucHV0cyAibGkgeDMxLCAje29wZXJhbmRzWzFdLnJp
c2N2NjRPcGVyYW5kfSIKKyAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSB4MzAsIHgz
MSwgI3tvcGVyYW5kc1syXS5hc21MYWJlbH0iCisgICAgZWxzZQorICAgICAgICByaXNjdjY0UmFp
c2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgZW5kCitlbmQKKworZGVmIHJpc2N2
NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCBzaXplLCB0ZXN0KQorICAg
IGRlZiBicmFuY2hJbnN0cnVjdGlvbih0ZXN0KQorICAgICAgICBjYXNlIHRlc3QKKyAgICAgICAg
d2hlbiA6egorICAgICAgICAgICAgImJlcXoiCisgICAgICAgIHdoZW4gOm56CisgICAgICAgICAg
ICAiYm5leiIKKyAgICAgICAgd2hlbiA6cworICAgICAgICAgICAgImJsdHoiCisgICAgICAgIGVs
c2UKKyAgICAgICAgZW5kCisgICAgZW5kCisKKyAgICBkZWYgc2lnbkV4dGVuZEZvclNpemUodGFy
Z2V0LCBzaXplKQorICAgICAgICBjYXNlIHNpemUKKyAgICAgICAgd2hlbiA6YgorICAgICAgICAg
ICAgJGFzbS5wdXRzICJzbGxpICN7dGFyZ2V0fSwgI3t0YXJnZXR9LCAyNCIKKyAgICAgICAgICAg
ICRhc20ucHV0cyAic2V4dC53ICN7dGFyZ2V0fSwgI3t0YXJnZXR9IgorICAgICAgICAgICAgJGFz
bS5wdXRzICJzcmFpICN7dGFyZ2V0fSwgI3t0YXJnZXR9LCAyNCIKKyAgICAgICAgd2hlbiA6aAor
ICAgICAgICAgICAgJGFzbS5wdXRzICJzbGxpICN7dGFyZ2V0fSwgI3t0YXJnZXR9LCAxNiIKKyAg
ICAgICAgICAgICRhc20ucHV0cyAic2V4dC53ICN7dGFyZ2V0fSwgI3t0YXJnZXR9IgorICAgICAg
ICAgICAgJGFzbS5wdXRzICJzcmFpICN7dGFyZ2V0fSwgI3t0YXJnZXR9LCAxNiIKKyAgICAgICAg
d2hlbiA6dworICAgICAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgI3t0YXJnZXR9LCAje3Rhcmdl
dH0iCisgICAgICAgIHdoZW4gOmQKKyAgICAgICAgICAgIHJldHVybgorICAgICAgICBlbmQKKyAg
ICBlbmQKKworICAgIGJJbnN0cnVjdGlvbiA9IGJyYW5jaEluc3RydWN0aW9uKHRlc3QpCisgICAg
bG9hZEluc3RydWN0aW9uID0gcmlzY3Y2NExvYWRJbnN0cnVjdGlvbihzaXplKQorCisgICAgY2Fz
ZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgIHdoZW4gW1JlZ2lzdGVySUQsIExv
Y2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAgIGNhc2UgdGVzdAorICAgICAgICB3aGVuIDpzCisg
ICAgICAgICAgICAkYXNtLnB1dHMgIm12IHgzMSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFu
ZH0iCisgICAgICAgICAgICBzaWduRXh0ZW5kRm9yU2l6ZSgneDMxJywgc2l6ZSkKKyAgICAgICAg
ICAgICRhc20ucHV0cyAiI3tiSW5zdHJ1Y3Rpb259IHgzMSwgI3tvcGVyYW5kc1sxXS5hc21MYWJl
bH0iCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tiSW5zdHJ1Y3Rpb259
ICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLmFzbUxhYmVsfSIK
KyAgICAgICAgZW5kCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCwgTG9jYWxMYWJl
bFJlZmVyZW5jZV0KKyAgICAgICAgJGFzbS5wdXRzICJhbmQgeDMxLCAje29wZXJhbmRzWzBdLnJp
c2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIHNp
Z25FeHRlbmRGb3JTaXplKCd4MzEnLCBzaXplKQorICAgICAgICAkYXNtLnB1dHMgIiN7Ykluc3Ry
dWN0aW9ufSB4MzEsICN7b3BlcmFuZHNbMl0uYXNtTGFiZWx9IgorICAgIHdoZW4gW1JlZ2lzdGVy
SUQsIEltbWVkaWF0ZSwgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgaWYgb3BlcmFuZHNb
MV0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExv
YWQoUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzEpCisgICAgICAgICAgICAkYXNtLnB1dHMgImFu
ZCB4MzEsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEiCisgICAgICAgIGVsc2UK
KyAgICAgICAgICAgICRhc20ucHV0cyAiYW5kaSB4MzEsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9w
ZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZW5kCisgICAg
ICAgIHNpZ25FeHRlbmRGb3JTaXplKCd4MzEnLCBzaXplKQorICAgICAgICAkYXNtLnB1dHMgIiN7
Ykluc3RydWN0aW9ufSB4MzEsICN7b3BlcmFuZHNbMl0uYXNtTGFiZWx9IgorICAgIHdoZW4gW0Fk
ZHJlc3MsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAgIGlmIG9wZXJhbmRzWzBdLnJpc2N2
NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAgIG9wZXJhbmRzWzBdLnJpc2N2NjRMb2FkKFJJU0NW
NjRTY3JhdGNoUmVnaXN0ZXIueDMxKQorICAgICAgICAgICAgJGFzbS5wdXRzICIje2xvYWRJbnN0
cnVjdGlvbn0geDMxLCAwKHgzMSkiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0
cyAiI3tsb2FkSW5zdHJ1Y3Rpb259IHgzMSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0i
CisgICAgICAgIGVuZAorICAgICAgICAkYXNtLnB1dHMgIiN7Ykluc3RydWN0aW9ufSB4MzEsICN7
b3BlcmFuZHNbMV0uYXNtTGFiZWx9IgorICAgIHdoZW4gW0FkZHJlc3MsIEltbWVkaWF0ZSwgTG9j
YWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgaWYgb3BlcmFuZHNbMF0ucmlzY3Y2NFJlcXVpcmVz
TG9hZAorICAgICAgICAgICAgb3BlcmFuZHNbMF0ucmlzY3Y2NExvYWQoUklTQ1Y2NFNjcmF0Y2hS
ZWdpc3Rlci54MzEpCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7bG9hZEluc3RydWN0aW9ufSB4
MzAsIDAoeDMxKSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgJGFzbS5wdXRzICIje2xvYWRJ
bnN0cnVjdGlvbn0geDMwLCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAg
ZW5kCisgICAgICAgIGlmIG9wZXJhbmRzWzFdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAg
ICAgIG9wZXJhbmRzWzFdLnJpc2N2NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxKQor
ICAgICAgICAgICAgJGFzbS5wdXRzICJhbmQgeDMxLCB4MzAsIHgzMSIKKyAgICAgICAgZWxzZQor
ICAgICAgICAgICAgJGFzbS5wdXRzICJhbmRpIHgzMSwgeDMwLCAje29wZXJhbmRzWzFdLnJpc2N2
NjRPcGVyYW5kfSIKKyAgICAgICAgZW5kCisgICAgICAgIHNpZ25FeHRlbmRGb3JTaXplKCd4MzEn
LCBzaXplKQorICAgICAgICAkYXNtLnB1dHMgIiN7Ykluc3RydWN0aW9ufSB4MzEsICN7b3BlcmFu
ZHNbMl0uYXNtTGFiZWx9IgorICAgIHdoZW4gW0Jhc2VJbmRleCwgTG9jYWxMYWJlbFJlZmVyZW5j
ZV0KKyAgICAgICAgb3BlcmFuZHNbMF0ucmlzY3Y2NExvYWQoUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rl
ci54MzEsIFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMwKQorICAgICAgICAkYXNtLnB1dHMgIiN7
bG9hZEluc3RydWN0aW9ufSB4MzEsIDAoeDMxKSIKKyAgICAgICAgJGFzbS5wdXRzICIje2JJbnN0
cnVjdGlvbn0geDMxLCAje29wZXJhbmRzWzFdLmFzbUxhYmVsfSIKKyAgICBlbHNlCisgICAgICAg
IHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICBlbmQKK2VuZAor
CitkZWYgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaEZvckFkZGl0aW9uT3BlcmF0aW9uKG9w
ZXJhbmRzLCBzaXplLCBvcGVyYXRpb24sIHRlc3QpCisgICAgZGVmIGFkZGl0aW9uSW5zdHJ1Y3Rp
b24oc2l6ZSwgb3BlcmF0aW9uKQorICAgICAgICBjYXNlIG9wZXJhdGlvbgorICAgICAgICB3aGVu
IDphZGQKKyAgICAgICAgICAgIHNpemUgPT0gOncgPyAiYWRkdyIgOiAiYWRkIgorICAgICAgICB3
aGVuIDpzdWIKKyAgICAgICAgICAgIHNpemUgPT0gOncgPyAic3VidyIgOiAic3ViIgorICAgICAg
ICBlbHNlCisgICAgICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgYXJpdGhtZXRpYyBvcGVyYXRp
b24iCisgICAgICAgIGVuZAorICAgIGVuZAorCisgICAgZGVmIGVtaXRCcmFuY2hGb3JUZXN0KHRl
c3QsIHRhcmdldCwgbGFiZWwpCisgICAgICAgIGNhc2UgdGVzdAorICAgICAgICB3aGVuIDp6Cisg
ICAgICAgICAgICAkYXNtLnB1dHMgImJlcXogI3t0YXJnZXQucmlzY3Y2NE9wZXJhbmR9LCAje2xh
YmVsLmFzbUxhYmVsfSIKKyAgICAgICAgd2hlbiA6bnoKKyAgICAgICAgICAgICRhc20ucHV0cyAi
Ym5leiAje3RhcmdldC5yaXNjdjY0T3BlcmFuZH0sICN7bGFiZWwuYXNtTGFiZWx9IgorICAgICAg
ICB3aGVuIDpzCisgICAgICAgICAgICAkYXNtLnB1dHMgImJsdHogI3t0YXJnZXQucmlzY3Y2NE9w
ZXJhbmR9LCAje2xhYmVsLmFzbUxhYmVsfSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmFp
c2UgIlVuc3VwcG9ydGVkIHRlc3QiCisgICAgICAgIGVuZAorICAgIGVuZAorCisgICAgaW5zdHJ1
Y3Rpb24gPSBhZGRpdGlvbkluc3RydWN0aW9uKHNpemUsIG9wZXJhdGlvbikKKyAgICBsb2FkSW5z
dHJ1Y3Rpb24gPSByaXNjdjY0TG9hZEluc3RydWN0aW9uKHNpemUpCisgICAgc3RvcmVJbnN0cnVj
dGlvbiA9IHJpc2N2NjRTdG9yZUluc3RydWN0aW9uKHNpemUpCisKKyAgICBjYXNlIHJpc2N2NjRP
cGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCwg
TG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgb3BlcmFuZHMgPSBbb3BlcmFuZHNbMV0sIG9w
ZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSwgb3BlcmFuZHNbMl1dCisgICAgd2hlbiBbSW1tZWRpYXRl
LCBSZWdpc3RlcklELCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICBvcGVyYW5kcyA9IFtv
cGVyYW5kc1sxXSwgb3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdLCBvcGVyYW5kc1syXV0KKyAgICBl
bmQKKworICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICB3aGVuIFtS
ZWdpc3RlcklELCBSZWdpc3RlcklELCBSZWdpc3RlcklELCBMb2NhbExhYmVsUmVmZXJlbmNlXQor
ICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9w
ZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNj
djY0T3BlcmFuZH0iCisgICAgICAgICRhc20ucHV0cyAibXYgeDMwLCAje29wZXJhbmRzWzJdLnJp
c2N2NjRPcGVyYW5kfSIKKyAgICAgICAgcmlzY3Y2NEVtaXRSZWdpc3Rlck1hc2sob3BlcmFuZHNb
Ml0sIHNpemUpCisgICAgICAgIGVtaXRCcmFuY2hGb3JUZXN0KHRlc3QsIFJJU0NWNjRTY3JhdGNo
UmVnaXN0ZXIueDMwLCBvcGVyYW5kc1szXSkKKyAgICB3aGVuIFtSZWdpc3RlcklELCBJbW1lZGlh
dGUsIFJlZ2lzdGVySUQsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAgICRhc20ucHV0cyAi
bGkgeDMxLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgJGFzbS5wdXRz
ICIje2luc3RydWN0aW9ufSAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5k
c1swXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAgICAgICAgJGFzbS5wdXRzICJtdiB4MzAsICN7
b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICByaXNjdjY0RW1pdFJlZ2lzdGVy
TWFzayhvcGVyYW5kc1syXSwgc2l6ZSkKKyAgICAgICAgZW1pdEJyYW5jaEZvclRlc3QodGVzdCwg
UklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzAsIG9wZXJhbmRzWzNdKQorICAgIHdoZW4gW0ltbWVk
aWF0ZSwgQWRkcmVzcywgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgJGFzbS5wdXRzICJs
aSB4MzAsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICBpZiBvcGVyYW5k
c1sxXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICBvcGVyYW5kc1sxXS5yaXNjdjY0
TG9hZChSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMSkKKyAgICAgICAgICAgICRhc20ucHV0cyAi
I3tsb2FkSW5zdHJ1Y3Rpb259IHgzMSwgMCh4MzEpIgorICAgICAgICBlbHNlCisgICAgICAgICAg
ICAkYXNtLnB1dHMgIiN7bG9hZEluc3RydWN0aW9ufSB4MzEsICN7b3BlcmFuZHNbMV0ucmlzY3Y2
NE9wZXJhbmR9IgorICAgICAgICBlbmQKKyAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9u
fSB4MzAsIHgzMCwgeDMxIgorICAgICAgICBpZiBvcGVyYW5kc1sxXS5yaXNjdjY0UmVxdWlyZXNM
b2FkCisgICAgICAgICAgICBvcGVyYW5kc1sxXS5yaXNjdjY0TG9hZChSSVNDVjY0U2NyYXRjaFJl
Z2lzdGVyLngzMSkKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tzdG9yZUluc3RydWN0aW9ufSB4
MzAsIDAoeDMxKSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgJGFzbS5wdXRzICIje3N0b3Jl
SW5zdHJ1Y3Rpb259IHgzMCwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAg
IGVuZAorICAgICAgICBlbWl0QnJhbmNoRm9yVGVzdCh0ZXN0LCBSSVNDVjY0U2NyYXRjaFJlZ2lz
dGVyLngzMCwgb3BlcmFuZHNbMl0pCisgICAgZWxzZQorICAgICAgICByaXNjdjY0UmFpc2VNaXNt
YXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgZW5kCitlbmQKKworZGVmIHJpc2N2NjRFbWl0
Q29uZGl0aW9uYWxCcmFuY2hGb3JNdWx0aXBsaWNhdGlvbk9wZXJhdGlvbihvcGVyYW5kcywgc2l6
ZSwgdGVzdCkKKyAgICByYWlzZSAiVW5zdXBwb3J0ZWQgc2l6ZSIgdW5sZXNzIHNpemUgPT0gOncK
KworICAgIGRlZiBlbWl0TXVsdGlwbGljYXRpb24obGhzLCByaHMpCisgICAgICAgICRhc20ucHV0
cyAic2V4dC53IHgyOCwgI3tsaHMucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAkYXNtLnB1dHMg
InNleHQudyB4MjksICN7cmhzLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgJGFzbS5wdXRzICJt
dWxoIHgzMCwgeDI4LCB4MjkiCisgICAgICAgICRhc20ucHV0cyAibXVsIHgyOSwgeDI4LCB4Mjki
CisgICAgZW5kCisKKyAgICBkZWYgZW1pdEJyYW5jaEZvclRlc3QodGVzdCwgdGFyZ2V0SGksIHRh
cmdldExvLCBsYWJlbCkKKyAgICAgICAgY2FzZSB0ZXN0CisgICAgICAgIHdoZW4gOnoKKyAgICAg
ICAgICAgICRhc20ucHV0cyAib3IgeDMxLCAje3RhcmdldExvLnJpc2N2NjRPcGVyYW5kfSwgI3t0
YXJnZXRIaS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAkYXNtLnB1dHMgImJlcXogeDMx
LCAje2xhYmVsLmFzbUxhYmVsfSIKKyAgICAgICAgd2hlbiA6bnoKKyAgICAgICAgICAgICRhc20u
cHV0cyAib3IgeDMxLCAje3RhcmdldExvLnJpc2N2NjRPcGVyYW5kfSwgI3t0YXJnZXRIaS5yaXNj
djY0T3BlcmFuZH0iCisgICAgICAgICAgICAkYXNtLnB1dHMgImJuZXogeDMxLCAje2xhYmVsLmFz
bUxhYmVsfSIKKyAgICAgICAgd2hlbiA6cworICAgICAgICAgICAgJGFzbS5wdXRzICJibHR6ICN7
dGFyZ2V0SGkucmlzY3Y2NE9wZXJhbmR9LCAje2xhYmVsLmFzbUxhYmVsfSIKKyAgICAgICAgZWxz
ZQorICAgICAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIHRlc3QiCisgICAgICAgIGVuZAorICAg
IGVuZAorCisgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgIHdoZW4g
W1JlZ2lzdGVySUQsIFJlZ2lzdGVySUQsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAgIGVt
aXRNdWx0aXBsaWNhdGlvbihvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV0pCisgICAgICAgICRhc20u
cHV0cyAibXYgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIHgyOSIKKyAgICAgICAgcmlz
Y3Y2NEVtaXRSZWdpc3Rlck1hc2sob3BlcmFuZHNbMV0sIHNpemUpCisKKyAgICAgICAgZW1pdEJy
YW5jaEZvclRlc3QodGVzdCwgUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzAsIFJJU0NWNjRTY3Jh
dGNoUmVnaXN0ZXIueDI5LCBvcGVyYW5kc1syXSkKKyAgICB3aGVuIFtJbW1lZGlhdGUsIFJlZ2lz
dGVySUQsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAgICRhc20ucHV0cyAibGkgeDI4LCAj
e29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZW1pdE11bHRpcGxpY2F0aW9u
KFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDI4LCBvcGVyYW5kc1sxXSkKKyAgICAgICAgJGFzbS5w
dXRzICJtdiAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgeDI5IgorICAgICAgICByaXNj
djY0RW1pdFJlZ2lzdGVyTWFzayhvcGVyYW5kc1sxXSwgc2l6ZSkKKworICAgICAgICBlbWl0QnJh
bmNoRm9yVGVzdCh0ZXN0LCBSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMCwgUklTQ1Y2NFNjcmF0
Y2hSZWdpc3Rlci54MjksIG9wZXJhbmRzWzJdKQorICAgIGVsc2UKKyAgICAgICAgcmlzY3Y2NFJh
aXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgIGVuZAorZW5kCisKK2RlZiByaXNj
djY0RW1pdE92ZXJmbG93QnJhbmNoRm9yT3BlcmF0aW9uKG9wZXJhbmRzLCBzaXplLCBvcGVyYXRp
b24pCisgICAgcmFpc2UgIlVuc3VwcG9ydGVkIHNpemUiIHVubGVzcyBzaXplID09IDp3CisKKyAg
ICBkZWYgb3BlcmF0aW9uSW5zdHJ1Y3Rpb24ob3BlcmF0aW9uKQorICAgICAgICBjYXNlIG9wZXJh
dGlvbgorICAgICAgICB3aGVuIDphZGQKKyAgICAgICAgICAgICJhZGQiCisgICAgICAgIHdoZW4g
OnN1YgorICAgICAgICAgICAgInN1YiIKKyAgICAgICAgd2hlbiA6bXVsCisgICAgICAgICAgICAi
bXVsIgorICAgICAgICBlbHNlCisgICAgICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgb3BlcmF0
aW9uIgorICAgICAgICBlbmQKKyAgICBlbmQKKworICAgIGluc3RydWN0aW9uID0gb3BlcmF0aW9u
SW5zdHJ1Y3Rpb24ob3BlcmF0aW9uKQorCisgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9w
ZXJhbmRzKQorICAgIHdoZW4gW1JlZ2lzdGVySUQsIFJlZ2lzdGVySUQsIExvY2FsTGFiZWxSZWZl
cmVuY2VdCisgICAgICAgIG9wZXJhbmRzID0gW29wZXJhbmRzWzFdLCBvcGVyYW5kc1swXSwgb3Bl
cmFuZHNbMV0sIG9wZXJhbmRzWzJdXQorICAgIHdoZW4gW0ltbWVkaWF0ZSwgUmVnaXN0ZXJJRCwg
TG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgb3BlcmFuZHMgPSBbb3BlcmFuZHNbMV0sIG9w
ZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSwgb3BlcmFuZHNbMl1dCisgICAgZW5kCisKKyAgICBjYXNl
IHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVn
aXN0ZXJJRCwgUmVnaXN0ZXJJRCwgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgJGFzbS5w
dXRzICJzZXh0LncgeDMwLCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAg
JGFzbS5wdXRzICJzZXh0LncgeDMxLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAg
ICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSB4MzAsIHgzMCwgeDMxIgorICAgICAgICAk
YXNtLnB1dHMgInNleHQudyB4MjksIHgzMCIKKworICAgICAgICAkYXNtLnB1dHMgIm12ICN7b3Bl
cmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCB4MzAiCisgICAgICAgIHJpc2N2NjRFbWl0UmVnaXN0
ZXJNYXNrKG9wZXJhbmRzWzJdLCBzaXplKQorCisgICAgICAgICRhc20ucHV0cyAiYm5lIHgyOSwg
eDMwLCAje29wZXJhbmRzWzNdLmFzbUxhYmVsfSIKKyAgICB3aGVuIFtSZWdpc3RlcklELCBJbW1l
ZGlhdGUsIFJlZ2lzdGVySUQsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAgICRhc20ucHV0
cyAic2V4dC53IHgzMCwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICRh
c20ucHV0cyAibGkgeDMxLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAg
JGFzbS5wdXRzICJzZXh0LncgeDMxLCB4MzEiCisgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVj
dGlvbn0geDMwLCB4MzAsIHgzMSIKKyAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgeDI5LCB4MzAi
CisKKyAgICAgICAgJGFzbS5wdXRzICJtdiAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwg
eDMwIgorICAgICAgICByaXNjdjY0RW1pdFJlZ2lzdGVyTWFzayhvcGVyYW5kc1syXSwgc2l6ZSkK
KworICAgICAgICAkYXNtLnB1dHMgImJuZSB4MjksIHgzMCwgI3tvcGVyYW5kc1szXS5hc21MYWJl
bH0iCisgICAgZWxzZQorICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3Bl
cmFuZHMpCisgICAgZW5kCitlbmQKKworZGVmIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVyYW5kcywg
c2l6ZSwgY29uZGl0aW9uKQorICAgIGRlZiBzaWduRXh0ZW5kUmVnaXN0ZXJGb3JTaXplKHJlZ2lz
dGVyLCB0YXJnZXQsIHNpemUpCisgICAgICAgIGNhc2Ugc2l6ZQorICAgICAgICB3aGVuIDpiCisg
ICAgICAgICAgICAkYXNtLnB1dHMgInNsbGkgI3t0YXJnZXR9LCAje3JlZ2lzdGVyLnJpc2N2NjRP
cGVyYW5kfSwgMjQiCisgICAgICAgICAgICAkYXNtLnB1dHMgInNleHQudyAje3RhcmdldH0sICN7
dGFyZ2V0fSIKKyAgICAgICAgICAgICRhc20ucHV0cyAic3JhaSAje3RhcmdldH0sICN7dGFyZ2V0
fSwgMjQiCisgICAgICAgIHdoZW4gOncKKyAgICAgICAgICAgICRhc20ucHV0cyAic2V4dC53ICN7
dGFyZ2V0fSwgI3tyZWdpc3Rlci5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIHdoZW4gOmQKKyAg
ICAgICAgICAgICRhc20ucHV0cyAibXYgI3t0YXJnZXR9LCAje3JlZ2lzdGVyLnJpc2N2NjRPcGVy
YW5kfSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIHNpemUi
CisgICAgICAgIGVuZAorICAgIGVuZAorCisgICAgZGVmIHNpZ25FeHRlbmRJbW1lZGlhdGVGb3JT
aXplKGltbWVkaWF0ZSwgdGFyZ2V0LCBzaXplKQorICAgICAgICAkYXNtLnB1dHMgImxpICN7dGFy
Z2V0fSwgI3tpbW1lZGlhdGUucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICBjYXNlIHNpemUKKyAg
ICAgICAgd2hlbiA6YgorICAgICAgICAgICAgJGFzbS5wdXRzICJzbGxpICN7dGFyZ2V0fSwgI3t0
YXJnZXR9LCAyNCIKKyAgICAgICAgICAgICRhc20ucHV0cyAic2V4dC53ICN7dGFyZ2V0fSwgI3t0
YXJnZXR9IgorICAgICAgICAgICAgJGFzbS5wdXRzICJzcmFpICN7dGFyZ2V0fSwgI3t0YXJnZXR9
LCAyNCIKKyAgICAgICAgd2hlbiA6dworICAgICAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgI3t0
YXJnZXR9LCAje3RhcmdldH0iCisgICAgICAgIHdoZW4gOmQKKyAgICAgICAgZWxzZQorICAgICAg
ICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIHNpemUiCisgICAgICAgIGVuZAorICAgIGVuZAorCisg
ICAgZGVmIGxvYWRBbmRTaWduRXh0ZW5kQWRkcmVzc0ZvclNpemUoYWRkcmVzcywgdGFyZ2V0LCBz
aXplKQorICAgICAgICBpZiBhZGRyZXNzLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAg
IGFkZHJlc3MucmlzY3Y2NExvYWQoUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzEpCisgICAgICAg
ICAgICAkYXNtLnB1dHMgIiN7cmlzY3Y2NExvYWRJbnN0cnVjdGlvbihzaXplKX0gI3t0YXJnZXR9
LCAwKHgzMSkiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tyaXNjdjY0
TG9hZEluc3RydWN0aW9uKHNpemUpfSAje3RhcmdldH0sICN7YWRkcmVzcy5yaXNjdjY0T3BlcmFu
ZH0iCisgICAgICAgIGVuZAorICAgIGVuZAorCisgICAgZGVmIHNldEZvckNvbmRpdGlvbihsaHMs
IHJocywgdGFyZ2V0LCBjb25kaXRpb24pCisgICAgICAgIGNhc2UgY29uZGl0aW9uCisgICAgICAg
IHdoZW4gOmVxCisgICAgICAgICAgICAkYXNtLnB1dHMgInN1YiB4MzEsICN7bGhzfSwgI3tyaHN9
IgorICAgICAgICAgICAgJGFzbS5wdXRzICJzZXF6ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJh
bmR9LCB4MzEiCisgICAgICAgIHdoZW4gOm5lcQorICAgICAgICAgICAgJGFzbS5wdXRzICJzdWIg
eDMxLCAje2xoc30sICN7cmhzfSIKKyAgICAgICAgICAgICRhc20ucHV0cyAic25leiAje29wZXJh
bmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgeDMxIgorICAgICAgICB3aGVuIDphCisgICAgICAgICAg
ICAkYXNtLnB1dHMgInNsdHUgI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sICN7cmhzfSwg
I3tsaHN9IgorICAgICAgICB3aGVuIDphZXEKKyAgICAgICAgICAgICRhc20ucHV0cyAic2x0dSAj
e29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgI3tsaHN9LCAje3Joc30iCisgICAgICAgICAg
ICAkYXNtLnB1dHMgInhvcmkgI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFu
ZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAxIgorICAgICAgICB3aGVuIDpiCisgICAgICAgICAgICAk
YXNtLnB1dHMgInNsdHUgI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sICN7bGhzfSwgI3ty
aHN9IgorICAgICAgICB3aGVuIDpiZXEKKyAgICAgICAgICAgICRhc20ucHV0cyAic2x0dSAje29w
ZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgI3tyaHN9LCAje2xoc30iCisgICAgICAgICAgICAk
YXNtLnB1dHMgInhvcmkgI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNb
Ml0ucmlzY3Y2NE9wZXJhbmR9LCAxIgorICAgICAgICB3aGVuIDpsdAorICAgICAgICAgICAgJGFz
bS5wdXRzICJzbHQgI3t0YXJnZXQucmlzY3Y2NE9wZXJhbmR9LCAje2xoc30sICN7cmhzfSIKKyAg
ICAgICAgd2hlbiA6bHRlcQorICAgICAgICAgICAgJGFzbS5wdXRzICJzbHQgI3t0YXJnZXQucmlz
Y3Y2NE9wZXJhbmR9LCAje3Joc30sICN7bGhzfSIKKyAgICAgICAgICAgICRhc20ucHV0cyAieG9y
aSAje3RhcmdldC5yaXNjdjY0T3BlcmFuZH0sICN7dGFyZ2V0LnJpc2N2NjRPcGVyYW5kfSwgMSIK
KyAgICAgICAgd2hlbiA6Z3QKKyAgICAgICAgICAgICRhc20ucHV0cyAic2x0ICN7dGFyZ2V0LnJp
c2N2NjRPcGVyYW5kfSwgI3tyaHN9LCAje2xoc30iCisgICAgICAgIHdoZW4gOmd0ZXEKKyAgICAg
ICAgICAgICRhc20ucHV0cyAic2x0ICN7dGFyZ2V0LnJpc2N2NjRPcGVyYW5kfSwgI3tsaHN9LCAj
e3Joc30iCisgICAgICAgICAgICAkYXNtLnB1dHMgInhvcmkgI3t0YXJnZXQucmlzY3Y2NE9wZXJh
bmR9LCAje3RhcmdldC5yaXNjdjY0T3BlcmFuZH0sIDEiCisgICAgICAgIGVsc2UKKyAgICAgICAg
ICAgIHJhaXNlICJVbnN1cHBvcnRlZCBjb25kaXRpb24iCisgICAgICAgIGVuZAorICAgIGVuZAor
CisgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgIHdoZW4gW1JlZ2lz
dGVySUQsIFJlZ2lzdGVySUQsIFJlZ2lzdGVySURdCisgICAgICAgIHNpZ25FeHRlbmRSZWdpc3Rl
ckZvclNpemUob3BlcmFuZHNbMF0sICd4MzAnLCBzaXplKQorICAgICAgICBzaWduRXh0ZW5kUmVn
aXN0ZXJGb3JTaXplKG9wZXJhbmRzWzFdLCAneDMxJywgc2l6ZSkKKyAgICAgICAgc2V0Rm9yQ29u
ZGl0aW9uKCd4MzAnLCAneDMxJywgb3BlcmFuZHNbMl0sIGNvbmRpdGlvbikKKyAgICB3aGVuIFtS
ZWdpc3RlcklELCBJbW1lZGlhdGUsIFJlZ2lzdGVySURdCisgICAgICAgIHNpZ25FeHRlbmRSZWdp
c3RlckZvclNpemUob3BlcmFuZHNbMF0sICd4MzAnLCBzaXplKQorICAgICAgICBzaWduRXh0ZW5k
SW1tZWRpYXRlRm9yU2l6ZShvcGVyYW5kc1sxXSwgJ3gzMScsIHNpemUpCisgICAgICAgIHNldEZv
ckNvbmRpdGlvbigneDMwJywgJ3gzMScsIG9wZXJhbmRzWzJdLCBjb25kaXRpb24pCisgICAgd2hl
biBbQWRkcmVzcywgUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAgICAgbG9hZEFuZFNpZ25F
eHRlbmRBZGRyZXNzRm9yU2l6ZShvcGVyYW5kc1swXSwgJ3gzMCcsIHNpemUpCisgICAgICAgIHNp
Z25FeHRlbmRSZWdpc3RlckZvclNpemUob3BlcmFuZHNbMV0sICd4MzEnLCBzaXplKQorICAgICAg
ICBzZXRGb3JDb25kaXRpb24oJ3gzMCcsICd4MzEnLCBvcGVyYW5kc1syXSwgY29uZGl0aW9uKQor
ICAgIHdoZW4gW0FkZHJlc3MsIEltbWVkaWF0ZSwgUmVnaXN0ZXJJRF0KKyAgICAgICAgbG9hZEFu
ZFNpZ25FeHRlbmRBZGRyZXNzRm9yU2l6ZShvcGVyYW5kc1swXSwgJ3gzMCcsIHNpemUpCisgICAg
ICAgIHNpZ25FeHRlbmRJbW1lZGlhdGVGb3JTaXplKG9wZXJhbmRzWzFdLCAneDMxJywgc2l6ZSkK
KyAgICAgICAgc2V0Rm9yQ29uZGl0aW9uKCd4MzAnLCAneDMxJywgb3BlcmFuZHNbMl0sIGNvbmRp
dGlvbikKKyAgICBlbHNlCisgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhv
cGVyYW5kcykKKyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NEVtaXRUZXN0KG9wZXJhbmRzLCBz
aXplLCB0ZXN0KQorICAgIGRlZiB0ZXN0SW5zdHJ1Y3Rpb24odGVzdCkKKyAgICAgICAgY2FzZSB0
ZXN0CisgICAgICAgIHdoZW4gOnoKKyAgICAgICAgICAgICJzZXF6IgorICAgICAgICB3aGVuIDpu
egorICAgICAgICAgICAgInNuZXoiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJhaXNlICJV
bmtub3duIHRlc3QgdHlwZSIKKyAgICAgICAgZW5kCisgICAgZW5kCisKKyAgICBpbnN0cnVjdGlv
biA9IHRlc3RJbnN0cnVjdGlvbih0ZXN0KQorICAgIGxvYWRJbnN0cnVjdGlvbiA9IHJpc2N2NjRa
ZXJvRXh0ZW5kZWRMb2FkSW5zdHJ1Y3Rpb24oc2l6ZSkKKworICAgIGNhc2UgcmlzY3Y2NE9wZXJh
bmRUeXBlcyhvcGVyYW5kcykKKyAgICB3aGVuIFtSZWdpc3RlcklELCBSZWdpc3RlcklELCBSZWdp
c3RlcklEXQorICAgICAgICAkYXNtLnB1dHMgImFuZCB4MzEsICN7b3BlcmFuZHNbMF0ucmlzY3Y2
NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgJGFzbS5w
dXRzICIje2luc3RydWN0aW9ufSAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgeDMxIgor
ICAgIHdoZW4gW1JlZ2lzdGVySUQsIEltbWVkaWF0ZSwgUmVnaXN0ZXJJRF0KKyAgICAgICAgaWYg
b3BlcmFuZHNbMV0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgJGFzbS5wdXRzICJs
aSB4MzEsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgJGFzbS5w
dXRzICJhbmQgeDMxLCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgeDMxIgorICAgICAg
ICBlbHNlCisgICAgICAgICAgICAkYXNtLnB1dHMgImFuZGkgeDMxLCAje29wZXJhbmRzWzBdLnJp
c2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVu
ZAorICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMl0ucmlzY3Y2
NE9wZXJhbmR9LCB4MzEiCisgICAgd2hlbiBbQWRkcmVzcywgSW1tZWRpYXRlLCBSZWdpc3RlcklE
XQorICAgICAgICBpZiBvcGVyYW5kc1swXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAg
ICBvcGVyYW5kc1swXS5yaXNjdjY0TG9hZChSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMSkKKyAg
ICAgICAgICAgICRhc20ucHV0cyAiI3tsb2FkSW5zdHJ1Y3Rpb259IHgzMSwgMCh4MzEpIgorICAg
ICAgICBlbHNlCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7bG9hZEluc3RydWN0aW9ufSB4MzEs
ICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICBlbmQKKyAgICAgICAgaWYg
b3BlcmFuZHNbMV0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgJGFzbS5wdXRzICJs
aSB4MzAsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgJGFzbS5w
dXRzICJhbmQgeDMxLCB4MzAsIHgzMSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgJGFzbS5w
dXRzICJhbmRpIHgzMSwgeDMxLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAg
ICAgZW5kCisgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0gI3tvcGVyYW5kc1syXS5y
aXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAgICBlbHNlCisgICAgICAgIHJpc2N2NjRSYWlzZU1pc21h
dGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NEVtaXRM
b2dpY2FsT3BlcmF0aW9uKG9wZXJhbmRzLCBzaXplLCBvcGVyYXRpb24pCisgICAgZGVmIG9wSW5z
dHJ1Y3Rpb24ob3BlcmF0aW9uKQorICAgICAgICBjYXNlIG9wZXJhdGlvbgorICAgICAgICB3aGVu
IDphbmQKKyAgICAgICAgICAgICJhbmQiCisgICAgICAgIHdoZW4gOm9yCisgICAgICAgICAgICAi
b3IiCisgICAgICAgIHdoZW4gOnhvcgorICAgICAgICAgICAgInhvciIKKyAgICAgICAgZWxzZQor
ICAgICAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIGxvZ2ljYWwgb3BlcmF0aW9uIgorICAgICAg
ICBlbmQKKyAgICBlbmQKKworICAgIGluc3RydWN0aW9uID0gb3BJbnN0cnVjdGlvbihvcGVyYXRp
b24pCisgICAgbG9hZEluc3RydWN0aW9uID0gcmlzY3Y2NFplcm9FeHRlbmRlZExvYWRJbnN0cnVj
dGlvbihzaXplKQorICAgIHN0b3JlSW5zdHJ1Y3Rpb24gPSByaXNjdjY0U3RvcmVJbnN0cnVjdGlv
bihzaXplKQorCisgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgIHdo
ZW4gW1JlZ2lzdGVySUQsIFJlZ2lzdGVySURdCisgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVj
dGlvbn0gI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2
NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgcmlzY3Y2
NEVtaXRSZWdpc3Rlck1hc2sob3BlcmFuZHNbMV0sIHNpemUpCisgICAgd2hlbiBbUmVnaXN0ZXJJ
RCwgUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0
aW9ufSAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0
T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICByaXNjdjY0
RW1pdFJlZ2lzdGVyTWFzayhvcGVyYW5kc1syXSwgc2l6ZSkKKyAgICB3aGVuIFtSZWdpc3RlcklE
LCBJbW1lZGlhdGUsIFJlZ2lzdGVySURdCisgICAgICAgIGlmIG9wZXJhbmRzWzFdLnJpc2N2NjRS
ZXF1aXJlc0xvYWQKKyAgICAgICAgICAgICRhc20ucHV0cyAibGkgeDMxLCAje29wZXJhbmRzWzFd
LnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0g
I3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJh
bmR9LCB4MzEiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVj
dGlvbn1pICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2
NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVuZAor
ICAgICAgICByaXNjdjY0RW1pdFJlZ2lzdGVyTWFzayhvcGVyYW5kc1syXSwgc2l6ZSkKKyAgICB3
aGVuIFtJbW1lZGlhdGUsIFJlZ2lzdGVySURdCisgICAgICAgIGlmIG9wZXJhbmRzWzBdLnJpc2N2
NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAgICRhc20ucHV0cyAibGkgeDMxLCAje29wZXJhbmRz
WzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlv
bn0gI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSwgI3tvcGVyYW5kc1sxXS5yaXNj
djY0T3BlcmFuZH0iCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tpbnN0
cnVjdGlvbn1pICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJp
c2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVu
ZAorICAgICAgICByaXNjdjY0RW1pdFJlZ2lzdGVyTWFzayhvcGVyYW5kc1sxXSwgc2l6ZSkKKyAg
ICB3aGVuIFtJbW1lZGlhdGUsIEFkZHJlc3NdCisgICAgICAgIGlmIG9wZXJhbmRzWzFdLnJpc2N2
NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAgIG9wZXJhbmRzWzFdLnJpc2N2NjRMb2FkKFJJU0NW
NjRTY3JhdGNoUmVnaXN0ZXIueDMxKQorICAgICAgICAgICAgJGFzbS5wdXRzICIje2xvYWRJbnN0
cnVjdGlvbn0geDMwLCAwKHgzMSkiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0
cyAiI3tsb2FkSW5zdHJ1Y3Rpb259IHgzMCwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0i
CisgICAgICAgIGVuZAorICAgICAgICAkYXNtLnB1dHMgImxpIHgzMSwgI3tvcGVyYW5kc1swXS5y
aXNjdjY0T3BlcmFuZH0iCisgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0geDMwLCB4
MzEsIHgzMCIKKyAgICAgICAgaWYgb3BlcmFuZHNbMV0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAg
ICAgICAgICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExvYWQoUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54
MzEpCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7c3RvcmVJbnN0cnVjdGlvbn0geDMwLCAwKHgz
MSkiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tzdG9yZUluc3RydWN0
aW9ufSB4MzAsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICBlbmQKKyAg
ICBlbHNlCisgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykK
KyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NEVtaXRDb21wbGVtZW50T3BlcmF0aW9uKG9wZXJh
bmRzLCBzaXplLCBvcGVyYXRpb24pCisgICAgZGVmIGNvbXBsZW1lbnRJbnN0cnVjdGlvbihzaXpl
LCBvcGVyYXRpb24pCisgICAgICAgIGNhc2Ugb3BlcmF0aW9uCisgICAgICAgIHdoZW4gOm5vdAor
ICAgICAgICAgICAgIm5vdCIKKyAgICAgICAgd2hlbiA6bmVnCisgICAgICAgICAgICBzaXplID09
IDp3ID8gIm5lZ3ciIDogIm5lZyIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmFpc2UgIlVu
c3VwcG9ydGVkIGNvbXBsZW1lbnQgb3BlcmF0aW9uIgorICAgICAgICBlbmQKKyAgICBlbmQKKwor
ICAgIGluc3RydWN0aW9uID0gY29tcGxlbWVudEluc3RydWN0aW9uKHNpemUsIG9wZXJhdGlvbikK
KworICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICB3aGVuIFtSZWdp
c3RlcklEXQorICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMF0u
cmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAg
cmlzY3Y2NEVtaXRSZWdpc3Rlck1hc2sob3BlcmFuZHNbMF0sIHNpemUpCisgICAgZWxzZQorICAg
ICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgZW5kCitl
bmQKKworZGVmIHJpc2N2NjRFbWl0U2hpZnQob3BlcmFuZHMsIHNpemUsIHNoaWZ0KQorICAgIHJh
aXNlICJVbnN1cHBvcnRlZCBzaXplIiB1bmxlc3MgWzp3LCA6ZF0uaW5jbHVkZT8gc2l6ZQorCisg
ICAgZGVmIHNoaWZ0SW5zdHJ1Y3Rpb24oc2l6ZSwgc2hpZnQpCisgICAgICAgIGNhc2Ugc2hpZnQK
KyAgICAgICAgd2hlbiA6bGxlZnQKKyAgICAgICAgICAgIHNpemUgPT0gOncgPyAic2xsdyIgOiAi
c2xsIgorICAgICAgICB3aGVuIDpscmlnaHQKKyAgICAgICAgICAgIHNpemUgPT0gOncgPyAic3Js
dyIgOiAic3JsIgorICAgICAgICB3aGVuIDphcmlnaHQKKyAgICAgICAgICAgIHNpemUgPT0gOncg
PyAic3JhdyIgOiAic3JhIgorICAgICAgICBlbHNlCisgICAgICAgICAgICByYWlzZSAiVW5zdXBw
b3J0ZWQgc2hpZnQgdHlwZSIKKyAgICAgICAgZW5kCisgICAgZW5kCisKKyAgICBjYXNlIHJpc2N2
NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJ
RF0KKyAgICAgICAgJGFzbS5wdXRzICIje3NoaWZ0SW5zdHJ1Y3Rpb24oc2l6ZSwgc2hpZnQpfSAj
e29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFu
ZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICByaXNjdjY0RW1pdFJl
Z2lzdGVyTWFzayhvcGVyYW5kc1sxXSwgc2l6ZSkKKyAgICB3aGVuIFtJbW1lZGlhdGUsIFJlZ2lz
dGVySURdCisgICAgICAgICRhc20ucHV0cyAibGkgeDMxLCAje29wZXJhbmRzWzBdLnJpc2N2NjRP
cGVyYW5kfSIKKyAgICAgICAgJGFzbS5wdXRzICIje3NoaWZ0SW5zdHJ1Y3Rpb24oc2l6ZSwgc2hp
ZnQpfSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0
T3BlcmFuZH0sIHgzMSIKKyAgICAgICAgcmlzY3Y2NEVtaXRSZWdpc3Rlck1hc2sob3BlcmFuZHNb
MV0sIHNpemUpCisgICAgZWxzZQorICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFu
ZHMob3BlcmFuZHMpCisgICAgZW5kCitlbmQKKworZGVmIHJpc2N2NjRFbWl0Qml0RXh0ZW5zaW9u
KG9wZXJhbmRzLCBmcm9tU2l6ZSwgdG9TaXplLCBleHRlbnNpb25UeXBlKQorICAgIHJhaXNlICJV
bnN1cHBvcnRlZCBvcGVyYW5kIHR5cGVzIiB1bmxlc3MgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVy
YW5kcykgPT0gW1JlZ2lzdGVySUQsIFJlZ2lzdGVySURdCisKKyAgICBkZWYgZW1pdFNoaWZ0cyhv
cGVyYW5kcywgc2hpZnRDb3VudCkKKyAgICAgICAgJGFzbS5wdXRzICJzbGxpICN7b3BlcmFuZHNb
MV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tzaGlm
dENvdW50fSIKKyAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgI3tvcGVyYW5kc1sxXS5yaXNjdjY0
T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAkYXNtLnB1
dHMgInNyYWkgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlz
Y3Y2NE9wZXJhbmR9LCAje3NoaWZ0Q291bnR9IgorICAgIGVuZAorCisgICAgY2FzZSBbZnJvbVNp
emUsIHRvU2l6ZSwgZXh0ZW5zaW9uVHlwZV0KKyAgICB3aGVuIFs6YiwgOncsIDpzaWduXSwgWzpi
LCA6ZCwgOnNpZ25dCisgICAgICAgIGVtaXRTaGlmdHMob3BlcmFuZHMsIDI0KQorICAgICAgICBy
aXNjdjY0RW1pdFJlZ2lzdGVyTWFzayhvcGVyYW5kc1sxXSwgdG9TaXplKQorICAgIHdoZW4gWzpo
LCA6dywgOnNpZ25dLCBbOmgsIDpkLCA6c2lnbl0KKyAgICAgICAgZW1pdFNoaWZ0cyhvcGVyYW5k
cywgMTYpCisgICAgICAgIHJpc2N2NjRFbWl0UmVnaXN0ZXJNYXNrKG9wZXJhbmRzWzFdLCB0b1Np
emUpCisgICAgd2hlbiBbOncsIDpkLCA6c2lnbl0KKyAgICAgICAgJGFzbS5wdXRzICJzZXh0Lncg
I3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJh
bmR9IgorICAgIHdoZW4gWzp3LCA6ZCwgOnplcm9dCisgICAgICAgICRhc20ucHV0cyAic2xsaSAj
e29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFu
ZH0sIDMyIgorICAgICAgICAkYXNtLnB1dHMgInNybGkgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3Bl
cmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAzMiIKKyAgICBlbHNlCisgICAg
ICAgIHJhaXNlICJVbnN1cHBvcnRlZCBiaXQtZXh0ZW5zaW9uIG9wZXJhdGlvbiIKKyAgICBlbmQK
K2VuZAorCitkZWYgcmlzY3Y2NEVtaXRGUExvYWQob3BlcmFuZHMsIGxvYWRJbnN0cnVjdGlvbikK
KyAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgd2hlbiBbQWRkcmVz
cywgRlBSZWdpc3RlcklEXQorICAgICAgICBpZiBvcGVyYW5kc1swXS5yaXNjdjY0UmVxdWlyZXNM
b2FkCisgICAgICAgICAgICBvcGVyYW5kc1swXS5yaXNjdjY0TG9hZChSSVNDVjY0U2NyYXRjaFJl
Z2lzdGVyLngzMSkKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tsb2FkSW5zdHJ1Y3Rpb259ICN7
b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAwKHgzMSkiCisgICAgICAgIGVsc2UKKyAgICAg
ICAgICAgICRhc20ucHV0cyAiI3tsb2FkSW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMV0ucmlzY3Y2
NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZW5kCisg
ICAgd2hlbiBbQmFzZUluZGV4LCBGUFJlZ2lzdGVySURdCisgICAgICAgIG9wZXJhbmRzWzBdLnJp
c2N2NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxLCBSSVNDVjY0U2NyYXRjaFJlZ2lz
dGVyLngzMCkKKyAgICAgICAgJGFzbS5wdXRzICIje2xvYWRJbnN0cnVjdGlvbn0gI3tvcGVyYW5k
c1sxXS5yaXNjdjY0T3BlcmFuZH0sIDAoeDMxKSIKKyAgICBlbHNlCisgICAgICAgIHJpc2N2NjRS
YWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICBlbmQKK2VuZAorCitkZWYgcmlz
Y3Y2NEVtaXRGUFN0b3JlKG9wZXJhbmRzLCBzdG9yZUluc3RydWN0aW9uKQorICAgIGNhc2Ugcmlz
Y3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICB3aGVuIFtGUFJlZ2lzdGVySUQsIEFkZHJl
c3NdCisgICAgICAgIGlmIG9wZXJhbmRzWzFdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAg
ICAgIG9wZXJhbmRzWzFdLnJpc2N2NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxKQor
ICAgICAgICAgICAgJGFzbS5wdXRzICIje3N0b3JlSW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMF0u
cmlzY3Y2NE9wZXJhbmR9LCAwKHgzMSkiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgICRhc20u
cHV0cyAiI3tzdG9yZUluc3RydWN0aW9ufSAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwg
I3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVuZAorICAgIHdoZW4gW0ZQ
UmVnaXN0ZXJJRCwgQmFzZUluZGV4XQorICAgICAgICBvcGVyYW5kc1sxXS5yaXNjdjY0TG9hZChS
SVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMSwgUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzApCisg
ICAgICAgICRhc20ucHV0cyAiI3tzdG9yZUluc3RydWN0aW9ufSAje29wZXJhbmRzWzBdLnJpc2N2
NjRPcGVyYW5kfSwgMCh4MzEpIgorICAgIGVsc2UKKyAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0
Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgIGVuZAorZW5kCisKK2RlZiByaXNjdjY0RW1pdEZQ
T3BlcmF0aW9uKG9wZXJhbmRzLCBvcGVyYXRpb24pCisgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5
cGVzKG9wZXJhbmRzKQorICAgIHdoZW4gW0ZQUmVnaXN0ZXJJRCwgRlBSZWdpc3RlcklELCBGUFJl
Z2lzdGVySURdCisgICAgICAgICRhc20ucHV0cyAiI3tvcGVyYXRpb259ICN7b3BlcmFuZHNbMl0u
cmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5k
c1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgd2hlbiBbRlBSZWdpc3RlcklELCBGUFJlZ2lzdGVy
SURdCisgICAgICAgICRhc20ucHV0cyAiI3tvcGVyYXRpb259ICN7b3BlcmFuZHNbMV0ucmlzY3Y2
NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICBlbHNlCisgICAg
ICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICBlbmQKK2Vu
ZAorCitkZWYgcmlzY3Y2NEVtaXRGUENvbXBhcmUob3BlcmFuZHMsIHByZWNpc2lvbiwgY29uZGl0
aW9uKQorICAgIGRlZiBzdWZmaXhGb3JQcmVjaXNpb24ocHJlY2lzaW9uKQorICAgICAgICBjYXNl
IHByZWNpc2lvbgorICAgICAgICB3aGVuIDpzCisgICAgICAgICAgICAicyIKKyAgICAgICAgd2hl
biA6ZAorICAgICAgICAgICAgImQiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJhaXNlICJV
bnN1cHBvcnRlZCBwcmVjaXNpb24iCisgICAgICAgIGVuZAorICAgIGVuZAorCisgICAgZGVmIGlu
c3RydWN0aW9uRm9yQ29uZGl0aW9uKGNvbmRpdGlvbiwgcHJlY2lzaW9uKQorICAgICAgICBzdWZm
aXggPSBzdWZmaXhGb3JQcmVjaXNpb24ocHJlY2lzaW9uKQorICAgICAgICBjYXNlIGNvbmRpdGlv
bgorICAgICAgICB3aGVuIDplcSwgOm5lcQorICAgICAgICAgICAgImZlcS4je3N1ZmZpeH0iCisg
ICAgICAgIHdoZW4gOmx0LCA6Z3QKKyAgICAgICAgICAgICJmbHQuI3tzdWZmaXh9IgorICAgICAg
ICB3aGVuIDpsdGVxLCA6Z3RlcQorICAgICAgICAgICAgImZsZS4je3N1ZmZpeH0iCisgICAgICAg
IGVsc2UKKyAgICAgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCBjb25kaXRpb24iCisgICAgICAg
IGVuZAorICAgIGVuZAorCisgICAgZGVmIHNldEZvckNvbmRpdGlvbihvcGVyYW5kcywgcHJlY2lz
aW9uLCBjb25kaXRpb24pCisgICAgICAgIGluc3RydWN0aW9uID0gaW5zdHJ1Y3Rpb25Gb3JDb25k
aXRpb24oY29uZGl0aW9uLCBwcmVjaXNpb24pCisgICAgICAgIGNhc2UgY29uZGl0aW9uCisgICAg
ICAgIHdoZW4gOmVxCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259ICN7b3Bl
cmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwg
I3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIHdoZW4gOm5lcQorICAgICAg
ICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVy
YW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2
NE9wZXJhbmR9IgorICAgICAgICAgICAgJGFzbS5wdXRzICJ4b3JpICN7b3BlcmFuZHNbMl0ucmlz
Y3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgMSIKKyAgICAgICAg
d2hlbiA6bHQsIDpsdGVxCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259ICN7
b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5k
fSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIHdoZW4gOmd0LCA6Z3Rl
cQorICAgICAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSAje29wZXJhbmRzWzJdLnJp
c2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNb
MF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICBlbHNlCisgICAgICAgICAgICByYWlzZSAiVW5z
dXBwb3J0ZWQgY29uZGl0aW9uIgorICAgICAgICBlbmQKKyAgICBlbmQKKworICAgIGNhc2Ugcmlz
Y3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICB3aGVuIFtGUFJlZ2lzdGVySUQsIEZQUmVn
aXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAgICAgc2V0Rm9yQ29uZGl0aW9uKG9wZXJhbmRzLCBw
cmVjaXNpb24sIGNvbmRpdGlvbikKKyAgICBlbHNlCisgICAgICAgIHJpc2N2NjRSYWlzZU1pc21h
dGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NEVtaXRG
UEJpdHdpc2VPcGVyYXRpb24ob3BlcmFuZHMsIHByZWNpc2lvbiwgb3BlcmF0aW9uKQorICAgIGRl
ZiBzdWZmaXhGb3JQcmVjaXNpb24ocHJlY2lzaW9uKQorICAgICAgICBjYXNlIHByZWNpc2lvbgor
ICAgICAgICB3aGVuIDpzCisgICAgICAgICAgICAidyIKKyAgICAgICAgd2hlbiA6ZAorICAgICAg
ICAgICAgImQiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCBw
cmVjaXNpb24iCisgICAgICAgIGVuZAorICAgIGVuZAorCisgICAgc3VmZml4ID0gc3VmZml4Rm9y
UHJlY2lzaW9uKHByZWNpc2lvbikKKworICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVy
YW5kcykKKyAgICB3aGVuIFtGUFJlZ2lzdGVySUQsIEZQUmVnaXN0ZXJJRF0KKyAgICAgICAgJGFz
bS5wdXRzICJmbXYueC4je3N1ZmZpeH0geDMwLCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5k
fSIKKyAgICAgICAgJGFzbS5wdXRzICJmbXYueC4je3N1ZmZpeH0geDMxLCAje29wZXJhbmRzWzFd
LnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgJGFzbS5wdXRzICIje29wZXJhdGlvbn0geDMxLCB4
MzAsIHgzMSIKKyAgICAgICAgJGFzbS5wdXRzICJmbXYuI3tzdWZmaXh9LnggI3tvcGVyYW5kc1sx
XS5yaXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAgICBlbHNlCisgICAgICAgIHJpc2N2NjRSYWlzZU1p
c21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NEVt
aXRGUENvcHkob3BlcmFuZHMsIHByZWNpc2lvbikKKyAgICBkZWYgc3VmZml4Rm9yUHJlY2lzaW9u
KHByZWNpc2lvbikKKyAgICAgICAgY2FzZSBwcmVjaXNpb24KKyAgICAgICAgd2hlbiA6cworICAg
ICAgICAgICAgInciCisgICAgICAgIHdoZW4gOmQKKyAgICAgICAgICAgICJkIgorICAgICAgICBl
bHNlCisgICAgICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgcHJlY2lzaW9uIgorICAgICAgICBl
bmQKKyAgICBlbmQKKworICAgIHN1ZmZpeCA9IHN1ZmZpeEZvclByZWNpc2lvbihwcmVjaXNpb24p
CisKKyAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgd2hlbiBbUmVn
aXN0ZXJJRCwgRlBSZWdpc3RlcklEXQorICAgICAgICAkYXNtLnB1dHMgImZtdi4je3N1ZmZpeH0u
eCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3Bl
cmFuZH0iCisgICAgd2hlbiBbRlBSZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAgICAgICAkYXNt
LnB1dHMgImZtdi54LiN7c3VmZml4fSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tv
cGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgZWxzZQorICAgICAgICByaXNjdjY0UmFp
c2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgZW5kCitlbmQKKworZGVmIHJpc2N2
NjRFbWl0RlBDb25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3BlcmFuZHMsIHByZWNpc2lvbiwgdGVz
dCkKKyAgICBkZWYgc3VmZml4Rm9yUHJlY2lzaW9uKHByZWNpc2lvbikKKyAgICAgICAgY2FzZSBw
cmVjaXNpb24KKyAgICAgICAgd2hlbiA6cworICAgICAgICAgICAgInMiCisgICAgICAgIHdoZW4g
OmQKKyAgICAgICAgICAgICJkIgorICAgICAgICBlbHNlCisgICAgICAgICAgICByYWlzZSAiVW5z
dXBwb3J0ZWQgcHJlY2lzaW9uIgorICAgICAgICBlbmQKKyAgICBlbmQKKworICAgIGRlZiBlbWl0
QnJhbmNoRm9yVW5vcmRlcmVkKGxocywgcmhzLCBsYWJlbCwgcHJlY2lzaW9uKQorICAgICAgICBz
dWZmaXggPSBzdWZmaXhGb3JQcmVjaXNpb24ocHJlY2lzaW9uKQorCisgICAgICAgICRhc20ucHV0
cyAiZmNsYXNzLmQgeDMwLCAje2xocy5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICRhc20ucHV0
cyAiZmNsYXNzLmQgeDMxLCAje3Jocy5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICRhc20ucHV0
cyAib3IgeDMxLCB4MzAsIHgzMSIKKyAgICAgICAgJGFzbS5wdXRzICJsaSB4MzAsIDB4MzAwIgor
ICAgICAgICAkYXNtLnB1dHMgImFuZCB4MzEsIHgzMSwgeDMwIgorICAgICAgICAkYXNtLnB1dHMg
ImJuZXogeDMxLCAje2xhYmVsLmFzbUxhYmVsfSIKKyAgICBlbmQKKworICAgIGRlZiBlbWl0QnJh
bmNoRm9yVGVzdCh0ZXN0LCBsaHMsIHJocywgYnJhbmNoLCBsYWJlbCwgcHJlY2lzaW9uKQorICAg
ICAgICBzdWZmaXggPSBzdWZmaXhGb3JQcmVjaXNpb24ocHJlY2lzaW9uKQorCisgICAgICAgICRh
c20ucHV0cyAiI3t0ZXN0fS4je3N1ZmZpeH0geDMxLCAje2xocy5yaXNjdjY0T3BlcmFuZH0sICN7
cmhzLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgJGFzbS5wdXRzICIje2JyYW5jaH0geDMxLCAj
e2xhYmVsLmFzbUxhYmVsfSIKKyAgICBlbmQKKworICAgIHN1ZmZpeCA9IHN1ZmZpeEZvclByZWNp
c2lvbihwcmVjaXNpb24pCisKKyAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMp
CisgICAgd2hlbiBbRlBSZWdpc3RlcklELCBGUFJlZ2lzdGVySUQsIExvY2FsTGFiZWxSZWZlcmVu
Y2VdCisgICAgICAgIGNhc2UgdGVzdAorICAgICAgICB3aGVuIDplcQorICAgICAgICAgICAgZW1p
dEJyYW5jaEZvclRlc3QoImZlcSIsIG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSwgImJuZXoiLCBv
cGVyYW5kc1syXSwgcHJlY2lzaW9uKQorICAgICAgICB3aGVuIDpuZXEKKyAgICAgICAgICAgIGVt
aXRCcmFuY2hGb3JUZXN0KCJmZXEiLCBvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV0sICJiZXF6Iiwg
b3BlcmFuZHNbMl0sIHByZWNpc2lvbikKKyAgICAgICAgd2hlbiA6bHQKKyAgICAgICAgICAgIGVt
aXRCcmFuY2hGb3JUZXN0KCJmbHQiLCBvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV0sICJibmV6Iiwg
b3BlcmFuZHNbMl0sIHByZWNpc2lvbikKKyAgICAgICAgd2hlbiA6bHRlcQorICAgICAgICAgICAg
ZW1pdEJyYW5jaEZvclRlc3QoImZsZSIsIG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSwgImJuZXoi
LCBvcGVyYW5kc1syXSwgcHJlY2lzaW9uKQorICAgICAgICB3aGVuIDpndAorICAgICAgICAgICAg
ZW1pdEJyYW5jaEZvclRlc3QoImZsdCIsIG9wZXJhbmRzWzFdLCBvcGVyYW5kc1swXSwgImJuZXoi
LCBvcGVyYW5kc1syXSwgcHJlY2lzaW9uKQorICAgICAgICB3aGVuIDpndGVxCisgICAgICAgICAg
ICBlbWl0QnJhbmNoRm9yVGVzdCgiZmxlIiwgb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzBdLCAiYm5l
eiIsIG9wZXJhbmRzWzJdLCBwcmVjaXNpb24pCisgICAgICAgIHdoZW4gOmVxdW4KKyAgICAgICAg
ICAgIGVtaXRCcmFuY2hGb3JVbm9yZGVyZWQob3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdLCBvcGVy
YW5kc1syXSwgcHJlY2lzaW9uKQorICAgICAgICAgICAgZW1pdEJyYW5jaEZvclRlc3QoImZlcSIs
IG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSwgImJuZXoiLCBvcGVyYW5kc1syXSwgcHJlY2lzaW9u
KQorICAgICAgICB3aGVuIDpuZXF1bgorICAgICAgICAgICAgZW1pdEJyYW5jaEZvclVub3JkZXJl
ZChvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzJdLCBwcmVjaXNpb24pCisgICAg
ICAgICAgICBlbWl0QnJhbmNoRm9yVGVzdCgiZmVxIiwgb3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFd
LCAiYmVxeiIsIG9wZXJhbmRzWzJdLCBwcmVjaXNpb24pCisgICAgICAgIHdoZW4gOmx0dW4KKyAg
ICAgICAgICAgIGVtaXRCcmFuY2hGb3JVbm9yZGVyZWQob3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFd
LCBvcGVyYW5kc1syXSwgcHJlY2lzaW9uKQorICAgICAgICAgICAgZW1pdEJyYW5jaEZvclRlc3Qo
ImZsdCIsIG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSwgImJuZXoiLCBvcGVyYW5kc1syXSwgcHJl
Y2lzaW9uKQorICAgICAgICB3aGVuIDpsdGVxdW4KKyAgICAgICAgICAgIGVtaXRCcmFuY2hGb3JV
bm9yZGVyZWQob3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdLCBvcGVyYW5kc1syXSwgcHJlY2lzaW9u
KQorICAgICAgICAgICAgZW1pdEJyYW5jaEZvclRlc3QoImZsZSIsIG9wZXJhbmRzWzBdLCBvcGVy
YW5kc1sxXSwgImJuZXoiLCBvcGVyYW5kc1syXSwgcHJlY2lzaW9uKQorICAgICAgICB3aGVuIDpn
dHVuCisgICAgICAgICAgICBlbWl0QnJhbmNoRm9yVW5vcmRlcmVkKG9wZXJhbmRzWzBdLCBvcGVy
YW5kc1sxXSwgb3BlcmFuZHNbMl0sIHByZWNpc2lvbikKKyAgICAgICAgICAgIGVtaXRCcmFuY2hG
b3JUZXN0KCJmbHQiLCBvcGVyYW5kc1sxXSwgb3BlcmFuZHNbMF0sICJibmV6Iiwgb3BlcmFuZHNb
Ml0sIHByZWNpc2lvbikKKyAgICAgICAgd2hlbiA6Z3RlcXVuCisgICAgICAgICAgICBlbWl0QnJh
bmNoRm9yVW5vcmRlcmVkKG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSwgb3BlcmFuZHNbMl0sIHBy
ZWNpc2lvbikKKyAgICAgICAgICAgIGVtaXRCcmFuY2hGb3JUZXN0KCJmbGUiLCBvcGVyYW5kc1sx
XSwgb3BlcmFuZHNbMF0sICJibmV6Iiwgb3BlcmFuZHNbMl0sIHByZWNpc2lvbikKKyAgICAgICAg
ZWxzZQorICAgICAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIHRlc3QiCisgICAgICAgIGVuZAor
ICAgIGVsc2UKKyAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRz
KQorICAgIGVuZAorZW5kCisKK2RlZiByaXNjdjY0RW1pdEZQUm91bmRPcGVyYXRpb24ob3BlcmFu
ZHMsIHByZWNpc2lvbiwgcm91bmRpbmdNb2RlKQorICAgIGRlZiBpbnRTdWZmaXhGb3JQcmVjaXNp
b24ocHJlY2lzaW9uKQorICAgICAgICBjYXNlIHByZWNpc2lvbgorICAgICAgICB3aGVuIDpzCisg
ICAgICAgICAgICAidyIKKyAgICAgICAgd2hlbiA6ZAorICAgICAgICAgICAgImwiCisgICAgICAg
IGVsc2UKKyAgICAgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCBwcmVjaXNpb24iCisgICAgICAg
IGVuZAorICAgIGVuZAorCisgICAgZGVmIGZwU3VmZml4Rm9yUHJlY2lzaW9uKHByZWNpc2lvbikK
KyAgICAgICAgY2FzZSBwcmVjaXNpb24KKyAgICAgICAgd2hlbiA6cworICAgICAgICAgICAgInMi
CisgICAgICAgIHdoZW4gOmQKKyAgICAgICAgICAgICJkIgorICAgICAgICBlbHNlCisgICAgICAg
ICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgcHJlY2lzaW9uIgorICAgICAgICBlbmQKKyAgICBlbmQK
KworICAgIGludFN1ZmZpeCA9IGludFN1ZmZpeEZvclByZWNpc2lvbihwcmVjaXNpb24pCisgICAg
ZnBTdWZmaXggPSBmcFN1ZmZpeEZvclByZWNpc2lvbihwcmVjaXNpb24pCisKKyAgICBjYXNlIHJp
c2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgd2hlbiBbRlBSZWdpc3RlcklELCBGUFJl
Z2lzdGVySURdCisgICAgICAgICRhc20ucHV0cyAiZmN2dC4je2ludFN1ZmZpeH0uI3tmcFN1ZmZp
eH0geDMxLCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tyb3VuZGluZ01vZGV9Igor
ICAgICAgICAkYXNtLnB1dHMgImZjdnQuI3tmcFN1ZmZpeH0uI3tpbnRTdWZmaXh9ICN7b3BlcmFu
ZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEsICN7cm91bmRpbmdNb2RlfSIKKyAgICBlbHNlCisg
ICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICBlbmQK
K2VuZAorCitkZWYgcmlzY3Y2NEVtaXRGUENvbnZlcnRPcGVyYXRpb24ob3BlcmFuZHMsIGZyb21U
eXBlLCB0b1R5cGUsIHJvdW5kaW5nTW9kZSkKKyAgICBkZWYgaW50U3VmZml4Rm9yVHlwZSh0eXBl
KQorICAgICAgICBjYXNlIHR5cGUKKyAgICAgICAgd2hlbiA6dworICAgICAgICAgICAgInciCisg
ICAgICAgIHdoZW4gOnd1CisgICAgICAgICAgICAid3UiCisgICAgICAgIHdoZW4gOmwKKyAgICAg
ICAgICAgICJsIgorICAgICAgICB3aGVuIDpsdQorICAgICAgICAgICAgImx1IgorICAgICAgICBl
bHNlCisgICAgICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgcHJlY2lzaW9uIgorICAgICAgICBl
bmQKKyAgICBlbmQKKworICAgIGRlZiBmcFN1ZmZpeEZvclR5cGUodHlwZSkKKyAgICAgICAgY2Fz
ZSB0eXBlCisgICAgICAgIHdoZW4gOnMKKyAgICAgICAgICAgICJzIgorICAgICAgICB3aGVuIDpk
CisgICAgICAgICAgICAiZCIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmFpc2UgIlVuc3Vw
cG9ydGVkIHByZWNpc2lvbiIKKyAgICAgICAgZW5kCisgICAgZW5kCisKKyAgICBjYXNlIHJpc2N2
NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgd2hlbiBbRlBSZWdpc3RlcklELCBSZWdpc3Rl
cklEXQorICAgICAgICBmcFN1ZmZpeCA9IGZwU3VmZml4Rm9yVHlwZShmcm9tVHlwZSkKKyAgICAg
ICAgaW50U3VmZml4ID0gaW50U3VmZml4Rm9yVHlwZSh0b1R5cGUpCisKKyAgICAgICAgJGFzbS5w
dXRzICJmY3Z0LiN7aW50U3VmZml4fS4je2ZwU3VmZml4fSAje29wZXJhbmRzWzFdLnJpc2N2NjRP
cGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sICN7cm91bmRpbmdNb2RlfSIK
KyAgICB3aGVuIFtSZWdpc3RlcklELCBGUFJlZ2lzdGVySURdCisgICAgICAgIHJhaXNlICJVbnN1
cHBvcnRlZCByb3VuZGluZyBtb2RlIiB1bmxlc3Mgcm91bmRpbmdNb2RlID09IDpub25lCisgICAg
ICAgIGludFN1ZmZpeCA9IGludFN1ZmZpeEZvclR5cGUoZnJvbVR5cGUpCisgICAgICAgIGZwU3Vm
Zml4ID0gZnBTdWZmaXhGb3JUeXBlKHRvVHlwZSkKKworICAgICAgICAkYXNtLnB1dHMgImZjdnQu
I3tmcFN1ZmZpeH0uI3tpbnRTdWZmaXh9ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAj
e29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICB3aGVuIFtGUFJlZ2lzdGVySUQsIEZQ
UmVnaXN0ZXJJRF0KKyAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIHJvdW5kaW5nIG1vZGUiIHVu
bGVzcyByb3VuZGluZ01vZGUgPT0gOm5vbmUKKyAgICAgICAgZnBGcm9tU3VmZml4ID0gZnBTdWZm
aXhGb3JUeXBlKGZyb21UeXBlKQorICAgICAgICBmcFRvU3VmZml4ID0gZnBTdWZmaXhGb3JUeXBl
KHRvVHlwZSkKKworICAgICAgICAkYXNtLnB1dHMgImZjdnQuI3tmcFRvU3VmZml4fS4je2ZwRnJv
bVN1ZmZpeH0gI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlz
Y3Y2NE9wZXJhbmR9IgorICAgIGVsc2UKKyAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9w
ZXJhbmRzKG9wZXJhbmRzKQorICAgIGVuZAorZW5kCisKK2NsYXNzIFJlZ2lzdGVySUQKKyAgICBk
ZWYgcmlzY3Y2NE9wZXJhbmQKKyAgICAgICAgY2FzZSBAbmFtZQorICAgICAgICB3aGVuICd0MCcs
ICdhMCcsICd3YTAnLCAncjAnCisgICAgICAgICAgICAneDEwJworICAgICAgICB3aGVuICd0MScs
ICdhMScsICd3YTEnLCAncjEnCisgICAgICAgICAgICAneDExJworICAgICAgICB3aGVuICd0Mics
ICdhMicsICd3YTInCisgICAgICAgICAgICAneDEyJworICAgICAgICB3aGVuICd0MycsICdhMycs
ICd3YTMnCisgICAgICAgICAgICAneDEzJworICAgICAgICB3aGVuICd0NCcsICdhNCcsICd3YTQn
CisgICAgICAgICAgICAneDE0JworICAgICAgICB3aGVuICd0NScsICdhNScsICd3YTUnCisgICAg
ICAgICAgICAneDE1JworICAgICAgICB3aGVuICd0NicsICdhNicsICd3YTYnCisgICAgICAgICAg
ICAneDE2JworICAgICAgICB3aGVuICd0NycsICdhNycsICd3YTcnCisgICAgICAgICAgICAneDE3
JworICAgICAgICB3aGVuICd0OCcKKyAgICAgICAgICAgICd4NScKKyAgICAgICAgd2hlbiAndDkn
LCAnd3MwJworICAgICAgICAgICAgJ3g2JworICAgICAgICB3aGVuICd0MTAnLCAnd3MxJworICAg
ICAgICAgICAgJ3g3JworICAgICAgICB3aGVuICd0MTEnCisgICAgICAgICAgICAneDI4JworICAg
ICAgICB3aGVuICd0MTInCisgICAgICAgICAgICAneDI5JworICAgICAgICB3aGVuICd0MTMnCisg
ICAgICAgICAgICAneDMwJworICAgICAgICB3aGVuICd0MTQnCisgICAgICAgICAgICAneDMxJwor
ICAgICAgICB3aGVuICdjc3IwJworICAgICAgICAgICAgJ3g5JworICAgICAgICB3aGVuICdjc3Ix
JworICAgICAgICAgICAgJ3gxOCcKKyAgICAgICAgd2hlbiAnY3NyMicKKyAgICAgICAgICAgICd4
MTknCisgICAgICAgIHdoZW4gJ2NzcjMnCisgICAgICAgICAgICAneDIwJworICAgICAgICB3aGVu
ICdjc3I0JworICAgICAgICAgICAgJ3gyMScKKyAgICAgICAgd2hlbiAnY3NyNScKKyAgICAgICAg
ICAgICd4MjInCisgICAgICAgIHdoZW4gJ2NzcjYnCisgICAgICAgICAgICAneDIzJworICAgICAg
ICB3aGVuICdjc3I3JworICAgICAgICAgICAgJ3gyNCcKKyAgICAgICAgd2hlbiAnY3NyOCcKKyAg
ICAgICAgICAgICd4MjUnCisgICAgICAgIHdoZW4gJ2NzcjknCisgICAgICAgICAgICAneDI2Jwor
ICAgICAgICB3aGVuICdjc3IxMCcKKyAgICAgICAgICAgICd4MjcnCisgICAgICAgIHdoZW4gJ2xy
JworICAgICAgICAgICAgJ3JhJworICAgICAgICB3aGVuICdzcCcKKyAgICAgICAgICAgICdzcCcK
KyAgICAgICAgd2hlbiAnY2ZyJworICAgICAgICAgICAgJ2ZwJworICAgICAgICBlbHNlCisgICAg
ICAgICAgICByYWlzZSAiQmFkIHJlZ2lzdGVyIG5hbWUgI3tAbmFtZX0gYXQgI3tjb2RlT3JpZ2lu
U3RyaW5nfSIKKyAgICAgICAgZW5kCisgICAgZW5kCitlbmQKKworY2xhc3MgRlBSZWdpc3RlcklE
CisgICAgZGVmIHJpc2N2NjRPcGVyYW5kCisgICAgICAgIGNhc2UgQG5hbWUKKyAgICAgICAgd2hl
biAnZnQwJworICAgICAgICAgICAgJ2YwJworICAgICAgICB3aGVuICdmdDEnCisgICAgICAgICAg
ICAnZjEnCisgICAgICAgIHdoZW4gJ2Z0MicKKyAgICAgICAgICAgICdmMicKKyAgICAgICAgd2hl
biAnZnQzJworICAgICAgICAgICAgJ2YzJworICAgICAgICB3aGVuICdmdDQnCisgICAgICAgICAg
ICAnZjQnCisgICAgICAgIHdoZW4gJ2Z0NScKKyAgICAgICAgICAgICdmNScKKyAgICAgICAgd2hl
biAnZnQ2JworICAgICAgICAgICAgJ2Y2JworICAgICAgICB3aGVuICdmdDcnCisgICAgICAgICAg
ICAnZjcnCisgICAgICAgIHdoZW4gJ2NzZnIwJworICAgICAgICAgICAgJ2Y4JworICAgICAgICB3
aGVuICdjc2ZyMScKKyAgICAgICAgICAgICdmOScKKyAgICAgICAgd2hlbiAnZmEwJywgJ3dmYTAn
CisgICAgICAgICAgICAnZjEwJworICAgICAgICB3aGVuICdmYTEnLCAnd2ZhMScKKyAgICAgICAg
ICAgICdmMTEnCisgICAgICAgIHdoZW4gJ2ZhMicsICd3ZmEyJworICAgICAgICAgICAgJ2YxMicK
KyAgICAgICAgd2hlbiAnZmEzJywgJ3dmYTMnCisgICAgICAgICAgICAnZjEzJworICAgICAgICB3
aGVuICdmYTQnLCAnd2ZhNCcKKyAgICAgICAgICAgICdmMTQnCisgICAgICAgIHdoZW4gJ2ZhNScs
ICd3ZmE1JworICAgICAgICAgICAgJ2YxNScKKyAgICAgICAgd2hlbiAnZmE2JywgJ3dmYTYnCisg
ICAgICAgICAgICAnZjE2JworICAgICAgICB3aGVuICdmYTcnLCAnd2ZhNycKKyAgICAgICAgICAg
ICdmMTcnCisgICAgICAgIHdoZW4gJ2NzZnIyJworICAgICAgICAgICAgJ2YxOCcKKyAgICAgICAg
d2hlbiAnY3NmcjMnCisgICAgICAgICAgICAnZjE5JworICAgICAgICB3aGVuICdjc2ZyNCcKKyAg
ICAgICAgICAgICdmMjAnCisgICAgICAgIHdoZW4gJ2NzZnI1JworICAgICAgICAgICAgJ2YyMScK
KyAgICAgICAgd2hlbiAnY3NmcjYnCisgICAgICAgICAgICAnZjIyJworICAgICAgICB3aGVuICdj
c2ZyNycKKyAgICAgICAgICAgICdmMjMnCisgICAgICAgIHdoZW4gJ2NzZnI4JworICAgICAgICAg
ICAgJ2YyNCcKKyAgICAgICAgd2hlbiAnY3NmcjknCisgICAgICAgICAgICAnZjI1JworICAgICAg
ICB3aGVuICdjc2ZyMTAnCisgICAgICAgICAgICAnZjI2JworICAgICAgICB3aGVuICdjc2ZyMTEn
CisgICAgICAgICAgICAnZjI3JworICAgICAgICB3aGVuICdmdDgnCisgICAgICAgICAgICAnZjI4
JworICAgICAgICB3aGVuICdmdDknCisgICAgICAgICAgICAnZjI5JworICAgICAgICB3aGVuICdm
dDEwJworICAgICAgICAgICAgJ2YzMCcKKyAgICAgICAgd2hlbiAnZnQxMScKKyAgICAgICAgICAg
ICdmMzEnCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJhaXNlICJCYWQgcmVnaXN0ZXIgbmFt
ZSAje0BuYW1lfSBhdCAje2NvZGVPcmlnaW5TdHJpbmd9IgorICAgICAgICBlbmQKKyAgICBlbmQK
K2VuZAorCitjbGFzcyBSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyCisgICAgZGVmIGluaXRpYWxpemUo
bmFtZSkKKyAgICAgICAgQG5hbWUgPSBuYW1lCisgICAgZW5kCisKKyAgICBkZWYgcmlzY3Y2NE9w
ZXJhbmQKKyAgICAgICAgY2FzZSBAbmFtZQorICAgICAgICB3aGVuIDp4MjgKKyAgICAgICAgICAg
ICd4MjgnCisgICAgICAgIHdoZW4gOngyOQorICAgICAgICAgICAgJ3gyOScKKyAgICAgICAgd2hl
biA6eDMwCisgICAgICAgICAgICAneDMwJworICAgICAgICB3aGVuIDp4MzEKKyAgICAgICAgICAg
ICd4MzEnCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCBzY3Jh
dGNoIHJlZ2lzdGVyIgorICAgICAgICBlbmQKKyAgICBlbmQKKworICAgIGRlZiBzZWxmLngyOAor
ICAgICAgICBSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLm5ldyg6eDI4KQorICAgIGVuZAorCisgICAg
ZGVmIHNlbGYueDI5CisgICAgICAgIFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIubmV3KDp4MjkpCisg
ICAgZW5kCisKKyAgICBkZWYgc2VsZi54MzAKKyAgICAgICAgUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rl
ci5uZXcoOngzMCkKKyAgICBlbmQKKworICAgIGRlZiBzZWxmLngzMQorICAgICAgICBSSVNDVjY0
U2NyYXRjaFJlZ2lzdGVyLm5ldyg6eDMxKQorICAgIGVuZAorZW5kCisKK2NsYXNzIEltbWVkaWF0
ZQorICAgIGRlZiByaXNjdjY0T3BlcmFuZAorICAgICAgICAiI3t2YWx1ZX0iCisgICAgZW5kCisK
KyAgICBkZWYgcmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICB2YWx1ZSA+IDB4N2ZmIG9yIHZh
bHVlIDwgLTB4ODAwCisgICAgZW5kCisKKyAgICBkZWYgcmlzY3Y2NExvYWQodGFyZ2V0KQorICAg
ICAgICAkYXNtLnB1dHMgImxpICN7dGFyZ2V0LnJpc2N2NjRPcGVyYW5kfSwgI3t2YWx1ZX0iCisg
ICAgZW5kCitlbmQKKworY2xhc3MgQWRkcmVzcworICAgIGRlZiByaXNjdjY0T3BlcmFuZAorICAg
ICAgICByYWlzZSAiSW52YWxpZCBvZmZzZXQgI3tvZmZzZXQudmFsdWV9IGF0ICN7Y29kZU9yaWdp
blN0cmluZ30iIGlmIG9mZnNldC52YWx1ZSA+IDB4N2ZmIG9yIG9mZnNldC52YWx1ZSA8IC0weDgw
MAorICAgICAgICAiI3tvZmZzZXQudmFsdWV9KCN7YmFzZS5yaXNjdjY0T3BlcmFuZH0pIgorICAg
IGVuZAorCisgICAgZGVmIHJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgb2Zmc2V0LnZhbHVl
ID4gMHg3ZmYgb3Igb2Zmc2V0LnZhbHVlIDwgLTB4ODAwCisgICAgZW5kCisKKyAgICBkZWYgcmlz
Y3Y2NExvYWQodGFyZ2V0KQorICAgICAgICAkYXNtLnB1dHMgImxpICN7dGFyZ2V0LnJpc2N2NjRP
cGVyYW5kfSwgI3tvZmZzZXQudmFsdWV9IgorICAgICAgICAkYXNtLnB1dHMgImFkZCAje3Rhcmdl
dC5yaXNjdjY0T3BlcmFuZH0sICN7YmFzZS5yaXNjdjY0T3BlcmFuZH0sICN7dGFyZ2V0LnJpc2N2
NjRPcGVyYW5kfSIKKyAgICBlbmQKK2VuZAorCitjbGFzcyBCYXNlSW5kZXgKKyAgICBkZWYgcmlz
Y3Y2NExvYWQodGFyZ2V0LCBzY3JhdGNoKQorICAgICAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlw
ZXMoW2Jhc2UsIGluZGV4XSkKKyAgICAgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0K
KyAgICAgICAgICAgICRhc20ucHV0cyAic2xsaSAje3RhcmdldC5yaXNjdjY0T3BlcmFuZH0sICN7
aW5kZXgucmlzY3Y2NE9wZXJhbmR9LCAje3NjYWxlU2hpZnR9IgorICAgICAgICAgICAgJGFzbS5w
dXRzICJhZGQgI3t0YXJnZXQucmlzY3Y2NE9wZXJhbmR9LCAje2Jhc2UucmlzY3Y2NE9wZXJhbmR9
LCAje3RhcmdldC5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICBpZiBvZmZzZXQudmFsdWUg
IT0gMAorICAgICAgICAgICAgICAgICRhc20ucHV0cyAibGkgI3tzY3JhdGNoLnJpc2N2NjRPcGVy
YW5kfSwgI3tvZmZzZXQudmFsdWV9IgorICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYWRkICN7
dGFyZ2V0LnJpc2N2NjRPcGVyYW5kfSwgI3t0YXJnZXQucmlzY3Y2NE9wZXJhbmR9LCAje3NjcmF0
Y2gucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgZW5kCisgICAgICAgIGVsc2UKKyAgICAg
ICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhbYmFzZSwgaW5kZXhdKQorICAg
ICAgICBlbmQKKyAgICBlbmQKK2VuZAorCitjbGFzcyBJbnN0cnVjdGlvbgorICAgIGRlZiBsb3dl
clJJU0NWNjQKKyAgICAgICAgY2FzZSBvcGNvZGUKKyAgICAgICAgd2hlbiAiYWRkaSIKKyAgICAg
ICAgICAgIHJpc2N2NjRFbWl0QWRkaXRpb25PcGVyYXRpb24ob3BlcmFuZHMsIDp3LCA6YWRkKQor
ICAgICAgICB3aGVuICJhZGRwIiwgImFkZHEiCisgICAgICAgICAgICByaXNjdjY0RW1pdEFkZGl0
aW9uT3BlcmF0aW9uKG9wZXJhbmRzLCA6ZCwgOmFkZCkKKyAgICAgICAgd2hlbiAiYWRkaXMiLCAi
YWRkcHMiCisgICAgICAgICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3aGVu
ICJzdWJpIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRBZGRpdGlvbk9wZXJhdGlvbihvcGVyYW5k
cywgOncsIDpzdWIpCisgICAgICAgIHdoZW4gInN1YnAiLCAic3VicSIKKyAgICAgICAgICAgIHJp
c2N2NjRFbWl0QWRkaXRpb25PcGVyYXRpb24ob3BlcmFuZHMsIDpkLCA6c3ViKQorICAgICAgICB3
aGVuICJzdWJpcyIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAg
IHdoZW4gImFuZGkiCisgICAgICAgICAgICByaXNjdjY0RW1pdExvZ2ljYWxPcGVyYXRpb24ob3Bl
cmFuZHMsIDp3LCA6YW5kKQorICAgICAgICB3aGVuICJhbmRwIiwgImFuZHEiCisgICAgICAgICAg
ICByaXNjdjY0RW1pdExvZ2ljYWxPcGVyYXRpb24ob3BlcmFuZHMsIDpkLCA6YW5kKQorICAgICAg
ICB3aGVuICJvcmgiCisgICAgICAgICAgICByaXNjdjY0RW1pdExvZ2ljYWxPcGVyYXRpb24ob3Bl
cmFuZHMsIDpoLCA6b3IpCisgICAgICAgIHdoZW4gIm9yaSIKKyAgICAgICAgICAgIHJpc2N2NjRF
bWl0TG9naWNhbE9wZXJhdGlvbihvcGVyYW5kcywgOncsIDpvcikKKyAgICAgICAgd2hlbiAib3Jw
IiwgIm9ycSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0TG9naWNhbE9wZXJhdGlvbihvcGVyYW5k
cywgOmQsIDpvcikKKyAgICAgICAgd2hlbiAieG9yaSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0
TG9naWNhbE9wZXJhdGlvbihvcGVyYW5kcywgOncsIDp4b3IpCisgICAgICAgIHdoZW4gInhvcnAi
LCAieG9ycSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0TG9naWNhbE9wZXJhdGlvbihvcGVyYW5k
cywgOmQsIDp4b3IpCisgICAgICAgIHdoZW4gImxzaGlmdGkiCisgICAgICAgICAgICByaXNjdjY0
RW1pdFNoaWZ0KG9wZXJhbmRzLCA6dywgOmxsZWZ0KQorICAgICAgICB3aGVuICJsc2hpZnRwIiwg
ImxzaGlmdHEiCisgICAgICAgICAgICByaXNjdjY0RW1pdFNoaWZ0KG9wZXJhbmRzLCA6ZCwgOmxs
ZWZ0KQorICAgICAgICB3aGVuICJyc2hpZnRpIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRTaGlm
dChvcGVyYW5kcywgOncsIDphcmlnaHQpCisgICAgICAgIHdoZW4gInJzaGlmdHAiLCAicnNoaWZ0
cSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0U2hpZnQob3BlcmFuZHMsIDpkLCA6YXJpZ2h0KQor
ICAgICAgICB3aGVuICJ1cnNoaWZ0aSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0U2hpZnQob3Bl
cmFuZHMsIDp3LCA6bHJpZ2h0KQorICAgICAgICB3aGVuICJ1cnNoaWZ0cCIsICJ1cnNoaWZ0cSIK
KyAgICAgICAgICAgIHJpc2N2NjRFbWl0U2hpZnQob3BlcmFuZHMsIDpkLCA6bHJpZ2h0KQorICAg
ICAgICB3aGVuICJtdWxpIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRNdWxEaXZBcml0aG1ldGlj
KG9wZXJhbmRzLCA6dywgOm11bCkKKyAgICAgICAgd2hlbiAibXVscCIsICJtdWxxIgorICAgICAg
ICAgICAgcmlzY3Y2NEVtaXRNdWxEaXZBcml0aG1ldGljKG9wZXJhbmRzLCA6ZCwgOm11bCkKKyAg
ICAgICAgd2hlbiAiZGl2aSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0TXVsRGl2QXJpdGhtZXRp
YyhvcGVyYW5kcywgOncsIDpkaXYpCisgICAgICAgIHdoZW4gImRpdnEiCisgICAgICAgICAgICBy
aXNjdjY0RW1pdE11bERpdkFyaXRobWV0aWMob3BlcmFuZHMsIDpkLCA6ZGl2KQorICAgICAgICB3
aGVuICJkaXZpcyIsICJkaXZxcyIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVk
CisgICAgICAgIHdoZW4gIm5lZ2kiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBsZW1lbnRP
cGVyYXRpb24ob3BlcmFuZHMsIDp3LCA6bmVnKQorICAgICAgICB3aGVuICJuZWdwIiwgIm5lZ3Ei
CisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBsZW1lbnRPcGVyYXRpb24ob3BlcmFuZHMsIDpk
LCA6bmVnKQorICAgICAgICB3aGVuICJub3RpIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb21w
bGVtZW50T3BlcmF0aW9uKG9wZXJhbmRzLCA6dywgOm5vdCkKKyAgICAgICAgd2hlbiAibm90cSIK
KyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGxlbWVudE9wZXJhdGlvbihvcGVyYW5kcywgOmQs
IDpub3QpCisgICAgICAgIHdoZW4gInN0b3JlYiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0U3Rv
cmUob3BlcmFuZHMsIDpiKQorICAgICAgICB3aGVuICJzdG9yZWgiCisgICAgICAgICAgICByaXNj
djY0RW1pdFN0b3JlKG9wZXJhbmRzLCA6aCkKKyAgICAgICAgd2hlbiAic3RvcmVpIgorICAgICAg
ICAgICAgcmlzY3Y2NEVtaXRTdG9yZShvcGVyYW5kcywgOncpCisgICAgICAgIHdoZW4gInN0b3Jl
cCIsICJzdG9yZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdFN0b3JlKG9wZXJhbmRzLCA6ZCkK
KyAgICAgICAgd2hlbiAibG9hZGIiCisgICAgICAgICAgICByaXNjdjY0RW1pdExvYWQob3BlcmFu
ZHMsIDpidSwgOm5vbmUpCisgICAgICAgIHdoZW4gImxvYWRoIgorICAgICAgICAgICAgcmlzY3Y2
NEVtaXRMb2FkKG9wZXJhbmRzLCA6aHUsIDpub25lKQorICAgICAgICB3aGVuICJsb2FkaSIKKyAg
ICAgICAgICAgIHJpc2N2NjRFbWl0TG9hZChvcGVyYW5kcywgOnd1LCA6bm9uZSkKKyAgICAgICAg
d2hlbiAibG9hZGlzIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRMb2FkKG9wZXJhbmRzLCA6dywg
Om5vbmUpCisgICAgICAgIHdoZW4gImxvYWRwIiwgImxvYWRxIgorICAgICAgICAgICAgcmlzY3Y2
NEVtaXRMb2FkKG9wZXJhbmRzLCA6ZCwgOm5vbmUpCisgICAgICAgIHdoZW4gImxvYWRic2kiCisg
ICAgICAgICAgICByaXNjdjY0RW1pdExvYWQob3BlcmFuZHMsIDpiLCA6dykKKyAgICAgICAgd2hl
biAibG9hZGJzcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0TG9hZChvcGVyYW5kcywgOmIsIDpu
b25lKQorICAgICAgICB3aGVuICJsb2FkaHNpIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRMb2Fk
KG9wZXJhbmRzLCA6aCwgOncpCisgICAgICAgIHdoZW4gImxvYWRoc3EiCisgICAgICAgICAgICBy
aXNjdjY0RW1pdExvYWQob3BlcmFuZHMsIDpoLCA6bm9uZSkKKyAgICAgICAgd2hlbiAiYmZlcSIK
KyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3BlcmFu
ZHMsIDpzLCA6ZXEpCisgICAgICAgIHdoZW4gImJmbHQiCisgICAgICAgICAgICByaXNjdjY0RW1p
dEZQQ29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6cywgOmx0KQorICAgICAgICB3
aGVuICJiZmd0IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbmRpdGlvbmFsQnJhbmNoRm9y
VGVzdChvcGVyYW5kcywgOnMsIDpndCkKKyAgICAgICAgd2hlbiAiYmZsdHVuIgorICAgICAgICAg
ICAgcmlzY3Y2NEVtaXRGUENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOnMsIDps
dHVuKQorICAgICAgICB3aGVuICJiZmx0ZXF1biIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBD
b25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3BlcmFuZHMsIDpzLCA6bHRlcXVuKQorICAgICAgICB3
aGVuICJiZmd0dW4iCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29uZGl0aW9uYWxCcmFuY2hG
b3JUZXN0KG9wZXJhbmRzLCA6cywgOmd0dW4pCisgICAgICAgIHdoZW4gImJmZ3RlcXVuIgorICAg
ICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywg
OnMsIDpndGVxdW4pCisgICAgICAgIHdoZW4gImJkZXEiCisgICAgICAgICAgICByaXNjdjY0RW1p
dEZQQ29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6ZCwgOmVxKQorICAgICAgICB3
aGVuICJiZG5lcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb25kaXRpb25hbEJyYW5jaEZv
clRlc3Qob3BlcmFuZHMsIDpkLCA6bmVxKQorICAgICAgICB3aGVuICJiZGx0IgorICAgICAgICAg
ICAgcmlzY3Y2NEVtaXRGUENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOmQsIDps
dCkKKyAgICAgICAgd2hlbiAiYmRsdGVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbmRp
dGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOmQsIDpsdGVxKQorICAgICAgICB3aGVuICJi
ZGd0IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChv
cGVyYW5kcywgOmQsIDpndCkKKyAgICAgICAgd2hlbiAiYmRndGVxIgorICAgICAgICAgICAgcmlz
Y3Y2NEVtaXRGUENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOmQsIDpndGVxKQor
ICAgICAgICB3aGVuICJiZGVxdW4iCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29uZGl0aW9u
YWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6ZCwgOmVxdW4pCisgICAgICAgIHdoZW4gImJkbmVx
dW4iCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9w
ZXJhbmRzLCA6ZCwgOm5lcXVuKQorICAgICAgICB3aGVuICJiZGx0dW4iCisgICAgICAgICAgICBy
aXNjdjY0RW1pdEZQQ29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6ZCwgOmx0dW4p
CisgICAgICAgIHdoZW4gImJkbHRlcXVuIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbmRp
dGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOmQsIDpsdGVxdW4pCisgICAgICAgIHdoZW4g
ImJkZ3R1biIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb25kaXRpb25hbEJyYW5jaEZvclRl
c3Qob3BlcmFuZHMsIDpkLCA6Z3R1bikKKyAgICAgICAgd2hlbiAiYmRndGVxdW4iCisgICAgICAg
ICAgICByaXNjdjY0RW1pdEZQQ29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6ZCwg
Omd0ZXF1bikKKyAgICAgICAgd2hlbiAidGQyaSIsICJiY2QyaSIsICJidGQyaSIKKyAgICAgICAg
ICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAgIHdoZW4gIm1vdmR6IgorICAgICAg
ICAgICAgcmlzY3Y2NFJhaXNlVW5zdXBwb3J0ZWQKKyAgICAgICAgd2hlbiAicG9wIgorICAgICAg
ICAgICAgc2l6ZSA9IDggKiBvcGVyYW5kcy5zaXplCisgICAgICAgICAgICBvcGVyYW5kcy5lYWNo
X3dpdGhfaW5kZXggeworICAgICAgICAgICAgICAgIHwgb3AsIGluZGV4IHwKKyAgICAgICAgICAg
ICAgICAkYXNtLnB1dHMgImxkICN7b3AucmlzY3Y2NE9wZXJhbmR9LCAje3NpemUgLSA4ICogKGlu
ZGV4ICsgMSl9KHNwKSIKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgICRhc20ucHV0cyAiYWRk
aSBzcCwgc3AsICN7c2l6ZX0iCisgICAgICAgIHdoZW4gInB1c2giCisgICAgICAgICAgICBzaXpl
ID0gOCAqIG9wZXJhbmRzLnNpemUKKyAgICAgICAgICAgICRhc20ucHV0cyAiYWRkaSBzcCwgc3As
ICN7LXNpemV9IgorICAgICAgICAgICAgb3BlcmFuZHMucmV2ZXJzZS5lYWNoX3dpdGhfaW5kZXgg
eworICAgICAgICAgICAgICAgIHwgb3AsIGluZGV4IHwKKyAgICAgICAgICAgICAgICAkYXNtLnB1
dHMgInNkICN7b3AucmlzY3Y2NE9wZXJhbmR9LCAje3NpemUgLSA4ICogKGluZGV4ICsgMSl9KHNw
KSIKKyAgICAgICAgICAgIH0KKyAgICAgICAgd2hlbiAibW92ZSIKKyAgICAgICAgICAgIGNhc2Ug
cmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICAgICAgICAgIHdoZW4gW1JlZ2lzdGVy
SUQsIFJlZ2lzdGVySURdCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJtdiAje29wZXJhbmRz
WzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAg
ICAgICAgICB3aGVuIFtJbW1lZGlhdGUsIFJlZ2lzdGVySURdCisgICAgICAgICAgICAgICAgJGFz
bS5wdXRzICJsaSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5y
aXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgcmlzY3Y2
NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgICAgICAgICAgZW5kCisgICAg
ICAgIHdoZW4gInN4YjJpIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRCaXRFeHRlbnNpb24ob3Bl
cmFuZHMsIDpiLCA6dywgOnNpZ24pCisgICAgICAgIHdoZW4gInN4YjJxIgorICAgICAgICAgICAg
cmlzY3Y2NEVtaXRCaXRFeHRlbnNpb24ob3BlcmFuZHMsIDpiLCA6ZCwgOnNpZ24pCisgICAgICAg
IHdoZW4gInN4aDJpIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRCaXRFeHRlbnNpb24ob3BlcmFu
ZHMsIDpoLCA6dywgOnNpZ24pCisgICAgICAgIHdoZW4gInN4aDJxIgorICAgICAgICAgICAgcmlz
Y3Y2NEVtaXRCaXRFeHRlbnNpb24ob3BlcmFuZHMsIDpoLCA6ZCwgOnNpZ24pCisgICAgICAgIHdo
ZW4gInN4aTJwIiwgInN4aTJxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRCaXRFeHRlbnNpb24o
b3BlcmFuZHMsIDp3LCA6ZCwgOnNpZ24pCisgICAgICAgIHdoZW4gInp4aTJwIiwgInp4aTJxIgor
ICAgICAgICAgICAgcmlzY3Y2NEVtaXRCaXRFeHRlbnNpb24ob3BlcmFuZHMsIDp3LCA6ZCwgOnpl
cm8pCisgICAgICAgIHdoZW4gIm5vcCIKKyAgICAgICAgICAgICRhc20ucHV0cyAibm9wIgorICAg
ICAgICB3aGVuICJiYmVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5j
aChvcGVyYW5kcywgOmIsIDplcSkKKyAgICAgICAgd2hlbiAiYmllcSIKKyAgICAgICAgICAgIHJp
c2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFuZHMsIDp3LCA6ZXEpCisgICAgICAgIHdo
ZW4gImJwZXEiLCAiYnFlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFu
Y2gob3BlcmFuZHMsIDpkLCA6ZXEpCisgICAgICAgIHdoZW4gImJibmVxIgorICAgICAgICAgICAg
cmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywgOmIsIDpuZXEpCisgICAgICAg
IHdoZW4gImJpbmVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChv
cGVyYW5kcywgOncsIDpuZXEpCisgICAgICAgIHdoZW4gImJwbmVxIiwgImJxbmVxIgorICAgICAg
ICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywgOmQsIDpuZXEpCisg
ICAgICAgIHdoZW4gImJiYSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFu
Y2gob3BlcmFuZHMsIDpiLCA6YSkKKyAgICAgICAgd2hlbiAiYmlhIgorICAgICAgICAgICAgcmlz
Y3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywgOncsIDphKQorICAgICAgICB3aGVu
ICJicGEiLCAiYnFhIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChv
cGVyYW5kcywgOmQsIDphKQorICAgICAgICB3aGVuICJiYmFlcSIKKyAgICAgICAgICAgIHJpc2N2
NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFuZHMsIDpiLCA6YWVxKQorICAgICAgICB3aGVu
ICJiaWFlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFu
ZHMsIDp3LCA6YWVxKQorICAgICAgICB3aGVuICJicGFlcSIsICJicWFlcSIKKyAgICAgICAgICAg
IHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFuZHMsIDpkLCA6YWVxKQorICAgICAg
ICB3aGVuICJiYmIiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9w
ZXJhbmRzLCA6YiwgOmIpCisgICAgICAgIHdoZW4gImJpYiIKKyAgICAgICAgICAgIHJpc2N2NjRF
bWl0Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFuZHMsIDp3LCA6YikKKyAgICAgICAgd2hlbiAiYnBi
IiwgImJxYiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFu
ZHMsIDpkLCA6YikKKyAgICAgICAgd2hlbiAiYmJiZXEiCisgICAgICAgICAgICByaXNjdjY0RW1p
dENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6YiwgOmJlcSkKKyAgICAgICAgd2hlbiAiYmli
ZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6
dywgOmJlcSkKKyAgICAgICAgd2hlbiAiYnBiZXEiLCAiYnFiZXEiCisgICAgICAgICAgICByaXNj
djY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6ZCwgOmJlcSkKKyAgICAgICAgd2hl
biAiYmJndCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFu
ZHMsIDpiLCA6Z3QpCisgICAgICAgIHdoZW4gImJpZ3QiCisgICAgICAgICAgICByaXNjdjY0RW1p
dENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6dywgOmd0KQorICAgICAgICB3aGVuICJicGd0
IiwgImJxZ3QiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJh
bmRzLCA6ZCwgOmd0KQorICAgICAgICB3aGVuICJiYmd0ZXEiCisgICAgICAgICAgICByaXNjdjY0
RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6YiwgOmd0ZXEpCisgICAgICAgIHdoZW4g
ImJpZ3RlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFu
ZHMsIDp3LCA6Z3RlcSkKKyAgICAgICAgd2hlbiAiYnBndGVxIiwgImJxZ3RlcSIKKyAgICAgICAg
ICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFuZHMsIDpkLCA6Z3RlcSkKKyAg
ICAgICAgd2hlbiAiYmJsdCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFu
Y2gob3BlcmFuZHMsIDpiLCA6bHQpCisgICAgICAgIHdoZW4gImJpbHQiCisgICAgICAgICAgICBy
aXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6dywgOmx0KQorICAgICAgICB3
aGVuICJicGx0IiwgImJxbHQiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJh
bmNoKG9wZXJhbmRzLCA6ZCwgOmx0KQorICAgICAgICB3aGVuICJiYmx0ZXEiCisgICAgICAgICAg
ICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6YiwgOmx0ZXEpCisgICAg
ICAgIHdoZW4gImJpbHRlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFu
Y2gob3BlcmFuZHMsIDp3LCA6bHRlcSkKKyAgICAgICAgd2hlbiAiYnBsdGVxIiwgImJxbHRlcSIK
KyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFuZHMsIDpkLCA6
bHRlcSkKKyAgICAgICAgd2hlbiAiYnRieiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0
aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6YiwgOnopCisgICAgICAgIHdoZW4gImJ0Ym56
IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3BlcmFu
ZHMsIDpiLCA6bnopCisgICAgICAgIHdoZW4gImJ0YnMiCisgICAgICAgICAgICByaXNjdjY0RW1p
dENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOmIsIDpzKQorICAgICAgICB3aGVu
ICJidGl6IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaEZvclRlc3Qo
b3BlcmFuZHMsIDp3LCA6eikKKyAgICAgICAgd2hlbiAiYnRpbnoiCisgICAgICAgICAgICByaXNj
djY0RW1pdENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOncsIDpueikKKyAgICAg
ICAgd2hlbiAiYnRpcyIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2hG
b3JUZXN0KG9wZXJhbmRzLCA6dywgOnMpCisgICAgICAgIHdoZW4gImJ0cHoiLCAiYnRxeiIKKyAg
ICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6
ZCwgOnopCisgICAgICAgIHdoZW4gImJ0cG56IiwgImJ0cW56IgorICAgICAgICAgICAgcmlzY3Y2
NEVtaXRDb25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3BlcmFuZHMsIDpkLCA6bnopCisgICAgICAg
IHdoZW4gImJ0cHMiLCAiYnRxcyIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxC
cmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6ZCwgOnMpCisgICAgICAgIHdoZW4gImJhZGRpeiIKKyAg
ICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2hGb3JBZGRpdGlvbk9wZXJhdGlv
bihvcGVyYW5kcywgOncsIDphZGQsIDp6KQorICAgICAgICB3aGVuICJiYWRkaW56IgorICAgICAg
ICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaEZvckFkZGl0aW9uT3BlcmF0aW9uKG9w
ZXJhbmRzLCA6dywgOmFkZCwgOm56KQorICAgICAgICB3aGVuICJiYWRkaXMiCisgICAgICAgICAg
ICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoRm9yQWRkaXRpb25PcGVyYXRpb24ob3BlcmFu
ZHMsIDp3LCA6YWRkLCA6cykKKyAgICAgICAgd2hlbiAiYmFkZGlvIgorICAgICAgICAgICAgcmlz
Y3Y2NEVtaXRPdmVyZmxvd0JyYW5jaEZvck9wZXJhdGlvbihvcGVyYW5kcywgOncsIDphZGQpCisg
ICAgICAgIHdoZW4gImJhZGRweiIsICJiYWRkcXoiCisgICAgICAgICAgICByaXNjdjY0RW1pdENv
bmRpdGlvbmFsQnJhbmNoRm9yQWRkaXRpb25PcGVyYXRpb24ob3BlcmFuZHMsIDpkLCA6YWRkLCA6
eikKKyAgICAgICAgd2hlbiAiYmFkZHBueiIsICJiYWRkcW56IgorICAgICAgICAgICAgcmlzY3Y2
NEVtaXRDb25kaXRpb25hbEJyYW5jaEZvckFkZGl0aW9uT3BlcmF0aW9uKG9wZXJhbmRzLCA6ZCwg
OmFkZCwgOm56KQorICAgICAgICB3aGVuICJiYWRkcHMiLCAiYmFkZHFzIgorICAgICAgICAgICAg
cmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaEZvckFkZGl0aW9uT3BlcmF0aW9uKG9wZXJhbmRz
LCA6ZCwgOmFkZCwgOnMpCisgICAgICAgIHdoZW4gImJhZGRwbyIsICJiYWRkcW8iCisgICAgICAg
ICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3aGVuICJic3ViaXoiCisgICAg
ICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoRm9yQWRkaXRpb25PcGVyYXRpb24o
b3BlcmFuZHMsIDp3LCA6c3ViLCA6eikKKyAgICAgICAgd2hlbiAiYnN1YmlueiIKKyAgICAgICAg
ICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2hGb3JBZGRpdGlvbk9wZXJhdGlvbihvcGVy
YW5kcywgOncsIDpzdWIsIDpueikKKyAgICAgICAgd2hlbiAiYnN1YmlzIgorICAgICAgICAgICAg
cmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaEZvckFkZGl0aW9uT3BlcmF0aW9uKG9wZXJhbmRz
LCA6dywgOnN1YiwgOnMpCisgICAgICAgIHdoZW4gImJzdWJpbyIKKyAgICAgICAgICAgIHJpc2N2
NjRFbWl0T3ZlcmZsb3dCcmFuY2hGb3JPcGVyYXRpb24ob3BlcmFuZHMsIDp3LCA6c3ViKQorICAg
ICAgICB3aGVuICJibXVsaXoiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJh
bmNoRm9yTXVsdGlwbGljYXRpb25PcGVyYXRpb24ob3BlcmFuZHMsIDp3LCA6eikKKyAgICAgICAg
d2hlbiAiYm11bGlueiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2hG
b3JNdWx0aXBsaWNhdGlvbk9wZXJhdGlvbihvcGVyYW5kcywgOncsIDpueikKKyAgICAgICAgd2hl
biAiYm11bGlzIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaEZvck11
bHRpcGxpY2F0aW9uT3BlcmF0aW9uKG9wZXJhbmRzLCA6dywgOnMpCisgICAgICAgIHdoZW4gImJt
dWxpbyIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0T3ZlcmZsb3dCcmFuY2hGb3JPcGVyYXRpb24o
b3BlcmFuZHMsIDp3LCA6bXVsKQorICAgICAgICB3aGVuICJib3JpeiIsICJib3JpbnoiLCAiYm9y
aXMiLCAiYm9yaW8iCisgICAgICAgICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAg
ICB3aGVuICJqbXAiCisgICAgICAgICAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFu
ZHMpCisgICAgICAgICAgICB3aGVuIFtSZWdpc3RlcklELCBJbW1lZGlhdGVdCisgICAgICAgICAg
ICAgICAgJGFzbS5wdXRzICJqciAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAg
ICAgICAgIHdoZW4gW0Jhc2VJbmRleCwgSW1tZWRpYXRlLCBJbW1lZGlhdGVdCisgICAgICAgICAg
ICAgICAgb3BlcmFuZHNbMF0ucmlzY3Y2NExvYWQoUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzEs
IFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMwKQorICAgICAgICAgICAgICAgICRhc20ucHV0cyAi
bGQgeDMxLCAwKHgzMSkiCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJqciB4MzEiCisgICAg
ICAgICAgICB3aGVuIFtBZGRyZXNzLCBJbW1lZGlhdGVdCisgICAgICAgICAgICAgICAgaWYgb3Bl
cmFuZHNbMF0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgICAgICAgICBvcGVyYW5k
c1swXS5yaXNjdjY0TG9hZChSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMSkKKyAgICAgICAgICAg
ICAgICAgICAgJGFzbS5wdXRzICJsZCB4MzEsIDAoeDMxKSIKKyAgICAgICAgICAgICAgICAgICAg
JGFzbS5wdXRzICJqciB4MzEiCisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAg
ICAgICAkYXNtLnB1dHMgImxkIHgzMSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisg
ICAgICAgICAgICAgICAgICAgICRhc20ucHV0cyAianIgeDMxIgorICAgICAgICAgICAgICAgIGVu
ZAorICAgICAgICAgICAgd2hlbiBbTGFiZWxSZWZlcmVuY2VdCisgICAgICAgICAgICAgICAgJGFz
bS5wdXRzICJ0YWlsICN7b3BlcmFuZHNbMF0uYXNtTGFiZWx9IgorICAgICAgICAgICAgd2hlbiBb
TG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgInRhaWwgI3tv
cGVyYW5kc1swXS5hc21MYWJlbH0iCisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAg
cmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgICAgICAgICAgZW5k
CisgICAgICAgIHdoZW4gImNhbGwiCisgICAgICAgICAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlw
ZXMob3BlcmFuZHMpCisgICAgICAgICAgICB3aGVuIFtSZWdpc3RlcklELCBJbW1lZGlhdGVdCisg
ICAgICAgICAgICAgICAgJGFzbS5wdXRzICJqYWxyICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJh
bmR9IgorICAgICAgICAgICAgd2hlbiBbQWRkcmVzcywgSW1tZWRpYXRlXQorICAgICAgICAgICAg
ICAgIGlmIG9wZXJhbmRzWzBdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAgICAgICAg
ICAgb3BlcmFuZHNbMF0ucmlzY3Y2NExvYWQoUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzEpCisg
ICAgICAgICAgICAgICAgICAgICRhc20ucHV0cyAibGQgeDMxLCAwKHgzMSkiCisgICAgICAgICAg
ICAgICAgICAgICRhc20ucHV0cyAiamFsciB4MzEiCisgICAgICAgICAgICAgICAgZWxzZQorICAg
ICAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImxkIHgzMSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0
T3BlcmFuZH0iCisgICAgICAgICAgICAgICAgICAgICRhc20ucHV0cyAiamFsciB4MzEiCisgICAg
ICAgICAgICAgICAgZW5kCisgICAgICAgICAgICB3aGVuIFtMYWJlbFJlZmVyZW5jZV0KKyAgICAg
ICAgICAgICAgICAkYXNtLnB1dHMgImNhbGwgI3tvcGVyYW5kc1swXS5hc21MYWJlbH0iCisgICAg
ICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJh
bmRzKG9wZXJhbmRzKQorICAgICAgICAgICAgZW5kCisgICAgICAgIHdoZW4gImJyZWFrIgorICAg
ICAgICAgICAgJGFzbS5wdXRzICJlYnJlYWsiCisgICAgICAgIHdoZW4gInJldCIKKyAgICAgICAg
ICAgICRhc20ucHV0cyAicmV0IgorICAgICAgICB3aGVuICJjYmVxIgorICAgICAgICAgICAgcmlz
Y3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6YiwgOmVxKQorICAgICAgICB3aGVuICJjaWVxIgor
ICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6dywgOmVxKQorICAgICAg
ICB3aGVuICJjcGVxIiwgImNxZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3Bl
cmFuZHMsIDpkLCA6ZXEpCisgICAgICAgIHdoZW4gImNibmVxIgorICAgICAgICAgICAgcmlzY3Y2
NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6YiwgOm5lcSkKKyAgICAgICAgd2hlbiAiY2luZXEiCisg
ICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDp3LCA6bmVxKQorICAgICAg
ICB3aGVuICJjcG5lcSIsICJjcW5lcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShv
cGVyYW5kcywgOmQsIDpuZXEpCisgICAgICAgIHdoZW4gImNiYSIKKyAgICAgICAgICAgIHJpc2N2
NjRFbWl0Q29tcGFyZShvcGVyYW5kcywgOmIsIDphKQorICAgICAgICB3aGVuICJjaWEiCisgICAg
ICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDp3LCA6YSkKKyAgICAgICAgd2hl
biAiY3BhIiwgImNxYSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVyYW5kcywg
OmQsIDphKQorICAgICAgICB3aGVuICJjYmFlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29t
cGFyZShvcGVyYW5kcywgOmIsIDphZXEpCisgICAgICAgIHdoZW4gImNpYWVxIgorICAgICAgICAg
ICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6dywgOmFlcSkKKyAgICAgICAgd2hlbiAi
Y3BhZXEiLCAiY3FhZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMs
IDpkLCA6YWVxKQorICAgICAgICB3aGVuICJjYmIiCisgICAgICAgICAgICByaXNjdjY0RW1pdENv
bXBhcmUob3BlcmFuZHMsIDpiLCA6YikKKyAgICAgICAgd2hlbiAiY2liIgorICAgICAgICAgICAg
cmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6dywgOmIpCisgICAgICAgIHdoZW4gImNwYiIs
ICJjcWIiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDpkLCA6YikK
KyAgICAgICAgd2hlbiAiY2JiZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3Bl
cmFuZHMsIDpiLCA6YmVxKQorICAgICAgICB3aGVuICJjaWJlcSIKKyAgICAgICAgICAgIHJpc2N2
NjRFbWl0Q29tcGFyZShvcGVyYW5kcywgOncsIDpiZXEpCisgICAgICAgIHdoZW4gImNwYmVxIiwg
ImNxYmVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6ZCwgOmJl
cSkKKyAgICAgICAgd2hlbiAiY2JsdCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShv
cGVyYW5kcywgOmIsIDpsdCkKKyAgICAgICAgd2hlbiAiY2lsdCIKKyAgICAgICAgICAgIHJpc2N2
NjRFbWl0Q29tcGFyZShvcGVyYW5kcywgOncsIDpsdCkKKyAgICAgICAgd2hlbiAiY3BsdCIsICJj
cWx0IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6ZCwgOmx0KQor
ICAgICAgICB3aGVuICJjYmx0ZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3Bl
cmFuZHMsIDpiLCA6bHRlcSkKKyAgICAgICAgd2hlbiAiY2lsdGVxIgorICAgICAgICAgICAgcmlz
Y3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6dywgOmx0ZXEpCisgICAgICAgIHdoZW4gImNwbHRl
cSIsICJjcWx0ZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDpk
LCA6bHRlcSkKKyAgICAgICAgd2hlbiAiY2JndCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29t
cGFyZShvcGVyYW5kcywgOmIsIDpndCkKKyAgICAgICAgd2hlbiAiY2lndCIKKyAgICAgICAgICAg
IHJpc2N2NjRFbWl0Q29tcGFyZShvcGVyYW5kcywgOncsIDpndCkKKyAgICAgICAgd2hlbiAiY3Bn
dCIsICJjcWd0IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6ZCwg
Omd0KQorICAgICAgICB3aGVuICJjYmd0ZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBh
cmUob3BlcmFuZHMsIDpiLCA6Z3RlcSkKKyAgICAgICAgd2hlbiAiY2lndGVxIgorICAgICAgICAg
ICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6dywgOmd0ZXEpCisgICAgICAgIHdoZW4g
ImNwZ3RlcSIsICJjcWd0ZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFu
ZHMsIDpkLCA6Z3RlcSkKKyAgICAgICAgd2hlbiAidGJ6IgorICAgICAgICAgICAgcmlzY3Y2NEVt
aXRUZXN0KG9wZXJhbmRzLCA6YiwgOnopCisgICAgICAgIHdoZW4gInRibnoiCisgICAgICAgICAg
ICByaXNjdjY0RW1pdFRlc3Qob3BlcmFuZHMsIDpiLCA6bnopCisgICAgICAgIHdoZW4gInRpeiIK
KyAgICAgICAgICAgIHJpc2N2NjRFbWl0VGVzdChvcGVyYW5kcywgOncsIDp6KQorICAgICAgICB3
aGVuICJ0aW56IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRUZXN0KG9wZXJhbmRzLCA6dywgOm56
KQorICAgICAgICB3aGVuICJ0cHoiLCAidHF6IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRUZXN0
KG9wZXJhbmRzLCA6ZCwgOnopCisgICAgICAgIHdoZW4gInRwbnoiLCAidHFueiIKKyAgICAgICAg
ICAgIHJpc2N2NjRFbWl0VGVzdChvcGVyYW5kcywgOmQsIDpueikKKyAgICAgICAgd2hlbiAidGJz
IiwgInRpcyIsICJ0cHMiLCAidHFzIgorICAgICAgICAgICAgcmlzY3Y2NFJhaXNlVW5zdXBwb3J0
ZWQKKyAgICAgICAgd2hlbiAicGVlayIsICJwb2tlIgorICAgICAgICAgICAgcmlzY3Y2NFJhaXNl
VW5zdXBwb3J0ZWQKKyAgICAgICAgd2hlbiAiYm8iLCAiYnMiLCAiYnoiLCAiYm56IgorICAgICAg
ICAgICAgcmlzY3Y2NFJhaXNlVW5zdXBwb3J0ZWQKKyAgICAgICAgd2hlbiAibGVhcCIsICJsZWFx
IgorICAgICAgICAgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgICAg
ICAgICAgd2hlbiBbQWRkcmVzcywgUmVnaXN0ZXJJRF0KKyAgICAgICAgICAgICAgICBpZiBvcGVy
YW5kc1swXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICAgICAgICAgIG9wZXJhbmRz
WzBdLnJpc2N2NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxKQorICAgICAgICAgICAg
ICAgICAgICAkYXNtLnB1dHMgIm12ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEi
CisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImFk
ZGkgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0uYmFzZS5yaXNj
djY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ub2Zmc2V0LnZhbHVlfSIKKyAgICAgICAgICAgICAg
ICBlbmQKKyAgICAgICAgICAgIHdoZW4gW0Jhc2VJbmRleCwgUmVnaXN0ZXJJRF0KKyAgICAgICAg
ICAgICAgICBvcGVyYW5kc1swXS5yaXNjdjY0TG9hZChSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngz
MSwgUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzApCisgICAgICAgICAgICAgICAgJGFzbS5wdXRz
ICJtdiAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgeDMxIgorICAgICAgICAgICAgd2hl
biBbTGFiZWxSZWZlcmVuY2UsIFJlZ2lzdGVySURdCisgICAgICAgICAgICAgICAgJGFzbS5wdXRz
ICJsbGEgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0uYXNtTGFi
ZWx9IgorICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJpc2N2NjRSYWlzZU1pc21h
dGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICAgICAgICAgIGVuZAorICAgICAgICB3aGVuICJz
bXVsbGkiCisgICAgICAgICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3aGVu
ICJtZW1mZW5jZSIKKyAgICAgICAgICAgICRhc20ucHV0cyAiZmVuY2UgcncsIHJ3IgorICAgICAg
ICB3aGVuICJmZW5jZSIKKyAgICAgICAgICAgICRhc20ucHV0cyAiZmVuY2UiCisgICAgICAgIHdo
ZW4gImJmaXEiCisgICAgICAgICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3
aGVuICJwY3J0b2FkZHIiCisgICAgICAgICAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3Bl
cmFuZHMpCisgICAgICAgICAgICB3aGVuIFtMYWJlbFJlZmVyZW5jZSwgUmVnaXN0ZXJJRF0KKyAg
ICAgICAgICAgICAgICAkYXNtLnB1dHMgImxsYSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5k
fSwgI3tvcGVyYW5kc1swXS5hc21MYWJlbH0iCisgICAgICAgICAgICBlbHNlCisgICAgICAgICAg
ICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgICAgICAg
ICAgZW5kCisgICAgICAgIHdoZW4gImdsb2JhbGFkZHIiCisgICAgICAgICAgICBjYXNlIHJpc2N2
NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgICAgICAgICB3aGVuIFtMYWJlbFJlZmVyZW5j
ZSwgUmVnaXN0ZXJJRF0KKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImxhICN7b3BlcmFuZHNb
MV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLmFzbUxhYmVsfSIKKyAgICAgICAgICAg
IGVsc2UKKyAgICAgICAgICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3Bl
cmFuZHMpCisgICAgICAgICAgICBlbmQKKyAgICAgICAgd2hlbiAibHJvdGF0ZWkiLCAibHJvdGF0
ZXEiCisgICAgICAgICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3aGVuICJy
cm90YXRlaSIsICJycm90YXRlcSIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVk
CisgICAgICAgIHdoZW4gIm1vdmVkIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUE9wZXJhdGlv
bihvcGVyYW5kcywgImZtdi5kIikKKyAgICAgICAgd2hlbiAibG9hZGYiCisgICAgICAgICAgICBy
aXNjdjY0RW1pdEZQTG9hZChvcGVyYW5kcywgImZsdyIpCisgICAgICAgIHdoZW4gImxvYWRkIgor
ICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUExvYWQob3BlcmFuZHMsICJmbGQiKQorICAgICAgICB3
aGVuICJzdG9yZWYiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQU3RvcmUob3BlcmFuZHMsICJm
c3ciKQorICAgICAgICB3aGVuICJzdG9yZWQiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQU3Rv
cmUob3BlcmFuZHMsICJmc2QiKQorICAgICAgICB3aGVuICJhZGRmIgorICAgICAgICAgICAgcmlz
Y3Y2NEVtaXRGUE9wZXJhdGlvbihbb3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdLCBvcGVyYW5kc1sx
XV0sICJmYWRkLnMiKQorICAgICAgICB3aGVuICJhZGRkIgorICAgICAgICAgICAgcmlzY3Y2NEVt
aXRGUE9wZXJhdGlvbihbb3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdLCBvcGVyYW5kc1sxXV0sICJm
YWRkLmQiKQorICAgICAgICB3aGVuICJzdWJmIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUE9w
ZXJhdGlvbihbb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXV0sICJmc3ViLnMi
KQorICAgICAgICB3aGVuICJzdWJkIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUE9wZXJhdGlv
bihbb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXV0sICJmc3ViLmQiKQorICAg
ICAgICB3aGVuICJtdWxmIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUE9wZXJhdGlvbihbb3Bl
cmFuZHNbMF0sIG9wZXJhbmRzWzFdLCBvcGVyYW5kc1sxXV0sICJmbXVsLnMiKQorICAgICAgICB3
aGVuICJtdWxkIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUE9wZXJhdGlvbihbb3BlcmFuZHNb
MF0sIG9wZXJhbmRzWzFdLCBvcGVyYW5kc1sxXV0sICJmbXVsLmQiKQorICAgICAgICB3aGVuICJk
aXZmIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUE9wZXJhdGlvbihbb3BlcmFuZHNbMV0sIG9w
ZXJhbmRzWzBdLCBvcGVyYW5kc1sxXV0sICJmZGl2LnMiKQorICAgICAgICB3aGVuICJkaXZkIgor
ICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUE9wZXJhdGlvbihbb3BlcmFuZHNbMV0sIG9wZXJhbmRz
WzBdLCBvcGVyYW5kc1sxXV0sICJmZGl2LmQiKQorICAgICAgICB3aGVuICJzcXJ0ZiIKKyAgICAg
ICAgICAgIHJpc2N2NjRFbWl0RlBPcGVyYXRpb24ob3BlcmFuZHMsICJmc3FydC5zIikKKyAgICAg
ICAgd2hlbiAic3FydGQiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQT3BlcmF0aW9uKG9wZXJh
bmRzLCAiZnNxcnQuZCIpCisgICAgICAgIHdoZW4gImFic2YiCisgICAgICAgICAgICByaXNjdjY0
RW1pdEZQT3BlcmF0aW9uKG9wZXJhbmRzLCAiZmFicy5zIikKKyAgICAgICAgd2hlbiAiYWJzZCIK
KyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBPcGVyYXRpb24ob3BlcmFuZHMsICJmYWJzLmQiKQor
ICAgICAgICB3aGVuICJuZWdmIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUE9wZXJhdGlvbihv
cGVyYW5kcywgImZuZWcucyIpCisgICAgICAgIHdoZW4gIm5lZ2QiCisgICAgICAgICAgICByaXNj
djY0RW1pdEZQT3BlcmF0aW9uKG9wZXJhbmRzLCAiZm5lZy5kIikKKyAgICAgICAgd2hlbiAiZmxv
b3JmIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUFJvdW5kT3BlcmF0aW9uKG9wZXJhbmRzLCA6
cywgInJkbiIpCisgICAgICAgIHdoZW4gImZsb29yZCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0
RlBSb3VuZE9wZXJhdGlvbihvcGVyYW5kcywgOmQsICJyZG4iKQorICAgICAgICB3aGVuICJjZWls
ZiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBSb3VuZE9wZXJhdGlvbihvcGVyYW5kcywgOnMs
ICJydXAiKQorICAgICAgICB3aGVuICJjZWlsZCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBS
b3VuZE9wZXJhdGlvbihvcGVyYW5kcywgOmQsICJydXAiKQorICAgICAgICB3aGVuICJyb3VuZGYi
CisgICAgICAgICAgICByaXNjdjY0RW1pdEZQUm91bmRPcGVyYXRpb24ob3BlcmFuZHMsIDpzLCAi
cm5lIikKKyAgICAgICAgd2hlbiAicm91bmRkIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUFJv
dW5kT3BlcmF0aW9uKG9wZXJhbmRzLCA6ZCwgInJuZSIpCisgICAgICAgIHdoZW4gInRydW5jYXRl
ZiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBSb3VuZE9wZXJhdGlvbihvcGVyYW5kcywgOnMs
ICJydHoiKQorICAgICAgICB3aGVuICJ0cnVuY2F0ZWQiCisgICAgICAgICAgICByaXNjdjY0RW1p
dEZQUm91bmRPcGVyYXRpb24ob3BlcmFuZHMsIDpkLCAicnR6IikKKyAgICAgICAgd2hlbiAidHJ1
bmNhdGVmMmkiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29udmVydE9wZXJhdGlvbihvcGVy
YW5kcywgOnMsIDp3dSwgInJ0eiIpCisgICAgICAgIHdoZW4gInRydW5jYXRlZDJpIgorICAgICAg
ICAgICAgcmlzY3Y2NEVtaXRGUENvbnZlcnRPcGVyYXRpb24ob3BlcmFuZHMsIDpkLCA6d3UsICJy
dHoiKQorICAgICAgICB3aGVuICJ0cnVuY2F0ZWYycSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0
RlBDb252ZXJ0T3BlcmF0aW9uKG9wZXJhbmRzLCA6cywgOmx1LCAicnR6IikKKyAgICAgICAgd2hl
biAidHJ1bmNhdGVkMnEiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29udmVydE9wZXJhdGlv
bihvcGVyYW5kcywgOmQsIDpsdSwgInJ0eiIpCisgICAgICAgIHdoZW4gInRydW5jYXRlZjJpcyIK
KyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb252ZXJ0T3BlcmF0aW9uKG9wZXJhbmRzLCA6cywg
OncsICJydHoiKQorICAgICAgICB3aGVuICJ0cnVuY2F0ZWQyaXMiCisgICAgICAgICAgICByaXNj
djY0RW1pdEZQQ29udmVydE9wZXJhdGlvbihvcGVyYW5kcywgOmQsIDp3LCAicnR6IikKKyAgICAg
ICAgd2hlbiAidHJ1bmNhdGVmMnFzIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbnZlcnRP
cGVyYXRpb24ob3BlcmFuZHMsIDpzLCA6bCwgInJ0eiIpCisgICAgICAgIHdoZW4gInRydW5jYXRl
ZDJxcyIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb252ZXJ0T3BlcmF0aW9uKG9wZXJhbmRz
LCA6ZCwgOmwsICJydHoiKQorICAgICAgICB3aGVuICJjaTJmIgorICAgICAgICAgICAgcmlzY3Y2
NEVtaXRGUENvbnZlcnRPcGVyYXRpb24ob3BlcmFuZHMsIDp3dSwgOnMsIDpub25lKQorICAgICAg
ICB3aGVuICJjaTJkIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbnZlcnRPcGVyYXRpb24o
b3BlcmFuZHMsIDp3dSwgOmQsIDpub25lKQorICAgICAgICB3aGVuICJjaTJmcyIKKyAgICAgICAg
ICAgIHJpc2N2NjRFbWl0RlBDb252ZXJ0T3BlcmF0aW9uKG9wZXJhbmRzLCA6dywgOnMsIDpub25l
KQorICAgICAgICB3aGVuICJjaTJkcyIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb252ZXJ0
T3BlcmF0aW9uKG9wZXJhbmRzLCA6dywgOmQsIDpub25lKQorICAgICAgICB3aGVuICJjcTJmIgor
ICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbnZlcnRPcGVyYXRpb24ob3BlcmFuZHMsIDpsdSwg
OnMsIDpub25lKQorICAgICAgICB3aGVuICJjcTJkIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRG
UENvbnZlcnRPcGVyYXRpb24ob3BlcmFuZHMsIDpsdSwgOmQsIDpub25lKQorICAgICAgICB3aGVu
ICJjcTJmcyIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb252ZXJ0T3BlcmF0aW9uKG9wZXJh
bmRzLCA6bCwgOnMsIDpub25lKQorICAgICAgICB3aGVuICJjcTJkcyIKKyAgICAgICAgICAgIHJp
c2N2NjRFbWl0RlBDb252ZXJ0T3BlcmF0aW9uKG9wZXJhbmRzLCA6bCwgOmQsIDpub25lKQorICAg
ICAgICB3aGVuICJjZjJkIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbnZlcnRPcGVyYXRp
b24ob3BlcmFuZHMsIDpzLCA6ZCwgOm5vbmUpCisgICAgICAgIHdoZW4gImNkMmYiCisgICAgICAg
ICAgICByaXNjdjY0RW1pdEZQQ29udmVydE9wZXJhdGlvbihvcGVyYW5kcywgOmQsIDpzLCA6bm9u
ZSkKKyAgICAgICAgd2hlbiAidHpjbnRpIiwgInR6Y250cSIKKyAgICAgICAgICAgIHJpc2N2NjRS
YWlzZVVuc3VwcG9ydGVkCisgICAgICAgIHdoZW4gImx6Y250aSIsICJsemNudHEiCisgICAgICAg
ICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3aGVuICJhbmRmIgorICAgICAg
ICAgICAgcmlzY3Y2NEVtaXRGUEJpdHdpc2VPcGVyYXRpb24ob3BlcmFuZHMsIDpzLCAiYW5kIikK
KyAgICAgICAgd2hlbiAiYW5kZCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBCaXR3aXNlT3Bl
cmF0aW9uKG9wZXJhbmRzLCA6ZCwgImFuZCIpCisgICAgICAgIHdoZW4gIm9yZiIKKyAgICAgICAg
ICAgIHJpc2N2NjRFbWl0RlBCaXR3aXNlT3BlcmF0aW9uKG9wZXJhbmRzLCA6cywgIm9yIikKKyAg
ICAgICAgd2hlbiAib3JkIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUEJpdHdpc2VPcGVyYXRp
b24ob3BlcmFuZHMsIDpkLCAib3IiKQorICAgICAgICB3aGVuICJjZmVxIgorICAgICAgICAgICAg
cmlzY3Y2NEVtaXRGUENvbXBhcmUob3BlcmFuZHMsIDpzLCA6ZXEpCisgICAgICAgIHdoZW4gImNm
bmVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbXBhcmUob3BlcmFuZHMsIDpzLCA6bmVx
KQorICAgICAgICB3aGVuICJjZmx0IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbXBhcmUo
b3BlcmFuZHMsIDpzLCA6bHQpCisgICAgICAgIHdoZW4gImNmbHRlcSIKKyAgICAgICAgICAgIHJp
c2N2NjRFbWl0RlBDb21wYXJlKG9wZXJhbmRzLCA6cywgOmx0ZXEpCisgICAgICAgIHdoZW4gImNm
Z3QiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29tcGFyZShvcGVyYW5kcywgOnMsIDpndCkK
KyAgICAgICAgd2hlbiAiY2ZndGVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbXBhcmUo
b3BlcmFuZHMsIDpzLCA6Z3RlcSkKKyAgICAgICAgd2hlbiAiY2ZuZXF1biIKKyAgICAgICAgICAg
IHJpc2N2NjRFbWl0RlBDb21wYXJlKG9wZXJhbmRzLCA6cywgOm5lcXVuKQorICAgICAgICB3aGVu
ICJjZGVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbXBhcmUob3BlcmFuZHMsIDpkLCA6
ZXEpCisgICAgICAgIHdoZW4gImNkbmVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbXBh
cmUob3BlcmFuZHMsIDpkLCA6bmVxKQorICAgICAgICB3aGVuICJjZGx0IgorICAgICAgICAgICAg
cmlzY3Y2NEVtaXRGUENvbXBhcmUob3BlcmFuZHMsIDpkLCA6bHQpCisgICAgICAgIHdoZW4gImNk
bHRlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb21wYXJlKG9wZXJhbmRzLCA6ZCwgOmx0
ZXEpCisgICAgICAgIHdoZW4gImNkZ3QiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29tcGFy
ZShvcGVyYW5kcywgOmQsIDpndCkKKyAgICAgICAgd2hlbiAiY2RndGVxIgorICAgICAgICAgICAg
cmlzY3Y2NEVtaXRGUENvbXBhcmUob3BlcmFuZHMsIDpkLCA6Z3RlcSkKKyAgICAgICAgd2hlbiAi
Y2RuZXF1biIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb21wYXJlKG9wZXJhbmRzLCA6ZCwg
Om5lcXVuKQorICAgICAgICB3aGVuICJmaTJmIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENv
cHkob3BlcmFuZHMsIDpzKQorICAgICAgICB3aGVuICJmZjJpIgorICAgICAgICAgICAgcmlzY3Y2
NEVtaXRGUENvcHkob3BlcmFuZHMsIDpzKQorICAgICAgICB3aGVuICJmcDJkIiwgImZxMmQiCisg
ICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29weShvcGVyYW5kcywgOmQpCisgICAgICAgIHdoZW4g
ImZkMnAiLCAiZmQycSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb3B5KG9wZXJhbmRzLCA6
ZCkKKyAgICAgICAgd2hlbiAidGxzX2xvYWRwIiwgInRsc19zdG9yZXAiCisgICAgICAgICAgICBy
aXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3aGVuICJsb2FkbGlua2FjcWIiLCAibG9h
ZGxpbmthY3FoIiwgImxvYWRsaW5rYWNxaSIsICJsb2FkbGlua2FjcXEiCisgICAgICAgICAgICBy
aXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3aGVuICJzdG9yZWNvbmRyZWxiIiwgInN0
b3JlY29uZHJlbGgiLCAic3RvcmVjb25kcmVsaSIsICJzdG9yZWNvbmRyZWxxIgorICAgICAgICAg
ICAgcmlzY3Y2NFJhaXNlVW5zdXBwb3J0ZWQKKyAgICAgICAgd2hlbiAiYXRvbWljeGNoZ2FkZGIi
LCAiYXRvbWljeGNoZ2FkZGgiLCAiYXRvbWljeGNoZ2FkZGkiLCAiYXRvbWljeGNoZ2FkZHEiCisg
ICAgICAgICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3aGVuICJhdG9taWN4
Y2hnY2xlYXJiIiwgImF0b21pY3hjaGdjbGVhcmgiLCAiYXRvbWljeGNoZ2NsZWFyaSIsICJhdG9t
aWN4Y2hnY2xlYXJxIgorICAgICAgICAgICAgcmlzY3Y2NFJhaXNlVW5zdXBwb3J0ZWQKKyAgICAg
ICAgd2hlbiAiYXRvbWljeGNoZ29yYiIsICJhdG9taWN4Y2hnb3JoIiwgImF0b21pY3hjaGdvcmki
LCAiYXRvbWljeGNoZ29ycSIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisg
ICAgICAgIHdoZW4gImF0b21pY3hjaGd4b3JiIiwgImF0b21pY3hjaGd4b3JoIiwgImF0b21pY3hj
aGd4b3JpIiwgImF0b21pY3hjaGd4b3JxIgorICAgICAgICAgICAgcmlzY3Y2NFJhaXNlVW5zdXBw
b3J0ZWQKKyAgICAgICAgd2hlbiAiYXRvbWljeGNoZ2IiLCAiYXRvbWljeGNoZ2giLCAiYXRvbWlj
eGNoZ2kiLCAiYXRvbWljeGNoZ3EiCisgICAgICAgICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRl
ZAorICAgICAgICB3aGVuICJhdG9taWN3ZWFrY2FzYiIsICJhdG9taWN3ZWFrY2FzaCIsICJhdG9t
aWN3ZWFrY2FzaSIsICJhdG9taWN3ZWFrY2FzcSIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVu
c3VwcG9ydGVkCisgICAgICAgIHdoZW4gImF0b21pY2xvYWRiIiwgImF0b21pY2xvYWRoIiwgImF0
b21pY2xvYWRpIiwgImF0b21pY2xvYWRxIgorICAgICAgICAgICAgcmlzY3Y2NFJhaXNlVW5zdXBw
b3J0ZWQKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgbG93ZXJEZWZhdWx0CisgICAgICAgIGVu
ZAorICAgIGVuZAorZW5kCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUVuYWJs
ZS5oIGIvU291cmNlL1dURi93dGYvUGxhdGZvcm1FbmFibGUuaAppbmRleCA1YzE0ZDE0YzE0ODJj
ZWU0YzU0MDU0ZWZlMTgzNjc4ZDU2ODdmZTE5Li5iYWFmYWY4N2QxOWIwMDVhNzlkMmM4MTA5Mjky
NjUwODJjOTg3NzIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUVuYWJsZS5o
CisrKyBiL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtRW5hYmxlLmgKQEAgLTg4MCw3ICs4ODAsNyBA
QAogICAgdGhhdCBleGVjdXRlcyBlYWNoIG9wY29kZS4gSXQgY2Fubm90IGJlIHN1cHBvcnRlZCBi
eSB0aGUgQ0xvb3Agc2luY2UgdGhlcmUncyBubyB3YXkgdG8gZW1iZWQgdGhlCiAgICBPcGNvZGVJ
RCB3b3JkIGluIHRoZSBDTG9vcCdzIHN3aXRjaCBzdGF0ZW1lbnQgY2FzZXMuIEl0IGlzIGFsc28g
Y3VycmVudGx5IG5vdCBpbXBsZW1lbnRlZCBmb3IgTVNWQy4KICovCi0jaWYgIWRlZmluZWQoRU5B
QkxFX0xMSU5UX0VNQkVEREVEX09QQ09ERV9JRCkgJiYgIUVOQUJMRShDX0xPT1ApICYmICFDT01Q
SUxFUihNU1ZDKSAmJiAoQ1BVKFg4NikgfHwgQ1BVKFg4Nl82NCkgfHwgQ1BVKEFSTTY0KSB8fCAo
Q1BVKEFSTV9USFVNQjIpICYmIE9TKERBUldJTikpKQorI2lmICFkZWZpbmVkKEVOQUJMRV9MTElO
VF9FTUJFRERFRF9PUENPREVfSUQpICYmICFFTkFCTEUoQ19MT09QKSAmJiAhQ09NUElMRVIoTVNW
QykgJiYgKENQVShYODYpIHx8IENQVShYODZfNjQpIHx8IENQVShBUk02NCkgfHwgKENQVShBUk1f
VEhVTUIyKSAmJiBPUyhEQVJXSU4pKSB8fCBDUFUoUklTQ1Y2NCkpCiAjZGVmaW5lIEVOQUJMRV9M
TElOVF9FTUJFRERFRF9PUENPREVfSUQgMQogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9j
bWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZSBiL1NvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5j
bWFrZQppbmRleCBkNzhlNmQzNDVhMDAyNWI3MDNhYzhmMDM2MjIzZWVkM2E0NzUzOGY1Li4xZWI5
ZjhjMTEyYzVhMmJkMmM2MDFmYjljZjM3NjUwZmQ5NWYzZWQ0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
Y21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UKKysrIGIvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1
cmVzLmNtYWtlCkBAIC04NCw3ICs4NCw3IEBAIG1hY3JvKFdFQktJVF9PUFRJT05fQkVHSU4pCiAg
ICAgICAgIHNldChFTkFCTEVfSklUX0RFRkFVTFQgT0ZGKQogICAgICAgICBzZXQoRU5BQkxFX0ZU
TF9ERUZBVUxUIE9GRikKICAgICAgICAgc2V0KFVTRV9TWVNURU1fTUFMTE9DX0RFRkFVTFQgT0ZG
KQotICAgICAgICBzZXQoRU5BQkxFX0NfTE9PUF9ERUZBVUxUIE9OKQorICAgICAgICBzZXQoRU5B
QkxFX0NfTE9PUF9ERUZBVUxUIE9GRikKICAgICAgICAgc2V0KEVOQUJMRV9TQU1QTElOR19QUk9G
SUxFUl9ERUZBVUxUIE9GRikKICAgICBlbHNlICgpCiAgICAgICAgIHNldChFTkFCTEVfSklUX0RF
RkFVTFQgT0ZGKQpkaWZmIC0tZ2l0IGEvQ2hhbmdlTG9nIGIvQ2hhbmdlTG9nCmluZGV4IGJlODRk
MDBkNDBmNjZhOGI1N2QzNzdlODJlZjhjMjk2ZTZlNjFmZTUuLmI4NjdmMmQ3YTJlOTUxNDFhODVl
ZGFhYTNlY2YzM2U2MDI0Y2Y0Y2EgMTAwNjQ0Ci0tLSBhL0NoYW5nZUxvZworKysgYi9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwxNCBAQAorMjAyMS0wOC0yNyAgWmFuIERvYmVyc2VrICA8emRvYmVyc2Vr
QGlnYWxpYS5jb20+CisKKyAgICAgICAgUklTQ1Y2NCBzdXBwb3J0IGluIExMSW50CisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjkwMzUKKyAgICAgICAg
PHJkYXI6Ly9wcm9ibGVtLzgyMTIwOTA4PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgICogU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlOgor
ICAgICAgICBEb24ndCBmb3JjZSBDTG9vcCB0byBiZSBkZWZhdWx0IGZvciBSSVNDVjY0IGFueW1v
cmUuCisKIDIwMjEtMDgtMjUgIE15bGVzIEMuIE1heGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNv
bT4KIAogICAgICAgICBBZGQgY29tbWFuZCB0byBlbmFibGUgbG9nZ2luZyBpbiB0aGUgZG9jcwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>436717</attachid>
            <date>2021-08-28 09:10:36 -0700</date>
            <delta_ts>2021-08-29 07:12:28 -0700</delta_ts>
            <desc>Updated patch, only missing thing is the riscv64.rb documentation.</desc>
            <filename>bug-229035-20210828181034.patch</filename>
            <type>text/plain</type>
            <size>147115</size>
            <attacher name="Zan Dobersek">zan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgxNzAxCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBm
NmZiYTg4MjJhZGU2MWRlYTk5NTcxYTc0M2Q4MTRlYzNhM2I5YWI2Li5kMzM0Y2UyMDEzMGRlOTJk
NDNkOWIwMDI4NGVmYmZhN2QxYWMwZDYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMDcgQEAKKzIwMjEtMDgtMjcgIFphbiBEb2JlcnNlayAgPHpkb2JlcnNla0BpZ2FsaWEu
Y29tPgorCisgICAgICAgIFJJU0NWNjQgc3VwcG9ydCBpbiBMTEludAorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI5MDM1CisgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS84MjEyMDkwOD4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBJbnRyb2R1Y2UgUklTQ1Y2NCBzdXBwb3J0IGF0IHRoZSBMTGludCBsZXZlbC4g
QWxvbmcgd2l0aCB0aGUgbmVjZXNzYXJ5CisgICAgICAgIG9mZmxpbmVhc20gYmFja2VuZCwgcGxl
bnR5IG9mIG1pc2NlbGxhbmVvdXMgY29kZSBhcm91bmQgTWFjcm9Bc3NlbWJsZXIKKyAgICAgICAg
aW5mcmFzdHJ1Y3R1cmUgaXMgYWxzbyBpbnRyb2R1Y2VkLgorCisgICAgICAgIE9mIHRoZSBleGlz
dGluZyBzdXBwb3J0ZWQgYXJjaGl0ZWN0dXJlcywgUklTQ1Y2NCBpcyBtb3N0IHNpbWlsYXIgdG8K
KyAgICAgICAgQVJNNjQsIHdpdGggdGhlIHNhbWUgd29yZCBzaXplIGFuZCBzaW1pbGFyIHJlZ2lz
dGVyIGFidW5kYW5jZS4gVGhpcyBpcworICAgICAgICBtaXJyb3JlZCBpbiBtb3N0IGNoYW5nZXMg
YXJvdW5kIHRoZSBNYWNyb0Fzc2VtYmxlciBpbmZyYXN0cnVjdHVyZSBhcworICAgICAgICB3ZWxs
IGFzIHVzaW5nIHNhbWUgb3Igc2ltaWxhciBjb2RlcGF0aHMgaW4gTExpbnQgZm9yIHRoZSB0d28g
SVNBcy4KKworICAgICAgICBGb3IgdGhlIE1hY3JvQXNzZW1ibGVyIGluZnJhc3RydWN0dXJlLCBp
dCB3b24ndCBiZSB1c2VkIHVudGlsIHByb3BlciBKSVQKKyAgICAgICAgc3VwcG9ydCBpcyBpbnRy
b2R1Y2VkLCBidXQgdGhlIGJhc2ljIGZhY2lsaXRpZXMgYXJlIHN0aWxsIG5lY2Vzc2FyeSB0bwor
ICAgICAgICBrZWVwIHRoaW5ncyBjb21waWxpbmcgd2l0aG91dCBjb21wbGljYXRpbmcgdGhlIGNv
bmZpZ3VyYXRpb24gbWF0cml4LgorICAgICAgICBNYWNyb0Fzc2VtYmxlclJJU0NWNjQgY2xhc3Mg
cHJvdmlkZXMgbm8tb3AgbWV0aG9kcyB0aHJvdWdoIEMrKyB0ZW1wbGF0ZXMKKyAgICAgICAgd2hp
bGUgUklTQ1Y2NEFzc2VtYmxlciBpcyBhbHNvIGFkZGVkIGluIGEgbGltaXRlZCBmb3JtLgorCisg
ICAgICAgIFRoZSByaXNjdjY0IG9mZmxpbmVhc20gYmFja2VuZCBjb3ZlcnMgYXNzZW1ibHkgZ2Vu
ZXJhdGlvbiBmb3IKKyAgICAgICAgaW5zdHJ1Y3Rpb25zIHRoYXQgYXJlIGV4aGliaXRlZCBieSBM
TEludCBpbiB0aGUgY3VycmVudCBjb25maWd1cmF0aW9uLgorICAgICAgICBJdCBkb2Vzbid0IGNv
dmVyIGluc3RydWN0aW9ucyB0aGF0IGUuZy4gYXJlIG9ubHkgdXNlZCBpbiB0aGUgV2ViQXNzZW1i
bHkKKyAgICAgICAgb3Bjb2RlcywgYW5kIFdlYkFzc2VtYmx5IHdvbid0IGJlIGVuYWJsZWQgdW50
aWwgdGhlIGhpZ2hlciBKSVQgdGllcnMgYXJlCisgICAgICAgIHN1cHBvcnRlZCBhbnl3YXkuCisK
KyAgICAgICAgVGhlIG9mZmxpbmVhc20gYmFja2VuZCdzIGFzc2VtYmx5IGdlbmVyYXRpb24gZm9y
IHNwZWNpZmljIGluc3RydWN0aW9ucworICAgICAgICB1c2VzIHBhdHRlcm4gbWF0Y2hpbmcgb2Yg
b3BlcmFuZCB0eXBlcyBmb3IgYmV0dGVyIG92ZXJ2aWV3IG9mIGhvdworICAgICAgICByZXN1bHRp
bmcgYXNzZW1ibHkgaXMgY29uc3RydWN0ZWQuIFRoZXJlJ3Mgc3RpbGwgY2VydGFpbiBpbXByb3Zl
bWVudHMKKyAgICAgICAgcG9zc2libGUsIGUuZy4gaW4gaG93IHNjcmF0Y2ggcmVnaXN0ZXJzIGZv
ciBtb3JlIGV4cGFuc2l2ZSBvcGVyYXRpb25zCisgICAgICAgIGFyZSBhbGxvY2F0ZWQuCisKKyAg
ICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBTb3VyY2VzLnR4dDoKKyAgICAgICAg
KiBhc3NlbWJsZXIvQWJzdHJhY3RNYWNyb0Fzc2VtYmxlci5oOgorICAgICAgICAqIGFzc2VtYmxl
ci9NYWNyb0Fzc2VtYmxlci5oOgorICAgICAgICAqIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlclJJ
U0NWNjQuY3BwOiBBZGRlZC4KKyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXI6OnByb2JlKToK
KyAgICAgICAgKiBhc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJSSVNDVjY0Lmg6IEFkZGVkLgorICAg
ICAgICBEaXN0b3J0ZWQgYXV0by1nZW5lcmF0ZWQgbWV0aG9kIGxpc3QgcmVtb3ZlZC4gTmVjZXNz
YXJ5IG1ldGhvZHMgYXJlCisgICAgICAgIGludHJvZHVjZWQgdGhyb3VnaCBuby1vcCB0ZW1wbGF0
ZXMgdW50aWwgYWN0dWFsbHkgbmVlZGVkIGZvciBKSVQKKyAgICAgICAgZ2VuZXJhdGlvbi4KKyAg
ICAgICAgKiBhc3NlbWJsZXIvTWF4RnJhbWVFeHRlbnRGb3JTbG93UGF0aENhbGwuaDoKKyAgICAg
ICAgKiBhc3NlbWJsZXIvUGVyZkxvZy5jcHA6CisgICAgICAgICogYXNzZW1ibGVyL1Byb2JlQ29u
dGV4dC5oOgorICAgICAgICAqIGFzc2VtYmxlci9SSVNDVjY0QXNzZW1ibGVyLmg6IEFkZGVkLgor
ICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVyOjpmaXJzdFJlZ2lzdGVyKToKKyAgICAgICAg
KEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6bGFzdFJlZ2lzdGVyKToKKyAgICAgICAgKEpTQzo6UklT
Q1Y2NEFzc2VtYmxlcjo6bnVtYmVyT2ZSZWdpc3RlcnMpOgorICAgICAgICAoSlNDOjpSSVNDVjY0
QXNzZW1ibGVyOjpmaXJzdFNQUmVnaXN0ZXIpOgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1i
bGVyOjpsYXN0U1BSZWdpc3Rlcik6CisgICAgICAgIChKU0M6OlJJU0NWNjRBc3NlbWJsZXI6Om51
bWJlck9mU1BSZWdpc3RlcnMpOgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVyOjpmaXJz
dEZQUmVnaXN0ZXIpOgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVyOjpsYXN0RlBSZWdp
c3Rlcik6CisgICAgICAgIChKU0M6OlJJU0NWNjRBc3NlbWJsZXI6Om51bWJlck9mRlBSZWdpc3Rl
cnMpOgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVyOjpncHJOYW1lKToKKyAgICAgICAg
KEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6c3ByTmFtZSk6CisgICAgICAgIChKU0M6OlJJU0NWNjRB
c3NlbWJsZXI6OmZwck5hbWUpOgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVyOjpSSVND
VjY0QXNzZW1ibGVyKToKKyAgICAgICAgKEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6YnVmZmVyKToK
KyAgICAgICAgKEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6aW52ZXJ0KToKKyAgICAgICAgKEpTQzo6
UklTQ1Y2NEFzc2VtYmxlcjo6Z2V0UmVsb2NhdGVkQWRkcmVzcyk6CisgICAgICAgIChKU0M6OlJJ
U0NWNjRBc3NlbWJsZXI6OmNvZGVTaXplIGNvbnN0KToKKyAgICAgICAgKEpTQzo6UklTQ1Y2NEFz
c2VtYmxlcjo6Z2V0Q2FsbFJldHVybk9mZnNldCk6CisgICAgICAgIChKU0M6OlJJU0NWNjRBc3Nl
bWJsZXI6OmxhYmVsSWdub3JpbmdXYXRjaHBvaW50cyk6CisgICAgICAgIChKU0M6OlJJU0NWNjRB
c3NlbWJsZXI6OmxhYmVsRm9yV2F0Y2hwb2ludCk6CisgICAgICAgIChKU0M6OlJJU0NWNjRBc3Nl
bWJsZXI6OmxhYmVsKToKKyAgICAgICAgKEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6bGlua0p1bXAp
OgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVyOjpsaW5rQ2FsbCk6CisgICAgICAgIChK
U0M6OlJJU0NWNjRBc3NlbWJsZXI6OmxpbmtQb2ludGVyKToKKyAgICAgICAgKEpTQzo6UklTQ1Y2
NEFzc2VtYmxlcjo6bWF4SnVtcFJlcGxhY2VtZW50U2l6ZSk6CisgICAgICAgIChKU0M6OlJJU0NW
NjRBc3NlbWJsZXI6OnBhdGNoYWJsZUp1bXBTaXplKToKKyAgICAgICAgKEpTQzo6UklTQ1Y2NEFz
c2VtYmxlcjo6cmVwYXRjaFBvaW50ZXIpOgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVy
OjpyZWxpbmtKdW1wKToKKyAgICAgICAgKEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6cmVsaW5rSnVt
cFRvTm9wKToKKyAgICAgICAgKEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6cmVsaW5rQ2FsbCk6Cisg
ICAgICAgIChKU0M6OlJJU0NWNjRBc3NlbWJsZXI6OmRlYnVnT2Zmc2V0KToKKyAgICAgICAgKEpT
Qzo6UklTQ1Y2NEFzc2VtYmxlcjo6Y2FjaGVGbHVzaCk6CisgICAgICAgIChKU0M6OlJJU0NWNjRB
c3NlbWJsZXI6OmZpbGxOb3BzKToKKyAgICAgICAgKiBhc3NlbWJsZXIvUklTQ1Y2NFJlZ2lzdGVy
cy5oOiBBZGRlZC4KKyAgICAgICAgKiBqaXQvRlBSSW5mby5oOgorICAgICAgICAoSlNDOjpGUFJJ
bmZvOjp0b1JlZ2lzdGVyKToKKyAgICAgICAgKEpTQzo6RlBSSW5mbzo6dG9Bcmd1bWVudFJlZ2lz
dGVyKToKKyAgICAgICAgKEpTQzo6RlBSSW5mbzo6dG9JbmRleCk6CisgICAgICAgIChKU0M6OkZQ
UkluZm86OmRlYnVnTmFtZSk6CisgICAgICAgICogaml0L0dQUkluZm8uaDoKKyAgICAgICAgKEpT
Qzo6R1BSSW5mbzo6dG9SZWdpc3Rlcik6CisgICAgICAgIChKU0M6OkdQUkluZm86OnRvQXJndW1l
bnRSZWdpc3Rlcik6CisgICAgICAgIChKU0M6OkdQUkluZm86OnRvSW5kZXgpOgorICAgICAgICAo
SlNDOjpHUFJJbmZvOjpkZWJ1Z05hbWUpOgorICAgICAgICAqIGppdC9SZWdpc3RlclNldC5jcHA6
CisgICAgICAgIChKU0M6OlJlZ2lzdGVyU2V0Ojp2bUNhbGxlZVNhdmVSZWdpc3RlcnMpOgorICAg
ICAgICAoSlNDOjpSZWdpc3RlclNldDo6bGxpbnRCYXNlbGluZUNhbGxlZVNhdmVSZWdpc3RlcnMp
OgorICAgICAgICAqIGxsaW50L0xMSW50RGF0YS5oOgorICAgICAgICAqIGxsaW50L0xMSW50T2Zm
bGluZUFzbUNvbmZpZy5oOgorICAgICAgICAqIGxsaW50L0xvd0xldmVsSW50ZXJwcmV0ZXIuYXNt
OgorICAgICAgICAqIGxsaW50L0xvd0xldmVsSW50ZXJwcmV0ZXI2NC5hc206CisgICAgICAgICog
b2ZmbGluZWFzbS9iYWNrZW5kcy5yYjogUmVmZXJlbmNlIHRoZSByaXNjdjY0IGJhY2tlbmQgYXMg
cmVxdWlyZWQuCisgICAgICAgICogb2ZmbGluZWFzbS9yZWdpc3RlcnMucmI6IExpc3QgYWRkaXRp
b25hbCBwb3NzaWJsZSByZWdpc3RlcnMuCisgICAgICAgICogb2ZmbGluZWFzbS9yaXNjdjY0LnJi
OiBBZGRlZC4KKwogMjAyMS0wOC0yNyAgTWlraGFpbCBSLiBHYWRlbGhhICA8bWlraGFpbEBpZ2Fs
aWEuY29tPgogCiAgICAgICAgIEF2b2lkIGluY3JlYXNpbmcgcmVxdWlyZWQgYWxpZ25tZW50IG9m
IHRhcmdldCB0eXBlIHdhcm5pbmcgb24gQVJNIDMyIGJpdHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
VEYvQ2hhbmdlTG9nIGIvU291cmNlL1dURi9DaGFuZ2VMb2cKaW5kZXggMWIwMjkxMDRiYTg3N2Jj
MWQwMWU4NDIzYWU4OWM3ZDY4MzZjMmVmZS4uMmQ0ZDMxMDQ0ZmI0OGFmMmEzM2ExZTJmZTM3M2Vi
YTY3MmUyYzE4YSAxMDA2NDQKLS0tIGEvU291cmNlL1dURi9DaGFuZ2VMb2cKKysrIGIvU291cmNl
L1dURi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAyMS0wOC0yNyAgWmFuIERvYmVyc2Vr
ICA8emRvYmVyc2VrQGlnYWxpYS5jb20+CisKKyAgICAgICAgUklTQ1Y2NCBzdXBwb3J0IGluIExM
SW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjkw
MzUKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzgyMTIwOTA4PgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogd3RmL1BsYXRmb3JtRW5hYmxlLmg6Cisg
ICAgICAgIERlZmluZSBFTkFCTEVfTExJTlRfRU1CRURERURfT1BDT0RFX0lEIHRvIDEgZm9yIENQ
VShSSVNDVjY0KS4KKwogMjAyMS0wOC0yNyAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5j
b20+CiAKICAgICAgICAgW0NTUyBDYXNjYWRlIExheWVyc10gSW5pdGlhbCBzdXBwb3J0CmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ01ha2VMaXN0cy50eHQKaW5kZXggZWQzMGYxYTFmMmNmYzE2MjRhMTRkZTM2
ZjJmZmM4ZGVhNjQzZjczNi4uZDhkMWMwMWM1ZmMyM2ZjNzY1NDhjMmVmOTU2OGMyNjEyZTMxZmMw
YyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMjE2LDYgKzIxNiw3IEBA
IHNldChPRkZMSU5FX0FTTQogICAgIG9mZmxpbmVhc20vcGFyc2VyLnJiCiAgICAgb2ZmbGluZWFz
bS9yZWdpc3RlcnMucmIKICAgICBvZmZsaW5lYXNtL3Jpc2MucmIKKyAgICBvZmZsaW5lYXNtL3Jp
c2N2NjQucmIKICAgICBvZmZsaW5lYXNtL3NlbGZfaGFzaC5yYgogICAgIG9mZmxpbmVhc20vc2V0
dGluZ3MucmIKICAgICBvZmZsaW5lYXNtL3RyYW5zZm9ybS5yYgpAQCAtMjczLDYgKzI3NCw4IEBA
IGVsc2UgKCkKICAgICAgICAgc2V0KE9GRkxJTkVfQVNNX0JBQ0tFTkQgIkFSTXY3IikKICAgICBl
bHNlaWYgKFdURl9DUFVfTUlQUykKICAgICAgICAgc2V0KE9GRkxJTkVfQVNNX0JBQ0tFTkQgIk1J
UFMiKQorICAgIGVsc2VpZiAoV1RGX0NQVV9SSVNDVjY0KQorICAgICAgICBzZXQoT0ZGTElORV9B
U01fQkFDS0VORCAiUklTQ1Y2NCIpCiAgICAgZW5kaWYgKCkKIAogICAgIGlmIChOT1QgRU5BQkxF
X0pJVCkKQEAgLTU3Nyw5ICs1ODAsMTIgQEAgc2V0KEphdmFTY3JpcHRDb3JlX1BSSVZBVEVfRlJB
TUVXT1JLX0hFQURFUlMKICAgICBhc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJDb2RlUmVmLmgKICAg
ICBhc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJIZWxwZXJzLmgKICAgICBhc3NlbWJsZXIvTWFjcm9B
c3NlbWJsZXJNSVBTLmgKKyAgICBhc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJSSVNDVjY0LmgKICAg
ICBhc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJYODZDb21tb24uaAogICAgIGFzc2VtYmxlci9NYWNy
b0Fzc2VtYmxlclg4Nl82NC5oCiAgICAgYXNzZW1ibGVyL1ByaW50ZXIuaAorICAgIGFzc2VtYmxl
ci9SSVNDVjY0QXNzZW1ibGVyLmgKKyAgICBhc3NlbWJsZXIvUklTQ1Y2NFJlZ2lzdGVycy5oCiAg
ICAgYXNzZW1ibGVyL1JlZ2lzdGVySW5mby5oCiAgICAgYXNzZW1ibGVyL1g4NkFzc2VtYmxlci5o
CiAgICAgYXNzZW1ibGVyL1g4NlJlZ2lzdGVycy5oCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvU291cmNlcy50eHQgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvU291cmNlcy50eHQK
aW5kZXggNTJiOTNlZThkOGJiYTY2MDY0ZGIyMDE4ZjNmMzE3NzAyZjc2YWE5Yy4uZTIxYTU4MWM0
ZjY2ZTQzYWY3MDVmZGE0YjI3OGZhNjNiZjM4NDk2NyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL1NvdXJjZXMudHh0CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9Tb3VyY2Vz
LnR4dApAQCAtNTUsNiArNTUsNyBAQCBhc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJBUk12Ny5jcHAK
IGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlckNvZGVSZWYuY3BwCiBhc3NlbWJsZXIvTWFjcm9Bc3Nl
bWJsZXJNSVBTLmNwcAogYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyUHJpbnRlci5jcHAKK2Fzc2Vt
Ymxlci9NYWNyb0Fzc2VtYmxlclJJU0NWNjQuY3BwCiBhc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJY
ODZDb21tb24uY3BwCiBhc3NlbWJsZXIvUGVyZkxvZy5jcHAKIGFzc2VtYmxlci9QcmludGVyLmNw
cApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9BYnN0cmFjdE1h
Y3JvQXNzZW1ibGVyLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL0Fic3RyYWN0
TWFjcm9Bc3NlbWJsZXIuaAppbmRleCAxOTE2NWZmZjRmNWFhYjdiYTM3N2Y3ZTQwYmE4MjMyMjZh
ZjMzZGQzLi40M2Y3ODRhNGFiOTM1YTlhZjIzOWYyNmM4Y2IzMzhhYWIyMmVkZDVkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL0Fic3RyYWN0TWFjcm9Bc3NlbWJs
ZXIuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL0Fic3RyYWN0TWFjcm9B
c3NlbWJsZXIuaApAQCAtMzk3LDcgKzM5Nyw3IEBAIHB1YmxpYzoKICAgICAgICAgewogICAgICAg
ICB9CiAKLSNpZiBDUFUoWDg2XzY0KSB8fCBDUFUoQVJNNjQpCisjaWYgQ1BVKFg4Nl82NCkgfHwg
Q1BVKEFSTTY0KSB8fCBDUFUoUklTQ1Y2NCkKICAgICAgICAgZXhwbGljaXQgVHJ1c3RlZEltbTY0
KFRydXN0ZWRJbW1QdHIgcHRyKQogICAgICAgICAgICAgOiBtX3ZhbHVlKHB0ci5hc0ludHB0cigp
KQogICAgICAgICB7CkBAIC00MTMsNyArNDEzLDcgQEAgcHVibGljOgogICAgICAgICAgICAgOiBU
cnVzdGVkSW1tNjQodmFsdWUpCiAgICAgICAgIHsKICAgICAgICAgfQotI2lmIENQVShYODZfNjQp
IHx8IENQVShBUk02NCkKKyNpZiBDUFUoWDg2XzY0KSB8fCBDUFUoQVJNNjQpIHx8IENQVShSSVND
VjY0KQogICAgICAgICBleHBsaWNpdCBJbW02NChUcnVzdGVkSW1tUHRyIHB0cikKICAgICAgICAg
ICAgIDogVHJ1c3RlZEltbTY0KHB0cikKICAgICAgICAgewpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlci5oIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlci5oCmluZGV4IDY5NzExYmY4NzUyOTRlNDRm
ZTExZWYyY2UzNzU0YTQ1NWEwNjA5ODguLmQ3ZmUzYTgxZTM0MTE5YzFlNmVlNGJiNDVmNTg2NWY3
MjFmNDYyMTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFj
cm9Bc3NlbWJsZXIuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3Jv
QXNzZW1ibGVyLmgKQEAgLTU1LDYgKzU1LDExIEBAIG5hbWVzcGFjZSBKU0MgeyB0eXBlZGVmIE1h
Y3JvQXNzZW1ibGVyQVJNdjcgTWFjcm9Bc3NlbWJsZXJCYXNlOyB9OwogI2RlZmluZSBUQVJHRVRf
TUFDUk9BU1NFTUJMRVIgTWFjcm9Bc3NlbWJsZXJYODZfNjQKICNpbmNsdWRlICJNYWNyb0Fzc2Vt
Ymxlclg4Nl82NC5oIgogCisjZWxpZiBDUFUoUklTQ1Y2NCkKKyNkZWZpbmUgVEFSR0VUX0FTU0VN
QkxFUiBSSVNDVjY0QXNzZW1ibGVyCisjZGVmaW5lIFRBUkdFVF9NQUNST0FTU0VNQkxFUiBNYWNy
b0Fzc2VtYmxlclJJU0NWNjQKKyNpbmNsdWRlICJNYWNyb0Fzc2VtYmxlclJJU0NWNjQuaCIKKwog
I2Vsc2UKICNlcnJvciAiVGhlIE1hY3JvQXNzZW1ibGVyIGlzIG5vdCBzdXBwb3J0ZWQgb24gdGhp
cyBwbGF0Zm9ybS4iCiAjZW5kaWYKQEAgLTEzMiw3ICsxMzcsNyBAQCBwdWJsaWM6CiAgICAgdXNp
bmcgTWFjcm9Bc3NlbWJsZXJCYXNlOjphbmQzMjsKICAgICB1c2luZyBNYWNyb0Fzc2VtYmxlckJh
c2U6OmJyYW5jaEFkZDMyOwogICAgIHVzaW5nIE1hY3JvQXNzZW1ibGVyQmFzZTo6YnJhbmNoTXVs
MzI7Ci0jaWYgQ1BVKEFSTTY0KSB8fCBDUFUoQVJNX1RIVU1CMikgfHwgQ1BVKFg4Nl82NCkgfHwg
Q1BVKE1JUFMpCisjaWYgQ1BVKEFSTTY0KSB8fCBDUFUoQVJNX1RIVU1CMikgfHwgQ1BVKFg4Nl82
NCkgfHwgQ1BVKE1JUFMpIHx8IENQVShSSVNDVjY0KQogICAgIHVzaW5nIE1hY3JvQXNzZW1ibGVy
QmFzZTo6YnJhbmNoUHRyOwogI2VuZGlmCiAgICAgdXNpbmcgTWFjcm9Bc3NlbWJsZXJCYXNlOjpi
cmFuY2hTdWIzMjsKQEAgLTE0NCw3ICsxNDksNyBAQCBwdWJsaWM6CiAgICAgdXNpbmcgTWFjcm9B
c3NlbWJsZXJCYXNlOjp1cnNoaWZ0MzI7CiAgICAgdXNpbmcgTWFjcm9Bc3NlbWJsZXJCYXNlOjp4
b3IzMjsKIAotI2lmIENQVShBUk02NCkgfHwgQ1BVKFg4Nl82NCkKKyNpZiBDUFUoQVJNNjQpIHx8
IENQVShYODZfNjQpIHx8IENQVShSSVNDVjY0KQogICAgIHVzaW5nIE1hY3JvQXNzZW1ibGVyQmFz
ZTo6YW5kNjQ7CiAgICAgdXNpbmcgTWFjcm9Bc3NlbWJsZXJCYXNlOjpjb252ZXJ0SW50MzJUb0Rv
dWJsZTsKICAgICB1c2luZyBNYWNyb0Fzc2VtYmxlckJhc2U6OnN0b3JlNjQ7CkBAIC0zMzUsNyAr
MzQwLDcgQEAgcHVibGljOgogICAgIHN0YXRpYyBjb25zdGV4cHIgcHRyZGlmZl90IHB1c2hUb1Nh
dmVCeXRlT2Zmc2V0KCkgeyByZXR1cm4gc2l6ZW9mKHZvaWQqKTsgfQogI2VuZGlmIC8vICFDUFUo
QVJNNjQpCiAKLSNpZiBDUFUoWDg2XzY0KSB8fCBDUFUoQVJNNjQpCisjaWYgQ1BVKFg4Nl82NCkg
fHwgQ1BVKEFSTTY0KSB8fCBDUFUoUklTQ1Y2NCkKICAgICB2b2lkIHBlZWs2NChSZWdpc3RlcklE
IGRlc3QsIGludCBpbmRleCA9IDApCiAgICAgewogICAgICAgICBsb2FkNjQoQWRkcmVzcyhzdGFj
a1BvaW50ZXJSZWdpc3RlciwgKGluZGV4ICogc2l6ZW9mKHZvaWQqKSkpLCBkZXN0KTsKQEAgLTE3
MDYsNyArMTcxMSw3IEBAIHB1YmxpYzoKICAgICAgICAgc3RvcmVQdHIodmFsdWUsIGFkZHJlc3NG
b3JQb2tlKGluZGV4KSk7CiAgICAgfQogICAgIAotI2lmIENQVShYODZfNjQpIHx8IENQVShBUk02
NCkKKyNpZiBDUFUoWDg2XzY0KSB8fCBDUFUoQVJNNjQpIHx8IENQVShSSVNDVjY0KQogICAgIHZv
aWQgcG9rZShJbW02NCB2YWx1ZSwgaW50IGluZGV4ID0gMCkKICAgICB7CiAgICAgICAgIHN0b3Jl
NjQodmFsdWUsIGFkZHJlc3NGb3JQb2tlKGluZGV4KSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyUklTQ1Y2NC5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyUklTQ1Y2NC5jcHAKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uNjNiMzI2NTI4OWM1YzY2N2E1ODRmMzFkZGY3NDFmYTVjOWQ1YmU1NQotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJS
SVNDVjY0LmNwcApAQCAtMCwwICsxLDQyIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEln
YWxpYSBTLkwuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6Cisg
KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBB
UFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisg
KiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBP
UgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNp
bmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJNYWNyb0Fzc2VtYmxlci5oIgorCisjaWYgRU5B
QkxFKEFTU0VNQkxFUikgJiYgQ1BVKFJJU0NWNjQpCisKKyNpbmNsdWRlICJQcm9iZUNvbnRleHQu
aCIKKworbmFtZXNwYWNlIEpTQyB7CisKK3ZvaWQgTWFjcm9Bc3NlbWJsZXI6OnByb2JlKFByb2Jl
OjpGdW5jdGlvbiwgdm9pZCopCit7CisgICAgLy8gVE9ETworfQorCit9IC8vIG5hbWVzcGFjZSBK
U0MKKworI2VuZGlmIC8vIEVOQUJMRShBU1NFTUJMRVIpICYmIENQVShSSVNDVjY0KQpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlclJJU0NW
NjQuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJSSVND
VjY0LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uNWM5OGE5MGM0MmZkYTM3OTgwYmM2ZmU4NDU3MjQwYThmNGFkZjVk
MAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFj
cm9Bc3NlbWJsZXJSSVNDVjY0LmgKQEAgLTAsMCArMSwzOTUgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMjEgSWdhbGlhIFMuTC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICog
YXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBB
UFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVN
RU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpZiBFTkFCTEUoQVNTRU1CTEVSKSAmJiBDUFUoUklT
Q1Y2NCkKKworI2luY2x1ZGUgIkFic3RyYWN0TWFjcm9Bc3NlbWJsZXIuaCIKKyNpbmNsdWRlICJS
SVNDVjY0QXNzZW1ibGVyLmgiCisKKyNkZWZpbmUgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVN
UExBVEVEX05PT1BfTUVUSE9EKG1ldGhvZE5hbWUpIFwKKyAgICB0ZW1wbGF0ZTx0eXBlbmFtZS4u
LiBBcmdzPiB2b2lkIG1ldGhvZE5hbWUoQXJncyYmLi4uKSB7IH0KKyNkZWZpbmUgTUFDUk9fQVNT
RU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKG1ldGhvZE5h
bWUsIHJldHVyblR5cGUpIFwKKyAgICB0ZW1wbGF0ZTx0eXBlbmFtZS4uLiBBcmdzPiByZXR1cm5U
eXBlIG1ldGhvZE5hbWUoQXJncyYmLi4uKSB7IHJldHVybiB7IH07IH0KKworbmFtZXNwYWNlIEpT
QyB7CisKK3VzaW5nIEFzc2VtYmxlciA9IFRBUkdFVF9BU1NFTUJMRVI7CisKK2NsYXNzIE1hY3Jv
QXNzZW1ibGVyUklTQ1Y2NCA6IHB1YmxpYyBBYnN0cmFjdE1hY3JvQXNzZW1ibGVyPEFzc2VtYmxl
cj4geworcHVibGljOgorICAgIHN0YXRpYyBjb25zdGV4cHIgdW5zaWduZWQgbnVtR1BScyA9IDMy
OworICAgIHN0YXRpYyBjb25zdGV4cHIgdW5zaWduZWQgbnVtRlBScyA9IDMyOworCisgICAgc3Rh
dGljIGNvbnN0ZXhwciBSZWdpc3RlcklEIEludmFsaWRHUFJSZWcgPSBSSVNDVjY0UmVnaXN0ZXJz
OjpJbnZhbGlkR1BSUmVnOworCisgICAgUmVnaXN0ZXJJRCBzY3JhdGNoUmVnaXN0ZXIoKQorICAg
IHsKKyAgICAgICAgcmV0dXJuIEludmFsaWRHUFJSZWc7CisgICAgfQorCisgICAgc3RhdGljIGJv
b2wgc3VwcG9ydHNGbG9hdGluZ1BvaW50KCkgeyByZXR1cm4gdHJ1ZTsgfQorICAgIHN0YXRpYyBi
b29sIHN1cHBvcnRzRmxvYXRpbmdQb2ludFRydW5jYXRlKCkgeyByZXR1cm4gdHJ1ZTsgfQorICAg
IHN0YXRpYyBib29sIHN1cHBvcnRzRmxvYXRpbmdQb2ludFNxcnQoKSB7IHJldHVybiB0cnVlOyB9
CisgICAgc3RhdGljIGJvb2wgc3VwcG9ydHNGbG9hdGluZ1BvaW50QWJzKCkgeyByZXR1cm4gdHJ1
ZTsgfQorICAgIHN0YXRpYyBib29sIHN1cHBvcnRzRmxvYXRpbmdQb2ludFJvdW5kaW5nKCkgeyBy
ZXR1cm4gdHJ1ZTsgfQorCisgICAgZW51bSBSZWxhdGlvbmFsQ29uZGl0aW9uIHsKKyAgICAgICAg
RXF1YWwsCisgICAgICAgIE5vdEVxdWFsLAorICAgICAgICBBYm92ZSwKKyAgICAgICAgQWJvdmVP
ckVxdWFsLAorICAgICAgICBCZWxvdywKKyAgICAgICAgQmVsb3dPckVxdWFsLAorICAgICAgICBH
cmVhdGVyVGhhbiwKKyAgICAgICAgR3JlYXRlclRoYW5PckVxdWFsLAorICAgICAgICBMZXNzVGhh
biwKKyAgICAgICAgTGVzc1RoYW5PckVxdWFsLAorICAgIH07CisKKyAgICBlbnVtIFJlc3VsdENv
bmRpdGlvbiB7CisgICAgICAgIE92ZXJmbG93LAorICAgICAgICBTaWduZWQsCisgICAgICAgIFBv
c2l0aXZlT3JaZXJvLAorICAgICAgICBaZXJvLAorICAgICAgICBOb25aZXJvLAorICAgIH07CisK
KyAgICBlbnVtIFplcm9Db25kaXRpb24geworICAgICAgICBJc1plcm8sCisgICAgICAgIElzTm9u
WmVybywKKyAgICB9OworCisgICAgZW51bSBEb3VibGVDb25kaXRpb24geworICAgICAgICBEb3Vi
bGVFcXVhbEFuZE9yZGVyZWQsCisgICAgICAgIERvdWJsZU5vdEVxdWFsQW5kT3JkZXJlZCwKKyAg
ICAgICAgRG91YmxlR3JlYXRlclRoYW5BbmRPcmRlcmVkLAorICAgICAgICBEb3VibGVHcmVhdGVy
VGhhbk9yRXF1YWxBbmRPcmRlcmVkLAorICAgICAgICBEb3VibGVMZXNzVGhhbkFuZE9yZGVyZWQs
CisgICAgICAgIERvdWJsZUxlc3NUaGFuT3JFcXVhbEFuZE9yZGVyZWQsCisgICAgICAgIERvdWJs
ZUVxdWFsT3JVbm9yZGVyZWQsCisgICAgICAgIERvdWJsZU5vdEVxdWFsT3JVbm9yZGVyZWQsCisg
ICAgICAgIERvdWJsZUdyZWF0ZXJUaGFuT3JVbm9yZGVyZWQsCisgICAgICAgIERvdWJsZUdyZWF0
ZXJUaGFuT3JFcXVhbE9yVW5vcmRlcmVkLAorICAgICAgICBEb3VibGVMZXNzVGhhbk9yVW5vcmRl
cmVkLAorICAgICAgICBEb3VibGVMZXNzVGhhbk9yRXF1YWxPclVub3JkZXJlZCwKKyAgICB9Owor
CisgICAgc3RhdGljIGNvbnN0ZXhwciBSZWdpc3RlcklEIHN0YWNrUG9pbnRlclJlZ2lzdGVyID0g
UklTQ1Y2NFJlZ2lzdGVyczo6c3A7CisgICAgc3RhdGljIGNvbnN0ZXhwciBSZWdpc3RlcklEIGZy
YW1lUG9pbnRlclJlZ2lzdGVyID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZnA7CisgICAgc3RhdGljIGNv
bnN0ZXhwciBSZWdpc3RlcklEIGxpbmtSZWdpc3RlciA9IFJJU0NWNjRSZWdpc3RlcnM6OnJhOwor
CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGFkZDMy
KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoYWRk
NjQpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChz
dWIzMik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9E
KHN1YjY0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRI
T0QobXVsMzIpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01F
VEhPRChtdWw2NCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1Bf
TUVUSE9EKGFuZDMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9P
UF9NRVRIT0QoYW5kNjQpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVE
X05PT1BfTUVUSE9EKGNvdW50TGVhZGluZ1plcm9zMzIpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9S
SVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChjb3VudExlYWRpbmdaZXJvczY0KTsKKyAgICBN
QUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoY291bnRUcmFpbGlu
Z1plcm9zMzIpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01F
VEhPRChjb3VudFRyYWlsaW5nWmVyb3M2NCk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2
NF9URU1QTEFURURfTk9PUF9NRVRIT0QoYnl0ZVN3YXAxNik7CisgICAgTUFDUk9fQVNTRU1CTEVS
X1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGJ5dGVTd2FwMzIpOworICAgIE1BQ1JPX0FT
U0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChieXRlU3dhcDY0KTsKKworICAg
IE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChsc2hpZnQzMik7
CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGxzaGlm
dDY0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qo
cnNoaWZ0MzIpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01F
VEhPRChyc2hpZnQ2NCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05P
T1BfTUVUSE9EKHVyc2hpZnQzMik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExB
VEVEX05PT1BfTUVUSE9EKHVyc2hpZnQ2NCk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2
NF9URU1QTEFURURfTk9PUF9NRVRIT0Qocm90YXRlUmlnaHQzMik7CisgICAgTUFDUk9fQVNTRU1C
TEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHJvdGF0ZVJpZ2h0NjQpOworCisgICAg
TUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGxvYWQ4KTsKKyAg
ICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QobG9hZDhTaWdu
ZWRFeHRlbmRUbzMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9P
UF9NRVRIT0QobG9hZDE2KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURf
Tk9PUF9NRVRIT0QobG9hZDE2VW5hbGlnbmVkKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2
NF9URU1QTEFURURfTk9PUF9NRVRIT0QobG9hZDE2U2lnbmVkRXh0ZW5kVG8zMik7CisgICAgTUFD
Uk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGxvYWQzMik7CisgICAg
TUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGxvYWQzMldpdGhV
bmFsaWduZWRIYWxmV29yZHMpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRF
RF9OT09QX01FVEhPRChsb2FkNjQpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVN
UExBVEVEX05PT1BfTUVUSE9EKHN0b3JlOCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRf
VEVNUExBVEVEX05PT1BfTUVUSE9EKHN0b3JlMTYpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVND
VjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChzdG9yZTMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJf
UklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qoc3RvcmU2NCk7CisKKyAgICBNQUNST19BU1NF
TUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoemVyb0V4dGVuZDhUbzMyKTsKKyAg
ICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoemVyb0V4dGVu
ZDE2VG8zMik7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9N
RVRIT0Qoc2lnbkV4dGVuZDhUbzMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1Q
TEFURURfTk9PUF9NRVRIT0Qoc2lnbkV4dGVuZDE2VG8zMik7CisgICAgTUFDUk9fQVNTRU1CTEVS
X1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHNpZ25FeHRlbmQzMlRvUHRyKTsKKyAgICBN
QUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoemVyb0V4dGVuZDMy
VG9Xb3JkKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01F
VEhPRF9XSVRIX1JFVFVSTihsb2FkNjRXaXRoQWRkcmVzc09mZnNldFBhdGNoLCBEYXRhTGFiZWwz
Mik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJ
VEhfUkVUVVJOKGxvYWQ2NFdpdGhDb21wYWN0QWRkcmVzc09mZnNldFBhdGNoLCBEYXRhTGFiZWxD
b21wYWN0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRI
T0RfV0lUSF9SRVRVUk4oc3RvcmU2NFdpdGhBZGRyZXNzT2Zmc2V0UGF0Y2gsIERhdGFMYWJlbDMy
KTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChv
cjgpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChv
cjE2KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qo
b3IzMik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9E
KG9yNjQpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVU
SE9EKHhvcjMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9N
RVRIT0QoeG9yNjQpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05P
T1BfTUVUSE9EKG5vdDMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURf
Tk9PUF9NRVRIT0Qobm90NjQpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExB
VEVEX05PT1BfTUVUSE9EKG5lZzMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1Q
TEFURURfTk9PUF9NRVRIT0QobmVnNjQpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRf
VEVNUExBVEVEX05PT1BfTUVUSE9EKG1vdmUpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0
X1RFTVBMQVRFRF9OT09QX01FVEhPRChzd2FwKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVND
VjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChtb3ZlWmVyb1RvRG91YmxlKTsKKyAgICBNQUNST19B
U1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QobW92ZUZsb2F0VG8zMik7Cisg
ICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKG1vdmUzMlRv
RmxvYXQpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVU
SE9EKG1vdmVEb3VibGUpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9O
T09QX01FVEhPRChtb3ZlRG91YmxlVG82NCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRf
VEVNUExBVEVEX05PT1BfTUVUSE9EKG1vdmU2NFRvRG91YmxlKTsKKworICAgIE1BQ1JPX0FTU0VN
QkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChjb21wYXJlOCk7CisgICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGNvbXBhcmUzMik7CisgICAg
TUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGNvbXBhcmU2NCk7
CisKKyAgICBzdGF0aWMgUmVsYXRpb25hbENvbmRpdGlvbiBpbnZlcnQoUmVsYXRpb25hbENvbmRp
dGlvbiBjb25kKQorICAgIHsKKyAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PFJlbGF0aW9uYWxD
b25kaXRpb24+KEFzc2VtYmxlcjo6aW52ZXJ0KHN0YXRpY19jYXN0PEFzc2VtYmxlcjo6Q29uZGl0
aW9uPihjb25kKSkpOworICAgIH0KKworICAgIHRlbXBsYXRlPFB0clRhZyByZXN1bHRUYWcsIFB0
clRhZyBsb2NhdGlvblRhZz4KKyAgICBzdGF0aWMgRnVuY3Rpb25QdHI8cmVzdWx0VGFnPiByZWFk
Q2FsbFRhcmdldChDb2RlTG9jYXRpb25DYWxsPGxvY2F0aW9uVGFnPikgeyByZXR1cm4geyB9OyB9
CisKKyAgICB0ZW1wbGF0ZTxQdHJUYWcgdGFnPgorICAgIHN0YXRpYyB2b2lkIHJlcGxhY2VXaXRo
Vk1IYWx0KENvZGVMb2NhdGlvbkxhYmVsPHRhZz4pIHsgfQorCisgICAgdGVtcGxhdGU8UHRyVGFn
IHN0YXJ0VGFnLCBQdHJUYWcgZGVzdFRhZz4KKyAgICBzdGF0aWMgdm9pZCByZXBsYWNlV2l0aEp1
bXAoQ29kZUxvY2F0aW9uTGFiZWw8c3RhcnRUYWc+LCBDb2RlTG9jYXRpb25MYWJlbDxkZXN0VGFn
PikgeyB9CisKKyAgICBzdGF0aWMgcHRyZGlmZl90IG1heEp1bXBSZXBsYWNlbWVudFNpemUoKQor
ICAgIHsKKyAgICAgICAgcmV0dXJuIEFzc2VtYmxlcjo6bWF4SnVtcFJlcGxhY2VtZW50U2l6ZSgp
OworICAgIH0KKworICAgIHN0YXRpYyBwdHJkaWZmX3QgcGF0Y2hhYmxlSnVtcFNpemUoKQorICAg
IHsKKyAgICAgICAgcmV0dXJuIEFzc2VtYmxlcjo6cGF0Y2hhYmxlSnVtcFNpemUoKTsKKyAgICB9
CisKKyAgICB0ZW1wbGF0ZTxQdHJUYWcgdGFnPgorICAgIHN0YXRpYyBDb2RlTG9jYXRpb25MYWJl
bDx0YWc+IHN0YXJ0T2ZCcmFuY2hQdHJXaXRoUGF0Y2hPblJlZ2lzdGVyKENvZGVMb2NhdGlvbkRh
dGFMYWJlbFB0cjx0YWc+KSB7IHJldHVybiB7IH07IH0KKworICAgIHRlbXBsYXRlPFB0clRhZyB0
YWc+CisgICAgc3RhdGljIENvZGVMb2NhdGlvbkxhYmVsPHRhZz4gc3RhcnRPZlBhdGNoYWJsZUJy
YW5jaFB0cldpdGhQYXRjaE9uQWRkcmVzcyhDb2RlTG9jYXRpb25EYXRhTGFiZWxQdHI8dGFnPikg
eyByZXR1cm4geyB9OyB9CisKKyAgICB0ZW1wbGF0ZTxQdHJUYWcgdGFnPgorICAgIHN0YXRpYyBD
b2RlTG9jYXRpb25MYWJlbDx0YWc+IHN0YXJ0T2ZQYXRjaGFibGVCcmFuY2gzMldpdGhQYXRjaE9u
QWRkcmVzcyhDb2RlTG9jYXRpb25EYXRhTGFiZWwzMjx0YWc+KSB7IHJldHVybiB7IH07IH0KKwor
ICAgIHRlbXBsYXRlPFB0clRhZyB0YWc+CisgICAgc3RhdGljIHZvaWQgcmV2ZXJ0SnVtcFJlcGxh
Y2VtZW50VG9CcmFuY2hQdHJXaXRoUGF0Y2goQ29kZUxvY2F0aW9uTGFiZWw8dGFnPiwgUmVnaXN0
ZXJJRCwgdm9pZCopIHsgfQorCisgICAgdGVtcGxhdGU8UHRyVGFnIHRhZz4KKyAgICBzdGF0aWMg
dm9pZCByZXZlcnRKdW1wUmVwbGFjZW1lbnRUb1BhdGNoYWJsZUJyYW5jaFB0cldpdGhQYXRjaChD
b2RlTG9jYXRpb25MYWJlbDx0YWc+LCBBZGRyZXNzLCB2b2lkKikgeyB9CisKKyAgICB0ZW1wbGF0
ZTxQdHJUYWcgdGFnPgorICAgIHN0YXRpYyB2b2lkIHJldmVydEp1bXBSZXBsYWNlbWVudFRvUGF0
Y2hhYmxlQnJhbmNoMzJXaXRoUGF0Y2goQ29kZUxvY2F0aW9uTGFiZWw8dGFnPiwgQWRkcmVzcywg
aW50MzJfdCkgeyB9CisKKyAgICB0ZW1wbGF0ZTxQdHJUYWcgY2FsbFRhZywgUHRyVGFnIGRlc3RU
YWc+CisgICAgc3RhdGljIHZvaWQgcmVwYXRjaENhbGwoQ29kZUxvY2F0aW9uQ2FsbDxjYWxsVGFn
PiwgQ29kZUxvY2F0aW9uTGFiZWw8ZGVzdFRhZz4pIHsgfQorCisgICAgdGVtcGxhdGU8UHRyVGFn
IGNhbGxUYWcsIFB0clRhZyBkZXN0VGFnPgorICAgIHN0YXRpYyB2b2lkIHJlcGF0Y2hDYWxsKENv
ZGVMb2NhdGlvbkNhbGw8Y2FsbFRhZz4sIEZ1bmN0aW9uUHRyPGRlc3RUYWc+KSB7IH0KKworICAg
IE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVS
TihqdW1wLCBKdW1wKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9P
UF9NRVRIT0QoZmFySnVtcCk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFU
RURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4obmVhckNhbGwsIENhbGwpOworICAgIE1BQ1JPX0FT
U0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihuZWFyVGFp
bENhbGwsIENhbGwpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09Q
X01FVEhPRF9XSVRIX1JFVFVSTih0aHJlYWRTYWZlUGF0Y2hhYmxlTmVhckNhbGwsIENhbGwpOwor
CisgICAgdm9pZCByZXQoKSB7IH0KKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBM
QVRFRF9OT09QX01FVEhPRCh0ZXN0OCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVN
UExBVEVEX05PT1BfTUVUSE9EKHRlc3QzMik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRf
VEVNUExBVEVEX05PT1BfTUVUSE9EKHRlc3Q2NCk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklT
Q1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoOCwgSnVtcCk7Cisg
ICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVU
VVJOKGJyYW5jaDMyLCBKdW1wKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFU
RURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoNjQsIEp1bXApOworCisgICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKGJyYW5j
aDMyV2l0aFBhdGNoLCBKdW1wKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFU
RURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoMzJXaXRoVW5hbGlnbmVkSGFsZldvcmRz
LCBKdW1wKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01F
VEhPRF9XSVRIX1JFVFVSTihicmFuY2hBZGQzMiwgSnVtcCk7CisgICAgTUFDUk9fQVNTRU1CTEVS
X1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKGJyYW5jaEFkZDY0LCBK
dW1wKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhP
RF9XSVRIX1JFVFVSTihicmFuY2hTdWIzMiwgSnVtcCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJ
U0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKGJyYW5jaFN1YjY0LCBKdW1w
KTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9X
SVRIX1JFVFVSTihicmFuY2hNdWwzMiwgSnVtcCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NW
NjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKGJyYW5jaE11bDY0LCBKdW1wKTsK
KworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRI
X1JFVFVSTihicmFuY2hOZWczMiwgSnVtcCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRf
VEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKGJyYW5jaE5lZzY0LCBKdW1wKTsKKwor
ICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JF
VFVSTihicmFuY2hUZXN0OCwgSnVtcCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVN
UExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKGJyYW5jaFRlc3QzMiwgSnVtcCk7CisgICAg
TUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJO
KGJyYW5jaFRlc3Q2NCwgSnVtcCk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1Q
TEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoUHRyLCBKdW1wKTsKKworICAgIE1B
Q1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTiht
b3ZlV2l0aFBhdGNoLCBEYXRhTGFiZWwzMik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRf
VEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKG1vdmVXaXRoUGF0Y2gsIERhdGFMYWJl
bFB0cik7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRI
T0RfV0lUSF9SRVRVUk4oYnJhbmNoUHRyV2l0aFBhdGNoLCBKdW1wKTsKKworICAgIE1BQ1JPX0FT
U0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihwYXRjaGFi
bGVCcmFuY2g4LCBQYXRjaGFibGVKdW1wKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9U
RU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4ocGF0Y2hhYmxlQnJhbmNoMzIsIFBhdGNo
YWJsZUp1bXApOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01F
VEhPRF9XSVRIX1JFVFVSTihwYXRjaGFibGVCcmFuY2g2NCwgUGF0Y2hhYmxlSnVtcCk7CisKKyAg
ICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRV
Uk4oYnJhbmNoRmxvYXQsIEp1bXApOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBM
QVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihicmFuY2hEb3VibGUsIEp1bXApOworICAgIE1B
Q1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihi
cmFuY2hEb3VibGVOb25aZXJvLCBKdW1wKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9U
RU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoRG91YmxlWmVyb09yTmFOLCBK
dW1wKTsKKworICAgIGVudW0gQnJhbmNoVHJ1bmNhdGVUeXBlIHsgQnJhbmNoSWZUcnVuY2F0ZUZh
aWxlZCwgQnJhbmNoSWZUcnVuY2F0ZVN1Y2Nlc3NmdWwgfTsKKyAgICBNQUNST19BU1NFTUJMRVJf
UklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoVHJ1bmNhdGVE
b3VibGVUb0ludDMyLCBKdW1wKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBM
QVRFRF9OT09QX01FVEhPRChicmFuY2hDb252ZXJ0RG91YmxlVG9JbnQzMik7CisKKyAgICBNQUNS
T19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oY2Fs
bCwgQ2FsbCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVU
SE9EKGNhbGxPcGVyYXRpb24pOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExB
VEVEX05PT1BfTUVUSE9EKGdldEVmZmVjdGl2ZUFkZHJlc3MpOworCisgICAgTUFDUk9fQVNTRU1C
TEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGxvYWRGbG9hdCk7CisgICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGxvYWREb3VibGUpOworCisg
ICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHN0b3JlRmxv
YXQpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChz
dG9yZURvdWJsZSk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9P
UF9NRVRIT0QoYWRkRmxvYXQpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRF
RF9OT09QX01FVEhPRChhZGREb3VibGUpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRf
VEVNUExBVEVEX05PT1BfTUVUSE9EKHN1YkZsb2F0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklT
Q1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qoc3ViRG91YmxlKTsKKworICAgIE1BQ1JPX0FTU0VN
QkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChtdWxGbG9hdCk7CisgICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKG11bERvdWJsZSk7CisKKyAg
ICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoZGl2RmxvYXQp
OworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChkaXZE
b3VibGUpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVU
SE9EKHNxcnRGbG9hdCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05P
T1BfTUVUSE9EKHNxcnREb3VibGUpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVN
UExBVEVEX05PT1BfTUVUSE9EKGFic0Zsb2F0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2
NF9URU1QTEFURURfTk9PUF9NRVRIT0QoYWJzRG91YmxlKTsKKworICAgIE1BQ1JPX0FTU0VNQkxF
Ul9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChjZWlsRmxvYXQpOworICAgIE1BQ1JPX0FT
U0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChjZWlsRG91YmxlKTsKKworICAg
IE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChmbG9vckZsb2F0
KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoZmxv
b3JEb3VibGUpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1Bf
TUVUSE9EKGFuZEZsb2F0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURf
Tk9PUF9NRVRIT0QoYW5kRG91YmxlKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RF
TVBMQVRFRF9OT09QX01FVEhPRChvckZsb2F0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2
NF9URU1QTEFURURfTk9PUF9NRVRIT0Qob3JEb3VibGUpOworCisgICAgTUFDUk9fQVNTRU1CTEVS
X1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKG5lZ2F0ZUZsb2F0KTsKKyAgICBNQUNST19B
U1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QobmVnYXRlRG91YmxlKTsKKwor
ICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChyb3VuZFRv
d2FyZE5lYXJlc3RJbnRGbG9hdCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExB
VEVEX05PT1BfTUVUSE9EKHJvdW5kVG93YXJkTmVhcmVzdEludERvdWJsZSk7CisgICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHJvdW5kVG93YXJkWmVyb0Zs
b2F0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qo
cm91bmRUb3dhcmRaZXJvRG91YmxlKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RF
TVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihjb21wYXJlRmxvYXQsIEp1bXApOworICAg
IE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVS
Tihjb21wYXJlRG91YmxlLCBKdW1wKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RF
TVBMQVRFRF9OT09QX01FVEhPRChjb252ZXJ0SW50MzJUb0Zsb2F0KTsKKyAgICBNQUNST19BU1NF
TUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoY29udmVydEludDMyVG9Eb3VibGUp
OworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChjb252
ZXJ0SW50NjRUb0Zsb2F0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURf
Tk9PUF9NRVRIT0QoY29udmVydEludDY0VG9Eb3VibGUpOworCisgICAgTUFDUk9fQVNTRU1CTEVS
X1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGNvbnZlcnRGbG9hdFRvRG91YmxlKTsKKyAg
ICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoY29udmVydERv
dWJsZVRvRmxvYXQpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05P
T1BfTUVUSE9EKHRydW5jYXRlRmxvYXRUb0ludDMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklT
Q1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QodHJ1bmNhdGVGbG9hdFRvVWludDMyKTsKKyAgICBN
QUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QodHJ1bmNhdGVGbG9h
dFRvSW50NjQpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01F
VEhPRCh0cnVuY2F0ZUZsb2F0VG9VaW50NjQpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0
X1RFTVBMQVRFRF9OT09QX01FVEhPRCh0cnVuY2F0ZURvdWJsZVRvSW50MzIpOworICAgIE1BQ1JP
X0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRCh0cnVuY2F0ZURvdWJsZVRv
VWludDMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRI
T0QodHJ1bmNhdGVEb3VibGVUb0ludDY0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9U
RU1QTEFURURfTk9PUF9NRVRIT0QodHJ1bmNhdGVEb3VibGVUb1VpbnQ2NCk7CisKKyAgICBNQUNS
T19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QocHVzaCk7CisgICAgTUFD
Uk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHB1c2hQYWlyKTsKKyAg
ICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QocHVzaFRvU2F2
ZSk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qo
cG9wKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qo
cG9wUGFpcik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVU
SE9EKHBvcFRvUmVzdG9yZSk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFU
RURfTk9PUF9NRVRIT0QoYWJvcnRXaXRoUmVhc29uKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9S
SVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihzdG9yZVB0cldpdGhQYXRj
aCwgRGF0YUxhYmVsUHRyKTsKKworICAgIHZvaWQgYnJlYWtwb2ludCh1aW50MTZfdCA9IDB4YzQ3
MSkgeyB9CisgICAgdm9pZCBub3AoKSB7IH0KKworICAgIHZvaWQgbWVtb3J5RmVuY2UoKSB7IH0K
KyAgICB2b2lkIHN0b3JlRmVuY2UoKSB7IH0KKyAgICB2b2lkIGxvYWRGZW5jZSgpIHsgfQorCisg
ICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVU
VVJOKGJyYW5jaEF0b21pY1dlYWtDQVM4LCBKdW1wTGlzdCk7CisgICAgTUFDUk9fQVNTRU1CTEVS
X1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKGJyYW5jaEF0b21pY1dl
YWtDQVMxNiwgSnVtcExpc3QpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRF
RF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihicmFuY2hBdG9taWNXZWFrQ0FTMzIsIEp1bXBMaXN0
KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lU
SF9SRVRVUk4oYnJhbmNoQXRvbWljV2Vha0NBUzY0LCBKdW1wTGlzdCk7CisKKyAgICB0ZW1wbGF0
ZTxQdHJUYWcgdGFnPgorICAgIHN0YXRpYyB2b2lkIGxpbmtDYWxsKHZvaWQqLCBDYWxsLCBGdW5j
dGlvblB0cjx0YWc+KSB7IH0KK307CisKK30gLy8gbmFtZXNwYWNlIEpTQworCisjdW5kZWYgTUFD
Uk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9ECisjdW5kZWYgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOCisKKyNl
bmRpZiAvLyBFTkFCTEUoQVNTRU1CTEVSKSAmJiBDUFUoUklTQ1Y2NCkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWF4RnJhbWVFeHRlbnRGb3JTbG93UGF0aENh
bGwuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWF4RnJhbWVFeHRlbnRGb3JT
bG93UGF0aENhbGwuaAppbmRleCA2ZGFjMDljMmM5MTNlYTA5YWU0YzViMGE2OTBjNTk2NTgxOTQ0
NzgwLi44NjJhNWQ3YzJiNjA0N2JhNDdjMWFhNzc5YjEzMzAwMGY5NDAxZjM4IDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01heEZyYW1lRXh0ZW50Rm9yU2xvd1Bh
dGhDYWxsLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYXhGcmFtZUV4
dGVudEZvclNsb3dQYXRoQ2FsbC5oCkBAIC01MCw3ICs1MCw3IEBAIHN0YXRpYyBjb25zdGV4cHIg
c2l6ZV90IG1heEZyYW1lRXh0ZW50Rm9yU2xvd1BhdGhDYWxsID0gMDsKIC8vIDcgYXJncyBvbiBz
dGFjayAoMjggYnl0ZXMpLgogc3RhdGljIGNvbnN0ZXhwciBzaXplX3QgbWF4RnJhbWVFeHRlbnRG
b3JTbG93UGF0aENhbGwgPSA0MDsKIAotI2VsaWYgQ1BVKEFSTTY0KSB8fCBDUFUoQVJNNjRFKQor
I2VsaWYgQ1BVKEFSTTY0KSB8fCBDUFUoQVJNNjRFKSB8fCBDUFUoUklTQ1Y2NCkKIC8vIEFsbCBh
cmdzIGluIHJlZ2lzdGVycy4KIHN0YXRpYyBjb25zdGV4cHIgc2l6ZV90IG1heEZyYW1lRXh0ZW50
Rm9yU2xvd1BhdGhDYWxsID0gMDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2Fzc2VtYmxlci9QZXJmTG9nLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIv
UGVyZkxvZy5jcHAKaW5kZXggYTQ5Y2NkN2ZkNGFmNDY0MjE0OThmNDAyNGE2NmYwNTAxYTY0ZmNh
OS4uNDZiYzg1OWQ5MTJhNTI3Njk0NjE2ZmIyN2U3ZGExNGZhMjRkNWU4MyAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9QZXJmTG9nLmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL1BlcmZMb2cuY3BwCkBAIC03Nyw2ICs3Nyw4IEBAIHN0
YXRpYyBjb25zdGV4cHIgdWludDMyX3QgZWxmTWFjaGluZSA9IEVNX01JUFNfUlMzX0xFOwogI2Vs
c2UKIHN0YXRpYyBjb25zdGV4cHIgdWludDMyX3QgZWxmTWFjaGluZSA9IEVNX01JUFM7CiAjZW5k
aWYKKyNlbGlmIENQVShSSVNDVjY0KQorc3RhdGljIGNvbnN0ZXhwciB1aW50MzJfdCBlbGZNYWNo
aW5lID0gRU1fUklTQ1Y7CiAjZW5kaWYKIAogfSAvLyBuYW1lc3BhY2UgQ29uc3RhbnRzCmRpZmYg
LS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL1Byb2JlQ29udGV4dC5oIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9Qcm9iZUNvbnRleHQuaAppbmRleCA4ZDUw
YmJlNThiOWYzOWJjOTBmNzc1YTI2Mzc4OGUyYmVlMTVhYmJiLi41ZDRlMzJkYzYyZjVhMjk0ZDI5
MTYyZTBkYjc0MTJhNDBhMmM5Y2VlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
YXNzZW1ibGVyL1Byb2JlQ29udGV4dC5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3Nl
bWJsZXIvUHJvYmVDb250ZXh0LmgKQEAgLTExNiw2ICsxMTYsOCBAQCBpbmxpbmUgdm9pZComIENQ
VVN0YXRlOjpwYygpCiAgICAgcmV0dXJuICpyZWludGVycHJldF9jYXN0PHZvaWQqKj4oJmdwcihB
Uk1SZWdpc3RlcnM6OnBjKSk7CiAjZWxpZiBDUFUoTUlQUykKICAgICByZXR1cm4gKnJlaW50ZXJw
cmV0X2Nhc3Q8dm9pZCoqPigmc3ByKE1JUFNSZWdpc3RlcnM6OnBjKSk7CisjZWxpZiBDUFUoUklT
Q1Y2NCkKKyAgICByZXR1cm4gKnJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCoqPigmc3ByKFJJU0NWNjRS
ZWdpc3RlcnM6OnBjKSk7CiAjZWxzZQogI2Vycm9yICJVbnN1cHBvcnRlZCBDUFUiCiAjZW5kaWYK
QEAgLTEzMSw2ICsxMzMsOCBAQCBpbmxpbmUgdm9pZComIENQVVN0YXRlOjpmcCgpCiAgICAgcmV0
dXJuICpyZWludGVycHJldF9jYXN0PHZvaWQqKj4oJmdwcihBUk1SZWdpc3RlcnM6OmZwKSk7CiAj
ZWxpZiBDUFUoTUlQUykKICAgICByZXR1cm4gKnJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCoqPigmZ3By
KE1JUFNSZWdpc3RlcnM6OmZwKSk7CisjZWxpZiBDUFUoUklTQ1Y2NCkKKyAgICByZXR1cm4gKnJl
aW50ZXJwcmV0X2Nhc3Q8dm9pZCoqPigmZ3ByKFJJU0NWNjRSZWdpc3RlcnM6OmZwKSk7CiAjZWxz
ZQogI2Vycm9yICJVbnN1cHBvcnRlZCBDUFUiCiAjZW5kaWYKQEAgLTE0Niw2ICsxNTAsOCBAQCBp
bmxpbmUgdm9pZComIENQVVN0YXRlOjpzcCgpCiAgICAgcmV0dXJuICpyZWludGVycHJldF9jYXN0
PHZvaWQqKj4oJmdwcihBUk1SZWdpc3RlcnM6OnNwKSk7CiAjZWxpZiBDUFUoTUlQUykKICAgICBy
ZXR1cm4gKnJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCoqPigmZ3ByKE1JUFNSZWdpc3RlcnM6OnNwKSk7
CisjZWxpZiBDUFUoUklTQ1Y2NCkKKyAgICByZXR1cm4gKnJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCoq
PigmZ3ByKFJJU0NWNjRSZWdpc3RlcnM6OnNwKSk7CiAjZWxzZQogI2Vycm9yICJVbnN1cHBvcnRl
ZCBDUFUiCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJs
ZXIvUklTQ1Y2NEFzc2VtYmxlci5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9S
SVNDVjY0QXNzZW1ibGVyLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjYwZThmYjQ3MWNhNTEzZmUwNWE0NzYyZjU0
YjU4NmEyZWQ0ZjQyNAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9h
c3NlbWJsZXIvUklTQ1Y2NEFzc2VtYmxlci5oCkBAIC0wLDAgKzEsMTk3IEBACisvKgorICogQ29w
eXJpZ2h0IChDKSAyMDIxIElnYWxpYSBTLkwuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRI
RQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaWYgRU5BQkxFKEFTU0VNQkxFUikgJiYg
Q1BVKFJJU0NWNjQpCisKKyNpbmNsdWRlICJBc3NlbWJsZXJCdWZmZXIuaCIKKyNpbmNsdWRlICJS
SVNDVjY0UmVnaXN0ZXJzLmgiCisKK25hbWVzcGFjZSBKU0MgeworCituYW1lc3BhY2UgUklTQ1Y2
NFJlZ2lzdGVycyB7CisKK3R5cGVkZWYgZW51bSA6IGludDhfdCB7CisjZGVmaW5lIFJFR0lTVEVS
X0lEKGlkLCBuYW1lLCByLCBjcykgaWQsCisgICAgRk9SX0VBQ0hfR1BfUkVHSVNURVIoUkVHSVNU
RVJfSUQpCisjdW5kZWYgUkVHSVNURVJfSUQKKworI2RlZmluZSBSRUdJU1RFUl9BTElBUyhpZCwg
bmFtZSwgYWxpYXMpIGlkID0gYWxpYXMsCisgICAgRk9SX0VBQ0hfUkVHSVNURVJfQUxJQVMoUkVH
SVNURVJfQUxJQVMpCisjdW5kZWYgUkVHSVNURVJfQUxJQVMKKworICAgIEludmFsaWRHUFJSZWcg
PSAtMSwKK30gUmVnaXN0ZXJJRDsKKwordHlwZWRlZiBlbnVtIDogaW50OF90IHsKKyNkZWZpbmUg
UkVHSVNURVJfSUQoaWQsIG5hbWUpIGlkLAorICAgIEZPUl9FQUNIX1NQX1JFR0lTVEVSKFJFR0lT
VEVSX0lEKQorI3VuZGVmIFJFR0lTVEVSX0lECisKKyAgICBJbnZhbGlkU1BSZWcgPSAtMSwKK30g
U1BSZWdpc3RlcklEOworCit0eXBlZGVmIGVudW0gOiBpbnQ4X3QgeworI2RlZmluZSBSRUdJU1RF
Ul9JRChpZCwgbmFtZSwgciwgY3MpIGlkLAorICAgIEZPUl9FQUNIX0ZQX1JFR0lTVEVSKFJFR0lT
VEVSX0lEKQorI3VuZGVmIFJFR0lTVEVSX0lECisKKyAgICBJbnZhbGlkRlBSUmVnID0gLTEsCit9
IEZQUmVnaXN0ZXJJRDsKKworfSAvLyBuYW1lc3BhY2UgUklTQ1Y2NFJlZ2lzdGVycworCitjbGFz
cyBSSVNDVjY0QXNzZW1ibGVyIHsKK3B1YmxpYzoKKyAgICB1c2luZyBSZWdpc3RlcklEID0gUklT
Q1Y2NFJlZ2lzdGVyczo6UmVnaXN0ZXJJRDsKKyAgICB1c2luZyBTUFJlZ2lzdGVySUQgPSBSSVND
VjY0UmVnaXN0ZXJzOjpTUFJlZ2lzdGVySUQ7CisgICAgdXNpbmcgRlBSZWdpc3RlcklEID0gUklT
Q1Y2NFJlZ2lzdGVyczo6RlBSZWdpc3RlcklEOworCisgICAgc3RhdGljIGNvbnN0ZXhwciBSZWdp
c3RlcklEIGZpcnN0UmVnaXN0ZXIoKSB7IHJldHVybiBSSVNDVjY0UmVnaXN0ZXJzOjp4MTsgfQor
ICAgIHN0YXRpYyBjb25zdGV4cHIgUmVnaXN0ZXJJRCBsYXN0UmVnaXN0ZXIoKSB7IHJldHVybiBS
SVNDVjY0UmVnaXN0ZXJzOjp4MzE7IH0KKyAgICBzdGF0aWMgY29uc3RleHByIHVuc2lnbmVkIG51
bWJlck9mUmVnaXN0ZXJzKCkgeyByZXR1cm4gbGFzdFJlZ2lzdGVyKCkgLSBmaXJzdFJlZ2lzdGVy
KCkgKyAxOyB9CisKKyAgICBzdGF0aWMgY29uc3RleHByIFNQUmVnaXN0ZXJJRCBmaXJzdFNQUmVn
aXN0ZXIoKSB7IHJldHVybiBSSVNDVjY0UmVnaXN0ZXJzOjp6ZXJvOyB9CisgICAgc3RhdGljIGNv
bnN0ZXhwciBTUFJlZ2lzdGVySUQgbGFzdFNQUmVnaXN0ZXIoKSB7IHJldHVybiBSSVNDVjY0UmVn
aXN0ZXJzOjpwYzsgfQorICAgIHN0YXRpYyBjb25zdGV4cHIgdW5zaWduZWQgbnVtYmVyT2ZTUFJl
Z2lzdGVycygpIHsgcmV0dXJuIGxhc3RTUFJlZ2lzdGVyKCkgLSBmaXJzdFNQUmVnaXN0ZXIoKSAr
IDE7IH0KKworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSZWdpc3RlcklEIGZpcnN0RlBSZWdpc3Rl
cigpIHsgcmV0dXJuIFJJU0NWNjRSZWdpc3RlcnM6OmYwOyB9CisgICAgc3RhdGljIGNvbnN0ZXhw
ciBGUFJlZ2lzdGVySUQgbGFzdEZQUmVnaXN0ZXIoKSB7IHJldHVybiBSSVNDVjY0UmVnaXN0ZXJz
OjpmMzE7IH0KKyAgICBzdGF0aWMgY29uc3RleHByIHVuc2lnbmVkIG51bWJlck9mRlBSZWdpc3Rl
cnMoKSB7IHJldHVybiBsYXN0RlBSZWdpc3RlcigpIC0gZmlyc3RGUFJlZ2lzdGVyKCkgKyAxOyB9
CisKKyAgICBzdGF0aWMgY29uc3QgY2hhciogZ3ByTmFtZShSZWdpc3RlcklEIGlkKQorICAgIHsK
KyAgICAgICAgQVNTRVJUKGlkID49IGZpcnN0UmVnaXN0ZXIoKSAmJiBpZCA8PSBsYXN0UmVnaXN0
ZXIoKSk7CisgICAgICAgIHN0YXRpYyBjb25zdCBjaGFyKiBjb25zdCBuYW1lRm9yUmVnaXN0ZXJb
bnVtYmVyT2ZSZWdpc3RlcnMoKV0gPSB7CisjZGVmaW5lIFJFR0lTVEVSX05BTUUoaWQsIG5hbWUs
IHIsIGNzKSBuYW1lLAorICAgICAgICAgICAgRk9SX0VBQ0hfR1BfUkVHSVNURVIoUkVHSVNURVJf
TkFNRSkKKyN1bmRlZiBSRUdJU1RFUl9OQU1FCisgICAgICAgIH07CisgICAgICAgIHJldHVybiBu
YW1lRm9yUmVnaXN0ZXJbaWRdOworICAgIH0KKworICAgIHN0YXRpYyBjb25zdCBjaGFyKiBzcHJO
YW1lKFNQUmVnaXN0ZXJJRCBpZCkKKyAgICB7CisgICAgICAgIEFTU0VSVChpZCA+PSBmaXJzdFNQ
UmVnaXN0ZXIoKSAmJiBpZCA8PSBsYXN0U1BSZWdpc3RlcigpKTsKKyAgICAgICAgc3RhdGljIGNv
bnN0IGNoYXIqIGNvbnN0IG5hbWVGb3JSZWdpc3RlcltudW1iZXJPZlNQUmVnaXN0ZXJzKCldID0g
eworI2RlZmluZSBSRUdJU1RFUl9OQU1FKGlkLCBuYW1lKSBuYW1lLAorICAgICAgICAgICAgRk9S
X0VBQ0hfU1BfUkVHSVNURVIoUkVHSVNURVJfTkFNRSkKKyN1bmRlZiBSRUdJU1RFUl9OQU1FCisg
ICAgICAgIH07CisgICAgICAgIHJldHVybiBuYW1lRm9yUmVnaXN0ZXJbaWRdOworICAgIH0KKwor
ICAgIHN0YXRpYyBjb25zdCBjaGFyKiBmcHJOYW1lKEZQUmVnaXN0ZXJJRCBpZCkKKyAgICB7Cisg
ICAgICAgIEFTU0VSVChpZCA+PSBmaXJzdEZQUmVnaXN0ZXIoKSAmJiBpZCA8PSBsYXN0RlBSZWdp
c3RlcigpKTsKKyAgICAgICAgc3RhdGljIGNvbnN0IGNoYXIqIGNvbnN0IG5hbWVGb3JSZWdpc3Rl
cltudW1iZXJPZkZQUmVnaXN0ZXJzKCldID0geworI2RlZmluZSBSRUdJU1RFUl9OQU1FKGlkLCBu
YW1lLCByLCBjcykgbmFtZSwKKyAgICAgICAgICAgIEZPUl9FQUNIX0ZQX1JFR0lTVEVSKFJFR0lT
VEVSX05BTUUpCisjdW5kZWYgUkVHSVNURVJfTkFNRQorICAgICAgICB9OworICAgICAgICByZXR1
cm4gbmFtZUZvclJlZ2lzdGVyW2lkXTsKKyAgICB9CisKKyAgICBSSVNDVjY0QXNzZW1ibGVyKCkg
eyB9CisKKyAgICBBc3NlbWJsZXJCdWZmZXImIGJ1ZmZlcigpIHsgcmV0dXJuIG1fYnVmZmVyOyB9
CisKKyAgICB0eXBlZGVmIGVudW0geworICAgICAgICBDb25kaXRpb25FUSwKKyAgICAgICAgQ29u
ZGl0aW9uTkUsCisgICAgICAgIENvbmRpdGlvbkhTLCBDb25kaXRpb25DUyA9IENvbmRpdGlvbkhT
LAorICAgICAgICBDb25kaXRpb25MTywgQ29uZGl0aW9uQ0MgPSBDb25kaXRpb25MTywKKyAgICAg
ICAgQ29uZGl0aW9uTUksCisgICAgICAgIENvbmRpdGlvblBMLAorICAgICAgICBDb25kaXRpb25W
UywKKyAgICAgICAgQ29uZGl0aW9uVkMsCisgICAgICAgIENvbmRpdGlvbkhJLAorICAgICAgICBD
b25kaXRpb25MUywKKyAgICAgICAgQ29uZGl0aW9uR0UsCisgICAgICAgIENvbmRpdGlvbkxULAor
ICAgICAgICBDb25kaXRpb25HVCwKKyAgICAgICAgQ29uZGl0aW9uTEUsCisgICAgICAgIENvbmRp
dGlvbkFMLAorICAgICAgICBDb25kaXRpb25JbnZhbGlkCisgICAgfSBDb25kaXRpb247CisKKyAg
ICBzdGF0aWMgQ29uZGl0aW9uIGludmVydChDb25kaXRpb24gY29uZCkKKyAgICB7CisgICAgICAg
IHJldHVybiBzdGF0aWNfY2FzdDxDb25kaXRpb24+KGNvbmQgXiAxKTsKKyAgICB9CisKKyAgICBz
dGF0aWMgdm9pZCogZ2V0UmVsb2NhdGVkQWRkcmVzcyh2b2lkKiBjb2RlLCBBc3NlbWJsZXJMYWJl
bCBsYWJlbCkKKyAgICB7CisgICAgICAgIEFTU0VSVChsYWJlbC5pc1NldCgpKTsKKyAgICAgICAg
cmV0dXJuIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KHJlaW50ZXJwcmV0X2Nhc3Q8cHRyZGlmZl90
Pihjb2RlKSArIGxhYmVsLm9mZnNldCgpKTsKKyAgICB9CisKKyAgICBzaXplX3QgY29kZVNpemUo
KSBjb25zdCB7IHJldHVybiBtX2J1ZmZlci5jb2RlU2l6ZSgpOyB9CisKKyAgICBzdGF0aWMgdW5z
aWduZWQgZ2V0Q2FsbFJldHVybk9mZnNldChBc3NlbWJsZXJMYWJlbCkgeyByZXR1cm4gMDsgfQor
CisgICAgQXNzZW1ibGVyTGFiZWwgbGFiZWxJZ25vcmluZ1dhdGNocG9pbnRzKCkgeyByZXR1cm4g
eyB9OyB9CisgICAgQXNzZW1ibGVyTGFiZWwgbGFiZWxGb3JXYXRjaHBvaW50KCkgeyByZXR1cm4g
eyB9OyB9CisgICAgQXNzZW1ibGVyTGFiZWwgbGFiZWwoKSB7IHJldHVybiB7IH07IH0KKworICAg
IHN0YXRpYyB2b2lkIGxpbmtKdW1wKHZvaWQqLCBBc3NlbWJsZXJMYWJlbCwgdm9pZCopIHsgfQor
CisgICAgc3RhdGljIHZvaWQgbGlua0p1bXAoQXNzZW1ibGVyTGFiZWwsIEFzc2VtYmxlckxhYmVs
KSB7IH0KKworICAgIHN0YXRpYyB2b2lkIGxpbmtDYWxsKHZvaWQqLCBBc3NlbWJsZXJMYWJlbCwg
dm9pZCopIHsgfQorCisgICAgc3RhdGljIHZvaWQgbGlua1BvaW50ZXIodm9pZCosIEFzc2VtYmxl
ckxhYmVsLCB2b2lkKikgeyB9CisKKyAgICBzdGF0aWMgcHRyZGlmZl90IG1heEp1bXBSZXBsYWNl
bWVudFNpemUoKQorICAgIHsKKyAgICAgICAgcmV0dXJuIDQ7CisgICAgfQorCisgICAgc3RhdGlj
IGNvbnN0ZXhwciBwdHJkaWZmX3QgcGF0Y2hhYmxlSnVtcFNpemUoKQorICAgIHsKKyAgICAgICAg
cmV0dXJuIDQ7CisgICAgfQorCisgICAgc3RhdGljIHZvaWQgcmVwYXRjaFBvaW50ZXIodm9pZCos
IHZvaWQqKSB7IH0KKworICAgIHN0YXRpYyB2b2lkIHJlbGlua0p1bXAodm9pZCosIHZvaWQqKSB7
IH0KKyAgICBzdGF0aWMgdm9pZCByZWxpbmtKdW1wVG9Ob3Aodm9pZCopIHsgfQorICAgIHN0YXRp
YyB2b2lkIHJlbGlua0NhbGwodm9pZCosIHZvaWQqKSB7IH0KKworICAgIHVuc2lnbmVkIGRlYnVn
T2Zmc2V0KCkgeyByZXR1cm4gbV9idWZmZXIuZGVidWdPZmZzZXQoKTsgfQorCisgICAgc3RhdGlj
IHZvaWQgY2FjaGVGbHVzaCh2b2lkKiwgc2l6ZV90KSB7IH0KKworICAgIHVzaW5nIENvcHlGdW5j
dGlvbiA9IHZvaWQqKCYpKHZvaWQqLCBjb25zdCB2b2lkKiwgc2l6ZV90KTsKKyAgICB0ZW1wbGF0
ZSA8Q29weUZ1bmN0aW9uIGNvcHk+CisgICAgc3RhdGljIHZvaWQgZmlsbE5vcHModm9pZCosIHNp
emVfdCkgeyB9CisKKyAgICBBc3NlbWJsZXJCdWZmZXIgbV9idWZmZXI7Cit9OworCit9IC8vIG5h
bWVzcGFjZSBKU0MKKworI2VuZGlmIC8vIEVOQUJMRShBU1NFTUJMRVIpICYmIENQVShSSVNDVjY0
KQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9SSVNDVjY0UmVn
aXN0ZXJzLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL1JJU0NWNjRSZWdpc3Rl
cnMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi4yYTNlYzVkOTRiMjcyZWU5OTY2MzNhNzY3Mzg0MDgyZWNkYzBjZGQw
Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9SSVND
VjY0UmVnaXN0ZXJzLmgKQEAgLTAsMCArMSwxMTIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIw
MjEgSWdhbGlhIFMuTC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1l
dDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJ
TkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9G
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICog
UFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8K
KworI3ByYWdtYSBvbmNlCisKKy8vIE1vcmUgb24gdGhlIFJJU0MtViBjYWxsaW5nIGNvbnZlbnRp
b24gYW5kIHJlZ2lzdGVyczoKKy8vIGh0dHBzOi8vcmlzY3Yub3JnL3dwLWNvbnRlbnQvdXBsb2Fk
cy8yMDE1LzAxL3Jpc2N2LWNhbGxpbmcucGRmCisvLyBodHRwczovL3Jpc2N2Lm9yZy93cC1jb250
ZW50L3VwbG9hZHMvMjAxNy8wNS9yaXNjdi1zcGVjLXYyLjIucGRmIChDaGFwdGVyIDIwKQorCisj
ZGVmaW5lIFJlZ2lzdGVyTmFtZXMgUklTQ1Y2NFJlZ2lzdGVycworCisvLyBUaGUgeDAgcmVnaXN0
ZXIgKGhhcmQtd2lyZWQgemVybykgaXMgb21pdHRlZCBmcm9tIHRoZSBHUCBsaXN0IGJ1dCBpbmNs
dWRlZCBhcyBhIFNQIHJlZ2lzdGVyLgorI2RlZmluZSBGT1JfRUFDSF9HUF9SRUdJU1RFUihtYWNy
bykgICAgICAgICBcCisgICAgbWFjcm8oeDEsICJ4MSIsIDEsIDApICAgICAgICAgICAgICAgICAg
IFwKKyAgICBtYWNybyh4MiwgIngyIiwgMSwgMSkgICAgICAgICAgICAgICAgICAgXAorICAgIG1h
Y3JvKHgzLCAieDMiLCAxLCAwKSAgICAgICAgICAgICAgICAgICBcCisgICAgbWFjcm8oeDQsICJ4
NCIsIDEsIDApICAgICAgICAgICAgICAgICAgIFwKKyAgICBtYWNybyh4NSwgIng1IiwgMCwgMCkg
ICAgICAgICAgICAgICAgICAgXAorICAgIG1hY3JvKHg2LCAieDYiLCAwLCAwKSAgICAgICAgICAg
ICAgICAgICBcCisgICAgbWFjcm8oeDcsICJ4NyIsIDAsIDApICAgICAgICAgICAgICAgICAgIFwK
KyAgICBtYWNybyh4OCwgIng4IiwgMSwgMSkgICAgICAgICAgICAgICAgICAgXAorICAgIG1hY3Jv
KHg5LCAieDkiLCAwLCAxKSAgICAgICAgICAgICAgICAgICBcCisgICAgbWFjcm8oeDEwLCAieDEw
IiwgMCwgMCkgICAgICAgICAgICAgICAgIFwKKyAgICBtYWNybyh4MTEsICJ4MTEiLCAwLCAwKSAg
ICAgICAgICAgICAgICAgXAorICAgIG1hY3JvKHgxMiwgIngxMiIsIDAsIDApICAgICAgICAgICAg
ICAgICBcCisgICAgbWFjcm8oeDEzLCAieDEzIiwgMCwgMCkgICAgICAgICAgICAgICAgIFwKKyAg
ICBtYWNybyh4MTQsICJ4MTQiLCAwLCAwKSAgICAgICAgICAgICAgICAgXAorICAgIG1hY3JvKHgx
NSwgIngxNSIsIDAsIDApICAgICAgICAgICAgICAgICBcCisgICAgbWFjcm8oeDE2LCAieDE2Iiwg
MCwgMCkgICAgICAgICAgICAgICAgIFwKKyAgICBtYWNybyh4MTcsICJ4MTciLCAwLCAwKSAgICAg
ICAgICAgICAgICAgXAorICAgIG1hY3JvKHgxOCwgIngxOCIsIDAsIDEpICAgICAgICAgICAgICAg
ICBcCisgICAgbWFjcm8oeDE5LCAieDE5IiwgMCwgMSkgICAgICAgICAgICAgICAgIFwKKyAgICBt
YWNybyh4MjAsICJ4MjAiLCAwLCAxKSAgICAgICAgICAgICAgICAgXAorICAgIG1hY3JvKHgyMSwg
IngyMSIsIDAsIDEpICAgICAgICAgICAgICAgICBcCisgICAgbWFjcm8oeDIyLCAieDIyIiwgMCwg
MSkgICAgICAgICAgICAgICAgIFwKKyAgICBtYWNybyh4MjMsICJ4MjMiLCAwLCAxKSAgICAgICAg
ICAgICAgICAgXAorICAgIG1hY3JvKHgyNCwgIngyNCIsIDAsIDEpICAgICAgICAgICAgICAgICBc
CisgICAgbWFjcm8oeDI1LCAieDI1IiwgMCwgMSkgICAgICAgICAgICAgICAgIFwKKyAgICBtYWNy
byh4MjYsICJ4MjYiLCAwLCAxKSAgICAgICAgICAgICAgICAgXAorICAgIG1hY3JvKHgyNywgIngy
NyIsIDAsIDEpICAgICAgICAgICAgICAgICBcCisgICAgbWFjcm8oeDI4LCAieDI4IiwgMCwgMCkg
ICAgICAgICAgICAgICAgIFwKKyAgICBtYWNybyh4MjksICJ4MjkiLCAwLCAwKSAgICAgICAgICAg
ICAgICAgXAorICAgIC8qIE1hY3JvQXNzZW1ibGVyIHNjcmF0Y2ggcmVnaXN0ZXJzICovICBcCisg
ICAgbWFjcm8oeDMwLCAieDMwIiwgMCwgMCkgICAgICAgICAgICAgICAgIFwKKyAgICBtYWNybyh4
MzEsICJ4MzEiLCAwLCAwKQorCisjZGVmaW5lIEZPUl9FQUNIX1JFR0lTVEVSX0FMSUFTKG1hY3Jv
KSBcCisgICAgbWFjcm8ocmEsICJyYSIsIHgxKSAgICAgICAgICAgICAgICBcCisgICAgbWFjcm8o
c3AsICJzcCIsIHgxKSAgICAgICAgICAgICAgICBcCisgICAgbWFjcm8oZ3AsICJncCIsIHgxKSAg
ICAgICAgICAgICAgICBcCisgICAgbWFjcm8odHAsICJ0cCIsIHgxKSAgICAgICAgICAgICAgICBc
CisgICAgbWFjcm8oZnAsICJmcCIsIHgxKQorCisjZGVmaW5lIEZPUl9FQUNIX1NQX1JFR0lTVEVS
KG1hY3JvKSBcCisgICAgbWFjcm8oemVybywgInplcm8iKSAgICAgICAgICAgICBcCisgICAgbWFj
cm8ocGMsICJwYyIpCisKKyNkZWZpbmUgRk9SX0VBQ0hfRlBfUkVHSVNURVIobWFjcm8pIFwKKyAg
ICBtYWNybyhmMCwgImYwIiwgMCwgMCkgICAgICAgICAgIFwKKyAgICBtYWNybyhmMSwgImYxIiwg
MCwgMCkgICAgICAgICAgIFwKKyAgICBtYWNybyhmMiwgImYyIiwgMCwgMCkgICAgICAgICAgIFwK
KyAgICBtYWNybyhmMywgImYzIiwgMCwgMCkgICAgICAgICAgIFwKKyAgICBtYWNybyhmNCwgImY0
IiwgMCwgMCkgICAgICAgICAgIFwKKyAgICBtYWNybyhmNSwgImY1IiwgMCwgMCkgICAgICAgICAg
IFwKKyAgICBtYWNybyhmNiwgImY2IiwgMCwgMCkgICAgICAgICAgIFwKKyAgICBtYWNybyhmNywg
ImY3IiwgMCwgMCkgICAgICAgICAgIFwKKyAgICBtYWNybyhmOCwgImY4IiwgMCwgMSkgICAgICAg
ICAgIFwKKyAgICBtYWNybyhmOSwgImY5IiwgMCwgMSkgICAgICAgICAgIFwKKyAgICBtYWNybyhm
MTAsICJmMTAiLCAwLCAwKSAgICAgICAgIFwKKyAgICBtYWNybyhmMTEsICJmMTEiLCAwLCAwKSAg
ICAgICAgIFwKKyAgICBtYWNybyhmMTIsICJmMTIiLCAwLCAwKSAgICAgICAgIFwKKyAgICBtYWNy
byhmMTMsICJmMTMiLCAwLCAwKSAgICAgICAgIFwKKyAgICBtYWNybyhmMTQsICJmMTQiLCAwLCAw
KSAgICAgICAgIFwKKyAgICBtYWNybyhmMTUsICJmMTUiLCAwLCAwKSAgICAgICAgIFwKKyAgICBt
YWNybyhmMTYsICJmMTYiLCAwLCAwKSAgICAgICAgIFwKKyAgICBtYWNybyhmMTcsICJmMTciLCAw
LCAwKSAgICAgICAgIFwKKyAgICBtYWNybyhmMTgsICJmMTgiLCAwLCAxKSAgICAgICAgIFwKKyAg
ICBtYWNybyhmMTksICJmMTkiLCAwLCAxKSAgICAgICAgIFwKKyAgICBtYWNybyhmMjAsICJmMjAi
LCAwLCAxKSAgICAgICAgIFwKKyAgICBtYWNybyhmMjEsICJmMjEiLCAwLCAxKSAgICAgICAgIFwK
KyAgICBtYWNybyhmMjIsICJmMjIiLCAwLCAxKSAgICAgICAgIFwKKyAgICBtYWNybyhmMjMsICJm
MjMiLCAwLCAxKSAgICAgICAgIFwKKyAgICBtYWNybyhmMjQsICJmMjQiLCAwLCAxKSAgICAgICAg
IFwKKyAgICBtYWNybyhmMjUsICJmMjUiLCAwLCAxKSAgICAgICAgIFwKKyAgICBtYWNybyhmMjYs
ICJmMjYiLCAwLCAxKSAgICAgICAgIFwKKyAgICBtYWNybyhmMjcsICJmMjciLCAwLCAxKSAgICAg
ICAgIFwKKyAgICBtYWNybyhmMjgsICJmMjgiLCAwLCAwKSAgICAgICAgIFwKKyAgICBtYWNybyhm
MjksICJmMjkiLCAwLCAwKSAgICAgICAgIFwKKyAgICBtYWNybyhmMzAsICJmMzAiLCAwLCAwKSAg
ICAgICAgIFwKKyAgICBtYWNybyhmMzEsICJmMzEiLCAwLCAwKQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL2ppdC9GUFJJbmZvLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0
L0ZQUkluZm8uaAppbmRleCBmNzk5OTAwMTc2NzA3ZjU5N2Q0NTJiM2RiNDQ3MTNjYWYzNWY5M2M3
Li5mNTA3MzkyZWQzNTVhM2ExM2I0Nzc0YmVkYTc3NmM5MWMzZTM3MWQxIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0ZQUkluZm8uaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvaml0L0ZQUkluZm8uaApAQCAtMzI5LDYgKzMyOSwxMDQgQEAgcHVibGljOgogCiAjZW5k
aWYgLy8gQ1BVKE1JUFMpCiAKKyNpZiBDUFUoUklTQ1Y2NCkKKworY2xhc3MgRlBSSW5mbyB7Citw
dWJsaWM6CisgICAgdHlwZWRlZiBGUFJSZWcgUmVnaXN0ZXJUeXBlOworICAgIHN0YXRpYyBjb25z
dGV4cHIgdW5zaWduZWQgbnVtYmVyT2ZSZWdpc3RlcnMgPSAyMDsKKyAgICBzdGF0aWMgY29uc3Rl
eHByIHVuc2lnbmVkIG51bWJlck9mQXJndW1lbnRSZWdpc3RlcnMgPSA4OworCisgICAgc3RhdGlj
IGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdUMCA9IFJJU0NWNjRSZWdpc3RlcnM6OmYwOworICAgIHN0
YXRpYyBjb25zdGV4cHIgRlBSUmVnIGZwUmVnVDEgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMTsKKyAg
ICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ1QyID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjI7
CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdUMyA9IFJJU0NWNjRSZWdpc3RlcnM6
OmYzOworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGZwUmVnVDQgPSBSSVNDVjY0UmVnaXN0
ZXJzOjpmNDsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ1Q1ID0gUklTQ1Y2NFJl
Z2lzdGVyczo6ZjU7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdUNiA9IFJJU0NW
NjRSZWdpc3RlcnM6OmY2OworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGZwUmVnVDcgPSBS
SVNDVjY0UmVnaXN0ZXJzOjpmNzsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ1Q4
ID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjEwOworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGZw
UmVnVDkgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMTE7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJS
ZWcgZnBSZWdUMTAgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMTI7CisgICAgc3RhdGljIGNvbnN0ZXhw
ciBGUFJSZWcgZnBSZWdUMTEgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMTM7CisgICAgc3RhdGljIGNv
bnN0ZXhwciBGUFJSZWcgZnBSZWdUMTIgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMTQ7CisgICAgc3Rh
dGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdUMTMgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMTU7Cisg
ICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdUMTQgPSBSSVNDVjY0UmVnaXN0ZXJzOjpm
MTY7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdUMTUgPSBSSVNDVjY0UmVnaXN0
ZXJzOjpmMTc7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdUMTYgPSBSSVNDVjY0
UmVnaXN0ZXJzOjpmMjg7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdUMTcgPSBS
SVNDVjY0UmVnaXN0ZXJzOjpmMjk7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdU
MTggPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMzA7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcg
ZnBSZWdUMTkgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMzE7CisKKyAgICBzdGF0aWMgY29uc3RleHBy
IEZQUlJlZyBmcFJlZ0NTMCA9IFJJU0NWNjRSZWdpc3RlcnM6OmY4OworICAgIHN0YXRpYyBjb25z
dGV4cHIgRlBSUmVnIGZwUmVnQ1MxID0gUklTQ1Y2NFJlZ2lzdGVyczo6Zjk7CisgICAgc3RhdGlj
IGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdDUzIgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMTg7CisgICAg
c3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdDUzMgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMTk7
CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdDUzQgPSBSSVNDVjY0UmVnaXN0ZXJz
OjpmMjA7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdDUzUgPSBSSVNDVjY0UmVn
aXN0ZXJzOjpmMjE7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdDUzYgPSBSSVND
VjY0UmVnaXN0ZXJzOjpmMjI7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdDUzcg
PSBSSVNDVjY0UmVnaXN0ZXJzOjpmMjM7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBS
ZWdDUzggPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMjQ7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJS
ZWcgZnBSZWdDUzkgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMjU7CisgICAgc3RhdGljIGNvbnN0ZXhw
ciBGUFJSZWcgZnBSZWdDUzEwID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjI2OworICAgIHN0YXRpYyBj
b25zdGV4cHIgRlBSUmVnIGZwUmVnQ1MxMSA9IFJJU0NWNjRSZWdpc3RlcnM6OmYyNzsKKworICAg
IHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGFyZ3VtZW50RlBSMCA9IFJJU0NWNjRSZWdpc3RlcnM6
OmYxMDsgLy8gZnBSZWdUOAorICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGFyZ3VtZW50RlBS
MSA9IFJJU0NWNjRSZWdpc3RlcnM6OmYxMTsgLy8gZnBSZWdUOQorICAgIHN0YXRpYyBjb25zdGV4
cHIgRlBSUmVnIGFyZ3VtZW50RlBSMiA9IFJJU0NWNjRSZWdpc3RlcnM6OmYxMjsgLy8gZnBSZWdU
MTAKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBhcmd1bWVudEZQUjMgPSBSSVNDVjY0UmVn
aXN0ZXJzOjpmMTM7IC8vIGZwUmVnVDExCisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgYXJn
dW1lbnRGUFI0ID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjE0OyAvLyBmcFJlZ1QxMgorICAgIHN0YXRp
YyBjb25zdGV4cHIgRlBSUmVnIGFyZ3VtZW50RlBSNSA9IFJJU0NWNjRSZWdpc3RlcnM6OmYxNTsg
Ly8gZnBSZWdUMTMKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBhcmd1bWVudEZQUjYgPSBS
SVNDVjY0UmVnaXN0ZXJzOjpmMTY7IC8vIGZwUmVnVDE0CisgICAgc3RhdGljIGNvbnN0ZXhwciBG
UFJSZWcgYXJndW1lbnRGUFI3ID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjE3OyAvLyBmcFJlZ1QxNQor
CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgcmV0dXJuVmFsdWVGUFIgPSBSSVNDVjY0UmVn
aXN0ZXJzOjpmMTA7IC8vIGZwUmVnVDgKKworICAgIHN0YXRpYyBGUFJSZWcgdG9SZWdpc3Rlcih1
bnNpZ25lZCBpbmRleCkKKyAgICB7CisgICAgICAgIEFTU0VSVChpbmRleCA8IG51bWJlck9mUmVn
aXN0ZXJzKTsKKyAgICAgICAgc3RhdGljIGNvbnN0IEZQUlJlZyByZWdpc3RlckZvckluZGV4W251
bWJlck9mUmVnaXN0ZXJzXSA9IHsKKyAgICAgICAgICAgIGZwUmVnVDAsIGZwUmVnVDEsIGZwUmVn
VDIsIGZwUmVnVDMsIGZwUmVnVDQsIGZwUmVnVDUsIGZwUmVnVDYsIGZwUmVnVDcsCisgICAgICAg
ICAgICBmcFJlZ1Q4LCBmcFJlZ1Q5LCBmcFJlZ1QxMCwgZnBSZWdUMTEsIGZwUmVnVDEyLCBmcFJl
Z1QxMywgZnBSZWdUMTQsIGZwUmVnVDE1LAorICAgICAgICAgICAgZnBSZWdUMTYsIGZwUmVnVDE3
LCBmcFJlZ1QxOCwgZnBSZWdUMTksCisgICAgICAgIH07CisgICAgICAgIHJldHVybiByZWdpc3Rl
ckZvckluZGV4W2luZGV4XTsKKyAgICB9CisKKyAgICBzdGF0aWMgRlBSUmVnIHRvQXJndW1lbnRS
ZWdpc3Rlcih1bnNpZ25lZCBpbmRleCkKKyAgICB7CisgICAgICAgIEFTU0VSVChpbmRleCA8IG51
bWJlck9mQXJndW1lbnRSZWdpc3RlcnMpOworICAgICAgICBzdGF0aWMgY29uc3QgRlBSUmVnIHJl
Z2lzdGVyRm9ySW5kZXhbbnVtYmVyT2ZBcmd1bWVudFJlZ2lzdGVyc10gPSB7CisgICAgICAgICAg
ICBhcmd1bWVudEZQUjAsIGFyZ3VtZW50RlBSMSwgYXJndW1lbnRGUFIyLCBhcmd1bWVudEZQUjMs
CisgICAgICAgICAgICBhcmd1bWVudEZQUjQsIGFyZ3VtZW50RlBSNSwgYXJndW1lbnRGUFI2LCBh
cmd1bWVudEZQUjcsCisgICAgICAgIH07CisgICAgICAgIHJldHVybiByZWdpc3RlckZvckluZGV4
W2luZGV4XTsKKyAgICB9CisKKyAgICBzdGF0aWMgdW5zaWduZWQgdG9JbmRleChGUFJSZWcgcmVn
KQorICAgIHsKKyAgICAgICAgQVNTRVJUKHJlZyAhPSBJbnZhbGlkRlBSUmVnKTsKKyAgICAgICAg
QVNTRVJUKHN0YXRpY19jYXN0PGludD4ocmVnKSA8IDMyKTsKKyAgICAgICAgc3RhdGljIGNvbnN0
IHVuc2lnbmVkIGluZGV4Rm9yUmVnaXN0ZXJbMzJdID0geworICAgICAgICAgICAgMCwgMSwgMiwg
MywgNCwgNSwgNiwgNywKKyAgICAgICAgICAgIEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LCA4
LCA5LCAxMCwgMTEsIDEyLCAxMywKKyAgICAgICAgICAgIDE0LCAxNSwgSW52YWxpZEluZGV4LCBJ
bnZhbGlkSW5kZXgsIEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LCBJbnZhbGlkSW5kZXgsIElu
dmFsaWRJbmRleCwKKyAgICAgICAgICAgIEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LCBJbnZh
bGlkSW5kZXgsIEludmFsaWRJbmRleCwgMTYsIDE3LCAxOCwgMTksCisgICAgICAgIH07CisgICAg
ICAgIHJldHVybiBpbmRleEZvclJlZ2lzdGVyW3JlZ107CisgICAgfQorCisgICAgc3RhdGljIGNv
bnN0IGNoYXIqIGRlYnVnTmFtZShGUFJSZWcgcmVnKQorICAgIHsKKyAgICAgICAgQVNTRVJUKHJl
ZyAhPSBJbnZhbGlkRlBSUmVnKTsKKyAgICAgICAgcmV0dXJuIE1hY3JvQXNzZW1ibGVyOjpmcHJO
YW1lKHJlZyk7CisgICAgfQorCisgICAgc3RhdGljIGNvbnN0ZXhwciB1bnNpZ25lZCBJbnZhbGlk
SW5kZXggPSAweGZmZmZmZmZmOworfTsKKworI2VuZGlmIC8vIENQVShSSVNDVjY0KQorCiAvLyBX
ZSB1c2UgdGhpcyBoYWNrIHRvIGdldCB0aGUgRlBSSW5mbyBmcm9tIHRoZSBGUFJSZWcgdHlwZSBp
biB0ZW1wbGF0ZXMgYmVjYXVzZSBvdXIgY29kZSBpcyBiYWQgYW5kIHdlIHNob3VsZCBmZWVsIGJh
ZC4uCiBjb25zdGV4cHIgRlBSSW5mbyB0b0luZm9Gcm9tUmVnKEZQUlJlZykgeyByZXR1cm4gRlBS
SW5mbygpOyB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvR1BSSW5m
by5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9HUFJJbmZvLmgKaW5kZXggMDY3YWJmZjFk
NmFkMjAwNzU0NTE4MDA3N2IwYzRhNTVjNzc3MjI2Ni4uNWZmNjI0NzQxYWI3MGU4YzA0MzViZGY5
ZDI1YjE5MTQ2MDM4MWQ5ZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9H
UFJJbmZvLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9HUFJJbmZvLmgKQEAgLTc5
OCw2ICs3OTgsMTEzIEBAIHB1YmxpYzoKIAogI2VuZGlmIC8vIENQVShNSVBTKQogCisjaWYgQ1BV
KFJJU0NWNjQpCisKKyNkZWZpbmUgTlVNQkVSX09GX0FSR1VNRU5UX1JFR0lTVEVSUyA4dQorI2Rl
ZmluZSBOVU1CRVJfT0ZfQ0FMTEVFX1NBVkVTX1JFR0lTVEVSUyAyM3UKKworY2xhc3MgR1BSSW5m
byB7CitwdWJsaWM6CisgICAgdHlwZWRlZiBHUFJSZWcgUmVnaXN0ZXJUeXBlOworICAgIHN0YXRp
YyBjb25zdGV4cHIgdW5zaWduZWQgbnVtYmVyT2ZSZWdpc3RlcnMgPSAxMzsKKyAgICBzdGF0aWMg
Y29uc3RleHByIHVuc2lnbmVkIG51bWJlck9mQXJndW1lbnRSZWdpc3RlcnMgPSA4OworCisgICAg
c3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgY2FsbEZyYW1lUmVnaXN0ZXIgPSBSSVNDVjY0UmVnaXN0
ZXJzOjpmcDsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBudW1iZXJUYWdSZWdpc3RlciA9
IFJJU0NWNjRSZWdpc3RlcnM6OngyNTsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBub3RD
ZWxsTWFza1JlZ2lzdGVyID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDI2OworCisgICAgc3RhdGljIGNv
bnN0ZXhwciBHUFJSZWcgcmVnVDAgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MTA7CisgICAgc3RhdGlj
IGNvbnN0ZXhwciBHUFJSZWcgcmVnVDEgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MTE7CisgICAgc3Rh
dGljIGNvbnN0ZXhwciBHUFJSZWcgcmVnVDIgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MTI7CisgICAg
c3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgcmVnVDMgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MTM7Cisg
ICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgcmVnVDQgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MTQ7
CisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgcmVnVDUgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4
MTU7CisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgcmVnVDYgPSBSSVNDVjY0UmVnaXN0ZXJz
Ojp4MTY7CisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgcmVnVDcgPSBSSVNDVjY0UmVnaXN0
ZXJzOjp4MTc7CisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgcmVnVDggPSBSSVNDVjY0UmVn
aXN0ZXJzOjp4NTsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyByZWdUOSA9IFJJU0NWNjRS
ZWdpc3RlcnM6Ong2OworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ1QxMCA9IFJJU0NW
NjRSZWdpc3RlcnM6Ong3OworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ1QxMSA9IFJJ
U0NWNjRSZWdpc3RlcnM6OngyODsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyByZWdUMTIg
PSBSSVNDVjY0UmVnaXN0ZXJzOjp4Mjk7CisKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBy
ZWdDUzAgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4OTsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJl
ZyByZWdDUzEgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MTg7CisgICAgc3RhdGljIGNvbnN0ZXhwciBH
UFJSZWcgcmVnQ1MyID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDE5OworICAgIHN0YXRpYyBjb25zdGV4
cHIgR1BSUmVnIHJlZ0NTMyA9IFJJU0NWNjRSZWdpc3RlcnM6OngyMDsKKyAgICBzdGF0aWMgY29u
c3RleHByIEdQUlJlZyByZWdDUzQgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MjE7CisgICAgc3RhdGlj
IGNvbnN0ZXhwciBHUFJSZWcgcmVnQ1M1ID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDIyOworICAgIHN0
YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ0NTNiA9IFJJU0NWNjRSZWdpc3RlcnM6OngyMzsKKyAg
ICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyByZWdDUzcgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MjQ7
CisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgcmVnQ1M4ID0gUklTQ1Y2NFJlZ2lzdGVyczo6
eDI1OyAvLyBudW1iZXJUYWcKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyByZWdDUzkgPSBS
SVNDVjY0UmVnaXN0ZXJzOjp4MjY7IC8vIG5vdENlbGxNYXNrCisgICAgc3RhdGljIGNvbnN0ZXhw
ciBHUFJSZWcgcmVnQ1MxMCA9IFJJU0NWNjRSZWdpc3RlcnM6OngyNzsKKworICAgIHN0YXRpYyBj
b25zdGV4cHIgR1BSUmVnIGFyZ3VtZW50R1BSMCA9IFJJU0NWNjRSZWdpc3RlcnM6OngxMDsgLy8g
cmVnVDAKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBhcmd1bWVudEdQUjEgPSBSSVNDVjY0
UmVnaXN0ZXJzOjp4MTE7IC8vIHJlZ1QxCisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgYXJn
dW1lbnRHUFIyID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDEyOyAvLyByZWdUMgorICAgIHN0YXRpYyBj
b25zdGV4cHIgR1BSUmVnIGFyZ3VtZW50R1BSMyA9IFJJU0NWNjRSZWdpc3RlcnM6OngxMzsgLy8g
cmVnVDMKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBhcmd1bWVudEdQUjQgPSBSSVNDVjY0
UmVnaXN0ZXJzOjp4MTQ7IC8vIHJlZ1Q0CisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgYXJn
dW1lbnRHUFI1ID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDE1OyAvLyByZWdUNQorICAgIHN0YXRpYyBj
b25zdGV4cHIgR1BSUmVnIGFyZ3VtZW50R1BSNiA9IFJJU0NWNjRSZWdpc3RlcnM6OngxNjsgLy8g
cmVnVDYKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBhcmd1bWVudEdQUjcgPSBSSVNDVjY0
UmVnaXN0ZXJzOjp4MTc7IC8vIHJlZ1Q3CisKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBu
b25BcmdHUFIwID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDU7IC8vIHJlZ1Q4CisgICAgc3RhdGljIGNv
bnN0ZXhwciBHUFJSZWcgbm9uQXJnR1BSMSA9IFJJU0NWNjRSZWdpc3RlcnM6Ong2OyAvLyByZWdU
OQorCisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgcmV0dXJuVmFsdWVHUFIgPSBSSVNDVjY0
UmVnaXN0ZXJzOjp4MTA7IC8vIHJlZ1QwCisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgcmV0
dXJuVmFsdWVHUFIyID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDExOyAvLyByZWdUMQorCisgICAgc3Rh
dGljIGNvbnN0ZXhwciBHUFJSZWcgbm9uUHJlc2VydmVkTm9uUmV0dXJuR1BSID0gUklTQ1Y2NFJl
Z2lzdGVyczo6eDEyOyAvLyByZWdUMgorICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIG5vblBy
ZXNlcnZlZE5vbkFyZ3VtZW50R1BSMCA9IFJJU0NWNjRSZWdpc3RlcnM6Ong1OyAvLyByZWdUOAor
ICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIG5vblByZXNlcnZlZE5vbkFyZ3VtZW50R1BSMSA9
IFJJU0NWNjRSZWdpc3RlcnM6Ong2OyAvLyByZWdUOQorCisgICAgc3RhdGljIGNvbnN0ZXhwciBH
UFJSZWcgd2FzbVNjcmF0Y2hHUFIwID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDY7IC8vIHJlZ1Q5Cisg
ICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgd2FzbVNjcmF0Y2hHUFIxID0gUklTQ1Y2NFJlZ2lz
dGVyczo6eDc7IC8vIHJlZ1QxMAorCisgICAgc3RhdGljIEdQUlJlZyB0b1JlZ2lzdGVyKHVuc2ln
bmVkIGluZGV4KQorICAgIHsKKyAgICAgICAgQVNTRVJUKGluZGV4IDwgbnVtYmVyT2ZSZWdpc3Rl
cnMpOworICAgICAgICBzdGF0aWMgY29uc3QgR1BSUmVnIHJlZ2lzdGVyRm9ySW5kZXhbbnVtYmVy
T2ZSZWdpc3RlcnNdID0geworICAgICAgICAgICAgcmVnVDAsIHJlZ1QxLCByZWdUMiwgcmVnVDMs
IHJlZ1Q0LCByZWdUNSwgcmVnVDYsIHJlZ1Q3LAorICAgICAgICAgICAgcmVnVDgsIHJlZ1Q5LCBy
ZWdUMTAsIHJlZ1QxMSwgcmVnVDEyLAorICAgICAgICB9OworICAgICAgICByZXR1cm4gcmVnaXN0
ZXJGb3JJbmRleFtpbmRleF07CisgICAgfQorCisgICAgc3RhdGljIEdQUlJlZyB0b0FyZ3VtZW50
UmVnaXN0ZXIodW5zaWduZWQgaW5kZXgpCisgICAgeworICAgICAgICBBU1NFUlQoaW5kZXggPCBu
dW1iZXJPZkFyZ3VtZW50UmVnaXN0ZXJzKTsKKyAgICAgICAgc3RhdGljIGNvbnN0IEdQUlJlZyBy
ZWdpc3RlckZvckluZGV4W251bWJlck9mQXJndW1lbnRSZWdpc3RlcnNdID0geworICAgICAgICAg
ICAgYXJndW1lbnRHUFIwLCBhcmd1bWVudEdQUjEsIGFyZ3VtZW50R1BSMiwgYXJndW1lbnRHUFIz
LAorICAgICAgICAgICAgYXJndW1lbnRHUFI0LCBhcmd1bWVudEdQUjUsIGFyZ3VtZW50R1BSNiwg
YXJndW1lbnRHUFI3LAorICAgICAgICB9OworICAgICAgICByZXR1cm4gcmVnaXN0ZXJGb3JJbmRl
eFtpbmRleF07CisgICAgfQorCisgICAgc3RhdGljIHVuc2lnbmVkIHRvSW5kZXgoR1BSUmVnIHJl
ZykKKyAgICB7CisgICAgICAgIEFTU0VSVChyZWcgIT0gSW52YWxpZEdQUlJlZyk7CisgICAgICAg
IEFTU0VSVChzdGF0aWNfY2FzdDxpbnQ+KHJlZykgPCAzMik7CisgICAgICAgIHN0YXRpYyBjb25z
dCB1bnNpZ25lZCBpbmRleEZvclJlZ2lzdGVyWzMyXSA9IHsKKyAgICAgICAgICAgIEludmFsaWRJ
bmRleCwgSW52YWxpZEluZGV4LCBJbnZhbGlkSW5kZXgsIEludmFsaWRJbmRleCwgSW52YWxpZElu
ZGV4LCA4LCA5LCAxMCwKKyAgICAgICAgICAgIEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LCAw
LCAxLCAyLCAzLCA0LCA1LAorICAgICAgICAgICAgNiwgNywgSW52YWxpZEluZGV4LCBJbnZhbGlk
SW5kZXgsIEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LCBJbnZhbGlkSW5kZXgsIEludmFsaWRJ
bmRleCwKKyAgICAgICAgICAgIEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LCBJbnZhbGlkSW5k
ZXgsIEludmFsaWRJbmRleCwgMTEsIDEyLCBJbnZhbGlkSW5kZXgsIEludmFsaWRJbmRleCwKKyAg
ICAgICAgfTsKKyAgICAgICAgcmV0dXJuIGluZGV4Rm9yUmVnaXN0ZXJbcmVnXTsKKyAgICB9CisK
KyAgICBzdGF0aWMgY29uc3QgY2hhciogZGVidWdOYW1lKEdQUlJlZyByZWcpCisgICAgeworICAg
ICAgICBBU1NFUlQocmVnICE9IEludmFsaWRHUFJSZWcpOworICAgICAgICByZXR1cm4gTWFjcm9B
c3NlbWJsZXI6Omdwck5hbWUocmVnKTsKKyAgICB9CisKKyAgICBzdGF0aWMgY29uc3RleHByIHVu
c2lnbmVkIEludmFsaWRJbmRleCA9IDB4ZmZmZmZmZmY7Cit9OworCisjZW5kaWYgLy8gQ1BVKFJJ
U0NWNjQpCisKIC8vIFRoZSBiYXNlbGluZSBKSVQgdXNlcyAiYWNjdW11bGF0b3IiIHN0eWxlIGV4
ZWN1dGlvbiB3aXRoIHJlZ1QwIChmb3IgNjQtYml0KQogLy8gYW5kIHJlZ1QwICsgcmVnVDEgKGZv
ciAzMi1iaXQpIHNlcnZpbmcgYXMgdGhlIGFjY3VtdWxhdG9yIHJlZ2lzdGVyKHMpIGZvcgogLy8g
cGFzc2luZyByZXN1bHRzIG9mIG9uZSBvcGNvZGUgdG8gdGhlIG5leHQuIEhlbmNlOgpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9SZWdpc3RlclNldC5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvaml0L1JlZ2lzdGVyU2V0LmNwcAppbmRleCBhNzYyNzIyN2JmYjMxOWVj
Yzk2YzQ3NjJjNGMwM2Y0ZTkxN2Q2NTEwLi5jNTI5ZDc0YWZlYzhlYTg2NmMwODY0NjQ5NTRiZjc5
YTEwOGIzZDkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L1JlZ2lzdGVy
U2V0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L1JlZ2lzdGVyU2V0LmNwcApA
QCAtMTU1LDYgKzE1NSwzMCBAQCBSZWdpc3RlclNldCBSZWdpc3RlclNldDo6dm1DYWxsZWVTYXZl
UmVnaXN0ZXJzKCkKICNlbGlmIENQVShBUk1fVEhVTUIyKSB8fCBDUFUoTUlQUykKICAgICByZXN1
bHQuc2V0KEdQUkluZm86OnJlZ0NTMCk7CiAgICAgcmVzdWx0LnNldChHUFJJbmZvOjpyZWdDUzEp
OworI2VsaWYgQ1BVKFJJU0NWNjQpCisgICAgcmVzdWx0LnNldChHUFJJbmZvOjpyZWdDUzApOwor
ICAgIHJlc3VsdC5zZXQoR1BSSW5mbzo6cmVnQ1MxKTsKKyAgICByZXN1bHQuc2V0KEdQUkluZm86
OnJlZ0NTMik7CisgICAgcmVzdWx0LnNldChHUFJJbmZvOjpyZWdDUzMpOworICAgIHJlc3VsdC5z
ZXQoR1BSSW5mbzo6cmVnQ1M0KTsKKyAgICByZXN1bHQuc2V0KEdQUkluZm86OnJlZ0NTNSk7Cisg
ICAgcmVzdWx0LnNldChHUFJJbmZvOjpyZWdDUzYpOworICAgIHJlc3VsdC5zZXQoR1BSSW5mbzo6
cmVnQ1M3KTsKKyAgICByZXN1bHQuc2V0KEdQUkluZm86OnJlZ0NTOCk7CisgICAgcmVzdWx0LnNl
dChHUFJJbmZvOjpyZWdDUzkpOworICAgIHJlc3VsdC5zZXQoR1BSSW5mbzo6cmVnQ1MxMCk7Cisg
ICAgcmVzdWx0LnNldChGUFJJbmZvOjpmcFJlZ0NTMCk7CisgICAgcmVzdWx0LnNldChGUFJJbmZv
OjpmcFJlZ0NTMSk7CisgICAgcmVzdWx0LnNldChGUFJJbmZvOjpmcFJlZ0NTMik7CisgICAgcmVz
dWx0LnNldChGUFJJbmZvOjpmcFJlZ0NTMyk7CisgICAgcmVzdWx0LnNldChGUFJJbmZvOjpmcFJl
Z0NTNCk7CisgICAgcmVzdWx0LnNldChGUFJJbmZvOjpmcFJlZ0NTNSk7CisgICAgcmVzdWx0LnNl
dChGUFJJbmZvOjpmcFJlZ0NTNik7CisgICAgcmVzdWx0LnNldChGUFJJbmZvOjpmcFJlZ0NTNyk7
CisgICAgcmVzdWx0LnNldChGUFJJbmZvOjpmcFJlZ0NTOCk7CisgICAgcmVzdWx0LnNldChGUFJJ
bmZvOjpmcFJlZ0NTOSk7CisgICAgcmVzdWx0LnNldChGUFJJbmZvOjpmcFJlZ0NTMTApOworICAg
IHJlc3VsdC5zZXQoRlBSSW5mbzo6ZnBSZWdDUzExKTsKICNlbmRpZgogICAgIHJldHVybiByZXN1
bHQ7CiB9CkBAIC0xOTIsNyArMjE2LDcgQEAgUmVnaXN0ZXJTZXQgUmVnaXN0ZXJTZXQ6OmxsaW50
QmFzZWxpbmVDYWxsZWVTYXZlUmVnaXN0ZXJzKCkKICNlbGlmIENQVShBUk1fVEhVTUIyKQogICAg
IHJlc3VsdC5zZXQoR1BSSW5mbzo6cmVnQ1MwKTsKICAgICByZXN1bHQuc2V0KEdQUkluZm86OnJl
Z0NTMSk7Ci0jZWxpZiBDUFUoQVJNNjQpCisjZWxpZiBDUFUoQVJNNjQpIHx8IENQVShSSVNDVjY0
KQogICAgIHJlc3VsdC5zZXQoR1BSSW5mbzo6cmVnQ1M2KTsKICAgICByZXN1bHQuc2V0KEdQUklu
Zm86OnJlZ0NTNyk7CiAgICAgc3RhdGljX2Fzc2VydChHUFJJbmZvOjpyZWdDUzggPT0gR1BSSW5m
bzo6bnVtYmVyVGFnUmVnaXN0ZXIsICIiKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9sbGludC9MTEludERhdGEuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9sbGludC9MTElu
dERhdGEuaAppbmRleCAzZjhlODhkYjZiYmFkYmQ0NTE1MThjMTI4Y2E2ZDZkNWVkMWViYzUyLi40
NzFmYjVkMmZkM2I4MDkzOTZhNTIzY2UzM2ZjYjJhODU5ODM2YWNiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTExJbnREYXRhLmgKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2xsaW50L0xMSW50RGF0YS5oCkBAIC0zODEsNyArMzgxLDcgQEAgc3RydWN0IFJlZ2lz
dGVycyB7CiAjZWxpZiBDUFUoWDg2XzY0KSAmJiBPUyhXSU5ET1dTKQogICAgIHN0YXRpYyBjb25z
dGV4cHIgR1BSUmVnIG1ldGFkYXRhVGFibGVHUFIgPSBHUFJJbmZvOjpyZWdDUzM7CiAgICAgc3Rh
dGljIGNvbnN0ZXhwciBHUFJSZWcgcGJHUFIgPSBHUFJJbmZvOjpyZWdDUzQ7Ci0jZWxpZiBDUFUo
QVJNNjQpCisjZWxpZiBDUFUoQVJNNjQpIHx8IENQVShSSVNDVjY0KQogICAgIHN0YXRpYyBjb25z
dGV4cHIgR1BSUmVnIG1ldGFkYXRhVGFibGVHUFIgPSBHUFJJbmZvOjpyZWdDUzY7CiAgICAgc3Rh
dGljIGNvbnN0ZXhwciBHUFJSZWcgcGJHUFIgPSBHUFJJbmZvOjpyZWdDUzc7CiAjZWxpZiBDUFUo
TUlQUykgfHwgQ1BVKEFSTV9USFVNQjIpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvbGxpbnQvTExJbnRPZmZsaW5lQXNtQ29uZmlnLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
bGxpbnQvTExJbnRPZmZsaW5lQXNtQ29uZmlnLmgKaW5kZXggMzNiZTQwNTg3YTI1YmE0NTI2MzU4
YTM4Nzc0YjA5YjBkZGM3N2I1Yy4uOGI5ZTU3ZDMzZjczMjQ5YjliMTFjYjc2MzM3ZTVjYzA0MWI0
MjI1MyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xMSW50T2ZmbGlu
ZUFzbUNvbmZpZy5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9sbGludC9MTEludE9mZmxp
bmVBc21Db25maWcuaApAQCAtNDcsNiArNDcsNyBAQAogI2RlZmluZSBPRkZMSU5FX0FTTV9BUk12
N2sgMAogI2RlZmluZSBPRkZMSU5FX0FTTV9BUk12N3MgMAogI2RlZmluZSBPRkZMSU5FX0FTTV9N
SVBTIDAKKyNkZWZpbmUgT0ZGTElORV9BU01fUklTQ1Y2NCAwCiAKICNlbHNlIC8vIEVOQUJMRShD
X0xPT1ApCiAKQEAgLTExNSw2ICsxMTYsMTIgQEAKICNkZWZpbmUgT0ZGTElORV9BU01fQVJNNjRF
IDAKICNlbmRpZgogCisjaWYgQ1BVKFJJU0NWNjQpCisjZGVmaW5lIE9GRkxJTkVfQVNNX1JJU0NW
NjQgMQorI2Vsc2UKKyNkZWZpbmUgT0ZGTElORV9BU01fUklTQ1Y2NCAwCisjZW5kaWYKKwogI2lm
IENQVShNSVBTKQogI2lmZGVmIFdURl9NSVBTX1BJQwogI2RlZmluZSBTKHgpICN4CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTG93TGV2ZWxJbnRlcnByZXRlci5hc20g
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTG93TGV2ZWxJbnRlcnByZXRlci5hc20KaW5k
ZXggODM0MmIzYTJiZGZkYWI1MGI0NmQ2Nzk2NThiMjJjMmFlZDdhOTJkOC4uYmFmMGM4OWI1MjU5
MjRjMzIxNzMwM2EwN2IwYmMzNTg1YTk1OWRjZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2xsaW50L0xvd0xldmVsSW50ZXJwcmV0ZXIuYXNtCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9sbGludC9Mb3dMZXZlbEludGVycHJldGVyLmFzbQpAQCAtMjE5LDcgKzIxOSw3IEBA
IGVuZAogCiBjb25zdCBtYXhGcmFtZUV4dGVudEZvclNsb3dQYXRoQ2FsbCA9IGNvbnN0ZXhwciBt
YXhGcmFtZUV4dGVudEZvclNsb3dQYXRoQ2FsbAogCi1pZiBYODZfNjQgb3IgWDg2XzY0X1dJTiBv
ciBBUk02NCBvciBBUk02NEUKK2lmIFg4Nl82NCBvciBYODZfNjRfV0lOIG9yIEFSTTY0IG9yIEFS
TTY0RSBvciBSSVNDVjY0CiAgICAgY29uc3QgQ2FsbGVlU2F2ZVNwYWNlQXNWaXJ0dWFsUmVnaXN0
ZXJzID0gNAogZWxzaWYgQ19MT09QIG9yIENfTE9PUF9XSU4KICAgICBjb25zdCBDYWxsZWVTYXZl
U3BhY2VBc1ZpcnR1YWxSZWdpc3RlcnMgPSAxCkBAIC0yNzYsNyArMjc2LDcgQEAgY29uc3QgVk1U
cmFwc0FzeW5jRXZlbnRzID0gY29uc3RleHByIFZNVHJhcHM6OkFzeW5jRXZlbnRzCiAjICAgVGhp
cyByZXF1aXJlcyBhbiBhZGQgYmVmb3JlIHRoZSBjYWxsLCBhbmQgYSBzdWIgYWZ0ZXIuCiBpZiBK
U1ZBTFVFNjQKICAgICBjb25zdCBQQyA9IHQ0ICMgV2hlbiBjaGFuZ2luZyB0aGlzLCBtYWtlIHN1
cmUgTExJbnRQQyBpcyB1cCB0byBkYXRlIGluIExMSW50UENSYW5nZXMuaAotICAgIGlmIEFSTTY0
IG9yIEFSTTY0RQorICAgIGlmIEFSTTY0IG9yIEFSTTY0RSBvciBSSVNDVjY0CiAgICAgICAgIGNv
bnN0IG1ldGFkYXRhVGFibGUgPSBjc3I2CiAgICAgICAgIGNvbnN0IFBCID0gY3NyNwogICAgICAg
ICBjb25zdCBudW1iZXJUYWcgPSBjc3I4CkBAIC03MzAsNyArNzMwLDcgQEAgbWFjcm8gY2hlY2tT
dGFja1BvaW50ZXJBbGlnbm1lbnQodGVtcFJlZywgbG9jYXRpb24pCiAgICAgZW5kCiBlbmQKIAot
aWYgQ19MT09QIG9yIENfTE9PUF9XSU4gb3IgQVJNNjQgb3IgQVJNNjRFIG9yIFg4Nl82NCBvciBY
ODZfNjRfV0lOCitpZiBDX0xPT1Agb3IgQ19MT09QX1dJTiBvciBBUk02NCBvciBBUk02NEUgb3Ig
WDg2XzY0IG9yIFg4Nl82NF9XSU4gb3IgUklTQ1Y2NAogICAgIGNvbnN0IENhbGxlZVNhdmVSZWdp
c3RlckNvdW50ID0gMAogZWxzaWYgQVJNdjcKICAgICBjb25zdCBDYWxsZWVTYXZlUmVnaXN0ZXJD
b3VudCA9IDcKQEAgLTc0Nyw3ICs3NDcsNyBAQCBjb25zdCBDYWxsZWVSZWdpc3RlclNhdmVTaXpl
ID0gQ2FsbGVlU2F2ZVJlZ2lzdGVyQ291bnQgKiBNYWNoaW5lUmVnaXN0ZXJTaXplCiBjb25zdCBW
TUVudHJ5VG90YWxGcmFtZVNpemUgPSAoQ2FsbGVlUmVnaXN0ZXJTYXZlU2l6ZSArIHNpemVvZiBW
TUVudHJ5UmVjb3JkICsgU3RhY2tBbGlnbm1lbnQgLSAxKSAmIH5TdGFja0FsaWdubWVudE1hc2sK
IAogbWFjcm8gcHVzaENhbGxlZVNhdmVzKCkKLSAgICBpZiBDX0xPT1Agb3IgQ19MT09QX1dJTiBv
ciBBUk02NCBvciBBUk02NEUgb3IgWDg2XzY0IG9yIFg4Nl82NF9XSU4KKyAgICBpZiBDX0xPT1Ag
b3IgQ19MT09QX1dJTiBvciBBUk02NCBvciBBUk02NEUgb3IgWDg2XzY0IG9yIFg4Nl82NF9XSU4g
b3IgUklTQ1Y2NAogICAgIGVsc2lmIEFSTXY3CiAgICAgICAgIGVtaXQgInB1c2gge3I0LXI2LCBy
OC1yMTF9IgogICAgIGVsc2lmIE1JUFMKQEAgLTc2OSw3ICs3NjksNyBAQCBtYWNybyBwdXNoQ2Fs
bGVlU2F2ZXMoKQogZW5kCiAKIG1hY3JvIHBvcENhbGxlZVNhdmVzKCkKLSAgICBpZiBDX0xPT1Ag
b3IgQ19MT09QX1dJTiBvciBBUk02NCBvciBBUk02NEUgb3IgWDg2XzY0IG9yIFg4Nl82NF9XSU4K
KyAgICBpZiBDX0xPT1Agb3IgQ19MT09QX1dJTiBvciBBUk02NCBvciBBUk02NEUgb3IgWDg2XzY0
IG9yIFg4Nl82NF9XSU4gb3IgUklTQ1Y2NAogICAgIGVsc2lmIEFSTXY3CiAgICAgICAgIGVtaXQg
InBvcCB7cjQtcjYsIHI4LXIxMX0iCiAgICAgZWxzaWYgTUlQUwpAQCAtNzk0LDcgKzc5NCw3IEBA
IG1hY3JvIHByZXNlcnZlQ2FsbGVyUENBbmRDRlIoKQogICAgICAgICBwdXNoIGNmcgogICAgIGVs
c2lmIFg4NiBvciBYODZfV0lOIG9yIFg4Nl82NCBvciBYODZfNjRfV0lOCiAgICAgICAgIHB1c2gg
Y2ZyCi0gICAgZWxzaWYgQVJNNjQgb3IgQVJNNjRFCisgICAgZWxzaWYgQVJNNjQgb3IgQVJNNjRF
IG9yIFJJU0NWNjQKICAgICAgICAgcHVzaCBjZnIsIGxyCiAgICAgZWxzZQogICAgICAgICBlcnJv
cgpAQCAtODA5LDcgKzgwOSw3IEBAIG1hY3JvIHJlc3RvcmVDYWxsZXJQQ0FuZENGUigpCiAgICAg
ICAgIHBvcCBscgogICAgIGVsc2lmIFg4NiBvciBYODZfV0lOIG9yIFg4Nl82NCBvciBYODZfNjRf
V0lOCiAgICAgICAgIHBvcCBjZnIKLSAgICBlbHNpZiBBUk02NCBvciBBUk02NEUKKyAgICBlbHNp
ZiBBUk02NCBvciBBUk02NEUgb3IgUklTQ1Y2NAogICAgICAgICBwb3AgbHIsIGNmcgogICAgIGVu
ZAogZW5kCkBAIC04NDcsNiArODQ3LDExIEBAIG1hY3JvIHByZXNlcnZlQ2FsbGVlU2F2ZXNVc2Vk
QnlMTEludCgpCiAgICAgICAgIHN0b3JlcCBjc3I1LCAtMTZbY2ZyXQogICAgICAgICBzdG9yZXAg
Y3NyNCwgLTI0W2Nmcl0KICAgICAgICAgc3RvcmVwIGNzcjMsIC0zMltjZnJdCisgICAgZWxzaWYg
UklTQ1Y2NAorICAgICAgICBzdG9yZXAgY3NyOSwgLThbY2ZyXQorICAgICAgICBzdG9yZXAgY3Ny
OCwgLTE2W2Nmcl0KKyAgICAgICAgc3RvcmVwIGNzcjcsIC0yNFtjZnJdCisgICAgICAgIHN0b3Jl
cCBjc3I2LCAtMzJbY2ZyXQogICAgIGVuZAogZW5kCiAKQEAgLTg3NiwxMSArODgxLDE2IEBAIG1h
Y3JvIHJlc3RvcmVDYWxsZWVTYXZlc1VzZWRCeUxMSW50KCkKICAgICAgICAgbG9hZHAgLTI0W2Nm
cl0sIGNzcjQKICAgICAgICAgbG9hZHAgLTE2W2Nmcl0sIGNzcjUKICAgICAgICAgbG9hZHAgLThb
Y2ZyXSwgY3NyNgorICAgIGVsc2lmIFJJU0NWNjQKKyAgICAgICAgbG9hZHAgLTMyW2Nmcl0sIGNz
cjYKKyAgICAgICAgbG9hZHAgLTI0W2Nmcl0sIGNzcjcKKyAgICAgICAgbG9hZHAgLTE2W2Nmcl0s
IGNzcjgKKyAgICAgICAgbG9hZHAgLThbY2ZyXSwgY3NyOQogICAgIGVuZAogZW5kCiAKIG1hY3Jv
IGNvcHlDYWxsZWVTYXZlc1RvRW50cnlGcmFtZUNhbGxlZVNhdmVzQnVmZmVyKGVudHJ5RnJhbWUp
Ci0gICAgaWYgQVJNNjQgb3IgQVJNNjRFIG9yIFg4Nl82NCBvciBYODZfNjRfV0lOIG9yIEFSTXY3
IG9yIE1JUFMKKyAgICBpZiBBUk02NCBvciBBUk02NEUgb3IgWDg2XzY0IG9yIFg4Nl82NF9XSU4g
b3IgQVJNdjcgb3IgTUlQUyBvciBSSVNDVjY0CiAgICAgICAgIHZtRW50cnlSZWNvcmQoZW50cnlG
cmFtZSwgZW50cnlGcmFtZSkKICAgICAgICAgbGVhcCBWTUVudHJ5UmVjb3JkOjpjYWxsZWVTYXZl
UmVnaXN0ZXJzQnVmZmVyW2VudHJ5RnJhbWVdLCBlbnRyeUZyYW1lCiAgICAgICAgIGlmIEFSTTY0
IG9yIEFSTTY0RQpAQCAtOTE5LDE5ICs5MjksNDMgQEAgbWFjcm8gY29weUNhbGxlZVNhdmVzVG9F
bnRyeUZyYW1lQ2FsbGVlU2F2ZXNCdWZmZXIoZW50cnlGcmFtZSkKICAgICAgICAgZWxzaWYgQVJN
djcgb3IgTUlQUwogICAgICAgICAgICAgc3RvcmVwIGNzcjAsIFtlbnRyeUZyYW1lXQogICAgICAg
ICAgICAgc3RvcmVwIGNzcjEsIDRbZW50cnlGcmFtZV0KKyAgICAgICAgZWxzaWYgUklTQ1Y2NAor
ICAgICAgICAgICAgc3RvcmVwIGNzcjAsIFtlbnRyeUZyYW1lXQorICAgICAgICAgICAgc3RvcmVw
IGNzcjEsIDhbZW50cnlGcmFtZV0KKyAgICAgICAgICAgIHN0b3JlcCBjc3IyLCAxNltlbnRyeUZy
YW1lXQorICAgICAgICAgICAgc3RvcmVwIGNzcjMsIDI0W2VudHJ5RnJhbWVdCisgICAgICAgICAg
ICBzdG9yZXAgY3NyNCwgMzJbZW50cnlGcmFtZV0KKyAgICAgICAgICAgIHN0b3JlcCBjc3I1LCA0
MFtlbnRyeUZyYW1lXQorICAgICAgICAgICAgc3RvcmVwIGNzcjYsIDQ4W2VudHJ5RnJhbWVdCisg
ICAgICAgICAgICBzdG9yZXAgY3NyNywgNTZbZW50cnlGcmFtZV0KKyAgICAgICAgICAgIHN0b3Jl
cCBjc3I4LCA2NFtlbnRyeUZyYW1lXQorICAgICAgICAgICAgc3RvcmVwIGNzcjksIDcyW2VudHJ5
RnJhbWVdCisgICAgICAgICAgICBzdG9yZXAgY3NyMTAsIDgwW2VudHJ5RnJhbWVdCisgICAgICAg
ICAgICBzdG9yZWQgY3NmcjAsIDg4W2VudHJ5RnJhbWVdCisgICAgICAgICAgICBzdG9yZWQgY3Nm
cjEsIDk2W2VudHJ5RnJhbWVdCisgICAgICAgICAgICBzdG9yZWQgY3NmcjIsIDEwNFtlbnRyeUZy
YW1lXQorICAgICAgICAgICAgc3RvcmVkIGNzZnIzLCAxMTJbZW50cnlGcmFtZV0KKyAgICAgICAg
ICAgIHN0b3JlZCBjc2ZyNCwgMTIwW2VudHJ5RnJhbWVdCisgICAgICAgICAgICBzdG9yZWQgY3Nm
cjUsIDEyOFtlbnRyeUZyYW1lXQorICAgICAgICAgICAgc3RvcmVkIGNzZnI2LCAxMzZbZW50cnlG
cmFtZV0KKyAgICAgICAgICAgIHN0b3JlZCBjc2ZyNywgMTQ0W2VudHJ5RnJhbWVdCisgICAgICAg
ICAgICBzdG9yZWQgY3NmcjgsIDE1MltlbnRyeUZyYW1lXQorICAgICAgICAgICAgc3RvcmVkIGNz
ZnI5LCAxNjBbZW50cnlGcmFtZV0KKyAgICAgICAgICAgIHN0b3JlZCBjc2ZyMTAsIDE2OFtlbnRy
eUZyYW1lXQorICAgICAgICAgICAgc3RvcmVkIGNzZnIxMSwgMTc2W2VudHJ5RnJhbWVdCiAgICAg
ICAgIGVuZAogICAgIGVuZAogZW5kCiAKIG1hY3JvIGNvcHlDYWxsZWVTYXZlc1RvVk1FbnRyeUZy
YW1lQ2FsbGVlU2F2ZXNCdWZmZXIodm0sIHRlbXApCi0gICAgaWYgQVJNNjQgb3IgQVJNNjRFIG9y
IFg4Nl82NCBvciBYODZfNjRfV0lOIG9yIEFSTXY3IG9yIE1JUFMKKyAgICBpZiBBUk02NCBvciBB
Uk02NEUgb3IgWDg2XzY0IG9yIFg4Nl82NF9XSU4gb3IgQVJNdjcgb3IgTUlQUyBvciBSSVNDVjY0
CiAgICAgICAgIGxvYWRwIFZNOjp0b3BFbnRyeUZyYW1lW3ZtXSwgdGVtcAogICAgICAgICBjb3B5
Q2FsbGVlU2F2ZXNUb0VudHJ5RnJhbWVDYWxsZWVTYXZlc0J1ZmZlcih0ZW1wKQogICAgIGVuZAog
ZW5kCiAKIG1hY3JvIHJlc3RvcmVDYWxsZWVTYXZlc0Zyb21WTUVudHJ5RnJhbWVDYWxsZWVTYXZl
c0J1ZmZlcih2bSwgdGVtcCkKLSAgICBpZiBBUk02NCBvciBBUk02NEUgb3IgWDg2XzY0IG9yIFg4
Nl82NF9XSU4gb3IgQVJNdjcgb3IgTUlQUworICAgIGlmIEFSTTY0IG9yIEFSTTY0RSBvciBYODZf
NjQgb3IgWDg2XzY0X1dJTiBvciBBUk12NyBvciBNSVBTIG9yIFJJU0NWNjQKICAgICAgICAgbG9h
ZHAgVk06OnRvcEVudHJ5RnJhbWVbdm1dLCB0ZW1wCiAgICAgICAgIHZtRW50cnlSZWNvcmQodGVt
cCwgdGVtcCkKICAgICAgICAgbGVhcCBWTUVudHJ5UmVjb3JkOjpjYWxsZWVTYXZlUmVnaXN0ZXJz
QnVmZmVyW3RlbXBdLCB0ZW1wCkBAIC05NzEsMTIgKzEwMDUsMzYgQEAgbWFjcm8gcmVzdG9yZUNh
bGxlZVNhdmVzRnJvbVZNRW50cnlGcmFtZUNhbGxlZVNhdmVzQnVmZmVyKHZtLCB0ZW1wKQogICAg
ICAgICBlbHNpZiBBUk12NyBvciBNSVBTCiAgICAgICAgICAgICBsb2FkcCBbdGVtcF0sIGNzcjAK
ICAgICAgICAgICAgIGxvYWRwIDRbdGVtcF0sIGNzcjEKKyAgICAgICAgZWxzaWYgUklTQ1Y2NAor
ICAgICAgICAgICAgbG9hZHEgW3RlbXBdLCBjc3IwCisgICAgICAgICAgICBsb2FkcSA4W3RlbXBd
LCBjc3IxCisgICAgICAgICAgICBsb2FkcSAxNlt0ZW1wXSwgY3NyMgorICAgICAgICAgICAgbG9h
ZHEgMjRbdGVtcF0sIGNzcjMKKyAgICAgICAgICAgIGxvYWRxIDMyW3RlbXBdLCBjc3I0CisgICAg
ICAgICAgICBsb2FkcSA0MFt0ZW1wXSwgY3NyNQorICAgICAgICAgICAgbG9hZHEgNDhbdGVtcF0s
IGNzcjYKKyAgICAgICAgICAgIGxvYWRxIDU2W3RlbXBdLCBjc3I3CisgICAgICAgICAgICBsb2Fk
cSA2NFt0ZW1wXSwgY3NyOAorICAgICAgICAgICAgbG9hZHEgNzJbdGVtcF0sIGNzcjkKKyAgICAg
ICAgICAgIGxvYWRxIDgwW3RlbXBdLCBjc3IxMAorICAgICAgICAgICAgbG9hZGQgODhbdGVtcF0s
IGNzZnIwCisgICAgICAgICAgICBsb2FkZCA5Nlt0ZW1wXSwgY3NmcjEKKyAgICAgICAgICAgIGxv
YWRkIDEwNFt0ZW1wXSwgY3NmcjIKKyAgICAgICAgICAgIGxvYWRkIDExMlt0ZW1wXSwgY3NmcjMK
KyAgICAgICAgICAgIGxvYWRkIDEyMFt0ZW1wXSwgY3NmcjQKKyAgICAgICAgICAgIGxvYWRkIDEy
OFt0ZW1wXSwgY3NmcjUKKyAgICAgICAgICAgIGxvYWRkIDEzNlt0ZW1wXSwgY3NmcjYKKyAgICAg
ICAgICAgIGxvYWRkIDE0NFt0ZW1wXSwgY3NmcjcKKyAgICAgICAgICAgIGxvYWRkIDE1Mlt0ZW1w
XSwgY3NmcjgKKyAgICAgICAgICAgIGxvYWRkIDE2MFt0ZW1wXSwgY3NmcjkKKyAgICAgICAgICAg
IGxvYWRkIDE2OFt0ZW1wXSwgY3NmcjEwCisgICAgICAgICAgICBsb2FkZCAxNzZbdGVtcF0sIGNz
ZnIxMQogICAgICAgICBlbmQKICAgICBlbmQKIGVuZAogCiBtYWNybyBwcmVzZXJ2ZVJldHVybkFk
ZHJlc3NBZnRlckNhbGwoZGVzdGluYXRpb25SZWdpc3RlcikKLSAgICBpZiBDX0xPT1Agb3IgQ19M
T09QX1dJTiBvciBBUk12NyBvciBBUk02NCBvciBBUk02NEUgb3IgTUlQUworICAgIGlmIENfTE9P
UCBvciBDX0xPT1BfV0lOIG9yIEFSTXY3IG9yIEFSTTY0IG9yIEFSTTY0RSBvciBNSVBTIG9yIFJJ
U0NWNjQKICAgICAgICAgIyBJbiBDX0xPT1Agb3IgQ19MT09QX1dJTiBjYXNlLCB3ZSdyZSBvbmx5
IHByZXNlcnZpbmcgdGhlIGJ5dGVjb2RlIHZQQy4KICAgICAgICAgbW92ZSBsciwgZGVzdGluYXRp
b25SZWdpc3RlcgogICAgIGVsc2lmIFg4NiBvciBYODZfV0lOIG9yIFg4Nl82NCBvciBYODZfNjRf
V0lOCkBAIC05OTAsNyArMTA0OCw3IEBAIG1hY3JvIGZ1bmN0aW9uUHJvbG9ndWUoKQogICAgIHRh
Z1JldHVybkFkZHJlc3Mgc3AKICAgICBpZiBYODYgb3IgWDg2X1dJTiBvciBYODZfNjQgb3IgWDg2
XzY0X1dJTgogICAgICAgICBwdXNoIGNmcgotICAgIGVsc2lmIEFSTTY0IG9yIEFSTTY0RQorICAg
IGVsc2lmIEFSTTY0IG9yIEFSTTY0RSBvciBSSVNDVjY0CiAgICAgICAgIHB1c2ggY2ZyLCBscgog
ICAgIGVsc2lmIENfTE9PUCBvciBDX0xPT1BfV0lOIG9yIEFSTXY3IG9yIE1JUFMKICAgICAgICAg
cHVzaCBscgpAQCAtMTAwMiw3ICsxMDYwLDcgQEAgZW5kCiBtYWNybyBmdW5jdGlvbkVwaWxvZ3Vl
KCkKICAgICBpZiBYODYgb3IgWDg2X1dJTiBvciBYODZfNjQgb3IgWDg2XzY0X1dJTgogICAgICAg
ICBwb3AgY2ZyCi0gICAgZWxzaWYgQVJNNjQgb3IgQVJNNjRFCisgICAgZWxzaWYgQVJNNjQgb3Ig
QVJNNjRFIG9yIFJJU0NWNjQKICAgICAgICAgcG9wIGxyLCBjZnIKICAgICBlbHNpZiBDX0xPT1Ag
b3IgQ19MT09QX1dJTiBvciBBUk12NyBvciBNSVBTCiAgICAgICAgIHBvcCBjZnIKQEAgLTExNTgs
NyArMTIxNiw3IEBAIG1hY3JvIHByZXBhcmVGb3JUYWlsQ2FsbChjYWxsZWUsIHRlbXAxLCB0ZW1w
MiwgdGVtcDMsIHRlbXA0LCBjYWxsUHRyVGFnKQogICAgIGFkZGkgU3RhY2tBbGlnbm1lbnQgLSAx
ICsgQ2FsbEZyYW1lSGVhZGVyU2l6ZSwgdGVtcDIKICAgICBhbmRpIH5TdGFja0FsaWdubWVudE1h
c2ssIHRlbXAyCiAKLSAgICBpZiBBUk12NyBvciBBUk02NCBvciBBUk02NEUgb3IgQ19MT09QIG9y
IENfTE9PUF9XSU4gb3IgTUlQUworICAgIGlmIEFSTXY3IG9yIEFSTTY0IG9yIEFSTTY0RSBvciBD
X0xPT1Agb3IgQ19MT09QX1dJTiBvciBNSVBTIG9yIFJJU0NWNjQKICAgICAgICAgYWRkcCBDYWxs
ZXJGcmFtZUFuZFBDU2l6ZSwgc3AKICAgICAgICAgc3ViaSBDYWxsZXJGcmFtZUFuZFBDU2l6ZSwg
dGVtcDIKICAgICAgICAgbG9hZHAgQ2FsbGVyRnJhbWVBbmRQQzo6cmV0dXJuUENbY2ZyXSwgbHIK
QEAgLTE0NTQsNyArMTUxMiw3IEBAIG1hY3JvIHByb2xvZ3VlKGNvZGVCbG9ja0dldHRlciwgY29k
ZUJsb2NrU2V0dGVyLCBvc3JTbG93UGF0aCwgdHJhY2VTbG93UGF0aCkKICAgICAgICAgYnRweiBy
MCwgLnJlY292ZXIKICAgICAgICAgbW92ZSBjZnIsIHNwICMgcmVzdG9yZSB0aGUgcHJldmlvdXMg
c3AKICAgICAgICAgIyBwb3AgdGhlIGNhbGxlckZyYW1lIHNpbmNlIHdlIHdpbGwganVtcCB0byBh
IGZ1bmN0aW9uIHRoYXQgd2FudHMgdG8gc2F2ZSBpdAotICAgICAgICBpZiBBUk02NAorICAgICAg
ICBpZiBBUk02NCBvciBSSVNDVjY0CiAgICAgICAgICAgICBwb3AgbHIsIGNmcgogICAgICAgICBl
bHNpZiBBUk02NEUKICAgICAgICAgICAgICMgdW50YWdSZXR1cm5BZGRyZXNzIHdpbGwgYmUgcGVy
Zm9ybWVkIGluIEdhdGU6OmVudHJ5T1NSRW50cnkuCkBAIC0xODEwLDcgKzE4NjgsNyBAQCBlbHNl
CiAgICAgICAgICAgICBsZWFwIChsYWJlbCAtIF8la2luZCVfcmVsYXRpdmVQQ0Jhc2UpW3QzXSwg
dDQKICAgICAgICAgICAgIG1vdmUgaW5kZXgsIHQ1CiAgICAgICAgICAgICBzdG9yZXAgdDQsIFtt
YXAsIHQ1LCA0XQotICAgICAgICBlbHNpZiBBUk02NAorICAgICAgICBlbHNpZiBBUk02NCBvciBS
SVNDVjY0CiAgICAgICAgICAgICBwY3J0b2FkZHIgbGFiZWwsIHQzCiAgICAgICAgICAgICBtb3Zl
IGluZGV4LCB0NAogICAgICAgICAgICAgc3RvcmVwIHQzLCBbbWFwLCB0NCwgUHRyU2l6ZV0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9sbGludC9Mb3dMZXZlbEludGVycHJldGVy
NjQuYXNtIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xvd0xldmVsSW50ZXJwcmV0ZXI2
NC5hc20KaW5kZXggYmFhMDc2YTA4ZjQzMDNlMmM4MmNiZjBhN2MzOThlMjNjNjUyMTVlNy4uYzdk
MWEyMDQ4MDkzMjhkYjA0MTM5NzVkNWI4Nzk2MjBhNTMxN2YwZCAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL2xsaW50L0xvd0xldmVsSW50ZXJwcmV0ZXI2NC5hc20KKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xvd0xldmVsSW50ZXJwcmV0ZXI2NC5hc20KQEAgLTkz
LDcgKzkzLDcgQEAgZW5kCiAKIG1hY3JvIGNDYWxsMihmdW5jdGlvbikKICAgICBjaGVja1N0YWNr
UG9pbnRlckFsaWdubWVudCh0NCwgMHhiYWQwYzAwMikKLSAgICBpZiBYODZfNjQgb3IgQVJNNjQg
b3IgQVJNNjRFCisgICAgaWYgWDg2XzY0IG9yIEFSTTY0IG9yIEFSTTY0RSBvciBSSVNDVjY0CiAg
ICAgICAgIGNhbGwgZnVuY3Rpb24KICAgICBlbHNpZiBYODZfNjRfV0lOCiAgICAgICAgICMgTm90
ZTogdGhpcyBpbXBsZW1lbnRhdGlvbiBpcyBvbmx5IGNvcnJlY3QgaWYgdGhlIHJldHVybiB0eXBl
IHNpemUgaXMgPiA4IGJ5dGVzLgpAQCAtMTQwLDcgKzE0MCw3IEBAIGVuZAogIyBUaGlzIGJhcmVs
eSB3b3Jrcy4gYXJnMyBhbmQgYXJnNCBzaG91bGQgcHJvYmFibHkgYmUgaW1tZWRpYXRlcy4KIG1h
Y3JvIGNDYWxsNChmdW5jdGlvbikKICAgICBjaGVja1N0YWNrUG9pbnRlckFsaWdubWVudCh0NCwg
MHhiYWQwYzAwNCkKLSAgICBpZiBYODZfNjQgb3IgQVJNNjQgb3IgQVJNNjRFCisgICAgaWYgWDg2
XzY0IG9yIEFSTTY0IG9yIEFSTTY0RSBvciBSSVNDVjY0CiAgICAgICAgIGNhbGwgZnVuY3Rpb24K
ICAgICBlbHNpZiBYODZfNjRfV0lOCiAgICAgICAgICMgT24gV2luNjQsIHJjeCwgcmR4LCByOCwg
YW5kIHI5IGFyZSB1c2VkIGZvciBwYXNzaW5nIHRoZSBmaXJzdCBmb3VyIHBhcmFtZXRlcnMuCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvb2ZmbGluZWFzbS9iYWNrZW5kcy5yYiBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9vZmZsaW5lYXNtL2JhY2tlbmRzLnJiCmluZGV4IDQxNGYx
ZWFiZWFkMjIyMWZiOTEyNzdjNzAyMTc2Y2UxZmE4MDYwNzIuLjQ1MDY2ODZmOTlmMjQ0NGFmMzgy
N2ExN2I0ZWU4NTYwYzlmM2JiNjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9v
ZmZsaW5lYXNtL2JhY2tlbmRzLnJiCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9vZmZsaW5l
YXNtL2JhY2tlbmRzLnJiCkBAIC0yNyw2ICsyNyw3IEBAIHJlcXVpcmUgImFybTY0IgogcmVxdWly
ZSAiYXN0IgogcmVxdWlyZSAieDg2IgogcmVxdWlyZSAibWlwcyIKK3JlcXVpcmUgInJpc2N2NjQi
CiByZXF1aXJlICJjbG9vcCIKIAogYmVnaW4KQEAgLTQ0LDYgKzQ1LDcgQEAgQkFDS0VORFMgPQog
ICAgICAiQVJNNjQiLAogICAgICAiQVJNNjRFIiwKICAgICAgIk1JUFMiLAorICAgICAiUklTQ1Y2
NCIsCiAgICAgICJDX0xPT1AiLAogICAgICAiQ19MT09QX1dJTiIKICAgICBdCkBAIC02Myw2ICs2
NSw3IEBAIFdPUktJTkdfQkFDS0VORFMgPQogICAgICAiQVJNNjQiLAogICAgICAiQVJNNjRFIiwK
ICAgICAgIk1JUFMiLAorICAgICAiUklTQ1Y2NCIsCiAgICAgICJDX0xPT1AiLAogICAgICAiQ19M
T09QX1dJTiIKICAgICBdCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvb2ZmbGlu
ZWFzbS9yZWdpc3RlcnMucmIgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvb2ZmbGluZWFzbS9yZWdp
c3RlcnMucmIKaW5kZXggY2I4NDU3YjhmOTQ4YWNiMjhlNzZiMGQ3OTQ5Mjg4NjFmZTU4MTUwNi4u
MGRjNDRjMjNkZmIyYmFkMzY1YTBmZWI1NzEwM2FkMmZkMzNmZWFlNCAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL29mZmxpbmVhc20vcmVnaXN0ZXJzLnJiCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9vZmZsaW5lYXNtL3JlZ2lzdGVycy5yYgpAQCAtNTcsNyArNTcsOCBAQCBH
UFJTID0KICAgICAgImNzcjYiLAogICAgICAiY3NyNyIsCiAgICAgICJjc3I4IiwKLSAgICAgImNz
cjkiCisgICAgICJjc3I5IiwKKyAgICAgImNzcjEwIgogICAgIF0KIAogRlBSUyA9CkBAIC04MCw2
ICs4MSwxMCBAQCBGUFJTID0KICAgICAgImNzZnI1IiwKICAgICAgImNzZnI2IiwKICAgICAgImNz
ZnI3IiwKKyAgICAgImNzZnI4IiwKKyAgICAgImNzZnI5IiwKKyAgICAgImNzZnIxMCIsCisgICAg
ICJjc2ZyMTEiLAogICAgICAiZnIiCiAgICAgXQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvb2ZmbGluZWFzbS9yaXNjdjY0LnJiIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL29m
ZmxpbmVhc20vcmlzY3Y2NC5yYgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44ZmRkMTEzNzAzODYzMjhmMDJlYjZmNWIx
MGVmNTVlMWU5OWYwOTk3Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L29mZmxpbmVhc20vcmlzY3Y2NC5yYgpAQCAtMCwwICsxLDE5ODAgQEAKKyMgQ29weXJpZ2h0IChD
KSAyMDIxIElnYWxpYSBTLkwuCisjCisjIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorIyBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyMgYXJlIG1l
dDoKKyMgMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyMgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorIyAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorIyAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhl
CisjICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCisjCisjIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyMgQU5EIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisj
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKKyMgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisjIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyMgQ09O
U0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YKKyMgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisjIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisjIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpCisjIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyMgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorCitkZWYgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICByZXR1cm4gb3BlcmFu
ZHMubWFwIHsKKyAgICAgICAgfG9wfAorICAgICAgICBvcC5jbGFzcworICAgIH0KK2VuZAorCitk
ZWYgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgIHJhaXNlICJV
bmFibGUgdG8gbWF0Y2ggb3BlcmFuZHMgI3tyaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKX0i
CitlbmQKKworZGVmIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgcmFpc2UgIk5vdCBzdXBw
b3J0ZWQgZm9yIFJJU0NWNjQiCitlbmQKKworZGVmIHJpc2N2NjRMb2FkSW5zdHJ1Y3Rpb24oc2l6
ZSkKKyAgICBjYXNlIHNpemUKKyAgICB3aGVuIDpiCisgICAgICAgICJsYiIKKyAgICB3aGVuIDpi
dQorICAgICAgICAibGJ1IgorICAgIHdoZW4gOmgKKyAgICAgICAgImxoIgorICAgIHdoZW4gOmh1
CisgICAgICAgICJsaHUiCisgICAgd2hlbiA6dworICAgICAgICAibHciCisgICAgd2hlbiA6d3UK
KyAgICAgICAgImx3dSIKKyAgICB3aGVuIDpkCisgICAgICAgICJsZCIKKyAgICBlbHNlCisgICAg
ICAgIHJhaXNlICJVbnN1cHBvcnRlZCBzaXplICN7c2l6ZX0iCisgICAgZW5kCitlbmQKKworZGVm
IHJpc2N2NjRaZXJvRXh0ZW5kZWRMb2FkSW5zdHJ1Y3Rpb24oc2l6ZSkKKyAgICBjYXNlIHNpemUK
KyAgICB3aGVuIDpiCisgICAgICAgIHJpc2N2NjRMb2FkSW5zdHJ1Y3Rpb24oOmJ1KQorICAgIHdo
ZW4gOmgKKyAgICAgICAgcmlzY3Y2NExvYWRJbnN0cnVjdGlvbig6aHUpCisgICAgd2hlbiA6dwor
ICAgICAgICByaXNjdjY0TG9hZEluc3RydWN0aW9uKDp3dSkKKyAgICB3aGVuIDpkCisgICAgICAg
IHJpc2N2NjRMb2FkSW5zdHJ1Y3Rpb24oOmQpCisgICAgZWxzZQorICAgICAgICByYWlzZSAiVW5z
dXBwb3J0ZWQgc2l6ZSAje3NpemV9IgorICAgIGVuZAorZW5kCisKK2RlZiByaXNjdjY0U3RvcmVJ
bnN0cnVjdGlvbihzaXplKQorICAgIGNhc2Ugc2l6ZQorICAgIHdoZW4gOmIKKyAgICAgICAgInNi
IgorICAgIHdoZW4gOmgKKyAgICAgICAgInNoIgorICAgIHdoZW4gOncKKyAgICAgICAgInN3Igor
ICAgIHdoZW4gOmQKKyAgICAgICAgInNkIgorICAgIGVsc2UKKyAgICAgICAgcmFpc2UgIlVuc3Vw
cG9ydGVkIHNpemUgI3tzaXplfSIKKyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NEVtaXRSZWdp
c3Rlck1hc2sodGFyZ2V0LCBzaXplKQorICAgIGNhc2Ugc2l6ZQorICAgIHdoZW4gOncKKyAgICAg
ICAgJGFzbS5wdXRzICJsaSB4MzEsIDB4ZmZmZmZmZmYiCisgICAgICAgICRhc20ucHV0cyAiYW5k
ICN7dGFyZ2V0LnJpc2N2NjRPcGVyYW5kfSwgI3t0YXJnZXQucmlzY3Y2NE9wZXJhbmR9LCB4MzEi
CisgICAgd2hlbiA6ZAorICAgIGVsc2UKKyAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIHNpemUi
CisgICAgZW5kCitlbmQKKworZGVmIHJpc2N2NjRDb25kaXRpb25hbEJyYW5jaEluc3RydWN0aW9u
KGNvbmRpdGlvbikKKyAgICBjYXNlIGNvbmRpdGlvbgorICAgIHdoZW4gOmVxCisgICAgICAgICJi
ZXEiCisgICAgd2hlbiA6bmVxCisgICAgICAgICJibmUiCisgICAgd2hlbiA6YQorICAgICAgICAi
Ymd0dSIKKyAgICB3aGVuIDphZXEKKyAgICAgICAgImJnZXUiCisgICAgd2hlbiA6YgorICAgICAg
ICAiYmx0dSIKKyAgICB3aGVuIDpiZXEKKyAgICAgICAgImJsZXUiCisgICAgd2hlbiA6Z3QKKyAg
ICAgICAgImJndCIKKyAgICB3aGVuIDpndGVxCisgICAgICAgICJiZ2UiCisgICAgd2hlbiA6bHQK
KyAgICAgICAgImJsdCIKKyAgICB3aGVuIDpsdGVxCisgICAgICAgICJibGUiCisgICAgZWxzZQor
ICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgY29uZGl0aW9uICN7Y29uZGl0aW9ufSIKKyAgICBl
bmQKK2VuZAorCitkZWYgcmlzY3Y2NEVtaXRMb2FkKG9wZXJhbmRzLCB0eXBlLCBtYXNrKQorICAg
IGluc3RydWN0aW9uID0gcmlzY3Y2NExvYWRJbnN0cnVjdGlvbih0eXBlKQorCisgICAgY2FzZSBy
aXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgIHdoZW4gW0FkZHJlc3MsIFJlZ2lzdGVy
SURdCisgICAgICAgIGlmIG9wZXJhbmRzWzBdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAg
ICAgIG9wZXJhbmRzWzBdLnJpc2N2NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxKQor
ICAgICAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSAje29wZXJhbmRzWzFdLnJpc2N2
NjRPcGVyYW5kfSwgMCh4MzEpIgorICAgICAgICBlbHNlCisgICAgICAgICAgICAkYXNtLnB1dHMg
IiN7aW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRz
WzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZW5kCisgICAgd2hlbiBbQmFzZUluZGV4LCBS
ZWdpc3RlcklEXQorICAgICAgICBvcGVyYW5kc1swXS5yaXNjdjY0TG9hZChSSVNDVjY0U2NyYXRj
aFJlZ2lzdGVyLngzMSwgUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzApCisgICAgICAgICRhc20u
cHV0cyAiI3tpbnN0cnVjdGlvbn0gI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIDAoeDMx
KSIKKyAgICBlbHNlCisgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVy
YW5kcykKKyAgICBlbmQKKworICAgIGNhc2UgbWFzaworICAgIHdoZW4gOncKKyAgICAgICAgcmlz
Y3Y2NEVtaXRSZWdpc3Rlck1hc2sob3BlcmFuZHNbMV0sIDp3KQorICAgIHdoZW4gOm5vbmUKKyAg
ICBlbHNlCisgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCBtYXNrIHR5cGUiCisgICAgZW5kCitl
bmQKKworZGVmIHJpc2N2NjRFbWl0U3RvcmUob3BlcmFuZHMsIHR5cGUpCisgICAgaW5zdHJ1Y3Rp
b24gPSByaXNjdjY0U3RvcmVJbnN0cnVjdGlvbih0eXBlKQorCisgICAgY2FzZSByaXNjdjY0T3Bl
cmFuZFR5cGVzKG9wZXJhbmRzKQorICAgIHdoZW4gW1JlZ2lzdGVySUQsIEFkZHJlc3NdCisgICAg
ICAgIGlmIG9wZXJhbmRzWzFdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAgIG9wZXJh
bmRzWzFdLnJpc2N2NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxKQorICAgICAgICAg
ICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5k
fSwgMCh4MzEpIgorICAgICAgICBlbHNlCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1
Y3Rpb259ICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2
NjRPcGVyYW5kfSIKKyAgICAgICAgZW5kCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgQmFzZUluZGV4
XQorICAgICAgICBvcGVyYW5kc1sxXS5yaXNjdjY0TG9hZChSSVNDVjY0U2NyYXRjaFJlZ2lzdGVy
LngzMSwgUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzApCisgICAgICAgICRhc20ucHV0cyAiI3tp
bnN0cnVjdGlvbn0gI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sIDAoeDMxKSIKKyAgICB3
aGVuIFtJbW1lZGlhdGUsIEFkZHJlc3NdCisgICAgICAgICRhc20ucHV0cyAibGkgeDMwLCAje29w
ZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgaWYgb3BlcmFuZHNbMV0ucmlzY3Y2
NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExvYWQoUklTQ1Y2
NFNjcmF0Y2hSZWdpc3Rlci54MzEpCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rp
b259IHgzMCwgMCh4MzEpIgorICAgICAgICBlbHNlCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7
aW5zdHJ1Y3Rpb259IHgzMCwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAg
IGVuZAorICAgIHdoZW4gW0ltbWVkaWF0ZSwgQmFzZUluZGV4XQorICAgICAgICBvcGVyYW5kc1sx
XS5yaXNjdjY0TG9hZChSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMSwgUklTQ1Y2NFNjcmF0Y2hS
ZWdpc3Rlci54MzApCisgICAgICAgICRhc20ucHV0cyAibGkgeDMwLCAje29wZXJhbmRzWzBdLnJp
c2N2NjRPcGVyYW5kfSIKKyAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSB4MzAsIDAo
eDMxKSIKKyAgICBlbHNlCisgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhv
cGVyYW5kcykKKyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NEVtaXRBZGRpdGlvbk9wZXJhdGlv
bihvcGVyYW5kcywgc2l6ZSwgb3BlcmF0aW9uKQorICAgIHJhaXNlICJVbnN1cHBvcnRlZCBzaXpl
IiB1bmxlc3MgWzp3LCA6ZF0uaW5jbHVkZT8gc2l6ZQorCisgICAgZGVmIGFkZGl0aW9uSW5zdHJ1
Y3Rpb24oc2l6ZSwgb3BlcmF0aW9uKQorICAgICAgICBjYXNlIG9wZXJhdGlvbgorICAgICAgICB3
aGVuIDphZGQKKyAgICAgICAgICAgIHNpemUgPT0gOncgPyAiYWRkdyIgOiAiYWRkIgorICAgICAg
ICB3aGVuIDpzdWIKKyAgICAgICAgICAgIHNpemUgPT0gOncgPyAic3VidyIgOiAic3ViIgorICAg
ICAgICBlbHNlCisgICAgICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgYXJpdGhtZXRpYyBvcGVy
YXRpb24iCisgICAgICAgIGVuZAorICAgIGVuZAorCisgICAgaW5zdHJ1Y3Rpb24gPSBhZGRpdGlv
bkluc3RydWN0aW9uKHNpemUsIG9wZXJhdGlvbikKKyAgICBsb2FkSW5zdHJ1Y3Rpb24gPSByaXNj
djY0TG9hZEluc3RydWN0aW9uKHNpemUpCisgICAgc3RvcmVJbnN0cnVjdGlvbiA9IHJpc2N2NjRT
dG9yZUluc3RydWN0aW9uKHNpemUpCisKKyAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3Bl
cmFuZHMpCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAgICAgb3BlcmFu
ZHMgPSBbb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXV0KKyAgICB3aGVuIFtJ
bW1lZGlhdGUsIFJlZ2lzdGVySURdCisgICAgICAgIG9wZXJhbmRzID0gW29wZXJhbmRzWzFdLCBv
cGVyYW5kc1swXSwgb3BlcmFuZHNbMV1dCisgICAgd2hlbiBbQWRkcmVzcywgUmVnaXN0ZXJJRF0K
KyAgICAgICAgb3BlcmFuZHMgPSBbb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sx
XV0KKyAgICBlbmQKKworICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAg
ICB3aGVuIFtSZWdpc3RlcklELCBSZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAgICAgICAkYXNt
LnB1dHMgIiN7aW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje29w
ZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0i
CisgICAgICAgIHJpc2N2NjRFbWl0UmVnaXN0ZXJNYXNrKG9wZXJhbmRzWzJdLCBzaXplKQorICAg
IHdoZW4gW1JlZ2lzdGVySUQsIEltbWVkaWF0ZSwgUmVnaXN0ZXJJRF0KKyAgICAgICAgb3BlcmFu
ZHNbMV0ucmlzY3Y2NExvYWQoUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzEpCisgICAgICAgICRh
c20ucHV0cyAiI3tpbnN0cnVjdGlvbn0gI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sICN7
b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEiCisgICAgICAgIHJpc2N2NjRFbWl0UmVn
aXN0ZXJNYXNrKG9wZXJhbmRzWzJdLCBzaXplKQorICAgIHdoZW4gW0ltbWVkaWF0ZSwgUmVnaXN0
ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAgICAgb3BlcmFuZHNbMF0ucmlzY3Y2NExvYWQoUklTQ1Y2
NFNjcmF0Y2hSZWdpc3Rlci54MzEpCisgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0g
I3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0
T3BlcmFuZH0iCisgICAgICAgIHJpc2N2NjRFbWl0UmVnaXN0ZXJNYXNrKG9wZXJhbmRzWzJdLCBz
aXplKQorICAgIHdoZW4gW1JlZ2lzdGVySUQsIEFkZHJlc3MsIFJlZ2lzdGVySURdCisgICAgICAg
IGlmIG9wZXJhbmRzWzFdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAgIG9wZXJhbmRz
WzFdLnJpc2N2NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxKQorICAgICAgICAgICAg
JGFzbS5wdXRzICIje2xvYWRJbnN0cnVjdGlvbn0geDMxLCAwKHgzMSkiCisgICAgICAgIGVsc2UK
KyAgICAgICAgICAgICRhc20ucHV0cyAiI3tsb2FkSW5zdHJ1Y3Rpb259IHgzMSwgI3tvcGVyYW5k
c1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVuZAorICAgICAgICAkYXNtLnB1dHMgIiN7
aW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBd
LnJpc2N2NjRPcGVyYW5kfSwgeDMxIgorICAgICAgICByaXNjdjY0RW1pdFJlZ2lzdGVyTWFzayhv
cGVyYW5kc1syXSwgc2l6ZSkKKyAgICB3aGVuIFtJbW1lZGlhdGUsIEFkZHJlc3NdCisgICAgICAg
ICRhc20ucHV0cyAibGkgeDMwLCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAg
ICAgaWYgb3BlcmFuZHNbMV0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgb3BlcmFu
ZHNbMV0ucmlzY3Y2NExvYWQoUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzEpCisgICAgICAgICAg
ICAkYXNtLnB1dHMgIiN7bG9hZEluc3RydWN0aW9ufSB4MzEsIDAoeDMxKSIKKyAgICAgICAgZWxz
ZQorICAgICAgICAgICAgJGFzbS5wdXRzICIje2xvYWRJbnN0cnVjdGlvbn0geDMxLCAje29wZXJh
bmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZW5kCisgICAgICAgICRhc20ucHV0cyAi
I3tpbnN0cnVjdGlvbn0geDMwLCB4MzAsIHgzMSIKKyAgICAgICAgaWYgb3BlcmFuZHNbMV0ucmlz
Y3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExvYWQoUklT
Q1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzEpCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7c3RvcmVJ
bnN0cnVjdGlvbn0geDMwLCAwKHgzMSkiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgICRhc20u
cHV0cyAiI3tzdG9yZUluc3RydWN0aW9ufSB4MzAsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJh
bmR9IgorICAgICAgICBlbmQKKyAgICBlbHNlCisgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNo
ZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NEVtaXRNdWxE
aXZBcml0aG1ldGljKG9wZXJhbmRzLCBzaXplLCBvcGVyYXRpb24pCisgICAgcmFpc2UgIlVuc3Vw
cG9ydGVkIHNpemUiIHVubGVzcyBbOncsIDpkXS5pbmNsdWRlPyBzaXplCisKKyAgICBkZWYgYXJp
dGhtZXRpY0luc3RydWN0aW9uKHNpemUsIG9wZXJhdGlvbikKKyAgICAgICAgY2FzZSBvcGVyYXRp
b24KKyAgICAgICAgd2hlbiA6bXVsCisgICAgICAgICAgICBzaXplID09IDp3ID8gIm11bHciIDog
Im11bCIKKyAgICAgICAgd2hlbiA6ZGl2CisgICAgICAgICAgICBzaXplID09IDp3ID8gImRpdnV3
IiA6ICJkaXZ1IgorICAgICAgICBlbHNlCisgICAgICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQg
YXJpdGhtZXRpYyBvcGVyYXRpb24iCisgICAgICAgIGVuZAorICAgIGVuZAorCisgICAgaW5zdHJ1
Y3Rpb24gPSBhcml0aG1ldGljSW5zdHJ1Y3Rpb24oc2l6ZSwgb3BlcmF0aW9uKQorCisgICAgY2Fz
ZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgIHdoZW4gW1JlZ2lzdGVySUQsIFJl
Z2lzdGVySURdCisgICAgICAgIG9wZXJhbmRzID0gW29wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSwg
b3BlcmFuZHNbMV1dCisgICAgd2hlbiBbSW1tZWRpYXRlLCBSZWdpc3RlcklEXQorICAgICAgICBv
cGVyYW5kcyA9IFtvcGVyYW5kc1sxXSwgb3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdXQorICAgIGVu
ZAorCisgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgIHdoZW4gW1Jl
Z2lzdGVySUQsIFJlZ2lzdGVySUQsIFJlZ2lzdGVySURdCisgICAgICAgICRhc20ucHV0cyAiI3tp
bnN0cnVjdGlvbn0gI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0u
cmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICB3aGVu
IFtSZWdpc3RlcklELCBJbW1lZGlhdGUsIFJlZ2lzdGVySURdCisgICAgICAgICRhc20ucHV0cyAi
bGkgeDMxLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgJGFzbS5wdXRz
ICIje2luc3RydWN0aW9ufSAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5k
c1swXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAgICB3aGVuIFtJbW1lZGlhdGUsIFJlZ2lzdGVy
SUQsIFJlZ2lzdGVySURdCisgICAgICAgICRhc20ucHV0cyAibGkgeDMxLCAje29wZXJhbmRzWzBd
LnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSAje29w
ZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgeDMxLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVy
YW5kfSIKKyAgICBlbHNlCisgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhv
cGVyYW5kcykKKyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5j
aChvcGVyYW5kcywgc2l6ZSwgY29uZGl0aW9uKQorICAgIGluc3RydWN0aW9uID0gcmlzY3Y2NENv
bmRpdGlvbmFsQnJhbmNoSW5zdHJ1Y3Rpb24oY29uZGl0aW9uKQorCisgICAgZGVmIHNpZ25FeHRl
bmRGb3JTaXplKHJlZ2lzdGVyLCB0YXJnZXQsIHNpemUpCisgICAgICAgIGNhc2Ugc2l6ZQorICAg
ICAgICB3aGVuIDpiCisgICAgICAgICAgICAkYXNtLnB1dHMgInNsbGkgI3t0YXJnZXR9LCAje3Jl
Z2lzdGVyLnJpc2N2NjRPcGVyYW5kfSwgMjQiCisgICAgICAgICAgICAkYXNtLnB1dHMgInNleHQu
dyAje3RhcmdldH0sICN7dGFyZ2V0fSIKKyAgICAgICAgICAgICRhc20ucHV0cyAic3JhaSAje3Rh
cmdldH0sICN7dGFyZ2V0fSwgMjQiCisgICAgICAgIHdoZW4gOncKKyAgICAgICAgICAgICRhc20u
cHV0cyAic2V4dC53ICN7dGFyZ2V0fSwgI3tyZWdpc3Rlci5yaXNjdjY0T3BlcmFuZH0iCisgICAg
ICAgIHdoZW4gOmQKKyAgICAgICAgICAgICRhc20ucHV0cyAibXYgI3t0YXJnZXR9LCAje3JlZ2lz
dGVyLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZW5kCisgICAgZW5kCisKKyAgICBjYXNlIHJp
c2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0
ZXJJRCwgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgc2lnbkV4dGVuZEZvclNpemUob3Bl
cmFuZHNbMF0sICd4MzAnLCBzaXplKQorICAgICAgICBzaWduRXh0ZW5kRm9yU2l6ZShvcGVyYW5k
c1sxXSwgJ3gzMScsIHNpemUpCisgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0geDMw
LCB4MzEsICN7b3BlcmFuZHNbMl0uYXNtTGFiZWx9IgorICAgIHdoZW4gW1JlZ2lzdGVySUQsIElt
bWVkaWF0ZSwgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgc2lnbkV4dGVuZEZvclNpemUo
b3BlcmFuZHNbMF0sICd4MzAnLCBzaXplKQorICAgICAgICAkYXNtLnB1dHMgImxpIHgzMSwgI3tv
cGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVj
dGlvbn0geDMwLCB4MzEsICN7b3BlcmFuZHNbMl0uYXNtTGFiZWx9IgorICAgIHdoZW4gW1JlZ2lz
dGVySUQsIEFkZHJlc3MsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAgIHNpZ25FeHRlbmRG
b3JTaXplKG9wZXJhbmRzWzBdLCAneDMwJywgc2l6ZSkKKyAgICAgICAgaWYgb3BlcmFuZHNbMV0u
cmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExvYWQo
UklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzEpCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7cmlz
Y3Y2NExvYWRJbnN0cnVjdGlvbihzaXplKX0geDMxLCAwKHgzMSkiCisgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgICRhc20ucHV0cyAiI3tyaXNjdjY0TG9hZEluc3RydWN0aW9uKHNpemUpfSB4MzEs
ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICBlbmQKKyAgICAgICAgJGFz
bS5wdXRzICIje2luc3RydWN0aW9ufSB4MzAsIHgzMSwgI3tvcGVyYW5kc1syXS5hc21MYWJlbH0i
CisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgQmFzZUluZGV4LCBMb2NhbExhYmVsUmVmZXJlbmNlXQor
ICAgICAgICBvcGVyYW5kc1sxXS5yaXNjdjY0TG9hZChSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngz
MSwgUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzApCisgICAgICAgICRhc20ucHV0cyAiI3tyaXNj
djY0TG9hZEluc3RydWN0aW9uKHNpemUpfSB4MzEsIDAoeDMxKSIKKyAgICAgICAgc2lnbkV4dGVu
ZEZvclNpemUob3BlcmFuZHNbMF0sICd4MzAnLCBzaXplKQorICAgICAgICAkYXNtLnB1dHMgIiN7
aW5zdHJ1Y3Rpb259IHgzMCwgeDMxLCAje29wZXJhbmRzWzJdLmFzbUxhYmVsfSIKKyAgICB3aGVu
IFtBZGRyZXNzLCBSZWdpc3RlcklELCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICBpZiBv
cGVyYW5kc1swXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICBvcGVyYW5kc1swXS5y
aXNjdjY0TG9hZChSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMSkKKyAgICAgICAgICAgICRhc20u
cHV0cyAiI3tyaXNjdjY0TG9hZEluc3RydWN0aW9uKHNpemUpfSB4MzAsIDAoeDMxKSIKKyAgICAg
ICAgZWxzZQorICAgICAgICAgICAgJGFzbS5wdXRzICIje3Jpc2N2NjRMb2FkSW5zdHJ1Y3Rpb24o
c2l6ZSl9IHgzMCwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVuZAor
ICAgICAgICBzaWduRXh0ZW5kRm9yU2l6ZShvcGVyYW5kc1sxXSwgJ3gzMScsIHNpemUpCisgICAg
ICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0geDMwLCB4MzEsICN7b3BlcmFuZHNbMl0uYXNt
TGFiZWx9IgorICAgIHdoZW4gW0FkZHJlc3MsIEltbWVkaWF0ZSwgTG9jYWxMYWJlbFJlZmVyZW5j
ZV0KKyAgICAgICAgaWYgb3BlcmFuZHNbMF0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAg
ICAgb3BlcmFuZHNbMF0ucmlzY3Y2NExvYWQoUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzEpCisg
ICAgICAgICAgICAkYXNtLnB1dHMgIiN7cmlzY3Y2NExvYWRJbnN0cnVjdGlvbihzaXplKX0geDMw
LCAwKHgzMSkiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tyaXNjdjY0
TG9hZEluc3RydWN0aW9uKHNpemUpfSB4MzAsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9
IgorICAgICAgICBlbmQKKyAgICAgICAgJGFzbS5wdXRzICJsaSB4MzEsICN7b3BlcmFuZHNbMV0u
cmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259IHgzMCwg
eDMxLCAje29wZXJhbmRzWzJdLmFzbUxhYmVsfSIKKyAgICBlbHNlCisgICAgICAgIHJpc2N2NjRS
YWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICBlbmQKK2VuZAorCitkZWYgcmlz
Y3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3BlcmFuZHMsIHNpemUsIHRlc3QpCisg
ICAgZGVmIGJyYW5jaEluc3RydWN0aW9uKHRlc3QpCisgICAgICAgIGNhc2UgdGVzdAorICAgICAg
ICB3aGVuIDp6CisgICAgICAgICAgICAiYmVxeiIKKyAgICAgICAgd2hlbiA6bnoKKyAgICAgICAg
ICAgICJibmV6IgorICAgICAgICB3aGVuIDpzCisgICAgICAgICAgICAiYmx0eiIKKyAgICAgICAg
ZWxzZQorICAgICAgICBlbmQKKyAgICBlbmQKKworICAgIGRlZiBzaWduRXh0ZW5kRm9yU2l6ZSh0
YXJnZXQsIHNpemUpCisgICAgICAgIGNhc2Ugc2l6ZQorICAgICAgICB3aGVuIDpiCisgICAgICAg
ICAgICAkYXNtLnB1dHMgInNsbGkgI3t0YXJnZXR9LCAje3RhcmdldH0sIDI0IgorICAgICAgICAg
ICAgJGFzbS5wdXRzICJzZXh0LncgI3t0YXJnZXR9LCAje3RhcmdldH0iCisgICAgICAgICAgICAk
YXNtLnB1dHMgInNyYWkgI3t0YXJnZXR9LCAje3RhcmdldH0sIDI0IgorICAgICAgICB3aGVuIDpo
CisgICAgICAgICAgICAkYXNtLnB1dHMgInNsbGkgI3t0YXJnZXR9LCAje3RhcmdldH0sIDE2Igor
ICAgICAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgI3t0YXJnZXR9LCAje3RhcmdldH0iCisgICAg
ICAgICAgICAkYXNtLnB1dHMgInNyYWkgI3t0YXJnZXR9LCAje3RhcmdldH0sIDE2IgorICAgICAg
ICB3aGVuIDp3CisgICAgICAgICAgICAkYXNtLnB1dHMgInNleHQudyAje3RhcmdldH0sICN7dGFy
Z2V0fSIKKyAgICAgICAgd2hlbiA6ZAorICAgICAgICAgICAgcmV0dXJuCisgICAgICAgIGVuZAor
ICAgIGVuZAorCisgICAgYkluc3RydWN0aW9uID0gYnJhbmNoSW5zdHJ1Y3Rpb24odGVzdCkKKyAg
ICBsb2FkSW5zdHJ1Y3Rpb24gPSByaXNjdjY0TG9hZEluc3RydWN0aW9uKHNpemUpCisKKyAgICBj
YXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwg
TG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgY2FzZSB0ZXN0CisgICAgICAgIHdoZW4gOnMK
KyAgICAgICAgICAgICRhc20ucHV0cyAibXYgeDMxLCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVy
YW5kfSIKKyAgICAgICAgICAgIHNpZ25FeHRlbmRGb3JTaXplKCd4MzEnLCBzaXplKQorICAgICAg
ICAgICAgJGFzbS5wdXRzICIje2JJbnN0cnVjdGlvbn0geDMxLCAje29wZXJhbmRzWzFdLmFzbUxh
YmVsfSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgJGFzbS5wdXRzICIje2JJbnN0cnVjdGlv
bn0gI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0uYXNtTGFiZWx9
IgorICAgICAgICBlbmQKKyAgICB3aGVuIFtSZWdpc3RlcklELCBSZWdpc3RlcklELCBMb2NhbExh
YmVsUmVmZXJlbmNlXQorICAgICAgICAkYXNtLnB1dHMgImFuZCB4MzEsICN7b3BlcmFuZHNbMF0u
cmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAg
c2lnbkV4dGVuZEZvclNpemUoJ3gzMScsIHNpemUpCisgICAgICAgICRhc20ucHV0cyAiI3tiSW5z
dHJ1Y3Rpb259IHgzMSwgI3tvcGVyYW5kc1syXS5hc21MYWJlbH0iCisgICAgd2hlbiBbUmVnaXN0
ZXJJRCwgSW1tZWRpYXRlLCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICBpZiBvcGVyYW5k
c1sxXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICBvcGVyYW5kc1sxXS5yaXNjdjY0
TG9hZChSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMSkKKyAgICAgICAgICAgICRhc20ucHV0cyAi
YW5kIHgzMSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAgICAgICAgZWxz
ZQorICAgICAgICAgICAgJGFzbS5wdXRzICJhbmRpIHgzMSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0
T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICBlbmQKKyAg
ICAgICAgc2lnbkV4dGVuZEZvclNpemUoJ3gzMScsIHNpemUpCisgICAgICAgICRhc20ucHV0cyAi
I3tiSW5zdHJ1Y3Rpb259IHgzMSwgI3tvcGVyYW5kc1syXS5hc21MYWJlbH0iCisgICAgd2hlbiBb
QWRkcmVzcywgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgaWYgb3BlcmFuZHNbMF0ucmlz
Y3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgb3BlcmFuZHNbMF0ucmlzY3Y2NExvYWQoUklT
Q1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzEpCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7bG9hZElu
c3RydWN0aW9ufSB4MzEsIDAoeDMxKSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgJGFzbS5w
dXRzICIje2xvYWRJbnN0cnVjdGlvbn0geDMxLCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5k
fSIKKyAgICAgICAgZW5kCisgICAgICAgICRhc20ucHV0cyAiI3tiSW5zdHJ1Y3Rpb259IHgzMSwg
I3tvcGVyYW5kc1sxXS5hc21MYWJlbH0iCisgICAgd2hlbiBbQWRkcmVzcywgSW1tZWRpYXRlLCBM
b2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICBpZiBvcGVyYW5kc1swXS5yaXNjdjY0UmVxdWly
ZXNMb2FkCisgICAgICAgICAgICBvcGVyYW5kc1swXS5yaXNjdjY0TG9hZChSSVNDVjY0U2NyYXRj
aFJlZ2lzdGVyLngzMSkKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tsb2FkSW5zdHJ1Y3Rpb259
IHgzMCwgMCh4MzEpIgorICAgICAgICBlbHNlCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7bG9h
ZEluc3RydWN0aW9ufSB4MzAsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAg
ICBlbmQKKyAgICAgICAgaWYgb3BlcmFuZHNbMV0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAg
ICAgICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExvYWQoUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzEp
CisgICAgICAgICAgICAkYXNtLnB1dHMgImFuZCB4MzEsIHgzMCwgeDMxIgorICAgICAgICBlbHNl
CisgICAgICAgICAgICAkYXNtLnB1dHMgImFuZGkgeDMxLCB4MzAsICN7b3BlcmFuZHNbMV0ucmlz
Y3Y2NE9wZXJhbmR9IgorICAgICAgICBlbmQKKyAgICAgICAgc2lnbkV4dGVuZEZvclNpemUoJ3gz
MScsIHNpemUpCisgICAgICAgICRhc20ucHV0cyAiI3tiSW5zdHJ1Y3Rpb259IHgzMSwgI3tvcGVy
YW5kc1syXS5hc21MYWJlbH0iCisgICAgd2hlbiBbQmFzZUluZGV4LCBMb2NhbExhYmVsUmVmZXJl
bmNlXQorICAgICAgICBvcGVyYW5kc1swXS5yaXNjdjY0TG9hZChSSVNDVjY0U2NyYXRjaFJlZ2lz
dGVyLngzMSwgUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzApCisgICAgICAgICRhc20ucHV0cyAi
I3tsb2FkSW5zdHJ1Y3Rpb259IHgzMSwgMCh4MzEpIgorICAgICAgICAkYXNtLnB1dHMgIiN7Yklu
c3RydWN0aW9ufSB4MzEsICN7b3BlcmFuZHNbMV0uYXNtTGFiZWx9IgorICAgIGVsc2UKKyAgICAg
ICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgIGVuZAorZW5k
CisKK2RlZiByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoRm9yQWRkaXRpb25PcGVyYXRpb24o
b3BlcmFuZHMsIHNpemUsIG9wZXJhdGlvbiwgdGVzdCkKKyAgICBkZWYgYWRkaXRpb25JbnN0cnVj
dGlvbihzaXplLCBvcGVyYXRpb24pCisgICAgICAgIGNhc2Ugb3BlcmF0aW9uCisgICAgICAgIHdo
ZW4gOmFkZAorICAgICAgICAgICAgc2l6ZSA9PSA6dyA/ICJhZGR3IiA6ICJhZGQiCisgICAgICAg
IHdoZW4gOnN1YgorICAgICAgICAgICAgc2l6ZSA9PSA6dyA/ICJzdWJ3IiA6ICJzdWIiCisgICAg
ICAgIGVsc2UKKyAgICAgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCBhcml0aG1ldGljIG9wZXJh
dGlvbiIKKyAgICAgICAgZW5kCisgICAgZW5kCisKKyAgICBkZWYgZW1pdEJyYW5jaEZvclRlc3Qo
dGVzdCwgdGFyZ2V0LCBsYWJlbCkKKyAgICAgICAgY2FzZSB0ZXN0CisgICAgICAgIHdoZW4gOnoK
KyAgICAgICAgICAgICRhc20ucHV0cyAiYmVxeiAje3RhcmdldC5yaXNjdjY0T3BlcmFuZH0sICN7
bGFiZWwuYXNtTGFiZWx9IgorICAgICAgICB3aGVuIDpuegorICAgICAgICAgICAgJGFzbS5wdXRz
ICJibmV6ICN7dGFyZ2V0LnJpc2N2NjRPcGVyYW5kfSwgI3tsYWJlbC5hc21MYWJlbH0iCisgICAg
ICAgIHdoZW4gOnMKKyAgICAgICAgICAgICRhc20ucHV0cyAiYmx0eiAje3RhcmdldC5yaXNjdjY0
T3BlcmFuZH0sICN7bGFiZWwuYXNtTGFiZWx9IgorICAgICAgICBlbHNlCisgICAgICAgICAgICBy
YWlzZSAiVW5zdXBwb3J0ZWQgdGVzdCIKKyAgICAgICAgZW5kCisgICAgZW5kCisKKyAgICBpbnN0
cnVjdGlvbiA9IGFkZGl0aW9uSW5zdHJ1Y3Rpb24oc2l6ZSwgb3BlcmF0aW9uKQorICAgIGxvYWRJ
bnN0cnVjdGlvbiA9IHJpc2N2NjRMb2FkSW5zdHJ1Y3Rpb24oc2l6ZSkKKyAgICBzdG9yZUluc3Ry
dWN0aW9uID0gcmlzY3Y2NFN0b3JlSW5zdHJ1Y3Rpb24oc2l6ZSkKKworICAgIGNhc2UgcmlzY3Y2
NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICB3aGVuIFtSZWdpc3RlcklELCBSZWdpc3RlcklE
LCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICBvcGVyYW5kcyA9IFtvcGVyYW5kc1sxXSwg
b3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdLCBvcGVyYW5kc1syXV0KKyAgICB3aGVuIFtJbW1lZGlh
dGUsIFJlZ2lzdGVySUQsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAgIG9wZXJhbmRzID0g
W29wZXJhbmRzWzFdLCBvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzJdXQorICAg
IGVuZAorCisgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgIHdoZW4g
W1JlZ2lzdGVySUQsIFJlZ2lzdGVySUQsIFJlZ2lzdGVySUQsIExvY2FsTGFiZWxSZWZlcmVuY2Vd
CisgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0gI3tvcGVyYW5kc1syXS5yaXNjdjY0
T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJp
c2N2NjRPcGVyYW5kfSIKKyAgICAgICAgJGFzbS5wdXRzICJtdiB4MzAsICN7b3BlcmFuZHNbMl0u
cmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICByaXNjdjY0RW1pdFJlZ2lzdGVyTWFzayhvcGVyYW5k
c1syXSwgc2l6ZSkKKyAgICAgICAgZW1pdEJyYW5jaEZvclRlc3QodGVzdCwgUklTQ1Y2NFNjcmF0
Y2hSZWdpc3Rlci54MzAsIG9wZXJhbmRzWzNdKQorICAgIHdoZW4gW1JlZ2lzdGVySUQsIEltbWVk
aWF0ZSwgUmVnaXN0ZXJJRCwgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgJGFzbS5wdXRz
ICJsaSB4MzEsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAkYXNtLnB1
dHMgIiN7aW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJh
bmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgeDMxIgorICAgICAgICAkYXNtLnB1dHMgIm12IHgzMCwg
I3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIHJpc2N2NjRFbWl0UmVnaXN0
ZXJNYXNrKG9wZXJhbmRzWzJdLCBzaXplKQorICAgICAgICBlbWl0QnJhbmNoRm9yVGVzdCh0ZXN0
LCBSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMCwgb3BlcmFuZHNbM10pCisgICAgd2hlbiBbSW1t
ZWRpYXRlLCBBZGRyZXNzLCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICAkYXNtLnB1dHMg
ImxpIHgzMCwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGlmIG9wZXJh
bmRzWzFdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAgIG9wZXJhbmRzWzFdLnJpc2N2
NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxKQorICAgICAgICAgICAgJGFzbS5wdXRz
ICIje2xvYWRJbnN0cnVjdGlvbn0geDMxLCAwKHgzMSkiCisgICAgICAgIGVsc2UKKyAgICAgICAg
ICAgICRhc20ucHV0cyAiI3tsb2FkSW5zdHJ1Y3Rpb259IHgzMSwgI3tvcGVyYW5kc1sxXS5yaXNj
djY0T3BlcmFuZH0iCisgICAgICAgIGVuZAorICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rp
b259IHgzMCwgeDMwLCB4MzEiCisgICAgICAgIGlmIG9wZXJhbmRzWzFdLnJpc2N2NjRSZXF1aXJl
c0xvYWQKKyAgICAgICAgICAgIG9wZXJhbmRzWzFdLnJpc2N2NjRMb2FkKFJJU0NWNjRTY3JhdGNo
UmVnaXN0ZXIueDMxKQorICAgICAgICAgICAgJGFzbS5wdXRzICIje3N0b3JlSW5zdHJ1Y3Rpb259
IHgzMCwgMCh4MzEpIgorICAgICAgICBlbHNlCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7c3Rv
cmVJbnN0cnVjdGlvbn0geDMwLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAg
ICAgZW5kCisgICAgICAgIGVtaXRCcmFuY2hGb3JUZXN0KHRlc3QsIFJJU0NWNjRTY3JhdGNoUmVn
aXN0ZXIueDMwLCBvcGVyYW5kc1syXSkKKyAgICBlbHNlCisgICAgICAgIHJpc2N2NjRSYWlzZU1p
c21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NEVt
aXRDb25kaXRpb25hbEJyYW5jaEZvck11bHRpcGxpY2F0aW9uT3BlcmF0aW9uKG9wZXJhbmRzLCBz
aXplLCB0ZXN0KQorICAgIHJhaXNlICJVbnN1cHBvcnRlZCBzaXplIiB1bmxlc3Mgc2l6ZSA9PSA6
dworCisgICAgZGVmIGVtaXRNdWx0aXBsaWNhdGlvbihsaHMsIHJocykKKyAgICAgICAgJGFzbS5w
dXRzICJzZXh0LncgeDMwLCAje2xocy5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICRhc20ucHV0
cyAic2V4dC53IHgzMSwgI3tyaHMucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAkYXNtLnB1dHMg
Im11bCB4MzAsIHgzMCwgeDMxIgorICAgIGVuZAorCisgICAgZGVmIGVtaXRCcmFuY2hGb3JUZXN0
KHRlc3QsIGxhYmVsKQorICAgICAgICBjYXNlIHRlc3QKKyAgICAgICAgd2hlbiA6egorICAgICAg
ICAgICAgJGFzbS5wdXRzICJiZXF6IHgzMCwgI3tsYWJlbC5hc21MYWJlbH0iCisgICAgICAgIHdo
ZW4gOm56CisgICAgICAgICAgICAkYXNtLnB1dHMgImJuZXogeDMwLCAje2xhYmVsLmFzbUxhYmVs
fSIKKyAgICAgICAgd2hlbiA6cworICAgICAgICAgICAgJGFzbS5wdXRzICJibHR6IHgzMCwgI3ts
YWJlbC5hc21MYWJlbH0iCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJhaXNlICJVbnN1cHBv
cnRlZCB0ZXN0IgorICAgICAgICBlbmQKKyAgICBlbmQKKworICAgIGNhc2UgcmlzY3Y2NE9wZXJh
bmRUeXBlcyhvcGVyYW5kcykKKyAgICB3aGVuIFtSZWdpc3RlcklELCBSZWdpc3RlcklELCBMb2Nh
bExhYmVsUmVmZXJlbmNlXQorICAgICAgICBlbWl0TXVsdGlwbGljYXRpb24ob3BlcmFuZHNbMF0s
IG9wZXJhbmRzWzFdKQorICAgICAgICAkYXNtLnB1dHMgIm12ICN7b3BlcmFuZHNbMV0ucmlzY3Y2
NE9wZXJhbmR9LCB4MzAiCisgICAgICAgIHJpc2N2NjRFbWl0UmVnaXN0ZXJNYXNrKG9wZXJhbmRz
WzFdLCBzaXplKQorCisgICAgICAgIGVtaXRCcmFuY2hGb3JUZXN0KHRlc3QsIG9wZXJhbmRzWzJd
KQorICAgIHdoZW4gW0ltbWVkaWF0ZSwgUmVnaXN0ZXJJRCwgTG9jYWxMYWJlbFJlZmVyZW5jZV0K
KyAgICAgICAgJGFzbS5wdXRzICJsaSB4MzAsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9
IgorICAgICAgICBlbWl0TXVsdGlwbGljYXRpb24oUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzAs
IG9wZXJhbmRzWzFdKQorICAgICAgICAkYXNtLnB1dHMgIm12ICN7b3BlcmFuZHNbMV0ucmlzY3Y2
NE9wZXJhbmR9LCB4MzAiCisgICAgICAgIHJpc2N2NjRFbWl0UmVnaXN0ZXJNYXNrKG9wZXJhbmRz
WzFdLCBzaXplKQorCisgICAgICAgIGVtaXRCcmFuY2hGb3JUZXN0KHRlc3QsIG9wZXJhbmRzWzJd
KQorICAgIGVsc2UKKyAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJh
bmRzKQorICAgIGVuZAorZW5kCisKK2RlZiByaXNjdjY0RW1pdE92ZXJmbG93QnJhbmNoRm9yT3Bl
cmF0aW9uKG9wZXJhbmRzLCBzaXplLCBvcGVyYXRpb24pCisgICAgcmFpc2UgIlVuc3VwcG9ydGVk
IHNpemUiIHVubGVzcyBzaXplID09IDp3CisKKyAgICBkZWYgb3BlcmF0aW9uSW5zdHJ1Y3Rpb24o
b3BlcmF0aW9uKQorICAgICAgICBjYXNlIG9wZXJhdGlvbgorICAgICAgICB3aGVuIDphZGQKKyAg
ICAgICAgICAgICJhZGQiCisgICAgICAgIHdoZW4gOnN1YgorICAgICAgICAgICAgInN1YiIKKyAg
ICAgICAgd2hlbiA6bXVsCisgICAgICAgICAgICAibXVsIgorICAgICAgICBlbHNlCisgICAgICAg
ICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgb3BlcmF0aW9uIgorICAgICAgICBlbmQKKyAgICBlbmQK
KworICAgIGluc3RydWN0aW9uID0gb3BlcmF0aW9uSW5zdHJ1Y3Rpb24ob3BlcmF0aW9uKQorCisg
ICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgIHdoZW4gW1JlZ2lzdGVy
SUQsIFJlZ2lzdGVySUQsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAgIG9wZXJhbmRzID0g
W29wZXJhbmRzWzFdLCBvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzJdXQorICAg
IHdoZW4gW0ltbWVkaWF0ZSwgUmVnaXN0ZXJJRCwgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAg
ICAgb3BlcmFuZHMgPSBbb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSwgb3Bl
cmFuZHNbMl1dCisgICAgZW5kCisKKyAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFu
ZHMpCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCwgTG9jYWxM
YWJlbFJlZmVyZW5jZV0KKyAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgeDMwLCAje29wZXJhbmRz
WzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgeDMxLCAje29w
ZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0
aW9ufSB4MzAsIHgzMCwgeDMxIgorCisgICAgICAgICRhc20ucHV0cyAibXYgI3tvcGVyYW5kc1sy
XS5yaXNjdjY0T3BlcmFuZH0sIHgzMCIKKyAgICAgICAgcmlzY3Y2NEVtaXRSZWdpc3Rlck1hc2so
b3BlcmFuZHNbMl0sIHNpemUpCisKKyAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgeDMxLCB4MzAi
CisgICAgICAgICRhc20ucHV0cyAiYm5lIHgzMCwgeDMxLCAje29wZXJhbmRzWzNdLmFzbUxhYmVs
fSIKKyAgICB3aGVuIFtSZWdpc3RlcklELCBJbW1lZGlhdGUsIFJlZ2lzdGVySUQsIExvY2FsTGFi
ZWxSZWZlcmVuY2VdCisgICAgICAgICRhc20ucHV0cyAic2V4dC53IHgzMCwgI3tvcGVyYW5kc1sw
XS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICRhc20ucHV0cyAibGkgeDMxLCAje29wZXJhbmRz
WzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgeDMxLCB4MzEi
CisgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0geDMwLCB4MzAsIHgzMSIKKworICAg
ICAgICAkYXNtLnB1dHMgIm12ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCB4MzAiCisg
ICAgICAgIHJpc2N2NjRFbWl0UmVnaXN0ZXJNYXNrKG9wZXJhbmRzWzJdLCBzaXplKQorCisgICAg
ICAgICRhc20ucHV0cyAic2V4dC53IHgzMSwgeDMwIgorICAgICAgICAkYXNtLnB1dHMgImJuZSB4
MzAsIHgzMSwgI3tvcGVyYW5kc1szXS5hc21MYWJlbH0iCisgICAgZWxzZQorICAgICAgICByaXNj
djY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgZW5kCitlbmQKKworZGVm
IHJpc2N2NjRFbWl0Q29tcGFyZShvcGVyYW5kcywgc2l6ZSwgY29uZGl0aW9uKQorICAgIGRlZiBz
aWduRXh0ZW5kUmVnaXN0ZXJGb3JTaXplKHJlZ2lzdGVyLCB0YXJnZXQsIHNpemUpCisgICAgICAg
IGNhc2Ugc2l6ZQorICAgICAgICB3aGVuIDpiCisgICAgICAgICAgICAkYXNtLnB1dHMgInNsbGkg
I3t0YXJnZXR9LCAje3JlZ2lzdGVyLnJpc2N2NjRPcGVyYW5kfSwgMjQiCisgICAgICAgICAgICAk
YXNtLnB1dHMgInNleHQudyAje3RhcmdldH0sICN7dGFyZ2V0fSIKKyAgICAgICAgICAgICRhc20u
cHV0cyAic3JhaSAje3RhcmdldH0sICN7dGFyZ2V0fSwgMjQiCisgICAgICAgIHdoZW4gOncKKyAg
ICAgICAgICAgICRhc20ucHV0cyAic2V4dC53ICN7dGFyZ2V0fSwgI3tyZWdpc3Rlci5yaXNjdjY0
T3BlcmFuZH0iCisgICAgICAgIHdoZW4gOmQKKyAgICAgICAgICAgICRhc20ucHV0cyAibXYgI3t0
YXJnZXR9LCAje3JlZ2lzdGVyLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZWxzZQorICAgICAg
ICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIHNpemUiCisgICAgICAgIGVuZAorICAgIGVuZAorCisg
ICAgZGVmIHNpZ25FeHRlbmRJbW1lZGlhdGVGb3JTaXplKGltbWVkaWF0ZSwgdGFyZ2V0LCBzaXpl
KQorICAgICAgICAkYXNtLnB1dHMgImxpICN7dGFyZ2V0fSwgI3tpbW1lZGlhdGUucmlzY3Y2NE9w
ZXJhbmR9IgorICAgICAgICBjYXNlIHNpemUKKyAgICAgICAgd2hlbiA6YgorICAgICAgICAgICAg
JGFzbS5wdXRzICJzbGxpICN7dGFyZ2V0fSwgI3t0YXJnZXR9LCAyNCIKKyAgICAgICAgICAgICRh
c20ucHV0cyAic2V4dC53ICN7dGFyZ2V0fSwgI3t0YXJnZXR9IgorICAgICAgICAgICAgJGFzbS5w
dXRzICJzcmFpICN7dGFyZ2V0fSwgI3t0YXJnZXR9LCAyNCIKKyAgICAgICAgd2hlbiA6dworICAg
ICAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgI3t0YXJnZXR9LCAje3RhcmdldH0iCisgICAgICAg
IHdoZW4gOmQKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIHNp
emUiCisgICAgICAgIGVuZAorICAgIGVuZAorCisgICAgZGVmIGxvYWRBbmRTaWduRXh0ZW5kQWRk
cmVzc0ZvclNpemUoYWRkcmVzcywgdGFyZ2V0LCBzaXplKQorICAgICAgICBpZiBhZGRyZXNzLnJp
c2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAgIGFkZHJlc3MucmlzY3Y2NExvYWQoUklTQ1Y2
NFNjcmF0Y2hSZWdpc3Rlci54MzEpCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7cmlzY3Y2NExv
YWRJbnN0cnVjdGlvbihzaXplKX0gI3t0YXJnZXR9LCAwKHgzMSkiCisgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgICRhc20ucHV0cyAiI3tyaXNjdjY0TG9hZEluc3RydWN0aW9uKHNpemUpfSAje3Rh
cmdldH0sICN7YWRkcmVzcy5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVuZAorICAgIGVuZAor
CisgICAgZGVmIHNldEZvckNvbmRpdGlvbihsaHMsIHJocywgdGFyZ2V0LCBjb25kaXRpb24pCisg
ICAgICAgIGNhc2UgY29uZGl0aW9uCisgICAgICAgIHdoZW4gOmVxCisgICAgICAgICAgICAkYXNt
LnB1dHMgInN1YiB4MzEsICN7bGhzfSwgI3tyaHN9IgorICAgICAgICAgICAgJGFzbS5wdXRzICJz
ZXF6ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEiCisgICAgICAgIHdoZW4gOm5l
cQorICAgICAgICAgICAgJGFzbS5wdXRzICJzdWIgeDMxLCAje2xoc30sICN7cmhzfSIKKyAgICAg
ICAgICAgICRhc20ucHV0cyAic25leiAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgeDMx
IgorICAgICAgICB3aGVuIDphCisgICAgICAgICAgICAkYXNtLnB1dHMgInNsdHUgI3tvcGVyYW5k
c1syXS5yaXNjdjY0T3BlcmFuZH0sICN7cmhzfSwgI3tsaHN9IgorICAgICAgICB3aGVuIDphZXEK
KyAgICAgICAgICAgICRhc20ucHV0cyAic2x0dSAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5k
fSwgI3tsaHN9LCAje3Joc30iCisgICAgICAgICAgICAkYXNtLnB1dHMgInhvcmkgI3tvcGVyYW5k
c1syXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAxIgor
ICAgICAgICB3aGVuIDpiCisgICAgICAgICAgICAkYXNtLnB1dHMgInNsdHUgI3tvcGVyYW5kc1sy
XS5yaXNjdjY0T3BlcmFuZH0sICN7bGhzfSwgI3tyaHN9IgorICAgICAgICB3aGVuIDpiZXEKKyAg
ICAgICAgICAgICRhc20ucHV0cyAic2x0dSAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwg
I3tyaHN9LCAje2xoc30iCisgICAgICAgICAgICAkYXNtLnB1dHMgInhvcmkgI3tvcGVyYW5kc1sy
XS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAxIgorICAg
ICAgICB3aGVuIDpsdAorICAgICAgICAgICAgJGFzbS5wdXRzICJzbHQgI3t0YXJnZXQucmlzY3Y2
NE9wZXJhbmR9LCAje2xoc30sICN7cmhzfSIKKyAgICAgICAgd2hlbiA6bHRlcQorICAgICAgICAg
ICAgJGFzbS5wdXRzICJzbHQgI3t0YXJnZXQucmlzY3Y2NE9wZXJhbmR9LCAje3Joc30sICN7bGhz
fSIKKyAgICAgICAgICAgICRhc20ucHV0cyAieG9yaSAje3RhcmdldC5yaXNjdjY0T3BlcmFuZH0s
ICN7dGFyZ2V0LnJpc2N2NjRPcGVyYW5kfSwgMSIKKyAgICAgICAgd2hlbiA6Z3QKKyAgICAgICAg
ICAgICRhc20ucHV0cyAic2x0ICN7dGFyZ2V0LnJpc2N2NjRPcGVyYW5kfSwgI3tyaHN9LCAje2xo
c30iCisgICAgICAgIHdoZW4gOmd0ZXEKKyAgICAgICAgICAgICRhc20ucHV0cyAic2x0ICN7dGFy
Z2V0LnJpc2N2NjRPcGVyYW5kfSwgI3tsaHN9LCAje3Joc30iCisgICAgICAgICAgICAkYXNtLnB1
dHMgInhvcmkgI3t0YXJnZXQucmlzY3Y2NE9wZXJhbmR9LCAje3RhcmdldC5yaXNjdjY0T3BlcmFu
ZH0sIDEiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCBjb25k
aXRpb24iCisgICAgICAgIGVuZAorICAgIGVuZAorCisgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5
cGVzKG9wZXJhbmRzKQorICAgIHdoZW4gW1JlZ2lzdGVySUQsIFJlZ2lzdGVySUQsIFJlZ2lzdGVy
SURdCisgICAgICAgIHNpZ25FeHRlbmRSZWdpc3RlckZvclNpemUob3BlcmFuZHNbMF0sICd4MzAn
LCBzaXplKQorICAgICAgICBzaWduRXh0ZW5kUmVnaXN0ZXJGb3JTaXplKG9wZXJhbmRzWzFdLCAn
eDMxJywgc2l6ZSkKKyAgICAgICAgc2V0Rm9yQ29uZGl0aW9uKCd4MzAnLCAneDMxJywgb3BlcmFu
ZHNbMl0sIGNvbmRpdGlvbikKKyAgICB3aGVuIFtSZWdpc3RlcklELCBJbW1lZGlhdGUsIFJlZ2lz
dGVySURdCisgICAgICAgIHNpZ25FeHRlbmRSZWdpc3RlckZvclNpemUob3BlcmFuZHNbMF0sICd4
MzAnLCBzaXplKQorICAgICAgICBzaWduRXh0ZW5kSW1tZWRpYXRlRm9yU2l6ZShvcGVyYW5kc1sx
XSwgJ3gzMScsIHNpemUpCisgICAgICAgIHNldEZvckNvbmRpdGlvbigneDMwJywgJ3gzMScsIG9w
ZXJhbmRzWzJdLCBjb25kaXRpb24pCisgICAgd2hlbiBbQWRkcmVzcywgUmVnaXN0ZXJJRCwgUmVn
aXN0ZXJJRF0KKyAgICAgICAgbG9hZEFuZFNpZ25FeHRlbmRBZGRyZXNzRm9yU2l6ZShvcGVyYW5k
c1swXSwgJ3gzMCcsIHNpemUpCisgICAgICAgIHNpZ25FeHRlbmRSZWdpc3RlckZvclNpemUob3Bl
cmFuZHNbMV0sICd4MzEnLCBzaXplKQorICAgICAgICBzZXRGb3JDb25kaXRpb24oJ3gzMCcsICd4
MzEnLCBvcGVyYW5kc1syXSwgY29uZGl0aW9uKQorICAgIHdoZW4gW0FkZHJlc3MsIEltbWVkaWF0
ZSwgUmVnaXN0ZXJJRF0KKyAgICAgICAgbG9hZEFuZFNpZ25FeHRlbmRBZGRyZXNzRm9yU2l6ZShv
cGVyYW5kc1swXSwgJ3gzMCcsIHNpemUpCisgICAgICAgIHNpZ25FeHRlbmRJbW1lZGlhdGVGb3JT
aXplKG9wZXJhbmRzWzFdLCAneDMxJywgc2l6ZSkKKyAgICAgICAgc2V0Rm9yQ29uZGl0aW9uKCd4
MzAnLCAneDMxJywgb3BlcmFuZHNbMl0sIGNvbmRpdGlvbikKKyAgICBlbHNlCisgICAgICAgIHJp
c2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICBlbmQKK2VuZAorCitk
ZWYgcmlzY3Y2NEVtaXRUZXN0KG9wZXJhbmRzLCBzaXplLCB0ZXN0KQorICAgIGRlZiB0ZXN0SW5z
dHJ1Y3Rpb24odGVzdCkKKyAgICAgICAgY2FzZSB0ZXN0CisgICAgICAgIHdoZW4gOnoKKyAgICAg
ICAgICAgICJzZXF6IgorICAgICAgICB3aGVuIDpuegorICAgICAgICAgICAgInNuZXoiCisgICAg
ICAgIGVsc2UKKyAgICAgICAgICAgIHJhaXNlICJVbmtub3duIHRlc3QgdHlwZSIKKyAgICAgICAg
ZW5kCisgICAgZW5kCisKKyAgICBpbnN0cnVjdGlvbiA9IHRlc3RJbnN0cnVjdGlvbih0ZXN0KQor
ICAgIGxvYWRJbnN0cnVjdGlvbiA9IHJpc2N2NjRaZXJvRXh0ZW5kZWRMb2FkSW5zdHJ1Y3Rpb24o
c2l6ZSkKKworICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICB3aGVu
IFtSZWdpc3RlcklELCBSZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAgICAgICAkYXNtLnB1dHMg
ImFuZCB4MzEsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJp
c2N2NjRPcGVyYW5kfSIKKyAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSAje29wZXJh
bmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgeDMxIgorICAgIHdoZW4gW1JlZ2lzdGVySUQsIEltbWVk
aWF0ZSwgUmVnaXN0ZXJJRF0KKyAgICAgICAgaWYgb3BlcmFuZHNbMV0ucmlzY3Y2NFJlcXVpcmVz
TG9hZAorICAgICAgICAgICAgJGFzbS5wdXRzICJsaSB4MzEsICN7b3BlcmFuZHNbMV0ucmlzY3Y2
NE9wZXJhbmR9IgorICAgICAgICAgICAgJGFzbS5wdXRzICJhbmQgeDMxLCAje29wZXJhbmRzWzBd
LnJpc2N2NjRPcGVyYW5kfSwgeDMxIgorICAgICAgICBlbHNlCisgICAgICAgICAgICAkYXNtLnB1
dHMgImFuZGkgeDMxLCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sx
XS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVuZAorICAgICAgICAkYXNtLnB1dHMgIiN7aW5z
dHJ1Y3Rpb259ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEiCisgICAgd2hlbiBb
QWRkcmVzcywgSW1tZWRpYXRlLCBSZWdpc3RlcklEXQorICAgICAgICBpZiBvcGVyYW5kc1swXS5y
aXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICBvcGVyYW5kc1swXS5yaXNjdjY0TG9hZChS
SVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMSkKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tsb2Fk
SW5zdHJ1Y3Rpb259IHgzMSwgMCh4MzEpIgorICAgICAgICBlbHNlCisgICAgICAgICAgICAkYXNt
LnB1dHMgIiN7bG9hZEluc3RydWN0aW9ufSB4MzEsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJh
bmR9IgorICAgICAgICBlbmQKKyAgICAgICAgaWYgb3BlcmFuZHNbMV0ucmlzY3Y2NFJlcXVpcmVz
TG9hZAorICAgICAgICAgICAgJGFzbS5wdXRzICJsaSB4MzAsICN7b3BlcmFuZHNbMV0ucmlzY3Y2
NE9wZXJhbmR9IgorICAgICAgICAgICAgJGFzbS5wdXRzICJhbmQgeDMxLCB4MzAsIHgzMSIKKyAg
ICAgICAgZWxzZQorICAgICAgICAgICAgJGFzbS5wdXRzICJhbmRpIHgzMSwgeDMxLCAje29wZXJh
bmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZW5kCisgICAgICAgICRhc20ucHV0cyAi
I3tpbnN0cnVjdGlvbn0gI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAgICBl
bHNlCisgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAg
ICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NEVtaXRMb2dpY2FsT3BlcmF0aW9uKG9wZXJhbmRzLCBz
aXplLCBvcGVyYXRpb24pCisgICAgZGVmIG9wSW5zdHJ1Y3Rpb24ob3BlcmF0aW9uKQorICAgICAg
ICBjYXNlIG9wZXJhdGlvbgorICAgICAgICB3aGVuIDphbmQKKyAgICAgICAgICAgICJhbmQiCisg
ICAgICAgIHdoZW4gOm9yCisgICAgICAgICAgICAib3IiCisgICAgICAgIHdoZW4gOnhvcgorICAg
ICAgICAgICAgInhvciIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmFpc2UgIlVuc3VwcG9y
dGVkIGxvZ2ljYWwgb3BlcmF0aW9uIgorICAgICAgICBlbmQKKyAgICBlbmQKKworICAgIGluc3Ry
dWN0aW9uID0gb3BJbnN0cnVjdGlvbihvcGVyYXRpb24pCisgICAgbG9hZEluc3RydWN0aW9uID0g
cmlzY3Y2NFplcm9FeHRlbmRlZExvYWRJbnN0cnVjdGlvbihzaXplKQorICAgIHN0b3JlSW5zdHJ1
Y3Rpb24gPSByaXNjdjY0U3RvcmVJbnN0cnVjdGlvbihzaXplKQorCisgICAgY2FzZSByaXNjdjY0
T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgIHdoZW4gW1JlZ2lzdGVySUQsIFJlZ2lzdGVySURd
CisgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0gI3tvcGVyYW5kc1sxXS5yaXNjdjY0
T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJp
c2N2NjRPcGVyYW5kfSIKKyAgICAgICAgcmlzY3Y2NEVtaXRSZWdpc3Rlck1hc2sob3BlcmFuZHNb
MV0sIHNpemUpCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0K
KyAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSAje29wZXJhbmRzWzJdLnJpc2N2NjRP
cGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlz
Y3Y2NE9wZXJhbmR9IgorICAgICAgICByaXNjdjY0RW1pdFJlZ2lzdGVyTWFzayhvcGVyYW5kc1sy
XSwgc2l6ZSkKKyAgICB3aGVuIFtSZWdpc3RlcklELCBJbW1lZGlhdGUsIFJlZ2lzdGVySURdCisg
ICAgICAgIGlmIG9wZXJhbmRzWzFdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAgICRh
c20ucHV0cyAibGkgeDMxLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAg
ICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0gI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFu
ZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEiCisgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn1pICN7b3BlcmFuZHNbMl0ucmlzY3Y2
NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5y
aXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVuZAorICAgICAgICByaXNjdjY0RW1pdFJlZ2lzdGVy
TWFzayhvcGVyYW5kc1syXSwgc2l6ZSkKKyAgICB3aGVuIFtJbW1lZGlhdGUsIFJlZ2lzdGVySURd
CisgICAgICAgIGlmIG9wZXJhbmRzWzBdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAg
ICRhc20ucHV0cyAibGkgeDMxLCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAg
ICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0gI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3Bl
cmFuZH0sIHgzMSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVsc2UK
KyAgICAgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn1pICN7b3BlcmFuZHNbMV0ucmlz
Y3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sw
XS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVuZAorICAgICAgICByaXNjdjY0RW1pdFJlZ2lz
dGVyTWFzayhvcGVyYW5kc1sxXSwgc2l6ZSkKKyAgICB3aGVuIFtJbW1lZGlhdGUsIEFkZHJlc3Nd
CisgICAgICAgIGlmIG9wZXJhbmRzWzFdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAg
IG9wZXJhbmRzWzFdLnJpc2N2NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxKQorICAg
ICAgICAgICAgJGFzbS5wdXRzICIje2xvYWRJbnN0cnVjdGlvbn0geDMwLCAwKHgzMSkiCisgICAg
ICAgIGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tsb2FkSW5zdHJ1Y3Rpb259IHgzMCwg
I3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVuZAorICAgICAgICAkYXNt
LnB1dHMgImxpIHgzMSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICRh
c20ucHV0cyAiI3tpbnN0cnVjdGlvbn0geDMwLCB4MzEsIHgzMCIKKyAgICAgICAgaWYgb3BlcmFu
ZHNbMV0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgb3BlcmFuZHNbMV0ucmlzY3Y2
NExvYWQoUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzEpCisgICAgICAgICAgICAkYXNtLnB1dHMg
IiN7c3RvcmVJbnN0cnVjdGlvbn0geDMwLCAwKHgzMSkiCisgICAgICAgIGVsc2UKKyAgICAgICAg
ICAgICRhc20ucHV0cyAiI3tzdG9yZUluc3RydWN0aW9ufSB4MzAsICN7b3BlcmFuZHNbMV0ucmlz
Y3Y2NE9wZXJhbmR9IgorICAgICAgICBlbmQKKyAgICBlbHNlCisgICAgICAgIHJpc2N2NjRSYWlz
ZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2
NEVtaXRDb21wbGVtZW50T3BlcmF0aW9uKG9wZXJhbmRzLCBzaXplLCBvcGVyYXRpb24pCisgICAg
ZGVmIGNvbXBsZW1lbnRJbnN0cnVjdGlvbihzaXplLCBvcGVyYXRpb24pCisgICAgICAgIGNhc2Ug
b3BlcmF0aW9uCisgICAgICAgIHdoZW4gOm5vdAorICAgICAgICAgICAgIm5vdCIKKyAgICAgICAg
d2hlbiA6bmVnCisgICAgICAgICAgICBzaXplID09IDp3ID8gIm5lZ3ciIDogIm5lZyIKKyAgICAg
ICAgZWxzZQorICAgICAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIGNvbXBsZW1lbnQgb3BlcmF0
aW9uIgorICAgICAgICBlbmQKKyAgICBlbmQKKworICAgIGluc3RydWN0aW9uID0gY29tcGxlbWVu
dEluc3RydWN0aW9uKHNpemUsIG9wZXJhdGlvbikKKworICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRU
eXBlcyhvcGVyYW5kcykKKyAgICB3aGVuIFtSZWdpc3RlcklEXQorICAgICAgICAkYXNtLnB1dHMg
IiN7aW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRz
WzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgcmlzY3Y2NEVtaXRSZWdpc3Rlck1hc2sob3Bl
cmFuZHNbMF0sIHNpemUpCisgICAgZWxzZQorICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVk
T3BlcmFuZHMob3BlcmFuZHMpCisgICAgZW5kCitlbmQKKworZGVmIHJpc2N2NjRFbWl0U2hpZnQo
b3BlcmFuZHMsIHNpemUsIHNoaWZ0KQorICAgIHJhaXNlICJVbnN1cHBvcnRlZCBzaXplIiB1bmxl
c3MgWzp3LCA6ZF0uaW5jbHVkZT8gc2l6ZQorCisgICAgZGVmIHNoaWZ0SW5zdHJ1Y3Rpb24oc2l6
ZSwgc2hpZnQpCisgICAgICAgIGNhc2Ugc2hpZnQKKyAgICAgICAgd2hlbiA6bGxlZnQKKyAgICAg
ICAgICAgIHNpemUgPT0gOncgPyAic2xsdyIgOiAic2xsIgorICAgICAgICB3aGVuIDpscmlnaHQK
KyAgICAgICAgICAgIHNpemUgPT0gOncgPyAic3JsdyIgOiAic3JsIgorICAgICAgICB3aGVuIDph
cmlnaHQKKyAgICAgICAgICAgIHNpemUgPT0gOncgPyAic3JhdyIgOiAic3JhIgorICAgICAgICBl
bHNlCisgICAgICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgc2hpZnQgdHlwZSIKKyAgICAgICAg
ZW5kCisgICAgZW5kCisKKyAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisg
ICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAgICAgJGFzbS5wdXRzICIje3No
aWZ0SW5zdHJ1Y3Rpb24oc2l6ZSwgc2hpZnQpfSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5k
fSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9w
ZXJhbmR9IgorICAgICAgICByaXNjdjY0RW1pdFJlZ2lzdGVyTWFzayhvcGVyYW5kc1sxXSwgc2l6
ZSkKKyAgICB3aGVuIFtJbW1lZGlhdGUsIFJlZ2lzdGVySURdCisgICAgICAgICRhc20ucHV0cyAi
bGkgeDMxLCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgJGFzbS5wdXRz
ICIje3NoaWZ0SW5zdHJ1Y3Rpb24oc2l6ZSwgc2hpZnQpfSAje29wZXJhbmRzWzFdLnJpc2N2NjRP
cGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAgICAgICAgcmlz
Y3Y2NEVtaXRSZWdpc3Rlck1hc2sob3BlcmFuZHNbMV0sIHNpemUpCisgICAgZWxzZQorICAgICAg
ICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgZW5kCitlbmQK
KworZGVmIHJpc2N2NjRFbWl0Qml0RXh0ZW5zaW9uKG9wZXJhbmRzLCBmcm9tU2l6ZSwgdG9TaXpl
LCBleHRlbnNpb25UeXBlKQorICAgIHJhaXNlICJVbnN1cHBvcnRlZCBvcGVyYW5kIHR5cGVzIiB1
bmxlc3MgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykgPT0gW1JlZ2lzdGVySUQsIFJlZ2lz
dGVySURdCisKKyAgICBkZWYgZW1pdFNoaWZ0cyhvcGVyYW5kcywgc2hpZnRDb3VudCkKKyAgICAg
ICAgJGFzbS5wdXRzICJzbGxpICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJh
bmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tzaGlmdENvdW50fSIKKyAgICAgICAgJGFzbS5wdXRz
ICJzZXh0LncgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlz
Y3Y2NE9wZXJhbmR9IgorICAgICAgICAkYXNtLnB1dHMgInNyYWkgI3tvcGVyYW5kc1sxXS5yaXNj
djY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje3NoaWZ0Q291bnR9
IgorICAgIGVuZAorCisgICAgY2FzZSBbZnJvbVNpemUsIHRvU2l6ZSwgZXh0ZW5zaW9uVHlwZV0K
KyAgICB3aGVuIFs6YiwgOncsIDpzaWduXSwgWzpiLCA6ZCwgOnNpZ25dCisgICAgICAgIGVtaXRT
aGlmdHMob3BlcmFuZHMsIDI0KQorICAgICAgICByaXNjdjY0RW1pdFJlZ2lzdGVyTWFzayhvcGVy
YW5kc1sxXSwgdG9TaXplKQorICAgIHdoZW4gWzpoLCA6dywgOnNpZ25dLCBbOmgsIDpkLCA6c2ln
bl0KKyAgICAgICAgZW1pdFNoaWZ0cyhvcGVyYW5kcywgMTYpCisgICAgICAgIHJpc2N2NjRFbWl0
UmVnaXN0ZXJNYXNrKG9wZXJhbmRzWzFdLCB0b1NpemUpCisgICAgd2hlbiBbOncsIDpkLCA6c2ln
bl0KKyAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFu
ZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgIHdoZW4gWzp3LCA6ZCwgOnpl
cm9dCisgICAgICAgICRhc20ucHV0cyAic2xsaSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5k
fSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sIDMyIgorICAgICAgICAkYXNtLnB1dHMg
InNybGkgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2
NE9wZXJhbmR9LCAzMiIKKyAgICBlbHNlCisgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCBiaXQt
ZXh0ZW5zaW9uIG9wZXJhdGlvbiIKKyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NEVtaXRGUExv
YWQob3BlcmFuZHMsIGxvYWRJbnN0cnVjdGlvbikKKyAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlw
ZXMob3BlcmFuZHMpCisgICAgd2hlbiBbQWRkcmVzcywgRlBSZWdpc3RlcklEXQorICAgICAgICBp
ZiBvcGVyYW5kc1swXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICBvcGVyYW5kc1sw
XS5yaXNjdjY0TG9hZChSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMSkKKyAgICAgICAgICAgICRh
c20ucHV0cyAiI3tsb2FkSW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9
LCAwKHgzMSkiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tsb2FkSW5z
dHJ1Y3Rpb259ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJp
c2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZW5kCisgICAgd2hlbiBbQmFzZUluZGV4LCBGUFJlZ2lz
dGVySURdCisgICAgICAgIG9wZXJhbmRzWzBdLnJpc2N2NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVn
aXN0ZXIueDMxLCBSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMCkKKyAgICAgICAgJGFzbS5wdXRz
ICIje2xvYWRJbnN0cnVjdGlvbn0gI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIDAoeDMx
KSIKKyAgICBlbHNlCisgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVy
YW5kcykKKyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NEVtaXRGUFN0b3JlKG9wZXJhbmRzLCBz
dG9yZUluc3RydWN0aW9uKQorICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykK
KyAgICB3aGVuIFtGUFJlZ2lzdGVySUQsIEFkZHJlc3NdCisgICAgICAgIGlmIG9wZXJhbmRzWzFd
LnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAgIG9wZXJhbmRzWzFdLnJpc2N2NjRMb2Fk
KFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxKQorICAgICAgICAgICAgJGFzbS5wdXRzICIje3N0
b3JlSW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAwKHgzMSkiCisg
ICAgICAgIGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tzdG9yZUluc3RydWN0aW9ufSAj
e29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFu
ZH0iCisgICAgICAgIGVuZAorICAgIHdoZW4gW0ZQUmVnaXN0ZXJJRCwgQmFzZUluZGV4XQorICAg
ICAgICBvcGVyYW5kc1sxXS5yaXNjdjY0TG9hZChSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMSwg
UklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzApCisgICAgICAgICRhc20ucHV0cyAiI3tzdG9yZUlu
c3RydWN0aW9ufSAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgMCh4MzEpIgorICAgIGVs
c2UKKyAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAg
IGVuZAorZW5kCisKK2RlZiByaXNjdjY0RW1pdEZQT3BlcmF0aW9uKG9wZXJhbmRzLCBvcGVyYXRp
b24pCisgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgIHdoZW4gW0ZQ
UmVnaXN0ZXJJRCwgRlBSZWdpc3RlcklELCBGUFJlZ2lzdGVySURdCisgICAgICAgICRhc20ucHV0
cyAiI3tvcGVyYXRpb259ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRz
WzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAg
d2hlbiBbRlBSZWdpc3RlcklELCBGUFJlZ2lzdGVySURdCisgICAgICAgICRhc20ucHV0cyAiI3tv
cGVyYXRpb259ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJp
c2N2NjRPcGVyYW5kfSIKKyAgICBlbHNlCisgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRP
cGVyYW5kcyhvcGVyYW5kcykKKyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NEVtaXRGUENvbXBh
cmUob3BlcmFuZHMsIHByZWNpc2lvbiwgY29uZGl0aW9uKQorICAgIGRlZiBzdWZmaXhGb3JQcmVj
aXNpb24ocHJlY2lzaW9uKQorICAgICAgICBjYXNlIHByZWNpc2lvbgorICAgICAgICB3aGVuIDpz
CisgICAgICAgICAgICAicyIKKyAgICAgICAgd2hlbiA6ZAorICAgICAgICAgICAgImQiCisgICAg
ICAgIGVsc2UKKyAgICAgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCBwcmVjaXNpb24iCisgICAg
ICAgIGVuZAorICAgIGVuZAorCisgICAgZGVmIGluc3RydWN0aW9uRm9yQ29uZGl0aW9uKGNvbmRp
dGlvbiwgcHJlY2lzaW9uKQorICAgICAgICBzdWZmaXggPSBzdWZmaXhGb3JQcmVjaXNpb24ocHJl
Y2lzaW9uKQorICAgICAgICBjYXNlIGNvbmRpdGlvbgorICAgICAgICB3aGVuIDplcSwgOm5lcQor
ICAgICAgICAgICAgImZlcS4je3N1ZmZpeH0iCisgICAgICAgIHdoZW4gOmx0LCA6Z3QKKyAgICAg
ICAgICAgICJmbHQuI3tzdWZmaXh9IgorICAgICAgICB3aGVuIDpsdGVxLCA6Z3RlcQorICAgICAg
ICAgICAgImZsZS4je3N1ZmZpeH0iCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJhaXNlICJV
bnN1cHBvcnRlZCBjb25kaXRpb24iCisgICAgICAgIGVuZAorICAgIGVuZAorCisgICAgZGVmIHNl
dEZvckNvbmRpdGlvbihvcGVyYW5kcywgcHJlY2lzaW9uLCBjb25kaXRpb24pCisgICAgICAgIGlu
c3RydWN0aW9uID0gaW5zdHJ1Y3Rpb25Gb3JDb25kaXRpb24oY29uZGl0aW9uLCBwcmVjaXNpb24p
CisgICAgICAgIGNhc2UgY29uZGl0aW9uCisgICAgICAgIHdoZW4gOmVxCisgICAgICAgICAgICAk
YXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAj
e29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFu
ZH0iCisgICAgICAgIHdoZW4gOm5lcQorICAgICAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0
aW9ufSAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0
T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgJGFz
bS5wdXRzICJ4b3JpICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzJd
LnJpc2N2NjRPcGVyYW5kfSwgMSIKKyAgICAgICAgd2hlbiA6bHQsIDpsdGVxCisgICAgICAgICAg
ICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9
LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3Bl
cmFuZH0iCisgICAgICAgIHdoZW4gOmd0LCA6Z3RlcQorICAgICAgICAgICAgJGFzbS5wdXRzICIj
e2luc3RydWN0aW9ufSAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sx
XS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAg
ICBlbHNlCisgICAgICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgY29uZGl0aW9uIgorICAgICAg
ICBlbmQKKyAgICBlbmQKKworICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykK
KyAgICB3aGVuIFtGUFJlZ2lzdGVySUQsIEZQUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAg
ICAgc2V0Rm9yQ29uZGl0aW9uKG9wZXJhbmRzLCBwcmVjaXNpb24sIGNvbmRpdGlvbikKKyAgICBl
bHNlCisgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAg
ICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NEVtaXRGUEJpdHdpc2VPcGVyYXRpb24ob3BlcmFuZHMs
IHByZWNpc2lvbiwgb3BlcmF0aW9uKQorICAgIGRlZiBzdWZmaXhGb3JQcmVjaXNpb24ocHJlY2lz
aW9uKQorICAgICAgICBjYXNlIHByZWNpc2lvbgorICAgICAgICB3aGVuIDpzCisgICAgICAgICAg
ICAidyIKKyAgICAgICAgd2hlbiA6ZAorICAgICAgICAgICAgImQiCisgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCBwcmVjaXNpb24iCisgICAgICAgIGVuZAorICAg
IGVuZAorCisgICAgc3VmZml4ID0gc3VmZml4Rm9yUHJlY2lzaW9uKHByZWNpc2lvbikKKworICAg
IGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICB3aGVuIFtGUFJlZ2lzdGVy
SUQsIEZQUmVnaXN0ZXJJRF0KKyAgICAgICAgJGFzbS5wdXRzICJmbXYueC4je3N1ZmZpeH0geDMw
LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgJGFzbS5wdXRzICJmbXYu
eC4je3N1ZmZpeH0geDMxLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAg
JGFzbS5wdXRzICIje29wZXJhdGlvbn0geDMxLCB4MzAsIHgzMSIKKyAgICAgICAgJGFzbS5wdXRz
ICJmbXYuI3tzdWZmaXh9LnggI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAg
ICBlbHNlCisgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykK
KyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NEVtaXRGUENvcHkob3BlcmFuZHMsIHByZWNpc2lv
bikKKyAgICBkZWYgc3VmZml4Rm9yUHJlY2lzaW9uKHByZWNpc2lvbikKKyAgICAgICAgY2FzZSBw
cmVjaXNpb24KKyAgICAgICAgd2hlbiA6cworICAgICAgICAgICAgInciCisgICAgICAgIHdoZW4g
OmQKKyAgICAgICAgICAgICJkIgorICAgICAgICBlbHNlCisgICAgICAgICAgICByYWlzZSAiVW5z
dXBwb3J0ZWQgcHJlY2lzaW9uIgorICAgICAgICBlbmQKKyAgICBlbmQKKworICAgIHN1ZmZpeCA9
IHN1ZmZpeEZvclByZWNpc2lvbihwcmVjaXNpb24pCisKKyAgICBjYXNlIHJpc2N2NjRPcGVyYW5k
VHlwZXMob3BlcmFuZHMpCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgRlBSZWdpc3RlcklEXQorICAg
ICAgICAkYXNtLnB1dHMgImZtdi4je3N1ZmZpeH0ueCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVy
YW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgd2hlbiBbRlBSZWdpc3Rl
cklELCBSZWdpc3RlcklEXQorICAgICAgICAkYXNtLnB1dHMgImZtdi54LiN7c3VmZml4fSAje29w
ZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0i
CisgICAgZWxzZQorICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFu
ZHMpCisgICAgZW5kCitlbmQKKworZGVmIHJpc2N2NjRFbWl0RlBDb25kaXRpb25hbEJyYW5jaEZv
clRlc3Qob3BlcmFuZHMsIHByZWNpc2lvbiwgdGVzdCkKKyAgICBkZWYgc3VmZml4Rm9yUHJlY2lz
aW9uKHByZWNpc2lvbikKKyAgICAgICAgY2FzZSBwcmVjaXNpb24KKyAgICAgICAgd2hlbiA6cwor
ICAgICAgICAgICAgInMiCisgICAgICAgIHdoZW4gOmQKKyAgICAgICAgICAgICJkIgorICAgICAg
ICBlbHNlCisgICAgICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgcHJlY2lzaW9uIgorICAgICAg
ICBlbmQKKyAgICBlbmQKKworICAgIGRlZiBlbWl0QnJhbmNoRm9yVW5vcmRlcmVkKGxocywgcmhz
LCBsYWJlbCwgcHJlY2lzaW9uKQorICAgICAgICBzdWZmaXggPSBzdWZmaXhGb3JQcmVjaXNpb24o
cHJlY2lzaW9uKQorCisgICAgICAgICRhc20ucHV0cyAiZmNsYXNzLmQgeDMwLCAje2xocy5yaXNj
djY0T3BlcmFuZH0iCisgICAgICAgICRhc20ucHV0cyAiZmNsYXNzLmQgeDMxLCAje3Jocy5yaXNj
djY0T3BlcmFuZH0iCisgICAgICAgICRhc20ucHV0cyAib3IgeDMxLCB4MzAsIHgzMSIKKyAgICAg
ICAgJGFzbS5wdXRzICJsaSB4MzAsIDB4MzAwIgorICAgICAgICAkYXNtLnB1dHMgImFuZCB4MzEs
IHgzMSwgeDMwIgorICAgICAgICAkYXNtLnB1dHMgImJuZXogeDMxLCAje2xhYmVsLmFzbUxhYmVs
fSIKKyAgICBlbmQKKworICAgIGRlZiBlbWl0QnJhbmNoRm9yVGVzdCh0ZXN0LCBsaHMsIHJocywg
YnJhbmNoLCBsYWJlbCwgcHJlY2lzaW9uKQorICAgICAgICBzdWZmaXggPSBzdWZmaXhGb3JQcmVj
aXNpb24ocHJlY2lzaW9uKQorCisgICAgICAgICRhc20ucHV0cyAiI3t0ZXN0fS4je3N1ZmZpeH0g
eDMxLCAje2xocy5yaXNjdjY0T3BlcmFuZH0sICN7cmhzLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAg
ICAgJGFzbS5wdXRzICIje2JyYW5jaH0geDMxLCAje2xhYmVsLmFzbUxhYmVsfSIKKyAgICBlbmQK
KworICAgIHN1ZmZpeCA9IHN1ZmZpeEZvclByZWNpc2lvbihwcmVjaXNpb24pCisKKyAgICBjYXNl
IHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgd2hlbiBbRlBSZWdpc3RlcklELCBG
UFJlZ2lzdGVySUQsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAgIGNhc2UgdGVzdAorICAg
ICAgICB3aGVuIDplcQorICAgICAgICAgICAgZW1pdEJyYW5jaEZvclRlc3QoImZlcSIsIG9wZXJh
bmRzWzBdLCBvcGVyYW5kc1sxXSwgImJuZXoiLCBvcGVyYW5kc1syXSwgcHJlY2lzaW9uKQorICAg
ICAgICB3aGVuIDpuZXEKKyAgICAgICAgICAgIGVtaXRCcmFuY2hGb3JUZXN0KCJmZXEiLCBvcGVy
YW5kc1swXSwgb3BlcmFuZHNbMV0sICJiZXF6Iiwgb3BlcmFuZHNbMl0sIHByZWNpc2lvbikKKyAg
ICAgICAgd2hlbiA6bHQKKyAgICAgICAgICAgIGVtaXRCcmFuY2hGb3JUZXN0KCJmbHQiLCBvcGVy
YW5kc1swXSwgb3BlcmFuZHNbMV0sICJibmV6Iiwgb3BlcmFuZHNbMl0sIHByZWNpc2lvbikKKyAg
ICAgICAgd2hlbiA6bHRlcQorICAgICAgICAgICAgZW1pdEJyYW5jaEZvclRlc3QoImZsZSIsIG9w
ZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSwgImJuZXoiLCBvcGVyYW5kc1syXSwgcHJlY2lzaW9uKQor
ICAgICAgICB3aGVuIDpndAorICAgICAgICAgICAgZW1pdEJyYW5jaEZvclRlc3QoImZsdCIsIG9w
ZXJhbmRzWzFdLCBvcGVyYW5kc1swXSwgImJuZXoiLCBvcGVyYW5kc1syXSwgcHJlY2lzaW9uKQor
ICAgICAgICB3aGVuIDpndGVxCisgICAgICAgICAgICBlbWl0QnJhbmNoRm9yVGVzdCgiZmxlIiwg
b3BlcmFuZHNbMV0sIG9wZXJhbmRzWzBdLCAiYm5leiIsIG9wZXJhbmRzWzJdLCBwcmVjaXNpb24p
CisgICAgICAgIHdoZW4gOmVxdW4KKyAgICAgICAgICAgIGVtaXRCcmFuY2hGb3JVbm9yZGVyZWQo
b3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdLCBvcGVyYW5kc1syXSwgcHJlY2lzaW9uKQorICAgICAg
ICAgICAgZW1pdEJyYW5jaEZvclRlc3QoImZlcSIsIG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSwg
ImJuZXoiLCBvcGVyYW5kc1syXSwgcHJlY2lzaW9uKQorICAgICAgICB3aGVuIDpuZXF1bgorICAg
ICAgICAgICAgZW1pdEJyYW5jaEZvclVub3JkZXJlZChvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV0s
IG9wZXJhbmRzWzJdLCBwcmVjaXNpb24pCisgICAgICAgICAgICBlbWl0QnJhbmNoRm9yVGVzdCgi
ZmVxIiwgb3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdLCAiYmVxeiIsIG9wZXJhbmRzWzJdLCBwcmVj
aXNpb24pCisgICAgICAgIHdoZW4gOmx0dW4KKyAgICAgICAgICAgIGVtaXRCcmFuY2hGb3JVbm9y
ZGVyZWQob3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdLCBvcGVyYW5kc1syXSwgcHJlY2lzaW9uKQor
ICAgICAgICAgICAgZW1pdEJyYW5jaEZvclRlc3QoImZsdCIsIG9wZXJhbmRzWzBdLCBvcGVyYW5k
c1sxXSwgImJuZXoiLCBvcGVyYW5kc1syXSwgcHJlY2lzaW9uKQorICAgICAgICB3aGVuIDpsdGVx
dW4KKyAgICAgICAgICAgIGVtaXRCcmFuY2hGb3JVbm9yZGVyZWQob3BlcmFuZHNbMF0sIG9wZXJh
bmRzWzFdLCBvcGVyYW5kc1syXSwgcHJlY2lzaW9uKQorICAgICAgICAgICAgZW1pdEJyYW5jaEZv
clRlc3QoImZsZSIsIG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSwgImJuZXoiLCBvcGVyYW5kc1sy
XSwgcHJlY2lzaW9uKQorICAgICAgICB3aGVuIDpndHVuCisgICAgICAgICAgICBlbWl0QnJhbmNo
Rm9yVW5vcmRlcmVkKG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSwgb3BlcmFuZHNbMl0sIHByZWNp
c2lvbikKKyAgICAgICAgICAgIGVtaXRCcmFuY2hGb3JUZXN0KCJmbHQiLCBvcGVyYW5kc1sxXSwg
b3BlcmFuZHNbMF0sICJibmV6Iiwgb3BlcmFuZHNbMl0sIHByZWNpc2lvbikKKyAgICAgICAgd2hl
biA6Z3RlcXVuCisgICAgICAgICAgICBlbWl0QnJhbmNoRm9yVW5vcmRlcmVkKG9wZXJhbmRzWzBd
LCBvcGVyYW5kc1sxXSwgb3BlcmFuZHNbMl0sIHByZWNpc2lvbikKKyAgICAgICAgICAgIGVtaXRC
cmFuY2hGb3JUZXN0KCJmbGUiLCBvcGVyYW5kc1sxXSwgb3BlcmFuZHNbMF0sICJibmV6Iiwgb3Bl
cmFuZHNbMl0sIHByZWNpc2lvbikKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmFpc2UgIlVu
c3VwcG9ydGVkIHRlc3QiCisgICAgICAgIGVuZAorICAgIGVsc2UKKyAgICAgICAgcmlzY3Y2NFJh
aXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgIGVuZAorZW5kCisKK2RlZiByaXNj
djY0RW1pdEZQUm91bmRPcGVyYXRpb24ob3BlcmFuZHMsIHByZWNpc2lvbiwgcm91bmRpbmdNb2Rl
KQorICAgIGRlZiBpbnRTdWZmaXhGb3JQcmVjaXNpb24ocHJlY2lzaW9uKQorICAgICAgICBjYXNl
IHByZWNpc2lvbgorICAgICAgICB3aGVuIDpzCisgICAgICAgICAgICAidyIKKyAgICAgICAgd2hl
biA6ZAorICAgICAgICAgICAgImwiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJhaXNlICJV
bnN1cHBvcnRlZCBwcmVjaXNpb24iCisgICAgICAgIGVuZAorICAgIGVuZAorCisgICAgZGVmIGZw
U3VmZml4Rm9yUHJlY2lzaW9uKHByZWNpc2lvbikKKyAgICAgICAgY2FzZSBwcmVjaXNpb24KKyAg
ICAgICAgd2hlbiA6cworICAgICAgICAgICAgInMiCisgICAgICAgIHdoZW4gOmQKKyAgICAgICAg
ICAgICJkIgorICAgICAgICBlbHNlCisgICAgICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgcHJl
Y2lzaW9uIgorICAgICAgICBlbmQKKyAgICBlbmQKKworICAgIGludFN1ZmZpeCA9IGludFN1ZmZp
eEZvclByZWNpc2lvbihwcmVjaXNpb24pCisgICAgZnBTdWZmaXggPSBmcFN1ZmZpeEZvclByZWNp
c2lvbihwcmVjaXNpb24pCisKKyAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMp
CisgICAgd2hlbiBbRlBSZWdpc3RlcklELCBGUFJlZ2lzdGVySURdCisgICAgICAgICRhc20ucHV0
cyAiZmN2dC4je2ludFN1ZmZpeH0uI3tmcFN1ZmZpeH0geDMxLCAje29wZXJhbmRzWzBdLnJpc2N2
NjRPcGVyYW5kfSwgI3tyb3VuZGluZ01vZGV9IgorICAgICAgICAkYXNtLnB1dHMgImZjdnQuI3tm
cFN1ZmZpeH0uI3tpbnRTdWZmaXh9ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEs
ICN7cm91bmRpbmdNb2RlfSIKKyAgICBlbHNlCisgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNo
ZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NEVtaXRGUENv
bnZlcnRPcGVyYXRpb24ob3BlcmFuZHMsIGZyb21UeXBlLCB0b1R5cGUsIHJvdW5kaW5nTW9kZSkK
KyAgICBkZWYgaW50U3VmZml4Rm9yVHlwZSh0eXBlKQorICAgICAgICBjYXNlIHR5cGUKKyAgICAg
ICAgd2hlbiA6dworICAgICAgICAgICAgInciCisgICAgICAgIHdoZW4gOnd1CisgICAgICAgICAg
ICAid3UiCisgICAgICAgIHdoZW4gOmwKKyAgICAgICAgICAgICJsIgorICAgICAgICB3aGVuIDps
dQorICAgICAgICAgICAgImx1IgorICAgICAgICBlbHNlCisgICAgICAgICAgICByYWlzZSAiVW5z
dXBwb3J0ZWQgcHJlY2lzaW9uIgorICAgICAgICBlbmQKKyAgICBlbmQKKworICAgIGRlZiBmcFN1
ZmZpeEZvclR5cGUodHlwZSkKKyAgICAgICAgY2FzZSB0eXBlCisgICAgICAgIHdoZW4gOnMKKyAg
ICAgICAgICAgICJzIgorICAgICAgICB3aGVuIDpkCisgICAgICAgICAgICAiZCIKKyAgICAgICAg
ZWxzZQorICAgICAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIHByZWNpc2lvbiIKKyAgICAgICAg
ZW5kCisgICAgZW5kCisKKyAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisg
ICAgd2hlbiBbRlBSZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAgICAgICBmcFN1ZmZpeCA9IGZw
U3VmZml4Rm9yVHlwZShmcm9tVHlwZSkKKyAgICAgICAgaW50U3VmZml4ID0gaW50U3VmZml4Rm9y
VHlwZSh0b1R5cGUpCisKKyAgICAgICAgJGFzbS5wdXRzICJmY3Z0LiN7aW50U3VmZml4fS4je2Zw
U3VmZml4fSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNj
djY0T3BlcmFuZH0sICN7cm91bmRpbmdNb2RlfSIKKyAgICB3aGVuIFtSZWdpc3RlcklELCBGUFJl
Z2lzdGVySURdCisgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCByb3VuZGluZyBtb2RlIiB1bmxl
c3Mgcm91bmRpbmdNb2RlID09IDpub25lCisgICAgICAgIGludFN1ZmZpeCA9IGludFN1ZmZpeEZv
clR5cGUoZnJvbVR5cGUpCisgICAgICAgIGZwU3VmZml4ID0gZnBTdWZmaXhGb3JUeXBlKHRvVHlw
ZSkKKworICAgICAgICAkYXNtLnB1dHMgImZjdnQuI3tmcFN1ZmZpeH0uI3tpbnRTdWZmaXh9ICN7
b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5k
fSIKKyAgICB3aGVuIFtGUFJlZ2lzdGVySUQsIEZQUmVnaXN0ZXJJRF0KKyAgICAgICAgcmFpc2Ug
IlVuc3VwcG9ydGVkIHJvdW5kaW5nIG1vZGUiIHVubGVzcyByb3VuZGluZ01vZGUgPT0gOm5vbmUK
KyAgICAgICAgZnBGcm9tU3VmZml4ID0gZnBTdWZmaXhGb3JUeXBlKGZyb21UeXBlKQorICAgICAg
ICBmcFRvU3VmZml4ID0gZnBTdWZmaXhGb3JUeXBlKHRvVHlwZSkKKworICAgICAgICAkYXNtLnB1
dHMgImZjdnQuI3tmcFRvU3VmZml4fS4je2ZwRnJvbVN1ZmZpeH0gI3tvcGVyYW5kc1sxXS5yaXNj
djY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgIGVsc2UKKyAg
ICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgIGVuZAor
ZW5kCisKK2NsYXNzIFJlZ2lzdGVySUQKKyAgICBkZWYgcmlzY3Y2NE9wZXJhbmQKKyAgICAgICAg
Y2FzZSBAbmFtZQorICAgICAgICB3aGVuICd0MCcsICdhMCcsICd3YTAnLCAncjAnCisgICAgICAg
ICAgICAneDEwJworICAgICAgICB3aGVuICd0MScsICdhMScsICd3YTEnLCAncjEnCisgICAgICAg
ICAgICAneDExJworICAgICAgICB3aGVuICd0MicsICdhMicsICd3YTInCisgICAgICAgICAgICAn
eDEyJworICAgICAgICB3aGVuICd0MycsICdhMycsICd3YTMnCisgICAgICAgICAgICAneDEzJwor
ICAgICAgICB3aGVuICd0NCcsICdhNCcsICd3YTQnCisgICAgICAgICAgICAneDE0JworICAgICAg
ICB3aGVuICd0NScsICdhNScsICd3YTUnCisgICAgICAgICAgICAneDE1JworICAgICAgICB3aGVu
ICd0NicsICdhNicsICd3YTYnCisgICAgICAgICAgICAneDE2JworICAgICAgICB3aGVuICd0Nycs
ICdhNycsICd3YTcnCisgICAgICAgICAgICAneDE3JworICAgICAgICB3aGVuICd3czAnCisgICAg
ICAgICAgICAneDYnCisgICAgICAgIHdoZW4gJ3dzMScKKyAgICAgICAgICAgICd4NycKKyAgICAg
ICAgd2hlbiAnY3NyMCcKKyAgICAgICAgICAgICd4OScKKyAgICAgICAgd2hlbiAnY3NyMScKKyAg
ICAgICAgICAgICd4MTgnCisgICAgICAgIHdoZW4gJ2NzcjInCisgICAgICAgICAgICAneDE5Jwor
ICAgICAgICB3aGVuICdjc3IzJworICAgICAgICAgICAgJ3gyMCcKKyAgICAgICAgd2hlbiAnY3Ny
NCcKKyAgICAgICAgICAgICd4MjEnCisgICAgICAgIHdoZW4gJ2NzcjUnCisgICAgICAgICAgICAn
eDIyJworICAgICAgICB3aGVuICdjc3I2JworICAgICAgICAgICAgJ3gyMycKKyAgICAgICAgd2hl
biAnY3NyNycKKyAgICAgICAgICAgICd4MjQnCisgICAgICAgIHdoZW4gJ2NzcjgnCisgICAgICAg
ICAgICAneDI1JworICAgICAgICB3aGVuICdjc3I5JworICAgICAgICAgICAgJ3gyNicKKyAgICAg
ICAgd2hlbiAnY3NyMTAnCisgICAgICAgICAgICAneDI3JworICAgICAgICB3aGVuICdscicKKyAg
ICAgICAgICAgICdyYScKKyAgICAgICAgd2hlbiAnc3AnCisgICAgICAgICAgICAnc3AnCisgICAg
ICAgIHdoZW4gJ2NmcicKKyAgICAgICAgICAgICdmcCcKKyAgICAgICAgZWxzZQorICAgICAgICAg
ICAgcmFpc2UgIkJhZCByZWdpc3RlciBuYW1lICN7QG5hbWV9IGF0ICN7Y29kZU9yaWdpblN0cmlu
Z30iCisgICAgICAgIGVuZAorICAgIGVuZAorZW5kCisKK2NsYXNzIEZQUmVnaXN0ZXJJRAorICAg
IGRlZiByaXNjdjY0T3BlcmFuZAorICAgICAgICBjYXNlIEBuYW1lCisgICAgICAgIHdoZW4gJ2Z0
MCcKKyAgICAgICAgICAgICdmMCcKKyAgICAgICAgd2hlbiAnZnQxJworICAgICAgICAgICAgJ2Yx
JworICAgICAgICB3aGVuICdmdDInCisgICAgICAgICAgICAnZjInCisgICAgICAgIHdoZW4gJ2Z0
MycKKyAgICAgICAgICAgICdmMycKKyAgICAgICAgd2hlbiAnZnQ0JworICAgICAgICAgICAgJ2Y0
JworICAgICAgICB3aGVuICdmdDUnCisgICAgICAgICAgICAnZjUnCisgICAgICAgIHdoZW4gJ2Nz
ZnIwJworICAgICAgICAgICAgJ2Y4JworICAgICAgICB3aGVuICdjc2ZyMScKKyAgICAgICAgICAg
ICdmOScKKyAgICAgICAgd2hlbiAnZmEwJywgJ3dmYTAnCisgICAgICAgICAgICAnZjEwJworICAg
ICAgICB3aGVuICdmYTEnLCAnd2ZhMScKKyAgICAgICAgICAgICdmMTEnCisgICAgICAgIHdoZW4g
J2ZhMicsICd3ZmEyJworICAgICAgICAgICAgJ2YxMicKKyAgICAgICAgd2hlbiAnZmEzJywgJ3dm
YTMnCisgICAgICAgICAgICAnZjEzJworICAgICAgICB3aGVuICdmYTQnLCAnd2ZhNCcKKyAgICAg
ICAgICAgICdmMTQnCisgICAgICAgIHdoZW4gJ2ZhNScsICd3ZmE1JworICAgICAgICAgICAgJ2Yx
NScKKyAgICAgICAgd2hlbiAnZmE2JywgJ3dmYTYnCisgICAgICAgICAgICAnZjE2JworICAgICAg
ICB3aGVuICdmYTcnLCAnd2ZhNycKKyAgICAgICAgICAgICdmMTcnCisgICAgICAgIHdoZW4gJ2Nz
ZnIyJworICAgICAgICAgICAgJ2YxOCcKKyAgICAgICAgd2hlbiAnY3NmcjMnCisgICAgICAgICAg
ICAnZjE5JworICAgICAgICB3aGVuICdjc2ZyNCcKKyAgICAgICAgICAgICdmMjAnCisgICAgICAg
IHdoZW4gJ2NzZnI1JworICAgICAgICAgICAgJ2YyMScKKyAgICAgICAgd2hlbiAnY3NmcjYnCisg
ICAgICAgICAgICAnZjIyJworICAgICAgICB3aGVuICdjc2ZyNycKKyAgICAgICAgICAgICdmMjMn
CisgICAgICAgIHdoZW4gJ2NzZnI4JworICAgICAgICAgICAgJ2YyNCcKKyAgICAgICAgd2hlbiAn
Y3NmcjknCisgICAgICAgICAgICAnZjI1JworICAgICAgICB3aGVuICdjc2ZyMTAnCisgICAgICAg
ICAgICAnZjI2JworICAgICAgICB3aGVuICdjc2ZyMTEnCisgICAgICAgICAgICAnZjI3JworICAg
ICAgICBlbHNlCisgICAgICAgICAgICByYWlzZSAiQmFkIHJlZ2lzdGVyIG5hbWUgI3tAbmFtZX0g
YXQgI3tjb2RlT3JpZ2luU3RyaW5nfSIKKyAgICAgICAgZW5kCisgICAgZW5kCitlbmQKKworY2xh
c3MgUklTQ1Y2NFNjcmF0Y2hSZWdpc3RlcgorICAgIGRlZiBpbml0aWFsaXplKG5hbWUpCisgICAg
ICAgIEBuYW1lID0gbmFtZQorICAgIGVuZAorCisgICAgZGVmIHJpc2N2NjRPcGVyYW5kCisgICAg
ICAgIGNhc2UgQG5hbWUKKyAgICAgICAgd2hlbiA6eDMwCisgICAgICAgICAgICAneDMwJworICAg
ICAgICB3aGVuIDp4MzEKKyAgICAgICAgICAgICd4MzEnCisgICAgICAgIGVsc2UKKyAgICAgICAg
ICAgIHJhaXNlICJVbnN1cHBvcnRlZCBzY3JhdGNoIHJlZ2lzdGVyIgorICAgICAgICBlbmQKKyAg
ICBlbmQKKworICAgIGRlZiBzZWxmLngzMAorICAgICAgICBSSVNDVjY0U2NyYXRjaFJlZ2lzdGVy
Lm5ldyg6eDMwKQorICAgIGVuZAorCisgICAgZGVmIHNlbGYueDMxCisgICAgICAgIFJJU0NWNjRT
Y3JhdGNoUmVnaXN0ZXIubmV3KDp4MzEpCisgICAgZW5kCitlbmQKKworY2xhc3MgSW1tZWRpYXRl
CisgICAgZGVmIHJpc2N2NjRPcGVyYW5kCisgICAgICAgICIje3ZhbHVlfSIKKyAgICBlbmQKKwor
ICAgIGRlZiByaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgIHZhbHVlID4gMHg3ZmYgb3IgdmFs
dWUgPCAtMHg4MDAKKyAgICBlbmQKKworICAgIGRlZiByaXNjdjY0TG9hZCh0YXJnZXQpCisgICAg
ICAgICRhc20ucHV0cyAibGkgI3t0YXJnZXQucmlzY3Y2NE9wZXJhbmR9LCAje3ZhbHVlfSIKKyAg
ICBlbmQKK2VuZAorCitjbGFzcyBBZGRyZXNzCisgICAgZGVmIHJpc2N2NjRPcGVyYW5kCisgICAg
ICAgIHJhaXNlICJJbnZhbGlkIG9mZnNldCAje29mZnNldC52YWx1ZX0gYXQgI3tjb2RlT3JpZ2lu
U3RyaW5nfSIgaWYgb2Zmc2V0LnZhbHVlID4gMHg3ZmYgb3Igb2Zmc2V0LnZhbHVlIDwgLTB4ODAw
CisgICAgICAgICIje29mZnNldC52YWx1ZX0oI3tiYXNlLnJpc2N2NjRPcGVyYW5kfSkiCisgICAg
ZW5kCisKKyAgICBkZWYgcmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICBvZmZzZXQudmFsdWUg
PiAweDdmZiBvciBvZmZzZXQudmFsdWUgPCAtMHg4MDAKKyAgICBlbmQKKworICAgIGRlZiByaXNj
djY0TG9hZCh0YXJnZXQpCisgICAgICAgICRhc20ucHV0cyAibGkgI3t0YXJnZXQucmlzY3Y2NE9w
ZXJhbmR9LCAje29mZnNldC52YWx1ZX0iCisgICAgICAgICRhc20ucHV0cyAiYWRkICN7dGFyZ2V0
LnJpc2N2NjRPcGVyYW5kfSwgI3tiYXNlLnJpc2N2NjRPcGVyYW5kfSwgI3t0YXJnZXQucmlzY3Y2
NE9wZXJhbmR9IgorICAgIGVuZAorZW5kCisKK2NsYXNzIEJhc2VJbmRleAorICAgIGRlZiByaXNj
djY0TG9hZCh0YXJnZXQsIHNjcmF0Y2gpCisgICAgICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBl
cyhbYmFzZSwgaW5kZXhdKQorICAgICAgICB3aGVuIFtSZWdpc3RlcklELCBSZWdpc3RlcklEXQor
ICAgICAgICAgICAgJGFzbS5wdXRzICJzbGxpICN7dGFyZ2V0LnJpc2N2NjRPcGVyYW5kfSwgI3tp
bmRleC5yaXNjdjY0T3BlcmFuZH0sICN7c2NhbGVTaGlmdH0iCisgICAgICAgICAgICAkYXNtLnB1
dHMgImFkZCAje3RhcmdldC5yaXNjdjY0T3BlcmFuZH0sICN7YmFzZS5yaXNjdjY0T3BlcmFuZH0s
ICN7dGFyZ2V0LnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgIGlmIG9mZnNldC52YWx1ZSAh
PSAwCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJsaSAje3NjcmF0Y2gucmlzY3Y2NE9wZXJh
bmR9LCAje29mZnNldC52YWx1ZX0iCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJhZGQgI3t0
YXJnZXQucmlzY3Y2NE9wZXJhbmR9LCAje3RhcmdldC5yaXNjdjY0T3BlcmFuZH0sICN7c2NyYXRj
aC5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICBlbmQKKyAgICAgICAgZWxzZQorICAgICAg
ICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKFtiYXNlLCBpbmRleF0pCisgICAg
ICAgIGVuZAorICAgIGVuZAorZW5kCisKK2NsYXNzIEluc3RydWN0aW9uCisgICAgZGVmIGxvd2Vy
UklTQ1Y2NAorICAgICAgICBjYXNlIG9wY29kZQorICAgICAgICB3aGVuICJhZGRpIgorICAgICAg
ICAgICAgcmlzY3Y2NEVtaXRBZGRpdGlvbk9wZXJhdGlvbihvcGVyYW5kcywgOncsIDphZGQpCisg
ICAgICAgIHdoZW4gImFkZHAiLCAiYWRkcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0QWRkaXRp
b25PcGVyYXRpb24ob3BlcmFuZHMsIDpkLCA6YWRkKQorICAgICAgICB3aGVuICJhZGRpcyIsICJh
ZGRwcyIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAgIHdoZW4g
InN1YmkiCisgICAgICAgICAgICByaXNjdjY0RW1pdEFkZGl0aW9uT3BlcmF0aW9uKG9wZXJhbmRz
LCA6dywgOnN1YikKKyAgICAgICAgd2hlbiAic3VicCIsICJzdWJxIgorICAgICAgICAgICAgcmlz
Y3Y2NEVtaXRBZGRpdGlvbk9wZXJhdGlvbihvcGVyYW5kcywgOmQsIDpzdWIpCisgICAgICAgIHdo
ZW4gInN1YmlzIgorICAgICAgICAgICAgcmlzY3Y2NFJhaXNlVW5zdXBwb3J0ZWQKKyAgICAgICAg
d2hlbiAiYW5kaSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0TG9naWNhbE9wZXJhdGlvbihvcGVy
YW5kcywgOncsIDphbmQpCisgICAgICAgIHdoZW4gImFuZHAiLCAiYW5kcSIKKyAgICAgICAgICAg
IHJpc2N2NjRFbWl0TG9naWNhbE9wZXJhdGlvbihvcGVyYW5kcywgOmQsIDphbmQpCisgICAgICAg
IHdoZW4gIm9yaCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0TG9naWNhbE9wZXJhdGlvbihvcGVy
YW5kcywgOmgsIDpvcikKKyAgICAgICAgd2hlbiAib3JpIgorICAgICAgICAgICAgcmlzY3Y2NEVt
aXRMb2dpY2FsT3BlcmF0aW9uKG9wZXJhbmRzLCA6dywgOm9yKQorICAgICAgICB3aGVuICJvcnAi
LCAib3JxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRMb2dpY2FsT3BlcmF0aW9uKG9wZXJhbmRz
LCA6ZCwgOm9yKQorICAgICAgICB3aGVuICJ4b3JpIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRM
b2dpY2FsT3BlcmF0aW9uKG9wZXJhbmRzLCA6dywgOnhvcikKKyAgICAgICAgd2hlbiAieG9ycCIs
ICJ4b3JxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRMb2dpY2FsT3BlcmF0aW9uKG9wZXJhbmRz
LCA6ZCwgOnhvcikKKyAgICAgICAgd2hlbiAibHNoaWZ0aSIKKyAgICAgICAgICAgIHJpc2N2NjRF
bWl0U2hpZnQob3BlcmFuZHMsIDp3LCA6bGxlZnQpCisgICAgICAgIHdoZW4gImxzaGlmdHAiLCAi
bHNoaWZ0cSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0U2hpZnQob3BlcmFuZHMsIDpkLCA6bGxl
ZnQpCisgICAgICAgIHdoZW4gInJzaGlmdGkiCisgICAgICAgICAgICByaXNjdjY0RW1pdFNoaWZ0
KG9wZXJhbmRzLCA6dywgOmFyaWdodCkKKyAgICAgICAgd2hlbiAicnNoaWZ0cCIsICJyc2hpZnRx
IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRTaGlmdChvcGVyYW5kcywgOmQsIDphcmlnaHQpCisg
ICAgICAgIHdoZW4gInVyc2hpZnRpIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRTaGlmdChvcGVy
YW5kcywgOncsIDpscmlnaHQpCisgICAgICAgIHdoZW4gInVyc2hpZnRwIiwgInVyc2hpZnRxIgor
ICAgICAgICAgICAgcmlzY3Y2NEVtaXRTaGlmdChvcGVyYW5kcywgOmQsIDpscmlnaHQpCisgICAg
ICAgIHdoZW4gIm11bGkiCisgICAgICAgICAgICByaXNjdjY0RW1pdE11bERpdkFyaXRobWV0aWMo
b3BlcmFuZHMsIDp3LCA6bXVsKQorICAgICAgICB3aGVuICJtdWxwIiwgIm11bHEiCisgICAgICAg
ICAgICByaXNjdjY0RW1pdE11bERpdkFyaXRobWV0aWMob3BlcmFuZHMsIDpkLCA6bXVsKQorICAg
ICAgICB3aGVuICJkaXZpIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRNdWxEaXZBcml0aG1ldGlj
KG9wZXJhbmRzLCA6dywgOmRpdikKKyAgICAgICAgd2hlbiAiZGl2cSIKKyAgICAgICAgICAgIHJp
c2N2NjRFbWl0TXVsRGl2QXJpdGhtZXRpYyhvcGVyYW5kcywgOmQsIDpkaXYpCisgICAgICAgIHdo
ZW4gImRpdmlzIiwgImRpdnFzIgorICAgICAgICAgICAgcmlzY3Y2NFJhaXNlVW5zdXBwb3J0ZWQK
KyAgICAgICAgd2hlbiAibmVnaSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGxlbWVudE9w
ZXJhdGlvbihvcGVyYW5kcywgOncsIDpuZWcpCisgICAgICAgIHdoZW4gIm5lZ3AiLCAibmVncSIK
KyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGxlbWVudE9wZXJhdGlvbihvcGVyYW5kcywgOmQs
IDpuZWcpCisgICAgICAgIHdoZW4gIm5vdGkiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBs
ZW1lbnRPcGVyYXRpb24ob3BlcmFuZHMsIDp3LCA6bm90KQorICAgICAgICB3aGVuICJub3RxIgor
ICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb21wbGVtZW50T3BlcmF0aW9uKG9wZXJhbmRzLCA6ZCwg
Om5vdCkKKyAgICAgICAgd2hlbiAic3RvcmViIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRTdG9y
ZShvcGVyYW5kcywgOmIpCisgICAgICAgIHdoZW4gInN0b3JlaCIKKyAgICAgICAgICAgIHJpc2N2
NjRFbWl0U3RvcmUob3BlcmFuZHMsIDpoKQorICAgICAgICB3aGVuICJzdG9yZWkiCisgICAgICAg
ICAgICByaXNjdjY0RW1pdFN0b3JlKG9wZXJhbmRzLCA6dykKKyAgICAgICAgd2hlbiAic3RvcmVw
IiwgInN0b3JlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0U3RvcmUob3BlcmFuZHMsIDpkKQor
ICAgICAgICB3aGVuICJsb2FkYiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0TG9hZChvcGVyYW5k
cywgOmJ1LCA6bm9uZSkKKyAgICAgICAgd2hlbiAibG9hZGgiCisgICAgICAgICAgICByaXNjdjY0
RW1pdExvYWQob3BlcmFuZHMsIDpodSwgOm5vbmUpCisgICAgICAgIHdoZW4gImxvYWRpIgorICAg
ICAgICAgICAgcmlzY3Y2NEVtaXRMb2FkKG9wZXJhbmRzLCA6d3UsIDpub25lKQorICAgICAgICB3
aGVuICJsb2FkaXMiCisgICAgICAgICAgICByaXNjdjY0RW1pdExvYWQob3BlcmFuZHMsIDp3LCA6
bm9uZSkKKyAgICAgICAgd2hlbiAibG9hZHAiLCAibG9hZHEiCisgICAgICAgICAgICByaXNjdjY0
RW1pdExvYWQob3BlcmFuZHMsIDpkLCA6bm9uZSkKKyAgICAgICAgd2hlbiAibG9hZGJzaSIKKyAg
ICAgICAgICAgIHJpc2N2NjRFbWl0TG9hZChvcGVyYW5kcywgOmIsIDp3KQorICAgICAgICB3aGVu
ICJsb2FkYnNxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRMb2FkKG9wZXJhbmRzLCA6YiwgOm5v
bmUpCisgICAgICAgIHdoZW4gImxvYWRoc2kiCisgICAgICAgICAgICByaXNjdjY0RW1pdExvYWQo
b3BlcmFuZHMsIDpoLCA6dykKKyAgICAgICAgd2hlbiAibG9hZGhzcSIKKyAgICAgICAgICAgIHJp
c2N2NjRFbWl0TG9hZChvcGVyYW5kcywgOmgsIDpub25lKQorICAgICAgICB3aGVuICJiZmVxIgor
ICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5k
cywgOnMsIDplcSkKKyAgICAgICAgd2hlbiAiYmZsdCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0
RlBDb25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3BlcmFuZHMsIDpzLCA6bHQpCisgICAgICAgIHdo
ZW4gImJmZ3QiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29uZGl0aW9uYWxCcmFuY2hGb3JU
ZXN0KG9wZXJhbmRzLCA6cywgOmd0KQorICAgICAgICB3aGVuICJiZmx0dW4iCisgICAgICAgICAg
ICByaXNjdjY0RW1pdEZQQ29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6cywgOmx0
dW4pCisgICAgICAgIHdoZW4gImJmbHRlcXVuIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENv
bmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOnMsIDpsdGVxdW4pCisgICAgICAgIHdo
ZW4gImJmZ3R1biIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb25kaXRpb25hbEJyYW5jaEZv
clRlc3Qob3BlcmFuZHMsIDpzLCA6Z3R1bikKKyAgICAgICAgd2hlbiAiYmZndGVxdW4iCisgICAg
ICAgICAgICByaXNjdjY0RW1pdEZQQ29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6
cywgOmd0ZXF1bikKKyAgICAgICAgd2hlbiAiYmRlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0
RlBDb25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3BlcmFuZHMsIDpkLCA6ZXEpCisgICAgICAgIHdo
ZW4gImJkbmVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbmRpdGlvbmFsQnJhbmNoRm9y
VGVzdChvcGVyYW5kcywgOmQsIDpuZXEpCisgICAgICAgIHdoZW4gImJkbHQiCisgICAgICAgICAg
ICByaXNjdjY0RW1pdEZQQ29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6ZCwgOmx0
KQorICAgICAgICB3aGVuICJiZGx0ZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29uZGl0
aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6ZCwgOmx0ZXEpCisgICAgICAgIHdoZW4gImJk
Z3QiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9w
ZXJhbmRzLCA6ZCwgOmd0KQorICAgICAgICB3aGVuICJiZGd0ZXEiCisgICAgICAgICAgICByaXNj
djY0RW1pdEZQQ29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6ZCwgOmd0ZXEpCisg
ICAgICAgIHdoZW4gImJkZXF1biIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb25kaXRpb25h
bEJyYW5jaEZvclRlc3Qob3BlcmFuZHMsIDpkLCA6ZXF1bikKKyAgICAgICAgd2hlbiAiYmRuZXF1
biIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3Bl
cmFuZHMsIDpkLCA6bmVxdW4pCisgICAgICAgIHdoZW4gImJkbHR1biIKKyAgICAgICAgICAgIHJp
c2N2NjRFbWl0RlBDb25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3BlcmFuZHMsIDpkLCA6bHR1bikK
KyAgICAgICAgd2hlbiAiYmRsdGVxdW4iCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29uZGl0
aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6ZCwgOmx0ZXF1bikKKyAgICAgICAgd2hlbiAi
YmRndHVuIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbmRpdGlvbmFsQnJhbmNoRm9yVGVz
dChvcGVyYW5kcywgOmQsIDpndHVuKQorICAgICAgICB3aGVuICJiZGd0ZXF1biIKKyAgICAgICAg
ICAgIHJpc2N2NjRFbWl0RlBDb25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3BlcmFuZHMsIDpkLCA6
Z3RlcXVuKQorICAgICAgICB3aGVuICJ0ZDJpIiwgImJjZDJpIiwgImJ0ZDJpIgorICAgICAgICAg
ICAgcmlzY3Y2NFJhaXNlVW5zdXBwb3J0ZWQKKyAgICAgICAgd2hlbiAibW92ZHoiCisgICAgICAg
ICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3aGVuICJwb3AiCisgICAgICAg
ICAgICBzaXplID0gOCAqIG9wZXJhbmRzLnNpemUKKyAgICAgICAgICAgIG9wZXJhbmRzLmVhY2hf
d2l0aF9pbmRleCB7CisgICAgICAgICAgICAgICAgfCBvcCwgaW5kZXggfAorICAgICAgICAgICAg
ICAgICRhc20ucHV0cyAibGQgI3tvcC5yaXNjdjY0T3BlcmFuZH0sICN7c2l6ZSAtIDggKiAoaW5k
ZXggKyAxKX0oc3ApIgorICAgICAgICAgICAgfQorICAgICAgICAgICAgJGFzbS5wdXRzICJhZGRp
IHNwLCBzcCwgI3tzaXplfSIKKyAgICAgICAgd2hlbiAicHVzaCIKKyAgICAgICAgICAgIHNpemUg
PSA4ICogb3BlcmFuZHMuc2l6ZQorICAgICAgICAgICAgJGFzbS5wdXRzICJhZGRpIHNwLCBzcCwg
I3stc2l6ZX0iCisgICAgICAgICAgICBvcGVyYW5kcy5yZXZlcnNlLmVhY2hfd2l0aF9pbmRleCB7
CisgICAgICAgICAgICAgICAgfCBvcCwgaW5kZXggfAorICAgICAgICAgICAgICAgICRhc20ucHV0
cyAic2QgI3tvcC5yaXNjdjY0T3BlcmFuZH0sICN7c2l6ZSAtIDggKiAoaW5kZXggKyAxKX0oc3Ap
IgorICAgICAgICAgICAgfQorICAgICAgICB3aGVuICJtb3ZlIgorICAgICAgICAgICAgY2FzZSBy
aXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgICAgICAgICAgd2hlbiBbUmVnaXN0ZXJJ
RCwgUmVnaXN0ZXJJRF0KKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgIm12ICN7b3BlcmFuZHNb
MV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAg
ICAgICAgIHdoZW4gW0ltbWVkaWF0ZSwgUmVnaXN0ZXJJRF0KKyAgICAgICAgICAgICAgICAkYXNt
LnB1dHMgImxpICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJp
c2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICByaXNjdjY0
UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgICAgICAgICBlbmQKKyAgICAg
ICAgd2hlbiAic3hiMmkiCisgICAgICAgICAgICByaXNjdjY0RW1pdEJpdEV4dGVuc2lvbihvcGVy
YW5kcywgOmIsIDp3LCA6c2lnbikKKyAgICAgICAgd2hlbiAic3hiMnEiCisgICAgICAgICAgICBy
aXNjdjY0RW1pdEJpdEV4dGVuc2lvbihvcGVyYW5kcywgOmIsIDpkLCA6c2lnbikKKyAgICAgICAg
d2hlbiAic3hoMmkiCisgICAgICAgICAgICByaXNjdjY0RW1pdEJpdEV4dGVuc2lvbihvcGVyYW5k
cywgOmgsIDp3LCA6c2lnbikKKyAgICAgICAgd2hlbiAic3hoMnEiCisgICAgICAgICAgICByaXNj
djY0RW1pdEJpdEV4dGVuc2lvbihvcGVyYW5kcywgOmgsIDpkLCA6c2lnbikKKyAgICAgICAgd2hl
biAic3hpMnAiLCAic3hpMnEiCisgICAgICAgICAgICByaXNjdjY0RW1pdEJpdEV4dGVuc2lvbihv
cGVyYW5kcywgOncsIDpkLCA6c2lnbikKKyAgICAgICAgd2hlbiAienhpMnAiLCAienhpMnEiCisg
ICAgICAgICAgICByaXNjdjY0RW1pdEJpdEV4dGVuc2lvbihvcGVyYW5kcywgOncsIDpkLCA6emVy
bykKKyAgICAgICAgd2hlbiAibm9wIgorICAgICAgICAgICAgJGFzbS5wdXRzICJub3AiCisgICAg
ICAgIHdoZW4gImJiZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNo
KG9wZXJhbmRzLCA6YiwgOmVxKQorICAgICAgICB3aGVuICJiaWVxIgorICAgICAgICAgICAgcmlz
Y3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywgOncsIDplcSkKKyAgICAgICAgd2hl
biAiYnBlcSIsICJicWVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5j
aChvcGVyYW5kcywgOmQsIDplcSkKKyAgICAgICAgd2hlbiAiYmJuZXEiCisgICAgICAgICAgICBy
aXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6YiwgOm5lcSkKKyAgICAgICAg
d2hlbiAiYmluZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9w
ZXJhbmRzLCA6dywgOm5lcSkKKyAgICAgICAgd2hlbiAiYnBuZXEiLCAiYnFuZXEiCisgICAgICAg
ICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6ZCwgOm5lcSkKKyAg
ICAgICAgd2hlbiAiYmJhIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5j
aChvcGVyYW5kcywgOmIsIDphKQorICAgICAgICB3aGVuICJiaWEiCisgICAgICAgICAgICByaXNj
djY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6dywgOmEpCisgICAgICAgIHdoZW4g
ImJwYSIsICJicWEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9w
ZXJhbmRzLCA6ZCwgOmEpCisgICAgICAgIHdoZW4gImJiYWVxIgorICAgICAgICAgICAgcmlzY3Y2
NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywgOmIsIDphZXEpCisgICAgICAgIHdoZW4g
ImJpYWVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5k
cywgOncsIDphZXEpCisgICAgICAgIHdoZW4gImJwYWVxIiwgImJxYWVxIgorICAgICAgICAgICAg
cmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywgOmQsIDphZXEpCisgICAgICAg
IHdoZW4gImJiYiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2gob3Bl
cmFuZHMsIDpiLCA6YikKKyAgICAgICAgd2hlbiAiYmliIgorICAgICAgICAgICAgcmlzY3Y2NEVt
aXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywgOncsIDpiKQorICAgICAgICB3aGVuICJicGIi
LCAiYnFiIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5k
cywgOmQsIDpiKQorICAgICAgICB3aGVuICJiYmJlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0
Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFuZHMsIDpiLCA6YmVxKQorICAgICAgICB3aGVuICJiaWJl
cSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFuZHMsIDp3
LCA6YmVxKQorICAgICAgICB3aGVuICJicGJlcSIsICJicWJlcSIKKyAgICAgICAgICAgIHJpc2N2
NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFuZHMsIDpkLCA6YmVxKQorICAgICAgICB3aGVu
ICJiYmd0IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5k
cywgOmIsIDpndCkKKyAgICAgICAgd2hlbiAiYmlndCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0
Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFuZHMsIDp3LCA6Z3QpCisgICAgICAgIHdoZW4gImJwZ3Qi
LCAiYnFndCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFu
ZHMsIDpkLCA6Z3QpCisgICAgICAgIHdoZW4gImJiZ3RlcSIKKyAgICAgICAgICAgIHJpc2N2NjRF
bWl0Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFuZHMsIDpiLCA6Z3RlcSkKKyAgICAgICAgd2hlbiAi
YmlndGVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5k
cywgOncsIDpndGVxKQorICAgICAgICB3aGVuICJicGd0ZXEiLCAiYnFndGVxIgorICAgICAgICAg
ICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywgOmQsIDpndGVxKQorICAg
ICAgICB3aGVuICJiYmx0IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5j
aChvcGVyYW5kcywgOmIsIDpsdCkKKyAgICAgICAgd2hlbiAiYmlsdCIKKyAgICAgICAgICAgIHJp
c2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFuZHMsIDp3LCA6bHQpCisgICAgICAgIHdo
ZW4gImJwbHQiLCAiYnFsdCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFu
Y2gob3BlcmFuZHMsIDpkLCA6bHQpCisgICAgICAgIHdoZW4gImJibHRlcSIKKyAgICAgICAgICAg
IHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFuZHMsIDpiLCA6bHRlcSkKKyAgICAg
ICAgd2hlbiAiYmlsdGVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5j
aChvcGVyYW5kcywgOncsIDpsdGVxKQorICAgICAgICB3aGVuICJicGx0ZXEiLCAiYnFsdGVxIgor
ICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywgOmQsIDps
dGVxKQorICAgICAgICB3aGVuICJidGJ6IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRp
b25hbEJyYW5jaEZvclRlc3Qob3BlcmFuZHMsIDpiLCA6eikKKyAgICAgICAgd2hlbiAiYnRibnoi
CisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5k
cywgOmIsIDpueikKKyAgICAgICAgd2hlbiAiYnRicyIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0
Q29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6YiwgOnMpCisgICAgICAgIHdoZW4g
ImJ0aXoiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChv
cGVyYW5kcywgOncsIDp6KQorICAgICAgICB3aGVuICJidGlueiIKKyAgICAgICAgICAgIHJpc2N2
NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6dywgOm56KQorICAgICAg
ICB3aGVuICJidGlzIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaEZv
clRlc3Qob3BlcmFuZHMsIDp3LCA6cykKKyAgICAgICAgd2hlbiAiYnRweiIsICJidHF6IgorICAg
ICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3BlcmFuZHMsIDpk
LCA6eikKKyAgICAgICAgd2hlbiAiYnRwbnoiLCAiYnRxbnoiCisgICAgICAgICAgICByaXNjdjY0
RW1pdENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOmQsIDpueikKKyAgICAgICAg
d2hlbiAiYnRwcyIsICJidHFzIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJy
YW5jaEZvclRlc3Qob3BlcmFuZHMsIDpkLCA6cykKKyAgICAgICAgd2hlbiAiYmFkZGl6IgorICAg
ICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaEZvckFkZGl0aW9uT3BlcmF0aW9u
KG9wZXJhbmRzLCA6dywgOmFkZCwgOnopCisgICAgICAgIHdoZW4gImJhZGRpbnoiCisgICAgICAg
ICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoRm9yQWRkaXRpb25PcGVyYXRpb24ob3Bl
cmFuZHMsIDp3LCA6YWRkLCA6bnopCisgICAgICAgIHdoZW4gImJhZGRpcyIKKyAgICAgICAgICAg
IHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2hGb3JBZGRpdGlvbk9wZXJhdGlvbihvcGVyYW5k
cywgOncsIDphZGQsIDpzKQorICAgICAgICB3aGVuICJiYWRkaW8iCisgICAgICAgICAgICByaXNj
djY0RW1pdE92ZXJmbG93QnJhbmNoRm9yT3BlcmF0aW9uKG9wZXJhbmRzLCA6dywgOmFkZCkKKyAg
ICAgICAgd2hlbiAiYmFkZHB6IiwgImJhZGRxeiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29u
ZGl0aW9uYWxCcmFuY2hGb3JBZGRpdGlvbk9wZXJhdGlvbihvcGVyYW5kcywgOmQsIDphZGQsIDp6
KQorICAgICAgICB3aGVuICJiYWRkcG56IiwgImJhZGRxbnoiCisgICAgICAgICAgICByaXNjdjY0
RW1pdENvbmRpdGlvbmFsQnJhbmNoRm9yQWRkaXRpb25PcGVyYXRpb24ob3BlcmFuZHMsIDpkLCA6
YWRkLCA6bnopCisgICAgICAgIHdoZW4gImJhZGRwcyIsICJiYWRkcXMiCisgICAgICAgICAgICBy
aXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoRm9yQWRkaXRpb25PcGVyYXRpb24ob3BlcmFuZHMs
IDpkLCA6YWRkLCA6cykKKyAgICAgICAgd2hlbiAiYmFkZHBvIiwgImJhZGRxbyIKKyAgICAgICAg
ICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAgIHdoZW4gImJzdWJpeiIKKyAgICAg
ICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2hGb3JBZGRpdGlvbk9wZXJhdGlvbihv
cGVyYW5kcywgOncsIDpzdWIsIDp6KQorICAgICAgICB3aGVuICJic3ViaW56IgorICAgICAgICAg
ICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaEZvckFkZGl0aW9uT3BlcmF0aW9uKG9wZXJh
bmRzLCA6dywgOnN1YiwgOm56KQorICAgICAgICB3aGVuICJic3ViaXMiCisgICAgICAgICAgICBy
aXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoRm9yQWRkaXRpb25PcGVyYXRpb24ob3BlcmFuZHMs
IDp3LCA6c3ViLCA6cykKKyAgICAgICAgd2hlbiAiYnN1YmlvIgorICAgICAgICAgICAgcmlzY3Y2
NEVtaXRPdmVyZmxvd0JyYW5jaEZvck9wZXJhdGlvbihvcGVyYW5kcywgOncsIDpzdWIpCisgICAg
ICAgIHdoZW4gImJtdWxpeiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFu
Y2hGb3JNdWx0aXBsaWNhdGlvbk9wZXJhdGlvbihvcGVyYW5kcywgOncsIDp6KQorICAgICAgICB3
aGVuICJibXVsaW56IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaEZv
ck11bHRpcGxpY2F0aW9uT3BlcmF0aW9uKG9wZXJhbmRzLCA6dywgOm56KQorICAgICAgICB3aGVu
ICJibXVsaXMiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoRm9yTXVs
dGlwbGljYXRpb25PcGVyYXRpb24ob3BlcmFuZHMsIDp3LCA6cykKKyAgICAgICAgd2hlbiAiYm11
bGlvIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRPdmVyZmxvd0JyYW5jaEZvck9wZXJhdGlvbihv
cGVyYW5kcywgOncsIDptdWwpCisgICAgICAgIHdoZW4gImJvcml6IiwgImJvcmlueiIsICJib3Jp
cyIsICJib3JpbyIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAg
IHdoZW4gImptcCIKKyAgICAgICAgICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5k
cykKKyAgICAgICAgICAgIHdoZW4gW1JlZ2lzdGVySUQsIEltbWVkaWF0ZV0KKyAgICAgICAgICAg
ICAgICAkYXNtLnB1dHMgImpyICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAg
ICAgICAgd2hlbiBbQmFzZUluZGV4LCBJbW1lZGlhdGUsIEltbWVkaWF0ZV0KKyAgICAgICAgICAg
ICAgICBvcGVyYW5kc1swXS5yaXNjdjY0TG9hZChSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMSwg
UklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzApCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJs
ZCB4MzEsIDAoeDMxKSIKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImpyIHgzMSIKKyAgICAg
ICAgICAgIHdoZW4gW0FkZHJlc3MsIEltbWVkaWF0ZV0KKyAgICAgICAgICAgICAgICBpZiBvcGVy
YW5kc1swXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICAgICAgICAgIG9wZXJhbmRz
WzBdLnJpc2N2NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxKQorICAgICAgICAgICAg
ICAgICAgICAkYXNtLnB1dHMgImxkIHgzMSwgMCh4MzEpIgorICAgICAgICAgICAgICAgICAgICAk
YXNtLnB1dHMgImpyIHgzMSIKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAg
ICAgICRhc20ucHV0cyAibGQgeDMxLCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAg
ICAgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJqciB4MzEiCisgICAgICAgICAgICAgICAgZW5k
CisgICAgICAgICAgICB3aGVuIFtMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgICAgICAgICAkYXNt
LnB1dHMgInRhaWwgI3tvcGVyYW5kc1swXS5hc21MYWJlbH0iCisgICAgICAgICAgICB3aGVuIFtM
b2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICAgICAgICAgICRhc20ucHV0cyAidGFpbCAje29w
ZXJhbmRzWzBdLmFzbUxhYmVsfSIKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICBy
aXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgICAgICAgICBlbmQK
KyAgICAgICAgd2hlbiAiY2FsbCIKKyAgICAgICAgICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBl
cyhvcGVyYW5kcykKKyAgICAgICAgICAgIHdoZW4gW1JlZ2lzdGVySUQsIEltbWVkaWF0ZV0KKyAg
ICAgICAgICAgICAgICAkYXNtLnB1dHMgImphbHIgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFu
ZH0iCisgICAgICAgICAgICB3aGVuIFtBZGRyZXNzLCBJbW1lZGlhdGVdCisgICAgICAgICAgICAg
ICAgaWYgb3BlcmFuZHNbMF0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgICAgICAg
ICBvcGVyYW5kc1swXS5yaXNjdjY0TG9hZChSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMSkKKyAg
ICAgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJsZCB4MzEsIDAoeDMxKSIKKyAgICAgICAgICAg
ICAgICAgICAgJGFzbS5wdXRzICJqYWxyIHgzMSIKKyAgICAgICAgICAgICAgICBlbHNlCisgICAg
ICAgICAgICAgICAgICAgICRhc20ucHV0cyAibGQgeDMxLCAje29wZXJhbmRzWzBdLnJpc2N2NjRP
cGVyYW5kfSIKKyAgICAgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJqYWxyIHgzMSIKKyAgICAg
ICAgICAgICAgICBlbmQKKyAgICAgICAgICAgIHdoZW4gW0xhYmVsUmVmZXJlbmNlXQorICAgICAg
ICAgICAgICAgICRhc20ucHV0cyAiY2FsbCAje29wZXJhbmRzWzBdLmFzbUxhYmVsfSIKKyAgICAg
ICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFu
ZHMob3BlcmFuZHMpCisgICAgICAgICAgICBlbmQKKyAgICAgICAgd2hlbiAiYnJlYWsiCisgICAg
ICAgICAgICAkYXNtLnB1dHMgImVicmVhayIKKyAgICAgICAgd2hlbiAicmV0IgorICAgICAgICAg
ICAgJGFzbS5wdXRzICJyZXQiCisgICAgICAgIHdoZW4gImNiZXEiCisgICAgICAgICAgICByaXNj
djY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDpiLCA6ZXEpCisgICAgICAgIHdoZW4gImNpZXEiCisg
ICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDp3LCA6ZXEpCisgICAgICAg
IHdoZW4gImNwZXEiLCAiY3FlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVy
YW5kcywgOmQsIDplcSkKKyAgICAgICAgd2hlbiAiY2JuZXEiCisgICAgICAgICAgICByaXNjdjY0
RW1pdENvbXBhcmUob3BlcmFuZHMsIDpiLCA6bmVxKQorICAgICAgICB3aGVuICJjaW5lcSIKKyAg
ICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVyYW5kcywgOncsIDpuZXEpCisgICAgICAg
IHdoZW4gImNwbmVxIiwgImNxbmVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9w
ZXJhbmRzLCA6ZCwgOm5lcSkKKyAgICAgICAgd2hlbiAiY2JhIgorICAgICAgICAgICAgcmlzY3Y2
NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6YiwgOmEpCisgICAgICAgIHdoZW4gImNpYSIKKyAgICAg
ICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVyYW5kcywgOncsIDphKQorICAgICAgICB3aGVu
ICJjcGEiLCAiY3FhIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6
ZCwgOmEpCisgICAgICAgIHdoZW4gImNiYWVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb21w
YXJlKG9wZXJhbmRzLCA6YiwgOmFlcSkKKyAgICAgICAgd2hlbiAiY2lhZXEiCisgICAgICAgICAg
ICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDp3LCA6YWVxKQorICAgICAgICB3aGVuICJj
cGFlcSIsICJjcWFlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVyYW5kcywg
OmQsIDphZXEpCisgICAgICAgIHdoZW4gImNiYiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29t
cGFyZShvcGVyYW5kcywgOmIsIDpiKQorICAgICAgICB3aGVuICJjaWIiCisgICAgICAgICAgICBy
aXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDp3LCA6YikKKyAgICAgICAgd2hlbiAiY3BiIiwg
ImNxYiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVyYW5kcywgOmQsIDpiKQor
ICAgICAgICB3aGVuICJjYmJlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVy
YW5kcywgOmIsIDpiZXEpCisgICAgICAgIHdoZW4gImNpYmVxIgorICAgICAgICAgICAgcmlzY3Y2
NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6dywgOmJlcSkKKyAgICAgICAgd2hlbiAiY3BiZXEiLCAi
Y3FiZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDpkLCA6YmVx
KQorICAgICAgICB3aGVuICJjYmx0IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9w
ZXJhbmRzLCA6YiwgOmx0KQorICAgICAgICB3aGVuICJjaWx0IgorICAgICAgICAgICAgcmlzY3Y2
NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6dywgOmx0KQorICAgICAgICB3aGVuICJjcGx0IiwgImNx
bHQiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDpkLCA6bHQpCisg
ICAgICAgIHdoZW4gImNibHRlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVy
YW5kcywgOmIsIDpsdGVxKQorICAgICAgICB3aGVuICJjaWx0ZXEiCisgICAgICAgICAgICByaXNj
djY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDp3LCA6bHRlcSkKKyAgICAgICAgd2hlbiAiY3BsdGVx
IiwgImNxbHRlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVyYW5kcywgOmQs
IDpsdGVxKQorICAgICAgICB3aGVuICJjYmd0IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb21w
YXJlKG9wZXJhbmRzLCA6YiwgOmd0KQorICAgICAgICB3aGVuICJjaWd0IgorICAgICAgICAgICAg
cmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6dywgOmd0KQorICAgICAgICB3aGVuICJjcGd0
IiwgImNxZ3QiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDpkLCA6
Z3QpCisgICAgICAgIHdoZW4gImNiZ3RlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFy
ZShvcGVyYW5kcywgOmIsIDpndGVxKQorICAgICAgICB3aGVuICJjaWd0ZXEiCisgICAgICAgICAg
ICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDp3LCA6Z3RlcSkKKyAgICAgICAgd2hlbiAi
Y3BndGVxIiwgImNxZ3RlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVyYW5k
cywgOmQsIDpndGVxKQorICAgICAgICB3aGVuICJ0YnoiCisgICAgICAgICAgICByaXNjdjY0RW1p
dFRlc3Qob3BlcmFuZHMsIDpiLCA6eikKKyAgICAgICAgd2hlbiAidGJueiIKKyAgICAgICAgICAg
IHJpc2N2NjRFbWl0VGVzdChvcGVyYW5kcywgOmIsIDpueikKKyAgICAgICAgd2hlbiAidGl6Igor
ICAgICAgICAgICAgcmlzY3Y2NEVtaXRUZXN0KG9wZXJhbmRzLCA6dywgOnopCisgICAgICAgIHdo
ZW4gInRpbnoiCisgICAgICAgICAgICByaXNjdjY0RW1pdFRlc3Qob3BlcmFuZHMsIDp3LCA6bnop
CisgICAgICAgIHdoZW4gInRweiIsICJ0cXoiCisgICAgICAgICAgICByaXNjdjY0RW1pdFRlc3Qo
b3BlcmFuZHMsIDpkLCA6eikKKyAgICAgICAgd2hlbiAidHBueiIsICJ0cW56IgorICAgICAgICAg
ICAgcmlzY3Y2NEVtaXRUZXN0KG9wZXJhbmRzLCA6ZCwgOm56KQorICAgICAgICB3aGVuICJ0YnMi
LCAidGlzIiwgInRwcyIsICJ0cXMiCisgICAgICAgICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRl
ZAorICAgICAgICB3aGVuICJwZWVrIiwgInBva2UiCisgICAgICAgICAgICByaXNjdjY0UmFpc2VV
bnN1cHBvcnRlZAorICAgICAgICB3aGVuICJibyIsICJicyIsICJieiIsICJibnoiCisgICAgICAg
ICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3aGVuICJsZWFwIiwgImxlYXEi
CisgICAgICAgICAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgICAg
ICAgICB3aGVuIFtBZGRyZXNzLCBSZWdpc3RlcklEXQorICAgICAgICAgICAgICAgIGlmIG9wZXJh
bmRzWzBdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAgICAgICAgICAgb3BlcmFuZHNb
MF0ucmlzY3Y2NExvYWQoUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzEpCisgICAgICAgICAgICAg
ICAgICAgICRhc20ucHV0cyAibXYgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSIK
KyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgICRhc20ucHV0cyAiYWRk
aSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5iYXNlLnJpc2N2
NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5vZmZzZXQudmFsdWV9IgorICAgICAgICAgICAgICAg
IGVuZAorICAgICAgICAgICAgd2hlbiBbQmFzZUluZGV4LCBSZWdpc3RlcklEXQorICAgICAgICAg
ICAgICAgIG9wZXJhbmRzWzBdLnJpc2N2NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMx
LCBSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMCkKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMg
Im12ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEiCisgICAgICAgICAgICB3aGVu
IFtMYWJlbFJlZmVyZW5jZSwgUmVnaXN0ZXJJRF0KKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMg
ImxsYSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5hc21MYWJl
bH0iCisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0
Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgICAgICAgICAgZW5kCisgICAgICAgIHdoZW4gInNt
dWxsaSIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAgIHdoZW4g
Im1lbWZlbmNlIgorICAgICAgICAgICAgJGFzbS5wdXRzICJmZW5jZSBydywgcnciCisgICAgICAg
IHdoZW4gImZlbmNlIgorICAgICAgICAgICAgJGFzbS5wdXRzICJmZW5jZSIKKyAgICAgICAgd2hl
biAiYmZpcSIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAgIHdo
ZW4gInBjcnRvYWRkciIKKyAgICAgICAgICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVy
YW5kcykKKyAgICAgICAgICAgIHdoZW4gW0xhYmVsUmVmZXJlbmNlLCBSZWdpc3RlcklEXQorICAg
ICAgICAgICAgICAgICRhc20ucHV0cyAibGxhICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9
LCAje29wZXJhbmRzWzBdLmFzbUxhYmVsfSIKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAg
ICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgICAgICAg
ICBlbmQKKyAgICAgICAgd2hlbiAiZ2xvYmFsYWRkciIKKyAgICAgICAgICAgIGNhc2UgcmlzY3Y2
NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICAgICAgICAgIHdoZW4gW0xhYmVsUmVmZXJlbmNl
LCBSZWdpc3RlcklEXQorICAgICAgICAgICAgICAgICRhc20ucHV0cyAibGEgI3tvcGVyYW5kc1sx
XS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0uYXNtTGFiZWx9IgorICAgICAgICAgICAg
ZWxzZQorICAgICAgICAgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVy
YW5kcykKKyAgICAgICAgICAgIGVuZAorICAgICAgICB3aGVuICJscm90YXRlaSIsICJscm90YXRl
cSIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAgIHdoZW4gInJy
b3RhdGVpIiwgInJyb3RhdGVxIgorICAgICAgICAgICAgcmlzY3Y2NFJhaXNlVW5zdXBwb3J0ZWQK
KyAgICAgICAgd2hlbiAibW92ZWQiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQT3BlcmF0aW9u
KG9wZXJhbmRzLCAiZm12LmQiKQorICAgICAgICB3aGVuICJsb2FkZiIKKyAgICAgICAgICAgIHJp
c2N2NjRFbWl0RlBMb2FkKG9wZXJhbmRzLCAiZmx3IikKKyAgICAgICAgd2hlbiAibG9hZGQiCisg
ICAgICAgICAgICByaXNjdjY0RW1pdEZQTG9hZChvcGVyYW5kcywgImZsZCIpCisgICAgICAgIHdo
ZW4gInN0b3JlZiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBTdG9yZShvcGVyYW5kcywgImZz
dyIpCisgICAgICAgIHdoZW4gInN0b3JlZCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBTdG9y
ZShvcGVyYW5kcywgImZzZCIpCisgICAgICAgIHdoZW4gImFkZGYiCisgICAgICAgICAgICByaXNj
djY0RW1pdEZQT3BlcmF0aW9uKFtvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzFd
XSwgImZhZGQucyIpCisgICAgICAgIHdoZW4gImFkZGQiCisgICAgICAgICAgICByaXNjdjY0RW1p
dEZQT3BlcmF0aW9uKFtvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzFdXSwgImZh
ZGQuZCIpCisgICAgICAgIHdoZW4gInN1YmYiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQT3Bl
cmF0aW9uKFtvcGVyYW5kc1sxXSwgb3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdXSwgImZzdWIucyIp
CisgICAgICAgIHdoZW4gInN1YmQiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQT3BlcmF0aW9u
KFtvcGVyYW5kc1sxXSwgb3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdXSwgImZzdWIuZCIpCisgICAg
ICAgIHdoZW4gIm11bGYiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQT3BlcmF0aW9uKFtvcGVy
YW5kc1swXSwgb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzFdXSwgImZtdWwucyIpCisgICAgICAgIHdo
ZW4gIm11bGQiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQT3BlcmF0aW9uKFtvcGVyYW5kc1sw
XSwgb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzFdXSwgImZtdWwuZCIpCisgICAgICAgIHdoZW4gImRp
dmYiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQT3BlcmF0aW9uKFtvcGVyYW5kc1sxXSwgb3Bl
cmFuZHNbMF0sIG9wZXJhbmRzWzFdXSwgImZkaXYucyIpCisgICAgICAgIHdoZW4gImRpdmQiCisg
ICAgICAgICAgICByaXNjdjY0RW1pdEZQT3BlcmF0aW9uKFtvcGVyYW5kc1sxXSwgb3BlcmFuZHNb
MF0sIG9wZXJhbmRzWzFdXSwgImZkaXYuZCIpCisgICAgICAgIHdoZW4gInNxcnRmIgorICAgICAg
ICAgICAgcmlzY3Y2NEVtaXRGUE9wZXJhdGlvbihvcGVyYW5kcywgImZzcXJ0LnMiKQorICAgICAg
ICB3aGVuICJzcXJ0ZCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBPcGVyYXRpb24ob3BlcmFu
ZHMsICJmc3FydC5kIikKKyAgICAgICAgd2hlbiAiYWJzZiIKKyAgICAgICAgICAgIHJpc2N2NjRF
bWl0RlBPcGVyYXRpb24ob3BlcmFuZHMsICJmYWJzLnMiKQorICAgICAgICB3aGVuICJhYnNkIgor
ICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUE9wZXJhdGlvbihvcGVyYW5kcywgImZhYnMuZCIpCisg
ICAgICAgIHdoZW4gIm5lZ2YiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQT3BlcmF0aW9uKG9w
ZXJhbmRzLCAiZm5lZy5zIikKKyAgICAgICAgd2hlbiAibmVnZCIKKyAgICAgICAgICAgIHJpc2N2
NjRFbWl0RlBPcGVyYXRpb24ob3BlcmFuZHMsICJmbmVnLmQiKQorICAgICAgICB3aGVuICJmbG9v
cmYiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQUm91bmRPcGVyYXRpb24ob3BlcmFuZHMsIDpz
LCAicmRuIikKKyAgICAgICAgd2hlbiAiZmxvb3JkIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRG
UFJvdW5kT3BlcmF0aW9uKG9wZXJhbmRzLCA6ZCwgInJkbiIpCisgICAgICAgIHdoZW4gImNlaWxm
IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUFJvdW5kT3BlcmF0aW9uKG9wZXJhbmRzLCA6cywg
InJ1cCIpCisgICAgICAgIHdoZW4gImNlaWxkIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUFJv
dW5kT3BlcmF0aW9uKG9wZXJhbmRzLCA6ZCwgInJ1cCIpCisgICAgICAgIHdoZW4gInJvdW5kZiIK
KyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBSb3VuZE9wZXJhdGlvbihvcGVyYW5kcywgOnMsICJy
bmUiKQorICAgICAgICB3aGVuICJyb3VuZGQiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQUm91
bmRPcGVyYXRpb24ob3BlcmFuZHMsIDpkLCAicm5lIikKKyAgICAgICAgd2hlbiAidHJ1bmNhdGVm
IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUFJvdW5kT3BlcmF0aW9uKG9wZXJhbmRzLCA6cywg
InJ0eiIpCisgICAgICAgIHdoZW4gInRydW5jYXRlZCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0
RlBSb3VuZE9wZXJhdGlvbihvcGVyYW5kcywgOmQsICJydHoiKQorICAgICAgICB3aGVuICJ0cnVu
Y2F0ZWYyaSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb252ZXJ0T3BlcmF0aW9uKG9wZXJh
bmRzLCA6cywgOnd1LCAicnR6IikKKyAgICAgICAgd2hlbiAidHJ1bmNhdGVkMmkiCisgICAgICAg
ICAgICByaXNjdjY0RW1pdEZQQ29udmVydE9wZXJhdGlvbihvcGVyYW5kcywgOmQsIDp3dSwgInJ0
eiIpCisgICAgICAgIHdoZW4gInRydW5jYXRlZjJxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRG
UENvbnZlcnRPcGVyYXRpb24ob3BlcmFuZHMsIDpzLCA6bHUsICJydHoiKQorICAgICAgICB3aGVu
ICJ0cnVuY2F0ZWQycSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb252ZXJ0T3BlcmF0aW9u
KG9wZXJhbmRzLCA6ZCwgOmx1LCAicnR6IikKKyAgICAgICAgd2hlbiAidHJ1bmNhdGVmMmlzIgor
ICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbnZlcnRPcGVyYXRpb24ob3BlcmFuZHMsIDpzLCA6
dywgInJ0eiIpCisgICAgICAgIHdoZW4gInRydW5jYXRlZDJpcyIKKyAgICAgICAgICAgIHJpc2N2
NjRFbWl0RlBDb252ZXJ0T3BlcmF0aW9uKG9wZXJhbmRzLCA6ZCwgOncsICJydHoiKQorICAgICAg
ICB3aGVuICJ0cnVuY2F0ZWYycXMiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29udmVydE9w
ZXJhdGlvbihvcGVyYW5kcywgOnMsIDpsLCAicnR6IikKKyAgICAgICAgd2hlbiAidHJ1bmNhdGVk
MnFzIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbnZlcnRPcGVyYXRpb24ob3BlcmFuZHMs
IDpkLCA6bCwgInJ0eiIpCisgICAgICAgIHdoZW4gImNpMmYiCisgICAgICAgICAgICByaXNjdjY0
RW1pdEZQQ29udmVydE9wZXJhdGlvbihvcGVyYW5kcywgOnd1LCA6cywgOm5vbmUpCisgICAgICAg
IHdoZW4gImNpMmQiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29udmVydE9wZXJhdGlvbihv
cGVyYW5kcywgOnd1LCA6ZCwgOm5vbmUpCisgICAgICAgIHdoZW4gImNpMmZzIgorICAgICAgICAg
ICAgcmlzY3Y2NEVtaXRGUENvbnZlcnRPcGVyYXRpb24ob3BlcmFuZHMsIDp3LCA6cywgOm5vbmUp
CisgICAgICAgIHdoZW4gImNpMmRzIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbnZlcnRP
cGVyYXRpb24ob3BlcmFuZHMsIDp3LCA6ZCwgOm5vbmUpCisgICAgICAgIHdoZW4gImNxMmYiCisg
ICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29udmVydE9wZXJhdGlvbihvcGVyYW5kcywgOmx1LCA6
cywgOm5vbmUpCisgICAgICAgIHdoZW4gImNxMmQiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQ
Q29udmVydE9wZXJhdGlvbihvcGVyYW5kcywgOmx1LCA6ZCwgOm5vbmUpCisgICAgICAgIHdoZW4g
ImNxMmZzIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbnZlcnRPcGVyYXRpb24ob3BlcmFu
ZHMsIDpsLCA6cywgOm5vbmUpCisgICAgICAgIHdoZW4gImNxMmRzIgorICAgICAgICAgICAgcmlz
Y3Y2NEVtaXRGUENvbnZlcnRPcGVyYXRpb24ob3BlcmFuZHMsIDpsLCA6ZCwgOm5vbmUpCisgICAg
ICAgIHdoZW4gImNmMmQiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29udmVydE9wZXJhdGlv
bihvcGVyYW5kcywgOnMsIDpkLCA6bm9uZSkKKyAgICAgICAgd2hlbiAiY2QyZiIKKyAgICAgICAg
ICAgIHJpc2N2NjRFbWl0RlBDb252ZXJ0T3BlcmF0aW9uKG9wZXJhbmRzLCA6ZCwgOnMsIDpub25l
KQorICAgICAgICB3aGVuICJ0emNudGkiLCAidHpjbnRxIgorICAgICAgICAgICAgcmlzY3Y2NFJh
aXNlVW5zdXBwb3J0ZWQKKyAgICAgICAgd2hlbiAibHpjbnRpIiwgImx6Y250cSIKKyAgICAgICAg
ICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAgIHdoZW4gImFuZGYiCisgICAgICAg
ICAgICByaXNjdjY0RW1pdEZQQml0d2lzZU9wZXJhdGlvbihvcGVyYW5kcywgOnMsICJhbmQiKQor
ICAgICAgICB3aGVuICJhbmRkIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUEJpdHdpc2VPcGVy
YXRpb24ob3BlcmFuZHMsIDpkLCAiYW5kIikKKyAgICAgICAgd2hlbiAib3JmIgorICAgICAgICAg
ICAgcmlzY3Y2NEVtaXRGUEJpdHdpc2VPcGVyYXRpb24ob3BlcmFuZHMsIDpzLCAib3IiKQorICAg
ICAgICB3aGVuICJvcmQiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQml0d2lzZU9wZXJhdGlv
bihvcGVyYW5kcywgOmQsICJvciIpCisgICAgICAgIHdoZW4gImNmZXEiCisgICAgICAgICAgICBy
aXNjdjY0RW1pdEZQQ29tcGFyZShvcGVyYW5kcywgOnMsIDplcSkKKyAgICAgICAgd2hlbiAiY2Zu
ZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29tcGFyZShvcGVyYW5kcywgOnMsIDpuZXEp
CisgICAgICAgIHdoZW4gImNmbHQiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29tcGFyZShv
cGVyYW5kcywgOnMsIDpsdCkKKyAgICAgICAgd2hlbiAiY2ZsdGVxIgorICAgICAgICAgICAgcmlz
Y3Y2NEVtaXRGUENvbXBhcmUob3BlcmFuZHMsIDpzLCA6bHRlcSkKKyAgICAgICAgd2hlbiAiY2Zn
dCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb21wYXJlKG9wZXJhbmRzLCA6cywgOmd0KQor
ICAgICAgICB3aGVuICJjZmd0ZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29tcGFyZShv
cGVyYW5kcywgOnMsIDpndGVxKQorICAgICAgICB3aGVuICJjZm5lcXVuIgorICAgICAgICAgICAg
cmlzY3Y2NEVtaXRGUENvbXBhcmUob3BlcmFuZHMsIDpzLCA6bmVxdW4pCisgICAgICAgIHdoZW4g
ImNkZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29tcGFyZShvcGVyYW5kcywgOmQsIDpl
cSkKKyAgICAgICAgd2hlbiAiY2RuZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29tcGFy
ZShvcGVyYW5kcywgOmQsIDpuZXEpCisgICAgICAgIHdoZW4gImNkbHQiCisgICAgICAgICAgICBy
aXNjdjY0RW1pdEZQQ29tcGFyZShvcGVyYW5kcywgOmQsIDpsdCkKKyAgICAgICAgd2hlbiAiY2Rs
dGVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbXBhcmUob3BlcmFuZHMsIDpkLCA6bHRl
cSkKKyAgICAgICAgd2hlbiAiY2RndCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb21wYXJl
KG9wZXJhbmRzLCA6ZCwgOmd0KQorICAgICAgICB3aGVuICJjZGd0ZXEiCisgICAgICAgICAgICBy
aXNjdjY0RW1pdEZQQ29tcGFyZShvcGVyYW5kcywgOmQsIDpndGVxKQorICAgICAgICB3aGVuICJj
ZG5lcXVuIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbXBhcmUob3BlcmFuZHMsIDpkLCA6
bmVxdW4pCisgICAgICAgIHdoZW4gImZpMmYiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29w
eShvcGVyYW5kcywgOnMpCisgICAgICAgIHdoZW4gImZmMmkiCisgICAgICAgICAgICByaXNjdjY0
RW1pdEZQQ29weShvcGVyYW5kcywgOnMpCisgICAgICAgIHdoZW4gImZwMmQiLCAiZnEyZCIKKyAg
ICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb3B5KG9wZXJhbmRzLCA6ZCkKKyAgICAgICAgd2hlbiAi
ZmQycCIsICJmZDJxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvcHkob3BlcmFuZHMsIDpk
KQorICAgICAgICB3aGVuICJ0bHNfbG9hZHAiLCAidGxzX3N0b3JlcCIKKyAgICAgICAgICAgIHJp
c2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAgIHdoZW4gImxvYWRsaW5rYWNxYiIsICJsb2Fk
bGlua2FjcWgiLCAibG9hZGxpbmthY3FpIiwgImxvYWRsaW5rYWNxcSIKKyAgICAgICAgICAgIHJp
c2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAgIHdoZW4gInN0b3JlY29uZHJlbGIiLCAic3Rv
cmVjb25kcmVsaCIsICJzdG9yZWNvbmRyZWxpIiwgInN0b3JlY29uZHJlbHEiCisgICAgICAgICAg
ICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3aGVuICJhdG9taWN4Y2hnYWRkYiIs
ICJhdG9taWN4Y2hnYWRkaCIsICJhdG9taWN4Y2hnYWRkaSIsICJhdG9taWN4Y2hnYWRkcSIKKyAg
ICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAgIHdoZW4gImF0b21pY3hj
aGdjbGVhcmIiLCAiYXRvbWljeGNoZ2NsZWFyaCIsICJhdG9taWN4Y2hnY2xlYXJpIiwgImF0b21p
Y3hjaGdjbGVhcnEiCisgICAgICAgICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAg
ICB3aGVuICJhdG9taWN4Y2hnb3JiIiwgImF0b21pY3hjaGdvcmgiLCAiYXRvbWljeGNoZ29yaSIs
ICJhdG9taWN4Y2hnb3JxIgorICAgICAgICAgICAgcmlzY3Y2NFJhaXNlVW5zdXBwb3J0ZWQKKyAg
ICAgICAgd2hlbiAiYXRvbWljeGNoZ3hvcmIiLCAiYXRvbWljeGNoZ3hvcmgiLCAiYXRvbWljeGNo
Z3hvcmkiLCAiYXRvbWljeGNoZ3hvcnEiCisgICAgICAgICAgICByaXNjdjY0UmFpc2VVbnN1cHBv
cnRlZAorICAgICAgICB3aGVuICJhdG9taWN4Y2hnYiIsICJhdG9taWN4Y2hnaCIsICJhdG9taWN4
Y2hnaSIsICJhdG9taWN4Y2hncSIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVk
CisgICAgICAgIHdoZW4gImF0b21pY3dlYWtjYXNiIiwgImF0b21pY3dlYWtjYXNoIiwgImF0b21p
Y3dlYWtjYXNpIiwgImF0b21pY3dlYWtjYXNxIgorICAgICAgICAgICAgcmlzY3Y2NFJhaXNlVW5z
dXBwb3J0ZWQKKyAgICAgICAgd2hlbiAiYXRvbWljbG9hZGIiLCAiYXRvbWljbG9hZGgiLCAiYXRv
bWljbG9hZGkiLCAiYXRvbWljbG9hZHEiCisgICAgICAgICAgICByaXNjdjY0UmFpc2VVbnN1cHBv
cnRlZAorICAgICAgICBlbHNlCisgICAgICAgICAgICBsb3dlckRlZmF1bHQKKyAgICAgICAgZW5k
CisgICAgZW5kCitlbmQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtRW5hYmxl
LmggYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUVuYWJsZS5oCmluZGV4IDVjMTRkMTRjMTQ4MmNl
ZTRjNTQwNTRlZmUxODM2NzhkNTY4N2ZlMTkuLmJhYWZhZjg3ZDE5YjAwNWE3OWQyYzgxMDkyOTI2
NTA4MmM5ODc3MjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtRW5hYmxlLmgK
KysrIGIvU291cmNlL1dURi93dGYvUGxhdGZvcm1FbmFibGUuaApAQCAtODgwLDcgKzg4MCw3IEBA
CiAgICB0aGF0IGV4ZWN1dGVzIGVhY2ggb3Bjb2RlLiBJdCBjYW5ub3QgYmUgc3VwcG9ydGVkIGJ5
IHRoZSBDTG9vcCBzaW5jZSB0aGVyZSdzIG5vIHdheSB0byBlbWJlZCB0aGUKICAgIE9wY29kZUlE
IHdvcmQgaW4gdGhlIENMb29wJ3Mgc3dpdGNoIHN0YXRlbWVudCBjYXNlcy4gSXQgaXMgYWxzbyBj
dXJyZW50bHkgbm90IGltcGxlbWVudGVkIGZvciBNU1ZDLgogKi8KLSNpZiAhZGVmaW5lZChFTkFC
TEVfTExJTlRfRU1CRURERURfT1BDT0RFX0lEKSAmJiAhRU5BQkxFKENfTE9PUCkgJiYgIUNPTVBJ
TEVSKE1TVkMpICYmIChDUFUoWDg2KSB8fCBDUFUoWDg2XzY0KSB8fCBDUFUoQVJNNjQpIHx8IChD
UFUoQVJNX1RIVU1CMikgJiYgT1MoREFSV0lOKSkpCisjaWYgIWRlZmluZWQoRU5BQkxFX0xMSU5U
X0VNQkVEREVEX09QQ09ERV9JRCkgJiYgIUVOQUJMRShDX0xPT1ApICYmICFDT01QSUxFUihNU1ZD
KSAmJiAoQ1BVKFg4NikgfHwgQ1BVKFg4Nl82NCkgfHwgQ1BVKEFSTTY0KSB8fCAoQ1BVKEFSTV9U
SFVNQjIpICYmIE9TKERBUldJTikpIHx8IENQVShSSVNDVjY0KSkKICNkZWZpbmUgRU5BQkxFX0xM
SU5UX0VNQkVEREVEX09QQ09ERV9JRCAxCiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL2Nt
YWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlIGIvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNt
YWtlCmluZGV4IGQ3OGU2ZDM0NWEwMDI1YjcwM2FjOGYwMzYyMjNlZWQzYTQ3NTM4ZjUuLjFlYjlm
OGMxMTJjNWEyYmQyYzYwMWZiOWNmMzc2NTBmZDk1ZjNlZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9j
bWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZQorKysgYi9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVy
ZXMuY21ha2UKQEAgLTg0LDcgKzg0LDcgQEAgbWFjcm8oV0VCS0lUX09QVElPTl9CRUdJTikKICAg
ICAgICAgc2V0KEVOQUJMRV9KSVRfREVGQVVMVCBPRkYpCiAgICAgICAgIHNldChFTkFCTEVfRlRM
X0RFRkFVTFQgT0ZGKQogICAgICAgICBzZXQoVVNFX1NZU1RFTV9NQUxMT0NfREVGQVVMVCBPRkYp
Ci0gICAgICAgIHNldChFTkFCTEVfQ19MT09QX0RFRkFVTFQgT04pCisgICAgICAgIHNldChFTkFC
TEVfQ19MT09QX0RFRkFVTFQgT0ZGKQogICAgICAgICBzZXQoRU5BQkxFX1NBTVBMSU5HX1BST0ZJ
TEVSX0RFRkFVTFQgT0ZGKQogICAgIGVsc2UgKCkKICAgICAgICAgc2V0KEVOQUJMRV9KSVRfREVG
QVVMVCBPRkYpCmRpZmYgLS1naXQgYS9DaGFuZ2VMb2cgYi9DaGFuZ2VMb2cKaW5kZXggYmU4NGQw
MGQ0MGY2NmE4YjU3ZDM3N2U4MmVmOGMyOTZlNmU2MWZlNS4uYjg2N2YyZDdhMmU5NTE0MWE4NWVk
YWFhM2VjZjMzZTYwMjRjZjRjYSAxMDA2NDQKLS0tIGEvQ2hhbmdlTG9nCisrKyBiL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDE0IEBACisyMDIxLTA4LTI3ICBaYW4gRG9iZXJzZWsgIDx6ZG9iZXJzZWtA
aWdhbGlhLmNvbT4KKworICAgICAgICBSSVNDVjY0IHN1cHBvcnQgaW4gTExJbnQKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyOTAzNQorICAgICAgICA8
cmRhcjovL3Byb2JsZW0vODIxMjA5MDg+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgKiBTb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2U6Cisg
ICAgICAgIERvbid0IGZvcmNlIENMb29wIHRvIGJlIGRlZmF1bHQgZm9yIFJJU0NWNjQgYW55bW9y
ZS4KKwogMjAyMS0wOC0yNSAgTXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29t
PgogCiAgICAgICAgIEFkZCBjb21tYW5kIHRvIGVuYWJsZSBsb2dnaW5nIGluIHRoZSBkb2NzCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>436740</attachid>
            <date>2021-08-29 07:12:34 -0700</date>
            <delta_ts>2021-08-29 07:19:18 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-229035-20210829161232.patch</filename>
            <type>text/plain</type>
            <size>149003</size>
            <attacher name="Zan Dobersek">zan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgxNzQyCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA3
YWNhYjkyZGU2MDE1YWYzNDJmYmFjMzkxMzY3MTNmNjA1MTExMjI3Li4yZGFkNzY1NjJmNDU3MzQ0
Y2MyNWJjNGQ5ZmU5N2NkZGUyODBmYzcxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMDcgQEAKKzIwMjEtMDgtMjkgIFphbiBEb2JlcnNlayAgPHpkb2JlcnNla0BpZ2FsaWEu
Y29tPgorCisgICAgICAgIFJJU0NWNjQgc3VwcG9ydCBpbiBMTEludAorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI5MDM1CisgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS84MjEyMDkwOD4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBJbnRyb2R1Y2UgUklTQ1Y2NCBzdXBwb3J0IGF0IHRoZSBMTGludCBsZXZlbC4g
QWxvbmcgd2l0aCB0aGUgbmVjZXNzYXJ5CisgICAgICAgIG9mZmxpbmVhc20gYmFja2VuZCwgcGxl
bnR5IG9mIG1pc2NlbGxhbmVvdXMgY29kZSBhcm91bmQgTWFjcm9Bc3NlbWJsZXIKKyAgICAgICAg
aW5mcmFzdHJ1Y3R1cmUgaXMgYWxzbyBpbnRyb2R1Y2VkLgorCisgICAgICAgIE9mIHRoZSBleGlz
dGluZyBzdXBwb3J0ZWQgYXJjaGl0ZWN0dXJlcywgUklTQ1Y2NCBpcyBtb3N0IHNpbWlsYXIgdG8K
KyAgICAgICAgQVJNNjQsIHdpdGggdGhlIHNhbWUgd29yZCBzaXplIGFuZCBzaW1pbGFyIHJlZ2lz
dGVyIGFidW5kYW5jZS4gVGhpcyBpcworICAgICAgICBtaXJyb3JlZCBpbiBtb3N0IGNoYW5nZXMg
YXJvdW5kIHRoZSBNYWNyb0Fzc2VtYmxlciBpbmZyYXN0cnVjdHVyZSBhcworICAgICAgICB3ZWxs
IGFzIHVzaW5nIHNhbWUgb3Igc2ltaWxhciBjb2RlcGF0aHMgaW4gTExpbnQgZm9yIHRoZSB0d28g
SVNBcy4KKworICAgICAgICBGb3IgdGhlIE1hY3JvQXNzZW1ibGVyIGluZnJhc3RydWN0dXJlLCBp
dCB3b24ndCBiZSB1c2VkIHVudGlsIHByb3BlciBKSVQKKyAgICAgICAgc3VwcG9ydCBpcyBpbnRy
b2R1Y2VkLCBidXQgdGhlIGJhc2ljIGZhY2lsaXRpZXMgYXJlIHN0aWxsIG5lY2Vzc2FyeSB0bwor
ICAgICAgICBrZWVwIHRoaW5ncyBjb21waWxpbmcgd2l0aG91dCBjb21wbGljYXRpbmcgdGhlIGNv
bmZpZ3VyYXRpb24gbWF0cml4LgorICAgICAgICBNYWNyb0Fzc2VtYmxlclJJU0NWNjQgY2xhc3Mg
cHJvdmlkZXMgbm8tb3AgbWV0aG9kcyB0aHJvdWdoIEMrKyB0ZW1wbGF0ZXMKKyAgICAgICAgd2hp
bGUgUklTQ1Y2NEFzc2VtYmxlciBpcyBhbHNvIGFkZGVkIGluIGEgbGltaXRlZCBmb3JtLgorCisg
ICAgICAgIFRoZSByaXNjdjY0IG9mZmxpbmVhc20gYmFja2VuZCBjb3ZlcnMgYXNzZW1ibHkgZ2Vu
ZXJhdGlvbiBmb3IKKyAgICAgICAgaW5zdHJ1Y3Rpb25zIHRoYXQgYXJlIGV4aGliaXRlZCBieSBM
TEludCBpbiB0aGUgY3VycmVudCBjb25maWd1cmF0aW9uLgorICAgICAgICBJdCBkb2Vzbid0IGNv
dmVyIGluc3RydWN0aW9ucyB0aGF0IGUuZy4gYXJlIG9ubHkgdXNlZCBpbiB0aGUgV2ViQXNzZW1i
bHkKKyAgICAgICAgb3Bjb2RlcywgYW5kIFdlYkFzc2VtYmx5IHdvbid0IGJlIGVuYWJsZWQgdW50
aWwgdGhlIGhpZ2hlciBKSVQgdGllcnMgYXJlCisgICAgICAgIHN1cHBvcnRlZCBhbnl3YXkuCisK
KyAgICAgICAgVGhlIG9mZmxpbmVhc20gYmFja2VuZCdzIGFzc2VtYmx5IGdlbmVyYXRpb24gZm9y
IHNwZWNpZmljIGluc3RydWN0aW9ucworICAgICAgICB1c2VzIHBhdHRlcm4gbWF0Y2hpbmcgb2Yg
b3BlcmFuZCB0eXBlcyBmb3IgYmV0dGVyIG92ZXJ2aWV3IG9mIGhvdworICAgICAgICByZXN1bHRp
bmcgYXNzZW1ibHkgaXMgY29uc3RydWN0ZWQuIFRoZXJlJ3Mgc3RpbGwgY2VydGFpbiBpbXByb3Zl
bWVudHMKKyAgICAgICAgcG9zc2libGUsIGUuZy4gaW4gaG93IHNjcmF0Y2ggcmVnaXN0ZXJzIGZv
ciBtb3JlIGV4cGFuc2l2ZSBvcGVyYXRpb25zCisgICAgICAgIGFyZSBhbGxvY2F0ZWQuCisKKyAg
ICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBTb3VyY2VzLnR4dDoKKyAgICAgICAg
KiBhc3NlbWJsZXIvQWJzdHJhY3RNYWNyb0Fzc2VtYmxlci5oOgorICAgICAgICAqIGFzc2VtYmxl
ci9NYWNyb0Fzc2VtYmxlci5oOgorICAgICAgICAqIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlclJJ
U0NWNjQuY3BwOiBBZGRlZC4KKyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXI6OnByb2JlKToK
KyAgICAgICAgKiBhc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJSSVNDVjY0Lmg6IEFkZGVkLgorICAg
ICAgICBEaXN0b3J0ZWQgYXV0by1nZW5lcmF0ZWQgbWV0aG9kIGxpc3QgcmVtb3ZlZC4gTmVjZXNz
YXJ5IG1ldGhvZHMgYXJlCisgICAgICAgIGludHJvZHVjZWQgdGhyb3VnaCBuby1vcCB0ZW1wbGF0
ZXMgdW50aWwgYWN0dWFsbHkgbmVlZGVkIGZvciBKSVQKKyAgICAgICAgZ2VuZXJhdGlvbi4KKyAg
ICAgICAgKiBhc3NlbWJsZXIvTWF4RnJhbWVFeHRlbnRGb3JTbG93UGF0aENhbGwuaDoKKyAgICAg
ICAgKiBhc3NlbWJsZXIvUGVyZkxvZy5jcHA6CisgICAgICAgICogYXNzZW1ibGVyL1Byb2JlQ29u
dGV4dC5oOgorICAgICAgICAqIGFzc2VtYmxlci9SSVNDVjY0QXNzZW1ibGVyLmg6IEFkZGVkLgor
ICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVyOjpmaXJzdFJlZ2lzdGVyKToKKyAgICAgICAg
KEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6bGFzdFJlZ2lzdGVyKToKKyAgICAgICAgKEpTQzo6UklT
Q1Y2NEFzc2VtYmxlcjo6bnVtYmVyT2ZSZWdpc3RlcnMpOgorICAgICAgICAoSlNDOjpSSVNDVjY0
QXNzZW1ibGVyOjpmaXJzdFNQUmVnaXN0ZXIpOgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1i
bGVyOjpsYXN0U1BSZWdpc3Rlcik6CisgICAgICAgIChKU0M6OlJJU0NWNjRBc3NlbWJsZXI6Om51
bWJlck9mU1BSZWdpc3RlcnMpOgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVyOjpmaXJz
dEZQUmVnaXN0ZXIpOgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVyOjpsYXN0RlBSZWdp
c3Rlcik6CisgICAgICAgIChKU0M6OlJJU0NWNjRBc3NlbWJsZXI6Om51bWJlck9mRlBSZWdpc3Rl
cnMpOgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVyOjpncHJOYW1lKToKKyAgICAgICAg
KEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6c3ByTmFtZSk6CisgICAgICAgIChKU0M6OlJJU0NWNjRB
c3NlbWJsZXI6OmZwck5hbWUpOgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVyOjpSSVND
VjY0QXNzZW1ibGVyKToKKyAgICAgICAgKEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6YnVmZmVyKToK
KyAgICAgICAgKEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6aW52ZXJ0KToKKyAgICAgICAgKEpTQzo6
UklTQ1Y2NEFzc2VtYmxlcjo6Z2V0UmVsb2NhdGVkQWRkcmVzcyk6CisgICAgICAgIChKU0M6OlJJ
U0NWNjRBc3NlbWJsZXI6OmNvZGVTaXplIGNvbnN0KToKKyAgICAgICAgKEpTQzo6UklTQ1Y2NEFz
c2VtYmxlcjo6Z2V0Q2FsbFJldHVybk9mZnNldCk6CisgICAgICAgIChKU0M6OlJJU0NWNjRBc3Nl
bWJsZXI6OmxhYmVsSWdub3JpbmdXYXRjaHBvaW50cyk6CisgICAgICAgIChKU0M6OlJJU0NWNjRB
c3NlbWJsZXI6OmxhYmVsRm9yV2F0Y2hwb2ludCk6CisgICAgICAgIChKU0M6OlJJU0NWNjRBc3Nl
bWJsZXI6OmxhYmVsKToKKyAgICAgICAgKEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6bGlua0p1bXAp
OgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVyOjpsaW5rQ2FsbCk6CisgICAgICAgIChK
U0M6OlJJU0NWNjRBc3NlbWJsZXI6OmxpbmtQb2ludGVyKToKKyAgICAgICAgKEpTQzo6UklTQ1Y2
NEFzc2VtYmxlcjo6bWF4SnVtcFJlcGxhY2VtZW50U2l6ZSk6CisgICAgICAgIChKU0M6OlJJU0NW
NjRBc3NlbWJsZXI6OnBhdGNoYWJsZUp1bXBTaXplKToKKyAgICAgICAgKEpTQzo6UklTQ1Y2NEFz
c2VtYmxlcjo6cmVwYXRjaFBvaW50ZXIpOgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVy
OjpyZWxpbmtKdW1wKToKKyAgICAgICAgKEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6cmVsaW5rSnVt
cFRvTm9wKToKKyAgICAgICAgKEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6cmVsaW5rQ2FsbCk6Cisg
ICAgICAgIChKU0M6OlJJU0NWNjRBc3NlbWJsZXI6OmRlYnVnT2Zmc2V0KToKKyAgICAgICAgKEpT
Qzo6UklTQ1Y2NEFzc2VtYmxlcjo6Y2FjaGVGbHVzaCk6CisgICAgICAgIChKU0M6OlJJU0NWNjRB
c3NlbWJsZXI6OmZpbGxOb3BzKToKKyAgICAgICAgKiBhc3NlbWJsZXIvUklTQ1Y2NFJlZ2lzdGVy
cy5oOiBBZGRlZC4KKyAgICAgICAgKiBqaXQvRlBSSW5mby5oOgorICAgICAgICAoSlNDOjpGUFJJ
bmZvOjp0b1JlZ2lzdGVyKToKKyAgICAgICAgKEpTQzo6RlBSSW5mbzo6dG9Bcmd1bWVudFJlZ2lz
dGVyKToKKyAgICAgICAgKEpTQzo6RlBSSW5mbzo6dG9JbmRleCk6CisgICAgICAgIChKU0M6OkZQ
UkluZm86OmRlYnVnTmFtZSk6CisgICAgICAgICogaml0L0dQUkluZm8uaDoKKyAgICAgICAgKEpT
Qzo6R1BSSW5mbzo6dG9SZWdpc3Rlcik6CisgICAgICAgIChKU0M6OkdQUkluZm86OnRvQXJndW1l
bnRSZWdpc3Rlcik6CisgICAgICAgIChKU0M6OkdQUkluZm86OnRvSW5kZXgpOgorICAgICAgICAo
SlNDOjpHUFJJbmZvOjpkZWJ1Z05hbWUpOgorICAgICAgICAqIGppdC9SZWdpc3RlclNldC5jcHA6
CisgICAgICAgIChKU0M6OlJlZ2lzdGVyU2V0Ojp2bUNhbGxlZVNhdmVSZWdpc3RlcnMpOgorICAg
ICAgICAoSlNDOjpSZWdpc3RlclNldDo6bGxpbnRCYXNlbGluZUNhbGxlZVNhdmVSZWdpc3RlcnMp
OgorICAgICAgICAqIGxsaW50L0xMSW50RGF0YS5oOgorICAgICAgICAqIGxsaW50L0xMSW50T2Zm
bGluZUFzbUNvbmZpZy5oOgorICAgICAgICAqIGxsaW50L0xvd0xldmVsSW50ZXJwcmV0ZXIuYXNt
OgorICAgICAgICAqIGxsaW50L0xvd0xldmVsSW50ZXJwcmV0ZXI2NC5hc206CisgICAgICAgICog
b2ZmbGluZWFzbS9iYWNrZW5kcy5yYjogUmVmZXJlbmNlIHRoZSByaXNjdjY0IGJhY2tlbmQgYXMg
cmVxdWlyZWQuCisgICAgICAgICogb2ZmbGluZWFzbS9yZWdpc3RlcnMucmI6IExpc3QgYWRkaXRp
b25hbCBwb3NzaWJsZSByZWdpc3RlcnMuCisgICAgICAgICogb2ZmbGluZWFzbS9yaXNjdjY0LnJi
OiBBZGRlZC4KKwogMjAyMS0wOC0yOSAgSm9vbmdodW4gUGFyayAgPGpoNzE4LnBhcmtAc2Ftc3Vu
Zy5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZC4gUmVtb3ZlIHRoZSBidWlsZCB3YXJuaW5nIGJl
bG93IHNpbmNlIHIyODE2MTUuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5nZUxvZyBiL1Nv
dXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDQzYzUwYzYzNGU5ZjE4OGYzZjRiZmY2NTZmOTFjMWJk
YmQ3YzkzZjYuLjRiYTRjMmIzN2E4ZWQ2NTkwZjVmMWM3ZDQyYmJiOGRhNDQ4NzZlODEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTQgQEAKKzIwMjEtMDgtMjkgIFphbiBEb2JlcnNlayAgPHpkb2JlcnNla0BpZ2Fs
aWEuY29tPgorCisgICAgICAgIFJJU0NWNjQgc3VwcG9ydCBpbiBMTEludAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI5MDM1CisgICAgICAgIDxyZGFy
Oi8vcHJvYmxlbS84MjEyMDkwOD4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIHd0Zi9QbGF0Zm9ybUVuYWJsZS5oOgorICAgICAgICBEZWZpbmUgRU5B
QkxFX0xMSU5UX0VNQkVEREVEX09QQ09ERV9JRCB0byAxIGZvciBDUFUoUklTQ1Y2NCkuCisKIDIw
MjEtMDgtMjggIENhbWVyb24gTWNDb3JtYWNrICA8aGV5Y2FtQGFwcGxlLmNvbT4KIAogICAgICAg
ICBNaXNjZWxsYW5lb3VzIHR5cG8gZml4ZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DTWFrZUxpc3RzLnR4
dAppbmRleCA0ZTBlYWZmMWI2MjM5NzFiMWJjOTM4MDk4ZmFiNWJiZjg4YTBlODk1Li4wZTdmY2Ni
YTUyN2Y0NGE5NjcyODdlYjFmNWUxYTIxNzY1M2MwN2IyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NN
YWtlTGlzdHMudHh0CkBAIC0yMTYsNiArMjE2LDcgQEAgc2V0KE9GRkxJTkVfQVNNCiAgICAgb2Zm
bGluZWFzbS9wYXJzZXIucmIKICAgICBvZmZsaW5lYXNtL3JlZ2lzdGVycy5yYgogICAgIG9mZmxp
bmVhc20vcmlzYy5yYgorICAgIG9mZmxpbmVhc20vcmlzY3Y2NC5yYgogICAgIG9mZmxpbmVhc20v
c2VsZl9oYXNoLnJiCiAgICAgb2ZmbGluZWFzbS9zZXR0aW5ncy5yYgogICAgIG9mZmxpbmVhc20v
dHJhbnNmb3JtLnJiCkBAIC0yNzMsNiArMjc0LDggQEAgZWxzZSAoKQogICAgICAgICBzZXQoT0ZG
TElORV9BU01fQkFDS0VORCAiQVJNdjciKQogICAgIGVsc2VpZiAoV1RGX0NQVV9NSVBTKQogICAg
ICAgICBzZXQoT0ZGTElORV9BU01fQkFDS0VORCAiTUlQUyIpCisgICAgZWxzZWlmIChXVEZfQ1BV
X1JJU0NWNjQpCisgICAgICAgIHNldChPRkZMSU5FX0FTTV9CQUNLRU5EICJSSVNDVjY0IikKICAg
ICBlbmRpZiAoKQogCiAgICAgaWYgKE5PVCBFTkFCTEVfSklUKQpAQCAtNTc3LDkgKzU4MCwxMiBA
QCBzZXQoSmF2YVNjcmlwdENvcmVfUFJJVkFURV9GUkFNRVdPUktfSEVBREVSUwogICAgIGFzc2Vt
Ymxlci9NYWNyb0Fzc2VtYmxlckNvZGVSZWYuaAogICAgIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxl
ckhlbHBlcnMuaAogICAgIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlck1JUFMuaAorICAgIGFzc2Vt
Ymxlci9NYWNyb0Fzc2VtYmxlclJJU0NWNjQuaAogICAgIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxl
clg4NkNvbW1vbi5oCiAgICAgYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyWDg2XzY0LmgKICAgICBh
c3NlbWJsZXIvUHJpbnRlci5oCisgICAgYXNzZW1ibGVyL1JJU0NWNjRBc3NlbWJsZXIuaAorICAg
IGFzc2VtYmxlci9SSVNDVjY0UmVnaXN0ZXJzLmgKICAgICBhc3NlbWJsZXIvUmVnaXN0ZXJJbmZv
LmgKICAgICBhc3NlbWJsZXIvWDg2QXNzZW1ibGVyLmgKICAgICBhc3NlbWJsZXIvWDg2UmVnaXN0
ZXJzLmgKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9Tb3VyY2VzLnR4dCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9Tb3VyY2VzLnR4dAppbmRleCA1MmI5M2VlOGQ4YmJhNjYwNjRk
YjIwMThmM2YzMTc3MDJmNzZhYTljLi5lMjFhNTgxYzRmNjZlNDNhZjcwNWZkYTRiMjc4ZmE2M2Jm
Mzg0OTY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvU291cmNlcy50eHQKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL1NvdXJjZXMudHh0CkBAIC01NSw2ICs1NSw3IEBAIGFz
c2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTXY3LmNwcAogYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVy
Q29kZVJlZi5jcHAKIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlck1JUFMuY3BwCiBhc3NlbWJsZXIv
TWFjcm9Bc3NlbWJsZXJQcmludGVyLmNwcAorYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyUklTQ1Y2
NC5jcHAKIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlclg4NkNvbW1vbi5jcHAKIGFzc2VtYmxlci9Q
ZXJmTG9nLmNwcAogYXNzZW1ibGVyL1ByaW50ZXIuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYXNzZW1ibGVyL0Fic3RyYWN0TWFjcm9Bc3NlbWJsZXIuaCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvQWJzdHJhY3RNYWNyb0Fzc2VtYmxlci5oCmluZGV4IDE5
MTY1ZmZmNGY1YWFiN2JhMzc3ZjdlNDBiYTgyMzIyNmFmMzNkZDMuLjQzZjc4NGE0YWI5MzVhOWFm
MjM5ZjI2YzhjYjMzOGFhYjIyZWRkNWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9hc3NlbWJsZXIvQWJzdHJhY3RNYWNyb0Fzc2VtYmxlci5oCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9hc3NlbWJsZXIvQWJzdHJhY3RNYWNyb0Fzc2VtYmxlci5oCkBAIC0zOTcsNyArMzk3
LDcgQEAgcHVibGljOgogICAgICAgICB7CiAgICAgICAgIH0KIAotI2lmIENQVShYODZfNjQpIHx8
IENQVShBUk02NCkKKyNpZiBDUFUoWDg2XzY0KSB8fCBDUFUoQVJNNjQpIHx8IENQVShSSVNDVjY0
KQogICAgICAgICBleHBsaWNpdCBUcnVzdGVkSW1tNjQoVHJ1c3RlZEltbVB0ciBwdHIpCiAgICAg
ICAgICAgICA6IG1fdmFsdWUocHRyLmFzSW50cHRyKCkpCiAgICAgICAgIHsKQEAgLTQxMyw3ICs0
MTMsNyBAQCBwdWJsaWM6CiAgICAgICAgICAgICA6IFRydXN0ZWRJbW02NCh2YWx1ZSkKICAgICAg
ICAgewogICAgICAgICB9Ci0jaWYgQ1BVKFg4Nl82NCkgfHwgQ1BVKEFSTTY0KQorI2lmIENQVShY
ODZfNjQpIHx8IENQVShBUk02NCkgfHwgQ1BVKFJJU0NWNjQpCiAgICAgICAgIGV4cGxpY2l0IElt
bTY0KFRydXN0ZWRJbW1QdHIgcHRyKQogICAgICAgICAgICAgOiBUcnVzdGVkSW1tNjQocHRyKQog
ICAgICAgICB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01h
Y3JvQXNzZW1ibGVyLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNz
ZW1ibGVyLmgKaW5kZXggNjk3MTFiZjg3NTI5NGU0NGZlMTFlZjJjZTM3NTRhNDU1YTA2MDk4OC4u
ZDdmZTNhODFlMzQxMTljMWU2ZWU0YmI0NWY1ODY1ZjcyMWY0NjIxNiAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlci5oCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXIuaApAQCAtNTUsNiArNTUs
MTEgQEAgbmFtZXNwYWNlIEpTQyB7IHR5cGVkZWYgTWFjcm9Bc3NlbWJsZXJBUk12NyBNYWNyb0Fz
c2VtYmxlckJhc2U7IH07CiAjZGVmaW5lIFRBUkdFVF9NQUNST0FTU0VNQkxFUiBNYWNyb0Fzc2Vt
Ymxlclg4Nl82NAogI2luY2x1ZGUgIk1hY3JvQXNzZW1ibGVyWDg2XzY0LmgiCiAKKyNlbGlmIENQ
VShSSVNDVjY0KQorI2RlZmluZSBUQVJHRVRfQVNTRU1CTEVSIFJJU0NWNjRBc3NlbWJsZXIKKyNk
ZWZpbmUgVEFSR0VUX01BQ1JPQVNTRU1CTEVSIE1hY3JvQXNzZW1ibGVyUklTQ1Y2NAorI2luY2x1
ZGUgIk1hY3JvQXNzZW1ibGVyUklTQ1Y2NC5oIgorCiAjZWxzZQogI2Vycm9yICJUaGUgTWFjcm9B
c3NlbWJsZXIgaXMgbm90IHN1cHBvcnRlZCBvbiB0aGlzIHBsYXRmb3JtLiIKICNlbmRpZgpAQCAt
MTMyLDcgKzEzNyw3IEBAIHB1YmxpYzoKICAgICB1c2luZyBNYWNyb0Fzc2VtYmxlckJhc2U6OmFu
ZDMyOwogICAgIHVzaW5nIE1hY3JvQXNzZW1ibGVyQmFzZTo6YnJhbmNoQWRkMzI7CiAgICAgdXNp
bmcgTWFjcm9Bc3NlbWJsZXJCYXNlOjpicmFuY2hNdWwzMjsKLSNpZiBDUFUoQVJNNjQpIHx8IENQ
VShBUk1fVEhVTUIyKSB8fCBDUFUoWDg2XzY0KSB8fCBDUFUoTUlQUykKKyNpZiBDUFUoQVJNNjQp
IHx8IENQVShBUk1fVEhVTUIyKSB8fCBDUFUoWDg2XzY0KSB8fCBDUFUoTUlQUykgfHwgQ1BVKFJJ
U0NWNjQpCiAgICAgdXNpbmcgTWFjcm9Bc3NlbWJsZXJCYXNlOjpicmFuY2hQdHI7CiAjZW5kaWYK
ICAgICB1c2luZyBNYWNyb0Fzc2VtYmxlckJhc2U6OmJyYW5jaFN1YjMyOwpAQCAtMTQ0LDcgKzE0
OSw3IEBAIHB1YmxpYzoKICAgICB1c2luZyBNYWNyb0Fzc2VtYmxlckJhc2U6OnVyc2hpZnQzMjsK
ICAgICB1c2luZyBNYWNyb0Fzc2VtYmxlckJhc2U6OnhvcjMyOwogCi0jaWYgQ1BVKEFSTTY0KSB8
fCBDUFUoWDg2XzY0KQorI2lmIENQVShBUk02NCkgfHwgQ1BVKFg4Nl82NCkgfHwgQ1BVKFJJU0NW
NjQpCiAgICAgdXNpbmcgTWFjcm9Bc3NlbWJsZXJCYXNlOjphbmQ2NDsKICAgICB1c2luZyBNYWNy
b0Fzc2VtYmxlckJhc2U6OmNvbnZlcnRJbnQzMlRvRG91YmxlOwogICAgIHVzaW5nIE1hY3JvQXNz
ZW1ibGVyQmFzZTo6c3RvcmU2NDsKQEAgLTMzNSw3ICszNDAsNyBAQCBwdWJsaWM6CiAgICAgc3Rh
dGljIGNvbnN0ZXhwciBwdHJkaWZmX3QgcHVzaFRvU2F2ZUJ5dGVPZmZzZXQoKSB7IHJldHVybiBz
aXplb2Yodm9pZCopOyB9CiAjZW5kaWYgLy8gIUNQVShBUk02NCkKIAotI2lmIENQVShYODZfNjQp
IHx8IENQVShBUk02NCkKKyNpZiBDUFUoWDg2XzY0KSB8fCBDUFUoQVJNNjQpIHx8IENQVShSSVND
VjY0KQogICAgIHZvaWQgcGVlazY0KFJlZ2lzdGVySUQgZGVzdCwgaW50IGluZGV4ID0gMCkKICAg
ICB7CiAgICAgICAgIGxvYWQ2NChBZGRyZXNzKHN0YWNrUG9pbnRlclJlZ2lzdGVyLCAoaW5kZXgg
KiBzaXplb2Yodm9pZCopKSksIGRlc3QpOwpAQCAtMTcwNiw3ICsxNzExLDcgQEAgcHVibGljOgog
ICAgICAgICBzdG9yZVB0cih2YWx1ZSwgYWRkcmVzc0ZvclBva2UoaW5kZXgpKTsKICAgICB9CiAg
ICAgCi0jaWYgQ1BVKFg4Nl82NCkgfHwgQ1BVKEFSTTY0KQorI2lmIENQVShYODZfNjQpIHx8IENQ
VShBUk02NCkgfHwgQ1BVKFJJU0NWNjQpCiAgICAgdm9pZCBwb2tlKEltbTY0IHZhbHVlLCBpbnQg
aW5kZXggPSAwKQogICAgIHsKICAgICAgICAgc3RvcmU2NCh2YWx1ZSwgYWRkcmVzc0ZvclBva2Uo
aW5kZXgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFj
cm9Bc3NlbWJsZXJSSVNDVjY0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIv
TWFjcm9Bc3NlbWJsZXJSSVNDVjY0LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42M2IzMjY1Mjg5YzVjNjY3YTU4
NGYzMWRkZjc0MWZhNWM5ZDViZTU1Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlclJJU0NWNjQuY3BwCkBAIC0wLDAgKzEsNDIg
QEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgSWdhbGlhIFMuTC4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBB
TlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
ICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVY
RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1
ZGUgIk1hY3JvQXNzZW1ibGVyLmgiCisKKyNpZiBFTkFCTEUoQVNTRU1CTEVSKSAmJiBDUFUoUklT
Q1Y2NCkKKworI2luY2x1ZGUgIlByb2JlQ29udGV4dC5oIgorCituYW1lc3BhY2UgSlNDIHsKKwor
dm9pZCBNYWNyb0Fzc2VtYmxlcjo6cHJvYmUoUHJvYmU6OkZ1bmN0aW9uLCB2b2lkKikKK3sKKyAg
ICAvLyBUT0RPCit9CisKK30gLy8gbmFtZXNwYWNlIEpTQworCisjZW5kaWYgLy8gRU5BQkxFKEFT
U0VNQkxFUikgJiYgQ1BVKFJJU0NWNjQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyUklTQ1Y2NC5oIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlclJJU0NWNjQuaApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xNTEyNDMx
YzE2OTdjZjY2YTgzZDhhNDAzNmU5ZTNjOGNmZTMzNTI2Ci0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlclJJU0NWNjQuaApAQCAt
MCwwICsxLDM5OCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBJZ2FsaWEgUy5MLgorICoK
KyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFT
IElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUg
RElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQK
KyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKwor
I2lmIEVOQUJMRShBU1NFTUJMRVIpICYmIENQVShSSVNDVjY0KQorCisjaW5jbHVkZSAiQWJzdHJh
Y3RNYWNyb0Fzc2VtYmxlci5oIgorI2luY2x1ZGUgIlJJU0NWNjRBc3NlbWJsZXIuaCIKKworI2Rl
ZmluZSBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QobWV0aG9k
TmFtZSkgXAorICAgIHRlbXBsYXRlPHR5cGVuYW1lLi4uIEFyZ3M+IHZvaWQgbWV0aG9kTmFtZShB
cmdzJiYuLi4pIHsgfQorI2RlZmluZSBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURf
Tk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4obWV0aG9kTmFtZSwgcmV0dXJuVHlwZSkgXAorICAgIHRl
bXBsYXRlPHR5cGVuYW1lLi4uIEFyZ3M+IHJldHVyblR5cGUgbWV0aG9kTmFtZShBcmdzJiYuLi4p
IHsgcmV0dXJuIHsgfTsgfQorCituYW1lc3BhY2UgSlNDIHsKKwordXNpbmcgQXNzZW1ibGVyID0g
VEFSR0VUX0FTU0VNQkxFUjsKKworY2xhc3MgTWFjcm9Bc3NlbWJsZXJSSVNDVjY0IDogcHVibGlj
IEFic3RyYWN0TWFjcm9Bc3NlbWJsZXI8QXNzZW1ibGVyPiB7CitwdWJsaWM6CisgICAgc3RhdGlj
IGNvbnN0ZXhwciB1bnNpZ25lZCBudW1HUFJzID0gMzI7CisgICAgc3RhdGljIGNvbnN0ZXhwciB1
bnNpZ25lZCBudW1GUFJzID0gMzI7CisKKyAgICBzdGF0aWMgY29uc3RleHByIFJlZ2lzdGVySUQg
ZGF0YVRlbXBSZWdpc3RlciA9IFJJU0NWNjRSZWdpc3RlcnM6OngzMDsKKyAgICBzdGF0aWMgY29u
c3RleHByIFJlZ2lzdGVySUQgbWVtb3J5VGVtcFJlZ2lzdGVyID0gUklTQ1Y2NFJlZ2lzdGVyczo6
eDMxOworCisgICAgc3RhdGljIGNvbnN0ZXhwciBSZWdpc3RlcklEIEludmFsaWRHUFJSZWcgPSBS
SVNDVjY0UmVnaXN0ZXJzOjpJbnZhbGlkR1BSUmVnOworCisgICAgUmVnaXN0ZXJJRCBzY3JhdGNo
UmVnaXN0ZXIoKQorICAgIHsKKyAgICAgICAgcmV0dXJuIGRhdGFUZW1wUmVnaXN0ZXI7CisgICAg
fQorCisgICAgc3RhdGljIGJvb2wgc3VwcG9ydHNGbG9hdGluZ1BvaW50KCkgeyByZXR1cm4gdHJ1
ZTsgfQorICAgIHN0YXRpYyBib29sIHN1cHBvcnRzRmxvYXRpbmdQb2ludFRydW5jYXRlKCkgeyBy
ZXR1cm4gdHJ1ZTsgfQorICAgIHN0YXRpYyBib29sIHN1cHBvcnRzRmxvYXRpbmdQb2ludFNxcnQo
KSB7IHJldHVybiB0cnVlOyB9CisgICAgc3RhdGljIGJvb2wgc3VwcG9ydHNGbG9hdGluZ1BvaW50
QWJzKCkgeyByZXR1cm4gdHJ1ZTsgfQorICAgIHN0YXRpYyBib29sIHN1cHBvcnRzRmxvYXRpbmdQ
b2ludFJvdW5kaW5nKCkgeyByZXR1cm4gdHJ1ZTsgfQorCisgICAgZW51bSBSZWxhdGlvbmFsQ29u
ZGl0aW9uIHsKKyAgICAgICAgRXF1YWwsCisgICAgICAgIE5vdEVxdWFsLAorICAgICAgICBBYm92
ZSwKKyAgICAgICAgQWJvdmVPckVxdWFsLAorICAgICAgICBCZWxvdywKKyAgICAgICAgQmVsb3dP
ckVxdWFsLAorICAgICAgICBHcmVhdGVyVGhhbiwKKyAgICAgICAgR3JlYXRlclRoYW5PckVxdWFs
LAorICAgICAgICBMZXNzVGhhbiwKKyAgICAgICAgTGVzc1RoYW5PckVxdWFsLAorICAgIH07CisK
KyAgICBlbnVtIFJlc3VsdENvbmRpdGlvbiB7CisgICAgICAgIE92ZXJmbG93LAorICAgICAgICBT
aWduZWQsCisgICAgICAgIFBvc2l0aXZlT3JaZXJvLAorICAgICAgICBaZXJvLAorICAgICAgICBO
b25aZXJvLAorICAgIH07CisKKyAgICBlbnVtIFplcm9Db25kaXRpb24geworICAgICAgICBJc1pl
cm8sCisgICAgICAgIElzTm9uWmVybywKKyAgICB9OworCisgICAgZW51bSBEb3VibGVDb25kaXRp
b24geworICAgICAgICBEb3VibGVFcXVhbEFuZE9yZGVyZWQsCisgICAgICAgIERvdWJsZU5vdEVx
dWFsQW5kT3JkZXJlZCwKKyAgICAgICAgRG91YmxlR3JlYXRlclRoYW5BbmRPcmRlcmVkLAorICAg
ICAgICBEb3VibGVHcmVhdGVyVGhhbk9yRXF1YWxBbmRPcmRlcmVkLAorICAgICAgICBEb3VibGVM
ZXNzVGhhbkFuZE9yZGVyZWQsCisgICAgICAgIERvdWJsZUxlc3NUaGFuT3JFcXVhbEFuZE9yZGVy
ZWQsCisgICAgICAgIERvdWJsZUVxdWFsT3JVbm9yZGVyZWQsCisgICAgICAgIERvdWJsZU5vdEVx
dWFsT3JVbm9yZGVyZWQsCisgICAgICAgIERvdWJsZUdyZWF0ZXJUaGFuT3JVbm9yZGVyZWQsCisg
ICAgICAgIERvdWJsZUdyZWF0ZXJUaGFuT3JFcXVhbE9yVW5vcmRlcmVkLAorICAgICAgICBEb3Vi
bGVMZXNzVGhhbk9yVW5vcmRlcmVkLAorICAgICAgICBEb3VibGVMZXNzVGhhbk9yRXF1YWxPclVu
b3JkZXJlZCwKKyAgICB9OworCisgICAgc3RhdGljIGNvbnN0ZXhwciBSZWdpc3RlcklEIHN0YWNr
UG9pbnRlclJlZ2lzdGVyID0gUklTQ1Y2NFJlZ2lzdGVyczo6c3A7CisgICAgc3RhdGljIGNvbnN0
ZXhwciBSZWdpc3RlcklEIGZyYW1lUG9pbnRlclJlZ2lzdGVyID0gUklTQ1Y2NFJlZ2lzdGVyczo6
ZnA7CisgICAgc3RhdGljIGNvbnN0ZXhwciBSZWdpc3RlcklEIGxpbmtSZWdpc3RlciA9IFJJU0NW
NjRSZWdpc3RlcnM6OnJhOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVE
X05PT1BfTUVUSE9EKGFkZDMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFU
RURfTk9PUF9NRVRIT0QoYWRkNjQpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBM
QVRFRF9OT09QX01FVEhPRChzdWIzMik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVN
UExBVEVEX05PT1BfTUVUSE9EKHN1YjY0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9U
RU1QTEFURURfTk9PUF9NRVRIT0QobXVsMzIpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0
X1RFTVBMQVRFRF9OT09QX01FVEhPRChtdWw2NCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NW
NjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGFuZDMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklT
Q1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoYW5kNjQpOworCisgICAgTUFDUk9fQVNTRU1CTEVS
X1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGNvdW50TGVhZGluZ1plcm9zMzIpOworICAg
IE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChjb3VudExlYWRp
bmdaZXJvczY0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9N
RVRIT0QoY291bnRUcmFpbGluZ1plcm9zMzIpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0
X1RFTVBMQVRFRF9OT09QX01FVEhPRChjb3VudFRyYWlsaW5nWmVyb3M2NCk7CisKKyAgICBNQUNS
T19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoYnl0ZVN3YXAxNik7Cisg
ICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGJ5dGVTd2Fw
MzIpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChi
eXRlU3dhcDY0KTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09Q
X01FVEhPRChsc2hpZnQzMik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVE
X05PT1BfTUVUSE9EKGxzaGlmdDY0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1Q
TEFURURfTk9PUF9NRVRIT0QocnNoaWZ0MzIpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0
X1RFTVBMQVRFRF9OT09QX01FVEhPRChyc2hpZnQ2NCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJ
U0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHVyc2hpZnQzMik7CisgICAgTUFDUk9fQVNTRU1C
TEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHVyc2hpZnQ2NCk7CisKKyAgICBNQUNS
T19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qocm90YXRlUmlnaHQzMik7
CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHJvdGF0
ZVJpZ2h0NjQpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1Bf
TUVUSE9EKGxvYWQ4KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9P
UF9NRVRIT0QobG9hZDhTaWduZWRFeHRlbmRUbzMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklT
Q1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QobG9hZDE2KTsKKyAgICBNQUNST19BU1NFTUJMRVJf
UklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QobG9hZDE2VW5hbGlnbmVkKTsKKyAgICBNQUNS
T19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QobG9hZDE2U2lnbmVkRXh0
ZW5kVG8zMik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVU
SE9EKGxvYWQzMik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1Bf
TUVUSE9EKGxvYWQzMldpdGhVbmFsaWduZWRIYWxmV29yZHMpOworICAgIE1BQ1JPX0FTU0VNQkxF
Ul9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChsb2FkNjQpOworCisgICAgTUFDUk9fQVNT
RU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHN0b3JlOCk7CisgICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHN0b3JlMTYpOworICAgIE1B
Q1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChzdG9yZTMyKTsKKyAg
ICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qoc3RvcmU2NCk7
CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoemVy
b0V4dGVuZDhUbzMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9P
UF9NRVRIT0QoemVyb0V4dGVuZDE2VG8zMik7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2
NF9URU1QTEFURURfTk9PUF9NRVRIT0Qoc2lnbkV4dGVuZDhUbzMyKTsKKyAgICBNQUNST19BU1NF
TUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qoc2lnbkV4dGVuZDE2VG8zMik7Cisg
ICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHNpZ25FeHRl
bmQzMlRvUHRyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9N
RVRIT0QoemVyb0V4dGVuZDMyVG9Xb3JkKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0
X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihsb2FkNjRXaXRoQWRkcmVzc09mZnNl
dFBhdGNoLCBEYXRhTGFiZWwzMik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExB
VEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKGxvYWQ2NFdpdGhDb21wYWN0QWRkcmVzc09mZnNl
dFBhdGNoLCBEYXRhTGFiZWxDb21wYWN0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9U
RU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oc3RvcmU2NFdpdGhBZGRyZXNzT2Zmc2V0
UGF0Y2gsIERhdGFMYWJlbDMyKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBM
QVRFRF9OT09QX01FVEhPRChvcjgpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBM
QVRFRF9OT09QX01FVEhPRChvcjE2KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1Q
TEFURURfTk9PUF9NRVRIT0Qob3IzMik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVN
UExBVEVEX05PT1BfTUVUSE9EKG9yNjQpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRf
VEVNUExBVEVEX05PT1BfTUVUSE9EKHhvcjMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2
NF9URU1QTEFURURfTk9PUF9NRVRIT0QoeG9yNjQpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJ
U0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKG5vdDMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJf
UklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qobm90NjQpOworCisgICAgTUFDUk9fQVNTRU1C
TEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKG5lZzMyKTsKKyAgICBNQUNST19BU1NF
TUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QobmVnNjQpOworCisgICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKG1vdmUpOworICAgIE1BQ1JP
X0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChzd2FwKTsKKworICAgIE1B
Q1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChtb3ZlWmVyb1RvRG91
YmxlKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qo
bW92ZUZsb2F0VG8zMik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05P
T1BfTUVUSE9EKG1vdmUzMlRvRmxvYXQpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRf
VEVNUExBVEVEX05PT1BfTUVUSE9EKG1vdmVEb3VibGUpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9S
SVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChtb3ZlRG91YmxlVG82NCk7CisgICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKG1vdmU2NFRvRG91YmxlKTsK
KworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChjb21w
YXJlOCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9E
KGNvbXBhcmUzMik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1Bf
TUVUSE9EKGNvbXBhcmU2NCk7CisKKyAgICBzdGF0aWMgUmVsYXRpb25hbENvbmRpdGlvbiBpbnZl
cnQoUmVsYXRpb25hbENvbmRpdGlvbiBjb25kKQorICAgIHsKKyAgICAgICAgcmV0dXJuIHN0YXRp
Y19jYXN0PFJlbGF0aW9uYWxDb25kaXRpb24+KEFzc2VtYmxlcjo6aW52ZXJ0KHN0YXRpY19jYXN0
PEFzc2VtYmxlcjo6Q29uZGl0aW9uPihjb25kKSkpOworICAgIH0KKworICAgIHRlbXBsYXRlPFB0
clRhZyByZXN1bHRUYWcsIFB0clRhZyBsb2NhdGlvblRhZz4KKyAgICBzdGF0aWMgRnVuY3Rpb25Q
dHI8cmVzdWx0VGFnPiByZWFkQ2FsbFRhcmdldChDb2RlTG9jYXRpb25DYWxsPGxvY2F0aW9uVGFn
PikgeyByZXR1cm4geyB9OyB9CisKKyAgICB0ZW1wbGF0ZTxQdHJUYWcgdGFnPgorICAgIHN0YXRp
YyB2b2lkIHJlcGxhY2VXaXRoVk1IYWx0KENvZGVMb2NhdGlvbkxhYmVsPHRhZz4pIHsgfQorCisg
ICAgdGVtcGxhdGU8UHRyVGFnIHN0YXJ0VGFnLCBQdHJUYWcgZGVzdFRhZz4KKyAgICBzdGF0aWMg
dm9pZCByZXBsYWNlV2l0aEp1bXAoQ29kZUxvY2F0aW9uTGFiZWw8c3RhcnRUYWc+LCBDb2RlTG9j
YXRpb25MYWJlbDxkZXN0VGFnPikgeyB9CisKKyAgICBzdGF0aWMgcHRyZGlmZl90IG1heEp1bXBS
ZXBsYWNlbWVudFNpemUoKQorICAgIHsKKyAgICAgICAgcmV0dXJuIEFzc2VtYmxlcjo6bWF4SnVt
cFJlcGxhY2VtZW50U2l6ZSgpOworICAgIH0KKworICAgIHN0YXRpYyBwdHJkaWZmX3QgcGF0Y2hh
YmxlSnVtcFNpemUoKQorICAgIHsKKyAgICAgICAgcmV0dXJuIEFzc2VtYmxlcjo6cGF0Y2hhYmxl
SnVtcFNpemUoKTsKKyAgICB9CisKKyAgICB0ZW1wbGF0ZTxQdHJUYWcgdGFnPgorICAgIHN0YXRp
YyBDb2RlTG9jYXRpb25MYWJlbDx0YWc+IHN0YXJ0T2ZCcmFuY2hQdHJXaXRoUGF0Y2hPblJlZ2lz
dGVyKENvZGVMb2NhdGlvbkRhdGFMYWJlbFB0cjx0YWc+KSB7IHJldHVybiB7IH07IH0KKworICAg
IHRlbXBsYXRlPFB0clRhZyB0YWc+CisgICAgc3RhdGljIENvZGVMb2NhdGlvbkxhYmVsPHRhZz4g
c3RhcnRPZlBhdGNoYWJsZUJyYW5jaFB0cldpdGhQYXRjaE9uQWRkcmVzcyhDb2RlTG9jYXRpb25E
YXRhTGFiZWxQdHI8dGFnPikgeyByZXR1cm4geyB9OyB9CisKKyAgICB0ZW1wbGF0ZTxQdHJUYWcg
dGFnPgorICAgIHN0YXRpYyBDb2RlTG9jYXRpb25MYWJlbDx0YWc+IHN0YXJ0T2ZQYXRjaGFibGVC
cmFuY2gzMldpdGhQYXRjaE9uQWRkcmVzcyhDb2RlTG9jYXRpb25EYXRhTGFiZWwzMjx0YWc+KSB7
IHJldHVybiB7IH07IH0KKworICAgIHRlbXBsYXRlPFB0clRhZyB0YWc+CisgICAgc3RhdGljIHZv
aWQgcmV2ZXJ0SnVtcFJlcGxhY2VtZW50VG9CcmFuY2hQdHJXaXRoUGF0Y2goQ29kZUxvY2F0aW9u
TGFiZWw8dGFnPiwgUmVnaXN0ZXJJRCwgdm9pZCopIHsgfQorCisgICAgdGVtcGxhdGU8UHRyVGFn
IHRhZz4KKyAgICBzdGF0aWMgdm9pZCByZXZlcnRKdW1wUmVwbGFjZW1lbnRUb1BhdGNoYWJsZUJy
YW5jaFB0cldpdGhQYXRjaChDb2RlTG9jYXRpb25MYWJlbDx0YWc+LCBBZGRyZXNzLCB2b2lkKikg
eyB9CisKKyAgICB0ZW1wbGF0ZTxQdHJUYWcgdGFnPgorICAgIHN0YXRpYyB2b2lkIHJldmVydEp1
bXBSZXBsYWNlbWVudFRvUGF0Y2hhYmxlQnJhbmNoMzJXaXRoUGF0Y2goQ29kZUxvY2F0aW9uTGFi
ZWw8dGFnPiwgQWRkcmVzcywgaW50MzJfdCkgeyB9CisKKyAgICB0ZW1wbGF0ZTxQdHJUYWcgY2Fs
bFRhZywgUHRyVGFnIGRlc3RUYWc+CisgICAgc3RhdGljIHZvaWQgcmVwYXRjaENhbGwoQ29kZUxv
Y2F0aW9uQ2FsbDxjYWxsVGFnPiwgQ29kZUxvY2F0aW9uTGFiZWw8ZGVzdFRhZz4pIHsgfQorCisg
ICAgdGVtcGxhdGU8UHRyVGFnIGNhbGxUYWcsIFB0clRhZyBkZXN0VGFnPgorICAgIHN0YXRpYyB2
b2lkIHJlcGF0Y2hDYWxsKENvZGVMb2NhdGlvbkNhbGw8Y2FsbFRhZz4sIEZ1bmN0aW9uUHRyPGRl
c3RUYWc+KSB7IH0KKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09Q
X01FVEhPRF9XSVRIX1JFVFVSTihqdW1wLCBKdW1wKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklT
Q1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoZmFySnVtcCk7CisKKyAgICBNQUNST19BU1NFTUJM
RVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4obmVhckNhbGwsIENh
bGwpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9X
SVRIX1JFVFVSTihuZWFyVGFpbENhbGwsIENhbGwpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVND
VjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTih0aHJlYWRTYWZlUGF0Y2hhYmxl
TmVhckNhbGwsIENhbGwpOworCisgICAgdm9pZCByZXQoKSB7IH0KKworICAgIE1BQ1JPX0FTU0VN
QkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRCh0ZXN0OCk7CisgICAgTUFDUk9fQVNT
RU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHRlc3QzMik7CisgICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHRlc3Q2NCk7CisKKyAgICBN
QUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4o
YnJhbmNoOCwgSnVtcCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05P
T1BfTUVUSE9EX1dJVEhfUkVUVVJOKGJyYW5jaDMyLCBKdW1wKTsKKyAgICBNQUNST19BU1NFTUJM
RVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoNjQsIEp1
bXApOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9E
X1dJVEhfUkVUVVJOKGJyYW5jaDMyV2l0aFBhdGNoLCBKdW1wKTsKKyAgICBNQUNST19BU1NFTUJM
RVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoMzJXaXRo
VW5hbGlnbmVkSGFsZldvcmRzLCBKdW1wKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0
X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihicmFuY2hBZGQzMiwgSnVtcCk7Cisg
ICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVU
VVJOKGJyYW5jaEFkZDY0LCBKdW1wKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RF
TVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihicmFuY2hTdWIzMiwgSnVtcCk7CisgICAg
TUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJO
KGJyYW5jaFN1YjY0LCBKdW1wKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBM
QVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihicmFuY2hNdWwzMiwgSnVtcCk7CisgICAgTUFD
Uk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKGJy
YW5jaE11bDY0LCBKdW1wKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRF
RF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihicmFuY2hOZWczMiwgSnVtcCk7CisgICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKGJyYW5j
aE5lZzY0LCBKdW1wKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9O
T09QX01FVEhPRF9XSVRIX1JFVFVSTihicmFuY2hUZXN0OCwgSnVtcCk7CisgICAgTUFDUk9fQVNT
RU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKGJyYW5jaFRl
c3QzMiwgSnVtcCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1Bf
TUVUSE9EX1dJVEhfUkVUVVJOKGJyYW5jaFRlc3Q2NCwgSnVtcCk7CisKKyAgICBNQUNST19BU1NF
TUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoUHRy
LCBKdW1wKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01F
VEhPRF9XSVRIX1JFVFVSTihtb3ZlV2l0aFBhdGNoLCBEYXRhTGFiZWwzMik7CisgICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKG1vdmVX
aXRoUGF0Y2gsIERhdGFMYWJlbFB0cik7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9U
RU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoUHRyV2l0aFBhdGNoLCBKdW1w
KTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9X
SVRIX1JFVFVSTihwYXRjaGFibGVCcmFuY2g4LCBQYXRjaGFibGVKdW1wKTsKKyAgICBNQUNST19B
U1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4ocGF0Y2hh
YmxlQnJhbmNoMzIsIFBhdGNoYWJsZUp1bXApOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0
X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihwYXRjaGFibGVCcmFuY2g2NCwgUGF0
Y2hhYmxlSnVtcCk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9P
UF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoRmxvYXQsIEp1bXApOworICAgIE1BQ1JPX0FTU0VN
QkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihicmFuY2hEb3Vi
bGUsIEp1bXApOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01F
VEhPRF9XSVRIX1JFVFVSTihicmFuY2hEb3VibGVOb25aZXJvLCBKdW1wKTsKKyAgICBNQUNST19B
U1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNo
RG91YmxlWmVyb09yTmFOLCBKdW1wKTsKKworICAgIGVudW0gQnJhbmNoVHJ1bmNhdGVUeXBlIHsg
QnJhbmNoSWZUcnVuY2F0ZUZhaWxlZCwgQnJhbmNoSWZUcnVuY2F0ZVN1Y2Nlc3NmdWwgfTsKKyAg
ICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRV
Uk4oYnJhbmNoVHJ1bmNhdGVEb3VibGVUb0ludDMyLCBKdW1wKTsKKworICAgIE1BQ1JPX0FTU0VN
QkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChicmFuY2hDb252ZXJ0RG91YmxlVG9J
bnQzMik7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRI
T0RfV0lUSF9SRVRVUk4oY2FsbCwgQ2FsbCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRf
VEVNUExBVEVEX05PT1BfTUVUSE9EKGNhbGxPcGVyYXRpb24pOworCisgICAgTUFDUk9fQVNTRU1C
TEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGdldEVmZmVjdGl2ZUFkZHJlc3MpOwor
CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGxvYWRG
bG9hdCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9E
KGxvYWREb3VibGUpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05P
T1BfTUVUSE9EKHN0b3JlRmxvYXQpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBM
QVRFRF9OT09QX01FVEhPRChzdG9yZURvdWJsZSk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklT
Q1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoYWRkRmxvYXQpOworICAgIE1BQ1JPX0FTU0VNQkxF
Ul9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChhZGREb3VibGUpOworCisgICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHN1YkZsb2F0KTsKKyAgICBN
QUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qoc3ViRG91YmxlKTsK
KworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChtdWxG
bG9hdCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9E
KG11bERvdWJsZSk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9P
UF9NRVRIT0QoZGl2RmxvYXQpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRF
RF9OT09QX01FVEhPRChkaXZEb3VibGUpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRf
VEVNUExBVEVEX05PT1BfTUVUSE9EKHNxcnRGbG9hdCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJ
U0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHNxcnREb3VibGUpOworCisgICAgTUFDUk9fQVNT
RU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGFic0Zsb2F0KTsKKyAgICBNQUNS
T19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoYWJzRG91YmxlKTsKKwor
ICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChjZWlsRmxv
YXQpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChj
ZWlsRG91YmxlKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09Q
X01FVEhPRChmbG9vckZsb2F0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFU
RURfTk9PUF9NRVRIT0QoZmxvb3JEb3VibGUpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NW
NjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGFuZEZsb2F0KTsKKyAgICBNQUNST19BU1NFTUJMRVJf
UklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoYW5kRG91YmxlKTsKKworICAgIE1BQ1JPX0FT
U0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChvckZsb2F0KTsKKyAgICBNQUNS
T19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qob3JEb3VibGUpOworCisg
ICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKG5lZ2F0ZUZs
b2F0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qo
bmVnYXRlRG91YmxlKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9O
T09QX01FVEhPRChyb3VuZFRvd2FyZE5lYXJlc3RJbnRGbG9hdCk7CisgICAgTUFDUk9fQVNTRU1C
TEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHJvdW5kVG93YXJkTmVhcmVzdEludERv
dWJsZSk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9E
KHJvdW5kVG93YXJkWmVyb0Zsb2F0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1Q
TEFURURfTk9PUF9NRVRIT0Qocm91bmRUb3dhcmRaZXJvRG91YmxlKTsKKworICAgIE1BQ1JPX0FT
U0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihjb21wYXJl
RmxvYXQsIEp1bXApOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09Q
X01FVEhPRF9XSVRIX1JFVFVSTihjb21wYXJlRG91YmxlLCBKdW1wKTsKKworICAgIE1BQ1JPX0FT
U0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChjb252ZXJ0SW50MzJUb0Zsb2F0
KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoY29u
dmVydEludDMyVG9Eb3VibGUpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRF
RF9OT09QX01FVEhPRChjb252ZXJ0SW50NjRUb0Zsb2F0KTsKKyAgICBNQUNST19BU1NFTUJMRVJf
UklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoY29udmVydEludDY0VG9Eb3VibGUpOworCisg
ICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGNvbnZlcnRG
bG9hdFRvRG91YmxlKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9P
UF9NRVRIT0QoY29udmVydERvdWJsZVRvRmxvYXQpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJ
U0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHRydW5jYXRlRmxvYXRUb0ludDMyKTsKKyAgICBN
QUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QodHJ1bmNhdGVGbG9h
dFRvVWludDMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9N
RVRIT0QodHJ1bmNhdGVGbG9hdFRvSW50NjQpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0
X1RFTVBMQVRFRF9OT09QX01FVEhPRCh0cnVuY2F0ZUZsb2F0VG9VaW50NjQpOworICAgIE1BQ1JP
X0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRCh0cnVuY2F0ZURvdWJsZVRv
SW50MzIpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhP
RCh0cnVuY2F0ZURvdWJsZVRvVWludDMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9U
RU1QTEFURURfTk9PUF9NRVRIT0QodHJ1bmNhdGVEb3VibGVUb0ludDY0KTsKKyAgICBNQUNST19B
U1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QodHJ1bmNhdGVEb3VibGVUb1Vp
bnQ2NCk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRI
T0QocHVzaCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVU
SE9EKHB1c2hQYWlyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9P
UF9NRVRIT0QocHVzaFRvU2F2ZSk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1Q
TEFURURfTk9PUF9NRVRIT0QocG9wKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1Q
TEFURURfTk9PUF9NRVRIT0QocG9wUGFpcik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRf
VEVNUExBVEVEX05PT1BfTUVUSE9EKHBvcFRvUmVzdG9yZSk7CisKKyAgICBNQUNST19BU1NFTUJM
RVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoYWJvcnRXaXRoUmVhc29uKTsKKworICAg
IE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVS
TihzdG9yZVB0cldpdGhQYXRjaCwgRGF0YUxhYmVsUHRyKTsKKworICAgIHZvaWQgYnJlYWtwb2lu
dCh1aW50MTZfdCA9IDB4YzQ3MSkgeyB9CisgICAgdm9pZCBub3AoKSB7IH0KKworICAgIHZvaWQg
bWVtb3J5RmVuY2UoKSB7IH0KKyAgICB2b2lkIHN0b3JlRmVuY2UoKSB7IH0KKyAgICB2b2lkIGxv
YWRGZW5jZSgpIHsgfQorCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05P
T1BfTUVUSE9EX1dJVEhfUkVUVVJOKGJyYW5jaEF0b21pY1dlYWtDQVM4LCBKdW1wTGlzdCk7Cisg
ICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVU
VVJOKGJyYW5jaEF0b21pY1dlYWtDQVMxNiwgSnVtcExpc3QpOworICAgIE1BQ1JPX0FTU0VNQkxF
Ul9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihicmFuY2hBdG9taWNX
ZWFrQ0FTMzIsIEp1bXBMaXN0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFU
RURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoQXRvbWljV2Vha0NBUzY0LCBKdW1wTGlz
dCk7CisKKyAgICB0ZW1wbGF0ZTxQdHJUYWcgdGFnPgorICAgIHN0YXRpYyB2b2lkIGxpbmtDYWxs
KHZvaWQqLCBDYWxsLCBGdW5jdGlvblB0cjx0YWc+KSB7IH0KK307CisKK30gLy8gbmFtZXNwYWNl
IEpTQworCisjdW5kZWYgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVU
SE9ECisjdW5kZWYgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9E
X1dJVEhfUkVUVVJOCisKKyNlbmRpZiAvLyBFTkFCTEUoQVNTRU1CTEVSKSAmJiBDUFUoUklTQ1Y2
NCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWF4RnJhbWVF
eHRlbnRGb3JTbG93UGF0aENhbGwuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIv
TWF4RnJhbWVFeHRlbnRGb3JTbG93UGF0aENhbGwuaAppbmRleCA2ZGFjMDljMmM5MTNlYTA5YWU0
YzViMGE2OTBjNTk2NTgxOTQ0NzgwLi44NjJhNWQ3YzJiNjA0N2JhNDdjMWFhNzc5YjEzMzAwMGY5
NDAxZjM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01heEZy
YW1lRXh0ZW50Rm9yU2xvd1BhdGhDYWxsLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fz
c2VtYmxlci9NYXhGcmFtZUV4dGVudEZvclNsb3dQYXRoQ2FsbC5oCkBAIC01MCw3ICs1MCw3IEBA
IHN0YXRpYyBjb25zdGV4cHIgc2l6ZV90IG1heEZyYW1lRXh0ZW50Rm9yU2xvd1BhdGhDYWxsID0g
MDsKIC8vIDcgYXJncyBvbiBzdGFjayAoMjggYnl0ZXMpLgogc3RhdGljIGNvbnN0ZXhwciBzaXpl
X3QgbWF4RnJhbWVFeHRlbnRGb3JTbG93UGF0aENhbGwgPSA0MDsKIAotI2VsaWYgQ1BVKEFSTTY0
KSB8fCBDUFUoQVJNNjRFKQorI2VsaWYgQ1BVKEFSTTY0KSB8fCBDUFUoQVJNNjRFKSB8fCBDUFUo
UklTQ1Y2NCkKIC8vIEFsbCBhcmdzIGluIHJlZ2lzdGVycy4KIHN0YXRpYyBjb25zdGV4cHIgc2l6
ZV90IG1heEZyYW1lRXh0ZW50Rm9yU2xvd1BhdGhDYWxsID0gMDsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9QZXJmTG9nLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9hc3NlbWJsZXIvUGVyZkxvZy5jcHAKaW5kZXggYTQ5Y2NkN2ZkNGFmNDY0MjE0OThm
NDAyNGE2NmYwNTAxYTY0ZmNhOS4uNDZiYzg1OWQ5MTJhNTI3Njk0NjE2ZmIyN2U3ZGExNGZhMjRk
NWU4MyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9QZXJmTG9n
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL1BlcmZMb2cuY3BwCkBA
IC03Nyw2ICs3Nyw4IEBAIHN0YXRpYyBjb25zdGV4cHIgdWludDMyX3QgZWxmTWFjaGluZSA9IEVN
X01JUFNfUlMzX0xFOwogI2Vsc2UKIHN0YXRpYyBjb25zdGV4cHIgdWludDMyX3QgZWxmTWFjaGlu
ZSA9IEVNX01JUFM7CiAjZW5kaWYKKyNlbGlmIENQVShSSVNDVjY0KQorc3RhdGljIGNvbnN0ZXhw
ciB1aW50MzJfdCBlbGZNYWNoaW5lID0gRU1fUklTQ1Y7CiAjZW5kaWYKIAogfSAvLyBuYW1lc3Bh
Y2UgQ29uc3RhbnRzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVy
L1Byb2JlQ29udGV4dC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9Qcm9iZUNv
bnRleHQuaAppbmRleCBmM2I3ZTJjOWVjYjNhOWE3ZWQ5NDM0YzA5YzMwOTI3MTg3YzQ2Nzc4Li41
NGRiMWNlODMyZWZjMGJkMzgyMDkyMTAwYTQ3MjdlMzg5ZmEzMjJhIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL1Byb2JlQ29udGV4dC5oCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvUHJvYmVDb250ZXh0LmgKQEAgLTExNiw2ICsxMTYsOCBA
QCBpbmxpbmUgdm9pZComIENQVVN0YXRlOjpwYygpCiAgICAgcmV0dXJuICpyZWludGVycHJldF9j
YXN0PHZvaWQqKj4oJmdwcihBUk1SZWdpc3RlcnM6OnBjKSk7CiAjZWxpZiBDUFUoTUlQUykKICAg
ICByZXR1cm4gKnJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCoqPigmc3ByKE1JUFNSZWdpc3RlcnM6OnBj
KSk7CisjZWxpZiBDUFUoUklTQ1Y2NCkKKyAgICByZXR1cm4gKnJlaW50ZXJwcmV0X2Nhc3Q8dm9p
ZCoqPigmc3ByKFJJU0NWNjRSZWdpc3RlcnM6OnBjKSk7CiAjZWxzZQogI2Vycm9yICJVbnN1cHBv
cnRlZCBDUFUiCiAjZW5kaWYKQEAgLTEzMSw2ICsxMzMsOCBAQCBpbmxpbmUgdm9pZComIENQVVN0
YXRlOjpmcCgpCiAgICAgcmV0dXJuICpyZWludGVycHJldF9jYXN0PHZvaWQqKj4oJmdwcihBUk1S
ZWdpc3RlcnM6OmZwKSk7CiAjZWxpZiBDUFUoTUlQUykKICAgICByZXR1cm4gKnJlaW50ZXJwcmV0
X2Nhc3Q8dm9pZCoqPigmZ3ByKE1JUFNSZWdpc3RlcnM6OmZwKSk7CisjZWxpZiBDUFUoUklTQ1Y2
NCkKKyAgICByZXR1cm4gKnJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCoqPigmZ3ByKFJJU0NWNjRSZWdp
c3RlcnM6OmZwKSk7CiAjZWxzZQogI2Vycm9yICJVbnN1cHBvcnRlZCBDUFUiCiAjZW5kaWYKQEAg
LTE0Niw2ICsxNTAsOCBAQCBpbmxpbmUgdm9pZComIENQVVN0YXRlOjpzcCgpCiAgICAgcmV0dXJu
ICpyZWludGVycHJldF9jYXN0PHZvaWQqKj4oJmdwcihBUk1SZWdpc3RlcnM6OnNwKSk7CiAjZWxp
ZiBDUFUoTUlQUykKICAgICByZXR1cm4gKnJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCoqPigmZ3ByKE1J
UFNSZWdpc3RlcnM6OnNwKSk7CisjZWxpZiBDUFUoUklTQ1Y2NCkKKyAgICByZXR1cm4gKnJlaW50
ZXJwcmV0X2Nhc3Q8dm9pZCoqPigmZ3ByKFJJU0NWNjRSZWdpc3RlcnM6OnNwKSk7CiAjZWxzZQog
I2Vycm9yICJVbnN1cHBvcnRlZCBDUFUiCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9hc3NlbWJsZXIvUklTQ1Y2NEFzc2VtYmxlci5oIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2Fzc2VtYmxlci9SSVNDVjY0QXNzZW1ibGVyLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTEyNWYzMTdj
YmUwMWQ2NGViOGI3MDkxM2U5YTRlMmNhMGUxMGZhOAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvUklTQ1Y2NEFzc2VtYmxlci5oCkBAIC0wLDAgKzEs
MTk3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIElnYWxpYSBTLkwuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBB
TkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisg
KiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaWYgRU5B
QkxFKEFTU0VNQkxFUikgJiYgQ1BVKFJJU0NWNjQpCisKKyNpbmNsdWRlICJBc3NlbWJsZXJCdWZm
ZXIuaCIKKyNpbmNsdWRlICJSSVNDVjY0UmVnaXN0ZXJzLmgiCisKK25hbWVzcGFjZSBKU0Mgewor
CituYW1lc3BhY2UgUklTQ1Y2NFJlZ2lzdGVycyB7CisKK3R5cGVkZWYgZW51bSA6IGludDhfdCB7
CisjZGVmaW5lIFJFR0lTVEVSX0lEKGlkLCBuYW1lLCByLCBjcykgaWQsCisgICAgRk9SX0VBQ0hf
R1BfUkVHSVNURVIoUkVHSVNURVJfSUQpCisjdW5kZWYgUkVHSVNURVJfSUQKKworI2RlZmluZSBS
RUdJU1RFUl9BTElBUyhpZCwgbmFtZSwgYWxpYXMpIGlkID0gYWxpYXMsCisgICAgRk9SX0VBQ0hf
UkVHSVNURVJfQUxJQVMoUkVHSVNURVJfQUxJQVMpCisjdW5kZWYgUkVHSVNURVJfQUxJQVMKKwor
ICAgIEludmFsaWRHUFJSZWcgPSAtMSwKK30gUmVnaXN0ZXJJRDsKKwordHlwZWRlZiBlbnVtIDog
aW50OF90IHsKKyNkZWZpbmUgUkVHSVNURVJfSUQoaWQsIG5hbWUpIGlkLAorICAgIEZPUl9FQUNI
X1NQX1JFR0lTVEVSKFJFR0lTVEVSX0lEKQorI3VuZGVmIFJFR0lTVEVSX0lECisKKyAgICBJbnZh
bGlkU1BSZWcgPSAtMSwKK30gU1BSZWdpc3RlcklEOworCit0eXBlZGVmIGVudW0gOiBpbnQ4X3Qg
eworI2RlZmluZSBSRUdJU1RFUl9JRChpZCwgbmFtZSwgciwgY3MpIGlkLAorICAgIEZPUl9FQUNI
X0ZQX1JFR0lTVEVSKFJFR0lTVEVSX0lEKQorI3VuZGVmIFJFR0lTVEVSX0lECisKKyAgICBJbnZh
bGlkRlBSUmVnID0gLTEsCit9IEZQUmVnaXN0ZXJJRDsKKworfSAvLyBuYW1lc3BhY2UgUklTQ1Y2
NFJlZ2lzdGVycworCitjbGFzcyBSSVNDVjY0QXNzZW1ibGVyIHsKK3B1YmxpYzoKKyAgICB1c2lu
ZyBSZWdpc3RlcklEID0gUklTQ1Y2NFJlZ2lzdGVyczo6UmVnaXN0ZXJJRDsKKyAgICB1c2luZyBT
UFJlZ2lzdGVySUQgPSBSSVNDVjY0UmVnaXN0ZXJzOjpTUFJlZ2lzdGVySUQ7CisgICAgdXNpbmcg
RlBSZWdpc3RlcklEID0gUklTQ1Y2NFJlZ2lzdGVyczo6RlBSZWdpc3RlcklEOworCisgICAgc3Rh
dGljIGNvbnN0ZXhwciBSZWdpc3RlcklEIGZpcnN0UmVnaXN0ZXIoKSB7IHJldHVybiBSSVNDVjY0
UmVnaXN0ZXJzOjp4MDsgfQorICAgIHN0YXRpYyBjb25zdGV4cHIgUmVnaXN0ZXJJRCBsYXN0UmVn
aXN0ZXIoKSB7IHJldHVybiBSSVNDVjY0UmVnaXN0ZXJzOjp4MzE7IH0KKyAgICBzdGF0aWMgY29u
c3RleHByIHVuc2lnbmVkIG51bWJlck9mUmVnaXN0ZXJzKCkgeyByZXR1cm4gbGFzdFJlZ2lzdGVy
KCkgLSBmaXJzdFJlZ2lzdGVyKCkgKyAxOyB9CisKKyAgICBzdGF0aWMgY29uc3RleHByIFNQUmVn
aXN0ZXJJRCBmaXJzdFNQUmVnaXN0ZXIoKSB7IHJldHVybiBSSVNDVjY0UmVnaXN0ZXJzOjpwYzsg
fQorICAgIHN0YXRpYyBjb25zdGV4cHIgU1BSZWdpc3RlcklEIGxhc3RTUFJlZ2lzdGVyKCkgeyBy
ZXR1cm4gUklTQ1Y2NFJlZ2lzdGVyczo6cGM7IH0KKyAgICBzdGF0aWMgY29uc3RleHByIHVuc2ln
bmVkIG51bWJlck9mU1BSZWdpc3RlcnMoKSB7IHJldHVybiBsYXN0U1BSZWdpc3RlcigpIC0gZmly
c3RTUFJlZ2lzdGVyKCkgKyAxOyB9CisKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUmVnaXN0ZXJJ
RCBmaXJzdEZQUmVnaXN0ZXIoKSB7IHJldHVybiBSSVNDVjY0UmVnaXN0ZXJzOjpmMDsgfQorICAg
IHN0YXRpYyBjb25zdGV4cHIgRlBSZWdpc3RlcklEIGxhc3RGUFJlZ2lzdGVyKCkgeyByZXR1cm4g
UklTQ1Y2NFJlZ2lzdGVyczo6ZjMxOyB9CisgICAgc3RhdGljIGNvbnN0ZXhwciB1bnNpZ25lZCBu
dW1iZXJPZkZQUmVnaXN0ZXJzKCkgeyByZXR1cm4gbGFzdEZQUmVnaXN0ZXIoKSAtIGZpcnN0RlBS
ZWdpc3RlcigpICsgMTsgfQorCisgICAgc3RhdGljIGNvbnN0IGNoYXIqIGdwck5hbWUoUmVnaXN0
ZXJJRCBpZCkKKyAgICB7CisgICAgICAgIEFTU0VSVChpZCA+PSBmaXJzdFJlZ2lzdGVyKCkgJiYg
aWQgPD0gbGFzdFJlZ2lzdGVyKCkpOworICAgICAgICBzdGF0aWMgY29uc3QgY2hhciogY29uc3Qg
bmFtZUZvclJlZ2lzdGVyW251bWJlck9mUmVnaXN0ZXJzKCldID0geworI2RlZmluZSBSRUdJU1RF
Ul9OQU1FKGlkLCBuYW1lLCByLCBjcykgbmFtZSwKKyAgICAgICAgICAgIEZPUl9FQUNIX0dQX1JF
R0lTVEVSKFJFR0lTVEVSX05BTUUpCisjdW5kZWYgUkVHSVNURVJfTkFNRQorICAgICAgICB9Owor
ICAgICAgICByZXR1cm4gbmFtZUZvclJlZ2lzdGVyW2lkXTsKKyAgICB9CisKKyAgICBzdGF0aWMg
Y29uc3QgY2hhciogc3ByTmFtZShTUFJlZ2lzdGVySUQgaWQpCisgICAgeworICAgICAgICBBU1NF
UlQoaWQgPj0gZmlyc3RTUFJlZ2lzdGVyKCkgJiYgaWQgPD0gbGFzdFNQUmVnaXN0ZXIoKSk7Cisg
ICAgICAgIHN0YXRpYyBjb25zdCBjaGFyKiBjb25zdCBuYW1lRm9yUmVnaXN0ZXJbbnVtYmVyT2ZT
UFJlZ2lzdGVycygpXSA9IHsKKyNkZWZpbmUgUkVHSVNURVJfTkFNRShpZCwgbmFtZSkgbmFtZSwK
KyAgICAgICAgICAgIEZPUl9FQUNIX1NQX1JFR0lTVEVSKFJFR0lTVEVSX05BTUUpCisjdW5kZWYg
UkVHSVNURVJfTkFNRQorICAgICAgICB9OworICAgICAgICByZXR1cm4gbmFtZUZvclJlZ2lzdGVy
W2lkXTsKKyAgICB9CisKKyAgICBzdGF0aWMgY29uc3QgY2hhciogZnByTmFtZShGUFJlZ2lzdGVy
SUQgaWQpCisgICAgeworICAgICAgICBBU1NFUlQoaWQgPj0gZmlyc3RGUFJlZ2lzdGVyKCkgJiYg
aWQgPD0gbGFzdEZQUmVnaXN0ZXIoKSk7CisgICAgICAgIHN0YXRpYyBjb25zdCBjaGFyKiBjb25z
dCBuYW1lRm9yUmVnaXN0ZXJbbnVtYmVyT2ZGUFJlZ2lzdGVycygpXSA9IHsKKyNkZWZpbmUgUkVH
SVNURVJfTkFNRShpZCwgbmFtZSwgciwgY3MpIG5hbWUsCisgICAgICAgICAgICBGT1JfRUFDSF9G
UF9SRUdJU1RFUihSRUdJU1RFUl9OQU1FKQorI3VuZGVmIFJFR0lTVEVSX05BTUUKKyAgICAgICAg
fTsKKyAgICAgICAgcmV0dXJuIG5hbWVGb3JSZWdpc3RlcltpZF07CisgICAgfQorCisgICAgUklT
Q1Y2NEFzc2VtYmxlcigpIHsgfQorCisgICAgQXNzZW1ibGVyQnVmZmVyJiBidWZmZXIoKSB7IHJl
dHVybiBtX2J1ZmZlcjsgfQorCisgICAgdHlwZWRlZiBlbnVtIHsKKyAgICAgICAgQ29uZGl0aW9u
RVEsCisgICAgICAgIENvbmRpdGlvbk5FLAorICAgICAgICBDb25kaXRpb25IUywgQ29uZGl0aW9u
Q1MgPSBDb25kaXRpb25IUywKKyAgICAgICAgQ29uZGl0aW9uTE8sIENvbmRpdGlvbkNDID0gQ29u
ZGl0aW9uTE8sCisgICAgICAgIENvbmRpdGlvbk1JLAorICAgICAgICBDb25kaXRpb25QTCwKKyAg
ICAgICAgQ29uZGl0aW9uVlMsCisgICAgICAgIENvbmRpdGlvblZDLAorICAgICAgICBDb25kaXRp
b25ISSwKKyAgICAgICAgQ29uZGl0aW9uTFMsCisgICAgICAgIENvbmRpdGlvbkdFLAorICAgICAg
ICBDb25kaXRpb25MVCwKKyAgICAgICAgQ29uZGl0aW9uR1QsCisgICAgICAgIENvbmRpdGlvbkxF
LAorICAgICAgICBDb25kaXRpb25BTCwKKyAgICAgICAgQ29uZGl0aW9uSW52YWxpZAorICAgIH0g
Q29uZGl0aW9uOworCisgICAgc3RhdGljIENvbmRpdGlvbiBpbnZlcnQoQ29uZGl0aW9uIGNvbmQp
CisgICAgeworICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8Q29uZGl0aW9uPihjb25kIF4gMSk7
CisgICAgfQorCisgICAgc3RhdGljIHZvaWQqIGdldFJlbG9jYXRlZEFkZHJlc3Modm9pZCogY29k
ZSwgQXNzZW1ibGVyTGFiZWwgbGFiZWwpCisgICAgeworICAgICAgICBBU1NFUlQobGFiZWwuaXNT
ZXQoKSk7CisgICAgICAgIHJldHVybiByZWludGVycHJldF9jYXN0PHZvaWQqPihyZWludGVycHJl
dF9jYXN0PHB0cmRpZmZfdD4oY29kZSkgKyBsYWJlbC5vZmZzZXQoKSk7CisgICAgfQorCisgICAg
c2l6ZV90IGNvZGVTaXplKCkgY29uc3QgeyByZXR1cm4gbV9idWZmZXIuY29kZVNpemUoKTsgfQor
CisgICAgc3RhdGljIHVuc2lnbmVkIGdldENhbGxSZXR1cm5PZmZzZXQoQXNzZW1ibGVyTGFiZWwp
IHsgcmV0dXJuIDA7IH0KKworICAgIEFzc2VtYmxlckxhYmVsIGxhYmVsSWdub3JpbmdXYXRjaHBv
aW50cygpIHsgcmV0dXJuIHsgfTsgfQorICAgIEFzc2VtYmxlckxhYmVsIGxhYmVsRm9yV2F0Y2hw
b2ludCgpIHsgcmV0dXJuIHsgfTsgfQorICAgIEFzc2VtYmxlckxhYmVsIGxhYmVsKCkgeyByZXR1
cm4geyB9OyB9CisKKyAgICBzdGF0aWMgdm9pZCBsaW5rSnVtcCh2b2lkKiwgQXNzZW1ibGVyTGFi
ZWwsIHZvaWQqKSB7IH0KKworICAgIHN0YXRpYyB2b2lkIGxpbmtKdW1wKEFzc2VtYmxlckxhYmVs
LCBBc3NlbWJsZXJMYWJlbCkgeyB9CisKKyAgICBzdGF0aWMgdm9pZCBsaW5rQ2FsbCh2b2lkKiwg
QXNzZW1ibGVyTGFiZWwsIHZvaWQqKSB7IH0KKworICAgIHN0YXRpYyB2b2lkIGxpbmtQb2ludGVy
KHZvaWQqLCBBc3NlbWJsZXJMYWJlbCwgdm9pZCopIHsgfQorCisgICAgc3RhdGljIHB0cmRpZmZf
dCBtYXhKdW1wUmVwbGFjZW1lbnRTaXplKCkKKyAgICB7CisgICAgICAgIHJldHVybiA0OworICAg
IH0KKworICAgIHN0YXRpYyBjb25zdGV4cHIgcHRyZGlmZl90IHBhdGNoYWJsZUp1bXBTaXplKCkK
KyAgICB7CisgICAgICAgIHJldHVybiA0OworICAgIH0KKworICAgIHN0YXRpYyB2b2lkIHJlcGF0
Y2hQb2ludGVyKHZvaWQqLCB2b2lkKikgeyB9CisKKyAgICBzdGF0aWMgdm9pZCByZWxpbmtKdW1w
KHZvaWQqLCB2b2lkKikgeyB9CisgICAgc3RhdGljIHZvaWQgcmVsaW5rSnVtcFRvTm9wKHZvaWQq
KSB7IH0KKyAgICBzdGF0aWMgdm9pZCByZWxpbmtDYWxsKHZvaWQqLCB2b2lkKikgeyB9CisKKyAg
ICB1bnNpZ25lZCBkZWJ1Z09mZnNldCgpIHsgcmV0dXJuIG1fYnVmZmVyLmRlYnVnT2Zmc2V0KCk7
IH0KKworICAgIHN0YXRpYyB2b2lkIGNhY2hlRmx1c2godm9pZCosIHNpemVfdCkgeyB9CisKKyAg
ICB1c2luZyBDb3B5RnVuY3Rpb24gPSB2b2lkKigmKSh2b2lkKiwgY29uc3Qgdm9pZCosIHNpemVf
dCk7CisgICAgdGVtcGxhdGUgPENvcHlGdW5jdGlvbiBjb3B5PgorICAgIHN0YXRpYyB2b2lkIGZp
bGxOb3BzKHZvaWQqLCBzaXplX3QpIHsgfQorCisgICAgQXNzZW1ibGVyQnVmZmVyIG1fYnVmZmVy
OworfTsKKworfSAvLyBuYW1lc3BhY2UgSlNDCisKKyNlbmRpZiAvLyBFTkFCTEUoQVNTRU1CTEVS
KSAmJiBDUFUoUklTQ1Y2NCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3Nl
bWJsZXIvUklTQ1Y2NFJlZ2lzdGVycy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxl
ci9SSVNDVjY0UmVnaXN0ZXJzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNGEwMjIwZjVkNmYyYmQwN2EyZDdkMjg2
ZWYyNzZjNmY4ZDYwZTkzMAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9hc3NlbWJsZXIvUklTQ1Y2NFJlZ2lzdGVycy5oCkBAIC0wLDAgKzEsMTEyIEBACisvKgorICog
Q29weXJpZ2h0IChDKSAyMDIxIElnYWxpYSBTLkwuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZF
TlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisg
KiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisvLyBNb3JlIG9uIHRoZSBSSVNDLVYg
Y2FsbGluZyBjb252ZW50aW9uIGFuZCByZWdpc3RlcnM6CisvLyBodHRwczovL3Jpc2N2Lm9yZy93
cC1jb250ZW50L3VwbG9hZHMvMjAxNS8wMS9yaXNjdi1jYWxsaW5nLnBkZgorLy8gaHR0cHM6Ly9y
aXNjdi5vcmcvd3AtY29udGVudC91cGxvYWRzLzIwMTcvMDUvcmlzY3Ytc3BlYy12Mi4yLnBkZiAo
Q2hhcHRlciAyMCkKKworI2RlZmluZSBSZWdpc3Rlck5hbWVzIFJJU0NWNjRSZWdpc3RlcnMKKwor
I2RlZmluZSBGT1JfRUFDSF9HUF9SRUdJU1RFUihtYWNybykgICAgICAgICBcCisgICAgbWFjcm8o
eDAsICJ4MCIsIDEsIDApICAgICAgICAgICAgICAgICAgIFwKKyAgICBtYWNybyh4MSwgIngxIiwg
MSwgMCkgICAgICAgICAgICAgICAgICAgXAorICAgIG1hY3JvKHgyLCAieDIiLCAxLCAxKSAgICAg
ICAgICAgICAgICAgICBcCisgICAgbWFjcm8oeDMsICJ4MyIsIDEsIDApICAgICAgICAgICAgICAg
ICAgIFwKKyAgICBtYWNybyh4NCwgIng0IiwgMSwgMCkgICAgICAgICAgICAgICAgICAgXAorICAg
IG1hY3JvKHg1LCAieDUiLCAwLCAwKSAgICAgICAgICAgICAgICAgICBcCisgICAgbWFjcm8oeDYs
ICJ4NiIsIDAsIDApICAgICAgICAgICAgICAgICAgIFwKKyAgICBtYWNybyh4NywgIng3IiwgMCwg
MCkgICAgICAgICAgICAgICAgICAgXAorICAgIG1hY3JvKHg4LCAieDgiLCAxLCAxKSAgICAgICAg
ICAgICAgICAgICBcCisgICAgbWFjcm8oeDksICJ4OSIsIDAsIDEpICAgICAgICAgICAgICAgICAg
IFwKKyAgICBtYWNybyh4MTAsICJ4MTAiLCAwLCAwKSAgICAgICAgICAgICAgICAgXAorICAgIG1h
Y3JvKHgxMSwgIngxMSIsIDAsIDApICAgICAgICAgICAgICAgICBcCisgICAgbWFjcm8oeDEyLCAi
eDEyIiwgMCwgMCkgICAgICAgICAgICAgICAgIFwKKyAgICBtYWNybyh4MTMsICJ4MTMiLCAwLCAw
KSAgICAgICAgICAgICAgICAgXAorICAgIG1hY3JvKHgxNCwgIngxNCIsIDAsIDApICAgICAgICAg
ICAgICAgICBcCisgICAgbWFjcm8oeDE1LCAieDE1IiwgMCwgMCkgICAgICAgICAgICAgICAgIFwK
KyAgICBtYWNybyh4MTYsICJ4MTYiLCAwLCAwKSAgICAgICAgICAgICAgICAgXAorICAgIG1hY3Jv
KHgxNywgIngxNyIsIDAsIDApICAgICAgICAgICAgICAgICBcCisgICAgbWFjcm8oeDE4LCAieDE4
IiwgMCwgMSkgICAgICAgICAgICAgICAgIFwKKyAgICBtYWNybyh4MTksICJ4MTkiLCAwLCAxKSAg
ICAgICAgICAgICAgICAgXAorICAgIG1hY3JvKHgyMCwgIngyMCIsIDAsIDEpICAgICAgICAgICAg
ICAgICBcCisgICAgbWFjcm8oeDIxLCAieDIxIiwgMCwgMSkgICAgICAgICAgICAgICAgIFwKKyAg
ICBtYWNybyh4MjIsICJ4MjIiLCAwLCAxKSAgICAgICAgICAgICAgICAgXAorICAgIG1hY3JvKHgy
MywgIngyMyIsIDAsIDEpICAgICAgICAgICAgICAgICBcCisgICAgbWFjcm8oeDI0LCAieDI0Iiwg
MCwgMSkgICAgICAgICAgICAgICAgIFwKKyAgICBtYWNybyh4MjUsICJ4MjUiLCAwLCAxKSAgICAg
ICAgICAgICAgICAgXAorICAgIG1hY3JvKHgyNiwgIngyNiIsIDAsIDEpICAgICAgICAgICAgICAg
ICBcCisgICAgbWFjcm8oeDI3LCAieDI3IiwgMCwgMSkgICAgICAgICAgICAgICAgIFwKKyAgICBt
YWNybyh4MjgsICJ4MjgiLCAwLCAwKSAgICAgICAgICAgICAgICAgXAorICAgIG1hY3JvKHgyOSwg
IngyOSIsIDAsIDApICAgICAgICAgICAgICAgICBcCisgICAgLyogTWFjcm9Bc3NlbWJsZXIgc2Ny
YXRjaCByZWdpc3RlcnMgKi8gIFwKKyAgICBtYWNybyh4MzAsICJ4MzAiLCAwLCAwKSAgICAgICAg
ICAgICAgICAgXAorICAgIG1hY3JvKHgzMSwgIngzMSIsIDAsIDApCisKKyNkZWZpbmUgRk9SX0VB
Q0hfUkVHSVNURVJfQUxJQVMobWFjcm8pIFwKKyAgICBtYWNybyh6ZXJvLCAiemVybyIsIHgwKSAg
ICAgICAgICAgIFwKKyAgICBtYWNybyhyYSwgInJhIiwgeDEpICAgICAgICAgICAgICAgIFwKKyAg
ICBtYWNybyhzcCwgInNwIiwgeDIpICAgICAgICAgICAgICAgIFwKKyAgICBtYWNybyhncCwgImdw
IiwgeDMpICAgICAgICAgICAgICAgIFwKKyAgICBtYWNybyh0cCwgInRwIiwgeDQpICAgICAgICAg
ICAgICAgIFwKKyAgICBtYWNybyhmcCwgImZwIiwgeDgpCisKKyNkZWZpbmUgRk9SX0VBQ0hfU1Bf
UkVHSVNURVIobWFjcm8pIFwKKyAgICBtYWNybyhwYywgInBjIikKKworI2RlZmluZSBGT1JfRUFD
SF9GUF9SRUdJU1RFUihtYWNybykgXAorICAgIG1hY3JvKGYwLCAiZjAiLCAwLCAwKSAgICAgICAg
ICAgXAorICAgIG1hY3JvKGYxLCAiZjEiLCAwLCAwKSAgICAgICAgICAgXAorICAgIG1hY3JvKGYy
LCAiZjIiLCAwLCAwKSAgICAgICAgICAgXAorICAgIG1hY3JvKGYzLCAiZjMiLCAwLCAwKSAgICAg
ICAgICAgXAorICAgIG1hY3JvKGY0LCAiZjQiLCAwLCAwKSAgICAgICAgICAgXAorICAgIG1hY3Jv
KGY1LCAiZjUiLCAwLCAwKSAgICAgICAgICAgXAorICAgIG1hY3JvKGY2LCAiZjYiLCAwLCAwKSAg
ICAgICAgICAgXAorICAgIG1hY3JvKGY3LCAiZjciLCAwLCAwKSAgICAgICAgICAgXAorICAgIG1h
Y3JvKGY4LCAiZjgiLCAwLCAxKSAgICAgICAgICAgXAorICAgIG1hY3JvKGY5LCAiZjkiLCAwLCAx
KSAgICAgICAgICAgXAorICAgIG1hY3JvKGYxMCwgImYxMCIsIDAsIDApICAgICAgICAgXAorICAg
IG1hY3JvKGYxMSwgImYxMSIsIDAsIDApICAgICAgICAgXAorICAgIG1hY3JvKGYxMiwgImYxMiIs
IDAsIDApICAgICAgICAgXAorICAgIG1hY3JvKGYxMywgImYxMyIsIDAsIDApICAgICAgICAgXAor
ICAgIG1hY3JvKGYxNCwgImYxNCIsIDAsIDApICAgICAgICAgXAorICAgIG1hY3JvKGYxNSwgImYx
NSIsIDAsIDApICAgICAgICAgXAorICAgIG1hY3JvKGYxNiwgImYxNiIsIDAsIDApICAgICAgICAg
XAorICAgIG1hY3JvKGYxNywgImYxNyIsIDAsIDApICAgICAgICAgXAorICAgIG1hY3JvKGYxOCwg
ImYxOCIsIDAsIDEpICAgICAgICAgXAorICAgIG1hY3JvKGYxOSwgImYxOSIsIDAsIDEpICAgICAg
ICAgXAorICAgIG1hY3JvKGYyMCwgImYyMCIsIDAsIDEpICAgICAgICAgXAorICAgIG1hY3JvKGYy
MSwgImYyMSIsIDAsIDEpICAgICAgICAgXAorICAgIG1hY3JvKGYyMiwgImYyMiIsIDAsIDEpICAg
ICAgICAgXAorICAgIG1hY3JvKGYyMywgImYyMyIsIDAsIDEpICAgICAgICAgXAorICAgIG1hY3Jv
KGYyNCwgImYyNCIsIDAsIDEpICAgICAgICAgXAorICAgIG1hY3JvKGYyNSwgImYyNSIsIDAsIDEp
ICAgICAgICAgXAorICAgIG1hY3JvKGYyNiwgImYyNiIsIDAsIDEpICAgICAgICAgXAorICAgIG1h
Y3JvKGYyNywgImYyNyIsIDAsIDEpICAgICAgICAgXAorICAgIG1hY3JvKGYyOCwgImYyOCIsIDAs
IDApICAgICAgICAgXAorICAgIG1hY3JvKGYyOSwgImYyOSIsIDAsIDApICAgICAgICAgXAorICAg
IG1hY3JvKGYzMCwgImYzMCIsIDAsIDApICAgICAgICAgXAorICAgIG1hY3JvKGYzMSwgImYzMSIs
IDAsIDApCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0ZQUkluZm8uaCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvRlBSSW5mby5oCmluZGV4IGY3OTk5MDAxNzY3MDdm
NTk3ZDQ1MmIzZGI0NDcxM2NhZjM1ZjkzYzcuLmY1MDczOTJlZDM1NWEzYTEzYjQ3NzRiZWRhNzc2
YzkxYzNlMzcxZDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvRlBSSW5m
by5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvRlBSSW5mby5oCkBAIC0zMjksNiAr
MzI5LDEwNCBAQCBwdWJsaWM6CiAKICNlbmRpZiAvLyBDUFUoTUlQUykKIAorI2lmIENQVShSSVND
VjY0KQorCitjbGFzcyBGUFJJbmZvIHsKK3B1YmxpYzoKKyAgICB0eXBlZGVmIEZQUlJlZyBSZWdp
c3RlclR5cGU7CisgICAgc3RhdGljIGNvbnN0ZXhwciB1bnNpZ25lZCBudW1iZXJPZlJlZ2lzdGVy
cyA9IDIwOworICAgIHN0YXRpYyBjb25zdGV4cHIgdW5zaWduZWQgbnVtYmVyT2ZBcmd1bWVudFJl
Z2lzdGVycyA9IDg7CisKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ1QwID0gUklT
Q1Y2NFJlZ2lzdGVyczo6ZjA7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdUMSA9
IFJJU0NWNjRSZWdpc3RlcnM6OmYxOworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGZwUmVn
VDIgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMjsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBm
cFJlZ1QzID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjM7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJS
ZWcgZnBSZWdUNCA9IFJJU0NWNjRSZWdpc3RlcnM6OmY0OworICAgIHN0YXRpYyBjb25zdGV4cHIg
RlBSUmVnIGZwUmVnVDUgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmNTsKKyAgICBzdGF0aWMgY29uc3Rl
eHByIEZQUlJlZyBmcFJlZ1Q2ID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjY7CisgICAgc3RhdGljIGNv
bnN0ZXhwciBGUFJSZWcgZnBSZWdUNyA9IFJJU0NWNjRSZWdpc3RlcnM6OmY3OworICAgIHN0YXRp
YyBjb25zdGV4cHIgRlBSUmVnIGZwUmVnVDggPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMTA7CisgICAg
c3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdUOSA9IFJJU0NWNjRSZWdpc3RlcnM6OmYxMTsK
KyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ1QxMCA9IFJJU0NWNjRSZWdpc3RlcnM6
OmYxMjsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ1QxMSA9IFJJU0NWNjRSZWdp
c3RlcnM6OmYxMzsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ1QxMiA9IFJJU0NW
NjRSZWdpc3RlcnM6OmYxNDsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ1QxMyA9
IFJJU0NWNjRSZWdpc3RlcnM6OmYxNTsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJl
Z1QxNCA9IFJJU0NWNjRSZWdpc3RlcnM6OmYxNjsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJl
ZyBmcFJlZ1QxNSA9IFJJU0NWNjRSZWdpc3RlcnM6OmYxNzsKKyAgICBzdGF0aWMgY29uc3RleHBy
IEZQUlJlZyBmcFJlZ1QxNiA9IFJJU0NWNjRSZWdpc3RlcnM6OmYyODsKKyAgICBzdGF0aWMgY29u
c3RleHByIEZQUlJlZyBmcFJlZ1QxNyA9IFJJU0NWNjRSZWdpc3RlcnM6OmYyOTsKKyAgICBzdGF0
aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ1QxOCA9IFJJU0NWNjRSZWdpc3RlcnM6OmYzMDsKKyAg
ICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ1QxOSA9IFJJU0NWNjRSZWdpc3RlcnM6OmYz
MTsKKworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGZwUmVnQ1MwID0gUklTQ1Y2NFJlZ2lz
dGVyczo6Zjg7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdDUzEgPSBSSVNDVjY0
UmVnaXN0ZXJzOjpmOTsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ0NTMiA9IFJJ
U0NWNjRSZWdpc3RlcnM6OmYxODsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ0NT
MyA9IFJJU0NWNjRSZWdpc3RlcnM6OmYxOTsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBm
cFJlZ0NTNCA9IFJJU0NWNjRSZWdpc3RlcnM6OmYyMDsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQ
UlJlZyBmcFJlZ0NTNSA9IFJJU0NWNjRSZWdpc3RlcnM6OmYyMTsKKyAgICBzdGF0aWMgY29uc3Rl
eHByIEZQUlJlZyBmcFJlZ0NTNiA9IFJJU0NWNjRSZWdpc3RlcnM6OmYyMjsKKyAgICBzdGF0aWMg
Y29uc3RleHByIEZQUlJlZyBmcFJlZ0NTNyA9IFJJU0NWNjRSZWdpc3RlcnM6OmYyMzsKKyAgICBz
dGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ0NTOCA9IFJJU0NWNjRSZWdpc3RlcnM6OmYyNDsK
KyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ0NTOSA9IFJJU0NWNjRSZWdpc3RlcnM6
OmYyNTsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ0NTMTAgPSBSSVNDVjY0UmVn
aXN0ZXJzOjpmMjY7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdDUzExID0gUklT
Q1Y2NFJlZ2lzdGVyczo6ZjI3OworCisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgYXJndW1l
bnRGUFIwID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjEwOyAvLyBmcFJlZ1Q4CisgICAgc3RhdGljIGNv
bnN0ZXhwciBGUFJSZWcgYXJndW1lbnRGUFIxID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjExOyAvLyBm
cFJlZ1Q5CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgYXJndW1lbnRGUFIyID0gUklTQ1Y2
NFJlZ2lzdGVyczo6ZjEyOyAvLyBmcFJlZ1QxMAorICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVn
IGFyZ3VtZW50RlBSMyA9IFJJU0NWNjRSZWdpc3RlcnM6OmYxMzsgLy8gZnBSZWdUMTEKKyAgICBz
dGF0aWMgY29uc3RleHByIEZQUlJlZyBhcmd1bWVudEZQUjQgPSBSSVNDVjY0UmVnaXN0ZXJzOjpm
MTQ7IC8vIGZwUmVnVDEyCisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgYXJndW1lbnRGUFI1
ID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjE1OyAvLyBmcFJlZ1QxMworICAgIHN0YXRpYyBjb25zdGV4
cHIgRlBSUmVnIGFyZ3VtZW50RlBSNiA9IFJJU0NWNjRSZWdpc3RlcnM6OmYxNjsgLy8gZnBSZWdU
MTQKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBhcmd1bWVudEZQUjcgPSBSSVNDVjY0UmVn
aXN0ZXJzOjpmMTc7IC8vIGZwUmVnVDE1CisKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBy
ZXR1cm5WYWx1ZUZQUiA9IFJJU0NWNjRSZWdpc3RlcnM6OmYxMDsgLy8gZnBSZWdUOAorCisgICAg
c3RhdGljIEZQUlJlZyB0b1JlZ2lzdGVyKHVuc2lnbmVkIGluZGV4KQorICAgIHsKKyAgICAgICAg
QVNTRVJUKGluZGV4IDwgbnVtYmVyT2ZSZWdpc3RlcnMpOworICAgICAgICBzdGF0aWMgY29uc3Qg
RlBSUmVnIHJlZ2lzdGVyRm9ySW5kZXhbbnVtYmVyT2ZSZWdpc3RlcnNdID0geworICAgICAgICAg
ICAgZnBSZWdUMCwgZnBSZWdUMSwgZnBSZWdUMiwgZnBSZWdUMywgZnBSZWdUNCwgZnBSZWdUNSwg
ZnBSZWdUNiwgZnBSZWdUNywKKyAgICAgICAgICAgIGZwUmVnVDgsIGZwUmVnVDksIGZwUmVnVDEw
LCBmcFJlZ1QxMSwgZnBSZWdUMTIsIGZwUmVnVDEzLCBmcFJlZ1QxNCwgZnBSZWdUMTUsCisgICAg
ICAgICAgICBmcFJlZ1QxNiwgZnBSZWdUMTcsIGZwUmVnVDE4LCBmcFJlZ1QxOSwKKyAgICAgICAg
fTsKKyAgICAgICAgcmV0dXJuIHJlZ2lzdGVyRm9ySW5kZXhbaW5kZXhdOworICAgIH0KKworICAg
IHN0YXRpYyBGUFJSZWcgdG9Bcmd1bWVudFJlZ2lzdGVyKHVuc2lnbmVkIGluZGV4KQorICAgIHsK
KyAgICAgICAgQVNTRVJUKGluZGV4IDwgbnVtYmVyT2ZBcmd1bWVudFJlZ2lzdGVycyk7CisgICAg
ICAgIHN0YXRpYyBjb25zdCBGUFJSZWcgcmVnaXN0ZXJGb3JJbmRleFtudW1iZXJPZkFyZ3VtZW50
UmVnaXN0ZXJzXSA9IHsKKyAgICAgICAgICAgIGFyZ3VtZW50RlBSMCwgYXJndW1lbnRGUFIxLCBh
cmd1bWVudEZQUjIsIGFyZ3VtZW50RlBSMywKKyAgICAgICAgICAgIGFyZ3VtZW50RlBSNCwgYXJn
dW1lbnRGUFI1LCBhcmd1bWVudEZQUjYsIGFyZ3VtZW50RlBSNywKKyAgICAgICAgfTsKKyAgICAg
ICAgcmV0dXJuIHJlZ2lzdGVyRm9ySW5kZXhbaW5kZXhdOworICAgIH0KKworICAgIHN0YXRpYyB1
bnNpZ25lZCB0b0luZGV4KEZQUlJlZyByZWcpCisgICAgeworICAgICAgICBBU1NFUlQocmVnICE9
IEludmFsaWRGUFJSZWcpOworICAgICAgICBBU1NFUlQoc3RhdGljX2Nhc3Q8aW50PihyZWcpIDwg
MzIpOworICAgICAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgaW5kZXhGb3JSZWdpc3RlclszMl0g
PSB7CisgICAgICAgICAgICAwLCAxLCAyLCAzLCA0LCA1LCA2LCA3LAorICAgICAgICAgICAgSW52
YWxpZEluZGV4LCBJbnZhbGlkSW5kZXgsIDgsIDksIDEwLCAxMSwgMTIsIDEzLAorICAgICAgICAg
ICAgMTQsIDE1LCBJbnZhbGlkSW5kZXgsIEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LCBJbnZh
bGlkSW5kZXgsIEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LAorICAgICAgICAgICAgSW52YWxp
ZEluZGV4LCBJbnZhbGlkSW5kZXgsIEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LCAxNiwgMTcs
IDE4LCAxOSwKKyAgICAgICAgfTsKKyAgICAgICAgcmV0dXJuIGluZGV4Rm9yUmVnaXN0ZXJbcmVn
XTsKKyAgICB9CisKKyAgICBzdGF0aWMgY29uc3QgY2hhciogZGVidWdOYW1lKEZQUlJlZyByZWcp
CisgICAgeworICAgICAgICBBU1NFUlQocmVnICE9IEludmFsaWRGUFJSZWcpOworICAgICAgICBy
ZXR1cm4gTWFjcm9Bc3NlbWJsZXI6OmZwck5hbWUocmVnKTsKKyAgICB9CisKKyAgICBzdGF0aWMg
Y29uc3RleHByIHVuc2lnbmVkIEludmFsaWRJbmRleCA9IDB4ZmZmZmZmZmY7Cit9OworCisjZW5k
aWYgLy8gQ1BVKFJJU0NWNjQpCisKIC8vIFdlIHVzZSB0aGlzIGhhY2sgdG8gZ2V0IHRoZSBGUFJJ
bmZvIGZyb20gdGhlIEZQUlJlZyB0eXBlIGluIHRlbXBsYXRlcyBiZWNhdXNlIG91ciBjb2RlIGlz
IGJhZCBhbmQgd2Ugc2hvdWxkIGZlZWwgYmFkLi4KIGNvbnN0ZXhwciBGUFJJbmZvIHRvSW5mb0Zy
b21SZWcoRlBSUmVnKSB7IHJldHVybiBGUFJJbmZvKCk7IH0KIApkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL2ppdC9HUFJJbmZvLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0
L0dQUkluZm8uaAppbmRleCAwNjdhYmZmMWQ2YWQyMDA3NTQ1MTgwMDc3YjBjNGE1NWM3NzcyMjY2
Li41ZmY2MjQ3NDFhYjcwZThjMDQzNWJkZjlkMjViMTkxNDYwMzgxZDllIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0dQUkluZm8uaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvaml0L0dQUkluZm8uaApAQCAtNzk4LDYgKzc5OCwxMTMgQEAgcHVibGljOgogCiAjZW5k
aWYgLy8gQ1BVKE1JUFMpCiAKKyNpZiBDUFUoUklTQ1Y2NCkKKworI2RlZmluZSBOVU1CRVJfT0Zf
QVJHVU1FTlRfUkVHSVNURVJTIDh1CisjZGVmaW5lIE5VTUJFUl9PRl9DQUxMRUVfU0FWRVNfUkVH
SVNURVJTIDIzdQorCitjbGFzcyBHUFJJbmZvIHsKK3B1YmxpYzoKKyAgICB0eXBlZGVmIEdQUlJl
ZyBSZWdpc3RlclR5cGU7CisgICAgc3RhdGljIGNvbnN0ZXhwciB1bnNpZ25lZCBudW1iZXJPZlJl
Z2lzdGVycyA9IDEzOworICAgIHN0YXRpYyBjb25zdGV4cHIgdW5zaWduZWQgbnVtYmVyT2ZBcmd1
bWVudFJlZ2lzdGVycyA9IDg7CisKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBjYWxsRnJh
bWVSZWdpc3RlciA9IFJJU0NWNjRSZWdpc3RlcnM6OmZwOworICAgIHN0YXRpYyBjb25zdGV4cHIg
R1BSUmVnIG51bWJlclRhZ1JlZ2lzdGVyID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDI1OworICAgIHN0
YXRpYyBjb25zdGV4cHIgR1BSUmVnIG5vdENlbGxNYXNrUmVnaXN0ZXIgPSBSSVNDVjY0UmVnaXN0
ZXJzOjp4MjY7CisKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyByZWdUMCA9IFJJU0NWNjRS
ZWdpc3RlcnM6OngxMDsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyByZWdUMSA9IFJJU0NW
NjRSZWdpc3RlcnM6OngxMTsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyByZWdUMiA9IFJJ
U0NWNjRSZWdpc3RlcnM6OngxMjsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyByZWdUMyA9
IFJJU0NWNjRSZWdpc3RlcnM6OngxMzsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyByZWdU
NCA9IFJJU0NWNjRSZWdpc3RlcnM6OngxNDsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBy
ZWdUNSA9IFJJU0NWNjRSZWdpc3RlcnM6OngxNTsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJl
ZyByZWdUNiA9IFJJU0NWNjRSZWdpc3RlcnM6OngxNjsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQ
UlJlZyByZWdUNyA9IFJJU0NWNjRSZWdpc3RlcnM6OngxNzsKKyAgICBzdGF0aWMgY29uc3RleHBy
IEdQUlJlZyByZWdUOCA9IFJJU0NWNjRSZWdpc3RlcnM6Ong1OworICAgIHN0YXRpYyBjb25zdGV4
cHIgR1BSUmVnIHJlZ1Q5ID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDY7CisgICAgc3RhdGljIGNvbnN0
ZXhwciBHUFJSZWcgcmVnVDEwID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDc7CisgICAgc3RhdGljIGNv
bnN0ZXhwciBHUFJSZWcgcmVnVDExID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDI4OworICAgIHN0YXRp
YyBjb25zdGV4cHIgR1BSUmVnIHJlZ1QxMiA9IFJJU0NWNjRSZWdpc3RlcnM6OngyOTsKKworICAg
IHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ0NTMCA9IFJJU0NWNjRSZWdpc3RlcnM6Ong5Owor
ICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ0NTMSA9IFJJU0NWNjRSZWdpc3RlcnM6Ongx
ODsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyByZWdDUzIgPSBSSVNDVjY0UmVnaXN0ZXJz
Ojp4MTk7CisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgcmVnQ1MzID0gUklTQ1Y2NFJlZ2lz
dGVyczo6eDIwOworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ0NTNCA9IFJJU0NWNjRS
ZWdpc3RlcnM6OngyMTsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyByZWdDUzUgPSBSSVND
VjY0UmVnaXN0ZXJzOjp4MjI7CisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgcmVnQ1M2ID0g
UklTQ1Y2NFJlZ2lzdGVyczo6eDIzOworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ0NT
NyA9IFJJU0NWNjRSZWdpc3RlcnM6OngyNDsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBy
ZWdDUzggPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MjU7IC8vIG51bWJlclRhZworICAgIHN0YXRpYyBj
b25zdGV4cHIgR1BSUmVnIHJlZ0NTOSA9IFJJU0NWNjRSZWdpc3RlcnM6OngyNjsgLy8gbm90Q2Vs
bE1hc2sKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyByZWdDUzEwID0gUklTQ1Y2NFJlZ2lz
dGVyczo6eDI3OworCisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgYXJndW1lbnRHUFIwID0g
UklTQ1Y2NFJlZ2lzdGVyczo6eDEwOyAvLyByZWdUMAorICAgIHN0YXRpYyBjb25zdGV4cHIgR1BS
UmVnIGFyZ3VtZW50R1BSMSA9IFJJU0NWNjRSZWdpc3RlcnM6OngxMTsgLy8gcmVnVDEKKyAgICBz
dGF0aWMgY29uc3RleHByIEdQUlJlZyBhcmd1bWVudEdQUjIgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4
MTI7IC8vIHJlZ1QyCisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgYXJndW1lbnRHUFIzID0g
UklTQ1Y2NFJlZ2lzdGVyczo6eDEzOyAvLyByZWdUMworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BS
UmVnIGFyZ3VtZW50R1BSNCA9IFJJU0NWNjRSZWdpc3RlcnM6OngxNDsgLy8gcmVnVDQKKyAgICBz
dGF0aWMgY29uc3RleHByIEdQUlJlZyBhcmd1bWVudEdQUjUgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4
MTU7IC8vIHJlZ1Q1CisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgYXJndW1lbnRHUFI2ID0g
UklTQ1Y2NFJlZ2lzdGVyczo6eDE2OyAvLyByZWdUNgorICAgIHN0YXRpYyBjb25zdGV4cHIgR1BS
UmVnIGFyZ3VtZW50R1BSNyA9IFJJU0NWNjRSZWdpc3RlcnM6OngxNzsgLy8gcmVnVDcKKworICAg
IHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIG5vbkFyZ0dQUjAgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4
NTsgLy8gcmVnVDgKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBub25BcmdHUFIxID0gUklT
Q1Y2NFJlZ2lzdGVyczo6eDY7IC8vIHJlZ1Q5CisKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJl
ZyByZXR1cm5WYWx1ZUdQUiA9IFJJU0NWNjRSZWdpc3RlcnM6OngxMDsgLy8gcmVnVDAKKyAgICBz
dGF0aWMgY29uc3RleHByIEdQUlJlZyByZXR1cm5WYWx1ZUdQUjIgPSBSSVNDVjY0UmVnaXN0ZXJz
Ojp4MTE7IC8vIHJlZ1QxCisKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBub25QcmVzZXJ2
ZWROb25SZXR1cm5HUFIgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MTI7IC8vIHJlZ1QyCisgICAgc3Rh
dGljIGNvbnN0ZXhwciBHUFJSZWcgbm9uUHJlc2VydmVkTm9uQXJndW1lbnRHUFIwID0gUklTQ1Y2
NFJlZ2lzdGVyczo6eDU7IC8vIHJlZ1Q4CisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgbm9u
UHJlc2VydmVkTm9uQXJndW1lbnRHUFIxID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDY7IC8vIHJlZ1Q5
CisKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyB3YXNtU2NyYXRjaEdQUjAgPSBSSVNDVjY0
UmVnaXN0ZXJzOjp4NjsgLy8gcmVnVDkKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyB3YXNt
U2NyYXRjaEdQUjEgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4NzsgLy8gcmVnVDEwCisKKyAgICBzdGF0
aWMgR1BSUmVnIHRvUmVnaXN0ZXIodW5zaWduZWQgaW5kZXgpCisgICAgeworICAgICAgICBBU1NF
UlQoaW5kZXggPCBudW1iZXJPZlJlZ2lzdGVycyk7CisgICAgICAgIHN0YXRpYyBjb25zdCBHUFJS
ZWcgcmVnaXN0ZXJGb3JJbmRleFtudW1iZXJPZlJlZ2lzdGVyc10gPSB7CisgICAgICAgICAgICBy
ZWdUMCwgcmVnVDEsIHJlZ1QyLCByZWdUMywgcmVnVDQsIHJlZ1Q1LCByZWdUNiwgcmVnVDcsCisg
ICAgICAgICAgICByZWdUOCwgcmVnVDksIHJlZ1QxMCwgcmVnVDExLCByZWdUMTIsCisgICAgICAg
IH07CisgICAgICAgIHJldHVybiByZWdpc3RlckZvckluZGV4W2luZGV4XTsKKyAgICB9CisKKyAg
ICBzdGF0aWMgR1BSUmVnIHRvQXJndW1lbnRSZWdpc3Rlcih1bnNpZ25lZCBpbmRleCkKKyAgICB7
CisgICAgICAgIEFTU0VSVChpbmRleCA8IG51bWJlck9mQXJndW1lbnRSZWdpc3RlcnMpOworICAg
ICAgICBzdGF0aWMgY29uc3QgR1BSUmVnIHJlZ2lzdGVyRm9ySW5kZXhbbnVtYmVyT2ZBcmd1bWVu
dFJlZ2lzdGVyc10gPSB7CisgICAgICAgICAgICBhcmd1bWVudEdQUjAsIGFyZ3VtZW50R1BSMSwg
YXJndW1lbnRHUFIyLCBhcmd1bWVudEdQUjMsCisgICAgICAgICAgICBhcmd1bWVudEdQUjQsIGFy
Z3VtZW50R1BSNSwgYXJndW1lbnRHUFI2LCBhcmd1bWVudEdQUjcsCisgICAgICAgIH07CisgICAg
ICAgIHJldHVybiByZWdpc3RlckZvckluZGV4W2luZGV4XTsKKyAgICB9CisKKyAgICBzdGF0aWMg
dW5zaWduZWQgdG9JbmRleChHUFJSZWcgcmVnKQorICAgIHsKKyAgICAgICAgQVNTRVJUKHJlZyAh
PSBJbnZhbGlkR1BSUmVnKTsKKyAgICAgICAgQVNTRVJUKHN0YXRpY19jYXN0PGludD4ocmVnKSA8
IDMyKTsKKyAgICAgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGluZGV4Rm9yUmVnaXN0ZXJbMzJd
ID0geworICAgICAgICAgICAgSW52YWxpZEluZGV4LCBJbnZhbGlkSW5kZXgsIEludmFsaWRJbmRl
eCwgSW52YWxpZEluZGV4LCBJbnZhbGlkSW5kZXgsIDgsIDksIDEwLAorICAgICAgICAgICAgSW52
YWxpZEluZGV4LCBJbnZhbGlkSW5kZXgsIDAsIDEsIDIsIDMsIDQsIDUsCisgICAgICAgICAgICA2
LCA3LCBJbnZhbGlkSW5kZXgsIEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LCBJbnZhbGlkSW5k
ZXgsIEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LAorICAgICAgICAgICAgSW52YWxpZEluZGV4
LCBJbnZhbGlkSW5kZXgsIEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LCAxMSwgMTIsIEludmFs
aWRJbmRleCwgSW52YWxpZEluZGV4LAorICAgICAgICB9OworICAgICAgICByZXR1cm4gaW5kZXhG
b3JSZWdpc3RlcltyZWddOworICAgIH0KKworICAgIHN0YXRpYyBjb25zdCBjaGFyKiBkZWJ1Z05h
bWUoR1BSUmVnIHJlZykKKyAgICB7CisgICAgICAgIEFTU0VSVChyZWcgIT0gSW52YWxpZEdQUlJl
Zyk7CisgICAgICAgIHJldHVybiBNYWNyb0Fzc2VtYmxlcjo6Z3ByTmFtZShyZWcpOworICAgIH0K
KworICAgIHN0YXRpYyBjb25zdGV4cHIgdW5zaWduZWQgSW52YWxpZEluZGV4ID0gMHhmZmZmZmZm
ZjsKK307CisKKyNlbmRpZiAvLyBDUFUoUklTQ1Y2NCkKKwogLy8gVGhlIGJhc2VsaW5lIEpJVCB1
c2VzICJhY2N1bXVsYXRvciIgc3R5bGUgZXhlY3V0aW9uIHdpdGggcmVnVDAgKGZvciA2NC1iaXQp
CiAvLyBhbmQgcmVnVDAgKyByZWdUMSAoZm9yIDMyLWJpdCkgc2VydmluZyBhcyB0aGUgYWNjdW11
bGF0b3IgcmVnaXN0ZXIocykgZm9yCiAvLyBwYXNzaW5nIHJlc3VsdHMgb2Ygb25lIG9wY29kZSB0
byB0aGUgbmV4dC4gSGVuY2U6CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0
L1JlZ2lzdGVyU2V0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvUmVnaXN0ZXJTZXQu
Y3BwCmluZGV4IGE3NjI3MjI3YmZiMzE5ZWNjOTZjNDc2MmM0YzAzZjRlOTE3ZDY1MTAuLmM1Mjlk
NzRhZmVjOGVhODY2YzA4NjQ2NDk1NGJmNzlhMTA4YjNkOTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9qaXQvUmVnaXN0ZXJTZXQuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9qaXQvUmVnaXN0ZXJTZXQuY3BwCkBAIC0xNTUsNiArMTU1LDMwIEBAIFJlZ2lzdGVyU2V0
IFJlZ2lzdGVyU2V0Ojp2bUNhbGxlZVNhdmVSZWdpc3RlcnMoKQogI2VsaWYgQ1BVKEFSTV9USFVN
QjIpIHx8IENQVShNSVBTKQogICAgIHJlc3VsdC5zZXQoR1BSSW5mbzo6cmVnQ1MwKTsKICAgICBy
ZXN1bHQuc2V0KEdQUkluZm86OnJlZ0NTMSk7CisjZWxpZiBDUFUoUklTQ1Y2NCkKKyAgICByZXN1
bHQuc2V0KEdQUkluZm86OnJlZ0NTMCk7CisgICAgcmVzdWx0LnNldChHUFJJbmZvOjpyZWdDUzEp
OworICAgIHJlc3VsdC5zZXQoR1BSSW5mbzo6cmVnQ1MyKTsKKyAgICByZXN1bHQuc2V0KEdQUklu
Zm86OnJlZ0NTMyk7CisgICAgcmVzdWx0LnNldChHUFJJbmZvOjpyZWdDUzQpOworICAgIHJlc3Vs
dC5zZXQoR1BSSW5mbzo6cmVnQ1M1KTsKKyAgICByZXN1bHQuc2V0KEdQUkluZm86OnJlZ0NTNik7
CisgICAgcmVzdWx0LnNldChHUFJJbmZvOjpyZWdDUzcpOworICAgIHJlc3VsdC5zZXQoR1BSSW5m
bzo6cmVnQ1M4KTsKKyAgICByZXN1bHQuc2V0KEdQUkluZm86OnJlZ0NTOSk7CisgICAgcmVzdWx0
LnNldChHUFJJbmZvOjpyZWdDUzEwKTsKKyAgICByZXN1bHQuc2V0KEZQUkluZm86OmZwUmVnQ1Mw
KTsKKyAgICByZXN1bHQuc2V0KEZQUkluZm86OmZwUmVnQ1MxKTsKKyAgICByZXN1bHQuc2V0KEZQ
UkluZm86OmZwUmVnQ1MyKTsKKyAgICByZXN1bHQuc2V0KEZQUkluZm86OmZwUmVnQ1MzKTsKKyAg
ICByZXN1bHQuc2V0KEZQUkluZm86OmZwUmVnQ1M0KTsKKyAgICByZXN1bHQuc2V0KEZQUkluZm86
OmZwUmVnQ1M1KTsKKyAgICByZXN1bHQuc2V0KEZQUkluZm86OmZwUmVnQ1M2KTsKKyAgICByZXN1
bHQuc2V0KEZQUkluZm86OmZwUmVnQ1M3KTsKKyAgICByZXN1bHQuc2V0KEZQUkluZm86OmZwUmVn
Q1M4KTsKKyAgICByZXN1bHQuc2V0KEZQUkluZm86OmZwUmVnQ1M5KTsKKyAgICByZXN1bHQuc2V0
KEZQUkluZm86OmZwUmVnQ1MxMCk7CisgICAgcmVzdWx0LnNldChGUFJJbmZvOjpmcFJlZ0NTMTEp
OwogI2VuZGlmCiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KQEAgLTE5Miw3ICsyMTYsNyBAQCBSZWdp
c3RlclNldCBSZWdpc3RlclNldDo6bGxpbnRCYXNlbGluZUNhbGxlZVNhdmVSZWdpc3RlcnMoKQog
I2VsaWYgQ1BVKEFSTV9USFVNQjIpCiAgICAgcmVzdWx0LnNldChHUFJJbmZvOjpyZWdDUzApOwog
ICAgIHJlc3VsdC5zZXQoR1BSSW5mbzo6cmVnQ1MxKTsKLSNlbGlmIENQVShBUk02NCkKKyNlbGlm
IENQVShBUk02NCkgfHwgQ1BVKFJJU0NWNjQpCiAgICAgcmVzdWx0LnNldChHUFJJbmZvOjpyZWdD
UzYpOwogICAgIHJlc3VsdC5zZXQoR1BSSW5mbzo6cmVnQ1M3KTsKICAgICBzdGF0aWNfYXNzZXJ0
KEdQUkluZm86OnJlZ0NTOCA9PSBHUFJJbmZvOjpudW1iZXJUYWdSZWdpc3RlciwgIiIpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xMSW50RGF0YS5oIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2xsaW50L0xMSW50RGF0YS5oCmluZGV4IDNmOGU4OGRiNmJiYWRiZDQ1
MTUxOGMxMjhjYTZkNmQ1ZWQxZWJjNTIuLjQ3MWZiNWQyZmQzYjgwOTM5NmE1MjNjZTMzZmNiMmE4
NTk4MzZhY2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9sbGludC9MTEludERh
dGEuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTExJbnREYXRhLmgKQEAgLTM4
MSw3ICszODEsNyBAQCBzdHJ1Y3QgUmVnaXN0ZXJzIHsKICNlbGlmIENQVShYODZfNjQpICYmIE9T
KFdJTkRPV1MpCiAgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgbWV0YWRhdGFUYWJsZUdQUiA9
IEdQUkluZm86OnJlZ0NTMzsKICAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBwYkdQUiA9IEdQ
UkluZm86OnJlZ0NTNDsKLSNlbGlmIENQVShBUk02NCkKKyNlbGlmIENQVShBUk02NCkgfHwgQ1BV
KFJJU0NWNjQpCiAgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgbWV0YWRhdGFUYWJsZUdQUiA9
IEdQUkluZm86OnJlZ0NTNjsKICAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBwYkdQUiA9IEdQ
UkluZm86OnJlZ0NTNzsKICNlbGlmIENQVShNSVBTKSB8fCBDUFUoQVJNX1RIVU1CMikKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9sbGludC9MTEludE9mZmxpbmVBc21Db25maWcu
aCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9sbGludC9MTEludE9mZmxpbmVBc21Db25maWcuaApp
bmRleCAzM2JlNDA1ODdhMjViYTQ1MjYzNThhMzg3NzRiMDliMGRkYzc3YjVjLi44YjllNTdkMzNm
NzMyNDliOWIxMWNiNzYzMzdlNWNjMDQxYjQyMjUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvbGxpbnQvTExJbnRPZmZsaW5lQXNtQ29uZmlnLmgKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2xsaW50L0xMSW50T2ZmbGluZUFzbUNvbmZpZy5oCkBAIC00Nyw2ICs0Nyw3IEBA
CiAjZGVmaW5lIE9GRkxJTkVfQVNNX0FSTXY3ayAwCiAjZGVmaW5lIE9GRkxJTkVfQVNNX0FSTXY3
cyAwCiAjZGVmaW5lIE9GRkxJTkVfQVNNX01JUFMgMAorI2RlZmluZSBPRkZMSU5FX0FTTV9SSVND
VjY0IDAKIAogI2Vsc2UgLy8gRU5BQkxFKENfTE9PUCkKIApAQCAtMTE1LDYgKzExNiwxMiBAQAog
I2RlZmluZSBPRkZMSU5FX0FTTV9BUk02NEUgMAogI2VuZGlmCiAKKyNpZiBDUFUoUklTQ1Y2NCkK
KyNkZWZpbmUgT0ZGTElORV9BU01fUklTQ1Y2NCAxCisjZWxzZQorI2RlZmluZSBPRkZMSU5FX0FT
TV9SSVNDVjY0IDAKKyNlbmRpZgorCiAjaWYgQ1BVKE1JUFMpCiAjaWZkZWYgV1RGX01JUFNfUElD
CiAjZGVmaW5lIFMoeCkgI3gKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9sbGlu
dC9Mb3dMZXZlbEludGVycHJldGVyLmFzbSBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9sbGludC9M
b3dMZXZlbEludGVycHJldGVyLmFzbQppbmRleCA4MzQyYjNhMmJkZmRhYjUwYjQ2ZDY3OTY1OGIy
MmMyYWVkN2E5MmQ4Li5iYWYwYzg5YjUyNTkyNGMzMjE3MzAzYTA3YjBiYzM1ODVhOTU5ZGNlIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTG93TGV2ZWxJbnRlcnByZXRl
ci5hc20KKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xvd0xldmVsSW50ZXJwcmV0
ZXIuYXNtCkBAIC0yMTksNyArMjE5LDcgQEAgZW5kCiAKIGNvbnN0IG1heEZyYW1lRXh0ZW50Rm9y
U2xvd1BhdGhDYWxsID0gY29uc3RleHByIG1heEZyYW1lRXh0ZW50Rm9yU2xvd1BhdGhDYWxsCiAK
LWlmIFg4Nl82NCBvciBYODZfNjRfV0lOIG9yIEFSTTY0IG9yIEFSTTY0RQoraWYgWDg2XzY0IG9y
IFg4Nl82NF9XSU4gb3IgQVJNNjQgb3IgQVJNNjRFIG9yIFJJU0NWNjQKICAgICBjb25zdCBDYWxs
ZWVTYXZlU3BhY2VBc1ZpcnR1YWxSZWdpc3RlcnMgPSA0CiBlbHNpZiBDX0xPT1Agb3IgQ19MT09Q
X1dJTgogICAgIGNvbnN0IENhbGxlZVNhdmVTcGFjZUFzVmlydHVhbFJlZ2lzdGVycyA9IDEKQEAg
LTI3Niw3ICsyNzYsNyBAQCBjb25zdCBWTVRyYXBzQXN5bmNFdmVudHMgPSBjb25zdGV4cHIgVk1U
cmFwczo6QXN5bmNFdmVudHMKICMgICBUaGlzIHJlcXVpcmVzIGFuIGFkZCBiZWZvcmUgdGhlIGNh
bGwsIGFuZCBhIHN1YiBhZnRlci4KIGlmIEpTVkFMVUU2NAogICAgIGNvbnN0IFBDID0gdDQgIyBX
aGVuIGNoYW5naW5nIHRoaXMsIG1ha2Ugc3VyZSBMTEludFBDIGlzIHVwIHRvIGRhdGUgaW4gTExJ
bnRQQ1Jhbmdlcy5oCi0gICAgaWYgQVJNNjQgb3IgQVJNNjRFCisgICAgaWYgQVJNNjQgb3IgQVJN
NjRFIG9yIFJJU0NWNjQKICAgICAgICAgY29uc3QgbWV0YWRhdGFUYWJsZSA9IGNzcjYKICAgICAg
ICAgY29uc3QgUEIgPSBjc3I3CiAgICAgICAgIGNvbnN0IG51bWJlclRhZyA9IGNzcjgKQEAgLTcz
MCw3ICs3MzAsNyBAQCBtYWNybyBjaGVja1N0YWNrUG9pbnRlckFsaWdubWVudCh0ZW1wUmVnLCBs
b2NhdGlvbikKICAgICBlbmQKIGVuZAogCi1pZiBDX0xPT1Agb3IgQ19MT09QX1dJTiBvciBBUk02
NCBvciBBUk02NEUgb3IgWDg2XzY0IG9yIFg4Nl82NF9XSU4KK2lmIENfTE9PUCBvciBDX0xPT1Bf
V0lOIG9yIEFSTTY0IG9yIEFSTTY0RSBvciBYODZfNjQgb3IgWDg2XzY0X1dJTiBvciBSSVNDVjY0
CiAgICAgY29uc3QgQ2FsbGVlU2F2ZVJlZ2lzdGVyQ291bnQgPSAwCiBlbHNpZiBBUk12NwogICAg
IGNvbnN0IENhbGxlZVNhdmVSZWdpc3RlckNvdW50ID0gNwpAQCAtNzQ3LDcgKzc0Nyw3IEBAIGNv
bnN0IENhbGxlZVJlZ2lzdGVyU2F2ZVNpemUgPSBDYWxsZWVTYXZlUmVnaXN0ZXJDb3VudCAqIE1h
Y2hpbmVSZWdpc3RlclNpemUKIGNvbnN0IFZNRW50cnlUb3RhbEZyYW1lU2l6ZSA9IChDYWxsZWVS
ZWdpc3RlclNhdmVTaXplICsgc2l6ZW9mIFZNRW50cnlSZWNvcmQgKyBTdGFja0FsaWdubWVudCAt
IDEpICYgflN0YWNrQWxpZ25tZW50TWFzawogCiBtYWNybyBwdXNoQ2FsbGVlU2F2ZXMoKQotICAg
IGlmIENfTE9PUCBvciBDX0xPT1BfV0lOIG9yIEFSTTY0IG9yIEFSTTY0RSBvciBYODZfNjQgb3Ig
WDg2XzY0X1dJTgorICAgIGlmIENfTE9PUCBvciBDX0xPT1BfV0lOIG9yIEFSTTY0IG9yIEFSTTY0
RSBvciBYODZfNjQgb3IgWDg2XzY0X1dJTiBvciBSSVNDVjY0CiAgICAgZWxzaWYgQVJNdjcKICAg
ICAgICAgZW1pdCAicHVzaCB7cjQtcjYsIHI4LXIxMX0iCiAgICAgZWxzaWYgTUlQUwpAQCAtNzY5
LDcgKzc2OSw3IEBAIG1hY3JvIHB1c2hDYWxsZWVTYXZlcygpCiBlbmQKIAogbWFjcm8gcG9wQ2Fs
bGVlU2F2ZXMoKQotICAgIGlmIENfTE9PUCBvciBDX0xPT1BfV0lOIG9yIEFSTTY0IG9yIEFSTTY0
RSBvciBYODZfNjQgb3IgWDg2XzY0X1dJTgorICAgIGlmIENfTE9PUCBvciBDX0xPT1BfV0lOIG9y
IEFSTTY0IG9yIEFSTTY0RSBvciBYODZfNjQgb3IgWDg2XzY0X1dJTiBvciBSSVNDVjY0CiAgICAg
ZWxzaWYgQVJNdjcKICAgICAgICAgZW1pdCAicG9wIHtyNC1yNiwgcjgtcjExfSIKICAgICBlbHNp
ZiBNSVBTCkBAIC03OTQsNyArNzk0LDcgQEAgbWFjcm8gcHJlc2VydmVDYWxsZXJQQ0FuZENGUigp
CiAgICAgICAgIHB1c2ggY2ZyCiAgICAgZWxzaWYgWDg2IG9yIFg4Nl9XSU4gb3IgWDg2XzY0IG9y
IFg4Nl82NF9XSU4KICAgICAgICAgcHVzaCBjZnIKLSAgICBlbHNpZiBBUk02NCBvciBBUk02NEUK
KyAgICBlbHNpZiBBUk02NCBvciBBUk02NEUgb3IgUklTQ1Y2NAogICAgICAgICBwdXNoIGNmciwg
bHIKICAgICBlbHNlCiAgICAgICAgIGVycm9yCkBAIC04MDksNyArODA5LDcgQEAgbWFjcm8gcmVz
dG9yZUNhbGxlclBDQW5kQ0ZSKCkKICAgICAgICAgcG9wIGxyCiAgICAgZWxzaWYgWDg2IG9yIFg4
Nl9XSU4gb3IgWDg2XzY0IG9yIFg4Nl82NF9XSU4KICAgICAgICAgcG9wIGNmcgotICAgIGVsc2lm
IEFSTTY0IG9yIEFSTTY0RQorICAgIGVsc2lmIEFSTTY0IG9yIEFSTTY0RSBvciBSSVNDVjY0CiAg
ICAgICAgIHBvcCBsciwgY2ZyCiAgICAgZW5kCiBlbmQKQEAgLTg0Nyw2ICs4NDcsMTEgQEAgbWFj
cm8gcHJlc2VydmVDYWxsZWVTYXZlc1VzZWRCeUxMSW50KCkKICAgICAgICAgc3RvcmVwIGNzcjUs
IC0xNltjZnJdCiAgICAgICAgIHN0b3JlcCBjc3I0LCAtMjRbY2ZyXQogICAgICAgICBzdG9yZXAg
Y3NyMywgLTMyW2Nmcl0KKyAgICBlbHNpZiBSSVNDVjY0CisgICAgICAgIHN0b3JlcCBjc3I5LCAt
OFtjZnJdCisgICAgICAgIHN0b3JlcCBjc3I4LCAtMTZbY2ZyXQorICAgICAgICBzdG9yZXAgY3Ny
NywgLTI0W2Nmcl0KKyAgICAgICAgc3RvcmVwIGNzcjYsIC0zMltjZnJdCiAgICAgZW5kCiBlbmQK
IApAQCAtODc2LDExICs4ODEsMTYgQEAgbWFjcm8gcmVzdG9yZUNhbGxlZVNhdmVzVXNlZEJ5TExJ
bnQoKQogICAgICAgICBsb2FkcCAtMjRbY2ZyXSwgY3NyNAogICAgICAgICBsb2FkcCAtMTZbY2Zy
XSwgY3NyNQogICAgICAgICBsb2FkcCAtOFtjZnJdLCBjc3I2CisgICAgZWxzaWYgUklTQ1Y2NAor
ICAgICAgICBsb2FkcCAtMzJbY2ZyXSwgY3NyNgorICAgICAgICBsb2FkcCAtMjRbY2ZyXSwgY3Ny
NworICAgICAgICBsb2FkcCAtMTZbY2ZyXSwgY3NyOAorICAgICAgICBsb2FkcCAtOFtjZnJdLCBj
c3I5CiAgICAgZW5kCiBlbmQKIAogbWFjcm8gY29weUNhbGxlZVNhdmVzVG9FbnRyeUZyYW1lQ2Fs
bGVlU2F2ZXNCdWZmZXIoZW50cnlGcmFtZSkKLSAgICBpZiBBUk02NCBvciBBUk02NEUgb3IgWDg2
XzY0IG9yIFg4Nl82NF9XSU4gb3IgQVJNdjcgb3IgTUlQUworICAgIGlmIEFSTTY0IG9yIEFSTTY0
RSBvciBYODZfNjQgb3IgWDg2XzY0X1dJTiBvciBBUk12NyBvciBNSVBTIG9yIFJJU0NWNjQKICAg
ICAgICAgdm1FbnRyeVJlY29yZChlbnRyeUZyYW1lLCBlbnRyeUZyYW1lKQogICAgICAgICBsZWFw
IFZNRW50cnlSZWNvcmQ6OmNhbGxlZVNhdmVSZWdpc3RlcnNCdWZmZXJbZW50cnlGcmFtZV0sIGVu
dHJ5RnJhbWUKICAgICAgICAgaWYgQVJNNjQgb3IgQVJNNjRFCkBAIC05MTksMTkgKzkyOSw0MyBA
QCBtYWNybyBjb3B5Q2FsbGVlU2F2ZXNUb0VudHJ5RnJhbWVDYWxsZWVTYXZlc0J1ZmZlcihlbnRy
eUZyYW1lKQogICAgICAgICBlbHNpZiBBUk12NyBvciBNSVBTCiAgICAgICAgICAgICBzdG9yZXAg
Y3NyMCwgW2VudHJ5RnJhbWVdCiAgICAgICAgICAgICBzdG9yZXAgY3NyMSwgNFtlbnRyeUZyYW1l
XQorICAgICAgICBlbHNpZiBSSVNDVjY0CisgICAgICAgICAgICBzdG9yZXAgY3NyMCwgW2VudHJ5
RnJhbWVdCisgICAgICAgICAgICBzdG9yZXAgY3NyMSwgOFtlbnRyeUZyYW1lXQorICAgICAgICAg
ICAgc3RvcmVwIGNzcjIsIDE2W2VudHJ5RnJhbWVdCisgICAgICAgICAgICBzdG9yZXAgY3NyMywg
MjRbZW50cnlGcmFtZV0KKyAgICAgICAgICAgIHN0b3JlcCBjc3I0LCAzMltlbnRyeUZyYW1lXQor
ICAgICAgICAgICAgc3RvcmVwIGNzcjUsIDQwW2VudHJ5RnJhbWVdCisgICAgICAgICAgICBzdG9y
ZXAgY3NyNiwgNDhbZW50cnlGcmFtZV0KKyAgICAgICAgICAgIHN0b3JlcCBjc3I3LCA1NltlbnRy
eUZyYW1lXQorICAgICAgICAgICAgc3RvcmVwIGNzcjgsIDY0W2VudHJ5RnJhbWVdCisgICAgICAg
ICAgICBzdG9yZXAgY3NyOSwgNzJbZW50cnlGcmFtZV0KKyAgICAgICAgICAgIHN0b3JlcCBjc3Ix
MCwgODBbZW50cnlGcmFtZV0KKyAgICAgICAgICAgIHN0b3JlZCBjc2ZyMCwgODhbZW50cnlGcmFt
ZV0KKyAgICAgICAgICAgIHN0b3JlZCBjc2ZyMSwgOTZbZW50cnlGcmFtZV0KKyAgICAgICAgICAg
IHN0b3JlZCBjc2ZyMiwgMTA0W2VudHJ5RnJhbWVdCisgICAgICAgICAgICBzdG9yZWQgY3NmcjMs
IDExMltlbnRyeUZyYW1lXQorICAgICAgICAgICAgc3RvcmVkIGNzZnI0LCAxMjBbZW50cnlGcmFt
ZV0KKyAgICAgICAgICAgIHN0b3JlZCBjc2ZyNSwgMTI4W2VudHJ5RnJhbWVdCisgICAgICAgICAg
ICBzdG9yZWQgY3NmcjYsIDEzNltlbnRyeUZyYW1lXQorICAgICAgICAgICAgc3RvcmVkIGNzZnI3
LCAxNDRbZW50cnlGcmFtZV0KKyAgICAgICAgICAgIHN0b3JlZCBjc2ZyOCwgMTUyW2VudHJ5RnJh
bWVdCisgICAgICAgICAgICBzdG9yZWQgY3NmcjksIDE2MFtlbnRyeUZyYW1lXQorICAgICAgICAg
ICAgc3RvcmVkIGNzZnIxMCwgMTY4W2VudHJ5RnJhbWVdCisgICAgICAgICAgICBzdG9yZWQgY3Nm
cjExLCAxNzZbZW50cnlGcmFtZV0KICAgICAgICAgZW5kCiAgICAgZW5kCiBlbmQKIAogbWFjcm8g
Y29weUNhbGxlZVNhdmVzVG9WTUVudHJ5RnJhbWVDYWxsZWVTYXZlc0J1ZmZlcih2bSwgdGVtcCkK
LSAgICBpZiBBUk02NCBvciBBUk02NEUgb3IgWDg2XzY0IG9yIFg4Nl82NF9XSU4gb3IgQVJNdjcg
b3IgTUlQUworICAgIGlmIEFSTTY0IG9yIEFSTTY0RSBvciBYODZfNjQgb3IgWDg2XzY0X1dJTiBv
ciBBUk12NyBvciBNSVBTIG9yIFJJU0NWNjQKICAgICAgICAgbG9hZHAgVk06OnRvcEVudHJ5RnJh
bWVbdm1dLCB0ZW1wCiAgICAgICAgIGNvcHlDYWxsZWVTYXZlc1RvRW50cnlGcmFtZUNhbGxlZVNh
dmVzQnVmZmVyKHRlbXApCiAgICAgZW5kCiBlbmQKIAogbWFjcm8gcmVzdG9yZUNhbGxlZVNhdmVz
RnJvbVZNRW50cnlGcmFtZUNhbGxlZVNhdmVzQnVmZmVyKHZtLCB0ZW1wKQotICAgIGlmIEFSTTY0
IG9yIEFSTTY0RSBvciBYODZfNjQgb3IgWDg2XzY0X1dJTiBvciBBUk12NyBvciBNSVBTCisgICAg
aWYgQVJNNjQgb3IgQVJNNjRFIG9yIFg4Nl82NCBvciBYODZfNjRfV0lOIG9yIEFSTXY3IG9yIE1J
UFMgb3IgUklTQ1Y2NAogICAgICAgICBsb2FkcCBWTTo6dG9wRW50cnlGcmFtZVt2bV0sIHRlbXAK
ICAgICAgICAgdm1FbnRyeVJlY29yZCh0ZW1wLCB0ZW1wKQogICAgICAgICBsZWFwIFZNRW50cnlS
ZWNvcmQ6OmNhbGxlZVNhdmVSZWdpc3RlcnNCdWZmZXJbdGVtcF0sIHRlbXAKQEAgLTk3MSwxMiAr
MTAwNSwzNiBAQCBtYWNybyByZXN0b3JlQ2FsbGVlU2F2ZXNGcm9tVk1FbnRyeUZyYW1lQ2FsbGVl
U2F2ZXNCdWZmZXIodm0sIHRlbXApCiAgICAgICAgIGVsc2lmIEFSTXY3IG9yIE1JUFMKICAgICAg
ICAgICAgIGxvYWRwIFt0ZW1wXSwgY3NyMAogICAgICAgICAgICAgbG9hZHAgNFt0ZW1wXSwgY3Ny
MQorICAgICAgICBlbHNpZiBSSVNDVjY0CisgICAgICAgICAgICBsb2FkcSBbdGVtcF0sIGNzcjAK
KyAgICAgICAgICAgIGxvYWRxIDhbdGVtcF0sIGNzcjEKKyAgICAgICAgICAgIGxvYWRxIDE2W3Rl
bXBdLCBjc3IyCisgICAgICAgICAgICBsb2FkcSAyNFt0ZW1wXSwgY3NyMworICAgICAgICAgICAg
bG9hZHEgMzJbdGVtcF0sIGNzcjQKKyAgICAgICAgICAgIGxvYWRxIDQwW3RlbXBdLCBjc3I1Cisg
ICAgICAgICAgICBsb2FkcSA0OFt0ZW1wXSwgY3NyNgorICAgICAgICAgICAgbG9hZHEgNTZbdGVt
cF0sIGNzcjcKKyAgICAgICAgICAgIGxvYWRxIDY0W3RlbXBdLCBjc3I4CisgICAgICAgICAgICBs
b2FkcSA3Mlt0ZW1wXSwgY3NyOQorICAgICAgICAgICAgbG9hZHEgODBbdGVtcF0sIGNzcjEwCisg
ICAgICAgICAgICBsb2FkZCA4OFt0ZW1wXSwgY3NmcjAKKyAgICAgICAgICAgIGxvYWRkIDk2W3Rl
bXBdLCBjc2ZyMQorICAgICAgICAgICAgbG9hZGQgMTA0W3RlbXBdLCBjc2ZyMgorICAgICAgICAg
ICAgbG9hZGQgMTEyW3RlbXBdLCBjc2ZyMworICAgICAgICAgICAgbG9hZGQgMTIwW3RlbXBdLCBj
c2ZyNAorICAgICAgICAgICAgbG9hZGQgMTI4W3RlbXBdLCBjc2ZyNQorICAgICAgICAgICAgbG9h
ZGQgMTM2W3RlbXBdLCBjc2ZyNgorICAgICAgICAgICAgbG9hZGQgMTQ0W3RlbXBdLCBjc2ZyNwor
ICAgICAgICAgICAgbG9hZGQgMTUyW3RlbXBdLCBjc2ZyOAorICAgICAgICAgICAgbG9hZGQgMTYw
W3RlbXBdLCBjc2ZyOQorICAgICAgICAgICAgbG9hZGQgMTY4W3RlbXBdLCBjc2ZyMTAKKyAgICAg
ICAgICAgIGxvYWRkIDE3Nlt0ZW1wXSwgY3NmcjExCiAgICAgICAgIGVuZAogICAgIGVuZAogZW5k
CiAKIG1hY3JvIHByZXNlcnZlUmV0dXJuQWRkcmVzc0FmdGVyQ2FsbChkZXN0aW5hdGlvblJlZ2lz
dGVyKQotICAgIGlmIENfTE9PUCBvciBDX0xPT1BfV0lOIG9yIEFSTXY3IG9yIEFSTTY0IG9yIEFS
TTY0RSBvciBNSVBTCisgICAgaWYgQ19MT09QIG9yIENfTE9PUF9XSU4gb3IgQVJNdjcgb3IgQVJN
NjQgb3IgQVJNNjRFIG9yIE1JUFMgb3IgUklTQ1Y2NAogICAgICAgICAjIEluIENfTE9PUCBvciBD
X0xPT1BfV0lOIGNhc2UsIHdlJ3JlIG9ubHkgcHJlc2VydmluZyB0aGUgYnl0ZWNvZGUgdlBDLgog
ICAgICAgICBtb3ZlIGxyLCBkZXN0aW5hdGlvblJlZ2lzdGVyCiAgICAgZWxzaWYgWDg2IG9yIFg4
Nl9XSU4gb3IgWDg2XzY0IG9yIFg4Nl82NF9XSU4KQEAgLTk5MCw3ICsxMDQ4LDcgQEAgbWFjcm8g
ZnVuY3Rpb25Qcm9sb2d1ZSgpCiAgICAgdGFnUmV0dXJuQWRkcmVzcyBzcAogICAgIGlmIFg4NiBv
ciBYODZfV0lOIG9yIFg4Nl82NCBvciBYODZfNjRfV0lOCiAgICAgICAgIHB1c2ggY2ZyCi0gICAg
ZWxzaWYgQVJNNjQgb3IgQVJNNjRFCisgICAgZWxzaWYgQVJNNjQgb3IgQVJNNjRFIG9yIFJJU0NW
NjQKICAgICAgICAgcHVzaCBjZnIsIGxyCiAgICAgZWxzaWYgQ19MT09QIG9yIENfTE9PUF9XSU4g
b3IgQVJNdjcgb3IgTUlQUwogICAgICAgICBwdXNoIGxyCkBAIC0xMDAyLDcgKzEwNjAsNyBAQCBl
bmQKIG1hY3JvIGZ1bmN0aW9uRXBpbG9ndWUoKQogICAgIGlmIFg4NiBvciBYODZfV0lOIG9yIFg4
Nl82NCBvciBYODZfNjRfV0lOCiAgICAgICAgIHBvcCBjZnIKLSAgICBlbHNpZiBBUk02NCBvciBB
Uk02NEUKKyAgICBlbHNpZiBBUk02NCBvciBBUk02NEUgb3IgUklTQ1Y2NAogICAgICAgICBwb3Ag
bHIsIGNmcgogICAgIGVsc2lmIENfTE9PUCBvciBDX0xPT1BfV0lOIG9yIEFSTXY3IG9yIE1JUFMK
ICAgICAgICAgcG9wIGNmcgpAQCAtMTE1OCw3ICsxMjE2LDcgQEAgbWFjcm8gcHJlcGFyZUZvclRh
aWxDYWxsKGNhbGxlZSwgdGVtcDEsIHRlbXAyLCB0ZW1wMywgdGVtcDQsIGNhbGxQdHJUYWcpCiAg
ICAgYWRkaSBTdGFja0FsaWdubWVudCAtIDEgKyBDYWxsRnJhbWVIZWFkZXJTaXplLCB0ZW1wMgog
ICAgIGFuZGkgflN0YWNrQWxpZ25tZW50TWFzaywgdGVtcDIKIAotICAgIGlmIEFSTXY3IG9yIEFS
TTY0IG9yIEFSTTY0RSBvciBDX0xPT1Agb3IgQ19MT09QX1dJTiBvciBNSVBTCisgICAgaWYgQVJN
djcgb3IgQVJNNjQgb3IgQVJNNjRFIG9yIENfTE9PUCBvciBDX0xPT1BfV0lOIG9yIE1JUFMgb3Ig
UklTQ1Y2NAogICAgICAgICBhZGRwIENhbGxlckZyYW1lQW5kUENTaXplLCBzcAogICAgICAgICBz
dWJpIENhbGxlckZyYW1lQW5kUENTaXplLCB0ZW1wMgogICAgICAgICBsb2FkcCBDYWxsZXJGcmFt
ZUFuZFBDOjpyZXR1cm5QQ1tjZnJdLCBscgpAQCAtMTQ1NCw3ICsxNTEyLDcgQEAgbWFjcm8gcHJv
bG9ndWUoY29kZUJsb2NrR2V0dGVyLCBjb2RlQmxvY2tTZXR0ZXIsIG9zclNsb3dQYXRoLCB0cmFj
ZVNsb3dQYXRoKQogICAgICAgICBidHB6IHIwLCAucmVjb3ZlcgogICAgICAgICBtb3ZlIGNmciwg
c3AgIyByZXN0b3JlIHRoZSBwcmV2aW91cyBzcAogICAgICAgICAjIHBvcCB0aGUgY2FsbGVyRnJh
bWUgc2luY2Ugd2Ugd2lsbCBqdW1wIHRvIGEgZnVuY3Rpb24gdGhhdCB3YW50cyB0byBzYXZlIGl0
Ci0gICAgICAgIGlmIEFSTTY0CisgICAgICAgIGlmIEFSTTY0IG9yIFJJU0NWNjQKICAgICAgICAg
ICAgIHBvcCBsciwgY2ZyCiAgICAgICAgIGVsc2lmIEFSTTY0RQogICAgICAgICAgICAgIyB1bnRh
Z1JldHVybkFkZHJlc3Mgd2lsbCBiZSBwZXJmb3JtZWQgaW4gR2F0ZTo6ZW50cnlPU1JFbnRyeS4K
QEAgLTE4MTAsNyArMTg2OCw3IEBAIGVsc2UKICAgICAgICAgICAgIGxlYXAgKGxhYmVsIC0gXyVr
aW5kJV9yZWxhdGl2ZVBDQmFzZSlbdDNdLCB0NAogICAgICAgICAgICAgbW92ZSBpbmRleCwgdDUK
ICAgICAgICAgICAgIHN0b3JlcCB0NCwgW21hcCwgdDUsIDRdCi0gICAgICAgIGVsc2lmIEFSTTY0
CisgICAgICAgIGVsc2lmIEFSTTY0IG9yIFJJU0NWNjQKICAgICAgICAgICAgIHBjcnRvYWRkciBs
YWJlbCwgdDMKICAgICAgICAgICAgIG1vdmUgaW5kZXgsIHQ0CiAgICAgICAgICAgICBzdG9yZXAg
dDMsIFttYXAsIHQ0LCBQdHJTaXplXQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2xsaW50L0xvd0xldmVsSW50ZXJwcmV0ZXI2NC5hc20gYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
bGxpbnQvTG93TGV2ZWxJbnRlcnByZXRlcjY0LmFzbQppbmRleCBiYWEwNzZhMDhmNDMwM2UyYzgy
Y2JmMGE3YzM5OGUyM2M2NTIxNWU3Li5jN2QxYTIwNDgwOTMyOGRiMDQxMzk3NWQ1Yjg3OTYyMGE1
MzE3ZjBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTG93TGV2ZWxJ
bnRlcnByZXRlcjY0LmFzbQorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTG93TGV2
ZWxJbnRlcnByZXRlcjY0LmFzbQpAQCAtOTMsNyArOTMsNyBAQCBlbmQKIAogbWFjcm8gY0NhbGwy
KGZ1bmN0aW9uKQogICAgIGNoZWNrU3RhY2tQb2ludGVyQWxpZ25tZW50KHQ0LCAweGJhZDBjMDAy
KQotICAgIGlmIFg4Nl82NCBvciBBUk02NCBvciBBUk02NEUKKyAgICBpZiBYODZfNjQgb3IgQVJN
NjQgb3IgQVJNNjRFIG9yIFJJU0NWNjQKICAgICAgICAgY2FsbCBmdW5jdGlvbgogICAgIGVsc2lm
IFg4Nl82NF9XSU4KICAgICAgICAgIyBOb3RlOiB0aGlzIGltcGxlbWVudGF0aW9uIGlzIG9ubHkg
Y29ycmVjdCBpZiB0aGUgcmV0dXJuIHR5cGUgc2l6ZSBpcyA+IDggYnl0ZXMuCkBAIC0xNDAsNyAr
MTQwLDcgQEAgZW5kCiAjIFRoaXMgYmFyZWx5IHdvcmtzLiBhcmczIGFuZCBhcmc0IHNob3VsZCBw
cm9iYWJseSBiZSBpbW1lZGlhdGVzLgogbWFjcm8gY0NhbGw0KGZ1bmN0aW9uKQogICAgIGNoZWNr
U3RhY2tQb2ludGVyQWxpZ25tZW50KHQ0LCAweGJhZDBjMDA0KQotICAgIGlmIFg4Nl82NCBvciBB
Uk02NCBvciBBUk02NEUKKyAgICBpZiBYODZfNjQgb3IgQVJNNjQgb3IgQVJNNjRFIG9yIFJJU0NW
NjQKICAgICAgICAgY2FsbCBmdW5jdGlvbgogICAgIGVsc2lmIFg4Nl82NF9XSU4KICAgICAgICAg
IyBPbiBXaW42NCwgcmN4LCByZHgsIHI4LCBhbmQgcjkgYXJlIHVzZWQgZm9yIHBhc3NpbmcgdGhl
IGZpcnN0IGZvdXIgcGFyYW1ldGVycy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9vZmZsaW5lYXNtL2JhY2tlbmRzLnJiIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL29mZmxpbmVh
c20vYmFja2VuZHMucmIKaW5kZXggNDE0ZjFlYWJlYWQyMjIxZmI5MTI3N2M3MDIxNzZjZTFmYTgw
NjA3Mi4uNDUwNjY4NmY5OWYyNDQ0YWYzODI3YTE3YjRlZTg1NjBjOWYzYmI2NyAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL29mZmxpbmVhc20vYmFja2VuZHMucmIKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL29mZmxpbmVhc20vYmFja2VuZHMucmIKQEAgLTI3LDYgKzI3LDcg
QEAgcmVxdWlyZSAiYXJtNjQiCiByZXF1aXJlICJhc3QiCiByZXF1aXJlICJ4ODYiCiByZXF1aXJl
ICJtaXBzIgorcmVxdWlyZSAicmlzY3Y2NCIKIHJlcXVpcmUgImNsb29wIgogCiBiZWdpbgpAQCAt
NDQsNiArNDUsNyBAQCBCQUNLRU5EUyA9CiAgICAgICJBUk02NCIsCiAgICAgICJBUk02NEUiLAog
ICAgICAiTUlQUyIsCisgICAgICJSSVNDVjY0IiwKICAgICAgIkNfTE9PUCIsCiAgICAgICJDX0xP
T1BfV0lOIgogICAgIF0KQEAgLTYzLDYgKzY1LDcgQEAgV09SS0lOR19CQUNLRU5EUyA9CiAgICAg
ICJBUk02NCIsCiAgICAgICJBUk02NEUiLAogICAgICAiTUlQUyIsCisgICAgICJSSVNDVjY0IiwK
ICAgICAgIkNfTE9PUCIsCiAgICAgICJDX0xPT1BfV0lOIgogICAgIF0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9vZmZsaW5lYXNtL3JlZ2lzdGVycy5yYiBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9vZmZsaW5lYXNtL3JlZ2lzdGVycy5yYgppbmRleCBjYjg0NTdiOGY5NDhhY2Iy
OGU3NmIwZDc5NDkyODg2MWZlNTgxNTA2Li4wZGM0NGMyM2RmYjJiYWQzNjVhMGZlYjU3MTAzYWQy
ZmQzM2ZlYWU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvb2ZmbGluZWFzbS9y
ZWdpc3RlcnMucmIKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL29mZmxpbmVhc20vcmVnaXN0
ZXJzLnJiCkBAIC01Nyw3ICs1Nyw4IEBAIEdQUlMgPQogICAgICAiY3NyNiIsCiAgICAgICJjc3I3
IiwKICAgICAgImNzcjgiLAotICAgICAiY3NyOSIKKyAgICAgImNzcjkiLAorICAgICAiY3NyMTAi
CiAgICAgXQogCiBGUFJTID0KQEAgLTgwLDYgKzgxLDEwIEBAIEZQUlMgPQogICAgICAiY3NmcjUi
LAogICAgICAiY3NmcjYiLAogICAgICAiY3NmcjciLAorICAgICAiY3NmcjgiLAorICAgICAiY3Nm
cjkiLAorICAgICAiY3NmcjEwIiwKKyAgICAgImNzZnIxMSIsCiAgICAgICJmciIKICAgICBdCiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9vZmZsaW5lYXNtL3Jpc2N2NjQucmIg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvb2ZmbGluZWFzbS9yaXNjdjY0LnJiCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjRlZDMwMDY0YWI1N2I5NzdlY2YwMTc5MjU0MTBkYjhlMjMzYmVjZjAKLS0tIC9kZXYvbnVsbAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvb2ZmbGluZWFzbS9yaXNjdjY0LnJiCkBAIC0wLDAg
KzEsMjA1NyBAQAorIyBDb3B5cmlnaHQgKEMpIDIwMjEgSWdhbGlhIFMuTC4KKyMKKyMgUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisjIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworIyBhcmUgbWV0OgorIyAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorIyAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisjIDIu
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUg
Y29weXJpZ2h0CisjICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyMgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyMKKyMgVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBg
QVMgSVMnJworIyBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyMgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorIyBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRP
UlMKKyMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUgorIyBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorIyBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyMg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4KKyMgQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyMgQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorIyBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisKKworIyBOYW1pbmcgY29udmVudGlvbnMKKyMK
KyMgeDxudW1iZXI+ID0+IEdQUiwgdXNlZCB0byBvcGVyYXRlIHdpdGggMzItYml0IGFuZCA2NC1i
aXQgaW50ZWdlciB2YWx1ZXMKKyMgZjxudW1iZXI+ID0+IEZQUiwgdXNlZCB0byBvcGVyYXRlIHdp
dGggMzItYml0IGFuZCA2NC1iaXQgZmxvYXRpbmctcG9pbnQgdmFsdWVzCisjCisjIEdQUiBjb252
ZW50aW9ucywgdG8gbWF0Y2ggdGhlIGJhc2VsaW5lIEpJVDoKKyMKKyMgeDAgID0+IG5vdCB1c2Vk
IChleGNlcHQgd2hlcmUgbmVlZGVkIGZvciBvcGVyYXRpb25zKSAoUklTQy1WIGhhcmQtd2lyZWQg
emVybyByZWdpc3RlcikKKyMgeDEgID0+IGxhICh0aHJvdWdoIGFsaWFzIHJhKSAoUklTQy1WIHJl
dHVybiBhZGRyZXNzIHJlZ2lzdGVyKQorIyB4MiAgPT4gc3AgKHRocm91Z2ggYWxpYXMgc3ApIChS
SVNDLVYgc3RhY2sgcG9pbnRlciByZWdpc3RlcikKKyMgeDMgID0+IG5vdCB1c2VkIChSSVNDLVYg
Z2xvYmFsIHBvaW50ZXIgcmVnaXN0ZXIpCisjIHg0ICA9PiBub3QgdXNlZCAoUklTQy1WIHRocmVh
ZCBwb2ludGVyIHJlZ2lzdGVyKQorIyB4NSAgPT4gbm90IHVzZWQKKyMgeDYgID0+IHdzMAorIyB4
NyAgPT4gd3MxCisjIHg4ICA9PiBjZnIgKHRob3VnaHQgYWxpYXMgZnApIChSSVNDLVYgZnJhbWUg
cG9pbnRlciByZWdpc3RlcikKKyMgeDkgID0+IGNzcjAKKyMgeDEwID0+IHQwLCBhMCwgd2EwLCBy
MAorIyB4MTEgPT4gdDEsIGExLCB3YTEsIHIxCisjIHgxMiA9PiB0MiwgYTIsIHdhMgorIyB4MTMg
PT4gdDMsIGEzLCB3YTMKKyMgeDE0ID0+IHQ0LCBhNCwgd2E0CisjIHgxNSA9PiB0NSwgYTUsIHdh
NQorIyB4MTYgPT4gdDYsIGE2LCB3YTYKKyMgeDE3ID0+IHQ3LCBhNywgd2E3CisjIHgxOCA9PiBj
c3IxCisjIHgxOSA9PiBjc3IyCisjIHgyMCA9PiBjc3IzCisjIHgyMSA9PiBjc3I0CisjIHgyMiA9
PiBjc3I1CisjIHgyMyA9PiBjc3I2IChtZXRhZGF0YVRhYmxlKQorIyB4MjQgPT4gY3NyNyAoUEIp
CisjIHgyNSA9PiBjc3I4IChudW1iZXJUYWcpCisjIHgyNiA9PiBjc3I5IChub3RDZWxsTWFzaykK
KyMgeDI3ID0+IGNzcjEwCisjIHgyOCA9PiBub3QgdXNlZAorIyB4MjkgPT4gbm90IHVzZWQKKyMg
eDMwID0+IHNjcmF0Y2ggcmVnaXN0ZXIKKyMgeDMxID0+IHNjcmF0Y2ggcmVnaXN0ZXIKKyMKKyMg
RlBSIGNvbnZlbnRpb25zLCB0byBtYXRjaCB0aGUgYmFzZWxpbmUgSklUOgorIworIyBmMCAgPT4g
ZnQwCisjIGYxICA9PiBmdDEKKyMgZjIgID0+IGZ0MgorIyBmMyAgPT4gZnQzCisjIGY0ICA9PiBm
dDQKKyMgZjUgID0+IGZ0NQorIyBmNiAgPT4gbm90IHVzZWQKKyMgZjcgID0+IG5vdCB1c2VkCisj
IGY4ICA9PiBjc2ZyMAorIyBmOSAgPT4gY3NmcjEKKyMgZjEwID0+IGZhMCwgd2ZhMAorIyBmMTEg
PT4gZmExLCB3ZmExCisjIGYxMiA9PiBmYTIsIHdmYTIKKyMgZjEzID0+IGZhMywgd2ZhMworIyBm
MTQgPT4gZmE0LCB3ZmE0CisjIGYxNSA9PiBmYTUsIHdmYTUKKyMgZjE2ID0+IGZhNiwgd2ZhNgor
IyBmMTcgPT4gZmE3LCB3ZmE3CisjIGYxOCA9PiBjc2ZyMgorIyBmMTkgPT4gY3NmcjMKKyMgZjIw
ID0+IGNzZnI0CisjIGYyMSA9PiBjc2ZyNQorIyBmMjIgPT4gY3NmcjYKKyMgZjIzID0+IGNzZnI3
CisjIGYyNCA9PiBjc2ZyOAorIyBmMjUgPT4gY3NmcjkKKyMgZjI2ID0+IGNzZnIxMAorIyBmMjcg
PT4gY3NmcjExCisjIGYyOCA9PiBub3QgdXNlZAorIyBmMjkgPT4gbm90IHVzZWQKKyMgZjMwID0+
IG5vdCB1c2VkCisjIGYzMSA9PiBub3QgdXNlZAorCisKK2RlZiByaXNjdjY0T3BlcmFuZFR5cGVz
KG9wZXJhbmRzKQorICAgIHJldHVybiBvcGVyYW5kcy5tYXAgeworICAgICAgICB8b3B8CisgICAg
ICAgIG9wLmNsYXNzCisgICAgfQorZW5kCisKK2RlZiByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3Bl
cmFuZHMob3BlcmFuZHMpCisgICAgcmFpc2UgIlVuYWJsZSB0byBtYXRjaCBvcGVyYW5kcyAje3Jp
c2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpfSIKK2VuZAorCitkZWYgcmlzY3Y2NFJhaXNlVW5z
dXBwb3J0ZWQKKyAgICByYWlzZSAiTm90IHN1cHBvcnRlZCBmb3IgUklTQ1Y2NCIKK2VuZAorCitk
ZWYgcmlzY3Y2NExvYWRJbnN0cnVjdGlvbihzaXplKQorICAgIGNhc2Ugc2l6ZQorICAgIHdoZW4g
OmIKKyAgICAgICAgImxiIgorICAgIHdoZW4gOmJ1CisgICAgICAgICJsYnUiCisgICAgd2hlbiA6
aAorICAgICAgICAibGgiCisgICAgd2hlbiA6aHUKKyAgICAgICAgImxodSIKKyAgICB3aGVuIDp3
CisgICAgICAgICJsdyIKKyAgICB3aGVuIDp3dQorICAgICAgICAibHd1IgorICAgIHdoZW4gOmQK
KyAgICAgICAgImxkIgorICAgIGVsc2UKKyAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIHNpemUg
I3tzaXplfSIKKyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NFplcm9FeHRlbmRlZExvYWRJbnN0
cnVjdGlvbihzaXplKQorICAgIGNhc2Ugc2l6ZQorICAgIHdoZW4gOmIKKyAgICAgICAgcmlzY3Y2
NExvYWRJbnN0cnVjdGlvbig6YnUpCisgICAgd2hlbiA6aAorICAgICAgICByaXNjdjY0TG9hZElu
c3RydWN0aW9uKDpodSkKKyAgICB3aGVuIDp3CisgICAgICAgIHJpc2N2NjRMb2FkSW5zdHJ1Y3Rp
b24oOnd1KQorICAgIHdoZW4gOmQKKyAgICAgICAgcmlzY3Y2NExvYWRJbnN0cnVjdGlvbig6ZCkK
KyAgICBlbHNlCisgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCBzaXplICN7c2l6ZX0iCisgICAg
ZW5kCitlbmQKKworZGVmIHJpc2N2NjRTdG9yZUluc3RydWN0aW9uKHNpemUpCisgICAgY2FzZSBz
aXplCisgICAgd2hlbiA6YgorICAgICAgICAic2IiCisgICAgd2hlbiA6aAorICAgICAgICAic2gi
CisgICAgd2hlbiA6dworICAgICAgICAic3ciCisgICAgd2hlbiA6ZAorICAgICAgICAic2QiCisg
ICAgZWxzZQorICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgc2l6ZSAje3NpemV9IgorICAgIGVu
ZAorZW5kCisKK2RlZiByaXNjdjY0RW1pdFJlZ2lzdGVyTWFzayh0YXJnZXQsIHNpemUpCisgICAg
Y2FzZSBzaXplCisgICAgd2hlbiA6dworICAgICAgICAkYXNtLnB1dHMgImxpIHgzMSwgMHhmZmZm
ZmZmZiIKKyAgICAgICAgJGFzbS5wdXRzICJhbmQgI3t0YXJnZXQucmlzY3Y2NE9wZXJhbmR9LCAj
e3RhcmdldC5yaXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAgICB3aGVuIDpkCisgICAgZWxzZQorICAg
ICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgc2l6ZSIKKyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2
NENvbmRpdGlvbmFsQnJhbmNoSW5zdHJ1Y3Rpb24oY29uZGl0aW9uKQorICAgIGNhc2UgY29uZGl0
aW9uCisgICAgd2hlbiA6ZXEKKyAgICAgICAgImJlcSIKKyAgICB3aGVuIDpuZXEKKyAgICAgICAg
ImJuZSIKKyAgICB3aGVuIDphCisgICAgICAgICJiZ3R1IgorICAgIHdoZW4gOmFlcQorICAgICAg
ICAiYmdldSIKKyAgICB3aGVuIDpiCisgICAgICAgICJibHR1IgorICAgIHdoZW4gOmJlcQorICAg
ICAgICAiYmxldSIKKyAgICB3aGVuIDpndAorICAgICAgICAiYmd0IgorICAgIHdoZW4gOmd0ZXEK
KyAgICAgICAgImJnZSIKKyAgICB3aGVuIDpsdAorICAgICAgICAiYmx0IgorICAgIHdoZW4gOmx0
ZXEKKyAgICAgICAgImJsZSIKKyAgICBlbHNlCisgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCBj
b25kaXRpb24gI3tjb25kaXRpb259IgorICAgIGVuZAorZW5kCisKK2RlZiByaXNjdjY0RW1pdExv
YWQob3BlcmFuZHMsIHR5cGUsIG1hc2spCisgICAgaW5zdHJ1Y3Rpb24gPSByaXNjdjY0TG9hZElu
c3RydWN0aW9uKHR5cGUpCisKKyAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMp
CisgICAgd2hlbiBbQWRkcmVzcywgUmVnaXN0ZXJJRF0KKyAgICAgICAgaWYgb3BlcmFuZHNbMF0u
cmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgb3BlcmFuZHNbMF0ucmlzY3Y2NExvYWQo
UklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzEpCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7aW5z
dHJ1Y3Rpb259ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAwKHgzMSkiCisgICAgICAg
IGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0gI3tvcGVyYW5kc1sx
XS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAg
ICBlbmQKKyAgICB3aGVuIFtCYXNlSW5kZXgsIFJlZ2lzdGVySURdCisgICAgICAgIG9wZXJhbmRz
WzBdLnJpc2N2NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxLCBSSVNDVjY0U2NyYXRj
aFJlZ2lzdGVyLngzMCkKKyAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSAje29wZXJh
bmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgMCh4MzEpIgorICAgIGVsc2UKKyAgICAgICAgcmlzY3Y2
NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgIGVuZAorCisgICAgY2FzZSBt
YXNrCisgICAgd2hlbiA6dworICAgICAgICByaXNjdjY0RW1pdFJlZ2lzdGVyTWFzayhvcGVyYW5k
c1sxXSwgOncpCisgICAgd2hlbiA6bm9uZQorICAgIGVsc2UKKyAgICAgICAgcmFpc2UgIlVuc3Vw
cG9ydGVkIG1hc2sgdHlwZSIKKyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NEVtaXRTdG9yZShv
cGVyYW5kcywgdHlwZSkKKyAgICBpbnN0cnVjdGlvbiA9IHJpc2N2NjRTdG9yZUluc3RydWN0aW9u
KHR5cGUpCisKKyAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgd2hl
biBbUmVnaXN0ZXJJRCwgQWRkcmVzc10KKyAgICAgICAgaWYgb3BlcmFuZHNbMV0ucmlzY3Y2NFJl
cXVpcmVzTG9hZAorICAgICAgICAgICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExvYWQoUklTQ1Y2NFNj
cmF0Y2hSZWdpc3Rlci54MzEpCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259
ICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAwKHgzMSkiCisgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0gI3tvcGVyYW5kc1swXS5yaXNjdjY0
T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICBlbmQKKyAg
ICB3aGVuIFtSZWdpc3RlcklELCBCYXNlSW5kZXhdCisgICAgICAgIG9wZXJhbmRzWzFdLnJpc2N2
NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxLCBSSVNDVjY0U2NyYXRjaFJlZ2lzdGVy
LngzMCkKKyAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSAje29wZXJhbmRzWzBdLnJp
c2N2NjRPcGVyYW5kfSwgMCh4MzEpIgorICAgIHdoZW4gW0ltbWVkaWF0ZSwgQWRkcmVzc10KKyAg
ICAgICAgJGFzbS5wdXRzICJsaSB4MzAsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9Igor
ICAgICAgICBpZiBvcGVyYW5kc1sxXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICBv
cGVyYW5kc1sxXS5yaXNjdjY0TG9hZChSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMSkKKyAgICAg
ICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0geDMwLCAwKHgzMSkiCisgICAgICAgIGVs
c2UKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0geDMwLCAje29wZXJhbmRz
WzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZW5kCisgICAgd2hlbiBbSW1tZWRpYXRlLCBC
YXNlSW5kZXhdCisgICAgICAgIG9wZXJhbmRzWzFdLnJpc2N2NjRMb2FkKFJJU0NWNjRTY3JhdGNo
UmVnaXN0ZXIueDMxLCBSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMCkKKyAgICAgICAgJGFzbS5w
dXRzICJsaSB4MzAsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAkYXNt
LnB1dHMgIiN7aW5zdHJ1Y3Rpb259IHgzMCwgMCh4MzEpIgorICAgIGVsc2UKKyAgICAgICAgcmlz
Y3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgIGVuZAorZW5kCisKK2Rl
ZiByaXNjdjY0RW1pdEFkZGl0aW9uT3BlcmF0aW9uKG9wZXJhbmRzLCBzaXplLCBvcGVyYXRpb24p
CisgICAgcmFpc2UgIlVuc3VwcG9ydGVkIHNpemUiIHVubGVzcyBbOncsIDpkXS5pbmNsdWRlPyBz
aXplCisKKyAgICBkZWYgYWRkaXRpb25JbnN0cnVjdGlvbihzaXplLCBvcGVyYXRpb24pCisgICAg
ICAgIGNhc2Ugb3BlcmF0aW9uCisgICAgICAgIHdoZW4gOmFkZAorICAgICAgICAgICAgc2l6ZSA9
PSA6dyA/ICJhZGR3IiA6ICJhZGQiCisgICAgICAgIHdoZW4gOnN1YgorICAgICAgICAgICAgc2l6
ZSA9PSA6dyA/ICJzdWJ3IiA6ICJzdWIiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJhaXNl
ICJVbnN1cHBvcnRlZCBhcml0aG1ldGljIG9wZXJhdGlvbiIKKyAgICAgICAgZW5kCisgICAgZW5k
CisKKyAgICBpbnN0cnVjdGlvbiA9IGFkZGl0aW9uSW5zdHJ1Y3Rpb24oc2l6ZSwgb3BlcmF0aW9u
KQorICAgIGxvYWRJbnN0cnVjdGlvbiA9IHJpc2N2NjRMb2FkSW5zdHJ1Y3Rpb24oc2l6ZSkKKyAg
ICBzdG9yZUluc3RydWN0aW9uID0gcmlzY3Y2NFN0b3JlSW5zdHJ1Y3Rpb24oc2l6ZSkKKworICAg
IGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICB3aGVuIFtSZWdpc3RlcklE
LCBSZWdpc3RlcklEXQorICAgICAgICBvcGVyYW5kcyA9IFtvcGVyYW5kc1sxXSwgb3BlcmFuZHNb
MF0sIG9wZXJhbmRzWzFdXQorICAgIHdoZW4gW0ltbWVkaWF0ZSwgUmVnaXN0ZXJJRF0KKyAgICAg
ICAgb3BlcmFuZHMgPSBbb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXV0KKyAg
ICB3aGVuIFtBZGRyZXNzLCBSZWdpc3RlcklEXQorICAgICAgICBvcGVyYW5kcyA9IFtvcGVyYW5k
c1sxXSwgb3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdXQorICAgIGVuZAorCisgICAgY2FzZSByaXNj
djY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgIHdoZW4gW1JlZ2lzdGVySUQsIFJlZ2lzdGVy
SUQsIFJlZ2lzdGVySURdCisgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0gI3tvcGVy
YW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAj
e29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgcmlzY3Y2NEVtaXRSZWdpc3Rl
ck1hc2sob3BlcmFuZHNbMl0sIHNpemUpCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgSW1tZWRpYXRl
LCBSZWdpc3RlcklEXQorICAgICAgICBvcGVyYW5kc1sxXS5yaXNjdjY0TG9hZChSSVNDVjY0U2Ny
YXRjaFJlZ2lzdGVyLngzMSkKKyAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSAje29w
ZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0s
IHgzMSIKKyAgICAgICAgcmlzY3Y2NEVtaXRSZWdpc3Rlck1hc2sob3BlcmFuZHNbMl0sIHNpemUp
CisgICAgd2hlbiBbSW1tZWRpYXRlLCBSZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAgICAgICBv
cGVyYW5kc1swXS5yaXNjdjY0TG9hZChSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMSkKKyAgICAg
ICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5k
fSwgeDMxLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgcmlzY3Y2NEVt
aXRSZWdpc3Rlck1hc2sob3BlcmFuZHNbMl0sIHNpemUpCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwg
QWRkcmVzcywgUmVnaXN0ZXJJRF0KKyAgICAgICAgaWYgb3BlcmFuZHNbMV0ucmlzY3Y2NFJlcXVp
cmVzTG9hZAorICAgICAgICAgICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExvYWQoUklTQ1Y2NFNjcmF0
Y2hSZWdpc3Rlci54MzEpCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7bG9hZEluc3RydWN0aW9u
fSB4MzEsIDAoeDMxKSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgJGFzbS5wdXRzICIje2xv
YWRJbnN0cnVjdGlvbn0geDMxLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAg
ICAgZW5kCisgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0gI3tvcGVyYW5kc1syXS5y
aXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEiCisgICAg
ICAgIHJpc2N2NjRFbWl0UmVnaXN0ZXJNYXNrKG9wZXJhbmRzWzJdLCBzaXplKQorICAgIHdoZW4g
W0ltbWVkaWF0ZSwgQWRkcmVzc10KKyAgICAgICAgJGFzbS5wdXRzICJsaSB4MzAsICN7b3BlcmFu
ZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICBpZiBvcGVyYW5kc1sxXS5yaXNjdjY0UmVx
dWlyZXNMb2FkCisgICAgICAgICAgICBvcGVyYW5kc1sxXS5yaXNjdjY0TG9hZChSSVNDVjY0U2Ny
YXRjaFJlZ2lzdGVyLngzMSkKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tsb2FkSW5zdHJ1Y3Rp
b259IHgzMSwgMCh4MzEpIgorICAgICAgICBlbHNlCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7
bG9hZEluc3RydWN0aW9ufSB4MzEsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAg
ICAgICBlbmQKKyAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSB4MzAsIHgzMCwgeDMx
IgorICAgICAgICBpZiBvcGVyYW5kc1sxXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAg
ICBvcGVyYW5kc1sxXS5yaXNjdjY0TG9hZChSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMSkKKyAg
ICAgICAgICAgICRhc20ucHV0cyAiI3tzdG9yZUluc3RydWN0aW9ufSB4MzAsIDAoeDMxKSIKKyAg
ICAgICAgZWxzZQorICAgICAgICAgICAgJGFzbS5wdXRzICIje3N0b3JlSW5zdHJ1Y3Rpb259IHgz
MCwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVuZAorICAgIGVsc2UK
KyAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgIGVu
ZAorZW5kCisKK2RlZiByaXNjdjY0RW1pdE11bERpdkFyaXRobWV0aWMob3BlcmFuZHMsIHNpemUs
IG9wZXJhdGlvbikKKyAgICByYWlzZSAiVW5zdXBwb3J0ZWQgc2l6ZSIgdW5sZXNzIFs6dywgOmRd
LmluY2x1ZGU/IHNpemUKKworICAgIGRlZiBhcml0aG1ldGljSW5zdHJ1Y3Rpb24oc2l6ZSwgb3Bl
cmF0aW9uKQorICAgICAgICBjYXNlIG9wZXJhdGlvbgorICAgICAgICB3aGVuIDptdWwKKyAgICAg
ICAgICAgIHNpemUgPT0gOncgPyAibXVsdyIgOiAibXVsIgorICAgICAgICB3aGVuIDpkaXYKKyAg
ICAgICAgICAgIHNpemUgPT0gOncgPyAiZGl2dXciIDogImRpdnUiCisgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCBhcml0aG1ldGljIG9wZXJhdGlvbiIKKyAgICAg
ICAgZW5kCisgICAgZW5kCisKKyAgICBpbnN0cnVjdGlvbiA9IGFyaXRobWV0aWNJbnN0cnVjdGlv
bihzaXplLCBvcGVyYXRpb24pCisKKyAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFu
ZHMpCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAgICAgb3BlcmFuZHMg
PSBbb3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdLCBvcGVyYW5kc1sxXV0KKyAgICB3aGVuIFtJbW1l
ZGlhdGUsIFJlZ2lzdGVySURdCisgICAgICAgIG9wZXJhbmRzID0gW29wZXJhbmRzWzFdLCBvcGVy
YW5kc1swXSwgb3BlcmFuZHNbMV1dCisgICAgZW5kCisKKyAgICBjYXNlIHJpc2N2NjRPcGVyYW5k
VHlwZXMob3BlcmFuZHMpCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCwgUmVnaXN0
ZXJJRF0KKyAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSAje29wZXJhbmRzWzJdLnJp
c2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNb
MV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgIHdoZW4gW1JlZ2lzdGVySUQsIEltbWVkaWF0ZSwgUmVn
aXN0ZXJJRF0KKyAgICAgICAgJGFzbS5wdXRzICJsaSB4MzEsICN7b3BlcmFuZHNbMV0ucmlzY3Y2
NE9wZXJhbmR9IgorICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNb
Ml0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgeDMxIgor
ICAgIHdoZW4gW0ltbWVkaWF0ZSwgUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAgICAgJGFz
bS5wdXRzICJsaSB4MzEsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAk
YXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCB4
MzEsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgIGVsc2UKKyAgICAgICAgcmlz
Y3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgIGVuZAorZW5kCisKK2Rl
ZiByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCBzaXplLCBjb25kaXRpb24p
CisgICAgaW5zdHJ1Y3Rpb24gPSByaXNjdjY0Q29uZGl0aW9uYWxCcmFuY2hJbnN0cnVjdGlvbihj
b25kaXRpb24pCisKKyAgICBkZWYgc2lnbkV4dGVuZEZvclNpemUocmVnaXN0ZXIsIHRhcmdldCwg
c2l6ZSkKKyAgICAgICAgY2FzZSBzaXplCisgICAgICAgIHdoZW4gOmIKKyAgICAgICAgICAgICRh
c20ucHV0cyAic2xsaSAje3RhcmdldH0sICN7cmVnaXN0ZXIucmlzY3Y2NE9wZXJhbmR9LCAyNCIK
KyAgICAgICAgICAgICRhc20ucHV0cyAic2V4dC53ICN7dGFyZ2V0fSwgI3t0YXJnZXR9IgorICAg
ICAgICAgICAgJGFzbS5wdXRzICJzcmFpICN7dGFyZ2V0fSwgI3t0YXJnZXR9LCAyNCIKKyAgICAg
ICAgd2hlbiA6dworICAgICAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgI3t0YXJnZXR9LCAje3Jl
Z2lzdGVyLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgd2hlbiA6ZAorICAgICAgICAgICAgJGFz
bS5wdXRzICJtdiAje3RhcmdldH0sICN7cmVnaXN0ZXIucmlzY3Y2NE9wZXJhbmR9IgorICAgICAg
ICBlbmQKKyAgICBlbmQKKworICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykK
KyAgICB3aGVuIFtSZWdpc3RlcklELCBSZWdpc3RlcklELCBMb2NhbExhYmVsUmVmZXJlbmNlXQor
ICAgICAgICBzaWduRXh0ZW5kRm9yU2l6ZShvcGVyYW5kc1swXSwgJ3gzMCcsIHNpemUpCisgICAg
ICAgIHNpZ25FeHRlbmRGb3JTaXplKG9wZXJhbmRzWzFdLCAneDMxJywgc2l6ZSkKKyAgICAgICAg
JGFzbS5wdXRzICIje2luc3RydWN0aW9ufSB4MzAsIHgzMSwgI3tvcGVyYW5kc1syXS5hc21MYWJl
bH0iCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgSW1tZWRpYXRlLCBMb2NhbExhYmVsUmVmZXJlbmNl
XQorICAgICAgICBzaWduRXh0ZW5kRm9yU2l6ZShvcGVyYW5kc1swXSwgJ3gzMCcsIHNpemUpCisg
ICAgICAgICRhc20ucHV0cyAibGkgeDMxLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIK
KyAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSB4MzAsIHgzMSwgI3tvcGVyYW5kc1sy
XS5hc21MYWJlbH0iCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgQWRkcmVzcywgTG9jYWxMYWJlbFJl
ZmVyZW5jZV0KKyAgICAgICAgc2lnbkV4dGVuZEZvclNpemUob3BlcmFuZHNbMF0sICd4MzAnLCBz
aXplKQorICAgICAgICBpZiBvcGVyYW5kc1sxXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAg
ICAgICBvcGVyYW5kc1sxXS5yaXNjdjY0TG9hZChSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMSkK
KyAgICAgICAgICAgICRhc20ucHV0cyAiI3tyaXNjdjY0TG9hZEluc3RydWN0aW9uKHNpemUpfSB4
MzEsIDAoeDMxKSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgJGFzbS5wdXRzICIje3Jpc2N2
NjRMb2FkSW5zdHJ1Y3Rpb24oc2l6ZSl9IHgzMSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFu
ZH0iCisgICAgICAgIGVuZAorICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259IHgzMCwg
eDMxLCAje29wZXJhbmRzWzJdLmFzbUxhYmVsfSIKKyAgICB3aGVuIFtSZWdpc3RlcklELCBCYXNl
SW5kZXgsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAgIG9wZXJhbmRzWzFdLnJpc2N2NjRM
b2FkKFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxLCBSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngz
MCkKKyAgICAgICAgJGFzbS5wdXRzICIje3Jpc2N2NjRMb2FkSW5zdHJ1Y3Rpb24oc2l6ZSl9IHgz
MSwgMCh4MzEpIgorICAgICAgICBzaWduRXh0ZW5kRm9yU2l6ZShvcGVyYW5kc1swXSwgJ3gzMCcs
IHNpemUpCisgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0geDMwLCB4MzEsICN7b3Bl
cmFuZHNbMl0uYXNtTGFiZWx9IgorICAgIHdoZW4gW0FkZHJlc3MsIFJlZ2lzdGVySUQsIExvY2Fs
TGFiZWxSZWZlcmVuY2VdCisgICAgICAgIGlmIG9wZXJhbmRzWzBdLnJpc2N2NjRSZXF1aXJlc0xv
YWQKKyAgICAgICAgICAgIG9wZXJhbmRzWzBdLnJpc2N2NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVn
aXN0ZXIueDMxKQorICAgICAgICAgICAgJGFzbS5wdXRzICIje3Jpc2N2NjRMb2FkSW5zdHJ1Y3Rp
b24oc2l6ZSl9IHgzMCwgMCh4MzEpIgorICAgICAgICBlbHNlCisgICAgICAgICAgICAkYXNtLnB1
dHMgIiN7cmlzY3Y2NExvYWRJbnN0cnVjdGlvbihzaXplKX0geDMwLCAje29wZXJhbmRzWzBdLnJp
c2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZW5kCisgICAgICAgIHNpZ25FeHRlbmRGb3JTaXplKG9w
ZXJhbmRzWzFdLCAneDMxJywgc2l6ZSkKKyAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9u
fSB4MzAsIHgzMSwgI3tvcGVyYW5kc1syXS5hc21MYWJlbH0iCisgICAgd2hlbiBbQWRkcmVzcywg
SW1tZWRpYXRlLCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICBpZiBvcGVyYW5kc1swXS5y
aXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICBvcGVyYW5kc1swXS5yaXNjdjY0TG9hZChS
SVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMSkKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tyaXNj
djY0TG9hZEluc3RydWN0aW9uKHNpemUpfSB4MzAsIDAoeDMxKSIKKyAgICAgICAgZWxzZQorICAg
ICAgICAgICAgJGFzbS5wdXRzICIje3Jpc2N2NjRMb2FkSW5zdHJ1Y3Rpb24oc2l6ZSl9IHgzMCwg
I3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVuZAorICAgICAgICAkYXNt
LnB1dHMgImxpIHgzMSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICRh
c20ucHV0cyAiI3tpbnN0cnVjdGlvbn0geDMwLCB4MzEsICN7b3BlcmFuZHNbMl0uYXNtTGFiZWx9
IgorICAgIGVsc2UKKyAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJh
bmRzKQorICAgIGVuZAorZW5kCisKK2RlZiByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoRm9y
VGVzdChvcGVyYW5kcywgc2l6ZSwgdGVzdCkKKyAgICBkZWYgYnJhbmNoSW5zdHJ1Y3Rpb24odGVz
dCkKKyAgICAgICAgY2FzZSB0ZXN0CisgICAgICAgIHdoZW4gOnoKKyAgICAgICAgICAgICJiZXF6
IgorICAgICAgICB3aGVuIDpuegorICAgICAgICAgICAgImJuZXoiCisgICAgICAgIHdoZW4gOnMK
KyAgICAgICAgICAgICJibHR6IgorICAgICAgICBlbHNlCisgICAgICAgIGVuZAorICAgIGVuZAor
CisgICAgZGVmIHNpZ25FeHRlbmRGb3JTaXplKHRhcmdldCwgc2l6ZSkKKyAgICAgICAgY2FzZSBz
aXplCisgICAgICAgIHdoZW4gOmIKKyAgICAgICAgICAgICRhc20ucHV0cyAic2xsaSAje3Rhcmdl
dH0sICN7dGFyZ2V0fSwgMjQiCisgICAgICAgICAgICAkYXNtLnB1dHMgInNleHQudyAje3Rhcmdl
dH0sICN7dGFyZ2V0fSIKKyAgICAgICAgICAgICRhc20ucHV0cyAic3JhaSAje3RhcmdldH0sICN7
dGFyZ2V0fSwgMjQiCisgICAgICAgIHdoZW4gOmgKKyAgICAgICAgICAgICRhc20ucHV0cyAic2xs
aSAje3RhcmdldH0sICN7dGFyZ2V0fSwgMTYiCisgICAgICAgICAgICAkYXNtLnB1dHMgInNleHQu
dyAje3RhcmdldH0sICN7dGFyZ2V0fSIKKyAgICAgICAgICAgICRhc20ucHV0cyAic3JhaSAje3Rh
cmdldH0sICN7dGFyZ2V0fSwgMTYiCisgICAgICAgIHdoZW4gOncKKyAgICAgICAgICAgICRhc20u
cHV0cyAic2V4dC53ICN7dGFyZ2V0fSwgI3t0YXJnZXR9IgorICAgICAgICB3aGVuIDpkCisgICAg
ICAgICAgICByZXR1cm4KKyAgICAgICAgZW5kCisgICAgZW5kCisKKyAgICBiSW5zdHJ1Y3Rpb24g
PSBicmFuY2hJbnN0cnVjdGlvbih0ZXN0KQorICAgIGxvYWRJbnN0cnVjdGlvbiA9IHJpc2N2NjRM
b2FkSW5zdHJ1Y3Rpb24oc2l6ZSkKKworICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVy
YW5kcykKKyAgICB3aGVuIFtSZWdpc3RlcklELCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAg
ICBjYXNlIHRlc3QKKyAgICAgICAgd2hlbiA6cworICAgICAgICAgICAgJGFzbS5wdXRzICJtdiB4
MzEsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgc2lnbkV4dGVu
ZEZvclNpemUoJ3gzMScsIHNpemUpCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7Ykluc3RydWN0
aW9ufSB4MzEsICN7b3BlcmFuZHNbMV0uYXNtTGFiZWx9IgorICAgICAgICBlbHNlCisgICAgICAg
ICAgICAkYXNtLnB1dHMgIiN7Ykluc3RydWN0aW9ufSAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVy
YW5kfSwgI3tvcGVyYW5kc1sxXS5hc21MYWJlbH0iCisgICAgICAgIGVuZAorICAgIHdoZW4gW1Jl
Z2lzdGVySUQsIFJlZ2lzdGVySUQsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAgICRhc20u
cHV0cyAiYW5kIHgzMSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNb
MV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICBzaWduRXh0ZW5kRm9yU2l6ZSgneDMxJywgc2l6
ZSkKKyAgICAgICAgJGFzbS5wdXRzICIje2JJbnN0cnVjdGlvbn0geDMxLCAje29wZXJhbmRzWzJd
LmFzbUxhYmVsfSIKKyAgICB3aGVuIFtSZWdpc3RlcklELCBJbW1lZGlhdGUsIExvY2FsTGFiZWxS
ZWZlcmVuY2VdCisgICAgICAgIGlmIG9wZXJhbmRzWzFdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAg
ICAgICAgICAgIG9wZXJhbmRzWzFdLnJpc2N2NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIu
eDMxKQorICAgICAgICAgICAgJGFzbS5wdXRzICJhbmQgeDMxLCAje29wZXJhbmRzWzBdLnJpc2N2
NjRPcGVyYW5kfSwgeDMxIgorICAgICAgICBlbHNlCisgICAgICAgICAgICAkYXNtLnB1dHMgImFu
ZGkgeDMxLCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNj
djY0T3BlcmFuZH0iCisgICAgICAgIGVuZAorICAgICAgICBzaWduRXh0ZW5kRm9yU2l6ZSgneDMx
Jywgc2l6ZSkKKyAgICAgICAgJGFzbS5wdXRzICIje2JJbnN0cnVjdGlvbn0geDMxLCAje29wZXJh
bmRzWzJdLmFzbUxhYmVsfSIKKyAgICB3aGVuIFtBZGRyZXNzLCBMb2NhbExhYmVsUmVmZXJlbmNl
XQorICAgICAgICBpZiBvcGVyYW5kc1swXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAg
ICBvcGVyYW5kc1swXS5yaXNjdjY0TG9hZChSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMSkKKyAg
ICAgICAgICAgICRhc20ucHV0cyAiI3tsb2FkSW5zdHJ1Y3Rpb259IHgzMSwgMCh4MzEpIgorICAg
ICAgICBlbHNlCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7bG9hZEluc3RydWN0aW9ufSB4MzEs
ICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICBlbmQKKyAgICAgICAgJGFz
bS5wdXRzICIje2JJbnN0cnVjdGlvbn0geDMxLCAje29wZXJhbmRzWzFdLmFzbUxhYmVsfSIKKyAg
ICB3aGVuIFtBZGRyZXNzLCBJbW1lZGlhdGUsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAg
IGlmIG9wZXJhbmRzWzBdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAgIG9wZXJhbmRz
WzBdLnJpc2N2NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxKQorICAgICAgICAgICAg
JGFzbS5wdXRzICIje2xvYWRJbnN0cnVjdGlvbn0geDMwLCAwKHgzMSkiCisgICAgICAgIGVsc2UK
KyAgICAgICAgICAgICRhc20ucHV0cyAiI3tsb2FkSW5zdHJ1Y3Rpb259IHgzMCwgI3tvcGVyYW5k
c1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVuZAorICAgICAgICBpZiBvcGVyYW5kc1sx
XS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICBvcGVyYW5kc1sxXS5yaXNjdjY0TG9h
ZChSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMSkKKyAgICAgICAgICAgICRhc20ucHV0cyAiYW5k
IHgzMSwgeDMwLCB4MzEiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0cyAiYW5k
aSB4MzEsIHgzMCwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVuZAor
ICAgICAgICBzaWduRXh0ZW5kRm9yU2l6ZSgneDMxJywgc2l6ZSkKKyAgICAgICAgJGFzbS5wdXRz
ICIje2JJbnN0cnVjdGlvbn0geDMxLCAje29wZXJhbmRzWzJdLmFzbUxhYmVsfSIKKyAgICB3aGVu
IFtCYXNlSW5kZXgsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAgIG9wZXJhbmRzWzBdLnJp
c2N2NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxLCBSSVNDVjY0U2NyYXRjaFJlZ2lz
dGVyLngzMCkKKyAgICAgICAgJGFzbS5wdXRzICIje2xvYWRJbnN0cnVjdGlvbn0geDMxLCAwKHgz
MSkiCisgICAgICAgICRhc20ucHV0cyAiI3tiSW5zdHJ1Y3Rpb259IHgzMSwgI3tvcGVyYW5kc1sx
XS5hc21MYWJlbH0iCisgICAgZWxzZQorICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3Bl
cmFuZHMob3BlcmFuZHMpCisgICAgZW5kCitlbmQKKworZGVmIHJpc2N2NjRFbWl0Q29uZGl0aW9u
YWxCcmFuY2hGb3JBZGRpdGlvbk9wZXJhdGlvbihvcGVyYW5kcywgc2l6ZSwgb3BlcmF0aW9uLCB0
ZXN0KQorICAgIGRlZiBhZGRpdGlvbkluc3RydWN0aW9uKHNpemUsIG9wZXJhdGlvbikKKyAgICAg
ICAgY2FzZSBvcGVyYXRpb24KKyAgICAgICAgd2hlbiA6YWRkCisgICAgICAgICAgICBzaXplID09
IDp3ID8gImFkZHciIDogImFkZCIKKyAgICAgICAgd2hlbiA6c3ViCisgICAgICAgICAgICBzaXpl
ID09IDp3ID8gInN1YnciIDogInN1YiIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmFpc2Ug
IlVuc3VwcG9ydGVkIGFyaXRobWV0aWMgb3BlcmF0aW9uIgorICAgICAgICBlbmQKKyAgICBlbmQK
KworICAgIGRlZiBlbWl0QnJhbmNoRm9yVGVzdCh0ZXN0LCB0YXJnZXQsIGxhYmVsKQorICAgICAg
ICBjYXNlIHRlc3QKKyAgICAgICAgd2hlbiA6egorICAgICAgICAgICAgJGFzbS5wdXRzICJiZXF6
ICN7dGFyZ2V0LnJpc2N2NjRPcGVyYW5kfSwgI3tsYWJlbC5hc21MYWJlbH0iCisgICAgICAgIHdo
ZW4gOm56CisgICAgICAgICAgICAkYXNtLnB1dHMgImJuZXogI3t0YXJnZXQucmlzY3Y2NE9wZXJh
bmR9LCAje2xhYmVsLmFzbUxhYmVsfSIKKyAgICAgICAgd2hlbiA6cworICAgICAgICAgICAgJGFz
bS5wdXRzICJibHR6ICN7dGFyZ2V0LnJpc2N2NjRPcGVyYW5kfSwgI3tsYWJlbC5hc21MYWJlbH0i
CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCB0ZXN0IgorICAg
ICAgICBlbmQKKyAgICBlbmQKKworICAgIGluc3RydWN0aW9uID0gYWRkaXRpb25JbnN0cnVjdGlv
bihzaXplLCBvcGVyYXRpb24pCisgICAgbG9hZEluc3RydWN0aW9uID0gcmlzY3Y2NExvYWRJbnN0
cnVjdGlvbihzaXplKQorICAgIHN0b3JlSW5zdHJ1Y3Rpb24gPSByaXNjdjY0U3RvcmVJbnN0cnVj
dGlvbihzaXplKQorCisgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAg
IHdoZW4gW1JlZ2lzdGVySUQsIFJlZ2lzdGVySUQsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAg
ICAgIG9wZXJhbmRzID0gW29wZXJhbmRzWzFdLCBvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV0sIG9w
ZXJhbmRzWzJdXQorICAgIHdoZW4gW0ltbWVkaWF0ZSwgUmVnaXN0ZXJJRCwgTG9jYWxMYWJlbFJl
ZmVyZW5jZV0KKyAgICAgICAgb3BlcmFuZHMgPSBbb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzBdLCBv
cGVyYW5kc1sxXSwgb3BlcmFuZHNbMl1dCisgICAgZW5kCisKKyAgICBjYXNlIHJpc2N2NjRPcGVy
YW5kVHlwZXMob3BlcmFuZHMpCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCwgUmVn
aXN0ZXJJRCwgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgJGFzbS5wdXRzICIje2luc3Ry
dWN0aW9ufSAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNj
djY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAkYXNt
LnB1dHMgIm12IHgzMCwgI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIHJp
c2N2NjRFbWl0UmVnaXN0ZXJNYXNrKG9wZXJhbmRzWzJdLCBzaXplKQorICAgICAgICBlbWl0QnJh
bmNoRm9yVGVzdCh0ZXN0LCBSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMCwgb3BlcmFuZHNbM10p
CisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgSW1tZWRpYXRlLCBSZWdpc3RlcklELCBMb2NhbExhYmVs
UmVmZXJlbmNlXQorICAgICAgICAkYXNtLnB1dHMgImxpIHgzMSwgI3tvcGVyYW5kc1sxXS5yaXNj
djY0T3BlcmFuZH0iCisgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0gI3tvcGVyYW5k
c1syXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEi
CisgICAgICAgICRhc20ucHV0cyAibXYgeDMwLCAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5k
fSIKKyAgICAgICAgcmlzY3Y2NEVtaXRSZWdpc3Rlck1hc2sob3BlcmFuZHNbMl0sIHNpemUpCisg
ICAgICAgIGVtaXRCcmFuY2hGb3JUZXN0KHRlc3QsIFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMw
LCBvcGVyYW5kc1szXSkKKyAgICB3aGVuIFtJbW1lZGlhdGUsIEFkZHJlc3MsIExvY2FsTGFiZWxS
ZWZlcmVuY2VdCisgICAgICAgICRhc20ucHV0cyAibGkgeDMwLCAje29wZXJhbmRzWzBdLnJpc2N2
NjRPcGVyYW5kfSIKKyAgICAgICAgaWYgb3BlcmFuZHNbMV0ucmlzY3Y2NFJlcXVpcmVzTG9hZAor
ICAgICAgICAgICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExvYWQoUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rl
ci54MzEpCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7bG9hZEluc3RydWN0aW9ufSB4MzEsIDAo
eDMxKSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgJGFzbS5wdXRzICIje2xvYWRJbnN0cnVj
dGlvbn0geDMxLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZW5kCisg
ICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0geDMwLCB4MzAsIHgzMSIKKyAgICAgICAg
aWYgb3BlcmFuZHNbMV0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgb3BlcmFuZHNb
MV0ucmlzY3Y2NExvYWQoUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzEpCisgICAgICAgICAgICAk
YXNtLnB1dHMgIiN7c3RvcmVJbnN0cnVjdGlvbn0geDMwLCAwKHgzMSkiCisgICAgICAgIGVsc2UK
KyAgICAgICAgICAgICRhc20ucHV0cyAiI3tzdG9yZUluc3RydWN0aW9ufSB4MzAsICN7b3BlcmFu
ZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICBlbmQKKyAgICAgICAgZW1pdEJyYW5jaEZv
clRlc3QodGVzdCwgUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzAsIG9wZXJhbmRzWzJdKQorICAg
IGVsc2UKKyAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQor
ICAgIGVuZAorZW5kCisKK2RlZiByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoRm9yTXVsdGlw
bGljYXRpb25PcGVyYXRpb24ob3BlcmFuZHMsIHNpemUsIHRlc3QpCisgICAgcmFpc2UgIlVuc3Vw
cG9ydGVkIHNpemUiIHVubGVzcyBzaXplID09IDp3CisKKyAgICBkZWYgZW1pdE11bHRpcGxpY2F0
aW9uKGxocywgcmhzKQorICAgICAgICAkYXNtLnB1dHMgInNleHQudyB4MzAsICN7bGhzLnJpc2N2
NjRPcGVyYW5kfSIKKyAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgeDMxLCAje3Jocy5yaXNjdjY0
T3BlcmFuZH0iCisgICAgICAgICRhc20ucHV0cyAibXVsIHgzMCwgeDMwLCB4MzEiCisgICAgZW5k
CisKKyAgICBkZWYgZW1pdEJyYW5jaEZvclRlc3QodGVzdCwgbGFiZWwpCisgICAgICAgIGNhc2Ug
dGVzdAorICAgICAgICB3aGVuIDp6CisgICAgICAgICAgICAkYXNtLnB1dHMgImJlcXogeDMwLCAj
e2xhYmVsLmFzbUxhYmVsfSIKKyAgICAgICAgd2hlbiA6bnoKKyAgICAgICAgICAgICRhc20ucHV0
cyAiYm5leiB4MzAsICN7bGFiZWwuYXNtTGFiZWx9IgorICAgICAgICB3aGVuIDpzCisgICAgICAg
ICAgICAkYXNtLnB1dHMgImJsdHogeDMwLCAje2xhYmVsLmFzbUxhYmVsfSIKKyAgICAgICAgZWxz
ZQorICAgICAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIHRlc3QiCisgICAgICAgIGVuZAorICAg
IGVuZAorCisgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgIHdoZW4g
W1JlZ2lzdGVySUQsIFJlZ2lzdGVySUQsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAgIGVt
aXRNdWx0aXBsaWNhdGlvbihvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV0pCisgICAgICAgICRhc20u
cHV0cyAibXYgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIHgzMCIKKyAgICAgICAgcmlz
Y3Y2NEVtaXRSZWdpc3Rlck1hc2sob3BlcmFuZHNbMV0sIHNpemUpCisKKyAgICAgICAgZW1pdEJy
YW5jaEZvclRlc3QodGVzdCwgb3BlcmFuZHNbMl0pCisgICAgd2hlbiBbSW1tZWRpYXRlLCBSZWdp
c3RlcklELCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICAkYXNtLnB1dHMgImxpIHgzMCwg
I3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVtaXRNdWx0aXBsaWNhdGlv
bihSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMCwgb3BlcmFuZHNbMV0pCisgICAgICAgICRhc20u
cHV0cyAibXYgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIHgzMCIKKyAgICAgICAgcmlz
Y3Y2NEVtaXRSZWdpc3Rlck1hc2sob3BlcmFuZHNbMV0sIHNpemUpCisKKyAgICAgICAgZW1pdEJy
YW5jaEZvclRlc3QodGVzdCwgb3BlcmFuZHNbMl0pCisgICAgZWxzZQorICAgICAgICByaXNjdjY0
UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgZW5kCitlbmQKKworZGVmIHJp
c2N2NjRFbWl0T3ZlcmZsb3dCcmFuY2hGb3JPcGVyYXRpb24ob3BlcmFuZHMsIHNpemUsIG9wZXJh
dGlvbikKKyAgICByYWlzZSAiVW5zdXBwb3J0ZWQgc2l6ZSIgdW5sZXNzIHNpemUgPT0gOncKKwor
ICAgIGRlZiBvcGVyYXRpb25JbnN0cnVjdGlvbihvcGVyYXRpb24pCisgICAgICAgIGNhc2Ugb3Bl
cmF0aW9uCisgICAgICAgIHdoZW4gOmFkZAorICAgICAgICAgICAgImFkZCIKKyAgICAgICAgd2hl
biA6c3ViCisgICAgICAgICAgICAic3ViIgorICAgICAgICB3aGVuIDptdWwKKyAgICAgICAgICAg
ICJtdWwiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCBvcGVy
YXRpb24iCisgICAgICAgIGVuZAorICAgIGVuZAorCisgICAgaW5zdHJ1Y3Rpb24gPSBvcGVyYXRp
b25JbnN0cnVjdGlvbihvcGVyYXRpb24pCisKKyAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMo
b3BlcmFuZHMpCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCwgTG9jYWxMYWJlbFJl
ZmVyZW5jZV0KKyAgICAgICAgb3BlcmFuZHMgPSBbb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzBdLCBv
cGVyYW5kc1sxXSwgb3BlcmFuZHNbMl1dCisgICAgd2hlbiBbSW1tZWRpYXRlLCBSZWdpc3RlcklE
LCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICBvcGVyYW5kcyA9IFtvcGVyYW5kc1sxXSwg
b3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdLCBvcGVyYW5kc1syXV0KKyAgICBlbmQKKworICAgIGNh
c2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICB3aGVuIFtSZWdpc3RlcklELCBS
ZWdpc3RlcklELCBSZWdpc3RlcklELCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICAkYXNt
LnB1dHMgInNleHQudyB4MzAsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAg
ICAkYXNtLnB1dHMgInNleHQudyB4MzEsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9Igor
ICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259IHgzMCwgeDMwLCB4MzEiCisKKyAgICAg
ICAgJGFzbS5wdXRzICJtdiAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgeDMwIgorICAg
ICAgICByaXNjdjY0RW1pdFJlZ2lzdGVyTWFzayhvcGVyYW5kc1syXSwgc2l6ZSkKKworICAgICAg
ICAkYXNtLnB1dHMgInNleHQudyB4MzEsIHgzMCIKKyAgICAgICAgJGFzbS5wdXRzICJibmUgeDMw
LCB4MzEsICN7b3BlcmFuZHNbM10uYXNtTGFiZWx9IgorICAgIHdoZW4gW1JlZ2lzdGVySUQsIElt
bWVkaWF0ZSwgUmVnaXN0ZXJJRCwgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgJGFzbS5w
dXRzICJzZXh0LncgeDMwLCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAg
JGFzbS5wdXRzICJsaSB4MzEsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAg
ICAkYXNtLnB1dHMgInNleHQudyB4MzEsIHgzMSIKKyAgICAgICAgJGFzbS5wdXRzICIje2luc3Ry
dWN0aW9ufSB4MzAsIHgzMCwgeDMxIgorCisgICAgICAgICRhc20ucHV0cyAibXYgI3tvcGVyYW5k
c1syXS5yaXNjdjY0T3BlcmFuZH0sIHgzMCIKKyAgICAgICAgcmlzY3Y2NEVtaXRSZWdpc3Rlck1h
c2sob3BlcmFuZHNbMl0sIHNpemUpCisKKyAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgeDMxLCB4
MzAiCisgICAgICAgICRhc20ucHV0cyAiYm5lIHgzMCwgeDMxLCAje29wZXJhbmRzWzNdLmFzbUxh
YmVsfSIKKyAgICBlbHNlCisgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhv
cGVyYW5kcykKKyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRz
LCBzaXplLCBjb25kaXRpb24pCisgICAgZGVmIHNpZ25FeHRlbmRSZWdpc3RlckZvclNpemUocmVn
aXN0ZXIsIHRhcmdldCwgc2l6ZSkKKyAgICAgICAgY2FzZSBzaXplCisgICAgICAgIHdoZW4gOmIK
KyAgICAgICAgICAgICRhc20ucHV0cyAic2xsaSAje3RhcmdldH0sICN7cmVnaXN0ZXIucmlzY3Y2
NE9wZXJhbmR9LCAyNCIKKyAgICAgICAgICAgICRhc20ucHV0cyAic2V4dC53ICN7dGFyZ2V0fSwg
I3t0YXJnZXR9IgorICAgICAgICAgICAgJGFzbS5wdXRzICJzcmFpICN7dGFyZ2V0fSwgI3t0YXJn
ZXR9LCAyNCIKKyAgICAgICAgd2hlbiA6dworICAgICAgICAgICAgJGFzbS5wdXRzICJzZXh0Lncg
I3t0YXJnZXR9LCAje3JlZ2lzdGVyLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgd2hlbiA6ZAor
ICAgICAgICAgICAgJGFzbS5wdXRzICJtdiAje3RhcmdldH0sICN7cmVnaXN0ZXIucmlzY3Y2NE9w
ZXJhbmR9IgorICAgICAgICBlbHNlCisgICAgICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgc2l6
ZSIKKyAgICAgICAgZW5kCisgICAgZW5kCisKKyAgICBkZWYgc2lnbkV4dGVuZEltbWVkaWF0ZUZv
clNpemUoaW1tZWRpYXRlLCB0YXJnZXQsIHNpemUpCisgICAgICAgICRhc20ucHV0cyAibGkgI3t0
YXJnZXR9LCAje2ltbWVkaWF0ZS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGNhc2Ugc2l6ZQor
ICAgICAgICB3aGVuIDpiCisgICAgICAgICAgICAkYXNtLnB1dHMgInNsbGkgI3t0YXJnZXR9LCAj
e3RhcmdldH0sIDI0IgorICAgICAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgI3t0YXJnZXR9LCAj
e3RhcmdldH0iCisgICAgICAgICAgICAkYXNtLnB1dHMgInNyYWkgI3t0YXJnZXR9LCAje3Rhcmdl
dH0sIDI0IgorICAgICAgICB3aGVuIDp3CisgICAgICAgICAgICAkYXNtLnB1dHMgInNleHQudyAj
e3RhcmdldH0sICN7dGFyZ2V0fSIKKyAgICAgICAgd2hlbiA6ZAorICAgICAgICBlbHNlCisgICAg
ICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgc2l6ZSIKKyAgICAgICAgZW5kCisgICAgZW5kCisK
KyAgICBkZWYgbG9hZEFuZFNpZ25FeHRlbmRBZGRyZXNzRm9yU2l6ZShhZGRyZXNzLCB0YXJnZXQs
IHNpemUpCisgICAgICAgIGlmIGFkZHJlc3MucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAg
ICAgYWRkcmVzcy5yaXNjdjY0TG9hZChSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMSkKKyAgICAg
ICAgICAgICRhc20ucHV0cyAiI3tyaXNjdjY0TG9hZEluc3RydWN0aW9uKHNpemUpfSAje3Rhcmdl
dH0sIDAoeDMxKSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgJGFzbS5wdXRzICIje3Jpc2N2
NjRMb2FkSW5zdHJ1Y3Rpb24oc2l6ZSl9ICN7dGFyZ2V0fSwgI3thZGRyZXNzLnJpc2N2NjRPcGVy
YW5kfSIKKyAgICAgICAgZW5kCisgICAgZW5kCisKKyAgICBkZWYgc2V0Rm9yQ29uZGl0aW9uKGxo
cywgcmhzLCB0YXJnZXQsIGNvbmRpdGlvbikKKyAgICAgICAgY2FzZSBjb25kaXRpb24KKyAgICAg
ICAgd2hlbiA6ZXEKKyAgICAgICAgICAgICRhc20ucHV0cyAic3ViIHgzMSwgI3tsaHN9LCAje3Jo
c30iCisgICAgICAgICAgICAkYXNtLnB1dHMgInNlcXogI3tvcGVyYW5kc1syXS5yaXNjdjY0T3Bl
cmFuZH0sIHgzMSIKKyAgICAgICAgd2hlbiA6bmVxCisgICAgICAgICAgICAkYXNtLnB1dHMgInN1
YiB4MzEsICN7bGhzfSwgI3tyaHN9IgorICAgICAgICAgICAgJGFzbS5wdXRzICJzbmV6ICN7b3Bl
cmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEiCisgICAgICAgIHdoZW4gOmEKKyAgICAgICAg
ICAgICRhc20ucHV0cyAic2x0dSAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgI3tyaHN9
LCAje2xoc30iCisgICAgICAgIHdoZW4gOmFlcQorICAgICAgICAgICAgJGFzbS5wdXRzICJzbHR1
ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje2xoc30sICN7cmhzfSIKKyAgICAgICAg
ICAgICRhc20ucHV0cyAieG9yaSAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVy
YW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sIDEiCisgICAgICAgIHdoZW4gOmIKKyAgICAgICAgICAg
ICRhc20ucHV0cyAic2x0dSAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgI3tsaHN9LCAj
e3Joc30iCisgICAgICAgIHdoZW4gOmJlcQorICAgICAgICAgICAgJGFzbS5wdXRzICJzbHR1ICN7
b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje3Joc30sICN7bGhzfSIKKyAgICAgICAgICAg
ICRhc20ucHV0cyAieG9yaSAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5k
c1syXS5yaXNjdjY0T3BlcmFuZH0sIDEiCisgICAgICAgIHdoZW4gOmx0CisgICAgICAgICAgICAk
YXNtLnB1dHMgInNsdCAje3RhcmdldC5yaXNjdjY0T3BlcmFuZH0sICN7bGhzfSwgI3tyaHN9Igor
ICAgICAgICB3aGVuIDpsdGVxCisgICAgICAgICAgICAkYXNtLnB1dHMgInNsdCAje3RhcmdldC5y
aXNjdjY0T3BlcmFuZH0sICN7cmhzfSwgI3tsaHN9IgorICAgICAgICAgICAgJGFzbS5wdXRzICJ4
b3JpICN7dGFyZ2V0LnJpc2N2NjRPcGVyYW5kfSwgI3t0YXJnZXQucmlzY3Y2NE9wZXJhbmR9LCAx
IgorICAgICAgICB3aGVuIDpndAorICAgICAgICAgICAgJGFzbS5wdXRzICJzbHQgI3t0YXJnZXQu
cmlzY3Y2NE9wZXJhbmR9LCAje3Joc30sICN7bGhzfSIKKyAgICAgICAgd2hlbiA6Z3RlcQorICAg
ICAgICAgICAgJGFzbS5wdXRzICJzbHQgI3t0YXJnZXQucmlzY3Y2NE9wZXJhbmR9LCAje2xoc30s
ICN7cmhzfSIKKyAgICAgICAgICAgICRhc20ucHV0cyAieG9yaSAje3RhcmdldC5yaXNjdjY0T3Bl
cmFuZH0sICN7dGFyZ2V0LnJpc2N2NjRPcGVyYW5kfSwgMSIKKyAgICAgICAgZWxzZQorICAgICAg
ICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIGNvbmRpdGlvbiIKKyAgICAgICAgZW5kCisgICAgZW5k
CisKKyAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgd2hlbiBbUmVn
aXN0ZXJJRCwgUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAgICAgc2lnbkV4dGVuZFJlZ2lz
dGVyRm9yU2l6ZShvcGVyYW5kc1swXSwgJ3gzMCcsIHNpemUpCisgICAgICAgIHNpZ25FeHRlbmRS
ZWdpc3RlckZvclNpemUob3BlcmFuZHNbMV0sICd4MzEnLCBzaXplKQorICAgICAgICBzZXRGb3JD
b25kaXRpb24oJ3gzMCcsICd4MzEnLCBvcGVyYW5kc1syXSwgY29uZGl0aW9uKQorICAgIHdoZW4g
W1JlZ2lzdGVySUQsIEltbWVkaWF0ZSwgUmVnaXN0ZXJJRF0KKyAgICAgICAgc2lnbkV4dGVuZFJl
Z2lzdGVyRm9yU2l6ZShvcGVyYW5kc1swXSwgJ3gzMCcsIHNpemUpCisgICAgICAgIHNpZ25FeHRl
bmRJbW1lZGlhdGVGb3JTaXplKG9wZXJhbmRzWzFdLCAneDMxJywgc2l6ZSkKKyAgICAgICAgc2V0
Rm9yQ29uZGl0aW9uKCd4MzAnLCAneDMxJywgb3BlcmFuZHNbMl0sIGNvbmRpdGlvbikKKyAgICB3
aGVuIFtBZGRyZXNzLCBSZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAgICAgICBsb2FkQW5kU2ln
bkV4dGVuZEFkZHJlc3NGb3JTaXplKG9wZXJhbmRzWzBdLCAneDMwJywgc2l6ZSkKKyAgICAgICAg
c2lnbkV4dGVuZFJlZ2lzdGVyRm9yU2l6ZShvcGVyYW5kc1sxXSwgJ3gzMScsIHNpemUpCisgICAg
ICAgIHNldEZvckNvbmRpdGlvbigneDMwJywgJ3gzMScsIG9wZXJhbmRzWzJdLCBjb25kaXRpb24p
CisgICAgd2hlbiBbQWRkcmVzcywgSW1tZWRpYXRlLCBSZWdpc3RlcklEXQorICAgICAgICBsb2Fk
QW5kU2lnbkV4dGVuZEFkZHJlc3NGb3JTaXplKG9wZXJhbmRzWzBdLCAneDMwJywgc2l6ZSkKKyAg
ICAgICAgc2lnbkV4dGVuZEltbWVkaWF0ZUZvclNpemUob3BlcmFuZHNbMV0sICd4MzEnLCBzaXpl
KQorICAgICAgICBzZXRGb3JDb25kaXRpb24oJ3gzMCcsICd4MzEnLCBvcGVyYW5kc1syXSwgY29u
ZGl0aW9uKQorICAgIGVsc2UKKyAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRz
KG9wZXJhbmRzKQorICAgIGVuZAorZW5kCisKK2RlZiByaXNjdjY0RW1pdFRlc3Qob3BlcmFuZHMs
IHNpemUsIHRlc3QpCisgICAgZGVmIHRlc3RJbnN0cnVjdGlvbih0ZXN0KQorICAgICAgICBjYXNl
IHRlc3QKKyAgICAgICAgd2hlbiA6egorICAgICAgICAgICAgInNlcXoiCisgICAgICAgIHdoZW4g
Om56CisgICAgICAgICAgICAic25leiIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmFpc2Ug
IlVua25vd24gdGVzdCB0eXBlIgorICAgICAgICBlbmQKKyAgICBlbmQKKworICAgIGluc3RydWN0
aW9uID0gdGVzdEluc3RydWN0aW9uKHRlc3QpCisgICAgbG9hZEluc3RydWN0aW9uID0gcmlzY3Y2
NFplcm9FeHRlbmRlZExvYWRJbnN0cnVjdGlvbihzaXplKQorCisgICAgY2FzZSByaXNjdjY0T3Bl
cmFuZFR5cGVzKG9wZXJhbmRzKQorICAgIHdoZW4gW1JlZ2lzdGVySUQsIFJlZ2lzdGVySUQsIFJl
Z2lzdGVySURdCisgICAgICAgICRhc20ucHV0cyAiYW5kIHgzMSwgI3tvcGVyYW5kc1swXS5yaXNj
djY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAkYXNt
LnB1dHMgIiN7aW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEi
CisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgSW1tZWRpYXRlLCBSZWdpc3RlcklEXQorICAgICAgICBp
ZiBvcGVyYW5kc1sxXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICAkYXNtLnB1dHMg
ImxpIHgzMSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAkYXNt
LnB1dHMgImFuZCB4MzEsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEiCisgICAg
ICAgIGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0cyAiYW5kaSB4MzEsICN7b3BlcmFuZHNbMF0u
cmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAg
ZW5kCisgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0gI3tvcGVyYW5kc1syXS5yaXNj
djY0T3BlcmFuZH0sIHgzMSIKKyAgICB3aGVuIFtBZGRyZXNzLCBJbW1lZGlhdGUsIFJlZ2lzdGVy
SURdCisgICAgICAgIGlmIG9wZXJhbmRzWzBdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAg
ICAgIG9wZXJhbmRzWzBdLnJpc2N2NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxKQor
ICAgICAgICAgICAgJGFzbS5wdXRzICIje2xvYWRJbnN0cnVjdGlvbn0geDMxLCAwKHgzMSkiCisg
ICAgICAgIGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tsb2FkSW5zdHJ1Y3Rpb259IHgz
MSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVuZAorICAgICAgICBp
ZiBvcGVyYW5kc1sxXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICAkYXNtLnB1dHMg
ImxpIHgzMCwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAkYXNt
LnB1dHMgImFuZCB4MzEsIHgzMCwgeDMxIgorICAgICAgICBlbHNlCisgICAgICAgICAgICAkYXNt
LnB1dHMgImFuZGkgeDMxLCB4MzEsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAg
ICAgICBlbmQKKyAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSAje29wZXJhbmRzWzJd
LnJpc2N2NjRPcGVyYW5kfSwgeDMxIgorICAgIGVsc2UKKyAgICAgICAgcmlzY3Y2NFJhaXNlTWlz
bWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgIGVuZAorZW5kCisKK2RlZiByaXNjdjY0RW1p
dExvZ2ljYWxPcGVyYXRpb24ob3BlcmFuZHMsIHNpemUsIG9wZXJhdGlvbikKKyAgICBkZWYgb3BJ
bnN0cnVjdGlvbihvcGVyYXRpb24pCisgICAgICAgIGNhc2Ugb3BlcmF0aW9uCisgICAgICAgIHdo
ZW4gOmFuZAorICAgICAgICAgICAgImFuZCIKKyAgICAgICAgd2hlbiA6b3IKKyAgICAgICAgICAg
ICJvciIKKyAgICAgICAgd2hlbiA6eG9yCisgICAgICAgICAgICAieG9yIgorICAgICAgICBlbHNl
CisgICAgICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgbG9naWNhbCBvcGVyYXRpb24iCisgICAg
ICAgIGVuZAorICAgIGVuZAorCisgICAgaW5zdHJ1Y3Rpb24gPSBvcEluc3RydWN0aW9uKG9wZXJh
dGlvbikKKyAgICBsb2FkSW5zdHJ1Y3Rpb24gPSByaXNjdjY0WmVyb0V4dGVuZGVkTG9hZEluc3Ry
dWN0aW9uKHNpemUpCisgICAgc3RvcmVJbnN0cnVjdGlvbiA9IHJpc2N2NjRTdG9yZUluc3RydWN0
aW9uKHNpemUpCisKKyAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAg
d2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAgICAgJGFzbS5wdXRzICIje2luc3Ry
dWN0aW9ufSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNj
djY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICByaXNj
djY0RW1pdFJlZ2lzdGVyTWFzayhvcGVyYW5kc1sxXSwgc2l6ZSkKKyAgICB3aGVuIFtSZWdpc3Rl
cklELCBSZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1
Y3Rpb259ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2
NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIHJpc2N2
NjRFbWl0UmVnaXN0ZXJNYXNrKG9wZXJhbmRzWzJdLCBzaXplKQorICAgIHdoZW4gW1JlZ2lzdGVy
SUQsIEltbWVkaWF0ZSwgUmVnaXN0ZXJJRF0KKyAgICAgICAgaWYgb3BlcmFuZHNbMV0ucmlzY3Y2
NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgJGFzbS5wdXRzICJsaSB4MzEsICN7b3BlcmFuZHNb
MV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9u
fSAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3Bl
cmFuZH0sIHgzMSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgJGFzbS5wdXRzICIje2luc3Ry
dWN0aW9ufWkgI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlz
Y3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZW5k
CisgICAgICAgIHJpc2N2NjRFbWl0UmVnaXN0ZXJNYXNrKG9wZXJhbmRzWzJdLCBzaXplKQorICAg
IHdoZW4gW0ltbWVkaWF0ZSwgUmVnaXN0ZXJJRF0KKyAgICAgICAgaWYgb3BlcmFuZHNbMF0ucmlz
Y3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgJGFzbS5wdXRzICJsaSB4MzEsICN7b3BlcmFu
ZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0
aW9ufSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgeDMxLCAje29wZXJhbmRzWzFdLnJp
c2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgJGFzbS5wdXRzICIje2lu
c3RydWN0aW9ufWkgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0u
cmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAg
ZW5kCisgICAgICAgIHJpc2N2NjRFbWl0UmVnaXN0ZXJNYXNrKG9wZXJhbmRzWzFdLCBzaXplKQor
ICAgIHdoZW4gW0ltbWVkaWF0ZSwgQWRkcmVzc10KKyAgICAgICAgaWYgb3BlcmFuZHNbMV0ucmlz
Y3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExvYWQoUklT
Q1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzEpCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7bG9hZElu
c3RydWN0aW9ufSB4MzAsIDAoeDMxKSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgJGFzbS5w
dXRzICIje2xvYWRJbnN0cnVjdGlvbn0geDMwLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5k
fSIKKyAgICAgICAgZW5kCisgICAgICAgICRhc20ucHV0cyAibGkgeDMxLCAje29wZXJhbmRzWzBd
LnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSB4MzAs
IHgzMSwgeDMwIgorICAgICAgICBpZiBvcGVyYW5kc1sxXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisg
ICAgICAgICAgICBvcGVyYW5kc1sxXS5yaXNjdjY0TG9hZChSSVNDVjY0U2NyYXRjaFJlZ2lzdGVy
LngzMSkKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tzdG9yZUluc3RydWN0aW9ufSB4MzAsIDAo
eDMxKSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgJGFzbS5wdXRzICIje3N0b3JlSW5zdHJ1
Y3Rpb259IHgzMCwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVuZAor
ICAgIGVsc2UKKyAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRz
KQorICAgIGVuZAorZW5kCisKK2RlZiByaXNjdjY0RW1pdENvbXBsZW1lbnRPcGVyYXRpb24ob3Bl
cmFuZHMsIHNpemUsIG9wZXJhdGlvbikKKyAgICBkZWYgY29tcGxlbWVudEluc3RydWN0aW9uKHNp
emUsIG9wZXJhdGlvbikKKyAgICAgICAgY2FzZSBvcGVyYXRpb24KKyAgICAgICAgd2hlbiA6bm90
CisgICAgICAgICAgICAibm90IgorICAgICAgICB3aGVuIDpuZWcKKyAgICAgICAgICAgIHNpemUg
PT0gOncgPyAibmVndyIgOiAibmVnIgorICAgICAgICBlbHNlCisgICAgICAgICAgICByYWlzZSAi
VW5zdXBwb3J0ZWQgY29tcGxlbWVudCBvcGVyYXRpb24iCisgICAgICAgIGVuZAorICAgIGVuZAor
CisgICAgaW5zdHJ1Y3Rpb24gPSBjb21wbGVtZW50SW5zdHJ1Y3Rpb24oc2l6ZSwgb3BlcmF0aW9u
KQorCisgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgIHdoZW4gW1Jl
Z2lzdGVySURdCisgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0gI3tvcGVyYW5kc1sw
XS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAg
ICByaXNjdjY0RW1pdFJlZ2lzdGVyTWFzayhvcGVyYW5kc1swXSwgc2l6ZSkKKyAgICBlbHNlCisg
ICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICBlbmQK
K2VuZAorCitkZWYgcmlzY3Y2NEVtaXRTaGlmdChvcGVyYW5kcywgc2l6ZSwgc2hpZnQpCisgICAg
cmFpc2UgIlVuc3VwcG9ydGVkIHNpemUiIHVubGVzcyBbOncsIDpkXS5pbmNsdWRlPyBzaXplCisK
KyAgICBkZWYgc2hpZnRJbnN0cnVjdGlvbihzaXplLCBzaGlmdCkKKyAgICAgICAgY2FzZSBzaGlm
dAorICAgICAgICB3aGVuIDpsbGVmdAorICAgICAgICAgICAgc2l6ZSA9PSA6dyA/ICJzbGx3IiA6
ICJzbGwiCisgICAgICAgIHdoZW4gOmxyaWdodAorICAgICAgICAgICAgc2l6ZSA9PSA6dyA/ICJz
cmx3IiA6ICJzcmwiCisgICAgICAgIHdoZW4gOmFyaWdodAorICAgICAgICAgICAgc2l6ZSA9PSA6
dyA/ICJzcmF3IiA6ICJzcmEiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJhaXNlICJVbnN1
cHBvcnRlZCBzaGlmdCB0eXBlIgorICAgICAgICBlbmQKKyAgICBlbmQKKworICAgIGNhc2Ugcmlz
Y3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICB3aGVuIFtSZWdpc3RlcklELCBSZWdpc3Rl
cklEXQorICAgICAgICAkYXNtLnB1dHMgIiN7c2hpZnRJbnN0cnVjdGlvbihzaXplLCBzaGlmdCl9
ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVy
YW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIHJpc2N2NjRFbWl0
UmVnaXN0ZXJNYXNrKG9wZXJhbmRzWzFdLCBzaXplKQorICAgIHdoZW4gW0ltbWVkaWF0ZSwgUmVn
aXN0ZXJJRF0KKyAgICAgICAgJGFzbS5wdXRzICJsaSB4MzEsICN7b3BlcmFuZHNbMF0ucmlzY3Y2
NE9wZXJhbmR9IgorICAgICAgICAkYXNtLnB1dHMgIiN7c2hpZnRJbnN0cnVjdGlvbihzaXplLCBz
aGlmdCl9ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2
NjRPcGVyYW5kfSwgeDMxIgorICAgICAgICByaXNjdjY0RW1pdFJlZ2lzdGVyTWFzayhvcGVyYW5k
c1sxXSwgc2l6ZSkKKyAgICBlbHNlCisgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVy
YW5kcyhvcGVyYW5kcykKKyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NEVtaXRCaXRFeHRlbnNp
b24ob3BlcmFuZHMsIGZyb21TaXplLCB0b1NpemUsIGV4dGVuc2lvblR5cGUpCisgICAgcmFpc2Ug
IlVuc3VwcG9ydGVkIG9wZXJhbmQgdHlwZXMiIHVubGVzcyByaXNjdjY0T3BlcmFuZFR5cGVzKG9w
ZXJhbmRzKSA9PSBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKworICAgIGRlZiBlbWl0U2hpZnRz
KG9wZXJhbmRzLCBzaGlmdENvdW50KQorICAgICAgICAkYXNtLnB1dHMgInNsbGkgI3tvcGVyYW5k
c1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAje3No
aWZ0Q291bnR9IgorICAgICAgICAkYXNtLnB1dHMgInNleHQudyAje29wZXJhbmRzWzFdLnJpc2N2
NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICRhc20u
cHV0cyAic3JhaSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5y
aXNjdjY0T3BlcmFuZH0sICN7c2hpZnRDb3VudH0iCisgICAgZW5kCisKKyAgICBjYXNlIFtmcm9t
U2l6ZSwgdG9TaXplLCBleHRlbnNpb25UeXBlXQorICAgIHdoZW4gWzpiLCA6dywgOnNpZ25dLCBb
OmIsIDpkLCA6c2lnbl0KKyAgICAgICAgZW1pdFNoaWZ0cyhvcGVyYW5kcywgMjQpCisgICAgICAg
IHJpc2N2NjRFbWl0UmVnaXN0ZXJNYXNrKG9wZXJhbmRzWzFdLCB0b1NpemUpCisgICAgd2hlbiBb
OmgsIDp3LCA6c2lnbl0sIFs6aCwgOmQsIDpzaWduXQorICAgICAgICBlbWl0U2hpZnRzKG9wZXJh
bmRzLCAxNikKKyAgICAgICAgcmlzY3Y2NEVtaXRSZWdpc3Rlck1hc2sob3BlcmFuZHNbMV0sIHRv
U2l6ZSkKKyAgICB3aGVuIFs6dywgOmQsIDpzaWduXQorICAgICAgICAkYXNtLnB1dHMgInNleHQu
dyAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3Bl
cmFuZH0iCisgICAgd2hlbiBbOncsIDpkLCA6emVyb10KKyAgICAgICAgJGFzbS5wdXRzICJzbGxp
ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVy
YW5kfSwgMzIiCisgICAgICAgICRhc20ucHV0cyAic3JsaSAje29wZXJhbmRzWzFdLnJpc2N2NjRP
cGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIDMyIgorICAgIGVsc2UKKyAg
ICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIGJpdC1leHRlbnNpb24gb3BlcmF0aW9uIgorICAgIGVu
ZAorZW5kCisKK2RlZiByaXNjdjY0RW1pdEZQTG9hZChvcGVyYW5kcywgbG9hZEluc3RydWN0aW9u
KQorICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICB3aGVuIFtBZGRy
ZXNzLCBGUFJlZ2lzdGVySURdCisgICAgICAgIGlmIG9wZXJhbmRzWzBdLnJpc2N2NjRSZXF1aXJl
c0xvYWQKKyAgICAgICAgICAgIG9wZXJhbmRzWzBdLnJpc2N2NjRMb2FkKFJJU0NWNjRTY3JhdGNo
UmVnaXN0ZXIueDMxKQorICAgICAgICAgICAgJGFzbS5wdXRzICIje2xvYWRJbnN0cnVjdGlvbn0g
I3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIDAoeDMxKSIKKyAgICAgICAgZWxzZQorICAg
ICAgICAgICAgJGFzbS5wdXRzICIje2xvYWRJbnN0cnVjdGlvbn0gI3tvcGVyYW5kc1sxXS5yaXNj
djY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICBlbmQK
KyAgICB3aGVuIFtCYXNlSW5kZXgsIEZQUmVnaXN0ZXJJRF0KKyAgICAgICAgb3BlcmFuZHNbMF0u
cmlzY3Y2NExvYWQoUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzEsIFJJU0NWNjRTY3JhdGNoUmVn
aXN0ZXIueDMwKQorICAgICAgICAkYXNtLnB1dHMgIiN7bG9hZEluc3RydWN0aW9ufSAje29wZXJh
bmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgMCh4MzEpIgorICAgIGVsc2UKKyAgICAgICAgcmlzY3Y2
NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgIGVuZAorZW5kCisKK2RlZiBy
aXNjdjY0RW1pdEZQU3RvcmUob3BlcmFuZHMsIHN0b3JlSW5zdHJ1Y3Rpb24pCisgICAgY2FzZSBy
aXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgIHdoZW4gW0ZQUmVnaXN0ZXJJRCwgQWRk
cmVzc10KKyAgICAgICAgaWYgb3BlcmFuZHNbMV0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAg
ICAgICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExvYWQoUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzEp
CisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7c3RvcmVJbnN0cnVjdGlvbn0gI3tvcGVyYW5kc1sw
XS5yaXNjdjY0T3BlcmFuZH0sIDAoeDMxKSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgJGFz
bS5wdXRzICIje3N0b3JlSW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9
LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZW5kCisgICAgd2hlbiBb
RlBSZWdpc3RlcklELCBCYXNlSW5kZXhdCisgICAgICAgIG9wZXJhbmRzWzFdLnJpc2N2NjRMb2Fk
KFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxLCBSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMCkK
KyAgICAgICAgJGFzbS5wdXRzICIje3N0b3JlSW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMF0ucmlz
Y3Y2NE9wZXJhbmR9LCAwKHgzMSkiCisgICAgZWxzZQorICAgICAgICByaXNjdjY0UmFpc2VNaXNt
YXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgZW5kCitlbmQKKworZGVmIHJpc2N2NjRFbWl0
RlBPcGVyYXRpb24ob3BlcmFuZHMsIG9wZXJhdGlvbikKKyAgICBjYXNlIHJpc2N2NjRPcGVyYW5k
VHlwZXMob3BlcmFuZHMpCisgICAgd2hlbiBbRlBSZWdpc3RlcklELCBGUFJlZ2lzdGVySUQsIEZQ
UmVnaXN0ZXJJRF0KKyAgICAgICAgJGFzbS5wdXRzICIje29wZXJhdGlvbn0gI3tvcGVyYW5kc1sy
XS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJh
bmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICB3aGVuIFtGUFJlZ2lzdGVySUQsIEZQUmVnaXN0
ZXJJRF0KKyAgICAgICAgJGFzbS5wdXRzICIje29wZXJhdGlvbn0gI3tvcGVyYW5kc1sxXS5yaXNj
djY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgIGVsc2UKKyAg
ICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgIGVuZAor
ZW5kCisKK2RlZiByaXNjdjY0RW1pdEZQQ29tcGFyZShvcGVyYW5kcywgcHJlY2lzaW9uLCBjb25k
aXRpb24pCisgICAgZGVmIHN1ZmZpeEZvclByZWNpc2lvbihwcmVjaXNpb24pCisgICAgICAgIGNh
c2UgcHJlY2lzaW9uCisgICAgICAgIHdoZW4gOnMKKyAgICAgICAgICAgICJzIgorICAgICAgICB3
aGVuIDpkCisgICAgICAgICAgICAiZCIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmFpc2Ug
IlVuc3VwcG9ydGVkIHByZWNpc2lvbiIKKyAgICAgICAgZW5kCisgICAgZW5kCisKKyAgICBkZWYg
aW5zdHJ1Y3Rpb25Gb3JDb25kaXRpb24oY29uZGl0aW9uLCBwcmVjaXNpb24pCisgICAgICAgIHN1
ZmZpeCA9IHN1ZmZpeEZvclByZWNpc2lvbihwcmVjaXNpb24pCisgICAgICAgIGNhc2UgY29uZGl0
aW9uCisgICAgICAgIHdoZW4gOmVxLCA6bmVxCisgICAgICAgICAgICAiZmVxLiN7c3VmZml4fSIK
KyAgICAgICAgd2hlbiA6bHQsIDpndAorICAgICAgICAgICAgImZsdC4je3N1ZmZpeH0iCisgICAg
ICAgIHdoZW4gOmx0ZXEsIDpndGVxCisgICAgICAgICAgICAiZmxlLiN7c3VmZml4fSIKKyAgICAg
ICAgZWxzZQorICAgICAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIGNvbmRpdGlvbiIKKyAgICAg
ICAgZW5kCisgICAgZW5kCisKKyAgICBkZWYgc2V0Rm9yQ29uZGl0aW9uKG9wZXJhbmRzLCBwcmVj
aXNpb24sIGNvbmRpdGlvbikKKyAgICAgICAgaW5zdHJ1Y3Rpb24gPSBpbnN0cnVjdGlvbkZvckNv
bmRpdGlvbihjb25kaXRpb24sIHByZWNpc2lvbikKKyAgICAgICAgY2FzZSBjb25kaXRpb24KKyAg
ICAgICAgd2hlbiA6ZXEKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0gI3tv
cGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9
LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgd2hlbiA6bmVxCisgICAg
ICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9w
ZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNj
djY0T3BlcmFuZH0iCisgICAgICAgICAgICAkYXNtLnB1dHMgInhvcmkgI3tvcGVyYW5kc1syXS5y
aXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAxIgorICAgICAg
ICB3aGVuIDpsdCwgOmx0ZXEKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0g
I3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJh
bmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgd2hlbiA6Z3QsIDpn
dGVxCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMl0u
cmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5k
c1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJhaXNlICJV
bnN1cHBvcnRlZCBjb25kaXRpb24iCisgICAgICAgIGVuZAorICAgIGVuZAorCisgICAgY2FzZSBy
aXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgIHdoZW4gW0ZQUmVnaXN0ZXJJRCwgRlBS
ZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAgICAgICBzZXRGb3JDb25kaXRpb24ob3BlcmFuZHMs
IHByZWNpc2lvbiwgY29uZGl0aW9uKQorICAgIGVsc2UKKyAgICAgICAgcmlzY3Y2NFJhaXNlTWlz
bWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgIGVuZAorZW5kCisKK2RlZiByaXNjdjY0RW1p
dEZQQml0d2lzZU9wZXJhdGlvbihvcGVyYW5kcywgcHJlY2lzaW9uLCBvcGVyYXRpb24pCisgICAg
ZGVmIHN1ZmZpeEZvclByZWNpc2lvbihwcmVjaXNpb24pCisgICAgICAgIGNhc2UgcHJlY2lzaW9u
CisgICAgICAgIHdoZW4gOnMKKyAgICAgICAgICAgICJ3IgorICAgICAgICB3aGVuIDpkCisgICAg
ICAgICAgICAiZCIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVk
IHByZWNpc2lvbiIKKyAgICAgICAgZW5kCisgICAgZW5kCisKKyAgICBzdWZmaXggPSBzdWZmaXhG
b3JQcmVjaXNpb24ocHJlY2lzaW9uKQorCisgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9w
ZXJhbmRzKQorICAgIHdoZW4gW0ZQUmVnaXN0ZXJJRCwgRlBSZWdpc3RlcklEXQorICAgICAgICAk
YXNtLnB1dHMgImZtdi54LiN7c3VmZml4fSB4MzAsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJh
bmR9IgorICAgICAgICAkYXNtLnB1dHMgImZtdi54LiN7c3VmZml4fSB4MzEsICN7b3BlcmFuZHNb
MV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAkYXNtLnB1dHMgIiN7b3BlcmF0aW9ufSB4MzEs
IHgzMCwgeDMxIgorICAgICAgICAkYXNtLnB1dHMgImZtdi4je3N1ZmZpeH0ueCAje29wZXJhbmRz
WzFdLnJpc2N2NjRPcGVyYW5kfSwgeDMxIgorICAgIGVsc2UKKyAgICAgICAgcmlzY3Y2NFJhaXNl
TWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgIGVuZAorZW5kCisKK2RlZiByaXNjdjY0
RW1pdEZQQ29weShvcGVyYW5kcywgcHJlY2lzaW9uKQorICAgIGRlZiBzdWZmaXhGb3JQcmVjaXNp
b24ocHJlY2lzaW9uKQorICAgICAgICBjYXNlIHByZWNpc2lvbgorICAgICAgICB3aGVuIDpzCisg
ICAgICAgICAgICAidyIKKyAgICAgICAgd2hlbiA6ZAorICAgICAgICAgICAgImQiCisgICAgICAg
IGVsc2UKKyAgICAgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCBwcmVjaXNpb24iCisgICAgICAg
IGVuZAorICAgIGVuZAorCisgICAgc3VmZml4ID0gc3VmZml4Rm9yUHJlY2lzaW9uKHByZWNpc2lv
bikKKworICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICB3aGVuIFtS
ZWdpc3RlcklELCBGUFJlZ2lzdGVySURdCisgICAgICAgICRhc20ucHV0cyAiZm12LiN7c3VmZml4
fS54ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRP
cGVyYW5kfSIKKyAgICB3aGVuIFtGUFJlZ2lzdGVySUQsIFJlZ2lzdGVySURdCisgICAgICAgICRh
c20ucHV0cyAiZm12LnguI3tzdWZmaXh9ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAj
e29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICBlbHNlCisgICAgICAgIHJpc2N2NjRS
YWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICBlbmQKK2VuZAorCitkZWYgcmlz
Y3Y2NEVtaXRGUENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgcHJlY2lzaW9uLCB0
ZXN0KQorICAgIGRlZiBzdWZmaXhGb3JQcmVjaXNpb24ocHJlY2lzaW9uKQorICAgICAgICBjYXNl
IHByZWNpc2lvbgorICAgICAgICB3aGVuIDpzCisgICAgICAgICAgICAicyIKKyAgICAgICAgd2hl
biA6ZAorICAgICAgICAgICAgImQiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJhaXNlICJV
bnN1cHBvcnRlZCBwcmVjaXNpb24iCisgICAgICAgIGVuZAorICAgIGVuZAorCisgICAgZGVmIGVt
aXRCcmFuY2hGb3JVbm9yZGVyZWQobGhzLCByaHMsIGxhYmVsLCBwcmVjaXNpb24pCisgICAgICAg
IHN1ZmZpeCA9IHN1ZmZpeEZvclByZWNpc2lvbihwcmVjaXNpb24pCisKKyAgICAgICAgJGFzbS5w
dXRzICJmY2xhc3MuZCB4MzAsICN7bGhzLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgJGFzbS5w
dXRzICJmY2xhc3MuZCB4MzEsICN7cmhzLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgJGFzbS5w
dXRzICJvciB4MzEsIHgzMCwgeDMxIgorICAgICAgICAkYXNtLnB1dHMgImxpIHgzMCwgMHgzMDAi
CisgICAgICAgICRhc20ucHV0cyAiYW5kIHgzMSwgeDMxLCB4MzAiCisgICAgICAgICRhc20ucHV0
cyAiYm5leiB4MzEsICN7bGFiZWwuYXNtTGFiZWx9IgorICAgIGVuZAorCisgICAgZGVmIGVtaXRC
cmFuY2hGb3JUZXN0KHRlc3QsIGxocywgcmhzLCBicmFuY2gsIGxhYmVsLCBwcmVjaXNpb24pCisg
ICAgICAgIHN1ZmZpeCA9IHN1ZmZpeEZvclByZWNpc2lvbihwcmVjaXNpb24pCisKKyAgICAgICAg
JGFzbS5wdXRzICIje3Rlc3R9LiN7c3VmZml4fSB4MzEsICN7bGhzLnJpc2N2NjRPcGVyYW5kfSwg
I3tyaHMucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAkYXNtLnB1dHMgIiN7YnJhbmNofSB4MzEs
ICN7bGFiZWwuYXNtTGFiZWx9IgorICAgIGVuZAorCisgICAgc3VmZml4ID0gc3VmZml4Rm9yUHJl
Y2lzaW9uKHByZWNpc2lvbikKKworICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5k
cykKKyAgICB3aGVuIFtGUFJlZ2lzdGVySUQsIEZQUmVnaXN0ZXJJRCwgTG9jYWxMYWJlbFJlZmVy
ZW5jZV0KKyAgICAgICAgY2FzZSB0ZXN0CisgICAgICAgIHdoZW4gOmVxCisgICAgICAgICAgICBl
bWl0QnJhbmNoRm9yVGVzdCgiZmVxIiwgb3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdLCAiYm5leiIs
IG9wZXJhbmRzWzJdLCBwcmVjaXNpb24pCisgICAgICAgIHdoZW4gOm5lcQorICAgICAgICAgICAg
ZW1pdEJyYW5jaEZvclRlc3QoImZlcSIsIG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSwgImJlcXoi
LCBvcGVyYW5kc1syXSwgcHJlY2lzaW9uKQorICAgICAgICB3aGVuIDpsdAorICAgICAgICAgICAg
ZW1pdEJyYW5jaEZvclRlc3QoImZsdCIsIG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSwgImJuZXoi
LCBvcGVyYW5kc1syXSwgcHJlY2lzaW9uKQorICAgICAgICB3aGVuIDpsdGVxCisgICAgICAgICAg
ICBlbWl0QnJhbmNoRm9yVGVzdCgiZmxlIiwgb3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdLCAiYm5l
eiIsIG9wZXJhbmRzWzJdLCBwcmVjaXNpb24pCisgICAgICAgIHdoZW4gOmd0CisgICAgICAgICAg
ICBlbWl0QnJhbmNoRm9yVGVzdCgiZmx0Iiwgb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzBdLCAiYm5l
eiIsIG9wZXJhbmRzWzJdLCBwcmVjaXNpb24pCisgICAgICAgIHdoZW4gOmd0ZXEKKyAgICAgICAg
ICAgIGVtaXRCcmFuY2hGb3JUZXN0KCJmbGUiLCBvcGVyYW5kc1sxXSwgb3BlcmFuZHNbMF0sICJi
bmV6Iiwgb3BlcmFuZHNbMl0sIHByZWNpc2lvbikKKyAgICAgICAgd2hlbiA6ZXF1bgorICAgICAg
ICAgICAgZW1pdEJyYW5jaEZvclVub3JkZXJlZChvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV0sIG9w
ZXJhbmRzWzJdLCBwcmVjaXNpb24pCisgICAgICAgICAgICBlbWl0QnJhbmNoRm9yVGVzdCgiZmVx
Iiwgb3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdLCAiYm5leiIsIG9wZXJhbmRzWzJdLCBwcmVjaXNp
b24pCisgICAgICAgIHdoZW4gOm5lcXVuCisgICAgICAgICAgICBlbWl0QnJhbmNoRm9yVW5vcmRl
cmVkKG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSwgb3BlcmFuZHNbMl0sIHByZWNpc2lvbikKKyAg
ICAgICAgICAgIGVtaXRCcmFuY2hGb3JUZXN0KCJmZXEiLCBvcGVyYW5kc1swXSwgb3BlcmFuZHNb
MV0sICJiZXF6Iiwgb3BlcmFuZHNbMl0sIHByZWNpc2lvbikKKyAgICAgICAgd2hlbiA6bHR1bgor
ICAgICAgICAgICAgZW1pdEJyYW5jaEZvclVub3JkZXJlZChvcGVyYW5kc1swXSwgb3BlcmFuZHNb
MV0sIG9wZXJhbmRzWzJdLCBwcmVjaXNpb24pCisgICAgICAgICAgICBlbWl0QnJhbmNoRm9yVGVz
dCgiZmx0Iiwgb3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdLCAiYm5leiIsIG9wZXJhbmRzWzJdLCBw
cmVjaXNpb24pCisgICAgICAgIHdoZW4gOmx0ZXF1bgorICAgICAgICAgICAgZW1pdEJyYW5jaEZv
clVub3JkZXJlZChvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzJdLCBwcmVjaXNp
b24pCisgICAgICAgICAgICBlbWl0QnJhbmNoRm9yVGVzdCgiZmxlIiwgb3BlcmFuZHNbMF0sIG9w
ZXJhbmRzWzFdLCAiYm5leiIsIG9wZXJhbmRzWzJdLCBwcmVjaXNpb24pCisgICAgICAgIHdoZW4g
Omd0dW4KKyAgICAgICAgICAgIGVtaXRCcmFuY2hGb3JVbm9yZGVyZWQob3BlcmFuZHNbMF0sIG9w
ZXJhbmRzWzFdLCBvcGVyYW5kc1syXSwgcHJlY2lzaW9uKQorICAgICAgICAgICAgZW1pdEJyYW5j
aEZvclRlc3QoImZsdCIsIG9wZXJhbmRzWzFdLCBvcGVyYW5kc1swXSwgImJuZXoiLCBvcGVyYW5k
c1syXSwgcHJlY2lzaW9uKQorICAgICAgICB3aGVuIDpndGVxdW4KKyAgICAgICAgICAgIGVtaXRC
cmFuY2hGb3JVbm9yZGVyZWQob3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdLCBvcGVyYW5kc1syXSwg
cHJlY2lzaW9uKQorICAgICAgICAgICAgZW1pdEJyYW5jaEZvclRlc3QoImZsZSIsIG9wZXJhbmRz
WzFdLCBvcGVyYW5kc1swXSwgImJuZXoiLCBvcGVyYW5kc1syXSwgcHJlY2lzaW9uKQorICAgICAg
ICBlbHNlCisgICAgICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgdGVzdCIKKyAgICAgICAgZW5k
CisgICAgZWxzZQorICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFu
ZHMpCisgICAgZW5kCitlbmQKKworZGVmIHJpc2N2NjRFbWl0RlBSb3VuZE9wZXJhdGlvbihvcGVy
YW5kcywgcHJlY2lzaW9uLCByb3VuZGluZ01vZGUpCisgICAgZGVmIGludFN1ZmZpeEZvclByZWNp
c2lvbihwcmVjaXNpb24pCisgICAgICAgIGNhc2UgcHJlY2lzaW9uCisgICAgICAgIHdoZW4gOnMK
KyAgICAgICAgICAgICJ3IgorICAgICAgICB3aGVuIDpkCisgICAgICAgICAgICAibCIKKyAgICAg
ICAgZWxzZQorICAgICAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIHByZWNpc2lvbiIKKyAgICAg
ICAgZW5kCisgICAgZW5kCisKKyAgICBkZWYgZnBTdWZmaXhGb3JQcmVjaXNpb24ocHJlY2lzaW9u
KQorICAgICAgICBjYXNlIHByZWNpc2lvbgorICAgICAgICB3aGVuIDpzCisgICAgICAgICAgICAi
cyIKKyAgICAgICAgd2hlbiA6ZAorICAgICAgICAgICAgImQiCisgICAgICAgIGVsc2UKKyAgICAg
ICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCBwcmVjaXNpb24iCisgICAgICAgIGVuZAorICAgIGVu
ZAorCisgICAgaW50U3VmZml4ID0gaW50U3VmZml4Rm9yUHJlY2lzaW9uKHByZWNpc2lvbikKKyAg
ICBmcFN1ZmZpeCA9IGZwU3VmZml4Rm9yUHJlY2lzaW9uKHByZWNpc2lvbikKKworICAgIGNhc2Ug
cmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICB3aGVuIFtGUFJlZ2lzdGVySUQsIEZQ
UmVnaXN0ZXJJRF0KKyAgICAgICAgJGFzbS5wdXRzICJmY3Z0LiN7aW50U3VmZml4fS4je2ZwU3Vm
Zml4fSB4MzEsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAje3JvdW5kaW5nTW9kZX0i
CisgICAgICAgICRhc20ucHV0cyAiZmN2dC4je2ZwU3VmZml4fS4je2ludFN1ZmZpeH0gI3tvcGVy
YW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSwgI3tyb3VuZGluZ01vZGV9IgorICAgIGVsc2UK
KyAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgIGVu
ZAorZW5kCisKK2RlZiByaXNjdjY0RW1pdEZQQ29udmVydE9wZXJhdGlvbihvcGVyYW5kcywgZnJv
bVR5cGUsIHRvVHlwZSwgcm91bmRpbmdNb2RlKQorICAgIGRlZiBpbnRTdWZmaXhGb3JUeXBlKHR5
cGUpCisgICAgICAgIGNhc2UgdHlwZQorICAgICAgICB3aGVuIDp3CisgICAgICAgICAgICAidyIK
KyAgICAgICAgd2hlbiA6d3UKKyAgICAgICAgICAgICJ3dSIKKyAgICAgICAgd2hlbiA6bAorICAg
ICAgICAgICAgImwiCisgICAgICAgIHdoZW4gOmx1CisgICAgICAgICAgICAibHUiCisgICAgICAg
IGVsc2UKKyAgICAgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCBwcmVjaXNpb24iCisgICAgICAg
IGVuZAorICAgIGVuZAorCisgICAgZGVmIGZwU3VmZml4Rm9yVHlwZSh0eXBlKQorICAgICAgICBj
YXNlIHR5cGUKKyAgICAgICAgd2hlbiA6cworICAgICAgICAgICAgInMiCisgICAgICAgIHdoZW4g
OmQKKyAgICAgICAgICAgICJkIgorICAgICAgICBlbHNlCisgICAgICAgICAgICByYWlzZSAiVW5z
dXBwb3J0ZWQgcHJlY2lzaW9uIgorICAgICAgICBlbmQKKyAgICBlbmQKKworICAgIGNhc2Ugcmlz
Y3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICB3aGVuIFtGUFJlZ2lzdGVySUQsIFJlZ2lz
dGVySURdCisgICAgICAgIGZwU3VmZml4ID0gZnBTdWZmaXhGb3JUeXBlKGZyb21UeXBlKQorICAg
ICAgICBpbnRTdWZmaXggPSBpbnRTdWZmaXhGb3JUeXBlKHRvVHlwZSkKKworICAgICAgICAkYXNt
LnB1dHMgImZjdnQuI3tpbnRTdWZmaXh9LiN7ZnBTdWZmaXh9ICN7b3BlcmFuZHNbMV0ucmlzY3Y2
NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tyb3VuZGluZ01vZGV9
IgorICAgIHdoZW4gW1JlZ2lzdGVySUQsIEZQUmVnaXN0ZXJJRF0KKyAgICAgICAgcmFpc2UgIlVu
c3VwcG9ydGVkIHJvdW5kaW5nIG1vZGUiIHVubGVzcyByb3VuZGluZ01vZGUgPT0gOm5vbmUKKyAg
ICAgICAgaW50U3VmZml4ID0gaW50U3VmZml4Rm9yVHlwZShmcm9tVHlwZSkKKyAgICAgICAgZnBT
dWZmaXggPSBmcFN1ZmZpeEZvclR5cGUodG9UeXBlKQorCisgICAgICAgICRhc20ucHV0cyAiZmN2
dC4je2ZwU3VmZml4fS4je2ludFN1ZmZpeH0gI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0s
ICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgIHdoZW4gW0ZQUmVnaXN0ZXJJRCwg
RlBSZWdpc3RlcklEXQorICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgcm91bmRpbmcgbW9kZSIg
dW5sZXNzIHJvdW5kaW5nTW9kZSA9PSA6bm9uZQorICAgICAgICBmcEZyb21TdWZmaXggPSBmcFN1
ZmZpeEZvclR5cGUoZnJvbVR5cGUpCisgICAgICAgIGZwVG9TdWZmaXggPSBmcFN1ZmZpeEZvclR5
cGUodG9UeXBlKQorCisgICAgICAgICRhc20ucHV0cyAiZmN2dC4je2ZwVG9TdWZmaXh9LiN7ZnBG
cm9tU3VmZml4fSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5y
aXNjdjY0T3BlcmFuZH0iCisgICAgZWxzZQorICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVk
T3BlcmFuZHMob3BlcmFuZHMpCisgICAgZW5kCitlbmQKKworY2xhc3MgUmVnaXN0ZXJJRAorICAg
IGRlZiByaXNjdjY0T3BlcmFuZAorICAgICAgICBjYXNlIEBuYW1lCisgICAgICAgIHdoZW4gJ3Qw
JywgJ2EwJywgJ3dhMCcsICdyMCcKKyAgICAgICAgICAgICd4MTAnCisgICAgICAgIHdoZW4gJ3Qx
JywgJ2ExJywgJ3dhMScsICdyMScKKyAgICAgICAgICAgICd4MTEnCisgICAgICAgIHdoZW4gJ3Qy
JywgJ2EyJywgJ3dhMicKKyAgICAgICAgICAgICd4MTInCisgICAgICAgIHdoZW4gJ3QzJywgJ2Ez
JywgJ3dhMycKKyAgICAgICAgICAgICd4MTMnCisgICAgICAgIHdoZW4gJ3Q0JywgJ2E0JywgJ3dh
NCcKKyAgICAgICAgICAgICd4MTQnCisgICAgICAgIHdoZW4gJ3Q1JywgJ2E1JywgJ3dhNScKKyAg
ICAgICAgICAgICd4MTUnCisgICAgICAgIHdoZW4gJ3Q2JywgJ2E2JywgJ3dhNicKKyAgICAgICAg
ICAgICd4MTYnCisgICAgICAgIHdoZW4gJ3Q3JywgJ2E3JywgJ3dhNycKKyAgICAgICAgICAgICd4
MTcnCisgICAgICAgIHdoZW4gJ3dzMCcKKyAgICAgICAgICAgICd4NicKKyAgICAgICAgd2hlbiAn
d3MxJworICAgICAgICAgICAgJ3g3JworICAgICAgICB3aGVuICdjc3IwJworICAgICAgICAgICAg
J3g5JworICAgICAgICB3aGVuICdjc3IxJworICAgICAgICAgICAgJ3gxOCcKKyAgICAgICAgd2hl
biAnY3NyMicKKyAgICAgICAgICAgICd4MTknCisgICAgICAgIHdoZW4gJ2NzcjMnCisgICAgICAg
ICAgICAneDIwJworICAgICAgICB3aGVuICdjc3I0JworICAgICAgICAgICAgJ3gyMScKKyAgICAg
ICAgd2hlbiAnY3NyNScKKyAgICAgICAgICAgICd4MjInCisgICAgICAgIHdoZW4gJ2NzcjYnCisg
ICAgICAgICAgICAneDIzJworICAgICAgICB3aGVuICdjc3I3JworICAgICAgICAgICAgJ3gyNCcK
KyAgICAgICAgd2hlbiAnY3NyOCcKKyAgICAgICAgICAgICd4MjUnCisgICAgICAgIHdoZW4gJ2Nz
cjknCisgICAgICAgICAgICAneDI2JworICAgICAgICB3aGVuICdjc3IxMCcKKyAgICAgICAgICAg
ICd4MjcnCisgICAgICAgIHdoZW4gJ2xyJworICAgICAgICAgICAgJ3JhJworICAgICAgICB3aGVu
ICdzcCcKKyAgICAgICAgICAgICdzcCcKKyAgICAgICAgd2hlbiAnY2ZyJworICAgICAgICAgICAg
J2ZwJworICAgICAgICBlbHNlCisgICAgICAgICAgICByYWlzZSAiQmFkIHJlZ2lzdGVyIG5hbWUg
I3tAbmFtZX0gYXQgI3tjb2RlT3JpZ2luU3RyaW5nfSIKKyAgICAgICAgZW5kCisgICAgZW5kCitl
bmQKKworY2xhc3MgRlBSZWdpc3RlcklECisgICAgZGVmIHJpc2N2NjRPcGVyYW5kCisgICAgICAg
IGNhc2UgQG5hbWUKKyAgICAgICAgd2hlbiAnZnQwJworICAgICAgICAgICAgJ2YwJworICAgICAg
ICB3aGVuICdmdDEnCisgICAgICAgICAgICAnZjEnCisgICAgICAgIHdoZW4gJ2Z0MicKKyAgICAg
ICAgICAgICdmMicKKyAgICAgICAgd2hlbiAnZnQzJworICAgICAgICAgICAgJ2YzJworICAgICAg
ICB3aGVuICdmdDQnCisgICAgICAgICAgICAnZjQnCisgICAgICAgIHdoZW4gJ2Z0NScKKyAgICAg
ICAgICAgICdmNScKKyAgICAgICAgd2hlbiAnY3NmcjAnCisgICAgICAgICAgICAnZjgnCisgICAg
ICAgIHdoZW4gJ2NzZnIxJworICAgICAgICAgICAgJ2Y5JworICAgICAgICB3aGVuICdmYTAnLCAn
d2ZhMCcKKyAgICAgICAgICAgICdmMTAnCisgICAgICAgIHdoZW4gJ2ZhMScsICd3ZmExJworICAg
ICAgICAgICAgJ2YxMScKKyAgICAgICAgd2hlbiAnZmEyJywgJ3dmYTInCisgICAgICAgICAgICAn
ZjEyJworICAgICAgICB3aGVuICdmYTMnLCAnd2ZhMycKKyAgICAgICAgICAgICdmMTMnCisgICAg
ICAgIHdoZW4gJ2ZhNCcsICd3ZmE0JworICAgICAgICAgICAgJ2YxNCcKKyAgICAgICAgd2hlbiAn
ZmE1JywgJ3dmYTUnCisgICAgICAgICAgICAnZjE1JworICAgICAgICB3aGVuICdmYTYnLCAnd2Zh
NicKKyAgICAgICAgICAgICdmMTYnCisgICAgICAgIHdoZW4gJ2ZhNycsICd3ZmE3JworICAgICAg
ICAgICAgJ2YxNycKKyAgICAgICAgd2hlbiAnY3NmcjInCisgICAgICAgICAgICAnZjE4JworICAg
ICAgICB3aGVuICdjc2ZyMycKKyAgICAgICAgICAgICdmMTknCisgICAgICAgIHdoZW4gJ2NzZnI0
JworICAgICAgICAgICAgJ2YyMCcKKyAgICAgICAgd2hlbiAnY3NmcjUnCisgICAgICAgICAgICAn
ZjIxJworICAgICAgICB3aGVuICdjc2ZyNicKKyAgICAgICAgICAgICdmMjInCisgICAgICAgIHdo
ZW4gJ2NzZnI3JworICAgICAgICAgICAgJ2YyMycKKyAgICAgICAgd2hlbiAnY3NmcjgnCisgICAg
ICAgICAgICAnZjI0JworICAgICAgICB3aGVuICdjc2ZyOScKKyAgICAgICAgICAgICdmMjUnCisg
ICAgICAgIHdoZW4gJ2NzZnIxMCcKKyAgICAgICAgICAgICdmMjYnCisgICAgICAgIHdoZW4gJ2Nz
ZnIxMScKKyAgICAgICAgICAgICdmMjcnCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJhaXNl
ICJCYWQgcmVnaXN0ZXIgbmFtZSAje0BuYW1lfSBhdCAje2NvZGVPcmlnaW5TdHJpbmd9IgorICAg
ICAgICBlbmQKKyAgICBlbmQKK2VuZAorCitjbGFzcyBSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyCisg
ICAgZGVmIGluaXRpYWxpemUobmFtZSkKKyAgICAgICAgQG5hbWUgPSBuYW1lCisgICAgZW5kCisK
KyAgICBkZWYgcmlzY3Y2NE9wZXJhbmQKKyAgICAgICAgY2FzZSBAbmFtZQorICAgICAgICB3aGVu
IDp4MzAKKyAgICAgICAgICAgICd4MzAnCisgICAgICAgIHdoZW4gOngzMQorICAgICAgICAgICAg
J3gzMScKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIHNjcmF0
Y2ggcmVnaXN0ZXIiCisgICAgICAgIGVuZAorICAgIGVuZAorCisgICAgZGVmIHNlbGYueDMwCisg
ICAgICAgIFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIubmV3KDp4MzApCisgICAgZW5kCisKKyAgICBk
ZWYgc2VsZi54MzEKKyAgICAgICAgUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci5uZXcoOngzMSkKKyAg
ICBlbmQKK2VuZAorCitjbGFzcyBJbW1lZGlhdGUKKyAgICBkZWYgcmlzY3Y2NE9wZXJhbmQKKyAg
ICAgICAgIiN7dmFsdWV9IgorICAgIGVuZAorCisgICAgZGVmIHJpc2N2NjRSZXF1aXJlc0xvYWQK
KyAgICAgICAgdmFsdWUgPiAweDdmZiBvciB2YWx1ZSA8IC0weDgwMAorICAgIGVuZAorCisgICAg
ZGVmIHJpc2N2NjRMb2FkKHRhcmdldCkKKyAgICAgICAgJGFzbS5wdXRzICJsaSAje3RhcmdldC5y
aXNjdjY0T3BlcmFuZH0sICN7dmFsdWV9IgorICAgIGVuZAorZW5kCisKK2NsYXNzIEFkZHJlc3MK
KyAgICBkZWYgcmlzY3Y2NE9wZXJhbmQKKyAgICAgICAgcmFpc2UgIkludmFsaWQgb2Zmc2V0ICN7
b2Zmc2V0LnZhbHVlfSBhdCAje2NvZGVPcmlnaW5TdHJpbmd9IiBpZiBvZmZzZXQudmFsdWUgPiAw
eDdmZiBvciBvZmZzZXQudmFsdWUgPCAtMHg4MDAKKyAgICAgICAgIiN7b2Zmc2V0LnZhbHVlfSgj
e2Jhc2UucmlzY3Y2NE9wZXJhbmR9KSIKKyAgICBlbmQKKworICAgIGRlZiByaXNjdjY0UmVxdWly
ZXNMb2FkCisgICAgICAgIG9mZnNldC52YWx1ZSA+IDB4N2ZmIG9yIG9mZnNldC52YWx1ZSA8IC0w
eDgwMAorICAgIGVuZAorCisgICAgZGVmIHJpc2N2NjRMb2FkKHRhcmdldCkKKyAgICAgICAgJGFz
bS5wdXRzICJsaSAje3RhcmdldC5yaXNjdjY0T3BlcmFuZH0sICN7b2Zmc2V0LnZhbHVlfSIKKyAg
ICAgICAgJGFzbS5wdXRzICJhZGQgI3t0YXJnZXQucmlzY3Y2NE9wZXJhbmR9LCAje2Jhc2Uucmlz
Y3Y2NE9wZXJhbmR9LCAje3RhcmdldC5yaXNjdjY0T3BlcmFuZH0iCisgICAgZW5kCitlbmQKKwor
Y2xhc3MgQmFzZUluZGV4CisgICAgZGVmIHJpc2N2NjRMb2FkKHRhcmdldCwgc2NyYXRjaCkKKyAg
ICAgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKFtiYXNlLCBpbmRleF0pCisgICAgICAgIHdo
ZW4gW1JlZ2lzdGVySUQsIFJlZ2lzdGVySURdCisgICAgICAgICAgICAkYXNtLnB1dHMgInNsbGkg
I3t0YXJnZXQucmlzY3Y2NE9wZXJhbmR9LCAje2luZGV4LnJpc2N2NjRPcGVyYW5kfSwgI3tzY2Fs
ZVNoaWZ0fSIKKyAgICAgICAgICAgICRhc20ucHV0cyAiYWRkICN7dGFyZ2V0LnJpc2N2NjRPcGVy
YW5kfSwgI3tiYXNlLnJpc2N2NjRPcGVyYW5kfSwgI3t0YXJnZXQucmlzY3Y2NE9wZXJhbmR9Igor
ICAgICAgICAgICAgaWYgb2Zmc2V0LnZhbHVlICE9IDAKKyAgICAgICAgICAgICAgICAkYXNtLnB1
dHMgImxpICN7c2NyYXRjaC5yaXNjdjY0T3BlcmFuZH0sICN7b2Zmc2V0LnZhbHVlfSIKKyAgICAg
ICAgICAgICAgICAkYXNtLnB1dHMgImFkZCAje3RhcmdldC5yaXNjdjY0T3BlcmFuZH0sICN7dGFy
Z2V0LnJpc2N2NjRPcGVyYW5kfSwgI3tzY3JhdGNoLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAg
ICAgIGVuZAorICAgICAgICBlbHNlCisgICAgICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVk
T3BlcmFuZHMoW2Jhc2UsIGluZGV4XSkKKyAgICAgICAgZW5kCisgICAgZW5kCitlbmQKKworY2xh
c3MgSW5zdHJ1Y3Rpb24KKyAgICBkZWYgbG93ZXJSSVNDVjY0CisgICAgICAgIGNhc2Ugb3Bjb2Rl
CisgICAgICAgIHdoZW4gImFkZGkiCisgICAgICAgICAgICByaXNjdjY0RW1pdEFkZGl0aW9uT3Bl
cmF0aW9uKG9wZXJhbmRzLCA6dywgOmFkZCkKKyAgICAgICAgd2hlbiAiYWRkcCIsICJhZGRxIgor
ICAgICAgICAgICAgcmlzY3Y2NEVtaXRBZGRpdGlvbk9wZXJhdGlvbihvcGVyYW5kcywgOmQsIDph
ZGQpCisgICAgICAgIHdoZW4gImFkZGlzIiwgImFkZHBzIgorICAgICAgICAgICAgcmlzY3Y2NFJh
aXNlVW5zdXBwb3J0ZWQKKyAgICAgICAgd2hlbiAic3ViaSIKKyAgICAgICAgICAgIHJpc2N2NjRF
bWl0QWRkaXRpb25PcGVyYXRpb24ob3BlcmFuZHMsIDp3LCA6c3ViKQorICAgICAgICB3aGVuICJz
dWJwIiwgInN1YnEiCisgICAgICAgICAgICByaXNjdjY0RW1pdEFkZGl0aW9uT3BlcmF0aW9uKG9w
ZXJhbmRzLCA6ZCwgOnN1YikKKyAgICAgICAgd2hlbiAic3ViaXMiCisgICAgICAgICAgICByaXNj
djY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3aGVuICJhbmRpIgorICAgICAgICAgICAgcmlz
Y3Y2NEVtaXRMb2dpY2FsT3BlcmF0aW9uKG9wZXJhbmRzLCA6dywgOmFuZCkKKyAgICAgICAgd2hl
biAiYW5kcCIsICJhbmRxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRMb2dpY2FsT3BlcmF0aW9u
KG9wZXJhbmRzLCA6ZCwgOmFuZCkKKyAgICAgICAgd2hlbiAib3JoIgorICAgICAgICAgICAgcmlz
Y3Y2NEVtaXRMb2dpY2FsT3BlcmF0aW9uKG9wZXJhbmRzLCA6aCwgOm9yKQorICAgICAgICB3aGVu
ICJvcmkiCisgICAgICAgICAgICByaXNjdjY0RW1pdExvZ2ljYWxPcGVyYXRpb24ob3BlcmFuZHMs
IDp3LCA6b3IpCisgICAgICAgIHdoZW4gIm9ycCIsICJvcnEiCisgICAgICAgICAgICByaXNjdjY0
RW1pdExvZ2ljYWxPcGVyYXRpb24ob3BlcmFuZHMsIDpkLCA6b3IpCisgICAgICAgIHdoZW4gInhv
cmkiCisgICAgICAgICAgICByaXNjdjY0RW1pdExvZ2ljYWxPcGVyYXRpb24ob3BlcmFuZHMsIDp3
LCA6eG9yKQorICAgICAgICB3aGVuICJ4b3JwIiwgInhvcnEiCisgICAgICAgICAgICByaXNjdjY0
RW1pdExvZ2ljYWxPcGVyYXRpb24ob3BlcmFuZHMsIDpkLCA6eG9yKQorICAgICAgICB3aGVuICJs
c2hpZnRpIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRTaGlmdChvcGVyYW5kcywgOncsIDpsbGVm
dCkKKyAgICAgICAgd2hlbiAibHNoaWZ0cCIsICJsc2hpZnRxIgorICAgICAgICAgICAgcmlzY3Y2
NEVtaXRTaGlmdChvcGVyYW5kcywgOmQsIDpsbGVmdCkKKyAgICAgICAgd2hlbiAicnNoaWZ0aSIK
KyAgICAgICAgICAgIHJpc2N2NjRFbWl0U2hpZnQob3BlcmFuZHMsIDp3LCA6YXJpZ2h0KQorICAg
ICAgICB3aGVuICJyc2hpZnRwIiwgInJzaGlmdHEiCisgICAgICAgICAgICByaXNjdjY0RW1pdFNo
aWZ0KG9wZXJhbmRzLCA6ZCwgOmFyaWdodCkKKyAgICAgICAgd2hlbiAidXJzaGlmdGkiCisgICAg
ICAgICAgICByaXNjdjY0RW1pdFNoaWZ0KG9wZXJhbmRzLCA6dywgOmxyaWdodCkKKyAgICAgICAg
d2hlbiAidXJzaGlmdHAiLCAidXJzaGlmdHEiCisgICAgICAgICAgICByaXNjdjY0RW1pdFNoaWZ0
KG9wZXJhbmRzLCA6ZCwgOmxyaWdodCkKKyAgICAgICAgd2hlbiAibXVsaSIKKyAgICAgICAgICAg
IHJpc2N2NjRFbWl0TXVsRGl2QXJpdGhtZXRpYyhvcGVyYW5kcywgOncsIDptdWwpCisgICAgICAg
IHdoZW4gIm11bHAiLCAibXVscSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0TXVsRGl2QXJpdGht
ZXRpYyhvcGVyYW5kcywgOmQsIDptdWwpCisgICAgICAgIHdoZW4gImRpdmkiCisgICAgICAgICAg
ICByaXNjdjY0RW1pdE11bERpdkFyaXRobWV0aWMob3BlcmFuZHMsIDp3LCA6ZGl2KQorICAgICAg
ICB3aGVuICJkaXZxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRNdWxEaXZBcml0aG1ldGljKG9w
ZXJhbmRzLCA6ZCwgOmRpdikKKyAgICAgICAgd2hlbiAiZGl2aXMiLCAiZGl2cXMiCisgICAgICAg
ICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3aGVuICJuZWdpIgorICAgICAg
ICAgICAgcmlzY3Y2NEVtaXRDb21wbGVtZW50T3BlcmF0aW9uKG9wZXJhbmRzLCA6dywgOm5lZykK
KyAgICAgICAgd2hlbiAibmVncCIsICJuZWdxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb21w
bGVtZW50T3BlcmF0aW9uKG9wZXJhbmRzLCA6ZCwgOm5lZykKKyAgICAgICAgd2hlbiAibm90aSIK
KyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGxlbWVudE9wZXJhdGlvbihvcGVyYW5kcywgOncs
IDpub3QpCisgICAgICAgIHdoZW4gIm5vdHEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBs
ZW1lbnRPcGVyYXRpb24ob3BlcmFuZHMsIDpkLCA6bm90KQorICAgICAgICB3aGVuICJzdG9yZWIi
CisgICAgICAgICAgICByaXNjdjY0RW1pdFN0b3JlKG9wZXJhbmRzLCA6YikKKyAgICAgICAgd2hl
biAic3RvcmVoIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRTdG9yZShvcGVyYW5kcywgOmgpCisg
ICAgICAgIHdoZW4gInN0b3JlaSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0U3RvcmUob3BlcmFu
ZHMsIDp3KQorICAgICAgICB3aGVuICJzdG9yZXAiLCAic3RvcmVxIgorICAgICAgICAgICAgcmlz
Y3Y2NEVtaXRTdG9yZShvcGVyYW5kcywgOmQpCisgICAgICAgIHdoZW4gImxvYWRiIgorICAgICAg
ICAgICAgcmlzY3Y2NEVtaXRMb2FkKG9wZXJhbmRzLCA6YnUsIDpub25lKQorICAgICAgICB3aGVu
ICJsb2FkaCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0TG9hZChvcGVyYW5kcywgOmh1LCA6bm9u
ZSkKKyAgICAgICAgd2hlbiAibG9hZGkiCisgICAgICAgICAgICByaXNjdjY0RW1pdExvYWQob3Bl
cmFuZHMsIDp3dSwgOm5vbmUpCisgICAgICAgIHdoZW4gImxvYWRpcyIKKyAgICAgICAgICAgIHJp
c2N2NjRFbWl0TG9hZChvcGVyYW5kcywgOncsIDpub25lKQorICAgICAgICB3aGVuICJsb2FkcCIs
ICJsb2FkcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0TG9hZChvcGVyYW5kcywgOmQsIDpub25l
KQorICAgICAgICB3aGVuICJsb2FkYnNpIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRMb2FkKG9w
ZXJhbmRzLCA6YiwgOncpCisgICAgICAgIHdoZW4gImxvYWRic3EiCisgICAgICAgICAgICByaXNj
djY0RW1pdExvYWQob3BlcmFuZHMsIDpiLCA6bm9uZSkKKyAgICAgICAgd2hlbiAibG9hZGhzaSIK
KyAgICAgICAgICAgIHJpc2N2NjRFbWl0TG9hZChvcGVyYW5kcywgOmgsIDp3KQorICAgICAgICB3
aGVuICJsb2FkaHNxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRMb2FkKG9wZXJhbmRzLCA6aCwg
Om5vbmUpCisgICAgICAgIHdoZW4gImJmZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29u
ZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6cywgOmVxKQorICAgICAgICB3aGVuICJi
Zmx0IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChv
cGVyYW5kcywgOnMsIDpsdCkKKyAgICAgICAgd2hlbiAiYmZndCIKKyAgICAgICAgICAgIHJpc2N2
NjRFbWl0RlBDb25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3BlcmFuZHMsIDpzLCA6Z3QpCisgICAg
ICAgIHdoZW4gImJmbHR1biIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb25kaXRpb25hbEJy
YW5jaEZvclRlc3Qob3BlcmFuZHMsIDpzLCA6bHR1bikKKyAgICAgICAgd2hlbiAiYmZsdGVxdW4i
CisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJh
bmRzLCA6cywgOmx0ZXF1bikKKyAgICAgICAgd2hlbiAiYmZndHVuIgorICAgICAgICAgICAgcmlz
Y3Y2NEVtaXRGUENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOnMsIDpndHVuKQor
ICAgICAgICB3aGVuICJiZmd0ZXF1biIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb25kaXRp
b25hbEJyYW5jaEZvclRlc3Qob3BlcmFuZHMsIDpzLCA6Z3RlcXVuKQorICAgICAgICB3aGVuICJi
ZGVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChv
cGVyYW5kcywgOmQsIDplcSkKKyAgICAgICAgd2hlbiAiYmRuZXEiCisgICAgICAgICAgICByaXNj
djY0RW1pdEZQQ29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6ZCwgOm5lcSkKKyAg
ICAgICAgd2hlbiAiYmRsdCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb25kaXRpb25hbEJy
YW5jaEZvclRlc3Qob3BlcmFuZHMsIDpkLCA6bHQpCisgICAgICAgIHdoZW4gImJkbHRlcSIKKyAg
ICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3BlcmFuZHMs
IDpkLCA6bHRlcSkKKyAgICAgICAgd2hlbiAiYmRndCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0
RlBDb25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3BlcmFuZHMsIDpkLCA6Z3QpCisgICAgICAgIHdo
ZW4gImJkZ3RlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb25kaXRpb25hbEJyYW5jaEZv
clRlc3Qob3BlcmFuZHMsIDpkLCA6Z3RlcSkKKyAgICAgICAgd2hlbiAiYmRlcXVuIgorICAgICAg
ICAgICAgcmlzY3Y2NEVtaXRGUENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOmQs
IDplcXVuKQorICAgICAgICB3aGVuICJiZG5lcXVuIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRG
UENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOmQsIDpuZXF1bikKKyAgICAgICAg
d2hlbiAiYmRsdHVuIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbmRpdGlvbmFsQnJhbmNo
Rm9yVGVzdChvcGVyYW5kcywgOmQsIDpsdHVuKQorICAgICAgICB3aGVuICJiZGx0ZXF1biIKKyAg
ICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3BlcmFuZHMs
IDpkLCA6bHRlcXVuKQorICAgICAgICB3aGVuICJiZGd0dW4iCisgICAgICAgICAgICByaXNjdjY0
RW1pdEZQQ29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6ZCwgOmd0dW4pCisgICAg
ICAgIHdoZW4gImJkZ3RlcXVuIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbmRpdGlvbmFs
QnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOmQsIDpndGVxdW4pCisgICAgICAgIHdoZW4gInRkMmki
LCAiYmNkMmkiLCAiYnRkMmkiCisgICAgICAgICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAor
ICAgICAgICB3aGVuICJtb3ZkeiIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVk
CisgICAgICAgIHdoZW4gInBvcCIKKyAgICAgICAgICAgIHNpemUgPSA4ICogb3BlcmFuZHMuc2l6
ZQorICAgICAgICAgICAgb3BlcmFuZHMuZWFjaF93aXRoX2luZGV4IHsKKyAgICAgICAgICAgICAg
ICB8IG9wLCBpbmRleCB8CisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJsZCAje29wLnJpc2N2
NjRPcGVyYW5kfSwgI3tzaXplIC0gOCAqIChpbmRleCArIDEpfShzcCkiCisgICAgICAgICAgICB9
CisgICAgICAgICAgICAkYXNtLnB1dHMgImFkZGkgc3AsIHNwLCAje3NpemV9IgorICAgICAgICB3
aGVuICJwdXNoIgorICAgICAgICAgICAgc2l6ZSA9IDggKiBvcGVyYW5kcy5zaXplCisgICAgICAg
ICAgICAkYXNtLnB1dHMgImFkZGkgc3AsIHNwLCAjey1zaXplfSIKKyAgICAgICAgICAgIG9wZXJh
bmRzLnJldmVyc2UuZWFjaF93aXRoX2luZGV4IHsKKyAgICAgICAgICAgICAgICB8IG9wLCBpbmRl
eCB8CisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJzZCAje29wLnJpc2N2NjRPcGVyYW5kfSwg
I3tzaXplIC0gOCAqIChpbmRleCArIDEpfShzcCkiCisgICAgICAgICAgICB9CisgICAgICAgIHdo
ZW4gIm1vdmUiCisgICAgICAgICAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMp
CisgICAgICAgICAgICB3aGVuIFtSZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAgICAgICAgICAg
ICAgICRhc20ucHV0cyAibXYgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFu
ZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgd2hlbiBbSW1tZWRpYXRlLCBSZWdp
c3RlcklEXQorICAgICAgICAgICAgICAgICRhc20ucHV0cyAibGkgI3tvcGVyYW5kc1sxXS5yaXNj
djY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAg
ZWxzZQorICAgICAgICAgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVy
YW5kcykKKyAgICAgICAgICAgIGVuZAorICAgICAgICB3aGVuICJzeGIyaSIKKyAgICAgICAgICAg
IHJpc2N2NjRFbWl0Qml0RXh0ZW5zaW9uKG9wZXJhbmRzLCA6YiwgOncsIDpzaWduKQorICAgICAg
ICB3aGVuICJzeGIycSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Qml0RXh0ZW5zaW9uKG9wZXJh
bmRzLCA6YiwgOmQsIDpzaWduKQorICAgICAgICB3aGVuICJzeGgyaSIKKyAgICAgICAgICAgIHJp
c2N2NjRFbWl0Qml0RXh0ZW5zaW9uKG9wZXJhbmRzLCA6aCwgOncsIDpzaWduKQorICAgICAgICB3
aGVuICJzeGgycSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Qml0RXh0ZW5zaW9uKG9wZXJhbmRz
LCA6aCwgOmQsIDpzaWduKQorICAgICAgICB3aGVuICJzeGkycCIsICJzeGkycSIKKyAgICAgICAg
ICAgIHJpc2N2NjRFbWl0Qml0RXh0ZW5zaW9uKG9wZXJhbmRzLCA6dywgOmQsIDpzaWduKQorICAg
ICAgICB3aGVuICJ6eGkycCIsICJ6eGkycSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Qml0RXh0
ZW5zaW9uKG9wZXJhbmRzLCA6dywgOmQsIDp6ZXJvKQorICAgICAgICB3aGVuICJub3AiCisgICAg
ICAgICAgICAkYXNtLnB1dHMgIm5vcCIKKyAgICAgICAgd2hlbiAiYmJlcSIKKyAgICAgICAgICAg
IHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFuZHMsIDpiLCA6ZXEpCisgICAgICAg
IHdoZW4gImJpZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9w
ZXJhbmRzLCA6dywgOmVxKQorICAgICAgICB3aGVuICJicGVxIiwgImJxZXEiCisgICAgICAgICAg
ICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6ZCwgOmVxKQorICAgICAg
ICB3aGVuICJiYm5lcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2go
b3BlcmFuZHMsIDpiLCA6bmVxKQorICAgICAgICB3aGVuICJiaW5lcSIKKyAgICAgICAgICAgIHJp
c2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFuZHMsIDp3LCA6bmVxKQorICAgICAgICB3
aGVuICJicG5lcSIsICJicW5lcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxC
cmFuY2gob3BlcmFuZHMsIDpkLCA6bmVxKQorICAgICAgICB3aGVuICJiYmEiCisgICAgICAgICAg
ICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6YiwgOmEpCisgICAgICAg
IHdoZW4gImJpYSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2gob3Bl
cmFuZHMsIDp3LCA6YSkKKyAgICAgICAgd2hlbiAiYnBhIiwgImJxYSIKKyAgICAgICAgICAgIHJp
c2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFuZHMsIDpkLCA6YSkKKyAgICAgICAgd2hl
biAiYmJhZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJh
bmRzLCA6YiwgOmFlcSkKKyAgICAgICAgd2hlbiAiYmlhZXEiCisgICAgICAgICAgICByaXNjdjY0
RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6dywgOmFlcSkKKyAgICAgICAgd2hlbiAi
YnBhZXEiLCAiYnFhZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNo
KG9wZXJhbmRzLCA6ZCwgOmFlcSkKKyAgICAgICAgd2hlbiAiYmJiIgorICAgICAgICAgICAgcmlz
Y3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywgOmIsIDpiKQorICAgICAgICB3aGVu
ICJiaWIiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRz
LCA6dywgOmIpCisgICAgICAgIHdoZW4gImJwYiIsICJicWIiCisgICAgICAgICAgICByaXNjdjY0
RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6ZCwgOmIpCisgICAgICAgIHdoZW4gImJi
YmVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywg
OmIsIDpiZXEpCisgICAgICAgIHdoZW4gImJpYmVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRD
b25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywgOncsIDpiZXEpCisgICAgICAgIHdoZW4gImJwYmVx
IiwgImJxYmVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVy
YW5kcywgOmQsIDpiZXEpCisgICAgICAgIHdoZW4gImJiZ3QiCisgICAgICAgICAgICByaXNjdjY0
RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6YiwgOmd0KQorICAgICAgICB3aGVuICJi
aWd0IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywg
OncsIDpndCkKKyAgICAgICAgd2hlbiAiYnBndCIsICJicWd0IgorICAgICAgICAgICAgcmlzY3Y2
NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywgOmQsIDpndCkKKyAgICAgICAgd2hlbiAi
YmJndGVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5k
cywgOmIsIDpndGVxKQorICAgICAgICB3aGVuICJiaWd0ZXEiCisgICAgICAgICAgICByaXNjdjY0
RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6dywgOmd0ZXEpCisgICAgICAgIHdoZW4g
ImJwZ3RlcSIsICJicWd0ZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJh
bmNoKG9wZXJhbmRzLCA6ZCwgOmd0ZXEpCisgICAgICAgIHdoZW4gImJibHQiCisgICAgICAgICAg
ICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6YiwgOmx0KQorICAgICAg
ICB3aGVuICJiaWx0IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChv
cGVyYW5kcywgOncsIDpsdCkKKyAgICAgICAgd2hlbiAiYnBsdCIsICJicWx0IgorICAgICAgICAg
ICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywgOmQsIDpsdCkKKyAgICAg
ICAgd2hlbiAiYmJsdGVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5j
aChvcGVyYW5kcywgOmIsIDpsdGVxKQorICAgICAgICB3aGVuICJiaWx0ZXEiCisgICAgICAgICAg
ICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6dywgOmx0ZXEpCisgICAg
ICAgIHdoZW4gImJwbHRlcSIsICJicWx0ZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRp
dGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6ZCwgOmx0ZXEpCisgICAgICAgIHdoZW4gImJ0YnoiCisg
ICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywg
OmIsIDp6KQorICAgICAgICB3aGVuICJidGJueiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29u
ZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6YiwgOm56KQorICAgICAgICB3aGVuICJi
dGJzIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3Bl
cmFuZHMsIDpiLCA6cykKKyAgICAgICAgd2hlbiAiYnRpeiIKKyAgICAgICAgICAgIHJpc2N2NjRF
bWl0Q29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6dywgOnopCisgICAgICAgIHdo
ZW4gImJ0aW56IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaEZvclRl
c3Qob3BlcmFuZHMsIDp3LCA6bnopCisgICAgICAgIHdoZW4gImJ0aXMiCisgICAgICAgICAgICBy
aXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOncsIDpzKQorICAg
ICAgICB3aGVuICJidHB6IiwgImJ0cXoiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlv
bmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOmQsIDp6KQorICAgICAgICB3aGVuICJidHBueiIs
ICJidHFueiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0
KG9wZXJhbmRzLCA6ZCwgOm56KQorICAgICAgICB3aGVuICJidHBzIiwgImJ0cXMiCisgICAgICAg
ICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOmQsIDpz
KQorICAgICAgICB3aGVuICJiYWRkaXoiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlv
bmFsQnJhbmNoRm9yQWRkaXRpb25PcGVyYXRpb24ob3BlcmFuZHMsIDp3LCA6YWRkLCA6eikKKyAg
ICAgICAgd2hlbiAiYmFkZGlueiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxC
cmFuY2hGb3JBZGRpdGlvbk9wZXJhdGlvbihvcGVyYW5kcywgOncsIDphZGQsIDpueikKKyAgICAg
ICAgd2hlbiAiYmFkZGlzIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5j
aEZvckFkZGl0aW9uT3BlcmF0aW9uKG9wZXJhbmRzLCA6dywgOmFkZCwgOnMpCisgICAgICAgIHdo
ZW4gImJhZGRpbyIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0T3ZlcmZsb3dCcmFuY2hGb3JPcGVy
YXRpb24ob3BlcmFuZHMsIDp3LCA6YWRkKQorICAgICAgICB3aGVuICJiYWRkcHoiLCAiYmFkZHF6
IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaEZvckFkZGl0aW9uT3Bl
cmF0aW9uKG9wZXJhbmRzLCA6ZCwgOmFkZCwgOnopCisgICAgICAgIHdoZW4gImJhZGRwbnoiLCAi
YmFkZHFueiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2hGb3JBZGRp
dGlvbk9wZXJhdGlvbihvcGVyYW5kcywgOmQsIDphZGQsIDpueikKKyAgICAgICAgd2hlbiAiYmFk
ZHBzIiwgImJhZGRxcyIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2hG
b3JBZGRpdGlvbk9wZXJhdGlvbihvcGVyYW5kcywgOmQsIDphZGQsIDpzKQorICAgICAgICB3aGVu
ICJiYWRkcG8iLCAiYmFkZHFvIgorICAgICAgICAgICAgcmlzY3Y2NFJhaXNlVW5zdXBwb3J0ZWQK
KyAgICAgICAgd2hlbiAiYnN1Yml6IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25h
bEJyYW5jaEZvckFkZGl0aW9uT3BlcmF0aW9uKG9wZXJhbmRzLCA6dywgOnN1YiwgOnopCisgICAg
ICAgIHdoZW4gImJzdWJpbnoiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJh
bmNoRm9yQWRkaXRpb25PcGVyYXRpb24ob3BlcmFuZHMsIDp3LCA6c3ViLCA6bnopCisgICAgICAg
IHdoZW4gImJzdWJpcyIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2hG
b3JBZGRpdGlvbk9wZXJhdGlvbihvcGVyYW5kcywgOncsIDpzdWIsIDpzKQorICAgICAgICB3aGVu
ICJic3ViaW8iCisgICAgICAgICAgICByaXNjdjY0RW1pdE92ZXJmbG93QnJhbmNoRm9yT3BlcmF0
aW9uKG9wZXJhbmRzLCA6dywgOnN1YikKKyAgICAgICAgd2hlbiAiYm11bGl6IgorICAgICAgICAg
ICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaEZvck11bHRpcGxpY2F0aW9uT3BlcmF0aW9u
KG9wZXJhbmRzLCA6dywgOnopCisgICAgICAgIHdoZW4gImJtdWxpbnoiCisgICAgICAgICAgICBy
aXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoRm9yTXVsdGlwbGljYXRpb25PcGVyYXRpb24ob3Bl
cmFuZHMsIDp3LCA6bnopCisgICAgICAgIHdoZW4gImJtdWxpcyIKKyAgICAgICAgICAgIHJpc2N2
NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2hGb3JNdWx0aXBsaWNhdGlvbk9wZXJhdGlvbihvcGVyYW5k
cywgOncsIDpzKQorICAgICAgICB3aGVuICJibXVsaW8iCisgICAgICAgICAgICByaXNjdjY0RW1p
dE92ZXJmbG93QnJhbmNoRm9yT3BlcmF0aW9uKG9wZXJhbmRzLCA6dywgOm11bCkKKyAgICAgICAg
d2hlbiAiYm9yaXoiLCAiYm9yaW56IiwgImJvcmlzIiwgImJvcmlvIgorICAgICAgICAgICAgcmlz
Y3Y2NFJhaXNlVW5zdXBwb3J0ZWQKKyAgICAgICAgd2hlbiAiam1wIgorICAgICAgICAgICAgY2Fz
ZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgICAgICAgICAgd2hlbiBbUmVnaXN0
ZXJJRCwgSW1tZWRpYXRlXQorICAgICAgICAgICAgICAgICRhc20ucHV0cyAianIgI3tvcGVyYW5k
c1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICB3aGVuIFtCYXNlSW5kZXgsIEltbWVk
aWF0ZSwgSW1tZWRpYXRlXQorICAgICAgICAgICAgICAgIG9wZXJhbmRzWzBdLnJpc2N2NjRMb2Fk
KFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxLCBSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMCkK
KyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImxkIHgzMSwgMCh4MzEpIgorICAgICAgICAgICAg
ICAgICRhc20ucHV0cyAianIgeDMxIgorICAgICAgICAgICAgd2hlbiBbQWRkcmVzcywgSW1tZWRp
YXRlXQorICAgICAgICAgICAgICAgIGlmIG9wZXJhbmRzWzBdLnJpc2N2NjRSZXF1aXJlc0xvYWQK
KyAgICAgICAgICAgICAgICAgICAgb3BlcmFuZHNbMF0ucmlzY3Y2NExvYWQoUklTQ1Y2NFNjcmF0
Y2hSZWdpc3Rlci54MzEpCisgICAgICAgICAgICAgICAgICAgICRhc20ucHV0cyAibGQgeDMxLCAw
KHgzMSkiCisgICAgICAgICAgICAgICAgICAgICRhc20ucHV0cyAianIgeDMxIgorICAgICAgICAg
ICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJsZCB4MzEsICN7b3Bl
cmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMg
ImpyIHgzMSIKKyAgICAgICAgICAgICAgICBlbmQKKyAgICAgICAgICAgIHdoZW4gW0xhYmVsUmVm
ZXJlbmNlXQorICAgICAgICAgICAgICAgICRhc20ucHV0cyAidGFpbCAje29wZXJhbmRzWzBdLmFz
bUxhYmVsfSIKKyAgICAgICAgICAgIHdoZW4gW0xvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAg
ICAgICAgICAgJGFzbS5wdXRzICJ0YWlsICN7b3BlcmFuZHNbMF0uYXNtTGFiZWx9IgorICAgICAg
ICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5k
cyhvcGVyYW5kcykKKyAgICAgICAgICAgIGVuZAorICAgICAgICB3aGVuICJjYWxsIgorICAgICAg
ICAgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgICAgICAgICAgd2hl
biBbUmVnaXN0ZXJJRCwgSW1tZWRpYXRlXQorICAgICAgICAgICAgICAgICRhc20ucHV0cyAiamFs
ciAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgIHdoZW4gW0FkZHJl
c3MsIEltbWVkaWF0ZV0KKyAgICAgICAgICAgICAgICBpZiBvcGVyYW5kc1swXS5yaXNjdjY0UmVx
dWlyZXNMb2FkCisgICAgICAgICAgICAgICAgICAgIG9wZXJhbmRzWzBdLnJpc2N2NjRMb2FkKFJJ
U0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxKQorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMg
ImxkIHgzMSwgMCh4MzEpIgorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImphbHIgeDMx
IgorICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJs
ZCB4MzEsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgICAg
ICAkYXNtLnB1dHMgImphbHIgeDMxIgorICAgICAgICAgICAgICAgIGVuZAorICAgICAgICAgICAg
d2hlbiBbTGFiZWxSZWZlcmVuY2VdCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJjYWxsICN7
b3BlcmFuZHNbMF0uYXNtTGFiZWx9IgorICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAg
IHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICAgICAgICAgIGVu
ZAorICAgICAgICB3aGVuICJicmVhayIKKyAgICAgICAgICAgICRhc20ucHV0cyAiZWJyZWFrIgor
ICAgICAgICB3aGVuICJyZXQiCisgICAgICAgICAgICAkYXNtLnB1dHMgInJldCIKKyAgICAgICAg
d2hlbiAiY2JlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVyYW5kcywgOmIs
IDplcSkKKyAgICAgICAgd2hlbiAiY2llcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFy
ZShvcGVyYW5kcywgOncsIDplcSkKKyAgICAgICAgd2hlbiAiY3BlcSIsICJjcWVxIgorICAgICAg
ICAgICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6ZCwgOmVxKQorICAgICAgICB3aGVu
ICJjYm5lcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVyYW5kcywgOmIsIDpu
ZXEpCisgICAgICAgIHdoZW4gImNpbmVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb21wYXJl
KG9wZXJhbmRzLCA6dywgOm5lcSkKKyAgICAgICAgd2hlbiAiY3BuZXEiLCAiY3FuZXEiCisgICAg
ICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDpkLCA6bmVxKQorICAgICAgICB3
aGVuICJjYmEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDpiLCA6
YSkKKyAgICAgICAgd2hlbiAiY2lhIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9w
ZXJhbmRzLCA6dywgOmEpCisgICAgICAgIHdoZW4gImNwYSIsICJjcWEiCisgICAgICAgICAgICBy
aXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDpkLCA6YSkKKyAgICAgICAgd2hlbiAiY2JhZXEi
CisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDpiLCA6YWVxKQorICAg
ICAgICB3aGVuICJjaWFlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVyYW5k
cywgOncsIDphZXEpCisgICAgICAgIHdoZW4gImNwYWVxIiwgImNxYWVxIgorICAgICAgICAgICAg
cmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6ZCwgOmFlcSkKKyAgICAgICAgd2hlbiAiY2Ji
IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6YiwgOmIpCisgICAg
ICAgIHdoZW4gImNpYiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVyYW5kcywg
OncsIDpiKQorICAgICAgICB3aGVuICJjcGIiLCAiY3FiIgorICAgICAgICAgICAgcmlzY3Y2NEVt
aXRDb21wYXJlKG9wZXJhbmRzLCA6ZCwgOmIpCisgICAgICAgIHdoZW4gImNiYmVxIgorICAgICAg
ICAgICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6YiwgOmJlcSkKKyAgICAgICAgd2hl
biAiY2liZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDp3LCA6
YmVxKQorICAgICAgICB3aGVuICJjcGJlcSIsICJjcWJlcSIKKyAgICAgICAgICAgIHJpc2N2NjRF
bWl0Q29tcGFyZShvcGVyYW5kcywgOmQsIDpiZXEpCisgICAgICAgIHdoZW4gImNibHQiCisgICAg
ICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDpiLCA6bHQpCisgICAgICAgIHdo
ZW4gImNpbHQiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDp3LCA6
bHQpCisgICAgICAgIHdoZW4gImNwbHQiLCAiY3FsdCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0
Q29tcGFyZShvcGVyYW5kcywgOmQsIDpsdCkKKyAgICAgICAgd2hlbiAiY2JsdGVxIgorICAgICAg
ICAgICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6YiwgOmx0ZXEpCisgICAgICAgIHdo
ZW4gImNpbHRlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVyYW5kcywgOncs
IDpsdGVxKQorICAgICAgICB3aGVuICJjcGx0ZXEiLCAiY3FsdGVxIgorICAgICAgICAgICAgcmlz
Y3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6ZCwgOmx0ZXEpCisgICAgICAgIHdoZW4gImNiZ3Qi
CisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDpiLCA6Z3QpCisgICAg
ICAgIHdoZW4gImNpZ3QiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMs
IDp3LCA6Z3QpCisgICAgICAgIHdoZW4gImNwZ3QiLCAiY3FndCIKKyAgICAgICAgICAgIHJpc2N2
NjRFbWl0Q29tcGFyZShvcGVyYW5kcywgOmQsIDpndCkKKyAgICAgICAgd2hlbiAiY2JndGVxIgor
ICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6YiwgOmd0ZXEpCisgICAg
ICAgIHdoZW4gImNpZ3RlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVyYW5k
cywgOncsIDpndGVxKQorICAgICAgICB3aGVuICJjcGd0ZXEiLCAiY3FndGVxIgorICAgICAgICAg
ICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6ZCwgOmd0ZXEpCisgICAgICAgIHdoZW4g
InRieiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0VGVzdChvcGVyYW5kcywgOmIsIDp6KQorICAg
ICAgICB3aGVuICJ0Ym56IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRUZXN0KG9wZXJhbmRzLCA6
YiwgOm56KQorICAgICAgICB3aGVuICJ0aXoiCisgICAgICAgICAgICByaXNjdjY0RW1pdFRlc3Qo
b3BlcmFuZHMsIDp3LCA6eikKKyAgICAgICAgd2hlbiAidGlueiIKKyAgICAgICAgICAgIHJpc2N2
NjRFbWl0VGVzdChvcGVyYW5kcywgOncsIDpueikKKyAgICAgICAgd2hlbiAidHB6IiwgInRxeiIK
KyAgICAgICAgICAgIHJpc2N2NjRFbWl0VGVzdChvcGVyYW5kcywgOmQsIDp6KQorICAgICAgICB3
aGVuICJ0cG56IiwgInRxbnoiCisgICAgICAgICAgICByaXNjdjY0RW1pdFRlc3Qob3BlcmFuZHMs
IDpkLCA6bnopCisgICAgICAgIHdoZW4gInRicyIsICJ0aXMiLCAidHBzIiwgInRxcyIKKyAgICAg
ICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAgIHdoZW4gInBlZWsiLCAicG9r
ZSIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAgIHdoZW4gImJv
IiwgImJzIiwgImJ6IiwgImJueiIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVk
CisgICAgICAgIHdoZW4gImxlYXAiLCAibGVhcSIKKyAgICAgICAgICAgIGNhc2UgcmlzY3Y2NE9w
ZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICAgICAgICAgIHdoZW4gW0FkZHJlc3MsIFJlZ2lzdGVy
SURdCisgICAgICAgICAgICAgICAgaWYgb3BlcmFuZHNbMF0ucmlzY3Y2NFJlcXVpcmVzTG9hZAor
ICAgICAgICAgICAgICAgICAgICBvcGVyYW5kc1swXS5yaXNjdjY0TG9hZChSSVNDVjY0U2NyYXRj
aFJlZ2lzdGVyLngzMSkKKyAgICAgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJtdiAje29wZXJh
bmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgeDMxIgorICAgICAgICAgICAgICAgIGVsc2UKKyAgICAg
ICAgICAgICAgICAgICAgJGFzbS5wdXRzICJhZGRpICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJh
bmR9LCAje29wZXJhbmRzWzBdLmJhc2UucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLm9m
ZnNldC52YWx1ZX0iCisgICAgICAgICAgICAgICAgZW5kCisgICAgICAgICAgICB3aGVuIFtCYXNl
SW5kZXgsIFJlZ2lzdGVySURdCisgICAgICAgICAgICAgICAgb3BlcmFuZHNbMF0ucmlzY3Y2NExv
YWQoUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzEsIFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMw
KQorICAgICAgICAgICAgICAgICRhc20ucHV0cyAibXYgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3Bl
cmFuZH0sIHgzMSIKKyAgICAgICAgICAgIHdoZW4gW0xhYmVsUmVmZXJlbmNlLCBSZWdpc3RlcklE
XQorICAgICAgICAgICAgICAgICRhc20ucHV0cyAibGxhICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9w
ZXJhbmR9LCAje29wZXJhbmRzWzBdLmFzbUxhYmVsfSIKKyAgICAgICAgICAgIGVsc2UKKyAgICAg
ICAgICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAg
ICAgICAgICBlbmQKKyAgICAgICAgd2hlbiAic211bGxpIgorICAgICAgICAgICAgcmlzY3Y2NFJh
aXNlVW5zdXBwb3J0ZWQKKyAgICAgICAgd2hlbiAibWVtZmVuY2UiCisgICAgICAgICAgICAkYXNt
LnB1dHMgImZlbmNlIHJ3LCBydyIKKyAgICAgICAgd2hlbiAiZmVuY2UiCisgICAgICAgICAgICAk
YXNtLnB1dHMgImZlbmNlIgorICAgICAgICB3aGVuICJiZmlxIgorICAgICAgICAgICAgcmlzY3Y2
NFJhaXNlVW5zdXBwb3J0ZWQKKyAgICAgICAgd2hlbiAicGNydG9hZGRyIgorICAgICAgICAgICAg
Y2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgICAgICAgICAgd2hlbiBbTGFi
ZWxSZWZlcmVuY2UsIFJlZ2lzdGVySURdCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJsbGEg
I3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0uYXNtTGFiZWx9Igor
ICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRP
cGVyYW5kcyhvcGVyYW5kcykKKyAgICAgICAgICAgIGVuZAorICAgICAgICB3aGVuICJnbG9iYWxh
ZGRyIgorICAgICAgICAgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAg
ICAgICAgICAgd2hlbiBbTGFiZWxSZWZlcmVuY2UsIFJlZ2lzdGVySURdCisgICAgICAgICAgICAg
ICAgJGFzbS5wdXRzICJsYSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5k
c1swXS5hc21MYWJlbH0iCisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgcmlzY3Y2
NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgICAgICAgICAgZW5kCisgICAg
ICAgIHdoZW4gImxyb3RhdGVpIiwgImxyb3RhdGVxIgorICAgICAgICAgICAgcmlzY3Y2NFJhaXNl
VW5zdXBwb3J0ZWQKKyAgICAgICAgd2hlbiAicnJvdGF0ZWkiLCAicnJvdGF0ZXEiCisgICAgICAg
ICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3aGVuICJtb3ZlZCIKKyAgICAg
ICAgICAgIHJpc2N2NjRFbWl0RlBPcGVyYXRpb24ob3BlcmFuZHMsICJmbXYuZCIpCisgICAgICAg
IHdoZW4gImxvYWRmIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUExvYWQob3BlcmFuZHMsICJm
bHciKQorICAgICAgICB3aGVuICJsb2FkZCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBMb2Fk
KG9wZXJhbmRzLCAiZmxkIikKKyAgICAgICAgd2hlbiAic3RvcmVmIgorICAgICAgICAgICAgcmlz
Y3Y2NEVtaXRGUFN0b3JlKG9wZXJhbmRzLCAiZnN3IikKKyAgICAgICAgd2hlbiAic3RvcmVkIgor
ICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUFN0b3JlKG9wZXJhbmRzLCAiZnNkIikKKyAgICAgICAg
d2hlbiAiYWRkZiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBPcGVyYXRpb24oW29wZXJhbmRz
WzBdLCBvcGVyYW5kc1sxXSwgb3BlcmFuZHNbMV1dLCAiZmFkZC5zIikKKyAgICAgICAgd2hlbiAi
YWRkZCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBPcGVyYXRpb24oW29wZXJhbmRzWzBdLCBv
cGVyYW5kc1sxXSwgb3BlcmFuZHNbMV1dLCAiZmFkZC5kIikKKyAgICAgICAgd2hlbiAic3ViZiIK
KyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBPcGVyYXRpb24oW29wZXJhbmRzWzFdLCBvcGVyYW5k
c1swXSwgb3BlcmFuZHNbMV1dLCAiZnN1Yi5zIikKKyAgICAgICAgd2hlbiAic3ViZCIKKyAgICAg
ICAgICAgIHJpc2N2NjRFbWl0RlBPcGVyYXRpb24oW29wZXJhbmRzWzFdLCBvcGVyYW5kc1swXSwg
b3BlcmFuZHNbMV1dLCAiZnN1Yi5kIikKKyAgICAgICAgd2hlbiAibXVsZiIKKyAgICAgICAgICAg
IHJpc2N2NjRFbWl0RlBPcGVyYXRpb24oW29wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSwgb3BlcmFu
ZHNbMV1dLCAiZm11bC5zIikKKyAgICAgICAgd2hlbiAibXVsZCIKKyAgICAgICAgICAgIHJpc2N2
NjRFbWl0RlBPcGVyYXRpb24oW29wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSwgb3BlcmFuZHNbMV1d
LCAiZm11bC5kIikKKyAgICAgICAgd2hlbiAiZGl2ZiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0
RlBPcGVyYXRpb24oW29wZXJhbmRzWzFdLCBvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV1dLCAiZmRp
di5zIikKKyAgICAgICAgd2hlbiAiZGl2ZCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBPcGVy
YXRpb24oW29wZXJhbmRzWzFdLCBvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV1dLCAiZmRpdi5kIikK
KyAgICAgICAgd2hlbiAic3FydGYiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQT3BlcmF0aW9u
KG9wZXJhbmRzLCAiZnNxcnQucyIpCisgICAgICAgIHdoZW4gInNxcnRkIgorICAgICAgICAgICAg
cmlzY3Y2NEVtaXRGUE9wZXJhdGlvbihvcGVyYW5kcywgImZzcXJ0LmQiKQorICAgICAgICB3aGVu
ICJhYnNmIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUE9wZXJhdGlvbihvcGVyYW5kcywgImZh
YnMucyIpCisgICAgICAgIHdoZW4gImFic2QiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQT3Bl
cmF0aW9uKG9wZXJhbmRzLCAiZmFicy5kIikKKyAgICAgICAgd2hlbiAibmVnZiIKKyAgICAgICAg
ICAgIHJpc2N2NjRFbWl0RlBPcGVyYXRpb24ob3BlcmFuZHMsICJmbmVnLnMiKQorICAgICAgICB3
aGVuICJuZWdkIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUE9wZXJhdGlvbihvcGVyYW5kcywg
ImZuZWcuZCIpCisgICAgICAgIHdoZW4gImZsb29yZiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0
RlBSb3VuZE9wZXJhdGlvbihvcGVyYW5kcywgOnMsICJyZG4iKQorICAgICAgICB3aGVuICJmbG9v
cmQiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQUm91bmRPcGVyYXRpb24ob3BlcmFuZHMsIDpk
LCAicmRuIikKKyAgICAgICAgd2hlbiAiY2VpbGYiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQ
Um91bmRPcGVyYXRpb24ob3BlcmFuZHMsIDpzLCAicnVwIikKKyAgICAgICAgd2hlbiAiY2VpbGQi
CisgICAgICAgICAgICByaXNjdjY0RW1pdEZQUm91bmRPcGVyYXRpb24ob3BlcmFuZHMsIDpkLCAi
cnVwIikKKyAgICAgICAgd2hlbiAicm91bmRmIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUFJv
dW5kT3BlcmF0aW9uKG9wZXJhbmRzLCA6cywgInJuZSIpCisgICAgICAgIHdoZW4gInJvdW5kZCIK
KyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBSb3VuZE9wZXJhdGlvbihvcGVyYW5kcywgOmQsICJy
bmUiKQorICAgICAgICB3aGVuICJ0cnVuY2F0ZWYiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQ
Um91bmRPcGVyYXRpb24ob3BlcmFuZHMsIDpzLCAicnR6IikKKyAgICAgICAgd2hlbiAidHJ1bmNh
dGVkIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUFJvdW5kT3BlcmF0aW9uKG9wZXJhbmRzLCA6
ZCwgInJ0eiIpCisgICAgICAgIHdoZW4gInRydW5jYXRlZjJpIgorICAgICAgICAgICAgcmlzY3Y2
NEVtaXRGUENvbnZlcnRPcGVyYXRpb24ob3BlcmFuZHMsIDpzLCA6d3UsICJydHoiKQorICAgICAg
ICB3aGVuICJ0cnVuY2F0ZWQyaSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb252ZXJ0T3Bl
cmF0aW9uKG9wZXJhbmRzLCA6ZCwgOnd1LCAicnR6IikKKyAgICAgICAgd2hlbiAidHJ1bmNhdGVm
MnEiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29udmVydE9wZXJhdGlvbihvcGVyYW5kcywg
OnMsIDpsdSwgInJ0eiIpCisgICAgICAgIHdoZW4gInRydW5jYXRlZDJxIgorICAgICAgICAgICAg
cmlzY3Y2NEVtaXRGUENvbnZlcnRPcGVyYXRpb24ob3BlcmFuZHMsIDpkLCA6bHUsICJydHoiKQor
ICAgICAgICB3aGVuICJ0cnVuY2F0ZWYyaXMiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29u
dmVydE9wZXJhdGlvbihvcGVyYW5kcywgOnMsIDp3LCAicnR6IikKKyAgICAgICAgd2hlbiAidHJ1
bmNhdGVkMmlzIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbnZlcnRPcGVyYXRpb24ob3Bl
cmFuZHMsIDpkLCA6dywgInJ0eiIpCisgICAgICAgIHdoZW4gInRydW5jYXRlZjJxcyIKKyAgICAg
ICAgICAgIHJpc2N2NjRFbWl0RlBDb252ZXJ0T3BlcmF0aW9uKG9wZXJhbmRzLCA6cywgOmwsICJy
dHoiKQorICAgICAgICB3aGVuICJ0cnVuY2F0ZWQycXMiCisgICAgICAgICAgICByaXNjdjY0RW1p
dEZQQ29udmVydE9wZXJhdGlvbihvcGVyYW5kcywgOmQsIDpsLCAicnR6IikKKyAgICAgICAgd2hl
biAiY2kyZiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb252ZXJ0T3BlcmF0aW9uKG9wZXJh
bmRzLCA6d3UsIDpzLCA6bm9uZSkKKyAgICAgICAgd2hlbiAiY2kyZCIKKyAgICAgICAgICAgIHJp
c2N2NjRFbWl0RlBDb252ZXJ0T3BlcmF0aW9uKG9wZXJhbmRzLCA6d3UsIDpkLCA6bm9uZSkKKyAg
ICAgICAgd2hlbiAiY2kyZnMiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29udmVydE9wZXJh
dGlvbihvcGVyYW5kcywgOncsIDpzLCA6bm9uZSkKKyAgICAgICAgd2hlbiAiY2kyZHMiCisgICAg
ICAgICAgICByaXNjdjY0RW1pdEZQQ29udmVydE9wZXJhdGlvbihvcGVyYW5kcywgOncsIDpkLCA6
bm9uZSkKKyAgICAgICAgd2hlbiAiY3EyZiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb252
ZXJ0T3BlcmF0aW9uKG9wZXJhbmRzLCA6bHUsIDpzLCA6bm9uZSkKKyAgICAgICAgd2hlbiAiY3Ey
ZCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb252ZXJ0T3BlcmF0aW9uKG9wZXJhbmRzLCA6
bHUsIDpkLCA6bm9uZSkKKyAgICAgICAgd2hlbiAiY3EyZnMiCisgICAgICAgICAgICByaXNjdjY0
RW1pdEZQQ29udmVydE9wZXJhdGlvbihvcGVyYW5kcywgOmwsIDpzLCA6bm9uZSkKKyAgICAgICAg
d2hlbiAiY3EyZHMiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29udmVydE9wZXJhdGlvbihv
cGVyYW5kcywgOmwsIDpkLCA6bm9uZSkKKyAgICAgICAgd2hlbiAiY2YyZCIKKyAgICAgICAgICAg
IHJpc2N2NjRFbWl0RlBDb252ZXJ0T3BlcmF0aW9uKG9wZXJhbmRzLCA6cywgOmQsIDpub25lKQor
ICAgICAgICB3aGVuICJjZDJmIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbnZlcnRPcGVy
YXRpb24ob3BlcmFuZHMsIDpkLCA6cywgOm5vbmUpCisgICAgICAgIHdoZW4gInR6Y250aSIsICJ0
emNudHEiCisgICAgICAgICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3aGVu
ICJsemNudGkiLCAibHpjbnRxIgorICAgICAgICAgICAgcmlzY3Y2NFJhaXNlVW5zdXBwb3J0ZWQK
KyAgICAgICAgd2hlbiAiYW5kZiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBCaXR3aXNlT3Bl
cmF0aW9uKG9wZXJhbmRzLCA6cywgImFuZCIpCisgICAgICAgIHdoZW4gImFuZGQiCisgICAgICAg
ICAgICByaXNjdjY0RW1pdEZQQml0d2lzZU9wZXJhdGlvbihvcGVyYW5kcywgOmQsICJhbmQiKQor
ICAgICAgICB3aGVuICJvcmYiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQml0d2lzZU9wZXJh
dGlvbihvcGVyYW5kcywgOnMsICJvciIpCisgICAgICAgIHdoZW4gIm9yZCIKKyAgICAgICAgICAg
IHJpc2N2NjRFbWl0RlBCaXR3aXNlT3BlcmF0aW9uKG9wZXJhbmRzLCA6ZCwgIm9yIikKKyAgICAg
ICAgd2hlbiAiY2ZlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb21wYXJlKG9wZXJhbmRz
LCA6cywgOmVxKQorICAgICAgICB3aGVuICJjZm5lcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0
RlBDb21wYXJlKG9wZXJhbmRzLCA6cywgOm5lcSkKKyAgICAgICAgd2hlbiAiY2ZsdCIKKyAgICAg
ICAgICAgIHJpc2N2NjRFbWl0RlBDb21wYXJlKG9wZXJhbmRzLCA6cywgOmx0KQorICAgICAgICB3
aGVuICJjZmx0ZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29tcGFyZShvcGVyYW5kcywg
OnMsIDpsdGVxKQorICAgICAgICB3aGVuICJjZmd0IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRG
UENvbXBhcmUob3BlcmFuZHMsIDpzLCA6Z3QpCisgICAgICAgIHdoZW4gImNmZ3RlcSIKKyAgICAg
ICAgICAgIHJpc2N2NjRFbWl0RlBDb21wYXJlKG9wZXJhbmRzLCA6cywgOmd0ZXEpCisgICAgICAg
IHdoZW4gImNmbmVxdW4iCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29tcGFyZShvcGVyYW5k
cywgOnMsIDpuZXF1bikKKyAgICAgICAgd2hlbiAiY2RlcSIKKyAgICAgICAgICAgIHJpc2N2NjRF
bWl0RlBDb21wYXJlKG9wZXJhbmRzLCA6ZCwgOmVxKQorICAgICAgICB3aGVuICJjZG5lcSIKKyAg
ICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb21wYXJlKG9wZXJhbmRzLCA6ZCwgOm5lcSkKKyAgICAg
ICAgd2hlbiAiY2RsdCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb21wYXJlKG9wZXJhbmRz
LCA6ZCwgOmx0KQorICAgICAgICB3aGVuICJjZGx0ZXEiCisgICAgICAgICAgICByaXNjdjY0RW1p
dEZQQ29tcGFyZShvcGVyYW5kcywgOmQsIDpsdGVxKQorICAgICAgICB3aGVuICJjZGd0IgorICAg
ICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbXBhcmUob3BlcmFuZHMsIDpkLCA6Z3QpCisgICAgICAg
IHdoZW4gImNkZ3RlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb21wYXJlKG9wZXJhbmRz
LCA6ZCwgOmd0ZXEpCisgICAgICAgIHdoZW4gImNkbmVxdW4iCisgICAgICAgICAgICByaXNjdjY0
RW1pdEZQQ29tcGFyZShvcGVyYW5kcywgOmQsIDpuZXF1bikKKyAgICAgICAgd2hlbiAiZmkyZiIK
KyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb3B5KG9wZXJhbmRzLCA6cykKKyAgICAgICAgd2hl
biAiZmYyaSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb3B5KG9wZXJhbmRzLCA6cykKKyAg
ICAgICAgd2hlbiAiZnAyZCIsICJmcTJkIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvcHko
b3BlcmFuZHMsIDpkKQorICAgICAgICB3aGVuICJmZDJwIiwgImZkMnEiCisgICAgICAgICAgICBy
aXNjdjY0RW1pdEZQQ29weShvcGVyYW5kcywgOmQpCisgICAgICAgIHdoZW4gInRsc19sb2FkcCIs
ICJ0bHNfc3RvcmVwIgorICAgICAgICAgICAgcmlzY3Y2NFJhaXNlVW5zdXBwb3J0ZWQKKyAgICAg
ICAgd2hlbiAibG9hZGxpbmthY3FiIiwgImxvYWRsaW5rYWNxaCIsICJsb2FkbGlua2FjcWkiLCAi
bG9hZGxpbmthY3FxIgorICAgICAgICAgICAgcmlzY3Y2NFJhaXNlVW5zdXBwb3J0ZWQKKyAgICAg
ICAgd2hlbiAic3RvcmVjb25kcmVsYiIsICJzdG9yZWNvbmRyZWxoIiwgInN0b3JlY29uZHJlbGki
LCAic3RvcmVjb25kcmVscSIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisg
ICAgICAgIHdoZW4gImF0b21pY3hjaGdhZGRiIiwgImF0b21pY3hjaGdhZGRoIiwgImF0b21pY3hj
aGdhZGRpIiwgImF0b21pY3hjaGdhZGRxIgorICAgICAgICAgICAgcmlzY3Y2NFJhaXNlVW5zdXBw
b3J0ZWQKKyAgICAgICAgd2hlbiAiYXRvbWljeGNoZ2NsZWFyYiIsICJhdG9taWN4Y2hnY2xlYXJo
IiwgImF0b21pY3hjaGdjbGVhcmkiLCAiYXRvbWljeGNoZ2NsZWFycSIKKyAgICAgICAgICAgIHJp
c2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAgIHdoZW4gImF0b21pY3hjaGdvcmIiLCAiYXRv
bWljeGNoZ29yaCIsICJhdG9taWN4Y2hnb3JpIiwgImF0b21pY3hjaGdvcnEiCisgICAgICAgICAg
ICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3aGVuICJhdG9taWN4Y2hneG9yYiIs
ICJhdG9taWN4Y2hneG9yaCIsICJhdG9taWN4Y2hneG9yaSIsICJhdG9taWN4Y2hneG9ycSIKKyAg
ICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAgIHdoZW4gImF0b21pY3hj
aGdiIiwgImF0b21pY3hjaGdoIiwgImF0b21pY3hjaGdpIiwgImF0b21pY3hjaGdxIgorICAgICAg
ICAgICAgcmlzY3Y2NFJhaXNlVW5zdXBwb3J0ZWQKKyAgICAgICAgd2hlbiAiYXRvbWljd2Vha2Nh
c2IiLCAiYXRvbWljd2Vha2Nhc2giLCAiYXRvbWljd2Vha2Nhc2kiLCAiYXRvbWljd2Vha2Nhc3Ei
CisgICAgICAgICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3aGVuICJhdG9t
aWNsb2FkYiIsICJhdG9taWNsb2FkaCIsICJhdG9taWNsb2FkaSIsICJhdG9taWNsb2FkcSIKKyAg
ICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAgIGVsc2UKKyAgICAgICAg
ICAgIGxvd2VyRGVmYXVsdAorICAgICAgICBlbmQKKyAgICBlbmQKK2VuZApkaWZmIC0tZ2l0IGEv
U291cmNlL1dURi93dGYvUGxhdGZvcm1FbmFibGUuaCBiL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3Jt
RW5hYmxlLmgKaW5kZXggYmJjMDBmNjI5ZmM5YzI4N2E0NWQ4NWI0NjM5NTE4NTgxNDYxY2Q2Zi4u
MDQxYTNlMjhlYzk1OGExNzEyN2MwYjAyNzc4NWNhYWZlMmJiZTI0NiAxMDA2NDQKLS0tIGEvU291
cmNlL1dURi93dGYvUGxhdGZvcm1FbmFibGUuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9y
bUVuYWJsZS5oCkBAIC04ODQsNyArODg0LDcgQEAKICAgIHRoYXQgZXhlY3V0ZXMgZWFjaCBvcGNv
ZGUuIEl0IGNhbm5vdCBiZSBzdXBwb3J0ZWQgYnkgdGhlIENMb29wIHNpbmNlIHRoZXJlJ3Mgbm8g
d2F5IHRvIGVtYmVkIHRoZQogICAgT3Bjb2RlSUQgd29yZCBpbiB0aGUgQ0xvb3AncyBzd2l0Y2gg
c3RhdGVtZW50IGNhc2VzLiBJdCBpcyBhbHNvIGN1cnJlbnRseSBub3QgaW1wbGVtZW50ZWQgZm9y
IE1TVkMuCiAqLwotI2lmICFkZWZpbmVkKEVOQUJMRV9MTElOVF9FTUJFRERFRF9PUENPREVfSUQp
ICYmICFFTkFCTEUoQ19MT09QKSAmJiAhQ09NUElMRVIoTVNWQykgJiYgKENQVShYODYpIHx8IENQ
VShYODZfNjQpIHx8IENQVShBUk02NCkgfHwgKENQVShBUk1fVEhVTUIyKSAmJiBPUyhEQVJXSU4p
KSkKKyNpZiAhZGVmaW5lZChFTkFCTEVfTExJTlRfRU1CRURERURfT1BDT0RFX0lEKSAmJiAhRU5B
QkxFKENfTE9PUCkgJiYgIUNPTVBJTEVSKE1TVkMpICYmIChDUFUoWDg2KSB8fCBDUFUoWDg2XzY0
KSB8fCBDUFUoQVJNNjQpIHx8IChDUFUoQVJNX1RIVU1CMikgJiYgT1MoREFSV0lOKSkgfHwgQ1BV
KFJJU0NWNjQpKQogI2RlZmluZSBFTkFCTEVfTExJTlRfRU1CRURERURfT1BDT0RFX0lEIDEKICNl
bmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UgYi9T
b3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UKaW5kZXggZDc4ZTZkMzQ1YTAwMjViNzAz
YWM4ZjAzNjIyM2VlZDNhNDc1MzhmNS4uMWViOWY4YzExMmM1YTJiZDJjNjAxZmI5Y2YzNzY1MGZk
OTVmM2VkNCAxMDA2NDQKLS0tIGEvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlCisr
KyBiL1NvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZQpAQCAtODQsNyArODQsNyBAQCBt
YWNybyhXRUJLSVRfT1BUSU9OX0JFR0lOKQogICAgICAgICBzZXQoRU5BQkxFX0pJVF9ERUZBVUxU
IE9GRikKICAgICAgICAgc2V0KEVOQUJMRV9GVExfREVGQVVMVCBPRkYpCiAgICAgICAgIHNldChV
U0VfU1lTVEVNX01BTExPQ19ERUZBVUxUIE9GRikKLSAgICAgICAgc2V0KEVOQUJMRV9DX0xPT1Bf
REVGQVVMVCBPTikKKyAgICAgICAgc2V0KEVOQUJMRV9DX0xPT1BfREVGQVVMVCBPRkYpCiAgICAg
ICAgIHNldChFTkFCTEVfU0FNUExJTkdfUFJPRklMRVJfREVGQVVMVCBPRkYpCiAgICAgZWxzZSAo
KQogICAgICAgICBzZXQoRU5BQkxFX0pJVF9ERUZBVUxUIE9GRikKZGlmZiAtLWdpdCBhL0NoYW5n
ZUxvZyBiL0NoYW5nZUxvZwppbmRleCAxNTViNzNlMGVmOTkzNjlkMTFlMTBkMjNlMTg3MTZlYmQ4
NDE3N2MwLi4xNTA0YzYwNDI4YmM5ZDdlYjQ1MzgxYjQxN2M5NDE5MmExNzgxNDE1IDEwMDY0NAot
LS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMjEtMDgt
MjkgIFphbiBEb2JlcnNlayAgPHpkb2JlcnNla0BpZ2FsaWEuY29tPgorCisgICAgICAgIFJJU0NW
NjQgc3VwcG9ydCBpbiBMTEludAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjI5MDM1CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS84MjEyMDkwOD4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNvdXJjZS9j
bWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZToKKyAgICAgICAgRG9uJ3QgZm9yY2UgQ0xvb3AgdG8g
YmUgZGVmYXVsdCBmb3IgUklTQ1Y2NCBhbnltb3JlLgorCiAyMDIxLTA4LTI3ICBTdGVwaGFuIFN6
YWJvICA8c3RlcGhhbi5zemFib0Bzb255LmNvbT4KIAogICAgICAgICBbUGxheVN0YXRpb25dW0NN
YWtlXSBBZGQgY29udHJvbCBvdmVyIHdoZXRoZXIgSmF2YVNjcmlwdENvcmUgc2hvdWxkIGJlIHNo
YXJlZAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>436741</attachid>
            <date>2021-08-29 07:19:25 -0700</date>
            <delta_ts>2021-08-30 08:11:48 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-229035-20210829161923.patch</filename>
            <type>text/plain</type>
            <size>148838</size>
            <attacher name="Zan Dobersek">zan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgxNzQyCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA3
YWNhYjkyZGU2MDE1YWYzNDJmYmFjMzkxMzY3MTNmNjA1MTExMjI3Li4yZGFkNzY1NjJmNDU3MzQ0
Y2MyNWJjNGQ5ZmU5N2NkZGUyODBmYzcxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMDcgQEAKKzIwMjEtMDgtMjkgIFphbiBEb2JlcnNlayAgPHpkb2JlcnNla0BpZ2FsaWEu
Y29tPgorCisgICAgICAgIFJJU0NWNjQgc3VwcG9ydCBpbiBMTEludAorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI5MDM1CisgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS84MjEyMDkwOD4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBJbnRyb2R1Y2UgUklTQ1Y2NCBzdXBwb3J0IGF0IHRoZSBMTGludCBsZXZlbC4g
QWxvbmcgd2l0aCB0aGUgbmVjZXNzYXJ5CisgICAgICAgIG9mZmxpbmVhc20gYmFja2VuZCwgcGxl
bnR5IG9mIG1pc2NlbGxhbmVvdXMgY29kZSBhcm91bmQgTWFjcm9Bc3NlbWJsZXIKKyAgICAgICAg
aW5mcmFzdHJ1Y3R1cmUgaXMgYWxzbyBpbnRyb2R1Y2VkLgorCisgICAgICAgIE9mIHRoZSBleGlz
dGluZyBzdXBwb3J0ZWQgYXJjaGl0ZWN0dXJlcywgUklTQ1Y2NCBpcyBtb3N0IHNpbWlsYXIgdG8K
KyAgICAgICAgQVJNNjQsIHdpdGggdGhlIHNhbWUgd29yZCBzaXplIGFuZCBzaW1pbGFyIHJlZ2lz
dGVyIGFidW5kYW5jZS4gVGhpcyBpcworICAgICAgICBtaXJyb3JlZCBpbiBtb3N0IGNoYW5nZXMg
YXJvdW5kIHRoZSBNYWNyb0Fzc2VtYmxlciBpbmZyYXN0cnVjdHVyZSBhcworICAgICAgICB3ZWxs
IGFzIHVzaW5nIHNhbWUgb3Igc2ltaWxhciBjb2RlcGF0aHMgaW4gTExpbnQgZm9yIHRoZSB0d28g
SVNBcy4KKworICAgICAgICBGb3IgdGhlIE1hY3JvQXNzZW1ibGVyIGluZnJhc3RydWN0dXJlLCBp
dCB3b24ndCBiZSB1c2VkIHVudGlsIHByb3BlciBKSVQKKyAgICAgICAgc3VwcG9ydCBpcyBpbnRy
b2R1Y2VkLCBidXQgdGhlIGJhc2ljIGZhY2lsaXRpZXMgYXJlIHN0aWxsIG5lY2Vzc2FyeSB0bwor
ICAgICAgICBrZWVwIHRoaW5ncyBjb21waWxpbmcgd2l0aG91dCBjb21wbGljYXRpbmcgdGhlIGNv
bmZpZ3VyYXRpb24gbWF0cml4LgorICAgICAgICBNYWNyb0Fzc2VtYmxlclJJU0NWNjQgY2xhc3Mg
cHJvdmlkZXMgbm8tb3AgbWV0aG9kcyB0aHJvdWdoIEMrKyB0ZW1wbGF0ZXMKKyAgICAgICAgd2hp
bGUgUklTQ1Y2NEFzc2VtYmxlciBpcyBhbHNvIGFkZGVkIGluIGEgbGltaXRlZCBmb3JtLgorCisg
ICAgICAgIFRoZSByaXNjdjY0IG9mZmxpbmVhc20gYmFja2VuZCBjb3ZlcnMgYXNzZW1ibHkgZ2Vu
ZXJhdGlvbiBmb3IKKyAgICAgICAgaW5zdHJ1Y3Rpb25zIHRoYXQgYXJlIGV4aGliaXRlZCBieSBM
TEludCBpbiB0aGUgY3VycmVudCBjb25maWd1cmF0aW9uLgorICAgICAgICBJdCBkb2Vzbid0IGNv
dmVyIGluc3RydWN0aW9ucyB0aGF0IGUuZy4gYXJlIG9ubHkgdXNlZCBpbiB0aGUgV2ViQXNzZW1i
bHkKKyAgICAgICAgb3Bjb2RlcywgYW5kIFdlYkFzc2VtYmx5IHdvbid0IGJlIGVuYWJsZWQgdW50
aWwgdGhlIGhpZ2hlciBKSVQgdGllcnMgYXJlCisgICAgICAgIHN1cHBvcnRlZCBhbnl3YXkuCisK
KyAgICAgICAgVGhlIG9mZmxpbmVhc20gYmFja2VuZCdzIGFzc2VtYmx5IGdlbmVyYXRpb24gZm9y
IHNwZWNpZmljIGluc3RydWN0aW9ucworICAgICAgICB1c2VzIHBhdHRlcm4gbWF0Y2hpbmcgb2Yg
b3BlcmFuZCB0eXBlcyBmb3IgYmV0dGVyIG92ZXJ2aWV3IG9mIGhvdworICAgICAgICByZXN1bHRp
bmcgYXNzZW1ibHkgaXMgY29uc3RydWN0ZWQuIFRoZXJlJ3Mgc3RpbGwgY2VydGFpbiBpbXByb3Zl
bWVudHMKKyAgICAgICAgcG9zc2libGUsIGUuZy4gaW4gaG93IHNjcmF0Y2ggcmVnaXN0ZXJzIGZv
ciBtb3JlIGV4cGFuc2l2ZSBvcGVyYXRpb25zCisgICAgICAgIGFyZSBhbGxvY2F0ZWQuCisKKyAg
ICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBTb3VyY2VzLnR4dDoKKyAgICAgICAg
KiBhc3NlbWJsZXIvQWJzdHJhY3RNYWNyb0Fzc2VtYmxlci5oOgorICAgICAgICAqIGFzc2VtYmxl
ci9NYWNyb0Fzc2VtYmxlci5oOgorICAgICAgICAqIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlclJJ
U0NWNjQuY3BwOiBBZGRlZC4KKyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXI6OnByb2JlKToK
KyAgICAgICAgKiBhc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJSSVNDVjY0Lmg6IEFkZGVkLgorICAg
ICAgICBEaXN0b3J0ZWQgYXV0by1nZW5lcmF0ZWQgbWV0aG9kIGxpc3QgcmVtb3ZlZC4gTmVjZXNz
YXJ5IG1ldGhvZHMgYXJlCisgICAgICAgIGludHJvZHVjZWQgdGhyb3VnaCBuby1vcCB0ZW1wbGF0
ZXMgdW50aWwgYWN0dWFsbHkgbmVlZGVkIGZvciBKSVQKKyAgICAgICAgZ2VuZXJhdGlvbi4KKyAg
ICAgICAgKiBhc3NlbWJsZXIvTWF4RnJhbWVFeHRlbnRGb3JTbG93UGF0aENhbGwuaDoKKyAgICAg
ICAgKiBhc3NlbWJsZXIvUGVyZkxvZy5jcHA6CisgICAgICAgICogYXNzZW1ibGVyL1Byb2JlQ29u
dGV4dC5oOgorICAgICAgICAqIGFzc2VtYmxlci9SSVNDVjY0QXNzZW1ibGVyLmg6IEFkZGVkLgor
ICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVyOjpmaXJzdFJlZ2lzdGVyKToKKyAgICAgICAg
KEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6bGFzdFJlZ2lzdGVyKToKKyAgICAgICAgKEpTQzo6UklT
Q1Y2NEFzc2VtYmxlcjo6bnVtYmVyT2ZSZWdpc3RlcnMpOgorICAgICAgICAoSlNDOjpSSVNDVjY0
QXNzZW1ibGVyOjpmaXJzdFNQUmVnaXN0ZXIpOgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1i
bGVyOjpsYXN0U1BSZWdpc3Rlcik6CisgICAgICAgIChKU0M6OlJJU0NWNjRBc3NlbWJsZXI6Om51
bWJlck9mU1BSZWdpc3RlcnMpOgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVyOjpmaXJz
dEZQUmVnaXN0ZXIpOgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVyOjpsYXN0RlBSZWdp
c3Rlcik6CisgICAgICAgIChKU0M6OlJJU0NWNjRBc3NlbWJsZXI6Om51bWJlck9mRlBSZWdpc3Rl
cnMpOgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVyOjpncHJOYW1lKToKKyAgICAgICAg
KEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6c3ByTmFtZSk6CisgICAgICAgIChKU0M6OlJJU0NWNjRB
c3NlbWJsZXI6OmZwck5hbWUpOgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVyOjpSSVND
VjY0QXNzZW1ibGVyKToKKyAgICAgICAgKEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6YnVmZmVyKToK
KyAgICAgICAgKEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6aW52ZXJ0KToKKyAgICAgICAgKEpTQzo6
UklTQ1Y2NEFzc2VtYmxlcjo6Z2V0UmVsb2NhdGVkQWRkcmVzcyk6CisgICAgICAgIChKU0M6OlJJ
U0NWNjRBc3NlbWJsZXI6OmNvZGVTaXplIGNvbnN0KToKKyAgICAgICAgKEpTQzo6UklTQ1Y2NEFz
c2VtYmxlcjo6Z2V0Q2FsbFJldHVybk9mZnNldCk6CisgICAgICAgIChKU0M6OlJJU0NWNjRBc3Nl
bWJsZXI6OmxhYmVsSWdub3JpbmdXYXRjaHBvaW50cyk6CisgICAgICAgIChKU0M6OlJJU0NWNjRB
c3NlbWJsZXI6OmxhYmVsRm9yV2F0Y2hwb2ludCk6CisgICAgICAgIChKU0M6OlJJU0NWNjRBc3Nl
bWJsZXI6OmxhYmVsKToKKyAgICAgICAgKEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6bGlua0p1bXAp
OgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVyOjpsaW5rQ2FsbCk6CisgICAgICAgIChK
U0M6OlJJU0NWNjRBc3NlbWJsZXI6OmxpbmtQb2ludGVyKToKKyAgICAgICAgKEpTQzo6UklTQ1Y2
NEFzc2VtYmxlcjo6bWF4SnVtcFJlcGxhY2VtZW50U2l6ZSk6CisgICAgICAgIChKU0M6OlJJU0NW
NjRBc3NlbWJsZXI6OnBhdGNoYWJsZUp1bXBTaXplKToKKyAgICAgICAgKEpTQzo6UklTQ1Y2NEFz
c2VtYmxlcjo6cmVwYXRjaFBvaW50ZXIpOgorICAgICAgICAoSlNDOjpSSVNDVjY0QXNzZW1ibGVy
OjpyZWxpbmtKdW1wKToKKyAgICAgICAgKEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6cmVsaW5rSnVt
cFRvTm9wKToKKyAgICAgICAgKEpTQzo6UklTQ1Y2NEFzc2VtYmxlcjo6cmVsaW5rQ2FsbCk6Cisg
ICAgICAgIChKU0M6OlJJU0NWNjRBc3NlbWJsZXI6OmRlYnVnT2Zmc2V0KToKKyAgICAgICAgKEpT
Qzo6UklTQ1Y2NEFzc2VtYmxlcjo6Y2FjaGVGbHVzaCk6CisgICAgICAgIChKU0M6OlJJU0NWNjRB
c3NlbWJsZXI6OmZpbGxOb3BzKToKKyAgICAgICAgKiBhc3NlbWJsZXIvUklTQ1Y2NFJlZ2lzdGVy
cy5oOiBBZGRlZC4KKyAgICAgICAgKiBqaXQvRlBSSW5mby5oOgorICAgICAgICAoSlNDOjpGUFJJ
bmZvOjp0b1JlZ2lzdGVyKToKKyAgICAgICAgKEpTQzo6RlBSSW5mbzo6dG9Bcmd1bWVudFJlZ2lz
dGVyKToKKyAgICAgICAgKEpTQzo6RlBSSW5mbzo6dG9JbmRleCk6CisgICAgICAgIChKU0M6OkZQ
UkluZm86OmRlYnVnTmFtZSk6CisgICAgICAgICogaml0L0dQUkluZm8uaDoKKyAgICAgICAgKEpT
Qzo6R1BSSW5mbzo6dG9SZWdpc3Rlcik6CisgICAgICAgIChKU0M6OkdQUkluZm86OnRvQXJndW1l
bnRSZWdpc3Rlcik6CisgICAgICAgIChKU0M6OkdQUkluZm86OnRvSW5kZXgpOgorICAgICAgICAo
SlNDOjpHUFJJbmZvOjpkZWJ1Z05hbWUpOgorICAgICAgICAqIGppdC9SZWdpc3RlclNldC5jcHA6
CisgICAgICAgIChKU0M6OlJlZ2lzdGVyU2V0Ojp2bUNhbGxlZVNhdmVSZWdpc3RlcnMpOgorICAg
ICAgICAoSlNDOjpSZWdpc3RlclNldDo6bGxpbnRCYXNlbGluZUNhbGxlZVNhdmVSZWdpc3RlcnMp
OgorICAgICAgICAqIGxsaW50L0xMSW50RGF0YS5oOgorICAgICAgICAqIGxsaW50L0xMSW50T2Zm
bGluZUFzbUNvbmZpZy5oOgorICAgICAgICAqIGxsaW50L0xvd0xldmVsSW50ZXJwcmV0ZXIuYXNt
OgorICAgICAgICAqIGxsaW50L0xvd0xldmVsSW50ZXJwcmV0ZXI2NC5hc206CisgICAgICAgICog
b2ZmbGluZWFzbS9iYWNrZW5kcy5yYjogUmVmZXJlbmNlIHRoZSByaXNjdjY0IGJhY2tlbmQgYXMg
cmVxdWlyZWQuCisgICAgICAgICogb2ZmbGluZWFzbS9yZWdpc3RlcnMucmI6IExpc3QgYWRkaXRp
b25hbCBwb3NzaWJsZSByZWdpc3RlcnMuCisgICAgICAgICogb2ZmbGluZWFzbS9yaXNjdjY0LnJi
OiBBZGRlZC4KKwogMjAyMS0wOC0yOSAgSm9vbmdodW4gUGFyayAgPGpoNzE4LnBhcmtAc2Ftc3Vu
Zy5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZC4gUmVtb3ZlIHRoZSBidWlsZCB3YXJuaW5nIGJl
bG93IHNpbmNlIHIyODE2MTUuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5nZUxvZyBiL1Nv
dXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDQzYzUwYzYzNGU5ZjE4OGYzZjRiZmY2NTZmOTFjMWJk
YmQ3YzkzZjYuLjRiYTRjMmIzN2E4ZWQ2NTkwZjVmMWM3ZDQyYmJiOGRhNDQ4NzZlODEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTQgQEAKKzIwMjEtMDgtMjkgIFphbiBEb2JlcnNlayAgPHpkb2JlcnNla0BpZ2Fs
aWEuY29tPgorCisgICAgICAgIFJJU0NWNjQgc3VwcG9ydCBpbiBMTEludAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI5MDM1CisgICAgICAgIDxyZGFy
Oi8vcHJvYmxlbS84MjEyMDkwOD4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIHd0Zi9QbGF0Zm9ybUVuYWJsZS5oOgorICAgICAgICBEZWZpbmUgRU5B
QkxFX0xMSU5UX0VNQkVEREVEX09QQ09ERV9JRCB0byAxIGZvciBDUFUoUklTQ1Y2NCkuCisKIDIw
MjEtMDgtMjggIENhbWVyb24gTWNDb3JtYWNrICA8aGV5Y2FtQGFwcGxlLmNvbT4KIAogICAgICAg
ICBNaXNjZWxsYW5lb3VzIHR5cG8gZml4ZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DTWFrZUxpc3RzLnR4
dAppbmRleCA0ZTBlYWZmMWI2MjM5NzFiMWJjOTM4MDk4ZmFiNWJiZjg4YTBlODk1Li4wZTdmY2Ni
YTUyN2Y0NGE5NjcyODdlYjFmNWUxYTIxNzY1M2MwN2IyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NN
YWtlTGlzdHMudHh0CkBAIC0yMTYsNiArMjE2LDcgQEAgc2V0KE9GRkxJTkVfQVNNCiAgICAgb2Zm
bGluZWFzbS9wYXJzZXIucmIKICAgICBvZmZsaW5lYXNtL3JlZ2lzdGVycy5yYgogICAgIG9mZmxp
bmVhc20vcmlzYy5yYgorICAgIG9mZmxpbmVhc20vcmlzY3Y2NC5yYgogICAgIG9mZmxpbmVhc20v
c2VsZl9oYXNoLnJiCiAgICAgb2ZmbGluZWFzbS9zZXR0aW5ncy5yYgogICAgIG9mZmxpbmVhc20v
dHJhbnNmb3JtLnJiCkBAIC0yNzMsNiArMjc0LDggQEAgZWxzZSAoKQogICAgICAgICBzZXQoT0ZG
TElORV9BU01fQkFDS0VORCAiQVJNdjciKQogICAgIGVsc2VpZiAoV1RGX0NQVV9NSVBTKQogICAg
ICAgICBzZXQoT0ZGTElORV9BU01fQkFDS0VORCAiTUlQUyIpCisgICAgZWxzZWlmIChXVEZfQ1BV
X1JJU0NWNjQpCisgICAgICAgIHNldChPRkZMSU5FX0FTTV9CQUNLRU5EICJSSVNDVjY0IikKICAg
ICBlbmRpZiAoKQogCiAgICAgaWYgKE5PVCBFTkFCTEVfSklUKQpAQCAtNTc3LDkgKzU4MCwxMiBA
QCBzZXQoSmF2YVNjcmlwdENvcmVfUFJJVkFURV9GUkFNRVdPUktfSEVBREVSUwogICAgIGFzc2Vt
Ymxlci9NYWNyb0Fzc2VtYmxlckNvZGVSZWYuaAogICAgIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxl
ckhlbHBlcnMuaAogICAgIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlck1JUFMuaAorICAgIGFzc2Vt
Ymxlci9NYWNyb0Fzc2VtYmxlclJJU0NWNjQuaAogICAgIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxl
clg4NkNvbW1vbi5oCiAgICAgYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyWDg2XzY0LmgKICAgICBh
c3NlbWJsZXIvUHJpbnRlci5oCisgICAgYXNzZW1ibGVyL1JJU0NWNjRBc3NlbWJsZXIuaAorICAg
IGFzc2VtYmxlci9SSVNDVjY0UmVnaXN0ZXJzLmgKICAgICBhc3NlbWJsZXIvUmVnaXN0ZXJJbmZv
LmgKICAgICBhc3NlbWJsZXIvWDg2QXNzZW1ibGVyLmgKICAgICBhc3NlbWJsZXIvWDg2UmVnaXN0
ZXJzLmgKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9Tb3VyY2VzLnR4dCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9Tb3VyY2VzLnR4dAppbmRleCA1MmI5M2VlOGQ4YmJhNjYwNjRk
YjIwMThmM2YzMTc3MDJmNzZhYTljLi5lMjFhNTgxYzRmNjZlNDNhZjcwNWZkYTRiMjc4ZmE2M2Jm
Mzg0OTY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvU291cmNlcy50eHQKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL1NvdXJjZXMudHh0CkBAIC01NSw2ICs1NSw3IEBAIGFz
c2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTXY3LmNwcAogYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVy
Q29kZVJlZi5jcHAKIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlck1JUFMuY3BwCiBhc3NlbWJsZXIv
TWFjcm9Bc3NlbWJsZXJQcmludGVyLmNwcAorYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyUklTQ1Y2
NC5jcHAKIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlclg4NkNvbW1vbi5jcHAKIGFzc2VtYmxlci9Q
ZXJmTG9nLmNwcAogYXNzZW1ibGVyL1ByaW50ZXIuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYXNzZW1ibGVyL0Fic3RyYWN0TWFjcm9Bc3NlbWJsZXIuaCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvQWJzdHJhY3RNYWNyb0Fzc2VtYmxlci5oCmluZGV4IDE5
MTY1ZmZmNGY1YWFiN2JhMzc3ZjdlNDBiYTgyMzIyNmFmMzNkZDMuLjQzZjc4NGE0YWI5MzVhOWFm
MjM5ZjI2YzhjYjMzOGFhYjIyZWRkNWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9hc3NlbWJsZXIvQWJzdHJhY3RNYWNyb0Fzc2VtYmxlci5oCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9hc3NlbWJsZXIvQWJzdHJhY3RNYWNyb0Fzc2VtYmxlci5oCkBAIC0zOTcsNyArMzk3
LDcgQEAgcHVibGljOgogICAgICAgICB7CiAgICAgICAgIH0KIAotI2lmIENQVShYODZfNjQpIHx8
IENQVShBUk02NCkKKyNpZiBDUFUoWDg2XzY0KSB8fCBDUFUoQVJNNjQpIHx8IENQVShSSVNDVjY0
KQogICAgICAgICBleHBsaWNpdCBUcnVzdGVkSW1tNjQoVHJ1c3RlZEltbVB0ciBwdHIpCiAgICAg
ICAgICAgICA6IG1fdmFsdWUocHRyLmFzSW50cHRyKCkpCiAgICAgICAgIHsKQEAgLTQxMyw3ICs0
MTMsNyBAQCBwdWJsaWM6CiAgICAgICAgICAgICA6IFRydXN0ZWRJbW02NCh2YWx1ZSkKICAgICAg
ICAgewogICAgICAgICB9Ci0jaWYgQ1BVKFg4Nl82NCkgfHwgQ1BVKEFSTTY0KQorI2lmIENQVShY
ODZfNjQpIHx8IENQVShBUk02NCkgfHwgQ1BVKFJJU0NWNjQpCiAgICAgICAgIGV4cGxpY2l0IElt
bTY0KFRydXN0ZWRJbW1QdHIgcHRyKQogICAgICAgICAgICAgOiBUcnVzdGVkSW1tNjQocHRyKQog
ICAgICAgICB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01h
Y3JvQXNzZW1ibGVyLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNz
ZW1ibGVyLmgKaW5kZXggNjk3MTFiZjg3NTI5NGU0NGZlMTFlZjJjZTM3NTRhNDU1YTA2MDk4OC4u
ZDdmZTNhODFlMzQxMTljMWU2ZWU0YmI0NWY1ODY1ZjcyMWY0NjIxNiAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlci5oCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXIuaApAQCAtNTUsNiArNTUs
MTEgQEAgbmFtZXNwYWNlIEpTQyB7IHR5cGVkZWYgTWFjcm9Bc3NlbWJsZXJBUk12NyBNYWNyb0Fz
c2VtYmxlckJhc2U7IH07CiAjZGVmaW5lIFRBUkdFVF9NQUNST0FTU0VNQkxFUiBNYWNyb0Fzc2Vt
Ymxlclg4Nl82NAogI2luY2x1ZGUgIk1hY3JvQXNzZW1ibGVyWDg2XzY0LmgiCiAKKyNlbGlmIENQ
VShSSVNDVjY0KQorI2RlZmluZSBUQVJHRVRfQVNTRU1CTEVSIFJJU0NWNjRBc3NlbWJsZXIKKyNk
ZWZpbmUgVEFSR0VUX01BQ1JPQVNTRU1CTEVSIE1hY3JvQXNzZW1ibGVyUklTQ1Y2NAorI2luY2x1
ZGUgIk1hY3JvQXNzZW1ibGVyUklTQ1Y2NC5oIgorCiAjZWxzZQogI2Vycm9yICJUaGUgTWFjcm9B
c3NlbWJsZXIgaXMgbm90IHN1cHBvcnRlZCBvbiB0aGlzIHBsYXRmb3JtLiIKICNlbmRpZgpAQCAt
MTMyLDcgKzEzNyw3IEBAIHB1YmxpYzoKICAgICB1c2luZyBNYWNyb0Fzc2VtYmxlckJhc2U6OmFu
ZDMyOwogICAgIHVzaW5nIE1hY3JvQXNzZW1ibGVyQmFzZTo6YnJhbmNoQWRkMzI7CiAgICAgdXNp
bmcgTWFjcm9Bc3NlbWJsZXJCYXNlOjpicmFuY2hNdWwzMjsKLSNpZiBDUFUoQVJNNjQpIHx8IENQ
VShBUk1fVEhVTUIyKSB8fCBDUFUoWDg2XzY0KSB8fCBDUFUoTUlQUykKKyNpZiBDUFUoQVJNNjQp
IHx8IENQVShBUk1fVEhVTUIyKSB8fCBDUFUoWDg2XzY0KSB8fCBDUFUoTUlQUykgfHwgQ1BVKFJJ
U0NWNjQpCiAgICAgdXNpbmcgTWFjcm9Bc3NlbWJsZXJCYXNlOjpicmFuY2hQdHI7CiAjZW5kaWYK
ICAgICB1c2luZyBNYWNyb0Fzc2VtYmxlckJhc2U6OmJyYW5jaFN1YjMyOwpAQCAtMTQ0LDcgKzE0
OSw3IEBAIHB1YmxpYzoKICAgICB1c2luZyBNYWNyb0Fzc2VtYmxlckJhc2U6OnVyc2hpZnQzMjsK
ICAgICB1c2luZyBNYWNyb0Fzc2VtYmxlckJhc2U6OnhvcjMyOwogCi0jaWYgQ1BVKEFSTTY0KSB8
fCBDUFUoWDg2XzY0KQorI2lmIENQVShBUk02NCkgfHwgQ1BVKFg4Nl82NCkgfHwgQ1BVKFJJU0NW
NjQpCiAgICAgdXNpbmcgTWFjcm9Bc3NlbWJsZXJCYXNlOjphbmQ2NDsKICAgICB1c2luZyBNYWNy
b0Fzc2VtYmxlckJhc2U6OmNvbnZlcnRJbnQzMlRvRG91YmxlOwogICAgIHVzaW5nIE1hY3JvQXNz
ZW1ibGVyQmFzZTo6c3RvcmU2NDsKQEAgLTMzNSw3ICszNDAsNyBAQCBwdWJsaWM6CiAgICAgc3Rh
dGljIGNvbnN0ZXhwciBwdHJkaWZmX3QgcHVzaFRvU2F2ZUJ5dGVPZmZzZXQoKSB7IHJldHVybiBz
aXplb2Yodm9pZCopOyB9CiAjZW5kaWYgLy8gIUNQVShBUk02NCkKIAotI2lmIENQVShYODZfNjQp
IHx8IENQVShBUk02NCkKKyNpZiBDUFUoWDg2XzY0KSB8fCBDUFUoQVJNNjQpIHx8IENQVShSSVND
VjY0KQogICAgIHZvaWQgcGVlazY0KFJlZ2lzdGVySUQgZGVzdCwgaW50IGluZGV4ID0gMCkKICAg
ICB7CiAgICAgICAgIGxvYWQ2NChBZGRyZXNzKHN0YWNrUG9pbnRlclJlZ2lzdGVyLCAoaW5kZXgg
KiBzaXplb2Yodm9pZCopKSksIGRlc3QpOwpAQCAtMTcwNiw3ICsxNzExLDcgQEAgcHVibGljOgog
ICAgICAgICBzdG9yZVB0cih2YWx1ZSwgYWRkcmVzc0ZvclBva2UoaW5kZXgpKTsKICAgICB9CiAg
ICAgCi0jaWYgQ1BVKFg4Nl82NCkgfHwgQ1BVKEFSTTY0KQorI2lmIENQVShYODZfNjQpIHx8IENQ
VShBUk02NCkgfHwgQ1BVKFJJU0NWNjQpCiAgICAgdm9pZCBwb2tlKEltbTY0IHZhbHVlLCBpbnQg
aW5kZXggPSAwKQogICAgIHsKICAgICAgICAgc3RvcmU2NCh2YWx1ZSwgYWRkcmVzc0ZvclBva2Uo
aW5kZXgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFj
cm9Bc3NlbWJsZXJSSVNDVjY0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIv
TWFjcm9Bc3NlbWJsZXJSSVNDVjY0LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42M2IzMjY1Mjg5YzVjNjY3YTU4
NGYzMWRkZjc0MWZhNWM5ZDViZTU1Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlclJJU0NWNjQuY3BwCkBAIC0wLDAgKzEsNDIg
QEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgSWdhbGlhIFMuTC4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBB
TlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
ICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVY
RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1
ZGUgIk1hY3JvQXNzZW1ibGVyLmgiCisKKyNpZiBFTkFCTEUoQVNTRU1CTEVSKSAmJiBDUFUoUklT
Q1Y2NCkKKworI2luY2x1ZGUgIlByb2JlQ29udGV4dC5oIgorCituYW1lc3BhY2UgSlNDIHsKKwor
dm9pZCBNYWNyb0Fzc2VtYmxlcjo6cHJvYmUoUHJvYmU6OkZ1bmN0aW9uLCB2b2lkKikKK3sKKyAg
ICAvLyBUT0RPCit9CisKK30gLy8gbmFtZXNwYWNlIEpTQworCisjZW5kaWYgLy8gRU5BQkxFKEFT
U0VNQkxFUikgJiYgQ1BVKFJJU0NWNjQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyUklTQ1Y2NC5oIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlclJJU0NWNjQuaApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xNTEyNDMx
YzE2OTdjZjY2YTgzZDhhNDAzNmU5ZTNjOGNmZTMzNTI2Ci0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlclJJU0NWNjQuaApAQCAt
MCwwICsxLDM5OCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBJZ2FsaWEgUy5MLgorICoK
KyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFT
IElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUg
RElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQK
KyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKwor
I2lmIEVOQUJMRShBU1NFTUJMRVIpICYmIENQVShSSVNDVjY0KQorCisjaW5jbHVkZSAiQWJzdHJh
Y3RNYWNyb0Fzc2VtYmxlci5oIgorI2luY2x1ZGUgIlJJU0NWNjRBc3NlbWJsZXIuaCIKKworI2Rl
ZmluZSBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QobWV0aG9k
TmFtZSkgXAorICAgIHRlbXBsYXRlPHR5cGVuYW1lLi4uIEFyZ3M+IHZvaWQgbWV0aG9kTmFtZShB
cmdzJiYuLi4pIHsgfQorI2RlZmluZSBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURf
Tk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4obWV0aG9kTmFtZSwgcmV0dXJuVHlwZSkgXAorICAgIHRl
bXBsYXRlPHR5cGVuYW1lLi4uIEFyZ3M+IHJldHVyblR5cGUgbWV0aG9kTmFtZShBcmdzJiYuLi4p
IHsgcmV0dXJuIHsgfTsgfQorCituYW1lc3BhY2UgSlNDIHsKKwordXNpbmcgQXNzZW1ibGVyID0g
VEFSR0VUX0FTU0VNQkxFUjsKKworY2xhc3MgTWFjcm9Bc3NlbWJsZXJSSVNDVjY0IDogcHVibGlj
IEFic3RyYWN0TWFjcm9Bc3NlbWJsZXI8QXNzZW1ibGVyPiB7CitwdWJsaWM6CisgICAgc3RhdGlj
IGNvbnN0ZXhwciB1bnNpZ25lZCBudW1HUFJzID0gMzI7CisgICAgc3RhdGljIGNvbnN0ZXhwciB1
bnNpZ25lZCBudW1GUFJzID0gMzI7CisKKyAgICBzdGF0aWMgY29uc3RleHByIFJlZ2lzdGVySUQg
ZGF0YVRlbXBSZWdpc3RlciA9IFJJU0NWNjRSZWdpc3RlcnM6OngzMDsKKyAgICBzdGF0aWMgY29u
c3RleHByIFJlZ2lzdGVySUQgbWVtb3J5VGVtcFJlZ2lzdGVyID0gUklTQ1Y2NFJlZ2lzdGVyczo6
eDMxOworCisgICAgc3RhdGljIGNvbnN0ZXhwciBSZWdpc3RlcklEIEludmFsaWRHUFJSZWcgPSBS
SVNDVjY0UmVnaXN0ZXJzOjpJbnZhbGlkR1BSUmVnOworCisgICAgUmVnaXN0ZXJJRCBzY3JhdGNo
UmVnaXN0ZXIoKQorICAgIHsKKyAgICAgICAgcmV0dXJuIGRhdGFUZW1wUmVnaXN0ZXI7CisgICAg
fQorCisgICAgc3RhdGljIGJvb2wgc3VwcG9ydHNGbG9hdGluZ1BvaW50KCkgeyByZXR1cm4gdHJ1
ZTsgfQorICAgIHN0YXRpYyBib29sIHN1cHBvcnRzRmxvYXRpbmdQb2ludFRydW5jYXRlKCkgeyBy
ZXR1cm4gdHJ1ZTsgfQorICAgIHN0YXRpYyBib29sIHN1cHBvcnRzRmxvYXRpbmdQb2ludFNxcnQo
KSB7IHJldHVybiB0cnVlOyB9CisgICAgc3RhdGljIGJvb2wgc3VwcG9ydHNGbG9hdGluZ1BvaW50
QWJzKCkgeyByZXR1cm4gdHJ1ZTsgfQorICAgIHN0YXRpYyBib29sIHN1cHBvcnRzRmxvYXRpbmdQ
b2ludFJvdW5kaW5nKCkgeyByZXR1cm4gdHJ1ZTsgfQorCisgICAgZW51bSBSZWxhdGlvbmFsQ29u
ZGl0aW9uIHsKKyAgICAgICAgRXF1YWwsCisgICAgICAgIE5vdEVxdWFsLAorICAgICAgICBBYm92
ZSwKKyAgICAgICAgQWJvdmVPckVxdWFsLAorICAgICAgICBCZWxvdywKKyAgICAgICAgQmVsb3dP
ckVxdWFsLAorICAgICAgICBHcmVhdGVyVGhhbiwKKyAgICAgICAgR3JlYXRlclRoYW5PckVxdWFs
LAorICAgICAgICBMZXNzVGhhbiwKKyAgICAgICAgTGVzc1RoYW5PckVxdWFsLAorICAgIH07CisK
KyAgICBlbnVtIFJlc3VsdENvbmRpdGlvbiB7CisgICAgICAgIE92ZXJmbG93LAorICAgICAgICBT
aWduZWQsCisgICAgICAgIFBvc2l0aXZlT3JaZXJvLAorICAgICAgICBaZXJvLAorICAgICAgICBO
b25aZXJvLAorICAgIH07CisKKyAgICBlbnVtIFplcm9Db25kaXRpb24geworICAgICAgICBJc1pl
cm8sCisgICAgICAgIElzTm9uWmVybywKKyAgICB9OworCisgICAgZW51bSBEb3VibGVDb25kaXRp
b24geworICAgICAgICBEb3VibGVFcXVhbEFuZE9yZGVyZWQsCisgICAgICAgIERvdWJsZU5vdEVx
dWFsQW5kT3JkZXJlZCwKKyAgICAgICAgRG91YmxlR3JlYXRlclRoYW5BbmRPcmRlcmVkLAorICAg
ICAgICBEb3VibGVHcmVhdGVyVGhhbk9yRXF1YWxBbmRPcmRlcmVkLAorICAgICAgICBEb3VibGVM
ZXNzVGhhbkFuZE9yZGVyZWQsCisgICAgICAgIERvdWJsZUxlc3NUaGFuT3JFcXVhbEFuZE9yZGVy
ZWQsCisgICAgICAgIERvdWJsZUVxdWFsT3JVbm9yZGVyZWQsCisgICAgICAgIERvdWJsZU5vdEVx
dWFsT3JVbm9yZGVyZWQsCisgICAgICAgIERvdWJsZUdyZWF0ZXJUaGFuT3JVbm9yZGVyZWQsCisg
ICAgICAgIERvdWJsZUdyZWF0ZXJUaGFuT3JFcXVhbE9yVW5vcmRlcmVkLAorICAgICAgICBEb3Vi
bGVMZXNzVGhhbk9yVW5vcmRlcmVkLAorICAgICAgICBEb3VibGVMZXNzVGhhbk9yRXF1YWxPclVu
b3JkZXJlZCwKKyAgICB9OworCisgICAgc3RhdGljIGNvbnN0ZXhwciBSZWdpc3RlcklEIHN0YWNr
UG9pbnRlclJlZ2lzdGVyID0gUklTQ1Y2NFJlZ2lzdGVyczo6c3A7CisgICAgc3RhdGljIGNvbnN0
ZXhwciBSZWdpc3RlcklEIGZyYW1lUG9pbnRlclJlZ2lzdGVyID0gUklTQ1Y2NFJlZ2lzdGVyczo6
ZnA7CisgICAgc3RhdGljIGNvbnN0ZXhwciBSZWdpc3RlcklEIGxpbmtSZWdpc3RlciA9IFJJU0NW
NjRSZWdpc3RlcnM6OnJhOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVE
X05PT1BfTUVUSE9EKGFkZDMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFU
RURfTk9PUF9NRVRIT0QoYWRkNjQpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBM
QVRFRF9OT09QX01FVEhPRChzdWIzMik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVN
UExBVEVEX05PT1BfTUVUSE9EKHN1YjY0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9U
RU1QTEFURURfTk9PUF9NRVRIT0QobXVsMzIpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0
X1RFTVBMQVRFRF9OT09QX01FVEhPRChtdWw2NCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NW
NjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGFuZDMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklT
Q1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoYW5kNjQpOworCisgICAgTUFDUk9fQVNTRU1CTEVS
X1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGNvdW50TGVhZGluZ1plcm9zMzIpOworICAg
IE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChjb3VudExlYWRp
bmdaZXJvczY0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9N
RVRIT0QoY291bnRUcmFpbGluZ1plcm9zMzIpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0
X1RFTVBMQVRFRF9OT09QX01FVEhPRChjb3VudFRyYWlsaW5nWmVyb3M2NCk7CisKKyAgICBNQUNS
T19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoYnl0ZVN3YXAxNik7Cisg
ICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGJ5dGVTd2Fw
MzIpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChi
eXRlU3dhcDY0KTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09Q
X01FVEhPRChsc2hpZnQzMik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVE
X05PT1BfTUVUSE9EKGxzaGlmdDY0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1Q
TEFURURfTk9PUF9NRVRIT0QocnNoaWZ0MzIpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0
X1RFTVBMQVRFRF9OT09QX01FVEhPRChyc2hpZnQ2NCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJ
U0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHVyc2hpZnQzMik7CisgICAgTUFDUk9fQVNTRU1C
TEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHVyc2hpZnQ2NCk7CisKKyAgICBNQUNS
T19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qocm90YXRlUmlnaHQzMik7
CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHJvdGF0
ZVJpZ2h0NjQpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1Bf
TUVUSE9EKGxvYWQ4KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9P
UF9NRVRIT0QobG9hZDhTaWduZWRFeHRlbmRUbzMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklT
Q1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QobG9hZDE2KTsKKyAgICBNQUNST19BU1NFTUJMRVJf
UklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QobG9hZDE2VW5hbGlnbmVkKTsKKyAgICBNQUNS
T19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QobG9hZDE2U2lnbmVkRXh0
ZW5kVG8zMik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVU
SE9EKGxvYWQzMik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1Bf
TUVUSE9EKGxvYWQzMldpdGhVbmFsaWduZWRIYWxmV29yZHMpOworICAgIE1BQ1JPX0FTU0VNQkxF
Ul9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChsb2FkNjQpOworCisgICAgTUFDUk9fQVNT
RU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHN0b3JlOCk7CisgICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHN0b3JlMTYpOworICAgIE1B
Q1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChzdG9yZTMyKTsKKyAg
ICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qoc3RvcmU2NCk7
CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoemVy
b0V4dGVuZDhUbzMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9P
UF9NRVRIT0QoemVyb0V4dGVuZDE2VG8zMik7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2
NF9URU1QTEFURURfTk9PUF9NRVRIT0Qoc2lnbkV4dGVuZDhUbzMyKTsKKyAgICBNQUNST19BU1NF
TUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qoc2lnbkV4dGVuZDE2VG8zMik7Cisg
ICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHNpZ25FeHRl
bmQzMlRvUHRyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9N
RVRIT0QoemVyb0V4dGVuZDMyVG9Xb3JkKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0
X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihsb2FkNjRXaXRoQWRkcmVzc09mZnNl
dFBhdGNoLCBEYXRhTGFiZWwzMik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExB
VEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKGxvYWQ2NFdpdGhDb21wYWN0QWRkcmVzc09mZnNl
dFBhdGNoLCBEYXRhTGFiZWxDb21wYWN0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9U
RU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oc3RvcmU2NFdpdGhBZGRyZXNzT2Zmc2V0
UGF0Y2gsIERhdGFMYWJlbDMyKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBM
QVRFRF9OT09QX01FVEhPRChvcjgpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBM
QVRFRF9OT09QX01FVEhPRChvcjE2KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1Q
TEFURURfTk9PUF9NRVRIT0Qob3IzMik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVN
UExBVEVEX05PT1BfTUVUSE9EKG9yNjQpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRf
VEVNUExBVEVEX05PT1BfTUVUSE9EKHhvcjMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2
NF9URU1QTEFURURfTk9PUF9NRVRIT0QoeG9yNjQpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJ
U0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKG5vdDMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJf
UklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qobm90NjQpOworCisgICAgTUFDUk9fQVNTRU1C
TEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKG5lZzMyKTsKKyAgICBNQUNST19BU1NF
TUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QobmVnNjQpOworCisgICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKG1vdmUpOworICAgIE1BQ1JP
X0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChzd2FwKTsKKworICAgIE1B
Q1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChtb3ZlWmVyb1RvRG91
YmxlKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qo
bW92ZUZsb2F0VG8zMik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05P
T1BfTUVUSE9EKG1vdmUzMlRvRmxvYXQpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRf
VEVNUExBVEVEX05PT1BfTUVUSE9EKG1vdmVEb3VibGUpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9S
SVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChtb3ZlRG91YmxlVG82NCk7CisgICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKG1vdmU2NFRvRG91YmxlKTsK
KworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChjb21w
YXJlOCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9E
KGNvbXBhcmUzMik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1Bf
TUVUSE9EKGNvbXBhcmU2NCk7CisKKyAgICBzdGF0aWMgUmVsYXRpb25hbENvbmRpdGlvbiBpbnZl
cnQoUmVsYXRpb25hbENvbmRpdGlvbiBjb25kKQorICAgIHsKKyAgICAgICAgcmV0dXJuIHN0YXRp
Y19jYXN0PFJlbGF0aW9uYWxDb25kaXRpb24+KEFzc2VtYmxlcjo6aW52ZXJ0KHN0YXRpY19jYXN0
PEFzc2VtYmxlcjo6Q29uZGl0aW9uPihjb25kKSkpOworICAgIH0KKworICAgIHRlbXBsYXRlPFB0
clRhZyByZXN1bHRUYWcsIFB0clRhZyBsb2NhdGlvblRhZz4KKyAgICBzdGF0aWMgRnVuY3Rpb25Q
dHI8cmVzdWx0VGFnPiByZWFkQ2FsbFRhcmdldChDb2RlTG9jYXRpb25DYWxsPGxvY2F0aW9uVGFn
PikgeyByZXR1cm4geyB9OyB9CisKKyAgICB0ZW1wbGF0ZTxQdHJUYWcgdGFnPgorICAgIHN0YXRp
YyB2b2lkIHJlcGxhY2VXaXRoVk1IYWx0KENvZGVMb2NhdGlvbkxhYmVsPHRhZz4pIHsgfQorCisg
ICAgdGVtcGxhdGU8UHRyVGFnIHN0YXJ0VGFnLCBQdHJUYWcgZGVzdFRhZz4KKyAgICBzdGF0aWMg
dm9pZCByZXBsYWNlV2l0aEp1bXAoQ29kZUxvY2F0aW9uTGFiZWw8c3RhcnRUYWc+LCBDb2RlTG9j
YXRpb25MYWJlbDxkZXN0VGFnPikgeyB9CisKKyAgICBzdGF0aWMgcHRyZGlmZl90IG1heEp1bXBS
ZXBsYWNlbWVudFNpemUoKQorICAgIHsKKyAgICAgICAgcmV0dXJuIEFzc2VtYmxlcjo6bWF4SnVt
cFJlcGxhY2VtZW50U2l6ZSgpOworICAgIH0KKworICAgIHN0YXRpYyBwdHJkaWZmX3QgcGF0Y2hh
YmxlSnVtcFNpemUoKQorICAgIHsKKyAgICAgICAgcmV0dXJuIEFzc2VtYmxlcjo6cGF0Y2hhYmxl
SnVtcFNpemUoKTsKKyAgICB9CisKKyAgICB0ZW1wbGF0ZTxQdHJUYWcgdGFnPgorICAgIHN0YXRp
YyBDb2RlTG9jYXRpb25MYWJlbDx0YWc+IHN0YXJ0T2ZCcmFuY2hQdHJXaXRoUGF0Y2hPblJlZ2lz
dGVyKENvZGVMb2NhdGlvbkRhdGFMYWJlbFB0cjx0YWc+KSB7IHJldHVybiB7IH07IH0KKworICAg
IHRlbXBsYXRlPFB0clRhZyB0YWc+CisgICAgc3RhdGljIENvZGVMb2NhdGlvbkxhYmVsPHRhZz4g
c3RhcnRPZlBhdGNoYWJsZUJyYW5jaFB0cldpdGhQYXRjaE9uQWRkcmVzcyhDb2RlTG9jYXRpb25E
YXRhTGFiZWxQdHI8dGFnPikgeyByZXR1cm4geyB9OyB9CisKKyAgICB0ZW1wbGF0ZTxQdHJUYWcg
dGFnPgorICAgIHN0YXRpYyBDb2RlTG9jYXRpb25MYWJlbDx0YWc+IHN0YXJ0T2ZQYXRjaGFibGVC
cmFuY2gzMldpdGhQYXRjaE9uQWRkcmVzcyhDb2RlTG9jYXRpb25EYXRhTGFiZWwzMjx0YWc+KSB7
IHJldHVybiB7IH07IH0KKworICAgIHRlbXBsYXRlPFB0clRhZyB0YWc+CisgICAgc3RhdGljIHZv
aWQgcmV2ZXJ0SnVtcFJlcGxhY2VtZW50VG9CcmFuY2hQdHJXaXRoUGF0Y2goQ29kZUxvY2F0aW9u
TGFiZWw8dGFnPiwgUmVnaXN0ZXJJRCwgdm9pZCopIHsgfQorCisgICAgdGVtcGxhdGU8UHRyVGFn
IHRhZz4KKyAgICBzdGF0aWMgdm9pZCByZXZlcnRKdW1wUmVwbGFjZW1lbnRUb1BhdGNoYWJsZUJy
YW5jaFB0cldpdGhQYXRjaChDb2RlTG9jYXRpb25MYWJlbDx0YWc+LCBBZGRyZXNzLCB2b2lkKikg
eyB9CisKKyAgICB0ZW1wbGF0ZTxQdHJUYWcgdGFnPgorICAgIHN0YXRpYyB2b2lkIHJldmVydEp1
bXBSZXBsYWNlbWVudFRvUGF0Y2hhYmxlQnJhbmNoMzJXaXRoUGF0Y2goQ29kZUxvY2F0aW9uTGFi
ZWw8dGFnPiwgQWRkcmVzcywgaW50MzJfdCkgeyB9CisKKyAgICB0ZW1wbGF0ZTxQdHJUYWcgY2Fs
bFRhZywgUHRyVGFnIGRlc3RUYWc+CisgICAgc3RhdGljIHZvaWQgcmVwYXRjaENhbGwoQ29kZUxv
Y2F0aW9uQ2FsbDxjYWxsVGFnPiwgQ29kZUxvY2F0aW9uTGFiZWw8ZGVzdFRhZz4pIHsgfQorCisg
ICAgdGVtcGxhdGU8UHRyVGFnIGNhbGxUYWcsIFB0clRhZyBkZXN0VGFnPgorICAgIHN0YXRpYyB2
b2lkIHJlcGF0Y2hDYWxsKENvZGVMb2NhdGlvbkNhbGw8Y2FsbFRhZz4sIEZ1bmN0aW9uUHRyPGRl
c3RUYWc+KSB7IH0KKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09Q
X01FVEhPRF9XSVRIX1JFVFVSTihqdW1wLCBKdW1wKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklT
Q1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoZmFySnVtcCk7CisKKyAgICBNQUNST19BU1NFTUJM
RVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4obmVhckNhbGwsIENh
bGwpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9X
SVRIX1JFVFVSTihuZWFyVGFpbENhbGwsIENhbGwpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVND
VjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTih0aHJlYWRTYWZlUGF0Y2hhYmxl
TmVhckNhbGwsIENhbGwpOworCisgICAgdm9pZCByZXQoKSB7IH0KKworICAgIE1BQ1JPX0FTU0VN
QkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRCh0ZXN0OCk7CisgICAgTUFDUk9fQVNT
RU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHRlc3QzMik7CisgICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHRlc3Q2NCk7CisKKyAgICBN
QUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4o
YnJhbmNoOCwgSnVtcCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05P
T1BfTUVUSE9EX1dJVEhfUkVUVVJOKGJyYW5jaDMyLCBKdW1wKTsKKyAgICBNQUNST19BU1NFTUJM
RVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoNjQsIEp1
bXApOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9E
X1dJVEhfUkVUVVJOKGJyYW5jaDMyV2l0aFBhdGNoLCBKdW1wKTsKKyAgICBNQUNST19BU1NFTUJM
RVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoMzJXaXRo
VW5hbGlnbmVkSGFsZldvcmRzLCBKdW1wKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0
X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihicmFuY2hBZGQzMiwgSnVtcCk7Cisg
ICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVU
VVJOKGJyYW5jaEFkZDY0LCBKdW1wKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RF
TVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihicmFuY2hTdWIzMiwgSnVtcCk7CisgICAg
TUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJO
KGJyYW5jaFN1YjY0LCBKdW1wKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBM
QVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihicmFuY2hNdWwzMiwgSnVtcCk7CisgICAgTUFD
Uk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKGJy
YW5jaE11bDY0LCBKdW1wKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRF
RF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihicmFuY2hOZWczMiwgSnVtcCk7CisgICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKGJyYW5j
aE5lZzY0LCBKdW1wKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9O
T09QX01FVEhPRF9XSVRIX1JFVFVSTihicmFuY2hUZXN0OCwgSnVtcCk7CisgICAgTUFDUk9fQVNT
RU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKGJyYW5jaFRl
c3QzMiwgSnVtcCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1Bf
TUVUSE9EX1dJVEhfUkVUVVJOKGJyYW5jaFRlc3Q2NCwgSnVtcCk7CisKKyAgICBNQUNST19BU1NF
TUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoUHRy
LCBKdW1wKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01F
VEhPRF9XSVRIX1JFVFVSTihtb3ZlV2l0aFBhdGNoLCBEYXRhTGFiZWwzMik7CisgICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKG1vdmVX
aXRoUGF0Y2gsIERhdGFMYWJlbFB0cik7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9U
RU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoUHRyV2l0aFBhdGNoLCBKdW1w
KTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9X
SVRIX1JFVFVSTihwYXRjaGFibGVCcmFuY2g4LCBQYXRjaGFibGVKdW1wKTsKKyAgICBNQUNST19B
U1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4ocGF0Y2hh
YmxlQnJhbmNoMzIsIFBhdGNoYWJsZUp1bXApOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0
X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihwYXRjaGFibGVCcmFuY2g2NCwgUGF0
Y2hhYmxlSnVtcCk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9P
UF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoRmxvYXQsIEp1bXApOworICAgIE1BQ1JPX0FTU0VN
QkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihicmFuY2hEb3Vi
bGUsIEp1bXApOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01F
VEhPRF9XSVRIX1JFVFVSTihicmFuY2hEb3VibGVOb25aZXJvLCBKdW1wKTsKKyAgICBNQUNST19B
U1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNo
RG91YmxlWmVyb09yTmFOLCBKdW1wKTsKKworICAgIGVudW0gQnJhbmNoVHJ1bmNhdGVUeXBlIHsg
QnJhbmNoSWZUcnVuY2F0ZUZhaWxlZCwgQnJhbmNoSWZUcnVuY2F0ZVN1Y2Nlc3NmdWwgfTsKKyAg
ICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRV
Uk4oYnJhbmNoVHJ1bmNhdGVEb3VibGVUb0ludDMyLCBKdW1wKTsKKworICAgIE1BQ1JPX0FTU0VN
QkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChicmFuY2hDb252ZXJ0RG91YmxlVG9J
bnQzMik7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRI
T0RfV0lUSF9SRVRVUk4oY2FsbCwgQ2FsbCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRf
VEVNUExBVEVEX05PT1BfTUVUSE9EKGNhbGxPcGVyYXRpb24pOworCisgICAgTUFDUk9fQVNTRU1C
TEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGdldEVmZmVjdGl2ZUFkZHJlc3MpOwor
CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGxvYWRG
bG9hdCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9E
KGxvYWREb3VibGUpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05P
T1BfTUVUSE9EKHN0b3JlRmxvYXQpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBM
QVRFRF9OT09QX01FVEhPRChzdG9yZURvdWJsZSk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklT
Q1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoYWRkRmxvYXQpOworICAgIE1BQ1JPX0FTU0VNQkxF
Ul9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChhZGREb3VibGUpOworCisgICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHN1YkZsb2F0KTsKKyAgICBN
QUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qoc3ViRG91YmxlKTsK
KworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChtdWxG
bG9hdCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9E
KG11bERvdWJsZSk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9P
UF9NRVRIT0QoZGl2RmxvYXQpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRF
RF9OT09QX01FVEhPRChkaXZEb3VibGUpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRf
VEVNUExBVEVEX05PT1BfTUVUSE9EKHNxcnRGbG9hdCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJ
U0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHNxcnREb3VibGUpOworCisgICAgTUFDUk9fQVNT
RU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGFic0Zsb2F0KTsKKyAgICBNQUNS
T19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoYWJzRG91YmxlKTsKKwor
ICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChjZWlsRmxv
YXQpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChj
ZWlsRG91YmxlKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09Q
X01FVEhPRChmbG9vckZsb2F0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFU
RURfTk9PUF9NRVRIT0QoZmxvb3JEb3VibGUpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NW
NjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGFuZEZsb2F0KTsKKyAgICBNQUNST19BU1NFTUJMRVJf
UklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoYW5kRG91YmxlKTsKKworICAgIE1BQ1JPX0FT
U0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChvckZsb2F0KTsKKyAgICBNQUNS
T19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qob3JEb3VibGUpOworCisg
ICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKG5lZ2F0ZUZs
b2F0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qo
bmVnYXRlRG91YmxlKTsKKworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9O
T09QX01FVEhPRChyb3VuZFRvd2FyZE5lYXJlc3RJbnRGbG9hdCk7CisgICAgTUFDUk9fQVNTRU1C
TEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHJvdW5kVG93YXJkTmVhcmVzdEludERv
dWJsZSk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9E
KHJvdW5kVG93YXJkWmVyb0Zsb2F0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1Q
TEFURURfTk9PUF9NRVRIT0Qocm91bmRUb3dhcmRaZXJvRG91YmxlKTsKKworICAgIE1BQ1JPX0FT
U0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihjb21wYXJl
RmxvYXQsIEp1bXApOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09Q
X01FVEhPRF9XSVRIX1JFVFVSTihjb21wYXJlRG91YmxlLCBKdW1wKTsKKworICAgIE1BQ1JPX0FT
U0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChjb252ZXJ0SW50MzJUb0Zsb2F0
KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoY29u
dmVydEludDMyVG9Eb3VibGUpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRF
RF9OT09QX01FVEhPRChjb252ZXJ0SW50NjRUb0Zsb2F0KTsKKyAgICBNQUNST19BU1NFTUJMRVJf
UklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoY29udmVydEludDY0VG9Eb3VibGUpOworCisg
ICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGNvbnZlcnRG
bG9hdFRvRG91YmxlKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9P
UF9NRVRIT0QoY29udmVydERvdWJsZVRvRmxvYXQpOworCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJ
U0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHRydW5jYXRlRmxvYXRUb0ludDMyKTsKKyAgICBN
QUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QodHJ1bmNhdGVGbG9h
dFRvVWludDMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9N
RVRIT0QodHJ1bmNhdGVGbG9hdFRvSW50NjQpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0
X1RFTVBMQVRFRF9OT09QX01FVEhPRCh0cnVuY2F0ZUZsb2F0VG9VaW50NjQpOworICAgIE1BQ1JP
X0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRCh0cnVuY2F0ZURvdWJsZVRv
SW50MzIpOworICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhP
RCh0cnVuY2F0ZURvdWJsZVRvVWludDMyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9U
RU1QTEFURURfTk9PUF9NRVRIT0QodHJ1bmNhdGVEb3VibGVUb0ludDY0KTsKKyAgICBNQUNST19B
U1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QodHJ1bmNhdGVEb3VibGVUb1Vp
bnQ2NCk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRI
T0QocHVzaCk7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVU
SE9EKHB1c2hQYWlyKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9P
UF9NRVRIT0QocHVzaFRvU2F2ZSk7CisKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1Q
TEFURURfTk9PUF9NRVRIT0QocG9wKTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1Q
TEFURURfTk9PUF9NRVRIT0QocG9wUGFpcik7CisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRf
VEVNUExBVEVEX05PT1BfTUVUSE9EKHBvcFRvUmVzdG9yZSk7CisKKyAgICBNQUNST19BU1NFTUJM
RVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoYWJvcnRXaXRoUmVhc29uKTsKKworICAg
IE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVS
TihzdG9yZVB0cldpdGhQYXRjaCwgRGF0YUxhYmVsUHRyKTsKKworICAgIHZvaWQgYnJlYWtwb2lu
dCh1aW50MTZfdCA9IDB4YzQ3MSkgeyB9CisgICAgdm9pZCBub3AoKSB7IH0KKworICAgIHZvaWQg
bWVtb3J5RmVuY2UoKSB7IH0KKyAgICB2b2lkIHN0b3JlRmVuY2UoKSB7IH0KKyAgICB2b2lkIGxv
YWRGZW5jZSgpIHsgfQorCisgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05P
T1BfTUVUSE9EX1dJVEhfUkVUVVJOKGJyYW5jaEF0b21pY1dlYWtDQVM4LCBKdW1wTGlzdCk7Cisg
ICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVU
VVJOKGJyYW5jaEF0b21pY1dlYWtDQVMxNiwgSnVtcExpc3QpOworICAgIE1BQ1JPX0FTU0VNQkxF
Ul9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRF9XSVRIX1JFVFVSTihicmFuY2hBdG9taWNX
ZWFrQ0FTMzIsIEp1bXBMaXN0KTsKKyAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFU
RURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oYnJhbmNoQXRvbWljV2Vha0NBUzY0LCBKdW1wTGlz
dCk7CisKKyAgICB0ZW1wbGF0ZTxQdHJUYWcgdGFnPgorICAgIHN0YXRpYyB2b2lkIGxpbmtDYWxs
KHZvaWQqLCBDYWxsLCBGdW5jdGlvblB0cjx0YWc+KSB7IH0KK307CisKK30gLy8gbmFtZXNwYWNl
IEpTQworCisjdW5kZWYgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVU
SE9ECisjdW5kZWYgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9E
X1dJVEhfUkVUVVJOCisKKyNlbmRpZiAvLyBFTkFCTEUoQVNTRU1CTEVSKSAmJiBDUFUoUklTQ1Y2
NCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWF4RnJhbWVF
eHRlbnRGb3JTbG93UGF0aENhbGwuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIv
TWF4RnJhbWVFeHRlbnRGb3JTbG93UGF0aENhbGwuaAppbmRleCA2ZGFjMDljMmM5MTNlYTA5YWU0
YzViMGE2OTBjNTk2NTgxOTQ0NzgwLi44NjJhNWQ3YzJiNjA0N2JhNDdjMWFhNzc5YjEzMzAwMGY5
NDAxZjM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01heEZy
YW1lRXh0ZW50Rm9yU2xvd1BhdGhDYWxsLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fz
c2VtYmxlci9NYXhGcmFtZUV4dGVudEZvclNsb3dQYXRoQ2FsbC5oCkBAIC01MCw3ICs1MCw3IEBA
IHN0YXRpYyBjb25zdGV4cHIgc2l6ZV90IG1heEZyYW1lRXh0ZW50Rm9yU2xvd1BhdGhDYWxsID0g
MDsKIC8vIDcgYXJncyBvbiBzdGFjayAoMjggYnl0ZXMpLgogc3RhdGljIGNvbnN0ZXhwciBzaXpl
X3QgbWF4RnJhbWVFeHRlbnRGb3JTbG93UGF0aENhbGwgPSA0MDsKIAotI2VsaWYgQ1BVKEFSTTY0
KSB8fCBDUFUoQVJNNjRFKQorI2VsaWYgQ1BVKEFSTTY0KSB8fCBDUFUoQVJNNjRFKSB8fCBDUFUo
UklTQ1Y2NCkKIC8vIEFsbCBhcmdzIGluIHJlZ2lzdGVycy4KIHN0YXRpYyBjb25zdGV4cHIgc2l6
ZV90IG1heEZyYW1lRXh0ZW50Rm9yU2xvd1BhdGhDYWxsID0gMDsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9QZXJmTG9nLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9hc3NlbWJsZXIvUGVyZkxvZy5jcHAKaW5kZXggYTQ5Y2NkN2ZkNGFmNDY0MjE0OThm
NDAyNGE2NmYwNTAxYTY0ZmNhOS4uNDZiYzg1OWQ5MTJhNTI3Njk0NjE2ZmIyN2U3ZGExNGZhMjRk
NWU4MyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9QZXJmTG9n
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL1BlcmZMb2cuY3BwCkBA
IC03Nyw2ICs3Nyw4IEBAIHN0YXRpYyBjb25zdGV4cHIgdWludDMyX3QgZWxmTWFjaGluZSA9IEVN
X01JUFNfUlMzX0xFOwogI2Vsc2UKIHN0YXRpYyBjb25zdGV4cHIgdWludDMyX3QgZWxmTWFjaGlu
ZSA9IEVNX01JUFM7CiAjZW5kaWYKKyNlbGlmIENQVShSSVNDVjY0KQorc3RhdGljIGNvbnN0ZXhw
ciB1aW50MzJfdCBlbGZNYWNoaW5lID0gRU1fUklTQ1Y7CiAjZW5kaWYKIAogfSAvLyBuYW1lc3Bh
Y2UgQ29uc3RhbnRzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVy
L1Byb2JlQ29udGV4dC5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9Qcm9iZUNv
bnRleHQuaAppbmRleCBmM2I3ZTJjOWVjYjNhOWE3ZWQ5NDM0YzA5YzMwOTI3MTg3YzQ2Nzc4Li41
NGRiMWNlODMyZWZjMGJkMzgyMDkyMTAwYTQ3MjdlMzg5ZmEzMjJhIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL1Byb2JlQ29udGV4dC5oCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvUHJvYmVDb250ZXh0LmgKQEAgLTExNiw2ICsxMTYsOCBA
QCBpbmxpbmUgdm9pZComIENQVVN0YXRlOjpwYygpCiAgICAgcmV0dXJuICpyZWludGVycHJldF9j
YXN0PHZvaWQqKj4oJmdwcihBUk1SZWdpc3RlcnM6OnBjKSk7CiAjZWxpZiBDUFUoTUlQUykKICAg
ICByZXR1cm4gKnJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCoqPigmc3ByKE1JUFNSZWdpc3RlcnM6OnBj
KSk7CisjZWxpZiBDUFUoUklTQ1Y2NCkKKyAgICByZXR1cm4gKnJlaW50ZXJwcmV0X2Nhc3Q8dm9p
ZCoqPigmc3ByKFJJU0NWNjRSZWdpc3RlcnM6OnBjKSk7CiAjZWxzZQogI2Vycm9yICJVbnN1cHBv
cnRlZCBDUFUiCiAjZW5kaWYKQEAgLTEzMSw2ICsxMzMsOCBAQCBpbmxpbmUgdm9pZComIENQVVN0
YXRlOjpmcCgpCiAgICAgcmV0dXJuICpyZWludGVycHJldF9jYXN0PHZvaWQqKj4oJmdwcihBUk1S
ZWdpc3RlcnM6OmZwKSk7CiAjZWxpZiBDUFUoTUlQUykKICAgICByZXR1cm4gKnJlaW50ZXJwcmV0
X2Nhc3Q8dm9pZCoqPigmZ3ByKE1JUFNSZWdpc3RlcnM6OmZwKSk7CisjZWxpZiBDUFUoUklTQ1Y2
NCkKKyAgICByZXR1cm4gKnJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCoqPigmZ3ByKFJJU0NWNjRSZWdp
c3RlcnM6OmZwKSk7CiAjZWxzZQogI2Vycm9yICJVbnN1cHBvcnRlZCBDUFUiCiAjZW5kaWYKQEAg
LTE0Niw2ICsxNTAsOCBAQCBpbmxpbmUgdm9pZComIENQVVN0YXRlOjpzcCgpCiAgICAgcmV0dXJu
ICpyZWludGVycHJldF9jYXN0PHZvaWQqKj4oJmdwcihBUk1SZWdpc3RlcnM6OnNwKSk7CiAjZWxp
ZiBDUFUoTUlQUykKICAgICByZXR1cm4gKnJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCoqPigmZ3ByKE1J
UFNSZWdpc3RlcnM6OnNwKSk7CisjZWxpZiBDUFUoUklTQ1Y2NCkKKyAgICByZXR1cm4gKnJlaW50
ZXJwcmV0X2Nhc3Q8dm9pZCoqPigmZ3ByKFJJU0NWNjRSZWdpc3RlcnM6OnNwKSk7CiAjZWxzZQog
I2Vycm9yICJVbnN1cHBvcnRlZCBDUFUiCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9hc3NlbWJsZXIvUklTQ1Y2NEFzc2VtYmxlci5oIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2Fzc2VtYmxlci9SSVNDVjY0QXNzZW1ibGVyLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTEyNWYzMTdj
YmUwMWQ2NGViOGI3MDkxM2U5YTRlMmNhMGUxMGZhOAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvUklTQ1Y2NEFzc2VtYmxlci5oCkBAIC0wLDAgKzEs
MTk3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIElnYWxpYSBTLkwuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBB
TkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisg
KiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaWYgRU5B
QkxFKEFTU0VNQkxFUikgJiYgQ1BVKFJJU0NWNjQpCisKKyNpbmNsdWRlICJBc3NlbWJsZXJCdWZm
ZXIuaCIKKyNpbmNsdWRlICJSSVNDVjY0UmVnaXN0ZXJzLmgiCisKK25hbWVzcGFjZSBKU0Mgewor
CituYW1lc3BhY2UgUklTQ1Y2NFJlZ2lzdGVycyB7CisKK3R5cGVkZWYgZW51bSA6IGludDhfdCB7
CisjZGVmaW5lIFJFR0lTVEVSX0lEKGlkLCBuYW1lLCByLCBjcykgaWQsCisgICAgRk9SX0VBQ0hf
R1BfUkVHSVNURVIoUkVHSVNURVJfSUQpCisjdW5kZWYgUkVHSVNURVJfSUQKKworI2RlZmluZSBS
RUdJU1RFUl9BTElBUyhpZCwgbmFtZSwgYWxpYXMpIGlkID0gYWxpYXMsCisgICAgRk9SX0VBQ0hf
UkVHSVNURVJfQUxJQVMoUkVHSVNURVJfQUxJQVMpCisjdW5kZWYgUkVHSVNURVJfQUxJQVMKKwor
ICAgIEludmFsaWRHUFJSZWcgPSAtMSwKK30gUmVnaXN0ZXJJRDsKKwordHlwZWRlZiBlbnVtIDog
aW50OF90IHsKKyNkZWZpbmUgUkVHSVNURVJfSUQoaWQsIG5hbWUpIGlkLAorICAgIEZPUl9FQUNI
X1NQX1JFR0lTVEVSKFJFR0lTVEVSX0lEKQorI3VuZGVmIFJFR0lTVEVSX0lECisKKyAgICBJbnZh
bGlkU1BSZWcgPSAtMSwKK30gU1BSZWdpc3RlcklEOworCit0eXBlZGVmIGVudW0gOiBpbnQ4X3Qg
eworI2RlZmluZSBSRUdJU1RFUl9JRChpZCwgbmFtZSwgciwgY3MpIGlkLAorICAgIEZPUl9FQUNI
X0ZQX1JFR0lTVEVSKFJFR0lTVEVSX0lEKQorI3VuZGVmIFJFR0lTVEVSX0lECisKKyAgICBJbnZh
bGlkRlBSUmVnID0gLTEsCit9IEZQUmVnaXN0ZXJJRDsKKworfSAvLyBuYW1lc3BhY2UgUklTQ1Y2
NFJlZ2lzdGVycworCitjbGFzcyBSSVNDVjY0QXNzZW1ibGVyIHsKK3B1YmxpYzoKKyAgICB1c2lu
ZyBSZWdpc3RlcklEID0gUklTQ1Y2NFJlZ2lzdGVyczo6UmVnaXN0ZXJJRDsKKyAgICB1c2luZyBT
UFJlZ2lzdGVySUQgPSBSSVNDVjY0UmVnaXN0ZXJzOjpTUFJlZ2lzdGVySUQ7CisgICAgdXNpbmcg
RlBSZWdpc3RlcklEID0gUklTQ1Y2NFJlZ2lzdGVyczo6RlBSZWdpc3RlcklEOworCisgICAgc3Rh
dGljIGNvbnN0ZXhwciBSZWdpc3RlcklEIGZpcnN0UmVnaXN0ZXIoKSB7IHJldHVybiBSSVNDVjY0
UmVnaXN0ZXJzOjp4MDsgfQorICAgIHN0YXRpYyBjb25zdGV4cHIgUmVnaXN0ZXJJRCBsYXN0UmVn
aXN0ZXIoKSB7IHJldHVybiBSSVNDVjY0UmVnaXN0ZXJzOjp4MzE7IH0KKyAgICBzdGF0aWMgY29u
c3RleHByIHVuc2lnbmVkIG51bWJlck9mUmVnaXN0ZXJzKCkgeyByZXR1cm4gbGFzdFJlZ2lzdGVy
KCkgLSBmaXJzdFJlZ2lzdGVyKCkgKyAxOyB9CisKKyAgICBzdGF0aWMgY29uc3RleHByIFNQUmVn
aXN0ZXJJRCBmaXJzdFNQUmVnaXN0ZXIoKSB7IHJldHVybiBSSVNDVjY0UmVnaXN0ZXJzOjpwYzsg
fQorICAgIHN0YXRpYyBjb25zdGV4cHIgU1BSZWdpc3RlcklEIGxhc3RTUFJlZ2lzdGVyKCkgeyBy
ZXR1cm4gUklTQ1Y2NFJlZ2lzdGVyczo6cGM7IH0KKyAgICBzdGF0aWMgY29uc3RleHByIHVuc2ln
bmVkIG51bWJlck9mU1BSZWdpc3RlcnMoKSB7IHJldHVybiBsYXN0U1BSZWdpc3RlcigpIC0gZmly
c3RTUFJlZ2lzdGVyKCkgKyAxOyB9CisKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUmVnaXN0ZXJJ
RCBmaXJzdEZQUmVnaXN0ZXIoKSB7IHJldHVybiBSSVNDVjY0UmVnaXN0ZXJzOjpmMDsgfQorICAg
IHN0YXRpYyBjb25zdGV4cHIgRlBSZWdpc3RlcklEIGxhc3RGUFJlZ2lzdGVyKCkgeyByZXR1cm4g
UklTQ1Y2NFJlZ2lzdGVyczo6ZjMxOyB9CisgICAgc3RhdGljIGNvbnN0ZXhwciB1bnNpZ25lZCBu
dW1iZXJPZkZQUmVnaXN0ZXJzKCkgeyByZXR1cm4gbGFzdEZQUmVnaXN0ZXIoKSAtIGZpcnN0RlBS
ZWdpc3RlcigpICsgMTsgfQorCisgICAgc3RhdGljIGNvbnN0IGNoYXIqIGdwck5hbWUoUmVnaXN0
ZXJJRCBpZCkKKyAgICB7CisgICAgICAgIEFTU0VSVChpZCA+PSBmaXJzdFJlZ2lzdGVyKCkgJiYg
aWQgPD0gbGFzdFJlZ2lzdGVyKCkpOworICAgICAgICBzdGF0aWMgY29uc3QgY2hhciogY29uc3Qg
bmFtZUZvclJlZ2lzdGVyW251bWJlck9mUmVnaXN0ZXJzKCldID0geworI2RlZmluZSBSRUdJU1RF
Ul9OQU1FKGlkLCBuYW1lLCByLCBjcykgbmFtZSwKKyAgICAgICAgICAgIEZPUl9FQUNIX0dQX1JF
R0lTVEVSKFJFR0lTVEVSX05BTUUpCisjdW5kZWYgUkVHSVNURVJfTkFNRQorICAgICAgICB9Owor
ICAgICAgICByZXR1cm4gbmFtZUZvclJlZ2lzdGVyW2lkXTsKKyAgICB9CisKKyAgICBzdGF0aWMg
Y29uc3QgY2hhciogc3ByTmFtZShTUFJlZ2lzdGVySUQgaWQpCisgICAgeworICAgICAgICBBU1NF
UlQoaWQgPj0gZmlyc3RTUFJlZ2lzdGVyKCkgJiYgaWQgPD0gbGFzdFNQUmVnaXN0ZXIoKSk7Cisg
ICAgICAgIHN0YXRpYyBjb25zdCBjaGFyKiBjb25zdCBuYW1lRm9yUmVnaXN0ZXJbbnVtYmVyT2ZT
UFJlZ2lzdGVycygpXSA9IHsKKyNkZWZpbmUgUkVHSVNURVJfTkFNRShpZCwgbmFtZSkgbmFtZSwK
KyAgICAgICAgICAgIEZPUl9FQUNIX1NQX1JFR0lTVEVSKFJFR0lTVEVSX05BTUUpCisjdW5kZWYg
UkVHSVNURVJfTkFNRQorICAgICAgICB9OworICAgICAgICByZXR1cm4gbmFtZUZvclJlZ2lzdGVy
W2lkXTsKKyAgICB9CisKKyAgICBzdGF0aWMgY29uc3QgY2hhciogZnByTmFtZShGUFJlZ2lzdGVy
SUQgaWQpCisgICAgeworICAgICAgICBBU1NFUlQoaWQgPj0gZmlyc3RGUFJlZ2lzdGVyKCkgJiYg
aWQgPD0gbGFzdEZQUmVnaXN0ZXIoKSk7CisgICAgICAgIHN0YXRpYyBjb25zdCBjaGFyKiBjb25z
dCBuYW1lRm9yUmVnaXN0ZXJbbnVtYmVyT2ZGUFJlZ2lzdGVycygpXSA9IHsKKyNkZWZpbmUgUkVH
SVNURVJfTkFNRShpZCwgbmFtZSwgciwgY3MpIG5hbWUsCisgICAgICAgICAgICBGT1JfRUFDSF9G
UF9SRUdJU1RFUihSRUdJU1RFUl9OQU1FKQorI3VuZGVmIFJFR0lTVEVSX05BTUUKKyAgICAgICAg
fTsKKyAgICAgICAgcmV0dXJuIG5hbWVGb3JSZWdpc3RlcltpZF07CisgICAgfQorCisgICAgUklT
Q1Y2NEFzc2VtYmxlcigpIHsgfQorCisgICAgQXNzZW1ibGVyQnVmZmVyJiBidWZmZXIoKSB7IHJl
dHVybiBtX2J1ZmZlcjsgfQorCisgICAgdHlwZWRlZiBlbnVtIHsKKyAgICAgICAgQ29uZGl0aW9u
RVEsCisgICAgICAgIENvbmRpdGlvbk5FLAorICAgICAgICBDb25kaXRpb25IUywgQ29uZGl0aW9u
Q1MgPSBDb25kaXRpb25IUywKKyAgICAgICAgQ29uZGl0aW9uTE8sIENvbmRpdGlvbkNDID0gQ29u
ZGl0aW9uTE8sCisgICAgICAgIENvbmRpdGlvbk1JLAorICAgICAgICBDb25kaXRpb25QTCwKKyAg
ICAgICAgQ29uZGl0aW9uVlMsCisgICAgICAgIENvbmRpdGlvblZDLAorICAgICAgICBDb25kaXRp
b25ISSwKKyAgICAgICAgQ29uZGl0aW9uTFMsCisgICAgICAgIENvbmRpdGlvbkdFLAorICAgICAg
ICBDb25kaXRpb25MVCwKKyAgICAgICAgQ29uZGl0aW9uR1QsCisgICAgICAgIENvbmRpdGlvbkxF
LAorICAgICAgICBDb25kaXRpb25BTCwKKyAgICAgICAgQ29uZGl0aW9uSW52YWxpZAorICAgIH0g
Q29uZGl0aW9uOworCisgICAgc3RhdGljIENvbmRpdGlvbiBpbnZlcnQoQ29uZGl0aW9uIGNvbmQp
CisgICAgeworICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8Q29uZGl0aW9uPihjb25kIF4gMSk7
CisgICAgfQorCisgICAgc3RhdGljIHZvaWQqIGdldFJlbG9jYXRlZEFkZHJlc3Modm9pZCogY29k
ZSwgQXNzZW1ibGVyTGFiZWwgbGFiZWwpCisgICAgeworICAgICAgICBBU1NFUlQobGFiZWwuaXNT
ZXQoKSk7CisgICAgICAgIHJldHVybiByZWludGVycHJldF9jYXN0PHZvaWQqPihyZWludGVycHJl
dF9jYXN0PHB0cmRpZmZfdD4oY29kZSkgKyBsYWJlbC5vZmZzZXQoKSk7CisgICAgfQorCisgICAg
c2l6ZV90IGNvZGVTaXplKCkgY29uc3QgeyByZXR1cm4gbV9idWZmZXIuY29kZVNpemUoKTsgfQor
CisgICAgc3RhdGljIHVuc2lnbmVkIGdldENhbGxSZXR1cm5PZmZzZXQoQXNzZW1ibGVyTGFiZWwp
IHsgcmV0dXJuIDA7IH0KKworICAgIEFzc2VtYmxlckxhYmVsIGxhYmVsSWdub3JpbmdXYXRjaHBv
aW50cygpIHsgcmV0dXJuIHsgfTsgfQorICAgIEFzc2VtYmxlckxhYmVsIGxhYmVsRm9yV2F0Y2hw
b2ludCgpIHsgcmV0dXJuIHsgfTsgfQorICAgIEFzc2VtYmxlckxhYmVsIGxhYmVsKCkgeyByZXR1
cm4geyB9OyB9CisKKyAgICBzdGF0aWMgdm9pZCBsaW5rSnVtcCh2b2lkKiwgQXNzZW1ibGVyTGFi
ZWwsIHZvaWQqKSB7IH0KKworICAgIHN0YXRpYyB2b2lkIGxpbmtKdW1wKEFzc2VtYmxlckxhYmVs
LCBBc3NlbWJsZXJMYWJlbCkgeyB9CisKKyAgICBzdGF0aWMgdm9pZCBsaW5rQ2FsbCh2b2lkKiwg
QXNzZW1ibGVyTGFiZWwsIHZvaWQqKSB7IH0KKworICAgIHN0YXRpYyB2b2lkIGxpbmtQb2ludGVy
KHZvaWQqLCBBc3NlbWJsZXJMYWJlbCwgdm9pZCopIHsgfQorCisgICAgc3RhdGljIHB0cmRpZmZf
dCBtYXhKdW1wUmVwbGFjZW1lbnRTaXplKCkKKyAgICB7CisgICAgICAgIHJldHVybiA0OworICAg
IH0KKworICAgIHN0YXRpYyBjb25zdGV4cHIgcHRyZGlmZl90IHBhdGNoYWJsZUp1bXBTaXplKCkK
KyAgICB7CisgICAgICAgIHJldHVybiA0OworICAgIH0KKworICAgIHN0YXRpYyB2b2lkIHJlcGF0
Y2hQb2ludGVyKHZvaWQqLCB2b2lkKikgeyB9CisKKyAgICBzdGF0aWMgdm9pZCByZWxpbmtKdW1w
KHZvaWQqLCB2b2lkKikgeyB9CisgICAgc3RhdGljIHZvaWQgcmVsaW5rSnVtcFRvTm9wKHZvaWQq
KSB7IH0KKyAgICBzdGF0aWMgdm9pZCByZWxpbmtDYWxsKHZvaWQqLCB2b2lkKikgeyB9CisKKyAg
ICB1bnNpZ25lZCBkZWJ1Z09mZnNldCgpIHsgcmV0dXJuIG1fYnVmZmVyLmRlYnVnT2Zmc2V0KCk7
IH0KKworICAgIHN0YXRpYyB2b2lkIGNhY2hlRmx1c2godm9pZCosIHNpemVfdCkgeyB9CisKKyAg
ICB1c2luZyBDb3B5RnVuY3Rpb24gPSB2b2lkKigmKSh2b2lkKiwgY29uc3Qgdm9pZCosIHNpemVf
dCk7CisgICAgdGVtcGxhdGUgPENvcHlGdW5jdGlvbiBjb3B5PgorICAgIHN0YXRpYyB2b2lkIGZp
bGxOb3BzKHZvaWQqLCBzaXplX3QpIHsgfQorCisgICAgQXNzZW1ibGVyQnVmZmVyIG1fYnVmZmVy
OworfTsKKworfSAvLyBuYW1lc3BhY2UgSlNDCisKKyNlbmRpZiAvLyBFTkFCTEUoQVNTRU1CTEVS
KSAmJiBDUFUoUklTQ1Y2NCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3Nl
bWJsZXIvUklTQ1Y2NFJlZ2lzdGVycy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxl
ci9SSVNDVjY0UmVnaXN0ZXJzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOWQwZDk3MTEwNmJlMWZmMjkwZTIwZDEx
NTVlMWE5MzEzMzNlOGY3MAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9hc3NlbWJsZXIvUklTQ1Y2NFJlZ2lzdGVycy5oCkBAIC0wLDAgKzEsMTEyIEBACisvKgorICog
Q29weXJpZ2h0IChDKSAyMDIxIElnYWxpYSBTLkwuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZF
TlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisg
KiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisvLyBNb3JlIG9uIHRoZSBSSVNDLVYg
Y2FsbGluZyBjb252ZW50aW9uIGFuZCByZWdpc3RlcnM6CisvLyBodHRwczovL3Jpc2N2Lm9yZy93
cC1jb250ZW50L3VwbG9hZHMvMjAxNS8wMS9yaXNjdi1jYWxsaW5nLnBkZgorLy8gaHR0cHM6Ly9y
aXNjdi5vcmcvd3AtY29udGVudC91cGxvYWRzLzIwMTcvMDUvcmlzY3Ytc3BlYy12Mi4yLnBkZiAo
Q2hhcHRlciAyMCkKKworI2RlZmluZSBSZWdpc3Rlck5hbWVzIFJJU0NWNjRSZWdpc3RlcnMKKwor
I2RlZmluZSBGT1JfRUFDSF9HUF9SRUdJU1RFUihtYWNybykgICAgXAorICAgIG1hY3JvKHgwLCAi
eDAiLCAxLCAwKSAgICAgICAgICAgICAgXAorICAgIG1hY3JvKHgxLCAieDEiLCAxLCAwKSAgICAg
ICAgICAgICAgXAorICAgIG1hY3JvKHgyLCAieDIiLCAxLCAxKSAgICAgICAgICAgICAgXAorICAg
IG1hY3JvKHgzLCAieDMiLCAxLCAwKSAgICAgICAgICAgICAgXAorICAgIG1hY3JvKHg0LCAieDQi
LCAxLCAwKSAgICAgICAgICAgICAgXAorICAgIG1hY3JvKHg1LCAieDUiLCAwLCAwKSAgICAgICAg
ICAgICAgXAorICAgIG1hY3JvKHg2LCAieDYiLCAwLCAwKSAgICAgICAgICAgICAgXAorICAgIG1h
Y3JvKHg3LCAieDciLCAwLCAwKSAgICAgICAgICAgICAgXAorICAgIG1hY3JvKHg4LCAieDgiLCAx
LCAxKSAgICAgICAgICAgICAgXAorICAgIG1hY3JvKHg5LCAieDkiLCAwLCAxKSAgICAgICAgICAg
ICAgXAorICAgIG1hY3JvKHgxMCwgIngxMCIsIDAsIDApICAgICAgICAgICAgXAorICAgIG1hY3Jv
KHgxMSwgIngxMSIsIDAsIDApICAgICAgICAgICAgXAorICAgIG1hY3JvKHgxMiwgIngxMiIsIDAs
IDApICAgICAgICAgICAgXAorICAgIG1hY3JvKHgxMywgIngxMyIsIDAsIDApICAgICAgICAgICAg
XAorICAgIG1hY3JvKHgxNCwgIngxNCIsIDAsIDApICAgICAgICAgICAgXAorICAgIG1hY3JvKHgx
NSwgIngxNSIsIDAsIDApICAgICAgICAgICAgXAorICAgIG1hY3JvKHgxNiwgIngxNiIsIDAsIDAp
ICAgICAgICAgICAgXAorICAgIG1hY3JvKHgxNywgIngxNyIsIDAsIDApICAgICAgICAgICAgXAor
ICAgIG1hY3JvKHgxOCwgIngxOCIsIDAsIDEpICAgICAgICAgICAgXAorICAgIG1hY3JvKHgxOSwg
IngxOSIsIDAsIDEpICAgICAgICAgICAgXAorICAgIG1hY3JvKHgyMCwgIngyMCIsIDAsIDEpICAg
ICAgICAgICAgXAorICAgIG1hY3JvKHgyMSwgIngyMSIsIDAsIDEpICAgICAgICAgICAgXAorICAg
IG1hY3JvKHgyMiwgIngyMiIsIDAsIDEpICAgICAgICAgICAgXAorICAgIG1hY3JvKHgyMywgIngy
MyIsIDAsIDEpICAgICAgICAgICAgXAorICAgIG1hY3JvKHgyNCwgIngyNCIsIDAsIDEpICAgICAg
ICAgICAgXAorICAgIG1hY3JvKHgyNSwgIngyNSIsIDAsIDEpICAgICAgICAgICAgXAorICAgIG1h
Y3JvKHgyNiwgIngyNiIsIDAsIDEpICAgICAgICAgICAgXAorICAgIG1hY3JvKHgyNywgIngyNyIs
IDAsIDEpICAgICAgICAgICAgXAorICAgIG1hY3JvKHgyOCwgIngyOCIsIDAsIDApICAgICAgICAg
ICAgXAorICAgIG1hY3JvKHgyOSwgIngyOSIsIDAsIDApICAgICAgICAgICAgXAorLyogTWFjcm9B
c3NlbWJsZXIgc2NyYXRjaCByZWdpc3RlcnMgKi8gXAorICAgIG1hY3JvKHgzMCwgIngzMCIsIDAs
IDApICAgICAgICAgICAgXAorICAgIG1hY3JvKHgzMSwgIngzMSIsIDAsIDApCisKKyNkZWZpbmUg
Rk9SX0VBQ0hfUkVHSVNURVJfQUxJQVMobWFjcm8pIFwKKyAgICBtYWNybyh6ZXJvLCAiemVybyIs
IHgwKSAgICAgICAgICAgIFwKKyAgICBtYWNybyhyYSwgInJhIiwgeDEpICAgICAgICAgICAgICAg
IFwKKyAgICBtYWNybyhzcCwgInNwIiwgeDIpICAgICAgICAgICAgICAgIFwKKyAgICBtYWNybyhn
cCwgImdwIiwgeDMpICAgICAgICAgICAgICAgIFwKKyAgICBtYWNybyh0cCwgInRwIiwgeDQpICAg
ICAgICAgICAgICAgIFwKKyAgICBtYWNybyhmcCwgImZwIiwgeDgpCisKKyNkZWZpbmUgRk9SX0VB
Q0hfU1BfUkVHSVNURVIobWFjcm8pIFwKKyAgICBtYWNybyhwYywgInBjIikKKworI2RlZmluZSBG
T1JfRUFDSF9GUF9SRUdJU1RFUihtYWNybykgXAorICAgIG1hY3JvKGYwLCAiZjAiLCAwLCAwKSAg
ICAgICAgICAgXAorICAgIG1hY3JvKGYxLCAiZjEiLCAwLCAwKSAgICAgICAgICAgXAorICAgIG1h
Y3JvKGYyLCAiZjIiLCAwLCAwKSAgICAgICAgICAgXAorICAgIG1hY3JvKGYzLCAiZjMiLCAwLCAw
KSAgICAgICAgICAgXAorICAgIG1hY3JvKGY0LCAiZjQiLCAwLCAwKSAgICAgICAgICAgXAorICAg
IG1hY3JvKGY1LCAiZjUiLCAwLCAwKSAgICAgICAgICAgXAorICAgIG1hY3JvKGY2LCAiZjYiLCAw
LCAwKSAgICAgICAgICAgXAorICAgIG1hY3JvKGY3LCAiZjciLCAwLCAwKSAgICAgICAgICAgXAor
ICAgIG1hY3JvKGY4LCAiZjgiLCAwLCAxKSAgICAgICAgICAgXAorICAgIG1hY3JvKGY5LCAiZjki
LCAwLCAxKSAgICAgICAgICAgXAorICAgIG1hY3JvKGYxMCwgImYxMCIsIDAsIDApICAgICAgICAg
XAorICAgIG1hY3JvKGYxMSwgImYxMSIsIDAsIDApICAgICAgICAgXAorICAgIG1hY3JvKGYxMiwg
ImYxMiIsIDAsIDApICAgICAgICAgXAorICAgIG1hY3JvKGYxMywgImYxMyIsIDAsIDApICAgICAg
ICAgXAorICAgIG1hY3JvKGYxNCwgImYxNCIsIDAsIDApICAgICAgICAgXAorICAgIG1hY3JvKGYx
NSwgImYxNSIsIDAsIDApICAgICAgICAgXAorICAgIG1hY3JvKGYxNiwgImYxNiIsIDAsIDApICAg
ICAgICAgXAorICAgIG1hY3JvKGYxNywgImYxNyIsIDAsIDApICAgICAgICAgXAorICAgIG1hY3Jv
KGYxOCwgImYxOCIsIDAsIDEpICAgICAgICAgXAorICAgIG1hY3JvKGYxOSwgImYxOSIsIDAsIDEp
ICAgICAgICAgXAorICAgIG1hY3JvKGYyMCwgImYyMCIsIDAsIDEpICAgICAgICAgXAorICAgIG1h
Y3JvKGYyMSwgImYyMSIsIDAsIDEpICAgICAgICAgXAorICAgIG1hY3JvKGYyMiwgImYyMiIsIDAs
IDEpICAgICAgICAgXAorICAgIG1hY3JvKGYyMywgImYyMyIsIDAsIDEpICAgICAgICAgXAorICAg
IG1hY3JvKGYyNCwgImYyNCIsIDAsIDEpICAgICAgICAgXAorICAgIG1hY3JvKGYyNSwgImYyNSIs
IDAsIDEpICAgICAgICAgXAorICAgIG1hY3JvKGYyNiwgImYyNiIsIDAsIDEpICAgICAgICAgXAor
ICAgIG1hY3JvKGYyNywgImYyNyIsIDAsIDEpICAgICAgICAgXAorICAgIG1hY3JvKGYyOCwgImYy
OCIsIDAsIDApICAgICAgICAgXAorICAgIG1hY3JvKGYyOSwgImYyOSIsIDAsIDApICAgICAgICAg
XAorICAgIG1hY3JvKGYzMCwgImYzMCIsIDAsIDApICAgICAgICAgXAorICAgIG1hY3JvKGYzMSwg
ImYzMSIsIDAsIDApCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0ZQUklu
Zm8uaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvRlBSSW5mby5oCmluZGV4IGY3OTk5MDAx
NzY3MDdmNTk3ZDQ1MmIzZGI0NDcxM2NhZjM1ZjkzYzcuLmY1MDczOTJlZDM1NWEzYTEzYjQ3NzRi
ZWRhNzc2YzkxYzNlMzcxZDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQv
RlBSSW5mby5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvRlBSSW5mby5oCkBAIC0z
MjksNiArMzI5LDEwNCBAQCBwdWJsaWM6CiAKICNlbmRpZiAvLyBDUFUoTUlQUykKIAorI2lmIENQ
VShSSVNDVjY0KQorCitjbGFzcyBGUFJJbmZvIHsKK3B1YmxpYzoKKyAgICB0eXBlZGVmIEZQUlJl
ZyBSZWdpc3RlclR5cGU7CisgICAgc3RhdGljIGNvbnN0ZXhwciB1bnNpZ25lZCBudW1iZXJPZlJl
Z2lzdGVycyA9IDIwOworICAgIHN0YXRpYyBjb25zdGV4cHIgdW5zaWduZWQgbnVtYmVyT2ZBcmd1
bWVudFJlZ2lzdGVycyA9IDg7CisKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ1Qw
ID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjA7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBS
ZWdUMSA9IFJJU0NWNjRSZWdpc3RlcnM6OmYxOworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVn
IGZwUmVnVDIgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMjsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQ
UlJlZyBmcFJlZ1QzID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjM7CisgICAgc3RhdGljIGNvbnN0ZXhw
ciBGUFJSZWcgZnBSZWdUNCA9IFJJU0NWNjRSZWdpc3RlcnM6OmY0OworICAgIHN0YXRpYyBjb25z
dGV4cHIgRlBSUmVnIGZwUmVnVDUgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmNTsKKyAgICBzdGF0aWMg
Y29uc3RleHByIEZQUlJlZyBmcFJlZ1Q2ID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjY7CisgICAgc3Rh
dGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdUNyA9IFJJU0NWNjRSZWdpc3RlcnM6OmY3OworICAg
IHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGZwUmVnVDggPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMTA7
CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdUOSA9IFJJU0NWNjRSZWdpc3RlcnM6
OmYxMTsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ1QxMCA9IFJJU0NWNjRSZWdp
c3RlcnM6OmYxMjsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ1QxMSA9IFJJU0NW
NjRSZWdpc3RlcnM6OmYxMzsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ1QxMiA9
IFJJU0NWNjRSZWdpc3RlcnM6OmYxNDsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJl
Z1QxMyA9IFJJU0NWNjRSZWdpc3RlcnM6OmYxNTsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJl
ZyBmcFJlZ1QxNCA9IFJJU0NWNjRSZWdpc3RlcnM6OmYxNjsKKyAgICBzdGF0aWMgY29uc3RleHBy
IEZQUlJlZyBmcFJlZ1QxNSA9IFJJU0NWNjRSZWdpc3RlcnM6OmYxNzsKKyAgICBzdGF0aWMgY29u
c3RleHByIEZQUlJlZyBmcFJlZ1QxNiA9IFJJU0NWNjRSZWdpc3RlcnM6OmYyODsKKyAgICBzdGF0
aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ1QxNyA9IFJJU0NWNjRSZWdpc3RlcnM6OmYyOTsKKyAg
ICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ1QxOCA9IFJJU0NWNjRSZWdpc3RlcnM6OmYz
MDsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ1QxOSA9IFJJU0NWNjRSZWdpc3Rl
cnM6OmYzMTsKKworICAgIHN0YXRpYyBjb25zdGV4cHIgRlBSUmVnIGZwUmVnQ1MwID0gUklTQ1Y2
NFJlZ2lzdGVyczo6Zjg7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdDUzEgPSBS
SVNDVjY0UmVnaXN0ZXJzOjpmOTsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ0NT
MiA9IFJJU0NWNjRSZWdpc3RlcnM6OmYxODsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBm
cFJlZ0NTMyA9IFJJU0NWNjRSZWdpc3RlcnM6OmYxOTsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQ
UlJlZyBmcFJlZ0NTNCA9IFJJU0NWNjRSZWdpc3RlcnM6OmYyMDsKKyAgICBzdGF0aWMgY29uc3Rl
eHByIEZQUlJlZyBmcFJlZ0NTNSA9IFJJU0NWNjRSZWdpc3RlcnM6OmYyMTsKKyAgICBzdGF0aWMg
Y29uc3RleHByIEZQUlJlZyBmcFJlZ0NTNiA9IFJJU0NWNjRSZWdpc3RlcnM6OmYyMjsKKyAgICBz
dGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ0NTNyA9IFJJU0NWNjRSZWdpc3RlcnM6OmYyMzsK
KyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ0NTOCA9IFJJU0NWNjRSZWdpc3RlcnM6
OmYyNDsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ0NTOSA9IFJJU0NWNjRSZWdp
c3RlcnM6OmYyNTsKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBmcFJlZ0NTMTAgPSBSSVND
VjY0UmVnaXN0ZXJzOjpmMjY7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgZnBSZWdDUzEx
ID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjI3OworCisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcg
YXJndW1lbnRGUFIwID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjEwOyAvLyBmcFJlZ1Q4CisgICAgc3Rh
dGljIGNvbnN0ZXhwciBGUFJSZWcgYXJndW1lbnRGUFIxID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjEx
OyAvLyBmcFJlZ1Q5CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgYXJndW1lbnRGUFIyID0g
UklTQ1Y2NFJlZ2lzdGVyczo6ZjEyOyAvLyBmcFJlZ1QxMAorICAgIHN0YXRpYyBjb25zdGV4cHIg
RlBSUmVnIGFyZ3VtZW50RlBSMyA9IFJJU0NWNjRSZWdpc3RlcnM6OmYxMzsgLy8gZnBSZWdUMTEK
KyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBhcmd1bWVudEZQUjQgPSBSSVNDVjY0UmVnaXN0
ZXJzOjpmMTQ7IC8vIGZwUmVnVDEyCisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJSZWcgYXJndW1l
bnRGUFI1ID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjE1OyAvLyBmcFJlZ1QxMworICAgIHN0YXRpYyBj
b25zdGV4cHIgRlBSUmVnIGFyZ3VtZW50RlBSNiA9IFJJU0NWNjRSZWdpc3RlcnM6OmYxNjsgLy8g
ZnBSZWdUMTQKKyAgICBzdGF0aWMgY29uc3RleHByIEZQUlJlZyBhcmd1bWVudEZQUjcgPSBSSVND
VjY0UmVnaXN0ZXJzOjpmMTc7IC8vIGZwUmVnVDE1CisKKyAgICBzdGF0aWMgY29uc3RleHByIEZQ
UlJlZyByZXR1cm5WYWx1ZUZQUiA9IFJJU0NWNjRSZWdpc3RlcnM6OmYxMDsgLy8gZnBSZWdUOAor
CisgICAgc3RhdGljIEZQUlJlZyB0b1JlZ2lzdGVyKHVuc2lnbmVkIGluZGV4KQorICAgIHsKKyAg
ICAgICAgQVNTRVJUKGluZGV4IDwgbnVtYmVyT2ZSZWdpc3RlcnMpOworICAgICAgICBzdGF0aWMg
Y29uc3QgRlBSUmVnIHJlZ2lzdGVyRm9ySW5kZXhbbnVtYmVyT2ZSZWdpc3RlcnNdID0geworICAg
ICAgICAgICAgZnBSZWdUMCwgZnBSZWdUMSwgZnBSZWdUMiwgZnBSZWdUMywgZnBSZWdUNCwgZnBS
ZWdUNSwgZnBSZWdUNiwgZnBSZWdUNywKKyAgICAgICAgICAgIGZwUmVnVDgsIGZwUmVnVDksIGZw
UmVnVDEwLCBmcFJlZ1QxMSwgZnBSZWdUMTIsIGZwUmVnVDEzLCBmcFJlZ1QxNCwgZnBSZWdUMTUs
CisgICAgICAgICAgICBmcFJlZ1QxNiwgZnBSZWdUMTcsIGZwUmVnVDE4LCBmcFJlZ1QxOSwKKyAg
ICAgICAgfTsKKyAgICAgICAgcmV0dXJuIHJlZ2lzdGVyRm9ySW5kZXhbaW5kZXhdOworICAgIH0K
KworICAgIHN0YXRpYyBGUFJSZWcgdG9Bcmd1bWVudFJlZ2lzdGVyKHVuc2lnbmVkIGluZGV4KQor
ICAgIHsKKyAgICAgICAgQVNTRVJUKGluZGV4IDwgbnVtYmVyT2ZBcmd1bWVudFJlZ2lzdGVycyk7
CisgICAgICAgIHN0YXRpYyBjb25zdCBGUFJSZWcgcmVnaXN0ZXJGb3JJbmRleFtudW1iZXJPZkFy
Z3VtZW50UmVnaXN0ZXJzXSA9IHsKKyAgICAgICAgICAgIGFyZ3VtZW50RlBSMCwgYXJndW1lbnRG
UFIxLCBhcmd1bWVudEZQUjIsIGFyZ3VtZW50RlBSMywKKyAgICAgICAgICAgIGFyZ3VtZW50RlBS
NCwgYXJndW1lbnRGUFI1LCBhcmd1bWVudEZQUjYsIGFyZ3VtZW50RlBSNywKKyAgICAgICAgfTsK
KyAgICAgICAgcmV0dXJuIHJlZ2lzdGVyRm9ySW5kZXhbaW5kZXhdOworICAgIH0KKworICAgIHN0
YXRpYyB1bnNpZ25lZCB0b0luZGV4KEZQUlJlZyByZWcpCisgICAgeworICAgICAgICBBU1NFUlQo
cmVnICE9IEludmFsaWRGUFJSZWcpOworICAgICAgICBBU1NFUlQoc3RhdGljX2Nhc3Q8aW50Pihy
ZWcpIDwgMzIpOworICAgICAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgaW5kZXhGb3JSZWdpc3Rl
clszMl0gPSB7CisgICAgICAgICAgICAwLCAxLCAyLCAzLCA0LCA1LCA2LCA3LAorICAgICAgICAg
ICAgSW52YWxpZEluZGV4LCBJbnZhbGlkSW5kZXgsIDgsIDksIDEwLCAxMSwgMTIsIDEzLAorICAg
ICAgICAgICAgMTQsIDE1LCBJbnZhbGlkSW5kZXgsIEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4
LCBJbnZhbGlkSW5kZXgsIEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LAorICAgICAgICAgICAg
SW52YWxpZEluZGV4LCBJbnZhbGlkSW5kZXgsIEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LCAx
NiwgMTcsIDE4LCAxOSwKKyAgICAgICAgfTsKKyAgICAgICAgcmV0dXJuIGluZGV4Rm9yUmVnaXN0
ZXJbcmVnXTsKKyAgICB9CisKKyAgICBzdGF0aWMgY29uc3QgY2hhciogZGVidWdOYW1lKEZQUlJl
ZyByZWcpCisgICAgeworICAgICAgICBBU1NFUlQocmVnICE9IEludmFsaWRGUFJSZWcpOworICAg
ICAgICByZXR1cm4gTWFjcm9Bc3NlbWJsZXI6OmZwck5hbWUocmVnKTsKKyAgICB9CisKKyAgICBz
dGF0aWMgY29uc3RleHByIHVuc2lnbmVkIEludmFsaWRJbmRleCA9IDB4ZmZmZmZmZmY7Cit9Owor
CisjZW5kaWYgLy8gQ1BVKFJJU0NWNjQpCisKIC8vIFdlIHVzZSB0aGlzIGhhY2sgdG8gZ2V0IHRo
ZSBGUFJJbmZvIGZyb20gdGhlIEZQUlJlZyB0eXBlIGluIHRlbXBsYXRlcyBiZWNhdXNlIG91ciBj
b2RlIGlzIGJhZCBhbmQgd2Ugc2hvdWxkIGZlZWwgYmFkLi4KIGNvbnN0ZXhwciBGUFJJbmZvIHRv
SW5mb0Zyb21SZWcoRlBSUmVnKSB7IHJldHVybiBGUFJJbmZvKCk7IH0KIApkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9HUFJJbmZvLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvaml0L0dQUkluZm8uaAppbmRleCAwNjdhYmZmMWQ2YWQyMDA3NTQ1MTgwMDc3YjBjNGE1NWM3
NzcyMjY2Li41ZmY2MjQ3NDFhYjcwZThjMDQzNWJkZjlkMjViMTkxNDYwMzgxZDllIDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0dQUkluZm8uaAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaml0L0dQUkluZm8uaApAQCAtNzk4LDYgKzc5OCwxMTMgQEAgcHVibGljOgog
CiAjZW5kaWYgLy8gQ1BVKE1JUFMpCiAKKyNpZiBDUFUoUklTQ1Y2NCkKKworI2RlZmluZSBOVU1C
RVJfT0ZfQVJHVU1FTlRfUkVHSVNURVJTIDh1CisjZGVmaW5lIE5VTUJFUl9PRl9DQUxMRUVfU0FW
RVNfUkVHSVNURVJTIDIzdQorCitjbGFzcyBHUFJJbmZvIHsKK3B1YmxpYzoKKyAgICB0eXBlZGVm
IEdQUlJlZyBSZWdpc3RlclR5cGU7CisgICAgc3RhdGljIGNvbnN0ZXhwciB1bnNpZ25lZCBudW1i
ZXJPZlJlZ2lzdGVycyA9IDEzOworICAgIHN0YXRpYyBjb25zdGV4cHIgdW5zaWduZWQgbnVtYmVy
T2ZBcmd1bWVudFJlZ2lzdGVycyA9IDg7CisKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBj
YWxsRnJhbWVSZWdpc3RlciA9IFJJU0NWNjRSZWdpc3RlcnM6OmZwOworICAgIHN0YXRpYyBjb25z
dGV4cHIgR1BSUmVnIG51bWJlclRhZ1JlZ2lzdGVyID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDI1Owor
ICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIG5vdENlbGxNYXNrUmVnaXN0ZXIgPSBSSVNDVjY0
UmVnaXN0ZXJzOjp4MjY7CisKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyByZWdUMCA9IFJJ
U0NWNjRSZWdpc3RlcnM6OngxMDsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyByZWdUMSA9
IFJJU0NWNjRSZWdpc3RlcnM6OngxMTsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyByZWdU
MiA9IFJJU0NWNjRSZWdpc3RlcnM6OngxMjsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBy
ZWdUMyA9IFJJU0NWNjRSZWdpc3RlcnM6OngxMzsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJl
ZyByZWdUNCA9IFJJU0NWNjRSZWdpc3RlcnM6OngxNDsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQ
UlJlZyByZWdUNSA9IFJJU0NWNjRSZWdpc3RlcnM6OngxNTsKKyAgICBzdGF0aWMgY29uc3RleHBy
IEdQUlJlZyByZWdUNiA9IFJJU0NWNjRSZWdpc3RlcnM6OngxNjsKKyAgICBzdGF0aWMgY29uc3Rl
eHByIEdQUlJlZyByZWdUNyA9IFJJU0NWNjRSZWdpc3RlcnM6OngxNzsKKyAgICBzdGF0aWMgY29u
c3RleHByIEdQUlJlZyByZWdUOCA9IFJJU0NWNjRSZWdpc3RlcnM6Ong1OworICAgIHN0YXRpYyBj
b25zdGV4cHIgR1BSUmVnIHJlZ1Q5ID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDY7CisgICAgc3RhdGlj
IGNvbnN0ZXhwciBHUFJSZWcgcmVnVDEwID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDc7CisgICAgc3Rh
dGljIGNvbnN0ZXhwciBHUFJSZWcgcmVnVDExID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDI4OworICAg
IHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ1QxMiA9IFJJU0NWNjRSZWdpc3RlcnM6OngyOTsK
KworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ0NTMCA9IFJJU0NWNjRSZWdpc3RlcnM6
Ong5OworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ0NTMSA9IFJJU0NWNjRSZWdpc3Rl
cnM6OngxODsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyByZWdDUzIgPSBSSVNDVjY0UmVn
aXN0ZXJzOjp4MTk7CisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgcmVnQ1MzID0gUklTQ1Y2
NFJlZ2lzdGVyczo6eDIwOworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ0NTNCA9IFJJ
U0NWNjRSZWdpc3RlcnM6OngyMTsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyByZWdDUzUg
PSBSSVNDVjY0UmVnaXN0ZXJzOjp4MjI7CisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgcmVn
Q1M2ID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDIzOworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVn
IHJlZ0NTNyA9IFJJU0NWNjRSZWdpc3RlcnM6OngyNDsKKyAgICBzdGF0aWMgY29uc3RleHByIEdQ
UlJlZyByZWdDUzggPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MjU7IC8vIG51bWJlclRhZworICAgIHN0
YXRpYyBjb25zdGV4cHIgR1BSUmVnIHJlZ0NTOSA9IFJJU0NWNjRSZWdpc3RlcnM6OngyNjsgLy8g
bm90Q2VsbE1hc2sKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyByZWdDUzEwID0gUklTQ1Y2
NFJlZ2lzdGVyczo6eDI3OworCisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgYXJndW1lbnRH
UFIwID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDEwOyAvLyByZWdUMAorICAgIHN0YXRpYyBjb25zdGV4
cHIgR1BSUmVnIGFyZ3VtZW50R1BSMSA9IFJJU0NWNjRSZWdpc3RlcnM6OngxMTsgLy8gcmVnVDEK
KyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBhcmd1bWVudEdQUjIgPSBSSVNDVjY0UmVnaXN0
ZXJzOjp4MTI7IC8vIHJlZ1QyCisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgYXJndW1lbnRH
UFIzID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDEzOyAvLyByZWdUMworICAgIHN0YXRpYyBjb25zdGV4
cHIgR1BSUmVnIGFyZ3VtZW50R1BSNCA9IFJJU0NWNjRSZWdpc3RlcnM6OngxNDsgLy8gcmVnVDQK
KyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBhcmd1bWVudEdQUjUgPSBSSVNDVjY0UmVnaXN0
ZXJzOjp4MTU7IC8vIHJlZ1Q1CisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgYXJndW1lbnRH
UFI2ID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDE2OyAvLyByZWdUNgorICAgIHN0YXRpYyBjb25zdGV4
cHIgR1BSUmVnIGFyZ3VtZW50R1BSNyA9IFJJU0NWNjRSZWdpc3RlcnM6OngxNzsgLy8gcmVnVDcK
KworICAgIHN0YXRpYyBjb25zdGV4cHIgR1BSUmVnIG5vbkFyZ0dQUjAgPSBSSVNDVjY0UmVnaXN0
ZXJzOjp4NTsgLy8gcmVnVDgKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBub25BcmdHUFIx
ID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDY7IC8vIHJlZ1Q5CisKKyAgICBzdGF0aWMgY29uc3RleHBy
IEdQUlJlZyByZXR1cm5WYWx1ZUdQUiA9IFJJU0NWNjRSZWdpc3RlcnM6OngxMDsgLy8gcmVnVDAK
KyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyByZXR1cm5WYWx1ZUdQUjIgPSBSSVNDVjY0UmVn
aXN0ZXJzOjp4MTE7IC8vIHJlZ1QxCisKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBub25Q
cmVzZXJ2ZWROb25SZXR1cm5HUFIgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4MTI7IC8vIHJlZ1QyCisg
ICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgbm9uUHJlc2VydmVkTm9uQXJndW1lbnRHUFIwID0g
UklTQ1Y2NFJlZ2lzdGVyczo6eDU7IC8vIHJlZ1Q4CisgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJS
ZWcgbm9uUHJlc2VydmVkTm9uQXJndW1lbnRHUFIxID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDY7IC8v
IHJlZ1Q5CisKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyB3YXNtU2NyYXRjaEdQUjAgPSBS
SVNDVjY0UmVnaXN0ZXJzOjp4NjsgLy8gcmVnVDkKKyAgICBzdGF0aWMgY29uc3RleHByIEdQUlJl
ZyB3YXNtU2NyYXRjaEdQUjEgPSBSSVNDVjY0UmVnaXN0ZXJzOjp4NzsgLy8gcmVnVDEwCisKKyAg
ICBzdGF0aWMgR1BSUmVnIHRvUmVnaXN0ZXIodW5zaWduZWQgaW5kZXgpCisgICAgeworICAgICAg
ICBBU1NFUlQoaW5kZXggPCBudW1iZXJPZlJlZ2lzdGVycyk7CisgICAgICAgIHN0YXRpYyBjb25z
dCBHUFJSZWcgcmVnaXN0ZXJGb3JJbmRleFtudW1iZXJPZlJlZ2lzdGVyc10gPSB7CisgICAgICAg
ICAgICByZWdUMCwgcmVnVDEsIHJlZ1QyLCByZWdUMywgcmVnVDQsIHJlZ1Q1LCByZWdUNiwgcmVn
VDcsCisgICAgICAgICAgICByZWdUOCwgcmVnVDksIHJlZ1QxMCwgcmVnVDExLCByZWdUMTIsCisg
ICAgICAgIH07CisgICAgICAgIHJldHVybiByZWdpc3RlckZvckluZGV4W2luZGV4XTsKKyAgICB9
CisKKyAgICBzdGF0aWMgR1BSUmVnIHRvQXJndW1lbnRSZWdpc3Rlcih1bnNpZ25lZCBpbmRleCkK
KyAgICB7CisgICAgICAgIEFTU0VSVChpbmRleCA8IG51bWJlck9mQXJndW1lbnRSZWdpc3RlcnMp
OworICAgICAgICBzdGF0aWMgY29uc3QgR1BSUmVnIHJlZ2lzdGVyRm9ySW5kZXhbbnVtYmVyT2ZB
cmd1bWVudFJlZ2lzdGVyc10gPSB7CisgICAgICAgICAgICBhcmd1bWVudEdQUjAsIGFyZ3VtZW50
R1BSMSwgYXJndW1lbnRHUFIyLCBhcmd1bWVudEdQUjMsCisgICAgICAgICAgICBhcmd1bWVudEdQ
UjQsIGFyZ3VtZW50R1BSNSwgYXJndW1lbnRHUFI2LCBhcmd1bWVudEdQUjcsCisgICAgICAgIH07
CisgICAgICAgIHJldHVybiByZWdpc3RlckZvckluZGV4W2luZGV4XTsKKyAgICB9CisKKyAgICBz
dGF0aWMgdW5zaWduZWQgdG9JbmRleChHUFJSZWcgcmVnKQorICAgIHsKKyAgICAgICAgQVNTRVJU
KHJlZyAhPSBJbnZhbGlkR1BSUmVnKTsKKyAgICAgICAgQVNTRVJUKHN0YXRpY19jYXN0PGludD4o
cmVnKSA8IDMyKTsKKyAgICAgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGluZGV4Rm9yUmVnaXN0
ZXJbMzJdID0geworICAgICAgICAgICAgSW52YWxpZEluZGV4LCBJbnZhbGlkSW5kZXgsIEludmFs
aWRJbmRleCwgSW52YWxpZEluZGV4LCBJbnZhbGlkSW5kZXgsIDgsIDksIDEwLAorICAgICAgICAg
ICAgSW52YWxpZEluZGV4LCBJbnZhbGlkSW5kZXgsIDAsIDEsIDIsIDMsIDQsIDUsCisgICAgICAg
ICAgICA2LCA3LCBJbnZhbGlkSW5kZXgsIEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LCBJbnZh
bGlkSW5kZXgsIEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LAorICAgICAgICAgICAgSW52YWxp
ZEluZGV4LCBJbnZhbGlkSW5kZXgsIEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LCAxMSwgMTIs
IEludmFsaWRJbmRleCwgSW52YWxpZEluZGV4LAorICAgICAgICB9OworICAgICAgICByZXR1cm4g
aW5kZXhGb3JSZWdpc3RlcltyZWddOworICAgIH0KKworICAgIHN0YXRpYyBjb25zdCBjaGFyKiBk
ZWJ1Z05hbWUoR1BSUmVnIHJlZykKKyAgICB7CisgICAgICAgIEFTU0VSVChyZWcgIT0gSW52YWxp
ZEdQUlJlZyk7CisgICAgICAgIHJldHVybiBNYWNyb0Fzc2VtYmxlcjo6Z3ByTmFtZShyZWcpOwor
ICAgIH0KKworICAgIHN0YXRpYyBjb25zdGV4cHIgdW5zaWduZWQgSW52YWxpZEluZGV4ID0gMHhm
ZmZmZmZmZjsKK307CisKKyNlbmRpZiAvLyBDUFUoUklTQ1Y2NCkKKwogLy8gVGhlIGJhc2VsaW5l
IEpJVCB1c2VzICJhY2N1bXVsYXRvciIgc3R5bGUgZXhlY3V0aW9uIHdpdGggcmVnVDAgKGZvciA2
NC1iaXQpCiAvLyBhbmQgcmVnVDAgKyByZWdUMSAoZm9yIDMyLWJpdCkgc2VydmluZyBhcyB0aGUg
YWNjdW11bGF0b3IgcmVnaXN0ZXIocykgZm9yCiAvLyBwYXNzaW5nIHJlc3VsdHMgb2Ygb25lIG9w
Y29kZSB0byB0aGUgbmV4dC4gSGVuY2U6CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvaml0L1JlZ2lzdGVyU2V0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvUmVnaXN0
ZXJTZXQuY3BwCmluZGV4IGE3NjI3MjI3YmZiMzE5ZWNjOTZjNDc2MmM0YzAzZjRlOTE3ZDY1MTAu
LmM1MjlkNzRhZmVjOGVhODY2YzA4NjQ2NDk1NGJmNzlhMTA4YjNkOTEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvUmVnaXN0ZXJTZXQuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9qaXQvUmVnaXN0ZXJTZXQuY3BwCkBAIC0xNTUsNiArMTU1LDMwIEBAIFJlZ2lz
dGVyU2V0IFJlZ2lzdGVyU2V0Ojp2bUNhbGxlZVNhdmVSZWdpc3RlcnMoKQogI2VsaWYgQ1BVKEFS
TV9USFVNQjIpIHx8IENQVShNSVBTKQogICAgIHJlc3VsdC5zZXQoR1BSSW5mbzo6cmVnQ1MwKTsK
ICAgICByZXN1bHQuc2V0KEdQUkluZm86OnJlZ0NTMSk7CisjZWxpZiBDUFUoUklTQ1Y2NCkKKyAg
ICByZXN1bHQuc2V0KEdQUkluZm86OnJlZ0NTMCk7CisgICAgcmVzdWx0LnNldChHUFJJbmZvOjpy
ZWdDUzEpOworICAgIHJlc3VsdC5zZXQoR1BSSW5mbzo6cmVnQ1MyKTsKKyAgICByZXN1bHQuc2V0
KEdQUkluZm86OnJlZ0NTMyk7CisgICAgcmVzdWx0LnNldChHUFJJbmZvOjpyZWdDUzQpOworICAg
IHJlc3VsdC5zZXQoR1BSSW5mbzo6cmVnQ1M1KTsKKyAgICByZXN1bHQuc2V0KEdQUkluZm86OnJl
Z0NTNik7CisgICAgcmVzdWx0LnNldChHUFJJbmZvOjpyZWdDUzcpOworICAgIHJlc3VsdC5zZXQo
R1BSSW5mbzo6cmVnQ1M4KTsKKyAgICByZXN1bHQuc2V0KEdQUkluZm86OnJlZ0NTOSk7CisgICAg
cmVzdWx0LnNldChHUFJJbmZvOjpyZWdDUzEwKTsKKyAgICByZXN1bHQuc2V0KEZQUkluZm86OmZw
UmVnQ1MwKTsKKyAgICByZXN1bHQuc2V0KEZQUkluZm86OmZwUmVnQ1MxKTsKKyAgICByZXN1bHQu
c2V0KEZQUkluZm86OmZwUmVnQ1MyKTsKKyAgICByZXN1bHQuc2V0KEZQUkluZm86OmZwUmVnQ1Mz
KTsKKyAgICByZXN1bHQuc2V0KEZQUkluZm86OmZwUmVnQ1M0KTsKKyAgICByZXN1bHQuc2V0KEZQ
UkluZm86OmZwUmVnQ1M1KTsKKyAgICByZXN1bHQuc2V0KEZQUkluZm86OmZwUmVnQ1M2KTsKKyAg
ICByZXN1bHQuc2V0KEZQUkluZm86OmZwUmVnQ1M3KTsKKyAgICByZXN1bHQuc2V0KEZQUkluZm86
OmZwUmVnQ1M4KTsKKyAgICByZXN1bHQuc2V0KEZQUkluZm86OmZwUmVnQ1M5KTsKKyAgICByZXN1
bHQuc2V0KEZQUkluZm86OmZwUmVnQ1MxMCk7CisgICAgcmVzdWx0LnNldChGUFJJbmZvOjpmcFJl
Z0NTMTEpOwogI2VuZGlmCiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KQEAgLTE5Miw3ICsyMTYsNyBA
QCBSZWdpc3RlclNldCBSZWdpc3RlclNldDo6bGxpbnRCYXNlbGluZUNhbGxlZVNhdmVSZWdpc3Rl
cnMoKQogI2VsaWYgQ1BVKEFSTV9USFVNQjIpCiAgICAgcmVzdWx0LnNldChHUFJJbmZvOjpyZWdD
UzApOwogICAgIHJlc3VsdC5zZXQoR1BSSW5mbzo6cmVnQ1MxKTsKLSNlbGlmIENQVShBUk02NCkK
KyNlbGlmIENQVShBUk02NCkgfHwgQ1BVKFJJU0NWNjQpCiAgICAgcmVzdWx0LnNldChHUFJJbmZv
OjpyZWdDUzYpOwogICAgIHJlc3VsdC5zZXQoR1BSSW5mbzo6cmVnQ1M3KTsKICAgICBzdGF0aWNf
YXNzZXJ0KEdQUkluZm86OnJlZ0NTOCA9PSBHUFJJbmZvOjpudW1iZXJUYWdSZWdpc3RlciwgIiIp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xMSW50RGF0YS5oIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xMSW50RGF0YS5oCmluZGV4IDNmOGU4OGRiNmJi
YWRiZDQ1MTUxOGMxMjhjYTZkNmQ1ZWQxZWJjNTIuLjQ3MWZiNWQyZmQzYjgwOTM5NmE1MjNjZTMz
ZmNiMmE4NTk4MzZhY2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9sbGludC9M
TEludERhdGEuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTExJbnREYXRhLmgK
QEAgLTM4MSw3ICszODEsNyBAQCBzdHJ1Y3QgUmVnaXN0ZXJzIHsKICNlbGlmIENQVShYODZfNjQp
ICYmIE9TKFdJTkRPV1MpCiAgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgbWV0YWRhdGFUYWJs
ZUdQUiA9IEdQUkluZm86OnJlZ0NTMzsKICAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBwYkdQ
UiA9IEdQUkluZm86OnJlZ0NTNDsKLSNlbGlmIENQVShBUk02NCkKKyNlbGlmIENQVShBUk02NCkg
fHwgQ1BVKFJJU0NWNjQpCiAgICAgc3RhdGljIGNvbnN0ZXhwciBHUFJSZWcgbWV0YWRhdGFUYWJs
ZUdQUiA9IEdQUkluZm86OnJlZ0NTNjsKICAgICBzdGF0aWMgY29uc3RleHByIEdQUlJlZyBwYkdQ
UiA9IEdQUkluZm86OnJlZ0NTNzsKICNlbGlmIENQVShNSVBTKSB8fCBDUFUoQVJNX1RIVU1CMikK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9sbGludC9MTEludE9mZmxpbmVBc21D
b25maWcuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9sbGludC9MTEludE9mZmxpbmVBc21Db25m
aWcuaAppbmRleCAzM2JlNDA1ODdhMjViYTQ1MjYzNThhMzg3NzRiMDliMGRkYzc3YjVjLi44Yjll
NTdkMzNmNzMyNDliOWIxMWNiNzYzMzdlNWNjMDQxYjQyMjUzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvbGxpbnQvTExJbnRPZmZsaW5lQXNtQ29uZmlnLmgKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2xsaW50L0xMSW50T2ZmbGluZUFzbUNvbmZpZy5oCkBAIC00Nyw2ICs0
Nyw3IEBACiAjZGVmaW5lIE9GRkxJTkVfQVNNX0FSTXY3ayAwCiAjZGVmaW5lIE9GRkxJTkVfQVNN
X0FSTXY3cyAwCiAjZGVmaW5lIE9GRkxJTkVfQVNNX01JUFMgMAorI2RlZmluZSBPRkZMSU5FX0FT
TV9SSVNDVjY0IDAKIAogI2Vsc2UgLy8gRU5BQkxFKENfTE9PUCkKIApAQCAtMTE1LDYgKzExNiwx
MiBAQAogI2RlZmluZSBPRkZMSU5FX0FTTV9BUk02NEUgMAogI2VuZGlmCiAKKyNpZiBDUFUoUklT
Q1Y2NCkKKyNkZWZpbmUgT0ZGTElORV9BU01fUklTQ1Y2NCAxCisjZWxzZQorI2RlZmluZSBPRkZM
SU5FX0FTTV9SSVNDVjY0IDAKKyNlbmRpZgorCiAjaWYgQ1BVKE1JUFMpCiAjaWZkZWYgV1RGX01J
UFNfUElDCiAjZGVmaW5lIFMoeCkgI3gKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9sbGludC9Mb3dMZXZlbEludGVycHJldGVyLmFzbSBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9s
bGludC9Mb3dMZXZlbEludGVycHJldGVyLmFzbQppbmRleCA4MzQyYjNhMmJkZmRhYjUwYjQ2ZDY3
OTY1OGIyMmMyYWVkN2E5MmQ4Li5iYWYwYzg5YjUyNTkyNGMzMjE3MzAzYTA3YjBiYzM1ODVhOTU5
ZGNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTG93TGV2ZWxJbnRl
cnByZXRlci5hc20KKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xvd0xldmVsSW50
ZXJwcmV0ZXIuYXNtCkBAIC0yMTksNyArMjE5LDcgQEAgZW5kCiAKIGNvbnN0IG1heEZyYW1lRXh0
ZW50Rm9yU2xvd1BhdGhDYWxsID0gY29uc3RleHByIG1heEZyYW1lRXh0ZW50Rm9yU2xvd1BhdGhD
YWxsCiAKLWlmIFg4Nl82NCBvciBYODZfNjRfV0lOIG9yIEFSTTY0IG9yIEFSTTY0RQoraWYgWDg2
XzY0IG9yIFg4Nl82NF9XSU4gb3IgQVJNNjQgb3IgQVJNNjRFIG9yIFJJU0NWNjQKICAgICBjb25z
dCBDYWxsZWVTYXZlU3BhY2VBc1ZpcnR1YWxSZWdpc3RlcnMgPSA0CiBlbHNpZiBDX0xPT1Agb3Ig
Q19MT09QX1dJTgogICAgIGNvbnN0IENhbGxlZVNhdmVTcGFjZUFzVmlydHVhbFJlZ2lzdGVycyA9
IDEKQEAgLTI3Niw3ICsyNzYsNyBAQCBjb25zdCBWTVRyYXBzQXN5bmNFdmVudHMgPSBjb25zdGV4
cHIgVk1UcmFwczo6QXN5bmNFdmVudHMKICMgICBUaGlzIHJlcXVpcmVzIGFuIGFkZCBiZWZvcmUg
dGhlIGNhbGwsIGFuZCBhIHN1YiBhZnRlci4KIGlmIEpTVkFMVUU2NAogICAgIGNvbnN0IFBDID0g
dDQgIyBXaGVuIGNoYW5naW5nIHRoaXMsIG1ha2Ugc3VyZSBMTEludFBDIGlzIHVwIHRvIGRhdGUg
aW4gTExJbnRQQ1Jhbmdlcy5oCi0gICAgaWYgQVJNNjQgb3IgQVJNNjRFCisgICAgaWYgQVJNNjQg
b3IgQVJNNjRFIG9yIFJJU0NWNjQKICAgICAgICAgY29uc3QgbWV0YWRhdGFUYWJsZSA9IGNzcjYK
ICAgICAgICAgY29uc3QgUEIgPSBjc3I3CiAgICAgICAgIGNvbnN0IG51bWJlclRhZyA9IGNzcjgK
QEAgLTczMCw3ICs3MzAsNyBAQCBtYWNybyBjaGVja1N0YWNrUG9pbnRlckFsaWdubWVudCh0ZW1w
UmVnLCBsb2NhdGlvbikKICAgICBlbmQKIGVuZAogCi1pZiBDX0xPT1Agb3IgQ19MT09QX1dJTiBv
ciBBUk02NCBvciBBUk02NEUgb3IgWDg2XzY0IG9yIFg4Nl82NF9XSU4KK2lmIENfTE9PUCBvciBD
X0xPT1BfV0lOIG9yIEFSTTY0IG9yIEFSTTY0RSBvciBYODZfNjQgb3IgWDg2XzY0X1dJTiBvciBS
SVNDVjY0CiAgICAgY29uc3QgQ2FsbGVlU2F2ZVJlZ2lzdGVyQ291bnQgPSAwCiBlbHNpZiBBUk12
NwogICAgIGNvbnN0IENhbGxlZVNhdmVSZWdpc3RlckNvdW50ID0gNwpAQCAtNzQ3LDcgKzc0Nyw3
IEBAIGNvbnN0IENhbGxlZVJlZ2lzdGVyU2F2ZVNpemUgPSBDYWxsZWVTYXZlUmVnaXN0ZXJDb3Vu
dCAqIE1hY2hpbmVSZWdpc3RlclNpemUKIGNvbnN0IFZNRW50cnlUb3RhbEZyYW1lU2l6ZSA9IChD
YWxsZWVSZWdpc3RlclNhdmVTaXplICsgc2l6ZW9mIFZNRW50cnlSZWNvcmQgKyBTdGFja0FsaWdu
bWVudCAtIDEpICYgflN0YWNrQWxpZ25tZW50TWFzawogCiBtYWNybyBwdXNoQ2FsbGVlU2F2ZXMo
KQotICAgIGlmIENfTE9PUCBvciBDX0xPT1BfV0lOIG9yIEFSTTY0IG9yIEFSTTY0RSBvciBYODZf
NjQgb3IgWDg2XzY0X1dJTgorICAgIGlmIENfTE9PUCBvciBDX0xPT1BfV0lOIG9yIEFSTTY0IG9y
IEFSTTY0RSBvciBYODZfNjQgb3IgWDg2XzY0X1dJTiBvciBSSVNDVjY0CiAgICAgZWxzaWYgQVJN
djcKICAgICAgICAgZW1pdCAicHVzaCB7cjQtcjYsIHI4LXIxMX0iCiAgICAgZWxzaWYgTUlQUwpA
QCAtNzY5LDcgKzc2OSw3IEBAIG1hY3JvIHB1c2hDYWxsZWVTYXZlcygpCiBlbmQKIAogbWFjcm8g
cG9wQ2FsbGVlU2F2ZXMoKQotICAgIGlmIENfTE9PUCBvciBDX0xPT1BfV0lOIG9yIEFSTTY0IG9y
IEFSTTY0RSBvciBYODZfNjQgb3IgWDg2XzY0X1dJTgorICAgIGlmIENfTE9PUCBvciBDX0xPT1Bf
V0lOIG9yIEFSTTY0IG9yIEFSTTY0RSBvciBYODZfNjQgb3IgWDg2XzY0X1dJTiBvciBSSVNDVjY0
CiAgICAgZWxzaWYgQVJNdjcKICAgICAgICAgZW1pdCAicG9wIHtyNC1yNiwgcjgtcjExfSIKICAg
ICBlbHNpZiBNSVBTCkBAIC03OTQsNyArNzk0LDcgQEAgbWFjcm8gcHJlc2VydmVDYWxsZXJQQ0Fu
ZENGUigpCiAgICAgICAgIHB1c2ggY2ZyCiAgICAgZWxzaWYgWDg2IG9yIFg4Nl9XSU4gb3IgWDg2
XzY0IG9yIFg4Nl82NF9XSU4KICAgICAgICAgcHVzaCBjZnIKLSAgICBlbHNpZiBBUk02NCBvciBB
Uk02NEUKKyAgICBlbHNpZiBBUk02NCBvciBBUk02NEUgb3IgUklTQ1Y2NAogICAgICAgICBwdXNo
IGNmciwgbHIKICAgICBlbHNlCiAgICAgICAgIGVycm9yCkBAIC04MDksNyArODA5LDcgQEAgbWFj
cm8gcmVzdG9yZUNhbGxlclBDQW5kQ0ZSKCkKICAgICAgICAgcG9wIGxyCiAgICAgZWxzaWYgWDg2
IG9yIFg4Nl9XSU4gb3IgWDg2XzY0IG9yIFg4Nl82NF9XSU4KICAgICAgICAgcG9wIGNmcgotICAg
IGVsc2lmIEFSTTY0IG9yIEFSTTY0RQorICAgIGVsc2lmIEFSTTY0IG9yIEFSTTY0RSBvciBSSVND
VjY0CiAgICAgICAgIHBvcCBsciwgY2ZyCiAgICAgZW5kCiBlbmQKQEAgLTg0Nyw2ICs4NDcsMTEg
QEAgbWFjcm8gcHJlc2VydmVDYWxsZWVTYXZlc1VzZWRCeUxMSW50KCkKICAgICAgICAgc3RvcmVw
IGNzcjUsIC0xNltjZnJdCiAgICAgICAgIHN0b3JlcCBjc3I0LCAtMjRbY2ZyXQogICAgICAgICBz
dG9yZXAgY3NyMywgLTMyW2Nmcl0KKyAgICBlbHNpZiBSSVNDVjY0CisgICAgICAgIHN0b3JlcCBj
c3I5LCAtOFtjZnJdCisgICAgICAgIHN0b3JlcCBjc3I4LCAtMTZbY2ZyXQorICAgICAgICBzdG9y
ZXAgY3NyNywgLTI0W2Nmcl0KKyAgICAgICAgc3RvcmVwIGNzcjYsIC0zMltjZnJdCiAgICAgZW5k
CiBlbmQKIApAQCAtODc2LDExICs4ODEsMTYgQEAgbWFjcm8gcmVzdG9yZUNhbGxlZVNhdmVzVXNl
ZEJ5TExJbnQoKQogICAgICAgICBsb2FkcCAtMjRbY2ZyXSwgY3NyNAogICAgICAgICBsb2FkcCAt
MTZbY2ZyXSwgY3NyNQogICAgICAgICBsb2FkcCAtOFtjZnJdLCBjc3I2CisgICAgZWxzaWYgUklT
Q1Y2NAorICAgICAgICBsb2FkcCAtMzJbY2ZyXSwgY3NyNgorICAgICAgICBsb2FkcCAtMjRbY2Zy
XSwgY3NyNworICAgICAgICBsb2FkcCAtMTZbY2ZyXSwgY3NyOAorICAgICAgICBsb2FkcCAtOFtj
ZnJdLCBjc3I5CiAgICAgZW5kCiBlbmQKIAogbWFjcm8gY29weUNhbGxlZVNhdmVzVG9FbnRyeUZy
YW1lQ2FsbGVlU2F2ZXNCdWZmZXIoZW50cnlGcmFtZSkKLSAgICBpZiBBUk02NCBvciBBUk02NEUg
b3IgWDg2XzY0IG9yIFg4Nl82NF9XSU4gb3IgQVJNdjcgb3IgTUlQUworICAgIGlmIEFSTTY0IG9y
IEFSTTY0RSBvciBYODZfNjQgb3IgWDg2XzY0X1dJTiBvciBBUk12NyBvciBNSVBTIG9yIFJJU0NW
NjQKICAgICAgICAgdm1FbnRyeVJlY29yZChlbnRyeUZyYW1lLCBlbnRyeUZyYW1lKQogICAgICAg
ICBsZWFwIFZNRW50cnlSZWNvcmQ6OmNhbGxlZVNhdmVSZWdpc3RlcnNCdWZmZXJbZW50cnlGcmFt
ZV0sIGVudHJ5RnJhbWUKICAgICAgICAgaWYgQVJNNjQgb3IgQVJNNjRFCkBAIC05MTksMTkgKzky
OSw0MyBAQCBtYWNybyBjb3B5Q2FsbGVlU2F2ZXNUb0VudHJ5RnJhbWVDYWxsZWVTYXZlc0J1ZmZl
cihlbnRyeUZyYW1lKQogICAgICAgICBlbHNpZiBBUk12NyBvciBNSVBTCiAgICAgICAgICAgICBz
dG9yZXAgY3NyMCwgW2VudHJ5RnJhbWVdCiAgICAgICAgICAgICBzdG9yZXAgY3NyMSwgNFtlbnRy
eUZyYW1lXQorICAgICAgICBlbHNpZiBSSVNDVjY0CisgICAgICAgICAgICBzdG9yZXAgY3NyMCwg
W2VudHJ5RnJhbWVdCisgICAgICAgICAgICBzdG9yZXAgY3NyMSwgOFtlbnRyeUZyYW1lXQorICAg
ICAgICAgICAgc3RvcmVwIGNzcjIsIDE2W2VudHJ5RnJhbWVdCisgICAgICAgICAgICBzdG9yZXAg
Y3NyMywgMjRbZW50cnlGcmFtZV0KKyAgICAgICAgICAgIHN0b3JlcCBjc3I0LCAzMltlbnRyeUZy
YW1lXQorICAgICAgICAgICAgc3RvcmVwIGNzcjUsIDQwW2VudHJ5RnJhbWVdCisgICAgICAgICAg
ICBzdG9yZXAgY3NyNiwgNDhbZW50cnlGcmFtZV0KKyAgICAgICAgICAgIHN0b3JlcCBjc3I3LCA1
NltlbnRyeUZyYW1lXQorICAgICAgICAgICAgc3RvcmVwIGNzcjgsIDY0W2VudHJ5RnJhbWVdCisg
ICAgICAgICAgICBzdG9yZXAgY3NyOSwgNzJbZW50cnlGcmFtZV0KKyAgICAgICAgICAgIHN0b3Jl
cCBjc3IxMCwgODBbZW50cnlGcmFtZV0KKyAgICAgICAgICAgIHN0b3JlZCBjc2ZyMCwgODhbZW50
cnlGcmFtZV0KKyAgICAgICAgICAgIHN0b3JlZCBjc2ZyMSwgOTZbZW50cnlGcmFtZV0KKyAgICAg
ICAgICAgIHN0b3JlZCBjc2ZyMiwgMTA0W2VudHJ5RnJhbWVdCisgICAgICAgICAgICBzdG9yZWQg
Y3NmcjMsIDExMltlbnRyeUZyYW1lXQorICAgICAgICAgICAgc3RvcmVkIGNzZnI0LCAxMjBbZW50
cnlGcmFtZV0KKyAgICAgICAgICAgIHN0b3JlZCBjc2ZyNSwgMTI4W2VudHJ5RnJhbWVdCisgICAg
ICAgICAgICBzdG9yZWQgY3NmcjYsIDEzNltlbnRyeUZyYW1lXQorICAgICAgICAgICAgc3RvcmVk
IGNzZnI3LCAxNDRbZW50cnlGcmFtZV0KKyAgICAgICAgICAgIHN0b3JlZCBjc2ZyOCwgMTUyW2Vu
dHJ5RnJhbWVdCisgICAgICAgICAgICBzdG9yZWQgY3NmcjksIDE2MFtlbnRyeUZyYW1lXQorICAg
ICAgICAgICAgc3RvcmVkIGNzZnIxMCwgMTY4W2VudHJ5RnJhbWVdCisgICAgICAgICAgICBzdG9y
ZWQgY3NmcjExLCAxNzZbZW50cnlGcmFtZV0KICAgICAgICAgZW5kCiAgICAgZW5kCiBlbmQKIAog
bWFjcm8gY29weUNhbGxlZVNhdmVzVG9WTUVudHJ5RnJhbWVDYWxsZWVTYXZlc0J1ZmZlcih2bSwg
dGVtcCkKLSAgICBpZiBBUk02NCBvciBBUk02NEUgb3IgWDg2XzY0IG9yIFg4Nl82NF9XSU4gb3Ig
QVJNdjcgb3IgTUlQUworICAgIGlmIEFSTTY0IG9yIEFSTTY0RSBvciBYODZfNjQgb3IgWDg2XzY0
X1dJTiBvciBBUk12NyBvciBNSVBTIG9yIFJJU0NWNjQKICAgICAgICAgbG9hZHAgVk06OnRvcEVu
dHJ5RnJhbWVbdm1dLCB0ZW1wCiAgICAgICAgIGNvcHlDYWxsZWVTYXZlc1RvRW50cnlGcmFtZUNh
bGxlZVNhdmVzQnVmZmVyKHRlbXApCiAgICAgZW5kCiBlbmQKIAogbWFjcm8gcmVzdG9yZUNhbGxl
ZVNhdmVzRnJvbVZNRW50cnlGcmFtZUNhbGxlZVNhdmVzQnVmZmVyKHZtLCB0ZW1wKQotICAgIGlm
IEFSTTY0IG9yIEFSTTY0RSBvciBYODZfNjQgb3IgWDg2XzY0X1dJTiBvciBBUk12NyBvciBNSVBT
CisgICAgaWYgQVJNNjQgb3IgQVJNNjRFIG9yIFg4Nl82NCBvciBYODZfNjRfV0lOIG9yIEFSTXY3
IG9yIE1JUFMgb3IgUklTQ1Y2NAogICAgICAgICBsb2FkcCBWTTo6dG9wRW50cnlGcmFtZVt2bV0s
IHRlbXAKICAgICAgICAgdm1FbnRyeVJlY29yZCh0ZW1wLCB0ZW1wKQogICAgICAgICBsZWFwIFZN
RW50cnlSZWNvcmQ6OmNhbGxlZVNhdmVSZWdpc3RlcnNCdWZmZXJbdGVtcF0sIHRlbXAKQEAgLTk3
MSwxMiArMTAwNSwzNiBAQCBtYWNybyByZXN0b3JlQ2FsbGVlU2F2ZXNGcm9tVk1FbnRyeUZyYW1l
Q2FsbGVlU2F2ZXNCdWZmZXIodm0sIHRlbXApCiAgICAgICAgIGVsc2lmIEFSTXY3IG9yIE1JUFMK
ICAgICAgICAgICAgIGxvYWRwIFt0ZW1wXSwgY3NyMAogICAgICAgICAgICAgbG9hZHAgNFt0ZW1w
XSwgY3NyMQorICAgICAgICBlbHNpZiBSSVNDVjY0CisgICAgICAgICAgICBsb2FkcSBbdGVtcF0s
IGNzcjAKKyAgICAgICAgICAgIGxvYWRxIDhbdGVtcF0sIGNzcjEKKyAgICAgICAgICAgIGxvYWRx
IDE2W3RlbXBdLCBjc3IyCisgICAgICAgICAgICBsb2FkcSAyNFt0ZW1wXSwgY3NyMworICAgICAg
ICAgICAgbG9hZHEgMzJbdGVtcF0sIGNzcjQKKyAgICAgICAgICAgIGxvYWRxIDQwW3RlbXBdLCBj
c3I1CisgICAgICAgICAgICBsb2FkcSA0OFt0ZW1wXSwgY3NyNgorICAgICAgICAgICAgbG9hZHEg
NTZbdGVtcF0sIGNzcjcKKyAgICAgICAgICAgIGxvYWRxIDY0W3RlbXBdLCBjc3I4CisgICAgICAg
ICAgICBsb2FkcSA3Mlt0ZW1wXSwgY3NyOQorICAgICAgICAgICAgbG9hZHEgODBbdGVtcF0sIGNz
cjEwCisgICAgICAgICAgICBsb2FkZCA4OFt0ZW1wXSwgY3NmcjAKKyAgICAgICAgICAgIGxvYWRk
IDk2W3RlbXBdLCBjc2ZyMQorICAgICAgICAgICAgbG9hZGQgMTA0W3RlbXBdLCBjc2ZyMgorICAg
ICAgICAgICAgbG9hZGQgMTEyW3RlbXBdLCBjc2ZyMworICAgICAgICAgICAgbG9hZGQgMTIwW3Rl
bXBdLCBjc2ZyNAorICAgICAgICAgICAgbG9hZGQgMTI4W3RlbXBdLCBjc2ZyNQorICAgICAgICAg
ICAgbG9hZGQgMTM2W3RlbXBdLCBjc2ZyNgorICAgICAgICAgICAgbG9hZGQgMTQ0W3RlbXBdLCBj
c2ZyNworICAgICAgICAgICAgbG9hZGQgMTUyW3RlbXBdLCBjc2ZyOAorICAgICAgICAgICAgbG9h
ZGQgMTYwW3RlbXBdLCBjc2ZyOQorICAgICAgICAgICAgbG9hZGQgMTY4W3RlbXBdLCBjc2ZyMTAK
KyAgICAgICAgICAgIGxvYWRkIDE3Nlt0ZW1wXSwgY3NmcjExCiAgICAgICAgIGVuZAogICAgIGVu
ZAogZW5kCiAKIG1hY3JvIHByZXNlcnZlUmV0dXJuQWRkcmVzc0FmdGVyQ2FsbChkZXN0aW5hdGlv
blJlZ2lzdGVyKQotICAgIGlmIENfTE9PUCBvciBDX0xPT1BfV0lOIG9yIEFSTXY3IG9yIEFSTTY0
IG9yIEFSTTY0RSBvciBNSVBTCisgICAgaWYgQ19MT09QIG9yIENfTE9PUF9XSU4gb3IgQVJNdjcg
b3IgQVJNNjQgb3IgQVJNNjRFIG9yIE1JUFMgb3IgUklTQ1Y2NAogICAgICAgICAjIEluIENfTE9P
UCBvciBDX0xPT1BfV0lOIGNhc2UsIHdlJ3JlIG9ubHkgcHJlc2VydmluZyB0aGUgYnl0ZWNvZGUg
dlBDLgogICAgICAgICBtb3ZlIGxyLCBkZXN0aW5hdGlvblJlZ2lzdGVyCiAgICAgZWxzaWYgWDg2
IG9yIFg4Nl9XSU4gb3IgWDg2XzY0IG9yIFg4Nl82NF9XSU4KQEAgLTk5MCw3ICsxMDQ4LDcgQEAg
bWFjcm8gZnVuY3Rpb25Qcm9sb2d1ZSgpCiAgICAgdGFnUmV0dXJuQWRkcmVzcyBzcAogICAgIGlm
IFg4NiBvciBYODZfV0lOIG9yIFg4Nl82NCBvciBYODZfNjRfV0lOCiAgICAgICAgIHB1c2ggY2Zy
Ci0gICAgZWxzaWYgQVJNNjQgb3IgQVJNNjRFCisgICAgZWxzaWYgQVJNNjQgb3IgQVJNNjRFIG9y
IFJJU0NWNjQKICAgICAgICAgcHVzaCBjZnIsIGxyCiAgICAgZWxzaWYgQ19MT09QIG9yIENfTE9P
UF9XSU4gb3IgQVJNdjcgb3IgTUlQUwogICAgICAgICBwdXNoIGxyCkBAIC0xMDAyLDcgKzEwNjAs
NyBAQCBlbmQKIG1hY3JvIGZ1bmN0aW9uRXBpbG9ndWUoKQogICAgIGlmIFg4NiBvciBYODZfV0lO
IG9yIFg4Nl82NCBvciBYODZfNjRfV0lOCiAgICAgICAgIHBvcCBjZnIKLSAgICBlbHNpZiBBUk02
NCBvciBBUk02NEUKKyAgICBlbHNpZiBBUk02NCBvciBBUk02NEUgb3IgUklTQ1Y2NAogICAgICAg
ICBwb3AgbHIsIGNmcgogICAgIGVsc2lmIENfTE9PUCBvciBDX0xPT1BfV0lOIG9yIEFSTXY3IG9y
IE1JUFMKICAgICAgICAgcG9wIGNmcgpAQCAtMTE1OCw3ICsxMjE2LDcgQEAgbWFjcm8gcHJlcGFy
ZUZvclRhaWxDYWxsKGNhbGxlZSwgdGVtcDEsIHRlbXAyLCB0ZW1wMywgdGVtcDQsIGNhbGxQdHJU
YWcpCiAgICAgYWRkaSBTdGFja0FsaWdubWVudCAtIDEgKyBDYWxsRnJhbWVIZWFkZXJTaXplLCB0
ZW1wMgogICAgIGFuZGkgflN0YWNrQWxpZ25tZW50TWFzaywgdGVtcDIKIAotICAgIGlmIEFSTXY3
IG9yIEFSTTY0IG9yIEFSTTY0RSBvciBDX0xPT1Agb3IgQ19MT09QX1dJTiBvciBNSVBTCisgICAg
aWYgQVJNdjcgb3IgQVJNNjQgb3IgQVJNNjRFIG9yIENfTE9PUCBvciBDX0xPT1BfV0lOIG9yIE1J
UFMgb3IgUklTQ1Y2NAogICAgICAgICBhZGRwIENhbGxlckZyYW1lQW5kUENTaXplLCBzcAogICAg
ICAgICBzdWJpIENhbGxlckZyYW1lQW5kUENTaXplLCB0ZW1wMgogICAgICAgICBsb2FkcCBDYWxs
ZXJGcmFtZUFuZFBDOjpyZXR1cm5QQ1tjZnJdLCBscgpAQCAtMTQ1NCw3ICsxNTEyLDcgQEAgbWFj
cm8gcHJvbG9ndWUoY29kZUJsb2NrR2V0dGVyLCBjb2RlQmxvY2tTZXR0ZXIsIG9zclNsb3dQYXRo
LCB0cmFjZVNsb3dQYXRoKQogICAgICAgICBidHB6IHIwLCAucmVjb3ZlcgogICAgICAgICBtb3Zl
IGNmciwgc3AgIyByZXN0b3JlIHRoZSBwcmV2aW91cyBzcAogICAgICAgICAjIHBvcCB0aGUgY2Fs
bGVyRnJhbWUgc2luY2Ugd2Ugd2lsbCBqdW1wIHRvIGEgZnVuY3Rpb24gdGhhdCB3YW50cyB0byBz
YXZlIGl0Ci0gICAgICAgIGlmIEFSTTY0CisgICAgICAgIGlmIEFSTTY0IG9yIFJJU0NWNjQKICAg
ICAgICAgICAgIHBvcCBsciwgY2ZyCiAgICAgICAgIGVsc2lmIEFSTTY0RQogICAgICAgICAgICAg
IyB1bnRhZ1JldHVybkFkZHJlc3Mgd2lsbCBiZSBwZXJmb3JtZWQgaW4gR2F0ZTo6ZW50cnlPU1JF
bnRyeS4KQEAgLTE4MTAsNyArMTg2OCw3IEBAIGVsc2UKICAgICAgICAgICAgIGxlYXAgKGxhYmVs
IC0gXyVraW5kJV9yZWxhdGl2ZVBDQmFzZSlbdDNdLCB0NAogICAgICAgICAgICAgbW92ZSBpbmRl
eCwgdDUKICAgICAgICAgICAgIHN0b3JlcCB0NCwgW21hcCwgdDUsIDRdCi0gICAgICAgIGVsc2lm
IEFSTTY0CisgICAgICAgIGVsc2lmIEFSTTY0IG9yIFJJU0NWNjQKICAgICAgICAgICAgIHBjcnRv
YWRkciBsYWJlbCwgdDMKICAgICAgICAgICAgIG1vdmUgaW5kZXgsIHQ0CiAgICAgICAgICAgICBz
dG9yZXAgdDMsIFttYXAsIHQ0LCBQdHJTaXplXQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2xsaW50L0xvd0xldmVsSW50ZXJwcmV0ZXI2NC5hc20gYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvbGxpbnQvTG93TGV2ZWxJbnRlcnByZXRlcjY0LmFzbQppbmRleCBiYWEwNzZhMDhmNDMw
M2UyYzgyY2JmMGE3YzM5OGUyM2M2NTIxNWU3Li5jN2QxYTIwNDgwOTMyOGRiMDQxMzk3NWQ1Yjg3
OTYyMGE1MzE3ZjBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTG93
TGV2ZWxJbnRlcnByZXRlcjY0LmFzbQorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQv
TG93TGV2ZWxJbnRlcnByZXRlcjY0LmFzbQpAQCAtOTMsNyArOTMsNyBAQCBlbmQKIAogbWFjcm8g
Y0NhbGwyKGZ1bmN0aW9uKQogICAgIGNoZWNrU3RhY2tQb2ludGVyQWxpZ25tZW50KHQ0LCAweGJh
ZDBjMDAyKQotICAgIGlmIFg4Nl82NCBvciBBUk02NCBvciBBUk02NEUKKyAgICBpZiBYODZfNjQg
b3IgQVJNNjQgb3IgQVJNNjRFIG9yIFJJU0NWNjQKICAgICAgICAgY2FsbCBmdW5jdGlvbgogICAg
IGVsc2lmIFg4Nl82NF9XSU4KICAgICAgICAgIyBOb3RlOiB0aGlzIGltcGxlbWVudGF0aW9uIGlz
IG9ubHkgY29ycmVjdCBpZiB0aGUgcmV0dXJuIHR5cGUgc2l6ZSBpcyA+IDggYnl0ZXMuCkBAIC0x
NDAsNyArMTQwLDcgQEAgZW5kCiAjIFRoaXMgYmFyZWx5IHdvcmtzLiBhcmczIGFuZCBhcmc0IHNo
b3VsZCBwcm9iYWJseSBiZSBpbW1lZGlhdGVzLgogbWFjcm8gY0NhbGw0KGZ1bmN0aW9uKQogICAg
IGNoZWNrU3RhY2tQb2ludGVyQWxpZ25tZW50KHQ0LCAweGJhZDBjMDA0KQotICAgIGlmIFg4Nl82
NCBvciBBUk02NCBvciBBUk02NEUKKyAgICBpZiBYODZfNjQgb3IgQVJNNjQgb3IgQVJNNjRFIG9y
IFJJU0NWNjQKICAgICAgICAgY2FsbCBmdW5jdGlvbgogICAgIGVsc2lmIFg4Nl82NF9XSU4KICAg
ICAgICAgIyBPbiBXaW42NCwgcmN4LCByZHgsIHI4LCBhbmQgcjkgYXJlIHVzZWQgZm9yIHBhc3Np
bmcgdGhlIGZpcnN0IGZvdXIgcGFyYW1ldGVycy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9vZmZsaW5lYXNtL2JhY2tlbmRzLnJiIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL29m
ZmxpbmVhc20vYmFja2VuZHMucmIKaW5kZXggNDE0ZjFlYWJlYWQyMjIxZmI5MTI3N2M3MDIxNzZj
ZTFmYTgwNjA3Mi4uNDUwNjY4NmY5OWYyNDQ0YWYzODI3YTE3YjRlZTg1NjBjOWYzYmI2NyAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL29mZmxpbmVhc20vYmFja2VuZHMucmIKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL29mZmxpbmVhc20vYmFja2VuZHMucmIKQEAgLTI3LDYg
KzI3LDcgQEAgcmVxdWlyZSAiYXJtNjQiCiByZXF1aXJlICJhc3QiCiByZXF1aXJlICJ4ODYiCiBy
ZXF1aXJlICJtaXBzIgorcmVxdWlyZSAicmlzY3Y2NCIKIHJlcXVpcmUgImNsb29wIgogCiBiZWdp
bgpAQCAtNDQsNiArNDUsNyBAQCBCQUNLRU5EUyA9CiAgICAgICJBUk02NCIsCiAgICAgICJBUk02
NEUiLAogICAgICAiTUlQUyIsCisgICAgICJSSVNDVjY0IiwKICAgICAgIkNfTE9PUCIsCiAgICAg
ICJDX0xPT1BfV0lOIgogICAgIF0KQEAgLTYzLDYgKzY1LDcgQEAgV09SS0lOR19CQUNLRU5EUyA9
CiAgICAgICJBUk02NCIsCiAgICAgICJBUk02NEUiLAogICAgICAiTUlQUyIsCisgICAgICJSSVND
VjY0IiwKICAgICAgIkNfTE9PUCIsCiAgICAgICJDX0xPT1BfV0lOIgogICAgIF0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9vZmZsaW5lYXNtL3JlZ2lzdGVycy5yYiBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9vZmZsaW5lYXNtL3JlZ2lzdGVycy5yYgppbmRleCBjYjg0NTdiOGY5
NDhhY2IyOGU3NmIwZDc5NDkyODg2MWZlNTgxNTA2Li4wZGM0NGMyM2RmYjJiYWQzNjVhMGZlYjU3
MTAzYWQyZmQzM2ZlYWU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvb2ZmbGlu
ZWFzbS9yZWdpc3RlcnMucmIKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL29mZmxpbmVhc20v
cmVnaXN0ZXJzLnJiCkBAIC01Nyw3ICs1Nyw4IEBAIEdQUlMgPQogICAgICAiY3NyNiIsCiAgICAg
ICJjc3I3IiwKICAgICAgImNzcjgiLAotICAgICAiY3NyOSIKKyAgICAgImNzcjkiLAorICAgICAi
Y3NyMTAiCiAgICAgXQogCiBGUFJTID0KQEAgLTgwLDYgKzgxLDEwIEBAIEZQUlMgPQogICAgICAi
Y3NmcjUiLAogICAgICAiY3NmcjYiLAogICAgICAiY3NmcjciLAorICAgICAiY3NmcjgiLAorICAg
ICAiY3NmcjkiLAorICAgICAiY3NmcjEwIiwKKyAgICAgImNzZnIxMSIsCiAgICAgICJmciIKICAg
ICBdCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9vZmZsaW5lYXNtL3Jpc2N2
NjQucmIgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvb2ZmbGluZWFzbS9yaXNjdjY0LnJiCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjRlZDMwMDY0YWI1N2I5NzdlY2YwMTc5MjU0MTBkYjhlMjMzYmVjZjAKLS0tIC9kZXYv
bnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvb2ZmbGluZWFzbS9yaXNjdjY0LnJiCkBA
IC0wLDAgKzEsMjA1NyBAQAorIyBDb3B5cmlnaHQgKEMpIDIwMjEgSWdhbGlhIFMuTC4KKyMKKyMg
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CisjIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucworIyBhcmUgbWV0OgorIyAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorIyAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisjIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0CisjICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyMgICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyMKKyMg
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVU
T1JTIGBgQVMgSVMnJworIyBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyMgVEhFIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorIyBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMKKyMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorIyBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorIyBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F
U1MKKyMgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4KKyMgQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRP
UlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyMgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgor
IyBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisKKworIyBOYW1pbmcgY29udmVudGlv
bnMKKyMKKyMgeDxudW1iZXI+ID0+IEdQUiwgdXNlZCB0byBvcGVyYXRlIHdpdGggMzItYml0IGFu
ZCA2NC1iaXQgaW50ZWdlciB2YWx1ZXMKKyMgZjxudW1iZXI+ID0+IEZQUiwgdXNlZCB0byBvcGVy
YXRlIHdpdGggMzItYml0IGFuZCA2NC1iaXQgZmxvYXRpbmctcG9pbnQgdmFsdWVzCisjCisjIEdQ
UiBjb252ZW50aW9ucywgdG8gbWF0Y2ggdGhlIGJhc2VsaW5lIEpJVDoKKyMKKyMgeDAgID0+IG5v
dCB1c2VkIChleGNlcHQgd2hlcmUgbmVlZGVkIGZvciBvcGVyYXRpb25zKSAoUklTQy1WIGhhcmQt
d2lyZWQgemVybyByZWdpc3RlcikKKyMgeDEgID0+IGxhICh0aHJvdWdoIGFsaWFzIHJhKSAoUklT
Qy1WIHJldHVybiBhZGRyZXNzIHJlZ2lzdGVyKQorIyB4MiAgPT4gc3AgKHRocm91Z2ggYWxpYXMg
c3ApIChSSVNDLVYgc3RhY2sgcG9pbnRlciByZWdpc3RlcikKKyMgeDMgID0+IG5vdCB1c2VkIChS
SVNDLVYgZ2xvYmFsIHBvaW50ZXIgcmVnaXN0ZXIpCisjIHg0ICA9PiBub3QgdXNlZCAoUklTQy1W
IHRocmVhZCBwb2ludGVyIHJlZ2lzdGVyKQorIyB4NSAgPT4gbm90IHVzZWQKKyMgeDYgID0+IHdz
MAorIyB4NyAgPT4gd3MxCisjIHg4ICA9PiBjZnIgKHRob3VnaHQgYWxpYXMgZnApIChSSVNDLVYg
ZnJhbWUgcG9pbnRlciByZWdpc3RlcikKKyMgeDkgID0+IGNzcjAKKyMgeDEwID0+IHQwLCBhMCwg
d2EwLCByMAorIyB4MTEgPT4gdDEsIGExLCB3YTEsIHIxCisjIHgxMiA9PiB0MiwgYTIsIHdhMgor
IyB4MTMgPT4gdDMsIGEzLCB3YTMKKyMgeDE0ID0+IHQ0LCBhNCwgd2E0CisjIHgxNSA9PiB0NSwg
YTUsIHdhNQorIyB4MTYgPT4gdDYsIGE2LCB3YTYKKyMgeDE3ID0+IHQ3LCBhNywgd2E3CisjIHgx
OCA9PiBjc3IxCisjIHgxOSA9PiBjc3IyCisjIHgyMCA9PiBjc3IzCisjIHgyMSA9PiBjc3I0Cisj
IHgyMiA9PiBjc3I1CisjIHgyMyA9PiBjc3I2IChtZXRhZGF0YVRhYmxlKQorIyB4MjQgPT4gY3Ny
NyAoUEIpCisjIHgyNSA9PiBjc3I4IChudW1iZXJUYWcpCisjIHgyNiA9PiBjc3I5IChub3RDZWxs
TWFzaykKKyMgeDI3ID0+IGNzcjEwCisjIHgyOCA9PiBub3QgdXNlZAorIyB4MjkgPT4gbm90IHVz
ZWQKKyMgeDMwID0+IHNjcmF0Y2ggcmVnaXN0ZXIKKyMgeDMxID0+IHNjcmF0Y2ggcmVnaXN0ZXIK
KyMKKyMgRlBSIGNvbnZlbnRpb25zLCB0byBtYXRjaCB0aGUgYmFzZWxpbmUgSklUOgorIworIyBm
MCAgPT4gZnQwCisjIGYxICA9PiBmdDEKKyMgZjIgID0+IGZ0MgorIyBmMyAgPT4gZnQzCisjIGY0
ICA9PiBmdDQKKyMgZjUgID0+IGZ0NQorIyBmNiAgPT4gbm90IHVzZWQKKyMgZjcgID0+IG5vdCB1
c2VkCisjIGY4ICA9PiBjc2ZyMAorIyBmOSAgPT4gY3NmcjEKKyMgZjEwID0+IGZhMCwgd2ZhMAor
IyBmMTEgPT4gZmExLCB3ZmExCisjIGYxMiA9PiBmYTIsIHdmYTIKKyMgZjEzID0+IGZhMywgd2Zh
MworIyBmMTQgPT4gZmE0LCB3ZmE0CisjIGYxNSA9PiBmYTUsIHdmYTUKKyMgZjE2ID0+IGZhNiwg
d2ZhNgorIyBmMTcgPT4gZmE3LCB3ZmE3CisjIGYxOCA9PiBjc2ZyMgorIyBmMTkgPT4gY3NmcjMK
KyMgZjIwID0+IGNzZnI0CisjIGYyMSA9PiBjc2ZyNQorIyBmMjIgPT4gY3NmcjYKKyMgZjIzID0+
IGNzZnI3CisjIGYyNCA9PiBjc2ZyOAorIyBmMjUgPT4gY3NmcjkKKyMgZjI2ID0+IGNzZnIxMAor
IyBmMjcgPT4gY3NmcjExCisjIGYyOCA9PiBub3QgdXNlZAorIyBmMjkgPT4gbm90IHVzZWQKKyMg
ZjMwID0+IG5vdCB1c2VkCisjIGYzMSA9PiBub3QgdXNlZAorCisKK2RlZiByaXNjdjY0T3BlcmFu
ZFR5cGVzKG9wZXJhbmRzKQorICAgIHJldHVybiBvcGVyYW5kcy5tYXAgeworICAgICAgICB8b3B8
CisgICAgICAgIG9wLmNsYXNzCisgICAgfQorZW5kCisKK2RlZiByaXNjdjY0UmFpc2VNaXNtYXRj
aGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgcmFpc2UgIlVuYWJsZSB0byBtYXRjaCBvcGVyYW5k
cyAje3Jpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpfSIKK2VuZAorCitkZWYgcmlzY3Y2NFJh
aXNlVW5zdXBwb3J0ZWQKKyAgICByYWlzZSAiTm90IHN1cHBvcnRlZCBmb3IgUklTQ1Y2NCIKK2Vu
ZAorCitkZWYgcmlzY3Y2NExvYWRJbnN0cnVjdGlvbihzaXplKQorICAgIGNhc2Ugc2l6ZQorICAg
IHdoZW4gOmIKKyAgICAgICAgImxiIgorICAgIHdoZW4gOmJ1CisgICAgICAgICJsYnUiCisgICAg
d2hlbiA6aAorICAgICAgICAibGgiCisgICAgd2hlbiA6aHUKKyAgICAgICAgImxodSIKKyAgICB3
aGVuIDp3CisgICAgICAgICJsdyIKKyAgICB3aGVuIDp3dQorICAgICAgICAibHd1IgorICAgIHdo
ZW4gOmQKKyAgICAgICAgImxkIgorICAgIGVsc2UKKyAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVk
IHNpemUgI3tzaXplfSIKKyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NFplcm9FeHRlbmRlZExv
YWRJbnN0cnVjdGlvbihzaXplKQorICAgIGNhc2Ugc2l6ZQorICAgIHdoZW4gOmIKKyAgICAgICAg
cmlzY3Y2NExvYWRJbnN0cnVjdGlvbig6YnUpCisgICAgd2hlbiA6aAorICAgICAgICByaXNjdjY0
TG9hZEluc3RydWN0aW9uKDpodSkKKyAgICB3aGVuIDp3CisgICAgICAgIHJpc2N2NjRMb2FkSW5z
dHJ1Y3Rpb24oOnd1KQorICAgIHdoZW4gOmQKKyAgICAgICAgcmlzY3Y2NExvYWRJbnN0cnVjdGlv
big6ZCkKKyAgICBlbHNlCisgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCBzaXplICN7c2l6ZX0i
CisgICAgZW5kCitlbmQKKworZGVmIHJpc2N2NjRTdG9yZUluc3RydWN0aW9uKHNpemUpCisgICAg
Y2FzZSBzaXplCisgICAgd2hlbiA6YgorICAgICAgICAic2IiCisgICAgd2hlbiA6aAorICAgICAg
ICAic2giCisgICAgd2hlbiA6dworICAgICAgICAic3ciCisgICAgd2hlbiA6ZAorICAgICAgICAi
c2QiCisgICAgZWxzZQorICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgc2l6ZSAje3NpemV9Igor
ICAgIGVuZAorZW5kCisKK2RlZiByaXNjdjY0RW1pdFJlZ2lzdGVyTWFzayh0YXJnZXQsIHNpemUp
CisgICAgY2FzZSBzaXplCisgICAgd2hlbiA6dworICAgICAgICAkYXNtLnB1dHMgImxpIHgzMSwg
MHhmZmZmZmZmZiIKKyAgICAgICAgJGFzbS5wdXRzICJhbmQgI3t0YXJnZXQucmlzY3Y2NE9wZXJh
bmR9LCAje3RhcmdldC5yaXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAgICB3aGVuIDpkCisgICAgZWxz
ZQorICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgc2l6ZSIKKyAgICBlbmQKK2VuZAorCitkZWYg
cmlzY3Y2NENvbmRpdGlvbmFsQnJhbmNoSW5zdHJ1Y3Rpb24oY29uZGl0aW9uKQorICAgIGNhc2Ug
Y29uZGl0aW9uCisgICAgd2hlbiA6ZXEKKyAgICAgICAgImJlcSIKKyAgICB3aGVuIDpuZXEKKyAg
ICAgICAgImJuZSIKKyAgICB3aGVuIDphCisgICAgICAgICJiZ3R1IgorICAgIHdoZW4gOmFlcQor
ICAgICAgICAiYmdldSIKKyAgICB3aGVuIDpiCisgICAgICAgICJibHR1IgorICAgIHdoZW4gOmJl
cQorICAgICAgICAiYmxldSIKKyAgICB3aGVuIDpndAorICAgICAgICAiYmd0IgorICAgIHdoZW4g
Omd0ZXEKKyAgICAgICAgImJnZSIKKyAgICB3aGVuIDpsdAorICAgICAgICAiYmx0IgorICAgIHdo
ZW4gOmx0ZXEKKyAgICAgICAgImJsZSIKKyAgICBlbHNlCisgICAgICAgIHJhaXNlICJVbnN1cHBv
cnRlZCBjb25kaXRpb24gI3tjb25kaXRpb259IgorICAgIGVuZAorZW5kCisKK2RlZiByaXNjdjY0
RW1pdExvYWQob3BlcmFuZHMsIHR5cGUsIG1hc2spCisgICAgaW5zdHJ1Y3Rpb24gPSByaXNjdjY0
TG9hZEluc3RydWN0aW9uKHR5cGUpCisKKyAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3Bl
cmFuZHMpCisgICAgd2hlbiBbQWRkcmVzcywgUmVnaXN0ZXJJRF0KKyAgICAgICAgaWYgb3BlcmFu
ZHNbMF0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgb3BlcmFuZHNbMF0ucmlzY3Y2
NExvYWQoUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzEpCisgICAgICAgICAgICAkYXNtLnB1dHMg
IiN7aW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAwKHgzMSkiCisg
ICAgICAgIGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0gI3tvcGVy
YW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9Igor
ICAgICAgICBlbmQKKyAgICB3aGVuIFtCYXNlSW5kZXgsIFJlZ2lzdGVySURdCisgICAgICAgIG9w
ZXJhbmRzWzBdLnJpc2N2NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxLCBSSVNDVjY0
U2NyYXRjaFJlZ2lzdGVyLngzMCkKKyAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSAj
e29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgMCh4MzEpIgorICAgIGVsc2UKKyAgICAgICAg
cmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgIGVuZAorCisgICAg
Y2FzZSBtYXNrCisgICAgd2hlbiA6dworICAgICAgICByaXNjdjY0RW1pdFJlZ2lzdGVyTWFzayhv
cGVyYW5kc1sxXSwgOncpCisgICAgd2hlbiA6bm9uZQorICAgIGVsc2UKKyAgICAgICAgcmFpc2Ug
IlVuc3VwcG9ydGVkIG1hc2sgdHlwZSIKKyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NEVtaXRT
dG9yZShvcGVyYW5kcywgdHlwZSkKKyAgICBpbnN0cnVjdGlvbiA9IHJpc2N2NjRTdG9yZUluc3Ry
dWN0aW9uKHR5cGUpCisKKyAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisg
ICAgd2hlbiBbUmVnaXN0ZXJJRCwgQWRkcmVzc10KKyAgICAgICAgaWYgb3BlcmFuZHNbMV0ucmlz
Y3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExvYWQoUklT
Q1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzEpCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1
Y3Rpb259ICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAwKHgzMSkiCisgICAgICAgIGVs
c2UKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0gI3tvcGVyYW5kc1swXS5y
aXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICBl
bmQKKyAgICB3aGVuIFtSZWdpc3RlcklELCBCYXNlSW5kZXhdCisgICAgICAgIG9wZXJhbmRzWzFd
LnJpc2N2NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxLCBSSVNDVjY0U2NyYXRjaFJl
Z2lzdGVyLngzMCkKKyAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSAje29wZXJhbmRz
WzBdLnJpc2N2NjRPcGVyYW5kfSwgMCh4MzEpIgorICAgIHdoZW4gW0ltbWVkaWF0ZSwgQWRkcmVz
c10KKyAgICAgICAgJGFzbS5wdXRzICJsaSB4MzAsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJh
bmR9IgorICAgICAgICBpZiBvcGVyYW5kc1sxXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAg
ICAgICBvcGVyYW5kc1sxXS5yaXNjdjY0TG9hZChSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMSkK
KyAgICAgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0geDMwLCAwKHgzMSkiCisgICAg
ICAgIGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0geDMwLCAje29w
ZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZW5kCisgICAgd2hlbiBbSW1tZWRp
YXRlLCBCYXNlSW5kZXhdCisgICAgICAgIG9wZXJhbmRzWzFdLnJpc2N2NjRMb2FkKFJJU0NWNjRT
Y3JhdGNoUmVnaXN0ZXIueDMxLCBSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMCkKKyAgICAgICAg
JGFzbS5wdXRzICJsaSB4MzAsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAg
ICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259IHgzMCwgMCh4MzEpIgorICAgIGVsc2UKKyAgICAg
ICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgIGVuZAorZW5k
CisKK2RlZiByaXNjdjY0RW1pdEFkZGl0aW9uT3BlcmF0aW9uKG9wZXJhbmRzLCBzaXplLCBvcGVy
YXRpb24pCisgICAgcmFpc2UgIlVuc3VwcG9ydGVkIHNpemUiIHVubGVzcyBbOncsIDpkXS5pbmNs
dWRlPyBzaXplCisKKyAgICBkZWYgYWRkaXRpb25JbnN0cnVjdGlvbihzaXplLCBvcGVyYXRpb24p
CisgICAgICAgIGNhc2Ugb3BlcmF0aW9uCisgICAgICAgIHdoZW4gOmFkZAorICAgICAgICAgICAg
c2l6ZSA9PSA6dyA/ICJhZGR3IiA6ICJhZGQiCisgICAgICAgIHdoZW4gOnN1YgorICAgICAgICAg
ICAgc2l6ZSA9PSA6dyA/ICJzdWJ3IiA6ICJzdWIiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAg
IHJhaXNlICJVbnN1cHBvcnRlZCBhcml0aG1ldGljIG9wZXJhdGlvbiIKKyAgICAgICAgZW5kCisg
ICAgZW5kCisKKyAgICBpbnN0cnVjdGlvbiA9IGFkZGl0aW9uSW5zdHJ1Y3Rpb24oc2l6ZSwgb3Bl
cmF0aW9uKQorICAgIGxvYWRJbnN0cnVjdGlvbiA9IHJpc2N2NjRMb2FkSW5zdHJ1Y3Rpb24oc2l6
ZSkKKyAgICBzdG9yZUluc3RydWN0aW9uID0gcmlzY3Y2NFN0b3JlSW5zdHJ1Y3Rpb24oc2l6ZSkK
KworICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICB3aGVuIFtSZWdp
c3RlcklELCBSZWdpc3RlcklEXQorICAgICAgICBvcGVyYW5kcyA9IFtvcGVyYW5kc1sxXSwgb3Bl
cmFuZHNbMF0sIG9wZXJhbmRzWzFdXQorICAgIHdoZW4gW0ltbWVkaWF0ZSwgUmVnaXN0ZXJJRF0K
KyAgICAgICAgb3BlcmFuZHMgPSBbb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sx
XV0KKyAgICB3aGVuIFtBZGRyZXNzLCBSZWdpc3RlcklEXQorICAgICAgICBvcGVyYW5kcyA9IFtv
cGVyYW5kc1sxXSwgb3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdXQorICAgIGVuZAorCisgICAgY2Fz
ZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgIHdoZW4gW1JlZ2lzdGVySUQsIFJl
Z2lzdGVySUQsIFJlZ2lzdGVySURdCisgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0g
I3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJh
bmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgcmlzY3Y2NEVtaXRS
ZWdpc3Rlck1hc2sob3BlcmFuZHNbMl0sIHNpemUpCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgSW1t
ZWRpYXRlLCBSZWdpc3RlcklEXQorICAgICAgICBvcGVyYW5kc1sxXS5yaXNjdjY0TG9hZChSSVND
VjY0U2NyYXRjaFJlZ2lzdGVyLngzMSkKKyAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9u
fSAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3Bl
cmFuZH0sIHgzMSIKKyAgICAgICAgcmlzY3Y2NEVtaXRSZWdpc3Rlck1hc2sob3BlcmFuZHNbMl0s
IHNpemUpCisgICAgd2hlbiBbSW1tZWRpYXRlLCBSZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAg
ICAgICBvcGVyYW5kc1swXS5yaXNjdjY0TG9hZChSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMSkK
KyAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSAje29wZXJhbmRzWzJdLnJpc2N2NjRP
cGVyYW5kfSwgeDMxLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgcmlz
Y3Y2NEVtaXRSZWdpc3Rlck1hc2sob3BlcmFuZHNbMl0sIHNpemUpCisgICAgd2hlbiBbUmVnaXN0
ZXJJRCwgQWRkcmVzcywgUmVnaXN0ZXJJRF0KKyAgICAgICAgaWYgb3BlcmFuZHNbMV0ucmlzY3Y2
NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExvYWQoUklTQ1Y2
NFNjcmF0Y2hSZWdpc3Rlci54MzEpCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7bG9hZEluc3Ry
dWN0aW9ufSB4MzEsIDAoeDMxKSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgJGFzbS5wdXRz
ICIje2xvYWRJbnN0cnVjdGlvbn0geDMxLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIK
KyAgICAgICAgZW5kCisgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0gI3tvcGVyYW5k
c1syXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEi
CisgICAgICAgIHJpc2N2NjRFbWl0UmVnaXN0ZXJNYXNrKG9wZXJhbmRzWzJdLCBzaXplKQorICAg
IHdoZW4gW0ltbWVkaWF0ZSwgQWRkcmVzc10KKyAgICAgICAgJGFzbS5wdXRzICJsaSB4MzAsICN7
b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICBpZiBvcGVyYW5kc1sxXS5yaXNj
djY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICBvcGVyYW5kc1sxXS5yaXNjdjY0TG9hZChSSVND
VjY0U2NyYXRjaFJlZ2lzdGVyLngzMSkKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tsb2FkSW5z
dHJ1Y3Rpb259IHgzMSwgMCh4MzEpIgorICAgICAgICBlbHNlCisgICAgICAgICAgICAkYXNtLnB1
dHMgIiN7bG9hZEluc3RydWN0aW9ufSB4MzEsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9
IgorICAgICAgICBlbmQKKyAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSB4MzAsIHgz
MCwgeDMxIgorICAgICAgICBpZiBvcGVyYW5kc1sxXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAg
ICAgICAgICBvcGVyYW5kc1sxXS5yaXNjdjY0TG9hZChSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngz
MSkKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tzdG9yZUluc3RydWN0aW9ufSB4MzAsIDAoeDMx
KSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgJGFzbS5wdXRzICIje3N0b3JlSW5zdHJ1Y3Rp
b259IHgzMCwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVuZAorICAg
IGVsc2UKKyAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQor
ICAgIGVuZAorZW5kCisKK2RlZiByaXNjdjY0RW1pdE11bERpdkFyaXRobWV0aWMob3BlcmFuZHMs
IHNpemUsIG9wZXJhdGlvbikKKyAgICByYWlzZSAiVW5zdXBwb3J0ZWQgc2l6ZSIgdW5sZXNzIFs6
dywgOmRdLmluY2x1ZGU/IHNpemUKKworICAgIGRlZiBhcml0aG1ldGljSW5zdHJ1Y3Rpb24oc2l6
ZSwgb3BlcmF0aW9uKQorICAgICAgICBjYXNlIG9wZXJhdGlvbgorICAgICAgICB3aGVuIDptdWwK
KyAgICAgICAgICAgIHNpemUgPT0gOncgPyAibXVsdyIgOiAibXVsIgorICAgICAgICB3aGVuIDpk
aXYKKyAgICAgICAgICAgIHNpemUgPT0gOncgPyAiZGl2dXciIDogImRpdnUiCisgICAgICAgIGVs
c2UKKyAgICAgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCBhcml0aG1ldGljIG9wZXJhdGlvbiIK
KyAgICAgICAgZW5kCisgICAgZW5kCisKKyAgICBpbnN0cnVjdGlvbiA9IGFyaXRobWV0aWNJbnN0
cnVjdGlvbihzaXplLCBvcGVyYXRpb24pCisKKyAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMo
b3BlcmFuZHMpCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAgICAgb3Bl
cmFuZHMgPSBbb3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdLCBvcGVyYW5kc1sxXV0KKyAgICB3aGVu
IFtJbW1lZGlhdGUsIFJlZ2lzdGVySURdCisgICAgICAgIG9wZXJhbmRzID0gW29wZXJhbmRzWzFd
LCBvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV1dCisgICAgZW5kCisKKyAgICBjYXNlIHJpc2N2NjRP
cGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCwg
UmVnaXN0ZXJJRF0KKyAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSAje29wZXJhbmRz
WzJdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sICN7b3Bl
cmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgIHdoZW4gW1JlZ2lzdGVySUQsIEltbWVkaWF0
ZSwgUmVnaXN0ZXJJRF0KKyAgICAgICAgJGFzbS5wdXRzICJsaSB4MzEsICN7b3BlcmFuZHNbMV0u
cmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259ICN7b3Bl
cmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwg
eDMxIgorICAgIHdoZW4gW0ltbWVkaWF0ZSwgUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAg
ICAgJGFzbS5wdXRzICJsaSB4MzEsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAg
ICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJh
bmR9LCB4MzEsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgIGVsc2UKKyAgICAg
ICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgIGVuZAorZW5k
CisKK2RlZiByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCBzaXplLCBjb25k
aXRpb24pCisgICAgaW5zdHJ1Y3Rpb24gPSByaXNjdjY0Q29uZGl0aW9uYWxCcmFuY2hJbnN0cnVj
dGlvbihjb25kaXRpb24pCisKKyAgICBkZWYgc2lnbkV4dGVuZEZvclNpemUocmVnaXN0ZXIsIHRh
cmdldCwgc2l6ZSkKKyAgICAgICAgY2FzZSBzaXplCisgICAgICAgIHdoZW4gOmIKKyAgICAgICAg
ICAgICRhc20ucHV0cyAic2xsaSAje3RhcmdldH0sICN7cmVnaXN0ZXIucmlzY3Y2NE9wZXJhbmR9
LCAyNCIKKyAgICAgICAgICAgICRhc20ucHV0cyAic2V4dC53ICN7dGFyZ2V0fSwgI3t0YXJnZXR9
IgorICAgICAgICAgICAgJGFzbS5wdXRzICJzcmFpICN7dGFyZ2V0fSwgI3t0YXJnZXR9LCAyNCIK
KyAgICAgICAgd2hlbiA6dworICAgICAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgI3t0YXJnZXR9
LCAje3JlZ2lzdGVyLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgd2hlbiA6ZAorICAgICAgICAg
ICAgJGFzbS5wdXRzICJtdiAje3RhcmdldH0sICN7cmVnaXN0ZXIucmlzY3Y2NE9wZXJhbmR9Igor
ICAgICAgICBlbmQKKyAgICBlbmQKKworICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVy
YW5kcykKKyAgICB3aGVuIFtSZWdpc3RlcklELCBSZWdpc3RlcklELCBMb2NhbExhYmVsUmVmZXJl
bmNlXQorICAgICAgICBzaWduRXh0ZW5kRm9yU2l6ZShvcGVyYW5kc1swXSwgJ3gzMCcsIHNpemUp
CisgICAgICAgIHNpZ25FeHRlbmRGb3JTaXplKG9wZXJhbmRzWzFdLCAneDMxJywgc2l6ZSkKKyAg
ICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSB4MzAsIHgzMSwgI3tvcGVyYW5kc1syXS5h
c21MYWJlbH0iCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgSW1tZWRpYXRlLCBMb2NhbExhYmVsUmVm
ZXJlbmNlXQorICAgICAgICBzaWduRXh0ZW5kRm9yU2l6ZShvcGVyYW5kc1swXSwgJ3gzMCcsIHNp
emUpCisgICAgICAgICRhc20ucHV0cyAibGkgeDMxLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVy
YW5kfSIKKyAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSB4MzAsIHgzMSwgI3tvcGVy
YW5kc1syXS5hc21MYWJlbH0iCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgQWRkcmVzcywgTG9jYWxM
YWJlbFJlZmVyZW5jZV0KKyAgICAgICAgc2lnbkV4dGVuZEZvclNpemUob3BlcmFuZHNbMF0sICd4
MzAnLCBzaXplKQorICAgICAgICBpZiBvcGVyYW5kc1sxXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisg
ICAgICAgICAgICBvcGVyYW5kc1sxXS5yaXNjdjY0TG9hZChSSVNDVjY0U2NyYXRjaFJlZ2lzdGVy
LngzMSkKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tyaXNjdjY0TG9hZEluc3RydWN0aW9uKHNp
emUpfSB4MzEsIDAoeDMxKSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgJGFzbS5wdXRzICIj
e3Jpc2N2NjRMb2FkSW5zdHJ1Y3Rpb24oc2l6ZSl9IHgzMSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0
T3BlcmFuZH0iCisgICAgICAgIGVuZAorICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259
IHgzMCwgeDMxLCAje29wZXJhbmRzWzJdLmFzbUxhYmVsfSIKKyAgICB3aGVuIFtSZWdpc3RlcklE
LCBCYXNlSW5kZXgsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAgIG9wZXJhbmRzWzFdLnJp
c2N2NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxLCBSSVNDVjY0U2NyYXRjaFJlZ2lz
dGVyLngzMCkKKyAgICAgICAgJGFzbS5wdXRzICIje3Jpc2N2NjRMb2FkSW5zdHJ1Y3Rpb24oc2l6
ZSl9IHgzMSwgMCh4MzEpIgorICAgICAgICBzaWduRXh0ZW5kRm9yU2l6ZShvcGVyYW5kc1swXSwg
J3gzMCcsIHNpemUpCisgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0geDMwLCB4MzEs
ICN7b3BlcmFuZHNbMl0uYXNtTGFiZWx9IgorICAgIHdoZW4gW0FkZHJlc3MsIFJlZ2lzdGVySUQs
IExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAgIGlmIG9wZXJhbmRzWzBdLnJpc2N2NjRSZXF1
aXJlc0xvYWQKKyAgICAgICAgICAgIG9wZXJhbmRzWzBdLnJpc2N2NjRMb2FkKFJJU0NWNjRTY3Jh
dGNoUmVnaXN0ZXIueDMxKQorICAgICAgICAgICAgJGFzbS5wdXRzICIje3Jpc2N2NjRMb2FkSW5z
dHJ1Y3Rpb24oc2l6ZSl9IHgzMCwgMCh4MzEpIgorICAgICAgICBlbHNlCisgICAgICAgICAgICAk
YXNtLnB1dHMgIiN7cmlzY3Y2NExvYWRJbnN0cnVjdGlvbihzaXplKX0geDMwLCAje29wZXJhbmRz
WzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZW5kCisgICAgICAgIHNpZ25FeHRlbmRGb3JT
aXplKG9wZXJhbmRzWzFdLCAneDMxJywgc2l6ZSkKKyAgICAgICAgJGFzbS5wdXRzICIje2luc3Ry
dWN0aW9ufSB4MzAsIHgzMSwgI3tvcGVyYW5kc1syXS5hc21MYWJlbH0iCisgICAgd2hlbiBbQWRk
cmVzcywgSW1tZWRpYXRlLCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICBpZiBvcGVyYW5k
c1swXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICBvcGVyYW5kc1swXS5yaXNjdjY0
TG9hZChSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMSkKKyAgICAgICAgICAgICRhc20ucHV0cyAi
I3tyaXNjdjY0TG9hZEluc3RydWN0aW9uKHNpemUpfSB4MzAsIDAoeDMxKSIKKyAgICAgICAgZWxz
ZQorICAgICAgICAgICAgJGFzbS5wdXRzICIje3Jpc2N2NjRMb2FkSW5zdHJ1Y3Rpb24oc2l6ZSl9
IHgzMCwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVuZAorICAgICAg
ICAkYXNtLnB1dHMgImxpIHgzMSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAg
ICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0geDMwLCB4MzEsICN7b3BlcmFuZHNbMl0uYXNt
TGFiZWx9IgorICAgIGVsc2UKKyAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRz
KG9wZXJhbmRzKQorICAgIGVuZAorZW5kCisKK2RlZiByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJh
bmNoRm9yVGVzdChvcGVyYW5kcywgc2l6ZSwgdGVzdCkKKyAgICBkZWYgYnJhbmNoSW5zdHJ1Y3Rp
b24odGVzdCkKKyAgICAgICAgY2FzZSB0ZXN0CisgICAgICAgIHdoZW4gOnoKKyAgICAgICAgICAg
ICJiZXF6IgorICAgICAgICB3aGVuIDpuegorICAgICAgICAgICAgImJuZXoiCisgICAgICAgIHdo
ZW4gOnMKKyAgICAgICAgICAgICJibHR6IgorICAgICAgICBlbHNlCisgICAgICAgIGVuZAorICAg
IGVuZAorCisgICAgZGVmIHNpZ25FeHRlbmRGb3JTaXplKHRhcmdldCwgc2l6ZSkKKyAgICAgICAg
Y2FzZSBzaXplCisgICAgICAgIHdoZW4gOmIKKyAgICAgICAgICAgICRhc20ucHV0cyAic2xsaSAj
e3RhcmdldH0sICN7dGFyZ2V0fSwgMjQiCisgICAgICAgICAgICAkYXNtLnB1dHMgInNleHQudyAj
e3RhcmdldH0sICN7dGFyZ2V0fSIKKyAgICAgICAgICAgICRhc20ucHV0cyAic3JhaSAje3Rhcmdl
dH0sICN7dGFyZ2V0fSwgMjQiCisgICAgICAgIHdoZW4gOmgKKyAgICAgICAgICAgICRhc20ucHV0
cyAic2xsaSAje3RhcmdldH0sICN7dGFyZ2V0fSwgMTYiCisgICAgICAgICAgICAkYXNtLnB1dHMg
InNleHQudyAje3RhcmdldH0sICN7dGFyZ2V0fSIKKyAgICAgICAgICAgICRhc20ucHV0cyAic3Jh
aSAje3RhcmdldH0sICN7dGFyZ2V0fSwgMTYiCisgICAgICAgIHdoZW4gOncKKyAgICAgICAgICAg
ICRhc20ucHV0cyAic2V4dC53ICN7dGFyZ2V0fSwgI3t0YXJnZXR9IgorICAgICAgICB3aGVuIDpk
CisgICAgICAgICAgICByZXR1cm4KKyAgICAgICAgZW5kCisgICAgZW5kCisKKyAgICBiSW5zdHJ1
Y3Rpb24gPSBicmFuY2hJbnN0cnVjdGlvbih0ZXN0KQorICAgIGxvYWRJbnN0cnVjdGlvbiA9IHJp
c2N2NjRMb2FkSW5zdHJ1Y3Rpb24oc2l6ZSkKKworICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBl
cyhvcGVyYW5kcykKKyAgICB3aGVuIFtSZWdpc3RlcklELCBMb2NhbExhYmVsUmVmZXJlbmNlXQor
ICAgICAgICBjYXNlIHRlc3QKKyAgICAgICAgd2hlbiA6cworICAgICAgICAgICAgJGFzbS5wdXRz
ICJtdiB4MzEsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgc2ln
bkV4dGVuZEZvclNpemUoJ3gzMScsIHNpemUpCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7Yklu
c3RydWN0aW9ufSB4MzEsICN7b3BlcmFuZHNbMV0uYXNtTGFiZWx9IgorICAgICAgICBlbHNlCisg
ICAgICAgICAgICAkYXNtLnB1dHMgIiN7Ykluc3RydWN0aW9ufSAje29wZXJhbmRzWzBdLnJpc2N2
NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5hc21MYWJlbH0iCisgICAgICAgIGVuZAorICAgIHdo
ZW4gW1JlZ2lzdGVySUQsIFJlZ2lzdGVySUQsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAg
ICRhc20ucHV0cyAiYW5kIHgzMSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sICN7b3Bl
cmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICBzaWduRXh0ZW5kRm9yU2l6ZSgneDMx
Jywgc2l6ZSkKKyAgICAgICAgJGFzbS5wdXRzICIje2JJbnN0cnVjdGlvbn0geDMxLCAje29wZXJh
bmRzWzJdLmFzbUxhYmVsfSIKKyAgICB3aGVuIFtSZWdpc3RlcklELCBJbW1lZGlhdGUsIExvY2Fs
TGFiZWxSZWZlcmVuY2VdCisgICAgICAgIGlmIG9wZXJhbmRzWzFdLnJpc2N2NjRSZXF1aXJlc0xv
YWQKKyAgICAgICAgICAgIG9wZXJhbmRzWzFdLnJpc2N2NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVn
aXN0ZXIueDMxKQorICAgICAgICAgICAgJGFzbS5wdXRzICJhbmQgeDMxLCAje29wZXJhbmRzWzBd
LnJpc2N2NjRPcGVyYW5kfSwgeDMxIgorICAgICAgICBlbHNlCisgICAgICAgICAgICAkYXNtLnB1
dHMgImFuZGkgeDMxLCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sx
XS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVuZAorICAgICAgICBzaWduRXh0ZW5kRm9yU2l6
ZSgneDMxJywgc2l6ZSkKKyAgICAgICAgJGFzbS5wdXRzICIje2JJbnN0cnVjdGlvbn0geDMxLCAj
e29wZXJhbmRzWzJdLmFzbUxhYmVsfSIKKyAgICB3aGVuIFtBZGRyZXNzLCBMb2NhbExhYmVsUmVm
ZXJlbmNlXQorICAgICAgICBpZiBvcGVyYW5kc1swXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAg
ICAgICAgICBvcGVyYW5kc1swXS5yaXNjdjY0TG9hZChSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngz
MSkKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tsb2FkSW5zdHJ1Y3Rpb259IHgzMSwgMCh4MzEp
IgorICAgICAgICBlbHNlCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7bG9hZEluc3RydWN0aW9u
fSB4MzEsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICBlbmQKKyAgICAg
ICAgJGFzbS5wdXRzICIje2JJbnN0cnVjdGlvbn0geDMxLCAje29wZXJhbmRzWzFdLmFzbUxhYmVs
fSIKKyAgICB3aGVuIFtBZGRyZXNzLCBJbW1lZGlhdGUsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisg
ICAgICAgIGlmIG9wZXJhbmRzWzBdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAgICAgICAgICAgIG9w
ZXJhbmRzWzBdLnJpc2N2NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxKQorICAgICAg
ICAgICAgJGFzbS5wdXRzICIje2xvYWRJbnN0cnVjdGlvbn0geDMwLCAwKHgzMSkiCisgICAgICAg
IGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tsb2FkSW5zdHJ1Y3Rpb259IHgzMCwgI3tv
cGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVuZAorICAgICAgICBpZiBvcGVy
YW5kc1sxXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICBvcGVyYW5kc1sxXS5yaXNj
djY0TG9hZChSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMSkKKyAgICAgICAgICAgICRhc20ucHV0
cyAiYW5kIHgzMSwgeDMwLCB4MzEiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0
cyAiYW5kaSB4MzEsIHgzMCwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAg
IGVuZAorICAgICAgICBzaWduRXh0ZW5kRm9yU2l6ZSgneDMxJywgc2l6ZSkKKyAgICAgICAgJGFz
bS5wdXRzICIje2JJbnN0cnVjdGlvbn0geDMxLCAje29wZXJhbmRzWzJdLmFzbUxhYmVsfSIKKyAg
ICB3aGVuIFtCYXNlSW5kZXgsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAgICAgIG9wZXJhbmRz
WzBdLnJpc2N2NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxLCBSSVNDVjY0U2NyYXRj
aFJlZ2lzdGVyLngzMCkKKyAgICAgICAgJGFzbS5wdXRzICIje2xvYWRJbnN0cnVjdGlvbn0geDMx
LCAwKHgzMSkiCisgICAgICAgICRhc20ucHV0cyAiI3tiSW5zdHJ1Y3Rpb259IHgzMSwgI3tvcGVy
YW5kc1sxXS5hc21MYWJlbH0iCisgICAgZWxzZQorICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRj
aGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgZW5kCitlbmQKKworZGVmIHJpc2N2NjRFbWl0Q29u
ZGl0aW9uYWxCcmFuY2hGb3JBZGRpdGlvbk9wZXJhdGlvbihvcGVyYW5kcywgc2l6ZSwgb3BlcmF0
aW9uLCB0ZXN0KQorICAgIGRlZiBhZGRpdGlvbkluc3RydWN0aW9uKHNpemUsIG9wZXJhdGlvbikK
KyAgICAgICAgY2FzZSBvcGVyYXRpb24KKyAgICAgICAgd2hlbiA6YWRkCisgICAgICAgICAgICBz
aXplID09IDp3ID8gImFkZHciIDogImFkZCIKKyAgICAgICAgd2hlbiA6c3ViCisgICAgICAgICAg
ICBzaXplID09IDp3ID8gInN1YnciIDogInN1YiIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAg
cmFpc2UgIlVuc3VwcG9ydGVkIGFyaXRobWV0aWMgb3BlcmF0aW9uIgorICAgICAgICBlbmQKKyAg
ICBlbmQKKworICAgIGRlZiBlbWl0QnJhbmNoRm9yVGVzdCh0ZXN0LCB0YXJnZXQsIGxhYmVsKQor
ICAgICAgICBjYXNlIHRlc3QKKyAgICAgICAgd2hlbiA6egorICAgICAgICAgICAgJGFzbS5wdXRz
ICJiZXF6ICN7dGFyZ2V0LnJpc2N2NjRPcGVyYW5kfSwgI3tsYWJlbC5hc21MYWJlbH0iCisgICAg
ICAgIHdoZW4gOm56CisgICAgICAgICAgICAkYXNtLnB1dHMgImJuZXogI3t0YXJnZXQucmlzY3Y2
NE9wZXJhbmR9LCAje2xhYmVsLmFzbUxhYmVsfSIKKyAgICAgICAgd2hlbiA6cworICAgICAgICAg
ICAgJGFzbS5wdXRzICJibHR6ICN7dGFyZ2V0LnJpc2N2NjRPcGVyYW5kfSwgI3tsYWJlbC5hc21M
YWJlbH0iCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCB0ZXN0
IgorICAgICAgICBlbmQKKyAgICBlbmQKKworICAgIGluc3RydWN0aW9uID0gYWRkaXRpb25JbnN0
cnVjdGlvbihzaXplLCBvcGVyYXRpb24pCisgICAgbG9hZEluc3RydWN0aW9uID0gcmlzY3Y2NExv
YWRJbnN0cnVjdGlvbihzaXplKQorICAgIHN0b3JlSW5zdHJ1Y3Rpb24gPSByaXNjdjY0U3RvcmVJ
bnN0cnVjdGlvbihzaXplKQorCisgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRz
KQorICAgIHdoZW4gW1JlZ2lzdGVySUQsIFJlZ2lzdGVySUQsIExvY2FsTGFiZWxSZWZlcmVuY2Vd
CisgICAgICAgIG9wZXJhbmRzID0gW29wZXJhbmRzWzFdLCBvcGVyYW5kc1swXSwgb3BlcmFuZHNb
MV0sIG9wZXJhbmRzWzJdXQorICAgIHdoZW4gW0ltbWVkaWF0ZSwgUmVnaXN0ZXJJRCwgTG9jYWxM
YWJlbFJlZmVyZW5jZV0KKyAgICAgICAgb3BlcmFuZHMgPSBbb3BlcmFuZHNbMV0sIG9wZXJhbmRz
WzBdLCBvcGVyYW5kc1sxXSwgb3BlcmFuZHNbMl1dCisgICAgZW5kCisKKyAgICBjYXNlIHJpc2N2
NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJ
RCwgUmVnaXN0ZXJJRCwgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAgJGFzbS5wdXRzICIj
e2luc3RydWN0aW9ufSAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sw
XS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAg
ICAkYXNtLnB1dHMgIm12IHgzMCwgI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0iCisgICAg
ICAgIHJpc2N2NjRFbWl0UmVnaXN0ZXJNYXNrKG9wZXJhbmRzWzJdLCBzaXplKQorICAgICAgICBl
bWl0QnJhbmNoRm9yVGVzdCh0ZXN0LCBSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMCwgb3BlcmFu
ZHNbM10pCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgSW1tZWRpYXRlLCBSZWdpc3RlcklELCBMb2Nh
bExhYmVsUmVmZXJlbmNlXQorICAgICAgICAkYXNtLnB1dHMgImxpIHgzMSwgI3tvcGVyYW5kc1sx
XS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0gI3tv
cGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9
LCB4MzEiCisgICAgICAgICRhc20ucHV0cyAibXYgeDMwLCAje29wZXJhbmRzWzJdLnJpc2N2NjRP
cGVyYW5kfSIKKyAgICAgICAgcmlzY3Y2NEVtaXRSZWdpc3Rlck1hc2sob3BlcmFuZHNbMl0sIHNp
emUpCisgICAgICAgIGVtaXRCcmFuY2hGb3JUZXN0KHRlc3QsIFJJU0NWNjRTY3JhdGNoUmVnaXN0
ZXIueDMwLCBvcGVyYW5kc1szXSkKKyAgICB3aGVuIFtJbW1lZGlhdGUsIEFkZHJlc3MsIExvY2Fs
TGFiZWxSZWZlcmVuY2VdCisgICAgICAgICRhc20ucHV0cyAibGkgeDMwLCAje29wZXJhbmRzWzBd
LnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgaWYgb3BlcmFuZHNbMV0ucmlzY3Y2NFJlcXVpcmVz
TG9hZAorICAgICAgICAgICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExvYWQoUklTQ1Y2NFNjcmF0Y2hS
ZWdpc3Rlci54MzEpCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7bG9hZEluc3RydWN0aW9ufSB4
MzEsIDAoeDMxKSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgJGFzbS5wdXRzICIje2xvYWRJ
bnN0cnVjdGlvbn0geDMxLCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAg
ZW5kCisgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0geDMwLCB4MzAsIHgzMSIKKyAg
ICAgICAgaWYgb3BlcmFuZHNbMV0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgb3Bl
cmFuZHNbMV0ucmlzY3Y2NExvYWQoUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzEpCisgICAgICAg
ICAgICAkYXNtLnB1dHMgIiN7c3RvcmVJbnN0cnVjdGlvbn0geDMwLCAwKHgzMSkiCisgICAgICAg
IGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tzdG9yZUluc3RydWN0aW9ufSB4MzAsICN7
b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICBlbmQKKyAgICAgICAgZW1pdEJy
YW5jaEZvclRlc3QodGVzdCwgUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzAsIG9wZXJhbmRzWzJd
KQorICAgIGVsc2UKKyAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJh
bmRzKQorICAgIGVuZAorZW5kCisKK2RlZiByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoRm9y
TXVsdGlwbGljYXRpb25PcGVyYXRpb24ob3BlcmFuZHMsIHNpemUsIHRlc3QpCisgICAgcmFpc2Ug
IlVuc3VwcG9ydGVkIHNpemUiIHVubGVzcyBzaXplID09IDp3CisKKyAgICBkZWYgZW1pdE11bHRp
cGxpY2F0aW9uKGxocywgcmhzKQorICAgICAgICAkYXNtLnB1dHMgInNleHQudyB4MzAsICN7bGhz
LnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgeDMxLCAje3Jocy5y
aXNjdjY0T3BlcmFuZH0iCisgICAgICAgICRhc20ucHV0cyAibXVsIHgzMCwgeDMwLCB4MzEiCisg
ICAgZW5kCisKKyAgICBkZWYgZW1pdEJyYW5jaEZvclRlc3QodGVzdCwgbGFiZWwpCisgICAgICAg
IGNhc2UgdGVzdAorICAgICAgICB3aGVuIDp6CisgICAgICAgICAgICAkYXNtLnB1dHMgImJlcXog
eDMwLCAje2xhYmVsLmFzbUxhYmVsfSIKKyAgICAgICAgd2hlbiA6bnoKKyAgICAgICAgICAgICRh
c20ucHV0cyAiYm5leiB4MzAsICN7bGFiZWwuYXNtTGFiZWx9IgorICAgICAgICB3aGVuIDpzCisg
ICAgICAgICAgICAkYXNtLnB1dHMgImJsdHogeDMwLCAje2xhYmVsLmFzbUxhYmVsfSIKKyAgICAg
ICAgZWxzZQorICAgICAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIHRlc3QiCisgICAgICAgIGVu
ZAorICAgIGVuZAorCisgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAg
IHdoZW4gW1JlZ2lzdGVySUQsIFJlZ2lzdGVySUQsIExvY2FsTGFiZWxSZWZlcmVuY2VdCisgICAg
ICAgIGVtaXRNdWx0aXBsaWNhdGlvbihvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV0pCisgICAgICAg
ICRhc20ucHV0cyAibXYgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIHgzMCIKKyAgICAg
ICAgcmlzY3Y2NEVtaXRSZWdpc3Rlck1hc2sob3BlcmFuZHNbMV0sIHNpemUpCisKKyAgICAgICAg
ZW1pdEJyYW5jaEZvclRlc3QodGVzdCwgb3BlcmFuZHNbMl0pCisgICAgd2hlbiBbSW1tZWRpYXRl
LCBSZWdpc3RlcklELCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICAkYXNtLnB1dHMgImxp
IHgzMCwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVtaXRNdWx0aXBs
aWNhdGlvbihSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMCwgb3BlcmFuZHNbMV0pCisgICAgICAg
ICRhc20ucHV0cyAibXYgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIHgzMCIKKyAgICAg
ICAgcmlzY3Y2NEVtaXRSZWdpc3Rlck1hc2sob3BlcmFuZHNbMV0sIHNpemUpCisKKyAgICAgICAg
ZW1pdEJyYW5jaEZvclRlc3QodGVzdCwgb3BlcmFuZHNbMl0pCisgICAgZWxzZQorICAgICAgICBy
aXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgZW5kCitlbmQKKwor
ZGVmIHJpc2N2NjRFbWl0T3ZlcmZsb3dCcmFuY2hGb3JPcGVyYXRpb24ob3BlcmFuZHMsIHNpemUs
IG9wZXJhdGlvbikKKyAgICByYWlzZSAiVW5zdXBwb3J0ZWQgc2l6ZSIgdW5sZXNzIHNpemUgPT0g
OncKKworICAgIGRlZiBvcGVyYXRpb25JbnN0cnVjdGlvbihvcGVyYXRpb24pCisgICAgICAgIGNh
c2Ugb3BlcmF0aW9uCisgICAgICAgIHdoZW4gOmFkZAorICAgICAgICAgICAgImFkZCIKKyAgICAg
ICAgd2hlbiA6c3ViCisgICAgICAgICAgICAic3ViIgorICAgICAgICB3aGVuIDptdWwKKyAgICAg
ICAgICAgICJtdWwiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJhaXNlICJVbnN1cHBvcnRl
ZCBvcGVyYXRpb24iCisgICAgICAgIGVuZAorICAgIGVuZAorCisgICAgaW5zdHJ1Y3Rpb24gPSBv
cGVyYXRpb25JbnN0cnVjdGlvbihvcGVyYXRpb24pCisKKyAgICBjYXNlIHJpc2N2NjRPcGVyYW5k
VHlwZXMob3BlcmFuZHMpCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCwgTG9jYWxM
YWJlbFJlZmVyZW5jZV0KKyAgICAgICAgb3BlcmFuZHMgPSBbb3BlcmFuZHNbMV0sIG9wZXJhbmRz
WzBdLCBvcGVyYW5kc1sxXSwgb3BlcmFuZHNbMl1dCisgICAgd2hlbiBbSW1tZWRpYXRlLCBSZWdp
c3RlcklELCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAgICBvcGVyYW5kcyA9IFtvcGVyYW5k
c1sxXSwgb3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdLCBvcGVyYW5kc1syXV0KKyAgICBlbmQKKwor
ICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICB3aGVuIFtSZWdpc3Rl
cklELCBSZWdpc3RlcklELCBSZWdpc3RlcklELCBMb2NhbExhYmVsUmVmZXJlbmNlXQorICAgICAg
ICAkYXNtLnB1dHMgInNleHQudyB4MzAsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9Igor
ICAgICAgICAkYXNtLnB1dHMgInNleHQudyB4MzEsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJh
bmR9IgorICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259IHgzMCwgeDMwLCB4MzEiCisK
KyAgICAgICAgJGFzbS5wdXRzICJtdiAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgeDMw
IgorICAgICAgICByaXNjdjY0RW1pdFJlZ2lzdGVyTWFzayhvcGVyYW5kc1syXSwgc2l6ZSkKKwor
ICAgICAgICAkYXNtLnB1dHMgInNleHQudyB4MzEsIHgzMCIKKyAgICAgICAgJGFzbS5wdXRzICJi
bmUgeDMwLCB4MzEsICN7b3BlcmFuZHNbM10uYXNtTGFiZWx9IgorICAgIHdoZW4gW1JlZ2lzdGVy
SUQsIEltbWVkaWF0ZSwgUmVnaXN0ZXJJRCwgTG9jYWxMYWJlbFJlZmVyZW5jZV0KKyAgICAgICAg
JGFzbS5wdXRzICJzZXh0LncgeDMwLCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAg
ICAgICAgJGFzbS5wdXRzICJsaSB4MzEsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9Igor
ICAgICAgICAkYXNtLnB1dHMgInNleHQudyB4MzEsIHgzMSIKKyAgICAgICAgJGFzbS5wdXRzICIj
e2luc3RydWN0aW9ufSB4MzAsIHgzMCwgeDMxIgorCisgICAgICAgICRhc20ucHV0cyAibXYgI3tv
cGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sIHgzMCIKKyAgICAgICAgcmlzY3Y2NEVtaXRSZWdp
c3Rlck1hc2sob3BlcmFuZHNbMl0sIHNpemUpCisKKyAgICAgICAgJGFzbS5wdXRzICJzZXh0Lncg
eDMxLCB4MzAiCisgICAgICAgICRhc20ucHV0cyAiYm5lIHgzMCwgeDMxLCAje29wZXJhbmRzWzNd
LmFzbUxhYmVsfSIKKyAgICBlbHNlCisgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVy
YW5kcyhvcGVyYW5kcykKKyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NEVtaXRDb21wYXJlKG9w
ZXJhbmRzLCBzaXplLCBjb25kaXRpb24pCisgICAgZGVmIHNpZ25FeHRlbmRSZWdpc3RlckZvclNp
emUocmVnaXN0ZXIsIHRhcmdldCwgc2l6ZSkKKyAgICAgICAgY2FzZSBzaXplCisgICAgICAgIHdo
ZW4gOmIKKyAgICAgICAgICAgICRhc20ucHV0cyAic2xsaSAje3RhcmdldH0sICN7cmVnaXN0ZXIu
cmlzY3Y2NE9wZXJhbmR9LCAyNCIKKyAgICAgICAgICAgICRhc20ucHV0cyAic2V4dC53ICN7dGFy
Z2V0fSwgI3t0YXJnZXR9IgorICAgICAgICAgICAgJGFzbS5wdXRzICJzcmFpICN7dGFyZ2V0fSwg
I3t0YXJnZXR9LCAyNCIKKyAgICAgICAgd2hlbiA6dworICAgICAgICAgICAgJGFzbS5wdXRzICJz
ZXh0LncgI3t0YXJnZXR9LCAje3JlZ2lzdGVyLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgd2hl
biA6ZAorICAgICAgICAgICAgJGFzbS5wdXRzICJtdiAje3RhcmdldH0sICN7cmVnaXN0ZXIucmlz
Y3Y2NE9wZXJhbmR9IgorICAgICAgICBlbHNlCisgICAgICAgICAgICByYWlzZSAiVW5zdXBwb3J0
ZWQgc2l6ZSIKKyAgICAgICAgZW5kCisgICAgZW5kCisKKyAgICBkZWYgc2lnbkV4dGVuZEltbWVk
aWF0ZUZvclNpemUoaW1tZWRpYXRlLCB0YXJnZXQsIHNpemUpCisgICAgICAgICRhc20ucHV0cyAi
bGkgI3t0YXJnZXR9LCAje2ltbWVkaWF0ZS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGNhc2Ug
c2l6ZQorICAgICAgICB3aGVuIDpiCisgICAgICAgICAgICAkYXNtLnB1dHMgInNsbGkgI3t0YXJn
ZXR9LCAje3RhcmdldH0sIDI0IgorICAgICAgICAgICAgJGFzbS5wdXRzICJzZXh0LncgI3t0YXJn
ZXR9LCAje3RhcmdldH0iCisgICAgICAgICAgICAkYXNtLnB1dHMgInNyYWkgI3t0YXJnZXR9LCAj
e3RhcmdldH0sIDI0IgorICAgICAgICB3aGVuIDp3CisgICAgICAgICAgICAkYXNtLnB1dHMgInNl
eHQudyAje3RhcmdldH0sICN7dGFyZ2V0fSIKKyAgICAgICAgd2hlbiA6ZAorICAgICAgICBlbHNl
CisgICAgICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgc2l6ZSIKKyAgICAgICAgZW5kCisgICAg
ZW5kCisKKyAgICBkZWYgbG9hZEFuZFNpZ25FeHRlbmRBZGRyZXNzRm9yU2l6ZShhZGRyZXNzLCB0
YXJnZXQsIHNpemUpCisgICAgICAgIGlmIGFkZHJlc3MucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAg
ICAgICAgICAgYWRkcmVzcy5yaXNjdjY0TG9hZChSSVNDVjY0U2NyYXRjaFJlZ2lzdGVyLngzMSkK
KyAgICAgICAgICAgICRhc20ucHV0cyAiI3tyaXNjdjY0TG9hZEluc3RydWN0aW9uKHNpemUpfSAj
e3RhcmdldH0sIDAoeDMxKSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgJGFzbS5wdXRzICIj
e3Jpc2N2NjRMb2FkSW5zdHJ1Y3Rpb24oc2l6ZSl9ICN7dGFyZ2V0fSwgI3thZGRyZXNzLnJpc2N2
NjRPcGVyYW5kfSIKKyAgICAgICAgZW5kCisgICAgZW5kCisKKyAgICBkZWYgc2V0Rm9yQ29uZGl0
aW9uKGxocywgcmhzLCB0YXJnZXQsIGNvbmRpdGlvbikKKyAgICAgICAgY2FzZSBjb25kaXRpb24K
KyAgICAgICAgd2hlbiA6ZXEKKyAgICAgICAgICAgICRhc20ucHV0cyAic3ViIHgzMSwgI3tsaHN9
LCAje3Joc30iCisgICAgICAgICAgICAkYXNtLnB1dHMgInNlcXogI3tvcGVyYW5kc1syXS5yaXNj
djY0T3BlcmFuZH0sIHgzMSIKKyAgICAgICAgd2hlbiA6bmVxCisgICAgICAgICAgICAkYXNtLnB1
dHMgInN1YiB4MzEsICN7bGhzfSwgI3tyaHN9IgorICAgICAgICAgICAgJGFzbS5wdXRzICJzbmV6
ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEiCisgICAgICAgIHdoZW4gOmEKKyAg
ICAgICAgICAgICRhc20ucHV0cyAic2x0dSAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwg
I3tyaHN9LCAje2xoc30iCisgICAgICAgIHdoZW4gOmFlcQorICAgICAgICAgICAgJGFzbS5wdXRz
ICJzbHR1ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje2xoc30sICN7cmhzfSIKKyAg
ICAgICAgICAgICRhc20ucHV0cyAieG9yaSAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwg
I3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sIDEiCisgICAgICAgIHdoZW4gOmIKKyAgICAg
ICAgICAgICRhc20ucHV0cyAic2x0dSAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgI3ts
aHN9LCAje3Joc30iCisgICAgICAgIHdoZW4gOmJlcQorICAgICAgICAgICAgJGFzbS5wdXRzICJz
bHR1ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje3Joc30sICN7bGhzfSIKKyAgICAg
ICAgICAgICRhc20ucHV0cyAieG9yaSAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgI3tv
cGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sIDEiCisgICAgICAgIHdoZW4gOmx0CisgICAgICAg
ICAgICAkYXNtLnB1dHMgInNsdCAje3RhcmdldC5yaXNjdjY0T3BlcmFuZH0sICN7bGhzfSwgI3ty
aHN9IgorICAgICAgICB3aGVuIDpsdGVxCisgICAgICAgICAgICAkYXNtLnB1dHMgInNsdCAje3Rh
cmdldC5yaXNjdjY0T3BlcmFuZH0sICN7cmhzfSwgI3tsaHN9IgorICAgICAgICAgICAgJGFzbS5w
dXRzICJ4b3JpICN7dGFyZ2V0LnJpc2N2NjRPcGVyYW5kfSwgI3t0YXJnZXQucmlzY3Y2NE9wZXJh
bmR9LCAxIgorICAgICAgICB3aGVuIDpndAorICAgICAgICAgICAgJGFzbS5wdXRzICJzbHQgI3t0
YXJnZXQucmlzY3Y2NE9wZXJhbmR9LCAje3Joc30sICN7bGhzfSIKKyAgICAgICAgd2hlbiA6Z3Rl
cQorICAgICAgICAgICAgJGFzbS5wdXRzICJzbHQgI3t0YXJnZXQucmlzY3Y2NE9wZXJhbmR9LCAj
e2xoc30sICN7cmhzfSIKKyAgICAgICAgICAgICRhc20ucHV0cyAieG9yaSAje3RhcmdldC5yaXNj
djY0T3BlcmFuZH0sICN7dGFyZ2V0LnJpc2N2NjRPcGVyYW5kfSwgMSIKKyAgICAgICAgZWxzZQor
ICAgICAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIGNvbmRpdGlvbiIKKyAgICAgICAgZW5kCisg
ICAgZW5kCisKKyAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgd2hl
biBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAgICAgc2lnbkV4dGVu
ZFJlZ2lzdGVyRm9yU2l6ZShvcGVyYW5kc1swXSwgJ3gzMCcsIHNpemUpCisgICAgICAgIHNpZ25F
eHRlbmRSZWdpc3RlckZvclNpemUob3BlcmFuZHNbMV0sICd4MzEnLCBzaXplKQorICAgICAgICBz
ZXRGb3JDb25kaXRpb24oJ3gzMCcsICd4MzEnLCBvcGVyYW5kc1syXSwgY29uZGl0aW9uKQorICAg
IHdoZW4gW1JlZ2lzdGVySUQsIEltbWVkaWF0ZSwgUmVnaXN0ZXJJRF0KKyAgICAgICAgc2lnbkV4
dGVuZFJlZ2lzdGVyRm9yU2l6ZShvcGVyYW5kc1swXSwgJ3gzMCcsIHNpemUpCisgICAgICAgIHNp
Z25FeHRlbmRJbW1lZGlhdGVGb3JTaXplKG9wZXJhbmRzWzFdLCAneDMxJywgc2l6ZSkKKyAgICAg
ICAgc2V0Rm9yQ29uZGl0aW9uKCd4MzAnLCAneDMxJywgb3BlcmFuZHNbMl0sIGNvbmRpdGlvbikK
KyAgICB3aGVuIFtBZGRyZXNzLCBSZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAgICAgICBsb2Fk
QW5kU2lnbkV4dGVuZEFkZHJlc3NGb3JTaXplKG9wZXJhbmRzWzBdLCAneDMwJywgc2l6ZSkKKyAg
ICAgICAgc2lnbkV4dGVuZFJlZ2lzdGVyRm9yU2l6ZShvcGVyYW5kc1sxXSwgJ3gzMScsIHNpemUp
CisgICAgICAgIHNldEZvckNvbmRpdGlvbigneDMwJywgJ3gzMScsIG9wZXJhbmRzWzJdLCBjb25k
aXRpb24pCisgICAgd2hlbiBbQWRkcmVzcywgSW1tZWRpYXRlLCBSZWdpc3RlcklEXQorICAgICAg
ICBsb2FkQW5kU2lnbkV4dGVuZEFkZHJlc3NGb3JTaXplKG9wZXJhbmRzWzBdLCAneDMwJywgc2l6
ZSkKKyAgICAgICAgc2lnbkV4dGVuZEltbWVkaWF0ZUZvclNpemUob3BlcmFuZHNbMV0sICd4MzEn
LCBzaXplKQorICAgICAgICBzZXRGb3JDb25kaXRpb24oJ3gzMCcsICd4MzEnLCBvcGVyYW5kc1sy
XSwgY29uZGl0aW9uKQorICAgIGVsc2UKKyAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9w
ZXJhbmRzKG9wZXJhbmRzKQorICAgIGVuZAorZW5kCisKK2RlZiByaXNjdjY0RW1pdFRlc3Qob3Bl
cmFuZHMsIHNpemUsIHRlc3QpCisgICAgZGVmIHRlc3RJbnN0cnVjdGlvbih0ZXN0KQorICAgICAg
ICBjYXNlIHRlc3QKKyAgICAgICAgd2hlbiA6egorICAgICAgICAgICAgInNlcXoiCisgICAgICAg
IHdoZW4gOm56CisgICAgICAgICAgICAic25leiIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAg
cmFpc2UgIlVua25vd24gdGVzdCB0eXBlIgorICAgICAgICBlbmQKKyAgICBlbmQKKworICAgIGlu
c3RydWN0aW9uID0gdGVzdEluc3RydWN0aW9uKHRlc3QpCisgICAgbG9hZEluc3RydWN0aW9uID0g
cmlzY3Y2NFplcm9FeHRlbmRlZExvYWRJbnN0cnVjdGlvbihzaXplKQorCisgICAgY2FzZSByaXNj
djY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgIHdoZW4gW1JlZ2lzdGVySUQsIFJlZ2lzdGVy
SUQsIFJlZ2lzdGVySURdCisgICAgICAgICRhc20ucHV0cyAiYW5kIHgzMSwgI3tvcGVyYW5kc1sw
XS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAg
ICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9
LCB4MzEiCisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgSW1tZWRpYXRlLCBSZWdpc3RlcklEXQorICAg
ICAgICBpZiBvcGVyYW5kc1sxXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICAkYXNt
LnB1dHMgImxpIHgzMSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAg
ICAkYXNtLnB1dHMgImFuZCB4MzEsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCB4MzEi
CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0cyAiYW5kaSB4MzEsICN7b3BlcmFu
ZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAg
ICAgICAgZW5kCisgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0gI3tvcGVyYW5kc1sy
XS5yaXNjdjY0T3BlcmFuZH0sIHgzMSIKKyAgICB3aGVuIFtBZGRyZXNzLCBJbW1lZGlhdGUsIFJl
Z2lzdGVySURdCisgICAgICAgIGlmIG9wZXJhbmRzWzBdLnJpc2N2NjRSZXF1aXJlc0xvYWQKKyAg
ICAgICAgICAgIG9wZXJhbmRzWzBdLnJpc2N2NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIu
eDMxKQorICAgICAgICAgICAgJGFzbS5wdXRzICIje2xvYWRJbnN0cnVjdGlvbn0geDMxLCAwKHgz
MSkiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tsb2FkSW5zdHJ1Y3Rp
b259IHgzMSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVuZAorICAg
ICAgICBpZiBvcGVyYW5kc1sxXS5yaXNjdjY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICAkYXNt
LnB1dHMgImxpIHgzMCwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAg
ICAkYXNtLnB1dHMgImFuZCB4MzEsIHgzMCwgeDMxIgorICAgICAgICBlbHNlCisgICAgICAgICAg
ICAkYXNtLnB1dHMgImFuZGkgeDMxLCB4MzEsICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9
IgorICAgICAgICBlbmQKKyAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9ufSAje29wZXJh
bmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgeDMxIgorICAgIGVsc2UKKyAgICAgICAgcmlzY3Y2NFJh
aXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgIGVuZAorZW5kCisKK2RlZiByaXNj
djY0RW1pdExvZ2ljYWxPcGVyYXRpb24ob3BlcmFuZHMsIHNpemUsIG9wZXJhdGlvbikKKyAgICBk
ZWYgb3BJbnN0cnVjdGlvbihvcGVyYXRpb24pCisgICAgICAgIGNhc2Ugb3BlcmF0aW9uCisgICAg
ICAgIHdoZW4gOmFuZAorICAgICAgICAgICAgImFuZCIKKyAgICAgICAgd2hlbiA6b3IKKyAgICAg
ICAgICAgICJvciIKKyAgICAgICAgd2hlbiA6eG9yCisgICAgICAgICAgICAieG9yIgorICAgICAg
ICBlbHNlCisgICAgICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgbG9naWNhbCBvcGVyYXRpb24i
CisgICAgICAgIGVuZAorICAgIGVuZAorCisgICAgaW5zdHJ1Y3Rpb24gPSBvcEluc3RydWN0aW9u
KG9wZXJhdGlvbikKKyAgICBsb2FkSW5zdHJ1Y3Rpb24gPSByaXNjdjY0WmVyb0V4dGVuZGVkTG9h
ZEluc3RydWN0aW9uKHNpemUpCisgICAgc3RvcmVJbnN0cnVjdGlvbiA9IHJpc2N2NjRTdG9yZUlu
c3RydWN0aW9uKHNpemUpCisKKyAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3BlcmFuZHMp
CisgICAgd2hlbiBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKyAgICAgICAgJGFzbS5wdXRzICIj
e2luc3RydWN0aW9ufSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sw
XS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAg
ICByaXNjdjY0RW1pdFJlZ2lzdGVyTWFzayhvcGVyYW5kc1sxXSwgc2l6ZSkKKyAgICB3aGVuIFtS
ZWdpc3RlcklELCBSZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAgICAgICAkYXNtLnB1dHMgIiN7
aW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBd
LnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAg
IHJpc2N2NjRFbWl0UmVnaXN0ZXJNYXNrKG9wZXJhbmRzWzJdLCBzaXplKQorICAgIHdoZW4gW1Jl
Z2lzdGVySUQsIEltbWVkaWF0ZSwgUmVnaXN0ZXJJRF0KKyAgICAgICAgaWYgb3BlcmFuZHNbMV0u
cmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgJGFzbS5wdXRzICJsaSB4MzEsICN7b3Bl
cmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgJGFzbS5wdXRzICIje2luc3Ry
dWN0aW9ufSAje29wZXJhbmRzWzJdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNj
djY0T3BlcmFuZH0sIHgzMSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgJGFzbS5wdXRzICIj
e2luc3RydWN0aW9ufWkgI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNb
MF0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAg
ICAgZW5kCisgICAgICAgIHJpc2N2NjRFbWl0UmVnaXN0ZXJNYXNrKG9wZXJhbmRzWzJdLCBzaXpl
KQorICAgIHdoZW4gW0ltbWVkaWF0ZSwgUmVnaXN0ZXJJRF0KKyAgICAgICAgaWYgb3BlcmFuZHNb
MF0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgJGFzbS5wdXRzICJsaSB4MzEsICN7
b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgJGFzbS5wdXRzICIje2lu
c3RydWN0aW9ufSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgeDMxLCAje29wZXJhbmRz
WzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgJGFzbS5wdXRz
ICIje2luc3RydWN0aW9ufWkgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFu
ZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAg
ICAgICAgZW5kCisgICAgICAgIHJpc2N2NjRFbWl0UmVnaXN0ZXJNYXNrKG9wZXJhbmRzWzFdLCBz
aXplKQorICAgIHdoZW4gW0ltbWVkaWF0ZSwgQWRkcmVzc10KKyAgICAgICAgaWYgb3BlcmFuZHNb
MV0ucmlzY3Y2NFJlcXVpcmVzTG9hZAorICAgICAgICAgICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExv
YWQoUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzEpCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7
bG9hZEluc3RydWN0aW9ufSB4MzAsIDAoeDMxKSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAg
JGFzbS5wdXRzICIje2xvYWRJbnN0cnVjdGlvbn0geDMwLCAje29wZXJhbmRzWzFdLnJpc2N2NjRP
cGVyYW5kfSIKKyAgICAgICAgZW5kCisgICAgICAgICRhc20ucHV0cyAibGkgeDMxLCAje29wZXJh
bmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgJGFzbS5wdXRzICIje2luc3RydWN0aW9u
fSB4MzAsIHgzMSwgeDMwIgorICAgICAgICBpZiBvcGVyYW5kc1sxXS5yaXNjdjY0UmVxdWlyZXNM
b2FkCisgICAgICAgICAgICBvcGVyYW5kc1sxXS5yaXNjdjY0TG9hZChSSVNDVjY0U2NyYXRjaFJl
Z2lzdGVyLngzMSkKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tzdG9yZUluc3RydWN0aW9ufSB4
MzAsIDAoeDMxKSIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgJGFzbS5wdXRzICIje3N0b3Jl
SW5zdHJ1Y3Rpb259IHgzMCwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAg
IGVuZAorICAgIGVsc2UKKyAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9w
ZXJhbmRzKQorICAgIGVuZAorZW5kCisKK2RlZiByaXNjdjY0RW1pdENvbXBsZW1lbnRPcGVyYXRp
b24ob3BlcmFuZHMsIHNpemUsIG9wZXJhdGlvbikKKyAgICBkZWYgY29tcGxlbWVudEluc3RydWN0
aW9uKHNpemUsIG9wZXJhdGlvbikKKyAgICAgICAgY2FzZSBvcGVyYXRpb24KKyAgICAgICAgd2hl
biA6bm90CisgICAgICAgICAgICAibm90IgorICAgICAgICB3aGVuIDpuZWcKKyAgICAgICAgICAg
IHNpemUgPT0gOncgPyAibmVndyIgOiAibmVnIgorICAgICAgICBlbHNlCisgICAgICAgICAgICBy
YWlzZSAiVW5zdXBwb3J0ZWQgY29tcGxlbWVudCBvcGVyYXRpb24iCisgICAgICAgIGVuZAorICAg
IGVuZAorCisgICAgaW5zdHJ1Y3Rpb24gPSBjb21wbGVtZW50SW5zdHJ1Y3Rpb24oc2l6ZSwgb3Bl
cmF0aW9uKQorCisgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgIHdo
ZW4gW1JlZ2lzdGVySURdCisgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlvbn0gI3tvcGVy
YW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9Igor
ICAgICAgICByaXNjdjY0RW1pdFJlZ2lzdGVyTWFzayhvcGVyYW5kc1swXSwgc2l6ZSkKKyAgICBl
bHNlCisgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAg
ICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NEVtaXRTaGlmdChvcGVyYW5kcywgc2l6ZSwgc2hpZnQp
CisgICAgcmFpc2UgIlVuc3VwcG9ydGVkIHNpemUiIHVubGVzcyBbOncsIDpkXS5pbmNsdWRlPyBz
aXplCisKKyAgICBkZWYgc2hpZnRJbnN0cnVjdGlvbihzaXplLCBzaGlmdCkKKyAgICAgICAgY2Fz
ZSBzaGlmdAorICAgICAgICB3aGVuIDpsbGVmdAorICAgICAgICAgICAgc2l6ZSA9PSA6dyA/ICJz
bGx3IiA6ICJzbGwiCisgICAgICAgIHdoZW4gOmxyaWdodAorICAgICAgICAgICAgc2l6ZSA9PSA6
dyA/ICJzcmx3IiA6ICJzcmwiCisgICAgICAgIHdoZW4gOmFyaWdodAorICAgICAgICAgICAgc2l6
ZSA9PSA6dyA/ICJzcmF3IiA6ICJzcmEiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJhaXNl
ICJVbnN1cHBvcnRlZCBzaGlmdCB0eXBlIgorICAgICAgICBlbmQKKyAgICBlbmQKKworICAgIGNh
c2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICB3aGVuIFtSZWdpc3RlcklELCBS
ZWdpc3RlcklEXQorICAgICAgICAkYXNtLnB1dHMgIiN7c2hpZnRJbnN0cnVjdGlvbihzaXplLCBz
aGlmdCl9ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2
NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIHJpc2N2
NjRFbWl0UmVnaXN0ZXJNYXNrKG9wZXJhbmRzWzFdLCBzaXplKQorICAgIHdoZW4gW0ltbWVkaWF0
ZSwgUmVnaXN0ZXJJRF0KKyAgICAgICAgJGFzbS5wdXRzICJsaSB4MzEsICN7b3BlcmFuZHNbMF0u
cmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAkYXNtLnB1dHMgIiN7c2hpZnRJbnN0cnVjdGlvbihz
aXplLCBzaGlmdCl9ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFd
LnJpc2N2NjRPcGVyYW5kfSwgeDMxIgorICAgICAgICByaXNjdjY0RW1pdFJlZ2lzdGVyTWFzayhv
cGVyYW5kc1sxXSwgc2l6ZSkKKyAgICBlbHNlCisgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNo
ZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICBlbmQKK2VuZAorCitkZWYgcmlzY3Y2NEVtaXRCaXRF
eHRlbnNpb24ob3BlcmFuZHMsIGZyb21TaXplLCB0b1NpemUsIGV4dGVuc2lvblR5cGUpCisgICAg
cmFpc2UgIlVuc3VwcG9ydGVkIG9wZXJhbmQgdHlwZXMiIHVubGVzcyByaXNjdjY0T3BlcmFuZFR5
cGVzKG9wZXJhbmRzKSA9PSBbUmVnaXN0ZXJJRCwgUmVnaXN0ZXJJRF0KKworICAgIGRlZiBlbWl0
U2hpZnRzKG9wZXJhbmRzLCBzaGlmdENvdW50KQorICAgICAgICAkYXNtLnB1dHMgInNsbGkgI3tv
cGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9
LCAje3NoaWZ0Q291bnR9IgorICAgICAgICAkYXNtLnB1dHMgInNleHQudyAje29wZXJhbmRzWzFd
LnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAg
ICRhc20ucHV0cyAic3JhaSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5k
c1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7c2hpZnRDb3VudH0iCisgICAgZW5kCisKKyAgICBjYXNl
IFtmcm9tU2l6ZSwgdG9TaXplLCBleHRlbnNpb25UeXBlXQorICAgIHdoZW4gWzpiLCA6dywgOnNp
Z25dLCBbOmIsIDpkLCA6c2lnbl0KKyAgICAgICAgZW1pdFNoaWZ0cyhvcGVyYW5kcywgMjQpCisg
ICAgICAgIHJpc2N2NjRFbWl0UmVnaXN0ZXJNYXNrKG9wZXJhbmRzWzFdLCB0b1NpemUpCisgICAg
d2hlbiBbOmgsIDp3LCA6c2lnbl0sIFs6aCwgOmQsIDpzaWduXQorICAgICAgICBlbWl0U2hpZnRz
KG9wZXJhbmRzLCAxNikKKyAgICAgICAgcmlzY3Y2NEVtaXRSZWdpc3Rlck1hc2sob3BlcmFuZHNb
MV0sIHRvU2l6ZSkKKyAgICB3aGVuIFs6dywgOmQsIDpzaWduXQorICAgICAgICAkYXNtLnB1dHMg
InNleHQudyAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1swXS5yaXNj
djY0T3BlcmFuZH0iCisgICAgd2hlbiBbOncsIDpkLCA6emVyb10KKyAgICAgICAgJGFzbS5wdXRz
ICJzbGxpICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2
NjRPcGVyYW5kfSwgMzIiCisgICAgICAgICRhc20ucHV0cyAic3JsaSAje29wZXJhbmRzWzFdLnJp
c2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIDMyIgorICAgIGVs
c2UKKyAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIGJpdC1leHRlbnNpb24gb3BlcmF0aW9uIgor
ICAgIGVuZAorZW5kCisKK2RlZiByaXNjdjY0RW1pdEZQTG9hZChvcGVyYW5kcywgbG9hZEluc3Ry
dWN0aW9uKQorICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICB3aGVu
IFtBZGRyZXNzLCBGUFJlZ2lzdGVySURdCisgICAgICAgIGlmIG9wZXJhbmRzWzBdLnJpc2N2NjRS
ZXF1aXJlc0xvYWQKKyAgICAgICAgICAgIG9wZXJhbmRzWzBdLnJpc2N2NjRMb2FkKFJJU0NWNjRT
Y3JhdGNoUmVnaXN0ZXIueDMxKQorICAgICAgICAgICAgJGFzbS5wdXRzICIje2xvYWRJbnN0cnVj
dGlvbn0gI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIDAoeDMxKSIKKyAgICAgICAgZWxz
ZQorICAgICAgICAgICAgJGFzbS5wdXRzICIje2xvYWRJbnN0cnVjdGlvbn0gI3tvcGVyYW5kc1sx
XS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAg
ICBlbmQKKyAgICB3aGVuIFtCYXNlSW5kZXgsIEZQUmVnaXN0ZXJJRF0KKyAgICAgICAgb3BlcmFu
ZHNbMF0ucmlzY3Y2NExvYWQoUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzEsIFJJU0NWNjRTY3Jh
dGNoUmVnaXN0ZXIueDMwKQorICAgICAgICAkYXNtLnB1dHMgIiN7bG9hZEluc3RydWN0aW9ufSAj
e29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgMCh4MzEpIgorICAgIGVsc2UKKyAgICAgICAg
cmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgIGVuZAorZW5kCisK
K2RlZiByaXNjdjY0RW1pdEZQU3RvcmUob3BlcmFuZHMsIHN0b3JlSW5zdHJ1Y3Rpb24pCisgICAg
Y2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgIHdoZW4gW0ZQUmVnaXN0ZXJJ
RCwgQWRkcmVzc10KKyAgICAgICAgaWYgb3BlcmFuZHNbMV0ucmlzY3Y2NFJlcXVpcmVzTG9hZAor
ICAgICAgICAgICAgb3BlcmFuZHNbMV0ucmlzY3Y2NExvYWQoUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rl
ci54MzEpCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7c3RvcmVJbnN0cnVjdGlvbn0gI3tvcGVy
YW5kc1swXS5yaXNjdjY0T3BlcmFuZH0sIDAoeDMxKSIKKyAgICAgICAgZWxzZQorICAgICAgICAg
ICAgJGFzbS5wdXRzICIje3N0b3JlSW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9w
ZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgZW5kCisgICAg
d2hlbiBbRlBSZWdpc3RlcklELCBCYXNlSW5kZXhdCisgICAgICAgIG9wZXJhbmRzWzFdLnJpc2N2
NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxLCBSSVNDVjY0U2NyYXRjaFJlZ2lzdGVy
LngzMCkKKyAgICAgICAgJGFzbS5wdXRzICIje3N0b3JlSW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNb
MF0ucmlzY3Y2NE9wZXJhbmR9LCAwKHgzMSkiCisgICAgZWxzZQorICAgICAgICByaXNjdjY0UmFp
c2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgZW5kCitlbmQKKworZGVmIHJpc2N2
NjRFbWl0RlBPcGVyYXRpb24ob3BlcmFuZHMsIG9wZXJhdGlvbikKKyAgICBjYXNlIHJpc2N2NjRP
cGVyYW5kVHlwZXMob3BlcmFuZHMpCisgICAgd2hlbiBbRlBSZWdpc3RlcklELCBGUFJlZ2lzdGVy
SUQsIEZQUmVnaXN0ZXJJRF0KKyAgICAgICAgJGFzbS5wdXRzICIje29wZXJhdGlvbn0gI3tvcGVy
YW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAj
e29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICB3aGVuIFtGUFJlZ2lzdGVySUQsIEZQ
UmVnaXN0ZXJJRF0KKyAgICAgICAgJGFzbS5wdXRzICIje29wZXJhdGlvbn0gI3tvcGVyYW5kc1sx
XS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgIGVs
c2UKKyAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAg
IGVuZAorZW5kCisKK2RlZiByaXNjdjY0RW1pdEZQQ29tcGFyZShvcGVyYW5kcywgcHJlY2lzaW9u
LCBjb25kaXRpb24pCisgICAgZGVmIHN1ZmZpeEZvclByZWNpc2lvbihwcmVjaXNpb24pCisgICAg
ICAgIGNhc2UgcHJlY2lzaW9uCisgICAgICAgIHdoZW4gOnMKKyAgICAgICAgICAgICJzIgorICAg
ICAgICB3aGVuIDpkCisgICAgICAgICAgICAiZCIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAg
cmFpc2UgIlVuc3VwcG9ydGVkIHByZWNpc2lvbiIKKyAgICAgICAgZW5kCisgICAgZW5kCisKKyAg
ICBkZWYgaW5zdHJ1Y3Rpb25Gb3JDb25kaXRpb24oY29uZGl0aW9uLCBwcmVjaXNpb24pCisgICAg
ICAgIHN1ZmZpeCA9IHN1ZmZpeEZvclByZWNpc2lvbihwcmVjaXNpb24pCisgICAgICAgIGNhc2Ug
Y29uZGl0aW9uCisgICAgICAgIHdoZW4gOmVxLCA6bmVxCisgICAgICAgICAgICAiZmVxLiN7c3Vm
Zml4fSIKKyAgICAgICAgd2hlbiA6bHQsIDpndAorICAgICAgICAgICAgImZsdC4je3N1ZmZpeH0i
CisgICAgICAgIHdoZW4gOmx0ZXEsIDpndGVxCisgICAgICAgICAgICAiZmxlLiN7c3VmZml4fSIK
KyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIGNvbmRpdGlvbiIK
KyAgICAgICAgZW5kCisgICAgZW5kCisKKyAgICBkZWYgc2V0Rm9yQ29uZGl0aW9uKG9wZXJhbmRz
LCBwcmVjaXNpb24sIGNvbmRpdGlvbikKKyAgICAgICAgaW5zdHJ1Y3Rpb24gPSBpbnN0cnVjdGlv
bkZvckNvbmRpdGlvbihjb25kaXRpb24sIHByZWNpc2lvbikKKyAgICAgICAgY2FzZSBjb25kaXRp
b24KKyAgICAgICAgd2hlbiA6ZXEKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVjdGlv
bn0gI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9w
ZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgd2hlbiA6bmVx
CisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259ICN7b3BlcmFuZHNbMl0ucmlz
Y3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5kc1sx
XS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICAkYXNtLnB1dHMgInhvcmkgI3tvcGVyYW5k
c1syXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAxIgor
ICAgICAgICB3aGVuIDpsdCwgOmx0ZXEKKyAgICAgICAgICAgICRhc20ucHV0cyAiI3tpbnN0cnVj
dGlvbn0gI3tvcGVyYW5kc1syXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2
NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgd2hlbiA6
Z3QsIDpndGVxCisgICAgICAgICAgICAkYXNtLnB1dHMgIiN7aW5zdHJ1Y3Rpb259ICN7b3BlcmFu
ZHNbMl0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tv
cGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJh
aXNlICJVbnN1cHBvcnRlZCBjb25kaXRpb24iCisgICAgICAgIGVuZAorICAgIGVuZAorCisgICAg
Y2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgIHdoZW4gW0ZQUmVnaXN0ZXJJ
RCwgRlBSZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAgICAgICBzZXRGb3JDb25kaXRpb24ob3Bl
cmFuZHMsIHByZWNpc2lvbiwgY29uZGl0aW9uKQorICAgIGVsc2UKKyAgICAgICAgcmlzY3Y2NFJh
aXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgIGVuZAorZW5kCisKK2RlZiByaXNj
djY0RW1pdEZQQml0d2lzZU9wZXJhdGlvbihvcGVyYW5kcywgcHJlY2lzaW9uLCBvcGVyYXRpb24p
CisgICAgZGVmIHN1ZmZpeEZvclByZWNpc2lvbihwcmVjaXNpb24pCisgICAgICAgIGNhc2UgcHJl
Y2lzaW9uCisgICAgICAgIHdoZW4gOnMKKyAgICAgICAgICAgICJ3IgorICAgICAgICB3aGVuIDpk
CisgICAgICAgICAgICAiZCIKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmFpc2UgIlVuc3Vw
cG9ydGVkIHByZWNpc2lvbiIKKyAgICAgICAgZW5kCisgICAgZW5kCisKKyAgICBzdWZmaXggPSBz
dWZmaXhGb3JQcmVjaXNpb24ocHJlY2lzaW9uKQorCisgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5
cGVzKG9wZXJhbmRzKQorICAgIHdoZW4gW0ZQUmVnaXN0ZXJJRCwgRlBSZWdpc3RlcklEXQorICAg
ICAgICAkYXNtLnB1dHMgImZtdi54LiN7c3VmZml4fSB4MzAsICN7b3BlcmFuZHNbMF0ucmlzY3Y2
NE9wZXJhbmR9IgorICAgICAgICAkYXNtLnB1dHMgImZtdi54LiN7c3VmZml4fSB4MzEsICN7b3Bl
cmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAkYXNtLnB1dHMgIiN7b3BlcmF0aW9u
fSB4MzEsIHgzMCwgeDMxIgorICAgICAgICAkYXNtLnB1dHMgImZtdi4je3N1ZmZpeH0ueCAje29w
ZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgeDMxIgorICAgIGVsc2UKKyAgICAgICAgcmlzY3Y2
NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgIGVuZAorZW5kCisKK2RlZiBy
aXNjdjY0RW1pdEZQQ29weShvcGVyYW5kcywgcHJlY2lzaW9uKQorICAgIGRlZiBzdWZmaXhGb3JQ
cmVjaXNpb24ocHJlY2lzaW9uKQorICAgICAgICBjYXNlIHByZWNpc2lvbgorICAgICAgICB3aGVu
IDpzCisgICAgICAgICAgICAidyIKKyAgICAgICAgd2hlbiA6ZAorICAgICAgICAgICAgImQiCisg
ICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCBwcmVjaXNpb24iCisg
ICAgICAgIGVuZAorICAgIGVuZAorCisgICAgc3VmZml4ID0gc3VmZml4Rm9yUHJlY2lzaW9uKHBy
ZWNpc2lvbikKKworICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICB3
aGVuIFtSZWdpc3RlcklELCBGUFJlZ2lzdGVySURdCisgICAgICAgICRhc20ucHV0cyAiZm12LiN7
c3VmZml4fS54ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJp
c2N2NjRPcGVyYW5kfSIKKyAgICB3aGVuIFtGUFJlZ2lzdGVySUQsIFJlZ2lzdGVySURdCisgICAg
ICAgICRhc20ucHV0cyAiZm12LnguI3tzdWZmaXh9ICN7b3BlcmFuZHNbMV0ucmlzY3Y2NE9wZXJh
bmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICBlbHNlCisgICAgICAgIHJp
c2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICBlbmQKK2VuZAorCitk
ZWYgcmlzY3Y2NEVtaXRGUENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgcHJlY2lz
aW9uLCB0ZXN0KQorICAgIGRlZiBzdWZmaXhGb3JQcmVjaXNpb24ocHJlY2lzaW9uKQorICAgICAg
ICBjYXNlIHByZWNpc2lvbgorICAgICAgICB3aGVuIDpzCisgICAgICAgICAgICAicyIKKyAgICAg
ICAgd2hlbiA6ZAorICAgICAgICAgICAgImQiCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJh
aXNlICJVbnN1cHBvcnRlZCBwcmVjaXNpb24iCisgICAgICAgIGVuZAorICAgIGVuZAorCisgICAg
ZGVmIGVtaXRCcmFuY2hGb3JVbm9yZGVyZWQobGhzLCByaHMsIGxhYmVsLCBwcmVjaXNpb24pCisg
ICAgICAgIHN1ZmZpeCA9IHN1ZmZpeEZvclByZWNpc2lvbihwcmVjaXNpb24pCisKKyAgICAgICAg
JGFzbS5wdXRzICJmY2xhc3MuZCB4MzAsICN7bGhzLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAg
JGFzbS5wdXRzICJmY2xhc3MuZCB4MzEsICN7cmhzLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAg
JGFzbS5wdXRzICJvciB4MzEsIHgzMCwgeDMxIgorICAgICAgICAkYXNtLnB1dHMgImxpIHgzMCwg
MHgzMDAiCisgICAgICAgICRhc20ucHV0cyAiYW5kIHgzMSwgeDMxLCB4MzAiCisgICAgICAgICRh
c20ucHV0cyAiYm5leiB4MzEsICN7bGFiZWwuYXNtTGFiZWx9IgorICAgIGVuZAorCisgICAgZGVm
IGVtaXRCcmFuY2hGb3JUZXN0KHRlc3QsIGxocywgcmhzLCBicmFuY2gsIGxhYmVsLCBwcmVjaXNp
b24pCisgICAgICAgIHN1ZmZpeCA9IHN1ZmZpeEZvclByZWNpc2lvbihwcmVjaXNpb24pCisKKyAg
ICAgICAgJGFzbS5wdXRzICIje3Rlc3R9LiN7c3VmZml4fSB4MzEsICN7bGhzLnJpc2N2NjRPcGVy
YW5kfSwgI3tyaHMucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAkYXNtLnB1dHMgIiN7YnJhbmNo
fSB4MzEsICN7bGFiZWwuYXNtTGFiZWx9IgorICAgIGVuZAorCisgICAgc3VmZml4ID0gc3VmZml4
Rm9yUHJlY2lzaW9uKHByZWNpc2lvbikKKworICAgIGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhv
cGVyYW5kcykKKyAgICB3aGVuIFtGUFJlZ2lzdGVySUQsIEZQUmVnaXN0ZXJJRCwgTG9jYWxMYWJl
bFJlZmVyZW5jZV0KKyAgICAgICAgY2FzZSB0ZXN0CisgICAgICAgIHdoZW4gOmVxCisgICAgICAg
ICAgICBlbWl0QnJhbmNoRm9yVGVzdCgiZmVxIiwgb3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdLCAi
Ym5leiIsIG9wZXJhbmRzWzJdLCBwcmVjaXNpb24pCisgICAgICAgIHdoZW4gOm5lcQorICAgICAg
ICAgICAgZW1pdEJyYW5jaEZvclRlc3QoImZlcSIsIG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSwg
ImJlcXoiLCBvcGVyYW5kc1syXSwgcHJlY2lzaW9uKQorICAgICAgICB3aGVuIDpsdAorICAgICAg
ICAgICAgZW1pdEJyYW5jaEZvclRlc3QoImZsdCIsIG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSwg
ImJuZXoiLCBvcGVyYW5kc1syXSwgcHJlY2lzaW9uKQorICAgICAgICB3aGVuIDpsdGVxCisgICAg
ICAgICAgICBlbWl0QnJhbmNoRm9yVGVzdCgiZmxlIiwgb3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFd
LCAiYm5leiIsIG9wZXJhbmRzWzJdLCBwcmVjaXNpb24pCisgICAgICAgIHdoZW4gOmd0CisgICAg
ICAgICAgICBlbWl0QnJhbmNoRm9yVGVzdCgiZmx0Iiwgb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzBd
LCAiYm5leiIsIG9wZXJhbmRzWzJdLCBwcmVjaXNpb24pCisgICAgICAgIHdoZW4gOmd0ZXEKKyAg
ICAgICAgICAgIGVtaXRCcmFuY2hGb3JUZXN0KCJmbGUiLCBvcGVyYW5kc1sxXSwgb3BlcmFuZHNb
MF0sICJibmV6Iiwgb3BlcmFuZHNbMl0sIHByZWNpc2lvbikKKyAgICAgICAgd2hlbiA6ZXF1bgor
ICAgICAgICAgICAgZW1pdEJyYW5jaEZvclVub3JkZXJlZChvcGVyYW5kc1swXSwgb3BlcmFuZHNb
MV0sIG9wZXJhbmRzWzJdLCBwcmVjaXNpb24pCisgICAgICAgICAgICBlbWl0QnJhbmNoRm9yVGVz
dCgiZmVxIiwgb3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdLCAiYm5leiIsIG9wZXJhbmRzWzJdLCBw
cmVjaXNpb24pCisgICAgICAgIHdoZW4gOm5lcXVuCisgICAgICAgICAgICBlbWl0QnJhbmNoRm9y
VW5vcmRlcmVkKG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSwgb3BlcmFuZHNbMl0sIHByZWNpc2lv
bikKKyAgICAgICAgICAgIGVtaXRCcmFuY2hGb3JUZXN0KCJmZXEiLCBvcGVyYW5kc1swXSwgb3Bl
cmFuZHNbMV0sICJiZXF6Iiwgb3BlcmFuZHNbMl0sIHByZWNpc2lvbikKKyAgICAgICAgd2hlbiA6
bHR1bgorICAgICAgICAgICAgZW1pdEJyYW5jaEZvclVub3JkZXJlZChvcGVyYW5kc1swXSwgb3Bl
cmFuZHNbMV0sIG9wZXJhbmRzWzJdLCBwcmVjaXNpb24pCisgICAgICAgICAgICBlbWl0QnJhbmNo
Rm9yVGVzdCgiZmx0Iiwgb3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdLCAiYm5leiIsIG9wZXJhbmRz
WzJdLCBwcmVjaXNpb24pCisgICAgICAgIHdoZW4gOmx0ZXF1bgorICAgICAgICAgICAgZW1pdEJy
YW5jaEZvclVub3JkZXJlZChvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV0sIG9wZXJhbmRzWzJdLCBw
cmVjaXNpb24pCisgICAgICAgICAgICBlbWl0QnJhbmNoRm9yVGVzdCgiZmxlIiwgb3BlcmFuZHNb
MF0sIG9wZXJhbmRzWzFdLCAiYm5leiIsIG9wZXJhbmRzWzJdLCBwcmVjaXNpb24pCisgICAgICAg
IHdoZW4gOmd0dW4KKyAgICAgICAgICAgIGVtaXRCcmFuY2hGb3JVbm9yZGVyZWQob3BlcmFuZHNb
MF0sIG9wZXJhbmRzWzFdLCBvcGVyYW5kc1syXSwgcHJlY2lzaW9uKQorICAgICAgICAgICAgZW1p
dEJyYW5jaEZvclRlc3QoImZsdCIsIG9wZXJhbmRzWzFdLCBvcGVyYW5kc1swXSwgImJuZXoiLCBv
cGVyYW5kc1syXSwgcHJlY2lzaW9uKQorICAgICAgICB3aGVuIDpndGVxdW4KKyAgICAgICAgICAg
IGVtaXRCcmFuY2hGb3JVbm9yZGVyZWQob3BlcmFuZHNbMF0sIG9wZXJhbmRzWzFdLCBvcGVyYW5k
c1syXSwgcHJlY2lzaW9uKQorICAgICAgICAgICAgZW1pdEJyYW5jaEZvclRlc3QoImZsZSIsIG9w
ZXJhbmRzWzFdLCBvcGVyYW5kc1swXSwgImJuZXoiLCBvcGVyYW5kc1syXSwgcHJlY2lzaW9uKQor
ICAgICAgICBlbHNlCisgICAgICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgdGVzdCIKKyAgICAg
ICAgZW5kCisgICAgZWxzZQorICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMo
b3BlcmFuZHMpCisgICAgZW5kCitlbmQKKworZGVmIHJpc2N2NjRFbWl0RlBSb3VuZE9wZXJhdGlv
bihvcGVyYW5kcywgcHJlY2lzaW9uLCByb3VuZGluZ01vZGUpCisgICAgZGVmIGludFN1ZmZpeEZv
clByZWNpc2lvbihwcmVjaXNpb24pCisgICAgICAgIGNhc2UgcHJlY2lzaW9uCisgICAgICAgIHdo
ZW4gOnMKKyAgICAgICAgICAgICJ3IgorICAgICAgICB3aGVuIDpkCisgICAgICAgICAgICAibCIK
KyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVkIHByZWNpc2lvbiIK
KyAgICAgICAgZW5kCisgICAgZW5kCisKKyAgICBkZWYgZnBTdWZmaXhGb3JQcmVjaXNpb24ocHJl
Y2lzaW9uKQorICAgICAgICBjYXNlIHByZWNpc2lvbgorICAgICAgICB3aGVuIDpzCisgICAgICAg
ICAgICAicyIKKyAgICAgICAgd2hlbiA6ZAorICAgICAgICAgICAgImQiCisgICAgICAgIGVsc2UK
KyAgICAgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCBwcmVjaXNpb24iCisgICAgICAgIGVuZAor
ICAgIGVuZAorCisgICAgaW50U3VmZml4ID0gaW50U3VmZml4Rm9yUHJlY2lzaW9uKHByZWNpc2lv
bikKKyAgICBmcFN1ZmZpeCA9IGZwU3VmZml4Rm9yUHJlY2lzaW9uKHByZWNpc2lvbikKKworICAg
IGNhc2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICB3aGVuIFtGUFJlZ2lzdGVy
SUQsIEZQUmVnaXN0ZXJJRF0KKyAgICAgICAgJGFzbS5wdXRzICJmY3Z0LiN7aW50U3VmZml4fS4j
e2ZwU3VmZml4fSB4MzEsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9LCAje3JvdW5kaW5n
TW9kZX0iCisgICAgICAgICRhc20ucHV0cyAiZmN2dC4je2ZwU3VmZml4fS4je2ludFN1ZmZpeH0g
I3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sIHgzMSwgI3tyb3VuZGluZ01vZGV9IgorICAg
IGVsc2UKKyAgICAgICAgcmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQor
ICAgIGVuZAorZW5kCisKK2RlZiByaXNjdjY0RW1pdEZQQ29udmVydE9wZXJhdGlvbihvcGVyYW5k
cywgZnJvbVR5cGUsIHRvVHlwZSwgcm91bmRpbmdNb2RlKQorICAgIGRlZiBpbnRTdWZmaXhGb3JU
eXBlKHR5cGUpCisgICAgICAgIGNhc2UgdHlwZQorICAgICAgICB3aGVuIDp3CisgICAgICAgICAg
ICAidyIKKyAgICAgICAgd2hlbiA6d3UKKyAgICAgICAgICAgICJ3dSIKKyAgICAgICAgd2hlbiA6
bAorICAgICAgICAgICAgImwiCisgICAgICAgIHdoZW4gOmx1CisgICAgICAgICAgICAibHUiCisg
ICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJhaXNlICJVbnN1cHBvcnRlZCBwcmVjaXNpb24iCisg
ICAgICAgIGVuZAorICAgIGVuZAorCisgICAgZGVmIGZwU3VmZml4Rm9yVHlwZSh0eXBlKQorICAg
ICAgICBjYXNlIHR5cGUKKyAgICAgICAgd2hlbiA6cworICAgICAgICAgICAgInMiCisgICAgICAg
IHdoZW4gOmQKKyAgICAgICAgICAgICJkIgorICAgICAgICBlbHNlCisgICAgICAgICAgICByYWlz
ZSAiVW5zdXBwb3J0ZWQgcHJlY2lzaW9uIgorICAgICAgICBlbmQKKyAgICBlbmQKKworICAgIGNh
c2UgcmlzY3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICB3aGVuIFtGUFJlZ2lzdGVySUQs
IFJlZ2lzdGVySURdCisgICAgICAgIGZwU3VmZml4ID0gZnBTdWZmaXhGb3JUeXBlKGZyb21UeXBl
KQorICAgICAgICBpbnRTdWZmaXggPSBpbnRTdWZmaXhGb3JUeXBlKHRvVHlwZSkKKworICAgICAg
ICAkYXNtLnB1dHMgImZjdnQuI3tpbnRTdWZmaXh9LiN7ZnBTdWZmaXh9ICN7b3BlcmFuZHNbMV0u
cmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSwgI3tyb3VuZGlu
Z01vZGV9IgorICAgIHdoZW4gW1JlZ2lzdGVySUQsIEZQUmVnaXN0ZXJJRF0KKyAgICAgICAgcmFp
c2UgIlVuc3VwcG9ydGVkIHJvdW5kaW5nIG1vZGUiIHVubGVzcyByb3VuZGluZ01vZGUgPT0gOm5v
bmUKKyAgICAgICAgaW50U3VmZml4ID0gaW50U3VmZml4Rm9yVHlwZShmcm9tVHlwZSkKKyAgICAg
ICAgZnBTdWZmaXggPSBmcFN1ZmZpeEZvclR5cGUodG9UeXBlKQorCisgICAgICAgICRhc20ucHV0
cyAiZmN2dC4je2ZwU3VmZml4fS4je2ludFN1ZmZpeH0gI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3Bl
cmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgIHdoZW4gW0ZQUmVnaXN0
ZXJJRCwgRlBSZWdpc3RlcklEXQorICAgICAgICByYWlzZSAiVW5zdXBwb3J0ZWQgcm91bmRpbmcg
bW9kZSIgdW5sZXNzIHJvdW5kaW5nTW9kZSA9PSA6bm9uZQorICAgICAgICBmcEZyb21TdWZmaXgg
PSBmcFN1ZmZpeEZvclR5cGUoZnJvbVR5cGUpCisgICAgICAgIGZwVG9TdWZmaXggPSBmcFN1ZmZp
eEZvclR5cGUodG9UeXBlKQorCisgICAgICAgICRhc20ucHV0cyAiZmN2dC4je2ZwVG9TdWZmaXh9
LiN7ZnBGcm9tU3VmZml4fSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tvcGVyYW5k
c1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgZWxzZQorICAgICAgICByaXNjdjY0UmFpc2VNaXNt
YXRjaGVkT3BlcmFuZHMob3BlcmFuZHMpCisgICAgZW5kCitlbmQKKworY2xhc3MgUmVnaXN0ZXJJ
RAorICAgIGRlZiByaXNjdjY0T3BlcmFuZAorICAgICAgICBjYXNlIEBuYW1lCisgICAgICAgIHdo
ZW4gJ3QwJywgJ2EwJywgJ3dhMCcsICdyMCcKKyAgICAgICAgICAgICd4MTAnCisgICAgICAgIHdo
ZW4gJ3QxJywgJ2ExJywgJ3dhMScsICdyMScKKyAgICAgICAgICAgICd4MTEnCisgICAgICAgIHdo
ZW4gJ3QyJywgJ2EyJywgJ3dhMicKKyAgICAgICAgICAgICd4MTInCisgICAgICAgIHdoZW4gJ3Qz
JywgJ2EzJywgJ3dhMycKKyAgICAgICAgICAgICd4MTMnCisgICAgICAgIHdoZW4gJ3Q0JywgJ2E0
JywgJ3dhNCcKKyAgICAgICAgICAgICd4MTQnCisgICAgICAgIHdoZW4gJ3Q1JywgJ2E1JywgJ3dh
NScKKyAgICAgICAgICAgICd4MTUnCisgICAgICAgIHdoZW4gJ3Q2JywgJ2E2JywgJ3dhNicKKyAg
ICAgICAgICAgICd4MTYnCisgICAgICAgIHdoZW4gJ3Q3JywgJ2E3JywgJ3dhNycKKyAgICAgICAg
ICAgICd4MTcnCisgICAgICAgIHdoZW4gJ3dzMCcKKyAgICAgICAgICAgICd4NicKKyAgICAgICAg
d2hlbiAnd3MxJworICAgICAgICAgICAgJ3g3JworICAgICAgICB3aGVuICdjc3IwJworICAgICAg
ICAgICAgJ3g5JworICAgICAgICB3aGVuICdjc3IxJworICAgICAgICAgICAgJ3gxOCcKKyAgICAg
ICAgd2hlbiAnY3NyMicKKyAgICAgICAgICAgICd4MTknCisgICAgICAgIHdoZW4gJ2NzcjMnCisg
ICAgICAgICAgICAneDIwJworICAgICAgICB3aGVuICdjc3I0JworICAgICAgICAgICAgJ3gyMScK
KyAgICAgICAgd2hlbiAnY3NyNScKKyAgICAgICAgICAgICd4MjInCisgICAgICAgIHdoZW4gJ2Nz
cjYnCisgICAgICAgICAgICAneDIzJworICAgICAgICB3aGVuICdjc3I3JworICAgICAgICAgICAg
J3gyNCcKKyAgICAgICAgd2hlbiAnY3NyOCcKKyAgICAgICAgICAgICd4MjUnCisgICAgICAgIHdo
ZW4gJ2NzcjknCisgICAgICAgICAgICAneDI2JworICAgICAgICB3aGVuICdjc3IxMCcKKyAgICAg
ICAgICAgICd4MjcnCisgICAgICAgIHdoZW4gJ2xyJworICAgICAgICAgICAgJ3JhJworICAgICAg
ICB3aGVuICdzcCcKKyAgICAgICAgICAgICdzcCcKKyAgICAgICAgd2hlbiAnY2ZyJworICAgICAg
ICAgICAgJ2ZwJworICAgICAgICBlbHNlCisgICAgICAgICAgICByYWlzZSAiQmFkIHJlZ2lzdGVy
IG5hbWUgI3tAbmFtZX0gYXQgI3tjb2RlT3JpZ2luU3RyaW5nfSIKKyAgICAgICAgZW5kCisgICAg
ZW5kCitlbmQKKworY2xhc3MgRlBSZWdpc3RlcklECisgICAgZGVmIHJpc2N2NjRPcGVyYW5kCisg
ICAgICAgIGNhc2UgQG5hbWUKKyAgICAgICAgd2hlbiAnZnQwJworICAgICAgICAgICAgJ2YwJwor
ICAgICAgICB3aGVuICdmdDEnCisgICAgICAgICAgICAnZjEnCisgICAgICAgIHdoZW4gJ2Z0MicK
KyAgICAgICAgICAgICdmMicKKyAgICAgICAgd2hlbiAnZnQzJworICAgICAgICAgICAgJ2YzJwor
ICAgICAgICB3aGVuICdmdDQnCisgICAgICAgICAgICAnZjQnCisgICAgICAgIHdoZW4gJ2Z0NScK
KyAgICAgICAgICAgICdmNScKKyAgICAgICAgd2hlbiAnY3NmcjAnCisgICAgICAgICAgICAnZjgn
CisgICAgICAgIHdoZW4gJ2NzZnIxJworICAgICAgICAgICAgJ2Y5JworICAgICAgICB3aGVuICdm
YTAnLCAnd2ZhMCcKKyAgICAgICAgICAgICdmMTAnCisgICAgICAgIHdoZW4gJ2ZhMScsICd3ZmEx
JworICAgICAgICAgICAgJ2YxMScKKyAgICAgICAgd2hlbiAnZmEyJywgJ3dmYTInCisgICAgICAg
ICAgICAnZjEyJworICAgICAgICB3aGVuICdmYTMnLCAnd2ZhMycKKyAgICAgICAgICAgICdmMTMn
CisgICAgICAgIHdoZW4gJ2ZhNCcsICd3ZmE0JworICAgICAgICAgICAgJ2YxNCcKKyAgICAgICAg
d2hlbiAnZmE1JywgJ3dmYTUnCisgICAgICAgICAgICAnZjE1JworICAgICAgICB3aGVuICdmYTYn
LCAnd2ZhNicKKyAgICAgICAgICAgICdmMTYnCisgICAgICAgIHdoZW4gJ2ZhNycsICd3ZmE3Jwor
ICAgICAgICAgICAgJ2YxNycKKyAgICAgICAgd2hlbiAnY3NmcjInCisgICAgICAgICAgICAnZjE4
JworICAgICAgICB3aGVuICdjc2ZyMycKKyAgICAgICAgICAgICdmMTknCisgICAgICAgIHdoZW4g
J2NzZnI0JworICAgICAgICAgICAgJ2YyMCcKKyAgICAgICAgd2hlbiAnY3NmcjUnCisgICAgICAg
ICAgICAnZjIxJworICAgICAgICB3aGVuICdjc2ZyNicKKyAgICAgICAgICAgICdmMjInCisgICAg
ICAgIHdoZW4gJ2NzZnI3JworICAgICAgICAgICAgJ2YyMycKKyAgICAgICAgd2hlbiAnY3Nmcjgn
CisgICAgICAgICAgICAnZjI0JworICAgICAgICB3aGVuICdjc2ZyOScKKyAgICAgICAgICAgICdm
MjUnCisgICAgICAgIHdoZW4gJ2NzZnIxMCcKKyAgICAgICAgICAgICdmMjYnCisgICAgICAgIHdo
ZW4gJ2NzZnIxMScKKyAgICAgICAgICAgICdmMjcnCisgICAgICAgIGVsc2UKKyAgICAgICAgICAg
IHJhaXNlICJCYWQgcmVnaXN0ZXIgbmFtZSAje0BuYW1lfSBhdCAje2NvZGVPcmlnaW5TdHJpbmd9
IgorICAgICAgICBlbmQKKyAgICBlbmQKK2VuZAorCitjbGFzcyBSSVNDVjY0U2NyYXRjaFJlZ2lz
dGVyCisgICAgZGVmIGluaXRpYWxpemUobmFtZSkKKyAgICAgICAgQG5hbWUgPSBuYW1lCisgICAg
ZW5kCisKKyAgICBkZWYgcmlzY3Y2NE9wZXJhbmQKKyAgICAgICAgY2FzZSBAbmFtZQorICAgICAg
ICB3aGVuIDp4MzAKKyAgICAgICAgICAgICd4MzAnCisgICAgICAgIHdoZW4gOngzMQorICAgICAg
ICAgICAgJ3gzMScKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmFpc2UgIlVuc3VwcG9ydGVk
IHNjcmF0Y2ggcmVnaXN0ZXIiCisgICAgICAgIGVuZAorICAgIGVuZAorCisgICAgZGVmIHNlbGYu
eDMwCisgICAgICAgIFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIubmV3KDp4MzApCisgICAgZW5kCisK
KyAgICBkZWYgc2VsZi54MzEKKyAgICAgICAgUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci5uZXcoOngz
MSkKKyAgICBlbmQKK2VuZAorCitjbGFzcyBJbW1lZGlhdGUKKyAgICBkZWYgcmlzY3Y2NE9wZXJh
bmQKKyAgICAgICAgIiN7dmFsdWV9IgorICAgIGVuZAorCisgICAgZGVmIHJpc2N2NjRSZXF1aXJl
c0xvYWQKKyAgICAgICAgdmFsdWUgPiAweDdmZiBvciB2YWx1ZSA8IC0weDgwMAorICAgIGVuZAor
CisgICAgZGVmIHJpc2N2NjRMb2FkKHRhcmdldCkKKyAgICAgICAgJGFzbS5wdXRzICJsaSAje3Rh
cmdldC5yaXNjdjY0T3BlcmFuZH0sICN7dmFsdWV9IgorICAgIGVuZAorZW5kCisKK2NsYXNzIEFk
ZHJlc3MKKyAgICBkZWYgcmlzY3Y2NE9wZXJhbmQKKyAgICAgICAgcmFpc2UgIkludmFsaWQgb2Zm
c2V0ICN7b2Zmc2V0LnZhbHVlfSBhdCAje2NvZGVPcmlnaW5TdHJpbmd9IiBpZiBvZmZzZXQudmFs
dWUgPiAweDdmZiBvciBvZmZzZXQudmFsdWUgPCAtMHg4MDAKKyAgICAgICAgIiN7b2Zmc2V0LnZh
bHVlfSgje2Jhc2UucmlzY3Y2NE9wZXJhbmR9KSIKKyAgICBlbmQKKworICAgIGRlZiByaXNjdjY0
UmVxdWlyZXNMb2FkCisgICAgICAgIG9mZnNldC52YWx1ZSA+IDB4N2ZmIG9yIG9mZnNldC52YWx1
ZSA8IC0weDgwMAorICAgIGVuZAorCisgICAgZGVmIHJpc2N2NjRMb2FkKHRhcmdldCkKKyAgICAg
ICAgJGFzbS5wdXRzICJsaSAje3RhcmdldC5yaXNjdjY0T3BlcmFuZH0sICN7b2Zmc2V0LnZhbHVl
fSIKKyAgICAgICAgJGFzbS5wdXRzICJhZGQgI3t0YXJnZXQucmlzY3Y2NE9wZXJhbmR9LCAje2Jh
c2UucmlzY3Y2NE9wZXJhbmR9LCAje3RhcmdldC5yaXNjdjY0T3BlcmFuZH0iCisgICAgZW5kCitl
bmQKKworY2xhc3MgQmFzZUluZGV4CisgICAgZGVmIHJpc2N2NjRMb2FkKHRhcmdldCwgc2NyYXRj
aCkKKyAgICAgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKFtiYXNlLCBpbmRleF0pCisgICAg
ICAgIHdoZW4gW1JlZ2lzdGVySUQsIFJlZ2lzdGVySURdCisgICAgICAgICAgICAkYXNtLnB1dHMg
InNsbGkgI3t0YXJnZXQucmlzY3Y2NE9wZXJhbmR9LCAje2luZGV4LnJpc2N2NjRPcGVyYW5kfSwg
I3tzY2FsZVNoaWZ0fSIKKyAgICAgICAgICAgICRhc20ucHV0cyAiYWRkICN7dGFyZ2V0LnJpc2N2
NjRPcGVyYW5kfSwgI3tiYXNlLnJpc2N2NjRPcGVyYW5kfSwgI3t0YXJnZXQucmlzY3Y2NE9wZXJh
bmR9IgorICAgICAgICAgICAgaWYgb2Zmc2V0LnZhbHVlICE9IDAKKyAgICAgICAgICAgICAgICAk
YXNtLnB1dHMgImxpICN7c2NyYXRjaC5yaXNjdjY0T3BlcmFuZH0sICN7b2Zmc2V0LnZhbHVlfSIK
KyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImFkZCAje3RhcmdldC5yaXNjdjY0T3BlcmFuZH0s
ICN7dGFyZ2V0LnJpc2N2NjRPcGVyYW5kfSwgI3tzY3JhdGNoLnJpc2N2NjRPcGVyYW5kfSIKKyAg
ICAgICAgICAgIGVuZAorICAgICAgICBlbHNlCisgICAgICAgICAgICByaXNjdjY0UmFpc2VNaXNt
YXRjaGVkT3BlcmFuZHMoW2Jhc2UsIGluZGV4XSkKKyAgICAgICAgZW5kCisgICAgZW5kCitlbmQK
KworY2xhc3MgSW5zdHJ1Y3Rpb24KKyAgICBkZWYgbG93ZXJSSVNDVjY0CisgICAgICAgIGNhc2Ug
b3Bjb2RlCisgICAgICAgIHdoZW4gImFkZGkiCisgICAgICAgICAgICByaXNjdjY0RW1pdEFkZGl0
aW9uT3BlcmF0aW9uKG9wZXJhbmRzLCA6dywgOmFkZCkKKyAgICAgICAgd2hlbiAiYWRkcCIsICJh
ZGRxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRBZGRpdGlvbk9wZXJhdGlvbihvcGVyYW5kcywg
OmQsIDphZGQpCisgICAgICAgIHdoZW4gImFkZGlzIiwgImFkZHBzIgorICAgICAgICAgICAgcmlz
Y3Y2NFJhaXNlVW5zdXBwb3J0ZWQKKyAgICAgICAgd2hlbiAic3ViaSIKKyAgICAgICAgICAgIHJp
c2N2NjRFbWl0QWRkaXRpb25PcGVyYXRpb24ob3BlcmFuZHMsIDp3LCA6c3ViKQorICAgICAgICB3
aGVuICJzdWJwIiwgInN1YnEiCisgICAgICAgICAgICByaXNjdjY0RW1pdEFkZGl0aW9uT3BlcmF0
aW9uKG9wZXJhbmRzLCA6ZCwgOnN1YikKKyAgICAgICAgd2hlbiAic3ViaXMiCisgICAgICAgICAg
ICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3aGVuICJhbmRpIgorICAgICAgICAg
ICAgcmlzY3Y2NEVtaXRMb2dpY2FsT3BlcmF0aW9uKG9wZXJhbmRzLCA6dywgOmFuZCkKKyAgICAg
ICAgd2hlbiAiYW5kcCIsICJhbmRxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRMb2dpY2FsT3Bl
cmF0aW9uKG9wZXJhbmRzLCA6ZCwgOmFuZCkKKyAgICAgICAgd2hlbiAib3JoIgorICAgICAgICAg
ICAgcmlzY3Y2NEVtaXRMb2dpY2FsT3BlcmF0aW9uKG9wZXJhbmRzLCA6aCwgOm9yKQorICAgICAg
ICB3aGVuICJvcmkiCisgICAgICAgICAgICByaXNjdjY0RW1pdExvZ2ljYWxPcGVyYXRpb24ob3Bl
cmFuZHMsIDp3LCA6b3IpCisgICAgICAgIHdoZW4gIm9ycCIsICJvcnEiCisgICAgICAgICAgICBy
aXNjdjY0RW1pdExvZ2ljYWxPcGVyYXRpb24ob3BlcmFuZHMsIDpkLCA6b3IpCisgICAgICAgIHdo
ZW4gInhvcmkiCisgICAgICAgICAgICByaXNjdjY0RW1pdExvZ2ljYWxPcGVyYXRpb24ob3BlcmFu
ZHMsIDp3LCA6eG9yKQorICAgICAgICB3aGVuICJ4b3JwIiwgInhvcnEiCisgICAgICAgICAgICBy
aXNjdjY0RW1pdExvZ2ljYWxPcGVyYXRpb24ob3BlcmFuZHMsIDpkLCA6eG9yKQorICAgICAgICB3
aGVuICJsc2hpZnRpIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRTaGlmdChvcGVyYW5kcywgOncs
IDpsbGVmdCkKKyAgICAgICAgd2hlbiAibHNoaWZ0cCIsICJsc2hpZnRxIgorICAgICAgICAgICAg
cmlzY3Y2NEVtaXRTaGlmdChvcGVyYW5kcywgOmQsIDpsbGVmdCkKKyAgICAgICAgd2hlbiAicnNo
aWZ0aSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0U2hpZnQob3BlcmFuZHMsIDp3LCA6YXJpZ2h0
KQorICAgICAgICB3aGVuICJyc2hpZnRwIiwgInJzaGlmdHEiCisgICAgICAgICAgICByaXNjdjY0
RW1pdFNoaWZ0KG9wZXJhbmRzLCA6ZCwgOmFyaWdodCkKKyAgICAgICAgd2hlbiAidXJzaGlmdGki
CisgICAgICAgICAgICByaXNjdjY0RW1pdFNoaWZ0KG9wZXJhbmRzLCA6dywgOmxyaWdodCkKKyAg
ICAgICAgd2hlbiAidXJzaGlmdHAiLCAidXJzaGlmdHEiCisgICAgICAgICAgICByaXNjdjY0RW1p
dFNoaWZ0KG9wZXJhbmRzLCA6ZCwgOmxyaWdodCkKKyAgICAgICAgd2hlbiAibXVsaSIKKyAgICAg
ICAgICAgIHJpc2N2NjRFbWl0TXVsRGl2QXJpdGhtZXRpYyhvcGVyYW5kcywgOncsIDptdWwpCisg
ICAgICAgIHdoZW4gIm11bHAiLCAibXVscSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0TXVsRGl2
QXJpdGhtZXRpYyhvcGVyYW5kcywgOmQsIDptdWwpCisgICAgICAgIHdoZW4gImRpdmkiCisgICAg
ICAgICAgICByaXNjdjY0RW1pdE11bERpdkFyaXRobWV0aWMob3BlcmFuZHMsIDp3LCA6ZGl2KQor
ICAgICAgICB3aGVuICJkaXZxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRNdWxEaXZBcml0aG1l
dGljKG9wZXJhbmRzLCA6ZCwgOmRpdikKKyAgICAgICAgd2hlbiAiZGl2aXMiLCAiZGl2cXMiCisg
ICAgICAgICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3aGVuICJuZWdpIgor
ICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb21wbGVtZW50T3BlcmF0aW9uKG9wZXJhbmRzLCA6dywg
Om5lZykKKyAgICAgICAgd2hlbiAibmVncCIsICJuZWdxIgorICAgICAgICAgICAgcmlzY3Y2NEVt
aXRDb21wbGVtZW50T3BlcmF0aW9uKG9wZXJhbmRzLCA6ZCwgOm5lZykKKyAgICAgICAgd2hlbiAi
bm90aSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGxlbWVudE9wZXJhdGlvbihvcGVyYW5k
cywgOncsIDpub3QpCisgICAgICAgIHdoZW4gIm5vdHEiCisgICAgICAgICAgICByaXNjdjY0RW1p
dENvbXBsZW1lbnRPcGVyYXRpb24ob3BlcmFuZHMsIDpkLCA6bm90KQorICAgICAgICB3aGVuICJz
dG9yZWIiCisgICAgICAgICAgICByaXNjdjY0RW1pdFN0b3JlKG9wZXJhbmRzLCA6YikKKyAgICAg
ICAgd2hlbiAic3RvcmVoIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRTdG9yZShvcGVyYW5kcywg
OmgpCisgICAgICAgIHdoZW4gInN0b3JlaSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0U3RvcmUo
b3BlcmFuZHMsIDp3KQorICAgICAgICB3aGVuICJzdG9yZXAiLCAic3RvcmVxIgorICAgICAgICAg
ICAgcmlzY3Y2NEVtaXRTdG9yZShvcGVyYW5kcywgOmQpCisgICAgICAgIHdoZW4gImxvYWRiIgor
ICAgICAgICAgICAgcmlzY3Y2NEVtaXRMb2FkKG9wZXJhbmRzLCA6YnUsIDpub25lKQorICAgICAg
ICB3aGVuICJsb2FkaCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0TG9hZChvcGVyYW5kcywgOmh1
LCA6bm9uZSkKKyAgICAgICAgd2hlbiAibG9hZGkiCisgICAgICAgICAgICByaXNjdjY0RW1pdExv
YWQob3BlcmFuZHMsIDp3dSwgOm5vbmUpCisgICAgICAgIHdoZW4gImxvYWRpcyIKKyAgICAgICAg
ICAgIHJpc2N2NjRFbWl0TG9hZChvcGVyYW5kcywgOncsIDpub25lKQorICAgICAgICB3aGVuICJs
b2FkcCIsICJsb2FkcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0TG9hZChvcGVyYW5kcywgOmQs
IDpub25lKQorICAgICAgICB3aGVuICJsb2FkYnNpIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRM
b2FkKG9wZXJhbmRzLCA6YiwgOncpCisgICAgICAgIHdoZW4gImxvYWRic3EiCisgICAgICAgICAg
ICByaXNjdjY0RW1pdExvYWQob3BlcmFuZHMsIDpiLCA6bm9uZSkKKyAgICAgICAgd2hlbiAibG9h
ZGhzaSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0TG9hZChvcGVyYW5kcywgOmgsIDp3KQorICAg
ICAgICB3aGVuICJsb2FkaHNxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRMb2FkKG9wZXJhbmRz
LCA6aCwgOm5vbmUpCisgICAgICAgIHdoZW4gImJmZXEiCisgICAgICAgICAgICByaXNjdjY0RW1p
dEZQQ29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6cywgOmVxKQorICAgICAgICB3
aGVuICJiZmx0IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbmRpdGlvbmFsQnJhbmNoRm9y
VGVzdChvcGVyYW5kcywgOnMsIDpsdCkKKyAgICAgICAgd2hlbiAiYmZndCIKKyAgICAgICAgICAg
IHJpc2N2NjRFbWl0RlBDb25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3BlcmFuZHMsIDpzLCA6Z3Qp
CisgICAgICAgIHdoZW4gImJmbHR1biIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb25kaXRp
b25hbEJyYW5jaEZvclRlc3Qob3BlcmFuZHMsIDpzLCA6bHR1bikKKyAgICAgICAgd2hlbiAiYmZs
dGVxdW4iCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0
KG9wZXJhbmRzLCA6cywgOmx0ZXF1bikKKyAgICAgICAgd2hlbiAiYmZndHVuIgorICAgICAgICAg
ICAgcmlzY3Y2NEVtaXRGUENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOnMsIDpn
dHVuKQorICAgICAgICB3aGVuICJiZmd0ZXF1biIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBD
b25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3BlcmFuZHMsIDpzLCA6Z3RlcXVuKQorICAgICAgICB3
aGVuICJiZGVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbmRpdGlvbmFsQnJhbmNoRm9y
VGVzdChvcGVyYW5kcywgOmQsIDplcSkKKyAgICAgICAgd2hlbiAiYmRuZXEiCisgICAgICAgICAg
ICByaXNjdjY0RW1pdEZQQ29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6ZCwgOm5l
cSkKKyAgICAgICAgd2hlbiAiYmRsdCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb25kaXRp
b25hbEJyYW5jaEZvclRlc3Qob3BlcmFuZHMsIDpkLCA6bHQpCisgICAgICAgIHdoZW4gImJkbHRl
cSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3Bl
cmFuZHMsIDpkLCA6bHRlcSkKKyAgICAgICAgd2hlbiAiYmRndCIKKyAgICAgICAgICAgIHJpc2N2
NjRFbWl0RlBDb25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3BlcmFuZHMsIDpkLCA6Z3QpCisgICAg
ICAgIHdoZW4gImJkZ3RlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb25kaXRpb25hbEJy
YW5jaEZvclRlc3Qob3BlcmFuZHMsIDpkLCA6Z3RlcSkKKyAgICAgICAgd2hlbiAiYmRlcXVuIgor
ICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5k
cywgOmQsIDplcXVuKQorICAgICAgICB3aGVuICJiZG5lcXVuIgorICAgICAgICAgICAgcmlzY3Y2
NEVtaXRGUENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOmQsIDpuZXF1bikKKyAg
ICAgICAgd2hlbiAiYmRsdHVuIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbmRpdGlvbmFs
QnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOmQsIDpsdHVuKQorICAgICAgICB3aGVuICJiZGx0ZXF1
biIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb25kaXRpb25hbEJyYW5jaEZvclRlc3Qob3Bl
cmFuZHMsIDpkLCA6bHRlcXVuKQorICAgICAgICB3aGVuICJiZGd0dW4iCisgICAgICAgICAgICBy
aXNjdjY0RW1pdEZQQ29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6ZCwgOmd0dW4p
CisgICAgICAgIHdoZW4gImJkZ3RlcXVuIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbmRp
dGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOmQsIDpndGVxdW4pCisgICAgICAgIHdoZW4g
InRkMmkiLCAiYmNkMmkiLCAiYnRkMmkiCisgICAgICAgICAgICByaXNjdjY0UmFpc2VVbnN1cHBv
cnRlZAorICAgICAgICB3aGVuICJtb3ZkeiIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3Vw
cG9ydGVkCisgICAgICAgIHdoZW4gInBvcCIKKyAgICAgICAgICAgIHNpemUgPSA4ICogb3BlcmFu
ZHMuc2l6ZQorICAgICAgICAgICAgb3BlcmFuZHMuZWFjaF93aXRoX2luZGV4IHsKKyAgICAgICAg
ICAgICAgICB8IG9wLCBpbmRleCB8CisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJsZCAje29w
LnJpc2N2NjRPcGVyYW5kfSwgI3tzaXplIC0gOCAqIChpbmRleCArIDEpfShzcCkiCisgICAgICAg
ICAgICB9CisgICAgICAgICAgICAkYXNtLnB1dHMgImFkZGkgc3AsIHNwLCAje3NpemV9IgorICAg
ICAgICB3aGVuICJwdXNoIgorICAgICAgICAgICAgc2l6ZSA9IDggKiBvcGVyYW5kcy5zaXplCisg
ICAgICAgICAgICAkYXNtLnB1dHMgImFkZGkgc3AsIHNwLCAjey1zaXplfSIKKyAgICAgICAgICAg
IG9wZXJhbmRzLnJldmVyc2UuZWFjaF93aXRoX2luZGV4IHsKKyAgICAgICAgICAgICAgICB8IG9w
LCBpbmRleCB8CisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJzZCAje29wLnJpc2N2NjRPcGVy
YW5kfSwgI3tzaXplIC0gOCAqIChpbmRleCArIDEpfShzcCkiCisgICAgICAgICAgICB9CisgICAg
ICAgIHdoZW4gIm1vdmUiCisgICAgICAgICAgICBjYXNlIHJpc2N2NjRPcGVyYW5kVHlwZXMob3Bl
cmFuZHMpCisgICAgICAgICAgICB3aGVuIFtSZWdpc3RlcklELCBSZWdpc3RlcklEXQorICAgICAg
ICAgICAgICAgICRhc20ucHV0cyAibXYgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7
b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgd2hlbiBbSW1tZWRpYXRl
LCBSZWdpc3RlcklEXQorICAgICAgICAgICAgICAgICRhc20ucHV0cyAibGkgI3tvcGVyYW5kc1sx
XS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAg
ICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5k
cyhvcGVyYW5kcykKKyAgICAgICAgICAgIGVuZAorICAgICAgICB3aGVuICJzeGIyaSIKKyAgICAg
ICAgICAgIHJpc2N2NjRFbWl0Qml0RXh0ZW5zaW9uKG9wZXJhbmRzLCA6YiwgOncsIDpzaWduKQor
ICAgICAgICB3aGVuICJzeGIycSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Qml0RXh0ZW5zaW9u
KG9wZXJhbmRzLCA6YiwgOmQsIDpzaWduKQorICAgICAgICB3aGVuICJzeGgyaSIKKyAgICAgICAg
ICAgIHJpc2N2NjRFbWl0Qml0RXh0ZW5zaW9uKG9wZXJhbmRzLCA6aCwgOncsIDpzaWduKQorICAg
ICAgICB3aGVuICJzeGgycSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Qml0RXh0ZW5zaW9uKG9w
ZXJhbmRzLCA6aCwgOmQsIDpzaWduKQorICAgICAgICB3aGVuICJzeGkycCIsICJzeGkycSIKKyAg
ICAgICAgICAgIHJpc2N2NjRFbWl0Qml0RXh0ZW5zaW9uKG9wZXJhbmRzLCA6dywgOmQsIDpzaWdu
KQorICAgICAgICB3aGVuICJ6eGkycCIsICJ6eGkycSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0
Qml0RXh0ZW5zaW9uKG9wZXJhbmRzLCA6dywgOmQsIDp6ZXJvKQorICAgICAgICB3aGVuICJub3Ai
CisgICAgICAgICAgICAkYXNtLnB1dHMgIm5vcCIKKyAgICAgICAgd2hlbiAiYmJlcSIKKyAgICAg
ICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFuZHMsIDpiLCA6ZXEpCisg
ICAgICAgIHdoZW4gImJpZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJh
bmNoKG9wZXJhbmRzLCA6dywgOmVxKQorICAgICAgICB3aGVuICJicGVxIiwgImJxZXEiCisgICAg
ICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6ZCwgOmVxKQor
ICAgICAgICB3aGVuICJiYm5lcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxC
cmFuY2gob3BlcmFuZHMsIDpiLCA6bmVxKQorICAgICAgICB3aGVuICJiaW5lcSIKKyAgICAgICAg
ICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFuZHMsIDp3LCA6bmVxKQorICAg
ICAgICB3aGVuICJicG5lcSIsICJicW5lcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0
aW9uYWxCcmFuY2gob3BlcmFuZHMsIDpkLCA6bmVxKQorICAgICAgICB3aGVuICJiYmEiCisgICAg
ICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6YiwgOmEpCisg
ICAgICAgIHdoZW4gImJpYSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFu
Y2gob3BlcmFuZHMsIDp3LCA6YSkKKyAgICAgICAgd2hlbiAiYnBhIiwgImJxYSIKKyAgICAgICAg
ICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2gob3BlcmFuZHMsIDpkLCA6YSkKKyAgICAg
ICAgd2hlbiAiYmJhZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNo
KG9wZXJhbmRzLCA6YiwgOmFlcSkKKyAgICAgICAgd2hlbiAiYmlhZXEiCisgICAgICAgICAgICBy
aXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6dywgOmFlcSkKKyAgICAgICAg
d2hlbiAiYnBhZXEiLCAiYnFhZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFs
QnJhbmNoKG9wZXJhbmRzLCA6ZCwgOmFlcSkKKyAgICAgICAgd2hlbiAiYmJiIgorICAgICAgICAg
ICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywgOmIsIDpiKQorICAgICAg
ICB3aGVuICJiaWIiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9w
ZXJhbmRzLCA6dywgOmIpCisgICAgICAgIHdoZW4gImJwYiIsICJicWIiCisgICAgICAgICAgICBy
aXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6ZCwgOmIpCisgICAgICAgIHdo
ZW4gImJiYmVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVy
YW5kcywgOmIsIDpiZXEpCisgICAgICAgIHdoZW4gImJpYmVxIgorICAgICAgICAgICAgcmlzY3Y2
NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywgOncsIDpiZXEpCisgICAgICAgIHdoZW4g
ImJwYmVxIiwgImJxYmVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5j
aChvcGVyYW5kcywgOmQsIDpiZXEpCisgICAgICAgIHdoZW4gImJiZ3QiCisgICAgICAgICAgICBy
aXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6YiwgOmd0KQorICAgICAgICB3
aGVuICJiaWd0IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVy
YW5kcywgOncsIDpndCkKKyAgICAgICAgd2hlbiAiYnBndCIsICJicWd0IgorICAgICAgICAgICAg
cmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywgOmQsIDpndCkKKyAgICAgICAg
d2hlbiAiYmJndGVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChv
cGVyYW5kcywgOmIsIDpndGVxKQorICAgICAgICB3aGVuICJiaWd0ZXEiCisgICAgICAgICAgICBy
aXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6dywgOmd0ZXEpCisgICAgICAg
IHdoZW4gImJwZ3RlcSIsICJicWd0ZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlv
bmFsQnJhbmNoKG9wZXJhbmRzLCA6ZCwgOmd0ZXEpCisgICAgICAgIHdoZW4gImJibHQiCisgICAg
ICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6YiwgOmx0KQor
ICAgICAgICB3aGVuICJiaWx0IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJy
YW5jaChvcGVyYW5kcywgOncsIDpsdCkKKyAgICAgICAgd2hlbiAiYnBsdCIsICJicWx0IgorICAg
ICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaChvcGVyYW5kcywgOmQsIDpsdCkK
KyAgICAgICAgd2hlbiAiYmJsdGVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25h
bEJyYW5jaChvcGVyYW5kcywgOmIsIDpsdGVxKQorICAgICAgICB3aGVuICJiaWx0ZXEiCisgICAg
ICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6dywgOmx0ZXEp
CisgICAgICAgIHdoZW4gImJwbHRlcSIsICJicWx0ZXEiCisgICAgICAgICAgICByaXNjdjY0RW1p
dENvbmRpdGlvbmFsQnJhbmNoKG9wZXJhbmRzLCA6ZCwgOmx0ZXEpCisgICAgICAgIHdoZW4gImJ0
YnoiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVy
YW5kcywgOmIsIDp6KQorICAgICAgICB3aGVuICJidGJueiIKKyAgICAgICAgICAgIHJpc2N2NjRF
bWl0Q29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6YiwgOm56KQorICAgICAgICB3
aGVuICJidGJzIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaEZvclRl
c3Qob3BlcmFuZHMsIDpiLCA6cykKKyAgICAgICAgd2hlbiAiYnRpeiIKKyAgICAgICAgICAgIHJp
c2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2hGb3JUZXN0KG9wZXJhbmRzLCA6dywgOnopCisgICAg
ICAgIHdoZW4gImJ0aW56IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5j
aEZvclRlc3Qob3BlcmFuZHMsIDp3LCA6bnopCisgICAgICAgIHdoZW4gImJ0aXMiCisgICAgICAg
ICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOncsIDpz
KQorICAgICAgICB3aGVuICJidHB6IiwgImJ0cXoiCisgICAgICAgICAgICByaXNjdjY0RW1pdENv
bmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywgOmQsIDp6KQorICAgICAgICB3aGVuICJi
dHBueiIsICJidHFueiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2hG
b3JUZXN0KG9wZXJhbmRzLCA6ZCwgOm56KQorICAgICAgICB3aGVuICJidHBzIiwgImJ0cXMiCisg
ICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoRm9yVGVzdChvcGVyYW5kcywg
OmQsIDpzKQorICAgICAgICB3aGVuICJiYWRkaXoiCisgICAgICAgICAgICByaXNjdjY0RW1pdENv
bmRpdGlvbmFsQnJhbmNoRm9yQWRkaXRpb25PcGVyYXRpb24ob3BlcmFuZHMsIDp3LCA6YWRkLCA6
eikKKyAgICAgICAgd2hlbiAiYmFkZGlueiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0
aW9uYWxCcmFuY2hGb3JBZGRpdGlvbk9wZXJhdGlvbihvcGVyYW5kcywgOncsIDphZGQsIDpueikK
KyAgICAgICAgd2hlbiAiYmFkZGlzIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25h
bEJyYW5jaEZvckFkZGl0aW9uT3BlcmF0aW9uKG9wZXJhbmRzLCA6dywgOmFkZCwgOnMpCisgICAg
ICAgIHdoZW4gImJhZGRpbyIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0T3ZlcmZsb3dCcmFuY2hG
b3JPcGVyYXRpb24ob3BlcmFuZHMsIDp3LCA6YWRkKQorICAgICAgICB3aGVuICJiYWRkcHoiLCAi
YmFkZHF6IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaEZvckFkZGl0
aW9uT3BlcmF0aW9uKG9wZXJhbmRzLCA6ZCwgOmFkZCwgOnopCisgICAgICAgIHdoZW4gImJhZGRw
bnoiLCAiYmFkZHFueiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2hG
b3JBZGRpdGlvbk9wZXJhdGlvbihvcGVyYW5kcywgOmQsIDphZGQsIDpueikKKyAgICAgICAgd2hl
biAiYmFkZHBzIiwgImJhZGRxcyIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxC
cmFuY2hGb3JBZGRpdGlvbk9wZXJhdGlvbihvcGVyYW5kcywgOmQsIDphZGQsIDpzKQorICAgICAg
ICB3aGVuICJiYWRkcG8iLCAiYmFkZHFvIgorICAgICAgICAgICAgcmlzY3Y2NFJhaXNlVW5zdXBw
b3J0ZWQKKyAgICAgICAgd2hlbiAiYnN1Yml6IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb25k
aXRpb25hbEJyYW5jaEZvckFkZGl0aW9uT3BlcmF0aW9uKG9wZXJhbmRzLCA6dywgOnN1YiwgOnop
CisgICAgICAgIHdoZW4gImJzdWJpbnoiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbmRpdGlv
bmFsQnJhbmNoRm9yQWRkaXRpb25PcGVyYXRpb24ob3BlcmFuZHMsIDp3LCA6c3ViLCA6bnopCisg
ICAgICAgIHdoZW4gImJzdWJpcyIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxC
cmFuY2hGb3JBZGRpdGlvbk9wZXJhdGlvbihvcGVyYW5kcywgOncsIDpzdWIsIDpzKQorICAgICAg
ICB3aGVuICJic3ViaW8iCisgICAgICAgICAgICByaXNjdjY0RW1pdE92ZXJmbG93QnJhbmNoRm9y
T3BlcmF0aW9uKG9wZXJhbmRzLCA6dywgOnN1YikKKyAgICAgICAgd2hlbiAiYm11bGl6IgorICAg
ICAgICAgICAgcmlzY3Y2NEVtaXRDb25kaXRpb25hbEJyYW5jaEZvck11bHRpcGxpY2F0aW9uT3Bl
cmF0aW9uKG9wZXJhbmRzLCA6dywgOnopCisgICAgICAgIHdoZW4gImJtdWxpbnoiCisgICAgICAg
ICAgICByaXNjdjY0RW1pdENvbmRpdGlvbmFsQnJhbmNoRm9yTXVsdGlwbGljYXRpb25PcGVyYXRp
b24ob3BlcmFuZHMsIDp3LCA6bnopCisgICAgICAgIHdoZW4gImJtdWxpcyIKKyAgICAgICAgICAg
IHJpc2N2NjRFbWl0Q29uZGl0aW9uYWxCcmFuY2hGb3JNdWx0aXBsaWNhdGlvbk9wZXJhdGlvbihv
cGVyYW5kcywgOncsIDpzKQorICAgICAgICB3aGVuICJibXVsaW8iCisgICAgICAgICAgICByaXNj
djY0RW1pdE92ZXJmbG93QnJhbmNoRm9yT3BlcmF0aW9uKG9wZXJhbmRzLCA6dywgOm11bCkKKyAg
ICAgICAgd2hlbiAiYm9yaXoiLCAiYm9yaW56IiwgImJvcmlzIiwgImJvcmlvIgorICAgICAgICAg
ICAgcmlzY3Y2NFJhaXNlVW5zdXBwb3J0ZWQKKyAgICAgICAgd2hlbiAiam1wIgorICAgICAgICAg
ICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgICAgICAgICAgd2hlbiBb
UmVnaXN0ZXJJRCwgSW1tZWRpYXRlXQorICAgICAgICAgICAgICAgICRhc20ucHV0cyAianIgI3tv
cGVyYW5kc1swXS5yaXNjdjY0T3BlcmFuZH0iCisgICAgICAgICAgICB3aGVuIFtCYXNlSW5kZXgs
IEltbWVkaWF0ZSwgSW1tZWRpYXRlXQorICAgICAgICAgICAgICAgIG9wZXJhbmRzWzBdLnJpc2N2
NjRMb2FkKFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxLCBSSVNDVjY0U2NyYXRjaFJlZ2lzdGVy
LngzMCkKKyAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImxkIHgzMSwgMCh4MzEpIgorICAgICAg
ICAgICAgICAgICRhc20ucHV0cyAianIgeDMxIgorICAgICAgICAgICAgd2hlbiBbQWRkcmVzcywg
SW1tZWRpYXRlXQorICAgICAgICAgICAgICAgIGlmIG9wZXJhbmRzWzBdLnJpc2N2NjRSZXF1aXJl
c0xvYWQKKyAgICAgICAgICAgICAgICAgICAgb3BlcmFuZHNbMF0ucmlzY3Y2NExvYWQoUklTQ1Y2
NFNjcmF0Y2hSZWdpc3Rlci54MzEpCisgICAgICAgICAgICAgICAgICAgICRhc20ucHV0cyAibGQg
eDMxLCAwKHgzMSkiCisgICAgICAgICAgICAgICAgICAgICRhc20ucHV0cyAianIgeDMxIgorICAg
ICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJsZCB4MzEs
ICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAgICAgICAgICAkYXNt
LnB1dHMgImpyIHgzMSIKKyAgICAgICAgICAgICAgICBlbmQKKyAgICAgICAgICAgIHdoZW4gW0xh
YmVsUmVmZXJlbmNlXQorICAgICAgICAgICAgICAgICRhc20ucHV0cyAidGFpbCAje29wZXJhbmRz
WzBdLmFzbUxhYmVsfSIKKyAgICAgICAgICAgIHdoZW4gW0xvY2FsTGFiZWxSZWZlcmVuY2VdCisg
ICAgICAgICAgICAgICAgJGFzbS5wdXRzICJ0YWlsICN7b3BlcmFuZHNbMF0uYXNtTGFiZWx9Igor
ICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRP
cGVyYW5kcyhvcGVyYW5kcykKKyAgICAgICAgICAgIGVuZAorICAgICAgICB3aGVuICJjYWxsIgor
ICAgICAgICAgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgICAgICAg
ICAgd2hlbiBbUmVnaXN0ZXJJRCwgSW1tZWRpYXRlXQorICAgICAgICAgICAgICAgICRhc20ucHV0
cyAiamFsciAje29wZXJhbmRzWzBdLnJpc2N2NjRPcGVyYW5kfSIKKyAgICAgICAgICAgIHdoZW4g
W0FkZHJlc3MsIEltbWVkaWF0ZV0KKyAgICAgICAgICAgICAgICBpZiBvcGVyYW5kc1swXS5yaXNj
djY0UmVxdWlyZXNMb2FkCisgICAgICAgICAgICAgICAgICAgIG9wZXJhbmRzWzBdLnJpc2N2NjRM
b2FkKFJJU0NWNjRTY3JhdGNoUmVnaXN0ZXIueDMxKQorICAgICAgICAgICAgICAgICAgICAkYXNt
LnB1dHMgImxkIHgzMSwgMCh4MzEpIgorICAgICAgICAgICAgICAgICAgICAkYXNtLnB1dHMgImph
bHIgeDMxIgorICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgJGFzbS5w
dXRzICJsZCB4MzEsICN7b3BlcmFuZHNbMF0ucmlzY3Y2NE9wZXJhbmR9IgorICAgICAgICAgICAg
ICAgICAgICAkYXNtLnB1dHMgImphbHIgeDMxIgorICAgICAgICAgICAgICAgIGVuZAorICAgICAg
ICAgICAgd2hlbiBbTGFiZWxSZWZlcmVuY2VdCisgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJj
YWxsICN7b3BlcmFuZHNbMF0uYXNtTGFiZWx9IgorICAgICAgICAgICAgZWxzZQorICAgICAgICAg
ICAgICAgIHJpc2N2NjRSYWlzZU1pc21hdGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICAgICAg
ICAgIGVuZAorICAgICAgICB3aGVuICJicmVhayIKKyAgICAgICAgICAgICRhc20ucHV0cyAiZWJy
ZWFrIgorICAgICAgICB3aGVuICJyZXQiCisgICAgICAgICAgICAkYXNtLnB1dHMgInJldCIKKyAg
ICAgICAgd2hlbiAiY2JlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVyYW5k
cywgOmIsIDplcSkKKyAgICAgICAgd2hlbiAiY2llcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0
Q29tcGFyZShvcGVyYW5kcywgOncsIDplcSkKKyAgICAgICAgd2hlbiAiY3BlcSIsICJjcWVxIgor
ICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6ZCwgOmVxKQorICAgICAg
ICB3aGVuICJjYm5lcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVyYW5kcywg
OmIsIDpuZXEpCisgICAgICAgIHdoZW4gImNpbmVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRD
b21wYXJlKG9wZXJhbmRzLCA6dywgOm5lcSkKKyAgICAgICAgd2hlbiAiY3BuZXEiLCAiY3FuZXEi
CisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDpkLCA6bmVxKQorICAg
ICAgICB3aGVuICJjYmEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMs
IDpiLCA6YSkKKyAgICAgICAgd2hlbiAiY2lhIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb21w
YXJlKG9wZXJhbmRzLCA6dywgOmEpCisgICAgICAgIHdoZW4gImNwYSIsICJjcWEiCisgICAgICAg
ICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDpkLCA6YSkKKyAgICAgICAgd2hlbiAi
Y2JhZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDpiLCA6YWVx
KQorICAgICAgICB3aGVuICJjaWFlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShv
cGVyYW5kcywgOncsIDphZXEpCisgICAgICAgIHdoZW4gImNwYWVxIiwgImNxYWVxIgorICAgICAg
ICAgICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6ZCwgOmFlcSkKKyAgICAgICAgd2hl
biAiY2JiIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6YiwgOmIp
CisgICAgICAgIHdoZW4gImNpYiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVy
YW5kcywgOncsIDpiKQorICAgICAgICB3aGVuICJjcGIiLCAiY3FiIgorICAgICAgICAgICAgcmlz
Y3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6ZCwgOmIpCisgICAgICAgIHdoZW4gImNiYmVxIgor
ICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6YiwgOmJlcSkKKyAgICAg
ICAgd2hlbiAiY2liZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMs
IDp3LCA6YmVxKQorICAgICAgICB3aGVuICJjcGJlcSIsICJjcWJlcSIKKyAgICAgICAgICAgIHJp
c2N2NjRFbWl0Q29tcGFyZShvcGVyYW5kcywgOmQsIDpiZXEpCisgICAgICAgIHdoZW4gImNibHQi
CisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDpiLCA6bHQpCisgICAg
ICAgIHdoZW4gImNpbHQiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMs
IDp3LCA6bHQpCisgICAgICAgIHdoZW4gImNwbHQiLCAiY3FsdCIKKyAgICAgICAgICAgIHJpc2N2
NjRFbWl0Q29tcGFyZShvcGVyYW5kcywgOmQsIDpsdCkKKyAgICAgICAgd2hlbiAiY2JsdGVxIgor
ICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6YiwgOmx0ZXEpCisgICAg
ICAgIHdoZW4gImNpbHRlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShvcGVyYW5k
cywgOncsIDpsdGVxKQorICAgICAgICB3aGVuICJjcGx0ZXEiLCAiY3FsdGVxIgorICAgICAgICAg
ICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6ZCwgOmx0ZXEpCisgICAgICAgIHdoZW4g
ImNiZ3QiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3BlcmFuZHMsIDpiLCA6Z3Qp
CisgICAgICAgIHdoZW4gImNpZ3QiCisgICAgICAgICAgICByaXNjdjY0RW1pdENvbXBhcmUob3Bl
cmFuZHMsIDp3LCA6Z3QpCisgICAgICAgIHdoZW4gImNwZ3QiLCAiY3FndCIKKyAgICAgICAgICAg
IHJpc2N2NjRFbWl0Q29tcGFyZShvcGVyYW5kcywgOmQsIDpndCkKKyAgICAgICAgd2hlbiAiY2Jn
dGVxIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6YiwgOmd0ZXEp
CisgICAgICAgIHdoZW4gImNpZ3RlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0Q29tcGFyZShv
cGVyYW5kcywgOncsIDpndGVxKQorICAgICAgICB3aGVuICJjcGd0ZXEiLCAiY3FndGVxIgorICAg
ICAgICAgICAgcmlzY3Y2NEVtaXRDb21wYXJlKG9wZXJhbmRzLCA6ZCwgOmd0ZXEpCisgICAgICAg
IHdoZW4gInRieiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0VGVzdChvcGVyYW5kcywgOmIsIDp6
KQorICAgICAgICB3aGVuICJ0Ym56IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRUZXN0KG9wZXJh
bmRzLCA6YiwgOm56KQorICAgICAgICB3aGVuICJ0aXoiCisgICAgICAgICAgICByaXNjdjY0RW1p
dFRlc3Qob3BlcmFuZHMsIDp3LCA6eikKKyAgICAgICAgd2hlbiAidGlueiIKKyAgICAgICAgICAg
IHJpc2N2NjRFbWl0VGVzdChvcGVyYW5kcywgOncsIDpueikKKyAgICAgICAgd2hlbiAidHB6Iiwg
InRxeiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0VGVzdChvcGVyYW5kcywgOmQsIDp6KQorICAg
ICAgICB3aGVuICJ0cG56IiwgInRxbnoiCisgICAgICAgICAgICByaXNjdjY0RW1pdFRlc3Qob3Bl
cmFuZHMsIDpkLCA6bnopCisgICAgICAgIHdoZW4gInRicyIsICJ0aXMiLCAidHBzIiwgInRxcyIK
KyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAgIHdoZW4gInBlZWsi
LCAicG9rZSIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAgIHdo
ZW4gImJvIiwgImJzIiwgImJ6IiwgImJueiIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3Vw
cG9ydGVkCisgICAgICAgIHdoZW4gImxlYXAiLCAibGVhcSIKKyAgICAgICAgICAgIGNhc2Ugcmlz
Y3Y2NE9wZXJhbmRUeXBlcyhvcGVyYW5kcykKKyAgICAgICAgICAgIHdoZW4gW0FkZHJlc3MsIFJl
Z2lzdGVySURdCisgICAgICAgICAgICAgICAgaWYgb3BlcmFuZHNbMF0ucmlzY3Y2NFJlcXVpcmVz
TG9hZAorICAgICAgICAgICAgICAgICAgICBvcGVyYW5kc1swXS5yaXNjdjY0TG9hZChSSVNDVjY0
U2NyYXRjaFJlZ2lzdGVyLngzMSkKKyAgICAgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJtdiAj
e29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgeDMxIgorICAgICAgICAgICAgICAgIGVsc2UK
KyAgICAgICAgICAgICAgICAgICAgJGFzbS5wdXRzICJhZGRpICN7b3BlcmFuZHNbMV0ucmlzY3Y2
NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLmJhc2UucmlzY3Y2NE9wZXJhbmR9LCAje29wZXJhbmRz
WzBdLm9mZnNldC52YWx1ZX0iCisgICAgICAgICAgICAgICAgZW5kCisgICAgICAgICAgICB3aGVu
IFtCYXNlSW5kZXgsIFJlZ2lzdGVySURdCisgICAgICAgICAgICAgICAgb3BlcmFuZHNbMF0ucmlz
Y3Y2NExvYWQoUklTQ1Y2NFNjcmF0Y2hSZWdpc3Rlci54MzEsIFJJU0NWNjRTY3JhdGNoUmVnaXN0
ZXIueDMwKQorICAgICAgICAgICAgICAgICRhc20ucHV0cyAibXYgI3tvcGVyYW5kc1sxXS5yaXNj
djY0T3BlcmFuZH0sIHgzMSIKKyAgICAgICAgICAgIHdoZW4gW0xhYmVsUmVmZXJlbmNlLCBSZWdp
c3RlcklEXQorICAgICAgICAgICAgICAgICRhc20ucHV0cyAibGxhICN7b3BlcmFuZHNbMV0ucmlz
Y3Y2NE9wZXJhbmR9LCAje29wZXJhbmRzWzBdLmFzbUxhYmVsfSIKKyAgICAgICAgICAgIGVsc2UK
KyAgICAgICAgICAgICAgICByaXNjdjY0UmFpc2VNaXNtYXRjaGVkT3BlcmFuZHMob3BlcmFuZHMp
CisgICAgICAgICAgICBlbmQKKyAgICAgICAgd2hlbiAic211bGxpIgorICAgICAgICAgICAgcmlz
Y3Y2NFJhaXNlVW5zdXBwb3J0ZWQKKyAgICAgICAgd2hlbiAibWVtZmVuY2UiCisgICAgICAgICAg
ICAkYXNtLnB1dHMgImZlbmNlIHJ3LCBydyIKKyAgICAgICAgd2hlbiAiZmVuY2UiCisgICAgICAg
ICAgICAkYXNtLnB1dHMgImZlbmNlIgorICAgICAgICB3aGVuICJiZmlxIgorICAgICAgICAgICAg
cmlzY3Y2NFJhaXNlVW5zdXBwb3J0ZWQKKyAgICAgICAgd2hlbiAicGNydG9hZGRyIgorICAgICAg
ICAgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRzKQorICAgICAgICAgICAgd2hl
biBbTGFiZWxSZWZlcmVuY2UsIFJlZ2lzdGVySURdCisgICAgICAgICAgICAgICAgJGFzbS5wdXRz
ICJsbGEgI3tvcGVyYW5kc1sxXS5yaXNjdjY0T3BlcmFuZH0sICN7b3BlcmFuZHNbMF0uYXNtTGFi
ZWx9IgorICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJpc2N2NjRSYWlzZU1pc21h
dGNoZWRPcGVyYW5kcyhvcGVyYW5kcykKKyAgICAgICAgICAgIGVuZAorICAgICAgICB3aGVuICJn
bG9iYWxhZGRyIgorICAgICAgICAgICAgY2FzZSByaXNjdjY0T3BlcmFuZFR5cGVzKG9wZXJhbmRz
KQorICAgICAgICAgICAgd2hlbiBbTGFiZWxSZWZlcmVuY2UsIFJlZ2lzdGVySURdCisgICAgICAg
ICAgICAgICAgJGFzbS5wdXRzICJsYSAje29wZXJhbmRzWzFdLnJpc2N2NjRPcGVyYW5kfSwgI3tv
cGVyYW5kc1swXS5hc21MYWJlbH0iCisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAg
cmlzY3Y2NFJhaXNlTWlzbWF0Y2hlZE9wZXJhbmRzKG9wZXJhbmRzKQorICAgICAgICAgICAgZW5k
CisgICAgICAgIHdoZW4gImxyb3RhdGVpIiwgImxyb3RhdGVxIgorICAgICAgICAgICAgcmlzY3Y2
NFJhaXNlVW5zdXBwb3J0ZWQKKyAgICAgICAgd2hlbiAicnJvdGF0ZWkiLCAicnJvdGF0ZXEiCisg
ICAgICAgICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3aGVuICJtb3ZlZCIK
KyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBPcGVyYXRpb24ob3BlcmFuZHMsICJmbXYuZCIpCisg
ICAgICAgIHdoZW4gImxvYWRmIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUExvYWQob3BlcmFu
ZHMsICJmbHciKQorICAgICAgICB3aGVuICJsb2FkZCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0
RlBMb2FkKG9wZXJhbmRzLCAiZmxkIikKKyAgICAgICAgd2hlbiAic3RvcmVmIgorICAgICAgICAg
ICAgcmlzY3Y2NEVtaXRGUFN0b3JlKG9wZXJhbmRzLCAiZnN3IikKKyAgICAgICAgd2hlbiAic3Rv
cmVkIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUFN0b3JlKG9wZXJhbmRzLCAiZnNkIikKKyAg
ICAgICAgd2hlbiAiYWRkZiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBPcGVyYXRpb24oW29w
ZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSwgb3BlcmFuZHNbMV1dLCAiZmFkZC5zIikKKyAgICAgICAg
d2hlbiAiYWRkZCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBPcGVyYXRpb24oW29wZXJhbmRz
WzBdLCBvcGVyYW5kc1sxXSwgb3BlcmFuZHNbMV1dLCAiZmFkZC5kIikKKyAgICAgICAgd2hlbiAi
c3ViZiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBPcGVyYXRpb24oW29wZXJhbmRzWzFdLCBv
cGVyYW5kc1swXSwgb3BlcmFuZHNbMV1dLCAiZnN1Yi5zIikKKyAgICAgICAgd2hlbiAic3ViZCIK
KyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBPcGVyYXRpb24oW29wZXJhbmRzWzFdLCBvcGVyYW5k
c1swXSwgb3BlcmFuZHNbMV1dLCAiZnN1Yi5kIikKKyAgICAgICAgd2hlbiAibXVsZiIKKyAgICAg
ICAgICAgIHJpc2N2NjRFbWl0RlBPcGVyYXRpb24oW29wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSwg
b3BlcmFuZHNbMV1dLCAiZm11bC5zIikKKyAgICAgICAgd2hlbiAibXVsZCIKKyAgICAgICAgICAg
IHJpc2N2NjRFbWl0RlBPcGVyYXRpb24oW29wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSwgb3BlcmFu
ZHNbMV1dLCAiZm11bC5kIikKKyAgICAgICAgd2hlbiAiZGl2ZiIKKyAgICAgICAgICAgIHJpc2N2
NjRFbWl0RlBPcGVyYXRpb24oW29wZXJhbmRzWzFdLCBvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV1d
LCAiZmRpdi5zIikKKyAgICAgICAgd2hlbiAiZGl2ZCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0
RlBPcGVyYXRpb24oW29wZXJhbmRzWzFdLCBvcGVyYW5kc1swXSwgb3BlcmFuZHNbMV1dLCAiZmRp
di5kIikKKyAgICAgICAgd2hlbiAic3FydGYiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQT3Bl
cmF0aW9uKG9wZXJhbmRzLCAiZnNxcnQucyIpCisgICAgICAgIHdoZW4gInNxcnRkIgorICAgICAg
ICAgICAgcmlzY3Y2NEVtaXRGUE9wZXJhdGlvbihvcGVyYW5kcywgImZzcXJ0LmQiKQorICAgICAg
ICB3aGVuICJhYnNmIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUE9wZXJhdGlvbihvcGVyYW5k
cywgImZhYnMucyIpCisgICAgICAgIHdoZW4gImFic2QiCisgICAgICAgICAgICByaXNjdjY0RW1p
dEZQT3BlcmF0aW9uKG9wZXJhbmRzLCAiZmFicy5kIikKKyAgICAgICAgd2hlbiAibmVnZiIKKyAg
ICAgICAgICAgIHJpc2N2NjRFbWl0RlBPcGVyYXRpb24ob3BlcmFuZHMsICJmbmVnLnMiKQorICAg
ICAgICB3aGVuICJuZWdkIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUE9wZXJhdGlvbihvcGVy
YW5kcywgImZuZWcuZCIpCisgICAgICAgIHdoZW4gImZsb29yZiIKKyAgICAgICAgICAgIHJpc2N2
NjRFbWl0RlBSb3VuZE9wZXJhdGlvbihvcGVyYW5kcywgOnMsICJyZG4iKQorICAgICAgICB3aGVu
ICJmbG9vcmQiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQUm91bmRPcGVyYXRpb24ob3BlcmFu
ZHMsIDpkLCAicmRuIikKKyAgICAgICAgd2hlbiAiY2VpbGYiCisgICAgICAgICAgICByaXNjdjY0
RW1pdEZQUm91bmRPcGVyYXRpb24ob3BlcmFuZHMsIDpzLCAicnVwIikKKyAgICAgICAgd2hlbiAi
Y2VpbGQiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQUm91bmRPcGVyYXRpb24ob3BlcmFuZHMs
IDpkLCAicnVwIikKKyAgICAgICAgd2hlbiAicm91bmRmIgorICAgICAgICAgICAgcmlzY3Y2NEVt
aXRGUFJvdW5kT3BlcmF0aW9uKG9wZXJhbmRzLCA6cywgInJuZSIpCisgICAgICAgIHdoZW4gInJv
dW5kZCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBSb3VuZE9wZXJhdGlvbihvcGVyYW5kcywg
OmQsICJybmUiKQorICAgICAgICB3aGVuICJ0cnVuY2F0ZWYiCisgICAgICAgICAgICByaXNjdjY0
RW1pdEZQUm91bmRPcGVyYXRpb24ob3BlcmFuZHMsIDpzLCAicnR6IikKKyAgICAgICAgd2hlbiAi
dHJ1bmNhdGVkIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUFJvdW5kT3BlcmF0aW9uKG9wZXJh
bmRzLCA6ZCwgInJ0eiIpCisgICAgICAgIHdoZW4gInRydW5jYXRlZjJpIgorICAgICAgICAgICAg
cmlzY3Y2NEVtaXRGUENvbnZlcnRPcGVyYXRpb24ob3BlcmFuZHMsIDpzLCA6d3UsICJydHoiKQor
ICAgICAgICB3aGVuICJ0cnVuY2F0ZWQyaSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb252
ZXJ0T3BlcmF0aW9uKG9wZXJhbmRzLCA6ZCwgOnd1LCAicnR6IikKKyAgICAgICAgd2hlbiAidHJ1
bmNhdGVmMnEiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29udmVydE9wZXJhdGlvbihvcGVy
YW5kcywgOnMsIDpsdSwgInJ0eiIpCisgICAgICAgIHdoZW4gInRydW5jYXRlZDJxIgorICAgICAg
ICAgICAgcmlzY3Y2NEVtaXRGUENvbnZlcnRPcGVyYXRpb24ob3BlcmFuZHMsIDpkLCA6bHUsICJy
dHoiKQorICAgICAgICB3aGVuICJ0cnVuY2F0ZWYyaXMiCisgICAgICAgICAgICByaXNjdjY0RW1p
dEZQQ29udmVydE9wZXJhdGlvbihvcGVyYW5kcywgOnMsIDp3LCAicnR6IikKKyAgICAgICAgd2hl
biAidHJ1bmNhdGVkMmlzIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbnZlcnRPcGVyYXRp
b24ob3BlcmFuZHMsIDpkLCA6dywgInJ0eiIpCisgICAgICAgIHdoZW4gInRydW5jYXRlZjJxcyIK
KyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb252ZXJ0T3BlcmF0aW9uKG9wZXJhbmRzLCA6cywg
OmwsICJydHoiKQorICAgICAgICB3aGVuICJ0cnVuY2F0ZWQycXMiCisgICAgICAgICAgICByaXNj
djY0RW1pdEZQQ29udmVydE9wZXJhdGlvbihvcGVyYW5kcywgOmQsIDpsLCAicnR6IikKKyAgICAg
ICAgd2hlbiAiY2kyZiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb252ZXJ0T3BlcmF0aW9u
KG9wZXJhbmRzLCA6d3UsIDpzLCA6bm9uZSkKKyAgICAgICAgd2hlbiAiY2kyZCIKKyAgICAgICAg
ICAgIHJpc2N2NjRFbWl0RlBDb252ZXJ0T3BlcmF0aW9uKG9wZXJhbmRzLCA6d3UsIDpkLCA6bm9u
ZSkKKyAgICAgICAgd2hlbiAiY2kyZnMiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29udmVy
dE9wZXJhdGlvbihvcGVyYW5kcywgOncsIDpzLCA6bm9uZSkKKyAgICAgICAgd2hlbiAiY2kyZHMi
CisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29udmVydE9wZXJhdGlvbihvcGVyYW5kcywgOncs
IDpkLCA6bm9uZSkKKyAgICAgICAgd2hlbiAiY3EyZiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0
RlBDb252ZXJ0T3BlcmF0aW9uKG9wZXJhbmRzLCA6bHUsIDpzLCA6bm9uZSkKKyAgICAgICAgd2hl
biAiY3EyZCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb252ZXJ0T3BlcmF0aW9uKG9wZXJh
bmRzLCA6bHUsIDpkLCA6bm9uZSkKKyAgICAgICAgd2hlbiAiY3EyZnMiCisgICAgICAgICAgICBy
aXNjdjY0RW1pdEZQQ29udmVydE9wZXJhdGlvbihvcGVyYW5kcywgOmwsIDpzLCA6bm9uZSkKKyAg
ICAgICAgd2hlbiAiY3EyZHMiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29udmVydE9wZXJh
dGlvbihvcGVyYW5kcywgOmwsIDpkLCA6bm9uZSkKKyAgICAgICAgd2hlbiAiY2YyZCIKKyAgICAg
ICAgICAgIHJpc2N2NjRFbWl0RlBDb252ZXJ0T3BlcmF0aW9uKG9wZXJhbmRzLCA6cywgOmQsIDpu
b25lKQorICAgICAgICB3aGVuICJjZDJmIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbnZl
cnRPcGVyYXRpb24ob3BlcmFuZHMsIDpkLCA6cywgOm5vbmUpCisgICAgICAgIHdoZW4gInR6Y250
aSIsICJ0emNudHEiCisgICAgICAgICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAg
ICB3aGVuICJsemNudGkiLCAibHpjbnRxIgorICAgICAgICAgICAgcmlzY3Y2NFJhaXNlVW5zdXBw
b3J0ZWQKKyAgICAgICAgd2hlbiAiYW5kZiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBCaXR3
aXNlT3BlcmF0aW9uKG9wZXJhbmRzLCA6cywgImFuZCIpCisgICAgICAgIHdoZW4gImFuZGQiCisg
ICAgICAgICAgICByaXNjdjY0RW1pdEZQQml0d2lzZU9wZXJhdGlvbihvcGVyYW5kcywgOmQsICJh
bmQiKQorICAgICAgICB3aGVuICJvcmYiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQml0d2lz
ZU9wZXJhdGlvbihvcGVyYW5kcywgOnMsICJvciIpCisgICAgICAgIHdoZW4gIm9yZCIKKyAgICAg
ICAgICAgIHJpc2N2NjRFbWl0RlBCaXR3aXNlT3BlcmF0aW9uKG9wZXJhbmRzLCA6ZCwgIm9yIikK
KyAgICAgICAgd2hlbiAiY2ZlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb21wYXJlKG9w
ZXJhbmRzLCA6cywgOmVxKQorICAgICAgICB3aGVuICJjZm5lcSIKKyAgICAgICAgICAgIHJpc2N2
NjRFbWl0RlBDb21wYXJlKG9wZXJhbmRzLCA6cywgOm5lcSkKKyAgICAgICAgd2hlbiAiY2ZsdCIK
KyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb21wYXJlKG9wZXJhbmRzLCA6cywgOmx0KQorICAg
ICAgICB3aGVuICJjZmx0ZXEiCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29tcGFyZShvcGVy
YW5kcywgOnMsIDpsdGVxKQorICAgICAgICB3aGVuICJjZmd0IgorICAgICAgICAgICAgcmlzY3Y2
NEVtaXRGUENvbXBhcmUob3BlcmFuZHMsIDpzLCA6Z3QpCisgICAgICAgIHdoZW4gImNmZ3RlcSIK
KyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb21wYXJlKG9wZXJhbmRzLCA6cywgOmd0ZXEpCisg
ICAgICAgIHdoZW4gImNmbmVxdW4iCisgICAgICAgICAgICByaXNjdjY0RW1pdEZQQ29tcGFyZShv
cGVyYW5kcywgOnMsIDpuZXF1bikKKyAgICAgICAgd2hlbiAiY2RlcSIKKyAgICAgICAgICAgIHJp
c2N2NjRFbWl0RlBDb21wYXJlKG9wZXJhbmRzLCA6ZCwgOmVxKQorICAgICAgICB3aGVuICJjZG5l
cSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb21wYXJlKG9wZXJhbmRzLCA6ZCwgOm5lcSkK
KyAgICAgICAgd2hlbiAiY2RsdCIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb21wYXJlKG9w
ZXJhbmRzLCA6ZCwgOmx0KQorICAgICAgICB3aGVuICJjZGx0ZXEiCisgICAgICAgICAgICByaXNj
djY0RW1pdEZQQ29tcGFyZShvcGVyYW5kcywgOmQsIDpsdGVxKQorICAgICAgICB3aGVuICJjZGd0
IgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRGUENvbXBhcmUob3BlcmFuZHMsIDpkLCA6Z3QpCisg
ICAgICAgIHdoZW4gImNkZ3RlcSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb21wYXJlKG9w
ZXJhbmRzLCA6ZCwgOmd0ZXEpCisgICAgICAgIHdoZW4gImNkbmVxdW4iCisgICAgICAgICAgICBy
aXNjdjY0RW1pdEZQQ29tcGFyZShvcGVyYW5kcywgOmQsIDpuZXF1bikKKyAgICAgICAgd2hlbiAi
ZmkyZiIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb3B5KG9wZXJhbmRzLCA6cykKKyAgICAg
ICAgd2hlbiAiZmYyaSIKKyAgICAgICAgICAgIHJpc2N2NjRFbWl0RlBDb3B5KG9wZXJhbmRzLCA6
cykKKyAgICAgICAgd2hlbiAiZnAyZCIsICJmcTJkIgorICAgICAgICAgICAgcmlzY3Y2NEVtaXRG
UENvcHkob3BlcmFuZHMsIDpkKQorICAgICAgICB3aGVuICJmZDJwIiwgImZkMnEiCisgICAgICAg
ICAgICByaXNjdjY0RW1pdEZQQ29weShvcGVyYW5kcywgOmQpCisgICAgICAgIHdoZW4gInRsc19s
b2FkcCIsICJ0bHNfc3RvcmVwIgorICAgICAgICAgICAgcmlzY3Y2NFJhaXNlVW5zdXBwb3J0ZWQK
KyAgICAgICAgd2hlbiAibG9hZGxpbmthY3FiIiwgImxvYWRsaW5rYWNxaCIsICJsb2FkbGlua2Fj
cWkiLCAibG9hZGxpbmthY3FxIgorICAgICAgICAgICAgcmlzY3Y2NFJhaXNlVW5zdXBwb3J0ZWQK
KyAgICAgICAgd2hlbiAic3RvcmVjb25kcmVsYiIsICJzdG9yZWNvbmRyZWxoIiwgInN0b3JlY29u
ZHJlbGkiLCAic3RvcmVjb25kcmVscSIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9y
dGVkCisgICAgICAgIHdoZW4gImF0b21pY3hjaGdhZGRiIiwgImF0b21pY3hjaGdhZGRoIiwgImF0
b21pY3hjaGdhZGRpIiwgImF0b21pY3hjaGdhZGRxIgorICAgICAgICAgICAgcmlzY3Y2NFJhaXNl
VW5zdXBwb3J0ZWQKKyAgICAgICAgd2hlbiAiYXRvbWljeGNoZ2NsZWFyYiIsICJhdG9taWN4Y2hn
Y2xlYXJoIiwgImF0b21pY3hjaGdjbGVhcmkiLCAiYXRvbWljeGNoZ2NsZWFycSIKKyAgICAgICAg
ICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAgIHdoZW4gImF0b21pY3hjaGdvcmIi
LCAiYXRvbWljeGNoZ29yaCIsICJhdG9taWN4Y2hnb3JpIiwgImF0b21pY3hjaGdvcnEiCisgICAg
ICAgICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3aGVuICJhdG9taWN4Y2hn
eG9yYiIsICJhdG9taWN4Y2hneG9yaCIsICJhdG9taWN4Y2hneG9yaSIsICJhdG9taWN4Y2hneG9y
cSIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAgIHdoZW4gImF0
b21pY3hjaGdiIiwgImF0b21pY3hjaGdoIiwgImF0b21pY3hjaGdpIiwgImF0b21pY3hjaGdxIgor
ICAgICAgICAgICAgcmlzY3Y2NFJhaXNlVW5zdXBwb3J0ZWQKKyAgICAgICAgd2hlbiAiYXRvbWlj
d2Vha2Nhc2IiLCAiYXRvbWljd2Vha2Nhc2giLCAiYXRvbWljd2Vha2Nhc2kiLCAiYXRvbWljd2Vh
a2Nhc3EiCisgICAgICAgICAgICByaXNjdjY0UmFpc2VVbnN1cHBvcnRlZAorICAgICAgICB3aGVu
ICJhdG9taWNsb2FkYiIsICJhdG9taWNsb2FkaCIsICJhdG9taWNsb2FkaSIsICJhdG9taWNsb2Fk
cSIKKyAgICAgICAgICAgIHJpc2N2NjRSYWlzZVVuc3VwcG9ydGVkCisgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgIGxvd2VyRGVmYXVsdAorICAgICAgICBlbmQKKyAgICBlbmQKK2VuZApkaWZmIC0t
Z2l0IGEvU291cmNlL1dURi93dGYvUGxhdGZvcm1FbmFibGUuaCBiL1NvdXJjZS9XVEYvd3RmL1Bs
YXRmb3JtRW5hYmxlLmgKaW5kZXggYmJjMDBmNjI5ZmM5YzI4N2E0NWQ4NWI0NjM5NTE4NTgxNDYx
Y2Q2Zi4uMDQxYTNlMjhlYzk1OGExNzEyN2MwYjAyNzc4NWNhYWZlMmJiZTI0NiAxMDA2NDQKLS0t
IGEvU291cmNlL1dURi93dGYvUGxhdGZvcm1FbmFibGUuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9Q
bGF0Zm9ybUVuYWJsZS5oCkBAIC04ODQsNyArODg0LDcgQEAKICAgIHRoYXQgZXhlY3V0ZXMgZWFj
aCBvcGNvZGUuIEl0IGNhbm5vdCBiZSBzdXBwb3J0ZWQgYnkgdGhlIENMb29wIHNpbmNlIHRoZXJl
J3Mgbm8gd2F5IHRvIGVtYmVkIHRoZQogICAgT3Bjb2RlSUQgd29yZCBpbiB0aGUgQ0xvb3AncyBz
d2l0Y2ggc3RhdGVtZW50IGNhc2VzLiBJdCBpcyBhbHNvIGN1cnJlbnRseSBub3QgaW1wbGVtZW50
ZWQgZm9yIE1TVkMuCiAqLwotI2lmICFkZWZpbmVkKEVOQUJMRV9MTElOVF9FTUJFRERFRF9PUENP
REVfSUQpICYmICFFTkFCTEUoQ19MT09QKSAmJiAhQ09NUElMRVIoTVNWQykgJiYgKENQVShYODYp
IHx8IENQVShYODZfNjQpIHx8IENQVShBUk02NCkgfHwgKENQVShBUk1fVEhVTUIyKSAmJiBPUyhE
QVJXSU4pKSkKKyNpZiAhZGVmaW5lZChFTkFCTEVfTExJTlRfRU1CRURERURfT1BDT0RFX0lEKSAm
JiAhRU5BQkxFKENfTE9PUCkgJiYgIUNPTVBJTEVSKE1TVkMpICYmIChDUFUoWDg2KSB8fCBDUFUo
WDg2XzY0KSB8fCBDUFUoQVJNNjQpIHx8IChDUFUoQVJNX1RIVU1CMikgJiYgT1MoREFSV0lOKSkg
fHwgQ1BVKFJJU0NWNjQpKQogI2RlZmluZSBFTkFCTEVfTExJTlRfRU1CRURERURfT1BDT0RFX0lE
IDEKICNlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21h
a2UgYi9Tb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UKaW5kZXggZDc4ZTZkMzQ1YTAw
MjViNzAzYWM4ZjAzNjIyM2VlZDNhNDc1MzhmNS4uMWViOWY4YzExMmM1YTJiZDJjNjAxZmI5Y2Yz
NzY1MGZkOTVmM2VkNCAxMDA2NDQKLS0tIGEvU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNt
YWtlCisrKyBiL1NvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZQpAQCAtODQsNyArODQs
NyBAQCBtYWNybyhXRUJLSVRfT1BUSU9OX0JFR0lOKQogICAgICAgICBzZXQoRU5BQkxFX0pJVF9E
RUZBVUxUIE9GRikKICAgICAgICAgc2V0KEVOQUJMRV9GVExfREVGQVVMVCBPRkYpCiAgICAgICAg
IHNldChVU0VfU1lTVEVNX01BTExPQ19ERUZBVUxUIE9GRikKLSAgICAgICAgc2V0KEVOQUJMRV9D
X0xPT1BfREVGQVVMVCBPTikKKyAgICAgICAgc2V0KEVOQUJMRV9DX0xPT1BfREVGQVVMVCBPRkYp
CiAgICAgICAgIHNldChFTkFCTEVfU0FNUExJTkdfUFJPRklMRVJfREVGQVVMVCBPRkYpCiAgICAg
ZWxzZSAoKQogICAgICAgICBzZXQoRU5BQkxFX0pJVF9ERUZBVUxUIE9GRikKZGlmZiAtLWdpdCBh
L0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCAxNTViNzNlMGVmOTkzNjlkMTFlMTBkMjNlMTg3
MTZlYmQ4NDE3N2MwLi4xNTA0YzYwNDI4YmM5ZDdlYjQ1MzgxYjQxN2M5NDE5MmExNzgxNDE1IDEw
MDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIw
MjEtMDgtMjkgIFphbiBEb2JlcnNlayAgPHpkb2JlcnNla0BpZ2FsaWEuY29tPgorCisgICAgICAg
IFJJU0NWNjQgc3VwcG9ydCBpbiBMTEludAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjI5MDM1CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS84MjEyMDkw
OD4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNv
dXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZToKKyAgICAgICAgRG9uJ3QgZm9yY2UgQ0xv
b3AgdG8gYmUgZGVmYXVsdCBmb3IgUklTQ1Y2NCBhbnltb3JlLgorCiAyMDIxLTA4LTI3ICBTdGVw
aGFuIFN6YWJvICA8c3RlcGhhbi5zemFib0Bzb255LmNvbT4KIAogICAgICAgICBbUGxheVN0YXRp
b25dW0NNYWtlXSBBZGQgY29udHJvbCBvdmVyIHdoZXRoZXIgSmF2YVNjcmlwdENvcmUgc2hvdWxk
IGJlIHNoYXJlZAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>