<?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>208395</bug_id>
          
          <creation_ts>2020-02-28 15:21:34 -0800</creation_ts>
          <short_desc>[WTF] Add signpost API</short_desc>
          <delta_ts>2020-03-02 21:14:27 -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>Web Template Framework</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ben Nham">nham</reporter>
          <assigned_to name="Ben Nham">nham</assigned_to>
          <cc>achristensen</cc>
    
    <cc>annulen</cc>
    
    <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>nham</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1624151</commentid>
    <comment_count>0</comment_count>
    <who name="Ben Nham">nham</who>
    <bug_when>2020-02-28 15:21:34 -0800</bug_when>
    <thetext>[WTF] Add signpost API</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1624157</commentid>
    <comment_count>1</comment_count>
      <attachid>392024</attachid>
    <who name="Ben Nham">nham</who>
    <bug_when>2020-02-28 15:31:33 -0800</bug_when>
    <thetext>Created attachment 392024
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1624158</commentid>
    <comment_count>2</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-02-28 15:32:17 -0800</bug_when>
    <thetext>&lt;rdar://problem/59906035&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1624606</commentid>
    <comment_count>3</comment_count>
      <attachid>392152</attachid>
    <who name="Ben Nham">nham</who>
    <bug_when>2020-03-02 10:32:00 -0800</bug_when>
    <thetext>Created attachment 392152
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1624923</commentid>
    <comment_count>4</comment_count>
      <attachid>392244</attachid>
    <who name="Ben Nham">nham</who>
    <bug_when>2020-03-02 20:29:53 -0800</bug_when>
    <thetext>Created attachment 392244
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1624935</commentid>
    <comment_count>5</comment_count>
      <attachid>392244</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-03-02 21:14:25 -0800</bug_when>
    <thetext>Comment on attachment 392244
Patch for landing

Clearing flags on attachment: 392244

Committed r257762: &lt;https://trac.webkit.org/changeset/257762&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1624936</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-03-02 21:14:27 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>392024</attachid>
            <date>2020-02-28 15:31:33 -0800</date>
            <delta_ts>2020-03-02 10:31:58 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208395-20200228153133.patch</filename>
            <type>text/plain</type>
            <size>17671</size>
            <attacher name="Ben Nham">nham</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU3NjU5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDNhM2ExODc2ZmY0ZDFhMWU0NWEzNTVi
