<?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>75930</bug_id>
          
          <creation_ts>2012-01-09 19:23:57 -0800</creation_ts>
          <short_desc>Reimplement DETAILS and SUMMARY using selector query.</short_desc>
          <delta_ts>2012-02-03 00:31:18 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>DOM</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>75301</dependson>
    
    <dependson>75306</dependson>
          <blocked>72957</blocked>
    
    <blocked>77608</blocked>
          <everconfirmed>0</everconfirmed>
          <reporter name="Shinya Kawanaka">shinyak</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>shinyak</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>532776</commentid>
    <comment_count>0</comment_count>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-01-09 19:23:57 -0800</bug_when>
    <thetext>When Bug 75306 is resolved, DETAILS and SUMMARY can be re-implemented using selector query.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>548407</commentid>
    <comment_count>1</comment_count>
      <attachid>125250</attachid>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-02-02 20:49:02 -0800</bug_when>
    <thetext>Created attachment 125250
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>548414</commentid>
    <comment_count>2</comment_count>
      <attachid>125250</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2012-02-02 21:12:56 -0800</bug_when>
    <thetext>Comment on attachment 125250
Patch

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

Looks almost fine. Let us pick some nits.

&gt; Source/WebCore/ChangeLog:9
&gt; +        We don&apos;t need to recreate DOM even if SUMMARY is removed or added from/into DETAILS.

&quot;removed from added into&quot;

&gt; Source/WebCore/html/HTMLDetailsElement.cpp:83
&gt; +    ExceptionCode ec = 0;

Could you use ASSERT_NO_EXCEPTION here?

&gt; Source/WebCore/html/HTMLDetailsElement.cpp:127
&gt;      ExceptionCode ec = 0;

Could you get rid of |ec| using ASSERT_NO_EXCEPTION?

&gt; Source/WebCore/html/HTMLDetailsElement.cpp:139
&gt; +        m_mainSummary = findMainSummaryFor(this);

It looks we are now able to get rid of m_mainSummary at all. Could you investigate it?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>548454</commentid>
    <comment_count>3</comment_count>
      <attachid>125261</attachid>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-02-02 22:27:11 -0800</bug_when>
    <thetext>Created attachment 125261
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>548472</commentid>
    <comment_count>4</comment_count>
      <attachid>125261</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2012-02-02 22:48:15 -0800</bug_when>
    <thetext>Comment on attachment 125261
Patch

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

&gt; Source/WebCore/html/HTMLDetailsElement.cpp:123
&gt; +    return static_cast&lt;DetailsSummaryElement*&gt;(shadowRoot()-&gt;firstChild())-&gt;fallbackSummary();

I hope we have some safe net ASSERT here considering we are going to have multiple shadows...
How about to give an unique tag name to DetailsSummaryElement and check it here or it will done by coming built-in check?

&gt; Source/WebCore/html/HTMLSummaryElement.cpp:93
&gt;      return 0;

return false? (Well, it has been wrong...)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>548485</commentid>
    <comment_count>5</comment_count>
      <attachid>125268</attachid>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-02-02 23:13:44 -0800</bug_when>
    <thetext>Created attachment 125268
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>548488</commentid>
    <comment_count>6</comment_count>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-02-02 23:16:16 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 125261 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=125261&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/html/HTMLDetailsElement.cpp:123
&gt; &gt; +    return static_cast&lt;DetailsSummaryElement*&gt;(shadowRoot()-&gt;firstChild())-&gt;fallbackSummary();
&gt; 
&gt; I hope we have some safe net ASSERT here considering we are going to have multiple shadows...
&gt; How about to give an unique tag name to DetailsSummaryElement and check it here or it will done by coming built-in check?

Hmm...
fallbackSummary() checks it is really a summary tag, so it checks some of errors actually.
When forgetting to change shadowRoot() to a method getting a built-in shadow root method, it can be easily detected. Of course I&apos;ll add built-in check here when adding built-in flag.

# When adding a method to get bulit-in shadow root, I&apos;ll do:
  - temporarily remove shadowRoot() method
  - add builtinShadowRoot() (maybe this name?), 
  - and compile webkit to catch all the appearance of shadowRoot().

&gt; 
&gt; &gt; Source/WebCore/html/HTMLSummaryElement.cpp:93
&gt; &gt;      return 0;
&gt; 
&gt; return false? (Well, it has been wrong...)

Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>548514</commentid>
    <comment_count>7</comment_count>
      <attachid>125268</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-02-03 00:31:13 -0800</bug_when>
    <thetext>Comment on attachment 125268
Patch

Clearing flags on attachment: 125268

Committed r106637: &lt;http://trac.webkit.org/changeset/106637&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>548515</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-02-03 00:31:18 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>125250</attachid>
            <date>2012-02-02 20:49:02 -0800</date>
            <delta_ts>2012-02-02 22:27:04 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-75930-20120203134900.patch</filename>
            <type>text/plain</type>
            <size>16928</size>
            <attacher name="Shinya Kawanaka">shinyak</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA2NjIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTk5ZmRlZWJmODU1MTkx
