<?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>79959</bug_id>
          
          <creation_ts>2012-02-29 16:49:31 -0800</creation_ts>
          <short_desc>[DRT] Remove PlainTextController implementations.</short_desc>
          <delta_ts>2012-03-07 00:44:19 -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>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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>78570</dependson>
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Kangil Han">kangil.han</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>gyuyoung.kim</cc>
    
    <cc>morrita</cc>
    
    <cc>tkent</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>568099</commentid>
    <comment_count>0</comment_count>
    <who name="Kangil Han">kangil.han</who>
    <bug_when>2012-02-29 16:49:31 -0800</bug_when>
    <thetext>PlainTextController usages in existing tests will be replaced by internals object by bug 78570.
So this patch will remove PlainTextController implementations to avoid further usage in new tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>570585</commentid>
    <comment_count>1</comment_count>
      <attachid>130097</attachid>
    <who name="Kangil Han">kangil.han</who>
    <bug_when>2012-03-05 05:16:22 -0800</bug_when>
    <thetext>Created attachment 130097
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>572311</commentid>
    <comment_count>2</comment_count>
      <attachid>130097</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2012-03-06 17:17:53 -0800</bug_when>
    <thetext>Comment on attachment 130097
Patch

Yay! Thanks for taking this, Kangil.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>572656</commentid>
    <comment_count>3</comment_count>
      <attachid>130097</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-07 00:44:14 -0800</bug_when>
    <thetext>Comment on attachment 130097
Patch

Clearing flags on attachment: 130097

Committed r110032: &lt;http://trac.webkit.org/changeset/110032&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>572657</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-07 00:44:19 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>130097</attachid>
            <date>2012-03-05 05:16:22 -0800</date>
            <delta_ts>2012-03-07 00:44:14 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-79959-20120305051621.patch</filename>
            <type>text/plain</type>
            <size>45524</size>
            <attacher name="Kangil Han">kangil.han</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA5NzA2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2d0
