<?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>136345</bug_id>
          
          <creation_ts>2014-08-28 09:26:03 -0700</creation_ts>
          <short_desc>Add &apos;initial&apos; keyword support for scroll snap CSS properties</short_desc>
          <delta_ts>2015-03-06 15:40:20 -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>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=142411</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=142414</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>134283</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Jon Lee">jonlee</reporter>
          <assigned_to name="Brent Fulgham">bfulgham</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>hyatt</cc>
    
    <cc>syoichi</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1032002</commentid>
    <comment_count>0</comment_count>
    <who name="Jon Lee">jonlee</who>
    <bug_when>2014-08-28 09:26:03 -0700</bug_when>
    <thetext>Scroll snap CSS properties need to support &quot;initial&quot; value</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1032003</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2014-08-28 09:26:10 -0700</bug_when>
    <thetext>&lt;rdar://problem/18162325&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1075002</commentid>
    <comment_count>2</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2015-03-06 10:21:57 -0800</bug_when>
    <thetext>According to CSS Scroll Snap Points Module Level 1, 6 November 2014 Draft:

scroll-snap-type: none
scroll-snap-points-x: none
scroll-snap-points-y: none
scroll-snap-destination: 0px 0px
scroll-snap-coordinate: none</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1075105</commentid>
    <comment_count>3</comment_count>
      <attachid>248102</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2015-03-06 14:50:10 -0800</bug_when>
    <thetext>Created attachment 248102
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1075109</commentid>
    <comment_count>4</comment_count>
      <attachid>248102</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2015-03-06 14:55:23 -0800</bug_when>
    <thetext>Comment on attachment 248102
Patch

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

