<?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>213827</bug_id>
          
          <creation_ts>2020-06-30 22:13:02 -0700</creation_ts>
          <short_desc>Locale-specific quotes infrastructure needs to compare locale strings properly</short_desc>
          <delta_ts>2020-07-06 17:00:22 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Myles C. Maxfield">mmaxfield</reporter>
          <assigned_to name="Myles C. Maxfield">mmaxfield</assigned_to>
          <cc>changseok</cc>
    
    <cc>darin</cc>
    
    <cc>dino</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>jonlee</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>pdr</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1667835</commentid>
    <comment_count>0</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2020-06-30 22:13:02 -0700</bug_when>
    <thetext>Locale-specific quotes infrastructure needs to compare locale strings properly</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1667839</commentid>
    <comment_count>1</comment_count>
      <attachid>403267</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2020-06-30 22:23:48 -0700</bug_when>
    <thetext>Created attachment 403267
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1667997</commentid>
    <comment_count>2</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2020-07-01 10:29:34 -0700</bug_when>
    <thetext>Windows crashes seem unrelated to this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1668003</commentid>
    <comment_count>3</comment_count>
      <attachid>403267</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-07-01 10:42:44 -0700</bug_when>
    <thetext>Comment on attachment 403267
Patch

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

&gt; Source/WebCore/rendering/RenderQuote.cpp:119
&gt; +    if (result.keyLength == result.rangeLength)
&gt; +        result.comparison = strncmp(key, range, result.keyLength);

I don’t understand why this is an important optimization. But if it is, it should be memcmp, not strncmp. I see no benefit to using strncmp.

&gt; Source/WebCore/rendering/RenderQuote.cpp:121
&gt; +        result.comparison = strcmp(key, range);

Why is this OK when we found hyphens? Will this return -1 or +1 when it should be returning 0? Do we have enough test coverage for this?

&gt; Source/WebCore/rendering/RenderQuote.cpp:162
&gt; +    SubtagComparison firstSubtagComparison = subtagCompare(key-&gt;language, range-&gt;language);

auto