MTFhN2YxNDZhNTI1ZGIzMjQzYzM3ZWZhOS4uMjYxZjg2YjgzYWVjNDA4MjQ2NDA1NDgxMTNjZTU5
MWU3MzkzMjcyMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDEyLTAyLTAyICBTaGlu
eWEgS2F3YW5ha2EgIDxzaGlueWFrQGdvb2dsZS5jb20+CisKKyAgICAgICAgUmVpbXBsZW1lbnQg
REVUQUlMUyBhbmQgU1VNTUFSWSB1c2luZyBzZWxlY3RvciBxdWVyeS4KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc1OTMwCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgREVUQUlMUyBpcyByZWltcGxlbWVudGVk
IHVzaW5nIGNvbnRlbnQgZWxlbWVudCBhbmQgaXRzIGZhbGxiYWNrIGZlYXR1cmUuCisgICAgICAg
IFdlIGRvbid0IG5lZWQgdG8gcmVjcmVhdGUgRE9NIGV2ZW4gaWYgU1VNTUFSWSBpcyByZW1vdmVk
IG9yIGFkZGVkIGZyb20vaW50byBERVRBSUxTLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cywgc2hv
dWxkIGJlIGNvdmVyZWQgYnkgZXhpc3RpbmcgdGVzdHMuCisKKyAgICAgICAgKiBodG1sL0hUTUxE
ZXRhaWxzRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEZXRhaWxzU3VtbWFyeUVsZW1l
bnQ6OmZhbGxiYWNrU3VtbWFyeSk6CisgICAgICAgICAgVGFrZXMgZmFsbGJhY2sgZWxlbWVudCBv
ZiBjb250ZW50IHN1bW1hcnkuCisgICAgICAgIChEZXRhaWxzU3VtbWFyeUVsZW1lbnQpOgorICAg
ICAgICAoV2ViQ29yZTo6RGV0YWlsc1N1bW1hcnlFbGVtZW50OjpjcmVhdGUpOgorICAgICAgICAg
IENyZWF0ZXMgYSBmYWxsYmFjayBlbGVtZW50IGFsc28uCisgICAgICAgIChXZWJDb3JlOjpIVE1M
RGV0YWlsc0VsZW1lbnQ6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MRGV0YWlsc0Vs
ZW1lbnQ6OkhUTUxEZXRhaWxzRWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpmaW5kTWFpblN1
bW1hcnlGb3IpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTERldGFpbHNFbGVtZW50OjpjcmVhdGVT
aGFkb3dTdWJ0cmVlKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxEZXRhaWxzRWxlbWVudDo6Y2hp
bGRyZW5DaGFuZ2VkKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxEZXRhaWxzRWxlbWVudDo6Zmlu
aXNoUGFyc2luZ0NoaWxkcmVuKToKKyAgICAgICAgICBXZSBkb24ndCBuZWVkIHRvIGNoZWNrIHdo
ZXRoZXIgU1VNTUFSWSBlbGVtZW50IGV4aXN0cyBpbiBERVRBSUxTIGVsZW1lbnQuCisgICAgICAg
ICogaHRtbC9IVE1MRGV0YWlsc0VsZW1lbnQuaDoKKyAgICAgICAgKEhUTUxEZXRhaWxzRWxlbWVu
dCk6CisKIDIwMTItMDItMDIgIFJheW1vbmQgVG95ICA8cnRveUBnb29nbGUuY29tPgogCiAgICAg
ICAgIENoZWNrIHBhcmFtZXRlcnMgdG8gYmlxdWFkIGZpbHRlcnMKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTERldGFpbHNFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTERldGFpbHNFbGVtZW50LmNwcAppbmRleCBkZGVjNzM4NzY2NDgwMDNlMmY5MWM3NzBk
MWE4MTUyMDIzMmI3ZjU2Li5kZjVhMmNmZTkyYzI4MzhhZDZmZTU5MTY0MWE4OTQ0M2E3MDFmNDA0
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxEZXRhaWxzRWxlbWVudC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRGV0YWlsc0VsZW1lbnQuY3BwCkBAIC02Miw2
ICs2MiwxMiBAQCBjbGFzcyBEZXRhaWxzU3VtbWFyeUVsZW1lbnQgOiBwdWJsaWMgSFRNTENvbnRl
bnRFbGVtZW50IHsKIHB1YmxpYzoKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxEZXRhaWxzU3VtbWFy
eUVsZW1lbnQ+IGNyZWF0ZShEb2N1bWVudCopOwogCisgICAgTm9kZSogZmFsbGJhY2tTdW1tYXJ5
KCkKKyAgICB7CisgICAgICAgIEFTU0VSVChmaXJzdENoaWxkKCkgJiYgZmlyc3RDaGlsZCgpLT5o
YXNUYWdOYW1lKHN1bW1hcnlUYWcpKTsKKyAgICAgICAgcmV0dXJuIGZpcnN0Q2hpbGQoKTsKKyAg
ICB9CisKIHByaXZhdGU6CiAgICAgRGV0YWlsc1N1bW1hcnlFbGVtZW50KERvY3VtZW50KiBkb2N1
bWVudCkKICAgICAgICAgOiBIVE1MQ29udGVudEVsZW1lbnQoSFRNTE5hbWVzOjpkaXZUYWcsIGRv
Y3VtZW50KQpAQCAtNzIsMTkgKzc4LDI4IEBAIHByaXZhdGU6CiAKIFBhc3NSZWZQdHI8RGV0YWls
c1N1bW1hcnlFbGVtZW50PiBEZXRhaWxzU3VtbWFyeUVsZW1lbnQ6OmNyZWF0ZShEb2N1bWVudCog
ZG9jdW1lbnQpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBEZXRhaWxzU3VtbWFyeUVsZW1l
bnQoZG9jdW1lbnQpKTsKKyAgICBEZXRhaWxzU3VtbWFyeUVsZW1lbnQqIGVsZW0gPSBuZXcgRGV0
YWlsc1N1bW1hcnlFbGVtZW50KGRvY3VtZW50KTsKKworICAgIEV4Y2VwdGlvbkNvZGUgZWMgPSAw
OworICAgIFJlZlB0cjxIVE1MU3VtbWFyeUVsZW1lbnQ+IGRlZmF1bHRTdW1tYXJ5ID0gSFRNTFN1
bW1hcnlFbGVtZW50OjpjcmVhdGUoc3VtbWFyeVRhZywgZG9jdW1lbnQpOworICAgIGRlZmF1bHRT
dW1tYXJ5LT5hcHBlbmRDaGlsZChUZXh0OjpjcmVhdGUoZG9jdW1lbnQsIGRlZmF1bHREZXRhaWxz
U3VtbWFyeVRleHQoKSksIGVjKTsKKyAgICBBU1NFUlQoIWVjKTsKKworICAgIGVsZW0tPmFwcGVu
ZENoaWxkKGRlZmF1bHRTdW1tYXJ5KTsKKworICAgIHJldHVybiBhZG9wdFJlZihlbGVtKTsKIH0K
IAogUGFzc1JlZlB0cjxIVE1MRGV0YWlsc0VsZW1lbnQ+IEhUTUxEZXRhaWxzRWxlbWVudDo6Y3Jl
YXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmIHRhZ05hbWUsIERvY3VtZW50KiBkb2N1bWVudCkKIHsK
LSAgICBSZWZQdHI8SFRNTERldGFpbHNFbGVtZW50PiByZXN1bHQgPSBhZG9wdFJlZihuZXcgSFRN
TERldGFpbHNFbGVtZW50KHRhZ05hbWUsIGRvY3VtZW50KSk7Ci0gICAgcmVzdWx0LT5lbnN1cmVT
aGFkb3dTdWJ0cmVlT2YoRm9yd2FyZGluZ1N1bW1hcnkpOwotICAgIHJldHVybiByZXN1bHQ7Cisg
ICAgUmVmUHRyPEhUTUxEZXRhaWxzRWxlbWVudD4gZWxlbSA9IGFkb3B0UmVmKG5ldyBIVE1MRGV0
YWlsc0VsZW1lbnQodGFnTmFtZSwgZG9jdW1lbnQpKTsKKyAgICBlbGVtLT5jcmVhdGVTaGFkb3dT
dWJ0cmVlKCk7CisKKyAgICByZXR1cm4gZWxlbS5yZWxlYXNlKCk7CiB9CiAKIEhUTUxEZXRhaWxz
RWxlbWVudDo6SFRNTERldGFpbHNFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmIHRhZ05hbWUs
IERvY3VtZW50KiBkb2N1bWVudCkKICAgICA6IEhUTUxFbGVtZW50KHRhZ05hbWUsIGRvY3VtZW50
KQotICAgICwgbV9zdW1tYXJ5VHlwZShOb1N1bW1hcnkpCiAgICAgLCBtX21haW5TdW1tYXJ5KDAp
CiAgICAgLCBtX2lzT3BlbihmYWxzZSkKIHsKQEAgLTk2LDgzICsxMTEsMzggQEAgUmVuZGVyT2Jq
ZWN0KiBIVE1MRGV0YWlsc0VsZW1lbnQ6OmNyZWF0ZVJlbmRlcmVyKFJlbmRlckFyZW5hKiBhcmVu
YSwgUmVuZGVyU3R5bGUKICAgICByZXR1cm4gbmV3IChhcmVuYSkgUmVuZGVyRGV0YWlscyh0aGlz
KTsKIH0KIAotdm9pZCBIVE1MRGV0YWlsc0VsZW1lbnQ6OmVuc3VyZVNoYWRvd1N1YnRyZWVPZihT
dW1tYXJ5VHlwZSB0eXBlKQotewotICAgIGlmICh0eXBlID09IG1fc3VtbWFyeVR5cGUpCi0gICAg
ICAgIHJldHVybjsKLSAgICBtX3N1bW1hcnlUeXBlID0gdHlwZTsKLSAgICByZW1vdmVTaGFkb3dS
b290KCk7Ci0gICAgY3JlYXRlU2hhZG93U3VidHJlZSgpOwotfQotCi1zdGF0aWMgTm9kZSogZmlu
ZFN1bW1hcnlGb3IoUGFzc1JlZlB0cjxDb250YWluZXJOb2RlPiBjb250YWluZXIpCitzdGF0aWMg
Tm9kZSogZmluZE1haW5TdW1tYXJ5Rm9yKFBhc3NSZWZQdHI8SFRNTERldGFpbHNFbGVtZW50PiBj
b250YWluZXIpCiB7CiAgICAgZm9yIChOb2RlKiBjaGlsZCA9IGNvbnRhaW5lci0+Zmlyc3RDaGls
ZCgpOyBjaGlsZDsgY2hpbGQgPSBjaGlsZC0+bmV4dFNpYmxpbmcoKSkgewogICAgICAgICBpZiAo
Y2hpbGQtPmhhc1RhZ05hbWUoc3VtbWFyeVRhZykpCiAgICAgICAgICAgICByZXR1cm4gY2hpbGQ7
CiAgICAgfQogCi0gICAgcmV0dXJuIDA7Ci19Ci0KLU5vZGUqIEhUTUxEZXRhaWxzRWxlbWVudDo6
ZW5zdXJlTWFpblN1bW1hcnkoKQotewotICAgIE5vZGUqIHN1bW1hcnkgPSBmaW5kU3VtbWFyeUZv
cih0aGlzKTsKLSAgICBpZiAoc3VtbWFyeSkgewotICAgICAgICBlbnN1cmVTaGFkb3dTdWJ0cmVl
T2YoRm9yd2FyZGluZ1N1bW1hcnkpOwotICAgICAgICByZXR1cm4gc3VtbWFyeTsKLSAgICB9Ci0K
LSAgICBlbnN1cmVTaGFkb3dTdWJ0cmVlT2YoRGVmYXVsdFN1bW1hcnkpOwotICAgIHJldHVybiBm
aW5kU3VtbWFyeUZvcihzaGFkb3dSb290KCkpOwotfQotCi12b2lkIEhUTUxEZXRhaWxzRWxlbWVu
dDo6cmVmcmVzaE1haW5TdW1tYXJ5KFJlZnJlc2hSZW5kZXJlciByZWZyZXNoUmVuZGVyZXIpCi17
Ci0gICAgUmVmUHRyPE5vZGU+IG9sZFN1bW1hcnkgPSBtX21haW5TdW1tYXJ5OwotICAgIG1fbWFp
blN1bW1hcnkgPSBlbnN1cmVNYWluU3VtbWFyeSgpOwotCi0gICAgaWYgKG9sZFN1bW1hcnkgPT0g
bV9tYWluU3VtbWFyeSB8fCAhYXR0YWNoZWQoKSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgaWYg
KG9sZFN1bW1hcnkgJiYgb2xkU3VtbWFyeS0+cGFyZW50Tm9kZUZvclJlbmRlcmluZ0FuZFN0eWxl
KCkpCi0gICAgICAgIG9sZFN1bW1hcnktPnJlYXR0YWNoKCk7Ci0gICAgaWYgKG1fbWFpblN1bW1h
cnkgJiYgcmVmcmVzaFJlbmRlcmVyID09IFJlZnJlc2hSZW5kZXJlckFsbG93ZWQpCi0gICAgICAg
IG1fbWFpblN1bW1hcnktPnJlYXR0YWNoKCk7CisgICAgcmV0dXJuIHN0YXRpY19jYXN0PERldGFp
bHNTdW1tYXJ5RWxlbWVudCo+KGNvbnRhaW5lci0+c2hhZG93Um9vdCgpLT5maXJzdENoaWxkKCkp
LT5mYWxsYmFja1N1bW1hcnkoKTsKIH0KIAogdm9pZCBIVE1MRGV0YWlsc0VsZW1lbnQ6OmNyZWF0
ZVNoYWRvd1N1YnRyZWUoKQogewogICAgIEFTU0VSVCghc2hhZG93Um9vdCgpKTsKICAgICBFeGNl
cHRpb25Db2RlIGVjID0gMDsKLSAgICBpZiAobV9zdW1tYXJ5VHlwZSA9PSBEZWZhdWx0U3VtbWFy
eSkgewotICAgICAgICBSZWZQdHI8SFRNTFN1bW1hcnlFbGVtZW50PiBkZWZhdWx0U3VtbWFyeSA9
IEhUTUxTdW1tYXJ5RWxlbWVudDo6Y3JlYXRlKHN1bW1hcnlUYWcsIGRvY3VtZW50KCkpOwotICAg
ICAgICBkZWZhdWx0U3VtbWFyeS0+YXBwZW5kQ2hpbGQoVGV4dDo6Y3JlYXRlKGRvY3VtZW50KCks
IGRlZmF1bHREZXRhaWxzU3VtbWFyeVRleHQoKSksIGVjKTsKLSAgICAgICAgZW5zdXJlU2hhZG93
Um9vdCgpLT5hcHBlbmRDaGlsZChkZWZhdWx0U3VtbWFyeSwgZWMsIHRydWUpOwotICAgICAgICBl
bnN1cmVTaGFkb3dSb290KCktPmFwcGVuZENoaWxkKERldGFpbHNDb250ZW50RWxlbWVudDo6Y3Jl
YXRlKGRvY3VtZW50KCkpLCBlYywgdHJ1ZSk7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgQVNTRVJU
KG1fc3VtbWFyeVR5cGUgPT0gRm9yd2FyZGluZ1N1bW1hcnkpOwotICAgICAgICBlbnN1cmVTaGFk
b3dSb290KCktPmFwcGVuZENoaWxkKERldGFpbHNTdW1tYXJ5RWxlbWVudDo6Y3JlYXRlKGRvY3Vt
ZW50KCkpLCBlYywgdHJ1ZSk7Ci0gICAgICAgIGVuc3VyZVNoYWRvd1Jvb3QoKS0+YXBwZW5kQ2hp
bGQoRGV0YWlsc0NvbnRlbnRFbGVtZW50OjpjcmVhdGUoZG9jdW1lbnQoKSksIGVjLCB0cnVlKTsK
LSAgICB9CisKKyAgICBlbnN1cmVTaGFkb3dSb290KCktPmFwcGVuZENoaWxkKERldGFpbHNTdW1t
YXJ5RWxlbWVudDo6Y3JlYXRlKGRvY3VtZW50KCkpLCBlYywgdHJ1ZSk7CisgICAgZW5zdXJlU2hh
ZG93Um9vdCgpLT5hcHBlbmRDaGlsZChEZXRhaWxzQ29udGVudEVsZW1lbnQ6OmNyZWF0ZShkb2N1
bWVudCgpKSwgZWMsIHRydWUpOwogfQogCiAKIHZvaWQgSFRNTERldGFpbHNFbGVtZW50OjpjaGls
ZHJlbkNoYW5nZWQoYm9vbCBjaGFuZ2VkQnlQYXJzZXIsIE5vZGUqIGJlZm9yZUNoYW5nZSwgTm9k
ZSogYWZ0ZXJDaGFuZ2UsIGludCBjaGlsZENvdW50RGVsdGEpCiB7CiAgICAgSFRNTEVsZW1lbnQ6
OmNoaWxkcmVuQ2hhbmdlZChjaGFuZ2VkQnlQYXJzZXIsIGJlZm9yZUNoYW5nZSwgYWZ0ZXJDaGFu
Z2UsIGNoaWxkQ291bnREZWx0YSk7Ci0gICAgLy8gSWYgY2hpbGRDb3VudERlbHRhIGlzIGxlc3Mg
dGhlbiB6ZXJvIGFuZCB0aGUgbWFpbiBzdW1tYXJ5IGhhcyBjaGFuZ2VkIGl0IG11c3QgYmUgYmVj
YXVzZSBwcmV2aW91cyBtYWluCi0gICAgLy8gc3VtbWFyeSB3YXMgcmVtb3ZlZC4gVGhlIG5ldyBt
YWluIHN1bW1hcnkgd2FzIHRoZW4gaW5zaWRlIHRoZSB1bnJldmVhbGVkIGNvbnRlbnQgYW5kIG5l
ZWRzIHRvIGJlCi0gICAgLy8gcmVhdHRhY2hlZCB0byBjcmVhdGUgaXRzIHJlbmRlcmVyLiBJZiBj
aGlsZENvdW50RGVsdGEgaXMgbm90IGxlc3MgdGhlbiB6ZXJvIHRoZW4gYSBuZXcgPHN1bW1hcnk+
IGVsZW1lbnQKLSAgICAvLyBoYXMgYmVlbiBhZGRlZCBhbmQgaXQgd2lsbCBiZSBhdHRhY2hlZCB3
aXRob3V0IG91ciBoZWxwLgorCiAgICAgaWYgKCFjaGFuZ2VkQnlQYXJzZXIpCi0gICAgICAgIHJl
ZnJlc2hNYWluU3VtbWFyeShjaGlsZENvdW50RGVsdGEgPCAwID8gUmVmcmVzaFJlbmRlcmVyQWxs
b3dlZCA6IFJlZnJlc2hSZW5kZXJlclN1cHJlc3NlZCk7CisgICAgICAgIG1fbWFpblN1bW1hcnkg
PSBmaW5kTWFpblN1bW1hcnlGb3IodGhpcyk7CiB9CiAKIHZvaWQgSFRNTERldGFpbHNFbGVtZW50
OjpmaW5pc2hQYXJzaW5nQ2hpbGRyZW4oKQogewogICAgIEhUTUxFbGVtZW50OjpmaW5pc2hQYXJz
aW5nQ2hpbGRyZW4oKTsKLSAgICByZWZyZXNoTWFpblN1bW1hcnkoUmVmcmVzaFJlbmRlcmVyQWxs
b3dlZCk7CisgICAgbV9tYWluU3VtbWFyeSA9IGZpbmRNYWluU3VtbWFyeUZvcih0aGlzKTsKIH0K
IAogdm9pZCBIVE1MRGV0YWlsc0VsZW1lbnQ6OnBhcnNlTWFwcGVkQXR0cmlidXRlKEF0dHJpYnV0
ZSogYXR0cikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTERldGFpbHNFbGVt
ZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxEZXRhaWxzRWxlbWVudC5oCmluZGV4IDBk
OGRkYTcxMDMzY2IzOWYwZTA3NDM0ZjQ3ZGJjYWI3OTRiNWJlYzMuLmM2YWIzNDY3YWVmOGM3NTBj
Nzc3NmFjNGJhZTVmMTlhNTllNDQxZTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTERldGFpbHNFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRGV0YWls
c0VsZW1lbnQuaApAQCAtMzIsMTcgKzMyLDYgQEAgcHVibGljOgogICAgIHZvaWQgdG9nZ2xlT3Bl
bigpOwogCiBwcml2YXRlOgotICAgIGVudW0gUmVmcmVzaFJlbmRlcmVyIHsKLSAgICAgICAgUmVm
cmVzaFJlbmRlcmVyQWxsb3dlZCwKLSAgICAgICAgUmVmcmVzaFJlbmRlcmVyU3VwcmVzc2VkLAot
ICAgIH07Ci0KLSAgICBlbnVtIFN1bW1hcnlUeXBlIHsKLSAgICAgICAgTm9TdW1tYXJ5LAotICAg
ICAgICBEZWZhdWx0U3VtbWFyeSwKLSAgICAgICAgRm9yd2FyZGluZ1N1bW1hcnkKLSAgICB9Owot
CiAgICAgSFRNTERldGFpbHNFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCop
OwogCiAgICAgdmlydHVhbCBSZW5kZXJPYmplY3QqIGNyZWF0ZVJlbmRlcmVyKFJlbmRlckFyZW5h
KiwgUmVuZGVyU3R5bGUqKTsKQEAgLTUyLDEyICs0MSw4IEBAIHByaXZhdGU6CiAgICAgdm9pZCBw
YXJzZU1hcHBlZEF0dHJpYnV0ZShBdHRyaWJ1dGUqKTsKICAgICBib29sIGNoaWxkU2hvdWxkQ3Jl
YXRlUmVuZGVyZXIoTm9kZSopIGNvbnN0OwogCi0gICAgTm9kZSogZW5zdXJlTWFpblN1bW1hcnko
KTsKLSAgICB2b2lkIHJlZnJlc2hNYWluU3VtbWFyeShSZWZyZXNoUmVuZGVyZXIpOwotICAgIHZv
aWQgZW5zdXJlU2hhZG93U3VidHJlZU9mKFN1bW1hcnlUeXBlKTsKICAgICB2b2lkIGNyZWF0ZVNo
YWRvd1N1YnRyZWUoKTsKIAotICAgIFN1bW1hcnlUeXBlIG1fc3VtbWFyeVR5cGU7CiAgICAgTm9k
ZSogbV9tYWluU3VtbWFyeTsKICAgICBib29sIG1faXNPcGVuOwogCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggYmU3MzU3MzAz
YmYzNTFhOGJkYWEwMzI3MDViNjNiYmM2MzhkZDNjMC4uZGQwNWI2MmEyNjFmMGZiZWVlMjgxZWNm
ZWE2NDg5NDZlYTEwODY4ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBi
L0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDEyLTAyLTAyICBTaGlu
eWEgS2F3YW5ha2EgIDxzaGlueWFrQGdvb2dsZS5jb20+CisKKyAgICAgICAgUmVpbXBsZW1lbnQg
REVUQUlMUyBhbmQgU1VNTUFSWSB1c2luZyBzZWxlY3RvciBxdWVyeS4KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc1OTMwCisKKyAgICAgICAgU2luY2Ug
dGhlIGltcGxlbWVudGF0aW9uIG9mIERFVEFJTFMgc2hhZG93IHRyZWUsIHRoZSBwYXRoIG9mIGNh
cmV0IHBvc2l0aW9uIGlzIGFsc28gY2hhbmdlZC4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLXdpbi9mYXN0L2h0bWwv
ZGV0YWlscy1yZW1vdmUtc3VtbWFyeS0xLWFuZC1jbGljay1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogcGxhdGZvcm0vY2hyb21pdW0td2luL2Zhc3QvaHRtbC9kZXRhaWxzLXJlbW92ZS1zdW1tYXJ5
LTQtYW5kLWNsaWNrLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvZmFzdC9o
dG1sL2RldGFpbHMtcmVtb3ZlLXN1bW1hcnktMS1hbmQtY2xpY2stZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIHBsYXRmb3JtL2d0ay9mYXN0L2h0bWwvZGV0YWlscy1yZW1vdmUtc3VtbWFyeS00LWFu
ZC1jbGljay1leHBlY3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vbWFjL2Zhc3QvaHRtbC9k
ZXRhaWxzLXJlbW92ZS1zdW1tYXJ5LTEtYW5kLWNsaWNrLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiBwbGF0Zm9ybS9tYWMvZmFzdC9odG1sL2RldGFpbHMtcmVtb3ZlLXN1bW1hcnktNC1hbmQtY2xp
Y2stZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBsYXRmb3JtL3F0L2Zhc3QvaHRtbC9kZXRhaWxz
LXJlbW92ZS1zdW1tYXJ5LTEtYW5kLWNsaWNrLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwbGF0
Zm9ybS9xdC9mYXN0L2h0bWwvZGV0YWlscy1yZW1vdmUtc3VtbWFyeS00LWFuZC1jbGljay1leHBl
Y3RlZC50eHQ6CisKIDIwMTItMDItMDIgIFJheW1vbmQgVG95ICA8cnRveUBjaHJvbWl1bS5vcmc+
CiAKICAgICAgICAgQ2hlY2sgcGFyYW1ldGVycyB0byBiaXF1YWQgZmlsdGVycwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0td2luL2Zhc3QvaHRtbC9kZXRhaWxzLXJl
bW92ZS1zdW1tYXJ5LTEtYW5kLWNsaWNrLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRm
b3JtL2Nocm9taXVtLXdpbi9mYXN0L2h0bWwvZGV0YWlscy1yZW1vdmUtc3VtbWFyeS0xLWFuZC1j
bGljay1leHBlY3RlZC50eHQKaW5kZXggZjhlZTQ0MTFjMjg0MmE0MTlmMmM2NmM1Y2JlNzIxZjIy
ZjEzMzNlMC4uNTMyYjg1NDg0ZGQ0ODY3YTJkNzg0NDJiMDE0YjI3MmY1ODhhZGVlOCAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0td2luL2Zhc3QvaHRtbC9kZXRhaWxz
LXJlbW92ZS1zdW1tYXJ5LTEtYW5kLWNsaWNrLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9jaHJvbWl1bS13aW4vZmFzdC9odG1sL2RldGFpbHMtcmVtb3ZlLXN1bW1hcnkt
MS1hbmQtY2xpY2stZXhwZWN0ZWQudHh0CkBAIC04LDQgKzgsNCBAQCBsYXllciBhdCAoMCwwKSBz
aXplIDgwMHg2MDAKICAgICAgICAgICBSZW5kZXJEZXRhaWxzTWFya2VyIHtESVZ9IGF0ICgwLDUp
IHNpemUgMTB4MTA6IGRvd24KICAgICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDE2LDAp
IHNpemUgNDF4MTkKICAgICAgICAgICAgIHRleHQgcnVuIGF0ICgxNiwwKSB3aWR0aCA0MTogIkRl
dGFpbHMiCi1jYXJldDogcG9zaXRpb24gMCBvZiBjaGlsZCAwIHtESVZ9IG9mIHsjc2hhZG93LXJv
b3R9IG9mIGNoaWxkIDAge1NVTU1BUll9IG9mIHsjc2hhZG93LXJvb3R9IG9mIGNoaWxkIDEge0RF
VEFJTFN9IG9mIGJvZHkKK2NhcmV0OiBwb3NpdGlvbiAwIG9mIGNoaWxkIDAge0RJVn0gb2YgeyNz
aGFkb3ctcm9vdH0gb2YgY2hpbGQgMCB7U1VNTUFSWX0gb2YgY2hpbGQgMCB7RElWfSBvZiB7I3No
YWRvdy1yb290fSBvZiBjaGlsZCAxIHtERVRBSUxTfSBvZiBib2R5CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS13aW4vZmFzdC9odG1sL2RldGFpbHMtcmVtb3ZlLXN1
bW1hcnktNC1hbmQtY2xpY2stZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hy
b21pdW0td2luL2Zhc3QvaHRtbC9kZXRhaWxzLXJlbW92ZS1zdW1tYXJ5LTQtYW5kLWNsaWNrLWV4
cGVjdGVkLnR4dAppbmRleCBlNDJhN2JkZGVhMWE3NGU3ODdjNjk0NGIxNzhjZWI4ZjBlYmZiM2Ew
Li40ODIyOGRmMWExOGJhYTRlMTQ5ZDk2MTQyNDk5OWM0N2UyMjc5MjA5IDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS13aW4vZmFzdC9odG1sL2RldGFpbHMtcmVtb3Zl
LXN1bW1hcnktNC1hbmQtY2xpY2stZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BsYXRm
b3JtL2Nocm9taXVtLXdpbi9mYXN0L2h0bWwvZGV0YWlscy1yZW1vdmUtc3VtbWFyeS00LWFuZC1j
bGljay1leHBlY3RlZC50eHQKQEAgLTgsNCArOCw0IEBAIGxheWVyIGF0ICgwLDApIHNpemUgODAw
eDYwMAogICAgICAgICAgIFJlbmRlckRldGFpbHNNYXJrZXIge0RJVn0gYXQgKDAsNSkgc2l6ZSAx
MHgxMDogcmlnaHQKICAgICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDE2LDApIHNpemUg
NDF4MTkKICAgICAgICAgICAgIHRleHQgcnVuIGF0ICgxNiwwKSB3aWR0aCA0MTogIkRldGFpbHMi
Ci1jYXJldDogcG9zaXRpb24gMCBvZiBjaGlsZCAwIHtESVZ9IG9mIHsjc2hhZG93LXJvb3R9IG9m
IGNoaWxkIDAge1NVTU1BUll9IG9mIHsjc2hhZG93LXJvb3R9IG9mIGNoaWxkIDEge0RFVEFJTFN9
IG9mIGJvZHkKK2NhcmV0OiBwb3NpdGlvbiAwIG9mIGNoaWxkIDAge0RJVn0gb2YgeyNzaGFkb3ct
cm9vdH0gb2YgY2hpbGQgMCB7U1VNTUFSWX0gb2YgY2hpbGQgMCB7RElWfSBvZiB7I3NoYWRvdy1y
b290fSBvZiBjaGlsZCAxIHtERVRBSUxTfSBvZiBib2R5CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9ndGsvZmFzdC9odG1sL2RldGFpbHMtcmVtb3ZlLXN1bW1hcnktMS1hbmQtY2xp
Y2stZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2Zhc3QvaHRtbC9kZXRh
aWxzLXJlbW92ZS1zdW1tYXJ5LTEtYW5kLWNsaWNrLWV4cGVjdGVkLnR4dAppbmRleCA0MjkwM2Y3
OGUyNmE4Mjg3NDE1ZWJhYTljMTllOTEwNDViOTRiMWUwLi43ZTcxOGJkNTBlNDliNjhjMWI1ZDc3
OWQwYWE0MTVjNjM1MjBmNzM3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsv
ZmFzdC9odG1sL2RldGFpbHMtcmVtb3ZlLXN1bW1hcnktMS1hbmQtY2xpY2stZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9mYXN0L2h0bWwvZGV0YWlscy1yZW1vdmUt
c3VtbWFyeS0xLWFuZC1jbGljay1leHBlY3RlZC50eHQKQEAgLTgsNCArOCw0IEBAIGxheWVyIGF0
ICgwLDApIHNpemUgODAweDYwMAogICAgICAgICAgIFJlbmRlckRldGFpbHNNYXJrZXIge0RJVn0g
YXQgKDAsNCkgc2l6ZSAxMHgxMDogZG93bgogICAgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBh
dCAoMTYsMCkgc2l6ZSA0NngxNwogICAgICAgICAgICAgdGV4dCBydW4gYXQgKDE2LDApIHdpZHRo
IDQ2OiAiRGV0YWlscyIKLWNhcmV0OiBwb3NpdGlvbiAwIG9mIGNoaWxkIDAge0RJVn0gb2YgeyNz
aGFkb3ctcm9vdH0gb2YgY2hpbGQgMCB7U1VNTUFSWX0gb2YgeyNzaGFkb3ctcm9vdH0gb2YgY2hp
bGQgMSB7REVUQUlMU30gb2YgYm9keQorY2FyZXQ6IHBvc2l0aW9uIDAgb2YgY2hpbGQgMCB7RElW
fSBvZiB7I3NoYWRvdy1yb290fSBvZiBjaGlsZCAwIHtTVU1NQVJZfSBvZiBjaGlsZCAwIHtESVZ9
IG9mIHsjc2hhZG93LXJvb3R9IG9mIGNoaWxkIDEge0RFVEFJTFN9IG9mIGJvZHkKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9mYXN0L2h0bWwvZGV0YWlscy1yZW1vdmUtc3Vt
bWFyeS00LWFuZC1jbGljay1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsv
ZmFzdC9odG1sL2RldGFpbHMtcmVtb3ZlLXN1bW1hcnktNC1hbmQtY2xpY2stZXhwZWN0ZWQudHh0
CmluZGV4IGRiZjYxM2Q1MmM1NWU1NjAxNDFmM2I4ZmM0YTEwOGJlZGE1NzJlZDUuLjRkYjg4N2Vk
NWMzN2UwOWUzZTg0YTg1MmNlNDcyNTE3MTFkZGQ4YzkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL2d0ay9mYXN0L2h0bWwvZGV0YWlscy1yZW1vdmUtc3VtbWFyeS00LWFuZC1jbGlj
ay1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2Zhc3QvaHRtbC9k
ZXRhaWxzLXJlbW92ZS1zdW1tYXJ5LTQtYW5kLWNsaWNrLWV4cGVjdGVkLnR4dApAQCAtOCw0ICs4
LDQgQEAgbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCiAgICAgICAgICAgUmVuZGVyRGV0YWls
c01hcmtlciB7RElWfSBhdCAoMCw0KSBzaXplIDEweDEwOiByaWdodAogICAgICAgICAgIFJlbmRl
clRleHQgeyN0ZXh0fSBhdCAoMTYsMCkgc2l6ZSA0NngxNwogICAgICAgICAgICAgdGV4dCBydW4g
YXQgKDE2LDApIHdpZHRoIDQ2OiAiRGV0YWlscyIKLWNhcmV0OiBwb3NpdGlvbiAwIG9mIGNoaWxk
IDAge0RJVn0gb2YgeyNzaGFkb3ctcm9vdH0gb2YgY2hpbGQgMCB7U1VNTUFSWX0gb2YgeyNzaGFk
b3ctcm9vdH0gb2YgY2hpbGQgMSB7REVUQUlMU30gb2YgYm9keQorY2FyZXQ6IHBvc2l0aW9uIDAg
b2YgY2hpbGQgMCB7RElWfSBvZiB7I3NoYWRvdy1yb290fSBvZiBjaGlsZCAwIHtTVU1NQVJZfSBv
ZiBjaGlsZCAwIHtESVZ9IG9mIHsjc2hhZG93LXJvb3R9IG9mIGNoaWxkIDEge0RFVEFJTFN9IG9m
IGJvZHkKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L2h0bWwvZGV0
YWlscy1yZW1vdmUtc3VtbWFyeS0xLWFuZC1jbGljay1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9tYWMvZmFzdC9odG1sL2RldGFpbHMtcmVtb3ZlLXN1bW1hcnktMS1hbmQtY2xp
Y2stZXhwZWN0ZWQudHh0CmluZGV4IGEzNWI5MWQ4ZDllZDJmNGQ1ZWRiZWMxMjM1OGZjOTJlNGRl
YTg0YjguLmFkMDY4OGQ4NmZmY2UyN2EyZTg1MmMyZWQ3ZTc5N2ViOTU4NDM5OWMgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L2h0bWwvZGV0YWlscy1yZW1vdmUtc3Vt
bWFyeS0xLWFuZC1jbGljay1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
bWFjL2Zhc3QvaHRtbC9kZXRhaWxzLXJlbW92ZS1zdW1tYXJ5LTEtYW5kLWNsaWNrLWV4cGVjdGVk
LnR4dApAQCAtOCw0ICs4LDQgQEAgbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCiAgICAgICAg
ICAgUmVuZGVyRGV0YWlsc01hcmtlciB7RElWfSBhdCAoMCw0KSBzaXplIDEweDEwOiBkb3duCiAg
ICAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgxNiwwKSBzaXplIDQ0eDE4CiAgICAgICAg
ICAgICB0ZXh0IHJ1biBhdCAoMTYsMCkgd2lkdGggNDQ6ICJEZXRhaWxzIgotY2FyZXQ6IHBvc2l0
aW9uIDAgb2YgY2hpbGQgMCB7RElWfSBvZiB7I3NoYWRvdy1yb290fSBvZiBjaGlsZCAwIHtTVU1N
QVJZfSBvZiB7I3NoYWRvdy1yb290fSBvZiBjaGlsZCAxIHtERVRBSUxTfSBvZiBib2R5CitjYXJl
dDogcG9zaXRpb24gMCBvZiBjaGlsZCAwIHtESVZ9IG9mIHsjc2hhZG93LXJvb3R9IG9mIGNoaWxk
IDAge1NVTU1BUll9IG9mIGNoaWxkIDAge0RJVn0gb2YgeyNzaGFkb3ctcm9vdH0gb2YgY2hpbGQg
MSB7REVUQUlMU30gb2YgYm9keQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFj
L2Zhc3QvaHRtbC9kZXRhaWxzLXJlbW92ZS1zdW1tYXJ5LTQtYW5kLWNsaWNrLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L2h0bWwvZGV0YWlscy1yZW1vdmUtc3Vt
bWFyeS00LWFuZC1jbGljay1leHBlY3RlZC50eHQKaW5kZXggMmZhYmRmYWFiNzg5NzAzN2RhODlj
YjlmNjQ1MjAxNjU1MDk2YmIxNS4uMGVmN2FkYmZiMWNhYzcxNjE1MmJjZTU1ZDIyYWFjZmJhY2M2
OWM4NCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvaHRtbC9kZXRh
aWxzLXJlbW92ZS1zdW1tYXJ5LTQtYW5kLWNsaWNrLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC9odG1sL2RldGFpbHMtcmVtb3ZlLXN1bW1hcnktNC1hbmQt
Y2xpY2stZXhwZWN0ZWQudHh0CkBAIC04LDQgKzgsNCBAQCBsYXllciBhdCAoMCwwKSBzaXplIDgw
MHg2MDAKICAgICAgICAgICBSZW5kZXJEZXRhaWxzTWFya2VyIHtESVZ9IGF0ICgwLDQpIHNpemUg
MTB4MTA6IHJpZ2h0CiAgICAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgxNiwwKSBzaXpl
IDQ0eDE4CiAgICAgICAgICAgICB0ZXh0IHJ1biBhdCAoMTYsMCkgd2lkdGggNDQ6ICJEZXRhaWxz
IgotY2FyZXQ6IHBvc2l0aW9uIDAgb2YgY2hpbGQgMCB7RElWfSBvZiB7I3NoYWRvdy1yb290fSBv
ZiBjaGlsZCAwIHtTVU1NQVJZfSBvZiB7I3NoYWRvdy1yb290fSBvZiBjaGlsZCAxIHtERVRBSUxT
fSBvZiBib2R5CitjYXJldDogcG9zaXRpb24gMCBvZiBjaGlsZCAwIHtESVZ9IG9mIHsjc2hhZG93
LXJvb3R9IG9mIGNoaWxkIDAge1NVTU1BUll9IG9mIGNoaWxkIDAge0RJVn0gb2YgeyNzaGFkb3ct
cm9vdH0gb2YgY2hpbGQgMSB7REVUQUlMU30gb2YgYm9keQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vcXQvZmFzdC9odG1sL2RldGFpbHMtcmVtb3ZlLXN1bW1hcnktMS1hbmQtY2xp
Y2stZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvZmFzdC9odG1sL2RldGFp
bHMtcmVtb3ZlLXN1bW1hcnktMS1hbmQtY2xpY2stZXhwZWN0ZWQudHh0CmluZGV4IDJjMTRkZTEx
ZTllYjE2MDQ0Nzg0MzZjY2MwOTE0MDlkOTk1ZGI2YTcuLjEzNjQ2Y2QyNjg4ODU0MzM3OTU2ODIw
MDQ3MjliMzQ1OTc3YjkxYWYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3F0L2Zh
c3QvaHRtbC9kZXRhaWxzLXJlbW92ZS1zdW1tYXJ5LTEtYW5kLWNsaWNrLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9mYXN0L2h0bWwvZGV0YWlscy1yZW1vdmUtc3Vt
bWFyeS0xLWFuZC1jbGljay1leHBlY3RlZC50eHQKQEAgLTgsNCArOCw0IEBAIGxheWVyIGF0ICgw
LDApIHNpemUgODAweDYwMAogICAgICAgICAgIFJlbmRlckRldGFpbHNNYXJrZXIge0RJVn0gYXQg
KDAsNikgc2l6ZSAxMHgxMDogZG93bgogICAgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAo
MTYsMCkgc2l6ZSA1MHgyMQogICAgICAgICAgICAgdGV4dCBydW4gYXQgKDE2LDApIHdpZHRoIDUw
OiAiRGV0YWlscyIKLWNhcmV0OiBwb3NpdGlvbiAwIG9mIGNoaWxkIDAge0RJVn0gb2YgeyNzaGFk
b3ctcm9vdH0gb2YgY2hpbGQgMCB7U1VNTUFSWX0gb2YgeyNzaGFkb3ctcm9vdH0gb2YgY2hpbGQg
MSB7REVUQUlMU30gb2YgYm9keQorY2FyZXQ6IHBvc2l0aW9uIDAgb2YgY2hpbGQgMCB7RElWfSBv
ZiB7I3NoYWRvdy1yb290fSBvZiBjaGlsZCAwIHtTVU1NQVJZfSBvZiBjaGlsZCAwIHtESVZ9IG9m
IHsjc2hhZG93LXJvb3R9IG9mIGNoaWxkIDEge0RFVEFJTFN9IG9mIGJvZHkKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3BsYXRmb3JtL3F0L2Zhc3QvaHRtbC9kZXRhaWxzLXJlbW92ZS1zdW1tYXJ5
LTQtYW5kLWNsaWNrLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3F0L2Zhc3Qv
aHRtbC9kZXRhaWxzLXJlbW92ZS1zdW1tYXJ5LTQtYW5kLWNsaWNrLWV4cGVjdGVkLnR4dAppbmRl
eCBhNDY5NTJiZjc5MGIzYmRkZTUyMjc0NDBiZjVjNDRjMWEwMGI4OWY5Li5lYTQ0YmFkMzRiYTE0
YzEzMWNiOGYzMmEyNTI2NmFhMDFkODQwYzE0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9xdC9mYXN0L2h0bWwvZGV0YWlscy1yZW1vdmUtc3VtbWFyeS00LWFuZC1jbGljay1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvZmFzdC9odG1sL2RldGFpbHMt
cmVtb3ZlLXN1bW1hcnktNC1hbmQtY2xpY2stZXhwZWN0ZWQudHh0CkBAIC04LDQgKzgsNCBAQCBs
YXllciBhdCAoMCwwKSBzaXplIDgwMHg2MDAKICAgICAgICAgICBSZW5kZXJEZXRhaWxzTWFya2Vy
IHtESVZ9IGF0ICgwLDYpIHNpemUgMTB4MTA6IHJpZ2h0CiAgICAgICAgICAgUmVuZGVyVGV4dCB7
I3RleHR9IGF0ICgxNiwwKSBzaXplIDUweDIxCiAgICAgICAgICAgICB0ZXh0IHJ1biBhdCAoMTYs
MCkgd2lkdGggNTA6ICJEZXRhaWxzIgotY2FyZXQ6IHBvc2l0aW9uIDAgb2YgY2hpbGQgMCB7RElW
fSBvZiB7I3NoYWRvdy1yb290fSBvZiBjaGlsZCAwIHtTVU1NQVJZfSBvZiB7I3NoYWRvdy1yb290
fSBvZiBjaGlsZCAxIHtERVRBSUxTfSBvZiBib2R5CitjYXJldDogcG9zaXRpb24gMCBvZiBjaGls
ZCAwIHtESVZ9IG9mIHsjc2hhZG93LXJvb3R9IG9mIGNoaWxkIDAge1NVTU1BUll9IG9mIGNoaWxk
IDAge0RJVn0gb2YgeyNzaGFkb3ctcm9vdH0gb2YgY2hpbGQgMSB7REVUQUlMU30gb2YgYm9keQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>125261</attachid>
            <date>2012-02-02 22:27:11 -0800</date>
            <delta_ts>2012-02-02 23:13:37 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-75930-20120203152709.patch</filename>
            <type>text/plain</type>
            <size>18541</size>
            <attacher name="Shinya Kawanaka">shinyak</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA2NjIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTk5ZmRlZWJmODU1MTkx