&gt; Source/WebCore/css/StyleBuilderCustom.h:1709
&gt; +}
&gt; +inline void StyleBuilderCustom::applyInheritWebkitScrollSnapPointsX(StyleResolver&amp; styleResolver)
&gt; +{
&gt; +    styleResolver.style()-&gt;setScrollSnapPointsX(styleResolver.parentStyle()-&gt;scrollSnapPointsX() ? std::make_unique&lt;ScrollSnapPoints&gt;(*styleResolver.parentStyle()-&gt;scrollSnapPointsX()) : nullptr);

Maybe you want some blank lines to separate methods here.

&gt; Source/WebCore/css/StyleBuilderCustom.h:1721
&gt; +#endif
&gt; +
&gt; +    

Two lines.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1075111</commentid>
    <comment_count>5</comment_count>
      <attachid>248102</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2015-03-06 14:58:21 -0800</bug_when>
    <thetext>Comment on attachment 248102
Patch

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

&gt;&gt; Source/WebCore/css/StyleBuilderCustom.h:1709
&gt;&gt; +    styleResolver.style()-&gt;setScrollSnapPointsX(styleResolver.parentStyle()-&gt;scrollSnapPointsX() ? std::make_unique&lt;ScrollSnapPoints&gt;(*styleResolver.parentStyle()-&gt;scrollSnapPointsX()) : nullptr);
&gt; 
&gt; Maybe you want some blank lines to separate methods here.

OK!

&gt;&gt; Source/WebCore/css/StyleBuilderCustom.h:1721
&gt;&gt; +    
&gt; 
&gt; Two lines.

OK!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1075122</commentid>
    <comment_count>6</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2015-03-06 15:37:12 -0800</bug_when>
    <thetext>The test failures on mac/mac-wk2 are because I forgot to rebaseline the scroll-snap-property-computed-styles test after correcting the &apos;initial&apos; case. I&apos;ll correct while landing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1075123</commentid>
    <comment_count>7</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2015-03-06 15:40:20 -0800</bug_when>
    <thetext>Committed r181189: &lt;http://trac.webkit.org/changeset/181189&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>248102</attachid>
            <date>2015-03-06 14:50:10 -0800</date>
            <delta_ts>2015-03-06 14:55:23 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-136345-20150306144950.patch</filename>
            <type>text/plain</type>
            <size>49682</size>
            <attacher name="Brent Fulgham">bfulgham</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4MTE4NCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQ3IEBACisyMDE1LTAzLTA2ICBCcmVudCBG
dWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAgICAgIEFkZCAnaW5pdGlhbCcga2V5
d29yZCBzdXBwb3J0IGZvciBzY3JvbGwgc25hcCBDU1MgcHJvcGVydGllcworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM2MzQ1CisgICAgICAgIDxyZGFy
Oi8vcHJvYmxlbS8xODE2MjMyNT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBUZXN0ZWQgYnkgY3NzMy9zY3JvbGwtc25hcC9zY3JvbGwtc25hcC1pbml0
aWFsLmh0bWwKKworICAgICAgICBUaGUgZXhpc3RpbmcgaW1wbGVtZW50YXRpb24gYWxyZWFkeSBo
YWQgJ2luaXRpYWwnIGtleXdvcmQgc3VwcG9ydCwgYnV0IGRpZCBub3QgZnVsbHkgZm9sbG93Cisg
ICAgICAgIHRoZSBDU1Mgc3BlY2lmaWNhdGlvbi4gSW4gcGFydGljdWxhciwgdGhlICdpbml0aWFs
JyBzdGF0ZSBmb3IgdGhlIHNjcm9sbC1zbmFwLXBvaW50cy14IGFuZAorICAgICAgICBzY3JvbGwt
c25hcC1wb2ludHMteSBwcm9wZXJ0aWVzIHdhcyBub3QgaGFuZGxlZCBjb3JyZWN0bHkuCisKKyAg
ICAgICAgUmV2aXNlIGltcGxlbWVudGF0aW9uIHRvIHJlcHJlc2VudCBTY3JvbGxTbmFwUG9pbnRz
IGFzIGEgcG9pbnRlciwgc28gdGhhdCAnbm9uZScgaXMgYSB2YWxpZAorICAgICAgICBzdGF0ZS4K
KworICAgICAgICAqIGNzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6c2Nyb2xsU25hcFBvaW50cyk6IElmICdwb2ludHMnIGlzIG51bGwsIHJldHVy
biBDU1NWYWx1ZU5vbmUuCisgICAgICAgICogY3NzL0NTU1Byb3BlcnR5TmFtZXMuaW46IFByb3Zp
ZGUgY3VzdG9tIGluaXRpYWwvaW5oZXJpdCBoYW5kbGVzIGZvciBzbmFwIHBvaW50IHgveSBzZXRz
LgorICAgICAgICAqIGNzcy9TdHlsZUJ1aWxkZXJDb252ZXJ0ZXIuaDoKKyAgICAgICAgKFdlYkNv
cmU6OlN0eWxlQnVpbGRlckNvbnZlcnRlcjo6Y29udmVydFNjcm9sbFNuYXBQb2ludHMpOiBVcGRh
dGUgdG8gcmVwcmVzZW50IFNjcm9sbFNuYXBQb2ludHMKKyAgICAgICAgYXMgYSBwb2ludGVyLgor
ICAgICAgICAqIGNzcy9TdHlsZUJ1aWxkZXJDdXN0b20uaDoKKyAgICAgICAgKFdlYkNvcmU6OlN0
eWxlQnVpbGRlckN1c3RvbTo6YXBwbHlJbml0aWFsV2Via2l0U2Nyb2xsU25hcFBvaW50c1gpOiBQ
cm92aWRlIGN1c3RvbSBwb2ludGVyLWJhc2VkCisgICAgICAgIGltcGxlbWVudGF0aW9uIGZvciBT
Y3JvbGxTbmFwUG9pbnRzLgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVCdWlsZGVyQ3VzdG9tOjph
cHBseUluaGVyaXRXZWJraXRTY3JvbGxTbmFwUG9pbnRzWCk6IERpdHRvLgorICAgICAgICAoV2Vi
Q29yZTo6U3R5bGVCdWlsZGVyQ3VzdG9tOjphcHBseUluaXRpYWxXZWJraXRTY3JvbGxTbmFwUG9p
bnRzWSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVCdWlsZGVyQ3VzdG9tOjphcHBs
eUluaGVyaXRXZWJraXRTY3JvbGxTbmFwUG9pbnRzWSk6IERpdHRvLiIKKyAgICAgICAgKiBwYWdl
L3Njcm9sbGluZy9BeGlzU2Nyb2xsU25hcE9mZnNldHMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
dXBkYXRlRnJvbVN0eWxlKTogSGFuZGxlIFNjcm9sbFNuYXBQb2ludHMgYXMgcG9pbnRlcnMuCisg
ICAgICAgIChXZWJDb3JlOjp1cGRhdGVTbmFwT2Zmc2V0c0ZvclNjcm9sbGFibGVBcmVhKTogRGl0
dG8uCisgICAgICAgICogcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlclN0eWxlOjpzY3JvbGxTbmFwUG9pbnRzWCk6IFVwZGF0ZSB0byB1c2Ug
cG9pbnRlci1iYXNlZCByZXByZXNlbnRhdGlvbiBvZiBTY3JvbGxTbmFwUG9pbnRzLgorICAgICAg
ICAoV2ViQ29yZTo6UmVuZGVyU3R5bGU6OnNjcm9sbFNuYXBQb2ludHNZKTogRGl0dG8uCisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJTdHlsZTo6c2V0U2Nyb2xsU25hcFBvaW50c1gpOiBEaXR0by4K
KyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclN0eWxlOjpzZXRTY3JvbGxTbmFwUG9pbnRzWSk6IERp
dHRvLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU3R5bGU6OmluaXRpYWxTY3JvbGxTbmFwUG9p
bnRzWCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTdHlsZTo6aW5pdGlhbFNj
cm9sbFNuYXBQb2ludHNZKTogRGVsZXRlZC4KKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvUmVu
ZGVyU3R5bGUuaDoKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvU3R5bGVTY3JvbGxTbmFwUG9p
bnRzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlU2Nyb2xsU25hcFBvaW50czo6U3R5bGVT
Y3JvbGxTbmFwUG9pbnRzKTogUmV2aXNlIGNvbnN0cnVjdG9yIHRvIGhhbmRsZSBwb2ludGVyIGFy
Z3VtZW50LgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9TdHlsZVNjcm9sbFNuYXBQb2ludHMu
aDoKKwogMjAxNS0wMy0wNSAgUm9nZXIgRm9uZyAgPHJvZ2VyX2ZvbmdAYXBwbGUuY29tPgogCiAg
ICAgICAgIFJlc2tpbiBDYXB0aW9ucyBidXR0b24gYW5kIGNvbnRhaW5lciBvbiBPU1guCkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9u
LmNwcAkocmV2aXNpb24gMTgxMTU2KQorKysgU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVk
U3R5bGVEZWNsYXJhdGlvbi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTExMDYsNyArMTEwNiw2IEBA
IHN0YXRpYyBSZWY8Q1NTVmFsdWVMaXN0PiBnZXRUcmFuc2l0aW9uUHIKIH0KIAogI2lmIEVOQUJM
RShDU1NfU0NST0xMX1NOQVApCi0KIHN0YXRpYyBSZWY8Q1NTVmFsdWVMaXN0PiBzY3JvbGxTbmFw
RGVzdGluYXRpb24oUmVuZGVyU3R5bGUmIHN0eWxlLCBjb25zdCBMZW5ndGhTaXplJiBkZXN0aW5h
dGlvbikKIHsKICAgICBhdXRvIGxpc3QgPSBDU1NWYWx1ZUxpc3Q6OmNyZWF0ZVNwYWNlU2VwYXJh
dGVkKCk7CkBAIC0xMTE1LDE1ICsxMTE0LDE4IEBAIHN0YXRpYyBSZWY8Q1NTVmFsdWVMaXN0PiBz
Y3JvbGxTbmFwRGVzdGkKICAgICByZXR1cm4gbGlzdDsKIH0KIAotc3RhdGljIFJlZjxDU1NWYWx1
ZT4gc2Nyb2xsU25hcFBvaW50cyhSZW5kZXJTdHlsZSYgc3R5bGUsIGNvbnN0IFNjcm9sbFNuYXBQ
b2ludHMmIHBvaW50cykKK3N0YXRpYyBSZWY8Q1NTVmFsdWU+IHNjcm9sbFNuYXBQb2ludHMoUmVu
ZGVyU3R5bGUmIHN0eWxlLCBjb25zdCBTY3JvbGxTbmFwUG9pbnRzKiBwb2ludHMpCiB7Ci0gICAg
aWYgKHBvaW50cy51c2VzRWxlbWVudHMpCisgICAgaWYgKCFwb2ludHMpCisgICAgICAgIHJldHVy
biBjc3NWYWx1ZVBvb2woKS5jcmVhdGVJZGVudGlmaWVyVmFsdWUoQ1NTVmFsdWVOb25lKTsKKwor
ICAgIGlmIChwb2ludHMtPnVzZXNFbGVtZW50cykKICAgICAgICAgcmV0dXJuIGNzc1ZhbHVlUG9v
bCgpLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShDU1NWYWx1ZUVsZW1lbnRzKTsKICAgICBhdXRvIGxp
c3QgPSBDU1NWYWx1ZUxpc3Q6OmNyZWF0ZVNwYWNlU2VwYXJhdGVkKCk7Ci0gICAgZm9yIChhdXRv
JiBwb2ludCA6IHBvaW50cy5vZmZzZXRzKQorICAgIGZvciAoYXV0byYgcG9pbnQgOiBwb2ludHMt
Pm9mZnNldHMpCiAgICAgICAgIGxpc3QuZ2V0KCkuYXBwZW5kKHBlcmNlbnRhZ2VPclpvb21BZGp1
c3RlZFZhbHVlKHBvaW50LCAmc3R5bGUpKTsKLSAgICBpZiAocG9pbnRzLmhhc1JlcGVhdCkKLSAg
ICAgICAgbGlzdC5nZXQoKS5hcHBlbmQoY3NzVmFsdWVQb29sKCkuY3JlYXRlVmFsdWUoTGVuZ3Ro
UmVwZWF0OjpjcmVhdGUocGVyY2VudGFnZU9yWm9vbUFkanVzdGVkVmFsdWUocG9pbnRzLnJlcGVh
dE9mZnNldCwgJnN0eWxlKSkpKTsKKyAgICBpZiAocG9pbnRzLT5oYXNSZXBlYXQpCisgICAgICAg
IGxpc3QuZ2V0KCkuYXBwZW5kKGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZVZhbHVlKExlbmd0aFJlcGVh
dDo6Y3JlYXRlKHBlcmNlbnRhZ2VPclpvb21BZGp1c3RlZFZhbHVlKHBvaW50cy0+cmVwZWF0T2Zm
c2V0LCAmc3R5bGUpKSkpOwogICAgIHJldHVybiBXVEY6Om1vdmUobGlzdCk7CiB9CiAKQEAgLTEx
NDMsNyArMTE0NSw2IEBAIHN0YXRpYyBSZWY8Q1NTVmFsdWU+IHNjcm9sbFNuYXBDb29yZGluYXQK
IAogICAgIHJldHVybiBXVEY6Om1vdmUobGlzdCk7CiB9Ci0KICNlbmRpZgogCiBzdGF0aWMgUmVm
PENTU1ZhbHVlTGlzdD4gZ2V0RGVsYXlWYWx1ZShjb25zdCBBbmltYXRpb25MaXN0KiBhbmltTGlz
dCkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eU5hbWVzLmluCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eU5hbWVzLmluCShyZXZpc2lvbiAx
ODExNTYpCisrKyBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydHlOYW1lcy5pbgkod29ya2lu
ZyBjb3B5KQpAQCAtNTYwLDggKzU2MCw4IEBAIG9yZGVyCiAtd2Via2l0LXByaW50LWNvbG9yLWFk
anVzdCBbSW5oZXJpdGVkXQogLXdlYmtpdC1ydGwtb3JkZXJpbmcgW0luaGVyaXRlZCwgU2V0dGVy
PXNldFJUTE9yZGVyaW5nLCBJbml0aWFsPWluaXRpYWxSVExPcmRlcmluZ10KICNpZiBkZWZpbmVk
KEVOQUJMRV9DU1NfU0NST0xMX1NOQVApCi0td2Via2l0LXNjcm9sbC1zbmFwLXBvaW50cy14IFtD
b252ZXJ0ZXI9U2Nyb2xsU25hcFBvaW50c10KLS13ZWJraXQtc2Nyb2xsLXNuYXAtcG9pbnRzLXkg
W0NvbnZlcnRlcj1TY3JvbGxTbmFwUG9pbnRzXQorLXdlYmtpdC1zY3JvbGwtc25hcC1wb2ludHMt
eCBbQ29udmVydGVyPVNjcm9sbFNuYXBQb2ludHMsIEN1c3RvbT1Jbml0aWFsfEluaGVyaXRdCist
d2Via2l0LXNjcm9sbC1zbmFwLXBvaW50cy15IFtDb252ZXJ0ZXI9U2Nyb2xsU25hcFBvaW50cywg
Q3VzdG9tPUluaXRpYWx8SW5oZXJpdF0KIC13ZWJraXQtc2Nyb2xsLXNuYXAtdHlwZQogLXdlYmtp
dC1zY3JvbGwtc25hcC1kZXN0aW5hdGlvbiBbQ29udmVydGVyPVNuYXBDb29yZGluYXRlUGFpcl0K
IC13ZWJraXQtc2Nyb2xsLXNuYXAtY29vcmRpbmF0ZSBbQ29udmVydGVyPVNjcm9sbFNuYXBDb29y
ZGluYXRlcywgTmFtZUZvck1ldGhvZHM9U2Nyb2xsU25hcENvb3JkaW5hdGVzXQpJbmRleDogU291
cmNlL1dlYkNvcmUvY3NzL1N0eWxlQnVpbGRlckNvbnZlcnRlci5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL2Nzcy9TdHlsZUJ1aWxkZXJDb252ZXJ0ZXIuaAkocmV2aXNpb24gMTgxMTU2
KQorKysgU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlQnVpbGRlckNvbnZlcnRlci5oCSh3b3JraW5n
IGNvcHkpCkBAIC05MCw3ICs5MCw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgVGV4dERlY29yYXRp
b25Ta2lwIGNvbnZlcnRUZXh0RGVjb3JhdGlvblNraXAoU3R5bGVSZXNvbHZlciYsIENTU1ZhbHVl
Jik7CiAgICAgc3RhdGljIFBhc3NSZWZQdHI8U2hhcGVWYWx1ZT4gY29udmVydFNoYXBlVmFsdWUo
U3R5bGVSZXNvbHZlciYsIENTU1ZhbHVlJik7CiAjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkK
LSAgICBzdGF0aWMgU2Nyb2xsU25hcFBvaW50cyBjb252ZXJ0U2Nyb2xsU25hcFBvaW50cyhTdHls
ZVJlc29sdmVyJiwgQ1NTVmFsdWUmKTsKKyAgICBzdGF0aWMgc3RkOjp1bmlxdWVfcHRyPFNjcm9s
bFNuYXBQb2ludHM+IGNvbnZlcnRTY3JvbGxTbmFwUG9pbnRzKFN0eWxlUmVzb2x2ZXImLCBDU1NW
YWx1ZSYpOwogICAgIHN0YXRpYyBMZW5ndGhTaXplIGNvbnZlcnRTbmFwQ29vcmRpbmF0ZVBhaXIo
U3R5bGVSZXNvbHZlciYsIENTU1ZhbHVlJiwgc2l6ZV90IG9mZnNldCA9IDApOwogICAgIHN0YXRp
YyBWZWN0b3I8TGVuZ3RoU2l6ZT4gY29udmVydFNjcm9sbFNuYXBDb29yZGluYXRlcyhTdHlsZVJl
c29sdmVyJiwgQ1NTVmFsdWUmKTsKICNlbmRpZgpAQCAtNzA4LDI3ICs3MDgsMjcgQEAgaW5saW5l
IExlbmd0aCBTdHlsZUJ1aWxkZXJDb252ZXJ0ZXI6OnBhcgogICAgIHJldHVybiBkb3duY2FzdDxD
U1NQcmltaXRpdmVWYWx1ZT4odmFsdWUpLmNvbnZlcnRUb0xlbmd0aDxGaXhlZEludGVnZXJDb252
ZXJzaW9uIHwgUGVyY2VudENvbnZlcnNpb24gfCBBdXRvQ29udmVyc2lvbj4oc3R5bGVSZXNvbHZl
ci5zdGF0ZSgpLmNzc1RvTGVuZ3RoQ29udmVyc2lvbkRhdGEoKSk7CiB9CiAKLWlubGluZSBTY3Jv
bGxTbmFwUG9pbnRzIFN0eWxlQnVpbGRlckNvbnZlcnRlcjo6Y29udmVydFNjcm9sbFNuYXBQb2lu
dHMoU3R5bGVSZXNvbHZlciYgc3R5bGVSZXNvbHZlciwgQ1NTVmFsdWUmIHZhbHVlKQoraW5saW5l
IHN0ZDo6dW5pcXVlX3B0cjxTY3JvbGxTbmFwUG9pbnRzPiBTdHlsZUJ1aWxkZXJDb252ZXJ0ZXI6
OmNvbnZlcnRTY3JvbGxTbmFwUG9pbnRzKFN0eWxlUmVzb2x2ZXImIHN0eWxlUmVzb2x2ZXIsIENT
U1ZhbHVlJiB2YWx1ZSkKIHsKLSAgICBTY3JvbGxTbmFwUG9pbnRzIHBvaW50czsKKyAgICBhdXRv
IHBvaW50cyA9IHN0ZDo6bWFrZV91bmlxdWU8U2Nyb2xsU25hcFBvaW50cz4oKTsKIAogICAgIGlm
IChpczxDU1NQcmltaXRpdmVWYWx1ZT4odmFsdWUpKSB7CiAgICAgICAgIEFTU0VSVChkb3duY2Fz
dDxDU1NQcmltaXRpdmVWYWx1ZT4odmFsdWUpLmdldFZhbHVlSUQoKSA9PSBDU1NWYWx1ZUVsZW1l
bnRzKTsKLSAgICAgICAgcG9pbnRzLnVzZXNFbGVtZW50cyA9IHRydWU7CisgICAgICAgIHBvaW50
cy0+dXNlc0VsZW1lbnRzID0gdHJ1ZTsKICAgICAgICAgcmV0dXJuIHBvaW50czsKICAgICB9CiAK
LSAgICBwb2ludHMuaGFzUmVwZWF0ID0gZmFsc2U7CisgICAgcG9pbnRzLT5oYXNSZXBlYXQgPSBm
YWxzZTsKICAgICBmb3IgKGF1dG8mIGN1cnJlbnRWYWx1ZSA6IGRvd25jYXN0PENTU1ZhbHVlTGlz
dD4odmFsdWUpKSB7CiAgICAgICAgIGF1dG8mIGl0ZW1WYWx1ZSA9IGRvd25jYXN0PENTU1ByaW1p
dGl2ZVZhbHVlPihjdXJyZW50VmFsdWUuZ2V0KCkpOwogICAgICAgICBpZiAoYXV0byogbGVuZ3Ro
UmVwZWF0ID0gaXRlbVZhbHVlLmdldExlbmd0aFJlcGVhdFZhbHVlKCkpIHsKICAgICAgICAgICAg
IGlmIChhdXRvKiBpbnRlcnZhbCA9IGxlbmd0aFJlcGVhdC0+aW50ZXJ2YWwoKSkgewotICAgICAg
ICAgICAgICAgIHBvaW50cy5yZXBlYXRPZmZzZXQgPSBwYXJzZVNuYXBDb29yZGluYXRlKHN0eWxl
UmVzb2x2ZXIsICppbnRlcnZhbCk7Ci0gICAgICAgICAgICAgICAgcG9pbnRzLmhhc1JlcGVhdCA9
IHRydWU7CisgICAgICAgICAgICAgICAgcG9pbnRzLT5yZXBlYXRPZmZzZXQgPSBwYXJzZVNuYXBD
b29yZGluYXRlKHN0eWxlUmVzb2x2ZXIsICppbnRlcnZhbCk7CisgICAgICAgICAgICAgICAgcG9p
bnRzLT5oYXNSZXBlYXQgPSB0cnVlOwogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAg
ICAgfQogICAgICAgICB9Ci0gICAgICAgIHBvaW50cy5vZmZzZXRzLmFwcGVuZChwYXJzZVNuYXBD
b29yZGluYXRlKHN0eWxlUmVzb2x2ZXIsIGl0ZW1WYWx1ZSkpOworICAgICAgICBwb2ludHMtPm9m
ZnNldHMuYXBwZW5kKHBhcnNlU25hcENvb3JkaW5hdGUoc3R5bGVSZXNvbHZlciwgaXRlbVZhbHVl
KSk7CiAgICAgfQogCiAgICAgcmV0dXJuIHBvaW50czsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Nz
cy9TdHlsZUJ1aWxkZXJDdXN0b20uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9jc3Mv
U3R5bGVCdWlsZGVyQ3VzdG9tLmgJKHJldmlzaW9uIDE4MTE1NikKKysrIFNvdXJjZS9XZWJDb3Jl
L2Nzcy9TdHlsZUJ1aWxkZXJDdXN0b20uaAkod29ya2luZyBjb3B5KQpAQCAtMTI4LDYgKzEyOCwx
MiBAQCBwdWJsaWM6CiAjZW5kaWYKICAgICBzdGF0aWMgdm9pZCBhcHBseVZhbHVlV2Via2l0V3Jp
dGluZ01vZGUoU3R5bGVSZXNvbHZlciYsIENTU1ZhbHVlJik7CiAgICAgc3RhdGljIHZvaWQgYXBw
bHlWYWx1ZUFsdChTdHlsZVJlc29sdmVyJiwgQ1NTVmFsdWUmKTsKKyNpZiBFTkFCTEUoQ1NTX1ND
Uk9MTF9TTkFQKQorICAgIHN0YXRpYyB2b2lkIGFwcGx5SW5pdGlhbFdlYmtpdFNjcm9sbFNuYXBQ
b2ludHNYKFN0eWxlUmVzb2x2ZXImKTsKKyAgICBzdGF0aWMgdm9pZCBhcHBseUluaGVyaXRXZWJr
aXRTY3JvbGxTbmFwUG9pbnRzWChTdHlsZVJlc29sdmVyJik7CisgICAgc3RhdGljIHZvaWQgYXBw
bHlJbml0aWFsV2Via2l0U2Nyb2xsU25hcFBvaW50c1koU3R5bGVSZXNvbHZlciYpOworICAgIHN0
YXRpYyB2b2lkIGFwcGx5SW5oZXJpdFdlYmtpdFNjcm9sbFNuYXBQb2ludHNZKFN0eWxlUmVzb2x2
ZXImKTsKKyNlbmRpZgogCiBwcml2YXRlOgogICAgIHN0YXRpYyB2b2lkIHJlc2V0RWZmZWN0aXZl
Wm9vbShTdHlsZVJlc29sdmVyJik7CkBAIC0xNjkzLDYgKzE2OTksMjYgQEAgdm9pZCBTdHlsZUJ1
aWxkZXJDdXN0b206OmFwcGx5VmFsdWVBbHQoUwogICAgICAgICBzdHlsZVJlc29sdmVyLnN0eWxl
KCktPnNldENvbnRlbnRBbHRUZXh0KGVtcHR5QXRvbSk7CiB9CiAKKyNpZiBFTkFCTEUoQ1NTX1ND
Uk9MTF9TTkFQKQoraW5saW5lIHZvaWQgU3R5bGVCdWlsZGVyQ3VzdG9tOjphcHBseUluaXRpYWxX
ZWJraXRTY3JvbGxTbmFwUG9pbnRzWChTdHlsZVJlc29sdmVyJiBzdHlsZVJlc29sdmVyKQorewor
ICAgIHN0eWxlUmVzb2x2ZXIuc3R5bGUoKS0+c2V0U2Nyb2xsU25hcFBvaW50c1gobnVsbHB0cik7
Cit9CitpbmxpbmUgdm9pZCBTdHlsZUJ1aWxkZXJDdXN0b206OmFwcGx5SW5oZXJpdFdlYmtpdFNj
cm9sbFNuYXBQb2ludHNYKFN0eWxlUmVzb2x2ZXImIHN0eWxlUmVzb2x2ZXIpCit7CisgICAgc3R5
bGVSZXNvbHZlci5zdHlsZSgpLT5zZXRTY3JvbGxTbmFwUG9pbnRzWChzdHlsZVJlc29sdmVyLnBh
cmVudFN0eWxlKCktPnNjcm9sbFNuYXBQb2ludHNYKCkgPyBzdGQ6Om1ha2VfdW5pcXVlPFNjcm9s
bFNuYXBQb2ludHM+KCpzdHlsZVJlc29sdmVyLnBhcmVudFN0eWxlKCktPnNjcm9sbFNuYXBQb2lu
dHNYKCkpIDogbnVsbHB0cik7Cit9CitpbmxpbmUgdm9pZCBTdHlsZUJ1aWxkZXJDdXN0b206OmFw
cGx5SW5pdGlhbFdlYmtpdFNjcm9sbFNuYXBQb2ludHNZKFN0eWxlUmVzb2x2ZXImIHN0eWxlUmVz
b2x2ZXIpCit7CisgICAgc3R5bGVSZXNvbHZlci5zdHlsZSgpLT5zZXRTY3JvbGxTbmFwUG9pbnRz
WShudWxscHRyKTsKK30KK2lubGluZSB2b2lkIFN0eWxlQnVpbGRlckN1c3RvbTo6YXBwbHlJbmhl
cml0V2Via2l0U2Nyb2xsU25hcFBvaW50c1koU3R5bGVSZXNvbHZlciYgc3R5bGVSZXNvbHZlcikK
K3sKKyAgICBzdHlsZVJlc29sdmVyLnN0eWxlKCktPnNldFNjcm9sbFNuYXBQb2ludHNZKHN0eWxl
UmVzb2x2ZXIucGFyZW50U3R5bGUoKS0+c2Nyb2xsU25hcFBvaW50c1koKSA/IHN0ZDo6bWFrZV91
bmlxdWU8U2Nyb2xsU25hcFBvaW50cz4oKnN0eWxlUmVzb2x2ZXIucGFyZW50U3R5bGUoKS0+c2Ny
b2xsU25hcFBvaW50c1koKSkgOiBudWxscHRyKTsKK30KKyNlbmRpZgorCisgICAgCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZiAvLyBTdHlsZUJ1aWxkZXJDdXN0b21faApJbmRleDog
U291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvQXhpc1Njcm9sbFNuYXBPZmZzZXRzLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9BeGlzU2Nyb2xsU25h
cE9mZnNldHMuY3BwCShyZXZpc2lvbiAxODExNTYpCisrKyBTb3VyY2UvV2ViQ29yZS9wYWdlL3Nj
cm9sbGluZy9BeGlzU2Nyb2xsU25hcE9mZnNldHMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xLDUg
KzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNCBBcHBsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQtMjAxNSBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTc1LDEwICs3
NSwxMCBAQCBzdGF0aWMgdm9pZCB1cGRhdGVGcm9tU3R5bGUoVmVjdG9yPExheW91CiAgICAgICAg
IHNuYXBPZmZzZXRTdWJzZXF1ZW5jZS5hcHBlbmQoMCk7CiAKICAgICBib29sIGlzSG9yaXpvbnRh
bEF4aXMgPSBheGlzID09IFNjcm9sbEV2ZW50QXhpczo6SG9yaXpvbnRhbDsKLSAgICBhdXRvJiBw
b2ludHMgPSBpc0hvcml6b250YWxBeGlzID8gc3R5bGUuc2Nyb2xsU25hcFBvaW50c1goKSA6IHN0
eWxlLnNjcm9sbFNuYXBQb2ludHNZKCk7CisgICAgYXV0byogcG9pbnRzID0gaXNIb3Jpem9udGFs
QXhpcyA/IHN0eWxlLnNjcm9sbFNuYXBQb2ludHNYKCkgOiBzdHlsZS5zY3JvbGxTbmFwUG9pbnRz
WSgpOwogICAgIGF1dG8mIGRlc3RpbmF0aW9uID0gc3R5bGUuc2Nyb2xsU25hcERlc3RpbmF0aW9u
KCk7Ci0gICAgYm9vbCBoYXNSZXBlYXQgPSBwb2ludHMuaGFzUmVwZWF0OwotICAgIExheW91dFVu
aXQgcmVwZWF0T2Zmc2V0ID0gdmFsdWVGb3JMZW5ndGgocG9pbnRzLnJlcGVhdE9mZnNldCwgdmll
d1NpemUpOworICAgIGJvb2wgaGFzUmVwZWF0ID0gcG9pbnRzID8gcG9pbnRzLT5oYXNSZXBlYXQg
OiBmYWxzZTsKKyAgICBMYXlvdXRVbml0IHJlcGVhdE9mZnNldCA9IHBvaW50cyA/IHZhbHVlRm9y
TGVuZ3RoKHBvaW50cy0+cmVwZWF0T2Zmc2V0LCB2aWV3U2l6ZSkgOiBMYXlvdXRVbml0KCk7CiAg
ICAgTGF5b3V0VW5pdCBkZXN0aW5hdGlvbk9mZnNldCA9IHZhbHVlRm9yTGVuZ3RoKGlzSG9yaXpv
bnRhbEF4aXMgPyBkZXN0aW5hdGlvbi53aWR0aCgpIDogZGVzdGluYXRpb24uaGVpZ2h0KCksIHZp
ZXdTaXplKTsKICAgICBMYXlvdXRVbml0IGN1clNuYXBQb3NpdGlvblNoaWZ0ID0gMDsKICAgICBM
YXlvdXRVbml0IG1heFNjcm9sbE9mZnNldCA9IHNjcm9sbFNpemUgLSB2aWV3U2l6ZTsKQEAgLTEz
MCwxOSArMTMwLDIyIEBAIHZvaWQgdXBkYXRlU25hcE9mZnNldHNGb3JTY3JvbGxhYmxlQXJlYSgK
ICAgICBWZWN0b3I8TGF5b3V0VW5pdD4gaG9yaXpvbnRhbFNuYXBPZmZzZXRTdWJzZXF1ZW5jZTsK
ICAgICBWZWN0b3I8TGF5b3V0VW5pdD4gdmVydGljYWxTbmFwT2Zmc2V0U3Vic2VxdWVuY2U7CiAK
LSAgICBpZiAoc2Nyb2xsaW5nRWxlbWVudFN0eWxlLnNjcm9sbFNuYXBQb2ludHNYKCkudXNlc0Vs
ZW1lbnRzIHx8IHNjcm9sbGluZ0VsZW1lbnRTdHlsZS5zY3JvbGxTbmFwUG9pbnRzWSgpLnVzZXNF
bGVtZW50cykgewotICAgICAgICBib29sIHNob3VsZEFkZEhvcml6b250YWxDaGlsZE9mZnNldHMg
PSBzY3JvbGxpbmdFbGVtZW50U3R5bGUuc2Nyb2xsU25hcFBvaW50c1goKS51c2VzRWxlbWVudHMg
JiYgY2FuQ29tcHV0ZUhvcml6b250YWxPZmZzZXRzOwotICAgICAgICBib29sIHNob3VsZEFkZFZl
cnRpY2FsQ2hpbGRPZmZzZXRzID0gc2Nyb2xsaW5nRWxlbWVudFN0eWxlLnNjcm9sbFNuYXBQb2lu
dHNZKCkudXNlc0VsZW1lbnRzICYmIGNhbkNvbXB1dGVWZXJ0aWNhbE9mZnNldHM7CisgICAgYm9v
bCBzY3JvbGxTbmFwUG9pbnRzWFVzZXNFbGVtZW50cyA9IHNjcm9sbGluZ0VsZW1lbnRTdHlsZS5z
Y3JvbGxTbmFwUG9pbnRzWCgpID8gc2Nyb2xsaW5nRWxlbWVudFN0eWxlLnNjcm9sbFNuYXBQb2lu
dHNYKCktPnVzZXNFbGVtZW50cyA6IGZhbHNlOworICAgIGJvb2wgc2Nyb2xsU25hcFBvaW50c1lV
c2VzRWxlbWVudHMgPSBzY3JvbGxpbmdFbGVtZW50U3R5bGUuc2Nyb2xsU25hcFBvaW50c1koKSA/
IHNjcm9sbGluZ0VsZW1lbnRTdHlsZS5zY3JvbGxTbmFwUG9pbnRzWSgpLT51c2VzRWxlbWVudHMg
OiBmYWxzZTsKKworICAgIGlmIChzY3JvbGxTbmFwUG9pbnRzWFVzZXNFbGVtZW50cyB8fCBzY3Jv
bGxTbmFwUG9pbnRzWVVzZXNFbGVtZW50cykgeworICAgICAgICBib29sIHNob3VsZEFkZEhvcml6
b250YWxDaGlsZE9mZnNldHMgPSBzY3JvbGxTbmFwUG9pbnRzWFVzZXNFbGVtZW50cyAmJiBjYW5D
b21wdXRlSG9yaXpvbnRhbE9mZnNldHM7CisgICAgICAgIGJvb2wgc2hvdWxkQWRkVmVydGljYWxD
aGlsZE9mZnNldHMgPSBzY3JvbGxTbmFwUG9pbnRzWVVzZXNFbGVtZW50cyAmJiBjYW5Db21wdXRl
VmVydGljYWxPZmZzZXRzOwogICAgICAgICBhcHBlbmRDaGlsZFNuYXBPZmZzZXRzKHNjcm9sbGlu
Z0VsZW1lbnQsIHNob3VsZEFkZEhvcml6b250YWxDaGlsZE9mZnNldHMsIGhvcml6b250YWxTbmFw
T2Zmc2V0U3Vic2VxdWVuY2UsIHNob3VsZEFkZFZlcnRpY2FsQ2hpbGRPZmZzZXRzLCB2ZXJ0aWNh
bFNuYXBPZmZzZXRTdWJzZXF1ZW5jZSk7CiAgICAgfQogCi0gICAgaWYgKCFzY3JvbGxpbmdFbGVt
ZW50U3R5bGUuc2Nyb2xsU25hcFBvaW50c1goKS51c2VzRWxlbWVudHMgJiYgY2FuQ29tcHV0ZUhv
cml6b250YWxPZmZzZXRzKSB7Ci0gICAgICAgIGZvciAoYXV0byYgc25hcExlbmd0aCA6IHNjcm9s
bGluZ0VsZW1lbnRTdHlsZS5zY3JvbGxTbmFwUG9pbnRzWCgpLm9mZnNldHMpCisgICAgaWYgKHNj
cm9sbGluZ0VsZW1lbnRTdHlsZS5zY3JvbGxTbmFwUG9pbnRzWCgpICYmICFzY3JvbGxTbmFwUG9p
bnRzWFVzZXNFbGVtZW50cyAmJiBjYW5Db21wdXRlSG9yaXpvbnRhbE9mZnNldHMpIHsKKyAgICAg
ICAgZm9yIChhdXRvJiBzbmFwTGVuZ3RoIDogc2Nyb2xsaW5nRWxlbWVudFN0eWxlLnNjcm9sbFNu
YXBQb2ludHNYKCktPm9mZnNldHMpCiAgICAgICAgICAgICBob3Jpem9udGFsU25hcE9mZnNldFN1
YnNlcXVlbmNlLmFwcGVuZCh2YWx1ZUZvckxlbmd0aChzbmFwTGVuZ3RoLCB2aWV3V2lkdGgpKTsK
ICAgICB9CiAKLSAgICBpZiAoIXNjcm9sbGluZ0VsZW1lbnRTdHlsZS5zY3JvbGxTbmFwUG9pbnRz
WSgpLnVzZXNFbGVtZW50cyAmJiBjYW5Db21wdXRlVmVydGljYWxPZmZzZXRzKSB7Ci0gICAgICAg
IGZvciAoYXV0byYgc25hcExlbmd0aCA6IHNjcm9sbGluZ0VsZW1lbnRTdHlsZS5zY3JvbGxTbmFw
UG9pbnRzWSgpLm9mZnNldHMpCisgICAgaWYgKHNjcm9sbGluZ0VsZW1lbnRTdHlsZS5zY3JvbGxT
bmFwUG9pbnRzWSgpICYmICFzY3JvbGxTbmFwUG9pbnRzWVVzZXNFbGVtZW50cyAmJiBjYW5Db21w
dXRlVmVydGljYWxPZmZzZXRzKSB7CisgICAgICAgIGZvciAoYXV0byYgc25hcExlbmd0aCA6IHNj
cm9sbGluZ0VsZW1lbnRTdHlsZS5zY3JvbGxTbmFwUG9pbnRzWSgpLT5vZmZzZXRzKQogICAgICAg
ICAgICAgdmVydGljYWxTbmFwT2Zmc2V0U3Vic2VxdWVuY2UuYXBwZW5kKHZhbHVlRm9yTGVuZ3Ro
KHNuYXBMZW5ndGgsIHZpZXdIZWlnaHQpKTsKICAgICB9CiAKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcAkocmV2aXNpb24gMTgxMTU2KQor
KysgU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMSw2ICsxLDYgQEAKIC8qCiAgKiBDb3B5cmlnaHQgKEMpIDE5OTkgQW50dGkg
S29pdmlzdG8gKGtvaXZpc3RvQGtkZS5vcmcpCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDQtMjAxNCBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDQtMjAx
NSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKiBDb3B5cmlnaHQgKEMpIDIwMTEg
QWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICog
VGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFu
ZC9vcgpAQCAtMTg2MiwxNyArMTg2Miw2IEBAIHZvaWQgUmVuZGVyU3R5bGU6OnNldENvbHVtblN0
eWxlc0Zyb21QYWcKIH0KIAogI2lmIEVOQUJMRShDU1NfU0NST0xMX1NOQVApCi0KLVNjcm9sbFNu
YXBQb2ludHMgUmVuZGVyU3R5bGU6OmluaXRpYWxTY3JvbGxTbmFwUG9pbnRzWCgpCi17Ci0gICAg
cmV0dXJuIFNjcm9sbFNuYXBQb2ludHMoKTsKLX0KLQotU2Nyb2xsU25hcFBvaW50cyBSZW5kZXJT
dHlsZTo6aW5pdGlhbFNjcm9sbFNuYXBQb2ludHNZKCkKLXsKLSAgICByZXR1cm4gU2Nyb2xsU25h
cFBvaW50cygpOwotfQotCiBMZW5ndGhTaXplIFJlbmRlclN0eWxlOjppbml0aWFsU2Nyb2xsU25h
cERlc3RpbmF0aW9uKCkKIHsKICAgICByZXR1cm4gZGVmYXVsdFNjcm9sbFNuYXBEZXN0aW5hdGlv
bigpOwpAQCAtMTg4MywxNCArMTg3MiwxNCBAQCBWZWN0b3I8TGVuZ3RoU2l6ZT4gUmVuZGVyU3R5
bGU6OmluaXRpYWxTCiAgICAgcmV0dXJuIFZlY3RvcjxMZW5ndGhTaXplPigpOwogfQogCi1jb25z
dCBTY3JvbGxTbmFwUG9pbnRzJiBSZW5kZXJTdHlsZTo6c2Nyb2xsU25hcFBvaW50c1goKSBjb25z
dAorY29uc3QgU2Nyb2xsU25hcFBvaW50cyogUmVuZGVyU3R5bGU6OnNjcm9sbFNuYXBQb2ludHNY
KCkgY29uc3QKIHsKLSAgICByZXR1cm4gcmFyZU5vbkluaGVyaXRlZERhdGEtPm1fc2Nyb2xsU25h
cFBvaW50cy0+eFBvaW50czsKKyAgICByZXR1cm4gcmFyZU5vbkluaGVyaXRlZERhdGEtPm1fc2Ny
b2xsU25hcFBvaW50cy0+eFBvaW50cy5nZXQoKTsKIH0KIAotY29uc3QgU2Nyb2xsU25hcFBvaW50
cyYgUmVuZGVyU3R5bGU6OnNjcm9sbFNuYXBQb2ludHNZKCkgY29uc3QKK2NvbnN0IFNjcm9sbFNu
YXBQb2ludHMqIFJlbmRlclN0eWxlOjpzY3JvbGxTbmFwUG9pbnRzWSgpIGNvbnN0CiB7Ci0gICAg
cmV0dXJuIHJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX3Njcm9sbFNuYXBQb2ludHMtPnlQb2ludHM7
CisgICAgcmV0dXJuIHJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX3Njcm9sbFNuYXBQb2ludHMtPnlQ
b2ludHMuZ2V0KCk7CiB9CiAKIGNvbnN0IExlbmd0aFNpemUmIFJlbmRlclN0eWxlOjpzY3JvbGxT
bmFwRGVzdGluYXRpb24oKSBjb25zdApAQCAtMTkwMywxNiArMTg5MiwxNiBAQCBjb25zdCBWZWN0
b3I8TGVuZ3RoU2l6ZT4mIFJlbmRlclN0eWxlOjpzCiAgICAgcmV0dXJuIHJhcmVOb25Jbmhlcml0
ZWREYXRhLT5tX3Njcm9sbFNuYXBQb2ludHMtPmNvb3JkaW5hdGVzOwogfQogCi12b2lkIFJlbmRl
clN0eWxlOjpzZXRTY3JvbGxTbmFwUG9pbnRzWChTY3JvbGxTbmFwUG9pbnRzIHBvaW50cykKK3Zv
aWQgUmVuZGVyU3R5bGU6OnNldFNjcm9sbFNuYXBQb2ludHNYKHN0ZDo6dW5pcXVlX3B0cjxTY3Jv
bGxTbmFwUG9pbnRzPiBwb2ludHMpCiB7Ci0gICAgaWYgKHJhcmVOb25Jbmhlcml0ZWREYXRhLT5t
X3Njcm9sbFNuYXBQb2ludHMtPnhQb2ludHMgPT0gcG9pbnRzKQorICAgIGlmIChyYXJlTm9uSW5o
ZXJpdGVkRGF0YS0+bV9zY3JvbGxTbmFwUG9pbnRzLT54UG9pbnRzLmdldCgpID09IHBvaW50cy5n
ZXQoKSkKICAgICAgICAgcmV0dXJuOwogICAgIHJhcmVOb25Jbmhlcml0ZWREYXRhLmFjY2Vzcygp
LT5tX3Njcm9sbFNuYXBQb2ludHMuYWNjZXNzKCktPnhQb2ludHMgPSBXVEY6Om1vdmUocG9pbnRz
KTsKIH0KIAotdm9pZCBSZW5kZXJTdHlsZTo6c2V0U2Nyb2xsU25hcFBvaW50c1koU2Nyb2xsU25h
cFBvaW50cyBwb2ludHMpCit2b2lkIFJlbmRlclN0eWxlOjpzZXRTY3JvbGxTbmFwUG9pbnRzWShz
dGQ6OnVuaXF1ZV9wdHI8U2Nyb2xsU25hcFBvaW50cz4gcG9pbnRzKQogewotICAgIGlmIChyYXJl
Tm9uSW5oZXJpdGVkRGF0YS0+bV9zY3JvbGxTbmFwUG9pbnRzLT55UG9pbnRzID09IHBvaW50cykK
KyAgICBpZiAocmFyZU5vbkluaGVyaXRlZERhdGEtPm1fc2Nyb2xsU25hcFBvaW50cy0+eVBvaW50
cy5nZXQoKSA9PSBwb2ludHMuZ2V0KCkpCiAgICAgICAgIHJldHVybjsKICAgICByYXJlTm9uSW5o
ZXJpdGVkRGF0YS5hY2Nlc3MoKS0+bV9zY3JvbGxTbmFwUG9pbnRzLmFjY2VzcygpLT55UG9pbnRz
ID0gV1RGOjptb3ZlKHBvaW50cyk7CiB9CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
c3R5bGUvUmVuZGVyU3R5bGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3R5bGUvUmVuZGVyU3R5bGUuaAkocmV2aXNpb24gMTgxMTU2KQorKysgU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmgJKHdvcmtpbmcgY29weSkKQEAgLTEwODAs
OCArMTA4MCw4IEBAIHB1YmxpYzoKIAogI2lmIEVOQUJMRShDU1NfU0NST0xMX1NOQVApCiAgICAg
U2Nyb2xsU25hcFR5cGUgc2Nyb2xsU25hcFR5cGUoKSBjb25zdCB7IHJldHVybiBzdGF0aWNfY2Fz
dDxTY3JvbGxTbmFwVHlwZT4ocmFyZU5vbkluaGVyaXRlZERhdGEtPm1fc2Nyb2xsU25hcFR5cGUp
OyB9Ci0gICAgY29uc3QgU2Nyb2xsU25hcFBvaW50cyYgc2Nyb2xsU25hcFBvaW50c1goKSBjb25z
dDsKLSAgICBjb25zdCBTY3JvbGxTbmFwUG9pbnRzJiBzY3JvbGxTbmFwUG9pbnRzWSgpIGNvbnN0
OworICAgIGNvbnN0IFNjcm9sbFNuYXBQb2ludHMqIHNjcm9sbFNuYXBQb2ludHNYKCkgY29uc3Q7
CisgICAgY29uc3QgU2Nyb2xsU25hcFBvaW50cyogc2Nyb2xsU25hcFBvaW50c1koKSBjb25zdDsK
ICAgICBjb25zdCBMZW5ndGhTaXplJiBzY3JvbGxTbmFwRGVzdGluYXRpb24oKSBjb25zdDsKICAg
ICBjb25zdCBWZWN0b3I8TGVuZ3RoU2l6ZT4mIHNjcm9sbFNuYXBDb29yZGluYXRlcygpIGNvbnN0
OwogI2VuZGlmCkBAIC0xNjI1LDggKzE2MjUsOCBAQCBwdWJsaWM6CiAgICAgCiAjaWYgRU5BQkxF
KENTU19TQ1JPTExfU05BUCkKICAgICB2b2lkIHNldFNjcm9sbFNuYXBUeXBlKFNjcm9sbFNuYXBU
eXBlIHR5cGUpIHsgU0VUX1ZBUihyYXJlTm9uSW5oZXJpdGVkRGF0YSwgbV9zY3JvbGxTbmFwVHlw
ZSwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHR5cGUpKTsgfQotICAgIHZvaWQgc2V0U2Nyb2xsU25h
cFBvaW50c1goU2Nyb2xsU25hcFBvaW50cyk7Ci0gICAgdm9pZCBzZXRTY3JvbGxTbmFwUG9pbnRz
WShTY3JvbGxTbmFwUG9pbnRzKTsKKyAgICB2b2lkIHNldFNjcm9sbFNuYXBQb2ludHNYKHN0ZDo6
dW5pcXVlX3B0cjxTY3JvbGxTbmFwUG9pbnRzPik7CisgICAgdm9pZCBzZXRTY3JvbGxTbmFwUG9p
bnRzWShzdGQ6OnVuaXF1ZV9wdHI8U2Nyb2xsU25hcFBvaW50cz4pOwogICAgIHZvaWQgc2V0U2Ny
b2xsU25hcERlc3RpbmF0aW9uKExlbmd0aFNpemUpOwogICAgIHZvaWQgc2V0U2Nyb2xsU25hcENv
b3JkaW5hdGVzKFZlY3RvcjxMZW5ndGhTaXplPik7CiAjZW5kaWYKQEAgLTE5NTksMTYgKzE5NTks
MTYgQEAgcHVibGljOgogICAgIHN0YXRpYyBJbWFnZVJlc29sdXRpb25Tb3VyY2UgaW5pdGlhbElt
YWdlUmVzb2x1dGlvblNvdXJjZSgpIHsgcmV0dXJuIEltYWdlUmVzb2x1dGlvblNwZWNpZmllZDsg
fQogICAgIHN0YXRpYyBJbWFnZVJlc29sdXRpb25TbmFwIGluaXRpYWxJbWFnZVJlc29sdXRpb25T
bmFwKCkgeyByZXR1cm4gSW1hZ2VSZXNvbHV0aW9uTm9TbmFwOyB9CiAgICAgc3RhdGljIGZsb2F0
IGluaXRpYWxJbWFnZVJlc29sdXRpb24oKSB7IHJldHVybiAxOyB9Ci0gICAgc3RhdGljIFN0eWxl
SW1hZ2UqIGluaXRpYWxCb3JkZXJJbWFnZVNvdXJjZSgpIHsgcmV0dXJuIDA7IH0KLSAgICBzdGF0
aWMgU3R5bGVJbWFnZSogaW5pdGlhbE1hc2tCb3hJbWFnZVNvdXJjZSgpIHsgcmV0dXJuIDA7IH0K
KyAgICBzdGF0aWMgU3R5bGVJbWFnZSogaW5pdGlhbEJvcmRlckltYWdlU291cmNlKCkgeyByZXR1
cm4gbnVsbHB0cjsgfQorICAgIHN0YXRpYyBTdHlsZUltYWdlKiBpbml0aWFsTWFza0JveEltYWdl
U291cmNlKCkgeyByZXR1cm4gbnVsbHB0cjsgfQogICAgIHN0YXRpYyBQcmludENvbG9yQWRqdXN0
IGluaXRpYWxQcmludENvbG9yQWRqdXN0KCkgeyByZXR1cm4gUHJpbnRDb2xvckFkanVzdEVjb25v
bXk7IH0KICAgICBzdGF0aWMgUXVvdGVzRGF0YSogaW5pdGlhbFF1b3RlcygpIHsgcmV0dXJuIG51
bGxwdHI7IH0KICAgICBzdGF0aWMgY29uc3QgQXRvbWljU3RyaW5nJiBpbml0aWFsQ29udGVudEFs
dFRleHQoKSB7IHJldHVybiBlbXB0eUF0b207IH0KIAogI2lmIEVOQUJMRShDU1NfU0NST0xMX1NO
QVApCiAgICAgc3RhdGljIFNjcm9sbFNuYXBUeXBlIGluaXRpYWxTY3JvbGxTbmFwVHlwZSgpIHsg
cmV0dXJuIFNjcm9sbFNuYXBUeXBlOjpOb25lOyB9Ci0gICAgc3RhdGljIFNjcm9sbFNuYXBQb2lu
dHMgaW5pdGlhbFNjcm9sbFNuYXBQb2ludHNYKCk7Ci0gICAgc3RhdGljIFNjcm9sbFNuYXBQb2lu
dHMgaW5pdGlhbFNjcm9sbFNuYXBQb2ludHNZKCk7CisgICAgc3RhdGljIFNjcm9sbFNuYXBQb2lu
dHMqIGluaXRpYWxTY3JvbGxTbmFwUG9pbnRzWCgpIHsgcmV0dXJuIG51bGxwdHI7IH0KKyAgICBz
dGF0aWMgU2Nyb2xsU25hcFBvaW50cyogaW5pdGlhbFNjcm9sbFNuYXBQb2ludHNZKCkgeyByZXR1
cm4gbnVsbHB0cjsgfQogICAgIHN0YXRpYyBMZW5ndGhTaXplIGluaXRpYWxTY3JvbGxTbmFwRGVz
dGluYXRpb24oKTsKICAgICBzdGF0aWMgVmVjdG9yPExlbmd0aFNpemU+IGluaXRpYWxTY3JvbGxT
bmFwQ29vcmRpbmF0ZXMoKTsKICNlbmRpZgpJbmRleDogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3N0eWxlL1N0eWxlU2Nyb2xsU25hcFBvaW50cy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlU2Nyb2xsU25hcFBvaW50cy5jcHAJKHJldmlzaW9u
IDE4MTE1NikKKysrIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVNjcm9sbFNu
YXBQb2ludHMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01Nyw4ICs1Nyw4IEBAIFN0eWxlU2Nyb2xs
U25hcFBvaW50czo6U3R5bGVTY3JvbGxTbmFwUG8KIAogaW5saW5lIFN0eWxlU2Nyb2xsU25hcFBv
aW50czo6U3R5bGVTY3JvbGxTbmFwUG9pbnRzKGNvbnN0IFN0eWxlU2Nyb2xsU25hcFBvaW50cyYg
b3RoZXIpCiAgICAgOiBSZWZDb3VudGVkKCkKLSAgICAsIHhQb2ludHMob3RoZXIueFBvaW50cykK
LSAgICAsIHlQb2ludHMob3RoZXIueVBvaW50cykKKyAgICAsIHhQb2ludHMob3RoZXIueFBvaW50
cyA/IHN0ZDo6bWFrZV91bmlxdWU8U2Nyb2xsU25hcFBvaW50cz4oKm90aGVyLnhQb2ludHMpIDog
bnVsbHB0cikKKyAgICAsIHlQb2ludHMob3RoZXIueVBvaW50cyA/IHN0ZDo6bWFrZV91bmlxdWU8
U2Nyb2xsU25hcFBvaW50cz4oKm90aGVyLnlQb2ludHMpIDogbnVsbHB0cikKICAgICAsIGRlc3Rp
bmF0aW9uKG90aGVyLmRlc3RpbmF0aW9uKQogICAgICwgY29vcmRpbmF0ZXMob3RoZXIuY29vcmRp
bmF0ZXMpCiB7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVTY3Jv
bGxTbmFwUG9pbnRzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0
eWxlL1N0eWxlU2Nyb2xsU25hcFBvaW50cy5oCShyZXZpc2lvbiAxODExNTYpCisrKyBTb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVTY3JvbGxTbmFwUG9pbnRzLmgJKHdvcmtpbmcg
Y29weSkKQEAgLTUzLDggKzUzLDggQEAgcHVibGljOgogICAgIHN0YXRpYyBSZWY8U3R5bGVTY3Jv
bGxTbmFwUG9pbnRzPiBjcmVhdGUoKSB7IHJldHVybiBhZG9wdFJlZigqbmV3IFN0eWxlU2Nyb2xs
U25hcFBvaW50cyk7IH0KICAgICBSZWY8U3R5bGVTY3JvbGxTbmFwUG9pbnRzPiBjb3B5KCkgY29u
c3Q7CiAKLSAgICBTY3JvbGxTbmFwUG9pbnRzIHhQb2ludHM7Ci0gICAgU2Nyb2xsU25hcFBvaW50
cyB5UG9pbnRzOworICAgIHN0ZDo6dW5pcXVlX3B0cjxTY3JvbGxTbmFwUG9pbnRzPiB4UG9pbnRz
OworICAgIHN0ZDo6dW5pcXVlX3B0cjxTY3JvbGxTbmFwUG9pbnRzPiB5UG9pbnRzOwogICAgIExl
bmd0aFNpemUgZGVzdGluYXRpb247CiAgICAgVmVjdG9yPExlbmd0aFNpemU+IGNvb3JkaW5hdGVz
OwogCkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAxODExODQpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJ
KHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNyBAQAorMjAxNS0wMy0wNiAgQnJlbnQgRnVsZ2hh
bSAgPGJmdWxnaGFtQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgJ2luaXRpYWwnIGtleXdvcmQg
c3VwcG9ydCBmb3Igc2Nyb2xsIHNuYXAgQ1NTIHByb3BlcnRpZXMKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzNjM0NQorICAgICAgICA8cmRhcjovL3By
b2JsZW0vMTgxNjIzMjU+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgKiBjc3MzL3Njcm9sbC1zbmFwL3Njcm9sbC1zbmFwLWluaXRpYWwuaHRtbDogQWRk
ZWQuCisgICAgICAgICogY3NzMy9zY3JvbGwtc25hcC9zY3JvbGwtc25hcC1pbml0aWFsLWV4cGVj
dGVkLnR4dDogQWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vZWZsL1Rlc3RFeHBlY3RhdGlvbnM6
CisgICAgICAgICogcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlvbnM6CisgICAgICAgICogcGxh
dGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnM6CisKIDIwMTUtMDMtMDYgIEpvc2VwaCBQZWNvcmFy
byAgPHBlY29yYXJvQGFwcGxlLmNvbT4KIAogICAgICAgICBFUzY6IE9iamVjdCBMaXRlcmFsIEV4
dGVuc2lvbnMgLSBNZXRob2RzCkluZGV4OiBMYXlvdXRUZXN0cy9jc3MzL3Njcm9sbC1zbmFwL3Nj
cm9sbC1zbmFwLWluaXRpYWwtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2NzczMvc2Nyb2xsLXNuYXAvc2Nyb2xsLXNuYXAtaW5pdGlhbC1leHBlY3RlZC50eHQJKHJldmlz
aW9uIDApCisrKyBMYXlvdXRUZXN0cy9jc3MzL3Njcm9sbC1zbmFwL3Njcm9sbC1zbmFwLWluaXRp
YWwtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsODkgQEAKK1Rlc3RzICdp
bml0aWFsJyBvbiBzY3JvbGwgc25hcCBwcm9wZXJ0aWVzLgorCitPbiBzdWNjZXNzLCB5b3Ugd2ls
bCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01Q
TEVURSIuCisKKworUEFTUyBub0luaXRpYWwuc3R5bGVbJy13ZWJraXQtc2Nyb2xsLXNuYXAtdHlw
ZSddIGlzICIiCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKG5vSW5pdGlhbCkuZ2V0UHJv
cGVydHlWYWx1ZSgnLXdlYmtpdC1zY3JvbGwtc25hcC10eXBlJykgaXMgIm1hbmRhdG9yeSIKK1BB
U1Mgbm9Jbml0aWFsLnN0eWxlWyctd2Via2l0LXNjcm9sbC1zbmFwLXBvaW50cy14J10gaXMgIiIK
K1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUobm9Jbml0aWFsKS5nZXRQcm9wZXJ0eVZhbHVl
KCctd2Via2l0LXNjcm9sbC1zbmFwLXBvaW50cy14JykgaXMgInJlcGVhdCgxMDAlKSIKK1BBU1Mg
bm9Jbml0aWFsLnN0eWxlWyctd2Via2l0LXNjcm9sbC1zbmFwLXBvaW50cy15J10gaXMgIiIKK1BB
U1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUobm9Jbml0aWFsKS5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LXNjcm9sbC1zbmFwLXBvaW50cy15JykgaXMgInJlcGVhdCgxMDAlKSIKK1BBU1Mgbm9J
bml0aWFsLnN0eWxlWyctd2Via2l0LXNjcm9sbC1zbmFwLWRlc3RpbmF0aW9uJ10gaXMgIiIKK1BB
U1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUobm9Jbml0aWFsKS5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LXNjcm9sbC1zbmFwLWRlc3RpbmF0aW9uJykgaXMgIjEwJSAxMSUiCitQQVNTIG5vSW5p
dGlhbC5zdHlsZVsnLXdlYmtpdC1zY3JvbGwtc25hcC1jb29yZGluYXRlJ10gaXMgIiIKK1BBU1Mg
d2luZG93LmdldENvbXB1dGVkU3R5bGUobm9Jbml0aWFsKS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Vi
a2l0LXNjcm9sbC1zbmFwLWNvb3JkaW5hdGUnKSBpcyAibm9uZSIKK1BBU1MgaW5pdGlhbFR5cGUu
c3R5bGVbJy13ZWJraXQtc2Nyb2xsLXNuYXAtdHlwZSddIGlzICJpbml0aWFsIgorUEFTUyB3aW5k
b3cuZ2V0Q29tcHV0ZWRTdHlsZShpbml0aWFsVHlwZSkuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1zY3JvbGwtc25hcC10eXBlJykgaXMgIm5vbmUiCitQQVNTIGluaXRpYWxUeXBlLnN0eWxlWyct
d2Via2l0LXNjcm9sbC1zbmFwLXBvaW50cy14J10gaXMgIiIKK1BBU1Mgd2luZG93LmdldENvbXB1
dGVkU3R5bGUoaW5pdGlhbFR5cGUpLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtc2Nyb2xsLXNu
YXAtcG9pbnRzLXgnKSBpcyAicmVwZWF0KDEwMCUpIgorUEFTUyBpbml0aWFsVHlwZS5zdHlsZVsn
LXdlYmtpdC1zY3JvbGwtc25hcC1wb2ludHMteSddIGlzICIiCitQQVNTIHdpbmRvdy5nZXRDb21w
dXRlZFN0eWxlKGluaXRpYWxUeXBlKS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LXNjcm9sbC1z
bmFwLXBvaW50cy15JykgaXMgInJlcGVhdCgxMDAlKSIKK1BBU1MgaW5pdGlhbFR5cGUuc3R5bGVb
Jy13ZWJraXQtc2Nyb2xsLXNuYXAtZGVzdGluYXRpb24nXSBpcyAiIgorUEFTUyB3aW5kb3cuZ2V0
Q29tcHV0ZWRTdHlsZShpbml0aWFsVHlwZSkuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1zY3Jv
bGwtc25hcC1kZXN0aW5hdGlvbicpIGlzICIwcHggMHB4IgorUEFTUyBpbml0aWFsVHlwZS5zdHls
ZVsnLXdlYmtpdC1zY3JvbGwtc25hcC1jb29yZGluYXRlJ10gaXMgIiIKK1BBU1Mgd2luZG93Lmdl
dENvbXB1dGVkU3R5bGUoaW5pdGlhbFR5cGUpLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtc2Ny
b2xsLXNuYXAtY29vcmRpbmF0ZScpIGlzICIxNXB4IDEyMnB4IgorUEFTUyBpbml0aWFsWFBvaW50
cy5zdHlsZVsnLXdlYmtpdC1zY3JvbGwtc25hcC10eXBlJ10gaXMgIiIKK1BBU1Mgd2luZG93Lmdl
dENvbXB1dGVkU3R5bGUoaW5pdGlhbFhQb2ludHMpLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQt
c2Nyb2xsLXNuYXAtdHlwZScpIGlzICJtYW5kYXRvcnkiCitQQVNTIGluaXRpYWxYUG9pbnRzLnN0
eWxlWyctd2Via2l0LXNjcm9sbC1zbmFwLXBvaW50cy14J10gaXMgImluaXRpYWwiCitQQVNTIHdp
bmRvdy5nZXRDb21wdXRlZFN0eWxlKGluaXRpYWxYUG9pbnRzKS5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LXNjcm9sbC1zbmFwLXBvaW50cy14JykgaXMgIm5vbmUiCitQQVNTIGluaXRpYWxYUG9p
bnRzLnN0eWxlWyctd2Via2l0LXNjcm9sbC1zbmFwLXBvaW50cy15J10gaXMgIiIKK1BBU1Mgd2lu
ZG93LmdldENvbXB1dGVkU3R5bGUoaW5pdGlhbFhQb2ludHMpLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtc2Nyb2xsLXNuYXAtcG9pbnRzLXknKSBpcyAicmVwZWF0KDEwMCUpIgorUEFTUyBpbml0
aWFsWFBvaW50cy5zdHlsZVsnLXdlYmtpdC1zY3JvbGwtc25hcC1kZXN0aW5hdGlvbiddIGlzICIi
CitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGluaXRpYWxYUG9pbnRzKS5nZXRQcm9wZXJ0
eVZhbHVlKCctd2Via2l0LXNjcm9sbC1zbmFwLWRlc3RpbmF0aW9uJykgaXMgIjUwJSA3MCUiCitQ
QVNTIGluaXRpYWxYUG9pbnRzLnN0eWxlWyctd2Via2l0LXNjcm9sbC1zbmFwLWNvb3JkaW5hdGUn
XSBpcyAiIgorUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShpbml0aWFsWFBvaW50cykuZ2V0
UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1zY3JvbGwtc25hcC1jb29yZGluYXRlJykgaXMgIjEwMCUg
NTAlIgorUEFTUyBpbml0aWFsWVBvaW50cy5zdHlsZVsnLXdlYmtpdC1zY3JvbGwtc25hcC10eXBl
J10gaXMgIiIKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUoaW5pdGlhbFlQb2ludHMpLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtc2Nyb2xsLXNuYXAtdHlwZScpIGlzICJtYW5kYXRvcnki
CitQQVNTIGluaXRpYWxZUG9pbnRzLnN0eWxlWyctd2Via2l0LXNjcm9sbC1zbmFwLXBvaW50cy14
J10gaXMgIiIKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUoaW5pdGlhbFlQb2ludHMpLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtc2Nyb2xsLXNuYXAtcG9pbnRzLXgnKSBpcyAicmVwZWF0
KDEwMCUpIgorUEFTUyBpbml0aWFsWVBvaW50cy5zdHlsZVsnLXdlYmtpdC1zY3JvbGwtc25hcC1w
b2ludHMteSddIGlzICJpbml0aWFsIgorUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShpbml0
aWFsWVBvaW50cykuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1zY3JvbGwtc25hcC1wb2ludHMt
eScpIGlzICJub25lIgorUEFTUyBpbml0aWFsWVBvaW50cy5zdHlsZVsnLXdlYmtpdC1zY3JvbGwt
c25hcC1kZXN0aW5hdGlvbiddIGlzICIiCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGlu
aXRpYWxZUG9pbnRzKS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LXNjcm9sbC1zbmFwLWRlc3Rp
bmF0aW9uJykgaXMgIjEwcHggMjBweCIKK1BBU1MgaW5pdGlhbFlQb2ludHMuc3R5bGVbJy13ZWJr
aXQtc2Nyb2xsLXNuYXAtY29vcmRpbmF0ZSddIGlzICIiCitQQVNTIHdpbmRvdy5nZXRDb21wdXRl
ZFN0eWxlKGluaXRpYWxZUG9pbnRzKS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LXNjcm9sbC1z
bmFwLWNvb3JkaW5hdGUnKSBpcyAiNTAlIDEwMCUiCitQQVNTIGluaXRpYWxEZXN0aW5hdGlvbi5z
dHlsZVsnLXdlYmtpdC1zY3JvbGwtc25hcC10eXBlJ10gaXMgIiIKK1BBU1Mgd2luZG93LmdldENv
bXB1dGVkU3R5bGUoaW5pdGlhbERlc3RpbmF0aW9uKS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LXNjcm9sbC1zbmFwLXR5cGUnKSBpcyAicHJveGltaXR5IgorUEFTUyBpbml0aWFsRGVzdGluYXRp
b24uc3R5bGVbJy13ZWJraXQtc2Nyb2xsLXNuYXAtcG9pbnRzLXgnXSBpcyAiIgorUEFTUyB3aW5k
b3cuZ2V0Q29tcHV0ZWRTdHlsZShpbml0aWFsRGVzdGluYXRpb24pLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtc2Nyb2xsLXNuYXAtcG9pbnRzLXgnKSBpcyAicmVwZWF0KDEwMCUpIgorUEFTUyBp
bml0aWFsRGVzdGluYXRpb24uc3R5bGVbJy13ZWJraXQtc2Nyb2xsLXNuYXAtcG9pbnRzLXknXSBp
cyAiIgorUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShpbml0aWFsRGVzdGluYXRpb24pLmdl
dFByb3BlcnR5VmFsdWUoJy13ZWJraXQtc2Nyb2xsLXNuYXAtcG9pbnRzLXknKSBpcyAicmVwZWF0
KDEwMCUpIgorUEFTUyBpbml0aWFsRGVzdGluYXRpb24uc3R5bGVbJy13ZWJraXQtc2Nyb2xsLXNu
YXAtZGVzdGluYXRpb24nXSBpcyAiaW5pdGlhbCIKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5
bGUoaW5pdGlhbERlc3RpbmF0aW9uKS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LXNjcm9sbC1z
bmFwLWRlc3RpbmF0aW9uJykgaXMgIjBweCAwcHgiCitQQVNTIGluaXRpYWxEZXN0aW5hdGlvbi5z
dHlsZVsnLXdlYmtpdC1zY3JvbGwtc25hcC1jb29yZGluYXRlJ10gaXMgIiIKK1BBU1Mgd2luZG93
LmdldENvbXB1dGVkU3R5bGUoaW5pdGlhbERlc3RpbmF0aW9uKS5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LXNjcm9sbC1zbmFwLWNvb3JkaW5hdGUnKSBpcyAiMTBweCAxMHB4IgorUEFTUyBpbml0
aWFsU25hcENvb3JkaW5hdGUuc3R5bGVbJy13ZWJraXQtc2Nyb2xsLXNuYXAtdHlwZSddIGlzICIi
CitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGluaXRpYWxTbmFwQ29vcmRpbmF0ZSkuZ2V0
UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1zY3JvbGwtc25hcC10eXBlJykgaXMgIm1hbmRhdG9yeSIK
K1BBU1MgaW5pdGlhbFNuYXBDb29yZGluYXRlLnN0eWxlWyctd2Via2l0LXNjcm9sbC1zbmFwLXBv
aW50cy14J10gaXMgIiIKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUoaW5pdGlhbFNuYXBD
b29yZGluYXRlKS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LXNjcm9sbC1zbmFwLXBvaW50cy14
JykgaXMgInJlcGVhdCgxMDAlKSIKK1BBU1MgaW5pdGlhbFNuYXBDb29yZGluYXRlLnN0eWxlWyct
d2Via2l0LXNjcm9sbC1zbmFwLXBvaW50cy15J10gaXMgIiIKK1BBU1Mgd2luZG93LmdldENvbXB1
dGVkU3R5bGUoaW5pdGlhbFNuYXBDb29yZGluYXRlKS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LXNjcm9sbC1zbmFwLXBvaW50cy15JykgaXMgInJlcGVhdCgxMDAlKSIKK1BBU1MgaW5pdGlhbFNu
YXBDb29yZGluYXRlLnN0eWxlWyctd2Via2l0LXNjcm9sbC1zbmFwLWRlc3RpbmF0aW9uJ10gaXMg
IiIKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUoaW5pdGlhbFNuYXBDb29yZGluYXRlKS5n
ZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LXNjcm9sbC1zbmFwLWRlc3RpbmF0aW9uJykgaXMgIjEw
JSAxMCUiCitQQVNTIGluaXRpYWxTbmFwQ29vcmRpbmF0ZS5zdHlsZVsnLXdlYmtpdC1zY3JvbGwt
c25hcC1jb29yZGluYXRlJ10gaXMgImluaXRpYWwiCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0
eWxlKGluaXRpYWxTbmFwQ29vcmRpbmF0ZSkuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1zY3Jv
bGwtc25hcC1jb29yZGluYXRlJykgaXMgIm5vbmUiCitQQVNTIGFsbEluaXRpYWwuc3R5bGVbJy13
ZWJraXQtc2Nyb2xsLXNuYXAtdHlwZSddIGlzICJpbml0aWFsIgorUEFTUyB3aW5kb3cuZ2V0Q29t
cHV0ZWRTdHlsZShhbGxJbml0aWFsKS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LXNjcm9sbC1z
bmFwLXR5cGUnKSBpcyAibm9uZSIKK1BBU1MgYWxsSW5pdGlhbC5zdHlsZVsnLXdlYmtpdC1zY3Jv
bGwtc25hcC1wb2ludHMteCddIGlzICJpbml0aWFsIgorUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRT
dHlsZShhbGxJbml0aWFsKS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LXNjcm9sbC1zbmFwLXBv
aW50cy14JykgaXMgIm5vbmUiCitQQVNTIGFsbEluaXRpYWwuc3R5bGVbJy13ZWJraXQtc2Nyb2xs
LXNuYXAtcG9pbnRzLXknXSBpcyAiaW5pdGlhbCIKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5
bGUoYWxsSW5pdGlhbCkuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1zY3JvbGwtc25hcC1wb2lu
dHMteScpIGlzICJub25lIgorUEFTUyBhbGxJbml0aWFsLnN0eWxlWyctd2Via2l0LXNjcm9sbC1z
bmFwLWRlc3RpbmF0aW9uJ10gaXMgImluaXRpYWwiCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0
eWxlKGFsbEluaXRpYWwpLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtc2Nyb2xsLXNuYXAtZGVz
dGluYXRpb24nKSBpcyAiMHB4IDBweCIKK1BBU1MgYWxsSW5pdGlhbC5zdHlsZVsnLXdlYmtpdC1z
Y3JvbGwtc25hcC1jb29yZGluYXRlJ10gaXMgImluaXRpYWwiCitQQVNTIHdpbmRvdy5nZXRDb21w
dXRlZFN0eWxlKGFsbEluaXRpYWwpLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtc2Nyb2xsLXNu
YXAtY29vcmRpbmF0ZScpIGlzICJub25lIgorUEFTUyBhbGxJbml0aWFsWS5zdHlsZVsnLXdlYmtp
dC1zY3JvbGwtc25hcC10eXBlJ10gaXMgImluaXRpYWwiCitQQVNTIHdpbmRvdy5nZXRDb21wdXRl
ZFN0eWxlKGFsbEluaXRpYWxZKS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LXNjcm9sbC1zbmFw
LXR5cGUnKSBpcyAibm9uZSIKK1BBU1MgYWxsSW5pdGlhbFkuc3R5bGVbJy13ZWJraXQtc2Nyb2xs
LXNuYXAtcG9pbnRzLXgnXSBpcyAiaW5pdGlhbCIKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5
bGUoYWxsSW5pdGlhbFkpLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtc2Nyb2xsLXNuYXAtcG9p
bnRzLXgnKSBpcyAibm9uZSIKK1BBU1MgYWxsSW5pdGlhbFkuc3R5bGVbJy13ZWJraXQtc2Nyb2xs
LXNuYXAtcG9pbnRzLXknXSBpcyAiaW5pdGlhbCIKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5
bGUoYWxsSW5pdGlhbFkpLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtc2Nyb2xsLXNuYXAtcG9p
bnRzLXknKSBpcyAibm9uZSIKK1BBU1MgYWxsSW5pdGlhbFkuc3R5bGVbJy13ZWJraXQtc2Nyb2xs
LXNuYXAtZGVzdGluYXRpb24nXSBpcyAiaW5pdGlhbCIKK1BBU1Mgd2luZG93LmdldENvbXB1dGVk
U3R5bGUoYWxsSW5pdGlhbFkpLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtc2Nyb2xsLXNuYXAt
ZGVzdGluYXRpb24nKSBpcyAiMHB4IDBweCIKK1BBU1MgYWxsSW5pdGlhbFkuc3R5bGVbJy13ZWJr
aXQtc2Nyb2xsLXNuYXAtY29vcmRpbmF0ZSddIGlzICJpbml0aWFsIgorUEFTUyB3aW5kb3cuZ2V0
Q29tcHV0ZWRTdHlsZShhbGxJbml0aWFsWSkuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1zY3Jv
bGwtc25hcC1jb29yZGluYXRlJykgaXMgIm5vbmUiCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBp
cyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpJbmRleDogTGF5b3V0VGVzdHMvY3NzMy9zY3JvbGwt
c25hcC9zY3JvbGwtc25hcC1pbml0aWFsLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
Y3NzMy9zY3JvbGwtc25hcC9zY3JvbGwtc25hcC1pbml0aWFsLmh0bWwJKHJldmlzaW9uIDApCisr
KyBMYXlvdXRUZXN0cy9jc3MzL3Njcm9sbC1zbmFwL3Njcm9sbC1zbmFwLWluaXRpYWwuaHRtbAko
d29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDI4MyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4K
KyAgICA8aGVhZD4KKyAgICAgICAgPHN0eWxlPgorICAgICAgICAgICAgLmhvcml6b250YWxHYWxs
ZXJ5IHsKKyAgICAgICAgICAgICAgICB3aWR0aDogNDAwcHg7CisgICAgICAgICAgICAgICAgaGVp
Z2h0OiA1MHB4OworICAgICAgICAgICAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjsKKyAgICAgICAg
ICAgICAgICBvdmVyZmxvdy14OiBhdXRvOworICAgICAgICAgICAgfQorICAgICAgICAgICAgLnZl
cnRpY2FsR2FsbGVyeSB7CisgICAgICAgICAgICAgICAgd2lkdGg6IDQwMHB4OworICAgICAgICAg
ICAgICAgIGhlaWdodDogNTBweDsKKyAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxv
Y2s7CisgICAgICAgICAgICAgICAgb3ZlcmZsb3cteDogaGlkZGVuOworICAgICAgICAgICAgICAg
IG92ZXJmbG93LXk6IGF1dG87CisgICAgICAgICAgICB9CisgICAgICAgICAgICAuaG9yaXpvbnRh
bEdhbGxlcnlEcmF3ZXIgeworICAgICAgICAgICAgICAgIHdpZHRoOiAzMDAwcHg7CisgICAgICAg
ICAgICAgICAgaGVpZ2h0OiA1MHB4OworICAgICAgICAgICAgfQorICAgICAgICAgICAgLnZlcnRp
Y2FsR2FsbGVyeURyYXdlciB7CisgICAgICAgICAgICAgICAgd2lkdGg6IDQwMHB4OworICAgICAg
ICAgICAgICAgIGhlaWdodDogMzAwcHg7CisgICAgICAgICAgICB9CisgICAgICAgICAgICAuY29s
b3JCb3ggeworICAgICAgICAgICAgICAgIGhlaWdodDogNTBweDsKKyAgICAgICAgICAgICAgICB3
aWR0aDogNDAwcHg7CisgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7CisgICAgICAgICAgICB9
CisKKyAgICAgICAgICAgIC5ub0luaXRpYWwgeworICAgICAgICAgICAgICAgIC13ZWJraXQtc2Ny
b2xsLXNuYXAtdHlwZTogbWFuZGF0b3J5OworICAgICAgICAgICAgICAgIC13ZWJraXQtc2Nyb2xs
LXNuYXAtcG9pbnRzLXg6IHJlcGVhdCgxMDAlKTsKKyAgICAgICAgICAgICAgICAtd2Via2l0LXNj
cm9sbC1zbmFwLXBvaW50cy15OiByZXBlYXQoMTAwJSk7CisgICAgICAgICAgICAgICAgLXdlYmtp
dC1zY3JvbGwtc25hcC1kZXN0aW5hdGlvbjogMTAlIDExJTsKKyAgICAgICAgICAgICAgICAtd2Vi
a2l0LXNjcm9sbC1zbmFwLWNvb3JkaW5hdGU6IG5vbmU7CisgICAgICAgICAgICB9CisKKyAgICAg
ICAgICAgIC5pbml0aWFsVHlwZSB7CisgICAgICAgICAgICAgICAgLXdlYmtpdC1zY3JvbGwtc25h
cC10eXBlOiBpbml0aWFsOworICAgICAgICAgICAgICAgIC13ZWJraXQtc2Nyb2xsLXNuYXAtcG9p
bnRzLXg6IHJlcGVhdCgxMDAlKTsKKyAgICAgICAgICAgICAgICAtd2Via2l0LXNjcm9sbC1zbmFw
LXBvaW50cy15OiByZXBlYXQoMTAwJSk7CisgICAgICAgICAgICAgICAgLXdlYmtpdC1zY3JvbGwt
c25hcC1kZXN0aW5hdGlvbjogMHB4IDBweDsKKyAgICAgICAgICAgICAgICAtd2Via2l0LXNjcm9s
bC1zbmFwLWNvb3JkaW5hdGU6IDE1cHggMTIycHg7CisgICAgICAgICAgICB9CisKKyAgICAgICAg
ICAgIC5pbml0aWFsWFBvaW50cyB7CisgICAgICAgICAgICAgICAgLXdlYmtpdC1zY3JvbGwtc25h
cC10eXBlOiBtYW5kYXRvcnk7CisgICAgICAgICAgICAgICAgLXdlYmtpdC1zY3JvbGwtc25hcC1w
b2ludHMteDogaW5pdGlhbDsKKyAgICAgICAgICAgICAgICAtd2Via2l0LXNjcm9sbC1zbmFwLXBv
aW50cy15OiByZXBlYXQoMTAwJSk7CisgICAgICAgICAgICAgICAgLXdlYmtpdC1zY3JvbGwtc25h
cC1kZXN0aW5hdGlvbjogNTAlIDcwJTsKKyAgICAgICAgICAgICAgICAtd2Via2l0LXNjcm9sbC1z
bmFwLWNvb3JkaW5hdGU6IDEwMCUgNTAlOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICAu
aW5pdGlhbFlQb2ludHMgeworICAgICAgICAgICAgICAgIC13ZWJraXQtc2Nyb2xsLXNuYXAtdHlw
ZTogbWFuZGF0b3J5OworICAgICAgICAgICAgICAgIC13ZWJraXQtc2Nyb2xsLXNuYXAtcG9pbnRz
LXg6IHJlcGVhdCgxMDAlKTsKKyAgICAgICAgICAgICAgICAtd2Via2l0LXNjcm9sbC1zbmFwLXBv
aW50cy15OiBpbml0aWFsOworICAgICAgICAgICAgICAgIC13ZWJraXQtc2Nyb2xsLXNuYXAtZGVz
dGluYXRpb246IDEwcHggMjBweDsKKyAgICAgICAgICAgICAgICAtd2Via2l0LXNjcm9sbC1zbmFw
LWNvb3JkaW5hdGU6IDUwJSAxMDAlOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICAuaW5p
dGlhbERlc3RpbmF0aW9uIHsKKyAgICAgICAgICAgICAgICAtd2Via2l0LXNjcm9sbC1zbmFwLXR5
cGU6IHByb3hpbWl0eTsKKyAgICAgICAgICAgICAgICAtd2Via2l0LXNjcm9sbC1zbmFwLXBvaW50
cy14OiByZXBlYXQoMTAwJSk7CisgICAgICAgICAgICAgICAgLXdlYmtpdC1zY3JvbGwtc25hcC1w
b2ludHMteTogcmVwZWF0KDEwMCUpOworICAgICAgICAgICAgICAgIC13ZWJraXQtc2Nyb2xsLXNu
YXAtZGVzdGluYXRpb246IGluaXRpYWw7CisgICAgICAgICAgICAgICAgLXdlYmtpdC1zY3JvbGwt
c25hcC1jb29yZGluYXRlOiAxMHB4IDEwcHg7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAg
IC5pbml0aWFsU25hcENvb3JkaW5hdGUgeworICAgICAgICAgICAgICAgIC13ZWJraXQtc2Nyb2xs
LXNuYXAtdHlwZTogbWFuZGF0b3J5OworICAgICAgICAgICAgICAgIC13ZWJraXQtc2Nyb2xsLXNu
YXAtcG9pbnRzLXg6IHJlcGVhdCgxMDAlKTsKKyAgICAgICAgICAgICAgICAtd2Via2l0LXNjcm9s
bC1zbmFwLXBvaW50cy15OiByZXBlYXQoMTAwJSk7CisgICAgICAgICAgICAgICAgLXdlYmtpdC1z
Y3JvbGwtc25hcC1kZXN0aW5hdGlvbjogMTAlIDEwJTsKKyAgICAgICAgICAgICAgICAtd2Via2l0
LXNjcm9sbC1zbmFwLWNvb3JkaW5hdGU6IGluaXRpYWw7CisgICAgICAgICAgICB9CisKKyAgICAg
ICAgICAgIC5hbGxJbml0aWFsIHsKKyAgICAgICAgICAgICAgICAtd2Via2l0LXNjcm9sbC1zbmFw
LXR5cGU6IGluaXRpYWw7CisgICAgICAgICAgICAgICAgLXdlYmtpdC1zY3JvbGwtc25hcC1wb2lu
dHMteDogaW5pdGlhbDsKKyAgICAgICAgICAgICAgICAtd2Via2l0LXNjcm9sbC1zbmFwLXBvaW50
cy15OiBpbml0aWFsOworICAgICAgICAgICAgICAgIC13ZWJraXQtc2Nyb2xsLXNuYXAtZGVzdGlu
YXRpb246IGluaXRpYWw7CisgICAgICAgICAgICAgICAgLXdlYmtpdC1zY3JvbGwtc25hcC1jb29y
ZGluYXRlOiBpbml0aWFsCisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICNpdGVtMCB7IGJh
Y2tncm91bmQtY29sb3I6IHJlZDsgfQorICAgICAgICAgICAgI2l0ZW0xIHsgYmFja2dyb3VuZC1j
b2xvcjogZ3JlZW47IH0KKyAgICAgICAgICAgICNpdGVtMiB7IGJhY2tncm91bmQtY29sb3I6IGJs
dWU7IH0KKyAgICAgICAgICAgICNpdGVtMyB7IGJhY2tncm91bmQtY29sb3I6IGFxdWE7IH0KKyAg
ICAgICAgICAgICNpdGVtNCB7IGJhY2tncm91bmQtY29sb3I6IHllbGxvdzsgfQorICAgICAgICAg
ICAgI2l0ZW01IHsgYmFja2dyb3VuZC1jb2xvcjogZnVjaHNpYTsgfQorICAgICAgICA8L3N0eWxl
PgorICAgICAgICA8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48
L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisgICAgPGJvZHk+CisgICAgICAgIDxkaXYgc3R5bGU9Indp
ZHRoOiA0MDBweCI+CisgICAgICAgICAgICA8ZGl2IGlkPSJub0luaXRpYWwiIGNsYXNzPSJob3Jp
em9udGFsR2FsbGVyeSBub0luaXRpYWwiPgorICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Imhv
cml6b250YWxHYWxsZXJ5RHJhd2VyIj4KKyAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iaXRl
bTAiIGNsYXNzPSJjb2xvckJveCI+PC9kaXY+CisgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9
Iml0ZW0xIiBjbGFzcz0iY29sb3JCb3giPjwvZGl2PgorICAgICAgICAgICAgICAgICAgICA8ZGl2
IGlkPSJpdGVtMiIgY2xhc3M9ImNvbG9yQm94Ij48L2Rpdj4KKyAgICAgICAgICAgICAgICAgICAg
PGRpdiBpZD0iaXRlbTMiIGNsYXNzPSJjb2xvckJveCI+PC9kaXY+CisgICAgICAgICAgICAgICAg
ICAgIDxkaXYgaWQ9Iml0ZW00IiBjbGFzcz0iY29sb3JCb3giPjwvZGl2PgorICAgICAgICAgICAg
ICAgICAgICA8ZGl2IGlkPSJpdGVtNSIgY2xhc3M9ImNvbG9yQm94Ij48L2Rpdj4KKyAgICAgICAg
ICAgICAgICA8L2Rpdj4KKyAgICAgICAgICAgIDwvZGl2PgorICAgICAgICAgICAgPGRpdiBpZD0i
aW5pdGlhbFR5cGUiIGNsYXNzPSJob3Jpem9udGFsR2FsbGVyeSBpbml0aWFsVHlwZSIgc3R5bGU9
Ii13ZWJraXQtc2Nyb2xsLXNuYXAtdHlwZTogaW5pdGlhbCI+CisgICAgICAgICAgICAgICAgPGRp
diBjbGFzcz0iaG9yaXpvbnRhbEdhbGxlcnlEcmF3ZXIiPgorICAgICAgICAgICAgICAgICAgICA8
ZGl2IGlkPSJpdGVtMCIgY2xhc3M9ImNvbG9yQm94Ij48L2Rpdj4KKyAgICAgICAgICAgICAgICAg
ICAgPGRpdiBpZD0iaXRlbTEiIGNsYXNzPSJjb2xvckJveCI+PC9kaXY+CisgICAgICAgICAgICAg
ICAgICAgIDxkaXYgaWQ9Iml0ZW0yIiBjbGFzcz0iY29sb3JCb3giPjwvZGl2PgorICAgICAgICAg
ICAgICAgICAgICA8ZGl2IGlkPSJpdGVtMyIgY2xhc3M9ImNvbG9yQm94Ij48L2Rpdj4KKyAgICAg
ICAgICAgICAgICAgICAgPGRpdiBpZD0iaXRlbTQiIGNsYXNzPSJjb2xvckJveCI+PC9kaXY+Cisg
ICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9Iml0ZW01IiBjbGFzcz0iY29sb3JCb3giPjwvZGl2
PgorICAgICAgICAgICAgICAgIDwvZGl2PgorICAgICAgICAgICAgPC9kaXY+CisgICAgICAgICAg
ICA8ZGl2IGlkPSJpbml0aWFsWFBvaW50cyIgY2xhc3M9Imhvcml6b250YWxHYWxsZXJ5IGluaXRp
YWxYUG9pbnRzIiBzdHlsZT0iLXdlYmtpdC1zY3JvbGwtc25hcC1wb2ludHMteDogaW5pdGlhbCI+
CisgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaG9yaXpvbnRhbEdhbGxlcnlEcmF3ZXIiPgor
ICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJpdGVtMCIgY2xhc3M9ImNvbG9yQm94Ij48L2Rp
dj4KKyAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iaXRlbTEiIGNsYXNzPSJjb2xvckJveCI+
PC9kaXY+CisgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9Iml0ZW0yIiBjbGFzcz0iY29sb3JC
b3giPjwvZGl2PgorICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJpdGVtMyIgY2xhc3M9ImNv
bG9yQm94Ij48L2Rpdj4KKyAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iaXRlbTQiIGNsYXNz
PSJjb2xvckJveCI+PC9kaXY+CisgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9Iml0ZW01IiBj
bGFzcz0iY29sb3JCb3giPjwvZGl2PgorICAgICAgICAgICAgICAgIDwvZGl2PgorICAgICAgICAg
ICAgPC9kaXY+CisgICAgICAgICAgICA8ZGl2IGlkPSJpbml0aWFsWVBvaW50cyIgY2xhc3M9Imhv
cml6b250YWxHYWxsZXJ5IGluaXRpYWxZUG9pbnRzIiBzdHlsZT0iLXdlYmtpdC1zY3JvbGwtc25h
cC1wb2ludHMteTogaW5pdGlhbCI+CisgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaG9yaXpv
bnRhbEdhbGxlcnlEcmF3ZXIiPgorICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJpdGVtMCIg
Y2xhc3M9ImNvbG9yQm94Ij48L2Rpdj4KKyAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iaXRl
bTEiIGNsYXNzPSJjb2xvckJveCI+PC9kaXY+CisgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9
Iml0ZW0yIiBjbGFzcz0iY29sb3JCb3giPjwvZGl2PgorICAgICAgICAgICAgICAgICAgICA8ZGl2
IGlkPSJpdGVtMyIgY2xhc3M9ImNvbG9yQm94Ij48L2Rpdj4KKyAgICAgICAgICAgICAgICAgICAg
PGRpdiBpZD0iaXRlbTQiIGNsYXNzPSJjb2xvckJveCI+PC9kaXY+CisgICAgICAgICAgICAgICAg
ICAgIDxkaXYgaWQ9Iml0ZW01IiBjbGFzcz0iY29sb3JCb3giPjwvZGl2PgorICAgICAgICAgICAg
ICAgIDwvZGl2PgorICAgICAgICAgICAgPC9kaXY+CisgICAgICAgICAgICA8ZGl2IGlkPSJpbml0
aWFsRGVzdGluYXRpb24iIGNsYXNzPSJob3Jpem9udGFsR2FsbGVyeSBpbml0aWFsRGVzdGluYXRp
b24iIHN0eWxlPSItd2Via2l0LXNjcm9sbC1zbmFwLWRlc3RpbmF0aW9uOiBpbml0aWFsIj4KKyAg
ICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJob3Jpem9udGFsR2FsbGVyeURyYXdlciI+CisgICAg
ICAgICAgICAgICAgICAgIDxkaXYgaWQ9Iml0ZW0wIiBjbGFzcz0iY29sb3JCb3giPjwvZGl2Pgor
ICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJpdGVtMSIgY2xhc3M9ImNvbG9yQm94Ij48L2Rp
dj4KKyAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iaXRlbTIiIGNsYXNzPSJjb2xvckJveCI+
PC9kaXY+CisgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9Iml0ZW0zIiBjbGFzcz0iY29sb3JC
b3giPjwvZGl2PgorICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJpdGVtNCIgY2xhc3M9ImNv
bG9yQm94Ij48L2Rpdj4KKyAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iaXRlbTUiIGNsYXNz
PSJjb2xvckJveCI+PC9kaXY+CisgICAgICAgICAgICAgICAgPC9kaXY+CisgICAgICAgICAgICA8
L2Rpdj4KKyAgICAgICAgICAgIDxkaXYgaWQ9ImluaXRpYWxTbmFwQ29vcmRpbmF0ZSIgY2xhc3M9
Imhvcml6b250YWxHYWxsZXJ5IGluaXRpYWxTbmFwQ29vcmRpbmF0ZSIgc3R5bGU9Ii13ZWJraXQt
c2Nyb2xsLXNuYXAtY29vcmRpbmF0ZTogaW5pdGlhbCI+CisgICAgICAgICAgICAgICAgPGRpdiBj
bGFzcz0iaG9yaXpvbnRhbEdhbGxlcnlEcmF3ZXIiPgorICAgICAgICAgICAgICAgICAgICA8ZGl2
IGlkPSJpdGVtMCIgY2xhc3M9ImNvbG9yQm94Ij48L2Rpdj4KKyAgICAgICAgICAgICAgICAgICAg
PGRpdiBpZD0iaXRlbTEiIGNsYXNzPSJjb2xvckJveCI+PC9kaXY+CisgICAgICAgICAgICAgICAg
ICAgIDxkaXYgaWQ9Iml0ZW0yIiBjbGFzcz0iY29sb3JCb3giPjwvZGl2PgorICAgICAgICAgICAg
ICAgICAgICA8ZGl2IGlkPSJpdGVtMyIgY2xhc3M9ImNvbG9yQm94Ij48L2Rpdj4KKyAgICAgICAg
ICAgICAgICAgICAgPGRpdiBpZD0iaXRlbTQiIGNsYXNzPSJjb2xvckJveCI+PC9kaXY+CisgICAg
ICAgICAgICAgICAgICAgIDxkaXYgaWQ9Iml0ZW01IiBjbGFzcz0iY29sb3JCb3giPjwvZGl2Pgor
ICAgICAgICAgICAgICAgIDwvZGl2PgorICAgICAgICAgICAgPC9kaXY+CisgICAgICAgICAgICA8
ZGl2IGlkPSJhbGxJbml0aWFsIiBjbGFzcz0iaG9yaXpvbnRhbEdhbGxlcnkgYWxsSW5pdGlhbCIg
c3R5bGU9Ii13ZWJraXQtc2Nyb2xsLXNuYXAtdHlwZTogaW5pdGlhbDsgLXdlYmtpdC1zY3JvbGwt
c25hcC1wb2ludHMteDogaW5pdGlhbDsgLXdlYmtpdC1zY3JvbGwtc25hcC1wb2ludHMteTogaW5p
dGlhbDsgLXdlYmtpdC1zY3JvbGwtc25hcC1kZXN0aW5hdGlvbjogaW5pdGlhbDsgLXdlYmtpdC1z
Y3JvbGwtc25hcC1jb29yZGluYXRlOiBpbml0aWFsIj4KKyAgICAgICAgICAgICAgICA8ZGl2IGNs
YXNzPSJob3Jpem9udGFsR2FsbGVyeURyYXdlciI+CisgICAgICAgICAgICAgICAgICAgIDxkaXYg
aWQ9Iml0ZW0wIiBjbGFzcz0iY29sb3JCb3giPjwvZGl2PgorICAgICAgICAgICAgICAgICAgICA8
ZGl2IGlkPSJpdGVtMSIgY2xhc3M9ImNvbG9yQm94Ij48L2Rpdj4KKyAgICAgICAgICAgICAgICAg
ICAgPGRpdiBpZD0iaXRlbTIiIGNsYXNzPSJjb2xvckJveCI+PC9kaXY+CisgICAgICAgICAgICAg
ICAgICAgIDxkaXYgaWQ9Iml0ZW0zIiBjbGFzcz0iY29sb3JCb3giPjwvZGl2PgorICAgICAgICAg
ICAgICAgICAgICA8ZGl2IGlkPSJpdGVtNCIgY2xhc3M9ImNvbG9yQm94Ij48L2Rpdj4KKyAgICAg
ICAgICAgICAgICAgICAgPGRpdiBpZD0iaXRlbTUiIGNsYXNzPSJjb2xvckJveCI+PC9kaXY+Cisg
ICAgICAgICAgICAgICAgPC9kaXY+CisgICAgICAgICAgICA8L2Rpdj4KKyAgICAgICAgICAgIDxk
aXYgaWQ9ImFsbEluaXRpYWxZIiBjbGFzcz0idmVydGljYWxHYWxsZXJ5IG5vSW5pdGlhbCIgc3R5
bGU9Ii13ZWJraXQtc2Nyb2xsLXNuYXAtdHlwZTogaW5pdGlhbDsgLXdlYmtpdC1zY3JvbGwtc25h
cC1wb2ludHMteDogaW5pdGlhbDsgLXdlYmtpdC1zY3JvbGwtc25hcC1wb2ludHMteTogaW5pdGlh
bDsgLXdlYmtpdC1zY3JvbGwtc25hcC1kZXN0aW5hdGlvbjogaW5pdGlhbDsgLXdlYmtpdC1zY3Jv
bGwtc25hcC1jb29yZGluYXRlOiBpbml0aWFsIj4KKyAgICAgICAgICAgICAgICA8ZGl2IGNsYXNz
PSJ2ZXJ0aWNhbEdhbGxlcnlEcmF3ZXIiPgorICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJp
dGVtMCIgY2xhc3M9ImNvbG9yQm94Ij48L2Rpdj4KKyAgICAgICAgICAgICAgICAgICAgPGRpdiBp
ZD0iaXRlbTEiIGNsYXNzPSJjb2xvckJveCI+PC9kaXY+CisgICAgICAgICAgICAgICAgICAgIDxk
aXYgaWQ9Iml0ZW0yIiBjbGFzcz0iY29sb3JCb3giPjwvZGl2PgorICAgICAgICAgICAgICAgICAg
ICA8ZGl2IGlkPSJpdGVtMyIgY2xhc3M9ImNvbG9yQm94Ij48L2Rpdj4KKyAgICAgICAgICAgICAg
ICAgICAgPGRpdiBpZD0iaXRlbTQiIGNsYXNzPSJjb2xvckJveCI+PC9kaXY+CisgICAgICAgICAg
ICAgICAgICAgIDxkaXYgaWQ9Iml0ZW01IiBjbGFzcz0iY29sb3JCb3giPjwvZGl2PgorICAgICAg
ICAgICAgICAgIDwvZGl2PgorICAgICAgICAgICAgPC9kaXY+CisgICAgICAgIDwvZGl2PgorICAg
ICAgICA8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAg
ZGVzY3JpcHRpb24oIlRlc3RzICdpbml0aWFsJyBvbiBzY3JvbGwgc25hcCBwcm9wZXJ0aWVzLiIp
OworCisgICAgICAgIHZhciBub0luaXRpYWwgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbm9J
bml0aWFsJyk7CisgICAgICAgIHNob3VsZEJlRW1wdHlTdHJpbmcoIm5vSW5pdGlhbC5zdHlsZVsn
LXdlYmtpdC1zY3JvbGwtc25hcC10eXBlJ10iKTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3Ry
aW5nKCJ3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShub0luaXRpYWwpLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtc2Nyb2xsLXNuYXAtdHlwZScpIiwgIm1hbmRhdG9yeSIpOworICAgICAgICBzaG91
bGRCZUVtcHR5U3RyaW5nKCJub0luaXRpYWwuc3R5bGVbJy13ZWJraXQtc2Nyb2xsLXNuYXAtcG9p
bnRzLXgnXSIpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoIndpbmRvdy5nZXRDb21w
dXRlZFN0eWxlKG5vSW5pdGlhbCkuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1zY3JvbGwtc25h
cC1wb2ludHMteCcpIiwgInJlcGVhdCgxMDAlKSIpOworICAgICAgICBzaG91bGRCZUVtcHR5U3Ry
aW5nKCJub0luaXRpYWwuc3R5bGVbJy13ZWJraXQtc2Nyb2xsLXNuYXAtcG9pbnRzLXknXSIpOwor
ICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoIndpbmRvdy5nZXRDb21wdXRlZFN0eWxlKG5v
SW5pdGlhbCkuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1zY3JvbGwtc25hcC1wb2ludHMteScp
IiwgInJlcGVhdCgxMDAlKSIpOworICAgICAgICBzaG91bGRCZUVtcHR5U3RyaW5nKCJub0luaXRp
YWwuc3R5bGVbJy13ZWJraXQtc2Nyb2xsLXNuYXAtZGVzdGluYXRpb24nXSIpOworICAgICAgICBz
aG91bGRCZUVxdWFsVG9TdHJpbmcoIndpbmRvdy5nZXRDb21wdXRlZFN0eWxlKG5vSW5pdGlhbCku
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1zY3JvbGwtc25hcC1kZXN0aW5hdGlvbicpIiwgIjEw
JSAxMSUiKTsKKyAgICAgICAgc2hvdWxkQmVFbXB0eVN0cmluZygibm9Jbml0aWFsLnN0eWxlWyct
d2Via2l0LXNjcm9sbC1zbmFwLWNvb3JkaW5hdGUnXSIpOworICAgICAgICBzaG91bGRCZUVxdWFs
VG9TdHJpbmcoIndpbmRvdy5nZXRDb21wdXRlZFN0eWxlKG5vSW5pdGlhbCkuZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1zY3JvbGwtc25hcC1jb29yZGluYXRlJykiLCAibm9uZSIpOworCisgICAg
ICAgIHZhciBpbml0aWFsVHlwZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdpbml0aWFsVHlw
ZScpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImluaXRpYWxUeXBlLnN0eWxlWyct
d2Via2l0LXNjcm9sbC1zbmFwLXR5cGUnXSIsICJpbml0aWFsIik7CisgICAgICAgIHNob3VsZEJl
RXF1YWxUb1N0cmluZygid2luZG93LmdldENvbXB1dGVkU3R5bGUoaW5pdGlhbFR5cGUpLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtc2Nyb2xsLXNuYXAtdHlwZScpIiwgIm5vbmUiKTsKKyAgICAg
ICAgc2hvdWxkQmVFbXB0eVN0cmluZygiaW5pdGlhbFR5cGUuc3R5bGVbJy13ZWJraXQtc2Nyb2xs
LXNuYXAtcG9pbnRzLXgnXSIpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoIndpbmRv
dy5nZXRDb21wdXRlZFN0eWxlKGluaXRpYWxUeXBlKS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LXNjcm9sbC1zbmFwLXBvaW50cy14JykiLCAicmVwZWF0KDEwMCUpIik7CisgICAgICAgIHNob3Vs
ZEJlRW1wdHlTdHJpbmcoImluaXRpYWxUeXBlLnN0eWxlWyctd2Via2l0LXNjcm9sbC1zbmFwLXBv
aW50cy15J10iKTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ3aW5kb3cuZ2V0Q29t
cHV0ZWRTdHlsZShpbml0aWFsVHlwZSkuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1zY3JvbGwt
c25hcC1wb2ludHMteScpIiwgInJlcGVhdCgxMDAlKSIpOworICAgICAgICBzaG91bGRCZUVtcHR5
U3RyaW5nKCJpbml0aWFsVHlwZS5zdHlsZVsnLXdlYmtpdC1zY3JvbGwtc25hcC1kZXN0aW5hdGlv
biddIik7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygid2luZG93LmdldENvbXB1dGVk
U3R5bGUoaW5pdGlhbFR5cGUpLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtc2Nyb2xsLXNuYXAt
ZGVzdGluYXRpb24nKSIsICIwcHggMHB4Iik7CisgICAgICAgIHNob3VsZEJlRW1wdHlTdHJpbmco
ImluaXRpYWxUeXBlLnN0eWxlWyctd2Via2l0LXNjcm9sbC1zbmFwLWNvb3JkaW5hdGUnXSIpOwor
ICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoIndpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGlu
aXRpYWxUeXBlKS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LXNjcm9sbC1zbmFwLWNvb3JkaW5h
dGUnKSIsICIxNXB4IDEyMnB4Iik7CisKKyAgICAgICAgdmFyIGluaXRpYWxYUG9pbnRzID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2luaXRpYWxYUG9pbnRzJyk7CisgICAgICAgIHNob3VsZEJl
RW1wdHlTdHJpbmcoImluaXRpYWxYUG9pbnRzLnN0eWxlWyctd2Via2l0LXNjcm9sbC1zbmFwLXR5
cGUnXSIpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoIndpbmRvdy5nZXRDb21wdXRl
ZFN0eWxlKGluaXRpYWxYUG9pbnRzKS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LXNjcm9sbC1z
bmFwLXR5cGUnKSIsICJtYW5kYXRvcnkiKTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5n
KCJpbml0aWFsWFBvaW50cy5zdHlsZVsnLXdlYmtpdC1zY3JvbGwtc25hcC1wb2ludHMteCddIiwg
ImluaXRpYWwiKTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ3aW5kb3cuZ2V0Q29t
cHV0ZWRTdHlsZShpbml0aWFsWFBvaW50cykuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1zY3Jv
bGwtc25hcC1wb2ludHMteCcpIiwgIm5vbmUiKTsKKyAgICAgICAgc2hvdWxkQmVFbXB0eVN0cmlu
ZygiaW5pdGlhbFhQb2ludHMuc3R5bGVbJy13ZWJraXQtc2Nyb2xsLXNuYXAtcG9pbnRzLXknXSIp
OworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoIndpbmRvdy5nZXRDb21wdXRlZFN0eWxl
KGluaXRpYWxYUG9pbnRzKS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LXNjcm9sbC1zbmFwLXBv
aW50cy15JykiLCAicmVwZWF0KDEwMCUpIik7CisgICAgICAgIHNob3VsZEJlRW1wdHlTdHJpbmco
ImluaXRpYWxYUG9pbnRzLnN0eWxlWyctd2Via2l0LXNjcm9sbC1zbmFwLWRlc3RpbmF0aW9uJ10i
KTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ3aW5kb3cuZ2V0Q29tcHV0ZWRTdHls
ZShpbml0aWFsWFBvaW50cykuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1zY3JvbGwtc25hcC1k
ZXN0aW5hdGlvbicpIiwgIjUwJSA3MCUiKTsKKyAgICAgICAgc2hvdWxkQmVFbXB0eVN0cmluZygi
aW5pdGlhbFhQb2ludHMuc3R5bGVbJy13ZWJraXQtc2Nyb2xsLXNuYXAtY29vcmRpbmF0ZSddIik7
CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygid2luZG93LmdldENvbXB1dGVkU3R5bGUo
aW5pdGlhbFhQb2ludHMpLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtc2Nyb2xsLXNuYXAtY29v
cmRpbmF0ZScpIiwgIjEwMCUgNTAlIik7CisKKyAgICAgICAgdmFyIGluaXRpYWxZUG9pbnRzID0g
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2luaXRpYWxZUG9pbnRzJyk7CisgICAgICAgIHNob3Vs
ZEJlRW1wdHlTdHJpbmcoImluaXRpYWxZUG9pbnRzLnN0eWxlWyctd2Via2l0LXNjcm9sbC1zbmFw
LXR5cGUnXSIpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoIndpbmRvdy5nZXRDb21w
dXRlZFN0eWxlKGluaXRpYWxZUG9pbnRzKS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LXNjcm9s
bC1zbmFwLXR5cGUnKSIsICJtYW5kYXRvcnkiKTsKKyAgICAgICAgc2hvdWxkQmVFbXB0eVN0cmlu
ZygiaW5pdGlhbFlQb2ludHMuc3R5bGVbJy13ZWJraXQtc2Nyb2xsLXNuYXAtcG9pbnRzLXgnXSIp
OworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoIndpbmRvdy5nZXRDb21wdXRlZFN0eWxl
KGluaXRpYWxZUG9pbnRzKS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LXNjcm9sbC1zbmFwLXBv
aW50cy14JykiLCAicmVwZWF0KDEwMCUpIik7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmlu
ZygiaW5pdGlhbFlQb2ludHMuc3R5bGVbJy13ZWJraXQtc2Nyb2xsLXNuYXAtcG9pbnRzLXknXSIs
ICJpbml0aWFsIik7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygid2luZG93LmdldENv
bXB1dGVkU3R5bGUoaW5pdGlhbFlQb2ludHMpLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtc2Ny
b2xsLXNuYXAtcG9pbnRzLXknKSIsICJub25lIik7CisgICAgICAgIHNob3VsZEJlRW1wdHlTdHJp
bmcoImluaXRpYWxZUG9pbnRzLnN0eWxlWyctd2Via2l0LXNjcm9sbC1zbmFwLWRlc3RpbmF0aW9u
J10iKTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ3aW5kb3cuZ2V0Q29tcHV0ZWRT
dHlsZShpbml0aWFsWVBvaW50cykuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1zY3JvbGwtc25h
cC1kZXN0aW5hdGlvbicpIiwgIjEwcHggMjBweCIpOworICAgICAgICBzaG91bGRCZUVtcHR5U3Ry
aW5nKCJpbml0aWFsWVBvaW50cy5zdHlsZVsnLXdlYmtpdC1zY3JvbGwtc25hcC1jb29yZGluYXRl
J10iKTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ3aW5kb3cuZ2V0Q29tcHV0ZWRT
dHlsZShpbml0aWFsWVBvaW50cykuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1zY3JvbGwtc25h
cC1jb29yZGluYXRlJykiLCAiNTAlIDEwMCUiKTsKKworICAgICAgICB2YXIgaW5pdGlhbERlc3Rp
bmF0aW9uID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2luaXRpYWxEZXN0aW5hdGlvbicpOwor
ICAgICAgICBzaG91bGRCZUVtcHR5U3RyaW5nKCJpbml0aWFsRGVzdGluYXRpb24uc3R5bGVbJy13
ZWJraXQtc2Nyb2xsLXNuYXAtdHlwZSddIik7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmlu
Zygid2luZG93LmdldENvbXB1dGVkU3R5bGUoaW5pdGlhbERlc3RpbmF0aW9uKS5nZXRQcm9wZXJ0
eVZhbHVlKCctd2Via2l0LXNjcm9sbC1zbmFwLXR5cGUnKSIsICJwcm94aW1pdHkiKTsKKyAgICAg
ICAgc2hvdWxkQmVFbXB0eVN0cmluZygiaW5pdGlhbERlc3RpbmF0aW9uLnN0eWxlWyctd2Via2l0
LXNjcm9sbC1zbmFwLXBvaW50cy14J10iKTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5n
KCJ3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShpbml0aWFsRGVzdGluYXRpb24pLmdldFByb3BlcnR5
VmFsdWUoJy13ZWJraXQtc2Nyb2xsLXNuYXAtcG9pbnRzLXgnKSIsICJyZXBlYXQoMTAwJSkiKTsK
KyAgICAgICAgc2hvdWxkQmVFbXB0eVN0cmluZygiaW5pdGlhbERlc3RpbmF0aW9uLnN0eWxlWyct
d2Via2l0LXNjcm9sbC1zbmFwLXBvaW50cy15J10iKTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRv
U3RyaW5nKCJ3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShpbml0aWFsRGVzdGluYXRpb24pLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtc2Nyb2xsLXNuYXAtcG9pbnRzLXknKSIsICJyZXBlYXQoMTAw
JSkiKTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJpbml0aWFsRGVzdGluYXRpb24u
c3R5bGVbJy13ZWJraXQtc2Nyb2xsLXNuYXAtZGVzdGluYXRpb24nXSIsICJpbml0aWFsIik7Cisg
ICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygid2luZG93LmdldENvbXB1dGVkU3R5bGUoaW5p
dGlhbERlc3RpbmF0aW9uKS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LXNjcm9sbC1zbmFwLWRl
c3RpbmF0aW9uJykiLCAiMHB4IDBweCIpOworICAgICAgICBzaG91bGRCZUVtcHR5U3RyaW5nKCJp
bml0aWFsRGVzdGluYXRpb24uc3R5bGVbJy13ZWJraXQtc2Nyb2xsLXNuYXAtY29vcmRpbmF0ZSdd
Iik7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygid2luZG93LmdldENvbXB1dGVkU3R5
bGUoaW5pdGlhbERlc3RpbmF0aW9uKS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LXNjcm9sbC1z
bmFwLWNvb3JkaW5hdGUnKSIsICIxMHB4IDEwcHgiKTsKKworICAgICAgICB2YXIgaW5pdGlhbFNu
YXBDb29yZGluYXRlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2luaXRpYWxTbmFwQ29vcmRp
bmF0ZScpOworICAgICAgICBzaG91bGRCZUVtcHR5U3RyaW5nKCJpbml0aWFsU25hcENvb3JkaW5h
dGUuc3R5bGVbJy13ZWJraXQtc2Nyb2xsLXNuYXAtdHlwZSddIik7CisgICAgICAgIHNob3VsZEJl
RXF1YWxUb1N0cmluZygid2luZG93LmdldENvbXB1dGVkU3R5bGUoaW5pdGlhbFNuYXBDb29yZGlu
YXRlKS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LXNjcm9sbC1zbmFwLXR5cGUnKSIsICJtYW5k
YXRvcnkiKTsKKyAgICAgICAgc2hvdWxkQmVFbXB0eVN0cmluZygiaW5pdGlhbFNuYXBDb29yZGlu
YXRlLnN0eWxlWyctd2Via2l0LXNjcm9sbC1zbmFwLXBvaW50cy14J10iKTsKKyAgICAgICAgc2hv
dWxkQmVFcXVhbFRvU3RyaW5nKCJ3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShpbml0aWFsU25hcENv
b3JkaW5hdGUpLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtc2Nyb2xsLXNuYXAtcG9pbnRzLXgn
KSIsICJyZXBlYXQoMTAwJSkiKTsKKyAgICAgICAgc2hvdWxkQmVFbXB0eVN0cmluZygiaW5pdGlh
bFNuYXBDb29yZGluYXRlLnN0eWxlWyctd2Via2l0LXNjcm9sbC1zbmFwLXBvaW50cy15J10iKTsK
KyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShp
bml0aWFsU25hcENvb3JkaW5hdGUpLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtc2Nyb2xsLXNu
YXAtcG9pbnRzLXknKSIsICJyZXBlYXQoMTAwJSkiKTsKKyAgICAgICAgc2hvdWxkQmVFbXB0eVN0
cmluZygiaW5pdGlhbFNuYXBDb29yZGluYXRlLnN0eWxlWyctd2Via2l0LXNjcm9sbC1zbmFwLWRl
c3RpbmF0aW9uJ10iKTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ3aW5kb3cuZ2V0
Q29tcHV0ZWRTdHlsZShpbml0aWFsU25hcENvb3JkaW5hdGUpLmdldFByb3BlcnR5VmFsdWUoJy13
ZWJraXQtc2Nyb2xsLXNuYXAtZGVzdGluYXRpb24nKSIsICIxMCUgMTAlIik7CisgICAgICAgIHNo
b3VsZEJlRXF1YWxUb1N0cmluZygiaW5pdGlhbFNuYXBDb29yZGluYXRlLnN0eWxlWyctd2Via2l0
LXNjcm9sbC1zbmFwLWNvb3JkaW5hdGUnXSIsICJpbml0aWFsIik7CisgICAgICAgIHNob3VsZEJl
RXF1YWxUb1N0cmluZygid2luZG93LmdldENvbXB1dGVkU3R5bGUoaW5pdGlhbFNuYXBDb29yZGlu
YXRlKS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LXNjcm9sbC1zbmFwLWNvb3JkaW5hdGUnKSIs
ICJub25lIik7CisKKyAgICAgICAgdmFyIGFsbEluaXRpYWwgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgnYWxsSW5pdGlhbCcpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImFsbElu
aXRpYWwuc3R5bGVbJy13ZWJraXQtc2Nyb2xsLXNuYXAtdHlwZSddIiwgImluaXRpYWwiKTsKKyAg
ICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShhbGxJ
bml0aWFsKS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LXNjcm9sbC1zbmFwLXR5cGUnKSIsICJu
b25lIik7CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiYWxsSW5pdGlhbC5zdHlsZVsn
LXdlYmtpdC1zY3JvbGwtc25hcC1wb2ludHMteCddIiwgImluaXRpYWwiKTsKKyAgICAgICAgc2hv
dWxkQmVFcXVhbFRvU3RyaW5nKCJ3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShhbGxJbml0aWFsKS5n
ZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LXNjcm9sbC1zbmFwLXBvaW50cy14JykiLCAibm9uZSIp
OworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImFsbEluaXRpYWwuc3R5bGVbJy13ZWJr
aXQtc2Nyb2xsLXNuYXAtcG9pbnRzLXknXSIsICJpbml0aWFsIik7CisgICAgICAgIHNob3VsZEJl
RXF1YWxUb1N0cmluZygid2luZG93LmdldENvbXB1dGVkU3R5bGUoYWxsSW5pdGlhbCkuZ2V0UHJv
cGVydHlWYWx1ZSgnLXdlYmtpdC1zY3JvbGwtc25hcC1wb2ludHMteScpIiwgIm5vbmUiKTsKKyAg
ICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJhbGxJbml0aWFsLnN0eWxlWyctd2Via2l0LXNj
cm9sbC1zbmFwLWRlc3RpbmF0aW9uJ10iLCAiaW5pdGlhbCIpOworICAgICAgICBzaG91bGRCZUVx
dWFsVG9TdHJpbmcoIndpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGFsbEluaXRpYWwpLmdldFByb3Bl
cnR5VmFsdWUoJy13ZWJraXQtc2Nyb2xsLXNuYXAtZGVzdGluYXRpb24nKSIsICIwcHggMHB4Iik7
CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiYWxsSW5pdGlhbC5zdHlsZVsnLXdlYmtp
dC1zY3JvbGwtc25hcC1jb29yZGluYXRlJ10iLCAiaW5pdGlhbCIpOworICAgICAgICBzaG91bGRC
ZUVxdWFsVG9TdHJpbmcoIndpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGFsbEluaXRpYWwpLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtc2Nyb2xsLXNuYXAtY29vcmRpbmF0ZScpIiwgIm5vbmUiKTsK
KworICAgICAgICB2YXIgYWxsSW5pdGlhbFkgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnYWxs
SW5pdGlhbFknKTsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJhbGxJbml0aWFsWS5z
dHlsZVsnLXdlYmtpdC1zY3JvbGwtc25hcC10eXBlJ10iLCAiaW5pdGlhbCIpOworICAgICAgICBz
aG91bGRCZUVxdWFsVG9TdHJpbmcoIndpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGFsbEluaXRpYWxZ
KS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LXNjcm9sbC1zbmFwLXR5cGUnKSIsICJub25lIik7
CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiYWxsSW5pdGlhbFkuc3R5bGVbJy13ZWJr
aXQtc2Nyb2xsLXNuYXAtcG9pbnRzLXgnXSIsICJpbml0aWFsIik7CisgICAgICAgIHNob3VsZEJl
RXF1YWxUb1N0cmluZygid2luZG93LmdldENvbXB1dGVkU3R5bGUoYWxsSW5pdGlhbFkpLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtc2Nyb2xsLXNuYXAtcG9pbnRzLXgnKSIsICJub25lIik7Cisg
ICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiYWxsSW5pdGlhbFkuc3R5bGVbJy13ZWJraXQt
c2Nyb2xsLXNuYXAtcG9pbnRzLXknXSIsICJpbml0aWFsIik7CisgICAgICAgIHNob3VsZEJlRXF1
YWxUb1N0cmluZygid2luZG93LmdldENvbXB1dGVkU3R5bGUoYWxsSW5pdGlhbFkpLmdldFByb3Bl
cnR5VmFsdWUoJy13ZWJraXQtc2Nyb2xsLXNuYXAtcG9pbnRzLXknKSIsICJub25lIik7CisgICAg
ICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiYWxsSW5pdGlhbFkuc3R5bGVbJy13ZWJraXQtc2Ny
b2xsLXNuYXAtZGVzdGluYXRpb24nXSIsICJpbml0aWFsIik7CisgICAgICAgIHNob3VsZEJlRXF1
YWxUb1N0cmluZygid2luZG93LmdldENvbXB1dGVkU3R5bGUoYWxsSW5pdGlhbFkpLmdldFByb3Bl
cnR5VmFsdWUoJy13ZWJraXQtc2Nyb2xsLXNuYXAtZGVzdGluYXRpb24nKSIsICIwcHggMHB4Iik7
CisgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiYWxsSW5pdGlhbFkuc3R5bGVbJy13ZWJr
aXQtc2Nyb2xsLXNuYXAtY29vcmRpbmF0ZSddIiwgImluaXRpYWwiKTsKKyAgICAgICAgc2hvdWxk
QmVFcXVhbFRvU3RyaW5nKCJ3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShhbGxJbml0aWFsWSkuZ2V0
UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1zY3JvbGwtc25hcC1jb29yZGluYXRlJykiLCAibm9uZSIp
OworICAgICAgICA8L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNl
cy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorICAgIDwvYm9keT4KKzwvaHRtbD4KKwpJbmRl
eDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vZWZsL1Rlc3RFeHBlY3RhdGlvbnMKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vZWZsL1Rlc3RFeHBlY3RhdGlvbnMJKHJldmlzaW9uIDE4
MTE1NikKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9UZXN0RXhwZWN0YXRpb25zCSh3b3Jr
aW5nIGNvcHkpCkBAIC01OSw2ICs1OSw5IEBAIG1lZGlhL21lZGlhLWNhcHRpb25zLmh0bWwKIGZh
c3QvZG9tL1dpbmRvdy9zbG93LXVubG9hZC1oYW5kbGVyLmh0bWwKIGZhc3QvZG9tL1dpbmRvdy9z
bG93LXVubG9hZC1oYW5kbGVyLW9ubHktZnJhbWUtaXMtc3RvcHBlZC5odG1sCiAKKyMgTmVlZCBh
IHNjcm9sbCBzbmFwIHBvaW50IGltcGxlbWVudGF0aW9uCitjc3MzL3Njcm9sbC1zbmFwIFsgU2tp
cCBdCisKICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogIyBUZXN0
cyB3aGljaCBhbHNvIGZhaWwgaW4gb3RoZXIgcGxhdGZvcm1zCiAjIC0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9U
ZXN0RXhwZWN0YXRpb25zCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9U
ZXN0RXhwZWN0YXRpb25zCShyZXZpc2lvbiAxODExNTYpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9y
bS9ndGsvVGVzdEV4cGVjdGF0aW9ucwkod29ya2luZyBjb3B5KQpAQCAtNjIwLDcgKzYyMCw4IEBA
IHdlYmtpdC5vcmcvYi8xNDIyOTEgZmFzdC9jbGlwL2NsaXAtd2hlbi0KIHdlYmtpdC5vcmcvYi8x
NDIyOTEgZmFzdC9sYXllcnMvbm8tY2xpcHBpbmctb3ZlcmZsb3ctaGlkZGVuLWhhcmR3YXJlLWFj
Y2VsZXJhdGlvbi5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMTQyMjkx
IGZhc3QvcmVnaW9ucy9yZXBhaW50L2ZpeGVkLWluLW5hbWVkLWZsb3ctY2ItY2hhbmdlZC5odG1s
IFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiAKLQorIyBUT0RPIFNjcm9sbCBzbmFwIHBvaW50cworY3Nz
My9zY3JvbGwtc25hcCBbIFNraXAgXQogIy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8K
ICMgRW5kIG9mIEV4cGVjdGVkIGZhaWx1cmVzCiAjLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLwpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnMKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnMJKHJl
dmlzaW9uIDE4MTE1NikKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9UZXN0RXhwZWN0YXRp
b25zCSh3b3JraW5nIGNvcHkpCkBAIC01OTEsNiArNTkxLDkgQEAgd2Via2l0Lm9yZy9iLzM1MDEz
IHN2Zy96b29tL3RleHQvIFsgU2tpcAogCiAjIFRPRE8gQXR0YWNobWVudCBlbGVtZW50cyBkbyBu
b3QgcHJvdmlkZSBhIGN1c3RvbSByZW5kZXJlcgogd2Via2l0Lm9yZy9iLzE0MjI2MCBmYXN0L2F0
dGFjaG1lbnQgWyBTa2lwIF0KKworIyBUT0RPIFNjcm9sbCBzbmFwIHBvaW50cworY3NzMy9zY3Jv
bGwtc25hcCBbIFNraXAgXQogIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKICMjIyMjIyMjIyMjICAg
IEVuZCBNaXNzaW5nIEZ1bmN0aW9uYWxpdHkgUHJldmVudHMgVGVzdGluZyAgICAgICAgICMjIyMj
IyMjIyMjIyMjCiAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwo=
</data>
<flag name="review"
          id="273019"
          type_id="1"
          status="+"
          setter="dino"
    />
          </attachment>
      

    </bug>

</bugzilla>