<?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>118966</bug_id>
          
          <creation_ts>2013-07-22 06:21:44 -0700</creation_ts>
          <short_desc>[ATK] Implement allAttributes() for AccessibilityUIElement</short_desc>
          <delta_ts>2013-07-30 00:52:36 -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>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>LayoutTestFailure</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>98348</blocked>
    
    <blocked>98380</blocked>
    
    <blocked>98381</blocked>
    
    <blocked>118967</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Mario Sanchez Prada">mario</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>aboxhall</cc>
    
    <cc>apinheiro</cc>
    
    <cc>cfleizach</cc>
    
    <cc>cgarcia</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dmazzoni</cc>
    
    <cc>jdiggs</cc>
    
    <cc>k.czech</cc>
    
    <cc>mrobinson</cc>
    
    <cc>zan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>910652</commentid>
    <comment_count>0</comment_count>
    <who name="Mario Sanchez Prada">mario</who>
    <bug_when>2013-07-22 06:21:44 -0700</bug_when>
    <thetext>Implementing this function would help to run properly the following tests, now in TestExpectations:

  accessibility/table-detection.html
  accessibility/table-one-cell.html
  accessibility/table-with-rules.html
  accessibility/th-as-title-ui.html
  accessibility/transformed-element.html

Additionally, it should help to to provide more accurate (and useful!) results for the following tests:

  deleting-iframe-destroys-axcache.html
  image-link-inline-cont.html
  image-link.html
  non-data-table-cell-title-ui-element.html
  table-cell-spans.html
  table-cells.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>911928</commentid>
    <comment_count>1</comment_count>
      <attachid>207521</attachid>
    <who name="Mario Sanchez Prada">mario</who>
    <bug_when>2013-07-26 04:03:10 -0700</bug_when>
    <thetext>Created attachment 207521
Patch proposal

This patch implements the missing functionality in DRT &amp; WKTR, removes four tests from TestExpectations and updates expectations for 3 more tests.

Please review :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>911929</commentid>
    <comment_count>2</comment_count>
    <who name="Mario Sanchez Prada">mario</who>
    <bug_when>2013-07-26 04:04:06 -0700</bug_when>
    <thetext>Adding to CC people that might be interested.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>911946</commentid>
    <comment_count>3</comment_count>
    <who name="Mario Sanchez Prada">mario</who>
    <bug_when>2013-07-26 05:33:49 -0700</bug_when>
    <thetext>*** Bug 98381 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>912488</commentid>
    <comment_count>4</comment_count>
      <attachid>207521</attachid>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2013-07-29 07:23:49 -0700</bug_when>
    <thetext>Comment on attachment 207521
Patch proposal

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

&gt; Tools/DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:76
&gt; +    GString* str = g_string_new(0);

Might be worth it taking advantage of the change to use StringBuilder and String here =)

&gt; Tools/DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:241
&gt; +        if (parentName &amp;&amp; g_utf8_strlen(parentName, -1)) {
&gt; +            attributeLine.set(g_strdup_printf(&quot;: %s&quot;, parentName));
&gt; +
&gt; +        }

No need for braces, empty line

&gt; Tools/DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:257
&gt; +        attributeLine.set(g_strdup_printf(&quot;%s\n&quot;, title.utf8().data()));

How about using String::format(&quot;%s\n&quot;, title.utf8().data())? Then you can have attributeLine live on the stack and avoid dealing with char pointers.

&gt; Tools/DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:303
&gt; +    // We append the ATK specific attributes as a single line at the end.
&gt; +    GOwnPtr&lt;char&gt; attributeData(getAtkAttributeSetAsString(element-&gt;platformUIElement()));
&gt; +    attributeLine.set(g_strdup_printf(&quot;AXPlatformAttributes: %s&quot;, attributeData.get()));
&gt; +    builder.append(attributeLine.get());

Ditto.

&gt; Tools/DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:493
&gt; -    String roleString = roleToString(role);
&gt; -    return JSStringCreateWithUTF8CString(roleString.utf8().data());
&gt; +    GOwnPtr&lt;char&gt; roleStringWithPrefix(g_strdup_printf(&quot;AXRole: %s&quot;, roleToString(role)));
&gt; +    return JSStringCreateWithUTF8CString(roleStringWithPrefix.get());

Ditto.

&gt; Tools/WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:292
&gt; +    attributeLine.set(g_strdup_printf(&quot;%s\n&quot;, element-&gt;role()-&gt;string().utf8().data()));
&gt; +    builder.append(attributeLine.get());

This file also has a number of potential changes from char* to String.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>912532</commentid>
    <comment_count>5</comment_count>
    <who name="Mario Sanchez Prada">mario</who>
    <bug_when>2013-07-29 10:13:25 -0700</bug_when>
    <thetext>Thanks for the review, Gustavo. See some comments below...