&gt; Source/WebCore/rendering/RenderQuote.cpp:178
&gt; +    size_t keyOffset = firstSubtagComparison.keyContinue;
&gt; +    while (true) {

How about a for loop?

&gt; Source/WebCore/rendering/RenderQuote.cpp:179
&gt; +        SubtagComparison nextSubtagComparison = subtagCompare(key-&gt;language + keyOffset, range-&gt;language + firstSubtagComparison.rangeContinue);

auto

&gt; Source/WebCore/rendering/RenderQuote.cpp:209
&gt; +    // FIXME: This table is out-of-date.

How thorough is our test coverage?

&gt; Source/WebCore/rendering/RenderQuote.cpp:480
&gt; +        if (const QuotesForLanguage* quotes = quotesForLanguage(style().computedLocale()))

auto?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1669178</commentid>
    <comment_count>4</comment_count>
      <attachid>403267</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2020-07-06 14:46:25 -0700</bug_when>
    <thetext>Comment on attachment 403267
Patch

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

&gt;&gt; Source/WebCore/rendering/RenderQuote.cpp:119
&gt;&gt; +        result.comparison = strncmp(key, range, result.keyLength);
&gt; 
&gt; I don’t understand why this is an important optimization. But if it is, it should be memcmp, not strncmp. I see no benefit to using strncmp.

It&apos;s an optimization for lines 164-165 below. I&apos;ll change it to memcmp().

&gt;&gt; Source/WebCore/rendering/RenderQuote.cpp:121
&gt;&gt; +        result.comparison = strcmp(key, range);
&gt; 
&gt; Why is this OK when we found hyphens? Will this return -1 or +1 when it should be returning 0? Do we have enough test coverage for this?

It&apos;s an optimization for line 167-168 below.

&gt;&gt; Source/WebCore/rendering/RenderQuote.cpp:178
&gt;&gt; +    while (true) {
&gt; 
&gt; How about a for loop?

It would look like &quot;for (size_t keyOffset = firstSubtagComparison.keyContinue; ;) { ... }. Is this better? In the future, how should I know whether to collapse this kind of thing into a for loop?

&gt;&gt; Source/WebCore/rendering/RenderQuote.cpp:209
&gt;&gt; +    // FIXME: This table is out-of-date.
&gt; 
&gt; How thorough is our test coverage?

fast/css-generated-content/quotes-lang.html tests every single one of these (but doesn&apos;t test suffixes and prefixes the way that this new test in this patch does)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1669179</commentid>
    <comment_count>5</comment_count>
      <attachid>403267</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-07-06 14:48:53 -0700</bug_when>
    <thetext>Comment on attachment 403267
Patch

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

&gt;&gt;&gt; Source/WebCore/rendering/RenderQuote.cpp:178
&gt;&gt;&gt; +    while (true) {
&gt;&gt; 
&gt;&gt; How about a for loop?
&gt; 
&gt; It would look like &quot;for (size_t keyOffset = firstSubtagComparison.keyContinue; ;) { ... }. Is this better? In the future, how should I know whether to collapse this kind of thing into a for loop?

Also &quot;keyOffset += nextSubtagComparison.keyContinue&quot; as the third part.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1669180</commentid>
    <comment_count>6</comment_count>
      <attachid>403267</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-07-06 14:49:06 -0700</bug_when>
    <thetext>Comment on attachment 403267
Patch

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

&gt;&gt;&gt;&gt; Source/WebCore/rendering/RenderQuote.cpp:178
&gt;&gt;&gt;&gt; +    while (true) {
&gt;&gt;&gt; 
&gt;&gt;&gt; How about a for loop?
&gt;&gt; 
&gt;&gt; It would look like &quot;for (size_t keyOffset = firstSubtagComparison.keyContinue; ;) { ... }. Is this better? In the future, how should I know whether to collapse this kind of thing into a for loop?
&gt; 
&gt; Also &quot;keyOffset += nextSubtagComparison.keyContinue&quot; as the third part.

Oh, but we can’t. Darn.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1669187</commentid>
    <comment_count>7</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2020-07-06 14:58:27 -0700</bug_when>
    <thetext>(In reply to Darin Adler from comment #6)
&gt; Comment on attachment 403267 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=403267&amp;action=review
&gt; 
&gt; &gt;&gt;&gt;&gt; Source/WebCore/rendering/RenderQuote.cpp:178
&gt; &gt;&gt;&gt;&gt; +    while (true) {
&gt; &gt;&gt;&gt; 
&gt; &gt;&gt;&gt; How about a for loop?
&gt; &gt;&gt; 
&gt; &gt;&gt; It would look like &quot;for (size_t keyOffset = firstSubtagComparison.keyContinue; ;) { ... }. Is this better? In the future, how should I know whether to collapse this kind of thing into a for loop?
&gt; &gt; 
&gt; &gt; Also &quot;keyOffset += nextSubtagComparison.keyContinue&quot; as the third part.
&gt; 
&gt; Oh, but we can’t. Darn.

Right. I thought about doing a for loop, but thought that if there&apos;s only a single clause, it might as well just be a while loop. But I do see an argument about scoping of the keyOffset variable, so I think in this case a for loop is better. On the other hand, if the loop was &quot;for (; expr;)&quot; it clearly should be a while loop, and if it&apos;s &quot;for (;; expr)&quot; then I don&apos;t know what it should be. Is there some guidance about the right way to perform these transformations?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1669196</commentid>
    <comment_count>8</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-07-06 15:27:04 -0700</bug_when>
    <thetext>(In reply to Myles C. Maxfield from comment #7)
&gt; Is there some guidance about the right way to
&gt; perform these transformations?

Often we can create an object that can help turn a loop into a range-based for loop. Probably my best advice. But don’t do anything here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1669244</commentid>
    <comment_count>9</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2020-07-06 16:59:29 -0700</bug_when>
    <thetext>Committed r263998: &lt;https://trac.webkit.org/changeset/263998&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1669245</commentid>
    <comment_count>10</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-07-06 17:00:22 -0700</bug_when>
    <thetext>&lt;rdar://problem/65154465&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>403267</attachid>
            <date>2020-06-30 22:23:48 -0700</date>
            <delta_ts>2020-07-01 10:42:44 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-213827-20200630222348.patch</filename>
            <type>text/plain</type>
            <size>32468</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYzNzg0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGRkYjAxYjA4NWM4MzFh
OGY2ZDFkZjY3MTVkYjQ4YWYwYWRiODMzYS4uMjYwNTY0NTIwMzUzYjMzMGE5NDcyNjY1NDBjODNi
NTNjMDU1MmNlZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQyIEBACisyMDIwLTA2LTMwICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgTG9jYWxlLXNw
ZWNpZmljIHF1b3RlcyBpbmZyYXN0cnVjdHVyZSBuZWVkcyB0byBjb21wYXJlIGxvY2FsZSBzdHJp
bmdzIHByb3Blcmx5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMTM4MjcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBCZWZvcmUgdGhpcyBwYXRjaCwgV2ViS2l0IGlzIHNlbGVjdGluZyB3aGljaCBxdW90ZXMg
dG8gZGlzcGxheSBvbiA8cT4KKyAgICAgICAgZWxlbWVudHMgYnkgZG9pbmcgYSByYXcgc3RyY21w
KCkgb24gdGhlIGxvY2FsZSBzdHJpbmcgd2l0aCBhIGJpZyB0YWJsZQorICAgICAgICBvZiBsb2Nh
bGUgc3RyaW5ncy4gc3RyY21wKCkgaXMgdGhlIHdyb25nIHdheSB0byBjb21wYXJlIGxvY2FsZSBz
dHJpbmdzLgorCisgICAgICAgIFRoZSBIVE1MIHNwZWMgaGFzIGEgbGlzdCBvZiBsb2NhbGVzIGFu
ZCB0aGVpciBhc3NvY2lhdGVkIHF1b3Rlc1sxXS4KKyAgICAgICAgSXQgaXMgZm9ybXVsYXRlZCBp
biB0ZXJtcyBvZiBDU1MgdXNpbmcgdGhlICJsYW5nKCkiIHBzZXVkb2NsYXNzLgorICAgICAgICBU
aGUgc3BlYyBvZiB0aGUgbGFuZygpIHBzZXVkb2NsYXNzWzJdIGRlc2NyaWJlcyB0aGF0IGxvY2Fs
ZSBjb21wYXJpc29uCisgICAgICAgIG5lZWRzIHRvIGJlIGRvbmUgYWNjb3JkaW5nIHRvIHNlY3Rp
b24gMy4zLjIgaW4gUkZDNDY0N1szXS4KKworICAgICAgICBUaGlzIGFsZ29yaXRobSBpcyBhIHBy
ZXR0eSBnZW5lcmFsIGFsZ29yaXRobSwgYW5kIGltcGxlbWVudGluZyBpdCBuYWl2ZWx5CisgICAg
ICAgIHdvdWxkIG1lYW4gdHVybmluZyBvdXIgTyhsb2cobikpIGFsZ29yaXRobSBpbnRvIGEgTyhu
KSBhbGdvcml0aG0sIHdoaWNoCisgICAgICAgIHdvdWxkIGJlIHVuZm9ydHVuYXRlLiBJbnN0ZWFk
LCB3ZSBjYW4gdXNlIGEgZmV3IG9ic2VydmF0aW9ucyBhYm91dCB0aGUKKyAgICAgICAgc2V0IG9m
IGxvY2FsZSBzdHJpbmdzIHdlIGFyZSBjb21wYXJpbmcgYWdhaW5zdCwgaW4gb3JkZXIgdG8gcHJl
c2VydmUgdGhlCisgICAgICAgIE8obG9nKG4pKSBydW50aW1lOgorICAgICAgICAtIEFsbCB0aGUg
bG9jYWxlcyBoYXZlIGVpdGhlciAxIG9yIDIgc3VidGFncworICAgICAgICAtIE5vbmUgb2YgdGhl
IHN1YnRhZ3MgaW4gYW55IG9mIHRoZSByYW5nZXMgYXJlIHdpbGRjYXJkcworICAgICAgICAtIFRo
ZSBsaXN0IGlzIHNvcnRlZCwgc28gYSBsb2NhbGUgc3RyaW5nIHRoYXQgaXMgYSBwcmVmaXggb2Yg
YW5vdGhlciBvbmUKKyAgICAgICAgICAgICAgaXMgbGlzdGVkIGJlZm9yZSBpdC4KKworICAgICAg
ICBbMV0gaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvcmVuZGVyaW5nLmh0
bWwjcXVvdGVzCisgICAgICAgIFsyXSBodHRwczovL2RyYWZ0cy5jc3N3Zy5vcmcvc2VsZWN0b3Jz
LTQvI3RoZS1sYW5nLXBzZXVkbworICAgICAgICBbM10gaHR0cHM6Ly90b29scy5pZXRmLm9yZy9o
dG1sL3JmYzQ2NDcjcGFnZS0xMAorCisgICAgICAgIFRlc3Q6IGZhc3QvY3NzLWdlbmVyYXRlZC1j
b250ZW50L3F1b3Rlcy1sYW5nLTIuaHRtbAorCisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ov
eGNzaGFyZWRkYXRhL3hjc2NoZW1lcy9XZWJDb3JlLnhjc2NoZW1lOgorICAgICAgICAqIHJlbmRl
cmluZy9SZW5kZXJRdW90ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpzdWJ0YWdDb21wYXJlKToK
KyAgICAgICAgKFdlYkNvcmU6OnF1b3RlVGFibGVMYW5ndWFnZUNvbXBhcmlzb25GdW5jdGlvbik6
CisgICAgICAgIChXZWJDb3JlOjpxdW90ZXNGb3JMYW5ndWFnZSk6CisgICAgICAgIChXZWJDb3Jl
OjpSZW5kZXJRdW90ZTo6Y29tcHV0ZVRleHQgY29uc3QpOgorCiAyMDIwLTA2LTMwICBBbmRyZXMg
R29uemFsZXogIDxhbmRyZXNnXzIyQGFwcGxlLmNvbT4KIAogICAgICAgICBDb2RlIGNsZWFudXAg
aW4gQWNjZXNzaWJpbGl0eU1lbnVMaXN0LmNwcCBhbmQgQVhJc29sYXRlZFRyZWUuaC4KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJRdW90ZS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyUXVvdGUuY3BwCmluZGV4IGJiY2I1YmVlYTkyM2E4MDk5
Y2ZjMWU1NGJlMWRlYzkyMzM0ZGE0OWQuLjBjN2Q0M2FhOTg0MTJlNzhhMTkxZmE1MTQzYWQxMDg1
MTkzNzFjOGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJRdW90
ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclF1b3RlLmNwcApAQCAt
ODksOCArODksNTUgQEAgc3RhdGljIHZvaWQgY2hlY2tOdW1iZXJPZkRpc3RpbmN0UXVvdGVDaGFy
YWN0ZXJzKFVDaGFyIGNoYXJhY3RlcikKIAogI2VuZGlmIC8vIEFTU0VSVF9FTkFCTEVECiAKK3N0
cnVjdCBTdWJ0YWdDb21wYXJpc29uIHsKKyAgICBzaXplX3Qga2V5TGVuZ3RoOworICAgIHNpemVf
dCBrZXlDb250aW51ZTsKKyAgICBzaXplX3QgcmFuZ2VMZW5ndGg7CisgICAgc2l6ZV90IHJhbmdl
Q29udGludWU7CisgICAgaW50IGNvbXBhcmlzb247Cit9OworCitzdGF0aWMgU3VidGFnQ29tcGFy
aXNvbiBzdWJ0YWdDb21wYXJlKGNvbnN0IGNoYXIqIGtleSwgY29uc3QgY2hhciogcmFuZ2UpCit7
CisgICAgU3VidGFnQ29tcGFyaXNvbiByZXN1bHQ7CisKKyAgICByZXN1bHQua2V5TGVuZ3RoID0g
c3RybGVuKGtleSk7CisgICAgcmVzdWx0LmtleUNvbnRpbnVlID0gcmVzdWx0LmtleUxlbmd0aDsK
KyAgICBpZiAoYXV0byogaHlwaGVuUG9pbnRlciA9IHN0cmNocihrZXksICctJykpIHsKKyAgICAg
ICAgcmVzdWx0LmtleUxlbmd0aCA9IGh5cGhlblBvaW50ZXIgLSBrZXk7CisgICAgICAgIHJlc3Vs
dC5rZXlDb250aW51ZSA9IHJlc3VsdC5rZXlMZW5ndGggKyAxOworICAgIH0KKworICAgIHJlc3Vs
dC5yYW5nZUxlbmd0aCA9IHN0cmxlbihyYW5nZSk7CisgICAgcmVzdWx0LnJhbmdlQ29udGludWUg
PSByZXN1bHQucmFuZ2VMZW5ndGg7CisgICAgaWYgKGF1dG8qIGh5cGhlblBvaW50ZXIgPSBzdHJj
aHIocmFuZ2UsICctJykpIHsKKyAgICAgICAgcmVzdWx0LnJhbmdlTGVuZ3RoID0gaHlwaGVuUG9p
bnRlciAtIHJhbmdlOworICAgICAgICByZXN1bHQucmFuZ2VDb250aW51ZSA9IHJlc3VsdC5yYW5n
ZUxlbmd0aCArIDE7CisgICAgfQorCisgICAgaWYgKHJlc3VsdC5rZXlMZW5ndGggPT0gcmVzdWx0
LnJhbmdlTGVuZ3RoKQorICAgICAgICByZXN1bHQuY29tcGFyaXNvbiA9IHN0cm5jbXAoa2V5LCBy
YW5nZSwgcmVzdWx0LmtleUxlbmd0aCk7CisgICAgZWxzZQorICAgICAgICByZXN1bHQuY29tcGFy
aXNvbiA9IHN0cmNtcChrZXksIHJhbmdlKTsKKworICAgIHJldHVybiByZXN1bHQ7Cit9CisKKy8v
IFRoZXNlIHN0cmluZ3MgbmVlZCB0byBiZSBjb21wYXJlZCBhY2NvcmRpbmcgdG8gIkV4dGVuZGVk
IEZpbHRlcmluZyIsIGFzIGluIFNlY3Rpb24gMy4zLjIgaW4gUkZDNDY0Ny4KKy8vIGh0dHBzOi8v
dG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmM0NjQ3I3BhZ2UtMTAKKy8vCisvLyBUaGUgImNoZWNrRnVy
dGhlciIgZmllbGQgaXMgbmVlZGVkIGluIG9uZSBzcGVjaWZpYyBzaXR1YXRpb24uCisvLyBJbiB0
aGUgcXVvdGVUYWJsZSBiZWxvdywgdGhlcmUgYXJlIGxpbmVzIGxpa2U6CisvLyB7ICJkZSIgICAs
IDB4MjAxZSwgMHgyMDFjLCAweDIwMWEsIDB4MjAxOCB9LAorLy8geyAiZGUtY2giLCAweDAwYWIs
IDB4MDBiYiwgMHgyMDM5LCAweDIwM2EgfSwKKy8vIExldCdzIHNheSB0aGUgYmluYXJ5IHNlYXJj
aCBhcmJpdHJhcmlseSBkZWNpZGVkIHRvIHRlc3Qgb3VyIGtleSBhZ2FpbnN0IHRoZSB1cHBlciBs
aW5lICJkZSIgZmlyc3QuCisvLyBJZiB0aGUga2V5IHdlJ3JlIHRlc3RpbmcgYWdhaW5zdCBpcyAi
ZGUtY2giLCB0aGVuIHdlIHNob3VsZCByZXBvcnQgImdyZWF0ZXIgdGhhbiIsCisvLyBzbyB0aGUg
YmluYXJ5IHNlYXJjaCB3aWxsIGtlZXAgc2VhcmNoaW5nIGFuZCBldmVudHVhbGx5IGZpbmQgdGhl
ICJkZS1jaCIgbGluZS4KKy8vIEhvd2V2ZXIsIGlmIHRoZSBrZXkgd2UncmUgdGVzdGluZyBhZ2Fp
bnN0IGlzICJkZS1kZSIsIHRoZW4gd2Ugc2hvdWxkIHJlcG9ydCAiZXF1YWwgdG8iLAorLy8gYmVj
YXVzZSB0aGVzZSBhcmUgdGhlIHF1b3RlcyB3ZSBzaG91bGQgdXNlIGZvciBhbGwgImRlIiBleGNl
cHQgZm9yICJkZS1jaCIuCiBzdHJ1Y3QgUXVvdGVzRm9yTGFuZ3VhZ2UgewogICAgIGNvbnN0IGNo
YXIqIGxhbmd1YWdlOworICAgIFVDaGFyIGNoZWNrRnVydGhlcjsKICAgICBVQ2hhciBvcGVuMTsK
ICAgICBVQ2hhciBjbG9zZTE7CiAgICAgVUNoYXIgb3BlbjI7CkBAIC05OSwxNjYgKzE0NiwyMTgg
QEAgc3RydWN0IFF1b3Rlc0Zvckxhbmd1YWdlIHsKIAogc3RhdGljIGludCBxdW90ZVRhYmxlTGFu
Z3VhZ2VDb21wYXJpc29uRnVuY3Rpb24oY29uc3Qgdm9pZCogYSwgY29uc3Qgdm9pZCogYikKIHsK
LSAgICByZXR1cm4gc3RyY21wKHN0YXRpY19jYXN0PGNvbnN0IFF1b3Rlc0Zvckxhbmd1YWdlKj4o
YSktPmxhbmd1YWdlLAotICAgICAgICBzdGF0aWNfY2FzdDxjb25zdCBRdW90ZXNGb3JMYW5ndWFn
ZSo+KGIpLT5sYW5ndWFnZSk7CisgICAgLy8gVGhlc2Ugc3RyaW5ncyBuZWVkIHRvIGJlIGNvbXBh
cmVkIGFjY29yZGluZyB0byAiRXh0ZW5kZWQgRmlsdGVyaW5nIiwgYXMgaW4gU2VjdGlvbiAzLjMu
MiBpbiBSRkM0NjQ3LgorICAgIC8vIGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmM0NjQ3
I3BhZ2UtMTAKKyAgICAvLworICAgIC8vIFdlIGNhbiBleHBsb2l0IGEgZmV3IHRoaW5ncyBoZXJl
IHRvIGltcHJvdmUgcGVyZjoKKyAgICAvLyAxLiBUaGUgZmlyc3Qgc3VidGFnIG11c3QgYmUgbWF0
Y2hlZCBleGFjdGx5CisgICAgLy8gMi4gQWxsIHRoZSByYW5nZXMgaGF2ZSBlaXRoZXIgMSBvciAy
IHN1YnRhZ3MKKyAgICAvLyAzLiBOb25lIG9mIHRoZSBzdWJ0YWdzIGluIGFueSBvZiB0aGUgcmFu
Z2VzIGFyZSB3aWxkY2FyZHMKKyAgICAvLworICAgIC8vIEFsc28sIHNlZSB0aGUgY29tbWVudCBq
dXN0IGFib3ZlIHRoZSBRdW90ZXNGb3JMYW5ndWFnZSBzdHJ1Y3QuCisKKyAgICBhdXRvKiBrZXkg
PSBzdGF0aWNfY2FzdDxjb25zdCBRdW90ZXNGb3JMYW5ndWFnZSo+KGEpOworICAgIGF1dG8qIHJh
bmdlID0gc3RhdGljX2Nhc3Q8Y29uc3QgUXVvdGVzRm9yTGFuZ3VhZ2UqPihiKTsKKworICAgIFN1
YnRhZ0NvbXBhcmlzb24gZmlyc3RTdWJ0YWdDb21wYXJpc29uID0gc3VidGFnQ29tcGFyZShrZXkt
Pmxhbmd1YWdlLCByYW5nZS0+bGFuZ3VhZ2UpOworCisgICAgaWYgKGZpcnN0U3VidGFnQ29tcGFy
aXNvbi5rZXlMZW5ndGggIT0gZmlyc3RTdWJ0YWdDb21wYXJpc29uLnJhbmdlTGVuZ3RoKQorICAg
ICAgICByZXR1cm4gZmlyc3RTdWJ0YWdDb21wYXJpc29uLmNvbXBhcmlzb247CisKKyAgICBpZiAo
Zmlyc3RTdWJ0YWdDb21wYXJpc29uLmNvbXBhcmlzb24pCisgICAgICAgIHJldHVybiBmaXJzdFN1
YnRhZ0NvbXBhcmlzb24uY29tcGFyaXNvbjsKKworICAgIGZvciAoVUNoYXIgaSA9IDE7IGkgPD0g
cmFuZ2UtPmNoZWNrRnVydGhlcjsgKytpKSB7CisgICAgICAgIGlmICghcXVvdGVUYWJsZUxhbmd1
YWdlQ29tcGFyaXNvbkZ1bmN0aW9uKGtleSwgcmFuZ2UgKyBpKSkgeworICAgICAgICAgICAgLy8g
VGVsbCB0aGUgYmluYXJ5IHNlYXJjaCB0byBjaGVjayBsYXRlciBpbiB0aGUgYXJyYXkgb2YgcmFu
Z2VzLCB0byBldmVudHVhbGx5IGZpbmQgdGhlIG1hdGNoIHdlIGp1c3QgZm91bmQgaGVyZS4KKyAg
ICAgICAgICAgIHJldHVybiAxOworICAgICAgICB9CisgICAgfQorCisgICAgc2l6ZV90IGtleU9m
ZnNldCA9IGZpcnN0U3VidGFnQ29tcGFyaXNvbi5rZXlDb250aW51ZTsKKyAgICB3aGlsZSAodHJ1
ZSkgeworICAgICAgICBTdWJ0YWdDb21wYXJpc29uIG5leHRTdWJ0YWdDb21wYXJpc29uID0gc3Vi
dGFnQ29tcGFyZShrZXktPmxhbmd1YWdlICsga2V5T2Zmc2V0LCByYW5nZS0+bGFuZ3VhZ2UgKyBm
aXJzdFN1YnRhZ0NvbXBhcmlzb24ucmFuZ2VDb250aW51ZSk7CisKKyAgICAgICAgaWYgKCFuZXh0
U3VidGFnQ29tcGFyaXNvbi5yYW5nZUxlbmd0aCkgeworICAgICAgICAgICAgLy8gRS5nLiBUaGUg
a2V5IGlzICJ6aC1IYW5zIiBhbmQgdGhlIHJhbmdlIGlzICJ6aCIuCisgICAgICAgICAgICByZXR1
cm4gMDsKKyAgICAgICAgfQorCisgICAgICAgIGlmICghbmV4dFN1YnRhZ0NvbXBhcmlzb24ua2V5
TGVuZ3RoKSB7CisgICAgICAgICAgICAvLyBFLmcuIHRoZSBrZXkgaXMgInpoIiBhbmQgdGhlIHJh
bmdlIGlzICJ6aC1IYW50Ii4KKyAgICAgICAgICAgIHJldHVybiBuZXh0U3VidGFnQ29tcGFyaXNv
bi5jb21wYXJpc29uOworICAgICAgICB9CisKKyAgICAgICAgaWYgKG5leHRTdWJ0YWdDb21wYXJp
c29uLmtleUxlbmd0aCA9PSAxKSB7CisgICAgICAgICAgICAvLyBFLmcuIHRoZSBrZXkgaXMgInpo
LXgtSGFudCIgYW5kIHRoZSByYW5nZSBpcyAiemgtSGFudCIuCisgICAgICAgICAgICAvLyBXZSB3
YW50IHRvIHRyeSB0byBmaW5kIHRoZSByYW5nZSAiemgiLCBzbyB0ZWxsIHRoZSBiaW5hcnkgc2Vh
cmNoIHRvIGNoZWNrIGVhcmxpZXIgaW4gdGhlIGFycmF5IG9mIHJhbmdlcy4KKyAgICAgICAgICAg
IHJldHVybiAtMTsKKyAgICAgICAgfQorCisgICAgICAgIGlmIChuZXh0U3VidGFnQ29tcGFyaXNv
bi5rZXlMZW5ndGggPT0gbmV4dFN1YnRhZ0NvbXBhcmlzb24ucmFuZ2VMZW5ndGggJiYgIW5leHRT
dWJ0YWdDb21wYXJpc29uLmNvbXBhcmlzb24pIHsKKyAgICAgICAgICAgIC8vIEUuZy4gdGhlIGtl
eSBpcyAiZGUtTGF0bi1jaCIgYW5kIHRoZSByYW5nZSBpcyAiZGUtY2giLgorICAgICAgICAgICAg
cmV0dXJuIDA7CisgICAgICAgIH0KKworICAgICAgICBrZXlPZmZzZXQgKz0gbmV4dFN1YnRhZ0Nv
bXBhcmlzb24ua2V5Q29udGludWU7CisgICAgfQogfQogCiBzdGF0aWMgY29uc3QgUXVvdGVzRm9y
TGFuZ3VhZ2UqIHF1b3Rlc0Zvckxhbmd1YWdlKGNvbnN0IFN0cmluZyYgbGFuZ3VhZ2UpCiB7CiAg
ICAgLy8gVGFibGUgb2YgcXVvdGVzIGZyb20gaHR0cDovL3d3dy53aGF0d2cub3JnL3NwZWNzL3dl
Yi1hcHBzL2N1cnJlbnQtd29yay9tdWx0aXBhZ2UvcmVuZGVyaW5nLmh0bWwjcXVvdGVzCisgICAg
Ly8gRklYTUU6IFRoaXMgdGFibGUgaXMgb3V0LW9mLWRhdGUuCiAgICAgc3RhdGljIGNvbnN0IFF1
b3Rlc0Zvckxhbmd1YWdlIHF1b3RlVGFibGVbXSA9IHsKLSAgICAgICAgeyAiYWYiLCAgICAgICAg
IDB4MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9LAotICAgICAgICB7ICJhZ3EiLCAgICAg
ICAgMHgyMDFlLCAweDIwMWQsIDB4MjAxYSwgMHgyMDE5IH0sCi0gICAgICAgIHsgImFrIiwgICAg
ICAgICAweDIwMWMsIDB4MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwKLSAgICAgICAgeyAiYW0iLCAg
ICAgICAgIDB4MDBhYiwgMHgwMGJiLCAweDIwMzksIDB4MjAzYSB9LAotICAgICAgICB7ICJhciIs
ICAgICAgICAgMHgyMDFkLCAweDIwMWMsIDB4MjAxOSwgMHgyMDE4IH0sCi0gICAgICAgIHsgImFz
YSIsICAgICAgICAweDIwMWMsIDB4MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwKLSAgICAgICAgeyAi
YXotY3lybCIsICAgIDB4MDBhYiwgMHgwMGJiLCAweDIwMzksIDB4MjAzYSB9LAotICAgICAgICB7
ICJiYXMiLCAgICAgICAgMHgwMGFiLCAweDAwYmIsIDB4MjAxZSwgMHgyMDFjIH0sCi0gICAgICAg
IHsgImJlbSIsICAgICAgICAweDIwMWMsIDB4MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwKLSAgICAg
ICAgeyAiYmV6IiwgICAgICAgIDB4MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9LAotICAg
ICAgICB7ICJiZyIsICAgICAgICAgMHgyMDFlLCAweDIwMWMsIDB4MjAxYSwgMHgyMDE4IH0sCi0g
ICAgICAgIHsgImJtIiwgICAgICAgICAweDAwYWIsIDB4MDBiYiwgMHgyMDFjLCAweDIwMWQgfSwK
LSAgICAgICAgeyAiYm4iLCAgICAgICAgIDB4MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9
LAotICAgICAgICB7ICJiciIsICAgICAgICAgMHgwMGFiLCAweDAwYmIsIDB4MjAzOSwgMHgyMDNh
IH0sCi0gICAgICAgIHsgImJyeCIsICAgICAgICAweDIwMWMsIDB4MjAxZCwgMHgyMDE4LCAweDIw
MTkgfSwKLSAgICAgICAgeyAiYnMtY3lybCIsICAgIDB4MjAxZSwgMHgyMDFjLCAweDIwMWEsIDB4
MjAxOCB9LAotICAgICAgICB7ICJjYSIsICAgICAgICAgMHgyMDFjLCAweDIwMWQsIDB4MDBhYiwg
MHgwMGJiIH0sCi0gICAgICAgIHsgImNnZyIsICAgICAgICAweDIwMWMsIDB4MjAxZCwgMHgyMDE4
LCAweDIwMTkgfSwKLSAgICAgICAgeyAiY2hyIiwgICAgICAgIDB4MjAxYywgMHgyMDFkLCAweDIw
MTgsIDB4MjAxOSB9LAotICAgICAgICB7ICJjcyIsICAgICAgICAgMHgyMDFlLCAweDIwMWMsIDB4
MjAxYSwgMHgyMDE4IH0sCi0gICAgICAgIHsgImRhIiwgICAgICAgICAweDIwMWMsIDB4MjAxZCwg
MHgyMDE4LCAweDIwMTkgfSwKLSAgICAgICAgeyAiZGF2IiwgICAgICAgIDB4MjAxYywgMHgyMDFk
LCAweDIwMTgsIDB4MjAxOSB9LAotICAgICAgICB7ICJkZSIsICAgICAgICAgMHgyMDFlLCAweDIw
MWMsIDB4MjAxYSwgMHgyMDE4IH0sCi0gICAgICAgIHsgImRlLWNoIiwgICAgICAweDAwYWIsIDB4
MDBiYiwgMHgyMDM5LCAweDIwM2EgfSwKLSAgICAgICAgeyAiZGplIiwgICAgICAgIDB4MjAxYywg
MHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9LAotICAgICAgICB7ICJkdWEiLCAgICAgICAgMHgwMGFi
LCAweDAwYmIsIDB4MjAxOCwgMHgyMDE5IH0sCi0gICAgICAgIHsgImR5byIsICAgICAgICAweDAw
YWIsIDB4MDBiYiwgMHgyMDFjLCAweDIwMWQgfSwKLSAgICAgICAgeyAiZHoiLCAgICAgICAgIDB4
MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9LAotICAgICAgICB7ICJlYnUiLCAgICAgICAg
MHgyMDFjLCAweDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCi0gICAgICAgIHsgImVlIiwgICAgICAg
ICAweDIwMWMsIDB4MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwKLSAgICAgICAgeyAiZWwiLCAgICAg
ICAgIDB4MDBhYiwgMHgwMGJiLCAweDIwMWMsIDB4MjAxZCB9LAotICAgICAgICB7ICJlbiIsICAg
ICAgICAgMHgyMDFjLCAweDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCi0gICAgICAgIHsgImVuLWdi
IiwgICAgICAweDIwMWMsIDB4MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwKLSAgICAgICAgeyAiZXMi
LCAgICAgICAgIDB4MjAxYywgMHgyMDFkLCAweDAwYWIsIDB4MDBiYiB9LAotICAgICAgICB7ICJl
dCIsICAgICAgICAgMHgyMDFlLCAweDIwMWMsIDB4MjAxYSwgMHgyMDE4IH0sCi0gICAgICAgIHsg
ImV1IiwgICAgICAgICAweDIwMWMsIDB4MjAxZCwgMHgwMGFiLCAweDAwYmIgfSwKLSAgICAgICAg
eyAiZXdvIiwgICAgICAgIDB4MDBhYiwgMHgwMGJiLCAweDIwMWMsIDB4MjAxZCB9LAotICAgICAg
ICB7ICJmYSIsICAgICAgICAgMHgwMGFiLCAweDAwYmIsIDB4MjAzOSwgMHgyMDNhIH0sCi0gICAg
ICAgIHsgImZmIiwgICAgICAgICAweDIwMWUsIDB4MjAxZCwgMHgyMDFhLCAweDIwMTkgfSwKLSAg
ICAgICAgeyAiZmkiLCAgICAgICAgIDB4MjAxZCwgMHgyMDFkLCAweDIwMTksIDB4MjAxOSB9LAot
ICAgICAgICB7ICJmciIsICAgICAgICAgMHgwMGFiLCAweDAwYmIsIDB4MDBhYiwgMHgwMGJiIH0s
Ci0gICAgICAgIHsgImZyLWNhIiwgICAgICAweDAwYWIsIDB4MDBiYiwgMHgyMDM5LCAweDIwM2Eg
fSwKLSAgICAgICAgeyAiZnItY2giLCAgICAgIDB4MDBhYiwgMHgwMGJiLCAweDIwMzksIDB4MjAz
YSB9LAotICAgICAgICB7ICJnc3ciLCAgICAgICAgMHgwMGFiLCAweDAwYmIsIDB4MjAzOSwgMHgy
MDNhIH0sCi0gICAgICAgIHsgImd1IiwgICAgICAgICAweDIwMWMsIDB4MjAxZCwgMHgyMDE4LCAw
eDIwMTkgfSwKLSAgICAgICAgeyAiZ3V6IiwgICAgICAgIDB4MjAxYywgMHgyMDFkLCAweDIwMTgs
IDB4MjAxOSB9LAotICAgICAgICB7ICJoYSIsICAgICAgICAgMHgyMDFjLCAweDIwMWQsIDB4MjAx
OCwgMHgyMDE5IH0sCi0gICAgICAgIHsgImhlIiwgICAgICAgICAweDAwMjIsIDB4MDAyMiwgMHgw
MDI3LCAweDAwMjcgfSwKLSAgICAgICAgeyAiaGkiLCAgICAgICAgIDB4MjAxYywgMHgyMDFkLCAw
eDIwMTgsIDB4MjAxOSB9LAotICAgICAgICB7ICJociIsICAgICAgICAgMHgyMDFlLCAweDIwMWMs
IDB4MjAxYSwgMHgyMDE4IH0sCi0gICAgICAgIHsgImh1IiwgICAgICAgICAweDIwMWUsIDB4MjAx
ZCwgMHgwMGJiLCAweDAwYWIgfSwKLSAgICAgICAgeyAiaWQiLCAgICAgICAgIDB4MjAxYywgMHgy
MDFkLCAweDIwMTgsIDB4MjAxOSB9LAotICAgICAgICB7ICJpZyIsICAgICAgICAgMHgyMDFjLCAw
eDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCi0gICAgICAgIHsgIml0IiwgICAgICAgICAweDAwYWIs
IDB4MDBiYiwgMHgyMDFjLCAweDIwMWQgfSwKLSAgICAgICAgeyAiamEiLCAgICAgICAgIDB4MzAw
YywgMHgzMDBkLCAweDMwMGUsIDB4MzAwZiB9LAotICAgICAgICB7ICJqZ28iLCAgICAgICAgMHgw
MGFiLCAweDAwYmIsIDB4MjAzOSwgMHgyMDNhIH0sCi0gICAgICAgIHsgImptYyIsICAgICAgICAw
eDIwMWMsIDB4MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwKLSAgICAgICAgeyAia2FiIiwgICAgICAg
IDB4MDBhYiwgMHgwMGJiLCAweDIwMWMsIDB4MjAxZCB9LAotICAgICAgICB7ICJrYW0iLCAgICAg
ICAgMHgyMDFjLCAweDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCi0gICAgICAgIHsgImtkZSIsICAg
ICAgICAweDIwMWMsIDB4MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwKLSAgICAgICAgeyAia2VhIiwg
ICAgICAgIDB4MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9LAotICAgICAgICB7ICJraHEi
LCAgICAgICAgMHgyMDFjLCAweDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCi0gICAgICAgIHsgImtp
IiwgICAgICAgICAweDIwMWMsIDB4MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwKLSAgICAgICAgeyAi
a2tqIiwgICAgICAgIDB4MDBhYiwgMHgwMGJiLCAweDIwMzksIDB4MjAzYSB9LAotICAgICAgICB7
ICJrbG4iLCAgICAgICAgMHgyMDFjLCAweDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCi0gICAgICAg
IHsgImttIiwgICAgICAgICAweDIwMWMsIDB4MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwKLSAgICAg
ICAgeyAia24iLCAgICAgICAgIDB4MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9LAotICAg
ICAgICB7ICJrbyIsICAgICAgICAgMHgyMDFjLCAweDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCi0g
ICAgICAgIHsgImtzYiIsICAgICAgICAweDIwMWMsIDB4MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwK
LSAgICAgICAgeyAia3NmIiwgICAgICAgIDB4MDBhYiwgMHgwMGJiLCAweDIwMTgsIDB4MjAxOSB9
LAotICAgICAgICB7ICJsYWciLCAgICAgICAgMHgyMDFkLCAweDIwMWQsIDB4MjAxOSwgMHgyMDE5
IH0sCi0gICAgICAgIHsgImxnIiwgICAgICAgICAweDIwMWMsIDB4MjAxZCwgMHgyMDE4LCAweDIw
MTkgfSwKLSAgICAgICAgeyAibG4iLCAgICAgICAgIDB4MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4
MjAxOSB9LAotICAgICAgICB7ICJsbyIsICAgICAgICAgMHgyMDFjLCAweDIwMWQsIDB4MjAxOCwg
MHgyMDE5IH0sCi0gICAgICAgIHsgImx0IiwgICAgICAgICAweDIwMWUsIDB4MjAxYywgMHgyMDFl
LCAweDIwMWMgfSwKLSAgICAgICAgeyAibHUiLCAgICAgICAgIDB4MjAxYywgMHgyMDFkLCAweDIw
MTgsIDB4MjAxOSB9LAotICAgICAgICB7ICJsdW8iLCAgICAgICAgMHgyMDFjLCAweDIwMWQsIDB4
MjAxOCwgMHgyMDE5IH0sCi0gICAgICAgIHsgImx1eSIsICAgICAgICAweDIwMWUsIDB4MjAxYywg
MHgyMDFhLCAweDIwMTggfSwKLSAgICAgICAgeyAibHYiLCAgICAgICAgIDB4MjAxYywgMHgyMDFk
LCAweDIwMTgsIDB4MjAxOSB9LAotICAgICAgICB7ICJtYXMiLCAgICAgICAgMHgyMDFjLCAweDIw
MWQsIDB4MjAxOCwgMHgyMDE5IH0sCi0gICAgICAgIHsgIm1lciIsICAgICAgICAweDIwMWMsIDB4
MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwKLSAgICAgICAgeyAibWZlIiwgICAgICAgIDB4MjAxYywg
MHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9LAotICAgICAgICB7ICJtZyIsICAgICAgICAgMHgwMGFi
LCAweDAwYmIsIDB4MjAxYywgMHgyMDFkIH0sCi0gICAgICAgIHsgIm1nbyIsICAgICAgICAweDIw
MWMsIDB4MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwKLSAgICAgICAgeyAibWsiLCAgICAgICAgIDB4
MjAxZSwgMHgyMDFjLCAweDIwMWEsIDB4MjAxOCB9LAotICAgICAgICB7ICJtbCIsICAgICAgICAg
MHgyMDFjLCAweDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCi0gICAgICAgIHsgIm1yIiwgICAgICAg
ICAweDIwMWMsIDB4MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwKLSAgICAgICAgeyAibXMiLCAgICAg
ICAgIDB4MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9LAotICAgICAgICB7ICJtdWEiLCAg
ICAgICAgMHgwMGFiLCAweDAwYmIsIDB4MjAxYywgMHgyMDFkIH0sCi0gICAgICAgIHsgIm15Iiwg
ICAgICAgICAweDIwMWMsIDB4MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwKLSAgICAgICAgeyAibmFx
IiwgICAgICAgIDB4MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9LAotICAgICAgICB7ICJu
YiIsICAgICAgICAgMHgwMGFiLCAweDAwYmIsIDB4MjAxOCwgMHgyMDE5IH0sCi0gICAgICAgIHsg
Im5kIiwgICAgICAgICAweDIwMWMsIDB4MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwKLSAgICAgICAg
eyAibmwiLCAgICAgICAgIDB4MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9LAotICAgICAg
ICB7ICJubWciLCAgICAgICAgMHgyMDFlLCAweDIwMWQsIDB4MDBhYiwgMHgwMGJiIH0sCi0gICAg
ICAgIHsgIm5uIiwgICAgICAgICAweDAwYWIsIDB4MDBiYiwgMHgyMDE4LCAweDIwMTkgfSwKLSAg
ICAgICAgeyAibm5oIiwgICAgICAgIDB4MDBhYiwgMHgwMGJiLCAweDIwMWMsIDB4MjAxZCB9LAot
ICAgICAgICB7ICJudXMiLCAgICAgICAgMHgyMDFjLCAweDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0s
Ci0gICAgICAgIHsgIm55biIsICAgICAgICAweDIwMWMsIDB4MjAxZCwgMHgyMDE4LCAweDIwMTkg
fSwKLSAgICAgICAgeyAicGwiLCAgICAgICAgIDB4MjAxZSwgMHgyMDFkLCAweDAwYWIsIDB4MDBi
YiB9LAotICAgICAgICB7ICJwdCIsICAgICAgICAgMHgyMDFjLCAweDIwMWQsIDB4MjAxOCwgMHgy
MDE5IH0sCi0gICAgICAgIHsgInB0LXB0IiwgICAgICAweDAwYWIsIDB4MDBiYiwgMHgyMDFjLCAw
eDIwMWQgfSwKLSAgICAgICAgeyAicm4iLCAgICAgICAgIDB4MjAxZCwgMHgyMDFkLCAweDIwMTks
IDB4MjAxOSB9LAotICAgICAgICB7ICJybyIsICAgICAgICAgMHgyMDFlLCAweDIwMWQsIDB4MDBh
YiwgMHgwMGJiIH0sCi0gICAgICAgIHsgInJvZiIsICAgICAgICAweDIwMWMsIDB4MjAxZCwgMHgy
MDE4LCAweDIwMTkgfSwKLSAgICAgICAgeyAicnUiLCAgICAgICAgIDB4MDBhYiwgMHgwMGJiLCAw
eDIwMWUsIDB4MjAxYyB9LAotICAgICAgICB7ICJydyIsICAgICAgICAgMHgwMGFiLCAweDAwYmIs
IDB4MjAxOCwgMHgyMDE5IH0sCi0gICAgICAgIHsgInJ3ayIsICAgICAgICAweDIwMWMsIDB4MjAx
ZCwgMHgyMDE4LCAweDIwMTkgfSwKLSAgICAgICAgeyAic2FxIiwgICAgICAgIDB4MjAxYywgMHgy
MDFkLCAweDIwMTgsIDB4MjAxOSB9LAotICAgICAgICB7ICJzYnAiLCAgICAgICAgMHgyMDFjLCAw
eDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCi0gICAgICAgIHsgInNlaCIsICAgICAgICAweDIwMWMs
IDB4MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwKLSAgICAgICAgeyAic2VzIiwgICAgICAgIDB4MjAx
YywgMHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9LAotICAgICAgICB7ICJzZyIsICAgICAgICAgMHgw
MGFiLCAweDAwYmIsIDB4MjAxYywgMHgyMDFkIH0sCi0gICAgICAgIHsgInNoaSIsICAgICAgICAw
eDAwYWIsIDB4MDBiYiwgMHgyMDFlLCAweDIwMWQgfSwKLSAgICAgICAgeyAic2hpLXRmbmciLCAg
IDB4MDBhYiwgMHgwMGJiLCAweDIwMWUsIDB4MjAxZCB9LAotICAgICAgICB7ICJzaSIsICAgICAg
ICAgMHgyMDFjLCAweDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCi0gICAgICAgIHsgInNrIiwgICAg
ICAgICAweDIwMWUsIDB4MjAxYywgMHgyMDFhLCAweDIwMTggfSwKLSAgICAgICAgeyAic2wiLCAg
ICAgICAgIDB4MjAxZSwgMHgyMDFjLCAweDIwMWEsIDB4MjAxOCB9LAotICAgICAgICB7ICJzbiIs
ICAgICAgICAgMHgyMDFkLCAweDIwMWQsIDB4MjAxOSwgMHgyMDE5IH0sCi0gICAgICAgIHsgInNv
IiwgICAgICAgICAweDIwMWMsIDB4MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwKLSAgICAgICAgeyAi
c3EiLCAgICAgICAgIDB4MjAxZSwgMHgyMDFjLCAweDIwMWEsIDB4MjAxOCB9LAotICAgICAgICB7
ICJzciIsICAgICAgICAgMHgyMDFlLCAweDIwMWMsIDB4MjAxYSwgMHgyMDE4IH0sCi0gICAgICAg
IHsgInNyLWxhdG4iLCAgICAweDIwMWUsIDB4MjAxYywgMHgyMDFhLCAweDIwMTggfSwKLSAgICAg
ICAgeyAic3YiLCAgICAgICAgIDB4MjAxZCwgMHgyMDFkLCAweDIwMTksIDB4MjAxOSB9LAotICAg
ICAgICB7ICJzdyIsICAgICAgICAgMHgyMDFjLCAweDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCi0g
ICAgICAgIHsgInN3YyIsICAgICAgICAweDIwMWMsIDB4MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwK
LSAgICAgICAgeyAidGEiLCAgICAgICAgIDB4MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9
LAotICAgICAgICB7ICJ0ZSIsICAgICAgICAgMHgyMDFjLCAweDIwMWQsIDB4MjAxOCwgMHgyMDE5
IH0sCi0gICAgICAgIHsgInRlbyIsICAgICAgICAweDIwMWMsIDB4MjAxZCwgMHgyMDE4LCAweDIw
MTkgfSwKLSAgICAgICAgeyAidGgiLCAgICAgICAgIDB4MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4
MjAxOSB9LAotICAgICAgICB7ICJ0aS1lciIsICAgICAgMHgyMDE4LCAweDIwMTksIDB4MjAxYywg
MHgyMDFkIH0sCi0gICAgICAgIHsgInRvIiwgICAgICAgICAweDIwMWMsIDB4MjAxZCwgMHgyMDE4
LCAweDIwMTkgfSwKLSAgICAgICAgeyAidHIiLCAgICAgICAgIDB4MjAxYywgMHgyMDFkLCAweDIw
MTgsIDB4MjAxOSB9LAotICAgICAgICB7ICJ0d3EiLCAgICAgICAgMHgyMDFjLCAweDIwMWQsIDB4
MjAxOCwgMHgyMDE5IH0sCi0gICAgICAgIHsgInR6bSIsICAgICAgICAweDIwMWMsIDB4MjAxZCwg
MHgyMDE4LCAweDIwMTkgfSwKLSAgICAgICAgeyAidWsiLCAgICAgICAgIDB4MDBhYiwgMHgwMGJi
LCAweDIwMWUsIDB4MjAxYyB9LAotICAgICAgICB7ICJ1ciIsICAgICAgICAgMHgyMDFkLCAweDIw
MWMsIDB4MjAxOSwgMHgyMDE4IH0sCi0gICAgICAgIHsgInZhaSIsICAgICAgICAweDIwMWMsIDB4
MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwKLSAgICAgICAgeyAidmFpLWxhdG4iLCAgIDB4MjAxYywg
MHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9LAotICAgICAgICB7ICJ2aSIsICAgICAgICAgMHgyMDFj
LCAweDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCi0gICAgICAgIHsgInZ1biIsICAgICAgICAweDIw
MWMsIDB4MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwKLSAgICAgICAgeyAieGgiLCAgICAgICAgIDB4
MjAxOCwgMHgyMDE5LCAweDIwMWMsIDB4MjAxZCB9LAotICAgICAgICB7ICJ4b2ciLCAgICAgICAg
MHgyMDFjLCAweDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCi0gICAgICAgIHsgInlhdiIsICAgICAg
ICAweDAwYWIsIDB4MDBiYiwgMHgwMGFiLCAweDAwYmIgfSwKLSAgICAgICAgeyAieW8iLCAgICAg
ICAgIDB4MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9LAotICAgICAgICB7ICJ6aCIsICAg
ICAgICAgMHgyMDFjLCAweDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCi0gICAgICAgIHsgInpoLWhh
bnQiLCAgICAweDMwMGMsIDB4MzAwZCwgMHgzMDBlLCAweDMwMGYgfSwKLSAgICAgICAgeyAienUi
LCAgICAgICAgIDB4MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9LAorICAgICAgICB7ICJh
ZiIsICAgICAgICAgMCwgMHgyMDFjLCAweDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCisgICAgICAg
IHsgImFncSIsICAgICAgICAwLCAweDIwMWUsIDB4MjAxZCwgMHgyMDFhLCAweDIwMTkgfSwKKyAg
ICAgICAgeyAiYWsiLCAgICAgICAgIDAsIDB4MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9
LAorICAgICAgICB7ICJhbSIsICAgICAgICAgMCwgMHgwMGFiLCAweDAwYmIsIDB4MjAzOSwgMHgy
MDNhIH0sCisgICAgICAgIHsgImFyIiwgICAgICAgICAwLCAweDIwMWQsIDB4MjAxYywgMHgyMDE5
LCAweDIwMTggfSwKKyAgICAgICAgeyAiYXNhIiwgICAgICAgIDAsIDB4MjAxYywgMHgyMDFkLCAw
eDIwMTgsIDB4MjAxOSB9LAorICAgICAgICB7ICJhei1jeXJsIiwgICAgMCwgMHgwMGFiLCAweDAw
YmIsIDB4MjAzOSwgMHgyMDNhIH0sCisgICAgICAgIHsgImJhcyIsICAgICAgICAwLCAweDAwYWIs
IDB4MDBiYiwgMHgyMDFlLCAweDIwMWMgfSwKKyAgICAgICAgeyAiYmVtIiwgICAgICAgIDAsIDB4
MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9LAorICAgICAgICB7ICJiZXoiLCAgICAgICAg
MCwgMHgyMDFjLCAweDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCisgICAgICAgIHsgImJnIiwgICAg
ICAgICAwLCAweDIwMWUsIDB4MjAxYywgMHgyMDFhLCAweDIwMTggfSwKKyAgICAgICAgeyAiYm0i
LCAgICAgICAgIDAsIDB4MDBhYiwgMHgwMGJiLCAweDIwMWMsIDB4MjAxZCB9LAorICAgICAgICB7
ICJibiIsICAgICAgICAgMCwgMHgyMDFjLCAweDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCisgICAg
ICAgIHsgImJyIiwgICAgICAgICAwLCAweDAwYWIsIDB4MDBiYiwgMHgyMDM5LCAweDIwM2EgfSwK
KyAgICAgICAgeyAiYnJ4IiwgICAgICAgIDAsIDB4MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4MjAx
OSB9LAorICAgICAgICB7ICJicy1jeXJsIiwgICAgMCwgMHgyMDFlLCAweDIwMWMsIDB4MjAxYSwg
MHgyMDE4IH0sCisgICAgICAgIHsgImNhIiwgICAgICAgICAwLCAweDIwMWMsIDB4MjAxZCwgMHgw
MGFiLCAweDAwYmIgfSwKKyAgICAgICAgeyAiY2dnIiwgICAgICAgIDAsIDB4MjAxYywgMHgyMDFk
LCAweDIwMTgsIDB4MjAxOSB9LAorICAgICAgICB7ICJjaHIiLCAgICAgICAgMCwgMHgyMDFjLCAw
eDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCisgICAgICAgIHsgImNzIiwgICAgICAgICAwLCAweDIw
MWUsIDB4MjAxYywgMHgyMDFhLCAweDIwMTggfSwKKyAgICAgICAgeyAiZGEiLCAgICAgICAgIDAs
IDB4MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9LAorICAgICAgICB7ICJkYXYiLCAgICAg
ICAgMCwgMHgyMDFjLCAweDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCisgICAgICAgIHsgImRlIiwg
ICAgICAgICAxLCAweDIwMWUsIDB4MjAxYywgMHgyMDFhLCAweDIwMTggfSwKKyAgICAgICAgeyAi
ZGUtY2giLCAgICAgIDAsIDB4MDBhYiwgMHgwMGJiLCAweDIwMzksIDB4MjAzYSB9LAorICAgICAg
ICB7ICJkamUiLCAgICAgICAgMCwgMHgyMDFjLCAweDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCisg
ICAgICAgIHsgImR1YSIsICAgICAgICAwLCAweDAwYWIsIDB4MDBiYiwgMHgyMDE4LCAweDIwMTkg
fSwKKyAgICAgICAgeyAiZHlvIiwgICAgICAgIDAsIDB4MDBhYiwgMHgwMGJiLCAweDIwMWMsIDB4
MjAxZCB9LAorICAgICAgICB7ICJkeiIsICAgICAgICAgMCwgMHgyMDFjLCAweDIwMWQsIDB4MjAx
OCwgMHgyMDE5IH0sCisgICAgICAgIHsgImVidSIsICAgICAgICAwLCAweDIwMWMsIDB4MjAxZCwg
MHgyMDE4LCAweDIwMTkgfSwKKyAgICAgICAgeyAiZWUiLCAgICAgICAgIDAsIDB4MjAxYywgMHgy
MDFkLCAweDIwMTgsIDB4MjAxOSB9LAorICAgICAgICB7ICJlbCIsICAgICAgICAgMCwgMHgwMGFi
LCAweDAwYmIsIDB4MjAxYywgMHgyMDFkIH0sCisgICAgICAgIHsgImVuIiwgICAgICAgICAxLCAw
eDIwMWMsIDB4MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwKKyAgICAgICAgeyAiZW4tZ2IiLCAgICAg
IDAsIDB4MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9LAorICAgICAgICB7ICJlcyIsICAg
ICAgICAgMCwgMHgyMDFjLCAweDIwMWQsIDB4MDBhYiwgMHgwMGJiIH0sCisgICAgICAgIHsgImV0
IiwgICAgICAgICAwLCAweDIwMWUsIDB4MjAxYywgMHgyMDFhLCAweDIwMTggfSwKKyAgICAgICAg
eyAiZXUiLCAgICAgICAgIDAsIDB4MjAxYywgMHgyMDFkLCAweDAwYWIsIDB4MDBiYiB9LAorICAg
ICAgICB7ICJld28iLCAgICAgICAgMCwgMHgwMGFiLCAweDAwYmIsIDB4MjAxYywgMHgyMDFkIH0s
CisgICAgICAgIHsgImZhIiwgICAgICAgICAwLCAweDAwYWIsIDB4MDBiYiwgMHgyMDM5LCAweDIw
M2EgfSwKKyAgICAgICAgeyAiZmYiLCAgICAgICAgIDAsIDB4MjAxZSwgMHgyMDFkLCAweDIwMWEs
IDB4MjAxOSB9LAorICAgICAgICB7ICJmaSIsICAgICAgICAgMCwgMHgyMDFkLCAweDIwMWQsIDB4
MjAxOSwgMHgyMDE5IH0sCisgICAgICAgIHsgImZyIiwgICAgICAgICAyLCAweDAwYWIsIDB4MDBi
YiwgMHgwMGFiLCAweDAwYmIgfSwKKyAgICAgICAgeyAiZnItY2EiLCAgICAgIDAsIDB4MDBhYiwg
MHgwMGJiLCAweDIwMzksIDB4MjAzYSB9LAorICAgICAgICB7ICJmci1jaCIsICAgICAgMCwgMHgw
MGFiLCAweDAwYmIsIDB4MjAzOSwgMHgyMDNhIH0sCisgICAgICAgIHsgImdzdyIsICAgICAgICAw
LCAweDAwYWIsIDB4MDBiYiwgMHgyMDM5LCAweDIwM2EgfSwKKyAgICAgICAgeyAiZ3UiLCAgICAg
ICAgIDAsIDB4MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9LAorICAgICAgICB7ICJndXoi
LCAgICAgICAgMCwgMHgyMDFjLCAweDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCisgICAgICAgIHsg
ImhhIiwgICAgICAgICAwLCAweDIwMWMsIDB4MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwKKyAgICAg
ICAgeyAiaGUiLCAgICAgICAgIDAsIDB4MDAyMiwgMHgwMDIyLCAweDAwMjcsIDB4MDAyNyB9LAor
ICAgICAgICB7ICJoaSIsICAgICAgICAgMCwgMHgyMDFjLCAweDIwMWQsIDB4MjAxOCwgMHgyMDE5
IH0sCisgICAgICAgIHsgImhyIiwgICAgICAgICAwLCAweDIwMWUsIDB4MjAxYywgMHgyMDFhLCAw
eDIwMTggfSwKKyAgICAgICAgeyAiaHUiLCAgICAgICAgIDAsIDB4MjAxZSwgMHgyMDFkLCAweDAw
YmIsIDB4MDBhYiB9LAorICAgICAgICB7ICJpZCIsICAgICAgICAgMCwgMHgyMDFjLCAweDIwMWQs
IDB4MjAxOCwgMHgyMDE5IH0sCisgICAgICAgIHsgImlnIiwgICAgICAgICAwLCAweDIwMWMsIDB4
MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwKKyAgICAgICAgeyAiaXQiLCAgICAgICAgIDAsIDB4MDBh
YiwgMHgwMGJiLCAweDIwMWMsIDB4MjAxZCB9LAorICAgICAgICB7ICJqYSIsICAgICAgICAgMCwg
MHgzMDBjLCAweDMwMGQsIDB4MzAwZSwgMHgzMDBmIH0sCisgICAgICAgIHsgImpnbyIsICAgICAg
ICAwLCAweDAwYWIsIDB4MDBiYiwgMHgyMDM5LCAweDIwM2EgfSwKKyAgICAgICAgeyAiam1jIiwg
ICAgICAgIDAsIDB4MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9LAorICAgICAgICB7ICJr
YWIiLCAgICAgICAgMCwgMHgwMGFiLCAweDAwYmIsIDB4MjAxYywgMHgyMDFkIH0sCisgICAgICAg
IHsgImthbSIsICAgICAgICAwLCAweDIwMWMsIDB4MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwKKyAg
ICAgICAgeyAia2RlIiwgICAgICAgIDAsIDB4MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9
LAorICAgICAgICB7ICJrZWEiLCAgICAgICAgMCwgMHgyMDFjLCAweDIwMWQsIDB4MjAxOCwgMHgy
MDE5IH0sCisgICAgICAgIHsgImtocSIsICAgICAgICAwLCAweDIwMWMsIDB4MjAxZCwgMHgyMDE4
LCAweDIwMTkgfSwKKyAgICAgICAgeyAia2kiLCAgICAgICAgIDAsIDB4MjAxYywgMHgyMDFkLCAw
eDIwMTgsIDB4MjAxOSB9LAorICAgICAgICB7ICJra2oiLCAgICAgICAgMCwgMHgwMGFiLCAweDAw
YmIsIDB4MjAzOSwgMHgyMDNhIH0sCisgICAgICAgIHsgImtsbiIsICAgICAgICAwLCAweDIwMWMs
IDB4MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwKKyAgICAgICAgeyAia20iLCAgICAgICAgIDAsIDB4
MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9LAorICAgICAgICB7ICJrbiIsICAgICAgICAg
MCwgMHgyMDFjLCAweDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCisgICAgICAgIHsgImtvIiwgICAg
ICAgICAwLCAweDIwMWMsIDB4MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwKKyAgICAgICAgeyAia3Ni
IiwgICAgICAgIDAsIDB4MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9LAorICAgICAgICB7
ICJrc2YiLCAgICAgICAgMCwgMHgwMGFiLCAweDAwYmIsIDB4MjAxOCwgMHgyMDE5IH0sCisgICAg
ICAgIHsgImxhZyIsICAgICAgICAwLCAweDIwMWQsIDB4MjAxZCwgMHgyMDE5LCAweDIwMTkgfSwK
KyAgICAgICAgeyAibGciLCAgICAgICAgIDAsIDB4MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4MjAx
OSB9LAorICAgICAgICB7ICJsbiIsICAgICAgICAgMCwgMHgyMDFjLCAweDIwMWQsIDB4MjAxOCwg
MHgyMDE5IH0sCisgICAgICAgIHsgImxvIiwgICAgICAgICAwLCAweDIwMWMsIDB4MjAxZCwgMHgy
MDE4LCAweDIwMTkgfSwKKyAgICAgICAgeyAibHQiLCAgICAgICAgIDAsIDB4MjAxZSwgMHgyMDFj
LCAweDIwMWUsIDB4MjAxYyB9LAorICAgICAgICB7ICJsdSIsICAgICAgICAgMCwgMHgyMDFjLCAw
eDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCisgICAgICAgIHsgImx1byIsICAgICAgICAwLCAweDIw
MWMsIDB4MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwKKyAgICAgICAgeyAibHV5IiwgICAgICAgIDAs
IDB4MjAxZSwgMHgyMDFjLCAweDIwMWEsIDB4MjAxOCB9LAorICAgICAgICB7ICJsdiIsICAgICAg
ICAgMCwgMHgyMDFjLCAweDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCisgICAgICAgIHsgIm1hcyIs
ICAgICAgICAwLCAweDIwMWMsIDB4MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwKKyAgICAgICAgeyAi
bWVyIiwgICAgICAgIDAsIDB4MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9LAorICAgICAg
ICB7ICJtZmUiLCAgICAgICAgMCwgMHgyMDFjLCAweDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCisg
ICAgICAgIHsgIm1nIiwgICAgICAgICAwLCAweDAwYWIsIDB4MDBiYiwgMHgyMDFjLCAweDIwMWQg
fSwKKyAgICAgICAgeyAibWdvIiwgICAgICAgIDAsIDB4MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4
MjAxOSB9LAorICAgICAgICB7ICJtayIsICAgICAgICAgMCwgMHgyMDFlLCAweDIwMWMsIDB4MjAx
YSwgMHgyMDE4IH0sCisgICAgICAgIHsgIm1sIiwgICAgICAgICAwLCAweDIwMWMsIDB4MjAxZCwg
MHgyMDE4LCAweDIwMTkgfSwKKyAgICAgICAgeyAibXIiLCAgICAgICAgIDAsIDB4MjAxYywgMHgy
MDFkLCAweDIwMTgsIDB4MjAxOSB9LAorICAgICAgICB7ICJtcyIsICAgICAgICAgMCwgMHgyMDFj
LCAweDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCisgICAgICAgIHsgIm11YSIsICAgICAgICAwLCAw
eDAwYWIsIDB4MDBiYiwgMHgyMDFjLCAweDIwMWQgfSwKKyAgICAgICAgeyAibXkiLCAgICAgICAg
IDAsIDB4MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9LAorICAgICAgICB7ICJuYXEiLCAg
ICAgICAgMCwgMHgyMDFjLCAweDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCisgICAgICAgIHsgIm5i
IiwgICAgICAgICAwLCAweDAwYWIsIDB4MDBiYiwgMHgyMDE4LCAweDIwMTkgfSwKKyAgICAgICAg
eyAibmQiLCAgICAgICAgIDAsIDB4MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9LAorICAg
ICAgICB7ICJubCIsICAgICAgICAgMCwgMHgyMDFjLCAweDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0s
CisgICAgICAgIHsgIm5tZyIsICAgICAgICAwLCAweDIwMWUsIDB4MjAxZCwgMHgwMGFiLCAweDAw
YmIgfSwKKyAgICAgICAgeyAibm4iLCAgICAgICAgIDAsIDB4MDBhYiwgMHgwMGJiLCAweDIwMTgs
IDB4MjAxOSB9LAorICAgICAgICB7ICJubmgiLCAgICAgICAgMCwgMHgwMGFiLCAweDAwYmIsIDB4
MjAxYywgMHgyMDFkIH0sCisgICAgICAgIHsgIm51cyIsICAgICAgICAwLCAweDIwMWMsIDB4MjAx
ZCwgMHgyMDE4LCAweDIwMTkgfSwKKyAgICAgICAgeyAibnluIiwgICAgICAgIDAsIDB4MjAxYywg
MHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9LAorICAgICAgICB7ICJwbCIsICAgICAgICAgMCwgMHgy
MDFlLCAweDIwMWQsIDB4MDBhYiwgMHgwMGJiIH0sCisgICAgICAgIHsgInB0IiwgICAgICAgICAx
LCAweDIwMWMsIDB4MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwKKyAgICAgICAgeyAicHQtcHQiLCAg
ICAgIDAsIDB4MDBhYiwgMHgwMGJiLCAweDIwMWMsIDB4MjAxZCB9LAorICAgICAgICB7ICJybiIs
ICAgICAgICAgMCwgMHgyMDFkLCAweDIwMWQsIDB4MjAxOSwgMHgyMDE5IH0sCisgICAgICAgIHsg
InJvIiwgICAgICAgICAwLCAweDIwMWUsIDB4MjAxZCwgMHgwMGFiLCAweDAwYmIgfSwKKyAgICAg
ICAgeyAicm9mIiwgICAgICAgIDAsIDB4MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9LAor
ICAgICAgICB7ICJydSIsICAgICAgICAgMCwgMHgwMGFiLCAweDAwYmIsIDB4MjAxZSwgMHgyMDFj
IH0sCisgICAgICAgIHsgInJ3IiwgICAgICAgICAwLCAweDAwYWIsIDB4MDBiYiwgMHgyMDE4LCAw
eDIwMTkgfSwKKyAgICAgICAgeyAicndrIiwgICAgICAgIDAsIDB4MjAxYywgMHgyMDFkLCAweDIw
MTgsIDB4MjAxOSB9LAorICAgICAgICB7ICJzYXEiLCAgICAgICAgMCwgMHgyMDFjLCAweDIwMWQs
IDB4MjAxOCwgMHgyMDE5IH0sCisgICAgICAgIHsgInNicCIsICAgICAgICAwLCAweDIwMWMsIDB4
MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwKKyAgICAgICAgeyAic2VoIiwgICAgICAgIDAsIDB4MjAx
YywgMHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9LAorICAgICAgICB7ICJzZXMiLCAgICAgICAgMCwg
MHgyMDFjLCAweDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCisgICAgICAgIHsgInNnIiwgICAgICAg
ICAwLCAweDAwYWIsIDB4MDBiYiwgMHgyMDFjLCAweDIwMWQgfSwKKyAgICAgICAgeyAic2hpIiwg
ICAgICAgIDEsIDB4MDBhYiwgMHgwMGJiLCAweDIwMWUsIDB4MjAxZCB9LAorICAgICAgICB7ICJz
aGktdGZuZyIsICAgMCwgMHgwMGFiLCAweDAwYmIsIDB4MjAxZSwgMHgyMDFkIH0sCisgICAgICAg
IHsgInNpIiwgICAgICAgICAwLCAweDIwMWMsIDB4MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwKKyAg
ICAgICAgeyAic2siLCAgICAgICAgIDAsIDB4MjAxZSwgMHgyMDFjLCAweDIwMWEsIDB4MjAxOCB9
LAorICAgICAgICB7ICJzbCIsICAgICAgICAgMCwgMHgyMDFlLCAweDIwMWMsIDB4MjAxYSwgMHgy
MDE4IH0sCisgICAgICAgIHsgInNuIiwgICAgICAgICAwLCAweDIwMWQsIDB4MjAxZCwgMHgyMDE5
LCAweDIwMTkgfSwKKyAgICAgICAgeyAic28iLCAgICAgICAgIDAsIDB4MjAxYywgMHgyMDFkLCAw
eDIwMTgsIDB4MjAxOSB9LAorICAgICAgICB7ICJzcSIsICAgICAgICAgMCwgMHgyMDFlLCAweDIw
MWMsIDB4MjAxYSwgMHgyMDE4IH0sCisgICAgICAgIHsgInNyIiwgICAgICAgICAxLCAweDIwMWUs
IDB4MjAxYywgMHgyMDFhLCAweDIwMTggfSwKKyAgICAgICAgeyAic3ItbGF0biIsICAgIDAsIDB4
MjAxZSwgMHgyMDFjLCAweDIwMWEsIDB4MjAxOCB9LAorICAgICAgICB7ICJzdiIsICAgICAgICAg
MCwgMHgyMDFkLCAweDIwMWQsIDB4MjAxOSwgMHgyMDE5IH0sCisgICAgICAgIHsgInN3IiwgICAg
ICAgICAwLCAweDIwMWMsIDB4MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwKKyAgICAgICAgeyAic3dj
IiwgICAgICAgIDAsIDB4MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9LAorICAgICAgICB7
ICJ0YSIsICAgICAgICAgMCwgMHgyMDFjLCAweDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCisgICAg
ICAgIHsgInRlIiwgICAgICAgICAwLCAweDIwMWMsIDB4MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwK
KyAgICAgICAgeyAidGVvIiwgICAgICAgIDAsIDB4MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4MjAx
OSB9LAorICAgICAgICB7ICJ0aCIsICAgICAgICAgMCwgMHgyMDFjLCAweDIwMWQsIDB4MjAxOCwg
MHgyMDE5IH0sCisgICAgICAgIHsgInRpLWVyIiwgICAgICAwLCAweDIwMTgsIDB4MjAxOSwgMHgy
MDFjLCAweDIwMWQgfSwKKyAgICAgICAgeyAidG8iLCAgICAgICAgIDAsIDB4MjAxYywgMHgyMDFk
LCAweDIwMTgsIDB4MjAxOSB9LAorICAgICAgICB7ICJ0ciIsICAgICAgICAgMCwgMHgyMDFjLCAw
eDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCisgICAgICAgIHsgInR3cSIsICAgICAgICAwLCAweDIw
MWMsIDB4MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwKKyAgICAgICAgeyAidHptIiwgICAgICAgIDAs
IDB4MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9LAorICAgICAgICB7ICJ1ayIsICAgICAg
ICAgMCwgMHgwMGFiLCAweDAwYmIsIDB4MjAxZSwgMHgyMDFjIH0sCisgICAgICAgIHsgInVyIiwg
ICAgICAgICAwLCAweDIwMWQsIDB4MjAxYywgMHgyMDE5LCAweDIwMTggfSwKKyAgICAgICAgeyAi
dmFpIiwgICAgICAgIDEsIDB4MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4MjAxOSB9LAorICAgICAg
ICB7ICJ2YWktbGF0biIsICAgMCwgMHgyMDFjLCAweDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCisg
ICAgICAgIHsgInZpIiwgICAgICAgICAwLCAweDIwMWMsIDB4MjAxZCwgMHgyMDE4LCAweDIwMTkg
fSwKKyAgICAgICAgeyAidnVuIiwgICAgICAgIDAsIDB4MjAxYywgMHgyMDFkLCAweDIwMTgsIDB4
MjAxOSB9LAorICAgICAgICB7ICJ4aCIsICAgICAgICAgMCwgMHgyMDE4LCAweDIwMTksIDB4MjAx
YywgMHgyMDFkIH0sCisgICAgICAgIHsgInhvZyIsICAgICAgICAwLCAweDIwMWMsIDB4MjAxZCwg
MHgyMDE4LCAweDIwMTkgfSwKKyAgICAgICAgeyAieWF2IiwgICAgICAgIDAsIDB4MDBhYiwgMHgw
MGJiLCAweDAwYWIsIDB4MDBiYiB9LAorICAgICAgICB7ICJ5byIsICAgICAgICAgMCwgMHgyMDFj
LCAweDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCisgICAgICAgIHsgInpoIiwgICAgICAgICAxLCAw
eDIwMWMsIDB4MjAxZCwgMHgyMDE4LCAweDIwMTkgfSwKKyAgICAgICAgeyAiemgtaGFudCIsICAg
IDAsIDB4MzAwYywgMHgzMDBkLCAweDMwMGUsIDB4MzAwZiB9LAorICAgICAgICB7ICJ6dSIsICAg
ICAgICAgMCwgMHgyMDFjLCAweDIwMWQsIDB4MjAxOCwgMHgyMDE5IH0sCiAgICAgfTsKIAotICAg
IGNvbnN0IHVuc2lnbmVkIG1heExhbmd1YWdlTGVuZ3RoID0gODsKLQogI2lmIEFTU0VSVF9FTkFC
TEVECiAgICAgLy8gT25lIHRpbWUgY2hlY2sgdGhhdCB0aGUgdGFibGUgbWVldHMgdGhlIGNvbnN0
cmFpbnRzIHRoYXQgdGhlIGNvZGUgYmVsb3cgcmVsaWVzIG9uLgogCkBAIC0yNzAsOCArMzY5LDYg
QEAgc3RhdGljIGNvbnN0IFF1b3Rlc0Zvckxhbmd1YWdlKiBxdW90ZXNGb3JMYW5ndWFnZShjb25z
dCBTdHJpbmcmIGxhbmd1YWdlKQogICAgICAgICBjaGVja051bWJlck9mRGlzdGluY3RRdW90ZUNo
YXJhY3RlcnMoYXBvc3Ryb3BoZSk7CiAKICAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8
IFdURl9BUlJBWV9MRU5HVEgocXVvdGVUYWJsZSk7ICsraSkgewotICAgICAgICAgICAgQVNTRVJU
KHN0cmxlbihxdW90ZVRhYmxlW2ldLmxhbmd1YWdlKSA8PSBtYXhMYW5ndWFnZUxlbmd0aCk7Ci0K
ICAgICAgICAgICAgIGlmIChpKQogICAgICAgICAgICAgICAgIEFTU0VSVChzdHJjbXAocXVvdGVU
YWJsZVtpIC0gMV0ubGFuZ3VhZ2UsIHF1b3RlVGFibGVbaV0ubGFuZ3VhZ2UpIDwgMCk7CiAKQEAg
LTI4NywxOSArMzg0LDE5IEBAIHN0YXRpYyBjb25zdCBRdW90ZXNGb3JMYW5ndWFnZSogcXVvdGVz
Rm9yTGFuZ3VhZ2UoY29uc3QgU3RyaW5nJiBsYW5ndWFnZSkKICNlbmRpZiAvLyBBU1NFUlRfRU5B
QkxFRAogCiAgICAgdW5zaWduZWQgbGVuZ3RoID0gbGFuZ3VhZ2UubGVuZ3RoKCk7Ci0gICAgaWYg
KCFsZW5ndGggfHwgbGVuZ3RoID4gbWF4TGFuZ3VhZ2VMZW5ndGgpCi0gICAgICAgIHJldHVybiAw
OworICAgIGlmICghbGVuZ3RoKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAotICAgIGNoYXIg
bGFuZ3VhZ2VLZXlCdWZmZXJbbWF4TGFuZ3VhZ2VMZW5ndGggKyAxXTsKKyAgICBWZWN0b3I8Y2hh
cj4gbGFuZ3VhZ2VLZXlCdWZmZXIobGVuZ3RoICsgMSk7CiAgICAgZm9yICh1bnNpZ25lZCBpID0g
MDsgaSA8IGxlbmd0aDsgKytpKSB7CiAgICAgICAgIFVDaGFyIGNoYXJhY3RlciA9IHRvQVNDSUlM
b3dlcihsYW5ndWFnZVtpXSk7CiAgICAgICAgIGlmICghKGlzQVNDSUlMb3dlcihjaGFyYWN0ZXIp
IHx8IGNoYXJhY3RlciA9PSAnLScpKQotICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgICAg
ICByZXR1cm4gbnVsbHB0cjsKICAgICAgICAgbGFuZ3VhZ2VLZXlCdWZmZXJbaV0gPSBzdGF0aWNf
Y2FzdDxjaGFyPihjaGFyYWN0ZXIpOwogICAgIH0KICAgICBsYW5ndWFnZUtleUJ1ZmZlcltsZW5n
dGhdID0gMDsKIAotICAgIFF1b3Rlc0Zvckxhbmd1YWdlIGxhbmd1YWdlS2V5ID0geyBsYW5ndWFn
ZUtleUJ1ZmZlciwgMCwgMCwgMCwgMCB9OworICAgIFF1b3Rlc0Zvckxhbmd1YWdlIGxhbmd1YWdl
S2V5ID0geyBsYW5ndWFnZUtleUJ1ZmZlci5kYXRhKCksIDAsIDAsIDAsIDAsIDAgfTsKIAogICAg
IHJldHVybiBzdGF0aWNfY2FzdDxjb25zdCBRdW90ZXNGb3JMYW5ndWFnZSo+KGJzZWFyY2goJmxh
bmd1YWdlS2V5LAogICAgICAgICBxdW90ZVRhYmxlLCBXVEZfQVJSQVlfTEVOR1RIKHF1b3RlVGFi
bGUpLCBzaXplb2YocXVvdGVUYWJsZVswXSksIHF1b3RlVGFibGVMYW5ndWFnZUNvbXBhcmlzb25G
dW5jdGlvbikpOwpAQCAtMzgwLDkgKzQ3NywxMCBAQCBTdHJpbmcgUmVuZGVyUXVvdGU6OmNvbXB1
dGVUZXh0KCkgY29uc3QKICAgICBjYXNlIFF1b3RlVHlwZTo6Q2xvc2VRdW90ZToKICAgICAgICAg
aWYgKGNvbnN0IFF1b3Rlc0RhdGEqIHF1b3RlcyA9IHN0eWxlKCkucXVvdGVzKCkpCiAgICAgICAg
ICAgICByZXR1cm4gaXNPcGVuUXVvdGUgPyBxdW90ZXMtPm9wZW5RdW90ZShtX2RlcHRoKS5pbXBs
KCkgOiBxdW90ZXMtPmNsb3NlUXVvdGUobV9kZXB0aCkuaW1wbCgpOwotICAgICAgICBpZiAoY29u
c3QgUXVvdGVzRm9yTGFuZ3VhZ2UqIHF1b3RlcyA9IHF1b3Rlc0Zvckxhbmd1YWdlKHN0eWxlKCku
c3BlY2lmaWVkTG9jYWxlKCkpKQorICAgICAgICBpZiAoY29uc3QgUXVvdGVzRm9yTGFuZ3VhZ2Uq
IHF1b3RlcyA9IHF1b3Rlc0Zvckxhbmd1YWdlKHN0eWxlKCkuY29tcHV0ZWRMb2NhbGUoKSkpCiAg
ICAgICAgICAgICByZXR1cm4gc3RyaW5nRm9yUXVvdGVDaGFyYWN0ZXIoaXNPcGVuUXVvdGUgPyAo
bV9kZXB0aCA/IHF1b3Rlcy0+b3BlbjIgOiBxdW90ZXMtPm9wZW4xKSA6IChtX2RlcHRoID8gcXVv
dGVzLT5jbG9zZTIgOiBxdW90ZXMtPmNsb3NlMSkpOwogICAgICAgICAvLyBGSVhNRTogU2hvdWxk
IHRoZSBkZWZhdWx0IGJlIHRoZSBxdW90ZXMgZm9yICJlbiIgcmF0aGVyIHRoYW4gc3RyYWlnaHQg
cXVvdGVzPworICAgICAgICAvLyAoQWNjb3JkaW5nIHRvIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3
Zy5vcmcvbXVsdGlwYWdlL3JlbmRlcmluZy5odG1sI3F1b3RlcywgdGhlIGFuc3dlciBpcyAieWVz
Ii4pCiAgICAgICAgIHJldHVybiBtX2RlcHRoID8gYXBvc3Ryb3BoZVN0cmluZygpIDogcXVvdGF0
aW9uTWFya1N0cmluZygpOwogICAgIH0KICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRl
eCBhOTY2Mzg4NmM0Yzg1ODQzNWI1YTYxZmUzNzMwM2RmMzFiMDdhZTcxLi5kZTlhMDEzNThmMDRj
OWY3MzU5ZjQ2ZGFjM2VhMzM1YTI3ZGMwNjJlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMjAt
MDYtMzAgIE15bGVzIEMuIE1heGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNvbT4KKworICAgICAg
ICBMb2NhbGUtc3BlY2lmaWMgcXVvdGVzIGluZnJhc3RydWN0dXJlIG5lZWRzIHRvIGNvbXBhcmUg
bG9jYWxlIHN0cmluZ3MgcHJvcGVybHkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIxMzgyNworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogZmFzdC9jc3MtZ2VuZXJhdGVkLWNvbnRlbnQvcXVvdGVzLWxhbmct
Mi1leHBlY3RlZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Nzcy1nZW5lcmF0ZWQtY29u
dGVudC9xdW90ZXMtbGFuZy0yLmh0bWw6IEFkZGVkLgorCiAyMDIwLTA2LTMwICBNYXJrIExhbSAg
PG1hcmsubGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBBZGQgaGFuZGxpbmcgZm9yIGEgY2FzZSBv
ZiBPT01FIGluIENTU1Rva2VuaXplciBhbmQgQ1NTUGFyc2VyLgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9jc3MtZ2VuZXJhdGVkLWNvbnRlbnQvcXVvdGVzLWxhbmctMi1leHBlY3RlZC5o
dG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ2VuZXJhdGVkLWNvbnRlbnQvcXVvdGVzLWxhbmct
Mi1leHBlY3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE5NmUwZWNhNGIxZTEyYjdlZDZlMGE1NmQ4Zjc2
ODQxY2RiYjhjMzkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy1nZW5l
cmF0ZWQtY29udGVudC9xdW90ZXMtbGFuZy0yLWV4cGVjdGVkLmh0bWwKQEAgLTAsMCArMSwzOCBA
QAorPCFET0NUWVBFIGh0bWw+CisKKzxzdHlsZT4KK3EgeworICAgIGZvbnQtZmFtaWx5OiAiVGlt
ZXMiOworfQorPC9zdHlsZT4KKworPHA+CisgICAgWW91IHNob3VsZCBzZWUgdGhlIHF1b3RlcyBm
b3IgdGhlIHNwZWNpZmllZCBsYW5ndWFnZSBvbiBlYWNoIGxpbmUgYmVsb3csCisgICAgYW5kIG5v
dCBqdXN0IGJhc2ljICIgYW5kICcgY2hhcmFjdGVycyB1bmxlc3Mgbm8gbGFuZ3VhZ2UgaXMgc3Bl
Y2lmaWVkLgorPC9wPgorCis8cSBzdHlsZT0icXVvdGVzOiAnXDIwMWUnICdcMjAxZCcgJ1wyMDFh
JyAnXDIwMTknOyI+PHE+YWdxPC9xPjwvcT4KKzxxIHN0eWxlPSIiPjxxPmFnPC9xPjwvcT4KKzxx
IHN0eWxlPSIiPjxxPmdxPC9xPjwvcT4KKzxxIHN0eWxlPSIiPjxxPmF6PC9xPjwvcT4KKzxxIHN0
eWxlPSJxdW90ZXM6ICdcMjAxYycgJ1wyMDFkJyAnXDIwMTgnICdcMjAxOSc7Ij48cT56aC1oYW48
L3E+PC9xPgorPHEgc3R5bGU9InF1b3RlczogJ1wyMDFjJyAnXDIwMWQnICdcMjAxOCcgJ1wyMDE5
JzsiPjxxPnpoLWFudDwvcT48L3E+Cis8cSBzdHlsZT0icXVvdGVzOiAnXDAwYWInICdcMDBiYicg
J1wyMDM5JyAnXDIwM2EnOyI+PHE+YXotY3lybC1hYmM8L3E+PC9xPgorPHEgc3R5bGU9InF1b3Rl
czogJ1wyMDFlJyAnXDIwMWMnICdcMjAxYScgJ1wyMDE4JzsiPjxxPmRlLWFiYzwvcT48L3E+Cis8
cSBzdHlsZT0icXVvdGVzOiAnXDAwYWInICdcMDBiYicgJ1wyMDM5JyAnXDIwM2EnOyI+PHE+ZGUt
Y2gtYWJjPC9xPjwvcT4KKzxxIHN0eWxlPSJxdW90ZXM6ICdcMDBhYicgJ1wwMGJiJyAnXDIwMzkn
ICdcMjAzYSc7Ij48cT5kZS1hYmMtY2g8L3E+PC9xPgorPHEgc3R5bGU9InF1b3RlczogJ1wwMGFi
JyAnXDAwYmInICdcMDBhYicgJ1wwMGJiJzsiPjxxPmZyLWFiYzwvcT48L3E+Cis8cSBzdHlsZT0i
cXVvdGVzOiAnXDAwYWInICdcMDBiYicgJ1wyMDM5JyAnXDIwM2EnOyI+PHE+ZnItY2EtYWJjPC9x
PjwvcT4KKzxxIHN0eWxlPSJxdW90ZXM6ICdcMDBhYicgJ1wwMGJiJyAnXDIwMzknICdcMjAzYSc7
Ij48cT5mci1jaC1hYmM8L3E+PC9xPgorPHEgc3R5bGU9InF1b3RlczogJ1wwMGFiJyAnXDAwYmIn
ICdcMjAzOScgJ1wyMDNhJzsiPjxxPmZyLWFiYy1jYTwvcT48L3E+Cis8cSBzdHlsZT0icXVvdGVz
OiAnXDAwYWInICdcMDBiYicgJ1wyMDM5JyAnXDIwM2EnOyI+PHE+ZnItYWJjLWNoPC9xPjwvcT4K
KzxxIHN0eWxlPSJxdW90ZXM6ICdcMjAxYycgJ1wyMDFkJyAnXDIwMTgnICdcMjAxOSc7Ij48cT5h
Zi14PC9xPjwvcT4KKzxxIHN0eWxlPSJxdW90ZXM6ICdcMjAxZScgJ1wyMDFjJyAnXDIwMWEnICdc
MjAxOCc7Ij48cT5kZS14PC9xPjwvcT4KKzxxIHN0eWxlPSJxdW90ZXM6ICdcMDBhYicgJ1wwMGJi
JyAnXDIwMzknICdcMjAzYSc7Ij48cT5kZS1jaC14PC9xPjwvcT4KKzxxIHN0eWxlPSJxdW90ZXM6
ICdcMjAxZScgJ1wyMDFjJyAnXDIwMWEnICdcMjAxOCc7Ij48cT5kZS14LWNoPC9xPjwvcT4KKzxx
IHN0eWxlPSJxdW90ZXM6ICdcMDBhYicgJ1wwMGJiJyAnXDAwYWInICdcMDBiYic7Ij48cT5mci14
PC9xPjwvcT4KKzxxIHN0eWxlPSJxdW90ZXM6ICdcMDBhYicgJ1wwMGJiJyAnXDIwMzknICdcMjAz
YSc7Ij48cT5mci1jYS14PC9xPjwvcT4KKzxxIHN0eWxlPSJxdW90ZXM6ICdcMDBhYicgJ1wwMGJi
JyAnXDIwMzknICdcMjAzYSc7Ij48cT5mci1jaC14PC9xPjwvcT4KKzxxIHN0eWxlPSJxdW90ZXM6
ICdcMDBhYicgJ1wwMGJiJyAnXDAwYWInICdcMDBiYic7Ij48cT5mci14LWNhPC9xPjwvcT4KKzxx
IHN0eWxlPSJxdW90ZXM6ICdcMDBhYicgJ1wwMGJiJyAnXDAwYWInICdcMDBiYic7Ij48cT5mci14
LWNoPC9xPjwvcT4KKzxxIHN0eWxlPSJxdW90ZXM6ICdcMjAxYycgJ1wyMDFkJyAnXDIwMTgnICdc
MjAxOSc7Ij48cT5lbi1jaDwvcT48L3E+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nz
cy1nZW5lcmF0ZWQtY29udGVudC9xdW90ZXMtbGFuZy0yLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0
L2Nzcy1nZW5lcmF0ZWQtY29udGVudC9xdW90ZXMtbGFuZy0yLmh0bWwKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTEw
NzE4NGU1NGY3NmI4ZTdmZTA1YzhmZGNjNTkxZGQ0NDU0ZDQyNAotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvY3NzLWdlbmVyYXRlZC1jb250ZW50L3F1b3Rlcy1sYW5nLTIuaHRt
bApAQCAtMCwwICsxLDM4IEBACis8IURPQ1RZUEUgaHRtbD4KKworPHN0eWxlPgorcSB7CisgICAg
Zm9udC1mYW1pbHk6ICJUaW1lcyI7Cit9Cis8L3N0eWxlPgorCis8cD4KKyAgICBZb3Ugc2hvdWxk
IHNlZSB0aGUgcXVvdGVzIGZvciB0aGUgc3BlY2lmaWVkIGxhbmd1YWdlIG9uIGVhY2ggbGluZSBi
ZWxvdywKKyAgICBhbmQgbm90IGp1c3QgYmFzaWMgIiBhbmQgJyBjaGFyYWN0ZXJzIHVubGVzcyBu
byBsYW5ndWFnZSBpcyBzcGVjaWZpZWQuCis8L3A+CisKKzxxIGxhbmc9ImFncSI+PHE+YWdxPC9x
PjwvcT4KKzxxIGxhbmc9ImFnIj48cT5hZzwvcT48L3E+Cis8cSBsYW5nPSJncSI+PHE+Z3E8L3E+
PC9xPgorPHEgbGFuZz0iYXoiPjxxPmF6PC9xPjwvcT4KKzxxIGxhbmc9InpoLWhhbiI+PHE+emgt
aGFuPC9xPjwvcT4KKzxxIGxhbmc9InpoLWFudCI+PHE+emgtYW50PC9xPjwvcT4KKzxxIGxhbmc9
ImF6LWN5cmwtYWJjIj48cT5hei1jeXJsLWFiYzwvcT48L3E+Cis8cSBsYW5nPSJkZS1hYmMiPjxx
PmRlLWFiYzwvcT48L3E+Cis8cSBsYW5nPSJkZS1jaC1hYmMiPjxxPmRlLWNoLWFiYzwvcT48L3E+
Cis8cSBsYW5nPSJkZS1hYmMtY2giPjxxPmRlLWFiYy1jaDwvcT48L3E+Cis8cSBsYW5nPSJmci1h
YmMiPjxxPmZyLWFiYzwvcT48L3E+Cis8cSBsYW5nPSJmci1jYS1hYmMiPjxxPmZyLWNhLWFiYzwv
cT48L3E+Cis8cSBsYW5nPSJmci1jaC1hYmMiPjxxPmZyLWNoLWFiYzwvcT48L3E+Cis8cSBsYW5n
PSJmci1hYmMtY2EiPjxxPmZyLWFiYy1jYTwvcT48L3E+Cis8cSBsYW5nPSJmci1hYmMtY2giPjxx
PmZyLWFiYy1jaDwvcT48L3E+Cis8cSBsYW5nPSJhZi14Ij48cT5hZi14PC9xPjwvcT4KKzxxIGxh
bmc9ImRlLXgiPjxxPmRlLXg8L3E+PC9xPgorPHEgbGFuZz0iZGUtY2gteCI+PHE+ZGUtY2gteDwv
cT48L3E+Cis8cSBsYW5nPSJkZS14LWNoIj48cT5kZS14LWNoPC9xPjwvcT4KKzxxIGxhbmc9ImZy
LXgiPjxxPmZyLXg8L3E+PC9xPgorPHEgbGFuZz0iZnItY2EteCI+PHE+ZnItY2EteDwvcT48L3E+
Cis8cSBsYW5nPSJmci1jaC14Ij48cT5mci1jaC14PC9xPjwvcT4KKzxxIGxhbmc9ImZyLXgtY2Ei
PjxxPmZyLXgtY2E8L3E+PC9xPgorPHEgbGFuZz0iZnIteC1jaCI+PHE+ZnIteC1jaDwvcT48L3E+
Cis8cSBsYW5nPSJlbi1jaCI+PHE+ZW4tY2g8L3E+PC9xPgo=
</data>
<flag name="review"
          id="418639"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>