<?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>176175</bug_id>
          
          <creation_ts>2017-08-31 12:22:38 -0700</creation_ts>
          <short_desc>[Mac] Upstream AppKit-related WebKitSystemInterface functions</short_desc>
          <delta_ts>2017-09-27 12:44:37 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>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="Andy Estes">aestes</reporter>
          <assigned_to name="Andy Estes">aestes</assigned_to>
          <cc>achristensen</cc>
    
    <cc>beidson</cc>
    
    <cc>buildbot</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>joepeck</cc>
    
    <cc>mitz</cc>
    
    <cc>rniwa</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1344058</commentid>
    <comment_count>0</comment_count>
    <who name="Andy Estes">aestes</who>
    <bug_when>2017-08-31 12:22:38 -0700</bug_when>
    <thetext>[Mac] Upstream AppKit-related WebKitSystemInterface functions</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1344059</commentid>
    <comment_count>1</comment_count>
      <attachid>319496</attachid>
    <who name="Andy Estes">aestes</who>
    <bug_when>2017-08-31 12:25:19 -0700</bug_when>
    <thetext>Created attachment 319496
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1344061</commentid>
    <comment_count>2</comment_count>
    <who name="Build Bot">buildbot</who>
    <bug_when>2017-08-31 12:27:02 -0700</bug_when>
    <thetext>Attachment 319496 did not pass style-queue:


ERROR: Source/WebKitLegacy/mac/Plugins/Hosted/NetscapePluginInstanceProxy.mm:463:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 1 in 21 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1344062</commentid>
    <comment_count>3</comment_count>
      <attachid>319498</attachid>
    <who name="Andy Estes">aestes</who>
    <bug_when>2017-08-31 12:28:04 -0700</bug_when>
    <thetext>Created attachment 319498
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1344064</commentid>
    <comment_count>4</comment_count>
    <who name="Build Bot">buildbot</who>
    <bug_when>2017-08-31 12:30:53 -0700</bug_when>
    <thetext>Attachment 319498 did not pass style-queue:


ERROR: Source/WebKitLegacy/mac/Plugins/Hosted/NetscapePluginInstanceProxy.mm:463:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 1 in 21 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1344082</commentid>
    <comment_count>5</comment_count>
      <attachid>319505</attachid>
    <who name="Andy Estes">aestes</who>
    <bug_when>2017-08-31 12:48:05 -0700</bug_when>
    <thetext>Created attachment 319505
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1344084</commentid>
    <comment_count>6</comment_count>
    <who name="Build Bot">buildbot</who>
    <bug_when>2017-08-31 12:49:54 -0700</bug_when>
    <thetext>Attachment 319505 did not pass style-queue:


ERROR: Source/WebKitLegacy/mac/Plugins/Hosted/NetscapePluginInstanceProxy.mm:463:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 1 in 21 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1344201</commentid>
    <comment_count>7</comment_count>
      <attachid>319542</attachid>
    <who name="Andy Estes">aestes</who>
    <bug_when>2017-08-31 17:02:32 -0700</bug_when>
    <thetext>Created attachment 319542
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1344204</commentid>
    <comment_count>8</comment_count>
    <who name="Build Bot">buildbot</who>
    <bug_when>2017-08-31 17:03:56 -0700</bug_when>
    <thetext>Attachment 319542 did not pass style-queue:


ERROR: Source/WebKitLegacy/mac/Plugins/Hosted/NetscapePluginInstanceProxy.mm:463:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 1 in 21 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1344226</commentid>
    <comment_count>9</comment_count>
      <attachid>319548</attachid>
    <who name="Andy Estes">aestes</who>
    <bug_when>2017-08-31 17:24:21 -0700</bug_when>
    <thetext>Created attachment 319548
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1344228</commentid>
    <comment_count>10</comment_count>
    <who name="Build Bot">buildbot</who>
    <bug_when>2017-08-31 17:25:59 -0700</bug_when>
    <thetext>Attachment 319548 did not pass style-queue:


ERROR: Source/WebKitLegacy/mac/Plugins/Hosted/NetscapePluginInstanceProxy.mm:463:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 1 in 21 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1344237</commentid>
    <comment_count>11</comment_count>
      <attachid>319553</attachid>
    <who name="Andy Estes">aestes</who>
    <bug_when>2017-08-31 17:35:06 -0700</bug_when>
    <thetext>Created attachment 319553
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1344241</commentid>
    <comment_count>12</comment_count>
    <who name="Build Bot">buildbot</who>
    <bug_when>2017-08-31 17:36:49 -0700</bug_when>
    <thetext>Attachment 319553 did not pass style-queue:


ERROR: Source/WebKitLegacy/mac/Plugins/Hosted/NetscapePluginInstanceProxy.mm:463:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 1 in 21 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1344293</commentid>
    <comment_count>13</comment_count>
      <attachid>319568</attachid>
    <who name="Andy Estes">aestes</who>
    <bug_when>2017-08-31 20:43:30 -0700</bug_when>
    <thetext>Created attachment 319568
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1344294</commentid>
    <comment_count>14</comment_count>
    <who name="Build Bot">buildbot</who>
    <bug_when>2017-08-31 20:45:17 -0700</bug_when>
    <thetext>Attachment 319568 did not pass style-queue:


ERROR: Source/WebKitLegacy/mac/Plugins/Hosted/NetscapePluginInstanceProxy.mm:463:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 1 in 21 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1344303</commentid>
    <comment_count>15</comment_count>
      <attachid>319573</attachid>
    <who name="Andy Estes">aestes</who>
    <bug_when>2017-08-31 21:37:27 -0700</bug_when>
    <thetext>Created attachment 319573
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1344304</commentid>
    <comment_count>16</comment_count>
    <who name="Build Bot">buildbot</who>
    <bug_when>2017-08-31 21:38:40 -0700</bug_when>
    <thetext>Attachment 319573 did not pass style-queue:


ERROR: Source/WebKitLegacy/mac/Plugins/Hosted/NetscapePluginInstanceProxy.mm:463:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 1 in 22 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1344323</commentid>
    <comment_count>17</comment_count>
      <attachid>319573</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-08-31 23:00:37 -0700</bug_when>
    <thetext>Comment on attachment 319573
Patch

Clearing flags on attachment: 319573

Committed r221473: &lt;http://trac.webkit.org/changeset/221473&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1344324</commentid>
    <comment_count>18</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-08-31 23:00:39 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1353633</commentid>
    <comment_count>19</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-09-27 12:44:37 -0700</bug_when>
    <thetext>&lt;rdar://problem/34693869&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>319496</attachid>
            <date>2017-08-31 12:25:19 -0700</date>
            <delta_ts>2017-08-31 12:28:02 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-176175-20170831122518.patch</filename>
            <type>text/plain</type>
            <size>38513</size>
            <attacher name="Andy Estes">aestes</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIxMzgxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzVhYmE3NzU1NjhiNjgz
ZmZjOWVjZWE4MzhlNWFmOGRlMTVjOTY4Ni4uMmI3NzIyZWE5NjA0ZjhhMThkYWM4MmIyY2ZmNDMw
YzkzNmY5MGU2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDE3LTA4LTMxICBBbmR5
IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNvbT4KKworICAgICAgICBbTWFjXSBVcHN0cmVhbSBBcHBL
aXQtcmVsYXRlZCBXZWJLaXRTeXN0ZW1JbnRlcmZhY2UgZnVuY3Rpb25zCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzYxNzUKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIENvbmZpZ3VyYXRpb25zL1dlYkNv
cmUueGNjb25maWc6IEFkZGVkIC1PYmpDIHRvIE9USEVSX0xERkxBR1Mgc28gdGhhdCBPYmplY3Rp
dmUtQyBjbGFzc2VzCisgICAgICAgIGluIFBBTCBhcmUgZXhwb3J0ZWQgYnkgV2ViQ29yZSBldmVu
IGlmIFdlYkNvcmUgZG9lc24ndCB1c2UgdGhlbS4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvUGxh
dGZvcm1FdmVudEZhY3RvcnlNYWMuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvUGxhdGZvcm1F
dmVudEZhY3RvcnlNYWMubW06CisgICAgICAgIChXZWJDb3JlOjpnZXRXaGVlbEV2ZW50RGVsdGFz
KToKKyAgICAgICAgKFdlYkNvcmU6OmtleUNoYXJGb3JFdmVudCk6CisgICAgICAgIChXZWJDb3Jl
OjpQbGF0Zm9ybVdoZWVsRXZlbnRCdWlsZGVyOjpQbGF0Zm9ybVdoZWVsRXZlbnRCdWlsZGVyKToK
KyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvV2ViQ29yZVN5c3RlbUludGVyZmFjZS5oOgorICAgICAg
ICAqIHBsYXRmb3JtL21hYy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlLm1tOgorCiAyMDE3LTA4LTMw
ICBBbmR5IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNvbT4KIAogICAgICAgICBbTWFjXSBVcHN0cmVh
bSBBY2Nlc3NpYmlsaXR5LXJlbGF0ZWQgV2ViS2l0U3lzdGVtSW50ZXJmYWNlIGZ1bmN0aW9ucwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3Jl
L1BBTC9DaGFuZ2VMb2cKaW5kZXggN2I0YjYwMWZlNGU1ZTE1MGY4MTg5NzQ0NTdjNjllZWI5YjYw
MTM1MS4uMTA5NTdiN2E1NDI5ZDVjYjVjMWFkOWM2NmJiOTkxZWMyMjYyZmMyMCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTctMDgtMzEgIEFuZHkgRXN0ZXMgIDxhZXN0
ZXNAYXBwbGUuY29tPgorCisgICAgICAgIFtNYWNdIFVwc3RyZWFtIEFwcEtpdC1yZWxhdGVkIFdl
YktpdFN5c3RlbUludGVyZmFjZSBmdW5jdGlvbnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE3NjE3NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgICogUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6Cisg
ICAgICAgICogcGFsL3NwaS9tYWMvSElUb29sYm94U1BJLmg6CisgICAgICAgICogcGFsL3NwaS9t
YWMvTlNSZXNwb25kZXJTUEkuaDogQ29waWVkIGZyb20gU291cmNlL1dlYkNvcmUvUEFML3BhbC9z
cGkvbWFjL05TV2luZG93U1BJLmguCisgICAgICAgICogcGFsL3NwaS9tYWMvTlNXaW5kb3dTUEku
aDoKKyAgICAgICAgKiBwYWwvc3lzdGVtL21hYy9XZWJQYW5lbC5oOiBDb3BpZWQgZnJvbSBTb3Vy
Y2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9tYWMvTlNXaW5kb3dTUEkuaC4KKyAgICAgICAgKiBwYWwv
c3lzdGVtL21hYy9XZWJQYW5lbC5tbTogQ29waWVkIGZyb20gU291cmNlL1dlYkNvcmUvUEFML3Bh
bC9zcGkvbWFjL0hJVG9vbGJveFNQSS5oLgorICAgICAgICAoLVtXZWJQYW5lbCBpbml0XSk6CisK
IDIwMTctMDgtMzAgIEFuZHkgRXN0ZXMgIDxhZXN0ZXNAYXBwbGUuY29tPgogCiAgICAgICAgIFtN
YWNdIFVwc3RyZWFtIEFjY2Vzc2liaWxpdHktcmVsYXRlZCBXZWJLaXRTeXN0ZW1JbnRlcmZhY2Ug
ZnVuY3Rpb25zCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGE4NjY2ZjMzODUzNDFkMzU2ZDdhMGM3MTMxZWEyYWZmNjgx
NGE2OGIuLmQ4Mzg5Y2M3NmNjODJjZDY2ZTExZWU2Y2VjZjE1YWUxYTU0MWExMGIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMjAgQEAKKzIwMTctMDgtMzEgIEFuZHkgRXN0ZXMgIDxhZXN0ZXNAYXBwbGUu
Y29tPgorCisgICAgICAgIFtNYWNdIFVwc3RyZWFtIEFwcEtpdC1yZWxhdGVkIFdlYktpdFN5c3Rl
bUludGVyZmFjZSBmdW5jdGlvbnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTE3NjE3NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgICogUGx1Z2luUHJvY2Vzcy9tYWMvUGx1Z2luUHJvY2Vzc01hYy5tbToKKyAg
ICAgICAgKFdlYktpdDo6aW5pdGlhbGl6ZUNvY29hT3ZlcnJpZGVzKToKKyAgICAgICAgKiBTaGFy
ZWQvbWFjL1dlYkV2ZW50RmFjdG9yeS5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViRXZlbnRGYWN0
b3J5OjpjcmVhdGVXZWJXaGVlbEV2ZW50KToKKyAgICAgICAgKFdlYktpdDo6V2ViRXZlbnRGYWN0
b3J5OjpjcmVhdGVXZWJLZXlib2FyZEV2ZW50KToKKyAgICAgICAgKiBVSVByb2Nlc3MvbWFjL1dL
VGV4dElucHV0V2luZG93Q29udHJvbGxlci5tbToKKyAgICAgICAgKC1bV0tUZXh0SW5wdXRQYW5l
bCBpbml0XSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViU3lz
dGVtSW50ZXJmYWNlLm1tOgorICAgICAgICAoSW5pdFdlYkNvcmVTeXN0ZW1JbnRlcmZhY2UpOgor
CiAyMDE3LTA4LTMwICBBbmR5IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNvbT4KIAogICAgICAgICBb
TWFjXSBVcHN0cmVhbSBBY2Nlc3NpYmlsaXR5LXJlbGF0ZWQgV2ViS2l0U3lzdGVtSW50ZXJmYWNl
IGZ1bmN0aW9ucwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9n
IGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCmluZGV4IGJkZjVkMzhhZTdlNWI3
NjE0MDliM2QxMDU0ZDg0MzgzODY4OWZiZGEuLjhmY2RhMDFhZmY2ZTk0MTMyMGU1MTQ2M2RiYTVh
ODI1ZDRmNjhjYzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxv
ZworKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNiBA
QAorMjAxNy0wOC0zMSAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CisKKyAgICAgICAg
W01hY10gVXBzdHJlYW0gQXBwS2l0LXJlbGF0ZWQgV2ViS2l0U3lzdGVtSW50ZXJmYWNlIGZ1bmN0
aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc2
MTc1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBQ
bHVnaW5zL0hvc3RlZC9OZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJveHkubW06CisgICAgICAgIChX
ZWJLaXQ6Ok5ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eTo6a2V5RXZlbnQpOgorICAgICAgICAq
IFBsdWdpbnMvSG9zdGVkL1dlYlRleHRJbnB1dFdpbmRvd0NvbnRyb2xsZXIubToKKyAgICAgICAg
KC1bV2ViVGV4dElucHV0UGFuZWwgaW5pdF0pOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dl
YlN5c3RlbUludGVyZmFjZS5tbToKKyAgICAgICAgKEluaXRXZWJDb3JlU3lzdGVtSW50ZXJmYWNl
KToKKyAgICAgICAgKiBXZWJWaWV3L1dlYkR5bmFtaWNTY3JvbGxCYXJzVmlldy5tbToKKyAgICAg
ICAgKC1bV2ViRHluYW1pY1Njcm9sbEJhcnNWaWV3IHNjcm9sbFdoZWVsOl0pOgorICAgICAgICAq
IFdlYlZpZXcvV2ViSFRNTFZpZXcubW06CisgICAgICAgICgtW1dlYkhUTUxWaWV3IF9yZW1vdmVX
aW5kb3dPYnNlcnZlcnNdKToKKyAgICAgICAgKC1bV2ViSFRNTFZpZXcgYWRkV2luZG93T2JzZXJ2
ZXJzXSk6CisgICAgICAgICogV2ViVmlldy9XZWJWaWV3Lm1tOgorICAgICAgICAoLVtXZWJWaWV3
IGFkZFdpbmRvd09ic2VydmVyc0ZvcldpbmRvdzpdKToKKyAgICAgICAgKC1bV2ViVmlldyByZW1v
dmVXaW5kb3dPYnNlcnZlcnNdKToKKyAgICAgICAgKC1bV2ViVmlldyB2aWV3V2lsbE1vdmVUb1dp
bmRvdzpdKToKKwogMjAxNy0wOC0zMCAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CiAK
ICAgICAgICAgW01hY10gVXBzdHJlYW0gQWNjZXNzaWJpbGl0eS1yZWxhdGVkIFdlYktpdFN5c3Rl
bUludGVyZmFjZSBmdW5jdGlvbnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NvbmZpZ3Vy
YXRpb25zL1dlYkNvcmUueGNjb25maWcgYi9Tb3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9X
ZWJDb3JlLnhjY29uZmlnCmluZGV4IDJhMGFjZjdhZTI3OGM2MDk4NTE4MGY5ODZjNzUxYzM2ZGZi
YWFkZDkuLjM1ZmMzZTc5NWZmOGEyOWNiMDMxYzA1OTNjMjZiZWJjZGRmM2U0NDcgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25zL1dlYkNvcmUueGNjb25maWcKKysrIGIv
U291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvV2ViQ29yZS54Y2NvbmZpZwpAQCAtNzcsNyAr
NzcsNyBAQCBMSUJXRUJSVENfTElCUkFSWV9ESVJfVVNFX09WRVJSSURFX0ZSQU1FV09SS1NfRElS
X05PID0gJChXRUJDT1JFX0ZSQU1FV09SS1NfRElSKQogTElCV0VCUlRDX0xJQlJBUllfRElSX1VT
RV9PVkVSUklERV9GUkFNRVdPUktTX0RJUl9ZRVMgPSAkKFdLX09WRVJSSURFX0ZSQU1FV09SS1Nf
RElSKTsKIAogT1RIRVJfTERGTEFHUyA9ICQoaW5oZXJpdGVkKSAkKFdLX1JFTE9DQVRBQkxFX0ZS
QU1FV09SS19MREZMQUdTKSAkKFdLX1VOREVGSU5FRF9TWU1CT0xTX0xERkxBR1MpICQoT1RIRVJf
TERGTEFHU19QTEFURk9STSk7Ci1PVEhFUl9MREZMQUdTX0JBU0UgPSAtbHNxbGl0ZTMgLWxvYmpj
IC1sQU5HTEUgLWZyYW1ld29yayBDb3JlQXVkaW8gLWZyYW1ld29yayBNZXRhbCAtYWxsb3dhYmxl
X2NsaWVudCBXZWJDb3JlVGVzdFN1cHBvcnQgLWFsbG93YWJsZV9jbGllbnQgV2ViS2l0TGVnYWN5
OworT1RIRVJfTERGTEFHU19CQVNFID0gLWxzcWxpdGUzIC1sb2JqYyAtbEFOR0xFIC1mcmFtZXdv
cmsgQ29yZUF1ZGlvIC1mcmFtZXdvcmsgTWV0YWwgLWFsbG93YWJsZV9jbGllbnQgV2ViQ29yZVRl
c3RTdXBwb3J0IC1hbGxvd2FibGVfY2xpZW50IFdlYktpdExlZ2FjeSAtT2JqQzsKIC8vIEZJWE1F
OiBSZWR1Y2UgdGhlIG51bWJlciBvZiBhbGxvd2FibGVfY2xpZW50IDxyZGFyOi8vcHJvYmxlbS8z
MTgyMzk2OT4KIE9USEVSX0xERkxBR1NfQkFTRV9pb3MgPSAkKE9USEVSX0xERkxBR1NfQkFTRSkg
LWZyYW1ld29yayBDRk5ldHdvcmsgLWZyYW1ld29yayBDb3JlR3JhcGhpY3MgLWZyYW1ld29yayBD
b3JlVGV4dCAtZnJhbWV3b3JrIEZvdW5kYXRpb24gLWZyYW1ld29yayBJbWFnZUlPIC1mcmFtZXdv
cmsgTW9iaWxlQ29yZVNlcnZpY2VzIC1mcmFtZXdvcmsgT3BlbkdMRVMgLWxNb2JpbGVHZXN0YWx0
ICQoV0tfSU9TX0JJTkNPTVBBVF9MREZMQUdTKSAtYWxsb3dhYmxlX2NsaWVudCBXZWJLaXQgLWFs
bG93YWJsZV9jbGllbnQgaVR1bmVzVSAtYWxsb3dhYmxlX2NsaWVudCBDYXNhYmxhbmNhIC1hbGxv
d2FibGVfY2xpZW50IFJlbW90ZSAtYWxsb3dhYmxlX2NsaWVudCBUVkJvb2tzIC1hbGxvd2FibGVf
Y2xpZW50IER1bXBSZW5kZXJUcmVlIC1hbGxvd2FibGVfY2xpZW50IFdlYktpdFRlc3RSdW5uZXIg
LWFsbG93YWJsZV9jbGllbnQgVGVzdFdlYktpdEFQSTsKIE9USEVSX0xERkxBR1NfUExBVEZPUk1b
c2RrPWlwaG9uZW9zKl0gPSAkKE9USEVSX0xERkxBR1NfQkFTRV9pb3MpIC1mcmFtZXdvcmsgSU9T
dXJmYWNlIC1mcmFtZXdvcmsgR3JhcGhpY3NTZXJ2aWNlcyAkKExJQldFQlJUQ19MREZMQUdTKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpp
bmRleCBkOTg1OGY5ZWUyYjQxZjAwNTkzNzFhZTkwY2IyYmZkZGRhM2QwYjg4Li44ZGQ1YTZiMzY3
OTJhMjYxZmJlNTM5OTMwNDk2ZjkxNzRiN2YwNTUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUv
UEFML1BBTC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0xMDEsNiArMTAxLDkgQEAKIAkJ
QTEwMjY1ODkxRjU2NzQ3QTAwQjRDODQ0IC8qIEhJVG9vbGJveFNQSS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTEwMjY1ODgxRjU2NzQ3QTAwQjRDODQ0
IC8qIEhJVG9vbGJveFNQSS5oICovOyB9OwogCQlBMTAyNjU4QjFGNTY3NDhDMDBCNEM4NDQgLyog
UXVpY2tEcmF3U1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBBMTAyNjU4QTFGNTY3NDhDMDBCNEM4NDQgLyogUXVpY2tEcmF3U1BJLmggKi87IH07CiAJ
CUExMDI2NThFMUY1NjdFOUQwMEI0Qzg0NCAvKiBISVNlcnZpY2VzU1BJLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMTAyNjU4RDFGNTY3RTlEMDBCNEM4
NDQgLyogSElTZXJ2aWNlc1NQSS5oICovOyB9OworCQlBMTA4MjZGMTFGNTczQkNBMDA0NzcyQUMg
LyogTlNSZXNwb25kZXJTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEExMDgyNkYwMUY1NzNCQ0EwMDQ3NzJBQyAvKiBOU1Jlc3BvbmRlclNQSS5oICov
OyB9OworCQlBMTA4MjZGOTFGNTc2MjkyMDA0NzcyQUMgLyogV2ViUGFuZWwuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExMDgyNkY3MUY1NzYyOTIwMDQ3
NzJBQyAvKiBXZWJQYW5lbC5oICovOyB9OworCQlBMTA4MjZGQTFGNTc2MjkyMDA0NzcyQUMgLyog
V2ViUGFuZWwubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBBMTA4MjZGODFGNTc2MjkyMDA0NzcyQUMgLyogV2ViUGFuZWwubW0gKi87IH07CiAJCUExRjU1
RENGMUY1NTI4RUMwMEVEQjc1RiAvKiBNZXRhZGF0YVNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTFGNTVEQ0UxRjU1MjhFQzAwRURCNzVGIC8qIE1l
dGFkYXRhU1BJLmggKi87IH07CiAJCUEzMEQ0MTIxMUYwREQwRUEwMEI3MTk1NCAvKiBLaWxsUmlu
Zy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTMwRDQx
MUUxRjBERDBFQTAwQjcxOTU0IC8qIEtpbGxSaW5nLmggKi87IH07CiAJCUEzMEQ0MTIyMUYwREQw
RUEwMEI3MTk1NCAvKiBLaWxsUmluZ05vbmUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQTMwRDQxMUYxRjBERDBFQTAwQjcxOTU0IC8qIEtpbGxSaW5n
Tm9uZS5jcHAgKi87IH07CkBAIC0yMTcsNiArMjIwLDkgQEAKIAkJQTEwMjY1ODgxRjU2NzQ3QTAw
QjRDODQ0IC8qIEhJVG9vbGJveFNQSS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBISVRvb2xib3hTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTEwMjY1OEEx
RjU2NzQ4QzAwQjRDODQ0IC8qIFF1aWNrRHJhd1NQSS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBRdWlja0RyYXdTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
QTEwMjY1OEQxRjU2N0U5RDAwQjRDODQ0IC8qIEhJU2VydmljZXNTUEkuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gSElTZXJ2aWNlc1NQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMTA4MjZG
MDFGNTczQkNBMDA0NzcyQUMgLyogTlNSZXNwb25kZXJTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTlNS
ZXNwb25kZXJTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTEwODI2RjcxRjU3
NjI5MjAwNDc3MkFDIC8qIFdlYlBhbmVsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYlBhbmVsLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExMDgyNkY4MUY1NzYyOTIwMDQ3NzJBQyAvKiBX
ZWJQYW5lbC5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFdlYlBhbmVsLm1tOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQlBMUY1NURDRTFGNTUyOEVDMDBFREI3NUYgLyogTWV0YWRhdGFT
UEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gTWV0YWRhdGFTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJQTMwRDQxMUUxRjBERDBFQTAwQjcxOTU0IC8qIEtpbGxSaW5nLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEtpbGxSaW5nLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUEzMEQ0MTFGMUYwREQwRUEwMEI3MTk1NCAvKiBLaWxsUmluZ05vbmUuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gS2lsbFJpbmdOb25lLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTM1Myw2ICszNTksNyBAQAogCQkJCTBDNzc4NTc5
MUY0NTEzMEYwMEY0RUJCNiAvKiBOU01lbnVTUEkuaCAqLywKIAkJCQkwQzc3ODU3QTFGNDUxMzBG
MDBGNEVCQjYgLyogTlNQYXN0ZWJvYXJkU1BJLmggKi8sCiAJCQkJMEM3Nzg1N0IxRjQ1MTMwRjAw
RjRFQkI2IC8qIE5TUG9wb3ZlclNQSS5oICovLAorCQkJCUExMDgyNkYwMUY1NzNCQ0EwMDQ3NzJB
QyAvKiBOU1Jlc3BvbmRlclNQSS5oICovLAogCQkJCTBDNzc4NTdDMUY0NTEzMEYwMEY0RUJCNiAv
KiBOU1Njcm9sbGVySW1wU1BJLmggKi8sCiAJCQkJMEM3Nzg1N0QxRjQ1MTMwRjAwRjRFQkI2IC8q
IE5TU2Nyb2xsaW5nSW5wdXRGaWx0ZXJTUEkuaCAqLywKIAkJCQkwQzc3ODU3RTFGNDUxMzBGMDBG
NEVCQjYgLyogTlNTY3JvbGxpbmdNb21lbnR1bUNhbGN1bGF0b3JTUEkuaCAqLywKQEAgLTQ3Myw2
ICs0ODAsOCBAQAogCQkJCUEzNzg4RTlEMUYwNUI3OEUwMDY3OTQyNSAvKiBTb3VuZE1hYy5tbSAq
LywKIAkJCQlBM0FCNkU2MjFGM0QyMTdGMDA5QzE0QjEgLyogU3lzdGVtU2xlZXBMaXN0ZW5lck1h
Yy5oICovLAogCQkJCUEzQUI2RTYzMUYzRDIxN0YwMDlDMTRCMSAvKiBTeXN0ZW1TbGVlcExpc3Rl
bmVyTWFjLm1tICovLAorCQkJCUExMDgyNkY3MUY1NzYyOTIwMDQ3NzJBQyAvKiBXZWJQYW5lbC5o
ICovLAorCQkJCUExMDgyNkY4MUY1NzYyOTIwMDQ3NzJBQyAvKiBXZWJQYW5lbC5tbSAqLywKIAkJ
CSk7CiAJCQlwYXRoID0gbWFjOwogCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKQEAgLTU0Niw2
ICs1NTUsNyBAQAogCQkJCTBDNzc4NTkyMUY0NTEzMEYwMEY0RUJCNiAvKiBOU01lbnVTUEkuaCBp
biBIZWFkZXJzICovLAogCQkJCTBDNzc4NTkzMUY0NTEzMEYwMEY0RUJCNiAvKiBOU1Bhc3RlYm9h
cmRTUEkuaCBpbiBIZWFkZXJzICovLAogCQkJCTBDNzc4NTk0MUY0NTEzMEYwMEY0RUJCNiAvKiBO
U1BvcG92ZXJTUEkuaCBpbiBIZWFkZXJzICovLAorCQkJCUExMDgyNkYxMUY1NzNCQ0EwMDQ3NzJB
QyAvKiBOU1Jlc3BvbmRlclNQSS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEM3Nzg1OTUxRjQ1MTMw
RjAwRjRFQkI2IC8qIE5TU2Nyb2xsZXJJbXBTUEkuaCBpbiBIZWFkZXJzICovLAogCQkJCTBDNzc4
NTk2MUY0NTEzMEYwMEY0RUJCNiAvKiBOU1Njcm9sbGluZ0lucHV0RmlsdGVyU1BJLmggaW4gSGVh
ZGVycyAqLywKIAkJCQkwQzc3ODU5NzFGNDUxMzBGMDBGNEVCQjYgLyogTlNTY3JvbGxpbmdNb21l
bnR1bUNhbGN1bGF0b3JTUEkuaCBpbiBIZWFkZXJzICovLApAQCAtNTgwLDYgKzU5MCw3IEBACiAJ
CQkJMEM3Nzg1QTExRjQ1MTMwRjAwRjRFQkI2IC8qIFRVQ2FsbFNQSS5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJMEM1QUY5MjIxRjQzQTRDNzAwMkVBQzAyIC8qIFVJS2l0U1BJLmggaW4gSGVhZGVycyAq
LywKIAkJCQkwQzJEQTE1OTFGM0JFQjQ5MDBEQkMzMTcgLyogV2ViRmlsdGVyRXZhbHVhdG9yU1BJ
LmggaW4gSGVhZGVycyAqLywKKwkJCQlBMTA4MjZGOTFGNTc2MjkyMDA0NzcyQUMgLyogV2ViUGFu
ZWwuaCBpbiBIZWFkZXJzICovLAogCQkJKTsKIAkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHBy
b2Nlc3NpbmcgPSAwOwogCQl9OwpAQCAtNjc4LDYgKzY4OSw3IEBACiAJCQkJQTM3ODhFOUMxRjA1
Qjc4MjAwNjc5NDI1IC8qIFNvdW5kTm9uZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBM0FCNkU1
NzFGM0QxRERCMDA5QzE0QjEgLyogU3lzdGVtU2xlZXBMaXN0ZW5lci5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQlBM0FCNkU2NTFGM0QyMTdGMDA5QzE0QjEgLyogU3lzdGVtU2xlZXBMaXN0ZW5lck1h
Yy5tbSBpbiBTb3VyY2VzICovLAorCQkJCUExMDgyNkZBMUY1NzYyOTIwMDQ3NzJBQyAvKiBXZWJQ
YW5lbC5tbSBpbiBTb3VyY2VzICovLAogCQkJKTsKIAkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9z
dHByb2Nlc3NpbmcgPSAwOwogCQl9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3Bh
bC9zcGkvbWFjL0hJVG9vbGJveFNQSS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvbWFj
L0hJVG9vbGJveFNQSS5oCmluZGV4IDAwMzQ4Nzc3NzJkY2M1OGYwMmExNjc4YTc2Y2UyZmEwNWI4
YWZhY2IuLjBmZjkyNzBhMzI1ZDM4OGZiNGEyNzBhYzY5OTk5YTE2M2RiOThjYTggMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9ISVRvb2xib3hTUEkuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9tYWMvSElUb29sYm94U1BJLmgKQEAgLTQ1LDUgKzQ1
LDYgQEAgQ0dXaW5kb3dJRCBHZXROYXRpdmVXaW5kb3dGcm9tV2luZG93UmVmKFdpbmRvd1JlZik7
CiBPU1N0YXR1cyBUU01Qcm9jZXNzUmF3S2V5RXZlbnQoRXZlbnRSZWYpOwogRXZlbnRSZWYgR2V0
Q3VycmVudEV2ZW50KCk7CiBDRlR5cGVSZWYgVFNNR2V0SW5wdXRTb3VyY2VQcm9wZXJ0eShUU01J
bnB1dFNvdXJjZVJlZiwgVFNNSW5wdXRTb3VyY2VQcm9wZXJ0eVRhZyk7CitPU1N0YXR1cyBHZXRF
dmVudFBhcmFtZXRlcihFdmVudFJlZiwgRXZlbnRQYXJhbU5hbWUgaW5OYW1lLCBFdmVudFBhcmFt
VHlwZSBpbkRlc2lyZWRUeXBlLCBFdmVudFBhcmFtVHlwZSogb3V0QWN0dWFsVHlwZSwgQnl0ZUNv
dW50IGluQnVmZmVyU2l6ZSwgQnl0ZUNvdW50KiBvdXRBY3R1YWxTaXplLCB2b2lkKiBvdXREYXRh
KTsKIAogV1RGX0VYVEVSTl9DX0VORApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3Bh
bC9zcGkvbWFjL05TUmVzcG9uZGVyU1BJLmggYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9t
YWMvTlNSZXNwb25kZXJTUEkuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mZWQxYTc5NTI3ZjcyZThjMDc3MTNkM2Zl
ODIwMjFkMTU2MDdiZjNkCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3Bh
bC9zcGkvbWFjL05TUmVzcG9uZGVyU1BJLmgKQEAgLTAsMCArMSw0MCBAQAorLyoKKyAqIENvcHly
aWdodCAoQykgMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09O
VFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisg
KiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
IElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICog
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisK
KyNpZiBQTEFURk9STShNQUMpCisKKyNpZiBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQorCisjaW1w
b3J0IDxBcHBLaXQvTlNSZXNwb25kZXJfUHJpdmF0ZS5oPgorCisjZWxzZQorCitAaW50ZXJmYWNl
IE5TUmVzcG9uZGVyICgpCistICh2b2lkKV9zZXRTaG91bGRQb3N0RXZlbnROb3RpZmljYXRpb25z
OihCT09MKXBvc3ROb3RpZmljYXRpb25zOworQGVuZAorCisjZW5kaWYKKworI2VuZGlmIC8vIFBM
QVRGT1JNKE1BQykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9O
U1dpbmRvd1NQSS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvbWFjL05TV2luZG93U1BJ
LmgKaW5kZXggYmFiODQwMGYwNDlkOTRiOTJkZWZlYTlhZTk1MzE2MmZmMjE1ODk0My4uN2NiMzM5
N2JkOTRiNDk3ZDhhYjM2MDcyM2ZhM2FiOWMzMTE2MjQ4MyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvUEFML3BhbC9zcGkvbWFjL05TV2luZG93U1BJLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
UEFML3BhbC9zcGkvbWFjL05TV2luZG93U1BJLmgKQEAgLTQyLDkgKzQyLDE0IEBACiBAZW5kCiAK
IGVudW0geworICAgIE5TU2lkZVV0aWxpdHlXaW5kb3dNYXNrID0gMSA8PCA5LAorICAgIE5TU21h
bGxXaW5kb3dNYXNrID0gMSA8PCAxMCwKICAgICBfTlNDYXJib25XaW5kb3dNYXNrID0gMSA8PCAy
NSwKIH07CiAKICNlbmRpZgogCitleHRlcm4gTlNOb3RpZmljYXRpb25OYW1lIE5TV2luZG93V2ls
bE9yZGVyT25TY3JlZW5Ob3RpZmljYXRpb247CitleHRlcm4gTlNOb3RpZmljYXRpb25OYW1lIE5T
V2luZG93V2lsbE9yZGVyT2ZmU2NyZWVuTm90aWZpY2F0aW9uOworCiAjZW5kaWYgLy8gUExBVEZP
Uk0oTUFDKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zeXN0ZW0vbWFjL1dl
YlBhbmVsLmggYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3N5c3RlbS9tYWMvV2ViUGFuZWwuaApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi4wZDQ2MDljNGQ0MTRjMmU1YjZhMGYzYjhkMjY4MDZkOTczZjE0OGE2Ci0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zeXN0ZW0vbWFjL1dlYlBhbmVs
LmgKQEAgLTAsMCArMSwzMiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNyBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAq
IGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICog
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbXBvcnQgPEFwcEtpdC9BcHBLaXQu
aD4KKworUEFMX0VYUE9SVCBAaW50ZXJmYWNlIFdlYlBhbmVsIDogTlNQYW5lbAorCistIChpbnN0
YW5jZXR5cGUpaW5pdDsKKworQGVuZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3Bh
bC9zeXN0ZW0vbWFjL1dlYlBhbmVsLm1tIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zeXN0ZW0v
bWFjL1dlYlBhbmVsLm1tCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjMxMzE4MTE3ZDdmZjBkNjc3NmFlZDFiOGUwYTU5
NGIxZjE4MDk4NWEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3N5
c3RlbS9tYWMvV2ViUGFuZWwubW0KQEAgLTAsMCArMSw0NyBAQAorLyoKKyAqIENvcHlyaWdodCAo
QykgMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICog
Mi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVU
T1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBD
T05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbXBv
cnQgImNvbmZpZy5oIgorI2ltcG9ydCAiV2ViUGFuZWwuaCIKKworI2lmIFBMQVRGT1JNKE1BQykK
KworI2ltcG9ydCA8cGFsL3NwaS9tYWMvTlNXaW5kb3dTUEkuaD4KKworQGltcGxlbWVudGF0aW9u
IFdlYlBhbmVsCisKKy0gKGluc3RhbmNldHlwZSlpbml0Cit7CisjcHJhZ21hIGNsYW5nIGRpYWdu
b3N0aWMgcHVzaAorI3ByYWdtYSBjbGFuZyBkaWFnbm9zdGljIGlnbm9yZWQgIi1XZGVwcmVjYXRl
ZC1kZWNsYXJhdGlvbnMiCisgICAgc3RhdGljIE5TV2luZG93U3R5bGVNYXNrIHN0eWxlTWFzayA9
IE5TTWluaWF0dXJpemFibGVXaW5kb3dNYXNrIHwgTlNDbG9zYWJsZVdpbmRvd01hc2sgfCBOU1Jl
c2l6YWJsZVdpbmRvd01hc2sgIHwgTlNUaXRsZWRXaW5kb3dNYXNrIHwgTlNTbWFsbFdpbmRvd01h
c2sgfCBOU1NpZGVVdGlsaXR5V2luZG93TWFzayB8IE5TVXRpbGl0eVdpbmRvd01hc2s7CisjcHJh
Z21hIGNsYW5nIGRpYWdub3N0aWMgcG9wCisgICAgCisgICAgcmV0dXJuIFtzdXBlciBpbml0V2l0
aENvbnRlbnRSZWN0Ok5TWmVyb1JlY3Qgc3R5bGVNYXNrOnN0eWxlTWFzayBiYWNraW5nOk5TQmFj
a2luZ1N0b3JlQnVmZmVyZWQgZGVmZXI6WUVTXTsKK30KKworQGVuZAorCisjZW5kaWYgLy8gUExB
VEZPUk0oTUFDKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1BsYXRm
b3JtRXZlbnRGYWN0b3J5TWFjLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvUGxhdGZv
cm1FdmVudEZhY3RvcnlNYWMuaAppbmRleCAyNTljNjA1MGQ2MGE0OWY0OThkYzU0OGI3Y2VmMzJm
MGM3NmFkZTZjLi5kMjBhMmQ4ZWU5MGY0YzE4NjdiOTZlNTk0OTIxOTU5YzRmNmMwMjZmIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvUGxhdGZvcm1FdmVudEZhY3RvcnlN
YWMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvUGxhdGZvcm1FdmVudEZhY3Rv
cnlNYWMuaApAQCAtNDksNiArNDksOSBAQCBXRUJDT1JFX0VYUE9SVCBTdHJpbmcga2V5SWRlbnRp
ZmllckZvcktleUV2ZW50KE5TRXZlbnQgKik7CiBXRUJDT1JFX0VYUE9SVCBTdHJpbmcga2V5Rm9y
S2V5RXZlbnQoTlNFdmVudCAqKTsKIFdFQkNPUkVfRVhQT1JUIFN0cmluZyBjb2RlRm9yS2V5RXZl
bnQoTlNFdmVudCAqKTsKIFdFQkNPUkVfRVhQT1JUIGRvdWJsZSBldmVudFRpbWVTdGFtcFNpbmNl
MTk3MChOU0V2ZW50ICopOworICAgIAorV0VCQ09SRV9FWFBPUlQgdm9pZCBnZXRXaGVlbEV2ZW50
RGVsdGFzKE5TRXZlbnQgKiwgZmxvYXQmIGRlbHRhWCwgZmxvYXQmIGRlbHRhWSwgQk9PTCYgY29u
dGludW91cyk7CitXRUJDT1JFX0VYUE9SVCBVSW50OCBrZXlDaGFyRm9yRXZlbnQoTlNFdmVudCAq
KTsKIAogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9Q
bGF0Zm9ybUV2ZW50RmFjdG9yeU1hYy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9Q
bGF0Zm9ybUV2ZW50RmFjdG9yeU1hYy5tbQppbmRleCBiYzFlMzY3ZmM0Njk0ZWFmNDYwYWIwZWE1
YTQyMzBkMDAwMDFhYzg5Li5lNWU4NWJhMDg1ODZjY2VlOTYzYzdjNWRiY2E3YjJhODI4NmJjNmVh
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvUGxhdGZvcm1FdmVudEZh
Y3RvcnlNYWMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1BsYXRmb3JtRXZl
bnRGYWN0b3J5TWFjLm1tCkBAIC0zNCw2ICszNCw4IEBACiAjaW1wb3J0ICJXaW5kb3dzS2V5Ym9h
cmRDb2Rlcy5oIgogI2ltcG9ydCA8SElUb29sYm94L0V2ZW50cy5oPgogI2ltcG9ydCA8bWFjaC9t
YWNoX3RpbWUuaD4KKyNpbXBvcnQgPHBhbC9zcGkvbWFjL0hJVG9vbGJveFNQSS5oPgorI2ltcG9y
dCA8cGFsL3NwaS9tYWMvTlNFdmVudFNQSS5oPgogI2ltcG9ydCA8cGFsL3NwaS9tYWMvTlNNZW51
U1BJLmg+CiAjaW1wb3J0IDx3dGYvQVNDSUlDVHlwZS5oPgogCkBAIC02NzQsNiArNjc2LDM5IEBA
IHN0YXRpYyBpbnQgdHlwZUZvckV2ZW50KE5TRXZlbnQgKmV2ZW50KQogICAgIHJldHVybiBzdGF0
aWNfY2FzdDxpbnQ+KFtOU01lbnUgbWVudVR5cGVGb3JFdmVudDpldmVudF0pOwogfQogICAgIAor
dm9pZCBnZXRXaGVlbEV2ZW50RGVsdGFzKE5TRXZlbnQgKmV2ZW50LCBmbG9hdCYgZGVsdGFYLCBm
bG9hdCYgZGVsdGFZLCBCT09MJiBjb250aW51b3VzKQoreworICAgIEFTU0VSVChldmVudCk7Cisg
ICAgaWYgKGV2ZW50Lmhhc1ByZWNpc2VTY3JvbGxpbmdEZWx0YXMpIHsKKyAgICAgICAgZGVsdGFY
ID0gZXZlbnQuc2Nyb2xsaW5nRGVsdGFYOworICAgICAgICBkZWx0YVkgPSBldmVudC5zY3JvbGxp
bmdEZWx0YVk7CisgICAgICAgIGNvbnRpbnVvdXMgPSBZRVM7CisgICAgfSBlbHNlIHsKKyAgICAg
ICAgZGVsdGFYID0gZXZlbnQuZGVsdGFYOworICAgICAgICBkZWx0YVkgPSBldmVudC5kZWx0YVk7
CisgICAgICAgIGNvbnRpbnVvdXMgPSBOTzsKKyAgICB9Cit9CisKK1VJbnQ4IGtleUNoYXJGb3JF
dmVudChOU0V2ZW50ICpldmVudCkKK3sKKyAgICBFdmVudFJlZiBldmVudFJlZiA9IFtldmVudCBf
ZXZlbnRSZWZdOworICAgIGlmICghZXZlbnRSZWYpCisgICAgICAgIHJldHVybiAwOworCisgICAg
Qnl0ZUNvdW50IGtleUNoYXJDb3VudCA9IDA7CisgICAgaWYgKEdldEV2ZW50UGFyYW1ldGVyKGV2
ZW50UmVmLCBrRXZlbnRQYXJhbUtleU1hY0NoYXJDb2RlcywgdHlwZUNoYXIsIDAsIDAsICZrZXlD
aGFyQ291bnQsIDApICE9IG5vRXJyKQorICAgICAgICByZXR1cm4gMDsKKyAgICBpZiAoa2V5Q2hh
ckNvdW50ICE9IDEpCisgICAgICAgIHJldHVybiAwOworCisgICAgVUludDgga2V5Q2hhciA9IDA7
CisgICAgaWYgKEdldEV2ZW50UGFyYW1ldGVyKGV2ZW50UmVmLCBrRXZlbnRQYXJhbUtleU1hY0No
YXJDb2RlcywgdHlwZUNoYXIsIDAsIHNpemVvZihrZXlDaGFyKSwgJmtleUNoYXJDb3VudCwgJmtl
eUNoYXIpICE9IG5vRXJyKQorICAgICAgICByZXR1cm4gMDsKKyAgICAKKyAgICByZXR1cm4ga2V5
Q2hhcjsKK30KKwogY2xhc3MgUGxhdGZvcm1Nb3VzZUV2ZW50QnVpbGRlciA6IHB1YmxpYyBQbGF0
Zm9ybU1vdXNlRXZlbnQgewogcHVibGljOgogICAgIFBsYXRmb3JtTW91c2VFdmVudEJ1aWxkZXIo
TlNFdmVudCAqZXZlbnQsIE5TRXZlbnQgKmNvcnJlc3BvbmRpbmdQcmVzc3VyZUV2ZW50LCBOU1Zp
ZXcgKndpbmRvd1ZpZXcpCkBAIC03NDQsNyArNzc5LDcgQEAgcHVibGljOgogICAgICAgICBtX2dy
YW51bGFyaXR5ID0gU2Nyb2xsQnlQaXhlbFdoZWVsRXZlbnQ7CiAKICAgICAgICAgQk9PTCBjb250
aW51b3VzOwotICAgICAgICB3a0dldFdoZWVsRXZlbnREZWx0YXMoZXZlbnQsICZtX2RlbHRhWCwg
Jm1fZGVsdGFZLCAmY29udGludW91cyk7CisgICAgICAgIGdldFdoZWVsRXZlbnREZWx0YXMoZXZl
bnQsIG1fZGVsdGFYLCBtX2RlbHRhWSwgY29udGludW91cyk7CiAgICAgICAgIGlmIChjb250aW51
b3VzKSB7CiAgICAgICAgICAgICBtX3doZWVsVGlja3NYID0gbV9kZWx0YVggLyBzdGF0aWNfY2Fz
dDxmbG9hdD4oU2Nyb2xsYmFyOjpwaXhlbHNQZXJMaW5lU3RlcCgpKTsKICAgICAgICAgICAgIG1f
d2hlZWxUaWNrc1kgPSBtX2RlbHRhWSAvIHN0YXRpY19jYXN0PGZsb2F0PihTY3JvbGxiYXI6OnBp
eGVsc1BlckxpbmVTdGVwKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWFjL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21h
Yy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlLmgKaW5kZXggOTNjZGZkMGM3YWIxZTk2ODAxMDZjYTY0
ODU0NDg1NjZiNzQ0NGU0Ni4uOGExMjQ4MjdjMDQwOWQ2NjNmNzgxZGYyN2I0ZTQzYmNmYWZiZDIy
NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVTeXN0ZW1J
bnRlcmZhY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViQ29yZVN5c3Rl
bUludGVyZmFjZS5oCkBAIC0xMzksNyArMTM5LDYgQEAgZXh0ZXJuIHZvaWQgKCp3a0RyYXdNZWRp
YVNsaWRlclRyYWNrKShDR0NvbnRleHRSZWYgY29udGV4dCwgQ0dSZWN0IHJlY3QsIGZsb2F0IHQK
IGV4dGVybiB2b2lkICgqd2tEcmF3TWVkaWFVSVBhcnQpKGludCBwYXJ0LCBDR0NvbnRleHRSZWYg
Y29udGV4dCwgQ0dSZWN0IHJlY3QsIHVuc2lnbmVkIHN0YXRlKTsKIGV4dGVybiBkb3VibGUgKCp3
a0dldE5TVVJMUmVzcG9uc2VDYWxjdWxhdGVkRXhwaXJhdGlvbikoTlNVUkxSZXNwb25zZSAqcmVz
cG9uc2UpOwogZXh0ZXJuIEJPT0wgKCp3a0dldE5TVVJMUmVzcG9uc2VNdXN0UmV2YWxpZGF0ZSko
TlNVUkxSZXNwb25zZSAqcmVzcG9uc2UpOwotZXh0ZXJuIHZvaWQgKCp3a0dldFdoZWVsRXZlbnRE
ZWx0YXMpKE5TRXZlbnQqLCBmbG9hdCogZGVsdGFYLCBmbG9hdCogZGVsdGFZLCBCT09MKiBjb250
aW51b3VzKTsKIGV4dGVybiBVSW50OCAoKndrR2V0TlNFdmVudEtleUNoYXIpKE5TRXZlbnQgKik7
CiBleHRlcm4gQk9PTCAoKndrSGl0VGVzdE1lZGlhVUlQYXJ0KShpbnQgcGFydCwgQ0dSZWN0IGJv
dW5kcywgQ0dQb2ludCBwb2ludCk7CiBleHRlcm4gdm9pZCAoKndrTWVhc3VyZU1lZGlhVUlQYXJ0
KShpbnQgcGFydCwgQ0dSZWN0ICpib3VuZHMsIENHU2l6ZSAqbmF0dXJhbFNpemUpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2Uu
bW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViQ29yZVN5c3RlbUludGVyZmFjZS5t
bQppbmRleCA2NDlkN2E2N2NkNjc2NTRhMmEzZTM5NGU5MzVmOGM1MjZmYTM5MjVhLi4yNzJiNTU1
N2UyMzlmM2MxZTFkNDVhOTRmYjdiMWU0NTM0NjE3ZGYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9tYWMvV2ViQ29yZVN5c3RlbUludGVyZmFjZS5tbQorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViQ29yZVN5c3RlbUludGVyZmFjZS5tbQpAQCAtNDgsNyAr
NDgsNiBAQCB2b2lkICgqd2tXaW5kb3dTZXRBbHBoYSkoTlNXaW5kb3cgKiwgZmxvYXQpOwogdm9p
ZCAoKndrV2luZG93U2V0U2NhbGVkRnJhbWUpKE5TV2luZG93ICosIE5TUmVjdCwgTlNSZWN0KTsK
IE5TVGltZUludGVydmFsICgqd2tHZXROU1VSTFJlc3BvbnNlQ2FsY3VsYXRlZEV4cGlyYXRpb24p
KE5TVVJMUmVzcG9uc2UgKnJlc3BvbnNlKTsKIEJPT0wgKCp3a0dldE5TVVJMUmVzcG9uc2VNdXN0
UmV2YWxpZGF0ZSkoTlNVUkxSZXNwb25zZSAqcmVzcG9uc2UpOwotdm9pZCAoKndrR2V0V2hlZWxF
dmVudERlbHRhcykoTlNFdmVudCosIGZsb2F0KiBkZWx0YVgsIGZsb2F0KiBkZWx0YVksIEJPT0wq
IGNvbnRpbnVvdXMpOwogVUludDggKCp3a0dldE5TRXZlbnRLZXlDaGFyKShOU0V2ZW50ICopOwog
dm9pZCAoKndrUG9wdXBNZW51KShOU01lbnUqLCBOU1BvaW50IGxvY2F0aW9uLCBmbG9hdCB3aWR0
aCwgTlNWaWV3KiwgaW50IHNlbGVjdGVkSXRlbSwgTlNGb250KiwgTlNDb250cm9sU2l6ZSBjb250
cm9sU2l6ZSwgYm9vbCB1c2VzQ3VzdG9tQXBwZWFyYW5jZSk7CiB1bnNpZ25lZCAoKndrUVRJbmNs
dWRlT25seU1vZGVybk1lZGlhRmlsZVR5cGVzKSh2b2lkKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvUGx1Z2luUHJvY2Vzcy9tYWMvUGx1Z2luUHJvY2Vzc01hYy5tbSBiL1NvdXJjZS9XZWJL
aXQvUGx1Z2luUHJvY2Vzcy9tYWMvUGx1Z2luUHJvY2Vzc01hYy5tbQppbmRleCBkZDUzMzcwMjQ3
ZjBhNmI3NGEwMWJmY2M4YWE5NmZhNmZmZjM0NDE4Li5kODYwMzc4NjdhMmYxYWZhMjVlYzUyNjMw
NmUxNGQ5NjRjZDc3ZTZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1BsdWdpblByb2Nlc3Mv
bWFjL1BsdWdpblByb2Nlc3NNYWMubW0KKysrIGIvU291cmNlL1dlYktpdC9QbHVnaW5Qcm9jZXNz
L21hYy9QbHVnaW5Qcm9jZXNzTWFjLm1tCkBAIC00Nyw2ICs0Nyw3IEBACiAjaW1wb3J0IDxtYWNo
L3ZtX3N0YXRpc3RpY3MuaD4KICNpbXBvcnQgPG9iamMvcnVudGltZS5oPgogI2ltcG9ydCA8cGFs
L3NwaS9tYWMvSElUb29sYm94U1BJLmg+CisjaW1wb3J0IDxwYWwvc3BpL21hYy9OU1dpbmRvd1NQ
SS5oPgogI2ltcG9ydCA8c3lzZXhpdHMuaD4KICNpbXBvcnQgPHd0Zi9IYXNoU2V0Lmg+CiAjaW1w
b3J0IDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQ0MSwxMiArNDQyLDEyIEBAIHN0YXRpYyB2
b2lkIGluaXRpYWxpemVDb2NvYU92ZXJyaWRlcygpCiAgICAgTlNOb3RpZmljYXRpb25DZW50ZXIg
KmRlZmF1bHRDZW50ZXIgPSBbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl07CiAK
ICAgICAvLyBUcmFjayB3aGVuIGFueSBDb2NvYSB3aW5kb3cgaXMgYWJvdXQgdG8gYmUgYmUgc2hv
d24uCi0gICAgaWQgb3JkZXJPblNjcmVlbk9ic2VydmVyID0gW2RlZmF1bHRDZW50ZXIgYWRkT2Jz
ZXJ2ZXJGb3JOYW1lOldLV2luZG93V2lsbE9yZGVyT25TY3JlZW5Ob3RpZmljYXRpb24oKQorICAg
IGlkIG9yZGVyT25TY3JlZW5PYnNlcnZlciA9IFtkZWZhdWx0Q2VudGVyIGFkZE9ic2VydmVyRm9y
TmFtZTpOU1dpbmRvd1dpbGxPcmRlck9uU2NyZWVuTm90aWZpY2F0aW9uCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2JqZWN0Om5pbAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBxdWV1ZTpuaWwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgdXNpbmdCbG9jazpeKE5TTm90aWZpY2F0aW9uICpub3RpZmljYXRpb24p
IHsgZnVsbHNjcmVlbldpbmRvd1RyYWNrZXIoKS53aW5kb3dTaG93bihbbm90aWZpY2F0aW9uIG9i
amVjdF0pOyB9XTsKICAgICAvLyBUcmFjayB3aGVuIGFueSBDb2NvYSB3aW5kb3cgaXMgYWJvdXQg
dG8gYmUgaGlkZGVuLgotICAgIGlkIG9yZGVyT2ZmU2NyZWVuT2JzZXJ2ZXIgPSBbZGVmYXVsdENl
bnRlciBhZGRPYnNlcnZlckZvck5hbWU6V0tXaW5kb3dXaWxsT3JkZXJPZmZTY3JlZW5Ob3RpZmlj
YXRpb24oKQorICAgIGlkIG9yZGVyT2ZmU2NyZWVuT2JzZXJ2ZXIgPSBbZGVmYXVsdENlbnRlciBh
ZGRPYnNlcnZlckZvck5hbWU6TlNXaW5kb3dXaWxsT3JkZXJPZmZTY3JlZW5Ob3RpZmljYXRpb24K
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgb2JqZWN0Om5pbAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgcXVldWU6bmlsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNpbmdCbG9jazpeKE5TTm90aWZpY2F0aW9uICpu
b3RpZmljYXRpb24pIHsgZnVsbHNjcmVlbldpbmRvd1RyYWNrZXIoKS53aW5kb3dIaWRkZW4oW25v
dGlmaWNhdGlvbiBvYmplY3RdKTsgfV07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJl
ZC9tYWMvV2ViRXZlbnRGYWN0b3J5Lm1tIGIvU291cmNlL1dlYktpdC9TaGFyZWQvbWFjL1dlYkV2
ZW50RmFjdG9yeS5tbQppbmRleCA3N2FhYzUzZGNjYmZhMGY5YWQyYjg4MTUxYzM1OTNlN2I2MjJh
Y2M2Li4wZGIzYmU4YzY0NzRjNzYzMjk4NWZlM2VhMjIxNWI0OGM2YWZjMDViIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9tYWMvV2ViRXZlbnRGYWN0b3J5Lm1tCisrKyBiL1NvdXJj
ZS9XZWJLaXQvU2hhcmVkL21hYy9XZWJFdmVudEZhY3RvcnkubW0KQEAgLTM4NSw3ICszODUsNyBA
QCBXZWJXaGVlbEV2ZW50IFdlYkV2ZW50RmFjdG9yeTo6Y3JlYXRlV2ViV2hlZWxFdmVudChOU0V2
ZW50ICpldmVudCwgTlNWaWV3ICp3aW5kbwogICAgIGZsb2F0IHdoZWVsVGlja3NYID0gMDsKICAg
ICBmbG9hdCB3aGVlbFRpY2tzWSA9IDA7CiAKLSAgICBXS0dldFdoZWVsRXZlbnREZWx0YXMoZXZl
bnQsICZkZWx0YVgsICZkZWx0YVksICZjb250aW51b3VzKTsKKyAgICBnZXRXaGVlbEV2ZW50RGVs
dGFzKGV2ZW50LCBkZWx0YVgsIGRlbHRhWSwgY29udGludW91cyk7CiAgICAgCiAgICAgaWYgKGNv
bnRpbnVvdXMpIHsKICAgICAgICAgLy8gc21vb3RoIHNjcm9sbCBldmVudHMKQEAgLTQzMyw3ICs0
MzMsNyBAQCBXZWJLZXlib2FyZEV2ZW50IFdlYkV2ZW50RmFjdG9yeTo6Y3JlYXRlV2ViS2V5Ym9h
cmRFdmVudChOU0V2ZW50ICpldmVudCwgYm9vbCBoYQogICAgIFN0cmluZyBrZXlJZGVudGlmaWVy
ICAgICAgICAgICAgPSBrZXlJZGVudGlmaWVyRm9yS2V5RXZlbnQoZXZlbnQpOwogICAgIGludCB3
aW5kb3dzVmlydHVhbEtleUNvZGUgICAgICAgPSB3aW5kb3dzS2V5Q29kZUZvcktleUV2ZW50KGV2
ZW50KTsKICAgICBpbnQgbmF0aXZlVmlydHVhbEtleUNvZGUgICAgICAgID0gW2V2ZW50IGtleUNv
ZGVdOwotICAgIGludCBtYWNDaGFyQ29kZSAgICAgICAgICAgICAgICAgPSBXS0dldE5TRXZlbnRL
ZXlDaGFyKGV2ZW50KTsKKyAgICBpbnQgbWFjQ2hhckNvZGUgICAgICAgICAgICAgICAgID0ga2V5
Q2hhckZvckV2ZW50KGV2ZW50KTsKICAgICBib29sIGF1dG9SZXBlYXQgICAgICAgICAgICAgICAg
ID0gW2V2ZW50IHR5cGVdICE9IE5TRXZlbnRUeXBlRmxhZ3NDaGFuZ2VkICYmIFtldmVudCBpc0FS
ZXBlYXRdOwogICAgIGJvb2wgaXNLZXlwYWQgICAgICAgICAgICAgICAgICAgPSBpc0tleXBhZEV2
ZW50KGV2ZW50KTsKICAgICBib29sIGlzU3lzdGVtS2V5ICAgICAgICAgICAgICAgID0gZmFsc2U7
IC8vIFN5c3RlbUtleSBpcyBhbHdheXMgZmFsc2Ugb24gdGhlIE1hYy4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL21hYy9XS1RleHRJbnB1dFdpbmRvd0NvbnRyb2xsZXIubW0g
Yi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMvV0tUZXh0SW5wdXRXaW5kb3dDb250cm9sbGVy
Lm1tCmluZGV4IDEyYTE1MWUzMWJhNzg2MjJhZmM0N2VlOTUzMGJkODYyMWFjZDk4MGMuLmI0ODg1
NjBiMDdmMDllNzk3YzhlZjkyZGNhYzA4ZGIzZTQ5YjExN2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL21hYy9XS1RleHRJbnB1dFdpbmRvd0NvbnRyb2xsZXIubW0KKysrIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvbWFjL1dLVGV4dElucHV0V2luZG93Q29udHJvbGxlci5t
bQpAQCAtMjksNiArMjksNyBAQAogI2lmIFVTRShBUFBLSVQpCiAKICNpbXBvcnQgPFdlYktpdFN5
c3RlbUludGVyZmFjZS5oPgorI2ltcG9ydCA8cGFsL3N5c3RlbS9tYWMvV2ViUGFuZWwuaD4KIAog
QGludGVyZmFjZSBXS1RleHRJbnB1dFZpZXcgOiBOU1RleHRWaWV3IHsKIH0KQEAgLTQ3LDcgKzQ4
LDcgQEAgLSAoTlNBcnJheSAqKXZhbGlkQXR0cmlidXRlc0Zvck1hcmtlZFRleHQKIAogQGVuZAog
Ci1AaW50ZXJmYWNlIFdLVGV4dElucHV0UGFuZWwgOiBOU1BhbmVsIHsKK0BpbnRlcmZhY2UgV0tU
ZXh0SW5wdXRQYW5lbCA6IFdlYlBhbmVsIHsKICAgICBOU1RleHRWaWV3ICpfaW5wdXRUZXh0Vmll
dzsKIH0KIApAQCAtNzQsNyArNzUsNyBAQCAtICh2b2lkKWRlYWxsb2MKIAogLSAoaWQpaW5pdAog
ewotICAgIHNlbGYgPSBbc3VwZXIgaW5pdFdpdGhDb250ZW50UmVjdDpOU1plcm9SZWN0IHN0eWxl
TWFzazpXS0dldElucHV0UGFuZWxXaW5kb3dTdHlsZSgpIGJhY2tpbmc6TlNCYWNraW5nU3RvcmVC
dWZmZXJlZCBkZWZlcjpZRVNdOworICAgIHNlbGYgPSBbc3VwZXIgaW5pdF07CiAgICAgaWYgKCFz
ZWxmKQogICAgICAgICByZXR1cm4gbmlsOwogICAgIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L21hYy9XZWJTeXN0ZW1JbnRlcmZhY2UubW0gYi9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvbWFjL1dlYlN5c3RlbUludGVy
ZmFjZS5tbQppbmRleCA0NGRjN2VjYjM2MjBlOGY0NTE0MmViMzdjNzg3NWFkY2IzYjk0MTJiLi5k
MThhNDQwZGQ3MjUzOWM2YTU2OTRiNzQ2N2Y4YTY5MTg4NTFkOTllIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvbWFjL1dlYlN5c3RlbUludGVyZmFj
ZS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvbWFjL1dl
YlN5c3RlbUludGVyZmFjZS5tbQpAQCAtNTIsNyArNTIsNiBAQCB2b2lkIEluaXRXZWJDb3JlU3lz
dGVtSW50ZXJmYWNlKHZvaWQpCiAjZW5kaWYKICAgICAgICAgSU5JVChDR0NvbnRleHRJc1BERkNv
bnRleHQpOwogI2lmICFQTEFURk9STShJT1MpCi0gICAgICAgIElOSVQoR2V0V2hlZWxFdmVudERl
bHRhcyk7CiAgICAgICAgIElOSVQoR2V0TlNFdmVudEtleUNoYXIpOwogICAgICAgICBJTklUKEhp
dFRlc3RNZWRpYVVJUGFydCk7CiAgICAgICAgIElOSVQoTWVhc3VyZU1lZGlhVUlQYXJ0KTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMvSG9zdGVkL05ldHNjYXBl
UGx1Z2luSW5zdGFuY2VQcm94eS5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMv
SG9zdGVkL05ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eS5tbQppbmRleCBhZTQxYmMxNmMzM2Q2
OTY0Zjc0Yzc2ZmEyNDJmYjg5MmExNDkxZmQ1Li4wMTdmYTllNmI5OWIxYTQ4YTliMzNiYTcxMzY4
MzdkNWZhNDYzN2JiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5z
L0hvc3RlZC9OZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJveHkubW0KKysrIGIvU291cmNlL1dlYktp
dExlZ2FjeS9tYWMvUGx1Z2lucy9Ib3N0ZWQvTmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5Lm1t
CkBAIC01NCwxMCArNTQsMTEgQEAKICNpbXBvcnQgPFdlYkNvcmUvRnJhbWUuaD4KICNpbXBvcnQg
PFdlYkNvcmUvRnJhbWVMb2FkZXIuaD4KICNpbXBvcnQgPFdlYkNvcmUvRnJhbWVUcmVlLmg+Ci0j
aW1wb3J0IDxXZWJDb3JlL1VSTC5oPgorI2ltcG9ydCA8V2ViQ29yZS9QbGF0Zm9ybUV2ZW50RmFj
dG9yeU1hYy5oPgogI2ltcG9ydCA8V2ViQ29yZS9Qcm94eVNlcnZlci5oPgogI2ltcG9ydCA8V2Vi
Q29yZS9TZWN1cml0eU9yaWdpbi5oPgogI2ltcG9ydCA8V2ViQ29yZS9TY3JpcHRDb250cm9sbGVy
Lmg+CisjaW1wb3J0IDxXZWJDb3JlL1VSTC5oPgogI2ltcG9ydCA8V2ViQ29yZS9Vc2VyR2VzdHVy
ZUluZGljYXRvci5oPgogI2ltcG9ydCA8V2ViQ29yZS9ucHJ1bnRpbWVfaW1wbC5oPgogI2ltcG9y
dCA8V2ViQ29yZS9ydW50aW1lX29iamVjdC5oPgpAQCAtNDU5LDcgKzQ2MCw3IEBAIHZvaWQgTmV0
c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5OjprZXlFdmVudChOU1ZpZXcgKnBsdWdpblZpZXcsIE5T
RXZlbnQgKmV2ZW50LCBOCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlw
ZSwgW2V2ZW50IG1vZGlmaWVyRmxhZ3NdLCAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBjb25zdF9jYXN0PGNoYXIqPihyZWludGVycHJldF9jYXN0PGNvbnN0IGNoYXIqPihb
Y2hhcmFjdGVyc0RhdGEgYnl0ZXNdKSksIFtjaGFyYWN0ZXJzRGF0YSBsZW5ndGhdLCAKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdF9jYXN0PGNoYXIqPihyZWludGVy
cHJldF9jYXN0PGNvbnN0IGNoYXIqPihbY2hhcmFjdGVyc0lnbm9yaW5nTW9kaWZpZXJzRGF0YSBi
eXRlc10pKSwgW2NoYXJhY3RlcnNJZ25vcmluZ01vZGlmaWVyc0RhdGEgbGVuZ3RoXSwgCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2V2ZW50IGlzQVJlcGVhdF0sIFtldmVu
dCBrZXlDb2RlXSwgV0tHZXROU0V2ZW50S2V5Q2hhcihldmVudCkpOworICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFtldmVudCBpc0FSZXBlYXRdLCBbZXZlbnQga2V5Q29kZV0s
IGtleUNoYXJGb3JFdmVudChldmVudCkpOwogfQogCiB2b2lkIE5ldHNjYXBlUGx1Z2luSW5zdGFu
Y2VQcm94eTo6c3ludGhldGljS2V5RG93bldpdGhDb21tYW5kTW9kaWZpZXIoaW50IGtleUNvZGUs
IGNoYXIgY2hhcmFjdGVyKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1
Z2lucy9Ib3N0ZWQvV2ViVGV4dElucHV0V2luZG93Q29udHJvbGxlci5tIGIvU291cmNlL1dlYktp
dExlZ2FjeS9tYWMvUGx1Z2lucy9Ib3N0ZWQvV2ViVGV4dElucHV0V2luZG93Q29udHJvbGxlci5t
CmluZGV4IDAwNDAyOTNiNjJkYjNiOGZiNDJjZDVkMzY4NTQ2ZjVjNDlhOWE4ZjQuLjA4YTcxMTUx
ZTY5ZGEzMTc1YTFiZDZmNWIyNzY5OWM3N2M4ODdmOWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXRMZWdhY3kvbWFjL1BsdWdpbnMvSG9zdGVkL1dlYlRleHRJbnB1dFdpbmRvd0NvbnRyb2xsZXIu
bQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL0hvc3RlZC9XZWJUZXh0SW5w
dXRXaW5kb3dDb250cm9sbGVyLm0KQEAgLTI4LDYgKzI4LDcgQEAKICNpbXBvcnQgIldlYlRleHRJ
bnB1dFdpbmRvd0NvbnRyb2xsZXIuaCIKIAogI2ltcG9ydCA8V2ViS2l0U3lzdGVtSW50ZXJmYWNl
Lmg+CisjaW1wb3J0IDxwYWwvc3lzdGVtL21hYy9XZWJQYW5lbC5oPgogCiBAaW50ZXJmYWNlIFdl
YlRleHRJbnB1dFZpZXcgOiBOU1RleHRWaWV3IHsKIH0KQEAgLTQ2LDcgKzQ3LDcgQEAgLSAoTlNB
cnJheSAqKXZhbGlkQXR0cmlidXRlc0Zvck1hcmtlZFRleHQKIAogQGVuZAogCi1AaW50ZXJmYWNl
IFdlYlRleHRJbnB1dFBhbmVsIDogTlNQYW5lbCB7CitAaW50ZXJmYWNlIFdlYlRleHRJbnB1dFBh
bmVsIDogV2ViUGFuZWwgewogICAgIE5TVGV4dFZpZXcgKl9pbnB1dFRleHRWaWV3OwogfQogCkBA
IC03MCw3ICs3MSw3IEBAIC0gKHZvaWQpZGVhbGxvYwogCiAtIChpZClpbml0CiB7Ci0gICAgc2Vs
ZiA9IFtzdXBlciBpbml0V2l0aENvbnRlbnRSZWN0Ok5TWmVyb1JlY3Qgc3R5bGVNYXNrOldLR2V0
SW5wdXRQYW5lbFdpbmRvd1N0eWxlKCkgYmFja2luZzpOU0JhY2tpbmdTdG9yZUJ1ZmZlcmVkIGRl
ZmVyOllFU107CisgICAgc2VsZiA9IFtzdXBlciBpbml0XTsKICAgICBpZiAoIXNlbGYpCiAgICAg
ICAgIHJldHVybiBuaWw7CiAgICAgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21h
Yy9XZWJDb3JlU3VwcG9ydC9XZWJTeXN0ZW1JbnRlcmZhY2UubW0gYi9Tb3VyY2UvV2ViS2l0TGVn
YWN5L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJTeXN0ZW1JbnRlcmZhY2UubW0KaW5kZXggZDQ1NTE2
ZjVlZWUxYzA4MmM5ODI4ZDllNzQ3NGVjOTY4OWM0N2I1OC4uNmRkMGI1N2RkNGJmMzQzZmU5NjZm
MGZiYTYzYzExY2Y0ZjA4ZDkzMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMv
V2ViQ29yZVN1cHBvcnQvV2ViU3lzdGVtSW50ZXJmYWNlLm1tCisrKyBiL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYlN5c3RlbUludGVyZmFjZS5tbQpAQCAtNTUsNyAr
NTUsNiBAQCB2b2lkIEluaXRXZWJDb3JlU3lzdGVtSW50ZXJmYWNlKHZvaWQpCiAgICAgSU5JVChE
cmF3Q2VsbEZvY3VzUmluZ1dpdGhGcmFtZUF0VGltZSk7CiAgICAgSU5JVChEcmF3TWVkaWFVSVBh
cnQpOwogICAgIElOSVQoRHJhd01lZGlhU2xpZGVyVHJhY2spOwotICAgIElOSVQoR2V0V2hlZWxF
dmVudERlbHRhcyk7CiAgICAgSU5JVChHZXROU0V2ZW50S2V5Q2hhcik7CiAgICAgSU5JVChIaXRU
ZXN0TWVkaWFVSVBhcnQpOwogICAgIElOSVQoTWVhc3VyZU1lZGlhVUlQYXJ0KTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViRHluYW1pY1Njcm9sbEJhcnNW
aWV3Lm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJEeW5hbWljU2Nyb2xs
QmFyc1ZpZXcubW0KaW5kZXggNjgwNGUyNzY1MjkyMTY3MTAzYzc1ZDNmMjk3ZTc0Y2VhMzIyNTY0
MC4uYmIyMGRlNTUwYmFiZjAyMTAyYjBjNDIzM2E3ZDU3Y2IwZTcyYTVmNiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJEeW5hbWljU2Nyb2xsQmFyc1ZpZXcu
bW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJEeW5hbWljU2Nyb2xs
QmFyc1ZpZXcubW0KQEAgLTMxLDYgKzMxLDcgQEAKICNpbXBvcnQgIldlYkhUTUxWaWV3SW50ZXJu
YWwuaCIKICNpbXBvcnQgPFdlYkNvcmUvRnJhbWUuaD4KICNpbXBvcnQgPFdlYkNvcmUvRnJhbWVW
aWV3Lmg+CisjaW1wb3J0IDxXZWJDb3JlL1BsYXRmb3JtRXZlbnRGYWN0b3J5TWFjLmg+CiAjaW1w
b3J0IDxXZWJLaXRTeXN0ZW1JbnRlcmZhY2UuaD4KIAogdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7
CkBAIC01MzUsNyArNTM2LDcgQEAgLSAodm9pZClzY3JvbGxXaGVlbDooTlNFdmVudCAqKWV2ZW50
CiAgICAgZmxvYXQgZGVsdGFYOwogICAgIGZsb2F0IGRlbHRhWTsKICAgICBCT09MIGlzQ29udGlu
dW91czsKLSAgICBXS0dldFdoZWVsRXZlbnREZWx0YXMoZXZlbnQsICZkZWx0YVgsICZkZWx0YVks
ICZpc0NvbnRpbnVvdXMpOworICAgIGdldFdoZWVsRXZlbnREZWx0YXMoZXZlbnQsIGRlbHRhWCwg
ZGVsdGFZLCBpc0NvbnRpbnVvdXMpOwogCiAgICAgTlNFdmVudFBoYXNlIG1vbWVudHVtUGhhc2Ug
PSBbZXZlbnQgbW9tZW50dW1QaGFzZV07CiAgICAgQk9PTCBpc0xhdGNoaW5nRXZlbnQgPSBtb21l
bnR1bVBoYXNlICYgTlNFdmVudFBoYXNlQmVnYW4gfHwgbW9tZW50dW1QaGFzZSAmIE5TRXZlbnRQ
aGFzZVN0YXRpb25hcnk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJW
aWV3L1dlYkhUTUxWaWV3Lm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJI
VE1MVmlldy5tbQppbmRleCA4ZmM3ZjYzYzVkYzRlMWVjZDc4NDFlNWY0Y2RhNzQ2YjQ5YzJlNTg4
Li44ZDBkNGQ5MjU0ODBjYjgzYzIwYWU4MTQ1NTQ1NDIzMDA3NGE2OGRiIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkhUTUxWaWV3Lm1tCisrKyBiL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViSFRNTFZpZXcubW0KQEAgLTEzMiw2ICsxMzIs
NyBAQAogI2ltcG9ydCA8cGFsL3NwaS9jb2NvYS9OU1VSTEZpbGVUeXBlTWFwcGluZ3NTUEkuaD4K
ICNpbXBvcnQgPHBhbC9zcGkvbWFjL05TU3BlbGxDaGVja2VyU1BJLmg+CiAjaW1wb3J0IDxwYWwv
c3BpL21hYy9OU1ZpZXdTUEkuaD4KKyNpbXBvcnQgPHBhbC9zcGkvbWFjL05TV2luZG93U1BJLmg+
CiAjaW1wb3J0IDxydW50aW1lL0luaXRpYWxpemVUaHJlYWRpbmcuaD4KICNpbXBvcnQgPHd0Zi9C
bG9ja09iakNFeGNlcHRpb25zLmg+CiAjaW1wb3J0IDx3dGYvTWFpblRocmVhZC5oPgpAQCAtMTQw
OSw4ICsxNDEwLDggQEAgLSAodm9pZClfcmVtb3ZlV2luZG93T2JzZXJ2ZXJzCiAgICAgTlNOb3Rp
ZmljYXRpb25DZW50ZXIgKm5vdGlmaWNhdGlvbkNlbnRlciA9IFtOU05vdGlmaWNhdGlvbkNlbnRl
ciBkZWZhdWx0Q2VudGVyXTsKICAgICBbbm90aWZpY2F0aW9uQ2VudGVyIHJlbW92ZU9ic2VydmVy
OnNlbGYgbmFtZTpOU1dpbmRvd0RpZEJlY29tZUtleU5vdGlmaWNhdGlvbiBvYmplY3Q6bmlsXTsK
ICAgICBbbm90aWZpY2F0aW9uQ2VudGVyIHJlbW92ZU9ic2VydmVyOnNlbGYgbmFtZTpOU1dpbmRv
d0RpZFJlc2lnbktleU5vdGlmaWNhdGlvbiBvYmplY3Q6bmlsXTsKLSAgICBbbm90aWZpY2F0aW9u
Q2VudGVyIHJlbW92ZU9ic2VydmVyOnNlbGYgbmFtZTpXS1dpbmRvd1dpbGxPcmRlck9uU2NyZWVu
Tm90aWZpY2F0aW9uKCkgb2JqZWN0OndpbmRvd107Ci0gICAgW25vdGlmaWNhdGlvbkNlbnRlciBy
ZW1vdmVPYnNlcnZlcjpzZWxmIG5hbWU6V0tXaW5kb3dXaWxsT3JkZXJPZmZTY3JlZW5Ob3RpZmlj
YXRpb24oKSBvYmplY3Q6d2luZG93XTsKKyAgICBbbm90aWZpY2F0aW9uQ2VudGVyIHJlbW92ZU9i
c2VydmVyOnNlbGYgbmFtZTpOU1dpbmRvd1dpbGxPcmRlck9uU2NyZWVuTm90aWZpY2F0aW9uIG9i
amVjdDp3aW5kb3ddOworICAgIFtub3RpZmljYXRpb25DZW50ZXIgcmVtb3ZlT2JzZXJ2ZXI6c2Vs
ZiBuYW1lOk5TV2luZG93V2lsbE9yZGVyT2ZmU2NyZWVuTm90aWZpY2F0aW9uIG9iamVjdDp3aW5k
b3ddOwogICAgIFtub3RpZmljYXRpb25DZW50ZXIgcmVtb3ZlT2JzZXJ2ZXI6c2VsZiBuYW1lOk5T
V2luZG93V2lsbENsb3NlTm90aWZpY2F0aW9uIG9iamVjdDp3aW5kb3ddOwogICAgIAogICAgIF9w
cml2YXRlLT5vYnNlcnZpbmdXaW5kb3dOb3RpZmljYXRpb25zID0gZmFsc2U7CkBAIC0zNDQ5LDgg
KzM0NTAsOCBAQCAtICh2b2lkKWFkZFdpbmRvd09ic2VydmVycwogICAgIE5TTm90aWZpY2F0aW9u
Q2VudGVyICpub3RpZmljYXRpb25DZW50ZXIgPSBbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVs
dENlbnRlcl07CiAgICAgW25vdGlmaWNhdGlvbkNlbnRlciBhZGRPYnNlcnZlcjpzZWxmIHNlbGVj
dG9yOkBzZWxlY3Rvcih3aW5kb3dEaWRCZWNvbWVLZXk6KSBuYW1lOk5TV2luZG93RGlkQmVjb21l
S2V5Tm90aWZpY2F0aW9uIG9iamVjdDpuaWxdOwogICAgIFtub3RpZmljYXRpb25DZW50ZXIgYWRk
T2JzZXJ2ZXI6c2VsZiBzZWxlY3RvcjpAc2VsZWN0b3Iod2luZG93RGlkUmVzaWduS2V5OikgbmFt
ZTpOU1dpbmRvd0RpZFJlc2lnbktleU5vdGlmaWNhdGlvbiBvYmplY3Q6bmlsXTsKLSAgICBbbm90
aWZpY2F0aW9uQ2VudGVyIGFkZE9ic2VydmVyOnNlbGYgc2VsZWN0b3I6QHNlbGVjdG9yKHdpbmRv
d1dpbGxPcmRlck9uU2NyZWVuOikgbmFtZTpXS1dpbmRvd1dpbGxPcmRlck9uU2NyZWVuTm90aWZp
Y2F0aW9uKCkgb2JqZWN0OndpbmRvd107Ci0gICAgW25vdGlmaWNhdGlvbkNlbnRlciBhZGRPYnNl
cnZlcjpzZWxmIHNlbGVjdG9yOkBzZWxlY3Rvcih3aW5kb3dXaWxsT3JkZXJPZmZTY3JlZW46KSBu
YW1lOldLV2luZG93V2lsbE9yZGVyT2ZmU2NyZWVuTm90aWZpY2F0aW9uKCkgb2JqZWN0OndpbmRv
d107CisgICAgW25vdGlmaWNhdGlvbkNlbnRlciBhZGRPYnNlcnZlcjpzZWxmIHNlbGVjdG9yOkBz
ZWxlY3Rvcih3aW5kb3dXaWxsT3JkZXJPblNjcmVlbjopIG5hbWU6TlNXaW5kb3dXaWxsT3JkZXJP
blNjcmVlbk5vdGlmaWNhdGlvbiBvYmplY3Q6d2luZG93XTsKKyAgICBbbm90aWZpY2F0aW9uQ2Vu
dGVyIGFkZE9ic2VydmVyOnNlbGYgc2VsZWN0b3I6QHNlbGVjdG9yKHdpbmRvd1dpbGxPcmRlck9m
ZlNjcmVlbjopIG5hbWU6TlNXaW5kb3dXaWxsT3JkZXJPZmZTY3JlZW5Ob3RpZmljYXRpb24gb2Jq
ZWN0OndpbmRvd107CiAgICAgW25vdGlmaWNhdGlvbkNlbnRlciBhZGRPYnNlcnZlcjpzZWxmIHNl
bGVjdG9yOkBzZWxlY3Rvcih3aW5kb3dXaWxsQ2xvc2U6KSBuYW1lOk5TV2luZG93V2lsbENsb3Nl
Tm90aWZpY2F0aW9uIG9iamVjdDp3aW5kb3ddOwogICAgIAogICAgIF9wcml2YXRlLT5vYnNlcnZp
bmdXaW5kb3dOb3RpZmljYXRpb25zID0gdHJ1ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlldy5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dl
YlZpZXcvV2ViVmlldy5tbQppbmRleCA0NzhjMjFjYTYxODkyODcwMzI2YWI4YjdlZmUyMzIxYzc5
ZDhhNTU1Li5mZTE5MDVhNWRhNzc1NTQzODZkOGY5MThiZDk2M2ZlMGQwNWNjNjJmIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXcubW0KKysrIGIvU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCkBAIC0yMTEsNyArMjExLDkg
QEAKICNpbXBvcnQgPHBhbC9zcGkvY2YvQ0ZOZXR3b3JrU1BJLmg+CiAjaW1wb3J0IDxwYWwvc3Bp
L2NvY29hL05TVG91Y2hCYXJTUEkuaD4KICNpbXBvcnQgPHBhbC9zcGkvY29jb2EvTlNVUkxGaWxl
VHlwZU1hcHBpbmdzU1BJLmg+CisjaW1wb3J0IDxwYWwvc3BpL21hYy9OU1Jlc3BvbmRlclNQSS5o
PgogI2ltcG9ydCA8cGFsL3NwaS9tYWMvTlNTcGVsbENoZWNrZXJTUEkuaD4KKyNpbXBvcnQgPHBh
bC9zcGkvbWFjL05TV2luZG93U1BJLmg+CiAjaW1wb3J0IDxydW50aW1lL0FycmF5UHJvdG90eXBl
Lmg+CiAjaW1wb3J0IDxydW50aW1lL0NhdGNoU2NvcGUuaD4KICNpbXBvcnQgPHJ1bnRpbWUvRGF0
ZUluc3RhbmNlLmg+CkBAIC01ODY2LDkgKzU4NjgsOSBAQCAtICh2b2lkKWFkZFdpbmRvd09ic2Vy
dmVyc0ZvcldpbmRvdzooTlNXaW5kb3cgKil3aW5kb3cKICAgICAgICAgW1tOU05vdGlmaWNhdGlv
bkNlbnRlciBkZWZhdWx0Q2VudGVyXSBhZGRPYnNlcnZlcjpzZWxmIHNlbGVjdG9yOkBzZWxlY3Rv
cih3aW5kb3dLZXlTdGF0ZUNoYW5nZWQ6KQogICAgICAgICAgICAgbmFtZTpOU1dpbmRvd0RpZFJl
c2lnbktleU5vdGlmaWNhdGlvbiBvYmplY3Q6d2luZG93XTsKICAgICAgICAgW1tOU05vdGlmaWNh
dGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSBhZGRPYnNlcnZlcjpzZWxmIHNlbGVjdG9yOkBzZWxl
Y3Rvcihfd2luZG93V2lsbE9yZGVyT25TY3JlZW46KQotICAgICAgICAgICAgbmFtZTpXS1dpbmRv
d1dpbGxPcmRlck9uU2NyZWVuTm90aWZpY2F0aW9uKCkgb2JqZWN0OndpbmRvd107CisgICAgICAg
ICAgICBuYW1lOk5TV2luZG93V2lsbE9yZGVyT25TY3JlZW5Ob3RpZmljYXRpb24gb2JqZWN0Ondp
bmRvd107CiAgICAgICAgIFtbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl0gYWRk
T2JzZXJ2ZXI6c2VsZiBzZWxlY3RvcjpAc2VsZWN0b3IoX3dpbmRvd1dpbGxPcmRlck9mZlNjcmVl
bjopCi0gICAgICAgICAgICBuYW1lOldLV2luZG93V2lsbE9yZGVyT2ZmU2NyZWVuTm90aWZpY2F0
aW9uKCkgb2JqZWN0OndpbmRvd107CisgICAgICAgICAgICBuYW1lOk5TV2luZG93V2lsbE9yZGVy
T2ZmU2NyZWVuTm90aWZpY2F0aW9uIG9iamVjdDp3aW5kb3ddOwogICAgICAgICBbW05TTm90aWZp
Y2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdIGFkZE9ic2VydmVyOnNlbGYgc2VsZWN0b3I6QHNl
bGVjdG9yKF93aW5kb3dEaWRDaGFuZ2VCYWNraW5nUHJvcGVydGllczopCiAgICAgICAgICAgICBu
YW1lOndpbmRvd0RpZENoYW5nZUJhY2tpbmdQcm9wZXJ0aWVzTm90aWZpY2F0aW9uIG9iamVjdDp3
aW5kb3ddOwogICAgICAgICBbW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdIGFk
ZE9ic2VydmVyOnNlbGYgc2VsZWN0b3I6QHNlbGVjdG9yKF93aW5kb3dEaWRDaGFuZ2VTY3JlZW46
KQpAQCAtNTg5MCw5ICs1ODkyLDkgQEAgLSAodm9pZClyZW1vdmVXaW5kb3dPYnNlcnZlcnMKICAg
ICAgICAgW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSByZW1vdmVPYnNlcnZl
cjpzZWxmCiAgICAgICAgICAgICBuYW1lOk5TV2luZG93RGlkUmVzaWduS2V5Tm90aWZpY2F0aW9u
IG9iamVjdDp3aW5kb3ddOwogICAgICAgICBbW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRD
ZW50ZXJdIHJlbW92ZU9ic2VydmVyOnNlbGYKLSAgICAgICAgICAgIG5hbWU6V0tXaW5kb3dXaWxs
T3JkZXJPblNjcmVlbk5vdGlmaWNhdGlvbigpIG9iamVjdDp3aW5kb3ddOworICAgICAgICAgICAg
bmFtZTpOU1dpbmRvd1dpbGxPcmRlck9uU2NyZWVuTm90aWZpY2F0aW9uIG9iamVjdDp3aW5kb3dd
OwogICAgICAgICBbW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdIHJlbW92ZU9i
c2VydmVyOnNlbGYKLSAgICAgICAgICAgIG5hbWU6V0tXaW5kb3dXaWxsT3JkZXJPZmZTY3JlZW5O
b3RpZmljYXRpb24oKSBvYmplY3Q6d2luZG93XTsKKyAgICAgICAgICAgIG5hbWU6TlNXaW5kb3dX
aWxsT3JkZXJPZmZTY3JlZW5Ob3RpZmljYXRpb24gb2JqZWN0OndpbmRvd107CiAgICAgICAgIFtb
TlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl0gcmVtb3ZlT2JzZXJ2ZXI6c2VsZgog
ICAgICAgICAgICAgbmFtZTp3aW5kb3dEaWRDaGFuZ2VCYWNraW5nUHJvcGVydGllc05vdGlmaWNh
dGlvbiBvYmplY3Q6d2luZG93XTsKICAgICAgICAgW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZh
dWx0Q2VudGVyXSByZW1vdmVPYnNlcnZlcjpzZWxmCkBAIC01OTIzLDcgKzU5MjUsNyBAQCAtICh2
b2lkKXZpZXdXaWxsTW92ZVRvV2luZG93OihOU1dpbmRvdyAqKXdpbmRvdwogICAgICAgICAvLyBU
aGUgZm9sbG93aW5nIGFyZSBleHBlbnNpdmUgZW5vdWdoIHRoYXQgd2UgZG9uJ3Qgd2FudCB0byBj
YWxsIHRoZW0gb3ZlcgogICAgICAgICAvLyBhbmQgb3Zlciwgc28gZG8gdGhlbSB3aGVuIHdlIG1v
dmUgaW50byBhIHdpbmRvdy4KICAgICAgICAgW3dpbmRvdyBzZXRBY2NlcHRzTW91c2VNb3ZlZEV2
ZW50czpZRVNdOwotICAgICAgICBXS1NldE5TV2luZG93U2hvdWxkUG9zdEV2ZW50Tm90aWZpY2F0
aW9ucyh3aW5kb3csIFlFUyk7CisgICAgICAgIFt3aW5kb3cgX3NldFNob3VsZFBvc3RFdmVudE5v
dGlmaWNhdGlvbnM6WUVTXTsKICAgICB9IGVsc2UgaWYgKCFfcHJpdmF0ZS0+Y2xvc2VkKSB7CiAg
ICAgICAgIF9wcml2YXRlLT5wYWdlLT5zZXRDYW5TdGFydE1lZGlhKGZhbHNlKTsKICAgICAgICAg
X3ByaXZhdGUtPnBhZ2UtPnNldElzSW5XaW5kb3coZmFsc2UpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>319498</attachid>
            <date>2017-08-31 12:28:04 -0700</date>
            <delta_ts>2017-08-31 12:48:04 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-176175-20170831122803.patch</filename>
            <type>text/plain</type>
            <size>38544</size>
            <attacher name="Andy Estes">aestes</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIxMzgxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzVhYmE3NzU1NjhiNjgz
ZmZjOWVjZWE4MzhlNWFmOGRlMTVjOTY4Ni4uMmI3NzIyZWE5NjA0ZjhhMThkYWM4MmIyY2ZmNDMw
YzkzNmY5MGU2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDE3LTA4LTMxICBBbmR5
IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNvbT4KKworICAgICAgICBbTWFjXSBVcHN0cmVhbSBBcHBL
aXQtcmVsYXRlZCBXZWJLaXRTeXN0ZW1JbnRlcmZhY2UgZnVuY3Rpb25zCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzYxNzUKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIENvbmZpZ3VyYXRpb25zL1dlYkNv
cmUueGNjb25maWc6IEFkZGVkIC1PYmpDIHRvIE9USEVSX0xERkxBR1Mgc28gdGhhdCBPYmplY3Rp
dmUtQyBjbGFzc2VzCisgICAgICAgIGluIFBBTCBhcmUgZXhwb3J0ZWQgYnkgV2ViQ29yZSBldmVu
IGlmIFdlYkNvcmUgZG9lc24ndCB1c2UgdGhlbS4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvUGxh
dGZvcm1FdmVudEZhY3RvcnlNYWMuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvUGxhdGZvcm1F
dmVudEZhY3RvcnlNYWMubW06CisgICAgICAgIChXZWJDb3JlOjpnZXRXaGVlbEV2ZW50RGVsdGFz
KToKKyAgICAgICAgKFdlYkNvcmU6OmtleUNoYXJGb3JFdmVudCk6CisgICAgICAgIChXZWJDb3Jl
OjpQbGF0Zm9ybVdoZWVsRXZlbnRCdWlsZGVyOjpQbGF0Zm9ybVdoZWVsRXZlbnRCdWlsZGVyKToK
KyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvV2ViQ29yZVN5c3RlbUludGVyZmFjZS5oOgorICAgICAg
ICAqIHBsYXRmb3JtL21hYy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlLm1tOgorCiAyMDE3LTA4LTMw
ICBBbmR5IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNvbT4KIAogICAgICAgICBbTWFjXSBVcHN0cmVh
bSBBY2Nlc3NpYmlsaXR5LXJlbGF0ZWQgV2ViS2l0U3lzdGVtSW50ZXJmYWNlIGZ1bmN0aW9ucwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3Jl
L1BBTC9DaGFuZ2VMb2cKaW5kZXggN2I0YjYwMWZlNGU1ZTE1MGY4MTg5NzQ0NTdjNjllZWI5YjYw
MTM1MS4uMTA5NTdiN2E1NDI5ZDVjYjVjMWFkOWM2NmJiOTkxZWMyMjYyZmMyMCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTctMDgtMzEgIEFuZHkgRXN0ZXMgIDxhZXN0
ZXNAYXBwbGUuY29tPgorCisgICAgICAgIFtNYWNdIFVwc3RyZWFtIEFwcEtpdC1yZWxhdGVkIFdl
YktpdFN5c3RlbUludGVyZmFjZSBmdW5jdGlvbnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE3NjE3NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgICogUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6Cisg
ICAgICAgICogcGFsL3NwaS9tYWMvSElUb29sYm94U1BJLmg6CisgICAgICAgICogcGFsL3NwaS9t
YWMvTlNSZXNwb25kZXJTUEkuaDogQ29waWVkIGZyb20gU291cmNlL1dlYkNvcmUvUEFML3BhbC9z
cGkvbWFjL05TV2luZG93U1BJLmguCisgICAgICAgICogcGFsL3NwaS9tYWMvTlNXaW5kb3dTUEku
aDoKKyAgICAgICAgKiBwYWwvc3lzdGVtL21hYy9XZWJQYW5lbC5oOiBDb3BpZWQgZnJvbSBTb3Vy
Y2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9tYWMvTlNXaW5kb3dTUEkuaC4KKyAgICAgICAgKiBwYWwv
c3lzdGVtL21hYy9XZWJQYW5lbC5tbTogQ29waWVkIGZyb20gU291cmNlL1dlYkNvcmUvUEFML3Bh
bC9zcGkvbWFjL0hJVG9vbGJveFNQSS5oLgorICAgICAgICAoLVtXZWJQYW5lbCBpbml0XSk6CisK
IDIwMTctMDgtMzAgIEFuZHkgRXN0ZXMgIDxhZXN0ZXNAYXBwbGUuY29tPgogCiAgICAgICAgIFtN
YWNdIFVwc3RyZWFtIEFjY2Vzc2liaWxpdHktcmVsYXRlZCBXZWJLaXRTeXN0ZW1JbnRlcmZhY2Ug
ZnVuY3Rpb25zCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGE4NjY2ZjMzODUzNDFkMzU2ZDdhMGM3MTMxZWEyYWZmNjgx
NGE2OGIuLmQ4Mzg5Y2M3NmNjODJjZDY2ZTExZWU2Y2VjZjE1YWUxYTU0MWExMGIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMjAgQEAKKzIwMTctMDgtMzEgIEFuZHkgRXN0ZXMgIDxhZXN0ZXNAYXBwbGUu
Y29tPgorCisgICAgICAgIFtNYWNdIFVwc3RyZWFtIEFwcEtpdC1yZWxhdGVkIFdlYktpdFN5c3Rl
bUludGVyZmFjZSBmdW5jdGlvbnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTE3NjE3NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgICogUGx1Z2luUHJvY2Vzcy9tYWMvUGx1Z2luUHJvY2Vzc01hYy5tbToKKyAg
ICAgICAgKFdlYktpdDo6aW5pdGlhbGl6ZUNvY29hT3ZlcnJpZGVzKToKKyAgICAgICAgKiBTaGFy
ZWQvbWFjL1dlYkV2ZW50RmFjdG9yeS5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViRXZlbnRGYWN0
b3J5OjpjcmVhdGVXZWJXaGVlbEV2ZW50KToKKyAgICAgICAgKFdlYktpdDo6V2ViRXZlbnRGYWN0
b3J5OjpjcmVhdGVXZWJLZXlib2FyZEV2ZW50KToKKyAgICAgICAgKiBVSVByb2Nlc3MvbWFjL1dL
VGV4dElucHV0V2luZG93Q29udHJvbGxlci5tbToKKyAgICAgICAgKC1bV0tUZXh0SW5wdXRQYW5l
bCBpbml0XSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViU3lz
dGVtSW50ZXJmYWNlLm1tOgorICAgICAgICAoSW5pdFdlYkNvcmVTeXN0ZW1JbnRlcmZhY2UpOgor
CiAyMDE3LTA4LTMwICBBbmR5IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNvbT4KIAogICAgICAgICBb
TWFjXSBVcHN0cmVhbSBBY2Nlc3NpYmlsaXR5LXJlbGF0ZWQgV2ViS2l0U3lzdGVtSW50ZXJmYWNl
IGZ1bmN0aW9ucwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9n
IGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCmluZGV4IGJkZjVkMzhhZTdlNWI3
NjE0MDliM2QxMDU0ZDg0MzgzODY4OWZiZGEuLjhmY2RhMDFhZmY2ZTk0MTMyMGU1MTQ2M2RiYTVh
ODI1ZDRmNjhjYzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxv
ZworKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNiBA
QAorMjAxNy0wOC0zMSAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CisKKyAgICAgICAg
W01hY10gVXBzdHJlYW0gQXBwS2l0LXJlbGF0ZWQgV2ViS2l0U3lzdGVtSW50ZXJmYWNlIGZ1bmN0
aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc2
MTc1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBQ
bHVnaW5zL0hvc3RlZC9OZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJveHkubW06CisgICAgICAgIChX
ZWJLaXQ6Ok5ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eTo6a2V5RXZlbnQpOgorICAgICAgICAq
IFBsdWdpbnMvSG9zdGVkL1dlYlRleHRJbnB1dFdpbmRvd0NvbnRyb2xsZXIubToKKyAgICAgICAg
KC1bV2ViVGV4dElucHV0UGFuZWwgaW5pdF0pOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dl
YlN5c3RlbUludGVyZmFjZS5tbToKKyAgICAgICAgKEluaXRXZWJDb3JlU3lzdGVtSW50ZXJmYWNl
KToKKyAgICAgICAgKiBXZWJWaWV3L1dlYkR5bmFtaWNTY3JvbGxCYXJzVmlldy5tbToKKyAgICAg
ICAgKC1bV2ViRHluYW1pY1Njcm9sbEJhcnNWaWV3IHNjcm9sbFdoZWVsOl0pOgorICAgICAgICAq
IFdlYlZpZXcvV2ViSFRNTFZpZXcubW06CisgICAgICAgICgtW1dlYkhUTUxWaWV3IF9yZW1vdmVX
aW5kb3dPYnNlcnZlcnNdKToKKyAgICAgICAgKC1bV2ViSFRNTFZpZXcgYWRkV2luZG93T2JzZXJ2
ZXJzXSk6CisgICAgICAgICogV2ViVmlldy9XZWJWaWV3Lm1tOgorICAgICAgICAoLVtXZWJWaWV3
IGFkZFdpbmRvd09ic2VydmVyc0ZvcldpbmRvdzpdKToKKyAgICAgICAgKC1bV2ViVmlldyByZW1v
dmVXaW5kb3dPYnNlcnZlcnNdKToKKyAgICAgICAgKC1bV2ViVmlldyB2aWV3V2lsbE1vdmVUb1dp
bmRvdzpdKToKKwogMjAxNy0wOC0zMCAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CiAK
ICAgICAgICAgW01hY10gVXBzdHJlYW0gQWNjZXNzaWJpbGl0eS1yZWxhdGVkIFdlYktpdFN5c3Rl
bUludGVyZmFjZSBmdW5jdGlvbnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NvbmZpZ3Vy
YXRpb25zL1dlYkNvcmUueGNjb25maWcgYi9Tb3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9X
ZWJDb3JlLnhjY29uZmlnCmluZGV4IDJhMGFjZjdhZTI3OGM2MDk4NTE4MGY5ODZjNzUxYzM2ZGZi
YWFkZDkuLjM1ZmMzZTc5NWZmOGEyOWNiMDMxYzA1OTNjMjZiZWJjZGRmM2U0NDcgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25zL1dlYkNvcmUueGNjb25maWcKKysrIGIv
U291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvV2ViQ29yZS54Y2NvbmZpZwpAQCAtNzcsNyAr
NzcsNyBAQCBMSUJXRUJSVENfTElCUkFSWV9ESVJfVVNFX09WRVJSSURFX0ZSQU1FV09SS1NfRElS
X05PID0gJChXRUJDT1JFX0ZSQU1FV09SS1NfRElSKQogTElCV0VCUlRDX0xJQlJBUllfRElSX1VT
RV9PVkVSUklERV9GUkFNRVdPUktTX0RJUl9ZRVMgPSAkKFdLX09WRVJSSURFX0ZSQU1FV09SS1Nf
RElSKTsKIAogT1RIRVJfTERGTEFHUyA9ICQoaW5oZXJpdGVkKSAkKFdLX1JFTE9DQVRBQkxFX0ZS
QU1FV09SS19MREZMQUdTKSAkKFdLX1VOREVGSU5FRF9TWU1CT0xTX0xERkxBR1MpICQoT1RIRVJf
TERGTEFHU19QTEFURk9STSk7Ci1PVEhFUl9MREZMQUdTX0JBU0UgPSAtbHNxbGl0ZTMgLWxvYmpj
IC1sQU5HTEUgLWZyYW1ld29yayBDb3JlQXVkaW8gLWZyYW1ld29yayBNZXRhbCAtYWxsb3dhYmxl
X2NsaWVudCBXZWJDb3JlVGVzdFN1cHBvcnQgLWFsbG93YWJsZV9jbGllbnQgV2ViS2l0TGVnYWN5
OworT1RIRVJfTERGTEFHU19CQVNFID0gLWxzcWxpdGUzIC1sb2JqYyAtbEFOR0xFIC1mcmFtZXdv
cmsgQ29yZUF1ZGlvIC1mcmFtZXdvcmsgTWV0YWwgLWFsbG93YWJsZV9jbGllbnQgV2ViQ29yZVRl
c3RTdXBwb3J0IC1hbGxvd2FibGVfY2xpZW50IFdlYktpdExlZ2FjeSAtT2JqQzsKIC8vIEZJWE1F
OiBSZWR1Y2UgdGhlIG51bWJlciBvZiBhbGxvd2FibGVfY2xpZW50IDxyZGFyOi8vcHJvYmxlbS8z
MTgyMzk2OT4KIE9USEVSX0xERkxBR1NfQkFTRV9pb3MgPSAkKE9USEVSX0xERkxBR1NfQkFTRSkg
LWZyYW1ld29yayBDRk5ldHdvcmsgLWZyYW1ld29yayBDb3JlR3JhcGhpY3MgLWZyYW1ld29yayBD
b3JlVGV4dCAtZnJhbWV3b3JrIEZvdW5kYXRpb24gLWZyYW1ld29yayBJbWFnZUlPIC1mcmFtZXdv
cmsgTW9iaWxlQ29yZVNlcnZpY2VzIC1mcmFtZXdvcmsgT3BlbkdMRVMgLWxNb2JpbGVHZXN0YWx0
ICQoV0tfSU9TX0JJTkNPTVBBVF9MREZMQUdTKSAtYWxsb3dhYmxlX2NsaWVudCBXZWJLaXQgLWFs
bG93YWJsZV9jbGllbnQgaVR1bmVzVSAtYWxsb3dhYmxlX2NsaWVudCBDYXNhYmxhbmNhIC1hbGxv
d2FibGVfY2xpZW50IFJlbW90ZSAtYWxsb3dhYmxlX2NsaWVudCBUVkJvb2tzIC1hbGxvd2FibGVf
Y2xpZW50IER1bXBSZW5kZXJUcmVlIC1hbGxvd2FibGVfY2xpZW50IFdlYktpdFRlc3RSdW5uZXIg
LWFsbG93YWJsZV9jbGllbnQgVGVzdFdlYktpdEFQSTsKIE9USEVSX0xERkxBR1NfUExBVEZPUk1b
c2RrPWlwaG9uZW9zKl0gPSAkKE9USEVSX0xERkxBR1NfQkFTRV9pb3MpIC1mcmFtZXdvcmsgSU9T
dXJmYWNlIC1mcmFtZXdvcmsgR3JhcGhpY3NTZXJ2aWNlcyAkKExJQldFQlJUQ19MREZMQUdTKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpp
bmRleCBkOTg1OGY5ZWUyYjQxZjAwNTkzNzFhZTkwY2IyYmZkZGRhM2QwYjg4Li44ZGQ1YTZiMzY3
OTJhMjYxZmJlNTM5OTMwNDk2ZjkxNzRiN2YwNTUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUv
UEFML1BBTC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0xMDEsNiArMTAxLDkgQEAKIAkJ
QTEwMjY1ODkxRjU2NzQ3QTAwQjRDODQ0IC8qIEhJVG9vbGJveFNQSS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTEwMjY1ODgxRjU2NzQ3QTAwQjRDODQ0
IC8qIEhJVG9vbGJveFNQSS5oICovOyB9OwogCQlBMTAyNjU4QjFGNTY3NDhDMDBCNEM4NDQgLyog
UXVpY2tEcmF3U1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBBMTAyNjU4QTFGNTY3NDhDMDBCNEM4NDQgLyogUXVpY2tEcmF3U1BJLmggKi87IH07CiAJ
CUExMDI2NThFMUY1NjdFOUQwMEI0Qzg0NCAvKiBISVNlcnZpY2VzU1BJLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMTAyNjU4RDFGNTY3RTlEMDBCNEM4
NDQgLyogSElTZXJ2aWNlc1NQSS5oICovOyB9OworCQlBMTA4MjZGMTFGNTczQkNBMDA0NzcyQUMg
LyogTlNSZXNwb25kZXJTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEExMDgyNkYwMUY1NzNCQ0EwMDQ3NzJBQyAvKiBOU1Jlc3BvbmRlclNQSS5oICov
OyB9OworCQlBMTA4MjZGOTFGNTc2MjkyMDA0NzcyQUMgLyogV2ViUGFuZWwuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExMDgyNkY3MUY1NzYyOTIwMDQ3
NzJBQyAvKiBXZWJQYW5lbC5oICovOyB9OworCQlBMTA4MjZGQTFGNTc2MjkyMDA0NzcyQUMgLyog
V2ViUGFuZWwubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBBMTA4MjZGODFGNTc2MjkyMDA0NzcyQUMgLyogV2ViUGFuZWwubW0gKi87IH07CiAJCUExRjU1
RENGMUY1NTI4RUMwMEVEQjc1RiAvKiBNZXRhZGF0YVNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTFGNTVEQ0UxRjU1MjhFQzAwRURCNzVGIC8qIE1l
dGFkYXRhU1BJLmggKi87IH07CiAJCUEzMEQ0MTIxMUYwREQwRUEwMEI3MTk1NCAvKiBLaWxsUmlu
Zy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTMwRDQx
MUUxRjBERDBFQTAwQjcxOTU0IC8qIEtpbGxSaW5nLmggKi87IH07CiAJCUEzMEQ0MTIyMUYwREQw
RUEwMEI3MTk1NCAvKiBLaWxsUmluZ05vbmUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQTMwRDQxMUYxRjBERDBFQTAwQjcxOTU0IC8qIEtpbGxSaW5n
Tm9uZS5jcHAgKi87IH07CkBAIC0yMTcsNiArMjIwLDkgQEAKIAkJQTEwMjY1ODgxRjU2NzQ3QTAw
QjRDODQ0IC8qIEhJVG9vbGJveFNQSS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBISVRvb2xib3hTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTEwMjY1OEEx
RjU2NzQ4QzAwQjRDODQ0IC8qIFF1aWNrRHJhd1NQSS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBRdWlja0RyYXdTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
QTEwMjY1OEQxRjU2N0U5RDAwQjRDODQ0IC8qIEhJU2VydmljZXNTUEkuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gSElTZXJ2aWNlc1NQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMTA4MjZG
MDFGNTczQkNBMDA0NzcyQUMgLyogTlNSZXNwb25kZXJTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTlNS
ZXNwb25kZXJTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTEwODI2RjcxRjU3
NjI5MjAwNDc3MkFDIC8qIFdlYlBhbmVsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYlBhbmVsLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExMDgyNkY4MUY1NzYyOTIwMDQ3NzJBQyAvKiBX
ZWJQYW5lbC5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFdlYlBhbmVsLm1tOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQlBMUY1NURDRTFGNTUyOEVDMDBFREI3NUYgLyogTWV0YWRhdGFT
UEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gTWV0YWRhdGFTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJQTMwRDQxMUUxRjBERDBFQTAwQjcxOTU0IC8qIEtpbGxSaW5nLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEtpbGxSaW5nLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUEzMEQ0MTFGMUYwREQwRUEwMEI3MTk1NCAvKiBLaWxsUmluZ05vbmUuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gS2lsbFJpbmdOb25lLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTM1Myw2ICszNTksNyBAQAogCQkJCTBDNzc4NTc5
MUY0NTEzMEYwMEY0RUJCNiAvKiBOU01lbnVTUEkuaCAqLywKIAkJCQkwQzc3ODU3QTFGNDUxMzBG
MDBGNEVCQjYgLyogTlNQYXN0ZWJvYXJkU1BJLmggKi8sCiAJCQkJMEM3Nzg1N0IxRjQ1MTMwRjAw
RjRFQkI2IC8qIE5TUG9wb3ZlclNQSS5oICovLAorCQkJCUExMDgyNkYwMUY1NzNCQ0EwMDQ3NzJB
QyAvKiBOU1Jlc3BvbmRlclNQSS5oICovLAogCQkJCTBDNzc4NTdDMUY0NTEzMEYwMEY0RUJCNiAv
KiBOU1Njcm9sbGVySW1wU1BJLmggKi8sCiAJCQkJMEM3Nzg1N0QxRjQ1MTMwRjAwRjRFQkI2IC8q
IE5TU2Nyb2xsaW5nSW5wdXRGaWx0ZXJTUEkuaCAqLywKIAkJCQkwQzc3ODU3RTFGNDUxMzBGMDBG
NEVCQjYgLyogTlNTY3JvbGxpbmdNb21lbnR1bUNhbGN1bGF0b3JTUEkuaCAqLywKQEAgLTQ3Myw2
ICs0ODAsOCBAQAogCQkJCUEzNzg4RTlEMUYwNUI3OEUwMDY3OTQyNSAvKiBTb3VuZE1hYy5tbSAq
LywKIAkJCQlBM0FCNkU2MjFGM0QyMTdGMDA5QzE0QjEgLyogU3lzdGVtU2xlZXBMaXN0ZW5lck1h
Yy5oICovLAogCQkJCUEzQUI2RTYzMUYzRDIxN0YwMDlDMTRCMSAvKiBTeXN0ZW1TbGVlcExpc3Rl
bmVyTWFjLm1tICovLAorCQkJCUExMDgyNkY3MUY1NzYyOTIwMDQ3NzJBQyAvKiBXZWJQYW5lbC5o
ICovLAorCQkJCUExMDgyNkY4MUY1NzYyOTIwMDQ3NzJBQyAvKiBXZWJQYW5lbC5tbSAqLywKIAkJ
CSk7CiAJCQlwYXRoID0gbWFjOwogCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKQEAgLTU0Niw2
ICs1NTUsNyBAQAogCQkJCTBDNzc4NTkyMUY0NTEzMEYwMEY0RUJCNiAvKiBOU01lbnVTUEkuaCBp
biBIZWFkZXJzICovLAogCQkJCTBDNzc4NTkzMUY0NTEzMEYwMEY0RUJCNiAvKiBOU1Bhc3RlYm9h
cmRTUEkuaCBpbiBIZWFkZXJzICovLAogCQkJCTBDNzc4NTk0MUY0NTEzMEYwMEY0RUJCNiAvKiBO
U1BvcG92ZXJTUEkuaCBpbiBIZWFkZXJzICovLAorCQkJCUExMDgyNkYxMUY1NzNCQ0EwMDQ3NzJB
QyAvKiBOU1Jlc3BvbmRlclNQSS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEM3Nzg1OTUxRjQ1MTMw
RjAwRjRFQkI2IC8qIE5TU2Nyb2xsZXJJbXBTUEkuaCBpbiBIZWFkZXJzICovLAogCQkJCTBDNzc4
NTk2MUY0NTEzMEYwMEY0RUJCNiAvKiBOU1Njcm9sbGluZ0lucHV0RmlsdGVyU1BJLmggaW4gSGVh
ZGVycyAqLywKIAkJCQkwQzc3ODU5NzFGNDUxMzBGMDBGNEVCQjYgLyogTlNTY3JvbGxpbmdNb21l
bnR1bUNhbGN1bGF0b3JTUEkuaCBpbiBIZWFkZXJzICovLApAQCAtNTgwLDYgKzU5MCw3IEBACiAJ
CQkJMEM3Nzg1QTExRjQ1MTMwRjAwRjRFQkI2IC8qIFRVQ2FsbFNQSS5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJMEM1QUY5MjIxRjQzQTRDNzAwMkVBQzAyIC8qIFVJS2l0U1BJLmggaW4gSGVhZGVycyAq
LywKIAkJCQkwQzJEQTE1OTFGM0JFQjQ5MDBEQkMzMTcgLyogV2ViRmlsdGVyRXZhbHVhdG9yU1BJ
LmggaW4gSGVhZGVycyAqLywKKwkJCQlBMTA4MjZGOTFGNTc2MjkyMDA0NzcyQUMgLyogV2ViUGFu
ZWwuaCBpbiBIZWFkZXJzICovLAogCQkJKTsKIAkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHBy
b2Nlc3NpbmcgPSAwOwogCQl9OwpAQCAtNjc4LDYgKzY4OSw3IEBACiAJCQkJQTM3ODhFOUMxRjA1
Qjc4MjAwNjc5NDI1IC8qIFNvdW5kTm9uZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlBM0FCNkU1
NzFGM0QxRERCMDA5QzE0QjEgLyogU3lzdGVtU2xlZXBMaXN0ZW5lci5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQlBM0FCNkU2NTFGM0QyMTdGMDA5QzE0QjEgLyogU3lzdGVtU2xlZXBMaXN0ZW5lck1h
Yy5tbSBpbiBTb3VyY2VzICovLAorCQkJCUExMDgyNkZBMUY1NzYyOTIwMDQ3NzJBQyAvKiBXZWJQ
YW5lbC5tbSBpbiBTb3VyY2VzICovLAogCQkJKTsKIAkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9z
dHByb2Nlc3NpbmcgPSAwOwogCQl9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3Bh
bC9zcGkvbWFjL0hJVG9vbGJveFNQSS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvbWFj
L0hJVG9vbGJveFNQSS5oCmluZGV4IDAwMzQ4Nzc3NzJkY2M1OGYwMmExNjc4YTc2Y2UyZmEwNWI4
YWZhY2IuLjBmZjkyNzBhMzI1ZDM4OGZiNGEyNzBhYzY5OTk5YTE2M2RiOThjYTggMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9ISVRvb2xib3hTUEkuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9tYWMvSElUb29sYm94U1BJLmgKQEAgLTQ1LDUgKzQ1
LDYgQEAgQ0dXaW5kb3dJRCBHZXROYXRpdmVXaW5kb3dGcm9tV2luZG93UmVmKFdpbmRvd1JlZik7
CiBPU1N0YXR1cyBUU01Qcm9jZXNzUmF3S2V5RXZlbnQoRXZlbnRSZWYpOwogRXZlbnRSZWYgR2V0
Q3VycmVudEV2ZW50KCk7CiBDRlR5cGVSZWYgVFNNR2V0SW5wdXRTb3VyY2VQcm9wZXJ0eShUU01J
bnB1dFNvdXJjZVJlZiwgVFNNSW5wdXRTb3VyY2VQcm9wZXJ0eVRhZyk7CitPU1N0YXR1cyBHZXRF
dmVudFBhcmFtZXRlcihFdmVudFJlZiwgRXZlbnRQYXJhbU5hbWUgaW5OYW1lLCBFdmVudFBhcmFt
VHlwZSBpbkRlc2lyZWRUeXBlLCBFdmVudFBhcmFtVHlwZSogb3V0QWN0dWFsVHlwZSwgQnl0ZUNv
dW50IGluQnVmZmVyU2l6ZSwgQnl0ZUNvdW50KiBvdXRBY3R1YWxTaXplLCB2b2lkKiBvdXREYXRh
KTsKIAogV1RGX0VYVEVSTl9DX0VORApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3Bh
bC9zcGkvbWFjL05TUmVzcG9uZGVyU1BJLmggYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9t
YWMvTlNSZXNwb25kZXJTUEkuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mZWQxYTc5NTI3ZjcyZThjMDc3MTNkM2Zl
ODIwMjFkMTU2MDdiZjNkCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3Bh
bC9zcGkvbWFjL05TUmVzcG9uZGVyU1BJLmgKQEAgLTAsMCArMSw0MCBAQAorLyoKKyAqIENvcHly
aWdodCAoQykgMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09O
VFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisg
KiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
IElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICog
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisK
KyNpZiBQTEFURk9STShNQUMpCisKKyNpZiBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQorCisjaW1w
b3J0IDxBcHBLaXQvTlNSZXNwb25kZXJfUHJpdmF0ZS5oPgorCisjZWxzZQorCitAaW50ZXJmYWNl
IE5TUmVzcG9uZGVyICgpCistICh2b2lkKV9zZXRTaG91bGRQb3N0RXZlbnROb3RpZmljYXRpb25z
OihCT09MKXBvc3ROb3RpZmljYXRpb25zOworQGVuZAorCisjZW5kaWYKKworI2VuZGlmIC8vIFBM
QVRGT1JNKE1BQykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9O
U1dpbmRvd1NQSS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvbWFjL05TV2luZG93U1BJ
LmgKaW5kZXggYmFiODQwMGYwNDlkOTRiOTJkZWZlYTlhZTk1MzE2MmZmMjE1ODk0My4uN2NiMzM5
N2JkOTRiNDk3ZDhhYjM2MDcyM2ZhM2FiOWMzMTE2MjQ4MyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvUEFML3BhbC9zcGkvbWFjL05TV2luZG93U1BJLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
UEFML3BhbC9zcGkvbWFjL05TV2luZG93U1BJLmgKQEAgLTQyLDkgKzQyLDE0IEBACiBAZW5kCiAK
IGVudW0geworICAgIE5TU2lkZVV0aWxpdHlXaW5kb3dNYXNrID0gMSA8PCA5LAorICAgIE5TU21h
bGxXaW5kb3dNYXNrID0gMSA8PCAxMCwKICAgICBfTlNDYXJib25XaW5kb3dNYXNrID0gMSA8PCAy
NSwKIH07CiAKICNlbmRpZgogCitleHRlcm4gTlNOb3RpZmljYXRpb25OYW1lIE5TV2luZG93V2ls
bE9yZGVyT25TY3JlZW5Ob3RpZmljYXRpb247CitleHRlcm4gTlNOb3RpZmljYXRpb25OYW1lIE5T
V2luZG93V2lsbE9yZGVyT2ZmU2NyZWVuTm90aWZpY2F0aW9uOworCiAjZW5kaWYgLy8gUExBVEZP
Uk0oTUFDKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zeXN0ZW0vbWFjL1dl
YlBhbmVsLmggYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3N5c3RlbS9tYWMvV2ViUGFuZWwuaApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi45MDM1MTYzZDlkYmFlZTMxZDk4MTEyMjI1MTYyZGQzOGJmODY1NjllCi0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zeXN0ZW0vbWFjL1dlYlBhbmVs
LmgKQEAgLTAsMCArMSwzNiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNyBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAq
IGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICog
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpZiBQTEFURk9STShNQUMpCisKKyNp
bXBvcnQgPEFwcEtpdC9BcHBLaXQuaD4KKworUEFMX0VYUE9SVCBAaW50ZXJmYWNlIFdlYlBhbmVs
IDogTlNQYW5lbAorCistIChpbnN0YW5jZXR5cGUpaW5pdDsKKworQGVuZAorCisjZW5kaWYKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3lzdGVtL21hYy9XZWJQYW5lbC5tbSBi
L1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3lzdGVtL21hYy9XZWJQYW5lbC5tbQpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4zMTMxODExN2Q3ZmYwZDY3NzZhZWQxYjhlMGE1OTRiMWYxODA5ODVhCi0tLSAvZGV2L251bGwK
KysrIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zeXN0ZW0vbWFjL1dlYlBhbmVsLm1tCkBAIC0w
LDAgKzEsNDcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTcgQXBwbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0
OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkg
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
IE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW1wb3J0ICJjb25maWcuaCIKKyNpbXBvcnQgIldl
YlBhbmVsLmgiCisKKyNpZiBQTEFURk9STShNQUMpCisKKyNpbXBvcnQgPHBhbC9zcGkvbWFjL05T
V2luZG93U1BJLmg+CisKK0BpbXBsZW1lbnRhdGlvbiBXZWJQYW5lbAorCistIChpbnN0YW5jZXR5
cGUpaW5pdAoreworI3ByYWdtYSBjbGFuZyBkaWFnbm9zdGljIHB1c2gKKyNwcmFnbWEgY2xhbmcg
ZGlhZ25vc3RpYyBpZ25vcmVkICItV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zIgorICAgIHN0YXRp
YyBOU1dpbmRvd1N0eWxlTWFzayBzdHlsZU1hc2sgPSBOU01pbmlhdHVyaXphYmxlV2luZG93TWFz
ayB8IE5TQ2xvc2FibGVXaW5kb3dNYXNrIHwgTlNSZXNpemFibGVXaW5kb3dNYXNrICB8IE5TVGl0
bGVkV2luZG93TWFzayB8IE5TU21hbGxXaW5kb3dNYXNrIHwgTlNTaWRlVXRpbGl0eVdpbmRvd01h
c2sgfCBOU1V0aWxpdHlXaW5kb3dNYXNrOworI3ByYWdtYSBjbGFuZyBkaWFnbm9zdGljIHBvcAor
ICAgIAorICAgIHJldHVybiBbc3VwZXIgaW5pdFdpdGhDb250ZW50UmVjdDpOU1plcm9SZWN0IHN0
eWxlTWFzazpzdHlsZU1hc2sgYmFja2luZzpOU0JhY2tpbmdTdG9yZUJ1ZmZlcmVkIGRlZmVyOllF
U107Cit9CisKK0BlbmQKKworI2VuZGlmIC8vIFBMQVRGT1JNKE1BQykKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9QbGF0Zm9ybUV2ZW50RmFjdG9yeU1hYy5oIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1BsYXRmb3JtRXZlbnRGYWN0b3J5TWFjLmgKaW5kZXgg
MjU5YzYwNTBkNjBhNDlmNDk4ZGM1NDhiN2NlZjMyZjBjNzZhZGU2Yy4uZDIwYTJkOGVlOTBmNGMx
ODY3Yjk2ZTU5NDkyMTk1OWM0ZjZjMDI2ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWFjL1BsYXRmb3JtRXZlbnRGYWN0b3J5TWFjLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbWFjL1BsYXRmb3JtRXZlbnRGYWN0b3J5TWFjLmgKQEAgLTQ5LDYgKzQ5LDkgQEAg
V0VCQ09SRV9FWFBPUlQgU3RyaW5nIGtleUlkZW50aWZpZXJGb3JLZXlFdmVudChOU0V2ZW50ICop
OwogV0VCQ09SRV9FWFBPUlQgU3RyaW5nIGtleUZvcktleUV2ZW50KE5TRXZlbnQgKik7CiBXRUJD
T1JFX0VYUE9SVCBTdHJpbmcgY29kZUZvcktleUV2ZW50KE5TRXZlbnQgKik7CiBXRUJDT1JFX0VY
UE9SVCBkb3VibGUgZXZlbnRUaW1lU3RhbXBTaW5jZTE5NzAoTlNFdmVudCAqKTsKKyAgICAKK1dF
QkNPUkVfRVhQT1JUIHZvaWQgZ2V0V2hlZWxFdmVudERlbHRhcyhOU0V2ZW50ICosIGZsb2F0JiBk
ZWx0YVgsIGZsb2F0JiBkZWx0YVksIEJPT0wmIGNvbnRpbnVvdXMpOworV0VCQ09SRV9FWFBPUlQg
VUludDgga2V5Q2hhckZvckV2ZW50KE5TRXZlbnQgKik7CiAKICNlbmRpZgogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvUGxhdGZvcm1FdmVudEZhY3RvcnlNYWMubW0g
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvUGxhdGZvcm1FdmVudEZhY3RvcnlNYWMubW0K
aW5kZXggYmMxZTM2N2ZjNDY5NGVhZjQ2MGFiMGVhNWE0MjMwZDAwMDAxYWM4OS4uZTVlODViYTA4
NTg2Y2NlZTk2M2M3YzVkYmNhN2IyYTgyODZiYzZlYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbWFjL1BsYXRmb3JtRXZlbnRGYWN0b3J5TWFjLm1tCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21hYy9QbGF0Zm9ybUV2ZW50RmFjdG9yeU1hYy5tbQpAQCAtMzQsNiAr
MzQsOCBAQAogI2ltcG9ydCAiV2luZG93c0tleWJvYXJkQ29kZXMuaCIKICNpbXBvcnQgPEhJVG9v
bGJveC9FdmVudHMuaD4KICNpbXBvcnQgPG1hY2gvbWFjaF90aW1lLmg+CisjaW1wb3J0IDxwYWwv
c3BpL21hYy9ISVRvb2xib3hTUEkuaD4KKyNpbXBvcnQgPHBhbC9zcGkvbWFjL05TRXZlbnRTUEku
aD4KICNpbXBvcnQgPHBhbC9zcGkvbWFjL05TTWVudVNQSS5oPgogI2ltcG9ydCA8d3RmL0FTQ0lJ
Q1R5cGUuaD4KIApAQCAtNjc0LDYgKzY3NiwzOSBAQCBzdGF0aWMgaW50IHR5cGVGb3JFdmVudChO
U0V2ZW50ICpldmVudCkKICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8aW50PihbTlNNZW51IG1lbnVU
eXBlRm9yRXZlbnQ6ZXZlbnRdKTsKIH0KICAgICAKK3ZvaWQgZ2V0V2hlZWxFdmVudERlbHRhcyhO
U0V2ZW50ICpldmVudCwgZmxvYXQmIGRlbHRhWCwgZmxvYXQmIGRlbHRhWSwgQk9PTCYgY29udGlu
dW91cykKK3sKKyAgICBBU1NFUlQoZXZlbnQpOworICAgIGlmIChldmVudC5oYXNQcmVjaXNlU2Ny
b2xsaW5nRGVsdGFzKSB7CisgICAgICAgIGRlbHRhWCA9IGV2ZW50LnNjcm9sbGluZ0RlbHRhWDsK
KyAgICAgICAgZGVsdGFZID0gZXZlbnQuc2Nyb2xsaW5nRGVsdGFZOworICAgICAgICBjb250aW51
b3VzID0gWUVTOworICAgIH0gZWxzZSB7CisgICAgICAgIGRlbHRhWCA9IGV2ZW50LmRlbHRhWDsK
KyAgICAgICAgZGVsdGFZID0gZXZlbnQuZGVsdGFZOworICAgICAgICBjb250aW51b3VzID0gTk87
CisgICAgfQorfQorCitVSW50OCBrZXlDaGFyRm9yRXZlbnQoTlNFdmVudCAqZXZlbnQpCit7Cisg
ICAgRXZlbnRSZWYgZXZlbnRSZWYgPSBbZXZlbnQgX2V2ZW50UmVmXTsKKyAgICBpZiAoIWV2ZW50
UmVmKQorICAgICAgICByZXR1cm4gMDsKKworICAgIEJ5dGVDb3VudCBrZXlDaGFyQ291bnQgPSAw
OworICAgIGlmIChHZXRFdmVudFBhcmFtZXRlcihldmVudFJlZiwga0V2ZW50UGFyYW1LZXlNYWND
aGFyQ29kZXMsIHR5cGVDaGFyLCAwLCAwLCAma2V5Q2hhckNvdW50LCAwKSAhPSBub0VycikKKyAg
ICAgICAgcmV0dXJuIDA7CisgICAgaWYgKGtleUNoYXJDb3VudCAhPSAxKQorICAgICAgICByZXR1
cm4gMDsKKworICAgIFVJbnQ4IGtleUNoYXIgPSAwOworICAgIGlmIChHZXRFdmVudFBhcmFtZXRl
cihldmVudFJlZiwga0V2ZW50UGFyYW1LZXlNYWNDaGFyQ29kZXMsIHR5cGVDaGFyLCAwLCBzaXpl
b2Yoa2V5Q2hhciksICZrZXlDaGFyQ291bnQsICZrZXlDaGFyKSAhPSBub0VycikKKyAgICAgICAg
cmV0dXJuIDA7CisgICAgCisgICAgcmV0dXJuIGtleUNoYXI7Cit9CisKIGNsYXNzIFBsYXRmb3Jt
TW91c2VFdmVudEJ1aWxkZXIgOiBwdWJsaWMgUGxhdGZvcm1Nb3VzZUV2ZW50IHsKIHB1YmxpYzoK
ICAgICBQbGF0Zm9ybU1vdXNlRXZlbnRCdWlsZGVyKE5TRXZlbnQgKmV2ZW50LCBOU0V2ZW50ICpj
b3JyZXNwb25kaW5nUHJlc3N1cmVFdmVudCwgTlNWaWV3ICp3aW5kb3dWaWV3KQpAQCAtNzQ0LDcg
Kzc3OSw3IEBAIHB1YmxpYzoKICAgICAgICAgbV9ncmFudWxhcml0eSA9IFNjcm9sbEJ5UGl4ZWxX
aGVlbEV2ZW50OwogCiAgICAgICAgIEJPT0wgY29udGludW91czsKLSAgICAgICAgd2tHZXRXaGVl
bEV2ZW50RGVsdGFzKGV2ZW50LCAmbV9kZWx0YVgsICZtX2RlbHRhWSwgJmNvbnRpbnVvdXMpOwor
ICAgICAgICBnZXRXaGVlbEV2ZW50RGVsdGFzKGV2ZW50LCBtX2RlbHRhWCwgbV9kZWx0YVksIGNv
bnRpbnVvdXMpOwogICAgICAgICBpZiAoY29udGludW91cykgewogICAgICAgICAgICAgbV93aGVl
bFRpY2tzWCA9IG1fZGVsdGFYIC8gc3RhdGljX2Nhc3Q8ZmxvYXQ+KFNjcm9sbGJhcjo6cGl4ZWxz
UGVyTGluZVN0ZXAoKSk7CiAgICAgICAgICAgICBtX3doZWVsVGlja3NZID0gbV9kZWx0YVkgLyBz
dGF0aWNfY2FzdDxmbG9hdD4oU2Nyb2xsYmFyOjpwaXhlbHNQZXJMaW5lU3RlcCgpKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNl
LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViQ29yZVN5c3RlbUludGVyZmFjZS5o
CmluZGV4IDkzY2RmZDBjN2FiMWU5NjgwMTA2Y2E2NDg1NDQ4NTY2Yjc0NDRlNDYuLjhhMTI0ODI3
YzA0MDlkNjYzZjc4MWRmMjdiNGU0M2JjZmFmYmQyMjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL21hYy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2UuaApAQCAtMTM5LDcgKzEz
OSw2IEBAIGV4dGVybiB2b2lkICgqd2tEcmF3TWVkaWFTbGlkZXJUcmFjaykoQ0dDb250ZXh0UmVm
IGNvbnRleHQsIENHUmVjdCByZWN0LCBmbG9hdCB0CiBleHRlcm4gdm9pZCAoKndrRHJhd01lZGlh
VUlQYXJ0KShpbnQgcGFydCwgQ0dDb250ZXh0UmVmIGNvbnRleHQsIENHUmVjdCByZWN0LCB1bnNp
Z25lZCBzdGF0ZSk7CiBleHRlcm4gZG91YmxlICgqd2tHZXROU1VSTFJlc3BvbnNlQ2FsY3VsYXRl
ZEV4cGlyYXRpb24pKE5TVVJMUmVzcG9uc2UgKnJlc3BvbnNlKTsKIGV4dGVybiBCT09MICgqd2tH
ZXROU1VSTFJlc3BvbnNlTXVzdFJldmFsaWRhdGUpKE5TVVJMUmVzcG9uc2UgKnJlc3BvbnNlKTsK
LWV4dGVybiB2b2lkICgqd2tHZXRXaGVlbEV2ZW50RGVsdGFzKShOU0V2ZW50KiwgZmxvYXQqIGRl
bHRhWCwgZmxvYXQqIGRlbHRhWSwgQk9PTCogY29udGludW91cyk7CiBleHRlcm4gVUludDggKCp3
a0dldE5TRXZlbnRLZXlDaGFyKShOU0V2ZW50ICopOwogZXh0ZXJuIEJPT0wgKCp3a0hpdFRlc3RN
ZWRpYVVJUGFydCkoaW50IHBhcnQsIENHUmVjdCBib3VuZHMsIENHUG9pbnQgcG9pbnQpOwogZXh0
ZXJuIHZvaWQgKCp3a01lYXN1cmVNZWRpYVVJUGFydCkoaW50IHBhcnQsIENHUmVjdCAqYm91bmRz
LCBDR1NpemUgKm5hdHVyYWxTaXplKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL21hYy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWFjL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2UubW0KaW5kZXggNjQ5ZDdhNjdjZDY3NjU0YTJh
M2UzOTRlOTM1ZjhjNTI2ZmEzOTI1YS4uMjcyYjU1NTdlMjM5ZjNjMWUxZDQ1YTk0ZmI3YjFlNDUz
NDYxN2RmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVT
eXN0ZW1JbnRlcmZhY2UubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNv
cmVTeXN0ZW1JbnRlcmZhY2UubW0KQEAgLTQ4LDcgKzQ4LDYgQEAgdm9pZCAoKndrV2luZG93U2V0
QWxwaGEpKE5TV2luZG93ICosIGZsb2F0KTsKIHZvaWQgKCp3a1dpbmRvd1NldFNjYWxlZEZyYW1l
KShOU1dpbmRvdyAqLCBOU1JlY3QsIE5TUmVjdCk7CiBOU1RpbWVJbnRlcnZhbCAoKndrR2V0TlNV
UkxSZXNwb25zZUNhbGN1bGF0ZWRFeHBpcmF0aW9uKShOU1VSTFJlc3BvbnNlICpyZXNwb25zZSk7
CiBCT09MICgqd2tHZXROU1VSTFJlc3BvbnNlTXVzdFJldmFsaWRhdGUpKE5TVVJMUmVzcG9uc2Ug
KnJlc3BvbnNlKTsKLXZvaWQgKCp3a0dldFdoZWVsRXZlbnREZWx0YXMpKE5TRXZlbnQqLCBmbG9h
dCogZGVsdGFYLCBmbG9hdCogZGVsdGFZLCBCT09MKiBjb250aW51b3VzKTsKIFVJbnQ4ICgqd2tH
ZXROU0V2ZW50S2V5Q2hhcikoTlNFdmVudCAqKTsKIHZvaWQgKCp3a1BvcHVwTWVudSkoTlNNZW51
KiwgTlNQb2ludCBsb2NhdGlvbiwgZmxvYXQgd2lkdGgsIE5TVmlldyosIGludCBzZWxlY3RlZEl0
ZW0sIE5TRm9udCosIE5TQ29udHJvbFNpemUgY29udHJvbFNpemUsIGJvb2wgdXNlc0N1c3RvbUFw
cGVhcmFuY2UpOwogdW5zaWduZWQgKCp3a1FUSW5jbHVkZU9ubHlNb2Rlcm5NZWRpYUZpbGVUeXBl
cykodm9pZCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1BsdWdpblByb2Nlc3MvbWFjL1Bs
dWdpblByb2Nlc3NNYWMubW0gYi9Tb3VyY2UvV2ViS2l0L1BsdWdpblByb2Nlc3MvbWFjL1BsdWdp
blByb2Nlc3NNYWMubW0KaW5kZXggZGQ1MzM3MDI0N2YwYTZiNzRhMDFiZmNjOGFhOTZmYTZmZmYz
NDQxOC4uZDg2MDM3ODY3YTJmMWFmYTI1ZWM1MjYzMDZlMTRkOTY0Y2Q3N2U2ZCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9QbHVnaW5Qcm9jZXNzL21hYy9QbHVnaW5Qcm9jZXNzTWFjLm1tCisr
KyBiL1NvdXJjZS9XZWJLaXQvUGx1Z2luUHJvY2Vzcy9tYWMvUGx1Z2luUHJvY2Vzc01hYy5tbQpA
QCAtNDcsNiArNDcsNyBAQAogI2ltcG9ydCA8bWFjaC92bV9zdGF0aXN0aWNzLmg+CiAjaW1wb3J0
IDxvYmpjL3J1bnRpbWUuaD4KICNpbXBvcnQgPHBhbC9zcGkvbWFjL0hJVG9vbGJveFNQSS5oPgor
I2ltcG9ydCA8cGFsL3NwaS9tYWMvTlNXaW5kb3dTUEkuaD4KICNpbXBvcnQgPHN5c2V4aXRzLmg+
CiAjaW1wb3J0IDx3dGYvSGFzaFNldC5oPgogI2ltcG9ydCA8d3RmL05ldmVyRGVzdHJveWVkLmg+
CkBAIC00NDEsMTIgKzQ0MiwxMiBAQCBzdGF0aWMgdm9pZCBpbml0aWFsaXplQ29jb2FPdmVycmlk
ZXMoKQogICAgIE5TTm90aWZpY2F0aW9uQ2VudGVyICpkZWZhdWx0Q2VudGVyID0gW05TTm90aWZp
Y2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdOwogCiAgICAgLy8gVHJhY2sgd2hlbiBhbnkgQ29j
b2Egd2luZG93IGlzIGFib3V0IHRvIGJlIGJlIHNob3duLgotICAgIGlkIG9yZGVyT25TY3JlZW5P
YnNlcnZlciA9IFtkZWZhdWx0Q2VudGVyIGFkZE9ic2VydmVyRm9yTmFtZTpXS1dpbmRvd1dpbGxP
cmRlck9uU2NyZWVuTm90aWZpY2F0aW9uKCkKKyAgICBpZCBvcmRlck9uU2NyZWVuT2JzZXJ2ZXIg
PSBbZGVmYXVsdENlbnRlciBhZGRPYnNlcnZlckZvck5hbWU6TlNXaW5kb3dXaWxsT3JkZXJPblNj
cmVlbk5vdGlmaWNhdGlvbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIG9iamVjdDpuaWwKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcXVldWU6bmlsCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzaW5nQmxvY2s6
XihOU05vdGlmaWNhdGlvbiAqbm90aWZpY2F0aW9uKSB7IGZ1bGxzY3JlZW5XaW5kb3dUcmFja2Vy
KCkud2luZG93U2hvd24oW25vdGlmaWNhdGlvbiBvYmplY3RdKTsgfV07CiAgICAgLy8gVHJhY2sg
d2hlbiBhbnkgQ29jb2Egd2luZG93IGlzIGFib3V0IHRvIGJlIGhpZGRlbi4KLSAgICBpZCBvcmRl
ck9mZlNjcmVlbk9ic2VydmVyID0gW2RlZmF1bHRDZW50ZXIgYWRkT2JzZXJ2ZXJGb3JOYW1lOldL
V2luZG93V2lsbE9yZGVyT2ZmU2NyZWVuTm90aWZpY2F0aW9uKCkKKyAgICBpZCBvcmRlck9mZlNj
cmVlbk9ic2VydmVyID0gW2RlZmF1bHRDZW50ZXIgYWRkT2JzZXJ2ZXJGb3JOYW1lOk5TV2luZG93
V2lsbE9yZGVyT2ZmU2NyZWVuTm90aWZpY2F0aW9uCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9iamVjdDpuaWwKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHF1ZXVlOm5p
bAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHVzaW5nQmxvY2s6XihOU05vdGlmaWNhdGlvbiAqbm90aWZpY2F0aW9uKSB7IGZ1bGxzY3JlZW5X
aW5kb3dUcmFja2VyKCkud2luZG93SGlkZGVuKFtub3RpZmljYXRpb24gb2JqZWN0XSk7IH1dOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvbWFjL1dlYkV2ZW50RmFjdG9yeS5tbSBi
L1NvdXJjZS9XZWJLaXQvU2hhcmVkL21hYy9XZWJFdmVudEZhY3RvcnkubW0KaW5kZXggNzdhYWM1
M2RjY2JmYTBmOWFkMmI4ODE1MWMzNTkzZTdiNjIyYWNjNi4uMGRiM2JlOGM2NDc0Yzc2MzI5ODVm
ZTNlYTIyMTViNDhjNmFmYzA1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvbWFj
L1dlYkV2ZW50RmFjdG9yeS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9tYWMvV2ViRXZl
bnRGYWN0b3J5Lm1tCkBAIC0zODUsNyArMzg1LDcgQEAgV2ViV2hlZWxFdmVudCBXZWJFdmVudEZh
Y3Rvcnk6OmNyZWF0ZVdlYldoZWVsRXZlbnQoTlNFdmVudCAqZXZlbnQsIE5TVmlldyAqd2luZG8K
ICAgICBmbG9hdCB3aGVlbFRpY2tzWCA9IDA7CiAgICAgZmxvYXQgd2hlZWxUaWNrc1kgPSAwOwog
Ci0gICAgV0tHZXRXaGVlbEV2ZW50RGVsdGFzKGV2ZW50LCAmZGVsdGFYLCAmZGVsdGFZLCAmY29u
dGludW91cyk7CisgICAgZ2V0V2hlZWxFdmVudERlbHRhcyhldmVudCwgZGVsdGFYLCBkZWx0YVks
IGNvbnRpbnVvdXMpOwogICAgIAogICAgIGlmIChjb250aW51b3VzKSB7CiAgICAgICAgIC8vIHNt
b290aCBzY3JvbGwgZXZlbnRzCkBAIC00MzMsNyArNDMzLDcgQEAgV2ViS2V5Ym9hcmRFdmVudCBX
ZWJFdmVudEZhY3Rvcnk6OmNyZWF0ZVdlYktleWJvYXJkRXZlbnQoTlNFdmVudCAqZXZlbnQsIGJv
b2wgaGEKICAgICBTdHJpbmcga2V5SWRlbnRpZmllciAgICAgICAgICAgID0ga2V5SWRlbnRpZmll
ckZvcktleUV2ZW50KGV2ZW50KTsKICAgICBpbnQgd2luZG93c1ZpcnR1YWxLZXlDb2RlICAgICAg
ID0gd2luZG93c0tleUNvZGVGb3JLZXlFdmVudChldmVudCk7CiAgICAgaW50IG5hdGl2ZVZpcnR1
YWxLZXlDb2RlICAgICAgICA9IFtldmVudCBrZXlDb2RlXTsKLSAgICBpbnQgbWFjQ2hhckNvZGUg
ICAgICAgICAgICAgICAgID0gV0tHZXROU0V2ZW50S2V5Q2hhcihldmVudCk7CisgICAgaW50IG1h
Y0NoYXJDb2RlICAgICAgICAgICAgICAgICA9IGtleUNoYXJGb3JFdmVudChldmVudCk7CiAgICAg
Ym9vbCBhdXRvUmVwZWF0ICAgICAgICAgICAgICAgICA9IFtldmVudCB0eXBlXSAhPSBOU0V2ZW50
VHlwZUZsYWdzQ2hhbmdlZCAmJiBbZXZlbnQgaXNBUmVwZWF0XTsKICAgICBib29sIGlzS2V5cGFk
ICAgICAgICAgICAgICAgICAgID0gaXNLZXlwYWRFdmVudChldmVudCk7CiAgICAgYm9vbCBpc1N5
c3RlbUtleSAgICAgICAgICAgICAgICA9IGZhbHNlOyAvLyBTeXN0ZW1LZXkgaXMgYWx3YXlzIGZh
bHNlIG9uIHRoZSBNYWMuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMv
V0tUZXh0SW5wdXRXaW5kb3dDb250cm9sbGVyLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
bWFjL1dLVGV4dElucHV0V2luZG93Q29udHJvbGxlci5tbQppbmRleCAxMmExNTFlMzFiYTc4NjIy
YWZjNDdlZTk1MzBiZDg2MjFhY2Q5ODBjLi5iNDg4NTYwYjA3ZjA5ZTc5N2M4ZWY5MmRjYWMwOGRi
M2U0OWIxMTdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMvV0tUZXh0
SW5wdXRXaW5kb3dDb250cm9sbGVyLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL21h
Yy9XS1RleHRJbnB1dFdpbmRvd0NvbnRyb2xsZXIubW0KQEAgLTI5LDYgKzI5LDcgQEAKICNpZiBV
U0UoQVBQS0lUKQogCiAjaW1wb3J0IDxXZWJLaXRTeXN0ZW1JbnRlcmZhY2UuaD4KKyNpbXBvcnQg
PHBhbC9zeXN0ZW0vbWFjL1dlYlBhbmVsLmg+CiAKIEBpbnRlcmZhY2UgV0tUZXh0SW5wdXRWaWV3
IDogTlNUZXh0VmlldyB7CiB9CkBAIC00Nyw3ICs0OCw3IEBAIC0gKE5TQXJyYXkgKil2YWxpZEF0
dHJpYnV0ZXNGb3JNYXJrZWRUZXh0CiAKIEBlbmQKIAotQGludGVyZmFjZSBXS1RleHRJbnB1dFBh
bmVsIDogTlNQYW5lbCB7CitAaW50ZXJmYWNlIFdLVGV4dElucHV0UGFuZWwgOiBXZWJQYW5lbCB7
CiAgICAgTlNUZXh0VmlldyAqX2lucHV0VGV4dFZpZXc7CiB9CiAKQEAgLTc0LDcgKzc1LDcgQEAg
LSAodm9pZClkZWFsbG9jCiAKIC0gKGlkKWluaXQKIHsKLSAgICBzZWxmID0gW3N1cGVyIGluaXRX
aXRoQ29udGVudFJlY3Q6TlNaZXJvUmVjdCBzdHlsZU1hc2s6V0tHZXRJbnB1dFBhbmVsV2luZG93
U3R5bGUoKSBiYWNraW5nOk5TQmFja2luZ1N0b3JlQnVmZmVyZWQgZGVmZXI6WUVTXTsKKyAgICBz
ZWxmID0gW3N1cGVyIGluaXRdOwogICAgIGlmICghc2VsZikKICAgICAgICAgcmV0dXJuIG5pbDsK
ICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9tYWMvV2ViU3lzdGVtSW50ZXJmYWNlLm1tIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dl
YkNvcmVTdXBwb3J0L21hYy9XZWJTeXN0ZW1JbnRlcmZhY2UubW0KaW5kZXggNDRkYzdlY2IzNjIw
ZThmNDUxNDJlYjM3Yzc4NzVhZGNiM2I5NDEyYi4uZDE4YTQ0MGRkNzI1MzljNmE1Njk0Yjc0Njdm
OGE2OTE4ODUxZDk5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNv
cmVTdXBwb3J0L21hYy9XZWJTeXN0ZW1JbnRlcmZhY2UubW0KKysrIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L21hYy9XZWJTeXN0ZW1JbnRlcmZhY2UubW0KQEAgLTUy
LDcgKzUyLDYgQEAgdm9pZCBJbml0V2ViQ29yZVN5c3RlbUludGVyZmFjZSh2b2lkKQogI2VuZGlm
CiAgICAgICAgIElOSVQoQ0dDb250ZXh0SXNQREZDb250ZXh0KTsKICNpZiAhUExBVEZPUk0oSU9T
KQotICAgICAgICBJTklUKEdldFdoZWVsRXZlbnREZWx0YXMpOwogICAgICAgICBJTklUKEdldE5T
RXZlbnRLZXlDaGFyKTsKICAgICAgICAgSU5JVChIaXRUZXN0TWVkaWFVSVBhcnQpOwogICAgICAg
ICBJTklUKE1lYXN1cmVNZWRpYVVJUGFydCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVn
YWN5L21hYy9QbHVnaW5zL0hvc3RlZC9OZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJveHkubW0gYi9T
b3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL0hvc3RlZC9OZXRzY2FwZVBsdWdpbkluc3Rh
bmNlUHJveHkubW0KaW5kZXggYWU0MWJjMTZjMzNkNjk2NGY3NGM3NmZhMjQyZmI4OTJhMTQ5MWZk
NS4uMDE3ZmE5ZTZiOTliMWE0OGE5YjMzYmE3MTM2ODM3ZDVmYTQ2MzdiYiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9Ib3N0ZWQvTmV0c2NhcGVQbHVnaW5JbnN0
YW5jZVByb3h5Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMvSG9zdGVk
L05ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eS5tbQpAQCAtNTQsMTAgKzU0LDExIEBACiAjaW1w
b3J0IDxXZWJDb3JlL0ZyYW1lLmg+CiAjaW1wb3J0IDxXZWJDb3JlL0ZyYW1lTG9hZGVyLmg+CiAj
aW1wb3J0IDxXZWJDb3JlL0ZyYW1lVHJlZS5oPgotI2ltcG9ydCA8V2ViQ29yZS9VUkwuaD4KKyNp
bXBvcnQgPFdlYkNvcmUvUGxhdGZvcm1FdmVudEZhY3RvcnlNYWMuaD4KICNpbXBvcnQgPFdlYkNv
cmUvUHJveHlTZXJ2ZXIuaD4KICNpbXBvcnQgPFdlYkNvcmUvU2VjdXJpdHlPcmlnaW4uaD4KICNp
bXBvcnQgPFdlYkNvcmUvU2NyaXB0Q29udHJvbGxlci5oPgorI2ltcG9ydCA8V2ViQ29yZS9VUkwu
aD4KICNpbXBvcnQgPFdlYkNvcmUvVXNlckdlc3R1cmVJbmRpY2F0b3IuaD4KICNpbXBvcnQgPFdl
YkNvcmUvbnBydW50aW1lX2ltcGwuaD4KICNpbXBvcnQgPFdlYkNvcmUvcnVudGltZV9vYmplY3Qu
aD4KQEAgLTQ1OSw3ICs0NjAsNyBAQCB2b2lkIE5ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eTo6
a2V5RXZlbnQoTlNWaWV3ICpwbHVnaW5WaWV3LCBOU0V2ZW50ICpldmVudCwgTgogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGUsIFtldmVudCBtb2RpZmllckZsYWdzXSwg
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3RfY2FzdDxjaGFyKj4o
cmVpbnRlcnByZXRfY2FzdDxjb25zdCBjaGFyKj4oW2NoYXJhY3RlcnNEYXRhIGJ5dGVzXSkpLCBb
Y2hhcmFjdGVyc0RhdGEgbGVuZ3RoXSwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgY29uc3RfY2FzdDxjaGFyKj4ocmVpbnRlcnByZXRfY2FzdDxjb25zdCBjaGFyKj4oW2No
YXJhY3RlcnNJZ25vcmluZ01vZGlmaWVyc0RhdGEgYnl0ZXNdKSksIFtjaGFyYWN0ZXJzSWdub3Jp
bmdNb2RpZmllcnNEYXRhIGxlbmd0aF0sIAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFtldmVudCBpc0FSZXBlYXRdLCBbZXZlbnQga2V5Q29kZV0sIFdLR2V0TlNFdmVudEtl
eUNoYXIoZXZlbnQpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZXZl
bnQgaXNBUmVwZWF0XSwgW2V2ZW50IGtleUNvZGVdLCBrZXlDaGFyRm9yRXZlbnQoZXZlbnQpKTsK
IH0KIAogdm9pZCBOZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJveHk6OnN5bnRoZXRpY0tleURvd25X
aXRoQ29tbWFuZE1vZGlmaWVyKGludCBrZXlDb2RlLCBjaGFyIGNoYXJhY3RlcikKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMvSG9zdGVkL1dlYlRleHRJbnB1dFdp
bmRvd0NvbnRyb2xsZXIubSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMvSG9zdGVk
L1dlYlRleHRJbnB1dFdpbmRvd0NvbnRyb2xsZXIubQppbmRleCAwMDQwMjkzYjYyZGIzYjhmYjQy
Y2Q1ZDM2ODU0NmY1YzQ5YTlhOGY0Li4wOGE3MTE1MWU2OWRhMzE3NWExYmQ2ZjViMjc2OTljNzdj
ODg3ZjlkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL0hvc3Rl
ZC9XZWJUZXh0SW5wdXRXaW5kb3dDb250cm9sbGVyLm0KKysrIGIvU291cmNlL1dlYktpdExlZ2Fj
eS9tYWMvUGx1Z2lucy9Ib3N0ZWQvV2ViVGV4dElucHV0V2luZG93Q29udHJvbGxlci5tCkBAIC0y
OCw2ICsyOCw3IEBACiAjaW1wb3J0ICJXZWJUZXh0SW5wdXRXaW5kb3dDb250cm9sbGVyLmgiCiAK
ICNpbXBvcnQgPFdlYktpdFN5c3RlbUludGVyZmFjZS5oPgorI2ltcG9ydCA8cGFsL3N5c3RlbS9t
YWMvV2ViUGFuZWwuaD4KIAogQGludGVyZmFjZSBXZWJUZXh0SW5wdXRWaWV3IDogTlNUZXh0Vmll
dyB7CiB9CkBAIC00Niw3ICs0Nyw3IEBAIC0gKE5TQXJyYXkgKil2YWxpZEF0dHJpYnV0ZXNGb3JN
YXJrZWRUZXh0CiAKIEBlbmQKIAotQGludGVyZmFjZSBXZWJUZXh0SW5wdXRQYW5lbCA6IE5TUGFu
ZWwgeworQGludGVyZmFjZSBXZWJUZXh0SW5wdXRQYW5lbCA6IFdlYlBhbmVsIHsKICAgICBOU1Rl
eHRWaWV3ICpfaW5wdXRUZXh0VmlldzsKIH0KIApAQCAtNzAsNyArNzEsNyBAQCAtICh2b2lkKWRl
YWxsb2MKIAogLSAoaWQpaW5pdAogewotICAgIHNlbGYgPSBbc3VwZXIgaW5pdFdpdGhDb250ZW50
UmVjdDpOU1plcm9SZWN0IHN0eWxlTWFzazpXS0dldElucHV0UGFuZWxXaW5kb3dTdHlsZSgpIGJh
Y2tpbmc6TlNCYWNraW5nU3RvcmVCdWZmZXJlZCBkZWZlcjpZRVNdOworICAgIHNlbGYgPSBbc3Vw
ZXIgaW5pdF07CiAgICAgaWYgKCFzZWxmKQogICAgICAgICByZXR1cm4gbmlsOwogICAgIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViU3lzdGVt
SW50ZXJmYWNlLm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViQ29yZVN1cHBvcnQvV2Vi
U3lzdGVtSW50ZXJmYWNlLm1tCmluZGV4IGQ0NTUxNmY1ZWVlMWMwODJjOTgyOGQ5ZTc0NzRlYzk2
ODljNDdiNTguLjZkZDBiNTdkZDRiZjM0M2ZlOTY2ZjBmYmE2M2MxMWNmNGYwOGQ5MzIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYlN5c3RlbUlu
dGVyZmFjZS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJDb3JlU3VwcG9ydC9X
ZWJTeXN0ZW1JbnRlcmZhY2UubW0KQEAgLTU1LDcgKzU1LDYgQEAgdm9pZCBJbml0V2ViQ29yZVN5
c3RlbUludGVyZmFjZSh2b2lkKQogICAgIElOSVQoRHJhd0NlbGxGb2N1c1JpbmdXaXRoRnJhbWVB
dFRpbWUpOwogICAgIElOSVQoRHJhd01lZGlhVUlQYXJ0KTsKICAgICBJTklUKERyYXdNZWRpYVNs
aWRlclRyYWNrKTsKLSAgICBJTklUKEdldFdoZWVsRXZlbnREZWx0YXMpOwogICAgIElOSVQoR2V0
TlNFdmVudEtleUNoYXIpOwogICAgIElOSVQoSGl0VGVzdE1lZGlhVUlQYXJ0KTsKICAgICBJTklU
KE1lYXN1cmVNZWRpYVVJUGFydCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21h
Yy9XZWJWaWV3L1dlYkR5bmFtaWNTY3JvbGxCYXJzVmlldy5tbSBiL1NvdXJjZS9XZWJLaXRMZWdh
Y3kvbWFjL1dlYlZpZXcvV2ViRHluYW1pY1Njcm9sbEJhcnNWaWV3Lm1tCmluZGV4IDY4MDRlMjc2
NTI5MjE2NzEwM2M3NWQzZjI5N2U3NGNlYTMyMjU2NDAuLmJiMjBkZTU1MGJhYmYwMjEwMmIwYzQy
MzNhN2Q1N2NiMGU3MmE1ZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dl
YlZpZXcvV2ViRHluYW1pY1Njcm9sbEJhcnNWaWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdh
Y3kvbWFjL1dlYlZpZXcvV2ViRHluYW1pY1Njcm9sbEJhcnNWaWV3Lm1tCkBAIC0zMSw2ICszMSw3
IEBACiAjaW1wb3J0ICJXZWJIVE1MVmlld0ludGVybmFsLmgiCiAjaW1wb3J0IDxXZWJDb3JlL0Zy
YW1lLmg+CiAjaW1wb3J0IDxXZWJDb3JlL0ZyYW1lVmlldy5oPgorI2ltcG9ydCA8V2ViQ29yZS9Q
bGF0Zm9ybUV2ZW50RmFjdG9yeU1hYy5oPgogI2ltcG9ydCA8V2ViS2l0U3lzdGVtSW50ZXJmYWNl
Lmg+CiAKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwpAQCAtNTM1LDcgKzUzNiw3IEBAIC0gKHZv
aWQpc2Nyb2xsV2hlZWw6KE5TRXZlbnQgKilldmVudAogICAgIGZsb2F0IGRlbHRhWDsKICAgICBm
bG9hdCBkZWx0YVk7CiAgICAgQk9PTCBpc0NvbnRpbnVvdXM7Ci0gICAgV0tHZXRXaGVlbEV2ZW50
RGVsdGFzKGV2ZW50LCAmZGVsdGFYLCAmZGVsdGFZLCAmaXNDb250aW51b3VzKTsKKyAgICBnZXRX
aGVlbEV2ZW50RGVsdGFzKGV2ZW50LCBkZWx0YVgsIGRlbHRhWSwgaXNDb250aW51b3VzKTsKIAog
ICAgIE5TRXZlbnRQaGFzZSBtb21lbnR1bVBoYXNlID0gW2V2ZW50IG1vbWVudHVtUGhhc2VdOwog
ICAgIEJPT0wgaXNMYXRjaGluZ0V2ZW50ID0gbW9tZW50dW1QaGFzZSAmIE5TRXZlbnRQaGFzZUJl
Z2FuIHx8IG1vbWVudHVtUGhhc2UgJiBOU0V2ZW50UGhhc2VTdGF0aW9uYXJ5OwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJIVE1MVmlldy5tbSBiL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViSFRNTFZpZXcubW0KaW5kZXggOGZjN2Y2M2M1
ZGM0ZTFlY2Q3ODQxZTVmNGNkYTc0NmI0OWMyZTU4OC4uOGQwZDRkOTI1NDgwY2I4M2MyMGFlODE0
NTU0NTQyMzAwNzRhNjhkYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2Vi
Vmlldy9XZWJIVE1MVmlldy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3
L1dlYkhUTUxWaWV3Lm1tCkBAIC0xMzIsNiArMTMyLDcgQEAKICNpbXBvcnQgPHBhbC9zcGkvY29j
b2EvTlNVUkxGaWxlVHlwZU1hcHBpbmdzU1BJLmg+CiAjaW1wb3J0IDxwYWwvc3BpL21hYy9OU1Nw
ZWxsQ2hlY2tlclNQSS5oPgogI2ltcG9ydCA8cGFsL3NwaS9tYWMvTlNWaWV3U1BJLmg+CisjaW1w
b3J0IDxwYWwvc3BpL21hYy9OU1dpbmRvd1NQSS5oPgogI2ltcG9ydCA8cnVudGltZS9Jbml0aWFs
aXplVGhyZWFkaW5nLmg+CiAjaW1wb3J0IDx3dGYvQmxvY2tPYmpDRXhjZXB0aW9ucy5oPgogI2lt
cG9ydCA8d3RmL01haW5UaHJlYWQuaD4KQEAgLTE0MDksOCArMTQxMCw4IEBAIC0gKHZvaWQpX3Jl
bW92ZVdpbmRvd09ic2VydmVycwogICAgIE5TTm90aWZpY2F0aW9uQ2VudGVyICpub3RpZmljYXRp
b25DZW50ZXIgPSBbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl07CiAgICAgW25v
dGlmaWNhdGlvbkNlbnRlciByZW1vdmVPYnNlcnZlcjpzZWxmIG5hbWU6TlNXaW5kb3dEaWRCZWNv
bWVLZXlOb3RpZmljYXRpb24gb2JqZWN0Om5pbF07CiAgICAgW25vdGlmaWNhdGlvbkNlbnRlciBy
ZW1vdmVPYnNlcnZlcjpzZWxmIG5hbWU6TlNXaW5kb3dEaWRSZXNpZ25LZXlOb3RpZmljYXRpb24g
b2JqZWN0Om5pbF07Ci0gICAgW25vdGlmaWNhdGlvbkNlbnRlciByZW1vdmVPYnNlcnZlcjpzZWxm
IG5hbWU6V0tXaW5kb3dXaWxsT3JkZXJPblNjcmVlbk5vdGlmaWNhdGlvbigpIG9iamVjdDp3aW5k
b3ddOwotICAgIFtub3RpZmljYXRpb25DZW50ZXIgcmVtb3ZlT2JzZXJ2ZXI6c2VsZiBuYW1lOldL
V2luZG93V2lsbE9yZGVyT2ZmU2NyZWVuTm90aWZpY2F0aW9uKCkgb2JqZWN0OndpbmRvd107Cisg
ICAgW25vdGlmaWNhdGlvbkNlbnRlciByZW1vdmVPYnNlcnZlcjpzZWxmIG5hbWU6TlNXaW5kb3dX
aWxsT3JkZXJPblNjcmVlbk5vdGlmaWNhdGlvbiBvYmplY3Q6d2luZG93XTsKKyAgICBbbm90aWZp
Y2F0aW9uQ2VudGVyIHJlbW92ZU9ic2VydmVyOnNlbGYgbmFtZTpOU1dpbmRvd1dpbGxPcmRlck9m
ZlNjcmVlbk5vdGlmaWNhdGlvbiBvYmplY3Q6d2luZG93XTsKICAgICBbbm90aWZpY2F0aW9uQ2Vu
dGVyIHJlbW92ZU9ic2VydmVyOnNlbGYgbmFtZTpOU1dpbmRvd1dpbGxDbG9zZU5vdGlmaWNhdGlv
biBvYmplY3Q6d2luZG93XTsKICAgICAKICAgICBfcHJpdmF0ZS0+b2JzZXJ2aW5nV2luZG93Tm90
aWZpY2F0aW9ucyA9IGZhbHNlOwpAQCAtMzQ0OSw4ICszNDUwLDggQEAgLSAodm9pZClhZGRXaW5k
b3dPYnNlcnZlcnMKICAgICBOU05vdGlmaWNhdGlvbkNlbnRlciAqbm90aWZpY2F0aW9uQ2VudGVy
ID0gW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdOwogICAgIFtub3RpZmljYXRp
b25DZW50ZXIgYWRkT2JzZXJ2ZXI6c2VsZiBzZWxlY3RvcjpAc2VsZWN0b3Iod2luZG93RGlkQmVj
b21lS2V5OikgbmFtZTpOU1dpbmRvd0RpZEJlY29tZUtleU5vdGlmaWNhdGlvbiBvYmplY3Q6bmls
XTsKICAgICBbbm90aWZpY2F0aW9uQ2VudGVyIGFkZE9ic2VydmVyOnNlbGYgc2VsZWN0b3I6QHNl
bGVjdG9yKHdpbmRvd0RpZFJlc2lnbktleTopIG5hbWU6TlNXaW5kb3dEaWRSZXNpZ25LZXlOb3Rp
ZmljYXRpb24gb2JqZWN0Om5pbF07Ci0gICAgW25vdGlmaWNhdGlvbkNlbnRlciBhZGRPYnNlcnZl
cjpzZWxmIHNlbGVjdG9yOkBzZWxlY3Rvcih3aW5kb3dXaWxsT3JkZXJPblNjcmVlbjopIG5hbWU6
V0tXaW5kb3dXaWxsT3JkZXJPblNjcmVlbk5vdGlmaWNhdGlvbigpIG9iamVjdDp3aW5kb3ddOwot
ICAgIFtub3RpZmljYXRpb25DZW50ZXIgYWRkT2JzZXJ2ZXI6c2VsZiBzZWxlY3RvcjpAc2VsZWN0
b3Iod2luZG93V2lsbE9yZGVyT2ZmU2NyZWVuOikgbmFtZTpXS1dpbmRvd1dpbGxPcmRlck9mZlNj
cmVlbk5vdGlmaWNhdGlvbigpIG9iamVjdDp3aW5kb3ddOworICAgIFtub3RpZmljYXRpb25DZW50
ZXIgYWRkT2JzZXJ2ZXI6c2VsZiBzZWxlY3RvcjpAc2VsZWN0b3Iod2luZG93V2lsbE9yZGVyT25T
Y3JlZW46KSBuYW1lOk5TV2luZG93V2lsbE9yZGVyT25TY3JlZW5Ob3RpZmljYXRpb24gb2JqZWN0
OndpbmRvd107CisgICAgW25vdGlmaWNhdGlvbkNlbnRlciBhZGRPYnNlcnZlcjpzZWxmIHNlbGVj
dG9yOkBzZWxlY3Rvcih3aW5kb3dXaWxsT3JkZXJPZmZTY3JlZW46KSBuYW1lOk5TV2luZG93V2ls
bE9yZGVyT2ZmU2NyZWVuTm90aWZpY2F0aW9uIG9iamVjdDp3aW5kb3ddOwogICAgIFtub3RpZmlj
YXRpb25DZW50ZXIgYWRkT2JzZXJ2ZXI6c2VsZiBzZWxlY3RvcjpAc2VsZWN0b3Iod2luZG93V2ls
bENsb3NlOikgbmFtZTpOU1dpbmRvd1dpbGxDbG9zZU5vdGlmaWNhdGlvbiBvYmplY3Q6d2luZG93
XTsKICAgICAKICAgICBfcHJpdmF0ZS0+b2JzZXJ2aW5nV2luZG93Tm90aWZpY2F0aW9ucyA9IHRy
dWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXcu
bW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXcubW0KaW5kZXggNDc4
YzIxY2E2MTg5Mjg3MDMyNmFiOGI3ZWZlMjMyMWM3OWQ4YTU1NS4uZmUxOTA1YTVkYTc3NTU0Mzg2
ZDhmOTE4YmQ5NjNmZTBkMDVjYzYyZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9t
YWMvV2ViVmlldy9XZWJWaWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZp
ZXcvV2ViVmlldy5tbQpAQCAtMjExLDcgKzIxMSw5IEBACiAjaW1wb3J0IDxwYWwvc3BpL2NmL0NG
TmV0d29ya1NQSS5oPgogI2ltcG9ydCA8cGFsL3NwaS9jb2NvYS9OU1RvdWNoQmFyU1BJLmg+CiAj
aW1wb3J0IDxwYWwvc3BpL2NvY29hL05TVVJMRmlsZVR5cGVNYXBwaW5nc1NQSS5oPgorI2ltcG9y
dCA8cGFsL3NwaS9tYWMvTlNSZXNwb25kZXJTUEkuaD4KICNpbXBvcnQgPHBhbC9zcGkvbWFjL05T
U3BlbGxDaGVja2VyU1BJLmg+CisjaW1wb3J0IDxwYWwvc3BpL21hYy9OU1dpbmRvd1NQSS5oPgog
I2ltcG9ydCA8cnVudGltZS9BcnJheVByb3RvdHlwZS5oPgogI2ltcG9ydCA8cnVudGltZS9DYXRj
aFNjb3BlLmg+CiAjaW1wb3J0IDxydW50aW1lL0RhdGVJbnN0YW5jZS5oPgpAQCAtNTg2Niw5ICs1
ODY4LDkgQEAgLSAodm9pZClhZGRXaW5kb3dPYnNlcnZlcnNGb3JXaW5kb3c6KE5TV2luZG93ICop
d2luZG93CiAgICAgICAgIFtbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl0gYWRk
T2JzZXJ2ZXI6c2VsZiBzZWxlY3RvcjpAc2VsZWN0b3Iod2luZG93S2V5U3RhdGVDaGFuZ2VkOikK
ICAgICAgICAgICAgIG5hbWU6TlNXaW5kb3dEaWRSZXNpZ25LZXlOb3RpZmljYXRpb24gb2JqZWN0
OndpbmRvd107CiAgICAgICAgIFtbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl0g
YWRkT2JzZXJ2ZXI6c2VsZiBzZWxlY3RvcjpAc2VsZWN0b3IoX3dpbmRvd1dpbGxPcmRlck9uU2Ny
ZWVuOikKLSAgICAgICAgICAgIG5hbWU6V0tXaW5kb3dXaWxsT3JkZXJPblNjcmVlbk5vdGlmaWNh
dGlvbigpIG9iamVjdDp3aW5kb3ddOworICAgICAgICAgICAgbmFtZTpOU1dpbmRvd1dpbGxPcmRl
ck9uU2NyZWVuTm90aWZpY2F0aW9uIG9iamVjdDp3aW5kb3ddOwogICAgICAgICBbW05TTm90aWZp
Y2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdIGFkZE9ic2VydmVyOnNlbGYgc2VsZWN0b3I6QHNl
bGVjdG9yKF93aW5kb3dXaWxsT3JkZXJPZmZTY3JlZW46KQotICAgICAgICAgICAgbmFtZTpXS1dp
bmRvd1dpbGxPcmRlck9mZlNjcmVlbk5vdGlmaWNhdGlvbigpIG9iamVjdDp3aW5kb3ddOworICAg
ICAgICAgICAgbmFtZTpOU1dpbmRvd1dpbGxPcmRlck9mZlNjcmVlbk5vdGlmaWNhdGlvbiBvYmpl
Y3Q6d2luZG93XTsKICAgICAgICAgW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVy
XSBhZGRPYnNlcnZlcjpzZWxmIHNlbGVjdG9yOkBzZWxlY3Rvcihfd2luZG93RGlkQ2hhbmdlQmFj
a2luZ1Byb3BlcnRpZXM6KQogICAgICAgICAgICAgbmFtZTp3aW5kb3dEaWRDaGFuZ2VCYWNraW5n
UHJvcGVydGllc05vdGlmaWNhdGlvbiBvYmplY3Q6d2luZG93XTsKICAgICAgICAgW1tOU05vdGlm
aWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSBhZGRPYnNlcnZlcjpzZWxmIHNlbGVjdG9yOkBz
ZWxlY3Rvcihfd2luZG93RGlkQ2hhbmdlU2NyZWVuOikKQEAgLTU4OTAsOSArNTg5Miw5IEBAIC0g
KHZvaWQpcmVtb3ZlV2luZG93T2JzZXJ2ZXJzCiAgICAgICAgIFtbTlNOb3RpZmljYXRpb25DZW50
ZXIgZGVmYXVsdENlbnRlcl0gcmVtb3ZlT2JzZXJ2ZXI6c2VsZgogICAgICAgICAgICAgbmFtZTpO
U1dpbmRvd0RpZFJlc2lnbktleU5vdGlmaWNhdGlvbiBvYmplY3Q6d2luZG93XTsKICAgICAgICAg
W1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSByZW1vdmVPYnNlcnZlcjpzZWxm
Ci0gICAgICAgICAgICBuYW1lOldLV2luZG93V2lsbE9yZGVyT25TY3JlZW5Ob3RpZmljYXRpb24o
KSBvYmplY3Q6d2luZG93XTsKKyAgICAgICAgICAgIG5hbWU6TlNXaW5kb3dXaWxsT3JkZXJPblNj
cmVlbk5vdGlmaWNhdGlvbiBvYmplY3Q6d2luZG93XTsKICAgICAgICAgW1tOU05vdGlmaWNhdGlv
bkNlbnRlciBkZWZhdWx0Q2VudGVyXSByZW1vdmVPYnNlcnZlcjpzZWxmCi0gICAgICAgICAgICBu
YW1lOldLV2luZG93V2lsbE9yZGVyT2ZmU2NyZWVuTm90aWZpY2F0aW9uKCkgb2JqZWN0OndpbmRv
d107CisgICAgICAgICAgICBuYW1lOk5TV2luZG93V2lsbE9yZGVyT2ZmU2NyZWVuTm90aWZpY2F0
aW9uIG9iamVjdDp3aW5kb3ddOwogICAgICAgICBbW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1
bHRDZW50ZXJdIHJlbW92ZU9ic2VydmVyOnNlbGYKICAgICAgICAgICAgIG5hbWU6d2luZG93RGlk
Q2hhbmdlQmFja2luZ1Byb3BlcnRpZXNOb3RpZmljYXRpb24gb2JqZWN0OndpbmRvd107CiAgICAg
ICAgIFtbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl0gcmVtb3ZlT2JzZXJ2ZXI6
c2VsZgpAQCAtNTkyMyw3ICs1OTI1LDcgQEAgLSAodm9pZCl2aWV3V2lsbE1vdmVUb1dpbmRvdzoo
TlNXaW5kb3cgKil3aW5kb3cKICAgICAgICAgLy8gVGhlIGZvbGxvd2luZyBhcmUgZXhwZW5zaXZl
IGVub3VnaCB0aGF0IHdlIGRvbid0IHdhbnQgdG8gY2FsbCB0aGVtIG92ZXIKICAgICAgICAgLy8g
YW5kIG92ZXIsIHNvIGRvIHRoZW0gd2hlbiB3ZSBtb3ZlIGludG8gYSB3aW5kb3cuCiAgICAgICAg
IFt3aW5kb3cgc2V0QWNjZXB0c01vdXNlTW92ZWRFdmVudHM6WUVTXTsKLSAgICAgICAgV0tTZXRO
U1dpbmRvd1Nob3VsZFBvc3RFdmVudE5vdGlmaWNhdGlvbnMod2luZG93LCBZRVMpOworICAgICAg
ICBbd2luZG93IF9zZXRTaG91bGRQb3N0RXZlbnROb3RpZmljYXRpb25zOllFU107CiAgICAgfSBl
bHNlIGlmICghX3ByaXZhdGUtPmNsb3NlZCkgewogICAgICAgICBfcHJpdmF0ZS0+cGFnZS0+c2V0
Q2FuU3RhcnRNZWRpYShmYWxzZSk7CiAgICAgICAgIF9wcml2YXRlLT5wYWdlLT5zZXRJc0luV2lu
ZG93KGZhbHNlKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>319505</attachid>
            <date>2017-08-31 12:48:05 -0700</date>
            <delta_ts>2017-08-31 17:02:31 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-176175-20170831124804.patch</filename>
            <type>text/plain</type>
            <size>38529</size>
            <attacher name="Andy Estes">aestes</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIxMzgxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzVhYmE3NzU1NjhiNjgz
ZmZjOWVjZWE4MzhlNWFmOGRlMTVjOTY4Ni4uZTA3MTA5MzdiY2NhOGVhMTY1ZWMzZjY0MjM1ZWY5
MTA4OTU5M2E3MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDE3LTA4LTMxICBBbmR5
IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNvbT4KKworICAgICAgICBbTWFjXSBVcHN0cmVhbSBBcHBL
aXQtcmVsYXRlZCBXZWJLaXRTeXN0ZW1JbnRlcmZhY2UgZnVuY3Rpb25zCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzYxNzUKKworICAgICAgICBSZXZp
ZXdlZCBieSBCcmFkeSBFaWRzb24uCisKKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9XZWJDb3Jl
LnhjY29uZmlnOiBBZGRlZCAtT2JqQyB0byBPVEhFUl9MREZMQUdTIHNvIHRoYXQgT2JqZWN0aXZl
LUMgY2xhc3NlcworICAgICAgICBpbiBQQUwgYXJlIGV4cG9ydGVkIGJ5IFdlYkNvcmUgZXZlbiBp
ZiBXZWJDb3JlIGRvZXNuJ3QgdXNlIHRoZW0uCisgICAgICAgICogcGxhdGZvcm0vbWFjL1BsYXRm
b3JtRXZlbnRGYWN0b3J5TWFjLmg6CisgICAgICAgICogcGxhdGZvcm0vbWFjL1BsYXRmb3JtRXZl
bnRGYWN0b3J5TWFjLm1tOgorICAgICAgICAoV2ViQ29yZTo6Z2V0V2hlZWxFdmVudERlbHRhcyk6
CisgICAgICAgIChXZWJDb3JlOjprZXlDaGFyRm9yRXZlbnQpOgorICAgICAgICAoV2ViQ29yZTo6
UGxhdGZvcm1XaGVlbEV2ZW50QnVpbGRlcjo6UGxhdGZvcm1XaGVlbEV2ZW50QnVpbGRlcik6Cisg
ICAgICAgICogcGxhdGZvcm0vbWFjL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2UuaDoKKyAgICAgICAg
KiBwbGF0Zm9ybS9tYWMvV2ViQ29yZVN5c3RlbUludGVyZmFjZS5tbToKKwogMjAxNy0wOC0zMCAg
QW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CiAKICAgICAgICAgW01hY10gVXBzdHJlYW0g
QWNjZXNzaWJpbGl0eS1yZWxhdGVkIFdlYktpdFN5c3RlbUludGVyZmFjZSBmdW5jdGlvbnMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9Q
QUwvQ2hhbmdlTG9nCmluZGV4IDdiNGI2MDFmZTRlNWUxNTBmODE4OTc0NDU3YzY5ZWViOWI2MDEz
NTEuLmQ3YWE1Mzc5ODdlOGU2NzA0MmJjNWM0NTIxNDkzYmE2NDUyZmY4NWIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML0No
YW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDE3LTA4LTMxICBBbmR5IEVzdGVzICA8YWVzdGVz
QGFwcGxlLmNvbT4KKworICAgICAgICBbTWFjXSBVcHN0cmVhbSBBcHBLaXQtcmVsYXRlZCBXZWJL
aXRTeXN0ZW1JbnRlcmZhY2UgZnVuY3Rpb25zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xNzYxNzUKKworICAgICAgICBSZXZpZXdlZCBieSBCcmFkeSBF
aWRzb24uCisKKyAgICAgICAgKiBQQUwueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAg
ICAgKiBwYWwvc3BpL21hYy9ISVRvb2xib3hTUEkuaDoKKyAgICAgICAgKiBwYWwvc3BpL21hYy9O
U1Jlc3BvbmRlclNQSS5oOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9t
YWMvTlNXaW5kb3dTUEkuaC4KKyAgICAgICAgKiBwYWwvc3BpL21hYy9OU1dpbmRvd1NQSS5oOgor
ICAgICAgICAqIHBhbC9zeXN0ZW0vbWFjL1dlYlBhbmVsLmg6IENvcGllZCBmcm9tIFNvdXJjZS9X
ZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9OU1dpbmRvd1NQSS5oLgorICAgICAgICAqIHBhbC9zeXN0
ZW0vbWFjL1dlYlBhbmVsLm1tOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3Nw
aS9tYWMvSElUb29sYm94U1BJLmguCisgICAgICAgICgtW1dlYlBhbmVsIGluaXRdKToKKwogMjAx
Ny0wOC0zMCAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CiAKICAgICAgICAgW01hY10g
VXBzdHJlYW0gQWNjZXNzaWJpbGl0eS1yZWxhdGVkIFdlYktpdFN5c3RlbUludGVyZmFjZSBmdW5j
dGlvbnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktp
dC9DaGFuZ2VMb2cKaW5kZXggYTg2NjZmMzM4NTM0MWQzNTZkN2EwYzcxMzFlYTJhZmY2ODE0YTY4
Yi4uMGVhNWVhYmRhZTk5Y2IwZDE1NjMwNGRhY2M1YTk4MTFmOGE4YWYzNiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwyMCBAQAorMjAxNy0wOC0zMSAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+
CisKKyAgICAgICAgW01hY10gVXBzdHJlYW0gQXBwS2l0LXJlbGF0ZWQgV2ViS2l0U3lzdGVtSW50
ZXJmYWNlIGZ1bmN0aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTc2MTc1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQnJhZHkgRWlkc29uLgorCisg
ICAgICAgICogUGx1Z2luUHJvY2Vzcy9tYWMvUGx1Z2luUHJvY2Vzc01hYy5tbToKKyAgICAgICAg
KFdlYktpdDo6aW5pdGlhbGl6ZUNvY29hT3ZlcnJpZGVzKToKKyAgICAgICAgKiBTaGFyZWQvbWFj
L1dlYkV2ZW50RmFjdG9yeS5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViRXZlbnRGYWN0b3J5Ojpj
cmVhdGVXZWJXaGVlbEV2ZW50KToKKyAgICAgICAgKFdlYktpdDo6V2ViRXZlbnRGYWN0b3J5Ojpj
cmVhdGVXZWJLZXlib2FyZEV2ZW50KToKKyAgICAgICAgKiBVSVByb2Nlc3MvbWFjL1dLVGV4dElu
cHV0V2luZG93Q29udHJvbGxlci5tbToKKyAgICAgICAgKC1bV0tUZXh0SW5wdXRQYW5lbCBpbml0
XSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViU3lzdGVtSW50
ZXJmYWNlLm1tOgorICAgICAgICAoSW5pdFdlYkNvcmVTeXN0ZW1JbnRlcmZhY2UpOgorCiAyMDE3
LTA4LTMwICBBbmR5IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNvbT4KIAogICAgICAgICBbTWFjXSBV
cHN0cmVhbSBBY2Nlc3NpYmlsaXR5LXJlbGF0ZWQgV2ViS2l0U3lzdGVtSW50ZXJmYWNlIGZ1bmN0
aW9ucwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nIGIvU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCmluZGV4IGJkZjVkMzhhZTdlNWI3NjE0MDli
M2QxMDU0ZDg0MzgzODY4OWZiZGEuLmM4NTNmMzgxMDg5NmM2MTk0ZDFhOTliODVhZDRlNTYzMTkw
MWM2MDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZworKysg
Yi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNiBAQAorMjAx
Ny0wOC0zMSAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CisKKyAgICAgICAgW01hY10g
VXBzdHJlYW0gQXBwS2l0LXJlbGF0ZWQgV2ViS2l0U3lzdGVtSW50ZXJmYWNlIGZ1bmN0aW9ucwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc2MTc1CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgQnJhZHkgRWlkc29uLgorCisgICAgICAgICogUGx1Z2lucy9I
b3N0ZWQvTmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5Lm1tOgorICAgICAgICAoV2ViS2l0OjpO
ZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJveHk6OmtleUV2ZW50KToKKyAgICAgICAgKiBQbHVnaW5z
L0hvc3RlZC9XZWJUZXh0SW5wdXRXaW5kb3dDb250cm9sbGVyLm06CisgICAgICAgICgtW1dlYlRl
eHRJbnB1dFBhbmVsIGluaXRdKToKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJTeXN0ZW1J
bnRlcmZhY2UubW06CisgICAgICAgIChJbml0V2ViQ29yZVN5c3RlbUludGVyZmFjZSk6CisgICAg
ICAgICogV2ViVmlldy9XZWJEeW5hbWljU2Nyb2xsQmFyc1ZpZXcubW06CisgICAgICAgICgtW1dl
YkR5bmFtaWNTY3JvbGxCYXJzVmlldyBzY3JvbGxXaGVlbDpdKToKKyAgICAgICAgKiBXZWJWaWV3
L1dlYkhUTUxWaWV3Lm1tOgorICAgICAgICAoLVtXZWJIVE1MVmlldyBfcmVtb3ZlV2luZG93T2Jz
ZXJ2ZXJzXSk6CisgICAgICAgICgtW1dlYkhUTUxWaWV3IGFkZFdpbmRvd09ic2VydmVyc10pOgor
ICAgICAgICAqIFdlYlZpZXcvV2ViVmlldy5tbToKKyAgICAgICAgKC1bV2ViVmlldyBhZGRXaW5k
b3dPYnNlcnZlcnNGb3JXaW5kb3c6XSk6CisgICAgICAgICgtW1dlYlZpZXcgcmVtb3ZlV2luZG93
T2JzZXJ2ZXJzXSk6CisgICAgICAgICgtW1dlYlZpZXcgdmlld1dpbGxNb3ZlVG9XaW5kb3c6XSk6
CisKIDIwMTctMDgtMzAgIEFuZHkgRXN0ZXMgIDxhZXN0ZXNAYXBwbGUuY29tPgogCiAgICAgICAg
IFtNYWNdIFVwc3RyZWFtIEFjY2Vzc2liaWxpdHktcmVsYXRlZCBXZWJLaXRTeXN0ZW1JbnRlcmZh
Y2UgZnVuY3Rpb25zCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9X
ZWJDb3JlLnhjY29uZmlnIGIvU291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvV2ViQ29yZS54
Y2NvbmZpZwppbmRleCAyYTBhY2Y3YWUyNzhjNjA5ODUxODBmOTg2Yzc1MWMzNmRmYmFhZGQ5Li4z
NWZjM2U3OTVmZjhhMjljYjAzMWMwNTkzYzI2YmViY2RkZjNlNDQ3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9XZWJDb3JlLnhjY29uZmlnCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL0NvbmZpZ3VyYXRpb25zL1dlYkNvcmUueGNjb25maWcKQEAgLTc3LDcgKzc3LDcgQEAg
TElCV0VCUlRDX0xJQlJBUllfRElSX1VTRV9PVkVSUklERV9GUkFNRVdPUktTX0RJUl9OTyA9ICQo
V0VCQ09SRV9GUkFNRVdPUktTX0RJUikKIExJQldFQlJUQ19MSUJSQVJZX0RJUl9VU0VfT1ZFUlJJ
REVfRlJBTUVXT1JLU19ESVJfWUVTID0gJChXS19PVkVSUklERV9GUkFNRVdPUktTX0RJUik7CiAK
IE9USEVSX0xERkxBR1MgPSAkKGluaGVyaXRlZCkgJChXS19SRUxPQ0FUQUJMRV9GUkFNRVdPUktf
TERGTEFHUykgJChXS19VTkRFRklORURfU1lNQk9MU19MREZMQUdTKSAkKE9USEVSX0xERkxBR1Nf
UExBVEZPUk0pOwotT1RIRVJfTERGTEFHU19CQVNFID0gLWxzcWxpdGUzIC1sb2JqYyAtbEFOR0xF
IC1mcmFtZXdvcmsgQ29yZUF1ZGlvIC1mcmFtZXdvcmsgTWV0YWwgLWFsbG93YWJsZV9jbGllbnQg
V2ViQ29yZVRlc3RTdXBwb3J0IC1hbGxvd2FibGVfY2xpZW50IFdlYktpdExlZ2FjeTsKK09USEVS
X0xERkxBR1NfQkFTRSA9IC1sc3FsaXRlMyAtbG9iamMgLWxBTkdMRSAtZnJhbWV3b3JrIENvcmVB
dWRpbyAtZnJhbWV3b3JrIE1ldGFsIC1hbGxvd2FibGVfY2xpZW50IFdlYkNvcmVUZXN0U3VwcG9y
dCAtYWxsb3dhYmxlX2NsaWVudCBXZWJLaXRMZWdhY3kgLU9iakM7CiAvLyBGSVhNRTogUmVkdWNl
IHRoZSBudW1iZXIgb2YgYWxsb3dhYmxlX2NsaWVudCA8cmRhcjovL3Byb2JsZW0vMzE4MjM5Njk+
CiBPVEhFUl9MREZMQUdTX0JBU0VfaW9zID0gJChPVEhFUl9MREZMQUdTX0JBU0UpIC1mcmFtZXdv
cmsgQ0ZOZXR3b3JrIC1mcmFtZXdvcmsgQ29yZUdyYXBoaWNzIC1mcmFtZXdvcmsgQ29yZVRleHQg
LWZyYW1ld29yayBGb3VuZGF0aW9uIC1mcmFtZXdvcmsgSW1hZ2VJTyAtZnJhbWV3b3JrIE1vYmls
ZUNvcmVTZXJ2aWNlcyAtZnJhbWV3b3JrIE9wZW5HTEVTIC1sTW9iaWxlR2VzdGFsdCAkKFdLX0lP
U19CSU5DT01QQVRfTERGTEFHUykgLWFsbG93YWJsZV9jbGllbnQgV2ViS2l0IC1hbGxvd2FibGVf
Y2xpZW50IGlUdW5lc1UgLWFsbG93YWJsZV9jbGllbnQgQ2FzYWJsYW5jYSAtYWxsb3dhYmxlX2Ns
aWVudCBSZW1vdGUgLWFsbG93YWJsZV9jbGllbnQgVFZCb29rcyAtYWxsb3dhYmxlX2NsaWVudCBE
dW1wUmVuZGVyVHJlZSAtYWxsb3dhYmxlX2NsaWVudCBXZWJLaXRUZXN0UnVubmVyIC1hbGxvd2Fi
bGVfY2xpZW50IFRlc3RXZWJLaXRBUEk7CiBPVEhFUl9MREZMQUdTX1BMQVRGT1JNW3Nkaz1pcGhv
bmVvcypdID0gJChPVEhFUl9MREZMQUdTX0JBU0VfaW9zKSAtZnJhbWV3b3JrIElPU3VyZmFjZSAt
ZnJhbWV3b3JrIEdyYXBoaWNzU2VydmljZXMgJChMSUJXRUJSVENfTERGTEFHUyk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9T
b3VyY2UvV2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggZDk4
NThmOWVlMmI0MWYwMDU5MzcxYWU5MGNiMmJmZGRkYTNkMGI4OC4uOGRkNWE2YjM2NzkyYTI2MWZi
ZTUzOTkzMDQ5NmY5MTc0YjdmMDU1MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML1BB
TC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMTAxLDYgKzEwMSw5IEBACiAJCUExMDI2NTg5
MUY1Njc0N0EwMEI0Qzg0NCAvKiBISVRvb2xib3hTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExMDI2NTg4MUY1Njc0N0EwMEI0Qzg0NCAvKiBISVRv
b2xib3hTUEkuaCAqLzsgfTsKIAkJQTEwMjY1OEIxRjU2NzQ4QzAwQjRDODQ0IC8qIFF1aWNrRHJh
d1NQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTEw
MjY1OEExRjU2NzQ4QzAwQjRDODQ0IC8qIFF1aWNrRHJhd1NQSS5oICovOyB9OwogCQlBMTAyNjU4
RTFGNTY3RTlEMDBCNEM4NDQgLyogSElTZXJ2aWNlc1NQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTEwMjY1OEQxRjU2N0U5RDAwQjRDODQ0IC8qIEhJ
U2VydmljZXNTUEkuaCAqLzsgfTsKKwkJQTEwODI2RjExRjU3M0JDQTAwNDc3MkFDIC8qIE5TUmVz
cG9uZGVyU1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBBMTA4MjZGMDFGNTczQkNBMDA0NzcyQUMgLyogTlNSZXNwb25kZXJTUEkuaCAqLzsgfTsKKwkJ
QTEwODI2RjkxRjU3NjI5MjAwNDc3MkFDIC8qIFdlYlBhbmVsLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMTA4MjZGNzFGNTc2MjkyMDA0NzcyQUMgLyog
V2ViUGFuZWwuaCAqLzsgfTsKKwkJQTEwODI2RkExRjU3NjI5MjAwNDc3MkFDIC8qIFdlYlBhbmVs
Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTEwODI2
RjgxRjU3NjI5MjAwNDc3MkFDIC8qIFdlYlBhbmVsLm1tICovOyB9OwogCQlBMUY1NURDRjFGNTUy
OEVDMDBFREI3NUYgLyogTWV0YWRhdGFTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEExRjU1RENFMUY1NTI4RUMwMEVEQjc1RiAvKiBNZXRhZGF0YVNQ
SS5oICovOyB9OwogCQlBMzBENDEyMTFGMEREMEVBMDBCNzE5NTQgLyogS2lsbFJpbmcuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEEzMEQ0MTFFMUYwREQw
RUEwMEI3MTk1NCAvKiBLaWxsUmluZy5oICovOyB9OwogCQlBMzBENDEyMjFGMEREMEVBMDBCNzE5
NTQgLyogS2lsbFJpbmdOb25lLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEEzMEQ0MTFGMUYwREQwRUEwMEI3MTk1NCAvKiBLaWxsUmluZ05vbmUuY3Bw
ICovOyB9OwpAQCAtMjE3LDYgKzIyMCw5IEBACiAJCUExMDI2NTg4MUY1Njc0N0EwMEI0Qzg0NCAv
KiBISVRvb2xib3hTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSElUb29s
Ym94U1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUExMDI2NThBMUY1Njc0OEMw
MEI0Qzg0NCAvKiBRdWlja0RyYXdTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gUXVpY2tEcmF3U1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUExMDI2NThE
MUY1NjdFOUQwMEI0Qzg0NCAvKiBISVNlcnZpY2VzU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhJU2Vy
dmljZXNTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTEwODI2RjAxRjU3M0JD
QTAwNDc3MkFDIC8qIE5TUmVzcG9uZGVyU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5TUmVzcG9uZGVy
U1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExMDgyNkY3MUY1NzYyOTIwMDQ3
NzJBQyAvKiBXZWJQYW5lbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJQYW5lbC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlBMTA4MjZGODFGNTc2MjkyMDA0NzcyQUMgLyogV2ViUGFuZWwu
bW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJQYW5lbC5tbTsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJQTFGNTVEQ0UxRjU1MjhFQzAwRURCNzVGIC8qIE1ldGFkYXRhU1BJLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IE1ldGFkYXRhU1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CUEzMEQ0MTFFMUYwREQwRUEwMEI3MTk1NCAvKiBLaWxsUmluZy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBLaWxsUmluZy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQlBMzBENDExRjFGMEREMEVBMDBCNzE5NTQgLyogS2lsbFJpbmdOb25lLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEtpbGxSaW5nTm9uZS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CkBAIC0zNTMsNiArMzU5LDcgQEAKIAkJCQkwQzc3ODU3OTFGNDUxMzBG
MDBGNEVCQjYgLyogTlNNZW51U1BJLmggKi8sCiAJCQkJMEM3Nzg1N0ExRjQ1MTMwRjAwRjRFQkI2
IC8qIE5TUGFzdGVib2FyZFNQSS5oICovLAogCQkJCTBDNzc4NTdCMUY0NTEzMEYwMEY0RUJCNiAv
KiBOU1BvcG92ZXJTUEkuaCAqLywKKwkJCQlBMTA4MjZGMDFGNTczQkNBMDA0NzcyQUMgLyogTlNS
ZXNwb25kZXJTUEkuaCAqLywKIAkJCQkwQzc3ODU3QzFGNDUxMzBGMDBGNEVCQjYgLyogTlNTY3Jv
bGxlckltcFNQSS5oICovLAogCQkJCTBDNzc4NTdEMUY0NTEzMEYwMEY0RUJCNiAvKiBOU1Njcm9s
bGluZ0lucHV0RmlsdGVyU1BJLmggKi8sCiAJCQkJMEM3Nzg1N0UxRjQ1MTMwRjAwRjRFQkI2IC8q
IE5TU2Nyb2xsaW5nTW9tZW50dW1DYWxjdWxhdG9yU1BJLmggKi8sCkBAIC00NzMsNiArNDgwLDgg
QEAKIAkJCQlBMzc4OEU5RDFGMDVCNzhFMDA2Nzk0MjUgLyogU291bmRNYWMubW0gKi8sCiAJCQkJ
QTNBQjZFNjIxRjNEMjE3RjAwOUMxNEIxIC8qIFN5c3RlbVNsZWVwTGlzdGVuZXJNYWMuaCAqLywK
IAkJCQlBM0FCNkU2MzFGM0QyMTdGMDA5QzE0QjEgLyogU3lzdGVtU2xlZXBMaXN0ZW5lck1hYy5t
bSAqLywKKwkJCQlBMTA4MjZGNzFGNTc2MjkyMDA0NzcyQUMgLyogV2ViUGFuZWwuaCAqLywKKwkJ
CQlBMTA4MjZGODFGNTc2MjkyMDA0NzcyQUMgLyogV2ViUGFuZWwubW0gKi8sCiAJCQkpOwogCQkJ
cGF0aCA9IG1hYzsKIAkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CkBAIC01NDYsNiArNTU1LDcg
QEAKIAkJCQkwQzc3ODU5MjFGNDUxMzBGMDBGNEVCQjYgLyogTlNNZW51U1BJLmggaW4gSGVhZGVy
cyAqLywKIAkJCQkwQzc3ODU5MzFGNDUxMzBGMDBGNEVCQjYgLyogTlNQYXN0ZWJvYXJkU1BJLmgg
aW4gSGVhZGVycyAqLywKIAkJCQkwQzc3ODU5NDFGNDUxMzBGMDBGNEVCQjYgLyogTlNQb3BvdmVy
U1BJLmggaW4gSGVhZGVycyAqLywKKwkJCQlBMTA4MjZGMTFGNTczQkNBMDA0NzcyQUMgLyogTlNS
ZXNwb25kZXJTUEkuaCBpbiBIZWFkZXJzICovLAogCQkJCTBDNzc4NTk1MUY0NTEzMEYwMEY0RUJC
NiAvKiBOU1Njcm9sbGVySW1wU1BJLmggaW4gSGVhZGVycyAqLywKIAkJCQkwQzc3ODU5NjFGNDUx
MzBGMDBGNEVCQjYgLyogTlNTY3JvbGxpbmdJbnB1dEZpbHRlclNQSS5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJMEM3Nzg1OTcxRjQ1MTMwRjAwRjRFQkI2IC8qIE5TU2Nyb2xsaW5nTW9tZW50dW1DYWxj
dWxhdG9yU1BJLmggaW4gSGVhZGVycyAqLywKQEAgLTU4MCw2ICs1OTAsNyBAQAogCQkJCTBDNzc4
NUExMUY0NTEzMEYwMEY0RUJCNiAvKiBUVUNhbGxTUEkuaCBpbiBIZWFkZXJzICovLAogCQkJCTBD
NUFGOTIyMUY0M0E0QzcwMDJFQUMwMiAvKiBVSUtpdFNQSS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
MEMyREExNTkxRjNCRUI0OTAwREJDMzE3IC8qIFdlYkZpbHRlckV2YWx1YXRvclNQSS5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQTEwODI2RjkxRjU3NjI5MjAwNDc3MkFDIC8qIFdlYlBhbmVsLmggaW4g
SGVhZGVycyAqLywKIAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5n
ID0gMDsKIAkJfTsKQEAgLTY3OCw2ICs2ODksNyBAQAogCQkJCUEzNzg4RTlDMUYwNUI3ODIwMDY3
OTQyNSAvKiBTb3VuZE5vbmUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTNBQjZFNTcxRjNEMURE
QjAwOUMxNEIxIC8qIFN5c3RlbVNsZWVwTGlzdGVuZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
QTNBQjZFNjUxRjNEMjE3RjAwOUMxNEIxIC8qIFN5c3RlbVNsZWVwTGlzdGVuZXJNYWMubW0gaW4g
U291cmNlcyAqLywKKwkJCQlBMTA4MjZGQTFGNTc2MjkyMDA0NzcyQUMgLyogV2ViUGFuZWwubW0g
aW4gU291cmNlcyAqLywKIAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNz
aW5nID0gMDsKIAkJfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21h
Yy9ISVRvb2xib3hTUEkuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9ISVRvb2xi
b3hTUEkuaAppbmRleCAwMDM0ODc3NzcyZGNjNThmMDJhMTY3OGE3NmNlMmZhMDViOGFmYWNiLi4w
ZmY5MjcwYTMyNWQzODhmYjRhMjcwYWM2OTk5OWExNjNkYjk4Y2E4IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9tYWMvSElUb29sYm94U1BJLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvUEFML3BhbC9zcGkvbWFjL0hJVG9vbGJveFNQSS5oCkBAIC00NSw1ICs0NSw2IEBAIENH
V2luZG93SUQgR2V0TmF0aXZlV2luZG93RnJvbVdpbmRvd1JlZihXaW5kb3dSZWYpOwogT1NTdGF0
dXMgVFNNUHJvY2Vzc1Jhd0tleUV2ZW50KEV2ZW50UmVmKTsKIEV2ZW50UmVmIEdldEN1cnJlbnRF
dmVudCgpOwogQ0ZUeXBlUmVmIFRTTUdldElucHV0U291cmNlUHJvcGVydHkoVFNNSW5wdXRTb3Vy
Y2VSZWYsIFRTTUlucHV0U291cmNlUHJvcGVydHlUYWcpOworT1NTdGF0dXMgR2V0RXZlbnRQYXJh
bWV0ZXIoRXZlbnRSZWYsIEV2ZW50UGFyYW1OYW1lIGluTmFtZSwgRXZlbnRQYXJhbVR5cGUgaW5E
ZXNpcmVkVHlwZSwgRXZlbnRQYXJhbVR5cGUqIG91dEFjdHVhbFR5cGUsIEJ5dGVDb3VudCBpbkJ1
ZmZlclNpemUsIEJ5dGVDb3VudCogb3V0QWN0dWFsU2l6ZSwgdm9pZCogb3V0RGF0YSk7CiAKIFdU
Rl9FWFRFUk5fQ19FTkQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21h
Yy9OU1Jlc3BvbmRlclNQSS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvbWFjL05TUmVz
cG9uZGVyU1BJLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmVkMWE3OTUyN2Y3MmU4YzA3NzEzZDNmZTgyMDIxZDE1
NjA3YmYzZAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21h
Yy9OU1Jlc3BvbmRlclNQSS5oCkBAIC0wLDAgKzEsNDAgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMp
IDIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAor
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIu
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9S
UyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09O
VFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWYgUExB
VEZPUk0oTUFDKQorCisjaWYgVVNFKEFQUExFX0lOVEVSTkFMX1NESykKKworI2ltcG9ydCA8QXBw
S2l0L05TUmVzcG9uZGVyX1ByaXZhdGUuaD4KKworI2Vsc2UKKworQGludGVyZmFjZSBOU1Jlc3Bv
bmRlciAoKQorLSAodm9pZClfc2V0U2hvdWxkUG9zdEV2ZW50Tm90aWZpY2F0aW9uczooQk9PTClw
b3N0Tm90aWZpY2F0aW9uczsKK0BlbmQKKworI2VuZGlmCisKKyNlbmRpZiAvLyBQTEFURk9STShN
QUMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9tYWMvTlNXaW5kb3dT
UEkuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9OU1dpbmRvd1NQSS5oCmluZGV4
IGJhYjg0MDBmMDQ5ZDk0YjkyZGVmZWE5YWU5NTMxNjJmZjIxNTg5NDMuLjdjYjMzOTdiZDk0YjQ5
N2Q4YWIzNjA3MjNmYTNhYjljMzExNjI0ODMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BB
TC9wYWwvc3BpL21hYy9OU1dpbmRvd1NQSS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwv
c3BpL21hYy9OU1dpbmRvd1NQSS5oCkBAIC00Miw5ICs0MiwxNCBAQAogQGVuZAogCiBlbnVtIHsK
KyAgICBOU1NpZGVVdGlsaXR5V2luZG93TWFzayA9IDEgPDwgOSwKKyAgICBOU1NtYWxsV2luZG93
TWFzayA9IDEgPDwgMTAsCiAgICAgX05TQ2FyYm9uV2luZG93TWFzayA9IDEgPDwgMjUsCiB9Owog
CiAjZW5kaWYKIAorZXh0ZXJuIE5TTm90aWZpY2F0aW9uTmFtZSBOU1dpbmRvd1dpbGxPcmRlck9u
U2NyZWVuTm90aWZpY2F0aW9uOworZXh0ZXJuIE5TTm90aWZpY2F0aW9uTmFtZSBOU1dpbmRvd1dp
bGxPcmRlck9mZlNjcmVlbk5vdGlmaWNhdGlvbjsKKwogI2VuZGlmIC8vIFBMQVRGT1JNKE1BQykK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3lzdGVtL21hYy9XZWJQYW5lbC5o
IGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zeXN0ZW0vbWFjL1dlYlBhbmVsLmgKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uOTAzNTE2M2Q5ZGJhZWUzMWQ5ODExMjIyNTE2MmRkMzhiZjg2NTY5ZQotLS0gL2Rldi9udWxs
CisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3lzdGVtL21hYy9XZWJQYW5lbC5oCkBAIC0w
LDAgKzEsMzYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTcgQXBwbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0
OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkg
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
IE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWYgUExBVEZPUk0oTUFDKQorCisjaW1wb3J0IDxB
cHBLaXQvQXBwS2l0Lmg+CisKK1BBTF9FWFBPUlQgQGludGVyZmFjZSBXZWJQYW5lbCA6IE5TUGFu
ZWwKKworLSAoaW5zdGFuY2V0eXBlKWluaXQ7CisKK0BlbmQKKworI2VuZGlmCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3N5c3RlbS9tYWMvV2ViUGFuZWwubW0gYi9Tb3VyY2Uv
V2ViQ29yZS9QQUwvcGFsL3N5c3RlbS9tYWMvV2ViUGFuZWwubW0KbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzE3YmRh
MDJlN2I3ZWIyN2E5YmQyYjU5Nzk1NmY1NDEyZGFjZjEyNgotLS0gL2Rldi9udWxsCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL1BBTC9wYWwvc3lzdGVtL21hYy9XZWJQYW5lbC5tbQpAQCAtMCwwICsxLDQ3
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAq
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICog
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworI2ltcG9ydCAiY29uZmlnLmgiCisjaW1wb3J0ICJXZWJQYW5lbC5o
IgorCisjaWYgUExBVEZPUk0oTUFDKQorCisjaW1wb3J0IDxwYWwvc3BpL21hYy9OU1dpbmRvd1NQ
SS5oPgorCitAaW1wbGVtZW50YXRpb24gV2ViUGFuZWwKKworLSAoaW5zdGFuY2V0eXBlKWluaXQK
K3sKKyNwcmFnbWEgY2xhbmcgZGlhZ25vc3RpYyBwdXNoCisjcHJhZ21hIGNsYW5nIGRpYWdub3N0
aWMgaWdub3JlZCAiLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9ucyIKKyAgICBzdGF0aWMgTlNVSW50
ZWdlciBzdHlsZU1hc2sgPSBOU01pbmlhdHVyaXphYmxlV2luZG93TWFzayB8IE5TQ2xvc2FibGVX
aW5kb3dNYXNrIHwgTlNSZXNpemFibGVXaW5kb3dNYXNrICB8IE5TVGl0bGVkV2luZG93TWFzayB8
IE5TU21hbGxXaW5kb3dNYXNrIHwgTlNTaWRlVXRpbGl0eVdpbmRvd01hc2sgfCBOU1V0aWxpdHlX
aW5kb3dNYXNrOworI3ByYWdtYSBjbGFuZyBkaWFnbm9zdGljIHBvcAorICAgIAorICAgIHJldHVy
biBbc3VwZXIgaW5pdFdpdGhDb250ZW50UmVjdDpOU1plcm9SZWN0IHN0eWxlTWFzazpzdHlsZU1h
c2sgYmFja2luZzpOU0JhY2tpbmdTdG9yZUJ1ZmZlcmVkIGRlZmVyOllFU107Cit9CisKK0BlbmQK
KworI2VuZGlmIC8vIFBMQVRGT1JNKE1BQykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL21hYy9QbGF0Zm9ybUV2ZW50RmFjdG9yeU1hYy5oIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWFjL1BsYXRmb3JtRXZlbnRGYWN0b3J5TWFjLmgKaW5kZXggMjU5YzYwNTBkNjBhNDlm
NDk4ZGM1NDhiN2NlZjMyZjBjNzZhZGU2Yy4uZDIwYTJkOGVlOTBmNGMxODY3Yjk2ZTU5NDkyMTk1
OWM0ZjZjMDI2ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1BsYXRm
b3JtRXZlbnRGYWN0b3J5TWFjLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Bs
YXRmb3JtRXZlbnRGYWN0b3J5TWFjLmgKQEAgLTQ5LDYgKzQ5LDkgQEAgV0VCQ09SRV9FWFBPUlQg
U3RyaW5nIGtleUlkZW50aWZpZXJGb3JLZXlFdmVudChOU0V2ZW50ICopOwogV0VCQ09SRV9FWFBP
UlQgU3RyaW5nIGtleUZvcktleUV2ZW50KE5TRXZlbnQgKik7CiBXRUJDT1JFX0VYUE9SVCBTdHJp
bmcgY29kZUZvcktleUV2ZW50KE5TRXZlbnQgKik7CiBXRUJDT1JFX0VYUE9SVCBkb3VibGUgZXZl
bnRUaW1lU3RhbXBTaW5jZTE5NzAoTlNFdmVudCAqKTsKKyAgICAKK1dFQkNPUkVfRVhQT1JUIHZv
aWQgZ2V0V2hlZWxFdmVudERlbHRhcyhOU0V2ZW50ICosIGZsb2F0JiBkZWx0YVgsIGZsb2F0JiBk
ZWx0YVksIEJPT0wmIGNvbnRpbnVvdXMpOworV0VCQ09SRV9FWFBPUlQgVUludDgga2V5Q2hhckZv
ckV2ZW50KE5TRXZlbnQgKik7CiAKICNlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9tYWMvUGxhdGZvcm1FdmVudEZhY3RvcnlNYWMubW0gYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9tYWMvUGxhdGZvcm1FdmVudEZhY3RvcnlNYWMubW0KaW5kZXggYmMxZTM2N2Zj
NDY5NGVhZjQ2MGFiMGVhNWE0MjMwZDAwMDAxYWM4OS4uZTVlODViYTA4NTg2Y2NlZTk2M2M3YzVk
YmNhN2IyYTgyODZiYzZlYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFj
L1BsYXRmb3JtRXZlbnRGYWN0b3J5TWFjLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L21hYy9QbGF0Zm9ybUV2ZW50RmFjdG9yeU1hYy5tbQpAQCAtMzQsNiArMzQsOCBAQAogI2ltcG9y
dCAiV2luZG93c0tleWJvYXJkQ29kZXMuaCIKICNpbXBvcnQgPEhJVG9vbGJveC9FdmVudHMuaD4K
ICNpbXBvcnQgPG1hY2gvbWFjaF90aW1lLmg+CisjaW1wb3J0IDxwYWwvc3BpL21hYy9ISVRvb2xi
b3hTUEkuaD4KKyNpbXBvcnQgPHBhbC9zcGkvbWFjL05TRXZlbnRTUEkuaD4KICNpbXBvcnQgPHBh
bC9zcGkvbWFjL05TTWVudVNQSS5oPgogI2ltcG9ydCA8d3RmL0FTQ0lJQ1R5cGUuaD4KIApAQCAt
Njc0LDYgKzY3NiwzOSBAQCBzdGF0aWMgaW50IHR5cGVGb3JFdmVudChOU0V2ZW50ICpldmVudCkK
ICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8aW50PihbTlNNZW51IG1lbnVUeXBlRm9yRXZlbnQ6ZXZl
bnRdKTsKIH0KICAgICAKK3ZvaWQgZ2V0V2hlZWxFdmVudERlbHRhcyhOU0V2ZW50ICpldmVudCwg
ZmxvYXQmIGRlbHRhWCwgZmxvYXQmIGRlbHRhWSwgQk9PTCYgY29udGludW91cykKK3sKKyAgICBB
U1NFUlQoZXZlbnQpOworICAgIGlmIChldmVudC5oYXNQcmVjaXNlU2Nyb2xsaW5nRGVsdGFzKSB7
CisgICAgICAgIGRlbHRhWCA9IGV2ZW50LnNjcm9sbGluZ0RlbHRhWDsKKyAgICAgICAgZGVsdGFZ
ID0gZXZlbnQuc2Nyb2xsaW5nRGVsdGFZOworICAgICAgICBjb250aW51b3VzID0gWUVTOworICAg
IH0gZWxzZSB7CisgICAgICAgIGRlbHRhWCA9IGV2ZW50LmRlbHRhWDsKKyAgICAgICAgZGVsdGFZ
ID0gZXZlbnQuZGVsdGFZOworICAgICAgICBjb250aW51b3VzID0gTk87CisgICAgfQorfQorCitV
SW50OCBrZXlDaGFyRm9yRXZlbnQoTlNFdmVudCAqZXZlbnQpCit7CisgICAgRXZlbnRSZWYgZXZl
bnRSZWYgPSBbZXZlbnQgX2V2ZW50UmVmXTsKKyAgICBpZiAoIWV2ZW50UmVmKQorICAgICAgICBy
ZXR1cm4gMDsKKworICAgIEJ5dGVDb3VudCBrZXlDaGFyQ291bnQgPSAwOworICAgIGlmIChHZXRF
dmVudFBhcmFtZXRlcihldmVudFJlZiwga0V2ZW50UGFyYW1LZXlNYWNDaGFyQ29kZXMsIHR5cGVD
aGFyLCAwLCAwLCAma2V5Q2hhckNvdW50LCAwKSAhPSBub0VycikKKyAgICAgICAgcmV0dXJuIDA7
CisgICAgaWYgKGtleUNoYXJDb3VudCAhPSAxKQorICAgICAgICByZXR1cm4gMDsKKworICAgIFVJ
bnQ4IGtleUNoYXIgPSAwOworICAgIGlmIChHZXRFdmVudFBhcmFtZXRlcihldmVudFJlZiwga0V2
ZW50UGFyYW1LZXlNYWNDaGFyQ29kZXMsIHR5cGVDaGFyLCAwLCBzaXplb2Yoa2V5Q2hhciksICZr
ZXlDaGFyQ291bnQsICZrZXlDaGFyKSAhPSBub0VycikKKyAgICAgICAgcmV0dXJuIDA7CisgICAg
CisgICAgcmV0dXJuIGtleUNoYXI7Cit9CisKIGNsYXNzIFBsYXRmb3JtTW91c2VFdmVudEJ1aWxk
ZXIgOiBwdWJsaWMgUGxhdGZvcm1Nb3VzZUV2ZW50IHsKIHB1YmxpYzoKICAgICBQbGF0Zm9ybU1v
dXNlRXZlbnRCdWlsZGVyKE5TRXZlbnQgKmV2ZW50LCBOU0V2ZW50ICpjb3JyZXNwb25kaW5nUHJl
c3N1cmVFdmVudCwgTlNWaWV3ICp3aW5kb3dWaWV3KQpAQCAtNzQ0LDcgKzc3OSw3IEBAIHB1Ymxp
YzoKICAgICAgICAgbV9ncmFudWxhcml0eSA9IFNjcm9sbEJ5UGl4ZWxXaGVlbEV2ZW50OwogCiAg
ICAgICAgIEJPT0wgY29udGludW91czsKLSAgICAgICAgd2tHZXRXaGVlbEV2ZW50RGVsdGFzKGV2
ZW50LCAmbV9kZWx0YVgsICZtX2RlbHRhWSwgJmNvbnRpbnVvdXMpOworICAgICAgICBnZXRXaGVl
bEV2ZW50RGVsdGFzKGV2ZW50LCBtX2RlbHRhWCwgbV9kZWx0YVksIGNvbnRpbnVvdXMpOwogICAg
ICAgICBpZiAoY29udGludW91cykgewogICAgICAgICAgICAgbV93aGVlbFRpY2tzWCA9IG1fZGVs
dGFYIC8gc3RhdGljX2Nhc3Q8ZmxvYXQ+KFNjcm9sbGJhcjo6cGl4ZWxzUGVyTGluZVN0ZXAoKSk7
CiAgICAgICAgICAgICBtX3doZWVsVGlja3NZID0gbV9kZWx0YVkgLyBzdGF0aWNfY2FzdDxmbG9h
dD4oU2Nyb2xsYmFyOjpwaXhlbHNQZXJMaW5lU3RlcCgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlLmggYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9tYWMvV2ViQ29yZVN5c3RlbUludGVyZmFjZS5oCmluZGV4IDkzY2RmZDBj
N2FiMWU5NjgwMTA2Y2E2NDg1NDQ4NTY2Yjc0NDRlNDYuLjhhMTI0ODI3YzA0MDlkNjYzZjc4MWRm
MjdiNGU0M2JjZmFmYmQyMjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21h
Yy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWFjL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2UuaApAQCAtMTM5LDcgKzEzOSw2IEBAIGV4dGVybiB2
b2lkICgqd2tEcmF3TWVkaWFTbGlkZXJUcmFjaykoQ0dDb250ZXh0UmVmIGNvbnRleHQsIENHUmVj
dCByZWN0LCBmbG9hdCB0CiBleHRlcm4gdm9pZCAoKndrRHJhd01lZGlhVUlQYXJ0KShpbnQgcGFy
dCwgQ0dDb250ZXh0UmVmIGNvbnRleHQsIENHUmVjdCByZWN0LCB1bnNpZ25lZCBzdGF0ZSk7CiBl
eHRlcm4gZG91YmxlICgqd2tHZXROU1VSTFJlc3BvbnNlQ2FsY3VsYXRlZEV4cGlyYXRpb24pKE5T
VVJMUmVzcG9uc2UgKnJlc3BvbnNlKTsKIGV4dGVybiBCT09MICgqd2tHZXROU1VSTFJlc3BvbnNl
TXVzdFJldmFsaWRhdGUpKE5TVVJMUmVzcG9uc2UgKnJlc3BvbnNlKTsKLWV4dGVybiB2b2lkICgq
d2tHZXRXaGVlbEV2ZW50RGVsdGFzKShOU0V2ZW50KiwgZmxvYXQqIGRlbHRhWCwgZmxvYXQqIGRl
bHRhWSwgQk9PTCogY29udGludW91cyk7CiBleHRlcm4gVUludDggKCp3a0dldE5TRXZlbnRLZXlD
aGFyKShOU0V2ZW50ICopOwogZXh0ZXJuIEJPT0wgKCp3a0hpdFRlc3RNZWRpYVVJUGFydCkoaW50
IHBhcnQsIENHUmVjdCBib3VuZHMsIENHUG9pbnQgcG9pbnQpOwogZXh0ZXJuIHZvaWQgKCp3a01l
YXN1cmVNZWRpYVVJUGFydCkoaW50IHBhcnQsIENHUmVjdCAqYm91bmRzLCBDR1NpemUgKm5hdHVy
YWxTaXplKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJDb3Jl
U3lzdGVtSW50ZXJmYWNlLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVT
eXN0ZW1JbnRlcmZhY2UubW0KaW5kZXggNjQ5ZDdhNjdjZDY3NjU0YTJhM2UzOTRlOTM1ZjhjNTI2
ZmEzOTI1YS4uMjcyYjU1NTdlMjM5ZjNjMWUxZDQ1YTk0ZmI3YjFlNDUzNDYxN2RmMiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2Uu
bW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVTeXN0ZW1JbnRlcmZh
Y2UubW0KQEAgLTQ4LDcgKzQ4LDYgQEAgdm9pZCAoKndrV2luZG93U2V0QWxwaGEpKE5TV2luZG93
ICosIGZsb2F0KTsKIHZvaWQgKCp3a1dpbmRvd1NldFNjYWxlZEZyYW1lKShOU1dpbmRvdyAqLCBO
U1JlY3QsIE5TUmVjdCk7CiBOU1RpbWVJbnRlcnZhbCAoKndrR2V0TlNVUkxSZXNwb25zZUNhbGN1
bGF0ZWRFeHBpcmF0aW9uKShOU1VSTFJlc3BvbnNlICpyZXNwb25zZSk7CiBCT09MICgqd2tHZXRO
U1VSTFJlc3BvbnNlTXVzdFJldmFsaWRhdGUpKE5TVVJMUmVzcG9uc2UgKnJlc3BvbnNlKTsKLXZv
aWQgKCp3a0dldFdoZWVsRXZlbnREZWx0YXMpKE5TRXZlbnQqLCBmbG9hdCogZGVsdGFYLCBmbG9h
dCogZGVsdGFZLCBCT09MKiBjb250aW51b3VzKTsKIFVJbnQ4ICgqd2tHZXROU0V2ZW50S2V5Q2hh
cikoTlNFdmVudCAqKTsKIHZvaWQgKCp3a1BvcHVwTWVudSkoTlNNZW51KiwgTlNQb2ludCBsb2Nh
dGlvbiwgZmxvYXQgd2lkdGgsIE5TVmlldyosIGludCBzZWxlY3RlZEl0ZW0sIE5TRm9udCosIE5T
Q29udHJvbFNpemUgY29udHJvbFNpemUsIGJvb2wgdXNlc0N1c3RvbUFwcGVhcmFuY2UpOwogdW5z
aWduZWQgKCp3a1FUSW5jbHVkZU9ubHlNb2Rlcm5NZWRpYUZpbGVUeXBlcykodm9pZCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1BsdWdpblByb2Nlc3MvbWFjL1BsdWdpblByb2Nlc3NNYWMu
bW0gYi9Tb3VyY2UvV2ViS2l0L1BsdWdpblByb2Nlc3MvbWFjL1BsdWdpblByb2Nlc3NNYWMubW0K
aW5kZXggZGQ1MzM3MDI0N2YwYTZiNzRhMDFiZmNjOGFhOTZmYTZmZmYzNDQxOC4uZDg2MDM3ODY3
YTJmMWFmYTI1ZWM1MjYzMDZlMTRkOTY0Y2Q3N2U2ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9QbHVnaW5Qcm9jZXNzL21hYy9QbHVnaW5Qcm9jZXNzTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJL
aXQvUGx1Z2luUHJvY2Vzcy9tYWMvUGx1Z2luUHJvY2Vzc01hYy5tbQpAQCAtNDcsNiArNDcsNyBA
QAogI2ltcG9ydCA8bWFjaC92bV9zdGF0aXN0aWNzLmg+CiAjaW1wb3J0IDxvYmpjL3J1bnRpbWUu
aD4KICNpbXBvcnQgPHBhbC9zcGkvbWFjL0hJVG9vbGJveFNQSS5oPgorI2ltcG9ydCA8cGFsL3Nw
aS9tYWMvTlNXaW5kb3dTUEkuaD4KICNpbXBvcnQgPHN5c2V4aXRzLmg+CiAjaW1wb3J0IDx3dGYv
SGFzaFNldC5oPgogI2ltcG9ydCA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00NDEsMTIgKzQ0
MiwxMiBAQCBzdGF0aWMgdm9pZCBpbml0aWFsaXplQ29jb2FPdmVycmlkZXMoKQogICAgIE5TTm90
aWZpY2F0aW9uQ2VudGVyICpkZWZhdWx0Q2VudGVyID0gW05TTm90aWZpY2F0aW9uQ2VudGVyIGRl
ZmF1bHRDZW50ZXJdOwogCiAgICAgLy8gVHJhY2sgd2hlbiBhbnkgQ29jb2Egd2luZG93IGlzIGFi
b3V0IHRvIGJlIGJlIHNob3duLgotICAgIGlkIG9yZGVyT25TY3JlZW5PYnNlcnZlciA9IFtkZWZh
dWx0Q2VudGVyIGFkZE9ic2VydmVyRm9yTmFtZTpXS1dpbmRvd1dpbGxPcmRlck9uU2NyZWVuTm90
aWZpY2F0aW9uKCkKKyAgICBpZCBvcmRlck9uU2NyZWVuT2JzZXJ2ZXIgPSBbZGVmYXVsdENlbnRl
ciBhZGRPYnNlcnZlckZvck5hbWU6TlNXaW5kb3dXaWxsT3JkZXJPblNjcmVlbk5vdGlmaWNhdGlv
bgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIG9iamVjdDpuaWwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgcXVldWU6bmlsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzaW5nQmxvY2s6XihOU05vdGlmaWNhdGlv
biAqbm90aWZpY2F0aW9uKSB7IGZ1bGxzY3JlZW5XaW5kb3dUcmFja2VyKCkud2luZG93U2hvd24o
W25vdGlmaWNhdGlvbiBvYmplY3RdKTsgfV07CiAgICAgLy8gVHJhY2sgd2hlbiBhbnkgQ29jb2Eg
d2luZG93IGlzIGFib3V0IHRvIGJlIGhpZGRlbi4KLSAgICBpZCBvcmRlck9mZlNjcmVlbk9ic2Vy
dmVyID0gW2RlZmF1bHRDZW50ZXIgYWRkT2JzZXJ2ZXJGb3JOYW1lOldLV2luZG93V2lsbE9yZGVy
T2ZmU2NyZWVuTm90aWZpY2F0aW9uKCkKKyAgICBpZCBvcmRlck9mZlNjcmVlbk9ic2VydmVyID0g
W2RlZmF1bHRDZW50ZXIgYWRkT2JzZXJ2ZXJGb3JOYW1lOk5TV2luZG93V2lsbE9yZGVyT2ZmU2Ny
ZWVuTm90aWZpY2F0aW9uCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIG9iamVjdDpuaWwKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHF1ZXVlOm5pbAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzaW5nQmxvY2s6XihO
U05vdGlmaWNhdGlvbiAqbm90aWZpY2F0aW9uKSB7IGZ1bGxzY3JlZW5XaW5kb3dUcmFja2VyKCku
d2luZG93SGlkZGVuKFtub3RpZmljYXRpb24gb2JqZWN0XSk7IH1dOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9TaGFyZWQvbWFjL1dlYkV2ZW50RmFjdG9yeS5tbSBiL1NvdXJjZS9XZWJLaXQv
U2hhcmVkL21hYy9XZWJFdmVudEZhY3RvcnkubW0KaW5kZXggNzdhYWM1M2RjY2JmYTBmOWFkMmI4
ODE1MWMzNTkzZTdiNjIyYWNjNi4uMGRiM2JlOGM2NDc0Yzc2MzI5ODVmZTNlYTIyMTViNDhjNmFm
YzA1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvbWFjL1dlYkV2ZW50RmFjdG9y
eS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9tYWMvV2ViRXZlbnRGYWN0b3J5Lm1tCkBA
IC0zODUsNyArMzg1LDcgQEAgV2ViV2hlZWxFdmVudCBXZWJFdmVudEZhY3Rvcnk6OmNyZWF0ZVdl
YldoZWVsRXZlbnQoTlNFdmVudCAqZXZlbnQsIE5TVmlldyAqd2luZG8KICAgICBmbG9hdCB3aGVl
bFRpY2tzWCA9IDA7CiAgICAgZmxvYXQgd2hlZWxUaWNrc1kgPSAwOwogCi0gICAgV0tHZXRXaGVl
bEV2ZW50RGVsdGFzKGV2ZW50LCAmZGVsdGFYLCAmZGVsdGFZLCAmY29udGludW91cyk7CisgICAg
Z2V0V2hlZWxFdmVudERlbHRhcyhldmVudCwgZGVsdGFYLCBkZWx0YVksIGNvbnRpbnVvdXMpOwog
ICAgIAogICAgIGlmIChjb250aW51b3VzKSB7CiAgICAgICAgIC8vIHNtb290aCBzY3JvbGwgZXZl
bnRzCkBAIC00MzMsNyArNDMzLDcgQEAgV2ViS2V5Ym9hcmRFdmVudCBXZWJFdmVudEZhY3Rvcnk6
OmNyZWF0ZVdlYktleWJvYXJkRXZlbnQoTlNFdmVudCAqZXZlbnQsIGJvb2wgaGEKICAgICBTdHJp
bmcga2V5SWRlbnRpZmllciAgICAgICAgICAgID0ga2V5SWRlbnRpZmllckZvcktleUV2ZW50KGV2
ZW50KTsKICAgICBpbnQgd2luZG93c1ZpcnR1YWxLZXlDb2RlICAgICAgID0gd2luZG93c0tleUNv
ZGVGb3JLZXlFdmVudChldmVudCk7CiAgICAgaW50IG5hdGl2ZVZpcnR1YWxLZXlDb2RlICAgICAg
ICA9IFtldmVudCBrZXlDb2RlXTsKLSAgICBpbnQgbWFjQ2hhckNvZGUgICAgICAgICAgICAgICAg
ID0gV0tHZXROU0V2ZW50S2V5Q2hhcihldmVudCk7CisgICAgaW50IG1hY0NoYXJDb2RlICAgICAg
ICAgICAgICAgICA9IGtleUNoYXJGb3JFdmVudChldmVudCk7CiAgICAgYm9vbCBhdXRvUmVwZWF0
ICAgICAgICAgICAgICAgICA9IFtldmVudCB0eXBlXSAhPSBOU0V2ZW50VHlwZUZsYWdzQ2hhbmdl
ZCAmJiBbZXZlbnQgaXNBUmVwZWF0XTsKICAgICBib29sIGlzS2V5cGFkICAgICAgICAgICAgICAg
ICAgID0gaXNLZXlwYWRFdmVudChldmVudCk7CiAgICAgYm9vbCBpc1N5c3RlbUtleSAgICAgICAg
ICAgICAgICA9IGZhbHNlOyAvLyBTeXN0ZW1LZXkgaXMgYWx3YXlzIGZhbHNlIG9uIHRoZSBNYWMu
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMvV0tUZXh0SW5wdXRXaW5k
b3dDb250cm9sbGVyLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvbWFjL1dLVGV4dElucHV0
V2luZG93Q29udHJvbGxlci5tbQppbmRleCAxMmExNTFlMzFiYTc4NjIyYWZjNDdlZTk1MzBiZDg2
MjFhY2Q5ODBjLi5iNDg4NTYwYjA3ZjA5ZTc5N2M4ZWY5MmRjYWMwOGRiM2U0OWIxMTdiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMvV0tUZXh0SW5wdXRXaW5kb3dDb250
cm9sbGVyLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL21hYy9XS1RleHRJbnB1dFdp
bmRvd0NvbnRyb2xsZXIubW0KQEAgLTI5LDYgKzI5LDcgQEAKICNpZiBVU0UoQVBQS0lUKQogCiAj
aW1wb3J0IDxXZWJLaXRTeXN0ZW1JbnRlcmZhY2UuaD4KKyNpbXBvcnQgPHBhbC9zeXN0ZW0vbWFj
L1dlYlBhbmVsLmg+CiAKIEBpbnRlcmZhY2UgV0tUZXh0SW5wdXRWaWV3IDogTlNUZXh0VmlldyB7
CiB9CkBAIC00Nyw3ICs0OCw3IEBAIC0gKE5TQXJyYXkgKil2YWxpZEF0dHJpYnV0ZXNGb3JNYXJr
ZWRUZXh0CiAKIEBlbmQKIAotQGludGVyZmFjZSBXS1RleHRJbnB1dFBhbmVsIDogTlNQYW5lbCB7
CitAaW50ZXJmYWNlIFdLVGV4dElucHV0UGFuZWwgOiBXZWJQYW5lbCB7CiAgICAgTlNUZXh0Vmll
dyAqX2lucHV0VGV4dFZpZXc7CiB9CiAKQEAgLTc0LDcgKzc1LDcgQEAgLSAodm9pZClkZWFsbG9j
CiAKIC0gKGlkKWluaXQKIHsKLSAgICBzZWxmID0gW3N1cGVyIGluaXRXaXRoQ29udGVudFJlY3Q6
TlNaZXJvUmVjdCBzdHlsZU1hc2s6V0tHZXRJbnB1dFBhbmVsV2luZG93U3R5bGUoKSBiYWNraW5n
Ok5TQmFja2luZ1N0b3JlQnVmZmVyZWQgZGVmZXI6WUVTXTsKKyAgICBzZWxmID0gW3N1cGVyIGlu
aXRdOwogICAgIGlmICghc2VsZikKICAgICAgICAgcmV0dXJuIG5pbDsKICAgICAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViU3lzdGVt
SW50ZXJmYWNlLm1tIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L21h
Yy9XZWJTeXN0ZW1JbnRlcmZhY2UubW0KaW5kZXggNDRkYzdlY2IzNjIwZThmNDUxNDJlYjM3Yzc4
NzVhZGNiM2I5NDEyYi4uZDE4YTQ0MGRkNzI1MzljNmE1Njk0Yjc0NjdmOGE2OTE4ODUxZDk5ZSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L21hYy9X
ZWJTeXN0ZW1JbnRlcmZhY2UubW0KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNv
cmVTdXBwb3J0L21hYy9XZWJTeXN0ZW1JbnRlcmZhY2UubW0KQEAgLTUyLDcgKzUyLDYgQEAgdm9p
ZCBJbml0V2ViQ29yZVN5c3RlbUludGVyZmFjZSh2b2lkKQogI2VuZGlmCiAgICAgICAgIElOSVQo
Q0dDb250ZXh0SXNQREZDb250ZXh0KTsKICNpZiAhUExBVEZPUk0oSU9TKQotICAgICAgICBJTklU
KEdldFdoZWVsRXZlbnREZWx0YXMpOwogICAgICAgICBJTklUKEdldE5TRXZlbnRLZXlDaGFyKTsK
ICAgICAgICAgSU5JVChIaXRUZXN0TWVkaWFVSVBhcnQpOwogICAgICAgICBJTklUKE1lYXN1cmVN
ZWRpYVVJUGFydCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5z
L0hvc3RlZC9OZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJveHkubW0gYi9Tb3VyY2UvV2ViS2l0TGVn
YWN5L21hYy9QbHVnaW5zL0hvc3RlZC9OZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJveHkubW0KaW5k
ZXggYWU0MWJjMTZjMzNkNjk2NGY3NGM3NmZhMjQyZmI4OTJhMTQ5MWZkNS4uMDE3ZmE5ZTZiOTli
MWE0OGE5YjMzYmE3MTM2ODM3ZDVmYTQ2MzdiYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExl
Z2FjeS9tYWMvUGx1Z2lucy9Ib3N0ZWQvTmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5Lm1tCisr
KyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMvSG9zdGVkL05ldHNjYXBlUGx1Z2lu
SW5zdGFuY2VQcm94eS5tbQpAQCAtNTQsMTAgKzU0LDExIEBACiAjaW1wb3J0IDxXZWJDb3JlL0Zy
YW1lLmg+CiAjaW1wb3J0IDxXZWJDb3JlL0ZyYW1lTG9hZGVyLmg+CiAjaW1wb3J0IDxXZWJDb3Jl
L0ZyYW1lVHJlZS5oPgotI2ltcG9ydCA8V2ViQ29yZS9VUkwuaD4KKyNpbXBvcnQgPFdlYkNvcmUv
UGxhdGZvcm1FdmVudEZhY3RvcnlNYWMuaD4KICNpbXBvcnQgPFdlYkNvcmUvUHJveHlTZXJ2ZXIu
aD4KICNpbXBvcnQgPFdlYkNvcmUvU2VjdXJpdHlPcmlnaW4uaD4KICNpbXBvcnQgPFdlYkNvcmUv
U2NyaXB0Q29udHJvbGxlci5oPgorI2ltcG9ydCA8V2ViQ29yZS9VUkwuaD4KICNpbXBvcnQgPFdl
YkNvcmUvVXNlckdlc3R1cmVJbmRpY2F0b3IuaD4KICNpbXBvcnQgPFdlYkNvcmUvbnBydW50aW1l
X2ltcGwuaD4KICNpbXBvcnQgPFdlYkNvcmUvcnVudGltZV9vYmplY3QuaD4KQEAgLTQ1OSw3ICs0
NjAsNyBAQCB2b2lkIE5ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eTo6a2V5RXZlbnQoTlNWaWV3
ICpwbHVnaW5WaWV3LCBOU0V2ZW50ICpldmVudCwgTgogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHR5cGUsIFtldmVudCBtb2RpZmllckZsYWdzXSwgCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3RfY2FzdDxjaGFyKj4ocmVpbnRlcnByZXRfY2Fz
dDxjb25zdCBjaGFyKj4oW2NoYXJhY3RlcnNEYXRhIGJ5dGVzXSkpLCBbY2hhcmFjdGVyc0RhdGEg
bGVuZ3RoXSwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3RfY2Fz
dDxjaGFyKj4ocmVpbnRlcnByZXRfY2FzdDxjb25zdCBjaGFyKj4oW2NoYXJhY3RlcnNJZ25vcmlu
Z01vZGlmaWVyc0RhdGEgYnl0ZXNdKSksIFtjaGFyYWN0ZXJzSWdub3JpbmdNb2RpZmllcnNEYXRh
IGxlbmd0aF0sIAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtldmVudCBp
c0FSZXBlYXRdLCBbZXZlbnQga2V5Q29kZV0sIFdLR2V0TlNFdmVudEtleUNoYXIoZXZlbnQpKTsK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZXZlbnQgaXNBUmVwZWF0XSwg
W2V2ZW50IGtleUNvZGVdLCBrZXlDaGFyRm9yRXZlbnQoZXZlbnQpKTsKIH0KIAogdm9pZCBOZXRz
Y2FwZVBsdWdpbkluc3RhbmNlUHJveHk6OnN5bnRoZXRpY0tleURvd25XaXRoQ29tbWFuZE1vZGlm
aWVyKGludCBrZXlDb2RlLCBjaGFyIGNoYXJhY3RlcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXRMZWdhY3kvbWFjL1BsdWdpbnMvSG9zdGVkL1dlYlRleHRJbnB1dFdpbmRvd0NvbnRyb2xsZXIu
bSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMvSG9zdGVkL1dlYlRleHRJbnB1dFdp
bmRvd0NvbnRyb2xsZXIubQppbmRleCAwMDQwMjkzYjYyZGIzYjhmYjQyY2Q1ZDM2ODU0NmY1YzQ5
YTlhOGY0Li4wOGE3MTE1MWU2OWRhMzE3NWExYmQ2ZjViMjc2OTljNzdjODg3ZjlkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL0hvc3RlZC9XZWJUZXh0SW5wdXRX
aW5kb3dDb250cm9sbGVyLm0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9I
b3N0ZWQvV2ViVGV4dElucHV0V2luZG93Q29udHJvbGxlci5tCkBAIC0yOCw2ICsyOCw3IEBACiAj
aW1wb3J0ICJXZWJUZXh0SW5wdXRXaW5kb3dDb250cm9sbGVyLmgiCiAKICNpbXBvcnQgPFdlYktp
dFN5c3RlbUludGVyZmFjZS5oPgorI2ltcG9ydCA8cGFsL3N5c3RlbS9tYWMvV2ViUGFuZWwuaD4K
IAogQGludGVyZmFjZSBXZWJUZXh0SW5wdXRWaWV3IDogTlNUZXh0VmlldyB7CiB9CkBAIC00Niw3
ICs0Nyw3IEBAIC0gKE5TQXJyYXkgKil2YWxpZEF0dHJpYnV0ZXNGb3JNYXJrZWRUZXh0CiAKIEBl
bmQKIAotQGludGVyZmFjZSBXZWJUZXh0SW5wdXRQYW5lbCA6IE5TUGFuZWwgeworQGludGVyZmFj
ZSBXZWJUZXh0SW5wdXRQYW5lbCA6IFdlYlBhbmVsIHsKICAgICBOU1RleHRWaWV3ICpfaW5wdXRU
ZXh0VmlldzsKIH0KIApAQCAtNzAsNyArNzEsNyBAQCAtICh2b2lkKWRlYWxsb2MKIAogLSAoaWQp
aW5pdAogewotICAgIHNlbGYgPSBbc3VwZXIgaW5pdFdpdGhDb250ZW50UmVjdDpOU1plcm9SZWN0
IHN0eWxlTWFzazpXS0dldElucHV0UGFuZWxXaW5kb3dTdHlsZSgpIGJhY2tpbmc6TlNCYWNraW5n
U3RvcmVCdWZmZXJlZCBkZWZlcjpZRVNdOworICAgIHNlbGYgPSBbc3VwZXIgaW5pdF07CiAgICAg
aWYgKCFzZWxmKQogICAgICAgICByZXR1cm4gbmlsOwogICAgIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdExlZ2FjeS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViU3lzdGVtSW50ZXJmYWNlLm1tIGIv
U291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViU3lzdGVtSW50ZXJmYWNl
Lm1tCmluZGV4IGQ0NTUxNmY1ZWVlMWMwODJjOTgyOGQ5ZTc0NzRlYzk2ODljNDdiNTguLjZkZDBi
NTdkZDRiZjM0M2ZlOTY2ZjBmYmE2M2MxMWNmNGYwOGQ5MzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXRMZWdhY3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYlN5c3RlbUludGVyZmFjZS5tbQorKysg
Yi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJTeXN0ZW1JbnRlcmZh
Y2UubW0KQEAgLTU1LDcgKzU1LDYgQEAgdm9pZCBJbml0V2ViQ29yZVN5c3RlbUludGVyZmFjZSh2
b2lkKQogICAgIElOSVQoRHJhd0NlbGxGb2N1c1JpbmdXaXRoRnJhbWVBdFRpbWUpOwogICAgIElO
SVQoRHJhd01lZGlhVUlQYXJ0KTsKICAgICBJTklUKERyYXdNZWRpYVNsaWRlclRyYWNrKTsKLSAg
ICBJTklUKEdldFdoZWVsRXZlbnREZWx0YXMpOwogICAgIElOSVQoR2V0TlNFdmVudEtleUNoYXIp
OwogICAgIElOSVQoSGl0VGVzdE1lZGlhVUlQYXJ0KTsKICAgICBJTklUKE1lYXN1cmVNZWRpYVVJ
UGFydCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkR5
bmFtaWNTY3JvbGxCYXJzVmlldy5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcv
V2ViRHluYW1pY1Njcm9sbEJhcnNWaWV3Lm1tCmluZGV4IDY4MDRlMjc2NTI5MjE2NzEwM2M3NWQz
ZjI5N2U3NGNlYTMyMjU2NDAuLmJiMjBkZTU1MGJhYmYwMjEwMmIwYzQyMzNhN2Q1N2NiMGU3MmE1
ZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViRHluYW1p
Y1Njcm9sbEJhcnNWaWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcv
V2ViRHluYW1pY1Njcm9sbEJhcnNWaWV3Lm1tCkBAIC0zMSw2ICszMSw3IEBACiAjaW1wb3J0ICJX
ZWJIVE1MVmlld0ludGVybmFsLmgiCiAjaW1wb3J0IDxXZWJDb3JlL0ZyYW1lLmg+CiAjaW1wb3J0
IDxXZWJDb3JlL0ZyYW1lVmlldy5oPgorI2ltcG9ydCA8V2ViQ29yZS9QbGF0Zm9ybUV2ZW50RmFj
dG9yeU1hYy5oPgogI2ltcG9ydCA8V2ViS2l0U3lzdGVtSW50ZXJmYWNlLmg+CiAKIHVzaW5nIG5h
bWVzcGFjZSBXZWJDb3JlOwpAQCAtNTM1LDcgKzUzNiw3IEBAIC0gKHZvaWQpc2Nyb2xsV2hlZWw6
KE5TRXZlbnQgKilldmVudAogICAgIGZsb2F0IGRlbHRhWDsKICAgICBmbG9hdCBkZWx0YVk7CiAg
ICAgQk9PTCBpc0NvbnRpbnVvdXM7Ci0gICAgV0tHZXRXaGVlbEV2ZW50RGVsdGFzKGV2ZW50LCAm
ZGVsdGFYLCAmZGVsdGFZLCAmaXNDb250aW51b3VzKTsKKyAgICBnZXRXaGVlbEV2ZW50RGVsdGFz
KGV2ZW50LCBkZWx0YVgsIGRlbHRhWSwgaXNDb250aW51b3VzKTsKIAogICAgIE5TRXZlbnRQaGFz
ZSBtb21lbnR1bVBoYXNlID0gW2V2ZW50IG1vbWVudHVtUGhhc2VdOwogICAgIEJPT0wgaXNMYXRj
aGluZ0V2ZW50ID0gbW9tZW50dW1QaGFzZSAmIE5TRXZlbnRQaGFzZUJlZ2FuIHx8IG1vbWVudHVt
UGhhc2UgJiBOU0V2ZW50UGhhc2VTdGF0aW9uYXJ5OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dExlZ2FjeS9tYWMvV2ViVmlldy9XZWJIVE1MVmlldy5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kv
bWFjL1dlYlZpZXcvV2ViSFRNTFZpZXcubW0KaW5kZXggOGZjN2Y2M2M1ZGM0ZTFlY2Q3ODQxZTVm
NGNkYTc0NmI0OWMyZTU4OC4uOGQwZDRkOTI1NDgwY2I4M2MyMGFlODE0NTU0NTQyMzAwNzRhNjhk
YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJIVE1MVmll
dy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkhUTUxWaWV3Lm1t
CkBAIC0xMzIsNiArMTMyLDcgQEAKICNpbXBvcnQgPHBhbC9zcGkvY29jb2EvTlNVUkxGaWxlVHlw
ZU1hcHBpbmdzU1BJLmg+CiAjaW1wb3J0IDxwYWwvc3BpL21hYy9OU1NwZWxsQ2hlY2tlclNQSS5o
PgogI2ltcG9ydCA8cGFsL3NwaS9tYWMvTlNWaWV3U1BJLmg+CisjaW1wb3J0IDxwYWwvc3BpL21h
Yy9OU1dpbmRvd1NQSS5oPgogI2ltcG9ydCA8cnVudGltZS9Jbml0aWFsaXplVGhyZWFkaW5nLmg+
CiAjaW1wb3J0IDx3dGYvQmxvY2tPYmpDRXhjZXB0aW9ucy5oPgogI2ltcG9ydCA8d3RmL01haW5U
aHJlYWQuaD4KQEAgLTE0MDksOCArMTQxMCw4IEBAIC0gKHZvaWQpX3JlbW92ZVdpbmRvd09ic2Vy
dmVycwogICAgIE5TTm90aWZpY2F0aW9uQ2VudGVyICpub3RpZmljYXRpb25DZW50ZXIgPSBbTlNO
b3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl07CiAgICAgW25vdGlmaWNhdGlvbkNlbnRl
ciByZW1vdmVPYnNlcnZlcjpzZWxmIG5hbWU6TlNXaW5kb3dEaWRCZWNvbWVLZXlOb3RpZmljYXRp
b24gb2JqZWN0Om5pbF07CiAgICAgW25vdGlmaWNhdGlvbkNlbnRlciByZW1vdmVPYnNlcnZlcjpz
ZWxmIG5hbWU6TlNXaW5kb3dEaWRSZXNpZ25LZXlOb3RpZmljYXRpb24gb2JqZWN0Om5pbF07Ci0g
ICAgW25vdGlmaWNhdGlvbkNlbnRlciByZW1vdmVPYnNlcnZlcjpzZWxmIG5hbWU6V0tXaW5kb3dX
aWxsT3JkZXJPblNjcmVlbk5vdGlmaWNhdGlvbigpIG9iamVjdDp3aW5kb3ddOwotICAgIFtub3Rp
ZmljYXRpb25DZW50ZXIgcmVtb3ZlT2JzZXJ2ZXI6c2VsZiBuYW1lOldLV2luZG93V2lsbE9yZGVy
T2ZmU2NyZWVuTm90aWZpY2F0aW9uKCkgb2JqZWN0OndpbmRvd107CisgICAgW25vdGlmaWNhdGlv
bkNlbnRlciByZW1vdmVPYnNlcnZlcjpzZWxmIG5hbWU6TlNXaW5kb3dXaWxsT3JkZXJPblNjcmVl
bk5vdGlmaWNhdGlvbiBvYmplY3Q6d2luZG93XTsKKyAgICBbbm90aWZpY2F0aW9uQ2VudGVyIHJl
bW92ZU9ic2VydmVyOnNlbGYgbmFtZTpOU1dpbmRvd1dpbGxPcmRlck9mZlNjcmVlbk5vdGlmaWNh
dGlvbiBvYmplY3Q6d2luZG93XTsKICAgICBbbm90aWZpY2F0aW9uQ2VudGVyIHJlbW92ZU9ic2Vy
dmVyOnNlbGYgbmFtZTpOU1dpbmRvd1dpbGxDbG9zZU5vdGlmaWNhdGlvbiBvYmplY3Q6d2luZG93
XTsKICAgICAKICAgICBfcHJpdmF0ZS0+b2JzZXJ2aW5nV2luZG93Tm90aWZpY2F0aW9ucyA9IGZh
bHNlOwpAQCAtMzQ0OSw4ICszNDUwLDggQEAgLSAodm9pZClhZGRXaW5kb3dPYnNlcnZlcnMKICAg
ICBOU05vdGlmaWNhdGlvbkNlbnRlciAqbm90aWZpY2F0aW9uQ2VudGVyID0gW05TTm90aWZpY2F0
aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdOwogICAgIFtub3RpZmljYXRpb25DZW50ZXIgYWRkT2Jz
ZXJ2ZXI6c2VsZiBzZWxlY3RvcjpAc2VsZWN0b3Iod2luZG93RGlkQmVjb21lS2V5OikgbmFtZTpO
U1dpbmRvd0RpZEJlY29tZUtleU5vdGlmaWNhdGlvbiBvYmplY3Q6bmlsXTsKICAgICBbbm90aWZp
Y2F0aW9uQ2VudGVyIGFkZE9ic2VydmVyOnNlbGYgc2VsZWN0b3I6QHNlbGVjdG9yKHdpbmRvd0Rp
ZFJlc2lnbktleTopIG5hbWU6TlNXaW5kb3dEaWRSZXNpZ25LZXlOb3RpZmljYXRpb24gb2JqZWN0
Om5pbF07Ci0gICAgW25vdGlmaWNhdGlvbkNlbnRlciBhZGRPYnNlcnZlcjpzZWxmIHNlbGVjdG9y
OkBzZWxlY3Rvcih3aW5kb3dXaWxsT3JkZXJPblNjcmVlbjopIG5hbWU6V0tXaW5kb3dXaWxsT3Jk
ZXJPblNjcmVlbk5vdGlmaWNhdGlvbigpIG9iamVjdDp3aW5kb3ddOwotICAgIFtub3RpZmljYXRp
b25DZW50ZXIgYWRkT2JzZXJ2ZXI6c2VsZiBzZWxlY3RvcjpAc2VsZWN0b3Iod2luZG93V2lsbE9y
ZGVyT2ZmU2NyZWVuOikgbmFtZTpXS1dpbmRvd1dpbGxPcmRlck9mZlNjcmVlbk5vdGlmaWNhdGlv
bigpIG9iamVjdDp3aW5kb3ddOworICAgIFtub3RpZmljYXRpb25DZW50ZXIgYWRkT2JzZXJ2ZXI6
c2VsZiBzZWxlY3RvcjpAc2VsZWN0b3Iod2luZG93V2lsbE9yZGVyT25TY3JlZW46KSBuYW1lOk5T
V2luZG93V2lsbE9yZGVyT25TY3JlZW5Ob3RpZmljYXRpb24gb2JqZWN0OndpbmRvd107CisgICAg
W25vdGlmaWNhdGlvbkNlbnRlciBhZGRPYnNlcnZlcjpzZWxmIHNlbGVjdG9yOkBzZWxlY3Rvcih3
aW5kb3dXaWxsT3JkZXJPZmZTY3JlZW46KSBuYW1lOk5TV2luZG93V2lsbE9yZGVyT2ZmU2NyZWVu
Tm90aWZpY2F0aW9uIG9iamVjdDp3aW5kb3ddOwogICAgIFtub3RpZmljYXRpb25DZW50ZXIgYWRk
T2JzZXJ2ZXI6c2VsZiBzZWxlY3RvcjpAc2VsZWN0b3Iod2luZG93V2lsbENsb3NlOikgbmFtZTpO
U1dpbmRvd1dpbGxDbG9zZU5vdGlmaWNhdGlvbiBvYmplY3Q6d2luZG93XTsKICAgICAKICAgICBf
cHJpdmF0ZS0+b2JzZXJ2aW5nV2luZG93Tm90aWZpY2F0aW9ucyA9IHRydWU7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXcubW0gYi9Tb3VyY2UvV2Vi
S2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXcubW0KaW5kZXggNDc4YzIxY2E2MTg5Mjg3MDMy
NmFiOGI3ZWZlMjMyMWM3OWQ4YTU1NS4uZmUxOTA1YTVkYTc3NTU0Mzg2ZDhmOTE4YmQ5NjNmZTBk
MDVjYzYyZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJW
aWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQpA
QCAtMjExLDcgKzIxMSw5IEBACiAjaW1wb3J0IDxwYWwvc3BpL2NmL0NGTmV0d29ya1NQSS5oPgog
I2ltcG9ydCA8cGFsL3NwaS9jb2NvYS9OU1RvdWNoQmFyU1BJLmg+CiAjaW1wb3J0IDxwYWwvc3Bp
L2NvY29hL05TVVJMRmlsZVR5cGVNYXBwaW5nc1NQSS5oPgorI2ltcG9ydCA8cGFsL3NwaS9tYWMv
TlNSZXNwb25kZXJTUEkuaD4KICNpbXBvcnQgPHBhbC9zcGkvbWFjL05TU3BlbGxDaGVja2VyU1BJ
Lmg+CisjaW1wb3J0IDxwYWwvc3BpL21hYy9OU1dpbmRvd1NQSS5oPgogI2ltcG9ydCA8cnVudGlt
ZS9BcnJheVByb3RvdHlwZS5oPgogI2ltcG9ydCA8cnVudGltZS9DYXRjaFNjb3BlLmg+CiAjaW1w
b3J0IDxydW50aW1lL0RhdGVJbnN0YW5jZS5oPgpAQCAtNTg2Niw5ICs1ODY4LDkgQEAgLSAodm9p
ZClhZGRXaW5kb3dPYnNlcnZlcnNGb3JXaW5kb3c6KE5TV2luZG93ICopd2luZG93CiAgICAgICAg
IFtbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl0gYWRkT2JzZXJ2ZXI6c2VsZiBz
ZWxlY3RvcjpAc2VsZWN0b3Iod2luZG93S2V5U3RhdGVDaGFuZ2VkOikKICAgICAgICAgICAgIG5h
bWU6TlNXaW5kb3dEaWRSZXNpZ25LZXlOb3RpZmljYXRpb24gb2JqZWN0OndpbmRvd107CiAgICAg
ICAgIFtbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl0gYWRkT2JzZXJ2ZXI6c2Vs
ZiBzZWxlY3RvcjpAc2VsZWN0b3IoX3dpbmRvd1dpbGxPcmRlck9uU2NyZWVuOikKLSAgICAgICAg
ICAgIG5hbWU6V0tXaW5kb3dXaWxsT3JkZXJPblNjcmVlbk5vdGlmaWNhdGlvbigpIG9iamVjdDp3
aW5kb3ddOworICAgICAgICAgICAgbmFtZTpOU1dpbmRvd1dpbGxPcmRlck9uU2NyZWVuTm90aWZp
Y2F0aW9uIG9iamVjdDp3aW5kb3ddOwogICAgICAgICBbW05TTm90aWZpY2F0aW9uQ2VudGVyIGRl
ZmF1bHRDZW50ZXJdIGFkZE9ic2VydmVyOnNlbGYgc2VsZWN0b3I6QHNlbGVjdG9yKF93aW5kb3dX
aWxsT3JkZXJPZmZTY3JlZW46KQotICAgICAgICAgICAgbmFtZTpXS1dpbmRvd1dpbGxPcmRlck9m
ZlNjcmVlbk5vdGlmaWNhdGlvbigpIG9iamVjdDp3aW5kb3ddOworICAgICAgICAgICAgbmFtZTpO
U1dpbmRvd1dpbGxPcmRlck9mZlNjcmVlbk5vdGlmaWNhdGlvbiBvYmplY3Q6d2luZG93XTsKICAg
ICAgICAgW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSBhZGRPYnNlcnZlcjpz
ZWxmIHNlbGVjdG9yOkBzZWxlY3Rvcihfd2luZG93RGlkQ2hhbmdlQmFja2luZ1Byb3BlcnRpZXM6
KQogICAgICAgICAgICAgbmFtZTp3aW5kb3dEaWRDaGFuZ2VCYWNraW5nUHJvcGVydGllc05vdGlm
aWNhdGlvbiBvYmplY3Q6d2luZG93XTsKICAgICAgICAgW1tOU05vdGlmaWNhdGlvbkNlbnRlciBk
ZWZhdWx0Q2VudGVyXSBhZGRPYnNlcnZlcjpzZWxmIHNlbGVjdG9yOkBzZWxlY3Rvcihfd2luZG93
RGlkQ2hhbmdlU2NyZWVuOikKQEAgLTU4OTAsOSArNTg5Miw5IEBAIC0gKHZvaWQpcmVtb3ZlV2lu
ZG93T2JzZXJ2ZXJzCiAgICAgICAgIFtbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRl
cl0gcmVtb3ZlT2JzZXJ2ZXI6c2VsZgogICAgICAgICAgICAgbmFtZTpOU1dpbmRvd0RpZFJlc2ln
bktleU5vdGlmaWNhdGlvbiBvYmplY3Q6d2luZG93XTsKICAgICAgICAgW1tOU05vdGlmaWNhdGlv
bkNlbnRlciBkZWZhdWx0Q2VudGVyXSByZW1vdmVPYnNlcnZlcjpzZWxmCi0gICAgICAgICAgICBu
YW1lOldLV2luZG93V2lsbE9yZGVyT25TY3JlZW5Ob3RpZmljYXRpb24oKSBvYmplY3Q6d2luZG93
XTsKKyAgICAgICAgICAgIG5hbWU6TlNXaW5kb3dXaWxsT3JkZXJPblNjcmVlbk5vdGlmaWNhdGlv
biBvYmplY3Q6d2luZG93XTsKICAgICAgICAgW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0
Q2VudGVyXSByZW1vdmVPYnNlcnZlcjpzZWxmCi0gICAgICAgICAgICBuYW1lOldLV2luZG93V2ls
bE9yZGVyT2ZmU2NyZWVuTm90aWZpY2F0aW9uKCkgb2JqZWN0OndpbmRvd107CisgICAgICAgICAg
ICBuYW1lOk5TV2luZG93V2lsbE9yZGVyT2ZmU2NyZWVuTm90aWZpY2F0aW9uIG9iamVjdDp3aW5k
b3ddOwogICAgICAgICBbW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdIHJlbW92
ZU9ic2VydmVyOnNlbGYKICAgICAgICAgICAgIG5hbWU6d2luZG93RGlkQ2hhbmdlQmFja2luZ1By
b3BlcnRpZXNOb3RpZmljYXRpb24gb2JqZWN0OndpbmRvd107CiAgICAgICAgIFtbTlNOb3RpZmlj
YXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl0gcmVtb3ZlT2JzZXJ2ZXI6c2VsZgpAQCAtNTkyMyw3
ICs1OTI1LDcgQEAgLSAodm9pZCl2aWV3V2lsbE1vdmVUb1dpbmRvdzooTlNXaW5kb3cgKil3aW5k
b3cKICAgICAgICAgLy8gVGhlIGZvbGxvd2luZyBhcmUgZXhwZW5zaXZlIGVub3VnaCB0aGF0IHdl
IGRvbid0IHdhbnQgdG8gY2FsbCB0aGVtIG92ZXIKICAgICAgICAgLy8gYW5kIG92ZXIsIHNvIGRv
IHRoZW0gd2hlbiB3ZSBtb3ZlIGludG8gYSB3aW5kb3cuCiAgICAgICAgIFt3aW5kb3cgc2V0QWNj
ZXB0c01vdXNlTW92ZWRFdmVudHM6WUVTXTsKLSAgICAgICAgV0tTZXROU1dpbmRvd1Nob3VsZFBv
c3RFdmVudE5vdGlmaWNhdGlvbnMod2luZG93LCBZRVMpOworICAgICAgICBbd2luZG93IF9zZXRT
aG91bGRQb3N0RXZlbnROb3RpZmljYXRpb25zOllFU107CiAgICAgfSBlbHNlIGlmICghX3ByaXZh
dGUtPmNsb3NlZCkgewogICAgICAgICBfcHJpdmF0ZS0+cGFnZS0+c2V0Q2FuU3RhcnRNZWRpYShm
YWxzZSk7CiAgICAgICAgIF9wcml2YXRlLT5wYWdlLT5zZXRJc0luV2luZG93KGZhbHNlKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>319542</attachid>
            <date>2017-08-31 17:02:32 -0700</date>
            <delta_ts>2017-08-31 17:24:19 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-176175-20170831170231.patch</filename>
            <type>text/plain</type>
            <size>38511</size>
            <attacher name="Andy Estes">aestes</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIxMzgxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzVhYmE3NzU1NjhiNjgz
ZmZjOWVjZWE4MzhlNWFmOGRlMTVjOTY4Ni4uZTA3MTA5MzdiY2NhOGVhMTY1ZWMzZjY0MjM1ZWY5
MTA4OTU5M2E3MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDE3LTA4LTMxICBBbmR5
IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNvbT4KKworICAgICAgICBbTWFjXSBVcHN0cmVhbSBBcHBL
aXQtcmVsYXRlZCBXZWJLaXRTeXN0ZW1JbnRlcmZhY2UgZnVuY3Rpb25zCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzYxNzUKKworICAgICAgICBSZXZp
ZXdlZCBieSBCcmFkeSBFaWRzb24uCisKKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9XZWJDb3Jl
LnhjY29uZmlnOiBBZGRlZCAtT2JqQyB0byBPVEhFUl9MREZMQUdTIHNvIHRoYXQgT2JqZWN0aXZl
LUMgY2xhc3NlcworICAgICAgICBpbiBQQUwgYXJlIGV4cG9ydGVkIGJ5IFdlYkNvcmUgZXZlbiBp
ZiBXZWJDb3JlIGRvZXNuJ3QgdXNlIHRoZW0uCisgICAgICAgICogcGxhdGZvcm0vbWFjL1BsYXRm
b3JtRXZlbnRGYWN0b3J5TWFjLmg6CisgICAgICAgICogcGxhdGZvcm0vbWFjL1BsYXRmb3JtRXZl
bnRGYWN0b3J5TWFjLm1tOgorICAgICAgICAoV2ViQ29yZTo6Z2V0V2hlZWxFdmVudERlbHRhcyk6
CisgICAgICAgIChXZWJDb3JlOjprZXlDaGFyRm9yRXZlbnQpOgorICAgICAgICAoV2ViQ29yZTo6
UGxhdGZvcm1XaGVlbEV2ZW50QnVpbGRlcjo6UGxhdGZvcm1XaGVlbEV2ZW50QnVpbGRlcik6Cisg
ICAgICAgICogcGxhdGZvcm0vbWFjL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2UuaDoKKyAgICAgICAg
KiBwbGF0Zm9ybS9tYWMvV2ViQ29yZVN5c3RlbUludGVyZmFjZS5tbToKKwogMjAxNy0wOC0zMCAg
QW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CiAKICAgICAgICAgW01hY10gVXBzdHJlYW0g
QWNjZXNzaWJpbGl0eS1yZWxhdGVkIFdlYktpdFN5c3RlbUludGVyZmFjZSBmdW5jdGlvbnMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9Q
QUwvQ2hhbmdlTG9nCmluZGV4IDdiNGI2MDFmZTRlNWUxNTBmODE4OTc0NDU3YzY5ZWViOWI2MDEz
NTEuLmQ3YWE1Mzc5ODdlOGU2NzA0MmJjNWM0NTIxNDkzYmE2NDUyZmY4NWIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML0No
YW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDE3LTA4LTMxICBBbmR5IEVzdGVzICA8YWVzdGVz
QGFwcGxlLmNvbT4KKworICAgICAgICBbTWFjXSBVcHN0cmVhbSBBcHBLaXQtcmVsYXRlZCBXZWJL
aXRTeXN0ZW1JbnRlcmZhY2UgZnVuY3Rpb25zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xNzYxNzUKKworICAgICAgICBSZXZpZXdlZCBieSBCcmFkeSBF
aWRzb24uCisKKyAgICAgICAgKiBQQUwueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAg
ICAgKiBwYWwvc3BpL21hYy9ISVRvb2xib3hTUEkuaDoKKyAgICAgICAgKiBwYWwvc3BpL21hYy9O
U1Jlc3BvbmRlclNQSS5oOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9t
YWMvTlNXaW5kb3dTUEkuaC4KKyAgICAgICAgKiBwYWwvc3BpL21hYy9OU1dpbmRvd1NQSS5oOgor
ICAgICAgICAqIHBhbC9zeXN0ZW0vbWFjL1dlYlBhbmVsLmg6IENvcGllZCBmcm9tIFNvdXJjZS9X
ZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9OU1dpbmRvd1NQSS5oLgorICAgICAgICAqIHBhbC9zeXN0
ZW0vbWFjL1dlYlBhbmVsLm1tOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3Nw
aS9tYWMvSElUb29sYm94U1BJLmguCisgICAgICAgICgtW1dlYlBhbmVsIGluaXRdKToKKwogMjAx
Ny0wOC0zMCAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CiAKICAgICAgICAgW01hY10g
VXBzdHJlYW0gQWNjZXNzaWJpbGl0eS1yZWxhdGVkIFdlYktpdFN5c3RlbUludGVyZmFjZSBmdW5j
dGlvbnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktp
dC9DaGFuZ2VMb2cKaW5kZXggYTg2NjZmMzM4NTM0MWQzNTZkN2EwYzcxMzFlYTJhZmY2ODE0YTY4
Yi4uMGVhNWVhYmRhZTk5Y2IwZDE1NjMwNGRhY2M1YTk4MTFmOGE4YWYzNiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwyMCBAQAorMjAxNy0wOC0zMSAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+
CisKKyAgICAgICAgW01hY10gVXBzdHJlYW0gQXBwS2l0LXJlbGF0ZWQgV2ViS2l0U3lzdGVtSW50
ZXJmYWNlIGZ1bmN0aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTc2MTc1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQnJhZHkgRWlkc29uLgorCisg
ICAgICAgICogUGx1Z2luUHJvY2Vzcy9tYWMvUGx1Z2luUHJvY2Vzc01hYy5tbToKKyAgICAgICAg
KFdlYktpdDo6aW5pdGlhbGl6ZUNvY29hT3ZlcnJpZGVzKToKKyAgICAgICAgKiBTaGFyZWQvbWFj
L1dlYkV2ZW50RmFjdG9yeS5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViRXZlbnRGYWN0b3J5Ojpj
cmVhdGVXZWJXaGVlbEV2ZW50KToKKyAgICAgICAgKFdlYktpdDo6V2ViRXZlbnRGYWN0b3J5Ojpj
cmVhdGVXZWJLZXlib2FyZEV2ZW50KToKKyAgICAgICAgKiBVSVByb2Nlc3MvbWFjL1dLVGV4dElu
cHV0V2luZG93Q29udHJvbGxlci5tbToKKyAgICAgICAgKC1bV0tUZXh0SW5wdXRQYW5lbCBpbml0
XSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViU3lzdGVtSW50
ZXJmYWNlLm1tOgorICAgICAgICAoSW5pdFdlYkNvcmVTeXN0ZW1JbnRlcmZhY2UpOgorCiAyMDE3
LTA4LTMwICBBbmR5IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNvbT4KIAogICAgICAgICBbTWFjXSBV
cHN0cmVhbSBBY2Nlc3NpYmlsaXR5LXJlbGF0ZWQgV2ViS2l0U3lzdGVtSW50ZXJmYWNlIGZ1bmN0
aW9ucwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nIGIvU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCmluZGV4IGJkZjVkMzhhZTdlNWI3NjE0MDli
M2QxMDU0ZDg0MzgzODY4OWZiZGEuLmM4NTNmMzgxMDg5NmM2MTk0ZDFhOTliODVhZDRlNTYzMTkw
MWM2MDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZworKysg
Yi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNiBAQAorMjAx
Ny0wOC0zMSAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CisKKyAgICAgICAgW01hY10g
VXBzdHJlYW0gQXBwS2l0LXJlbGF0ZWQgV2ViS2l0U3lzdGVtSW50ZXJmYWNlIGZ1bmN0aW9ucwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc2MTc1CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgQnJhZHkgRWlkc29uLgorCisgICAgICAgICogUGx1Z2lucy9I
b3N0ZWQvTmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5Lm1tOgorICAgICAgICAoV2ViS2l0OjpO
ZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJveHk6OmtleUV2ZW50KToKKyAgICAgICAgKiBQbHVnaW5z
L0hvc3RlZC9XZWJUZXh0SW5wdXRXaW5kb3dDb250cm9sbGVyLm06CisgICAgICAgICgtW1dlYlRl
eHRJbnB1dFBhbmVsIGluaXRdKToKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJTeXN0ZW1J
bnRlcmZhY2UubW06CisgICAgICAgIChJbml0V2ViQ29yZVN5c3RlbUludGVyZmFjZSk6CisgICAg
ICAgICogV2ViVmlldy9XZWJEeW5hbWljU2Nyb2xsQmFyc1ZpZXcubW06CisgICAgICAgICgtW1dl
YkR5bmFtaWNTY3JvbGxCYXJzVmlldyBzY3JvbGxXaGVlbDpdKToKKyAgICAgICAgKiBXZWJWaWV3
L1dlYkhUTUxWaWV3Lm1tOgorICAgICAgICAoLVtXZWJIVE1MVmlldyBfcmVtb3ZlV2luZG93T2Jz
ZXJ2ZXJzXSk6CisgICAgICAgICgtW1dlYkhUTUxWaWV3IGFkZFdpbmRvd09ic2VydmVyc10pOgor
ICAgICAgICAqIFdlYlZpZXcvV2ViVmlldy5tbToKKyAgICAgICAgKC1bV2ViVmlldyBhZGRXaW5k
b3dPYnNlcnZlcnNGb3JXaW5kb3c6XSk6CisgICAgICAgICgtW1dlYlZpZXcgcmVtb3ZlV2luZG93
T2JzZXJ2ZXJzXSk6CisgICAgICAgICgtW1dlYlZpZXcgdmlld1dpbGxNb3ZlVG9XaW5kb3c6XSk6
CisKIDIwMTctMDgtMzAgIEFuZHkgRXN0ZXMgIDxhZXN0ZXNAYXBwbGUuY29tPgogCiAgICAgICAg
IFtNYWNdIFVwc3RyZWFtIEFjY2Vzc2liaWxpdHktcmVsYXRlZCBXZWJLaXRTeXN0ZW1JbnRlcmZh
Y2UgZnVuY3Rpb25zCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9X
ZWJDb3JlLnhjY29uZmlnIGIvU291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvV2ViQ29yZS54
Y2NvbmZpZwppbmRleCAyYTBhY2Y3YWUyNzhjNjA5ODUxODBmOTg2Yzc1MWMzNmRmYmFhZGQ5Li4z
NWZjM2U3OTVmZjhhMjljYjAzMWMwNTkzYzI2YmViY2RkZjNlNDQ3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9XZWJDb3JlLnhjY29uZmlnCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL0NvbmZpZ3VyYXRpb25zL1dlYkNvcmUueGNjb25maWcKQEAgLTc3LDcgKzc3LDcgQEAg
TElCV0VCUlRDX0xJQlJBUllfRElSX1VTRV9PVkVSUklERV9GUkFNRVdPUktTX0RJUl9OTyA9ICQo
V0VCQ09SRV9GUkFNRVdPUktTX0RJUikKIExJQldFQlJUQ19MSUJSQVJZX0RJUl9VU0VfT1ZFUlJJ
REVfRlJBTUVXT1JLU19ESVJfWUVTID0gJChXS19PVkVSUklERV9GUkFNRVdPUktTX0RJUik7CiAK
IE9USEVSX0xERkxBR1MgPSAkKGluaGVyaXRlZCkgJChXS19SRUxPQ0FUQUJMRV9GUkFNRVdPUktf
TERGTEFHUykgJChXS19VTkRFRklORURfU1lNQk9MU19MREZMQUdTKSAkKE9USEVSX0xERkxBR1Nf
UExBVEZPUk0pOwotT1RIRVJfTERGTEFHU19CQVNFID0gLWxzcWxpdGUzIC1sb2JqYyAtbEFOR0xF
IC1mcmFtZXdvcmsgQ29yZUF1ZGlvIC1mcmFtZXdvcmsgTWV0YWwgLWFsbG93YWJsZV9jbGllbnQg
V2ViQ29yZVRlc3RTdXBwb3J0IC1hbGxvd2FibGVfY2xpZW50IFdlYktpdExlZ2FjeTsKK09USEVS
X0xERkxBR1NfQkFTRSA9IC1sc3FsaXRlMyAtbG9iamMgLWxBTkdMRSAtZnJhbWV3b3JrIENvcmVB
dWRpbyAtZnJhbWV3b3JrIE1ldGFsIC1hbGxvd2FibGVfY2xpZW50IFdlYkNvcmVUZXN0U3VwcG9y
dCAtYWxsb3dhYmxlX2NsaWVudCBXZWJLaXRMZWdhY3kgLU9iakM7CiAvLyBGSVhNRTogUmVkdWNl
IHRoZSBudW1iZXIgb2YgYWxsb3dhYmxlX2NsaWVudCA8cmRhcjovL3Byb2JsZW0vMzE4MjM5Njk+
CiBPVEhFUl9MREZMQUdTX0JBU0VfaW9zID0gJChPVEhFUl9MREZMQUdTX0JBU0UpIC1mcmFtZXdv
cmsgQ0ZOZXR3b3JrIC1mcmFtZXdvcmsgQ29yZUdyYXBoaWNzIC1mcmFtZXdvcmsgQ29yZVRleHQg
LWZyYW1ld29yayBGb3VuZGF0aW9uIC1mcmFtZXdvcmsgSW1hZ2VJTyAtZnJhbWV3b3JrIE1vYmls
ZUNvcmVTZXJ2aWNlcyAtZnJhbWV3b3JrIE9wZW5HTEVTIC1sTW9iaWxlR2VzdGFsdCAkKFdLX0lP
U19CSU5DT01QQVRfTERGTEFHUykgLWFsbG93YWJsZV9jbGllbnQgV2ViS2l0IC1hbGxvd2FibGVf
Y2xpZW50IGlUdW5lc1UgLWFsbG93YWJsZV9jbGllbnQgQ2FzYWJsYW5jYSAtYWxsb3dhYmxlX2Ns
aWVudCBSZW1vdGUgLWFsbG93YWJsZV9jbGllbnQgVFZCb29rcyAtYWxsb3dhYmxlX2NsaWVudCBE
dW1wUmVuZGVyVHJlZSAtYWxsb3dhYmxlX2NsaWVudCBXZWJLaXRUZXN0UnVubmVyIC1hbGxvd2Fi
bGVfY2xpZW50IFRlc3RXZWJLaXRBUEk7CiBPVEhFUl9MREZMQUdTX1BMQVRGT1JNW3Nkaz1pcGhv
bmVvcypdID0gJChPVEhFUl9MREZMQUdTX0JBU0VfaW9zKSAtZnJhbWV3b3JrIElPU3VyZmFjZSAt
ZnJhbWV3b3JrIEdyYXBoaWNzU2VydmljZXMgJChMSUJXRUJSVENfTERGTEFHUyk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9T
b3VyY2UvV2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggZDk4
NThmOWVlMmI0MWYwMDU5MzcxYWU5MGNiMmJmZGRkYTNkMGI4OC4uOGRkNWE2YjM2NzkyYTI2MWZi
ZTUzOTkzMDQ5NmY5MTc0YjdmMDU1MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML1BB
TC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMTAxLDYgKzEwMSw5IEBACiAJCUExMDI2NTg5
MUY1Njc0N0EwMEI0Qzg0NCAvKiBISVRvb2xib3hTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExMDI2NTg4MUY1Njc0N0EwMEI0Qzg0NCAvKiBISVRv
b2xib3hTUEkuaCAqLzsgfTsKIAkJQTEwMjY1OEIxRjU2NzQ4QzAwQjRDODQ0IC8qIFF1aWNrRHJh
d1NQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTEw
MjY1OEExRjU2NzQ4QzAwQjRDODQ0IC8qIFF1aWNrRHJhd1NQSS5oICovOyB9OwogCQlBMTAyNjU4
RTFGNTY3RTlEMDBCNEM4NDQgLyogSElTZXJ2aWNlc1NQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTEwMjY1OEQxRjU2N0U5RDAwQjRDODQ0IC8qIEhJ
U2VydmljZXNTUEkuaCAqLzsgfTsKKwkJQTEwODI2RjExRjU3M0JDQTAwNDc3MkFDIC8qIE5TUmVz
cG9uZGVyU1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBBMTA4MjZGMDFGNTczQkNBMDA0NzcyQUMgLyogTlNSZXNwb25kZXJTUEkuaCAqLzsgfTsKKwkJ
QTEwODI2RjkxRjU3NjI5MjAwNDc3MkFDIC8qIFdlYlBhbmVsLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMTA4MjZGNzFGNTc2MjkyMDA0NzcyQUMgLyog
V2ViUGFuZWwuaCAqLzsgfTsKKwkJQTEwODI2RkExRjU3NjI5MjAwNDc3MkFDIC8qIFdlYlBhbmVs
Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTEwODI2
RjgxRjU3NjI5MjAwNDc3MkFDIC8qIFdlYlBhbmVsLm1tICovOyB9OwogCQlBMUY1NURDRjFGNTUy
OEVDMDBFREI3NUYgLyogTWV0YWRhdGFTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEExRjU1RENFMUY1NTI4RUMwMEVEQjc1RiAvKiBNZXRhZGF0YVNQ
SS5oICovOyB9OwogCQlBMzBENDEyMTFGMEREMEVBMDBCNzE5NTQgLyogS2lsbFJpbmcuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEEzMEQ0MTFFMUYwREQw
RUEwMEI3MTk1NCAvKiBLaWxsUmluZy5oICovOyB9OwogCQlBMzBENDEyMjFGMEREMEVBMDBCNzE5
NTQgLyogS2lsbFJpbmdOb25lLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEEzMEQ0MTFGMUYwREQwRUEwMEI3MTk1NCAvKiBLaWxsUmluZ05vbmUuY3Bw
ICovOyB9OwpAQCAtMjE3LDYgKzIyMCw5IEBACiAJCUExMDI2NTg4MUY1Njc0N0EwMEI0Qzg0NCAv
KiBISVRvb2xib3hTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSElUb29s
Ym94U1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUExMDI2NThBMUY1Njc0OEMw
MEI0Qzg0NCAvKiBRdWlja0RyYXdTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gUXVpY2tEcmF3U1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUExMDI2NThE
MUY1NjdFOUQwMEI0Qzg0NCAvKiBISVNlcnZpY2VzU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhJU2Vy
dmljZXNTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTEwODI2RjAxRjU3M0JD
QTAwNDc3MkFDIC8qIE5TUmVzcG9uZGVyU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5TUmVzcG9uZGVy
U1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExMDgyNkY3MUY1NzYyOTIwMDQ3
NzJBQyAvKiBXZWJQYW5lbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJQYW5lbC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlBMTA4MjZGODFGNTc2MjkyMDA0NzcyQUMgLyogV2ViUGFuZWwu
bW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJQYW5lbC5tbTsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJQTFGNTVEQ0UxRjU1MjhFQzAwRURCNzVGIC8qIE1ldGFkYXRhU1BJLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IE1ldGFkYXRhU1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CUEzMEQ0MTFFMUYwREQwRUEwMEI3MTk1NCAvKiBLaWxsUmluZy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBLaWxsUmluZy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQlBMzBENDExRjFGMEREMEVBMDBCNzE5NTQgLyogS2lsbFJpbmdOb25lLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEtpbGxSaW5nTm9uZS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CkBAIC0zNTMsNiArMzU5LDcgQEAKIAkJCQkwQzc3ODU3OTFGNDUxMzBG
MDBGNEVCQjYgLyogTlNNZW51U1BJLmggKi8sCiAJCQkJMEM3Nzg1N0ExRjQ1MTMwRjAwRjRFQkI2
IC8qIE5TUGFzdGVib2FyZFNQSS5oICovLAogCQkJCTBDNzc4NTdCMUY0NTEzMEYwMEY0RUJCNiAv
KiBOU1BvcG92ZXJTUEkuaCAqLywKKwkJCQlBMTA4MjZGMDFGNTczQkNBMDA0NzcyQUMgLyogTlNS
ZXNwb25kZXJTUEkuaCAqLywKIAkJCQkwQzc3ODU3QzFGNDUxMzBGMDBGNEVCQjYgLyogTlNTY3Jv
bGxlckltcFNQSS5oICovLAogCQkJCTBDNzc4NTdEMUY0NTEzMEYwMEY0RUJCNiAvKiBOU1Njcm9s
bGluZ0lucHV0RmlsdGVyU1BJLmggKi8sCiAJCQkJMEM3Nzg1N0UxRjQ1MTMwRjAwRjRFQkI2IC8q
IE5TU2Nyb2xsaW5nTW9tZW50dW1DYWxjdWxhdG9yU1BJLmggKi8sCkBAIC00NzMsNiArNDgwLDgg
QEAKIAkJCQlBMzc4OEU5RDFGMDVCNzhFMDA2Nzk0MjUgLyogU291bmRNYWMubW0gKi8sCiAJCQkJ
QTNBQjZFNjIxRjNEMjE3RjAwOUMxNEIxIC8qIFN5c3RlbVNsZWVwTGlzdGVuZXJNYWMuaCAqLywK
IAkJCQlBM0FCNkU2MzFGM0QyMTdGMDA5QzE0QjEgLyogU3lzdGVtU2xlZXBMaXN0ZW5lck1hYy5t
bSAqLywKKwkJCQlBMTA4MjZGNzFGNTc2MjkyMDA0NzcyQUMgLyogV2ViUGFuZWwuaCAqLywKKwkJ
CQlBMTA4MjZGODFGNTc2MjkyMDA0NzcyQUMgLyogV2ViUGFuZWwubW0gKi8sCiAJCQkpOwogCQkJ
cGF0aCA9IG1hYzsKIAkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CkBAIC01NDYsNiArNTU1LDcg
QEAKIAkJCQkwQzc3ODU5MjFGNDUxMzBGMDBGNEVCQjYgLyogTlNNZW51U1BJLmggaW4gSGVhZGVy
cyAqLywKIAkJCQkwQzc3ODU5MzFGNDUxMzBGMDBGNEVCQjYgLyogTlNQYXN0ZWJvYXJkU1BJLmgg
aW4gSGVhZGVycyAqLywKIAkJCQkwQzc3ODU5NDFGNDUxMzBGMDBGNEVCQjYgLyogTlNQb3BvdmVy
U1BJLmggaW4gSGVhZGVycyAqLywKKwkJCQlBMTA4MjZGMTFGNTczQkNBMDA0NzcyQUMgLyogTlNS
ZXNwb25kZXJTUEkuaCBpbiBIZWFkZXJzICovLAogCQkJCTBDNzc4NTk1MUY0NTEzMEYwMEY0RUJC
NiAvKiBOU1Njcm9sbGVySW1wU1BJLmggaW4gSGVhZGVycyAqLywKIAkJCQkwQzc3ODU5NjFGNDUx
MzBGMDBGNEVCQjYgLyogTlNTY3JvbGxpbmdJbnB1dEZpbHRlclNQSS5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJMEM3Nzg1OTcxRjQ1MTMwRjAwRjRFQkI2IC8qIE5TU2Nyb2xsaW5nTW9tZW50dW1DYWxj
dWxhdG9yU1BJLmggaW4gSGVhZGVycyAqLywKQEAgLTU4MCw2ICs1OTAsNyBAQAogCQkJCTBDNzc4
NUExMUY0NTEzMEYwMEY0RUJCNiAvKiBUVUNhbGxTUEkuaCBpbiBIZWFkZXJzICovLAogCQkJCTBD
NUFGOTIyMUY0M0E0QzcwMDJFQUMwMiAvKiBVSUtpdFNQSS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
MEMyREExNTkxRjNCRUI0OTAwREJDMzE3IC8qIFdlYkZpbHRlckV2YWx1YXRvclNQSS5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQTEwODI2RjkxRjU3NjI5MjAwNDc3MkFDIC8qIFdlYlBhbmVsLmggaW4g
SGVhZGVycyAqLywKIAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5n
ID0gMDsKIAkJfTsKQEAgLTY3OCw2ICs2ODksNyBAQAogCQkJCUEzNzg4RTlDMUYwNUI3ODIwMDY3
OTQyNSAvKiBTb3VuZE5vbmUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTNBQjZFNTcxRjNEMURE
QjAwOUMxNEIxIC8qIFN5c3RlbVNsZWVwTGlzdGVuZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
QTNBQjZFNjUxRjNEMjE3RjAwOUMxNEIxIC8qIFN5c3RlbVNsZWVwTGlzdGVuZXJNYWMubW0gaW4g
U291cmNlcyAqLywKKwkJCQlBMTA4MjZGQTFGNTc2MjkyMDA0NzcyQUMgLyogV2ViUGFuZWwubW0g
aW4gU291cmNlcyAqLywKIAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNz
aW5nID0gMDsKIAkJfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21h
Yy9ISVRvb2xib3hTUEkuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9ISVRvb2xi
b3hTUEkuaAppbmRleCAwMDM0ODc3NzcyZGNjNThmMDJhMTY3OGE3NmNlMmZhMDViOGFmYWNiLi4w
ZmY5MjcwYTMyNWQzODhmYjRhMjcwYWM2OTk5OWExNjNkYjk4Y2E4IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9tYWMvSElUb29sYm94U1BJLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvUEFML3BhbC9zcGkvbWFjL0hJVG9vbGJveFNQSS5oCkBAIC00NSw1ICs0NSw2IEBAIENH
V2luZG93SUQgR2V0TmF0aXZlV2luZG93RnJvbVdpbmRvd1JlZihXaW5kb3dSZWYpOwogT1NTdGF0
dXMgVFNNUHJvY2Vzc1Jhd0tleUV2ZW50KEV2ZW50UmVmKTsKIEV2ZW50UmVmIEdldEN1cnJlbnRF
dmVudCgpOwogQ0ZUeXBlUmVmIFRTTUdldElucHV0U291cmNlUHJvcGVydHkoVFNNSW5wdXRTb3Vy
Y2VSZWYsIFRTTUlucHV0U291cmNlUHJvcGVydHlUYWcpOworT1NTdGF0dXMgR2V0RXZlbnRQYXJh
bWV0ZXIoRXZlbnRSZWYsIEV2ZW50UGFyYW1OYW1lIGluTmFtZSwgRXZlbnRQYXJhbVR5cGUgaW5E
ZXNpcmVkVHlwZSwgRXZlbnRQYXJhbVR5cGUqIG91dEFjdHVhbFR5cGUsIEJ5dGVDb3VudCBpbkJ1
ZmZlclNpemUsIEJ5dGVDb3VudCogb3V0QWN0dWFsU2l6ZSwgdm9pZCogb3V0RGF0YSk7CiAKIFdU
Rl9FWFRFUk5fQ19FTkQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21h
Yy9OU1Jlc3BvbmRlclNQSS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvbWFjL05TUmVz
cG9uZGVyU1BJLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmVkMWE3OTUyN2Y3MmU4YzA3NzEzZDNmZTgyMDIxZDE1
NjA3YmYzZAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21h
Yy9OU1Jlc3BvbmRlclNQSS5oCkBAIC0wLDAgKzEsNDAgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMp
IDIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAor
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIu
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9S
UyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09O
VFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWYgUExB
VEZPUk0oTUFDKQorCisjaWYgVVNFKEFQUExFX0lOVEVSTkFMX1NESykKKworI2ltcG9ydCA8QXBw
S2l0L05TUmVzcG9uZGVyX1ByaXZhdGUuaD4KKworI2Vsc2UKKworQGludGVyZmFjZSBOU1Jlc3Bv
bmRlciAoKQorLSAodm9pZClfc2V0U2hvdWxkUG9zdEV2ZW50Tm90aWZpY2F0aW9uczooQk9PTClw
b3N0Tm90aWZpY2F0aW9uczsKK0BlbmQKKworI2VuZGlmCisKKyNlbmRpZiAvLyBQTEFURk9STShN
QUMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9tYWMvTlNXaW5kb3dT
UEkuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9OU1dpbmRvd1NQSS5oCmluZGV4
IGJhYjg0MDBmMDQ5ZDk0YjkyZGVmZWE5YWU5NTMxNjJmZjIxNTg5NDMuLmFhODEyNTVkOGViYmYx
MDNhN2YyOTExOTMzYTAwNDc4MzM4NjU1NTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BB
TC9wYWwvc3BpL21hYy9OU1dpbmRvd1NQSS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwv
c3BpL21hYy9OU1dpbmRvd1NQSS5oCkBAIC00Miw5ICs0MiwxNCBAQAogQGVuZAogCiBlbnVtIHsK
KyAgICBOU1NpZGVVdGlsaXR5V2luZG93TWFzayA9IDEgPDwgOSwKKyAgICBOU1NtYWxsV2luZG93
TWFzayA9IDEgPDwgMTAsCiAgICAgX05TQ2FyYm9uV2luZG93TWFzayA9IDEgPDwgMjUsCiB9Owog
CiAjZW5kaWYKIAorZXh0ZXJuIE5TU3RyaW5nICpOU1dpbmRvd1dpbGxPcmRlck9uU2NyZWVuTm90
aWZpY2F0aW9uOworZXh0ZXJuIE5TU3RyaW5nICpOU1dpbmRvd1dpbGxPcmRlck9mZlNjcmVlbk5v
dGlmaWNhdGlvbjsKKwogI2VuZGlmIC8vIFBMQVRGT1JNKE1BQykKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL1BBTC9wYWwvc3lzdGVtL21hYy9XZWJQYW5lbC5oIGIvU291cmNlL1dlYkNvcmUv
UEFML3BhbC9zeXN0ZW0vbWFjL1dlYlBhbmVsLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTAzNTE2M2Q5ZGJhZWUz
MWQ5ODExMjIyNTE2MmRkMzhiZjg2NTY5ZQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL1BBTC9wYWwvc3lzdGVtL21hYy9XZWJQYW5lbC5oCkBAIC0wLDAgKzEsMzYgQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoK
KyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQg
SVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUg
SU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBP
RgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
IFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
KyAqLworCisjaWYgUExBVEZPUk0oTUFDKQorCisjaW1wb3J0IDxBcHBLaXQvQXBwS2l0Lmg+CisK
K1BBTF9FWFBPUlQgQGludGVyZmFjZSBXZWJQYW5lbCA6IE5TUGFuZWwKKworLSAoaW5zdGFuY2V0
eXBlKWluaXQ7CisKK0BlbmQKKworI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Q
QUwvcGFsL3N5c3RlbS9tYWMvV2ViUGFuZWwubW0gYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3N5
c3RlbS9tYWMvV2ViUGFuZWwubW0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzE3YmRhMDJlN2I3ZWIyN2E5YmQyYjU5
Nzk1NmY1NDEyZGFjZjEyNgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9w
YWwvc3lzdGVtL21hYy9XZWJQYW5lbC5tbQpAQCAtMCwwICsxLDQ3IEBACisvKgorICogQ29weXJp
Z2h0IChDKSAyMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05U
UklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAq
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1Ig
SVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKwor
I2ltcG9ydCAiY29uZmlnLmgiCisjaW1wb3J0ICJXZWJQYW5lbC5oIgorCisjaWYgUExBVEZPUk0o
TUFDKQorCisjaW1wb3J0IDxwYWwvc3BpL21hYy9OU1dpbmRvd1NQSS5oPgorCitAaW1wbGVtZW50
YXRpb24gV2ViUGFuZWwKKworLSAoaW5zdGFuY2V0eXBlKWluaXQKK3sKKyNwcmFnbWEgY2xhbmcg
ZGlhZ25vc3RpYyBwdXNoCisjcHJhZ21hIGNsYW5nIGRpYWdub3N0aWMgaWdub3JlZCAiLVdkZXBy
ZWNhdGVkLWRlY2xhcmF0aW9ucyIKKyAgICBzdGF0aWMgTlNVSW50ZWdlciBzdHlsZU1hc2sgPSBO
U01pbmlhdHVyaXphYmxlV2luZG93TWFzayB8IE5TQ2xvc2FibGVXaW5kb3dNYXNrIHwgTlNSZXNp
emFibGVXaW5kb3dNYXNrICB8IE5TVGl0bGVkV2luZG93TWFzayB8IE5TU21hbGxXaW5kb3dNYXNr
IHwgTlNTaWRlVXRpbGl0eVdpbmRvd01hc2sgfCBOU1V0aWxpdHlXaW5kb3dNYXNrOworI3ByYWdt
YSBjbGFuZyBkaWFnbm9zdGljIHBvcAorICAgIAorICAgIHJldHVybiBbc3VwZXIgaW5pdFdpdGhD
b250ZW50UmVjdDpOU1plcm9SZWN0IHN0eWxlTWFzazpzdHlsZU1hc2sgYmFja2luZzpOU0JhY2tp
bmdTdG9yZUJ1ZmZlcmVkIGRlZmVyOllFU107Cit9CisKK0BlbmQKKworI2VuZGlmIC8vIFBMQVRG
T1JNKE1BQykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9QbGF0Zm9y
bUV2ZW50RmFjdG9yeU1hYy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1BsYXRmb3Jt
RXZlbnRGYWN0b3J5TWFjLmgKaW5kZXggMjU5YzYwNTBkNjBhNDlmNDk4ZGM1NDhiN2NlZjMyZjBj
NzZhZGU2Yy4uZDIwYTJkOGVlOTBmNGMxODY3Yjk2ZTU5NDkyMTk1OWM0ZjZjMDI2ZiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1BsYXRmb3JtRXZlbnRGYWN0b3J5TWFj
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1BsYXRmb3JtRXZlbnRGYWN0b3J5
TWFjLmgKQEAgLTQ5LDYgKzQ5LDkgQEAgV0VCQ09SRV9FWFBPUlQgU3RyaW5nIGtleUlkZW50aWZp
ZXJGb3JLZXlFdmVudChOU0V2ZW50ICopOwogV0VCQ09SRV9FWFBPUlQgU3RyaW5nIGtleUZvcktl
eUV2ZW50KE5TRXZlbnQgKik7CiBXRUJDT1JFX0VYUE9SVCBTdHJpbmcgY29kZUZvcktleUV2ZW50
KE5TRXZlbnQgKik7CiBXRUJDT1JFX0VYUE9SVCBkb3VibGUgZXZlbnRUaW1lU3RhbXBTaW5jZTE5
NzAoTlNFdmVudCAqKTsKKyAgICAKK1dFQkNPUkVfRVhQT1JUIHZvaWQgZ2V0V2hlZWxFdmVudERl
bHRhcyhOU0V2ZW50ICosIGZsb2F0JiBkZWx0YVgsIGZsb2F0JiBkZWx0YVksIEJPT0wmIGNvbnRp
bnVvdXMpOworV0VCQ09SRV9FWFBPUlQgVUludDgga2V5Q2hhckZvckV2ZW50KE5TRXZlbnQgKik7
CiAKICNlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvUGxh
dGZvcm1FdmVudEZhY3RvcnlNYWMubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvUGxh
dGZvcm1FdmVudEZhY3RvcnlNYWMubW0KaW5kZXggYmMxZTM2N2ZjNDY5NGVhZjQ2MGFiMGVhNWE0
MjMwZDAwMDAxYWM4OS4uZTVlODViYTA4NTg2Y2NlZTk2M2M3YzVkYmNhN2IyYTgyODZiYzZlYSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1BsYXRmb3JtRXZlbnRGYWN0
b3J5TWFjLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9QbGF0Zm9ybUV2ZW50
RmFjdG9yeU1hYy5tbQpAQCAtMzQsNiArMzQsOCBAQAogI2ltcG9ydCAiV2luZG93c0tleWJvYXJk
Q29kZXMuaCIKICNpbXBvcnQgPEhJVG9vbGJveC9FdmVudHMuaD4KICNpbXBvcnQgPG1hY2gvbWFj
aF90aW1lLmg+CisjaW1wb3J0IDxwYWwvc3BpL21hYy9ISVRvb2xib3hTUEkuaD4KKyNpbXBvcnQg
PHBhbC9zcGkvbWFjL05TRXZlbnRTUEkuaD4KICNpbXBvcnQgPHBhbC9zcGkvbWFjL05TTWVudVNQ
SS5oPgogI2ltcG9ydCA8d3RmL0FTQ0lJQ1R5cGUuaD4KIApAQCAtNjc0LDYgKzY3NiwzOSBAQCBz
dGF0aWMgaW50IHR5cGVGb3JFdmVudChOU0V2ZW50ICpldmVudCkKICAgICByZXR1cm4gc3RhdGlj
X2Nhc3Q8aW50PihbTlNNZW51IG1lbnVUeXBlRm9yRXZlbnQ6ZXZlbnRdKTsKIH0KICAgICAKK3Zv
aWQgZ2V0V2hlZWxFdmVudERlbHRhcyhOU0V2ZW50ICpldmVudCwgZmxvYXQmIGRlbHRhWCwgZmxv
YXQmIGRlbHRhWSwgQk9PTCYgY29udGludW91cykKK3sKKyAgICBBU1NFUlQoZXZlbnQpOworICAg
IGlmIChldmVudC5oYXNQcmVjaXNlU2Nyb2xsaW5nRGVsdGFzKSB7CisgICAgICAgIGRlbHRhWCA9
IGV2ZW50LnNjcm9sbGluZ0RlbHRhWDsKKyAgICAgICAgZGVsdGFZID0gZXZlbnQuc2Nyb2xsaW5n
RGVsdGFZOworICAgICAgICBjb250aW51b3VzID0gWUVTOworICAgIH0gZWxzZSB7CisgICAgICAg
IGRlbHRhWCA9IGV2ZW50LmRlbHRhWDsKKyAgICAgICAgZGVsdGFZID0gZXZlbnQuZGVsdGFZOwor
ICAgICAgICBjb250aW51b3VzID0gTk87CisgICAgfQorfQorCitVSW50OCBrZXlDaGFyRm9yRXZl
bnQoTlNFdmVudCAqZXZlbnQpCit7CisgICAgRXZlbnRSZWYgZXZlbnRSZWYgPSBbZXZlbnQgX2V2
ZW50UmVmXTsKKyAgICBpZiAoIWV2ZW50UmVmKQorICAgICAgICByZXR1cm4gMDsKKworICAgIEJ5
dGVDb3VudCBrZXlDaGFyQ291bnQgPSAwOworICAgIGlmIChHZXRFdmVudFBhcmFtZXRlcihldmVu
dFJlZiwga0V2ZW50UGFyYW1LZXlNYWNDaGFyQ29kZXMsIHR5cGVDaGFyLCAwLCAwLCAma2V5Q2hh
ckNvdW50LCAwKSAhPSBub0VycikKKyAgICAgICAgcmV0dXJuIDA7CisgICAgaWYgKGtleUNoYXJD
b3VudCAhPSAxKQorICAgICAgICByZXR1cm4gMDsKKworICAgIFVJbnQ4IGtleUNoYXIgPSAwOwor
ICAgIGlmIChHZXRFdmVudFBhcmFtZXRlcihldmVudFJlZiwga0V2ZW50UGFyYW1LZXlNYWNDaGFy
Q29kZXMsIHR5cGVDaGFyLCAwLCBzaXplb2Yoa2V5Q2hhciksICZrZXlDaGFyQ291bnQsICZrZXlD
aGFyKSAhPSBub0VycikKKyAgICAgICAgcmV0dXJuIDA7CisgICAgCisgICAgcmV0dXJuIGtleUNo
YXI7Cit9CisKIGNsYXNzIFBsYXRmb3JtTW91c2VFdmVudEJ1aWxkZXIgOiBwdWJsaWMgUGxhdGZv
cm1Nb3VzZUV2ZW50IHsKIHB1YmxpYzoKICAgICBQbGF0Zm9ybU1vdXNlRXZlbnRCdWlsZGVyKE5T
RXZlbnQgKmV2ZW50LCBOU0V2ZW50ICpjb3JyZXNwb25kaW5nUHJlc3N1cmVFdmVudCwgTlNWaWV3
ICp3aW5kb3dWaWV3KQpAQCAtNzQ0LDcgKzc3OSw3IEBAIHB1YmxpYzoKICAgICAgICAgbV9ncmFu
dWxhcml0eSA9IFNjcm9sbEJ5UGl4ZWxXaGVlbEV2ZW50OwogCiAgICAgICAgIEJPT0wgY29udGlu
dW91czsKLSAgICAgICAgd2tHZXRXaGVlbEV2ZW50RGVsdGFzKGV2ZW50LCAmbV9kZWx0YVgsICZt
X2RlbHRhWSwgJmNvbnRpbnVvdXMpOworICAgICAgICBnZXRXaGVlbEV2ZW50RGVsdGFzKGV2ZW50
LCBtX2RlbHRhWCwgbV9kZWx0YVksIGNvbnRpbnVvdXMpOwogICAgICAgICBpZiAoY29udGludW91
cykgewogICAgICAgICAgICAgbV93aGVlbFRpY2tzWCA9IG1fZGVsdGFYIC8gc3RhdGljX2Nhc3Q8
ZmxvYXQ+KFNjcm9sbGJhcjo6cGl4ZWxzUGVyTGluZVN0ZXAoKSk7CiAgICAgICAgICAgICBtX3do
ZWVsVGlja3NZID0gbV9kZWx0YVkgLyBzdGF0aWNfY2FzdDxmbG9hdD4oU2Nyb2xsYmFyOjpwaXhl
bHNQZXJMaW5lU3RlcCgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21h
Yy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMv
V2ViQ29yZVN5c3RlbUludGVyZmFjZS5oCmluZGV4IDkzY2RmZDBjN2FiMWU5NjgwMTA2Y2E2NDg1
NDQ4NTY2Yjc0NDRlNDYuLjhhMTI0ODI3YzA0MDlkNjYzZjc4MWRmMjdiNGU0M2JjZmFmYmQyMjcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJDb3JlU3lzdGVtSW50
ZXJmYWNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVTeXN0ZW1J
bnRlcmZhY2UuaApAQCAtMTM5LDcgKzEzOSw2IEBAIGV4dGVybiB2b2lkICgqd2tEcmF3TWVkaWFT
bGlkZXJUcmFjaykoQ0dDb250ZXh0UmVmIGNvbnRleHQsIENHUmVjdCByZWN0LCBmbG9hdCB0CiBl
eHRlcm4gdm9pZCAoKndrRHJhd01lZGlhVUlQYXJ0KShpbnQgcGFydCwgQ0dDb250ZXh0UmVmIGNv
bnRleHQsIENHUmVjdCByZWN0LCB1bnNpZ25lZCBzdGF0ZSk7CiBleHRlcm4gZG91YmxlICgqd2tH
ZXROU1VSTFJlc3BvbnNlQ2FsY3VsYXRlZEV4cGlyYXRpb24pKE5TVVJMUmVzcG9uc2UgKnJlc3Bv
bnNlKTsKIGV4dGVybiBCT09MICgqd2tHZXROU1VSTFJlc3BvbnNlTXVzdFJldmFsaWRhdGUpKE5T
VVJMUmVzcG9uc2UgKnJlc3BvbnNlKTsKLWV4dGVybiB2b2lkICgqd2tHZXRXaGVlbEV2ZW50RGVs
dGFzKShOU0V2ZW50KiwgZmxvYXQqIGRlbHRhWCwgZmxvYXQqIGRlbHRhWSwgQk9PTCogY29udGlu
dW91cyk7CiBleHRlcm4gVUludDggKCp3a0dldE5TRXZlbnRLZXlDaGFyKShOU0V2ZW50ICopOwog
ZXh0ZXJuIEJPT0wgKCp3a0hpdFRlc3RNZWRpYVVJUGFydCkoaW50IHBhcnQsIENHUmVjdCBib3Vu
ZHMsIENHUG9pbnQgcG9pbnQpOwogZXh0ZXJuIHZvaWQgKCp3a01lYXN1cmVNZWRpYVVJUGFydCko
aW50IHBhcnQsIENHUmVjdCAqYm91bmRzLCBDR1NpemUgKm5hdHVyYWxTaXplKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlLm1t
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2UubW0K
aW5kZXggNjQ5ZDdhNjdjZDY3NjU0YTJhM2UzOTRlOTM1ZjhjNTI2ZmEzOTI1YS4uMjcyYjU1NTdl
MjM5ZjNjMWUxZDQ1YTk0ZmI3YjFlNDUzNDYxN2RmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2UubW0KKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2UubW0KQEAgLTQ4LDcgKzQ4
LDYgQEAgdm9pZCAoKndrV2luZG93U2V0QWxwaGEpKE5TV2luZG93ICosIGZsb2F0KTsKIHZvaWQg
KCp3a1dpbmRvd1NldFNjYWxlZEZyYW1lKShOU1dpbmRvdyAqLCBOU1JlY3QsIE5TUmVjdCk7CiBO
U1RpbWVJbnRlcnZhbCAoKndrR2V0TlNVUkxSZXNwb25zZUNhbGN1bGF0ZWRFeHBpcmF0aW9uKShO
U1VSTFJlc3BvbnNlICpyZXNwb25zZSk7CiBCT09MICgqd2tHZXROU1VSTFJlc3BvbnNlTXVzdFJl
dmFsaWRhdGUpKE5TVVJMUmVzcG9uc2UgKnJlc3BvbnNlKTsKLXZvaWQgKCp3a0dldFdoZWVsRXZl
bnREZWx0YXMpKE5TRXZlbnQqLCBmbG9hdCogZGVsdGFYLCBmbG9hdCogZGVsdGFZLCBCT09MKiBj
b250aW51b3VzKTsKIFVJbnQ4ICgqd2tHZXROU0V2ZW50S2V5Q2hhcikoTlNFdmVudCAqKTsKIHZv
aWQgKCp3a1BvcHVwTWVudSkoTlNNZW51KiwgTlNQb2ludCBsb2NhdGlvbiwgZmxvYXQgd2lkdGgs
IE5TVmlldyosIGludCBzZWxlY3RlZEl0ZW0sIE5TRm9udCosIE5TQ29udHJvbFNpemUgY29udHJv
bFNpemUsIGJvb2wgdXNlc0N1c3RvbUFwcGVhcmFuY2UpOwogdW5zaWduZWQgKCp3a1FUSW5jbHVk
ZU9ubHlNb2Rlcm5NZWRpYUZpbGVUeXBlcykodm9pZCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1BsdWdpblByb2Nlc3MvbWFjL1BsdWdpblByb2Nlc3NNYWMubW0gYi9Tb3VyY2UvV2ViS2l0
L1BsdWdpblByb2Nlc3MvbWFjL1BsdWdpblByb2Nlc3NNYWMubW0KaW5kZXggZGQ1MzM3MDI0N2Yw
YTZiNzRhMDFiZmNjOGFhOTZmYTZmZmYzNDQxOC4uZDg2MDM3ODY3YTJmMWFmYTI1ZWM1MjYzMDZl
MTRkOTY0Y2Q3N2U2ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9QbHVnaW5Qcm9jZXNzL21h
Yy9QbHVnaW5Qcm9jZXNzTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvUGx1Z2luUHJvY2Vzcy9t
YWMvUGx1Z2luUHJvY2Vzc01hYy5tbQpAQCAtNDcsNiArNDcsNyBAQAogI2ltcG9ydCA8bWFjaC92
bV9zdGF0aXN0aWNzLmg+CiAjaW1wb3J0IDxvYmpjL3J1bnRpbWUuaD4KICNpbXBvcnQgPHBhbC9z
cGkvbWFjL0hJVG9vbGJveFNQSS5oPgorI2ltcG9ydCA8cGFsL3NwaS9tYWMvTlNXaW5kb3dTUEku
aD4KICNpbXBvcnQgPHN5c2V4aXRzLmg+CiAjaW1wb3J0IDx3dGYvSGFzaFNldC5oPgogI2ltcG9y
dCA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00NDEsMTIgKzQ0MiwxMiBAQCBzdGF0aWMgdm9p
ZCBpbml0aWFsaXplQ29jb2FPdmVycmlkZXMoKQogICAgIE5TTm90aWZpY2F0aW9uQ2VudGVyICpk
ZWZhdWx0Q2VudGVyID0gW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdOwogCiAg
ICAgLy8gVHJhY2sgd2hlbiBhbnkgQ29jb2Egd2luZG93IGlzIGFib3V0IHRvIGJlIGJlIHNob3du
LgotICAgIGlkIG9yZGVyT25TY3JlZW5PYnNlcnZlciA9IFtkZWZhdWx0Q2VudGVyIGFkZE9ic2Vy
dmVyRm9yTmFtZTpXS1dpbmRvd1dpbGxPcmRlck9uU2NyZWVuTm90aWZpY2F0aW9uKCkKKyAgICBp
ZCBvcmRlck9uU2NyZWVuT2JzZXJ2ZXIgPSBbZGVmYXVsdENlbnRlciBhZGRPYnNlcnZlckZvck5h
bWU6TlNXaW5kb3dXaWxsT3JkZXJPblNjcmVlbk5vdGlmaWNhdGlvbgogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9iamVjdDpuaWwKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
cXVldWU6bmlsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHVzaW5nQmxvY2s6XihOU05vdGlmaWNhdGlvbiAqbm90aWZpY2F0aW9uKSB7
IGZ1bGxzY3JlZW5XaW5kb3dUcmFja2VyKCkud2luZG93U2hvd24oW25vdGlmaWNhdGlvbiBvYmpl
Y3RdKTsgfV07CiAgICAgLy8gVHJhY2sgd2hlbiBhbnkgQ29jb2Egd2luZG93IGlzIGFib3V0IHRv
IGJlIGhpZGRlbi4KLSAgICBpZCBvcmRlck9mZlNjcmVlbk9ic2VydmVyID0gW2RlZmF1bHRDZW50
ZXIgYWRkT2JzZXJ2ZXJGb3JOYW1lOldLV2luZG93V2lsbE9yZGVyT2ZmU2NyZWVuTm90aWZpY2F0
aW9uKCkKKyAgICBpZCBvcmRlck9mZlNjcmVlbk9ic2VydmVyID0gW2RlZmF1bHRDZW50ZXIgYWRk
T2JzZXJ2ZXJGb3JOYW1lOk5TV2luZG93V2lsbE9yZGVyT2ZmU2NyZWVuTm90aWZpY2F0aW9uCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IG9iamVjdDpuaWwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHF1ZXVlOm5pbAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHVzaW5nQmxvY2s6XihOU05vdGlmaWNhdGlvbiAqbm90
aWZpY2F0aW9uKSB7IGZ1bGxzY3JlZW5XaW5kb3dUcmFja2VyKCkud2luZG93SGlkZGVuKFtub3Rp
ZmljYXRpb24gb2JqZWN0XSk7IH1dOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQv
bWFjL1dlYkV2ZW50RmFjdG9yeS5tbSBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL21hYy9XZWJFdmVu
dEZhY3RvcnkubW0KaW5kZXggNzdhYWM1M2RjY2JmYTBmOWFkMmI4ODE1MWMzNTkzZTdiNjIyYWNj
Ni4uMGRiM2JlOGM2NDc0Yzc2MzI5ODVmZTNlYTIyMTViNDhjNmFmYzA1YiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9TaGFyZWQvbWFjL1dlYkV2ZW50RmFjdG9yeS5tbQorKysgYi9Tb3VyY2Uv
V2ViS2l0L1NoYXJlZC9tYWMvV2ViRXZlbnRGYWN0b3J5Lm1tCkBAIC0zODUsNyArMzg1LDcgQEAg
V2ViV2hlZWxFdmVudCBXZWJFdmVudEZhY3Rvcnk6OmNyZWF0ZVdlYldoZWVsRXZlbnQoTlNFdmVu
dCAqZXZlbnQsIE5TVmlldyAqd2luZG8KICAgICBmbG9hdCB3aGVlbFRpY2tzWCA9IDA7CiAgICAg
ZmxvYXQgd2hlZWxUaWNrc1kgPSAwOwogCi0gICAgV0tHZXRXaGVlbEV2ZW50RGVsdGFzKGV2ZW50
LCAmZGVsdGFYLCAmZGVsdGFZLCAmY29udGludW91cyk7CisgICAgZ2V0V2hlZWxFdmVudERlbHRh
cyhldmVudCwgZGVsdGFYLCBkZWx0YVksIGNvbnRpbnVvdXMpOwogICAgIAogICAgIGlmIChjb250
aW51b3VzKSB7CiAgICAgICAgIC8vIHNtb290aCBzY3JvbGwgZXZlbnRzCkBAIC00MzMsNyArNDMz
LDcgQEAgV2ViS2V5Ym9hcmRFdmVudCBXZWJFdmVudEZhY3Rvcnk6OmNyZWF0ZVdlYktleWJvYXJk
RXZlbnQoTlNFdmVudCAqZXZlbnQsIGJvb2wgaGEKICAgICBTdHJpbmcga2V5SWRlbnRpZmllciAg
ICAgICAgICAgID0ga2V5SWRlbnRpZmllckZvcktleUV2ZW50KGV2ZW50KTsKICAgICBpbnQgd2lu
ZG93c1ZpcnR1YWxLZXlDb2RlICAgICAgID0gd2luZG93c0tleUNvZGVGb3JLZXlFdmVudChldmVu
dCk7CiAgICAgaW50IG5hdGl2ZVZpcnR1YWxLZXlDb2RlICAgICAgICA9IFtldmVudCBrZXlDb2Rl
XTsKLSAgICBpbnQgbWFjQ2hhckNvZGUgICAgICAgICAgICAgICAgID0gV0tHZXROU0V2ZW50S2V5
Q2hhcihldmVudCk7CisgICAgaW50IG1hY0NoYXJDb2RlICAgICAgICAgICAgICAgICA9IGtleUNo
YXJGb3JFdmVudChldmVudCk7CiAgICAgYm9vbCBhdXRvUmVwZWF0ICAgICAgICAgICAgICAgICA9
IFtldmVudCB0eXBlXSAhPSBOU0V2ZW50VHlwZUZsYWdzQ2hhbmdlZCAmJiBbZXZlbnQgaXNBUmVw
ZWF0XTsKICAgICBib29sIGlzS2V5cGFkICAgICAgICAgICAgICAgICAgID0gaXNLZXlwYWRFdmVu
dChldmVudCk7CiAgICAgYm9vbCBpc1N5c3RlbUtleSAgICAgICAgICAgICAgICA9IGZhbHNlOyAv
LyBTeXN0ZW1LZXkgaXMgYWx3YXlzIGZhbHNlIG9uIHRoZSBNYWMuCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMvV0tUZXh0SW5wdXRXaW5kb3dDb250cm9sbGVyLm1tIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvbWFjL1dLVGV4dElucHV0V2luZG93Q29udHJvbGxlci5t
bQppbmRleCAxMmExNTFlMzFiYTc4NjIyYWZjNDdlZTk1MzBiZDg2MjFhY2Q5ODBjLi5iNDg4NTYw
YjA3ZjA5ZTc5N2M4ZWY5MmRjYWMwOGRiM2U0OWIxMTdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9tYWMvV0tUZXh0SW5wdXRXaW5kb3dDb250cm9sbGVyLm1tCisrKyBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL21hYy9XS1RleHRJbnB1dFdpbmRvd0NvbnRyb2xsZXIubW0K
QEAgLTI5LDYgKzI5LDcgQEAKICNpZiBVU0UoQVBQS0lUKQogCiAjaW1wb3J0IDxXZWJLaXRTeXN0
ZW1JbnRlcmZhY2UuaD4KKyNpbXBvcnQgPHBhbC9zeXN0ZW0vbWFjL1dlYlBhbmVsLmg+CiAKIEBp
bnRlcmZhY2UgV0tUZXh0SW5wdXRWaWV3IDogTlNUZXh0VmlldyB7CiB9CkBAIC00Nyw3ICs0OCw3
IEBAIC0gKE5TQXJyYXkgKil2YWxpZEF0dHJpYnV0ZXNGb3JNYXJrZWRUZXh0CiAKIEBlbmQKIAot
QGludGVyZmFjZSBXS1RleHRJbnB1dFBhbmVsIDogTlNQYW5lbCB7CitAaW50ZXJmYWNlIFdLVGV4
dElucHV0UGFuZWwgOiBXZWJQYW5lbCB7CiAgICAgTlNUZXh0VmlldyAqX2lucHV0VGV4dFZpZXc7
CiB9CiAKQEAgLTc0LDcgKzc1LDcgQEAgLSAodm9pZClkZWFsbG9jCiAKIC0gKGlkKWluaXQKIHsK
LSAgICBzZWxmID0gW3N1cGVyIGluaXRXaXRoQ29udGVudFJlY3Q6TlNaZXJvUmVjdCBzdHlsZU1h
c2s6V0tHZXRJbnB1dFBhbmVsV2luZG93U3R5bGUoKSBiYWNraW5nOk5TQmFja2luZ1N0b3JlQnVm
ZmVyZWQgZGVmZXI6WUVTXTsKKyAgICBzZWxmID0gW3N1cGVyIGluaXRdOwogICAgIGlmICghc2Vs
ZikKICAgICAgICAgcmV0dXJuIG5pbDsKICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViU3lzdGVtSW50ZXJmYWNlLm1tIGIvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L21hYy9XZWJTeXN0ZW1JbnRlcmZh
Y2UubW0KaW5kZXggNDRkYzdlY2IzNjIwZThmNDUxNDJlYjM3Yzc4NzVhZGNiM2I5NDEyYi4uZDE4
YTQ0MGRkNzI1MzljNmE1Njk0Yjc0NjdmOGE2OTE4ODUxZDk5ZSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L21hYy9XZWJTeXN0ZW1JbnRlcmZhY2Uu
bW0KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L21hYy9XZWJT
eXN0ZW1JbnRlcmZhY2UubW0KQEAgLTUyLDcgKzUyLDYgQEAgdm9pZCBJbml0V2ViQ29yZVN5c3Rl
bUludGVyZmFjZSh2b2lkKQogI2VuZGlmCiAgICAgICAgIElOSVQoQ0dDb250ZXh0SXNQREZDb250
ZXh0KTsKICNpZiAhUExBVEZPUk0oSU9TKQotICAgICAgICBJTklUKEdldFdoZWVsRXZlbnREZWx0
YXMpOwogICAgICAgICBJTklUKEdldE5TRXZlbnRLZXlDaGFyKTsKICAgICAgICAgSU5JVChIaXRU
ZXN0TWVkaWFVSVBhcnQpOwogICAgICAgICBJTklUKE1lYXN1cmVNZWRpYVVJUGFydCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL0hvc3RlZC9OZXRzY2FwZVBs
dWdpbkluc3RhbmNlUHJveHkubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL0hv
c3RlZC9OZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJveHkubW0KaW5kZXggYWU0MWJjMTZjMzNkNjk2
NGY3NGM3NmZhMjQyZmI4OTJhMTQ5MWZkNS4uMDE3ZmE5ZTZiOTliMWE0OGE5YjMzYmE3MTM2ODM3
ZDVmYTQ2MzdiYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9I
b3N0ZWQvTmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvbWFjL1BsdWdpbnMvSG9zdGVkL05ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eS5tbQpA
QCAtNTQsMTAgKzU0LDExIEBACiAjaW1wb3J0IDxXZWJDb3JlL0ZyYW1lLmg+CiAjaW1wb3J0IDxX
ZWJDb3JlL0ZyYW1lTG9hZGVyLmg+CiAjaW1wb3J0IDxXZWJDb3JlL0ZyYW1lVHJlZS5oPgotI2lt
cG9ydCA8V2ViQ29yZS9VUkwuaD4KKyNpbXBvcnQgPFdlYkNvcmUvUGxhdGZvcm1FdmVudEZhY3Rv
cnlNYWMuaD4KICNpbXBvcnQgPFdlYkNvcmUvUHJveHlTZXJ2ZXIuaD4KICNpbXBvcnQgPFdlYkNv
cmUvU2VjdXJpdHlPcmlnaW4uaD4KICNpbXBvcnQgPFdlYkNvcmUvU2NyaXB0Q29udHJvbGxlci5o
PgorI2ltcG9ydCA8V2ViQ29yZS9VUkwuaD4KICNpbXBvcnQgPFdlYkNvcmUvVXNlckdlc3R1cmVJ
bmRpY2F0b3IuaD4KICNpbXBvcnQgPFdlYkNvcmUvbnBydW50aW1lX2ltcGwuaD4KICNpbXBvcnQg
PFdlYkNvcmUvcnVudGltZV9vYmplY3QuaD4KQEAgLTQ1OSw3ICs0NjAsNyBAQCB2b2lkIE5ldHNj
YXBlUGx1Z2luSW5zdGFuY2VQcm94eTo6a2V5RXZlbnQoTlNWaWV3ICpwbHVnaW5WaWV3LCBOU0V2
ZW50ICpldmVudCwgTgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGUs
IFtldmVudCBtb2RpZmllckZsYWdzXSwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgY29uc3RfY2FzdDxjaGFyKj4ocmVpbnRlcnByZXRfY2FzdDxjb25zdCBjaGFyKj4oW2No
YXJhY3RlcnNEYXRhIGJ5dGVzXSkpLCBbY2hhcmFjdGVyc0RhdGEgbGVuZ3RoXSwgCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3RfY2FzdDxjaGFyKj4ocmVpbnRlcnBy
ZXRfY2FzdDxjb25zdCBjaGFyKj4oW2NoYXJhY3RlcnNJZ25vcmluZ01vZGlmaWVyc0RhdGEgYnl0
ZXNdKSksIFtjaGFyYWN0ZXJzSWdub3JpbmdNb2RpZmllcnNEYXRhIGxlbmd0aF0sIAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtldmVudCBpc0FSZXBlYXRdLCBbZXZlbnQg
a2V5Q29kZV0sIFdLR2V0TlNFdmVudEtleUNoYXIoZXZlbnQpKTsKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBbZXZlbnQgaXNBUmVwZWF0XSwgW2V2ZW50IGtleUNvZGVdLCBr
ZXlDaGFyRm9yRXZlbnQoZXZlbnQpKTsKIH0KIAogdm9pZCBOZXRzY2FwZVBsdWdpbkluc3RhbmNl
UHJveHk6OnN5bnRoZXRpY0tleURvd25XaXRoQ29tbWFuZE1vZGlmaWVyKGludCBrZXlDb2RlLCBj
aGFyIGNoYXJhY3RlcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdp
bnMvSG9zdGVkL1dlYlRleHRJbnB1dFdpbmRvd0NvbnRyb2xsZXIubSBiL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvbWFjL1BsdWdpbnMvSG9zdGVkL1dlYlRleHRJbnB1dFdpbmRvd0NvbnRyb2xsZXIubQpp
bmRleCAwMDQwMjkzYjYyZGIzYjhmYjQyY2Q1ZDM2ODU0NmY1YzQ5YTlhOGY0Li4wOGE3MTE1MWU2
OWRhMzE3NWExYmQ2ZjViMjc2OTljNzdjODg3ZjlkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
TGVnYWN5L21hYy9QbHVnaW5zL0hvc3RlZC9XZWJUZXh0SW5wdXRXaW5kb3dDb250cm9sbGVyLm0K
KysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9Ib3N0ZWQvV2ViVGV4dElucHV0
V2luZG93Q29udHJvbGxlci5tCkBAIC0yOCw2ICsyOCw3IEBACiAjaW1wb3J0ICJXZWJUZXh0SW5w
dXRXaW5kb3dDb250cm9sbGVyLmgiCiAKICNpbXBvcnQgPFdlYktpdFN5c3RlbUludGVyZmFjZS5o
PgorI2ltcG9ydCA8cGFsL3N5c3RlbS9tYWMvV2ViUGFuZWwuaD4KIAogQGludGVyZmFjZSBXZWJU
ZXh0SW5wdXRWaWV3IDogTlNUZXh0VmlldyB7CiB9CkBAIC00Niw3ICs0Nyw3IEBAIC0gKE5TQXJy
YXkgKil2YWxpZEF0dHJpYnV0ZXNGb3JNYXJrZWRUZXh0CiAKIEBlbmQKIAotQGludGVyZmFjZSBX
ZWJUZXh0SW5wdXRQYW5lbCA6IE5TUGFuZWwgeworQGludGVyZmFjZSBXZWJUZXh0SW5wdXRQYW5l
bCA6IFdlYlBhbmVsIHsKICAgICBOU1RleHRWaWV3ICpfaW5wdXRUZXh0VmlldzsKIH0KIApAQCAt
NzAsNyArNzEsNyBAQCAtICh2b2lkKWRlYWxsb2MKIAogLSAoaWQpaW5pdAogewotICAgIHNlbGYg
PSBbc3VwZXIgaW5pdFdpdGhDb250ZW50UmVjdDpOU1plcm9SZWN0IHN0eWxlTWFzazpXS0dldElu
cHV0UGFuZWxXaW5kb3dTdHlsZSgpIGJhY2tpbmc6TlNCYWNraW5nU3RvcmVCdWZmZXJlZCBkZWZl
cjpZRVNdOworICAgIHNlbGYgPSBbc3VwZXIgaW5pdF07CiAgICAgaWYgKCFzZWxmKQogICAgICAg
ICByZXR1cm4gbmlsOwogICAgIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMv
V2ViQ29yZVN1cHBvcnQvV2ViU3lzdGVtSW50ZXJmYWNlLm1tIGIvU291cmNlL1dlYktpdExlZ2Fj
eS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViU3lzdGVtSW50ZXJmYWNlLm1tCmluZGV4IGQ0NTUxNmY1
ZWVlMWMwODJjOTgyOGQ5ZTc0NzRlYzk2ODljNDdiNTguLjZkZDBiNTdkZDRiZjM0M2ZlOTY2ZjBm
YmE2M2MxMWNmNGYwOGQ5MzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dl
YkNvcmVTdXBwb3J0L1dlYlN5c3RlbUludGVyZmFjZS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVn
YWN5L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJTeXN0ZW1JbnRlcmZhY2UubW0KQEAgLTU1LDcgKzU1
LDYgQEAgdm9pZCBJbml0V2ViQ29yZVN5c3RlbUludGVyZmFjZSh2b2lkKQogICAgIElOSVQoRHJh
d0NlbGxGb2N1c1JpbmdXaXRoRnJhbWVBdFRpbWUpOwogICAgIElOSVQoRHJhd01lZGlhVUlQYXJ0
KTsKICAgICBJTklUKERyYXdNZWRpYVNsaWRlclRyYWNrKTsKLSAgICBJTklUKEdldFdoZWVsRXZl
bnREZWx0YXMpOwogICAgIElOSVQoR2V0TlNFdmVudEtleUNoYXIpOwogICAgIElOSVQoSGl0VGVz
dE1lZGlhVUlQYXJ0KTsKICAgICBJTklUKE1lYXN1cmVNZWRpYVVJUGFydCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkR5bmFtaWNTY3JvbGxCYXJzVmll
dy5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViRHluYW1pY1Njcm9sbEJh
cnNWaWV3Lm1tCmluZGV4IDY4MDRlMjc2NTI5MjE2NzEwM2M3NWQzZjI5N2U3NGNlYTMyMjU2NDAu
LmJiMjBkZTU1MGJhYmYwMjEwMmIwYzQyMzNhN2Q1N2NiMGU3MmE1ZjYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViRHluYW1pY1Njcm9sbEJhcnNWaWV3Lm1t
CisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViRHluYW1pY1Njcm9sbEJh
cnNWaWV3Lm1tCkBAIC0zMSw2ICszMSw3IEBACiAjaW1wb3J0ICJXZWJIVE1MVmlld0ludGVybmFs
LmgiCiAjaW1wb3J0IDxXZWJDb3JlL0ZyYW1lLmg+CiAjaW1wb3J0IDxXZWJDb3JlL0ZyYW1lVmll
dy5oPgorI2ltcG9ydCA8V2ViQ29yZS9QbGF0Zm9ybUV2ZW50RmFjdG9yeU1hYy5oPgogI2ltcG9y
dCA8V2ViS2l0U3lzdGVtSW50ZXJmYWNlLmg+CiAKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwpA
QCAtNTM1LDcgKzUzNiw3IEBAIC0gKHZvaWQpc2Nyb2xsV2hlZWw6KE5TRXZlbnQgKilldmVudAog
ICAgIGZsb2F0IGRlbHRhWDsKICAgICBmbG9hdCBkZWx0YVk7CiAgICAgQk9PTCBpc0NvbnRpbnVv
dXM7Ci0gICAgV0tHZXRXaGVlbEV2ZW50RGVsdGFzKGV2ZW50LCAmZGVsdGFYLCAmZGVsdGFZLCAm
aXNDb250aW51b3VzKTsKKyAgICBnZXRXaGVlbEV2ZW50RGVsdGFzKGV2ZW50LCBkZWx0YVgsIGRl
bHRhWSwgaXNDb250aW51b3VzKTsKIAogICAgIE5TRXZlbnRQaGFzZSBtb21lbnR1bVBoYXNlID0g
W2V2ZW50IG1vbWVudHVtUGhhc2VdOwogICAgIEJPT0wgaXNMYXRjaGluZ0V2ZW50ID0gbW9tZW50
dW1QaGFzZSAmIE5TRXZlbnRQaGFzZUJlZ2FuIHx8IG1vbWVudHVtUGhhc2UgJiBOU0V2ZW50UGhh
c2VTdGF0aW9uYXJ5OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmll
dy9XZWJIVE1MVmlldy5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViSFRN
TFZpZXcubW0KaW5kZXggOGZjN2Y2M2M1ZGM0ZTFlY2Q3ODQxZTVmNGNkYTc0NmI0OWMyZTU4OC4u
OGQwZDRkOTI1NDgwY2I4M2MyMGFlODE0NTU0NTQyMzAwNzRhNjhkYiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJIVE1MVmlldy5tbQorKysgYi9Tb3VyY2Uv
V2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkhUTUxWaWV3Lm1tCkBAIC0xMzIsNiArMTMyLDcg
QEAKICNpbXBvcnQgPHBhbC9zcGkvY29jb2EvTlNVUkxGaWxlVHlwZU1hcHBpbmdzU1BJLmg+CiAj
aW1wb3J0IDxwYWwvc3BpL21hYy9OU1NwZWxsQ2hlY2tlclNQSS5oPgogI2ltcG9ydCA8cGFsL3Nw
aS9tYWMvTlNWaWV3U1BJLmg+CisjaW1wb3J0IDxwYWwvc3BpL21hYy9OU1dpbmRvd1NQSS5oPgog
I2ltcG9ydCA8cnVudGltZS9Jbml0aWFsaXplVGhyZWFkaW5nLmg+CiAjaW1wb3J0IDx3dGYvQmxv
Y2tPYmpDRXhjZXB0aW9ucy5oPgogI2ltcG9ydCA8d3RmL01haW5UaHJlYWQuaD4KQEAgLTE0MDks
OCArMTQxMCw4IEBAIC0gKHZvaWQpX3JlbW92ZVdpbmRvd09ic2VydmVycwogICAgIE5TTm90aWZp
Y2F0aW9uQ2VudGVyICpub3RpZmljYXRpb25DZW50ZXIgPSBbTlNOb3RpZmljYXRpb25DZW50ZXIg
ZGVmYXVsdENlbnRlcl07CiAgICAgW25vdGlmaWNhdGlvbkNlbnRlciByZW1vdmVPYnNlcnZlcjpz
ZWxmIG5hbWU6TlNXaW5kb3dEaWRCZWNvbWVLZXlOb3RpZmljYXRpb24gb2JqZWN0Om5pbF07CiAg
ICAgW25vdGlmaWNhdGlvbkNlbnRlciByZW1vdmVPYnNlcnZlcjpzZWxmIG5hbWU6TlNXaW5kb3dE
aWRSZXNpZ25LZXlOb3RpZmljYXRpb24gb2JqZWN0Om5pbF07Ci0gICAgW25vdGlmaWNhdGlvbkNl
bnRlciByZW1vdmVPYnNlcnZlcjpzZWxmIG5hbWU6V0tXaW5kb3dXaWxsT3JkZXJPblNjcmVlbk5v
dGlmaWNhdGlvbigpIG9iamVjdDp3aW5kb3ddOwotICAgIFtub3RpZmljYXRpb25DZW50ZXIgcmVt
b3ZlT2JzZXJ2ZXI6c2VsZiBuYW1lOldLV2luZG93V2lsbE9yZGVyT2ZmU2NyZWVuTm90aWZpY2F0
aW9uKCkgb2JqZWN0OndpbmRvd107CisgICAgW25vdGlmaWNhdGlvbkNlbnRlciByZW1vdmVPYnNl
cnZlcjpzZWxmIG5hbWU6TlNXaW5kb3dXaWxsT3JkZXJPblNjcmVlbk5vdGlmaWNhdGlvbiBvYmpl
Y3Q6d2luZG93XTsKKyAgICBbbm90aWZpY2F0aW9uQ2VudGVyIHJlbW92ZU9ic2VydmVyOnNlbGYg
bmFtZTpOU1dpbmRvd1dpbGxPcmRlck9mZlNjcmVlbk5vdGlmaWNhdGlvbiBvYmplY3Q6d2luZG93
XTsKICAgICBbbm90aWZpY2F0aW9uQ2VudGVyIHJlbW92ZU9ic2VydmVyOnNlbGYgbmFtZTpOU1dp
bmRvd1dpbGxDbG9zZU5vdGlmaWNhdGlvbiBvYmplY3Q6d2luZG93XTsKICAgICAKICAgICBfcHJp
dmF0ZS0+b2JzZXJ2aW5nV2luZG93Tm90aWZpY2F0aW9ucyA9IGZhbHNlOwpAQCAtMzQ0OSw4ICsz
NDUwLDggQEAgLSAodm9pZClhZGRXaW5kb3dPYnNlcnZlcnMKICAgICBOU05vdGlmaWNhdGlvbkNl
bnRlciAqbm90aWZpY2F0aW9uQ2VudGVyID0gW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRD
ZW50ZXJdOwogICAgIFtub3RpZmljYXRpb25DZW50ZXIgYWRkT2JzZXJ2ZXI6c2VsZiBzZWxlY3Rv
cjpAc2VsZWN0b3Iod2luZG93RGlkQmVjb21lS2V5OikgbmFtZTpOU1dpbmRvd0RpZEJlY29tZUtl
eU5vdGlmaWNhdGlvbiBvYmplY3Q6bmlsXTsKICAgICBbbm90aWZpY2F0aW9uQ2VudGVyIGFkZE9i
c2VydmVyOnNlbGYgc2VsZWN0b3I6QHNlbGVjdG9yKHdpbmRvd0RpZFJlc2lnbktleTopIG5hbWU6
TlNXaW5kb3dEaWRSZXNpZ25LZXlOb3RpZmljYXRpb24gb2JqZWN0Om5pbF07Ci0gICAgW25vdGlm
aWNhdGlvbkNlbnRlciBhZGRPYnNlcnZlcjpzZWxmIHNlbGVjdG9yOkBzZWxlY3Rvcih3aW5kb3dX
aWxsT3JkZXJPblNjcmVlbjopIG5hbWU6V0tXaW5kb3dXaWxsT3JkZXJPblNjcmVlbk5vdGlmaWNh
dGlvbigpIG9iamVjdDp3aW5kb3ddOwotICAgIFtub3RpZmljYXRpb25DZW50ZXIgYWRkT2JzZXJ2
ZXI6c2VsZiBzZWxlY3RvcjpAc2VsZWN0b3Iod2luZG93V2lsbE9yZGVyT2ZmU2NyZWVuOikgbmFt
ZTpXS1dpbmRvd1dpbGxPcmRlck9mZlNjcmVlbk5vdGlmaWNhdGlvbigpIG9iamVjdDp3aW5kb3dd
OworICAgIFtub3RpZmljYXRpb25DZW50ZXIgYWRkT2JzZXJ2ZXI6c2VsZiBzZWxlY3RvcjpAc2Vs
ZWN0b3Iod2luZG93V2lsbE9yZGVyT25TY3JlZW46KSBuYW1lOk5TV2luZG93V2lsbE9yZGVyT25T
Y3JlZW5Ob3RpZmljYXRpb24gb2JqZWN0OndpbmRvd107CisgICAgW25vdGlmaWNhdGlvbkNlbnRl
ciBhZGRPYnNlcnZlcjpzZWxmIHNlbGVjdG9yOkBzZWxlY3Rvcih3aW5kb3dXaWxsT3JkZXJPZmZT
Y3JlZW46KSBuYW1lOk5TV2luZG93V2lsbE9yZGVyT2ZmU2NyZWVuTm90aWZpY2F0aW9uIG9iamVj
dDp3aW5kb3ddOwogICAgIFtub3RpZmljYXRpb25DZW50ZXIgYWRkT2JzZXJ2ZXI6c2VsZiBzZWxl
Y3RvcjpAc2VsZWN0b3Iod2luZG93V2lsbENsb3NlOikgbmFtZTpOU1dpbmRvd1dpbGxDbG9zZU5v
dGlmaWNhdGlvbiBvYmplY3Q6d2luZG93XTsKICAgICAKICAgICBfcHJpdmF0ZS0+b2JzZXJ2aW5n
V2luZG93Tm90aWZpY2F0aW9ucyA9IHRydWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVn
YWN5L21hYy9XZWJWaWV3L1dlYlZpZXcubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJW
aWV3L1dlYlZpZXcubW0KaW5kZXggNDc4YzIxY2E2MTg5Mjg3MDMyNmFiOGI3ZWZlMjMyMWM3OWQ4
YTU1NS4uZmUxOTA1YTVkYTc3NTU0Mzg2ZDhmOTE4YmQ5NjNmZTBkMDVjYzYyZiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCisrKyBiL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQpAQCAtMjExLDcgKzIxMSw5IEBA
CiAjaW1wb3J0IDxwYWwvc3BpL2NmL0NGTmV0d29ya1NQSS5oPgogI2ltcG9ydCA8cGFsL3NwaS9j
b2NvYS9OU1RvdWNoQmFyU1BJLmg+CiAjaW1wb3J0IDxwYWwvc3BpL2NvY29hL05TVVJMRmlsZVR5
cGVNYXBwaW5nc1NQSS5oPgorI2ltcG9ydCA8cGFsL3NwaS9tYWMvTlNSZXNwb25kZXJTUEkuaD4K
ICNpbXBvcnQgPHBhbC9zcGkvbWFjL05TU3BlbGxDaGVja2VyU1BJLmg+CisjaW1wb3J0IDxwYWwv
c3BpL21hYy9OU1dpbmRvd1NQSS5oPgogI2ltcG9ydCA8cnVudGltZS9BcnJheVByb3RvdHlwZS5o
PgogI2ltcG9ydCA8cnVudGltZS9DYXRjaFNjb3BlLmg+CiAjaW1wb3J0IDxydW50aW1lL0RhdGVJ
bnN0YW5jZS5oPgpAQCAtNTg2Niw5ICs1ODY4LDkgQEAgLSAodm9pZClhZGRXaW5kb3dPYnNlcnZl
cnNGb3JXaW5kb3c6KE5TV2luZG93ICopd2luZG93CiAgICAgICAgIFtbTlNOb3RpZmljYXRpb25D
ZW50ZXIgZGVmYXVsdENlbnRlcl0gYWRkT2JzZXJ2ZXI6c2VsZiBzZWxlY3RvcjpAc2VsZWN0b3Io
d2luZG93S2V5U3RhdGVDaGFuZ2VkOikKICAgICAgICAgICAgIG5hbWU6TlNXaW5kb3dEaWRSZXNp
Z25LZXlOb3RpZmljYXRpb24gb2JqZWN0OndpbmRvd107CiAgICAgICAgIFtbTlNOb3RpZmljYXRp
b25DZW50ZXIgZGVmYXVsdENlbnRlcl0gYWRkT2JzZXJ2ZXI6c2VsZiBzZWxlY3RvcjpAc2VsZWN0
b3IoX3dpbmRvd1dpbGxPcmRlck9uU2NyZWVuOikKLSAgICAgICAgICAgIG5hbWU6V0tXaW5kb3dX
aWxsT3JkZXJPblNjcmVlbk5vdGlmaWNhdGlvbigpIG9iamVjdDp3aW5kb3ddOworICAgICAgICAg
ICAgbmFtZTpOU1dpbmRvd1dpbGxPcmRlck9uU2NyZWVuTm90aWZpY2F0aW9uIG9iamVjdDp3aW5k
b3ddOwogICAgICAgICBbW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdIGFkZE9i
c2VydmVyOnNlbGYgc2VsZWN0b3I6QHNlbGVjdG9yKF93aW5kb3dXaWxsT3JkZXJPZmZTY3JlZW46
KQotICAgICAgICAgICAgbmFtZTpXS1dpbmRvd1dpbGxPcmRlck9mZlNjcmVlbk5vdGlmaWNhdGlv
bigpIG9iamVjdDp3aW5kb3ddOworICAgICAgICAgICAgbmFtZTpOU1dpbmRvd1dpbGxPcmRlck9m
ZlNjcmVlbk5vdGlmaWNhdGlvbiBvYmplY3Q6d2luZG93XTsKICAgICAgICAgW1tOU05vdGlmaWNh
dGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSBhZGRPYnNlcnZlcjpzZWxmIHNlbGVjdG9yOkBzZWxl
Y3Rvcihfd2luZG93RGlkQ2hhbmdlQmFja2luZ1Byb3BlcnRpZXM6KQogICAgICAgICAgICAgbmFt
ZTp3aW5kb3dEaWRDaGFuZ2VCYWNraW5nUHJvcGVydGllc05vdGlmaWNhdGlvbiBvYmplY3Q6d2lu
ZG93XTsKICAgICAgICAgW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSBhZGRP
YnNlcnZlcjpzZWxmIHNlbGVjdG9yOkBzZWxlY3Rvcihfd2luZG93RGlkQ2hhbmdlU2NyZWVuOikK
QEAgLTU4OTAsOSArNTg5Miw5IEBAIC0gKHZvaWQpcmVtb3ZlV2luZG93T2JzZXJ2ZXJzCiAgICAg
ICAgIFtbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl0gcmVtb3ZlT2JzZXJ2ZXI6
c2VsZgogICAgICAgICAgICAgbmFtZTpOU1dpbmRvd0RpZFJlc2lnbktleU5vdGlmaWNhdGlvbiBv
YmplY3Q6d2luZG93XTsKICAgICAgICAgW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2Vu
dGVyXSByZW1vdmVPYnNlcnZlcjpzZWxmCi0gICAgICAgICAgICBuYW1lOldLV2luZG93V2lsbE9y
ZGVyT25TY3JlZW5Ob3RpZmljYXRpb24oKSBvYmplY3Q6d2luZG93XTsKKyAgICAgICAgICAgIG5h
bWU6TlNXaW5kb3dXaWxsT3JkZXJPblNjcmVlbk5vdGlmaWNhdGlvbiBvYmplY3Q6d2luZG93XTsK
ICAgICAgICAgW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSByZW1vdmVPYnNl
cnZlcjpzZWxmCi0gICAgICAgICAgICBuYW1lOldLV2luZG93V2lsbE9yZGVyT2ZmU2NyZWVuTm90
aWZpY2F0aW9uKCkgb2JqZWN0OndpbmRvd107CisgICAgICAgICAgICBuYW1lOk5TV2luZG93V2ls
bE9yZGVyT2ZmU2NyZWVuTm90aWZpY2F0aW9uIG9iamVjdDp3aW5kb3ddOwogICAgICAgICBbW05T
Tm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdIHJlbW92ZU9ic2VydmVyOnNlbGYKICAg
ICAgICAgICAgIG5hbWU6d2luZG93RGlkQ2hhbmdlQmFja2luZ1Byb3BlcnRpZXNOb3RpZmljYXRp
b24gb2JqZWN0OndpbmRvd107CiAgICAgICAgIFtbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVs
dENlbnRlcl0gcmVtb3ZlT2JzZXJ2ZXI6c2VsZgpAQCAtNTkyMyw3ICs1OTI1LDcgQEAgLSAodm9p
ZCl2aWV3V2lsbE1vdmVUb1dpbmRvdzooTlNXaW5kb3cgKil3aW5kb3cKICAgICAgICAgLy8gVGhl
IGZvbGxvd2luZyBhcmUgZXhwZW5zaXZlIGVub3VnaCB0aGF0IHdlIGRvbid0IHdhbnQgdG8gY2Fs
bCB0aGVtIG92ZXIKICAgICAgICAgLy8gYW5kIG92ZXIsIHNvIGRvIHRoZW0gd2hlbiB3ZSBtb3Zl
IGludG8gYSB3aW5kb3cuCiAgICAgICAgIFt3aW5kb3cgc2V0QWNjZXB0c01vdXNlTW92ZWRFdmVu
dHM6WUVTXTsKLSAgICAgICAgV0tTZXROU1dpbmRvd1Nob3VsZFBvc3RFdmVudE5vdGlmaWNhdGlv
bnMod2luZG93LCBZRVMpOworICAgICAgICBbd2luZG93IF9zZXRTaG91bGRQb3N0RXZlbnROb3Rp
ZmljYXRpb25zOllFU107CiAgICAgfSBlbHNlIGlmICghX3ByaXZhdGUtPmNsb3NlZCkgewogICAg
ICAgICBfcHJpdmF0ZS0+cGFnZS0+c2V0Q2FuU3RhcnRNZWRpYShmYWxzZSk7CiAgICAgICAgIF9w
cml2YXRlLT5wYWdlLT5zZXRJc0luV2luZG93KGZhbHNlKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>319548</attachid>
            <date>2017-08-31 17:24:21 -0700</date>
            <delta_ts>2017-08-31 17:35:04 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-176175-20170831172420.patch</filename>
            <type>text/plain</type>
            <size>38853</size>
            <attacher name="Andy Estes">aestes</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIxMzgxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzVhYmE3NzU1NjhiNjgz
ZmZjOWVjZWE4MzhlNWFmOGRlMTVjOTY4Ni4uZTA3MTA5MzdiY2NhOGVhMTY1ZWMzZjY0MjM1ZWY5
MTA4OTU5M2E3MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDE3LTA4LTMxICBBbmR5
IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNvbT4KKworICAgICAgICBbTWFjXSBVcHN0cmVhbSBBcHBL
aXQtcmVsYXRlZCBXZWJLaXRTeXN0ZW1JbnRlcmZhY2UgZnVuY3Rpb25zCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzYxNzUKKworICAgICAgICBSZXZp
ZXdlZCBieSBCcmFkeSBFaWRzb24uCisKKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9XZWJDb3Jl
LnhjY29uZmlnOiBBZGRlZCAtT2JqQyB0byBPVEhFUl9MREZMQUdTIHNvIHRoYXQgT2JqZWN0aXZl
LUMgY2xhc3NlcworICAgICAgICBpbiBQQUwgYXJlIGV4cG9ydGVkIGJ5IFdlYkNvcmUgZXZlbiBp
ZiBXZWJDb3JlIGRvZXNuJ3QgdXNlIHRoZW0uCisgICAgICAgICogcGxhdGZvcm0vbWFjL1BsYXRm
b3JtRXZlbnRGYWN0b3J5TWFjLmg6CisgICAgICAgICogcGxhdGZvcm0vbWFjL1BsYXRmb3JtRXZl
bnRGYWN0b3J5TWFjLm1tOgorICAgICAgICAoV2ViQ29yZTo6Z2V0V2hlZWxFdmVudERlbHRhcyk6
CisgICAgICAgIChXZWJDb3JlOjprZXlDaGFyRm9yRXZlbnQpOgorICAgICAgICAoV2ViQ29yZTo6
UGxhdGZvcm1XaGVlbEV2ZW50QnVpbGRlcjo6UGxhdGZvcm1XaGVlbEV2ZW50QnVpbGRlcik6Cisg
ICAgICAgICogcGxhdGZvcm0vbWFjL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2UuaDoKKyAgICAgICAg
KiBwbGF0Zm9ybS9tYWMvV2ViQ29yZVN5c3RlbUludGVyZmFjZS5tbToKKwogMjAxNy0wOC0zMCAg
QW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CiAKICAgICAgICAgW01hY10gVXBzdHJlYW0g
QWNjZXNzaWJpbGl0eS1yZWxhdGVkIFdlYktpdFN5c3RlbUludGVyZmFjZSBmdW5jdGlvbnMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9Q
QUwvQ2hhbmdlTG9nCmluZGV4IDdiNGI2MDFmZTRlNWUxNTBmODE4OTc0NDU3YzY5ZWViOWI2MDEz
NTEuLmQ3YWE1Mzc5ODdlOGU2NzA0MmJjNWM0NTIxNDkzYmE2NDUyZmY4NWIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML0No
YW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDE3LTA4LTMxICBBbmR5IEVzdGVzICA8YWVzdGVz
QGFwcGxlLmNvbT4KKworICAgICAgICBbTWFjXSBVcHN0cmVhbSBBcHBLaXQtcmVsYXRlZCBXZWJL
aXRTeXN0ZW1JbnRlcmZhY2UgZnVuY3Rpb25zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xNzYxNzUKKworICAgICAgICBSZXZpZXdlZCBieSBCcmFkeSBF
aWRzb24uCisKKyAgICAgICAgKiBQQUwueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAg
ICAgKiBwYWwvc3BpL21hYy9ISVRvb2xib3hTUEkuaDoKKyAgICAgICAgKiBwYWwvc3BpL21hYy9O
U1Jlc3BvbmRlclNQSS5oOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9t
YWMvTlNXaW5kb3dTUEkuaC4KKyAgICAgICAgKiBwYWwvc3BpL21hYy9OU1dpbmRvd1NQSS5oOgor
ICAgICAgICAqIHBhbC9zeXN0ZW0vbWFjL1dlYlBhbmVsLmg6IENvcGllZCBmcm9tIFNvdXJjZS9X
ZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9OU1dpbmRvd1NQSS5oLgorICAgICAgICAqIHBhbC9zeXN0
ZW0vbWFjL1dlYlBhbmVsLm1tOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3Nw
aS9tYWMvSElUb29sYm94U1BJLmguCisgICAgICAgICgtW1dlYlBhbmVsIGluaXRdKToKKwogMjAx
Ny0wOC0zMCAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CiAKICAgICAgICAgW01hY10g
VXBzdHJlYW0gQWNjZXNzaWJpbGl0eS1yZWxhdGVkIFdlYktpdFN5c3RlbUludGVyZmFjZSBmdW5j
dGlvbnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktp
dC9DaGFuZ2VMb2cKaW5kZXggYTg2NjZmMzM4NTM0MWQzNTZkN2EwYzcxMzFlYTJhZmY2ODE0YTY4
Yi4uMGVhNWVhYmRhZTk5Y2IwZDE1NjMwNGRhY2M1YTk4MTFmOGE4YWYzNiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwyMCBAQAorMjAxNy0wOC0zMSAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+
CisKKyAgICAgICAgW01hY10gVXBzdHJlYW0gQXBwS2l0LXJlbGF0ZWQgV2ViS2l0U3lzdGVtSW50
ZXJmYWNlIGZ1bmN0aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTc2MTc1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQnJhZHkgRWlkc29uLgorCisg
ICAgICAgICogUGx1Z2luUHJvY2Vzcy9tYWMvUGx1Z2luUHJvY2Vzc01hYy5tbToKKyAgICAgICAg
KFdlYktpdDo6aW5pdGlhbGl6ZUNvY29hT3ZlcnJpZGVzKToKKyAgICAgICAgKiBTaGFyZWQvbWFj
L1dlYkV2ZW50RmFjdG9yeS5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViRXZlbnRGYWN0b3J5Ojpj
cmVhdGVXZWJXaGVlbEV2ZW50KToKKyAgICAgICAgKFdlYktpdDo6V2ViRXZlbnRGYWN0b3J5Ojpj
cmVhdGVXZWJLZXlib2FyZEV2ZW50KToKKyAgICAgICAgKiBVSVByb2Nlc3MvbWFjL1dLVGV4dElu
cHV0V2luZG93Q29udHJvbGxlci5tbToKKyAgICAgICAgKC1bV0tUZXh0SW5wdXRQYW5lbCBpbml0
XSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViU3lzdGVtSW50
ZXJmYWNlLm1tOgorICAgICAgICAoSW5pdFdlYkNvcmVTeXN0ZW1JbnRlcmZhY2UpOgorCiAyMDE3
LTA4LTMwICBBbmR5IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNvbT4KIAogICAgICAgICBbTWFjXSBV
cHN0cmVhbSBBY2Nlc3NpYmlsaXR5LXJlbGF0ZWQgV2ViS2l0U3lzdGVtSW50ZXJmYWNlIGZ1bmN0
aW9ucwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nIGIvU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCmluZGV4IGJkZjVkMzhhZTdlNWI3NjE0MDli
M2QxMDU0ZDg0MzgzODY4OWZiZGEuLmM4NTNmMzgxMDg5NmM2MTk0ZDFhOTliODVhZDRlNTYzMTkw
MWM2MDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZworKysg
Yi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNiBAQAorMjAx
Ny0wOC0zMSAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CisKKyAgICAgICAgW01hY10g
VXBzdHJlYW0gQXBwS2l0LXJlbGF0ZWQgV2ViS2l0U3lzdGVtSW50ZXJmYWNlIGZ1bmN0aW9ucwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc2MTc1CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgQnJhZHkgRWlkc29uLgorCisgICAgICAgICogUGx1Z2lucy9I
b3N0ZWQvTmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5Lm1tOgorICAgICAgICAoV2ViS2l0OjpO
ZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJveHk6OmtleUV2ZW50KToKKyAgICAgICAgKiBQbHVnaW5z
L0hvc3RlZC9XZWJUZXh0SW5wdXRXaW5kb3dDb250cm9sbGVyLm06CisgICAgICAgICgtW1dlYlRl
eHRJbnB1dFBhbmVsIGluaXRdKToKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJTeXN0ZW1J
bnRlcmZhY2UubW06CisgICAgICAgIChJbml0V2ViQ29yZVN5c3RlbUludGVyZmFjZSk6CisgICAg
ICAgICogV2ViVmlldy9XZWJEeW5hbWljU2Nyb2xsQmFyc1ZpZXcubW06CisgICAgICAgICgtW1dl
YkR5bmFtaWNTY3JvbGxCYXJzVmlldyBzY3JvbGxXaGVlbDpdKToKKyAgICAgICAgKiBXZWJWaWV3
L1dlYkhUTUxWaWV3Lm1tOgorICAgICAgICAoLVtXZWJIVE1MVmlldyBfcmVtb3ZlV2luZG93T2Jz
ZXJ2ZXJzXSk6CisgICAgICAgICgtW1dlYkhUTUxWaWV3IGFkZFdpbmRvd09ic2VydmVyc10pOgor
ICAgICAgICAqIFdlYlZpZXcvV2ViVmlldy5tbToKKyAgICAgICAgKC1bV2ViVmlldyBhZGRXaW5k
b3dPYnNlcnZlcnNGb3JXaW5kb3c6XSk6CisgICAgICAgICgtW1dlYlZpZXcgcmVtb3ZlV2luZG93
T2JzZXJ2ZXJzXSk6CisgICAgICAgICgtW1dlYlZpZXcgdmlld1dpbGxNb3ZlVG9XaW5kb3c6XSk6
CisKIDIwMTctMDgtMzAgIEFuZHkgRXN0ZXMgIDxhZXN0ZXNAYXBwbGUuY29tPgogCiAgICAgICAg
IFtNYWNdIFVwc3RyZWFtIEFjY2Vzc2liaWxpdHktcmVsYXRlZCBXZWJLaXRTeXN0ZW1JbnRlcmZh
Y2UgZnVuY3Rpb25zCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9X
ZWJDb3JlLnhjY29uZmlnIGIvU291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvV2ViQ29yZS54
Y2NvbmZpZwppbmRleCAyYTBhY2Y3YWUyNzhjNjA5ODUxODBmOTg2Yzc1MWMzNmRmYmFhZGQ5Li4z
NWZjM2U3OTVmZjhhMjljYjAzMWMwNTkzYzI2YmViY2RkZjNlNDQ3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9XZWJDb3JlLnhjY29uZmlnCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL0NvbmZpZ3VyYXRpb25zL1dlYkNvcmUueGNjb25maWcKQEAgLTc3LDcgKzc3LDcgQEAg
TElCV0VCUlRDX0xJQlJBUllfRElSX1VTRV9PVkVSUklERV9GUkFNRVdPUktTX0RJUl9OTyA9ICQo
V0VCQ09SRV9GUkFNRVdPUktTX0RJUikKIExJQldFQlJUQ19MSUJSQVJZX0RJUl9VU0VfT1ZFUlJJ
REVfRlJBTUVXT1JLU19ESVJfWUVTID0gJChXS19PVkVSUklERV9GUkFNRVdPUktTX0RJUik7CiAK
IE9USEVSX0xERkxBR1MgPSAkKGluaGVyaXRlZCkgJChXS19SRUxPQ0FUQUJMRV9GUkFNRVdPUktf
TERGTEFHUykgJChXS19VTkRFRklORURfU1lNQk9MU19MREZMQUdTKSAkKE9USEVSX0xERkxBR1Nf
UExBVEZPUk0pOwotT1RIRVJfTERGTEFHU19CQVNFID0gLWxzcWxpdGUzIC1sb2JqYyAtbEFOR0xF
IC1mcmFtZXdvcmsgQ29yZUF1ZGlvIC1mcmFtZXdvcmsgTWV0YWwgLWFsbG93YWJsZV9jbGllbnQg
V2ViQ29yZVRlc3RTdXBwb3J0IC1hbGxvd2FibGVfY2xpZW50IFdlYktpdExlZ2FjeTsKK09USEVS
X0xERkxBR1NfQkFTRSA9IC1sc3FsaXRlMyAtbG9iamMgLWxBTkdMRSAtZnJhbWV3b3JrIENvcmVB
dWRpbyAtZnJhbWV3b3JrIE1ldGFsIC1hbGxvd2FibGVfY2xpZW50IFdlYkNvcmVUZXN0U3VwcG9y
dCAtYWxsb3dhYmxlX2NsaWVudCBXZWJLaXRMZWdhY3kgLU9iakM7CiAvLyBGSVhNRTogUmVkdWNl
IHRoZSBudW1iZXIgb2YgYWxsb3dhYmxlX2NsaWVudCA8cmRhcjovL3Byb2JsZW0vMzE4MjM5Njk+
CiBPVEhFUl9MREZMQUdTX0JBU0VfaW9zID0gJChPVEhFUl9MREZMQUdTX0JBU0UpIC1mcmFtZXdv
cmsgQ0ZOZXR3b3JrIC1mcmFtZXdvcmsgQ29yZUdyYXBoaWNzIC1mcmFtZXdvcmsgQ29yZVRleHQg
LWZyYW1ld29yayBGb3VuZGF0aW9uIC1mcmFtZXdvcmsgSW1hZ2VJTyAtZnJhbWV3b3JrIE1vYmls
ZUNvcmVTZXJ2aWNlcyAtZnJhbWV3b3JrIE9wZW5HTEVTIC1sTW9iaWxlR2VzdGFsdCAkKFdLX0lP
U19CSU5DT01QQVRfTERGTEFHUykgLWFsbG93YWJsZV9jbGllbnQgV2ViS2l0IC1hbGxvd2FibGVf
Y2xpZW50IGlUdW5lc1UgLWFsbG93YWJsZV9jbGllbnQgQ2FzYWJsYW5jYSAtYWxsb3dhYmxlX2Ns
aWVudCBSZW1vdGUgLWFsbG93YWJsZV9jbGllbnQgVFZCb29rcyAtYWxsb3dhYmxlX2NsaWVudCBE
dW1wUmVuZGVyVHJlZSAtYWxsb3dhYmxlX2NsaWVudCBXZWJLaXRUZXN0UnVubmVyIC1hbGxvd2Fi
bGVfY2xpZW50IFRlc3RXZWJLaXRBUEk7CiBPVEhFUl9MREZMQUdTX1BMQVRGT1JNW3Nkaz1pcGhv
bmVvcypdID0gJChPVEhFUl9MREZMQUdTX0JBU0VfaW9zKSAtZnJhbWV3b3JrIElPU3VyZmFjZSAt
ZnJhbWV3b3JrIEdyYXBoaWNzU2VydmljZXMgJChMSUJXRUJSVENfTERGTEFHUyk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9T
b3VyY2UvV2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggZDk4
NThmOWVlMmI0MWYwMDU5MzcxYWU5MGNiMmJmZGRkYTNkMGI4OC4uOGRkNWE2YjM2NzkyYTI2MWZi
ZTUzOTkzMDQ5NmY5MTc0YjdmMDU1MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML1BB
TC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMTAxLDYgKzEwMSw5IEBACiAJCUExMDI2NTg5
MUY1Njc0N0EwMEI0Qzg0NCAvKiBISVRvb2xib3hTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExMDI2NTg4MUY1Njc0N0EwMEI0Qzg0NCAvKiBISVRv
b2xib3hTUEkuaCAqLzsgfTsKIAkJQTEwMjY1OEIxRjU2NzQ4QzAwQjRDODQ0IC8qIFF1aWNrRHJh
d1NQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTEw
MjY1OEExRjU2NzQ4QzAwQjRDODQ0IC8qIFF1aWNrRHJhd1NQSS5oICovOyB9OwogCQlBMTAyNjU4
RTFGNTY3RTlEMDBCNEM4NDQgLyogSElTZXJ2aWNlc1NQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTEwMjY1OEQxRjU2N0U5RDAwQjRDODQ0IC8qIEhJ
U2VydmljZXNTUEkuaCAqLzsgfTsKKwkJQTEwODI2RjExRjU3M0JDQTAwNDc3MkFDIC8qIE5TUmVz
cG9uZGVyU1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBBMTA4MjZGMDFGNTczQkNBMDA0NzcyQUMgLyogTlNSZXNwb25kZXJTUEkuaCAqLzsgfTsKKwkJ
QTEwODI2RjkxRjU3NjI5MjAwNDc3MkFDIC8qIFdlYlBhbmVsLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMTA4MjZGNzFGNTc2MjkyMDA0NzcyQUMgLyog
V2ViUGFuZWwuaCAqLzsgfTsKKwkJQTEwODI2RkExRjU3NjI5MjAwNDc3MkFDIC8qIFdlYlBhbmVs
Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTEwODI2
RjgxRjU3NjI5MjAwNDc3MkFDIC8qIFdlYlBhbmVsLm1tICovOyB9OwogCQlBMUY1NURDRjFGNTUy
OEVDMDBFREI3NUYgLyogTWV0YWRhdGFTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEExRjU1RENFMUY1NTI4RUMwMEVEQjc1RiAvKiBNZXRhZGF0YVNQ
SS5oICovOyB9OwogCQlBMzBENDEyMTFGMEREMEVBMDBCNzE5NTQgLyogS2lsbFJpbmcuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEEzMEQ0MTFFMUYwREQw
RUEwMEI3MTk1NCAvKiBLaWxsUmluZy5oICovOyB9OwogCQlBMzBENDEyMjFGMEREMEVBMDBCNzE5
NTQgLyogS2lsbFJpbmdOb25lLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEEzMEQ0MTFGMUYwREQwRUEwMEI3MTk1NCAvKiBLaWxsUmluZ05vbmUuY3Bw
ICovOyB9OwpAQCAtMjE3LDYgKzIyMCw5IEBACiAJCUExMDI2NTg4MUY1Njc0N0EwMEI0Qzg0NCAv
KiBISVRvb2xib3hTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSElUb29s
Ym94U1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUExMDI2NThBMUY1Njc0OEMw
MEI0Qzg0NCAvKiBRdWlja0RyYXdTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gUXVpY2tEcmF3U1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUExMDI2NThE
MUY1NjdFOUQwMEI0Qzg0NCAvKiBISVNlcnZpY2VzU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhJU2Vy
dmljZXNTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTEwODI2RjAxRjU3M0JD
QTAwNDc3MkFDIC8qIE5TUmVzcG9uZGVyU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5TUmVzcG9uZGVy
U1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExMDgyNkY3MUY1NzYyOTIwMDQ3
NzJBQyAvKiBXZWJQYW5lbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJQYW5lbC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlBMTA4MjZGODFGNTc2MjkyMDA0NzcyQUMgLyogV2ViUGFuZWwu
bW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJQYW5lbC5tbTsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJQTFGNTVEQ0UxRjU1MjhFQzAwRURCNzVGIC8qIE1ldGFkYXRhU1BJLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IE1ldGFkYXRhU1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CUEzMEQ0MTFFMUYwREQwRUEwMEI3MTk1NCAvKiBLaWxsUmluZy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBLaWxsUmluZy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQlBMzBENDExRjFGMEREMEVBMDBCNzE5NTQgLyogS2lsbFJpbmdOb25lLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEtpbGxSaW5nTm9uZS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CkBAIC0zNTMsNiArMzU5LDcgQEAKIAkJCQkwQzc3ODU3OTFGNDUxMzBG
MDBGNEVCQjYgLyogTlNNZW51U1BJLmggKi8sCiAJCQkJMEM3Nzg1N0ExRjQ1MTMwRjAwRjRFQkI2
IC8qIE5TUGFzdGVib2FyZFNQSS5oICovLAogCQkJCTBDNzc4NTdCMUY0NTEzMEYwMEY0RUJCNiAv
KiBOU1BvcG92ZXJTUEkuaCAqLywKKwkJCQlBMTA4MjZGMDFGNTczQkNBMDA0NzcyQUMgLyogTlNS
ZXNwb25kZXJTUEkuaCAqLywKIAkJCQkwQzc3ODU3QzFGNDUxMzBGMDBGNEVCQjYgLyogTlNTY3Jv
bGxlckltcFNQSS5oICovLAogCQkJCTBDNzc4NTdEMUY0NTEzMEYwMEY0RUJCNiAvKiBOU1Njcm9s
bGluZ0lucHV0RmlsdGVyU1BJLmggKi8sCiAJCQkJMEM3Nzg1N0UxRjQ1MTMwRjAwRjRFQkI2IC8q
IE5TU2Nyb2xsaW5nTW9tZW50dW1DYWxjdWxhdG9yU1BJLmggKi8sCkBAIC00NzMsNiArNDgwLDgg
QEAKIAkJCQlBMzc4OEU5RDFGMDVCNzhFMDA2Nzk0MjUgLyogU291bmRNYWMubW0gKi8sCiAJCQkJ
QTNBQjZFNjIxRjNEMjE3RjAwOUMxNEIxIC8qIFN5c3RlbVNsZWVwTGlzdGVuZXJNYWMuaCAqLywK
IAkJCQlBM0FCNkU2MzFGM0QyMTdGMDA5QzE0QjEgLyogU3lzdGVtU2xlZXBMaXN0ZW5lck1hYy5t
bSAqLywKKwkJCQlBMTA4MjZGNzFGNTc2MjkyMDA0NzcyQUMgLyogV2ViUGFuZWwuaCAqLywKKwkJ
CQlBMTA4MjZGODFGNTc2MjkyMDA0NzcyQUMgLyogV2ViUGFuZWwubW0gKi8sCiAJCQkpOwogCQkJ
cGF0aCA9IG1hYzsKIAkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CkBAIC01NDYsNiArNTU1LDcg
QEAKIAkJCQkwQzc3ODU5MjFGNDUxMzBGMDBGNEVCQjYgLyogTlNNZW51U1BJLmggaW4gSGVhZGVy
cyAqLywKIAkJCQkwQzc3ODU5MzFGNDUxMzBGMDBGNEVCQjYgLyogTlNQYXN0ZWJvYXJkU1BJLmgg
aW4gSGVhZGVycyAqLywKIAkJCQkwQzc3ODU5NDFGNDUxMzBGMDBGNEVCQjYgLyogTlNQb3BvdmVy
U1BJLmggaW4gSGVhZGVycyAqLywKKwkJCQlBMTA4MjZGMTFGNTczQkNBMDA0NzcyQUMgLyogTlNS
ZXNwb25kZXJTUEkuaCBpbiBIZWFkZXJzICovLAogCQkJCTBDNzc4NTk1MUY0NTEzMEYwMEY0RUJC
NiAvKiBOU1Njcm9sbGVySW1wU1BJLmggaW4gSGVhZGVycyAqLywKIAkJCQkwQzc3ODU5NjFGNDUx
MzBGMDBGNEVCQjYgLyogTlNTY3JvbGxpbmdJbnB1dEZpbHRlclNQSS5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJMEM3Nzg1OTcxRjQ1MTMwRjAwRjRFQkI2IC8qIE5TU2Nyb2xsaW5nTW9tZW50dW1DYWxj
dWxhdG9yU1BJLmggaW4gSGVhZGVycyAqLywKQEAgLTU4MCw2ICs1OTAsNyBAQAogCQkJCTBDNzc4
NUExMUY0NTEzMEYwMEY0RUJCNiAvKiBUVUNhbGxTUEkuaCBpbiBIZWFkZXJzICovLAogCQkJCTBD
NUFGOTIyMUY0M0E0QzcwMDJFQUMwMiAvKiBVSUtpdFNQSS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
MEMyREExNTkxRjNCRUI0OTAwREJDMzE3IC8qIFdlYkZpbHRlckV2YWx1YXRvclNQSS5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQTEwODI2RjkxRjU3NjI5MjAwNDc3MkFDIC8qIFdlYlBhbmVsLmggaW4g
SGVhZGVycyAqLywKIAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5n
ID0gMDsKIAkJfTsKQEAgLTY3OCw2ICs2ODksNyBAQAogCQkJCUEzNzg4RTlDMUYwNUI3ODIwMDY3
OTQyNSAvKiBTb3VuZE5vbmUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTNBQjZFNTcxRjNEMURE
QjAwOUMxNEIxIC8qIFN5c3RlbVNsZWVwTGlzdGVuZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
QTNBQjZFNjUxRjNEMjE3RjAwOUMxNEIxIC8qIFN5c3RlbVNsZWVwTGlzdGVuZXJNYWMubW0gaW4g
U291cmNlcyAqLywKKwkJCQlBMTA4MjZGQTFGNTc2MjkyMDA0NzcyQUMgLyogV2ViUGFuZWwubW0g
aW4gU291cmNlcyAqLywKIAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNz
aW5nID0gMDsKIAkJfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21h
Yy9ISVRvb2xib3hTUEkuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9ISVRvb2xi
b3hTUEkuaAppbmRleCAwMDM0ODc3NzcyZGNjNThmMDJhMTY3OGE3NmNlMmZhMDViOGFmYWNiLi5k
ZGZmZTVjNjUxNDA2ODJkMGExNjBkNDFkMzhiMWUxNWM2NGJmYTkwIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9tYWMvSElUb29sYm94U1BJLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvUEFML3BhbC9zcGkvbWFjL0hJVG9vbGJveFNQSS5oCkBAIC0zMywxMCArMzMsMTUgQEAK
IAogI2RlZmluZSBrVFNNSW5wdXRTb3VyY2VQcm9wZXJ0eVNjcmlwdENvZGUgQ0ZTVFIoIlRTTUlu
cHV0U291cmNlUHJvcGVydHlTY3JpcHRDb2RlIikKIAorZW51bSB7CisgICAga0V2ZW50UGFyYW1L
ZXlNYWNDaGFyQ29kZXMgPSAna2NocicsCit9OworCiAjZW5kaWYKIAogdHlwZWRlZiBzdHJ1Y3Qg
X19UU01JbnB1dFNvdXJjZSogVFNNSW5wdXRTb3VyY2VSZWY7CiB0eXBlZGVmIENGU3RyaW5nUmVm
IFRTTUlucHV0U291cmNlUHJvcGVydHlUYWc7Cit0eXBlZGVmIHN0cnVjdCBPcGFxdWVFdmVudFJl
ZiogRXZlbnRSZWY7CiAKIFdURl9FWFRFUk5fQ19CRUdJTgogCkBAIC00NSw1ICs1MCw2IEBAIENH
V2luZG93SUQgR2V0TmF0aXZlV2luZG93RnJvbVdpbmRvd1JlZihXaW5kb3dSZWYpOwogT1NTdGF0
dXMgVFNNUHJvY2Vzc1Jhd0tleUV2ZW50KEV2ZW50UmVmKTsKIEV2ZW50UmVmIEdldEN1cnJlbnRF
dmVudCgpOwogQ0ZUeXBlUmVmIFRTTUdldElucHV0U291cmNlUHJvcGVydHkoVFNNSW5wdXRTb3Vy
Y2VSZWYsIFRTTUlucHV0U291cmNlUHJvcGVydHlUYWcpOworT1NTdGF0dXMgR2V0RXZlbnRQYXJh
bWV0ZXIoRXZlbnRSZWYsIEV2ZW50UGFyYW1OYW1lIGluTmFtZSwgRXZlbnRQYXJhbVR5cGUgaW5E
ZXNpcmVkVHlwZSwgRXZlbnRQYXJhbVR5cGUqIG91dEFjdHVhbFR5cGUsIEJ5dGVDb3VudCBpbkJ1
ZmZlclNpemUsIEJ5dGVDb3VudCogb3V0QWN0dWFsU2l6ZSwgdm9pZCogb3V0RGF0YSk7CiAKIFdU
Rl9FWFRFUk5fQ19FTkQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21h
Yy9OU1Jlc3BvbmRlclNQSS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvbWFjL05TUmVz
cG9uZGVyU1BJLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmVkMWE3OTUyN2Y3MmU4YzA3NzEzZDNmZTgyMDIxZDE1
NjA3YmYzZAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21h
Yy9OU1Jlc3BvbmRlclNQSS5oCkBAIC0wLDAgKzEsNDAgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMp
IDIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAor
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIu
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9S
UyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09O
VFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWYgUExB
VEZPUk0oTUFDKQorCisjaWYgVVNFKEFQUExFX0lOVEVSTkFMX1NESykKKworI2ltcG9ydCA8QXBw
S2l0L05TUmVzcG9uZGVyX1ByaXZhdGUuaD4KKworI2Vsc2UKKworQGludGVyZmFjZSBOU1Jlc3Bv
bmRlciAoKQorLSAodm9pZClfc2V0U2hvdWxkUG9zdEV2ZW50Tm90aWZpY2F0aW9uczooQk9PTClw
b3N0Tm90aWZpY2F0aW9uczsKK0BlbmQKKworI2VuZGlmCisKKyNlbmRpZiAvLyBQTEFURk9STShN
QUMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9tYWMvTlNXaW5kb3dT
UEkuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9OU1dpbmRvd1NQSS5oCmluZGV4
IGJhYjg0MDBmMDQ5ZDk0YjkyZGVmZWE5YWU5NTMxNjJmZjIxNTg5NDMuLmFhODEyNTVkOGViYmYx
MDNhN2YyOTExOTMzYTAwNDc4MzM4NjU1NTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BB
TC9wYWwvc3BpL21hYy9OU1dpbmRvd1NQSS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwv
c3BpL21hYy9OU1dpbmRvd1NQSS5oCkBAIC00Miw5ICs0MiwxNCBAQAogQGVuZAogCiBlbnVtIHsK
KyAgICBOU1NpZGVVdGlsaXR5V2luZG93TWFzayA9IDEgPDwgOSwKKyAgICBOU1NtYWxsV2luZG93
TWFzayA9IDEgPDwgMTAsCiAgICAgX05TQ2FyYm9uV2luZG93TWFzayA9IDEgPDwgMjUsCiB9Owog
CiAjZW5kaWYKIAorZXh0ZXJuIE5TU3RyaW5nICpOU1dpbmRvd1dpbGxPcmRlck9uU2NyZWVuTm90
aWZpY2F0aW9uOworZXh0ZXJuIE5TU3RyaW5nICpOU1dpbmRvd1dpbGxPcmRlck9mZlNjcmVlbk5v
dGlmaWNhdGlvbjsKKwogI2VuZGlmIC8vIFBMQVRGT1JNKE1BQykKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL1BBTC9wYWwvc3lzdGVtL21hYy9XZWJQYW5lbC5oIGIvU291cmNlL1dlYkNvcmUv
UEFML3BhbC9zeXN0ZW0vbWFjL1dlYlBhbmVsLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTAzNTE2M2Q5ZGJhZWUz
MWQ5ODExMjIyNTE2MmRkMzhiZjg2NTY5ZQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL1BBTC9wYWwvc3lzdGVtL21hYy9XZWJQYW5lbC5oCkBAIC0wLDAgKzEsMzYgQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoK
KyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQg
SVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUg
SU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBP
RgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
IFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
KyAqLworCisjaWYgUExBVEZPUk0oTUFDKQorCisjaW1wb3J0IDxBcHBLaXQvQXBwS2l0Lmg+CisK
K1BBTF9FWFBPUlQgQGludGVyZmFjZSBXZWJQYW5lbCA6IE5TUGFuZWwKKworLSAoaW5zdGFuY2V0
eXBlKWluaXQ7CisKK0BlbmQKKworI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Q
QUwvcGFsL3N5c3RlbS9tYWMvV2ViUGFuZWwubW0gYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3N5
c3RlbS9tYWMvV2ViUGFuZWwubW0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzE3YmRhMDJlN2I3ZWIyN2E5YmQyYjU5
Nzk1NmY1NDEyZGFjZjEyNgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9w
YWwvc3lzdGVtL21hYy9XZWJQYW5lbC5tbQpAQCAtMCwwICsxLDQ3IEBACisvKgorICogQ29weXJp
Z2h0IChDKSAyMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05U
UklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAq
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1Ig
SVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKwor
I2ltcG9ydCAiY29uZmlnLmgiCisjaW1wb3J0ICJXZWJQYW5lbC5oIgorCisjaWYgUExBVEZPUk0o
TUFDKQorCisjaW1wb3J0IDxwYWwvc3BpL21hYy9OU1dpbmRvd1NQSS5oPgorCitAaW1wbGVtZW50
YXRpb24gV2ViUGFuZWwKKworLSAoaW5zdGFuY2V0eXBlKWluaXQKK3sKKyNwcmFnbWEgY2xhbmcg
ZGlhZ25vc3RpYyBwdXNoCisjcHJhZ21hIGNsYW5nIGRpYWdub3N0aWMgaWdub3JlZCAiLVdkZXBy
ZWNhdGVkLWRlY2xhcmF0aW9ucyIKKyAgICBzdGF0aWMgTlNVSW50ZWdlciBzdHlsZU1hc2sgPSBO
U01pbmlhdHVyaXphYmxlV2luZG93TWFzayB8IE5TQ2xvc2FibGVXaW5kb3dNYXNrIHwgTlNSZXNp
emFibGVXaW5kb3dNYXNrICB8IE5TVGl0bGVkV2luZG93TWFzayB8IE5TU21hbGxXaW5kb3dNYXNr
IHwgTlNTaWRlVXRpbGl0eVdpbmRvd01hc2sgfCBOU1V0aWxpdHlXaW5kb3dNYXNrOworI3ByYWdt
YSBjbGFuZyBkaWFnbm9zdGljIHBvcAorICAgIAorICAgIHJldHVybiBbc3VwZXIgaW5pdFdpdGhD
b250ZW50UmVjdDpOU1plcm9SZWN0IHN0eWxlTWFzazpzdHlsZU1hc2sgYmFja2luZzpOU0JhY2tp
bmdTdG9yZUJ1ZmZlcmVkIGRlZmVyOllFU107Cit9CisKK0BlbmQKKworI2VuZGlmIC8vIFBMQVRG
T1JNKE1BQykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9QbGF0Zm9y
bUV2ZW50RmFjdG9yeU1hYy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1BsYXRmb3Jt
RXZlbnRGYWN0b3J5TWFjLmgKaW5kZXggMjU5YzYwNTBkNjBhNDlmNDk4ZGM1NDhiN2NlZjMyZjBj
NzZhZGU2Yy4uZDIwYTJkOGVlOTBmNGMxODY3Yjk2ZTU5NDkyMTk1OWM0ZjZjMDI2ZiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1BsYXRmb3JtRXZlbnRGYWN0b3J5TWFj
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1BsYXRmb3JtRXZlbnRGYWN0b3J5
TWFjLmgKQEAgLTQ5LDYgKzQ5LDkgQEAgV0VCQ09SRV9FWFBPUlQgU3RyaW5nIGtleUlkZW50aWZp
ZXJGb3JLZXlFdmVudChOU0V2ZW50ICopOwogV0VCQ09SRV9FWFBPUlQgU3RyaW5nIGtleUZvcktl
eUV2ZW50KE5TRXZlbnQgKik7CiBXRUJDT1JFX0VYUE9SVCBTdHJpbmcgY29kZUZvcktleUV2ZW50
KE5TRXZlbnQgKik7CiBXRUJDT1JFX0VYUE9SVCBkb3VibGUgZXZlbnRUaW1lU3RhbXBTaW5jZTE5
NzAoTlNFdmVudCAqKTsKKyAgICAKK1dFQkNPUkVfRVhQT1JUIHZvaWQgZ2V0V2hlZWxFdmVudERl
bHRhcyhOU0V2ZW50ICosIGZsb2F0JiBkZWx0YVgsIGZsb2F0JiBkZWx0YVksIEJPT0wmIGNvbnRp
bnVvdXMpOworV0VCQ09SRV9FWFBPUlQgVUludDgga2V5Q2hhckZvckV2ZW50KE5TRXZlbnQgKik7
CiAKICNlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvUGxh
dGZvcm1FdmVudEZhY3RvcnlNYWMubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvUGxh
dGZvcm1FdmVudEZhY3RvcnlNYWMubW0KaW5kZXggYmMxZTM2N2ZjNDY5NGVhZjQ2MGFiMGVhNWE0
MjMwZDAwMDAxYWM4OS4uZTVlODViYTA4NTg2Y2NlZTk2M2M3YzVkYmNhN2IyYTgyODZiYzZlYSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1BsYXRmb3JtRXZlbnRGYWN0
b3J5TWFjLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9QbGF0Zm9ybUV2ZW50
RmFjdG9yeU1hYy5tbQpAQCAtMzQsNiArMzQsOCBAQAogI2ltcG9ydCAiV2luZG93c0tleWJvYXJk
Q29kZXMuaCIKICNpbXBvcnQgPEhJVG9vbGJveC9FdmVudHMuaD4KICNpbXBvcnQgPG1hY2gvbWFj
aF90aW1lLmg+CisjaW1wb3J0IDxwYWwvc3BpL21hYy9ISVRvb2xib3hTUEkuaD4KKyNpbXBvcnQg
PHBhbC9zcGkvbWFjL05TRXZlbnRTUEkuaD4KICNpbXBvcnQgPHBhbC9zcGkvbWFjL05TTWVudVNQ
SS5oPgogI2ltcG9ydCA8d3RmL0FTQ0lJQ1R5cGUuaD4KIApAQCAtNjc0LDYgKzY3NiwzOSBAQCBz
dGF0aWMgaW50IHR5cGVGb3JFdmVudChOU0V2ZW50ICpldmVudCkKICAgICByZXR1cm4gc3RhdGlj
X2Nhc3Q8aW50PihbTlNNZW51IG1lbnVUeXBlRm9yRXZlbnQ6ZXZlbnRdKTsKIH0KICAgICAKK3Zv
aWQgZ2V0V2hlZWxFdmVudERlbHRhcyhOU0V2ZW50ICpldmVudCwgZmxvYXQmIGRlbHRhWCwgZmxv
YXQmIGRlbHRhWSwgQk9PTCYgY29udGludW91cykKK3sKKyAgICBBU1NFUlQoZXZlbnQpOworICAg
IGlmIChldmVudC5oYXNQcmVjaXNlU2Nyb2xsaW5nRGVsdGFzKSB7CisgICAgICAgIGRlbHRhWCA9
IGV2ZW50LnNjcm9sbGluZ0RlbHRhWDsKKyAgICAgICAgZGVsdGFZID0gZXZlbnQuc2Nyb2xsaW5n
RGVsdGFZOworICAgICAgICBjb250aW51b3VzID0gWUVTOworICAgIH0gZWxzZSB7CisgICAgICAg
IGRlbHRhWCA9IGV2ZW50LmRlbHRhWDsKKyAgICAgICAgZGVsdGFZID0gZXZlbnQuZGVsdGFZOwor
ICAgICAgICBjb250aW51b3VzID0gTk87CisgICAgfQorfQorCitVSW50OCBrZXlDaGFyRm9yRXZl
bnQoTlNFdmVudCAqZXZlbnQpCit7CisgICAgRXZlbnRSZWYgZXZlbnRSZWYgPSBbZXZlbnQgX2V2
ZW50UmVmXTsKKyAgICBpZiAoIWV2ZW50UmVmKQorICAgICAgICByZXR1cm4gMDsKKworICAgIEJ5
dGVDb3VudCBrZXlDaGFyQ291bnQgPSAwOworICAgIGlmIChHZXRFdmVudFBhcmFtZXRlcihldmVu
dFJlZiwga0V2ZW50UGFyYW1LZXlNYWNDaGFyQ29kZXMsIHR5cGVDaGFyLCAwLCAwLCAma2V5Q2hh
ckNvdW50LCAwKSAhPSBub0VycikKKyAgICAgICAgcmV0dXJuIDA7CisgICAgaWYgKGtleUNoYXJD
b3VudCAhPSAxKQorICAgICAgICByZXR1cm4gMDsKKworICAgIFVJbnQ4IGtleUNoYXIgPSAwOwor
ICAgIGlmIChHZXRFdmVudFBhcmFtZXRlcihldmVudFJlZiwga0V2ZW50UGFyYW1LZXlNYWNDaGFy
Q29kZXMsIHR5cGVDaGFyLCAwLCBzaXplb2Yoa2V5Q2hhciksICZrZXlDaGFyQ291bnQsICZrZXlD
aGFyKSAhPSBub0VycikKKyAgICAgICAgcmV0dXJuIDA7CisgICAgCisgICAgcmV0dXJuIGtleUNo
YXI7Cit9CisKIGNsYXNzIFBsYXRmb3JtTW91c2VFdmVudEJ1aWxkZXIgOiBwdWJsaWMgUGxhdGZv
cm1Nb3VzZUV2ZW50IHsKIHB1YmxpYzoKICAgICBQbGF0Zm9ybU1vdXNlRXZlbnRCdWlsZGVyKE5T
RXZlbnQgKmV2ZW50LCBOU0V2ZW50ICpjb3JyZXNwb25kaW5nUHJlc3N1cmVFdmVudCwgTlNWaWV3
ICp3aW5kb3dWaWV3KQpAQCAtNzQ0LDcgKzc3OSw3IEBAIHB1YmxpYzoKICAgICAgICAgbV9ncmFu
dWxhcml0eSA9IFNjcm9sbEJ5UGl4ZWxXaGVlbEV2ZW50OwogCiAgICAgICAgIEJPT0wgY29udGlu
dW91czsKLSAgICAgICAgd2tHZXRXaGVlbEV2ZW50RGVsdGFzKGV2ZW50LCAmbV9kZWx0YVgsICZt
X2RlbHRhWSwgJmNvbnRpbnVvdXMpOworICAgICAgICBnZXRXaGVlbEV2ZW50RGVsdGFzKGV2ZW50
LCBtX2RlbHRhWCwgbV9kZWx0YVksIGNvbnRpbnVvdXMpOwogICAgICAgICBpZiAoY29udGludW91
cykgewogICAgICAgICAgICAgbV93aGVlbFRpY2tzWCA9IG1fZGVsdGFYIC8gc3RhdGljX2Nhc3Q8
ZmxvYXQ+KFNjcm9sbGJhcjo6cGl4ZWxzUGVyTGluZVN0ZXAoKSk7CiAgICAgICAgICAgICBtX3do
ZWVsVGlja3NZID0gbV9kZWx0YVkgLyBzdGF0aWNfY2FzdDxmbG9hdD4oU2Nyb2xsYmFyOjpwaXhl
bHNQZXJMaW5lU3RlcCgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21h
Yy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMv
V2ViQ29yZVN5c3RlbUludGVyZmFjZS5oCmluZGV4IDkzY2RmZDBjN2FiMWU5NjgwMTA2Y2E2NDg1
NDQ4NTY2Yjc0NDRlNDYuLjhhMTI0ODI3YzA0MDlkNjYzZjc4MWRmMjdiNGU0M2JjZmFmYmQyMjcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJDb3JlU3lzdGVtSW50
ZXJmYWNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVTeXN0ZW1J
bnRlcmZhY2UuaApAQCAtMTM5LDcgKzEzOSw2IEBAIGV4dGVybiB2b2lkICgqd2tEcmF3TWVkaWFT
bGlkZXJUcmFjaykoQ0dDb250ZXh0UmVmIGNvbnRleHQsIENHUmVjdCByZWN0LCBmbG9hdCB0CiBl
eHRlcm4gdm9pZCAoKndrRHJhd01lZGlhVUlQYXJ0KShpbnQgcGFydCwgQ0dDb250ZXh0UmVmIGNv
bnRleHQsIENHUmVjdCByZWN0LCB1bnNpZ25lZCBzdGF0ZSk7CiBleHRlcm4gZG91YmxlICgqd2tH
ZXROU1VSTFJlc3BvbnNlQ2FsY3VsYXRlZEV4cGlyYXRpb24pKE5TVVJMUmVzcG9uc2UgKnJlc3Bv
bnNlKTsKIGV4dGVybiBCT09MICgqd2tHZXROU1VSTFJlc3BvbnNlTXVzdFJldmFsaWRhdGUpKE5T
VVJMUmVzcG9uc2UgKnJlc3BvbnNlKTsKLWV4dGVybiB2b2lkICgqd2tHZXRXaGVlbEV2ZW50RGVs
dGFzKShOU0V2ZW50KiwgZmxvYXQqIGRlbHRhWCwgZmxvYXQqIGRlbHRhWSwgQk9PTCogY29udGlu
dW91cyk7CiBleHRlcm4gVUludDggKCp3a0dldE5TRXZlbnRLZXlDaGFyKShOU0V2ZW50ICopOwog
ZXh0ZXJuIEJPT0wgKCp3a0hpdFRlc3RNZWRpYVVJUGFydCkoaW50IHBhcnQsIENHUmVjdCBib3Vu
ZHMsIENHUG9pbnQgcG9pbnQpOwogZXh0ZXJuIHZvaWQgKCp3a01lYXN1cmVNZWRpYVVJUGFydCko
aW50IHBhcnQsIENHUmVjdCAqYm91bmRzLCBDR1NpemUgKm5hdHVyYWxTaXplKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlLm1t
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2UubW0K
aW5kZXggNjQ5ZDdhNjdjZDY3NjU0YTJhM2UzOTRlOTM1ZjhjNTI2ZmEzOTI1YS4uMjcyYjU1NTdl
MjM5ZjNjMWUxZDQ1YTk0ZmI3YjFlNDUzNDYxN2RmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2UubW0KKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2UubW0KQEAgLTQ4LDcgKzQ4
LDYgQEAgdm9pZCAoKndrV2luZG93U2V0QWxwaGEpKE5TV2luZG93ICosIGZsb2F0KTsKIHZvaWQg
KCp3a1dpbmRvd1NldFNjYWxlZEZyYW1lKShOU1dpbmRvdyAqLCBOU1JlY3QsIE5TUmVjdCk7CiBO
U1RpbWVJbnRlcnZhbCAoKndrR2V0TlNVUkxSZXNwb25zZUNhbGN1bGF0ZWRFeHBpcmF0aW9uKShO
U1VSTFJlc3BvbnNlICpyZXNwb25zZSk7CiBCT09MICgqd2tHZXROU1VSTFJlc3BvbnNlTXVzdFJl
dmFsaWRhdGUpKE5TVVJMUmVzcG9uc2UgKnJlc3BvbnNlKTsKLXZvaWQgKCp3a0dldFdoZWVsRXZl
bnREZWx0YXMpKE5TRXZlbnQqLCBmbG9hdCogZGVsdGFYLCBmbG9hdCogZGVsdGFZLCBCT09MKiBj
b250aW51b3VzKTsKIFVJbnQ4ICgqd2tHZXROU0V2ZW50S2V5Q2hhcikoTlNFdmVudCAqKTsKIHZv
aWQgKCp3a1BvcHVwTWVudSkoTlNNZW51KiwgTlNQb2ludCBsb2NhdGlvbiwgZmxvYXQgd2lkdGgs
IE5TVmlldyosIGludCBzZWxlY3RlZEl0ZW0sIE5TRm9udCosIE5TQ29udHJvbFNpemUgY29udHJv
bFNpemUsIGJvb2wgdXNlc0N1c3RvbUFwcGVhcmFuY2UpOwogdW5zaWduZWQgKCp3a1FUSW5jbHVk
ZU9ubHlNb2Rlcm5NZWRpYUZpbGVUeXBlcykodm9pZCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1BsdWdpblByb2Nlc3MvbWFjL1BsdWdpblByb2Nlc3NNYWMubW0gYi9Tb3VyY2UvV2ViS2l0
L1BsdWdpblByb2Nlc3MvbWFjL1BsdWdpblByb2Nlc3NNYWMubW0KaW5kZXggZGQ1MzM3MDI0N2Yw
YTZiNzRhMDFiZmNjOGFhOTZmYTZmZmYzNDQxOC4uZDg2MDM3ODY3YTJmMWFmYTI1ZWM1MjYzMDZl
MTRkOTY0Y2Q3N2U2ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9QbHVnaW5Qcm9jZXNzL21h
Yy9QbHVnaW5Qcm9jZXNzTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvUGx1Z2luUHJvY2Vzcy9t
YWMvUGx1Z2luUHJvY2Vzc01hYy5tbQpAQCAtNDcsNiArNDcsNyBAQAogI2ltcG9ydCA8bWFjaC92
bV9zdGF0aXN0aWNzLmg+CiAjaW1wb3J0IDxvYmpjL3J1bnRpbWUuaD4KICNpbXBvcnQgPHBhbC9z
cGkvbWFjL0hJVG9vbGJveFNQSS5oPgorI2ltcG9ydCA8cGFsL3NwaS9tYWMvTlNXaW5kb3dTUEku
aD4KICNpbXBvcnQgPHN5c2V4aXRzLmg+CiAjaW1wb3J0IDx3dGYvSGFzaFNldC5oPgogI2ltcG9y
dCA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00NDEsMTIgKzQ0MiwxMiBAQCBzdGF0aWMgdm9p
ZCBpbml0aWFsaXplQ29jb2FPdmVycmlkZXMoKQogICAgIE5TTm90aWZpY2F0aW9uQ2VudGVyICpk
ZWZhdWx0Q2VudGVyID0gW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdOwogCiAg
ICAgLy8gVHJhY2sgd2hlbiBhbnkgQ29jb2Egd2luZG93IGlzIGFib3V0IHRvIGJlIGJlIHNob3du
LgotICAgIGlkIG9yZGVyT25TY3JlZW5PYnNlcnZlciA9IFtkZWZhdWx0Q2VudGVyIGFkZE9ic2Vy
dmVyRm9yTmFtZTpXS1dpbmRvd1dpbGxPcmRlck9uU2NyZWVuTm90aWZpY2F0aW9uKCkKKyAgICBp
ZCBvcmRlck9uU2NyZWVuT2JzZXJ2ZXIgPSBbZGVmYXVsdENlbnRlciBhZGRPYnNlcnZlckZvck5h
bWU6TlNXaW5kb3dXaWxsT3JkZXJPblNjcmVlbk5vdGlmaWNhdGlvbgogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9iamVjdDpuaWwKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
cXVldWU6bmlsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHVzaW5nQmxvY2s6XihOU05vdGlmaWNhdGlvbiAqbm90aWZpY2F0aW9uKSB7
IGZ1bGxzY3JlZW5XaW5kb3dUcmFja2VyKCkud2luZG93U2hvd24oW25vdGlmaWNhdGlvbiBvYmpl
Y3RdKTsgfV07CiAgICAgLy8gVHJhY2sgd2hlbiBhbnkgQ29jb2Egd2luZG93IGlzIGFib3V0IHRv
IGJlIGhpZGRlbi4KLSAgICBpZCBvcmRlck9mZlNjcmVlbk9ic2VydmVyID0gW2RlZmF1bHRDZW50
ZXIgYWRkT2JzZXJ2ZXJGb3JOYW1lOldLV2luZG93V2lsbE9yZGVyT2ZmU2NyZWVuTm90aWZpY2F0
aW9uKCkKKyAgICBpZCBvcmRlck9mZlNjcmVlbk9ic2VydmVyID0gW2RlZmF1bHRDZW50ZXIgYWRk
T2JzZXJ2ZXJGb3JOYW1lOk5TV2luZG93V2lsbE9yZGVyT2ZmU2NyZWVuTm90aWZpY2F0aW9uCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IG9iamVjdDpuaWwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHF1ZXVlOm5pbAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHVzaW5nQmxvY2s6XihOU05vdGlmaWNhdGlvbiAqbm90
aWZpY2F0aW9uKSB7IGZ1bGxzY3JlZW5XaW5kb3dUcmFja2VyKCkud2luZG93SGlkZGVuKFtub3Rp
ZmljYXRpb24gb2JqZWN0XSk7IH1dOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQv
bWFjL1dlYkV2ZW50RmFjdG9yeS5tbSBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL21hYy9XZWJFdmVu
dEZhY3RvcnkubW0KaW5kZXggNzdhYWM1M2RjY2JmYTBmOWFkMmI4ODE1MWMzNTkzZTdiNjIyYWNj
Ni4uMGRiM2JlOGM2NDc0Yzc2MzI5ODVmZTNlYTIyMTViNDhjNmFmYzA1YiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9TaGFyZWQvbWFjL1dlYkV2ZW50RmFjdG9yeS5tbQorKysgYi9Tb3VyY2Uv
V2ViS2l0L1NoYXJlZC9tYWMvV2ViRXZlbnRGYWN0b3J5Lm1tCkBAIC0zODUsNyArMzg1LDcgQEAg
V2ViV2hlZWxFdmVudCBXZWJFdmVudEZhY3Rvcnk6OmNyZWF0ZVdlYldoZWVsRXZlbnQoTlNFdmVu
dCAqZXZlbnQsIE5TVmlldyAqd2luZG8KICAgICBmbG9hdCB3aGVlbFRpY2tzWCA9IDA7CiAgICAg
ZmxvYXQgd2hlZWxUaWNrc1kgPSAwOwogCi0gICAgV0tHZXRXaGVlbEV2ZW50RGVsdGFzKGV2ZW50
LCAmZGVsdGFYLCAmZGVsdGFZLCAmY29udGludW91cyk7CisgICAgZ2V0V2hlZWxFdmVudERlbHRh
cyhldmVudCwgZGVsdGFYLCBkZWx0YVksIGNvbnRpbnVvdXMpOwogICAgIAogICAgIGlmIChjb250
aW51b3VzKSB7CiAgICAgICAgIC8vIHNtb290aCBzY3JvbGwgZXZlbnRzCkBAIC00MzMsNyArNDMz
LDcgQEAgV2ViS2V5Ym9hcmRFdmVudCBXZWJFdmVudEZhY3Rvcnk6OmNyZWF0ZVdlYktleWJvYXJk
RXZlbnQoTlNFdmVudCAqZXZlbnQsIGJvb2wgaGEKICAgICBTdHJpbmcga2V5SWRlbnRpZmllciAg
ICAgICAgICAgID0ga2V5SWRlbnRpZmllckZvcktleUV2ZW50KGV2ZW50KTsKICAgICBpbnQgd2lu
ZG93c1ZpcnR1YWxLZXlDb2RlICAgICAgID0gd2luZG93c0tleUNvZGVGb3JLZXlFdmVudChldmVu
dCk7CiAgICAgaW50IG5hdGl2ZVZpcnR1YWxLZXlDb2RlICAgICAgICA9IFtldmVudCBrZXlDb2Rl
XTsKLSAgICBpbnQgbWFjQ2hhckNvZGUgICAgICAgICAgICAgICAgID0gV0tHZXROU0V2ZW50S2V5
Q2hhcihldmVudCk7CisgICAgaW50IG1hY0NoYXJDb2RlICAgICAgICAgICAgICAgICA9IGtleUNo
YXJGb3JFdmVudChldmVudCk7CiAgICAgYm9vbCBhdXRvUmVwZWF0ICAgICAgICAgICAgICAgICA9
IFtldmVudCB0eXBlXSAhPSBOU0V2ZW50VHlwZUZsYWdzQ2hhbmdlZCAmJiBbZXZlbnQgaXNBUmVw
ZWF0XTsKICAgICBib29sIGlzS2V5cGFkICAgICAgICAgICAgICAgICAgID0gaXNLZXlwYWRFdmVu
dChldmVudCk7CiAgICAgYm9vbCBpc1N5c3RlbUtleSAgICAgICAgICAgICAgICA9IGZhbHNlOyAv
LyBTeXN0ZW1LZXkgaXMgYWx3YXlzIGZhbHNlIG9uIHRoZSBNYWMuCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMvV0tUZXh0SW5wdXRXaW5kb3dDb250cm9sbGVyLm1tIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvbWFjL1dLVGV4dElucHV0V2luZG93Q29udHJvbGxlci5t
bQppbmRleCAxMmExNTFlMzFiYTc4NjIyYWZjNDdlZTk1MzBiZDg2MjFhY2Q5ODBjLi5iNDg4NTYw
YjA3ZjA5ZTc5N2M4ZWY5MmRjYWMwOGRiM2U0OWIxMTdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9tYWMvV0tUZXh0SW5wdXRXaW5kb3dDb250cm9sbGVyLm1tCisrKyBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL21hYy9XS1RleHRJbnB1dFdpbmRvd0NvbnRyb2xsZXIubW0K
QEAgLTI5LDYgKzI5LDcgQEAKICNpZiBVU0UoQVBQS0lUKQogCiAjaW1wb3J0IDxXZWJLaXRTeXN0
ZW1JbnRlcmZhY2UuaD4KKyNpbXBvcnQgPHBhbC9zeXN0ZW0vbWFjL1dlYlBhbmVsLmg+CiAKIEBp
bnRlcmZhY2UgV0tUZXh0SW5wdXRWaWV3IDogTlNUZXh0VmlldyB7CiB9CkBAIC00Nyw3ICs0OCw3
IEBAIC0gKE5TQXJyYXkgKil2YWxpZEF0dHJpYnV0ZXNGb3JNYXJrZWRUZXh0CiAKIEBlbmQKIAot
QGludGVyZmFjZSBXS1RleHRJbnB1dFBhbmVsIDogTlNQYW5lbCB7CitAaW50ZXJmYWNlIFdLVGV4
dElucHV0UGFuZWwgOiBXZWJQYW5lbCB7CiAgICAgTlNUZXh0VmlldyAqX2lucHV0VGV4dFZpZXc7
CiB9CiAKQEAgLTc0LDcgKzc1LDcgQEAgLSAodm9pZClkZWFsbG9jCiAKIC0gKGlkKWluaXQKIHsK
LSAgICBzZWxmID0gW3N1cGVyIGluaXRXaXRoQ29udGVudFJlY3Q6TlNaZXJvUmVjdCBzdHlsZU1h
c2s6V0tHZXRJbnB1dFBhbmVsV2luZG93U3R5bGUoKSBiYWNraW5nOk5TQmFja2luZ1N0b3JlQnVm
ZmVyZWQgZGVmZXI6WUVTXTsKKyAgICBzZWxmID0gW3N1cGVyIGluaXRdOwogICAgIGlmICghc2Vs
ZikKICAgICAgICAgcmV0dXJuIG5pbDsKICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViU3lzdGVtSW50ZXJmYWNlLm1tIGIvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L21hYy9XZWJTeXN0ZW1JbnRlcmZh
Y2UubW0KaW5kZXggNDRkYzdlY2IzNjIwZThmNDUxNDJlYjM3Yzc4NzVhZGNiM2I5NDEyYi4uZDE4
YTQ0MGRkNzI1MzljNmE1Njk0Yjc0NjdmOGE2OTE4ODUxZDk5ZSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L21hYy9XZWJTeXN0ZW1JbnRlcmZhY2Uu
bW0KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L21hYy9XZWJT
eXN0ZW1JbnRlcmZhY2UubW0KQEAgLTUyLDcgKzUyLDYgQEAgdm9pZCBJbml0V2ViQ29yZVN5c3Rl
bUludGVyZmFjZSh2b2lkKQogI2VuZGlmCiAgICAgICAgIElOSVQoQ0dDb250ZXh0SXNQREZDb250
ZXh0KTsKICNpZiAhUExBVEZPUk0oSU9TKQotICAgICAgICBJTklUKEdldFdoZWVsRXZlbnREZWx0
YXMpOwogICAgICAgICBJTklUKEdldE5TRXZlbnRLZXlDaGFyKTsKICAgICAgICAgSU5JVChIaXRU
ZXN0TWVkaWFVSVBhcnQpOwogICAgICAgICBJTklUKE1lYXN1cmVNZWRpYVVJUGFydCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL0hvc3RlZC9OZXRzY2FwZVBs
dWdpbkluc3RhbmNlUHJveHkubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL0hv
c3RlZC9OZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJveHkubW0KaW5kZXggYWU0MWJjMTZjMzNkNjk2
NGY3NGM3NmZhMjQyZmI4OTJhMTQ5MWZkNS4uMDE3ZmE5ZTZiOTliMWE0OGE5YjMzYmE3MTM2ODM3
ZDVmYTQ2MzdiYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9I
b3N0ZWQvTmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvbWFjL1BsdWdpbnMvSG9zdGVkL05ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eS5tbQpA
QCAtNTQsMTAgKzU0LDExIEBACiAjaW1wb3J0IDxXZWJDb3JlL0ZyYW1lLmg+CiAjaW1wb3J0IDxX
ZWJDb3JlL0ZyYW1lTG9hZGVyLmg+CiAjaW1wb3J0IDxXZWJDb3JlL0ZyYW1lVHJlZS5oPgotI2lt
cG9ydCA8V2ViQ29yZS9VUkwuaD4KKyNpbXBvcnQgPFdlYkNvcmUvUGxhdGZvcm1FdmVudEZhY3Rv
cnlNYWMuaD4KICNpbXBvcnQgPFdlYkNvcmUvUHJveHlTZXJ2ZXIuaD4KICNpbXBvcnQgPFdlYkNv
cmUvU2VjdXJpdHlPcmlnaW4uaD4KICNpbXBvcnQgPFdlYkNvcmUvU2NyaXB0Q29udHJvbGxlci5o
PgorI2ltcG9ydCA8V2ViQ29yZS9VUkwuaD4KICNpbXBvcnQgPFdlYkNvcmUvVXNlckdlc3R1cmVJ
bmRpY2F0b3IuaD4KICNpbXBvcnQgPFdlYkNvcmUvbnBydW50aW1lX2ltcGwuaD4KICNpbXBvcnQg
PFdlYkNvcmUvcnVudGltZV9vYmplY3QuaD4KQEAgLTQ1OSw3ICs0NjAsNyBAQCB2b2lkIE5ldHNj
YXBlUGx1Z2luSW5zdGFuY2VQcm94eTo6a2V5RXZlbnQoTlNWaWV3ICpwbHVnaW5WaWV3LCBOU0V2
ZW50ICpldmVudCwgTgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGUs
IFtldmVudCBtb2RpZmllckZsYWdzXSwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgY29uc3RfY2FzdDxjaGFyKj4ocmVpbnRlcnByZXRfY2FzdDxjb25zdCBjaGFyKj4oW2No
YXJhY3RlcnNEYXRhIGJ5dGVzXSkpLCBbY2hhcmFjdGVyc0RhdGEgbGVuZ3RoXSwgCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3RfY2FzdDxjaGFyKj4ocmVpbnRlcnBy
ZXRfY2FzdDxjb25zdCBjaGFyKj4oW2NoYXJhY3RlcnNJZ25vcmluZ01vZGlmaWVyc0RhdGEgYnl0
ZXNdKSksIFtjaGFyYWN0ZXJzSWdub3JpbmdNb2RpZmllcnNEYXRhIGxlbmd0aF0sIAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtldmVudCBpc0FSZXBlYXRdLCBbZXZlbnQg
a2V5Q29kZV0sIFdLR2V0TlNFdmVudEtleUNoYXIoZXZlbnQpKTsKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBbZXZlbnQgaXNBUmVwZWF0XSwgW2V2ZW50IGtleUNvZGVdLCBr
ZXlDaGFyRm9yRXZlbnQoZXZlbnQpKTsKIH0KIAogdm9pZCBOZXRzY2FwZVBsdWdpbkluc3RhbmNl
UHJveHk6OnN5bnRoZXRpY0tleURvd25XaXRoQ29tbWFuZE1vZGlmaWVyKGludCBrZXlDb2RlLCBj
aGFyIGNoYXJhY3RlcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdp
bnMvSG9zdGVkL1dlYlRleHRJbnB1dFdpbmRvd0NvbnRyb2xsZXIubSBiL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvbWFjL1BsdWdpbnMvSG9zdGVkL1dlYlRleHRJbnB1dFdpbmRvd0NvbnRyb2xsZXIubQpp
bmRleCAwMDQwMjkzYjYyZGIzYjhmYjQyY2Q1ZDM2ODU0NmY1YzQ5YTlhOGY0Li4wOGE3MTE1MWU2
OWRhMzE3NWExYmQ2ZjViMjc2OTljNzdjODg3ZjlkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
TGVnYWN5L21hYy9QbHVnaW5zL0hvc3RlZC9XZWJUZXh0SW5wdXRXaW5kb3dDb250cm9sbGVyLm0K
KysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9Ib3N0ZWQvV2ViVGV4dElucHV0
V2luZG93Q29udHJvbGxlci5tCkBAIC0yOCw2ICsyOCw3IEBACiAjaW1wb3J0ICJXZWJUZXh0SW5w
dXRXaW5kb3dDb250cm9sbGVyLmgiCiAKICNpbXBvcnQgPFdlYktpdFN5c3RlbUludGVyZmFjZS5o
PgorI2ltcG9ydCA8cGFsL3N5c3RlbS9tYWMvV2ViUGFuZWwuaD4KIAogQGludGVyZmFjZSBXZWJU
ZXh0SW5wdXRWaWV3IDogTlNUZXh0VmlldyB7CiB9CkBAIC00Niw3ICs0Nyw3IEBAIC0gKE5TQXJy
YXkgKil2YWxpZEF0dHJpYnV0ZXNGb3JNYXJrZWRUZXh0CiAKIEBlbmQKIAotQGludGVyZmFjZSBX
ZWJUZXh0SW5wdXRQYW5lbCA6IE5TUGFuZWwgeworQGludGVyZmFjZSBXZWJUZXh0SW5wdXRQYW5l
bCA6IFdlYlBhbmVsIHsKICAgICBOU1RleHRWaWV3ICpfaW5wdXRUZXh0VmlldzsKIH0KIApAQCAt
NzAsNyArNzEsNyBAQCAtICh2b2lkKWRlYWxsb2MKIAogLSAoaWQpaW5pdAogewotICAgIHNlbGYg
PSBbc3VwZXIgaW5pdFdpdGhDb250ZW50UmVjdDpOU1plcm9SZWN0IHN0eWxlTWFzazpXS0dldElu
cHV0UGFuZWxXaW5kb3dTdHlsZSgpIGJhY2tpbmc6TlNCYWNraW5nU3RvcmVCdWZmZXJlZCBkZWZl
cjpZRVNdOworICAgIHNlbGYgPSBbc3VwZXIgaW5pdF07CiAgICAgaWYgKCFzZWxmKQogICAgICAg
ICByZXR1cm4gbmlsOwogICAgIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMv
V2ViQ29yZVN1cHBvcnQvV2ViU3lzdGVtSW50ZXJmYWNlLm1tIGIvU291cmNlL1dlYktpdExlZ2Fj
eS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViU3lzdGVtSW50ZXJmYWNlLm1tCmluZGV4IGQ0NTUxNmY1
ZWVlMWMwODJjOTgyOGQ5ZTc0NzRlYzk2ODljNDdiNTguLjZkZDBiNTdkZDRiZjM0M2ZlOTY2ZjBm
YmE2M2MxMWNmNGYwOGQ5MzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dl
YkNvcmVTdXBwb3J0L1dlYlN5c3RlbUludGVyZmFjZS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVn
YWN5L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJTeXN0ZW1JbnRlcmZhY2UubW0KQEAgLTU1LDcgKzU1
LDYgQEAgdm9pZCBJbml0V2ViQ29yZVN5c3RlbUludGVyZmFjZSh2b2lkKQogICAgIElOSVQoRHJh
d0NlbGxGb2N1c1JpbmdXaXRoRnJhbWVBdFRpbWUpOwogICAgIElOSVQoRHJhd01lZGlhVUlQYXJ0
KTsKICAgICBJTklUKERyYXdNZWRpYVNsaWRlclRyYWNrKTsKLSAgICBJTklUKEdldFdoZWVsRXZl
bnREZWx0YXMpOwogICAgIElOSVQoR2V0TlNFdmVudEtleUNoYXIpOwogICAgIElOSVQoSGl0VGVz
dE1lZGlhVUlQYXJ0KTsKICAgICBJTklUKE1lYXN1cmVNZWRpYVVJUGFydCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkR5bmFtaWNTY3JvbGxCYXJzVmll
dy5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViRHluYW1pY1Njcm9sbEJh
cnNWaWV3Lm1tCmluZGV4IDY4MDRlMjc2NTI5MjE2NzEwM2M3NWQzZjI5N2U3NGNlYTMyMjU2NDAu
LmJiMjBkZTU1MGJhYmYwMjEwMmIwYzQyMzNhN2Q1N2NiMGU3MmE1ZjYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViRHluYW1pY1Njcm9sbEJhcnNWaWV3Lm1t
CisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViRHluYW1pY1Njcm9sbEJh
cnNWaWV3Lm1tCkBAIC0zMSw2ICszMSw3IEBACiAjaW1wb3J0ICJXZWJIVE1MVmlld0ludGVybmFs
LmgiCiAjaW1wb3J0IDxXZWJDb3JlL0ZyYW1lLmg+CiAjaW1wb3J0IDxXZWJDb3JlL0ZyYW1lVmll
dy5oPgorI2ltcG9ydCA8V2ViQ29yZS9QbGF0Zm9ybUV2ZW50RmFjdG9yeU1hYy5oPgogI2ltcG9y
dCA8V2ViS2l0U3lzdGVtSW50ZXJmYWNlLmg+CiAKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwpA
QCAtNTM1LDcgKzUzNiw3IEBAIC0gKHZvaWQpc2Nyb2xsV2hlZWw6KE5TRXZlbnQgKilldmVudAog
ICAgIGZsb2F0IGRlbHRhWDsKICAgICBmbG9hdCBkZWx0YVk7CiAgICAgQk9PTCBpc0NvbnRpbnVv
dXM7Ci0gICAgV0tHZXRXaGVlbEV2ZW50RGVsdGFzKGV2ZW50LCAmZGVsdGFYLCAmZGVsdGFZLCAm
aXNDb250aW51b3VzKTsKKyAgICBnZXRXaGVlbEV2ZW50RGVsdGFzKGV2ZW50LCBkZWx0YVgsIGRl
bHRhWSwgaXNDb250aW51b3VzKTsKIAogICAgIE5TRXZlbnRQaGFzZSBtb21lbnR1bVBoYXNlID0g
W2V2ZW50IG1vbWVudHVtUGhhc2VdOwogICAgIEJPT0wgaXNMYXRjaGluZ0V2ZW50ID0gbW9tZW50
dW1QaGFzZSAmIE5TRXZlbnRQaGFzZUJlZ2FuIHx8IG1vbWVudHVtUGhhc2UgJiBOU0V2ZW50UGhh
c2VTdGF0aW9uYXJ5OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmll
dy9XZWJIVE1MVmlldy5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViSFRN
TFZpZXcubW0KaW5kZXggOGZjN2Y2M2M1ZGM0ZTFlY2Q3ODQxZTVmNGNkYTc0NmI0OWMyZTU4OC4u
OGQwZDRkOTI1NDgwY2I4M2MyMGFlODE0NTU0NTQyMzAwNzRhNjhkYiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJIVE1MVmlldy5tbQorKysgYi9Tb3VyY2Uv
V2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkhUTUxWaWV3Lm1tCkBAIC0xMzIsNiArMTMyLDcg
QEAKICNpbXBvcnQgPHBhbC9zcGkvY29jb2EvTlNVUkxGaWxlVHlwZU1hcHBpbmdzU1BJLmg+CiAj
aW1wb3J0IDxwYWwvc3BpL21hYy9OU1NwZWxsQ2hlY2tlclNQSS5oPgogI2ltcG9ydCA8cGFsL3Nw
aS9tYWMvTlNWaWV3U1BJLmg+CisjaW1wb3J0IDxwYWwvc3BpL21hYy9OU1dpbmRvd1NQSS5oPgog
I2ltcG9ydCA8cnVudGltZS9Jbml0aWFsaXplVGhyZWFkaW5nLmg+CiAjaW1wb3J0IDx3dGYvQmxv
Y2tPYmpDRXhjZXB0aW9ucy5oPgogI2ltcG9ydCA8d3RmL01haW5UaHJlYWQuaD4KQEAgLTE0MDks
OCArMTQxMCw4IEBAIC0gKHZvaWQpX3JlbW92ZVdpbmRvd09ic2VydmVycwogICAgIE5TTm90aWZp
Y2F0aW9uQ2VudGVyICpub3RpZmljYXRpb25DZW50ZXIgPSBbTlNOb3RpZmljYXRpb25DZW50ZXIg
ZGVmYXVsdENlbnRlcl07CiAgICAgW25vdGlmaWNhdGlvbkNlbnRlciByZW1vdmVPYnNlcnZlcjpz
ZWxmIG5hbWU6TlNXaW5kb3dEaWRCZWNvbWVLZXlOb3RpZmljYXRpb24gb2JqZWN0Om5pbF07CiAg
ICAgW25vdGlmaWNhdGlvbkNlbnRlciByZW1vdmVPYnNlcnZlcjpzZWxmIG5hbWU6TlNXaW5kb3dE
aWRSZXNpZ25LZXlOb3RpZmljYXRpb24gb2JqZWN0Om5pbF07Ci0gICAgW25vdGlmaWNhdGlvbkNl
bnRlciByZW1vdmVPYnNlcnZlcjpzZWxmIG5hbWU6V0tXaW5kb3dXaWxsT3JkZXJPblNjcmVlbk5v
dGlmaWNhdGlvbigpIG9iamVjdDp3aW5kb3ddOwotICAgIFtub3RpZmljYXRpb25DZW50ZXIgcmVt
b3ZlT2JzZXJ2ZXI6c2VsZiBuYW1lOldLV2luZG93V2lsbE9yZGVyT2ZmU2NyZWVuTm90aWZpY2F0
aW9uKCkgb2JqZWN0OndpbmRvd107CisgICAgW25vdGlmaWNhdGlvbkNlbnRlciByZW1vdmVPYnNl
cnZlcjpzZWxmIG5hbWU6TlNXaW5kb3dXaWxsT3JkZXJPblNjcmVlbk5vdGlmaWNhdGlvbiBvYmpl
Y3Q6d2luZG93XTsKKyAgICBbbm90aWZpY2F0aW9uQ2VudGVyIHJlbW92ZU9ic2VydmVyOnNlbGYg
bmFtZTpOU1dpbmRvd1dpbGxPcmRlck9mZlNjcmVlbk5vdGlmaWNhdGlvbiBvYmplY3Q6d2luZG93
XTsKICAgICBbbm90aWZpY2F0aW9uQ2VudGVyIHJlbW92ZU9ic2VydmVyOnNlbGYgbmFtZTpOU1dp
bmRvd1dpbGxDbG9zZU5vdGlmaWNhdGlvbiBvYmplY3Q6d2luZG93XTsKICAgICAKICAgICBfcHJp
dmF0ZS0+b2JzZXJ2aW5nV2luZG93Tm90aWZpY2F0aW9ucyA9IGZhbHNlOwpAQCAtMzQ0OSw4ICsz
NDUwLDggQEAgLSAodm9pZClhZGRXaW5kb3dPYnNlcnZlcnMKICAgICBOU05vdGlmaWNhdGlvbkNl
bnRlciAqbm90aWZpY2F0aW9uQ2VudGVyID0gW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRD
ZW50ZXJdOwogICAgIFtub3RpZmljYXRpb25DZW50ZXIgYWRkT2JzZXJ2ZXI6c2VsZiBzZWxlY3Rv
cjpAc2VsZWN0b3Iod2luZG93RGlkQmVjb21lS2V5OikgbmFtZTpOU1dpbmRvd0RpZEJlY29tZUtl
eU5vdGlmaWNhdGlvbiBvYmplY3Q6bmlsXTsKICAgICBbbm90aWZpY2F0aW9uQ2VudGVyIGFkZE9i
c2VydmVyOnNlbGYgc2VsZWN0b3I6QHNlbGVjdG9yKHdpbmRvd0RpZFJlc2lnbktleTopIG5hbWU6
TlNXaW5kb3dEaWRSZXNpZ25LZXlOb3RpZmljYXRpb24gb2JqZWN0Om5pbF07Ci0gICAgW25vdGlm
aWNhdGlvbkNlbnRlciBhZGRPYnNlcnZlcjpzZWxmIHNlbGVjdG9yOkBzZWxlY3Rvcih3aW5kb3dX
aWxsT3JkZXJPblNjcmVlbjopIG5hbWU6V0tXaW5kb3dXaWxsT3JkZXJPblNjcmVlbk5vdGlmaWNh
dGlvbigpIG9iamVjdDp3aW5kb3ddOwotICAgIFtub3RpZmljYXRpb25DZW50ZXIgYWRkT2JzZXJ2
ZXI6c2VsZiBzZWxlY3RvcjpAc2VsZWN0b3Iod2luZG93V2lsbE9yZGVyT2ZmU2NyZWVuOikgbmFt
ZTpXS1dpbmRvd1dpbGxPcmRlck9mZlNjcmVlbk5vdGlmaWNhdGlvbigpIG9iamVjdDp3aW5kb3dd
OworICAgIFtub3RpZmljYXRpb25DZW50ZXIgYWRkT2JzZXJ2ZXI6c2VsZiBzZWxlY3RvcjpAc2Vs
ZWN0b3Iod2luZG93V2lsbE9yZGVyT25TY3JlZW46KSBuYW1lOk5TV2luZG93V2lsbE9yZGVyT25T
Y3JlZW5Ob3RpZmljYXRpb24gb2JqZWN0OndpbmRvd107CisgICAgW25vdGlmaWNhdGlvbkNlbnRl
ciBhZGRPYnNlcnZlcjpzZWxmIHNlbGVjdG9yOkBzZWxlY3Rvcih3aW5kb3dXaWxsT3JkZXJPZmZT
Y3JlZW46KSBuYW1lOk5TV2luZG93V2lsbE9yZGVyT2ZmU2NyZWVuTm90aWZpY2F0aW9uIG9iamVj
dDp3aW5kb3ddOwogICAgIFtub3RpZmljYXRpb25DZW50ZXIgYWRkT2JzZXJ2ZXI6c2VsZiBzZWxl
Y3RvcjpAc2VsZWN0b3Iod2luZG93V2lsbENsb3NlOikgbmFtZTpOU1dpbmRvd1dpbGxDbG9zZU5v
dGlmaWNhdGlvbiBvYmplY3Q6d2luZG93XTsKICAgICAKICAgICBfcHJpdmF0ZS0+b2JzZXJ2aW5n
V2luZG93Tm90aWZpY2F0aW9ucyA9IHRydWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVn
YWN5L21hYy9XZWJWaWV3L1dlYlZpZXcubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJW
aWV3L1dlYlZpZXcubW0KaW5kZXggNDc4YzIxY2E2MTg5Mjg3MDMyNmFiOGI3ZWZlMjMyMWM3OWQ4
YTU1NS4uZmUxOTA1YTVkYTc3NTU0Mzg2ZDhmOTE4YmQ5NjNmZTBkMDVjYzYyZiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCisrKyBiL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQpAQCAtMjExLDcgKzIxMSw5IEBA
CiAjaW1wb3J0IDxwYWwvc3BpL2NmL0NGTmV0d29ya1NQSS5oPgogI2ltcG9ydCA8cGFsL3NwaS9j
b2NvYS9OU1RvdWNoQmFyU1BJLmg+CiAjaW1wb3J0IDxwYWwvc3BpL2NvY29hL05TVVJMRmlsZVR5
cGVNYXBwaW5nc1NQSS5oPgorI2ltcG9ydCA8cGFsL3NwaS9tYWMvTlNSZXNwb25kZXJTUEkuaD4K
ICNpbXBvcnQgPHBhbC9zcGkvbWFjL05TU3BlbGxDaGVja2VyU1BJLmg+CisjaW1wb3J0IDxwYWwv
c3BpL21hYy9OU1dpbmRvd1NQSS5oPgogI2ltcG9ydCA8cnVudGltZS9BcnJheVByb3RvdHlwZS5o
PgogI2ltcG9ydCA8cnVudGltZS9DYXRjaFNjb3BlLmg+CiAjaW1wb3J0IDxydW50aW1lL0RhdGVJ
bnN0YW5jZS5oPgpAQCAtNTg2Niw5ICs1ODY4LDkgQEAgLSAodm9pZClhZGRXaW5kb3dPYnNlcnZl
cnNGb3JXaW5kb3c6KE5TV2luZG93ICopd2luZG93CiAgICAgICAgIFtbTlNOb3RpZmljYXRpb25D
ZW50ZXIgZGVmYXVsdENlbnRlcl0gYWRkT2JzZXJ2ZXI6c2VsZiBzZWxlY3RvcjpAc2VsZWN0b3Io
d2luZG93S2V5U3RhdGVDaGFuZ2VkOikKICAgICAgICAgICAgIG5hbWU6TlNXaW5kb3dEaWRSZXNp
Z25LZXlOb3RpZmljYXRpb24gb2JqZWN0OndpbmRvd107CiAgICAgICAgIFtbTlNOb3RpZmljYXRp
b25DZW50ZXIgZGVmYXVsdENlbnRlcl0gYWRkT2JzZXJ2ZXI6c2VsZiBzZWxlY3RvcjpAc2VsZWN0
b3IoX3dpbmRvd1dpbGxPcmRlck9uU2NyZWVuOikKLSAgICAgICAgICAgIG5hbWU6V0tXaW5kb3dX
aWxsT3JkZXJPblNjcmVlbk5vdGlmaWNhdGlvbigpIG9iamVjdDp3aW5kb3ddOworICAgICAgICAg
ICAgbmFtZTpOU1dpbmRvd1dpbGxPcmRlck9uU2NyZWVuTm90aWZpY2F0aW9uIG9iamVjdDp3aW5k
b3ddOwogICAgICAgICBbW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdIGFkZE9i
c2VydmVyOnNlbGYgc2VsZWN0b3I6QHNlbGVjdG9yKF93aW5kb3dXaWxsT3JkZXJPZmZTY3JlZW46
KQotICAgICAgICAgICAgbmFtZTpXS1dpbmRvd1dpbGxPcmRlck9mZlNjcmVlbk5vdGlmaWNhdGlv
bigpIG9iamVjdDp3aW5kb3ddOworICAgICAgICAgICAgbmFtZTpOU1dpbmRvd1dpbGxPcmRlck9m
ZlNjcmVlbk5vdGlmaWNhdGlvbiBvYmplY3Q6d2luZG93XTsKICAgICAgICAgW1tOU05vdGlmaWNh
dGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSBhZGRPYnNlcnZlcjpzZWxmIHNlbGVjdG9yOkBzZWxl
Y3Rvcihfd2luZG93RGlkQ2hhbmdlQmFja2luZ1Byb3BlcnRpZXM6KQogICAgICAgICAgICAgbmFt
ZTp3aW5kb3dEaWRDaGFuZ2VCYWNraW5nUHJvcGVydGllc05vdGlmaWNhdGlvbiBvYmplY3Q6d2lu
ZG93XTsKICAgICAgICAgW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSBhZGRP
YnNlcnZlcjpzZWxmIHNlbGVjdG9yOkBzZWxlY3Rvcihfd2luZG93RGlkQ2hhbmdlU2NyZWVuOikK
QEAgLTU4OTAsOSArNTg5Miw5IEBAIC0gKHZvaWQpcmVtb3ZlV2luZG93T2JzZXJ2ZXJzCiAgICAg
ICAgIFtbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl0gcmVtb3ZlT2JzZXJ2ZXI6
c2VsZgogICAgICAgICAgICAgbmFtZTpOU1dpbmRvd0RpZFJlc2lnbktleU5vdGlmaWNhdGlvbiBv
YmplY3Q6d2luZG93XTsKICAgICAgICAgW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2Vu
dGVyXSByZW1vdmVPYnNlcnZlcjpzZWxmCi0gICAgICAgICAgICBuYW1lOldLV2luZG93V2lsbE9y
ZGVyT25TY3JlZW5Ob3RpZmljYXRpb24oKSBvYmplY3Q6d2luZG93XTsKKyAgICAgICAgICAgIG5h
bWU6TlNXaW5kb3dXaWxsT3JkZXJPblNjcmVlbk5vdGlmaWNhdGlvbiBvYmplY3Q6d2luZG93XTsK
ICAgICAgICAgW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSByZW1vdmVPYnNl
cnZlcjpzZWxmCi0gICAgICAgICAgICBuYW1lOldLV2luZG93V2lsbE9yZGVyT2ZmU2NyZWVuTm90
aWZpY2F0aW9uKCkgb2JqZWN0OndpbmRvd107CisgICAgICAgICAgICBuYW1lOk5TV2luZG93V2ls
bE9yZGVyT2ZmU2NyZWVuTm90aWZpY2F0aW9uIG9iamVjdDp3aW5kb3ddOwogICAgICAgICBbW05T
Tm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdIHJlbW92ZU9ic2VydmVyOnNlbGYKICAg
ICAgICAgICAgIG5hbWU6d2luZG93RGlkQ2hhbmdlQmFja2luZ1Byb3BlcnRpZXNOb3RpZmljYXRp
b24gb2JqZWN0OndpbmRvd107CiAgICAgICAgIFtbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVs
dENlbnRlcl0gcmVtb3ZlT2JzZXJ2ZXI6c2VsZgpAQCAtNTkyMyw3ICs1OTI1LDcgQEAgLSAodm9p
ZCl2aWV3V2lsbE1vdmVUb1dpbmRvdzooTlNXaW5kb3cgKil3aW5kb3cKICAgICAgICAgLy8gVGhl
IGZvbGxvd2luZyBhcmUgZXhwZW5zaXZlIGVub3VnaCB0aGF0IHdlIGRvbid0IHdhbnQgdG8gY2Fs
bCB0aGVtIG92ZXIKICAgICAgICAgLy8gYW5kIG92ZXIsIHNvIGRvIHRoZW0gd2hlbiB3ZSBtb3Zl
IGludG8gYSB3aW5kb3cuCiAgICAgICAgIFt3aW5kb3cgc2V0QWNjZXB0c01vdXNlTW92ZWRFdmVu
dHM6WUVTXTsKLSAgICAgICAgV0tTZXROU1dpbmRvd1Nob3VsZFBvc3RFdmVudE5vdGlmaWNhdGlv
bnMod2luZG93LCBZRVMpOworICAgICAgICBbd2luZG93IF9zZXRTaG91bGRQb3N0RXZlbnROb3Rp
ZmljYXRpb25zOllFU107CiAgICAgfSBlbHNlIGlmICghX3ByaXZhdGUtPmNsb3NlZCkgewogICAg
ICAgICBfcHJpdmF0ZS0+cGFnZS0+c2V0Q2FuU3RhcnRNZWRpYShmYWxzZSk7CiAgICAgICAgIF9w
cml2YXRlLT5wYWdlLT5zZXRJc0luV2luZG93KGZhbHNlKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>319553</attachid>
            <date>2017-08-31 17:35:06 -0700</date>
            <delta_ts>2017-08-31 20:43:28 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-176175-20170831173505.patch</filename>
            <type>text/plain</type>
            <size>38863</size>
            <attacher name="Andy Estes">aestes</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIxMzgxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzVhYmE3NzU1NjhiNjgz
ZmZjOWVjZWE4MzhlNWFmOGRlMTVjOTY4Ni4uZTA3MTA5MzdiY2NhOGVhMTY1ZWMzZjY0MjM1ZWY5
MTA4OTU5M2E3MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDE3LTA4LTMxICBBbmR5
IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNvbT4KKworICAgICAgICBbTWFjXSBVcHN0cmVhbSBBcHBL
aXQtcmVsYXRlZCBXZWJLaXRTeXN0ZW1JbnRlcmZhY2UgZnVuY3Rpb25zCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzYxNzUKKworICAgICAgICBSZXZp
ZXdlZCBieSBCcmFkeSBFaWRzb24uCisKKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9XZWJDb3Jl
LnhjY29uZmlnOiBBZGRlZCAtT2JqQyB0byBPVEhFUl9MREZMQUdTIHNvIHRoYXQgT2JqZWN0aXZl
LUMgY2xhc3NlcworICAgICAgICBpbiBQQUwgYXJlIGV4cG9ydGVkIGJ5IFdlYkNvcmUgZXZlbiBp
ZiBXZWJDb3JlIGRvZXNuJ3QgdXNlIHRoZW0uCisgICAgICAgICogcGxhdGZvcm0vbWFjL1BsYXRm
b3JtRXZlbnRGYWN0b3J5TWFjLmg6CisgICAgICAgICogcGxhdGZvcm0vbWFjL1BsYXRmb3JtRXZl
bnRGYWN0b3J5TWFjLm1tOgorICAgICAgICAoV2ViQ29yZTo6Z2V0V2hlZWxFdmVudERlbHRhcyk6
CisgICAgICAgIChXZWJDb3JlOjprZXlDaGFyRm9yRXZlbnQpOgorICAgICAgICAoV2ViQ29yZTo6
UGxhdGZvcm1XaGVlbEV2ZW50QnVpbGRlcjo6UGxhdGZvcm1XaGVlbEV2ZW50QnVpbGRlcik6Cisg
ICAgICAgICogcGxhdGZvcm0vbWFjL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2UuaDoKKyAgICAgICAg
KiBwbGF0Zm9ybS9tYWMvV2ViQ29yZVN5c3RlbUludGVyZmFjZS5tbToKKwogMjAxNy0wOC0zMCAg
QW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CiAKICAgICAgICAgW01hY10gVXBzdHJlYW0g
QWNjZXNzaWJpbGl0eS1yZWxhdGVkIFdlYktpdFN5c3RlbUludGVyZmFjZSBmdW5jdGlvbnMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9Q
QUwvQ2hhbmdlTG9nCmluZGV4IDdiNGI2MDFmZTRlNWUxNTBmODE4OTc0NDU3YzY5ZWViOWI2MDEz
NTEuLmQ3YWE1Mzc5ODdlOGU2NzA0MmJjNWM0NTIxNDkzYmE2NDUyZmY4NWIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML0No
YW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDE3LTA4LTMxICBBbmR5IEVzdGVzICA8YWVzdGVz
QGFwcGxlLmNvbT4KKworICAgICAgICBbTWFjXSBVcHN0cmVhbSBBcHBLaXQtcmVsYXRlZCBXZWJL
aXRTeXN0ZW1JbnRlcmZhY2UgZnVuY3Rpb25zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xNzYxNzUKKworICAgICAgICBSZXZpZXdlZCBieSBCcmFkeSBF
aWRzb24uCisKKyAgICAgICAgKiBQQUwueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAg
ICAgKiBwYWwvc3BpL21hYy9ISVRvb2xib3hTUEkuaDoKKyAgICAgICAgKiBwYWwvc3BpL21hYy9O
U1Jlc3BvbmRlclNQSS5oOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9t
YWMvTlNXaW5kb3dTUEkuaC4KKyAgICAgICAgKiBwYWwvc3BpL21hYy9OU1dpbmRvd1NQSS5oOgor
ICAgICAgICAqIHBhbC9zeXN0ZW0vbWFjL1dlYlBhbmVsLmg6IENvcGllZCBmcm9tIFNvdXJjZS9X
ZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9OU1dpbmRvd1NQSS5oLgorICAgICAgICAqIHBhbC9zeXN0
ZW0vbWFjL1dlYlBhbmVsLm1tOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3Nw
aS9tYWMvSElUb29sYm94U1BJLmguCisgICAgICAgICgtW1dlYlBhbmVsIGluaXRdKToKKwogMjAx
Ny0wOC0zMCAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CiAKICAgICAgICAgW01hY10g
VXBzdHJlYW0gQWNjZXNzaWJpbGl0eS1yZWxhdGVkIFdlYktpdFN5c3RlbUludGVyZmFjZSBmdW5j
dGlvbnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktp
dC9DaGFuZ2VMb2cKaW5kZXggYTg2NjZmMzM4NTM0MWQzNTZkN2EwYzcxMzFlYTJhZmY2ODE0YTY4
Yi4uMGVhNWVhYmRhZTk5Y2IwZDE1NjMwNGRhY2M1YTk4MTFmOGE4YWYzNiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwyMCBAQAorMjAxNy0wOC0zMSAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+
CisKKyAgICAgICAgW01hY10gVXBzdHJlYW0gQXBwS2l0LXJlbGF0ZWQgV2ViS2l0U3lzdGVtSW50
ZXJmYWNlIGZ1bmN0aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTc2MTc1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQnJhZHkgRWlkc29uLgorCisg
ICAgICAgICogUGx1Z2luUHJvY2Vzcy9tYWMvUGx1Z2luUHJvY2Vzc01hYy5tbToKKyAgICAgICAg
KFdlYktpdDo6aW5pdGlhbGl6ZUNvY29hT3ZlcnJpZGVzKToKKyAgICAgICAgKiBTaGFyZWQvbWFj
L1dlYkV2ZW50RmFjdG9yeS5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViRXZlbnRGYWN0b3J5Ojpj
cmVhdGVXZWJXaGVlbEV2ZW50KToKKyAgICAgICAgKFdlYktpdDo6V2ViRXZlbnRGYWN0b3J5Ojpj
cmVhdGVXZWJLZXlib2FyZEV2ZW50KToKKyAgICAgICAgKiBVSVByb2Nlc3MvbWFjL1dLVGV4dElu
cHV0V2luZG93Q29udHJvbGxlci5tbToKKyAgICAgICAgKC1bV0tUZXh0SW5wdXRQYW5lbCBpbml0
XSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViU3lzdGVtSW50
ZXJmYWNlLm1tOgorICAgICAgICAoSW5pdFdlYkNvcmVTeXN0ZW1JbnRlcmZhY2UpOgorCiAyMDE3
LTA4LTMwICBBbmR5IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNvbT4KIAogICAgICAgICBbTWFjXSBV
cHN0cmVhbSBBY2Nlc3NpYmlsaXR5LXJlbGF0ZWQgV2ViS2l0U3lzdGVtSW50ZXJmYWNlIGZ1bmN0
aW9ucwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nIGIvU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCmluZGV4IGJkZjVkMzhhZTdlNWI3NjE0MDli
M2QxMDU0ZDg0MzgzODY4OWZiZGEuLmM4NTNmMzgxMDg5NmM2MTk0ZDFhOTliODVhZDRlNTYzMTkw
MWM2MDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZworKysg
Yi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNiBAQAorMjAx
Ny0wOC0zMSAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CisKKyAgICAgICAgW01hY10g
VXBzdHJlYW0gQXBwS2l0LXJlbGF0ZWQgV2ViS2l0U3lzdGVtSW50ZXJmYWNlIGZ1bmN0aW9ucwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc2MTc1CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgQnJhZHkgRWlkc29uLgorCisgICAgICAgICogUGx1Z2lucy9I
b3N0ZWQvTmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5Lm1tOgorICAgICAgICAoV2ViS2l0OjpO
ZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJveHk6OmtleUV2ZW50KToKKyAgICAgICAgKiBQbHVnaW5z
L0hvc3RlZC9XZWJUZXh0SW5wdXRXaW5kb3dDb250cm9sbGVyLm06CisgICAgICAgICgtW1dlYlRl
eHRJbnB1dFBhbmVsIGluaXRdKToKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJTeXN0ZW1J
bnRlcmZhY2UubW06CisgICAgICAgIChJbml0V2ViQ29yZVN5c3RlbUludGVyZmFjZSk6CisgICAg
ICAgICogV2ViVmlldy9XZWJEeW5hbWljU2Nyb2xsQmFyc1ZpZXcubW06CisgICAgICAgICgtW1dl
YkR5bmFtaWNTY3JvbGxCYXJzVmlldyBzY3JvbGxXaGVlbDpdKToKKyAgICAgICAgKiBXZWJWaWV3
L1dlYkhUTUxWaWV3Lm1tOgorICAgICAgICAoLVtXZWJIVE1MVmlldyBfcmVtb3ZlV2luZG93T2Jz
ZXJ2ZXJzXSk6CisgICAgICAgICgtW1dlYkhUTUxWaWV3IGFkZFdpbmRvd09ic2VydmVyc10pOgor
ICAgICAgICAqIFdlYlZpZXcvV2ViVmlldy5tbToKKyAgICAgICAgKC1bV2ViVmlldyBhZGRXaW5k
b3dPYnNlcnZlcnNGb3JXaW5kb3c6XSk6CisgICAgICAgICgtW1dlYlZpZXcgcmVtb3ZlV2luZG93
T2JzZXJ2ZXJzXSk6CisgICAgICAgICgtW1dlYlZpZXcgdmlld1dpbGxNb3ZlVG9XaW5kb3c6XSk6
CisKIDIwMTctMDgtMzAgIEFuZHkgRXN0ZXMgIDxhZXN0ZXNAYXBwbGUuY29tPgogCiAgICAgICAg
IFtNYWNdIFVwc3RyZWFtIEFjY2Vzc2liaWxpdHktcmVsYXRlZCBXZWJLaXRTeXN0ZW1JbnRlcmZh
Y2UgZnVuY3Rpb25zCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9X
ZWJDb3JlLnhjY29uZmlnIGIvU291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvV2ViQ29yZS54
Y2NvbmZpZwppbmRleCAyYTBhY2Y3YWUyNzhjNjA5ODUxODBmOTg2Yzc1MWMzNmRmYmFhZGQ5Li4z
NWZjM2U3OTVmZjhhMjljYjAzMWMwNTkzYzI2YmViY2RkZjNlNDQ3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9XZWJDb3JlLnhjY29uZmlnCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL0NvbmZpZ3VyYXRpb25zL1dlYkNvcmUueGNjb25maWcKQEAgLTc3LDcgKzc3LDcgQEAg
TElCV0VCUlRDX0xJQlJBUllfRElSX1VTRV9PVkVSUklERV9GUkFNRVdPUktTX0RJUl9OTyA9ICQo
V0VCQ09SRV9GUkFNRVdPUktTX0RJUikKIExJQldFQlJUQ19MSUJSQVJZX0RJUl9VU0VfT1ZFUlJJ
REVfRlJBTUVXT1JLU19ESVJfWUVTID0gJChXS19PVkVSUklERV9GUkFNRVdPUktTX0RJUik7CiAK
IE9USEVSX0xERkxBR1MgPSAkKGluaGVyaXRlZCkgJChXS19SRUxPQ0FUQUJMRV9GUkFNRVdPUktf
TERGTEFHUykgJChXS19VTkRFRklORURfU1lNQk9MU19MREZMQUdTKSAkKE9USEVSX0xERkxBR1Nf
UExBVEZPUk0pOwotT1RIRVJfTERGTEFHU19CQVNFID0gLWxzcWxpdGUzIC1sb2JqYyAtbEFOR0xF
IC1mcmFtZXdvcmsgQ29yZUF1ZGlvIC1mcmFtZXdvcmsgTWV0YWwgLWFsbG93YWJsZV9jbGllbnQg
V2ViQ29yZVRlc3RTdXBwb3J0IC1hbGxvd2FibGVfY2xpZW50IFdlYktpdExlZ2FjeTsKK09USEVS
X0xERkxBR1NfQkFTRSA9IC1sc3FsaXRlMyAtbG9iamMgLWxBTkdMRSAtZnJhbWV3b3JrIENvcmVB
dWRpbyAtZnJhbWV3b3JrIE1ldGFsIC1hbGxvd2FibGVfY2xpZW50IFdlYkNvcmVUZXN0U3VwcG9y
dCAtYWxsb3dhYmxlX2NsaWVudCBXZWJLaXRMZWdhY3kgLU9iakM7CiAvLyBGSVhNRTogUmVkdWNl
IHRoZSBudW1iZXIgb2YgYWxsb3dhYmxlX2NsaWVudCA8cmRhcjovL3Byb2JsZW0vMzE4MjM5Njk+
CiBPVEhFUl9MREZMQUdTX0JBU0VfaW9zID0gJChPVEhFUl9MREZMQUdTX0JBU0UpIC1mcmFtZXdv
cmsgQ0ZOZXR3b3JrIC1mcmFtZXdvcmsgQ29yZUdyYXBoaWNzIC1mcmFtZXdvcmsgQ29yZVRleHQg
LWZyYW1ld29yayBGb3VuZGF0aW9uIC1mcmFtZXdvcmsgSW1hZ2VJTyAtZnJhbWV3b3JrIE1vYmls
ZUNvcmVTZXJ2aWNlcyAtZnJhbWV3b3JrIE9wZW5HTEVTIC1sTW9iaWxlR2VzdGFsdCAkKFdLX0lP
U19CSU5DT01QQVRfTERGTEFHUykgLWFsbG93YWJsZV9jbGllbnQgV2ViS2l0IC1hbGxvd2FibGVf
Y2xpZW50IGlUdW5lc1UgLWFsbG93YWJsZV9jbGllbnQgQ2FzYWJsYW5jYSAtYWxsb3dhYmxlX2Ns
aWVudCBSZW1vdGUgLWFsbG93YWJsZV9jbGllbnQgVFZCb29rcyAtYWxsb3dhYmxlX2NsaWVudCBE
dW1wUmVuZGVyVHJlZSAtYWxsb3dhYmxlX2NsaWVudCBXZWJLaXRUZXN0UnVubmVyIC1hbGxvd2Fi
bGVfY2xpZW50IFRlc3RXZWJLaXRBUEk7CiBPVEhFUl9MREZMQUdTX1BMQVRGT1JNW3Nkaz1pcGhv
bmVvcypdID0gJChPVEhFUl9MREZMQUdTX0JBU0VfaW9zKSAtZnJhbWV3b3JrIElPU3VyZmFjZSAt
ZnJhbWV3b3JrIEdyYXBoaWNzU2VydmljZXMgJChMSUJXRUJSVENfTERGTEFHUyk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9T
b3VyY2UvV2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggZDk4
NThmOWVlMmI0MWYwMDU5MzcxYWU5MGNiMmJmZGRkYTNkMGI4OC4uOGRkNWE2YjM2NzkyYTI2MWZi
ZTUzOTkzMDQ5NmY5MTc0YjdmMDU1MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML1BB
TC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMTAxLDYgKzEwMSw5IEBACiAJCUExMDI2NTg5
MUY1Njc0N0EwMEI0Qzg0NCAvKiBISVRvb2xib3hTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExMDI2NTg4MUY1Njc0N0EwMEI0Qzg0NCAvKiBISVRv
b2xib3hTUEkuaCAqLzsgfTsKIAkJQTEwMjY1OEIxRjU2NzQ4QzAwQjRDODQ0IC8qIFF1aWNrRHJh
d1NQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTEw
MjY1OEExRjU2NzQ4QzAwQjRDODQ0IC8qIFF1aWNrRHJhd1NQSS5oICovOyB9OwogCQlBMTAyNjU4
RTFGNTY3RTlEMDBCNEM4NDQgLyogSElTZXJ2aWNlc1NQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTEwMjY1OEQxRjU2N0U5RDAwQjRDODQ0IC8qIEhJ
U2VydmljZXNTUEkuaCAqLzsgfTsKKwkJQTEwODI2RjExRjU3M0JDQTAwNDc3MkFDIC8qIE5TUmVz
cG9uZGVyU1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBBMTA4MjZGMDFGNTczQkNBMDA0NzcyQUMgLyogTlNSZXNwb25kZXJTUEkuaCAqLzsgfTsKKwkJ
QTEwODI2RjkxRjU3NjI5MjAwNDc3MkFDIC8qIFdlYlBhbmVsLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMTA4MjZGNzFGNTc2MjkyMDA0NzcyQUMgLyog
V2ViUGFuZWwuaCAqLzsgfTsKKwkJQTEwODI2RkExRjU3NjI5MjAwNDc3MkFDIC8qIFdlYlBhbmVs
Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTEwODI2
RjgxRjU3NjI5MjAwNDc3MkFDIC8qIFdlYlBhbmVsLm1tICovOyB9OwogCQlBMUY1NURDRjFGNTUy
OEVDMDBFREI3NUYgLyogTWV0YWRhdGFTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEExRjU1RENFMUY1NTI4RUMwMEVEQjc1RiAvKiBNZXRhZGF0YVNQ
SS5oICovOyB9OwogCQlBMzBENDEyMTFGMEREMEVBMDBCNzE5NTQgLyogS2lsbFJpbmcuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEEzMEQ0MTFFMUYwREQw
RUEwMEI3MTk1NCAvKiBLaWxsUmluZy5oICovOyB9OwogCQlBMzBENDEyMjFGMEREMEVBMDBCNzE5
NTQgLyogS2lsbFJpbmdOb25lLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEEzMEQ0MTFGMUYwREQwRUEwMEI3MTk1NCAvKiBLaWxsUmluZ05vbmUuY3Bw
ICovOyB9OwpAQCAtMjE3LDYgKzIyMCw5IEBACiAJCUExMDI2NTg4MUY1Njc0N0EwMEI0Qzg0NCAv
KiBISVRvb2xib3hTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSElUb29s
Ym94U1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUExMDI2NThBMUY1Njc0OEMw
MEI0Qzg0NCAvKiBRdWlja0RyYXdTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gUXVpY2tEcmF3U1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUExMDI2NThE
MUY1NjdFOUQwMEI0Qzg0NCAvKiBISVNlcnZpY2VzU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhJU2Vy
dmljZXNTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTEwODI2RjAxRjU3M0JD
QTAwNDc3MkFDIC8qIE5TUmVzcG9uZGVyU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5TUmVzcG9uZGVy
U1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExMDgyNkY3MUY1NzYyOTIwMDQ3
NzJBQyAvKiBXZWJQYW5lbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJQYW5lbC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlBMTA4MjZGODFGNTc2MjkyMDA0NzcyQUMgLyogV2ViUGFuZWwu
bW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJQYW5lbC5tbTsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJQTFGNTVEQ0UxRjU1MjhFQzAwRURCNzVGIC8qIE1ldGFkYXRhU1BJLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IE1ldGFkYXRhU1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CUEzMEQ0MTFFMUYwREQwRUEwMEI3MTk1NCAvKiBLaWxsUmluZy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBLaWxsUmluZy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQlBMzBENDExRjFGMEREMEVBMDBCNzE5NTQgLyogS2lsbFJpbmdOb25lLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEtpbGxSaW5nTm9uZS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CkBAIC0zNTMsNiArMzU5LDcgQEAKIAkJCQkwQzc3ODU3OTFGNDUxMzBG
MDBGNEVCQjYgLyogTlNNZW51U1BJLmggKi8sCiAJCQkJMEM3Nzg1N0ExRjQ1MTMwRjAwRjRFQkI2
IC8qIE5TUGFzdGVib2FyZFNQSS5oICovLAogCQkJCTBDNzc4NTdCMUY0NTEzMEYwMEY0RUJCNiAv
KiBOU1BvcG92ZXJTUEkuaCAqLywKKwkJCQlBMTA4MjZGMDFGNTczQkNBMDA0NzcyQUMgLyogTlNS
ZXNwb25kZXJTUEkuaCAqLywKIAkJCQkwQzc3ODU3QzFGNDUxMzBGMDBGNEVCQjYgLyogTlNTY3Jv
bGxlckltcFNQSS5oICovLAogCQkJCTBDNzc4NTdEMUY0NTEzMEYwMEY0RUJCNiAvKiBOU1Njcm9s
bGluZ0lucHV0RmlsdGVyU1BJLmggKi8sCiAJCQkJMEM3Nzg1N0UxRjQ1MTMwRjAwRjRFQkI2IC8q
IE5TU2Nyb2xsaW5nTW9tZW50dW1DYWxjdWxhdG9yU1BJLmggKi8sCkBAIC00NzMsNiArNDgwLDgg
QEAKIAkJCQlBMzc4OEU5RDFGMDVCNzhFMDA2Nzk0MjUgLyogU291bmRNYWMubW0gKi8sCiAJCQkJ
QTNBQjZFNjIxRjNEMjE3RjAwOUMxNEIxIC8qIFN5c3RlbVNsZWVwTGlzdGVuZXJNYWMuaCAqLywK
IAkJCQlBM0FCNkU2MzFGM0QyMTdGMDA5QzE0QjEgLyogU3lzdGVtU2xlZXBMaXN0ZW5lck1hYy5t
bSAqLywKKwkJCQlBMTA4MjZGNzFGNTc2MjkyMDA0NzcyQUMgLyogV2ViUGFuZWwuaCAqLywKKwkJ
CQlBMTA4MjZGODFGNTc2MjkyMDA0NzcyQUMgLyogV2ViUGFuZWwubW0gKi8sCiAJCQkpOwogCQkJ
cGF0aCA9IG1hYzsKIAkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CkBAIC01NDYsNiArNTU1LDcg
QEAKIAkJCQkwQzc3ODU5MjFGNDUxMzBGMDBGNEVCQjYgLyogTlNNZW51U1BJLmggaW4gSGVhZGVy
cyAqLywKIAkJCQkwQzc3ODU5MzFGNDUxMzBGMDBGNEVCQjYgLyogTlNQYXN0ZWJvYXJkU1BJLmgg
aW4gSGVhZGVycyAqLywKIAkJCQkwQzc3ODU5NDFGNDUxMzBGMDBGNEVCQjYgLyogTlNQb3BvdmVy
U1BJLmggaW4gSGVhZGVycyAqLywKKwkJCQlBMTA4MjZGMTFGNTczQkNBMDA0NzcyQUMgLyogTlNS
ZXNwb25kZXJTUEkuaCBpbiBIZWFkZXJzICovLAogCQkJCTBDNzc4NTk1MUY0NTEzMEYwMEY0RUJC
NiAvKiBOU1Njcm9sbGVySW1wU1BJLmggaW4gSGVhZGVycyAqLywKIAkJCQkwQzc3ODU5NjFGNDUx
MzBGMDBGNEVCQjYgLyogTlNTY3JvbGxpbmdJbnB1dEZpbHRlclNQSS5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJMEM3Nzg1OTcxRjQ1MTMwRjAwRjRFQkI2IC8qIE5TU2Nyb2xsaW5nTW9tZW50dW1DYWxj
dWxhdG9yU1BJLmggaW4gSGVhZGVycyAqLywKQEAgLTU4MCw2ICs1OTAsNyBAQAogCQkJCTBDNzc4
NUExMUY0NTEzMEYwMEY0RUJCNiAvKiBUVUNhbGxTUEkuaCBpbiBIZWFkZXJzICovLAogCQkJCTBD
NUFGOTIyMUY0M0E0QzcwMDJFQUMwMiAvKiBVSUtpdFNQSS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
MEMyREExNTkxRjNCRUI0OTAwREJDMzE3IC8qIFdlYkZpbHRlckV2YWx1YXRvclNQSS5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQTEwODI2RjkxRjU3NjI5MjAwNDc3MkFDIC8qIFdlYlBhbmVsLmggaW4g
SGVhZGVycyAqLywKIAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5n
ID0gMDsKIAkJfTsKQEAgLTY3OCw2ICs2ODksNyBAQAogCQkJCUEzNzg4RTlDMUYwNUI3ODIwMDY3
OTQyNSAvKiBTb3VuZE5vbmUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTNBQjZFNTcxRjNEMURE
QjAwOUMxNEIxIC8qIFN5c3RlbVNsZWVwTGlzdGVuZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
QTNBQjZFNjUxRjNEMjE3RjAwOUMxNEIxIC8qIFN5c3RlbVNsZWVwTGlzdGVuZXJNYWMubW0gaW4g
U291cmNlcyAqLywKKwkJCQlBMTA4MjZGQTFGNTc2MjkyMDA0NzcyQUMgLyogV2ViUGFuZWwubW0g
aW4gU291cmNlcyAqLywKIAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNz
aW5nID0gMDsKIAkJfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21h
Yy9ISVRvb2xib3hTUEkuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9ISVRvb2xi
b3hTUEkuaAppbmRleCAwMDM0ODc3NzcyZGNjNThmMDJhMTY3OGE3NmNlMmZhMDViOGFmYWNiLi5k
ZGZmZTVjNjUxNDA2ODJkMGExNjBkNDFkMzhiMWUxNWM2NGJmYTkwIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9tYWMvSElUb29sYm94U1BJLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvUEFML3BhbC9zcGkvbWFjL0hJVG9vbGJveFNQSS5oCkBAIC0zMywxMCArMzMsMTUgQEAK
IAogI2RlZmluZSBrVFNNSW5wdXRTb3VyY2VQcm9wZXJ0eVNjcmlwdENvZGUgQ0ZTVFIoIlRTTUlu
cHV0U291cmNlUHJvcGVydHlTY3JpcHRDb2RlIikKIAorZW51bSB7CisgICAga0V2ZW50UGFyYW1L
ZXlNYWNDaGFyQ29kZXMgPSAna2NocicsCit9OworCiAjZW5kaWYKIAogdHlwZWRlZiBzdHJ1Y3Qg
X19UU01JbnB1dFNvdXJjZSogVFNNSW5wdXRTb3VyY2VSZWY7CiB0eXBlZGVmIENGU3RyaW5nUmVm
IFRTTUlucHV0U291cmNlUHJvcGVydHlUYWc7Cit0eXBlZGVmIHN0cnVjdCBPcGFxdWVFdmVudFJl
ZiogRXZlbnRSZWY7CiAKIFdURl9FWFRFUk5fQ19CRUdJTgogCkBAIC00NSw1ICs1MCw2IEBAIENH
V2luZG93SUQgR2V0TmF0aXZlV2luZG93RnJvbVdpbmRvd1JlZihXaW5kb3dSZWYpOwogT1NTdGF0
dXMgVFNNUHJvY2Vzc1Jhd0tleUV2ZW50KEV2ZW50UmVmKTsKIEV2ZW50UmVmIEdldEN1cnJlbnRF
dmVudCgpOwogQ0ZUeXBlUmVmIFRTTUdldElucHV0U291cmNlUHJvcGVydHkoVFNNSW5wdXRTb3Vy
Y2VSZWYsIFRTTUlucHV0U291cmNlUHJvcGVydHlUYWcpOworT1NTdGF0dXMgR2V0RXZlbnRQYXJh
bWV0ZXIoRXZlbnRSZWYsIEV2ZW50UGFyYW1OYW1lIGluTmFtZSwgRXZlbnRQYXJhbVR5cGUgaW5E
ZXNpcmVkVHlwZSwgRXZlbnRQYXJhbVR5cGUqIG91dEFjdHVhbFR5cGUsIEJ5dGVDb3VudCBpbkJ1
ZmZlclNpemUsIEJ5dGVDb3VudCogb3V0QWN0dWFsU2l6ZSwgdm9pZCogb3V0RGF0YSk7CiAKIFdU
Rl9FWFRFUk5fQ19FTkQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21h
Yy9OU1Jlc3BvbmRlclNQSS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvbWFjL05TUmVz
cG9uZGVyU1BJLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZmVkMWE3OTUyN2Y3MmU4YzA3NzEzZDNmZTgyMDIxZDE1
NjA3YmYzZAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21h
Yy9OU1Jlc3BvbmRlclNQSS5oCkBAIC0wLDAgKzEsNDAgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMp
IDIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAor
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIu
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9S
UyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09O
VFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWYgUExB
VEZPUk0oTUFDKQorCisjaWYgVVNFKEFQUExFX0lOVEVSTkFMX1NESykKKworI2ltcG9ydCA8QXBw
S2l0L05TUmVzcG9uZGVyX1ByaXZhdGUuaD4KKworI2Vsc2UKKworQGludGVyZmFjZSBOU1Jlc3Bv
bmRlciAoKQorLSAodm9pZClfc2V0U2hvdWxkUG9zdEV2ZW50Tm90aWZpY2F0aW9uczooQk9PTClw
b3N0Tm90aWZpY2F0aW9uczsKK0BlbmQKKworI2VuZGlmCisKKyNlbmRpZiAvLyBQTEFURk9STShN
QUMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9tYWMvTlNXaW5kb3dT
UEkuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9OU1dpbmRvd1NQSS5oCmluZGV4
IGJhYjg0MDBmMDQ5ZDk0YjkyZGVmZWE5YWU5NTMxNjJmZjIxNTg5NDMuLmFhODEyNTVkOGViYmYx
MDNhN2YyOTExOTMzYTAwNDc4MzM4NjU1NTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BB
TC9wYWwvc3BpL21hYy9OU1dpbmRvd1NQSS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwv
c3BpL21hYy9OU1dpbmRvd1NQSS5oCkBAIC00Miw5ICs0MiwxNCBAQAogQGVuZAogCiBlbnVtIHsK
KyAgICBOU1NpZGVVdGlsaXR5V2luZG93TWFzayA9IDEgPDwgOSwKKyAgICBOU1NtYWxsV2luZG93
TWFzayA9IDEgPDwgMTAsCiAgICAgX05TQ2FyYm9uV2luZG93TWFzayA9IDEgPDwgMjUsCiB9Owog
CiAjZW5kaWYKIAorZXh0ZXJuIE5TU3RyaW5nICpOU1dpbmRvd1dpbGxPcmRlck9uU2NyZWVuTm90
aWZpY2F0aW9uOworZXh0ZXJuIE5TU3RyaW5nICpOU1dpbmRvd1dpbGxPcmRlck9mZlNjcmVlbk5v
dGlmaWNhdGlvbjsKKwogI2VuZGlmIC8vIFBMQVRGT1JNKE1BQykKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL1BBTC9wYWwvc3lzdGVtL21hYy9XZWJQYW5lbC5oIGIvU291cmNlL1dlYkNvcmUv
UEFML3BhbC9zeXN0ZW0vbWFjL1dlYlBhbmVsLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTAzNTE2M2Q5ZGJhZWUz
MWQ5ODExMjIyNTE2MmRkMzhiZjg2NTY5ZQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL1BBTC9wYWwvc3lzdGVtL21hYy9XZWJQYW5lbC5oCkBAIC0wLDAgKzEsMzYgQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoK
KyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQg
SVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUg
SU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBP
RgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
IFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
KyAqLworCisjaWYgUExBVEZPUk0oTUFDKQorCisjaW1wb3J0IDxBcHBLaXQvQXBwS2l0Lmg+CisK
K1BBTF9FWFBPUlQgQGludGVyZmFjZSBXZWJQYW5lbCA6IE5TUGFuZWwKKworLSAoaW5zdGFuY2V0
eXBlKWluaXQ7CisKK0BlbmQKKworI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Q
QUwvcGFsL3N5c3RlbS9tYWMvV2ViUGFuZWwubW0gYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3N5
c3RlbS9tYWMvV2ViUGFuZWwubW0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzE3YmRhMDJlN2I3ZWIyN2E5YmQyYjU5
Nzk1NmY1NDEyZGFjZjEyNgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9w
YWwvc3lzdGVtL21hYy9XZWJQYW5lbC5tbQpAQCAtMCwwICsxLDQ3IEBACisvKgorICogQ29weXJp
Z2h0IChDKSAyMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05U
UklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAq
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1Ig
SVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKwor
I2ltcG9ydCAiY29uZmlnLmgiCisjaW1wb3J0ICJXZWJQYW5lbC5oIgorCisjaWYgUExBVEZPUk0o
TUFDKQorCisjaW1wb3J0IDxwYWwvc3BpL21hYy9OU1dpbmRvd1NQSS5oPgorCitAaW1wbGVtZW50
YXRpb24gV2ViUGFuZWwKKworLSAoaW5zdGFuY2V0eXBlKWluaXQKK3sKKyNwcmFnbWEgY2xhbmcg
ZGlhZ25vc3RpYyBwdXNoCisjcHJhZ21hIGNsYW5nIGRpYWdub3N0aWMgaWdub3JlZCAiLVdkZXBy
ZWNhdGVkLWRlY2xhcmF0aW9ucyIKKyAgICBzdGF0aWMgTlNVSW50ZWdlciBzdHlsZU1hc2sgPSBO
U01pbmlhdHVyaXphYmxlV2luZG93TWFzayB8IE5TQ2xvc2FibGVXaW5kb3dNYXNrIHwgTlNSZXNp
emFibGVXaW5kb3dNYXNrICB8IE5TVGl0bGVkV2luZG93TWFzayB8IE5TU21hbGxXaW5kb3dNYXNr
IHwgTlNTaWRlVXRpbGl0eVdpbmRvd01hc2sgfCBOU1V0aWxpdHlXaW5kb3dNYXNrOworI3ByYWdt
YSBjbGFuZyBkaWFnbm9zdGljIHBvcAorICAgIAorICAgIHJldHVybiBbc3VwZXIgaW5pdFdpdGhD
b250ZW50UmVjdDpOU1plcm9SZWN0IHN0eWxlTWFzazpzdHlsZU1hc2sgYmFja2luZzpOU0JhY2tp
bmdTdG9yZUJ1ZmZlcmVkIGRlZmVyOllFU107Cit9CisKK0BlbmQKKworI2VuZGlmIC8vIFBMQVRG
T1JNKE1BQykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9QbGF0Zm9y
bUV2ZW50RmFjdG9yeU1hYy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1BsYXRmb3Jt
RXZlbnRGYWN0b3J5TWFjLmgKaW5kZXggMjU5YzYwNTBkNjBhNDlmNDk4ZGM1NDhiN2NlZjMyZjBj
NzZhZGU2Yy4uZDIwYTJkOGVlOTBmNGMxODY3Yjk2ZTU5NDkyMTk1OWM0ZjZjMDI2ZiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1BsYXRmb3JtRXZlbnRGYWN0b3J5TWFj
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1BsYXRmb3JtRXZlbnRGYWN0b3J5
TWFjLmgKQEAgLTQ5LDYgKzQ5LDkgQEAgV0VCQ09SRV9FWFBPUlQgU3RyaW5nIGtleUlkZW50aWZp
ZXJGb3JLZXlFdmVudChOU0V2ZW50ICopOwogV0VCQ09SRV9FWFBPUlQgU3RyaW5nIGtleUZvcktl
eUV2ZW50KE5TRXZlbnQgKik7CiBXRUJDT1JFX0VYUE9SVCBTdHJpbmcgY29kZUZvcktleUV2ZW50
KE5TRXZlbnQgKik7CiBXRUJDT1JFX0VYUE9SVCBkb3VibGUgZXZlbnRUaW1lU3RhbXBTaW5jZTE5
NzAoTlNFdmVudCAqKTsKKyAgICAKK1dFQkNPUkVfRVhQT1JUIHZvaWQgZ2V0V2hlZWxFdmVudERl
bHRhcyhOU0V2ZW50ICosIGZsb2F0JiBkZWx0YVgsIGZsb2F0JiBkZWx0YVksIEJPT0wmIGNvbnRp
bnVvdXMpOworV0VCQ09SRV9FWFBPUlQgVUludDgga2V5Q2hhckZvckV2ZW50KE5TRXZlbnQgKik7
CiAKICNlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvUGxh
dGZvcm1FdmVudEZhY3RvcnlNYWMubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvUGxh
dGZvcm1FdmVudEZhY3RvcnlNYWMubW0KaW5kZXggYmMxZTM2N2ZjNDY5NGVhZjQ2MGFiMGVhNWE0
MjMwZDAwMDAxYWM4OS4uMTNlMTMwMTMxYzc3MWQwNzUyYWVmNGQ4ZjI0NTU1NzhiMjZlMWFiYyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1BsYXRmb3JtRXZlbnRGYWN0
b3J5TWFjLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9QbGF0Zm9ybUV2ZW50
RmFjdG9yeU1hYy5tbQpAQCAtMzQsNiArMzQsOCBAQAogI2ltcG9ydCAiV2luZG93c0tleWJvYXJk
Q29kZXMuaCIKICNpbXBvcnQgPEhJVG9vbGJveC9FdmVudHMuaD4KICNpbXBvcnQgPG1hY2gvbWFj
aF90aW1lLmg+CisjaW1wb3J0IDxwYWwvc3BpL21hYy9ISVRvb2xib3hTUEkuaD4KKyNpbXBvcnQg
PHBhbC9zcGkvbWFjL05TRXZlbnRTUEkuaD4KICNpbXBvcnQgPHBhbC9zcGkvbWFjL05TTWVudVNQ
SS5oPgogI2ltcG9ydCA8d3RmL0FTQ0lJQ1R5cGUuaD4KIApAQCAtNjc0LDYgKzY3NiwzOSBAQCBz
dGF0aWMgaW50IHR5cGVGb3JFdmVudChOU0V2ZW50ICpldmVudCkKICAgICByZXR1cm4gc3RhdGlj
X2Nhc3Q8aW50PihbTlNNZW51IG1lbnVUeXBlRm9yRXZlbnQ6ZXZlbnRdKTsKIH0KICAgICAKK3Zv
aWQgZ2V0V2hlZWxFdmVudERlbHRhcyhOU0V2ZW50ICpldmVudCwgZmxvYXQmIGRlbHRhWCwgZmxv
YXQmIGRlbHRhWSwgQk9PTCYgY29udGludW91cykKK3sKKyAgICBBU1NFUlQoZXZlbnQpOworICAg
IGlmIChldmVudC5oYXNQcmVjaXNlU2Nyb2xsaW5nRGVsdGFzKSB7CisgICAgICAgIGRlbHRhWCA9
IGV2ZW50LnNjcm9sbGluZ0RlbHRhWDsKKyAgICAgICAgZGVsdGFZID0gZXZlbnQuc2Nyb2xsaW5n
RGVsdGFZOworICAgICAgICBjb250aW51b3VzID0gWUVTOworICAgIH0gZWxzZSB7CisgICAgICAg
IGRlbHRhWCA9IGV2ZW50LmRlbHRhWDsKKyAgICAgICAgZGVsdGFZID0gZXZlbnQuZGVsdGFZOwor
ICAgICAgICBjb250aW51b3VzID0gTk87CisgICAgfQorfQorCitVSW50OCBrZXlDaGFyRm9yRXZl
bnQoTlNFdmVudCAqZXZlbnQpCit7CisgICAgRXZlbnRSZWYgZXZlbnRSZWYgPSAoRXZlbnRSZWYp
W2V2ZW50IF9ldmVudFJlZl07CisgICAgaWYgKCFldmVudFJlZikKKyAgICAgICAgcmV0dXJuIDA7
CisKKyAgICBCeXRlQ291bnQga2V5Q2hhckNvdW50ID0gMDsKKyAgICBpZiAoR2V0RXZlbnRQYXJh
bWV0ZXIoZXZlbnRSZWYsIGtFdmVudFBhcmFtS2V5TWFjQ2hhckNvZGVzLCB0eXBlQ2hhciwgMCwg
MCwgJmtleUNoYXJDb3VudCwgMCkgIT0gbm9FcnIpCisgICAgICAgIHJldHVybiAwOworICAgIGlm
IChrZXlDaGFyQ291bnQgIT0gMSkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBVSW50OCBrZXlD
aGFyID0gMDsKKyAgICBpZiAoR2V0RXZlbnRQYXJhbWV0ZXIoZXZlbnRSZWYsIGtFdmVudFBhcmFt
S2V5TWFjQ2hhckNvZGVzLCB0eXBlQ2hhciwgMCwgc2l6ZW9mKGtleUNoYXIpLCAma2V5Q2hhckNv
dW50LCAma2V5Q2hhcikgIT0gbm9FcnIpCisgICAgICAgIHJldHVybiAwOworICAgIAorICAgIHJl
dHVybiBrZXlDaGFyOworfQorCiBjbGFzcyBQbGF0Zm9ybU1vdXNlRXZlbnRCdWlsZGVyIDogcHVi
bGljIFBsYXRmb3JtTW91c2VFdmVudCB7CiBwdWJsaWM6CiAgICAgUGxhdGZvcm1Nb3VzZUV2ZW50
QnVpbGRlcihOU0V2ZW50ICpldmVudCwgTlNFdmVudCAqY29ycmVzcG9uZGluZ1ByZXNzdXJlRXZl
bnQsIE5TVmlldyAqd2luZG93VmlldykKQEAgLTc0NCw3ICs3NzksNyBAQCBwdWJsaWM6CiAgICAg
ICAgIG1fZ3JhbnVsYXJpdHkgPSBTY3JvbGxCeVBpeGVsV2hlZWxFdmVudDsKIAogICAgICAgICBC
T09MIGNvbnRpbnVvdXM7Ci0gICAgICAgIHdrR2V0V2hlZWxFdmVudERlbHRhcyhldmVudCwgJm1f
ZGVsdGFYLCAmbV9kZWx0YVksICZjb250aW51b3VzKTsKKyAgICAgICAgZ2V0V2hlZWxFdmVudERl
bHRhcyhldmVudCwgbV9kZWx0YVgsIG1fZGVsdGFZLCBjb250aW51b3VzKTsKICAgICAgICAgaWYg
KGNvbnRpbnVvdXMpIHsKICAgICAgICAgICAgIG1fd2hlZWxUaWNrc1ggPSBtX2RlbHRhWCAvIHN0
YXRpY19jYXN0PGZsb2F0PihTY3JvbGxiYXI6OnBpeGVsc1BlckxpbmVTdGVwKCkpOwogICAgICAg
ICAgICAgbV93aGVlbFRpY2tzWSA9IG1fZGVsdGFZIC8gc3RhdGljX2Nhc3Q8ZmxvYXQ+KFNjcm9s
bGJhcjo6cGl4ZWxzUGVyTGluZVN0ZXAoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tYWMvV2ViQ29yZVN5c3RlbUludGVyZmFjZS5oIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWFjL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2UuaAppbmRleCA5M2NkZmQwYzdhYjFlOTY4
MDEwNmNhNjQ4NTQ0ODU2NmI3NDQ0ZTQ2Li44YTEyNDgyN2MwNDA5ZDY2M2Y3ODFkZjI3YjRlNDNi
Y2ZhZmJkMjI3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViQ29y
ZVN5c3RlbUludGVyZmFjZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJD
b3JlU3lzdGVtSW50ZXJmYWNlLmgKQEAgLTEzOSw3ICsxMzksNiBAQCBleHRlcm4gdm9pZCAoKndr
RHJhd01lZGlhU2xpZGVyVHJhY2spKENHQ29udGV4dFJlZiBjb250ZXh0LCBDR1JlY3QgcmVjdCwg
ZmxvYXQgdAogZXh0ZXJuIHZvaWQgKCp3a0RyYXdNZWRpYVVJUGFydCkoaW50IHBhcnQsIENHQ29u
dGV4dFJlZiBjb250ZXh0LCBDR1JlY3QgcmVjdCwgdW5zaWduZWQgc3RhdGUpOwogZXh0ZXJuIGRv
dWJsZSAoKndrR2V0TlNVUkxSZXNwb25zZUNhbGN1bGF0ZWRFeHBpcmF0aW9uKShOU1VSTFJlc3Bv
bnNlICpyZXNwb25zZSk7CiBleHRlcm4gQk9PTCAoKndrR2V0TlNVUkxSZXNwb25zZU11c3RSZXZh
bGlkYXRlKShOU1VSTFJlc3BvbnNlICpyZXNwb25zZSk7Ci1leHRlcm4gdm9pZCAoKndrR2V0V2hl
ZWxFdmVudERlbHRhcykoTlNFdmVudCosIGZsb2F0KiBkZWx0YVgsIGZsb2F0KiBkZWx0YVksIEJP
T0wqIGNvbnRpbnVvdXMpOwogZXh0ZXJuIFVJbnQ4ICgqd2tHZXROU0V2ZW50S2V5Q2hhcikoTlNF
dmVudCAqKTsKIGV4dGVybiBCT09MICgqd2tIaXRUZXN0TWVkaWFVSVBhcnQpKGludCBwYXJ0LCBD
R1JlY3QgYm91bmRzLCBDR1BvaW50IHBvaW50KTsKIGV4dGVybiB2b2lkICgqd2tNZWFzdXJlTWVk
aWFVSVBhcnQpKGludCBwYXJ0LCBDR1JlY3QgKmJvdW5kcywgQ0dTaXplICpuYXR1cmFsU2l6ZSk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViQ29yZVN5c3RlbUlu
dGVyZmFjZS5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJDb3JlU3lzdGVtSW50
ZXJmYWNlLm1tCmluZGV4IDY0OWQ3YTY3Y2Q2NzY1NGEyYTNlMzk0ZTkzNWY4YzUyNmZhMzkyNWEu
LjI3MmI1NTU3ZTIzOWYzYzFlMWQ0NWE5NGZiN2IxZTQ1MzQ2MTdkZjIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlLm1tCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlLm1tCkBA
IC00OCw3ICs0OCw2IEBAIHZvaWQgKCp3a1dpbmRvd1NldEFscGhhKShOU1dpbmRvdyAqLCBmbG9h
dCk7CiB2b2lkICgqd2tXaW5kb3dTZXRTY2FsZWRGcmFtZSkoTlNXaW5kb3cgKiwgTlNSZWN0LCBO
U1JlY3QpOwogTlNUaW1lSW50ZXJ2YWwgKCp3a0dldE5TVVJMUmVzcG9uc2VDYWxjdWxhdGVkRXhw
aXJhdGlvbikoTlNVUkxSZXNwb25zZSAqcmVzcG9uc2UpOwogQk9PTCAoKndrR2V0TlNVUkxSZXNw
b25zZU11c3RSZXZhbGlkYXRlKShOU1VSTFJlc3BvbnNlICpyZXNwb25zZSk7Ci12b2lkICgqd2tH
ZXRXaGVlbEV2ZW50RGVsdGFzKShOU0V2ZW50KiwgZmxvYXQqIGRlbHRhWCwgZmxvYXQqIGRlbHRh
WSwgQk9PTCogY29udGludW91cyk7CiBVSW50OCAoKndrR2V0TlNFdmVudEtleUNoYXIpKE5TRXZl
bnQgKik7CiB2b2lkICgqd2tQb3B1cE1lbnUpKE5TTWVudSosIE5TUG9pbnQgbG9jYXRpb24sIGZs
b2F0IHdpZHRoLCBOU1ZpZXcqLCBpbnQgc2VsZWN0ZWRJdGVtLCBOU0ZvbnQqLCBOU0NvbnRyb2xT
aXplIGNvbnRyb2xTaXplLCBib29sIHVzZXNDdXN0b21BcHBlYXJhbmNlKTsKIHVuc2lnbmVkICgq
d2tRVEluY2x1ZGVPbmx5TW9kZXJuTWVkaWFGaWxlVHlwZXMpKHZvaWQpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9QbHVnaW5Qcm9jZXNzL21hYy9QbHVnaW5Qcm9jZXNzTWFjLm1tIGIvU291
cmNlL1dlYktpdC9QbHVnaW5Qcm9jZXNzL21hYy9QbHVnaW5Qcm9jZXNzTWFjLm1tCmluZGV4IGRk
NTMzNzAyNDdmMGE2Yjc0YTAxYmZjYzhhYTk2ZmE2ZmZmMzQ0MTguLmQ4NjAzNzg2N2EyZjFhZmEy
NWVjNTI2MzA2ZTE0ZDk2NGNkNzdlNmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvUGx1Z2lu
UHJvY2Vzcy9tYWMvUGx1Z2luUHJvY2Vzc01hYy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1BsdWdp
blByb2Nlc3MvbWFjL1BsdWdpblByb2Nlc3NNYWMubW0KQEAgLTQ3LDYgKzQ3LDcgQEAKICNpbXBv
cnQgPG1hY2gvdm1fc3RhdGlzdGljcy5oPgogI2ltcG9ydCA8b2JqYy9ydW50aW1lLmg+CiAjaW1w
b3J0IDxwYWwvc3BpL21hYy9ISVRvb2xib3hTUEkuaD4KKyNpbXBvcnQgPHBhbC9zcGkvbWFjL05T
V2luZG93U1BJLmg+CiAjaW1wb3J0IDxzeXNleGl0cy5oPgogI2ltcG9ydCA8d3RmL0hhc2hTZXQu
aD4KICNpbXBvcnQgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDQxLDEyICs0NDIsMTIgQEAg
c3RhdGljIHZvaWQgaW5pdGlhbGl6ZUNvY29hT3ZlcnJpZGVzKCkKICAgICBOU05vdGlmaWNhdGlv
bkNlbnRlciAqZGVmYXVsdENlbnRlciA9IFtOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2Vu
dGVyXTsKIAogICAgIC8vIFRyYWNrIHdoZW4gYW55IENvY29hIHdpbmRvdyBpcyBhYm91dCB0byBi
ZSBiZSBzaG93bi4KLSAgICBpZCBvcmRlck9uU2NyZWVuT2JzZXJ2ZXIgPSBbZGVmYXVsdENlbnRl
ciBhZGRPYnNlcnZlckZvck5hbWU6V0tXaW5kb3dXaWxsT3JkZXJPblNjcmVlbk5vdGlmaWNhdGlv
bigpCisgICAgaWQgb3JkZXJPblNjcmVlbk9ic2VydmVyID0gW2RlZmF1bHRDZW50ZXIgYWRkT2Jz
ZXJ2ZXJGb3JOYW1lOk5TV2luZG93V2lsbE9yZGVyT25TY3JlZW5Ob3RpZmljYXRpb24KICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvYmpl
Y3Q6bmlsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHF1ZXVlOm5pbAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB1c2luZ0Jsb2NrOl4oTlNOb3RpZmljYXRpb24gKm5vdGlm
aWNhdGlvbikgeyBmdWxsc2NyZWVuV2luZG93VHJhY2tlcigpLndpbmRvd1Nob3duKFtub3RpZmlj
YXRpb24gb2JqZWN0XSk7IH1dOwogICAgIC8vIFRyYWNrIHdoZW4gYW55IENvY29hIHdpbmRvdyBp
cyBhYm91dCB0byBiZSBoaWRkZW4uCi0gICAgaWQgb3JkZXJPZmZTY3JlZW5PYnNlcnZlciA9IFtk
ZWZhdWx0Q2VudGVyIGFkZE9ic2VydmVyRm9yTmFtZTpXS1dpbmRvd1dpbGxPcmRlck9mZlNjcmVl
bk5vdGlmaWNhdGlvbigpCisgICAgaWQgb3JkZXJPZmZTY3JlZW5PYnNlcnZlciA9IFtkZWZhdWx0
Q2VudGVyIGFkZE9ic2VydmVyRm9yTmFtZTpOU1dpbmRvd1dpbGxPcmRlck9mZlNjcmVlbk5vdGlm
aWNhdGlvbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBvYmplY3Q6bmlsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBxdWV1ZTpuaWwKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2luZ0Jsb2NrOl4oTlNOb3RpZmlj
YXRpb24gKm5vdGlmaWNhdGlvbikgeyBmdWxsc2NyZWVuV2luZG93VHJhY2tlcigpLndpbmRvd0hp
ZGRlbihbbm90aWZpY2F0aW9uIG9iamVjdF0pOyB9XTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvU2hhcmVkL21hYy9XZWJFdmVudEZhY3RvcnkubW0gYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9t
YWMvV2ViRXZlbnRGYWN0b3J5Lm1tCmluZGV4IDc3YWFjNTNkY2NiZmEwZjlhZDJiODgxNTFjMzU5
M2U3YjYyMmFjYzYuLjBkYjNiZThjNjQ3NGM3NjMyOTg1ZmUzZWEyMjE1YjQ4YzZhZmMwNWIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL21hYy9XZWJFdmVudEZhY3RvcnkubW0KKysr
IGIvU291cmNlL1dlYktpdC9TaGFyZWQvbWFjL1dlYkV2ZW50RmFjdG9yeS5tbQpAQCAtMzg1LDcg
KzM4NSw3IEBAIFdlYldoZWVsRXZlbnQgV2ViRXZlbnRGYWN0b3J5OjpjcmVhdGVXZWJXaGVlbEV2
ZW50KE5TRXZlbnQgKmV2ZW50LCBOU1ZpZXcgKndpbmRvCiAgICAgZmxvYXQgd2hlZWxUaWNrc1gg
PSAwOwogICAgIGZsb2F0IHdoZWVsVGlja3NZID0gMDsKIAotICAgIFdLR2V0V2hlZWxFdmVudERl
bHRhcyhldmVudCwgJmRlbHRhWCwgJmRlbHRhWSwgJmNvbnRpbnVvdXMpOworICAgIGdldFdoZWVs
RXZlbnREZWx0YXMoZXZlbnQsIGRlbHRhWCwgZGVsdGFZLCBjb250aW51b3VzKTsKICAgICAKICAg
ICBpZiAoY29udGludW91cykgewogICAgICAgICAvLyBzbW9vdGggc2Nyb2xsIGV2ZW50cwpAQCAt
NDMzLDcgKzQzMyw3IEBAIFdlYktleWJvYXJkRXZlbnQgV2ViRXZlbnRGYWN0b3J5OjpjcmVhdGVX
ZWJLZXlib2FyZEV2ZW50KE5TRXZlbnQgKmV2ZW50LCBib29sIGhhCiAgICAgU3RyaW5nIGtleUlk
ZW50aWZpZXIgICAgICAgICAgICA9IGtleUlkZW50aWZpZXJGb3JLZXlFdmVudChldmVudCk7CiAg
ICAgaW50IHdpbmRvd3NWaXJ0dWFsS2V5Q29kZSAgICAgICA9IHdpbmRvd3NLZXlDb2RlRm9yS2V5
RXZlbnQoZXZlbnQpOwogICAgIGludCBuYXRpdmVWaXJ0dWFsS2V5Q29kZSAgICAgICAgPSBbZXZl
bnQga2V5Q29kZV07Ci0gICAgaW50IG1hY0NoYXJDb2RlICAgICAgICAgICAgICAgICA9IFdLR2V0
TlNFdmVudEtleUNoYXIoZXZlbnQpOworICAgIGludCBtYWNDaGFyQ29kZSAgICAgICAgICAgICAg
ICAgPSBrZXlDaGFyRm9yRXZlbnQoZXZlbnQpOwogICAgIGJvb2wgYXV0b1JlcGVhdCAgICAgICAg
ICAgICAgICAgPSBbZXZlbnQgdHlwZV0gIT0gTlNFdmVudFR5cGVGbGFnc0NoYW5nZWQgJiYgW2V2
ZW50IGlzQVJlcGVhdF07CiAgICAgYm9vbCBpc0tleXBhZCAgICAgICAgICAgICAgICAgICA9IGlz
S2V5cGFkRXZlbnQoZXZlbnQpOwogICAgIGJvb2wgaXNTeXN0ZW1LZXkgICAgICAgICAgICAgICAg
PSBmYWxzZTsgLy8gU3lzdGVtS2V5IGlzIGFsd2F5cyBmYWxzZSBvbiB0aGUgTWFjLgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvbWFjL1dLVGV4dElucHV0V2luZG93Q29udHJv
bGxlci5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL21hYy9XS1RleHRJbnB1dFdpbmRvd0Nv
bnRyb2xsZXIubW0KaW5kZXggMTJhMTUxZTMxYmE3ODYyMmFmYzQ3ZWU5NTMwYmQ4NjIxYWNkOTgw
Yy4uYjQ4ODU2MGIwN2YwOWU3OTdjOGVmOTJkY2FjMDhkYjNlNDliMTE3YiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvbWFjL1dLVGV4dElucHV0V2luZG93Q29udHJvbGxlci5t
bQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMvV0tUZXh0SW5wdXRXaW5kb3dDb250
cm9sbGVyLm1tCkBAIC0yOSw2ICsyOSw3IEBACiAjaWYgVVNFKEFQUEtJVCkKIAogI2ltcG9ydCA8
V2ViS2l0U3lzdGVtSW50ZXJmYWNlLmg+CisjaW1wb3J0IDxwYWwvc3lzdGVtL21hYy9XZWJQYW5l
bC5oPgogCiBAaW50ZXJmYWNlIFdLVGV4dElucHV0VmlldyA6IE5TVGV4dFZpZXcgewogfQpAQCAt
NDcsNyArNDgsNyBAQCAtIChOU0FycmF5ICopdmFsaWRBdHRyaWJ1dGVzRm9yTWFya2VkVGV4dAog
CiBAZW5kCiAKLUBpbnRlcmZhY2UgV0tUZXh0SW5wdXRQYW5lbCA6IE5TUGFuZWwgeworQGludGVy
ZmFjZSBXS1RleHRJbnB1dFBhbmVsIDogV2ViUGFuZWwgewogICAgIE5TVGV4dFZpZXcgKl9pbnB1
dFRleHRWaWV3OwogfQogCkBAIC03NCw3ICs3NSw3IEBAIC0gKHZvaWQpZGVhbGxvYwogCiAtIChp
ZClpbml0CiB7Ci0gICAgc2VsZiA9IFtzdXBlciBpbml0V2l0aENvbnRlbnRSZWN0Ok5TWmVyb1Jl
Y3Qgc3R5bGVNYXNrOldLR2V0SW5wdXRQYW5lbFdpbmRvd1N0eWxlKCkgYmFja2luZzpOU0JhY2tp
bmdTdG9yZUJ1ZmZlcmVkIGRlZmVyOllFU107CisgICAgc2VsZiA9IFtzdXBlciBpbml0XTsKICAg
ICBpZiAoIXNlbGYpCiAgICAgICAgIHJldHVybiBuaWw7CiAgICAgCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvbWFjL1dlYlN5c3RlbUludGVyZmFj
ZS5tbSBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViU3lz
dGVtSW50ZXJmYWNlLm1tCmluZGV4IDQ0ZGM3ZWNiMzYyMGU4ZjQ1MTQyZWIzN2M3ODc1YWRjYjNi
OTQxMmIuLmQxOGE0NDBkZDcyNTM5YzZhNTY5NGI3NDY3ZjhhNjkxODg1MWQ5OWUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViU3lzdGVt
SW50ZXJmYWNlLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9tYWMvV2ViU3lzdGVtSW50ZXJmYWNlLm1tCkBAIC01Miw3ICs1Miw2IEBAIHZvaWQgSW5pdFdl
YkNvcmVTeXN0ZW1JbnRlcmZhY2Uodm9pZCkKICNlbmRpZgogICAgICAgICBJTklUKENHQ29udGV4
dElzUERGQ29udGV4dCk7CiAjaWYgIVBMQVRGT1JNKElPUykKLSAgICAgICAgSU5JVChHZXRXaGVl
bEV2ZW50RGVsdGFzKTsKICAgICAgICAgSU5JVChHZXROU0V2ZW50S2V5Q2hhcik7CiAgICAgICAg
IElOSVQoSGl0VGVzdE1lZGlhVUlQYXJ0KTsKICAgICAgICAgSU5JVChNZWFzdXJlTWVkaWFVSVBh
cnQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9Ib3N0ZWQv
TmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5Lm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMv
UGx1Z2lucy9Ib3N0ZWQvTmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5Lm1tCmluZGV4IGFlNDFi
YzE2YzMzZDY5NjRmNzRjNzZmYTI0MmZiODkyYTE0OTFmZDUuLjAxN2ZhOWU2Yjk5YjFhNDhhOWIz
M2JhNzEzNjgzN2Q1ZmE0NjM3YmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFj
L1BsdWdpbnMvSG9zdGVkL05ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eS5tbQorKysgYi9Tb3Vy
Y2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL0hvc3RlZC9OZXRzY2FwZVBsdWdpbkluc3RhbmNl
UHJveHkubW0KQEAgLTU0LDEwICs1NCwxMSBAQAogI2ltcG9ydCA8V2ViQ29yZS9GcmFtZS5oPgog
I2ltcG9ydCA8V2ViQ29yZS9GcmFtZUxvYWRlci5oPgogI2ltcG9ydCA8V2ViQ29yZS9GcmFtZVRy
ZWUuaD4KLSNpbXBvcnQgPFdlYkNvcmUvVVJMLmg+CisjaW1wb3J0IDxXZWJDb3JlL1BsYXRmb3Jt
RXZlbnRGYWN0b3J5TWFjLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1Byb3h5U2VydmVyLmg+CiAjaW1w
b3J0IDxXZWJDb3JlL1NlY3VyaXR5T3JpZ2luLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1NjcmlwdENv
bnRyb2xsZXIuaD4KKyNpbXBvcnQgPFdlYkNvcmUvVVJMLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1Vz
ZXJHZXN0dXJlSW5kaWNhdG9yLmg+CiAjaW1wb3J0IDxXZWJDb3JlL25wcnVudGltZV9pbXBsLmg+
CiAjaW1wb3J0IDxXZWJDb3JlL3J1bnRpbWVfb2JqZWN0Lmg+CkBAIC00NTksNyArNDYwLDcgQEAg
dm9pZCBOZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJveHk6OmtleUV2ZW50KE5TVmlldyAqcGx1Z2lu
VmlldywgTlNFdmVudCAqZXZlbnQsIE4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB0eXBlLCBbZXZlbnQgbW9kaWZpZXJGbGFnc10sIAogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGNvbnN0X2Nhc3Q8Y2hhcio+KHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3Qg
Y2hhcio+KFtjaGFyYWN0ZXJzRGF0YSBieXRlc10pKSwgW2NoYXJhY3RlcnNEYXRhIGxlbmd0aF0s
IAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0X2Nhc3Q8Y2hhcio+
KHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3QgY2hhcio+KFtjaGFyYWN0ZXJzSWdub3JpbmdNb2RpZmll
cnNEYXRhIGJ5dGVzXSkpLCBbY2hhcmFjdGVyc0lnbm9yaW5nTW9kaWZpZXJzRGF0YSBsZW5ndGhd
LCAKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZXZlbnQgaXNBUmVwZWF0
XSwgW2V2ZW50IGtleUNvZGVdLCBXS0dldE5TRXZlbnRLZXlDaGFyKGV2ZW50KSk7CisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2V2ZW50IGlzQVJlcGVhdF0sIFtldmVudCBr
ZXlDb2RlXSwga2V5Q2hhckZvckV2ZW50KGV2ZW50KSk7CiB9CiAKIHZvaWQgTmV0c2NhcGVQbHVn
aW5JbnN0YW5jZVByb3h5OjpzeW50aGV0aWNLZXlEb3duV2l0aENvbW1hbmRNb2RpZmllcihpbnQg
a2V5Q29kZSwgY2hhciBjaGFyYWN0ZXIpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5
L21hYy9QbHVnaW5zL0hvc3RlZC9XZWJUZXh0SW5wdXRXaW5kb3dDb250cm9sbGVyLm0gYi9Tb3Vy
Y2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL0hvc3RlZC9XZWJUZXh0SW5wdXRXaW5kb3dDb250
cm9sbGVyLm0KaW5kZXggMDA0MDI5M2I2MmRiM2I4ZmI0MmNkNWQzNjg1NDZmNWM0OWE5YThmNC4u
MDhhNzExNTFlNjlkYTMxNzVhMWJkNmY1YjI3Njk5Yzc3Yzg4N2Y5ZCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9Ib3N0ZWQvV2ViVGV4dElucHV0V2luZG93Q29u
dHJvbGxlci5tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMvSG9zdGVkL1dl
YlRleHRJbnB1dFdpbmRvd0NvbnRyb2xsZXIubQpAQCAtMjgsNiArMjgsNyBAQAogI2ltcG9ydCAi
V2ViVGV4dElucHV0V2luZG93Q29udHJvbGxlci5oIgogCiAjaW1wb3J0IDxXZWJLaXRTeXN0ZW1J
bnRlcmZhY2UuaD4KKyNpbXBvcnQgPHBhbC9zeXN0ZW0vbWFjL1dlYlBhbmVsLmg+CiAKIEBpbnRl
cmZhY2UgV2ViVGV4dElucHV0VmlldyA6IE5TVGV4dFZpZXcgewogfQpAQCAtNDYsNyArNDcsNyBA
QCAtIChOU0FycmF5ICopdmFsaWRBdHRyaWJ1dGVzRm9yTWFya2VkVGV4dAogCiBAZW5kCiAKLUBp
bnRlcmZhY2UgV2ViVGV4dElucHV0UGFuZWwgOiBOU1BhbmVsIHsKK0BpbnRlcmZhY2UgV2ViVGV4
dElucHV0UGFuZWwgOiBXZWJQYW5lbCB7CiAgICAgTlNUZXh0VmlldyAqX2lucHV0VGV4dFZpZXc7
CiB9CiAKQEAgLTcwLDcgKzcxLDcgQEAgLSAodm9pZClkZWFsbG9jCiAKIC0gKGlkKWluaXQKIHsK
LSAgICBzZWxmID0gW3N1cGVyIGluaXRXaXRoQ29udGVudFJlY3Q6TlNaZXJvUmVjdCBzdHlsZU1h
c2s6V0tHZXRJbnB1dFBhbmVsV2luZG93U3R5bGUoKSBiYWNraW5nOk5TQmFja2luZ1N0b3JlQnVm
ZmVyZWQgZGVmZXI6WUVTXTsKKyAgICBzZWxmID0gW3N1cGVyIGluaXRdOwogICAgIGlmICghc2Vs
ZikKICAgICAgICAgcmV0dXJuIG5pbDsKICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYlN5c3RlbUludGVyZmFjZS5tbSBiL1NvdXJjZS9X
ZWJLaXRMZWdhY3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYlN5c3RlbUludGVyZmFjZS5tbQppbmRl
eCBkNDU1MTZmNWVlZTFjMDgyYzk4MjhkOWU3NDc0ZWM5Njg5YzQ3YjU4Li42ZGQwYjU3ZGQ0YmYz
NDNmZTk2NmYwZmJhNjNjMTFjZjRmMDhkOTMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVn
YWN5L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJTeXN0ZW1JbnRlcmZhY2UubW0KKysrIGIvU291cmNl
L1dlYktpdExlZ2FjeS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViU3lzdGVtSW50ZXJmYWNlLm1tCkBA
IC01NSw3ICs1NSw2IEBAIHZvaWQgSW5pdFdlYkNvcmVTeXN0ZW1JbnRlcmZhY2Uodm9pZCkKICAg
ICBJTklUKERyYXdDZWxsRm9jdXNSaW5nV2l0aEZyYW1lQXRUaW1lKTsKICAgICBJTklUKERyYXdN
ZWRpYVVJUGFydCk7CiAgICAgSU5JVChEcmF3TWVkaWFTbGlkZXJUcmFjayk7Ci0gICAgSU5JVChH
ZXRXaGVlbEV2ZW50RGVsdGFzKTsKICAgICBJTklUKEdldE5TRXZlbnRLZXlDaGFyKTsKICAgICBJ
TklUKEhpdFRlc3RNZWRpYVVJUGFydCk7CiAgICAgSU5JVChNZWFzdXJlTWVkaWFVSVBhcnQpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJEeW5hbWljU2Ny
b2xsQmFyc1ZpZXcubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkR5bmFt
aWNTY3JvbGxCYXJzVmlldy5tbQppbmRleCA2ODA0ZTI3NjUyOTIxNjcxMDNjNzVkM2YyOTdlNzRj
ZWEzMjI1NjQwLi5iYjIwZGU1NTBiYWJmMDIxMDJiMGM0MjMzYTdkNTdjYjBlNzJhNWY2IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkR5bmFtaWNTY3JvbGxC
YXJzVmlldy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkR5bmFt
aWNTY3JvbGxCYXJzVmlldy5tbQpAQCAtMzEsNiArMzEsNyBAQAogI2ltcG9ydCAiV2ViSFRNTFZp
ZXdJbnRlcm5hbC5oIgogI2ltcG9ydCA8V2ViQ29yZS9GcmFtZS5oPgogI2ltcG9ydCA8V2ViQ29y
ZS9GcmFtZVZpZXcuaD4KKyNpbXBvcnQgPFdlYkNvcmUvUGxhdGZvcm1FdmVudEZhY3RvcnlNYWMu
aD4KICNpbXBvcnQgPFdlYktpdFN5c3RlbUludGVyZmFjZS5oPgogCiB1c2luZyBuYW1lc3BhY2Ug
V2ViQ29yZTsKQEAgLTUzNSw3ICs1MzYsNyBAQCAtICh2b2lkKXNjcm9sbFdoZWVsOihOU0V2ZW50
ICopZXZlbnQKICAgICBmbG9hdCBkZWx0YVg7CiAgICAgZmxvYXQgZGVsdGFZOwogICAgIEJPT0wg
aXNDb250aW51b3VzOwotICAgIFdLR2V0V2hlZWxFdmVudERlbHRhcyhldmVudCwgJmRlbHRhWCwg
JmRlbHRhWSwgJmlzQ29udGludW91cyk7CisgICAgZ2V0V2hlZWxFdmVudERlbHRhcyhldmVudCwg
ZGVsdGFYLCBkZWx0YVksIGlzQ29udGludW91cyk7CiAKICAgICBOU0V2ZW50UGhhc2UgbW9tZW50
dW1QaGFzZSA9IFtldmVudCBtb21lbnR1bVBoYXNlXTsKICAgICBCT09MIGlzTGF0Y2hpbmdFdmVu
dCA9IG1vbWVudHVtUGhhc2UgJiBOU0V2ZW50UGhhc2VCZWdhbiB8fCBtb21lbnR1bVBoYXNlICYg
TlNFdmVudFBoYXNlU3RhdGlvbmFyeTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kv
bWFjL1dlYlZpZXcvV2ViSFRNTFZpZXcubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJW
aWV3L1dlYkhUTUxWaWV3Lm1tCmluZGV4IDhmYzdmNjNjNWRjNGUxZWNkNzg0MWU1ZjRjZGE3NDZi
NDljMmU1ODguLjhkMGQ0ZDkyNTQ4MGNiODNjMjBhZTgxNDU1NDU0MjMwMDc0YTY4ZGIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViSFRNTFZpZXcubW0KKysr
IGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJIVE1MVmlldy5tbQpAQCAtMTMy
LDYgKzEzMiw3IEBACiAjaW1wb3J0IDxwYWwvc3BpL2NvY29hL05TVVJMRmlsZVR5cGVNYXBwaW5n
c1NQSS5oPgogI2ltcG9ydCA8cGFsL3NwaS9tYWMvTlNTcGVsbENoZWNrZXJTUEkuaD4KICNpbXBv
cnQgPHBhbC9zcGkvbWFjL05TVmlld1NQSS5oPgorI2ltcG9ydCA8cGFsL3NwaS9tYWMvTlNXaW5k
b3dTUEkuaD4KICNpbXBvcnQgPHJ1bnRpbWUvSW5pdGlhbGl6ZVRocmVhZGluZy5oPgogI2ltcG9y
dCA8d3RmL0Jsb2NrT2JqQ0V4Y2VwdGlvbnMuaD4KICNpbXBvcnQgPHd0Zi9NYWluVGhyZWFkLmg+
CkBAIC0xNDA5LDggKzE0MTAsOCBAQCAtICh2b2lkKV9yZW1vdmVXaW5kb3dPYnNlcnZlcnMKICAg
ICBOU05vdGlmaWNhdGlvbkNlbnRlciAqbm90aWZpY2F0aW9uQ2VudGVyID0gW05TTm90aWZpY2F0
aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdOwogICAgIFtub3RpZmljYXRpb25DZW50ZXIgcmVtb3Zl
T2JzZXJ2ZXI6c2VsZiBuYW1lOk5TV2luZG93RGlkQmVjb21lS2V5Tm90aWZpY2F0aW9uIG9iamVj
dDpuaWxdOwogICAgIFtub3RpZmljYXRpb25DZW50ZXIgcmVtb3ZlT2JzZXJ2ZXI6c2VsZiBuYW1l
Ok5TV2luZG93RGlkUmVzaWduS2V5Tm90aWZpY2F0aW9uIG9iamVjdDpuaWxdOwotICAgIFtub3Rp
ZmljYXRpb25DZW50ZXIgcmVtb3ZlT2JzZXJ2ZXI6c2VsZiBuYW1lOldLV2luZG93V2lsbE9yZGVy
T25TY3JlZW5Ob3RpZmljYXRpb24oKSBvYmplY3Q6d2luZG93XTsKLSAgICBbbm90aWZpY2F0aW9u
Q2VudGVyIHJlbW92ZU9ic2VydmVyOnNlbGYgbmFtZTpXS1dpbmRvd1dpbGxPcmRlck9mZlNjcmVl
bk5vdGlmaWNhdGlvbigpIG9iamVjdDp3aW5kb3ddOworICAgIFtub3RpZmljYXRpb25DZW50ZXIg
cmVtb3ZlT2JzZXJ2ZXI6c2VsZiBuYW1lOk5TV2luZG93V2lsbE9yZGVyT25TY3JlZW5Ob3RpZmlj
YXRpb24gb2JqZWN0OndpbmRvd107CisgICAgW25vdGlmaWNhdGlvbkNlbnRlciByZW1vdmVPYnNl
cnZlcjpzZWxmIG5hbWU6TlNXaW5kb3dXaWxsT3JkZXJPZmZTY3JlZW5Ob3RpZmljYXRpb24gb2Jq
ZWN0OndpbmRvd107CiAgICAgW25vdGlmaWNhdGlvbkNlbnRlciByZW1vdmVPYnNlcnZlcjpzZWxm
IG5hbWU6TlNXaW5kb3dXaWxsQ2xvc2VOb3RpZmljYXRpb24gb2JqZWN0OndpbmRvd107CiAgICAg
CiAgICAgX3ByaXZhdGUtPm9ic2VydmluZ1dpbmRvd05vdGlmaWNhdGlvbnMgPSBmYWxzZTsKQEAg
LTM0NDksOCArMzQ1MCw4IEBAIC0gKHZvaWQpYWRkV2luZG93T2JzZXJ2ZXJzCiAgICAgTlNOb3Rp
ZmljYXRpb25DZW50ZXIgKm5vdGlmaWNhdGlvbkNlbnRlciA9IFtOU05vdGlmaWNhdGlvbkNlbnRl
ciBkZWZhdWx0Q2VudGVyXTsKICAgICBbbm90aWZpY2F0aW9uQ2VudGVyIGFkZE9ic2VydmVyOnNl
bGYgc2VsZWN0b3I6QHNlbGVjdG9yKHdpbmRvd0RpZEJlY29tZUtleTopIG5hbWU6TlNXaW5kb3dE
aWRCZWNvbWVLZXlOb3RpZmljYXRpb24gb2JqZWN0Om5pbF07CiAgICAgW25vdGlmaWNhdGlvbkNl
bnRlciBhZGRPYnNlcnZlcjpzZWxmIHNlbGVjdG9yOkBzZWxlY3Rvcih3aW5kb3dEaWRSZXNpZ25L
ZXk6KSBuYW1lOk5TV2luZG93RGlkUmVzaWduS2V5Tm90aWZpY2F0aW9uIG9iamVjdDpuaWxdOwot
ICAgIFtub3RpZmljYXRpb25DZW50ZXIgYWRkT2JzZXJ2ZXI6c2VsZiBzZWxlY3RvcjpAc2VsZWN0
b3Iod2luZG93V2lsbE9yZGVyT25TY3JlZW46KSBuYW1lOldLV2luZG93V2lsbE9yZGVyT25TY3Jl
ZW5Ob3RpZmljYXRpb24oKSBvYmplY3Q6d2luZG93XTsKLSAgICBbbm90aWZpY2F0aW9uQ2VudGVy
IGFkZE9ic2VydmVyOnNlbGYgc2VsZWN0b3I6QHNlbGVjdG9yKHdpbmRvd1dpbGxPcmRlck9mZlNj
cmVlbjopIG5hbWU6V0tXaW5kb3dXaWxsT3JkZXJPZmZTY3JlZW5Ob3RpZmljYXRpb24oKSBvYmpl
Y3Q6d2luZG93XTsKKyAgICBbbm90aWZpY2F0aW9uQ2VudGVyIGFkZE9ic2VydmVyOnNlbGYgc2Vs
ZWN0b3I6QHNlbGVjdG9yKHdpbmRvd1dpbGxPcmRlck9uU2NyZWVuOikgbmFtZTpOU1dpbmRvd1dp
bGxPcmRlck9uU2NyZWVuTm90aWZpY2F0aW9uIG9iamVjdDp3aW5kb3ddOworICAgIFtub3RpZmlj
YXRpb25DZW50ZXIgYWRkT2JzZXJ2ZXI6c2VsZiBzZWxlY3RvcjpAc2VsZWN0b3Iod2luZG93V2ls
bE9yZGVyT2ZmU2NyZWVuOikgbmFtZTpOU1dpbmRvd1dpbGxPcmRlck9mZlNjcmVlbk5vdGlmaWNh
dGlvbiBvYmplY3Q6d2luZG93XTsKICAgICBbbm90aWZpY2F0aW9uQ2VudGVyIGFkZE9ic2VydmVy
OnNlbGYgc2VsZWN0b3I6QHNlbGVjdG9yKHdpbmRvd1dpbGxDbG9zZTopIG5hbWU6TlNXaW5kb3dX
aWxsQ2xvc2VOb3RpZmljYXRpb24gb2JqZWN0OndpbmRvd107CiAgICAgCiAgICAgX3ByaXZhdGUt
Pm9ic2VydmluZ1dpbmRvd05vdGlmaWNhdGlvbnMgPSB0cnVlOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tIGIvU291cmNlL1dlYktpdExlZ2Fj
eS9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCmluZGV4IDQ3OGMyMWNhNjE4OTI4NzAzMjZhYjhiN2Vm
ZTIzMjFjNzlkOGE1NTUuLmZlMTkwNWE1ZGE3NzU1NDM4NmQ4ZjkxOGJkOTYzZmUwZDA1Y2M2MmYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQor
KysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXcubW0KQEAgLTIxMSw3
ICsyMTEsOSBAQAogI2ltcG9ydCA8cGFsL3NwaS9jZi9DRk5ldHdvcmtTUEkuaD4KICNpbXBvcnQg
PHBhbC9zcGkvY29jb2EvTlNUb3VjaEJhclNQSS5oPgogI2ltcG9ydCA8cGFsL3NwaS9jb2NvYS9O
U1VSTEZpbGVUeXBlTWFwcGluZ3NTUEkuaD4KKyNpbXBvcnQgPHBhbC9zcGkvbWFjL05TUmVzcG9u
ZGVyU1BJLmg+CiAjaW1wb3J0IDxwYWwvc3BpL21hYy9OU1NwZWxsQ2hlY2tlclNQSS5oPgorI2lt
cG9ydCA8cGFsL3NwaS9tYWMvTlNXaW5kb3dTUEkuaD4KICNpbXBvcnQgPHJ1bnRpbWUvQXJyYXlQ
cm90b3R5cGUuaD4KICNpbXBvcnQgPHJ1bnRpbWUvQ2F0Y2hTY29wZS5oPgogI2ltcG9ydCA8cnVu
dGltZS9EYXRlSW5zdGFuY2UuaD4KQEAgLTU4NjYsOSArNTg2OCw5IEBAIC0gKHZvaWQpYWRkV2lu
ZG93T2JzZXJ2ZXJzRm9yV2luZG93OihOU1dpbmRvdyAqKXdpbmRvdwogICAgICAgICBbW05TTm90
aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdIGFkZE9ic2VydmVyOnNlbGYgc2VsZWN0b3I6
QHNlbGVjdG9yKHdpbmRvd0tleVN0YXRlQ2hhbmdlZDopCiAgICAgICAgICAgICBuYW1lOk5TV2lu
ZG93RGlkUmVzaWduS2V5Tm90aWZpY2F0aW9uIG9iamVjdDp3aW5kb3ddOwogICAgICAgICBbW05T
Tm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdIGFkZE9ic2VydmVyOnNlbGYgc2VsZWN0
b3I6QHNlbGVjdG9yKF93aW5kb3dXaWxsT3JkZXJPblNjcmVlbjopCi0gICAgICAgICAgICBuYW1l
OldLV2luZG93V2lsbE9yZGVyT25TY3JlZW5Ob3RpZmljYXRpb24oKSBvYmplY3Q6d2luZG93XTsK
KyAgICAgICAgICAgIG5hbWU6TlNXaW5kb3dXaWxsT3JkZXJPblNjcmVlbk5vdGlmaWNhdGlvbiBv
YmplY3Q6d2luZG93XTsKICAgICAgICAgW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2Vu
dGVyXSBhZGRPYnNlcnZlcjpzZWxmIHNlbGVjdG9yOkBzZWxlY3Rvcihfd2luZG93V2lsbE9yZGVy
T2ZmU2NyZWVuOikKLSAgICAgICAgICAgIG5hbWU6V0tXaW5kb3dXaWxsT3JkZXJPZmZTY3JlZW5O
b3RpZmljYXRpb24oKSBvYmplY3Q6d2luZG93XTsKKyAgICAgICAgICAgIG5hbWU6TlNXaW5kb3dX
aWxsT3JkZXJPZmZTY3JlZW5Ob3RpZmljYXRpb24gb2JqZWN0OndpbmRvd107CiAgICAgICAgIFtb
TlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl0gYWRkT2JzZXJ2ZXI6c2VsZiBzZWxl
Y3RvcjpAc2VsZWN0b3IoX3dpbmRvd0RpZENoYW5nZUJhY2tpbmdQcm9wZXJ0aWVzOikKICAgICAg
ICAgICAgIG5hbWU6d2luZG93RGlkQ2hhbmdlQmFja2luZ1Byb3BlcnRpZXNOb3RpZmljYXRpb24g
b2JqZWN0OndpbmRvd107CiAgICAgICAgIFtbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENl
bnRlcl0gYWRkT2JzZXJ2ZXI6c2VsZiBzZWxlY3RvcjpAc2VsZWN0b3IoX3dpbmRvd0RpZENoYW5n
ZVNjcmVlbjopCkBAIC01ODkwLDkgKzU4OTIsOSBAQCAtICh2b2lkKXJlbW92ZVdpbmRvd09ic2Vy
dmVycwogICAgICAgICBbW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdIHJlbW92
ZU9ic2VydmVyOnNlbGYKICAgICAgICAgICAgIG5hbWU6TlNXaW5kb3dEaWRSZXNpZ25LZXlOb3Rp
ZmljYXRpb24gb2JqZWN0OndpbmRvd107CiAgICAgICAgIFtbTlNOb3RpZmljYXRpb25DZW50ZXIg
ZGVmYXVsdENlbnRlcl0gcmVtb3ZlT2JzZXJ2ZXI6c2VsZgotICAgICAgICAgICAgbmFtZTpXS1dp
bmRvd1dpbGxPcmRlck9uU2NyZWVuTm90aWZpY2F0aW9uKCkgb2JqZWN0OndpbmRvd107CisgICAg
ICAgICAgICBuYW1lOk5TV2luZG93V2lsbE9yZGVyT25TY3JlZW5Ob3RpZmljYXRpb24gb2JqZWN0
OndpbmRvd107CiAgICAgICAgIFtbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl0g
cmVtb3ZlT2JzZXJ2ZXI6c2VsZgotICAgICAgICAgICAgbmFtZTpXS1dpbmRvd1dpbGxPcmRlck9m
ZlNjcmVlbk5vdGlmaWNhdGlvbigpIG9iamVjdDp3aW5kb3ddOworICAgICAgICAgICAgbmFtZTpO
U1dpbmRvd1dpbGxPcmRlck9mZlNjcmVlbk5vdGlmaWNhdGlvbiBvYmplY3Q6d2luZG93XTsKICAg
ICAgICAgW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSByZW1vdmVPYnNlcnZl
cjpzZWxmCiAgICAgICAgICAgICBuYW1lOndpbmRvd0RpZENoYW5nZUJhY2tpbmdQcm9wZXJ0aWVz
Tm90aWZpY2F0aW9uIG9iamVjdDp3aW5kb3ddOwogICAgICAgICBbW05TTm90aWZpY2F0aW9uQ2Vu
dGVyIGRlZmF1bHRDZW50ZXJdIHJlbW92ZU9ic2VydmVyOnNlbGYKQEAgLTU5MjMsNyArNTkyNSw3
IEBAIC0gKHZvaWQpdmlld1dpbGxNb3ZlVG9XaW5kb3c6KE5TV2luZG93ICopd2luZG93CiAgICAg
ICAgIC8vIFRoZSBmb2xsb3dpbmcgYXJlIGV4cGVuc2l2ZSBlbm91Z2ggdGhhdCB3ZSBkb24ndCB3
YW50IHRvIGNhbGwgdGhlbSBvdmVyCiAgICAgICAgIC8vIGFuZCBvdmVyLCBzbyBkbyB0aGVtIHdo
ZW4gd2UgbW92ZSBpbnRvIGEgd2luZG93LgogICAgICAgICBbd2luZG93IHNldEFjY2VwdHNNb3Vz
ZU1vdmVkRXZlbnRzOllFU107Ci0gICAgICAgIFdLU2V0TlNXaW5kb3dTaG91bGRQb3N0RXZlbnRO
b3RpZmljYXRpb25zKHdpbmRvdywgWUVTKTsKKyAgICAgICAgW3dpbmRvdyBfc2V0U2hvdWxkUG9z
dEV2ZW50Tm90aWZpY2F0aW9uczpZRVNdOwogICAgIH0gZWxzZSBpZiAoIV9wcml2YXRlLT5jbG9z
ZWQpIHsKICAgICAgICAgX3ByaXZhdGUtPnBhZ2UtPnNldENhblN0YXJ0TWVkaWEoZmFsc2UpOwog
ICAgICAgICBfcHJpdmF0ZS0+cGFnZS0+c2V0SXNJbldpbmRvdyhmYWxzZSk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>319568</attachid>
            <date>2017-08-31 20:43:30 -0700</date>
            <delta_ts>2017-08-31 21:37:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-176175-20170831204329.patch</filename>
            <type>text/plain</type>
            <size>38927</size>
            <attacher name="Andy Estes">aestes</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIxMzgxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzVhYmE3NzU1NjhiNjgz
ZmZjOWVjZWE4MzhlNWFmOGRlMTVjOTY4Ni4uZTA3MTA5MzdiY2NhOGVhMTY1ZWMzZjY0MjM1ZWY5
MTA4OTU5M2E3MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDE3LTA4LTMxICBBbmR5
IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNvbT4KKworICAgICAgICBbTWFjXSBVcHN0cmVhbSBBcHBL
aXQtcmVsYXRlZCBXZWJLaXRTeXN0ZW1JbnRlcmZhY2UgZnVuY3Rpb25zCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzYxNzUKKworICAgICAgICBSZXZp
ZXdlZCBieSBCcmFkeSBFaWRzb24uCisKKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9XZWJDb3Jl
LnhjY29uZmlnOiBBZGRlZCAtT2JqQyB0byBPVEhFUl9MREZMQUdTIHNvIHRoYXQgT2JqZWN0aXZl
LUMgY2xhc3NlcworICAgICAgICBpbiBQQUwgYXJlIGV4cG9ydGVkIGJ5IFdlYkNvcmUgZXZlbiBp
ZiBXZWJDb3JlIGRvZXNuJ3QgdXNlIHRoZW0uCisgICAgICAgICogcGxhdGZvcm0vbWFjL1BsYXRm
b3JtRXZlbnRGYWN0b3J5TWFjLmg6CisgICAgICAgICogcGxhdGZvcm0vbWFjL1BsYXRmb3JtRXZl
bnRGYWN0b3J5TWFjLm1tOgorICAgICAgICAoV2ViQ29yZTo6Z2V0V2hlZWxFdmVudERlbHRhcyk6
CisgICAgICAgIChXZWJDb3JlOjprZXlDaGFyRm9yRXZlbnQpOgorICAgICAgICAoV2ViQ29yZTo6
UGxhdGZvcm1XaGVlbEV2ZW50QnVpbGRlcjo6UGxhdGZvcm1XaGVlbEV2ZW50QnVpbGRlcik6Cisg
ICAgICAgICogcGxhdGZvcm0vbWFjL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2UuaDoKKyAgICAgICAg
KiBwbGF0Zm9ybS9tYWMvV2ViQ29yZVN5c3RlbUludGVyZmFjZS5tbToKKwogMjAxNy0wOC0zMCAg
QW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CiAKICAgICAgICAgW01hY10gVXBzdHJlYW0g
QWNjZXNzaWJpbGl0eS1yZWxhdGVkIFdlYktpdFN5c3RlbUludGVyZmFjZSBmdW5jdGlvbnMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9Q
QUwvQ2hhbmdlTG9nCmluZGV4IDdiNGI2MDFmZTRlNWUxNTBmODE4OTc0NDU3YzY5ZWViOWI2MDEz
NTEuLmQ3YWE1Mzc5ODdlOGU2NzA0MmJjNWM0NTIxNDkzYmE2NDUyZmY4NWIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML0No
YW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDE3LTA4LTMxICBBbmR5IEVzdGVzICA8YWVzdGVz
QGFwcGxlLmNvbT4KKworICAgICAgICBbTWFjXSBVcHN0cmVhbSBBcHBLaXQtcmVsYXRlZCBXZWJL
aXRTeXN0ZW1JbnRlcmZhY2UgZnVuY3Rpb25zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xNzYxNzUKKworICAgICAgICBSZXZpZXdlZCBieSBCcmFkeSBF
aWRzb24uCisKKyAgICAgICAgKiBQQUwueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAg
ICAgKiBwYWwvc3BpL21hYy9ISVRvb2xib3hTUEkuaDoKKyAgICAgICAgKiBwYWwvc3BpL21hYy9O
U1Jlc3BvbmRlclNQSS5oOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9t
YWMvTlNXaW5kb3dTUEkuaC4KKyAgICAgICAgKiBwYWwvc3BpL21hYy9OU1dpbmRvd1NQSS5oOgor
ICAgICAgICAqIHBhbC9zeXN0ZW0vbWFjL1dlYlBhbmVsLmg6IENvcGllZCBmcm9tIFNvdXJjZS9X
ZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9OU1dpbmRvd1NQSS5oLgorICAgICAgICAqIHBhbC9zeXN0
ZW0vbWFjL1dlYlBhbmVsLm1tOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3Nw
aS9tYWMvSElUb29sYm94U1BJLmguCisgICAgICAgICgtW1dlYlBhbmVsIGluaXRdKToKKwogMjAx
Ny0wOC0zMCAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CiAKICAgICAgICAgW01hY10g
VXBzdHJlYW0gQWNjZXNzaWJpbGl0eS1yZWxhdGVkIFdlYktpdFN5c3RlbUludGVyZmFjZSBmdW5j
dGlvbnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktp
dC9DaGFuZ2VMb2cKaW5kZXggYTg2NjZmMzM4NTM0MWQzNTZkN2EwYzcxMzFlYTJhZmY2ODE0YTY4
Yi4uMGVhNWVhYmRhZTk5Y2IwZDE1NjMwNGRhY2M1YTk4MTFmOGE4YWYzNiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwyMCBAQAorMjAxNy0wOC0zMSAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+
CisKKyAgICAgICAgW01hY10gVXBzdHJlYW0gQXBwS2l0LXJlbGF0ZWQgV2ViS2l0U3lzdGVtSW50
ZXJmYWNlIGZ1bmN0aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTc2MTc1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQnJhZHkgRWlkc29uLgorCisg
ICAgICAgICogUGx1Z2luUHJvY2Vzcy9tYWMvUGx1Z2luUHJvY2Vzc01hYy5tbToKKyAgICAgICAg
KFdlYktpdDo6aW5pdGlhbGl6ZUNvY29hT3ZlcnJpZGVzKToKKyAgICAgICAgKiBTaGFyZWQvbWFj
L1dlYkV2ZW50RmFjdG9yeS5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViRXZlbnRGYWN0b3J5Ojpj
cmVhdGVXZWJXaGVlbEV2ZW50KToKKyAgICAgICAgKFdlYktpdDo6V2ViRXZlbnRGYWN0b3J5Ojpj
cmVhdGVXZWJLZXlib2FyZEV2ZW50KToKKyAgICAgICAgKiBVSVByb2Nlc3MvbWFjL1dLVGV4dElu
cHV0V2luZG93Q29udHJvbGxlci5tbToKKyAgICAgICAgKC1bV0tUZXh0SW5wdXRQYW5lbCBpbml0
XSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViU3lzdGVtSW50
ZXJmYWNlLm1tOgorICAgICAgICAoSW5pdFdlYkNvcmVTeXN0ZW1JbnRlcmZhY2UpOgorCiAyMDE3
LTA4LTMwICBBbmR5IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNvbT4KIAogICAgICAgICBbTWFjXSBV
cHN0cmVhbSBBY2Nlc3NpYmlsaXR5LXJlbGF0ZWQgV2ViS2l0U3lzdGVtSW50ZXJmYWNlIGZ1bmN0
aW9ucwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nIGIvU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCmluZGV4IGJkZjVkMzhhZTdlNWI3NjE0MDli
M2QxMDU0ZDg0MzgzODY4OWZiZGEuLmM4NTNmMzgxMDg5NmM2MTk0ZDFhOTliODVhZDRlNTYzMTkw
MWM2MDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZworKysg
Yi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNiBAQAorMjAx
Ny0wOC0zMSAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CisKKyAgICAgICAgW01hY10g
VXBzdHJlYW0gQXBwS2l0LXJlbGF0ZWQgV2ViS2l0U3lzdGVtSW50ZXJmYWNlIGZ1bmN0aW9ucwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc2MTc1CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgQnJhZHkgRWlkc29uLgorCisgICAgICAgICogUGx1Z2lucy9I
b3N0ZWQvTmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5Lm1tOgorICAgICAgICAoV2ViS2l0OjpO
ZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJveHk6OmtleUV2ZW50KToKKyAgICAgICAgKiBQbHVnaW5z
L0hvc3RlZC9XZWJUZXh0SW5wdXRXaW5kb3dDb250cm9sbGVyLm06CisgICAgICAgICgtW1dlYlRl
eHRJbnB1dFBhbmVsIGluaXRdKToKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJTeXN0ZW1J
bnRlcmZhY2UubW06CisgICAgICAgIChJbml0V2ViQ29yZVN5c3RlbUludGVyZmFjZSk6CisgICAg
ICAgICogV2ViVmlldy9XZWJEeW5hbWljU2Nyb2xsQmFyc1ZpZXcubW06CisgICAgICAgICgtW1dl
YkR5bmFtaWNTY3JvbGxCYXJzVmlldyBzY3JvbGxXaGVlbDpdKToKKyAgICAgICAgKiBXZWJWaWV3
L1dlYkhUTUxWaWV3Lm1tOgorICAgICAgICAoLVtXZWJIVE1MVmlldyBfcmVtb3ZlV2luZG93T2Jz
ZXJ2ZXJzXSk6CisgICAgICAgICgtW1dlYkhUTUxWaWV3IGFkZFdpbmRvd09ic2VydmVyc10pOgor
ICAgICAgICAqIFdlYlZpZXcvV2ViVmlldy5tbToKKyAgICAgICAgKC1bV2ViVmlldyBhZGRXaW5k
b3dPYnNlcnZlcnNGb3JXaW5kb3c6XSk6CisgICAgICAgICgtW1dlYlZpZXcgcmVtb3ZlV2luZG93
T2JzZXJ2ZXJzXSk6CisgICAgICAgICgtW1dlYlZpZXcgdmlld1dpbGxNb3ZlVG9XaW5kb3c6XSk6
CisKIDIwMTctMDgtMzAgIEFuZHkgRXN0ZXMgIDxhZXN0ZXNAYXBwbGUuY29tPgogCiAgICAgICAg
IFtNYWNdIFVwc3RyZWFtIEFjY2Vzc2liaWxpdHktcmVsYXRlZCBXZWJLaXRTeXN0ZW1JbnRlcmZh
Y2UgZnVuY3Rpb25zCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9X
ZWJDb3JlLnhjY29uZmlnIGIvU291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvV2ViQ29yZS54
Y2NvbmZpZwppbmRleCAyYTBhY2Y3YWUyNzhjNjA5ODUxODBmOTg2Yzc1MWMzNmRmYmFhZGQ5Li4z
NWZjM2U3OTVmZjhhMjljYjAzMWMwNTkzYzI2YmViY2RkZjNlNDQ3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9XZWJDb3JlLnhjY29uZmlnCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL0NvbmZpZ3VyYXRpb25zL1dlYkNvcmUueGNjb25maWcKQEAgLTc3LDcgKzc3LDcgQEAg
TElCV0VCUlRDX0xJQlJBUllfRElSX1VTRV9PVkVSUklERV9GUkFNRVdPUktTX0RJUl9OTyA9ICQo
V0VCQ09SRV9GUkFNRVdPUktTX0RJUikKIExJQldFQlJUQ19MSUJSQVJZX0RJUl9VU0VfT1ZFUlJJ
REVfRlJBTUVXT1JLU19ESVJfWUVTID0gJChXS19PVkVSUklERV9GUkFNRVdPUktTX0RJUik7CiAK
IE9USEVSX0xERkxBR1MgPSAkKGluaGVyaXRlZCkgJChXS19SRUxPQ0FUQUJMRV9GUkFNRVdPUktf
TERGTEFHUykgJChXS19VTkRFRklORURfU1lNQk9MU19MREZMQUdTKSAkKE9USEVSX0xERkxBR1Nf
UExBVEZPUk0pOwotT1RIRVJfTERGTEFHU19CQVNFID0gLWxzcWxpdGUzIC1sb2JqYyAtbEFOR0xF
IC1mcmFtZXdvcmsgQ29yZUF1ZGlvIC1mcmFtZXdvcmsgTWV0YWwgLWFsbG93YWJsZV9jbGllbnQg
V2ViQ29yZVRlc3RTdXBwb3J0IC1hbGxvd2FibGVfY2xpZW50IFdlYktpdExlZ2FjeTsKK09USEVS
X0xERkxBR1NfQkFTRSA9IC1sc3FsaXRlMyAtbG9iamMgLWxBTkdMRSAtZnJhbWV3b3JrIENvcmVB
dWRpbyAtZnJhbWV3b3JrIE1ldGFsIC1hbGxvd2FibGVfY2xpZW50IFdlYkNvcmVUZXN0U3VwcG9y
dCAtYWxsb3dhYmxlX2NsaWVudCBXZWJLaXRMZWdhY3kgLU9iakM7CiAvLyBGSVhNRTogUmVkdWNl
IHRoZSBudW1iZXIgb2YgYWxsb3dhYmxlX2NsaWVudCA8cmRhcjovL3Byb2JsZW0vMzE4MjM5Njk+
CiBPVEhFUl9MREZMQUdTX0JBU0VfaW9zID0gJChPVEhFUl9MREZMQUdTX0JBU0UpIC1mcmFtZXdv
cmsgQ0ZOZXR3b3JrIC1mcmFtZXdvcmsgQ29yZUdyYXBoaWNzIC1mcmFtZXdvcmsgQ29yZVRleHQg
LWZyYW1ld29yayBGb3VuZGF0aW9uIC1mcmFtZXdvcmsgSW1hZ2VJTyAtZnJhbWV3b3JrIE1vYmls
ZUNvcmVTZXJ2aWNlcyAtZnJhbWV3b3JrIE9wZW5HTEVTIC1sTW9iaWxlR2VzdGFsdCAkKFdLX0lP
U19CSU5DT01QQVRfTERGTEFHUykgLWFsbG93YWJsZV9jbGllbnQgV2ViS2l0IC1hbGxvd2FibGVf
Y2xpZW50IGlUdW5lc1UgLWFsbG93YWJsZV9jbGllbnQgQ2FzYWJsYW5jYSAtYWxsb3dhYmxlX2Ns
aWVudCBSZW1vdGUgLWFsbG93YWJsZV9jbGllbnQgVFZCb29rcyAtYWxsb3dhYmxlX2NsaWVudCBE
dW1wUmVuZGVyVHJlZSAtYWxsb3dhYmxlX2NsaWVudCBXZWJLaXRUZXN0UnVubmVyIC1hbGxvd2Fi
bGVfY2xpZW50IFRlc3RXZWJLaXRBUEk7CiBPVEhFUl9MREZMQUdTX1BMQVRGT1JNW3Nkaz1pcGhv
bmVvcypdID0gJChPVEhFUl9MREZMQUdTX0JBU0VfaW9zKSAtZnJhbWV3b3JrIElPU3VyZmFjZSAt
ZnJhbWV3b3JrIEdyYXBoaWNzU2VydmljZXMgJChMSUJXRUJSVENfTERGTEFHUyk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9T
b3VyY2UvV2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggZDk4
NThmOWVlMmI0MWYwMDU5MzcxYWU5MGNiMmJmZGRkYTNkMGI4OC4uOGRkNWE2YjM2NzkyYTI2MWZi
ZTUzOTkzMDQ5NmY5MTc0YjdmMDU1MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML1BB
TC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMTAxLDYgKzEwMSw5IEBACiAJCUExMDI2NTg5
MUY1Njc0N0EwMEI0Qzg0NCAvKiBISVRvb2xib3hTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExMDI2NTg4MUY1Njc0N0EwMEI0Qzg0NCAvKiBISVRv
b2xib3hTUEkuaCAqLzsgfTsKIAkJQTEwMjY1OEIxRjU2NzQ4QzAwQjRDODQ0IC8qIFF1aWNrRHJh
d1NQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTEw
MjY1OEExRjU2NzQ4QzAwQjRDODQ0IC8qIFF1aWNrRHJhd1NQSS5oICovOyB9OwogCQlBMTAyNjU4
RTFGNTY3RTlEMDBCNEM4NDQgLyogSElTZXJ2aWNlc1NQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTEwMjY1OEQxRjU2N0U5RDAwQjRDODQ0IC8qIEhJ
U2VydmljZXNTUEkuaCAqLzsgfTsKKwkJQTEwODI2RjExRjU3M0JDQTAwNDc3MkFDIC8qIE5TUmVz
cG9uZGVyU1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBBMTA4MjZGMDFGNTczQkNBMDA0NzcyQUMgLyogTlNSZXNwb25kZXJTUEkuaCAqLzsgfTsKKwkJ
QTEwODI2RjkxRjU3NjI5MjAwNDc3MkFDIC8qIFdlYlBhbmVsLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMTA4MjZGNzFGNTc2MjkyMDA0NzcyQUMgLyog
V2ViUGFuZWwuaCAqLzsgfTsKKwkJQTEwODI2RkExRjU3NjI5MjAwNDc3MkFDIC8qIFdlYlBhbmVs
Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTEwODI2
RjgxRjU3NjI5MjAwNDc3MkFDIC8qIFdlYlBhbmVsLm1tICovOyB9OwogCQlBMUY1NURDRjFGNTUy
OEVDMDBFREI3NUYgLyogTWV0YWRhdGFTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEExRjU1RENFMUY1NTI4RUMwMEVEQjc1RiAvKiBNZXRhZGF0YVNQ
SS5oICovOyB9OwogCQlBMzBENDEyMTFGMEREMEVBMDBCNzE5NTQgLyogS2lsbFJpbmcuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEEzMEQ0MTFFMUYwREQw
RUEwMEI3MTk1NCAvKiBLaWxsUmluZy5oICovOyB9OwogCQlBMzBENDEyMjFGMEREMEVBMDBCNzE5
NTQgLyogS2lsbFJpbmdOb25lLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEEzMEQ0MTFGMUYwREQwRUEwMEI3MTk1NCAvKiBLaWxsUmluZ05vbmUuY3Bw
ICovOyB9OwpAQCAtMjE3LDYgKzIyMCw5IEBACiAJCUExMDI2NTg4MUY1Njc0N0EwMEI0Qzg0NCAv
KiBISVRvb2xib3hTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSElUb29s
Ym94U1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUExMDI2NThBMUY1Njc0OEMw
MEI0Qzg0NCAvKiBRdWlja0RyYXdTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gUXVpY2tEcmF3U1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUExMDI2NThE
MUY1NjdFOUQwMEI0Qzg0NCAvKiBISVNlcnZpY2VzU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhJU2Vy
dmljZXNTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTEwODI2RjAxRjU3M0JD
QTAwNDc3MkFDIC8qIE5TUmVzcG9uZGVyU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5TUmVzcG9uZGVy
U1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExMDgyNkY3MUY1NzYyOTIwMDQ3
NzJBQyAvKiBXZWJQYW5lbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJQYW5lbC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlBMTA4MjZGODFGNTc2MjkyMDA0NzcyQUMgLyogV2ViUGFuZWwu
bW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJQYW5lbC5tbTsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJQTFGNTVEQ0UxRjU1MjhFQzAwRURCNzVGIC8qIE1ldGFkYXRhU1BJLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IE1ldGFkYXRhU1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CUEzMEQ0MTFFMUYwREQwRUEwMEI3MTk1NCAvKiBLaWxsUmluZy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBLaWxsUmluZy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQlBMzBENDExRjFGMEREMEVBMDBCNzE5NTQgLyogS2lsbFJpbmdOb25lLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEtpbGxSaW5nTm9uZS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CkBAIC0zNTMsNiArMzU5LDcgQEAKIAkJCQkwQzc3ODU3OTFGNDUxMzBG
MDBGNEVCQjYgLyogTlNNZW51U1BJLmggKi8sCiAJCQkJMEM3Nzg1N0ExRjQ1MTMwRjAwRjRFQkI2
IC8qIE5TUGFzdGVib2FyZFNQSS5oICovLAogCQkJCTBDNzc4NTdCMUY0NTEzMEYwMEY0RUJCNiAv
KiBOU1BvcG92ZXJTUEkuaCAqLywKKwkJCQlBMTA4MjZGMDFGNTczQkNBMDA0NzcyQUMgLyogTlNS
ZXNwb25kZXJTUEkuaCAqLywKIAkJCQkwQzc3ODU3QzFGNDUxMzBGMDBGNEVCQjYgLyogTlNTY3Jv
bGxlckltcFNQSS5oICovLAogCQkJCTBDNzc4NTdEMUY0NTEzMEYwMEY0RUJCNiAvKiBOU1Njcm9s
bGluZ0lucHV0RmlsdGVyU1BJLmggKi8sCiAJCQkJMEM3Nzg1N0UxRjQ1MTMwRjAwRjRFQkI2IC8q
IE5TU2Nyb2xsaW5nTW9tZW50dW1DYWxjdWxhdG9yU1BJLmggKi8sCkBAIC00NzMsNiArNDgwLDgg
QEAKIAkJCQlBMzc4OEU5RDFGMDVCNzhFMDA2Nzk0MjUgLyogU291bmRNYWMubW0gKi8sCiAJCQkJ
QTNBQjZFNjIxRjNEMjE3RjAwOUMxNEIxIC8qIFN5c3RlbVNsZWVwTGlzdGVuZXJNYWMuaCAqLywK
IAkJCQlBM0FCNkU2MzFGM0QyMTdGMDA5QzE0QjEgLyogU3lzdGVtU2xlZXBMaXN0ZW5lck1hYy5t
bSAqLywKKwkJCQlBMTA4MjZGNzFGNTc2MjkyMDA0NzcyQUMgLyogV2ViUGFuZWwuaCAqLywKKwkJ
CQlBMTA4MjZGODFGNTc2MjkyMDA0NzcyQUMgLyogV2ViUGFuZWwubW0gKi8sCiAJCQkpOwogCQkJ
cGF0aCA9IG1hYzsKIAkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CkBAIC01NDYsNiArNTU1LDcg
QEAKIAkJCQkwQzc3ODU5MjFGNDUxMzBGMDBGNEVCQjYgLyogTlNNZW51U1BJLmggaW4gSGVhZGVy
cyAqLywKIAkJCQkwQzc3ODU5MzFGNDUxMzBGMDBGNEVCQjYgLyogTlNQYXN0ZWJvYXJkU1BJLmgg
aW4gSGVhZGVycyAqLywKIAkJCQkwQzc3ODU5NDFGNDUxMzBGMDBGNEVCQjYgLyogTlNQb3BvdmVy
U1BJLmggaW4gSGVhZGVycyAqLywKKwkJCQlBMTA4MjZGMTFGNTczQkNBMDA0NzcyQUMgLyogTlNS
ZXNwb25kZXJTUEkuaCBpbiBIZWFkZXJzICovLAogCQkJCTBDNzc4NTk1MUY0NTEzMEYwMEY0RUJC
NiAvKiBOU1Njcm9sbGVySW1wU1BJLmggaW4gSGVhZGVycyAqLywKIAkJCQkwQzc3ODU5NjFGNDUx
MzBGMDBGNEVCQjYgLyogTlNTY3JvbGxpbmdJbnB1dEZpbHRlclNQSS5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJMEM3Nzg1OTcxRjQ1MTMwRjAwRjRFQkI2IC8qIE5TU2Nyb2xsaW5nTW9tZW50dW1DYWxj
dWxhdG9yU1BJLmggaW4gSGVhZGVycyAqLywKQEAgLTU4MCw2ICs1OTAsNyBAQAogCQkJCTBDNzc4
NUExMUY0NTEzMEYwMEY0RUJCNiAvKiBUVUNhbGxTUEkuaCBpbiBIZWFkZXJzICovLAogCQkJCTBD
NUFGOTIyMUY0M0E0QzcwMDJFQUMwMiAvKiBVSUtpdFNQSS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
MEMyREExNTkxRjNCRUI0OTAwREJDMzE3IC8qIFdlYkZpbHRlckV2YWx1YXRvclNQSS5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQTEwODI2RjkxRjU3NjI5MjAwNDc3MkFDIC8qIFdlYlBhbmVsLmggaW4g
SGVhZGVycyAqLywKIAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5n
ID0gMDsKIAkJfTsKQEAgLTY3OCw2ICs2ODksNyBAQAogCQkJCUEzNzg4RTlDMUYwNUI3ODIwMDY3
OTQyNSAvKiBTb3VuZE5vbmUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTNBQjZFNTcxRjNEMURE
QjAwOUMxNEIxIC8qIFN5c3RlbVNsZWVwTGlzdGVuZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
QTNBQjZFNjUxRjNEMjE3RjAwOUMxNEIxIC8qIFN5c3RlbVNsZWVwTGlzdGVuZXJNYWMubW0gaW4g
U291cmNlcyAqLywKKwkJCQlBMTA4MjZGQTFGNTc2MjkyMDA0NzcyQUMgLyogV2ViUGFuZWwubW0g
aW4gU291cmNlcyAqLywKIAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNz
aW5nID0gMDsKIAkJfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21h
Yy9ISVRvb2xib3hTUEkuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9ISVRvb2xi
b3hTUEkuaAppbmRleCAwMDM0ODc3NzcyZGNjNThmMDJhMTY3OGE3NmNlMmZhMDViOGFmYWNiLi40
NTJlZjYyNzAzYTNmMTQzNDA1OTJmODVkYWUxZDg0YWFmYmNmN2YxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9tYWMvSElUb29sYm94U1BJLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvUEFML3BhbC9zcGkvbWFjL0hJVG9vbGJveFNQSS5oCkBAIC0zMywxMCArMzMsMTcgQEAK
IAogI2RlZmluZSBrVFNNSW5wdXRTb3VyY2VQcm9wZXJ0eVNjcmlwdENvZGUgQ0ZTVFIoIlRTTUlu
cHV0U291cmNlUHJvcGVydHlTY3JpcHRDb2RlIikKIAorZW51bSB7CisgICAga0V2ZW50UGFyYW1L
ZXlNYWNDaGFyQ29kZXMgPSAna2NocicsCit9OworCiAjZW5kaWYKIAogdHlwZWRlZiBzdHJ1Y3Qg
X19UU01JbnB1dFNvdXJjZSogVFNNSW5wdXRTb3VyY2VSZWY7CiB0eXBlZGVmIENGU3RyaW5nUmVm
IFRTTUlucHV0U291cmNlUHJvcGVydHlUYWc7Cit0eXBlZGVmIHN0cnVjdCBPcGFxdWVFdmVudFJl
ZiogRXZlbnRSZWY7Cit0eXBlZGVmIE9TVHlwZSBFdmVudFBhcmFtTmFtZTsKK3R5cGVkZWYgT1NU
eXBlIEV2ZW50UGFyYW1UeXBlOwogCiBXVEZfRVhURVJOX0NfQkVHSU4KIApAQCAtNDUsNSArNTIs
NiBAQCBDR1dpbmRvd0lEIEdldE5hdGl2ZVdpbmRvd0Zyb21XaW5kb3dSZWYoV2luZG93UmVmKTsK
IE9TU3RhdHVzIFRTTVByb2Nlc3NSYXdLZXlFdmVudChFdmVudFJlZik7CiBFdmVudFJlZiBHZXRD
dXJyZW50RXZlbnQoKTsKIENGVHlwZVJlZiBUU01HZXRJbnB1dFNvdXJjZVByb3BlcnR5KFRTTUlu
cHV0U291cmNlUmVmLCBUU01JbnB1dFNvdXJjZVByb3BlcnR5VGFnKTsKK09TU3RhdHVzIEdldEV2
ZW50UGFyYW1ldGVyKEV2ZW50UmVmLCBFdmVudFBhcmFtTmFtZSBpbk5hbWUsIEV2ZW50UGFyYW1U
eXBlIGluRGVzaXJlZFR5cGUsIEV2ZW50UGFyYW1UeXBlKiBvdXRBY3R1YWxUeXBlLCBCeXRlQ291
bnQgaW5CdWZmZXJTaXplLCBCeXRlQ291bnQqIG91dEFjdHVhbFNpemUsIHZvaWQqIG91dERhdGEp
OwogCiBXVEZfRVhURVJOX0NfRU5ECmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFs
L3NwaS9tYWMvTlNSZXNwb25kZXJTUEkuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21h
Yy9OU1Jlc3BvbmRlclNQSS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmZlZDFhNzk1MjdmNzJlOGMwNzcxM2QzZmU4
MjAyMWQxNTYwN2JmM2QKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFs
L3NwaS9tYWMvTlNSZXNwb25kZXJTUEkuaApAQCAtMCwwICsxLDQwIEBACisvKgorICogQ29weXJp
Z2h0IChDKSAyMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05U
UklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAq
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1Ig
SVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKwor
I2lmIFBMQVRGT1JNKE1BQykKKworI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCisKKyNpbXBv
cnQgPEFwcEtpdC9OU1Jlc3BvbmRlcl9Qcml2YXRlLmg+CisKKyNlbHNlCisKK0BpbnRlcmZhY2Ug
TlNSZXNwb25kZXIgKCkKKy0gKHZvaWQpX3NldFNob3VsZFBvc3RFdmVudE5vdGlmaWNhdGlvbnM6
KEJPT0wpcG9zdE5vdGlmaWNhdGlvbnM7CitAZW5kCisKKyNlbmRpZgorCisjZW5kaWYgLy8gUExB
VEZPUk0oTUFDKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvbWFjL05T
V2luZG93U1BJLmggYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9tYWMvTlNXaW5kb3dTUEku
aAppbmRleCBiYWI4NDAwZjA0OWQ5NGI5MmRlZmVhOWFlOTUzMTYyZmYyMTU4OTQzLi5hYTgxMjU1
ZDhlYmJmMTAzYTdmMjkxMTkzM2EwMDQ3ODMzODY1NTU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9QQUwvcGFsL3NwaS9tYWMvTlNXaW5kb3dTUEkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Q
QUwvcGFsL3NwaS9tYWMvTlNXaW5kb3dTUEkuaApAQCAtNDIsOSArNDIsMTQgQEAKIEBlbmQKIAog
ZW51bSB7CisgICAgTlNTaWRlVXRpbGl0eVdpbmRvd01hc2sgPSAxIDw8IDksCisgICAgTlNTbWFs
bFdpbmRvd01hc2sgPSAxIDw8IDEwLAogICAgIF9OU0NhcmJvbldpbmRvd01hc2sgPSAxIDw8IDI1
LAogfTsKIAogI2VuZGlmCiAKK2V4dGVybiBOU1N0cmluZyAqTlNXaW5kb3dXaWxsT3JkZXJPblNj
cmVlbk5vdGlmaWNhdGlvbjsKK2V4dGVybiBOU1N0cmluZyAqTlNXaW5kb3dXaWxsT3JkZXJPZmZT
Y3JlZW5Ob3RpZmljYXRpb247CisKICNlbmRpZiAvLyBQTEFURk9STShNQUMpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3N5c3RlbS9tYWMvV2ViUGFuZWwuaCBiL1NvdXJjZS9X
ZWJDb3JlL1BBTC9wYWwvc3lzdGVtL21hYy9XZWJQYW5lbC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjkwMzUxNjNk
OWRiYWVlMzFkOTgxMTIyMjUxNjJkZDM4YmY4NjU2OWUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvcGFsL3N5c3RlbS9tYWMvV2ViUGFuZWwuaApAQCAtMCwwICsxLDM2IEBA
CisvKgorICogQ29weXJpZ2h0IChDKSAyMDE3IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRp
c3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElO
Qy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRI
RSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxM
IEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09O
U0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCisgKi8KKworI2lmIFBMQVRGT1JNKE1BQykKKworI2ltcG9ydCA8QXBwS2l0L0FwcEtp
dC5oPgorCitQQUxfRVhQT1JUIEBpbnRlcmZhY2UgV2ViUGFuZWwgOiBOU1BhbmVsCisKKy0gKGlu
c3RhbmNldHlwZSlpbml0OworCitAZW5kCisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvUEFML3BhbC9zeXN0ZW0vbWFjL1dlYlBhbmVsLm1tIGIvU291cmNlL1dlYkNvcmUvUEFM
L3BhbC9zeXN0ZW0vbWFjL1dlYlBhbmVsLm1tCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjMxN2JkYTAyZTdiN2ViMjdh
OWJkMmI1OTc5NTZmNTQxMmRhY2YxMjYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9QQUwvcGFsL3N5c3RlbS9tYWMvV2ViUGFuZWwubW0KQEAgLTAsMCArMSw0NyBAQAorLyoKKyAq
IENvcHlyaWdodCAoQykgMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgor
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJ
VFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJ
TkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
CisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKKyNpbXBvcnQgImNvbmZpZy5oIgorI2ltcG9ydCAiV2ViUGFuZWwuaCIKKworI2lmIFBM
QVRGT1JNKE1BQykKKworI2ltcG9ydCA8cGFsL3NwaS9tYWMvTlNXaW5kb3dTUEkuaD4KKworQGlt
cGxlbWVudGF0aW9uIFdlYlBhbmVsCisKKy0gKGluc3RhbmNldHlwZSlpbml0Cit7CisjcHJhZ21h
IGNsYW5nIGRpYWdub3N0aWMgcHVzaAorI3ByYWdtYSBjbGFuZyBkaWFnbm9zdGljIGlnbm9yZWQg
Ii1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnMiCisgICAgc3RhdGljIE5TVUludGVnZXIgc3R5bGVN
YXNrID0gTlNNaW5pYXR1cml6YWJsZVdpbmRvd01hc2sgfCBOU0Nsb3NhYmxlV2luZG93TWFzayB8
IE5TUmVzaXphYmxlV2luZG93TWFzayAgfCBOU1RpdGxlZFdpbmRvd01hc2sgfCBOU1NtYWxsV2lu
ZG93TWFzayB8IE5TU2lkZVV0aWxpdHlXaW5kb3dNYXNrIHwgTlNVdGlsaXR5V2luZG93TWFzazsK
KyNwcmFnbWEgY2xhbmcgZGlhZ25vc3RpYyBwb3AKKyAgICAKKyAgICByZXR1cm4gW3N1cGVyIGlu
aXRXaXRoQ29udGVudFJlY3Q6TlNaZXJvUmVjdCBzdHlsZU1hc2s6c3R5bGVNYXNrIGJhY2tpbmc6
TlNCYWNraW5nU3RvcmVCdWZmZXJlZCBkZWZlcjpZRVNdOworfQorCitAZW5kCisKKyNlbmRpZiAv
LyBQTEFURk9STShNQUMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMv
UGxhdGZvcm1FdmVudEZhY3RvcnlNYWMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9Q
bGF0Zm9ybUV2ZW50RmFjdG9yeU1hYy5oCmluZGV4IDI1OWM2MDUwZDYwYTQ5ZjQ5OGRjNTQ4Yjdj
ZWYzMmYwYzc2YWRlNmMuLmQyMGEyZDhlZTkwZjRjMTg2N2I5NmU1OTQ5MjE5NTljNGY2YzAyNmYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9QbGF0Zm9ybUV2ZW50RmFj
dG9yeU1hYy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9QbGF0Zm9ybUV2ZW50
RmFjdG9yeU1hYy5oCkBAIC00OSw2ICs0OSw5IEBAIFdFQkNPUkVfRVhQT1JUIFN0cmluZyBrZXlJ
ZGVudGlmaWVyRm9yS2V5RXZlbnQoTlNFdmVudCAqKTsKIFdFQkNPUkVfRVhQT1JUIFN0cmluZyBr
ZXlGb3JLZXlFdmVudChOU0V2ZW50ICopOwogV0VCQ09SRV9FWFBPUlQgU3RyaW5nIGNvZGVGb3JL
ZXlFdmVudChOU0V2ZW50ICopOwogV0VCQ09SRV9FWFBPUlQgZG91YmxlIGV2ZW50VGltZVN0YW1w
U2luY2UxOTcwKE5TRXZlbnQgKik7CisgICAgCitXRUJDT1JFX0VYUE9SVCB2b2lkIGdldFdoZWVs
RXZlbnREZWx0YXMoTlNFdmVudCAqLCBmbG9hdCYgZGVsdGFYLCBmbG9hdCYgZGVsdGFZLCBCT09M
JiBjb250aW51b3VzKTsKK1dFQkNPUkVfRVhQT1JUIFVJbnQ4IGtleUNoYXJGb3JFdmVudChOU0V2
ZW50ICopOwogCiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWFjL1BsYXRmb3JtRXZlbnRGYWN0b3J5TWFjLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWFjL1BsYXRmb3JtRXZlbnRGYWN0b3J5TWFjLm1tCmluZGV4IGJjMWUzNjdmYzQ2OTRlYWY0NjBh
YjBlYTVhNDIzMGQwMDAwMWFjODkuLjEzZTEzMDEzMWM3NzFkMDc1MmFlZjRkOGYyNDU1NTc4YjI2
ZTFhYmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9QbGF0Zm9ybUV2
ZW50RmFjdG9yeU1hYy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvUGxhdGZv
cm1FdmVudEZhY3RvcnlNYWMubW0KQEAgLTM0LDYgKzM0LDggQEAKICNpbXBvcnQgIldpbmRvd3NL
ZXlib2FyZENvZGVzLmgiCiAjaW1wb3J0IDxISVRvb2xib3gvRXZlbnRzLmg+CiAjaW1wb3J0IDxt
YWNoL21hY2hfdGltZS5oPgorI2ltcG9ydCA8cGFsL3NwaS9tYWMvSElUb29sYm94U1BJLmg+Cisj
aW1wb3J0IDxwYWwvc3BpL21hYy9OU0V2ZW50U1BJLmg+CiAjaW1wb3J0IDxwYWwvc3BpL21hYy9O
U01lbnVTUEkuaD4KICNpbXBvcnQgPHd0Zi9BU0NJSUNUeXBlLmg+CiAKQEAgLTY3NCw2ICs2NzYs
MzkgQEAgc3RhdGljIGludCB0eXBlRm9yRXZlbnQoTlNFdmVudCAqZXZlbnQpCiAgICAgcmV0dXJu
IHN0YXRpY19jYXN0PGludD4oW05TTWVudSBtZW51VHlwZUZvckV2ZW50OmV2ZW50XSk7CiB9CiAg
ICAgCit2b2lkIGdldFdoZWVsRXZlbnREZWx0YXMoTlNFdmVudCAqZXZlbnQsIGZsb2F0JiBkZWx0
YVgsIGZsb2F0JiBkZWx0YVksIEJPT0wmIGNvbnRpbnVvdXMpCit7CisgICAgQVNTRVJUKGV2ZW50
KTsKKyAgICBpZiAoZXZlbnQuaGFzUHJlY2lzZVNjcm9sbGluZ0RlbHRhcykgeworICAgICAgICBk
ZWx0YVggPSBldmVudC5zY3JvbGxpbmdEZWx0YVg7CisgICAgICAgIGRlbHRhWSA9IGV2ZW50LnNj
cm9sbGluZ0RlbHRhWTsKKyAgICAgICAgY29udGludW91cyA9IFlFUzsKKyAgICB9IGVsc2Ugewor
ICAgICAgICBkZWx0YVggPSBldmVudC5kZWx0YVg7CisgICAgICAgIGRlbHRhWSA9IGV2ZW50LmRl
bHRhWTsKKyAgICAgICAgY29udGludW91cyA9IE5POworICAgIH0KK30KKworVUludDgga2V5Q2hh
ckZvckV2ZW50KE5TRXZlbnQgKmV2ZW50KQoreworICAgIEV2ZW50UmVmIGV2ZW50UmVmID0gKEV2
ZW50UmVmKVtldmVudCBfZXZlbnRSZWZdOworICAgIGlmICghZXZlbnRSZWYpCisgICAgICAgIHJl
dHVybiAwOworCisgICAgQnl0ZUNvdW50IGtleUNoYXJDb3VudCA9IDA7CisgICAgaWYgKEdldEV2
ZW50UGFyYW1ldGVyKGV2ZW50UmVmLCBrRXZlbnRQYXJhbUtleU1hY0NoYXJDb2RlcywgdHlwZUNo
YXIsIDAsIDAsICZrZXlDaGFyQ291bnQsIDApICE9IG5vRXJyKQorICAgICAgICByZXR1cm4gMDsK
KyAgICBpZiAoa2V5Q2hhckNvdW50ICE9IDEpCisgICAgICAgIHJldHVybiAwOworCisgICAgVUlu
dDgga2V5Q2hhciA9IDA7CisgICAgaWYgKEdldEV2ZW50UGFyYW1ldGVyKGV2ZW50UmVmLCBrRXZl
bnRQYXJhbUtleU1hY0NoYXJDb2RlcywgdHlwZUNoYXIsIDAsIHNpemVvZihrZXlDaGFyKSwgJmtl
eUNoYXJDb3VudCwgJmtleUNoYXIpICE9IG5vRXJyKQorICAgICAgICByZXR1cm4gMDsKKyAgICAK
KyAgICByZXR1cm4ga2V5Q2hhcjsKK30KKwogY2xhc3MgUGxhdGZvcm1Nb3VzZUV2ZW50QnVpbGRl
ciA6IHB1YmxpYyBQbGF0Zm9ybU1vdXNlRXZlbnQgewogcHVibGljOgogICAgIFBsYXRmb3JtTW91
c2VFdmVudEJ1aWxkZXIoTlNFdmVudCAqZXZlbnQsIE5TRXZlbnQgKmNvcnJlc3BvbmRpbmdQcmVz
c3VyZUV2ZW50LCBOU1ZpZXcgKndpbmRvd1ZpZXcpCkBAIC03NDQsNyArNzc5LDcgQEAgcHVibGlj
OgogICAgICAgICBtX2dyYW51bGFyaXR5ID0gU2Nyb2xsQnlQaXhlbFdoZWVsRXZlbnQ7CiAKICAg
ICAgICAgQk9PTCBjb250aW51b3VzOwotICAgICAgICB3a0dldFdoZWVsRXZlbnREZWx0YXMoZXZl
bnQsICZtX2RlbHRhWCwgJm1fZGVsdGFZLCAmY29udGludW91cyk7CisgICAgICAgIGdldFdoZWVs
RXZlbnREZWx0YXMoZXZlbnQsIG1fZGVsdGFYLCBtX2RlbHRhWSwgY29udGludW91cyk7CiAgICAg
ICAgIGlmIChjb250aW51b3VzKSB7CiAgICAgICAgICAgICBtX3doZWVsVGlja3NYID0gbV9kZWx0
YVggLyBzdGF0aWNfY2FzdDxmbG9hdD4oU2Nyb2xsYmFyOjpwaXhlbHNQZXJMaW5lU3RlcCgpKTsK
ICAgICAgICAgICAgIG1fd2hlZWxUaWNrc1kgPSBtX2RlbHRhWSAvIHN0YXRpY19jYXN0PGZsb2F0
PihTY3JvbGxiYXI6OnBpeGVsc1BlckxpbmVTdGVwKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2UuaCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL21hYy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlLmgKaW5kZXggOTNjZGZkMGM3
YWIxZTk2ODAxMDZjYTY0ODU0NDg1NjZiNzQ0NGU0Ni4uOGExMjQ4MjdjMDQwOWQ2NjNmNzgxZGYy
N2I0ZTQzYmNmYWZiZDIyNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFj
L1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
YWMvV2ViQ29yZVN5c3RlbUludGVyZmFjZS5oCkBAIC0xMzksNyArMTM5LDYgQEAgZXh0ZXJuIHZv
aWQgKCp3a0RyYXdNZWRpYVNsaWRlclRyYWNrKShDR0NvbnRleHRSZWYgY29udGV4dCwgQ0dSZWN0
IHJlY3QsIGZsb2F0IHQKIGV4dGVybiB2b2lkICgqd2tEcmF3TWVkaWFVSVBhcnQpKGludCBwYXJ0
LCBDR0NvbnRleHRSZWYgY29udGV4dCwgQ0dSZWN0IHJlY3QsIHVuc2lnbmVkIHN0YXRlKTsKIGV4
dGVybiBkb3VibGUgKCp3a0dldE5TVVJMUmVzcG9uc2VDYWxjdWxhdGVkRXhwaXJhdGlvbikoTlNV
UkxSZXNwb25zZSAqcmVzcG9uc2UpOwogZXh0ZXJuIEJPT0wgKCp3a0dldE5TVVJMUmVzcG9uc2VN
dXN0UmV2YWxpZGF0ZSkoTlNVUkxSZXNwb25zZSAqcmVzcG9uc2UpOwotZXh0ZXJuIHZvaWQgKCp3
a0dldFdoZWVsRXZlbnREZWx0YXMpKE5TRXZlbnQqLCBmbG9hdCogZGVsdGFYLCBmbG9hdCogZGVs
dGFZLCBCT09MKiBjb250aW51b3VzKTsKIGV4dGVybiBVSW50OCAoKndrR2V0TlNFdmVudEtleUNo
YXIpKE5TRXZlbnQgKik7CiBleHRlcm4gQk9PTCAoKndrSGl0VGVzdE1lZGlhVUlQYXJ0KShpbnQg
cGFydCwgQ0dSZWN0IGJvdW5kcywgQ0dQb2ludCBwb2ludCk7CiBleHRlcm4gdm9pZCAoKndrTWVh
c3VyZU1lZGlhVUlQYXJ0KShpbnQgcGFydCwgQ0dSZWN0ICpib3VuZHMsIENHU2l6ZSAqbmF0dXJh
bFNpemUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVT
eXN0ZW1JbnRlcmZhY2UubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViQ29yZVN5
c3RlbUludGVyZmFjZS5tbQppbmRleCA2NDlkN2E2N2NkNjc2NTRhMmEzZTM5NGU5MzVmOGM1MjZm
YTM5MjVhLi4yNzJiNTU1N2UyMzlmM2MxZTFkNDVhOTRmYjdiMWU0NTM0NjE3ZGYyIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViQ29yZVN5c3RlbUludGVyZmFjZS5t
bQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViQ29yZVN5c3RlbUludGVyZmFj
ZS5tbQpAQCAtNDgsNyArNDgsNiBAQCB2b2lkICgqd2tXaW5kb3dTZXRBbHBoYSkoTlNXaW5kb3cg
KiwgZmxvYXQpOwogdm9pZCAoKndrV2luZG93U2V0U2NhbGVkRnJhbWUpKE5TV2luZG93ICosIE5T
UmVjdCwgTlNSZWN0KTsKIE5TVGltZUludGVydmFsICgqd2tHZXROU1VSTFJlc3BvbnNlQ2FsY3Vs
YXRlZEV4cGlyYXRpb24pKE5TVVJMUmVzcG9uc2UgKnJlc3BvbnNlKTsKIEJPT0wgKCp3a0dldE5T
VVJMUmVzcG9uc2VNdXN0UmV2YWxpZGF0ZSkoTlNVUkxSZXNwb25zZSAqcmVzcG9uc2UpOwotdm9p
ZCAoKndrR2V0V2hlZWxFdmVudERlbHRhcykoTlNFdmVudCosIGZsb2F0KiBkZWx0YVgsIGZsb2F0
KiBkZWx0YVksIEJPT0wqIGNvbnRpbnVvdXMpOwogVUludDggKCp3a0dldE5TRXZlbnRLZXlDaGFy
KShOU0V2ZW50ICopOwogdm9pZCAoKndrUG9wdXBNZW51KShOU01lbnUqLCBOU1BvaW50IGxvY2F0
aW9uLCBmbG9hdCB3aWR0aCwgTlNWaWV3KiwgaW50IHNlbGVjdGVkSXRlbSwgTlNGb250KiwgTlND
b250cm9sU2l6ZSBjb250cm9sU2l6ZSwgYm9vbCB1c2VzQ3VzdG9tQXBwZWFyYW5jZSk7CiB1bnNp
Z25lZCAoKndrUVRJbmNsdWRlT25seU1vZGVybk1lZGlhRmlsZVR5cGVzKSh2b2lkKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvUGx1Z2luUHJvY2Vzcy9tYWMvUGx1Z2luUHJvY2Vzc01hYy5t
bSBiL1NvdXJjZS9XZWJLaXQvUGx1Z2luUHJvY2Vzcy9tYWMvUGx1Z2luUHJvY2Vzc01hYy5tbQpp
bmRleCBkZDUzMzcwMjQ3ZjBhNmI3NGEwMWJmY2M4YWE5NmZhNmZmZjM0NDE4Li5kODYwMzc4Njdh
MmYxYWZhMjVlYzUyNjMwNmUxNGQ5NjRjZDc3ZTZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1BsdWdpblByb2Nlc3MvbWFjL1BsdWdpblByb2Nlc3NNYWMubW0KKysrIGIvU291cmNlL1dlYktp
dC9QbHVnaW5Qcm9jZXNzL21hYy9QbHVnaW5Qcm9jZXNzTWFjLm1tCkBAIC00Nyw2ICs0Nyw3IEBA
CiAjaW1wb3J0IDxtYWNoL3ZtX3N0YXRpc3RpY3MuaD4KICNpbXBvcnQgPG9iamMvcnVudGltZS5o
PgogI2ltcG9ydCA8cGFsL3NwaS9tYWMvSElUb29sYm94U1BJLmg+CisjaW1wb3J0IDxwYWwvc3Bp
L21hYy9OU1dpbmRvd1NQSS5oPgogI2ltcG9ydCA8c3lzZXhpdHMuaD4KICNpbXBvcnQgPHd0Zi9I
YXNoU2V0Lmg+CiAjaW1wb3J0IDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQ0MSwxMiArNDQy
LDEyIEBAIHN0YXRpYyB2b2lkIGluaXRpYWxpemVDb2NvYU92ZXJyaWRlcygpCiAgICAgTlNOb3Rp
ZmljYXRpb25DZW50ZXIgKmRlZmF1bHRDZW50ZXIgPSBbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVm
YXVsdENlbnRlcl07CiAKICAgICAvLyBUcmFjayB3aGVuIGFueSBDb2NvYSB3aW5kb3cgaXMgYWJv
dXQgdG8gYmUgYmUgc2hvd24uCi0gICAgaWQgb3JkZXJPblNjcmVlbk9ic2VydmVyID0gW2RlZmF1
bHRDZW50ZXIgYWRkT2JzZXJ2ZXJGb3JOYW1lOldLV2luZG93V2lsbE9yZGVyT25TY3JlZW5Ob3Rp
ZmljYXRpb24oKQorICAgIGlkIG9yZGVyT25TY3JlZW5PYnNlcnZlciA9IFtkZWZhdWx0Q2VudGVy
IGFkZE9ic2VydmVyRm9yTmFtZTpOU1dpbmRvd1dpbGxPcmRlck9uU2NyZWVuTm90aWZpY2F0aW9u
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgb2JqZWN0Om5pbAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBxdWV1ZTpuaWwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNpbmdCbG9jazpeKE5TTm90aWZpY2F0aW9u
ICpub3RpZmljYXRpb24pIHsgZnVsbHNjcmVlbldpbmRvd1RyYWNrZXIoKS53aW5kb3dTaG93bihb
bm90aWZpY2F0aW9uIG9iamVjdF0pOyB9XTsKICAgICAvLyBUcmFjayB3aGVuIGFueSBDb2NvYSB3
aW5kb3cgaXMgYWJvdXQgdG8gYmUgaGlkZGVuLgotICAgIGlkIG9yZGVyT2ZmU2NyZWVuT2JzZXJ2
ZXIgPSBbZGVmYXVsdENlbnRlciBhZGRPYnNlcnZlckZvck5hbWU6V0tXaW5kb3dXaWxsT3JkZXJP
ZmZTY3JlZW5Ob3RpZmljYXRpb24oKQorICAgIGlkIG9yZGVyT2ZmU2NyZWVuT2JzZXJ2ZXIgPSBb
ZGVmYXVsdENlbnRlciBhZGRPYnNlcnZlckZvck5hbWU6TlNXaW5kb3dXaWxsT3JkZXJPZmZTY3Jl
ZW5Ob3RpZmljYXRpb24KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgb2JqZWN0Om5pbAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcXVldWU6bmlsCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNpbmdCbG9jazpeKE5T
Tm90aWZpY2F0aW9uICpub3RpZmljYXRpb24pIHsgZnVsbHNjcmVlbldpbmRvd1RyYWNrZXIoKS53
aW5kb3dIaWRkZW4oW25vdGlmaWNhdGlvbiBvYmplY3RdKTsgfV07CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1NoYXJlZC9tYWMvV2ViRXZlbnRGYWN0b3J5Lm1tIGIvU291cmNlL1dlYktpdC9T
aGFyZWQvbWFjL1dlYkV2ZW50RmFjdG9yeS5tbQppbmRleCA3N2FhYzUzZGNjYmZhMGY5YWQyYjg4
MTUxYzM1OTNlN2I2MjJhY2M2Li4wZGIzYmU4YzY0NzRjNzYzMjk4NWZlM2VhMjIxNWI0OGM2YWZj
MDViIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9tYWMvV2ViRXZlbnRGYWN0b3J5
Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL21hYy9XZWJFdmVudEZhY3RvcnkubW0KQEAg
LTM4NSw3ICszODUsNyBAQCBXZWJXaGVlbEV2ZW50IFdlYkV2ZW50RmFjdG9yeTo6Y3JlYXRlV2Vi
V2hlZWxFdmVudChOU0V2ZW50ICpldmVudCwgTlNWaWV3ICp3aW5kbwogICAgIGZsb2F0IHdoZWVs
VGlja3NYID0gMDsKICAgICBmbG9hdCB3aGVlbFRpY2tzWSA9IDA7CiAKLSAgICBXS0dldFdoZWVs
RXZlbnREZWx0YXMoZXZlbnQsICZkZWx0YVgsICZkZWx0YVksICZjb250aW51b3VzKTsKKyAgICBn
ZXRXaGVlbEV2ZW50RGVsdGFzKGV2ZW50LCBkZWx0YVgsIGRlbHRhWSwgY29udGludW91cyk7CiAg
ICAgCiAgICAgaWYgKGNvbnRpbnVvdXMpIHsKICAgICAgICAgLy8gc21vb3RoIHNjcm9sbCBldmVu
dHMKQEAgLTQzMyw3ICs0MzMsNyBAQCBXZWJLZXlib2FyZEV2ZW50IFdlYkV2ZW50RmFjdG9yeTo6
Y3JlYXRlV2ViS2V5Ym9hcmRFdmVudChOU0V2ZW50ICpldmVudCwgYm9vbCBoYQogICAgIFN0cmlu
ZyBrZXlJZGVudGlmaWVyICAgICAgICAgICAgPSBrZXlJZGVudGlmaWVyRm9yS2V5RXZlbnQoZXZl
bnQpOwogICAgIGludCB3aW5kb3dzVmlydHVhbEtleUNvZGUgICAgICAgPSB3aW5kb3dzS2V5Q29k
ZUZvcktleUV2ZW50KGV2ZW50KTsKICAgICBpbnQgbmF0aXZlVmlydHVhbEtleUNvZGUgICAgICAg
ID0gW2V2ZW50IGtleUNvZGVdOwotICAgIGludCBtYWNDaGFyQ29kZSAgICAgICAgICAgICAgICAg
PSBXS0dldE5TRXZlbnRLZXlDaGFyKGV2ZW50KTsKKyAgICBpbnQgbWFjQ2hhckNvZGUgICAgICAg
ICAgICAgICAgID0ga2V5Q2hhckZvckV2ZW50KGV2ZW50KTsKICAgICBib29sIGF1dG9SZXBlYXQg
ICAgICAgICAgICAgICAgID0gW2V2ZW50IHR5cGVdICE9IE5TRXZlbnRUeXBlRmxhZ3NDaGFuZ2Vk
ICYmIFtldmVudCBpc0FSZXBlYXRdOwogICAgIGJvb2wgaXNLZXlwYWQgICAgICAgICAgICAgICAg
ICAgPSBpc0tleXBhZEV2ZW50KGV2ZW50KTsKICAgICBib29sIGlzU3lzdGVtS2V5ICAgICAgICAg
ICAgICAgID0gZmFsc2U7IC8vIFN5c3RlbUtleSBpcyBhbHdheXMgZmFsc2Ugb24gdGhlIE1hYy4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL21hYy9XS1RleHRJbnB1dFdpbmRv
d0NvbnRyb2xsZXIubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMvV0tUZXh0SW5wdXRX
aW5kb3dDb250cm9sbGVyLm1tCmluZGV4IDEyYTE1MWUzMWJhNzg2MjJhZmM0N2VlOTUzMGJkODYy
MWFjZDk4MGMuLmI0ODg1NjBiMDdmMDllNzk3YzhlZjkyZGNhYzA4ZGIzZTQ5YjExN2IgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL21hYy9XS1RleHRJbnB1dFdpbmRvd0NvbnRy
b2xsZXIubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvbWFjL1dLVGV4dElucHV0V2lu
ZG93Q29udHJvbGxlci5tbQpAQCAtMjksNiArMjksNyBAQAogI2lmIFVTRShBUFBLSVQpCiAKICNp
bXBvcnQgPFdlYktpdFN5c3RlbUludGVyZmFjZS5oPgorI2ltcG9ydCA8cGFsL3N5c3RlbS9tYWMv
V2ViUGFuZWwuaD4KIAogQGludGVyZmFjZSBXS1RleHRJbnB1dFZpZXcgOiBOU1RleHRWaWV3IHsK
IH0KQEAgLTQ3LDcgKzQ4LDcgQEAgLSAoTlNBcnJheSAqKXZhbGlkQXR0cmlidXRlc0Zvck1hcmtl
ZFRleHQKIAogQGVuZAogCi1AaW50ZXJmYWNlIFdLVGV4dElucHV0UGFuZWwgOiBOU1BhbmVsIHsK
K0BpbnRlcmZhY2UgV0tUZXh0SW5wdXRQYW5lbCA6IFdlYlBhbmVsIHsKICAgICBOU1RleHRWaWV3
ICpfaW5wdXRUZXh0VmlldzsKIH0KIApAQCAtNzQsNyArNzUsNyBAQCAtICh2b2lkKWRlYWxsb2MK
IAogLSAoaWQpaW5pdAogewotICAgIHNlbGYgPSBbc3VwZXIgaW5pdFdpdGhDb250ZW50UmVjdDpO
U1plcm9SZWN0IHN0eWxlTWFzazpXS0dldElucHV0UGFuZWxXaW5kb3dTdHlsZSgpIGJhY2tpbmc6
TlNCYWNraW5nU3RvcmVCdWZmZXJlZCBkZWZlcjpZRVNdOworICAgIHNlbGYgPSBbc3VwZXIgaW5p
dF07CiAgICAgaWYgKCFzZWxmKQogICAgICAgICByZXR1cm4gbmlsOwogICAgIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L21hYy9XZWJTeXN0ZW1J
bnRlcmZhY2UubW0gYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvbWFj
L1dlYlN5c3RlbUludGVyZmFjZS5tbQppbmRleCA0NGRjN2VjYjM2MjBlOGY0NTE0MmViMzdjNzg3
NWFkY2IzYjk0MTJiLi5kMThhNDQwZGQ3MjUzOWM2YTU2OTRiNzQ2N2Y4YTY5MTg4NTFkOTllIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvbWFjL1dl
YlN5c3RlbUludGVyZmFjZS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29y
ZVN1cHBvcnQvbWFjL1dlYlN5c3RlbUludGVyZmFjZS5tbQpAQCAtNTIsNyArNTIsNiBAQCB2b2lk
IEluaXRXZWJDb3JlU3lzdGVtSW50ZXJmYWNlKHZvaWQpCiAjZW5kaWYKICAgICAgICAgSU5JVChD
R0NvbnRleHRJc1BERkNvbnRleHQpOwogI2lmICFQTEFURk9STShJT1MpCi0gICAgICAgIElOSVQo
R2V0V2hlZWxFdmVudERlbHRhcyk7CiAgICAgICAgIElOSVQoR2V0TlNFdmVudEtleUNoYXIpOwog
ICAgICAgICBJTklUKEhpdFRlc3RNZWRpYVVJUGFydCk7CiAgICAgICAgIElOSVQoTWVhc3VyZU1l
ZGlhVUlQYXJ0KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMv
SG9zdGVkL05ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eS5tbSBiL1NvdXJjZS9XZWJLaXRMZWdh
Y3kvbWFjL1BsdWdpbnMvSG9zdGVkL05ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eS5tbQppbmRl
eCBhZTQxYmMxNmMzM2Q2OTY0Zjc0Yzc2ZmEyNDJmYjg5MmExNDkxZmQ1Li4wMTdmYTllNmI5OWIx
YTQ4YTliMzNiYTcxMzY4MzdkNWZhNDYzN2JiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVn
YWN5L21hYy9QbHVnaW5zL0hvc3RlZC9OZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJveHkubW0KKysr
IGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9Ib3N0ZWQvTmV0c2NhcGVQbHVnaW5J
bnN0YW5jZVByb3h5Lm1tCkBAIC01NCwxMCArNTQsMTEgQEAKICNpbXBvcnQgPFdlYkNvcmUvRnJh
bWUuaD4KICNpbXBvcnQgPFdlYkNvcmUvRnJhbWVMb2FkZXIuaD4KICNpbXBvcnQgPFdlYkNvcmUv
RnJhbWVUcmVlLmg+Ci0jaW1wb3J0IDxXZWJDb3JlL1VSTC5oPgorI2ltcG9ydCA8V2ViQ29yZS9Q
bGF0Zm9ybUV2ZW50RmFjdG9yeU1hYy5oPgogI2ltcG9ydCA8V2ViQ29yZS9Qcm94eVNlcnZlci5o
PgogI2ltcG9ydCA8V2ViQ29yZS9TZWN1cml0eU9yaWdpbi5oPgogI2ltcG9ydCA8V2ViQ29yZS9T
Y3JpcHRDb250cm9sbGVyLmg+CisjaW1wb3J0IDxXZWJDb3JlL1VSTC5oPgogI2ltcG9ydCA8V2Vi
Q29yZS9Vc2VyR2VzdHVyZUluZGljYXRvci5oPgogI2ltcG9ydCA8V2ViQ29yZS9ucHJ1bnRpbWVf
aW1wbC5oPgogI2ltcG9ydCA8V2ViQ29yZS9ydW50aW1lX29iamVjdC5oPgpAQCAtNDU5LDcgKzQ2
MCw3IEBAIHZvaWQgTmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5OjprZXlFdmVudChOU1ZpZXcg
KnBsdWdpblZpZXcsIE5TRXZlbnQgKmV2ZW50LCBOCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdHlwZSwgW2V2ZW50IG1vZGlmaWVyRmxhZ3NdLCAKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBjb25zdF9jYXN0PGNoYXIqPihyZWludGVycHJldF9jYXN0
PGNvbnN0IGNoYXIqPihbY2hhcmFjdGVyc0RhdGEgYnl0ZXNdKSksIFtjaGFyYWN0ZXJzRGF0YSBs
ZW5ndGhdLCAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdF9jYXN0
PGNoYXIqPihyZWludGVycHJldF9jYXN0PGNvbnN0IGNoYXIqPihbY2hhcmFjdGVyc0lnbm9yaW5n
TW9kaWZpZXJzRGF0YSBieXRlc10pKSwgW2NoYXJhY3RlcnNJZ25vcmluZ01vZGlmaWVyc0RhdGEg
bGVuZ3RoXSwgCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2V2ZW50IGlz
QVJlcGVhdF0sIFtldmVudCBrZXlDb2RlXSwgV0tHZXROU0V2ZW50S2V5Q2hhcihldmVudCkpOwor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtldmVudCBpc0FSZXBlYXRdLCBb
ZXZlbnQga2V5Q29kZV0sIGtleUNoYXJGb3JFdmVudChldmVudCkpOwogfQogCiB2b2lkIE5ldHNj
YXBlUGx1Z2luSW5zdGFuY2VQcm94eTo6c3ludGhldGljS2V5RG93bldpdGhDb21tYW5kTW9kaWZp
ZXIoaW50IGtleUNvZGUsIGNoYXIgY2hhcmFjdGVyKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dExlZ2FjeS9tYWMvUGx1Z2lucy9Ib3N0ZWQvV2ViVGV4dElucHV0V2luZG93Q29udHJvbGxlci5t
IGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9Ib3N0ZWQvV2ViVGV4dElucHV0V2lu
ZG93Q29udHJvbGxlci5tCmluZGV4IDAwNDAyOTNiNjJkYjNiOGZiNDJjZDVkMzY4NTQ2ZjVjNDlh
OWE4ZjQuLjA4YTcxMTUxZTY5ZGEzMTc1YTFiZDZmNWIyNzY5OWM3N2M4ODdmOWQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMvSG9zdGVkL1dlYlRleHRJbnB1dFdp
bmRvd0NvbnRyb2xsZXIubQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL0hv
c3RlZC9XZWJUZXh0SW5wdXRXaW5kb3dDb250cm9sbGVyLm0KQEAgLTI4LDYgKzI4LDcgQEAKICNp
bXBvcnQgIldlYlRleHRJbnB1dFdpbmRvd0NvbnRyb2xsZXIuaCIKIAogI2ltcG9ydCA8V2ViS2l0
U3lzdGVtSW50ZXJmYWNlLmg+CisjaW1wb3J0IDxwYWwvc3lzdGVtL21hYy9XZWJQYW5lbC5oPgog
CiBAaW50ZXJmYWNlIFdlYlRleHRJbnB1dFZpZXcgOiBOU1RleHRWaWV3IHsKIH0KQEAgLTQ2LDcg
KzQ3LDcgQEAgLSAoTlNBcnJheSAqKXZhbGlkQXR0cmlidXRlc0Zvck1hcmtlZFRleHQKIAogQGVu
ZAogCi1AaW50ZXJmYWNlIFdlYlRleHRJbnB1dFBhbmVsIDogTlNQYW5lbCB7CitAaW50ZXJmYWNl
IFdlYlRleHRJbnB1dFBhbmVsIDogV2ViUGFuZWwgewogICAgIE5TVGV4dFZpZXcgKl9pbnB1dFRl
eHRWaWV3OwogfQogCkBAIC03MCw3ICs3MSw3IEBAIC0gKHZvaWQpZGVhbGxvYwogCiAtIChpZClp
bml0CiB7Ci0gICAgc2VsZiA9IFtzdXBlciBpbml0V2l0aENvbnRlbnRSZWN0Ok5TWmVyb1JlY3Qg
c3R5bGVNYXNrOldLR2V0SW5wdXRQYW5lbFdpbmRvd1N0eWxlKCkgYmFja2luZzpOU0JhY2tpbmdT
dG9yZUJ1ZmZlcmVkIGRlZmVyOllFU107CisgICAgc2VsZiA9IFtzdXBlciBpbml0XTsKICAgICBp
ZiAoIXNlbGYpCiAgICAgICAgIHJldHVybiBuaWw7CiAgICAgCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0TGVnYWN5L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJTeXN0ZW1JbnRlcmZhY2UubW0gYi9T
b3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJTeXN0ZW1JbnRlcmZhY2Uu
bW0KaW5kZXggZDQ1NTE2ZjVlZWUxYzA4MmM5ODI4ZDllNzQ3NGVjOTY4OWM0N2I1OC4uNmRkMGI1
N2RkNGJmMzQzZmU5NjZmMGZiYTYzYzExY2Y0ZjA4ZDkzMiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdExlZ2FjeS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViU3lzdGVtSW50ZXJmYWNlLm1tCisrKyBi
L1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYlN5c3RlbUludGVyZmFj
ZS5tbQpAQCAtNTUsNyArNTUsNiBAQCB2b2lkIEluaXRXZWJDb3JlU3lzdGVtSW50ZXJmYWNlKHZv
aWQpCiAgICAgSU5JVChEcmF3Q2VsbEZvY3VzUmluZ1dpdGhGcmFtZUF0VGltZSk7CiAgICAgSU5J
VChEcmF3TWVkaWFVSVBhcnQpOwogICAgIElOSVQoRHJhd01lZGlhU2xpZGVyVHJhY2spOwotICAg
IElOSVQoR2V0V2hlZWxFdmVudERlbHRhcyk7CiAgICAgSU5JVChHZXROU0V2ZW50S2V5Q2hhcik7
CiAgICAgSU5JVChIaXRUZXN0TWVkaWFVSVBhcnQpOwogICAgIElOSVQoTWVhc3VyZU1lZGlhVUlQ
YXJ0KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViRHlu
YW1pY1Njcm9sbEJhcnNWaWV3Lm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9X
ZWJEeW5hbWljU2Nyb2xsQmFyc1ZpZXcubW0KaW5kZXggNjgwNGUyNzY1MjkyMTY3MTAzYzc1ZDNm
Mjk3ZTc0Y2VhMzIyNTY0MC4uYmIyMGRlNTUwYmFiZjAyMTAyYjBjNDIzM2E3ZDU3Y2IwZTcyYTVm
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJEeW5hbWlj
U2Nyb2xsQmFyc1ZpZXcubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9X
ZWJEeW5hbWljU2Nyb2xsQmFyc1ZpZXcubW0KQEAgLTMxLDYgKzMxLDcgQEAKICNpbXBvcnQgIldl
YkhUTUxWaWV3SW50ZXJuYWwuaCIKICNpbXBvcnQgPFdlYkNvcmUvRnJhbWUuaD4KICNpbXBvcnQg
PFdlYkNvcmUvRnJhbWVWaWV3Lmg+CisjaW1wb3J0IDxXZWJDb3JlL1BsYXRmb3JtRXZlbnRGYWN0
b3J5TWFjLmg+CiAjaW1wb3J0IDxXZWJLaXRTeXN0ZW1JbnRlcmZhY2UuaD4KIAogdXNpbmcgbmFt
ZXNwYWNlIFdlYkNvcmU7CkBAIC01MzUsNyArNTM2LDcgQEAgLSAodm9pZClzY3JvbGxXaGVlbDoo
TlNFdmVudCAqKWV2ZW50CiAgICAgZmxvYXQgZGVsdGFYOwogICAgIGZsb2F0IGRlbHRhWTsKICAg
ICBCT09MIGlzQ29udGludW91czsKLSAgICBXS0dldFdoZWVsRXZlbnREZWx0YXMoZXZlbnQsICZk
ZWx0YVgsICZkZWx0YVksICZpc0NvbnRpbnVvdXMpOworICAgIGdldFdoZWVsRXZlbnREZWx0YXMo
ZXZlbnQsIGRlbHRhWCwgZGVsdGFZLCBpc0NvbnRpbnVvdXMpOwogCiAgICAgTlNFdmVudFBoYXNl
IG1vbWVudHVtUGhhc2UgPSBbZXZlbnQgbW9tZW50dW1QaGFzZV07CiAgICAgQk9PTCBpc0xhdGNo
aW5nRXZlbnQgPSBtb21lbnR1bVBoYXNlICYgTlNFdmVudFBoYXNlQmVnYW4gfHwgbW9tZW50dW1Q
aGFzZSAmIE5TRXZlbnRQaGFzZVN0YXRpb25hcnk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
TGVnYWN5L21hYy9XZWJWaWV3L1dlYkhUTUxWaWV3Lm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9t
YWMvV2ViVmlldy9XZWJIVE1MVmlldy5tbQppbmRleCA4ZmM3ZjYzYzVkYzRlMWVjZDc4NDFlNWY0
Y2RhNzQ2YjQ5YzJlNTg4Li44ZDBkNGQ5MjU0ODBjYjgzYzIwYWU4MTQ1NTQ1NDIzMDA3NGE2OGRi
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkhUTUxWaWV3
Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViSFRNTFZpZXcubW0K
QEAgLTEzMiw2ICsxMzIsNyBAQAogI2ltcG9ydCA8cGFsL3NwaS9jb2NvYS9OU1VSTEZpbGVUeXBl
TWFwcGluZ3NTUEkuaD4KICNpbXBvcnQgPHBhbC9zcGkvbWFjL05TU3BlbGxDaGVja2VyU1BJLmg+
CiAjaW1wb3J0IDxwYWwvc3BpL21hYy9OU1ZpZXdTUEkuaD4KKyNpbXBvcnQgPHBhbC9zcGkvbWFj
L05TV2luZG93U1BJLmg+CiAjaW1wb3J0IDxydW50aW1lL0luaXRpYWxpemVUaHJlYWRpbmcuaD4K
ICNpbXBvcnQgPHd0Zi9CbG9ja09iakNFeGNlcHRpb25zLmg+CiAjaW1wb3J0IDx3dGYvTWFpblRo
cmVhZC5oPgpAQCAtMTQwOSw4ICsxNDEwLDggQEAgLSAodm9pZClfcmVtb3ZlV2luZG93T2JzZXJ2
ZXJzCiAgICAgTlNOb3RpZmljYXRpb25DZW50ZXIgKm5vdGlmaWNhdGlvbkNlbnRlciA9IFtOU05v
dGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXTsKICAgICBbbm90aWZpY2F0aW9uQ2VudGVy
IHJlbW92ZU9ic2VydmVyOnNlbGYgbmFtZTpOU1dpbmRvd0RpZEJlY29tZUtleU5vdGlmaWNhdGlv
biBvYmplY3Q6bmlsXTsKICAgICBbbm90aWZpY2F0aW9uQ2VudGVyIHJlbW92ZU9ic2VydmVyOnNl
bGYgbmFtZTpOU1dpbmRvd0RpZFJlc2lnbktleU5vdGlmaWNhdGlvbiBvYmplY3Q6bmlsXTsKLSAg
ICBbbm90aWZpY2F0aW9uQ2VudGVyIHJlbW92ZU9ic2VydmVyOnNlbGYgbmFtZTpXS1dpbmRvd1dp
bGxPcmRlck9uU2NyZWVuTm90aWZpY2F0aW9uKCkgb2JqZWN0OndpbmRvd107Ci0gICAgW25vdGlm
aWNhdGlvbkNlbnRlciByZW1vdmVPYnNlcnZlcjpzZWxmIG5hbWU6V0tXaW5kb3dXaWxsT3JkZXJP
ZmZTY3JlZW5Ob3RpZmljYXRpb24oKSBvYmplY3Q6d2luZG93XTsKKyAgICBbbm90aWZpY2F0aW9u
Q2VudGVyIHJlbW92ZU9ic2VydmVyOnNlbGYgbmFtZTpOU1dpbmRvd1dpbGxPcmRlck9uU2NyZWVu
Tm90aWZpY2F0aW9uIG9iamVjdDp3aW5kb3ddOworICAgIFtub3RpZmljYXRpb25DZW50ZXIgcmVt
b3ZlT2JzZXJ2ZXI6c2VsZiBuYW1lOk5TV2luZG93V2lsbE9yZGVyT2ZmU2NyZWVuTm90aWZpY2F0
aW9uIG9iamVjdDp3aW5kb3ddOwogICAgIFtub3RpZmljYXRpb25DZW50ZXIgcmVtb3ZlT2JzZXJ2
ZXI6c2VsZiBuYW1lOk5TV2luZG93V2lsbENsb3NlTm90aWZpY2F0aW9uIG9iamVjdDp3aW5kb3dd
OwogICAgIAogICAgIF9wcml2YXRlLT5vYnNlcnZpbmdXaW5kb3dOb3RpZmljYXRpb25zID0gZmFs
c2U7CkBAIC0zNDQ5LDggKzM0NTAsOCBAQCAtICh2b2lkKWFkZFdpbmRvd09ic2VydmVycwogICAg
IE5TTm90aWZpY2F0aW9uQ2VudGVyICpub3RpZmljYXRpb25DZW50ZXIgPSBbTlNOb3RpZmljYXRp
b25DZW50ZXIgZGVmYXVsdENlbnRlcl07CiAgICAgW25vdGlmaWNhdGlvbkNlbnRlciBhZGRPYnNl
cnZlcjpzZWxmIHNlbGVjdG9yOkBzZWxlY3Rvcih3aW5kb3dEaWRCZWNvbWVLZXk6KSBuYW1lOk5T
V2luZG93RGlkQmVjb21lS2V5Tm90aWZpY2F0aW9uIG9iamVjdDpuaWxdOwogICAgIFtub3RpZmlj
YXRpb25DZW50ZXIgYWRkT2JzZXJ2ZXI6c2VsZiBzZWxlY3RvcjpAc2VsZWN0b3Iod2luZG93RGlk
UmVzaWduS2V5OikgbmFtZTpOU1dpbmRvd0RpZFJlc2lnbktleU5vdGlmaWNhdGlvbiBvYmplY3Q6
bmlsXTsKLSAgICBbbm90aWZpY2F0aW9uQ2VudGVyIGFkZE9ic2VydmVyOnNlbGYgc2VsZWN0b3I6
QHNlbGVjdG9yKHdpbmRvd1dpbGxPcmRlck9uU2NyZWVuOikgbmFtZTpXS1dpbmRvd1dpbGxPcmRl
ck9uU2NyZWVuTm90aWZpY2F0aW9uKCkgb2JqZWN0OndpbmRvd107Ci0gICAgW25vdGlmaWNhdGlv
bkNlbnRlciBhZGRPYnNlcnZlcjpzZWxmIHNlbGVjdG9yOkBzZWxlY3Rvcih3aW5kb3dXaWxsT3Jk
ZXJPZmZTY3JlZW46KSBuYW1lOldLV2luZG93V2lsbE9yZGVyT2ZmU2NyZWVuTm90aWZpY2F0aW9u
KCkgb2JqZWN0OndpbmRvd107CisgICAgW25vdGlmaWNhdGlvbkNlbnRlciBhZGRPYnNlcnZlcjpz
ZWxmIHNlbGVjdG9yOkBzZWxlY3Rvcih3aW5kb3dXaWxsT3JkZXJPblNjcmVlbjopIG5hbWU6TlNX
aW5kb3dXaWxsT3JkZXJPblNjcmVlbk5vdGlmaWNhdGlvbiBvYmplY3Q6d2luZG93XTsKKyAgICBb
bm90aWZpY2F0aW9uQ2VudGVyIGFkZE9ic2VydmVyOnNlbGYgc2VsZWN0b3I6QHNlbGVjdG9yKHdp
bmRvd1dpbGxPcmRlck9mZlNjcmVlbjopIG5hbWU6TlNXaW5kb3dXaWxsT3JkZXJPZmZTY3JlZW5O
b3RpZmljYXRpb24gb2JqZWN0OndpbmRvd107CiAgICAgW25vdGlmaWNhdGlvbkNlbnRlciBhZGRP
YnNlcnZlcjpzZWxmIHNlbGVjdG9yOkBzZWxlY3Rvcih3aW5kb3dXaWxsQ2xvc2U6KSBuYW1lOk5T
V2luZG93V2lsbENsb3NlTm90aWZpY2F0aW9uIG9iamVjdDp3aW5kb3ddOwogICAgIAogICAgIF9w
cml2YXRlLT5vYnNlcnZpbmdXaW5kb3dOb3RpZmljYXRpb25zID0gdHJ1ZTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlldy5tbSBiL1NvdXJjZS9XZWJL
aXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQppbmRleCA0NzhjMjFjYTYxODkyODcwMzI2
YWI4YjdlZmUyMzIxYzc5ZDhhNTU1Li5mZTE5MDVhNWRhNzc1NTQzODZkOGY5MThiZDk2M2ZlMGQw
NWNjNjJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZp
ZXcubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCkBA
IC0yMTEsNyArMjExLDkgQEAKICNpbXBvcnQgPHBhbC9zcGkvY2YvQ0ZOZXR3b3JrU1BJLmg+CiAj
aW1wb3J0IDxwYWwvc3BpL2NvY29hL05TVG91Y2hCYXJTUEkuaD4KICNpbXBvcnQgPHBhbC9zcGkv
Y29jb2EvTlNVUkxGaWxlVHlwZU1hcHBpbmdzU1BJLmg+CisjaW1wb3J0IDxwYWwvc3BpL21hYy9O
U1Jlc3BvbmRlclNQSS5oPgogI2ltcG9ydCA8cGFsL3NwaS9tYWMvTlNTcGVsbENoZWNrZXJTUEku
aD4KKyNpbXBvcnQgPHBhbC9zcGkvbWFjL05TV2luZG93U1BJLmg+CiAjaW1wb3J0IDxydW50aW1l
L0FycmF5UHJvdG90eXBlLmg+CiAjaW1wb3J0IDxydW50aW1lL0NhdGNoU2NvcGUuaD4KICNpbXBv
cnQgPHJ1bnRpbWUvRGF0ZUluc3RhbmNlLmg+CkBAIC01ODY2LDkgKzU4NjgsOSBAQCAtICh2b2lk
KWFkZFdpbmRvd09ic2VydmVyc0ZvcldpbmRvdzooTlNXaW5kb3cgKil3aW5kb3cKICAgICAgICAg
W1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSBhZGRPYnNlcnZlcjpzZWxmIHNl
bGVjdG9yOkBzZWxlY3Rvcih3aW5kb3dLZXlTdGF0ZUNoYW5nZWQ6KQogICAgICAgICAgICAgbmFt
ZTpOU1dpbmRvd0RpZFJlc2lnbktleU5vdGlmaWNhdGlvbiBvYmplY3Q6d2luZG93XTsKICAgICAg
ICAgW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSBhZGRPYnNlcnZlcjpzZWxm
IHNlbGVjdG9yOkBzZWxlY3Rvcihfd2luZG93V2lsbE9yZGVyT25TY3JlZW46KQotICAgICAgICAg
ICAgbmFtZTpXS1dpbmRvd1dpbGxPcmRlck9uU2NyZWVuTm90aWZpY2F0aW9uKCkgb2JqZWN0Ondp
bmRvd107CisgICAgICAgICAgICBuYW1lOk5TV2luZG93V2lsbE9yZGVyT25TY3JlZW5Ob3RpZmlj
YXRpb24gb2JqZWN0OndpbmRvd107CiAgICAgICAgIFtbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVm
YXVsdENlbnRlcl0gYWRkT2JzZXJ2ZXI6c2VsZiBzZWxlY3RvcjpAc2VsZWN0b3IoX3dpbmRvd1dp
bGxPcmRlck9mZlNjcmVlbjopCi0gICAgICAgICAgICBuYW1lOldLV2luZG93V2lsbE9yZGVyT2Zm
U2NyZWVuTm90aWZpY2F0aW9uKCkgb2JqZWN0OndpbmRvd107CisgICAgICAgICAgICBuYW1lOk5T
V2luZG93V2lsbE9yZGVyT2ZmU2NyZWVuTm90aWZpY2F0aW9uIG9iamVjdDp3aW5kb3ddOwogICAg
ICAgICBbW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdIGFkZE9ic2VydmVyOnNl
bGYgc2VsZWN0b3I6QHNlbGVjdG9yKF93aW5kb3dEaWRDaGFuZ2VCYWNraW5nUHJvcGVydGllczop
CiAgICAgICAgICAgICBuYW1lOndpbmRvd0RpZENoYW5nZUJhY2tpbmdQcm9wZXJ0aWVzTm90aWZp
Y2F0aW9uIG9iamVjdDp3aW5kb3ddOwogICAgICAgICBbW05TTm90aWZpY2F0aW9uQ2VudGVyIGRl
ZmF1bHRDZW50ZXJdIGFkZE9ic2VydmVyOnNlbGYgc2VsZWN0b3I6QHNlbGVjdG9yKF93aW5kb3dE
aWRDaGFuZ2VTY3JlZW46KQpAQCAtNTg5MCw5ICs1ODkyLDkgQEAgLSAodm9pZClyZW1vdmVXaW5k
b3dPYnNlcnZlcnMKICAgICAgICAgW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVy
XSByZW1vdmVPYnNlcnZlcjpzZWxmCiAgICAgICAgICAgICBuYW1lOk5TV2luZG93RGlkUmVzaWdu
S2V5Tm90aWZpY2F0aW9uIG9iamVjdDp3aW5kb3ddOwogICAgICAgICBbW05TTm90aWZpY2F0aW9u
Q2VudGVyIGRlZmF1bHRDZW50ZXJdIHJlbW92ZU9ic2VydmVyOnNlbGYKLSAgICAgICAgICAgIG5h
bWU6V0tXaW5kb3dXaWxsT3JkZXJPblNjcmVlbk5vdGlmaWNhdGlvbigpIG9iamVjdDp3aW5kb3dd
OworICAgICAgICAgICAgbmFtZTpOU1dpbmRvd1dpbGxPcmRlck9uU2NyZWVuTm90aWZpY2F0aW9u
IG9iamVjdDp3aW5kb3ddOwogICAgICAgICBbW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRD
ZW50ZXJdIHJlbW92ZU9ic2VydmVyOnNlbGYKLSAgICAgICAgICAgIG5hbWU6V0tXaW5kb3dXaWxs
T3JkZXJPZmZTY3JlZW5Ob3RpZmljYXRpb24oKSBvYmplY3Q6d2luZG93XTsKKyAgICAgICAgICAg
IG5hbWU6TlNXaW5kb3dXaWxsT3JkZXJPZmZTY3JlZW5Ob3RpZmljYXRpb24gb2JqZWN0OndpbmRv
d107CiAgICAgICAgIFtbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl0gcmVtb3Zl
T2JzZXJ2ZXI6c2VsZgogICAgICAgICAgICAgbmFtZTp3aW5kb3dEaWRDaGFuZ2VCYWNraW5nUHJv
cGVydGllc05vdGlmaWNhdGlvbiBvYmplY3Q6d2luZG93XTsKICAgICAgICAgW1tOU05vdGlmaWNh
dGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSByZW1vdmVPYnNlcnZlcjpzZWxmCkBAIC01OTIzLDcg
KzU5MjUsNyBAQCAtICh2b2lkKXZpZXdXaWxsTW92ZVRvV2luZG93OihOU1dpbmRvdyAqKXdpbmRv
dwogICAgICAgICAvLyBUaGUgZm9sbG93aW5nIGFyZSBleHBlbnNpdmUgZW5vdWdoIHRoYXQgd2Ug
ZG9uJ3Qgd2FudCB0byBjYWxsIHRoZW0gb3ZlcgogICAgICAgICAvLyBhbmQgb3Zlciwgc28gZG8g
dGhlbSB3aGVuIHdlIG1vdmUgaW50byBhIHdpbmRvdy4KICAgICAgICAgW3dpbmRvdyBzZXRBY2Nl
cHRzTW91c2VNb3ZlZEV2ZW50czpZRVNdOwotICAgICAgICBXS1NldE5TV2luZG93U2hvdWxkUG9z
dEV2ZW50Tm90aWZpY2F0aW9ucyh3aW5kb3csIFlFUyk7CisgICAgICAgIFt3aW5kb3cgX3NldFNo
b3VsZFBvc3RFdmVudE5vdGlmaWNhdGlvbnM6WUVTXTsKICAgICB9IGVsc2UgaWYgKCFfcHJpdmF0
ZS0+Y2xvc2VkKSB7CiAgICAgICAgIF9wcml2YXRlLT5wYWdlLT5zZXRDYW5TdGFydE1lZGlhKGZh
bHNlKTsKICAgICAgICAgX3ByaXZhdGUtPnBhZ2UtPnNldElzSW5XaW5kb3coZmFsc2UpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>319573</attachid>
            <date>2017-08-31 21:37:27 -0700</date>
            <delta_ts>2017-08-31 23:00:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-176175-20170831213727.patch</filename>
            <type>text/plain</type>
            <size>39502</size>
            <attacher name="Andy Estes">aestes</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIxMzgxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzVhYmE3NzU1NjhiNjgz
ZmZjOWVjZWE4MzhlNWFmOGRlMTVjOTY4Ni4uZTA3MTA5MzdiY2NhOGVhMTY1ZWMzZjY0MjM1ZWY5
MTA4OTU5M2E3MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDE3LTA4LTMxICBBbmR5
IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNvbT4KKworICAgICAgICBbTWFjXSBVcHN0cmVhbSBBcHBL
aXQtcmVsYXRlZCBXZWJLaXRTeXN0ZW1JbnRlcmZhY2UgZnVuY3Rpb25zCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzYxNzUKKworICAgICAgICBSZXZp
ZXdlZCBieSBCcmFkeSBFaWRzb24uCisKKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9XZWJDb3Jl
LnhjY29uZmlnOiBBZGRlZCAtT2JqQyB0byBPVEhFUl9MREZMQUdTIHNvIHRoYXQgT2JqZWN0aXZl
LUMgY2xhc3NlcworICAgICAgICBpbiBQQUwgYXJlIGV4cG9ydGVkIGJ5IFdlYkNvcmUgZXZlbiBp
ZiBXZWJDb3JlIGRvZXNuJ3QgdXNlIHRoZW0uCisgICAgICAgICogcGxhdGZvcm0vbWFjL1BsYXRm
b3JtRXZlbnRGYWN0b3J5TWFjLmg6CisgICAgICAgICogcGxhdGZvcm0vbWFjL1BsYXRmb3JtRXZl
bnRGYWN0b3J5TWFjLm1tOgorICAgICAgICAoV2ViQ29yZTo6Z2V0V2hlZWxFdmVudERlbHRhcyk6
CisgICAgICAgIChXZWJDb3JlOjprZXlDaGFyRm9yRXZlbnQpOgorICAgICAgICAoV2ViQ29yZTo6
UGxhdGZvcm1XaGVlbEV2ZW50QnVpbGRlcjo6UGxhdGZvcm1XaGVlbEV2ZW50QnVpbGRlcik6Cisg
ICAgICAgICogcGxhdGZvcm0vbWFjL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2UuaDoKKyAgICAgICAg
KiBwbGF0Zm9ybS9tYWMvV2ViQ29yZVN5c3RlbUludGVyZmFjZS5tbToKKwogMjAxNy0wOC0zMCAg
QW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CiAKICAgICAgICAgW01hY10gVXBzdHJlYW0g
QWNjZXNzaWJpbGl0eS1yZWxhdGVkIFdlYktpdFN5c3RlbUludGVyZmFjZSBmdW5jdGlvbnMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9Q
QUwvQ2hhbmdlTG9nCmluZGV4IDdiNGI2MDFmZTRlNWUxNTBmODE4OTc0NDU3YzY5ZWViOWI2MDEz
NTEuLmQ3YWE1Mzc5ODdlOGU2NzA0MmJjNWM0NTIxNDkzYmE2NDUyZmY4NWIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML0No
YW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDE3LTA4LTMxICBBbmR5IEVzdGVzICA8YWVzdGVz
QGFwcGxlLmNvbT4KKworICAgICAgICBbTWFjXSBVcHN0cmVhbSBBcHBLaXQtcmVsYXRlZCBXZWJL
aXRTeXN0ZW1JbnRlcmZhY2UgZnVuY3Rpb25zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xNzYxNzUKKworICAgICAgICBSZXZpZXdlZCBieSBCcmFkeSBF
aWRzb24uCisKKyAgICAgICAgKiBQQUwueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAg
ICAgKiBwYWwvc3BpL21hYy9ISVRvb2xib3hTUEkuaDoKKyAgICAgICAgKiBwYWwvc3BpL21hYy9O
U1Jlc3BvbmRlclNQSS5oOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9t
YWMvTlNXaW5kb3dTUEkuaC4KKyAgICAgICAgKiBwYWwvc3BpL21hYy9OU1dpbmRvd1NQSS5oOgor
ICAgICAgICAqIHBhbC9zeXN0ZW0vbWFjL1dlYlBhbmVsLmg6IENvcGllZCBmcm9tIFNvdXJjZS9X
ZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9OU1dpbmRvd1NQSS5oLgorICAgICAgICAqIHBhbC9zeXN0
ZW0vbWFjL1dlYlBhbmVsLm1tOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3Nw
aS9tYWMvSElUb29sYm94U1BJLmguCisgICAgICAgICgtW1dlYlBhbmVsIGluaXRdKToKKwogMjAx
Ny0wOC0zMCAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CiAKICAgICAgICAgW01hY10g
VXBzdHJlYW0gQWNjZXNzaWJpbGl0eS1yZWxhdGVkIFdlYktpdFN5c3RlbUludGVyZmFjZSBmdW5j
dGlvbnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktp
dC9DaGFuZ2VMb2cKaW5kZXggYTg2NjZmMzM4NTM0MWQzNTZkN2EwYzcxMzFlYTJhZmY2ODE0YTY4
Yi4uMGVhNWVhYmRhZTk5Y2IwZDE1NjMwNGRhY2M1YTk4MTFmOGE4YWYzNiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwyMCBAQAorMjAxNy0wOC0zMSAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+
CisKKyAgICAgICAgW01hY10gVXBzdHJlYW0gQXBwS2l0LXJlbGF0ZWQgV2ViS2l0U3lzdGVtSW50
ZXJmYWNlIGZ1bmN0aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTc2MTc1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQnJhZHkgRWlkc29uLgorCisg
ICAgICAgICogUGx1Z2luUHJvY2Vzcy9tYWMvUGx1Z2luUHJvY2Vzc01hYy5tbToKKyAgICAgICAg
KFdlYktpdDo6aW5pdGlhbGl6ZUNvY29hT3ZlcnJpZGVzKToKKyAgICAgICAgKiBTaGFyZWQvbWFj
L1dlYkV2ZW50RmFjdG9yeS5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViRXZlbnRGYWN0b3J5Ojpj
cmVhdGVXZWJXaGVlbEV2ZW50KToKKyAgICAgICAgKFdlYktpdDo6V2ViRXZlbnRGYWN0b3J5Ojpj
cmVhdGVXZWJLZXlib2FyZEV2ZW50KToKKyAgICAgICAgKiBVSVByb2Nlc3MvbWFjL1dLVGV4dElu
cHV0V2luZG93Q29udHJvbGxlci5tbToKKyAgICAgICAgKC1bV0tUZXh0SW5wdXRQYW5lbCBpbml0
XSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViU3lzdGVtSW50
ZXJmYWNlLm1tOgorICAgICAgICAoSW5pdFdlYkNvcmVTeXN0ZW1JbnRlcmZhY2UpOgorCiAyMDE3
LTA4LTMwICBBbmR5IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNvbT4KIAogICAgICAgICBbTWFjXSBV
cHN0cmVhbSBBY2Nlc3NpYmlsaXR5LXJlbGF0ZWQgV2ViS2l0U3lzdGVtSW50ZXJmYWNlIGZ1bmN0
aW9ucwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nIGIvU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCmluZGV4IGJkZjVkMzhhZTdlNWI3NjE0MDli
M2QxMDU0ZDg0MzgzODY4OWZiZGEuLmM4NTNmMzgxMDg5NmM2MTk0ZDFhOTliODVhZDRlNTYzMTkw
MWM2MDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZworKysg
Yi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNiBAQAorMjAx
Ny0wOC0zMSAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CisKKyAgICAgICAgW01hY10g
VXBzdHJlYW0gQXBwS2l0LXJlbGF0ZWQgV2ViS2l0U3lzdGVtSW50ZXJmYWNlIGZ1bmN0aW9ucwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc2MTc1CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgQnJhZHkgRWlkc29uLgorCisgICAgICAgICogUGx1Z2lucy9I
b3N0ZWQvTmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5Lm1tOgorICAgICAgICAoV2ViS2l0OjpO
ZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJveHk6OmtleUV2ZW50KToKKyAgICAgICAgKiBQbHVnaW5z
L0hvc3RlZC9XZWJUZXh0SW5wdXRXaW5kb3dDb250cm9sbGVyLm06CisgICAgICAgICgtW1dlYlRl
eHRJbnB1dFBhbmVsIGluaXRdKToKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJTeXN0ZW1J
bnRlcmZhY2UubW06CisgICAgICAgIChJbml0V2ViQ29yZVN5c3RlbUludGVyZmFjZSk6CisgICAg
ICAgICogV2ViVmlldy9XZWJEeW5hbWljU2Nyb2xsQmFyc1ZpZXcubW06CisgICAgICAgICgtW1dl
YkR5bmFtaWNTY3JvbGxCYXJzVmlldyBzY3JvbGxXaGVlbDpdKToKKyAgICAgICAgKiBXZWJWaWV3
L1dlYkhUTUxWaWV3Lm1tOgorICAgICAgICAoLVtXZWJIVE1MVmlldyBfcmVtb3ZlV2luZG93T2Jz
ZXJ2ZXJzXSk6CisgICAgICAgICgtW1dlYkhUTUxWaWV3IGFkZFdpbmRvd09ic2VydmVyc10pOgor
ICAgICAgICAqIFdlYlZpZXcvV2ViVmlldy5tbToKKyAgICAgICAgKC1bV2ViVmlldyBhZGRXaW5k
b3dPYnNlcnZlcnNGb3JXaW5kb3c6XSk6CisgICAgICAgICgtW1dlYlZpZXcgcmVtb3ZlV2luZG93
T2JzZXJ2ZXJzXSk6CisgICAgICAgICgtW1dlYlZpZXcgdmlld1dpbGxNb3ZlVG9XaW5kb3c6XSk6
CisKIDIwMTctMDgtMzAgIEFuZHkgRXN0ZXMgIDxhZXN0ZXNAYXBwbGUuY29tPgogCiAgICAgICAg
IFtNYWNdIFVwc3RyZWFtIEFjY2Vzc2liaWxpdHktcmVsYXRlZCBXZWJLaXRTeXN0ZW1JbnRlcmZh
Y2UgZnVuY3Rpb25zCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9X
ZWJDb3JlLnhjY29uZmlnIGIvU291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvV2ViQ29yZS54
Y2NvbmZpZwppbmRleCAyYTBhY2Y3YWUyNzhjNjA5ODUxODBmOTg2Yzc1MWMzNmRmYmFhZGQ5Li4z
NWZjM2U3OTVmZjhhMjljYjAzMWMwNTkzYzI2YmViY2RkZjNlNDQ3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9XZWJDb3JlLnhjY29uZmlnCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL0NvbmZpZ3VyYXRpb25zL1dlYkNvcmUueGNjb25maWcKQEAgLTc3LDcgKzc3LDcgQEAg
TElCV0VCUlRDX0xJQlJBUllfRElSX1VTRV9PVkVSUklERV9GUkFNRVdPUktTX0RJUl9OTyA9ICQo
V0VCQ09SRV9GUkFNRVdPUktTX0RJUikKIExJQldFQlJUQ19MSUJSQVJZX0RJUl9VU0VfT1ZFUlJJ
REVfRlJBTUVXT1JLU19ESVJfWUVTID0gJChXS19PVkVSUklERV9GUkFNRVdPUktTX0RJUik7CiAK
IE9USEVSX0xERkxBR1MgPSAkKGluaGVyaXRlZCkgJChXS19SRUxPQ0FUQUJMRV9GUkFNRVdPUktf
TERGTEFHUykgJChXS19VTkRFRklORURfU1lNQk9MU19MREZMQUdTKSAkKE9USEVSX0xERkxBR1Nf
UExBVEZPUk0pOwotT1RIRVJfTERGTEFHU19CQVNFID0gLWxzcWxpdGUzIC1sb2JqYyAtbEFOR0xF
IC1mcmFtZXdvcmsgQ29yZUF1ZGlvIC1mcmFtZXdvcmsgTWV0YWwgLWFsbG93YWJsZV9jbGllbnQg
V2ViQ29yZVRlc3RTdXBwb3J0IC1hbGxvd2FibGVfY2xpZW50IFdlYktpdExlZ2FjeTsKK09USEVS
X0xERkxBR1NfQkFTRSA9IC1sc3FsaXRlMyAtbG9iamMgLWxBTkdMRSAtZnJhbWV3b3JrIENvcmVB
dWRpbyAtZnJhbWV3b3JrIE1ldGFsIC1hbGxvd2FibGVfY2xpZW50IFdlYkNvcmVUZXN0U3VwcG9y
dCAtYWxsb3dhYmxlX2NsaWVudCBXZWJLaXRMZWdhY3kgLU9iakM7CiAvLyBGSVhNRTogUmVkdWNl
IHRoZSBudW1iZXIgb2YgYWxsb3dhYmxlX2NsaWVudCA8cmRhcjovL3Byb2JsZW0vMzE4MjM5Njk+
CiBPVEhFUl9MREZMQUdTX0JBU0VfaW9zID0gJChPVEhFUl9MREZMQUdTX0JBU0UpIC1mcmFtZXdv
cmsgQ0ZOZXR3b3JrIC1mcmFtZXdvcmsgQ29yZUdyYXBoaWNzIC1mcmFtZXdvcmsgQ29yZVRleHQg
LWZyYW1ld29yayBGb3VuZGF0aW9uIC1mcmFtZXdvcmsgSW1hZ2VJTyAtZnJhbWV3b3JrIE1vYmls
ZUNvcmVTZXJ2aWNlcyAtZnJhbWV3b3JrIE9wZW5HTEVTIC1sTW9iaWxlR2VzdGFsdCAkKFdLX0lP
U19CSU5DT01QQVRfTERGTEFHUykgLWFsbG93YWJsZV9jbGllbnQgV2ViS2l0IC1hbGxvd2FibGVf
Y2xpZW50IGlUdW5lc1UgLWFsbG93YWJsZV9jbGllbnQgQ2FzYWJsYW5jYSAtYWxsb3dhYmxlX2Ns
aWVudCBSZW1vdGUgLWFsbG93YWJsZV9jbGllbnQgVFZCb29rcyAtYWxsb3dhYmxlX2NsaWVudCBE
dW1wUmVuZGVyVHJlZSAtYWxsb3dhYmxlX2NsaWVudCBXZWJLaXRUZXN0UnVubmVyIC1hbGxvd2Fi
bGVfY2xpZW50IFRlc3RXZWJLaXRBUEk7CiBPVEhFUl9MREZMQUdTX1BMQVRGT1JNW3Nkaz1pcGhv
bmVvcypdID0gJChPVEhFUl9MREZMQUdTX0JBU0VfaW9zKSAtZnJhbWV3b3JrIElPU3VyZmFjZSAt
ZnJhbWV3b3JrIEdyYXBoaWNzU2VydmljZXMgJChMSUJXRUJSVENfTERGTEFHUyk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9T
b3VyY2UvV2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggZDk4
NThmOWVlMmI0MWYwMDU5MzcxYWU5MGNiMmJmZGRkYTNkMGI4OC4uOGRkNWE2YjM2NzkyYTI2MWZi
ZTUzOTkzMDQ5NmY5MTc0YjdmMDU1MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML1BB
TC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMTAxLDYgKzEwMSw5IEBACiAJCUExMDI2NTg5
MUY1Njc0N0EwMEI0Qzg0NCAvKiBISVRvb2xib3hTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExMDI2NTg4MUY1Njc0N0EwMEI0Qzg0NCAvKiBISVRv
b2xib3hTUEkuaCAqLzsgfTsKIAkJQTEwMjY1OEIxRjU2NzQ4QzAwQjRDODQ0IC8qIFF1aWNrRHJh
d1NQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTEw
MjY1OEExRjU2NzQ4QzAwQjRDODQ0IC8qIFF1aWNrRHJhd1NQSS5oICovOyB9OwogCQlBMTAyNjU4
RTFGNTY3RTlEMDBCNEM4NDQgLyogSElTZXJ2aWNlc1NQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTEwMjY1OEQxRjU2N0U5RDAwQjRDODQ0IC8qIEhJ
U2VydmljZXNTUEkuaCAqLzsgfTsKKwkJQTEwODI2RjExRjU3M0JDQTAwNDc3MkFDIC8qIE5TUmVz
cG9uZGVyU1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBBMTA4MjZGMDFGNTczQkNBMDA0NzcyQUMgLyogTlNSZXNwb25kZXJTUEkuaCAqLzsgfTsKKwkJ
QTEwODI2RjkxRjU3NjI5MjAwNDc3MkFDIC8qIFdlYlBhbmVsLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMTA4MjZGNzFGNTc2MjkyMDA0NzcyQUMgLyog
V2ViUGFuZWwuaCAqLzsgfTsKKwkJQTEwODI2RkExRjU3NjI5MjAwNDc3MkFDIC8qIFdlYlBhbmVs
Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTEwODI2
RjgxRjU3NjI5MjAwNDc3MkFDIC8qIFdlYlBhbmVsLm1tICovOyB9OwogCQlBMUY1NURDRjFGNTUy
OEVDMDBFREI3NUYgLyogTWV0YWRhdGFTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEExRjU1RENFMUY1NTI4RUMwMEVEQjc1RiAvKiBNZXRhZGF0YVNQ
SS5oICovOyB9OwogCQlBMzBENDEyMTFGMEREMEVBMDBCNzE5NTQgLyogS2lsbFJpbmcuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEEzMEQ0MTFFMUYwREQw
RUEwMEI3MTk1NCAvKiBLaWxsUmluZy5oICovOyB9OwogCQlBMzBENDEyMjFGMEREMEVBMDBCNzE5
NTQgLyogS2lsbFJpbmdOb25lLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEEzMEQ0MTFGMUYwREQwRUEwMEI3MTk1NCAvKiBLaWxsUmluZ05vbmUuY3Bw
ICovOyB9OwpAQCAtMjE3LDYgKzIyMCw5IEBACiAJCUExMDI2NTg4MUY1Njc0N0EwMEI0Qzg0NCAv
KiBISVRvb2xib3hTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSElUb29s
Ym94U1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUExMDI2NThBMUY1Njc0OEMw
MEI0Qzg0NCAvKiBRdWlja0RyYXdTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gUXVpY2tEcmF3U1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUExMDI2NThE
MUY1NjdFOUQwMEI0Qzg0NCAvKiBISVNlcnZpY2VzU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhJU2Vy
dmljZXNTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQTEwODI2RjAxRjU3M0JD
QTAwNDc3MkFDIC8qIE5TUmVzcG9uZGVyU1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5TUmVzcG9uZGVy
U1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUExMDgyNkY3MUY1NzYyOTIwMDQ3
NzJBQyAvKiBXZWJQYW5lbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJQYW5lbC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlBMTA4MjZGODFGNTc2MjkyMDA0NzcyQUMgLyogV2ViUGFuZWwu
bW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXZWJQYW5lbC5tbTsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJQTFGNTVEQ0UxRjU1MjhFQzAwRURCNzVGIC8qIE1ldGFkYXRhU1BJLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IE1ldGFkYXRhU1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CUEzMEQ0MTFFMUYwREQwRUEwMEI3MTk1NCAvKiBLaWxsUmluZy5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBLaWxsUmluZy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQlBMzBENDExRjFGMEREMEVBMDBCNzE5NTQgLyogS2lsbFJpbmdOb25lLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEtpbGxSaW5nTm9uZS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CkBAIC0zNTMsNiArMzU5LDcgQEAKIAkJCQkwQzc3ODU3OTFGNDUxMzBG
MDBGNEVCQjYgLyogTlNNZW51U1BJLmggKi8sCiAJCQkJMEM3Nzg1N0ExRjQ1MTMwRjAwRjRFQkI2
IC8qIE5TUGFzdGVib2FyZFNQSS5oICovLAogCQkJCTBDNzc4NTdCMUY0NTEzMEYwMEY0RUJCNiAv
KiBOU1BvcG92ZXJTUEkuaCAqLywKKwkJCQlBMTA4MjZGMDFGNTczQkNBMDA0NzcyQUMgLyogTlNS
ZXNwb25kZXJTUEkuaCAqLywKIAkJCQkwQzc3ODU3QzFGNDUxMzBGMDBGNEVCQjYgLyogTlNTY3Jv
bGxlckltcFNQSS5oICovLAogCQkJCTBDNzc4NTdEMUY0NTEzMEYwMEY0RUJCNiAvKiBOU1Njcm9s
bGluZ0lucHV0RmlsdGVyU1BJLmggKi8sCiAJCQkJMEM3Nzg1N0UxRjQ1MTMwRjAwRjRFQkI2IC8q
IE5TU2Nyb2xsaW5nTW9tZW50dW1DYWxjdWxhdG9yU1BJLmggKi8sCkBAIC00NzMsNiArNDgwLDgg
QEAKIAkJCQlBMzc4OEU5RDFGMDVCNzhFMDA2Nzk0MjUgLyogU291bmRNYWMubW0gKi8sCiAJCQkJ
QTNBQjZFNjIxRjNEMjE3RjAwOUMxNEIxIC8qIFN5c3RlbVNsZWVwTGlzdGVuZXJNYWMuaCAqLywK
IAkJCQlBM0FCNkU2MzFGM0QyMTdGMDA5QzE0QjEgLyogU3lzdGVtU2xlZXBMaXN0ZW5lck1hYy5t
bSAqLywKKwkJCQlBMTA4MjZGNzFGNTc2MjkyMDA0NzcyQUMgLyogV2ViUGFuZWwuaCAqLywKKwkJ
CQlBMTA4MjZGODFGNTc2MjkyMDA0NzcyQUMgLyogV2ViUGFuZWwubW0gKi8sCiAJCQkpOwogCQkJ
cGF0aCA9IG1hYzsKIAkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CkBAIC01NDYsNiArNTU1LDcg
QEAKIAkJCQkwQzc3ODU5MjFGNDUxMzBGMDBGNEVCQjYgLyogTlNNZW51U1BJLmggaW4gSGVhZGVy
cyAqLywKIAkJCQkwQzc3ODU5MzFGNDUxMzBGMDBGNEVCQjYgLyogTlNQYXN0ZWJvYXJkU1BJLmgg
aW4gSGVhZGVycyAqLywKIAkJCQkwQzc3ODU5NDFGNDUxMzBGMDBGNEVCQjYgLyogTlNQb3BvdmVy
U1BJLmggaW4gSGVhZGVycyAqLywKKwkJCQlBMTA4MjZGMTFGNTczQkNBMDA0NzcyQUMgLyogTlNS
ZXNwb25kZXJTUEkuaCBpbiBIZWFkZXJzICovLAogCQkJCTBDNzc4NTk1MUY0NTEzMEYwMEY0RUJC
NiAvKiBOU1Njcm9sbGVySW1wU1BJLmggaW4gSGVhZGVycyAqLywKIAkJCQkwQzc3ODU5NjFGNDUx
MzBGMDBGNEVCQjYgLyogTlNTY3JvbGxpbmdJbnB1dEZpbHRlclNQSS5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJMEM3Nzg1OTcxRjQ1MTMwRjAwRjRFQkI2IC8qIE5TU2Nyb2xsaW5nTW9tZW50dW1DYWxj
dWxhdG9yU1BJLmggaW4gSGVhZGVycyAqLywKQEAgLTU4MCw2ICs1OTAsNyBAQAogCQkJCTBDNzc4
NUExMUY0NTEzMEYwMEY0RUJCNiAvKiBUVUNhbGxTUEkuaCBpbiBIZWFkZXJzICovLAogCQkJCTBD
NUFGOTIyMUY0M0E0QzcwMDJFQUMwMiAvKiBVSUtpdFNQSS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
MEMyREExNTkxRjNCRUI0OTAwREJDMzE3IC8qIFdlYkZpbHRlckV2YWx1YXRvclNQSS5oIGluIEhl
YWRlcnMgKi8sCisJCQkJQTEwODI2RjkxRjU3NjI5MjAwNDc3MkFDIC8qIFdlYlBhbmVsLmggaW4g
SGVhZGVycyAqLywKIAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5n
ID0gMDsKIAkJfTsKQEAgLTY3OCw2ICs2ODksNyBAQAogCQkJCUEzNzg4RTlDMUYwNUI3ODIwMDY3
OTQyNSAvKiBTb3VuZE5vbmUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTNBQjZFNTcxRjNEMURE
QjAwOUMxNEIxIC8qIFN5c3RlbVNsZWVwTGlzdGVuZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
QTNBQjZFNjUxRjNEMjE3RjAwOUMxNEIxIC8qIFN5c3RlbVNsZWVwTGlzdGVuZXJNYWMubW0gaW4g
U291cmNlcyAqLywKKwkJCQlBMTA4MjZGQTFGNTc2MjkyMDA0NzcyQUMgLyogV2ViUGFuZWwubW0g
aW4gU291cmNlcyAqLywKIAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNz
aW5nID0gMDsKIAkJfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21h
Yy9ISVRvb2xib3hTUEkuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL21hYy9ISVRvb2xi
b3hTUEkuaAppbmRleCAwMDM0ODc3NzcyZGNjNThmMDJhMTY3OGE3NmNlMmZhMDViOGFmYWNiLi5h
ZjhmZTYzMGY1Y2NjNzE2OGJjM2Q3YzlhZTczMmQxOTMyOTIzNmZhIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9tYWMvSElUb29sYm94U1BJLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvUEFML3BhbC9zcGkvbWFjL0hJVG9vbGJveFNQSS5oCkBAIC0zNyw2ICszNyw5IEBACiAK
IHR5cGVkZWYgc3RydWN0IF9fVFNNSW5wdXRTb3VyY2UqIFRTTUlucHV0U291cmNlUmVmOwogdHlw
ZWRlZiBDRlN0cmluZ1JlZiBUU01JbnB1dFNvdXJjZVByb3BlcnR5VGFnOwordHlwZWRlZiBzdHJ1
Y3QgT3BhcXVlRXZlbnRSZWYqIEV2ZW50UmVmOwordHlwZWRlZiBPU1R5cGUgRXZlbnRQYXJhbU5h
bWU7Cit0eXBlZGVmIE9TVHlwZSBFdmVudFBhcmFtVHlwZTsKIAogV1RGX0VYVEVSTl9DX0JFR0lO
CiAKQEAgLTQ1LDUgKzQ4LDYgQEAgQ0dXaW5kb3dJRCBHZXROYXRpdmVXaW5kb3dGcm9tV2luZG93
UmVmKFdpbmRvd1JlZik7CiBPU1N0YXR1cyBUU01Qcm9jZXNzUmF3S2V5RXZlbnQoRXZlbnRSZWYp
OwogRXZlbnRSZWYgR2V0Q3VycmVudEV2ZW50KCk7CiBDRlR5cGVSZWYgVFNNR2V0SW5wdXRTb3Vy
Y2VQcm9wZXJ0eShUU01JbnB1dFNvdXJjZVJlZiwgVFNNSW5wdXRTb3VyY2VQcm9wZXJ0eVRhZyk7
CitPU1N0YXR1cyBHZXRFdmVudFBhcmFtZXRlcihFdmVudFJlZiwgRXZlbnRQYXJhbU5hbWUgaW5O
YW1lLCBFdmVudFBhcmFtVHlwZSBpbkRlc2lyZWRUeXBlLCBFdmVudFBhcmFtVHlwZSogb3V0QWN0
dWFsVHlwZSwgQnl0ZUNvdW50IGluQnVmZmVyU2l6ZSwgQnl0ZUNvdW50KiBvdXRBY3R1YWxTaXpl
LCB2b2lkKiBvdXREYXRhKTsKIAogV1RGX0VYVEVSTl9DX0VORApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvUEFML3BhbC9zcGkvbWFjL05TUmVzcG9uZGVyU1BJLmggYi9Tb3VyY2UvV2ViQ29y
ZS9QQUwvcGFsL3NwaS9tYWMvTlNSZXNwb25kZXJTUEkuaApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mZWQxYTc5NTI3
ZjcyZThjMDc3MTNkM2ZlODIwMjFkMTU2MDdiZjNkCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L1dlYkNvcmUvUEFML3BhbC9zcGkvbWFjL05TUmVzcG9uZGVyU1BJLmgKQEAgLTAsMCArMSw0MCBA
QAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorICovCisKKyNpZiBQTEFURk9STShNQUMpCisKKyNpZiBVU0UoQVBQTEVfSU5URVJO
QUxfU0RLKQorCisjaW1wb3J0IDxBcHBLaXQvTlNSZXNwb25kZXJfUHJpdmF0ZS5oPgorCisjZWxz
ZQorCitAaW50ZXJmYWNlIE5TUmVzcG9uZGVyICgpCistICh2b2lkKV9zZXRTaG91bGRQb3N0RXZl
bnROb3RpZmljYXRpb25zOihCT09MKXBvc3ROb3RpZmljYXRpb25zOworQGVuZAorCisjZW5kaWYK
KworI2VuZGlmIC8vIFBMQVRGT1JNKE1BQykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BB
TC9wYWwvc3BpL21hYy9OU1dpbmRvd1NQSS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkv
bWFjL05TV2luZG93U1BJLmgKaW5kZXggYmFiODQwMGYwNDlkOTRiOTJkZWZlYTlhZTk1MzE2MmZm
MjE1ODk0My4uYWE4MTI1NWQ4ZWJiZjEwM2E3ZjI5MTE5MzNhMDA0NzgzMzg2NTU1NSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvbWFjL05TV2luZG93U1BJLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvbWFjL05TV2luZG93U1BJLmgKQEAgLTQyLDkgKzQy
LDE0IEBACiBAZW5kCiAKIGVudW0geworICAgIE5TU2lkZVV0aWxpdHlXaW5kb3dNYXNrID0gMSA8
PCA5LAorICAgIE5TU21hbGxXaW5kb3dNYXNrID0gMSA8PCAxMCwKICAgICBfTlNDYXJib25XaW5k
b3dNYXNrID0gMSA8PCAyNSwKIH07CiAKICNlbmRpZgogCitleHRlcm4gTlNTdHJpbmcgKk5TV2lu
ZG93V2lsbE9yZGVyT25TY3JlZW5Ob3RpZmljYXRpb247CitleHRlcm4gTlNTdHJpbmcgKk5TV2lu
ZG93V2lsbE9yZGVyT2ZmU2NyZWVuTm90aWZpY2F0aW9uOworCiAjZW5kaWYgLy8gUExBVEZPUk0o
TUFDKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zeXN0ZW0vbWFjL1dlYlBh
bmVsLmggYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3N5c3RlbS9tYWMvV2ViUGFuZWwuaApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi45MDM1MTYzZDlkYmFlZTMxZDk4MTEyMjI1MTYyZGQzOGJmODY1NjllCi0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zeXN0ZW0vbWFjL1dlYlBhbmVsLmgK
QEAgLTAsMCArMSwzNiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNyBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFy
ZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5E
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpZiBQTEFURk9STShNQUMpCisKKyNpbXBv
cnQgPEFwcEtpdC9BcHBLaXQuaD4KKworUEFMX0VYUE9SVCBAaW50ZXJmYWNlIFdlYlBhbmVsIDog
TlNQYW5lbAorCistIChpbnN0YW5jZXR5cGUpaW5pdDsKKworQGVuZAorCisjZW5kaWYKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3lzdGVtL21hYy9XZWJQYW5lbC5tbSBiL1Nv
dXJjZS9XZWJDb3JlL1BBTC9wYWwvc3lzdGVtL21hYy9XZWJQYW5lbC5tbQpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4z
MTdiZGEwMmU3YjdlYjI3YTliZDJiNTk3OTU2ZjU0MTJkYWNmMTI2Ci0tLSAvZGV2L251bGwKKysr
IGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zeXN0ZW0vbWFjL1dlYlBhbmVsLm1tCkBAIC0wLDAg
KzEsNDcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0Ogor
ICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhl
CisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
QVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9S
IEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9S
CisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBP
RiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgor
ICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KKyAqLworCisjaW1wb3J0ICJjb25maWcuaCIKKyNpbXBvcnQgIldlYlBh
bmVsLmgiCisKKyNpZiBQTEFURk9STShNQUMpCisKKyNpbXBvcnQgPHBhbC9zcGkvbWFjL05TV2lu
ZG93U1BJLmg+CisKK0BpbXBsZW1lbnRhdGlvbiBXZWJQYW5lbAorCistIChpbnN0YW5jZXR5cGUp
aW5pdAoreworI3ByYWdtYSBjbGFuZyBkaWFnbm9zdGljIHB1c2gKKyNwcmFnbWEgY2xhbmcgZGlh
Z25vc3RpYyBpZ25vcmVkICItV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zIgorICAgIHN0YXRpYyBO
U1VJbnRlZ2VyIHN0eWxlTWFzayA9IE5TTWluaWF0dXJpemFibGVXaW5kb3dNYXNrIHwgTlNDbG9z
YWJsZVdpbmRvd01hc2sgfCBOU1Jlc2l6YWJsZVdpbmRvd01hc2sgIHwgTlNUaXRsZWRXaW5kb3dN
YXNrIHwgTlNTbWFsbFdpbmRvd01hc2sgfCBOU1NpZGVVdGlsaXR5V2luZG93TWFzayB8IE5TVXRp
bGl0eVdpbmRvd01hc2s7CisjcHJhZ21hIGNsYW5nIGRpYWdub3N0aWMgcG9wCisgICAgCisgICAg
cmV0dXJuIFtzdXBlciBpbml0V2l0aENvbnRlbnRSZWN0Ok5TWmVyb1JlY3Qgc3R5bGVNYXNrOnN0
eWxlTWFzayBiYWNraW5nOk5TQmFja2luZ1N0b3JlQnVmZmVyZWQgZGVmZXI6WUVTXTsKK30KKwor
QGVuZAorCisjZW5kaWYgLy8gUExBVEZPUk0oTUFDKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbWFjL1BsYXRmb3JtRXZlbnRGYWN0b3J5TWFjLmggYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9tYWMvUGxhdGZvcm1FdmVudEZhY3RvcnlNYWMuaAppbmRleCAyNTljNjA1MGQ2
MGE0OWY0OThkYzU0OGI3Y2VmMzJmMGM3NmFkZTZjLi5kMjBhMmQ4ZWU5MGY0YzE4NjdiOTZlNTk0
OTIxOTU5YzRmNmMwMjZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMv
UGxhdGZvcm1FdmVudEZhY3RvcnlNYWMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
YWMvUGxhdGZvcm1FdmVudEZhY3RvcnlNYWMuaApAQCAtNDksNiArNDksOSBAQCBXRUJDT1JFX0VY
UE9SVCBTdHJpbmcga2V5SWRlbnRpZmllckZvcktleUV2ZW50KE5TRXZlbnQgKik7CiBXRUJDT1JF
X0VYUE9SVCBTdHJpbmcga2V5Rm9yS2V5RXZlbnQoTlNFdmVudCAqKTsKIFdFQkNPUkVfRVhQT1JU
IFN0cmluZyBjb2RlRm9yS2V5RXZlbnQoTlNFdmVudCAqKTsKIFdFQkNPUkVfRVhQT1JUIGRvdWJs
ZSBldmVudFRpbWVTdGFtcFNpbmNlMTk3MChOU0V2ZW50ICopOworICAgIAorV0VCQ09SRV9FWFBP
UlQgdm9pZCBnZXRXaGVlbEV2ZW50RGVsdGFzKE5TRXZlbnQgKiwgZmxvYXQmIGRlbHRhWCwgZmxv
YXQmIGRlbHRhWSwgQk9PTCYgY29udGludW91cyk7CitXRUJDT1JFX0VYUE9SVCBVSW50OCBrZXlD
aGFyRm9yRXZlbnQoTlNFdmVudCAqKTsKIAogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21hYy9QbGF0Zm9ybUV2ZW50RmFjdG9yeU1hYy5tbSBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21hYy9QbGF0Zm9ybUV2ZW50RmFjdG9yeU1hYy5tbQppbmRleCBiYzFl
MzY3ZmM0Njk0ZWFmNDYwYWIwZWE1YTQyMzBkMDAwMDFhYzg5Li43N2I5Y2I5NjM1YmJmYjBiYzJj
NTQ1NDBiZmY2NDA1MTcxYjdjNTU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tYWMvUGxhdGZvcm1FdmVudEZhY3RvcnlNYWMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWFjL1BsYXRmb3JtRXZlbnRGYWN0b3J5TWFjLm1tCkBAIC0zMiw4ICszMiwxMSBAQAog
I2ltcG9ydCAiU2Nyb2xsYmFyLmgiCiAjaW1wb3J0ICJXZWJDb3JlU3lzdGVtSW50ZXJmYWNlLmgi
CiAjaW1wb3J0ICJXaW5kb3dzS2V5Ym9hcmRDb2Rlcy5oIgorI2ltcG9ydCA8SElUb29sYm94L0Nh
cmJvbkV2ZW50cy5oPgogI2ltcG9ydCA8SElUb29sYm94L0V2ZW50cy5oPgogI2ltcG9ydCA8bWFj
aC9tYWNoX3RpbWUuaD4KKyNpbXBvcnQgPHBhbC9zcGkvbWFjL0hJVG9vbGJveFNQSS5oPgorI2lt
cG9ydCA8cGFsL3NwaS9tYWMvTlNFdmVudFNQSS5oPgogI2ltcG9ydCA8cGFsL3NwaS9tYWMvTlNN
ZW51U1BJLmg+CiAjaW1wb3J0IDx3dGYvQVNDSUlDVHlwZS5oPgogCkBAIC02NzQsNiArNjc3LDM5
IEBAIHN0YXRpYyBpbnQgdHlwZUZvckV2ZW50KE5TRXZlbnQgKmV2ZW50KQogICAgIHJldHVybiBz
dGF0aWNfY2FzdDxpbnQ+KFtOU01lbnUgbWVudVR5cGVGb3JFdmVudDpldmVudF0pOwogfQogICAg
IAordm9pZCBnZXRXaGVlbEV2ZW50RGVsdGFzKE5TRXZlbnQgKmV2ZW50LCBmbG9hdCYgZGVsdGFY
LCBmbG9hdCYgZGVsdGFZLCBCT09MJiBjb250aW51b3VzKQoreworICAgIEFTU0VSVChldmVudCk7
CisgICAgaWYgKGV2ZW50Lmhhc1ByZWNpc2VTY3JvbGxpbmdEZWx0YXMpIHsKKyAgICAgICAgZGVs
dGFYID0gZXZlbnQuc2Nyb2xsaW5nRGVsdGFYOworICAgICAgICBkZWx0YVkgPSBldmVudC5zY3Jv
bGxpbmdEZWx0YVk7CisgICAgICAgIGNvbnRpbnVvdXMgPSBZRVM7CisgICAgfSBlbHNlIHsKKyAg
ICAgICAgZGVsdGFYID0gZXZlbnQuZGVsdGFYOworICAgICAgICBkZWx0YVkgPSBldmVudC5kZWx0
YVk7CisgICAgICAgIGNvbnRpbnVvdXMgPSBOTzsKKyAgICB9Cit9CisKK1VJbnQ4IGtleUNoYXJG
b3JFdmVudChOU0V2ZW50ICpldmVudCkKK3sKKyAgICBFdmVudFJlZiBldmVudFJlZiA9IChFdmVu
dFJlZilbZXZlbnQgX2V2ZW50UmVmXTsKKyAgICBpZiAoIWV2ZW50UmVmKQorICAgICAgICByZXR1
cm4gMDsKKworICAgIEJ5dGVDb3VudCBrZXlDaGFyQ291bnQgPSAwOworICAgIGlmIChHZXRFdmVu
dFBhcmFtZXRlcihldmVudFJlZiwga0V2ZW50UGFyYW1LZXlNYWNDaGFyQ29kZXMsIHR5cGVDaGFy
LCAwLCAwLCAma2V5Q2hhckNvdW50LCAwKSAhPSBub0VycikKKyAgICAgICAgcmV0dXJuIDA7Cisg
ICAgaWYgKGtleUNoYXJDb3VudCAhPSAxKQorICAgICAgICByZXR1cm4gMDsKKworICAgIFVJbnQ4
IGtleUNoYXIgPSAwOworICAgIGlmIChHZXRFdmVudFBhcmFtZXRlcihldmVudFJlZiwga0V2ZW50
UGFyYW1LZXlNYWNDaGFyQ29kZXMsIHR5cGVDaGFyLCAwLCBzaXplb2Yoa2V5Q2hhciksICZrZXlD
aGFyQ291bnQsICZrZXlDaGFyKSAhPSBub0VycikKKyAgICAgICAgcmV0dXJuIDA7CisgICAgCisg
ICAgcmV0dXJuIGtleUNoYXI7Cit9CisKIGNsYXNzIFBsYXRmb3JtTW91c2VFdmVudEJ1aWxkZXIg
OiBwdWJsaWMgUGxhdGZvcm1Nb3VzZUV2ZW50IHsKIHB1YmxpYzoKICAgICBQbGF0Zm9ybU1vdXNl
RXZlbnRCdWlsZGVyKE5TRXZlbnQgKmV2ZW50LCBOU0V2ZW50ICpjb3JyZXNwb25kaW5nUHJlc3N1
cmVFdmVudCwgTlNWaWV3ICp3aW5kb3dWaWV3KQpAQCAtNzQ0LDcgKzc4MCw3IEBAIHB1YmxpYzoK
ICAgICAgICAgbV9ncmFudWxhcml0eSA9IFNjcm9sbEJ5UGl4ZWxXaGVlbEV2ZW50OwogCiAgICAg
ICAgIEJPT0wgY29udGludW91czsKLSAgICAgICAgd2tHZXRXaGVlbEV2ZW50RGVsdGFzKGV2ZW50
LCAmbV9kZWx0YVgsICZtX2RlbHRhWSwgJmNvbnRpbnVvdXMpOworICAgICAgICBnZXRXaGVlbEV2
ZW50RGVsdGFzKGV2ZW50LCBtX2RlbHRhWCwgbV9kZWx0YVksIGNvbnRpbnVvdXMpOwogICAgICAg
ICBpZiAoY29udGludW91cykgewogICAgICAgICAgICAgbV93aGVlbFRpY2tzWCA9IG1fZGVsdGFY
IC8gc3RhdGljX2Nhc3Q8ZmxvYXQ+KFNjcm9sbGJhcjo6cGl4ZWxzUGVyTGluZVN0ZXAoKSk7CiAg
ICAgICAgICAgICBtX3doZWVsVGlja3NZID0gbV9kZWx0YVkgLyBzdGF0aWNfY2FzdDxmbG9hdD4o
U2Nyb2xsYmFyOjpwaXhlbHNQZXJMaW5lU3RlcCgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL21hYy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlLmggYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9tYWMvV2ViQ29yZVN5c3RlbUludGVyZmFjZS5oCmluZGV4IDkzY2RmZDBjN2Fi
MWU5NjgwMTA2Y2E2NDg1NDQ4NTY2Yjc0NDRlNDYuLjhhMTI0ODI3YzA0MDlkNjYzZjc4MWRmMjdi
NGU0M2JjZmFmYmQyMjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9X
ZWJDb3JlU3lzdGVtSW50ZXJmYWNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFj
L1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2UuaApAQCAtMTM5LDcgKzEzOSw2IEBAIGV4dGVybiB2b2lk
ICgqd2tEcmF3TWVkaWFTbGlkZXJUcmFjaykoQ0dDb250ZXh0UmVmIGNvbnRleHQsIENHUmVjdCBy
ZWN0LCBmbG9hdCB0CiBleHRlcm4gdm9pZCAoKndrRHJhd01lZGlhVUlQYXJ0KShpbnQgcGFydCwg
Q0dDb250ZXh0UmVmIGNvbnRleHQsIENHUmVjdCByZWN0LCB1bnNpZ25lZCBzdGF0ZSk7CiBleHRl
cm4gZG91YmxlICgqd2tHZXROU1VSTFJlc3BvbnNlQ2FsY3VsYXRlZEV4cGlyYXRpb24pKE5TVVJM
UmVzcG9uc2UgKnJlc3BvbnNlKTsKIGV4dGVybiBCT09MICgqd2tHZXROU1VSTFJlc3BvbnNlTXVz
dFJldmFsaWRhdGUpKE5TVVJMUmVzcG9uc2UgKnJlc3BvbnNlKTsKLWV4dGVybiB2b2lkICgqd2tH
ZXRXaGVlbEV2ZW50RGVsdGFzKShOU0V2ZW50KiwgZmxvYXQqIGRlbHRhWCwgZmxvYXQqIGRlbHRh
WSwgQk9PTCogY29udGludW91cyk7CiBleHRlcm4gVUludDggKCp3a0dldE5TRXZlbnRLZXlDaGFy
KShOU0V2ZW50ICopOwogZXh0ZXJuIEJPT0wgKCp3a0hpdFRlc3RNZWRpYVVJUGFydCkoaW50IHBh
cnQsIENHUmVjdCBib3VuZHMsIENHUG9pbnQgcG9pbnQpOwogZXh0ZXJuIHZvaWQgKCp3a01lYXN1
cmVNZWRpYVVJUGFydCkoaW50IHBhcnQsIENHUmVjdCAqYm91bmRzLCBDR1NpemUgKm5hdHVyYWxT
aXplKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJDb3JlU3lz
dGVtSW50ZXJmYWNlLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVTeXN0
ZW1JbnRlcmZhY2UubW0KaW5kZXggNjQ5ZDdhNjdjZDY3NjU0YTJhM2UzOTRlOTM1ZjhjNTI2ZmEz
OTI1YS4uMjcyYjU1NTdlMjM5ZjNjMWUxZDQ1YTk0ZmI3YjFlNDUzNDYxN2RmMiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2UubW0K
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2Uu
bW0KQEAgLTQ4LDcgKzQ4LDYgQEAgdm9pZCAoKndrV2luZG93U2V0QWxwaGEpKE5TV2luZG93ICos
IGZsb2F0KTsKIHZvaWQgKCp3a1dpbmRvd1NldFNjYWxlZEZyYW1lKShOU1dpbmRvdyAqLCBOU1Jl
Y3QsIE5TUmVjdCk7CiBOU1RpbWVJbnRlcnZhbCAoKndrR2V0TlNVUkxSZXNwb25zZUNhbGN1bGF0
ZWRFeHBpcmF0aW9uKShOU1VSTFJlc3BvbnNlICpyZXNwb25zZSk7CiBCT09MICgqd2tHZXROU1VS
TFJlc3BvbnNlTXVzdFJldmFsaWRhdGUpKE5TVVJMUmVzcG9uc2UgKnJlc3BvbnNlKTsKLXZvaWQg
KCp3a0dldFdoZWVsRXZlbnREZWx0YXMpKE5TRXZlbnQqLCBmbG9hdCogZGVsdGFYLCBmbG9hdCog
ZGVsdGFZLCBCT09MKiBjb250aW51b3VzKTsKIFVJbnQ4ICgqd2tHZXROU0V2ZW50S2V5Q2hhciko
TlNFdmVudCAqKTsKIHZvaWQgKCp3a1BvcHVwTWVudSkoTlNNZW51KiwgTlNQb2ludCBsb2NhdGlv
biwgZmxvYXQgd2lkdGgsIE5TVmlldyosIGludCBzZWxlY3RlZEl0ZW0sIE5TRm9udCosIE5TQ29u
dHJvbFNpemUgY29udHJvbFNpemUsIGJvb2wgdXNlc0N1c3RvbUFwcGVhcmFuY2UpOwogdW5zaWdu
ZWQgKCp3a1FUSW5jbHVkZU9ubHlNb2Rlcm5NZWRpYUZpbGVUeXBlcykodm9pZCk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1BsdWdpblByb2Nlc3MvbWFjL1BsdWdpblByb2Nlc3NNYWMubW0g
Yi9Tb3VyY2UvV2ViS2l0L1BsdWdpblByb2Nlc3MvbWFjL1BsdWdpblByb2Nlc3NNYWMubW0KaW5k
ZXggZGQ1MzM3MDI0N2YwYTZiNzRhMDFiZmNjOGFhOTZmYTZmZmYzNDQxOC4uZDg2MDM3ODY3YTJm
MWFmYTI1ZWM1MjYzMDZlMTRkOTY0Y2Q3N2U2ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9Q
bHVnaW5Qcm9jZXNzL21hYy9QbHVnaW5Qcm9jZXNzTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQv
UGx1Z2luUHJvY2Vzcy9tYWMvUGx1Z2luUHJvY2Vzc01hYy5tbQpAQCAtNDcsNiArNDcsNyBAQAog
I2ltcG9ydCA8bWFjaC92bV9zdGF0aXN0aWNzLmg+CiAjaW1wb3J0IDxvYmpjL3J1bnRpbWUuaD4K
ICNpbXBvcnQgPHBhbC9zcGkvbWFjL0hJVG9vbGJveFNQSS5oPgorI2ltcG9ydCA8cGFsL3NwaS9t
YWMvTlNXaW5kb3dTUEkuaD4KICNpbXBvcnQgPHN5c2V4aXRzLmg+CiAjaW1wb3J0IDx3dGYvSGFz
aFNldC5oPgogI2ltcG9ydCA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00NDEsMTIgKzQ0Miwx
MiBAQCBzdGF0aWMgdm9pZCBpbml0aWFsaXplQ29jb2FPdmVycmlkZXMoKQogICAgIE5TTm90aWZp
Y2F0aW9uQ2VudGVyICpkZWZhdWx0Q2VudGVyID0gW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1
bHRDZW50ZXJdOwogCiAgICAgLy8gVHJhY2sgd2hlbiBhbnkgQ29jb2Egd2luZG93IGlzIGFib3V0
IHRvIGJlIGJlIHNob3duLgotICAgIGlkIG9yZGVyT25TY3JlZW5PYnNlcnZlciA9IFtkZWZhdWx0
Q2VudGVyIGFkZE9ic2VydmVyRm9yTmFtZTpXS1dpbmRvd1dpbGxPcmRlck9uU2NyZWVuTm90aWZp
Y2F0aW9uKCkKKyAgICBpZCBvcmRlck9uU2NyZWVuT2JzZXJ2ZXIgPSBbZGVmYXVsdENlbnRlciBh
ZGRPYnNlcnZlckZvck5hbWU6TlNXaW5kb3dXaWxsT3JkZXJPblNjcmVlbk5vdGlmaWNhdGlvbgog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IG9iamVjdDpuaWwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgcXVldWU6bmlsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzaW5nQmxvY2s6XihOU05vdGlmaWNhdGlvbiAq
bm90aWZpY2F0aW9uKSB7IGZ1bGxzY3JlZW5XaW5kb3dUcmFja2VyKCkud2luZG93U2hvd24oW25v
dGlmaWNhdGlvbiBvYmplY3RdKTsgfV07CiAgICAgLy8gVHJhY2sgd2hlbiBhbnkgQ29jb2Egd2lu
ZG93IGlzIGFib3V0IHRvIGJlIGhpZGRlbi4KLSAgICBpZCBvcmRlck9mZlNjcmVlbk9ic2VydmVy
ID0gW2RlZmF1bHRDZW50ZXIgYWRkT2JzZXJ2ZXJGb3JOYW1lOldLV2luZG93V2lsbE9yZGVyT2Zm
U2NyZWVuTm90aWZpY2F0aW9uKCkKKyAgICBpZCBvcmRlck9mZlNjcmVlbk9ic2VydmVyID0gW2Rl
ZmF1bHRDZW50ZXIgYWRkT2JzZXJ2ZXJGb3JOYW1lOk5TV2luZG93V2lsbE9yZGVyT2ZmU2NyZWVu
Tm90aWZpY2F0aW9uCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIG9iamVjdDpuaWwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHF1ZXVlOm5pbAogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzaW5nQmxvY2s6XihOU05v
dGlmaWNhdGlvbiAqbm90aWZpY2F0aW9uKSB7IGZ1bGxzY3JlZW5XaW5kb3dUcmFja2VyKCkud2lu
ZG93SGlkZGVuKFtub3RpZmljYXRpb24gb2JqZWN0XSk7IH1dOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9TaGFyZWQvbWFjL1dlYkV2ZW50RmFjdG9yeS5tbSBiL1NvdXJjZS9XZWJLaXQvU2hh
cmVkL21hYy9XZWJFdmVudEZhY3RvcnkubW0KaW5kZXggNzdhYWM1M2RjY2JmYTBmOWFkMmI4ODE1
MWMzNTkzZTdiNjIyYWNjNi4uMGRiM2JlOGM2NDc0Yzc2MzI5ODVmZTNlYTIyMTViNDhjNmFmYzA1
YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvbWFjL1dlYkV2ZW50RmFjdG9yeS5t
bQorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9tYWMvV2ViRXZlbnRGYWN0b3J5Lm1tCkBAIC0z
ODUsNyArMzg1LDcgQEAgV2ViV2hlZWxFdmVudCBXZWJFdmVudEZhY3Rvcnk6OmNyZWF0ZVdlYldo
ZWVsRXZlbnQoTlNFdmVudCAqZXZlbnQsIE5TVmlldyAqd2luZG8KICAgICBmbG9hdCB3aGVlbFRp
Y2tzWCA9IDA7CiAgICAgZmxvYXQgd2hlZWxUaWNrc1kgPSAwOwogCi0gICAgV0tHZXRXaGVlbEV2
ZW50RGVsdGFzKGV2ZW50LCAmZGVsdGFYLCAmZGVsdGFZLCAmY29udGludW91cyk7CisgICAgZ2V0
V2hlZWxFdmVudERlbHRhcyhldmVudCwgZGVsdGFYLCBkZWx0YVksIGNvbnRpbnVvdXMpOwogICAg
IAogICAgIGlmIChjb250aW51b3VzKSB7CiAgICAgICAgIC8vIHNtb290aCBzY3JvbGwgZXZlbnRz
CkBAIC00MzMsNyArNDMzLDcgQEAgV2ViS2V5Ym9hcmRFdmVudCBXZWJFdmVudEZhY3Rvcnk6OmNy
ZWF0ZVdlYktleWJvYXJkRXZlbnQoTlNFdmVudCAqZXZlbnQsIGJvb2wgaGEKICAgICBTdHJpbmcg
a2V5SWRlbnRpZmllciAgICAgICAgICAgID0ga2V5SWRlbnRpZmllckZvcktleUV2ZW50KGV2ZW50
KTsKICAgICBpbnQgd2luZG93c1ZpcnR1YWxLZXlDb2RlICAgICAgID0gd2luZG93c0tleUNvZGVG
b3JLZXlFdmVudChldmVudCk7CiAgICAgaW50IG5hdGl2ZVZpcnR1YWxLZXlDb2RlICAgICAgICA9
IFtldmVudCBrZXlDb2RlXTsKLSAgICBpbnQgbWFjQ2hhckNvZGUgICAgICAgICAgICAgICAgID0g
V0tHZXROU0V2ZW50S2V5Q2hhcihldmVudCk7CisgICAgaW50IG1hY0NoYXJDb2RlICAgICAgICAg
ICAgICAgICA9IGtleUNoYXJGb3JFdmVudChldmVudCk7CiAgICAgYm9vbCBhdXRvUmVwZWF0ICAg
ICAgICAgICAgICAgICA9IFtldmVudCB0eXBlXSAhPSBOU0V2ZW50VHlwZUZsYWdzQ2hhbmdlZCAm
JiBbZXZlbnQgaXNBUmVwZWF0XTsKICAgICBib29sIGlzS2V5cGFkICAgICAgICAgICAgICAgICAg
ID0gaXNLZXlwYWRFdmVudChldmVudCk7CiAgICAgYm9vbCBpc1N5c3RlbUtleSAgICAgICAgICAg
ICAgICA9IGZhbHNlOyAvLyBTeXN0ZW1LZXkgaXMgYWx3YXlzIGZhbHNlIG9uIHRoZSBNYWMuCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMvV0tUZXh0SW5wdXRXaW5kb3dD
b250cm9sbGVyLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvbWFjL1dLVGV4dElucHV0V2lu
ZG93Q29udHJvbGxlci5tbQppbmRleCAxMmExNTFlMzFiYTc4NjIyYWZjNDdlZTk1MzBiZDg2MjFh
Y2Q5ODBjLi5iNDg4NTYwYjA3ZjA5ZTc5N2M4ZWY5MmRjYWMwOGRiM2U0OWIxMTdiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMvV0tUZXh0SW5wdXRXaW5kb3dDb250cm9s
bGVyLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL21hYy9XS1RleHRJbnB1dFdpbmRv
d0NvbnRyb2xsZXIubW0KQEAgLTI5LDYgKzI5LDcgQEAKICNpZiBVU0UoQVBQS0lUKQogCiAjaW1w
b3J0IDxXZWJLaXRTeXN0ZW1JbnRlcmZhY2UuaD4KKyNpbXBvcnQgPHBhbC9zeXN0ZW0vbWFjL1dl
YlBhbmVsLmg+CiAKIEBpbnRlcmZhY2UgV0tUZXh0SW5wdXRWaWV3IDogTlNUZXh0VmlldyB7CiB9
CkBAIC00Nyw3ICs0OCw3IEBAIC0gKE5TQXJyYXkgKil2YWxpZEF0dHJpYnV0ZXNGb3JNYXJrZWRU
ZXh0CiAKIEBlbmQKIAotQGludGVyZmFjZSBXS1RleHRJbnB1dFBhbmVsIDogTlNQYW5lbCB7CitA
aW50ZXJmYWNlIFdLVGV4dElucHV0UGFuZWwgOiBXZWJQYW5lbCB7CiAgICAgTlNUZXh0VmlldyAq
X2lucHV0VGV4dFZpZXc7CiB9CiAKQEAgLTc0LDcgKzc1LDcgQEAgLSAodm9pZClkZWFsbG9jCiAK
IC0gKGlkKWluaXQKIHsKLSAgICBzZWxmID0gW3N1cGVyIGluaXRXaXRoQ29udGVudFJlY3Q6TlNa
ZXJvUmVjdCBzdHlsZU1hc2s6V0tHZXRJbnB1dFBhbmVsV2luZG93U3R5bGUoKSBiYWNraW5nOk5T
QmFja2luZ1N0b3JlQnVmZmVyZWQgZGVmZXI6WUVTXTsKKyAgICBzZWxmID0gW3N1cGVyIGluaXRd
OwogICAgIGlmICghc2VsZikKICAgICAgICAgcmV0dXJuIG5pbDsKICAgICAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViU3lzdGVtSW50
ZXJmYWNlLm1tIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L21hYy9X
ZWJTeXN0ZW1JbnRlcmZhY2UubW0KaW5kZXggNDRkYzdlY2IzNjIwZThmNDUxNDJlYjM3Yzc4NzVh
ZGNiM2I5NDEyYi4uZDE4YTQ0MGRkNzI1MzljNmE1Njk0Yjc0NjdmOGE2OTE4ODUxZDk5ZSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L21hYy9XZWJT
eXN0ZW1JbnRlcmZhY2UubW0KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVT
dXBwb3J0L21hYy9XZWJTeXN0ZW1JbnRlcmZhY2UubW0KQEAgLTUyLDcgKzUyLDYgQEAgdm9pZCBJ
bml0V2ViQ29yZVN5c3RlbUludGVyZmFjZSh2b2lkKQogI2VuZGlmCiAgICAgICAgIElOSVQoQ0dD
b250ZXh0SXNQREZDb250ZXh0KTsKICNpZiAhUExBVEZPUk0oSU9TKQotICAgICAgICBJTklUKEdl
dFdoZWVsRXZlbnREZWx0YXMpOwogICAgICAgICBJTklUKEdldE5TRXZlbnRLZXlDaGFyKTsKICAg
ICAgICAgSU5JVChIaXRUZXN0TWVkaWFVSVBhcnQpOwogICAgICAgICBJTklUKE1lYXN1cmVNZWRp
YVVJUGFydCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL0hv
c3RlZC9OZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJveHkubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5
L21hYy9QbHVnaW5zL0hvc3RlZC9OZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJveHkubW0KaW5kZXgg
YWU0MWJjMTZjMzNkNjk2NGY3NGM3NmZhMjQyZmI4OTJhMTQ5MWZkNS4uMDE3ZmE5ZTZiOTliMWE0
OGE5YjMzYmE3MTM2ODM3ZDVmYTQ2MzdiYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2Fj
eS9tYWMvUGx1Z2lucy9Ib3N0ZWQvTmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5Lm1tCisrKyBi
L1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMvSG9zdGVkL05ldHNjYXBlUGx1Z2luSW5z
dGFuY2VQcm94eS5tbQpAQCAtNTQsMTAgKzU0LDExIEBACiAjaW1wb3J0IDxXZWJDb3JlL0ZyYW1l
Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL0ZyYW1lTG9hZGVyLmg+CiAjaW1wb3J0IDxXZWJDb3JlL0Zy
YW1lVHJlZS5oPgotI2ltcG9ydCA8V2ViQ29yZS9VUkwuaD4KKyNpbXBvcnQgPFdlYkNvcmUvUGxh
dGZvcm1FdmVudEZhY3RvcnlNYWMuaD4KICNpbXBvcnQgPFdlYkNvcmUvUHJveHlTZXJ2ZXIuaD4K
ICNpbXBvcnQgPFdlYkNvcmUvU2VjdXJpdHlPcmlnaW4uaD4KICNpbXBvcnQgPFdlYkNvcmUvU2Ny
aXB0Q29udHJvbGxlci5oPgorI2ltcG9ydCA8V2ViQ29yZS9VUkwuaD4KICNpbXBvcnQgPFdlYkNv
cmUvVXNlckdlc3R1cmVJbmRpY2F0b3IuaD4KICNpbXBvcnQgPFdlYkNvcmUvbnBydW50aW1lX2lt
cGwuaD4KICNpbXBvcnQgPFdlYkNvcmUvcnVudGltZV9vYmplY3QuaD4KQEAgLTQ1OSw3ICs0NjAs
NyBAQCB2b2lkIE5ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eTo6a2V5RXZlbnQoTlNWaWV3ICpw
bHVnaW5WaWV3LCBOU0V2ZW50ICpldmVudCwgTgogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHR5cGUsIFtldmVudCBtb2RpZmllckZsYWdzXSwgCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgY29uc3RfY2FzdDxjaGFyKj4ocmVpbnRlcnByZXRfY2FzdDxj
b25zdCBjaGFyKj4oW2NoYXJhY3RlcnNEYXRhIGJ5dGVzXSkpLCBbY2hhcmFjdGVyc0RhdGEgbGVu
Z3RoXSwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3RfY2FzdDxj
aGFyKj4ocmVpbnRlcnByZXRfY2FzdDxjb25zdCBjaGFyKj4oW2NoYXJhY3RlcnNJZ25vcmluZ01v
ZGlmaWVyc0RhdGEgYnl0ZXNdKSksIFtjaGFyYWN0ZXJzSWdub3JpbmdNb2RpZmllcnNEYXRhIGxl
bmd0aF0sIAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtldmVudCBpc0FS
ZXBlYXRdLCBbZXZlbnQga2V5Q29kZV0sIFdLR2V0TlNFdmVudEtleUNoYXIoZXZlbnQpKTsKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZXZlbnQgaXNBUmVwZWF0XSwgW2V2
ZW50IGtleUNvZGVdLCBrZXlDaGFyRm9yRXZlbnQoZXZlbnQpKTsKIH0KIAogdm9pZCBOZXRzY2Fw
ZVBsdWdpbkluc3RhbmNlUHJveHk6OnN5bnRoZXRpY0tleURvd25XaXRoQ29tbWFuZE1vZGlmaWVy
KGludCBrZXlDb2RlLCBjaGFyIGNoYXJhY3RlcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRM
ZWdhY3kvbWFjL1BsdWdpbnMvSG9zdGVkL1dlYlRleHRJbnB1dFdpbmRvd0NvbnRyb2xsZXIubSBi
L1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMvSG9zdGVkL1dlYlRleHRJbnB1dFdpbmRv
d0NvbnRyb2xsZXIubQppbmRleCAwMDQwMjkzYjYyZGIzYjhmYjQyY2Q1ZDM2ODU0NmY1YzQ5YTlh
OGY0Li4wOGE3MTE1MWU2OWRhMzE3NWExYmQ2ZjViMjc2OTljNzdjODg3ZjlkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL0hvc3RlZC9XZWJUZXh0SW5wdXRXaW5k
b3dDb250cm9sbGVyLm0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9Ib3N0
ZWQvV2ViVGV4dElucHV0V2luZG93Q29udHJvbGxlci5tCkBAIC0yOCw2ICsyOCw3IEBACiAjaW1w
b3J0ICJXZWJUZXh0SW5wdXRXaW5kb3dDb250cm9sbGVyLmgiCiAKICNpbXBvcnQgPFdlYktpdFN5
c3RlbUludGVyZmFjZS5oPgorI2ltcG9ydCA8cGFsL3N5c3RlbS9tYWMvV2ViUGFuZWwuaD4KIAog
QGludGVyZmFjZSBXZWJUZXh0SW5wdXRWaWV3IDogTlNUZXh0VmlldyB7CiB9CkBAIC00Niw3ICs0
Nyw3IEBAIC0gKE5TQXJyYXkgKil2YWxpZEF0dHJpYnV0ZXNGb3JNYXJrZWRUZXh0CiAKIEBlbmQK
IAotQGludGVyZmFjZSBXZWJUZXh0SW5wdXRQYW5lbCA6IE5TUGFuZWwgeworQGludGVyZmFjZSBX
ZWJUZXh0SW5wdXRQYW5lbCA6IFdlYlBhbmVsIHsKICAgICBOU1RleHRWaWV3ICpfaW5wdXRUZXh0
VmlldzsKIH0KIApAQCAtNzAsNyArNzEsNyBAQCAtICh2b2lkKWRlYWxsb2MKIAogLSAoaWQpaW5p
dAogewotICAgIHNlbGYgPSBbc3VwZXIgaW5pdFdpdGhDb250ZW50UmVjdDpOU1plcm9SZWN0IHN0
eWxlTWFzazpXS0dldElucHV0UGFuZWxXaW5kb3dTdHlsZSgpIGJhY2tpbmc6TlNCYWNraW5nU3Rv
cmVCdWZmZXJlZCBkZWZlcjpZRVNdOworICAgIHNlbGYgPSBbc3VwZXIgaW5pdF07CiAgICAgaWYg
KCFzZWxmKQogICAgICAgICByZXR1cm4gbmlsOwogICAgIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdExlZ2FjeS9tYWMvUGx1Z2lucy9XZWJOZXRzY2FwZVBsdWdpbkV2ZW50SGFuZGxlckNhcmJv
bi5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMvV2ViTmV0c2NhcGVQbHVnaW5F
dmVudEhhbmRsZXJDYXJib24ubW0KaW5kZXggM2ZjYjQ2N2ZkNzg3ODQzMWExNGZlNzk5Nzg0Nzdj
MjU4OTVmYWQyZi4uYTJjZGQ1NTRkZWQxYWNhY2JkMTczYzBmMDYyNjlmMDUzNWQyNDQ3ZSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9XZWJOZXRzY2FwZVBsdWdp
bkV2ZW50SGFuZGxlckNhcmJvbi5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVn
aW5zL1dlYk5ldHNjYXBlUGx1Z2luRXZlbnRIYW5kbGVyQ2FyYm9uLm1tCkBAIC0zMCw2ICszMCw3
IEBACiAjaW1wb3J0ICJXZWJOZXRzY2FwZVBsdWdpblZpZXcuaCIKICNpbXBvcnQgIldlYktpdExv
Z2dpbmcuaCIKICNpbXBvcnQgIldlYktpdFN5c3RlbUludGVyZmFjZS5oIgorI2ltcG9ydCA8SElU
b29sYm94L0NhcmJvbkV2ZW50cy5oPgogI2ltcG9ydCA8cGFsL3NwaS9tYWMvSElUb29sYm94U1BJ
Lmg+CiAjaW1wb3J0IDxwYWwvc3BpL21hYy9OU0V2ZW50U1BJLmg+CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYlN5c3RlbUludGVyZmFjZS5t
bSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYlN5c3RlbUludGVy
ZmFjZS5tbQppbmRleCBkNDU1MTZmNWVlZTFjMDgyYzk4MjhkOWU3NDc0ZWM5Njg5YzQ3YjU4Li42
ZGQwYjU3ZGQ0YmYzNDNmZTk2NmYwZmJhNjNjMTFjZjRmMDhkOTMyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0TGVnYWN5L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJTeXN0ZW1JbnRlcmZhY2UubW0K
KysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViU3lzdGVtSW50
ZXJmYWNlLm1tCkBAIC01NSw3ICs1NSw2IEBAIHZvaWQgSW5pdFdlYkNvcmVTeXN0ZW1JbnRlcmZh
Y2Uodm9pZCkKICAgICBJTklUKERyYXdDZWxsRm9jdXNSaW5nV2l0aEZyYW1lQXRUaW1lKTsKICAg
ICBJTklUKERyYXdNZWRpYVVJUGFydCk7CiAgICAgSU5JVChEcmF3TWVkaWFTbGlkZXJUcmFjayk7
Ci0gICAgSU5JVChHZXRXaGVlbEV2ZW50RGVsdGFzKTsKICAgICBJTklUKEdldE5TRXZlbnRLZXlD
aGFyKTsKICAgICBJTklUKEhpdFRlc3RNZWRpYVVJUGFydCk7CiAgICAgSU5JVChNZWFzdXJlTWVk
aWFVSVBhcnQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9X
ZWJEeW5hbWljU2Nyb2xsQmFyc1ZpZXcubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJW
aWV3L1dlYkR5bmFtaWNTY3JvbGxCYXJzVmlldy5tbQppbmRleCA2ODA0ZTI3NjUyOTIxNjcxMDNj
NzVkM2YyOTdlNzRjZWEzMjI1NjQwLi5iYjIwZGU1NTBiYWJmMDIxMDJiMGM0MjMzYTdkNTdjYjBl
NzJhNWY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkR5
bmFtaWNTY3JvbGxCYXJzVmlldy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJW
aWV3L1dlYkR5bmFtaWNTY3JvbGxCYXJzVmlldy5tbQpAQCAtMzEsNiArMzEsNyBAQAogI2ltcG9y
dCAiV2ViSFRNTFZpZXdJbnRlcm5hbC5oIgogI2ltcG9ydCA8V2ViQ29yZS9GcmFtZS5oPgogI2lt
cG9ydCA8V2ViQ29yZS9GcmFtZVZpZXcuaD4KKyNpbXBvcnQgPFdlYkNvcmUvUGxhdGZvcm1FdmVu
dEZhY3RvcnlNYWMuaD4KICNpbXBvcnQgPFdlYktpdFN5c3RlbUludGVyZmFjZS5oPgogCiB1c2lu
ZyBuYW1lc3BhY2UgV2ViQ29yZTsKQEAgLTUzNSw3ICs1MzYsNyBAQCAtICh2b2lkKXNjcm9sbFdo
ZWVsOihOU0V2ZW50ICopZXZlbnQKICAgICBmbG9hdCBkZWx0YVg7CiAgICAgZmxvYXQgZGVsdGFZ
OwogICAgIEJPT0wgaXNDb250aW51b3VzOwotICAgIFdLR2V0V2hlZWxFdmVudERlbHRhcyhldmVu
dCwgJmRlbHRhWCwgJmRlbHRhWSwgJmlzQ29udGludW91cyk7CisgICAgZ2V0V2hlZWxFdmVudERl
bHRhcyhldmVudCwgZGVsdGFYLCBkZWx0YVksIGlzQ29udGludW91cyk7CiAKICAgICBOU0V2ZW50
UGhhc2UgbW9tZW50dW1QaGFzZSA9IFtldmVudCBtb21lbnR1bVBoYXNlXTsKICAgICBCT09MIGlz
TGF0Y2hpbmdFdmVudCA9IG1vbWVudHVtUGhhc2UgJiBOU0V2ZW50UGhhc2VCZWdhbiB8fCBtb21l
bnR1bVBoYXNlICYgTlNFdmVudFBoYXNlU3RhdGlvbmFyeTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViSFRNTFZpZXcubW0gYi9Tb3VyY2UvV2ViS2l0TGVn
YWN5L21hYy9XZWJWaWV3L1dlYkhUTUxWaWV3Lm1tCmluZGV4IDhmYzdmNjNjNWRjNGUxZWNkNzg0
MWU1ZjRjZGE3NDZiNDljMmU1ODguLjhkMGQ0ZDkyNTQ4MGNiODNjMjBhZTgxNDU1NDU0MjMwMDc0
YTY4ZGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViSFRN
TFZpZXcubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJIVE1MVmll
dy5tbQpAQCAtMTMyLDYgKzEzMiw3IEBACiAjaW1wb3J0IDxwYWwvc3BpL2NvY29hL05TVVJMRmls
ZVR5cGVNYXBwaW5nc1NQSS5oPgogI2ltcG9ydCA8cGFsL3NwaS9tYWMvTlNTcGVsbENoZWNrZXJT
UEkuaD4KICNpbXBvcnQgPHBhbC9zcGkvbWFjL05TVmlld1NQSS5oPgorI2ltcG9ydCA8cGFsL3Nw
aS9tYWMvTlNXaW5kb3dTUEkuaD4KICNpbXBvcnQgPHJ1bnRpbWUvSW5pdGlhbGl6ZVRocmVhZGlu
Zy5oPgogI2ltcG9ydCA8d3RmL0Jsb2NrT2JqQ0V4Y2VwdGlvbnMuaD4KICNpbXBvcnQgPHd0Zi9N
YWluVGhyZWFkLmg+CkBAIC0xNDA5LDggKzE0MTAsOCBAQCAtICh2b2lkKV9yZW1vdmVXaW5kb3dP
YnNlcnZlcnMKICAgICBOU05vdGlmaWNhdGlvbkNlbnRlciAqbm90aWZpY2F0aW9uQ2VudGVyID0g
W05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdOwogICAgIFtub3RpZmljYXRpb25D
ZW50ZXIgcmVtb3ZlT2JzZXJ2ZXI6c2VsZiBuYW1lOk5TV2luZG93RGlkQmVjb21lS2V5Tm90aWZp
Y2F0aW9uIG9iamVjdDpuaWxdOwogICAgIFtub3RpZmljYXRpb25DZW50ZXIgcmVtb3ZlT2JzZXJ2
ZXI6c2VsZiBuYW1lOk5TV2luZG93RGlkUmVzaWduS2V5Tm90aWZpY2F0aW9uIG9iamVjdDpuaWxd
OwotICAgIFtub3RpZmljYXRpb25DZW50ZXIgcmVtb3ZlT2JzZXJ2ZXI6c2VsZiBuYW1lOldLV2lu
ZG93V2lsbE9yZGVyT25TY3JlZW5Ob3RpZmljYXRpb24oKSBvYmplY3Q6d2luZG93XTsKLSAgICBb
bm90aWZpY2F0aW9uQ2VudGVyIHJlbW92ZU9ic2VydmVyOnNlbGYgbmFtZTpXS1dpbmRvd1dpbGxP
cmRlck9mZlNjcmVlbk5vdGlmaWNhdGlvbigpIG9iamVjdDp3aW5kb3ddOworICAgIFtub3RpZmlj
YXRpb25DZW50ZXIgcmVtb3ZlT2JzZXJ2ZXI6c2VsZiBuYW1lOk5TV2luZG93V2lsbE9yZGVyT25T
Y3JlZW5Ob3RpZmljYXRpb24gb2JqZWN0OndpbmRvd107CisgICAgW25vdGlmaWNhdGlvbkNlbnRl
ciByZW1vdmVPYnNlcnZlcjpzZWxmIG5hbWU6TlNXaW5kb3dXaWxsT3JkZXJPZmZTY3JlZW5Ob3Rp
ZmljYXRpb24gb2JqZWN0OndpbmRvd107CiAgICAgW25vdGlmaWNhdGlvbkNlbnRlciByZW1vdmVP
YnNlcnZlcjpzZWxmIG5hbWU6TlNXaW5kb3dXaWxsQ2xvc2VOb3RpZmljYXRpb24gb2JqZWN0Ondp
bmRvd107CiAgICAgCiAgICAgX3ByaXZhdGUtPm9ic2VydmluZ1dpbmRvd05vdGlmaWNhdGlvbnMg
PSBmYWxzZTsKQEAgLTM0NDksOCArMzQ1MCw4IEBAIC0gKHZvaWQpYWRkV2luZG93T2JzZXJ2ZXJz
CiAgICAgTlNOb3RpZmljYXRpb25DZW50ZXIgKm5vdGlmaWNhdGlvbkNlbnRlciA9IFtOU05vdGlm
aWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXTsKICAgICBbbm90aWZpY2F0aW9uQ2VudGVyIGFk
ZE9ic2VydmVyOnNlbGYgc2VsZWN0b3I6QHNlbGVjdG9yKHdpbmRvd0RpZEJlY29tZUtleTopIG5h
bWU6TlNXaW5kb3dEaWRCZWNvbWVLZXlOb3RpZmljYXRpb24gb2JqZWN0Om5pbF07CiAgICAgW25v
dGlmaWNhdGlvbkNlbnRlciBhZGRPYnNlcnZlcjpzZWxmIHNlbGVjdG9yOkBzZWxlY3Rvcih3aW5k
b3dEaWRSZXNpZ25LZXk6KSBuYW1lOk5TV2luZG93RGlkUmVzaWduS2V5Tm90aWZpY2F0aW9uIG9i
amVjdDpuaWxdOwotICAgIFtub3RpZmljYXRpb25DZW50ZXIgYWRkT2JzZXJ2ZXI6c2VsZiBzZWxl
Y3RvcjpAc2VsZWN0b3Iod2luZG93V2lsbE9yZGVyT25TY3JlZW46KSBuYW1lOldLV2luZG93V2ls
bE9yZGVyT25TY3JlZW5Ob3RpZmljYXRpb24oKSBvYmplY3Q6d2luZG93XTsKLSAgICBbbm90aWZp
Y2F0aW9uQ2VudGVyIGFkZE9ic2VydmVyOnNlbGYgc2VsZWN0b3I6QHNlbGVjdG9yKHdpbmRvd1dp
bGxPcmRlck9mZlNjcmVlbjopIG5hbWU6V0tXaW5kb3dXaWxsT3JkZXJPZmZTY3JlZW5Ob3RpZmlj
YXRpb24oKSBvYmplY3Q6d2luZG93XTsKKyAgICBbbm90aWZpY2F0aW9uQ2VudGVyIGFkZE9ic2Vy
dmVyOnNlbGYgc2VsZWN0b3I6QHNlbGVjdG9yKHdpbmRvd1dpbGxPcmRlck9uU2NyZWVuOikgbmFt
ZTpOU1dpbmRvd1dpbGxPcmRlck9uU2NyZWVuTm90aWZpY2F0aW9uIG9iamVjdDp3aW5kb3ddOwor
ICAgIFtub3RpZmljYXRpb25DZW50ZXIgYWRkT2JzZXJ2ZXI6c2VsZiBzZWxlY3RvcjpAc2VsZWN0
b3Iod2luZG93V2lsbE9yZGVyT2ZmU2NyZWVuOikgbmFtZTpOU1dpbmRvd1dpbGxPcmRlck9mZlNj
cmVlbk5vdGlmaWNhdGlvbiBvYmplY3Q6d2luZG93XTsKICAgICBbbm90aWZpY2F0aW9uQ2VudGVy
IGFkZE9ic2VydmVyOnNlbGYgc2VsZWN0b3I6QHNlbGVjdG9yKHdpbmRvd1dpbGxDbG9zZTopIG5h
bWU6TlNXaW5kb3dXaWxsQ2xvc2VOb3RpZmljYXRpb24gb2JqZWN0OndpbmRvd107CiAgICAgCiAg
ICAgX3ByaXZhdGUtPm9ic2VydmluZ1dpbmRvd05vdGlmaWNhdGlvbnMgPSB0cnVlOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tIGIvU291cmNl
L1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCmluZGV4IDQ3OGMyMWNhNjE4OTI4
NzAzMjZhYjhiN2VmZTIzMjFjNzlkOGE1NTUuLmZlMTkwNWE1ZGE3NzU1NDM4NmQ4ZjkxOGJkOTYz
ZmUwZDA1Y2M2MmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcv
V2ViVmlldy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXcu
bW0KQEAgLTIxMSw3ICsyMTEsOSBAQAogI2ltcG9ydCA8cGFsL3NwaS9jZi9DRk5ldHdvcmtTUEku
aD4KICNpbXBvcnQgPHBhbC9zcGkvY29jb2EvTlNUb3VjaEJhclNQSS5oPgogI2ltcG9ydCA8cGFs
L3NwaS9jb2NvYS9OU1VSTEZpbGVUeXBlTWFwcGluZ3NTUEkuaD4KKyNpbXBvcnQgPHBhbC9zcGkv
bWFjL05TUmVzcG9uZGVyU1BJLmg+CiAjaW1wb3J0IDxwYWwvc3BpL21hYy9OU1NwZWxsQ2hlY2tl
clNQSS5oPgorI2ltcG9ydCA8cGFsL3NwaS9tYWMvTlNXaW5kb3dTUEkuaD4KICNpbXBvcnQgPHJ1
bnRpbWUvQXJyYXlQcm90b3R5cGUuaD4KICNpbXBvcnQgPHJ1bnRpbWUvQ2F0Y2hTY29wZS5oPgog
I2ltcG9ydCA8cnVudGltZS9EYXRlSW5zdGFuY2UuaD4KQEAgLTU4NjYsOSArNTg2OCw5IEBAIC0g
KHZvaWQpYWRkV2luZG93T2JzZXJ2ZXJzRm9yV2luZG93OihOU1dpbmRvdyAqKXdpbmRvdwogICAg
ICAgICBbW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdIGFkZE9ic2VydmVyOnNl
bGYgc2VsZWN0b3I6QHNlbGVjdG9yKHdpbmRvd0tleVN0YXRlQ2hhbmdlZDopCiAgICAgICAgICAg
ICBuYW1lOk5TV2luZG93RGlkUmVzaWduS2V5Tm90aWZpY2F0aW9uIG9iamVjdDp3aW5kb3ddOwog
ICAgICAgICBbW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdIGFkZE9ic2VydmVy
OnNlbGYgc2VsZWN0b3I6QHNlbGVjdG9yKF93aW5kb3dXaWxsT3JkZXJPblNjcmVlbjopCi0gICAg
ICAgICAgICBuYW1lOldLV2luZG93V2lsbE9yZGVyT25TY3JlZW5Ob3RpZmljYXRpb24oKSBvYmpl
Y3Q6d2luZG93XTsKKyAgICAgICAgICAgIG5hbWU6TlNXaW5kb3dXaWxsT3JkZXJPblNjcmVlbk5v
dGlmaWNhdGlvbiBvYmplY3Q6d2luZG93XTsKICAgICAgICAgW1tOU05vdGlmaWNhdGlvbkNlbnRl
ciBkZWZhdWx0Q2VudGVyXSBhZGRPYnNlcnZlcjpzZWxmIHNlbGVjdG9yOkBzZWxlY3Rvcihfd2lu
ZG93V2lsbE9yZGVyT2ZmU2NyZWVuOikKLSAgICAgICAgICAgIG5hbWU6V0tXaW5kb3dXaWxsT3Jk
ZXJPZmZTY3JlZW5Ob3RpZmljYXRpb24oKSBvYmplY3Q6d2luZG93XTsKKyAgICAgICAgICAgIG5h
bWU6TlNXaW5kb3dXaWxsT3JkZXJPZmZTY3JlZW5Ob3RpZmljYXRpb24gb2JqZWN0OndpbmRvd107
CiAgICAgICAgIFtbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl0gYWRkT2JzZXJ2
ZXI6c2VsZiBzZWxlY3RvcjpAc2VsZWN0b3IoX3dpbmRvd0RpZENoYW5nZUJhY2tpbmdQcm9wZXJ0
aWVzOikKICAgICAgICAgICAgIG5hbWU6d2luZG93RGlkQ2hhbmdlQmFja2luZ1Byb3BlcnRpZXNO
b3RpZmljYXRpb24gb2JqZWN0OndpbmRvd107CiAgICAgICAgIFtbTlNOb3RpZmljYXRpb25DZW50
ZXIgZGVmYXVsdENlbnRlcl0gYWRkT2JzZXJ2ZXI6c2VsZiBzZWxlY3RvcjpAc2VsZWN0b3IoX3dp
bmRvd0RpZENoYW5nZVNjcmVlbjopCkBAIC01ODkwLDkgKzU4OTIsOSBAQCAtICh2b2lkKXJlbW92
ZVdpbmRvd09ic2VydmVycwogICAgICAgICBbW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRD
ZW50ZXJdIHJlbW92ZU9ic2VydmVyOnNlbGYKICAgICAgICAgICAgIG5hbWU6TlNXaW5kb3dEaWRS
ZXNpZ25LZXlOb3RpZmljYXRpb24gb2JqZWN0OndpbmRvd107CiAgICAgICAgIFtbTlNOb3RpZmlj
YXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl0gcmVtb3ZlT2JzZXJ2ZXI6c2VsZgotICAgICAgICAg
ICAgbmFtZTpXS1dpbmRvd1dpbGxPcmRlck9uU2NyZWVuTm90aWZpY2F0aW9uKCkgb2JqZWN0Ondp
bmRvd107CisgICAgICAgICAgICBuYW1lOk5TV2luZG93V2lsbE9yZGVyT25TY3JlZW5Ob3RpZmlj
YXRpb24gb2JqZWN0OndpbmRvd107CiAgICAgICAgIFtbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVm
YXVsdENlbnRlcl0gcmVtb3ZlT2JzZXJ2ZXI6c2VsZgotICAgICAgICAgICAgbmFtZTpXS1dpbmRv
d1dpbGxPcmRlck9mZlNjcmVlbk5vdGlmaWNhdGlvbigpIG9iamVjdDp3aW5kb3ddOworICAgICAg
ICAgICAgbmFtZTpOU1dpbmRvd1dpbGxPcmRlck9mZlNjcmVlbk5vdGlmaWNhdGlvbiBvYmplY3Q6
d2luZG93XTsKICAgICAgICAgW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSBy
ZW1vdmVPYnNlcnZlcjpzZWxmCiAgICAgICAgICAgICBuYW1lOndpbmRvd0RpZENoYW5nZUJhY2tp
bmdQcm9wZXJ0aWVzTm90aWZpY2F0aW9uIG9iamVjdDp3aW5kb3ddOwogICAgICAgICBbW05TTm90
aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdIHJlbW92ZU9ic2VydmVyOnNlbGYKQEAgLTU5
MjMsNyArNTkyNSw3IEBAIC0gKHZvaWQpdmlld1dpbGxNb3ZlVG9XaW5kb3c6KE5TV2luZG93ICop
d2luZG93CiAgICAgICAgIC8vIFRoZSBmb2xsb3dpbmcgYXJlIGV4cGVuc2l2ZSBlbm91Z2ggdGhh
dCB3ZSBkb24ndCB3YW50IHRvIGNhbGwgdGhlbSBvdmVyCiAgICAgICAgIC8vIGFuZCBvdmVyLCBz
byBkbyB0aGVtIHdoZW4gd2UgbW92ZSBpbnRvIGEgd2luZG93LgogICAgICAgICBbd2luZG93IHNl
dEFjY2VwdHNNb3VzZU1vdmVkRXZlbnRzOllFU107Ci0gICAgICAgIFdLU2V0TlNXaW5kb3dTaG91
bGRQb3N0RXZlbnROb3RpZmljYXRpb25zKHdpbmRvdywgWUVTKTsKKyAgICAgICAgW3dpbmRvdyBf
c2V0U2hvdWxkUG9zdEV2ZW50Tm90aWZpY2F0aW9uczpZRVNdOwogICAgIH0gZWxzZSBpZiAoIV9w
cml2YXRlLT5jbG9zZWQpIHsKICAgICAgICAgX3ByaXZhdGUtPnBhZ2UtPnNldENhblN0YXJ0TWVk
aWEoZmFsc2UpOwogICAgICAgICBfcHJpdmF0ZS0+cGFnZS0+c2V0SXNJbldpbmRvdyhmYWxzZSk7
Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>