MTFhN2YxNDZhNTI1ZGIzMjQzYzM3ZWZhOS4uMTFhNjZlZWYzOGM5ZWI0MGNjNzFiMDk1ZjgwMDk3
YTBmNzFhY2RiMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM0IEBACisyMDEyLTAyLTAyICBTaGlu
eWEgS2F3YW5ha2EgIDxzaGlueWFrQGdvb2dsZS5jb20+CisKKyAgICAgICBSZWltcGxlbWVudCBE
RVRBSUxTIGFuZCBTVU1NQVJZIHVzaW5nIHNlbGVjdG9yIHF1ZXJ5LgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzU5MzAKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBERVRBSUxTIGlzIHJlaW1wbGVtZW50ZWQg
dXNpbmcgY29udGVudCBlbGVtZW50IGFuZCBpdHMgZmFsbGJhY2sgZmVhdHVyZS4KKyAgICAgICAg
V2UgZG9uJ3QgbmVlZCB0byByZWNyZWF0ZSBET00gZXZlbiBpZiBTVU1NQVJZIGlzIHJlbW92ZWQg
ZnJvbSBvciBhZGRlZCBpbnRvIERFVEFJTFMuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCBzaG91
bGQgYmUgY292ZXJlZCBieSBleGlzdGluZyB0ZXN0cy4KKworICAgICAgICAqIGh0bWwvSFRNTERl
dGFpbHNFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRldGFpbHNTdW1tYXJ5RWxlbWVu
dDo6ZmFsbGJhY2tTdW1tYXJ5KToKKyAgICAgICAgICBUYWtlcyBmYWxsYmFjayBlbGVtZW50IG9m
IGNvbnRlbnQgc3VtbWFyeS4KKyAgICAgICAgKERldGFpbHNTdW1tYXJ5RWxlbWVudCk6CisgICAg
ICAgIChXZWJDb3JlOjpEZXRhaWxzU3VtbWFyeUVsZW1lbnQ6OmNyZWF0ZSk6CisgICAgICAgICAg
Q3JlYXRlcyBhIGZhbGxiYWNrIGVsZW1lbnQgYWxzby4KKyAgICAgICAgKFdlYkNvcmUpOgorICAg
ICAgICAoV2ViQ29yZTo6SFRNTERldGFpbHNFbGVtZW50OjpjcmVhdGUpOgorICAgICAgICAoV2Vi
Q29yZTo6SFRNTERldGFpbHNFbGVtZW50OjpIVE1MRGV0YWlsc0VsZW1lbnQpOgorICAgICAgICAo
V2ViQ29yZTo6SFRNTERldGFpbHNFbGVtZW50OjpjcmVhdGVTaGFkb3dTdWJ0cmVlKToKKyAgICAg
ICAgKFdlYkNvcmU6OkhUTUxEZXRhaWxzRWxlbWVudDo6ZmluZE1haW5TdW1tYXJ5KToKKyAgICAg
ICAgKFdlYkNvcmU6OkhUTUxEZXRhaWxzRWxlbWVudDo6cGFyc2VNYXBwZWRBdHRyaWJ1dGUpOgor
ICAgICAgICAoV2ViQ29yZTo6SFRNTERldGFpbHNFbGVtZW50OjpjaGlsZFNob3VsZENyZWF0ZVJl
bmRlcmVyKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxEZXRhaWxzRWxlbWVudDo6dG9nZ2xlT3Bl
bik6CisgICAgICAgICogaHRtbC9IVE1MRGV0YWlsc0VsZW1lbnQuaDoKKyAgICAgICAgKEhUTUxE
ZXRhaWxzRWxlbWVudCk6CisgICAgICAgICogaHRtbC9IVE1MU3VtbWFyeUVsZW1lbnQuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6SFRNTFN1bW1hcnlFbGVtZW50Ojppc01haW5TdW1tYXJ5KToKKwog
MjAxMi0wMi0wMiAgUmF5bW9uZCBUb3kgIDxydG95QGdvb2dsZS5jb20+CiAKICAgICAgICAgQ2hl
Y2sgcGFyYW1ldGVycyB0byBiaXF1YWQgZmlsdGVycwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MRGV0YWlsc0VsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
RGV0YWlsc0VsZW1lbnQuY3BwCmluZGV4IGRkZWM3Mzg3NjY0ODAwM2UyZjkxYzc3MGQxYTgxNTIw
MjMyYjdmNTYuLjBiMzRiMmE5ZTdlYTRmNTNjZmY2NDRjOTE5ZjM5MjU0MGJkNzRjOTQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTERldGFpbHNFbGVtZW50LmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxEZXRhaWxzRWxlbWVudC5jcHAKQEAgLTYyLDYgKzYyLDEy
IEBAIGNsYXNzIERldGFpbHNTdW1tYXJ5RWxlbWVudCA6IHB1YmxpYyBIVE1MQ29udGVudEVsZW1l
bnQgewogcHVibGljOgogICAgIHN0YXRpYyBQYXNzUmVmUHRyPERldGFpbHNTdW1tYXJ5RWxlbWVu
dD4gY3JlYXRlKERvY3VtZW50Kik7CiAKKyAgICBFbGVtZW50KiBmYWxsYmFja1N1bW1hcnkoKQor
ICAgIHsKKyAgICAgICAgQVNTRVJUKGZpcnN0Q2hpbGQoKSAmJiBmaXJzdENoaWxkKCktPmhhc1Rh
Z05hbWUoc3VtbWFyeVRhZykpOworICAgICAgICByZXR1cm4gdG9FbGVtZW50KGZpcnN0Q2hpbGQo
KSk7CisgICAgfQorCiBwcml2YXRlOgogICAgIERldGFpbHNTdW1tYXJ5RWxlbWVudChEb2N1bWVu
dCogZG9jdW1lbnQpCiAgICAgICAgIDogSFRNTENvbnRlbnRFbGVtZW50KEhUTUxOYW1lczo6ZGl2
VGFnLCBkb2N1bWVudCkKQEAgLTcyLDIwICs3OCwyNCBAQCBwcml2YXRlOgogCiBQYXNzUmVmUHRy
PERldGFpbHNTdW1tYXJ5RWxlbWVudD4gRGV0YWlsc1N1bW1hcnlFbGVtZW50OjpjcmVhdGUoRG9j
dW1lbnQqIGRvY3VtZW50KQogewotICAgIHJldHVybiBhZG9wdFJlZihuZXcgRGV0YWlsc1N1bW1h
cnlFbGVtZW50KGRvY3VtZW50KSk7CisgICAgUmVmUHRyPEhUTUxTdW1tYXJ5RWxlbWVudD4gZGVm
YXVsdFN1bW1hcnkgPSBIVE1MU3VtbWFyeUVsZW1lbnQ6OmNyZWF0ZShzdW1tYXJ5VGFnLCBkb2N1
bWVudCk7CisgICAgZGVmYXVsdFN1bW1hcnktPmFwcGVuZENoaWxkKFRleHQ6OmNyZWF0ZShkb2N1
bWVudCwgZGVmYXVsdERldGFpbHNTdW1tYXJ5VGV4dCgpKSwgQVNTRVJUX05PX0VYQ0VQVElPTik7
CisKKyAgICBEZXRhaWxzU3VtbWFyeUVsZW1lbnQqIGVsZW0gPSBuZXcgRGV0YWlsc1N1bW1hcnlF
bGVtZW50KGRvY3VtZW50KTsKKyAgICBlbGVtLT5hcHBlbmRDaGlsZChkZWZhdWx0U3VtbWFyeSk7
CisgICAgcmV0dXJuIGFkb3B0UmVmKGVsZW0pOwogfQogCiBQYXNzUmVmUHRyPEhUTUxEZXRhaWxz
RWxlbWVudD4gSFRNTERldGFpbHNFbGVtZW50OjpjcmVhdGUoY29uc3QgUXVhbGlmaWVkTmFtZSYg
dGFnTmFtZSwgRG9jdW1lbnQqIGRvY3VtZW50KQogewotICAgIFJlZlB0cjxIVE1MRGV0YWlsc0Vs
ZW1lbnQ+IHJlc3VsdCA9IGFkb3B0UmVmKG5ldyBIVE1MRGV0YWlsc0VsZW1lbnQodGFnTmFtZSwg
ZG9jdW1lbnQpKTsKLSAgICByZXN1bHQtPmVuc3VyZVNoYWRvd1N1YnRyZWVPZihGb3J3YXJkaW5n
U3VtbWFyeSk7Ci0gICAgcmV0dXJuIHJlc3VsdDsKKyAgICBSZWZQdHI8SFRNTERldGFpbHNFbGVt
ZW50PiBlbGVtID0gYWRvcHRSZWYobmV3IEhUTUxEZXRhaWxzRWxlbWVudCh0YWdOYW1lLCBkb2N1
bWVudCkpOworICAgIGVsZW0tPmNyZWF0ZVNoYWRvd1N1YnRyZWUoKTsKKworICAgIHJldHVybiBl
bGVtLnJlbGVhc2UoKTsKIH0KIAogSFRNTERldGFpbHNFbGVtZW50OjpIVE1MRGV0YWlsc0VsZW1l
bnQoY29uc3QgUXVhbGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9jdW1lbnQqIGRvY3VtZW50KQogICAg
IDogSFRNTEVsZW1lbnQodGFnTmFtZSwgZG9jdW1lbnQpCi0gICAgLCBtX3N1bW1hcnlUeXBlKE5v
U3VtbWFyeSkKLSAgICAsIG1fbWFpblN1bW1hcnkoMCkKICAgICAsIG1faXNPcGVuKGZhbHNlKQog
ewogICAgIEFTU0VSVChoYXNUYWdOYW1lKGRldGFpbHNUYWcpKTsKQEAgLTk2LDgzICsxMDYsMjEg
QEAgUmVuZGVyT2JqZWN0KiBIVE1MRGV0YWlsc0VsZW1lbnQ6OmNyZWF0ZVJlbmRlcmVyKFJlbmRl
ckFyZW5hKiBhcmVuYSwgUmVuZGVyU3R5bGUKICAgICByZXR1cm4gbmV3IChhcmVuYSkgUmVuZGVy
RGV0YWlscyh0aGlzKTsKIH0KIAotdm9pZCBIVE1MRGV0YWlsc0VsZW1lbnQ6OmVuc3VyZVNoYWRv
d1N1YnRyZWVPZihTdW1tYXJ5VHlwZSB0eXBlKQotewotICAgIGlmICh0eXBlID09IG1fc3VtbWFy
eVR5cGUpCi0gICAgICAgIHJldHVybjsKLSAgICBtX3N1bW1hcnlUeXBlID0gdHlwZTsKLSAgICBy
ZW1vdmVTaGFkb3dSb290KCk7Ci0gICAgY3JlYXRlU2hhZG93U3VidHJlZSgpOwotfQotCi1zdGF0
aWMgTm9kZSogZmluZFN1bW1hcnlGb3IoUGFzc1JlZlB0cjxDb250YWluZXJOb2RlPiBjb250YWlu
ZXIpCi17Ci0gICAgZm9yIChOb2RlKiBjaGlsZCA9IGNvbnRhaW5lci0+Zmlyc3RDaGlsZCgpOyBj
aGlsZDsgY2hpbGQgPSBjaGlsZC0+bmV4dFNpYmxpbmcoKSkgewotICAgICAgICBpZiAoY2hpbGQt
Pmhhc1RhZ05hbWUoc3VtbWFyeVRhZykpCi0gICAgICAgICAgICByZXR1cm4gY2hpbGQ7Ci0gICAg
fQotCi0gICAgcmV0dXJuIDA7Ci19Ci0KLU5vZGUqIEhUTUxEZXRhaWxzRWxlbWVudDo6ZW5zdXJl
TWFpblN1bW1hcnkoKQotewotICAgIE5vZGUqIHN1bW1hcnkgPSBmaW5kU3VtbWFyeUZvcih0aGlz
KTsKLSAgICBpZiAoc3VtbWFyeSkgewotICAgICAgICBlbnN1cmVTaGFkb3dTdWJ0cmVlT2YoRm9y
d2FyZGluZ1N1bW1hcnkpOwotICAgICAgICByZXR1cm4gc3VtbWFyeTsKLSAgICB9Ci0KLSAgICBl
bnN1cmVTaGFkb3dTdWJ0cmVlT2YoRGVmYXVsdFN1bW1hcnkpOwotICAgIHJldHVybiBmaW5kU3Vt
bWFyeUZvcihzaGFkb3dSb290KCkpOwotfQotCi12b2lkIEhUTUxEZXRhaWxzRWxlbWVudDo6cmVm
cmVzaE1haW5TdW1tYXJ5KFJlZnJlc2hSZW5kZXJlciByZWZyZXNoUmVuZGVyZXIpCi17Ci0gICAg
UmVmUHRyPE5vZGU+IG9sZFN1bW1hcnkgPSBtX21haW5TdW1tYXJ5OwotICAgIG1fbWFpblN1bW1h
cnkgPSBlbnN1cmVNYWluU3VtbWFyeSgpOwotCi0gICAgaWYgKG9sZFN1bW1hcnkgPT0gbV9tYWlu
U3VtbWFyeSB8fCAhYXR0YWNoZWQoKSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgaWYgKG9sZFN1
bW1hcnkgJiYgb2xkU3VtbWFyeS0+cGFyZW50Tm9kZUZvclJlbmRlcmluZ0FuZFN0eWxlKCkpCi0g
ICAgICAgIG9sZFN1bW1hcnktPnJlYXR0YWNoKCk7Ci0gICAgaWYgKG1fbWFpblN1bW1hcnkgJiYg
cmVmcmVzaFJlbmRlcmVyID09IFJlZnJlc2hSZW5kZXJlckFsbG93ZWQpCi0gICAgICAgIG1fbWFp
blN1bW1hcnktPnJlYXR0YWNoKCk7Ci19Ci0KIHZvaWQgSFRNTERldGFpbHNFbGVtZW50OjpjcmVh
dGVTaGFkb3dTdWJ0cmVlKCkKIHsKICAgICBBU1NFUlQoIXNoYWRvd1Jvb3QoKSk7Ci0gICAgRXhj
ZXB0aW9uQ29kZSBlYyA9IDA7Ci0gICAgaWYgKG1fc3VtbWFyeVR5cGUgPT0gRGVmYXVsdFN1bW1h
cnkpIHsKLSAgICAgICAgUmVmUHRyPEhUTUxTdW1tYXJ5RWxlbWVudD4gZGVmYXVsdFN1bW1hcnkg
PSBIVE1MU3VtbWFyeUVsZW1lbnQ6OmNyZWF0ZShzdW1tYXJ5VGFnLCBkb2N1bWVudCgpKTsKLSAg
ICAgICAgZGVmYXVsdFN1bW1hcnktPmFwcGVuZENoaWxkKFRleHQ6OmNyZWF0ZShkb2N1bWVudCgp
LCBkZWZhdWx0RGV0YWlsc1N1bW1hcnlUZXh0KCkpLCBlYyk7Ci0gICAgICAgIGVuc3VyZVNoYWRv
d1Jvb3QoKS0+YXBwZW5kQ2hpbGQoZGVmYXVsdFN1bW1hcnksIGVjLCB0cnVlKTsKLSAgICAgICAg
ZW5zdXJlU2hhZG93Um9vdCgpLT5hcHBlbmRDaGlsZChEZXRhaWxzQ29udGVudEVsZW1lbnQ6OmNy
ZWF0ZShkb2N1bWVudCgpKSwgZWMsIHRydWUpOwotICAgIH0gZWxzZSB7Ci0gICAgICAgIEFTU0VS
VChtX3N1bW1hcnlUeXBlID09IEZvcndhcmRpbmdTdW1tYXJ5KTsKLSAgICAgICAgZW5zdXJlU2hh
ZG93Um9vdCgpLT5hcHBlbmRDaGlsZChEZXRhaWxzU3VtbWFyeUVsZW1lbnQ6OmNyZWF0ZShkb2N1
bWVudCgpKSwgZWMsIHRydWUpOwotICAgICAgICBlbnN1cmVTaGFkb3dSb290KCktPmFwcGVuZENo
aWxkKERldGFpbHNDb250ZW50RWxlbWVudDo6Y3JlYXRlKGRvY3VtZW50KCkpLCBlYywgdHJ1ZSk7
Ci0gICAgfQorICAgIGVuc3VyZVNoYWRvd1Jvb3QoKS0+YXBwZW5kQ2hpbGQoRGV0YWlsc1N1bW1h
cnlFbGVtZW50OjpjcmVhdGUoZG9jdW1lbnQoKSksIEFTU0VSVF9OT19FWENFUFRJT04sIHRydWUp
OworICAgIGVuc3VyZVNoYWRvd1Jvb3QoKS0+YXBwZW5kQ2hpbGQoRGV0YWlsc0NvbnRlbnRFbGVt
ZW50OjpjcmVhdGUoZG9jdW1lbnQoKSksIEFTU0VSVF9OT19FWENFUFRJT04sIHRydWUpOwogfQog
Ci0KLXZvaWQgSFRNTERldGFpbHNFbGVtZW50OjpjaGlsZHJlbkNoYW5nZWQoYm9vbCBjaGFuZ2Vk
QnlQYXJzZXIsIE5vZGUqIGJlZm9yZUNoYW5nZSwgTm9kZSogYWZ0ZXJDaGFuZ2UsIGludCBjaGls
ZENvdW50RGVsdGEpCitFbGVtZW50KiBIVE1MRGV0YWlsc0VsZW1lbnQ6OmZpbmRNYWluU3VtbWFy
eSgpIGNvbnN0CiB7Ci0gICAgSFRNTEVsZW1lbnQ6OmNoaWxkcmVuQ2hhbmdlZChjaGFuZ2VkQnlQ
YXJzZXIsIGJlZm9yZUNoYW5nZSwgYWZ0ZXJDaGFuZ2UsIGNoaWxkQ291bnREZWx0YSk7Ci0gICAg
Ly8gSWYgY2hpbGRDb3VudERlbHRhIGlzIGxlc3MgdGhlbiB6ZXJvIGFuZCB0aGUgbWFpbiBzdW1t
YXJ5IGhhcyBjaGFuZ2VkIGl0IG11c3QgYmUgYmVjYXVzZSBwcmV2aW91cyBtYWluCi0gICAgLy8g
c3VtbWFyeSB3YXMgcmVtb3ZlZC4gVGhlIG5ldyBtYWluIHN1bW1hcnkgd2FzIHRoZW4gaW5zaWRl
IHRoZSB1bnJldmVhbGVkIGNvbnRlbnQgYW5kIG5lZWRzIHRvIGJlCi0gICAgLy8gcmVhdHRhY2hl
ZCB0byBjcmVhdGUgaXRzIHJlbmRlcmVyLiBJZiBjaGlsZENvdW50RGVsdGEgaXMgbm90IGxlc3Mg
dGhlbiB6ZXJvIHRoZW4gYSBuZXcgPHN1bW1hcnk+IGVsZW1lbnQKLSAgICAvLyBoYXMgYmVlbiBh
ZGRlZCBhbmQgaXQgd2lsbCBiZSBhdHRhY2hlZCB3aXRob3V0IG91ciBoZWxwLgotICAgIGlmICgh
Y2hhbmdlZEJ5UGFyc2VyKQotICAgICAgICByZWZyZXNoTWFpblN1bW1hcnkoY2hpbGRDb3VudERl
bHRhIDwgMCA/IFJlZnJlc2hSZW5kZXJlckFsbG93ZWQgOiBSZWZyZXNoUmVuZGVyZXJTdXByZXNz
ZWQpOwotfQorICAgIGZvciAoTm9kZSogY2hpbGQgPSBmaXJzdENoaWxkKCk7IGNoaWxkOyBjaGls
ZCA9IGNoaWxkLT5uZXh0U2libGluZygpKSB7CisgICAgICAgIGlmIChjaGlsZC0+aGFzVGFnTmFt
ZShzdW1tYXJ5VGFnKSkKKyAgICAgICAgICAgIHJldHVybiB0b0VsZW1lbnQoY2hpbGQpOworICAg
IH0KIAotdm9pZCBIVE1MRGV0YWlsc0VsZW1lbnQ6OmZpbmlzaFBhcnNpbmdDaGlsZHJlbigpCi17
Ci0gICAgSFRNTEVsZW1lbnQ6OmZpbmlzaFBhcnNpbmdDaGlsZHJlbigpOwotICAgIHJlZnJlc2hN
YWluU3VtbWFyeShSZWZyZXNoUmVuZGVyZXJBbGxvd2VkKTsKKyAgICByZXR1cm4gc3RhdGljX2Nh
c3Q8RGV0YWlsc1N1bW1hcnlFbGVtZW50Kj4oc2hhZG93Um9vdCgpLT5maXJzdENoaWxkKCkpLT5m
YWxsYmFja1N1bW1hcnkoKTsKIH0KIAogdm9pZCBIVE1MRGV0YWlsc0VsZW1lbnQ6OnBhcnNlTWFw
cGVkQXR0cmlidXRlKEF0dHJpYnV0ZSogYXR0cikKQEAgLTE4OCw3ICsxMzYsMTMgQEAgdm9pZCBI
VE1MRGV0YWlsc0VsZW1lbnQ6OnBhcnNlTWFwcGVkQXR0cmlidXRlKEF0dHJpYnV0ZSogYXR0cikK
IAogYm9vbCBIVE1MRGV0YWlsc0VsZW1lbnQ6OmNoaWxkU2hvdWxkQ3JlYXRlUmVuZGVyZXIoTm9k
ZSogY2hpbGQpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1faXNPcGVuIHx8IGNoaWxkID09IG1fbWFp
blN1bW1hcnk7CisgICAgaWYgKG1faXNPcGVuKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAg
IGlmICghY2hpbGQtPmhhc1RhZ05hbWUoc3VtbWFyeVRhZykpCisgICAgICAgIHJldHVybiBmYWxz
ZTsKKworICAgIHJldHVybiBjaGlsZCA9PSBmaW5kTWFpblN1bW1hcnkoKTsKIH0KIAogdm9pZCBI
VE1MRGV0YWlsc0VsZW1lbnQ6OnRvZ2dsZU9wZW4oKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MRGV0YWlsc0VsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTERl
dGFpbHNFbGVtZW50LmgKaW5kZXggMGQ4ZGRhNzEwMzNjYjM5ZjBlMDc0MzRmNDdkYmNhYjc5NGI1
YmVjMy4uNjhmYzdjMTM2NDMxMmM1ZjAxOTA1ZTRmZGRmZWUxN2UwZmFhNGRiMCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRGV0YWlsc0VsZW1lbnQuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxEZXRhaWxzRWxlbWVudC5oCkBAIC0yOCwzNyArMjgsMjAgQEAgbmFt
ZXNwYWNlIFdlYkNvcmUgewogY2xhc3MgSFRNTERldGFpbHNFbGVtZW50IDogcHVibGljIEhUTUxF
bGVtZW50IHsKIHB1YmxpYzoKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxIVE1MRGV0YWlsc0VsZW1l
bnQ+IGNyZWF0ZShjb25zdCBRdWFsaWZpZWROYW1lJiB0YWdOYW1lLCBEb2N1bWVudCogZG9jdW1l
bnQpOwotICAgIE5vZGUqIG1haW5TdW1tYXJ5KCkgY29uc3QgeyByZXR1cm4gbV9tYWluU3VtbWFy
eTsgfQogICAgIHZvaWQgdG9nZ2xlT3BlbigpOwogCi1wcml2YXRlOgotICAgIGVudW0gUmVmcmVz
aFJlbmRlcmVyIHsKLSAgICAgICAgUmVmcmVzaFJlbmRlcmVyQWxsb3dlZCwKLSAgICAgICAgUmVm
cmVzaFJlbmRlcmVyU3VwcmVzc2VkLAotICAgIH07Ci0KLSAgICBlbnVtIFN1bW1hcnlUeXBlIHsK
LSAgICAgICAgTm9TdW1tYXJ5LAotICAgICAgICBEZWZhdWx0U3VtbWFyeSwKLSAgICAgICAgRm9y
d2FyZGluZ1N1bW1hcnkKLSAgICB9OworICAgIEVsZW1lbnQqIGZpbmRNYWluU3VtbWFyeSgpIGNv
bnN0OwogCitwcml2YXRlOgogICAgIEhUTUxEZXRhaWxzRWxlbWVudChjb25zdCBRdWFsaWZpZWRO
YW1lJiwgRG9jdW1lbnQqKTsKIAogICAgIHZpcnR1YWwgUmVuZGVyT2JqZWN0KiBjcmVhdGVSZW5k
ZXJlcihSZW5kZXJBcmVuYSosIFJlbmRlclN0eWxlKik7Ci0gICAgdmlydHVhbCB2b2lkIGNoaWxk
cmVuQ2hhbmdlZChib29sIGNoYW5nZWRCeVBhcnNlciwgTm9kZSogYmVmb3JlQ2hhbmdlLCBOb2Rl
KiBhZnRlckNoYW5nZSwgaW50IGNoaWxkQ291bnREZWx0YSk7Ci0gICAgdmlydHVhbCB2b2lkIGZp
bmlzaFBhcnNpbmdDaGlsZHJlbigpOwogCiAgICAgdm9pZCBwYXJzZU1hcHBlZEF0dHJpYnV0ZShB
dHRyaWJ1dGUqKTsKICAgICBib29sIGNoaWxkU2hvdWxkQ3JlYXRlUmVuZGVyZXIoTm9kZSopIGNv
bnN0OwogCi0gICAgTm9kZSogZW5zdXJlTWFpblN1bW1hcnkoKTsKLSAgICB2b2lkIHJlZnJlc2hN
YWluU3VtbWFyeShSZWZyZXNoUmVuZGVyZXIpOwotICAgIHZvaWQgZW5zdXJlU2hhZG93U3VidHJl
ZU9mKFN1bW1hcnlUeXBlKTsKICAgICB2b2lkIGNyZWF0ZVNoYWRvd1N1YnRyZWUoKTsKIAotICAg
IFN1bW1hcnlUeXBlIG1fc3VtbWFyeVR5cGU7Ci0gICAgTm9kZSogbV9tYWluU3VtbWFyeTsKICAg
ICBib29sIG1faXNPcGVuOwogCiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MU3VtbWFyeUVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MU3VtbWFyeUVs
ZW1lbnQuY3BwCmluZGV4IDk5MjU2MjdmZTVjZTNhYTRhOTliMjMzMDE1MjgwYzBjNzQzNjg1MTQu
LjRkYmJkNTNlNjYxZmVlMThlNTc1NmExZWRkNzdiNGVhY2QyNzQ1NGEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTFN1bW1hcnlFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxTdW1tYXJ5RWxlbWVudC5jcHAKQEAgLTg5LDcgKzg5LDcgQEAgSFRNTERl
dGFpbHNFbGVtZW50KiBIVE1MU3VtbWFyeUVsZW1lbnQ6OmRldGFpbHNFbGVtZW50KCkgY29uc3QK
IGJvb2wgSFRNTFN1bW1hcnlFbGVtZW50Ojppc01haW5TdW1tYXJ5KCkgY29uc3QKIHsKICAgICBp
ZiAoSFRNTERldGFpbHNFbGVtZW50KiBkZXRhaWxzID0gZGV0YWlsc0VsZW1lbnQoKSkKLSAgICAg
ICAgcmV0dXJuIGRldGFpbHMtPm1haW5TdW1tYXJ5KCkgPT0gdGhpczsKKyAgICAgICAgcmV0dXJu
IGRldGFpbHMtPmZpbmRNYWluU3VtbWFyeSgpID09IHRoaXM7CiAgICAgcmV0dXJuIDA7CiB9CiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBiZTczNTczMDNiZjM1MWE4YmRhYTAzMjcwNWI2M2JiYzYzOGRkM2MwLi5kZDA1YjYy
YTI2MWYwZmJlZWUyODFlY2ZlYTY0ODk0NmVhMTA4NjhlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAK
KzIwMTItMDItMDIgIFNoaW55YSBLYXdhbmFrYSAgPHNoaW55YWtAZ29vZ2xlLmNvbT4KKworICAg
ICAgICBSZWltcGxlbWVudCBERVRBSUxTIGFuZCBTVU1NQVJZIHVzaW5nIHNlbGVjdG9yIHF1ZXJ5
LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzU5MzAK
KworICAgICAgICBTaW5jZSB0aGUgaW1wbGVtZW50YXRpb24gb2YgREVUQUlMUyBzaGFkb3cgdHJl
ZSwgdGhlIHBhdGggb2YgY2FyZXQgcG9zaXRpb24gaXMgYWxzbyBjaGFuZ2VkLgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogcGxhdGZvcm0vY2hyb21p
dW0td2luL2Zhc3QvaHRtbC9kZXRhaWxzLXJlbW92ZS1zdW1tYXJ5LTEtYW5kLWNsaWNrLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS13aW4vZmFzdC9odG1sL2RldGFp
bHMtcmVtb3ZlLXN1bW1hcnktNC1hbmQtY2xpY2stZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBs
YXRmb3JtL2d0ay9mYXN0L2h0bWwvZGV0YWlscy1yZW1vdmUtc3VtbWFyeS0xLWFuZC1jbGljay1l
eHBlY3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vZ3RrL2Zhc3QvaHRtbC9kZXRhaWxzLXJl
bW92ZS1zdW1tYXJ5LTQtYW5kLWNsaWNrLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9y
bS9tYWMvZmFzdC9odG1sL2RldGFpbHMtcmVtb3ZlLXN1bW1hcnktMS1hbmQtY2xpY2stZXhwZWN0
ZWQudHh0OgorICAgICAgICAqIHBsYXRmb3JtL21hYy9mYXN0L2h0bWwvZGV0YWlscy1yZW1vdmUt
c3VtbWFyeS00LWFuZC1jbGljay1leHBlY3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vcXQv
ZmFzdC9odG1sL2RldGFpbHMtcmVtb3ZlLXN1bW1hcnktMS1hbmQtY2xpY2stZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIHBsYXRmb3JtL3F0L2Zhc3QvaHRtbC9kZXRhaWxzLXJlbW92ZS1zdW1tYXJ5
LTQtYW5kLWNsaWNrLWV4cGVjdGVkLnR4dDoKKwogMjAxMi0wMi0wMiAgUmF5bW9uZCBUb3kgIDxy
dG95QGNocm9taXVtLm9yZz4KIAogICAgICAgICBDaGVjayBwYXJhbWV0ZXJzIHRvIGJpcXVhZCBm
aWx0ZXJzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS13aW4vZmFz
dC9odG1sL2RldGFpbHMtcmVtb3ZlLXN1bW1hcnktMS1hbmQtY2xpY2stZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0td2luL2Zhc3QvaHRtbC9kZXRhaWxzLXJlbW92
ZS1zdW1tYXJ5LTEtYW5kLWNsaWNrLWV4cGVjdGVkLnR4dAppbmRleCBmOGVlNDQxMWMyODQyYTQx
OWYyYzY2YzVjYmU3MjFmMjJmMTMzM2UwLi41MzJiODU0ODRkZDQ4NjdhMmQ3ODQ0MmIwMTRiMjcy
ZjU4OGFkZWU4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS13aW4v
ZmFzdC9odG1sL2RldGFpbHMtcmVtb3ZlLXN1bW1hcnktMS1hbmQtY2xpY2stZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtLXdpbi9mYXN0L2h0bWwvZGV0YWls
cy1yZW1vdmUtc3VtbWFyeS0xLWFuZC1jbGljay1leHBlY3RlZC50eHQKQEAgLTgsNCArOCw0IEBA
IGxheWVyIGF0ICgwLDApIHNpemUgODAweDYwMAogICAgICAgICAgIFJlbmRlckRldGFpbHNNYXJr
ZXIge0RJVn0gYXQgKDAsNSkgc2l6ZSAxMHgxMDogZG93bgogICAgICAgICAgIFJlbmRlclRleHQg
eyN0ZXh0fSBhdCAoMTYsMCkgc2l6ZSA0MXgxOQogICAgICAgICAgICAgdGV4dCBydW4gYXQgKDE2
LDApIHdpZHRoIDQxOiAiRGV0YWlscyIKLWNhcmV0OiBwb3NpdGlvbiAwIG9mIGNoaWxkIDAge0RJ
Vn0gb2YgeyNzaGFkb3ctcm9vdH0gb2YgY2hpbGQgMCB7U1VNTUFSWX0gb2YgeyNzaGFkb3ctcm9v
dH0gb2YgY2hpbGQgMSB7REVUQUlMU30gb2YgYm9keQorY2FyZXQ6IHBvc2l0aW9uIDAgb2YgY2hp
bGQgMCB7RElWfSBvZiB7I3NoYWRvdy1yb290fSBvZiBjaGlsZCAwIHtTVU1NQVJZfSBvZiBjaGls
ZCAwIHtESVZ9IG9mIHsjc2hhZG93LXJvb3R9IG9mIGNoaWxkIDEge0RFVEFJTFN9IG9mIGJvZHkK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtLXdpbi9mYXN0L2h0bWwv
ZGV0YWlscy1yZW1vdmUtc3VtbWFyeS00LWFuZC1jbGljay1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS13aW4vZmFzdC9odG1sL2RldGFpbHMtcmVtb3ZlLXN1bW1h
cnktNC1hbmQtY2xpY2stZXhwZWN0ZWQudHh0CmluZGV4IGU0MmE3YmRkZWExYTc0ZTc4N2M2OTQ0
YjE3OGNlYjhmMGViZmIzYTAuLjQ4MjI4ZGYxYTE4YmFhNGUxNDlkOTYxNDI0OTk5YzQ3ZTIyNzky
MDkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtLXdpbi9mYXN0L2h0
bWwvZGV0YWlscy1yZW1vdmUtc3VtbWFyeS00LWFuZC1jbGljay1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0td2luL2Zhc3QvaHRtbC9kZXRhaWxzLXJlbW92
ZS1zdW1tYXJ5LTQtYW5kLWNsaWNrLWV4cGVjdGVkLnR4dApAQCAtOCw0ICs4LDQgQEAgbGF5ZXIg
YXQgKDAsMCkgc2l6ZSA4MDB4NjAwCiAgICAgICAgICAgUmVuZGVyRGV0YWlsc01hcmtlciB7RElW
fSBhdCAoMCw1KSBzaXplIDEweDEwOiByaWdodAogICAgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0
fSBhdCAoMTYsMCkgc2l6ZSA0MXgxOQogICAgICAgICAgICAgdGV4dCBydW4gYXQgKDE2LDApIHdp
ZHRoIDQxOiAiRGV0YWlscyIKLWNhcmV0OiBwb3NpdGlvbiAwIG9mIGNoaWxkIDAge0RJVn0gb2Yg
eyNzaGFkb3ctcm9vdH0gb2YgY2hpbGQgMCB7U1VNTUFSWX0gb2YgeyNzaGFkb3ctcm9vdH0gb2Yg
Y2hpbGQgMSB7REVUQUlMU30gb2YgYm9keQorY2FyZXQ6IHBvc2l0aW9uIDAgb2YgY2hpbGQgMCB7
RElWfSBvZiB7I3NoYWRvdy1yb290fSBvZiBjaGlsZCAwIHtTVU1NQVJZfSBvZiBjaGlsZCAwIHtE
SVZ9IG9mIHsjc2hhZG93LXJvb3R9IG9mIGNoaWxkIDEge0RFVEFJTFN9IG9mIGJvZHkKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9mYXN0L2h0bWwvZGV0YWlscy1yZW1vdmUt
c3VtbWFyeS0xLWFuZC1jbGljay1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9n
dGsvZmFzdC9odG1sL2RldGFpbHMtcmVtb3ZlLXN1bW1hcnktMS1hbmQtY2xpY2stZXhwZWN0ZWQu
dHh0CmluZGV4IDQyOTAzZjc4ZTI2YTgyODc0MTVlYmFhOWMxOWU5MTA0NWI5NGIxZTAuLjdlNzE4
YmQ1MGU0OWI2OGMxYjVkNzc5ZDBhYTQxNWM2MzUyMGY3MzcgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL3BsYXRmb3JtL2d0ay9mYXN0L2h0bWwvZGV0YWlscy1yZW1vdmUtc3VtbWFyeS0xLWFuZC1j
bGljay1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2Zhc3QvaHRt
bC9kZXRhaWxzLXJlbW92ZS1zdW1tYXJ5LTEtYW5kLWNsaWNrLWV4cGVjdGVkLnR4dApAQCAtOCw0
ICs4LDQgQEAgbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCiAgICAgICAgICAgUmVuZGVyRGV0
YWlsc01hcmtlciB7RElWfSBhdCAoMCw0KSBzaXplIDEweDEwOiBkb3duCiAgICAgICAgICAgUmVu
ZGVyVGV4dCB7I3RleHR9IGF0ICgxNiwwKSBzaXplIDQ2eDE3CiAgICAgICAgICAgICB0ZXh0IHJ1
biBhdCAoMTYsMCkgd2lkdGggNDY6ICJEZXRhaWxzIgotY2FyZXQ6IHBvc2l0aW9uIDAgb2YgY2hp
bGQgMCB7RElWfSBvZiB7I3NoYWRvdy1yb290fSBvZiBjaGlsZCAwIHtTVU1NQVJZfSBvZiB7I3No
YWRvdy1yb290fSBvZiBjaGlsZCAxIHtERVRBSUxTfSBvZiBib2R5CitjYXJldDogcG9zaXRpb24g
MCBvZiBjaGlsZCAwIHtESVZ9IG9mIHsjc2hhZG93LXJvb3R9IG9mIGNoaWxkIDAge1NVTU1BUll9
IG9mIGNoaWxkIDAge0RJVn0gb2YgeyNzaGFkb3ctcm9vdH0gb2YgY2hpbGQgMSB7REVUQUlMU30g
b2YgYm9keQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2Zhc3QvaHRtbC9k
ZXRhaWxzLXJlbW92ZS1zdW1tYXJ5LTQtYW5kLWNsaWNrLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL3BsYXRmb3JtL2d0ay9mYXN0L2h0bWwvZGV0YWlscy1yZW1vdmUtc3VtbWFyeS00LWFuZC1j
bGljay1leHBlY3RlZC50eHQKaW5kZXggZGJmNjEzZDUyYzU1ZTU2MDE0MWYzYjhmYzRhMTA4YmVk
YTU3MmVkNS4uNGRiODg3ZWQ1YzM3ZTA5ZTNlODRhODUyY2U0NzI1MTcxMWRkZDhjOSAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2Zhc3QvaHRtbC9kZXRhaWxzLXJlbW92ZS1z
dW1tYXJ5LTQtYW5kLWNsaWNrLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9ndGsvZmFzdC9odG1sL2RldGFpbHMtcmVtb3ZlLXN1bW1hcnktNC1hbmQtY2xpY2stZXhwZWN0
ZWQudHh0CkBAIC04LDQgKzgsNCBAQCBsYXllciBhdCAoMCwwKSBzaXplIDgwMHg2MDAKICAgICAg
ICAgICBSZW5kZXJEZXRhaWxzTWFya2VyIHtESVZ9IGF0ICgwLDQpIHNpemUgMTB4MTA6IHJpZ2h0
CiAgICAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgxNiwwKSBzaXplIDQ2eDE3CiAgICAg
ICAgICAgICB0ZXh0IHJ1biBhdCAoMTYsMCkgd2lkdGggNDY6ICJEZXRhaWxzIgotY2FyZXQ6IHBv
c2l0aW9uIDAgb2YgY2hpbGQgMCB7RElWfSBvZiB7I3NoYWRvdy1yb290fSBvZiBjaGlsZCAwIHtT
VU1NQVJZfSBvZiB7I3NoYWRvdy1yb290fSBvZiBjaGlsZCAxIHtERVRBSUxTfSBvZiBib2R5Citj
YXJldDogcG9zaXRpb24gMCBvZiBjaGlsZCAwIHtESVZ9IG9mIHsjc2hhZG93LXJvb3R9IG9mIGNo
aWxkIDAge1NVTU1BUll9IG9mIGNoaWxkIDAge0RJVn0gb2YgeyNzaGFkb3ctcm9vdH0gb2YgY2hp
bGQgMSB7REVUQUlMU30gb2YgYm9keQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
bWFjL2Zhc3QvaHRtbC9kZXRhaWxzLXJlbW92ZS1zdW1tYXJ5LTEtYW5kLWNsaWNrLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L2h0bWwvZGV0YWlscy1yZW1vdmUt
c3VtbWFyeS0xLWFuZC1jbGljay1leHBlY3RlZC50eHQKaW5kZXggYTM1YjkxZDhkOWVkMmY0ZDVl
ZGJlYzEyMzU4ZmM5MmU0ZGVhODRiOC4uYWQwNjg4ZDg2ZmZjZTI3YTJlODUyYzJlZDdlNzk3ZWI5
NTg0Mzk5YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvaHRtbC9k
ZXRhaWxzLXJlbW92ZS1zdW1tYXJ5LTEtYW5kLWNsaWNrLWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC9odG1sL2RldGFpbHMtcmVtb3ZlLXN1bW1hcnktMS1h
bmQtY2xpY2stZXhwZWN0ZWQudHh0CkBAIC04LDQgKzgsNCBAQCBsYXllciBhdCAoMCwwKSBzaXpl
IDgwMHg2MDAKICAgICAgICAgICBSZW5kZXJEZXRhaWxzTWFya2VyIHtESVZ9IGF0ICgwLDQpIHNp
emUgMTB4MTA6IGRvd24KICAgICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDE2LDApIHNp
emUgNDR4MTgKICAgICAgICAgICAgIHRleHQgcnVuIGF0ICgxNiwwKSB3aWR0aCA0NDogIkRldGFp
bHMiCi1jYXJldDogcG9zaXRpb24gMCBvZiBjaGlsZCAwIHtESVZ9IG9mIHsjc2hhZG93LXJvb3R9
IG9mIGNoaWxkIDAge1NVTU1BUll9IG9mIHsjc2hhZG93LXJvb3R9IG9mIGNoaWxkIDEge0RFVEFJ
TFN9IG9mIGJvZHkKK2NhcmV0OiBwb3NpdGlvbiAwIG9mIGNoaWxkIDAge0RJVn0gb2YgeyNzaGFk
b3ctcm9vdH0gb2YgY2hpbGQgMCB7U1VNTUFSWX0gb2YgY2hpbGQgMCB7RElWfSBvZiB7I3NoYWRv
dy1yb290fSBvZiBjaGlsZCAxIHtERVRBSUxTfSBvZiBib2R5CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC9odG1sL2RldGFpbHMtcmVtb3ZlLXN1bW1hcnktNC1hbmQt
Y2xpY2stZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvaHRtbC9k
ZXRhaWxzLXJlbW92ZS1zdW1tYXJ5LTQtYW5kLWNsaWNrLWV4cGVjdGVkLnR4dAppbmRleCAyZmFi
ZGZhYWI3ODk3MDM3ZGE4OWNiOWY2NDUyMDE2NTUwOTZiYjE1Li4wZWY3YWRiZmIxY2FjNzE2MTUy
YmNlNTVkMjJhYWNmYmFjYzY5Yzg0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9t
YWMvZmFzdC9odG1sL2RldGFpbHMtcmVtb3ZlLXN1bW1hcnktNC1hbmQtY2xpY2stZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L2h0bWwvZGV0YWlscy1yZW1v
dmUtc3VtbWFyeS00LWFuZC1jbGljay1leHBlY3RlZC50eHQKQEAgLTgsNCArOCw0IEBAIGxheWVy
IGF0ICgwLDApIHNpemUgODAweDYwMAogICAgICAgICAgIFJlbmRlckRldGFpbHNNYXJrZXIge0RJ
Vn0gYXQgKDAsNCkgc2l6ZSAxMHgxMDogcmlnaHQKICAgICAgICAgICBSZW5kZXJUZXh0IHsjdGV4
dH0gYXQgKDE2LDApIHNpemUgNDR4MTgKICAgICAgICAgICAgIHRleHQgcnVuIGF0ICgxNiwwKSB3
aWR0aCA0NDogIkRldGFpbHMiCi1jYXJldDogcG9zaXRpb24gMCBvZiBjaGlsZCAwIHtESVZ9IG9m
IHsjc2hhZG93LXJvb3R9IG9mIGNoaWxkIDAge1NVTU1BUll9IG9mIHsjc2hhZG93LXJvb3R9IG9m
IGNoaWxkIDEge0RFVEFJTFN9IG9mIGJvZHkKK2NhcmV0OiBwb3NpdGlvbiAwIG9mIGNoaWxkIDAg
e0RJVn0gb2YgeyNzaGFkb3ctcm9vdH0gb2YgY2hpbGQgMCB7U1VNTUFSWX0gb2YgY2hpbGQgMCB7
RElWfSBvZiB7I3NoYWRvdy1yb290fSBvZiBjaGlsZCAxIHtERVRBSUxTfSBvZiBib2R5CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9mYXN0L2h0bWwvZGV0YWlscy1yZW1vdmUt
c3VtbWFyeS0xLWFuZC1jbGljay1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9x
dC9mYXN0L2h0bWwvZGV0YWlscy1yZW1vdmUtc3VtbWFyeS0xLWFuZC1jbGljay1leHBlY3RlZC50
eHQKaW5kZXggMmMxNGRlMTFlOWViMTYwNDQ3ODQzNmNjYzA5MTQwOWQ5OTVkYjZhNy4uMTM2NDZj
ZDI2ODg4NTQzMzc5NTY4MjAwNDcyOWIzNDU5NzdiOTFhZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vcXQvZmFzdC9odG1sL2RldGFpbHMtcmVtb3ZlLXN1bW1hcnktMS1hbmQtY2xp
Y2stZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3F0L2Zhc3QvaHRtbC9k
ZXRhaWxzLXJlbW92ZS1zdW1tYXJ5LTEtYW5kLWNsaWNrLWV4cGVjdGVkLnR4dApAQCAtOCw0ICs4
LDQgQEAgbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCiAgICAgICAgICAgUmVuZGVyRGV0YWls
c01hcmtlciB7RElWfSBhdCAoMCw2KSBzaXplIDEweDEwOiBkb3duCiAgICAgICAgICAgUmVuZGVy
VGV4dCB7I3RleHR9IGF0ICgxNiwwKSBzaXplIDUweDIxCiAgICAgICAgICAgICB0ZXh0IHJ1biBh
dCAoMTYsMCkgd2lkdGggNTA6ICJEZXRhaWxzIgotY2FyZXQ6IHBvc2l0aW9uIDAgb2YgY2hpbGQg
MCB7RElWfSBvZiB7I3NoYWRvdy1yb290fSBvZiBjaGlsZCAwIHtTVU1NQVJZfSBvZiB7I3NoYWRv
dy1yb290fSBvZiBjaGlsZCAxIHtERVRBSUxTfSBvZiBib2R5CitjYXJldDogcG9zaXRpb24gMCBv
ZiBjaGlsZCAwIHtESVZ9IG9mIHsjc2hhZG93LXJvb3R9IG9mIGNoaWxkIDAge1NVTU1BUll9IG9m
IGNoaWxkIDAge0RJVn0gb2YgeyNzaGFkb3ctcm9vdH0gb2YgY2hpbGQgMSB7REVUQUlMU30gb2Yg
Ym9keQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvZmFzdC9odG1sL2RldGFp
bHMtcmVtb3ZlLXN1bW1hcnktNC1hbmQtY2xpY2stZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vcXQvZmFzdC9odG1sL2RldGFpbHMtcmVtb3ZlLXN1bW1hcnktNC1hbmQtY2xpY2st
ZXhwZWN0ZWQudHh0CmluZGV4IGE0Njk1MmJmNzkwYjNiZGRlNTIyNzQ0MGJmNWM0NGMxYTAwYjg5
ZjkuLmVhNDRiYWQzNGJhMTRjMTMxY2I4ZjMyYTI1MjY2YWEwMWQ4NDBjMTQgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL3BsYXRmb3JtL3F0L2Zhc3QvaHRtbC9kZXRhaWxzLXJlbW92ZS1zdW1tYXJ5
LTQtYW5kLWNsaWNrLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9m
YXN0L2h0bWwvZGV0YWlscy1yZW1vdmUtc3VtbWFyeS00LWFuZC1jbGljay1leHBlY3RlZC50eHQK
QEAgLTgsNCArOCw0IEBAIGxheWVyIGF0ICgwLDApIHNpemUgODAweDYwMAogICAgICAgICAgIFJl
bmRlckRldGFpbHNNYXJrZXIge0RJVn0gYXQgKDAsNikgc2l6ZSAxMHgxMDogcmlnaHQKICAgICAg
ICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDE2LDApIHNpemUgNTB4MjEKICAgICAgICAgICAg
IHRleHQgcnVuIGF0ICgxNiwwKSB3aWR0aCA1MDogIkRldGFpbHMiCi1jYXJldDogcG9zaXRpb24g
MCBvZiBjaGlsZCAwIHtESVZ9IG9mIHsjc2hhZG93LXJvb3R9IG9mIGNoaWxkIDAge1NVTU1BUll9
IG9mIHsjc2hhZG93LXJvb3R9IG9mIGNoaWxkIDEge0RFVEFJTFN9IG9mIGJvZHkKK2NhcmV0OiBw
b3NpdGlvbiAwIG9mIGNoaWxkIDAge0RJVn0gb2YgeyNzaGFkb3ctcm9vdH0gb2YgY2hpbGQgMCB7
U1VNTUFSWX0gb2YgY2hpbGQgMCB7RElWfSBvZiB7I3NoYWRvdy1yb290fSBvZiBjaGlsZCAxIHtE
RVRBSUxTfSBvZiBib2R5Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>125268</attachid>
            <date>2012-02-02 23:13:44 -0800</date>
            <delta_ts>2012-02-03 00:31:13 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-75930-20120203161343.patch</filename>
            <type>text/plain</type>
            <size>18606</size>
            <attacher name="Shinya Kawanaka">shinyak</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA2NjIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTk5ZmRlZWJmODU1MTkx