ZDMzZGQ4NTQ4YTMzNmFmN2UuLjc1YWMzOTVmZDQ5OTE5ZmVjOThkMGJkMWRkM2M4ZDM3YzdhOTM2
ZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMjAtMDItMjggIEJlbiBOaGFtICA8bmhhbUBhcHBs
ZS5jb20+CisKKyAgICAgICAgW1dURl0gQWRkIHNpZ25wb3N0IEFQSQorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA4Mzk1CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2Ugd2FudCB0byBzdGFydCB1c2luZyBv
c19zaWducG9zdCBpbnN0ZWFkIG9mIGtkZWJ1Z190cmFjZSB3aGVuIGVtaXR0aW5nIHBlcmZvcm1h
bmNlIGV2ZW50cywKKyAgICAgICAgYmVjYXVzZSBpdCBpcyB1c3VhbGx5IGNoZWFwZXIgKGRvZXNu
J3QgcmVxdWlyZSBhIHN5c3RlbSBjYWxsIHVubGVzcyB0aGUgbG9nIGJ1ZmZlciBpcyBmdWxsKQor
ICAgICAgICBhbmQgYWxsb3dzIGZvciByaWNoZXIgdHJhY2Vwb2ludHMgKGFsbG93cyBmb3IgbG9n
Z2luZyBzdHJpbmdzIGFzIHdlbGwgYXMgaW50ZWdlcnMpLgorCisgICAgICAgIFRvIGZhY2lsaXRh
dGUgdGhpcywgdGhpcyBtb3ZlcyB0aGUgb3Nfc2lnbnBvc3Qgd3JhcHBlcnMgaW4gTmV0d29ya0Rh
dGFUYXNrQ29jb2EgdG8KKyAgICAgICAgV1RGLiBTaW5jZSBzaWducG9zdHMgY2FuIGNvbnRhaW4g
c2Vuc2l0aXZlIHN0cmluZ3MgKGxpa2UgVVJMcyksIGN1cnJlbnRseSB3ZSBvbmx5IGVuYWJsZQor
ICAgICAgICB0aGVtIG9uIEFwcGxlLWludGVybmFsIGRldmljZXMgd2hlbiBhbiBlbnZpcm9ubWVu
dCB2YXJpYWJsZSBpcyBzZXQuCisKKyAgICAgICAgKiBXVEYueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvajoKKyAgICAgICAgKiB3dGYvUGxhdGZvcm1NYWMuY21ha2U6CisgICAgICAgICogd3RmL1N5
c3RlbVRyYWNpbmcuaDoKKyAgICAgICAgKiB3dGYvY29jb2EvU3lzdGVtVHJhY2luZ0NvY29hLmNw
cDoKKwogMjAyMC0wMi0yNyAgQmFzdWtlIFN1enVraSAgPGJhc3VrZS5zdXp1a2lAc29ueS5jb20+
CiAKICAgICAgICAgW1dpbkNhaXJvXSBGaXggUmVtb3RlSW5zcGVjdG9yIHJlY29ubmVjdCBpc3N1
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZwppbmRleCBjOGI1NDdkNTU4MmIyOTcyNjQ0ZDUwODM1YTZjYWVmZWU0MTRkODA4Li40
Mzc3YzU1YjUyNTA5OThmZmQ1ODRhNGFjMmM2MmJmNGI5NmMxNjljIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDMxIEBACisyMDIwLTAyLTI4ICBCZW4gTmhhbSAgPG5oYW1AYXBwbGUuY29tPgorCisgICAg
ICAgIFtXVEZdIEFkZCBzaWducG9zdCBBUEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIwODM5NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFdlIHdhbnQgdG8gc3RhcnQgdXNpbmcgb3Nfc2lnbnBvc3QgaW5z
dGVhZCBvZiBrZGVidWdfdHJhY2Ugd2hlbiBlbWl0dGluZyBwZXJmb3JtYW5jZSBldmVudHMsCisg
ICAgICAgIGJlY2F1c2UgaXQgaXMgdXN1YWxseSBjaGVhcGVyIChkb2Vzbid0IHJlcXVpcmUgYSBz
eXN0ZW0gY2FsbCB1bmxlc3MgdGhlIGxvZyBidWZmZXIgaXMgZnVsbCkKKyAgICAgICAgYW5kIGFs
bG93cyBmb3IgcmljaGVyIHRyYWNlcG9pbnRzIChhbGxvd3MgZm9yIGxvZ2dpbmcgc3RyaW5ncyBh
cyB3ZWxsIGFzIGludGVnZXJzKS4KKworICAgICAgICBUbyBmYWNpbGl0YXRlIHRoaXMsIHRoaXMg
bW92ZXMgdGhlIG9zX3NpZ25wb3N0IHdyYXBwZXJzIGluIE5ldHdvcmtEYXRhVGFza0NvY29hIHRv
CisgICAgICAgIFdURi4gU2luY2Ugc2lnbnBvc3RzIGNhbiBjb250YWluIHNlbnNpdGl2ZSBzdHJp
bmdzIChsaWtlIFVSTHMpLCBjdXJyZW50bHkgd2Ugb25seSBlbmFibGUKKyAgICAgICAgdGhlbSBv
biBBcHBsZS1pbnRlcm5hbCBkZXZpY2VzIHdoZW4gYW4gZW52aXJvbm1lbnQgdmFyaWFibGUgaXMg
c2V0LgorCisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya0RhdGFUYXNrQ29j
b2EubW06CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtEYXRhVGFza0NvY29hOjpOZXR3b3JrRGF0
YVRhc2tDb2NvYSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtEYXRhVGFza0NvY29hOjpkaWRT
ZW5kRGF0YSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtEYXRhVGFza0NvY29hOjpkaWRSZWNl
aXZlQ2hhbGxlbmdlKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0RhdGFUYXNrQ29jb2E6OmRp
ZENvbXBsZXRlV2l0aEVycm9yKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0RhdGFUYXNrQ29j
b2E6OmRpZFJlY2VpdmVEYXRhKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0RhdGFUYXNrQ29j
b2E6OmRpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtEYXRhVGFz
a0NvY29hOjp3aWxsUGVyZm9ybUhUVFBSZWRpcmVjdGlvbik6CisgICAgICAgIChXZWJLaXQ6Ok5l
dHdvcmtEYXRhVGFza0NvY29hOjpjYW5jZWwpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrRGF0
YVRhc2tDb2NvYTo6cmVzdW1lKToKKyAgICAgICAgKHNpZ25wb3N0TG9nSGFuZGxlKTogRGVsZXRl
ZC4KKyAgICAgICAgKHNpZ25wb3N0c0VuYWJsZWQpOiBEZWxldGVkLgorCiAyMDIwLTAyLTI4ICBU
aW0gSG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgogCiAgICAgICAgIG1hY0NhdGFs
eXN0OiAnT3BlbicgY29udGV4dCBtZW51IGl0ZW0gZG9lc24ndCB3b3JrCmRpZmYgLS1naXQgYS9T
b3VyY2UvV1RGL1dURi54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dURi9XVEYu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAxYTYxMTQzM2QxY2Y0M2ZjNjEzMTA4N2Zl
NDZmMmIxNTgwNzZiYjFiLi4wODBjMjdiYzY2YmFkYjhkNWJmOWFmNzZlNTk1MTQ2MmQ1ZDk5MDE3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL1dURi54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisr
KyBiL1NvdXJjZS9XVEYvV1RGLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE4MSw2ICsx
ODEsNyBAQAogCQlFM0EzMkJDNDFGQzgzMEUyMDA3RDdFNzYgLyogSlNWYWx1ZU1hbGxvYy5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFM0EzMkJDMjFG
QzgzMEUyMDA3RDdFNzYgLyogSlNWYWx1ZU1hbGxvYy5jcHAgKi87IH07CiAJCUU0QTBBRDM5MUE5
NjI0NTUwMDUzNkRGNiAvKiBXb3JrUXVldWUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gRTRBMEFEMzcxQTk2MjQ1NTAwNTM2REY2IC8qIFdvcmtRdWV1
ZS5jcHAgKi87IH07CiAJCUU0QTBBRDNEMUE5NjI1M0MwMDUzNkRGNiAvKiBXb3JrUXVldWVDb2Nv
YS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNEEw
QUQzQzFBOTYyNTNDMDA1MzZERjYgLyogV29ya1F1ZXVlQ29jb2EuY3BwICovOyB9OworCQlFQjYx
RURDNzI0MDlDQ0MxMDAxRUZFMzYgLyogU3lzdGVtVHJhY2luZ0NvY29hLmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEVCNjFFREM2MjQwOUNDQzAwMDFF
RkUzNiAvKiBTeXN0ZW1UcmFjaW5nQ29jb2EuY3BwICovOyB9OwogCQlGRTA1RkFGRjFGRTUwMDc1
MDAwOTMyMzAgLyogV1RGQXNzZXJ0aW9ucy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBGRTA1RkFGRTFGRTUwMDc1MDAwOTMyMzAgLyogV1RGQXNzZXJ0
aW9ucy5jcHAgKi87IH07CiAJCUZFMUUyQzNCMjI0MEMwNjYwMEY2QjcyOSAvKiBQdHJUYWcuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkUxRTJDMzky
MjQwQzA1NDAwRjZCNzI5IC8qIFB0clRhZy5jcHAgKi87IH07CiAJCUZFMUUyQzQyMjI0MTg3QzYw
MEY2QjcyOSAvKiBQbGF0Zm9ybVJlZ2lzdGVycy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRTFFMkM0MTIyNDE4N0M2MDBGNkI3MjkgLyogUGxhdGZv
cm1SZWdpc3RlcnMuY3BwICovOyB9OwpAQCAtNzI4LDYgKzcyOSw3IEBACiAJCUU0QTBBRDM3MUE5
NjI0NTUwMDUzNkRGNiAvKiBXb3JrUXVldWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gV29ya1F1ZXVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
RTRBMEFEMzgxQTk2MjQ1NTAwNTM2REY2IC8qIFdvcmtRdWV1ZS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBXb3JrUXVldWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJRTRBMEFEM0MxQTk2MjUzQzAwNTM2REY2IC8qIFdvcmtRdWV1ZUNvY29hLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdvcmtRdWV1ZUNvY29hLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRUI2MUVEQzYyNDA5Q0NDMDAwMUVGRTM2IC8qIFN5c3Rl
bVRyYWNpbmdDb2NvYS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBT
eXN0ZW1UcmFjaW5nQ29jb2EuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFQjk1
RTFFRjE2MUE3MjQxMDA4OUEyRjUgLyogQnl0ZU9yZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEJ5dGVPcmRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlF
RjdENkNENTlEODY0MkE4QTBEQTg2QUQgLyogU3RhY2tUcmFjZS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBTdGFja1RyYWNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCUY3MkJCREIxMDdGQTQyNDg4NjE3OEI5RSAvKiBTeW1ib2xJbXBsLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFN5bWJvbEltcGwuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwpAQCAtMTUxMyw2ICsxNTE1LDcgQEAKIAkJCQk1Q0MwRUU4ODIxNjJCQzIy
MDBBMUE4NDIgLyogTlNVUkxFeHRyYXMubW0gKi8sCiAJCQkJRTM5MkZBMjYyMkU5MkJGRjAwRUNE
QzczIC8qIFJlc291cmNlVXNhZ2VDb2NvYS5jcHAgKi8sCiAJCQkJQTMwRDQxMkMxRjBERTBCQTAw
QjcxOTU0IC8qIFNvZnRMaW5raW5nLmggKi8sCisJCQkJRUI2MUVEQzYyNDA5Q0NDMDAwMUVGRTM2
IC8qIFN5c3RlbVRyYWNpbmdDb2NvYS5jcHAgKi8sCiAJCQkJNUNDMEVFODYyMTYyQkMyMjAwQTFB
ODQyIC8qIFVSTENvY29hLm1tICovLAogCQkJCUU0QTBBRDNDMUE5NjI1M0MwMDUzNkRGNiAvKiBX
b3JrUXVldWVDb2NvYS5jcHAgKi8sCiAJCQkpOwpAQCAtMTcyMiw2ICsxNzI1LDcgQEAKIAkJCQlB
OEE0NzNCNzE1MUE4MjVCMDA0MTIzRkYgLyogc3RydG9kLmNjIGluIFNvdXJjZXMgKi8sCiAJCQkJ
NTIxODMwMTJDOTlFNDc2QTg0RUVCRUE4IC8qIFN5bWJvbEltcGwuY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJNzBBOTkzRkUxQUQ3MTUxMzAwRkE2MTVCIC8qIFN5bWJvbFJlZ2lzdHJ5LmNwcCBpbiBT
b3VyY2VzICovLAorCQkJCUVCNjFFREM3MjQwOUNDQzEwMDFFRkUzNiAvKiBTeXN0ZW1UcmFjaW5n
Q29jb2EuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMUMxODFDN0YxRDMwNzhEQTAwRjVGQTE2IC8q
IFRleHRCcmVha0l0ZXJhdG9yLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFDMTgxQzk2MUQzMDgw
MEEwMEY1RkExNiAvKiBUZXh0QnJlYWtJdGVyYXRvckludGVybmFsSUNVQ29jb2EuY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJQTNFNEREOTMxRjNBODAzNDAwREVEMEI0IC8qIFRleHRTdHJlYW0uY3Bw
IGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybU1hYy5j
bWFrZSBiL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtTWFjLmNtYWtlCmluZGV4IDJjZjY3N2FlNTBm
MDk1Njk5YWZiNGI2OTNmODc5ZmIxNWM4Mjk1NzQuLjYxODgyMGM5Yjc4ZmVjOTcyOTViOWZiZmI2
ZjNjYzBlMWQ0YTcwODAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtTWFjLmNt
YWtlCisrKyBiL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtTWFjLmNtYWtlCkBAIC02NCw2ICs2NCw3
IEBAIGxpc3QoQVBQRU5EIFdURl9TT1VSQ0VTCiAgICAgY29jb2EvTWVtb3J5UHJlc3N1cmVIYW5k
bGVyQ29jb2EubW0KICAgICBjb2NvYS9OU1VSTEV4dHJhcy5tbQogICAgIGNvY29hL1Jlc291cmNl
VXNhZ2VDb2NvYS5jcHAKKyAgICBjb2NvYS9TeXN0ZW1UcmFjaW5nQ29jb2EuY3BwCiAgICAgY29j
b2EvVVJMQ29jb2EubW0KICAgICBjb2NvYS9Xb3JrUXVldWVDb2NvYS5jcHAKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dURi93dGYvU3lzdGVtVHJhY2luZy5oIGIvU291cmNlL1dURi93dGYvU3lzdGVt
VHJhY2luZy5oCmluZGV4IDBiZjVkZDlkNDAwZTg1MGM0NjQ0YmUxMDRmZDJkMmYyN2U0YjFkZmUu
LjM1MWY5NDUxZjBhMTFhZjcxMTdlOGU3OGE1MTdlMTRhMzlmZGFhNzcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XVEYvd3RmL1N5c3RlbVRyYWNpbmcuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9TeXN0ZW1U
cmFjaW5nLmgKQEAgLTE1OCwzICsxNTgsMzggQEAgdXNpbmcgV1RGOjpUcmFjZVNjb3BlOwogdXNp
bmcgV1RGOjp0cmFjZVBvaW50OwogCiAjZW5kaWYgLy8gX19jcGx1c3BsdXMKKworI2lmIEhBVkUo
T1NfU0lHTlBPU1QpCisKKyNpbXBvcnQgPG9zL3NpZ25wb3N0Lmg+CisKK1dURl9FWFRFUk5fQ19C
RUdJTgorV1RGX0VYUE9SVF9QUklWQVRFIGJvb2wgV1RGU2lnbnBvc3RzRW5hYmxlZCgpOworV1RG
X0VYUE9SVF9QUklWQVRFIG9zX2xvZ190IFdURlNpZ25wb3N0TG9nSGFuZGxlKCk7CitXVEZfRVhU
RVJOX0NfRU5ECisKKyNkZWZpbmUgV1RGRW1pdFNpZ25wb3N0KHBvaW50ZXIsIG5hbWUsIC4uLikg
XAorICAgIFdURkVtaXRTaWducG9zdFdpdGhGdW5jdGlvbihvc19zaWducG9zdF9ldmVudF9lbWl0
LCAocG9pbnRlciksIG5hbWUsICMjX19WQV9BUkdTX18pCisKKyNkZWZpbmUgV1RGQmVnaW5TaWdu
cG9zdChwb2ludGVyLCBuYW1lLCAuLi4pIFwKKyAgICBXVEZFbWl0U2lnbnBvc3RXaXRoRnVuY3Rp
b24ob3Nfc2lnbnBvc3RfaW50ZXJ2YWxfYmVnaW4sIChwb2ludGVyKSwgbmFtZSwgIyNfX1ZBX0FS
R1NfXykKKworI2RlZmluZSBXVEZFbmRTaWducG9zdChwb2ludGVyLCBuYW1lLCAuLi4pIFwKKyAg
ICBXVEZFbWl0U2lnbnBvc3RXaXRoRnVuY3Rpb24ob3Nfc2lnbnBvc3RfaW50ZXJ2YWxfZW5kLCAo
cG9pbnRlciksIG5hbWUsICMjX19WQV9BUkdTX18pCisKKyNkZWZpbmUgV1RGRW1pdFNpZ25wb3N0
V2l0aEZ1bmN0aW9uKGVtaXRGdW5jLCBwb2ludGVyLCBuYW1lLCAuLi4pIFwKK2RvIHsgXAorICAg
IGlmIChVTkxJS0VMWShXVEZTaWducG9zdHNFbmFibGVkKCkpKSB7IFwKKyAgICAgICAgb3NfbG9n
X3QgaGFuZGxlID0gV1RGU2lnbnBvc3RMb2dIYW5kbGUoKTsgXAorICAgICAgICBvc19zaWducG9z
dF9pZF90IHNpZ25wb3N0SUQgPSBvc19zaWducG9zdF9pZF9tYWtlX3dpdGhfcG9pbnRlcihoYW5k
bGUsIChwb2ludGVyKSk7IFwKKyAgICAgICAgZW1pdEZ1bmMoaGFuZGxlLCBzaWducG9zdElELCBu
YW1lLCAjI19fVkFfQVJHU19fKTsgXAorICAgIH0gXAorfSB3aGlsZSAoMCkKKworI2Vsc2UKKwor
I2RlZmluZSBXVEZFbWl0U2lnbnBvc3QocG9pbnRlciwgbmFtZSwgLi4uKSBkbyB7IH0gd2hpbGUg
KDApCisjZGVmaW5lIFdURkJlZ2luU2lnbnBvc3QocG9pbnRlciwgbmFtZSwgLi4uKSBkbyB7IH0g
d2hpbGUgKDApCisjZGVmaW5lIFdURkVuZFNpZ25wb3N0KHBvaW50ZXIsIG5hbWUsIC4uLikgZG8g
eyB9IHdoaWxlICgwKQorCisjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL2NvY29h
L1N5c3RlbVRyYWNpbmdDb2NvYS5jcHAgYi9Tb3VyY2UvV1RGL3d0Zi9jb2NvYS9TeXN0ZW1UcmFj
aW5nQ29jb2EuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjNjYmZjZWM1NjEyNTkyMzU2YzNlMjU4ODE1ZTgxMDc1
NTQyZmM1ZmEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9jb2NvYS9TeXN0ZW1U
cmFjaW5nQ29jb2EuY3BwCkBAIC0wLDAgKzEsNTkgQEAKKy8qCisqIENvcHlyaWdodCAoQykgMjAx
OSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisqCisqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKKyogYXJlIG1ldDoKKyogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorKiAyLiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAor
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlCisqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisqCisqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorKiBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorKiBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIKKyogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQ
UExFIElOQy4gT1IKKyogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyogUFJPQ1VSRU1FTlQg
T0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisq
IFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkKKyogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUCisqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorKiBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKwor
I2ltcG9ydCAiY29uZmlnLmgiCisjaW1wb3J0IDx3dGYvU3lzdGVtVHJhY2luZy5oPgorCisjaW5j
bHVkZSA8Y3N0ZGxpYj4KKyNpbmNsdWRlIDxkaXNwYXRjaC9kaXNwYXRjaC5oPgorI2luY2x1ZGUg
PHBhbC9zcGkvY29jb2EvT1NWYXJpYW50U1BJLmg+CisKK2Jvb2wgV1RGU2lnbnBvc3RzRW5hYmxl
ZCgpCit7CisgICAgc3RhdGljIGRpc3BhdGNoX29uY2VfdCBvbmNlOworICAgIHN0YXRpYyBib29s
IGVuYWJsZWQ7CisKKyAgICBkaXNwYXRjaF9vbmNlKCZvbmNlLCBeeworICAgICAgICAvLyBTaWdu
cG9zdHMgbWF5IGNvbnRhaW4gc2Vuc2l0aXZlIGluZm8gdGhhdCB3ZSBkb24ndCB3YW50IHRvIGVt
aXQgdG8gbG9nZCBleGNlcHQgd2hlbgorICAgICAgICAvLyBwcm9maWxpbmcgKHN1Y2ggYXMgVVJM
cykuIFRvIGd1YXJkIGFnYWluc3QgYWNjaWRlbnRhbCBsZWFrYWdlLCBvbmx5IGVuYWJsZSB0aGVt
IG9uIEFwcGxlCisgICAgICAgIC8vIGludGVybmFsIGJ1aWxkcyB3aGVuIGFuIGVudmlyb25tZW50
IHZhcmlhYmxlIGlzIHNldC4KKyAgICAgICAgaWYgKG9zX3ZhcmlhbnRfYWxsb3dzX2ludGVybmFs
X3NlY3VyaXR5X3BvbGljaWVzKCJjb20uYXBwbGUuV2ViS2l0IikpCisgICAgICAgICAgICBlbmFi
bGVkID0gIXN0cmNtcChnZXRlbnYoIldFQktJVF9TSUdOUE9TVFNfRU5BQkxFRCIpID86ICIwIiwg
IjEiKTsKKyAgICB9KTsKKworICAgIHJldHVybiBlbmFibGVkOworfQorCitvc19sb2dfdCBXVEZT
aWducG9zdExvZ0hhbmRsZSgpCit7CisgICAgc3RhdGljIGRpc3BhdGNoX29uY2VfdCBvbmNlOwor
ICAgIHN0YXRpYyBvc19sb2dfdCBoYW5kbGU7CisKKyAgICBkaXNwYXRjaF9vbmNlKCZvbmNlLCBe
eworICAgICAgICBoYW5kbGUgPSBvc19sb2dfY3JlYXRlKCJjb20uYXBwbGUuV2ViS2l0IiwgIlNp
Z25wb3N0cyIpOworICAgIH0pOworCisgICAgcmV0dXJuIGhhbmRsZTsKK30KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya0RhdGFUYXNrQ29jb2Eu
bW0gYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtEYXRhVGFza0Nv
Y29hLm1tCmluZGV4IDU2MDlkYjFmZjE2NzUyM2Q1YjI2OWFhY2FkZDcyMzI3YjU0NzZkMmQuLmRi
ZmQyOWNkZWExMDY1ODc5ZjFiMGFhMzNlOWEwMWY4Y2YyYzg1MzMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya0RhdGFUYXNrQ29jb2EubW0KKysr
IGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrRGF0YVRhc2tDb2Nv
YS5tbQpAQCAtNDYsNzMgKzQ2LDE5IEBACiAjaW1wb3J0IDx3dGYvRmlsZVN5c3RlbS5oPgogI2lt
cG9ydCA8d3RmL01haW5UaHJlYWQuaD4KICNpbXBvcnQgPHd0Zi9Qcm9jZXNzUHJpdmlsZWdlLmg+
CisjaW1wb3J0IDx3dGYvU3lzdGVtVHJhY2luZy5oPgogI2ltcG9ydCA8d3RmL3RleHQvQmFzZTY0
Lmg+CiAKICNpZiBIQVZFKE5XX0FDVElWSVRZKQogI2ltcG9ydCA8Q0ZOZXR3b3JrL0NGTlNVUkxD
b25uZWN0aW9uLmg+CiAjZW5kaWYKIAotI2lmIEhBVkUoT1NfU0lHTlBPU1QpCi0KICNpZiBVU0Uo
QVBQTEVfSU5URVJOQUxfU0RLKQogI2luY2x1ZGUgPFdlYktpdEFkZGl0aW9ucy9OZXR3b3JrRGF0
YVRhc2tDb2NvYUFkZGl0aW9ucy5oPgogI2Vsc2UKICNkZWZpbmUgTkVUV09SS19EQVRBX1RBU0tf
Q09DT0FfQURESVRJT05TCiAjZW5kaWYKIAotI2ltcG9ydCA8b3Mvc2lnbnBvc3QuaD4KLQotc3Rh
dGljIG9zX2xvZ190IHNpZ25wb3N0TG9nSGFuZGxlKCkKLXsKLSAgICBzdGF0aWMgZGlzcGF0Y2hf
b25jZV90IG9uY2U7Ci0gICAgc3RhdGljIG9zX2xvZ190IGhhbmRsZTsKLQotICAgIGRpc3BhdGNo
X29uY2UoJm9uY2UsIF57Ci0gICAgICAgIGhhbmRsZSA9IG9zX2xvZ19jcmVhdGUoTE9HX0NIQU5O
RUxfV0VCS0lUX1NVQlNZU1RFTSwgIkRhdGFUYXNrIik7Ci0gICAgfSk7Ci0KLSAgICByZXR1cm4g
aGFuZGxlOwotfQotCi1zdGF0aWMgYm9vbCBzaWducG9zdHNFbmFibGVkKCkKLXsKLSAgICBzdGF0
aWMgZGlzcGF0Y2hfb25jZV90IG9uY2U7Ci0gICAgc3RhdGljIGJvb2wgZW5hYmxlZDsKLQotICAg
IGRpc3BhdGNoX29uY2UoJm9uY2UsIF57Ci0gICAgICAgIGlmIChvc192YXJpYW50X2FsbG93c19p
bnRlcm5hbF9zZWN1cml0eV9wb2xpY2llcygiY29tLmFwcGxlLldlYktpdCIpKQotICAgICAgICAg
ICAgZW5hYmxlZCA9ICFzdHJjbXAoZ2V0ZW52KCJXRUJLSVRfREFUQV9UQVNLX1NJR05QT1NUUyIp
ID86ICIwIiwgIjEiKTsKLSAgICB9KTsKLQotICAgIHJldHVybiBlbmFibGVkOwotfQotCi0jZGVm
aW5lIEVNSVRfU0lHTlBPU1RfV0lUSF9GVU5DVElPTihlbWl0RnVuYywgdGFzaywgLi4uKSBcCi0g
ICAgZG8geyBcCi0gICAgICAgIGlmIChzaWducG9zdHNFbmFibGVkKCkpIHsgXAotICAgICAgICAg
ICAgb3NfbG9nX3QgaGFuZGxlID0gc2lnbnBvc3RMb2dIYW5kbGUoKTsgXAotICAgICAgICAgICAg
b3Nfc2lnbnBvc3RfaWRfdCBzaWducG9zdElEID0gb3Nfc2lnbnBvc3RfaWRfbWFrZV93aXRoX3Bv
aW50ZXIoc2lnbnBvc3RMb2dIYW5kbGUoKSwgKHRhc2spLmdldCgpKTsgXAotICAgICAgICAgICAg
ZW1pdEZ1bmMoaGFuZGxlLCBzaWducG9zdElELCAiRGF0YVRhc2siLCAjI19fVkFfQVJHU19fKTsg
XAotICAgICAgICB9IFwKLSAgICB9IHdoaWxlICgwKQotCi0jZGVmaW5lIEJFR0lOX1NJR05QT1NU
KHRhc2ssIC4uLikgXAotICAgIEVNSVRfU0lHTlBPU1RfV0lUSF9GVU5DVElPTihvc19zaWducG9z
dF9pbnRlcnZhbF9iZWdpbiwgKHRhc2spLCAjI19fVkFfQVJHU19fKQotCi0jZGVmaW5lIEVORF9T
SUdOUE9TVCh0YXNrLCAuLi4pIFwKLSAgICBFTUlUX1NJR05QT1NUX1dJVEhfRlVOQ1RJT04ob3Nf
c2lnbnBvc3RfaW50ZXJ2YWxfZW5kLCAodGFzayksICMjX19WQV9BUkdTX18pCi0KLSNkZWZpbmUg
RU1JVF9TSUdOUE9TVCh0YXNrLCAuLi4pIFwKLSAgICBFTUlUX1NJR05QT1NUX1dJVEhfRlVOQ1RJ
T04ob3Nfc2lnbnBvc3RfZXZlbnRfZW1pdCwgKHRhc2spLCAjI19fVkFfQVJHU19fKQotCi0jZWxz
ZQotCi0jZGVmaW5lIEJFR0lOX1NJR05QT1NUKHRhc2ssIC4uLikgZG8geyB9IHdoaWxlICgwKQot
I2RlZmluZSBFTkRfU0lHTlBPU1QodGFzaywgLi4uKSBkbyB7IH0gd2hpbGUgKDApCi0jZGVmaW5l
IEVNSVRfU0lHTlBPU1QodGFzaywgLi4uKSBkbyB7IH0gd2hpbGUgKDApCi0KLSNlbmRpZgotCiBu
YW1lc3BhY2UgV2ViS2l0IHsKIAogI2lmIFVTRShDUkVERU5USUFMX1NUT1JBR0VfV0lUSF9ORVRX
T1JLX1NFU1NJT04pCkBAIC0yODcsNyArMjMzLDcgQEAgTmV0d29ya0RhdGFUYXNrQ29jb2E6Ok5l
dHdvcmtEYXRhVGFza0NvY29hKE5ldHdvcmtTZXNzaW9uJiBzZXNzaW9uLCBOZXR3b3JrRGF0YVQK
IAogICAgIG1fdGFzayA9IFttX3Nlc3Npb25XcmFwcGVyLT5zZXNzaW9uIGRhdGFUYXNrV2l0aFJl
cXVlc3Q6bnNSZXF1ZXN0XTsKIAotICAgIEJFR0lOX1NJR05QT1NUKG1fdGFzaywgIiV7cHVibGlj
fXMgcHJpOiAlZiBwcmVjb25uZWN0OiAlZCIsIHVybC5zdHJpbmcoKS5hc2NpaSgpLmRhdGEoKSwg
dG9OU1VSTFNlc3Npb25UYXNrUHJpb3JpdHkocmVxdWVzdC5wcmlvcml0eSgpKSwgc2hvdWxkUHJl
Y29ubmVjdE9ubHkgPT0gUHJlY29ubmVjdE9ubHk6Olllcyk7CisgICAgV1RGQmVnaW5TaWducG9z
dChtX3Rhc2suZ2V0KCksICJEYXRhVGFzayIsICIle3B1YmxpY31zIHByaTogJWYgcHJlY29ubmVj
dDogJWQiLCB1cmwuc3RyaW5nKCkuYXNjaWkoKS5kYXRhKCksIHRvTlNVUkxTZXNzaW9uVGFza1By
aW9yaXR5KHJlcXVlc3QucHJpb3JpdHkoKSksIHNob3VsZFByZWNvbm5lY3RPbmx5ID09IFByZWNv
bm5lY3RPbmx5OjpZZXMpOwogCiAgICAgUkVMRUFTRV9BU1NFUlQoIW1fc2Vzc2lvbldyYXBwZXIt
PmRhdGFUYXNrTWFwLmNvbnRhaW5zKFttX3Rhc2sgdGFza0lkZW50aWZpZXJdKSk7CiAgICAgbV9z
ZXNzaW9uV3JhcHBlci0+ZGF0YVRhc2tNYXAuYWRkKFttX3Rhc2sgdGFza0lkZW50aWZpZXJdLCB0
aGlzKTsKQEAgLTM0MSw3ICsyODcsNyBAQCB2b2lkIE5ldHdvcmtEYXRhVGFza0NvY29hOjpyZXN0
cmljdFJlcXVlc3RSZWZlcnJlclRvT3JpZ2luSWZOZWVkZWQoV2ViQ29yZTo6UmVzbwogCiB2b2lk
IE5ldHdvcmtEYXRhVGFza0NvY29hOjpkaWRTZW5kRGF0YSh1aW50NjRfdCB0b3RhbEJ5dGVzU2Vu
dCwgdWludDY0X3QgdG90YWxCeXRlc0V4cGVjdGVkVG9TZW5kKQogewotICAgIEVNSVRfU0lHTlBP
U1QobV90YXNrLCAic2VudCAlbGx1IGJ5dGVzIChleHBlY3RlZCAlbGx1IGJ5dGVzKSIsIHRvdGFs
Qnl0ZXNTZW50LCB0b3RhbEJ5dGVzRXhwZWN0ZWRUb1NlbmQpOworICAgIFdURkVtaXRTaWducG9z
dChtX3Rhc2suZ2V0KCksICJEYXRhVGFzayIsICJzZW50ICVsbHUgYnl0ZXMgKGV4cGVjdGVkICVs
bHUgYnl0ZXMpIiwgdG90YWxCeXRlc1NlbnQsIHRvdGFsQnl0ZXNFeHBlY3RlZFRvU2VuZCk7CiAK
ICAgICBpZiAobV9jbGllbnQpCiAgICAgICAgIG1fY2xpZW50LT5kaWRTZW5kRGF0YSh0b3RhbEJ5
dGVzU2VudCwgdG90YWxCeXRlc0V4cGVjdGVkVG9TZW5kKTsKQEAgLTM0OSw3ICsyOTUsNyBAQCB2
b2lkIE5ldHdvcmtEYXRhVGFza0NvY29hOjpkaWRTZW5kRGF0YSh1aW50NjRfdCB0b3RhbEJ5dGVz
U2VudCwgdWludDY0X3QgdG90YWxCeQogCiB2b2lkIE5ldHdvcmtEYXRhVGFza0NvY29hOjpkaWRS
ZWNlaXZlQ2hhbGxlbmdlKFdlYkNvcmU6OkF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJiYgY2hhbGxl
bmdlLCBOZWdvdGlhdGVkTGVnYWN5VExTIG5lZ290aWF0ZWRMZWdhY3lUTFMsIENoYWxsZW5nZUNv
bXBsZXRpb25IYW5kbGVyJiYgY29tcGxldGlvbkhhbmRsZXIpCiB7Ci0gICAgRU1JVF9TSUdOUE9T
VChtX3Rhc2ssICJyZWNlaXZlZCBjaGFsbGVuZ2UiKTsKKyAgICBXVEZFbWl0U2lnbnBvc3QobV90
YXNrLmdldCgpLCAiRGF0YVRhc2siLCAicmVjZWl2ZWQgY2hhbGxlbmdlIik7CiAKICAgICBpZiAo
dHJ5UGFzc3dvcmRCYXNlZEF1dGhlbnRpY2F0aW9uKGNoYWxsZW5nZSwgY29tcGxldGlvbkhhbmRs
ZXIpKQogICAgICAgICByZXR1cm47CkBAIC0zNjUsOSArMzExLDkgQEAgdm9pZCBOZXR3b3JrRGF0
YVRhc2tDb2NvYTo6ZGlkUmVjZWl2ZUNoYWxsZW5nZShXZWJDb3JlOjpBdXRoZW50aWNhdGlvbkNo
YWxsZW5nZSYKIHZvaWQgTmV0d29ya0RhdGFUYXNrQ29jb2E6OmRpZENvbXBsZXRlV2l0aEVycm9y
KGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImIGVycm9yLCBjb25zdCBXZWJDb3JlOjpOZXR3
b3JrTG9hZE1ldHJpY3MmIG5ldHdvcmtMb2FkTWV0cmljcykKIHsKICAgICBpZiAoZXJyb3IuaXNO
dWxsKCkpCi0gICAgICAgIEVORF9TSUdOUE9TVChtX3Rhc2ssICJjb21wbGV0ZWQiKTsKKyAgICAg
ICAgV1RGRW5kU2lnbnBvc3QobV90YXNrLmdldCgpLCAiRGF0YVRhc2siLCAiY29tcGxldGVkIik7
CiAgICAgZWxzZQotICAgICAgICBFTkRfU0lHTlBPU1QobV90YXNrLCAiZmFpbGVkIik7CisgICAg
ICAgIFdURkVuZFNpZ25wb3N0KG1fdGFzay5nZXQoKSwgIkRhdGFUYXNrIiwgImZhaWxlZCIpOwog
CiAgICAgaWYgKG1fY2xpZW50KQogICAgICAgICBtX2NsaWVudC0+ZGlkQ29tcGxldGVXaXRoRXJy
b3IoZXJyb3IsIG5ldHdvcmtMb2FkTWV0cmljcyk7CkBAIC0zNzUsNyArMzIxLDcgQEAgdm9pZCBO
ZXR3b3JrRGF0YVRhc2tDb2NvYTo6ZGlkQ29tcGxldGVXaXRoRXJyb3IoY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VFcnJvciYgZXIKIAogdm9pZCBOZXR3b3JrRGF0YVRhc2tDb2NvYTo6ZGlkUmVjZWl2
ZURhdGEoUmVmPFdlYkNvcmU6OlNoYXJlZEJ1ZmZlcj4mJiBkYXRhKQogewotICAgIEVNSVRfU0lH
TlBPU1QobV90YXNrLCAicmVjZWl2ZWQgJXpkIGJ5dGVzIiwgZGF0YS0+c2l6ZSgpKTsKKyAgICBX
VEZFbWl0U2lnbnBvc3QobV90YXNrLmdldCgpLCAiRGF0YVRhc2siLCAicmVjZWl2ZWQgJXpkIGJ5
dGVzIiwgZGF0YS0+c2l6ZSgpKTsKIAogICAgIGlmIChtX2NsaWVudCkKICAgICAgICAgbV9jbGll
bnQtPmRpZFJlY2VpdmVEYXRhKFdURk1vdmUoZGF0YSkpOwpAQCAtMzgzLDEzICszMjksMTMgQEAg
dm9pZCBOZXR3b3JrRGF0YVRhc2tDb2NvYTo6ZGlkUmVjZWl2ZURhdGEoUmVmPFdlYkNvcmU6OlNo
YXJlZEJ1ZmZlcj4mJiBkYXRhKQogCiB2b2lkIE5ldHdvcmtEYXRhVGFza0NvY29hOjpkaWRSZWNl
aXZlUmVzcG9uc2UoV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYmIHJlc3BvbnNlLCBOZWdvdGlh
dGVkTGVnYWN5VExTIG5lZ290aWF0ZWRMZWdhY3lUTFMsIFdlYktpdDo6UmVzcG9uc2VDb21wbGV0
aW9uSGFuZGxlciYmIGNvbXBsZXRpb25IYW5kbGVyKQogewotICAgIEVNSVRfU0lHTlBPU1QobV90
YXNrLCAicmVjZWl2ZWQgcmVzcG9uc2UgaGVhZGVycyIpOworICAgIFdURkVtaXRTaWducG9zdCht
X3Rhc2suZ2V0KCksICJEYXRhVGFzayIsICJyZWNlaXZlZCByZXNwb25zZSBoZWFkZXJzIik7CiAg
ICAgTmV0d29ya0RhdGFUYXNrOjpkaWRSZWNlaXZlUmVzcG9uc2UoV1RGTW92ZShyZXNwb25zZSks
IG5lZ290aWF0ZWRMZWdhY3lUTFMsIFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKTsKIH0KIAog
dm9pZCBOZXR3b3JrRGF0YVRhc2tDb2NvYTo6d2lsbFBlcmZvcm1IVFRQUmVkaXJlY3Rpb24oV2Vi
Q29yZTo6UmVzb3VyY2VSZXNwb25zZSYmIHJlZGlyZWN0UmVzcG9uc2UsIFdlYkNvcmU6OlJlc291
cmNlUmVxdWVzdCYmIHJlcXVlc3QsIFJlZGlyZWN0Q29tcGxldGlvbkhhbmRsZXImJiBjb21wbGV0
aW9uSGFuZGxlcikKIHsKLSAgICBFTUlUX1NJR05QT1NUKG1fdGFzaywgInJlZGlyZWN0Iik7Cisg
ICAgV1RGRW1pdFNpZ25wb3N0KG1fdGFzay5nZXQoKSwgIkRhdGFUYXNrIiwgInJlZGlyZWN0Iik7
CiAKICAgICBpZiAocmVkaXJlY3RSZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpID09IDMwNyB8fCBy
ZWRpcmVjdFJlc3BvbnNlLmh0dHBTdGF0dXNDb2RlKCkgPT0gMzA4KSB7CiAgICAgICAgIEFTU0VS
VChtX2xhc3RIVFRQTWV0aG9kID09IHJlcXVlc3QuaHR0cE1ldGhvZCgpKTsKQEAgLTU0MywxMyAr
NDg5LDEzIEBAIFN0cmluZyBOZXR3b3JrRGF0YVRhc2tDb2NvYTo6c3VnZ2VzdGVkRmlsZW5hbWUo
KSBjb25zdAogCiB2b2lkIE5ldHdvcmtEYXRhVGFza0NvY29hOjpjYW5jZWwoKQogewotICAgIEVN
SVRfU0lHTlBPU1QobV90YXNrLCAiY2FuY2VsIik7CisgICAgV1RGRW1pdFNpZ25wb3N0KG1fdGFz
ay5nZXQoKSwgIkRhdGFUYXNrIiwgImNhbmNlbCIpOwogICAgIFttX3Rhc2sgY2FuY2VsXTsKIH0K
IAogdm9pZCBOZXR3b3JrRGF0YVRhc2tDb2NvYTo6cmVzdW1lKCkKIHsKLSAgICBFTUlUX1NJR05Q
T1NUKG1fdGFzaywgInJlc3VtZSIpOworICAgIFdURkVtaXRTaWducG9zdChtX3Rhc2suZ2V0KCks
ICJEYXRhVGFzayIsICJyZXN1bWUiKTsKIAogICAgIGlmIChtX3NjaGVkdWxlZEZhaWx1cmVUeXBl
ICE9IE5vRmFpbHVyZSkKICAgICAgICAgbV9mYWlsdXJlVGltZXIuc3RhcnRPbmVTaG90KDBfcyk7
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>392152</attachid>
            <date>2020-03-02 10:32:00 -0800</date>
            <delta_ts>2020-03-02 20:29:51 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208395-20200302103159.patch</filename>
            <type>text/plain</type>
            <size>28136</size>
            <attacher name="Ben Nham">nham</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU3NzE1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IGJjMTM5MGVhMWFiZjEwN2ZlMjk3ZGUw
