<?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>100720</bug_id>
          
          <creation_ts>2012-10-29 19:09:04 -0700</creation_ts>
          <short_desc>Build WebKit as C++11 on Mac</short_desc>
          <delta_ts>2012-10-30 11:07:27 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Anders Carlsson">andersca</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          <cc>benjamin</cc>
    
    <cc>dbates</cc>
    
    <cc>dino</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>753936</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2012-10-29 19:09:04 -0700</bug_when>
    <thetext>Build WebKit as C++11 on Mac</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>753937</commentid>
    <comment_count>1</comment_count>
      <attachid>171359</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2012-10-29 19:18:12 -0700</bug_when>
    <thetext>Created attachment 171359
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>753988</commentid>
    <comment_count>2</comment_count>
      <attachid>171359</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2012-10-29 22:21:06 -0700</bug_when>
    <thetext>Comment on attachment 171359
Patch

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

&gt; Source/WTF/ChangeLog:8
&gt; +        Additional information of the change such as approach, rationale. Please add per-function descriptions below (OOPS!).

Please remove these sentences.

&gt; Source/WTF/wtf/text/AtomicString.cpp:270
&gt; +    UCharBuffer buffer = { s, static_cast&lt;unsigned&gt;(length) };

Would it make sense to change the static type of length from int to unsigned in this function since, as its name implies, it&apos;s a length (so it should be non-negative)? Then we don&apos;t need to explicitly cast it to unsigned here.

&gt; Source/WebCore/platform/network/cf/FormDataStreamCFNet.cpp:467
&gt; +    FormContext formContext = { formData.release(), static_cast&lt;unsigned long long&gt;(length) };

Would it make sense to change the static type of length from long long to unsigned long long in this function since, as its name implies, it&apos;s a length (so it should be non-negative)? Then we don&apos;t need to explicitly cast it to unsigned long long here.

&gt; Tools/ChangeLog:8
&gt; +        Additional information of the change such as approach, rationale. Please add per-function descriptions below (OOPS!).

Please remove these sentences.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>754498</commentid>
    <comment_count>3</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2012-10-30 10:39:28 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 171359 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=171359&amp;action=review
&gt; 
&gt; &gt; Source/WTF/wtf/text/AtomicString.cpp:270
&gt; &gt; +    UCharBuffer buffer = { s, static_cast&lt;unsigned&gt;(length) };
&gt; 
&gt; Would it make sense to change the static type of length from int to unsigned in this function since, as its name implies, it&apos;s a length (so it should be non-negative)? Then we don&apos;t need to explicitly cast it to unsigned here.

Yes, it makes sense to do so.

&gt; 
&gt; &gt; Source/WebCore/platform/network/cf/FormDataStreamCFNet.cpp:467
&gt; &gt; +    FormContext formContext = { formData.release(), static_cast&lt;unsigned long long&gt;(length) };
&gt; 
&gt; Would it make sense to change the static type of length from long long to unsigned long long in this function since, as its name implies, it&apos;s a length (so it should be non-negative)? Then we don&apos;t need to explicitly cast it to unsigned long long here.

Ditto.

Thanks for reviewing!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>754517</commentid>
    <comment_count>4</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2012-10-30 11:07:27 -0700</bug_when>
    <thetext>Committed r132925: &lt;http://trac.webkit.org/changeset/132925&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>171359</attachid>
            <date>2012-10-29 19:18:12 -0700</date>
            <delta_ts>2012-10-29 22:21:06 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-100720-20121029191638.patch</filename>
            <type>text/plain</type>
            <size>36897</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTMyODYzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBm
NDQ4YjRmN2I4MmZkZTFhN2U1YzhiZGVhZTBjNjUwMzExMTEzYTgyLi4wMWNhZTQ5ZDU5ODc4Y2I1
NGRlMmJmNTZmODBlM2EwNTlmODM5YTkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyOCBAQAorMjAxMi0xMC0yOSAgQW5kZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUu
Y29tPgorCisgICAgICAgIEJ1aWxkIFdlYktpdCBhcyBDKysxMSBvbiBNYWMKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMDcyMAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFz
ZS54Y2NvbmZpZzoKKyAgICAgICAgQWRkIENMQU5HX0NYWF9MQU5HVUFHRV9TVEFOREFSRD1nbnUr
KzB4LgorCisgICAgICAgICogYnl0ZWNvbXBpbGVyL0J5dGVjb2RlR2VuZXJhdG9yLmNwcDoKKyAg
ICAgICAgKEpTQzo6Qnl0ZWNvZGVHZW5lcmF0b3I6OmdlbmVyYXRlKToKKyAgICAgICAgKEpTQzo6
Qnl0ZWNvZGVHZW5lcmF0b3I6OnB1c2hGaW5hbGx5Q29udGV4dCk6CisgICAgICAgIChKU0M6OkJ5
dGVjb2RlR2VuZXJhdG9yOjpiZWdpblN3aXRjaCk6CisgICAgICAgICogbGxpbnQvTExJbnRPZmZz
ZXRzRXh0cmFjdG9yLmNwcDoKKyAgICAgICAgKiBydW50aW1lL0lkZW50aWZpZXIuY3BwOgorICAg
ICAgICAoSlNDOjpJZGVudGlmaWVyOjphZGQ4KToKKyAgICAgICAgKiBydW50aW1lL0lkZW50aWZp
ZXIuaDoKKyAgICAgICAgKEpTQzo6SWRlbnRpZmllcjo6YWRkKToKKyAgICAgICAgKiBydW50aW1l
L0pTT05PYmplY3QuY3BwOgorICAgICAgICAoSlNDOjphcHBlbmRTdHJpbmdUb1N0cmluZ0J1aWxk
ZXIpOgorICAgICAgICAqIHJ1bnRpbWUvU3RyaW5nUHJvdG90eXBlLmNwcDoKKyAgICAgICAgKEpT
Qzo6cmVwbGFjZVVzaW5nU3RyaW5nU2VhcmNoKToKKyAgICAgICAgQWRkIHN0YXRpY19jYXN0cyB0
byBwcmV2ZW50IGltcGxpY2l0IHR5cGUgY29udmVyc2lvbnMgaW4gbm9uLWNvbnN0YW50IGluaXRp
YWxpemVyIGxpc3RzLgorCiAyMDEyLTEwLTI4ICBNYXJrIFJvd2UgIDxtcm93ZUBhcHBsZS5jb20+
CiAKICAgICAgICAgU2ltcGxpZnkgWGNvZGUgY29uZmlndXJhdGlvbiBzZXR0aW5ncyB0aGF0IHVz
ZWQgdG8gdmFyeSBiZXR3ZWVuIE9TIHZlcnNpb25zLgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvQ2hhbmdlTG9nIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQ2hhbmdlTG9n
CmluZGV4IDIyYzMwNzExMTliZDJlZjlkZmIzYWI1NTI0OWQ1MDgwZTJlZGE5ODguLjYyNTkyMDMz
YjQ5YmUxOTIyZDgxZGIwZTNlNmUwMTU3YmU0NjMxYjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxMi0xMC0yOSAgQW5kZXJzIENhcmxzc29uICA8YW5k
ZXJzY2FAYXBwbGUuY29tPgorCisgICAgICAgIEJ1aWxkIFdlYktpdCBhcyBDKysxMSBvbiBNYWMK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMDcyMAor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogQ29uZmln
dXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoKKyAgICAgICAgQWRkIENMQU5HX0NYWF9MQU5HVUFHRV9T
VEFOREFSRD1nbnUrKzB4LgorCiAyMDEyLTEwLTI4ICBNYXJrIFJvd2UgIDxtcm93ZUBhcHBsZS5j
b20+CiAKICAgICAgICAgU2ltcGxpZnkgWGNvZGUgY29uZmlndXJhdGlvbiBzZXR0aW5ncyB0aGF0
IHVzZWQgdG8gdmFyeSBiZXR3ZWVuIE9TIHZlcnNpb25zLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dU
Ri9DaGFuZ2VMb2cgYi9Tb3VyY2UvV1RGL0NoYW5nZUxvZwppbmRleCBhODEyN2I5ZjEzMTI0NWU1
MzAwMGQ2YmZlYTE2ZGEzZGU2YTFiZjIyLi4wODk1MGQwNTlmNjRmM2NkYjQ5YzdkYjgxZThlNGU0
ZWE4Y2Q4NjUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL0NoYW5nZUxvZworKysgYi9Tb3VyY2Uv
V1RGL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDEyLTEwLTI5ICBBbmRlcnMgQ2FybHNz
b24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAgQnVpbGQgV2ViS2l0IGFzIEMrKzEx
IG9uIE1hYworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTAwNzIwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
QWRkaXRpb25hbCBpbmZvcm1hdGlvbiBvZiB0aGUgY2hhbmdlIHN1Y2ggYXMgYXBwcm9hY2gsIHJh
dGlvbmFsZS4gUGxlYXNlIGFkZCBwZXItZnVuY3Rpb24gZGVzY3JpcHRpb25zIGJlbG93IChPT1BT
ISkuCisKKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorICAgICAgICAq
IHd0Zi90ZXh0L0F0b21pY1N0cmluZy5jcHA6CisgICAgICAgIChXVEY6OkF0b21pY1N0cmluZzo6
YWRkKToKKyAgICAgICAgKiB3dGYvdW5pY29kZS9VVEY4LmNwcDoKKyAgICAgICAgKFVuaWNvZGUp
OgorCiAyMDEyLTEwLTI4ICBNYXJrIFJvd2UgIDxtcm93ZUBhcHBsZS5jb20+CiAKICAgICAgICAg
U2ltcGxpZnkgWGNvZGUgY29uZmlndXJhdGlvbiBzZXR0aW5ncyB0aGF0IHVzZWQgdG8gdmFyeSBi
ZXR3ZWVuIE9TIHZlcnNpb25zLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9n
IGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDljNjRkMzRiNzc0Zjk0NWE3NDA4NmRj
NDZhZDYyOWFlY2M5Yjg3MDUuLjJkZDU2Nzg5ZDAwMzhhYzI3OTE3MTQ1MDg5ZDgwYTdlMTAxNGY3
ZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsNSArMSw0OSBAQAogMjAxMi0xMC0yOSAgQW5kZXJzIENhcmxz
c29uICA8YW5kZXJzY2FAYXBwbGUuY29tPgogCisgICAgICAgIEJ1aWxkIFdlYktpdCBhcyBDKysx
MSBvbiBNYWMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTEwMDcyMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
ICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoKKyAgICAgICAgQWRkIENMQU5HX0NYWF9M
QU5HVUFHRV9TVEFOREFSRD1nbnUrKzB4LgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mv
Rm9udFBsYXRmb3JtRGF0YS5oOgorICAgICAgICAoV2ViQ29yZTo6Rm9udFBsYXRmb3JtRGF0YTo6
aGFzaCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2cvR3JhcGhpY3NDb250ZXh0Q0cu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0OjpkcmF3TGluZSk6CisgICAg
ICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQ6OnN0cm9rZUFyYyk6CisgICAgICAgICogcGxh
dGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQcm9ncmFtSW5mby5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpDdXN0b21GaWx0ZXJQcm9ncmFtSW5mbzo6aGFzaCk6CisgICAgICAgIChX
ZWJDb3JlOjpQcm90ZWN0aW9uU3BhY2VIYXNoOjpoYXNoKToKKyAgICAgICAgKiBwbGF0Zm9ybS9u
ZXR3b3JrL2NmL0Zvcm1EYXRhU3RyZWFtQ0ZOZXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6c2V0
SFRUUEJvZHkpOgorICAgICAgICBBZGQgc3RhdGljX2Nhc3RzIHRvIHByZXZlbnQgaW1wbGljaXQg
dHlwZSBjb252ZXJzaW9ucyBpbiBub24tY29uc3RhbnQgaW5pdGlhbGl6ZXIgbGlzdHMuCisgICAg
ICAgIAorICAgICAgICAqIHBsYXRmb3JtL21hYy9DbGlwYm9hcmRNYWMubW06CisgICAgICAgIChX
ZWJDb3JlOjpDbGlwYm9hcmRNYWM6OmNyZWF0ZURyYWdJbWFnZSk6CisgICAgICAgICogcGxhdGZv
cm0vbWFjL0N1cnNvck1hYy5tbToKKyAgICAgICAgKFdlYkNvcmU6OmNyZWF0ZU5hbWVkQ3Vyc29y
KToKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvU2Nyb2xsVmlld01hYy5tbToKKyAgICAgICAgKFdl
YkNvcmU6OlNjcm9sbFZpZXc6OnBsYXRmb3JtU2V0Q29udGVudHNTaXplKToKKyAgICAgICAgVXNl
IE5TTWFrZVBvaW50IHRvIHByZXZlbnQgaW1wbGljaXQgdHlwZSBjb252ZXJzaW9ucyBpbiBub24t
Y29uc3RhbnQgaW5pdGlhbGl6ZXIgbGlzdHMuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvQ29v
a2llSmFyLm1tOgorICAgICAgICAoV2ViQ29yZTo6Y29va2llc0VuYWJsZWQpOgorICAgICAgICAq
IHBsYXRmb3JtL25ldHdvcmsvbWFjL1Jlc291cmNlSGFuZGxlTWFjLm1tOgorICAgICAgICAoV2Vi
Q29yZTo6c2hvdWxkUmVsYXhUaGlyZFBhcnR5Q29va2llUG9saWN5KToKKyAgICAgICAgQWRkIGV4
cGxpY2l0IGNhc3RzIHRvIE5TSFRUUENvb2tpZUFjY2VwdFBvbGljeS4KKworICAgICAgICAqIHBs
YXRmb3JtL21hYy9XZWJDb3JlTlNVUkxFeHRyYXMuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMv
V2ViQ29yZU5TVVJMRXh0cmFzLm1tOgorICAgICAgICAoV2ViQ29yZTo6VVJMQnlUcnVuY2F0aW5n
T25lQ2hhcmFjdGVyQmVmb3JlQ29tcG9uZW50KToKKyAgICAgICAgKFdlYkNvcmU6OmRhdGFGb3JV
UkxDb21wb25lbnRUeXBlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL1Byb3RlY3Rpb25T
cGFjZUhhc2guaDoKKyAgICAgICAgVXNlIENGSW5kZXggaW5zdGVhZCBvZiBDRlVSTENvbXBvbmVu
dFR5cGUsIHRoZSBlbnVtIGNhbiBiZSBtYW5nbGVkIGRpZmZlcmVudGx5IGluIHNvbWUgY2FzZXMs
IGFuZCB0aGVzZQorICAgICAgICBmdW5jdGlvbnMgYXJlIGV4cG9ydGVkIGZyb20gV2ViQ29yZS4K
KworMjAxMi0xMC0yOSAgQW5kZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUuY29tPgorCiAg
ICAgICAgIEZpeCBXaW5kb3dzIGJ1aWxkLgogCiAgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9j
Zi9SZXNvdXJjZVJlcXVlc3RDRk5ldC5jcHA6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21h
Yy9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKaW5kZXggYzIyZmM3NzY1
MTFlYzFmZGMwM2UxODkxNzBlYzNjNDMwN2ExYWU0My4uMDFlMGNjMWNhZDRjODc5OTYwNGIwOThk
MTlmZWUyMzBmMjVhOWQ5MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9n
CisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDEy
LTEwLTI5ICBBbmRlcnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAg
QnVpbGQgV2ViS2l0IGFzIEMrKzExIG9uIE1hYworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAwNzIwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOgorICAg
ICAgICBBZGQgQ0xBTkdfQ1hYX0xBTkdVQUdFX1NUQU5EQVJEPWdudSsrMHguCisKKyAgICAgICAg
KiBIaXN0b3J5L1dlYkJhY2tGb3J3YXJkTGlzdC5tbToKKyAgICAgICAgKC1bV2ViQmFja0Zvcndh
cmRMaXN0IGRlc2NyaXB0aW9uXSk6CisgICAgICAgICogSGlzdG9yeS9XZWJIaXN0b3J5SXRlbS5t
bToKKyAgICAgICAgKC1bV2ViSGlzdG9yeUl0ZW0gZGVzY3JpcHRpb25dKToKKyAgICAgICAgQWRk
IHN0YXRpY19jYXN0cyB0byBwcmV2ZW50IGltcGxpY2l0IHR5cGUgY29udmVyc2lvbnMgaW4gbm9u
LWNvbnN0YW50IGluaXRpYWxpemVyIGxpc3RzLgorCiAyMDEyLTEwLTI4ICBNYXJrIFJvd2UgIDxt
cm93ZUBhcHBsZS5jb20+CiAKICAgICAgICAgU2ltcGxpZnkgWGNvZGUgY29uZmlndXJhdGlvbiBz
ZXR0aW5ncyB0aGF0IHVzZWQgdG8gdmFyeSBiZXR3ZWVuIE9TIHZlcnNpb25zLgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCmlu
ZGV4IDRlZjQ0MWVkY2NjMTdlYjcxNjhmNzJkOTEwZWNjZmYwZjNmZjQ4NjYuLjcyZTM0YjFlMTMw
MGU0NjdmZTM5NjRmNTUwMWYzZDg4ZTQxNTY4ODggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQy
L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOSBA
QAorMjAxMi0xMC0yOSAgQW5kZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUuY29tPgorCisg
ICAgICAgIEJ1aWxkIFdlYktpdCBhcyBDKysxMSBvbiBNYWMKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMDcyMAorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZp
ZzoKKyAgICAgICAgQWRkIENMQU5HX0NYWF9MQU5HVUFHRV9TVEFOREFSRD1nbnUrKzB4LgorCisg
ICAgICAgICogVUlQcm9jZXNzL21hYy9XZWJDb29raWVNYW5hZ2VyUHJveHlNYWMubW06CisgICAg
ICAgIChXZWJLaXQ6OldlYkNvb2tpZU1hbmFnZXJQcm94eTo6cGVyc2lzdEhUVFBDb29raWVBY2Nl
cHRQb2xpY3kpOgorICAgICAgICAqIFdlYlByb2Nlc3MvQ29va2llcy9tYWMvV2ViQ29va2llTWFu
YWdlck1hYy5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViQ29va2llTWFuYWdlcjo6cGxhdGZvcm1T
ZXRIVFRQQ29va2llQWNjZXB0UG9saWN5KToKKyAgICAgICAgQWRkIGV4cGxpY2l0IGNhc3RzIHRv
IE5TSFRUUENvb2tpZUFjY2VwdFBvbGljeS4KKwogMjAxMi0xMC0yOSAgSHVhbmcgRG9uZ3N1bmcg
IDxsdXh0ZWxsYUBjb21wYW55MTAwLm5ldD4KIAogICAgICAgICBDb29yZGluYXRlZCBHcmFwaGlj
czogRGVsZXRlIGNhY2hlZCBTaGFyZWFibGVTdXJmYWNlcyB3aGVuIHB1cmdpbmcgYmFja2luZ1N0
b3Jlcy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9Db25maWd1cmF0aW9ucy9C
YXNlLnhjY29uZmlnIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NvbmZpZ3VyYXRpb25zL0Jhc2Uu
eGNjb25maWcKaW5kZXggYWU3OTZkYjE2NDZlMGM3NDY4NzRjNzA4NjE3OTMzNTM3Njg5NWQ0Mi4u
MmRlODU5N2Q3MzI2ZmI4NDYyMDhlZTU1NTg5YjI1YWNhMjNhOTRjOCAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL0NvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWcKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL0NvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWcKQEAgLTIxLDYg
KzIxLDcgQEAKIC8vIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQogLy8gT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAKK0NMQU5HX0NYWF9M
QU5HVUFHRV9TVEFOREFSRCA9IGdudSsrMHg7CiBDTEFOR19DWFhfTElCUkFSWSA9IGxpYmMrKzsK
IENMQU5HX1dBUk5fQ1hYMFhfRVhURU5TSU9OUyA9IE5POwogREVCVUdfSU5GT1JNQVRJT05fRk9S
TUFUID0gZHdhcmYtd2l0aC1kc3ltOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2J5dGVjb21waWxlci9CeXRlY29kZUdlbmVyYXRvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvYnl0ZWNvbXBpbGVyL0J5dGVjb2RlR2VuZXJhdG9yLmNwcAppbmRleCAyMjgyNzczMjhjZDIx
MmI4MWE5Mjc4M2U2MGEyMzA5ZWE2MDJkYmViLi4wYjBhZjBjMWNlMWI3ZWViNmM3ZGRiZjFlYzdm
YjA0MDc5NzZiYjZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvbXBp
bGVyL0J5dGVjb2RlR2VuZXJhdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0
ZWNvbXBpbGVyL0J5dGVjb2RlR2VuZXJhdG9yLmNwcApAQCAtMTcwLDggKzE3MCw4IEBAIEpTT2Jq
ZWN0KiBCeXRlY29kZUdlbmVyYXRvcjo6Z2VuZXJhdGUoKQogICAgICAgICBUcnlSYW5nZSYgcmFu
Z2UgPSBtX3RyeVJhbmdlc1tpXTsKICAgICAgICAgQVNTRVJUKHJhbmdlLnRyeURhdGEtPnRhcmdl
dFNjb3BlRGVwdGggIT0gVUlOVF9NQVgpOwogICAgICAgICBIYW5kbGVySW5mbyBpbmZvID0gewot
ICAgICAgICAgICAgcmFuZ2Uuc3RhcnQtPmJpbmQoMCwgMCksIHJhbmdlLmVuZC0+YmluZCgwLCAw
KSwKLSAgICAgICAgICAgIHJhbmdlLnRyeURhdGEtPnRhcmdldC0+YmluZCgwLCAwKSwgcmFuZ2Uu
dHJ5RGF0YS0+dGFyZ2V0U2NvcGVEZXB0aAorICAgICAgICAgICAgc3RhdGljX2Nhc3Q8dWludDMy
X3Q+KHJhbmdlLnN0YXJ0LT5iaW5kKDAsIDApKSwgc3RhdGljX2Nhc3Q8dWludDMyX3Q+KHJhbmdl
LmVuZC0+YmluZCgwLCAwKSksCisgICAgICAgICAgICBzdGF0aWNfY2FzdDx1aW50MzJfdD4ocmFu
Z2UudHJ5RGF0YS0+dGFyZ2V0LT5iaW5kKDAsIDApKSwgc3RhdGljX2Nhc3Q8dWludDMyX3Q+KHJh
bmdlLnRyeURhdGEtPnRhcmdldFNjb3BlRGVwdGgpCiAjaWYgRU5BQkxFKEpJVCkKICAgICAgICAg
ICAgICwKICNpZiBFTkFCTEUoTExJTlQpCkBAIC0yMTMxLDExICsyMTMxLDExIEBAIHZvaWQgQnl0
ZWNvZGVHZW5lcmF0b3I6OnB1c2hGaW5hbGx5Q29udGV4dChTdGF0ZW1lbnROb2RlKiBmaW5hbGx5
QmxvY2spCiAgICAgc2NvcGUuaXNGaW5hbGx5QmxvY2sgPSB0cnVlOwogICAgIEZpbmFsbHlDb250
ZXh0IGNvbnRleHQgPSB7CiAgICAgICAgIGZpbmFsbHlCbG9jaywKLSAgICAgICAgbV9zY29wZUNv
bnRleHRTdGFjay5zaXplKCksCi0gICAgICAgIG1fc3dpdGNoQ29udGV4dFN0YWNrLnNpemUoKSwK
LSAgICAgICAgbV9mb3JJbkNvbnRleHRTdGFjay5zaXplKCksCi0gICAgICAgIG1fdHJ5Q29udGV4
dFN0YWNrLnNpemUoKSwKLSAgICAgICAgbV9sYWJlbFNjb3Blcy5zaXplKCksCisgICAgICAgIHN0
YXRpY19jYXN0PHVuc2lnbmVkPihtX3Njb3BlQ29udGV4dFN0YWNrLnNpemUoKSksCisgICAgICAg
IHN0YXRpY19jYXN0PHVuc2lnbmVkPihtX3N3aXRjaENvbnRleHRTdGFjay5zaXplKCkpLAorICAg
ICAgICBzdGF0aWNfY2FzdDx1bnNpZ25lZD4obV9mb3JJbkNvbnRleHRTdGFjay5zaXplKCkpLAor
ICAgICAgICBzdGF0aWNfY2FzdDx1bnNpZ25lZD4obV90cnlDb250ZXh0U3RhY2suc2l6ZSgpKSwK
KyAgICAgICAgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KG1fbGFiZWxTY29wZXMuc2l6ZSgpKSwKICAg
ICAgICAgbV9maW5hbGx5RGVwdGgsCiAgICAgICAgIG1fZHluYW1pY1Njb3BlRGVwdGgKICAgICB9
OwpAQCAtMjQ2Miw3ICsyNDYyLDcgQEAgdm9pZCBCeXRlY29kZUdlbmVyYXRvcjo6ZW1pdFB1c2hO
YW1lU2NvcGUoY29uc3QgSWRlbnRpZmllciYgcHJvcGVydHksIFJlZ2lzdGVySUQKIAogdm9pZCBC
eXRlY29kZUdlbmVyYXRvcjo6YmVnaW5Td2l0Y2goUmVnaXN0ZXJJRCogc2NydXRpbmVlUmVnaXN0
ZXIsIFN3aXRjaEluZm86OlN3aXRjaFR5cGUgdHlwZSkKIHsKLSAgICBTd2l0Y2hJbmZvIGluZm8g
PSB7IGluc3RydWN0aW9ucygpLnNpemUoKSwgdHlwZSB9OworICAgIFN3aXRjaEluZm8gaW5mbyA9
IHsgc3RhdGljX2Nhc3Q8dWludDMyX3Q+KGluc3RydWN0aW9ucygpLnNpemUoKSksIHR5cGUgfTsK
ICAgICBzd2l0Y2ggKHR5cGUpIHsKICAgICAgICAgY2FzZSBTd2l0Y2hJbmZvOjpTd2l0Y2hJbW1l
ZGlhdGU6CiAgICAgICAgICAgICBlbWl0T3Bjb2RlKG9wX3N3aXRjaF9pbW0pOwpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2xsaW50L0xMSW50T2Zmc2V0c0V4dHJhY3Rvci5jcHAg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvbGxpbnQvTExJbnRPZmZzZXRzRXh0cmFjdG9yLmNwcApp
bmRleCBjYmZmZjI5ZDZhYmRjNDY4ZjUyYzZkN2Q0NzI0ZTJjNDQyMzU5NGRkLi4wMDg3ZmU1ZmZi
MTkwMTAxZWZlNGRiZjlhZDllZDZjZWY1MzczYTA1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvbGxpbnQvTExJbnRPZmZzZXRzRXh0cmFjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvbGxpbnQvTExJbnRPZmZzZXRzRXh0cmFjdG9yLmNwcApAQCAtNTMsNyArNTMs
NyBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAotI2RlZmluZSBPRkZMSU5FX0FTTV9PRkZTRVRPRihj
bGF6eiwgZmllbGQpIE9CSkVDVF9PRkZTRVRPRihjbGF6eiwgZmllbGQpCisjZGVmaW5lIE9GRkxJ
TkVfQVNNX09GRlNFVE9GKGNsYXp6LCBmaWVsZCkgKHN0YXRpY19jYXN0PHVuc2lnbmVkPihPQkpF
Q1RfT0ZGU0VUT0YoY2xhenosIGZpZWxkKSkpCiAKIGNsYXNzIExMSW50T2Zmc2V0c0V4dHJhY3Rv
ciB7CiBwdWJsaWM6CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9J
ZGVudGlmaWVyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0lkZW50aWZpZXIu
Y3BwCmluZGV4IDQ1ZGQwYmJkZWRhNjZmNDVlMmE3MWI4YWVhN2I4YjliYTBhMDY5Y2QuLjU4M2Mx
MmJiMTFkZmJjYmY5ZTcyMzM0NTFiM2MxOTg5ODA4NjJkYmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL0lkZW50aWZpZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0lkZW50aWZpZXIuY3BwCkBAIC0xMjgsNyArMTI4LDcgQEAgUGFzc1Jl
ZlB0cjxTdHJpbmdJbXBsPiBJZGVudGlmaWVyOjphZGQ4KEpTR2xvYmFsRGF0YSogZ2xvYmFsRGF0
YSwgY29uc3QgVUNoYXIqIHMKICAgICAKICAgICBpZiAoIWxlbmd0aCkKICAgICAgICAgcmV0dXJu
IFN0cmluZ0ltcGw6OmVtcHR5KCk7Ci0gICAgQ2hhckJ1ZmZlcjxVQ2hhcj4gYnVmID0ge3MsIGxl
bmd0aH07IAorICAgIENoYXJCdWZmZXI8VUNoYXI+IGJ1ZiA9IHsgcywgc3RhdGljX2Nhc3Q8dW5z
aWduZWQ+KGxlbmd0aCkgfTsKICAgICBIYXNoU2V0PFN0cmluZ0ltcGwqPjo6QWRkUmVzdWx0IGFk
ZFJlc3VsdCA9IGdsb2JhbERhdGEtPmlkZW50aWZpZXJUYWJsZS0+YWRkPENoYXJCdWZmZXI8VUNo
YXI+LCBJZGVudGlmaWVyTENoYXJGcm9tVUNoYXJUcmFuc2xhdG9yID4oYnVmKTsKICAgICAKICAg
ICAvLyBJZiB0aGUgc3RyaW5nIGlzIG5ld2x5LXRyYW5zbGF0ZWQsIHRoZW4gd2UgbmVlZCB0byBh
ZG9wdCBpdC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0lkZW50
aWZpZXIuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0lkZW50aWZpZXIuaAppbmRl
eCBiZGNmYmQxODc2N2NlNjRlNzE1ZmZiNTJmMWYxZjIyYWI0YjEwZTAwLi5kY2I3MzllYzM4ZmRj
ZGNiMzgyYWEzMWNkN2ZhMzcxODAzZTRiOTU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9JZGVudGlmaWVyLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSWRlbnRpZmllci5oCkBAIC0xODAsNyArMTgwLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAg
ICAgICAgIAogICAgICAgICBpZiAoIWxlbmd0aCkKICAgICAgICAgICAgIHJldHVybiBTdHJpbmdJ
bXBsOjplbXB0eSgpOwotICAgICAgICBDaGFyQnVmZmVyPFQ+IGJ1ZiA9IHtzLCBsZW5ndGh9OyAK
KyAgICAgICAgQ2hhckJ1ZmZlcjxUPiBidWYgPSB7IHMsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihs
ZW5ndGgpIH07CiAgICAgICAgIEhhc2hTZXQ8U3RyaW5nSW1wbCo+OjpBZGRSZXN1bHQgYWRkUmVz
dWx0ID0gZ2xvYmFsRGF0YS0+aWRlbnRpZmllclRhYmxlLT5hZGQ8Q2hhckJ1ZmZlcjxUPiwgSWRl
bnRpZmllckNoYXJCdWZmZXJUcmFuc2xhdG9yPFQ+ID4oYnVmKTsKICAgICAgICAgCiAgICAgICAg
IC8vIElmIHRoZSBzdHJpbmcgaXMgbmV3bHktdHJhbnNsYXRlZCwgdGhlbiB3ZSBuZWVkIHRvIGFk
b3B0IGl0LgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNPTk9i
amVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09OT2JqZWN0LmNwcApp
bmRleCBmZDkzOTkzNGVkZTJmYjQzYmFiNTZmYWUxNTEwMjBjOThjZjljNmYzLi5lMDUxZWM3ZDlj
YzFjNDgxYTEyZWNmMjAxNTk3ZDRmOTkzNDdjM2Y0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU09OT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU09OT2JqZWN0LmNwcApAQCAtMjk0LDcgKzI5NCw3IEBAIHN0YXRpYyB2b2lk
IGFwcGVuZFN0cmluZ1RvU3RyaW5nQnVpbGRlcihTdHJpbmdCdWlsZGVyJiBidWlsZGVyLCBjb25z
dCBDaGFyVHlwZSoKICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgIHN0YXRpYyBjb25zdCBj
aGFyIGhleERpZ2l0c1tdID0gIjAxMjM0NTY3ODlhYmNkZWYiOwogICAgICAgICAgICAgVUNoYXIg
Y2ggPSBkYXRhW2ldOwotICAgICAgICAgICAgTENoYXIgaGV4W10gPSB7ICdcXCcsICd1JywgaGV4
RGlnaXRzWyhjaCA+PiAxMikgJiAweEZdLCBoZXhEaWdpdHNbKGNoID4+IDgpICYgMHhGXSwgaGV4
RGlnaXRzWyhjaCA+PiA0KSAmIDB4Rl0sIGhleERpZ2l0c1tjaCAmIDB4Rl0gfTsKKyAgICAgICAg
ICAgIExDaGFyIGhleFtdID0geyAnXFwnLCAndScsIHN0YXRpY19jYXN0PExDaGFyPihoZXhEaWdp
dHNbKGNoID4+IDEyKSAmIDB4Rl0pLCBzdGF0aWNfY2FzdDxMQ2hhcj4oaGV4RGlnaXRzWyhjaCA+
PiA4KSAmIDB4Rl0pLCBzdGF0aWNfY2FzdDxMQ2hhcj4oaGV4RGlnaXRzWyhjaCA+PiA0KSAmIDB4
Rl0pLCBzdGF0aWNfY2FzdDxMQ2hhcj4oaGV4RGlnaXRzW2NoICYgMHhGXSkgfTsKICAgICAgICAg
ICAgIGJ1aWxkZXIuYXBwZW5kKGhleCwgV1RGX0FSUkFZX0xFTkdUSChoZXgpKTsKICAgICAgICAg
ICAgIGJyZWFrOwogICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9TdHJpbmdQcm90b3R5cGUuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvU3RyaW5nUHJvdG90eXBlLmNwcAppbmRleCA0ZDNjY2ZkYTI1OGViODBiZjQxNDM0M2JjMWI1
MjhhMjI4NGMzZjI0Li41YWFmZThiYjM3OTFlODM1YzcyNmJkYTllZjBjNzI2MTBjN2JhMzZmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdQcm90b3R5cGUu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ1Byb3RvdHlwZS5j
cHAKQEAgLTY2Niw3ICs2NjYsNyBAQCBzdGF0aWMgaW5saW5lIEVuY29kZWRKU1ZhbHVlIHJlcGxh
Y2VVc2luZ1N0cmluZ1NlYXJjaChFeGVjU3RhdGUqIGV4ZWMsIEpTU3RyaW5nKgogICAgIFN0cmlu
ZyBsZWZ0UGFydChTdHJpbmdJbXBsOjpjcmVhdGUoc3RyaW5nSW1wbCwgMCwgbWF0Y2hTdGFydCkp
OwogCiAgICAgc2l6ZV90IG1hdGNoRW5kID0gbWF0Y2hTdGFydCArIHNlYXJjaFN0cmluZy5pbXBs
KCktPmxlbmd0aCgpOwotICAgIGludCBvdmVjdG9yWzJdID0geyBtYXRjaFN0YXJ0LCAgbWF0Y2hF
bmR9OworICAgIGludCBvdmVjdG9yWzJdID0geyBzdGF0aWNfY2FzdDxpbnQ+KG1hdGNoU3RhcnQp
LCAgc3RhdGljX2Nhc3Q8aW50PihtYXRjaEVuZCl9OwogICAgIFN0cmluZyBtaWRkbGVQYXJ0ID0g
c3Vic3RpdHV0ZUJhY2tyZWZlcmVuY2VzKHJlcGxhY2VTdHJpbmcsIHN0cmluZywgb3ZlY3Rvciwg
MCk7CiAKICAgICBzaXplX3QgbGVmdExlbmd0aCA9IHN0cmluZ0ltcGwtPmxlbmd0aCgpIC0gbWF0
Y2hFbmQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9Db25maWd1cmF0aW9u
cy9CYXNlLnhjY29uZmlnIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQ29uZmlndXJhdGlvbnMv
QmFzZS54Y2NvbmZpZwppbmRleCAyYjdlMjZhYjM5OGQxZGE5OTY0NGRhZjc4YThiMjhmNzFhMTE5
NjA4Li43NDJjOGZjNGFmZjQ0ZDJmYTg5ZTQ4ZjBiNWZjMjQyMGNlOWRhMzY3IDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9Db25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0NvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWcK
QEAgLTEsMyArMSw0IEBACitDTEFOR19DWFhfTEFOR1VBR0VfU1RBTkRBUkQgPSBnbnUrKzB4Owog
Q0xBTkdfQ1hYX0xJQlJBUlkgPSBsaWJjKys7CiBERUFEX0NPREVfU1RSSVBQSU5HID0gWUVTOwog
REVCVUdfSU5GT1JNQVRJT05fRk9STUFUID0gZHdhcmYtd2l0aC1kc3ltOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dURi9Db25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnIGIvU291cmNlL1dURi9Db25m
aWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnCmluZGV4IGNmMTUxOWUzOTA3YzhhNTljZWNhZWE1ODUx
ZWU0ZGI5Y2NjMjE1OTcuLjVmMDBjODM4YWYxY2FiZDgyZGE4ZDJmY2E1ODNiOTY1N2Y3YjEzMjMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZworKysg
Yi9Tb3VyY2UvV1RGL0NvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWcKQEAgLTIxLDYgKzIxLDcg
QEAKIC8vIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5Z
IFdBWSBPVVQgT0YgVEhFIFVTRQogLy8gT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAKK0NMQU5HX0NYWF9MQU5HVUFH
RV9TVEFOREFSRCA9IGdudSsrMHg7CiBDTEFOR19DWFhfTElCUkFSWSA9IGxpYmMrKzsKIENMQU5H
X1dBUk5fQ1hYMFhfRVhURU5TSU9OUyA9IE5POwogREVCVUdfSU5GT1JNQVRJT05fRk9STUFUID0g
ZHdhcmYtd2l0aC1kc3ltOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvdGV4dC9BdG9taWNT
dHJpbmcuY3BwIGIvU291cmNlL1dURi93dGYvdGV4dC9BdG9taWNTdHJpbmcuY3BwCmluZGV4IDhj
NjllMjRlMDdiMTJhOWZjMTk0NGEyN2Q0NTU4MGY2ODE5NjUwNDYuLmUwOGVlNGRiZGIzODQ4ZmVh
OGM4ZjA4Mzk5NGYyYTlmODgyZDVkOTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL3RleHQv
QXRvbWljU3RyaW5nLmNwcAorKysgYi9Tb3VyY2UvV1RGL3d0Zi90ZXh0L0F0b21pY1N0cmluZy5j
cHAKQEAgLTI2Nyw3ICsyNjcsNyBAQCBQYXNzUmVmUHRyPFN0cmluZ0ltcGw+IEF0b21pY1N0cmlu
Zzo6YWRkKGNvbnN0IFVDaGFyKiBzKQogICAgIGlmICghbGVuZ3RoKQogICAgICAgICByZXR1cm4g
U3RyaW5nSW1wbDo6ZW1wdHkoKTsKIAotICAgIFVDaGFyQnVmZmVyIGJ1ZmZlciA9IHsgcywgbGVu
Z3RoIH07CisgICAgVUNoYXJCdWZmZXIgYnVmZmVyID0geyBzLCBzdGF0aWNfY2FzdDx1bnNpZ25l
ZD4obGVuZ3RoKSB9OwogICAgIHJldHVybiBhZGRUb1N0cmluZ1RhYmxlPFVDaGFyQnVmZmVyLCBV
Q2hhckJ1ZmZlclRyYW5zbGF0b3I+KGJ1ZmZlcik7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
VEYvd3RmL3VuaWNvZGUvVVRGOC5jcHAgYi9Tb3VyY2UvV1RGL3d0Zi91bmljb2RlL1VURjguY3Bw
CmluZGV4IGRiNjllNDg1ZWEzNDM1YjAyNTUzZjFhODEyZjE0N2ZkZmY0ZjMzMDguLjZlNzRmMDFj
YzkyYzZiMjIxZWY1YjJiNGU2MmIzZjU5Y2RlYmEwYTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYv
d3RmL3VuaWNvZGUvVVRGOC5jcHAKKysrIGIvU291cmNlL1dURi93dGYvdW5pY29kZS9VVEY4LmNw
cApAQCAtMjc1LDggKzI3NSw3IEBAIHN0YXRpYyBib29sIGlzTGVnYWxVVEY4KGNvbnN0IHVuc2ln
bmVkIGNoYXIqIHNvdXJjZSwgaW50IGxlbmd0aCkKIC8vIE1hZ2ljIHZhbHVlcyBzdWJ0cmFjdGVk
IGZyb20gYSBidWZmZXIgdmFsdWUgZHVyaW5nIFVURjggY29udmVyc2lvbi4KIC8vIFRoaXMgdGFi
bGUgY29udGFpbnMgYXMgbWFueSB2YWx1ZXMgYXMgdGhlcmUgbWlnaHQgYmUgdHJhaWxpbmcgYnl0
ZXMKIC8vIGluIGEgVVRGLTggc2VxdWVuY2UuCi1zdGF0aWMgY29uc3QgVUNoYXIzMiBvZmZzZXRz
RnJvbVVURjhbNl0gPSB7IDB4MDAwMDAwMDBVTCwgMHgwMDAwMzA4MFVMLCAweDAwMEUyMDgwVUws
IAotICAgICAgICAgICAgMHgwM0M4MjA4MFVMLCAweEZBMDgyMDgwVUwsIDB4ODIwODIwODBVTCB9
Oworc3RhdGljIGNvbnN0IFVDaGFyMzIgb2Zmc2V0c0Zyb21VVEY4WzZdID0geyAweDAwMDAwMDAw
VUwsIDB4MDAwMDMwODBVTCwgMHgwMDBFMjA4MFVMLCAweDAzQzgyMDgwVUwsIHN0YXRpY19jYXN0
PFVDaGFyMzI+KDB4RkEwODIwODBVTCksIHN0YXRpY19jYXN0PFVDaGFyMzI+KDB4ODIwODIwODBV
TCkgfTsKIAogc3RhdGljIGlubGluZSBVQ2hhcjMyIHJlYWRVVEY4U2VxdWVuY2UoY29uc3QgY2hh
ciomIHNlcXVlbmNlLCB1bnNpZ25lZCBsZW5ndGgpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9Db25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnIGIvU291cmNlL1dlYkNvcmUvQ29uZmln
dXJhdGlvbnMvQmFzZS54Y2NvbmZpZwppbmRleCA5Y2E3ZTY4NGIyOGZiMjllZmM1MmUyZGM0ZWZl
ZTA2YmUyMGZlYzQ0Li41ODE2NzY5YTk3OTkxZjNiYjg5NmYwODMyMmYzODMwMjdkM2Q1MTIzIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnCisr
KyBiL1NvdXJjZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWcKQEAgLTIxLDYg
KzIxLDcgQEAKIC8vIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQogLy8gT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAKK0NMQU5HX0NYWF9M
QU5HVUFHRV9TVEFOREFSRCA9IGdudSsrMHg7CiBDTEFOR19DWFhfTElCUkFSWSA9IGxpYmMrKzsK
IENMQU5HX1dBUk5fQ1hYMFhfRVhURU5TSU9OUyA9IE5POwogREVCVUdfSU5GT1JNQVRJT05fRk9S
TUFUID0gZHdhcmYtd2l0aC1kc3ltOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvRm9udFBsYXRmb3JtRGF0YS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvRm9udFBsYXRmb3JtRGF0YS5oCmluZGV4IGY3YWY3MDYxN2JjOWY5YTUxMGI0YWIz
NTBjYWM4MGZhMTdjZDAwODIuLmJlODI4NDVlZGM5YWVkYzQwZTg0MjkwZWJiYjk4ZWM3YmU0OTcw
ODAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRQbGF0
Zm9ybURhdGEuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250UGxh
dGZvcm1EYXRhLmgKQEAgLTE4MSw3ICsxODEsNyBAQCBwdWJsaWM6CiAjaWYgVVNFKENHKSB8fCBV
U0UoU0tJQV9PTl9NQUNfQ0hST01JVU0pCiAgICAgICAgIEFTU0VSVChtX2ZvbnQgfHwgIW1fY2dG
b250KTsKICNlbmRpZgotICAgICAgICB1aW50cHRyX3QgaGFzaENvZGVzWzNdID0geyAodWludHB0
cl90KW1fZm9udCwgbV93aWR0aFZhcmlhbnQsIG1faXNQcmludGVyRm9udCA8PCA0IHwgbV90ZXh0
T3JpZW50YXRpb24gPDwgMyB8IG1fb3JpZW50YXRpb24gPDwgMiB8IG1fc3ludGhldGljQm9sZCA8
PCAxIHwgbV9zeW50aGV0aWNPYmxpcXVlIH07CisgICAgICAgIHVpbnRwdHJfdCBoYXNoQ29kZXNb
M10gPSB7ICh1aW50cHRyX3QpbV9mb250LCBtX3dpZHRoVmFyaWFudCwgc3RhdGljX2Nhc3Q8dWlu
dHB0cl90PihtX2lzUHJpbnRlckZvbnQgPDwgNCB8IG1fdGV4dE9yaWVudGF0aW9uIDw8IDMgfCBt
X29yaWVudGF0aW9uIDw8IDIgfCBtX3N5bnRoZXRpY0JvbGQgPDwgMSB8IG1fc3ludGhldGljT2Js
aXF1ZSkgfTsKICAgICAgICAgcmV0dXJuIFN0cmluZ0hhc2hlcjo6aGFzaE1lbW9yeTxzaXplb2Yo
aGFzaENvZGVzKT4oaGFzaENvZGVzKTsKICNlbGlmIFVTRShDQUlSTykKICAgICAgICAgcmV0dXJu
IFB0ckhhc2g8Y2Fpcm9fc2NhbGVkX2ZvbnRfdCo+OjpoYXNoKG1fc2NhbGVkRm9udCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jZy9HcmFwaGljc0NvbnRl
eHRDRy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jZy9HcmFwaGljc0Nv
bnRleHRDRy5jcHAKaW5kZXggYmQ1NTM4NTEyNzlmMTMyOTFhYjQzYWFiNGMyZTIyMTk4NWZjZjQ0
MC4uMWVkYWIwYzMzNmYwMDM0ZTg5ZGIyZmMwOTljNjI0Y2E3N2Q3NjRmMiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2cvR3JhcGhpY3NDb250ZXh0Q0cuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NnL0dyYXBoaWNzQ29udGV4
dENHLmNwcApAQCAtNDg4LDcgKzQ4OCw3IEBAIHZvaWQgR3JhcGhpY3NDb250ZXh0OjpkcmF3TGlu
ZShjb25zdCBJbnRQb2ludCYgcG9pbnQxLCBjb25zdCBJbnRQb2ludCYgcG9pbnQyKQogICAgICAg
ICAgICAgfQogICAgICAgICB9CiAKLSAgICAgICAgY29uc3QgQ0dGbG9hdCBkb3R0ZWRMaW5lWzJd
ID0geyBwYXRXaWR0aCwgcGF0V2lkdGggfTsKKyAgICAgICAgY29uc3QgQ0dGbG9hdCBkb3R0ZWRM
aW5lWzJdID0geyBzdGF0aWNfY2FzdDxDR0Zsb2F0PihwYXRXaWR0aCksIHN0YXRpY19jYXN0PENH
RmxvYXQ+KHBhdFdpZHRoKSB9OwogICAgICAgICBDR0NvbnRleHRTZXRMaW5lRGFzaChjb250ZXh0
LCBwYXR0ZXJuT2Zmc2V0LCBkb3R0ZWRMaW5lLCAyKTsKICAgICB9CiAKQEAgLTU5Niw3ICs1OTYs
NyBAQCB2b2lkIEdyYXBoaWNzQ29udGV4dDo6c3Ryb2tlQXJjKGNvbnN0IEludFJlY3QmIHJlY3Qs
IGludCBzdGFydEFuZ2xlLCBpbnQgYW5nbGVTcAogICAgICAgICAgICAgfQogICAgICAgICB9CiAK
LSAgICAgICAgY29uc3QgQ0dGbG9hdCBkb3R0ZWRMaW5lWzJdID0geyBwYXRXaWR0aCwgcGF0V2lk
dGggfTsKKyAgICAgICAgY29uc3QgQ0dGbG9hdCBkb3R0ZWRMaW5lWzJdID0geyBzdGF0aWNfY2Fz
dDxDR0Zsb2F0PihwYXRXaWR0aCksIHN0YXRpY19jYXN0PENHRmxvYXQ+KHBhdFdpZHRoKSB9Owog
ICAgICAgICBDR0NvbnRleHRTZXRMaW5lRGFzaChjb250ZXh0LCBwYXR0ZXJuT2Zmc2V0LCBkb3R0
ZWRMaW5lLCAyKTsKICAgICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyUHJvZ3JhbUluZm8uY3BwIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQcm9ncmFtSW5mby5j
cHAKaW5kZXggN2Y0YWYzZTg2ZjA0ODBkMDgzODlkODUzODg2NjdjZjAxOWNlNGE1NS4uNDkyMTk3
YzUyMmNlOWM5ZmRjNTIzNTIyZWRkZmI5ODg5NGUwZTQzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21GaWx0ZXJQcm9ncmFtSW5mby5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9DdXN0b21G
aWx0ZXJQcm9ncmFtSW5mby5jcHAKQEAgLTg0LDggKzg0LDggQEAgdW5zaWduZWQgQ3VzdG9tRmls
dGVyUHJvZ3JhbUluZm86Omhhc2goKSBjb25zdAogICAgICAgICBoYXNoUG9zc2libHlOdWxsU3Ry
aW5nKG1fdmVydGV4U2hhZGVyU3RyaW5nKSwKICAgICAgICAgaGFzaFBvc3NpYmx5TnVsbFN0cmlu
ZyhtX2ZyYWdtZW50U2hhZGVyU3RyaW5nKSwKICAgICAgICAgYmxlbmRzRWxlbWVudFRleHR1cmUs
Ci0gICAgICAgIGJsZW5kc0VsZW1lbnRUZXh0dXJlID8gbV9taXhTZXR0aW5ncy5ibGVuZE1vZGUg
OiAwLAotICAgICAgICBibGVuZHNFbGVtZW50VGV4dHVyZSA/IG1fbWl4U2V0dGluZ3MuY29tcG9z
aXRlT3BlcmF0b3IgOiAwCisgICAgICAgIHN0YXRpY19jYXN0PHVpbnRwdHJfdD4oYmxlbmRzRWxl
bWVudFRleHR1cmUgPyBtX21peFNldHRpbmdzLmJsZW5kTW9kZSA6IDApLAorICAgICAgICBzdGF0
aWNfY2FzdDx1aW50cHRyX3Q+KGJsZW5kc0VsZW1lbnRUZXh0dXJlID8gbV9taXhTZXR0aW5ncy5j
b21wb3NpdGVPcGVyYXRvciA6IDApCiAgICAgfTsKICAgICByZXR1cm4gU3RyaW5nSGFzaGVyOjpo
YXNoTWVtb3J5PHNpemVvZihoYXNoQ29kZXMpPigmaGFzaENvZGVzKTsKIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9DbGlwYm9hcmRNYWMubW0gYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9tYWMvQ2xpcGJvYXJkTWFjLm1tCmluZGV4IGJkODgwMjA0NDFiMGU5YWUw
MGJhZGFmMzZiMmY0ZjVhNmE2YmVhZTcuLmZhMzI0N2I5MmVjYWYxMTQwYmFkOTg2MWM3MDZkNzJj
NTUyZGJlNTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9DbGlwYm9h
cmRNYWMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL0NsaXBib2FyZE1hYy5t
bQpAQCAtNDA4LDcgKzQwOCw3IEBAIHZvaWQgQ2xpcGJvYXJkTWFjOjpkZWNsYXJlQW5kV3JpdGVE
cmFnSW1hZ2UoRWxlbWVudCogZWxlbWVudCwgY29uc3QgS1VSTCYgdXJsLCBjCiAgICAgCiBEcmFn
SW1hZ2VSZWYgQ2xpcGJvYXJkTWFjOjpjcmVhdGVEcmFnSW1hZ2UoSW50UG9pbnQmIGxvYykgY29u
c3QKIHsKLSAgICBOU1BvaW50IG5zbG9jID0ge2xvYy54KCksIGxvYy55KCl9OworICAgIE5TUG9p
bnQgbnNsb2MgPSBOU01ha2VQb2ludChsb2MueCgpLCBsb2MueSgpKTsKICAgICBEcmFnSW1hZ2VS
ZWYgcmVzdWx0ID0gZHJhZ05TSW1hZ2UobnNsb2MpOwogICAgIGxvYyA9IChJbnRQb2ludCluc2xv
YzsKICAgICByZXR1cm4gcmVzdWx0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWFjL0Nvb2tpZUphci5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9Db29raWVK
YXIubW0KaW5kZXggNDIxZDg2ZDhiNmFkMjAyZmFkYjhhOGVkMTZiZmMzMGNiZjAyZjRhNi4uZTc3
NDk0NGNiMWZlNmNmNzEyNWFmMzJiZDQ0OTBjMWY3ZmI2NjVlZiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbWFjL0Nvb2tpZUphci5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tYWMvQ29va2llSmFyLm1tCkBAIC0xNDcsNyArMTQ3LDcgQEAgYm9vbCBjb29raWVz
RW5hYmxlZChjb25zdCBEb2N1bWVudCopCiAgICAgTlNIVFRQQ29va2llQWNjZXB0UG9saWN5IGNv
b2tpZUFjY2VwdFBvbGljeTsKICNpZiBVU0UoQ0ZVUkxTVE9SQUdFU0VTU0lPTlMpCiAgICAgaWYg
KFJldGFpblB0cjxDRkhUVFBDb29raWVTdG9yYWdlUmVmPiBjZkNvb2tpZVN0b3JhZ2UgPSBjdXJy
ZW50Q0ZIVFRQQ29va2llU3RvcmFnZSgpKQotICAgICAgICBjb29raWVBY2NlcHRQb2xpY3kgPSB3
a0dldEhUVFBDb29raWVBY2NlcHRQb2xpY3koY2ZDb29raWVTdG9yYWdlLmdldCgpKTsKKyAgICAg
ICAgY29va2llQWNjZXB0UG9saWN5ID0gc3RhdGljX2Nhc3Q8TlNIVFRQQ29va2llQWNjZXB0UG9s
aWN5Pih3a0dldEhUVFBDb29raWVBY2NlcHRQb2xpY3koY2ZDb29raWVTdG9yYWdlLmdldCgpKSk7
CiAgICAgZWxzZQogI2VuZGlmCiAgICAgICAgIGNvb2tpZUFjY2VwdFBvbGljeSA9IFtbTlNIVFRQ
Q29va2llU3RvcmFnZSBzaGFyZWRIVFRQQ29va2llU3RvcmFnZV0gY29va2llQWNjZXB0UG9saWN5
XTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9DdXJzb3JNYWMubW0g
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvQ3Vyc29yTWFjLm1tCmluZGV4IGFjMjRiODhj
NGZmNjE0OWU5OWFlN2RlYzk3YWZmMTU3MzllYmIxYTUuLjEzZTcwNjIzMDY2ZDQwNGNjZjJiYzY1
MjQyZDYzMTc0ZTUyYjE0MzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21h
Yy9DdXJzb3JNYWMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL0N1cnNvck1h
Yy5tbQpAQCAtNjEsMTAgKzYxLDkgQEAgc3RhdGljIFJldGFpblB0cjxOU0N1cnNvcj4gY3JlYXRl
TmFtZWRDdXJzb3IoY29uc3QgY2hhciogbmFtZSwgaW50IHgsIGludCB5KQogICAgIAogICAgIFJl
dGFpblB0cjxOU0N1cnNvcj4gY3Vyc29yOwogCi0gICAgaWYgKGN1cnNvckltYWdlKSB7Ci0gICAg
ICAgIE5TUG9pbnQgaG90U3BvdFBvaW50ID0ge3gsIHl9OyAvLyB3b3JrYXJvdW5kIGZvciA0MjEz
MzE0Ci0gICAgICAgIGN1cnNvci5hZG9wdE5TKFtbTlNDdXJzb3IgYWxsb2NdIGluaXRXaXRoSW1h
Z2U6Y3Vyc29ySW1hZ2UuZ2V0KCkgaG90U3BvdDpob3RTcG90UG9pbnRdKTsKLSAgICB9CisgICAg
aWYgKGN1cnNvckltYWdlKQorICAgICAgICBjdXJzb3IgPSBhZG9wdE5TKFtbTlNDdXJzb3IgYWxs
b2NdIGluaXRXaXRoSW1hZ2U6Y3Vyc29ySW1hZ2UuZ2V0KCkgaG90U3BvdDpOU01ha2VQb2ludCh4
LCB5KV0pOworCiAgICAgcmV0dXJuIGN1cnNvcjsKICAgICBFTkRfQkxPQ0tfT0JKQ19FWENFUFRJ
T05TOwogICAgIHJldHVybiBuaWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tYWMvU2Nyb2xsVmlld01hYy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3Jv
bGxWaWV3TWFjLm1tCmluZGV4IGE1NjBiYzU5ODQwM2FmOTZmZGQzYWIzNjM1Y2RmODA4N2M3ZmRl
MDguLjFlOWZlM2ZhOGIyZjIwMzBmNWQ4MDE2OWVmNDZiYjY2YTc1ZThmZjMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxWaWV3TWFjLm1tCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxWaWV3TWFjLm1tCkBAIC0xMjMsOCArMTIzLDcg
QEAgdm9pZCBTY3JvbGxWaWV3OjpwbGF0Zm9ybVNldENvbnRlbnRzU2l6ZSgpCiAgICAgaW50IHcg
PSBtX2NvbnRlbnRzU2l6ZS53aWR0aCgpOwogICAgIGludCBoID0gbV9jb250ZW50c1NpemUuaGVp
Z2h0KCk7CiAgICAgTE9HKEZyYW1lcywgIiVwICVAIGF0IHcgJWQgaCAlZFxuIiwgZG9jdW1lbnRW
aWV3KCksIFsoaWQpW2RvY3VtZW50VmlldygpIGNsYXNzXSBjbGFzc05hbWVdLCB3LCBoKTsgICAg
ICAgICAgICAKLSAgICBOU1NpemUgdGVtcFNpemUgPSB7IG1heCgwLCB3KSwgbWF4KDAsIGgpIH07
IC8vIHdvcmthcm91bmQgZm9yIDQyMTMzMTQKLSAgICBbZG9jdW1lbnRWaWV3KCkgc2V0RnJhbWVT
aXplOnRlbXBTaXplXTsKKyAgICBbZG9jdW1lbnRWaWV3KCkgc2V0RnJhbWVTaXplOk5TTWFrZVNp
emUobWF4KDAsIHcpLCBtYXgoMCwgaCkpXTsKICAgICBFTkRfQkxPQ0tfT0JKQ19FWENFUFRJT05T
OwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViQ29yZU5T
VVJMRXh0cmFzLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViQ29yZU5TVVJMRXh0
cmFzLmgKaW5kZXggYjhjYmZkYWNkMzQxNTZlMjA0ZDFmNDg4MmU2MzMzNDgzZmU5NDQ0MS4uOTQw
MzE2ODY1MTUwMzBhMTllY2IyODkyNGVkMzUxOThhMGE0MjM4NCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVOU1VSTEV4dHJhcy5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJDb3JlTlNVUkxFeHRyYXMuaApAQCAtNDcsMTAgKzQ3LDEw
IEBAIE5TU3RyaW5nICpkZWNvZGVIb3N0TmFtZVdpdGhSYW5nZShOU1N0cmluZyAqLCBOU1Jhbmdl
KTsKIE5TU3RyaW5nICplbmNvZGVIb3N0TmFtZVdpdGhSYW5nZShOU1N0cmluZyAqLCBOU1Jhbmdl
KTsKIE5TU3RyaW5nICpkZWNvZGVIb3N0TmFtZShOU1N0cmluZyAqKTsKIE5TU3RyaW5nICplbmNv
ZGVIb3N0TmFtZShOU1N0cmluZyAqKTsKLU5TVVJMICpVUkxCeVRydW5jYXRpbmdPbmVDaGFyYWN0
ZXJCZWZvcmVDb21wb25lbnQoTlNVUkwgKiwgQ0ZVUkxDb21wb25lbnRUeXBlKTsKK05TVVJMICpV
UkxCeVRydW5jYXRpbmdPbmVDaGFyYWN0ZXJCZWZvcmVDb21wb25lbnQoTlNVUkwgKiwgQ0ZJbmRl
eCk7CiBOU1VSTCAqVVJMV2l0aERhdGEoTlNEYXRhICosIE5TVVJMICpiYXNlVVJMKTsKIE5TRGF0
YSAqb3JpZ2luYWxVUkxEYXRhKE5TVVJMICopOwotTlNEYXRhICpkYXRhRm9yVVJMQ29tcG9uZW50
VHlwZShOU1VSTCAqLCBDRlVSTENvbXBvbmVudFR5cGUpOworTlNEYXRhICpkYXRhRm9yVVJMQ29t
cG9uZW50VHlwZShOU1VSTCAqLCBDRkluZGV4KTsKIEJPT0wgaXNVc2VyVmlzaWJsZVVSTChOU1N0
cmluZyAqKTsKICAgICAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJDb3JlTlNVUkxFeHRyYXMubW0gYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9tYWMvV2ViQ29yZU5TVVJMRXh0cmFzLm1tCmluZGV4IDNiODdkNTM3MGEz
ZmQxNDQyZGM5NGRlY2U1ZjZjY2ExYTQ4MmNkYTguLjQ2MTI2MzNmYmQ5MTc3NGRhZjc1Nzk5MDJk
OGEyNTZkMTk2OGVlMWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9X
ZWJDb3JlTlNVUkxFeHRyYXMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dl
YkNvcmVOU1VSTEV4dHJhcy5tbQpAQCAtNTEwLDEyICs1MTAsMTIgQEAgc3RhdGljIE5TU3RyaW5n
ICpzdHJpbmdCeVRyaW1taW5nV2hpdGVzcGFjZShOU1N0cmluZyAqc3RyaW5nKQogICAgIHJldHVy
biB0cmltbWVkOwogfQogCi1OU1VSTCAqVVJMQnlUcnVuY2F0aW5nT25lQ2hhcmFjdGVyQmVmb3Jl
Q29tcG9uZW50KE5TVVJMICpVUkwsIENGVVJMQ29tcG9uZW50VHlwZSBjb21wb25lbnQpCitOU1VS
TCAqVVJMQnlUcnVuY2F0aW5nT25lQ2hhcmFjdGVyQmVmb3JlQ29tcG9uZW50KE5TVVJMICpVUkws
IENGSW5kZXggY29tcG9uZW50KQogewogICAgIGlmICghVVJMKQogICAgICAgICByZXR1cm4gbmls
OwogICAgIAotICAgIENGUmFuZ2UgZnJhZ1JnID0gQ0ZVUkxHZXRCeXRlUmFuZ2VGb3JDb21wb25l
bnQoKENGVVJMUmVmKVVSTCwgY29tcG9uZW50LCBOVUxMKTsKKyAgICBDRlJhbmdlIGZyYWdSZyA9
IENGVVJMR2V0Qnl0ZVJhbmdlRm9yQ29tcG9uZW50KChDRlVSTFJlZilVUkwsIHN0YXRpY19jYXN0
PENGVVJMQ29tcG9uZW50VHlwZT4oY29tcG9uZW50KSwgTlVMTCk7CiAgICAgaWYgKGZyYWdSZy5s
b2NhdGlvbiA9PSBrQ0ZOb3RGb3VuZCkKICAgICAgICAgcmV0dXJuIFVSTDsKICAgICAKQEAgLTYx
OSw3ICs2MTksNyBAQCBzdGF0aWMgQk9PTCBoYXNRdWVzdGlvbk1hcmtPbmx5UXVlcnlTdHJpbmco
TlNVUkwgKlVSTCkKIAogI2RlZmluZSBjb21wbGV0ZVVSTCAoQ0ZVUkxDb21wb25lbnRUeXBlKS0x
CiAKLU5TRGF0YSAqZGF0YUZvclVSTENvbXBvbmVudFR5cGUoTlNVUkwgKlVSTCwgQ0ZVUkxDb21w
b25lbnRUeXBlIGNvbXBvbmVudFR5cGUpCitOU0RhdGEgKmRhdGFGb3JVUkxDb21wb25lbnRUeXBl
KE5TVVJMICpVUkwsIENGSW5kZXggY29tcG9uZW50VHlwZSkKIHsKICAgICBzdGF0aWMgaW50IFVS
TENvbXBvbmVudFR5cGVCdWZmZXJMZW5ndGggPSAyMDQ4OwogICAgIApAQCAtNjM1LDcgKzYzNSw3
IEBAIE5TRGF0YSAqZGF0YUZvclVSTENvbXBvbmVudFR5cGUoTlNVUkwgKlVSTCwgQ0ZVUkxDb21w
b25lbnRUeXBlIGNvbXBvbmVudFR5cGUpCiAgICAgCiAgICAgQ0ZSYW5nZSByYW5nZTsKICAgICBp
ZiAoY29tcG9uZW50VHlwZSAhPSBjb21wbGV0ZVVSTCkgewotICAgICAgICByYW5nZSA9IENGVVJM
R2V0Qnl0ZVJhbmdlRm9yQ29tcG9uZW50KChDRlVSTFJlZilVUkwsIGNvbXBvbmVudFR5cGUsIE5V
TEwpOworICAgICAgICByYW5nZSA9IENGVVJMR2V0Qnl0ZVJhbmdlRm9yQ29tcG9uZW50KChDRlVS
TFJlZilVUkwsIHN0YXRpY19jYXN0PENGVVJMQ29tcG9uZW50VHlwZT4oY29tcG9uZW50VHlwZSks
IE5VTEwpOwogICAgICAgICBpZiAocmFuZ2UubG9jYXRpb24gPT0ga0NGTm90Rm91bmQpCiAgICAg
ICAgICAgICByZXR1cm4gbmlsOwogICAgIH0gZWxzZSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Byb3RlY3Rpb25TcGFjZUhhc2guaCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL25ldHdvcmsvUHJvdGVjdGlvblNwYWNlSGFzaC5oCmluZGV4IGVkZDk1ZGJm
YmNlZTZjZjkxNDJjMGZiMDE0OWFhYThkNWQ0MmY3NTIuLjJkNTZiMzEzYjMxYTgzMmMyMWI4NTJl
OThlZDdkNThiOGEzYjk1NjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvUHJvdGVjdGlvblNwYWNlSGFzaC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvUHJvdGVjdGlvblNwYWNlSGFzaC5oCkBAIC0zNiw3ICszNiw3IEBAIHN0cnVjdCBQ
cm90ZWN0aW9uU3BhY2VIYXNoIHsKICAgICB7IAogICAgICAgICB1bnNpZ25lZCBoYXNoQ29kZXNb
NV0gPSB7CiAgICAgICAgICAgICBwcm90ZWN0aW9uU3BhY2UuaG9zdCgpLmltcGwoKSA/IHByb3Rl
Y3Rpb25TcGFjZS5ob3N0KCkuaW1wbCgpLT5oYXNoKCkgOiAwLCAKLSAgICAgICAgICAgIHByb3Rl
Y3Rpb25TcGFjZS5wb3J0KCksIAorICAgICAgICAgICAgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHBy
b3RlY3Rpb25TcGFjZS5wb3J0KCkpLAogICAgICAgICAgICAgcHJvdGVjdGlvblNwYWNlLnNlcnZl
clR5cGUoKSwKICAgICAgICAgICAgIHByb3RlY3Rpb25TcGFjZS5hdXRoZW50aWNhdGlvblNjaGVt
ZSgpLAogICAgICAgICAgICAgcHJvdGVjdGlvblNwYWNlLnJlYWxtKCkuaW1wbCgpID8gcHJvdGVj
dGlvblNwYWNlLnJlYWxtKCkuaW1wbCgpLT5oYXNoKCkgOiAwCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NmL0Zvcm1EYXRhU3RyZWFtQ0ZOZXQuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jZi9Gb3JtRGF0YVN0cmVhbUNGTmV0LmNwcApp
bmRleCAzZDNlOGEzZWRhNzk5NDg5YzliNjA2MDAyNjc5NzliYmNhMTI4NWUwLi4xNjMzNDZkY2Iy
NGIxNGIyZTM5OWUzMWU4M2EzZGVlY2I1ZmJlNTQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9uZXR3b3JrL2NmL0Zvcm1EYXRhU3RyZWFtQ0ZOZXQuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvRm9ybURhdGFTdHJlYW1DRk5ldC5jcHAKQEAg
LTQ2NCw3ICs0NjQsNyBAQCB2b2lkIHNldEhUVFBCb2R5KENGTXV0YWJsZVVSTFJlcXVlc3RSZWYg
cmVxdWVzdCwgUGFzc1JlZlB0cjxGb3JtRGF0YT4gcHJwRm9ybURhdAogICAgIC8vIENyZWF0ZSBh
bmQgc2V0IHRoZSBzdHJlYW0uCiAKICAgICAvLyBQYXNzIHRoZSBsZW5ndGggYWxvbmcgd2l0aCB0
aGUgZm9ybURhdGEgc28gaXQgZG9lcyBub3QgaGF2ZSB0byBiZSByZWNvbXB1dGVkLgotICAgIEZv
cm1Db250ZXh0IGZvcm1Db250ZXh0ID0geyBmb3JtRGF0YS5yZWxlYXNlKCksIGxlbmd0aCB9Owor
ICAgIEZvcm1Db250ZXh0IGZvcm1Db250ZXh0ID0geyBmb3JtRGF0YS5yZWxlYXNlKCksIHN0YXRp
Y19jYXN0PHVuc2lnbmVkIGxvbmcgbG9uZz4obGVuZ3RoKSB9OwogCiAgICAgQ0ZSZWFkU3RyZWFt
Q2FsbEJhY2tzVjEgY2FsbEJhY2tzID0geyAxLCBmb3JtQ3JlYXRlLCBmb3JtRmluYWxpemUsIDAs
IGZvcm1PcGVuLCAwLCBmb3JtUmVhZCwgMCwgZm9ybUNhblJlYWQsIGZvcm1DbG9zZSwgMCwgMCwg
MCwgZm9ybVNjaGVkdWxlLCBmb3JtVW5zY2hlZHVsZQogICAgIH07CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL21hYy9SZXNvdXJjZUhhbmRsZU1hYy5tbSBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvbWFjL1Jlc291cmNlSGFuZGxlTWFjLm1tCmlu
ZGV4IDdlMjI2ZTI1OTg2YjAyZDJhYTZkMGNkMGRjNTU3NDVhMjhlODNkMzUuLjAxMjM3ZWZmMDAy
OTgwNDc3ODMzYTZhYzI3MWIyODk0ZTNkOTcxOWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL25ldHdvcmsvbWFjL1Jlc291cmNlSGFuZGxlTWFjLm1tCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvbWFjL1Jlc291cmNlSGFuZGxlTWFjLm1tCkBAIC0xNTcs
NyArMTU3LDcgQEAgc3RhdGljIGJvb2wgc2hvdWxkUmVsYXhUaGlyZFBhcnR5Q29va2llUG9saWN5
KGNvbnN0IEtVUkwmIHVybCkKICNpZiBVU0UoQ0ZVUkxTVE9SQUdFU0VTU0lPTlMpCiAgICAgUmV0
YWluUHRyPENGSFRUUENvb2tpZVN0b3JhZ2VSZWY+IGNmQ29va2llU3RvcmFnZSA9IGN1cnJlbnRD
RkhUVFBDb29raWVTdG9yYWdlKCk7CiAgICAgaWYgKGNmQ29va2llU3RvcmFnZSkKLSAgICAgICAg
Y29va2llQWNjZXB0UG9saWN5ID0gd2tHZXRIVFRQQ29va2llQWNjZXB0UG9saWN5KGNmQ29va2ll
U3RvcmFnZS5nZXQoKSk7CisgICAgICAgIGNvb2tpZUFjY2VwdFBvbGljeSA9IHN0YXRpY19jYXN0
PE5TSFRUUENvb2tpZUFjY2VwdFBvbGljeT4od2tHZXRIVFRQQ29va2llQWNjZXB0UG9saWN5KGNm
Q29va2llU3RvcmFnZS5nZXQoKSkpOwogICAgIGVsc2UKICNlbmRpZgogICAgICAgICBjb29raWVB
Y2NlcHRQb2xpY3kgPSBbc2hhcmVkU3RvcmFnZSBjb29raWVBY2NlcHRQb2xpY3ldOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9tYWMvQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZyBiL1Nv
dXJjZS9XZWJLaXQvbWFjL0NvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWcKaW5kZXggYjE0OWFk
ZmQwNjYzZTk4NzQyZTJhYjUxNDQ5ZGU3Mzc3ZjZiYmFkMC4uMzAwNjhmMTBlZTBjMGY0Yzg0MTU1
Y2Y1OTgyOTZiNjk0MTk1OTQ1MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvQ29uZmln
dXJhdGlvbnMvQmFzZS54Y2NvbmZpZworKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9Db25maWd1cmF0
aW9ucy9CYXNlLnhjY29uZmlnCkBAIC0yMSw2ICsyMSw3IEBACiAvLyAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKIC8v
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuIAogCitDTEFOR19DWFhfTEFOR1VBR0VfU1RBTkRBUkQgPSBnbnUrKzB4Owog
Q0xBTkdfQ1hYX0xJQlJBUlkgPSBsaWJjKys7CiBDTEFOR19XQVJOX0NYWDBYX0VYVEVOU0lPTlMg
PSBOTzsKIERFQlVHX0lORk9STUFUSU9OX0ZPUk1BVCA9IGR3YXJmLXdpdGgtZHN5bTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL0hpc3RvcnkvV2ViQmFja0ZvcndhcmRMaXN0Lm1tIGIv
U291cmNlL1dlYktpdC9tYWMvSGlzdG9yeS9XZWJCYWNrRm9yd2FyZExpc3QubW0KaW5kZXggNjRi
MTc4NWVmMjAzZWM2ZDdhMjE3YWY4NDI1ODcxOWFhZmE5MzU1Mi4uNjgzYjlhODVkMGNjM2U2NTk5
ZTBlNmQ3YzEzNmVhOTA3YzJlOWQ1NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvSGlz
dG9yeS9XZWJCYWNrRm9yd2FyZExpc3QubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvSGlzdG9y
eS9XZWJCYWNrRm9yd2FyZExpc3QubW0KQEAgLTI4Miw3ICsyODIsNyBAQCBzdGF0aWMgYm9vbCBi
dW1wZXJDYXJCYWNrRm9yd2FyZEhhY2tOZWVkZWQoKQogICAgICAgICBbcmVzdWx0IGFwcGVuZFN0
cmluZzpba2l0KGVudHJpZXNbaV0uZ2V0KCkpIGRlc2NyaXB0aW9uXV07CiAKICAgICAgICAgLy8g
c2hpZnQgYWxsIHRoZSBjb250ZW50cyBvdmVyLiAgYSBiaXQgc2xvdywgYnV0IHRoaXMgaXMgZm9y
IGRlYnVnZ2luZwotICAgICAgICBOU1JhbmdlIHJlcGxSYW5nZSA9IHtjdXJyUG9zLCBbcmVzdWx0
IGxlbmd0aF0tY3VyclBvc307CisgICAgICAgIE5TUmFuZ2UgcmVwbFJhbmdlID0geyBzdGF0aWNf
Y2FzdDxOU1VJbnRlZ2VyPihjdXJyUG9zKSwgW3Jlc3VsdCBsZW5ndGhdIC0gY3VyclBvcyB9Owog
ICAgICAgICBbcmVzdWx0IHJlcGxhY2VPY2N1cnJlbmNlc09mU3RyaW5nOkAiXG4iIHdpdGhTdHJp
bmc6QCJcbiAgICAgICAgIiBvcHRpb25zOjAgcmFuZ2U6cmVwbFJhbmdlXTsKICAgICAgICAgCiAg
ICAgICAgIFtyZXN1bHQgYXBwZW5kU3RyaW5nOkAiXG4iXTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvbWFjL0hpc3RvcnkvV2ViSGlzdG9yeUl0ZW0ubW0gYi9Tb3VyY2UvV2ViS2l0L21hYy9I
aXN0b3J5L1dlYkhpc3RvcnlJdGVtLm1tCmluZGV4IGYyMzc0YmQzZGE3OTEyMTMxMjZkMjY4Yzk5
Nzk1NDlmYzYyZGJlMzEuLjdjMTBjNmFjNDA5NTY5ZWZkYjBlNDkxNjM2MDU5ZWU4YjNkNWE1OTQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL0hpc3RvcnkvV2ViSGlzdG9yeUl0ZW0ubW0K
KysrIGIvU291cmNlL1dlYktpdC9tYWMvSGlzdG9yeS9XZWJIaXN0b3J5SXRlbS5tbQpAQCAtMjMy
LDcgKzIzMiw3IEBAIHZvaWQgV0tOb3RpZnlIaXN0b3J5SXRlbUNoYW5nZWQoSGlzdG9yeUl0ZW0q
KQogICAgICAgICAgICAgW3Jlc3VsdCBhcHBlbmRTdHJpbmc6W2NoaWxkIGRlc2NyaXB0aW9uXV07
CiAgICAgICAgIH0KICAgICAgICAgLy8gc2hpZnQgYWxsIHRoZSBjb250ZW50cyBvdmVyLiAgQSBi
aXQgc2xvdywgYnV0IGhleSwgdGhpcyBpcyBmb3IgZGVidWdnaW5nLgotICAgICAgICBOU1Jhbmdl
IHJlcGxSYW5nZSA9IHtjdXJyUG9zLCBbcmVzdWx0IGxlbmd0aF0tY3VyclBvc307CisgICAgICAg
IE5TUmFuZ2UgcmVwbFJhbmdlID0geyBzdGF0aWNfY2FzdDxOU1VJbnRlZ2VyPihjdXJyUG9zKSwg
W3Jlc3VsdCBsZW5ndGhdIC0gY3VyclBvcyB9OwogICAgICAgICBbcmVzdWx0IHJlcGxhY2VPY2N1
cnJlbmNlc09mU3RyaW5nOkAiXG4iIHdpdGhTdHJpbmc6QCJcbiAgICAiIG9wdGlvbnM6MCByYW5n
ZTpyZXBsUmFuZ2VdOwogICAgIH0KICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0Nv
bmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWcgYi9Tb3VyY2UvV2ViS2l0Mi9Db25maWd1cmF0aW9u
cy9CYXNlLnhjY29uZmlnCmluZGV4IDIxODRlNzRmODI0YTVhNTg3YmZiNWE4ZDBiMTA0NmFmMDQ2
MGU5N2QuLjM2MDU3NDIwNjM5YjNjYjA4MTk1MTI1ZTRiZWQ5OTk1ZmJmYTZkYWUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQyL0NvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWcKKysrIGIvU291
cmNlL1dlYktpdDIvQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZwpAQCAtMjEsNiArMjEsNyBA
QAogLy8gKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFCiAvLyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKIAorQ0xBTkdfQ1hYX0xBTkdVQUdF
X1NUQU5EQVJEID0gZ251KysweDsKIENMQU5HX0NYWF9MSUJSQVJZID0gbGliYysrOwogQ0xBTkdf
V0FSTl9DWFgwWF9FWFRFTlNJT05TID0gTk87CiBERUJVR19JTkZPUk1BVElPTl9GT1JNQVQgPSBk
d2FyZi13aXRoLWRzeW07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFj
L1dlYkNvb2tpZU1hbmFnZXJQcm94eU1hYy5tbSBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9t
YWMvV2ViQ29va2llTWFuYWdlclByb3h5TWFjLm1tCmluZGV4IDZhMzEzNDY0NzJiOTVmNzE0MDgw
YmJiNTBkNTA0YmFkMDEzMmEzOGEuLjZmZDJmOWE3YmM3MzAxMjExZmUzMzZmYWUxYzBkODhkM2Ux
NTBjMjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvV2ViQ29va2ll
TWFuYWdlclByb3h5TWFjLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvV2Vi
Q29va2llTWFuYWdlclByb3h5TWFjLm1tCkBAIC0zMyw3ICszMyw3IEBAIHZvaWQgV2ViQ29va2ll
TWFuYWdlclByb3h5OjpwZXJzaXN0SFRUUENvb2tpZUFjY2VwdFBvbGljeShIVFRQQ29va2llQWNj
ZXB0UG9saWN5CiAgICAgLy8gRklYTUU6IFRoZSBzYW5kYm94IGFwcGVhcnMgdG8gcHJldmVudCBw
ZXJzaXN0aW5nIHRoZSBuZXcgcG9saWN5IHRvIGRpc2ssIHNvIHdlIG11c3Qgc2V0IHRoZQogICAg
IC8vIHBvbGljeSBpbiB0aGUgVUkgUHJvY2VzcyBhcyB3ZWxsIGFzIGluIHRoZSBXZWIgUHJvY2Vz
cyAodG8gbWFrZSBzdXJlIGl0IGdldHMgc2V0IG9uIGFueQogICAgIC8vIFByaXZhdGUgQnJvd3Np
bmcgQ29va2llIFN0b3JhZ2UpLgotICAgIFtbTlNIVFRQQ29va2llU3RvcmFnZSBzaGFyZWRIVFRQ
Q29va2llU3RvcmFnZV0gc2V0Q29va2llQWNjZXB0UG9saWN5OnBvbGljeV07CisgICAgW1tOU0hU
VFBDb29raWVTdG9yYWdlIHNoYXJlZEhUVFBDb29raWVTdG9yYWdlXSBzZXRDb29raWVBY2NlcHRQ
b2xpY3k6c3RhdGljX2Nhc3Q8TlNIVFRQQ29va2llQWNjZXB0UG9saWN5Pihwb2xpY3kpXTsKIH0K
IAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL0Nvb2tpZXMvbWFjL1dlYkNvb2tpZU1hbmFnZXJNYWMubW0gYi9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL0Nvb2tpZXMvbWFjL1dlYkNvb2tpZU1hbmFnZXJNYWMubW0KaW5kZXggZGFm
MzljZGM3Y2IzNDI5ZWQ1Yjg3ZDU3MWYwYjFiYjIxYTg0NzcxMC4uMTcyYjZiZmMwMDZkN2VjNjIx
ZmE4MWIzNTUxMjA1MDI3MDI4YjJlOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9Db29raWVzL21hYy9XZWJDb29raWVNYW5hZ2VyTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvQ29va2llcy9tYWMvV2ViQ29va2llTWFuYWdlck1hYy5tbQpAQCAtMzQs
NyArMzQsNyBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKIAogdm9pZCBXZWJDb29raWVNYW5hZ2VyOjpw
bGF0Zm9ybVNldEhUVFBDb29raWVBY2NlcHRQb2xpY3koSFRUUENvb2tpZUFjY2VwdFBvbGljeSBw
b2xpY3kpCiB7Ci0gICAgW1tOU0hUVFBDb29raWVTdG9yYWdlIHNoYXJlZEhUVFBDb29raWVTdG9y
YWdlXSBzZXRDb29raWVBY2NlcHRQb2xpY3k6cG9saWN5XTsKKyAgICBbW05TSFRUUENvb2tpZVN0
b3JhZ2Ugc2hhcmVkSFRUUENvb2tpZVN0b3JhZ2VdIHNldENvb2tpZUFjY2VwdFBvbGljeTpzdGF0
aWNfY2FzdDxOU0hUVFBDb29raWVBY2NlcHRQb2xpY3k+KHBvbGljeSldOwogCiAjaWYgVVNFKENG
VVJMU1RPUkFHRVNFU1NJT05TKQogICAgIGlmIChSZXRhaW5QdHI8Q0ZIVFRQQ29va2llU3RvcmFn
ZVJlZj4gY29va2llU3RvcmFnZSA9IGN1cnJlbnRDRkhUVFBDb29raWVTdG9yYWdlKCkpCmRpZmYg
LS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggN2IxM2M4Nzhj
MWZmNTE5NTAyYmZmZGEyNDA4ZGRmYzY4YWYyZGI3Yi4uNGZhMDQ0MDZkNDMwM2IzMGE0ZDczZjk2
Njg0MThhNWRlNTZmYzU3MiAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDEyLTEwLTI5ICBBbmRlcnMgQ2FybHNzb24g
IDxhbmRlcnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAgQnVpbGQgV2ViS2l0IGFzIEMrKzExIG9u
IE1hYworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAw
NzIwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRk
aXRpb25hbCBpbmZvcm1hdGlvbiBvZiB0aGUgY2hhbmdlIHN1Y2ggYXMgYXBwcm9hY2gsIHJhdGlv
bmFsZS4gUGxlYXNlIGFkZCBwZXItZnVuY3Rpb24gZGVzY3JpcHRpb25zIGJlbG93IChPT1BTISku
CisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9tYWMvQ29uZmlndXJhdGlvbnMvQmFzZS54Y2Nv
bmZpZzoKKyAgICAgICAgKiBNaW5pQnJvd3Nlci9Db25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmln
OgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzoK
KyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL0NvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6
CisKIDIwMTItMTAtMjggIE1hcmsgUm93ZSAgPG1yb3dlQGFwcGxlLmNvbT4KIAogICAgICAgICBT
aW1wbGlmeSBYY29kZSBjb25maWd1cmF0aW9uIHNldHRpbmdzIHRoYXQgdXNlZCB0byB2YXJ5IGJl
dHdlZW4gT1MgdmVyc2lvbnMuCmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9tYWMv
Q29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9D
b25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnCmluZGV4IDEwM2JmY2U5ZGMwNTA1MTBlMDFhMzc1
YjIzYTE3NzNhYjI0NTZlYmYuLmJlOTFmNWU1MDlmN2YxMWJlYTljMjlkNTliOTYwZWZjMWE2YWYy
ZDIgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9Db25maWd1cmF0aW9ucy9C
YXNlLnhjY29uZmlnCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9Db25maWd1cmF0aW9u
cy9CYXNlLnhjY29uZmlnCkBAIC0yMSw2ICsyMSw3IEBACiAvLyAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKIC8vIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuIAogCitDTEFOR19DWFhfTEFOR1VBR0VfU1RBTkRBUkQgPSBnbnUrKzB4OwogQ0xB
TkdfQ1hYX0xJQlJBUlkgPSBsaWJjKys7CiBDTEFOR19XQVJOX0NYWDBYX0VYVEVOU0lPTlMgPSBO
TzsKIEhFQURFUl9TRUFSQ0hfUEFUSFMgPSAkKEJVSUxUX1BST0RVQ1RTX0RJUikvdXNyL2xvY2Fs
L2luY2x1ZGUgRm9yd2FyZGluZ0hlYWRlcnMgbWFjL0ludGVybmFsSGVhZGVycyAkKE5FWFRfUk9P
VCkvdXNyL2xvY2FsL2luY2x1ZGUvV2ViQ29yZVRlc3RTdXBwb3J0ICR7U1JDUk9PVH0vLi4vLi4v
U291cmNlL0phdmFTY3JpcHRDb3JlL2ljdTsKZGlmZiAtLWdpdCBhL1Rvb2xzL01pbmlCcm93c2Vy
L0NvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWcgYi9Ub29scy9NaW5pQnJvd3Nlci9Db25maWd1
cmF0aW9ucy9CYXNlLnhjY29uZmlnCmluZGV4IGEyZjRiYjlkMGQ2Nzg3YTIwNjUzZTEyOTRjN2Ix
OWQyNzU0MzU4ZDQuLmM4MDFkNTgyZjIzNzkxYTkxODgzZDJmNWY1Njc3NzRhZDIwM2E5M2EgMTAw
NjQ0Ci0tLSBhL1Rvb2xzL01pbmlCcm93c2VyL0NvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWcK
KysrIGIvVG9vbHMvTWluaUJyb3dzZXIvQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZwpAQCAt
MjEsNiArMjEsNyBAQAogLy8gKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCiAvLyBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKIAorQ0xBTkdf
Q1hYX0xBTkdVQUdFX1NUQU5EQVJEID0gZ251KysweDsKIENMQU5HX0NYWF9MSUJSQVJZID0gbGli
YysrOwogREVCVUdfSU5GT1JNQVRJT05fRk9STUFUID0gZHdhcmYtd2l0aC1kc3ltOwogUFJFQklO
RElORyA9IE5PCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL0NvbmZpZ3VyYXRpb25z
L0Jhc2UueGNjb25maWcgYi9Ub29scy9UZXN0V2ViS2l0QVBJL0NvbmZpZ3VyYXRpb25zL0Jhc2Uu
eGNjb25maWcKaW5kZXggNTliOTc3NDg1ODFlNmRlYmQyOWMzM2VlYWNkNDI5ZGE1ZjRhOWM4Yy4u
MWUwMjlkNGViYzUxNDUxOWFmNzVjOWI0MDQ5ZDM4YmU2ODcwMjg3MiAxMDA2NDQKLS0tIGEvVG9v
bHMvVGVzdFdlYktpdEFQSS9Db25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnCisrKyBiL1Rvb2xz
L1Rlc3RXZWJLaXRBUEkvQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZwpAQCAtMjEsNiArMjEs
NyBAQAogLy8gKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFCiAvLyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogCitDTEFOR19DWFhfTEFOR1VB
R0VfU1RBTkRBUkQgPSBnbnUrKzB4OwogQ0xBTkdfQ1hYX0xJQlJBUlkgPSBsaWJjKys7CiBDTEFO
R19XQVJOX0NYWDBYX0VYVEVOU0lPTlMgPSBOTzsKIEhFQURFUl9TRUFSQ0hfUEFUSFMgPSAke0JV
SUxUX1BST0RVQ1RTX0RJUn0vdXNyL2xvY2FsL2luY2x1ZGUgJChXRUJDT1JFX1BSSVZBVEVfSEVB
REVSU19ESVIpL0ZvcndhcmRpbmdIZWFkZXJzICQoV0VCQ09SRV9QUklWQVRFX0hFQURFUlNfRElS
KS9pY3U7CmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0NvbmZpZ3VyYXRpb25z
L0Jhc2UueGNjb25maWcgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0NvbmZpZ3VyYXRpb25zL0Jh
c2UueGNjb25maWcKaW5kZXggY2U4YTlhNzYwNzIyMTNlMzk0MjM2ZjVkOWFiOWQ4NDRmYTVlNTYx
Ni4uZWY4N2ZmZTY2ODkxNmYyMWM0YzJiNzc3Y2MzNWQ1MmYyYmEyMzAzYyAxMDA2NDQKLS0tIGEv
VG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9Db25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnCisrKyBi
L1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZwpAQCAt
MjEsNiArMjEsNyBAQAogLy8gKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCiAvLyBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKIAorQ0xBTkdf
Q1hYX0xBTkdVQUdFX1NUQU5EQVJEID0gZ251KysweDsKIENMQU5HX0NYWF9MSUJSQVJZID0gbGli
YysrOwogQ0xBTkdfV0FSTl9DWFgwWF9FWFRFTlNJT05TID0gTk87CiBIRUFERVJfU0VBUkNIX1BB
VEhTID0gJChCVUlMVF9QUk9EVUNUU19ESVIpL3Vzci9sb2NhbC9pbmNsdWRlICQoV0VCQ09SRV9Q
UklWQVRFX0hFQURFUlNfRElSKS9Gb3J3YXJkaW5nSGVhZGVycyAke1NSQ1JPT1R9Ly4uLy4uL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9pY3UgJChORVhUX1JPT1QpL3Vzci9sb2NhbC9pbmNsdWRlL1dl
YkNvcmVUZXN0U3VwcG9ydDsK
</data>
<flag name="review"
          id="185232"
          type_id="1"
          status="+"
          setter="dbates"
    />
          </attachment>
      

    </bug>

</bugzilla>