MTFhN2YxNDZhNTI1ZGIzMjQzYzM3ZWZhOS4uMTFhNjZlZWYzOGM5ZWI0MGNjNzFiMDk1ZjgwMDk3
YTBmNzFhY2RiMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM0IEBACisyMDEyLTAyLTAyICBTaGlu
eWEgS2F3YW5ha2EgIDxzaGlueWFrQGdvb2dsZS5jb20+CisKKyAgICAgICBSZWltcGxlbWVudCBE
RVRBSUxTIGFuZCBTVU1NQVJZIHVzaW5nIHNlbGVjdG9yIHF1ZXJ5LgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzU5MzAKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBERVRBSUxTIGlzIHJlaW1wbGVtZW50ZWQg
dXNpbmcgY29udGVudCBlbGVtZW50IGFuZCBpdHMgZmFsbGJhY2sgZmVhdHVyZS4KKyAgICAgICAg
V2UgZG9uJ3QgbmVlZCB0byByZWNyZWF0ZSBET00gZXZlbiBpZiBTVU1NQVJZIGlzIHJlbW92ZWQg
ZnJvbSBvciBhZGRlZCBpbnRvIERFVEFJTFMuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCBzaG91
bGQgYmUgY292ZXJlZCBieSBleGlzdGluZyB0ZXN0cy4KKworICAgICAgICAqIGh0bWwvSFRNTERl
dGFpbHNFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRldGFpbHNTdW1tYXJ5RWxlbWVu
dDo6ZmFsbGJhY2tTdW1tYXJ5KToKKyAgICAgICAgICBUYWtlcyBmYWxsYmFjayBlbGVtZW50IG9m
IGNvbnRlbnQgc3VtbWFyeS4KKyAgICAgICAgKERldGFpbHNTdW1tYXJ5RWxlbWVudCk6CisgICAg
ICAgIChXZWJDb3JlOjpEZXRhaWxzU3VtbWFyeUVsZW1lbnQ6OmNyZWF0ZSk6CisgICAgICAgICAg
Q3JlYXRlcyBhIGZhbGxiYWNrIGVsZW1lbnQgYWxzby4KKyAgICAgICAgKFdlYkNvcmUpOgorICAg
ICAgICAoV2ViQ29yZTo6SFRNTERldGFpbHNFbGVtZW50OjpjcmVhdGUpOgorICAgICAgICAoV2Vi
Q29yZTo6SFRNTERldGFpbHNFbGVtZW50OjpIVE1MRGV0YWlsc0VsZW1lbnQpOgorICAgICAgICAo
V2ViQ29yZTo6SFRNTERldGFpbHNFbGVtZW50OjpjcmVhdGVTaGFkb3dTdWJ0cmVlKToKKyAgICAg
ICAgKFdlYkNvcmU6OkhUTUxEZXRhaWxzRWxlbWVudDo6ZmluZE1haW5TdW1tYXJ5KToKKyAgICAg
ICAgKFdlYkNvcmU6OkhUTUxEZXRhaWxzRWxlbWVudDo6cGFyc2VNYXBwZWRBdHRyaWJ1dGUpOgor
ICAgICAgICAoV2ViQ29yZTo6SFRNTERldGFpbHNFbGVtZW50OjpjaGlsZFNob3VsZENyZWF0ZVJl
bmRlcmVyKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxEZXRhaWxzRWxlbWVudDo6dG9nZ2xlT3Bl
bik6CisgICAgICAgICogaHRtbC9IVE1MRGV0YWlsc0VsZW1lbnQuaDoKKyAgICAgICAgKEhUTUxE
ZXRhaWxzRWxlbWVudCk6CisgICAgICAgICogaHRtbC9IVE1MU3VtbWFyeUVsZW1lbnQuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6SFRNTFN1bW1hcnlFbGVtZW50Ojppc01haW5TdW1tYXJ5KToKKwog
MjAxMi0wMi0wMiAgUmF5bW9uZCBUb3kgIDxydG95QGdvb2dsZS5jb20+CiAKICAgICAgICAgQ2hl
Y2sgcGFyYW1ldGVycyB0byBiaXF1YWQgZmlsdGVycwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MRGV0YWlsc0VsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
RGV0YWlsc0VsZW1lbnQuY3BwCmluZGV4IGRkZWM3Mzg3NjY0ODAwM2UyZjkxYzc3MGQxYTgxNTIw
MjMyYjdmNTYuLjBiMzRiMmE5ZTdlYTRmNTNjZmY2NDRjOTE5ZjM5MjU0MGJkNzRjOTQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTERldGFpbHNFbGVtZW50LmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxEZXRhaWxzRWxlbWVudC5jcHAKQEAgLTYyLDYgKzYyLDEy
IEBAIGNsYXNzIERldGFpbHNTdW1tYXJ5RWxlbWVudCA6IHB1YmxpYyBIVE1MQ29udGVudEVsZW1l
bnQgewogcHVibGljOgogICAgIHN0YXRpYyBQYXNzUmVmUHRyPERldGFpbHNTdW1tYXJ5RWxlbWVu
dD4gY3JlYXRlKERvY3VtZW50Kik7CiAKKyAgICBFbGVtZW50KiBmYWxsYmFja1N1bW1hcnkoKQor
ICAgIHsKKyAgICAgICAgQVNTRVJUKGZpcnN0Q2hpbGQoKSAmJiBmaXJzdENoaWxkKCktPmhhc1Rh
Z05hbWUoc3VtbWFyeVRhZykpOworICAgICAgICByZXR1cm4gdG9FbGVtZW50KGZpcnN0Q2hpbGQo
KSk7CisgICAgfQorCiBwcml2YXRlOgogICAgIERldGFpbHNTdW1tYXJ5RWxlbWVudChEb2N1bWVu
dCogZG9jdW1lbnQpCiAgICAgICAgIDogSFRNTENvbnRlbnRFbGVtZW50KEhUTUxOYW1lczo6ZGl2
VGFnLCBkb2N1bWVudCkKQEAgLTcyLDIwICs3OCwyNCBAQCBwcml2YXRlOgogCiBQYXNzUmVmUHRy
PERldGFpbHNTdW1tYXJ5RWxlbWVudD4gRGV0YWlsc1N1bW1hcnlFbGVtZW50OjpjcmVhdGUoRG9j
dW1lbnQqIGRvY3VtZW50KQogewotICAgIHJldHVybiBhZG9wdFJlZihuZXcgRGV0YWlsc1N1bW1h
cnlFbGVtZW50KGRvY3VtZW50KSk7CisgICAgUmVmUHRyPEhUTUxTdW1tYXJ5RWxlbWVudD4gZGVm
YXVsdFN1bW1hcnkgPSBIVE1MU3VtbWFyeUVsZW1lbnQ6OmNyZWF0ZShzdW1tYXJ5VGFnLCBkb2N1
bWVudCk7CisgICAgZGVmYXVsdFN1bW1hcnktPmFwcGVuZENoaWxkKFRleHQ6OmNyZWF0ZShkb2N1
bWVudCwgZGVmYXVsdERldGFpbHNTdW1tYXJ5VGV4dCgpKSwgQVNTRVJUX05PX0VYQ0VQVElPTik7
CisKKyAgICBEZXRhaWxzU3VtbWFyeUVsZW1lbnQqIGVsZW0gPSBuZXcgRGV0YWlsc1N1bW1hcnlF
bGVtZW50KGRvY3VtZW50KTsKKyAgICBlbGVtLT5hcHBlbmRDaGlsZChkZWZhdWx0U3VtbWFyeSk7
CisgICAgcmV0dXJuIGFkb3B0UmVmKGVsZW0pOwogfQogCiBQYXNzUmVmUHRyPEhUTUxEZXRhaWxz
RWxlbWVudD4gSFRNTERldGFpbHNFbGVtZW50OjpjcmVhdGUoY29uc3QgUXVhbGlmaWVkTmFtZSYg
dGFnTmFtZSwgRG9jdW1lbnQqIGRvY3VtZW50KQogewotICAgIFJlZlB0cjxIVE1MRGV0YWlsc0Vs
ZW1lbnQ+IHJlc3VsdCA9IGFkb3B0UmVmKG5ldyBIVE1MRGV0YWlsc0VsZW1lbnQodGFnTmFtZSwg
ZG9jdW1lbnQpKTsKLSAgICByZXN1bHQtPmVuc3VyZVNoYWRvd1N1YnRyZWVPZihGb3J3YXJkaW5n
U3VtbWFyeSk7Ci0gICAgcmV0dXJuIHJlc3VsdDsKKyAgICBSZWZQdHI8SFRNTERldGFpbHNFbGVt
ZW50PiBlbGVtID0gYWRvcHRSZWYobmV3IEhUTUxEZXRhaWxzRWxlbWVudCh0YWdOYW1lLCBkb2N1
bWVudCkpOworICAgIGVsZW0tPmNyZWF0ZVNoYWRvd1N1YnRyZWUoKTsKKworICAgIHJldHVybiBl
bGVtLnJlbGVhc2UoKTsKIH0KIAogSFRNTERldGFpbHNFbGVtZW50OjpIVE1MRGV0YWlsc0VsZW1l
bnQoY29uc3QgUXVhbGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9jdW1lbnQqIGRvY3VtZW50KQogICAg
IDogSFRNTEVsZW1lbnQodGFnTmFtZSwgZG9jdW1lbnQpCi0gICAgLCBtX3N1bW1hcnlUeXBlKE5v
U3VtbWFyeSkKLSAgICAsIG1fbWFpblN1bW1hcnkoMCkKICAgICAsIG1faXNPcGVuKGZhbHNlKQog
ewogICAgIEFTU0VSVChoYXNUYWdOYW1lKGRldGFpbHNUYWcpKTsKQEAgLTk2LDgzICsxMDYsMjEg
QEAgUmVuZGVyT2JqZWN0KiBIVE1MRGV0YWlsc0VsZW1lbnQ6OmNyZWF0ZVJlbmRlcmVyKFJlbmRl
ckFyZW5hKiBhcmVuYSwgUmVuZGVyU3R5bGUKICAgICByZXR1cm4gbmV3IChhcmVuYSkgUmVuZGVy
RGV0YWlscyh0aGlzKTsKIH0KIAotdm9pZCBIVE1MRGV0YWlsc0VsZW1lbnQ6OmVuc3VyZVNoYWRv
d1N1YnRyZWVPZihTdW1tYXJ5VHlwZSB0eXBlKQotewotICAgIGlmICh0eXBlID09IG1fc3VtbWFy
eVR5cGUpCi0gICAgICAgIHJldHVybjsKLSAgICBtX3N1bW1hcnlUeXBlID0gdHlwZTsKLSAgICBy
ZW1vdmVTaGFkb3dSb290KCk7Ci0gICAgY3JlYXRlU2hhZG93U3VidHJlZSgpOwotfQotCi1zdGF0
aWMgTm9kZSogZmluZFN1bW1hcnlGb3IoUGFzc1JlZlB0cjxDb250YWluZXJOb2RlPiBjb250YWlu
ZXIpCi17Ci0gICAgZm9yIChOb2RlKiBjaGlsZCA9IGNvbnRhaW5lci0+Zmlyc3RDaGlsZCgpOyBj
aGlsZDsgY2hpbGQgPSBjaGlsZC0+bmV4dFNpYmxpbmcoKSkgewotICAgICAgICBpZiAoY2hpbGQt
Pmhhc1RhZ05hbWUoc3VtbWFyeVRhZykpCi0gICAgICAgICAgICByZXR1cm4gY2hpbGQ7Ci0gICAg
fQotCi0gICAgcmV0dXJuIDA7Ci19Ci0KLU5vZGUqIEhUTUxEZXRhaWxzRWxlbWVudDo6ZW5zdXJl
TWFpblN1bW1hcnkoKQotewotICAgIE5vZGUqIHN1bW1hcnkgPSBmaW5kU3VtbWFyeUZvcih0aGlz
KTsKLSAgICBpZiAoc3VtbWFyeSkgewotICAgICAgICBlbnN1cmVTaGFkb3dTdWJ0cmVlT2YoRm9y
d2FyZGluZ1N1bW1hcnkpOwotICAgICAgICByZXR1cm4gc3VtbWFyeTsKLSAgICB9Ci0KLSAgICBl
bnN1cmVTaGFkb3dTdWJ0cmVlT2YoRGVmYXVsdFN1bW1hcnkpOwotICAgIHJldHVybiBmaW5kU3Vt
bWFyeUZvcihzaGFkb3dSb290KCkpOwotfQotCi12b2lkIEhUTUxEZXRhaWxzRWxlbWVudDo6cmVm
cmVzaE1haW5TdW1tYXJ5KFJlZnJlc2hSZW5kZXJlciByZWZyZXNoUmVuZGVyZXIpCi17Ci0gICAg
UmVmUHRyPE5vZGU+IG9sZFN1bW1hcnkgPSBtX21haW5TdW1tYXJ5OwotICAgIG1fbWFpblN1bW1h
cnkgPSBlbnN1cmVNYWluU3VtbWFyeSgpOwotCi0gICAgaWYgKG9sZFN1bW1hcnkgPT0gbV9tYWlu
U3VtbWFyeSB8fCAhYXR0YWNoZWQoKSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgaWYgKG9sZFN1
bW1hcnkgJiYgb2xkU3VtbWFyeS0+cGFyZW50Tm9kZUZvclJlbmRlcmluZ0FuZFN0eWxlKCkpCi0g
ICAgICAgIG9sZFN1bW1hcnktPnJlYXR0YWNoKCk7Ci0gICAgaWYgKG1fbWFpblN1bW1hcnkgJiYg
cmVmcmVzaFJlbmRlcmVyID09IFJlZnJlc2hSZW5kZXJlckFsbG93ZWQpCi0gICAgICAgIG1fbWFp
blN1bW1hcnktPnJlYXR0YWNoKCk7Ci19Ci0KIHZvaWQgSFRNTERldGFpbHNFbGVtZW50OjpjcmVh
dGVTaGFkb3dTdWJ0cmVlKCkKIHsKICAgICBBU1NFUlQoIXNoYWRvd1Jvb3QoKSk7Ci0gICAgRXhj
ZXB0aW9uQ29kZSBlYyA9IDA7Ci0gICAgaWYgKG1fc3VtbWFyeVR5cGUgPT0gRGVmYXVsdFN1bW1h
cnkpIHsKLSAgICAgICAgUmVmUHRyPEhUTUxTdW1tYXJ5RWxlbWVudD4gZGVmYXVsdFN1bW1hcnkg
PSBIVE1MU3VtbWFyeUVsZW1lbnQ6OmNyZWF0ZShzdW1tYXJ5VGFnLCBkb2N1bWVudCgpKTsKLSAg
ICAgICAgZGVmYXVsdFN1bW1hcnktPmFwcGVuZENoaWxkKFRleHQ6OmNyZWF0ZShkb2N1bWVudCgp
LCBkZWZhdWx0RGV0YWlsc1N1bW1hcnlUZXh0KCkpLCBlYyk7Ci0gICAgICAgIGVuc3VyZVNoYWRv
d1Jvb3QoKS0+YXBwZW5kQ2hpbGQoZGVmYXVsdFN1bW1hcnksIGVjLCB0cnVlKTsKLSAgICAgICAg
ZW5zdXJlU2hhZG93Um9vdCgpLT5hcHBlbmRDaGlsZChEZXRhaWxzQ29udGVudEVsZW1lbnQ6OmNy
ZWF0ZShkb2N1bWVudCgpKSwgZWMsIHRydWUpOwotICAgIH0gZWxzZSB7Ci0gICAgICAgIEFTU0VS
VChtX3N1bW1hcnlUeXBlID09IEZvcndhcmRpbmdTdW1tYXJ5KTsKLSAgICAgICAgZW5zdXJlU2hh
ZG93Um9vdCgpLT5hcHBlbmRDaGlsZChEZXRhaWxzU3VtbWFyeUVsZW1lbnQ6OmNyZWF0ZShkb2N1
bWVudCgpKSwgZWMsIHRydWUpOwotICAgICAgICBlbnN1cmVTaGFkb3dSb290KCktPmFwcGVuZENo
aWxkKERldGFpbHNDb250ZW50RWxlbWVudDo6Y3JlYXRlKGRvY3VtZW50KCkpLCBlYywgdHJ1ZSk7
Ci0gICAgfQorICAgIGVuc3VyZVNoYWRvd1Jvb3QoKS0+YXBwZW5kQ2hpbGQoRGV0YWlsc1N1bW1h
cnlFbGVtZW50OjpjcmVhdGUoZG9jdW1lbnQoKSksIEFTU0VSVF9OT19FWENFUFRJT04sIHRydWUp
OworICAgIGVuc3VyZVNoYWRvd1Jvb3QoKS0+YXBwZW5kQ2hpbGQoRGV0YWlsc0NvbnRlbnRFbGVt
ZW50OjpjcmVhdGUoZG9jdW1lbnQoKSksIEFTU0VSVF9OT19FWENFUFRJT04sIHRydWUpOwogfQog
Ci0KLXZvaWQgSFRNTERldGFpbHNFbGVtZW50OjpjaGlsZHJlbkNoYW5nZWQoYm9vbCBjaGFuZ2Vk
QnlQYXJzZXIsIE5vZGUqIGJlZm9yZUNoYW5nZSwgTm9kZSogYWZ0ZXJDaGFuZ2UsIGludCBjaGls
ZENvdW50RGVsdGEpCitFbGVtZW50KiBIVE1MRGV0YWlsc0VsZW1lbnQ6OmZpbmRNYWluU3VtbWFy
eSgpIGNvbnN0CiB7Ci0gICAgSFRNTEVsZW1lbnQ6OmNoaWxkcmVuQ2hhbmdlZChjaGFuZ2VkQnlQ
YXJzZXIsIGJlZm9yZUNoYW5nZSwgYWZ0ZXJDaGFuZ2UsIGNoaWxkQ291bnREZWx0YSk7Ci0gICAg
Ly8gSWYgY2hpbGRDb3VudERlbHRhIGlzIGxlc3MgdGhlbiB6ZXJvIGFuZCB0aGUgbWFpbiBzdW1t
YXJ5IGhhcyBjaGFuZ2VkIGl0IG11c3QgYmUgYmVjYXVzZSBwcmV2aW91cyBtYWluCi0gICAgLy8g
c3VtbWFyeSB3YXMgcmVtb3ZlZC4gVGhlIG5ldyBtYWluIHN1bW1hcnkgd2FzIHRoZW4gaW5zaWRl
IHRoZSB1bnJldmVhbGVkIGNvbnRlbnQgYW5kIG5lZWRzIHRvIGJlCi0gICAgLy8gcmVhdHRhY2hl
ZCB0byBjcmVhdGUgaXRzIHJlbmRlcmVyLiBJZiBjaGlsZENvdW50RGVsdGEgaXMgbm90IGxlc3Mg
dGhlbiB6ZXJvIHRoZW4gYSBuZXcgPHN1bW1hcnk+IGVsZW1lbnQKLSAgICAvLyBoYXMgYmVlbiBh
ZGRlZCBhbmQgaXQgd2lsbCBiZSBhdHRhY2hlZCB3aXRob3V0IG91ciBoZWxwLgotICAgIGlmICgh
Y2hhbmdlZEJ5UGFyc2VyKQotICAgICAgICByZWZyZXNoTWFpblN1bW1hcnkoY2hpbGRDb3VudERl
bHRhIDwgMCA/IFJlZnJlc2hSZW5kZXJlckFsbG93ZWQgOiBSZWZyZXNoUmVuZGVyZXJTdXByZXNz
ZWQpOwotfQorICAgIGZvciAoTm9kZSogY2hpbGQgPSBmaXJzdENoaWxkKCk7IGNoaWxkOyBjaGls
ZCA9IGNoaWxkLT5uZXh0U2libGluZygpKSB7CisgICAgICAgIGlmIChjaGlsZC0+aGFzVGFnTmFt
ZShzdW1tYXJ5VGFnKSkKKyAgICAgICAgICAgIHJldHVybiB0b0VsZW1lbnQoY2hpbGQpOworICAg
IH0KIAotdm9pZCBIVE1MRGV0YWlsc0VsZW1lbnQ6OmZpbmlzaFBhcnNpbmdDaGlsZHJlbigpCi17
Ci0gICAgSFRNTEVsZW1lbnQ6OmZpbmlzaFBhcnNpbmdDaGlsZHJlbigpOwotICAgIHJlZnJlc2hN
YWluU3VtbWFyeShSZWZyZXNoUmVuZGVyZXJBbGxvd2VkKTsKKyAgICByZXR1cm4gc3RhdGljX2Nh
c3Q8RGV0YWlsc1N1bW1hcnlFbGVtZW50Kj4oc2hhZG93Um9vdCgpLT5maXJzdENoaWxkKCkpLT5m
YWxsYmFja1N1bW1hcnkoKTsKIH0KIAogdm9pZCBIVE1MRGV0YWlsc0VsZW1lbnQ6OnBhcnNlTWFw
cGVkQXR0cmlidXRlKEF0dHJpYnV0ZSogYXR0cikKQEAgLTE4OCw3ICsxMzYsMTMgQEAgdm9pZCBI
VE1MRGV0YWlsc0VsZW1lbnQ6OnBhcnNlTWFwcGVkQXR0cmlidXRlKEF0dHJpYnV0ZSogYXR0cikK
IAogYm9vbCBIVE1MRGV0YWlsc0VsZW1lbnQ6OmNoaWxkU2hvdWxkQ3JlYXRlUmVuZGVyZXIoTm9k
ZSogY2hpbGQpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1faXNPcGVuIHx8IGNoaWxkID09IG1fbWFp
blN1bW1hcnk7CisgICAgaWYgKG1faXNPcGVuKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAg
IGlmICghY2hpbGQtPmhhc1RhZ05hbWUoc3VtbWFyeVRhZykpCisgICAgICAgIHJldHVybiBmYWxz
ZTsKKworICAgIHJldHVybiBjaGlsZCA9PSBmaW5kTWFpblN1bW1hcnkoKTsKIH0KIAogdm9pZCBI
VE1MRGV0YWlsc0VsZW1lbnQ6OnRvZ2dsZU9wZW4oKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MRGV0YWlsc0VsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTERl
dGFpbHNFbGVtZW50LmgKaW5kZXggMGQ4ZGRhNzEwMzNjYjM5ZjBlMDc0MzRmNDdkYmNhYjc5NGI1
YmVjMy4uNjhmYzdjMTM2NDMxMmM1ZjAxOTA1ZTRmZGRmZWUxN2UwZmFhNGRiMCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRGV0YWlsc0VsZW1lbnQuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxEZXRhaWxzRWxlbWVudC5oCkBAIC0yOCwzNyArMjgsMjAgQEAgbmFt
ZXNwYWNlIFdlYkNvcmUgewogY2xhc3MgSFRNTERldGFpbHNFbGVtZW50IDogcHVibGljIEhUTUxF
bGVtZW50IHsKIHB1YmxpYzoKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxIVE1MRGV0YWlsc0VsZW1l
bnQ+IGNyZWF0ZShjb25zdCBRdWFsaWZpZWROYW1lJiB0YWdOYW1lLCBEb2N1bWVudCogZG9jdW1l
bnQpOwotICAgIE5vZGUqIG1haW5TdW1tYXJ5KCkgY29uc3QgeyByZXR1cm4gbV9tYWluU3VtbWFy
eTsgfQogICAgIHZvaWQgdG9nZ2xlT3BlbigpOwogCi1wcml2YXRlOgotICAgIGVudW0gUmVmcmVz
aFJlbmRlcmVyIHsKLSAgICAgICAgUmVmcmVzaFJlbmRlcmVyQWxsb3dlZCwKLSAgICAgICAgUmVm
cmVzaFJlbmRlcmVyU3VwcmVzc2VkLAotICAgIH07Ci0KLSAgICBlbnVtIFN1bW1hcnlUeXBlIHsK
LSAgICAgICAgTm9TdW1tYXJ5LAotICAgICAgICBEZWZhdWx0U3VtbWFyeSwKLSAgICAgICAgRm9y
d2FyZGluZ1N1bW1hcnkKLSAgICB9OworICAgIEVsZW1lbnQqIGZpbmRNYWluU3VtbWFyeSgpIGNv
bnN0OwogCitwcml2YXRlOgogICAgIEhUTUxEZXRhaWxzRWxlbWVudChjb25zdCBRdWFsaWZpZWRO
YW1lJiwgRG9jdW1lbnQqKTsKIAogICAgIHZpcnR1YWwgUmVuZGVyT2JqZWN0KiBjcmVhdGVSZW5k
ZXJlcihSZW5kZXJBcmVuYSosIFJlbmRlclN0eWxlKik7Ci0gICAgdmlydHVhbCB2b2lkIGNoaWxk
cmVuQ2hhbmdlZChib29sIGNoYW5nZWRCeVBhcnNlciwgTm9kZSogYmVmb3JlQ2hhbmdlLCBOb2Rl
KiBhZnRlckNoYW5nZSwgaW50IGNoaWxkQ291bnREZWx0YSk7Ci0gICAgdmlydHVhbCB2b2lkIGZp
bmlzaFBhcnNpbmdDaGlsZHJlbigpOwogCiAgICAgdm9pZCBwYXJzZU1hcHBlZEF0dHJpYnV0ZShB
dHRyaWJ1dGUqKTsKICAgICBib29sIGNoaWxkU2hvdWxkQ3JlYXRlUmVuZGVyZXIoTm9kZSopIGNv
bnN0OwogCi0gICAgTm9kZSogZW5zdXJlTWFpblN1bW1hcnkoKTsKLSAgICB2b2lkIHJlZnJlc2hN
YWluU3VtbWFyeShSZWZyZXNoUmVuZGVyZXIpOwotICAgIHZvaWQgZW5zdXJlU2hhZG93U3VidHJl
ZU9mKFN1bW1hcnlUeXBlKTsKICAgICB2b2lkIGNyZWF0ZVNoYWRvd1N1YnRyZWUoKTsKIAotICAg
IFN1bW1hcnlUeXBlIG1fc3VtbWFyeVR5cGU7Ci0gICAgTm9kZSogbV9tYWluU3VtbWFyeTsKICAg
ICBib29sIG1faXNPcGVuOwogCiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MU3VtbWFyeUVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MU3VtbWFyeUVs
ZW1lbnQuY3BwCmluZGV4IDk5MjU2MjdmZTVjZTNhYTRhOTliMjMzMDE1MjgwYzBjNzQzNjg1MTQu
Ljc1OGQ4ODliZTQ1YWQ2NTEwMDZiYmY3Nzg0OTZmYTk5ZTdkNzFmMGMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTFN1bW1hcnlFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxTdW1tYXJ5RWxlbWVudC5jcHAKQEAgLTg5LDggKzg5LDkgQEAgSFRNTERl
dGFpbHNFbGVtZW50KiBIVE1MU3VtbWFyeUVsZW1lbnQ6OmRldGFpbHNFbGVtZW50KCkgY29uc3QK
IGJvb2wgSFRNTFN1bW1hcnlFbGVtZW50Ojppc01haW5TdW1tYXJ5KCkgY29uc3QKIHsKICAgICBp
ZiAoSFRNTERldGFpbHNFbGVtZW50KiBkZXRhaWxzID0gZGV0YWlsc0VsZW1lbnQoKSkKLSAgICAg
ICAgcmV0dXJuIGRldGFpbHMtPm1haW5TdW1tYXJ5KCkgPT0gdGhpczsKLSAgICByZXR1cm4gMDsK
KyAgICAgICAgcmV0dXJuIGRldGFpbHMtPmZpbmRNYWluU3VtbWFyeSgpID09IHRoaXM7CisKKyAg
ICByZXR1cm4gZmFsc2U7CiB9CiAKIHN0YXRpYyBib29sIGlzQ2xpY2thYmxlQ29udHJvbChOb2Rl
KiBub2RlKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCmluZGV4IGJlNzM1NzMwM2JmMzUxYThiZGFhMDMyNzA1YjYzYmJjNjM4ZGQzYzAu
LmRkMDViNjJhMjYxZjBmYmVlZTI4MWVjZmVhNjQ4OTQ2ZWExMDg2OGUgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwyMSBAQAorMjAxMi0wMi0wMiAgU2hpbnlhIEthd2FuYWthICA8c2hpbnlha0Bnb29nbGUuY29t
PgorCisgICAgICAgIFJlaW1wbGVtZW50IERFVEFJTFMgYW5kIFNVTU1BUlkgdXNpbmcgc2VsZWN0
b3IgcXVlcnkuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD03NTkzMAorCisgICAgICAgIFNpbmNlIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBERVRBSUxTIHNo
YWRvdyB0cmVlLCB0aGUgcGF0aCBvZiBjYXJldCBwb3NpdGlvbiBpcyBhbHNvIGNoYW5nZWQuCisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwbGF0Zm9y
bS9jaHJvbWl1bS13aW4vZmFzdC9odG1sL2RldGFpbHMtcmVtb3ZlLXN1bW1hcnktMS1hbmQtY2xp
Y2stZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtLXdpbi9mYXN0L2h0
bWwvZGV0YWlscy1yZW1vdmUtc3VtbWFyeS00LWFuZC1jbGljay1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogcGxhdGZvcm0vZ3RrL2Zhc3QvaHRtbC9kZXRhaWxzLXJlbW92ZS1zdW1tYXJ5LTEtYW5k
LWNsaWNrLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvZmFzdC9odG1sL2Rl
dGFpbHMtcmVtb3ZlLXN1bW1hcnktNC1hbmQtY2xpY2stZXhwZWN0ZWQudHh0OgorICAgICAgICAq
IHBsYXRmb3JtL21hYy9mYXN0L2h0bWwvZGV0YWlscy1yZW1vdmUtc3VtbWFyeS0xLWFuZC1jbGlj
ay1leHBlY3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vbWFjL2Zhc3QvaHRtbC9kZXRhaWxz
LXJlbW92ZS1zdW1tYXJ5LTQtYW5kLWNsaWNrLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwbGF0
Zm9ybS9xdC9mYXN0L2h0bWwvZGV0YWlscy1yZW1vdmUtc3VtbWFyeS0xLWFuZC1jbGljay1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vcXQvZmFzdC9odG1sL2RldGFpbHMtcmVtb3Zl
LXN1bW1hcnktNC1hbmQtY2xpY2stZXhwZWN0ZWQudHh0OgorCiAyMDEyLTAyLTAyICBSYXltb25k
IFRveSAgPHJ0b3lAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIENoZWNrIHBhcmFtZXRlcnMgdG8g
YmlxdWFkIGZpbHRlcnMKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVt
LXdpbi9mYXN0L2h0bWwvZGV0YWlscy1yZW1vdmUtc3VtbWFyeS0xLWFuZC1jbGljay1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS13aW4vZmFzdC9odG1sL2RldGFp
bHMtcmVtb3ZlLXN1bW1hcnktMS1hbmQtY2xpY2stZXhwZWN0ZWQudHh0CmluZGV4IGY4ZWU0NDEx
YzI4NDJhNDE5ZjJjNjZjNWNiZTcyMWYyMmYxMzMzZTAuLjUzMmI4NTQ4NGRkNDg2N2EyZDc4NDQy
YjAxNGIyNzJmNTg4YWRlZTggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9t
aXVtLXdpbi9mYXN0L2h0bWwvZGV0YWlscy1yZW1vdmUtc3VtbWFyeS0xLWFuZC1jbGljay1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0td2luL2Zhc3QvaHRt
bC9kZXRhaWxzLXJlbW92ZS1zdW1tYXJ5LTEtYW5kLWNsaWNrLWV4cGVjdGVkLnR4dApAQCAtOCw0
ICs4LDQgQEAgbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCiAgICAgICAgICAgUmVuZGVyRGV0
YWlsc01hcmtlciB7RElWfSBhdCAoMCw1KSBzaXplIDEweDEwOiBkb3duCiAgICAgICAgICAgUmVu
ZGVyVGV4dCB7I3RleHR9IGF0ICgxNiwwKSBzaXplIDQxeDE5CiAgICAgICAgICAgICB0ZXh0IHJ1
biBhdCAoMTYsMCkgd2lkdGggNDE6ICJEZXRhaWxzIgotY2FyZXQ6IHBvc2l0aW9uIDAgb2YgY2hp
bGQgMCB7RElWfSBvZiB7I3NoYWRvdy1yb290fSBvZiBjaGlsZCAwIHtTVU1NQVJZfSBvZiB7I3No
YWRvdy1yb290fSBvZiBjaGlsZCAxIHtERVRBSUxTfSBvZiBib2R5CitjYXJldDogcG9zaXRpb24g
MCBvZiBjaGlsZCAwIHtESVZ9IG9mIHsjc2hhZG93LXJvb3R9IG9mIGNoaWxkIDAge1NVTU1BUll9
IG9mIGNoaWxkIDAge0RJVn0gb2YgeyNzaGFkb3ctcm9vdH0gb2YgY2hpbGQgMSB7REVUQUlMU30g
b2YgYm9keQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0td2luL2Zh
c3QvaHRtbC9kZXRhaWxzLXJlbW92ZS1zdW1tYXJ5LTQtYW5kLWNsaWNrLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtLXdpbi9mYXN0L2h0bWwvZGV0YWlscy1yZW1v
dmUtc3VtbWFyeS00LWFuZC1jbGljay1leHBlY3RlZC50eHQKaW5kZXggZTQyYTdiZGRlYTFhNzRl
Nzg3YzY5NDRiMTc4Y2ViOGYwZWJmYjNhMC4uNDgyMjhkZjFhMThiYWE0ZTE0OWQ5NjE0MjQ5OTlj
NDdlMjI3OTIwOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0td2lu
L2Zhc3QvaHRtbC9kZXRhaWxzLXJlbW92ZS1zdW1tYXJ5LTQtYW5kLWNsaWNrLWV4cGVjdGVkLnR4
dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS13aW4vZmFzdC9odG1sL2RldGFp
bHMtcmVtb3ZlLXN1bW1hcnktNC1hbmQtY2xpY2stZXhwZWN0ZWQudHh0CkBAIC04LDQgKzgsNCBA
QCBsYXllciBhdCAoMCwwKSBzaXplIDgwMHg2MDAKICAgICAgICAgICBSZW5kZXJEZXRhaWxzTWFy
a2VyIHtESVZ9IGF0ICgwLDUpIHNpemUgMTB4MTA6IHJpZ2h0CiAgICAgICAgICAgUmVuZGVyVGV4
dCB7I3RleHR9IGF0ICgxNiwwKSBzaXplIDQxeDE5CiAgICAgICAgICAgICB0ZXh0IHJ1biBhdCAo
MTYsMCkgd2lkdGggNDE6ICJEZXRhaWxzIgotY2FyZXQ6IHBvc2l0aW9uIDAgb2YgY2hpbGQgMCB7
RElWfSBvZiB7I3NoYWRvdy1yb290fSBvZiBjaGlsZCAwIHtTVU1NQVJZfSBvZiB7I3NoYWRvdy1y
b290fSBvZiBjaGlsZCAxIHtERVRBSUxTfSBvZiBib2R5CitjYXJldDogcG9zaXRpb24gMCBvZiBj
aGlsZCAwIHtESVZ9IG9mIHsjc2hhZG93LXJvb3R9IG9mIGNoaWxkIDAge1NVTU1BUll9IG9mIGNo
aWxkIDAge0RJVn0gb2YgeyNzaGFkb3ctcm9vdH0gb2YgY2hpbGQgMSB7REVUQUlMU30gb2YgYm9k
eQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2Zhc3QvaHRtbC9kZXRhaWxz
LXJlbW92ZS1zdW1tYXJ5LTEtYW5kLWNsaWNrLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3Bs
YXRmb3JtL2d0ay9mYXN0L2h0bWwvZGV0YWlscy1yZW1vdmUtc3VtbWFyeS0xLWFuZC1jbGljay1l
eHBlY3RlZC50eHQKaW5kZXggNDI5MDNmNzhlMjZhODI4NzQxNWViYWE5YzE5ZTkxMDQ1Yjk0YjFl
MC4uN2U3MThiZDUwZTQ5YjY4YzFiNWQ3NzlkMGFhNDE1YzYzNTIwZjczNyAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2Zhc3QvaHRtbC9kZXRhaWxzLXJlbW92ZS1zdW1tYXJ5
LTEtYW5kLWNsaWNrLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsv
ZmFzdC9odG1sL2RldGFpbHMtcmVtb3ZlLXN1bW1hcnktMS1hbmQtY2xpY2stZXhwZWN0ZWQudHh0
CkBAIC04LDQgKzgsNCBAQCBsYXllciBhdCAoMCwwKSBzaXplIDgwMHg2MDAKICAgICAgICAgICBS
ZW5kZXJEZXRhaWxzTWFya2VyIHtESVZ9IGF0ICgwLDQpIHNpemUgMTB4MTA6IGRvd24KICAgICAg
ICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDE2LDApIHNpemUgNDZ4MTcKICAgICAgICAgICAg
IHRleHQgcnVuIGF0ICgxNiwwKSB3aWR0aCA0NjogIkRldGFpbHMiCi1jYXJldDogcG9zaXRpb24g
MCBvZiBjaGlsZCAwIHtESVZ9IG9mIHsjc2hhZG93LXJvb3R9IG9mIGNoaWxkIDAge1NVTU1BUll9
IG9mIHsjc2hhZG93LXJvb3R9IG9mIGNoaWxkIDEge0RFVEFJTFN9IG9mIGJvZHkKK2NhcmV0OiBw
b3NpdGlvbiAwIG9mIGNoaWxkIDAge0RJVn0gb2YgeyNzaGFkb3ctcm9vdH0gb2YgY2hpbGQgMCB7
U1VNTUFSWX0gb2YgY2hpbGQgMCB7RElWfSBvZiB7I3NoYWRvdy1yb290fSBvZiBjaGlsZCAxIHtE
RVRBSUxTfSBvZiBib2R5CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvZmFz
dC9odG1sL2RldGFpbHMtcmVtb3ZlLXN1bW1hcnktNC1hbmQtY2xpY2stZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2Zhc3QvaHRtbC9kZXRhaWxzLXJlbW92ZS1zdW1tYXJ5
LTQtYW5kLWNsaWNrLWV4cGVjdGVkLnR4dAppbmRleCBkYmY2MTNkNTJjNTVlNTYwMTQxZjNiOGZj
NGExMDhiZWRhNTcyZWQ1Li40ZGI4ODdlZDVjMzdlMDllM2U4NGE4NTJjZTQ3MjUxNzExZGRkOGM5
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvZmFzdC9odG1sL2RldGFpbHMt
cmVtb3ZlLXN1bW1hcnktNC1hbmQtY2xpY2stZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L3BsYXRmb3JtL2d0ay9mYXN0L2h0bWwvZGV0YWlscy1yZW1vdmUtc3VtbWFyeS00LWFuZC1jbGlj
ay1leHBlY3RlZC50eHQKQEAgLTgsNCArOCw0IEBAIGxheWVyIGF0ICgwLDApIHNpemUgODAweDYw
MAogICAgICAgICAgIFJlbmRlckRldGFpbHNNYXJrZXIge0RJVn0gYXQgKDAsNCkgc2l6ZSAxMHgx
MDogcmlnaHQKICAgICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDE2LDApIHNpemUgNDZ4
MTcKICAgICAgICAgICAgIHRleHQgcnVuIGF0ICgxNiwwKSB3aWR0aCA0NjogIkRldGFpbHMiCi1j
YXJldDogcG9zaXRpb24gMCBvZiBjaGlsZCAwIHtESVZ9IG9mIHsjc2hhZG93LXJvb3R9IG9mIGNo
aWxkIDAge1NVTU1BUll9IG9mIHsjc2hhZG93LXJvb3R9IG9mIGNoaWxkIDEge0RFVEFJTFN9IG9m
IGJvZHkKK2NhcmV0OiBwb3NpdGlvbiAwIG9mIGNoaWxkIDAge0RJVn0gb2YgeyNzaGFkb3ctcm9v
dH0gb2YgY2hpbGQgMCB7U1VNTUFSWX0gb2YgY2hpbGQgMCB7RElWfSBvZiB7I3NoYWRvdy1yb290
fSBvZiBjaGlsZCAxIHtERVRBSUxTfSBvZiBib2R5CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9tYWMvZmFzdC9odG1sL2RldGFpbHMtcmVtb3ZlLXN1bW1hcnktMS1hbmQtY2xpY2st
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvaHRtbC9kZXRhaWxz
LXJlbW92ZS1zdW1tYXJ5LTEtYW5kLWNsaWNrLWV4cGVjdGVkLnR4dAppbmRleCBhMzViOTFkOGQ5
ZWQyZjRkNWVkYmVjMTIzNThmYzkyZTRkZWE4NGI4Li5hZDA2ODhkODZmZmNlMjdhMmU4NTJjMmVk
N2U3OTdlYjk1ODQzOTljIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZmFz
dC9odG1sL2RldGFpbHMtcmVtb3ZlLXN1bW1hcnktMS1hbmQtY2xpY2stZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L2h0bWwvZGV0YWlscy1yZW1vdmUtc3Vt
bWFyeS0xLWFuZC1jbGljay1leHBlY3RlZC50eHQKQEAgLTgsNCArOCw0IEBAIGxheWVyIGF0ICgw
LDApIHNpemUgODAweDYwMAogICAgICAgICAgIFJlbmRlckRldGFpbHNNYXJrZXIge0RJVn0gYXQg
KDAsNCkgc2l6ZSAxMHgxMDogZG93bgogICAgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAo
MTYsMCkgc2l6ZSA0NHgxOAogICAgICAgICAgICAgdGV4dCBydW4gYXQgKDE2LDApIHdpZHRoIDQ0
OiAiRGV0YWlscyIKLWNhcmV0OiBwb3NpdGlvbiAwIG9mIGNoaWxkIDAge0RJVn0gb2YgeyNzaGFk
b3ctcm9vdH0gb2YgY2hpbGQgMCB7U1VNTUFSWX0gb2YgeyNzaGFkb3ctcm9vdH0gb2YgY2hpbGQg
MSB7REVUQUlMU30gb2YgYm9keQorY2FyZXQ6IHBvc2l0aW9uIDAgb2YgY2hpbGQgMCB7RElWfSBv
ZiB7I3NoYWRvdy1yb290fSBvZiBjaGlsZCAwIHtTVU1NQVJZfSBvZiBjaGlsZCAwIHtESVZ9IG9m
IHsjc2hhZG93LXJvb3R9IG9mIGNoaWxkIDEge0RFVEFJTFN9IG9mIGJvZHkKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L2h0bWwvZGV0YWlscy1yZW1vdmUtc3VtbWFy
eS00LWFuZC1jbGljay1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZmFz
dC9odG1sL2RldGFpbHMtcmVtb3ZlLXN1bW1hcnktNC1hbmQtY2xpY2stZXhwZWN0ZWQudHh0Cmlu
ZGV4IDJmYWJkZmFhYjc4OTcwMzdkYTg5Y2I5ZjY0NTIwMTY1NTA5NmJiMTUuLjBlZjdhZGJmYjFj
YWM3MTYxNTJiY2U1NWQyMmFhY2ZiYWNjNjljODQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy9mYXN0L2h0bWwvZGV0YWlscy1yZW1vdmUtc3VtbWFyeS00LWFuZC1jbGljay1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvaHRtbC9kZXRh
aWxzLXJlbW92ZS1zdW1tYXJ5LTQtYW5kLWNsaWNrLWV4cGVjdGVkLnR4dApAQCAtOCw0ICs4LDQg
QEAgbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCiAgICAgICAgICAgUmVuZGVyRGV0YWlsc01h
cmtlciB7RElWfSBhdCAoMCw0KSBzaXplIDEweDEwOiByaWdodAogICAgICAgICAgIFJlbmRlclRl
eHQgeyN0ZXh0fSBhdCAoMTYsMCkgc2l6ZSA0NHgxOAogICAgICAgICAgICAgdGV4dCBydW4gYXQg
KDE2LDApIHdpZHRoIDQ0OiAiRGV0YWlscyIKLWNhcmV0OiBwb3NpdGlvbiAwIG9mIGNoaWxkIDAg
e0RJVn0gb2YgeyNzaGFkb3ctcm9vdH0gb2YgY2hpbGQgMCB7U1VNTUFSWX0gb2YgeyNzaGFkb3ct
cm9vdH0gb2YgY2hpbGQgMSB7REVUQUlMU30gb2YgYm9keQorY2FyZXQ6IHBvc2l0aW9uIDAgb2Yg
Y2hpbGQgMCB7RElWfSBvZiB7I3NoYWRvdy1yb290fSBvZiBjaGlsZCAwIHtTVU1NQVJZfSBvZiBj
aGlsZCAwIHtESVZ9IG9mIHsjc2hhZG93LXJvb3R9IG9mIGNoaWxkIDEge0RFVEFJTFN9IG9mIGJv
ZHkKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3F0L2Zhc3QvaHRtbC9kZXRhaWxz
LXJlbW92ZS1zdW1tYXJ5LTEtYW5kLWNsaWNrLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3Bs
YXRmb3JtL3F0L2Zhc3QvaHRtbC9kZXRhaWxzLXJlbW92ZS1zdW1tYXJ5LTEtYW5kLWNsaWNrLWV4
cGVjdGVkLnR4dAppbmRleCAyYzE0ZGUxMWU5ZWIxNjA0NDc4NDM2Y2NjMDkxNDA5ZDk5NWRiNmE3
Li4xMzY0NmNkMjY4ODg1NDMzNzk1NjgyMDA0NzI5YjM0NTk3N2I5MWFmIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9mYXN0L2h0bWwvZGV0YWlscy1yZW1vdmUtc3VtbWFyeS0x
LWFuZC1jbGljay1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvZmFz
dC9odG1sL2RldGFpbHMtcmVtb3ZlLXN1bW1hcnktMS1hbmQtY2xpY2stZXhwZWN0ZWQudHh0CkBA
IC04LDQgKzgsNCBAQCBsYXllciBhdCAoMCwwKSBzaXplIDgwMHg2MDAKICAgICAgICAgICBSZW5k
ZXJEZXRhaWxzTWFya2VyIHtESVZ9IGF0ICgwLDYpIHNpemUgMTB4MTA6IGRvd24KICAgICAgICAg
ICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDE2LDApIHNpemUgNTB4MjEKICAgICAgICAgICAgIHRl
eHQgcnVuIGF0ICgxNiwwKSB3aWR0aCA1MDogIkRldGFpbHMiCi1jYXJldDogcG9zaXRpb24gMCBv
ZiBjaGlsZCAwIHtESVZ9IG9mIHsjc2hhZG93LXJvb3R9IG9mIGNoaWxkIDAge1NVTU1BUll9IG9m
IHsjc2hhZG93LXJvb3R9IG9mIGNoaWxkIDEge0RFVEFJTFN9IG9mIGJvZHkKK2NhcmV0OiBwb3Np
dGlvbiAwIG9mIGNoaWxkIDAge0RJVn0gb2YgeyNzaGFkb3ctcm9vdH0gb2YgY2hpbGQgMCB7U1VN
TUFSWX0gb2YgY2hpbGQgMCB7RElWfSBvZiB7I3NoYWRvdy1yb290fSBvZiBjaGlsZCAxIHtERVRB
SUxTfSBvZiBib2R5CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9mYXN0L2h0
bWwvZGV0YWlscy1yZW1vdmUtc3VtbWFyeS00LWFuZC1jbGljay1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS9xdC9mYXN0L2h0bWwvZGV0YWlscy1yZW1vdmUtc3VtbWFyeS00LWFu
ZC1jbGljay1leHBlY3RlZC50eHQKaW5kZXggYTQ2OTUyYmY3OTBiM2JkZGU1MjI3NDQwYmY1YzQ0
YzFhMDBiODlmOS4uZWE0NGJhZDM0YmExNGMxMzFjYjhmMzJhMjUyNjZhYTAxZDg0MGMxNCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvZmFzdC9odG1sL2RldGFpbHMtcmVtb3Zl
LXN1bW1hcnktNC1hbmQtY2xpY2stZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BsYXRm
b3JtL3F0L2Zhc3QvaHRtbC9kZXRhaWxzLXJlbW92ZS1zdW1tYXJ5LTQtYW5kLWNsaWNrLWV4cGVj
dGVkLnR4dApAQCAtOCw0ICs4LDQgQEAgbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCiAgICAg
ICAgICAgUmVuZGVyRGV0YWlsc01hcmtlciB7RElWfSBhdCAoMCw2KSBzaXplIDEweDEwOiByaWdo
dAogICAgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMTYsMCkgc2l6ZSA1MHgyMQogICAg
ICAgICAgICAgdGV4dCBydW4gYXQgKDE2LDApIHdpZHRoIDUwOiAiRGV0YWlscyIKLWNhcmV0OiBw
b3NpdGlvbiAwIG9mIGNoaWxkIDAge0RJVn0gb2YgeyNzaGFkb3ctcm9vdH0gb2YgY2hpbGQgMCB7
U1VNTUFSWX0gb2YgeyNzaGFkb3ctcm9vdH0gb2YgY2hpbGQgMSB7REVUQUlMU30gb2YgYm9keQor
Y2FyZXQ6IHBvc2l0aW9uIDAgb2YgY2hpbGQgMCB7RElWfSBvZiB7I3NoYWRvdy1yb290fSBvZiBj
aGlsZCAwIHtTVU1NQVJZfSBvZiBjaGlsZCAwIHtESVZ9IG9mIHsjc2hhZG93LXJvb3R9IG9mIGNo
aWxkIDEge0RFVEFJTFN9IG9mIGJvZHkK
</data>

          </attachment>
      

    </bug>

</bugzilla>