MTYxNGY0ZGQ5MzhlNmE1ZjEuLjcwYWE0YzE5NTgxOTdlZjVkNTkwNTcwZDVhZDI3OGM5NWFiNmE1
ZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjYgQEAKKzIwMjAtMDMtMDIgIEJlbiBOaGFtICA8bmhhbUBhcHBs
ZS5jb20+CisKKyAgICAgICAgW1dURl0gQWRkIHNpZ25wb3N0IEFQSQorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA4Mzk1CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKworICAgICAgICBXZSB3YW50IHRvIHN0YXJ0IHVzaW5n
IG9zX3NpZ25wb3N0IGluc3RlYWQgb2Yga2RlYnVnX3RyYWNlIHdoZW4gZW1pdHRpbmcgcGVyZm9y
bWFuY2UgZXZlbnRzLAorICAgICAgICBiZWNhdXNlIGl0IGlzIHVzdWFsbHkgY2hlYXBlciAoZG9l
c24ndCByZXF1aXJlIGEgc3lzdGVtIGNhbGwgdW5sZXNzIHRoZSBsb2cgYnVmZmVyIGlzIGZ1bGwp
CisgICAgICAgIGFuZCBhbGxvd3MgZm9yIHJpY2hlciB0cmFjZXBvaW50cyAoYWxsb3dzIGZvciBs
b2dnaW5nIHN0cmluZ3MgYXMgd2VsbCBhcyBpbnRlZ2VycykuCisKKyAgICAgICAgVG8gZmFjaWxp
dGF0ZSB0aGlzLCB0aGlzIG1vdmVzIHRoZSBvc19zaWducG9zdCB3cmFwcGVycyBpbiBOZXR3b3Jr
RGF0YVRhc2tDb2NvYSB0bworICAgICAgICBXVEYuIFNpbmNlIHNpZ25wb3N0cyBjYW4gY29udGFp
biBzZW5zaXRpdmUgc3RyaW5ncyAobGlrZSBVUkxzKSwgY3VycmVudGx5IHdlIG9ubHkgZW5hYmxl
CisgICAgICAgIHRoZW0gb24gQXBwbGUtaW50ZXJuYWwgZGV2aWNlcyB3aGVuIGFuIGVudmlyb25t
ZW50IHZhcmlhYmxlIGlzIHNldC4KKworICAgICAgICAqIFdURi54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qOgorICAgICAgICAqIHd0Zi9QbGF0Zm9ybU1hYy5jbWFrZToKKyAgICAgICAgKiB3dGYv
U3lzdGVtVHJhY2luZy5oOgorICAgICAgICAqIHd0Zi9jb2NvYS9TeXN0ZW1UcmFjaW5nQ29jb2Eu
Y3BwOiBBZGRlZC4KKyAgICAgICAgKFdURlNpZ25wb3N0c0VuYWJsZWQpOgorICAgICAgICAoV1RG
U2lnbnBvc3RMb2dIYW5kbGUpOgorICAgICAgICAqIHd0Zi9zcGkvZGFyd2luL09TVmFyaWFudFNQ
SS5oOiBSZW5hbWVkIGZyb20gU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvT1NWYXJp
YW50U1BJLmguCisKIDIwMjAtMDMtMDIgIHlvdWVubiBmYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29t
PgogCiAgICAgICAgIEVuYWJsZSBjYXB0dXJlIGluIEdQVVByb2Nlc3MgYnkgZGVmYXVsdCBmb3Ig
cmVjZW50IHBsYXRmb3JtcyBvbmx5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hh
bmdlTG9nIGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwppbmRleCA2N2FkOGUyNjIxMDc0
ZDRhNTA4NTI2ZDdmNDFkOWM3ZjY1YzI0Y2Q3Li45ZGE4NGNjNTU0MDg0NGM5MmRjOTRjNzAyNmFk
NDBiZDU1M2NlNTYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCisr
KyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAyMC0w
My0wMiAgQmVuIE5oYW0gIDxuaGFtQGFwcGxlLmNvbT4KKworICAgICAgICBbV1RGXSBBZGQgc2ln
bnBvc3QgQVBJCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMDgzOTUKKworICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgorCisgICAg
ICAgIFdlIHdhbnQgdG8gc3RhcnQgdXNpbmcgb3Nfc2lnbnBvc3QgaW5zdGVhZCBvZiBrZGVidWdf
dHJhY2Ugd2hlbiBlbWl0dGluZyBwZXJmb3JtYW5jZSBldmVudHMsCisgICAgICAgIGJlY2F1c2Ug
aXQgaXMgdXN1YWxseSBjaGVhcGVyIChkb2Vzbid0IHJlcXVpcmUgYSBzeXN0ZW0gY2FsbCB1bmxl
c3MgdGhlIGxvZyBidWZmZXIgaXMgZnVsbCkKKyAgICAgICAgYW5kIGFsbG93cyBmb3IgcmljaGVy
IHRyYWNlcG9pbnRzIChhbGxvd3MgZm9yIGxvZ2dpbmcgc3RyaW5ncyBhcyB3ZWxsIGFzIGludGVn
ZXJzKS4KKworICAgICAgICBUbyBmYWNpbGl0YXRlIHRoaXMsIHRoaXMgbW92ZXMgdGhlIG9zX3Np
Z25wb3N0IHdyYXBwZXJzIGluIE5ldHdvcmtEYXRhVGFza0NvY29hIHRvCisgICAgICAgIFdURi4g
U2luY2Ugc2lnbnBvc3RzIGNhbiBjb250YWluIHNlbnNpdGl2ZSBzdHJpbmdzIChsaWtlIFVSTHMp
LCBjdXJyZW50bHkgd2Ugb25seSBlbmFibGUKKyAgICAgICAgdGhlbSBvbiBBcHBsZS1pbnRlcm5h
bCBkZXZpY2VzIHdoZW4gYW4gZW52aXJvbm1lbnQgdmFyaWFibGUgaXMgc2V0LgorCisgICAgICAg
ICogUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogcGFsL1BsYXRmb3Jt
TWFjLmNtYWtlOgorICAgICAgICAqIHNwaS9kYXJ3aW4vT1NWYXJpYW50U1BJLmg6IFJlbmFtZWQg
dG8gd3RmL3NwaS9kYXJ3aW4vT1NWYXJpYW50U1BJLmguCisKIDIwMjAtMDItMjcgIERvbiBPbG1z
dGVhZCAgPGRvbi5vbG1zdGVhZEBzb255LmNvbT4KIAogICAgICAgICBbQ01ha2VdIEFkZCBXZWJL
aXQ6OlBBTCB0YXJnZXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291
cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggZDk0ZWM0MDMwYjViMmQyMDYyNDhkZWQ4MjZlMjQz
MTMyM2QzMzUxMi4uY2Y0MWM4Mzk1NTZlZTRlNzFiMWNhYmMxN2ZkY2E0NGRhYzA0MzQzOCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwzMSBAQAorMjAyMC0wMy0wMiAgQmVuIE5oYW0gIDxuaGFtQGFwcGxl
LmNvbT4KKworICAgICAgICBbV1RGXSBBZGQgc2lnbnBvc3QgQVBJCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDgzOTUKKworICAgICAgICBSZXZpZXdl
ZCBieSBBbGV4IENocmlzdGVuc2VuLgorCisgICAgICAgIFdlIHdhbnQgdG8gc3RhcnQgdXNpbmcg
b3Nfc2lnbnBvc3QgaW5zdGVhZCBvZiBrZGVidWdfdHJhY2Ugd2hlbiBlbWl0dGluZyBwZXJmb3Jt
YW5jZSBldmVudHMsCisgICAgICAgIGJlY2F1c2UgaXQgaXMgdXN1YWxseSBjaGVhcGVyIChkb2Vz
bid0IHJlcXVpcmUgYSBzeXN0ZW0gY2FsbCB1bmxlc3MgdGhlIGxvZyBidWZmZXIgaXMgZnVsbCkK
KyAgICAgICAgYW5kIGFsbG93cyBmb3IgcmljaGVyIHRyYWNlcG9pbnRzIChhbGxvd3MgZm9yIGxv
Z2dpbmcgc3RyaW5ncyBhcyB3ZWxsIGFzIGludGVnZXJzKS4KKworICAgICAgICBUbyBmYWNpbGl0
YXRlIHRoaXMsIHRoaXMgbW92ZXMgdGhlIG9zX3NpZ25wb3N0IHdyYXBwZXJzIGluIE5ldHdvcmtE
YXRhVGFza0NvY29hIHRvCisgICAgICAgIFdURi4gU2luY2Ugc2lnbnBvc3RzIGNhbiBjb250YWlu
IHNlbnNpdGl2ZSBzdHJpbmdzIChsaWtlIFVSTHMpLCBjdXJyZW50bHkgd2Ugb25seSBlbmFibGUK
KyAgICAgICAgdGhlbSBvbiBBcHBsZS1pbnRlcm5hbCBkZXZpY2VzIHdoZW4gYW4gZW52aXJvbm1l
bnQgdmFyaWFibGUgaXMgc2V0LgorCisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0
d29ya0RhdGFUYXNrQ29jb2EubW06CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtEYXRhVGFza0Nv
Y29hOjpOZXR3b3JrRGF0YVRhc2tDb2NvYSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtEYXRh
VGFza0NvY29hOjpkaWRTZW5kRGF0YSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtEYXRhVGFz
a0NvY29hOjpkaWRSZWNlaXZlQ2hhbGxlbmdlKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0Rh
dGFUYXNrQ29jb2E6OmRpZENvbXBsZXRlV2l0aEVycm9yKToKKyAgICAgICAgKFdlYktpdDo6TmV0
d29ya0RhdGFUYXNrQ29jb2E6OmRpZFJlY2VpdmVEYXRhKToKKyAgICAgICAgKFdlYktpdDo6TmV0
d29ya0RhdGFUYXNrQ29jb2E6OmRpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJLaXQ6
Ok5ldHdvcmtEYXRhVGFza0NvY29hOjp3aWxsUGVyZm9ybUhUVFBSZWRpcmVjdGlvbik6CisgICAg
ICAgIChXZWJLaXQ6Ok5ldHdvcmtEYXRhVGFza0NvY29hOjpjYW5jZWwpOgorICAgICAgICAoV2Vi
S2l0OjpOZXR3b3JrRGF0YVRhc2tDb2NvYTo6cmVzdW1lKToKKyAgICAgICAgKHNpZ25wb3N0TG9n
SGFuZGxlKTogRGVsZXRlZC4KKyAgICAgICAgKHNpZ25wb3N0c0VuYWJsZWQpOiBEZWxldGVkLgor
CiAyMDIwLTAzLTAyICBKYWNvYiBVcGhvZmYgIDxqYWNvYl91cGhvZmZAYXBwbGUuY29tPgogCiAg
ICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIyNTc2ODcuCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV1RGL1dURi54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dURi9XVEYueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAxYTYxMTQzM2QxY2Y0M2ZjNjEzMTA4N2ZlNDZm
MmIxNTgwNzZiYjFiLi5lZTM1YjAyMTU5ZDk3NmZiYzM3MzMyYTI5YzUwOTg5YTE4Yjc4NmFkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV1RGL1dURi54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBi
L1NvdXJjZS9XVEYvV1RGLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE4MSw2ICsxODEs
NyBAQAogCQlFM0EzMkJDNDFGQzgzMEUyMDA3RDdFNzYgLyogSlNWYWx1ZU1hbGxvYy5jcHAgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFM0EzMkJDMjFGQzgz
MEUyMDA3RDdFNzYgLyogSlNWYWx1ZU1hbGxvYy5jcHAgKi87IH07CiAJCUU0QTBBRDM5MUE5NjI0
NTUwMDUzNkRGNiAvKiBXb3JrUXVldWUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gRTRBMEFEMzcxQTk2MjQ1NTAwNTM2REY2IC8qIFdvcmtRdWV1ZS5j
cHAgKi87IH07CiAJCUU0QTBBRDNEMUE5NjI1M0MwMDUzNkRGNiAvKiBXb3JrUXVldWVDb2NvYS5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNEEwQUQz
QzFBOTYyNTNDMDA1MzZERjYgLyogV29ya1F1ZXVlQ29jb2EuY3BwICovOyB9OworCQlFQjYxRURD
NzI0MDlDQ0MxMDAxRUZFMzYgLyogU3lzdGVtVHJhY2luZ0NvY29hLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEVCNjFFREM2MjQwOUNDQzAwMDFFRkUz
NiAvKiBTeXN0ZW1UcmFjaW5nQ29jb2EuY3BwICovOyB9OwogCQlGRTA1RkFGRjFGRTUwMDc1MDAw
OTMyMzAgLyogV1RGQXNzZXJ0aW9ucy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBGRTA1RkFGRTFGRTUwMDc1MDAwOTMyMzAgLyogV1RGQXNzZXJ0aW9u
cy5jcHAgKi87IH07CiAJCUZFMUUyQzNCMjI0MEMwNjYwMEY2QjcyOSAvKiBQdHJUYWcuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRkUxRTJDMzkyMjQw
QzA1NDAwRjZCNzI5IC8qIFB0clRhZy5jcHAgKi87IH07CiAJCUZFMUUyQzQyMjI0MTg3QzYwMEY2
QjcyOSAvKiBQbGF0Zm9ybVJlZ2lzdGVycy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBGRTFFMkM0MTIyNDE4N0M2MDBGNkI3MjkgLyogUGxhdGZvcm1S
ZWdpc3RlcnMuY3BwICovOyB9OwpAQCAtNzI4LDcgKzcyOSw5IEBACiAJCUU0QTBBRDM3MUE5NjI0
NTUwMDUzNkRGNiAvKiBXb3JrUXVldWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gV29ya1F1ZXVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTRB
MEFEMzgxQTk2MjQ1NTAwNTM2REY2IC8qIFdvcmtRdWV1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBXb3JrUXVldWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
RTRBMEFEM0MxQTk2MjUzQzAwNTM2REY2IC8qIFdvcmtRdWV1ZUNvY29hLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdvcmtRdWV1ZUNvY29hLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRUI2MUVEQzYyNDA5Q0NDMDAwMUVGRTM2IC8qIFN5c3RlbVRy
YWNpbmdDb2NvYS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTeXN0
ZW1UcmFjaW5nQ29jb2EuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFQjk1RTFF
RjE2MUE3MjQxMDA4OUEyRjUgLyogQnl0ZU9yZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEJ5dGVPcmRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFQkZG
NjdGQzI0MEQ3RDY2MDA3OEZGMUIgLyogT1NWYXJpYW50U1BJLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IE9TVmFyaWFudFNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQlFRjdENkNENTlEODY0MkE4QTBEQTg2QUQgLyogU3RhY2tUcmFjZS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBTdGFja1RyYWNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUY3MkJCREIxMDdGQTQyNDg4NjE3OEI5RSAvKiBTeW1ib2xJbXBsLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFN5bWJvbEltcGwuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlGRTA1RkFFNjFGREIyMTQzMDAwOTMyMzAgLyogRHVtYlB0
clRyYWl0cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEdW1iUHRyVHJhaXRz
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xNDUzLDYgKzE0NTYsNyBAQAogCQkJ
CTE0OTMzRTIxMjI4QzIyREYwMEY3OUU0NiAvKiBEYXRhVmF1bHRTUEkuaCAqLywKIAkJCQlFNDMx
Q0M0QTIxMTg3QURCMDAwQzhBMDcgLyogRGlzcGF0Y2hTUEkuaCAqLywKIAkJCQk5M0RERTkzMTFD
REMwNTJEMDBGRDM0OTEgLyogZHlsZFNQSS5oICovLAorCQkJCUVCRkY2N0ZDMjQwRDdENjYwMDc4
RkYxQiAvKiBPU1ZhcmlhbnRTUEkuaCAqLywKIAkJCQk2NTkzQ0RFOTIyRkE0QTUyMDA4NzcxNEIg
LyogUHJvY2Vzc01lbW9yeUZvb3RwcmludC5oICovLAogCQkJCUE1MDk4QUZGMUMxNjlFMDcwMDA4
Nzc5NyAvKiBTYW5kYm94U1BJLmggKi8sCiAJCQkJQ0U3M0UwMjQxOURDQjdBQjAwNTgwRDVDIC8q
IFhQQ1NQSS5oICovLApAQCAtMTUxMyw2ICsxNTE3LDcgQEAKIAkJCQk1Q0MwRUU4ODIxNjJCQzIy
MDBBMUE4NDIgLyogTlNVUkxFeHRyYXMubW0gKi8sCiAJCQkJRTM5MkZBMjYyMkU5MkJGRjAwRUNE
QzczIC8qIFJlc291cmNlVXNhZ2VDb2NvYS5jcHAgKi8sCiAJCQkJQTMwRDQxMkMxRjBERTBCQTAw
QjcxOTU0IC8qIFNvZnRMaW5raW5nLmggKi8sCisJCQkJRUI2MUVEQzYyNDA5Q0NDMDAwMUVGRTM2
IC8qIFN5c3RlbVRyYWNpbmdDb2NvYS5jcHAgKi8sCiAJCQkJNUNDMEVFODYyMTYyQkMyMjAwQTFB
ODQyIC8qIFVSTENvY29hLm1tICovLAogCQkJCUU0QTBBRDNDMUE5NjI1M0MwMDUzNkRGNiAvKiBX
b3JrUXVldWVDb2NvYS5jcHAgKi8sCiAJCQkpOwpAQCAtMTcyMiw2ICsxNzI3LDcgQEAKIAkJCQlB
OEE0NzNCNzE1MUE4MjVCMDA0MTIzRkYgLyogc3RydG9kLmNjIGluIFNvdXJjZXMgKi8sCiAJCQkJ
NTIxODMwMTJDOTlFNDc2QTg0RUVCRUE4IC8qIFN5bWJvbEltcGwuY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJNzBBOTkzRkUxQUQ3MTUxMzAwRkE2MTVCIC8qIFN5bWJvbFJlZ2lzdHJ5LmNwcCBpbiBT
b3VyY2VzICovLAorCQkJCUVCNjFFREM3MjQwOUNDQzEwMDFFRkUzNiAvKiBTeXN0ZW1UcmFjaW5n
Q29jb2EuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMUMxODFDN0YxRDMwNzhEQTAwRjVGQTE2IC8q
IFRleHRCcmVha0l0ZXJhdG9yLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFDMTgxQzk2MUQzMDgw
MEEwMEY1RkExNiAvKiBUZXh0QnJlYWtJdGVyYXRvckludGVybmFsSUNVQ29jb2EuY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJQTNFNEREOTMxRjNBODAzNDAwREVEMEI0IC8qIFRleHRTdHJlYW0uY3Bw
IGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybU1hYy5j
bWFrZSBiL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtTWFjLmNtYWtlCmluZGV4IDJjZjY3N2FlNTBm
MDk1Njk5YWZiNGI2OTNmODc5ZmIxNWM4Mjk1NzQuLjZkNTgzMTBkZDIwN2ZiYWNlNTMzN2NlM2Zj
YWZkYjZiOTBiM2Y2OWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtTWFjLmNt
YWtlCisrKyBiL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtTWFjLmNtYWtlCkBAIC0zMSw2ICszMSw3
IEBAIGxpc3QoQVBQRU5EIFdURl9QVUJMSUNfSEVBREVSUwogICAgIHNwaS9jb2NvYS9vYmpjU1BJ
LmgKIAogICAgIHNwaS9kYXJ3aW4vRGF0YVZhdWx0U1BJLmgKKyAgICBzcGkvZGFyd2luL09TVmFy
aWFudFNQSS5oCiAgICAgc3BpL2Rhcndpbi9Qcm9jZXNzTWVtb3J5Rm9vdHByaW50LmgKICAgICBz
cGkvZGFyd2luL1NhbmRib3hTUEkuaAogICAgIHNwaS9kYXJ3aW4vWFBDU1BJLmgKQEAgLTY0LDYg
KzY1LDcgQEAgbGlzdChBUFBFTkQgV1RGX1NPVVJDRVMKICAgICBjb2NvYS9NZW1vcnlQcmVzc3Vy
ZUhhbmRsZXJDb2NvYS5tbQogICAgIGNvY29hL05TVVJMRXh0cmFzLm1tCiAgICAgY29jb2EvUmVz
b3VyY2VVc2FnZUNvY29hLmNwcAorICAgIGNvY29hL1N5c3RlbVRyYWNpbmdDb2NvYS5jcHAKICAg
ICBjb2NvYS9VUkxDb2NvYS5tbQogICAgIGNvY29hL1dvcmtRdWV1ZUNvY29hLmNwcAogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9TeXN0ZW1UcmFjaW5nLmggYi9Tb3VyY2UvV1RGL3d0Zi9T
eXN0ZW1UcmFjaW5nLmgKaW5kZXggMGJmNWRkOWQ0MDBlODUwYzQ2NDRiZTEwNGZkMmQyZjI3ZTRi
MWRmZS4uMzUxZjk0NTFmMGExMWFmNzExN2U4ZTc4YTUxN2UxNGEzOWZkYWE3NyAxMDA2NDQKLS0t
IGEvU291cmNlL1dURi93dGYvU3lzdGVtVHJhY2luZy5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL1N5
c3RlbVRyYWNpbmcuaApAQCAtMTU4LDMgKzE1OCwzOCBAQCB1c2luZyBXVEY6OlRyYWNlU2NvcGU7
CiB1c2luZyBXVEY6OnRyYWNlUG9pbnQ7CiAKICNlbmRpZiAvLyBfX2NwbHVzcGx1cworCisjaWYg
SEFWRShPU19TSUdOUE9TVCkKKworI2ltcG9ydCA8b3Mvc2lnbnBvc3QuaD4KKworV1RGX0VYVEVS
Tl9DX0JFR0lOCitXVEZfRVhQT1JUX1BSSVZBVEUgYm9vbCBXVEZTaWducG9zdHNFbmFibGVkKCk7
CitXVEZfRVhQT1JUX1BSSVZBVEUgb3NfbG9nX3QgV1RGU2lnbnBvc3RMb2dIYW5kbGUoKTsKK1dU
Rl9FWFRFUk5fQ19FTkQKKworI2RlZmluZSBXVEZFbWl0U2lnbnBvc3QocG9pbnRlciwgbmFtZSwg
Li4uKSBcCisgICAgV1RGRW1pdFNpZ25wb3N0V2l0aEZ1bmN0aW9uKG9zX3NpZ25wb3N0X2V2ZW50
X2VtaXQsIChwb2ludGVyKSwgbmFtZSwgIyNfX1ZBX0FSR1NfXykKKworI2RlZmluZSBXVEZCZWdp
blNpZ25wb3N0KHBvaW50ZXIsIG5hbWUsIC4uLikgXAorICAgIFdURkVtaXRTaWducG9zdFdpdGhG
dW5jdGlvbihvc19zaWducG9zdF9pbnRlcnZhbF9iZWdpbiwgKHBvaW50ZXIpLCBuYW1lLCAjI19f
VkFfQVJHU19fKQorCisjZGVmaW5lIFdURkVuZFNpZ25wb3N0KHBvaW50ZXIsIG5hbWUsIC4uLikg
XAorICAgIFdURkVtaXRTaWducG9zdFdpdGhGdW5jdGlvbihvc19zaWducG9zdF9pbnRlcnZhbF9l
bmQsIChwb2ludGVyKSwgbmFtZSwgIyNfX1ZBX0FSR1NfXykKKworI2RlZmluZSBXVEZFbWl0U2ln
bnBvc3RXaXRoRnVuY3Rpb24oZW1pdEZ1bmMsIHBvaW50ZXIsIG5hbWUsIC4uLikgXAorZG8geyBc
CisgICAgaWYgKFVOTElLRUxZKFdURlNpZ25wb3N0c0VuYWJsZWQoKSkpIHsgXAorICAgICAgICBv
c19sb2dfdCBoYW5kbGUgPSBXVEZTaWducG9zdExvZ0hhbmRsZSgpOyBcCisgICAgICAgIG9zX3Np
Z25wb3N0X2lkX3Qgc2lnbnBvc3RJRCA9IG9zX3NpZ25wb3N0X2lkX21ha2Vfd2l0aF9wb2ludGVy
KGhhbmRsZSwgKHBvaW50ZXIpKTsgXAorICAgICAgICBlbWl0RnVuYyhoYW5kbGUsIHNpZ25wb3N0
SUQsIG5hbWUsICMjX19WQV9BUkdTX18pOyBcCisgICAgfSBcCit9IHdoaWxlICgwKQorCisjZWxz
ZQorCisjZGVmaW5lIFdURkVtaXRTaWducG9zdChwb2ludGVyLCBuYW1lLCAuLi4pIGRvIHsgfSB3
aGlsZSAoMCkKKyNkZWZpbmUgV1RGQmVnaW5TaWducG9zdChwb2ludGVyLCBuYW1lLCAuLi4pIGRv
IHsgfSB3aGlsZSAoMCkKKyNkZWZpbmUgV1RGRW5kU2lnbnBvc3QocG9pbnRlciwgbmFtZSwgLi4u
KSBkbyB7IH0gd2hpbGUgKDApCisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYv
Y29jb2EvU3lzdGVtVHJhY2luZ0NvY29hLmNwcCBiL1NvdXJjZS9XVEYvd3RmL2NvY29hL1N5c3Rl
bVRyYWNpbmdDb2NvYS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzI2M2U3YTFmNGNlMTAzMTM1OTNhYWU2YmI3
NGQxOTIxMzU2NDEwZAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XVEYvd3RmL2NvY29hL1N5
c3RlbVRyYWNpbmdDb2NvYS5jcHAKQEAgLTAsMCArMSw1OSBAQAorLyoKKyogQ29weXJpZ2h0IChD
KSAyMDE5IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyoKKyogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucworKiBhcmUgbWV0OgorKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisqIDIuIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJp
Z2h0CisqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKKyogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyoKKyogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisqIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhF
CisqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUgorKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hB
TEwgQVBQTEUgSU5DLiBPUgorKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyogRVhFTVBMQVJZLCBPUiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorKiBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IKKyogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWQorKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisqIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisq
LworCisjaW1wb3J0ICJjb25maWcuaCIKKyNpbXBvcnQgPHd0Zi9TeXN0ZW1UcmFjaW5nLmg+CisK
KyNpbmNsdWRlIDxjc3RkbGliPgorI2luY2x1ZGUgPGRpc3BhdGNoL2Rpc3BhdGNoLmg+CisjaW5j
bHVkZSA8d3RmL3NwaS9kYXJ3aW4vT1NWYXJpYW50U1BJLmg+CisKK2Jvb2wgV1RGU2lnbnBvc3Rz
RW5hYmxlZCgpCit7CisgICAgc3RhdGljIGRpc3BhdGNoX29uY2VfdCBvbmNlOworICAgIHN0YXRp
YyBib29sIGVuYWJsZWQ7CisKKyAgICBkaXNwYXRjaF9vbmNlKCZvbmNlLCBeeworICAgICAgICAv
LyBTaWducG9zdHMgbWF5IGNvbnRhaW4gc2Vuc2l0aXZlIGluZm8gdGhhdCB3ZSBkb24ndCB3YW50
IHRvIGVtaXQgdG8gbG9nZCBleGNlcHQgd2hlbgorICAgICAgICAvLyBwcm9maWxpbmcgKHN1Y2gg
YXMgVVJMcykuIFRvIGd1YXJkIGFnYWluc3QgYWNjaWRlbnRhbCBsZWFrYWdlLCBvbmx5IGVuYWJs
ZSB0aGVtIG9uIEFwcGxlCisgICAgICAgIC8vIGludGVybmFsIGJ1aWxkcyB3aGVuIGFuIGVudmly
b25tZW50IHZhcmlhYmxlIGlzIHNldC4KKyAgICAgICAgaWYgKG9zX3ZhcmlhbnRfYWxsb3dzX2lu
dGVybmFsX3NlY3VyaXR5X3BvbGljaWVzKCJjb20uYXBwbGUuV2ViS2l0IikpCisgICAgICAgICAg
ICBlbmFibGVkID0gIXN0cmNtcChnZXRlbnYoIldFQktJVF9TSUdOUE9TVFNfRU5BQkxFRCIpID86
ICIwIiwgIjEiKTsKKyAgICB9KTsKKworICAgIHJldHVybiBlbmFibGVkOworfQorCitvc19sb2df
dCBXVEZTaWducG9zdExvZ0hhbmRsZSgpCit7CisgICAgc3RhdGljIGRpc3BhdGNoX29uY2VfdCBv
bmNlOworICAgIHN0YXRpYyBvc19sb2dfdCBoYW5kbGU7CisKKyAgICBkaXNwYXRjaF9vbmNlKCZv
bmNlLCBeeworICAgICAgICBoYW5kbGUgPSBvc19sb2dfY3JlYXRlKCJjb20uYXBwbGUuV2ViS2l0
IiwgIlNpZ25wb3N0cyIpOworICAgIH0pOworCisgICAgcmV0dXJuIGhhbmRsZTsKK30KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XVEYvd3RmL3NwaS9kYXJ3aW4vT1NWYXJpYW50U1BJLmggYi9Tb3VyY2Uv
V1RGL3d0Zi9zcGkvZGFyd2luL09TVmFyaWFudFNQSS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjg5YjgwMmVhYmM4
ZWFhOTA0OWIyNzYzZjk5Y2Y5MWNiYzhlZTIyYzYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2Uv
V1RGL3d0Zi9zcGkvZGFyd2luL09TVmFyaWFudFNQSS5oCkBAIC0wLDAgKzEsMzggQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMTkgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoK
KyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQg
SVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUg
SU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBP
RgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
IFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
KyAqLworCisjcHJhZ21hIG9uY2UKKworI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCisKKyNp
bXBvcnQgPG9zL3ZhcmlhbnRfcHJpdmF0ZS5oPgorCisjZWxzZQorCitXVEZfRVhURVJOX0NfQkVH
SU4KK2Jvb2wgb3NfdmFyaWFudF9hbGxvd3NfaW50ZXJuYWxfc2VjdXJpdHlfcG9saWNpZXMoY29u
c3QgY2hhciAqKTsKK1dURl9FWFRFUk5fQ19FTkQKKworI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2Vi
Q29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggZGYyZjRkMjRjZGJk
NTA2MjA4YjUxOGZhNjJiNDcwYjQ3M2YyODg0Yi4uYWY5MTdmODIwZGQyMzkwMTNmYzVlMzExNjE4
ZWQzMDAzYTIyNTE4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML1BBTC54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagpAQCAtMTcwLDcgKzE3MCw2IEBACiAJCUNFNTY3Mzg3MjE1MUE3Qjkw
MDJGOTJENyAvKiBJT0tpdFNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQ0U1NjczODYyMTUxQTdCOTAwMkY5MkQ3IC8qIElPS2l0U1BJLmggKi87IH07
CiAJCUU1RDQ1RDEyMjEwNkEwNzQwMEQyQjczOCAvKiBOU0NvbG9yV2VsbFNQSS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTVENDVEMTEyMTA2QTA3NDAw
RDJCNzM4IC8qIE5TQ29sb3JXZWxsU1BJLmggKi87IH07CiAJCUU1RDQ1RDE0MjEwNkExODcwMEQy
QjczOCAvKiBOU1BvcG92ZXJDb2xvcldlbGxTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU1RDQ1RDEzMjEwNkExODcwMEQyQjczOCAvKiBOU1BvcG92
ZXJDb2xvcldlbGxTUEkuaCAqLzsgfTsKLQkJRUI3MDdGQTUyMzk3MzdGODAwNTkwNTNBIC8qIE9T
VmFyaWFudFNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gRUI3MDdGQTQyMzk3MzdGODAwNTkwNTNBIC8qIE9TVmFyaWFudFNQSS5oICovOyB9OwogCQlG
NDQyOTE1RTFGQTUyNDczMDAyQ0M5M0UgLyogTlNGaWxlU2l6ZUZvcm1hdHRlclNQSS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjQ0MjkxNUQxRkE1MjQ3
MzAwMkNDOTNFIC8qIE5TRmlsZVNpemVGb3JtYXR0ZXJTUEkuaCAqLzsgfTsKIAkJRjQ0MjkxNjAx
RkE1MjYxRTAwMkNDOTNFIC8qIEZpbGVTaXplRm9ybWF0dGVyLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGNDQyOTE1RjFGQTUyNjFFMDAyQ0M5M0UgLyog
RmlsZVNpemVGb3JtYXR0ZXIuaCAqLzsgfTsKIAkJRjQ0MjkxNjQxRkE1MjY3MDAwMkNDOTNFIC8q
IEZpbGVTaXplRm9ybWF0dGVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEY0NDI5MTYyMUZBNTI2NzAwMDJDQzkzRSAvKiBGaWxlU2l6ZUZvcm1hdHRl
ci5jcHAgKi87IH07CkBAIC0zNDcsNyArMzQ2LDYgQEAKIAkJQ0U1NjczODYyMTUxQTdCOTAwMkY5
MkQ3IC8qIElPS2l0U1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElPS2l0
U1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUU1RDQ1RDExMjEwNkEwNzQwMEQy
QjczOCAvKiBOU0NvbG9yV2VsbFNQSS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBOU0NvbG9yV2VsbFNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFNUQ0NUQx
MzIxMDZBMTg3MDBEMkI3MzggLyogTlNQb3BvdmVyQ29sb3JXZWxsU1BJLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5TUG9wb3ZlckNvbG9yV2VsbFNQSS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwotCQlFQjcwN0ZBNDIzOTczN0Y4MDA1OTA1M0EgLyogT1NWYXJpYW50
U1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE9TVmFyaWFudFNQSS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlGNDQyOTE1RDFGQTUyNDczMDAyQ0M5M0UgLyog
TlNGaWxlU2l6ZUZvcm1hdHRlclNQSS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOU0ZpbGVTaXplRm9ybWF0
dGVyU1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUY0NDI5MTVGMUZBNTI2MUUw
MDJDQzkzRSAvKiBGaWxlU2l6ZUZvcm1hdHRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBGaWxlU2l6ZUZv
cm1hdHRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlGNDQyOTE2MjFGQTUyNjcw
MDAyQ0M5M0UgLyogRmlsZVNpemVGb3JtYXR0ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRmls
ZVNpemVGb3JtYXR0ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNDQ1LDcg
KzQ0Myw2IEBACiAJCQkJMEMyREExMzgxRjNCRUI0OTAwREJDMzE3IC8qIE5TVVJMRmlsZVR5cGVN
YXBwaW5nc1NQSS5oICovLAogCQkJCUMxNUNCQjMyMjNGMzRBMTIwMDMwMENDNyAvKiBOU1VzZXJE
ZWZhdWx0c1NQSS5oICovLAogCQkJCTU3MEFCOEY4MjBBRjZFM0QwMEI4QkU4NyAvKiBOU1hQQ0Nv
bm5lY3Rpb25TUEkuaCAqLywKLQkJCQlFQjcwN0ZBNDIzOTczN0Y4MDA1OTA1M0EgLyogT1NWYXJp
YW50U1BJLmggKi8sCiAJCQkJMEMyREExMzkxRjNCRUI0OTAwREJDMzE3IC8qIFBhc3NLaXRTUEku
aCAqLywKIAkJCQkwQzJEQTEzQTFGM0JFQjQ5MDBEQkMzMTcgLyogcHRocmVhZFNQSS5oICovLAog
CQkJCTBDMkRBMTNCMUYzQkVCNDkwMERCQzMxNyAvKiBRdWFydHpDb3JlU1BJLmggKi8sCkBAIC04
MDgsNyArODA1LDYgQEAKIAkJCQkwQzc3ODU5RDFGNDUxMzBGMDBGNEVCQjYgLyogTlNXaW5kb3dT
UEkuaCBpbiBIZWFkZXJzICovLAogCQkJCTU3MEFCOEY5MjBBRjZFM0QwMEI4QkU4NyAvKiBOU1hQ
Q0Nvbm5lY3Rpb25TUEkuaCBpbiBIZWFkZXJzICovLAogCQkJCTBDNUFGOTFGMUY0M0E0QzcwMDJF
QUMwMiAvKiBPcGVuR0xFU1NQSS5oIGluIEhlYWRlcnMgKi8sCi0JCQkJRUI3MDdGQTUyMzk3MzdG
ODAwNTkwNTNBIC8qIE9TVmFyaWFudFNQSS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTFGNjNDOUYy
MUE0REJGNzAwNkZCNDNCIC8qIFBhc3NLaXRTb2Z0TGluay5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
MEMyREExNTUxRjNCRUI0OTAwREJDMzE3IC8qIFBhc3NLaXRTUEkuaCBpbiBIZWFkZXJzICovLAog
CQkJCTBDNzc4NTlFMUY0NTEzMEYwMEY0RUJCNiAvKiBQSVBTUEkuaCBpbiBIZWFkZXJzICovLApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9QbGF0Zm9ybU1hYy5jbWFrZSBiL1Nv
dXJjZS9XZWJDb3JlL1BBTC9wYWwvUGxhdGZvcm1NYWMuY21ha2UKaW5kZXggM2I0NzQ4YzlhYjhi
YjgwNTNkYzQyMmVmNmY0OWIzYjAyZGJlNDFlZS4uZDI0YWFlMjk2NmE1NzAzMTA0OWFiNDQ2NGIw
NzUwNmM1ZjNiN2I2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9QbGF0Zm9y
bU1hYy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL1BsYXRmb3JtTWFjLmNtYWtl
CkBAIC01Miw3ICs1Miw2IEBAIGxpc3QoQVBQRU5EIFBBTF9QVUJMSUNfSEVBREVSUwogICAgIHNw
aS9jb2NvYS9OU1VSTERvd25sb2FkU1BJLmgKICAgICBzcGkvY29jb2EvTlNVUkxGaWxlVHlwZU1h
cHBpbmdzU1BJLmgKICAgICBzcGkvY29jb2EvTlNYUENDb25uZWN0aW9uU1BJLmgKLSAgICBzcGkv
Y29jb2EvT1NWYXJpYW50U1BJLmgKICAgICBzcGkvY29jb2EvUGFzc0tpdFNQSS5oCiAgICAgc3Bp
L2NvY29hL1F1YXJ0ekNvcmVTUEkuaAogICAgIHNwaS9jb2NvYS9TZWNLZXlQcm94eVNQSS5oCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9PU1ZhcmlhbnRTUEku
aCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL09TVmFyaWFudFNQSS5oCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4OWI4MDJlYWJjOGVhYTkwNDliMjc2M2Y5OWNmOTFj
YmM4ZWUyMmM2Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBh
L1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL09TVmFyaWFudFNQSS5oCisrKyAvZGV2
L251bGwKQEAgLTEsMzggKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxOSBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
LSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwot
ICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAq
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNwcmFnbWEgb25jZQotCi0jaWYg
VVNFKEFQUExFX0lOVEVSTkFMX1NESykKLQotI2ltcG9ydCA8b3MvdmFyaWFudF9wcml2YXRlLmg+
Ci0KLSNlbHNlCi0KLVdURl9FWFRFUk5fQ19CRUdJTgotYm9vbCBvc192YXJpYW50X2FsbG93c19p
bnRlcm5hbF9zZWN1cml0eV9wb2xpY2llcyhjb25zdCBjaGFyICopOwotV1RGX0VYVEVSTl9DX0VO
RAotCi0jZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29j
b2EvTmV0d29ya0RhdGFUYXNrQ29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L2NvY29hL05ldHdvcmtEYXRhVGFza0NvY29hLm1tCmluZGV4IDU2MDlkYjFmZjE2NzUyM2Q1YjI2
OWFhY2FkZDcyMzI3YjU0NzZkMmQuLjYxYTM5MjJmNzBkN2VjZDcwZjQ2OGJlYzY5YTYyZWU1ZDli
YWRiYTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0
d29ya0RhdGFUYXNrQ29jb2EubW0KKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9j
b2NvYS9OZXR3b3JrRGF0YVRhc2tDb2NvYS5tbQpAQCAtNDEsNzggKzQxLDIzIEBACiAjaW1wb3J0
IDxXZWJDb3JlL1JlZ2lzdHJhYmxlRG9tYWluLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1Jlc291cmNl
UmVxdWVzdC5oPgogI2ltcG9ydCA8cGFsL3NwaS9jZi9DRk5ldHdvcmtTUEkuaD4KLSNpbXBvcnQg
PHBhbC9zcGkvY29jb2EvT1NWYXJpYW50U1BJLmg+CiAjaW1wb3J0IDx3dGYvQmxvY2tQdHIuaD4K
ICNpbXBvcnQgPHd0Zi9GaWxlU3lzdGVtLmg+CiAjaW1wb3J0IDx3dGYvTWFpblRocmVhZC5oPgog
I2ltcG9ydCA8d3RmL1Byb2Nlc3NQcml2aWxlZ2UuaD4KKyNpbXBvcnQgPHd0Zi9TeXN0ZW1UcmFj
aW5nLmg+CiAjaW1wb3J0IDx3dGYvdGV4dC9CYXNlNjQuaD4KIAogI2lmIEhBVkUoTldfQUNUSVZJ
VFkpCiAjaW1wb3J0IDxDRk5ldHdvcmsvQ0ZOU1VSTENvbm5lY3Rpb24uaD4KICNlbmRpZgogCi0j
aWYgSEFWRShPU19TSUdOUE9TVCkKLQogI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCiAjaW5j
bHVkZSA8V2ViS2l0QWRkaXRpb25zL05ldHdvcmtEYXRhVGFza0NvY29hQWRkaXRpb25zLmg+CiAj
ZWxzZQogI2RlZmluZSBORVRXT1JLX0RBVEFfVEFTS19DT0NPQV9BRERJVElPTlMKICNlbmRpZgog
Ci0jaW1wb3J0IDxvcy9zaWducG9zdC5oPgotCi1zdGF0aWMgb3NfbG9nX3Qgc2lnbnBvc3RMb2dI
YW5kbGUoKQotewotICAgIHN0YXRpYyBkaXNwYXRjaF9vbmNlX3Qgb25jZTsKLSAgICBzdGF0aWMg
b3NfbG9nX3QgaGFuZGxlOwotCi0gICAgZGlzcGF0Y2hfb25jZSgmb25jZSwgXnsKLSAgICAgICAg
aGFuZGxlID0gb3NfbG9nX2NyZWF0ZShMT0dfQ0hBTk5FTF9XRUJLSVRfU1VCU1lTVEVNLCAiRGF0
YVRhc2siKTsKLSAgICB9KTsKLQotICAgIHJldHVybiBoYW5kbGU7Ci19Ci0KLXN0YXRpYyBib29s
IHNpZ25wb3N0c0VuYWJsZWQoKQotewotICAgIHN0YXRpYyBkaXNwYXRjaF9vbmNlX3Qgb25jZTsK
LSAgICBzdGF0aWMgYm9vbCBlbmFibGVkOwotCi0gICAgZGlzcGF0Y2hfb25jZSgmb25jZSwgXnsK
LSAgICAgICAgaWYgKG9zX3ZhcmlhbnRfYWxsb3dzX2ludGVybmFsX3NlY3VyaXR5X3BvbGljaWVz
KCJjb20uYXBwbGUuV2ViS2l0IikpCi0gICAgICAgICAgICBlbmFibGVkID0gIXN0cmNtcChnZXRl
bnYoIldFQktJVF9EQVRBX1RBU0tfU0lHTlBPU1RTIikgPzogIjAiLCAiMSIpOwotICAgIH0pOwot
Ci0gICAgcmV0dXJuIGVuYWJsZWQ7Ci19Ci0KLSNkZWZpbmUgRU1JVF9TSUdOUE9TVF9XSVRIX0ZV
TkNUSU9OKGVtaXRGdW5jLCB0YXNrLCAuLi4pIFwKLSAgICBkbyB7IFwKLSAgICAgICAgaWYgKHNp
Z25wb3N0c0VuYWJsZWQoKSkgeyBcCi0gICAgICAgICAgICBvc19sb2dfdCBoYW5kbGUgPSBzaWdu
cG9zdExvZ0hhbmRsZSgpOyBcCi0gICAgICAgICAgICBvc19zaWducG9zdF9pZF90IHNpZ25wb3N0
SUQgPSBvc19zaWducG9zdF9pZF9tYWtlX3dpdGhfcG9pbnRlcihzaWducG9zdExvZ0hhbmRsZSgp
LCAodGFzaykuZ2V0KCkpOyBcCi0gICAgICAgICAgICBlbWl0RnVuYyhoYW5kbGUsIHNpZ25wb3N0
SUQsICJEYXRhVGFzayIsICMjX19WQV9BUkdTX18pOyBcCi0gICAgICAgIH0gXAotICAgIH0gd2hp
bGUgKDApCi0KLSNkZWZpbmUgQkVHSU5fU0lHTlBPU1QodGFzaywgLi4uKSBcCi0gICAgRU1JVF9T
SUdOUE9TVF9XSVRIX0ZVTkNUSU9OKG9zX3NpZ25wb3N0X2ludGVydmFsX2JlZ2luLCAodGFzayks
ICMjX19WQV9BUkdTX18pCi0KLSNkZWZpbmUgRU5EX1NJR05QT1NUKHRhc2ssIC4uLikgXAotICAg
IEVNSVRfU0lHTlBPU1RfV0lUSF9GVU5DVElPTihvc19zaWducG9zdF9pbnRlcnZhbF9lbmQsICh0
YXNrKSwgIyNfX1ZBX0FSR1NfXykKLQotI2RlZmluZSBFTUlUX1NJR05QT1NUKHRhc2ssIC4uLikg
XAotICAgIEVNSVRfU0lHTlBPU1RfV0lUSF9GVU5DVElPTihvc19zaWducG9zdF9ldmVudF9lbWl0
LCAodGFzayksICMjX19WQV9BUkdTX18pCi0KLSNlbHNlCi0KLSNkZWZpbmUgQkVHSU5fU0lHTlBP
U1QodGFzaywgLi4uKSBkbyB7IH0gd2hpbGUgKDApCi0jZGVmaW5lIEVORF9TSUdOUE9TVCh0YXNr
LCAuLi4pIGRvIHsgfSB3aGlsZSAoMCkKLSNkZWZpbmUgRU1JVF9TSUdOUE9TVCh0YXNrLCAuLi4p
IGRvIHsgfSB3aGlsZSAoMCkKLQotI2VuZGlmCi0KIG5hbWVzcGFjZSBXZWJLaXQgewogCiAjaWYg
VVNFKENSRURFTlRJQUxfU1RPUkFHRV9XSVRIX05FVFdPUktfU0VTU0lPTikKQEAgLTI4Nyw3ICsy
MzIsNyBAQCBOZXR3b3JrRGF0YVRhc2tDb2NvYTo6TmV0d29ya0RhdGFUYXNrQ29jb2EoTmV0d29y
a1Nlc3Npb24mIHNlc3Npb24sIE5ldHdvcmtEYXRhVAogCiAgICAgbV90YXNrID0gW21fc2Vzc2lv
bldyYXBwZXItPnNlc3Npb24gZGF0YVRhc2tXaXRoUmVxdWVzdDpuc1JlcXVlc3RdOwogCi0gICAg
QkVHSU5fU0lHTlBPU1QobV90YXNrLCAiJXtwdWJsaWN9cyBwcmk6ICVmIHByZWNvbm5lY3Q6ICVk
IiwgdXJsLnN0cmluZygpLmFzY2lpKCkuZGF0YSgpLCB0b05TVVJMU2Vzc2lvblRhc2tQcmlvcml0
eShyZXF1ZXN0LnByaW9yaXR5KCkpLCBzaG91bGRQcmVjb25uZWN0T25seSA9PSBQcmVjb25uZWN0
T25seTo6WWVzKTsKKyAgICBXVEZCZWdpblNpZ25wb3N0KG1fdGFzay5nZXQoKSwgIkRhdGFUYXNr
IiwgIiV7cHVibGljfXMgcHJpOiAlLjJmIHByZWNvbm5lY3Q6ICVkIiwgdXJsLnN0cmluZygpLmFz
Y2lpKCkuZGF0YSgpLCB0b05TVVJMU2Vzc2lvblRhc2tQcmlvcml0eShyZXF1ZXN0LnByaW9yaXR5
KCkpLCBzaG91bGRQcmVjb25uZWN0T25seSA9PSBQcmVjb25uZWN0T25seTo6WWVzKTsKIAogICAg
IFJFTEVBU0VfQVNTRVJUKCFtX3Nlc3Npb25XcmFwcGVyLT5kYXRhVGFza01hcC5jb250YWlucyhb
bV90YXNrIHRhc2tJZGVudGlmaWVyXSkpOwogICAgIG1fc2Vzc2lvbldyYXBwZXItPmRhdGFUYXNr
TWFwLmFkZChbbV90YXNrIHRhc2tJZGVudGlmaWVyXSwgdGhpcyk7CkBAIC0zNDEsNyArMjg2LDcg
QEAgdm9pZCBOZXR3b3JrRGF0YVRhc2tDb2NvYTo6cmVzdHJpY3RSZXF1ZXN0UmVmZXJyZXJUb09y
aWdpbklmTmVlZGVkKFdlYkNvcmU6OlJlc28KIAogdm9pZCBOZXR3b3JrRGF0YVRhc2tDb2NvYTo6
ZGlkU2VuZERhdGEodWludDY0X3QgdG90YWxCeXRlc1NlbnQsIHVpbnQ2NF90IHRvdGFsQnl0ZXNF
eHBlY3RlZFRvU2VuZCkKIHsKLSAgICBFTUlUX1NJR05QT1NUKG1fdGFzaywgInNlbnQgJWxsdSBi
eXRlcyAoZXhwZWN0ZWQgJWxsdSBieXRlcykiLCB0b3RhbEJ5dGVzU2VudCwgdG90YWxCeXRlc0V4
cGVjdGVkVG9TZW5kKTsKKyAgICBXVEZFbWl0U2lnbnBvc3QobV90YXNrLmdldCgpLCAiRGF0YVRh
c2siLCAic2VudCAlbGx1IGJ5dGVzIChleHBlY3RlZCAlbGx1IGJ5dGVzKSIsIHRvdGFsQnl0ZXNT
ZW50LCB0b3RhbEJ5dGVzRXhwZWN0ZWRUb1NlbmQpOwogCiAgICAgaWYgKG1fY2xpZW50KQogICAg
ICAgICBtX2NsaWVudC0+ZGlkU2VuZERhdGEodG90YWxCeXRlc1NlbnQsIHRvdGFsQnl0ZXNFeHBl
Y3RlZFRvU2VuZCk7CkBAIC0zNDksNyArMjk0LDcgQEAgdm9pZCBOZXR3b3JrRGF0YVRhc2tDb2Nv
YTo6ZGlkU2VuZERhdGEodWludDY0X3QgdG90YWxCeXRlc1NlbnQsIHVpbnQ2NF90IHRvdGFsQnkK
IAogdm9pZCBOZXR3b3JrRGF0YVRhc2tDb2NvYTo6ZGlkUmVjZWl2ZUNoYWxsZW5nZShXZWJDb3Jl
OjpBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYmIGNoYWxsZW5nZSwgTmVnb3RpYXRlZExlZ2FjeVRM
UyBuZWdvdGlhdGVkTGVnYWN5VExTLCBDaGFsbGVuZ2VDb21wbGV0aW9uSGFuZGxlciYmIGNvbXBs
ZXRpb25IYW5kbGVyKQogewotICAgIEVNSVRfU0lHTlBPU1QobV90YXNrLCAicmVjZWl2ZWQgY2hh
bGxlbmdlIik7CisgICAgV1RGRW1pdFNpZ25wb3N0KG1fdGFzay5nZXQoKSwgIkRhdGFUYXNrIiwg
InJlY2VpdmVkIGNoYWxsZW5nZSIpOwogCiAgICAgaWYgKHRyeVBhc3N3b3JkQmFzZWRBdXRoZW50
aWNhdGlvbihjaGFsbGVuZ2UsIGNvbXBsZXRpb25IYW5kbGVyKSkKICAgICAgICAgcmV0dXJuOwpA
QCAtMzY1LDkgKzMxMCw5IEBAIHZvaWQgTmV0d29ya0RhdGFUYXNrQ29jb2E6OmRpZFJlY2VpdmVD
aGFsbGVuZ2UoV2ViQ29yZTo6QXV0aGVudGljYXRpb25DaGFsbGVuZ2UmCiB2b2lkIE5ldHdvcmtE
YXRhVGFza0NvY29hOjpkaWRDb21wbGV0ZVdpdGhFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJj
ZUVycm9yJiBlcnJvciwgY29uc3QgV2ViQ29yZTo6TmV0d29ya0xvYWRNZXRyaWNzJiBuZXR3b3Jr
TG9hZE1ldHJpY3MpCiB7CiAgICAgaWYgKGVycm9yLmlzTnVsbCgpKQotICAgICAgICBFTkRfU0lH
TlBPU1QobV90YXNrLCAiY29tcGxldGVkIik7CisgICAgICAgIFdURkVuZFNpZ25wb3N0KG1fdGFz
ay5nZXQoKSwgIkRhdGFUYXNrIiwgImNvbXBsZXRlZCIpOwogICAgIGVsc2UKLSAgICAgICAgRU5E
X1NJR05QT1NUKG1fdGFzaywgImZhaWxlZCIpOworICAgICAgICBXVEZFbmRTaWducG9zdChtX3Rh
c2suZ2V0KCksICJEYXRhVGFzayIsICJmYWlsZWQiKTsKIAogICAgIGlmIChtX2NsaWVudCkKICAg
ICAgICAgbV9jbGllbnQtPmRpZENvbXBsZXRlV2l0aEVycm9yKGVycm9yLCBuZXR3b3JrTG9hZE1l
dHJpY3MpOwpAQCAtMzc1LDcgKzMyMCw3IEBAIHZvaWQgTmV0d29ya0RhdGFUYXNrQ29jb2E6OmRp
ZENvbXBsZXRlV2l0aEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlRXJyb3ImIGVyCiAKIHZv
aWQgTmV0d29ya0RhdGFUYXNrQ29jb2E6OmRpZFJlY2VpdmVEYXRhKFJlZjxXZWJDb3JlOjpTaGFy
ZWRCdWZmZXI+JiYgZGF0YSkKIHsKLSAgICBFTUlUX1NJR05QT1NUKG1fdGFzaywgInJlY2VpdmVk
ICV6ZCBieXRlcyIsIGRhdGEtPnNpemUoKSk7CisgICAgV1RGRW1pdFNpZ25wb3N0KG1fdGFzay5n
ZXQoKSwgIkRhdGFUYXNrIiwgInJlY2VpdmVkICV6ZCBieXRlcyIsIGRhdGEtPnNpemUoKSk7CiAK
ICAgICBpZiAobV9jbGllbnQpCiAgICAgICAgIG1fY2xpZW50LT5kaWRSZWNlaXZlRGF0YShXVEZN
b3ZlKGRhdGEpKTsKQEAgLTM4MywxMyArMzI4LDEzIEBAIHZvaWQgTmV0d29ya0RhdGFUYXNrQ29j
b2E6OmRpZFJlY2VpdmVEYXRhKFJlZjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+JiYgZGF0YSkKIAog
dm9pZCBOZXR3b3JrRGF0YVRhc2tDb2NvYTo6ZGlkUmVjZWl2ZVJlc3BvbnNlKFdlYkNvcmU6OlJl
c291cmNlUmVzcG9uc2UmJiByZXNwb25zZSwgTmVnb3RpYXRlZExlZ2FjeVRMUyBuZWdvdGlhdGVk
TGVnYWN5VExTLCBXZWJLaXQ6OlJlc3BvbnNlQ29tcGxldGlvbkhhbmRsZXImJiBjb21wbGV0aW9u
SGFuZGxlcikKIHsKLSAgICBFTUlUX1NJR05QT1NUKG1fdGFzaywgInJlY2VpdmVkIHJlc3BvbnNl
IGhlYWRlcnMiKTsKKyAgICBXVEZFbWl0U2lnbnBvc3QobV90YXNrLmdldCgpLCAiRGF0YVRhc2si
LCAicmVjZWl2ZWQgcmVzcG9uc2UgaGVhZGVycyIpOwogICAgIE5ldHdvcmtEYXRhVGFzazo6ZGlk
UmVjZWl2ZVJlc3BvbnNlKFdURk1vdmUocmVzcG9uc2UpLCBuZWdvdGlhdGVkTGVnYWN5VExTLCBX
VEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CiB9CiAKIHZvaWQgTmV0d29ya0RhdGFUYXNrQ29j
b2E6OndpbGxQZXJmb3JtSFRUUFJlZGlyZWN0aW9uKFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2Um
JiByZWRpcmVjdFJlc3BvbnNlLCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0LCBS
ZWRpcmVjdENvbXBsZXRpb25IYW5kbGVyJiYgY29tcGxldGlvbkhhbmRsZXIpCiB7Ci0gICAgRU1J
VF9TSUdOUE9TVChtX3Rhc2ssICJyZWRpcmVjdCIpOworICAgIFdURkVtaXRTaWducG9zdChtX3Rh
c2suZ2V0KCksICJEYXRhVGFzayIsICJyZWRpcmVjdCIpOwogCiAgICAgaWYgKHJlZGlyZWN0UmVz
cG9uc2UuaHR0cFN0YXR1c0NvZGUoKSA9PSAzMDcgfHwgcmVkaXJlY3RSZXNwb25zZS5odHRwU3Rh
dHVzQ29kZSgpID09IDMwOCkgewogICAgICAgICBBU1NFUlQobV9sYXN0SFRUUE1ldGhvZCA9PSBy
ZXF1ZXN0Lmh0dHBNZXRob2QoKSk7CkBAIC01NDMsMTMgKzQ4OCwxMyBAQCBTdHJpbmcgTmV0d29y
a0RhdGFUYXNrQ29jb2E6OnN1Z2dlc3RlZEZpbGVuYW1lKCkgY29uc3QKIAogdm9pZCBOZXR3b3Jr
RGF0YVRhc2tDb2NvYTo6Y2FuY2VsKCkKIHsKLSAgICBFTUlUX1NJR05QT1NUKG1fdGFzaywgImNh
bmNlbCIpOworICAgIFdURkVtaXRTaWducG9zdChtX3Rhc2suZ2V0KCksICJEYXRhVGFzayIsICJj
YW5jZWwiKTsKICAgICBbbV90YXNrIGNhbmNlbF07CiB9CiAKIHZvaWQgTmV0d29ya0RhdGFUYXNr
Q29jb2E6OnJlc3VtZSgpCiB7Ci0gICAgRU1JVF9TSUdOUE9TVChtX3Rhc2ssICJyZXN1bWUiKTsK
KyAgICBXVEZFbWl0U2lnbnBvc3QobV90YXNrLmdldCgpLCAiRGF0YVRhc2siLCAicmVzdW1lIik7
CiAKICAgICBpZiAobV9zY2hlZHVsZWRGYWlsdXJlVHlwZSAhPSBOb0ZhaWx1cmUpCiAgICAgICAg
IG1fZmFpbHVyZVRpbWVyLnN0YXJ0T25lU2hvdCgwX3MpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>392244</attachid>
            <date>2020-03-02 20:29:53 -0800</date>
            <delta_ts>2020-03-02 21:14:25 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-208395-20200302202952.patch</filename>
            <type>text/plain</type>
            <size>28109</size>
            <attacher name="Ben Nham">nham</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU3NzUwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDViMzEwNTY5MjlhMGFkN2ViOTZjMGU0