(In reply to comment #4)
&gt; (From update of attachment 207521 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=207521&amp;action=review
&gt; 
&gt; &gt; Tools/DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:76
&gt; &gt; +    GString* str = g_string_new(0);
&gt; 
&gt; Might be worth it taking advantage of the change to use StringBuilder and String here =)

Sure. Changed.

&gt; &gt; Tools/DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:241
&gt; &gt; +        if (parentName &amp;&amp; g_utf8_strlen(parentName, -1)) {
&gt; &gt; +            attributeLine.set(g_strdup_printf(&quot;: %s&quot;, parentName));
&gt; &gt; +
&gt; &gt; +        }
&gt; 
&gt; No need for braces, empty line

Ok.

&gt; &gt; Tools/DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:257
&gt; &gt; +        attributeLine.set(g_strdup_printf(&quot;%s\n&quot;, title.utf8().data()));
&gt; 
&gt; How about using String::format(&quot;%s\n&quot;, title.utf8().data())? Then you can have attributeLine live on the stack and avoid dealing with char pointers.

Ok. Changed the patch to do that.

&gt; &gt; Tools/DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:303
&gt; &gt; +    // We append the ATK specific attributes as a single line at the end.
&gt; &gt; +    GOwnPtr&lt;char&gt; attributeData(getAtkAttributeSetAsString(element-&gt;platformUIElement()));
&gt; &gt; +    attributeLine.set(g_strdup_printf(&quot;AXPlatformAttributes: %s&quot;, attributeData.get()));
&gt; &gt; +    builder.append(attributeLine.get());
&gt; 
&gt; Ditto.

Done.

&gt; &gt; Tools/DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:493
&gt; &gt; -    String roleString = roleToString(role);
&gt; &gt; -    return JSStringCreateWithUTF8CString(roleString.utf8().data());
&gt; &gt; +    GOwnPtr&lt;char&gt; roleStringWithPrefix(g_strdup_printf(&quot;AXRole: %s&quot;, roleToString(role)));
&gt; &gt; +    return JSStringCreateWithUTF8CString(roleStringWithPrefix.get());
&gt; 
&gt; Ditto.

Done.
 
&gt; &gt; Tools/WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:292
&gt; &gt; +    attributeLine.set(g_strdup_printf(&quot;%s\n&quot;, element-&gt;role()-&gt;string().utf8().data()));
&gt; &gt; +    builder.append(attributeLine.get());
&gt; 
&gt; This file also has a number of potential changes from char* to String.

I agree with that, but that&apos;s probably something better to tackle in different patches.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>912534</commentid>
    <comment_count>6</comment_count>
    <who name="Mario Sanchez Prada">mario</who>
    <bug_when>2013-07-29 10:15:19 -0700</bug_when>
    <thetext>Committed r153432: &lt;http://trac.webkit.org/changeset/153432&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>912559</commentid>
    <comment_count>7</comment_count>
    <who name="Mario Sanchez Prada">mario</who>
    <bug_when>2013-07-29 10:55:15 -0700</bug_when>
    <thetext>EFL guys might be interested in rebaselining their tests (and maybe unskipping some too), now we are dumping some extra information</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>912695</commentid>
    <comment_count>8</comment_count>
    <who name="Krzysztof Czech">k.czech</who>
    <bug_when>2013-07-30 00:52:36 -0700</bug_when>
    <thetext>&gt; EFL guys might be interested in rebaselining their tests (and maybe unskipping some too), now we are dumping some extra information

Thanks Mario for information. I will take a look at it.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>207521</attachid>
            <date>2013-07-26 04:03:10 -0700</date>
            <delta_ts>2013-07-29 07:23:49 -0700</delta_ts>
            <desc>Patch proposal</desc>
            <filename>0001-2013-07-26-Mario-Sanchez-Prada-mario.prada-samsung.c.patch</filename>
            <type>text/plain</type>
            <size>49397</size>
            <attacher name="Mario Sanchez Prada">mario</attacher>
            
              <data encoding="base64">RnJvbSA1MjU5NWIxYzViZmQ0ODJmMTAzZWI4ODg1YzQxM2VkMDNiMDEyMWRiIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBNYXJpbyBTYW5jaGV6IFByYWRhIDxtYXJpby5wcmFkYUBzYW1z
dW5nLmNvbT4KRGF0ZTogRnJpLCAyNiBKdWwgMjAxMyAxMTo0NzozMyArMDEwMApTdWJqZWN0OiBb
UEFUQ0ggMS8yXSAyMDEzLTA3LTI2ICBNYXJpbyBTYW5jaGV6IFByYWRhIAogPG1hcmlvLnByYWRh
QHNhbXN1bmcuY29tPgoKICAgICAgICBbQVRLXSBJbXBsZW1lbnQgYWxsQXR0cmlidXRlcygpIGZv
ciBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50CiAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTExODk2NgoKICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KCiAgICAgICAgSW1wbGVtZW50ZWQgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6YWxsQXR0cmli
dXRlcygpIGJvdGggaW4KICAgICAgICBEdW1wUmVuZGVyVHJlZSBhbmQgdGhlIFdlYktpdFRlc3RS
dW5uZXIuCgogICAgICAgICogRHVtcFJlbmRlclRyZWUvYXRrL0FjY2Vzc2liaWxpdHlVSUVsZW1l
bnRBdGsuY3BwOgogICAgICAgIChnZXRBdGtBdHRyaWJ1dGVTZXRBc1N0cmluZyk6IE1vdmVkIHVw
IGluIHRoZSBmaWxlLgogICAgICAgIChyb2xlVG9TdHJpbmcpOiBDaGFuZ2VkIG5vdCB0byByZXR1
cm4gdGhlICJBWFJvbGU6ICIgcHJlZml4LCBzbwogICAgICAgIHdlIGNhbiB1c2UgaXQgYXMgd2Vs
bCBmcm9tIGF0dHJpYnV0ZXNPZkVsZW1lbnQoKS4KICAgICAgICAoYXR0cmlidXRlc09mRWxlbWVu
dCk6IE5ldyBmdW5jdGlvbiB0byBkdW1wIGF0dHJpYnV0ZXMgZm9yIGFuIG9iamVjdC4KICAgICAg
ICAoQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6YWxsQXR0cmlidXRlcyk6IENhbGwgYXR0cmlidXRl
c09mRWxlbWVudCgpLgogICAgICAgIChBY2Nlc3NpYmlsaXR5VUlFbGVtZW50Ojpyb2xlKTogVXBk
YXRlZCB0byBwcmVmaXggIkFYUm9sZTogIi4KCiAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL0lu
amVjdGVkQnVuZGxlL2F0ay9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50QXRrLmNwcDoKICAgICAgICAo
V1RGOjpyb2xlVG9TdHJpbmcpOiBDaGFuZ2VkIG5vdCB0byByZXR1cm4gdGhlICJBWFJvbGU6ICIg
cHJlZml4LAogICAgICAgIHNvIHdlIGNhbiB1c2UgaXQgYXMgd2VsbCBmcm9tIGF0dHJpYnV0ZXNP
ZkVsZW1lbnQoKS4KICAgICAgICAoV1RGOjphdHRyaWJ1dGVzT2ZFbGVtZW50KTogTmV3IGZ1bmN0
aW9uIHRvIGR1bXAgYXR0cmlidXRlcyBmb3IgYW4gb2JqZWN0LgogICAgICAgIChXVFI6OkFjY2Vz
c2liaWxpdHlVSUVsZW1lbnQ6OmFsbEF0dHJpYnV0ZXMpOiBDYWxsIGF0dHJpYnV0ZXNPZkVsZW1l
bnQoKS4KICAgICAgICAoV1RSOjpBY2Nlc3NpYmlsaXR5VUlFbGVtZW50Ojpyb2xlKTogVXBkYXRl
ZCB0byBwcmVmaXggIkFYUm9sZTogIi4KCjIwMTMtMDctMjYgIE1hcmlvIFNhbmNoZXogUHJhZGEg
IDxtYXJpby5wcmFkYUBzYW1zdW5nLmNvbT4KCiAgICAgICAgW0FUS10gSW1wbGVtZW50IGFsbEF0
dHJpYnV0ZXMoKSBmb3IgQWNjZXNzaWJpbGl0eVVJRWxlbWVudAogICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTg5NjYKCiAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCgogICAgICAgIFJlbW92ZWQgZml4ZWQgdGVzdHMgZnJvbSBUZXN0RXhw
ZWN0YXRpb25zIGFuZCBhZGRlZC91cGRhdGVkIGV4cGVjdGVkCiAgICAgICAgcmVzdWx0cyBmb3Ig
dGVzdHMgdGhhdCBhcmUgbm93IGR1bXBpbmcgbW9yZSB1c2VmdWwgaW5mb3JtYXRpb24uCgogICAg
ICAgICogcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlvbnM6IFJlbW92ZWQgZm91ciBmaXhlZCB0
ZXN0cy4KICAgICAgICAqIHBsYXRmb3JtL2d0ay9hY2Nlc3NpYmlsaXR5L2ltYWdlLWxpbmstZXhw
ZWN0ZWQudHh0OiBVcGRhdGVkLgogICAgICAgICogcGxhdGZvcm0vZ3RrL2FjY2Vzc2liaWxpdHkv
dGFibGUtY2VsbC1zcGFucy1leHBlY3RlZC50eHQ6IFVwZGF0ZWQKICAgICAgICAqIHBsYXRmb3Jt
L2d0ay9hY2Nlc3NpYmlsaXR5L3RhYmxlLWNlbGxzLWV4cGVjdGVkLnR4dDogVXBkYXRlZAogICAg
ICAgICogcGxhdGZvcm0vZ3RrL2FjY2Vzc2liaWxpdHkvdGFibGUtZGV0ZWN0aW9uLWV4cGVjdGVk
LnR4dDogQWRkZWQuCiAgICAgICAgKiBwbGF0Zm9ybS9ndGsvYWNjZXNzaWJpbGl0eS90YWJsZS1v
bmUtY2VsbC1leHBlY3RlZC50eHQ6IEFkZGVkLgogICAgICAgICogcGxhdGZvcm0vZ3RrL2FjY2Vz
c2liaWxpdHkvdGFibGUtd2l0aC1ydWxlcy1leHBlY3RlZC50eHQ6IEFkZGVkLgogICAgICAgICog
cGxhdGZvcm0vZ3RrL2FjY2Vzc2liaWxpdHkvdHJhbnNmb3JtZWQtZWxlbWVudC1leHBlY3RlZC50
eHQ6IEFkZGVkLgotLS0KIExheW91dFRlc3RzL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHwgICAxOSArCiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvVGVzdEV4cGVjdGF0
aW9ucyAgICAgICAgICB8ICAgIDQgLQogLi4uL2d0ay9hY2Nlc3NpYmlsaXR5L2ltYWdlLWxpbmst
ZXhwZWN0ZWQudHh0ICAgICAgfCAgIDM3ICstCiAuLi4vYWNjZXNzaWJpbGl0eS90YWJsZS1jZWxs
LXNwYW5zLWV4cGVjdGVkLnR4dCAgICB8ICAgOTUgKysrLQogLi4uL2d0ay9hY2Nlc3NpYmlsaXR5
L3RhYmxlLWNlbGxzLWV4cGVjdGVkLnR4dCAgICAgfCAgIDk1ICsrKy0KIC4uLi9ndGsvYWNjZXNz
aWJpbGl0eS90YWJsZS1kZXRlY3Rpb24tZXhwZWN0ZWQudHh0IHwgIDQ1NyArKysrKysrKysrKysr
KysrKysrKwogLi4uL2d0ay9hY2Nlc3NpYmlsaXR5L3RhYmxlLW9uZS1jZWxsLWV4cGVjdGVkLnR4
dCAgfCAgIDIwICsKIC4uLi9hY2Nlc3NpYmlsaXR5L3RhYmxlLXdpdGgtcnVsZXMtZXhwZWN0ZWQu
dHh0ICAgIHwgICA5OSArKysrKwogLi4uL2FjY2Vzc2liaWxpdHkvdHJhbnNmb3JtZWQtZWxlbWVu
dC1leHBlY3RlZC50eHQgfCAgIDE5ICsKIFRvb2xzL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHwgICAyNSArKwogLi4uL2F0ay9BY2Nlc3NpYmlsaXR5VUlFbGVt
ZW50QXRrLmNwcCAgICAgICAgICAgICAgfCAgMjMyICsrKysrKystLS0KIC4uLi9hdGsvQWNjZXNz
aWJpbGl0eVVJRWxlbWVudEF0ay5jcHAgICAgICAgICAgICAgIHwgIDE5MyArKysrKystLS0KIDEy
IGZpbGVzIGNoYW5nZWQsIDExNTMgaW5zZXJ0aW9ucygrKSwgMTQyIGRlbGV0aW9ucygtKQogY3Jl
YXRlIG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9hY2Nlc3NpYmlsaXR5L3Rh
YmxlLWRldGVjdGlvbi1leHBlY3RlZC50eHQKIGNyZWF0ZSBtb2RlIDEwMDY0NCBMYXlvdXRUZXN0
cy9wbGF0Zm9ybS9ndGsvYWNjZXNzaWJpbGl0eS90YWJsZS1vbmUtY2VsbC1leHBlY3RlZC50eHQK
IGNyZWF0ZSBtb2RlIDEwMDY0NCBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvYWNjZXNzaWJpbGl0
eS90YWJsZS13aXRoLXJ1bGVzLWV4cGVjdGVkLnR4dAogY3JlYXRlIG1vZGUgMTAwNjQ0IExheW91
dFRlc3RzL3BsYXRmb3JtL2d0ay9hY2Nlc3NpYmlsaXR5L3RyYW5zZm9ybWVkLWVsZW1lbnQtZXhw
ZWN0ZWQudHh0CgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCmluZGV4IDUwMjk3YjYuLjgzOWViNDggMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBA
QAorMjAxMy0wNy0yNiAgTWFyaW8gU2FuY2hleiBQcmFkYSAgPG1hcmlvLnByYWRhQHNhbXN1bmcu
Y29tPgorCisgICAgICAgIFtBVEtdIEltcGxlbWVudCBhbGxBdHRyaWJ1dGVzKCkgZm9yIEFjY2Vz
c2liaWxpdHlVSUVsZW1lbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTExODk2NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFJlbW92ZWQgZml4ZWQgdGVzdHMgZnJvbSBUZXN0RXhwZWN0YXRpb25zIGFuZCBh
ZGRlZC91cGRhdGVkIGV4cGVjdGVkCisgICAgICAgIHJlc3VsdHMgZm9yIHRlc3RzIHRoYXQgYXJl
IG5vdyBkdW1waW5nIG1vcmUgdXNlZnVsIGluZm9ybWF0aW9uLgorCisgICAgICAgICogcGxhdGZv
cm0vZ3RrL1Rlc3RFeHBlY3RhdGlvbnM6IFJlbW92ZWQgZm91ciBmaXhlZCB0ZXN0cy4KKyAgICAg
ICAgKiBwbGF0Zm9ybS9ndGsvYWNjZXNzaWJpbGl0eS9pbWFnZS1saW5rLWV4cGVjdGVkLnR4dDog
VXBkYXRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvYWNjZXNzaWJpbGl0eS90YWJsZS1jZWxs
LXNwYW5zLWV4cGVjdGVkLnR4dDogVXBkYXRlZAorICAgICAgICAqIHBsYXRmb3JtL2d0ay9hY2Nl
c3NpYmlsaXR5L3RhYmxlLWNlbGxzLWV4cGVjdGVkLnR4dDogVXBkYXRlZAorICAgICAgICAqIHBs
YXRmb3JtL2d0ay9hY2Nlc3NpYmlsaXR5L3RhYmxlLWRldGVjdGlvbi1leHBlY3RlZC50eHQ6IEFk
ZGVkLgorICAgICAgICAqIHBsYXRmb3JtL2d0ay9hY2Nlc3NpYmlsaXR5L3RhYmxlLW9uZS1jZWxs
LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vZ3RrL2FjY2Vzc2liaWxp
dHkvdGFibGUtd2l0aC1ydWxlcy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHBsYXRm
b3JtL2d0ay9hY2Nlc3NpYmlsaXR5L3RyYW5zZm9ybWVkLWVsZW1lbnQtZXhwZWN0ZWQudHh0OiBB
ZGRlZC4KKwogMjAxMy0wNy0yMiAgw4Fkw6FtIEthbGxhaSAgPGthZGFtQGluZi51LXN6ZWdlZC5o
dT4KIAogICAgICAgICBbUXRdIFVucmV2aWV3ZWQgZ2FyZGVuaW5nLiBVcGRhdGUgcGxhdGZvcm0g
c3BlY2lmaWMgZXhwZWN0YXRpb25zLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
Z3RrL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvVGVzdEV4cGVj
dGF0aW9ucwppbmRleCBmMGRlZDNiLi43MGZmODhmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9ndGsvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9n
dGsvVGVzdEV4cGVjdGF0aW9ucwpAQCAtNzksMTEgKzc5LDggQEAgd2Via2l0Lm9yZy9iLzk4MzQ4
IGFjY2Vzc2liaWxpdHkvYXJpYS1vcHRpb24tcm9sZS5odG1sIFsgV29udEZpeCBGYWlsdXJlIF0K
IHdlYmtpdC5vcmcvYi85ODM0OCBhY2Nlc3NpYmlsaXR5L2ludGVybmFsLWxpbmstYW5jaG9yczIu
aHRtbCBbIFdvbnRGaXggTWlzc2luZyBdCiB3ZWJraXQub3JnL2IvOTgzNDggYWNjZXNzaWJpbGl0
eS9yYWRpby1idXR0b24tZ3JvdXAtbWVtYmVycy5odG1sIFsgV29udEZpeCBNaXNzaW5nIF0KIHdl
YmtpdC5vcmcvYi85ODM0OCBhY2Nlc3NpYmlsaXR5L3RhYmxlLWF0dHJpYnV0ZXMuaHRtbCBbIFdv
bnRGaXggTWlzc2luZyBdCi13ZWJraXQub3JnL2IvOTgzNDggYWNjZXNzaWJpbGl0eS90YWJsZS1k
ZXRlY3Rpb24uaHRtbCBbIFdvbnRGaXggTWlzc2luZyBdCi13ZWJraXQub3JnL2IvOTgzNDggYWNj
ZXNzaWJpbGl0eS90YWJsZS1vbmUtY2VsbC5odG1sIFsgV29udEZpeCBNaXNzaW5nIF0KIHdlYmtp
dC5vcmcvYi85ODM0OCBhY2Nlc3NpYmlsaXR5L3RhYmxlLXNlY3Rpb25zLmh0bWwgWyBXb250Rml4
IE1pc3NpbmcgXQogd2Via2l0Lm9yZy9iLzk4MzQ4IGFjY2Vzc2liaWxpdHkvdGFibGUtd2l0aC1h
cmlhLXJvbGUuaHRtbCBbIFdvbnRGaXggTWlzc2luZyBdCi13ZWJraXQub3JnL2IvOTgzNDggYWNj
ZXNzaWJpbGl0eS90YWJsZS13aXRoLXJ1bGVzLmh0bWwgWyBXb250Rml4IE1pc3NpbmcgXQogd2Vi
a2l0Lm9yZy9iLzk4MzQ4IGFjY2Vzc2liaWxpdHkvcGx1Z2luLmh0bWwgWyBXb250Rml4IE1pc3Np
bmcgXQogCiAjIEZlYXR1cmUgZGlzYWJsZWQsIHNlZTogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTg1NDI1CkBAIC04NDgsNyArODQ1LDYgQEAgd2Via2l0Lm9yZy9iLzk4
Mzc3IGFjY2Vzc2liaWxpdHkvdGV4dGFyZWEtaW5zZXJ0aW9uLXBvaW50LWxpbmUtbnVtYmVyLmh0
bWwgWyBGYWkKIHdlYmtpdC5vcmcvYi85ODM3OCBhY2Nlc3NpYmlsaXR5L3RleHRhcmVhLWxpbmUt
Zm9yLWluZGV4Lmh0bWwgWyBGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi85ODM3OSBhY2Nlc3NpYmls
aXR5L3RleHRhcmVhLXNlbGVjdGVkLXRleHQtcmFuZ2UuaHRtbCBbIEZhaWx1cmUgXQogd2Via2l0
Lm9yZy9iLzk4MzgwIGFjY2Vzc2liaWxpdHkvdGgtYXMtdGl0bGUtdWkuaHRtbCBbIEZhaWx1cmUg
XQotd2Via2l0Lm9yZy9iLzk4MzgxIGFjY2Vzc2liaWxpdHkvdHJhbnNmb3JtZWQtZWxlbWVudC5o
dG1sIFsgRmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvOTgzODIgYWNjZXNzaWJpbGl0eS92aXNpYmxl
LWVsZW1lbnRzLmh0bWwgWyBGYWlsdXJlIF0KIAogIyBCbHVyIGFuZCBmb2N1cyBldmVudHMgYXJl
IG5vdCByZWNlaXZlZCBmb3IgdGhlIGZvbGxvd2luZyB0ZXN0cy4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3BsYXRmb3JtL2d0ay9hY2Nlc3NpYmlsaXR5L2ltYWdlLWxpbmstZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2FjY2Vzc2liaWxpdHkvaW1hZ2UtbGluay1leHBl
Y3RlZC50eHQKaW5kZXggYjI5ZjMzZi4uNDZkMGQ5NSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vZ3RrL2FjY2Vzc2liaWxpdHkvaW1hZ2UtbGluay1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2FjY2Vzc2liaWxpdHkvaW1hZ2UtbGluay1leHBlY3Rl
ZC50eHQKQEAgLTMsOSArMyw0MiBAQCBJbWFnZSBsaW5rIGluIHRoZSBwcmVzZW5jZSBvZiBpbmxp
bmUgY29udGludWF0aW9ucwogVGhpcyB0ZXN0IGNoZWNrcyB0aGF0IHRoZSByaWdodCBhY2Nlc3Np
YmlsaXR5IHRyZWUgaXMgZ2VuZXJhdGVkIGZvciBhIGxpbmsgaW5zaWRlIGFuIGltYWdlCiAKIAot
aHRtbC1pZDp0ZXN0LCB0b29sa2l0OldlYktpdEd0aworQVhSb2xlOiBBWExpbmsKK0FYUGFyZW50
OiBBWEdyb3VwCitBWENoaWxkcmVuOiAxCitBWFBvc2l0aW9uOiB7IDguMDAwMDAwLCA5OC4wMDAw
MDAgfQorQVhTaXplOiB7IDI4MC4wMDAwMDAsIDIxMy4wMDAwMDAgfQorQVhUaXRsZTogRGVsaWNp
b3VzIGNha2UKK0FYRGVzY3JpcHRpb246IAorQVhWYWx1ZTogPG9iaj4KK0FYRm9jdXNhYmxlOiAx
CitBWEZvY3VzZWQ6IDEKK0FYU2VsZWN0YWJsZTogMAorQVhTZWxlY3RlZDogMAorQVhNdWx0aVNl
bGVjdGFibGU6IDAKK0FYRW5hYmxlZDogMQorQVhFeHBhbmRlZDogMAorQVhSZXF1aXJlZDogMAor
QVhDaGVja2VkOiAwCitBWFBsYXRmb3JtQXR0cmlidXRlczogaHRtbC1pZDp0ZXN0LCB0b29sa2l0
OldlYktpdEd0awogCiBDaGlsZCAwOgotdG9vbGtpdDpXZWJLaXRHdGsKK0FYUm9sZTogQVhJbWFn
ZQorQVhQYXJlbnQ6IEFYTGluaworQVhDaGlsZHJlbjogMAorQVhQb3NpdGlvbjogeyA4LjAwMDAw
MCwgOTkuMDAwMDAwIH0KK0FYU2l6ZTogeyAyODAuMDAwMDAwLCAyMTAuMDAwMDAwIH0KK0FYVGl0
bGU6IERlbGljaW91cyBjYWtlCitBWERlc2NyaXB0aW9uOiBEZWxpY2lvdXMgY2FrZQorQVhGb2N1
c2FibGU6IDAKK0FYRm9jdXNlZDogMAorQVhTZWxlY3RhYmxlOiAwCitBWFNlbGVjdGVkOiAwCitB
WE11bHRpU2VsZWN0YWJsZTogMAorQVhFbmFibGVkOiAxCitBWEV4cGFuZGVkOiAwCitBWFJlcXVp
cmVkOiAwCitBWENoZWNrZWQ6IDAKK0FYUGxhdGZvcm1BdHRyaWJ1dGVzOiB0b29sa2l0OldlYktp
dEd0awogCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9hY2Nlc3NpYmls
aXR5L3RhYmxlLWNlbGwtc3BhbnMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
Z3RrL2FjY2Vzc2liaWxpdHkvdGFibGUtY2VsbC1zcGFucy1leHBlY3RlZC50eHQKaW5kZXggMTk1
NGY4YS4uMjg0NTNkNyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2FjY2Vz
c2liaWxpdHkvdGFibGUtY2VsbC1zcGFucy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vZ3RrL2FjY2Vzc2liaWxpdHkvdGFibGUtY2VsbC1zcGFucy1leHBlY3RlZC50eHQK
QEAgLTgsMjcgKzgsMTEyIEBAIFJPV1NQQU49IjIiCTMsMgkzLDMJMyw0CiA0LDIJNCwzCTQsNAog
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogeyAwLCAwIH0KLXRvb2xraXQ6V2ViS2l0R3RrCitBWFJv
bGU6IEFYQ2VsbAorQVhQYXJlbnQ6IEFYVGFibGUKK0FYQ2hpbGRyZW46IDAKK0FYUG9zaXRpb246
IHsgMTU0LjAwMDAwMCwgOS4wMDAwMDAgfQorQVhTaXplOiB7IDI0Ni4wMDAwMDAsIDc1LjAwMDAw
MCB9CitBWFRpdGxlOiAKK0FYRGVzY3JpcHRpb246IAorQVhWYWx1ZTogQ2VsbCBBPFxuPkNPTFNQ
QU49IjIiPFxuPlJPV1NQQU49IjIiCitBWEZvY3VzYWJsZTogMAorQVhGb2N1c2VkOiAwCitBWFNl
bGVjdGFibGU6IDEKK0FYU2VsZWN0ZWQ6IDAKK0FYTXVsdGlTZWxlY3RhYmxlOiAwCitBWEVuYWJs
ZWQ6IDEKK0FYRXhwYW5kZWQ6IDAKK0FYUmVxdWlyZWQ6IDAKK0FYQ2hlY2tlZDogMAorQVhQbGF0
Zm9ybUF0dHJpYnV0ZXM6IHRvb2xraXQ6V2ViS2l0R3RrCiB7MCwgMn0sIHswLCAyfQogCiAtLS0t
LS0tLS0tLS0tLS0tLS0tLS0tCiB7IDEsIDEgfQotdG9vbGtpdDpXZWJLaXRHdGsKK0FYUm9sZTog
QVhDZWxsCitBWFBhcmVudDogQVhUYWJsZQorQVhDaGlsZHJlbjogMAorQVhQb3NpdGlvbjogeyAx
NTQuMDAwMDAwLCA5LjAwMDAwMCB9CitBWFNpemU6IHsgMjQ2LjAwMDAwMCwgNzUuMDAwMDAwIH0K
K0FYVGl0bGU6IAorQVhEZXNjcmlwdGlvbjogCitBWFZhbHVlOiBDZWxsIEE8XG4+Q09MU1BBTj0i
MiI8XG4+Uk9XU1BBTj0iMiIKK0FYRm9jdXNhYmxlOiAwCitBWEZvY3VzZWQ6IDAKK0FYU2VsZWN0
YWJsZTogMQorQVhTZWxlY3RlZDogMAorQVhNdWx0aVNlbGVjdGFibGU6IDAKK0FYRW5hYmxlZDog
MQorQVhFeHBhbmRlZDogMAorQVhSZXF1aXJlZDogMAorQVhDaGVja2VkOiAwCitBWFBsYXRmb3Jt
QXR0cmlidXRlczogdG9vbGtpdDpXZWJLaXRHdGsKIHswLCAyfSwgezAsIDJ9CiAKIC0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0KIHsgMywgMCB9Ci10b29sa2l0OldlYktpdEd0aworQVhSb2xlOiBBWENl
bGwKK0FYUGFyZW50OiBBWFRhYmxlCitBWENoaWxkcmVuOiAwCitBWFBvc2l0aW9uOiB7IDE0Ny4w
MDAwMDAsIDg0LjAwMDAwMCB9CitBWFNpemU6IHsgMTI0LjAwMDAwMCwgNTguMDAwMDAwIH0KK0FY
VGl0bGU6IAorQVhEZXNjcmlwdGlvbjogCitBWFZhbHVlOiBDZWxsIEM8XG4+Uk9XU1BBTj0iMiIK
K0FYRm9jdXNhYmxlOiAwCitBWEZvY3VzZWQ6IDAKK0FYU2VsZWN0YWJsZTogMQorQVhTZWxlY3Rl
ZDogMAorQVhNdWx0aVNlbGVjdGFibGU6IDAKK0FYRW5hYmxlZDogMQorQVhFeHBhbmRlZDogMAor
QVhSZXF1aXJlZDogMAorQVhDaGVja2VkOiAwCitBWFBsYXRmb3JtQXR0cmlidXRlczogdG9vbGtp
dDpXZWJLaXRHdGsKIHsyLCAyfSwgezAsIDF9CiAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIHsg
MiwgMCB9Ci10b29sa2l0OldlYktpdEd0aworQVhSb2xlOiBBWENlbGwKK0FYUGFyZW50OiBBWFRh
YmxlCitBWENoaWxkcmVuOiAwCitBWFBvc2l0aW9uOiB7IDE0Ny4wMDAwMDAsIDg0LjAwMDAwMCB9
CitBWFNpemU6IHsgMTI0LjAwMDAwMCwgNTguMDAwMDAwIH0KK0FYVGl0bGU6IAorQVhEZXNjcmlw
dGlvbjogCitBWFZhbHVlOiBDZWxsIEM8XG4+Uk9XU1BBTj0iMiIKK0FYRm9jdXNhYmxlOiAwCitB
WEZvY3VzZWQ6IDAKK0FYU2VsZWN0YWJsZTogMQorQVhTZWxlY3RlZDogMAorQVhNdWx0aVNlbGVj
dGFibGU6IDAKK0FYRW5hYmxlZDogMQorQVhFeHBhbmRlZDogMAorQVhSZXF1aXJlZDogMAorQVhD
aGVja2VkOiAwCitBWFBsYXRmb3JtQXR0cmlidXRlczogdG9vbGtpdDpXZWJLaXRHdGsKIHsyLCAy
fSwgezAsIDF9CiAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIHsgMiwgMyB9Ci10b29sa2l0Oldl
YktpdEd0aworQVhSb2xlOiBBWENlbGwKK0FYUGFyZW50OiBBWFRhYmxlCitBWENoaWxkcmVuOiAw
CitBWFBvc2l0aW9uOiB7IDUxNi4wMDAwMDAsIDg0LjAwMDAwMCB9CitBWFNpemU6IHsgMTI0LjAw
MDAwMCwgMjkuMDAwMDAwIH0KK0FYVGl0bGU6IAorQVhEZXNjcmlwdGlvbjogCitBWFZhbHVlOiAz
LDQKK0FYRm9jdXNhYmxlOiAwCitBWEZvY3VzZWQ6IDAKK0FYU2VsZWN0YWJsZTogMQorQVhTZWxl
Y3RlZDogMAorQVhNdWx0aVNlbGVjdGFibGU6IDAKK0FYRW5hYmxlZDogMQorQVhFeHBhbmRlZDog
MAorQVhSZXF1aXJlZDogMAorQVhDaGVja2VkOiAwCitBWFBsYXRmb3JtQXR0cmlidXRlczogdG9v
bGtpdDpXZWJLaXRHdGsKIHsyLCAxfSwgezMsIDF9CiAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9hY2Nlc3NpYmlsaXR5L3RhYmxl
LWNlbGxzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9hY2Nlc3NpYmls
aXR5L3RhYmxlLWNlbGxzLWV4cGVjdGVkLnR4dAppbmRleCBlY2JjN2E3Li45YjViMzkyIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvYWNjZXNzaWJpbGl0eS90YWJsZS1jZWxs
cy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2FjY2Vzc2liaWxp
dHkvdGFibGUtY2VsbHMtZXhwZWN0ZWQudHh0CkBAIC0xMCwxOSArMTAsMTA0IEBAIFNvdXRoCTMz
MzMJMTExMQkyMjIyCiBTb3V0aAkzMzMzCTExMTEJMjIyMgogLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tCiBbMCwwXQotdG9vbGtpdDpXZWJLaXRHdGsKK0FYUm9sZTogQVhDZWxsCitBWFBhcmVudDog
QVhUYWJsZQorQVhDaGlsZHJlbjogMAorQVhQb3NpdGlvbjogeyAyMzUuMDAwMDAwLCAyNi4wMDAw
MDAgfQorQVhTaXplOiB7IDE0NC4wMDAwMDAsIDYzLjAwMDAwMCB9CitBWFRpdGxlOiAKK0FYRGVz
Y3JpcHRpb246IAorQVhWYWx1ZTogUnVyaXRhbmlhbjxcbj5Qb3B1bGF0aW9uIDxcbj5TdXJ2ZXkK
K0FYRm9jdXNhYmxlOiAwCitBWEZvY3VzZWQ6IDAKK0FYU2VsZWN0YWJsZTogMQorQVhTZWxlY3Rl
ZDogMAorQVhNdWx0aVNlbGVjdGFibGU6IDAKK0FYRW5hYmxlZDogMQorQVhFeHBhbmRlZDogMAor
QVhSZXF1aXJlZDogMAorQVhDaGVja2VkOiAwCitBWFBsYXRmb3JtQXR0cmlidXRlczogdG9vbGtp
dDpXZWJLaXRHdGsKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogWzMsMV0KLXRvb2xraXQ6V2Vi
S2l0R3RrCitBWFJvbGU6IEFYQ2VsbAorQVhQYXJlbnQ6IEFYVGFibGUKK0FYQ2hpbGRyZW46IDAK
K0FYUG9zaXRpb246IHsgNDQ3LjAwMDAwMCwgNTUuMDAwMDAwIH0KK0FYU2l6ZTogeyA1My4wMDAw
MDAsIDM0LjAwMDAwMCB9CitBWFRpdGxlOiAKK0FYRGVzY3JpcHRpb246IAorQVhWYWx1ZTogTWFs
ZXMKK0FYRm9jdXNhYmxlOiAwCitBWEZvY3VzZWQ6IDAKK0FYU2VsZWN0YWJsZTogMQorQVhTZWxl
Y3RlZDogMAorQVhNdWx0aVNlbGVjdGFibGU6IDAKK0FYRW5hYmxlZDogMQorQVhFeHBhbmRlZDog
MAorQVhSZXF1aXJlZDogMAorQVhDaGVja2VkOiAwCitBWFBsYXRmb3JtQXR0cmlidXRlczogdG9v
bGtpdDpXZWJLaXRHdGsKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogWzEsMV0KLXRvb2xraXQ6
V2ViS2l0R3RrCitBWFJvbGU6IEFYQ2VsbAorQVhQYXJlbnQ6IEFYVGFibGUKK0FYQ2hpbGRyZW46
IDAKK0FYUG9zaXRpb246IHsgMjI3LjAwMDAwMCwgMjYuMDAwMDAwIH0KK0FYU2l6ZTogeyAxNDMu
MDAwMDAwLCA2My4wMDAwMDAgfQorQVhUaXRsZTogCitBWERlc2NyaXB0aW9uOiAKK0FYVmFsdWU6
IFJ1cml0YW5pYW48XG4+UG9wdWxhdGlvbiA8XG4+U3VydmV5CitBWEZvY3VzYWJsZTogMAorQVhG
b2N1c2VkOiAwCitBWFNlbGVjdGFibGU6IDEKK0FYU2VsZWN0ZWQ6IDAKK0FYTXVsdGlTZWxlY3Rh
YmxlOiAwCitBWEVuYWJsZWQ6IDEKK0FYRXhwYW5kZWQ6IDAKK0FYUmVxdWlyZWQ6IDAKK0FYQ2hl
Y2tlZDogMAorQVhQbGF0Zm9ybUF0dHJpYnV0ZXM6IHRvb2xraXQ6V2ViS2l0R3RrCiAtLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0KIFsyLDJdCi10b29sa2l0OldlYktpdEd0aworQVhSb2xlOiBBWENl
bGwKK0FYUGFyZW50OiBBWFRhYmxlCitBWENoaWxkcmVuOiAwCitBWFBvc2l0aW9uOiB7IDM3MC4w
MDAwMDAsIDg5LjAwMDAwMCB9CitBWFNpemU6IHsgNjkuMDAwMDAwLCAyOS4wMDAwMDAgfQorQVhU
aXRsZTogCitBWERlc2NyaXB0aW9uOiAKK0FYVmFsdWU6IDMzMzMKK0FYRm9jdXNhYmxlOiAwCitB
WEZvY3VzZWQ6IDAKK0FYU2VsZWN0YWJsZTogMQorQVhTZWxlY3RlZDogMAorQVhNdWx0aVNlbGVj
dGFibGU6IDAKK0FYRW5hYmxlZDogMQorQVhFeHBhbmRlZDogMAorQVhSZXF1aXJlZDogMAorQVhD
aGVja2VkOiAwCitBWFBsYXRmb3JtQXR0cmlidXRlczogdG9vbGtpdDpXZWJLaXRHdGsKIC0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLQogWzMsNV0KLXRvb2xraXQ6V2ViS2l0R3RrCitBWFJvbGU6IEFY
Q2VsbAorQVhQYXJlbnQ6IEFYVGFibGUKK0FYQ2hpbGRyZW46IDAKK0FYUG9zaXRpb246IHsgNDM5
LjAwMDAwMCwgMTc2LjAwMDAwMCB9CitBWFNpemU6IHsgNTIuMDAwMDAwLCAyOS4wMDAwMDAgfQor
QVhUaXRsZTogCitBWERlc2NyaXB0aW9uOiAKK0FYVmFsdWU6IDExMTEKK0FYRm9jdXNhYmxlOiAw
CitBWEZvY3VzZWQ6IDAKK0FYU2VsZWN0YWJsZTogMQorQVhTZWxlY3RlZDogMAorQVhNdWx0aVNl
bGVjdGFibGU6IDAKK0FYRW5hYmxlZDogMQorQVhFeHBhbmRlZDogMAorQVhSZXF1aXJlZDogMAor
QVhDaGVja2VkOiAwCitBWFBsYXRmb3JtQXR0cmlidXRlczogdG9vbGtpdDpXZWJLaXRHdGsKIC0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogWzEwMCwwXQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9ndGsvYWNjZXNzaWJpbGl0eS90YWJsZS1kZXRlY3Rpb24tZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2FjY2Vzc2liaWxpdHkvdGFibGUtZGV0ZWN0aW9u
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43NWYxZDcy
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2FjY2Vzc2liaWxp
dHkvdGFibGUtZGV0ZWN0aW9uLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDQ1NyBAQAorCitUaGlz
IHNob3VsZCBiZSBhIHRhYmxlIGJlY2F1c2UgaXQgaGFzIGEgdGhlYWQuCisKK0FYUm9sZTogQVhU
YWJsZQorQVhQYXJlbnQ6IEFYV2ViQXJlYQorQVhDaGlsZHJlbjogNAorQVhQb3NpdGlvbjogeyA4
LjAwMDAwMCwgNTQuMDAwMDAwIH0KK0FYU2l6ZTogeyA2Mi4wMDAwMDAsIDQ3LjAwMDAwMCB9CitB
WFRpdGxlOiAKK0FYRGVzY3JpcHRpb246IAorQVhGb2N1c2FibGU6IDAKK0FYRm9jdXNlZDogMAor
QVhTZWxlY3RhYmxlOiAwCitBWFNlbGVjdGVkOiAwCitBWE11bHRpU2VsZWN0YWJsZTogMAorQVhF
bmFibGVkOiAxCitBWEV4cGFuZGVkOiAwCitBWFJlcXVpcmVkOiAwCitBWENoZWNrZWQ6IDAKK0FY
UGxhdGZvcm1BdHRyaWJ1dGVzOiB0b29sa2l0OldlYktpdEd0aworCithc2RmCWFzZGYKK2FzZGYJ
YXNkZgorCitUaGlzIHNob3VsZCBiZSBhIHRhYmxlIGJlY2F1c2UgY2VsbHMgaGF2ZSBib3JkZXJz
LgorCitBWFJvbGU6IEFYVGFibGUKK0FYUGFyZW50OiBBWFdlYkFyZWEKK0FYQ2hpbGRyZW46IDIK
K0FYUG9zaXRpb246IHsgOC4wMDAwMDAsIDQ4Ni4wMDAwMDAgfQorQVhTaXplOiB7IDY4LjAwMDAw
MCwgMjguMDAwMDAwIH0KK0FYVGl0bGU6IAorQVhEZXNjcmlwdGlvbjogCitBWEZvY3VzYWJsZTog
MAorQVhGb2N1c2VkOiAwCitBWFNlbGVjdGFibGU6IDAKK0FYU2VsZWN0ZWQ6IDAKK0FYTXVsdGlT
ZWxlY3RhYmxlOiAwCitBWEVuYWJsZWQ6IDEKK0FYRXhwYW5kZWQ6IDAKK0FYUmVxdWlyZWQ6IDAK
K0FYQ2hlY2tlZDogMAorQVhQbGF0Zm9ybUF0dHJpYnV0ZXM6IHRvb2xraXQ6V2ViS2l0R3RrCisK
K2FzZGYJYXNkZgorCitUaGlzIHNob3VsZCBub3QgYmUgYSB0YWJsZSBiZWNhdXNlIGl0cyBjZWxs
cyBkbyBub3QgaGF2ZSBib3JkZXJzLgorCitBWFJvbGU6IEFYVGFibGUKK0FYUGFyZW50OiBBWFdl
YkFyZWEKK0FYQ2hpbGRyZW46IDIKK0FYUG9zaXRpb246IHsgOC4wMDAwMDAsIDMzMi4wMDAwMDAg
fQorQVhTaXplOiB7IDY0LjAwMDAwMCwgMjYuMDAwMDAwIH0KK0FYVGl0bGU6IAorQVhEZXNjcmlw
dGlvbjogCitBWEZvY3VzYWJsZTogMAorQVhGb2N1c2VkOiAwCitBWFNlbGVjdGFibGU6IDAKK0FY
U2VsZWN0ZWQ6IDAKK0FYTXVsdGlTZWxlY3RhYmxlOiAwCitBWEVuYWJsZWQ6IDEKK0FYRXhwYW5k
ZWQ6IDAKK0FYUmVxdWlyZWQ6IDAKK0FYQ2hlY2tlZDogMAorQVhQbGF0Zm9ybUF0dHJpYnV0ZXM6
IGxheW91dC1ndWVzczp0cnVlLCB0b29sa2l0OldlYktpdEd0aworCithc2RmCWFzZGYKKworVGhp
cyBzaG91bGQgYmUgYSB0YWJsZSBiZWNhdXNlIGEgY2VsbCBoYXMgYSBzcGVjaWFsIGF0dHJpYnV0
ZQorCitBWFJvbGU6IEFYVGFibGUKK0FYUGFyZW50OiBBWFdlYkFyZWEKK0FYQ2hpbGRyZW46IDIK
K0FYUG9zaXRpb246IHsgOC4wMDAwMDAsIDMzMy4wMDAwMDAgfQorQVhTaXplOiB7IDU4LjAwMDAw
MCwgMjIuMDAwMDAwIH0KK0FYVGl0bGU6IAorQVhEZXNjcmlwdGlvbjogCitBWEZvY3VzYWJsZTog
MAorQVhGb2N1c2VkOiAwCitBWFNlbGVjdGFibGU6IDAKK0FYU2VsZWN0ZWQ6IDAKK0FYTXVsdGlT
ZWxlY3RhYmxlOiAwCitBWEVuYWJsZWQ6IDEKK0FYRXhwYW5kZWQ6IDAKK0FYUmVxdWlyZWQ6IDAK
K0FYQ2hlY2tlZDogMAorQVhQbGF0Zm9ybUF0dHJpYnV0ZXM6IHRvb2xraXQ6V2ViS2l0R3RrCisK
K2FzZGYJYXNkZgorCitUaGlzIHNob3VsZCBiZSBhIHRhYmxlIGJlY2F1c2UgYSBjZWxsIGhhcyBh
IHNwZWNpYWwgYXR0cmlidXRlLgorCitBWFJvbGU6IEFYVGFibGUKK0FYUGFyZW50OiBBWFdlYkFy
ZWEKK0FYQ2hpbGRyZW46IDIKK0FYUG9zaXRpb246IHsgOC4wMDAwMDAsIDMzMy4wMDAwMDAgfQor
QVhTaXplOiB7IDU4LjAwMDAwMCwgMjIuMDAwMDAwIH0KK0FYVGl0bGU6IAorQVhEZXNjcmlwdGlv
bjogCitBWEZvY3VzYWJsZTogMAorQVhGb2N1c2VkOiAwCitBWFNlbGVjdGFibGU6IDAKK0FYU2Vs
ZWN0ZWQ6IDAKK0FYTXVsdGlTZWxlY3RhYmxlOiAwCitBWEVuYWJsZWQ6IDEKK0FYRXhwYW5kZWQ6
IDAKK0FYUmVxdWlyZWQ6IDAKK0FYQ2hlY2tlZDogMAorQVhQbGF0Zm9ybUF0dHJpYnV0ZXM6IHRv
b2xraXQ6V2ViS2l0R3RrCisKK2FzZGYJYXNkZgorCitUaGlzIHNob3VsZCBiZSBhIHRhYmxlIGJl
Y2F1c2UgYSBjZWxsIGhhcyBhIHNwZWNpYWwgYXR0cmlidXRlLgorCitBWFJvbGU6IEFYVGFibGUK
K0FYUGFyZW50OiBBWFdlYkFyZWEKK0FYQ2hpbGRyZW46IDQKK0FYUG9zaXRpb246IHsgOC4wMDAw
MDAsIDMzMy4wMDAwMDAgfQorQVhTaXplOiB7IDU4LjAwMDAwMCwgNDEuMDAwMDAwIH0KK0FYVGl0
bGU6IAorQVhEZXNjcmlwdGlvbjogCitBWEZvY3VzYWJsZTogMAorQVhGb2N1c2VkOiAwCitBWFNl
bGVjdGFibGU6IDAKK0FYU2VsZWN0ZWQ6IDAKK0FYTXVsdGlTZWxlY3RhYmxlOiAwCitBWEVuYWJs
ZWQ6IDEKK0FYRXhwYW5kZWQ6IDAKK0FYUmVxdWlyZWQ6IDAKK0FYQ2hlY2tlZDogMAorQVhQbGF0
Zm9ybUF0dHJpYnV0ZXM6IHRvb2xraXQ6V2ViS2l0R3RrCisKK2FzZGYJYXNkZgorYXNkZglhc2Rm
CisKK1RoaXMgc2hvdWxkIGJlIGEgdGFibGUgYmVjYXVzZSBjZWxscyBoYXZlIGRpZmZlcmVudCBj
b2xvcnMuCisKK0FYUm9sZTogQVhUYWJsZQorQVhQYXJlbnQ6IEFYV2ViQXJlYQorQVhDaGlsZHJl
bjogMgorQVhQb3NpdGlvbjogeyA4LjAwMDAwMCwgMzMzLjAwMDAwMCB9CitBWFNpemU6IHsgNTgu
MDAwMDAwLCAyMi4wMDAwMDAgfQorQVhUaXRsZTogCitBWERlc2NyaXB0aW9uOiAKK0FYRm9jdXNh
YmxlOiAwCitBWEZvY3VzZWQ6IDAKK0FYU2VsZWN0YWJsZTogMAorQVhTZWxlY3RlZDogMAorQVhN
dWx0aVNlbGVjdGFibGU6IDAKK0FYRW5hYmxlZDogMQorQVhFeHBhbmRlZDogMAorQVhSZXF1aXJl
ZDogMAorQVhDaGVja2VkOiAwCitBWFBsYXRmb3JtQXR0cmlidXRlczogdG9vbGtpdDpXZWJLaXRH
dGsKKworYXNkZglhc2RmCisKK1RoaXMgc2hvdWxkIG5vdCBiZSBhIHRhYmxlIGJlY2F1c2UgY2Vs
bHMgaGF2ZSBkaWZmZXJlbnQgYnV0IG5vIHNwYWNpbmcuCisKK0FYUm9sZTogQVhUYWJsZQorQVhQ
YXJlbnQ6IEFYV2ViQXJlYQorQVhDaGlsZHJlbjogMgorQVhQb3NpdGlvbjogeyA4LjAwMDAwMCwg
MzMzLjAwMDAwMCB9CitBWFNpemU6IHsgNTIuMDAwMDAwLCAxOC4wMDAwMDAgfQorQVhUaXRsZTog
CitBWERlc2NyaXB0aW9uOiAKK0FYRm9jdXNhYmxlOiAwCitBWEZvY3VzZWQ6IDAKK0FYU2VsZWN0
YWJsZTogMAorQVhTZWxlY3RlZDogMAorQVhNdWx0aVNlbGVjdGFibGU6IDAKK0FYRW5hYmxlZDog
MQorQVhFeHBhbmRlZDogMAorQVhSZXF1aXJlZDogMAorQVhDaGVja2VkOiAwCitBWFBsYXRmb3Jt
QXR0cmlidXRlczogbGF5b3V0LWd1ZXNzOnRydWUsIHRvb2xraXQ6V2ViS2l0R3RrCisKK2FzZGYJ
YXNkZgorCitUaGlzIHNob3VsZCBub3QgYmUgYSB0YWJsZSBiZWNhdXNlIGNlbGxzIGhhdmUgdGhl
IHNhbWUgY29sb3JzIGV2ZW4gdGhvdWdoIHRoZXJlIGlzIHNwYWNpbmcuCisKK0FYUm9sZTogQVhU
YWJsZQorQVhQYXJlbnQ6IEFYV2ViQXJlYQorQVhDaGlsZHJlbjogMgorQVhQb3NpdGlvbjogeyA4
LjAwMDAwMCwgMzQ2LjAwMDAwMCB9CitBWFNpemU6IHsgNjEuMDAwMDAwLCAyNC4wMDAwMDAgfQor
QVhUaXRsZTogCitBWERlc2NyaXB0aW9uOiAKK0FYRm9jdXNhYmxlOiAwCitBWEZvY3VzZWQ6IDAK
K0FYU2VsZWN0YWJsZTogMAorQVhTZWxlY3RlZDogMAorQVhNdWx0aVNlbGVjdGFibGU6IDAKK0FY
RW5hYmxlZDogMQorQVhFeHBhbmRlZDogMAorQVhSZXF1aXJlZDogMAorQVhDaGVja2VkOiAwCitB
WFBsYXRmb3JtQXR0cmlidXRlczogbGF5b3V0LWd1ZXNzOnRydWUsIHRvb2xraXQ6V2ViS2l0R3Rr
CisKK2FzZGYJYXNkZgorCitUaGlzIHNob3VsZCBiZSBhIHRhYmxlIGJlY2F1c2UgaXQgaGFzIHRo
ZSAicnVsZXMiIGF0dHIuCisKK0FYUm9sZTogQVhUYWJsZQorQVhQYXJlbnQ6IEFYV2ViQXJlYQor
QVhDaGlsZHJlbjogMgorQVhQb3NpdGlvbjogeyA4LjAwMDAwMCwgMzMzLjAwMDAwMCB9CitBWFNp
emU6IHsgNTMuMDAwMDAwLCAxOC4wMDAwMDAgfQorQVhUaXRsZTogCitBWERlc2NyaXB0aW9uOiAK
K0FYRm9jdXNhYmxlOiAwCitBWEZvY3VzZWQ6IDAKK0FYU2VsZWN0YWJsZTogMAorQVhTZWxlY3Rl
ZDogMAorQVhNdWx0aVNlbGVjdGFibGU6IDAKK0FYRW5hYmxlZDogMQorQVhFeHBhbmRlZDogMAor
QVhSZXF1aXJlZDogMAorQVhDaGVja2VkOiAwCitBWFBsYXRmb3JtQXR0cmlidXRlczogdG9vbGtp
dDpXZWJLaXRHdGsKKworYXNkZglhc2RmCisKK1RoaXMgc2hvdWxkIG5vdCBiZSBhIHRhYmxlIGJl
Y2F1c2UgaXQgb25seSBoYXMgb25lIHZhbGlkIGNlbGwgKG5lZWQgbW9yZSB0aGFuIG9uZSkuCisK
K0FYUm9sZTogQVhUYWJsZQorQVhQYXJlbnQ6IEFYV2ViQXJlYQorQVhDaGlsZHJlbjogMgorQVhQ
b3NpdGlvbjogeyA4LjAwMDAwMCwgMzQ2LjAwMDAwMCB9CitBWFNpemU6IHsgNzY5LjAwMDAwMCwg
MjYuMDAwMDAwIH0KK0FYVGl0bGU6IAorQVhEZXNjcmlwdGlvbjogCitBWEZvY3VzYWJsZTogMAor
QVhGb2N1c2VkOiAwCitBWFNlbGVjdGFibGU6IDAKK0FYU2VsZWN0ZWQ6IDAKK0FYTXVsdGlTZWxl
Y3RhYmxlOiAwCitBWEVuYWJsZWQ6IDEKK0FYRXhwYW5kZWQ6IDAKK0FYUmVxdWlyZWQ6IDAKK0FY
Q2hlY2tlZDogMAorQVhQbGF0Zm9ybUF0dHJpYnV0ZXM6IGxheW91dC1ndWVzczp0cnVlLCB0b29s
a2l0OldlYktpdEd0aworCitDb250cmlidXRpb25zCisKK1RoaXMgc2hvdWxkIG5vdCBiZSBhIHRh
YmxlIGJlY2F1c2UgaXQgZG9lcyBub3QgaGF2ZSBlbm91Z2ggY2VsbCBib3JkZXJzIG9yIGJhY2tn
cm91bmQgY29sb3JzCisKK0FYUm9sZTogQVhUYWJsZQorQVhQYXJlbnQ6IEFYV2ViQXJlYQorQVhD
aGlsZHJlbjogNworQVhQb3NpdGlvbjogeyA4LjAwMDAwMCwgMzQ2LjAwMDAwMCB9CitBWFNpemU6
IHsgMTMwLjAwMDAwMCwgODYuMDAwMDAwIH0KK0FYVGl0bGU6IAorQVhEZXNjcmlwdGlvbjogCitB
WEZvY3VzYWJsZTogMAorQVhGb2N1c2VkOiAwCitBWFNlbGVjdGFibGU6IDAKK0FYU2VsZWN0ZWQ6
IDAKK0FYTXVsdGlTZWxlY3RhYmxlOiAwCitBWEVuYWJsZWQ6IDEKK0FYRXhwYW5kZWQ6IDAKK0FY
UmVxdWlyZWQ6IDAKK0FYQ2hlY2tlZDogMAorQVhQbGF0Zm9ybUF0dHJpYnV0ZXM6IGxheW91dC1n
dWVzczp0cnVlLCB0b29sa2l0OldlYktpdEd0aworCitQb2xpdGljcworRGVjaXNpb24gJzA4CitU
aGUgZGViYXRlcworVGhlIFdoaXRlIEhvdXNlCitDYXBpdG9sIEhpbGwKK05hdGlvbmFsIEpvdXJu
YWwKK05ldyBZb3JrIFRpbWVzCisKK1RoaXMgc2hvdWxkIGJlIGEgdGFibGUgYmVjYXVzZSBpdCdz
IGVkaXRhYmxlLgorCitBWFJvbGU6IEFYVGFibGUKK0FYUGFyZW50OiBBWFdlYkFyZWEKK0FYQ2hp
bGRyZW46IDIKK0FYUG9zaXRpb246IHsgOC4wMDAwMDAsIDMzMy4wMDAwMDAgfQorQVhTaXplOiB7
IDY0LjAwMDAwMCwgMjYuMDAwMDAwIH0KK0FYVGl0bGU6IAorQVhEZXNjcmlwdGlvbjogCitBWEZv
Y3VzYWJsZTogMQorQVhGb2N1c2VkOiAwCitBWFNlbGVjdGFibGU6IDAKK0FYU2VsZWN0ZWQ6IDAK
K0FYTXVsdGlTZWxlY3RhYmxlOiAwCitBWEVuYWJsZWQ6IDEKK0FYRXhwYW5kZWQ6IDAKK0FYUmVx
dWlyZWQ6IDAKK0FYQ2hlY2tlZDogMAorQVhQbGF0Zm9ybUF0dHJpYnV0ZXM6IHRvb2xraXQ6V2Vi
S2l0R3RrCisKK2FzZGYJYXNkZgorCitUaGlzIHNob3VsZCBiZSBhIHRhYmxlIGJlY2F1c2UgbW9z
dCBjZWxscyBoYXZlIGEgdG9wIGJvcmRlci4KKworQVhSb2xlOiBBWFRhYmxlCitBWFBhcmVudDog
QVhXZWJBcmVhCitBWENoaWxkcmVuOiA0CitBWFBvc2l0aW9uOiB7IDguMDAwMDAwLCAzMzMuMDAw
MDAwIH0KK0FYU2l6ZTogeyA2Mi4wMDAwMDAsIDQ3LjAwMDAwMCB9CitBWFRpdGxlOiAKK0FYRGVz
Y3JpcHRpb246IAorQVhGb2N1c2FibGU6IDAKK0FYRm9jdXNlZDogMAorQVhTZWxlY3RhYmxlOiAw
CitBWFNlbGVjdGVkOiAwCitBWE11bHRpU2VsZWN0YWJsZTogMAorQVhFbmFibGVkOiAxCitBWEV4
cGFuZGVkOiAwCitBWFJlcXVpcmVkOiAwCitBWENoZWNrZWQ6IDAKK0FYUGxhdGZvcm1BdHRyaWJ1
dGVzOiB0b29sa2l0OldlYktpdEd0aworCithc2RmCWFzZGYKK2FzZGYJYXNkZgorCitUaGlzIHNo
b3VsZCBub3QgYmUgYSB0YWJsZSBiZWNhdXNlIGNlbGxzIGhhdmUgZGlmZmVyZW50IGJvcmRlcnMu
CisKK0FYUm9sZTogQVhUYWJsZQorQVhQYXJlbnQ6IEFYV2ViQXJlYQorQVhDaGlsZHJlbjogNAor
QVhQb3NpdGlvbjogeyA4LjAwMDAwMCwgMzMzLjAwMDAwMCB9CitBWFNpemU6IHsgNjIuMDAwMDAw
LCA0NS4wMDAwMDAgfQorQVhUaXRsZTogCitBWERlc2NyaXB0aW9uOiAKK0FYRm9jdXNhYmxlOiAw
CitBWEZvY3VzZWQ6IDAKK0FYU2VsZWN0YWJsZTogMAorQVhTZWxlY3RlZDogMAorQVhNdWx0aVNl
bGVjdGFibGU6IDAKK0FYRW5hYmxlZDogMQorQVhFeHBhbmRlZDogMAorQVhSZXF1aXJlZDogMAor
QVhDaGVja2VkOiAwCitBWFBsYXRmb3JtQXR0cmlidXRlczogbGF5b3V0LWd1ZXNzOnRydWUsIHRv
b2xraXQ6V2ViS2l0R3RrCisKK2FzZGYJYXNkZgorYXNkZglhc2RmCisKK1RoaXMgc2hvdWxkIGJl
IGEgdGFibGUgYmVjYXVzZSBpdCBzZXRzIGVtcHR5LWNlbGxzOiBoaWRlIG9uIHRoZSB0YWJsZS4K
KworQVhSb2xlOiBBWFRhYmxlCitBWFBhcmVudDogQVhXZWJBcmVhCitBWENoaWxkcmVuOiA2CitB
WFBvc2l0aW9uOiB7IDguMDAwMDAwLCAzMzMuMDAwMDAwIH0KK0FYU2l6ZTogeyA2NC4wMDAwMDAs
IDY3LjAwMDAwMCB9CitBWFRpdGxlOiAKK0FYRGVzY3JpcHRpb246IAorQVhGb2N1c2FibGU6IDAK
K0FYRm9jdXNlZDogMAorQVhTZWxlY3RhYmxlOiAwCitBWFNlbGVjdGVkOiAwCitBWE11bHRpU2Vs
ZWN0YWJsZTogMAorQVhFbmFibGVkOiAxCitBWEV4cGFuZGVkOiAwCitBWFJlcXVpcmVkOiAwCitB
WENoZWNrZWQ6IDAKK0FYUGxhdGZvcm1BdHRyaWJ1dGVzOiB0b29sa2l0OldlYktpdEd0aworCith
c2RmCWFzZGYKK2FzZGYKK2FzZGYJYXNkZgorCitUaGlzIHNob3VsZCBiZSBhIHRhYmxlIGJlY2F1
c2UgaXQgc2V0cyBlbXB0eS1jZWxsczogaGlkZSBvbiBhIGNlbGwuCisKK0FYUm9sZTogQVhUYWJs
ZQorQVhQYXJlbnQ6IEFYV2ViQXJlYQorQVhDaGlsZHJlbjogNgorQVhQb3NpdGlvbjogeyA4LjAw
MDAwMCwgMzMzLjAwMDAwMCB9CitBWFNpemU6IHsgNjQuMDAwMDAwLCA2OC4wMDAwMDAgfQorQVhU
aXRsZTogCitBWERlc2NyaXB0aW9uOiAKK0FYRm9jdXNhYmxlOiAwCitBWEZvY3VzZWQ6IDAKK0FY
U2VsZWN0YWJsZTogMAorQVhTZWxlY3RlZDogMAorQVhNdWx0aVNlbGVjdGFibGU6IDAKK0FYRW5h
YmxlZDogMQorQVhFeHBhbmRlZDogMAorQVhSZXF1aXJlZDogMAorQVhDaGVja2VkOiAwCitBWFBs
YXRmb3JtQXR0cmlidXRlczogdG9vbGtpdDpXZWJLaXRHdGsKKworYXNkZglhc2RmCithc2RmCith
c2RmCWFzZGYKKworVGhpcyBzaG91bGQgYmUgYSB0YWJsZSBiZWNhdXNlIGl0IGhhcyBhIGNvbC4K
KworQVhSb2xlOiBBWFRhYmxlCitBWFBhcmVudDogQVhXZWJBcmVhCitBWENoaWxkcmVuOiA0CitB
WFBvc2l0aW9uOiB7IDguMDAwMDAwLCAzMzMuMDAwMDAwIH0KK0FYU2l6ZTogeyA2Mi4wMDAwMDAs
IDQ1LjAwMDAwMCB9CitBWFRpdGxlOiAKK0FYRGVzY3JpcHRpb246IAorQVhGb2N1c2FibGU6IDAK
K0FYRm9jdXNlZDogMAorQVhTZWxlY3RhYmxlOiAwCitBWFNlbGVjdGVkOiAwCitBWE11bHRpU2Vs
ZWN0YWJsZTogMAorQVhFbmFibGVkOiAxCitBWEV4cGFuZGVkOiAwCitBWFJlcXVpcmVkOiAwCitB
WENoZWNrZWQ6IDAKK0FYUGxhdGZvcm1BdHRyaWJ1dGVzOiB0b29sa2l0OldlYktpdEd0aworCith
c2RmCWFzZGYKK2FzZGYJYXNkZgorCitUaGlzIHNob3VsZCBiZSBhIHRhYmxlIGJlY2F1c2UgaXQg
aGFzIGF0IGxlYXN0IDIwIHJvd3MKKworQVhSb2xlOiBBWFRhYmxlCitBWFBhcmVudDogQVhXZWJB
cmVhCitBWENoaWxkcmVuOiAyNAorQVhQb3NpdGlvbjogeyA4LjAwMDAwMCwgMzMyLjAwMDAwMCB9
CitBWFNpemU6IHsgMzIuMDAwMDAwLCA1MDcuMDAwMDAwIH0KK0FYVGl0bGU6IAorQVhEZXNjcmlw
dGlvbjogCitBWEZvY3VzYWJsZTogMAorQVhGb2N1c2VkOiAwCitBWFNlbGVjdGFibGU6IDAKK0FY
U2VsZWN0ZWQ6IDAKK0FYTXVsdGlTZWxlY3RhYmxlOiAwCitBWEVuYWJsZWQ6IDEKK0FYRXhwYW5k
ZWQ6IDAKK0FYUmVxdWlyZWQ6IDAKK0FYQ2hlY2tlZDogMAorQVhQbGF0Zm9ybUF0dHJpYnV0ZXM6
IHRvb2xraXQ6V2ViS2l0R3RrCisKK2FzZGYKK2FzZGYKK2FzZGYKK2FzZGYKK2FzZGYKK2FzZGYK
K2FzZGYKK2FzZGYKK2FzZGYKK2FzZGYKK2FzZGYKK2FzZGYKK2FzZGYKK2FzZGYKK2FzZGYKK2Fz
ZGYKK2FzZGYKK2FzZGYKK2FzZGYKK2FzZGYKK2FzZGYKK2FzZGYKK2FzZGYKK2FzZGYKKwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2FjY2Vzc2liaWxpdHkvdGFibGUtb25l
LWNlbGwtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2FjY2Vzc2liaWxp
dHkvdGFibGUtb25lLWNlbGwtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAuLjAyNjc4YjUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9ndGsvYWNjZXNzaWJpbGl0eS90YWJsZS1vbmUtY2VsbC1leHBlY3RlZC50eHQKQEAgLTAsMCAr
MSwyMCBAQAorUGljayBZb3VyIExvY2F0aW9uIQorR2V0IHNwZWNpZmljIGNvbnRlbnQgZm9yIHlv
dXIgYXJlYS4gCitodHRwOi8vd2ViLmFwcGxlLmNvbQorQVhSb2xlOiBBWFRhYmxlCitBWFBhcmVu
dDogQVhXZWJBcmVhCitBWENoaWxkcmVuOiAxCitBWFBvc2l0aW9uOiB7IDguMDAwMDAwLCA4LjAw
MDAwMCB9CitBWFNpemU6IHsgMTM4LjAwMDAwMCwgOTEuMDAwMDAwIH0KK0FYVGl0bGU6IAorQVhE
ZXNjcmlwdGlvbjogCitBWEZvY3VzYWJsZTogMAorQVhGb2N1c2VkOiAwCitBWFNlbGVjdGFibGU6
IDAKK0FYU2VsZWN0ZWQ6IDAKK0FYTXVsdGlTZWxlY3RhYmxlOiAwCitBWEVuYWJsZWQ6IDEKK0FY
RXhwYW5kZWQ6IDAKK0FYUmVxdWlyZWQ6IDAKK0FYQ2hlY2tlZDogMAorQVhQbGF0Zm9ybUF0dHJp
YnV0ZXM6IGxheW91dC1ndWVzczp0cnVlLCB0b29sa2l0OldlYktpdEd0awpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2FjY2Vzc2liaWxpdHkvdGFibGUtd2l0aC1ydWxlcy1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvYWNjZXNzaWJpbGl0eS90YWJs
ZS13aXRoLXJ1bGVzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwLi4xMDY3ZWRhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3Rr
L2FjY2Vzc2liaWxpdHkvdGFibGUtd2l0aC1ydWxlcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw5
OSBAQAorYXNkZglhc2RmCithc2RmCWFzZGYKK2FzZGYJYXNkZgorYXNkZglhc2RmCithc2RmCWFz
ZGYKKworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitBWFJvbGU6IEFYVGFi
bGUKK0FYUGFyZW50OiBBWFdlYkFyZWEKK0FYQ2hpbGRyZW46IDIKK0FYUG9zaXRpb246IHsgOC4w
MDAwMDAsIDI3LjAwMDAwMCB9CitBWFNpemU6IHsgNTcuMDAwMDAwLCAxOS4wMDAwMDAgfQorQVhU
aXRsZTogCitBWERlc2NyaXB0aW9uOiAKK0FYRm9jdXNhYmxlOiAwCitBWEZvY3VzZWQ6IDAKK0FY
U2VsZWN0YWJsZTogMAorQVhTZWxlY3RlZDogMAorQVhNdWx0aVNlbGVjdGFibGU6IDAKK0FYRW5h
YmxlZDogMQorQVhFeHBhbmRlZDogMAorQVhSZXF1aXJlZDogMAorQVhDaGVja2VkOiAwCitBWFBs
YXRmb3JtQXR0cmlidXRlczogaHRtbC1pZDp0ZXN0VGFibGUyLCB0b29sa2l0OldlYktpdEd0awor
CitBWFJvbGU6IEFYVGFibGUKK0FYUGFyZW50OiBBWFdlYkFyZWEKK0FYQ2hpbGRyZW46IDIKK0FY
UG9zaXRpb246IHsgOC4wMDAwMDAsIDQ2LjAwMDAwMCB9CitBWFNpemU6IHsgNjIuMDAwMDAwLCAy
My4wMDAwMDAgfQorQVhUaXRsZTogCitBWERlc2NyaXB0aW9uOiAKK0FYRm9jdXNhYmxlOiAwCitB
WEZvY3VzZWQ6IDAKK0FYU2VsZWN0YWJsZTogMAorQVhTZWxlY3RlZDogMAorQVhNdWx0aVNlbGVj
dGFibGU6IDAKK0FYRW5hYmxlZDogMQorQVhFeHBhbmRlZDogMAorQVhSZXF1aXJlZDogMAorQVhD
aGVja2VkOiAwCitBWFBsYXRmb3JtQXR0cmlidXRlczogaHRtbC1pZDp0ZXN0VGFibGUzLCB0b29s
a2l0OldlYktpdEd0aworCitBWFJvbGU6IEFYVGFibGUKK0FYUGFyZW50OiBBWFdlYkFyZWEKK0FY
Q2hpbGRyZW46IDIKK0FYUG9zaXRpb246IHsgOC4wMDAwMDAsIDY5LjAwMDAwMCB9CitBWFNpemU6
IHsgNTYuMDAwMDAwLCAxOS4wMDAwMDAgfQorQVhUaXRsZTogCitBWERlc2NyaXB0aW9uOiAKK0FY
Rm9jdXNhYmxlOiAwCitBWEZvY3VzZWQ6IDAKK0FYU2VsZWN0YWJsZTogMAorQVhTZWxlY3RlZDog
MAorQVhNdWx0aVNlbGVjdGFibGU6IDAKK0FYRW5hYmxlZDogMQorQVhFeHBhbmRlZDogMAorQVhS
ZXF1aXJlZDogMAorQVhDaGVja2VkOiAwCitBWFBsYXRmb3JtQXR0cmlidXRlczogaHRtbC1pZDp0
ZXN0VGFibGU0LCB0b29sa2l0OldlYktpdEd0aworCitBWFJvbGU6IEFYVGFibGUKK0FYUGFyZW50
OiBBWFdlYkFyZWEKK0FYQ2hpbGRyZW46IDIKK0FYUG9zaXRpb246IHsgOC4wMDAwMDAsIDg4LjAw
MDAwMCB9CitBWFNpemU6IHsgNjIuMDAwMDAwLCAyMy4wMDAwMDAgfQorQVhUaXRsZTogCitBWERl
c2NyaXB0aW9uOiAKK0FYRm9jdXNhYmxlOiAwCitBWEZvY3VzZWQ6IDAKK0FYU2VsZWN0YWJsZTog
MAorQVhTZWxlY3RlZDogMAorQVhNdWx0aVNlbGVjdGFibGU6IDAKK0FYRW5hYmxlZDogMQorQVhF
eHBhbmRlZDogMAorQVhSZXF1aXJlZDogMAorQVhDaGVja2VkOiAwCitBWFBsYXRmb3JtQXR0cmli
dXRlczogbGF5b3V0LWd1ZXNzOnRydWUsIGh0bWwtaWQ6dGVzdFRhYmxlNSwgdG9vbGtpdDpXZWJL
aXRHdGsKKworQVhSb2xlOiBBWEdyb3VwCitBWFBhcmVudDogQVhXZWJBcmVhCitBWENoaWxkcmVu
OiAwCitBWFBvc2l0aW9uOiB7IDguMDAwMDAwLCAxMTEuMDAwMDAwIH0KK0FYU2l6ZTogeyA3Njku
MDAwMDAwLCAzNC4wMDAwMDAgfQorQVhUaXRsZTogCitBWERlc2NyaXB0aW9uOiAKK0FYVmFsdWU6
IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorQVhGb2N1c2FibGU6IDAKK0FY
Rm9jdXNlZDogMAorQVhTZWxlY3RhYmxlOiAwCitBWFNlbGVjdGVkOiAwCitBWE11bHRpU2VsZWN0
YWJsZTogMAorQVhFbmFibGVkOiAxCitBWEV4cGFuZGVkOiAwCitBWFJlcXVpcmVkOiAwCitBWENo
ZWNrZWQ6IDAKK0FYUGxhdGZvcm1BdHRyaWJ1dGVzOiB0b29sa2l0OldlYktpdEd0aworCisKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9hY2Nlc3NpYmlsaXR5L3RyYW5zZm9y
bWVkLWVsZW1lbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2FjY2Vz
c2liaWxpdHkvdHJhbnNmb3JtZWQtZWxlbWVudC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMC4uMzU4MmI5YwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL3BsYXRmb3JtL2d0ay9hY2Nlc3NpYmlsaXR5L3RyYW5zZm9ybWVkLWVsZW1lbnQtZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsMTkgQEAKK2hlbGxvCitBWFJvbGU6IEFYRGl2CitBWFBhcmVudDog
QVhXZWJBcmVhCitBWENoaWxkcmVuOiAxCitBWFBvc2l0aW9uOiB7IDguMDAwMDAwLCA5LjAwMDAw
MCB9CitBWFNpemU6IHsgMjkxLjAwMDAwMCwgMTIyLjAwMDAwMCB9CitBWFRpdGxlOiAKK0FYRGVz
Y3JpcHRpb246IAorQVhWYWx1ZTogaGVsbG8KK0FYRm9jdXNhYmxlOiAwCitBWEZvY3VzZWQ6IDAK
K0FYU2VsZWN0YWJsZTogMAorQVhTZWxlY3RlZDogMAorQVhNdWx0aVNlbGVjdGFibGU6IDAKK0FY
RW5hYmxlZDogMQorQVhFeHBhbmRlZDogMAorQVhSZXF1aXJlZDogMAorQVhDaGVja2VkOiAwCitB
WFBsYXRmb3JtQXR0cmlidXRlczogaHRtbC1pZDpoaWRkZW5EaXYsIHRvb2xraXQ6V2ViS2l0R3Rr
CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNjRm
YzExOS4uMzk4ZjM2NCAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0No
YW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDEzLTA3LTI2ICBNYXJpbyBTYW5jaGV6IFByYWRh
ICA8bWFyaW8ucHJhZGFAc2Ftc3VuZy5jb20+CisKKyAgICAgICAgW0FUS10gSW1wbGVtZW50IGFs
bEF0dHJpYnV0ZXMoKSBmb3IgQWNjZXNzaWJpbGl0eVVJRWxlbWVudAorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE4OTY2CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVtZW50ZWQgQWNjZXNzaWJpbGl0
eVVJRWxlbWVudDo6YWxsQXR0cmlidXRlcygpIGJvdGggaW4KKyAgICAgICAgRHVtcFJlbmRlclRy
ZWUgYW5kIHRoZSBXZWJLaXRUZXN0UnVubmVyLgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUv
YXRrL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRBdGsuY3BwOgorICAgICAgICAoZ2V0QXRrQXR0cmli
dXRlU2V0QXNTdHJpbmcpOiBNb3ZlZCB1cCBpbiB0aGUgZmlsZS4KKyAgICAgICAgKHJvbGVUb1N0
cmluZyk6IENoYW5nZWQgbm90IHRvIHJldHVybiB0aGUgIkFYUm9sZTogIiBwcmVmaXgsIHNvCisg
ICAgICAgIHdlIGNhbiB1c2UgaXQgYXMgd2VsbCBmcm9tIGF0dHJpYnV0ZXNPZkVsZW1lbnQoKS4K
KyAgICAgICAgKGF0dHJpYnV0ZXNPZkVsZW1lbnQpOiBOZXcgZnVuY3Rpb24gdG8gZHVtcCBhdHRy
aWJ1dGVzIGZvciBhbiBvYmplY3QuCisgICAgICAgIChBY2Nlc3NpYmlsaXR5VUlFbGVtZW50Ojph
bGxBdHRyaWJ1dGVzKTogQ2FsbCBhdHRyaWJ1dGVzT2ZFbGVtZW50KCkuCisgICAgICAgIChBY2Nl
c3NpYmlsaXR5VUlFbGVtZW50Ojpyb2xlKTogVXBkYXRlZCB0byBwcmVmaXggIkFYUm9sZTogIi4K
KworICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvYXRrL0FjY2Vzc2li
aWxpdHlVSUVsZW1lbnRBdGsuY3BwOgorICAgICAgICAoV1RGOjpyb2xlVG9TdHJpbmcpOiBDaGFu
Z2VkIG5vdCB0byByZXR1cm4gdGhlICJBWFJvbGU6ICIgcHJlZml4LAorICAgICAgICBzbyB3ZSBj
YW4gdXNlIGl0IGFzIHdlbGwgZnJvbSBhdHRyaWJ1dGVzT2ZFbGVtZW50KCkuCisgICAgICAgIChX
VEY6OmF0dHJpYnV0ZXNPZkVsZW1lbnQpOiBOZXcgZnVuY3Rpb24gdG8gZHVtcCBhdHRyaWJ1dGVz
IGZvciBhbiBvYmplY3QuCisgICAgICAgIChXVFI6OkFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OmFs
bEF0dHJpYnV0ZXMpOiBDYWxsIGF0dHJpYnV0ZXNPZkVsZW1lbnQoKS4KKyAgICAgICAgKFdUUjo6
QWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6cm9sZSk6IFVwZGF0ZWQgdG8gcHJlZml4ICJBWFJvbGU6
ICIuCisKIDIwMTMtMDctMjEgIEFuZHJlYXMgS2xpbmcgIDxha2xpbmdAYXBwbGUuY29tPgogCiAg
ICAgICAgIEtVUkwgY3JlYXRlcyBkdXBsaWNhdGUgc3RyaW5ncyB3aGVuIGNvbXBsZXRpbmcgZGF0
YTogVVJJcy4KZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2F0ay9BY2Nlc3NpYmls
aXR5VUlFbGVtZW50QXRrLmNwcCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2F0ay9BY2Nlc3NpYmls
aXR5VUlFbGVtZW50QXRrLmNwcAppbmRleCAwMDliOGE4Li5lNjRhN2IyIDEwMDY0NAotLS0gYS9U
b29scy9EdW1wUmVuZGVyVHJlZS9hdGsvQWNjZXNzaWJpbGl0eVVJRWxlbWVudEF0ay5jcHAKKysr
IGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvYXRrL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRBdGsuY3Bw
CkBAIC0zMCwxMSArMzAsMTMgQEAKICNpZiBIQVZFKEFDQ0VTU0lCSUxJVFkpCiAKICNpbmNsdWRl
IDxKYXZhU2NyaXB0Q29yZS9KU1N0cmluZ1JlZi5oPgorI2luY2x1ZGUgPEphdmFTY3JpcHRDb3Jl
L09wYXF1ZUpTU3RyaW5nLmg+CiAjaW5jbHVkZSA8YXRrL2F0ay5oPgogI2luY2x1ZGUgPHd0Zi9B
c3NlcnRpb25zLmg+CiAjaW5jbHVkZSA8d3RmL2dvYmplY3QvR093blB0ci5oPgogI2luY2x1ZGUg
PHd0Zi9nb2JqZWN0L0dSZWZQdHIuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9DU3RyaW5nLmg+Cisj
aW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nQnVpbGRlci5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dU
RlN0cmluZy5oPgogI2luY2x1ZGUgPHd0Zi91bmljb2RlL0NoYXJhY3Rlck5hbWVzLmg+CiAKQEAg
LTY5LDExMSArNzEsMTI4IEBAIHN0YXRpYyBTdHJpbmcgZ2V0QXR0cmlidXRlU2V0VmFsdWVGb3JJ
ZChBdGtPYmplY3QqIGFjY2Vzc2libGUsIGNvbnN0IGNoYXIqIGlkKQogICAgIHJldHVybiBhdGtB
dHRyaWJ1dGVWYWx1ZTsKIH0KIAotc3RhdGljIGlubGluZSBTdHJpbmcgcm9sZVRvU3RyaW5nKEF0
a1JvbGUgcm9sZSkKK3N0YXRpYyBjaGFyKiBnZXRBdGtBdHRyaWJ1dGVTZXRBc1N0cmluZyhBdGtP
YmplY3QqIGFjY2Vzc2libGUpCit7CisgICAgR1N0cmluZyogc3RyID0gZ19zdHJpbmdfbmV3KDAp
OworCisgICAgQXRrQXR0cmlidXRlU2V0KiBhdHRyaWJ1dGVTZXQgPSBhdGtfb2JqZWN0X2dldF9h
dHRyaWJ1dGVzKGFjY2Vzc2libGUpOworICAgIGZvciAoQXRrQXR0cmlidXRlU2V0KiBhdHRyaWJ1
dGVzID0gYXR0cmlidXRlU2V0OyBhdHRyaWJ1dGVzOyBhdHRyaWJ1dGVzID0gYXR0cmlidXRlcy0+
bmV4dCkgeworICAgICAgICBBdGtBdHRyaWJ1dGUqIGF0dHJpYnV0ZSA9IHN0YXRpY19jYXN0PEF0
a0F0dHJpYnV0ZSo+KGF0dHJpYnV0ZXMtPmRhdGEpOworICAgICAgICBHT3duUHRyPGdjaGFyPiBh
dHRyaWJ1dGVEYXRhKGdfc3RyY29uY2F0KGF0dHJpYnV0ZS0+bmFtZSwgIjoiLCBhdHRyaWJ1dGUt
PnZhbHVlLCBOVUxMKSk7CisgICAgICAgIGdfc3RyaW5nX2FwcGVuZChzdHIsIGF0dHJpYnV0ZURh
dGEuZ2V0KCkpOworICAgICAgICBpZiAoYXR0cmlidXRlcy0+bmV4dCkKKyAgICAgICAgICAgIGdf
c3RyaW5nX2FwcGVuZChzdHIsICIsICIpOworICAgIH0KKyAgICBhdGtfYXR0cmlidXRlX3NldF9m
cmVlKGF0dHJpYnV0ZVNldCk7CisKKyAgICByZXR1cm4gZ19zdHJpbmdfZnJlZShzdHIsIEZBTFNF
KTsKK30KKworc3RhdGljIGlubGluZSBjb25zdCBjaGFyKiByb2xlVG9TdHJpbmcoQXRrUm9sZSBy
b2xlKQogewogICAgIHN3aXRjaCAocm9sZSkgewogICAgIGNhc2UgQVRLX1JPTEVfQUxFUlQ6Ci0g
ICAgICAgIHJldHVybiAiQVhSb2xlOiBBWEFsZXJ0IjsKKyAgICAgICAgcmV0dXJuICJBWEFsZXJ0
IjsKICAgICBjYXNlIEFUS19ST0xFX0NBTlZBUzoKLSAgICAgICAgcmV0dXJuICJBWFJvbGU6IEFY
Q2FudmFzIjsKKyAgICAgICAgcmV0dXJuICJBWENhbnZhcyI7CiAgICAgY2FzZSBBVEtfUk9MRV9D
SEVDS19CT1g6Ci0gICAgICAgIHJldHVybiAiQVhSb2xlOiBBWENoZWNrQm94IjsKKyAgICAgICAg
cmV0dXJuICJBWENoZWNrQm94IjsKICAgICBjYXNlIEFUS19ST0xFX0NPTFVNTl9IRUFERVI6Ci0g
ICAgICAgIHJldHVybiAiQVhSb2xlOiBBWENvbHVtbkhlYWRlciI7CisgICAgICAgIHJldHVybiAi
QVhDb2x1bW5IZWFkZXIiOwogICAgIGNhc2UgQVRLX1JPTEVfQ09NQk9fQk9YOgotICAgICAgICBy
ZXR1cm4gIkFYUm9sZTogQVhDb21ib0JveCI7CisgICAgICAgIHJldHVybiAiQVhDb21ib0JveCI7
CiAgICAgY2FzZSBBVEtfUk9MRV9ET0NVTUVOVF9GUkFNRToKLSAgICAgICAgcmV0dXJuICJBWFJv
bGU6IEFYV2ViQXJlYSI7CisgICAgICAgIHJldHVybiAiQVhXZWJBcmVhIjsKICAgICBjYXNlIEFU
S19ST0xFX0VOVFJZOgotICAgICAgICByZXR1cm4gIkFYUm9sZTogQVhUZXh0RmllbGQiOworICAg
ICAgICByZXR1cm4gIkFYVGV4dEZpZWxkIjsKICAgICBjYXNlIEFUS19ST0xFX0ZPT1RFUjoKLSAg
ICAgICAgcmV0dXJuICJBWFJvbGU6IEFYRm9vdGVyIjsKKyAgICAgICAgcmV0dXJuICJBWEZvb3Rl
ciI7CiAgICAgY2FzZSBBVEtfUk9MRV9GT1JNOgotICAgICAgICByZXR1cm4gIkFYUm9sZTogQVhG
b3JtIjsKKyAgICAgICAgcmV0dXJuICJBWEZvcm0iOwogICAgIGNhc2UgQVRLX1JPTEVfR1JPVVBJ
Tkc6Ci0gICAgICAgIHJldHVybiAiQVhSb2xlOiBBWEdyb3VwIjsKKyAgICAgICAgcmV0dXJuICJB
WEdyb3VwIjsKICAgICBjYXNlIEFUS19ST0xFX0hFQURJTkc6Ci0gICAgICAgIHJldHVybiAiQVhS
b2xlOiBBWEhlYWRpbmciOworICAgICAgICByZXR1cm4gIkFYSGVhZGluZyI7CiAgICAgY2FzZSBB
VEtfUk9MRV9JTUFHRToKLSAgICAgICAgcmV0dXJuICJBWFJvbGU6IEFYSW1hZ2UiOworICAgICAg
ICByZXR1cm4gIkFYSW1hZ2UiOwogICAgIGNhc2UgQVRLX1JPTEVfSU1BR0VfTUFQOgotICAgICAg
ICByZXR1cm4gIkFYUm9sZTogQVhJbWFnZU1hcCI7CisgICAgICAgIHJldHVybiAiQVhJbWFnZU1h
cCI7CiAgICAgY2FzZSBBVEtfUk9MRV9MQUJFTDoKLSAgICAgICAgcmV0dXJuICJBWFJvbGU6IEFY
TGFiZWwiOworICAgICAgICByZXR1cm4gIkFYTGFiZWwiOwogICAgIGNhc2UgQVRLX1JPTEVfTElO
SzoKLSAgICAgICAgcmV0dXJuICJBWFJvbGU6IEFYTGluayI7CisgICAgICAgIHJldHVybiAiQVhM
aW5rIjsKICAgICBjYXNlIEFUS19ST0xFX0xJU1Q6Ci0gICAgICAgIHJldHVybiAiQVhSb2xlOiBB
WExpc3QiOworICAgICAgICByZXR1cm4gIkFYTGlzdCI7CiAgICAgY2FzZSBBVEtfUk9MRV9MSVNU
X0JPWDoKLSAgICAgICAgcmV0dXJuICJBWFJvbGU6IEFYTGlzdEJveCI7CisgICAgICAgIHJldHVy
biAiQVhMaXN0Qm94IjsKICAgICBjYXNlIEFUS19ST0xFX0xJU1RfSVRFTToKLSAgICAgICAgcmV0
dXJuICJBWFJvbGU6IEFYTGlzdEl0ZW0iOworICAgICAgICByZXR1cm4gIkFYTGlzdEl0ZW0iOwog
ICAgIGNhc2UgQVRLX1JPTEVfTUVOVToKLSAgICAgICAgcmV0dXJuICJBWFJvbGU6IEFYTWVudSI7
CisgICAgICAgIHJldHVybiAiQVhNZW51IjsKICAgICBjYXNlIEFUS19ST0xFX01FTlVfQkFSOgot
ICAgICAgICByZXR1cm4gIkFYUm9sZTogQVhNZW51QmFyIjsKKyAgICAgICAgcmV0dXJuICJBWE1l
bnVCYXIiOwogICAgIGNhc2UgQVRLX1JPTEVfTUVOVV9JVEVNOgotICAgICAgICByZXR1cm4gIkFY
Um9sZTogQVhNZW51SXRlbSI7CisgICAgICAgIHJldHVybiAiQVhNZW51SXRlbSI7CiAgICAgY2Fz
ZSBBVEtfUk9MRV9QQUdFX1RBQjoKLSAgICAgICAgcmV0dXJuICJBWFJvbGU6IEFYVGFiIjsKKyAg
ICAgICAgcmV0dXJuICJBWFRhYiI7CiAgICAgY2FzZSBBVEtfUk9MRV9QQUdFX1RBQl9MSVNUOgot
ICAgICAgICByZXR1cm4gIkFYUm9sZTogQVhUYWJHcm91cCI7CisgICAgICAgIHJldHVybiAiQVhU
YWJHcm91cCI7CiAgICAgY2FzZSBBVEtfUk9MRV9QQU5FTDoKLSAgICAgICAgcmV0dXJuICJBWFJv
bGU6IEFYR3JvdXAiOworICAgICAgICByZXR1cm4gIkFYR3JvdXAiOwogICAgIGNhc2UgQVRLX1JP
TEVfUEFSQUdSQVBIOgotICAgICAgICByZXR1cm4gIkFYUm9sZTogQVhQYXJhZ3JhcGgiOworICAg
ICAgICByZXR1cm4gIkFYUGFyYWdyYXBoIjsKICAgICBjYXNlIEFUS19ST0xFX1BBU1NXT1JEX1RF
WFQ6Ci0gICAgICAgIHJldHVybiAiQVhSb2xlOiBBWFBhc3N3b3JkRmllbGQiOworICAgICAgICBy
ZXR1cm4gIkFYUGFzc3dvcmRGaWVsZCI7CiAgICAgY2FzZSBBVEtfUk9MRV9QVVNIX0JVVFRPTjoK
LSAgICAgICAgcmV0dXJuICJBWFJvbGU6IEFYQnV0dG9uIjsKKyAgICAgICAgcmV0dXJuICJBWEJ1
dHRvbiI7CiAgICAgY2FzZSBBVEtfUk9MRV9SQURJT19CVVRUT046Ci0gICAgICAgIHJldHVybiAi
QVhSb2xlOiBBWFJhZGlvQnV0dG9uIjsKKyAgICAgICAgcmV0dXJuICJBWFJhZGlvQnV0dG9uIjsK
ICAgICBjYXNlIEFUS19ST0xFX1JPV19IRUFERVI6Ci0gICAgICAgIHJldHVybiAiQVhSb2xlOiBB
WFJvd0hlYWRlciI7CisgICAgICAgIHJldHVybiAiQVhSb3dIZWFkZXIiOwogICAgIGNhc2UgQVRL
X1JPTEVfUlVMRVI6Ci0gICAgICAgIHJldHVybiAiQVhSb2xlOiBBWFJ1bGVyIjsKKyAgICAgICAg
cmV0dXJuICJBWFJ1bGVyIjsKICAgICBjYXNlIEFUS19ST0xFX1NDUk9MTF9CQVI6Ci0gICAgICAg
IHJldHVybiAiQVhSb2xlOiBBWFNjcm9sbEJhciI7CisgICAgICAgIHJldHVybiAiQVhTY3JvbGxC
YXIiOwogICAgIGNhc2UgQVRLX1JPTEVfU0NST0xMX1BBTkU6Ci0gICAgICAgIHJldHVybiAiQVhS
b2xlOiBBWFNjcm9sbEFyZWEiOworICAgICAgICByZXR1cm4gIkFYU2Nyb2xsQXJlYSI7CiAgICAg
Y2FzZSBBVEtfUk9MRV9TRUNUSU9OOgotICAgICAgICByZXR1cm4gIkFYUm9sZTogQVhEaXYiOwor
ICAgICAgICByZXR1cm4gIkFYRGl2IjsKICAgICBjYXNlIEFUS19ST0xFX1NFUEFSQVRPUjoKLSAg
ICAgICAgcmV0dXJuICJBWFJvbGU6IEFYSG9yaXpvbnRhbFJ1bGUiOworICAgICAgICByZXR1cm4g
IkFYSG9yaXpvbnRhbFJ1bGUiOwogICAgIGNhc2UgQVRLX1JPTEVfU0xJREVSOgotICAgICAgICBy
ZXR1cm4gIkFYUm9sZTogQVhTbGlkZXIiOworICAgICAgICByZXR1cm4gIkFYU2xpZGVyIjsKICAg
ICBjYXNlIEFUS19ST0xFX1NQSU5fQlVUVE9OOgotICAgICAgICByZXR1cm4gIkFYUm9sZTogQVhT
cGluQnV0dG9uIjsKKyAgICAgICAgcmV0dXJuICJBWFNwaW5CdXR0b24iOwogICAgIGNhc2UgQVRL
X1JPTEVfVEFCTEU6Ci0gICAgICAgIHJldHVybiAiQVhSb2xlOiBBWFRhYmxlIjsKKyAgICAgICAg
cmV0dXJuICJBWFRhYmxlIjsKICAgICBjYXNlIEFUS19ST0xFX1RBQkxFX0NFTEw6Ci0gICAgICAg
IHJldHVybiAiQVhSb2xlOiBBWENlbGwiOworICAgICAgICByZXR1cm4gIkFYQ2VsbCI7CiAgICAg
Y2FzZSBBVEtfUk9MRV9UQUJMRV9DT0xVTU5fSEVBREVSOgotICAgICAgICByZXR1cm4gIkFYUm9s
ZTogQVhDb2x1bW5IZWFkZXIiOworICAgICAgICByZXR1cm4gIkFYQ29sdW1uSGVhZGVyIjsKICAg
ICBjYXNlIEFUS19ST0xFX1RBQkxFX1JPVzoKLSAgICAgICAgcmV0dXJuICJBWFJvbGU6IEFYUm93
IjsKKyAgICAgICAgcmV0dXJuICJBWFJvdyI7CiAgICAgY2FzZSBBVEtfUk9MRV9UQUJMRV9ST1df
SEVBREVSOgotICAgICAgICByZXR1cm4gIkFYUm9sZTogQVhSb3dIZWFkZXIiOworICAgICAgICBy
ZXR1cm4gIkFYUm93SGVhZGVyIjsKICAgICBjYXNlIEFUS19ST0xFX1RPR0dMRV9CVVRUT046Ci0g
ICAgICAgIHJldHVybiAiQVhSb2xlOiBBWFRvZ2dsZUJ1dHRvbiI7CisgICAgICAgIHJldHVybiAi
QVhUb2dnbGVCdXR0b24iOwogICAgIGNhc2UgQVRLX1JPTEVfVE9PTF9CQVI6Ci0gICAgICAgIHJl
dHVybiAiQVhSb2xlOiBBWFRvb2xiYXIiOworICAgICAgICByZXR1cm4gIkFYVG9vbGJhciI7CiAg
ICAgY2FzZSBBVEtfUk9MRV9UT09MX1RJUDoKLSAgICAgICAgcmV0dXJuICJBWFJvbGU6IEFYVXNl
ckludGVyZmFjZVRvb2x0aXAiOworICAgICAgICByZXR1cm4gIkFYVXNlckludGVyZmFjZVRvb2x0
aXAiOwogICAgIGNhc2UgQVRLX1JPTEVfVFJFRToKLSAgICAgICAgcmV0dXJuICJBWFJvbGU6IEFY
VHJlZSI7CisgICAgICAgIHJldHVybiAiQVhUcmVlIjsKICAgICBjYXNlIEFUS19ST0xFX1RSRUVf
VEFCTEU6Ci0gICAgICAgIHJldHVybiAiQVhSb2xlOiBBWFRyZWVHcmlkIjsKKyAgICAgICAgcmV0
dXJuICJBWFRyZWVHcmlkIjsKICAgICBjYXNlIEFUS19ST0xFX1RSRUVfSVRFTToKLSAgICAgICAg
cmV0dXJuICJBWFJvbGU6IEFYVHJlZUl0ZW0iOworICAgICAgICByZXR1cm4gIkFYVHJlZUl0ZW0i
OwogICAgIGNhc2UgQVRLX1JPTEVfV0lORE9XOgotICAgICAgICByZXR1cm4gIkFYUm9sZTogQVhX
aW5kb3ciOworICAgICAgICByZXR1cm4gIkFYV2luZG93IjsKICAgICBjYXNlIEFUS19ST0xFX1VO
S05PV046Ci0gICAgICAgIHJldHVybiAiQVhSb2xlOiBBWFVua25vd24iOworICAgICAgICByZXR1
cm4gIkFYVW5rbm93biI7CiAgICAgZGVmYXVsdDoKICAgICAgICAgLy8gV2Ugd2FudCB0byBkaXN0
aW5ndWlzaCBBVEtfUk9MRV9VTktOT1dOIGZyb20gYSBrbm93biBBdGtSb2xlIHdoaWNoCiAgICAg
ICAgIC8vIG91ciBEUlQgaXNuJ3QgcHJvcGVybHkgaGFuZGxpbmcuCi0gICAgICAgIHJldHVybiAi
QVhSb2xlOiBGSVhNRSBub3QgaWRlbnRpZmllZCI7CisgICAgICAgIHJldHVybiAiRklYTUUgbm90
IGlkZW50aWZpZWQiOwogICAgIH0KIH0KIApAQCAtMjAyLDYgKzIyMSw5MCBAQCBzdGF0aWMgYm9v
bCBjaGVja0VsZW1lbnRTdGF0ZShQbGF0Zm9ybVVJRWxlbWVudCBlbGVtZW50LCBBdGtTdGF0ZVR5
cGUgc3RhdGVUeXBlKQogICAgIHJldHVybiBhdGtfc3RhdGVfc2V0X2NvbnRhaW5zX3N0YXRlKHN0
YXRlU2V0LmdldCgpLCBzdGF0ZVR5cGUpOwogfQogCitzdGF0aWMgU3RyaW5nIGF0dHJpYnV0ZXNP
ZkVsZW1lbnQoQWNjZXNzaWJpbGl0eVVJRWxlbWVudCogZWxlbWVudCkKK3sKKyAgICBHT3duUHRy
PGNoYXI+IGF0dHJpYnV0ZUxpbmU7CisgICAgU3RyaW5nQnVpbGRlciBidWlsZGVyOworCisgICAg
YXR0cmlidXRlTGluZS5zZXQoZ19zdHJkdXBfcHJpbnRmKCIlc1xuIiwgZWxlbWVudC0+cm9sZSgp
LT5zdHJpbmcoKS51dGY4KCkuZGF0YSgpKSk7CisgICAgYnVpbGRlci5hcHBlbmQoYXR0cmlidXRl
TGluZS5nZXQoKSk7CisKKyAgICAvLyBGb3IgdGhlIHBhcmVudCB3ZSBwcmludCBpdHMgcm9sZSBh
bmQgaXRzIG5hbWUsIGlmIGF2YWlsYWJsZS4KKyAgICBidWlsZGVyLmFwcGVuZCgiQVhQYXJlbnQ6
ICIpOworICAgIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQgcGFyZW50ID0gZWxlbWVudC0+cGFyZW50
RWxlbWVudCgpOworICAgIGlmIChBdGtPYmplY3QqIGF0a1BhcmVudCA9IHBhcmVudC5wbGF0Zm9y
bVVJRWxlbWVudCgpKSB7CisgICAgICAgIGJ1aWxkZXIuYXBwZW5kKHJvbGVUb1N0cmluZyhhdGtf
b2JqZWN0X2dldF9yb2xlKGF0a1BhcmVudCkpKTsKKyAgICAgICAgY29uc3QgY2hhciogcGFyZW50
TmFtZSA9IGF0a19vYmplY3RfZ2V0X25hbWUoYXRrUGFyZW50KTsKKyAgICAgICAgaWYgKHBhcmVu
dE5hbWUgJiYgZ191dGY4X3N0cmxlbihwYXJlbnROYW1lLCAtMSkpIHsKKyAgICAgICAgICAgIGF0
dHJpYnV0ZUxpbmUuc2V0KGdfc3RyZHVwX3ByaW50ZigiOiAlcyIsIHBhcmVudE5hbWUpKTsKKwor
ICAgICAgICB9CisgICAgfSBlbHNlCisgICAgICAgIGJ1aWxkZXIuYXBwZW5kKCIobnVsbCkiKTsK
KyAgICBidWlsZGVyLmFwcGVuZCgiXG4iKTsKKworICAgIGF0dHJpYnV0ZUxpbmUuc2V0KGdfc3Ry
ZHVwX3ByaW50ZigiQVhDaGlsZHJlbjogJWRcbiIsIGVsZW1lbnQtPmNoaWxkcmVuQ291bnQoKSkp
OworICAgIGJ1aWxkZXIuYXBwZW5kKGF0dHJpYnV0ZUxpbmUuZ2V0KCkpOworCisgICAgYXR0cmli
dXRlTGluZS5zZXQoZ19zdHJkdXBfcHJpbnRmKCJBWFBvc2l0aW9uOiB7ICVmLCAlZiB9XG4iLCBl
bGVtZW50LT54KCksIGVsZW1lbnQtPnkoKSkpOworICAgIGJ1aWxkZXIuYXBwZW5kKGF0dHJpYnV0
ZUxpbmUuZ2V0KCkpOworCisgICAgYXR0cmlidXRlTGluZS5zZXQoZ19zdHJkdXBfcHJpbnRmKCJB
WFNpemU6IHsgJWYsICVmIH1cbiIsIGVsZW1lbnQtPndpZHRoKCksIGVsZW1lbnQtPmhlaWdodCgp
KSk7CisgICAgYnVpbGRlci5hcHBlbmQoYXR0cmlidXRlTGluZS5nZXQoKSk7CisKKyAgICBTdHJp
bmcgdGl0bGUgPSBlbGVtZW50LT50aXRsZSgpLT5zdHJpbmcoKTsKKyAgICBpZiAoIXRpdGxlLmlz
RW1wdHkoKSkgeworICAgICAgICBhdHRyaWJ1dGVMaW5lLnNldChnX3N0cmR1cF9wcmludGYoIiVz
XG4iLCB0aXRsZS51dGY4KCkuZGF0YSgpKSk7CisgICAgICAgIGJ1aWxkZXIuYXBwZW5kKGF0dHJp
YnV0ZUxpbmUuZ2V0KCkpOworICAgIH0KKworICAgIFN0cmluZyBkZXNjcmlwdGlvbiA9IGVsZW1l
bnQtPmRlc2NyaXB0aW9uKCktPnN0cmluZygpOworICAgIGlmICghZGVzY3JpcHRpb24uaXNFbXB0
eSgpKSB7CisgICAgICAgIGF0dHJpYnV0ZUxpbmUuc2V0KGdfc3RyZHVwX3ByaW50ZigiJXNcbiIs
IGRlc2NyaXB0aW9uLnV0ZjgoKS5kYXRhKCkpKTsKKyAgICAgICAgYnVpbGRlci5hcHBlbmQoYXR0
cmlidXRlTGluZS5nZXQoKSk7CisgICAgfQorCisgICAgU3RyaW5nIHZhbHVlID0gZWxlbWVudC0+
c3RyaW5nVmFsdWUoKS0+c3RyaW5nKCk7CisgICAgaWYgKCF2YWx1ZS5pc0VtcHR5KCkpIHsKKyAg
ICAgICAgYXR0cmlidXRlTGluZS5zZXQoZ19zdHJkdXBfcHJpbnRmKCIlc1xuIiwgdmFsdWUudXRm
OCgpLmRhdGEoKSkpOworICAgICAgICBidWlsZGVyLmFwcGVuZChhdHRyaWJ1dGVMaW5lLmdldCgp
KTsKKyAgICB9CisKKyAgICBhdHRyaWJ1dGVMaW5lLnNldChnX3N0cmR1cF9wcmludGYoIkFYRm9j
dXNhYmxlOiAlZFxuIiwgZWxlbWVudC0+aXNGb2N1c2FibGUoKSkpOworICAgIGJ1aWxkZXIuYXBw
ZW5kKGF0dHJpYnV0ZUxpbmUuZ2V0KCkpOworCisgICAgYXR0cmlidXRlTGluZS5zZXQoZ19zdHJk
dXBfcHJpbnRmKCJBWEZvY3VzZWQ6ICVkXG4iLCBlbGVtZW50LT5pc0ZvY3VzZWQoKSkpOworICAg
IGJ1aWxkZXIuYXBwZW5kKGF0dHJpYnV0ZUxpbmUuZ2V0KCkpOworCisgICAgYXR0cmlidXRlTGlu
ZS5zZXQoZ19zdHJkdXBfcHJpbnRmKCJBWFNlbGVjdGFibGU6ICVkXG4iLCBlbGVtZW50LT5pc1Nl
bGVjdGFibGUoKSkpOworICAgIGJ1aWxkZXIuYXBwZW5kKGF0dHJpYnV0ZUxpbmUuZ2V0KCkpOwor
CisgICAgYXR0cmlidXRlTGluZS5zZXQoZ19zdHJkdXBfcHJpbnRmKCJBWFNlbGVjdGVkOiAlZFxu
IiwgZWxlbWVudC0+aXNTZWxlY3RlZCgpKSk7CisgICAgYnVpbGRlci5hcHBlbmQoYXR0cmlidXRl
TGluZS5nZXQoKSk7CisKKyAgICBhdHRyaWJ1dGVMaW5lLnNldChnX3N0cmR1cF9wcmludGYoIkFY
TXVsdGlTZWxlY3RhYmxlOiAlZFxuIiwgZWxlbWVudC0+aXNNdWx0aVNlbGVjdGFibGUoKSkpOwor
ICAgIGJ1aWxkZXIuYXBwZW5kKGF0dHJpYnV0ZUxpbmUuZ2V0KCkpOworCisgICAgYXR0cmlidXRl
TGluZS5zZXQoZ19zdHJkdXBfcHJpbnRmKCJBWEVuYWJsZWQ6ICVkXG4iLCBlbGVtZW50LT5pc0Vu
YWJsZWQoKSkpOworICAgIGJ1aWxkZXIuYXBwZW5kKGF0dHJpYnV0ZUxpbmUuZ2V0KCkpOworCisg
ICAgYXR0cmlidXRlTGluZS5zZXQoZ19zdHJkdXBfcHJpbnRmKCJBWEV4cGFuZGVkOiAlZFxuIiwg
ZWxlbWVudC0+aXNFeHBhbmRlZCgpKSk7CisgICAgYnVpbGRlci5hcHBlbmQoYXR0cmlidXRlTGlu
ZS5nZXQoKSk7CisKKyAgICBhdHRyaWJ1dGVMaW5lLnNldChnX3N0cmR1cF9wcmludGYoIkFYUmVx
dWlyZWQ6ICVkXG4iLCBlbGVtZW50LT5pc1JlcXVpcmVkKCkpKTsKKyAgICBidWlsZGVyLmFwcGVu
ZChhdHRyaWJ1dGVMaW5lLmdldCgpKTsKKworICAgIGF0dHJpYnV0ZUxpbmUuc2V0KGdfc3RyZHVw
X3ByaW50ZigiQVhDaGVja2VkOiAlZFxuIiwgZWxlbWVudC0+aXNDaGVja2VkKCkpKTsKKyAgICBi
dWlsZGVyLmFwcGVuZChhdHRyaWJ1dGVMaW5lLmdldCgpKTsKKworICAgIC8vIFdlIGFwcGVuZCB0
aGUgQVRLIHNwZWNpZmljIGF0dHJpYnV0ZXMgYXMgYSBzaW5nbGUgbGluZSBhdCB0aGUgZW5kLgor
ICAgIEdPd25QdHI8Y2hhcj4gYXR0cmlidXRlRGF0YShnZXRBdGtBdHRyaWJ1dGVTZXRBc1N0cmlu
ZyhlbGVtZW50LT5wbGF0Zm9ybVVJRWxlbWVudCgpKSk7CisgICAgYXR0cmlidXRlTGluZS5zZXQo
Z19zdHJkdXBfcHJpbnRmKCJBWFBsYXRmb3JtQXR0cmlidXRlczogJXMiLCBhdHRyaWJ1dGVEYXRh
LmdldCgpKSk7CisgICAgYnVpbGRlci5hcHBlbmQoYXR0cmlidXRlTGluZS5nZXQoKSk7CisKKyAg
ICByZXR1cm4gYnVpbGRlci50b1N0cmluZygpOworfQorCiBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50
OjpBY2Nlc3NpYmlsaXR5VUlFbGVtZW50KFBsYXRmb3JtVUlFbGVtZW50IGVsZW1lbnQpCiAgICAg
OiBtX2VsZW1lbnQoZWxlbWVudCkKIHsKQEAgLTMxMCwzMCArNDEzLDEyIEBAIHVuc2lnbmVkIEFj
Y2Vzc2liaWxpdHlVSUVsZW1lbnQ6OmluZGV4T2ZDaGlsZChBY2Nlc3NpYmlsaXR5VUlFbGVtZW50
KiBlbGVtZW50KQogICAgIHJldHVybiAwOwogfQogCi1zdGF0aWMgY2hhciogZ2V0QXRrQXR0cmli
dXRlU2V0QXNTdHJpbmcoQXRrT2JqZWN0KiBhY2Nlc3NpYmxlKQotewotICAgIEdTdHJpbmcqIHN0
ciA9IGdfc3RyaW5nX25ldygwKTsKLQotICAgIEF0a0F0dHJpYnV0ZVNldCogYXR0cmlidXRlU2V0
ID0gYXRrX29iamVjdF9nZXRfYXR0cmlidXRlcyhhY2Nlc3NpYmxlKTsKLSAgICBmb3IgKEF0a0F0
dHJpYnV0ZVNldCogYXR0cmlidXRlcyA9IGF0dHJpYnV0ZVNldDsgYXR0cmlidXRlczsgYXR0cmli
dXRlcyA9IGF0dHJpYnV0ZXMtPm5leHQpIHsKLSAgICAgICAgQXRrQXR0cmlidXRlKiBhdHRyaWJ1
dGUgPSBzdGF0aWNfY2FzdDxBdGtBdHRyaWJ1dGUqPihhdHRyaWJ1dGVzLT5kYXRhKTsKLSAgICAg
ICAgR093blB0cjxnY2hhcj4gYXR0cmlidXRlRGF0YShnX3N0cmNvbmNhdChhdHRyaWJ1dGUtPm5h
bWUsICI6IiwgYXR0cmlidXRlLT52YWx1ZSwgTlVMTCkpOwotICAgICAgICBnX3N0cmluZ19hcHBl
bmQoc3RyLCBhdHRyaWJ1dGVEYXRhLmdldCgpKTsKLSAgICAgICAgaWYgKGF0dHJpYnV0ZXMtPm5l
eHQpCi0gICAgICAgICAgICBnX3N0cmluZ19hcHBlbmQoc3RyLCAiLCAiKTsKLSAgICB9Ci0gICAg
YXRrX2F0dHJpYnV0ZV9zZXRfZnJlZShhdHRyaWJ1dGVTZXQpOwotCi0gICAgcmV0dXJuIGdfc3Ry
aW5nX2ZyZWUoc3RyLCBGQUxTRSk7Ci19Ci0KIEpTU3RyaW5nUmVmIEFjY2Vzc2liaWxpdHlVSUVs
ZW1lbnQ6OmFsbEF0dHJpYnV0ZXMoKQogewogICAgIGlmICghbV9lbGVtZW50IHx8ICFBVEtfSVNf
T0JKRUNUKG1fZWxlbWVudCkpCiAgICAgICAgIHJldHVybiBKU1N0cmluZ0NyZWF0ZVdpdGhDaGFy
YWN0ZXJzKDAsIDApOwogCi0gICAgR093blB0cjxjaGFyPiBhdHRyaWJ1dGVEYXRhKGdldEF0a0F0
dHJpYnV0ZVNldEFzU3RyaW5nKEFUS19PQkpFQ1QobV9lbGVtZW50KSkpOwotICAgIHJldHVybiBK
U1N0cmluZ0NyZWF0ZVdpdGhVVEY4Q1N0cmluZyhhdHRyaWJ1dGVEYXRhLmdldCgpKTsKKyAgICBy
ZXR1cm4gSlNTdHJpbmdDcmVhdGVXaXRoVVRGOENTdHJpbmcoYXR0cmlidXRlc09mRWxlbWVudCh0
aGlzKS51dGY4KCkuZGF0YSgpKTsKIH0KIAogSlNTdHJpbmdSZWYgQWNjZXNzaWJpbGl0eVVJRWxl
bWVudDo6YXR0cmlidXRlc09mTGlua2VkVUlFbGVtZW50cygpCkBAIC0zOTcsMTIgKzQ4MiwxNSBA
QCBKU1N0cmluZ1JlZiBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpwYXJhbWV0ZXJpemVkQXR0cmli
dXRlTmFtZXMoKQogCiBKU1N0cmluZ1JlZiBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50Ojpyb2xlKCkK
IHsKKyAgICBpZiAoIW1fZWxlbWVudCB8fCAhQVRLX0lTX09CSkVDVChtX2VsZW1lbnQpKQorICAg
ICAgICByZXR1cm4gSlNTdHJpbmdDcmVhdGVXaXRoQ2hhcmFjdGVycygwLCAwKTsKKwogICAgIEF0
a1JvbGUgcm9sZSA9IGF0a19vYmplY3RfZ2V0X3JvbGUoQVRLX09CSkVDVChtX2VsZW1lbnQpKTsK
ICAgICBpZiAoIXJvbGUpCiAgICAgICAgIHJldHVybiBKU1N0cmluZ0NyZWF0ZVdpdGhDaGFyYWN0
ZXJzKDAsIDApOwogCi0gICAgU3RyaW5nIHJvbGVTdHJpbmcgPSByb2xlVG9TdHJpbmcocm9sZSk7
Ci0gICAgcmV0dXJuIEpTU3RyaW5nQ3JlYXRlV2l0aFVURjhDU3RyaW5nKHJvbGVTdHJpbmcudXRm
OCgpLmRhdGEoKSk7CisgICAgR093blB0cjxjaGFyPiByb2xlU3RyaW5nV2l0aFByZWZpeChnX3N0
cmR1cF9wcmludGYoIkFYUm9sZTogJXMiLCByb2xlVG9TdHJpbmcocm9sZSkpKTsKKyAgICByZXR1
cm4gSlNTdHJpbmdDcmVhdGVXaXRoVVRGOENTdHJpbmcocm9sZVN0cmluZ1dpdGhQcmVmaXguZ2V0
KCkpOwogfQogCiBKU1N0cmluZ1JlZiBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpzdWJyb2xlKCkK
ZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvYXRrL0Fj
Y2Vzc2liaWxpdHlVSUVsZW1lbnRBdGsuY3BwIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9Jbmpl
Y3RlZEJ1bmRsZS9hdGsvQWNjZXNzaWJpbGl0eVVJRWxlbWVudEF0ay5jcHAKaW5kZXggYTcyZjQ4
Ni4uMzE5YmUxNSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1
bmRsZS9hdGsvQWNjZXNzaWJpbGl0eVVJRWxlbWVudEF0ay5jcHAKKysrIGIvVG9vbHMvV2ViS2l0
VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9hdGsvQWNjZXNzaWJpbGl0eVVJRWxlbWVudEF0ay5j
cHAKQEAgLTMzLDExICszMywxMyBAQAogI2luY2x1ZGUgIkluamVjdGVkQnVuZGxlUGFnZS5oIgog
I2luY2x1ZGUgIk5vdEltcGxlbWVudGVkLmgiCiAjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSlNT
dHJpbmdSZWYuaD4KKyNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9PcGFxdWVKU1N0cmluZy5oPgog
I2luY2x1ZGUgPGF0ay9hdGsuaD4KICNpbmNsdWRlIDx3dGYvQXNzZXJ0aW9ucy5oPgogI2luY2x1
ZGUgPHd0Zi9nb2JqZWN0L0dPd25QdHIuaD4KICNpbmNsdWRlIDx3dGYvZ29iamVjdC9HUmVmUHRy
Lmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L1N0
cmluZ0J1aWxkZXIuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KICNpbmNsdWRl
IDx3dGYvdW5pY29kZS9DaGFyYWN0ZXJOYW1lcy5oPgogCkBAIC0xNzcsMTEwICsxNzksMTk0IEBA
IHN0YXRpYyBjb25zdCBnY2hhciogcm9sZVRvU3RyaW5nKEF0a1JvbGUgcm9sZSkKIHsKICAgICBz
d2l0Y2ggKHJvbGUpIHsKICAgICBjYXNlIEFUS19ST0xFX0FMRVJUOgotICAgICAgICByZXR1cm4g
IkFYUm9sZTogQVhBbGVydCI7CisgICAgICAgIHJldHVybiAiQVhBbGVydCI7CiAgICAgY2FzZSBB
VEtfUk9MRV9DQU5WQVM6Ci0gICAgICAgIHJldHVybiAiQVhSb2xlOiBBWENhbnZhcyI7CisgICAg
ICAgIHJldHVybiAiQVhDYW52YXMiOwogICAgIGNhc2UgQVRLX1JPTEVfQ0hFQ0tfQk9YOgotICAg
ICAgICByZXR1cm4gIkFYUm9sZTogQVhDaGVja0JveCI7CisgICAgICAgIHJldHVybiAiQVhDaGVj
a0JveCI7CiAgICAgY2FzZSBBVEtfUk9MRV9DT0xVTU5fSEVBREVSOgotICAgICAgICByZXR1cm4g
IkFYUm9sZTogQVhDb2x1bW5IZWFkZXIiOworICAgICAgICByZXR1cm4gIkFYQ29sdW1uSGVhZGVy
IjsKICAgICBjYXNlIEFUS19ST0xFX0NPTUJPX0JPWDoKLSAgICAgICAgcmV0dXJuICJBWFJvbGU6
IEFYQ29tYm9Cb3giOworICAgICAgICByZXR1cm4gIkFYQ29tYm9Cb3giOwogICAgIGNhc2UgQVRL
X1JPTEVfRE9DVU1FTlRfRlJBTUU6Ci0gICAgICAgIHJldHVybiAiQVhSb2xlOiBBWFdlYkFyZWEi
OworICAgICAgICByZXR1cm4gIkFYV2ViQXJlYSI7CiAgICAgY2FzZSBBVEtfUk9MRV9FTlRSWToK
LSAgICAgICAgcmV0dXJuICJBWFJvbGU6IEFYVGV4dEZpZWxkIjsKKyAgICAgICAgcmV0dXJuICJB
WFRleHRGaWVsZCI7CiAgICAgY2FzZSBBVEtfUk9MRV9GT09URVI6Ci0gICAgICAgIHJldHVybiAi
QVhSb2xlOiBBWEZvb3RlciI7CisgICAgICAgIHJldHVybiAiQVhGb290ZXIiOwogICAgIGNhc2Ug
QVRLX1JPTEVfRk9STToKLSAgICAgICAgcmV0dXJuICJBWFJvbGU6IEFYRm9ybSI7CisgICAgICAg
IHJldHVybiAiQVhGb3JtIjsKICAgICBjYXNlIEFUS19ST0xFX0dST1VQSU5HOgotICAgICAgICBy
ZXR1cm4gIkFYUm9sZTogQVhHcm91cCI7CisgICAgICAgIHJldHVybiAiQVhHcm91cCI7CiAgICAg
Y2FzZSBBVEtfUk9MRV9IRUFESU5HOgotICAgICAgICByZXR1cm4gIkFYUm9sZTogQVhIZWFkaW5n
IjsKKyAgICAgICAgcmV0dXJuICJBWEhlYWRpbmciOwogICAgIGNhc2UgQVRLX1JPTEVfSU1BR0U6
Ci0gICAgICAgIHJldHVybiAiQVhSb2xlOiBBWEltYWdlIjsKKyAgICAgICAgcmV0dXJuICJBWElt
YWdlIjsKICAgICBjYXNlIEFUS19ST0xFX0lNQUdFX01BUDoKLSAgICAgICAgcmV0dXJuICJBWFJv
bGU6IEFYSW1hZ2VNYXAiOworICAgICAgICByZXR1cm4gIkFYSW1hZ2VNYXAiOwogICAgIGNhc2Ug
QVRLX1JPTEVfTEFCRUw6Ci0gICAgICAgIHJldHVybiAiQVhSb2xlOiBBWExhYmVsIjsKKyAgICAg
ICAgcmV0dXJuICJBWExhYmVsIjsKICAgICBjYXNlIEFUS19ST0xFX0xJTks6Ci0gICAgICAgIHJl
dHVybiAiQVhSb2xlOiBBWExpbmsiOworICAgICAgICByZXR1cm4gIkFYTGluayI7CiAgICAgY2Fz
ZSBBVEtfUk9MRV9MSVNUOgotICAgICAgICByZXR1cm4gIkFYUm9sZTogQVhMaXN0IjsKKyAgICAg
ICAgcmV0dXJuICJBWExpc3QiOwogICAgIGNhc2UgQVRLX1JPTEVfTElTVF9CT1g6Ci0gICAgICAg
IHJldHVybiAiQVhSb2xlOiBBWExpc3RCb3giOworICAgICAgICByZXR1cm4gIkFYTGlzdEJveCI7
CiAgICAgY2FzZSBBVEtfUk9MRV9MSVNUX0lURU06Ci0gICAgICAgIHJldHVybiAiQVhSb2xlOiBB
WExpc3RJdGVtIjsKKyAgICAgICAgcmV0dXJuICJBWExpc3RJdGVtIjsKICAgICBjYXNlIEFUS19S
T0xFX01FTlU6Ci0gICAgICAgIHJldHVybiAiQVhSb2xlOiBBWE1lbnUiOworICAgICAgICByZXR1
cm4gIkFYTWVudSI7CiAgICAgY2FzZSBBVEtfUk9MRV9NRU5VX0JBUjoKLSAgICAgICAgcmV0dXJu
ICJBWFJvbGU6IEFYTWVudUJhciI7CisgICAgICAgIHJldHVybiAiQVhNZW51QmFyIjsKICAgICBj
YXNlIEFUS19ST0xFX01FTlVfSVRFTToKLSAgICAgICAgcmV0dXJuICJBWFJvbGU6IEFYTWVudUl0
ZW0iOworICAgICAgICByZXR1cm4gIkFYTWVudUl0ZW0iOwogICAgIGNhc2UgQVRLX1JPTEVfUEFH
RV9UQUI6Ci0gICAgICAgIHJldHVybiAiQVhSb2xlOiBBWFRhYiI7CisgICAgICAgIHJldHVybiAi
QVhUYWIiOwogICAgIGNhc2UgQVRLX1JPTEVfUEFHRV9UQUJfTElTVDoKLSAgICAgICAgcmV0dXJu
ICJBWFJvbGU6IEFYVGFiR3JvdXAiOworICAgICAgICByZXR1cm4gIkFYVGFiR3JvdXAiOwogICAg
IGNhc2UgQVRLX1JPTEVfUEFORUw6Ci0gICAgICAgIHJldHVybiAiQVhSb2xlOiBBWEdyb3VwIjsK
KyAgICAgICAgcmV0dXJuICJBWEdyb3VwIjsKICAgICBjYXNlIEFUS19ST0xFX1BBUkFHUkFQSDoK
LSAgICAgICAgcmV0dXJuICJBWFJvbGU6IEFYUGFyYWdyYXBoIjsKKyAgICAgICAgcmV0dXJuICJB
WFBhcmFncmFwaCI7CiAgICAgY2FzZSBBVEtfUk9MRV9QQVNTV09SRF9URVhUOgotICAgICAgICBy
ZXR1cm4gIkFYUm9sZTogQVhQYXNzd29yZEZpZWxkIjsKKyAgICAgICAgcmV0dXJuICJBWFBhc3N3
b3JkRmllbGQiOwogICAgIGNhc2UgQVRLX1JPTEVfUFVTSF9CVVRUT046Ci0gICAgICAgIHJldHVy
biAiQVhSb2xlOiBBWEJ1dHRvbiI7CisgICAgICAgIHJldHVybiAiQVhCdXR0b24iOwogICAgIGNh
c2UgQVRLX1JPTEVfUkFESU9fQlVUVE9OOgotICAgICAgICByZXR1cm4gIkFYUm9sZTogQVhSYWRp
b0J1dHRvbiI7CisgICAgICAgIHJldHVybiAiQVhSYWRpb0J1dHRvbiI7CiAgICAgY2FzZSBBVEtf
Uk9MRV9ST1dfSEVBREVSOgotICAgICAgICByZXR1cm4gIkFYUm9sZTogQVhSb3dIZWFkZXIiOwor
ICAgICAgICByZXR1cm4gIkFYUm93SGVhZGVyIjsKICAgICBjYXNlIEFUS19ST0xFX1JVTEVSOgot
ICAgICAgICByZXR1cm4gIkFYUm9sZTogQVhSdWxlciI7CisgICAgICAgIHJldHVybiAiQVhSdWxl
ciI7CiAgICAgY2FzZSBBVEtfUk9MRV9TQ1JPTExfQkFSOgotICAgICAgICByZXR1cm4gIkFYUm9s
ZTogQVhTY3JvbGxCYXIiOworICAgICAgICByZXR1cm4gIkFYU2Nyb2xsQmFyIjsKICAgICBjYXNl
IEFUS19ST0xFX1NDUk9MTF9QQU5FOgotICAgICAgICByZXR1cm4gIkFYUm9sZTogQVhTY3JvbGxB
cmVhIjsKKyAgICAgICAgcmV0dXJuICJBWFNjcm9sbEFyZWEiOwogICAgIGNhc2UgQVRLX1JPTEVf
U0VDVElPTjoKLSAgICAgICAgcmV0dXJuICJBWFJvbGU6IEFYRGl2IjsKKyAgICAgICAgcmV0dXJu
ICJBWERpdiI7CiAgICAgY2FzZSBBVEtfUk9MRV9TRVBBUkFUT1I6Ci0gICAgICAgIHJldHVybiAi
QVhSb2xlOiBBWEhvcml6b250YWxSdWxlIjsKKyAgICAgICAgcmV0dXJuICJBWEhvcml6b250YWxS
dWxlIjsKICAgICBjYXNlIEFUS19ST0xFX1NMSURFUjoKLSAgICAgICAgcmV0dXJuICJBWFJvbGU6
IEFYU2xpZGVyIjsKKyAgICAgICAgcmV0dXJuICJBWFNsaWRlciI7CiAgICAgY2FzZSBBVEtfUk9M
RV9TUElOX0JVVFRPTjoKLSAgICAgICAgcmV0dXJuICJBWFJvbGU6IEFYU3BpbkJ1dHRvbiI7Cisg
ICAgICAgIHJldHVybiAiQVhTcGluQnV0dG9uIjsKICAgICBjYXNlIEFUS19ST0xFX1RBQkxFOgot
ICAgICAgICByZXR1cm4gIkFYUm9sZTogQVhUYWJsZSI7CisgICAgICAgIHJldHVybiAiQVhUYWJs
ZSI7CiAgICAgY2FzZSBBVEtfUk9MRV9UQUJMRV9DRUxMOgotICAgICAgICByZXR1cm4gIkFYUm9s
ZTogQVhDZWxsIjsKKyAgICAgICAgcmV0dXJuICJBWENlbGwiOwogICAgIGNhc2UgQVRLX1JPTEVf
VEFCTEVfQ09MVU1OX0hFQURFUjoKLSAgICAgICAgcmV0dXJuICJBWFJvbGU6IEFYQ29sdW1uSGVh
ZGVyIjsKKyAgICAgICAgcmV0dXJuICJBWENvbHVtbkhlYWRlciI7CiAgICAgY2FzZSBBVEtfUk9M
RV9UQUJMRV9ST1c6Ci0gICAgICAgIHJldHVybiAiQVhSb2xlOiBBWFJvdyI7CisgICAgICAgIHJl
dHVybiAiQVhSb3ciOwogICAgIGNhc2UgQVRLX1JPTEVfVEFCTEVfUk9XX0hFQURFUjoKLSAgICAg
ICAgcmV0dXJuICJBWFJvbGU6IEFYUm93SGVhZGVyIjsKKyAgICAgICAgcmV0dXJuICJBWFJvd0hl
YWRlciI7CiAgICAgY2FzZSBBVEtfUk9MRV9UT0dHTEVfQlVUVE9OOgotICAgICAgICByZXR1cm4g
IkFYUm9sZTogQVhUb2dnbGVCdXR0b24iOworICAgICAgICByZXR1cm4gIkFYVG9nZ2xlQnV0dG9u
IjsKICAgICBjYXNlIEFUS19ST0xFX1RPT0xfQkFSOgotICAgICAgICByZXR1cm4gIkFYUm9sZTog
QVhUb29sYmFyIjsKKyAgICAgICAgcmV0dXJuICJBWFRvb2xiYXIiOwogICAgIGNhc2UgQVRLX1JP
TEVfVE9PTF9USVA6Ci0gICAgICAgIHJldHVybiAiQVhSb2xlOiBBWFVzZXJJbnRlcmZhY2VUb29s
dGlwIjsKKyAgICAgICAgcmV0dXJuICJBWFVzZXJJbnRlcmZhY2VUb29sdGlwIjsKICAgICBjYXNl
IEFUS19ST0xFX1RSRUU6Ci0gICAgICAgIHJldHVybiAiQVhSb2xlOiBBWFRyZWUiOworICAgICAg
ICByZXR1cm4gIkFYVHJlZSI7CiAgICAgY2FzZSBBVEtfUk9MRV9UUkVFX1RBQkxFOgotICAgICAg
ICByZXR1cm4gIkFYUm9sZTogQVhUcmVlR3JpZCI7CisgICAgICAgIHJldHVybiAiQVhUcmVlR3Jp
ZCI7CiAgICAgY2FzZSBBVEtfUk9MRV9UUkVFX0lURU06Ci0gICAgICAgIHJldHVybiAiQVhSb2xl
OiBBWFRyZWVJdGVtIjsKKyAgICAgICAgcmV0dXJuICJBWFRyZWVJdGVtIjsKICAgICBjYXNlIEFU
S19ST0xFX1dJTkRPVzoKLSAgICAgICAgcmV0dXJuICJBWFJvbGU6IEFYV2luZG93IjsKKyAgICAg
ICAgcmV0dXJuICJBWFdpbmRvdyI7CiAgICAgY2FzZSBBVEtfUk9MRV9VTktOT1dOOgotICAgICAg
ICByZXR1cm4gIkFYUm9sZTogQVhVbmtub3duIjsKKyAgICAgICAgcmV0dXJuICJBWFVua25vd24i
OwogICAgIGRlZmF1bHQ6CiAgICAgICAgIC8vIFdlIHdhbnQgdG8gZGlzdGluZ3Vpc2ggQVRLX1JP
TEVfVU5LTk9XTiBmcm9tIGEga25vd24gQXRrUm9sZSB3aGljaAogICAgICAgICAvLyBvdXIgRFJU
IGlzbid0IHByb3Blcmx5IGhhbmRsaW5nLgotICAgICAgICByZXR1cm4gIkFYUm9sZTogRklYTUUg
bm90IGlkZW50aWZpZWQiOworICAgICAgICByZXR1cm4gIkZJWE1FIG5vdCBpZGVudGlmaWVkIjsK
ICAgICB9CiB9CiAKK3N0YXRpYyBTdHJpbmcgYXR0cmlidXRlc09mRWxlbWVudChBY2Nlc3NpYmls
aXR5VUlFbGVtZW50KiBlbGVtZW50KQoreworICAgIEdPd25QdHI8Y2hhcj4gYXR0cmlidXRlTGlu
ZTsKKyAgICBTdHJpbmdCdWlsZGVyIGJ1aWxkZXI7CisKKyAgICBhdHRyaWJ1dGVMaW5lLnNldChn
X3N0cmR1cF9wcmludGYoIiVzXG4iLCBlbGVtZW50LT5yb2xlKCktPnN0cmluZygpLnV0ZjgoKS5k
YXRhKCkpKTsKKyAgICBidWlsZGVyLmFwcGVuZChhdHRyaWJ1dGVMaW5lLmdldCgpKTsKKworICAg
IC8vIEZvciB0aGUgcGFyZW50IHdlIHByaW50IGl0cyByb2xlIGFuZCBpdHMgbmFtZSwgaWYgYXZh
aWxhYmxlLgorICAgIGJ1aWxkZXIuYXBwZW5kKCJBWFBhcmVudDogIik7CisgICAgQWNjZXNzaWJp
bGl0eVVJRWxlbWVudCogcGFyZW50ID0gZWxlbWVudC0+cGFyZW50RWxlbWVudCgpLmdldCgpOwor
ICAgIGlmIChBdGtPYmplY3QqIGF0a1BhcmVudCA9IHBhcmVudC0+cGxhdGZvcm1VSUVsZW1lbnQo
KS5nZXQoKSkgeworICAgICAgICBidWlsZGVyLmFwcGVuZChyb2xlVG9TdHJpbmcoYXRrX29iamVj
dF9nZXRfcm9sZShhdGtQYXJlbnQpKSk7CisgICAgICAgIGNvbnN0IGNoYXIqIHBhcmVudE5hbWUg
PSBhdGtfb2JqZWN0X2dldF9uYW1lKGF0a1BhcmVudCk7CisgICAgICAgIGlmIChwYXJlbnROYW1l
ICYmIGdfdXRmOF9zdHJsZW4ocGFyZW50TmFtZSwgLTEpKSB7CisgICAgICAgICAgICBhdHRyaWJ1
dGVMaW5lLnNldChnX3N0cmR1cF9wcmludGYoIjogJXMiLCBwYXJlbnROYW1lKSk7CisKKyAgICAg
ICAgfQorICAgIH0gZWxzZQorICAgICAgICBidWlsZGVyLmFwcGVuZCgiKG51bGwpIik7CisgICAg
YnVpbGRlci5hcHBlbmQoIlxuIik7CisKKyAgICBhdHRyaWJ1dGVMaW5lLnNldChnX3N0cmR1cF9w
cmludGYoIkFYQ2hpbGRyZW46ICVkXG4iLCBlbGVtZW50LT5jaGlsZHJlbkNvdW50KCkpKTsKKyAg
ICBidWlsZGVyLmFwcGVuZChhdHRyaWJ1dGVMaW5lLmdldCgpKTsKKworICAgIGF0dHJpYnV0ZUxp
bmUuc2V0KGdfc3RyZHVwX3ByaW50ZigiQVhQb3NpdGlvbjogeyAlZiwgJWYgfVxuIiwgZWxlbWVu
dC0+eCgpLCBlbGVtZW50LT55KCkpKTsKKyAgICBidWlsZGVyLmFwcGVuZChhdHRyaWJ1dGVMaW5l
LmdldCgpKTsKKworICAgIGF0dHJpYnV0ZUxpbmUuc2V0KGdfc3RyZHVwX3ByaW50ZigiQVhTaXpl
OiB7ICVmLCAlZiB9XG4iLCBlbGVtZW50LT53aWR0aCgpLCBlbGVtZW50LT5oZWlnaHQoKSkpOwor
ICAgIGJ1aWxkZXIuYXBwZW5kKGF0dHJpYnV0ZUxpbmUuZ2V0KCkpOworCisgICAgU3RyaW5nIHRp
dGxlID0gZWxlbWVudC0+dGl0bGUoKS0+c3RyaW5nKCk7CisgICAgaWYgKCF0aXRsZS5pc0VtcHR5
KCkpIHsKKyAgICAgICAgYXR0cmlidXRlTGluZS5zZXQoZ19zdHJkdXBfcHJpbnRmKCIlc1xuIiwg
dGl0bGUudXRmOCgpLmRhdGEoKSkpOworICAgICAgICBidWlsZGVyLmFwcGVuZChhdHRyaWJ1dGVM
aW5lLmdldCgpKTsKKyAgICB9CisKKyAgICBTdHJpbmcgZGVzY3JpcHRpb24gPSBlbGVtZW50LT5k
ZXNjcmlwdGlvbigpLT5zdHJpbmcoKTsKKyAgICBpZiAoIWRlc2NyaXB0aW9uLmlzRW1wdHkoKSkg
eworICAgICAgICBhdHRyaWJ1dGVMaW5lLnNldChnX3N0cmR1cF9wcmludGYoIiVzXG4iLCBkZXNj
cmlwdGlvbi51dGY4KCkuZGF0YSgpKSk7CisgICAgICAgIGJ1aWxkZXIuYXBwZW5kKGF0dHJpYnV0
ZUxpbmUuZ2V0KCkpOworICAgIH0KKworICAgIFN0cmluZyB2YWx1ZSA9IGVsZW1lbnQtPnN0cmlu
Z1ZhbHVlKCktPnN0cmluZygpOworICAgIGlmICghdmFsdWUuaXNFbXB0eSgpKSB7CisgICAgICAg
IGF0dHJpYnV0ZUxpbmUuc2V0KGdfc3RyZHVwX3ByaW50ZigiJXNcbiIsIHZhbHVlLnV0ZjgoKS5k
YXRhKCkpKTsKKyAgICAgICAgYnVpbGRlci5hcHBlbmQoYXR0cmlidXRlTGluZS5nZXQoKSk7Cisg
ICAgfQorCisgICAgYXR0cmlidXRlTGluZS5zZXQoZ19zdHJkdXBfcHJpbnRmKCJBWEZvY3VzYWJs
ZTogJWRcbiIsIGVsZW1lbnQtPmlzRm9jdXNhYmxlKCkpKTsKKyAgICBidWlsZGVyLmFwcGVuZChh
dHRyaWJ1dGVMaW5lLmdldCgpKTsKKworICAgIGF0dHJpYnV0ZUxpbmUuc2V0KGdfc3RyZHVwX3By
aW50ZigiQVhGb2N1c2VkOiAlZFxuIiwgZWxlbWVudC0+aXNGb2N1c2VkKCkpKTsKKyAgICBidWls
ZGVyLmFwcGVuZChhdHRyaWJ1dGVMaW5lLmdldCgpKTsKKworICAgIGF0dHJpYnV0ZUxpbmUuc2V0
KGdfc3RyZHVwX3ByaW50ZigiQVhTZWxlY3RhYmxlOiAlZFxuIiwgZWxlbWVudC0+aXNTZWxlY3Rh
YmxlKCkpKTsKKyAgICBidWlsZGVyLmFwcGVuZChhdHRyaWJ1dGVMaW5lLmdldCgpKTsKKworICAg
IGF0dHJpYnV0ZUxpbmUuc2V0KGdfc3RyZHVwX3ByaW50ZigiQVhTZWxlY3RlZDogJWRcbiIsIGVs
ZW1lbnQtPmlzU2VsZWN0ZWQoKSkpOworICAgIGJ1aWxkZXIuYXBwZW5kKGF0dHJpYnV0ZUxpbmUu
Z2V0KCkpOworCisgICAgYXR0cmlidXRlTGluZS5zZXQoZ19zdHJkdXBfcHJpbnRmKCJBWE11bHRp
U2VsZWN0YWJsZTogJWRcbiIsIGVsZW1lbnQtPmlzTXVsdGlTZWxlY3RhYmxlKCkpKTsKKyAgICBi
dWlsZGVyLmFwcGVuZChhdHRyaWJ1dGVMaW5lLmdldCgpKTsKKworICAgIGF0dHJpYnV0ZUxpbmUu
c2V0KGdfc3RyZHVwX3ByaW50ZigiQVhFbmFibGVkOiAlZFxuIiwgZWxlbWVudC0+aXNFbmFibGVk
KCkpKTsKKyAgICBidWlsZGVyLmFwcGVuZChhdHRyaWJ1dGVMaW5lLmdldCgpKTsKKworICAgIGF0
dHJpYnV0ZUxpbmUuc2V0KGdfc3RyZHVwX3ByaW50ZigiQVhFeHBhbmRlZDogJWRcbiIsIGVsZW1l
bnQtPmlzRXhwYW5kZWQoKSkpOworICAgIGJ1aWxkZXIuYXBwZW5kKGF0dHJpYnV0ZUxpbmUuZ2V0
KCkpOworCisgICAgYXR0cmlidXRlTGluZS5zZXQoZ19zdHJkdXBfcHJpbnRmKCJBWFJlcXVpcmVk
OiAlZFxuIiwgZWxlbWVudC0+aXNSZXF1aXJlZCgpKSk7CisgICAgYnVpbGRlci5hcHBlbmQoYXR0
cmlidXRlTGluZS5nZXQoKSk7CisKKyAgICBhdHRyaWJ1dGVMaW5lLnNldChnX3N0cmR1cF9wcmlu
dGYoIkFYQ2hlY2tlZDogJWRcbiIsIGVsZW1lbnQtPmlzQ2hlY2tlZCgpKSk7CisgICAgYnVpbGRl
ci5hcHBlbmQoYXR0cmlidXRlTGluZS5nZXQoKSk7CisKKyAgICAvLyBXZSBhcHBlbmQgdGhlIEFU
SyBzcGVjaWZpYyBhdHRyaWJ1dGVzIGFzIGEgc2luZ2xlIGxpbmUgYXQgdGhlIGVuZC4KKyAgICBH
T3duUHRyPGNoYXI+IGF0dHJpYnV0ZURhdGEoZ2V0QXRrQXR0cmlidXRlU2V0QXNTdHJpbmcoZWxl
bWVudC0+cGxhdGZvcm1VSUVsZW1lbnQoKS5nZXQoKSkpOworICAgIGF0dHJpYnV0ZUxpbmUuc2V0
KGdfc3RyZHVwX3ByaW50ZigiQVhQbGF0Zm9ybUF0dHJpYnV0ZXM6ICVzIiwgYXR0cmlidXRlRGF0
YS5nZXQoKSkpOworICAgIGJ1aWxkZXIuYXBwZW5kKGF0dHJpYnV0ZUxpbmUuZ2V0KCkpOworCisg
ICAgcmV0dXJuIGJ1aWxkZXIudG9TdHJpbmcoKTsKK30KKwogQWNjZXNzaWJpbGl0eVVJRWxlbWVu
dDo6QWNjZXNzaWJpbGl0eVVJRWxlbWVudChQbGF0Zm9ybVVJRWxlbWVudCBlbGVtZW50KQogICAg
IDogbV9lbGVtZW50KGVsZW1lbnQpCiB7CkBAIC00NzgsOCArNTY0LDcgQEAgSlNSZXRhaW5QdHI8
SlNTdHJpbmdSZWY+IEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OmFsbEF0dHJpYnV0ZXMoKQogICAg
IGlmICghbV9lbGVtZW50IHx8ICFBVEtfSVNfT0JKRUNUKG1fZWxlbWVudC5nZXQoKSkpCiAgICAg
ICAgIHJldHVybiBKU1N0cmluZ0NyZWF0ZVdpdGhDaGFyYWN0ZXJzKDAsIDApOwogCi0gICAgR093
blB0cjxjaGFyPiBhdHRyaWJ1dGVEYXRhKGdldEF0a0F0dHJpYnV0ZVNldEFzU3RyaW5nKEFUS19P
QkpFQ1QobV9lbGVtZW50LmdldCgpKSkpOwotICAgIHJldHVybiBKU1N0cmluZ0NyZWF0ZVdpdGhV
VEY4Q1N0cmluZyhhdHRyaWJ1dGVEYXRhLmdldCgpKTsKKyAgICByZXR1cm4gSlNTdHJpbmdDcmVh
dGVXaXRoVVRGOENTdHJpbmcoYXR0cmlidXRlc09mRWxlbWVudCh0aGlzKS51dGY4KCkuZGF0YSgp
KTsKIH0KIAogSlNSZXRhaW5QdHI8SlNTdHJpbmdSZWY+IEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6
OnN0cmluZ0F0dHJpYnV0ZVZhbHVlKEpTU3RyaW5nUmVmIGF0dHJpYnV0ZSkKQEAgLTU0MCw4ICs2
MjUsOCBAQCBKU1JldGFpblB0cjxKU1N0cmluZ1JlZj4gQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6
cm9sZSgpCiAgICAgaWYgKCFyb2xlKQogICAgICAgICByZXR1cm4gSlNTdHJpbmdDcmVhdGVXaXRo
Q2hhcmFjdGVycygwLCAwKTsKIAotICAgIEdPd25QdHI8Z2NoYXI+IGF4Um9sZShnX3N0cmR1cChy
b2xlVG9TdHJpbmcocm9sZSkpKTsKLSAgICByZXR1cm4gSlNTdHJpbmdDcmVhdGVXaXRoVVRGOENT
dHJpbmcoYXhSb2xlLmdldCgpKTsKKyAgICBHT3duUHRyPGNoYXI+IHJvbGVTdHJpbmdXaXRoUHJl
Zml4KGdfc3RyZHVwX3ByaW50ZigiQVhSb2xlOiAlcyIsIHJvbGVUb1N0cmluZyhyb2xlKSkpOwor
ICAgIHJldHVybiBKU1N0cmluZ0NyZWF0ZVdpdGhVVEY4Q1N0cmluZyhyb2xlU3RyaW5nV2l0aFBy
ZWZpeC5nZXQoKSk7CiB9CiAKIEpTUmV0YWluUHRyPEpTU3RyaW5nUmVmPiBBY2Nlc3NpYmlsaXR5
VUlFbGVtZW50OjpzdWJyb2xlKCkKLS0gCjEuNy4xMC40Cgo=
</data>
<flag name="review"
          id="229321"
          type_id="1"
          status="+"
          setter="gustavo"
    />
          </attachment>
      

    </bug>

</bugzilla>