ay9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2d0ay9DaGFuZ2VMb2cKaW5kZXggNmZhOWE5YjQ2
YWMyYzZhNWFmNGI5MjhhOWQzNGYyM2YzMWRlYzFlMC4uNDg5YzY2NWUxOTQ5ZWY0ZWZkYjA1OTQz
ZmFhNGY0ZjRhN2EzOTk1NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9ndGsvQ2hhbmdlTG9n
CisrKyBiL1NvdXJjZS9XZWJLaXQvZ3RrL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDEy
LTAzLTA1ICBLYW5naWwgSGFuICA8a2FuZ2lsLmhhbkBzYW1zdW5nLmNvbT4KKworICAgICAgICBb
RFJUXSBSZW1vdmUgUGxhaW5UZXh0Q29udHJvbGxlciBpbXBsZW1lbnRhdGlvbnMuCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03OTk1OQorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFBsYWluVGV4dENvbnRyb2xs
ZXIgdXNhZ2VzIGluIGV4aXN0aW5nIHRlc3RzIGhhdmUgYmVlbgorICAgICAgICByZXBsYWNlZCBi
eSBpbnRlcm5hbHMgQVBJIGJ5IGJ1ZyA3ODU3MC4KKyAgICAgICAgU28gdGhpcyBwYXRjaCB3aWxs
IHJlbW92ZSBQbGFpblRleHRDb250cm9sbGVyIGltcGxlbWVudGF0aW9ucworICAgICAgICB0byBh
dm9pZCBmdXJ0aGVyIHVzYWdlIGluIG5ldyB0ZXN0cy4KKworICAgICAgICAqIFdlYkNvcmVTdXBw
b3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydEd0ay5jcHA6CisgICAgICAgICogV2ViQ29yZVN1cHBv
cnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0R3RrLmg6CisgICAgICAgIChEdW1wUmVuZGVyVHJlZVN1
cHBvcnRHdGspOgorCiAyMDEyLTAyLTE4ICBNYXJ0aW4gUm9iaW5zb24gIDxtcm9iaW5zb25AaWdh
bGlhLmNvbT4KIAogICAgICAgICBbR1RLXSBbQUNdIEdlbmVyYWxpemUgV2luZG93Q29udGV4dEdM
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3F0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQv
cXQvQ2hhbmdlTG9nCmluZGV4IDlmNzc1M2I5NWVhNDIxZjZiMWJjZjZkZDczNjgwMjRkN2IxYWI1
ZGEuLjgwZThjM2Q0YTA3ZTA0YTBmMmU4M2Q2YjZiOWNkMjQ1ZGJmNWJkYzkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTItMDMtMDUgIEthbmdpbCBIYW4gIDxrYW5naWwuaGFu
QHNhbXN1bmcuY29tPgorCisgICAgICAgIFtEUlRdIFJlbW92ZSBQbGFpblRleHRDb250cm9sbGVy
IGltcGxlbWVudGF0aW9ucy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTc5OTU5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgUGxhaW5UZXh0Q29udHJvbGxlciB1c2FnZXMgaW4gZXhpc3RpbmcgdGVzdHMgaGF2
ZSBiZWVuCisgICAgICAgIHJlcGxhY2VkIGJ5IGludGVybmFscyBBUEkgYnkgYnVnIDc4NTcwLgor
ICAgICAgICBTbyB0aGlzIHBhdGNoIHdpbGwgcmVtb3ZlIFBsYWluVGV4dENvbnRyb2xsZXIgaW1w
bGVtZW50YXRpb25zCisgICAgICAgIHRvIGF2b2lkIGZ1cnRoZXIgdXNhZ2UgaW4gbmV3IHRlc3Rz
LgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQuY3Bw
OgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydFF0Lmg6CisK
IDIwMTItMDMtMDMgIFNpbW9uIEhhdXNtYW5uICA8c2ltb24uaGF1c21hbm5Abm9raWEuY29tPgog
CiAgICAgICAgIFtRdF0gRml4IHN0YXRpY19saWJzX2FzX3NoYXJlZCBidWlsZApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0
R3RrLmNwcCBiL1NvdXJjZS9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVl
U3VwcG9ydEd0ay5jcHAKaW5kZXggOGU2ZTI2YjE0ODc2MDI2YzExODU5MTU4OWIxY2Q4MTgxY2Uz
ZTRmNi4uOWU3M2MyYTQyYTZhYWRhNzJkY2FhOTBmMzY1YTk1ZmY3YmQ1NmMzOCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0
R3RrLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2d0ay9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVy
VHJlZVN1cHBvcnRHdGsuY3BwCkBAIC00Niw3ICs0Niw2IEBACiAjaW5jbHVkZSAiSlNFbGVtZW50
LmgiCiAjaW5jbHVkZSAiSlNMb2NrLmgiCiAjaW5jbHVkZSAiSlNOb2RlTGlzdC5oIgotI2luY2x1
ZGUgIkpTUmFuZ2UuaCIKICNpbmNsdWRlICJKU1ZhbHVlLmgiCiAjaW5jbHVkZSAiTm9kZUxpc3Qu
aCIKICNpbmNsdWRlICJQYWdlR3JvdXAuaCIKQEAgLTYwLDcgKzU5LDYgQEAKICNpbmNsdWRlICJT
ZXR0aW5ncy5oIgogI2luY2x1ZGUgIlRleHRJdGVyYXRvci5oIgogI2luY2x1ZGUgIldlYktpdEFj
Y2Vzc2libGVXcmFwcGVyQXRrLmgiCi0jaW5jbHVkZSAiV2ViS2l0RE9NUmFuZ2VQcml2YXRlLmgi
CiAjaW5jbHVkZSAiV2ViS2l0TXV0YXRpb25PYnNlcnZlci5oIgogI2luY2x1ZGUgIldvcmtlclRo
cmVhZC5oIgogI2luY2x1ZGUgIndlYmtpdGdsb2JhbHNwcml2YXRlLmgiCkBAIC0xMzEsMjAgKzEy
OSw2IEBAIEpTVmFsdWVSZWYgRHVtcFJlbmRlclRyZWVTdXBwb3J0R3RrOjpub2Rlc0Zyb21SZWN0
KEpTQ29udGV4dFJlZiBjb250ZXh0LCBKU1ZhbHVlCiAgICAgcmV0dXJuIHRvUmVmKGV4ZWMsIHRv
SlMoZXhlYywganNEb2N1bWVudC0+Z2xvYmFsT2JqZWN0KCksIG5vZGVzLmdldCgpKSk7CiB9CiAK
LVdlYktpdERPTVJhbmdlKiBEdW1wUmVuZGVyVHJlZVN1cHBvcnRHdGs6OmpzVmFsdWVUb0RPTVJh
bmdlKEpTQ29udGV4dFJlZiBjb250ZXh0LCBKU1ZhbHVlUmVmIHZhbHVlKQotewotICAgIGlmICgh
dmFsdWUpCi0gICAgICAgIHJldHVybiAwOwotCi0gICAgSlNMb2NrIGxvY2soU2lsZW5jZUFzc2Vy
dGlvbnNPbmx5KTsKLSAgICBFeGVjU3RhdGUqIGV4ZWMgPSB0b0pTKGNvbnRleHQpOwotCi0gICAg
UmFuZ2UqIHJhbmdlID0gdG9SYW5nZSh0b0pTKGV4ZWMsIHZhbHVlKSk7Ci0gICAgaWYgKCFyYW5n
ZSkKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAgcmV0dXJuIGtpdChyYW5nZSk7Ci19Ci0KIC8qKgog
ICogZ2V0RnJhbWVDaGlsZHJlbjoKICAqIEBmcmFtZTogYSAjV2ViS2l0V2ViRnJhbWUKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3Vw
cG9ydEd0ay5oIGIvU291cmNlL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRy
ZWVTdXBwb3J0R3RrLmgKaW5kZXggMDJiODBjNDc2MGFhMWMyNzg1MzdkMjVjYTg2NDg2NjE1ZDJi
Y2ZjYy4uYmU3N2EzZTFlNDcwOWNhOGFiMGMxZTY5OTI3NzFhMzdkYmQ3MjUyZCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0
R3RrLmgKKysrIGIvU291cmNlL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRy
ZWVTdXBwb3J0R3RrLmgKQEAgLTIzLDcgKzIzLDYgQEAKICNpbmNsdWRlIDxhdGsvYXRrLmg+CiAj
aW5jbHVkZSA8Z2xpYi5oPgogI2luY2x1ZGUgPHdlYmtpdC93ZWJraXRkZWZpbmVzLmg+Ci0jaW5j
bHVkZSA8d2Via2l0L3dlYmtpdGRvbWRlZmluZXMuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9DU3Ry
aW5nLmg+CiAKIG5hbWVzcGFjZSBXZWJLaXQgewpAQCAtNTksOCArNTgsNiBAQCBwdWJsaWM6CiAK
ICAgICBzdGF0aWMgdm9pZCBjbGVhck9wZW5lcihXZWJLaXRXZWJGcmFtZSopOwogCi0gICAgc3Rh
dGljIFdlYktpdERPTVJhbmdlKiBqc1ZhbHVlVG9ET01SYW5nZShKU0NvbnRleHRSZWYsIEpTVmFs
dWVSZWYpOwotCiAgICAgLy8gRklYTUU6IE1vdmUgdGhlc2UgdG8gd2Via2l0d2ViZnJhbWUuaCBv
bmNlIHRoZWlyIEFQSSBoYXMgYmVlbiBkaXNjdXNzZWQuCiAgICAgc3RhdGljIEdTTGlzdCogZ2V0
RnJhbWVDaGlsZHJlbihXZWJLaXRXZWJGcmFtZSopOwogICAgIHN0YXRpYyBXVEY6OkNTdHJpbmcg
Z2V0SW5uZXJUZXh0KFdlYktpdFdlYkZyYW1lKik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L3F0L1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydFF0LmNwcCBiL1NvdXJjZS9X
ZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQuY3BwCmluZGV4
IDkyYzk4Y2QzN2FiNzkyMzU3ODljMWM1NTVmNmE4ZTMwZTA3NTBhMWQuLjQ1N2I0OWUyNjUwNWVi
OGIyNTA0NzEyNWM5YTIxYzBkODQ2YjA0ZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvcXQv
V2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQuY3BwCkBAIC05
OTIsMTUgKzk5Miw2IEBAIHZvaWQgRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQ6OnNpbXVsYXRlRGVz
a3RvcE5vdGlmaWNhdGlvbkNsaWNrKGNvbnN0IFFTdHJpbmcmIHRpCiAjZW5kaWYKIH0KIAotUVN0
cmluZyBEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdDo6cGxhaW5UZXh0KGNvbnN0IFFWYXJpYW50JiBy
YW5nZSkKLXsKLSAgICBRTWFwPFFTdHJpbmcsIFFWYXJpYW50PiBtYXAgPSByYW5nZS50b01hcCgp
OwotICAgIFFWYXJpYW50IHN0YXJ0Q29udGFpbmVyICA9IG1hcC52YWx1ZShRTGF0aW4xU3RyaW5n
KCJzdGFydENvbnRhaW5lciIpKTsKLSAgICBtYXAgPSBzdGFydENvbnRhaW5lci50b01hcCgpOwot
Ci0gICAgcmV0dXJuIG1hcC52YWx1ZShRTGF0aW4xU3RyaW5nKCJpbm5lclRleHQiKSkudG9TdHJp
bmcoKTsKLX0KLQogUVZhcmlhbnRMaXN0IER1bXBSZW5kZXJUcmVlU3VwcG9ydFF0Ojpub2Rlc0Zy
b21SZWN0KGNvbnN0IFFXZWJFbGVtZW50JiBkb2N1bWVudCwgaW50IHgsIGludCB5LCB1bnNpZ25l
ZCB0b3AsIHVuc2lnbmVkIHJpZ2h0LCB1bnNpZ25lZCBib3R0b20sIHVuc2lnbmVkIGxlZnQsIGJv
b2wgaWdub3JlQ2xpcHBpbmcpCiB7CiAgICAgUVZhcmlhbnRMaXN0IHJlczsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQu
aCBiL1NvdXJjZS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0
UXQuaAppbmRleCA0YjAzMTQzNTBiMDIzMzc2ODBjMWUxN2VjMDMyNjM1ZmJmYmUyYjE2Li5kOTQ5
ZTUxNTQzNzQwMTEwZDQ1OTA0YzM5NzU4ZDM3ZGE5YTAyOGFkIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydFF0LmgKKysrIGIv
U291cmNlL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5o
CkBAIC0xNjcsNyArMTY3LDYgQEAgcHVibGljOgogCiAgICAgc3RhdGljIFFTdHJpbmcgbWFya2Vy
VGV4dEZvckxpc3RJdGVtKGNvbnN0IFFXZWJFbGVtZW50JiBsaXN0SXRlbSk7CiAgICAgc3RhdGlj
IFFWYXJpYW50TWFwIGNvbXB1dGVkU3R5bGVJbmNsdWRpbmdWaXNpdGVkSW5mbyhjb25zdCBRV2Vi
RWxlbWVudCYgZWxlbWVudCk7Ci0gICAgc3RhdGljIFFTdHJpbmcgcGxhaW5UZXh0KGNvbnN0IFFW
YXJpYW50JiBybmcpOwogCiAgICAgc3RhdGljIHZvaWQgZHVtcEZyYW1lTG9hZGVyKGJvb2wgYik7
CiAgICAgc3RhdGljIHZvaWQgZHVtcFByb2dyZXNzRmluaXNoZWRDYWxsYmFjayhib29sKTsKZGlm
ZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA2N2I3ZGIy
NjdkYjEyZjlhYjUyNDFhN2U5MTk5MmVlMzZjOTdmNjgyLi4zMmY2MmMzOTc4NWFmYjJlODZiMjAw
ZDA4YjI5ZWU3MTA3NGVlMDgwIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9v
bHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDIgQEAKKzIwMTItMDMtMDUgIEthbmdpbCBIYW4gIDxr
YW5naWwuaGFuQHNhbXN1bmcuY29tPgorCisgICAgICAgIFtEUlRdIFJlbW92ZSBQbGFpblRleHRD
b250cm9sbGVyIGltcGxlbWVudGF0aW9ucy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTc5OTU5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgUGxhaW5UZXh0Q29udHJvbGxlciB1c2FnZXMgaW4gZXhpc3Rpbmcg
dGVzdHMgaGF2ZSBiZWVuCisgICAgICAgIHJlcGxhY2VkIGJ5IGludGVybmFscyBBUEkgYnkgYnVn
IDc4NTcwLgorICAgICAgICBTbyB0aGlzIHBhdGNoIHdpbGwgcmVtb3ZlIFBsYWluVGV4dENvbnRy
b2xsZXIgaW1wbGVtZW50YXRpb25zCisgICAgICAgIHRvIGF2b2lkIGZ1cnRoZXIgdXNhZ2UgaW4g
bmV3IHRlc3RzLgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvRHVtcFJlbmRlclRyZWUuZ3lw
aToKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9EdW1wUmVuZGVyVHJlZS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1BsYWluVGV4
dENvbnRyb2xsZXIuY3BwOiBSZW1vdmVkLgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2Nocm9t
aXVtL1BsYWluVGV4dENvbnRyb2xsZXIuaDogUmVtb3ZlZC4KKyAgICAgICAgKiBEdW1wUmVuZGVy
VHJlZS9jaHJvbWl1bS9UZXN0U2hlbGwuY3BwOgorICAgICAgICAoVGVzdFNoZWxsOjpUZXN0U2hl
bGwpOgorICAgICAgICAoVGVzdFNoZWxsOjpiaW5kSlNPYmplY3RzVG9XaW5kb3cpOgorICAgICAg
ICAqIER1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RTaGVsbC5oOgorICAgICAgICAoVGVzdFNo
ZWxsKToKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9ndGsvRHVtcFJlbmRlclRyZWUuY3BwOgor
ICAgICAgICAod2ViVmlld1dpbmRvd09iamVjdENsZWFyZWQpOgorICAgICAgICAqIER1bXBSZW5k
ZXJUcmVlL2d0ay9QbGFpblRleHRDb250cm9sbGVyLmNwcDogUmVtb3ZlZC4KKyAgICAgICAgKiBE
dW1wUmVuZGVyVHJlZS9ndGsvUGxhaW5UZXh0Q29udHJvbGxlci5oOiBSZW1vdmVkLgorICAgICAg
ICAqIER1bXBSZW5kZXJUcmVlL21hYy9GcmFtZUxvYWREZWxlZ2F0ZS5tbToKKyAgICAgICAgKC1b
RnJhbWVMb2FkRGVsZWdhdGUgZGlkQ2xlYXJXaW5kb3dPYmplY3RJblN0YW5kYXJkV29ybGRGb3JG
cmFtZTpdKToKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9tYWMvUGxhaW5UZXh0Q29udHJvbGxl
ci5oOiBSZW1vdmVkLgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL21hYy9QbGFpblRleHRDb250
cm9sbGVyLm1tOiBSZW1vdmVkLgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5k
ZXJUcmVlLnBybzoKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkR1bXBSZW5kZXJUcmVlOjpEdW1wUmVuZGVyVHJlZSk6
CisgICAgICAgIChXZWJDb3JlOjpEdW1wUmVuZGVyVHJlZTo6aW5pdEpTT2JqZWN0cyk6CisgICAg
ICAgICogRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWVRdC5oOgorICAgICAgICAoRHVt
cFJlbmRlclRyZWUpOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3F0L1BsYWluVGV4dENvbnRy
b2xsZXJRdC5jcHA6IFJlbW92ZWQuCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvcXQvUGxhaW5U
ZXh0Q29udHJvbGxlclF0Lmg6IFJlbW92ZWQuCisgICAgICAgICogR05VbWFrZWZpbGUuYW06CisK
IDIwMTItMDMtMDQgIENoYXJsZXMgV2VpICA8Y2hhcmxlcy53ZWlAdG9yY2htb2JpbGUuY29tLmNu
PgogCiAgICAgICAgIFVucmV2aWV3ZWQsIEFkZCBteXNlbGYgdG8gY29tbWl0dGVyIGxpc3QuCmRp
ZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9EdW1wUmVuZGVyVHJlZS5neXBpIGIvVG9v
bHMvRHVtcFJlbmRlclRyZWUvRHVtcFJlbmRlclRyZWUuZ3lwaQppbmRleCAwNzM2YzAzODFiMzRj
ODhlMzA3ZTVmZmYzZDU0ZmQ2OTIwZjg3NTBlLi5iNDlhMDg0YjdiY2M1ODhiY2Q4MTI5NzVhOGU1
YmY4YTgzMDFkNTkzIDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9EdW1wUmVuZGVy
VHJlZS5neXBpCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL0R1bXBSZW5kZXJUcmVlLmd5cGkK
QEAgLTI2LDggKzI2LDYgQEAKICAgICAgICAgICAgICdjaHJvbWl1bS9Nb2NrV2ViU3BlZWNoSW5w
dXRDb250cm9sbGVyLmgnLAogICAgICAgICAgICAgJ2Nocm9taXVtL05vdGlmaWNhdGlvblByZXNl
bnRlci5oJywKICAgICAgICAgICAgICdjaHJvbWl1bS9Ob3RpZmljYXRpb25QcmVzZW50ZXIuY3Bw
JywKLSAgICAgICAgICAgICdjaHJvbWl1bS9QbGFpblRleHRDb250cm9sbGVyLmNwcCcsCi0gICAg
ICAgICAgICAnY2hyb21pdW0vUGxhaW5UZXh0Q29udHJvbGxlci5oJywKICAgICAgICAgICAgICdj
aHJvbWl1bS9UYXNrLmgnLAogICAgICAgICAgICAgJ2Nocm9taXVtL1Rhc2suY3BwJywKICAgICAg
ICAgICAgICdjaHJvbWl1bS9UZXN0RXZlbnRQcmludGVyLmgnLApkaWZmIC0tZ2l0IGEvVG9vbHMv
RHVtcFJlbmRlclRyZWUvRHVtcFJlbmRlclRyZWUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBi
L1Rvb2xzL0R1bXBSZW5kZXJUcmVlL0R1bXBSZW5kZXJUcmVlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oKaW5kZXggMmYxMjRlN2I1OWIzNzZjMThiOTk3YmE5MzZkYTkyNDgxZGQxNWJjZC4uNTJj
OTNkZmNjYjE1ZDYzN2Q3ZWFhODFhZjMyYmUzMTIxNGQ5ZWE3MCAxMDA2NDQKLS0tIGEvVG9vbHMv
RHVtcFJlbmRlclRyZWUvRHVtcFJlbmRlclRyZWUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagor
KysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9EdW1wUmVuZGVyVHJlZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qCkBAIC04MCw4ICs4MCw2IEBACiAJCTgwMDQ1QUVEMTQ3NzE4RTcwMDgyOTBBOCAv
KiBBY2Nlc3NpYmlsaXR5Tm90aWZpY2F0aW9uSGFuZGxlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODAwNDVBRUIxNDc3MThFNzAwODI5MEE4IC8qIEFj
Y2Vzc2liaWxpdHlOb3RpZmljYXRpb25IYW5kbGVyLmggKi87IH07CiAJCTgwMDQ1QUVFMTQ3NzE4
RTcwMDgyOTBBOCAvKiBBY2Nlc3NpYmlsaXR5Tm90aWZpY2F0aW9uSGFuZGxlci5tbSBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgwMDQ1QUVDMTQ3NzE4RTcw
MDgyOTBBOCAvKiBBY2Nlc3NpYmlsaXR5Tm90aWZpY2F0aW9uSGFuZGxlci5tbSAqLzsgfTsKIAkJ
ODQ2NUUyQzcwRkZBOERGMjAwM0I4MzQyIC8qIFBpeGVsRHVtcFN1cHBvcnQuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODQ2NUUyQzYwRkZBOERGMjAw
M0I4MzQyIC8qIFBpeGVsRHVtcFN1cHBvcnQuY3BwICovOyB9OwotCQk5MzNCRjVBQjBGOTNGQTVD
MDAwRjA0NDEgLyogUGxhaW5UZXh0Q29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTMzQkY1QTkwRjkzRkE1QzAwMEYwNDQxIC8qIFBsYWlu
VGV4dENvbnRyb2xsZXIuaCAqLzsgfTsKLQkJOTMzQkY1QUMwRjkzRkE1QzAwMEYwNDQxIC8qIFBs
YWluVGV4dENvbnRyb2xsZXIubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA5MzNCRjVBQTBGOTNGQTVDMDAwRjA0NDEgLyogUGxhaW5UZXh0Q29udHJvbGxl
ci5tbSAqLzsgfTsKIAkJOTM0MDk5NEMwODU0MENBRTAwN0YzQkM4IC8qIER1bXBSZW5kZXJUcmVl
UHJlZml4LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAz
MkE3MEFBQjAzNzA1RTFGMDBDOTE3ODMgLyogRHVtcFJlbmRlclRyZWVQcmVmaXguaCAqLzsgfTsK
IAkJOTM0MDk5NTEwODU0MENBRTAwN0YzQkM4IC8qIFdlYktpdC5mcmFtZXdvcmsgaW4gRnJhbWV3
b3JrcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzM1NDM1RjAzRDc1NTAy
MDA4NjM1Q0UgLyogV2ViS2l0LmZyYW1ld29yayAqLzsgfTsKIAkJQTgxNzA5MDAwOEIxNjNFRjAw
Q0NCOUZCIC8qIENvY29hLmZyYW1ld29yayBpbiBGcmFtZXdvcmtzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEE4NEY2MDg5MDhCMTM2REEwMEU5NzQ1RiAvKiBDb2NvYS5mcmFt
ZXdvcmsgKi87IH07CkBAIC0yNjQsOCArMjYyLDYgQEAKIAkJODAwNDVBRUMxNDc3MThFNzAwODI5
MEE4IC8qIEFjY2Vzc2liaWxpdHlOb3RpZmljYXRpb25IYW5kbGVyLm1tICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAub2JqY3BwOyBuYW1lID0gQWNjZXNzaWJpbGl0eU5vdGlmaWNhdGlvbkhhbmRs
ZXIubW07IHBhdGggPSBtYWMvQWNjZXNzaWJpbGl0eU5vdGlmaWNhdGlvbkhhbmRsZXIubW07IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTg0NjVFMkM2MEZGQThERjIwMDNCODM0MiAvKiBQ
aXhlbER1bXBTdXBwb3J0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBQaXhlbER1bXBTdXBwb3J0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTMz
NTQzNUYwM0Q3NTUwMjAwODYzNUNFIC8qIFdlYktpdC5mcmFtZXdvcmsgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB3cmFwcGVyLmZyYW1ld29yazsgcGF0
aCA9IFdlYktpdC5mcmFtZXdvcms7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07
Ci0JCTkzM0JGNUE5MEY5M0ZBNUMwMDBGMDQ0MSAvKiBQbGFpblRleHRDb250cm9sbGVyLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFBsYWluVGV4dENvbnRyb2xsZXIuaDsgcGF0
aCA9IG1hYy9QbGFpblRleHRDb250cm9sbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
Ci0JCTkzM0JGNUFBMEY5M0ZBNUMwMDBGMDQ0MSAvKiBQbGFpblRleHRDb250cm9sbGVyLm1tICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBuYW1lID0gUGxhaW5UZXh0Q29udHJvbGxl
ci5tbTsgcGF0aCA9IG1hYy9QbGFpblRleHRDb250cm9sbGVyLm1tOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk5MzQwOTk1NDA4NTQwQ0FGMDA3RjNCQzggLyogRHVtcFJlbmRlclRyZWUg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZXhwbGljaXRGaWxlVHlwZSA9ICJjb21waWxl
ZC5tYWNoLW8uZXhlY3V0YWJsZSI7IGluY2x1ZGVJbkluZGV4ID0gMDsgcGF0aCA9IER1bXBSZW5k
ZXJUcmVlOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OwogCQlBODAzRkY3NDA5
Q0FBRDA4MDA5QjJBMzcgLyogRHVtcFJlbmRlclRyZWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBleHBsaWNpdEZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuaDsgZmlsZUVuY29kaW5n
ID0gNDsgcGF0aCA9IER1bXBSZW5kZXJUcmVlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCUE4MTcwOTAzMDhCMTY0RDMwMENDQjlGQiAvKiBKYXZhU2NyaXB0Q29yZS5mcmFtZXdvcmsg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB3cmFwcGVy
LmZyYW1ld29yazsgcGF0aCA9IEphdmFTY3JpcHRDb3JlLmZyYW1ld29yazsgc291cmNlVHJlZSA9
IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKQEAgLTQ2OSw4ICs0NjUsNiBAQAogCQkJCUJDQTE4QjZF
MEM5QjA4REIwMDExNDM2OSAvKiBOYXZpZ2F0aW9uQ29udHJvbGxlci5tICovLAogCQkJCUJDQTE4
QjJGMEM5QjAxQjQwMDExNDM2OSAvKiBPYmpDQ29udHJvbGxlci5oICovLAogCQkJCUJDQTE4QjMw
MEM5QjAxQjQwMDExNDM2OSAvKiBPYmpDQ29udHJvbGxlci5tICovLAotCQkJCTkzM0JGNUE5MEY5
M0ZBNUMwMDBGMDQ0MSAvKiBQbGFpblRleHRDb250cm9sbGVyLmggKi8sCi0JCQkJOTMzQkY1QUEw
RjkzRkE1QzAwMEYwNDQxIC8qIFBsYWluVGV4dENvbnRyb2xsZXIubW0gKi8sCiAJCQkJQkNBMThC
M0EwQzlCMDI0OTAwMTE0MzY5IC8qIFRleHRJbnB1dENvbnRyb2xsZXIuaCAqLywKIAkJCQlCQ0Ex
OEI0ODBDOUIwMkM0MDAxMTQzNjkgLyogVGV4dElucHV0Q29udHJvbGxlci5tICovLAogCQkJKTsK
QEAgLTY3Miw3ICs2NjYsNiBAQAogCQkJCUJDQTE4QjdGMEM5QjA4RjEwMDExNDM2OSAvKiBPYmpD
UGx1Z2luRnVuY3Rpb24uaCBpbiBIZWFkZXJzICovLAogCQkJCUJDQjI4NEM3MENGQTgzQzQwMDdF
NTMzRSAvKiBQaXhlbER1bXBTdXBwb3J0LmggaW4gSGVhZGVycyAqLywKIAkJCQlCQ0IyODREMDBD
RkE4M0NDMDA3RTUzM0UgLyogUGl4ZWxEdW1wU3VwcG9ydENHLmggaW4gSGVhZGVycyAqLywKLQkJ
CQk5MzNCRjVBQjBGOTNGQTVDMDAwRjA0NDEgLyogUGxhaW5UZXh0Q29udHJvbGxlci5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJQkNBMThCNjUwQzlCMDhDMjAwMTE0MzY5IC8qIFBvbGljeURlbGVnYXRl
LmggaW4gSGVhZGVycyAqLywKIAkJCQlCQ0ExOEI2NzBDOUIwOEMyMDAxMTQzNjkgLyogUmVzb3Vy
Y2VMb2FkRGVsZWdhdGUuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDQTE4QjNDMEM5QjAyNDkwMDEx
NDM2OSAvKiBUZXh0SW5wdXRDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKQEAgLTg3Miw3ICs4
NjUsNiBAQAogCQkJCTg0NjVFMkM3MEZGQThERjIwMDNCODM0MiAvKiBQaXhlbER1bXBTdXBwb3J0
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJDQjI4NENEMENGQTgzQzgwMDdFNTMzRSAvKiBQaXhl
bER1bXBTdXBwb3J0Q0cuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNCMjg0RDYwQ0ZBODNEMTAw
N0U1MzNFIC8qIFBpeGVsRHVtcFN1cHBvcnRNYWMubW0gaW4gU291cmNlcyAqLywKLQkJCQk5MzNC
RjVBQzBGOTNGQTVDMDAwRjA0NDEgLyogUGxhaW5UZXh0Q29udHJvbGxlci5tbSBpbiBTb3VyY2Vz
ICovLAogCQkJCUJDQTE4QjY2MEM5QjA4QzIwMDExNDM2OSAvKiBQb2xpY3lEZWxlZ2F0ZS5tbSBp
biBTb3VyY2VzICovLAogCQkJCUJDQTE4QjY4MEM5QjA4QzIwMDExNDM2OSAvKiBSZXNvdXJjZUxv
YWREZWxlZ2F0ZS5tbSBpbiBTb3VyY2VzICovLAogCQkJCUJDQTE4QjQ5MEM5QjAyQzQwMDExNDM2
OSAvKiBUZXh0SW5wdXRDb250cm9sbGVyLm0gaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1Rv
b2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1BsYWluVGV4dENvbnRyb2xsZXIuY3BwIGIvVG9v
bHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vUGxhaW5UZXh0Q29udHJvbGxlci5jcHAKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDcyODdjMmM4Mzk2YTAxZWNkMmVmMzkzZDFlYTAzYTVm
ZDI4M2JkMjkuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEv
VG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vUGxhaW5UZXh0Q29udHJvbGxlci5jcHAKKysr
IC9kZXYvbnVsbApAQCAtMSw3OSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEwIEdv
b2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDkgUGF3
ZWwgSGFqZGFuIChwaGFqZGFuLmpyQGNocm9taXVtLm9yZykKLSAqCi0gKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucyBhcmUKLSAqIG1ldDoKLSAqCi0gKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICog
ICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZQotICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgotICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQotICogZGlzdHJpYnV0aW9uLgotICogICAg
ICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwot
ICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0
cyBkZXJpdmVkIGZyb20KLSAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3
cml0dGVuIHBlcm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBU
SEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwotICogIkFTIElTIiBBTkQgQU5Z
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKLSAqIExJ
TUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUgotICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKLSAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAotICogU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAot
ICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsCi0gKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5j
bHVkZSAiUGxhaW5UZXh0Q29udHJvbGxlci5oIgotCi0jaW5jbHVkZSAiVGVzdFNoZWxsLmgiCi0j
aW5jbHVkZSAiV2ViQmluZGluZ3MuaCIKLSNpbmNsdWRlICJXZWJSYW5nZS5oIgotI2luY2x1ZGUg
InBsYXRmb3JtL1dlYlN0cmluZy5oIgotCi11c2luZyBuYW1lc3BhY2UgV2ViS2l0OwotCi1QbGFp
blRleHRDb250cm9sbGVyOjpQbGFpblRleHRDb250cm9sbGVyKCkKLXsKLSAgICAvLyBJbml0aWFs
aXplIHRoZSBtYXAgdGhhdCBhc3NvY2lhdGVzIG1ldGhvZHMgb2YgdGhpcyBjbGFzcyB3aXRoIHRo
ZSBuYW1lcwotICAgIC8vIHRoZXkgd2lsbCB1c2Ugd2hlbiBjYWxsZWQgYnkgSmF2YVNjcmlwdC4g
VGhlIGFjdHVhbCBiaW5kaW5nIG9mIHRob3NlCi0gICAgLy8gbmFtZXMgdG8gdGhlaXIgbWV0aG9k
cyB3aWxsIGJlIGRvbmUgYnkgY2FsbGluZyBiaW5kVG9KYXZhU2NyaXB0KCkgKGRlZmluZWQKLSAg
ICAvLyBieSBDcHBCb3VuZENsYXNzLCB0aGUgcGFyZW50IHRvIFBsYWluVGV4dENvbnRyb2xsZXIp
LgotICAgIGJpbmRNZXRob2QoInBsYWluVGV4dCIsICZQbGFpblRleHRDb250cm9sbGVyOjpwbGFp
blRleHQpOwotCi0gICAgLy8gVGhlIGZhbGxiYWNrIG1ldGhvZCBpcyBjYWxsZWQgd2hlbiBhbiB1
bmtub3duIG1ldGhvZCBpcyBpbnZva2VkLgotICAgIGJpbmRGYWxsYmFja01ldGhvZCgmUGxhaW5U
ZXh0Q29udHJvbGxlcjo6ZmFsbGJhY2tNZXRob2QpOwotfQotCi12b2lkIFBsYWluVGV4dENvbnRy
b2xsZXI6OnBsYWluVGV4dChjb25zdCBDcHBBcmd1bWVudExpc3QmIGFyZ3VtZW50cywgQ3BwVmFy
aWFudCogcmVzdWx0KQotewotICAgIHJlc3VsdC0+c2V0TnVsbCgpOwotCi0gICAgaWYgKGFyZ3Vt
ZW50cy5zaXplKCkgPCAxIHx8ICFhcmd1bWVudHNbMF0uaXNPYmplY3QoKSkKLSAgICAgICAgcmV0
dXJuOwotCi0gICAgLy8gQ2hlY2sgdGhhdCBwYXNzZWQtaW4gb2JqZWN0IGlzLCBpbiBmYWN0LCBh
IHJhbmdlLgotICAgIE5QT2JqZWN0KiBucG9iamVjdCA9IE5QVkFSSUFOVF9UT19PQkpFQ1QoYXJn
dW1lbnRzWzBdKTsKLSAgICBpZiAoIW5wb2JqZWN0KQotICAgICAgICByZXR1cm47Ci0gICAgV2Vi
UmFuZ2UgcmFuZ2U7Ci0gICAgaWYgKCFXZWJCaW5kaW5nczo6Z2V0UmFuZ2UobnBvYmplY3QsICZy
YW5nZSkpCi0gICAgICAgIHJldHVybjsKLQotICAgIC8vIEV4dHJhY3QgdGhlIHRleHQgdXNpbmcg
dGhlIFJhbmdlJ3MgdGV4dCgpIG1ldGhvZAotICAgIFdlYlN0cmluZyB0ZXh0ID0gcmFuZ2UudG9Q
bGFpblRleHQoKTsKLSAgICByZXN1bHQtPnNldCh0ZXh0LnV0ZjgoKSk7Ci19Ci0KLXZvaWQgUGxh
aW5UZXh0Q29udHJvbGxlcjo6ZmFsbGJhY2tNZXRob2QoY29uc3QgQ3BwQXJndW1lbnRMaXN0Jiwg
Q3BwVmFyaWFudCogcmVzdWx0KQotewotICAgIHByaW50ZigiQ09OU09MRSBNRVNTQUdFOiBKYXZh
U2NyaXB0IEVSUk9SOiB1bmtub3duIG1ldGhvZCBjYWxsZWQgb24gUGxhaW5UZXh0Q29udHJvbGxl
clxuIik7Ci0gICAgcmVzdWx0LT5zZXROdWxsKCk7Ci19Ci0KZGlmZiAtLWdpdCBhL1Rvb2xzL0R1
bXBSZW5kZXJUcmVlL2Nocm9taXVtL1BsYWluVGV4dENvbnRyb2xsZXIuaCBiL1Rvb2xzL0R1bXBS
ZW5kZXJUcmVlL2Nocm9taXVtL1BsYWluVGV4dENvbnRyb2xsZXIuaApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggM2QzYTA0YzYxYjYzMDE4NDQ3MDNhODQ4ZDNkYTViYWYyNmJmMGYzYy4u
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Ub29scy9EdW1w
UmVuZGVyVHJlZS9jaHJvbWl1bS9QbGFpblRleHRDb250cm9sbGVyLmgKKysrIC9kZXYvbnVsbApA
QCAtMSw1MiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCi0g
KiBtZXQ6Ci0gKgotICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqICAgICAqIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKLSAqIGNvcHlyaWdo
dCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIKLSAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUKLSAqIGRpc3RyaWJ1dGlvbi4KLSAqICAgICAqIE5laXRoZXIgdGhlIG5h
bWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKLSAqIGNvbnRyaWJ1dG9ycyBt
YXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCi0g
KiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9u
LgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xE
RVJTIEFORCBDT05UUklCVVRPUlMKLSAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBUSEUgSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKLSAqIEEg
UEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUg
Q09QWVJJR0hUCi0gKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKLSAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKLSAqIExJTUlURUQgVE8sIFBS
T0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAot
ICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLSAqIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCi0gKi8KLQotI2lmbmRlZiBQbGFpblRleHRDb250cm9sbGVyX2gKLSNkZWZpbmUgUGxh
aW5UZXh0Q29udHJvbGxlcl9oCi0KLSNpbmNsdWRlICJDcHBCb3VuZENsYXNzLmgiCi0KLWNsYXNz
IFRlc3RTaGVsbDsKLQotY2xhc3MgUGxhaW5UZXh0Q29udHJvbGxlciA6IHB1YmxpYyBDcHBCb3Vu
ZENsYXNzIHsKLXB1YmxpYzoKLSAgICAvLyBCdWlsZHMgdGhlIHByb3BlcnR5IGFuZCBtZXRob2Qg
bGlzdHMgbmVlZGVkIHRvIGJpbmQgdGhpcyBjbGFzcyB0byBhIEpTCi0gICAgLy8gb2JqZWN0Lgot
ICAgIGV4cGxpY2l0IFBsYWluVGV4dENvbnRyb2xsZXIoKTsKLQotICAgIC8vIEpTIGNhbGxiYWNr
IG1ldGhvZHMuCi0gICAgdm9pZCBwbGFpblRleHQoY29uc3QgQ3BwQXJndW1lbnRMaXN0JiwgQ3Bw
VmFyaWFudCopOwotCi0gICAgLy8gRmFsbC1iYWNrIG1ldGhvZDogY2FsbGVkIGlmIGFuIHVua25v
d24gbWV0aG9kIGlzIGludm9rZWQuCi0gICAgdm9pZCBmYWxsYmFja01ldGhvZChjb25zdCBDcHBB
cmd1bWVudExpc3QmLCBDcHBWYXJpYW50Kik7Ci19OwotCi0jZW5kaWYgLy8gUGxhaW5UZXh0Q29u
dHJvbGxlcl9oCi0KZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rl
c3RTaGVsbC5jcHAgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9UZXN0U2hlbGwuY3Bw
CmluZGV4IGMxNzVmZGE5OTUyYTIzMWY4ZjExYzNiOGIyNGNjNTdjNjFiZmUyMGYuLjMzNTAyNmIx
MjA2OTAyMGMxZmUwOTkzNDBkMmI0NzU1N2Q2ZmE3ZGEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBS
ZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RTaGVsbC5jcHAKKysrIGIvVG9vbHMvRHVtcFJlbmRlclRy
ZWUvY2hyb21pdW0vVGVzdFNoZWxsLmNwcApAQCAtMTM2LDcgKzEzNiw2IEBAIFRlc3RTaGVsbDo6
VGVzdFNoZWxsKGJvb2wgdGVzdFNoZWxsTW9kZSkKICAgICBtX2dhbWVwYWRDb250cm9sbGVyID0g
YWRvcHRQdHIobmV3IEdhbWVwYWRDb250cm9sbGVyKHRoaXMpKTsKICAgICBtX2xheW91dFRlc3RD
b250cm9sbGVyID0gYWRvcHRQdHIobmV3IExheW91dFRlc3RDb250cm9sbGVyKHRoaXMpKTsKICAg
ICBtX2V2ZW50U2VuZGVyID0gYWRvcHRQdHIobmV3IEV2ZW50U2VuZGVyKHRoaXMpKTsKLSAgICBt
X3BsYWluVGV4dENvbnRyb2xsZXIgPSBhZG9wdFB0cihuZXcgUGxhaW5UZXh0Q29udHJvbGxlcigp
KTsKICAgICBtX3RleHRJbnB1dENvbnRyb2xsZXIgPSBhZG9wdFB0cihuZXcgVGV4dElucHV0Q29u
dHJvbGxlcih0aGlzKSk7CiAjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCiAgICAgbV9ub3RpZmlj
YXRpb25QcmVzZW50ZXIgPSBhZG9wdFB0cihuZXcgTm90aWZpY2F0aW9uUHJlc2VudGVyKHRoaXMp
KTsKQEAgLTY5Nyw3ICs2OTYsNiBAQCB2b2lkIFRlc3RTaGVsbDo6YmluZEpTT2JqZWN0c1RvV2lu
ZG93KFdlYkZyYW1lKiBmcmFtZSkKICAgICBtX2dhbWVwYWRDb250cm9sbGVyLT5iaW5kVG9KYXZh
c2NyaXB0KGZyYW1lLCBXZWJTdHJpbmc6OmZyb21VVEY4KCJnYW1lcGFkQ29udHJvbGxlciIpKTsK
ICAgICBtX2xheW91dFRlc3RDb250cm9sbGVyLT5iaW5kVG9KYXZhc2NyaXB0KGZyYW1lLCBXZWJT
dHJpbmc6OmZyb21VVEY4KCJsYXlvdXRUZXN0Q29udHJvbGxlciIpKTsKICAgICBtX2V2ZW50U2Vu
ZGVyLT5iaW5kVG9KYXZhc2NyaXB0KGZyYW1lLCBXZWJTdHJpbmc6OmZyb21VVEY4KCJldmVudFNl
bmRlciIpKTsKLSAgICBtX3BsYWluVGV4dENvbnRyb2xsZXItPmJpbmRUb0phdmFzY3JpcHQoZnJh
bWUsIFdlYlN0cmluZzo6ZnJvbVVURjgoInBsYWluVGV4dCIpKTsKICAgICBtX3RleHRJbnB1dENv
bnRyb2xsZXItPmJpbmRUb0phdmFzY3JpcHQoZnJhbWUsIFdlYlN0cmluZzo6ZnJvbVVURjgoInRl
eHRJbnB1dENvbnRyb2xsZXIiKSk7CiB9CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJU
cmVlL2Nocm9taXVtL1Rlc3RTaGVsbC5oIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0v
VGVzdFNoZWxsLmgKaW5kZXggNGJiYWY2MWZiOWE3ZmEyOGRhZmY1YmY2OGVmZGIwZmM1NWE0NDJh
Ny4uYzM1ZWM5NGIxNTkwY2FkNWIxYjc4YTYyMzIyY2E5ZjQzYzA1OWI3YSAxMDA2NDQKLS0tIGEv
VG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFNoZWxsLmgKKysrIGIvVG9vbHMvRHVt
cFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFNoZWxsLmgKQEAgLTM2LDcgKzM2LDYgQEAKICNpbmNs
dWRlICJHYW1lcGFkQ29udHJvbGxlci5oIgogI2luY2x1ZGUgIkxheW91dFRlc3RDb250cm9sbGVy
LmgiCiAjaW5jbHVkZSAiTm90aWZpY2F0aW9uUHJlc2VudGVyLmgiCi0jaW5jbHVkZSAiUGxhaW5U
ZXh0Q29udHJvbGxlci5oIgogI2luY2x1ZGUgIlRlc3RFdmVudFByaW50ZXIuaCIKICNpbmNsdWRl
ICJUZXh0SW5wdXRDb250cm9sbGVyLmgiCiAjaW5jbHVkZSAiV2ViUHJlZmVyZW5jZXMuaCIKQEAg
LTIxNSw3ICsyMTQsNiBAQCBwcml2YXRlOgogICAgIE93blB0cjxHYW1lcGFkQ29udHJvbGxlcj4g
bV9nYW1lcGFkQ29udHJvbGxlcjsKICAgICBPd25QdHI8RXZlbnRTZW5kZXI+IG1fZXZlbnRTZW5k
ZXI7CiAgICAgT3duUHRyPExheW91dFRlc3RDb250cm9sbGVyPiBtX2xheW91dFRlc3RDb250cm9s
bGVyOwotICAgIE93blB0cjxQbGFpblRleHRDb250cm9sbGVyPiBtX3BsYWluVGV4dENvbnRyb2xs
ZXI7CiAgICAgT3duUHRyPFRleHRJbnB1dENvbnRyb2xsZXI+IG1fdGV4dElucHV0Q29udHJvbGxl
cjsKICAgICBPd25QdHI8Tm90aWZpY2F0aW9uUHJlc2VudGVyPiBtX25vdGlmaWNhdGlvblByZXNl
bnRlcjsKICAgICBPd25QdHI8V2ViVmlld0hvc3Q+IG1fd2ViVmlld0hvc3Q7CmRpZmYgLS1naXQg
YS9Ub29scy9EdW1wUmVuZGVyVHJlZS9ndGsvRHVtcFJlbmRlclRyZWUuY3BwIGIvVG9vbHMvRHVt
cFJlbmRlclRyZWUvZ3RrL0R1bXBSZW5kZXJUcmVlLmNwcAppbmRleCA5NzhmODY5YTExYjA4MDRk
MTUwYjUwNGQ0ZmI4OWNlNjU5N2Q3Y2E4Li4xOGJkMjgwNmM2ODUzMDg1ZGMzY2JkNzQxNWU0MmZj
NDY4NTZlMjViIDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9ndGsvRHVtcFJlbmRl
clRyZWUuY3BwCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2d0ay9EdW1wUmVuZGVyVHJlZS5j
cHAKQEAgLTM5LDcgKzM5LDYgQEAKICNpbmNsdWRlICJHT3duUHRyLmgiCiAjaW5jbHVkZSAiTGF5
b3V0VGVzdENvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJQaXhlbER1bXBTdXBwb3J0LmgiCi0jaW5j
bHVkZSAiUGxhaW5UZXh0Q29udHJvbGxlci5oIgogI2luY2x1ZGUgIlNlbGZTY3JvbGxpbmdXZWJL
aXRXZWJWaWV3LmgiCiAjaW5jbHVkZSAiVGV4dElucHV0Q29udHJvbGxlci5oIgogI2luY2x1ZGUg
IldlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydEd0ay5oIgpAQCAtODMxLDcgKzgz
MCw2IEBAIHN0YXRpYyB2b2lkIHdlYlZpZXdXaW5kb3dPYmplY3RDbGVhcmVkKFdlYktpdFdlYlZp
ZXcqIHZpZXcsIFdlYktpdFdlYkZyYW1lKiBmcmFtCiAgICAgQVNTRVJUKCFleGNlcHRpb24pOwog
CiAgICAgYWRkQ29udHJvbGxlclRvV2luZG93KGNvbnRleHQsIHdpbmRvd09iamVjdCwgImV2ZW50
U2VuZGVyIiwgbWFrZUV2ZW50U2VuZGVyKGNvbnRleHQsICF3ZWJraXRfd2ViX2ZyYW1lX2dldF9w
YXJlbnQoZnJhbWUpKSk7Ci0gICAgYWRkQ29udHJvbGxlclRvV2luZG93KGNvbnRleHQsIHdpbmRv
d09iamVjdCwgInBsYWluVGV4dCIsIG1ha2VQbGFpblRleHRDb250cm9sbGVyKGNvbnRleHQpKTsK
ICAgICBhZGRDb250cm9sbGVyVG9XaW5kb3coY29udGV4dCwgd2luZG93T2JqZWN0LCAidGV4dElu
cHV0Q29udHJvbGxlciIsIG1ha2VUZXh0SW5wdXRDb250cm9sbGVyKGNvbnRleHQpKTsKICAgICBX
ZWJDb3JlVGVzdFN1cHBvcnQ6OmluamVjdEludGVybmFsc09iamVjdChjb250ZXh0KTsKIH0KZGlm
ZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2d0ay9QbGFpblRleHRDb250cm9sbGVyLmNw
cCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2d0ay9QbGFpblRleHRDb250cm9sbGVyLmNwcApkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjVlMjUxYTc1MWQ2ZGVmMjZlMjhjYWU0Y2RhYzY3
NWJkNTI0ZTJhYy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0g
YS9Ub29scy9EdW1wUmVuZGVyVHJlZS9ndGsvUGxhaW5UZXh0Q29udHJvbGxlci5jcHAKKysrIC9k
ZXYvbnVsbApAQCAtMSw2NSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExIElnYWxp
YSBTLkwuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgot
ICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZQotICogICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAzLiAgTmVpdGhlciB0aGUgbmFtZSBvZiBBcHBs
ZSBDb21wdXRlciwgSW5jLiAoIkFwcGxlIikgbm9yIHRoZSBuYW1lcyBvZgotICogICAgIGl0cyBj
b250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRl
cml2ZWQKLSAqICAgICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3
cml0dGVuIHBlcm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBB
UFBMRSBBTkQgSVRTIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORCBBTlkKLSAqIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElN
UExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKLSAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxM
IEFQUExFIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKLSAqIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElB
TCBEQU1BR0VTCi0gKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7Ci0gKiBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQK
LSAqIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YKLSAqIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0g
Ki8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlBsYWluVGV4dENvbnRyb2xsZXIu
aCIKLQotI2luY2x1ZGUgIkR1bXBSZW5kZXJUcmVlLmgiCi0jaW5jbHVkZSAiV2ViQ29yZVN1cHBv
cnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0R3RrLmgiCi0jaW5jbHVkZSA8R093blB0ckd0ay5oPgot
I2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0pTT2JqZWN0UmVmLmg+Ci0jaW5jbHVkZSA8SmF2YVNj
cmlwdENvcmUvSlNSZXRhaW5QdHIuaD4KLSNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9KU1N0cmlu
Z1JlZi5oPgotI2luY2x1ZGUgPHdlYmtpdC93ZWJraXQuaD4KLQotc3RhdGljIEpTVmFsdWVSZWYg
cGxhaW5UZXh0Q2FsbGJhY2soSlNDb250ZXh0UmVmIGNvbnRleHQsIEpTT2JqZWN0UmVmIGZ1bmN0
aW9uLCBKU09iamVjdFJlZiB0aGlzT2JqZWN0LCBzaXplX3QgYXJndW1lbnRDb3VudCwgY29uc3Qg
SlNWYWx1ZVJlZiBhcmd1bWVudHNbXSwgSlNWYWx1ZVJlZiogZXhjZXB0aW9uKQotewotICAgIGdf
cmV0dXJuX3ZhbF9pZl9mYWlsKGFyZ3VtZW50Q291bnQgPT0gMSwgSlNWYWx1ZU1ha2VVbmRlZmlu
ZWQoY29udGV4dCkpOwotICAgIFdlYktpdERPTVJhbmdlKiBraXRSYW5nZSA9IER1bXBSZW5kZXJU
cmVlU3VwcG9ydEd0azo6anNWYWx1ZVRvRE9NUmFuZ2UoY29udGV4dCwgYXJndW1lbnRzWzBdKTsK
LSAgICBnX3JldHVybl92YWxfaWZfZmFpbChraXRSYW5nZSwgSlNWYWx1ZU1ha2VVbmRlZmluZWQo
Y29udGV4dCkpOwotCi0gICAgR093blB0cjxnY2hhcj4gdGV4dCh3ZWJraXRfZG9tX3JhbmdlX2dl
dF90ZXh0KGtpdFJhbmdlKSk7Ci0gICAgSlNSZXRhaW5QdHI8SlNTdHJpbmdSZWY+IGpzVGV4dChB
ZG9wdCwgSlNTdHJpbmdDcmVhdGVXaXRoVVRGOENTdHJpbmcodGV4dC5nZXQoKSkpOwotICAgIHJl
dHVybiBKU1ZhbHVlTWFrZVN0cmluZyhjb250ZXh0LCBqc1RleHQuZ2V0KCkpOwotfQotCi1KU09i
amVjdFJlZiBtYWtlUGxhaW5UZXh0Q29udHJvbGxlcihKU0NvbnRleHRSZWYgY29udGV4dCkKLXsK
LSAgICBzdGF0aWMgSlNTdGF0aWNGdW5jdGlvbiBzdGF0aWNGdW5jdGlvbnNbXSA9IHsKLSAgICAg
ICAgeyAicGxhaW5UZXh0IiwgcGxhaW5UZXh0Q2FsbGJhY2ssIGtKU1Byb3BlcnR5QXR0cmlidXRl
UmVhZE9ubHkgfCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZURvbnREZWxldGUgfSwKLSAgICAgICAgeyAw
LCAwLCAwIH0KLSAgICB9OwotCi0gICAgc3RhdGljIEpTQ2xhc3NSZWYgcGxhaW5UZXh0Q29udHJv
bGxlckNsYXNzID0gMDsKLSAgICBpZiAoIXBsYWluVGV4dENvbnRyb2xsZXJDbGFzcykgewotICAg
ICAgICBKU0NsYXNzRGVmaW5pdGlvbiBjbGFzc0RlZmluaXRpb24gPSB7IDAsIDAsIDAsIDAsIDAs
IDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAgfTsKLSAgICAgICAgY2xhc3NEZWZp
bml0aW9uLnN0YXRpY0Z1bmN0aW9ucyA9IHN0YXRpY0Z1bmN0aW9uczsKLSAgICAgICAgcGxhaW5U
ZXh0Q29udHJvbGxlckNsYXNzID0gSlNDbGFzc0NyZWF0ZSgmY2xhc3NEZWZpbml0aW9uKTsKLSAg
ICB9Ci0gICAgcmV0dXJuIEpTT2JqZWN0TWFrZShjb250ZXh0LCBwbGFpblRleHRDb250cm9sbGVy
Q2xhc3MsIDApOwotfQpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvZ3RrL1BsYWlu
VGV4dENvbnRyb2xsZXIuaCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2d0ay9QbGFpblRleHRDb250
cm9sbGVyLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGRhZGZjMTM5MjQxNDcxYTZh
ZWY0Mzk2M2NhZTI5ZTgxN2Q2ZmFjYWEuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvZ3RrL1BsYWluVGV4dENvbnRyb2xs
ZXIuaAorKysgL2Rldi9udWxsCkBAIC0xLDM3ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMp
IDIwMTEgSWdhbGlhIFMuTC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJl
IG1ldDoKLSAqCi0gKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiAgUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAq
ICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlCi0gKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIDMuICBOZWl0aGVyIHRoZSBu
YW1lIG9mIEFwcGxlIENvbXB1dGVyLCBJbmMuICgiQXBwbGUiKSBub3IgdGhlIG5hbWVzIG9mCi0g
KiAgICAgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUg
cHJvZHVjdHMgZGVyaXZlZAotICogICAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNp
ZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIEFQUExFIEFORCBJVFMgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5EIEFOWQotICog
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQotICogRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgQVBQTEUgT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQot
ICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBD
T05TRVFVRU5USUFMIERBTUFHRVMKLSAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
UFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKLSAqIExPU1MgT0Yg
VVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORAotICogT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRgotICog
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIFBsYWluVGV4dENvbnRyb2xsZXJfaAotI2RlZmluZSBQ
bGFpblRleHRDb250cm9sbGVyX2gKLQotdHlwZWRlZiBjb25zdCBzdHJ1Y3QgT3BhcXVlSlNDb250
ZXh0KiBKU0NvbnRleHRSZWY7Ci10eXBlZGVmIHN0cnVjdCBPcGFxdWVKU1ZhbHVlKiBKU09iamVj
dFJlZjsKLQotSlNPYmplY3RSZWYgbWFrZVBsYWluVGV4dENvbnRyb2xsZXIoSlNDb250ZXh0UmVm
KTsKLQotI2VuZGlmCmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9tYWMvRnJhbWVM
b2FkRGVsZWdhdGUubW0gYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9tYWMvRnJhbWVMb2FkRGVsZWdh
dGUubW0KaW5kZXggZTQ1M2FlYWE1ZmFjNzM3MzdmMDllMTU4NjBmYmEyN2NjNDMyYjEwOC4uYzg4
Mjk2MjYyOGE1NjM5NmYzMGIzZjA1YzY5YjY3OWQyODg2NjdhMCAxMDA2NDQKLS0tIGEvVG9vbHMv
RHVtcFJlbmRlclRyZWUvbWFjL0ZyYW1lTG9hZERlbGVnYXRlLm1tCisrKyBiL1Rvb2xzL0R1bXBS
ZW5kZXJUcmVlL21hYy9GcmFtZUxvYWREZWxlZ2F0ZS5tbQpAQCAtNDAsNyArNDAsNiBAQAogI2lt
cG9ydCAiT2JqQ0NvbnRyb2xsZXIuaCIKICNpbXBvcnQgIk9iakNQbHVnaW4uaCIKICNpbXBvcnQg
Ik9iakNQbHVnaW5GdW5jdGlvbi5oIgotI2ltcG9ydCAiUGxhaW5UZXh0Q29udHJvbGxlci5oIgog
I2ltcG9ydCAiVGV4dElucHV0Q29udHJvbGxlci5oIgogI2ltcG9ydCAiV2ViQ29yZVRlc3RTdXBw
b3J0LmgiCiAjaW1wb3J0ICJXb3JrUXVldWUuaCIKQEAgLTI5OCw4ICsyOTcsNiBAQAogICAgIFtv
Ymogc2V0VmFsdWU6cGx1Z2luRnVuY3Rpb24gZm9yS2V5OkAib2JqQ1BsdWdpbkZ1bmN0aW9uIl07
CiAgICAgW3BsdWdpbkZ1bmN0aW9uIHJlbGVhc2VdOwogCi0gICAgW29iaiBzZXRWYWx1ZTpbUGxh
aW5UZXh0Q29udHJvbGxlciBzaGFyZWRQbGFpblRleHRDb250cm9sbGVyXSBmb3JLZXk6QCJwbGFp
blRleHQiXTsKLQogICAgIFRleHRJbnB1dENvbnRyb2xsZXIgKnRpYyA9IFtbVGV4dElucHV0Q29u
dHJvbGxlciBhbGxvY10gaW5pdFdpdGhXZWJWaWV3OndlYlZpZXddOwogICAgIFtvYmogc2V0VmFs
dWU6dGljIGZvcktleTpAInRleHRJbnB1dENvbnRyb2xsZXIiXTsKICAgICBbdGljIHJlbGVhc2Vd
OwpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL1BsYWluVGV4dENvbnRyb2xs
ZXIuaCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9QbGFpblRleHRDb250cm9sbGVyLmgKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDE0ODhmMmZkZTVmZDlmMmE3ZjcxNjJjMDllNzZi
ZjlhZGU1NWY4YzAuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0t
IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL1BsYWluVGV4dENvbnRyb2xsZXIuaAorKysgL2Rl
di9udWxsCkBAIC0xLDI4ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDkgQXBwbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
Ci0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0g
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQotICogRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUK
LSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IKLSAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAotICogRVhFTVBMQVJZLCBPUiBDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJP
Q1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERB
VEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkgVEhFT1JZCi0gKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotICogT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4gCi0gKi8KLQotQGludGVyZmFjZSBQbGFpblRleHRDb250cm9sbGVyIDogTlNPYmplY3QK
LSsgKFBsYWluVGV4dENvbnRyb2xsZXIgKilzaGFyZWRQbGFpblRleHRDb250cm9sbGVyOwotQGVu
ZApkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL1BsYWluVGV4dENvbnRyb2xs
ZXIubW0gYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9tYWMvUGxhaW5UZXh0Q29udHJvbGxlci5tbQpk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZWI4OWJjZTRkZWFmNTZiNTYzODUwZGNlYzc5
ZTE4ZTgyOTgzY2JkMy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAot
LS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9tYWMvUGxhaW5UZXh0Q29udHJvbGxlci5tbQorKysg
L2Rldi9udWxsCkBAIC0xLDYwICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDkgQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQotICogRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBU
SEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5U
IFNIQUxMIEFQUExFIElOQy4gT1IKLSAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAotICogRVhFTVBMQVJZLCBPUiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICog
UFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCi0gKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotICogT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4gCi0gKi8KLQotI2ltcG9ydCAiY29uZmlnLmgiCi0jaW1wb3J0ICJQbGFpblRleHRD
b250cm9sbGVyLmgiCi0KLSNpbXBvcnQgPFdlYktpdC9XZWJLaXQuaD4KLQotQGltcGxlbWVudGF0
aW9uIFBsYWluVGV4dENvbnRyb2xsZXIKLQotKyAoUGxhaW5UZXh0Q29udHJvbGxlciAqKXNoYXJl
ZFBsYWluVGV4dENvbnRyb2xsZXIKLXsKLSAgICBzdGF0aWMgUGxhaW5UZXh0Q29udHJvbGxlciAq
Y29udHJvbGxlciA9IFtbUGxhaW5UZXh0Q29udHJvbGxlciBhbGxvY10gaW5pdF07Ci0gICAgcmV0
dXJuIGNvbnRyb2xsZXI7Ci19Ci0KLSsgKEJPT0wpaXNTZWxlY3RvckV4Y2x1ZGVkRnJvbVdlYlNj
cmlwdDooU0VMKXNlbGVjdG9yCi17Ci0gICAgaWYgKHNlbGVjdG9yID09IEBzZWxlY3RvcihwbGFp
blRleHRGb3JSYW5nZTopKQotICAgICAgICByZXR1cm4gTk87Ci0gICAgcmV0dXJuIFlFUzsKLX0K
LQotKyAoTlNTdHJpbmcgKil3ZWJTY3JpcHROYW1lRm9yU2VsZWN0b3I6KFNFTClzZWxlY3Rvcgot
ewotICAgIGlmIChzZWxlY3RvciA9PSBAc2VsZWN0b3IocGxhaW5UZXh0Rm9yUmFuZ2U6KSkKLSAg
ICAgICAgcmV0dXJuIEAicGxhaW5UZXh0IjsKLSAgICByZXR1cm4gbmlsOwotfQotCi0tIChOU1N0
cmluZyAqKXBsYWluVGV4dEZvclJhbmdlOihET01SYW5nZSAqKXJhbmdlCi17Ci0gICAgaWYgKCFb
cmFuZ2UgaXNLaW5kT2ZDbGFzczpbRE9NUmFuZ2UgY2xhc3NdXSkKLSAgICAgICAgcmV0dXJuIG5p
bDsKLSAgICByZXR1cm4gW3JhbmdlIHRleHRdOwotfQotCi1AZW5kCmRpZmYgLS1naXQgYS9Ub29s
cy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZS5wcm8gYi9Ub29scy9EdW1wUmVuZGVy
VHJlZS9xdC9EdW1wUmVuZGVyVHJlZS5wcm8KaW5kZXggMzJkMzkyYzQ5ZjExOTI3MTFiOWM0MjMy
NjE2NzQ4ZmI5ZjQ2YTI2ZC4uOWQ0OTU0YjQ2NGZjMjJiZTc5NzI0MjI2ZjE3ODNjMjU2YWJjYzMz
NiAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWUucHJv
CisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlLnBybwpAQCAtMzMs
NyArMzMsNiBAQCBIRUFERVJTICs9IFwKICAgICBXb3JrUXVldWVJdGVtUXQuaCBcCiAgICAgTGF5
b3V0VGVzdENvbnRyb2xsZXJRdC5oIFwKICAgICBHQ0NvbnRyb2xsZXJRdC5oIFwKLSAgICBQbGFp
blRleHRDb250cm9sbGVyUXQuaCBcCiAgICAgUXRJbml0aWFsaXplVGVzdEZvbnRzLmggXAogICAg
IHRlc3RwbHVnaW4uaAogCkBAIC00Myw3ICs0Miw2IEBAIFNPVVJDRVMgKz0gXAogICAgIER1bXBS
ZW5kZXJUcmVlUXQuY3BwIFwKICAgICBFdmVudFNlbmRlclF0LmNwcCBcCiAgICAgVGV4dElucHV0
Q29udHJvbGxlclF0LmNwcCBcCi0gICAgUGxhaW5UZXh0Q29udHJvbGxlclF0LmNwcCBcCiAgICAg
V29ya1F1ZXVlSXRlbVF0LmNwcCBcCiAgICAgTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5jcHAgXAog
ICAgIEdDQ29udHJvbGxlclF0LmNwcCBcCmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJl
ZS9xdC9EdW1wUmVuZGVyVHJlZVF0LmNwcCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1bXBS
ZW5kZXJUcmVlUXQuY3BwCmluZGV4IGQ1NDYzODY3YTJjYzZkMjY3MWY5NDI1OGEzOWVkYmI2Zjk2
ZTE4NWUuLjU1ZDY0ZWY1YTE0YWMzYWM0OGJiZTkyYjkyYjA1OGU0NmNjYWJlYTggMTAwNjQ0Ci0t
LSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlUXQuY3BwCisrKyBiL1Rv
b2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlUXQuY3BwCkBAIC0zNyw3ICszNyw2
IEBACiAjaW5jbHVkZSAiR0NDb250cm9sbGVyUXQuaCIKICNpbmNsdWRlICJMYXlvdXRUZXN0Q29u
dHJvbGxlclF0LmgiCiAjaW5jbHVkZSAiVGV4dElucHV0Q29udHJvbGxlclF0LmgiCi0jaW5jbHVk
ZSAiUGxhaW5UZXh0Q29udHJvbGxlclF0LmgiCiAjaW5jbHVkZSAiUXRJbml0aWFsaXplVGVzdEZv
bnRzLmgiCiAjaW5jbHVkZSAidGVzdHBsdWdpbi5oIgogI2luY2x1ZGUgIldvcmtRdWV1ZS5oIgpA
QCAtNDQwLDcgKzQzOSw2IEBAIER1bXBSZW5kZXJUcmVlOjpEdW1wUmVuZGVyVHJlZSgpCiAgICAg
Y29ubmVjdChtX2NvbnRyb2xsZXIsIFNJR05BTChkb25lKCkpLCB0aGlzLCBTTE9UKGR1bXAoKSkp
OwogICAgIG1fZXZlbnRTZW5kZXIgPSBuZXcgRXZlbnRTZW5kZXIobV9wYWdlKTsKICAgICBtX3Rl
eHRJbnB1dENvbnRyb2xsZXIgPSBuZXcgVGV4dElucHV0Q29udHJvbGxlcihtX3BhZ2UpOwotICAg
IG1fcGxhaW5UZXh0Q29udHJvbGxlciA9IG5ldyBQbGFpblRleHRDb250cm9sbGVyKG1fcGFnZSk7
CiAgICAgbV9nY0NvbnRyb2xsZXIgPSBuZXcgR0NDb250cm9sbGVyKG1fcGFnZSk7CiAKICAgICAv
LyBub3cgY29ubmVjdCBvdXIgZGlmZmVyZW50IHNpZ25hbHMKQEAgLTc1MSw3ICs3NDksNiBAQCB2
b2lkIER1bXBSZW5kZXJUcmVlOjppbml0SlNPYmplY3RzKCkKICAgICBmcmFtZS0+YWRkVG9KYXZh
U2NyaXB0V2luZG93T2JqZWN0KFFMYXRpbjFTdHJpbmcoImV2ZW50U2VuZGVyIiksIG1fZXZlbnRT
ZW5kZXIpOwogICAgIGZyYW1lLT5hZGRUb0phdmFTY3JpcHRXaW5kb3dPYmplY3QoUUxhdGluMVN0
cmluZygidGV4dElucHV0Q29udHJvbGxlciIpLCBtX3RleHRJbnB1dENvbnRyb2xsZXIpOwogICAg
IGZyYW1lLT5hZGRUb0phdmFTY3JpcHRXaW5kb3dPYmplY3QoUUxhdGluMVN0cmluZygiR0NDb250
cm9sbGVyIiksIG1fZ2NDb250cm9sbGVyKTsKLSAgICBmcmFtZS0+YWRkVG9KYXZhU2NyaXB0V2lu
ZG93T2JqZWN0KFFMYXRpbjFTdHJpbmcoInBsYWluVGV4dCIpLCBtX3BsYWluVGV4dENvbnRyb2xs
ZXIpOwogICAgIER1bXBSZW5kZXJUcmVlU3VwcG9ydFF0OjppbmplY3RJbnRlcm5hbHNPYmplY3Qo
ZnJhbWUpOwogfQogCmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVu
ZGVyVHJlZVF0LmggYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0LmgK
aW5kZXggMWRlMWNiOTRjYWRlNjc2OTZhMDBhNzMyOGU2Mjk5ZDY3OTU4MjMwYi4uZDM5MjhiYzk5
ZmFmMTUzZDk3ODcyYWVhMWU1ZmUxZTFhMzdkOGQzOSAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJl
bmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWVRdC5oCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVl
L3F0L0R1bXBSZW5kZXJUcmVlUXQuaApAQCAtNjAsNyArNjAsNiBAQCBjbGFzcyBEdW1wUmVuZGVy
VHJlZVN1cHBvcnRRdDsKIGNsYXNzIEV2ZW50U2VuZGVyOwogY2xhc3MgVGV4dElucHV0Q29udHJv
bGxlcjsKIGNsYXNzIEdDQ29udHJvbGxlcjsKLWNsYXNzIFBsYWluVGV4dENvbnRyb2xsZXI7CiAK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtMTUzLDcgKzE1Miw2IEBAIHByaXZhdGU6CiAgICAg
RXZlbnRTZW5kZXIgKm1fZXZlbnRTZW5kZXI7CiAgICAgVGV4dElucHV0Q29udHJvbGxlciAqbV90
ZXh0SW5wdXRDb250cm9sbGVyOwogICAgIEdDQ29udHJvbGxlciogbV9nY0NvbnRyb2xsZXI7Ci0g
ICAgUGxhaW5UZXh0Q29udHJvbGxlciogbV9wbGFpblRleHRDb250cm9sbGVyOwogICAgIE5ldHdv
cmtBY2Nlc3NNYW5hZ2VyKiBtX25ldHdvcmtBY2Nlc3NNYW5hZ2VyOwogCiAgICAgUUZpbGUgKm1f
c3RkaW47CmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9xdC9QbGFpblRleHRDb250
cm9sbGVyUXQuY3BwIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvUGxhaW5UZXh0Q29udHJvbGxl
clF0LmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZGQ2M2ZlYWRiZmJlYmQ0MDEx
ZWQyODBhZDVmMDVmNzhiNTA3OTQ5NS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9xdC9QbGFpblRleHRDb250cm9sbGVy
UXQuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsNDQgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAo
QykgMjAxMCBSb2JlcnQgSG9nYW4gPHJvYmVydEByb2JlcnRob2dhbi5uZXQ+Ci0gKgotICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKgotICogMS4gIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAg
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgotICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCi0gKiAzLiAgTmVpdGhlciB0aGUgbmFtZSBvZiBBcHBsZSBDb21wdXRlciwgSW5jLiAo
IkFwcGxlIikgbm9yIHRoZSBuYW1lcyBvZgotICogICAgIGl0cyBjb250cmlidXRvcnMgbWF5IGJl
IHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKLSAqICAgICBmcm9t
IHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24u
Ci0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBBTkQgSVRTIENPTlRS
SUJVVE9SUyAiQVMgSVMiIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUKLSAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIE9SIElUUyBDT05U
UklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKLSAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCi0gKiAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7Ci0gKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQKLSAqIE9OIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YKLSAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLSNpbmNsdWRlICJjb25m
aWcuaCIKLSNpbmNsdWRlICJQbGFpblRleHRDb250cm9sbGVyUXQuaCIKLQotI2luY2x1ZGUgIkR1
bXBSZW5kZXJUcmVlU3VwcG9ydFF0LmgiCi0jaW5jbHVkZSA8UUFwcGxpY2F0aW9uPgotI2luY2x1
ZGUgPFFJbnB1dE1ldGhvZEV2ZW50PgotI2luY2x1ZGUgPFFLZXlFdmVudD4KLQotUGxhaW5UZXh0
Q29udHJvbGxlcjo6UGxhaW5UZXh0Q29udHJvbGxlcihRV2ViUGFnZSogcGFyZW50KQotICAgIDog
UU9iamVjdChwYXJlbnQpCi17Ci19Ci0KLVFTdHJpbmcgUGxhaW5UZXh0Q29udHJvbGxlcjo6cGxh
aW5UZXh0KGNvbnN0IFFWYXJpYW50JiByYW5nZSkKLXsKLSAgICByZXR1cm4gRHVtcFJlbmRlclRy
ZWVTdXBwb3J0UXQ6OnBsYWluVGV4dChyYW5nZSk7Ci19CmRpZmYgLS1naXQgYS9Ub29scy9EdW1w
UmVuZGVyVHJlZS9xdC9QbGFpblRleHRDb250cm9sbGVyUXQuaCBiL1Rvb2xzL0R1bXBSZW5kZXJU
cmVlL3F0L1BsYWluVGV4dENvbnRyb2xsZXJRdC5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCBlNzhlMTEwNWFhNGQ3Yjk3NDViZTk1NWRkMzFiNDI1ZWE0MGFiZTA1Li4wMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVl
L3F0L1BsYWluVGV4dENvbnRyb2xsZXJRdC5oCisrKyAvZGV2L251bGwKQEAgLTEsNDcgKzAsMCBA
QAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMCBSb2JlcnQgSG9nYW4gPHJvYmVydEByb2JlcnRo
b2dhbi5uZXQ+Ci0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0g
KgotICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZQotICogICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAzLiAgTmVpdGhlciB0aGUgbmFtZSBvZiBB
cHBsZSBDb21wdXRlciwgSW5jLiAoIkFwcGxlIikgbm9yIHRoZSBuYW1lcyBvZgotICogICAgIGl0
cyBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3Rz
IGRlcml2ZWQKLSAqICAgICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlv
ciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBBUFBMRSBBTkQgSVRTIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORCBBTlkKLSAqIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhF
IElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKLSAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKLSAqIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVO
VElBTCBEQU1BR0VTCi0gKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVN
RU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7Ci0gKiBMT1NTIE9GIFVTRSwgREFU
QSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQKLSAqIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YKLSAqIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
Ci0gKi8KLSNpZm5kZWYgUGxhaW5UZXh0Q29udHJvbGxlclF0X2gKLSNkZWZpbmUgUGxhaW5UZXh0
Q29udHJvbGxlclF0X2gKLQotI2luY2x1ZGUgPFFMaXN0PgotI2luY2x1ZGUgPFFPYmplY3Q+Ci0j
aW5jbHVkZSA8UVN0cmluZz4KLSNpbmNsdWRlIDxRVmFyaWFudD4KLQotI2luY2x1ZGUgInF3ZWJw
YWdlLmgiCi0KLWNsYXNzIFBsYWluVGV4dENvbnRyb2xsZXIgOiBwdWJsaWMgUU9iamVjdCB7Ci0g
ICAgUV9PQkpFQ1QKLXB1YmxpYzoKLSAgICBQbGFpblRleHRDb250cm9sbGVyKFFXZWJQYWdlKiBw
YXJlbnQpOwotCi1wdWJsaWMgc2xvdHM6Ci0gICAgUVN0cmluZyBwbGFpblRleHQoY29uc3QgUVZh
cmlhbnQmIHJhbmdlKTsKLX07Ci0KLSNlbmRpZiAvLyBQbGFpblRleHRDb250cm9sbGVyUXRfaApk
aWZmIC0tZ2l0IGEvVG9vbHMvR05VbWFrZWZpbGUuYW0gYi9Ub29scy9HTlVtYWtlZmlsZS5hbQpp
bmRleCBjMGU1YmFhZWJmZjk4ZjQ3ZDIyNTNjOWJkNWEyNzM3YjcwYjRkMTVjLi42NjljZDZkZWJi
NGUwMTFkZDFkMDg4OGEzNDkyYjliMDdmYTFiNWJmIDEwMDY0NAotLS0gYS9Ub29scy9HTlVtYWtl
ZmlsZS5hbQorKysgYi9Ub29scy9HTlVtYWtlZmlsZS5hbQpAQCAtMTM1LDggKzEzNSw2IEBAIFBy
b2dyYW1zX0R1bXBSZW5kZXJUcmVlX1NPVVJDRVMgPSBcCiAJVG9vbHMvRHVtcFJlbmRlclRyZWUv
Z3RrL0dDQ29udHJvbGxlckd0ay5jcHAgXAogCVRvb2xzL0R1bXBSZW5kZXJUcmVlL2d0ay9MYXlv
dXRUZXN0Q29udHJvbGxlckd0ay5jcHAgXAogCVRvb2xzL0R1bXBSZW5kZXJUcmVlL2d0ay9QaXhl
bER1bXBTdXBwb3J0R3RrLmNwcCBcCi0JVG9vbHMvRHVtcFJlbmRlclRyZWUvZ3RrL1BsYWluVGV4
dENvbnRyb2xsZXIuY3BwIFwKLQlUb29scy9EdW1wUmVuZGVyVHJlZS9ndGsvUGxhaW5UZXh0Q29u
dHJvbGxlci5oIFwKIAlUb29scy9EdW1wUmVuZGVyVHJlZS9ndGsvU2VsZlNjcm9sbGluZ1dlYktp
dFdlYlZpZXcuY3BwIFwKIAlUb29scy9EdW1wUmVuZGVyVHJlZS9ndGsvU2VsZlNjcm9sbGluZ1dl
YktpdFdlYlZpZXcuaCBcCiAJVG9vbHMvRHVtcFJlbmRlclRyZWUvZ3RrL1RleHRJbnB1dENvbnRy
b2xsZXIuaCBcCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKaW5kZXggMzZmNmQ4ZjM0MWQxMjYzYjM1NmU0Y2MyNThmNzNmZWQxMTVlZWMy
OS4uNzY4NjY0MDYzZDRiZmJhMjJkZDBjMjlhMTFkZjFjOTllMTNkZTVkOSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDIwIEBACisyMDEyLTAzLTA1ICBLYW5naWwgSGFuICA8a2FuZ2lsLmhhbkBzYW1zdW5nLmNv
bT4KKworICAgICAgICBbRFJUXSBSZW1vdmUgUGxhaW5UZXh0Q29udHJvbGxlciBpbXBsZW1lbnRh
dGlvbnMuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03
OTk1OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFBs
YWluVGV4dENvbnRyb2xsZXIgdXNhZ2VzIGluIGV4aXN0aW5nIHRlc3RzIGhhdmUgYmVlbgorICAg
ICAgICByZXBsYWNlZCBieSBpbnRlcm5hbHMgQVBJIGJ5IGJ1ZyA3ODU3MC4KKyAgICAgICAgU28g
dGhpcyBwYXRjaCB3aWxsIHJlbW92ZSBQbGFpblRleHRDb250cm9sbGVyIGltcGxlbWVudGF0aW9u
cworICAgICAgICB0byBhdm9pZCBmdXJ0aGVyIHVzYWdlIGluIG5ldyB0ZXN0cy4KKworICAgICAg
ICAqIGZhc3QvZG9tL1dpbmRvdy9zY3JpcHQtdGVzdHMvd2luZG93LXByb3BlcnR5LWRlc2NyaXB0
b3JzLmpzOgorICAgICAgICAqIGZhc3QvZG9tL1dpbmRvdy93aW5kb3ctcHJvcGVydGllcy5odG1s
OgorICAgICAgICAqIGZhc3QvZG9tL3NjcmlwdC10ZXN0cy9wcm90b3R5cGUtaW5oZXJpdGFuY2Ut
Mi5qczoKKyAgICAgICAgKiBmYXN0L2RvbS9zY3JpcHQtdGVzdHMvcHJvdG90eXBlLWluaGVyaXRh
bmNlLmpzOgorCiAyMDEyLTAzLTA0ICBTaGlueWEgS2F3YW5ha2EgIDxzaGlueWFrQGNocm9taXVt
Lm9yZz4KIAogICAgICAgICBSZWZhY3RvcmluZzogTWV0aG9kcyBsaWtlIGZpcnN0UmVuZGVyZXJP
ZiBvZiBOb2RlUmVuZGVyaW5nQ29udGV4dCBzaG91bGQgYmUgZXh0cmFjdGVkLgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3NjcmlwdC10ZXN0cy93aW5kb3ctcHJvcGVy
dHktZGVzY3JpcHRvcnMuanMgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvc2NyaXB0LXRl
c3RzL3dpbmRvdy1wcm9wZXJ0eS1kZXNjcmlwdG9ycy5qcwppbmRleCA2MWQyNzcyYmIxMmRlMjkw
ODNmOGZiNTA2YmUxZDIzOTQ4NTk1ZmJiLi5iMTQ0MTBiODQyNzAyODNjOTI3ZGY3MzQxZTcxNThi
NjExZGFiNGIxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvc2NyaXB0
LXRlc3RzL3dpbmRvdy1wcm9wZXJ0eS1kZXNjcmlwdG9ycy5qcworKysgYi9MYXlvdXRUZXN0cy9m
YXN0L2RvbS9XaW5kb3cvc2NyaXB0LXRlc3RzL3dpbmRvdy1wcm9wZXJ0eS1kZXNjcmlwdG9ycy5q
cwpAQCAtMjEsNyArMjEsNiBAQCB2YXIgX19za2lwX18gPSB7CiAgICAgIm9iakNDb250cm9sbGVy
IiA6IDEsCiAgICAgIm9iakNQbHVnaW4iIDogMSwKICAgICAib2JqQ1BsdWdpbkZ1bmN0aW9uIiA6
IDEsCi0gICAgInBsYWluVGV4dCIgOiAxLAogICAgICJ0ZXh0SW5wdXRDb250cm9sbGVyIiA6IDEs
CiAKICAgICAvLyBEb24ndCBsb2cgdGhlc2UgcHJvcGVydGllcyBiZWNhdXNlIHRoZXkgZG8gbm90
IGV4aXN0IGluIGFsbCBpbXBsZW1lbnRhdGlvbnMuIFRoZXkgd2lsbCBuZWVkIHRvIGJlIHRlc3Rl
ZCBzZXBhcmF0ZWx5LgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vV2luZG93L3dp
bmRvdy1wcm9wZXJ0aWVzLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93
LXByb3BlcnRpZXMuaHRtbAppbmRleCBiMTdmM2VkMTQxMGQ1NjE5ZGUyZDUzYWRlYjNkNjZlNGQ2
M2NmNmNmLi5kYzdmODZkMmQ2MmI1YzU0NGY4YmM2ODQ2MzAyNjBlZjQxMGMyNDRhIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMuaHRtbAor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9XaW5kb3cvd2luZG93LXByb3BlcnRpZXMuaHRtbApA
QCAtNjIsNyArNjIsNiBAQCB2YXIgX19za2lwX18gPSB7CiAgICAgIndpbmRvdy5vYmpDQ29udHJv
bGxlciIgOiAxLAogICAgICJ3aW5kb3cub2JqQ1BsdWdpbiIgOiAxLAogICAgICJ3aW5kb3cub2Jq
Q1BsdWdpbkZ1bmN0aW9uIiA6IDEsCi0gICAgIndpbmRvdy5wbGFpblRleHQiIDogMSwKICAgICAi
d2luZG93LnRleHRJbnB1dENvbnRyb2xsZXIiIDogMSwKIAogICAgIC8vIERvbid0IGxvZyB0aGVz
ZSBwcm9wZXJ0aWVzIGJlY2F1c2UgdGhleSBkbyBub3QgZXhpc3QgaW4gYWxsIGltcGxlbWVudGF0
aW9ucy4gVGhleSB3aWxsIG5lZWQgdG8gYmUgdGVzdGVkIHNlcGFyYXRlbHkuCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9zY3JpcHQtdGVzdHMvcHJvdG90eXBlLWluaGVyaXRhbmNl
LTIuanMgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9zY3JpcHQtdGVzdHMvcHJvdG90eXBlLWluaGVy
aXRhbmNlLTIuanMKaW5kZXggZjBmMThmZmQzNmQ1N2I5MzAzNDgzYjYyM2YwNDNhYjZiMzVmZWQ4
Yi4uZGZiYzcyNmM5ZTgwMDJkM2U3OGZkMDY0Y2ZlZGZmNGE5MTZlOTdiYSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvZmFzdC9kb20vc2NyaXB0LXRlc3RzL3Byb3RvdHlwZS1pbmhlcml0YW5jZS0y
LmpzCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NjcmlwdC10ZXN0cy9wcm90b3R5cGUtaW5o
ZXJpdGFuY2UtMi5qcwpAQCAtMjAsNyArMjAsNiBAQCB2YXIgc2tpcHBlZFByb3BlcnRpZXMgPSBb
CiAgICAgIm9iakNDb250cm9sbGVyIiwKICAgICAib2JqQ1BsdWdpbiIsCiAgICAgIm9iakNQbHVn
aW5GdW5jdGlvbiIsCi0gICAgInBsYWluVGV4dCIsCiAgICAgInRleHRJbnB1dENvbnRyb2xsZXIi
LAogCiAgICAgLy8gU2tpcCBvdXIgdGVzdCBwcm9wZXJ0eQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9kb20vc2NyaXB0LXRlc3RzL3Byb3RvdHlwZS1pbmhlcml0YW5jZS5qcyBiL0xheW91
dFRlc3RzL2Zhc3QvZG9tL3NjcmlwdC10ZXN0cy9wcm90b3R5cGUtaW5oZXJpdGFuY2UuanMKaW5k
ZXggNmI4NzM2MWIwM2RlNWRlNGIyNTM4Mjg0YzE4NGZiY2YwZTUxNDk4Yy4uZGZjNWI4ZmFlODM5
NmVkODk0MjYyNDFhODRjMzMyZjg0MjBmYmYxOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFz
dC9kb20vc2NyaXB0LXRlc3RzL3Byb3RvdHlwZS1pbmhlcml0YW5jZS5qcworKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L2RvbS9zY3JpcHQtdGVzdHMvcHJvdG90eXBlLWluaGVyaXRhbmNlLmpzCkBAIC0x
MSw3ICsxMSw3IEBAIHZhciBza2lwcGVkUHJvcGVydGllcyA9IFsKICAgICAiR0NDb250cm9sbGVy
IiwgImxheW91dFRlc3RDb250cm9sbGVyIiwKICAgICAib2JqQ0NvbnRyb2xsZXIiLCAidGV4dElu
cHV0Q29udHJvbGxlciIsICJuYXZpZ2F0aW9uQ29udHJvbGxlciIsCiAgICAgImV2ZW50U2VuZGVy
IiwgIm9iakNQbHVnaW4iLCAib2JqQ1BsdWdpbkZ1bmN0aW9uIiwKLSAgICAiYXBwbGVTY3JpcHRD
b250cm9sbGVyIiwgInBsYWluVGV4dCIsICJhY2Nlc3NpYmlsaXR5Q29udHJvbGxlciIsCisgICAg
ImFwcGxlU2NyaXB0Q29udHJvbGxlciIsICJhY2Nlc3NpYmlsaXR5Q29udHJvbGxlciIsCiAgICAg
ImdhbWVwYWRDb250cm9sbGVyIiwKICAgICAiaW50ZXJuYWxzIiwKICAgICAvLyBJZ25vcmUgdGhl
c2UgcHJvcGVydGllcyBiZWNhdXNlIHRoZXkgZG8gbm90IGV4aXN0IGluIGFsbCBpbXBsZW1lbnRh
dGlvbnMuIFRoZXkgd2lsbCBiZSB0ZXN0ZWQgc2VwYXJhdGVseQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>