Y2UxZGFkNWE4MjUwZmM4ZGQuLjdhYWM4MzAxYTdkY2U3YTU5MGUwMDlmYzVjN2YyNDk0YzhhNTA4
ZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjYgQEAKKzIwMjAtMDMtMDIgIEJlbiBOaGFtICA8bmhhbUBhcHBs
ZS5jb20+CisKKyAgICAgICAgW1dURl0gQWRkIHNpZ25wb3N0IEFQSQorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA4Mzk1CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKworICAgICAgICBXZSB3YW50IHRvIHN0YXJ0IHVzaW5n
IG9zX3NpZ25wb3N0IGluc3RlYWQgb2Yga2RlYnVnX3RyYWNlIHdoZW4gZW1pdHRpbmcgcGVyZm9y
bWFuY2UgZXZlbnRzLAorICAgICAgICBiZWNhdXNlIGl0IGlzIHVzdWFsbHkgY2hlYXBlciAoZG9l
c24ndCByZXF1aXJlIGEgc3lzdGVtIGNhbGwgdW5sZXNzIHRoZSBsb2cgYnVmZmVyIGlzIGZ1bGwp
CisgICAgICAgIGFuZCBhbGxvd3MgZm9yIHJpY2hlciB0cmFjZXBvaW50cyAoYWxsb3dzIGZvciBs
b2dnaW5nIHN0cmluZ3MgYXMgd2VsbCBhcyBpbnRlZ2VycykuCisKKyAgICAgICAgVG8gZmFjaWxp
dGF0ZSB0aGlzLCB0aGlzIG1vdmVzIHRoZSBvc19zaWducG9zdCB3cmFwcGVycyBpbiBOZXR3b3Jr
RGF0YVRhc2tDb2NvYSB0bworICAgICAgICBXVEYuIFNpbmNlIHNpZ25wb3N0cyBjYW4gY29udGFp
biBzZW5zaXRpdmUgc3RyaW5ncyAobGlrZSBVUkxzKSwgY3VycmVudGx5IHdlIG9ubHkgZW5hYmxl
CisgICAgICAgIHRoZW0gb24gQXBwbGUtaW50ZXJuYWwgZGV2aWNlcyB3aGVuIGFuIGVudmlyb25t
ZW50IHZhcmlhYmxlIGlzIHNldC4KKworICAgICAgICAqIFdURi54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qOgorICAgICAgICAqIHd0Zi9QbGF0Zm9ybU1hYy5jbWFrZToKKyAgICAgICAgKiB3dGYv
U3lzdGVtVHJhY2luZy5oOgorICAgICAgICAqIHd0Zi9jb2NvYS9TeXN0ZW1UcmFjaW5nQ29jb2Eu
Y3BwOiBBZGRlZC4KKyAgICAgICAgKFdURlNpZ25wb3N0c0VuYWJsZWQpOgorICAgICAgICAoV1RG
U2lnbnBvc3RMb2dIYW5kbGUpOgorICAgICAgICAqIHd0Zi9zcGkvZGFyd2luL09TVmFyaWFudFNQ
SS5oOiBSZW5hbWVkIGZyb20gU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvT1NWYXJp
YW50U1BJLmguCisKIDIwMjAtMDMtMDIgIE1lZ2FuIEdhcmRuZXIgIDxtZWdhbl9nYXJkbmVyQGFw
cGxlLmNvbT4KIAogICAgICAgICBBZGQgZGF0ZS90aW1lIHN0eWxlIHRvIG1hY0NhdGFseXN0CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUv
UEFML0NoYW5nZUxvZwppbmRleCA2N2FkOGUyNjIxMDc0ZDRhNTA4NTI2ZDdmNDFkOWM3ZjY1YzI0
Y2Q3Li45ZGE4NGNjNTU0MDg0NGM5MmRjOTRjNzAyNmFkNDBiZDU1M2NlNTYyIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAyMC0wMy0wMiAgQmVuIE5oYW0gIDxuaGFtQGFw
cGxlLmNvbT4KKworICAgICAgICBbV1RGXSBBZGQgc2lnbnBvc3QgQVBJCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDgzOTUKKworICAgICAgICBSZXZp
ZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgorCisgICAgICAgIFdlIHdhbnQgdG8gc3RhcnQgdXNp
bmcgb3Nfc2lnbnBvc3QgaW5zdGVhZCBvZiBrZGVidWdfdHJhY2Ugd2hlbiBlbWl0dGluZyBwZXJm
b3JtYW5jZSBldmVudHMsCisgICAgICAgIGJlY2F1c2UgaXQgaXMgdXN1YWxseSBjaGVhcGVyIChk
b2Vzbid0IHJlcXVpcmUgYSBzeXN0ZW0gY2FsbCB1bmxlc3MgdGhlIGxvZyBidWZmZXIgaXMgZnVs
bCkKKyAgICAgICAgYW5kIGFsbG93cyBmb3IgcmljaGVyIHRyYWNlcG9pbnRzIChhbGxvd3MgZm9y
IGxvZ2dpbmcgc3RyaW5ncyBhcyB3ZWxsIGFzIGludGVnZXJzKS4KKworICAgICAgICBUbyBmYWNp
bGl0YXRlIHRoaXMsIHRoaXMgbW92ZXMgdGhlIG9zX3NpZ25wb3N0IHdyYXBwZXJzIGluIE5ldHdv
cmtEYXRhVGFza0NvY29hIHRvCisgICAgICAgIFdURi4gU2luY2Ugc2lnbnBvc3RzIGNhbiBjb250
YWluIHNlbnNpdGl2ZSBzdHJpbmdzIChsaWtlIFVSTHMpLCBjdXJyZW50bHkgd2Ugb25seSBlbmFi
bGUKKyAgICAgICAgdGhlbSBvbiBBcHBsZS1pbnRlcm5hbCBkZXZpY2VzIHdoZW4gYW4gZW52aXJv
bm1lbnQgdmFyaWFibGUgaXMgc2V0LgorCisgICAgICAgICogUEFMLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2o6CisgICAgICAgICogcGFsL1BsYXRmb3JtTWFjLmNtYWtlOgorICAgICAgICAqIHNw
aS9kYXJ3aW4vT1NWYXJpYW50U1BJLmg6IFJlbmFtZWQgdG8gd3RmL3NwaS9kYXJ3aW4vT1NWYXJp
YW50U1BJLmguCisKIDIwMjAtMDItMjcgIERvbiBPbG1zdGVhZCAgPGRvbi5vbG1zdGVhZEBzb255
LmNvbT4KIAogICAgICAgICBbQ01ha2VdIEFkZCBXZWJLaXQ6OlBBTCB0YXJnZXQKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5k
ZXggOWViNzI5YzVjOTdhMzM0NTg5MWM2YzA3MDRkMzgwZDk5YzU4MWJjOS4uZGYxNjQ3OGE4ZTlj
Y2Q1NWFiZjJjNGY0YWFmYzRkYTgzMmY2ZTIzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9D
aGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzMSBAQAor
MjAyMC0wMy0wMiAgQmVuIE5oYW0gIDxuaGFtQGFwcGxlLmNvbT4KKworICAgICAgICBbV1RGXSBB
ZGQgc2lnbnBvc3QgQVBJCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMDgzOTUKKworICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgor
CisgICAgICAgIFdlIHdhbnQgdG8gc3RhcnQgdXNpbmcgb3Nfc2lnbnBvc3QgaW5zdGVhZCBvZiBr
ZGVidWdfdHJhY2Ugd2hlbiBlbWl0dGluZyBwZXJmb3JtYW5jZSBldmVudHMsCisgICAgICAgIGJl
Y2F1c2UgaXQgaXMgdXN1YWxseSBjaGVhcGVyIChkb2Vzbid0IHJlcXVpcmUgYSBzeXN0ZW0gY2Fs
bCB1bmxlc3MgdGhlIGxvZyBidWZmZXIgaXMgZnVsbCkKKyAgICAgICAgYW5kIGFsbG93cyBmb3Ig
cmljaGVyIHRyYWNlcG9pbnRzIChhbGxvd3MgZm9yIGxvZ2dpbmcgc3RyaW5ncyBhcyB3ZWxsIGFz
IGludGVnZXJzKS4KKworICAgICAgICBUbyBmYWNpbGl0YXRlIHRoaXMsIHRoaXMgbW92ZXMgdGhl
IG9zX3NpZ25wb3N0IHdyYXBwZXJzIGluIE5ldHdvcmtEYXRhVGFza0NvY29hIHRvCisgICAgICAg
IFdURi4gU2luY2Ugc2lnbnBvc3RzIGNhbiBjb250YWluIHNlbnNpdGl2ZSBzdHJpbmdzIChsaWtl
IFVSTHMpLCBjdXJyZW50bHkgd2Ugb25seSBlbmFibGUKKyAgICAgICAgdGhlbSBvbiBBcHBsZS1p
bnRlcm5hbCBkZXZpY2VzIHdoZW4gYW4gZW52aXJvbm1lbnQgdmFyaWFibGUgaXMgc2V0LgorCisg
ICAgICAgICogTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya0RhdGFUYXNrQ29jb2EubW06Cisg
ICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtEYXRhVGFza0NvY29hOjpOZXR3b3JrRGF0YVRhc2tDb2Nv
YSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtEYXRhVGFza0NvY29hOjpkaWRTZW5kRGF0YSk6
CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtEYXRhVGFza0NvY29hOjpkaWRSZWNlaXZlQ2hhbGxl
bmdlKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0RhdGFUYXNrQ29jb2E6OmRpZENvbXBsZXRl
V2l0aEVycm9yKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0RhdGFUYXNrQ29jb2E6OmRpZFJl
Y2VpdmVEYXRhKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0RhdGFUYXNrQ29jb2E6OmRpZFJl
Y2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtEYXRhVGFza0NvY29hOjp3
aWxsUGVyZm9ybUhUVFBSZWRpcmVjdGlvbik6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtEYXRh
VGFza0NvY29hOjpjYW5jZWwpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrRGF0YVRhc2tDb2Nv
YTo6cmVzdW1lKToKKyAgICAgICAgKHNpZ25wb3N0TG9nSGFuZGxlKTogRGVsZXRlZC4KKyAgICAg
ICAgKHNpZ25wb3N0c0VuYWJsZWQpOiBEZWxldGVkLgorCiAyMDIwLTAzLTAyICBQZXIgQXJuZSBW
b2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkIHNhbmRib3gg
Y29tcGlsZSBmaXguCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL1dURi54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qIGIvU291cmNlL1dURi9XVEYueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRl
eCAxYTYxMTQzM2QxY2Y0M2ZjNjEzMTA4N2ZlNDZmMmIxNTgwNzZiYjFiLi5lZTM1YjAyMTU5ZDk3
NmZiYzM3MzMyYTI5YzUwOTg5YTE4Yjc4NmFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL1dURi54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XVEYvV1RGLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2oKQEAgLTE4MSw2ICsxODEsNyBAQAogCQlFM0EzMkJDNDFGQzgzMEUyMDA3
RDdFNzYgLyogSlNWYWx1ZU1hbGxvYy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBFM0EzMkJDMjFGQzgzMEUyMDA3RDdFNzYgLyogSlNWYWx1ZU1hbGxv
Yy5jcHAgKi87IH07CiAJCUU0QTBBRDM5MUE5NjI0NTUwMDUzNkRGNiAvKiBXb3JrUXVldWUuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTRBMEFEMzcx
QTk2MjQ1NTAwNTM2REY2IC8qIFdvcmtRdWV1ZS5jcHAgKi87IH07CiAJCUU0QTBBRDNEMUE5NjI1
M0MwMDUzNkRGNiAvKiBXb3JrUXVldWVDb2NvYS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNEEwQUQzQzFBOTYyNTNDMDA1MzZERjYgLyogV29ya1F1
ZXVlQ29jb2EuY3BwICovOyB9OworCQlFQjYxRURDNzI0MDlDQ0MxMDAxRUZFMzYgLyogU3lzdGVt
VHJhY2luZ0NvY29hLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEVCNjFFREM2MjQwOUNDQzAwMDFFRkUzNiAvKiBTeXN0ZW1UcmFjaW5nQ29jb2EuY3Bw
ICovOyB9OwogCQlGRTA1RkFGRjFGRTUwMDc1MDAwOTMyMzAgLyogV1RGQXNzZXJ0aW9ucy5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRTA1RkFGRTFG
RTUwMDc1MDAwOTMyMzAgLyogV1RGQXNzZXJ0aW9ucy5jcHAgKi87IH07CiAJCUZFMUUyQzNCMjI0
MEMwNjYwMEY2QjcyOSAvKiBQdHJUYWcuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gRkUxRTJDMzkyMjQwQzA1NDAwRjZCNzI5IC8qIFB0clRhZy5jcHAg
Ki87IH07CiAJCUZFMUUyQzQyMjI0MTg3QzYwMEY2QjcyOSAvKiBQbGF0Zm9ybVJlZ2lzdGVycy5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRTFFMkM0
MTIyNDE4N0M2MDBGNkI3MjkgLyogUGxhdGZvcm1SZWdpc3RlcnMuY3BwICovOyB9OwpAQCAtNzI4
LDcgKzcyOSw5IEBACiAJCUU0QTBBRDM3MUE5NjI0NTUwMDUzNkRGNiAvKiBXb3JrUXVldWUuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV29ya1F1ZXVlLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTRBMEFEMzgxQTk2MjQ1NTAwNTM2REY2IC8qIFdv
cmtRdWV1ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXb3JrUXVldWUuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTRBMEFEM0MxQTk2MjUzQzAwNTM2REY2IC8q
IFdvcmtRdWV1ZUNvY29hLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFdvcmtRdWV1ZUNvY29hLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRUI2MUVE
QzYyNDA5Q0NDMDAwMUVGRTM2IC8qIFN5c3RlbVRyYWNpbmdDb2NvYS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTeXN0ZW1UcmFjaW5nQ29jb2EuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlFQjk1RTFFRjE2MUE3MjQxMDA4OUEyRjUgLyogQnl0ZU9y
ZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEJ5dGVPcmRlci5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFQkZGNjdGQzI0MEQ3RDY2MDA3OEZGMUIgLyogT1NW
YXJpYW50U1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE9TVmFyaWFudFNQ
SS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFRjdENkNENTlEODY0MkE4QTBEQTg2
QUQgLyogU3RhY2tUcmFjZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTdGFj
a1RyYWNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUY3MkJCREIxMDdGQTQyNDg4
NjE3OEI5RSAvKiBTeW1ib2xJbXBsLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFN5bWJvbEltcGwuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlGRTA1
RkFFNjFGREIyMTQzMDAwOTMyMzAgLyogRHVtYlB0clRyYWl0cy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBEdW1iUHRyVHJhaXRzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CkBAIC0xNDUzLDYgKzE0NTYsNyBAQAogCQkJCTE0OTMzRTIxMjI4QzIyREYwMEY3OUU0NiAv
KiBEYXRhVmF1bHRTUEkuaCAqLywKIAkJCQlFNDMxQ0M0QTIxMTg3QURCMDAwQzhBMDcgLyogRGlz
cGF0Y2hTUEkuaCAqLywKIAkJCQk5M0RERTkzMTFDREMwNTJEMDBGRDM0OTEgLyogZHlsZFNQSS5o
ICovLAorCQkJCUVCRkY2N0ZDMjQwRDdENjYwMDc4RkYxQiAvKiBPU1ZhcmlhbnRTUEkuaCAqLywK
IAkJCQk2NTkzQ0RFOTIyRkE0QTUyMDA4NzcxNEIgLyogUHJvY2Vzc01lbW9yeUZvb3RwcmludC5o
ICovLAogCQkJCUE1MDk4QUZGMUMxNjlFMDcwMDA4Nzc5NyAvKiBTYW5kYm94U1BJLmggKi8sCiAJ
CQkJQ0U3M0UwMjQxOURDQjdBQjAwNTgwRDVDIC8qIFhQQ1NQSS5oICovLApAQCAtMTUxMyw2ICsx
NTE3LDcgQEAKIAkJCQk1Q0MwRUU4ODIxNjJCQzIyMDBBMUE4NDIgLyogTlNVUkxFeHRyYXMubW0g
Ki8sCiAJCQkJRTM5MkZBMjYyMkU5MkJGRjAwRUNEQzczIC8qIFJlc291cmNlVXNhZ2VDb2NvYS5j
cHAgKi8sCiAJCQkJQTMwRDQxMkMxRjBERTBCQTAwQjcxOTU0IC8qIFNvZnRMaW5raW5nLmggKi8s
CisJCQkJRUI2MUVEQzYyNDA5Q0NDMDAwMUVGRTM2IC8qIFN5c3RlbVRyYWNpbmdDb2NvYS5jcHAg
Ki8sCiAJCQkJNUNDMEVFODYyMTYyQkMyMjAwQTFBODQyIC8qIFVSTENvY29hLm1tICovLAogCQkJ
CUU0QTBBRDNDMUE5NjI1M0MwMDUzNkRGNiAvKiBXb3JrUXVldWVDb2NvYS5jcHAgKi8sCiAJCQkp
OwpAQCAtMTcyMiw2ICsxNzI3LDcgQEAKIAkJCQlBOEE0NzNCNzE1MUE4MjVCMDA0MTIzRkYgLyog
c3RydG9kLmNjIGluIFNvdXJjZXMgKi8sCiAJCQkJNTIxODMwMTJDOTlFNDc2QTg0RUVCRUE4IC8q
IFN5bWJvbEltcGwuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNzBBOTkzRkUxQUQ3MTUxMzAwRkE2
MTVCIC8qIFN5bWJvbFJlZ2lzdHJ5LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUVCNjFFREM3MjQw
OUNDQzEwMDFFRkUzNiAvKiBTeXN0ZW1UcmFjaW5nQ29jb2EuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJMUMxODFDN0YxRDMwNzhEQTAwRjVGQTE2IC8qIFRleHRCcmVha0l0ZXJhdG9yLmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCTFDMTgxQzk2MUQzMDgwMEEwMEY1RkExNiAvKiBUZXh0QnJlYWtJdGVy
YXRvckludGVybmFsSUNVQ29jb2EuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTNFNEREOTMxRjNB
ODAzNDAwREVEMEI0IC8qIFRleHRTdHJlYW0uY3BwIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybU1hYy5jbWFrZSBiL1NvdXJjZS9XVEYvd3RmL1BsYXRm
b3JtTWFjLmNtYWtlCmluZGV4IDJjZjY3N2FlNTBmMDk1Njk5YWZiNGI2OTNmODc5ZmIxNWM4Mjk1
NzQuLjZkNTgzMTBkZDIwN2ZiYWNlNTMzN2NlM2ZjYWZkYjZiOTBiM2Y2OWUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtTWFjLmNtYWtlCisrKyBiL1NvdXJjZS9XVEYvd3RmL1Bs
YXRmb3JtTWFjLmNtYWtlCkBAIC0zMSw2ICszMSw3IEBAIGxpc3QoQVBQRU5EIFdURl9QVUJMSUNf
SEVBREVSUwogICAgIHNwaS9jb2NvYS9vYmpjU1BJLmgKIAogICAgIHNwaS9kYXJ3aW4vRGF0YVZh
dWx0U1BJLmgKKyAgICBzcGkvZGFyd2luL09TVmFyaWFudFNQSS5oCiAgICAgc3BpL2Rhcndpbi9Q
cm9jZXNzTWVtb3J5Rm9vdHByaW50LmgKICAgICBzcGkvZGFyd2luL1NhbmRib3hTUEkuaAogICAg
IHNwaS9kYXJ3aW4vWFBDU1BJLmgKQEAgLTY0LDYgKzY1LDcgQEAgbGlzdChBUFBFTkQgV1RGX1NP
VVJDRVMKICAgICBjb2NvYS9NZW1vcnlQcmVzc3VyZUhhbmRsZXJDb2NvYS5tbQogICAgIGNvY29h
L05TVVJMRXh0cmFzLm1tCiAgICAgY29jb2EvUmVzb3VyY2VVc2FnZUNvY29hLmNwcAorICAgIGNv
Y29hL1N5c3RlbVRyYWNpbmdDb2NvYS5jcHAKICAgICBjb2NvYS9VUkxDb2NvYS5tbQogICAgIGNv
Y29hL1dvcmtRdWV1ZUNvY29hLmNwcAogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9TeXN0
ZW1UcmFjaW5nLmggYi9Tb3VyY2UvV1RGL3d0Zi9TeXN0ZW1UcmFjaW5nLmgKaW5kZXggMGJmNWRk
OWQ0MDBlODUwYzQ2NDRiZTEwNGZkMmQyZjI3ZTRiMWRmZS4uMzUxZjk0NTFmMGExMWFmNzExN2U4
ZTc4YTUxN2UxNGEzOWZkYWE3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvU3lzdGVtVHJh
Y2luZy5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL1N5c3RlbVRyYWNpbmcuaApAQCAtMTU4LDMgKzE1
OCwzOCBAQCB1c2luZyBXVEY6OlRyYWNlU2NvcGU7CiB1c2luZyBXVEY6OnRyYWNlUG9pbnQ7CiAK
ICNlbmRpZiAvLyBfX2NwbHVzcGx1cworCisjaWYgSEFWRShPU19TSUdOUE9TVCkKKworI2ltcG9y
dCA8b3Mvc2lnbnBvc3QuaD4KKworV1RGX0VYVEVSTl9DX0JFR0lOCitXVEZfRVhQT1JUX1BSSVZB
VEUgYm9vbCBXVEZTaWducG9zdHNFbmFibGVkKCk7CitXVEZfRVhQT1JUX1BSSVZBVEUgb3NfbG9n
X3QgV1RGU2lnbnBvc3RMb2dIYW5kbGUoKTsKK1dURl9FWFRFUk5fQ19FTkQKKworI2RlZmluZSBX
VEZFbWl0U2lnbnBvc3QocG9pbnRlciwgbmFtZSwgLi4uKSBcCisgICAgV1RGRW1pdFNpZ25wb3N0
V2l0aEZ1bmN0aW9uKG9zX3NpZ25wb3N0X2V2ZW50X2VtaXQsIChwb2ludGVyKSwgbmFtZSwgIyNf
X1ZBX0FSR1NfXykKKworI2RlZmluZSBXVEZCZWdpblNpZ25wb3N0KHBvaW50ZXIsIG5hbWUsIC4u
LikgXAorICAgIFdURkVtaXRTaWducG9zdFdpdGhGdW5jdGlvbihvc19zaWducG9zdF9pbnRlcnZh
bF9iZWdpbiwgKHBvaW50ZXIpLCBuYW1lLCAjI19fVkFfQVJHU19fKQorCisjZGVmaW5lIFdURkVu
ZFNpZ25wb3N0KHBvaW50ZXIsIG5hbWUsIC4uLikgXAorICAgIFdURkVtaXRTaWducG9zdFdpdGhG
dW5jdGlvbihvc19zaWducG9zdF9pbnRlcnZhbF9lbmQsIChwb2ludGVyKSwgbmFtZSwgIyNfX1ZB
X0FSR1NfXykKKworI2RlZmluZSBXVEZFbWl0U2lnbnBvc3RXaXRoRnVuY3Rpb24oZW1pdEZ1bmMs
IHBvaW50ZXIsIG5hbWUsIC4uLikgXAorZG8geyBcCisgICAgaWYgKFVOTElLRUxZKFdURlNpZ25w
b3N0c0VuYWJsZWQoKSkpIHsgXAorICAgICAgICBvc19sb2dfdCBoYW5kbGUgPSBXVEZTaWducG9z
dExvZ0hhbmRsZSgpOyBcCisgICAgICAgIG9zX3NpZ25wb3N0X2lkX3Qgc2lnbnBvc3RJRCA9IG9z
X3NpZ25wb3N0X2lkX21ha2Vfd2l0aF9wb2ludGVyKGhhbmRsZSwgKHBvaW50ZXIpKTsgXAorICAg
ICAgICBlbWl0RnVuYyhoYW5kbGUsIHNpZ25wb3N0SUQsIG5hbWUsICMjX19WQV9BUkdTX18pOyBc
CisgICAgfSBcCit9IHdoaWxlICgwKQorCisjZWxzZQorCisjZGVmaW5lIFdURkVtaXRTaWducG9z
dChwb2ludGVyLCBuYW1lLCAuLi4pIGRvIHsgfSB3aGlsZSAoMCkKKyNkZWZpbmUgV1RGQmVnaW5T
aWducG9zdChwb2ludGVyLCBuYW1lLCAuLi4pIGRvIHsgfSB3aGlsZSAoMCkKKyNkZWZpbmUgV1RG
RW5kU2lnbnBvc3QocG9pbnRlciwgbmFtZSwgLi4uKSBkbyB7IH0gd2hpbGUgKDApCisKKyNlbmRp
ZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvY29jb2EvU3lzdGVtVHJhY2luZ0NvY29hLmNw
cCBiL1NvdXJjZS9XVEYvd3RmL2NvY29hL1N5c3RlbVRyYWNpbmdDb2NvYS5jcHAKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uNzI2M2U3YTFmNGNlMTAzMTM1OTNhYWU2YmI3NGQxOTIxMzU2NDEwZAotLS0gL2Rldi9udWxs
CisrKyBiL1NvdXJjZS9XVEYvd3RmL2NvY29hL1N5c3RlbVRyYWNpbmdDb2NvYS5jcHAKQEAgLTAs
MCArMSw1OSBAQAorLyoKKyogQ29weXJpZ2h0IChDKSAyMDE5IEFwcGxlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKyoKKyogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworKiBhcmUgbWV0OgorKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyogICAg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRp
c3RyaWJ1dGlvbi4KKyoKKyogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMu
IGBgQVMgSVMnJyBBTkQgQU5ZCisqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisqIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorKiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorKiBDT05UUklC
VVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwKKyogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAorKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyogUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorKiBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyog
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFCisqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisjaW1wb3J0ICJjb25maWcuaCIKKyNp
bXBvcnQgPHd0Zi9TeXN0ZW1UcmFjaW5nLmg+CisKKyNpbmNsdWRlIDxjc3RkbGliPgorI2luY2x1
ZGUgPGRpc3BhdGNoL2Rpc3BhdGNoLmg+CisjaW5jbHVkZSA8d3RmL3NwaS9kYXJ3aW4vT1NWYXJp
YW50U1BJLmg+CisKK2Jvb2wgV1RGU2lnbnBvc3RzRW5hYmxlZCgpCit7CisgICAgc3RhdGljIGRp
c3BhdGNoX29uY2VfdCBvbmNlOworICAgIHN0YXRpYyBib29sIGVuYWJsZWQ7CisKKyAgICBkaXNw
YXRjaF9vbmNlKCZvbmNlLCBeeworICAgICAgICAvLyBTaWducG9zdHMgbWF5IGNvbnRhaW4gc2Vu
c2l0aXZlIGluZm8gdGhhdCB3ZSBkb24ndCB3YW50IHRvIGVtaXQgdG8gbG9nZCBleGNlcHQgd2hl
bgorICAgICAgICAvLyBwcm9maWxpbmcgKHN1Y2ggYXMgVVJMcykuIFRvIGd1YXJkIGFnYWluc3Qg
YWNjaWRlbnRhbCBsZWFrYWdlLCBvbmx5IGVuYWJsZSB0aGVtIG9uIEFwcGxlCisgICAgICAgIC8v
IGludGVybmFsIGJ1aWxkcyB3aGVuIGFuIGVudmlyb25tZW50IHZhcmlhYmxlIGlzIHNldC4KKyAg
ICAgICAgaWYgKG9zX3ZhcmlhbnRfYWxsb3dzX2ludGVybmFsX3NlY3VyaXR5X3BvbGljaWVzKCJj
b20uYXBwbGUuV2ViS2l0IikpCisgICAgICAgICAgICBlbmFibGVkID0gIXN0cmNtcChnZXRlbnYo
IldFQktJVF9TSUdOUE9TVFNfRU5BQkxFRCIpID86ICIwIiwgIjEiKTsKKyAgICB9KTsKKworICAg
IHJldHVybiBlbmFibGVkOworfQorCitvc19sb2dfdCBXVEZTaWducG9zdExvZ0hhbmRsZSgpCit7
CisgICAgc3RhdGljIGRpc3BhdGNoX29uY2VfdCBvbmNlOworICAgIHN0YXRpYyBvc19sb2dfdCBo
YW5kbGU7CisKKyAgICBkaXNwYXRjaF9vbmNlKCZvbmNlLCBeeworICAgICAgICBoYW5kbGUgPSBv
c19sb2dfY3JlYXRlKCJjb20uYXBwbGUuV2ViS2l0IiwgIlNpZ25wb3N0cyIpOworICAgIH0pOwor
CisgICAgcmV0dXJuIGhhbmRsZTsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL3NwaS9k
YXJ3aW4vT1NWYXJpYW50U1BJLmggYi9Tb3VyY2UvV1RGL3d0Zi9zcGkvZGFyd2luL09TVmFyaWFu
dFNQSS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjg5YjgwMmVhYmM4ZWFhOTA0OWIyNzYzZjk5Y2Y5MWNiYzhlZTIy
YzYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9zcGkvZGFyd2luL09TVmFyaWFu
dFNQSS5oCkBAIC0wLDAgKzEsMzggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTkgQXBwbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
CisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycK
KyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisg
KiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2lm
IFVTRShBUFBMRV9JTlRFUk5BTF9TREspCisKKyNpbXBvcnQgPG9zL3ZhcmlhbnRfcHJpdmF0ZS5o
PgorCisjZWxzZQorCitXVEZfRVhURVJOX0NfQkVHSU4KK2Jvb2wgb3NfdmFyaWFudF9hbGxvd3Nf
aW50ZXJuYWxfc2VjdXJpdHlfcG9saWNpZXMoY29uc3QgY2hhciAqKTsKK1dURl9FWFRFUk5fQ19F
TkQKKworI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2oKaW5kZXggZGYyZjRkMjRjZGJkNTA2MjA4YjUxOGZhNjJiNDcwYjQ3M2YyODg0
Yi4uYWY5MTdmODIwZGQyMzkwMTNmYzVlMzExNjE4ZWQzMDAzYTIyNTE4NiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvUEFML1BBTC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL1BBTC9QQUwueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMTcwLDcg
KzE3MCw2IEBACiAJCUNFNTY3Mzg3MjE1MUE3QjkwMDJGOTJENyAvKiBJT0tpdFNQSS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0U1NjczODYyMTUxQTdC
OTAwMkY5MkQ3IC8qIElPS2l0U1BJLmggKi87IH07CiAJCUU1RDQ1RDEyMjEwNkEwNzQwMEQyQjcz
OCAvKiBOU0NvbG9yV2VsbFNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRTVENDVEMTEyMTA2QTA3NDAwRDJCNzM4IC8qIE5TQ29sb3JXZWxsU1BJLmgg
Ki87IH07CiAJCUU1RDQ1RDE0MjEwNkExODcwMEQyQjczOCAvKiBOU1BvcG92ZXJDb2xvcldlbGxT
UEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU1RDQ1
RDEzMjEwNkExODcwMEQyQjczOCAvKiBOU1BvcG92ZXJDb2xvcldlbGxTUEkuaCAqLzsgfTsKLQkJ
RUI3MDdGQTUyMzk3MzdGODAwNTkwNTNBIC8qIE9TVmFyaWFudFNQSS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRUI3MDdGQTQyMzk3MzdGODAwNTkwNTNB
IC8qIE9TVmFyaWFudFNQSS5oICovOyB9OwogCQlGNDQyOTE1RTFGQTUyNDczMDAyQ0M5M0UgLyog
TlNGaWxlU2l6ZUZvcm1hdHRlclNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gRjQ0MjkxNUQxRkE1MjQ3MzAwMkNDOTNFIC8qIE5TRmlsZVNpemVGb3Jt
YXR0ZXJTUEkuaCAqLzsgfTsKIAkJRjQ0MjkxNjAxRkE1MjYxRTAwMkNDOTNFIC8qIEZpbGVTaXpl
Rm9ybWF0dGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBGNDQyOTE1RjFGQTUyNjFFMDAyQ0M5M0UgLyogRmlsZVNpemVGb3JtYXR0ZXIuaCAqLzsgfTsK
IAkJRjQ0MjkxNjQxRkE1MjY3MDAwMkNDOTNFIC8qIEZpbGVTaXplRm9ybWF0dGVyLmNwcCBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0NDI5MTYyMUZBNTI2
NzAwMDJDQzkzRSAvKiBGaWxlU2l6ZUZvcm1hdHRlci5jcHAgKi87IH07CkBAIC0zNDcsNyArMzQ2
LDYgQEAKIAkJQ0U1NjczODYyMTUxQTdCOTAwMkY5MkQ3IC8qIElPS2l0U1BJLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IElPS2l0U1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUU1RDQ1RDExMjEwNkEwNzQwMEQyQjczOCAvKiBOU0NvbG9yV2VsbFNQSS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOU0NvbG9yV2VsbFNQSS5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlFNUQ0NUQxMzIxMDZBMTg3MDBEMkI3MzggLyogTlNQb3Bv
dmVyQ29sb3JXZWxsU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5TUG9w
b3ZlckNvbG9yV2VsbFNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQlFQjcwN0ZB
NDIzOTczN0Y4MDA1OTA1M0EgLyogT1NWYXJpYW50U1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IE9TVmFyaWFudFNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQlGNDQyOTE1RDFGQTUyNDczMDAyQ0M5M0UgLyogTlNGaWxlU2l6ZUZvcm1hdHRlclNQSS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBOU0ZpbGVTaXplRm9ybWF0dGVyU1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCUY0NDI5MTVGMUZBNTI2MUUwMDJDQzkzRSAvKiBGaWxlU2l6ZUZvcm1hdHRl
ci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBGaWxlU2l6ZUZvcm1hdHRlci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQlGNDQyOTE2MjFGQTUyNjcwMDAyQ0M5M0UgLyogRmlsZVNpemVGb3JtYXR0
ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRmlsZVNpemVGb3JtYXR0ZXIuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwpAQCAtNDQ1LDcgKzQ0Myw2IEBACiAJCQkJMEMyREExMzgxRjNC
RUI0OTAwREJDMzE3IC8qIE5TVVJMRmlsZVR5cGVNYXBwaW5nc1NQSS5oICovLAogCQkJCUMxNUNC
QjMyMjNGMzRBMTIwMDMwMENDNyAvKiBOU1VzZXJEZWZhdWx0c1NQSS5oICovLAogCQkJCTU3MEFC
OEY4MjBBRjZFM0QwMEI4QkU4NyAvKiBOU1hQQ0Nvbm5lY3Rpb25TUEkuaCAqLywKLQkJCQlFQjcw
N0ZBNDIzOTczN0Y4MDA1OTA1M0EgLyogT1NWYXJpYW50U1BJLmggKi8sCiAJCQkJMEMyREExMzkx
RjNCRUI0OTAwREJDMzE3IC8qIFBhc3NLaXRTUEkuaCAqLywKIAkJCQkwQzJEQTEzQTFGM0JFQjQ5
MDBEQkMzMTcgLyogcHRocmVhZFNQSS5oICovLAogCQkJCTBDMkRBMTNCMUYzQkVCNDkwMERCQzMx
NyAvKiBRdWFydHpDb3JlU1BJLmggKi8sCkBAIC04MDgsNyArODA1LDYgQEAKIAkJCQkwQzc3ODU5
RDFGNDUxMzBGMDBGNEVCQjYgLyogTlNXaW5kb3dTUEkuaCBpbiBIZWFkZXJzICovLAogCQkJCTU3
MEFCOEY5MjBBRjZFM0QwMEI4QkU4NyAvKiBOU1hQQ0Nvbm5lY3Rpb25TUEkuaCBpbiBIZWFkZXJz
ICovLAogCQkJCTBDNUFGOTFGMUY0M0E0QzcwMDJFQUMwMiAvKiBPcGVuR0xFU1NQSS5oIGluIEhl
YWRlcnMgKi8sCi0JCQkJRUI3MDdGQTUyMzk3MzdGODAwNTkwNTNBIC8qIE9TVmFyaWFudFNQSS5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJQTFGNjNDOUYyMUE0REJGNzAwNkZCNDNCIC8qIFBhc3NLaXRT
b2Z0TGluay5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEMyREExNTUxRjNCRUI0OTAwREJDMzE3IC8q
IFBhc3NLaXRTUEkuaCBpbiBIZWFkZXJzICovLAogCQkJCTBDNzc4NTlFMUY0NTEzMEYwMEY0RUJC
NiAvKiBQSVBTUEkuaCBpbiBIZWFkZXJzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
UEFML3BhbC9QbGF0Zm9ybU1hYy5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvUGxhdGZv
cm1NYWMuY21ha2UKaW5kZXggM2I0NzQ4YzlhYjhiYjgwNTNkYzQyMmVmNmY0OWIzYjAyZGJlNDFl
ZS4uZDI0YWFlMjk2NmE1NzAzMTA0OWFiNDQ2NGIwNzUwNmM1ZjNiN2I2NyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvUEFML3BhbC9QbGF0Zm9ybU1hYy5jbWFrZQorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9QQUwvcGFsL1BsYXRmb3JtTWFjLmNtYWtlCkBAIC01Miw3ICs1Miw2IEBAIGxpc3QoQVBQ
RU5EIFBBTF9QVUJMSUNfSEVBREVSUwogICAgIHNwaS9jb2NvYS9OU1VSTERvd25sb2FkU1BJLmgK
ICAgICBzcGkvY29jb2EvTlNVUkxGaWxlVHlwZU1hcHBpbmdzU1BJLmgKICAgICBzcGkvY29jb2Ev
TlNYUENDb25uZWN0aW9uU1BJLmgKLSAgICBzcGkvY29jb2EvT1NWYXJpYW50U1BJLmgKICAgICBz
cGkvY29jb2EvUGFzc0tpdFNQSS5oCiAgICAgc3BpL2NvY29hL1F1YXJ0ekNvcmVTUEkuaAogICAg
IHNwaS9jb2NvYS9TZWNLZXlQcm94eVNQSS5oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Q
QUwvcGFsL3NwaS9jb2NvYS9PU1ZhcmlhbnRTUEkuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwv
c3BpL2NvY29hL09TVmFyaWFudFNQSS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4
OWI4MDJlYWJjOGVhYTkwNDliMjc2M2Y5OWNmOTFjYmM4ZWUyMmM2Li4wMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3Bp
L2NvY29hL09TVmFyaWFudFNQSS5oCisrKyAvZGV2L251bGwKQEAgLTEsMzggKzAsMCBAQAotLyoK
LSAqIENvcHlyaWdodCAoQykgMjAxOSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0g
KgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAot
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFO
RCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgotICovCi0KLSNwcmFnbWEgb25jZQotCi0jaWYgVVNFKEFQUExFX0lOVEVSTkFMX1NESykKLQot
I2ltcG9ydCA8b3MvdmFyaWFudF9wcml2YXRlLmg+Ci0KLSNlbHNlCi0KLVdURl9FWFRFUk5fQ19C
RUdJTgotYm9vbCBvc192YXJpYW50X2FsbG93c19pbnRlcm5hbF9zZWN1cml0eV9wb2xpY2llcyhj
b25zdCBjaGFyICopOwotV1RGX0VYVEVSTl9DX0VORAotCi0jZW5kaWYKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya0RhdGFUYXNrQ29jb2EubW0g
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtEYXRhVGFza0NvY29h
Lm1tCmluZGV4IDU2MDlkYjFmZjE2NzUyM2Q1YjI2OWFhY2FkZDcyMzI3YjU0NzZkMmQuLjYxYTM5
MjJmNzBkN2VjZDcwZjQ2OGJlYzY5YTYyZWU1ZDliYWRiYTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya0RhdGFUYXNrQ29jb2EubW0KKysrIGIv
U291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrRGF0YVRhc2tDb2NvYS5t
bQpAQCAtNDEsNzggKzQxLDIzIEBACiAjaW1wb3J0IDxXZWJDb3JlL1JlZ2lzdHJhYmxlRG9tYWlu
Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1Jlc291cmNlUmVxdWVzdC5oPgogI2ltcG9ydCA8cGFsL3Nw
aS9jZi9DRk5ldHdvcmtTUEkuaD4KLSNpbXBvcnQgPHBhbC9zcGkvY29jb2EvT1NWYXJpYW50U1BJ
Lmg+CiAjaW1wb3J0IDx3dGYvQmxvY2tQdHIuaD4KICNpbXBvcnQgPHd0Zi9GaWxlU3lzdGVtLmg+
CiAjaW1wb3J0IDx3dGYvTWFpblRocmVhZC5oPgogI2ltcG9ydCA8d3RmL1Byb2Nlc3NQcml2aWxl
Z2UuaD4KKyNpbXBvcnQgPHd0Zi9TeXN0ZW1UcmFjaW5nLmg+CiAjaW1wb3J0IDx3dGYvdGV4dC9C
YXNlNjQuaD4KIAogI2lmIEhBVkUoTldfQUNUSVZJVFkpCiAjaW1wb3J0IDxDRk5ldHdvcmsvQ0ZO
U1VSTENvbm5lY3Rpb24uaD4KICNlbmRpZgogCi0jaWYgSEFWRShPU19TSUdOUE9TVCkKLQogI2lm
IFVTRShBUFBMRV9JTlRFUk5BTF9TREspCiAjaW5jbHVkZSA8V2ViS2l0QWRkaXRpb25zL05ldHdv
cmtEYXRhVGFza0NvY29hQWRkaXRpb25zLmg+CiAjZWxzZQogI2RlZmluZSBORVRXT1JLX0RBVEFf
VEFTS19DT0NPQV9BRERJVElPTlMKICNlbmRpZgogCi0jaW1wb3J0IDxvcy9zaWducG9zdC5oPgot
Ci1zdGF0aWMgb3NfbG9nX3Qgc2lnbnBvc3RMb2dIYW5kbGUoKQotewotICAgIHN0YXRpYyBkaXNw
YXRjaF9vbmNlX3Qgb25jZTsKLSAgICBzdGF0aWMgb3NfbG9nX3QgaGFuZGxlOwotCi0gICAgZGlz
cGF0Y2hfb25jZSgmb25jZSwgXnsKLSAgICAgICAgaGFuZGxlID0gb3NfbG9nX2NyZWF0ZShMT0df
Q0hBTk5FTF9XRUJLSVRfU1VCU1lTVEVNLCAiRGF0YVRhc2siKTsKLSAgICB9KTsKLQotICAgIHJl
dHVybiBoYW5kbGU7Ci19Ci0KLXN0YXRpYyBib29sIHNpZ25wb3N0c0VuYWJsZWQoKQotewotICAg
IHN0YXRpYyBkaXNwYXRjaF9vbmNlX3Qgb25jZTsKLSAgICBzdGF0aWMgYm9vbCBlbmFibGVkOwot
Ci0gICAgZGlzcGF0Y2hfb25jZSgmb25jZSwgXnsKLSAgICAgICAgaWYgKG9zX3ZhcmlhbnRfYWxs
b3dzX2ludGVybmFsX3NlY3VyaXR5X3BvbGljaWVzKCJjb20uYXBwbGUuV2ViS2l0IikpCi0gICAg
ICAgICAgICBlbmFibGVkID0gIXN0cmNtcChnZXRlbnYoIldFQktJVF9EQVRBX1RBU0tfU0lHTlBP
U1RTIikgPzogIjAiLCAiMSIpOwotICAgIH0pOwotCi0gICAgcmV0dXJuIGVuYWJsZWQ7Ci19Ci0K
LSNkZWZpbmUgRU1JVF9TSUdOUE9TVF9XSVRIX0ZVTkNUSU9OKGVtaXRGdW5jLCB0YXNrLCAuLi4p
IFwKLSAgICBkbyB7IFwKLSAgICAgICAgaWYgKHNpZ25wb3N0c0VuYWJsZWQoKSkgeyBcCi0gICAg
ICAgICAgICBvc19sb2dfdCBoYW5kbGUgPSBzaWducG9zdExvZ0hhbmRsZSgpOyBcCi0gICAgICAg
ICAgICBvc19zaWducG9zdF9pZF90IHNpZ25wb3N0SUQgPSBvc19zaWducG9zdF9pZF9tYWtlX3dp
dGhfcG9pbnRlcihzaWducG9zdExvZ0hhbmRsZSgpLCAodGFzaykuZ2V0KCkpOyBcCi0gICAgICAg
ICAgICBlbWl0RnVuYyhoYW5kbGUsIHNpZ25wb3N0SUQsICJEYXRhVGFzayIsICMjX19WQV9BUkdT
X18pOyBcCi0gICAgICAgIH0gXAotICAgIH0gd2hpbGUgKDApCi0KLSNkZWZpbmUgQkVHSU5fU0lH
TlBPU1QodGFzaywgLi4uKSBcCi0gICAgRU1JVF9TSUdOUE9TVF9XSVRIX0ZVTkNUSU9OKG9zX3Np
Z25wb3N0X2ludGVydmFsX2JlZ2luLCAodGFzayksICMjX19WQV9BUkdTX18pCi0KLSNkZWZpbmUg
RU5EX1NJR05QT1NUKHRhc2ssIC4uLikgXAotICAgIEVNSVRfU0lHTlBPU1RfV0lUSF9GVU5DVElP
Tihvc19zaWducG9zdF9pbnRlcnZhbF9lbmQsICh0YXNrKSwgIyNfX1ZBX0FSR1NfXykKLQotI2Rl
ZmluZSBFTUlUX1NJR05QT1NUKHRhc2ssIC4uLikgXAotICAgIEVNSVRfU0lHTlBPU1RfV0lUSF9G
VU5DVElPTihvc19zaWducG9zdF9ldmVudF9lbWl0LCAodGFzayksICMjX19WQV9BUkdTX18pCi0K
LSNlbHNlCi0KLSNkZWZpbmUgQkVHSU5fU0lHTlBPU1QodGFzaywgLi4uKSBkbyB7IH0gd2hpbGUg
KDApCi0jZGVmaW5lIEVORF9TSUdOUE9TVCh0YXNrLCAuLi4pIGRvIHsgfSB3aGlsZSAoMCkKLSNk
ZWZpbmUgRU1JVF9TSUdOUE9TVCh0YXNrLCAuLi4pIGRvIHsgfSB3aGlsZSAoMCkKLQotI2VuZGlm
Ci0KIG5hbWVzcGFjZSBXZWJLaXQgewogCiAjaWYgVVNFKENSRURFTlRJQUxfU1RPUkFHRV9XSVRI
X05FVFdPUktfU0VTU0lPTikKQEAgLTI4Nyw3ICsyMzIsNyBAQCBOZXR3b3JrRGF0YVRhc2tDb2Nv
YTo6TmV0d29ya0RhdGFUYXNrQ29jb2EoTmV0d29ya1Nlc3Npb24mIHNlc3Npb24sIE5ldHdvcmtE
YXRhVAogCiAgICAgbV90YXNrID0gW21fc2Vzc2lvbldyYXBwZXItPnNlc3Npb24gZGF0YVRhc2tX
aXRoUmVxdWVzdDpuc1JlcXVlc3RdOwogCi0gICAgQkVHSU5fU0lHTlBPU1QobV90YXNrLCAiJXtw
dWJsaWN9cyBwcmk6ICVmIHByZWNvbm5lY3Q6ICVkIiwgdXJsLnN0cmluZygpLmFzY2lpKCkuZGF0
YSgpLCB0b05TVVJMU2Vzc2lvblRhc2tQcmlvcml0eShyZXF1ZXN0LnByaW9yaXR5KCkpLCBzaG91
bGRQcmVjb25uZWN0T25seSA9PSBQcmVjb25uZWN0T25seTo6WWVzKTsKKyAgICBXVEZCZWdpblNp
Z25wb3N0KG1fdGFzay5nZXQoKSwgIkRhdGFUYXNrIiwgIiV7cHVibGljfXMgcHJpOiAlLjJmIHBy
ZWNvbm5lY3Q6ICVkIiwgdXJsLnN0cmluZygpLmFzY2lpKCkuZGF0YSgpLCB0b05TVVJMU2Vzc2lv
blRhc2tQcmlvcml0eShyZXF1ZXN0LnByaW9yaXR5KCkpLCBzaG91bGRQcmVjb25uZWN0T25seSA9
PSBQcmVjb25uZWN0T25seTo6WWVzKTsKIAogICAgIFJFTEVBU0VfQVNTRVJUKCFtX3Nlc3Npb25X
cmFwcGVyLT5kYXRhVGFza01hcC5jb250YWlucyhbbV90YXNrIHRhc2tJZGVudGlmaWVyXSkpOwog
ICAgIG1fc2Vzc2lvbldyYXBwZXItPmRhdGFUYXNrTWFwLmFkZChbbV90YXNrIHRhc2tJZGVudGlm
aWVyXSwgdGhpcyk7CkBAIC0zNDEsNyArMjg2LDcgQEAgdm9pZCBOZXR3b3JrRGF0YVRhc2tDb2Nv
YTo6cmVzdHJpY3RSZXF1ZXN0UmVmZXJyZXJUb09yaWdpbklmTmVlZGVkKFdlYkNvcmU6OlJlc28K
IAogdm9pZCBOZXR3b3JrRGF0YVRhc2tDb2NvYTo6ZGlkU2VuZERhdGEodWludDY0X3QgdG90YWxC
eXRlc1NlbnQsIHVpbnQ2NF90IHRvdGFsQnl0ZXNFeHBlY3RlZFRvU2VuZCkKIHsKLSAgICBFTUlU
X1NJR05QT1NUKG1fdGFzaywgInNlbnQgJWxsdSBieXRlcyAoZXhwZWN0ZWQgJWxsdSBieXRlcyki
LCB0b3RhbEJ5dGVzU2VudCwgdG90YWxCeXRlc0V4cGVjdGVkVG9TZW5kKTsKKyAgICBXVEZFbWl0
U2lnbnBvc3QobV90YXNrLmdldCgpLCAiRGF0YVRhc2siLCAic2VudCAlbGx1IGJ5dGVzIChleHBl
Y3RlZCAlbGx1IGJ5dGVzKSIsIHRvdGFsQnl0ZXNTZW50LCB0b3RhbEJ5dGVzRXhwZWN0ZWRUb1Nl
bmQpOwogCiAgICAgaWYgKG1fY2xpZW50KQogICAgICAgICBtX2NsaWVudC0+ZGlkU2VuZERhdGEo
dG90YWxCeXRlc1NlbnQsIHRvdGFsQnl0ZXNFeHBlY3RlZFRvU2VuZCk7CkBAIC0zNDksNyArMjk0
LDcgQEAgdm9pZCBOZXR3b3JrRGF0YVRhc2tDb2NvYTo6ZGlkU2VuZERhdGEodWludDY0X3QgdG90
YWxCeXRlc1NlbnQsIHVpbnQ2NF90IHRvdGFsQnkKIAogdm9pZCBOZXR3b3JrRGF0YVRhc2tDb2Nv
YTo6ZGlkUmVjZWl2ZUNoYWxsZW5nZShXZWJDb3JlOjpBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSYm
IGNoYWxsZW5nZSwgTmVnb3RpYXRlZExlZ2FjeVRMUyBuZWdvdGlhdGVkTGVnYWN5VExTLCBDaGFs
bGVuZ2VDb21wbGV0aW9uSGFuZGxlciYmIGNvbXBsZXRpb25IYW5kbGVyKQogewotICAgIEVNSVRf
U0lHTlBPU1QobV90YXNrLCAicmVjZWl2ZWQgY2hhbGxlbmdlIik7CisgICAgV1RGRW1pdFNpZ25w
b3N0KG1fdGFzay5nZXQoKSwgIkRhdGFUYXNrIiwgInJlY2VpdmVkIGNoYWxsZW5nZSIpOwogCiAg
ICAgaWYgKHRyeVBhc3N3b3JkQmFzZWRBdXRoZW50aWNhdGlvbihjaGFsbGVuZ2UsIGNvbXBsZXRp
b25IYW5kbGVyKSkKICAgICAgICAgcmV0dXJuOwpAQCAtMzY1LDkgKzMxMCw5IEBAIHZvaWQgTmV0
d29ya0RhdGFUYXNrQ29jb2E6OmRpZFJlY2VpdmVDaGFsbGVuZ2UoV2ViQ29yZTo6QXV0aGVudGlj
YXRpb25DaGFsbGVuZ2UmCiB2b2lkIE5ldHdvcmtEYXRhVGFza0NvY29hOjpkaWRDb21wbGV0ZVdp
dGhFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJiBlcnJvciwgY29uc3QgV2ViQ29y
ZTo6TmV0d29ya0xvYWRNZXRyaWNzJiBuZXR3b3JrTG9hZE1ldHJpY3MpCiB7CiAgICAgaWYgKGVy
cm9yLmlzTnVsbCgpKQotICAgICAgICBFTkRfU0lHTlBPU1QobV90YXNrLCAiY29tcGxldGVkIik7
CisgICAgICAgIFdURkVuZFNpZ25wb3N0KG1fdGFzay5nZXQoKSwgIkRhdGFUYXNrIiwgImNvbXBs
ZXRlZCIpOwogICAgIGVsc2UKLSAgICAgICAgRU5EX1NJR05QT1NUKG1fdGFzaywgImZhaWxlZCIp
OworICAgICAgICBXVEZFbmRTaWducG9zdChtX3Rhc2suZ2V0KCksICJEYXRhVGFzayIsICJmYWls
ZWQiKTsKIAogICAgIGlmIChtX2NsaWVudCkKICAgICAgICAgbV9jbGllbnQtPmRpZENvbXBsZXRl
V2l0aEVycm9yKGVycm9yLCBuZXR3b3JrTG9hZE1ldHJpY3MpOwpAQCAtMzc1LDcgKzMyMCw3IEBA
IHZvaWQgTmV0d29ya0RhdGFUYXNrQ29jb2E6OmRpZENvbXBsZXRlV2l0aEVycm9yKGNvbnN0IFdl
YkNvcmU6OlJlc291cmNlRXJyb3ImIGVyCiAKIHZvaWQgTmV0d29ya0RhdGFUYXNrQ29jb2E6OmRp
ZFJlY2VpdmVEYXRhKFJlZjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+JiYgZGF0YSkKIHsKLSAgICBF
TUlUX1NJR05QT1NUKG1fdGFzaywgInJlY2VpdmVkICV6ZCBieXRlcyIsIGRhdGEtPnNpemUoKSk7
CisgICAgV1RGRW1pdFNpZ25wb3N0KG1fdGFzay5nZXQoKSwgIkRhdGFUYXNrIiwgInJlY2VpdmVk
ICV6ZCBieXRlcyIsIGRhdGEtPnNpemUoKSk7CiAKICAgICBpZiAobV9jbGllbnQpCiAgICAgICAg
IG1fY2xpZW50LT5kaWRSZWNlaXZlRGF0YShXVEZNb3ZlKGRhdGEpKTsKQEAgLTM4MywxMyArMzI4
LDEzIEBAIHZvaWQgTmV0d29ya0RhdGFUYXNrQ29jb2E6OmRpZFJlY2VpdmVEYXRhKFJlZjxXZWJD
b3JlOjpTaGFyZWRCdWZmZXI+JiYgZGF0YSkKIAogdm9pZCBOZXR3b3JrRGF0YVRhc2tDb2NvYTo6
ZGlkUmVjZWl2ZVJlc3BvbnNlKFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmJiByZXNwb25zZSwg
TmVnb3RpYXRlZExlZ2FjeVRMUyBuZWdvdGlhdGVkTGVnYWN5VExTLCBXZWJLaXQ6OlJlc3BvbnNl
Q29tcGxldGlvbkhhbmRsZXImJiBjb21wbGV0aW9uSGFuZGxlcikKIHsKLSAgICBFTUlUX1NJR05Q
T1NUKG1fdGFzaywgInJlY2VpdmVkIHJlc3BvbnNlIGhlYWRlcnMiKTsKKyAgICBXVEZFbWl0U2ln
bnBvc3QobV90YXNrLmdldCgpLCAiRGF0YVRhc2siLCAicmVjZWl2ZWQgcmVzcG9uc2UgaGVhZGVy
cyIpOwogICAgIE5ldHdvcmtEYXRhVGFzazo6ZGlkUmVjZWl2ZVJlc3BvbnNlKFdURk1vdmUocmVz
cG9uc2UpLCBuZWdvdGlhdGVkTGVnYWN5VExTLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7
CiB9CiAKIHZvaWQgTmV0d29ya0RhdGFUYXNrQ29jb2E6OndpbGxQZXJmb3JtSFRUUFJlZGlyZWN0
aW9uKFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmJiByZWRpcmVjdFJlc3BvbnNlLCBXZWJDb3Jl
OjpSZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0LCBSZWRpcmVjdENvbXBsZXRpb25IYW5kbGVyJiYg
Y29tcGxldGlvbkhhbmRsZXIpCiB7Ci0gICAgRU1JVF9TSUdOUE9TVChtX3Rhc2ssICJyZWRpcmVj
dCIpOworICAgIFdURkVtaXRTaWducG9zdChtX3Rhc2suZ2V0KCksICJEYXRhVGFzayIsICJyZWRp
cmVjdCIpOwogCiAgICAgaWYgKHJlZGlyZWN0UmVzcG9uc2UuaHR0cFN0YXR1c0NvZGUoKSA9PSAz
MDcgfHwgcmVkaXJlY3RSZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpID09IDMwOCkgewogICAgICAg
ICBBU1NFUlQobV9sYXN0SFRUUE1ldGhvZCA9PSByZXF1ZXN0Lmh0dHBNZXRob2QoKSk7CkBAIC01
NDMsMTMgKzQ4OCwxMyBAQCBTdHJpbmcgTmV0d29ya0RhdGFUYXNrQ29jb2E6OnN1Z2dlc3RlZEZp
bGVuYW1lKCkgY29uc3QKIAogdm9pZCBOZXR3b3JrRGF0YVRhc2tDb2NvYTo6Y2FuY2VsKCkKIHsK
LSAgICBFTUlUX1NJR05QT1NUKG1fdGFzaywgImNhbmNlbCIpOworICAgIFdURkVtaXRTaWducG9z
dChtX3Rhc2suZ2V0KCksICJEYXRhVGFzayIsICJjYW5jZWwiKTsKICAgICBbbV90YXNrIGNhbmNl
bF07CiB9CiAKIHZvaWQgTmV0d29ya0RhdGFUYXNrQ29jb2E6OnJlc3VtZSgpCiB7Ci0gICAgRU1J
VF9TSUdOUE9TVChtX3Rhc2ssICJyZXN1bWUiKTsKKyAgICBXVEZFbWl0U2lnbnBvc3QobV90YXNr
LmdldCgpLCAiRGF0YVRhc2siLCAicmVzdW1lIik7CiAKICAgICBpZiAobV9zY2hlZHVsZWRGYWls
dXJlVHlwZSAhPSBOb0ZhaWx1cmUpCiAgICAgICAgIG1fZmFpbHVyZVRpbWVyLnN0YXJ0T25lU2hv
dCgwX3MpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>