<?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>71668</bug_id>
          
          <creation_ts>2011-11-07 04:53:20 -0800</creation_ts>
          <short_desc>CSSValue: Devirtualize isFooType().</short_desc>
          <delta_ts>2012-01-08 15:27:53 -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>CSS</component>
          <version>528+ (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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>71667</dependson>
          <blocked>71666</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Andreas Kling">kling</reporter>
          <assigned_to name="Andreas Kling">kling</assigned_to>
          <cc>koivisto</cc>
    
    <cc>macpherson</cc>
    
    <cc>tczene</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>497078</commentid>
    <comment_count>0</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2011-11-07 04:53:20 -0800</bug_when>
    <thetext>CSSValue: Devirtualize isFooType().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>497081</commentid>
    <comment_count>1</comment_count>
      <attachid>113847</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2011-11-07 05:01:18 -0800</bug_when>
    <thetext>Created attachment 113847
Patch (depends on 71667)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>497096</commentid>
    <comment_count>2</comment_count>
      <attachid>113847</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2011-11-07 05:44:31 -0800</bug_when>
    <thetext>Comment on attachment 113847
Patch (depends on 71667)

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

&gt; Source/WebCore/css/CSSPrimitiveValueMappings.h:1342
&gt; +    : CSSValue(PrimitiveClass, CSS_PRIMITIVE_VALUE, /* isPrimitive */ true)

Kinda hatin&apos; here...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>497098</commentid>
    <comment_count>3</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2011-11-07 05:47:10 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 113847 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=113847&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/css/CSSPrimitiveValueMappings.h:1342
&gt; &gt; +    : CSSValue(PrimitiveClass, CSS_PRIMITIVE_VALUE, /* isPrimitive */ true)
&gt; 
&gt; Kinda hatin&apos; here...

Reviewers gonna review. I&apos;ll redesign as discussed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>497347</commentid>
    <comment_count>4</comment_count>
      <attachid>113904</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2011-11-07 11:48:53 -0800</bug_when>
    <thetext>Created attachment 113904
Proposed patch v2

A little less verbose this time. ;)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>497352</commentid>
    <comment_count>5</comment_count>
      <attachid>113904</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-11-07 12:07:13 -0800</bug_when>
    <thetext>Comment on attachment 113904
Proposed patch v2

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

&gt; Source/WebCore/css/CSSImageValue.h:53
&gt; +    CSSImageValue(const String&amp; url);

This single-argument constructor should probably be marked explicit.

&gt; Source/WebCore/css/CSSMutableValue.h:43
&gt; +    CSSMutableValue(ClassType classType)

This single-argument constructor should probably be marked explicit.

&gt; Source/WebCore/css/CSSPrimitiveValue.h:225
&gt; +    CSSPrimitiveValue(int ident);
&gt;      CSSPrimitiveValue(unsigned color); // RGB value
&gt;      CSSPrimitiveValue(const Length&amp;);

We should explore putting the explicit keyword on these single-argument constructors.

&gt; Source/WebCore/css/CSSValue.h:135
&gt; +    CSSValue(ClassType classType)
&gt; +        : m_classType(classType)
&gt; +        , m_isPrimitive(isPrimitiveType(classType))
&gt; +        , m_isMutable(isMutableType(classType))
&gt; +        , m_isList(isListType(classType))
&gt; +        , m_isInitial(isInitialType(classType))
&gt; +        , m_isInherited(isInheritedType(classType))

Another way to do this is to include bits to indicate these properties in the constants that are passed in.

&gt; Source/WebCore/css/CSSValue.h:145
&gt; +               || type == ImageClass
&gt; +               || type == CursorImageClass
&gt; +               || type == FontFamilyClass;

These are indented 7 spaces. Instead should be indented 4 spaces.

&gt; Source/WebCore/css/CSSValueList.h:68
&gt; +    CSSValueList(bool isSpaceSeparated);
&gt; +    CSSValueList(CSSParserValueList*);

Should use explicit here.

&gt; Source/WebCore/svg/SVGColor.h:83
&gt; +    SVGColor(const SVGColorType&amp;);

Should mark this explicit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>497419</commentid>
    <comment_count>6</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2011-11-07 13:20:06 -0800</bug_when>
    <thetext>Committed r99468: &lt;http://trac.webkit.org/changeset/99468&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>505342</commentid>
    <comment_count>7</comment_count>
    <who name="Luke Macpherson">macpherson</who>
    <bug_when>2011-11-17 16:25:28 -0800</bug_when>
    <thetext>Hi Andreas, what was the rationale for caching m_isPrimitiveValue and m_isList rather than just calculating from m_classType when needed?

Could we just rearrange the ClassType Enum to allow the inline check to be a single comparison?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>506923</commentid>
    <comment_count>8</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2011-11-21 06:56:34 -0800</bug_when>
    <thetext>(In reply to comment #7)
&gt; Hi Andreas, what was the rationale for caching m_isPrimitiveValue and m_isList rather than just calculating from m_classType when needed?
&gt; 
&gt; Could we just rearrange the ClassType Enum to allow the inline check to be a single comparison?

Hi Luke,

The idea was to keep isPrimitiveValue() and isValueList() as cheap as possible as a &quot;speculative optimization&quot; since they are used quite a bit.

If you have an idea for removing the need for them without incurring additional compares, I&apos;m all ears :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>531838</commentid>
    <comment_count>9</comment_count>
    <who name="David Barr">davidbarr</who>
    <bug_when>2012-01-08 15:27:53 -0800</bug_when>
    <thetext>*** Bug 64863 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>113847</attachid>
            <date>2011-11-07 05:01:18 -0800</date>
            <delta_ts>2011-11-07 11:48:53 -0800</delta_ts>
            <desc>Patch (depends on 71667)</desc>
            <filename>bug-71668.diff</filename>
            <type>text/plain</type>
            <size>73868</size>
            <attacher name="Andreas Kling">kling</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA4ZmRhNDY5Li5kZGVkNzhmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMTMz
IEBACiAyMDExLTExLTA2ICBBbmRyZWFzIEtsaW5nICA8a2xpbmdAd2Via2l0Lm9yZz4KIAorICAg
ICAgICBDU1NWYWx1ZTogRGV2aXJ0dWFsaXplIGlzRm9vVmFsdWUoKQorICAgICAgICA8aHR0cDov
L3dlYmtpdC5vcmcvYi83MTY2OD4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBBZGQgYSBtZW1iZXIgdG8gQ1NTVmFsdWUgdG8gZGV0ZXJtaW5lIHdoaWNo
IHN1YmNsYXNzIGEgZ2l2ZW4KKyAgICAgICAgdmFsdWUgb2JqZWN0IGlzLCBhbG9uZyB3aXRoIHRo
cmVlIGJpdHMgdG8gdGVsbCB1cyB3aGV0aGVyIHRoZQorICAgICAgICB2YWx1ZSBpcyBwcmltaXRp
dmUsIGEgbGlzdCwgb3IgbXV0YWJsZS4KKworICAgICAgICBBbGwgbm9uLXByaXZhdGUgc3ViY2xh
c3MgY29uc3RydWN0b3JzIG5vdyB0YWtlIGEgQ1NTVmFsdWU6OkNsYXNzVHlwZQorICAgICAgICBh
cyB0aGVpciBmaXJzdCBhcmd1bWVudC4gQSBmZXcgY29uc3RydWN0b3JzIHdlcmUgZHVwbGljYXRl
ZCBhcworICAgICAgICBwcml2YXRlIG1lbWJlcnMgdG8gYWxsb3cgY2FsbGluZyB0aGVtIGZyb20g
OjpjcmVhdGUoKSBtZXRob2RzCisgICAgICAgIHdpdGhvdXQgcGFzc2luZyBhIENsYXNzVHlwZS4K
KworICAgICAgICAqIGNzcy9DU1NBc3BlY3RSYXRpb1ZhbHVlLmg6CisgICAgICAgIChXZWJDb3Jl
OjpDU1NBc3BlY3RSYXRpb1ZhbHVlOjpDU1NBc3BlY3RSYXRpb1ZhbHVlKToKKyAgICAgICAgKiBj
c3MvQ1NTQm9yZGVySW1hZ2VTbGljZVZhbHVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU0Jv
cmRlckltYWdlU2xpY2VWYWx1ZTo6Q1NTQm9yZGVySW1hZ2VTbGljZVZhbHVlKToKKyAgICAgICAg
KiBjc3MvQ1NTQm9yZGVySW1hZ2VTbGljZVZhbHVlLmg6CisgICAgICAgICogY3NzL0NTU0JvcmRl
ckltYWdlVmFsdWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTQm9yZGVySW1hZ2VWYWx1ZTo6
Q1NTQm9yZGVySW1hZ2VWYWx1ZSk6CisgICAgICAgICogY3NzL0NTU0JvcmRlckltYWdlVmFsdWUu
aDoKKyAgICAgICAgKiBjc3MvQ1NTQ2FudmFzVmFsdWUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkNT
U0NhbnZhc1ZhbHVlOjpDU1NDYW52YXNWYWx1ZSk6CisgICAgICAgICogY3NzL0NTU0Nyb3NzZmFk
ZVZhbHVlLmg6CisgICAgICAgIChXZWJDb3JlOjpDU1NDcm9zc2ZhZGVWYWx1ZTo6Q1NTQ3Jvc3Nm
YWRlVmFsdWUpOgorICAgICAgICAqIGNzcy9DU1NDdXJzb3JJbWFnZVZhbHVlLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkNTU0N1cnNvckltYWdlVmFsdWU6OkNTU0N1cnNvckltYWdlVmFsdWUpOgor
ICAgICAgICAqIGNzcy9DU1NDdXJzb3JJbWFnZVZhbHVlLmg6CisgICAgICAgICogY3NzL0NTU0Zs
ZXhWYWx1ZS5oOgorICAgICAgICAoV2ViQ29yZTo6Q1NTRmxleFZhbHVlOjpDU1NGbGV4VmFsdWUp
OgorICAgICAgICAqIGNzcy9DU1NGb250RmFjZVNyY1ZhbHVlLmg6CisgICAgICAgIChXZWJDb3Jl
OjpDU1NGb250RmFjZVNyY1ZhbHVlOjpDU1NGb250RmFjZVNyY1ZhbHVlKToKKyAgICAgICAgKiBj
c3MvQ1NTRnVuY3Rpb25WYWx1ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NGdW5jdGlvblZh
bHVlOjpDU1NGdW5jdGlvblZhbHVlKToKKyAgICAgICAgKiBjc3MvQ1NTR3JhZGllbnRWYWx1ZS5o
OgorICAgICAgICAoV2ViQ29yZTo6Q1NTR3JhZGllbnRWYWx1ZTo6aXNMaW5lYXJHcmFkaWVudCk6
CisgICAgICAgIChXZWJDb3JlOjpDU1NHcmFkaWVudFZhbHVlOjppc1JhZGlhbEdyYWRpZW50KToK
KyAgICAgICAgKFdlYkNvcmU6OkNTU0dyYWRpZW50VmFsdWU6OkNTU0dyYWRpZW50VmFsdWUpOgor
ICAgICAgICAoV2ViQ29yZTo6Q1NTTGluZWFyR3JhZGllbnRWYWx1ZTo6Q1NTTGluZWFyR3JhZGll
bnRWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpDU1NSYWRpYWxHcmFkaWVudFZhbHVlOjpDU1NS
YWRpYWxHcmFkaWVudFZhbHVlKToKKyAgICAgICAgKiBjc3MvQ1NTSW1hZ2VHZW5lcmF0b3JWYWx1
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NJbWFnZUdlbmVyYXRvclZhbHVlOjpDU1NJbWFn
ZUdlbmVyYXRvclZhbHVlKToKKyAgICAgICAgKiBjc3MvQ1NTSW1hZ2VHZW5lcmF0b3JWYWx1ZS5o
OgorICAgICAgICAqIGNzcy9DU1NJbWFnZVZhbHVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNT
U0ltYWdlVmFsdWU6OkNTU0ltYWdlVmFsdWUpOgorICAgICAgICAqIGNzcy9DU1NJbWFnZVZhbHVl
Lmg6CisgICAgICAgICogY3NzL0NTU0luaGVyaXRlZFZhbHVlLmg6CisgICAgICAgIChXZWJDb3Jl
OjpDU1NJbmhlcml0ZWRWYWx1ZTo6Q1NTSW5oZXJpdGVkVmFsdWUpOgorICAgICAgICAqIGNzcy9D
U1NJbml0aWFsVmFsdWUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU0luaXRpYWxWYWx1ZTo6Q1NT
SW5pdGlhbFZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU0luaXRpYWxWYWx1ZTo6Y3JlYXRl
KToKKyAgICAgICAgKiBjc3MvQ1NTTGluZUJveENvbnRhaW5WYWx1ZS5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpDU1NMaW5lQm94Q29udGFpblZhbHVlOjpDU1NMaW5lQm94Q29udGFpblZhbHVlKToK
KyAgICAgICAgKiBjc3MvQ1NTTGluZUJveENvbnRhaW5WYWx1ZS5oOgorICAgICAgICAqIGNzcy9D
U1NNdXRhYmxlVmFsdWUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU011dGFibGVWYWx1ZTo6Q1NT
TXV0YWJsZVZhbHVlKToKKyAgICAgICAgKiBjc3MvQ1NTUHJpbWl0aXZlVmFsdWUuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6Q1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKToKKyAg
ICAgICAgKiBjc3MvQ1NTUHJpbWl0aXZlVmFsdWUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1By
aW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZSk6CisgICAgICAgICogY3NzL0NTU1ByaW1p
dGl2ZVZhbHVlTWFwcGluZ3MuaDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ByaW1pdGl2ZVZhbHVl
OjpDU1NQcmltaXRpdmVWYWx1ZSk6CisgICAgICAgICogY3NzL0NTU1JlZmxlY3RWYWx1ZS5oOgor
ICAgICAgICAoV2ViQ29yZTo6Q1NTUmVmbGVjdFZhbHVlOjpDU1NSZWZsZWN0VmFsdWUpOgorICAg
ICAgICAqIGNzcy9DU1NUaW1pbmdGdW5jdGlvblZhbHVlLmg6CisgICAgICAgIChXZWJDb3JlOjpD
U1NUaW1pbmdGdW5jdGlvblZhbHVlOjppc0xpbmVhclRpbWluZ0Z1bmN0aW9uVmFsdWUpOgorICAg
ICAgICAoV2ViQ29yZTo6Q1NTVGltaW5nRnVuY3Rpb25WYWx1ZTo6aXNDdWJpY0JlemllclRpbWlu
Z0Z1bmN0aW9uVmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTVGltaW5nRnVuY3Rpb25WYWx1
ZTo6aXNTdGVwc1RpbWluZ0Z1bmN0aW9uVmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTVGlt
aW5nRnVuY3Rpb25WYWx1ZTo6Q1NTVGltaW5nRnVuY3Rpb25WYWx1ZSk6CisgICAgICAgIChXZWJD
b3JlOjpDU1NMaW5lYXJUaW1pbmdGdW5jdGlvblZhbHVlOjpDU1NMaW5lYXJUaW1pbmdGdW5jdGlv
blZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU0N1YmljQmV6aWVyVGltaW5nRnVuY3Rpb25W
YWx1ZTo6Q1NTQ3ViaWNCZXppZXJUaW1pbmdGdW5jdGlvblZhbHVlKToKKyAgICAgICAgKFdlYkNv
cmU6OkNTU1N0ZXBzVGltaW5nRnVuY3Rpb25WYWx1ZTo6Q1NTU3RlcHNUaW1pbmdGdW5jdGlvblZh
bHVlKToKKyAgICAgICAgKiBjc3MvQ1NTVW5pY29kZVJhbmdlVmFsdWUuaDoKKyAgICAgICAgKFdl
YkNvcmU6OkNTU1VuaWNvZGVSYW5nZVZhbHVlOjpDU1NVbmljb2RlUmFuZ2VWYWx1ZSk6CisgICAg
ICAgICogY3NzL0NTU1ZhbHVlLmg6CisgICAgICAgIChXZWJDb3JlOjpDU1NWYWx1ZTo6aXNNdXRh
YmxlVmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTVmFsdWU6OmlzUHJpbWl0aXZlVmFsdWUp
OgorICAgICAgICAoV2ViQ29yZTo6Q1NTVmFsdWU6OmlzVmFsdWVMaXN0KToKKyAgICAgICAgKFdl
YkNvcmU6OkNTU1ZhbHVlOjppc0JvcmRlckltYWdlVmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6
Q1NTVmFsdWU6OmlzQm9yZGVySW1hZ2VTbGljZVZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OkNT
U1ZhbHVlOjppc0N1cnNvckltYWdlVmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTVmFsdWU6
OmlzRm9udEZhbWlseVZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVlOjppc0ZvbnRG
ZWF0dXJlVmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTVmFsdWU6OmlzRm9udFZhbHVlKToK
KyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVlOjppc0ltYWdlR2VuZXJhdG9yVmFsdWUpOgorICAg
ICAgICAoV2ViQ29yZTo6Q1NTVmFsdWU6OmlzSW1hZ2VWYWx1ZSk6CisgICAgICAgIChXZWJDb3Jl
OjpDU1NWYWx1ZTo6aXNJbXBsaWNpdEluaXRpYWxWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpD
U1NWYWx1ZTo6aXNSZWZsZWN0VmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTVmFsdWU6Omlz
U2hhZG93VmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTVmFsdWU6OmlzVGltaW5nRnVuY3Rp
b25WYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpDU1NWYWx1ZTo6aXNXZWJLaXRDU1NUcmFuc2Zv
cm1WYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpDU1NWYWx1ZTo6aXNDU1NMaW5lQm94Q29udGFp
blZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVlOjppc0ZsZXhWYWx1ZSk6CisgICAg
ICAgIChXZWJDb3JlOjpDU1NWYWx1ZTo6aXNXZWJLaXRDU1NGaWx0ZXJWYWx1ZSk6CisgICAgICAg
IChXZWJDb3JlOjpDU1NWYWx1ZTo6aXNTVkdDb2xvcik6CisgICAgICAgIChXZWJDb3JlOjpDU1NW
YWx1ZTo6aXNTVkdQYWludCk6CisgICAgICAgIChXZWJDb3JlOjpDU1NWYWx1ZTo6Y2xhc3NUeXBl
KToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVlOjpDU1NWYWx1ZSk6CisgICAgICAgICogY3Nz
L0NTU1ZhbHVlTGlzdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NWYWx1ZUxpc3Q6OkNTU1Zh
bHVlTGlzdCk6CisgICAgICAgICogY3NzL0NTU1ZhbHVlTGlzdC5oOgorICAgICAgICAqIGNzcy9G
b250RmFtaWx5VmFsdWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rm9udEZhbWlseVZhbHVlOjpG
b250RmFtaWx5VmFsdWUpOgorICAgICAgICAqIGNzcy9Gb250RmFtaWx5VmFsdWUuaDoKKyAgICAg
ICAgKiBjc3MvRm9udEZlYXR1cmVWYWx1ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGb250RmVh
dHVyZVZhbHVlOjpGb250RmVhdHVyZVZhbHVlKToKKyAgICAgICAgKiBjc3MvRm9udEZlYXR1cmVW
YWx1ZS5oOgorICAgICAgICAqIGNzcy9Gb250VmFsdWUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkZv
bnRWYWx1ZTo6Rm9udFZhbHVlKToKKyAgICAgICAgKiBjc3MvU2hhZG93VmFsdWUuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6U2hhZG93VmFsdWU6OlNoYWRvd1ZhbHVlKToKKyAgICAgICAgKiBjc3Mv
U2hhZG93VmFsdWUuaDoKKyAgICAgICAgKiBjc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6V2ViS2l0Q1NTRmlsdGVyVmFsdWU6OldlYktpdENTU0ZpbHRlclZh
bHVlKToKKyAgICAgICAgKiBjc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuaDoKKyAgICAgICAgKiBj
c3MvV2ViS2l0Q1NTVHJhbnNmb3JtVmFsdWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6V2ViS2l0
Q1NTVHJhbnNmb3JtVmFsdWU6OldlYktpdENTU1RyYW5zZm9ybVZhbHVlKToKKyAgICAgICAgKiBj
c3MvV2ViS2l0Q1NTVHJhbnNmb3JtVmFsdWUuaDoKKyAgICAgICAgKiBzdmcvU1ZHQ29sb3IuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6U1ZHQ29sb3I6OlNWR0NvbG9yKToKKyAgICAgICAgKiBzdmcv
U1ZHQ29sb3IuaDoKKyAgICAgICAgKiBzdmcvU1ZHUGFpbnQuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6U1ZHUGFpbnQ6OlNWR1BhaW50KToKKyAgICAgICAgKiBzdmcvU1ZHUGFpbnQuaDoKKworMjAx
MS0xMS0wNiAgQW5kcmVhcyBLbGluZyAgPGtsaW5nQHdlYmtpdC5vcmc+CisKICAgICAgICAgQ1NT
VmFsdWU6IERldmlydHVhbGl6ZSBjc3NWYWx1ZVR5cGUoKS4KICAgICAgICAgPGh0dHA6Ly93ZWJr
aXQub3JnL2IvNzE2Njc+CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NBc3Bl
Y3RSYXRpb1ZhbHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQXNwZWN0UmF0aW9WYWx1ZS5o
CmluZGV4IGZlMDk0NWUuLjM3YmVjOWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NBc3BlY3RSYXRpb1ZhbHVlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0FzcGVjdFJh
dGlvVmFsdWUuaApAQCAtNTAsNyArNTAsOCBAQCBwdWJsaWM6CiAKIHByaXZhdGU6CiAgICAgQ1NT
QXNwZWN0UmF0aW9WYWx1ZShmbG9hdCBudW1lcmF0b3JWYWx1ZSwgZmxvYXQgZGVub21pbmF0b3JW
YWx1ZSkKLSAgICAgICAgOiBtX251bWVyYXRvclZhbHVlKG51bWVyYXRvclZhbHVlKQorICAgICAg
ICA6IENTU1ZhbHVlKEFzcGVjdFJhdGlvQ2xhc3MpCisgICAgICAgICwgbV9udW1lcmF0b3JWYWx1
ZShudW1lcmF0b3JWYWx1ZSkKICAgICAgICAgLCBtX2Rlbm9taW5hdG9yVmFsdWUoZGVub21pbmF0
b3JWYWx1ZSkKICAgICB7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NT
U0JvcmRlckltYWdlU2xpY2VWYWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQm9yZGVy
SW1hZ2VTbGljZVZhbHVlLmNwcAppbmRleCBiY2UzMGFhLi4yNzU1MDMzIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9jc3MvQ1NTQm9yZGVySW1hZ2VTbGljZVZhbHVlLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTQm9yZGVySW1hZ2VTbGljZVZhbHVlLmNwcApAQCAtMzIsNyArMzIs
OCBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBDU1NCb3JkZXJJbWFnZVNsaWNlVmFsdWU6OkNT
U0JvcmRlckltYWdlU2xpY2VWYWx1ZShQYXNzUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiBzbGlj
ZXMsIGJvb2wgZmlsbCkKLSAgICA6IG1fc2xpY2VzKHNsaWNlcykKKyAgICA6IENTU1ZhbHVlKEJv
cmRlckltYWdlU2xpY2VDbGFzcywgQ1NTX0NVU1RPTSkKKyAgICAsIG1fc2xpY2VzKHNsaWNlcykK
ICAgICAsIG1fZmlsbChmaWxsKQogewogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU0JvcmRlckltYWdlU2xpY2VWYWx1ZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0JvcmRl
ckltYWdlU2xpY2VWYWx1ZS5oCmluZGV4IGM2YWRiYWEuLmI3ZjFmMDMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NCb3JkZXJJbWFnZVNsaWNlVmFsdWUuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTQm9yZGVySW1hZ2VTbGljZVZhbHVlLmgKQEAgLTUzLDcgKzUzLDYgQEAg
cHVibGljOgogCiBwcml2YXRlOgogICAgIENTU0JvcmRlckltYWdlU2xpY2VWYWx1ZShQYXNzUmVm
UHRyPENTU1ByaW1pdGl2ZVZhbHVlPiBzbGljZXMsIGJvb2wgZmlsbCk7Ci0gICAgdmlydHVhbCBi
b29sIGlzQm9yZGVySW1hZ2VTbGljZVZhbHVlKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQogfTsK
IAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU0JvcmRlckltYWdlVmFsdWUuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0JvcmRlcklt
YWdlVmFsdWUuY3BwCmluZGV4IDgyNWQwZmIuLmM4Yzk4ODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NCb3JkZXJJbWFnZVZhbHVlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTQm9yZGVySW1hZ2VWYWx1ZS5jcHAKQEAgLTI4LDcgKzI4LDggQEAgbmFtZXNwYWNlIFdl
YkNvcmUgewogCiBDU1NCb3JkZXJJbWFnZVZhbHVlOjpDU1NCb3JkZXJJbWFnZVZhbHVlKFBhc3NS
ZWZQdHI8Q1NTVmFsdWU+IGltYWdlLCBQYXNzUmVmUHRyPENTU0JvcmRlckltYWdlU2xpY2VWYWx1
ZT4gaW1hZ2VTbGljZSwKICAgICBQYXNzUmVmUHRyPENTU1ZhbHVlPiBib3JkZXJTbGljZSwgUGFz
c1JlZlB0cjxDU1NWYWx1ZT4gb3V0c2V0LCBQYXNzUmVmUHRyPENTU1ZhbHVlPiByZXBlYXQpCi0g
ICAgOiBtX2ltYWdlKGltYWdlKQorICAgIDogQ1NTVmFsdWUoQm9yZGVySW1hZ2VDbGFzcywgQ1NT
X0NVU1RPTSkKKyAgICAsIG1faW1hZ2UoaW1hZ2UpCiAgICAgLCBtX2ltYWdlU2xpY2UoaW1hZ2VT
bGljZSkKICAgICAsIG1fYm9yZGVyU2xpY2UoYm9yZGVyU2xpY2UpCiAgICAgLCBtX291dHNldChv
dXRzZXQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQm9yZGVySW1hZ2VWYWx1
ZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0JvcmRlckltYWdlVmFsdWUuaAppbmRleCA2OTAx
YTZhLi5jNWZhODc5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQm9yZGVySW1h
Z2VWYWx1ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NCb3JkZXJJbWFnZVZhbHVlLmgK
QEAgLTY0LDcgKzY0LDYgQEAgcHVibGljOgogcHJpdmF0ZToKICAgICBDU1NCb3JkZXJJbWFnZVZh
bHVlKFBhc3NSZWZQdHI8Q1NTVmFsdWU+IGltYWdlLCBQYXNzUmVmUHRyPENTU0JvcmRlckltYWdl
U2xpY2VWYWx1ZT4sIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IGJvcmRlclNsaWNlLAogICAgICAgICBQ
YXNzUmVmUHRyPENTU1ZhbHVlPiBvdXRzZXQsIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IHJlcGVhdCk7
Ci0gICAgdmlydHVhbCBib29sIGlzQm9yZGVySW1hZ2VWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIHRy
dWU7IH0KIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NDYW52YXNWYWx1ZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NhbnZh
c1ZhbHVlLmgKaW5kZXggNmYzODk4NS4uNGNlZTJmNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvY3NzL0NTU0NhbnZhc1ZhbHVlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NhbnZh
c1ZhbHVlLmgKQEAgLTQ4LDcgKzQ4LDggQEAgcHVibGljOgogCiBwcml2YXRlOgogICAgIENTU0Nh
bnZhc1ZhbHVlKCkKLSAgICAgICAgOiBtX2VsZW1lbnQoMCkKKyAgICAgICAgOiBDU1NJbWFnZUdl
bmVyYXRvclZhbHVlKENhbnZhc0NsYXNzKQorICAgICAgICAsIG1fZWxlbWVudCgwKQogICAgIHsK
ICAgICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDcm9zc2ZhZGVWYWx1
ZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0Nyb3NzZmFkZVZhbHVlLmgKaW5kZXggNTY1OTc1
YS4uNDAzMTgyZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0Nyb3NzZmFkZVZh
bHVlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0Nyb3NzZmFkZVZhbHVlLmgKQEAgLTUw
LDggKzUwLDkgQEAgcHVibGljOgogCiBwcml2YXRlOgogICAgIENTU0Nyb3NzZmFkZVZhbHVlKFBh
c3NSZWZQdHI8Q1NTSW1hZ2VWYWx1ZT4gZnJvbUltYWdlLCBQYXNzUmVmUHRyPENTU0ltYWdlVmFs
dWU+IHRvSW1hZ2UpCi0gICAgOiBtX2Zyb21JbWFnZShmcm9tSW1hZ2UpCi0gICAgLCBtX3RvSW1h
Z2UodG9JbWFnZSkKKyAgICAgICAgOiBDU1NJbWFnZUdlbmVyYXRvclZhbHVlKENyb3NzZmFkZUNs
YXNzKQorICAgICAgICAsIG1fZnJvbUltYWdlKGZyb21JbWFnZSkKKyAgICAgICAgLCBtX3RvSW1h
Z2UodG9JbWFnZSkKICAgICB7CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTQ3Vyc29ySW1hZ2VWYWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ3Vyc29y
SW1hZ2VWYWx1ZS5jcHAKaW5kZXggMjRlZjhmZi4uOWQxZmEyZCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvY3NzL0NTU0N1cnNvckltYWdlVmFsdWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NDdXJzb3JJbWFnZVZhbHVlLmNwcApAQCAtNTQsNyArNTQsNyBAQCBzdGF0aWMgaW5s
aW5lIFNWR0N1cnNvckVsZW1lbnQqIHJlc291cmNlUmVmZXJlbmNlZEJ5Q3Vyc29yRWxlbWVudChj
b25zdCBTdHJpbmcmCiAjZW5kaWYKIAogQ1NTQ3Vyc29ySW1hZ2VWYWx1ZTo6Q1NTQ3Vyc29ySW1h
Z2VWYWx1ZShjb25zdCBTdHJpbmcmIHVybCwgY29uc3QgSW50UG9pbnQmIGhvdFNwb3QpCi0gICAg
OiBDU1NJbWFnZVZhbHVlKHVybCkKKyAgICA6IENTU0ltYWdlVmFsdWUoQ3Vyc29ySW1hZ2VDbGFz
cywgdXJsKQogICAgICwgbV9ob3RTcG90KGhvdFNwb3QpCiB7CiB9CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTQ3Vyc29ySW1hZ2VWYWx1ZS5oIGIvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU0N1cnNvckltYWdlVmFsdWUuaAppbmRleCBkZTAzZWI4Li4yYTk1YzNhYiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0N1cnNvckltYWdlVmFsdWUuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTQ3Vyc29ySW1hZ2VWYWx1ZS5oCkBAIC01MCw3ICs1MCw2IEBAIHB1Ymxp
YzoKIAogcHJpdmF0ZToKICAgICBDU1NDdXJzb3JJbWFnZVZhbHVlKGNvbnN0IFN0cmluZyYgdXJs
LCBjb25zdCBJbnRQb2ludCYgaG90U3BvdCk7Ci0gICAgdmlydHVhbCBib29sIGlzQ3Vyc29ySW1h
Z2VWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KIAogICAgIEludFBvaW50IG1faG90U3Bv
dDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZsZXhWYWx1ZS5oIGIvU291
cmNlL1dlYkNvcmUvY3NzL0NTU0ZsZXhWYWx1ZS5oCmluZGV4IGEwM2JmZmMuLjdlY2U1NzQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGbGV4VmFsdWUuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTRmxleFZhbHVlLmgKQEAgLTQ3LDE1ICs0NywxNCBAQCBwdWJsaWM6CiAK
ICAgICB2aXJ0dWFsIFN0cmluZyBjc3NUZXh0KCkgY29uc3Q7CiAKLSAgICB2aXJ0dWFsIGJvb2wg
aXNGbGV4VmFsdWUoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9Ci0KICAgICBmbG9hdCBwb3NpdGl2
ZUZsZXgoKSB7IHJldHVybiBtX3Bvc2l0aXZlRmxleDsgfQogICAgIGZsb2F0IG5lZ2F0aXZlRmxl
eCgpIHsgcmV0dXJuIG1fbmVnYXRpdmVGbGV4OyB9CiAgICAgQ1NTUHJpbWl0aXZlVmFsdWUqIHBy
ZWZlcnJlZFNpemUoKSB7IHJldHVybiBtX3ByZWZlcnJlZFNpemUuZ2V0KCk7IH0KIAogcHJpdmF0
ZToKICAgICBDU1NGbGV4VmFsdWUoZmxvYXQgcG9zaXRpdmVGbGV4LCBmbG9hdCBuZWdhdGl2ZUZs
ZXgsIFBhc3NSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IHByZWZlcnJlZFNpemUpCi0gICAgICAg
IDogbV9wb3NpdGl2ZUZsZXgocG9zaXRpdmVGbGV4KQorICAgICAgICA6IENTU1ZhbHVlKEZsZXhD
bGFzcywgQ1NTX0NVU1RPTSkKKyAgICAgICAgLCBtX3Bvc2l0aXZlRmxleChwb3NpdGl2ZUZsZXgp
CiAgICAgICAgICwgbV9uZWdhdGl2ZUZsZXgobmVnYXRpdmVGbGV4KQogICAgICAgICAsIG1fcHJl
ZmVycmVkU2l6ZShwcmVmZXJyZWRTaXplKQogICAgIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NGb250RmFjZVNyY1ZhbHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9u
dEZhY2VTcmNWYWx1ZS5oCmluZGV4IGJhZWZiNjIuLjQ0NDI4NjUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZVNyY1ZhbHVlLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU0ZvbnRGYWNlU3JjVmFsdWUuaApAQCAtNjgsNyArNjgsOCBAQCBwdWJsaWM6CiAKIHBy
aXZhdGU6CiAgICAgQ1NTRm9udEZhY2VTcmNWYWx1ZShjb25zdCBTdHJpbmcmIHJlc291cmNlLCBi
b29sIGxvY2FsKQotICAgICAgICA6IG1fcmVzb3VyY2UocmVzb3VyY2UpCisgICAgICAgIDogQ1NT
VmFsdWUoRm9udEZhY2VTcmNDbGFzcykKKyAgICAgICAgLCBtX3Jlc291cmNlKHJlc291cmNlKQog
ICAgICAgICAsIG1faXNMb2NhbChsb2NhbCkKICNpZiBFTkFCTEUoU1ZHX0ZPTlRTKQogICAgICAg
ICAsIG1fc3ZnRm9udEZhY2VFbGVtZW50KDApCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTRnVuY3Rpb25WYWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRnVuY3Rpb25W
YWx1ZS5jcHAKaW5kZXggZDMzZjIwNC4uNDkzY2JiMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvY3NzL0NTU0Z1bmN0aW9uVmFsdWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NG
dW5jdGlvblZhbHVlLmNwcApAQCAtMzMsNyArMzMsOCBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewog
CiBDU1NGdW5jdGlvblZhbHVlOjpDU1NGdW5jdGlvblZhbHVlKENTU1BhcnNlckZ1bmN0aW9uKiBm
dW5jdGlvbikKLSAgICA6IG1fbmFtZShmdW5jdGlvbi0+bmFtZSkKKyAgICA6IENTU1ZhbHVlKEZ1
bmN0aW9uQ2xhc3MpCisgICAgLCBtX25hbWUoZnVuY3Rpb24tPm5hbWUpCiB7CiAgICAgaWYgKGZ1
bmN0aW9uLT5hcmdzKQogICAgICAgICBtX2FyZ3MgPSBDU1NWYWx1ZUxpc3Q6OmNyZWF0ZUZyb21Q
YXJzZXJWYWx1ZUxpc3QoZnVuY3Rpb24tPmFyZ3MuZ2V0KCkpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvY3NzL0NTU0dyYWRpZW50VmFsdWUuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NH
cmFkaWVudFZhbHVlLmgKaW5kZXggNDRlZTFjOC4uMDcxMWRlMiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvY3NzL0NTU0dyYWRpZW50VmFsdWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTR3JhZGllbnRWYWx1ZS5oCkBAIC01OSwxNiArNTksMTcgQEAgcHVibGljOgogCiAgICAgdm9p
ZCBzb3J0U3RvcHNJZk5lZWRlZCgpOwogCi0gICAgdmlydHVhbCBib29sIGlzTGluZWFyR3JhZGll
bnQoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQotICAgIHZpcnR1YWwgYm9vbCBpc1JhZGlhbEdy
YWRpZW50KCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KKyAgICBib29sIGlzTGluZWFyR3JhZGll
bnQoKSBjb25zdCB7IHJldHVybiBjbGFzc1R5cGUoKSA9PSBMaW5lYXJHcmFkaWVudENsYXNzOyB9
CisgICAgYm9vbCBpc1JhZGlhbEdyYWRpZW50KCkgY29uc3QgeyByZXR1cm4gY2xhc3NUeXBlKCkg
PT0gUmFkaWFsR3JhZGllbnRDbGFzczsgfQogCiAgICAgYm9vbCBpc1JlcGVhdGluZygpIGNvbnN0
IHsgcmV0dXJuIG1fcmVwZWF0aW5nOyB9CiAKICAgICBib29sIGRlcHJlY2F0ZWRUeXBlKCkgY29u
c3QgeyByZXR1cm4gbV9kZXByZWNhdGVkVHlwZTsgfSAvLyBjYW1lIGZyb20gLXdlYmtpdC1ncmFk
aWVudAogCiBwcm90ZWN0ZWQ6Ci0gICAgQ1NTR3JhZGllbnRWYWx1ZShDU1NHcmFkaWVudFJlcGVh
dCByZXBlYXQsIGJvb2wgZGVwcmVjYXRlZFR5cGUgPSBmYWxzZSkKLSAgICAgICAgOiBtX3N0b3Bz
U29ydGVkKGZhbHNlKQorICAgIENTU0dyYWRpZW50VmFsdWUoQ2xhc3NUeXBlIGNsYXNzVHlwZSwg
Q1NTR3JhZGllbnRSZXBlYXQgcmVwZWF0LCBib29sIGRlcHJlY2F0ZWRUeXBlID0gZmFsc2UpCisg
ICAgICAgIDogQ1NTSW1hZ2VHZW5lcmF0b3JWYWx1ZShjbGFzc1R5cGUpCisgICAgICAgICwgbV9z
dG9wc1NvcnRlZChmYWxzZSkKICAgICAgICAgLCBtX2RlcHJlY2F0ZWRUeXBlKGRlcHJlY2F0ZWRU
eXBlKQogICAgICAgICAsIG1fcmVwZWF0aW5nKHJlcGVhdCA9PSBSZXBlYXRpbmcpCiAgICAgewpA
QCAtMTEyLDEyICsxMTMsMTAgQEAgcHVibGljOgogCiBwcml2YXRlOgogICAgIENTU0xpbmVhckdy
YWRpZW50VmFsdWUoQ1NTR3JhZGllbnRSZXBlYXQgcmVwZWF0LCBib29sIGRlcHJlY2F0ZWRUeXBl
ID0gZmFsc2UpCi0gICAgICAgIDogQ1NTR3JhZGllbnRWYWx1ZShyZXBlYXQsIGRlcHJlY2F0ZWRU
eXBlKQorICAgICAgICA6IENTU0dyYWRpZW50VmFsdWUoTGluZWFyR3JhZGllbnRDbGFzcywgcmVw
ZWF0LCBkZXByZWNhdGVkVHlwZSkKICAgICB7CiAgICAgfQogCi0gICAgdmlydHVhbCBib29sIGlz
TGluZWFyR3JhZGllbnQoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9Ci0KICAgICAvLyBDcmVhdGUg
dGhlIGdyYWRpZW50IGZvciBhIGdpdmVuIHNpemUuCiAgICAgdmlydHVhbCBQYXNzUmVmUHRyPEdy
YWRpZW50PiBjcmVhdGVHcmFkaWVudChSZW5kZXJPYmplY3QqLCBjb25zdCBJbnRTaXplJik7CiAK
QEAgLTE0NCwxMiArMTQzLDEwIEBAIHB1YmxpYzoKIAogcHJpdmF0ZToKICAgICBDU1NSYWRpYWxH
cmFkaWVudFZhbHVlKENTU0dyYWRpZW50UmVwZWF0IHJlcGVhdCwgYm9vbCBkZXByZWNhdGVkVHlw
ZSA9IGZhbHNlKQotICAgICAgICA6IENTU0dyYWRpZW50VmFsdWUocmVwZWF0LCBkZXByZWNhdGVk
VHlwZSkKKyAgICAgICAgOiBDU1NHcmFkaWVudFZhbHVlKFJhZGlhbEdyYWRpZW50Q2xhc3MsIHJl
cGVhdCwgZGVwcmVjYXRlZFR5cGUpCiAgICAgewogICAgIH0KIAotICAgIHZpcnR1YWwgYm9vbCBp
c1JhZGlhbEdyYWRpZW50KCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQotCiAgICAgLy8gQ3JlYXRl
IHRoZSBncmFkaWVudCBmb3IgYSBnaXZlbiBzaXplLgogICAgIHZpcnR1YWwgUGFzc1JlZlB0cjxH
cmFkaWVudD4gY3JlYXRlR3JhZGllbnQoUmVuZGVyT2JqZWN0KiwgY29uc3QgSW50U2l6ZSYpOwog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTSW1hZ2VHZW5lcmF0b3JWYWx1ZS5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTSW1hZ2VHZW5lcmF0b3JWYWx1ZS5jcHAKaW5kZXgg
NGVmNDRmMC4uMjYxNzhjMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ltYWdl
R2VuZXJhdG9yVmFsdWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJbWFnZUdlbmVy
YXRvclZhbHVlLmNwcApAQCAtMzUsOCArMzUsOSBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
LUNTU0ltYWdlR2VuZXJhdG9yVmFsdWU6OkNTU0ltYWdlR2VuZXJhdG9yVmFsdWUoKQotOiBtX2Fj
Y2Vzc2VkSW1hZ2UoZmFsc2UpCitDU1NJbWFnZUdlbmVyYXRvclZhbHVlOjpDU1NJbWFnZUdlbmVy
YXRvclZhbHVlKENsYXNzVHlwZSBjbGFzc1R5cGUpCisgICAgOiBDU1NWYWx1ZShjbGFzc1R5cGUs
IENTU19DVVNUT00pCisgICAgLCBtX2FjY2Vzc2VkSW1hZ2UoZmFsc2UpCiB7CiB9CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJbWFnZUdlbmVyYXRvclZhbHVlLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTSW1hZ2VHZW5lcmF0b3JWYWx1ZS5oCmluZGV4IGZlMzkxZjUuLmJm
OTkzYWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJbWFnZUdlbmVyYXRvclZh
bHVlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ltYWdlR2VuZXJhdG9yVmFsdWUuaApA
QCAtNDksNyArNDksNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBJbnRTaXplIGZpeGVkU2l6ZShj
b25zdCBSZW5kZXJPYmplY3QqKSB7IHJldHVybiBJbnRTaXplKCk7IH0KIAogcHJvdGVjdGVkOgot
ICAgIENTU0ltYWdlR2VuZXJhdG9yVmFsdWUoKTsKKyAgICBDU1NJbWFnZUdlbmVyYXRvclZhbHVl
KENsYXNzVHlwZSk7CiAKICAgICBJbWFnZSogZ2V0SW1hZ2UoUmVuZGVyT2JqZWN0KiwgY29uc3Qg
SW50U2l6ZSYpOwogICAgIHZvaWQgcHV0SW1hZ2UoY29uc3QgSW50U2l6ZSYsIFBhc3NSZWZQdHI8
SW1hZ2U+KTsKQEAgLTU4LDkgKzU4LDYgQEAgcHJvdGVjdGVkOgogICAgIEltYWdlQnlTaXplQ2Fj
aGUgbV9pbWFnZUNhY2hlOwogICAgIFJlZlB0cjxTdHlsZUdlbmVyYXRlZEltYWdlPiBtX2ltYWdl
OwogICAgIGJvb2wgbV9hY2Nlc3NlZEltYWdlOwotCi1wcml2YXRlOgotICAgIHZpcnR1YWwgYm9v
bCBpc0ltYWdlR2VuZXJhdG9yVmFsdWUoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9CiB9OwogCiB9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
SW1hZ2VWYWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTSW1hZ2VWYWx1ZS5jcHAKaW5k
ZXggMDgzNmI2Mi4uNmZhNmI5YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0lt
YWdlVmFsdWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJbWFnZVZhbHVlLmNwcApA
QCAtMzEsMTUgKzMxLDIxIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorQ1NTSW1hZ2VWYWx1
ZTo6Q1NTSW1hZ2VWYWx1ZSgpCisgICAgOiBDU1NQcmltaXRpdmVWYWx1ZShJbWFnZUNsYXNzLCBD
U1NWYWx1ZU5vbmUpCisgICAgLCBtX2FjY2Vzc2VkSW1hZ2UodHJ1ZSkKK3sKK30KKwogQ1NTSW1h
Z2VWYWx1ZTo6Q1NTSW1hZ2VWYWx1ZShjb25zdCBTdHJpbmcmIHVybCkKLSAgICA6IENTU1ByaW1p
dGl2ZVZhbHVlKHVybCwgQ1NTX1VSSSkKKyAgICA6IENTU1ByaW1pdGl2ZVZhbHVlKEltYWdlQ2xh
c3MsIHVybCwgQ1NTX1VSSSkKICAgICAsIG1fYWNjZXNzZWRJbWFnZShmYWxzZSkKIHsKIH0KIAot
Q1NTSW1hZ2VWYWx1ZTo6Q1NTSW1hZ2VWYWx1ZSgpCi0gICAgOiBDU1NQcmltaXRpdmVWYWx1ZShD
U1NWYWx1ZU5vbmUpCi0gICAgLCBtX2FjY2Vzc2VkSW1hZ2UodHJ1ZSkKK0NTU0ltYWdlVmFsdWU6
OkNTU0ltYWdlVmFsdWUoQ2xhc3NUeXBlIGNsYXNzVHlwZSwgY29uc3QgU3RyaW5nJiB1cmwpCisg
ICAgOiBDU1NQcmltaXRpdmVWYWx1ZShjbGFzc1R5cGUsIHVybCwgQ1NTX1VSSSkKKyAgICAsIG1f
YWNjZXNzZWRJbWFnZShmYWxzZSkKIHsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU0ltYWdlVmFsdWUuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJbWFnZVZhbHVlLmgK
aW5kZXggNzA5MWVhYi4uZDgyZTE5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NT
U0ltYWdlVmFsdWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTSW1hZ2VWYWx1ZS5oCkBA
IC00Myw3ICs0Myw3IEBAIHB1YmxpYzoKICAgICBTdHlsZUltYWdlKiBjYWNoZWRPclBlbmRpbmdJ
bWFnZSgpOwogCiBwcm90ZWN0ZWQ6Ci0gICAgQ1NTSW1hZ2VWYWx1ZShjb25zdCBTdHJpbmcmIHVy
bCk7CisgICAgQ1NTSW1hZ2VWYWx1ZShDbGFzc1R5cGUsIGNvbnN0IFN0cmluZyYgdXJsKTsKIAog
ICAgIFN0eWxlQ2FjaGVkSW1hZ2UqIGNhY2hlZEltYWdlKENhY2hlZFJlc291cmNlTG9hZGVyKiwg
Y29uc3QgU3RyaW5nJiB1cmwpOwogICAgIFN0cmluZyBjYWNoZWRJbWFnZVVSTCgpOwpAQCAtNTEs
NyArNTEsNyBAQCBwcm90ZWN0ZWQ6CiAKIHByaXZhdGU6CiAgICAgQ1NTSW1hZ2VWYWx1ZSgpOwot
ICAgIHZpcnR1YWwgYm9vbCBpc0ltYWdlVmFsdWUoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9Cisg
ICAgQ1NTSW1hZ2VWYWx1ZShjb25zdCBTdHJpbmcmIHVybCk7CiAKICAgICBSZWZQdHI8U3R5bGVJ
bWFnZT4gbV9pbWFnZTsKICAgICBib29sIG1fYWNjZXNzZWRJbWFnZTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NJbmhlcml0ZWRWYWx1ZS5oIGIvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU0luaGVyaXRlZFZhbHVlLmgKaW5kZXggYzFkOWRlYy4uZjBiZWI5NyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvY3NzL0NTU0luaGVyaXRlZFZhbHVlLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvY3NzL0NTU0luaGVyaXRlZFZhbHVlLmgKQEAgLTM3LDcgKzM3LDcgQEAgcHVibGljOgogCiBw
cml2YXRlOgogICAgIENTU0luaGVyaXRlZFZhbHVlKCkKLSAgICAgICAgOiBDU1NWYWx1ZShDU1Nf
SU5IRVJJVCkKKyAgICAgICAgOiBDU1NWYWx1ZShJbmhlcml0ZWRDbGFzcywgQ1NTX0lOSEVSSVQp
CiAgICAgewogICAgIH0KIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTSW5p
dGlhbFZhbHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTSW5pdGlhbFZhbHVlLmgKaW5kZXgg
Y2JiYjViZi4uNWEwNjlkNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0luaXRp
YWxWYWx1ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJbml0aWFsVmFsdWUuaApAQCAt
NDMsOCArNDMsNyBAQCBwdWJsaWM6CiAKIHByaXZhdGU6CiAgICAgQ1NTSW5pdGlhbFZhbHVlKGJv
b2wgaW1wbGljaXQpCi0gICAgICAgIDogQ1NTVmFsdWUoQ1NTX0lOSVRJQUwpCi0gICAgICAgICwg
bV9pbXBsaWNpdChpbXBsaWNpdCkKKyAgICAgICAgOiBDU1NWYWx1ZShpbXBsaWNpdCA/IEltcGxp
Y2l0SW5pdGlhbENsYXNzIDogSW5pdGlhbENsYXNzLCBDU1NfSU5JVElBTCkKICAgICB7CiAgICAg
fQogCkBAIC01MiwxMCArNTEsNiBAQCBwcml2YXRlOgogICAgIHsKICAgICAgICAgcmV0dXJuIGFk
b3B0UmVmKG5ldyBDU1NJbml0aWFsVmFsdWUoaW1wbGljaXQpKTsKICAgICB9Ci0KLSAgICB2aXJ0
dWFsIGJvb2wgaXNJbXBsaWNpdEluaXRpYWxWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1faW1wbGlj
aXQ7IH0KLQotICAgIGJvb2wgbV9pbXBsaWNpdDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NMaW5lQm94Q29udGFpblZhbHVl
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NMaW5lQm94Q29udGFpblZhbHVlLmNwcAppbmRl
eCBiMDI5Mjg1Li4wMmNhZDM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTTGlu
ZUJveENvbnRhaW5WYWx1ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0xpbmVCb3hD
b250YWluVmFsdWUuY3BwCkBAIC0zMiw3ICszMiw4IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
IENTU0xpbmVCb3hDb250YWluVmFsdWU6OkNTU0xpbmVCb3hDb250YWluVmFsdWUodW5zaWduZWQg
dmFsdWUpCi0gICAgOiBtX3ZhbHVlKHZhbHVlKQorICAgIDogQ1NTVmFsdWUoTGluZUJveENvbnRh
aW5DbGFzcywgQ1NTX0NVU1RPTSkKKyAgICAsIG1fdmFsdWUodmFsdWUpCiB7CiB9CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NMaW5lQm94Q29udGFpblZhbHVlLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTTGluZUJveENvbnRhaW5WYWx1ZS5oCmluZGV4IDhkNjJiMTEuLmJl
OTliMGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NMaW5lQm94Q29udGFpblZh
bHVlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0xpbmVCb3hDb250YWluVmFsdWUuaApA
QCAtNTUsNyArNTUsNiBAQCBwcml2YXRlOgogCiBwcml2YXRlOgogICAgIENTU0xpbmVCb3hDb250
YWluVmFsdWUoTGluZUJveENvbnRhaW4pOwotICAgIHZpcnR1YWwgYm9vbCBpc0NTU0xpbmVCb3hD
b250YWluVmFsdWUoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9CiB9OwogCiB9IC8vIG5hbWVzcGFj
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU011dGFibGVWYWx1ZS5oIGIvU291
cmNlL1dlYkNvcmUvY3NzL0NTU011dGFibGVWYWx1ZS5oCmluZGV4IDhhM2FhNzIuLmU0OWU2NzM1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTTXV0YWJsZVZhbHVlLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvY3NzL0NTU011dGFibGVWYWx1ZS5oCkBAIC0yNywxMyArMjcsNyBAQCBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIENTU011dGFibGVWYWx1ZSA6IHB1YmxpYyBDU1NW
YWx1ZSB7CiBwdWJsaWM6Ci0gICAgQ1NTTXV0YWJsZVZhbHVlKCkKLSAgICAgICAgOiBtX25vZGUo
MCkKLSAgICB7Ci0gICAgfQotCiAgICAgdmlydHVhbCB+Q1NTTXV0YWJsZVZhbHVlKCkgeyB9Ci0g
ICAgdmlydHVhbCBib29sIGlzTXV0YWJsZVZhbHVlKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQog
CiAgICAgTm9kZSogbm9kZSgpIGNvbnN0IHsgcmV0dXJuIG1fbm9kZTsgfQogICAgIHZvaWQgc2V0
Tm9kZShOb2RlKiBub2RlKSB7IG1fbm9kZSA9IG5vZGU7IH0KQEAgLTQ1LDYgKzM5LDEzIEBAIHB1
YmxpYzoKICAgICAgICAgbV9ub2RlLT5zZXROZWVkc1N0eWxlUmVjYWxjKEZ1bGxTdHlsZUNoYW5n
ZSk7CiAgICAgfQogCitwcm90ZWN0ZWQ6CisgICAgQ1NTTXV0YWJsZVZhbHVlKENsYXNzVHlwZSBj
bGFzc1R5cGUpCisgICAgICAgIDogQ1NTVmFsdWUoY2xhc3NUeXBlLCBDU1NfQ1VTVE9NLCAvKiBp
c1ByaW1pdGl2ZSAqLyBmYWxzZSwgLyogaXNMaXN0ICovIGZhbHNlLCAvKiBpc011dGFibGUgKi8g
dHJ1ZSkKKyAgICAgICAgLCBtX25vZGUoMCkKKyAgICB7CisgICAgfQorCiBwcml2YXRlOgogICAg
IE5vZGUqIG1fbm9kZTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJp
bWl0aXZlVmFsdWUuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlLmNw
cAppbmRleCAyYjk5ZDMwLi44OWY2ZWQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTUHJpbWl0aXZlVmFsdWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRp
dmVWYWx1ZS5jcHAKQEAgLTE2NCw3ICsxNjQsNyBAQCBzdGF0aWMgY29uc3QgQXRvbWljU3RyaW5n
JiB2YWx1ZU9yUHJvcGVydHlOYW1lKGludCB2YWx1ZU9yUHJvcGVydHlJRCkKIH0KIAogQ1NTUHJp
bWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKCkKLSAgICA6IENTU1ZhbHVlKENTU19QUklN
SVRJVkVfVkFMVUUpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcywgQ1NTX1BSSU1JVElW
RV9WQUxVRSwgLyogaXNQcmltaXRpdmUgKi8gdHJ1ZSkKICAgICAsIG1fdHlwZSgwKQogICAgICwg
bV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogICAgICwgbV9pc1F1aXJrVmFsdWUoZmFsc2UpCkBA
IC0xNzIsNyArMTcyLDE2IEBAIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZSgp
CiB9CiAKIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShpbnQgaWRlbnQpCi0g
ICAgOiBDU1NWYWx1ZShDU1NfUFJJTUlUSVZFX1ZBTFVFKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0
aXZlQ2xhc3MsIENTU19QUklNSVRJVkVfVkFMVUUsIC8qIGlzUHJpbWl0aXZlICovIHRydWUpCisg
ICAgLCBtX3R5cGUoQ1NTX0lERU5UKQorICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQor
ICAgICwgbV9pc1F1aXJrVmFsdWUoZmFsc2UpCit7CisgICAgbV92YWx1ZS5pZGVudCA9IGlkZW50
OworfQorCitDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoQ2xhc3NUeXBlIGNs
YXNzVHlwZSwgaW50IGlkZW50KQorICAgIDogQ1NTVmFsdWUoY2xhc3NUeXBlLCBDU1NfUFJJTUlU
SVZFX1ZBTFVFLCAvKiBpc1ByaW1pdGl2ZSAqLyB0cnVlKQogICAgICwgbV90eXBlKENTU19JREVO
VCkKICAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKICAgICAsIG1faXNRdWlya1ZhbHVl
KGZhbHNlKQpAQCAtMTgxLDcgKzE5MCw3IEBAIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRp
dmVWYWx1ZShpbnQgaWRlbnQpCiB9CiAKIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVW
YWx1ZShkb3VibGUgbnVtLCBVbml0VHlwZXMgdHlwZSkKLSAgICA6IENTU1ZhbHVlKENTU19QUklN
SVRJVkVfVkFMVUUpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcywgQ1NTX1BSSU1JVElW
RV9WQUxVRSwgLyogaXNQcmltaXRpdmUgKi8gdHJ1ZSkKICAgICAsIG1fdHlwZSh0eXBlKQogICAg
ICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogICAgICwgbV9pc1F1aXJrVmFsdWUoZmFsc2Up
CkBAIC0xOTEsNyArMjAwLDE3IEBAIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1
ZShkb3VibGUgbnVtLCBVbml0VHlwZXMgdHlwZSkKIH0KIAogQ1NTUHJpbWl0aXZlVmFsdWU6OkNT
U1ByaW1pdGl2ZVZhbHVlKGNvbnN0IFN0cmluZyYgc3RyLCBVbml0VHlwZXMgdHlwZSkKLSAgICA6
IENTU1ZhbHVlKENTU19QUklNSVRJVkVfVkFMVUUpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVD
bGFzcywgQ1NTX1BSSU1JVElWRV9WQUxVRSwgLyogaXNQcmltaXRpdmUgKi8gdHJ1ZSkKKyAgICAs
IG1fdHlwZSh0eXBlKQorICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQorICAgICwgbV9p
c1F1aXJrVmFsdWUoZmFsc2UpCit7CisgICAgaWYgKChtX3ZhbHVlLnN0cmluZyA9IHN0ci5pbXBs
KCkpKQorICAgICAgICBtX3ZhbHVlLnN0cmluZy0+cmVmKCk7Cit9CisKK0NTU1ByaW1pdGl2ZVZh
bHVlOjpDU1NQcmltaXRpdmVWYWx1ZShDbGFzc1R5cGUgY2xhc3NUeXBlLCBjb25zdCBTdHJpbmcm
IHN0ciwgVW5pdFR5cGVzIHR5cGUpCisgICAgOiBDU1NWYWx1ZShjbGFzc1R5cGUsIENTU19QUklN
SVRJVkVfVkFMVUUsIC8qIGlzUHJpbWl0aXZlICovIHRydWUpCiAgICAgLCBtX3R5cGUodHlwZSkK
ICAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKICAgICAsIG1faXNRdWlya1ZhbHVlKGZh
bHNlKQpAQCAtMjAxLDcgKzIyMCw3IEBAIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVW
YWx1ZShjb25zdCBTdHJpbmcmIHN0ciwgVW5pdFR5cGVzIHR5cGUpCiB9CiAKIENTU1ByaW1pdGl2
ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShSR0JBMzIgY29sb3IpCi0gICAgOiBDU1NWYWx1ZShD
U1NfUFJJTUlUSVZFX1ZBTFVFKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MsIENTU19Q
UklNSVRJVkVfVkFMVUUsIC8qIGlzUHJpbWl0aXZlICovIHRydWUpCiAgICAgLCBtX3R5cGUoQ1NT
X1JHQkNPTE9SKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogICAgICwgbV9pc1F1
aXJrVmFsdWUoZmFsc2UpCkBAIC0yMTAsNyArMjI5LDcgQEAgQ1NTUHJpbWl0aXZlVmFsdWU6OkNT
U1ByaW1pdGl2ZVZhbHVlKFJHQkEzMiBjb2xvcikKIH0KIAogQ1NTUHJpbWl0aXZlVmFsdWU6OkNT
U1ByaW1pdGl2ZVZhbHVlKGNvbnN0IExlbmd0aCYgbGVuZ3RoKQotICAgIDogQ1NTVmFsdWUoQ1NT
X1BSSU1JVElWRV9WQUxVRSkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzLCBDU1NfUFJJ
TUlUSVZFX1ZBTFVFLCAvKiBpc1ByaW1pdGl2ZSAqLyB0cnVlKQogICAgICwgbV9oYXNDYWNoZWRD
U1NUZXh0KGZhbHNlKQogICAgICwgbV9pc1F1aXJrVmFsdWUoZmFsc2UpCiB7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWUuaCBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NQcmltaXRpdmVWYWx1ZS5oCmluZGV4IGFhYmExZjEuLmRjMDRiODkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZS5oCkBAIC0yMTYsMTggKzIxNiwzMCBAQCBwdWJs
aWM6CiAKIHByb3RlY3RlZDoKICAgICAvLyBGSVhNRTogaW50IHZzLiB1bnNpZ25lZCBvdmVybG9h
ZGluZyBpcyB0b28gc3VidGxlIHRvIGRpc3Rpbmd1aXNoIHRoZSBjb2xvciBhbmQgaWRlbnRpZmll
ciBjYXNlcy4KLSAgICBDU1NQcmltaXRpdmVWYWx1ZShpbnQgaWRlbnQpOwotICAgIENTU1ByaW1p
dGl2ZVZhbHVlKGRvdWJsZSwgVW5pdFR5cGVzKTsKLSAgICBDU1NQcmltaXRpdmVWYWx1ZShjb25z
dCBTdHJpbmcmLCBVbml0VHlwZXMpOworICAgIENTU1ByaW1pdGl2ZVZhbHVlKENsYXNzVHlwZSwg
aW50IGlkZW50KTsKKyAgICBDU1NQcmltaXRpdmVWYWx1ZShDbGFzc1R5cGUsIGNvbnN0IFN0cmlu
ZyYsIFVuaXRUeXBlcyk7CiAKIHByaXZhdGU6CiAgICAgQ1NTUHJpbWl0aXZlVmFsdWUoKTsKICAg
ICBDU1NQcmltaXRpdmVWYWx1ZSh1bnNpZ25lZCBjb2xvcik7IC8vIFJHQiB2YWx1ZQogICAgIENT
U1ByaW1pdGl2ZVZhbHVlKGNvbnN0IExlbmd0aCYpOworICAgIENTU1ByaW1pdGl2ZVZhbHVlKGRv
dWJsZSwgVW5pdFR5cGVzKTsKKyAgICBDU1NQcmltaXRpdmVWYWx1ZShpbnQgaWRlbnQpOworICAg
IENTU1ByaW1pdGl2ZVZhbHVlKGNvbnN0IFN0cmluZyYsIFVuaXRUeXBlcyk7CiAKICAgICB0ZW1w
bGF0ZTx0eXBlbmFtZSBUPiBDU1NQcmltaXRpdmVWYWx1ZShUKTsgLy8gRGVmaW5lZCBpbiBDU1NQ
cmltaXRpdmVWYWx1ZU1hcHBpbmdzLmgKLSAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBUPiBDU1NQcmlt
aXRpdmVWYWx1ZShUKiB2YWwpIHsgaW5pdChQYXNzUmVmUHRyPFQ+KHZhbCkpOyB9Ci0gICAgdGVt
cGxhdGU8dHlwZW5hbWUgVD4gQ1NTUHJpbWl0aXZlVmFsdWUoUGFzc1JlZlB0cjxUPiB2YWwpIHsg
aW5pdCh2YWwpOyB9CisKKyAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBUPiBDU1NQcmltaXRpdmVWYWx1
ZShUKiB2YWwpCisgICAgICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MsIENTU19QUklNSVRJ
VkVfVkFMVUUsIC8qIGlzUHJpbWl0aXZlICovIHRydWUpCisgICAgeworICAgICAgICBpbml0KFBh
c3NSZWZQdHI8VD4odmFsKSk7CisgICAgfQorCisgICAgdGVtcGxhdGU8dHlwZW5hbWUgVD4gQ1NT
UHJpbWl0aXZlVmFsdWUoUGFzc1JlZlB0cjxUPiB2YWwpCisgICAgICAgIDogQ1NTVmFsdWUoUHJp
bWl0aXZlQ2xhc3MsIENTU19QUklNSVRJVkVfVkFMVUUsIC8qIGlzUHJpbWl0aXZlICovIHRydWUp
CisgICAgeworICAgICAgICBpbml0KHZhbCk7CisgICAgfQogCiAgICAgc3RhdGljIHZvaWQgY3Jl
YXRlKGludCk7IC8vIGNvbXBpbGUtdGltZSBndWFyZAogICAgIHN0YXRpYyB2b2lkIGNyZWF0ZSh1
bnNpZ25lZCk7IC8vIGNvbXBpbGUtdGltZSBndWFyZApAQCAtMjUwLDggKzI2Miw2IEBAIHByaXZh
dGU6CiAKICAgICBkb3VibGUgY29tcHV0ZUxlbmd0aERvdWJsZShSZW5kZXJTdHlsZSogY3VycmVu
dFN0eWxlLCBSZW5kZXJTdHlsZSogcm9vdFN0eWxlLCBkb3VibGUgbXVsdGlwbGllciwgYm9vbCBj
b21wdXRpbmdGb250U2l6ZSk7CiAKLSAgICB2aXJ0dWFsIGJvb2wgaXNQcmltaXRpdmVWYWx1ZSgp
IGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KLQogICAgIHNpZ25lZCBtX3R5cGUgOiBVbml0VHlwZXNC
aXRzOwogICAgIG11dGFibGUgdW5zaWduZWQgbV9oYXNDYWNoZWRDU1NUZXh0IDogMTsKICAgICB1
bnNpZ25lZCBtX2lzUXVpcmtWYWx1ZSA6IDE7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1By
aW1pdGl2ZVZhbHVlTWFwcGluZ3MuaAppbmRleCA3ZmFmYWIzLi4zNWNjZmYwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmgKQEAgLTUwLDcgKzUw
LDggQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0
aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKHNob3J0IGkpCi0gICAgOiBtX3R5cGUoQ1NTX05V
TUJFUikKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzLCBDU1NfUFJJTUlUSVZFX1ZBTFVF
LCAvKiBpc1ByaW1pdGl2ZSAqLyB0cnVlKQorICAgICwgbV90eXBlKENTU19OVU1CRVIpCiAgICAg
LCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CiAgICAgbV92YWx1ZS5udW0gPSBzdGF0aWNf
Y2FzdDxkb3VibGU+KGkpOwpAQCAtNjYsNyArNjcsOCBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQ
cmltaXRpdmVWYWx1ZTo6b3BlcmF0b3Igc2hvcnQoKSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlu
bGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUodW5zaWduZWQgc2hvcnQg
aSkKLSAgICA6IG1fdHlwZShDU1NfTlVNQkVSKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xh
c3MsIENTU19QUklNSVRJVkVfVkFMVUUsIC8qIGlzUHJpbWl0aXZlICovIHRydWUpCisgICAgLCBt
X3R5cGUoQ1NTX05VTUJFUikKICAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKICAg
ICBtX3ZhbHVlLm51bSA9IHN0YXRpY19jYXN0PGRvdWJsZT4oaSk7CkBAIC04Miw3ICs4NCw4IEBA
IHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciB1bnNpZ25lZCBz
aG9ydCgpIGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpD
U1NQcmltaXRpdmVWYWx1ZShpbnQgaSkKLSAgICA6IG1fdHlwZShDU1NfTlVNQkVSKQorICAgIDog
Q1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MsIENTU19QUklNSVRJVkVfVkFMVUUsIC8qIGlzUHJpbWl0
aXZlICovIHRydWUpCisgICAgLCBtX3R5cGUoQ1NTX05VTUJFUikKICAgICAsIG1faGFzQ2FjaGVk
Q1NTVGV4dChmYWxzZSkKIHsKICAgICBtX3ZhbHVlLm51bSA9IHN0YXRpY19jYXN0PGRvdWJsZT4o
aSk7CkBAIC05OCw3ICsxMDEsOCBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1
ZTo6b3BlcmF0b3IgaW50KCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0
aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKHVuc2lnbmVkIGkpCi0gICAgOiBtX3R5cGUoQ1NT
X05VTUJFUikKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzLCBDU1NfUFJJTUlUSVZFX1ZB
TFVFLCAvKiBpc1ByaW1pdGl2ZSAqLyB0cnVlKQorICAgICwgbV90eXBlKENTU19OVU1CRVIpCiAg
ICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CiAgICAgbV92YWx1ZS5udW0gPSBzdGF0
aWNfY2FzdDxkb3VibGU+KGkpOwpAQCAtMTE1LDcgKzExOSw4IEBAIHRlbXBsYXRlPD4gaW5saW5l
IENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciB1bnNpZ25lZCgpIGNvbnN0CiAKIAogdGVtcGxh
dGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKGZsb2F0IGkp
Ci0gICAgOiBtX3R5cGUoQ1NTX05VTUJFUikKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNz
LCBDU1NfUFJJTUlUSVZFX1ZBTFVFLCAvKiBpc1ByaW1pdGl2ZSAqLyB0cnVlKQorICAgICwgbV90
eXBlKENTU19OVU1CRVIpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CiAgICAg
bV92YWx1ZS5udW0gPSBzdGF0aWNfY2FzdDxkb3VibGU+KGkpOwpAQCAtMTMxLDcgKzEzNiw4IEBA
IHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBmbG9hdCgpIGNv
bnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRp
dmVWYWx1ZShDb2x1bW5TcGFuIGNvbHVtblNwYW4pCi0gICAgOiBtX2hhc0NhY2hlZENTU1RleHQo
ZmFsc2UpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcywgQ1NTX1BSSU1JVElWRV9WQUxV
RSwgLyogaXNQcmltaXRpdmUgKi8gdHJ1ZSkKKyAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxz
ZSkKIHsKICAgICBzd2l0Y2ggKGNvbHVtblNwYW4pIHsKICAgICBjYXNlIENvbHVtblNwYW5BbGw6
CkBAIC0xNTcsNyArMTYzLDggQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6
Om9wZXJhdG9yIENvbHVtblNwYW4oKSBjb25zdAogCiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1By
aW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShQcmludENvbG9yQWRqdXN0IHZhbHVlKQot
ICAgIDogbV90eXBlKENTU19JREVOVCkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzLCBD
U1NfUFJJTUlUSVZFX1ZBTFVFLCAvKiBpc1ByaW1pdGl2ZSAqLyB0cnVlKQorICAgICwgbV90eXBl
KENTU19JREVOVCkKICAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKICAgICBzd2l0
Y2ggKHZhbHVlKSB7CkBAIC0xODUsNyArMTkyLDggQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJp
bWl0aXZlVmFsdWU6Om9wZXJhdG9yIFByaW50Q29sb3JBZGp1c3QoKSBjb25zdAogCiAKIHRlbXBs
YXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShFQm9yZGVy
U3R5bGUgZSkKLSAgICA6IG1fdHlwZShDU1NfSURFTlQpCisgICAgOiBDU1NWYWx1ZShQcmltaXRp
dmVDbGFzcywgQ1NTX1BSSU1JVElWRV9WQUxVRSwgLyogaXNQcmltaXRpdmUgKi8gdHJ1ZSkKKyAg
ICAsIG1fdHlwZShDU1NfSURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7
CiAgICAgc3dpdGNoIChlKSB7CkBAIC0yMzcsNyArMjQ1LDggQEAgdGVtcGxhdGU8PiBpbmxpbmUg
Q1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIE91dGxpbmVJc0F1dG8oKSBjb25zdAogfQogCiB0
ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoQ29t
cG9zaXRlT3BlcmF0b3IgZSkKLSAgICA6IG1fdHlwZShDU1NfSURFTlQpCisgICAgOiBDU1NWYWx1
ZShQcmltaXRpdmVDbGFzcywgQ1NTX1BSSU1JVElWRV9WQUxVRSwgLyogaXNQcmltaXRpdmUgKi8g
dHJ1ZSkKKyAgICAsIG1fdHlwZShDU1NfSURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQo
ZmFsc2UpCiB7CiAgICAgc3dpdGNoIChlKSB7CkBAIC0zMTksNyArMzI4LDggQEAgdGVtcGxhdGU8
PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIENvbXBvc2l0ZU9wZXJhdG9yKCkg
Y29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1p
dGl2ZVZhbHVlKENvbnRyb2xQYXJ0IGUpCi0gICAgOiBtX3R5cGUoQ1NTX0lERU5UKQorICAgIDog
Q1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MsIENTU19QUklNSVRJVkVfVkFMVUUsIC8qIGlzUHJpbWl0
aXZlICovIHRydWUpCisgICAgLCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwgbV9oYXNDYWNoZWRD
U1NUZXh0KGZhbHNlKQogewogICAgIHN3aXRjaCAoZSkgewpAQCAtNTA4LDcgKzUxOCw4IEBAIHRl
bXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBDb250cm9sUGFydCgp
IGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmlt
aXRpdmVWYWx1ZShFQmFja2ZhY2VWaXNpYmlsaXR5IGUpCi0gICAgOiBtX3R5cGUoQ1NTX0lERU5U
KQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MsIENTU19QUklNSVRJVkVfVkFMVUUsIC8q
IGlzUHJpbWl0aXZlICovIHRydWUpCisgICAgLCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwgbV9o
YXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewogICAgIHN3aXRjaCAoZSkgewpAQCAtNTM2LDcgKzU0
Nyw4IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBFQmFj
a2ZhY2VWaXNpYmlsaXR5KCkgY29uc3QKIAogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRp
dmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoRUZpbGxBdHRhY2htZW50IGUpCi0gICAgOiBtX3R5
cGUoQ1NTX0lERU5UKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MsIENTU19QUklNSVRJ
VkVfVkFMVUUsIC8qIGlzUHJpbWl0aXZlICovIHRydWUpCisgICAgLCBtX3R5cGUoQ1NTX0lERU5U
KQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewogICAgIHN3aXRjaCAoZSkgewpA
QCAtNTY4LDcgKzU4MCw4IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpv
cGVyYXRvciBFRmlsbEF0dGFjaG1lbnQoKSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBD
U1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoRUZpbGxCb3ggZSkKLSAgICA6IG1f
dHlwZShDU1NfSURFTlQpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcywgQ1NTX1BSSU1J
VElWRV9WQUxVRSwgLyogaXNQcmltaXRpdmUgKi8gdHJ1ZSkKKyAgICAsIG1fdHlwZShDU1NfSURF
TlQpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CiAgICAgc3dpdGNoIChlKSB7
CkBAIC02MDksNyArNjIyLDggQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6
Om9wZXJhdG9yIEVGaWxsQm94KCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJp
bWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEVGaWxsUmVwZWF0IGUpCi0gICAgOiBtX3R5
cGUoQ1NTX0lERU5UKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MsIENTU19QUklNSVRJ
VkVfVkFMVUUsIC8qIGlzUHJpbWl0aXZlICovIHRydWUpCisgICAgLCBtX3R5cGUoQ1NTX0lERU5U
KQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewogICAgIHN3aXRjaCAoZSkgewpA
QCAtNjQ2LDcgKzY2MCw4IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpv
cGVyYXRvciBFRmlsbFJlcGVhdCgpIGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1By
aW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShFQm94QWxpZ25tZW50IGUpCi0gICAgOiBt
X3R5cGUoQ1NTX0lERU5UKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MsIENTU19QUklN
SVRJVkVfVkFMVUUsIC8qIGlzUHJpbWl0aXZlICovIHRydWUpCisgICAgLCBtX3R5cGUoQ1NTX0lE
RU5UKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewogICAgIHN3aXRjaCAoZSkg
ewpAQCAtNjkzLDcgKzcwOCw4IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVl
OjpvcGVyYXRvciBFQm94QWxpZ25tZW50KCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUg
Q1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEVCb3hTaXppbmcgZSkKLSAgICA6
IG1fdHlwZShDU1NfSURFTlQpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcywgQ1NTX1BS
SU1JVElWRV9WQUxVRSwgLyogaXNQcmltaXRpdmUgKi8gdHJ1ZSkKKyAgICAsIG1fdHlwZShDU1Nf
SURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CiAgICAgc3dpdGNoIChl
KSB7CkBAIC03MjAsNyArNzM2LDggQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFs
dWU6Om9wZXJhdG9yIEVCb3hTaXppbmcoKSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBD
U1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoRUJveERpcmVjdGlvbiBlKQotICAg
IDogbV90eXBlKENTU19JREVOVCkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzLCBDU1Nf
UFJJTUlUSVZFX1ZBTFVFLCAvKiBpc1ByaW1pdGl2ZSAqLyB0cnVlKQorICAgICwgbV90eXBlKENT
U19JREVOVCkKICAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKICAgICBzd2l0Y2gg
KGUpIHsKQEAgLTc0Nyw3ICs3NjQsOCBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVW
YWx1ZTo6b3BlcmF0b3IgRUJveERpcmVjdGlvbigpIGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5s
aW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShFQm94TGluZXMgZSkKLSAg
ICA6IG1fdHlwZShDU1NfSURFTlQpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcywgQ1NT
X1BSSU1JVElWRV9WQUxVRSwgLyogaXNQcmltaXRpdmUgKi8gdHJ1ZSkKKyAgICAsIG1fdHlwZShD
U1NfSURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CiAgICAgc3dpdGNo
IChlKSB7CkBAIC03NzQsNyArNzkyLDggQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZl
VmFsdWU6Om9wZXJhdG9yIEVCb3hMaW5lcygpIGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5l
IENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShFQm94T3JpZW50IGUpCi0gICAg
OiBtX3R5cGUoQ1NTX0lERU5UKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MsIENTU19Q
UklNSVRJVkVfVkFMVUUsIC8qIGlzUHJpbWl0aXZlICovIHRydWUpCisgICAgLCBtX3R5cGUoQ1NT
X0lERU5UKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewogICAgIHN3aXRjaCAo
ZSkgewpAQCAtODAzLDcgKzgyMiw4IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZh
bHVlOjpvcGVyYXRvciBFQm94T3JpZW50KCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUg
Q1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEVDYXB0aW9uU2lkZSBlKQotICAg
IDogbV90eXBlKENTU19JREVOVCkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzLCBDU1Nf
UFJJTUlUSVZFX1ZBTFVFLCAvKiBpc1ByaW1pdGl2ZSAqLyB0cnVlKQorICAgICwgbV90eXBlKENT
U19JREVOVCkKICAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKICAgICBzd2l0Y2gg
KGUpIHsKQEAgLTg0MCw3ICs4NjAsOCBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVW
YWx1ZTo6b3BlcmF0b3IgRUNhcHRpb25TaWRlKCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxp
bmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEVDbGVhciBlKQotICAgIDog
bV90eXBlKENTU19JREVOVCkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzLCBDU1NfUFJJ
TUlUSVZFX1ZBTFVFLCAvKiBpc1ByaW1pdGl2ZSAqLyB0cnVlKQorICAgICwgbV90eXBlKENTU19J
REVOVCkKICAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKICAgICBzd2l0Y2ggKGUp
IHsKQEAgLTg3Nyw3ICs4OTgsOCBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1
ZTo6b3BlcmF0b3IgRUNsZWFyKCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJp
bWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEVDdXJzb3IgZSkKLSAgICA6IG1fdHlwZShD
U1NfSURFTlQpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcywgQ1NTX1BSSU1JVElWRV9W
QUxVRSwgLyogaXNQcmltaXRpdmUgKi8gdHJ1ZSkKKyAgICAsIG1fdHlwZShDU1NfSURFTlQpCiAg
ICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CiAgICAgc3dpdGNoIChlKSB7CkBAIC0x
MDAyLDcgKzEwMjQsOCBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3Bl
cmF0b3IgRUN1cnNvcigpIGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2
ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShFRGlzcGxheSBlKQotICAgIDogbV90eXBlKENTU19J
REVOVCkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzLCBDU1NfUFJJTUlUSVZFX1ZBTFVF
LCAvKiBpc1ByaW1pdGl2ZSAqLyB0cnVlKQorICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAs
IG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKICAgICBzd2l0Y2ggKGUpIHsKQEAgLTEwODIs
NyArMTEwNSw4IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRv
ciBFRGlzcGxheSgpIGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZh
bHVlOjpDU1NQcmltaXRpdmVWYWx1ZShFRW1wdHlDZWxsIGUpCi0gICAgOiBtX3R5cGUoQ1NTX0lE
RU5UKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MsIENTU19QUklNSVRJVkVfVkFMVUUs
IC8qIGlzUHJpbWl0aXZlICovIHRydWUpCisgICAgLCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwg
bV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewogICAgIHN3aXRjaCAoZSkgewpAQCAtMTEwOSw3
ICsxMTMzLDggQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9y
IEVFbXB0eUNlbGwoKSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVW
YWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoRUZsZXhBbGlnbiBlKQotICAgIDogbV90eXBlKENTU19J
REVOVCkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzLCBDU1NfUFJJTUlUSVZFX1ZBTFVF
LCAvKiBpc1ByaW1pdGl2ZSAqLyB0cnVlKQorICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAs
IG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKICAgICBzd2l0Y2ggKGUpIHsKQEAgLTExNTEs
NyArMTE3Niw4IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRv
ciBFRmxleEFsaWduKCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZl
VmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEVGbGV4UGFjayBlKQotICAgIDogbV90eXBlKENTU19J
REVOVCkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzLCBDU1NfUFJJTUlUSVZFX1ZBTFVF
LCAvKiBpc1ByaW1pdGl2ZSAqLyB0cnVlKQorICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAs
IG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKICAgICBzd2l0Y2ggKGUpIHsKQEAgLTExODgs
NyArMTIxNCw4IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRv
ciBFRmxleFBhY2soKSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVW
YWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoRUZsZXhGbG93IGUpCi0gICAgOiBtX3R5cGUoQ1NTX0lE
RU5UKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MsIENTU19QUklNSVRJVkVfVkFMVUUs
IC8qIGlzUHJpbWl0aXZlICovIHRydWUpCisgICAgLCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwg
bV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewogICAgIHN3aXRjaCAoZSkgewpAQCAtMTIyNSw3
ICsxMjUyLDggQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9y
IEVGbGV4RmxvdygpIGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZh
bHVlOjpDU1NQcmltaXRpdmVWYWx1ZShFRmxvYXQgZSkKLSAgICA6IG1fdHlwZShDU1NfSURFTlQp
CisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcywgQ1NTX1BSSU1JVElWRV9WQUxVRSwgLyog
aXNQcmltaXRpdmUgKi8gdHJ1ZSkKKyAgICAsIG1fdHlwZShDU1NfSURFTlQpCiAgICAgLCBtX2hh
c0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CiAgICAgc3dpdGNoIChlKSB7CkBAIC0xMjYzLDcgKzEy
OTEsOCBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgRUZs
b2F0KCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNT
U1ByaW1pdGl2ZVZhbHVlKEVLSFRNTExpbmVCcmVhayBlKQotICAgIDogbV90eXBlKENTU19JREVO
VCkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzLCBDU1NfUFJJTUlUSVZFX1ZBTFVFLCAv
KiBpc1ByaW1pdGl2ZSAqLyB0cnVlKQorICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAsIG1f
aGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKICAgICBzd2l0Y2ggKGUpIHsKQEAgLTEyOTAsNyAr
MTMxOSw4IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBF
S0hUTUxMaW5lQnJlYWsoKSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRp
dmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoRUxpc3RTdHlsZVBvc2l0aW9uIGUpCi0gICAgOiBt
X3R5cGUoQ1NTX0lERU5UKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MsIENTU19QUklN
SVRJVkVfVkFMVUUsIC8qIGlzUHJpbWl0aXZlICovIHRydWUpCisgICAgLCBtX3R5cGUoQ1NTX0lE
RU5UKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewogICAgIHN3aXRjaCAoZSkg
ewpAQCAtMTMwOSw3ICsxMzM5LDggQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFs
dWU6Om9wZXJhdG9yIEVMaXN0U3R5bGVQb3NpdGlvbigpIGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4g
aW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShFTGlzdFN0eWxlVHlw
ZSBlKQotICAgIDogbV90eXBlKENTU19JREVOVCkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNs
YXNzLCBDU1NfUFJJTUlUSVZFX1ZBTFVFLCAvKiBpc1ByaW1pdGl2ZSAqLyB0cnVlKQorICAgICwg
bV90eXBlKENTU19JREVOVCkKICAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKICAg
ICBzd2l0Y2ggKGUpIHsKQEAgLTE1NzAsNyArMTYwMSw4IEBAIHRlbXBsYXRlPD4gaW5saW5lIENT
U1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBFTGlzdFN0eWxlVHlwZSgpIGNvbnN0CiB9CiAKIHRl
bXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShFTWFy
Z2luQ29sbGFwc2UgZSkKLSAgICA6IG1fdHlwZShDU1NfSURFTlQpCisgICAgOiBDU1NWYWx1ZShQ
cmltaXRpdmVDbGFzcywgQ1NTX1BSSU1JVElWRV9WQUxVRSwgLyogaXNQcmltaXRpdmUgKi8gdHJ1
ZSkKKyAgICAsIG1fdHlwZShDU1NfSURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFs
c2UpCiB7CiAgICAgc3dpdGNoIChlKSB7CkBAIC0xNjAyLDcgKzE2MzQsOCBAQCB0ZW1wbGF0ZTw+
IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgRU1hcmdpbkNvbGxhcHNlKCkgY29u
c3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2
ZVZhbHVlKEVNYXJxdWVlQmVoYXZpb3IgZSkKLSAgICA6IG1fdHlwZShDU1NfSURFTlQpCisgICAg
OiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcywgQ1NTX1BSSU1JVElWRV9WQUxVRSwgLyogaXNQcmlt
aXRpdmUgKi8gdHJ1ZSkKKyAgICAsIG1fdHlwZShDU1NfSURFTlQpCiAgICAgLCBtX2hhc0NhY2hl
ZENTU1RleHQoZmFsc2UpCiB7CiAgICAgc3dpdGNoIChlKSB7CkBAIC0xNjM5LDcgKzE2NzIsOCBA
QCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgRU1hcnF1ZWVC
ZWhhdmlvcigpIGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVl
OjpDU1NQcmltaXRpdmVWYWx1ZShSZWdpb25PdmVyZmxvdyBlKQotICAgIDogbV90eXBlKENTU19J
REVOVCkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzLCBDU1NfUFJJTUlUSVZFX1ZBTFVF
LCAvKiBpc1ByaW1pdGl2ZSAqLyB0cnVlKQorICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAs
IG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKICAgICBzd2l0Y2ggKGUpIHsKQEAgLTE2NjYs
NyArMTcwMCw4IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRv
ciBSZWdpb25PdmVyZmxvdygpIGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1p
dGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShFTWFycXVlZURpcmVjdGlvbiBlKQotICAgIDog
bV90eXBlKENTU19JREVOVCkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzLCBDU1NfUFJJ
TUlUSVZFX1ZBTFVFLCAvKiBpc1ByaW1pdGl2ZSAqLyB0cnVlKQorICAgICwgbV90eXBlKENTU19J
REVOVCkKICAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKICAgICBzd2l0Y2ggKGUp
IHsKQEAgLTE3MjAsNyArMTc1NSw4IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZh
bHVlOjpvcGVyYXRvciBFTWFycXVlZURpcmVjdGlvbigpIGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4g
aW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShFTWF0Y2hOZWFyZXN0
TWFpbEJsb2NrcXVvdGVDb2xvciBlKQotICAgIDogbV90eXBlKENTU19JREVOVCkKKyAgICA6IENT
U1ZhbHVlKFByaW1pdGl2ZUNsYXNzLCBDU1NfUFJJTUlUSVZFX1ZBTFVFLCAvKiBpc1ByaW1pdGl2
ZSAqLyB0cnVlKQorICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAsIG1faGFzQ2FjaGVkQ1NT
VGV4dChmYWxzZSkKIHsKICAgICBzd2l0Y2ggKGUpIHsKQEAgLTE3NDcsNyArMTc4Myw4IEBAIHRl
bXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBFTWF0Y2hOZWFyZXN0
TWFpbEJsb2NrcXVvdGVDb2xvcigpCiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2
ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShFTkJTUE1vZGUgZSkKLSAgICA6IG1fdHlwZShDU1Nf
SURFTlQpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcywgQ1NTX1BSSU1JVElWRV9WQUxV
RSwgLyogaXNQcmltaXRpdmUgKi8gdHJ1ZSkKKyAgICAsIG1fdHlwZShDU1NfSURFTlQpCiAgICAg
LCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CiAgICAgc3dpdGNoIChlKSB7CkBAIC0xNzc0
LDcgKzE4MTEsOCBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0
b3IgRU5CU1BNb2RlKCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZl
VmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEVPdmVyZmxvdyBlKQotICAgIDogbV90eXBlKENTU19J
REVOVCkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzLCBDU1NfUFJJTUlUSVZFX1ZBTFVF
LCAvKiBpc1ByaW1pdGl2ZSAqLyB0cnVlKQorICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAs
IG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKICAgICBzd2l0Y2ggKGUpIHsKQEAgLTE4MjEs
NyArMTg1OSw4IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRv
ciBFT3ZlcmZsb3coKSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVW
YWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoRVBhZ2VCcmVhayBlKQotICAgIDogbV90eXBlKENTU19J
REVOVCkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzLCBDU1NfUFJJTUlUSVZFX1ZBTFVF
LCAvKiBpc1ByaW1pdGl2ZSAqLyB0cnVlKQorICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAs
IG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKICAgICBzd2l0Y2ggKGUpIHsKQEAgLTE4NTUs
NyArMTg5NCw4IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRv
ciBFUGFnZUJyZWFrKCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZl
VmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEVQb3NpdGlvbiBlKQotICAgIDogbV90eXBlKENTU19J
REVOVCkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzLCBDU1NfUFJJTUlUSVZFX1ZBTFVF
LCAvKiBpc1ByaW1pdGl2ZSAqLyB0cnVlKQorICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAs
IG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKICAgICBzd2l0Y2ggKGUpIHsKQEAgLTE4OTIs
NyArMTkzMiw4IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRv
ciBFUG9zaXRpb24oKSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVW
YWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoRVJlc2l6ZSBlKQotICAgIDogbV90eXBlKENTU19JREVO
VCkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzLCBDU1NfUFJJTUlUSVZFX1ZBTFVFLCAv
KiBpc1ByaW1pdGl2ZSAqLyB0cnVlKQorICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAsIG1f
aGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKICAgICBzd2l0Y2ggKGUpIHsKQEAgLTE5MzIsNyAr
MTk3Myw4IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBF
UmVzaXplKCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6
OkNTU1ByaW1pdGl2ZVZhbHVlKEVUYWJsZUxheW91dCBlKQotICAgIDogbV90eXBlKENTU19JREVO
VCkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzLCBDU1NfUFJJTUlUSVZFX1ZBTFVFLCAv
KiBpc1ByaW1pdGl2ZSAqLyB0cnVlKQorICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAsIG1f
aGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKICAgICBzd2l0Y2ggKGUpIHsKQEAgLTE5NTksNyAr
MjAwMSw4IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBF
VGFibGVMYXlvdXQoKSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVW
YWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoRVRleHRBbGlnbiBlKQotICAgIDogbV90eXBlKENTU19J
REVOVCkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzLCBDU1NfUFJJTUlUSVZFX1ZBTFVF
LCAvKiBpc1ByaW1pdGl2ZSAqLyB0cnVlKQorICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAs
IG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKICAgICBzd2l0Y2ggKGUpIHsKQEAgLTIwMjgs
NyArMjA3MSw4IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRv
ciBFVGV4dERlY29yYXRpb24oKSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmlt
aXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoRVRleHRTZWN1cml0eSBlKQotICAgIDogbV90
eXBlKENTU19JREVOVCkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzLCBDU1NfUFJJTUlU
SVZFX1ZBTFVFLCAvKiBpc1ByaW1pdGl2ZSAqLyB0cnVlKQorICAgICwgbV90eXBlKENTU19JREVO
VCkKICAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKICAgICBzd2l0Y2ggKGUpIHsK
QEAgLTIwNjUsNyArMjEwOSw4IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVl
OjpvcGVyYXRvciBFVGV4dFNlY3VyaXR5KCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUg
Q1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEVUZXh0VHJhbnNmb3JtIGUpCi0g
ICAgOiBtX3R5cGUoQ1NTX0lERU5UKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MsIENT
U19QUklNSVRJVkVfVkFMVUUsIC8qIGlzUHJpbWl0aXZlICovIHRydWUpCisgICAgLCBtX3R5cGUo
Q1NTX0lERU5UKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewogICAgIHN3aXRj
aCAoZSkgewpAQCAtMjEwMiw3ICsyMTQ3LDggQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0
aXZlVmFsdWU6Om9wZXJhdG9yIEVUZXh0VHJhbnNmb3JtKCkgY29uc3QKIH0KIAogdGVtcGxhdGU8
PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEVVbmljb2RlQmlk
aSBlKQotICAgIDogbV90eXBlKENTU19JREVOVCkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNs
YXNzLCBDU1NfUFJJTUlUSVZFX1ZBTFVFLCAvKiBpc1ByaW1pdGl2ZSAqLyB0cnVlKQorICAgICwg
bV90eXBlKENTU19JREVOVCkKICAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKICAg
ICBzd2l0Y2ggKGUpIHsKQEAgLTIxNDQsNyArMjE5MCw4IEBAIHRlbXBsYXRlPD4gaW5saW5lIENT
U1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBFVW5pY29kZUJpZGkoKSBjb25zdAogfQogCiB0ZW1w
bGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoRVVzZXJE
cmFnIGUpCi0gICAgOiBtX3R5cGUoQ1NTX0lERU5UKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZl
Q2xhc3MsIENTU19QUklNSVRJVkVfVkFMVUUsIC8qIGlzUHJpbWl0aXZlICovIHRydWUpCisgICAg
LCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewog
ICAgIHN3aXRjaCAoZSkgewpAQCAtMjE3Niw3ICsyMjIzLDggQEAgdGVtcGxhdGU8PiBpbmxpbmUg
Q1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEVVc2VyRHJhZygpIGNvbnN0CiB9CiAKIHRlbXBs
YXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShFVXNlck1v
ZGlmeSBlKQotICAgIDogbV90eXBlKENTU19JREVOVCkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2
ZUNsYXNzLCBDU1NfUFJJTUlUSVZFX1ZBTFVFLCAvKiBpc1ByaW1pdGl2ZSAqLyB0cnVlKQorICAg
ICwgbV90eXBlKENTU19JREVOVCkKICAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsK
ICAgICBzd2l0Y2ggKGUpIHsKQEAgLTIxOTgsNyArMjI0Niw4IEBAIHRlbXBsYXRlPD4gaW5saW5l
IENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBFVXNlck1vZGlmeSgpIGNvbnN0CiB9CiAKIHRl
bXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShFVXNl
clNlbGVjdCBlKQotICAgIDogbV90eXBlKENTU19JREVOVCkKKyAgICA6IENTU1ZhbHVlKFByaW1p
dGl2ZUNsYXNzLCBDU1NfUFJJTUlUSVZFX1ZBTFVFLCAvKiBpc1ByaW1pdGl2ZSAqLyB0cnVlKQor
ICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkK
IHsKICAgICBzd2l0Y2ggKGUpIHsKQEAgLTIyMjcsNyArMjI3Niw4IEBAIHRlbXBsYXRlPD4gaW5s
aW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBFVXNlclNlbGVjdCgpIGNvbnN0CiB9CiAK
IHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShF
VmVydGljYWxBbGlnbiBhKQotICAgIDogbV90eXBlKENTU19JREVOVCkKKyAgICA6IENTU1ZhbHVl
KFByaW1pdGl2ZUNsYXNzLCBDU1NfUFJJTUlUSVZFX1ZBTFVFLCAvKiBpc1ByaW1pdGl2ZSAqLyB0
cnVlKQorICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4dChm
YWxzZSkKIHsKICAgICBzd2l0Y2ggKGEpIHsKQEAgLTIyOTEsNyArMjM0MSw4IEBAIHRlbXBsYXRl
PD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBFVmVydGljYWxBbGlnbigpIGNv
bnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRp
dmVWYWx1ZShFVmlzaWJpbGl0eSBlKQotICAgIDogbV90eXBlKENTU19JREVOVCkKKyAgICA6IENT
U1ZhbHVlKFByaW1pdGl2ZUNsYXNzLCBDU1NfUFJJTUlUSVZFX1ZBTFVFLCAvKiBpc1ByaW1pdGl2
ZSAqLyB0cnVlKQorICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAsIG1faGFzQ2FjaGVkQ1NT
VGV4dChmYWxzZSkKIHsKICAgICBzd2l0Y2ggKGUpIHsKQEAgLTIzMjMsNyArMjM3NCw4IEBAIHRl
bXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBFVmlzaWJpbGl0eSgp
IGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmlt
aXRpdmVWYWx1ZShFV2hpdGVTcGFjZSBlKQotICAgIDogbV90eXBlKENTU19JREVOVCkKKyAgICA6
IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzLCBDU1NfUFJJTUlUSVZFX1ZBTFVFLCAvKiBpc1ByaW1p
dGl2ZSAqLyB0cnVlKQorICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAsIG1faGFzQ2FjaGVk
Q1NTVGV4dChmYWxzZSkKIHsKICAgICBzd2l0Y2ggKGUpIHsKQEAgLTIzNzAsNyArMjQyMiw4IEBA
IHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBFV2hpdGVTcGFj
ZSgpIGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQ
cmltaXRpdmVWYWx1ZShFV29yZEJyZWFrIGUpCi0gICAgOiBtX3R5cGUoQ1NTX0lERU5UKQorICAg
IDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MsIENTU19QUklNSVRJVkVfVkFMVUUsIC8qIGlzUHJp
bWl0aXZlICovIHRydWUpCisgICAgLCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwgbV9oYXNDYWNo
ZWRDU1NUZXh0KGZhbHNlKQogewogICAgIHN3aXRjaCAoZSkgewpAQCAtMjQwMiw3ICsyNDU1LDgg
QEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEVXb3JkQnJl
YWsoKSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NT
UHJpbWl0aXZlVmFsdWUoRVdvcmRXcmFwIGUpCi0gICAgOiBtX3R5cGUoQ1NTX0lERU5UKQorICAg
IDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MsIENTU19QUklNSVRJVkVfVkFMVUUsIC8qIGlzUHJp
bWl0aXZlICovIHRydWUpCisgICAgLCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwgbV9oYXNDYWNo
ZWRDU1NUZXh0KGZhbHNlKQogewogICAgIHN3aXRjaCAoZSkgewpAQCAtMjQyOSw3ICsyNDgzLDgg
QEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEVXb3JkV3Jh
cCgpIGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQ
cmltaXRpdmVWYWx1ZShUZXh0RGlyZWN0aW9uIGUpCi0gICAgOiBtX3R5cGUoQ1NTX0lERU5UKQor
ICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MsIENTU19QUklNSVRJVkVfVkFMVUUsIC8qIGlz
UHJpbWl0aXZlICovIHRydWUpCisgICAgLCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwgbV9oYXND
YWNoZWRDU1NUZXh0KGZhbHNlKQogewogICAgIHN3aXRjaCAoZSkgewpAQCAtMjQ1Niw3ICsyNTEx
LDggQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIFRleHRE
aXJlY3Rpb24oKSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1
ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoV3JpdGluZ01vZGUgZSkKLSAgICA6IG1fdHlwZShDU1NfSURF
TlQpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcywgQ1NTX1BSSU1JVElWRV9WQUxVRSwg
LyogaXNQcmltaXRpdmUgKi8gdHJ1ZSkKKyAgICAsIG1fdHlwZShDU1NfSURFTlQpCiAgICAgLCBt
X2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CiAgICAgc3dpdGNoIChlKSB7CkBAIC0yNDkzLDcg
KzI1NDksOCBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3Ig
V3JpdGluZ01vZGUoKSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVW
YWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoVGV4dENvbWJpbmUgZSkKLSAgICA6IG1fdHlwZShDU1Nf
SURFTlQpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcywgQ1NTX1BSSU1JVElWRV9WQUxV
RSwgLyogaXNQcmltaXRpdmUgKi8gdHJ1ZSkKKyAgICAsIG1fdHlwZShDU1NfSURFTlQpCiAgICAg
LCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CiAgICAgc3dpdGNoIChlKSB7CkBAIC0yNTIw
LDcgKzI1NzcsOCBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0
b3IgVGV4dENvbWJpbmUoKSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRp
dmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoVGV4dEVtcGhhc2lzUG9zaXRpb24gcG9zaXRpb24p
Ci0gICAgOiBtX3R5cGUoQ1NTX0lERU5UKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3Ms
IENTU19QUklNSVRJVkVfVkFMVUUsIC8qIGlzUHJpbWl0aXZlICovIHRydWUpCisgICAgLCBtX3R5
cGUoQ1NTX0lERU5UKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewogICAgIHN3
aXRjaCAocG9zaXRpb24pIHsKQEAgLTI1NDcsNyArMjYwNSw4IEBAIHRlbXBsYXRlPD4gaW5saW5l
IENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBUZXh0RW1waGFzaXNQb3NpdGlvbigpIGNvbnN0
CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVW
YWx1ZShUZXh0T3ZlcmZsb3cgb3ZlcmZsb3cpCi0gICAgOiBtX3R5cGUoQ1NTX0lERU5UKQorICAg
IDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MsIENTU19QUklNSVRJVkVfVkFMVUUsIC8qIGlzUHJp
bWl0aXZlICovIHRydWUpCisgICAgLCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwgbV9oYXNDYWNo
ZWRDU1NUZXh0KGZhbHNlKQogewogICAgIHN3aXRjaCAob3ZlcmZsb3cpIHsKQEAgLTI1NzQsNyAr
MjYzMyw4IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBU
ZXh0T3ZlcmZsb3coKSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVW
YWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoVGV4dEVtcGhhc2lzRmlsbCBmaWxsKQotICAgIDogbV90
eXBlKENTU19JREVOVCkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzLCBDU1NfUFJJTUlU
SVZFX1ZBTFVFLCAvKiBpc1ByaW1pdGl2ZSAqLyB0cnVlKQorICAgICwgbV90eXBlKENTU19JREVO
VCkKICAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKICAgICBzd2l0Y2ggKGZpbGwp
IHsKQEAgLTI2MDEsNyArMjY2MSw4IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZh
bHVlOjpvcGVyYXRvciBUZXh0RW1waGFzaXNGaWxsKCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBp
bmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKFRleHRFbXBoYXNpc01h
cmsgbWFyaykKLSAgICA6IG1fdHlwZShDU1NfSURFTlQpCisgICAgOiBDU1NWYWx1ZShQcmltaXRp
dmVDbGFzcywgQ1NTX1BSSU1JVElWRV9WQUxVRSwgLyogaXNQcmltaXRpdmUgKi8gdHJ1ZSkKKyAg
ICAsIG1fdHlwZShDU1NfSURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7
CiAgICAgc3dpdGNoIChtYXJrKSB7CkBAIC0yNjUxLDcgKzI3MTIsOCBAQCB0ZW1wbGF0ZTw+IGlu
bGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgVGV4dEVtcGhhc2lzTWFyaygpIGNvbnN0
CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVW
YWx1ZShUZXh0T3JpZW50YXRpb24gZSkKLSAgICA6IG1fdHlwZShDU1NfSURFTlQpCisgICAgOiBD
U1NWYWx1ZShQcmltaXRpdmVDbGFzcywgQ1NTX1BSSU1JVElWRV9WQUxVRSwgLyogaXNQcmltaXRp
dmUgKi8gdHJ1ZSkKKyAgICAsIG1fdHlwZShDU1NfSURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENT
U1RleHQoZmFsc2UpCiB7CiAgICAgc3dpdGNoIChlKSB7CkBAIC0yNjc4LDcgKzI3NDAsOCBAQCB0
ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgVGV4dE9yaWVudGF0
aW9uKCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNT
U1ByaW1pdGl2ZVZhbHVlKEVQb2ludGVyRXZlbnRzIGUpCi0gICAgOiBtX3R5cGUoQ1NTX0lERU5U
KQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MsIENTU19QUklNSVRJVkVfVkFMVUUsIC8q
IGlzUHJpbWl0aXZlICovIHRydWUpCisgICAgLCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwgbV9o
YXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewogICAgIHN3aXRjaCAoZSkgewpAQCAtMjc0NSw3ICsy
ODA4LDggQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEVQ
b2ludGVyRXZlbnRzKCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZl
VmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEZvbnRTbW9vdGhpbmdNb2RlIHNtb290aGluZykKLSAg
ICA6IG1fdHlwZShDU1NfSURFTlQpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcywgQ1NT
X1BSSU1JVElWRV9WQUxVRSwgLyogaXNQcmltaXRpdmUgKi8gdHJ1ZSkKKyAgICAsIG1fdHlwZShD
U1NfSURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CiAgICAgc3dpdGNo
IChzbW9vdGhpbmcpIHsKQEAgLTI3ODUsNyArMjg0OSw4IEBAIHRlbXBsYXRlPD4gaW5saW5lIENT
U1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBGb250U21vb3RoaW5nTW9kZSgpIGNvbnN0CiB9CiAK
IHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShG
b250V2VpZ2h0IHdlaWdodCkKLSAgICA6IG1fdHlwZShDU1NfSURFTlQpCisgICAgOiBDU1NWYWx1
ZShQcmltaXRpdmVDbGFzcywgQ1NTX1BSSU1JVElWRV9WQUxVRSwgLyogaXNQcmltaXRpdmUgKi8g
dHJ1ZSkKKyAgICAsIG1fdHlwZShDU1NfSURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQo
ZmFsc2UpCiB7CiAgICAgc3dpdGNoICh3ZWlnaHQpIHsKQEAgLTI4NTQsNyArMjkxOSw4IEBAIHRl
bXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBGb250V2VpZ2h0KCkg
Y29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1p
dGl2ZVZhbHVlKEZvbnRJdGFsaWMgaXRhbGljKQotICAgIDogbV90eXBlKENTU19JREVOVCkKKyAg
ICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzLCBDU1NfUFJJTUlUSVZFX1ZBTFVFLCAvKiBpc1By
aW1pdGl2ZSAqLyB0cnVlKQorICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAsIG1faGFzQ2Fj
aGVkQ1NTVGV4dChmYWxzZSkKIHsKICAgICBzd2l0Y2ggKGl0YWxpYykgewpAQCAtMjg4NSw3ICsy
OTUxLDggQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEZv
bnRJdGFsaWMoKSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1
ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoRm9udFNtYWxsQ2FwcyBzbWFsbENhcHMpCi0gICAgOiBtX3R5
cGUoQ1NTX0lERU5UKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MsIENTU19QUklNSVRJ
VkVfVkFMVUUsIC8qIGlzUHJpbWl0aXZlICovIHRydWUpCisgICAgLCBtX3R5cGUoQ1NTX0lERU5U
KQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewogICAgIHN3aXRjaCAoc21hbGxD
YXBzKSB7CkBAIC0yOTE0LDcgKzI5ODEsOCBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRp
dmVWYWx1ZTo6b3BlcmF0b3IgRm9udFNtYWxsQ2FwcygpIGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4g
aW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShUZXh0UmVuZGVyaW5n
TW9kZSBlKQotICAgIDogbV90eXBlKENTU19JREVOVCkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2
ZUNsYXNzLCBDU1NfUFJJTUlUSVZFX1ZBTFVFLCAvKiBpc1ByaW1pdGl2ZSAqLyB0cnVlKQorICAg
ICwgbV90eXBlKENTU19JREVOVCkKICAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsK
ICAgICBzd2l0Y2ggKGUpIHsKQEAgLTI5NTEsNyArMzAxOSw4IEBAIHRlbXBsYXRlPD4gaW5saW5l
IENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBUZXh0UmVuZGVyaW5nTW9kZSgpIGNvbnN0CiB9
CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1
ZShDb2xvclNwYWNlIHNwYWNlKQotICAgIDogbV90eXBlKENTU19JREVOVCkKKyAgICA6IENTU1Zh
bHVlKFByaW1pdGl2ZUNsYXNzLCBDU1NfUFJJTUlUSVZFX1ZBTFVFLCAvKiBpc1ByaW1pdGl2ZSAq
LyB0cnVlKQorICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4
dChmYWxzZSkKIHsKICAgICBzd2l0Y2ggKHNwYWNlKSB7CkBAIC0yOTgzLDcgKzMwNTIsOCBAQCB0
ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgQ29sb3JTcGFjZSgp
IGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmlt
aXRpdmVWYWx1ZShIeXBoZW5zIGh5cGhlbnMpCi0gICAgOiBtX3R5cGUoQ1NTX0lERU5UKQorICAg
IDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MsIENTU19QUklNSVRJVkVfVkFMVUUsIC8qIGlzUHJp
bWl0aXZlICovIHRydWUpCisgICAgLCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwgbV9oYXNDYWNo
ZWRDU1NUZXh0KGZhbHNlKQogewogICAgIHN3aXRjaCAoaHlwaGVucykgewpAQCAtMzAxNSw3ICsz
MDg1LDggQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEh5
cGhlbnMoKSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6
Q1NTUHJpbWl0aXZlVmFsdWUoRVNwZWFrIGUpCi0gICAgOiBtX3R5cGUoQ1NTX0lERU5UKQorICAg
IDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MsIENTU19QUklNSVRJVkVfVkFMVUUsIC8qIGlzUHJp
bWl0aXZlICovIHRydWUpCisgICAgLCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwgbV9oYXNDYWNo
ZWRDU1NUZXh0KGZhbHNlKQogewogICAgIHN3aXRjaCAoZSkgewpAQCAtMzA1NCw3ICszMTI1LDgg
QEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIE9yZGVyKCkg
Y29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1p
dGl2ZVZhbHVlKE9yZGVyIGUpCi0gICAgOiBtX3R5cGUoQ1NTX0lERU5UKQorICAgIDogQ1NTVmFs
dWUoUHJpbWl0aXZlQ2xhc3MsIENTU19QUklNSVRJVkVfVkFMVUUsIC8qIGlzUHJpbWl0aXZlICov
IHRydWUpCisgICAgLCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0
KGZhbHNlKQogewogICAgIHN3aXRjaCAoZSkgewpAQCAtMzA5MSw3ICszMTYzLDggQEAgdGVtcGxh
dGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEVTcGVhaygpIGNvbnN0CiAj
aWYgRU5BQkxFKFNWRykKIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNT
U1ByaW1pdGl2ZVZhbHVlKExpbmVDYXAgZSkKLSAgICA6IG1fdHlwZShDU1NfSURFTlQpCisgICAg
OiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcywgQ1NTX1BSSU1JVElWRV9WQUxVRSwgLyogaXNQcmlt
aXRpdmUgKi8gdHJ1ZSkKKyAgICAsIG1fdHlwZShDU1NfSURFTlQpCiAgICAgLCBtX2hhc0NhY2hl
ZENTU1RleHQoZmFsc2UpCiB7CiAgICAgc3dpdGNoIChlKSB7CkBAIC0zMTIzLDcgKzMxOTYsOCBA
QCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgTGluZUNhcCgp
IGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmlt
aXRpdmVWYWx1ZShMaW5lSm9pbiBlKQotICAgIDogbV90eXBlKENTU19JREVOVCkKKyAgICA6IENT
U1ZhbHVlKFByaW1pdGl2ZUNsYXNzLCBDU1NfUFJJTUlUSVZFX1ZBTFVFLCAvKiBpc1ByaW1pdGl2
ZSAqLyB0cnVlKQorICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAsIG1faGFzQ2FjaGVkQ1NT
VGV4dChmYWxzZSkKIHsKICAgICBzd2l0Y2ggKGUpIHsKQEAgLTMxNTUsNyArMzIyOSw4IEBAIHRl
bXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBMaW5lSm9pbigpIGNv
bnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRp
dmVWYWx1ZShXaW5kUnVsZSBlKQotICAgIDogbV90eXBlKENTU19JREVOVCkKKyAgICA6IENTU1Zh
bHVlKFByaW1pdGl2ZUNsYXNzLCBDU1NfUFJJTUlUSVZFX1ZBTFVFLCAvKiBpc1ByaW1pdGl2ZSAq
LyB0cnVlKQorICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4
dChmYWxzZSkKIHsKICAgICBzd2l0Y2ggKGUpIHsKQEAgLTMxODMsNyArMzI1OCw4IEBAIHRlbXBs
YXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBXaW5kUnVsZSgpIGNvbnN0
CiAKIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZh
bHVlKEVBbGlnbm1lbnRCYXNlbGluZSBlKQotICAgIDogbV90eXBlKENTU19JREVOVCkKKyAgICA6
IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzLCBDU1NfUFJJTUlUSVZFX1ZBTFVFLCAvKiBpc1ByaW1p
dGl2ZSAqLyB0cnVlKQorICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAsIG1faGFzQ2FjaGVk
Q1NTVGV4dChmYWxzZSkKIHsKICAgICBzd2l0Y2ggKGUpIHsKQEAgLTMyNjIsNyArMzMzOCw4IEBA
IHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBFQWxpZ25tZW50
QmFzZWxpbmUoKSBjb25zdAogI2VuZGlmCiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2
ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShFQm9yZGVyQ29sbGFwc2UgZSkKLSAgICA6IG1fdHlw
ZShDU1NfSURFTlQpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcywgQ1NTX1BSSU1JVElW
RV9WQUxVRSwgLyogaXNQcmltaXRpdmUgKi8gdHJ1ZSkKKyAgICAsIG1fdHlwZShDU1NfSURFTlQp
CiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CiAgICAgc3dpdGNoIChlKSB7CkBA
IC0zMjg5LDcgKzMzNjYsOCBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6
b3BlcmF0b3IgRUJvcmRlckNvbGxhcHNlKCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUg
Q1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEVCb3JkZXJGaXQgZSkKLSAgICA6
IG1fdHlwZShDU1NfSURFTlQpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcywgQ1NTX1BS
SU1JVElWRV9WQUxVRSwgLyogaXNQcmltaXRpdmUgKi8gdHJ1ZSkKKyAgICAsIG1fdHlwZShDU1Nf
SURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CiAgICAgc3dpdGNoIChl
KSB7CkBAIC0zMzE2LDcgKzMzOTQsOCBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVW
YWx1ZTo6b3BlcmF0b3IgRUJvcmRlckZpdCgpIGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5l
IENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShFSW1hZ2VSZW5kZXJpbmcgZSkK
LSAgICA6IG1fdHlwZShDU1NfSURFTlQpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcywg
Q1NTX1BSSU1JVElWRV9WQUxVRSwgLyogaXNQcmltaXRpdmUgKi8gdHJ1ZSkKKyAgICAsIG1fdHlw
ZShDU1NfSURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CiAgICAgc3dp
dGNoIChlKSB7CkBAIC0zMzUzLDcgKzM0MzIsOCBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmlt
aXRpdmVWYWx1ZTo6b3BlcmF0b3IgRUltYWdlUmVuZGVyaW5nKCkgY29uc3QKIH0KIAogdGVtcGxh
dGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEVUcmFuc2Zv
cm1TdHlsZTNEIGUpCi0gICAgOiBtX3R5cGUoQ1NTX0lERU5UKQorICAgIDogQ1NTVmFsdWUoUHJp
bWl0aXZlQ2xhc3MsIENTU19QUklNSVRJVkVfVkFMVUUsIC8qIGlzUHJpbWl0aXZlICovIHRydWUp
CisgICAgLCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNl
KQogewogICAgIHN3aXRjaCAoZSkgewpAQCAtMzM4MCw3ICszNDYwLDggQEAgdGVtcGxhdGU8PiBp
bmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEVUcmFuc2Zvcm1TdHlsZTNEKCkgY29u
c3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2
ZVZhbHVlKENvbHVtbkF4aXMgZSkKLSAgICA6IG1fdHlwZShDU1NfSURFTlQpCisgICAgOiBDU1NW
YWx1ZShQcmltaXRpdmVDbGFzcywgQ1NTX1BSSU1JVElWRV9WQUxVRSwgLyogaXNQcmltaXRpdmUg
Ki8gdHJ1ZSkKKyAgICAsIG1fdHlwZShDU1NfSURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENTU1Rl
eHQoZmFsc2UpCiB7CiAgICAgc3dpdGNoIChlKSB7CkBAIC0zNDE0LDcgKzM0OTUsOCBAQCB0ZW1w
bGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgQ29sdW1uQXhpcygpIGNv
bnN0CiAjaWYgRU5BQkxFKFNWRykKIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFs
dWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEVDb2xvckludGVycG9sYXRpb24gZSkKLSAgICA6IG1fdHlw
ZShDU1NfSURFTlQpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcywgQ1NTX1BSSU1JVElW
RV9WQUxVRSwgLyogaXNQcmltaXRpdmUgKi8gdHJ1ZSkKKyAgICAsIG1fdHlwZShDU1NfSURFTlQp
CiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CiAgICAgc3dpdGNoIChlKSB7CkBA
IC0zNDQ2LDcgKzM1MjgsOCBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6
b3BlcmF0b3IgRUNvbG9ySW50ZXJwb2xhdGlvbigpIGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5s
aW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShFQ29sb3JSZW5kZXJpbmcg
ZSkKLSAgICA6IG1fdHlwZShDU1NfSURFTlQpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFz
cywgQ1NTX1BSSU1JVElWRV9WQUxVRSwgLyogaXNQcmltaXRpdmUgKi8gdHJ1ZSkKKyAgICAsIG1f
dHlwZShDU1NfSURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CiAgICAg
c3dpdGNoIChlKSB7CkBAIC0zNDc4LDcgKzM1NjEsOCBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQ
cmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgRUNvbG9yUmVuZGVyaW5nKCkgY29uc3QKIH0KIAogdGVt
cGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEVEb21p
bmFudEJhc2VsaW5lIGUpCi0gICAgOiBtX3R5cGUoQ1NTX0lERU5UKQorICAgIDogQ1NTVmFsdWUo
UHJpbWl0aXZlQ2xhc3MsIENTU19QUklNSVRJVkVfVkFMVUUsIC8qIGlzUHJpbWl0aXZlICovIHRy
dWUpCisgICAgLCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZh
bHNlKQogewogICAgIHN3aXRjaCAoZSkgewpAQCAtMzU1NSw3ICszNjM5LDggQEAgdGVtcGxhdGU8
PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEVEb21pbmFudEJhc2VsaW5lKCkg
Y29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1p
dGl2ZVZhbHVlKEVTaGFwZVJlbmRlcmluZyBlKQotICAgIDogbV90eXBlKENTU19JREVOVCkKKyAg
ICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzLCBDU1NfUFJJTUlUSVZFX1ZBTFVFLCAvKiBpc1By
aW1pdGl2ZSAqLyB0cnVlKQorICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAsIG1faGFzQ2Fj
aGVkQ1NTVGV4dChmYWxzZSkKIHsKICAgICBzd2l0Y2ggKGUpIHsKQEAgLTM1OTIsNyArMzY3Nyw4
IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBFU2hhcGVS
ZW5kZXJpbmcoKSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1
ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoRVRleHRBbmNob3IgZSkKLSAgICA6IG1fdHlwZShDU1NfSURF
TlQpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcywgQ1NTX1BSSU1JVElWRV9WQUxVRSwg
LyogaXNQcmltaXRpdmUgKi8gdHJ1ZSkKKyAgICAsIG1fdHlwZShDU1NfSURFTlQpCiAgICAgLCBt
X2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CiAgICAgc3dpdGNoIChlKSB7CkBAIC0zNjI0LDcg
KzM3MTAsOCBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3Ig
RVRleHRBbmNob3IoKSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVW
YWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoU1ZHV3JpdGluZ01vZGUgZSkKLSAgICA6IG1fdHlwZShD
U1NfSURFTlQpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcywgQ1NTX1BSSU1JVElWRV9W
QUxVRSwgLyogaXNQcmltaXRpdmUgKi8gdHJ1ZSkKKyAgICAsIG1fdHlwZShDU1NfSURFTlQpCiAg
ICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CiAgICAgc3dpdGNoIChlKSB7CkBAIC0z
NjcxLDcgKzM3NTgsOCBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3Bl
cmF0b3IgU1ZHV3JpdGluZ01vZGUoKSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQ
cmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoRVZlY3RvckVmZmVjdCBlKQotICAgIDog
bV90eXBlKENTU19JREVOVCkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzLCBDU1NfUFJJ
TUlUSVZFX1ZBTFVFLCAvKiBpc1ByaW1pdGl2ZSAqLyB0cnVlKQorICAgICwgbV90eXBlKENTU19J
REVOVCkKICAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKICAgICBzd2l0Y2ggKGUp
IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NSZWZsZWN0VmFsdWUuaCBiL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NSZWZsZWN0VmFsdWUuaAppbmRleCA1ODA3NmVhLi5kMzA1YWRm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUmVmbGVjdFZhbHVlLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvY3NzL0NTU1JlZmxlY3RWYWx1ZS5oCkBAIC01MiwxNiArNTIsMTQgQEAg
cHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBhZGRTdWJyZXNvdXJjZVN0eWxlVVJMcyhMaXN0SGFz
aFNldDxLVVJMPiYsIGNvbnN0IENTU1N0eWxlU2hlZXQqKTsKIAogcHJpdmF0ZToKLSAgICBDU1NS
ZWZsZWN0VmFsdWUoQ1NTUmVmbGVjdGlvbkRpcmVjdGlvbiBkaXJlY3Rpb24sCi0gICAgICAgICAg
ICBQYXNzUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiBvZmZzZXQsIFBhc3NSZWZQdHI8Q1NTVmFs
dWU+IG1hc2spCi0gICAgICAgIDogbV9kaXJlY3Rpb24oZGlyZWN0aW9uKQorICAgIENTU1JlZmxl
Y3RWYWx1ZShDU1NSZWZsZWN0aW9uRGlyZWN0aW9uIGRpcmVjdGlvbiwgUGFzc1JlZlB0cjxDU1NQ
cmltaXRpdmVWYWx1ZT4gb2Zmc2V0LCBQYXNzUmVmUHRyPENTU1ZhbHVlPiBtYXNrKQorICAgICAg
ICA6IENTU1ZhbHVlKFJlZmxlY3RDbGFzcywgQ1NTX0NVU1RPTSkKKyAgICAgICAgLCBtX2RpcmVj
dGlvbihkaXJlY3Rpb24pCiAgICAgICAgICwgbV9vZmZzZXQob2Zmc2V0KQogICAgICAgICAsIG1f
bWFzayhtYXNrKQogICAgIHsKICAgICB9CiAKLSAgICB2aXJ0dWFsIGJvb2wgaXNSZWZsZWN0VmFs
dWUoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9Ci0KICAgICBDU1NSZWZsZWN0aW9uRGlyZWN0aW9u
IG1fZGlyZWN0aW9uOwogICAgIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gbV9vZmZzZXQ7CiAg
ICAgUmVmUHRyPENTU1ZhbHVlPiBtX21hc2s7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTVGltaW5nRnVuY3Rpb25WYWx1ZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1RpbWlu
Z0Z1bmN0aW9uVmFsdWUuaAppbmRleCBlMzY5MWY0Li42OWJkNTE1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTVGltaW5nRnVuY3Rpb25WYWx1ZS5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NUaW1pbmdGdW5jdGlvblZhbHVlLmgKQEAgLTM1LDE2ICszNSwxNSBAQCBjbGFz
cyBDU1NUaW1pbmdGdW5jdGlvblZhbHVlIDogcHVibGljIENTU1ZhbHVlIHsKIHB1YmxpYzoKICAg
ICB2aXJ0dWFsIFN0cmluZyBjc3NUZXh0KCkgY29uc3QgPSAwOwogCi0gICAgdmlydHVhbCBib29s
IGlzTGluZWFyVGltaW5nRnVuY3Rpb25WYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9Ci0g
ICAgdmlydHVhbCBib29sIGlzQ3ViaWNCZXppZXJUaW1pbmdGdW5jdGlvblZhbHVlKCkgY29uc3Qg
eyByZXR1cm4gZmFsc2U7IH0KLSAgICB2aXJ0dWFsIGJvb2wgaXNTdGVwc1RpbWluZ0Z1bmN0aW9u
VmFsdWUoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQorICAgIGJvb2wgaXNMaW5lYXJUaW1pbmdG
dW5jdGlvblZhbHVlKCkgY29uc3QgeyByZXR1cm4gY2xhc3NUeXBlKCkgPT0gTGluZWFyVGltaW5n
RnVuY3Rpb25DbGFzczsgfQorICAgIGJvb2wgaXNDdWJpY0JlemllclRpbWluZ0Z1bmN0aW9uVmFs
dWUoKSBjb25zdCB7IHJldHVybiBjbGFzc1R5cGUoKSA9PSBDdWJpY0JlemllclRpbWluZ0Z1bmN0
aW9uQ2xhc3M7IH0KKyAgICBib29sIGlzU3RlcHNUaW1pbmdGdW5jdGlvblZhbHVlKCkgY29uc3Qg
eyByZXR1cm4gY2xhc3NUeXBlKCkgPT0gU3RlcHNUaW1pbmdGdW5jdGlvbkNsYXNzOyB9CiAKIHBy
b3RlY3RlZDoKLSAgICBDU1NUaW1pbmdGdW5jdGlvblZhbHVlKCkKKyAgICBDU1NUaW1pbmdGdW5j
dGlvblZhbHVlKENsYXNzVHlwZSBjbGFzc1R5cGUpCisgICAgICAgIDogQ1NTVmFsdWUoY2xhc3NU
eXBlLCBDU1NfQ1VTVE9NKQogICAgIHsKICAgICB9Ci0KLSAgICB2aXJ0dWFsIGJvb2wgaXNUaW1p
bmdGdW5jdGlvblZhbHVlKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQogfTsKIAogY2xhc3MgQ1NT
TGluZWFyVGltaW5nRnVuY3Rpb25WYWx1ZSA6IHB1YmxpYyBDU1NUaW1pbmdGdW5jdGlvblZhbHVl
IHsKQEAgLTU2LDEyICs1NSwxMSBAQCBwdWJsaWM6CiAKIHByaXZhdGU6CiAgICAgQ1NTTGluZWFy
VGltaW5nRnVuY3Rpb25WYWx1ZSgpCisgICAgICAgIDogQ1NTVGltaW5nRnVuY3Rpb25WYWx1ZShM
aW5lYXJUaW1pbmdGdW5jdGlvbkNsYXNzKQogICAgIHsKICAgICB9CiAKICAgICB2aXJ0dWFsIFN0
cmluZyBjc3NUZXh0KCkgY29uc3Q7Ci0KLSAgICB2aXJ0dWFsIGJvb2wgaXNMaW5lYXJUaW1pbmdG
dW5jdGlvblZhbHVlKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQogfTsKIAogY2xhc3MgQ1NTQ3Vi
aWNCZXppZXJUaW1pbmdGdW5jdGlvblZhbHVlIDogcHVibGljIENTU1RpbWluZ0Z1bmN0aW9uVmFs
dWUgewpAQCAtNzgsNyArNzYsOCBAQCBwdWJsaWM6CiAKIHByaXZhdGU6CiAgICAgQ1NTQ3ViaWNC
ZXppZXJUaW1pbmdGdW5jdGlvblZhbHVlKGRvdWJsZSB4MSwgZG91YmxlIHkxLCBkb3VibGUgeDIs
IGRvdWJsZSB5MikKLSAgICAgICAgOiBtX3gxKHgxKQorICAgICAgICA6IENTU1RpbWluZ0Z1bmN0
aW9uVmFsdWUoQ3ViaWNCZXppZXJUaW1pbmdGdW5jdGlvbkNsYXNzKQorICAgICAgICAsIG1feDEo
eDEpCiAgICAgICAgICwgbV95MSh5MSkKICAgICAgICAgLCBtX3gyKHgyKQogICAgICAgICAsIG1f
eTIoeTIpCkBAIC04Nyw4ICs4Niw2IEBAIHByaXZhdGU6CiAKICAgICB2aXJ0dWFsIFN0cmluZyBj
c3NUZXh0KCkgY29uc3Q7CiAKLSAgICB2aXJ0dWFsIGJvb2wgaXNDdWJpY0JlemllclRpbWluZ0Z1
bmN0aW9uVmFsdWUoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9Ci0KICAgICBkb3VibGUgbV94MTsK
ICAgICBkb3VibGUgbV95MTsKICAgICBkb3VibGUgbV94MjsKQEAgLTEwNywxNSArMTA0LDE0IEBA
IHB1YmxpYzoKIAogcHJpdmF0ZToKICAgICBDU1NTdGVwc1RpbWluZ0Z1bmN0aW9uVmFsdWUoaW50
IHN0ZXBzLCBib29sIHN0ZXBBdFN0YXJ0KQotICAgICAgICA6IG1fc3RlcHMoc3RlcHMpCisgICAg
ICAgIDogQ1NTVGltaW5nRnVuY3Rpb25WYWx1ZShTdGVwc1RpbWluZ0Z1bmN0aW9uQ2xhc3MpCisg
ICAgICAgICwgbV9zdGVwcyhzdGVwcykKICAgICAgICAgLCBtX3N0ZXBBdFN0YXJ0KHN0ZXBBdFN0
YXJ0KQogICAgIHsKICAgICB9CiAKICAgICB2aXJ0dWFsIFN0cmluZyBjc3NUZXh0KCkgY29uc3Q7
CiAKLSAgICB2aXJ0dWFsIGJvb2wgaXNTdGVwc1RpbWluZ0Z1bmN0aW9uVmFsdWUoKSBjb25zdCB7
IHJldHVybiB0cnVlOyB9Ci0KICAgICBpbnQgbV9zdGVwczsKICAgICBib29sIG1fc3RlcEF0U3Rh
cnQ7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1VuaWNvZGVSYW5nZVZh
bHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVW5pY29kZVJhbmdlVmFsdWUuaAppbmRleCAy
ZjJjMDEyLi40NThiZjFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVW5pY29k
ZVJhbmdlVmFsdWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVW5pY29kZVJhbmdlVmFs
dWUuaApAQCAtNDgsNyArNDgsOCBAQCBwdWJsaWM6CiAKIHByaXZhdGU6CiAgICAgQ1NTVW5pY29k
ZVJhbmdlVmFsdWUoVUNoYXIzMiBmcm9tLCBVQ2hhcjMyIHRvKQotICAgICAgICA6IG1fZnJvbShm
cm9tKQorICAgICAgICA6IENTU1ZhbHVlKFVuaWNvZGVSYW5nZUNsYXNzKQorICAgICAgICAsIG1f
ZnJvbShmcm9tKQogICAgICAgICAsIG1fdG8odG8pCiAgICAgewogICAgIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Zh
bHVlLmgKaW5kZXggNjI4MzkzMi4uNGVlOTZhZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU1ZhbHVlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlLmgKQEAgLTQ5
LDQ1ICs0OSw5NyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBTdHJpbmcgY3NzVGV4dCgpIGNvbnN0
ID0gMDsKICAgICB2b2lkIHNldENzc1RleHQoY29uc3QgU3RyaW5nJiwgRXhjZXB0aW9uQ29kZSYp
IHsgfSAvLyBGSVhNRTogTm90IGltcGxlbWVudGVkLgogCi0gICAgdmlydHVhbCBib29sIGlzTXV0
YWJsZVZhbHVlKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KLQotICAgIHZpcnR1YWwgYm9vbCBp
c0JvcmRlckltYWdlVmFsdWUoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQotICAgIHZpcnR1YWwg
Ym9vbCBpc0JvcmRlckltYWdlU2xpY2VWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9Ci0g
ICAgdmlydHVhbCBib29sIGlzQ3Vyc29ySW1hZ2VWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIGZhbHNl
OyB9CisgICAgYm9vbCBpc011dGFibGVWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1faXNNdXRhYmxl
VmFsdWU7IH0KKyAgICBib29sIGlzUHJpbWl0aXZlVmFsdWUoKSBjb25zdCB7IHJldHVybiBtX2lz
UHJpbWl0aXZlVmFsdWU7IH0KKyAgICBib29sIGlzVmFsdWVMaXN0KCkgY29uc3QgeyByZXR1cm4g
bV9pc1ZhbHVlTGlzdDsgfQorCisgICAgYm9vbCBpc0JvcmRlckltYWdlVmFsdWUoKSBjb25zdCB7
IHJldHVybiBtX2NsYXNzVHlwZSA9PSBCb3JkZXJJbWFnZUNsYXNzOyB9CisgICAgYm9vbCBpc0Jv
cmRlckltYWdlU2xpY2VWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09IEJvcmRl
ckltYWdlU2xpY2VDbGFzczsgfQorICAgIGJvb2wgaXNDdXJzb3JJbWFnZVZhbHVlKCkgY29uc3Qg
eyByZXR1cm4gbV9jbGFzc1R5cGUgPT0gQ3Vyc29ySW1hZ2VDbGFzczsgfQorICAgIGJvb2wgaXNG
b250RmFtaWx5VmFsdWUoKSBjb25zdCB7IHJldHVybiBtX2NsYXNzVHlwZSA9PSBGb250RmFtaWx5
Q2xhc3M7IH0KKyAgICBib29sIGlzRm9udEZlYXR1cmVWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1f
Y2xhc3NUeXBlID09IEZvbnRGZWF0dXJlQ2xhc3M7IH0KKyAgICBib29sIGlzRm9udFZhbHVlKCkg
Y29uc3QgeyByZXR1cm4gbV9jbGFzc1R5cGUgPT0gRm9udENsYXNzOyB9CisgICAgYm9vbCBpc0lt
YWdlR2VuZXJhdG9yVmFsdWUoKSBjb25zdCB7IHJldHVybiBtX2NsYXNzVHlwZSA9PSBDYW52YXND
bGFzcyB8fCBtX2NsYXNzVHlwZSA9PSBDcm9zc2ZhZGVDbGFzcyB8fCBtX2NsYXNzVHlwZSA9PSBM
aW5lYXJHcmFkaWVudENsYXNzIHx8IG1fY2xhc3NUeXBlID09IFJhZGlhbEdyYWRpZW50Q2xhc3M7
IH0KKyAgICBib29sIGlzSW1hZ2VWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09
IEltYWdlQ2xhc3MgfHwgbV9jbGFzc1R5cGUgPT0gQ3Vyc29ySW1hZ2VDbGFzczsgfQorICAgIGJv
b2wgaXNJbXBsaWNpdEluaXRpYWxWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09
IEltcGxpY2l0SW5pdGlhbENsYXNzOyB9CisgICAgYm9vbCBpc1JlZmxlY3RWYWx1ZSgpIGNvbnN0
IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09IFJlZmxlY3RDbGFzczsgfQorICAgIGJvb2wgaXNTaGFk
b3dWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09IFNoYWRvd0NsYXNzOyB9Cisg
ICAgYm9vbCBpc1RpbWluZ0Z1bmN0aW9uVmFsdWUoKSBjb25zdCB7IHJldHVybiBtX2NsYXNzVHlw
ZSA9PSBDdWJpY0JlemllclRpbWluZ0Z1bmN0aW9uQ2xhc3MgfHwgbV9jbGFzc1R5cGUgPT0gTGlu
ZWFyVGltaW5nRnVuY3Rpb25DbGFzcyB8fCBtX2NsYXNzVHlwZSA9PSBTdGVwc1RpbWluZ0Z1bmN0
aW9uQ2xhc3M7IH0KKyAgICBib29sIGlzV2ViS2l0Q1NTVHJhbnNmb3JtVmFsdWUoKSBjb25zdCB7
IHJldHVybiBtX2NsYXNzVHlwZSA9PSBXZWJLaXRDU1NUcmFuc2Zvcm1DbGFzczsgfQorICAgIGJv
b2wgaXNDU1NMaW5lQm94Q29udGFpblZhbHVlKCkgY29uc3QgeyByZXR1cm4gbV9jbGFzc1R5cGUg
PT0gTGluZUJveENvbnRhaW5DbGFzczsgfQogI2lmIEVOQUJMRShDU1MzX0ZMRVhCT1gpCi0gICAg
dmlydHVhbCBib29sIGlzRmxleFZhbHVlKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KKyAgICBi
b29sIGlzRmxleFZhbHVlKCkgY29uc3QgeyByZXR1cm4gbV9jbGFzc1R5cGUgPT0gRmxleENsYXNz
OyB9CiAjZW5kaWYKLSAgICB2aXJ0dWFsIGJvb2wgaXNGb250RmFtaWx5VmFsdWUoKSBjb25zdCB7
IHJldHVybiBmYWxzZTsgfQotICAgIHZpcnR1YWwgYm9vbCBpc0ZvbnRGZWF0dXJlVmFsdWUoKSBj
b25zdCB7IHJldHVybiBmYWxzZTsgfQotICAgIHZpcnR1YWwgYm9vbCBpc0ZvbnRWYWx1ZSgpIGNv
bnN0IHsgcmV0dXJuIGZhbHNlOyB9Ci0gICAgdmlydHVhbCBib29sIGlzSW1hZ2VHZW5lcmF0b3JW
YWx1ZSgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9Ci0gICAgdmlydHVhbCBib29sIGlzSW1hZ2VW
YWx1ZSgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9Ci0gICAgdmlydHVhbCBib29sIGlzSW1wbGlj
aXRJbml0aWFsVmFsdWUoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQotICAgIHZpcnR1YWwgYm9v
bCBpc1ByaW1pdGl2ZVZhbHVlKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KLSAgICB2aXJ0dWFs
IGJvb2wgaXNSZWZsZWN0VmFsdWUoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQotICAgIHZpcnR1
YWwgYm9vbCBpc1NoYWRvd1ZhbHVlKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KLSAgICB2aXJ0
dWFsIGJvb2wgaXNUaW1pbmdGdW5jdGlvblZhbHVlKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0K
LSAgICB2aXJ0dWFsIGJvb2wgaXNWYWx1ZUxpc3QoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQot
ICAgIHZpcnR1YWwgYm9vbCBpc1dlYktpdENTU1RyYW5zZm9ybVZhbHVlKCkgY29uc3QgeyByZXR1
cm4gZmFsc2U7IH0KLSAgICB2aXJ0dWFsIGJvb2wgaXNDU1NMaW5lQm94Q29udGFpblZhbHVlKCkg
Y29uc3QgeyByZXR1cm4gZmFsc2U7IH0KICNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMpCi0gICAgdmly
dHVhbCBib29sIGlzV2ViS2l0Q1NTRmlsdGVyVmFsdWUoKSBjb25zdCB7IHJldHVybiBmYWxzZTsg
fQorICAgIGJvb2wgaXNXZWJLaXRDU1NGaWx0ZXJWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xh
c3NUeXBlID09IFdlYktpdENTU0ZpbHRlckNsYXNzOyB9CiAjZW5kaWYKICNpZiBFTkFCTEUoU1ZH
KQotICAgIHZpcnR1YWwgYm9vbCBpc1NWR0NvbG9yKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0K
LSAgICB2aXJ0dWFsIGJvb2wgaXNTVkdQYWludCgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9Cisg
ICAgYm9vbCBpc1NWR0NvbG9yKCkgY29uc3QgeyByZXR1cm4gbV9jbGFzc1R5cGUgPT0gU1ZHQ29s
b3JDbGFzcyB8fCBtX2NsYXNzVHlwZSA9PSBTVkdQYWludENsYXNzOyB9CisgICAgYm9vbCBpc1NW
R1BhaW50KCkgY29uc3QgeyByZXR1cm4gbV9jbGFzc1R5cGUgPT0gU1ZHUGFpbnRDbGFzczsgfQog
I2VuZGlmCiAKICAgICB2aXJ0dWFsIHZvaWQgYWRkU3VicmVzb3VyY2VTdHlsZVVSTHMoTGlzdEhh
c2hTZXQ8S1VSTD4mLCBjb25zdCBDU1NTdHlsZVNoZWV0KikgeyB9CiAKIHByb3RlY3RlZDoKLSAg
ICBDU1NWYWx1ZShUeXBlIHR5cGUgPSBDU1NfQ1VTVE9NKQorCisgICAgZW51bSBDbGFzc1R5cGUg
eworICAgICAgICBVbmtub3duQ2xhc3MsCisgICAgICAgIEFzcGVjdFJhdGlvQ2xhc3MsCisgICAg
ICAgIEJvcmRlckltYWdlQ2xhc3MsCisgICAgICAgIEJvcmRlckltYWdlU2xpY2VDbGFzcywKKyAg
ICAgICAgQ2FudmFzQ2xhc3MsCisgICAgICAgIEN1cnNvckltYWdlQ2xhc3MsCisgICAgICAgIEZv
bnRGYW1pbHlDbGFzcywKKyAgICAgICAgRm9udEZlYXR1cmVDbGFzcywKKyAgICAgICAgRm9udENs
YXNzLAorICAgICAgICBGb250RmFjZVNyY0NsYXNzLAorICAgICAgICBGdW5jdGlvbkNsYXNzLAor
ICAgICAgICBMaW5lYXJHcmFkaWVudENsYXNzLAorICAgICAgICBSYWRpYWxHcmFkaWVudENsYXNz
LAorICAgICAgICBDcm9zc2ZhZGVDbGFzcywKKyAgICAgICAgSW1hZ2VDbGFzcywKKyAgICAgICAg
SW5oZXJpdGVkQ2xhc3MsCisgICAgICAgIEluaXRpYWxDbGFzcywKKyAgICAgICAgSW1wbGljaXRJ
bml0aWFsQ2xhc3MsCisgICAgICAgIFByaW1pdGl2ZUNsYXNzLAorICAgICAgICBSZWZsZWN0Q2xh
c3MsCisgICAgICAgIFNoYWRvd0NsYXNzLAorICAgICAgICBMaW5lYXJUaW1pbmdGdW5jdGlvbkNs
YXNzLAorICAgICAgICBDdWJpY0JlemllclRpbWluZ0Z1bmN0aW9uQ2xhc3MsCisgICAgICAgIFN0
ZXBzVGltaW5nRnVuY3Rpb25DbGFzcywKKyAgICAgICAgVW5pY29kZVJhbmdlQ2xhc3MsCisgICAg
ICAgIFZhbHVlTGlzdENsYXNzLAorICAgICAgICBXZWJLaXRDU1NUcmFuc2Zvcm1DbGFzcywKKyAg
ICAgICAgTGluZUJveENvbnRhaW5DbGFzcywKKyNpZiBFTkFCTEUoQ1NTM19GTEVYQk9YKQorICAg
ICAgICBGbGV4Q2xhc3MsCisjZW5kaWYKKyNpZiBFTkFCTEUoQ1NTX0ZJTFRFUlMpCisgICAgICAg
IFdlYktpdENTU0ZpbHRlckNsYXNzLAorI2VuZGlmCisjaWYgRU5BQkxFKFNWRykKKyAgICAgICAg
U1ZHQ29sb3JDbGFzcywKKyAgICAgICAgU1ZHUGFpbnRDbGFzcywKKyNlbmRpZgorICAgIH07CisK
KyAgICBDbGFzc1R5cGUgY2xhc3NUeXBlKCkgY29uc3QgeyByZXR1cm4gc3RhdGljX2Nhc3Q8Q2xh
c3NUeXBlPihtX2NsYXNzVHlwZSk7IH0KKworICAgIENTU1ZhbHVlKENsYXNzVHlwZSBjbGFzc1R5
cGUsIFR5cGUgdHlwZSA9IENTU19DVVNUT00sIGJvb2wgaXNQcmltaXRpdmUgPSBmYWxzZSwgIGJv
b2wgaXNMaXN0ID0gZmFsc2UsIGJvb2wgaXNNdXRhYmxlID0gZmFsc2UpCiAgICAgICAgIDogbV90
eXBlKHR5cGUpCisgICAgICAgICwgbV9jbGFzc1R5cGUoY2xhc3NUeXBlKQorICAgICAgICAsIG1f
aXNQcmltaXRpdmVWYWx1ZShpc1ByaW1pdGl2ZSkKKyAgICAgICAgLCBtX2lzTXV0YWJsZVZhbHVl
KGlzTXV0YWJsZSkKKyAgICAgICAgLCBtX2lzVmFsdWVMaXN0KGlzTGlzdCkKICAgICB7CiAgICAg
fQogCiBwcml2YXRlOgogICAgIHVuc2lnbmVkIG1fdHlwZSA6IDM7IC8vIFR5cGUKKyAgICB1bnNp
Z25lZCBtX2NsYXNzVHlwZSA6IDU7IC8vIENsYXNzVHlwZQorICAgIGJvb2wgbV9pc1ByaW1pdGl2
ZVZhbHVlIDogMTsKKyAgICBib29sIG1faXNNdXRhYmxlVmFsdWUgOiAxOworICAgIGJvb2wgbV9p
c1ZhbHVlTGlzdCA6IDE7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWVMaXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NWYWx1ZUxpc3QuY3BwCmluZGV4IDU5MWIyYTguLjAwZDQzMGYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUxpc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NWYWx1ZUxpc3QuY3BwCkBAIC0yOCwxMyArMjgsMTMgQEAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAogQ1NTVmFsdWVMaXN0OjpDU1NWYWx1ZUxpc3QoYm9vbCBpc1NwYWNlU2VwYXJhdGVkKQot
ICAgIDogQ1NTVmFsdWUoQ1NTX1ZBTFVFX0xJU1QpCisgICAgOiBDU1NWYWx1ZShWYWx1ZUxpc3RD
bGFzcywgQ1NTX1ZBTFVFX0xJU1QsIC8qIGlzUHJpbWl0aXZlICovIGZhbHNlLCAvKiBpc0xpc3Qg
Ki8gdHJ1ZSkKICAgICAsIG1faXNTcGFjZVNlcGFyYXRlZChpc1NwYWNlU2VwYXJhdGVkKQogewog
fQogCiBDU1NWYWx1ZUxpc3Q6OkNTU1ZhbHVlTGlzdChDU1NQYXJzZXJWYWx1ZUxpc3QqIGxpc3Qp
Ci0gICAgOiBDU1NWYWx1ZShDU1NfVkFMVUVfTElTVCkKKyAgICA6IENTU1ZhbHVlKFZhbHVlTGlz
dENsYXNzLCBDU1NfVkFMVUVfTElTVCwgLyogaXNQcmltaXRpdmUgKi8gZmFsc2UsIC8qIGlzTGlz
dCAqLyB0cnVlKQogICAgICwgbV9pc1NwYWNlU2VwYXJhdGVkKHRydWUpCiB7CiAgICAgaWYgKGxp
c3QpIHsKQEAgLTQ0LDYgKzQ0LDEyIEBAIENTU1ZhbHVlTGlzdDo6Q1NTVmFsdWVMaXN0KENTU1Bh
cnNlclZhbHVlTGlzdCogbGlzdCkKICAgICB9CiB9CiAKK0NTU1ZhbHVlTGlzdDo6Q1NTVmFsdWVM
aXN0KENsYXNzVHlwZSBjbGFzc1R5cGUsIGJvb2wgaXNTcGFjZVNlcGFyYXRlZCkKKyAgICA6IENT
U1ZhbHVlKGNsYXNzVHlwZSwgQ1NTX1ZBTFVFX0xJU1QsIC8qIGlzUHJpbWl0aXZlICovIGZhbHNl
LCAvKiBpc0xpc3QgKi8gdHJ1ZSkKKyAgICAsIG1faXNTcGFjZVNlcGFyYXRlZChpc1NwYWNlU2Vw
YXJhdGVkKQoreworfQorCiBDU1NWYWx1ZUxpc3Q6On5DU1NWYWx1ZUxpc3QoKQogewogfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlTGlzdC5oIGIvU291cmNlL1dlYkNv
cmUvY3NzL0NTU1ZhbHVlTGlzdC5oCmluZGV4IDI0MjNkNWIuLjFmMmE1NzUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUxpc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTVmFsdWVMaXN0LmgKQEAgLTYxLDExICs2MSwxMSBAQCBwdWJsaWM6CiAgICAgdmlydHVh
bCB2b2lkIGFkZFN1YnJlc291cmNlU3R5bGVVUkxzKExpc3RIYXNoU2V0PEtVUkw+JiwgY29uc3Qg
Q1NTU3R5bGVTaGVldCopOwogCiBwcm90ZWN0ZWQ6Ci0gICAgQ1NTVmFsdWVMaXN0KGJvb2wgaXNT
cGFjZVNlcGFyYXRlZCk7Ci0gICAgQ1NTVmFsdWVMaXN0KENTU1BhcnNlclZhbHVlTGlzdCopOwor
ICAgIENTU1ZhbHVlTGlzdChDbGFzc1R5cGUsIGJvb2wgaXNTcGFjZVNlcGFyYXRlZCk7CiAKIHBy
aXZhdGU6Ci0gICAgdmlydHVhbCBib29sIGlzVmFsdWVMaXN0KCkgY29uc3QgeyByZXR1cm4gdHJ1
ZTsgfQorICAgIENTU1ZhbHVlTGlzdChib29sIGlzU3BhY2VTZXBhcmF0ZWQpOworICAgIENTU1Zh
bHVlTGlzdChDU1NQYXJzZXJWYWx1ZUxpc3QqKTsKIAogICAgIFZlY3RvcjxSZWZQdHI8Q1NTVmFs
dWU+ID4gbV92YWx1ZXM7CiAgICAgYm9vbCBtX2lzU3BhY2VTZXBhcmF0ZWQ7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhbWlseVZhbHVlLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9Gb250RmFtaWx5VmFsdWUuY3BwCmluZGV4IGViZTk2NDUuLjVkODNmYjEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFtaWx5VmFsdWUuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9Gb250RmFtaWx5VmFsdWUuY3BwCkBAIC0yNiw3ICsyNiw3IEBACiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKIEZvbnRGYW1pbHlWYWx1ZTo6Rm9udEZhbWlseVZhbHVlKGNvbnN0IFN0
cmluZyYgZmFtaWx5TmFtZSkKLSAgICA6IENTU1ByaW1pdGl2ZVZhbHVlKFN0cmluZygpLCBDU1Nf
U1RSSU5HKQorICAgIDogQ1NTUHJpbWl0aXZlVmFsdWUoRm9udEZhbWlseUNsYXNzLCBTdHJpbmco
KSwgQ1NTX1NUUklORykKICAgICAsIG1fZmFtaWx5TmFtZShmYW1pbHlOYW1lKQogewogICAgIC8v
IElmIHRoZXJlIGlzIGFueXRoaW5nIGluIHBhcmVudGhlc2VzIG9yIHNxdWFyZSBicmFja2V0cyBh
dCB0aGUgZW5kLCBkZWxldGUgaXQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9u
dEZhbWlseVZhbHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhbWlseVZhbHVlLmgKaW5k
ZXggM2Y3ZDNhMy4uMDg3ZDIyYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRG
YW1pbHlWYWx1ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFtaWx5VmFsdWUuaApA
QCAtNDEsNyArNDEsNiBAQCBwdWJsaWM6CiAKIHByaXZhdGU6CiAgICAgRm9udEZhbWlseVZhbHVl
KGNvbnN0IFN0cmluZyYgZmFtaWx5TmFtZSk7Ci0gICAgdmlydHVhbCBib29sIGlzRm9udEZhbWls
eVZhbHVlKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQogCiAgICAgU3RyaW5nIG1fZmFtaWx5TmFt
ZTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZlYXR1cmVWYWx1ZS5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZlYXR1cmVWYWx1ZS5jcHAKaW5kZXggY2U2ODRi
Zi4uOWMxNWQxYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGZWF0dXJlVmFs
dWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmVhdHVyZVZhbHVlLmNwcApAQCAt
MzMsNyArMzMsOCBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBGb250RmVhdHVyZVZhbHVlOjpG
b250RmVhdHVyZVZhbHVlKGNvbnN0IFN0cmluZyYgdGFnLCBpbnQgdmFsdWUpCi0gICAgOiBtX3Rh
Zyh0YWcpCisgICAgOiBDU1NWYWx1ZShGb250RmVhdHVyZUNsYXNzLCBDU1NfQ1VTVE9NKQorICAg
ICwgbV90YWcodGFnKQogICAgICwgbV92YWx1ZSh2YWx1ZSkKIHsKIH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9Gb250RmVhdHVyZVZhbHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Rm9udEZlYXR1cmVWYWx1ZS5oCmluZGV4IDU1ZjQxMjcuLjMwYjBkZmIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9Gb250RmVhdHVyZVZhbHVlLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
Y3NzL0ZvbnRGZWF0dXJlVmFsdWUuaApAQCAtNDQsNyArNDQsNiBAQCBwdWJsaWM6CiAKIHByaXZh
dGU6CiAgICAgRm9udEZlYXR1cmVWYWx1ZShjb25zdCBTdHJpbmcmLCBpbnQpOwotICAgIHZpcnR1
YWwgYm9vbCBpc0ZvbnRGZWF0dXJlVmFsdWUoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9CiAKICAg
ICBTdHJpbmcgbV90YWc7CiAgICAgY29uc3QgaW50IG1fdmFsdWU7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvRm9udFZhbHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udFZhbHVl
LmgKaW5kZXggNWM3NDA2Yy4uZGNlMzg4YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3Nz
L0ZvbnRWYWx1ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250VmFsdWUuaApAQCAtNDcs
OSArNDcsMTAgQEAgcHVibGljOgogICAgIFJlZlB0cjxDU1NWYWx1ZUxpc3Q+IGZhbWlseTsKIAog
cHJpdmF0ZToKLSAgICBGb250VmFsdWUoKSB7IH0KLQotICAgIHZpcnR1YWwgYm9vbCBpc0ZvbnRW
YWx1ZSgpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KKyAgICBGb250VmFsdWUoKQorICAgICAgICA6
IENTU1ZhbHVlKEZvbnRDbGFzcywgQ1NTX0NVU1RPTSkKKyAgICB7CisgICAgfQogfTsKIAogfSAv
LyBuYW1lc3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TaGFkb3dWYWx1ZS5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU2hhZG93VmFsdWUuY3BwCmluZGV4IDA2MGEzMjIuLjAw
ZDgwYzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TaGFkb3dWYWx1ZS5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvY3NzL1NoYWRvd1ZhbHVlLmNwcApAQCAtMzIsNyArMzIsOCBAQCBT
aGFkb3dWYWx1ZTo6U2hhZG93VmFsdWUoUGFzc1JlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gX3gs
CiAgICAgUGFzc1JlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gX3NwcmVhZCwKICAgICBQYXNzUmVm
UHRyPENTU1ByaW1pdGl2ZVZhbHVlPiBfc3R5bGUsCiAgICAgUGFzc1JlZlB0cjxDU1NQcmltaXRp
dmVWYWx1ZT4gX2NvbG9yKQotICAgIDogeChfeCkKKyAgICA6IENTU1ZhbHVlKFNoYWRvd0NsYXNz
LCBDU1NfQ1VTVE9NKQorICAgICwgeChfeCkKICAgICAsIHkoX3kpCiAgICAgLCBibHVyKF9ibHVy
KQogICAgICwgc3ByZWFkKF9zcHJlYWQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
U2hhZG93VmFsdWUuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TaGFkb3dWYWx1ZS5oCmluZGV4IGZh
YjEwNzEuLmE4OGEwZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TaGFkb3dWYWx1
ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TaGFkb3dWYWx1ZS5oCkBAIC01OCw4ICs1OCw2
IEBAIHByaXZhdGU6CiAgICAgICAgIFBhc3NSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IHNwcmVh
ZCwKICAgICAgICAgUGFzc1JlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gc3R5bGUsCiAgICAgICAg
IFBhc3NSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IGNvbG9yKTsKLQotICAgIHZpcnR1YWwgYm9v
bCBpc1NoYWRvd1ZhbHVlKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQogfTsKIAogfSAvLyBuYW1l
c3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJWYWx1
ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuY3BwCmluZGV4
IDI1MDU4MzEuLjEwNTAwNWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRD
U1NGaWx0ZXJWYWx1ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRl
clZhbHVlLmNwcApAQCAtMzUsNyArMzUsNyBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBXZWJL
aXRDU1NGaWx0ZXJWYWx1ZTo6V2ViS2l0Q1NTRmlsdGVyVmFsdWUoRmlsdGVyT3BlcmF0aW9uVHlw
ZSBvcGVyYXRpb25UeXBlKQotICAgIDogQ1NTVmFsdWVMaXN0KHRydWUpCisgICAgOiBDU1NWYWx1
ZUxpc3QoV2ViS2l0Q1NTRmlsdGVyQ2xhc3MsIHRydWUpCiAgICAgLCBtX3R5cGUob3BlcmF0aW9u
VHlwZSkKIHsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0
ZXJWYWx1ZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRlclZhbHVlLmgKaW5k
ZXggZDRkMDhlMS4uNDhmMWE3YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktp
dENTU0ZpbHRlclZhbHVlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRl
clZhbHVlLmgKQEAgLTY2LDggKzY2LDYgQEAgcHVibGljOgogcHJpdmF0ZToKICAgICBXZWJLaXRD
U1NGaWx0ZXJWYWx1ZShGaWx0ZXJPcGVyYXRpb25UeXBlKTsKIAotICAgIHZpcnR1YWwgYm9vbCBp
c1dlYktpdENTU0ZpbHRlclZhbHVlKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQotCiAgICAgRmls
dGVyT3BlcmF0aW9uVHlwZSBtX3R5cGU7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9jc3MvV2ViS2l0Q1NTVHJhbnNmb3JtVmFsdWUuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1dl
YktpdENTU1RyYW5zZm9ybVZhbHVlLmNwcAppbmRleCA3NjIwNDI0Li5hNTZhOWQxIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTVHJhbnNmb3JtVmFsdWUuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5jcHAKQEAgLTMzLDcg
KzMzLDcgQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogV2ViS2l0Q1NTVHJhbnNmb3JtVmFsdWU6
OldlYktpdENTU1RyYW5zZm9ybVZhbHVlKFRyYW5zZm9ybU9wZXJhdGlvblR5cGUgb3ApCi0gICAg
OiBDU1NWYWx1ZUxpc3QoZmFsc2UpCisgICAgOiBDU1NWYWx1ZUxpc3QoV2ViS2l0Q1NTVHJhbnNm
b3JtQ2xhc3MsIGZhbHNlKQogICAgICwgbV90eXBlKG9wKQogewogfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU1RyYW5zZm9ybVZhbHVlLmggYi9Tb3VyY2UvV2ViQ29y
ZS9jc3MvV2ViS2l0Q1NTVHJhbnNmb3JtVmFsdWUuaAppbmRleCA4NTgwOTZhLi5kN2NkNGNjIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTVHJhbnNmb3JtVmFsdWUuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTVHJhbnNmb3JtVmFsdWUuaApAQCAtNzQs
OCArNzQsNiBAQCBwdWJsaWM6CiBwcml2YXRlOgogICAgIFdlYktpdENTU1RyYW5zZm9ybVZhbHVl
KFRyYW5zZm9ybU9wZXJhdGlvblR5cGUpOwogCi0gICAgdmlydHVhbCBib29sIGlzV2ViS2l0Q1NT
VHJhbnNmb3JtVmFsdWUoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9Ci0KICAgICBUcmFuc2Zvcm1P
cGVyYXRpb25UeXBlIG1fdHlwZTsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2
Zy9TVkdDb2xvci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQ29sb3IuY3BwCmluZGV4IDkx
MWQwMmYuLjJjM2E3NjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdDb2xvci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0NvbG9yLmNwcApAQCAtMzAsOCArMzAsMTUg
QEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCitTVkdDb2xvcjo6U1ZHQ29sb3IoQ2xhc3NUeXBl
IGNsYXNzVHlwZSwgY29uc3QgU1ZHQ29sb3JUeXBlJiBjb2xvclR5cGUpCisgICAgOiBDU1NNdXRh
YmxlVmFsdWUoY2xhc3NUeXBlKQorICAgICwgbV9jb2xvclR5cGUoY29sb3JUeXBlKQoreworfQor
CiBTVkdDb2xvcjo6U1ZHQ29sb3IoY29uc3QgU1ZHQ29sb3JUeXBlJiBjb2xvclR5cGUpCi0gICAg
OiBtX2NvbG9yVHlwZShjb2xvclR5cGUpCisgICAgOiBDU1NNdXRhYmxlVmFsdWUoU1ZHQ29sb3JD
bGFzcykKKyAgICAsIG1fY29sb3JUeXBlKGNvbG9yVHlwZSkKIHsKIH0KIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvc3ZnL1NWR0NvbG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQ29s
b3IuaAppbmRleCA1OGRjNzA0Li5kYWVkODNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9z
dmcvU1ZHQ29sb3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQ29sb3IuaApAQCAtNzIs
NyArNzIsNyBAQCBwdWJsaWM6CiBwcm90ZWN0ZWQ6CiAgICAgZnJpZW5kIGNsYXNzIENTU0NvbXB1
dGVkU3R5bGVEZWNsYXJhdGlvbjsKIAotICAgIFNWR0NvbG9yKGNvbnN0IFNWR0NvbG9yVHlwZSYp
OworICAgIFNWR0NvbG9yKENsYXNzVHlwZSwgY29uc3QgU1ZHQ29sb3JUeXBlJik7CiAgICAgdmly
dHVhbCB+U1ZHQ29sb3IoKSB7IH0KICAgICB2aXJ0dWFsIFN0cmluZyBjc3NUZXh0KCkgY29uc3Q7
CiAKQEAgLTgwLDcgKzgwLDcgQEAgcHJvdGVjdGVkOgogICAgIHZvaWQgc2V0Q29sb3JUeXBlKGNv
bnN0IFNWR0NvbG9yVHlwZSYgdHlwZSkgeyBtX2NvbG9yVHlwZSA9IHR5cGU7IH0KIAogcHJpdmF0
ZToKLSAgICB2aXJ0dWFsIGJvb2wgaXNTVkdDb2xvcigpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0K
KyAgICBTVkdDb2xvcihjb25zdCBTVkdDb2xvclR5cGUmKTsKIAogICAgIENvbG9yIG1fY29sb3I7
CiAgICAgU1ZHQ29sb3JUeXBlIG1fY29sb3JUeXBlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvc3ZnL1NWR1BhaW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYWludC5jcHAKaW5k
ZXggNTY1YWEwOC4uODYzY2U2YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1Bh
aW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGFpbnQuY3BwCkBAIC01NCw3ICs1
NCw3IEBAIHN0YXRpYyBpbmxpbmUgU1ZHQ29sb3I6OlNWR0NvbG9yVHlwZSBjb2xvclR5cGVGb3JQ
YWludFR5cGUoY29uc3QgU1ZHUGFpbnQ6OlNWR1BhCiB9CiAKIFNWR1BhaW50OjpTVkdQYWludChj
b25zdCBTVkdQYWludFR5cGUmIHBhaW50VHlwZSwgY29uc3QgU3RyaW5nJiB1cmkpCi0gICAgOiBT
VkdDb2xvcihjb2xvclR5cGVGb3JQYWludFR5cGUocGFpbnRUeXBlKSkKKyAgICA6IFNWR0NvbG9y
KFNWR1BhaW50Q2xhc3MsIGNvbG9yVHlwZUZvclBhaW50VHlwZShwYWludFR5cGUpKQogICAgICwg
bV9wYWludFR5cGUocGFpbnRUeXBlKQogICAgICwgbV91cmkodXJpKQogewpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvc3ZnL1NWR1BhaW50LmggYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGFp
bnQuaAppbmRleCBlNTkxYzdhLi42MjA3ODRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9z
dmcvU1ZHUGFpbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGFpbnQuaApAQCAtMTA2
LDcgKzEwNiw2IEBAIHByaXZhdGU6CiBwcml2YXRlOgogICAgIFNWR1BhaW50KGNvbnN0IFNWR1Bh
aW50VHlwZSYsIGNvbnN0IFN0cmluZyYgdXJpID0gU3RyaW5nKCkpOwogCi0gICAgdmlydHVhbCBi
b29sIGlzU1ZHUGFpbnQoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9CiAgICAgdmlydHVhbCBTdHJp
bmcgY3NzVGV4dCgpIGNvbnN0OwogCiAgICAgU1ZHUGFpbnRUeXBlIG1fcGFpbnRUeXBlOwo=
</data>
<flag name="review"
          id="112340"
          type_id="1"
          status="-"
          setter="koivisto"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>113904</attachid>
            <date>2011-11-07 11:48:53 -0800</date>
            <delta_ts>2011-11-07 12:07:13 -0800</delta_ts>
            <desc>Proposed patch v2</desc>
            <filename>bug-71668-v2.diff</filename>
            <type>text/plain</type>
            <size>79006</size>
            <attacher name="Andreas Kling">kling</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYkNv
cmUvQ01ha2VMaXN0cy50eHQKaW5kZXggNmIyZjE3ZC4uYmMxZmIyZSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0
cy50eHQKQEAgLTQ2Myw2ICs0NjMsNyBAQCBTRVQoV2ViQ29yZV9TT1VSQ0VTCiAgICAgY3NzL0NT
U1N0eWxlU2hlZXQuY3BwCiAgICAgY3NzL0NTU1RpbWluZ0Z1bmN0aW9uVmFsdWUuY3BwCiAgICAg
Y3NzL0NTU1VuaWNvZGVSYW5nZVZhbHVlLmNwcAorICAgIGNzcy9DU1NWYWx1ZS5jcHAKICAgICBj
c3MvQ1NTVmFsdWVMaXN0LmNwcAogICAgIGNzcy9DU1NXcmFwU2hhcGVzLmNwcAogICAgIGNzcy9G
b250RmFtaWx5VmFsdWUuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cg
Yi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggM2MwNTJlYy4uNWY4ZTA4YyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwpAQCAtMSw1ICsxLDE2NSBAQAogMjAxMS0xMS0wNyAgQW5kcmVhcyBLbGluZyAgPGtsaW5n
QHdlYmtpdC5vcmc+CiAKKyAgICAgICAgQ1NTVmFsdWU6IERldmlydHVhbGl6ZSBpc0Zvb1R5cGUo
KS4KKyAgICAgICAgPGh0dHA6Ly93ZWJraXQub3JnL2IvNzE2Njg+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIGEgbWVtYmVyIHRvIENTU1ZhbHVl
IHRvIGRldGVybWluZSB3aGljaCBzdWJjbGFzcyBhIGdpdmVuCisgICAgICAgIHZhbHVlIG9iamVj
dCBpcywgYWxvbmcgd2l0aCA1IGJpdHMgdG8gdGVsbCB1cyB3aGV0aGVyIHRoZQorICAgICAgICB2
YWx1ZSBpcyBwcmltaXRpdmUvbXV0YWJsZS9pbml0aWFsL2luaGVyaXRlZC9hIGxpc3QuCisKKyAg
ICAgICAgQWxsIG5vbi1wcml2YXRlIHN1YmNsYXNzIGNvbnN0cnVjdG9ycyBub3cgdGFrZSBDU1NW
YWx1ZTo6Q2xhc3NUeXBlCisgICAgICAgIGFzIHRoZWlyIGZpcnN0IGFyZ3VtZW50LiBBIGZldyBj
b25zdHJ1Y3RvcnMgd2VyZSBkdXBsaWNhdGVkIGFzCisgICAgICAgIHByaXZhdGUgbWVtYmVycyB0
byBhbGxvdyBjYWxsaW5nIHRoZW0gZnJvbSA6OmNyZWF0ZSgpIG1ldGhvZHMKKyAgICAgICAgd2l0
aG91dCBwYXNzaW5nIGFuIGV4cGxpY2l0IENsYXNzVHlwZS4KKworICAgICAgICBGdXJ0aGVybW9y
ZSwgc2luY2UgQ1NTVmFsdWU6OmNzc1ZhbHVlVHlwZSgpIGNhbiBiZSBpbmZlcnJlZCBmcm9tCisg
ICAgICAgIHRoZSBzdWJjbGFzcyB0eXBlLCB3ZSBjb21wdXRlIGl0IGluc3RlYWQgb2Ygc3Rvcmlu
ZyBpdCBpbiBhIG1lbWJlci4KKworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAq
IEdOVW1ha2VmaWxlLmxpc3QuYW06CisgICAgICAgICogVGFyZ2V0LnByaToKKyAgICAgICAgKiBX
ZWJDb3JlLmd5cGk6CisgICAgICAgICogV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2o6Cisg
ICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorCisgICAgICAgICAg
ICBBZGRpbmcgQ1NTVmFsdWUuY3BwLgorCisgICAgICAgICogY3NzL0NTU1ZhbHVlLmNwcDogQWRk
ZWQuCisgICAgICAgIChXZWJDb3JlOjpDU1NWYWx1ZTo6Y3NzVmFsdWVUeXBlKToKKworICAgICAg
ICAgICAgT3V0LW9mLWxpbmUgaW1wbGVtZW50YXRpb24gb2YgdGhpcyBtZXRob2QuIE9ubHkgdXNl
ZCBieSBDU1NPTS4KKworICAgICAgICAqIGNzcy9DU1NWYWx1ZS5oOgorICAgICAgICAoV2ViQ29y
ZTo6Q1NTVmFsdWU6OmlzTXV0YWJsZVZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVl
Ojppc1ByaW1pdGl2ZVZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVlOjppc1ZhbHVl
TGlzdCk6CisgICAgICAgIChXZWJDb3JlOjpDU1NWYWx1ZTo6aXNJbml0aWFsVmFsdWUpOgorICAg
ICAgICAoV2ViQ29yZTo6Q1NTVmFsdWU6OmlzSW5oZXJpdGVkVmFsdWUpOgorICAgICAgICAoV2Vi
Q29yZTo6Q1NTVmFsdWU6OmlzQm9yZGVySW1hZ2VWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpD
U1NWYWx1ZTo6aXNCb3JkZXJJbWFnZVNsaWNlVmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6Q1NT
VmFsdWU6OmlzQ3Vyc29ySW1hZ2VWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpDU1NWYWx1ZTo6
aXNGb250RmFtaWx5VmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTVmFsdWU6OmlzRm9udEZl
YXR1cmVWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpDU1NWYWx1ZTo6aXNGb250VmFsdWUpOgor
ICAgICAgICAoV2ViQ29yZTo6Q1NTVmFsdWU6OmlzSW1hZ2VHZW5lcmF0b3JWYWx1ZSk6CisgICAg
ICAgIChXZWJDb3JlOjpDU1NWYWx1ZTo6aXNJbWFnZVZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6
OkNTU1ZhbHVlOjppc0ltcGxpY2l0SW5pdGlhbFZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OkNT
U1ZhbHVlOjppc1JlZmxlY3RWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpDU1NWYWx1ZTo6aXNT
aGFkb3dWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpDU1NWYWx1ZTo6aXNUaW1pbmdGdW5jdGlv
blZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVlOjppc1dlYktpdENTU1RyYW5zZm9y
bVZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVlOjppc0NTU0xpbmVCb3hDb250YWlu
VmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTVmFsdWU6OmlzRmxleFZhbHVlKToKKyAgICAg
ICAgKFdlYkNvcmU6OkNTU1ZhbHVlOjppc1dlYktpdENTU0ZpbHRlclZhbHVlKToKKyAgICAgICAg
KFdlYkNvcmU6OkNTU1ZhbHVlOjppc1NWR0NvbG9yKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1Zh
bHVlOjppc1NWR1BhaW50KToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVlOjpjbGFzc1R5cGUp
OgorICAgICAgICAoV2ViQ29yZTo6Q1NTVmFsdWU6OkNTU1ZhbHVlKToKKyAgICAgICAgKFdlYkNv
cmU6OkNTU1ZhbHVlOjppc1ByaW1pdGl2ZVR5cGUpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTVmFs
dWU6OmlzTGlzdFR5cGUpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTVmFsdWU6OmlzTXV0YWJsZVR5
cGUpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTVmFsdWU6OmlzSW5oZXJpdGVkVHlwZSk6CisgICAg
ICAgIChXZWJDb3JlOjpDU1NWYWx1ZTo6aXNJbml0aWFsVHlwZSk6CisKKyAgICAgICAgICAgIFN0
b3JlIHN1YmNsYXNzIHR5cGUgaW5mb3JtYXRpb24gaW50byBhIG1lbWJlciB2YXJpYWJsZSBhbmQK
KyAgICAgICAgICAgIG1hZGUgYWxsIHRoZSBpc0Zvb1ZhbHVlKCkgZnVuY3Rpb25zIG5vbi12aXJ0
dWFsIGFuZCBpbmxpbmUuCisgICAgICAgICAgICBTb21lIHN1YmNsYXNzIHR5cGUgbG9va3VwcyAo
cHJpbWl0aXZlIHZhbHVlcywgbm90YWJseSkgYXJlCisgICAgICAgICAgICBjYWNoZWQgaW4gYSBi
b29sIG1lbWJlciBvbiBjb25zdHJ1Y3Rpb24uCisKKyAgICAgICAgKiBjc3MvQ1NTQXNwZWN0UmF0
aW9WYWx1ZS5oOgorICAgICAgICAoV2ViQ29yZTo6Q1NTQXNwZWN0UmF0aW9WYWx1ZTo6Q1NTQXNw
ZWN0UmF0aW9WYWx1ZSk6CisgICAgICAgICogY3NzL0NTU0JvcmRlckltYWdlU2xpY2VWYWx1ZS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NCb3JkZXJJbWFnZVNsaWNlVmFsdWU6OkNTU0JvcmRl
ckltYWdlU2xpY2VWYWx1ZSk6CisgICAgICAgICogY3NzL0NTU0JvcmRlckltYWdlU2xpY2VWYWx1
ZS5oOgorICAgICAgICAqIGNzcy9DU1NCb3JkZXJJbWFnZVZhbHVlLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkNTU0JvcmRlckltYWdlVmFsdWU6OkNTU0JvcmRlckltYWdlVmFsdWUpOgorICAgICAg
ICAqIGNzcy9DU1NCb3JkZXJJbWFnZVZhbHVlLmg6CisgICAgICAgICogY3NzL0NTU0NhbnZhc1Zh
bHVlLmg6CisgICAgICAgIChXZWJDb3JlOjpDU1NDYW52YXNWYWx1ZTo6Q1NTQ2FudmFzVmFsdWUp
OgorICAgICAgICAqIGNzcy9DU1NDcm9zc2ZhZGVWYWx1ZS5oOgorICAgICAgICAoV2ViQ29yZTo6
Q1NTQ3Jvc3NmYWRlVmFsdWU6OkNTU0Nyb3NzZmFkZVZhbHVlKToKKyAgICAgICAgKiBjc3MvQ1NT
Q3Vyc29ySW1hZ2VWYWx1ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NDdXJzb3JJbWFnZVZh
bHVlOjpDU1NDdXJzb3JJbWFnZVZhbHVlKToKKyAgICAgICAgKiBjc3MvQ1NTQ3Vyc29ySW1hZ2VW
YWx1ZS5oOgorICAgICAgICAqIGNzcy9DU1NGbGV4VmFsdWUuaDoKKyAgICAgICAgKFdlYkNvcmU6
OkNTU0ZsZXhWYWx1ZTo6Q1NTRmxleFZhbHVlKToKKyAgICAgICAgKiBjc3MvQ1NTRm9udEZhY2VT
cmNWYWx1ZS5oOgorICAgICAgICAoV2ViQ29yZTo6Q1NTRm9udEZhY2VTcmNWYWx1ZTo6Q1NTRm9u
dEZhY2VTcmNWYWx1ZSk6CisgICAgICAgICogY3NzL0NTU0Z1bmN0aW9uVmFsdWUuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6Q1NTRnVuY3Rpb25WYWx1ZTo6Q1NTRnVuY3Rpb25WYWx1ZSk6CisgICAg
ICAgICogY3NzL0NTU0dyYWRpZW50VmFsdWUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU0dyYWRp
ZW50VmFsdWU6OmlzTGluZWFyR3JhZGllbnQpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTR3JhZGll
bnRWYWx1ZTo6aXNSYWRpYWxHcmFkaWVudCk6CisgICAgICAgIChXZWJDb3JlOjpDU1NHcmFkaWVu
dFZhbHVlOjpDU1NHcmFkaWVudFZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU0xpbmVhckdy
YWRpZW50VmFsdWU6OkNTU0xpbmVhckdyYWRpZW50VmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6
Q1NTUmFkaWFsR3JhZGllbnRWYWx1ZTo6Q1NTUmFkaWFsR3JhZGllbnRWYWx1ZSk6CisgICAgICAg
ICogY3NzL0NTU0ltYWdlR2VuZXJhdG9yVmFsdWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NT
SW1hZ2VHZW5lcmF0b3JWYWx1ZTo6Q1NTSW1hZ2VHZW5lcmF0b3JWYWx1ZSk6CisgICAgICAgICog
Y3NzL0NTU0ltYWdlR2VuZXJhdG9yVmFsdWUuaDoKKyAgICAgICAgKiBjc3MvQ1NTSW1hZ2VWYWx1
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NJbWFnZVZhbHVlOjpDU1NJbWFnZVZhbHVlKToK
KyAgICAgICAgKiBjc3MvQ1NTSW1hZ2VWYWx1ZS5oOgorICAgICAgICAqIGNzcy9DU1NJbmhlcml0
ZWRWYWx1ZS5oOgorICAgICAgICAoV2ViQ29yZTo6Q1NTSW5oZXJpdGVkVmFsdWU6OkNTU0luaGVy
aXRlZFZhbHVlKToKKyAgICAgICAgKiBjc3MvQ1NTSW5pdGlhbFZhbHVlLmg6CisgICAgICAgIChX
ZWJDb3JlOjpDU1NJbml0aWFsVmFsdWU6OkNTU0luaXRpYWxWYWx1ZSk6CisgICAgICAgIChXZWJD
b3JlOjpDU1NJbml0aWFsVmFsdWU6OmNyZWF0ZSk6CisgICAgICAgICogY3NzL0NTU0xpbmVCb3hD
b250YWluVmFsdWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTTGluZUJveENvbnRhaW5WYWx1
ZTo6Q1NTTGluZUJveENvbnRhaW5WYWx1ZSk6CisgICAgICAgICogY3NzL0NTU0xpbmVCb3hDb250
YWluVmFsdWUuaDoKKyAgICAgICAgKiBjc3MvQ1NTTXV0YWJsZVZhbHVlLmg6CisgICAgICAgIChX
ZWJDb3JlOjpDU1NNdXRhYmxlVmFsdWU6OkNTU011dGFibGVWYWx1ZSk6CisgICAgICAgICogY3Nz
L0NTU1ByaW1pdGl2ZVZhbHVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ByaW1pdGl2ZVZh
bHVlOjpDU1NQcmltaXRpdmVWYWx1ZSk6CisgICAgICAgICogY3NzL0NTU1ByaW1pdGl2ZVZhbHVl
Lmg6CisgICAgICAgIChXZWJDb3JlOjpDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFs
dWUpOgorICAgICAgICAqIGNzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmg6CisgICAgICAg
IChXZWJDb3JlOjpDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUpOgorICAgICAg
ICAqIGNzcy9DU1NSZWZsZWN0VmFsdWUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1JlZmxlY3RW
YWx1ZTo6Q1NTUmVmbGVjdFZhbHVlKToKKyAgICAgICAgKiBjc3MvQ1NTVGltaW5nRnVuY3Rpb25W
YWx1ZS5oOgorICAgICAgICAoV2ViQ29yZTo6Q1NTVGltaW5nRnVuY3Rpb25WYWx1ZTo6aXNMaW5l
YXJUaW1pbmdGdW5jdGlvblZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1RpbWluZ0Z1bmN0
aW9uVmFsdWU6OmlzQ3ViaWNCZXppZXJUaW1pbmdGdW5jdGlvblZhbHVlKToKKyAgICAgICAgKFdl
YkNvcmU6OkNTU1RpbWluZ0Z1bmN0aW9uVmFsdWU6OmlzU3RlcHNUaW1pbmdGdW5jdGlvblZhbHVl
KToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1RpbWluZ0Z1bmN0aW9uVmFsdWU6OkNTU1RpbWluZ0Z1
bmN0aW9uVmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTTGluZWFyVGltaW5nRnVuY3Rpb25W
YWx1ZTo6Q1NTTGluZWFyVGltaW5nRnVuY3Rpb25WYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpD
U1NDdWJpY0JlemllclRpbWluZ0Z1bmN0aW9uVmFsdWU6OkNTU0N1YmljQmV6aWVyVGltaW5nRnVu
Y3Rpb25WYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpDU1NTdGVwc1RpbWluZ0Z1bmN0aW9uVmFs
dWU6OkNTU1N0ZXBzVGltaW5nRnVuY3Rpb25WYWx1ZSk6CisgICAgICAgICogY3NzL0NTU1VuaWNv
ZGVSYW5nZVZhbHVlLmg6CisgICAgICAgIChXZWJDb3JlOjpDU1NVbmljb2RlUmFuZ2VWYWx1ZTo6
Q1NTVW5pY29kZVJhbmdlVmFsdWUpOgorICAgICAgICAqIGNzcy9DU1NWYWx1ZUxpc3QuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6Q1NTVmFsdWVMaXN0OjpDU1NWYWx1ZUxpc3QpOgorICAgICAgICAq
IGNzcy9DU1NWYWx1ZUxpc3QuaDoKKyAgICAgICAgKiBjc3MvRm9udEZhbWlseVZhbHVlLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkZvbnRGYW1pbHlWYWx1ZTo6Rm9udEZhbWlseVZhbHVlKToKKyAg
ICAgICAgKiBjc3MvRm9udEZhbWlseVZhbHVlLmg6CisgICAgICAgICogY3NzL0ZvbnRGZWF0dXJl
VmFsdWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rm9udEZlYXR1cmVWYWx1ZTo6Rm9udEZlYXR1
cmVWYWx1ZSk6CisgICAgICAgICogY3NzL0ZvbnRGZWF0dXJlVmFsdWUuaDoKKyAgICAgICAgKiBj
c3MvRm9udFZhbHVlLmg6CisgICAgICAgIChXZWJDb3JlOjpGb250VmFsdWU6OkZvbnRWYWx1ZSk6
CisgICAgICAgICogY3NzL1NoYWRvd1ZhbHVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNoYWRv
d1ZhbHVlOjpTaGFkb3dWYWx1ZSk6CisgICAgICAgICogY3NzL1NoYWRvd1ZhbHVlLmg6CisgICAg
ICAgICogY3NzL1dlYktpdENTU0ZpbHRlclZhbHVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Oldl
YktpdENTU0ZpbHRlclZhbHVlOjpXZWJLaXRDU1NGaWx0ZXJWYWx1ZSk6CisgICAgICAgICogY3Nz
L1dlYktpdENTU0ZpbHRlclZhbHVlLmg6CisgICAgICAgICogY3NzL1dlYktpdENTU1RyYW5zZm9y
bVZhbHVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldlYktpdENTU1RyYW5zZm9ybVZhbHVlOjpX
ZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZSk6CisgICAgICAgICogY3NzL1dlYktpdENTU1RyYW5zZm9y
bVZhbHVlLmg6CisgICAgICAgICogc3ZnL1NWR0NvbG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OlNWR0NvbG9yOjpTVkdDb2xvcik6CisgICAgICAgICogc3ZnL1NWR0NvbG9yLmg6CisgICAgICAg
ICogc3ZnL1NWR1BhaW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR1BhaW50OjpTVkdQYWlu
dCk6CisgICAgICAgICogc3ZnL1NWR1BhaW50Lmg6CisKKyAgICAgICAgICAgIFByb3BhZ2F0ZSBz
dWJjbGFzcyB0eXBlIGluZm9ybWF0aW9uIGFuZCBraWxsIGlzRm9vVHlwZSgpIHZpcnR1YWxzLgor
CisyMDExLTExLTA3ICBBbmRyZWFzIEtsaW5nICA8a2xpbmdAd2Via2l0Lm9yZz4KKwogICAgICAg
ICBEb24ndCB1c2UgQ1NTT00ncyBDU1NWYWx1ZS5jc3NWYWx1ZVR5cGUgaW50ZXJuYWxseSBpbiBX
ZWJDb3JlLgogICAgICAgICA8aHR0cDovL3dlYmtpdC5vcmcvYi83MTY3OT4KIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbSBiL1NvdXJjZS9XZWJDb3JlL0dO
VW1ha2VmaWxlLmxpc3QuYW0KaW5kZXggYTljMmJiNS4uOTg3MWRhNSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9HTlVt
YWtlZmlsZS5saXN0LmFtCkBAIC0xMDY0LDYgKzEwNjQsNyBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0g
XAogCVNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NVbmljb2RlUmFuZ2VWYWx1ZS5jcHAgXAogCVNvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NVbmljb2RlUmFuZ2VWYWx1ZS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTVW5rbm93blJ1bGUuaCBcCisJU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlLmNwcCBc
CiAJU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlLmggXAogCVNvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NWYWx1ZUxpc3QuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWVMaXN0LmggXApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaSBiL1NvdXJjZS9XZWJDb3JlL1Rh
cmdldC5wcmkKaW5kZXggODdkNTRhMi4uYTExMGQ0ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvVGFyZ2V0LnByaQorKysgYi9Tb3VyY2UvV2ViQ29yZS9UYXJnZXQucHJpCkBAIC00NDQsNiAr
NDQ0LDcgQEAgU09VUkNFUyArPSBcCiAgICAgY3NzL0NTU1N0eWxlU2hlZXQuY3BwIFwKICAgICBj
c3MvQ1NTVGltaW5nRnVuY3Rpb25WYWx1ZS5jcHAgXAogICAgIGNzcy9DU1NVbmljb2RlUmFuZ2VW
YWx1ZS5jcHAgXAorICAgIGNzcy9DU1NWYWx1ZS5jcHAgXAogICAgIGNzcy9DU1NWYWx1ZUxpc3Qu
Y3BwIFwKICAgICBjc3MvQ1NTV3JhcFNoYXBlcy5jcHAgXAogICAgIGNzcy9Gb250RmFtaWx5VmFs
dWUuY3BwIFwKQEAgLTE1MzQsNiArMTUzNSw4IEBAIEhFQURFUlMgKz0gXAogICAgIGNzcy9DU1NT
dHlsZVNoZWV0LmggXAogICAgIGNzcy9DU1NUaW1pbmdGdW5jdGlvblZhbHVlLmggXAogICAgIGNz
cy9DU1NVbmljb2RlUmFuZ2VWYWx1ZS5oIFwKKyAgICBjc3MvQ1NTVmFsdWUuY3BwIFwKKyAgICBj
c3MvQ1NTVmFsdWUuaCBcCiAgICAgY3NzL0NTU1ZhbHVlTGlzdC5oIFwKICAgICBjc3MvQ1NTV3Jh
cFNoYXBlcy5oIFwKICAgICBjc3MvRm9udEZhbWlseVZhbHVlLmggXApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpCmlu
ZGV4IGJhMGNlMjYuLmE5NDUzYjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
Z3lwaQorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkKQEAgLTI0MTksNiArMjQxOSw3
IEBACiAgICAgICAgICAgICAnY3NzL0NTU1VuaWNvZGVSYW5nZVZhbHVlLmNwcCcsCiAgICAgICAg
ICAgICAnY3NzL0NTU1VuaWNvZGVSYW5nZVZhbHVlLmgnLAogICAgICAgICAgICAgJ2Nzcy9DU1NV
bmtub3duUnVsZS5oJywKKyAgICAgICAgICAgICdjc3MvQ1NTVmFsdWUuY3BwJywKICAgICAgICAg
ICAgICdjc3MvQ1NTVmFsdWVMaXN0LmNwcCcsCiAgICAgICAgICAgICAnY3NzL0NTU1dyYXBTaGFw
ZXMuY3BwJywKICAgICAgICAgICAgICdjc3MvQ291bnRlci5oJywKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qIGIvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKaW5kZXggNWJmMWRhYS4uNWM1NjJkZiAxMDA3
NTUKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKKysr
IGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKQEAgLTMyNzA2
LDYgKzMyNzA2LDEwIEBACiAJCQkJPgogCQkJPC9GaWxlPgogCQkJPEZpbGUKKwkJCQlSZWxhdGl2
ZVBhdGg9Ii4uXGNzc1xDU1NWYWx1ZS5jcHAiCisJCQkJPgorCQkJPC9GaWxlPgorCQkJPEZpbGUK
IAkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGNzc1xDU1NWYWx1ZS5oIgogCQkJCT4KIAkJCTwvRmlsZT4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpp
bmRleCBjMWRjNmJiLi4wMzI2YmM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC00MTM4LDYgKzQxMzgsNyBAQAogCQlBQkMxMjg3
NzBCMzNBQTZEMDBDNjkzRDUgLyogUG9wdXBNZW51Q2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBQkMxMjg3NjBCMzNBQTZEMDBDNjkzRDUgLyog
UG9wdXBNZW51Q2xpZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKIAkJQUJEREZFNzkwQTVDNkU3MDAwQTNFMTFEIC8qIFJlbmRlck1lbnVMaXN0LmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEFCRERGRTcz
MEE1QzZFNkYwMEEzRTExRCAvKiBSZW5kZXJNZW51TGlzdC5jcHAgKi87IH07CiAJCUFCRERGRTdB
MEE1QzZFNzAwMEEzRTExRCAvKiBSZW5kZXJNZW51TGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQUJEREZFNzQwQTVDNkU3MDAwQTNFMTFEIC8qIFJl
bmRlck1lbnVMaXN0LmggKi87IH07CisJCUFEMDNBQUZBMTQ2ODQ1NTMwMEEzOUI1QiAvKiBDU1NW
YWx1ZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBB
RDAzQUFGODE0Njg0NTM5MDBBMzlCNUIgLyogQ1NTVmFsdWUuY3BwICovOyB9OwogCQlBRDQ0OTVG
MzE0MUZDMDg5MDA1NDFFREYgLyogRXZlbnRMaXN0ZW5lck1hcC5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBRDQ0OTVGMTE0MUZDMDg5MDA1NDFFREYg
LyogRXZlbnRMaXN0ZW5lck1hcC5jcHAgKi87IH07CiAJCUFENDQ5NUY0MTQxRkMwODkwMDU0MUVE
RiAvKiBFdmVudExpc3RlbmVyTWFwLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBBRDQ0OTVGMjE0MUZDMDg5MDA1NDFFREYgLyogRXZlbnRMaXN0ZW5lck1h
cC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUFE
REYxQUQ3MTI1N0NEOUEwMDAzQTc1OSAvKiBSZW5kZXJTVkdQYXRoLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBRERGMUFENTEyNTdDRDlBMDAwM0E3NTkg
LyogUmVuZGVyU1ZHUGF0aC5oICovOyB9OwpAQCAtMTEyMzIsNiArMTEyMzMsNyBAQAogCQlBQkMx
Mjg3NjBCMzNBQTZEMDBDNjkzRDUgLyogUG9wdXBNZW51Q2xpZW50LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBQb3B1cE1lbnVDbGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJQUJEREZFNzMwQTVDNkU2RjAwQTNFMTFEIC8qIFJlbmRlck1lbnVMaXN0LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW5kZXJNZW51TGlzdC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUFCRERGRTc0MEE1QzZFNzAwMEEzRTEx
RCAvKiBSZW5kZXJNZW51TGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
UmVuZGVyTWVudUxpc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQUQwM0FBRjgx
NDY4NDUzOTAwQTM5QjVCIC8qIENTU1ZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IENTU1ZhbHVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
QUQ0NDk1RjExNDFGQzA4OTAwNTQxRURGIC8qIEV2ZW50TGlzdGVuZXJNYXAuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRXZlbnRMaXN0ZW5lck1hcC5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUFENDQ5NUYyMTQxRkMwODkwMDU0MUVERiAvKiBFdmVu
dExpc3RlbmVyTWFwLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEV2ZW50TGlz
dGVuZXJNYXAuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQURERjFBRDQxMjU3Q0Q5
QTAwMDNBNzU5IC8qIFJlbmRlclNWR1BhdGguY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gUmVuZGVyU1ZHUGF0aC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CkBAIC0yMDUwNSw2ICsyMDUwNyw3IEBACiAJCUY1MjNEMTg0MDJERTQyRTgwMTg2MzVDQSAvKiBj
c3MgKi8gPSB7CiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJCWNoaWxkcmVuID0gKAorCQkJCUFEMDNB
QUY4MTQ2ODQ1MzkwMEEzOUI1QiAvKiBDU1NWYWx1ZS5jcHAgKi8sCiAJCQkJQ0FFOUY5MEQxNDY0
NDFGMDAwQzI0NUIwIC8qIENTU0FzcGVjdFJhdGlvVmFsdWUuY3BwICovLAogCQkJCUNBRTlGOTBF
MTQ2NDQxRjAwMEMyNDVCMCAvKiBDU1NBc3BlY3RSYXRpb1ZhbHVlLmggKi8sCiAJCQkJOTNDQTRD
OUMwOURGOTNGQTAwREY4Njc3IC8qIG1ha2V0b2tlbml6ZXIgKi8sCkBAIC0yNDk2Nyw2ICsyNDk3
MCw3IEBACiAJCQlpc2EgPSBQQlhTb3VyY2VzQnVpbGRQaGFzZTsKIAkJCWJ1aWxkQWN0aW9uTWFz
ayA9IDIxNDc0ODM2NDc7CiAJCQlmaWxlcyA9ICgKKwkJCQlBRDAzQUFGQTE0Njg0NTUzMDBBMzlC
NUIgLyogQ1NTVmFsdWUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQjVCNURDNjkxMTlCQjNENTAw
MkE4NzkwIC8qIEFic3RyYWN0RGF0YWJhc2UuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNDFFMUIx
RDAwRkY1OTg2OTAwNTc2QjNCIC8qIEFic3RyYWN0V29ya2VyLmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCTBGMjlDMTZFMTMwMEMyRTIwMDJENzk0RSAvKiBBY2Nlc3NpYmlsaXR5QWxsSW5PbmUuY3Bw
IGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQXNwZWN0
UmF0aW9WYWx1ZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0FzcGVjdFJhdGlvVmFsdWUuaApp
bmRleCBmZTA5NDVlLi4zN2JlYzlkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
QXNwZWN0UmF0aW9WYWx1ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NBc3BlY3RSYXRp
b1ZhbHVlLmgKQEAgLTUwLDcgKzUwLDggQEAgcHVibGljOgogCiBwcml2YXRlOgogICAgIENTU0Fz
cGVjdFJhdGlvVmFsdWUoZmxvYXQgbnVtZXJhdG9yVmFsdWUsIGZsb2F0IGRlbm9taW5hdG9yVmFs
dWUpCi0gICAgICAgIDogbV9udW1lcmF0b3JWYWx1ZShudW1lcmF0b3JWYWx1ZSkKKyAgICAgICAg
OiBDU1NWYWx1ZShBc3BlY3RSYXRpb0NsYXNzKQorICAgICAgICAsIG1fbnVtZXJhdG9yVmFsdWUo
bnVtZXJhdG9yVmFsdWUpCiAgICAgICAgICwgbV9kZW5vbWluYXRvclZhbHVlKGRlbm9taW5hdG9y
VmFsdWUpCiAgICAgewogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NC
b3JkZXJJbWFnZVNsaWNlVmFsdWUuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0JvcmRlcklt
YWdlU2xpY2VWYWx1ZS5jcHAKaW5kZXggYmNlMzBhYS4uM2JkY2JkYiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvY3NzL0NTU0JvcmRlckltYWdlU2xpY2VWYWx1ZS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU0JvcmRlckltYWdlU2xpY2VWYWx1ZS5jcHAKQEAgLTMyLDcgKzMyLDgg
QEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogQ1NTQm9yZGVySW1hZ2VTbGljZVZhbHVlOjpDU1NC
b3JkZXJJbWFnZVNsaWNlVmFsdWUoUGFzc1JlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gc2xpY2Vz
LCBib29sIGZpbGwpCi0gICAgOiBtX3NsaWNlcyhzbGljZXMpCisgICAgOiBDU1NWYWx1ZShCb3Jk
ZXJJbWFnZVNsaWNlQ2xhc3MpCisgICAgLCBtX3NsaWNlcyhzbGljZXMpCiAgICAgLCBtX2ZpbGwo
ZmlsbCkKIHsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NCb3JkZXJJbWFn
ZVNsaWNlVmFsdWUuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NCb3JkZXJJbWFnZVNsaWNlVmFs
dWUuaAppbmRleCBjNmFkYmFhLi5iN2YxZjAzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTQm9yZGVySW1hZ2VTbGljZVZhbHVlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NT
U0JvcmRlckltYWdlU2xpY2VWYWx1ZS5oCkBAIC01Myw3ICs1Myw2IEBAIHB1YmxpYzoKIAogcHJp
dmF0ZToKICAgICBDU1NCb3JkZXJJbWFnZVNsaWNlVmFsdWUoUGFzc1JlZlB0cjxDU1NQcmltaXRp
dmVWYWx1ZT4gc2xpY2VzLCBib29sIGZpbGwpOwotICAgIHZpcnR1YWwgYm9vbCBpc0JvcmRlcklt
YWdlU2xpY2VWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KIH07CiAKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NCb3JkZXJJbWFn
ZVZhbHVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NCb3JkZXJJbWFnZVZhbHVlLmNwcApp
bmRleCA4MjVkMGZiLi43YzBhMzRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
Qm9yZGVySW1hZ2VWYWx1ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0JvcmRlcklt
YWdlVmFsdWUuY3BwCkBAIC0yOCw3ICsyOCw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogQ1NT
Qm9yZGVySW1hZ2VWYWx1ZTo6Q1NTQm9yZGVySW1hZ2VWYWx1ZShQYXNzUmVmUHRyPENTU1ZhbHVl
PiBpbWFnZSwgUGFzc1JlZlB0cjxDU1NCb3JkZXJJbWFnZVNsaWNlVmFsdWU+IGltYWdlU2xpY2Us
CiAgICAgUGFzc1JlZlB0cjxDU1NWYWx1ZT4gYm9yZGVyU2xpY2UsIFBhc3NSZWZQdHI8Q1NTVmFs
dWU+IG91dHNldCwgUGFzc1JlZlB0cjxDU1NWYWx1ZT4gcmVwZWF0KQotICAgIDogbV9pbWFnZShp
bWFnZSkKKyAgICA6IENTU1ZhbHVlKEJvcmRlckltYWdlQ2xhc3MpCisgICAgLCBtX2ltYWdlKGlt
YWdlKQogICAgICwgbV9pbWFnZVNsaWNlKGltYWdlU2xpY2UpCiAgICAgLCBtX2JvcmRlclNsaWNl
KGJvcmRlclNsaWNlKQogICAgICwgbV9vdXRzZXQob3V0c2V0KQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvY3NzL0NTU0JvcmRlckltYWdlVmFsdWUuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NCb3JkZXJJbWFnZVZhbHVlLmgKaW5kZXggNjkwMWE2YS4uYzVmYTg3OSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvY3NzL0NTU0JvcmRlckltYWdlVmFsdWUuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTQm9yZGVySW1hZ2VWYWx1ZS5oCkBAIC02NCw3ICs2NCw2IEBAIHB1YmxpYzoK
IHByaXZhdGU6CiAgICAgQ1NTQm9yZGVySW1hZ2VWYWx1ZShQYXNzUmVmUHRyPENTU1ZhbHVlPiBp
bWFnZSwgUGFzc1JlZlB0cjxDU1NCb3JkZXJJbWFnZVNsaWNlVmFsdWU+LCBQYXNzUmVmUHRyPENT
U1ZhbHVlPiBib3JkZXJTbGljZSwKICAgICAgICAgUGFzc1JlZlB0cjxDU1NWYWx1ZT4gb3V0c2V0
LCBQYXNzUmVmUHRyPENTU1ZhbHVlPiByZXBlYXQpOwotICAgIHZpcnR1YWwgYm9vbCBpc0JvcmRl
ckltYWdlVmFsdWUoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9CiB9OwogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ2FudmFzVmFsdWUu
aCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDYW52YXNWYWx1ZS5oCmluZGV4IDZmMzg5ODUuLjRj
ZWUyZjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDYW52YXNWYWx1ZS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDYW52YXNWYWx1ZS5oCkBAIC00OCw3ICs0OCw4IEBA
IHB1YmxpYzoKIAogcHJpdmF0ZToKICAgICBDU1NDYW52YXNWYWx1ZSgpCi0gICAgICAgIDogbV9l
bGVtZW50KDApCisgICAgICAgIDogQ1NTSW1hZ2VHZW5lcmF0b3JWYWx1ZShDYW52YXNDbGFzcykK
KyAgICAgICAgLCBtX2VsZW1lbnQoMCkKICAgICB7CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTQ3Jvc3NmYWRlVmFsdWUuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NDcm9zc2ZhZGVWYWx1ZS5oCmluZGV4IDU2NTk3NWEuLjQwMzE4MmUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NDcm9zc2ZhZGVWYWx1ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NDcm9zc2ZhZGVWYWx1ZS5oCkBAIC01MCw4ICs1MCw5IEBAIHB1YmxpYzoKIAogcHJp
dmF0ZToKICAgICBDU1NDcm9zc2ZhZGVWYWx1ZShQYXNzUmVmUHRyPENTU0ltYWdlVmFsdWU+IGZy
b21JbWFnZSwgUGFzc1JlZlB0cjxDU1NJbWFnZVZhbHVlPiB0b0ltYWdlKQotICAgIDogbV9mcm9t
SW1hZ2UoZnJvbUltYWdlKQotICAgICwgbV90b0ltYWdlKHRvSW1hZ2UpCisgICAgICAgIDogQ1NT
SW1hZ2VHZW5lcmF0b3JWYWx1ZShDcm9zc2ZhZGVDbGFzcykKKyAgICAgICAgLCBtX2Zyb21JbWFn
ZShmcm9tSW1hZ2UpCisgICAgICAgICwgbV90b0ltYWdlKHRvSW1hZ2UpCiAgICAgewogICAgIH0K
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0N1cnNvckltYWdlVmFsdWUuY3Bw
IGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0N1cnNvckltYWdlVmFsdWUuY3BwCmluZGV4IDI0ZWY4
ZmYuLjlkMWZhMmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDdXJzb3JJbWFn
ZVZhbHVlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ3Vyc29ySW1hZ2VWYWx1ZS5j
cHAKQEAgLTU0LDcgKzU0LDcgQEAgc3RhdGljIGlubGluZSBTVkdDdXJzb3JFbGVtZW50KiByZXNv
dXJjZVJlZmVyZW5jZWRCeUN1cnNvckVsZW1lbnQoY29uc3QgU3RyaW5nJgogI2VuZGlmCiAKIENT
U0N1cnNvckltYWdlVmFsdWU6OkNTU0N1cnNvckltYWdlVmFsdWUoY29uc3QgU3RyaW5nJiB1cmws
IGNvbnN0IEludFBvaW50JiBob3RTcG90KQotICAgIDogQ1NTSW1hZ2VWYWx1ZSh1cmwpCisgICAg
OiBDU1NJbWFnZVZhbHVlKEN1cnNvckltYWdlQ2xhc3MsIHVybCkKICAgICAsIG1faG90U3BvdCho
b3RTcG90KQogewogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0N1cnNvcklt
YWdlVmFsdWUuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDdXJzb3JJbWFnZVZhbHVlLmgKaW5k
ZXggZGUwM2ViOC4uMmE5NWMzYWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1ND
dXJzb3JJbWFnZVZhbHVlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0N1cnNvckltYWdl
VmFsdWUuaApAQCAtNTAsNyArNTAsNiBAQCBwdWJsaWM6CiAKIHByaXZhdGU6CiAgICAgQ1NTQ3Vy
c29ySW1hZ2VWYWx1ZShjb25zdCBTdHJpbmcmIHVybCwgY29uc3QgSW50UG9pbnQmIGhvdFNwb3Qp
OwotICAgIHZpcnR1YWwgYm9vbCBpc0N1cnNvckltYWdlVmFsdWUoKSBjb25zdCB7IHJldHVybiB0
cnVlOyB9CiAKICAgICBJbnRQb2ludCBtX2hvdFNwb3Q7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NGbGV4VmFsdWUuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGbGV4VmFs
dWUuaAppbmRleCBhMDNiZmZjLi5jMjY2MmVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTRmxleFZhbHVlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZsZXhWYWx1ZS5o
CkBAIC00NywxNSArNDcsMTQgQEAgcHVibGljOgogCiAgICAgdmlydHVhbCBTdHJpbmcgY3NzVGV4
dCgpIGNvbnN0OwogCi0gICAgdmlydHVhbCBib29sIGlzRmxleFZhbHVlKCkgY29uc3QgeyByZXR1
cm4gdHJ1ZTsgfQotCiAgICAgZmxvYXQgcG9zaXRpdmVGbGV4KCkgeyByZXR1cm4gbV9wb3NpdGl2
ZUZsZXg7IH0KICAgICBmbG9hdCBuZWdhdGl2ZUZsZXgoKSB7IHJldHVybiBtX25lZ2F0aXZlRmxl
eDsgfQogICAgIENTU1ByaW1pdGl2ZVZhbHVlKiBwcmVmZXJyZWRTaXplKCkgeyByZXR1cm4gbV9w
cmVmZXJyZWRTaXplLmdldCgpOyB9CiAKIHByaXZhdGU6CiAgICAgQ1NTRmxleFZhbHVlKGZsb2F0
IHBvc2l0aXZlRmxleCwgZmxvYXQgbmVnYXRpdmVGbGV4LCBQYXNzUmVmUHRyPENTU1ByaW1pdGl2
ZVZhbHVlPiBwcmVmZXJyZWRTaXplKQotICAgICAgICA6IG1fcG9zaXRpdmVGbGV4KHBvc2l0aXZl
RmxleCkKKyAgICAgICAgOiBDU1NWYWx1ZShGbGV4Q2xhc3MpCisgICAgICAgICwgbV9wb3NpdGl2
ZUZsZXgocG9zaXRpdmVGbGV4KQogICAgICAgICAsIG1fbmVnYXRpdmVGbGV4KG5lZ2F0aXZlRmxl
eCkKICAgICAgICAgLCBtX3ByZWZlcnJlZFNpemUocHJlZmVycmVkU2l6ZSkKICAgICB7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2VTcmNWYWx1ZS5oIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlU3JjVmFsdWUuaAppbmRleCBiYWVmYjYyLi40NDQyODY1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2VTcmNWYWx1ZS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZVNyY1ZhbHVlLmgKQEAgLTY4LDcgKzY4
LDggQEAgcHVibGljOgogCiBwcml2YXRlOgogICAgIENTU0ZvbnRGYWNlU3JjVmFsdWUoY29uc3Qg
U3RyaW5nJiByZXNvdXJjZSwgYm9vbCBsb2NhbCkKLSAgICAgICAgOiBtX3Jlc291cmNlKHJlc291
cmNlKQorICAgICAgICA6IENTU1ZhbHVlKEZvbnRGYWNlU3JjQ2xhc3MpCisgICAgICAgICwgbV9y
ZXNvdXJjZShyZXNvdXJjZSkKICAgICAgICAgLCBtX2lzTG9jYWwobG9jYWwpCiAjaWYgRU5BQkxF
KFNWR19GT05UUykKICAgICAgICAgLCBtX3N2Z0ZvbnRGYWNlRWxlbWVudCgwKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0Z1bmN0aW9uVmFsdWUuY3BwIGIvU291cmNlL1dlYkNv
cmUvY3NzL0NTU0Z1bmN0aW9uVmFsdWUuY3BwCmluZGV4IGQzM2YyMDQuLjQ5M2NiYjIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGdW5jdGlvblZhbHVlLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTRnVuY3Rpb25WYWx1ZS5jcHAKQEAgLTMzLDcgKzMzLDggQEAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAogQ1NTRnVuY3Rpb25WYWx1ZTo6Q1NTRnVuY3Rpb25WYWx1ZShD
U1NQYXJzZXJGdW5jdGlvbiogZnVuY3Rpb24pCi0gICAgOiBtX25hbWUoZnVuY3Rpb24tPm5hbWUp
CisgICAgOiBDU1NWYWx1ZShGdW5jdGlvbkNsYXNzKQorICAgICwgbV9uYW1lKGZ1bmN0aW9uLT5u
YW1lKQogewogICAgIGlmIChmdW5jdGlvbi0+YXJncykKICAgICAgICAgbV9hcmdzID0gQ1NTVmFs
dWVMaXN0OjpjcmVhdGVGcm9tUGFyc2VyVmFsdWVMaXN0KGZ1bmN0aW9uLT5hcmdzLmdldCgpKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NHcmFkaWVudFZhbHVlLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTR3JhZGllbnRWYWx1ZS5oCmluZGV4IDQ0ZWUxYzguLjA3MTFkZTIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NHcmFkaWVudFZhbHVlLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvY3NzL0NTU0dyYWRpZW50VmFsdWUuaApAQCAtNTksMTYgKzU5LDE3IEBA
IHB1YmxpYzoKIAogICAgIHZvaWQgc29ydFN0b3BzSWZOZWVkZWQoKTsKIAotICAgIHZpcnR1YWwg
Ym9vbCBpc0xpbmVhckdyYWRpZW50KCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KLSAgICB2aXJ0
dWFsIGJvb2wgaXNSYWRpYWxHcmFkaWVudCgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CisgICAg
Ym9vbCBpc0xpbmVhckdyYWRpZW50KCkgY29uc3QgeyByZXR1cm4gY2xhc3NUeXBlKCkgPT0gTGlu
ZWFyR3JhZGllbnRDbGFzczsgfQorICAgIGJvb2wgaXNSYWRpYWxHcmFkaWVudCgpIGNvbnN0IHsg
cmV0dXJuIGNsYXNzVHlwZSgpID09IFJhZGlhbEdyYWRpZW50Q2xhc3M7IH0KIAogICAgIGJvb2wg
aXNSZXBlYXRpbmcoKSBjb25zdCB7IHJldHVybiBtX3JlcGVhdGluZzsgfQogCiAgICAgYm9vbCBk
ZXByZWNhdGVkVHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1fZGVwcmVjYXRlZFR5cGU7IH0gLy8gY2Ft
ZSBmcm9tIC13ZWJraXQtZ3JhZGllbnQKIAogcHJvdGVjdGVkOgotICAgIENTU0dyYWRpZW50VmFs
dWUoQ1NTR3JhZGllbnRSZXBlYXQgcmVwZWF0LCBib29sIGRlcHJlY2F0ZWRUeXBlID0gZmFsc2Up
Ci0gICAgICAgIDogbV9zdG9wc1NvcnRlZChmYWxzZSkKKyAgICBDU1NHcmFkaWVudFZhbHVlKENs
YXNzVHlwZSBjbGFzc1R5cGUsIENTU0dyYWRpZW50UmVwZWF0IHJlcGVhdCwgYm9vbCBkZXByZWNh
dGVkVHlwZSA9IGZhbHNlKQorICAgICAgICA6IENTU0ltYWdlR2VuZXJhdG9yVmFsdWUoY2xhc3NU
eXBlKQorICAgICAgICAsIG1fc3RvcHNTb3J0ZWQoZmFsc2UpCiAgICAgICAgICwgbV9kZXByZWNh
dGVkVHlwZShkZXByZWNhdGVkVHlwZSkKICAgICAgICAgLCBtX3JlcGVhdGluZyhyZXBlYXQgPT0g
UmVwZWF0aW5nKQogICAgIHsKQEAgLTExMiwxMiArMTEzLDEwIEBAIHB1YmxpYzoKIAogcHJpdmF0
ZToKICAgICBDU1NMaW5lYXJHcmFkaWVudFZhbHVlKENTU0dyYWRpZW50UmVwZWF0IHJlcGVhdCwg
Ym9vbCBkZXByZWNhdGVkVHlwZSA9IGZhbHNlKQotICAgICAgICA6IENTU0dyYWRpZW50VmFsdWUo
cmVwZWF0LCBkZXByZWNhdGVkVHlwZSkKKyAgICAgICAgOiBDU1NHcmFkaWVudFZhbHVlKExpbmVh
ckdyYWRpZW50Q2xhc3MsIHJlcGVhdCwgZGVwcmVjYXRlZFR5cGUpCiAgICAgewogICAgIH0KIAot
ICAgIHZpcnR1YWwgYm9vbCBpc0xpbmVhckdyYWRpZW50KCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsg
fQotCiAgICAgLy8gQ3JlYXRlIHRoZSBncmFkaWVudCBmb3IgYSBnaXZlbiBzaXplLgogICAgIHZp
cnR1YWwgUGFzc1JlZlB0cjxHcmFkaWVudD4gY3JlYXRlR3JhZGllbnQoUmVuZGVyT2JqZWN0Kiwg
Y29uc3QgSW50U2l6ZSYpOwogCkBAIC0xNDQsMTIgKzE0MywxMCBAQCBwdWJsaWM6CiAKIHByaXZh
dGU6CiAgICAgQ1NTUmFkaWFsR3JhZGllbnRWYWx1ZShDU1NHcmFkaWVudFJlcGVhdCByZXBlYXQs
IGJvb2wgZGVwcmVjYXRlZFR5cGUgPSBmYWxzZSkKLSAgICAgICAgOiBDU1NHcmFkaWVudFZhbHVl
KHJlcGVhdCwgZGVwcmVjYXRlZFR5cGUpCisgICAgICAgIDogQ1NTR3JhZGllbnRWYWx1ZShSYWRp
YWxHcmFkaWVudENsYXNzLCByZXBlYXQsIGRlcHJlY2F0ZWRUeXBlKQogICAgIHsKICAgICB9CiAK
LSAgICB2aXJ0dWFsIGJvb2wgaXNSYWRpYWxHcmFkaWVudCgpIGNvbnN0IHsgcmV0dXJuIHRydWU7
IH0KLQogICAgIC8vIENyZWF0ZSB0aGUgZ3JhZGllbnQgZm9yIGEgZ2l2ZW4gc2l6ZS4KICAgICB2
aXJ0dWFsIFBhc3NSZWZQdHI8R3JhZGllbnQ+IGNyZWF0ZUdyYWRpZW50KFJlbmRlck9iamVjdCos
IGNvbnN0IEludFNpemUmKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0lt
YWdlR2VuZXJhdG9yVmFsdWUuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ltYWdlR2VuZXJh
dG9yVmFsdWUuY3BwCmluZGV4IDRlZjQ0ZjAuLjI1OGVmMGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NJbWFnZUdlbmVyYXRvclZhbHVlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTSW1hZ2VHZW5lcmF0b3JWYWx1ZS5jcHAKQEAgLTM1LDggKzM1LDkgQEAKIAogbmFt
ZXNwYWNlIFdlYkNvcmUgewogCi1DU1NJbWFnZUdlbmVyYXRvclZhbHVlOjpDU1NJbWFnZUdlbmVy
YXRvclZhbHVlKCkKLTogbV9hY2Nlc3NlZEltYWdlKGZhbHNlKQorQ1NTSW1hZ2VHZW5lcmF0b3JW
YWx1ZTo6Q1NTSW1hZ2VHZW5lcmF0b3JWYWx1ZShDbGFzc1R5cGUgY2xhc3NUeXBlKQorICAgIDog
Q1NTVmFsdWUoY2xhc3NUeXBlKQorICAgICwgbV9hY2Nlc3NlZEltYWdlKGZhbHNlKQogewogfQog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTSW1hZ2VHZW5lcmF0b3JWYWx1ZS5o
IGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ltYWdlR2VuZXJhdG9yVmFsdWUuaAppbmRleCBmZTM5
MWY1Li5iZjk5M2FhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTSW1hZ2VHZW5l
cmF0b3JWYWx1ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJbWFnZUdlbmVyYXRvclZh
bHVlLmgKQEAgLTQ5LDcgKzQ5LDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgSW50U2l6ZSBmaXhl
ZFNpemUoY29uc3QgUmVuZGVyT2JqZWN0KikgeyByZXR1cm4gSW50U2l6ZSgpOyB9CiAKIHByb3Rl
Y3RlZDoKLSAgICBDU1NJbWFnZUdlbmVyYXRvclZhbHVlKCk7CisgICAgQ1NTSW1hZ2VHZW5lcmF0
b3JWYWx1ZShDbGFzc1R5cGUpOwogCiAgICAgSW1hZ2UqIGdldEltYWdlKFJlbmRlck9iamVjdCos
IGNvbnN0IEludFNpemUmKTsKICAgICB2b2lkIHB1dEltYWdlKGNvbnN0IEludFNpemUmLCBQYXNz
UmVmUHRyPEltYWdlPik7CkBAIC01OCw5ICs1OCw2IEBAIHByb3RlY3RlZDoKICAgICBJbWFnZUJ5
U2l6ZUNhY2hlIG1faW1hZ2VDYWNoZTsKICAgICBSZWZQdHI8U3R5bGVHZW5lcmF0ZWRJbWFnZT4g
bV9pbWFnZTsKICAgICBib29sIG1fYWNjZXNzZWRJbWFnZTsKLQotcHJpdmF0ZToKLSAgICB2aXJ0
dWFsIGJvb2wgaXNJbWFnZUdlbmVyYXRvclZhbHVlKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQog
fTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU0ltYWdlVmFsdWUuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ltYWdlVmFsdWUu
Y3BwCmluZGV4IDJjZTQ4NmUuLjczZjUzYzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NJbWFnZVZhbHVlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTSW1hZ2VWYWx1
ZS5jcHAKQEAgLTMxLDE4ICszMSwyNCBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLUNTU0lt
YWdlVmFsdWU6OkNTU0ltYWdlVmFsdWUoY29uc3QgU3RyaW5nJiB1cmwpCi0gICAgOiBDU1NQcmlt
aXRpdmVWYWx1ZSh1cmwsIENTU19VUkkpCitDU1NJbWFnZVZhbHVlOjpDU1NJbWFnZVZhbHVlKENs
YXNzVHlwZSBjbGFzc1R5cGUsIGNvbnN0IFN0cmluZyYgdXJsKQorICAgIDogQ1NTUHJpbWl0aXZl
VmFsdWUoY2xhc3NUeXBlLCB1cmwsIENTU19VUkkpCiAgICAgLCBtX2FjY2Vzc2VkSW1hZ2UoZmFs
c2UpCiB7CiB9CiAKIENTU0ltYWdlVmFsdWU6OkNTU0ltYWdlVmFsdWUoKQotICAgIDogQ1NTUHJp
bWl0aXZlVmFsdWUoQ1NTVmFsdWVOb25lKQorICAgIDogQ1NTUHJpbWl0aXZlVmFsdWUoSW1hZ2VD
bGFzcywgQ1NTVmFsdWVOb25lKQogICAgICwgbV9hY2Nlc3NlZEltYWdlKHRydWUpCiB7CiB9CiAK
K0NTU0ltYWdlVmFsdWU6OkNTU0ltYWdlVmFsdWUoY29uc3QgU3RyaW5nJiB1cmwpCisgICAgOiBD
U1NQcmltaXRpdmVWYWx1ZShJbWFnZUNsYXNzLCB1cmwsIENTU19VUkkpCisgICAgLCBtX2FjY2Vz
c2VkSW1hZ2UoZmFsc2UpCit7Cit9CisKIENTU0ltYWdlVmFsdWU6On5DU1NJbWFnZVZhbHVlKCkK
IHsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJbWFnZVZhbHVlLmggYi9T
b3VyY2UvV2ViQ29yZS9jc3MvQ1NTSW1hZ2VWYWx1ZS5oCmluZGV4IDM0N2VkMzkuLjFjZmM1Yjkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJbWFnZVZhbHVlLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvY3NzL0NTU0ltYWdlVmFsdWUuaApAQCAtNDIsNyArNDIsNyBAQCBwdWJsaWM6
CiAgICAgU3R5bGVJbWFnZSogY2FjaGVkT3JQZW5kaW5nSW1hZ2UoKTsKIAogcHJvdGVjdGVkOgot
ICAgIENTU0ltYWdlVmFsdWUoY29uc3QgU3RyaW5nJiB1cmwpOworICAgIENTU0ltYWdlVmFsdWUo
Q2xhc3NUeXBlLCBjb25zdCBTdHJpbmcmIHVybCk7CiAKICAgICBTdHlsZUNhY2hlZEltYWdlKiBj
YWNoZWRJbWFnZShDYWNoZWRSZXNvdXJjZUxvYWRlciosIGNvbnN0IFN0cmluZyYgdXJsKTsKICAg
ICBTdHJpbmcgY2FjaGVkSW1hZ2VVUkwoKTsKQEAgLTUwLDcgKzUwLDcgQEAgcHJvdGVjdGVkOgog
CiBwcml2YXRlOgogICAgIENTU0ltYWdlVmFsdWUoKTsKLSAgICB2aXJ0dWFsIGJvb2wgaXNJbWFn
ZVZhbHVlKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQorICAgIENTU0ltYWdlVmFsdWUoY29uc3Qg
U3RyaW5nJiB1cmwpOwogCiAgICAgUmVmUHRyPFN0eWxlSW1hZ2U+IG1faW1hZ2U7CiAgICAgYm9v
bCBtX2FjY2Vzc2VkSW1hZ2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTSW5o
ZXJpdGVkVmFsdWUuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJbmhlcml0ZWRWYWx1ZS5oCmlu
ZGV4IGY5MDI4MTIuLmZhZWFhN2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJ
bmhlcml0ZWRWYWx1ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJbmhlcml0ZWRWYWx1
ZS5oCkBAIC0zNywxMSArMzcsOSBAQCBwdWJsaWM6CiAKIHByaXZhdGU6CiAgICAgQ1NTSW5oZXJp
dGVkVmFsdWUoKQotICAgICAgICA6IENTU1ZhbHVlKENTU19JTkhFUklUKQorICAgICAgICA6IENT
U1ZhbHVlKEluaGVyaXRlZENsYXNzKQogICAgIHsKICAgICB9Ci0KLSAgICB2aXJ0dWFsIGJvb2wg
aXNJbmhlcml0ZWRWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KIH07CiAKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJbml0aWFs
VmFsdWUuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJbml0aWFsVmFsdWUuaAppbmRleCAxZTJi
ZDc2Li4wNWYwZDUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTSW5pdGlhbFZh
bHVlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0luaXRpYWxWYWx1ZS5oCkBAIC00Myw4
ICs0Myw3IEBAIHB1YmxpYzoKIAogcHJpdmF0ZToKICAgICBDU1NJbml0aWFsVmFsdWUoYm9vbCBp
bXBsaWNpdCkKLSAgICAgICAgOiBDU1NWYWx1ZShDU1NfSU5JVElBTCkKLSAgICAgICAgLCBtX2lt
cGxpY2l0KGltcGxpY2l0KQorICAgICAgICA6IENTU1ZhbHVlKGltcGxpY2l0ID8gSW1wbGljaXRJ
bml0aWFsQ2xhc3MgOiBJbml0aWFsQ2xhc3MpCiAgICAgewogICAgIH0KIApAQCAtNTIsMTEgKzUx
LDYgQEAgcHJpdmF0ZToKICAgICB7CiAgICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgQ1NTSW5p
dGlhbFZhbHVlKGltcGxpY2l0KSk7CiAgICAgfQotCi0gICAgdmlydHVhbCBib29sIGlzSW5pdGlh
bFZhbHVlKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQotICAgIHZpcnR1YWwgYm9vbCBpc0ltcGxp
Y2l0SW5pdGlhbFZhbHVlKCkgY29uc3QgeyByZXR1cm4gbV9pbXBsaWNpdDsgfQotCi0gICAgYm9v
bCBtX2ltcGxpY2l0OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvY3NzL0NTU0xpbmVCb3hDb250YWluVmFsdWUuY3BwIGIvU291cmNlL1dl
YkNvcmUvY3NzL0NTU0xpbmVCb3hDb250YWluVmFsdWUuY3BwCmluZGV4IGIwMjkyODUuLjBmN2Ex
YzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NMaW5lQm94Q29udGFpblZhbHVl
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTTGluZUJveENvbnRhaW5WYWx1ZS5jcHAK
QEAgLTMyLDcgKzMyLDggQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogQ1NTTGluZUJveENvbnRh
aW5WYWx1ZTo6Q1NTTGluZUJveENvbnRhaW5WYWx1ZSh1bnNpZ25lZCB2YWx1ZSkKLSAgICA6IG1f
dmFsdWUodmFsdWUpCisgICAgOiBDU1NWYWx1ZShMaW5lQm94Q29udGFpbkNsYXNzKQorICAgICwg
bV92YWx1ZSh2YWx1ZSkKIHsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NT
U0xpbmVCb3hDb250YWluVmFsdWUuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NMaW5lQm94Q29u
dGFpblZhbHVlLmgKaW5kZXggOGQ2MmIxMS4uYmU5OWIwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvY3NzL0NTU0xpbmVCb3hDb250YWluVmFsdWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTTGluZUJveENvbnRhaW5WYWx1ZS5oCkBAIC01NSw3ICs1NSw2IEBAIHByaXZhdGU6CiAK
IHByaXZhdGU6CiAgICAgQ1NTTGluZUJveENvbnRhaW5WYWx1ZShMaW5lQm94Q29udGFpbik7Ci0g
ICAgdmlydHVhbCBib29sIGlzQ1NTTGluZUJveENvbnRhaW5WYWx1ZSgpIGNvbnN0IHsgcmV0dXJu
IHRydWU7IH0KIH07CiAKIH0gLy8gbmFtZXNwYWNlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTTXV0YWJsZVZhbHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTTXV0YWJsZVZh
bHVlLmgKaW5kZXggOGEzYWE3Mi4uNzRlYTVlZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU011dGFibGVWYWx1ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NNdXRhYmxl
VmFsdWUuaApAQCAtMjcsMTMgKzI3LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBD
U1NNdXRhYmxlVmFsdWUgOiBwdWJsaWMgQ1NTVmFsdWUgewogcHVibGljOgotICAgIENTU011dGFi
bGVWYWx1ZSgpCi0gICAgICAgIDogbV9ub2RlKDApCi0gICAgewotICAgIH0KLQogICAgIHZpcnR1
YWwgfkNTU011dGFibGVWYWx1ZSgpIHsgfQotICAgIHZpcnR1YWwgYm9vbCBpc011dGFibGVWYWx1
ZSgpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KIAogICAgIE5vZGUqIG5vZGUoKSBjb25zdCB7IHJl
dHVybiBtX25vZGU7IH0KICAgICB2b2lkIHNldE5vZGUoTm9kZSogbm9kZSkgeyBtX25vZGUgPSBu
b2RlOyB9CkBAIC00NSw2ICszOSwxNCBAQCBwdWJsaWM6CiAgICAgICAgIG1fbm9kZS0+c2V0TmVl
ZHNTdHlsZVJlY2FsYyhGdWxsU3R5bGVDaGFuZ2UpOwogICAgIH0KIAorcHJvdGVjdGVkOgorICAg
IENTU011dGFibGVWYWx1ZShDbGFzc1R5cGUgY2xhc3NUeXBlKQorICAgICAgICA6IENTU1ZhbHVl
KGNsYXNzVHlwZSkKKyAgICAgICAgLCBtX25vZGUoMCkKKyAgICB7CisgICAgfQorCisKIHByaXZh
dGU6CiAgICAgTm9kZSogbV9ub2RlOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NQcmltaXRpdmVWYWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZl
VmFsdWUuY3BwCmluZGV4IDBmMzY0MDQuLjAwMjdiYTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NT
U1ByaW1pdGl2ZVZhbHVlLmNwcApAQCAtMTY0LDcgKzE2NCw3IEBAIHN0YXRpYyBjb25zdCBBdG9t
aWNTdHJpbmcmIHZhbHVlT3JQcm9wZXJ0eU5hbWUoaW50IHZhbHVlT3JQcm9wZXJ0eUlEKQogfQog
CiBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoKQotICAgIDogQ1NTVmFsdWUo
Q1NTX1BSSU1JVElWRV9WQUxVRSkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzKQogICAg
ICwgbV90eXBlKDApCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiAgICAgLCBtX2lz
UXVpcmtWYWx1ZShmYWxzZSkKQEAgLTE3Miw3ICsxNzIsMTYgQEAgQ1NTUHJpbWl0aXZlVmFsdWU6
OkNTU1ByaW1pdGl2ZVZhbHVlKCkKIH0KIAogQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2
ZVZhbHVlKGludCBpZGVudCkKLSAgICA6IENTU1ZhbHVlKENTU19QUklNSVRJVkVfVkFMVUUpCisg
ICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcykKKyAgICAsIG1fdHlwZShDU1NfSURFTlQpCisg
ICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCisgICAgLCBtX2lzUXVpcmtWYWx1ZShmYWxz
ZSkKK3sKKyAgICBtX3ZhbHVlLmlkZW50ID0gaWRlbnQ7Cit9CisKK0NTU1ByaW1pdGl2ZVZhbHVl
OjpDU1NQcmltaXRpdmVWYWx1ZShDbGFzc1R5cGUgY2xhc3NUeXBlLCBpbnQgaWRlbnQpCisgICAg
OiBDU1NWYWx1ZShjbGFzc1R5cGUpCiAgICAgLCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwgbV9o
YXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogICAgICwgbV9pc1F1aXJrVmFsdWUoZmFsc2UpCkBAIC0x
ODEsNyArMTkwLDcgQEAgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKGludCBp
ZGVudCkKIH0KIAogQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKGRvdWJsZSBu
dW0sIFVuaXRUeXBlcyB0eXBlKQotICAgIDogQ1NTVmFsdWUoQ1NTX1BSSU1JVElWRV9WQUxVRSkK
KyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzKQogICAgICwgbV90eXBlKHR5cGUpCiAgICAg
LCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiAgICAgLCBtX2lzUXVpcmtWYWx1ZShmYWxzZSkK
QEAgLTE5MSw3ICsyMDAsMTggQEAgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVl
KGRvdWJsZSBudW0sIFVuaXRUeXBlcyB0eXBlKQogfQogCiBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NT
UHJpbWl0aXZlVmFsdWUoY29uc3QgU3RyaW5nJiBzdHIsIFVuaXRUeXBlcyB0eXBlKQotICAgIDog
Q1NTVmFsdWUoQ1NTX1BSSU1JVElWRV9WQUxVRSkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNs
YXNzKQorICAgICwgbV90eXBlKHR5cGUpCisgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2Up
CisgICAgLCBtX2lzUXVpcmtWYWx1ZShmYWxzZSkKK3sKKyAgICBpZiAoKG1fdmFsdWUuc3RyaW5n
ID0gc3RyLmltcGwoKSkpCisgICAgICAgIG1fdmFsdWUuc3RyaW5nLT5yZWYoKTsKK30KKworCitD
U1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoQ2xhc3NUeXBlIGNsYXNzVHlwZSwg
Y29uc3QgU3RyaW5nJiBzdHIsIFVuaXRUeXBlcyB0eXBlKQorICAgIDogQ1NTVmFsdWUoY2xhc3NU
eXBlKQogICAgICwgbV90eXBlKHR5cGUpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2Up
CiAgICAgLCBtX2lzUXVpcmtWYWx1ZShmYWxzZSkKQEAgLTIwMSw3ICsyMjEsNyBAQCBDU1NQcmlt
aXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoY29uc3QgU3RyaW5nJiBzdHIsIFVuaXRUeXBl
cyB0eXBlKQogfQogCiBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoUkdCQTMy
IGNvbG9yKQotICAgIDogQ1NTVmFsdWUoQ1NTX1BSSU1JVElWRV9WQUxVRSkKKyAgICA6IENTU1Zh
bHVlKFByaW1pdGl2ZUNsYXNzKQogICAgICwgbV90eXBlKENTU19SR0JDT0xPUikKICAgICAsIG1f
aGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKICAgICAsIG1faXNRdWlya1ZhbHVlKGZhbHNlKQpAQCAt
MjEwLDcgKzIzMCw3IEBAIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShSR0JB
MzIgY29sb3IpCiB9CiAKIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShjb25z
dCBMZW5ndGgmIGxlbmd0aCkKLSAgICA6IENTU1ZhbHVlKENTU19QUklNSVRJVkVfVkFMVUUpCisg
ICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcykKICAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4dChm
YWxzZSkKICAgICAsIG1faXNRdWlya1ZhbHVlKGZhbHNlKQogewpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
UHJpbWl0aXZlVmFsdWUuaAppbmRleCBmMWFmN2IxLi45YTljZmE3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTUHJpbWl0aXZlVmFsdWUuaApAQCAtMjE0LDI1ICsyMTQsMjcgQEAgcHVibGljOgogICAg
IHZpcnR1YWwgdm9pZCBhZGRTdWJyZXNvdXJjZVN0eWxlVVJMcyhMaXN0SGFzaFNldDxLVVJMPiYs
IGNvbnN0IENTU1N0eWxlU2hlZXQqKTsKIAogcHJvdGVjdGVkOgotICAgIC8vIEZJWE1FOiBpbnQg
dnMuIHVuc2lnbmVkIG92ZXJsb2FkaW5nIGlzIHRvbyBzdWJ0bGUgdG8gZGlzdGluZ3Vpc2ggdGhl
IGNvbG9yIGFuZCBpZGVudGlmaWVyIGNhc2VzLgotICAgIENTU1ByaW1pdGl2ZVZhbHVlKGludCBp
ZGVudCk7Ci0gICAgQ1NTUHJpbWl0aXZlVmFsdWUoZG91YmxlLCBVbml0VHlwZXMpOwotICAgIENT
U1ByaW1pdGl2ZVZhbHVlKGNvbnN0IFN0cmluZyYsIFVuaXRUeXBlcyk7CisgICAgQ1NTUHJpbWl0
aXZlVmFsdWUoQ2xhc3NUeXBlLCBpbnQgaWRlbnQpOworICAgIENTU1ByaW1pdGl2ZVZhbHVlKENs
YXNzVHlwZSwgY29uc3QgU3RyaW5nJiwgVW5pdFR5cGVzKTsKIAogcHJpdmF0ZToKICAgICBDU1NQ
cmltaXRpdmVWYWx1ZSgpOworICAgIC8vIEZJWE1FOiBpbnQgdnMuIHVuc2lnbmVkIG92ZXJsb2Fk
aW5nIGlzIHRvbyBzdWJ0bGUgdG8gZGlzdGluZ3Vpc2ggdGhlIGNvbG9yIGFuZCBpZGVudGlmaWVy
IGNhc2VzLgorICAgIENTU1ByaW1pdGl2ZVZhbHVlKGludCBpZGVudCk7CiAgICAgQ1NTUHJpbWl0
aXZlVmFsdWUodW5zaWduZWQgY29sb3IpOyAvLyBSR0IgdmFsdWUKICAgICBDU1NQcmltaXRpdmVW
YWx1ZShjb25zdCBMZW5ndGgmKTsKKyAgICBDU1NQcmltaXRpdmVWYWx1ZShjb25zdCBTdHJpbmcm
LCBVbml0VHlwZXMpOworICAgIENTU1ByaW1pdGl2ZVZhbHVlKGRvdWJsZSwgVW5pdFR5cGVzKTsK
IAogICAgIHRlbXBsYXRlPHR5cGVuYW1lIFQ+IENTU1ByaW1pdGl2ZVZhbHVlKFQpOyAvLyBEZWZp
bmVkIGluIENTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaAogICAgIHRlbXBsYXRlPHR5cGVuYW1l
IFQ+IENTU1ByaW1pdGl2ZVZhbHVlKFQqIHZhbCkKLSAgICAgICAgOiBDU1NWYWx1ZShDU1NfUFJJ
TUlUSVZFX1ZBTFVFKQorICAgICAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzKQogICAgIHsK
ICAgICAgICAgaW5pdChQYXNzUmVmUHRyPFQ+KHZhbCkpOwogICAgIH0KIAogICAgIHRlbXBsYXRl
PHR5cGVuYW1lIFQ+IENTU1ByaW1pdGl2ZVZhbHVlKFBhc3NSZWZQdHI8VD4gdmFsKQotICAgICAg
ICA6IENTU1ZhbHVlKENTU19QUklNSVRJVkVfVkFMVUUpCisgICAgICAgIDogQ1NTVmFsdWUoUHJp
bWl0aXZlQ2xhc3MpCiAgICAgewogICAgICAgICBpbml0KHZhbCk7CiAgICAgfQpAQCAtMjU4LDgg
KzI2MCw2IEBAIHByaXZhdGU6CiAKICAgICBkb3VibGUgY29tcHV0ZUxlbmd0aERvdWJsZShSZW5k
ZXJTdHlsZSogY3VycmVudFN0eWxlLCBSZW5kZXJTdHlsZSogcm9vdFN0eWxlLCBkb3VibGUgbXVs
dGlwbGllciwgYm9vbCBjb21wdXRpbmdGb250U2l6ZSk7CiAKLSAgICB2aXJ0dWFsIGJvb2wgaXNQ
cmltaXRpdmVWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KLQogICAgIHNpZ25lZCBtX3R5
cGUgOiBVbml0VHlwZXNCaXRzOwogICAgIG11dGFibGUgdW5zaWduZWQgbV9oYXNDYWNoZWRDU1NU
ZXh0IDogMTsKICAgICB1bnNpZ25lZCBtX2lzUXVpcmtWYWx1ZSA6IDE7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oIGIvU291cmNlL1dl
YkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaAppbmRleCBhOTVmY2M0Li44Yjkz
YTNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBw
aW5ncy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdz
LmgKQEAgLTUwLDcgKzUwLDcgQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogdGVtcGxhdGU8PiBp
bmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKHNob3J0IGkpCi0gICAg
OiBDU1NWYWx1ZShDU1NfUFJJTUlUSVZFX1ZBTFVFKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZl
Q2xhc3MpCiAgICAgLCBtX3R5cGUoQ1NTX05VTUJFUikKICAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4
dChmYWxzZSkKIHsKQEAgLTY3LDcgKzY3LDcgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0
aXZlVmFsdWU6Om9wZXJhdG9yIHNob3J0KCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUg
Q1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKHVuc2lnbmVkIHNob3J0IGkpCi0g
ICAgOiBDU1NWYWx1ZShDU1NfUFJJTUlUSVZFX1ZBTFVFKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0
aXZlQ2xhc3MpCiAgICAgLCBtX3R5cGUoQ1NTX05VTUJFUikKICAgICAsIG1faGFzQ2FjaGVkQ1NT
VGV4dChmYWxzZSkKIHsKQEAgLTg0LDcgKzg0LDcgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJp
bWl0aXZlVmFsdWU6Om9wZXJhdG9yIHVuc2lnbmVkIHNob3J0KCkgY29uc3QKIH0KIAogdGVtcGxh
dGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKGludCBpKQot
ICAgIDogQ1NTVmFsdWUoQ1NTX1BSSU1JVElWRV9WQUxVRSkKKyAgICA6IENTU1ZhbHVlKFByaW1p
dGl2ZUNsYXNzKQogICAgICwgbV90eXBlKENTU19OVU1CRVIpCiAgICAgLCBtX2hhc0NhY2hlZENT
U1RleHQoZmFsc2UpCiB7CkBAIC0xMDEsNyArMTAxLDcgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NT
UHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIGludCgpIGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5s
aW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZSh1bnNpZ25lZCBpKQotICAg
IDogQ1NTVmFsdWUoQ1NTX1BSSU1JVElWRV9WQUxVRSkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2
ZUNsYXNzKQogICAgICwgbV90eXBlKENTU19OVU1CRVIpCiAgICAgLCBtX2hhc0NhY2hlZENTU1Rl
eHQoZmFsc2UpCiB7CkBAIC0xMTksNyArMTE5LDcgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJp
bWl0aXZlVmFsdWU6Om9wZXJhdG9yIHVuc2lnbmVkKCkgY29uc3QKIAogCiB0ZW1wbGF0ZTw+IGlu
bGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoZmxvYXQgaSkKLSAgICA6
IENTU1ZhbHVlKENTU19QUklNSVRJVkVfVkFMVUUpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVD
bGFzcykKICAgICAsIG1fdHlwZShDU1NfTlVNQkVSKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0
KGZhbHNlKQogewpAQCAtMTM2LDcgKzEzNiw3IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1p
dGl2ZVZhbHVlOjpvcGVyYXRvciBmbG9hdCgpIGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5l
IENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShDb2x1bW5TcGFuIGNvbHVtblNw
YW4pCi0gICAgOiBDU1NWYWx1ZShDU1NfUFJJTUlUSVZFX1ZBTFVFKQorICAgIDogQ1NTVmFsdWUo
UHJpbWl0aXZlQ2xhc3MpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CiAgICAg
c3dpdGNoIChjb2x1bW5TcGFuKSB7CkBAIC0xNjMsNyArMTYzLDcgQEAgdGVtcGxhdGU8PiBpbmxp
bmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIENvbHVtblNwYW4oKSBjb25zdAogCiAKIHRl
bXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShQcmlu
dENvbG9yQWRqdXN0IHZhbHVlKQotICAgIDogQ1NTVmFsdWUoQ1NTX1BSSU1JVElWRV9WQUxVRSkK
KyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzKQogICAgICwgbV90eXBlKENTU19JREVOVCkK
ICAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKQEAgLTE5Miw3ICsxOTIsNyBAQCB0
ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgUHJpbnRDb2xvckFk
anVzdCgpIGNvbnN0CiAKIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNT
U1ByaW1pdGl2ZVZhbHVlKEVCb3JkZXJTdHlsZSBlKQotICAgIDogQ1NTVmFsdWUoQ1NTX1BSSU1J
VElWRV9WQUxVRSkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzKQogICAgICwgbV90eXBl
KENTU19JREVOVCkKICAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKQEAgLTI0NSw3
ICsyNDUsNyBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3Ig
T3V0bGluZUlzQXV0bygpIGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2
ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShDb21wb3NpdGVPcGVyYXRvciBlKQotICAgIDogQ1NT
VmFsdWUoQ1NTX1BSSU1JVElWRV9WQUxVRSkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNz
KQogICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxz
ZSkKIHsKQEAgLTMyOCw3ICszMjgsNyBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVW
YWx1ZTo6b3BlcmF0b3IgQ29tcG9zaXRlT3BlcmF0b3IoKSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+
IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoQ29udHJvbFBhcnQg
ZSkKLSAgICA6IENTU1ZhbHVlKENTU19QUklNSVRJVkVfVkFMVUUpCisgICAgOiBDU1NWYWx1ZShQ
cmltaXRpdmVDbGFzcykKICAgICAsIG1fdHlwZShDU1NfSURFTlQpCiAgICAgLCBtX2hhc0NhY2hl
ZENTU1RleHQoZmFsc2UpCiB7CkBAIC01MTgsNyArNTE4LDcgQEAgdGVtcGxhdGU8PiBpbmxpbmUg
Q1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIENvbnRyb2xQYXJ0KCkgY29uc3QKIH0KIAogdGVt
cGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEVCYWNr
ZmFjZVZpc2liaWxpdHkgZSkKLSAgICA6IENTU1ZhbHVlKENTU19QUklNSVRJVkVfVkFMVUUpCisg
ICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcykKICAgICAsIG1fdHlwZShDU1NfSURFTlQpCiAg
ICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CkBAIC01NDcsNyArNTQ3LDcgQEAgdGVt
cGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEVCYWNrZmFjZVZpc2li
aWxpdHkoKSBjb25zdAogCiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpD
U1NQcmltaXRpdmVWYWx1ZShFRmlsbEF0dGFjaG1lbnQgZSkKLSAgICA6IENTU1ZhbHVlKENTU19Q
UklNSVRJVkVfVkFMVUUpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcykKICAgICAsIG1f
dHlwZShDU1NfSURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CkBAIC01
ODAsNyArNTgwLDcgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJh
dG9yIEVGaWxsQXR0YWNobWVudCgpIGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1By
aW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShFRmlsbEJveCBlKQotICAgIDogQ1NTVmFs
dWUoQ1NTX1BSSU1JVElWRV9WQUxVRSkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzKQog
ICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkK
IHsKQEAgLTYyMiw3ICs2MjIsNyBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1
ZTo6b3BlcmF0b3IgRUZpbGxCb3goKSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQ
cmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoRUZpbGxSZXBlYXQgZSkKLSAgICA6IENT
U1ZhbHVlKENTU19QUklNSVRJVkVfVkFMVUUpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFz
cykKICAgICAsIG1fdHlwZShDU1NfSURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFs
c2UpCiB7CkBAIC02NjAsNyArNjYwLDcgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZl
VmFsdWU6Om9wZXJhdG9yIEVGaWxsUmVwZWF0KCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxp
bmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEVCb3hBbGlnbm1lbnQgZSkK
LSAgICA6IENTU1ZhbHVlKENTU19QUklNSVRJVkVfVkFMVUUpCisgICAgOiBDU1NWYWx1ZShQcmlt
aXRpdmVDbGFzcykKICAgICAsIG1fdHlwZShDU1NfSURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENT
U1RleHQoZmFsc2UpCiB7CkBAIC03MDgsNyArNzA4LDcgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NT
UHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEVCb3hBbGlnbm1lbnQoKSBjb25zdAogfQogCiB0ZW1w
bGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoRUJveFNp
emluZyBlKQotICAgIDogQ1NTVmFsdWUoQ1NTX1BSSU1JVElWRV9WQUxVRSkKKyAgICA6IENTU1Zh
bHVlKFByaW1pdGl2ZUNsYXNzKQogICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAsIG1faGFz
Q2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKQEAgLTczNiw3ICs3MzYsNyBAQCB0ZW1wbGF0ZTw+IGlu
bGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgRUJveFNpemluZygpIGNvbnN0CiB9CiAK
IHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShF
Qm94RGlyZWN0aW9uIGUpCi0gICAgOiBDU1NWYWx1ZShDU1NfUFJJTUlUSVZFX1ZBTFVFKQorICAg
IDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MpCiAgICAgLCBtX3R5cGUoQ1NTX0lERU5UKQogICAg
ICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewpAQCAtNzY0LDcgKzc2NCw3IEBAIHRlbXBs
YXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBFQm94RGlyZWN0aW9uKCkg
Y29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1p
dGl2ZVZhbHVlKEVCb3hMaW5lcyBlKQotICAgIDogQ1NTVmFsdWUoQ1NTX1BSSU1JVElWRV9WQUxV
RSkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzKQogICAgICwgbV90eXBlKENTU19JREVO
VCkKICAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKQEAgLTc5Miw3ICs3OTIsNyBA
QCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgRUJveExpbmVz
KCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1By
aW1pdGl2ZVZhbHVlKEVCb3hPcmllbnQgZSkKLSAgICA6IENTU1ZhbHVlKENTU19QUklNSVRJVkVf
VkFMVUUpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcykKICAgICAsIG1fdHlwZShDU1Nf
SURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CkBAIC04MjIsNyArODIy
LDcgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEVCb3hP
cmllbnQoKSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6
Q1NTUHJpbWl0aXZlVmFsdWUoRUNhcHRpb25TaWRlIGUpCi0gICAgOiBDU1NWYWx1ZShDU1NfUFJJ
TUlUSVZFX1ZBTFVFKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MpCiAgICAgLCBtX3R5
cGUoQ1NTX0lERU5UKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewpAQCAtODYw
LDcgKzg2MCw3IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRv
ciBFQ2FwdGlvblNpZGUoKSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRp
dmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoRUNsZWFyIGUpCi0gICAgOiBDU1NWYWx1ZShDU1Nf
UFJJTUlUSVZFX1ZBTFVFKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MpCiAgICAgLCBt
X3R5cGUoQ1NTX0lERU5UKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewpAQCAt
ODk4LDcgKzg5OCw3IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVy
YXRvciBFQ2xlYXIoKSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVW
YWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoRUN1cnNvciBlKQotICAgIDogQ1NTVmFsdWUoQ1NTX1BS
SU1JVElWRV9WQUxVRSkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzKQogICAgICwgbV90
eXBlKENTU19JREVOVCkKICAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKQEAgLTEw
MjQsNyArMTAyNCw3IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVy
YXRvciBFQ3Vyc29yKCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZl
VmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEVEaXNwbGF5IGUpCi0gICAgOiBDU1NWYWx1ZShDU1Nf
UFJJTUlUSVZFX1ZBTFVFKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MpCiAgICAgLCBt
X3R5cGUoQ1NTX0lERU5UKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewpAQCAt
MTEwNSw3ICsxMTA1LDcgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9w
ZXJhdG9yIEVEaXNwbGF5KCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0
aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEVFbXB0eUNlbGwgZSkKLSAgICA6IENTU1ZhbHVl
KENTU19QUklNSVRJVkVfVkFMVUUpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcykKICAg
ICAsIG1fdHlwZShDU1NfSURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7
CkBAIC0xMTMzLDcgKzExMzMsNyBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1
ZTo6b3BlcmF0b3IgRUVtcHR5Q2VsbCgpIGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENT
U1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShFRmxleEFsaWduIGUpCi0gICAgOiBD
U1NWYWx1ZShDU1NfUFJJTUlUSVZFX1ZBTFVFKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xh
c3MpCiAgICAgLCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZh
bHNlKQogewpAQCAtMTE3Niw3ICsxMTc2LDcgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0
aXZlVmFsdWU6Om9wZXJhdG9yIEVGbGV4QWxpZ24oKSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlu
bGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoRUZsZXhQYWNrIGUpCi0g
ICAgOiBDU1NWYWx1ZShDU1NfUFJJTUlUSVZFX1ZBTFVFKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0
aXZlQ2xhc3MpCiAgICAgLCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwgbV9oYXNDYWNoZWRDU1NU
ZXh0KGZhbHNlKQogewpAQCAtMTIxNCw3ICsxMjE0LDcgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NT
UHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEVGbGV4UGFjaygpIGNvbnN0CiB9CiAKIHRlbXBsYXRl
PD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShFRmxleEZsb3cg
ZSkKLSAgICA6IENTU1ZhbHVlKENTU19QUklNSVRJVkVfVkFMVUUpCisgICAgOiBDU1NWYWx1ZShQ
cmltaXRpdmVDbGFzcykKICAgICAsIG1fdHlwZShDU1NfSURFTlQpCiAgICAgLCBtX2hhc0NhY2hl
ZENTU1RleHQoZmFsc2UpCiB7CkBAIC0xMjUyLDcgKzEyNTIsNyBAQCB0ZW1wbGF0ZTw+IGlubGlu
ZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgRUZsZXhGbG93KCkgY29uc3QKIH0KIAogdGVt
cGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEVGbG9h
dCBlKQotICAgIDogQ1NTVmFsdWUoQ1NTX1BSSU1JVElWRV9WQUxVRSkKKyAgICA6IENTU1ZhbHVl
KFByaW1pdGl2ZUNsYXNzKQogICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAsIG1faGFzQ2Fj
aGVkQ1NTVGV4dChmYWxzZSkKIHsKQEAgLTEyOTEsNyArMTI5MSw3IEBAIHRlbXBsYXRlPD4gaW5s
aW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBFRmxvYXQoKSBjb25zdAogfQogCiB0ZW1w
bGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoRUtIVE1M
TGluZUJyZWFrIGUpCi0gICAgOiBDU1NWYWx1ZShDU1NfUFJJTUlUSVZFX1ZBTFVFKQorICAgIDog
Q1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MpCiAgICAgLCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwg
bV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewpAQCAtMTMxOSw3ICsxMzE5LDcgQEAgdGVtcGxh
dGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEVLSFRNTExpbmVCcmVhaygp
IGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmlt
aXRpdmVWYWx1ZShFTGlzdFN0eWxlUG9zaXRpb24gZSkKLSAgICA6IENTU1ZhbHVlKENTU19QUklN
SVRJVkVfVkFMVUUpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcykKICAgICAsIG1fdHlw
ZShDU1NfSURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CkBAIC0xMzM5
LDcgKzEzMzksNyBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0
b3IgRUxpc3RTdHlsZVBvc2l0aW9uKCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NT
UHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEVMaXN0U3R5bGVUeXBlIGUpCi0gICAg
OiBDU1NWYWx1ZShDU1NfUFJJTUlUSVZFX1ZBTFVFKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZl
Q2xhc3MpCiAgICAgLCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0
KGZhbHNlKQogewpAQCAtMTYwMSw3ICsxNjAxLDcgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJp
bWl0aXZlVmFsdWU6Om9wZXJhdG9yIEVMaXN0U3R5bGVUeXBlKCkgY29uc3QKIH0KIAogdGVtcGxh
dGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEVNYXJnaW5D
b2xsYXBzZSBlKQotICAgIDogQ1NTVmFsdWUoQ1NTX1BSSU1JVElWRV9WQUxVRSkKKyAgICA6IENT
U1ZhbHVlKFByaW1pdGl2ZUNsYXNzKQogICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAsIG1f
aGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKQEAgLTE2MzQsNyArMTYzNCw3IEBAIHRlbXBsYXRl
PD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBFTWFyZ2luQ29sbGFwc2UoKSBj
b25zdAogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0
aXZlVmFsdWUoRU1hcnF1ZWVCZWhhdmlvciBlKQotICAgIDogQ1NTVmFsdWUoQ1NTX1BSSU1JVElW
RV9WQUxVRSkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzKQogICAgICwgbV90eXBlKENT
U19JREVOVCkKICAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKQEAgLTE2NzIsNyAr
MTY3Miw3IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBF
TWFycXVlZUJlaGF2aW9yKCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0
aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKFJlZ2lvbk92ZXJmbG93IGUpCi0gICAgOiBDU1NW
YWx1ZShDU1NfUFJJTUlUSVZFX1ZBTFVFKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3Mp
CiAgICAgLCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNl
KQogewpAQCAtMTcwMCw3ICsxNzAwLDcgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZl
VmFsdWU6Om9wZXJhdG9yIFJlZ2lvbk92ZXJmbG93KCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBp
bmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEVNYXJxdWVlRGlyZWN0
aW9uIGUpCi0gICAgOiBDU1NWYWx1ZShDU1NfUFJJTUlUSVZFX1ZBTFVFKQorICAgIDogQ1NTVmFs
dWUoUHJpbWl0aXZlQ2xhc3MpCiAgICAgLCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwgbV9oYXND
YWNoZWRDU1NUZXh0KGZhbHNlKQogewpAQCAtMTc1NSw3ICsxNzU1LDcgQEAgdGVtcGxhdGU8PiBp
bmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEVNYXJxdWVlRGlyZWN0aW9uKCkgY29u
c3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2
ZVZhbHVlKEVNYXRjaE5lYXJlc3RNYWlsQmxvY2txdW90ZUNvbG9yIGUpCi0gICAgOiBDU1NWYWx1
ZShDU1NfUFJJTUlUSVZFX1ZBTFVFKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MpCiAg
ICAgLCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQog
ewpAQCAtMTc4Myw3ICsxNzgzLDcgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFs
dWU6Om9wZXJhdG9yIEVNYXRjaE5lYXJlc3RNYWlsQmxvY2txdW90ZUNvbG9yKCkKIH0KIAogdGVt
cGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEVOQlNQ
TW9kZSBlKQotICAgIDogQ1NTVmFsdWUoQ1NTX1BSSU1JVElWRV9WQUxVRSkKKyAgICA6IENTU1Zh
bHVlKFByaW1pdGl2ZUNsYXNzKQogICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAsIG1faGFz
Q2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKQEAgLTE4MTEsNyArMTgxMSw3IEBAIHRlbXBsYXRlPD4g
aW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBFTkJTUE1vZGUoKSBjb25zdAogfQog
CiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUo
RU92ZXJmbG93IGUpCi0gICAgOiBDU1NWYWx1ZShDU1NfUFJJTUlUSVZFX1ZBTFVFKQorICAgIDog
Q1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MpCiAgICAgLCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwg
bV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewpAQCAtMTg1OSw3ICsxODU5LDcgQEAgdGVtcGxh
dGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEVPdmVyZmxvdygpIGNvbnN0
CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVW
YWx1ZShFUGFnZUJyZWFrIGUpCi0gICAgOiBDU1NWYWx1ZShDU1NfUFJJTUlUSVZFX1ZBTFVFKQor
ICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MpCiAgICAgLCBtX3R5cGUoQ1NTX0lERU5UKQog
ICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewpAQCAtMTg5NCw3ICsxODk0LDcgQEAg
dGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEVQYWdlQnJlYWso
KSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJp
bWl0aXZlVmFsdWUoRVBvc2l0aW9uIGUpCi0gICAgOiBDU1NWYWx1ZShDU1NfUFJJTUlUSVZFX1ZB
TFVFKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MpCiAgICAgLCBtX3R5cGUoQ1NTX0lE
RU5UKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewpAQCAtMTkzMiw3ICsxOTMy
LDcgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEVQb3Np
dGlvbigpIGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpD
U1NQcmltaXRpdmVWYWx1ZShFUmVzaXplIGUpCi0gICAgOiBDU1NWYWx1ZShDU1NfUFJJTUlUSVZF
X1ZBTFVFKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MpCiAgICAgLCBtX3R5cGUoQ1NT
X0lERU5UKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewpAQCAtMTk3Myw3ICsx
OTczLDcgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEVS
ZXNpemUoKSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6
Q1NTUHJpbWl0aXZlVmFsdWUoRVRhYmxlTGF5b3V0IGUpCi0gICAgOiBDU1NWYWx1ZShDU1NfUFJJ
TUlUSVZFX1ZBTFVFKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MpCiAgICAgLCBtX3R5
cGUoQ1NTX0lERU5UKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewpAQCAtMjAw
MSw3ICsyMDAxLDcgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJh
dG9yIEVUYWJsZUxheW91dCgpIGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1p
dGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShFVGV4dEFsaWduIGUpCi0gICAgOiBDU1NWYWx1
ZShDU1NfUFJJTUlUSVZFX1ZBTFVFKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MpCiAg
ICAgLCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQog
ewpAQCAtMjA3MSw3ICsyMDcxLDcgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFs
dWU6Om9wZXJhdG9yIEVUZXh0RGVjb3JhdGlvbigpIGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5s
aW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShFVGV4dFNlY3VyaXR5IGUp
Ci0gICAgOiBDU1NWYWx1ZShDU1NfUFJJTUlUSVZFX1ZBTFVFKQorICAgIDogQ1NTVmFsdWUoUHJp
bWl0aXZlQ2xhc3MpCiAgICAgLCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwgbV9oYXNDYWNoZWRD
U1NUZXh0KGZhbHNlKQogewpAQCAtMjEwOSw3ICsyMTA5LDcgQEAgdGVtcGxhdGU8PiBpbmxpbmUg
Q1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEVUZXh0U2VjdXJpdHkoKSBjb25zdAogfQogCiB0
ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoRVRl
eHRUcmFuc2Zvcm0gZSkKLSAgICA6IENTU1ZhbHVlKENTU19QUklNSVRJVkVfVkFMVUUpCisgICAg
OiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcykKICAgICAsIG1fdHlwZShDU1NfSURFTlQpCiAgICAg
LCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CkBAIC0yMTQ3LDcgKzIxNDcsNyBAQCB0ZW1w
bGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgRVRleHRUcmFuc2Zvcm0o
KSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJp
bWl0aXZlVmFsdWUoRVVuaWNvZGVCaWRpIGUpCi0gICAgOiBDU1NWYWx1ZShDU1NfUFJJTUlUSVZF
X1ZBTFVFKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MpCiAgICAgLCBtX3R5cGUoQ1NT
X0lERU5UKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewpAQCAtMjE5MCw3ICsy
MTkwLDcgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEVV
bmljb2RlQmlkaSgpIGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZh
bHVlOjpDU1NQcmltaXRpdmVWYWx1ZShFVXNlckRyYWcgZSkKLSAgICA6IENTU1ZhbHVlKENTU19Q
UklNSVRJVkVfVkFMVUUpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcykKICAgICAsIG1f
dHlwZShDU1NfSURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CkBAIC0y
MjIzLDcgKzIyMjMsNyBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3Bl
cmF0b3IgRVVzZXJEcmFnKCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0
aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEVVc2VyTW9kaWZ5IGUpCi0gICAgOiBDU1NWYWx1
ZShDU1NfUFJJTUlUSVZFX1ZBTFVFKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MpCiAg
ICAgLCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQog
ewpAQCAtMjI0Niw3ICsyMjQ2LDcgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFs
dWU6Om9wZXJhdG9yIEVVc2VyTW9kaWZ5KCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUg
Q1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEVVc2VyU2VsZWN0IGUpCi0gICAg
OiBDU1NWYWx1ZShDU1NfUFJJTUlUSVZFX1ZBTFVFKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZl
Q2xhc3MpCiAgICAgLCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0
KGZhbHNlKQogewpAQCAtMjI3Niw3ICsyMjc2LDcgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJp
bWl0aXZlVmFsdWU6Om9wZXJhdG9yIEVVc2VyU2VsZWN0KCkgY29uc3QKIH0KIAogdGVtcGxhdGU8
PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEVWZXJ0aWNhbEFs
aWduIGEpCi0gICAgOiBDU1NWYWx1ZShDU1NfUFJJTUlUSVZFX1ZBTFVFKQorICAgIDogQ1NTVmFs
dWUoUHJpbWl0aXZlQ2xhc3MpCiAgICAgLCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwgbV9oYXND
YWNoZWRDU1NUZXh0KGZhbHNlKQogewpAQCAtMjM0MSw3ICsyMzQxLDcgQEAgdGVtcGxhdGU8PiBp
bmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEVWZXJ0aWNhbEFsaWduKCkgY29uc3QK
IH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZh
bHVlKEVWaXNpYmlsaXR5IGUpCi0gICAgOiBDU1NWYWx1ZShDU1NfUFJJTUlUSVZFX1ZBTFVFKQor
ICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MpCiAgICAgLCBtX3R5cGUoQ1NTX0lERU5UKQog
ICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewpAQCAtMjM3NCw3ICsyMzc0LDcgQEAg
dGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEVWaXNpYmlsaXR5
KCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1By
aW1pdGl2ZVZhbHVlKEVXaGl0ZVNwYWNlIGUpCi0gICAgOiBDU1NWYWx1ZShDU1NfUFJJTUlUSVZF
X1ZBTFVFKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MpCiAgICAgLCBtX3R5cGUoQ1NT
X0lERU5UKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewpAQCAtMjQyMiw3ICsy
NDIyLDcgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEVX
aGl0ZVNwYWNlKCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFs
dWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEVXb3JkQnJlYWsgZSkKLSAgICA6IENTU1ZhbHVlKENTU19Q
UklNSVRJVkVfVkFMVUUpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcykKICAgICAsIG1f
dHlwZShDU1NfSURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CkBAIC0y
NDU1LDcgKzI0NTUsNyBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3Bl
cmF0b3IgRVdvcmRCcmVhaygpIGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1p
dGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShFV29yZFdyYXAgZSkKLSAgICA6IENTU1ZhbHVl
KENTU19QUklNSVRJVkVfVkFMVUUpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcykKICAg
ICAsIG1fdHlwZShDU1NfSURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7
CkBAIC0yNDgzLDcgKzI0ODMsNyBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1
ZTo6b3BlcmF0b3IgRVdvcmRXcmFwKCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NT
UHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKFRleHREaXJlY3Rpb24gZSkKLSAgICA6
IENTU1ZhbHVlKENTU19QUklNSVRJVkVfVkFMVUUpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVD
bGFzcykKICAgICAsIG1fdHlwZShDU1NfSURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQo
ZmFsc2UpCiB7CkBAIC0yNTExLDcgKzI1MTEsNyBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmlt
aXRpdmVWYWx1ZTo6b3BlcmF0b3IgVGV4dERpcmVjdGlvbigpIGNvbnN0CiB9CiAKIHRlbXBsYXRl
PD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShXcml0aW5nTW9k
ZSBlKQotICAgIDogQ1NTVmFsdWUoQ1NTX1BSSU1JVElWRV9WQUxVRSkKKyAgICA6IENTU1ZhbHVl
KFByaW1pdGl2ZUNsYXNzKQogICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAsIG1faGFzQ2Fj
aGVkQ1NTVGV4dChmYWxzZSkKIHsKQEAgLTI1NDksNyArMjU0OSw3IEBAIHRlbXBsYXRlPD4gaW5s
aW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBXcml0aW5nTW9kZSgpIGNvbnN0CiB9CiAK
IHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShU
ZXh0Q29tYmluZSBlKQotICAgIDogQ1NTVmFsdWUoQ1NTX1BSSU1JVElWRV9WQUxVRSkKKyAgICA6
IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzKQogICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAs
IG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKQEAgLTI1NzcsNyArMjU3Nyw3IEBAIHRlbXBs
YXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBUZXh0Q29tYmluZSgpIGNv
bnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRp
dmVWYWx1ZShUZXh0RW1waGFzaXNQb3NpdGlvbiBwb3NpdGlvbikKLSAgICA6IENTU1ZhbHVlKENT
U19QUklNSVRJVkVfVkFMVUUpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcykKICAgICAs
IG1fdHlwZShDU1NfSURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CkBA
IC0yNjA1LDcgKzI2MDUsNyBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6
b3BlcmF0b3IgVGV4dEVtcGhhc2lzUG9zaXRpb24oKSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlu
bGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoVGV4dE92ZXJmbG93IG92
ZXJmbG93KQotICAgIDogQ1NTVmFsdWUoQ1NTX1BSSU1JVElWRV9WQUxVRSkKKyAgICA6IENTU1Zh
bHVlKFByaW1pdGl2ZUNsYXNzKQogICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAsIG1faGFz
Q2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKQEAgLTI2MzMsNyArMjYzMyw3IEBAIHRlbXBsYXRlPD4g
aW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBUZXh0T3ZlcmZsb3coKSBjb25zdAog
fQogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFs
dWUoVGV4dEVtcGhhc2lzRmlsbCBmaWxsKQotICAgIDogQ1NTVmFsdWUoQ1NTX1BSSU1JVElWRV9W
QUxVRSkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzKQogICAgICwgbV90eXBlKENTU19J
REVOVCkKICAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsKQEAgLTI2NjEsNyArMjY2
MSw3IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBUZXh0
RW1waGFzaXNGaWxsKCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZl
VmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKFRleHRFbXBoYXNpc01hcmsgbWFyaykKLSAgICA6IENT
U1ZhbHVlKENTU19QUklNSVRJVkVfVkFMVUUpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFz
cykKICAgICAsIG1fdHlwZShDU1NfSURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFs
c2UpCiB7CkBAIC0yNzEyLDcgKzI3MTIsNyBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRp
dmVWYWx1ZTo6b3BlcmF0b3IgVGV4dEVtcGhhc2lzTWFyaygpIGNvbnN0CiB9CiAKIHRlbXBsYXRl
PD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShUZXh0T3JpZW50
YXRpb24gZSkKLSAgICA6IENTU1ZhbHVlKENTU19QUklNSVRJVkVfVkFMVUUpCisgICAgOiBDU1NW
YWx1ZShQcmltaXRpdmVDbGFzcykKICAgICAsIG1fdHlwZShDU1NfSURFTlQpCiAgICAgLCBtX2hh
c0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CkBAIC0yNzQwLDcgKzI3NDAsNyBAQCB0ZW1wbGF0ZTw+
IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgVGV4dE9yaWVudGF0aW9uKCkgY29u
c3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2
ZVZhbHVlKEVQb2ludGVyRXZlbnRzIGUpCi0gICAgOiBDU1NWYWx1ZShDU1NfUFJJTUlUSVZFX1ZB
TFVFKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MpCiAgICAgLCBtX3R5cGUoQ1NTX0lE
RU5UKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewpAQCAtMjgwOCw3ICsyODA4
LDcgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEVQb2lu
dGVyRXZlbnRzKCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFs
dWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEZvbnRTbW9vdGhpbmdNb2RlIHNtb290aGluZykKLSAgICA6
IENTU1ZhbHVlKENTU19QUklNSVRJVkVfVkFMVUUpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVD
bGFzcykKICAgICAsIG1fdHlwZShDU1NfSURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQo
ZmFsc2UpCiB7CkBAIC0yODQ5LDcgKzI4NDksNyBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmlt
aXRpdmVWYWx1ZTo6b3BlcmF0b3IgRm9udFNtb290aGluZ01vZGUoKSBjb25zdAogfQogCiB0ZW1w
bGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoRm9udFdl
aWdodCB3ZWlnaHQpCi0gICAgOiBDU1NWYWx1ZShDU1NfUFJJTUlUSVZFX1ZBTFVFKQorICAgIDog
Q1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MpCiAgICAgLCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwg
bV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewpAQCAtMjkxOSw3ICsyOTE5LDcgQEAgdGVtcGxh
dGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEZvbnRXZWlnaHQoKSBjb25z
dAogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZl
VmFsdWUoRm9udEl0YWxpYyBpdGFsaWMpCi0gICAgOiBDU1NWYWx1ZShDU1NfUFJJTUlUSVZFX1ZB
TFVFKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MpCiAgICAgLCBtX3R5cGUoQ1NTX0lE
RU5UKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewpAQCAtMjk1MSw3ICsyOTUx
LDcgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEZvbnRJ
dGFsaWMoKSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6
Q1NTUHJpbWl0aXZlVmFsdWUoRm9udFNtYWxsQ2FwcyBzbWFsbENhcHMpCi0gICAgOiBDU1NWYWx1
ZShDU1NfUFJJTUlUSVZFX1ZBTFVFKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MpCiAg
ICAgLCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQog
ewpAQCAtMjk4MSw3ICsyOTgxLDcgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFs
dWU6Om9wZXJhdG9yIEZvbnRTbWFsbENhcHMoKSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlubGlu
ZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoVGV4dFJlbmRlcmluZ01vZGUg
ZSkKLSAgICA6IENTU1ZhbHVlKENTU19QUklNSVRJVkVfVkFMVUUpCisgICAgOiBDU1NWYWx1ZShQ
cmltaXRpdmVDbGFzcykKICAgICAsIG1fdHlwZShDU1NfSURFTlQpCiAgICAgLCBtX2hhc0NhY2hl
ZENTU1RleHQoZmFsc2UpCiB7CkBAIC0zMDE5LDcgKzMwMTksNyBAQCB0ZW1wbGF0ZTw+IGlubGlu
ZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgVGV4dFJlbmRlcmluZ01vZGUoKSBjb25zdAog
fQogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFs
dWUoQ29sb3JTcGFjZSBzcGFjZSkKLSAgICA6IENTU1ZhbHVlKENTU19QUklNSVRJVkVfVkFMVUUp
CisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcykKICAgICAsIG1fdHlwZShDU1NfSURFTlQp
CiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CkBAIC0zMDUyLDcgKzMwNTIsNyBA
QCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgQ29sb3JTcGFj
ZSgpIGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQ
cmltaXRpdmVWYWx1ZShIeXBoZW5zIGh5cGhlbnMpCi0gICAgOiBDU1NWYWx1ZShDU1NfUFJJTUlU
SVZFX1ZBTFVFKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MpCiAgICAgLCBtX3R5cGUo
Q1NTX0lERU5UKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewpAQCAtMzA4NSw3
ICszMDg1LDcgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9y
IEh5cGhlbnMoKSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1
ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoRVNwZWFrIGUpCi0gICAgOiBDU1NWYWx1ZShDU1NfUFJJTUlU
SVZFX1ZBTFVFKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MpCiAgICAgLCBtX3R5cGUo
Q1NTX0lERU5UKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewpAQCAtMzEyNSw3
ICszMTI1LDcgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9y
IE9yZGVyKCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6
OkNTU1ByaW1pdGl2ZVZhbHVlKE9yZGVyIGUpCi0gICAgOiBDU1NWYWx1ZShDU1NfUFJJTUlUSVZF
X1ZBTFVFKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MpCiAgICAgLCBtX3R5cGUoQ1NT
X0lERU5UKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewpAQCAtMzE2Myw3ICsz
MTYzLDcgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEVT
cGVhaygpIGNvbnN0CiAjaWYgRU5BQkxFKFNWRykKIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJp
bWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKExpbmVDYXAgZSkKLSAgICA6IENTU1ZhbHVl
KENTU19QUklNSVRJVkVfVkFMVUUpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcykKICAg
ICAsIG1fdHlwZShDU1NfSURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7
CkBAIC0zMTk2LDcgKzMxOTYsNyBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1
ZTo6b3BlcmF0b3IgTGluZUNhcCgpIGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1By
aW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShMaW5lSm9pbiBlKQotICAgIDogQ1NTVmFs
dWUoQ1NTX1BSSU1JVElWRV9WQUxVRSkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzKQog
ICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkK
IHsKQEAgLTMyMjksNyArMzIyOSw3IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZh
bHVlOjpvcGVyYXRvciBMaW5lSm9pbigpIGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENT
U1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShXaW5kUnVsZSBlKQotICAgIDogQ1NT
VmFsdWUoQ1NTX1BSSU1JVElWRV9WQUxVRSkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNz
KQogICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxz
ZSkKIHsKQEAgLTMyNTgsNyArMzI1OCw3IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2
ZVZhbHVlOjpvcGVyYXRvciBXaW5kUnVsZSgpIGNvbnN0CiAKIAogdGVtcGxhdGU8PiBpbmxpbmUg
Q1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEVBbGlnbm1lbnRCYXNlbGluZSBl
KQotICAgIDogQ1NTVmFsdWUoQ1NTX1BSSU1JVElWRV9WQUxVRSkKKyAgICA6IENTU1ZhbHVlKFBy
aW1pdGl2ZUNsYXNzKQogICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAsIG1faGFzQ2FjaGVk
Q1NTVGV4dChmYWxzZSkKIHsKQEAgLTMzMzgsNyArMzMzOCw3IEBAIHRlbXBsYXRlPD4gaW5saW5l
IENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBFQWxpZ25tZW50QmFzZWxpbmUoKSBjb25zdAog
I2VuZGlmCiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRp
dmVWYWx1ZShFQm9yZGVyQ29sbGFwc2UgZSkKLSAgICA6IENTU1ZhbHVlKENTU19QUklNSVRJVkVf
VkFMVUUpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcykKICAgICAsIG1fdHlwZShDU1Nf
SURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CkBAIC0zMzY2LDcgKzMz
NjYsNyBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgRUJv
cmRlckNvbGxhcHNlKCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZl
VmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEVCb3JkZXJGaXQgZSkKLSAgICA6IENTU1ZhbHVlKENT
U19QUklNSVRJVkVfVkFMVUUpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcykKICAgICAs
IG1fdHlwZShDU1NfSURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CkBA
IC0zMzk0LDcgKzMzOTQsNyBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6
b3BlcmF0b3IgRUJvcmRlckZpdCgpIGNvbnN0CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1By
aW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShFSW1hZ2VSZW5kZXJpbmcgZSkKLSAgICA6
IENTU1ZhbHVlKENTU19QUklNSVRJVkVfVkFMVUUpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVD
bGFzcykKICAgICAsIG1fdHlwZShDU1NfSURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQo
ZmFsc2UpCiB7CkBAIC0zNDMyLDcgKzM0MzIsNyBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmlt
aXRpdmVWYWx1ZTo6b3BlcmF0b3IgRUltYWdlUmVuZGVyaW5nKCkgY29uc3QKIH0KIAogdGVtcGxh
dGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEVUcmFuc2Zv
cm1TdHlsZTNEIGUpCi0gICAgOiBDU1NWYWx1ZShDU1NfUFJJTUlUSVZFX1ZBTFVFKQorICAgIDog
Q1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MpCiAgICAgLCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwg
bV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewpAQCAtMzQ2MCw3ICszNDYwLDcgQEAgdGVtcGxh
dGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIEVUcmFuc2Zvcm1TdHlsZTNE
KCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1By
aW1pdGl2ZVZhbHVlKENvbHVtbkF4aXMgZSkKLSAgICA6IENTU1ZhbHVlKENTU19QUklNSVRJVkVf
VkFMVUUpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcykKICAgICAsIG1fdHlwZShDU1Nf
SURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CkBAIC0zNDk1LDcgKzM0
OTUsNyBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgQ29s
dW1uQXhpcygpIGNvbnN0CiAjaWYgRU5BQkxFKFNWRykKIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NT
UHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEVDb2xvckludGVycG9sYXRpb24gZSkK
LSAgICA6IENTU1ZhbHVlKENTU19QUklNSVRJVkVfVkFMVUUpCisgICAgOiBDU1NWYWx1ZShQcmlt
aXRpdmVDbGFzcykKICAgICAsIG1fdHlwZShDU1NfSURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENT
U1RleHQoZmFsc2UpCiB7CkBAIC0zNTI4LDcgKzM1MjgsNyBAQCB0ZW1wbGF0ZTw+IGlubGluZSBD
U1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgRUNvbG9ySW50ZXJwb2xhdGlvbigpIGNvbnN0CiB9
CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1
ZShFQ29sb3JSZW5kZXJpbmcgZSkKLSAgICA6IENTU1ZhbHVlKENTU19QUklNSVRJVkVfVkFMVUUp
CisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcykKICAgICAsIG1fdHlwZShDU1NfSURFTlQp
CiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CkBAIC0zNTYxLDcgKzM1NjEsNyBA
QCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgRUNvbG9yUmVu
ZGVyaW5nKCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6
OkNTU1ByaW1pdGl2ZVZhbHVlKEVEb21pbmFudEJhc2VsaW5lIGUpCi0gICAgOiBDU1NWYWx1ZShD
U1NfUFJJTUlUSVZFX1ZBTFVFKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MpCiAgICAg
LCBtX3R5cGUoQ1NTX0lERU5UKQogICAgICwgbV9oYXNDYWNoZWRDU1NUZXh0KGZhbHNlKQogewpA
QCAtMzYzOSw3ICszNjM5LDcgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6
Om9wZXJhdG9yIEVEb21pbmFudEJhc2VsaW5lKCkgY29uc3QKIH0KIAogdGVtcGxhdGU8PiBpbmxp
bmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEVTaGFwZVJlbmRlcmluZyBl
KQotICAgIDogQ1NTVmFsdWUoQ1NTX1BSSU1JVElWRV9WQUxVRSkKKyAgICA6IENTU1ZhbHVlKFBy
aW1pdGl2ZUNsYXNzKQogICAgICwgbV90eXBlKENTU19JREVOVCkKICAgICAsIG1faGFzQ2FjaGVk
Q1NTVGV4dChmYWxzZSkKIHsKQEAgLTM2NzcsNyArMzY3Nyw3IEBAIHRlbXBsYXRlPD4gaW5saW5l
IENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBFU2hhcGVSZW5kZXJpbmcoKSBjb25zdAogfQog
CiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUo
RVRleHRBbmNob3IgZSkKLSAgICA6IENTU1ZhbHVlKENTU19QUklNSVRJVkVfVkFMVUUpCisgICAg
OiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcykKICAgICAsIG1fdHlwZShDU1NfSURFTlQpCiAgICAg
LCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CkBAIC0zNzEwLDcgKzM3MTAsNyBAQCB0ZW1w
bGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgRVRleHRBbmNob3IoKSBj
b25zdAogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0
aXZlVmFsdWUoU1ZHV3JpdGluZ01vZGUgZSkKLSAgICA6IENTU1ZhbHVlKENTU19QUklNSVRJVkVf
VkFMVUUpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFzcykKICAgICAsIG1fdHlwZShDU1Nf
SURFTlQpCiAgICAgLCBtX2hhc0NhY2hlZENTU1RleHQoZmFsc2UpCiB7CkBAIC0zNzU4LDcgKzM3
NTgsNyBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgU1ZH
V3JpdGluZ01vZGUoKSBjb25zdAogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVW
YWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoRVZlY3RvckVmZmVjdCBlKQotICAgIDogQ1NTVmFsdWUo
Q1NTX1BSSU1JVElWRV9WQUxVRSkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzKQogICAg
ICwgbV90eXBlKENTU19JREVOVCkKICAgICAsIG1faGFzQ2FjaGVkQ1NTVGV4dChmYWxzZSkKIHsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NSZWZsZWN0VmFsdWUuaCBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NSZWZsZWN0VmFsdWUuaAppbmRleCA1ODA3NmVhLi4yNzI3ODgxIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUmVmbGVjdFZhbHVlLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvY3NzL0NTU1JlZmxlY3RWYWx1ZS5oCkBAIC01MiwxNiArNTIsMTQgQEAgcHVi
bGljOgogICAgIHZpcnR1YWwgdm9pZCBhZGRTdWJyZXNvdXJjZVN0eWxlVVJMcyhMaXN0SGFzaFNl
dDxLVVJMPiYsIGNvbnN0IENTU1N0eWxlU2hlZXQqKTsKIAogcHJpdmF0ZToKLSAgICBDU1NSZWZs
ZWN0VmFsdWUoQ1NTUmVmbGVjdGlvbkRpcmVjdGlvbiBkaXJlY3Rpb24sCi0gICAgICAgICAgICBQ
YXNzUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiBvZmZzZXQsIFBhc3NSZWZQdHI8Q1NTVmFsdWU+
IG1hc2spCi0gICAgICAgIDogbV9kaXJlY3Rpb24oZGlyZWN0aW9uKQorICAgIENTU1JlZmxlY3RW
YWx1ZShDU1NSZWZsZWN0aW9uRGlyZWN0aW9uIGRpcmVjdGlvbiwgUGFzc1JlZlB0cjxDU1NQcmlt
aXRpdmVWYWx1ZT4gb2Zmc2V0LCBQYXNzUmVmUHRyPENTU1ZhbHVlPiBtYXNrKQorICAgICAgICA6
IENTU1ZhbHVlKFJlZmxlY3RDbGFzcykKKyAgICAgICAgLCBtX2RpcmVjdGlvbihkaXJlY3Rpb24p
CiAgICAgICAgICwgbV9vZmZzZXQob2Zmc2V0KQogICAgICAgICAsIG1fbWFzayhtYXNrKQogICAg
IHsKICAgICB9CiAKLSAgICB2aXJ0dWFsIGJvb2wgaXNSZWZsZWN0VmFsdWUoKSBjb25zdCB7IHJl
dHVybiB0cnVlOyB9Ci0KICAgICBDU1NSZWZsZWN0aW9uRGlyZWN0aW9uIG1fZGlyZWN0aW9uOwog
ICAgIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gbV9vZmZzZXQ7CiAgICAgUmVmUHRyPENTU1Zh
bHVlPiBtX21hc2s7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVGltaW5nRnVu
Y3Rpb25WYWx1ZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1RpbWluZ0Z1bmN0aW9uVmFsdWUu
aAppbmRleCBlMzY5MWY0Li4wYmY5OGE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTVGltaW5nRnVuY3Rpb25WYWx1ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NUaW1p
bmdGdW5jdGlvblZhbHVlLmgKQEAgLTM1LDE2ICszNSwxNSBAQCBjbGFzcyBDU1NUaW1pbmdGdW5j
dGlvblZhbHVlIDogcHVibGljIENTU1ZhbHVlIHsKIHB1YmxpYzoKICAgICB2aXJ0dWFsIFN0cmlu
ZyBjc3NUZXh0KCkgY29uc3QgPSAwOwogCi0gICAgdmlydHVhbCBib29sIGlzTGluZWFyVGltaW5n
RnVuY3Rpb25WYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9Ci0gICAgdmlydHVhbCBib29s
IGlzQ3ViaWNCZXppZXJUaW1pbmdGdW5jdGlvblZhbHVlKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7
IH0KLSAgICB2aXJ0dWFsIGJvb2wgaXNTdGVwc1RpbWluZ0Z1bmN0aW9uVmFsdWUoKSBjb25zdCB7
IHJldHVybiBmYWxzZTsgfQorICAgIGJvb2wgaXNMaW5lYXJUaW1pbmdGdW5jdGlvblZhbHVlKCkg
Y29uc3QgeyByZXR1cm4gY2xhc3NUeXBlKCkgPT0gTGluZWFyVGltaW5nRnVuY3Rpb25DbGFzczsg
fQorICAgIGJvb2wgaXNDdWJpY0JlemllclRpbWluZ0Z1bmN0aW9uVmFsdWUoKSBjb25zdCB7IHJl
dHVybiBjbGFzc1R5cGUoKSA9PSBDdWJpY0JlemllclRpbWluZ0Z1bmN0aW9uQ2xhc3M7IH0KKyAg
ICBib29sIGlzU3RlcHNUaW1pbmdGdW5jdGlvblZhbHVlKCkgY29uc3QgeyByZXR1cm4gY2xhc3NU
eXBlKCkgPT0gU3RlcHNUaW1pbmdGdW5jdGlvbkNsYXNzOyB9CiAKIHByb3RlY3RlZDoKLSAgICBD
U1NUaW1pbmdGdW5jdGlvblZhbHVlKCkKKyAgICBDU1NUaW1pbmdGdW5jdGlvblZhbHVlKENsYXNz
VHlwZSBjbGFzc1R5cGUpCisgICAgICAgIDogQ1NTVmFsdWUoY2xhc3NUeXBlKQogICAgIHsKICAg
ICB9Ci0KLSAgICB2aXJ0dWFsIGJvb2wgaXNUaW1pbmdGdW5jdGlvblZhbHVlKCkgY29uc3QgeyBy
ZXR1cm4gdHJ1ZTsgfQogfTsKIAogY2xhc3MgQ1NTTGluZWFyVGltaW5nRnVuY3Rpb25WYWx1ZSA6
IHB1YmxpYyBDU1NUaW1pbmdGdW5jdGlvblZhbHVlIHsKQEAgLTU2LDEyICs1NSwxMSBAQCBwdWJs
aWM6CiAKIHByaXZhdGU6CiAgICAgQ1NTTGluZWFyVGltaW5nRnVuY3Rpb25WYWx1ZSgpCisgICAg
ICAgIDogQ1NTVGltaW5nRnVuY3Rpb25WYWx1ZShMaW5lYXJUaW1pbmdGdW5jdGlvbkNsYXNzKQog
ICAgIHsKICAgICB9CiAKICAgICB2aXJ0dWFsIFN0cmluZyBjc3NUZXh0KCkgY29uc3Q7Ci0KLSAg
ICB2aXJ0dWFsIGJvb2wgaXNMaW5lYXJUaW1pbmdGdW5jdGlvblZhbHVlKCkgY29uc3QgeyByZXR1
cm4gdHJ1ZTsgfQogfTsKIAogY2xhc3MgQ1NTQ3ViaWNCZXppZXJUaW1pbmdGdW5jdGlvblZhbHVl
IDogcHVibGljIENTU1RpbWluZ0Z1bmN0aW9uVmFsdWUgewpAQCAtNzgsNyArNzYsOCBAQCBwdWJs
aWM6CiAKIHByaXZhdGU6CiAgICAgQ1NTQ3ViaWNCZXppZXJUaW1pbmdGdW5jdGlvblZhbHVlKGRv
dWJsZSB4MSwgZG91YmxlIHkxLCBkb3VibGUgeDIsIGRvdWJsZSB5MikKLSAgICAgICAgOiBtX3gx
KHgxKQorICAgICAgICA6IENTU1RpbWluZ0Z1bmN0aW9uVmFsdWUoQ3ViaWNCZXppZXJUaW1pbmdG
dW5jdGlvbkNsYXNzKQorICAgICAgICAsIG1feDEoeDEpCiAgICAgICAgICwgbV95MSh5MSkKICAg
ICAgICAgLCBtX3gyKHgyKQogICAgICAgICAsIG1feTIoeTIpCkBAIC04Nyw4ICs4Niw2IEBAIHBy
aXZhdGU6CiAKICAgICB2aXJ0dWFsIFN0cmluZyBjc3NUZXh0KCkgY29uc3Q7CiAKLSAgICB2aXJ0
dWFsIGJvb2wgaXNDdWJpY0JlemllclRpbWluZ0Z1bmN0aW9uVmFsdWUoKSBjb25zdCB7IHJldHVy
biB0cnVlOyB9Ci0KICAgICBkb3VibGUgbV94MTsKICAgICBkb3VibGUgbV95MTsKICAgICBkb3Vi
bGUgbV94MjsKQEAgLTEwNywxNSArMTA0LDE0IEBAIHB1YmxpYzoKIAogcHJpdmF0ZToKICAgICBD
U1NTdGVwc1RpbWluZ0Z1bmN0aW9uVmFsdWUoaW50IHN0ZXBzLCBib29sIHN0ZXBBdFN0YXJ0KQot
ICAgICAgICA6IG1fc3RlcHMoc3RlcHMpCisgICAgICAgIDogQ1NTVGltaW5nRnVuY3Rpb25WYWx1
ZShTdGVwc1RpbWluZ0Z1bmN0aW9uQ2xhc3MpCisgICAgICAgICwgbV9zdGVwcyhzdGVwcykKICAg
ICAgICAgLCBtX3N0ZXBBdFN0YXJ0KHN0ZXBBdFN0YXJ0KQogICAgIHsKICAgICB9CiAKICAgICB2
aXJ0dWFsIFN0cmluZyBjc3NUZXh0KCkgY29uc3Q7CiAKLSAgICB2aXJ0dWFsIGJvb2wgaXNTdGVw
c1RpbWluZ0Z1bmN0aW9uVmFsdWUoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9Ci0KICAgICBpbnQg
bV9zdGVwczsKICAgICBib29sIG1fc3RlcEF0U3RhcnQ7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1VuaWNvZGVSYW5nZVZhbHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTVW5pY29kZVJhbmdlVmFsdWUuaAppbmRleCAyZjJjMDEyLi40NThiZjFhIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVW5pY29kZVJhbmdlVmFsdWUuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTVW5pY29kZVJhbmdlVmFsdWUuaApAQCAtNDgsNyArNDgsOCBAQCBwdWJs
aWM6CiAKIHByaXZhdGU6CiAgICAgQ1NTVW5pY29kZVJhbmdlVmFsdWUoVUNoYXIzMiBmcm9tLCBV
Q2hhcjMyIHRvKQotICAgICAgICA6IG1fZnJvbShmcm9tKQorICAgICAgICA6IENTU1ZhbHVlKFVu
aWNvZGVSYW5nZUNsYXNzKQorICAgICAgICAsIG1fZnJvbShmcm9tKQogICAgICAgICAsIG1fdG8o
dG8pCiAgICAgewogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1
ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuY3BwCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAuLmQyNTE0YTgKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTVmFsdWUuY3BwCkBAIC0wLDAgKzEsNDUgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMTEgQW5kcmVhcyBLbGluZyAoa2xpbmdAd2Via2l0Lm9yZykKKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIENPTVBVVEVSLCBJTkMuIGBgQVMg
SVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgQ09NUFVURVIsIElOQy4gT1IKKyAq
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZ
CisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqCisgKi8KKworI2lu
Y2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkNTU1ZhbHVlLmgiCisKK25hbWVzcGFjZSBXZWJD
b3JlIHsKKworQ1NTVmFsdWU6OlR5cGUgQ1NTVmFsdWU6OmNzc1ZhbHVlVHlwZSgpIGNvbnN0Cit7
CisgICAgaWYgKGlzSW5oZXJpdGVkVmFsdWUoKSkKKyAgICAgICAgcmV0dXJuIENTU19JTkhFUklU
OworICAgIGlmIChpc1ByaW1pdGl2ZVZhbHVlKCkpCisgICAgICAgIHJldHVybiBDU1NfUFJJTUlU
SVZFX1ZBTFVFOworICAgIGlmIChpc1ZhbHVlTGlzdCgpKQorICAgICAgICByZXR1cm4gQ1NTX1ZB
TFVFX0xJU1Q7CisgICAgaWYgKGlzSW5pdGlhbFZhbHVlKCkpCisgICAgICAgIHJldHVybiBDU1Nf
SU5JVElBTDsKKyAgICByZXR1cm4gQ1NTX0NVU1RPTTsKK30KKworfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUu
aAppbmRleCBlN2QwMjA4Li4xZGRmNGQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTVmFsdWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuaApAQCAtNDQsNTQg
KzQ0LDE0NSBAQCBwdWJsaWM6CiAKICAgICB2aXJ0dWFsIH5DU1NWYWx1ZSgpIHsgfQogCi0gICAg
VHlwZSBjc3NWYWx1ZVR5cGUoKSBjb25zdCB7IHJldHVybiBzdGF0aWNfY2FzdDxUeXBlPihtX3R5
cGUpOyB9CisgICAgVHlwZSBjc3NWYWx1ZVR5cGUoKSBjb25zdDsKIAogICAgIHZpcnR1YWwgU3Ry
aW5nIGNzc1RleHQoKSBjb25zdCA9IDA7CiAgICAgdm9pZCBzZXRDc3NUZXh0KGNvbnN0IFN0cmlu
ZyYsIEV4Y2VwdGlvbkNvZGUmKSB7IH0gLy8gRklYTUU6IE5vdCBpbXBsZW1lbnRlZC4KIAotICAg
IHZpcnR1YWwgYm9vbCBpc011dGFibGVWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9Ci0K
LSAgICB2aXJ0dWFsIGJvb2wgaXNCb3JkZXJJbWFnZVZhbHVlKCkgY29uc3QgeyByZXR1cm4gZmFs
c2U7IH0KLSAgICB2aXJ0dWFsIGJvb2wgaXNCb3JkZXJJbWFnZVNsaWNlVmFsdWUoKSBjb25zdCB7
IHJldHVybiBmYWxzZTsgfQotICAgIHZpcnR1YWwgYm9vbCBpc0N1cnNvckltYWdlVmFsdWUoKSBj
b25zdCB7IHJldHVybiBmYWxzZTsgfQorICAgIGJvb2wgaXNNdXRhYmxlVmFsdWUoKSBjb25zdCB7
IHJldHVybiBtX2lzTXV0YWJsZTsgfQorICAgIGJvb2wgaXNQcmltaXRpdmVWYWx1ZSgpIGNvbnN0
IHsgcmV0dXJuIG1faXNQcmltaXRpdmU7IH0KKyAgICBib29sIGlzVmFsdWVMaXN0KCkgY29uc3Qg
eyByZXR1cm4gbV9pc0xpc3Q7IH0KKyAgICBib29sIGlzSW5pdGlhbFZhbHVlKCkgY29uc3QgeyBy
ZXR1cm4gbV9pc0luaXRpYWw7IH0KKyAgICBib29sIGlzSW5oZXJpdGVkVmFsdWUoKSBjb25zdCB7
IHJldHVybiBtX2lzSW5oZXJpdGVkOyB9CisKKyAgICBib29sIGlzQm9yZGVySW1hZ2VWYWx1ZSgp
IGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09IEJvcmRlckltYWdlQ2xhc3M7IH0KKyAgICBi
b29sIGlzQm9yZGVySW1hZ2VTbGljZVZhbHVlKCkgY29uc3QgeyByZXR1cm4gbV9jbGFzc1R5cGUg
PT0gQm9yZGVySW1hZ2VTbGljZUNsYXNzOyB9CisgICAgYm9vbCBpc0N1cnNvckltYWdlVmFsdWUo
KSBjb25zdCB7IHJldHVybiBtX2NsYXNzVHlwZSA9PSBDdXJzb3JJbWFnZUNsYXNzOyB9CisgICAg
Ym9vbCBpc0ZvbnRGYW1pbHlWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09IEZv
bnRGYW1pbHlDbGFzczsgfQorICAgIGJvb2wgaXNGb250RmVhdHVyZVZhbHVlKCkgY29uc3QgeyBy
ZXR1cm4gbV9jbGFzc1R5cGUgPT0gRm9udEZlYXR1cmVDbGFzczsgfQorICAgIGJvb2wgaXNGb250
VmFsdWUoKSBjb25zdCB7IHJldHVybiBtX2NsYXNzVHlwZSA9PSBGb250Q2xhc3M7IH0KKyAgICBi
b29sIGlzSW1hZ2VHZW5lcmF0b3JWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09
IENhbnZhc0NsYXNzIHx8IG1fY2xhc3NUeXBlID09IENyb3NzZmFkZUNsYXNzIHx8IG1fY2xhc3NU
eXBlID09IExpbmVhckdyYWRpZW50Q2xhc3MgfHwgbV9jbGFzc1R5cGUgPT0gUmFkaWFsR3JhZGll
bnRDbGFzczsgfQorICAgIGJvb2wgaXNJbWFnZVZhbHVlKCkgY29uc3QgeyByZXR1cm4gbV9jbGFz
c1R5cGUgPT0gSW1hZ2VDbGFzcyB8fCBtX2NsYXNzVHlwZSA9PSBDdXJzb3JJbWFnZUNsYXNzOyB9
CisgICAgYm9vbCBpc0ltcGxpY2l0SW5pdGlhbFZhbHVlKCkgY29uc3QgeyByZXR1cm4gbV9jbGFz
c1R5cGUgPT0gSW1wbGljaXRJbml0aWFsQ2xhc3M7IH0KKyAgICBib29sIGlzUmVmbGVjdFZhbHVl
KCkgY29uc3QgeyByZXR1cm4gbV9jbGFzc1R5cGUgPT0gUmVmbGVjdENsYXNzOyB9CisgICAgYm9v
bCBpc1NoYWRvd1ZhbHVlKCkgY29uc3QgeyByZXR1cm4gbV9jbGFzc1R5cGUgPT0gU2hhZG93Q2xh
c3M7IH0KKyAgICBib29sIGlzVGltaW5nRnVuY3Rpb25WYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1f
Y2xhc3NUeXBlID09IEN1YmljQmV6aWVyVGltaW5nRnVuY3Rpb25DbGFzcyB8fCBtX2NsYXNzVHlw
ZSA9PSBMaW5lYXJUaW1pbmdGdW5jdGlvbkNsYXNzIHx8IG1fY2xhc3NUeXBlID09IFN0ZXBzVGlt
aW5nRnVuY3Rpb25DbGFzczsgfQorICAgIGJvb2wgaXNXZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZSgp
IGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09IFdlYktpdENTU1RyYW5zZm9ybUNsYXNzOyB9
CisgICAgYm9vbCBpc0NTU0xpbmVCb3hDb250YWluVmFsdWUoKSBjb25zdCB7IHJldHVybiBtX2Ns
YXNzVHlwZSA9PSBMaW5lQm94Q29udGFpbkNsYXNzOyB9CiAjaWYgRU5BQkxFKENTUzNfRkxFWEJP
WCkKLSAgICB2aXJ0dWFsIGJvb2wgaXNGbGV4VmFsdWUoKSBjb25zdCB7IHJldHVybiBmYWxzZTsg
fQorICAgIGJvb2wgaXNGbGV4VmFsdWUoKSBjb25zdCB7IHJldHVybiBtX2NsYXNzVHlwZSA9PSBG
bGV4Q2xhc3M7IH0KICNlbmRpZgotICAgIHZpcnR1YWwgYm9vbCBpc0ZvbnRGYW1pbHlWYWx1ZSgp
IGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9Ci0gICAgdmlydHVhbCBib29sIGlzRm9udEZlYXR1cmVW
YWx1ZSgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9Ci0gICAgdmlydHVhbCBib29sIGlzRm9udFZh
bHVlKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KLSAgICB2aXJ0dWFsIGJvb2wgaXNJbWFnZUdl
bmVyYXRvclZhbHVlKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KLSAgICB2aXJ0dWFsIGJvb2wg
aXNJbWFnZVZhbHVlKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KLSAgICB2aXJ0dWFsIGJvb2wg
aXNJbmhlcml0ZWRWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9Ci0gICAgdmlydHVhbCBi
b29sIGlzSW5pdGlhbFZhbHVlKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KLSAgICB2aXJ0dWFs
IGJvb2wgaXNJbXBsaWNpdEluaXRpYWxWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9Ci0g
ICAgdmlydHVhbCBib29sIGlzUHJpbWl0aXZlVmFsdWUoKSBjb25zdCB7IHJldHVybiBmYWxzZTsg
fQotICAgIHZpcnR1YWwgYm9vbCBpc1JlZmxlY3RWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIGZhbHNl
OyB9Ci0gICAgdmlydHVhbCBib29sIGlzU2hhZG93VmFsdWUoKSBjb25zdCB7IHJldHVybiBmYWxz
ZTsgfQotICAgIHZpcnR1YWwgYm9vbCBpc1RpbWluZ0Z1bmN0aW9uVmFsdWUoKSBjb25zdCB7IHJl
dHVybiBmYWxzZTsgfQotICAgIHZpcnR1YWwgYm9vbCBpc1ZhbHVlTGlzdCgpIGNvbnN0IHsgcmV0
dXJuIGZhbHNlOyB9Ci0gICAgdmlydHVhbCBib29sIGlzV2ViS2l0Q1NTVHJhbnNmb3JtVmFsdWUo
KSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQotICAgIHZpcnR1YWwgYm9vbCBpc0NTU0xpbmVCb3hD
b250YWluVmFsdWUoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogI2lmIEVOQUJMRShDU1NfRklM
VEVSUykKLSAgICB2aXJ0dWFsIGJvb2wgaXNXZWJLaXRDU1NGaWx0ZXJWYWx1ZSgpIGNvbnN0IHsg
cmV0dXJuIGZhbHNlOyB9CisgICAgYm9vbCBpc1dlYktpdENTU0ZpbHRlclZhbHVlKCkgY29uc3Qg
eyByZXR1cm4gbV9jbGFzc1R5cGUgPT0gV2ViS2l0Q1NTRmlsdGVyQ2xhc3M7IH0KICNlbmRpZgog
I2lmIEVOQUJMRShTVkcpCi0gICAgdmlydHVhbCBib29sIGlzU1ZHQ29sb3IoKSBjb25zdCB7IHJl
dHVybiBmYWxzZTsgfQotICAgIHZpcnR1YWwgYm9vbCBpc1NWR1BhaW50KCkgY29uc3QgeyByZXR1
cm4gZmFsc2U7IH0KKyAgICBib29sIGlzU1ZHQ29sb3IoKSBjb25zdCB7IHJldHVybiBtX2NsYXNz
VHlwZSA9PSBTVkdDb2xvckNsYXNzIHx8IG1fY2xhc3NUeXBlID09IFNWR1BhaW50Q2xhc3M7IH0K
KyAgICBib29sIGlzU1ZHUGFpbnQoKSBjb25zdCB7IHJldHVybiBtX2NsYXNzVHlwZSA9PSBTVkdQ
YWludENsYXNzOyB9CiAjZW5kaWYKIAogICAgIHZpcnR1YWwgdm9pZCBhZGRTdWJyZXNvdXJjZVN0
eWxlVVJMcyhMaXN0SGFzaFNldDxLVVJMPiYsIGNvbnN0IENTU1N0eWxlU2hlZXQqKSB7IH0KIAog
cHJvdGVjdGVkOgotICAgIENTU1ZhbHVlKFR5cGUgdHlwZSA9IENTU19DVVNUT00pCi0gICAgICAg
IDogbV90eXBlKHR5cGUpCisKKyAgICBlbnVtIENsYXNzVHlwZSB7CisgICAgICAgIEFzcGVjdFJh
dGlvQ2xhc3MsCisgICAgICAgIEJvcmRlckltYWdlQ2xhc3MsCisgICAgICAgIEJvcmRlckltYWdl
U2xpY2VDbGFzcywKKyAgICAgICAgQ2FudmFzQ2xhc3MsCisgICAgICAgIEN1cnNvckltYWdlQ2xh
c3MsCisgICAgICAgIEZvbnRGYW1pbHlDbGFzcywKKyAgICAgICAgRm9udEZlYXR1cmVDbGFzcywK
KyAgICAgICAgRm9udENsYXNzLAorICAgICAgICBGb250RmFjZVNyY0NsYXNzLAorICAgICAgICBG
dW5jdGlvbkNsYXNzLAorICAgICAgICBMaW5lYXJHcmFkaWVudENsYXNzLAorICAgICAgICBSYWRp
YWxHcmFkaWVudENsYXNzLAorICAgICAgICBDcm9zc2ZhZGVDbGFzcywKKyAgICAgICAgSW1hZ2VD
bGFzcywKKyAgICAgICAgSW5oZXJpdGVkQ2xhc3MsCisgICAgICAgIEluaXRpYWxDbGFzcywKKyAg
ICAgICAgSW1wbGljaXRJbml0aWFsQ2xhc3MsCisgICAgICAgIFByaW1pdGl2ZUNsYXNzLAorICAg
ICAgICBSZWZsZWN0Q2xhc3MsCisgICAgICAgIFNoYWRvd0NsYXNzLAorICAgICAgICBMaW5lYXJU
aW1pbmdGdW5jdGlvbkNsYXNzLAorICAgICAgICBDdWJpY0JlemllclRpbWluZ0Z1bmN0aW9uQ2xh
c3MsCisgICAgICAgIFN0ZXBzVGltaW5nRnVuY3Rpb25DbGFzcywKKyAgICAgICAgVW5pY29kZVJh
bmdlQ2xhc3MsCisgICAgICAgIFZhbHVlTGlzdENsYXNzLAorICAgICAgICBXZWJLaXRDU1NUcmFu
c2Zvcm1DbGFzcywKKyAgICAgICAgTGluZUJveENvbnRhaW5DbGFzcywKKyNpZiBFTkFCTEUoQ1NT
M19GTEVYQk9YKQorICAgICAgICBGbGV4Q2xhc3MsCisjZW5kaWYKKyNpZiBFTkFCTEUoQ1NTX0ZJ
TFRFUlMpCisgICAgICAgIFdlYktpdENTU0ZpbHRlckNsYXNzLAorI2VuZGlmCisjaWYgRU5BQkxF
KFNWRykKKyAgICAgICAgU1ZHQ29sb3JDbGFzcywKKyAgICAgICAgU1ZHUGFpbnRDbGFzcywKKyNl
bmRpZgorICAgIH07CisKKyAgICBDbGFzc1R5cGUgY2xhc3NUeXBlKCkgY29uc3QgeyByZXR1cm4g
c3RhdGljX2Nhc3Q8Q2xhc3NUeXBlPihtX2NsYXNzVHlwZSk7IH0KKworICAgIENTU1ZhbHVlKENs
YXNzVHlwZSBjbGFzc1R5cGUpCisgICAgICAgIDogbV9jbGFzc1R5cGUoY2xhc3NUeXBlKQorICAg
ICAgICAsIG1faXNQcmltaXRpdmUoaXNQcmltaXRpdmVUeXBlKGNsYXNzVHlwZSkpCisgICAgICAg
ICwgbV9pc011dGFibGUoaXNNdXRhYmxlVHlwZShjbGFzc1R5cGUpKQorICAgICAgICAsIG1faXNM
aXN0KGlzTGlzdFR5cGUoY2xhc3NUeXBlKSkKKyAgICAgICAgLCBtX2lzSW5pdGlhbChpc0luaXRp
YWxUeXBlKGNsYXNzVHlwZSkpCisgICAgICAgICwgbV9pc0luaGVyaXRlZChpc0luaGVyaXRlZFR5
cGUoY2xhc3NUeXBlKSkKICAgICB7CiAgICAgfQogCiBwcml2YXRlOgorICAgIHN0YXRpYyBib29s
IGlzUHJpbWl0aXZlVHlwZShDbGFzc1R5cGUgdHlwZSkKKyAgICB7CisgICAgICAgIHJldHVybiB0
eXBlID09IFByaW1pdGl2ZUNsYXNzCisgICAgICAgICAgICAgICB8fCB0eXBlID09IEltYWdlQ2xh
c3MKKyAgICAgICAgICAgICAgIHx8IHR5cGUgPT0gQ3Vyc29ySW1hZ2VDbGFzcworICAgICAgICAg
ICAgICAgfHwgdHlwZSA9PSBGb250RmFtaWx5Q2xhc3M7CisgICAgfQorCisgICAgc3RhdGljIGJv
b2wgaXNMaXN0VHlwZShDbGFzc1R5cGUgdHlwZSkKKyAgICB7CisgICAgICAgIHJldHVybiB0eXBl
ID09IFZhbHVlTGlzdENsYXNzCisjaWYgRU5BQkxFKENTU19GSUxURVJTKQorICAgICAgICAgICAg
ICAgfHwgdHlwZSA9PSBXZWJLaXRDU1NGaWx0ZXJDbGFzcworI2VuZGlmCisgICAgICAgICAgICAg
ICB8fCB0eXBlID09IFdlYktpdENTU1RyYW5zZm9ybUNsYXNzOworICAgIH0KKworICAgIHN0YXRp
YyBib29sIGlzTXV0YWJsZVR5cGUoQ2xhc3NUeXBlIHR5cGUpCisgICAgeworI2lmIEVOQUJMRShT
VkcpCisgICAgICAgIHJldHVybiB0eXBlID09IFNWR0NvbG9yQ2xhc3MKKyAgICAgICAgICAgICAg
IHx8IHR5cGUgPT0gU1ZHUGFpbnRDbGFzczsKKyNlbHNlCisgICAgICAgIFVOVVNFRF9QQVJBTSh0
eXBlKTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworI2VuZGlmCisgICAgfQorCisgICAgc3RhdGlj
IGJvb2wgaXNJbmhlcml0ZWRUeXBlKENsYXNzVHlwZSB0eXBlKQorICAgIHsKKyAgICAgICAgcmV0
dXJuIHR5cGUgPT0gSW5oZXJpdGVkQ2xhc3M7CisgICAgfQorCisgICAgc3RhdGljIGJvb2wgaXNJ
bml0aWFsVHlwZShDbGFzc1R5cGUgdHlwZSkKKyAgICB7CisgICAgICAgIHJldHVybiB0eXBlID09
IEluaXRpYWxDbGFzcyB8fCB0eXBlID09IEltcGxpY2l0SW5pdGlhbENsYXNzOworICAgIH0KKwog
ICAgIC8vIEZJWE1FOiBUaGlzIGNsYXNzIGlzIGN1cnJlbnRseSBhIGxpdHRsZSBibG9hdGVkLCBi
dXQgdGhhdCB3aWxsIGNoYW5nZS4KICAgICAvLyAgICAgICAgU2VlIDxodHRwOi8vd2Via2l0Lm9y
Zy9iLzcxNjY2PiBmb3IgbW9yZSBpbmZvcm1hdGlvbi4KLSAgICB1bnNpZ25lZCBtX3R5cGUgOiAz
OyAvLyBUeXBlCisgICAgdW5zaWduZWQgbV9jbGFzc1R5cGUgOiA1OyAvLyBDbGFzc1R5cGUKKyAg
ICBib29sIG1faXNQcmltaXRpdmUgOiAxOworICAgIGJvb2wgbV9pc011dGFibGUgOiAxOworICAg
IGJvb2wgbV9pc0xpc3QgOiAxOworICAgIGJvb2wgbV9pc0luaXRpYWwgOiAxOworICAgIGJvb2wg
bV9pc0luaGVyaXRlZCA6IDE7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWVMaXN0LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NWYWx1ZUxpc3QuY3BwCmluZGV4IDU5MWIyYTguLjdhYTNhYzIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUxpc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NWYWx1ZUxpc3QuY3BwCkBAIC0yNywxNCArMjcsMjAgQEAKIAogbmFtZXNwYWNlIFdl
YkNvcmUgewogCitDU1NWYWx1ZUxpc3Q6OkNTU1ZhbHVlTGlzdChDbGFzc1R5cGUgY2xhc3NUeXBl
LCBib29sIGlzU3BhY2VTZXBhcmF0ZWQpCisgICAgOiBDU1NWYWx1ZShjbGFzc1R5cGUpCisgICAg
LCBtX2lzU3BhY2VTZXBhcmF0ZWQoaXNTcGFjZVNlcGFyYXRlZCkKK3sKK30KKwogQ1NTVmFsdWVM
aXN0OjpDU1NWYWx1ZUxpc3QoYm9vbCBpc1NwYWNlU2VwYXJhdGVkKQotICAgIDogQ1NTVmFsdWUo
Q1NTX1ZBTFVFX0xJU1QpCisgICAgOiBDU1NWYWx1ZShWYWx1ZUxpc3RDbGFzcykKICAgICAsIG1f
aXNTcGFjZVNlcGFyYXRlZChpc1NwYWNlU2VwYXJhdGVkKQogewogfQogCiBDU1NWYWx1ZUxpc3Q6
OkNTU1ZhbHVlTGlzdChDU1NQYXJzZXJWYWx1ZUxpc3QqIGxpc3QpCi0gICAgOiBDU1NWYWx1ZShD
U1NfVkFMVUVfTElTVCkKKyAgICA6IENTU1ZhbHVlKFZhbHVlTGlzdENsYXNzKQogICAgICwgbV9p
c1NwYWNlU2VwYXJhdGVkKHRydWUpCiB7CiAgICAgaWYgKGxpc3QpIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUxpc3QuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NW
YWx1ZUxpc3QuaAppbmRleCAyNDIzZDViLi4xZjJhNTc1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTVmFsdWVMaXN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVl
TGlzdC5oCkBAIC02MSwxMSArNjEsMTEgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBhZGRT
dWJyZXNvdXJjZVN0eWxlVVJMcyhMaXN0SGFzaFNldDxLVVJMPiYsIGNvbnN0IENTU1N0eWxlU2hl
ZXQqKTsKIAogcHJvdGVjdGVkOgotICAgIENTU1ZhbHVlTGlzdChib29sIGlzU3BhY2VTZXBhcmF0
ZWQpOwotICAgIENTU1ZhbHVlTGlzdChDU1NQYXJzZXJWYWx1ZUxpc3QqKTsKKyAgICBDU1NWYWx1
ZUxpc3QoQ2xhc3NUeXBlLCBib29sIGlzU3BhY2VTZXBhcmF0ZWQpOwogCiBwcml2YXRlOgotICAg
IHZpcnR1YWwgYm9vbCBpc1ZhbHVlTGlzdCgpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KKyAgICBD
U1NWYWx1ZUxpc3QoYm9vbCBpc1NwYWNlU2VwYXJhdGVkKTsKKyAgICBDU1NWYWx1ZUxpc3QoQ1NT
UGFyc2VyVmFsdWVMaXN0Kik7CiAKICAgICBWZWN0b3I8UmVmUHRyPENTU1ZhbHVlPiA+IG1fdmFs
dWVzOwogICAgIGJvb2wgbV9pc1NwYWNlU2VwYXJhdGVkOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvY3NzL0ZvbnRGYW1pbHlWYWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZh
bWlseVZhbHVlLmNwcAppbmRleCBlYmU5NjQ1Li41ZDgzZmIxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvRm9udEZhbWlseVZhbHVlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Rm9udEZhbWlseVZhbHVlLmNwcApAQCAtMjYsNyArMjYsNyBAQAogbmFtZXNwYWNlIFdlYkNvcmUg
ewogCiBGb250RmFtaWx5VmFsdWU6OkZvbnRGYW1pbHlWYWx1ZShjb25zdCBTdHJpbmcmIGZhbWls
eU5hbWUpCi0gICAgOiBDU1NQcmltaXRpdmVWYWx1ZShTdHJpbmcoKSwgQ1NTX1NUUklORykKKyAg
ICA6IENTU1ByaW1pdGl2ZVZhbHVlKEZvbnRGYW1pbHlDbGFzcywgU3RyaW5nKCksIENTU19TVFJJ
TkcpCiAgICAgLCBtX2ZhbWlseU5hbWUoZmFtaWx5TmFtZSkKIHsKICAgICAvLyBJZiB0aGVyZSBp
cyBhbnl0aGluZyBpbiBwYXJlbnRoZXNlcyBvciBzcXVhcmUgYnJhY2tldHMgYXQgdGhlIGVuZCwg
ZGVsZXRlIGl0LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYW1pbHlWYWx1
ZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGYW1pbHlWYWx1ZS5oCmluZGV4IDNmN2QzYTMu
LjA4N2QyMmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmFtaWx5VmFsdWUu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZhbWlseVZhbHVlLmgKQEAgLTQxLDcgKzQx
LDYgQEAgcHVibGljOgogCiBwcml2YXRlOgogICAgIEZvbnRGYW1pbHlWYWx1ZShjb25zdCBTdHJp
bmcmIGZhbWlseU5hbWUpOwotICAgIHZpcnR1YWwgYm9vbCBpc0ZvbnRGYW1pbHlWYWx1ZSgpIGNv
bnN0IHsgcmV0dXJuIHRydWU7IH0KIAogICAgIFN0cmluZyBtX2ZhbWlseU5hbWU7CiB9OwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGZWF0dXJlVmFsdWUuY3BwIGIvU291cmNl
L1dlYkNvcmUvY3NzL0ZvbnRGZWF0dXJlVmFsdWUuY3BwCmluZGV4IGNlNjg0YmYuLjMzZjMwZjcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmVhdHVyZVZhbHVlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZlYXR1cmVWYWx1ZS5jcHAKQEAgLTMzLDcgKzMzLDgg
QEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogRm9udEZlYXR1cmVWYWx1ZTo6Rm9udEZlYXR1cmVW
YWx1ZShjb25zdCBTdHJpbmcmIHRhZywgaW50IHZhbHVlKQotICAgIDogbV90YWcodGFnKQorICAg
IDogQ1NTVmFsdWUoRm9udEZlYXR1cmVDbGFzcykKKyAgICAsIG1fdGFnKHRhZykKICAgICAsIG1f
dmFsdWUodmFsdWUpCiB7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZl
YXR1cmVWYWx1ZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRGZWF0dXJlVmFsdWUuaAppbmRl
eCA1NWY0MTI3Li4zMGIwZGZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvRm9udEZl
YXR1cmVWYWx1ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250RmVhdHVyZVZhbHVlLmgK
QEAgLTQ0LDcgKzQ0LDYgQEAgcHVibGljOgogCiBwcml2YXRlOgogICAgIEZvbnRGZWF0dXJlVmFs
dWUoY29uc3QgU3RyaW5nJiwgaW50KTsKLSAgICB2aXJ0dWFsIGJvb2wgaXNGb250RmVhdHVyZVZh
bHVlKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQogCiAgICAgU3RyaW5nIG1fdGFnOwogICAgIGNv
bnN0IGludCBtX3ZhbHVlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRWYWx1
ZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0ZvbnRWYWx1ZS5oCmluZGV4IDVjNzQwNmMuLmM5NjZh
MDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9Gb250VmFsdWUuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvRm9udFZhbHVlLmgKQEAgLTQ3LDkgKzQ3LDEwIEBAIHB1YmxpYzoKICAg
ICBSZWZQdHI8Q1NTVmFsdWVMaXN0PiBmYW1pbHk7CiAKIHByaXZhdGU6Ci0gICAgRm9udFZhbHVl
KCkgeyB9Ci0KLSAgICB2aXJ0dWFsIGJvb2wgaXNGb250VmFsdWUoKSBjb25zdCB7IHJldHVybiB0
cnVlOyB9CisgICAgRm9udFZhbHVlKCkKKyAgICAgICAgOiBDU1NWYWx1ZShGb250Q2xhc3MpCisg
ICAgeworICAgIH0KIH07CiAKIH0gLy8gbmFtZXNwYWNlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvU2hhZG93VmFsdWUuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1NoYWRvd1ZhbHVl
LmNwcAppbmRleCAwNjBhMzIyLi4yNWFjNTE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvU2hhZG93VmFsdWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TaGFkb3dWYWx1ZS5j
cHAKQEAgLTMyLDcgKzMyLDggQEAgU2hhZG93VmFsdWU6OlNoYWRvd1ZhbHVlKFBhc3NSZWZQdHI8
Q1NTUHJpbWl0aXZlVmFsdWU+IF94LAogICAgIFBhc3NSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+
IF9zcHJlYWQsCiAgICAgUGFzc1JlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gX3N0eWxlLAogICAg
IFBhc3NSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IF9jb2xvcikKLSAgICA6IHgoX3gpCisgICAg
OiBDU1NWYWx1ZShTaGFkb3dDbGFzcykKKyAgICAsIHgoX3gpCiAgICAgLCB5KF95KQogICAgICwg
Ymx1cihfYmx1cikKICAgICAsIHNwcmVhZChfc3ByZWFkKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvY3NzL1NoYWRvd1ZhbHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU2hhZG93VmFsdWUu
aAppbmRleCBmYWIxMDcxLi5hODhhMGU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
U2hhZG93VmFsdWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU2hhZG93VmFsdWUuaApAQCAt
NTgsOCArNTgsNiBAQCBwcml2YXRlOgogICAgICAgICBQYXNzUmVmUHRyPENTU1ByaW1pdGl2ZVZh
bHVlPiBzcHJlYWQsCiAgICAgICAgIFBhc3NSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IHN0eWxl
LAogICAgICAgICBQYXNzUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiBjb2xvcik7Ci0KLSAgICB2
aXJ0dWFsIGJvb2wgaXNTaGFkb3dWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KIH07CiAK
IH0gLy8gbmFtZXNwYWNlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NT
RmlsdGVyVmFsdWUuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0ZpbHRlclZhbHVl
LmNwcAppbmRleCAyNTA1ODMxLi4xMDUwMDVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvV2ViS2l0Q1NTRmlsdGVyVmFsdWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJL
aXRDU1NGaWx0ZXJWYWx1ZS5jcHAKQEAgLTM1LDcgKzM1LDcgQEAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAogV2ViS2l0Q1NTRmlsdGVyVmFsdWU6OldlYktpdENTU0ZpbHRlclZhbHVlKEZpbHRlck9w
ZXJhdGlvblR5cGUgb3BlcmF0aW9uVHlwZSkKLSAgICA6IENTU1ZhbHVlTGlzdCh0cnVlKQorICAg
IDogQ1NTVmFsdWVMaXN0KFdlYktpdENTU0ZpbHRlckNsYXNzLCB0cnVlKQogICAgICwgbV90eXBl
KG9wZXJhdGlvblR5cGUpCiB7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvV2Vi
S2l0Q1NTRmlsdGVyVmFsdWUuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NGaWx0ZXJW
YWx1ZS5oCmluZGV4IGQ0ZDA4ZTEuLjQ4ZjFhN2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9XZWJLaXRDU1NGaWx0ZXJWYWx1ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJL
aXRDU1NGaWx0ZXJWYWx1ZS5oCkBAIC02Niw4ICs2Niw2IEBAIHB1YmxpYzoKIHByaXZhdGU6CiAg
ICAgV2ViS2l0Q1NTRmlsdGVyVmFsdWUoRmlsdGVyT3BlcmF0aW9uVHlwZSk7CiAKLSAgICB2aXJ0
dWFsIGJvb2wgaXNXZWJLaXRDU1NGaWx0ZXJWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0K
LQogICAgIEZpbHRlck9wZXJhdGlvblR5cGUgbV90eXBlOwogfTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU1RyYW5zZm9ybVZhbHVlLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9XZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5jcHAKaW5kZXggNzYyMDQyNC4uYTU2YTlk
MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU1RyYW5zZm9ybVZhbHVl
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvV2ViS2l0Q1NTVHJhbnNmb3JtVmFsdWUuY3Bw
CkBAIC0zMyw3ICszMyw3IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFdlYktpdENTU1RyYW5z
Zm9ybVZhbHVlOjpXZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZShUcmFuc2Zvcm1PcGVyYXRpb25UeXBl
IG9wKQotICAgIDogQ1NTVmFsdWVMaXN0KGZhbHNlKQorICAgIDogQ1NTVmFsdWVMaXN0KFdlYktp
dENTU1RyYW5zZm9ybUNsYXNzLCBmYWxzZSkKICAgICAsIG1fdHlwZShvcCkKIHsKIH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9XZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZS5oIGIvU291
cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU1RyYW5zZm9ybVZhbHVlLmgKaW5kZXggODU4MDk2YS4u
ZDdjZDRjYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU1RyYW5zZm9y
bVZhbHVlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU1RyYW5zZm9ybVZhbHVl
LmgKQEAgLTc0LDggKzc0LDYgQEAgcHVibGljOgogcHJpdmF0ZToKICAgICBXZWJLaXRDU1NUcmFu
c2Zvcm1WYWx1ZShUcmFuc2Zvcm1PcGVyYXRpb25UeXBlKTsKIAotICAgIHZpcnR1YWwgYm9vbCBp
c1dlYktpdENTU1RyYW5zZm9ybVZhbHVlKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQotCiAgICAg
VHJhbnNmb3JtT3BlcmF0aW9uVHlwZSBtX3R5cGU7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9zdmcvU1ZHQ29sb3IuY3BwIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0NvbG9yLmNw
cAppbmRleCA5MTFkMDJmLi4wMTYzMzdlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcv
U1ZHQ29sb3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdDb2xvci5jcHAKQEAgLTMx
LDcgKzMxLDE0IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFNWR0NvbG9yOjpTVkdDb2xvcihj
b25zdCBTVkdDb2xvclR5cGUmIGNvbG9yVHlwZSkKLSAgICA6IG1fY29sb3JUeXBlKGNvbG9yVHlw
ZSkKKyAgICA6IENTU011dGFibGVWYWx1ZShTVkdDb2xvckNsYXNzKQorICAgICwgbV9jb2xvclR5
cGUoY29sb3JUeXBlKQoreworfQorCitTVkdDb2xvcjo6U1ZHQ29sb3IoQ2xhc3NUeXBlIGNsYXNz
VHlwZSwgY29uc3QgU1ZHQ29sb3JUeXBlJiBjb2xvclR5cGUpCisgICAgOiBDU1NNdXRhYmxlVmFs
dWUoY2xhc3NUeXBlKQorICAgICwgbV9jb2xvclR5cGUoY29sb3JUeXBlKQogewogfQogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQ29sb3IuaCBiL1NvdXJjZS9XZWJDb3JlL3N2
Zy9TVkdDb2xvci5oCmluZGV4IDU4ZGM3MDQuLmRhZWQ4M2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3N2Zy9TVkdDb2xvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdDb2xvci5o
CkBAIC03Miw3ICs3Miw3IEBAIHB1YmxpYzoKIHByb3RlY3RlZDoKICAgICBmcmllbmQgY2xhc3Mg
Q1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uOwogCi0gICAgU1ZHQ29sb3IoY29uc3QgU1ZHQ29s
b3JUeXBlJik7CisgICAgU1ZHQ29sb3IoQ2xhc3NUeXBlLCBjb25zdCBTVkdDb2xvclR5cGUmKTsK
ICAgICB2aXJ0dWFsIH5TVkdDb2xvcigpIHsgfQogICAgIHZpcnR1YWwgU3RyaW5nIGNzc1RleHQo
KSBjb25zdDsKIApAQCAtODAsNyArODAsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgdm9pZCBzZXRDb2xv
clR5cGUoY29uc3QgU1ZHQ29sb3JUeXBlJiB0eXBlKSB7IG1fY29sb3JUeXBlID0gdHlwZTsgfQog
CiBwcml2YXRlOgotICAgIHZpcnR1YWwgYm9vbCBpc1NWR0NvbG9yKCkgY29uc3QgeyByZXR1cm4g
dHJ1ZTsgfQorICAgIFNWR0NvbG9yKGNvbnN0IFNWR0NvbG9yVHlwZSYpOwogCiAgICAgQ29sb3Ig
bV9jb2xvcjsKICAgICBTVkdDb2xvclR5cGUgbV9jb2xvclR5cGU7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9zdmcvU1ZHUGFpbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BhaW50
LmNwcAppbmRleCA1NjVhYTA4Li44NjNjZTZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9z
dmcvU1ZHUGFpbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYWludC5jcHAKQEAg
LTU0LDcgKzU0LDcgQEAgc3RhdGljIGlubGluZSBTVkdDb2xvcjo6U1ZHQ29sb3JUeXBlIGNvbG9y
VHlwZUZvclBhaW50VHlwZShjb25zdCBTVkdQYWludDo6U1ZHUGEKIH0KIAogU1ZHUGFpbnQ6OlNW
R1BhaW50KGNvbnN0IFNWR1BhaW50VHlwZSYgcGFpbnRUeXBlLCBjb25zdCBTdHJpbmcmIHVyaSkK
LSAgICA6IFNWR0NvbG9yKGNvbG9yVHlwZUZvclBhaW50VHlwZShwYWludFR5cGUpKQorICAgIDog
U1ZHQ29sb3IoU1ZHUGFpbnRDbGFzcywgY29sb3JUeXBlRm9yUGFpbnRUeXBlKHBhaW50VHlwZSkp
CiAgICAgLCBtX3BhaW50VHlwZShwYWludFR5cGUpCiAgICAgLCBtX3VyaSh1cmkpCiB7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGFpbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3N2
Zy9TVkdQYWludC5oCmluZGV4IGU1OTFjN2EuLjYyMDc4NGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3N2Zy9TVkdQYWludC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYWludC5o
CkBAIC0xMDYsNyArMTA2LDYgQEAgcHJpdmF0ZToKIHByaXZhdGU6CiAgICAgU1ZHUGFpbnQoY29u
c3QgU1ZHUGFpbnRUeXBlJiwgY29uc3QgU3RyaW5nJiB1cmkgPSBTdHJpbmcoKSk7CiAKLSAgICB2
aXJ0dWFsIGJvb2wgaXNTVkdQYWludCgpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KICAgICB2aXJ0
dWFsIFN0cmluZyBjc3NUZXh0KCkgY29uc3Q7CiAKICAgICBTVkdQYWludFR5cGUgbV9wYWludFR5
cGU7Cg==
</data>
<flag name="review"
          id="112416"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>