<?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>177017</bug_id>
          
          <creation_ts>2017-09-15 11:23:58 -0700</creation_ts>
          <short_desc>[Win] WTF: Add alias for process id to use in place of direct uses of pid_t</short_desc>
          <delta_ts>2017-09-27 12:25: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>Platform</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="Stephan Szabo">stephan.szabo</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>achristensen</cc>
    
    <cc>benjamin</cc>
    
    <cc>buildbot</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1349410</commentid>
    <comment_count>0</comment_count>
    <who name="Stephan Szabo">stephan.szabo</who>
    <bug_when>2017-09-15 11:23:58 -0700</bug_when>
    <thetext>pid_t is used directly in places, but isn&apos;t present for Windows. Make an alias in WTF for process identifiers for non-port-specific files.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1349413</commentid>
    <comment_count>1</comment_count>
      <attachid>320935</attachid>
    <who name="Stephan Szabo">stephan.szabo</who>
    <bug_when>2017-09-15 11:32:22 -0700</bug_when>
    <thetext>Created attachment 320935
Test patch for ews on adding process identifier alias.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1349417</commentid>
    <comment_count>2</comment_count>
      <attachid>320935</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2017-09-15 11:36:13 -0700</bug_when>
    <thetext>Comment on attachment 320935
Test patch for ews on adding process identifier alias.

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

&gt; Source/WTF/wtf/ProcessID.h:40
&gt; +using ProcessIdentifier = int;

Let&apos;s just call this ProcessID like the file.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1349418</commentid>
    <comment_count>3</comment_count>
      <attachid>320935</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2017-09-15 11:38:17 -0700</bug_when>
    <thetext>Comment on attachment 320935
Test patch for ews on adding process identifier alias.

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

&gt;&gt; Source/WTF/wtf/ProcessID.h:40
&gt;&gt; +using ProcessIdentifier = int;
&gt; 
&gt; Let&apos;s just call this ProcessID like the file.

Also, the common practice is to add using WTF::ProcessID at the bottom of this file so that we can just say ProcessID everywhere else instead of WTF::ProcessID.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1349421</commentid>
    <comment_count>4</comment_count>
      <attachid>320935</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2017-09-15 11:38:57 -0700</bug_when>
    <thetext>Comment on attachment 320935
Test patch for ews on adding process identifier alias.

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

&gt; Source/JavaScriptCore/inspector/remote/RemoteInspector.h:112
&gt; -    pid_t parentProcessIdentifier() const { return m_parentProcessIdentifier; }
&gt; +    WTF::ProcessIdentifierparentProcessIdentifier() const { return m_parentProcessIdentifier; }

typo here (missing &quot; &quot;).  Please fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1349474</commentid>
    <comment_count>5</comment_count>
      <attachid>320950</attachid>
    <who name="Stephan Szabo">stephan.szabo</who>
    <bug_when>2017-09-15 12:57:12 -0700</bug_when>
    <thetext>Created attachment 320950
Test patch for ews on adding process identifier alias.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1349484</commentid>
    <comment_count>6</comment_count>
      <attachid>320953</attachid>
    <who name="Stephan Szabo">stephan.szabo</who>
    <bug_when>2017-09-15 13:06:30 -0700</bug_when>
    <thetext>Created attachment 320953
Test patch for ews on adding process identifier alias.

Changed name, added using, added space</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1349490</commentid>
    <comment_count>7</comment_count>
      <attachid>320953</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2017-09-15 13:11:26 -0700</bug_when>
    <thetext>Comment on attachment 320953
Test patch for ews on adding process identifier alias.

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

&gt; Source/JavaScriptCore/API/JSRemoteInspector.cpp:54
&gt; +void JSRemoteInspectorSetParentProcessInformation(WTF::ProcessID pid, const uint8_t* auditData, size_t auditLength)

You don&apos;t need the WTF:: qualifier here anymore.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1349497</commentid>
    <comment_count>8</comment_count>
      <attachid>320956</attachid>
    <who name="Stephan Szabo">stephan.szabo</who>
    <bug_when>2017-09-15 13:17:12 -0700</bug_when>
    <thetext>Created attachment 320956
Test patch for ews on adding process identifier alias.

Thanks, I&apos;m not sure how my find and replace missed that. Now removed WTF:: on JSRemoteInspectorSetParentProcessInformation</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1349506</commentid>
    <comment_count>9</comment_count>
      <attachid>320956</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2017-09-15 13:33:40 -0700</bug_when>
    <thetext>Comment on attachment 320956
Test patch for ews on adding process identifier alias.

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

&gt; Source/WebKit/UIProcess/API/C/WKContextPrivate.h:31
&gt; +#include &lt;wtf/ProcessID.h&gt;

We can&apos;t use wtf/ from exported (public or private) API headers (the ones like APIProcessPoolConfiguration.h are OK -- those are internal implementations of the API; you can check if the header is public/private in Xcode if you need to confirm in each case) as far as I know, so I don&apos;t think you can do this. Can we leave it as pid_t just in the API/SPI?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1349516</commentid>
    <comment_count>10</comment_count>
    <who name="Stephan Szabo">stephan.szabo</who>
    <bug_when>2017-09-15 13:43:19 -0700</bug_when>
    <thetext>I don&apos;t think leaving it as pid_t works unless that file wouldn&apos;t be used on Windows building with WebKit (as we&apos;re now trying to do as opposed to WebKitLegacy) because pid_t wouldn&apos;t be valid there.

We could do something similar to what is in ProcessID, but then we&apos;d have to worry about them staying in sync.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1349521</commentid>
    <comment_count>11</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2017-09-15 13:49:40 -0700</bug_when>
    <thetext>(In reply to Stephan Szabo from comment #10)
&gt; I don&apos;t think leaving it as pid_t works unless that file wouldn&apos;t be used on
&gt; Windows building with WebKit (as we&apos;re now trying to do as opposed to
&gt; WebKitLegacy) because pid_t wouldn&apos;t be valid there.
&gt; 
&gt; We could do something similar to what is in ProcessID, but then we&apos;d have to
&gt; worry about them staying in sync.

You&apos;re planning on using the C API?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1349527</commentid>
    <comment_count>12</comment_count>
    <who name="Stephan Szabo">stephan.szabo</who>
    <bug_when>2017-09-15 14:13:32 -0700</bug_when>
    <thetext>We have been trying to add port files and make things there work for Windows including that API.

It shouldn&apos;t be hard to make separate definitions or to roll back the two private bits there and discuss how to approach the API headers.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1349533</commentid>
    <comment_count>13</comment_count>
      <attachid>320965</attachid>
    <who name="Stephan Szabo">stephan.szabo</who>
    <bug_when>2017-09-15 14:28:01 -0700</bug_when>
    <thetext>Created attachment 320965
Test patch for ews on adding process identifier alias, api private headers using pid_t with override

To see how this fares, update the two API/C/*Private.h files back to pid_t with an OS(WINDOWS) setup of pid_t typedef.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1349538</commentid>
    <comment_count>14</comment_count>
    <who name="Stephan Szabo">stephan.szabo</who>
    <bug_when>2017-09-15 14:34:45 -0700</bug_when>
    <thetext>Should have expected OS() to be unhappy. Redoing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1349541</commentid>
    <comment_count>15</comment_count>
      <attachid>320966</attachid>
    <who name="Stephan Szabo">stephan.szabo</who>
    <bug_when>2017-09-15 14:40:59 -0700</bug_when>
    <thetext>Created attachment 320966
Test patch for ews on adding process identifier alias, api private headers using pid_t with override

Now with non-OS check on private headers using pid_t version</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1349556</commentid>
    <comment_count>16</comment_count>
      <attachid>320966</attachid>
    <who name="Stephan Szabo">stephan.szabo</who>
    <bug_when>2017-09-15 16:11:01 -0700</bug_when>
    <thetext>Comment on attachment 320966
Test patch for ews on adding process identifier alias, api private headers using pid_t with override

I&apos;m not sure if the changes on the two private headers should be there or maybe in WKBase or if we should use a name other than pid_t.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1349761</commentid>
    <comment_count>17</comment_count>
      <attachid>320966</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2017-09-17 09:43:02 -0700</bug_when>
    <thetext>Comment on attachment 320966
Test patch for ews on adding process identifier alias, api private headers using pid_t with override

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

&gt; Source/JavaScriptCore/API/JSRemoteInspector.h:31
&gt; +#include &lt;wtf/ProcessID.h&gt;

As Tim explained, API headers cannot use wtf.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1349963</commentid>
    <comment_count>18</comment_count>
      <attachid>321104</attachid>
    <who name="Stephan Szabo">stephan.szabo</who>
    <bug_when>2017-09-18 10:16:10 -0700</bug_when>
    <thetext>Created attachment 321104
Test patch for ews on adding process identifier alias

Missed that the JavaScriptCore one was an API header as well.

Again not sure if putting definitions in each header is correct or if there&apos;s a more general place to put platform specific type information for the API headers, nor whether it&apos;d be better to still use a type that isn&apos;t directly pid_t in them to prevent non-portable types from leaking.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1349966</commentid>
    <comment_count>19</comment_count>
    <who name="Build Bot">buildbot</who>
    <bug_when>2017-09-18 10:17:40 -0700</bug_when>
    <thetext>Attachment 321104 did not pass style-queue:


ERROR: Source/JavaScriptCore/API/JSRemoteInspector.h:33:  pid_t is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming/underscores] [4]
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>1350465</commentid>
    <comment_count>20</comment_count>
      <attachid>321236</attachid>
    <who name="Stephan Szabo">stephan.szabo</who>
    <bug_when>2017-09-19 13:18:08 -0700</bug_when>
    <thetext>Created attachment 321236
Adding process identifier aliases to avoid direct use of pid_t</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1351108</commentid>
    <comment_count>21</comment_count>
      <attachid>321236</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-09-20 19:55:10 -0700</bug_when>
    <thetext>Comment on attachment 321236
Adding process identifier aliases to avoid direct use of pid_t

Clearing flags on attachment: 321236

Committed r222309: &lt;http://trac.webkit.org/changeset/222309&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1351109</commentid>
    <comment_count>22</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-09-20 19:55:12 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1353368</commentid>
    <comment_count>23</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-09-27 12:25:37 -0700</bug_when>
    <thetext>&lt;rdar://problem/34693257&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>320935</attachid>
            <date>2017-09-15 11:32:22 -0700</date>
            <delta_ts>2017-09-15 12:57:12 -0700</delta_ts>
            <desc>Test patch for ews on adding process identifier alias.</desc>
            <filename>pid_t.test.diff</filename>
            <type>text/plain</type>
            <size>18885</size>
            <attacher name="Stephan Szabo">stephan.szabo</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNSZW1vdGVJbnNwZWN0b3Iu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1JlbW90ZUluc3BlY3Rvci5jcHAKaW5k
ZXggM2JlNjFkMDkyNzIuLjcwOWJhNTE2YmQ2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQVBJL0pTUmVtb3RlSW5zcGVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQVBJL0pTUmVtb3RlSW5zcGVjdG9yLmNwcApAQCAtMjcsNiArMjcsNyBAQAogI2luY2x1ZGUg
IkpTUmVtb3RlSW5zcGVjdG9yLmgiCiAKICNpbmNsdWRlICJKU0dsb2JhbE9iamVjdENvbnNvbGVD
bGllbnQuaCIKKyNpbmNsdWRlIDx3dGYvUHJvY2Vzc0lELmg+CiAKICNpZiBFTkFCTEUoUkVNT1RF
X0lOU1BFQ1RPUikKICNpbmNsdWRlICJSZW1vdGVJbnNwZWN0b3IuaCIKQEAgLTUwLDcgKzUxLDcg
QEAgdm9pZCBKU1JlbW90ZUluc3BlY3RvclN0YXJ0KHZvaWQpCiAjZW5kaWYKIH0KIAotdm9pZCBK
U1JlbW90ZUluc3BlY3RvclNldFBhcmVudFByb2Nlc3NJbmZvcm1hdGlvbihwaWRfdCBwaWQsIGNv
bnN0IHVpbnQ4X3QqIGF1ZGl0RGF0YSwgc2l6ZV90IGF1ZGl0TGVuZ3RoKQordm9pZCBKU1JlbW90
ZUluc3BlY3RvclNldFBhcmVudFByb2Nlc3NJbmZvcm1hdGlvbihXVEY6OlByb2Nlc3NJZGVudGlm
aWVyIHBpZCwgY29uc3QgdWludDhfdCogYXVkaXREYXRhLCBzaXplX3QgYXVkaXRMZW5ndGgpCiB7
CiAjaWYgRU5BQkxFKFJFTU9URV9JTlNQRUNUT1IpICYmIFBMQVRGT1JNKENPQ09BKQogICAgIFJl
dGFpblB0cjxDRkRhdGFSZWY+IGF1ZGl0RGF0YVJlZiA9IGFkb3B0Q0YoQ0ZEYXRhQ3JlYXRlKGtD
RkFsbG9jYXRvckRlZmF1bHQsIGF1ZGl0RGF0YSwgYXVkaXRMZW5ndGgpKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNSZW1vdGVJbnNwZWN0b3IuaCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9BUEkvSlNSZW1vdGVJbnNwZWN0b3IuaAppbmRleCA0Zjg2NTEwMjk5OC4u
NGI1YzVmZTVkZTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNSZW1v
dGVJbnNwZWN0b3IuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTUmVtb3RlSW5z
cGVjdG9yLmgKQEAgLTI4LDYgKzI4LDcgQEAKIAogI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0pT
QmFzZS5oPgogI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL1dlYktpdEF2YWlsYWJpbGl0eS5oPgor
I2luY2x1ZGUgPHd0Zi9Qcm9jZXNzSUQuaD4KIAogI2luY2x1ZGUgPHVuaXN0ZC5oPgogCkBAIC0z
Nyw3ICszOCw3IEBAIGV4dGVybiAiQyIgewogCiBKU19FWFBPUlQgdm9pZCBKU1JlbW90ZUluc3Bl
Y3RvckRpc2FibGVBdXRvU3RhcnQodm9pZCkgQ0ZfQVZBSUxBQkxFKDEwXzExLCA5XzApOwogSlNf
RVhQT1JUIHZvaWQgSlNSZW1vdGVJbnNwZWN0b3JTdGFydCh2b2lkKSBDRl9BVkFJTEFCTEUoMTBf
MTEsIDlfMCk7Ci1KU19FWFBPUlQgdm9pZCBKU1JlbW90ZUluc3BlY3RvclNldFBhcmVudFByb2Nl
c3NJbmZvcm1hdGlvbihwaWRfdCwgY29uc3QgdWludDhfdCogYXVkaXREYXRhLCBzaXplX3QgYXVk
aXRMZW5ndGgpIENGX0FWQUlMQUJMRSgxMF8xMSwgOV8wKTsKK0pTX0VYUE9SVCB2b2lkIEpTUmVt
b3RlSW5zcGVjdG9yU2V0UGFyZW50UHJvY2Vzc0luZm9ybWF0aW9uKFdURjo6UHJvY2Vzc0lkZW50
aWZpZXIsIGNvbnN0IHVpbnQ4X3QqIGF1ZGl0RGF0YSwgc2l6ZV90IGF1ZGl0TGVuZ3RoKSBDRl9B
VkFJTEFCTEUoMTBfMTEsIDlfMCk7CiAKIEpTX0VYUE9SVCB2b2lkIEpTUmVtb3RlSW5zcGVjdG9y
U2V0TG9nVG9TeXN0ZW1Db25zb2xlKGJvb2wpIENGX0FWQUlMQUJMRSgxMF8xMSwgOV8wKTsKIApk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9yZW1vdGUvUmVtb3Rl
SW5zcGVjdG9yLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3JlbW90ZS9SZW1v
dGVJbnNwZWN0b3IuaAppbmRleCBkMDBkZTJiNzAzZC4uZjViNDZjMmE1ZWMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcmVtb3RlL1JlbW90ZUluc3BlY3Rvci5o
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcmVtb3RlL1JlbW90ZUluc3Bl
Y3Rvci5oCkBAIC0zMCw2ICszMCw3IEBACiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KICNpbmNs
dWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUgPHd0Zi9Mb2NrLmg+CisjaW5jbHVkZSA8d3Rm
L1Byb2Nlc3NJRC5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCiAjaWYgUExB
VEZPUk0oQ09DT0EpCkBAIC0xMDgsOSArMTA5LDkgQEAgcHVibGljOgogCiAjaWYgUExBVEZPUk0o
Q09DT0EpCiAgICAgYm9vbCBoYXNQYXJlbnRQcm9jZXNzSW5mb3JtYXRpb24oKSBjb25zdCB7IHJl
dHVybiBtX3BhcmVudFByb2Nlc3NJZGVudGlmaWVyICE9IDA7IH0KLSAgICBwaWRfdCBwYXJlbnRQ
cm9jZXNzSWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1fcGFyZW50UHJvY2Vzc0lkZW50aWZp
ZXI7IH0KKyAgICBXVEY6OlByb2Nlc3NJZGVudGlmaWVycGFyZW50UHJvY2Vzc0lkZW50aWZpZXIo
KSBjb25zdCB7IHJldHVybiBtX3BhcmVudFByb2Nlc3NJZGVudGlmaWVyOyB9CiAgICAgUmV0YWlu
UHRyPENGRGF0YVJlZj4gcGFyZW50UHJvY2Vzc0F1ZGl0RGF0YSgpIGNvbnN0IHsgcmV0dXJuIG1f
cGFyZW50UHJvY2Vzc0F1ZGl0RGF0YTsgfQotICAgIHZvaWQgc2V0UGFyZW50UHJvY2Vzc0luZm9y
bWF0aW9uKHBpZF90LCBSZXRhaW5QdHI8Q0ZEYXRhUmVmPiBhdWRpdERhdGEpOworICAgIHZvaWQg
c2V0UGFyZW50UHJvY2Vzc0luZm9ybWF0aW9uKFdURjo6UHJvY2Vzc0lkZW50aWZpZXIsIFJldGFp
blB0cjxDRkRhdGFSZWY+IGF1ZGl0RGF0YSk7CiAgICAgdm9pZCBzZXRQYXJlbnRQcm9jZXNzSW5m
b21hdGlvbklzRGVsYXllZCgpOwogI2VuZGlmCiAKQEAgLTIwNyw3ICsyMDgsNyBAQCBwcml2YXRl
OgogICAgIGJvb2wgbV9oYXNBY3RpdmVEZWJ1Z1Nlc3Npb24geyBmYWxzZSB9OwogICAgIGJvb2wg
bV9wdXNoU2NoZWR1bGVkIHsgZmFsc2UgfTsKIAotICAgIHBpZF90IG1fcGFyZW50UHJvY2Vzc0lk
ZW50aWZpZXIgeyAwIH07CisgICAgV1RGOjpQcm9jZXNzSWRlbnRpZmllciBtX3BhcmVudFByb2Nl
c3NJZGVudGlmaWVyIHsgMCB9OwogI2lmIFBMQVRGT1JNKENPQ09BKQogICAgIFJldGFpblB0cjxD
RkRhdGFSZWY+IG1fcGFyZW50UHJvY2Vzc0F1ZGl0RGF0YTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dURi93dGYvUHJvY2Vzc0lELmggYi9Tb3VyY2UvV1RGL3d0Zi9Qcm9jZXNzSUQuaApp
bmRleCBmODQ3MTZlOGQ5My4uOTY1NzUyNzFhYzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3Rm
L1Byb2Nlc3NJRC5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL1Byb2Nlc3NJRC5oCkBAIC0zNiw3ICsz
NiwxMyBAQAogCiBuYW1lc3BhY2UgV1RGIHsKIAotaW5saW5lIGludCBnZXRDdXJyZW50UHJvY2Vz
c0lEKCkKKyNpZiBPUyhXSU5ET1dTKQordXNpbmcgUHJvY2Vzc0lkZW50aWZpZXIgPSBpbnQ7Cisj
ZWxzZQordXNpbmcgUHJvY2Vzc0lkZW50aWZpZXIgPSBwaWRfdDsKKyNlbmRpZgorCitpbmxpbmUg
UHJvY2Vzc0lkZW50aWZpZXIgZ2V0Q3VycmVudFByb2Nlc3NJRCgpCiB7CiAjaWYgT1MoV0lORE9X
UykKICAgICByZXR1cm4gR2V0Q3VycmVudFByb2Nlc3NJZCgpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5o
IGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFy
YW1ldGVycy5oCmluZGV4IDFlYjc5Nzk5NjE4Li4wMGQ3MWZiZDkyOCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVy
cy5oCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3NDcmVh
dGlvblBhcmFtZXRlcnMuaApAQCAtMjgsNiArMjgsNyBAQAogI2luY2x1ZGUgIkF0dGFjaG1lbnQu
aCIKICNpbmNsdWRlICJDYWNoZU1vZGVsLmgiCiAjaW5jbHVkZSAiU2FuZGJveEV4dGVuc2lvbi5o
IgorI2luY2x1ZGUgPHd0Zi9Qcm9jZXNzSUQuaD4KICNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CiAj
aW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKQEAgLTc4LDcgKzc5LDcgQEAgc3RydWN0
IE5ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzIHsKICAgICBTZWNvbmRzIGxvYWRUaHJv
dHRsZUxhdGVuY3k7CiAKICAgICBWZWN0b3I8U3RyaW5nPiB1cmxTY2hlbWVzUmVnaXN0ZXJlZEZv
ckN1c3RvbVByb3RvY29sczsKLSAgICBwaWRfdCBwcmVzZW50aW5nQXBwbGljYXRpb25QSUQgeyAw
IH07CisgICAgV1RGOjpQcm9jZXNzSWRlbnRpZmllciBwcmVzZW50aW5nQXBwbGljYXRpb25QSUQg
eyAwIH07CiAKICNpZiBQTEFURk9STShDT0NPQSkKICAgICBTdHJpbmcgcGFyZW50UHJvY2Vzc05h
bWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQcm9jZXNzQ3JlYXRpb25Q
YXJhbWV0ZXJzLmggYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQcm9jZXNzQ3JlYXRpb25QYXJh
bWV0ZXJzLmgKaW5kZXggNTYxODVhYmU3NmIuLjM0MmQzM2VjM2U4IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1NoYXJlZC9XZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmgKKysrIGIvU291
cmNlL1dlYktpdC9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oCkBAIC0zMCw2
ICszMCw3IEBACiAjaW5jbHVkZSAiVGV4dENoZWNrZXJTdGF0ZS5oIgogI2luY2x1ZGUgIlVzZXJE
YXRhLmgiCiAjaW5jbHVkZSA8cGFsL1Nlc3Npb25JRC5oPgorI2luY2x1ZGUgPHd0Zi9Qcm9jZXNz
SUQuaD4KICNpbmNsdWRlIDx3dGYvUmV0YWluUHRyLmg+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5o
PgogI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0hhc2guaD4KQEAgLTEzNiw3ICsxMzcsNyBAQCBz
dHJ1Y3QgV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycyB7CiAgICAgU3RyaW5nIHVpUHJvY2Vz
c0J1bmRsZUlkZW50aWZpZXI7CiAjZW5kaWYKIAotICAgIHBpZF90IHByZXNlbnRpbmdBcHBsaWNh
dGlvblBJRCB7IDAgfTsKKyAgICBXVEY6OlByb2Nlc3NJZGVudGlmaWVyIHByZXNlbnRpbmdBcHBs
aWNhdGlvblBJRCB7IDAgfTsKIAogI2lmIFBMQVRGT1JNKENPQ09BKQogICAgIFdlYkNvcmU6Ok1h
Y2hTZW5kUmlnaHQgYWNjZWxlcmF0ZWRDb21wb3NpdGluZ1BvcnQ7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmggYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmgK
aW5kZXggOTU0NDg0NzkzYjQuLmI2YzBiZDNiOWI5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9BUEkvQVBJUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmgKKysrIGIvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQSVByb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5oCkBAIC0x
MzksOCArMTM5LDggQEAgcHVibGljOgogICAgIHZvaWQgc2V0Q1REYXRhQ29ubmVjdGlvblNlcnZp
Y2VUeXBlKGNvbnN0IFdURjo6U3RyaW5nJiBjdERhdGFDb25uZWN0aW9uU2VydmljZVR5cGUpIHsg
bV9jdERhdGFDb25uZWN0aW9uU2VydmljZVR5cGUgPSBjdERhdGFDb25uZWN0aW9uU2VydmljZVR5
cGU7IH0KICNlbmRpZgogCi0gICAgcGlkX3QgcHJlc2VudGluZ0FwcGxpY2F0aW9uUElEKCkgY29u
c3QgeyByZXR1cm4gbV9wcmVzZW50aW5nQXBwbGljYXRpb25QSUQ7IH0KLSAgICB2b2lkIHNldFBy
ZXNlbnRpbmdBcHBsaWNhdGlvblBJRChwaWRfdCBwaWQpIHsgbV9wcmVzZW50aW5nQXBwbGljYXRp
b25QSUQgPSBwaWQ7IH0KKyAgICBXVEY6OlByb2Nlc3NJZGVudGlmaWVyIHByZXNlbnRpbmdBcHBs
aWNhdGlvblBJRCgpIGNvbnN0IHsgcmV0dXJuIG1fcHJlc2VudGluZ0FwcGxpY2F0aW9uUElEOyB9
CisgICAgdm9pZCBzZXRQcmVzZW50aW5nQXBwbGljYXRpb25QSUQoV1RGOjpQcm9jZXNzSWRlbnRp
ZmllciBwaWQpIHsgbV9wcmVzZW50aW5nQXBwbGljYXRpb25QSUQgPSBwaWQ7IH0KIAogcHJpdmF0
ZToKICAgICBib29sIG1fc2hvdWxkSGF2ZUxlZ2FjeURhdGFTdG9yZSB7IGZhbHNlIH07CkBAIC0x
NzQsNyArMTc0LDcgQEAgcHJpdmF0ZToKICAgICBib29sIG1fYWx3YXlzUnVuc0F0QmFja2dyb3Vu
ZFByaW9yaXR5IHsgZmFsc2UgfTsKICAgICBib29sIG1fc2hvdWxkVGFrZVVJQmFja2dyb3VuZEFz
c2VydGlvbiB7IHRydWUgfTsKICAgICBib29sIG1fc2hvdWxkQ2FwdHVyZUF1ZGlvSW5VSVByb2Nl
c3MgeyBmYWxzZSB9OwotICAgIHBpZF90IG1fcHJlc2VudGluZ0FwcGxpY2F0aW9uUElEIHsgZ2V0
Q3VycmVudFByb2Nlc3NJRCgpIH07CisgICAgV1RGOjpQcm9jZXNzSWRlbnRpZmllciBtX3ByZXNl
bnRpbmdBcHBsaWNhdGlvblBJRCB7IGdldEN1cnJlbnRQcm9jZXNzSUQoKSB9OwogI2lmIFBMQVRG
T1JNKElPUykKICAgICBXVEY6OlN0cmluZyBtX2N0RGF0YUNvbm5lY3Rpb25TZXJ2aWNlVHlwZTsK
ICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tDb250
ZXh0LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dC5jcHAKaW5k
ZXggMDVhNGVmOTRjYTkuLmYwNTY2NGYwNTc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9BUEkvQy9XS0NvbnRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L0FQSS9DL1dLQ29udGV4dC5jcHAKQEAgLTU5OSwxMiArNTk5LDEyIEBAIHZvaWQgV0tDb250ZXh0
VGVybWluYXRlTmV0d29ya1Byb2Nlc3MoV0tDb250ZXh0UmVmIGNvbnRleHQpCiAgICAgdG9JbXBs
KGNvbnRleHQpLT50ZXJtaW5hdGVOZXR3b3JrUHJvY2VzcygpOwogfQogCi1waWRfdCBXS0NvbnRl
eHRHZXROZXR3b3JrUHJvY2Vzc0lkZW50aWZpZXIoV0tDb250ZXh0UmVmIGNvbnRleHRSZWYpCitX
VEY6OlByb2Nlc3NJZGVudGlmaWVyIFdLQ29udGV4dEdldE5ldHdvcmtQcm9jZXNzSWRlbnRpZmll
cihXS0NvbnRleHRSZWYgY29udGV4dFJlZikKIHsKICAgICByZXR1cm4gdG9JbXBsKGNvbnRleHRS
ZWYpLT5uZXR3b3JrUHJvY2Vzc0lkZW50aWZpZXIoKTsKIH0KIAotcGlkX3QgV0tDb250ZXh0R2V0
RGF0YWJhc2VQcm9jZXNzSWRlbnRpZmllcihXS0NvbnRleHRSZWYgY29udGV4dFJlZikKK1dURjo6
UHJvY2Vzc0lkZW50aWZpZXIgV0tDb250ZXh0R2V0RGF0YWJhc2VQcm9jZXNzSWRlbnRpZmllcihX
S0NvbnRleHRSZWYgY29udGV4dFJlZikKIHsKICAgICByZXR1cm4gdG9JbXBsKGNvbnRleHRSZWYp
LT5zdG9yYWdlUHJvY2Vzc0lkZW50aWZpZXIoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dFByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL0FQSS9DL1dLQ29udGV4dFByaXZhdGUuaAppbmRleCBmZTg3ODhkMzQyYi4uYzcwNWE2
MzhiYmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4
dFByaXZhdGUuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHRQ
cml2YXRlLmgKQEAgLTI4LDYgKzI4LDcgQEAKIAogI2luY2x1ZGUgPFdlYktpdC9XS0Jhc2UuaD4K
ICNpbmNsdWRlIDxXZWJLaXQvV0tDb250ZXh0Lmg+CisjaW5jbHVkZSA8d3RmL1Byb2Nlc3NJRC5o
PgogCiAjaW5jbHVkZSA8dW5pc3RkLmg+CiAKQEAgLTEwMCw4ICsxMDEsOCBAQCBXS19FWFBPUlQg
dm9pZCBXS0NvbnRleHRTZXRNZW1vcnlDYWNoZURpc2FibGVkKFdLQ29udGV4dFJlZiwgYm9vbCBk
aXNhYmxlZCk7CiAKIFdLX0VYUE9SVCB2b2lkIFdLQ29udGV4dFNldEZvbnRXaGl0ZWxpc3QoV0tD
b250ZXh0UmVmLCBXS0FycmF5UmVmKTsKIAotV0tfRVhQT1JUIHBpZF90IFdLQ29udGV4dEdldE5l
dHdvcmtQcm9jZXNzSWRlbnRpZmllcihXS0NvbnRleHRSZWYgY29udGV4dCk7Ci1XS19FWFBPUlQg
cGlkX3QgV0tDb250ZXh0R2V0RGF0YWJhc2VQcm9jZXNzSWRlbnRpZmllcihXS0NvbnRleHRSZWYg
Y29udGV4dCk7CitXS19FWFBPUlQgV1RGOjpQcm9jZXNzSWRlbnRpZmllciBXS0NvbnRleHRHZXRO
ZXR3b3JrUHJvY2Vzc0lkZW50aWZpZXIoV0tDb250ZXh0UmVmIGNvbnRleHQpOworV0tfRVhQT1JU
IFdURjo6UHJvY2Vzc0lkZW50aWZpZXIgV0tDb250ZXh0R2V0RGF0YWJhc2VQcm9jZXNzSWRlbnRp
ZmllcihXS0NvbnRleHRSZWYgY29udGV4dCk7CiAKICNpZmRlZiBfX2NwbHVzcGx1cwogfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQYWdlLmNwcCBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLUGFnZS5jcHAKaW5kZXggMDY3YzBlYzk0YzAuLmIw
ZDI3ZTE3MTk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS1Bh
Z2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLUGFnZS5jcHAKQEAg
LTI3NDEsNyArMjc0MSw3IEBAIHZvaWQgV0tQYWdlU2V0SWdub3Jlc1ZpZXdwb3J0U2NhbGVMaW1p
dHMoV0tQYWdlUmVmIHBhZ2UsIGJvb2wgaWdub3Jlc1ZpZXdwb3J0U2NhCiAjZW5kaWYKIH0KIAot
cGlkX3QgV0tQYWdlR2V0UHJvY2Vzc0lkZW50aWZpZXIoV0tQYWdlUmVmIHBhZ2UpCitXVEY6OlBy
b2Nlc3NJZGVudGlmaWVyIFdLUGFnZUdldFByb2Nlc3NJZGVudGlmaWVyKFdLUGFnZVJlZiBwYWdl
KQogewogICAgIHJldHVybiB0b0ltcGwocGFnZSktPnByb2Nlc3NJZGVudGlmaWVyKCk7CiB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2VQcml2YXRlLmgg
Yi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2VQcml2YXRlLmgKaW5kZXggODcx
NzQ2ODg3NjEuLjJjZTI0N2RmMmQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9BUEkvQy9XS1BhZ2VQcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJ
L0MvV0tQYWdlUHJpdmF0ZS5oCkBAIC0yOCw2ICsyOCw3IEBACiAKICNpbmNsdWRlIDxXZWJLaXQv
V0tCYXNlLmg+CiAjaW5jbHVkZSA8V2ViS2l0L1dLUGFnZS5oPgorI2luY2x1ZGUgPHd0Zi9Qcm9j
ZXNzSUQuaD4KIAogI2luY2x1ZGUgPHVuaXN0ZC5oPgogCkBAIC0xNzEsNyArMTcyLDcgQEAgV0tf
RVhQT1JUIHZvaWQgV0tQYWdlUmVzdG9yZUZyb21TZXNzaW9uU3RhdGVXaXRob3V0TmF2aWdhdGlv
bihXS1BhZ2VSZWYgcGFnZSwgV0sKIAogV0tfRVhQT1JUIHZvaWQgV0tQYWdlU2V0SWdub3Jlc1Zp
ZXdwb3J0U2NhbGVMaW1pdHMoV0tQYWdlUmVmIHBhZ2UsIGJvb2wgaWdub3Jlc1ZpZXdwb3J0U2Nh
bGVMaW1pdHMpOwogCi1XS19FWFBPUlQgcGlkX3QgV0tQYWdlR2V0UHJvY2Vzc0lkZW50aWZpZXIo
V0tQYWdlUmVmIHBhZ2UpOworV0tfRVhQT1JUIFdURjo6UHJvY2Vzc0lkZW50aWZpZXIgV0tQYWdl
R2V0UHJvY2Vzc0lkZW50aWZpZXIoV0tQYWdlUmVmIHBhZ2UpOwogCiAjaWZkZWYgX19jcGx1c3Bs
dXMKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NoaWxkUHJvY2Vzc1By
b3h5LmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9DaGlsZFByb2Nlc3NQcm94eS5oCmluZGV4
IGM2M2I5YmUxNDNjLi4wZGY5NDVmYjYxOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvQ2hpbGRQcm9jZXNzUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9D
aGlsZFByb2Nlc3NQcm94eS5oCkBAIC0yOSw2ICsyOSw3IEBACiAjaW5jbHVkZSAiTWVzc2FnZVJl
Y2VpdmVyTWFwLmgiCiAjaW5jbHVkZSAiUHJvY2Vzc0xhdW5jaGVyLmgiCiAKKyNpbmNsdWRlIDx3
dGYvUHJvY2Vzc0lELmg+CiAjaW5jbHVkZSA8d3RmL1N5c3RlbVRyYWNpbmcuaD4KICNpbmNsdWRl
IDx3dGYvVGhyZWFkU2FmZVJlZkNvdW50ZWQuaD4KIApAQCAtNzIsNyArNzMsNyBAQCBwdWJsaWM6
CiAgICAgfTsKICAgICBTdGF0ZSBzdGF0ZSgpIGNvbnN0OwogCi0gICAgcGlkX3QgcHJvY2Vzc0lk
ZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX3Byb2Nlc3NMYXVuY2hlciA/IG1fcHJvY2Vzc0xh
dW5jaGVyLT5wcm9jZXNzSWRlbnRpZmllcigpIDogMDsgfQorICAgIFdURjo6UHJvY2Vzc0lkZW50
aWZpZXIgcHJvY2Vzc0lkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX3Byb2Nlc3NMYXVuY2hl
ciA/IG1fcHJvY2Vzc0xhdW5jaGVyLT5wcm9jZXNzSWRlbnRpZmllcigpIDogMDsgfQogCiAgICAg
Ym9vbCBjYW5TZW5kTWVzc2FnZSgpIGNvbnN0IHsgcmV0dXJuIHN0YXRlKCkgIT0gU3RhdGU6OlRl
cm1pbmF0ZWQ7fQogICAgIGJvb2wgc2VuZE1lc3NhZ2Uoc3RkOjp1bmlxdWVfcHRyPElQQzo6RW5j
b2Rlcj4sIE9wdGlvblNldDxJUEM6OlNlbmRPcHRpb24+KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL0xhdW5jaGVyL1Byb2Nlc3NMYXVuY2hlci5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9MYXVuY2hlci9Qcm9jZXNzTGF1bmNoZXIuY3BwCmluZGV4IDA4OWMxN2Mz
MzNmLi44ODE4ODY5NWQyNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvTGF1
bmNoZXIvUHJvY2Vzc0xhdW5jaGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9M
YXVuY2hlci9Qcm9jZXNzTGF1bmNoZXIuY3BwCkBAIC00MSw3ICs0MSw3IEBAIFByb2Nlc3NMYXVu
Y2hlcjo6UHJvY2Vzc0xhdW5jaGVyKENsaWVudCogY2xpZW50LCBjb25zdCBMYXVuY2hPcHRpb25z
JiBsYXVuY2hPcHRpCiAgICAgbGF1bmNoUHJvY2VzcygpOwogfQogCi12b2lkIFByb2Nlc3NMYXVu
Y2hlcjo6ZGlkRmluaXNoTGF1bmNoaW5nUHJvY2VzcyhwaWRfdCBwcm9jZXNzSWRlbnRpZmllciwg
SVBDOjpDb25uZWN0aW9uOjpJZGVudGlmaWVyIGlkZW50aWZpZXIpCit2b2lkIFByb2Nlc3NMYXVu
Y2hlcjo6ZGlkRmluaXNoTGF1bmNoaW5nUHJvY2VzcyhXVEY6OlByb2Nlc3NJZGVudGlmaWVyIHBy
b2Nlc3NJZGVudGlmaWVyLCBJUEM6OkNvbm5lY3Rpb246OklkZW50aWZpZXIgaWRlbnRpZmllcikK
IHsKICAgICBtX3Byb2Nlc3NJZGVudGlmaWVyID0gcHJvY2Vzc0lkZW50aWZpZXI7CiAgICAgbV9p
c0xhdW5jaGluZyA9IGZhbHNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
TGF1bmNoZXIvUHJvY2Vzc0xhdW5jaGVyLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9MYXVu
Y2hlci9Qcm9jZXNzTGF1bmNoZXIuaAppbmRleCA2Nzk4ZmM5ZjlkMC4uNTNlZTFkOGRkNzkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0xhdW5jaGVyL1Byb2Nlc3NMYXVuY2hl
ci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0xhdW5jaGVyL1Byb2Nlc3NMYXVuY2hl
ci5oCkBAIC0yNyw2ICsyNyw3IEBACiAKICNpbmNsdWRlICJDb25uZWN0aW9uLmgiCiAjaW5jbHVk
ZSA8d3RmL0hhc2hNYXAuaD4KKyNpbmNsdWRlIDx3dGYvUHJvY2Vzc0lELmg+CiAjaW5jbHVkZSA8
d3RmL1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9UaHJlYWRpbmcuaD4KICNpbmNsdWRlIDx3dGYv
V2Vha1B0ci5oPgpAQCAtNjksNyArNzAsNyBAQCBwdWJsaWM6CiAgICAgfQogCiAgICAgYm9vbCBp
c0xhdW5jaGluZygpIGNvbnN0IHsgcmV0dXJuIG1faXNMYXVuY2hpbmc7IH0KLSAgICBwaWRfdCBw
cm9jZXNzSWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1fcHJvY2Vzc0lkZW50aWZpZXI7IH0K
KyAgICBXVEY6OlByb2Nlc3NJZGVudGlmaWVyIHByb2Nlc3NJZGVudGlmaWVyKCkgY29uc3QgeyBy
ZXR1cm4gbV9wcm9jZXNzSWRlbnRpZmllcjsgfQogCiAgICAgdm9pZCB0ZXJtaW5hdGVQcm9jZXNz
KCk7CiAgICAgdm9pZCBpbnZhbGlkYXRlKCk7CkBAIC03OCw3ICs3OSw3IEBAIHByaXZhdGU6CiAg
ICAgUHJvY2Vzc0xhdW5jaGVyKENsaWVudCosIGNvbnN0IExhdW5jaE9wdGlvbnMmIGxhdW5jaE9w
dGlvbnMpOwogCiAgICAgdm9pZCBsYXVuY2hQcm9jZXNzKCk7Ci0gICAgdm9pZCBkaWRGaW5pc2hM
YXVuY2hpbmdQcm9jZXNzKHBpZF90LCBJUEM6OkNvbm5lY3Rpb246OklkZW50aWZpZXIpOworICAg
IHZvaWQgZGlkRmluaXNoTGF1bmNoaW5nUHJvY2VzcyhXVEY6OlByb2Nlc3NJZGVudGlmaWVyLCBJ
UEM6OkNvbm5lY3Rpb246OklkZW50aWZpZXIpOwogCiAgICAgdm9pZCBwbGF0Zm9ybUludmFsaWRh
dGUoKTsKIApAQCAtOTEsNyArOTIsNyBAQCBwcml2YXRlOgogICAgIFdlYWtQdHJGYWN0b3J5PFBy
b2Nlc3NMYXVuY2hlcj4gbV93ZWFrUHRyRmFjdG9yeTsKICAgICBjb25zdCBMYXVuY2hPcHRpb25z
IG1fbGF1bmNoT3B0aW9uczsKICAgICBib29sIG1faXNMYXVuY2hpbmc7Ci0gICAgcGlkX3QgbV9w
cm9jZXNzSWRlbnRpZmllcjsKKyAgICBXVEY6OlByb2Nlc3NJZGVudGlmaWVyIG1fcHJvY2Vzc0lk
ZW50aWZpZXI7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NBc3NlcnRpb24uY3BwIGIvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvUHJvY2Vzc0Fzc2VydGlvbi5jcHAKaW5kZXggYTY2ZTEyMjRmMzQuLmQ3NGNkYzdk
ZDVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9u
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmNwcApA
QCAtMzAsNyArMzAsNyBAQAogCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAotUHJvY2Vzc0Fzc2VydGlv
bjo6UHJvY2Vzc0Fzc2VydGlvbihwaWRfdCwgQXNzZXJ0aW9uU3RhdGUgYXNzZXJ0aW9uU3RhdGUs
IEZ1bmN0aW9uPHZvaWQoKT4mJikKK1Byb2Nlc3NBc3NlcnRpb246OlByb2Nlc3NBc3NlcnRpb24o
V1RGOjpQcm9jZXNzSWRlbnRpZmllciwgQXNzZXJ0aW9uU3RhdGUgYXNzZXJ0aW9uU3RhdGUsIEZ1
bmN0aW9uPHZvaWQoKT4mJikKICAgICA6IG1fYXNzZXJ0aW9uU3RhdGUoYXNzZXJ0aW9uU3RhdGUp
CiB7CiB9CkBAIC00Nyw3ICs0Nyw3IEBAIHZvaWQgUHJvY2Vzc0Fzc2VydGlvbjo6c2V0U3RhdGUo
QXNzZXJ0aW9uU3RhdGUgYXNzZXJ0aW9uU3RhdGUpCiAgICAgbV9hc3NlcnRpb25TdGF0ZSA9IGFz
c2VydGlvblN0YXRlOwogfQogCi1Qcm9jZXNzQW5kVUlBc3NlcnRpb246OlByb2Nlc3NBbmRVSUFz
c2VydGlvbihwaWRfdCBwaWQsIEFzc2VydGlvblN0YXRlIGFzc2VydGlvblN0YXRlKQorUHJvY2Vz
c0FuZFVJQXNzZXJ0aW9uOjpQcm9jZXNzQW5kVUlBc3NlcnRpb24oV1RGOjpQcm9jZXNzSWRlbnRp
ZmllciBwaWQsIEFzc2VydGlvblN0YXRlIGFzc2VydGlvblN0YXRlKQogICAgIDogUHJvY2Vzc0Fz
c2VydGlvbihwaWQsIGFzc2VydGlvblN0YXRlKQogewogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvUHJvY2Vzc0Fzc2VydGlvbi5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvUHJvY2Vzc0Fzc2VydGlvbi5oCmluZGV4IGU1ZTNhM2I2MTQ5Li4yZGY0OWU5YmM1YyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc0Fzc2VydGlvbi5oCisrKyBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NBc3NlcnRpb24uaApAQCAtMjgsNiArMjgs
NyBAQAogCiAjaW5jbHVkZSA8dW5pc3RkLmg+CiAjaW5jbHVkZSA8d3RmL0Z1bmN0aW9uLmg+Cisj
aW5jbHVkZSA8d3RmL1Byb2Nlc3NJRC5oPgogCiAjaWYgUExBVEZPUk0oSU9TKSAmJiAhUExBVEZP
Uk0oSU9TX1NJTVVMQVRPUikKICNpbmNsdWRlIDx3dGYvUmV0YWluUHRyLmg+CkBAIC01MSw3ICs1
Miw3IEBAIHB1YmxpYzoKIAogY2xhc3MgUHJvY2Vzc0Fzc2VydGlvbiB7CiBwdWJsaWM6Ci0gICAg
UHJvY2Vzc0Fzc2VydGlvbihwaWRfdCwgQXNzZXJ0aW9uU3RhdGUsIEZ1bmN0aW9uPHZvaWQoKT4m
JiBpbnZhbGlkYXRpb25DYWxsYmFjayA9IHsgfSk7CisgICAgUHJvY2Vzc0Fzc2VydGlvbihXVEY6
OlByb2Nlc3NJZGVudGlmaWVyLCBBc3NlcnRpb25TdGF0ZSwgRnVuY3Rpb248dm9pZCgpPiYmIGlu
dmFsaWRhdGlvbkNhbGxiYWNrID0geyB9KTsKICAgICB2aXJ0dWFsIH5Qcm9jZXNzQXNzZXJ0aW9u
KCk7CiAKICAgICB2aXJ0dWFsIHZvaWQgc2V0Q2xpZW50KFByb2Nlc3NBc3NlcnRpb25DbGllbnQm
IGNsaWVudCkgeyBtX2NsaWVudCA9ICZjbGllbnQ7IH0KQEAgLTgyLDcgKzgzLDcgQEAgcHJpdmF0
ZToKICAgICAKIGNsYXNzIFByb2Nlc3NBbmRVSUFzc2VydGlvbiBmaW5hbCA6IHB1YmxpYyBQcm9j
ZXNzQXNzZXJ0aW9uIHsKIHB1YmxpYzoKLSAgICBQcm9jZXNzQW5kVUlBc3NlcnRpb24ocGlkX3Qs
IEFzc2VydGlvblN0YXRlKTsKKyAgICBQcm9jZXNzQW5kVUlBc3NlcnRpb24oV1RGOjpQcm9jZXNz
SWRlbnRpZmllciwgQXNzZXJ0aW9uU3RhdGUpOwogICAgIH5Qcm9jZXNzQW5kVUlBc3NlcnRpb24o
KTsKIAogICAgIHZvaWQgc2V0Q2xpZW50KFByb2Nlc3NBc3NlcnRpb25DbGllbnQmKSBmaW5hbDsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NUaHJvdHRsZXIuY3Bw
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc1Rocm90dGxlci5jcHAKaW5kZXggZWVk
M2U2MDFhZmUuLmZkOTNkNDg0YzU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9Qcm9jZXNzVGhyb3R0bGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9j
ZXNzVGhyb3R0bGVyLmNwcApAQCAtOTEsNyArOTEsNyBAQCB2b2lkIFByb2Nlc3NUaHJvdHRsZXI6
OnVwZGF0ZUFzc2VydGlvbigpCiAgICAgdXBkYXRlQXNzZXJ0aW9uTm93KCk7CiB9CiAKLXZvaWQg
UHJvY2Vzc1Rocm90dGxlcjo6ZGlkQ29ubmVjdFRvUHJvY2VzcyhwaWRfdCBwaWQpCit2b2lkIFBy
b2Nlc3NUaHJvdHRsZXI6OmRpZENvbm5lY3RUb1Byb2Nlc3MoV1RGOjpQcm9jZXNzSWRlbnRpZmll
ciBwaWQpCiB7CiAgICAgUkVMRUFTRV9MT0coUHJvY2Vzc1N1c3BlbnNpb24sICIlcCAtIFByb2Nl
c3NUaHJvdHRsZXI6OmRpZENvbm5lY3RUb1Byb2Nlc3MoJWQpIiwgdGhpcywgcGlkKTsKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc1Rocm90dGxlci5oIGIvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc1Rocm90dGxlci5oCmluZGV4IGNiMWE0ZjI2ZWMz
Li4wOGQ1ZDJhZjI2YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vz
c1Rocm90dGxlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NUaHJvdHRs
ZXIuaApAQCAtMjgsNiArMjgsNyBAQAogCiAjaW5jbHVkZSAiUHJvY2Vzc0Fzc2VydGlvbi5oIgog
CisjaW5jbHVkZSA8d3RmL1Byb2Nlc3NJRC5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVyLmg+
CiAjaW5jbHVkZSA8d3RmL1J1bkxvb3AuaD4KICNpbmNsdWRlIDx3dGYvV2Vha1B0ci5oPgpAQCAt
NTYsNyArNTcsNyBAQCBwdWJsaWM6CiAgICAgaW5saW5lIEZvcmVncm91bmRBY3Rpdml0eVRva2Vu
IGZvcmVncm91bmRBY3Rpdml0eVRva2VuKCkgY29uc3Q7CiAgICAgaW5saW5lIEJhY2tncm91bmRB
Y3Rpdml0eVRva2VuIGJhY2tncm91bmRBY3Rpdml0eVRva2VuKCkgY29uc3Q7CiAgICAgCi0gICAg
dm9pZCBkaWRDb25uZWN0VG9Qcm9jZXNzKHBpZF90KTsKKyAgICB2b2lkIGRpZENvbm5lY3RUb1By
b2Nlc3MoV1RGOjpQcm9jZXNzSWRlbnRpZmllcik7CiAgICAgdm9pZCBwcm9jZXNzUmVhZHlUb1N1
c3BlbmQoKTsKICAgICB2b2lkIGRpZENhbmNlbFByb2Nlc3NTdXNwZW5zaW9uKCk7CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAgYi9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCmluZGV4IDljYzVlZmE2MzcyLi44OWJm
NDI0Nzg2YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCkBAIC00
NDEsNyArNDQxLDcgQEAgY29uc3QgQVBJOjpQYWdlQ29uZmlndXJhdGlvbiYgV2ViUGFnZVByb3h5
Ojpjb25maWd1cmF0aW9uKCkgY29uc3QKICAgICByZXR1cm4gbV9jb25maWd1cmF0aW9uLmdldCgp
OwogfQogCi1waWRfdCBXZWJQYWdlUHJveHk6OnByb2Nlc3NJZGVudGlmaWVyKCkgY29uc3QKK1dU
Rjo6UHJvY2Vzc0lkZW50aWZpZXIgV2ViUGFnZVByb3h5Ojpwcm9jZXNzSWRlbnRpZmllcigpIGNv
bnN0CiB7CiAgICAgaWYgKG1faXNDbG9zZWQpCiAgICAgICAgIHJldHVybiAwOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmggYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAppbmRleCBlNDMzN2JjZmVkMS4uMmU5MGU1Nzk3ODUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCisrKyBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCkBAIC04NCw2ICs4NCw3IEBA
CiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KICNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgogI2lu
Y2x1ZGUgPHd0Zi9Nb25vdG9uaWNUaW1lLmg+CisjaW5jbHVkZSA8d3RmL1Byb2Nlc3NJRC5oPgog
I2luY2x1ZGUgPHd0Zi9SZWYuaD4KICNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CiAjaW5jbHVkZSA8
d3RmL1ZlY3Rvci5oPgpAQCAtODc1LDcgKzg3Niw3IEBAIHB1YmxpYzoKICNlbmRpZgogCiAgICAg
V2ViUHJvY2Vzc1Byb3h5JiBwcm9jZXNzKCkgeyByZXR1cm4gbV9wcm9jZXNzOyB9Ci0gICAgcGlk
X3QgcHJvY2Vzc0lkZW50aWZpZXIoKSBjb25zdDsKKyAgICBXVEY6OlByb2Nlc3NJZGVudGlmaWVy
IHByb2Nlc3NJZGVudGlmaWVyKCkgY29uc3Q7CiAKICAgICBXZWJQcmVmZXJlbmNlcyYgcHJlZmVy
ZW5jZXMoKSB7IHJldHVybiBtX3ByZWZlcmVuY2VzOyB9CiAgICAgdm9pZCBzZXRQcmVmZXJlbmNl
cyhXZWJQcmVmZXJlbmNlcyYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
V2ViUHJvY2Vzc1Bvb2wuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bv
b2wuY3BwCmluZGV4IDk4ZjY4YTdkNDc5Li5mODBmYzQyYzZjYiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcApAQCAtMTA4Myw3ICsxMDgzLDcgQEAgdm9pZCBX
ZWJQcm9jZXNzUG9vbDo6cmVmcmVzaFBsdWdpbnMoKQogCiAjZW5kaWYgLy8gRU5BQkxFKE5FVFND
QVBFX1BMVUdJTl9BUEkpCiAKLXBpZF90IFdlYlByb2Nlc3NQb29sOjpuZXR3b3JrUHJvY2Vzc0lk
ZW50aWZpZXIoKQorV1RGOjpQcm9jZXNzSWRlbnRpZmllciBXZWJQcm9jZXNzUG9vbDo6bmV0d29y
a1Byb2Nlc3NJZGVudGlmaWVyKCkKIHsKICAgICBpZiAoIW1fbmV0d29ya1Byb2Nlc3MpCiAgICAg
ICAgIHJldHVybiAwOwpAQCAtMTA5MSw3ICsxMDkxLDcgQEAgcGlkX3QgV2ViUHJvY2Vzc1Bvb2w6
Om5ldHdvcmtQcm9jZXNzSWRlbnRpZmllcigpCiAgICAgcmV0dXJuIG1fbmV0d29ya1Byb2Nlc3Mt
PnByb2Nlc3NJZGVudGlmaWVyKCk7CiB9CiAKLXBpZF90IFdlYlByb2Nlc3NQb29sOjpzdG9yYWdl
UHJvY2Vzc0lkZW50aWZpZXIoKQorV1RGOjpQcm9jZXNzSWRlbnRpZmllciBXZWJQcm9jZXNzUG9v
bDo6c3RvcmFnZVByb2Nlc3NJZGVudGlmaWVyKCkKIHsKICAgICBpZiAoIW1fc3RvcmFnZVByb2Nl
c3MpCiAgICAgICAgIHJldHVybiAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvV2ViUHJvY2Vzc1Bvb2wuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQ
b29sLmgKaW5kZXggMjRlYmFhMTgzZDguLjY0YTNjMDVmNmZiIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL1dlYlByb2Nlc3NQb29sLmgKQEAgLTQ5LDYgKzQ5LDcgQEAKICNpbmNsdWRlIDx3dGYv
Rm9yd2FyZC5oPgogI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hT
ZXQuaD4KKyNpbmNsdWRlIDx3dGYvUHJvY2Vzc0lELmg+CiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50
ZXIuaD4KICNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5n
SGFzaC5oPgpAQCAtMTk5LDggKzIwMCw4IEBAIHB1YmxpYzoKICAgICBjb25zdCBIYXNoTWFwPFN0
cmluZywgSGFzaE1hcDxTdHJpbmcsIEhhc2hNYXA8U3RyaW5nLCB1aW50OF90Pj4+JiBwbHVnaW5M
b2FkQ2xpZW50UG9saWNpZXMoKSBjb25zdCB7IHJldHVybiBtX3BsdWdpbkxvYWRDbGllbnRQb2xp
Y2llczsgfQogI2VuZGlmCiAKLSAgICBwaWRfdCBuZXR3b3JrUHJvY2Vzc0lkZW50aWZpZXIoKTsK
LSAgICBwaWRfdCBzdG9yYWdlUHJvY2Vzc0lkZW50aWZpZXIoKTsKKyAgICBXVEY6OlByb2Nlc3NJ
ZGVudGlmaWVyIG5ldHdvcmtQcm9jZXNzSWRlbnRpZmllcigpOworICAgIFdURjo6UHJvY2Vzc0lk
ZW50aWZpZXIgc3RvcmFnZVByb2Nlc3NJZGVudGlmaWVyKCk7CiAKICAgICB2b2lkIHNldEFsd2F5
c1VzZXNDb21wbGV4VGV4dENvZGVQYXRoKGJvb2wpOwogICAgIHZvaWQgc2V0U2hvdWxkVXNlRm9u
dFNtb290aGluZyhib29sKTsK
</data>
<flag name="review"
          id="340997"
          type_id="1"
          status="-"
          setter="mark.lam"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>320950</attachid>
            <date>2017-09-15 12:57:12 -0700</date>
            <delta_ts>2017-09-15 13:06:30 -0700</delta_ts>
            <desc>Test patch for ews on adding process identifier alias.</desc>
            <filename>pid_t-test.2.diff</filename>
            <type>text/plain</type>
            <size>18886</size>
            <attacher name="Stephan Szabo">stephan.szabo</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNSZW1vdGVJbnNwZWN0b3Iu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1JlbW90ZUluc3BlY3Rvci5jcHAKaW5k
ZXggM2JlNjFkMDkyNzIuLjcwOWJhNTE2YmQ2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQVBJL0pTUmVtb3RlSW5zcGVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQVBJL0pTUmVtb3RlSW5zcGVjdG9yLmNwcApAQCAtMjcsNiArMjcsNyBAQAogI2luY2x1ZGUg
IkpTUmVtb3RlSW5zcGVjdG9yLmgiCiAKICNpbmNsdWRlICJKU0dsb2JhbE9iamVjdENvbnNvbGVD
bGllbnQuaCIKKyNpbmNsdWRlIDx3dGYvUHJvY2Vzc0lELmg+CiAKICNpZiBFTkFCTEUoUkVNT1RF
X0lOU1BFQ1RPUikKICNpbmNsdWRlICJSZW1vdGVJbnNwZWN0b3IuaCIKQEAgLTUwLDcgKzUxLDcg
QEAgdm9pZCBKU1JlbW90ZUluc3BlY3RvclN0YXJ0KHZvaWQpCiAjZW5kaWYKIH0KIAotdm9pZCBK
U1JlbW90ZUluc3BlY3RvclNldFBhcmVudFByb2Nlc3NJbmZvcm1hdGlvbihwaWRfdCBwaWQsIGNv
bnN0IHVpbnQ4X3QqIGF1ZGl0RGF0YSwgc2l6ZV90IGF1ZGl0TGVuZ3RoKQordm9pZCBKU1JlbW90
ZUluc3BlY3RvclNldFBhcmVudFByb2Nlc3NJbmZvcm1hdGlvbihXVEY6OlByb2Nlc3NJZGVudGlm
aWVyIHBpZCwgY29uc3QgdWludDhfdCogYXVkaXREYXRhLCBzaXplX3QgYXVkaXRMZW5ndGgpCiB7
CiAjaWYgRU5BQkxFKFJFTU9URV9JTlNQRUNUT1IpICYmIFBMQVRGT1JNKENPQ09BKQogICAgIFJl
dGFpblB0cjxDRkRhdGFSZWY+IGF1ZGl0RGF0YVJlZiA9IGFkb3B0Q0YoQ0ZEYXRhQ3JlYXRlKGtD
RkFsbG9jYXRvckRlZmF1bHQsIGF1ZGl0RGF0YSwgYXVkaXRMZW5ndGgpKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNSZW1vdGVJbnNwZWN0b3IuaCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9BUEkvSlNSZW1vdGVJbnNwZWN0b3IuaAppbmRleCA0Zjg2NTEwMjk5OC4u
NGI1YzVmZTVkZTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNSZW1v
dGVJbnNwZWN0b3IuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTUmVtb3RlSW5z
cGVjdG9yLmgKQEAgLTI4LDYgKzI4LDcgQEAKIAogI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0pT
QmFzZS5oPgogI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL1dlYktpdEF2YWlsYWJpbGl0eS5oPgor
I2luY2x1ZGUgPHd0Zi9Qcm9jZXNzSUQuaD4KIAogI2luY2x1ZGUgPHVuaXN0ZC5oPgogCkBAIC0z
Nyw3ICszOCw3IEBAIGV4dGVybiAiQyIgewogCiBKU19FWFBPUlQgdm9pZCBKU1JlbW90ZUluc3Bl
Y3RvckRpc2FibGVBdXRvU3RhcnQodm9pZCkgQ0ZfQVZBSUxBQkxFKDEwXzExLCA5XzApOwogSlNf
RVhQT1JUIHZvaWQgSlNSZW1vdGVJbnNwZWN0b3JTdGFydCh2b2lkKSBDRl9BVkFJTEFCTEUoMTBf
MTEsIDlfMCk7Ci1KU19FWFBPUlQgdm9pZCBKU1JlbW90ZUluc3BlY3RvclNldFBhcmVudFByb2Nl
c3NJbmZvcm1hdGlvbihwaWRfdCwgY29uc3QgdWludDhfdCogYXVkaXREYXRhLCBzaXplX3QgYXVk
aXRMZW5ndGgpIENGX0FWQUlMQUJMRSgxMF8xMSwgOV8wKTsKK0pTX0VYUE9SVCB2b2lkIEpTUmVt
b3RlSW5zcGVjdG9yU2V0UGFyZW50UHJvY2Vzc0luZm9ybWF0aW9uKFdURjo6UHJvY2Vzc0lkZW50
aWZpZXIsIGNvbnN0IHVpbnQ4X3QqIGF1ZGl0RGF0YSwgc2l6ZV90IGF1ZGl0TGVuZ3RoKSBDRl9B
VkFJTEFCTEUoMTBfMTEsIDlfMCk7CiAKIEpTX0VYUE9SVCB2b2lkIEpTUmVtb3RlSW5zcGVjdG9y
U2V0TG9nVG9TeXN0ZW1Db25zb2xlKGJvb2wpIENGX0FWQUlMQUJMRSgxMF8xMSwgOV8wKTsKIApk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9yZW1vdGUvUmVtb3Rl
SW5zcGVjdG9yLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3JlbW90ZS9SZW1v
dGVJbnNwZWN0b3IuaAppbmRleCBkMDBkZTJiNzAzZC4uZDgxMzY5ZjI5YmQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcmVtb3RlL1JlbW90ZUluc3BlY3Rvci5o
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcmVtb3RlL1JlbW90ZUluc3Bl
Y3Rvci5oCkBAIC0zMCw2ICszMCw3IEBACiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KICNpbmNs
dWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUgPHd0Zi9Mb2NrLmg+CisjaW5jbHVkZSA8d3Rm
L1Byb2Nlc3NJRC5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCiAjaWYgUExB
VEZPUk0oQ09DT0EpCkBAIC0xMDgsOSArMTA5LDkgQEAgcHVibGljOgogCiAjaWYgUExBVEZPUk0o
Q09DT0EpCiAgICAgYm9vbCBoYXNQYXJlbnRQcm9jZXNzSW5mb3JtYXRpb24oKSBjb25zdCB7IHJl
dHVybiBtX3BhcmVudFByb2Nlc3NJZGVudGlmaWVyICE9IDA7IH0KLSAgICBwaWRfdCBwYXJlbnRQ
cm9jZXNzSWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1fcGFyZW50UHJvY2Vzc0lkZW50aWZp
ZXI7IH0KKyAgICBXVEY6OlByb2Nlc3NJZGVudGlmaWVyIHBhcmVudFByb2Nlc3NJZGVudGlmaWVy
KCkgY29uc3QgeyByZXR1cm4gbV9wYXJlbnRQcm9jZXNzSWRlbnRpZmllcjsgfQogICAgIFJldGFp
blB0cjxDRkRhdGFSZWY+IHBhcmVudFByb2Nlc3NBdWRpdERhdGEoKSBjb25zdCB7IHJldHVybiBt
X3BhcmVudFByb2Nlc3NBdWRpdERhdGE7IH0KLSAgICB2b2lkIHNldFBhcmVudFByb2Nlc3NJbmZv
cm1hdGlvbihwaWRfdCwgUmV0YWluUHRyPENGRGF0YVJlZj4gYXVkaXREYXRhKTsKKyAgICB2b2lk
IHNldFBhcmVudFByb2Nlc3NJbmZvcm1hdGlvbihXVEY6OlByb2Nlc3NJZGVudGlmaWVyLCBSZXRh
aW5QdHI8Q0ZEYXRhUmVmPiBhdWRpdERhdGEpOwogICAgIHZvaWQgc2V0UGFyZW50UHJvY2Vzc0lu
Zm9tYXRpb25Jc0RlbGF5ZWQoKTsKICNlbmRpZgogCkBAIC0yMDcsNyArMjA4LDcgQEAgcHJpdmF0
ZToKICAgICBib29sIG1faGFzQWN0aXZlRGVidWdTZXNzaW9uIHsgZmFsc2UgfTsKICAgICBib29s
IG1fcHVzaFNjaGVkdWxlZCB7IGZhbHNlIH07CiAKLSAgICBwaWRfdCBtX3BhcmVudFByb2Nlc3NJ
ZGVudGlmaWVyIHsgMCB9OworICAgIFdURjo6UHJvY2Vzc0lkZW50aWZpZXIgbV9wYXJlbnRQcm9j
ZXNzSWRlbnRpZmllciB7IDAgfTsKICNpZiBQTEFURk9STShDT0NPQSkKICAgICBSZXRhaW5QdHI8
Q0ZEYXRhUmVmPiBtX3BhcmVudFByb2Nlc3NBdWRpdERhdGE7CiAjZW5kaWYKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XVEYvd3RmL1Byb2Nlc3NJRC5oIGIvU291cmNlL1dURi93dGYvUHJvY2Vzc0lELmgK
aW5kZXggZjg0NzE2ZThkOTMuLjk2NTc1MjcxYWMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0
Zi9Qcm9jZXNzSUQuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9Qcm9jZXNzSUQuaApAQCAtMzYsNyAr
MzYsMTMgQEAKIAogbmFtZXNwYWNlIFdURiB7CiAKLWlubGluZSBpbnQgZ2V0Q3VycmVudFByb2Nl
c3NJRCgpCisjaWYgT1MoV0lORE9XUykKK3VzaW5nIFByb2Nlc3NJZGVudGlmaWVyID0gaW50Owor
I2Vsc2UKK3VzaW5nIFByb2Nlc3NJZGVudGlmaWVyID0gcGlkX3Q7CisjZW5kaWYKKworaW5saW5l
IFByb2Nlc3NJZGVudGlmaWVyIGdldEN1cnJlbnRQcm9jZXNzSUQoKQogewogI2lmIE9TKFdJTkRP
V1MpCiAgICAgcmV0dXJuIEdldEN1cnJlbnRQcm9jZXNzSWQoKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMu
aCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBh
cmFtZXRlcnMuaAppbmRleCAxZWI3OTc5OTYxOC4uMDBkNzFmYmQ5MjggMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRl
cnMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzQ3Jl
YXRpb25QYXJhbWV0ZXJzLmgKQEAgLTI4LDYgKzI4LDcgQEAKICNpbmNsdWRlICJBdHRhY2htZW50
LmgiCiAjaW5jbHVkZSAiQ2FjaGVNb2RlbC5oIgogI2luY2x1ZGUgIlNhbmRib3hFeHRlbnNpb24u
aCIKKyNpbmNsdWRlIDx3dGYvUHJvY2Vzc0lELmg+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgog
I2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCkBAIC03OCw3ICs3OSw3IEBAIHN0cnVj
dCBOZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycyB7CiAgICAgU2Vjb25kcyBsb2FkVGhy
b3R0bGVMYXRlbmN5OwogCiAgICAgVmVjdG9yPFN0cmluZz4gdXJsU2NoZW1lc1JlZ2lzdGVyZWRG
b3JDdXN0b21Qcm90b2NvbHM7Ci0gICAgcGlkX3QgcHJlc2VudGluZ0FwcGxpY2F0aW9uUElEIHsg
MCB9OworICAgIFdURjo6UHJvY2Vzc0lkZW50aWZpZXIgcHJlc2VudGluZ0FwcGxpY2F0aW9uUElE
IHsgMCB9OwogCiAjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgU3RyaW5nIHBhcmVudFByb2Nlc3NO
YW1lOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9u
UGFyYW1ldGVycy5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFy
YW1ldGVycy5oCmluZGV4IDU2MTg1YWJlNzZiLi4zNDJkMzNlYzNlOCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQvU2hhcmVkL1dlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaApAQCAtMzAs
NiArMzAsNyBAQAogI2luY2x1ZGUgIlRleHRDaGVja2VyU3RhdGUuaCIKICNpbmNsdWRlICJVc2Vy
RGF0YS5oIgogI2luY2x1ZGUgPHBhbC9TZXNzaW9uSUQuaD4KKyNpbmNsdWRlIDx3dGYvUHJvY2Vz
c0lELmg+CiAjaW5jbHVkZSA8d3RmL1JldGFpblB0ci5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3Iu
aD4KICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdIYXNoLmg+CkBAIC0xMzYsNyArMTM3LDcgQEAg
c3RydWN0IFdlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMgewogICAgIFN0cmluZyB1aVByb2Nl
c3NCdW5kbGVJZGVudGlmaWVyOwogI2VuZGlmCiAKLSAgICBwaWRfdCBwcmVzZW50aW5nQXBwbGlj
YXRpb25QSUQgeyAwIH07CisgICAgV1RGOjpQcm9jZXNzSWRlbnRpZmllciBwcmVzZW50aW5nQXBw
bGljYXRpb25QSUQgeyAwIH07CiAKICNpZiBQTEFURk9STShDT0NPQSkKICAgICBXZWJDb3JlOjpN
YWNoU2VuZFJpZ2h0IGFjY2VsZXJhdGVkQ29tcG9zaXRpbmdQb3J0OwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQSVByb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5oIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQSVByb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5o
CmluZGV4IDk1NDQ4NDc5M2I0Li5iNmMwYmQzYjliOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvQVBJL0FQSVByb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5oCisrKyBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24uaApAQCAt
MTM5LDggKzEzOSw4IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldENURGF0YUNvbm5lY3Rpb25TZXJ2
aWNlVHlwZShjb25zdCBXVEY6OlN0cmluZyYgY3REYXRhQ29ubmVjdGlvblNlcnZpY2VUeXBlKSB7
IG1fY3REYXRhQ29ubmVjdGlvblNlcnZpY2VUeXBlID0gY3REYXRhQ29ubmVjdGlvblNlcnZpY2VU
eXBlOyB9CiAjZW5kaWYKIAotICAgIHBpZF90IHByZXNlbnRpbmdBcHBsaWNhdGlvblBJRCgpIGNv
bnN0IHsgcmV0dXJuIG1fcHJlc2VudGluZ0FwcGxpY2F0aW9uUElEOyB9Ci0gICAgdm9pZCBzZXRQ
cmVzZW50aW5nQXBwbGljYXRpb25QSUQocGlkX3QgcGlkKSB7IG1fcHJlc2VudGluZ0FwcGxpY2F0
aW9uUElEID0gcGlkOyB9CisgICAgV1RGOjpQcm9jZXNzSWRlbnRpZmllciBwcmVzZW50aW5nQXBw
bGljYXRpb25QSUQoKSBjb25zdCB7IHJldHVybiBtX3ByZXNlbnRpbmdBcHBsaWNhdGlvblBJRDsg
fQorICAgIHZvaWQgc2V0UHJlc2VudGluZ0FwcGxpY2F0aW9uUElEKFdURjo6UHJvY2Vzc0lkZW50
aWZpZXIgcGlkKSB7IG1fcHJlc2VudGluZ0FwcGxpY2F0aW9uUElEID0gcGlkOyB9CiAKIHByaXZh
dGU6CiAgICAgYm9vbCBtX3Nob3VsZEhhdmVMZWdhY3lEYXRhU3RvcmUgeyBmYWxzZSB9OwpAQCAt
MTc0LDcgKzE3NCw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBtX2Fsd2F5c1J1bnNBdEJhY2tncm91
bmRQcmlvcml0eSB7IGZhbHNlIH07CiAgICAgYm9vbCBtX3Nob3VsZFRha2VVSUJhY2tncm91bmRB
c3NlcnRpb24geyB0cnVlIH07CiAgICAgYm9vbCBtX3Nob3VsZENhcHR1cmVBdWRpb0luVUlQcm9j
ZXNzIHsgZmFsc2UgfTsKLSAgICBwaWRfdCBtX3ByZXNlbnRpbmdBcHBsaWNhdGlvblBJRCB7IGdl
dEN1cnJlbnRQcm9jZXNzSUQoKSB9OworICAgIFdURjo6UHJvY2Vzc0lkZW50aWZpZXIgbV9wcmVz
ZW50aW5nQXBwbGljYXRpb25QSUQgeyBnZXRDdXJyZW50UHJvY2Vzc0lEKCkgfTsKICNpZiBQTEFU
Rk9STShJT1MpCiAgICAgV1RGOjpTdHJpbmcgbV9jdERhdGFDb25uZWN0aW9uU2VydmljZVR5cGU7
CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLQ29u
dGV4dC5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHQuY3BwCmlu
ZGV4IDA1YTRlZjk0Y2E5Li5mMDU2NjRmMDU3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvQVBJL0MvV0tDb250ZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9BUEkvQy9XS0NvbnRleHQuY3BwCkBAIC01OTksMTIgKzU5OSwxMiBAQCB2b2lkIFdLQ29udGV4
dFRlcm1pbmF0ZU5ldHdvcmtQcm9jZXNzKFdLQ29udGV4dFJlZiBjb250ZXh0KQogICAgIHRvSW1w
bChjb250ZXh0KS0+dGVybWluYXRlTmV0d29ya1Byb2Nlc3MoKTsKIH0KIAotcGlkX3QgV0tDb250
ZXh0R2V0TmV0d29ya1Byb2Nlc3NJZGVudGlmaWVyKFdLQ29udGV4dFJlZiBjb250ZXh0UmVmKQor
V1RGOjpQcm9jZXNzSWRlbnRpZmllciBXS0NvbnRleHRHZXROZXR3b3JrUHJvY2Vzc0lkZW50aWZp
ZXIoV0tDb250ZXh0UmVmIGNvbnRleHRSZWYpCiB7CiAgICAgcmV0dXJuIHRvSW1wbChjb250ZXh0
UmVmKS0+bmV0d29ya1Byb2Nlc3NJZGVudGlmaWVyKCk7CiB9CiAKLXBpZF90IFdLQ29udGV4dEdl
dERhdGFiYXNlUHJvY2Vzc0lkZW50aWZpZXIoV0tDb250ZXh0UmVmIGNvbnRleHRSZWYpCitXVEY6
OlByb2Nlc3NJZGVudGlmaWVyIFdLQ29udGV4dEdldERhdGFiYXNlUHJvY2Vzc0lkZW50aWZpZXIo
V0tDb250ZXh0UmVmIGNvbnRleHRSZWYpCiB7CiAgICAgcmV0dXJuIHRvSW1wbChjb250ZXh0UmVm
KS0+c3RvcmFnZVByb2Nlc3NJZGVudGlmaWVyKCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHRQcml2YXRlLmggYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9BUEkvQy9XS0NvbnRleHRQcml2YXRlLmgKaW5kZXggZmU4Nzg4ZDM0MmIuLmM3MDVh
NjM4YmJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRl
eHRQcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tDb250ZXh0
UHJpdmF0ZS5oCkBAIC0yOCw2ICsyOCw3IEBACiAKICNpbmNsdWRlIDxXZWJLaXQvV0tCYXNlLmg+
CiAjaW5jbHVkZSA8V2ViS2l0L1dLQ29udGV4dC5oPgorI2luY2x1ZGUgPHd0Zi9Qcm9jZXNzSUQu
aD4KIAogI2luY2x1ZGUgPHVuaXN0ZC5oPgogCkBAIC0xMDAsOCArMTAxLDggQEAgV0tfRVhQT1JU
IHZvaWQgV0tDb250ZXh0U2V0TWVtb3J5Q2FjaGVEaXNhYmxlZChXS0NvbnRleHRSZWYsIGJvb2wg
ZGlzYWJsZWQpOwogCiBXS19FWFBPUlQgdm9pZCBXS0NvbnRleHRTZXRGb250V2hpdGVsaXN0KFdL
Q29udGV4dFJlZiwgV0tBcnJheVJlZik7CiAKLVdLX0VYUE9SVCBwaWRfdCBXS0NvbnRleHRHZXRO
ZXR3b3JrUHJvY2Vzc0lkZW50aWZpZXIoV0tDb250ZXh0UmVmIGNvbnRleHQpOwotV0tfRVhQT1JU
IHBpZF90IFdLQ29udGV4dEdldERhdGFiYXNlUHJvY2Vzc0lkZW50aWZpZXIoV0tDb250ZXh0UmVm
IGNvbnRleHQpOworV0tfRVhQT1JUIFdURjo6UHJvY2Vzc0lkZW50aWZpZXIgV0tDb250ZXh0R2V0
TmV0d29ya1Byb2Nlc3NJZGVudGlmaWVyKFdLQ29udGV4dFJlZiBjb250ZXh0KTsKK1dLX0VYUE9S
VCBXVEY6OlByb2Nlc3NJZGVudGlmaWVyIFdLQ29udGV4dEdldERhdGFiYXNlUHJvY2Vzc0lkZW50
aWZpZXIoV0tDb250ZXh0UmVmIGNvbnRleHQpOwogCiAjaWZkZWYgX19jcGx1c3BsdXMKIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLUGFnZS5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2UuY3BwCmluZGV4IDA2N2MwZWM5NGMwLi5i
MGQyN2UxNzE5NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQ
YWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2UuY3BwCkBA
IC0yNzQxLDcgKzI3NDEsNyBAQCB2b2lkIFdLUGFnZVNldElnbm9yZXNWaWV3cG9ydFNjYWxlTGlt
aXRzKFdLUGFnZVJlZiBwYWdlLCBib29sIGlnbm9yZXNWaWV3cG9ydFNjYQogI2VuZGlmCiB9CiAK
LXBpZF90IFdLUGFnZUdldFByb2Nlc3NJZGVudGlmaWVyKFdLUGFnZVJlZiBwYWdlKQorV1RGOjpQ
cm9jZXNzSWRlbnRpZmllciBXS1BhZ2VHZXRQcm9jZXNzSWRlbnRpZmllcihXS1BhZ2VSZWYgcGFn
ZSkKIHsKICAgICByZXR1cm4gdG9JbXBsKHBhZ2UpLT5wcm9jZXNzSWRlbnRpZmllcigpOwogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQYWdlUHJpdmF0ZS5o
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQYWdlUHJpdmF0ZS5oCmluZGV4IDg3
MTc0Njg4NzYxLi4yY2UyNDdkZjJkNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvQVBJL0MvV0tQYWdlUHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQ
SS9DL1dLUGFnZVByaXZhdGUuaApAQCAtMjgsNiArMjgsNyBAQAogCiAjaW5jbHVkZSA8V2ViS2l0
L1dLQmFzZS5oPgogI2luY2x1ZGUgPFdlYktpdC9XS1BhZ2UuaD4KKyNpbmNsdWRlIDx3dGYvUHJv
Y2Vzc0lELmg+CiAKICNpbmNsdWRlIDx1bmlzdGQuaD4KIApAQCAtMTcxLDcgKzE3Miw3IEBAIFdL
X0VYUE9SVCB2b2lkIFdLUGFnZVJlc3RvcmVGcm9tU2Vzc2lvblN0YXRlV2l0aG91dE5hdmlnYXRp
b24oV0tQYWdlUmVmIHBhZ2UsIFdLCiAKIFdLX0VYUE9SVCB2b2lkIFdLUGFnZVNldElnbm9yZXNW
aWV3cG9ydFNjYWxlTGltaXRzKFdLUGFnZVJlZiBwYWdlLCBib29sIGlnbm9yZXNWaWV3cG9ydFNj
YWxlTGltaXRzKTsKIAotV0tfRVhQT1JUIHBpZF90IFdLUGFnZUdldFByb2Nlc3NJZGVudGlmaWVy
KFdLUGFnZVJlZiBwYWdlKTsKK1dLX0VYUE9SVCBXVEY6OlByb2Nlc3NJZGVudGlmaWVyIFdLUGFn
ZUdldFByb2Nlc3NJZGVudGlmaWVyKFdLUGFnZVJlZiBwYWdlKTsKIAogI2lmZGVmIF9fY3BsdXNw
bHVzCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9DaGlsZFByb2Nlc3NQ
cm94eS5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ2hpbGRQcm9jZXNzUHJveHkuaAppbmRl
eCBjNjNiOWJlMTQzYy4uMGRmOTQ1ZmI2MTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL0NoaWxkUHJvY2Vzc1Byb3h5LmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
Q2hpbGRQcm9jZXNzUHJveHkuaApAQCAtMjksNiArMjksNyBAQAogI2luY2x1ZGUgIk1lc3NhZ2VS
ZWNlaXZlck1hcC5oIgogI2luY2x1ZGUgIlByb2Nlc3NMYXVuY2hlci5oIgogCisjaW5jbHVkZSA8
d3RmL1Byb2Nlc3NJRC5oPgogI2luY2x1ZGUgPHd0Zi9TeXN0ZW1UcmFjaW5nLmg+CiAjaW5jbHVk
ZSA8d3RmL1RocmVhZFNhZmVSZWZDb3VudGVkLmg+CiAKQEAgLTcyLDcgKzczLDcgQEAgcHVibGlj
OgogICAgIH07CiAgICAgU3RhdGUgc3RhdGUoKSBjb25zdDsKIAotICAgIHBpZF90IHByb2Nlc3NJ
ZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9wcm9jZXNzTGF1bmNoZXIgPyBtX3Byb2Nlc3NM
YXVuY2hlci0+cHJvY2Vzc0lkZW50aWZpZXIoKSA6IDA7IH0KKyAgICBXVEY6OlByb2Nlc3NJZGVu
dGlmaWVyIHByb2Nlc3NJZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9wcm9jZXNzTGF1bmNo
ZXIgPyBtX3Byb2Nlc3NMYXVuY2hlci0+cHJvY2Vzc0lkZW50aWZpZXIoKSA6IDA7IH0KIAogICAg
IGJvb2wgY2FuU2VuZE1lc3NhZ2UoKSBjb25zdCB7IHJldHVybiBzdGF0ZSgpICE9IFN0YXRlOjpU
ZXJtaW5hdGVkO30KICAgICBib29sIHNlbmRNZXNzYWdlKHN0ZDo6dW5pcXVlX3B0cjxJUEM6OkVu
Y29kZXI+LCBPcHRpb25TZXQ8SVBDOjpTZW5kT3B0aW9uPik7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9MYXVuY2hlci9Qcm9jZXNzTGF1bmNoZXIuY3BwIGIvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvTGF1bmNoZXIvUHJvY2Vzc0xhdW5jaGVyLmNwcAppbmRleCAwODljMTdj
MzMzZi4uODgxODg2OTVkMjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0xh
dW5jaGVyL1Byb2Nlc3NMYXVuY2hlci5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
TGF1bmNoZXIvUHJvY2Vzc0xhdW5jaGVyLmNwcApAQCAtNDEsNyArNDEsNyBAQCBQcm9jZXNzTGF1
bmNoZXI6OlByb2Nlc3NMYXVuY2hlcihDbGllbnQqIGNsaWVudCwgY29uc3QgTGF1bmNoT3B0aW9u
cyYgbGF1bmNoT3B0aQogICAgIGxhdW5jaFByb2Nlc3MoKTsKIH0KIAotdm9pZCBQcm9jZXNzTGF1
bmNoZXI6OmRpZEZpbmlzaExhdW5jaGluZ1Byb2Nlc3MocGlkX3QgcHJvY2Vzc0lkZW50aWZpZXIs
IElQQzo6Q29ubmVjdGlvbjo6SWRlbnRpZmllciBpZGVudGlmaWVyKQordm9pZCBQcm9jZXNzTGF1
bmNoZXI6OmRpZEZpbmlzaExhdW5jaGluZ1Byb2Nlc3MoV1RGOjpQcm9jZXNzSWRlbnRpZmllciBw
cm9jZXNzSWRlbnRpZmllciwgSVBDOjpDb25uZWN0aW9uOjpJZGVudGlmaWVyIGlkZW50aWZpZXIp
CiB7CiAgICAgbV9wcm9jZXNzSWRlbnRpZmllciA9IHByb2Nlc3NJZGVudGlmaWVyOwogICAgIG1f
aXNMYXVuY2hpbmcgPSBmYWxzZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L0xhdW5jaGVyL1Byb2Nlc3NMYXVuY2hlci5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvTGF1
bmNoZXIvUHJvY2Vzc0xhdW5jaGVyLmgKaW5kZXggNjc5OGZjOWY5ZDAuLjUzZWUxZDhkZDc5IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9MYXVuY2hlci9Qcm9jZXNzTGF1bmNo
ZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9MYXVuY2hlci9Qcm9jZXNzTGF1bmNo
ZXIuaApAQCAtMjcsNiArMjcsNyBAQAogCiAjaW5jbHVkZSAiQ29ubmVjdGlvbi5oIgogI2luY2x1
ZGUgPHd0Zi9IYXNoTWFwLmg+CisjaW5jbHVkZSA8d3RmL1Byb2Nlc3NJRC5oPgogI2luY2x1ZGUg
PHd0Zi9SZWZQdHIuaD4KICNpbmNsdWRlIDx3dGYvVGhyZWFkaW5nLmg+CiAjaW5jbHVkZSA8d3Rm
L1dlYWtQdHIuaD4KQEAgLTY5LDcgKzcwLDcgQEAgcHVibGljOgogICAgIH0KIAogICAgIGJvb2wg
aXNMYXVuY2hpbmcoKSBjb25zdCB7IHJldHVybiBtX2lzTGF1bmNoaW5nOyB9Ci0gICAgcGlkX3Qg
cHJvY2Vzc0lkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX3Byb2Nlc3NJZGVudGlmaWVyOyB9
CisgICAgV1RGOjpQcm9jZXNzSWRlbnRpZmllciBwcm9jZXNzSWRlbnRpZmllcigpIGNvbnN0IHsg
cmV0dXJuIG1fcHJvY2Vzc0lkZW50aWZpZXI7IH0KIAogICAgIHZvaWQgdGVybWluYXRlUHJvY2Vz
cygpOwogICAgIHZvaWQgaW52YWxpZGF0ZSgpOwpAQCAtNzgsNyArNzksNyBAQCBwcml2YXRlOgog
ICAgIFByb2Nlc3NMYXVuY2hlcihDbGllbnQqLCBjb25zdCBMYXVuY2hPcHRpb25zJiBsYXVuY2hP
cHRpb25zKTsKIAogICAgIHZvaWQgbGF1bmNoUHJvY2VzcygpOwotICAgIHZvaWQgZGlkRmluaXNo
TGF1bmNoaW5nUHJvY2VzcyhwaWRfdCwgSVBDOjpDb25uZWN0aW9uOjpJZGVudGlmaWVyKTsKKyAg
ICB2b2lkIGRpZEZpbmlzaExhdW5jaGluZ1Byb2Nlc3MoV1RGOjpQcm9jZXNzSWRlbnRpZmllciwg
SVBDOjpDb25uZWN0aW9uOjpJZGVudGlmaWVyKTsKIAogICAgIHZvaWQgcGxhdGZvcm1JbnZhbGlk
YXRlKCk7CiAKQEAgLTkxLDcgKzkyLDcgQEAgcHJpdmF0ZToKICAgICBXZWFrUHRyRmFjdG9yeTxQ
cm9jZXNzTGF1bmNoZXI+IG1fd2Vha1B0ckZhY3Rvcnk7CiAgICAgY29uc3QgTGF1bmNoT3B0aW9u
cyBtX2xhdW5jaE9wdGlvbnM7CiAgICAgYm9vbCBtX2lzTGF1bmNoaW5nOwotICAgIHBpZF90IG1f
cHJvY2Vzc0lkZW50aWZpZXI7CisgICAgV1RGOjpQcm9jZXNzSWRlbnRpZmllciBtX3Byb2Nlc3NJ
ZGVudGlmaWVyOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1Byb2Nlc3NBc3NlcnRpb24uY3BwCmluZGV4IGE2NmUxMjI0ZjM0Li5kNzRjZGM3
ZGQ1YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc0Fzc2VydGlv
bi5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc0Fzc2VydGlvbi5jcHAK
QEAgLTMwLDcgKzMwLDcgQEAKIAogbmFtZXNwYWNlIFdlYktpdCB7CiAKLVByb2Nlc3NBc3NlcnRp
b246OlByb2Nlc3NBc3NlcnRpb24ocGlkX3QsIEFzc2VydGlvblN0YXRlIGFzc2VydGlvblN0YXRl
LCBGdW5jdGlvbjx2b2lkKCk+JiYpCitQcm9jZXNzQXNzZXJ0aW9uOjpQcm9jZXNzQXNzZXJ0aW9u
KFdURjo6UHJvY2Vzc0lkZW50aWZpZXIsIEFzc2VydGlvblN0YXRlIGFzc2VydGlvblN0YXRlLCBG
dW5jdGlvbjx2b2lkKCk+JiYpCiAgICAgOiBtX2Fzc2VydGlvblN0YXRlKGFzc2VydGlvblN0YXRl
KQogewogfQpAQCAtNDcsNyArNDcsNyBAQCB2b2lkIFByb2Nlc3NBc3NlcnRpb246OnNldFN0YXRl
KEFzc2VydGlvblN0YXRlIGFzc2VydGlvblN0YXRlKQogICAgIG1fYXNzZXJ0aW9uU3RhdGUgPSBh
c3NlcnRpb25TdGF0ZTsKIH0KIAotUHJvY2Vzc0FuZFVJQXNzZXJ0aW9uOjpQcm9jZXNzQW5kVUlB
c3NlcnRpb24ocGlkX3QgcGlkLCBBc3NlcnRpb25TdGF0ZSBhc3NlcnRpb25TdGF0ZSkKK1Byb2Nl
c3NBbmRVSUFzc2VydGlvbjo6UHJvY2Vzc0FuZFVJQXNzZXJ0aW9uKFdURjo6UHJvY2Vzc0lkZW50
aWZpZXIgcGlkLCBBc3NlcnRpb25TdGF0ZSBhc3NlcnRpb25TdGF0ZSkKICAgICA6IFByb2Nlc3NB
c3NlcnRpb24ocGlkLCBhc3NlcnRpb25TdGF0ZSkKIHsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NBc3NlcnRpb24uaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1Byb2Nlc3NBc3NlcnRpb24uaAppbmRleCBlNWUzYTNiNjE0OS4uMmRmNDllOWJjNWMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NBc3NlcnRpb24uaAorKysg
Yi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmgKQEAgLTI4LDYgKzI4
LDcgQEAKIAogI2luY2x1ZGUgPHVuaXN0ZC5oPgogI2luY2x1ZGUgPHd0Zi9GdW5jdGlvbi5oPgor
I2luY2x1ZGUgPHd0Zi9Qcm9jZXNzSUQuaD4KIAogI2lmIFBMQVRGT1JNKElPUykgJiYgIVBMQVRG
T1JNKElPU19TSU1VTEFUT1IpCiAjaW5jbHVkZSA8d3RmL1JldGFpblB0ci5oPgpAQCAtNTEsNyAr
NTIsNyBAQCBwdWJsaWM6CiAKIGNsYXNzIFByb2Nlc3NBc3NlcnRpb24gewogcHVibGljOgotICAg
IFByb2Nlc3NBc3NlcnRpb24ocGlkX3QsIEFzc2VydGlvblN0YXRlLCBGdW5jdGlvbjx2b2lkKCk+
JiYgaW52YWxpZGF0aW9uQ2FsbGJhY2sgPSB7IH0pOworICAgIFByb2Nlc3NBc3NlcnRpb24oV1RG
OjpQcm9jZXNzSWRlbnRpZmllciwgQXNzZXJ0aW9uU3RhdGUsIEZ1bmN0aW9uPHZvaWQoKT4mJiBp
bnZhbGlkYXRpb25DYWxsYmFjayA9IHsgfSk7CiAgICAgdmlydHVhbCB+UHJvY2Vzc0Fzc2VydGlv
bigpOwogCiAgICAgdmlydHVhbCB2b2lkIHNldENsaWVudChQcm9jZXNzQXNzZXJ0aW9uQ2xpZW50
JiBjbGllbnQpIHsgbV9jbGllbnQgPSAmY2xpZW50OyB9CkBAIC04Miw3ICs4Myw3IEBAIHByaXZh
dGU6CiAgICAgCiBjbGFzcyBQcm9jZXNzQW5kVUlBc3NlcnRpb24gZmluYWwgOiBwdWJsaWMgUHJv
Y2Vzc0Fzc2VydGlvbiB7CiBwdWJsaWM6Ci0gICAgUHJvY2Vzc0FuZFVJQXNzZXJ0aW9uKHBpZF90
LCBBc3NlcnRpb25TdGF0ZSk7CisgICAgUHJvY2Vzc0FuZFVJQXNzZXJ0aW9uKFdURjo6UHJvY2Vz
c0lkZW50aWZpZXIsIEFzc2VydGlvblN0YXRlKTsKICAgICB+UHJvY2Vzc0FuZFVJQXNzZXJ0aW9u
KCk7CiAKICAgICB2b2lkIHNldENsaWVudChQcm9jZXNzQXNzZXJ0aW9uQ2xpZW50JikgZmluYWw7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNzVGhyb3R0bGVyLmNw
cCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NUaHJvdHRsZXIuY3BwCmluZGV4IGVl
ZDNlNjAxYWZlLi5mZDkzZDQ4NGM1OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvUHJvY2Vzc1Rocm90dGxlci5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJv
Y2Vzc1Rocm90dGxlci5jcHAKQEAgLTkxLDcgKzkxLDcgQEAgdm9pZCBQcm9jZXNzVGhyb3R0bGVy
Ojp1cGRhdGVBc3NlcnRpb24oKQogICAgIHVwZGF0ZUFzc2VydGlvbk5vdygpOwogfQogCi12b2lk
IFByb2Nlc3NUaHJvdHRsZXI6OmRpZENvbm5lY3RUb1Byb2Nlc3MocGlkX3QgcGlkKQordm9pZCBQ
cm9jZXNzVGhyb3R0bGVyOjpkaWRDb25uZWN0VG9Qcm9jZXNzKFdURjo6UHJvY2Vzc0lkZW50aWZp
ZXIgcGlkKQogewogICAgIFJFTEVBU0VfTE9HKFByb2Nlc3NTdXNwZW5zaW9uLCAiJXAgLSBQcm9j
ZXNzVGhyb3R0bGVyOjpkaWRDb25uZWN0VG9Qcm9jZXNzKCVkKSIsIHRoaXMsIHBpZCk7CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NUaHJvdHRsZXIuaCBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NUaHJvdHRsZXIuaAppbmRleCBjYjFhNGYyNmVj
My4uMDhkNWQyYWYyNmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nl
c3NUaHJvdHRsZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNzVGhyb3R0
bGVyLmgKQEAgLTI4LDYgKzI4LDcgQEAKIAogI2luY2x1ZGUgIlByb2Nlc3NBc3NlcnRpb24uaCIK
IAorI2luY2x1ZGUgPHd0Zi9Qcm9jZXNzSUQuaD4KICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlci5o
PgogI2luY2x1ZGUgPHd0Zi9SdW5Mb29wLmg+CiAjaW5jbHVkZSA8d3RmL1dlYWtQdHIuaD4KQEAg
LTU2LDcgKzU3LDcgQEAgcHVibGljOgogICAgIGlubGluZSBGb3JlZ3JvdW5kQWN0aXZpdHlUb2tl
biBmb3JlZ3JvdW5kQWN0aXZpdHlUb2tlbigpIGNvbnN0OwogICAgIGlubGluZSBCYWNrZ3JvdW5k
QWN0aXZpdHlUb2tlbiBiYWNrZ3JvdW5kQWN0aXZpdHlUb2tlbigpIGNvbnN0OwogICAgIAotICAg
IHZvaWQgZGlkQ29ubmVjdFRvUHJvY2VzcyhwaWRfdCk7CisgICAgdm9pZCBkaWRDb25uZWN0VG9Q
cm9jZXNzKFdURjo6UHJvY2Vzc0lkZW50aWZpZXIpOwogICAgIHZvaWQgcHJvY2Vzc1JlYWR5VG9T
dXNwZW5kKCk7CiAgICAgdm9pZCBkaWRDYW5jZWxQcm9jZXNzU3VzcGVuc2lvbigpOwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwIGIvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAppbmRleCA5Y2M1ZWZhNjM3Mi4uODli
ZjQyNDc4NmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94
eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcApAQCAt
NDQxLDcgKzQ0MSw3IEBAIGNvbnN0IEFQSTo6UGFnZUNvbmZpZ3VyYXRpb24mIFdlYlBhZ2VQcm94
eTo6Y29uZmlndXJhdGlvbigpIGNvbnN0CiAgICAgcmV0dXJuIG1fY29uZmlndXJhdGlvbi5nZXQo
KTsKIH0KIAotcGlkX3QgV2ViUGFnZVByb3h5Ojpwcm9jZXNzSWRlbnRpZmllcigpIGNvbnN0CitX
VEY6OlByb2Nlc3NJZGVudGlmaWVyIFdlYlBhZ2VQcm94eTo6cHJvY2Vzc0lkZW50aWZpZXIoKSBj
b25zdAogewogICAgIGlmIChtX2lzQ2xvc2VkKQogICAgICAgICByZXR1cm4gMDsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oIGIvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKaW5kZXggZTQzMzdiY2ZlZDEuLjJlOTBlNTc5Nzg1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAorKysg
Yi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaApAQCAtODQsNiArODQsNyBA
QAogI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KICNp
bmNsdWRlIDx3dGYvTW9ub3RvbmljVGltZS5oPgorI2luY2x1ZGUgPHd0Zi9Qcm9jZXNzSUQuaD4K
ICNpbmNsdWRlIDx3dGYvUmVmLmg+CiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgogI2luY2x1ZGUg
PHd0Zi9WZWN0b3IuaD4KQEAgLTg3NSw3ICs4NzYsNyBAQCBwdWJsaWM6CiAjZW5kaWYKIAogICAg
IFdlYlByb2Nlc3NQcm94eSYgcHJvY2VzcygpIHsgcmV0dXJuIG1fcHJvY2VzczsgfQotICAgIHBp
ZF90IHByb2Nlc3NJZGVudGlmaWVyKCkgY29uc3Q7CisgICAgV1RGOjpQcm9jZXNzSWRlbnRpZmll
ciBwcm9jZXNzSWRlbnRpZmllcigpIGNvbnN0OwogCiAgICAgV2ViUHJlZmVyZW5jZXMmIHByZWZl
cmVuY2VzKCkgeyByZXR1cm4gbV9wcmVmZXJlbmNlczsgfQogICAgIHZvaWQgc2V0UHJlZmVyZW5j
ZXMoV2ViUHJlZmVyZW5jZXMmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1dlYlByb2Nlc3NQb29sLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQ
b29sLmNwcAppbmRleCA5OGY2OGE3ZDQ3OS4uZjgwZmM0MmM2Y2IgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAKQEAgLTEwODMsNyArMTA4Myw3IEBAIHZvaWQg
V2ViUHJvY2Vzc1Bvb2w6OnJlZnJlc2hQbHVnaW5zKCkKIAogI2VuZGlmIC8vIEVOQUJMRShORVRT
Q0FQRV9QTFVHSU5fQVBJKQogCi1waWRfdCBXZWJQcm9jZXNzUG9vbDo6bmV0d29ya1Byb2Nlc3NJ
ZGVudGlmaWVyKCkKK1dURjo6UHJvY2Vzc0lkZW50aWZpZXIgV2ViUHJvY2Vzc1Bvb2w6Om5ldHdv
cmtQcm9jZXNzSWRlbnRpZmllcigpCiB7CiAgICAgaWYgKCFtX25ldHdvcmtQcm9jZXNzKQogICAg
ICAgICByZXR1cm4gMDsKQEAgLTEwOTEsNyArMTA5MSw3IEBAIHBpZF90IFdlYlByb2Nlc3NQb29s
OjpuZXR3b3JrUHJvY2Vzc0lkZW50aWZpZXIoKQogICAgIHJldHVybiBtX25ldHdvcmtQcm9jZXNz
LT5wcm9jZXNzSWRlbnRpZmllcigpOwogfQogCi1waWRfdCBXZWJQcm9jZXNzUG9vbDo6c3RvcmFn
ZVByb2Nlc3NJZGVudGlmaWVyKCkKK1dURjo6UHJvY2Vzc0lkZW50aWZpZXIgV2ViUHJvY2Vzc1Bv
b2w6OnN0b3JhZ2VQcm9jZXNzSWRlbnRpZmllcigpCiB7CiAgICAgaWYgKCFtX3N0b3JhZ2VQcm9j
ZXNzKQogICAgICAgICByZXR1cm4gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1dlYlByb2Nlc3NQb29sLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNz
UG9vbC5oCmluZGV4IDI0ZWJhYTE4M2Q4Li42NGEzYzA1ZjZmYiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5oCkBAIC00OSw2ICs0OSw3IEBACiAjaW5jbHVkZSA8d3Rm
L0ZvcndhcmQuaD4KICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUgPHd0Zi9IYXNo
U2V0Lmg+CisjaW5jbHVkZSA8d3RmL1Byb2Nlc3NJRC5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3Vu
dGVyLmg+CiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmlu
Z0hhc2guaD4KQEAgLTE5OSw4ICsyMDAsOCBAQCBwdWJsaWM6CiAgICAgY29uc3QgSGFzaE1hcDxT
dHJpbmcsIEhhc2hNYXA8U3RyaW5nLCBIYXNoTWFwPFN0cmluZywgdWludDhfdD4+PiYgcGx1Z2lu
TG9hZENsaWVudFBvbGljaWVzKCkgY29uc3QgeyByZXR1cm4gbV9wbHVnaW5Mb2FkQ2xpZW50UG9s
aWNpZXM7IH0KICNlbmRpZgogCi0gICAgcGlkX3QgbmV0d29ya1Byb2Nlc3NJZGVudGlmaWVyKCk7
Ci0gICAgcGlkX3Qgc3RvcmFnZVByb2Nlc3NJZGVudGlmaWVyKCk7CisgICAgV1RGOjpQcm9jZXNz
SWRlbnRpZmllciBuZXR3b3JrUHJvY2Vzc0lkZW50aWZpZXIoKTsKKyAgICBXVEY6OlByb2Nlc3NJ
ZGVudGlmaWVyIHN0b3JhZ2VQcm9jZXNzSWRlbnRpZmllcigpOwogCiAgICAgdm9pZCBzZXRBbHdh
eXNVc2VzQ29tcGxleFRleHRDb2RlUGF0aChib29sKTsKICAgICB2b2lkIHNldFNob3VsZFVzZUZv
bnRTbW9vdGhpbmcoYm9vbCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>320953</attachid>
            <date>2017-09-15 13:06:30 -0700</date>
            <delta_ts>2017-09-15 13:17:12 -0700</delta_ts>
            <desc>Test patch for ews on adding process identifier alias.</desc>
            <filename>pid_t-test.3.diff</filename>
            <type>text/plain</type>
            <size>18594</size>
            <attacher name="Stephan Szabo">stephan.szabo</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNSZW1vdGVJbnNwZWN0b3Iu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1JlbW90ZUluc3BlY3Rvci5jcHAKaW5k
ZXggM2JlNjFkMDkyNzIuLjFiZTAyYjZjNjEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQVBJL0pTUmVtb3RlSW5zcGVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQVBJL0pTUmVtb3RlSW5zcGVjdG9yLmNwcApAQCAtMjcsNiArMjcsNyBAQAogI2luY2x1ZGUg
IkpTUmVtb3RlSW5zcGVjdG9yLmgiCiAKICNpbmNsdWRlICJKU0dsb2JhbE9iamVjdENvbnNvbGVD
bGllbnQuaCIKKyNpbmNsdWRlIDx3dGYvUHJvY2Vzc0lELmg+CiAKICNpZiBFTkFCTEUoUkVNT1RF
X0lOU1BFQ1RPUikKICNpbmNsdWRlICJSZW1vdGVJbnNwZWN0b3IuaCIKQEAgLTUwLDcgKzUxLDcg
QEAgdm9pZCBKU1JlbW90ZUluc3BlY3RvclN0YXJ0KHZvaWQpCiAjZW5kaWYKIH0KIAotdm9pZCBK
U1JlbW90ZUluc3BlY3RvclNldFBhcmVudFByb2Nlc3NJbmZvcm1hdGlvbihwaWRfdCBwaWQsIGNv
bnN0IHVpbnQ4X3QqIGF1ZGl0RGF0YSwgc2l6ZV90IGF1ZGl0TGVuZ3RoKQordm9pZCBKU1JlbW90
ZUluc3BlY3RvclNldFBhcmVudFByb2Nlc3NJbmZvcm1hdGlvbihXVEY6OlByb2Nlc3NJRCBwaWQs
IGNvbnN0IHVpbnQ4X3QqIGF1ZGl0RGF0YSwgc2l6ZV90IGF1ZGl0TGVuZ3RoKQogewogI2lmIEVO
QUJMRShSRU1PVEVfSU5TUEVDVE9SKSAmJiBQTEFURk9STShDT0NPQSkKICAgICBSZXRhaW5QdHI8
Q0ZEYXRhUmVmPiBhdWRpdERhdGFSZWYgPSBhZG9wdENGKENGRGF0YUNyZWF0ZShrQ0ZBbGxvY2F0
b3JEZWZhdWx0LCBhdWRpdERhdGEsIGF1ZGl0TGVuZ3RoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQVBJL0pTUmVtb3RlSW5zcGVjdG9yLmggYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQVBJL0pTUmVtb3RlSW5zcGVjdG9yLmgKaW5kZXggNGY4NjUxMDI5OTguLmM4NjI4NGVk
NjNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTUmVtb3RlSW5zcGVj
dG9yLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1JlbW90ZUluc3BlY3Rvci5o
CkBAIC0yOCw2ICsyOCw3IEBACiAKICNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9KU0Jhc2UuaD4K
ICNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9XZWJLaXRBdmFpbGFiaWxpdHkuaD4KKyNpbmNsdWRl
IDx3dGYvUHJvY2Vzc0lELmg+CiAKICNpbmNsdWRlIDx1bmlzdGQuaD4KIApAQCAtMzcsNyArMzgs
NyBAQCBleHRlcm4gIkMiIHsKIAogSlNfRVhQT1JUIHZvaWQgSlNSZW1vdGVJbnNwZWN0b3JEaXNh
YmxlQXV0b1N0YXJ0KHZvaWQpIENGX0FWQUlMQUJMRSgxMF8xMSwgOV8wKTsKIEpTX0VYUE9SVCB2
b2lkIEpTUmVtb3RlSW5zcGVjdG9yU3RhcnQodm9pZCkgQ0ZfQVZBSUxBQkxFKDEwXzExLCA5XzAp
OwotSlNfRVhQT1JUIHZvaWQgSlNSZW1vdGVJbnNwZWN0b3JTZXRQYXJlbnRQcm9jZXNzSW5mb3Jt
YXRpb24ocGlkX3QsIGNvbnN0IHVpbnQ4X3QqIGF1ZGl0RGF0YSwgc2l6ZV90IGF1ZGl0TGVuZ3Ro
KSBDRl9BVkFJTEFCTEUoMTBfMTEsIDlfMCk7CitKU19FWFBPUlQgdm9pZCBKU1JlbW90ZUluc3Bl
Y3RvclNldFBhcmVudFByb2Nlc3NJbmZvcm1hdGlvbihQcm9jZXNzSUQsIGNvbnN0IHVpbnQ4X3Qq
IGF1ZGl0RGF0YSwgc2l6ZV90IGF1ZGl0TGVuZ3RoKSBDRl9BVkFJTEFCTEUoMTBfMTEsIDlfMCk7
CiAKIEpTX0VYUE9SVCB2b2lkIEpTUmVtb3RlSW5zcGVjdG9yU2V0TG9nVG9TeXN0ZW1Db25zb2xl
KGJvb2wpIENGX0FWQUlMQUJMRSgxMF8xMSwgOV8wKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2luc3BlY3Rvci9yZW1vdGUvUmVtb3RlSW5zcGVjdG9yLmggYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3JlbW90ZS9SZW1vdGVJbnNwZWN0b3IuaAppbmRleCBk
MDBkZTJiNzAzZC4uNmFlN2MwOTViMzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9pbnNwZWN0b3IvcmVtb3RlL1JlbW90ZUluc3BlY3Rvci5oCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9pbnNwZWN0b3IvcmVtb3RlL1JlbW90ZUluc3BlY3Rvci5oCkBAIC0zMCw2ICszMCw3
IEBACiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgog
I2luY2x1ZGUgPHd0Zi9Mb2NrLmg+CisjaW5jbHVkZSA8d3RmL1Byb2Nlc3NJRC5oPgogI2luY2x1
ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCiAjaWYgUExBVEZPUk0oQ09DT0EpCkBAIC0xMDgs
OSArMTA5LDkgQEAgcHVibGljOgogCiAjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgYm9vbCBoYXNQ
YXJlbnRQcm9jZXNzSW5mb3JtYXRpb24oKSBjb25zdCB7IHJldHVybiBtX3BhcmVudFByb2Nlc3NJ
ZGVudGlmaWVyICE9IDA7IH0KLSAgICBwaWRfdCBwYXJlbnRQcm9jZXNzSWRlbnRpZmllcigpIGNv
bnN0IHsgcmV0dXJuIG1fcGFyZW50UHJvY2Vzc0lkZW50aWZpZXI7IH0KKyAgICBQcm9jZXNzSUQg
cGFyZW50UHJvY2Vzc0lkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX3BhcmVudFByb2Nlc3NJ
ZGVudGlmaWVyOyB9CiAgICAgUmV0YWluUHRyPENGRGF0YVJlZj4gcGFyZW50UHJvY2Vzc0F1ZGl0
RGF0YSgpIGNvbnN0IHsgcmV0dXJuIG1fcGFyZW50UHJvY2Vzc0F1ZGl0RGF0YTsgfQotICAgIHZv
aWQgc2V0UGFyZW50UHJvY2Vzc0luZm9ybWF0aW9uKHBpZF90LCBSZXRhaW5QdHI8Q0ZEYXRhUmVm
PiBhdWRpdERhdGEpOworICAgIHZvaWQgc2V0UGFyZW50UHJvY2Vzc0luZm9ybWF0aW9uKFByb2Nl
c3NJRCwgUmV0YWluUHRyPENGRGF0YVJlZj4gYXVkaXREYXRhKTsKICAgICB2b2lkIHNldFBhcmVu
dFByb2Nlc3NJbmZvbWF0aW9uSXNEZWxheWVkKCk7CiAjZW5kaWYKIApAQCAtMjA3LDcgKzIwOCw3
IEBAIHByaXZhdGU6CiAgICAgYm9vbCBtX2hhc0FjdGl2ZURlYnVnU2Vzc2lvbiB7IGZhbHNlIH07
CiAgICAgYm9vbCBtX3B1c2hTY2hlZHVsZWQgeyBmYWxzZSB9OwogCi0gICAgcGlkX3QgbV9wYXJl
bnRQcm9jZXNzSWRlbnRpZmllciB7IDAgfTsKKyAgICBQcm9jZXNzSUQgbV9wYXJlbnRQcm9jZXNz
SWRlbnRpZmllciB7IDAgfTsKICNpZiBQTEFURk9STShDT0NPQSkKICAgICBSZXRhaW5QdHI8Q0ZE
YXRhUmVmPiBtX3BhcmVudFByb2Nlc3NBdWRpdERhdGE7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XVEYvd3RmL1Byb2Nlc3NJRC5oIGIvU291cmNlL1dURi93dGYvUHJvY2Vzc0lELmgKaW5k
ZXggZjg0NzE2ZThkOTMuLmNjZGMyZTAwMjA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9Q
cm9jZXNzSUQuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9Qcm9jZXNzSUQuaApAQCAtMzYsNyArMzYs
MTMgQEAKIAogbmFtZXNwYWNlIFdURiB7CiAKLWlubGluZSBpbnQgZ2V0Q3VycmVudFByb2Nlc3NJ
RCgpCisjaWYgT1MoV0lORE9XUykKK3VzaW5nIFByb2Nlc3NJRCA9IGludDsKKyNlbHNlCit1c2lu
ZyBQcm9jZXNzSUQgPSBwaWRfdDsKKyNlbmRpZgorCitpbmxpbmUgUHJvY2Vzc0lEIGdldEN1cnJl
bnRQcm9jZXNzSUQoKQogewogI2lmIE9TKFdJTkRPV1MpCiAgICAgcmV0dXJuIEdldEN1cnJlbnRQ
cm9jZXNzSWQoKTsKQEAgLTQ4LDYgKzU0LDcgQEAgaW5saW5lIGludCBnZXRDdXJyZW50UHJvY2Vz
c0lEKCkKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OmdldEN1cnJlbnRQcm9jZXNz
SUQ7Cit1c2luZyBXVEY6OlByb2Nlc3NJRDsKIAogI2VuZGlmIC8vIFByb2Nlc3NJRF9oCiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3NDcmVh
dGlvblBhcmFtZXRlcnMuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1By
b2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaAppbmRleCAxZWI3OTc5OTYxOC4uZDBhMzJkYmIyZjIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3ND
cmVhdGlvblBhcmFtZXRlcnMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05l
dHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmgKQEAgLTI4LDYgKzI4LDcgQEAKICNpbmNs
dWRlICJBdHRhY2htZW50LmgiCiAjaW5jbHVkZSAiQ2FjaGVNb2RlbC5oIgogI2luY2x1ZGUgIlNh
bmRib3hFeHRlbnNpb24uaCIKKyNpbmNsdWRlIDx3dGYvUHJvY2Vzc0lELmg+CiAjaW5jbHVkZSA8
d3RmL1ZlY3Rvci5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCkBAIC03OCw3
ICs3OSw3IEBAIHN0cnVjdCBOZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycyB7CiAgICAg
U2Vjb25kcyBsb2FkVGhyb3R0bGVMYXRlbmN5OwogCiAgICAgVmVjdG9yPFN0cmluZz4gdXJsU2No
ZW1lc1JlZ2lzdGVyZWRGb3JDdXN0b21Qcm90b2NvbHM7Ci0gICAgcGlkX3QgcHJlc2VudGluZ0Fw
cGxpY2F0aW9uUElEIHsgMCB9OworICAgIFByb2Nlc3NJRCBwcmVzZW50aW5nQXBwbGljYXRpb25Q
SUQgeyAwIH07CiAKICNpZiBQTEFURk9STShDT0NPQSkKICAgICBTdHJpbmcgcGFyZW50UHJvY2Vz
c05hbWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQcm9jZXNzQ3JlYXRp
b25QYXJhbWV0ZXJzLmggYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQcm9jZXNzQ3JlYXRpb25Q
YXJhbWV0ZXJzLmgKaW5kZXggNTYxODVhYmU3NmIuLjBlMjNjNGI2ZDg4IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmgKKysrIGIv
U291cmNlL1dlYktpdC9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oCkBAIC0z
MCw2ICszMCw3IEBACiAjaW5jbHVkZSAiVGV4dENoZWNrZXJTdGF0ZS5oIgogI2luY2x1ZGUgIlVz
ZXJEYXRhLmgiCiAjaW5jbHVkZSA8cGFsL1Nlc3Npb25JRC5oPgorI2luY2x1ZGUgPHd0Zi9Qcm9j
ZXNzSUQuaD4KICNpbmNsdWRlIDx3dGYvUmV0YWluUHRyLmg+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rv
ci5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0hhc2guaD4KQEAgLTEzNiw3ICsxMzcsNyBA
QCBzdHJ1Y3QgV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycyB7CiAgICAgU3RyaW5nIHVpUHJv
Y2Vzc0J1bmRsZUlkZW50aWZpZXI7CiAjZW5kaWYKIAotICAgIHBpZF90IHByZXNlbnRpbmdBcHBs
aWNhdGlvblBJRCB7IDAgfTsKKyAgICBQcm9jZXNzSUQgcHJlc2VudGluZ0FwcGxpY2F0aW9uUElE
IHsgMCB9OwogCiAjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgV2ViQ29yZTo6TWFjaFNlbmRSaWdo
dCBhY2NlbGVyYXRlZENvbXBvc2l0aW5nUG9ydDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0FQSS9BUElQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24uaCBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0FQSS9BUElQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24uaAppbmRleCA5NTQ0
ODQ3OTNiNC4uYTA2YWFhMmQ5ZTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L0FQSS9BUElQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24uaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9BUEkvQVBJUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmgKQEAgLTEzOSw4ICsxMzks
OCBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRDVERhdGFDb25uZWN0aW9uU2VydmljZVR5cGUoY29u
c3QgV1RGOjpTdHJpbmcmIGN0RGF0YUNvbm5lY3Rpb25TZXJ2aWNlVHlwZSkgeyBtX2N0RGF0YUNv
bm5lY3Rpb25TZXJ2aWNlVHlwZSA9IGN0RGF0YUNvbm5lY3Rpb25TZXJ2aWNlVHlwZTsgfQogI2Vu
ZGlmCiAKLSAgICBwaWRfdCBwcmVzZW50aW5nQXBwbGljYXRpb25QSUQoKSBjb25zdCB7IHJldHVy
biBtX3ByZXNlbnRpbmdBcHBsaWNhdGlvblBJRDsgfQotICAgIHZvaWQgc2V0UHJlc2VudGluZ0Fw
cGxpY2F0aW9uUElEKHBpZF90IHBpZCkgeyBtX3ByZXNlbnRpbmdBcHBsaWNhdGlvblBJRCA9IHBp
ZDsgfQorICAgIFByb2Nlc3NJRCBwcmVzZW50aW5nQXBwbGljYXRpb25QSUQoKSBjb25zdCB7IHJl
dHVybiBtX3ByZXNlbnRpbmdBcHBsaWNhdGlvblBJRDsgfQorICAgIHZvaWQgc2V0UHJlc2VudGlu
Z0FwcGxpY2F0aW9uUElEKFByb2Nlc3NJRCBwaWQpIHsgbV9wcmVzZW50aW5nQXBwbGljYXRpb25Q
SUQgPSBwaWQ7IH0KIAogcHJpdmF0ZToKICAgICBib29sIG1fc2hvdWxkSGF2ZUxlZ2FjeURhdGFT
dG9yZSB7IGZhbHNlIH07CkBAIC0xNzQsNyArMTc0LDcgQEAgcHJpdmF0ZToKICAgICBib29sIG1f
YWx3YXlzUnVuc0F0QmFja2dyb3VuZFByaW9yaXR5IHsgZmFsc2UgfTsKICAgICBib29sIG1fc2hv
dWxkVGFrZVVJQmFja2dyb3VuZEFzc2VydGlvbiB7IHRydWUgfTsKICAgICBib29sIG1fc2hvdWxk
Q2FwdHVyZUF1ZGlvSW5VSVByb2Nlc3MgeyBmYWxzZSB9OwotICAgIHBpZF90IG1fcHJlc2VudGlu
Z0FwcGxpY2F0aW9uUElEIHsgZ2V0Q3VycmVudFByb2Nlc3NJRCgpIH07CisgICAgUHJvY2Vzc0lE
IG1fcHJlc2VudGluZ0FwcGxpY2F0aW9uUElEIHsgZ2V0Q3VycmVudFByb2Nlc3NJRCgpIH07CiAj
aWYgUExBVEZPUk0oSU9TKQogICAgIFdURjo6U3RyaW5nIG1fY3REYXRhQ29ubmVjdGlvblNlcnZp
Y2VUeXBlOwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkv
Qy9XS0NvbnRleHQuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tDb250ZXh0
LmNwcAppbmRleCAwNWE0ZWY5NGNhOS4uNzgzMzhlZDY1NzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvQVBJL0MvV0tDb250ZXh0LmNwcApAQCAtNTk5LDEyICs1OTksMTIgQEAgdm9pZCBX
S0NvbnRleHRUZXJtaW5hdGVOZXR3b3JrUHJvY2VzcyhXS0NvbnRleHRSZWYgY29udGV4dCkKICAg
ICB0b0ltcGwoY29udGV4dCktPnRlcm1pbmF0ZU5ldHdvcmtQcm9jZXNzKCk7CiB9CiAKLXBpZF90
IFdLQ29udGV4dEdldE5ldHdvcmtQcm9jZXNzSWRlbnRpZmllcihXS0NvbnRleHRSZWYgY29udGV4
dFJlZikKK1Byb2Nlc3NJRCBXS0NvbnRleHRHZXROZXR3b3JrUHJvY2Vzc0lkZW50aWZpZXIoV0tD
b250ZXh0UmVmIGNvbnRleHRSZWYpCiB7CiAgICAgcmV0dXJuIHRvSW1wbChjb250ZXh0UmVmKS0+
bmV0d29ya1Byb2Nlc3NJZGVudGlmaWVyKCk7CiB9CiAKLXBpZF90IFdLQ29udGV4dEdldERhdGFi
YXNlUHJvY2Vzc0lkZW50aWZpZXIoV0tDb250ZXh0UmVmIGNvbnRleHRSZWYpCitQcm9jZXNzSUQg
V0tDb250ZXh0R2V0RGF0YWJhc2VQcm9jZXNzSWRlbnRpZmllcihXS0NvbnRleHRSZWYgY29udGV4
dFJlZikKIHsKICAgICByZXR1cm4gdG9JbXBsKGNvbnRleHRSZWYpLT5zdG9yYWdlUHJvY2Vzc0lk
ZW50aWZpZXIoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9D
L1dLQ29udGV4dFByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLQ29u
dGV4dFByaXZhdGUuaAppbmRleCBmZTg3ODhkMzQyYi4uYjBjNGE0MjQwMzAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dFByaXZhdGUuaAorKysgYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHRQcml2YXRlLmgKQEAgLTI4LDYg
KzI4LDcgQEAKIAogI2luY2x1ZGUgPFdlYktpdC9XS0Jhc2UuaD4KICNpbmNsdWRlIDxXZWJLaXQv
V0tDb250ZXh0Lmg+CisjaW5jbHVkZSA8d3RmL1Byb2Nlc3NJRC5oPgogCiAjaW5jbHVkZSA8dW5p
c3RkLmg+CiAKQEAgLTEwMCw4ICsxMDEsOCBAQCBXS19FWFBPUlQgdm9pZCBXS0NvbnRleHRTZXRN
ZW1vcnlDYWNoZURpc2FibGVkKFdLQ29udGV4dFJlZiwgYm9vbCBkaXNhYmxlZCk7CiAKIFdLX0VY
UE9SVCB2b2lkIFdLQ29udGV4dFNldEZvbnRXaGl0ZWxpc3QoV0tDb250ZXh0UmVmLCBXS0FycmF5
UmVmKTsKIAotV0tfRVhQT1JUIHBpZF90IFdLQ29udGV4dEdldE5ldHdvcmtQcm9jZXNzSWRlbnRp
ZmllcihXS0NvbnRleHRSZWYgY29udGV4dCk7Ci1XS19FWFBPUlQgcGlkX3QgV0tDb250ZXh0R2V0
RGF0YWJhc2VQcm9jZXNzSWRlbnRpZmllcihXS0NvbnRleHRSZWYgY29udGV4dCk7CitXS19FWFBP
UlQgUHJvY2Vzc0lEIFdLQ29udGV4dEdldE5ldHdvcmtQcm9jZXNzSWRlbnRpZmllcihXS0NvbnRl
eHRSZWYgY29udGV4dCk7CitXS19FWFBPUlQgUHJvY2Vzc0lEIFdLQ29udGV4dEdldERhdGFiYXNl
UHJvY2Vzc0lkZW50aWZpZXIoV0tDb250ZXh0UmVmIGNvbnRleHQpOwogCiAjaWZkZWYgX19jcGx1
c3BsdXMKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLUGFn
ZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2UuY3BwCmluZGV4IDA2
N2MwZWM5NGMwLi4wNDE4Y2U4MDVmYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvQVBJL0MvV0tQYWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9X
S1BhZ2UuY3BwCkBAIC0yNzQxLDcgKzI3NDEsNyBAQCB2b2lkIFdLUGFnZVNldElnbm9yZXNWaWV3
cG9ydFNjYWxlTGltaXRzKFdLUGFnZVJlZiBwYWdlLCBib29sIGlnbm9yZXNWaWV3cG9ydFNjYQog
I2VuZGlmCiB9CiAKLXBpZF90IFdLUGFnZUdldFByb2Nlc3NJZGVudGlmaWVyKFdLUGFnZVJlZiBw
YWdlKQorUHJvY2Vzc0lEIFdLUGFnZUdldFByb2Nlc3NJZGVudGlmaWVyKFdLUGFnZVJlZiBwYWdl
KQogewogICAgIHJldHVybiB0b0ltcGwocGFnZSktPnByb2Nlc3NJZGVudGlmaWVyKCk7CiB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2VQcml2YXRlLmgg
Yi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2VQcml2YXRlLmgKaW5kZXggODcx
NzQ2ODg3NjEuLjQ0YWVmNjQxYzhlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9BUEkvQy9XS1BhZ2VQcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJ
L0MvV0tQYWdlUHJpdmF0ZS5oCkBAIC0yOCw2ICsyOCw3IEBACiAKICNpbmNsdWRlIDxXZWJLaXQv
V0tCYXNlLmg+CiAjaW5jbHVkZSA8V2ViS2l0L1dLUGFnZS5oPgorI2luY2x1ZGUgPHd0Zi9Qcm9j
ZXNzSUQuaD4KIAogI2luY2x1ZGUgPHVuaXN0ZC5oPgogCkBAIC0xNzEsNyArMTcyLDcgQEAgV0tf
RVhQT1JUIHZvaWQgV0tQYWdlUmVzdG9yZUZyb21TZXNzaW9uU3RhdGVXaXRob3V0TmF2aWdhdGlv
bihXS1BhZ2VSZWYgcGFnZSwgV0sKIAogV0tfRVhQT1JUIHZvaWQgV0tQYWdlU2V0SWdub3Jlc1Zp
ZXdwb3J0U2NhbGVMaW1pdHMoV0tQYWdlUmVmIHBhZ2UsIGJvb2wgaWdub3Jlc1ZpZXdwb3J0U2Nh
bGVMaW1pdHMpOwogCi1XS19FWFBPUlQgcGlkX3QgV0tQYWdlR2V0UHJvY2Vzc0lkZW50aWZpZXIo
V0tQYWdlUmVmIHBhZ2UpOworV0tfRVhQT1JUIFByb2Nlc3NJRCBXS1BhZ2VHZXRQcm9jZXNzSWRl
bnRpZmllcihXS1BhZ2VSZWYgcGFnZSk7CiAKICNpZmRlZiBfX2NwbHVzcGx1cwogfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ2hpbGRQcm9jZXNzUHJveHkuaCBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0NoaWxkUHJvY2Vzc1Byb3h5LmgKaW5kZXggYzYzYjliZTE0M2Mu
LjdiMzFjOGUzYzRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9DaGlsZFBy
b2Nlc3NQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NoaWxkUHJvY2Vzc1By
b3h5LmgKQEAgLTI5LDYgKzI5LDcgQEAKICNpbmNsdWRlICJNZXNzYWdlUmVjZWl2ZXJNYXAuaCIK
ICNpbmNsdWRlICJQcm9jZXNzTGF1bmNoZXIuaCIKIAorI2luY2x1ZGUgPHd0Zi9Qcm9jZXNzSUQu
aD4KICNpbmNsdWRlIDx3dGYvU3lzdGVtVHJhY2luZy5oPgogI2luY2x1ZGUgPHd0Zi9UaHJlYWRT
YWZlUmVmQ291bnRlZC5oPgogCkBAIC03Miw3ICs3Myw3IEBAIHB1YmxpYzoKICAgICB9OwogICAg
IFN0YXRlIHN0YXRlKCkgY29uc3Q7CiAKLSAgICBwaWRfdCBwcm9jZXNzSWRlbnRpZmllcigpIGNv
bnN0IHsgcmV0dXJuIG1fcHJvY2Vzc0xhdW5jaGVyID8gbV9wcm9jZXNzTGF1bmNoZXItPnByb2Nl
c3NJZGVudGlmaWVyKCkgOiAwOyB9CisgICAgUHJvY2Vzc0lEIHByb2Nlc3NJZGVudGlmaWVyKCkg
Y29uc3QgeyByZXR1cm4gbV9wcm9jZXNzTGF1bmNoZXIgPyBtX3Byb2Nlc3NMYXVuY2hlci0+cHJv
Y2Vzc0lkZW50aWZpZXIoKSA6IDA7IH0KIAogICAgIGJvb2wgY2FuU2VuZE1lc3NhZ2UoKSBjb25z
dCB7IHJldHVybiBzdGF0ZSgpICE9IFN0YXRlOjpUZXJtaW5hdGVkO30KICAgICBib29sIHNlbmRN
ZXNzYWdlKHN0ZDo6dW5pcXVlX3B0cjxJUEM6OkVuY29kZXI+LCBPcHRpb25TZXQ8SVBDOjpTZW5k
T3B0aW9uPik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9MYXVuY2hlci9Q
cm9jZXNzTGF1bmNoZXIuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvTGF1bmNoZXIvUHJv
Y2Vzc0xhdW5jaGVyLmNwcAppbmRleCAwODljMTdjMzMzZi4uZjJmNzJhY2MzZjIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0xhdW5jaGVyL1Byb2Nlc3NMYXVuY2hlci5jcHAK
KysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvTGF1bmNoZXIvUHJvY2Vzc0xhdW5jaGVyLmNw
cApAQCAtNDEsNyArNDEsNyBAQCBQcm9jZXNzTGF1bmNoZXI6OlByb2Nlc3NMYXVuY2hlcihDbGll
bnQqIGNsaWVudCwgY29uc3QgTGF1bmNoT3B0aW9ucyYgbGF1bmNoT3B0aQogICAgIGxhdW5jaFBy
b2Nlc3MoKTsKIH0KIAotdm9pZCBQcm9jZXNzTGF1bmNoZXI6OmRpZEZpbmlzaExhdW5jaGluZ1By
b2Nlc3MocGlkX3QgcHJvY2Vzc0lkZW50aWZpZXIsIElQQzo6Q29ubmVjdGlvbjo6SWRlbnRpZmll
ciBpZGVudGlmaWVyKQordm9pZCBQcm9jZXNzTGF1bmNoZXI6OmRpZEZpbmlzaExhdW5jaGluZ1By
b2Nlc3MoUHJvY2Vzc0lEIHByb2Nlc3NJZGVudGlmaWVyLCBJUEM6OkNvbm5lY3Rpb246OklkZW50
aWZpZXIgaWRlbnRpZmllcikKIHsKICAgICBtX3Byb2Nlc3NJZGVudGlmaWVyID0gcHJvY2Vzc0lk
ZW50aWZpZXI7CiAgICAgbV9pc0xhdW5jaGluZyA9IGZhbHNlOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvTGF1bmNoZXIvUHJvY2Vzc0xhdW5jaGVyLmggYi9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9MYXVuY2hlci9Qcm9jZXNzTGF1bmNoZXIuaAppbmRleCA2Nzk4ZmM5Zjlk
MC4uMDIyYWI2YTc3NDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0xhdW5j
aGVyL1Byb2Nlc3NMYXVuY2hlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0xhdW5j
aGVyL1Byb2Nlc3NMYXVuY2hlci5oCkBAIC0yNyw2ICsyNyw3IEBACiAKICNpbmNsdWRlICJDb25u
ZWN0aW9uLmgiCiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KKyNpbmNsdWRlIDx3dGYvUHJvY2Vz
c0lELmg+CiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9UaHJlYWRpbmcu
aD4KICNpbmNsdWRlIDx3dGYvV2Vha1B0ci5oPgpAQCAtNjksNyArNzAsNyBAQCBwdWJsaWM6CiAg
ICAgfQogCiAgICAgYm9vbCBpc0xhdW5jaGluZygpIGNvbnN0IHsgcmV0dXJuIG1faXNMYXVuY2hp
bmc7IH0KLSAgICBwaWRfdCBwcm9jZXNzSWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1fcHJv
Y2Vzc0lkZW50aWZpZXI7IH0KKyAgICBQcm9jZXNzSUQgcHJvY2Vzc0lkZW50aWZpZXIoKSBjb25z
dCB7IHJldHVybiBtX3Byb2Nlc3NJZGVudGlmaWVyOyB9CiAKICAgICB2b2lkIHRlcm1pbmF0ZVBy
b2Nlc3MoKTsKICAgICB2b2lkIGludmFsaWRhdGUoKTsKQEAgLTc4LDcgKzc5LDcgQEAgcHJpdmF0
ZToKICAgICBQcm9jZXNzTGF1bmNoZXIoQ2xpZW50KiwgY29uc3QgTGF1bmNoT3B0aW9ucyYgbGF1
bmNoT3B0aW9ucyk7CiAKICAgICB2b2lkIGxhdW5jaFByb2Nlc3MoKTsKLSAgICB2b2lkIGRpZEZp
bmlzaExhdW5jaGluZ1Byb2Nlc3MocGlkX3QsIElQQzo6Q29ubmVjdGlvbjo6SWRlbnRpZmllcik7
CisgICAgdm9pZCBkaWRGaW5pc2hMYXVuY2hpbmdQcm9jZXNzKFByb2Nlc3NJRCwgSVBDOjpDb25u
ZWN0aW9uOjpJZGVudGlmaWVyKTsKIAogICAgIHZvaWQgcGxhdGZvcm1JbnZhbGlkYXRlKCk7CiAK
QEAgLTkxLDcgKzkyLDcgQEAgcHJpdmF0ZToKICAgICBXZWFrUHRyRmFjdG9yeTxQcm9jZXNzTGF1
bmNoZXI+IG1fd2Vha1B0ckZhY3Rvcnk7CiAgICAgY29uc3QgTGF1bmNoT3B0aW9ucyBtX2xhdW5j
aE9wdGlvbnM7CiAgICAgYm9vbCBtX2lzTGF1bmNoaW5nOwotICAgIHBpZF90IG1fcHJvY2Vzc0lk
ZW50aWZpZXI7CisgICAgUHJvY2Vzc0lEIG1fcHJvY2Vzc0lkZW50aWZpZXI7CiB9OwogCiB9IC8v
IG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1By
b2Nlc3NBc3NlcnRpb24uY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc0Fzc2Vy
dGlvbi5jcHAKaW5kZXggYTY2ZTEyMjRmMzQuLjkyZTNkOGMwNzUyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmNwcApAQCAtMzAsNyArMzAsNyBAQAogCiBu
YW1lc3BhY2UgV2ViS2l0IHsKIAotUHJvY2Vzc0Fzc2VydGlvbjo6UHJvY2Vzc0Fzc2VydGlvbihw
aWRfdCwgQXNzZXJ0aW9uU3RhdGUgYXNzZXJ0aW9uU3RhdGUsIEZ1bmN0aW9uPHZvaWQoKT4mJikK
K1Byb2Nlc3NBc3NlcnRpb246OlByb2Nlc3NBc3NlcnRpb24oUHJvY2Vzc0lELCBBc3NlcnRpb25T
dGF0ZSBhc3NlcnRpb25TdGF0ZSwgRnVuY3Rpb248dm9pZCgpPiYmKQogICAgIDogbV9hc3NlcnRp
b25TdGF0ZShhc3NlcnRpb25TdGF0ZSkKIHsKIH0KQEAgLTQ3LDcgKzQ3LDcgQEAgdm9pZCBQcm9j
ZXNzQXNzZXJ0aW9uOjpzZXRTdGF0ZShBc3NlcnRpb25TdGF0ZSBhc3NlcnRpb25TdGF0ZSkKICAg
ICBtX2Fzc2VydGlvblN0YXRlID0gYXNzZXJ0aW9uU3RhdGU7CiB9CiAKLVByb2Nlc3NBbmRVSUFz
c2VydGlvbjo6UHJvY2Vzc0FuZFVJQXNzZXJ0aW9uKHBpZF90IHBpZCwgQXNzZXJ0aW9uU3RhdGUg
YXNzZXJ0aW9uU3RhdGUpCitQcm9jZXNzQW5kVUlBc3NlcnRpb246OlByb2Nlc3NBbmRVSUFzc2Vy
dGlvbihQcm9jZXNzSUQgcGlkLCBBc3NlcnRpb25TdGF0ZSBhc3NlcnRpb25TdGF0ZSkKICAgICA6
IFByb2Nlc3NBc3NlcnRpb24ocGlkLCBhc3NlcnRpb25TdGF0ZSkKIHsKIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NBc3NlcnRpb24uaCBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1Byb2Nlc3NBc3NlcnRpb24uaAppbmRleCBlNWUzYTNiNjE0OS4uMjAzMjAw
MDY1NTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NBc3NlcnRp
b24uaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmgKQEAg
LTI4LDYgKzI4LDcgQEAKIAogI2luY2x1ZGUgPHVuaXN0ZC5oPgogI2luY2x1ZGUgPHd0Zi9GdW5j
dGlvbi5oPgorI2luY2x1ZGUgPHd0Zi9Qcm9jZXNzSUQuaD4KIAogI2lmIFBMQVRGT1JNKElPUykg
JiYgIVBMQVRGT1JNKElPU19TSU1VTEFUT1IpCiAjaW5jbHVkZSA8d3RmL1JldGFpblB0ci5oPgpA
QCAtNTEsNyArNTIsNyBAQCBwdWJsaWM6CiAKIGNsYXNzIFByb2Nlc3NBc3NlcnRpb24gewogcHVi
bGljOgotICAgIFByb2Nlc3NBc3NlcnRpb24ocGlkX3QsIEFzc2VydGlvblN0YXRlLCBGdW5jdGlv
bjx2b2lkKCk+JiYgaW52YWxpZGF0aW9uQ2FsbGJhY2sgPSB7IH0pOworICAgIFByb2Nlc3NBc3Nl
cnRpb24oUHJvY2Vzc0lELCBBc3NlcnRpb25TdGF0ZSwgRnVuY3Rpb248dm9pZCgpPiYmIGludmFs
aWRhdGlvbkNhbGxiYWNrID0geyB9KTsKICAgICB2aXJ0dWFsIH5Qcm9jZXNzQXNzZXJ0aW9uKCk7
CiAKICAgICB2aXJ0dWFsIHZvaWQgc2V0Q2xpZW50KFByb2Nlc3NBc3NlcnRpb25DbGllbnQmIGNs
aWVudCkgeyBtX2NsaWVudCA9ICZjbGllbnQ7IH0KQEAgLTgyLDcgKzgzLDcgQEAgcHJpdmF0ZToK
ICAgICAKIGNsYXNzIFByb2Nlc3NBbmRVSUFzc2VydGlvbiBmaW5hbCA6IHB1YmxpYyBQcm9jZXNz
QXNzZXJ0aW9uIHsKIHB1YmxpYzoKLSAgICBQcm9jZXNzQW5kVUlBc3NlcnRpb24ocGlkX3QsIEFz
c2VydGlvblN0YXRlKTsKKyAgICBQcm9jZXNzQW5kVUlBc3NlcnRpb24oUHJvY2Vzc0lELCBBc3Nl
cnRpb25TdGF0ZSk7CiAgICAgflByb2Nlc3NBbmRVSUFzc2VydGlvbigpOwogCiAgICAgdm9pZCBz
ZXRDbGllbnQoUHJvY2Vzc0Fzc2VydGlvbkNsaWVudCYpIGZpbmFsOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc1Rocm90dGxlci5jcHAgYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9Qcm9jZXNzVGhyb3R0bGVyLmNwcAppbmRleCBlZWQzZTYwMWFmZS4uODZhOGZh
ZWRhMzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NUaHJvdHRs
ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NUaHJvdHRsZXIuY3Bw
CkBAIC05MSw3ICs5MSw3IEBAIHZvaWQgUHJvY2Vzc1Rocm90dGxlcjo6dXBkYXRlQXNzZXJ0aW9u
KCkKICAgICB1cGRhdGVBc3NlcnRpb25Ob3coKTsKIH0KIAotdm9pZCBQcm9jZXNzVGhyb3R0bGVy
OjpkaWRDb25uZWN0VG9Qcm9jZXNzKHBpZF90IHBpZCkKK3ZvaWQgUHJvY2Vzc1Rocm90dGxlcjo6
ZGlkQ29ubmVjdFRvUHJvY2VzcyhQcm9jZXNzSUQgcGlkKQogewogICAgIFJFTEVBU0VfTE9HKFBy
b2Nlc3NTdXNwZW5zaW9uLCAiJXAgLSBQcm9jZXNzVGhyb3R0bGVyOjpkaWRDb25uZWN0VG9Qcm9j
ZXNzKCVkKSIsIHRoaXMsIHBpZCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1Byb2Nlc3NUaHJvdHRsZXIuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NU
aHJvdHRsZXIuaAppbmRleCBjYjFhNGYyNmVjMy4uN2Q5MGRiNjY0M2YgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NUaHJvdHRsZXIuaAorKysgYi9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9Qcm9jZXNzVGhyb3R0bGVyLmgKQEAgLTI4LDYgKzI4LDcgQEAKIAogI2lu
Y2x1ZGUgIlByb2Nlc3NBc3NlcnRpb24uaCIKIAorI2luY2x1ZGUgPHd0Zi9Qcm9jZXNzSUQuaD4K
ICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlci5oPgogI2luY2x1ZGUgPHd0Zi9SdW5Mb29wLmg+CiAj
aW5jbHVkZSA8d3RmL1dlYWtQdHIuaD4KQEAgLTU2LDcgKzU3LDcgQEAgcHVibGljOgogICAgIGlu
bGluZSBGb3JlZ3JvdW5kQWN0aXZpdHlUb2tlbiBmb3JlZ3JvdW5kQWN0aXZpdHlUb2tlbigpIGNv
bnN0OwogICAgIGlubGluZSBCYWNrZ3JvdW5kQWN0aXZpdHlUb2tlbiBiYWNrZ3JvdW5kQWN0aXZp
dHlUb2tlbigpIGNvbnN0OwogICAgIAotICAgIHZvaWQgZGlkQ29ubmVjdFRvUHJvY2VzcyhwaWRf
dCk7CisgICAgdm9pZCBkaWRDb25uZWN0VG9Qcm9jZXNzKFByb2Nlc3NJRCk7CiAgICAgdm9pZCBw
cm9jZXNzUmVhZHlUb1N1c3BlbmQoKTsKICAgICB2b2lkIGRpZENhbmNlbFByb2Nlc3NTdXNwZW5z
aW9uKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94
eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCmluZGV4IDlj
YzVlZmE2MzcyLi43MmYwNDZkMDhiNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvV2ViUGFnZVByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdl
UHJveHkuY3BwCkBAIC00NDEsNyArNDQxLDcgQEAgY29uc3QgQVBJOjpQYWdlQ29uZmlndXJhdGlv
biYgV2ViUGFnZVByb3h5Ojpjb25maWd1cmF0aW9uKCkgY29uc3QKICAgICByZXR1cm4gbV9jb25m
aWd1cmF0aW9uLmdldCgpOwogfQogCi1waWRfdCBXZWJQYWdlUHJveHk6OnByb2Nlc3NJZGVudGlm
aWVyKCkgY29uc3QKK1Byb2Nlc3NJRCBXZWJQYWdlUHJveHk6OnByb2Nlc3NJZGVudGlmaWVyKCkg
Y29uc3QKIHsKICAgICBpZiAobV9pc0Nsb3NlZCkKICAgICAgICAgcmV0dXJuIDA7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaCBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCmluZGV4IGU0MzM3YmNmZWQxLi5kOGU4MzI1ZDk4
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKKysr
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKQEAgLTg0LDYgKzg0LDcg
QEAKICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+CiAj
aW5jbHVkZSA8d3RmL01vbm90b25pY1RpbWUuaD4KKyNpbmNsdWRlIDx3dGYvUHJvY2Vzc0lELmg+
CiAjaW5jbHVkZSA8d3RmL1JlZi5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KICNpbmNsdWRl
IDx3dGYvVmVjdG9yLmg+CkBAIC04NzUsNyArODc2LDcgQEAgcHVibGljOgogI2VuZGlmCiAKICAg
ICBXZWJQcm9jZXNzUHJveHkmIHByb2Nlc3MoKSB7IHJldHVybiBtX3Byb2Nlc3M7IH0KLSAgICBw
aWRfdCBwcm9jZXNzSWRlbnRpZmllcigpIGNvbnN0OworICAgIFByb2Nlc3NJRCBwcm9jZXNzSWRl
bnRpZmllcigpIGNvbnN0OwogCiAgICAgV2ViUHJlZmVyZW5jZXMmIHByZWZlcmVuY2VzKCkgeyBy
ZXR1cm4gbV9wcmVmZXJlbmNlczsgfQogICAgIHZvaWQgc2V0UHJlZmVyZW5jZXMoV2ViUHJlZmVy
ZW5jZXMmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQ
b29sLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcAppbmRl
eCA5OGY2OGE3ZDQ3OS4uN2YzNGFmOGM0MzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9X
ZWJQcm9jZXNzUG9vbC5jcHAKQEAgLTEwODMsNyArMTA4Myw3IEBAIHZvaWQgV2ViUHJvY2Vzc1Bv
b2w6OnJlZnJlc2hQbHVnaW5zKCkKIAogI2VuZGlmIC8vIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5f
QVBJKQogCi1waWRfdCBXZWJQcm9jZXNzUG9vbDo6bmV0d29ya1Byb2Nlc3NJZGVudGlmaWVyKCkK
K1Byb2Nlc3NJRCBXZWJQcm9jZXNzUG9vbDo6bmV0d29ya1Byb2Nlc3NJZGVudGlmaWVyKCkKIHsK
ICAgICBpZiAoIW1fbmV0d29ya1Byb2Nlc3MpCiAgICAgICAgIHJldHVybiAwOwpAQCAtMTA5MSw3
ICsxMDkxLDcgQEAgcGlkX3QgV2ViUHJvY2Vzc1Bvb2w6Om5ldHdvcmtQcm9jZXNzSWRlbnRpZmll
cigpCiAgICAgcmV0dXJuIG1fbmV0d29ya1Byb2Nlc3MtPnByb2Nlc3NJZGVudGlmaWVyKCk7CiB9
CiAKLXBpZF90IFdlYlByb2Nlc3NQb29sOjpzdG9yYWdlUHJvY2Vzc0lkZW50aWZpZXIoKQorUHJv
Y2Vzc0lEIFdlYlByb2Nlc3NQb29sOjpzdG9yYWdlUHJvY2Vzc0lkZW50aWZpZXIoKQogewogICAg
IGlmICghbV9zdG9yYWdlUHJvY2VzcykKICAgICAgICAgcmV0dXJuIDA7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5oIGIvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuaAppbmRleCAyNGViYWExODNkOC4uZTE5ZjZkZjJhZjgg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmgKKysr
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuaApAQCAtNDksNiArNDks
NyBAQAogI2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4K
ICNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgorI2luY2x1ZGUgPHd0Zi9Qcm9jZXNzSUQuaD4KICNp
bmNsdWRlIDx3dGYvUmVmQ291bnRlci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KICNpbmNs
dWRlIDx3dGYvdGV4dC9TdHJpbmdIYXNoLmg+CkBAIC0xOTksOCArMjAwLDggQEAgcHVibGljOgog
ICAgIGNvbnN0IEhhc2hNYXA8U3RyaW5nLCBIYXNoTWFwPFN0cmluZywgSGFzaE1hcDxTdHJpbmcs
IHVpbnQ4X3Q+Pj4mIHBsdWdpbkxvYWRDbGllbnRQb2xpY2llcygpIGNvbnN0IHsgcmV0dXJuIG1f
cGx1Z2luTG9hZENsaWVudFBvbGljaWVzOyB9CiAjZW5kaWYKIAotICAgIHBpZF90IG5ldHdvcmtQ
cm9jZXNzSWRlbnRpZmllcigpOwotICAgIHBpZF90IHN0b3JhZ2VQcm9jZXNzSWRlbnRpZmllcigp
OworICAgIFByb2Nlc3NJRCBuZXR3b3JrUHJvY2Vzc0lkZW50aWZpZXIoKTsKKyAgICBQcm9jZXNz
SUQgc3RvcmFnZVByb2Nlc3NJZGVudGlmaWVyKCk7CiAKICAgICB2b2lkIHNldEFsd2F5c1VzZXND
b21wbGV4VGV4dENvZGVQYXRoKGJvb2wpOwogICAgIHZvaWQgc2V0U2hvdWxkVXNlRm9udFNtb290
aGluZyhib29sKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>320956</attachid>
            <date>2017-09-15 13:17:12 -0700</date>
            <delta_ts>2017-09-15 15:23:45 -0700</delta_ts>
            <desc>Test patch for ews on adding process identifier alias.</desc>
            <filename>pid_t-test.4.diff</filename>
            <type>text/plain</type>
            <size>18589</size>
            <attacher name="Stephan Szabo">stephan.szabo</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNSZW1vdGVJbnNwZWN0b3Iu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1JlbW90ZUluc3BlY3Rvci5jcHAKaW5k
ZXggM2JlNjFkMDkyNzIuLjk2NzJlZjAyMTQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQVBJL0pTUmVtb3RlSW5zcGVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQVBJL0pTUmVtb3RlSW5zcGVjdG9yLmNwcApAQCAtMjcsNiArMjcsNyBAQAogI2luY2x1ZGUg
IkpTUmVtb3RlSW5zcGVjdG9yLmgiCiAKICNpbmNsdWRlICJKU0dsb2JhbE9iamVjdENvbnNvbGVD
bGllbnQuaCIKKyNpbmNsdWRlIDx3dGYvUHJvY2Vzc0lELmg+CiAKICNpZiBFTkFCTEUoUkVNT1RF
X0lOU1BFQ1RPUikKICNpbmNsdWRlICJSZW1vdGVJbnNwZWN0b3IuaCIKQEAgLTUwLDcgKzUxLDcg
QEAgdm9pZCBKU1JlbW90ZUluc3BlY3RvclN0YXJ0KHZvaWQpCiAjZW5kaWYKIH0KIAotdm9pZCBK
U1JlbW90ZUluc3BlY3RvclNldFBhcmVudFByb2Nlc3NJbmZvcm1hdGlvbihwaWRfdCBwaWQsIGNv
bnN0IHVpbnQ4X3QqIGF1ZGl0RGF0YSwgc2l6ZV90IGF1ZGl0TGVuZ3RoKQordm9pZCBKU1JlbW90
ZUluc3BlY3RvclNldFBhcmVudFByb2Nlc3NJbmZvcm1hdGlvbihQcm9jZXNzSUQgcGlkLCBjb25z
dCB1aW50OF90KiBhdWRpdERhdGEsIHNpemVfdCBhdWRpdExlbmd0aCkKIHsKICNpZiBFTkFCTEUo
UkVNT1RFX0lOU1BFQ1RPUikgJiYgUExBVEZPUk0oQ09DT0EpCiAgICAgUmV0YWluUHRyPENGRGF0
YVJlZj4gYXVkaXREYXRhUmVmID0gYWRvcHRDRihDRkRhdGFDcmVhdGUoa0NGQWxsb2NhdG9yRGVm
YXVsdCwgYXVkaXREYXRhLCBhdWRpdExlbmd0aCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL0FQSS9KU1JlbW90ZUluc3BlY3Rvci5oIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L0FQSS9KU1JlbW90ZUluc3BlY3Rvci5oCmluZGV4IDRmODY1MTAyOTk4Li5jODYyODRlZDYzZCAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1JlbW90ZUluc3BlY3Rvci5o
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNSZW1vdGVJbnNwZWN0b3IuaApAQCAt
MjgsNiArMjgsNyBAQAogCiAjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSlNCYXNlLmg+CiAjaW5j
bHVkZSA8SmF2YVNjcmlwdENvcmUvV2ViS2l0QXZhaWxhYmlsaXR5Lmg+CisjaW5jbHVkZSA8d3Rm
L1Byb2Nlc3NJRC5oPgogCiAjaW5jbHVkZSA8dW5pc3RkLmg+CiAKQEAgLTM3LDcgKzM4LDcgQEAg
ZXh0ZXJuICJDIiB7CiAKIEpTX0VYUE9SVCB2b2lkIEpTUmVtb3RlSW5zcGVjdG9yRGlzYWJsZUF1
dG9TdGFydCh2b2lkKSBDRl9BVkFJTEFCTEUoMTBfMTEsIDlfMCk7CiBKU19FWFBPUlQgdm9pZCBK
U1JlbW90ZUluc3BlY3RvclN0YXJ0KHZvaWQpIENGX0FWQUlMQUJMRSgxMF8xMSwgOV8wKTsKLUpT
X0VYUE9SVCB2b2lkIEpTUmVtb3RlSW5zcGVjdG9yU2V0UGFyZW50UHJvY2Vzc0luZm9ybWF0aW9u
KHBpZF90LCBjb25zdCB1aW50OF90KiBhdWRpdERhdGEsIHNpemVfdCBhdWRpdExlbmd0aCkgQ0Zf
QVZBSUxBQkxFKDEwXzExLCA5XzApOworSlNfRVhQT1JUIHZvaWQgSlNSZW1vdGVJbnNwZWN0b3JT
ZXRQYXJlbnRQcm9jZXNzSW5mb3JtYXRpb24oUHJvY2Vzc0lELCBjb25zdCB1aW50OF90KiBhdWRp
dERhdGEsIHNpemVfdCBhdWRpdExlbmd0aCkgQ0ZfQVZBSUxBQkxFKDEwXzExLCA5XzApOwogCiBK
U19FWFBPUlQgdm9pZCBKU1JlbW90ZUluc3BlY3RvclNldExvZ1RvU3lzdGVtQ29uc29sZShib29s
KSBDRl9BVkFJTEFCTEUoMTBfMTEsIDlfMCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9pbnNwZWN0b3IvcmVtb3RlL1JlbW90ZUluc3BlY3Rvci5oIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2luc3BlY3Rvci9yZW1vdGUvUmVtb3RlSW5zcGVjdG9yLmgKaW5kZXggZDAwZGUy
YjcwM2QuLjZhZTdjMDk1YjM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5z
cGVjdG9yL3JlbW90ZS9SZW1vdGVJbnNwZWN0b3IuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvaW5zcGVjdG9yL3JlbW90ZS9SZW1vdGVJbnNwZWN0b3IuaApAQCAtMzAsNiArMzAsNyBAQAog
I2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KICNpbmNs
dWRlIDx3dGYvTG9jay5oPgorI2luY2x1ZGUgPHd0Zi9Qcm9jZXNzSUQuaD4KICNpbmNsdWRlIDx3
dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogI2lmIFBMQVRGT1JNKENPQ09BKQpAQCAtMTA4LDkgKzEw
OSw5IEBAIHB1YmxpYzoKIAogI2lmIFBMQVRGT1JNKENPQ09BKQogICAgIGJvb2wgaGFzUGFyZW50
UHJvY2Vzc0luZm9ybWF0aW9uKCkgY29uc3QgeyByZXR1cm4gbV9wYXJlbnRQcm9jZXNzSWRlbnRp
ZmllciAhPSAwOyB9Ci0gICAgcGlkX3QgcGFyZW50UHJvY2Vzc0lkZW50aWZpZXIoKSBjb25zdCB7
IHJldHVybiBtX3BhcmVudFByb2Nlc3NJZGVudGlmaWVyOyB9CisgICAgUHJvY2Vzc0lEIHBhcmVu
dFByb2Nlc3NJZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9wYXJlbnRQcm9jZXNzSWRlbnRp
ZmllcjsgfQogICAgIFJldGFpblB0cjxDRkRhdGFSZWY+IHBhcmVudFByb2Nlc3NBdWRpdERhdGEo
KSBjb25zdCB7IHJldHVybiBtX3BhcmVudFByb2Nlc3NBdWRpdERhdGE7IH0KLSAgICB2b2lkIHNl
dFBhcmVudFByb2Nlc3NJbmZvcm1hdGlvbihwaWRfdCwgUmV0YWluUHRyPENGRGF0YVJlZj4gYXVk
aXREYXRhKTsKKyAgICB2b2lkIHNldFBhcmVudFByb2Nlc3NJbmZvcm1hdGlvbihQcm9jZXNzSUQs
IFJldGFpblB0cjxDRkRhdGFSZWY+IGF1ZGl0RGF0YSk7CiAgICAgdm9pZCBzZXRQYXJlbnRQcm9j
ZXNzSW5mb21hdGlvbklzRGVsYXllZCgpOwogI2VuZGlmCiAKQEAgLTIwNyw3ICsyMDgsNyBAQCBw
cml2YXRlOgogICAgIGJvb2wgbV9oYXNBY3RpdmVEZWJ1Z1Nlc3Npb24geyBmYWxzZSB9OwogICAg
IGJvb2wgbV9wdXNoU2NoZWR1bGVkIHsgZmFsc2UgfTsKIAotICAgIHBpZF90IG1fcGFyZW50UHJv
Y2Vzc0lkZW50aWZpZXIgeyAwIH07CisgICAgUHJvY2Vzc0lEIG1fcGFyZW50UHJvY2Vzc0lkZW50
aWZpZXIgeyAwIH07CiAjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgUmV0YWluUHRyPENGRGF0YVJl
Zj4gbV9wYXJlbnRQcm9jZXNzQXVkaXREYXRhOwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V1RGL3d0Zi9Qcm9jZXNzSUQuaCBiL1NvdXJjZS9XVEYvd3RmL1Byb2Nlc3NJRC5oCmluZGV4IGY4
NDcxNmU4ZDkzLi5jY2RjMmUwMDIwOSAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvUHJvY2Vz
c0lELmgKKysrIGIvU291cmNlL1dURi93dGYvUHJvY2Vzc0lELmgKQEAgLTM2LDcgKzM2LDEzIEBA
CiAKIG5hbWVzcGFjZSBXVEYgewogCi1pbmxpbmUgaW50IGdldEN1cnJlbnRQcm9jZXNzSUQoKQor
I2lmIE9TKFdJTkRPV1MpCit1c2luZyBQcm9jZXNzSUQgPSBpbnQ7CisjZWxzZQordXNpbmcgUHJv
Y2Vzc0lEID0gcGlkX3Q7CisjZW5kaWYKKworaW5saW5lIFByb2Nlc3NJRCBnZXRDdXJyZW50UHJv
Y2Vzc0lEKCkKIHsKICNpZiBPUyhXSU5ET1dTKQogICAgIHJldHVybiBHZXRDdXJyZW50UHJvY2Vz
c0lkKCk7CkBAIC00OCw2ICs1NCw3IEBAIGlubGluZSBpbnQgZ2V0Q3VycmVudFByb2Nlc3NJRCgp
CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpnZXRDdXJyZW50UHJvY2Vzc0lEOwor
dXNpbmcgV1RGOjpQcm9jZXNzSUQ7CiAKICNlbmRpZiAvLyBQcm9jZXNzSURfaAogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzQ3JlYXRpb25Q
YXJhbWV0ZXJzLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNz
Q3JlYXRpb25QYXJhbWV0ZXJzLmgKaW5kZXggMWViNzk3OTk2MTguLmQwYTMyZGJiMmYyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzQ3JlYXRp
b25QYXJhbWV0ZXJzLmgKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3Jr
UHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oCkBAIC0yOCw2ICsyOCw3IEBACiAjaW5jbHVkZSAi
QXR0YWNobWVudC5oIgogI2luY2x1ZGUgIkNhY2hlTW9kZWwuaCIKICNpbmNsdWRlICJTYW5kYm94
RXh0ZW5zaW9uLmgiCisjaW5jbHVkZSA8d3RmL1Byb2Nlc3NJRC5oPgogI2luY2x1ZGUgPHd0Zi9W
ZWN0b3IuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIApAQCAtNzgsNyArNzks
NyBAQCBzdHJ1Y3QgTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMgewogICAgIFNlY29u
ZHMgbG9hZFRocm90dGxlTGF0ZW5jeTsKIAogICAgIFZlY3RvcjxTdHJpbmc+IHVybFNjaGVtZXNS
ZWdpc3RlcmVkRm9yQ3VzdG9tUHJvdG9jb2xzOwotICAgIHBpZF90IHByZXNlbnRpbmdBcHBsaWNh
dGlvblBJRCB7IDAgfTsKKyAgICBQcm9jZXNzSUQgcHJlc2VudGluZ0FwcGxpY2F0aW9uUElEIHsg
MCB9OwogCiAjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgU3RyaW5nIHBhcmVudFByb2Nlc3NOYW1l
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFy
YW1ldGVycy5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1l
dGVycy5oCmluZGV4IDU2MTg1YWJlNzZiLi4wZTIzYzRiNmQ4OCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oCisrKyBiL1NvdXJj
ZS9XZWJLaXQvU2hhcmVkL1dlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaApAQCAtMzAsNiAr
MzAsNyBAQAogI2luY2x1ZGUgIlRleHRDaGVja2VyU3RhdGUuaCIKICNpbmNsdWRlICJVc2VyRGF0
YS5oIgogI2luY2x1ZGUgPHBhbC9TZXNzaW9uSUQuaD4KKyNpbmNsdWRlIDx3dGYvUHJvY2Vzc0lE
Lmg+CiAjaW5jbHVkZSA8d3RmL1JldGFpblB0ci5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4K
ICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdIYXNoLmg+CkBAIC0xMzYsNyArMTM3LDcgQEAgc3Ry
dWN0IFdlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMgewogICAgIFN0cmluZyB1aVByb2Nlc3NC
dW5kbGVJZGVudGlmaWVyOwogI2VuZGlmCiAKLSAgICBwaWRfdCBwcmVzZW50aW5nQXBwbGljYXRp
b25QSUQgeyAwIH07CisgICAgUHJvY2Vzc0lEIHByZXNlbnRpbmdBcHBsaWNhdGlvblBJRCB7IDAg
fTsKIAogI2lmIFBMQVRGT1JNKENPQ09BKQogICAgIFdlYkNvcmU6Ok1hY2hTZW5kUmlnaHQgYWNj
ZWxlcmF0ZWRDb21wb3NpdGluZ1BvcnQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9BUEkvQVBJUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmggYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9BUEkvQVBJUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmgKaW5kZXggOTU0NDg0Nzkz
YjQuLmEwNmFhYTJkOWU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkv
QVBJUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvQVBJL0FQSVByb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5oCkBAIC0xMzksOCArMTM5LDggQEAg
cHVibGljOgogICAgIHZvaWQgc2V0Q1REYXRhQ29ubmVjdGlvblNlcnZpY2VUeXBlKGNvbnN0IFdU
Rjo6U3RyaW5nJiBjdERhdGFDb25uZWN0aW9uU2VydmljZVR5cGUpIHsgbV9jdERhdGFDb25uZWN0
aW9uU2VydmljZVR5cGUgPSBjdERhdGFDb25uZWN0aW9uU2VydmljZVR5cGU7IH0KICNlbmRpZgog
Ci0gICAgcGlkX3QgcHJlc2VudGluZ0FwcGxpY2F0aW9uUElEKCkgY29uc3QgeyByZXR1cm4gbV9w
cmVzZW50aW5nQXBwbGljYXRpb25QSUQ7IH0KLSAgICB2b2lkIHNldFByZXNlbnRpbmdBcHBsaWNh
dGlvblBJRChwaWRfdCBwaWQpIHsgbV9wcmVzZW50aW5nQXBwbGljYXRpb25QSUQgPSBwaWQ7IH0K
KyAgICBQcm9jZXNzSUQgcHJlc2VudGluZ0FwcGxpY2F0aW9uUElEKCkgY29uc3QgeyByZXR1cm4g
bV9wcmVzZW50aW5nQXBwbGljYXRpb25QSUQ7IH0KKyAgICB2b2lkIHNldFByZXNlbnRpbmdBcHBs
aWNhdGlvblBJRChQcm9jZXNzSUQgcGlkKSB7IG1fcHJlc2VudGluZ0FwcGxpY2F0aW9uUElEID0g
cGlkOyB9CiAKIHByaXZhdGU6CiAgICAgYm9vbCBtX3Nob3VsZEhhdmVMZWdhY3lEYXRhU3RvcmUg
eyBmYWxzZSB9OwpAQCAtMTc0LDcgKzE3NCw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBtX2Fsd2F5
c1J1bnNBdEJhY2tncm91bmRQcmlvcml0eSB7IGZhbHNlIH07CiAgICAgYm9vbCBtX3Nob3VsZFRh
a2VVSUJhY2tncm91bmRBc3NlcnRpb24geyB0cnVlIH07CiAgICAgYm9vbCBtX3Nob3VsZENhcHR1
cmVBdWRpb0luVUlQcm9jZXNzIHsgZmFsc2UgfTsKLSAgICBwaWRfdCBtX3ByZXNlbnRpbmdBcHBs
aWNhdGlvblBJRCB7IGdldEN1cnJlbnRQcm9jZXNzSUQoKSB9OworICAgIFByb2Nlc3NJRCBtX3By
ZXNlbnRpbmdBcHBsaWNhdGlvblBJRCB7IGdldEN1cnJlbnRQcm9jZXNzSUQoKSB9OwogI2lmIFBM
QVRGT1JNKElPUykKICAgICBXVEY6OlN0cmluZyBtX2N0RGF0YUNvbm5lY3Rpb25TZXJ2aWNlVHlw
ZTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tD
b250ZXh0LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dC5jcHAK
aW5kZXggMDVhNGVmOTRjYTkuLjc4MzM4ZWQ2NTc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL0FQSS9DL1dLQ29udGV4dC5jcHAKQEAgLTU5OSwxMiArNTk5LDEyIEBAIHZvaWQgV0tDb250
ZXh0VGVybWluYXRlTmV0d29ya1Byb2Nlc3MoV0tDb250ZXh0UmVmIGNvbnRleHQpCiAgICAgdG9J
bXBsKGNvbnRleHQpLT50ZXJtaW5hdGVOZXR3b3JrUHJvY2VzcygpOwogfQogCi1waWRfdCBXS0Nv
bnRleHRHZXROZXR3b3JrUHJvY2Vzc0lkZW50aWZpZXIoV0tDb250ZXh0UmVmIGNvbnRleHRSZWYp
CitQcm9jZXNzSUQgV0tDb250ZXh0R2V0TmV0d29ya1Byb2Nlc3NJZGVudGlmaWVyKFdLQ29udGV4
dFJlZiBjb250ZXh0UmVmKQogewogICAgIHJldHVybiB0b0ltcGwoY29udGV4dFJlZiktPm5ldHdv
cmtQcm9jZXNzSWRlbnRpZmllcigpOwogfQogCi1waWRfdCBXS0NvbnRleHRHZXREYXRhYmFzZVBy
b2Nlc3NJZGVudGlmaWVyKFdLQ29udGV4dFJlZiBjb250ZXh0UmVmKQorUHJvY2Vzc0lEIFdLQ29u
dGV4dEdldERhdGFiYXNlUHJvY2Vzc0lkZW50aWZpZXIoV0tDb250ZXh0UmVmIGNvbnRleHRSZWYp
CiB7CiAgICAgcmV0dXJuIHRvSW1wbChjb250ZXh0UmVmKS0+c3RvcmFnZVByb2Nlc3NJZGVudGlm
aWVyKCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS0Nv
bnRleHRQcml2YXRlLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHRQ
cml2YXRlLmgKaW5kZXggZmU4Nzg4ZDM0MmIuLmIwYzRhNDI0MDMwIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHRQcml2YXRlLmgKKysrIGIvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tDb250ZXh0UHJpdmF0ZS5oCkBAIC0yOCw2ICsyOCw3
IEBACiAKICNpbmNsdWRlIDxXZWJLaXQvV0tCYXNlLmg+CiAjaW5jbHVkZSA8V2ViS2l0L1dLQ29u
dGV4dC5oPgorI2luY2x1ZGUgPHd0Zi9Qcm9jZXNzSUQuaD4KIAogI2luY2x1ZGUgPHVuaXN0ZC5o
PgogCkBAIC0xMDAsOCArMTAxLDggQEAgV0tfRVhQT1JUIHZvaWQgV0tDb250ZXh0U2V0TWVtb3J5
Q2FjaGVEaXNhYmxlZChXS0NvbnRleHRSZWYsIGJvb2wgZGlzYWJsZWQpOwogCiBXS19FWFBPUlQg
dm9pZCBXS0NvbnRleHRTZXRGb250V2hpdGVsaXN0KFdLQ29udGV4dFJlZiwgV0tBcnJheVJlZik7
CiAKLVdLX0VYUE9SVCBwaWRfdCBXS0NvbnRleHRHZXROZXR3b3JrUHJvY2Vzc0lkZW50aWZpZXIo
V0tDb250ZXh0UmVmIGNvbnRleHQpOwotV0tfRVhQT1JUIHBpZF90IFdLQ29udGV4dEdldERhdGFi
YXNlUHJvY2Vzc0lkZW50aWZpZXIoV0tDb250ZXh0UmVmIGNvbnRleHQpOworV0tfRVhQT1JUIFBy
b2Nlc3NJRCBXS0NvbnRleHRHZXROZXR3b3JrUHJvY2Vzc0lkZW50aWZpZXIoV0tDb250ZXh0UmVm
IGNvbnRleHQpOworV0tfRVhQT1JUIFByb2Nlc3NJRCBXS0NvbnRleHRHZXREYXRhYmFzZVByb2Nl
c3NJZGVudGlmaWVyKFdLQ29udGV4dFJlZiBjb250ZXh0KTsKIAogI2lmZGVmIF9fY3BsdXNwbHVz
CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2UuY3Bw
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQYWdlLmNwcAppbmRleCAwNjdjMGVj
OTRjMC4uMDQxOGNlODA1ZmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQ
SS9DL1dLUGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQYWdl
LmNwcApAQCAtMjc0MSw3ICsyNzQxLDcgQEAgdm9pZCBXS1BhZ2VTZXRJZ25vcmVzVmlld3BvcnRT
Y2FsZUxpbWl0cyhXS1BhZ2VSZWYgcGFnZSwgYm9vbCBpZ25vcmVzVmlld3BvcnRTY2EKICNlbmRp
ZgogfQogCi1waWRfdCBXS1BhZ2VHZXRQcm9jZXNzSWRlbnRpZmllcihXS1BhZ2VSZWYgcGFnZSkK
K1Byb2Nlc3NJRCBXS1BhZ2VHZXRQcm9jZXNzSWRlbnRpZmllcihXS1BhZ2VSZWYgcGFnZSkKIHsK
ICAgICByZXR1cm4gdG9JbXBsKHBhZ2UpLT5wcm9jZXNzSWRlbnRpZmllcigpOwogfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQYWdlUHJpdmF0ZS5oIGIvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQYWdlUHJpdmF0ZS5oCmluZGV4IDg3MTc0Njg4
NzYxLi40NGFlZjY0MWM4ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJ
L0MvV0tQYWdlUHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dL
UGFnZVByaXZhdGUuaApAQCAtMjgsNiArMjgsNyBAQAogCiAjaW5jbHVkZSA8V2ViS2l0L1dLQmFz
ZS5oPgogI2luY2x1ZGUgPFdlYktpdC9XS1BhZ2UuaD4KKyNpbmNsdWRlIDx3dGYvUHJvY2Vzc0lE
Lmg+CiAKICNpbmNsdWRlIDx1bmlzdGQuaD4KIApAQCAtMTcxLDcgKzE3Miw3IEBAIFdLX0VYUE9S
VCB2b2lkIFdLUGFnZVJlc3RvcmVGcm9tU2Vzc2lvblN0YXRlV2l0aG91dE5hdmlnYXRpb24oV0tQ
YWdlUmVmIHBhZ2UsIFdLCiAKIFdLX0VYUE9SVCB2b2lkIFdLUGFnZVNldElnbm9yZXNWaWV3cG9y
dFNjYWxlTGltaXRzKFdLUGFnZVJlZiBwYWdlLCBib29sIGlnbm9yZXNWaWV3cG9ydFNjYWxlTGlt
aXRzKTsKIAotV0tfRVhQT1JUIHBpZF90IFdLUGFnZUdldFByb2Nlc3NJZGVudGlmaWVyKFdLUGFn
ZVJlZiBwYWdlKTsKK1dLX0VYUE9SVCBQcm9jZXNzSUQgV0tQYWdlR2V0UHJvY2Vzc0lkZW50aWZp
ZXIoV0tQYWdlUmVmIHBhZ2UpOwogCiAjaWZkZWYgX19jcGx1c3BsdXMKIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NoaWxkUHJvY2Vzc1Byb3h5LmggYi9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9DaGlsZFByb2Nlc3NQcm94eS5oCmluZGV4IGM2M2I5YmUxNDNjLi43YjMx
YzhlM2M0YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ2hpbGRQcm9jZXNz
UHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9DaGlsZFByb2Nlc3NQcm94eS5o
CkBAIC0yOSw2ICsyOSw3IEBACiAjaW5jbHVkZSAiTWVzc2FnZVJlY2VpdmVyTWFwLmgiCiAjaW5j
bHVkZSAiUHJvY2Vzc0xhdW5jaGVyLmgiCiAKKyNpbmNsdWRlIDx3dGYvUHJvY2Vzc0lELmg+CiAj
aW5jbHVkZSA8d3RmL1N5c3RlbVRyYWNpbmcuaD4KICNpbmNsdWRlIDx3dGYvVGhyZWFkU2FmZVJl
ZkNvdW50ZWQuaD4KIApAQCAtNzIsNyArNzMsNyBAQCBwdWJsaWM6CiAgICAgfTsKICAgICBTdGF0
ZSBzdGF0ZSgpIGNvbnN0OwogCi0gICAgcGlkX3QgcHJvY2Vzc0lkZW50aWZpZXIoKSBjb25zdCB7
IHJldHVybiBtX3Byb2Nlc3NMYXVuY2hlciA/IG1fcHJvY2Vzc0xhdW5jaGVyLT5wcm9jZXNzSWRl
bnRpZmllcigpIDogMDsgfQorICAgIFByb2Nlc3NJRCBwcm9jZXNzSWRlbnRpZmllcigpIGNvbnN0
IHsgcmV0dXJuIG1fcHJvY2Vzc0xhdW5jaGVyID8gbV9wcm9jZXNzTGF1bmNoZXItPnByb2Nlc3NJ
ZGVudGlmaWVyKCkgOiAwOyB9CiAKICAgICBib29sIGNhblNlbmRNZXNzYWdlKCkgY29uc3QgeyBy
ZXR1cm4gc3RhdGUoKSAhPSBTdGF0ZTo6VGVybWluYXRlZDt9CiAgICAgYm9vbCBzZW5kTWVzc2Fn
ZShzdGQ6OnVuaXF1ZV9wdHI8SVBDOjpFbmNvZGVyPiwgT3B0aW9uU2V0PElQQzo6U2VuZE9wdGlv
bj4pOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvTGF1bmNoZXIvUHJvY2Vz
c0xhdW5jaGVyLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0xhdW5jaGVyL1Byb2Nlc3NM
YXVuY2hlci5jcHAKaW5kZXggMDg5YzE3YzMzM2YuLmYyZjcyYWNjM2YyIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9MYXVuY2hlci9Qcm9jZXNzTGF1bmNoZXIuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0xhdW5jaGVyL1Byb2Nlc3NMYXVuY2hlci5jcHAKQEAg
LTQxLDcgKzQxLDcgQEAgUHJvY2Vzc0xhdW5jaGVyOjpQcm9jZXNzTGF1bmNoZXIoQ2xpZW50KiBj
bGllbnQsIGNvbnN0IExhdW5jaE9wdGlvbnMmIGxhdW5jaE9wdGkKICAgICBsYXVuY2hQcm9jZXNz
KCk7CiB9CiAKLXZvaWQgUHJvY2Vzc0xhdW5jaGVyOjpkaWRGaW5pc2hMYXVuY2hpbmdQcm9jZXNz
KHBpZF90IHByb2Nlc3NJZGVudGlmaWVyLCBJUEM6OkNvbm5lY3Rpb246OklkZW50aWZpZXIgaWRl
bnRpZmllcikKK3ZvaWQgUHJvY2Vzc0xhdW5jaGVyOjpkaWRGaW5pc2hMYXVuY2hpbmdQcm9jZXNz
KFByb2Nlc3NJRCBwcm9jZXNzSWRlbnRpZmllciwgSVBDOjpDb25uZWN0aW9uOjpJZGVudGlmaWVy
IGlkZW50aWZpZXIpCiB7CiAgICAgbV9wcm9jZXNzSWRlbnRpZmllciA9IHByb2Nlc3NJZGVudGlm
aWVyOwogICAgIG1faXNMYXVuY2hpbmcgPSBmYWxzZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0xhdW5jaGVyL1Byb2Nlc3NMYXVuY2hlci5oIGIvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvTGF1bmNoZXIvUHJvY2Vzc0xhdW5jaGVyLmgKaW5kZXggNjc5OGZjOWY5ZDAuLjAy
MmFiNmE3NzQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9MYXVuY2hlci9Q
cm9jZXNzTGF1bmNoZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9MYXVuY2hlci9Q
cm9jZXNzTGF1bmNoZXIuaApAQCAtMjcsNiArMjcsNyBAQAogCiAjaW5jbHVkZSAiQ29ubmVjdGlv
bi5oIgogI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CisjaW5jbHVkZSA8d3RmL1Byb2Nlc3NJRC5o
PgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KICNpbmNsdWRlIDx3dGYvVGhyZWFkaW5nLmg+CiAj
aW5jbHVkZSA8d3RmL1dlYWtQdHIuaD4KQEAgLTY5LDcgKzcwLDcgQEAgcHVibGljOgogICAgIH0K
IAogICAgIGJvb2wgaXNMYXVuY2hpbmcoKSBjb25zdCB7IHJldHVybiBtX2lzTGF1bmNoaW5nOyB9
Ci0gICAgcGlkX3QgcHJvY2Vzc0lkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX3Byb2Nlc3NJ
ZGVudGlmaWVyOyB9CisgICAgUHJvY2Vzc0lEIHByb2Nlc3NJZGVudGlmaWVyKCkgY29uc3QgeyBy
ZXR1cm4gbV9wcm9jZXNzSWRlbnRpZmllcjsgfQogCiAgICAgdm9pZCB0ZXJtaW5hdGVQcm9jZXNz
KCk7CiAgICAgdm9pZCBpbnZhbGlkYXRlKCk7CkBAIC03OCw3ICs3OSw3IEBAIHByaXZhdGU6CiAg
ICAgUHJvY2Vzc0xhdW5jaGVyKENsaWVudCosIGNvbnN0IExhdW5jaE9wdGlvbnMmIGxhdW5jaE9w
dGlvbnMpOwogCiAgICAgdm9pZCBsYXVuY2hQcm9jZXNzKCk7Ci0gICAgdm9pZCBkaWRGaW5pc2hM
YXVuY2hpbmdQcm9jZXNzKHBpZF90LCBJUEM6OkNvbm5lY3Rpb246OklkZW50aWZpZXIpOworICAg
IHZvaWQgZGlkRmluaXNoTGF1bmNoaW5nUHJvY2VzcyhQcm9jZXNzSUQsIElQQzo6Q29ubmVjdGlv
bjo6SWRlbnRpZmllcik7CiAKICAgICB2b2lkIHBsYXRmb3JtSW52YWxpZGF0ZSgpOwogCkBAIC05
MSw3ICs5Miw3IEBAIHByaXZhdGU6CiAgICAgV2Vha1B0ckZhY3Rvcnk8UHJvY2Vzc0xhdW5jaGVy
PiBtX3dlYWtQdHJGYWN0b3J5OwogICAgIGNvbnN0IExhdW5jaE9wdGlvbnMgbV9sYXVuY2hPcHRp
b25zOwogICAgIGJvb2wgbV9pc0xhdW5jaGluZzsKLSAgICBwaWRfdCBtX3Byb2Nlc3NJZGVudGlm
aWVyOworICAgIFByb2Nlc3NJRCBtX3Byb2Nlc3NJZGVudGlmaWVyOwogfTsKIAogfSAvLyBuYW1l
c3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNz
QXNzZXJ0aW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NBc3NlcnRpb24u
Y3BwCmluZGV4IGE2NmUxMjI0ZjM0Li45MmUzZDhjMDc1MiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvUHJvY2Vzc0Fzc2VydGlvbi5jcHAKKysrIGIvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvUHJvY2Vzc0Fzc2VydGlvbi5jcHAKQEAgLTMwLDcgKzMwLDcgQEAKIAogbmFtZXNw
YWNlIFdlYktpdCB7CiAKLVByb2Nlc3NBc3NlcnRpb246OlByb2Nlc3NBc3NlcnRpb24ocGlkX3Qs
IEFzc2VydGlvblN0YXRlIGFzc2VydGlvblN0YXRlLCBGdW5jdGlvbjx2b2lkKCk+JiYpCitQcm9j
ZXNzQXNzZXJ0aW9uOjpQcm9jZXNzQXNzZXJ0aW9uKFByb2Nlc3NJRCwgQXNzZXJ0aW9uU3RhdGUg
YXNzZXJ0aW9uU3RhdGUsIEZ1bmN0aW9uPHZvaWQoKT4mJikKICAgICA6IG1fYXNzZXJ0aW9uU3Rh
dGUoYXNzZXJ0aW9uU3RhdGUpCiB7CiB9CkBAIC00Nyw3ICs0Nyw3IEBAIHZvaWQgUHJvY2Vzc0Fz
c2VydGlvbjo6c2V0U3RhdGUoQXNzZXJ0aW9uU3RhdGUgYXNzZXJ0aW9uU3RhdGUpCiAgICAgbV9h
c3NlcnRpb25TdGF0ZSA9IGFzc2VydGlvblN0YXRlOwogfQogCi1Qcm9jZXNzQW5kVUlBc3NlcnRp
b246OlByb2Nlc3NBbmRVSUFzc2VydGlvbihwaWRfdCBwaWQsIEFzc2VydGlvblN0YXRlIGFzc2Vy
dGlvblN0YXRlKQorUHJvY2Vzc0FuZFVJQXNzZXJ0aW9uOjpQcm9jZXNzQW5kVUlBc3NlcnRpb24o
UHJvY2Vzc0lEIHBpZCwgQXNzZXJ0aW9uU3RhdGUgYXNzZXJ0aW9uU3RhdGUpCiAgICAgOiBQcm9j
ZXNzQXNzZXJ0aW9uKHBpZCwgYXNzZXJ0aW9uU3RhdGUpCiB7CiB9CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmggYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmgKaW5kZXggZTVlM2EzYjYxNDkuLjIwMzIwMDA2NTU3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmgK
KysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc0Fzc2VydGlvbi5oCkBAIC0yOCw2
ICsyOCw3IEBACiAKICNpbmNsdWRlIDx1bmlzdGQuaD4KICNpbmNsdWRlIDx3dGYvRnVuY3Rpb24u
aD4KKyNpbmNsdWRlIDx3dGYvUHJvY2Vzc0lELmg+CiAKICNpZiBQTEFURk9STShJT1MpICYmICFQ
TEFURk9STShJT1NfU0lNVUxBVE9SKQogI2luY2x1ZGUgPHd0Zi9SZXRhaW5QdHIuaD4KQEAgLTUx
LDcgKzUyLDcgQEAgcHVibGljOgogCiBjbGFzcyBQcm9jZXNzQXNzZXJ0aW9uIHsKIHB1YmxpYzoK
LSAgICBQcm9jZXNzQXNzZXJ0aW9uKHBpZF90LCBBc3NlcnRpb25TdGF0ZSwgRnVuY3Rpb248dm9p
ZCgpPiYmIGludmFsaWRhdGlvbkNhbGxiYWNrID0geyB9KTsKKyAgICBQcm9jZXNzQXNzZXJ0aW9u
KFByb2Nlc3NJRCwgQXNzZXJ0aW9uU3RhdGUsIEZ1bmN0aW9uPHZvaWQoKT4mJiBpbnZhbGlkYXRp
b25DYWxsYmFjayA9IHsgfSk7CiAgICAgdmlydHVhbCB+UHJvY2Vzc0Fzc2VydGlvbigpOwogCiAg
ICAgdmlydHVhbCB2b2lkIHNldENsaWVudChQcm9jZXNzQXNzZXJ0aW9uQ2xpZW50JiBjbGllbnQp
IHsgbV9jbGllbnQgPSAmY2xpZW50OyB9CkBAIC04Miw3ICs4Myw3IEBAIHByaXZhdGU6CiAgICAg
CiBjbGFzcyBQcm9jZXNzQW5kVUlBc3NlcnRpb24gZmluYWwgOiBwdWJsaWMgUHJvY2Vzc0Fzc2Vy
dGlvbiB7CiBwdWJsaWM6Ci0gICAgUHJvY2Vzc0FuZFVJQXNzZXJ0aW9uKHBpZF90LCBBc3NlcnRp
b25TdGF0ZSk7CisgICAgUHJvY2Vzc0FuZFVJQXNzZXJ0aW9uKFByb2Nlc3NJRCwgQXNzZXJ0aW9u
U3RhdGUpOwogICAgIH5Qcm9jZXNzQW5kVUlBc3NlcnRpb24oKTsKIAogICAgIHZvaWQgc2V0Q2xp
ZW50KFByb2Nlc3NBc3NlcnRpb25DbGllbnQmKSBmaW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NUaHJvdHRsZXIuY3BwIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvUHJvY2Vzc1Rocm90dGxlci5jcHAKaW5kZXggZWVkM2U2MDFhZmUuLjg2YThmYWVkYTM1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNzVGhyb3R0bGVyLmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNzVGhyb3R0bGVyLmNwcApAQCAt
OTEsNyArOTEsNyBAQCB2b2lkIFByb2Nlc3NUaHJvdHRsZXI6OnVwZGF0ZUFzc2VydGlvbigpCiAg
ICAgdXBkYXRlQXNzZXJ0aW9uTm93KCk7CiB9CiAKLXZvaWQgUHJvY2Vzc1Rocm90dGxlcjo6ZGlk
Q29ubmVjdFRvUHJvY2VzcyhwaWRfdCBwaWQpCit2b2lkIFByb2Nlc3NUaHJvdHRsZXI6OmRpZENv
bm5lY3RUb1Byb2Nlc3MoUHJvY2Vzc0lEIHBpZCkKIHsKICAgICBSRUxFQVNFX0xPRyhQcm9jZXNz
U3VzcGVuc2lvbiwgIiVwIC0gUHJvY2Vzc1Rocm90dGxlcjo6ZGlkQ29ubmVjdFRvUHJvY2Vzcygl
ZCkiLCB0aGlzLCBwaWQpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Q
cm9jZXNzVGhyb3R0bGVyLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNzVGhyb3R0
bGVyLmgKaW5kZXggY2IxYTRmMjZlYzMuLjdkOTBkYjY2NDNmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNzVGhyb3R0bGVyLmgKKysrIGIvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvUHJvY2Vzc1Rocm90dGxlci5oCkBAIC0yOCw2ICsyOCw3IEBACiAKICNpbmNsdWRl
ICJQcm9jZXNzQXNzZXJ0aW9uLmgiCiAKKyNpbmNsdWRlIDx3dGYvUHJvY2Vzc0lELmg+CiAjaW5j
bHVkZSA8d3RmL1JlZkNvdW50ZXIuaD4KICNpbmNsdWRlIDx3dGYvUnVuTG9vcC5oPgogI2luY2x1
ZGUgPHd0Zi9XZWFrUHRyLmg+CkBAIC01Niw3ICs1Nyw3IEBAIHB1YmxpYzoKICAgICBpbmxpbmUg
Rm9yZWdyb3VuZEFjdGl2aXR5VG9rZW4gZm9yZWdyb3VuZEFjdGl2aXR5VG9rZW4oKSBjb25zdDsK
ICAgICBpbmxpbmUgQmFja2dyb3VuZEFjdGl2aXR5VG9rZW4gYmFja2dyb3VuZEFjdGl2aXR5VG9r
ZW4oKSBjb25zdDsKICAgICAKLSAgICB2b2lkIGRpZENvbm5lY3RUb1Byb2Nlc3MocGlkX3QpOwor
ICAgIHZvaWQgZGlkQ29ubmVjdFRvUHJvY2VzcyhQcm9jZXNzSUQpOwogICAgIHZvaWQgcHJvY2Vz
c1JlYWR5VG9TdXNwZW5kKCk7CiAgICAgdm9pZCBkaWRDYW5jZWxQcm9jZXNzU3VzcGVuc2lvbigp
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3Bw
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAppbmRleCA5Y2M1ZWZh
NjM3Mi4uNzJmMDQ2ZDA4YjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dl
YlBhZ2VQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5
LmNwcApAQCAtNDQxLDcgKzQ0MSw3IEBAIGNvbnN0IEFQSTo6UGFnZUNvbmZpZ3VyYXRpb24mIFdl
YlBhZ2VQcm94eTo6Y29uZmlndXJhdGlvbigpIGNvbnN0CiAgICAgcmV0dXJuIG1fY29uZmlndXJh
dGlvbi5nZXQoKTsKIH0KIAotcGlkX3QgV2ViUGFnZVByb3h5Ojpwcm9jZXNzSWRlbnRpZmllcigp
IGNvbnN0CitQcm9jZXNzSUQgV2ViUGFnZVByb3h5Ojpwcm9jZXNzSWRlbnRpZmllcigpIGNvbnN0
CiB7CiAgICAgaWYgKG1faXNDbG9zZWQpCiAgICAgICAgIHJldHVybiAwOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmggYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9XZWJQYWdlUHJveHkuaAppbmRleCBlNDMzN2JjZmVkMS4uZDhlODMyNWQ5ODUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCkBAIC04NCw2ICs4NCw3IEBACiAj
aW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KICNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgogI2luY2x1
ZGUgPHd0Zi9Nb25vdG9uaWNUaW1lLmg+CisjaW5jbHVkZSA8d3RmL1Byb2Nlc3NJRC5oPgogI2lu
Y2x1ZGUgPHd0Zi9SZWYuaD4KICNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CiAjaW5jbHVkZSA8d3Rm
L1ZlY3Rvci5oPgpAQCAtODc1LDcgKzg3Niw3IEBAIHB1YmxpYzoKICNlbmRpZgogCiAgICAgV2Vi
UHJvY2Vzc1Byb3h5JiBwcm9jZXNzKCkgeyByZXR1cm4gbV9wcm9jZXNzOyB9Ci0gICAgcGlkX3Qg
cHJvY2Vzc0lkZW50aWZpZXIoKSBjb25zdDsKKyAgICBQcm9jZXNzSUQgcHJvY2Vzc0lkZW50aWZp
ZXIoKSBjb25zdDsKIAogICAgIFdlYlByZWZlcmVuY2VzJiBwcmVmZXJlbmNlcygpIHsgcmV0dXJu
IG1fcHJlZmVyZW5jZXM7IH0KICAgICB2b2lkIHNldFByZWZlcmVuY2VzKFdlYlByZWZlcmVuY2Vz
Jik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5j
cHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAKaW5kZXggOThm
NjhhN2Q0NzkuLjdmMzRhZjhjNDM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9XZWJQcm9jZXNzUG9vbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJv
Y2Vzc1Bvb2wuY3BwCkBAIC0xMDgzLDcgKzEwODMsNyBAQCB2b2lkIFdlYlByb2Nlc3NQb29sOjpy
ZWZyZXNoUGx1Z2lucygpCiAKICNlbmRpZiAvLyBFTkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkK
IAotcGlkX3QgV2ViUHJvY2Vzc1Bvb2w6Om5ldHdvcmtQcm9jZXNzSWRlbnRpZmllcigpCitQcm9j
ZXNzSUQgV2ViUHJvY2Vzc1Bvb2w6Om5ldHdvcmtQcm9jZXNzSWRlbnRpZmllcigpCiB7CiAgICAg
aWYgKCFtX25ldHdvcmtQcm9jZXNzKQogICAgICAgICByZXR1cm4gMDsKQEAgLTEwOTEsNyArMTA5
MSw3IEBAIHBpZF90IFdlYlByb2Nlc3NQb29sOjpuZXR3b3JrUHJvY2Vzc0lkZW50aWZpZXIoKQog
ICAgIHJldHVybiBtX25ldHdvcmtQcm9jZXNzLT5wcm9jZXNzSWRlbnRpZmllcigpOwogfQogCi1w
aWRfdCBXZWJQcm9jZXNzUG9vbDo6c3RvcmFnZVByb2Nlc3NJZGVudGlmaWVyKCkKK1Byb2Nlc3NJ
RCBXZWJQcm9jZXNzUG9vbDo6c3RvcmFnZVByb2Nlc3NJZGVudGlmaWVyKCkKIHsKICAgICBpZiAo
IW1fc3RvcmFnZVByb2Nlc3MpCiAgICAgICAgIHJldHVybiAwOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1dlYlByb2Nlc3NQb29sLmgKaW5kZXggMjRlYmFhMTgzZDguLmUxOWY2ZGYyYWY4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmgKQEAgLTQ5LDYgKzQ5LDcgQEAK
ICNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgogI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CiAjaW5j
bHVkZSA8d3RmL0hhc2hTZXQuaD4KKyNpbmNsdWRlIDx3dGYvUHJvY2Vzc0lELmg+CiAjaW5jbHVk
ZSA8d3RmL1JlZkNvdW50ZXIuaD4KICNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CiAjaW5jbHVkZSA8
d3RmL3RleHQvU3RyaW5nSGFzaC5oPgpAQCAtMTk5LDggKzIwMCw4IEBAIHB1YmxpYzoKICAgICBj
b25zdCBIYXNoTWFwPFN0cmluZywgSGFzaE1hcDxTdHJpbmcsIEhhc2hNYXA8U3RyaW5nLCB1aW50
OF90Pj4+JiBwbHVnaW5Mb2FkQ2xpZW50UG9saWNpZXMoKSBjb25zdCB7IHJldHVybiBtX3BsdWdp
bkxvYWRDbGllbnRQb2xpY2llczsgfQogI2VuZGlmCiAKLSAgICBwaWRfdCBuZXR3b3JrUHJvY2Vz
c0lkZW50aWZpZXIoKTsKLSAgICBwaWRfdCBzdG9yYWdlUHJvY2Vzc0lkZW50aWZpZXIoKTsKKyAg
ICBQcm9jZXNzSUQgbmV0d29ya1Byb2Nlc3NJZGVudGlmaWVyKCk7CisgICAgUHJvY2Vzc0lEIHN0
b3JhZ2VQcm9jZXNzSWRlbnRpZmllcigpOwogCiAgICAgdm9pZCBzZXRBbHdheXNVc2VzQ29tcGxl
eFRleHRDb2RlUGF0aChib29sKTsKICAgICB2b2lkIHNldFNob3VsZFVzZUZvbnRTbW9vdGhpbmco
Ym9vbCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>320965</attachid>
            <date>2017-09-15 14:28:01 -0700</date>
            <delta_ts>2017-09-15 14:40:59 -0700</delta_ts>
            <desc>Test patch for ews on adding process identifier alias, api private headers using pid_t with override</desc>
            <filename>pid_t-test.5.diff</filename>
            <type>text/plain</type>
            <size>17832</size>
            <attacher name="Stephan Szabo">stephan.szabo</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNSZW1vdGVJbnNwZWN0b3Iu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1JlbW90ZUluc3BlY3Rvci5jcHAKaW5k
ZXggM2JlNjFkMDkyNzIuLjk2NzJlZjAyMTQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQVBJL0pTUmVtb3RlSW5zcGVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQVBJL0pTUmVtb3RlSW5zcGVjdG9yLmNwcApAQCAtMjcsNiArMjcsNyBAQAogI2luY2x1ZGUg
IkpTUmVtb3RlSW5zcGVjdG9yLmgiCiAKICNpbmNsdWRlICJKU0dsb2JhbE9iamVjdENvbnNvbGVD
bGllbnQuaCIKKyNpbmNsdWRlIDx3dGYvUHJvY2Vzc0lELmg+CiAKICNpZiBFTkFCTEUoUkVNT1RF
X0lOU1BFQ1RPUikKICNpbmNsdWRlICJSZW1vdGVJbnNwZWN0b3IuaCIKQEAgLTUwLDcgKzUxLDcg
QEAgdm9pZCBKU1JlbW90ZUluc3BlY3RvclN0YXJ0KHZvaWQpCiAjZW5kaWYKIH0KIAotdm9pZCBK
U1JlbW90ZUluc3BlY3RvclNldFBhcmVudFByb2Nlc3NJbmZvcm1hdGlvbihwaWRfdCBwaWQsIGNv
bnN0IHVpbnQ4X3QqIGF1ZGl0RGF0YSwgc2l6ZV90IGF1ZGl0TGVuZ3RoKQordm9pZCBKU1JlbW90
ZUluc3BlY3RvclNldFBhcmVudFByb2Nlc3NJbmZvcm1hdGlvbihQcm9jZXNzSUQgcGlkLCBjb25z
dCB1aW50OF90KiBhdWRpdERhdGEsIHNpemVfdCBhdWRpdExlbmd0aCkKIHsKICNpZiBFTkFCTEUo
UkVNT1RFX0lOU1BFQ1RPUikgJiYgUExBVEZPUk0oQ09DT0EpCiAgICAgUmV0YWluUHRyPENGRGF0
YVJlZj4gYXVkaXREYXRhUmVmID0gYWRvcHRDRihDRkRhdGFDcmVhdGUoa0NGQWxsb2NhdG9yRGVm
YXVsdCwgYXVkaXREYXRhLCBhdWRpdExlbmd0aCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL0FQSS9KU1JlbW90ZUluc3BlY3Rvci5oIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L0FQSS9KU1JlbW90ZUluc3BlY3Rvci5oCmluZGV4IDRmODY1MTAyOTk4Li5jODYyODRlZDYzZCAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1JlbW90ZUluc3BlY3Rvci5o
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNSZW1vdGVJbnNwZWN0b3IuaApAQCAt
MjgsNiArMjgsNyBAQAogCiAjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSlNCYXNlLmg+CiAjaW5j
bHVkZSA8SmF2YVNjcmlwdENvcmUvV2ViS2l0QXZhaWxhYmlsaXR5Lmg+CisjaW5jbHVkZSA8d3Rm
L1Byb2Nlc3NJRC5oPgogCiAjaW5jbHVkZSA8dW5pc3RkLmg+CiAKQEAgLTM3LDcgKzM4LDcgQEAg
ZXh0ZXJuICJDIiB7CiAKIEpTX0VYUE9SVCB2b2lkIEpTUmVtb3RlSW5zcGVjdG9yRGlzYWJsZUF1
dG9TdGFydCh2b2lkKSBDRl9BVkFJTEFCTEUoMTBfMTEsIDlfMCk7CiBKU19FWFBPUlQgdm9pZCBK
U1JlbW90ZUluc3BlY3RvclN0YXJ0KHZvaWQpIENGX0FWQUlMQUJMRSgxMF8xMSwgOV8wKTsKLUpT
X0VYUE9SVCB2b2lkIEpTUmVtb3RlSW5zcGVjdG9yU2V0UGFyZW50UHJvY2Vzc0luZm9ybWF0aW9u
KHBpZF90LCBjb25zdCB1aW50OF90KiBhdWRpdERhdGEsIHNpemVfdCBhdWRpdExlbmd0aCkgQ0Zf
QVZBSUxBQkxFKDEwXzExLCA5XzApOworSlNfRVhQT1JUIHZvaWQgSlNSZW1vdGVJbnNwZWN0b3JT
ZXRQYXJlbnRQcm9jZXNzSW5mb3JtYXRpb24oUHJvY2Vzc0lELCBjb25zdCB1aW50OF90KiBhdWRp
dERhdGEsIHNpemVfdCBhdWRpdExlbmd0aCkgQ0ZfQVZBSUxBQkxFKDEwXzExLCA5XzApOwogCiBK
U19FWFBPUlQgdm9pZCBKU1JlbW90ZUluc3BlY3RvclNldExvZ1RvU3lzdGVtQ29uc29sZShib29s
KSBDRl9BVkFJTEFCTEUoMTBfMTEsIDlfMCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9pbnNwZWN0b3IvcmVtb3RlL1JlbW90ZUluc3BlY3Rvci5oIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2luc3BlY3Rvci9yZW1vdGUvUmVtb3RlSW5zcGVjdG9yLmgKaW5kZXggZDAwZGUy
YjcwM2QuLjZhZTdjMDk1YjM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5z
cGVjdG9yL3JlbW90ZS9SZW1vdGVJbnNwZWN0b3IuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvaW5zcGVjdG9yL3JlbW90ZS9SZW1vdGVJbnNwZWN0b3IuaApAQCAtMzAsNiArMzAsNyBAQAog
I2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KICNpbmNs
dWRlIDx3dGYvTG9jay5oPgorI2luY2x1ZGUgPHd0Zi9Qcm9jZXNzSUQuaD4KICNpbmNsdWRlIDx3
dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogI2lmIFBMQVRGT1JNKENPQ09BKQpAQCAtMTA4LDkgKzEw
OSw5IEBAIHB1YmxpYzoKIAogI2lmIFBMQVRGT1JNKENPQ09BKQogICAgIGJvb2wgaGFzUGFyZW50
UHJvY2Vzc0luZm9ybWF0aW9uKCkgY29uc3QgeyByZXR1cm4gbV9wYXJlbnRQcm9jZXNzSWRlbnRp
ZmllciAhPSAwOyB9Ci0gICAgcGlkX3QgcGFyZW50UHJvY2Vzc0lkZW50aWZpZXIoKSBjb25zdCB7
IHJldHVybiBtX3BhcmVudFByb2Nlc3NJZGVudGlmaWVyOyB9CisgICAgUHJvY2Vzc0lEIHBhcmVu
dFByb2Nlc3NJZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9wYXJlbnRQcm9jZXNzSWRlbnRp
ZmllcjsgfQogICAgIFJldGFpblB0cjxDRkRhdGFSZWY+IHBhcmVudFByb2Nlc3NBdWRpdERhdGEo
KSBjb25zdCB7IHJldHVybiBtX3BhcmVudFByb2Nlc3NBdWRpdERhdGE7IH0KLSAgICB2b2lkIHNl
dFBhcmVudFByb2Nlc3NJbmZvcm1hdGlvbihwaWRfdCwgUmV0YWluUHRyPENGRGF0YVJlZj4gYXVk
aXREYXRhKTsKKyAgICB2b2lkIHNldFBhcmVudFByb2Nlc3NJbmZvcm1hdGlvbihQcm9jZXNzSUQs
IFJldGFpblB0cjxDRkRhdGFSZWY+IGF1ZGl0RGF0YSk7CiAgICAgdm9pZCBzZXRQYXJlbnRQcm9j
ZXNzSW5mb21hdGlvbklzRGVsYXllZCgpOwogI2VuZGlmCiAKQEAgLTIwNyw3ICsyMDgsNyBAQCBw
cml2YXRlOgogICAgIGJvb2wgbV9oYXNBY3RpdmVEZWJ1Z1Nlc3Npb24geyBmYWxzZSB9OwogICAg
IGJvb2wgbV9wdXNoU2NoZWR1bGVkIHsgZmFsc2UgfTsKIAotICAgIHBpZF90IG1fcGFyZW50UHJv
Y2Vzc0lkZW50aWZpZXIgeyAwIH07CisgICAgUHJvY2Vzc0lEIG1fcGFyZW50UHJvY2Vzc0lkZW50
aWZpZXIgeyAwIH07CiAjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgUmV0YWluUHRyPENGRGF0YVJl
Zj4gbV9wYXJlbnRQcm9jZXNzQXVkaXREYXRhOwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V1RGL3d0Zi9Qcm9jZXNzSUQuaCBiL1NvdXJjZS9XVEYvd3RmL1Byb2Nlc3NJRC5oCmluZGV4IGY4
NDcxNmU4ZDkzLi5jY2RjMmUwMDIwOSAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvUHJvY2Vz
c0lELmgKKysrIGIvU291cmNlL1dURi93dGYvUHJvY2Vzc0lELmgKQEAgLTM2LDcgKzM2LDEzIEBA
CiAKIG5hbWVzcGFjZSBXVEYgewogCi1pbmxpbmUgaW50IGdldEN1cnJlbnRQcm9jZXNzSUQoKQor
I2lmIE9TKFdJTkRPV1MpCit1c2luZyBQcm9jZXNzSUQgPSBpbnQ7CisjZWxzZQordXNpbmcgUHJv
Y2Vzc0lEID0gcGlkX3Q7CisjZW5kaWYKKworaW5saW5lIFByb2Nlc3NJRCBnZXRDdXJyZW50UHJv
Y2Vzc0lEKCkKIHsKICNpZiBPUyhXSU5ET1dTKQogICAgIHJldHVybiBHZXRDdXJyZW50UHJvY2Vz
c0lkKCk7CkBAIC00OCw2ICs1NCw3IEBAIGlubGluZSBpbnQgZ2V0Q3VycmVudFByb2Nlc3NJRCgp
CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpnZXRDdXJyZW50UHJvY2Vzc0lEOwor
dXNpbmcgV1RGOjpQcm9jZXNzSUQ7CiAKICNlbmRpZiAvLyBQcm9jZXNzSURfaAogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzQ3JlYXRpb25Q
YXJhbWV0ZXJzLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNz
Q3JlYXRpb25QYXJhbWV0ZXJzLmgKaW5kZXggMWViNzk3OTk2MTguLmQwYTMyZGJiMmYyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzQ3JlYXRp
b25QYXJhbWV0ZXJzLmgKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3Jr
UHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oCkBAIC0yOCw2ICsyOCw3IEBACiAjaW5jbHVkZSAi
QXR0YWNobWVudC5oIgogI2luY2x1ZGUgIkNhY2hlTW9kZWwuaCIKICNpbmNsdWRlICJTYW5kYm94
RXh0ZW5zaW9uLmgiCisjaW5jbHVkZSA8d3RmL1Byb2Nlc3NJRC5oPgogI2luY2x1ZGUgPHd0Zi9W
ZWN0b3IuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIApAQCAtNzgsNyArNzks
NyBAQCBzdHJ1Y3QgTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMgewogICAgIFNlY29u
ZHMgbG9hZFRocm90dGxlTGF0ZW5jeTsKIAogICAgIFZlY3RvcjxTdHJpbmc+IHVybFNjaGVtZXNS
ZWdpc3RlcmVkRm9yQ3VzdG9tUHJvdG9jb2xzOwotICAgIHBpZF90IHByZXNlbnRpbmdBcHBsaWNh
dGlvblBJRCB7IDAgfTsKKyAgICBQcm9jZXNzSUQgcHJlc2VudGluZ0FwcGxpY2F0aW9uUElEIHsg
MCB9OwogCiAjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgU3RyaW5nIHBhcmVudFByb2Nlc3NOYW1l
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFy
YW1ldGVycy5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1l
dGVycy5oCmluZGV4IDU2MTg1YWJlNzZiLi4wZTIzYzRiNmQ4OCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oCisrKyBiL1NvdXJj
ZS9XZWJLaXQvU2hhcmVkL1dlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaApAQCAtMzAsNiAr
MzAsNyBAQAogI2luY2x1ZGUgIlRleHRDaGVja2VyU3RhdGUuaCIKICNpbmNsdWRlICJVc2VyRGF0
YS5oIgogI2luY2x1ZGUgPHBhbC9TZXNzaW9uSUQuaD4KKyNpbmNsdWRlIDx3dGYvUHJvY2Vzc0lE
Lmg+CiAjaW5jbHVkZSA8d3RmL1JldGFpblB0ci5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4K
ICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdIYXNoLmg+CkBAIC0xMzYsNyArMTM3LDcgQEAgc3Ry
dWN0IFdlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMgewogICAgIFN0cmluZyB1aVByb2Nlc3NC
dW5kbGVJZGVudGlmaWVyOwogI2VuZGlmCiAKLSAgICBwaWRfdCBwcmVzZW50aW5nQXBwbGljYXRp
b25QSUQgeyAwIH07CisgICAgUHJvY2Vzc0lEIHByZXNlbnRpbmdBcHBsaWNhdGlvblBJRCB7IDAg
fTsKIAogI2lmIFBMQVRGT1JNKENPQ09BKQogICAgIFdlYkNvcmU6Ok1hY2hTZW5kUmlnaHQgYWNj
ZWxlcmF0ZWRDb21wb3NpdGluZ1BvcnQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9BUEkvQVBJUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmggYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9BUEkvQVBJUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmgKaW5kZXggOTU0NDg0Nzkz
YjQuLmEwNmFhYTJkOWU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkv
QVBJUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvQVBJL0FQSVByb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5oCkBAIC0xMzksOCArMTM5LDggQEAg
cHVibGljOgogICAgIHZvaWQgc2V0Q1REYXRhQ29ubmVjdGlvblNlcnZpY2VUeXBlKGNvbnN0IFdU
Rjo6U3RyaW5nJiBjdERhdGFDb25uZWN0aW9uU2VydmljZVR5cGUpIHsgbV9jdERhdGFDb25uZWN0
aW9uU2VydmljZVR5cGUgPSBjdERhdGFDb25uZWN0aW9uU2VydmljZVR5cGU7IH0KICNlbmRpZgog
Ci0gICAgcGlkX3QgcHJlc2VudGluZ0FwcGxpY2F0aW9uUElEKCkgY29uc3QgeyByZXR1cm4gbV9w
cmVzZW50aW5nQXBwbGljYXRpb25QSUQ7IH0KLSAgICB2b2lkIHNldFByZXNlbnRpbmdBcHBsaWNh
dGlvblBJRChwaWRfdCBwaWQpIHsgbV9wcmVzZW50aW5nQXBwbGljYXRpb25QSUQgPSBwaWQ7IH0K
KyAgICBQcm9jZXNzSUQgcHJlc2VudGluZ0FwcGxpY2F0aW9uUElEKCkgY29uc3QgeyByZXR1cm4g
bV9wcmVzZW50aW5nQXBwbGljYXRpb25QSUQ7IH0KKyAgICB2b2lkIHNldFByZXNlbnRpbmdBcHBs
aWNhdGlvblBJRChQcm9jZXNzSUQgcGlkKSB7IG1fcHJlc2VudGluZ0FwcGxpY2F0aW9uUElEID0g
cGlkOyB9CiAKIHByaXZhdGU6CiAgICAgYm9vbCBtX3Nob3VsZEhhdmVMZWdhY3lEYXRhU3RvcmUg
eyBmYWxzZSB9OwpAQCAtMTc0LDcgKzE3NCw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBtX2Fsd2F5
c1J1bnNBdEJhY2tncm91bmRQcmlvcml0eSB7IGZhbHNlIH07CiAgICAgYm9vbCBtX3Nob3VsZFRh
a2VVSUJhY2tncm91bmRBc3NlcnRpb24geyB0cnVlIH07CiAgICAgYm9vbCBtX3Nob3VsZENhcHR1
cmVBdWRpb0luVUlQcm9jZXNzIHsgZmFsc2UgfTsKLSAgICBwaWRfdCBtX3ByZXNlbnRpbmdBcHBs
aWNhdGlvblBJRCB7IGdldEN1cnJlbnRQcm9jZXNzSUQoKSB9OworICAgIFByb2Nlc3NJRCBtX3By
ZXNlbnRpbmdBcHBsaWNhdGlvblBJRCB7IGdldEN1cnJlbnRQcm9jZXNzSUQoKSB9OwogI2lmIFBM
QVRGT1JNKElPUykKICAgICBXVEY6OlN0cmluZyBtX2N0RGF0YUNvbm5lY3Rpb25TZXJ2aWNlVHlw
ZTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tD
b250ZXh0LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dC5jcHAK
aW5kZXggMDVhNGVmOTRjYTkuLjc4MzM4ZWQ2NTc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL0FQSS9DL1dLQ29udGV4dC5jcHAKQEAgLTU5OSwxMiArNTk5LDEyIEBAIHZvaWQgV0tDb250
ZXh0VGVybWluYXRlTmV0d29ya1Byb2Nlc3MoV0tDb250ZXh0UmVmIGNvbnRleHQpCiAgICAgdG9J
bXBsKGNvbnRleHQpLT50ZXJtaW5hdGVOZXR3b3JrUHJvY2VzcygpOwogfQogCi1waWRfdCBXS0Nv
bnRleHRHZXROZXR3b3JrUHJvY2Vzc0lkZW50aWZpZXIoV0tDb250ZXh0UmVmIGNvbnRleHRSZWYp
CitQcm9jZXNzSUQgV0tDb250ZXh0R2V0TmV0d29ya1Byb2Nlc3NJZGVudGlmaWVyKFdLQ29udGV4
dFJlZiBjb250ZXh0UmVmKQogewogICAgIHJldHVybiB0b0ltcGwoY29udGV4dFJlZiktPm5ldHdv
cmtQcm9jZXNzSWRlbnRpZmllcigpOwogfQogCi1waWRfdCBXS0NvbnRleHRHZXREYXRhYmFzZVBy
b2Nlc3NJZGVudGlmaWVyKFdLQ29udGV4dFJlZiBjb250ZXh0UmVmKQorUHJvY2Vzc0lEIFdLQ29u
dGV4dEdldERhdGFiYXNlUHJvY2Vzc0lkZW50aWZpZXIoV0tDb250ZXh0UmVmIGNvbnRleHRSZWYp
CiB7CiAgICAgcmV0dXJuIHRvSW1wbChjb250ZXh0UmVmKS0+c3RvcmFnZVByb2Nlc3NJZGVudGlm
aWVyKCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS0Nv
bnRleHRQcml2YXRlLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHRQ
cml2YXRlLmgKaW5kZXggZmU4Nzg4ZDM0MmIuLjM1ZjZkNTgzOTU4IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHRQcml2YXRlLmgKKysrIGIvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tDb250ZXh0UHJpdmF0ZS5oCkBAIC0yOSw3ICsyOSwx
MSBAQAogI2luY2x1ZGUgPFdlYktpdC9XS0Jhc2UuaD4KICNpbmNsdWRlIDxXZWJLaXQvV0tDb250
ZXh0Lmg+CiAKKyNpZiBPUyhXSU5ET1dTKQordHlwZWRlZiBpbnQgcGlkX3Q7CisjZWxzZQogI2lu
Y2x1ZGUgPHVuaXN0ZC5oPgorI2VuZGlmCiAKICNpZmRlZiBfX2NwbHVzcGx1cwogZXh0ZXJuICJD
IiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2UuY3Bw
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQYWdlLmNwcAppbmRleCAwNjdjMGVj
OTRjMC4uMDQxOGNlODA1ZmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQ
SS9DL1dLUGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQYWdl
LmNwcApAQCAtMjc0MSw3ICsyNzQxLDcgQEAgdm9pZCBXS1BhZ2VTZXRJZ25vcmVzVmlld3BvcnRT
Y2FsZUxpbWl0cyhXS1BhZ2VSZWYgcGFnZSwgYm9vbCBpZ25vcmVzVmlld3BvcnRTY2EKICNlbmRp
ZgogfQogCi1waWRfdCBXS1BhZ2VHZXRQcm9jZXNzSWRlbnRpZmllcihXS1BhZ2VSZWYgcGFnZSkK
K1Byb2Nlc3NJRCBXS1BhZ2VHZXRQcm9jZXNzSWRlbnRpZmllcihXS1BhZ2VSZWYgcGFnZSkKIHsK
ICAgICByZXR1cm4gdG9JbXBsKHBhZ2UpLT5wcm9jZXNzSWRlbnRpZmllcigpOwogfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQYWdlUHJpdmF0ZS5oIGIvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQYWdlUHJpdmF0ZS5oCmluZGV4IDg3MTc0Njg4
NzYxLi44MTFhMWFmMjAxMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJ
L0MvV0tQYWdlUHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dL
UGFnZVByaXZhdGUuaApAQCAtMjksNyArMjksMTEgQEAKICNpbmNsdWRlIDxXZWJLaXQvV0tCYXNl
Lmg+CiAjaW5jbHVkZSA8V2ViS2l0L1dLUGFnZS5oPgogCisjaWYgT1MoV0lORE9XUykKK3R5cGVk
ZWYgaW50IHBpZF90OworI2Vsc2UKICNpbmNsdWRlIDx1bmlzdGQuaD4KKyNlbmRpZgogCiAjaWZk
ZWYgX19jcGx1c3BsdXMKIGV4dGVybiAiQyIgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvQ2hpbGRQcm9jZXNzUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0No
aWxkUHJvY2Vzc1Byb3h5LmgKaW5kZXggYzYzYjliZTE0M2MuLjdiMzFjOGUzYzRhIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9DaGlsZFByb2Nlc3NQcm94eS5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NoaWxkUHJvY2Vzc1Byb3h5LmgKQEAgLTI5LDYgKzI5LDcg
QEAKICNpbmNsdWRlICJNZXNzYWdlUmVjZWl2ZXJNYXAuaCIKICNpbmNsdWRlICJQcm9jZXNzTGF1
bmNoZXIuaCIKIAorI2luY2x1ZGUgPHd0Zi9Qcm9jZXNzSUQuaD4KICNpbmNsdWRlIDx3dGYvU3lz
dGVtVHJhY2luZy5oPgogI2luY2x1ZGUgPHd0Zi9UaHJlYWRTYWZlUmVmQ291bnRlZC5oPgogCkBA
IC03Miw3ICs3Myw3IEBAIHB1YmxpYzoKICAgICB9OwogICAgIFN0YXRlIHN0YXRlKCkgY29uc3Q7
CiAKLSAgICBwaWRfdCBwcm9jZXNzSWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1fcHJvY2Vz
c0xhdW5jaGVyID8gbV9wcm9jZXNzTGF1bmNoZXItPnByb2Nlc3NJZGVudGlmaWVyKCkgOiAwOyB9
CisgICAgUHJvY2Vzc0lEIHByb2Nlc3NJZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9wcm9j
ZXNzTGF1bmNoZXIgPyBtX3Byb2Nlc3NMYXVuY2hlci0+cHJvY2Vzc0lkZW50aWZpZXIoKSA6IDA7
IH0KIAogICAgIGJvb2wgY2FuU2VuZE1lc3NhZ2UoKSBjb25zdCB7IHJldHVybiBzdGF0ZSgpICE9
IFN0YXRlOjpUZXJtaW5hdGVkO30KICAgICBib29sIHNlbmRNZXNzYWdlKHN0ZDo6dW5pcXVlX3B0
cjxJUEM6OkVuY29kZXI+LCBPcHRpb25TZXQ8SVBDOjpTZW5kT3B0aW9uPik7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9MYXVuY2hlci9Qcm9jZXNzTGF1bmNoZXIuY3BwIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvTGF1bmNoZXIvUHJvY2Vzc0xhdW5jaGVyLmNwcAppbmRl
eCAwODljMTdjMzMzZi4uZjJmNzJhY2MzZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL0xhdW5jaGVyL1Byb2Nlc3NMYXVuY2hlci5jcHAKKysrIGIvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvTGF1bmNoZXIvUHJvY2Vzc0xhdW5jaGVyLmNwcApAQCAtNDEsNyArNDEsNyBAQCBQ
cm9jZXNzTGF1bmNoZXI6OlByb2Nlc3NMYXVuY2hlcihDbGllbnQqIGNsaWVudCwgY29uc3QgTGF1
bmNoT3B0aW9ucyYgbGF1bmNoT3B0aQogICAgIGxhdW5jaFByb2Nlc3MoKTsKIH0KIAotdm9pZCBQ
cm9jZXNzTGF1bmNoZXI6OmRpZEZpbmlzaExhdW5jaGluZ1Byb2Nlc3MocGlkX3QgcHJvY2Vzc0lk
ZW50aWZpZXIsIElQQzo6Q29ubmVjdGlvbjo6SWRlbnRpZmllciBpZGVudGlmaWVyKQordm9pZCBQ
cm9jZXNzTGF1bmNoZXI6OmRpZEZpbmlzaExhdW5jaGluZ1Byb2Nlc3MoUHJvY2Vzc0lEIHByb2Nl
c3NJZGVudGlmaWVyLCBJUEM6OkNvbm5lY3Rpb246OklkZW50aWZpZXIgaWRlbnRpZmllcikKIHsK
ICAgICBtX3Byb2Nlc3NJZGVudGlmaWVyID0gcHJvY2Vzc0lkZW50aWZpZXI7CiAgICAgbV9pc0xh
dW5jaGluZyA9IGZhbHNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvTGF1
bmNoZXIvUHJvY2Vzc0xhdW5jaGVyLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9MYXVuY2hl
ci9Qcm9jZXNzTGF1bmNoZXIuaAppbmRleCA2Nzk4ZmM5ZjlkMC4uMDIyYWI2YTc3NDIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0xhdW5jaGVyL1Byb2Nlc3NMYXVuY2hlci5o
CisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0xhdW5jaGVyL1Byb2Nlc3NMYXVuY2hlci5o
CkBAIC0yNyw2ICsyNyw3IEBACiAKICNpbmNsdWRlICJDb25uZWN0aW9uLmgiCiAjaW5jbHVkZSA8
d3RmL0hhc2hNYXAuaD4KKyNpbmNsdWRlIDx3dGYvUHJvY2Vzc0lELmg+CiAjaW5jbHVkZSA8d3Rm
L1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9UaHJlYWRpbmcuaD4KICNpbmNsdWRlIDx3dGYvV2Vh
a1B0ci5oPgpAQCAtNjksNyArNzAsNyBAQCBwdWJsaWM6CiAgICAgfQogCiAgICAgYm9vbCBpc0xh
dW5jaGluZygpIGNvbnN0IHsgcmV0dXJuIG1faXNMYXVuY2hpbmc7IH0KLSAgICBwaWRfdCBwcm9j
ZXNzSWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1fcHJvY2Vzc0lkZW50aWZpZXI7IH0KKyAg
ICBQcm9jZXNzSUQgcHJvY2Vzc0lkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX3Byb2Nlc3NJ
ZGVudGlmaWVyOyB9CiAKICAgICB2b2lkIHRlcm1pbmF0ZVByb2Nlc3MoKTsKICAgICB2b2lkIGlu
dmFsaWRhdGUoKTsKQEAgLTc4LDcgKzc5LDcgQEAgcHJpdmF0ZToKICAgICBQcm9jZXNzTGF1bmNo
ZXIoQ2xpZW50KiwgY29uc3QgTGF1bmNoT3B0aW9ucyYgbGF1bmNoT3B0aW9ucyk7CiAKICAgICB2
b2lkIGxhdW5jaFByb2Nlc3MoKTsKLSAgICB2b2lkIGRpZEZpbmlzaExhdW5jaGluZ1Byb2Nlc3Mo
cGlkX3QsIElQQzo6Q29ubmVjdGlvbjo6SWRlbnRpZmllcik7CisgICAgdm9pZCBkaWRGaW5pc2hM
YXVuY2hpbmdQcm9jZXNzKFByb2Nlc3NJRCwgSVBDOjpDb25uZWN0aW9uOjpJZGVudGlmaWVyKTsK
IAogICAgIHZvaWQgcGxhdGZvcm1JbnZhbGlkYXRlKCk7CiAKQEAgLTkxLDcgKzkyLDcgQEAgcHJp
dmF0ZToKICAgICBXZWFrUHRyRmFjdG9yeTxQcm9jZXNzTGF1bmNoZXI+IG1fd2Vha1B0ckZhY3Rv
cnk7CiAgICAgY29uc3QgTGF1bmNoT3B0aW9ucyBtX2xhdW5jaE9wdGlvbnM7CiAgICAgYm9vbCBt
X2lzTGF1bmNoaW5nOwotICAgIHBpZF90IG1fcHJvY2Vzc0lkZW50aWZpZXI7CisgICAgUHJvY2Vz
c0lEIG1fcHJvY2Vzc0lkZW50aWZpZXI7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NBc3NlcnRpb24uY3BwIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc0Fzc2VydGlvbi5jcHAKaW5kZXggYTY2ZTEy
MjRmMzQuLjkyZTNkOGMwNzUyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Q
cm9jZXNzQXNzZXJ0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNz
QXNzZXJ0aW9uLmNwcApAQCAtMzAsNyArMzAsNyBAQAogCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAot
UHJvY2Vzc0Fzc2VydGlvbjo6UHJvY2Vzc0Fzc2VydGlvbihwaWRfdCwgQXNzZXJ0aW9uU3RhdGUg
YXNzZXJ0aW9uU3RhdGUsIEZ1bmN0aW9uPHZvaWQoKT4mJikKK1Byb2Nlc3NBc3NlcnRpb246OlBy
b2Nlc3NBc3NlcnRpb24oUHJvY2Vzc0lELCBBc3NlcnRpb25TdGF0ZSBhc3NlcnRpb25TdGF0ZSwg
RnVuY3Rpb248dm9pZCgpPiYmKQogICAgIDogbV9hc3NlcnRpb25TdGF0ZShhc3NlcnRpb25TdGF0
ZSkKIHsKIH0KQEAgLTQ3LDcgKzQ3LDcgQEAgdm9pZCBQcm9jZXNzQXNzZXJ0aW9uOjpzZXRTdGF0
ZShBc3NlcnRpb25TdGF0ZSBhc3NlcnRpb25TdGF0ZSkKICAgICBtX2Fzc2VydGlvblN0YXRlID0g
YXNzZXJ0aW9uU3RhdGU7CiB9CiAKLVByb2Nlc3NBbmRVSUFzc2VydGlvbjo6UHJvY2Vzc0FuZFVJ
QXNzZXJ0aW9uKHBpZF90IHBpZCwgQXNzZXJ0aW9uU3RhdGUgYXNzZXJ0aW9uU3RhdGUpCitQcm9j
ZXNzQW5kVUlBc3NlcnRpb246OlByb2Nlc3NBbmRVSUFzc2VydGlvbihQcm9jZXNzSUQgcGlkLCBB
c3NlcnRpb25TdGF0ZSBhc3NlcnRpb25TdGF0ZSkKICAgICA6IFByb2Nlc3NBc3NlcnRpb24ocGlk
LCBhc3NlcnRpb25TdGF0ZSkKIHsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1Byb2Nlc3NBc3NlcnRpb24uaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NB
c3NlcnRpb24uaAppbmRleCBlNWUzYTNiNjE0OS4uMjAzMjAwMDY1NTcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NBc3NlcnRpb24uaAorKysgYi9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmgKQEAgLTI4LDYgKzI4LDcgQEAKIAogI2lu
Y2x1ZGUgPHVuaXN0ZC5oPgogI2luY2x1ZGUgPHd0Zi9GdW5jdGlvbi5oPgorI2luY2x1ZGUgPHd0
Zi9Qcm9jZXNzSUQuaD4KIAogI2lmIFBMQVRGT1JNKElPUykgJiYgIVBMQVRGT1JNKElPU19TSU1V
TEFUT1IpCiAjaW5jbHVkZSA8d3RmL1JldGFpblB0ci5oPgpAQCAtNTEsNyArNTIsNyBAQCBwdWJs
aWM6CiAKIGNsYXNzIFByb2Nlc3NBc3NlcnRpb24gewogcHVibGljOgotICAgIFByb2Nlc3NBc3Nl
cnRpb24ocGlkX3QsIEFzc2VydGlvblN0YXRlLCBGdW5jdGlvbjx2b2lkKCk+JiYgaW52YWxpZGF0
aW9uQ2FsbGJhY2sgPSB7IH0pOworICAgIFByb2Nlc3NBc3NlcnRpb24oUHJvY2Vzc0lELCBBc3Nl
cnRpb25TdGF0ZSwgRnVuY3Rpb248dm9pZCgpPiYmIGludmFsaWRhdGlvbkNhbGxiYWNrID0geyB9
KTsKICAgICB2aXJ0dWFsIH5Qcm9jZXNzQXNzZXJ0aW9uKCk7CiAKICAgICB2aXJ0dWFsIHZvaWQg
c2V0Q2xpZW50KFByb2Nlc3NBc3NlcnRpb25DbGllbnQmIGNsaWVudCkgeyBtX2NsaWVudCA9ICZj
bGllbnQ7IH0KQEAgLTgyLDcgKzgzLDcgQEAgcHJpdmF0ZToKICAgICAKIGNsYXNzIFByb2Nlc3NB
bmRVSUFzc2VydGlvbiBmaW5hbCA6IHB1YmxpYyBQcm9jZXNzQXNzZXJ0aW9uIHsKIHB1YmxpYzoK
LSAgICBQcm9jZXNzQW5kVUlBc3NlcnRpb24ocGlkX3QsIEFzc2VydGlvblN0YXRlKTsKKyAgICBQ
cm9jZXNzQW5kVUlBc3NlcnRpb24oUHJvY2Vzc0lELCBBc3NlcnRpb25TdGF0ZSk7CiAgICAgflBy
b2Nlc3NBbmRVSUFzc2VydGlvbigpOwogCiAgICAgdm9pZCBzZXRDbGllbnQoUHJvY2Vzc0Fzc2Vy
dGlvbkNsaWVudCYpIGZpbmFsOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
UHJvY2Vzc1Rocm90dGxlci5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNzVGhy
b3R0bGVyLmNwcAppbmRleCBlZWQzZTYwMWFmZS4uODZhOGZhZWRhMzUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NUaHJvdHRsZXIuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NUaHJvdHRsZXIuY3BwCkBAIC05MSw3ICs5MSw3IEBAIHZv
aWQgUHJvY2Vzc1Rocm90dGxlcjo6dXBkYXRlQXNzZXJ0aW9uKCkKICAgICB1cGRhdGVBc3NlcnRp
b25Ob3coKTsKIH0KIAotdm9pZCBQcm9jZXNzVGhyb3R0bGVyOjpkaWRDb25uZWN0VG9Qcm9jZXNz
KHBpZF90IHBpZCkKK3ZvaWQgUHJvY2Vzc1Rocm90dGxlcjo6ZGlkQ29ubmVjdFRvUHJvY2VzcyhQ
cm9jZXNzSUQgcGlkKQogewogICAgIFJFTEVBU0VfTE9HKFByb2Nlc3NTdXNwZW5zaW9uLCAiJXAg
LSBQcm9jZXNzVGhyb3R0bGVyOjpkaWRDb25uZWN0VG9Qcm9jZXNzKCVkKSIsIHRoaXMsIHBpZCk7
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NUaHJvdHRsZXIu
aCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NUaHJvdHRsZXIuaAppbmRleCBjYjFh
NGYyNmVjMy4uN2Q5MGRiNjY0M2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1Byb2Nlc3NUaHJvdHRsZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNz
VGhyb3R0bGVyLmgKQEAgLTI4LDYgKzI4LDcgQEAKIAogI2luY2x1ZGUgIlByb2Nlc3NBc3NlcnRp
b24uaCIKIAorI2luY2x1ZGUgPHd0Zi9Qcm9jZXNzSUQuaD4KICNpbmNsdWRlIDx3dGYvUmVmQ291
bnRlci5oPgogI2luY2x1ZGUgPHd0Zi9SdW5Mb29wLmg+CiAjaW5jbHVkZSA8d3RmL1dlYWtQdHIu
aD4KQEAgLTU2LDcgKzU3LDcgQEAgcHVibGljOgogICAgIGlubGluZSBGb3JlZ3JvdW5kQWN0aXZp
dHlUb2tlbiBmb3JlZ3JvdW5kQWN0aXZpdHlUb2tlbigpIGNvbnN0OwogICAgIGlubGluZSBCYWNr
Z3JvdW5kQWN0aXZpdHlUb2tlbiBiYWNrZ3JvdW5kQWN0aXZpdHlUb2tlbigpIGNvbnN0OwogICAg
IAotICAgIHZvaWQgZGlkQ29ubmVjdFRvUHJvY2VzcyhwaWRfdCk7CisgICAgdm9pZCBkaWRDb25u
ZWN0VG9Qcm9jZXNzKFByb2Nlc3NJRCk7CiAgICAgdm9pZCBwcm9jZXNzUmVhZHlUb1N1c3BlbmQo
KTsKICAgICB2b2lkIGRpZENhbmNlbFByb2Nlc3NTdXNwZW5zaW9uKCk7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCmluZGV4IDljYzVlZmE2MzcyLi43MmYwNDZkMDhi
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCkBAIC00NDEsNyAr
NDQxLDcgQEAgY29uc3QgQVBJOjpQYWdlQ29uZmlndXJhdGlvbiYgV2ViUGFnZVByb3h5Ojpjb25m
aWd1cmF0aW9uKCkgY29uc3QKICAgICByZXR1cm4gbV9jb25maWd1cmF0aW9uLmdldCgpOwogfQog
Ci1waWRfdCBXZWJQYWdlUHJveHk6OnByb2Nlc3NJZGVudGlmaWVyKCkgY29uc3QKK1Byb2Nlc3NJ
RCBXZWJQYWdlUHJveHk6OnByb2Nlc3NJZGVudGlmaWVyKCkgY29uc3QKIHsKICAgICBpZiAobV9p
c0Nsb3NlZCkKICAgICAgICAgcmV0dXJuIDA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9XZWJQYWdlUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQ
cm94eS5oCmluZGV4IGU0MzM3YmNmZWQxLi5kOGU4MzI1ZDk4NSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKKysrIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvV2ViUGFnZVByb3h5LmgKQEAgLTg0LDYgKzg0LDcgQEAKICNpbmNsdWRlIDx3dGYvSGFz
aE1hcC5oPgogI2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+CiAjaW5jbHVkZSA8d3RmL01vbm90b25p
Y1RpbWUuaD4KKyNpbmNsdWRlIDx3dGYvUHJvY2Vzc0lELmg+CiAjaW5jbHVkZSA8d3RmL1JlZi5o
PgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KICNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CkBAIC04
NzUsNyArODc2LDcgQEAgcHVibGljOgogI2VuZGlmCiAKICAgICBXZWJQcm9jZXNzUHJveHkmIHBy
b2Nlc3MoKSB7IHJldHVybiBtX3Byb2Nlc3M7IH0KLSAgICBwaWRfdCBwcm9jZXNzSWRlbnRpZmll
cigpIGNvbnN0OworICAgIFByb2Nlc3NJRCBwcm9jZXNzSWRlbnRpZmllcigpIGNvbnN0OwogCiAg
ICAgV2ViUHJlZmVyZW5jZXMmIHByZWZlcmVuY2VzKCkgeyByZXR1cm4gbV9wcmVmZXJlbmNlczsg
fQogICAgIHZvaWQgc2V0UHJlZmVyZW5jZXMoV2ViUHJlZmVyZW5jZXMmKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcCBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcAppbmRleCA5OGY2OGE3ZDQ3OS4uN2YzNGFm
OGM0MzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29s
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAKQEAg
LTEwODMsNyArMTA4Myw3IEBAIHZvaWQgV2ViUHJvY2Vzc1Bvb2w6OnJlZnJlc2hQbHVnaW5zKCkK
IAogI2VuZGlmIC8vIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQogCi1waWRfdCBXZWJQcm9j
ZXNzUG9vbDo6bmV0d29ya1Byb2Nlc3NJZGVudGlmaWVyKCkKK1Byb2Nlc3NJRCBXZWJQcm9jZXNz
UG9vbDo6bmV0d29ya1Byb2Nlc3NJZGVudGlmaWVyKCkKIHsKICAgICBpZiAoIW1fbmV0d29ya1By
b2Nlc3MpCiAgICAgICAgIHJldHVybiAwOwpAQCAtMTA5MSw3ICsxMDkxLDcgQEAgcGlkX3QgV2Vi
UHJvY2Vzc1Bvb2w6Om5ldHdvcmtQcm9jZXNzSWRlbnRpZmllcigpCiAgICAgcmV0dXJuIG1fbmV0
d29ya1Byb2Nlc3MtPnByb2Nlc3NJZGVudGlmaWVyKCk7CiB9CiAKLXBpZF90IFdlYlByb2Nlc3NQ
b29sOjpzdG9yYWdlUHJvY2Vzc0lkZW50aWZpZXIoKQorUHJvY2Vzc0lEIFdlYlByb2Nlc3NQb29s
OjpzdG9yYWdlUHJvY2Vzc0lkZW50aWZpZXIoKQogewogICAgIGlmICghbV9zdG9yYWdlUHJvY2Vz
cykKICAgICAgICAgcmV0dXJuIDA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9XZWJQcm9jZXNzUG9vbC5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bv
b2wuaAppbmRleCAyNGViYWExODNkOC4uZTE5ZjZkZjJhZjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuaApAQCAtNDksNiArNDksNyBAQAogI2luY2x1ZGUgPHd0Zi9G
b3J3YXJkLmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KICNpbmNsdWRlIDx3dGYvSGFzaFNl
dC5oPgorI2luY2x1ZGUgPHd0Zi9Qcm9jZXNzSUQuaD4KICNpbmNsdWRlIDx3dGYvUmVmQ291bnRl
ci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdI
YXNoLmg+CkBAIC0xOTksOCArMjAwLDggQEAgcHVibGljOgogICAgIGNvbnN0IEhhc2hNYXA8U3Ry
aW5nLCBIYXNoTWFwPFN0cmluZywgSGFzaE1hcDxTdHJpbmcsIHVpbnQ4X3Q+Pj4mIHBsdWdpbkxv
YWRDbGllbnRQb2xpY2llcygpIGNvbnN0IHsgcmV0dXJuIG1fcGx1Z2luTG9hZENsaWVudFBvbGlj
aWVzOyB9CiAjZW5kaWYKIAotICAgIHBpZF90IG5ldHdvcmtQcm9jZXNzSWRlbnRpZmllcigpOwot
ICAgIHBpZF90IHN0b3JhZ2VQcm9jZXNzSWRlbnRpZmllcigpOworICAgIFByb2Nlc3NJRCBuZXR3
b3JrUHJvY2Vzc0lkZW50aWZpZXIoKTsKKyAgICBQcm9jZXNzSUQgc3RvcmFnZVByb2Nlc3NJZGVu
dGlmaWVyKCk7CiAKICAgICB2b2lkIHNldEFsd2F5c1VzZXNDb21wbGV4VGV4dENvZGVQYXRoKGJv
b2wpOwogICAgIHZvaWQgc2V0U2hvdWxkVXNlRm9udFNtb290aGluZyhib29sKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>320966</attachid>
            <date>2017-09-15 14:40:59 -0700</date>
            <delta_ts>2017-09-18 10:16:10 -0700</delta_ts>
            <desc>Test patch for ews on adding process identifier alias, api private headers using pid_t with override</desc>
            <filename>pid_t-test.6.diff</filename>
            <type>text/plain</type>
            <size>17876</size>
            <attacher name="Stephan Szabo">stephan.szabo</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNSZW1vdGVJbnNwZWN0b3Iu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1JlbW90ZUluc3BlY3Rvci5jcHAKaW5k
ZXggM2JlNjFkMDkyNzIuLjk2NzJlZjAyMTQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQVBJL0pTUmVtb3RlSW5zcGVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQVBJL0pTUmVtb3RlSW5zcGVjdG9yLmNwcApAQCAtMjcsNiArMjcsNyBAQAogI2luY2x1ZGUg
IkpTUmVtb3RlSW5zcGVjdG9yLmgiCiAKICNpbmNsdWRlICJKU0dsb2JhbE9iamVjdENvbnNvbGVD
bGllbnQuaCIKKyNpbmNsdWRlIDx3dGYvUHJvY2Vzc0lELmg+CiAKICNpZiBFTkFCTEUoUkVNT1RF
X0lOU1BFQ1RPUikKICNpbmNsdWRlICJSZW1vdGVJbnNwZWN0b3IuaCIKQEAgLTUwLDcgKzUxLDcg
QEAgdm9pZCBKU1JlbW90ZUluc3BlY3RvclN0YXJ0KHZvaWQpCiAjZW5kaWYKIH0KIAotdm9pZCBK
U1JlbW90ZUluc3BlY3RvclNldFBhcmVudFByb2Nlc3NJbmZvcm1hdGlvbihwaWRfdCBwaWQsIGNv
bnN0IHVpbnQ4X3QqIGF1ZGl0RGF0YSwgc2l6ZV90IGF1ZGl0TGVuZ3RoKQordm9pZCBKU1JlbW90
ZUluc3BlY3RvclNldFBhcmVudFByb2Nlc3NJbmZvcm1hdGlvbihQcm9jZXNzSUQgcGlkLCBjb25z
dCB1aW50OF90KiBhdWRpdERhdGEsIHNpemVfdCBhdWRpdExlbmd0aCkKIHsKICNpZiBFTkFCTEUo
UkVNT1RFX0lOU1BFQ1RPUikgJiYgUExBVEZPUk0oQ09DT0EpCiAgICAgUmV0YWluUHRyPENGRGF0
YVJlZj4gYXVkaXREYXRhUmVmID0gYWRvcHRDRihDRkRhdGFDcmVhdGUoa0NGQWxsb2NhdG9yRGVm
YXVsdCwgYXVkaXREYXRhLCBhdWRpdExlbmd0aCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL0FQSS9KU1JlbW90ZUluc3BlY3Rvci5oIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L0FQSS9KU1JlbW90ZUluc3BlY3Rvci5oCmluZGV4IDRmODY1MTAyOTk4Li5jODYyODRlZDYzZCAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1JlbW90ZUluc3BlY3Rvci5o
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNSZW1vdGVJbnNwZWN0b3IuaApAQCAt
MjgsNiArMjgsNyBAQAogCiAjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSlNCYXNlLmg+CiAjaW5j
bHVkZSA8SmF2YVNjcmlwdENvcmUvV2ViS2l0QXZhaWxhYmlsaXR5Lmg+CisjaW5jbHVkZSA8d3Rm
L1Byb2Nlc3NJRC5oPgogCiAjaW5jbHVkZSA8dW5pc3RkLmg+CiAKQEAgLTM3LDcgKzM4LDcgQEAg
ZXh0ZXJuICJDIiB7CiAKIEpTX0VYUE9SVCB2b2lkIEpTUmVtb3RlSW5zcGVjdG9yRGlzYWJsZUF1
dG9TdGFydCh2b2lkKSBDRl9BVkFJTEFCTEUoMTBfMTEsIDlfMCk7CiBKU19FWFBPUlQgdm9pZCBK
U1JlbW90ZUluc3BlY3RvclN0YXJ0KHZvaWQpIENGX0FWQUlMQUJMRSgxMF8xMSwgOV8wKTsKLUpT
X0VYUE9SVCB2b2lkIEpTUmVtb3RlSW5zcGVjdG9yU2V0UGFyZW50UHJvY2Vzc0luZm9ybWF0aW9u
KHBpZF90LCBjb25zdCB1aW50OF90KiBhdWRpdERhdGEsIHNpemVfdCBhdWRpdExlbmd0aCkgQ0Zf
QVZBSUxBQkxFKDEwXzExLCA5XzApOworSlNfRVhQT1JUIHZvaWQgSlNSZW1vdGVJbnNwZWN0b3JT
ZXRQYXJlbnRQcm9jZXNzSW5mb3JtYXRpb24oUHJvY2Vzc0lELCBjb25zdCB1aW50OF90KiBhdWRp
dERhdGEsIHNpemVfdCBhdWRpdExlbmd0aCkgQ0ZfQVZBSUxBQkxFKDEwXzExLCA5XzApOwogCiBK
U19FWFBPUlQgdm9pZCBKU1JlbW90ZUluc3BlY3RvclNldExvZ1RvU3lzdGVtQ29uc29sZShib29s
KSBDRl9BVkFJTEFCTEUoMTBfMTEsIDlfMCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9pbnNwZWN0b3IvcmVtb3RlL1JlbW90ZUluc3BlY3Rvci5oIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2luc3BlY3Rvci9yZW1vdGUvUmVtb3RlSW5zcGVjdG9yLmgKaW5kZXggZDAwZGUy
YjcwM2QuLjZhZTdjMDk1YjM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5z
cGVjdG9yL3JlbW90ZS9SZW1vdGVJbnNwZWN0b3IuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvaW5zcGVjdG9yL3JlbW90ZS9SZW1vdGVJbnNwZWN0b3IuaApAQCAtMzAsNiArMzAsNyBAQAog
I2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KICNpbmNs
dWRlIDx3dGYvTG9jay5oPgorI2luY2x1ZGUgPHd0Zi9Qcm9jZXNzSUQuaD4KICNpbmNsdWRlIDx3
dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogI2lmIFBMQVRGT1JNKENPQ09BKQpAQCAtMTA4LDkgKzEw
OSw5IEBAIHB1YmxpYzoKIAogI2lmIFBMQVRGT1JNKENPQ09BKQogICAgIGJvb2wgaGFzUGFyZW50
UHJvY2Vzc0luZm9ybWF0aW9uKCkgY29uc3QgeyByZXR1cm4gbV9wYXJlbnRQcm9jZXNzSWRlbnRp
ZmllciAhPSAwOyB9Ci0gICAgcGlkX3QgcGFyZW50UHJvY2Vzc0lkZW50aWZpZXIoKSBjb25zdCB7
IHJldHVybiBtX3BhcmVudFByb2Nlc3NJZGVudGlmaWVyOyB9CisgICAgUHJvY2Vzc0lEIHBhcmVu
dFByb2Nlc3NJZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9wYXJlbnRQcm9jZXNzSWRlbnRp
ZmllcjsgfQogICAgIFJldGFpblB0cjxDRkRhdGFSZWY+IHBhcmVudFByb2Nlc3NBdWRpdERhdGEo
KSBjb25zdCB7IHJldHVybiBtX3BhcmVudFByb2Nlc3NBdWRpdERhdGE7IH0KLSAgICB2b2lkIHNl
dFBhcmVudFByb2Nlc3NJbmZvcm1hdGlvbihwaWRfdCwgUmV0YWluUHRyPENGRGF0YVJlZj4gYXVk
aXREYXRhKTsKKyAgICB2b2lkIHNldFBhcmVudFByb2Nlc3NJbmZvcm1hdGlvbihQcm9jZXNzSUQs
IFJldGFpblB0cjxDRkRhdGFSZWY+IGF1ZGl0RGF0YSk7CiAgICAgdm9pZCBzZXRQYXJlbnRQcm9j
ZXNzSW5mb21hdGlvbklzRGVsYXllZCgpOwogI2VuZGlmCiAKQEAgLTIwNyw3ICsyMDgsNyBAQCBw
cml2YXRlOgogICAgIGJvb2wgbV9oYXNBY3RpdmVEZWJ1Z1Nlc3Npb24geyBmYWxzZSB9OwogICAg
IGJvb2wgbV9wdXNoU2NoZWR1bGVkIHsgZmFsc2UgfTsKIAotICAgIHBpZF90IG1fcGFyZW50UHJv
Y2Vzc0lkZW50aWZpZXIgeyAwIH07CisgICAgUHJvY2Vzc0lEIG1fcGFyZW50UHJvY2Vzc0lkZW50
aWZpZXIgeyAwIH07CiAjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgUmV0YWluUHRyPENGRGF0YVJl
Zj4gbV9wYXJlbnRQcm9jZXNzQXVkaXREYXRhOwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V1RGL3d0Zi9Qcm9jZXNzSUQuaCBiL1NvdXJjZS9XVEYvd3RmL1Byb2Nlc3NJRC5oCmluZGV4IGY4
NDcxNmU4ZDkzLi5jY2RjMmUwMDIwOSAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvUHJvY2Vz
c0lELmgKKysrIGIvU291cmNlL1dURi93dGYvUHJvY2Vzc0lELmgKQEAgLTM2LDcgKzM2LDEzIEBA
CiAKIG5hbWVzcGFjZSBXVEYgewogCi1pbmxpbmUgaW50IGdldEN1cnJlbnRQcm9jZXNzSUQoKQor
I2lmIE9TKFdJTkRPV1MpCit1c2luZyBQcm9jZXNzSUQgPSBpbnQ7CisjZWxzZQordXNpbmcgUHJv
Y2Vzc0lEID0gcGlkX3Q7CisjZW5kaWYKKworaW5saW5lIFByb2Nlc3NJRCBnZXRDdXJyZW50UHJv
Y2Vzc0lEKCkKIHsKICNpZiBPUyhXSU5ET1dTKQogICAgIHJldHVybiBHZXRDdXJyZW50UHJvY2Vz
c0lkKCk7CkBAIC00OCw2ICs1NCw3IEBAIGlubGluZSBpbnQgZ2V0Q3VycmVudFByb2Nlc3NJRCgp
CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpnZXRDdXJyZW50UHJvY2Vzc0lEOwor
dXNpbmcgV1RGOjpQcm9jZXNzSUQ7CiAKICNlbmRpZiAvLyBQcm9jZXNzSURfaAogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzQ3JlYXRpb25Q
YXJhbWV0ZXJzLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNz
Q3JlYXRpb25QYXJhbWV0ZXJzLmgKaW5kZXggMWViNzk3OTk2MTguLmQwYTMyZGJiMmYyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzQ3JlYXRp
b25QYXJhbWV0ZXJzLmgKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3Jr
UHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oCkBAIC0yOCw2ICsyOCw3IEBACiAjaW5jbHVkZSAi
QXR0YWNobWVudC5oIgogI2luY2x1ZGUgIkNhY2hlTW9kZWwuaCIKICNpbmNsdWRlICJTYW5kYm94
RXh0ZW5zaW9uLmgiCisjaW5jbHVkZSA8d3RmL1Byb2Nlc3NJRC5oPgogI2luY2x1ZGUgPHd0Zi9W
ZWN0b3IuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIApAQCAtNzgsNyArNzks
NyBAQCBzdHJ1Y3QgTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMgewogICAgIFNlY29u
ZHMgbG9hZFRocm90dGxlTGF0ZW5jeTsKIAogICAgIFZlY3RvcjxTdHJpbmc+IHVybFNjaGVtZXNS
ZWdpc3RlcmVkRm9yQ3VzdG9tUHJvdG9jb2xzOwotICAgIHBpZF90IHByZXNlbnRpbmdBcHBsaWNh
dGlvblBJRCB7IDAgfTsKKyAgICBQcm9jZXNzSUQgcHJlc2VudGluZ0FwcGxpY2F0aW9uUElEIHsg
MCB9OwogCiAjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgU3RyaW5nIHBhcmVudFByb2Nlc3NOYW1l
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFy
YW1ldGVycy5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1l
dGVycy5oCmluZGV4IDU2MTg1YWJlNzZiLi4wZTIzYzRiNmQ4OCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oCisrKyBiL1NvdXJj
ZS9XZWJLaXQvU2hhcmVkL1dlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaApAQCAtMzAsNiAr
MzAsNyBAQAogI2luY2x1ZGUgIlRleHRDaGVja2VyU3RhdGUuaCIKICNpbmNsdWRlICJVc2VyRGF0
YS5oIgogI2luY2x1ZGUgPHBhbC9TZXNzaW9uSUQuaD4KKyNpbmNsdWRlIDx3dGYvUHJvY2Vzc0lE
Lmg+CiAjaW5jbHVkZSA8d3RmL1JldGFpblB0ci5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4K
ICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdIYXNoLmg+CkBAIC0xMzYsNyArMTM3LDcgQEAgc3Ry
dWN0IFdlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMgewogICAgIFN0cmluZyB1aVByb2Nlc3NC
dW5kbGVJZGVudGlmaWVyOwogI2VuZGlmCiAKLSAgICBwaWRfdCBwcmVzZW50aW5nQXBwbGljYXRp
b25QSUQgeyAwIH07CisgICAgUHJvY2Vzc0lEIHByZXNlbnRpbmdBcHBsaWNhdGlvblBJRCB7IDAg
fTsKIAogI2lmIFBMQVRGT1JNKENPQ09BKQogICAgIFdlYkNvcmU6Ok1hY2hTZW5kUmlnaHQgYWNj
ZWxlcmF0ZWRDb21wb3NpdGluZ1BvcnQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9BUEkvQVBJUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmggYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9BUEkvQVBJUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmgKaW5kZXggOTU0NDg0Nzkz
YjQuLmEwNmFhYTJkOWU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkv
QVBJUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvQVBJL0FQSVByb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5oCkBAIC0xMzksOCArMTM5LDggQEAg
cHVibGljOgogICAgIHZvaWQgc2V0Q1REYXRhQ29ubmVjdGlvblNlcnZpY2VUeXBlKGNvbnN0IFdU
Rjo6U3RyaW5nJiBjdERhdGFDb25uZWN0aW9uU2VydmljZVR5cGUpIHsgbV9jdERhdGFDb25uZWN0
aW9uU2VydmljZVR5cGUgPSBjdERhdGFDb25uZWN0aW9uU2VydmljZVR5cGU7IH0KICNlbmRpZgog
Ci0gICAgcGlkX3QgcHJlc2VudGluZ0FwcGxpY2F0aW9uUElEKCkgY29uc3QgeyByZXR1cm4gbV9w
cmVzZW50aW5nQXBwbGljYXRpb25QSUQ7IH0KLSAgICB2b2lkIHNldFByZXNlbnRpbmdBcHBsaWNh
dGlvblBJRChwaWRfdCBwaWQpIHsgbV9wcmVzZW50aW5nQXBwbGljYXRpb25QSUQgPSBwaWQ7IH0K
KyAgICBQcm9jZXNzSUQgcHJlc2VudGluZ0FwcGxpY2F0aW9uUElEKCkgY29uc3QgeyByZXR1cm4g
bV9wcmVzZW50aW5nQXBwbGljYXRpb25QSUQ7IH0KKyAgICB2b2lkIHNldFByZXNlbnRpbmdBcHBs
aWNhdGlvblBJRChQcm9jZXNzSUQgcGlkKSB7IG1fcHJlc2VudGluZ0FwcGxpY2F0aW9uUElEID0g
cGlkOyB9CiAKIHByaXZhdGU6CiAgICAgYm9vbCBtX3Nob3VsZEhhdmVMZWdhY3lEYXRhU3RvcmUg
eyBmYWxzZSB9OwpAQCAtMTc0LDcgKzE3NCw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBtX2Fsd2F5
c1J1bnNBdEJhY2tncm91bmRQcmlvcml0eSB7IGZhbHNlIH07CiAgICAgYm9vbCBtX3Nob3VsZFRh
a2VVSUJhY2tncm91bmRBc3NlcnRpb24geyB0cnVlIH07CiAgICAgYm9vbCBtX3Nob3VsZENhcHR1
cmVBdWRpb0luVUlQcm9jZXNzIHsgZmFsc2UgfTsKLSAgICBwaWRfdCBtX3ByZXNlbnRpbmdBcHBs
aWNhdGlvblBJRCB7IGdldEN1cnJlbnRQcm9jZXNzSUQoKSB9OworICAgIFByb2Nlc3NJRCBtX3By
ZXNlbnRpbmdBcHBsaWNhdGlvblBJRCB7IGdldEN1cnJlbnRQcm9jZXNzSUQoKSB9OwogI2lmIFBM
QVRGT1JNKElPUykKICAgICBXVEY6OlN0cmluZyBtX2N0RGF0YUNvbm5lY3Rpb25TZXJ2aWNlVHlw
ZTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tD
b250ZXh0LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dC5jcHAK
aW5kZXggMDVhNGVmOTRjYTkuLjc4MzM4ZWQ2NTc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL0FQSS9DL1dLQ29udGV4dC5jcHAKQEAgLTU5OSwxMiArNTk5LDEyIEBAIHZvaWQgV0tDb250
ZXh0VGVybWluYXRlTmV0d29ya1Byb2Nlc3MoV0tDb250ZXh0UmVmIGNvbnRleHQpCiAgICAgdG9J
bXBsKGNvbnRleHQpLT50ZXJtaW5hdGVOZXR3b3JrUHJvY2VzcygpOwogfQogCi1waWRfdCBXS0Nv
bnRleHRHZXROZXR3b3JrUHJvY2Vzc0lkZW50aWZpZXIoV0tDb250ZXh0UmVmIGNvbnRleHRSZWYp
CitQcm9jZXNzSUQgV0tDb250ZXh0R2V0TmV0d29ya1Byb2Nlc3NJZGVudGlmaWVyKFdLQ29udGV4
dFJlZiBjb250ZXh0UmVmKQogewogICAgIHJldHVybiB0b0ltcGwoY29udGV4dFJlZiktPm5ldHdv
cmtQcm9jZXNzSWRlbnRpZmllcigpOwogfQogCi1waWRfdCBXS0NvbnRleHRHZXREYXRhYmFzZVBy
b2Nlc3NJZGVudGlmaWVyKFdLQ29udGV4dFJlZiBjb250ZXh0UmVmKQorUHJvY2Vzc0lEIFdLQ29u
dGV4dEdldERhdGFiYXNlUHJvY2Vzc0lkZW50aWZpZXIoV0tDb250ZXh0UmVmIGNvbnRleHRSZWYp
CiB7CiAgICAgcmV0dXJuIHRvSW1wbChjb250ZXh0UmVmKS0+c3RvcmFnZVByb2Nlc3NJZGVudGlm
aWVyKCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS0Nv
bnRleHRQcml2YXRlLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHRQ
cml2YXRlLmgKaW5kZXggZmU4Nzg4ZDM0MmIuLjMwYTJmYWY0ZmEzIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHRQcml2YXRlLmgKKysrIGIvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tDb250ZXh0UHJpdmF0ZS5oCkBAIC0yOSw3ICsyOSwx
MSBAQAogI2luY2x1ZGUgPFdlYktpdC9XS0Jhc2UuaD4KICNpbmNsdWRlIDxXZWJLaXQvV0tDb250
ZXh0Lmg+CiAKKyNpZiBkZWZpbmVkKFdJTjMyKSB8fCBkZWZpbmVkKF9XSU4zMikKK3R5cGVkZWYg
aW50IHBpZF90OworI2Vsc2UKICNpbmNsdWRlIDx1bmlzdGQuaD4KKyNlbmRpZgogCiAjaWZkZWYg
X19jcGx1c3BsdXMKIGV4dGVybiAiQyIgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvQVBJL0MvV0tQYWdlLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dL
UGFnZS5jcHAKaW5kZXggMDY3YzBlYzk0YzAuLjA0MThjZTgwNWZiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0FQSS9DL1dLUGFnZS5jcHAKQEAgLTI3NDEsNyArMjc0MSw3IEBAIHZvaWQgV0tQ
YWdlU2V0SWdub3Jlc1ZpZXdwb3J0U2NhbGVMaW1pdHMoV0tQYWdlUmVmIHBhZ2UsIGJvb2wgaWdu
b3Jlc1ZpZXdwb3J0U2NhCiAjZW5kaWYKIH0KIAotcGlkX3QgV0tQYWdlR2V0UHJvY2Vzc0lkZW50
aWZpZXIoV0tQYWdlUmVmIHBhZ2UpCitQcm9jZXNzSUQgV0tQYWdlR2V0UHJvY2Vzc0lkZW50aWZp
ZXIoV0tQYWdlUmVmIHBhZ2UpCiB7CiAgICAgcmV0dXJuIHRvSW1wbChwYWdlKS0+cHJvY2Vzc0lk
ZW50aWZpZXIoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9D
L1dLUGFnZVByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLUGFnZVBy
aXZhdGUuaAppbmRleCA4NzE3NDY4ODc2MS4uYTBlYjE1YzJlMjQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLUGFnZVByaXZhdGUuaAorKysgYi9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2VQcml2YXRlLmgKQEAgLTI5LDcgKzI5LDExIEBACiAj
aW5jbHVkZSA8V2ViS2l0L1dLQmFzZS5oPgogI2luY2x1ZGUgPFdlYktpdC9XS1BhZ2UuaD4KIAor
I2lmIGRlZmluZWQoV0lOMzIpIHx8IGRlZmluZWQoX1dJTjMyKQordHlwZWRlZiBpbnQgcGlkX3Q7
CisjZWxzZQogI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2VuZGlmCiAKICNpZmRlZiBfX2NwbHVzcGx1
cwogZXh0ZXJuICJDIiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9DaGls
ZFByb2Nlc3NQcm94eS5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ2hpbGRQcm9jZXNzUHJv
eHkuaAppbmRleCBjNjNiOWJlMTQzYy4uN2IzMWM4ZTNjNGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL0NoaWxkUHJvY2Vzc1Byb3h5LmgKKysrIGIvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvQ2hpbGRQcm9jZXNzUHJveHkuaApAQCAtMjksNiArMjksNyBAQAogI2luY2x1ZGUg
Ik1lc3NhZ2VSZWNlaXZlck1hcC5oIgogI2luY2x1ZGUgIlByb2Nlc3NMYXVuY2hlci5oIgogCisj
aW5jbHVkZSA8d3RmL1Byb2Nlc3NJRC5oPgogI2luY2x1ZGUgPHd0Zi9TeXN0ZW1UcmFjaW5nLmg+
CiAjaW5jbHVkZSA8d3RmL1RocmVhZFNhZmVSZWZDb3VudGVkLmg+CiAKQEAgLTcyLDcgKzczLDcg
QEAgcHVibGljOgogICAgIH07CiAgICAgU3RhdGUgc3RhdGUoKSBjb25zdDsKIAotICAgIHBpZF90
IHByb2Nlc3NJZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9wcm9jZXNzTGF1bmNoZXIgPyBt
X3Byb2Nlc3NMYXVuY2hlci0+cHJvY2Vzc0lkZW50aWZpZXIoKSA6IDA7IH0KKyAgICBQcm9jZXNz
SUQgcHJvY2Vzc0lkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX3Byb2Nlc3NMYXVuY2hlciA/
IG1fcHJvY2Vzc0xhdW5jaGVyLT5wcm9jZXNzSWRlbnRpZmllcigpIDogMDsgfQogCiAgICAgYm9v
bCBjYW5TZW5kTWVzc2FnZSgpIGNvbnN0IHsgcmV0dXJuIHN0YXRlKCkgIT0gU3RhdGU6OlRlcm1p
bmF0ZWQ7fQogICAgIGJvb2wgc2VuZE1lc3NhZ2Uoc3RkOjp1bmlxdWVfcHRyPElQQzo6RW5jb2Rl
cj4sIE9wdGlvblNldDxJUEM6OlNlbmRPcHRpb24+KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0xhdW5jaGVyL1Byb2Nlc3NMYXVuY2hlci5jcHAgYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9MYXVuY2hlci9Qcm9jZXNzTGF1bmNoZXIuY3BwCmluZGV4IDA4OWMxN2MzMzNm
Li5mMmY3MmFjYzNmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvTGF1bmNo
ZXIvUHJvY2Vzc0xhdW5jaGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9MYXVu
Y2hlci9Qcm9jZXNzTGF1bmNoZXIuY3BwCkBAIC00MSw3ICs0MSw3IEBAIFByb2Nlc3NMYXVuY2hl
cjo6UHJvY2Vzc0xhdW5jaGVyKENsaWVudCogY2xpZW50LCBjb25zdCBMYXVuY2hPcHRpb25zJiBs
YXVuY2hPcHRpCiAgICAgbGF1bmNoUHJvY2VzcygpOwogfQogCi12b2lkIFByb2Nlc3NMYXVuY2hl
cjo6ZGlkRmluaXNoTGF1bmNoaW5nUHJvY2VzcyhwaWRfdCBwcm9jZXNzSWRlbnRpZmllciwgSVBD
OjpDb25uZWN0aW9uOjpJZGVudGlmaWVyIGlkZW50aWZpZXIpCit2b2lkIFByb2Nlc3NMYXVuY2hl
cjo6ZGlkRmluaXNoTGF1bmNoaW5nUHJvY2VzcyhQcm9jZXNzSUQgcHJvY2Vzc0lkZW50aWZpZXIs
IElQQzo6Q29ubmVjdGlvbjo6SWRlbnRpZmllciBpZGVudGlmaWVyKQogewogICAgIG1fcHJvY2Vz
c0lkZW50aWZpZXIgPSBwcm9jZXNzSWRlbnRpZmllcjsKICAgICBtX2lzTGF1bmNoaW5nID0gZmFs
c2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9MYXVuY2hlci9Qcm9jZXNz
TGF1bmNoZXIuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0xhdW5jaGVyL1Byb2Nlc3NMYXVu
Y2hlci5oCmluZGV4IDY3OThmYzlmOWQwLi4wMjJhYjZhNzc0MiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvTGF1bmNoZXIvUHJvY2Vzc0xhdW5jaGVyLmgKKysrIGIvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvTGF1bmNoZXIvUHJvY2Vzc0xhdW5jaGVyLmgKQEAgLTI3LDYgKzI3
LDcgQEAKIAogI2luY2x1ZGUgIkNvbm5lY3Rpb24uaCIKICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5o
PgorI2luY2x1ZGUgPHd0Zi9Qcm9jZXNzSUQuaD4KICNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CiAj
aW5jbHVkZSA8d3RmL1RocmVhZGluZy5oPgogI2luY2x1ZGUgPHd0Zi9XZWFrUHRyLmg+CkBAIC02
OSw3ICs3MCw3IEBAIHB1YmxpYzoKICAgICB9CiAKICAgICBib29sIGlzTGF1bmNoaW5nKCkgY29u
c3QgeyByZXR1cm4gbV9pc0xhdW5jaGluZzsgfQotICAgIHBpZF90IHByb2Nlc3NJZGVudGlmaWVy
KCkgY29uc3QgeyByZXR1cm4gbV9wcm9jZXNzSWRlbnRpZmllcjsgfQorICAgIFByb2Nlc3NJRCBw
cm9jZXNzSWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1fcHJvY2Vzc0lkZW50aWZpZXI7IH0K
IAogICAgIHZvaWQgdGVybWluYXRlUHJvY2VzcygpOwogICAgIHZvaWQgaW52YWxpZGF0ZSgpOwpA
QCAtNzgsNyArNzksNyBAQCBwcml2YXRlOgogICAgIFByb2Nlc3NMYXVuY2hlcihDbGllbnQqLCBj
b25zdCBMYXVuY2hPcHRpb25zJiBsYXVuY2hPcHRpb25zKTsKIAogICAgIHZvaWQgbGF1bmNoUHJv
Y2VzcygpOwotICAgIHZvaWQgZGlkRmluaXNoTGF1bmNoaW5nUHJvY2VzcyhwaWRfdCwgSVBDOjpD
b25uZWN0aW9uOjpJZGVudGlmaWVyKTsKKyAgICB2b2lkIGRpZEZpbmlzaExhdW5jaGluZ1Byb2Nl
c3MoUHJvY2Vzc0lELCBJUEM6OkNvbm5lY3Rpb246OklkZW50aWZpZXIpOwogCiAgICAgdm9pZCBw
bGF0Zm9ybUludmFsaWRhdGUoKTsKIApAQCAtOTEsNyArOTIsNyBAQCBwcml2YXRlOgogICAgIFdl
YWtQdHJGYWN0b3J5PFByb2Nlc3NMYXVuY2hlcj4gbV93ZWFrUHRyRmFjdG9yeTsKICAgICBjb25z
dCBMYXVuY2hPcHRpb25zIG1fbGF1bmNoT3B0aW9uczsKICAgICBib29sIG1faXNMYXVuY2hpbmc7
Ci0gICAgcGlkX3QgbV9wcm9jZXNzSWRlbnRpZmllcjsKKyAgICBQcm9jZXNzSUQgbV9wcm9jZXNz
SWRlbnRpZmllcjsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc0Fzc2VydGlvbi5jcHAgYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmNwcAppbmRleCBhNjZlMTIyNGYzNC4uOTJlM2Q4
YzA3NTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NBc3NlcnRp
b24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NBc3NlcnRpb24uY3Bw
CkBAIC0zMCw3ICszMCw3IEBACiAKIG5hbWVzcGFjZSBXZWJLaXQgewogCi1Qcm9jZXNzQXNzZXJ0
aW9uOjpQcm9jZXNzQXNzZXJ0aW9uKHBpZF90LCBBc3NlcnRpb25TdGF0ZSBhc3NlcnRpb25TdGF0
ZSwgRnVuY3Rpb248dm9pZCgpPiYmKQorUHJvY2Vzc0Fzc2VydGlvbjo6UHJvY2Vzc0Fzc2VydGlv
bihQcm9jZXNzSUQsIEFzc2VydGlvblN0YXRlIGFzc2VydGlvblN0YXRlLCBGdW5jdGlvbjx2b2lk
KCk+JiYpCiAgICAgOiBtX2Fzc2VydGlvblN0YXRlKGFzc2VydGlvblN0YXRlKQogewogfQpAQCAt
NDcsNyArNDcsNyBAQCB2b2lkIFByb2Nlc3NBc3NlcnRpb246OnNldFN0YXRlKEFzc2VydGlvblN0
YXRlIGFzc2VydGlvblN0YXRlKQogICAgIG1fYXNzZXJ0aW9uU3RhdGUgPSBhc3NlcnRpb25TdGF0
ZTsKIH0KIAotUHJvY2Vzc0FuZFVJQXNzZXJ0aW9uOjpQcm9jZXNzQW5kVUlBc3NlcnRpb24ocGlk
X3QgcGlkLCBBc3NlcnRpb25TdGF0ZSBhc3NlcnRpb25TdGF0ZSkKK1Byb2Nlc3NBbmRVSUFzc2Vy
dGlvbjo6UHJvY2Vzc0FuZFVJQXNzZXJ0aW9uKFByb2Nlc3NJRCBwaWQsIEFzc2VydGlvblN0YXRl
IGFzc2VydGlvblN0YXRlKQogICAgIDogUHJvY2Vzc0Fzc2VydGlvbihwaWQsIGFzc2VydGlvblN0
YXRlKQogewogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc0Fz
c2VydGlvbi5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc0Fzc2VydGlvbi5oCmlu
ZGV4IGU1ZTNhM2I2MTQ5Li4yMDMyMDAwNjU1NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvUHJvY2Vzc0Fzc2VydGlvbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1Byb2Nlc3NBc3NlcnRpb24uaApAQCAtMjgsNiArMjgsNyBAQAogCiAjaW5jbHVkZSA8dW5pc3Rk
Lmg+CiAjaW5jbHVkZSA8d3RmL0Z1bmN0aW9uLmg+CisjaW5jbHVkZSA8d3RmL1Byb2Nlc3NJRC5o
PgogCiAjaWYgUExBVEZPUk0oSU9TKSAmJiAhUExBVEZPUk0oSU9TX1NJTVVMQVRPUikKICNpbmNs
dWRlIDx3dGYvUmV0YWluUHRyLmg+CkBAIC01MSw3ICs1Miw3IEBAIHB1YmxpYzoKIAogY2xhc3Mg
UHJvY2Vzc0Fzc2VydGlvbiB7CiBwdWJsaWM6Ci0gICAgUHJvY2Vzc0Fzc2VydGlvbihwaWRfdCwg
QXNzZXJ0aW9uU3RhdGUsIEZ1bmN0aW9uPHZvaWQoKT4mJiBpbnZhbGlkYXRpb25DYWxsYmFjayA9
IHsgfSk7CisgICAgUHJvY2Vzc0Fzc2VydGlvbihQcm9jZXNzSUQsIEFzc2VydGlvblN0YXRlLCBG
dW5jdGlvbjx2b2lkKCk+JiYgaW52YWxpZGF0aW9uQ2FsbGJhY2sgPSB7IH0pOwogICAgIHZpcnR1
YWwgflByb2Nlc3NBc3NlcnRpb24oKTsKIAogICAgIHZpcnR1YWwgdm9pZCBzZXRDbGllbnQoUHJv
Y2Vzc0Fzc2VydGlvbkNsaWVudCYgY2xpZW50KSB7IG1fY2xpZW50ID0gJmNsaWVudDsgfQpAQCAt
ODIsNyArODMsNyBAQCBwcml2YXRlOgogICAgIAogY2xhc3MgUHJvY2Vzc0FuZFVJQXNzZXJ0aW9u
IGZpbmFsIDogcHVibGljIFByb2Nlc3NBc3NlcnRpb24gewogcHVibGljOgotICAgIFByb2Nlc3NB
bmRVSUFzc2VydGlvbihwaWRfdCwgQXNzZXJ0aW9uU3RhdGUpOworICAgIFByb2Nlc3NBbmRVSUFz
c2VydGlvbihQcm9jZXNzSUQsIEFzc2VydGlvblN0YXRlKTsKICAgICB+UHJvY2Vzc0FuZFVJQXNz
ZXJ0aW9uKCk7CiAKICAgICB2b2lkIHNldENsaWVudChQcm9jZXNzQXNzZXJ0aW9uQ2xpZW50Jikg
ZmluYWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNzVGhyb3R0
bGVyLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NUaHJvdHRsZXIuY3BwCmlu
ZGV4IGVlZDNlNjAxYWZlLi44NmE4ZmFlZGEzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvUHJvY2Vzc1Rocm90dGxlci5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvUHJvY2Vzc1Rocm90dGxlci5jcHAKQEAgLTkxLDcgKzkxLDcgQEAgdm9pZCBQcm9jZXNzVGhy
b3R0bGVyOjp1cGRhdGVBc3NlcnRpb24oKQogICAgIHVwZGF0ZUFzc2VydGlvbk5vdygpOwogfQog
Ci12b2lkIFByb2Nlc3NUaHJvdHRsZXI6OmRpZENvbm5lY3RUb1Byb2Nlc3MocGlkX3QgcGlkKQor
dm9pZCBQcm9jZXNzVGhyb3R0bGVyOjpkaWRDb25uZWN0VG9Qcm9jZXNzKFByb2Nlc3NJRCBwaWQp
CiB7CiAgICAgUkVMRUFTRV9MT0coUHJvY2Vzc1N1c3BlbnNpb24sICIlcCAtIFByb2Nlc3NUaHJv
dHRsZXI6OmRpZENvbm5lY3RUb1Byb2Nlc3MoJWQpIiwgdGhpcywgcGlkKTsKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc1Rocm90dGxlci5oIGIvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvUHJvY2Vzc1Rocm90dGxlci5oCmluZGV4IGNiMWE0ZjI2ZWMzLi43ZDkw
ZGI2NjQzZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc1Rocm90
dGxlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NUaHJvdHRsZXIuaApA
QCAtMjgsNiArMjgsNyBAQAogCiAjaW5jbHVkZSAiUHJvY2Vzc0Fzc2VydGlvbi5oIgogCisjaW5j
bHVkZSA8d3RmL1Byb2Nlc3NJRC5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVyLmg+CiAjaW5j
bHVkZSA8d3RmL1J1bkxvb3AuaD4KICNpbmNsdWRlIDx3dGYvV2Vha1B0ci5oPgpAQCAtNTYsNyAr
NTcsNyBAQCBwdWJsaWM6CiAgICAgaW5saW5lIEZvcmVncm91bmRBY3Rpdml0eVRva2VuIGZvcmVn
cm91bmRBY3Rpdml0eVRva2VuKCkgY29uc3Q7CiAgICAgaW5saW5lIEJhY2tncm91bmRBY3Rpdml0
eVRva2VuIGJhY2tncm91bmRBY3Rpdml0eVRva2VuKCkgY29uc3Q7CiAgICAgCi0gICAgdm9pZCBk
aWRDb25uZWN0VG9Qcm9jZXNzKHBpZF90KTsKKyAgICB2b2lkIGRpZENvbm5lY3RUb1Byb2Nlc3Mo
UHJvY2Vzc0lEKTsKICAgICB2b2lkIHByb2Nlc3NSZWFkeVRvU3VzcGVuZCgpOwogICAgIHZvaWQg
ZGlkQ2FuY2VsUHJvY2Vzc1N1c3BlbnNpb24oKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dl
YlBhZ2VQcm94eS5jcHAKaW5kZXggOWNjNWVmYTYzNzIuLjcyZjA0NmQwOGI1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKQEAgLTQ0MSw3ICs0NDEsNyBAQCBjb25z
dCBBUEk6OlBhZ2VDb25maWd1cmF0aW9uJiBXZWJQYWdlUHJveHk6OmNvbmZpZ3VyYXRpb24oKSBj
b25zdAogICAgIHJldHVybiBtX2NvbmZpZ3VyYXRpb24uZ2V0KCk7CiB9CiAKLXBpZF90IFdlYlBh
Z2VQcm94eTo6cHJvY2Vzc0lkZW50aWZpZXIoKSBjb25zdAorUHJvY2Vzc0lEIFdlYlBhZ2VQcm94
eTo6cHJvY2Vzc0lkZW50aWZpZXIoKSBjb25zdAogewogICAgIGlmIChtX2lzQ2xvc2VkKQogICAg
ICAgICByZXR1cm4gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBh
Z2VQcm94eS5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKaW5kZXgg
ZTQzMzdiY2ZlZDEuLmQ4ZTgzMjVkOTg1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJQYWdlUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdl
UHJveHkuaApAQCAtODQsNiArODQsNyBAQAogI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CiAjaW5j
bHVkZSA8d3RmL0hhc2hTZXQuaD4KICNpbmNsdWRlIDx3dGYvTW9ub3RvbmljVGltZS5oPgorI2lu
Y2x1ZGUgPHd0Zi9Qcm9jZXNzSUQuaD4KICNpbmNsdWRlIDx3dGYvUmVmLmg+CiAjaW5jbHVkZSA8
d3RmL1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KQEAgLTg3NSw3ICs4NzYsNyBA
QCBwdWJsaWM6CiAjZW5kaWYKIAogICAgIFdlYlByb2Nlc3NQcm94eSYgcHJvY2VzcygpIHsgcmV0
dXJuIG1fcHJvY2VzczsgfQotICAgIHBpZF90IHByb2Nlc3NJZGVudGlmaWVyKCkgY29uc3Q7Cisg
ICAgUHJvY2Vzc0lEIHByb2Nlc3NJZGVudGlmaWVyKCkgY29uc3Q7CiAKICAgICBXZWJQcmVmZXJl
bmNlcyYgcHJlZmVyZW5jZXMoKSB7IHJldHVybiBtX3ByZWZlcmVuY2VzOyB9CiAgICAgdm9pZCBz
ZXRQcmVmZXJlbmNlcyhXZWJQcmVmZXJlbmNlcyYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
V2ViUHJvY2Vzc1Bvb2wuY3BwCmluZGV4IDk4ZjY4YTdkNDc5Li43ZjM0YWY4YzQzOCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcApAQCAtMTA4Myw3ICsxMDgz
LDcgQEAgdm9pZCBXZWJQcm9jZXNzUG9vbDo6cmVmcmVzaFBsdWdpbnMoKQogCiAjZW5kaWYgLy8g
RU5BQkxFKE5FVFNDQVBFX1BMVUdJTl9BUEkpCiAKLXBpZF90IFdlYlByb2Nlc3NQb29sOjpuZXR3
b3JrUHJvY2Vzc0lkZW50aWZpZXIoKQorUHJvY2Vzc0lEIFdlYlByb2Nlc3NQb29sOjpuZXR3b3Jr
UHJvY2Vzc0lkZW50aWZpZXIoKQogewogICAgIGlmICghbV9uZXR3b3JrUHJvY2VzcykKICAgICAg
ICAgcmV0dXJuIDA7CkBAIC0xMDkxLDcgKzEwOTEsNyBAQCBwaWRfdCBXZWJQcm9jZXNzUG9vbDo6
bmV0d29ya1Byb2Nlc3NJZGVudGlmaWVyKCkKICAgICByZXR1cm4gbV9uZXR3b3JrUHJvY2Vzcy0+
cHJvY2Vzc0lkZW50aWZpZXIoKTsKIH0KIAotcGlkX3QgV2ViUHJvY2Vzc1Bvb2w6OnN0b3JhZ2VQ
cm9jZXNzSWRlbnRpZmllcigpCitQcm9jZXNzSUQgV2ViUHJvY2Vzc1Bvb2w6OnN0b3JhZ2VQcm9j
ZXNzSWRlbnRpZmllcigpCiB7CiAgICAgaWYgKCFtX3N0b3JhZ2VQcm9jZXNzKQogICAgICAgICBy
ZXR1cm4gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQ
b29sLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5oCmluZGV4IDI0
ZWJhYTE4M2Q4Li5lMTlmNmRmMmFmOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvV2ViUHJvY2Vzc1Bvb2wuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9j
ZXNzUG9vbC5oCkBAIC00OSw2ICs0OSw3IEBACiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KICNp
bmNsdWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+CisjaW5jbHVk
ZSA8d3RmL1Byb2Nlc3NJRC5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVyLmg+CiAjaW5jbHVk
ZSA8d3RmL1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0hhc2guaD4KQEAgLTE5
OSw4ICsyMDAsOCBAQCBwdWJsaWM6CiAgICAgY29uc3QgSGFzaE1hcDxTdHJpbmcsIEhhc2hNYXA8
U3RyaW5nLCBIYXNoTWFwPFN0cmluZywgdWludDhfdD4+PiYgcGx1Z2luTG9hZENsaWVudFBvbGlj
aWVzKCkgY29uc3QgeyByZXR1cm4gbV9wbHVnaW5Mb2FkQ2xpZW50UG9saWNpZXM7IH0KICNlbmRp
ZgogCi0gICAgcGlkX3QgbmV0d29ya1Byb2Nlc3NJZGVudGlmaWVyKCk7Ci0gICAgcGlkX3Qgc3Rv
cmFnZVByb2Nlc3NJZGVudGlmaWVyKCk7CisgICAgUHJvY2Vzc0lEIG5ldHdvcmtQcm9jZXNzSWRl
bnRpZmllcigpOworICAgIFByb2Nlc3NJRCBzdG9yYWdlUHJvY2Vzc0lkZW50aWZpZXIoKTsKIAog
ICAgIHZvaWQgc2V0QWx3YXlzVXNlc0NvbXBsZXhUZXh0Q29kZVBhdGgoYm9vbCk7CiAgICAgdm9p
ZCBzZXRTaG91bGRVc2VGb250U21vb3RoaW5nKGJvb2wpOwo=
</data>
<flag name="review"
          id="341025"
          type_id="1"
          status="-"
          setter="ap"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>321104</attachid>
            <date>2017-09-18 10:16:10 -0700</date>
            <delta_ts>2017-09-19 14:43:12 -0700</delta_ts>
            <desc>Test patch for ews on adding process identifier alias</desc>
            <filename>pid_t-test.7.diff</filename>
            <type>text/plain</type>
            <size>17394</size>
            <attacher name="Stephan Szabo">stephan.szabo</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNSZW1vdGVJbnNwZWN0b3Iu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1JlbW90ZUluc3BlY3Rvci5jcHAKaW5k
ZXggM2JlNjFkMDkyNzIuLjk2NzJlZjAyMTQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQVBJL0pTUmVtb3RlSW5zcGVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQVBJL0pTUmVtb3RlSW5zcGVjdG9yLmNwcApAQCAtMjcsNiArMjcsNyBAQAogI2luY2x1ZGUg
IkpTUmVtb3RlSW5zcGVjdG9yLmgiCiAKICNpbmNsdWRlICJKU0dsb2JhbE9iamVjdENvbnNvbGVD
bGllbnQuaCIKKyNpbmNsdWRlIDx3dGYvUHJvY2Vzc0lELmg+CiAKICNpZiBFTkFCTEUoUkVNT1RF
X0lOU1BFQ1RPUikKICNpbmNsdWRlICJSZW1vdGVJbnNwZWN0b3IuaCIKQEAgLTUwLDcgKzUxLDcg
QEAgdm9pZCBKU1JlbW90ZUluc3BlY3RvclN0YXJ0KHZvaWQpCiAjZW5kaWYKIH0KIAotdm9pZCBK
U1JlbW90ZUluc3BlY3RvclNldFBhcmVudFByb2Nlc3NJbmZvcm1hdGlvbihwaWRfdCBwaWQsIGNv
bnN0IHVpbnQ4X3QqIGF1ZGl0RGF0YSwgc2l6ZV90IGF1ZGl0TGVuZ3RoKQordm9pZCBKU1JlbW90
ZUluc3BlY3RvclNldFBhcmVudFByb2Nlc3NJbmZvcm1hdGlvbihQcm9jZXNzSUQgcGlkLCBjb25z
dCB1aW50OF90KiBhdWRpdERhdGEsIHNpemVfdCBhdWRpdExlbmd0aCkKIHsKICNpZiBFTkFCTEUo
UkVNT1RFX0lOU1BFQ1RPUikgJiYgUExBVEZPUk0oQ09DT0EpCiAgICAgUmV0YWluUHRyPENGRGF0
YVJlZj4gYXVkaXREYXRhUmVmID0gYWRvcHRDRihDRkRhdGFDcmVhdGUoa0NGQWxsb2NhdG9yRGVm
YXVsdCwgYXVkaXREYXRhLCBhdWRpdExlbmd0aCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL0FQSS9KU1JlbW90ZUluc3BlY3Rvci5oIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L0FQSS9KU1JlbW90ZUluc3BlY3Rvci5oCmluZGV4IDRmODY1MTAyOTk4Li5hYTc2YzMzMmYzMiAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1JlbW90ZUluc3BlY3Rvci5o
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNSZW1vdGVJbnNwZWN0b3IuaApAQCAt
MjksNyArMjksMTEgQEAKICNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9KU0Jhc2UuaD4KICNpbmNs
dWRlIDxKYXZhU2NyaXB0Q29yZS9XZWJLaXRBdmFpbGFiaWxpdHkuaD4KIAorI2lmIGRlZmluZWQo
V0lOMzIpIHx8IGRlZmluZWQoX1dJTjMyKQordHlwZWRlZiBpbnQgcGlkX3Q7CisjZWxzZQogI2lu
Y2x1ZGUgPHVuaXN0ZC5oPgorI2VuZGlmCiAKICNpZmRlZiBfX2NwbHVzcGx1cwogZXh0ZXJuICJD
IiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3JlbW90ZS9S
ZW1vdGVJbnNwZWN0b3IuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcmVtb3Rl
L1JlbW90ZUluc3BlY3Rvci5oCmluZGV4IGQwMGRlMmI3MDNkLi42YWU3YzA5NWIzOSAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9yZW1vdGUvUmVtb3RlSW5zcGVj
dG9yLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9yZW1vdGUvUmVtb3Rl
SW5zcGVjdG9yLmgKQEAgLTMwLDYgKzMwLDcgQEAKICNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgog
I2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CiAjaW5jbHVkZSA8d3RmL0xvY2suaD4KKyNpbmNsdWRl
IDx3dGYvUHJvY2Vzc0lELmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKICNp
ZiBQTEFURk9STShDT0NPQSkKQEAgLTEwOCw5ICsxMDksOSBAQCBwdWJsaWM6CiAKICNpZiBQTEFU
Rk9STShDT0NPQSkKICAgICBib29sIGhhc1BhcmVudFByb2Nlc3NJbmZvcm1hdGlvbigpIGNvbnN0
IHsgcmV0dXJuIG1fcGFyZW50UHJvY2Vzc0lkZW50aWZpZXIgIT0gMDsgfQotICAgIHBpZF90IHBh
cmVudFByb2Nlc3NJZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9wYXJlbnRQcm9jZXNzSWRl
bnRpZmllcjsgfQorICAgIFByb2Nlc3NJRCBwYXJlbnRQcm9jZXNzSWRlbnRpZmllcigpIGNvbnN0
IHsgcmV0dXJuIG1fcGFyZW50UHJvY2Vzc0lkZW50aWZpZXI7IH0KICAgICBSZXRhaW5QdHI8Q0ZE
YXRhUmVmPiBwYXJlbnRQcm9jZXNzQXVkaXREYXRhKCkgY29uc3QgeyByZXR1cm4gbV9wYXJlbnRQ
cm9jZXNzQXVkaXREYXRhOyB9Ci0gICAgdm9pZCBzZXRQYXJlbnRQcm9jZXNzSW5mb3JtYXRpb24o
cGlkX3QsIFJldGFpblB0cjxDRkRhdGFSZWY+IGF1ZGl0RGF0YSk7CisgICAgdm9pZCBzZXRQYXJl
bnRQcm9jZXNzSW5mb3JtYXRpb24oUHJvY2Vzc0lELCBSZXRhaW5QdHI8Q0ZEYXRhUmVmPiBhdWRp
dERhdGEpOwogICAgIHZvaWQgc2V0UGFyZW50UHJvY2Vzc0luZm9tYXRpb25Jc0RlbGF5ZWQoKTsK
ICNlbmRpZgogCkBAIC0yMDcsNyArMjA4LDcgQEAgcHJpdmF0ZToKICAgICBib29sIG1faGFzQWN0
aXZlRGVidWdTZXNzaW9uIHsgZmFsc2UgfTsKICAgICBib29sIG1fcHVzaFNjaGVkdWxlZCB7IGZh
bHNlIH07CiAKLSAgICBwaWRfdCBtX3BhcmVudFByb2Nlc3NJZGVudGlmaWVyIHsgMCB9OworICAg
IFByb2Nlc3NJRCBtX3BhcmVudFByb2Nlc3NJZGVudGlmaWVyIHsgMCB9OwogI2lmIFBMQVRGT1JN
KENPQ09BKQogICAgIFJldGFpblB0cjxDRkRhdGFSZWY+IG1fcGFyZW50UHJvY2Vzc0F1ZGl0RGF0
YTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvUHJvY2Vzc0lELmggYi9Tb3Vy
Y2UvV1RGL3d0Zi9Qcm9jZXNzSUQuaAppbmRleCBmODQ3MTZlOGQ5My4uY2NkYzJlMDAyMDkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL1Byb2Nlc3NJRC5oCisrKyBiL1NvdXJjZS9XVEYvd3Rm
L1Byb2Nlc3NJRC5oCkBAIC0zNiw3ICszNiwxMyBAQAogCiBuYW1lc3BhY2UgV1RGIHsKIAotaW5s
aW5lIGludCBnZXRDdXJyZW50UHJvY2Vzc0lEKCkKKyNpZiBPUyhXSU5ET1dTKQordXNpbmcgUHJv
Y2Vzc0lEID0gaW50OworI2Vsc2UKK3VzaW5nIFByb2Nlc3NJRCA9IHBpZF90OworI2VuZGlmCisK
K2lubGluZSBQcm9jZXNzSUQgZ2V0Q3VycmVudFByb2Nlc3NJRCgpCiB7CiAjaWYgT1MoV0lORE9X
UykKICAgICByZXR1cm4gR2V0Q3VycmVudFByb2Nlc3NJZCgpOwpAQCAtNDgsNiArNTQsNyBAQCBp
bmxpbmUgaW50IGdldEN1cnJlbnRQcm9jZXNzSUQoKQogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVz
aW5nIFdURjo6Z2V0Q3VycmVudFByb2Nlc3NJRDsKK3VzaW5nIFdURjo6UHJvY2Vzc0lEOwogCiAj
ZW5kaWYgLy8gUHJvY2Vzc0lEX2gKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9OZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oIGIvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oCmluZGV4
IDFlYjc5Nzk5NjE4Li5kMGEzMmRiYjJmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oCisrKyBiL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMu
aApAQCAtMjgsNiArMjgsNyBAQAogI2luY2x1ZGUgIkF0dGFjaG1lbnQuaCIKICNpbmNsdWRlICJD
YWNoZU1vZGVsLmgiCiAjaW5jbHVkZSAiU2FuZGJveEV4dGVuc2lvbi5oIgorI2luY2x1ZGUgPHd0
Zi9Qcm9jZXNzSUQuaD4KICNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CiAjaW5jbHVkZSA8d3RmL3Rl
eHQvV1RGU3RyaW5nLmg+CiAKQEAgLTc4LDcgKzc5LDcgQEAgc3RydWN0IE5ldHdvcmtQcm9jZXNz
Q3JlYXRpb25QYXJhbWV0ZXJzIHsKICAgICBTZWNvbmRzIGxvYWRUaHJvdHRsZUxhdGVuY3k7CiAK
ICAgICBWZWN0b3I8U3RyaW5nPiB1cmxTY2hlbWVzUmVnaXN0ZXJlZEZvckN1c3RvbVByb3RvY29s
czsKLSAgICBwaWRfdCBwcmVzZW50aW5nQXBwbGljYXRpb25QSUQgeyAwIH07CisgICAgUHJvY2Vz
c0lEIHByZXNlbnRpbmdBcHBsaWNhdGlvblBJRCB7IDAgfTsKIAogI2lmIFBMQVRGT1JNKENPQ09B
KQogICAgIFN0cmluZyBwYXJlbnRQcm9jZXNzTmFtZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvU2hhcmVkL1dlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaCBiL1NvdXJjZS9XZWJLaXQv
U2hhcmVkL1dlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaAppbmRleCA1NjE4NWFiZTc2Yi4u
MGUyM2M0YjZkODggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlByb2Nlc3ND
cmVhdGlvblBhcmFtZXRlcnMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQcm9jZXNz
Q3JlYXRpb25QYXJhbWV0ZXJzLmgKQEAgLTMwLDYgKzMwLDcgQEAKICNpbmNsdWRlICJUZXh0Q2hl
Y2tlclN0YXRlLmgiCiAjaW5jbHVkZSAiVXNlckRhdGEuaCIKICNpbmNsdWRlIDxwYWwvU2Vzc2lv
bklELmg+CisjaW5jbHVkZSA8d3RmL1Byb2Nlc3NJRC5oPgogI2luY2x1ZGUgPHd0Zi9SZXRhaW5Q
dHIuaD4KICNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5n
SGFzaC5oPgpAQCAtMTM2LDcgKzEzNyw3IEBAIHN0cnVjdCBXZWJQcm9jZXNzQ3JlYXRpb25QYXJh
bWV0ZXJzIHsKICAgICBTdHJpbmcgdWlQcm9jZXNzQnVuZGxlSWRlbnRpZmllcjsKICNlbmRpZgog
Ci0gICAgcGlkX3QgcHJlc2VudGluZ0FwcGxpY2F0aW9uUElEIHsgMCB9OworICAgIFByb2Nlc3NJ
RCBwcmVzZW50aW5nQXBwbGljYXRpb25QSUQgeyAwIH07CiAKICNpZiBQTEFURk9STShDT0NPQSkK
ICAgICBXZWJDb3JlOjpNYWNoU2VuZFJpZ2h0IGFjY2VsZXJhdGVkQ29tcG9zaXRpbmdQb3J0Owpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQSVByb2Nlc3NQb29sQ29u
ZmlndXJhdGlvbi5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQSVByb2Nlc3NQb29s
Q29uZmlndXJhdGlvbi5oCmluZGV4IDk1NDQ4NDc5M2I0Li5hMDZhYWEyZDllNiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQSVByb2Nlc3NQb29sQ29uZmlndXJhdGlv
bi5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElQcm9jZXNzUG9vbENvbmZp
Z3VyYXRpb24uaApAQCAtMTM5LDggKzEzOSw4IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldENURGF0
YUNvbm5lY3Rpb25TZXJ2aWNlVHlwZShjb25zdCBXVEY6OlN0cmluZyYgY3REYXRhQ29ubmVjdGlv
blNlcnZpY2VUeXBlKSB7IG1fY3REYXRhQ29ubmVjdGlvblNlcnZpY2VUeXBlID0gY3REYXRhQ29u
bmVjdGlvblNlcnZpY2VUeXBlOyB9CiAjZW5kaWYKIAotICAgIHBpZF90IHByZXNlbnRpbmdBcHBs
aWNhdGlvblBJRCgpIGNvbnN0IHsgcmV0dXJuIG1fcHJlc2VudGluZ0FwcGxpY2F0aW9uUElEOyB9
Ci0gICAgdm9pZCBzZXRQcmVzZW50aW5nQXBwbGljYXRpb25QSUQocGlkX3QgcGlkKSB7IG1fcHJl
c2VudGluZ0FwcGxpY2F0aW9uUElEID0gcGlkOyB9CisgICAgUHJvY2Vzc0lEIHByZXNlbnRpbmdB
cHBsaWNhdGlvblBJRCgpIGNvbnN0IHsgcmV0dXJuIG1fcHJlc2VudGluZ0FwcGxpY2F0aW9uUElE
OyB9CisgICAgdm9pZCBzZXRQcmVzZW50aW5nQXBwbGljYXRpb25QSUQoUHJvY2Vzc0lEIHBpZCkg
eyBtX3ByZXNlbnRpbmdBcHBsaWNhdGlvblBJRCA9IHBpZDsgfQogCiBwcml2YXRlOgogICAgIGJv
b2wgbV9zaG91bGRIYXZlTGVnYWN5RGF0YVN0b3JlIHsgZmFsc2UgfTsKQEAgLTE3NCw3ICsxNzQs
NyBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9hbHdheXNSdW5zQXRCYWNrZ3JvdW5kUHJpb3JpdHkg
eyBmYWxzZSB9OwogICAgIGJvb2wgbV9zaG91bGRUYWtlVUlCYWNrZ3JvdW5kQXNzZXJ0aW9uIHsg
dHJ1ZSB9OwogICAgIGJvb2wgbV9zaG91bGRDYXB0dXJlQXVkaW9JblVJUHJvY2VzcyB7IGZhbHNl
IH07Ci0gICAgcGlkX3QgbV9wcmVzZW50aW5nQXBwbGljYXRpb25QSUQgeyBnZXRDdXJyZW50UHJv
Y2Vzc0lEKCkgfTsKKyAgICBQcm9jZXNzSUQgbV9wcmVzZW50aW5nQXBwbGljYXRpb25QSUQgeyBn
ZXRDdXJyZW50UHJvY2Vzc0lEKCkgfTsKICNpZiBQTEFURk9STShJT1MpCiAgICAgV1RGOjpTdHJp
bmcgbV9jdERhdGFDb25uZWN0aW9uU2VydmljZVR5cGU7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dC5jcHAgYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHQuY3BwCmluZGV4IDA1YTRlZjk0Y2E5Li43ODMzOGVk
NjU3OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tDb250ZXh0
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHQuY3BwCkBA
IC01OTksMTIgKzU5OSwxMiBAQCB2b2lkIFdLQ29udGV4dFRlcm1pbmF0ZU5ldHdvcmtQcm9jZXNz
KFdLQ29udGV4dFJlZiBjb250ZXh0KQogICAgIHRvSW1wbChjb250ZXh0KS0+dGVybWluYXRlTmV0
d29ya1Byb2Nlc3MoKTsKIH0KIAotcGlkX3QgV0tDb250ZXh0R2V0TmV0d29ya1Byb2Nlc3NJZGVu
dGlmaWVyKFdLQ29udGV4dFJlZiBjb250ZXh0UmVmKQorUHJvY2Vzc0lEIFdLQ29udGV4dEdldE5l
dHdvcmtQcm9jZXNzSWRlbnRpZmllcihXS0NvbnRleHRSZWYgY29udGV4dFJlZikKIHsKICAgICBy
ZXR1cm4gdG9JbXBsKGNvbnRleHRSZWYpLT5uZXR3b3JrUHJvY2Vzc0lkZW50aWZpZXIoKTsKIH0K
IAotcGlkX3QgV0tDb250ZXh0R2V0RGF0YWJhc2VQcm9jZXNzSWRlbnRpZmllcihXS0NvbnRleHRS
ZWYgY29udGV4dFJlZikKK1Byb2Nlc3NJRCBXS0NvbnRleHRHZXREYXRhYmFzZVByb2Nlc3NJZGVu
dGlmaWVyKFdLQ29udGV4dFJlZiBjb250ZXh0UmVmKQogewogICAgIHJldHVybiB0b0ltcGwoY29u
dGV4dFJlZiktPnN0b3JhZ2VQcm9jZXNzSWRlbnRpZmllcigpOwogfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tDb250ZXh0UHJpdmF0ZS5oIGIvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvQVBJL0MvV0tDb250ZXh0UHJpdmF0ZS5oCmluZGV4IGZlODc4OGQzNDJi
Li4zMGEyZmFmNGZhMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0Mv
V0tDb250ZXh0UHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dL
Q29udGV4dFByaXZhdGUuaApAQCAtMjksNyArMjksMTEgQEAKICNpbmNsdWRlIDxXZWJLaXQvV0tC
YXNlLmg+CiAjaW5jbHVkZSA8V2ViS2l0L1dLQ29udGV4dC5oPgogCisjaWYgZGVmaW5lZChXSU4z
MikgfHwgZGVmaW5lZChfV0lOMzIpCit0eXBlZGVmIGludCBwaWRfdDsKKyNlbHNlCiAjaW5jbHVk
ZSA8dW5pc3RkLmg+CisjZW5kaWYKIAogI2lmZGVmIF9fY3BsdXNwbHVzCiBleHRlcm4gIkMiIHsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLUGFnZS5jcHAgYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2UuY3BwCmluZGV4IDA2N2MwZWM5NGMw
Li4wNDE4Y2U4MDVmYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0Mv
V0tQYWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2UuY3Bw
CkBAIC0yNzQxLDcgKzI3NDEsNyBAQCB2b2lkIFdLUGFnZVNldElnbm9yZXNWaWV3cG9ydFNjYWxl
TGltaXRzKFdLUGFnZVJlZiBwYWdlLCBib29sIGlnbm9yZXNWaWV3cG9ydFNjYQogI2VuZGlmCiB9
CiAKLXBpZF90IFdLUGFnZUdldFByb2Nlc3NJZGVudGlmaWVyKFdLUGFnZVJlZiBwYWdlKQorUHJv
Y2Vzc0lEIFdLUGFnZUdldFByb2Nlc3NJZGVudGlmaWVyKFdLUGFnZVJlZiBwYWdlKQogewogICAg
IHJldHVybiB0b0ltcGwocGFnZSktPnByb2Nlc3NJZGVudGlmaWVyKCk7CiB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2VQcml2YXRlLmggYi9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2VQcml2YXRlLmgKaW5kZXggODcxNzQ2ODg3NjEu
LmEwZWIxNWMyZTI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9X
S1BhZ2VQcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQYWdl
UHJpdmF0ZS5oCkBAIC0yOSw3ICsyOSwxMSBAQAogI2luY2x1ZGUgPFdlYktpdC9XS0Jhc2UuaD4K
ICNpbmNsdWRlIDxXZWJLaXQvV0tQYWdlLmg+CiAKKyNpZiBkZWZpbmVkKFdJTjMyKSB8fCBkZWZp
bmVkKF9XSU4zMikKK3R5cGVkZWYgaW50IHBpZF90OworI2Vsc2UKICNpbmNsdWRlIDx1bmlzdGQu
aD4KKyNlbmRpZgogCiAjaWZkZWYgX19jcGx1c3BsdXMKIGV4dGVybiAiQyIgewpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ2hpbGRQcm9jZXNzUHJveHkuaCBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL0NoaWxkUHJvY2Vzc1Byb3h5LmgKaW5kZXggYzYzYjliZTE0M2MuLjdi
MzFjOGUzYzRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9DaGlsZFByb2Nl
c3NQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NoaWxkUHJvY2Vzc1Byb3h5
LmgKQEAgLTI5LDYgKzI5LDcgQEAKICNpbmNsdWRlICJNZXNzYWdlUmVjZWl2ZXJNYXAuaCIKICNp
bmNsdWRlICJQcm9jZXNzTGF1bmNoZXIuaCIKIAorI2luY2x1ZGUgPHd0Zi9Qcm9jZXNzSUQuaD4K
ICNpbmNsdWRlIDx3dGYvU3lzdGVtVHJhY2luZy5oPgogI2luY2x1ZGUgPHd0Zi9UaHJlYWRTYWZl
UmVmQ291bnRlZC5oPgogCkBAIC03Miw3ICs3Myw3IEBAIHB1YmxpYzoKICAgICB9OwogICAgIFN0
YXRlIHN0YXRlKCkgY29uc3Q7CiAKLSAgICBwaWRfdCBwcm9jZXNzSWRlbnRpZmllcigpIGNvbnN0
IHsgcmV0dXJuIG1fcHJvY2Vzc0xhdW5jaGVyID8gbV9wcm9jZXNzTGF1bmNoZXItPnByb2Nlc3NJ
ZGVudGlmaWVyKCkgOiAwOyB9CisgICAgUHJvY2Vzc0lEIHByb2Nlc3NJZGVudGlmaWVyKCkgY29u
c3QgeyByZXR1cm4gbV9wcm9jZXNzTGF1bmNoZXIgPyBtX3Byb2Nlc3NMYXVuY2hlci0+cHJvY2Vz
c0lkZW50aWZpZXIoKSA6IDA7IH0KIAogICAgIGJvb2wgY2FuU2VuZE1lc3NhZ2UoKSBjb25zdCB7
IHJldHVybiBzdGF0ZSgpICE9IFN0YXRlOjpUZXJtaW5hdGVkO30KICAgICBib29sIHNlbmRNZXNz
YWdlKHN0ZDo6dW5pcXVlX3B0cjxJUEM6OkVuY29kZXI+LCBPcHRpb25TZXQ8SVBDOjpTZW5kT3B0
aW9uPik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9MYXVuY2hlci9Qcm9j
ZXNzTGF1bmNoZXIuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvTGF1bmNoZXIvUHJvY2Vz
c0xhdW5jaGVyLmNwcAppbmRleCAwODljMTdjMzMzZi4uZjJmNzJhY2MzZjIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0xhdW5jaGVyL1Byb2Nlc3NMYXVuY2hlci5jcHAKKysr
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvTGF1bmNoZXIvUHJvY2Vzc0xhdW5jaGVyLmNwcApA
QCAtNDEsNyArNDEsNyBAQCBQcm9jZXNzTGF1bmNoZXI6OlByb2Nlc3NMYXVuY2hlcihDbGllbnQq
IGNsaWVudCwgY29uc3QgTGF1bmNoT3B0aW9ucyYgbGF1bmNoT3B0aQogICAgIGxhdW5jaFByb2Nl
c3MoKTsKIH0KIAotdm9pZCBQcm9jZXNzTGF1bmNoZXI6OmRpZEZpbmlzaExhdW5jaGluZ1Byb2Nl
c3MocGlkX3QgcHJvY2Vzc0lkZW50aWZpZXIsIElQQzo6Q29ubmVjdGlvbjo6SWRlbnRpZmllciBp
ZGVudGlmaWVyKQordm9pZCBQcm9jZXNzTGF1bmNoZXI6OmRpZEZpbmlzaExhdW5jaGluZ1Byb2Nl
c3MoUHJvY2Vzc0lEIHByb2Nlc3NJZGVudGlmaWVyLCBJUEM6OkNvbm5lY3Rpb246OklkZW50aWZp
ZXIgaWRlbnRpZmllcikKIHsKICAgICBtX3Byb2Nlc3NJZGVudGlmaWVyID0gcHJvY2Vzc0lkZW50
aWZpZXI7CiAgICAgbV9pc0xhdW5jaGluZyA9IGZhbHNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvTGF1bmNoZXIvUHJvY2Vzc0xhdW5jaGVyLmggYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9MYXVuY2hlci9Qcm9jZXNzTGF1bmNoZXIuaAppbmRleCA2Nzk4ZmM5ZjlkMC4u
MDIyYWI2YTc3NDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0xhdW5jaGVy
L1Byb2Nlc3NMYXVuY2hlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0xhdW5jaGVy
L1Byb2Nlc3NMYXVuY2hlci5oCkBAIC0yNyw2ICsyNyw3IEBACiAKICNpbmNsdWRlICJDb25uZWN0
aW9uLmgiCiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KKyNpbmNsdWRlIDx3dGYvUHJvY2Vzc0lE
Lmg+CiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9UaHJlYWRpbmcuaD4K
ICNpbmNsdWRlIDx3dGYvV2Vha1B0ci5oPgpAQCAtNjksNyArNzAsNyBAQCBwdWJsaWM6CiAgICAg
fQogCiAgICAgYm9vbCBpc0xhdW5jaGluZygpIGNvbnN0IHsgcmV0dXJuIG1faXNMYXVuY2hpbmc7
IH0KLSAgICBwaWRfdCBwcm9jZXNzSWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1fcHJvY2Vz
c0lkZW50aWZpZXI7IH0KKyAgICBQcm9jZXNzSUQgcHJvY2Vzc0lkZW50aWZpZXIoKSBjb25zdCB7
IHJldHVybiBtX3Byb2Nlc3NJZGVudGlmaWVyOyB9CiAKICAgICB2b2lkIHRlcm1pbmF0ZVByb2Nl
c3MoKTsKICAgICB2b2lkIGludmFsaWRhdGUoKTsKQEAgLTc4LDcgKzc5LDcgQEAgcHJpdmF0ZToK
ICAgICBQcm9jZXNzTGF1bmNoZXIoQ2xpZW50KiwgY29uc3QgTGF1bmNoT3B0aW9ucyYgbGF1bmNo
T3B0aW9ucyk7CiAKICAgICB2b2lkIGxhdW5jaFByb2Nlc3MoKTsKLSAgICB2b2lkIGRpZEZpbmlz
aExhdW5jaGluZ1Byb2Nlc3MocGlkX3QsIElQQzo6Q29ubmVjdGlvbjo6SWRlbnRpZmllcik7Cisg
ICAgdm9pZCBkaWRGaW5pc2hMYXVuY2hpbmdQcm9jZXNzKFByb2Nlc3NJRCwgSVBDOjpDb25uZWN0
aW9uOjpJZGVudGlmaWVyKTsKIAogICAgIHZvaWQgcGxhdGZvcm1JbnZhbGlkYXRlKCk7CiAKQEAg
LTkxLDcgKzkyLDcgQEAgcHJpdmF0ZToKICAgICBXZWFrUHRyRmFjdG9yeTxQcm9jZXNzTGF1bmNo
ZXI+IG1fd2Vha1B0ckZhY3Rvcnk7CiAgICAgY29uc3QgTGF1bmNoT3B0aW9ucyBtX2xhdW5jaE9w
dGlvbnM7CiAgICAgYm9vbCBtX2lzTGF1bmNoaW5nOwotICAgIHBpZF90IG1fcHJvY2Vzc0lkZW50
aWZpZXI7CisgICAgUHJvY2Vzc0lEIG1fcHJvY2Vzc0lkZW50aWZpZXI7CiB9OwogCiB9IC8vIG5h
bWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nl
c3NBc3NlcnRpb24uY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc0Fzc2VydGlv
bi5jcHAKaW5kZXggYTY2ZTEyMjRmMzQuLjkyZTNkOGMwNzUyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmNwcApAQCAtMzAsNyArMzAsNyBAQAogCiBuYW1l
c3BhY2UgV2ViS2l0IHsKIAotUHJvY2Vzc0Fzc2VydGlvbjo6UHJvY2Vzc0Fzc2VydGlvbihwaWRf
dCwgQXNzZXJ0aW9uU3RhdGUgYXNzZXJ0aW9uU3RhdGUsIEZ1bmN0aW9uPHZvaWQoKT4mJikKK1By
b2Nlc3NBc3NlcnRpb246OlByb2Nlc3NBc3NlcnRpb24oUHJvY2Vzc0lELCBBc3NlcnRpb25TdGF0
ZSBhc3NlcnRpb25TdGF0ZSwgRnVuY3Rpb248dm9pZCgpPiYmKQogICAgIDogbV9hc3NlcnRpb25T
dGF0ZShhc3NlcnRpb25TdGF0ZSkKIHsKIH0KQEAgLTQ3LDcgKzQ3LDcgQEAgdm9pZCBQcm9jZXNz
QXNzZXJ0aW9uOjpzZXRTdGF0ZShBc3NlcnRpb25TdGF0ZSBhc3NlcnRpb25TdGF0ZSkKICAgICBt
X2Fzc2VydGlvblN0YXRlID0gYXNzZXJ0aW9uU3RhdGU7CiB9CiAKLVByb2Nlc3NBbmRVSUFzc2Vy
dGlvbjo6UHJvY2Vzc0FuZFVJQXNzZXJ0aW9uKHBpZF90IHBpZCwgQXNzZXJ0aW9uU3RhdGUgYXNz
ZXJ0aW9uU3RhdGUpCitQcm9jZXNzQW5kVUlBc3NlcnRpb246OlByb2Nlc3NBbmRVSUFzc2VydGlv
bihQcm9jZXNzSUQgcGlkLCBBc3NlcnRpb25TdGF0ZSBhc3NlcnRpb25TdGF0ZSkKICAgICA6IFBy
b2Nlc3NBc3NlcnRpb24ocGlkLCBhc3NlcnRpb25TdGF0ZSkKIHsKIH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NBc3NlcnRpb24uaCBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1Byb2Nlc3NBc3NlcnRpb24uaAppbmRleCBlNWUzYTNiNjE0OS4uMjAzMjAwMDY1
NTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NBc3NlcnRpb24u
aAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmgKQEAgLTI4
LDYgKzI4LDcgQEAKIAogI2luY2x1ZGUgPHVuaXN0ZC5oPgogI2luY2x1ZGUgPHd0Zi9GdW5jdGlv
bi5oPgorI2luY2x1ZGUgPHd0Zi9Qcm9jZXNzSUQuaD4KIAogI2lmIFBMQVRGT1JNKElPUykgJiYg
IVBMQVRGT1JNKElPU19TSU1VTEFUT1IpCiAjaW5jbHVkZSA8d3RmL1JldGFpblB0ci5oPgpAQCAt
NTEsNyArNTIsNyBAQCBwdWJsaWM6CiAKIGNsYXNzIFByb2Nlc3NBc3NlcnRpb24gewogcHVibGlj
OgotICAgIFByb2Nlc3NBc3NlcnRpb24ocGlkX3QsIEFzc2VydGlvblN0YXRlLCBGdW5jdGlvbjx2
b2lkKCk+JiYgaW52YWxpZGF0aW9uQ2FsbGJhY2sgPSB7IH0pOworICAgIFByb2Nlc3NBc3NlcnRp
b24oUHJvY2Vzc0lELCBBc3NlcnRpb25TdGF0ZSwgRnVuY3Rpb248dm9pZCgpPiYmIGludmFsaWRh
dGlvbkNhbGxiYWNrID0geyB9KTsKICAgICB2aXJ0dWFsIH5Qcm9jZXNzQXNzZXJ0aW9uKCk7CiAK
ICAgICB2aXJ0dWFsIHZvaWQgc2V0Q2xpZW50KFByb2Nlc3NBc3NlcnRpb25DbGllbnQmIGNsaWVu
dCkgeyBtX2NsaWVudCA9ICZjbGllbnQ7IH0KQEAgLTgyLDcgKzgzLDcgQEAgcHJpdmF0ZToKICAg
ICAKIGNsYXNzIFByb2Nlc3NBbmRVSUFzc2VydGlvbiBmaW5hbCA6IHB1YmxpYyBQcm9jZXNzQXNz
ZXJ0aW9uIHsKIHB1YmxpYzoKLSAgICBQcm9jZXNzQW5kVUlBc3NlcnRpb24ocGlkX3QsIEFzc2Vy
dGlvblN0YXRlKTsKKyAgICBQcm9jZXNzQW5kVUlBc3NlcnRpb24oUHJvY2Vzc0lELCBBc3NlcnRp
b25TdGF0ZSk7CiAgICAgflByb2Nlc3NBbmRVSUFzc2VydGlvbigpOwogCiAgICAgdm9pZCBzZXRD
bGllbnQoUHJvY2Vzc0Fzc2VydGlvbkNsaWVudCYpIGZpbmFsOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc1Rocm90dGxlci5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9Qcm9jZXNzVGhyb3R0bGVyLmNwcAppbmRleCBlZWQzZTYwMWFmZS4uODZhOGZhZWRh
MzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NUaHJvdHRsZXIu
Y3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NUaHJvdHRsZXIuY3BwCkBA
IC05MSw3ICs5MSw3IEBAIHZvaWQgUHJvY2Vzc1Rocm90dGxlcjo6dXBkYXRlQXNzZXJ0aW9uKCkK
ICAgICB1cGRhdGVBc3NlcnRpb25Ob3coKTsKIH0KIAotdm9pZCBQcm9jZXNzVGhyb3R0bGVyOjpk
aWRDb25uZWN0VG9Qcm9jZXNzKHBpZF90IHBpZCkKK3ZvaWQgUHJvY2Vzc1Rocm90dGxlcjo6ZGlk
Q29ubmVjdFRvUHJvY2VzcyhQcm9jZXNzSUQgcGlkKQogewogICAgIFJFTEVBU0VfTE9HKFByb2Nl
c3NTdXNwZW5zaW9uLCAiJXAgLSBQcm9jZXNzVGhyb3R0bGVyOjpkaWRDb25uZWN0VG9Qcm9jZXNz
KCVkKSIsIHRoaXMsIHBpZCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1Byb2Nlc3NUaHJvdHRsZXIuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NUaHJv
dHRsZXIuaAppbmRleCBjYjFhNGYyNmVjMy4uN2Q5MGRiNjY0M2YgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NUaHJvdHRsZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9Qcm9jZXNzVGhyb3R0bGVyLmgKQEAgLTI4LDYgKzI4LDcgQEAKIAogI2luY2x1
ZGUgIlByb2Nlc3NBc3NlcnRpb24uaCIKIAorI2luY2x1ZGUgPHd0Zi9Qcm9jZXNzSUQuaD4KICNp
bmNsdWRlIDx3dGYvUmVmQ291bnRlci5oPgogI2luY2x1ZGUgPHd0Zi9SdW5Mb29wLmg+CiAjaW5j
bHVkZSA8d3RmL1dlYWtQdHIuaD4KQEAgLTU2LDcgKzU3LDcgQEAgcHVibGljOgogICAgIGlubGlu
ZSBGb3JlZ3JvdW5kQWN0aXZpdHlUb2tlbiBmb3JlZ3JvdW5kQWN0aXZpdHlUb2tlbigpIGNvbnN0
OwogICAgIGlubGluZSBCYWNrZ3JvdW5kQWN0aXZpdHlUb2tlbiBiYWNrZ3JvdW5kQWN0aXZpdHlU
b2tlbigpIGNvbnN0OwogICAgIAotICAgIHZvaWQgZGlkQ29ubmVjdFRvUHJvY2VzcyhwaWRfdCk7
CisgICAgdm9pZCBkaWRDb25uZWN0VG9Qcm9jZXNzKFByb2Nlc3NJRCk7CiAgICAgdm9pZCBwcm9j
ZXNzUmVhZHlUb1N1c3BlbmQoKTsKICAgICB2b2lkIGRpZENhbmNlbFByb2Nlc3NTdXNwZW5zaW9u
KCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5j
cHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCmluZGV4IDljYzVl
ZmE2MzcyLi43MmYwNDZkMDhiNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
V2ViUGFnZVByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJv
eHkuY3BwCkBAIC00NDEsNyArNDQxLDcgQEAgY29uc3QgQVBJOjpQYWdlQ29uZmlndXJhdGlvbiYg
V2ViUGFnZVByb3h5Ojpjb25maWd1cmF0aW9uKCkgY29uc3QKICAgICByZXR1cm4gbV9jb25maWd1
cmF0aW9uLmdldCgpOwogfQogCi1waWRfdCBXZWJQYWdlUHJveHk6OnByb2Nlc3NJZGVudGlmaWVy
KCkgY29uc3QKK1Byb2Nlc3NJRCBXZWJQYWdlUHJveHk6OnByb2Nlc3NJZGVudGlmaWVyKCkgY29u
c3QKIHsKICAgICBpZiAobV9pc0Nsb3NlZCkKICAgICAgICAgcmV0dXJuIDA7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCmluZGV4IGU0MzM3YmNmZWQxLi5kOGU4MzI1ZDk4NSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKKysrIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKQEAgLTg0LDYgKzg0LDcgQEAK
ICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+CiAjaW5j
bHVkZSA8d3RmL01vbm90b25pY1RpbWUuaD4KKyNpbmNsdWRlIDx3dGYvUHJvY2Vzc0lELmg+CiAj
aW5jbHVkZSA8d3RmL1JlZi5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KICNpbmNsdWRlIDx3
dGYvVmVjdG9yLmg+CkBAIC04NzUsNyArODc2LDcgQEAgcHVibGljOgogI2VuZGlmCiAKICAgICBX
ZWJQcm9jZXNzUHJveHkmIHByb2Nlc3MoKSB7IHJldHVybiBtX3Byb2Nlc3M7IH0KLSAgICBwaWRf
dCBwcm9jZXNzSWRlbnRpZmllcigpIGNvbnN0OworICAgIFByb2Nlc3NJRCBwcm9jZXNzSWRlbnRp
ZmllcigpIGNvbnN0OwogCiAgICAgV2ViUHJlZmVyZW5jZXMmIHByZWZlcmVuY2VzKCkgeyByZXR1
cm4gbV9wcmVmZXJlbmNlczsgfQogICAgIHZvaWQgc2V0UHJlZmVyZW5jZXMoV2ViUHJlZmVyZW5j
ZXMmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29s
LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcAppbmRleCA5
OGY2OGE3ZDQ3OS4uN2YzNGFmOGM0MzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1dlYlByb2Nlc3NQb29sLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQ
cm9jZXNzUG9vbC5jcHAKQEAgLTEwODMsNyArMTA4Myw3IEBAIHZvaWQgV2ViUHJvY2Vzc1Bvb2w6
OnJlZnJlc2hQbHVnaW5zKCkKIAogI2VuZGlmIC8vIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJ
KQogCi1waWRfdCBXZWJQcm9jZXNzUG9vbDo6bmV0d29ya1Byb2Nlc3NJZGVudGlmaWVyKCkKK1By
b2Nlc3NJRCBXZWJQcm9jZXNzUG9vbDo6bmV0d29ya1Byb2Nlc3NJZGVudGlmaWVyKCkKIHsKICAg
ICBpZiAoIW1fbmV0d29ya1Byb2Nlc3MpCiAgICAgICAgIHJldHVybiAwOwpAQCAtMTA5MSw3ICsx
MDkxLDcgQEAgcGlkX3QgV2ViUHJvY2Vzc1Bvb2w6Om5ldHdvcmtQcm9jZXNzSWRlbnRpZmllcigp
CiAgICAgcmV0dXJuIG1fbmV0d29ya1Byb2Nlc3MtPnByb2Nlc3NJZGVudGlmaWVyKCk7CiB9CiAK
LXBpZF90IFdlYlByb2Nlc3NQb29sOjpzdG9yYWdlUHJvY2Vzc0lkZW50aWZpZXIoKQorUHJvY2Vz
c0lEIFdlYlByb2Nlc3NQb29sOjpzdG9yYWdlUHJvY2Vzc0lkZW50aWZpZXIoKQogewogICAgIGlm
ICghbV9zdG9yYWdlUHJvY2VzcykKICAgICAgICAgcmV0dXJuIDA7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5oIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuaAppbmRleCAyNGViYWExODNkOC4uZTE5ZjZkZjJhZjggMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmgKKysrIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuaApAQCAtNDksNiArNDksNyBA
QAogI2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KICNp
bmNsdWRlIDx3dGYvSGFzaFNldC5oPgorI2luY2x1ZGUgPHd0Zi9Qcm9jZXNzSUQuaD4KICNpbmNs
dWRlIDx3dGYvUmVmQ291bnRlci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KICNpbmNsdWRl
IDx3dGYvdGV4dC9TdHJpbmdIYXNoLmg+CkBAIC0xOTksOCArMjAwLDggQEAgcHVibGljOgogICAg
IGNvbnN0IEhhc2hNYXA8U3RyaW5nLCBIYXNoTWFwPFN0cmluZywgSGFzaE1hcDxTdHJpbmcsIHVp
bnQ4X3Q+Pj4mIHBsdWdpbkxvYWRDbGllbnRQb2xpY2llcygpIGNvbnN0IHsgcmV0dXJuIG1fcGx1
Z2luTG9hZENsaWVudFBvbGljaWVzOyB9CiAjZW5kaWYKIAotICAgIHBpZF90IG5ldHdvcmtQcm9j
ZXNzSWRlbnRpZmllcigpOwotICAgIHBpZF90IHN0b3JhZ2VQcm9jZXNzSWRlbnRpZmllcigpOwor
ICAgIFByb2Nlc3NJRCBuZXR3b3JrUHJvY2Vzc0lkZW50aWZpZXIoKTsKKyAgICBQcm9jZXNzSUQg
c3RvcmFnZVByb2Nlc3NJZGVudGlmaWVyKCk7CiAKICAgICB2b2lkIHNldEFsd2F5c1VzZXNDb21w
bGV4VGV4dENvZGVQYXRoKGJvb2wpOwogICAgIHZvaWQgc2V0U2hvdWxkVXNlRm9udFNtb290aGlu
Zyhib29sKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>321236</attachid>
            <date>2017-09-19 13:18:08 -0700</date>
            <delta_ts>2017-09-20 19:55:10 -0700</delta_ts>
            <desc>Adding process identifier aliases to avoid direct use of pid_t</desc>
            <filename>pid_t-test.9.diff</filename>
            <type>text/plain</type>
            <size>22337</size>
            <attacher name="Stephan Szabo">stephan.szabo</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNSZW1vdGVJbnNwZWN0b3Iu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1JlbW90ZUluc3BlY3Rvci5jcHAKaW5k
ZXggM2JlNjFkMDkyNzIuLjk2NzJlZjAyMTQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQVBJL0pTUmVtb3RlSW5zcGVjdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQVBJL0pTUmVtb3RlSW5zcGVjdG9yLmNwcApAQCAtMjcsNiArMjcsNyBAQAogI2luY2x1ZGUg
IkpTUmVtb3RlSW5zcGVjdG9yLmgiCiAKICNpbmNsdWRlICJKU0dsb2JhbE9iamVjdENvbnNvbGVD
bGllbnQuaCIKKyNpbmNsdWRlIDx3dGYvUHJvY2Vzc0lELmg+CiAKICNpZiBFTkFCTEUoUkVNT1RF
X0lOU1BFQ1RPUikKICNpbmNsdWRlICJSZW1vdGVJbnNwZWN0b3IuaCIKQEAgLTUwLDcgKzUxLDcg
QEAgdm9pZCBKU1JlbW90ZUluc3BlY3RvclN0YXJ0KHZvaWQpCiAjZW5kaWYKIH0KIAotdm9pZCBK
U1JlbW90ZUluc3BlY3RvclNldFBhcmVudFByb2Nlc3NJbmZvcm1hdGlvbihwaWRfdCBwaWQsIGNv
bnN0IHVpbnQ4X3QqIGF1ZGl0RGF0YSwgc2l6ZV90IGF1ZGl0TGVuZ3RoKQordm9pZCBKU1JlbW90
ZUluc3BlY3RvclNldFBhcmVudFByb2Nlc3NJbmZvcm1hdGlvbihQcm9jZXNzSUQgcGlkLCBjb25z
dCB1aW50OF90KiBhdWRpdERhdGEsIHNpemVfdCBhdWRpdExlbmd0aCkKIHsKICNpZiBFTkFCTEUo
UkVNT1RFX0lOU1BFQ1RPUikgJiYgUExBVEZPUk0oQ09DT0EpCiAgICAgUmV0YWluUHRyPENGRGF0
YVJlZj4gYXVkaXREYXRhUmVmID0gYWRvcHRDRihDRkRhdGFDcmVhdGUoa0NGQWxsb2NhdG9yRGVm
YXVsdCwgYXVkaXREYXRhLCBhdWRpdExlbmd0aCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL0FQSS9KU1JlbW90ZUluc3BlY3Rvci5oIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L0FQSS9KU1JlbW90ZUluc3BlY3Rvci5oCmluZGV4IDRmODY1MTAyOTk4Li5jOGJhYzZkZDBlNCAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1JlbW90ZUluc3BlY3Rvci5o
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNSZW1vdGVJbnNwZWN0b3IuaApAQCAt
MjksNyArMjksMTIgQEAKICNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9KU0Jhc2UuaD4KICNpbmNs
dWRlIDxKYXZhU2NyaXB0Q29yZS9XZWJLaXRBdmFpbGFiaWxpdHkuaD4KIAorI2lmIGRlZmluZWQo
V0lOMzIpIHx8IGRlZmluZWQoX1dJTjMyKQordHlwZWRlZiBpbnQgSlNQcm9jZXNzSUQ7CisjZWxz
ZQogI2luY2x1ZGUgPHVuaXN0ZC5oPgordHlwZWRlZiBwaWRfdCBKU1Byb2Nlc3NJRDsKKyNlbmRp
ZgogCiAjaWZkZWYgX19jcGx1c3BsdXMKIGV4dGVybiAiQyIgewpAQCAtMzcsNyArNDIsNyBAQCBl
eHRlcm4gIkMiIHsKIAogSlNfRVhQT1JUIHZvaWQgSlNSZW1vdGVJbnNwZWN0b3JEaXNhYmxlQXV0
b1N0YXJ0KHZvaWQpIENGX0FWQUlMQUJMRSgxMF8xMSwgOV8wKTsKIEpTX0VYUE9SVCB2b2lkIEpT
UmVtb3RlSW5zcGVjdG9yU3RhcnQodm9pZCkgQ0ZfQVZBSUxBQkxFKDEwXzExLCA5XzApOwotSlNf
RVhQT1JUIHZvaWQgSlNSZW1vdGVJbnNwZWN0b3JTZXRQYXJlbnRQcm9jZXNzSW5mb3JtYXRpb24o
cGlkX3QsIGNvbnN0IHVpbnQ4X3QqIGF1ZGl0RGF0YSwgc2l6ZV90IGF1ZGl0TGVuZ3RoKSBDRl9B
VkFJTEFCTEUoMTBfMTEsIDlfMCk7CitKU19FWFBPUlQgdm9pZCBKU1JlbW90ZUluc3BlY3RvclNl
dFBhcmVudFByb2Nlc3NJbmZvcm1hdGlvbihKU1Byb2Nlc3NJRCwgY29uc3QgdWludDhfdCogYXVk
aXREYXRhLCBzaXplX3QgYXVkaXRMZW5ndGgpIENGX0FWQUlMQUJMRSgxMF8xMSwgOV8wKTsKIAog
SlNfRVhQT1JUIHZvaWQgSlNSZW1vdGVJbnNwZWN0b3JTZXRMb2dUb1N5c3RlbUNvbnNvbGUoYm9v
bCkgQ0ZfQVZBSUxBQkxFKDEwXzExLCA5XzApOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRl
eCBmNzJmM2FiYTM4ZS4uNGZmMzY1MDg0NDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDE1IEBACisyMDE3LTA5LTE5ICBTdGVwaGFuIFN6YWJvICA8c3RlcGhhbi5zemFib0Bz
b255LmNvbT4KKworICAgICAgICBbV2luXSBXVEY6IEFkZCBhbGlhcyBmb3IgcHJvY2VzcyBpZCB0
byB1c2UgaW4gcGxhY2Ugb2YgZGlyZWN0IHVzZXMgb2YgcGlkX3QKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3NzAxNworCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogQVBJL0pTUmVtb3RlSW5zcGVjdG9yLmNw
cDoKKyAgICAgICAgKEpTUmVtb3RlSW5zcGVjdG9yU2V0UGFyZW50UHJvY2Vzc0luZm9ybWF0aW9u
KToKKyAgICAgICAgKiBBUEkvSlNSZW1vdGVJbnNwZWN0b3IuaDoKKyAgICAgICAgKiBpbnNwZWN0
b3IvcmVtb3RlL1JlbW90ZUluc3BlY3Rvci5oOgorCiAyMDE3LTA5LTE0ICBZdXN1a2UgU3V6dWtp
ICA8dXRhdGFuZS50ZWFAZ21haWwuY29tPgogCiAgICAgICAgIFtKU0NdIEFkZCBQcml2YXRlU3lt
Ym9sTW9kZTo6e0luY2x1ZGUsRXhjbHVkZX0gZm9yIFByb3BlcnR5TmFtZUFycmF5CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL3JlbW90ZS9SZW1vdGVJbnNwZWN0
b3IuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvcmVtb3RlL1JlbW90ZUluc3Bl
Y3Rvci5oCmluZGV4IGQwMGRlMmI3MDNkLi42YWU3YzA5NWIzOSAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9yZW1vdGUvUmVtb3RlSW5zcGVjdG9yLmgKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9yZW1vdGUvUmVtb3RlSW5zcGVjdG9yLmgK
QEAgLTMwLDYgKzMwLDcgQEAKICNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgogI2luY2x1ZGUgPHd0
Zi9IYXNoTWFwLmg+CiAjaW5jbHVkZSA8d3RmL0xvY2suaD4KKyNpbmNsdWRlIDx3dGYvUHJvY2Vz
c0lELmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKICNpZiBQTEFURk9STShD
T0NPQSkKQEAgLTEwOCw5ICsxMDksOSBAQCBwdWJsaWM6CiAKICNpZiBQTEFURk9STShDT0NPQSkK
ICAgICBib29sIGhhc1BhcmVudFByb2Nlc3NJbmZvcm1hdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1f
cGFyZW50UHJvY2Vzc0lkZW50aWZpZXIgIT0gMDsgfQotICAgIHBpZF90IHBhcmVudFByb2Nlc3NJ
ZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9wYXJlbnRQcm9jZXNzSWRlbnRpZmllcjsgfQor
ICAgIFByb2Nlc3NJRCBwYXJlbnRQcm9jZXNzSWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1f
cGFyZW50UHJvY2Vzc0lkZW50aWZpZXI7IH0KICAgICBSZXRhaW5QdHI8Q0ZEYXRhUmVmPiBwYXJl
bnRQcm9jZXNzQXVkaXREYXRhKCkgY29uc3QgeyByZXR1cm4gbV9wYXJlbnRQcm9jZXNzQXVkaXRE
YXRhOyB9Ci0gICAgdm9pZCBzZXRQYXJlbnRQcm9jZXNzSW5mb3JtYXRpb24ocGlkX3QsIFJldGFp
blB0cjxDRkRhdGFSZWY+IGF1ZGl0RGF0YSk7CisgICAgdm9pZCBzZXRQYXJlbnRQcm9jZXNzSW5m
b3JtYXRpb24oUHJvY2Vzc0lELCBSZXRhaW5QdHI8Q0ZEYXRhUmVmPiBhdWRpdERhdGEpOwogICAg
IHZvaWQgc2V0UGFyZW50UHJvY2Vzc0luZm9tYXRpb25Jc0RlbGF5ZWQoKTsKICNlbmRpZgogCkBA
IC0yMDcsNyArMjA4LDcgQEAgcHJpdmF0ZToKICAgICBib29sIG1faGFzQWN0aXZlRGVidWdTZXNz
aW9uIHsgZmFsc2UgfTsKICAgICBib29sIG1fcHVzaFNjaGVkdWxlZCB7IGZhbHNlIH07CiAKLSAg
ICBwaWRfdCBtX3BhcmVudFByb2Nlc3NJZGVudGlmaWVyIHsgMCB9OworICAgIFByb2Nlc3NJRCBt
X3BhcmVudFByb2Nlc3NJZGVudGlmaWVyIHsgMCB9OwogI2lmIFBMQVRGT1JNKENPQ09BKQogICAg
IFJldGFpblB0cjxDRkRhdGFSZWY+IG1fcGFyZW50UHJvY2Vzc0F1ZGl0RGF0YTsKICNlbmRpZgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dURi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV1RGL0NoYW5nZUxvZwpp
bmRleCBiYWNhMjI3YTRjYi4uMzQyZjMwZTA1YTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTct
MDktMTkgIFN0ZXBoYW4gU3phYm8gIDxzdGVwaGFuLnN6YWJvQHNvbnkuY29tPgorCisgICAgICAg
IFtXaW5dIFdURjogQWRkIGFsaWFzIGZvciBwcm9jZXNzIGlkIHRvIHVzZSBpbiBwbGFjZSBvZiBk
aXJlY3QgdXNlcyBvZiBwaWRfdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTc3MDE3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgKiB3dGYvUHJvY2Vzc0lELmg6CisgICAgICAgIChXVEY6OmdldEN1cnJlbnRQ
cm9jZXNzSUQpOgorCiAyMDE3LTA5LTEzICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNv
bT4KIAogICAgICAgICBBZGQgYSBsYW1iZGEtYmFzZWQgbWFwIGZvciBWZWN0b3JzCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV1RGL3d0Zi9Qcm9jZXNzSUQuaCBiL1NvdXJjZS9XVEYvd3RmL1Byb2Nlc3NJ
RC5oCmluZGV4IGY4NDcxNmU4ZDkzLi5jY2RjMmUwMDIwOSAxMDA2NDQKLS0tIGEvU291cmNlL1dU
Ri93dGYvUHJvY2Vzc0lELmgKKysrIGIvU291cmNlL1dURi93dGYvUHJvY2Vzc0lELmgKQEAgLTM2
LDcgKzM2LDEzIEBACiAKIG5hbWVzcGFjZSBXVEYgewogCi1pbmxpbmUgaW50IGdldEN1cnJlbnRQ
cm9jZXNzSUQoKQorI2lmIE9TKFdJTkRPV1MpCit1c2luZyBQcm9jZXNzSUQgPSBpbnQ7CisjZWxz
ZQordXNpbmcgUHJvY2Vzc0lEID0gcGlkX3Q7CisjZW5kaWYKKworaW5saW5lIFByb2Nlc3NJRCBn
ZXRDdXJyZW50UHJvY2Vzc0lEKCkKIHsKICNpZiBPUyhXSU5ET1dTKQogICAgIHJldHVybiBHZXRD
dXJyZW50UHJvY2Vzc0lkKCk7CkBAIC00OCw2ICs1NCw3IEBAIGlubGluZSBpbnQgZ2V0Q3VycmVu
dFByb2Nlc3NJRCgpCiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpnZXRDdXJyZW50
UHJvY2Vzc0lEOwordXNpbmcgV1RGOjpQcm9jZXNzSUQ7CiAKICNlbmRpZiAvLyBQcm9jZXNzSURf
aAogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQv
Q2hhbmdlTG9nCmluZGV4IDU5Yjc0MmI2ZWNjLi4wYmNkNmJjZDViOSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0MiBAQAorMjAxNy0wOS0xOSAgU3RlcGhhbiBTemFibyAgPHN0ZXBoYW4uc3phYm9Ac29u
eS5jb20+CisKKyAgICAgICAgW1dpbl0gV1RGOiBBZGQgYWxpYXMgZm9yIHByb2Nlc3MgaWQgdG8g
dXNlIGluIHBsYWNlIG9mIGRpcmVjdCB1c2VzIG9mIHBpZF90CisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzcwMTcKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9j
ZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmg6CisgICAgICAgICogU2hhcmVkL1dlYlByb2Nlc3NDcmVh
dGlvblBhcmFtZXRlcnMuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0FQSVByb2Nlc3NQb29s
Q29uZmlndXJhdGlvbi5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHQuY3Bw
OgorICAgICAgICAoV0tDb250ZXh0R2V0TmV0d29ya1Byb2Nlc3NJZGVudGlmaWVyKToKKyAgICAg
ICAgKFdLQ29udGV4dEdldERhdGFiYXNlUHJvY2Vzc0lkZW50aWZpZXIpOgorICAgICAgICAqIFVJ
UHJvY2Vzcy9BUEkvQy9XS0NvbnRleHRQcml2YXRlLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQ
SS9DL1dLUGFnZS5jcHA6CisgICAgICAgIChXS1BhZ2VHZXRQcm9jZXNzSWRlbnRpZmllcik6Cisg
ICAgICAgICogVUlQcm9jZXNzL0FQSS9DL1dLUGFnZVByaXZhdGUuaDoKKyAgICAgICAgKiBVSVBy
b2Nlc3MvQ2hpbGRQcm9jZXNzUHJveHkuaDoKKyAgICAgICAgKFdlYktpdDo6Q2hpbGRQcm9jZXNz
UHJveHk6OnByb2Nlc3NJZGVudGlmaWVyIGNvbnN0KToKKyAgICAgICAgKiBVSVByb2Nlc3MvTGF1
bmNoZXIvUHJvY2Vzc0xhdW5jaGVyLmNwcDoKKyAgICAgICAgKFdlYktpdDo6UHJvY2Vzc0xhdW5j
aGVyOjpkaWRGaW5pc2hMYXVuY2hpbmdQcm9jZXNzKToKKyAgICAgICAgKiBVSVByb2Nlc3MvTGF1
bmNoZXIvUHJvY2Vzc0xhdW5jaGVyLmg6CisgICAgICAgIChXZWJLaXQ6OlByb2Nlc3NMYXVuY2hl
cjo6cHJvY2Vzc0lkZW50aWZpZXIgY29uc3QpOgorICAgICAgICAqIFVJUHJvY2Vzcy9Qcm9jZXNz
QXNzZXJ0aW9uLmNwcDoKKyAgICAgICAgKFdlYktpdDo6UHJvY2Vzc0Fzc2VydGlvbjo6UHJvY2Vz
c0Fzc2VydGlvbik6CisgICAgICAgIChXZWJLaXQ6OlByb2Nlc3NBbmRVSUFzc2VydGlvbjo6UHJv
Y2Vzc0FuZFVJQXNzZXJ0aW9uKToKKyAgICAgICAgKiBVSVByb2Nlc3MvUHJvY2Vzc0Fzc2VydGlv
bi5oOgorICAgICAgICAoV2ViS2l0OjpQcm9jZXNzQXNzZXJ0aW9uOjpQcm9jZXNzQXNzZXJ0aW9u
KToKKyAgICAgICAgKiBVSVByb2Nlc3MvUHJvY2Vzc1Rocm90dGxlci5jcHA6CisgICAgICAgIChX
ZWJLaXQ6OlByb2Nlc3NUaHJvdHRsZXI6OmRpZENvbm5lY3RUb1Byb2Nlc3MpOgorICAgICAgICAq
IFVJUHJvY2Vzcy9Qcm9jZXNzVGhyb3R0bGVyLmg6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBh
Z2VQcm94eS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6cHJvY2Vzc0lkZW50
aWZpZXIgY29uc3QpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaDoKKyAgICAg
ICAgKiBVSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQ
cm9jZXNzUG9vbDo6bmV0d29ya1Byb2Nlc3NJZGVudGlmaWVyKToKKyAgICAgICAgKFdlYktpdDo6
V2ViUHJvY2Vzc1Bvb2w6OnN0b3JhZ2VQcm9jZXNzSWRlbnRpZmllcik6CisgICAgICAgICogVUlQ
cm9jZXNzL1dlYlByb2Nlc3NQb29sLmg6CisKIDIwMTctMDktMTQgIENhcmxvcyBHYXJjaWEgQ2Ft
cG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHVEtdW1dheWxhbmRdIEZsaWNr
ZXJpbmcgd2hlbiByZXNpemluZyB0aGUgd2luZG93CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmggYi9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJz
LmgKaW5kZXggMWViNzk3OTk2MTguLmQwYTMyZGJiMmYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmgKKysr
IGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFy
YW1ldGVycy5oCkBAIC0yOCw2ICsyOCw3IEBACiAjaW5jbHVkZSAiQXR0YWNobWVudC5oIgogI2lu
Y2x1ZGUgIkNhY2hlTW9kZWwuaCIKICNpbmNsdWRlICJTYW5kYm94RXh0ZW5zaW9uLmgiCisjaW5j
bHVkZSA8d3RmL1Byb2Nlc3NJRC5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KICNpbmNsdWRl
IDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIApAQCAtNzgsNyArNzksNyBAQCBzdHJ1Y3QgTmV0d29y
a1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMgewogICAgIFNlY29uZHMgbG9hZFRocm90dGxlTGF0
ZW5jeTsKIAogICAgIFZlY3RvcjxTdHJpbmc+IHVybFNjaGVtZXNSZWdpc3RlcmVkRm9yQ3VzdG9t
UHJvdG9jb2xzOwotICAgIHBpZF90IHByZXNlbnRpbmdBcHBsaWNhdGlvblBJRCB7IDAgfTsKKyAg
ICBQcm9jZXNzSUQgcHJlc2VudGluZ0FwcGxpY2F0aW9uUElEIHsgMCB9OwogCiAjaWYgUExBVEZP
Uk0oQ09DT0EpCiAgICAgU3RyaW5nIHBhcmVudFByb2Nlc3NOYW1lOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oIGIvU291cmNl
L1dlYktpdC9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oCmluZGV4IDU2MTg1
YWJlNzZiLi4wZTIzYzRiNmQ4OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2Vi
UHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dl
YlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaApAQCAtMzAsNiArMzAsNyBAQAogI2luY2x1ZGUg
IlRleHRDaGVja2VyU3RhdGUuaCIKICNpbmNsdWRlICJVc2VyRGF0YS5oIgogI2luY2x1ZGUgPHBh
bC9TZXNzaW9uSUQuaD4KKyNpbmNsdWRlIDx3dGYvUHJvY2Vzc0lELmg+CiAjaW5jbHVkZSA8d3Rm
L1JldGFpblB0ci5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KICNpbmNsdWRlIDx3dGYvdGV4
dC9TdHJpbmdIYXNoLmg+CkBAIC0xMzYsNyArMTM3LDcgQEAgc3RydWN0IFdlYlByb2Nlc3NDcmVh
dGlvblBhcmFtZXRlcnMgewogICAgIFN0cmluZyB1aVByb2Nlc3NCdW5kbGVJZGVudGlmaWVyOwog
I2VuZGlmCiAKLSAgICBwaWRfdCBwcmVzZW50aW5nQXBwbGljYXRpb25QSUQgeyAwIH07CisgICAg
UHJvY2Vzc0lEIHByZXNlbnRpbmdBcHBsaWNhdGlvblBJRCB7IDAgfTsKIAogI2lmIFBMQVRGT1JN
KENPQ09BKQogICAgIFdlYkNvcmU6Ok1hY2hTZW5kUmlnaHQgYWNjZWxlcmF0ZWRDb21wb3NpdGlu
Z1BvcnQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJUHJvY2Vz
c1Bvb2xDb25maWd1cmF0aW9uLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJUHJv
Y2Vzc1Bvb2xDb25maWd1cmF0aW9uLmgKaW5kZXggOTU0NDg0NzkzYjQuLmEwNmFhYTJkOWU2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJUHJvY2Vzc1Bvb2xDb25m
aWd1cmF0aW9uLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQSVByb2Nlc3NQ
b29sQ29uZmlndXJhdGlvbi5oCkBAIC0xMzksOCArMTM5LDggQEAgcHVibGljOgogICAgIHZvaWQg
c2V0Q1REYXRhQ29ubmVjdGlvblNlcnZpY2VUeXBlKGNvbnN0IFdURjo6U3RyaW5nJiBjdERhdGFD
b25uZWN0aW9uU2VydmljZVR5cGUpIHsgbV9jdERhdGFDb25uZWN0aW9uU2VydmljZVR5cGUgPSBj
dERhdGFDb25uZWN0aW9uU2VydmljZVR5cGU7IH0KICNlbmRpZgogCi0gICAgcGlkX3QgcHJlc2Vu
dGluZ0FwcGxpY2F0aW9uUElEKCkgY29uc3QgeyByZXR1cm4gbV9wcmVzZW50aW5nQXBwbGljYXRp
b25QSUQ7IH0KLSAgICB2b2lkIHNldFByZXNlbnRpbmdBcHBsaWNhdGlvblBJRChwaWRfdCBwaWQp
IHsgbV9wcmVzZW50aW5nQXBwbGljYXRpb25QSUQgPSBwaWQ7IH0KKyAgICBQcm9jZXNzSUQgcHJl
c2VudGluZ0FwcGxpY2F0aW9uUElEKCkgY29uc3QgeyByZXR1cm4gbV9wcmVzZW50aW5nQXBwbGlj
YXRpb25QSUQ7IH0KKyAgICB2b2lkIHNldFByZXNlbnRpbmdBcHBsaWNhdGlvblBJRChQcm9jZXNz
SUQgcGlkKSB7IG1fcHJlc2VudGluZ0FwcGxpY2F0aW9uUElEID0gcGlkOyB9CiAKIHByaXZhdGU6
CiAgICAgYm9vbCBtX3Nob3VsZEhhdmVMZWdhY3lEYXRhU3RvcmUgeyBmYWxzZSB9OwpAQCAtMTc0
LDcgKzE3NCw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBtX2Fsd2F5c1J1bnNBdEJhY2tncm91bmRQ
cmlvcml0eSB7IGZhbHNlIH07CiAgICAgYm9vbCBtX3Nob3VsZFRha2VVSUJhY2tncm91bmRBc3Nl
cnRpb24geyB0cnVlIH07CiAgICAgYm9vbCBtX3Nob3VsZENhcHR1cmVBdWRpb0luVUlQcm9jZXNz
IHsgZmFsc2UgfTsKLSAgICBwaWRfdCBtX3ByZXNlbnRpbmdBcHBsaWNhdGlvblBJRCB7IGdldEN1
cnJlbnRQcm9jZXNzSUQoKSB9OworICAgIFByb2Nlc3NJRCBtX3ByZXNlbnRpbmdBcHBsaWNhdGlv
blBJRCB7IGdldEN1cnJlbnRQcm9jZXNzSUQoKSB9OwogI2lmIFBMQVRGT1JNKElPUykKICAgICBX
VEY6OlN0cmluZyBtX2N0RGF0YUNvbm5lY3Rpb25TZXJ2aWNlVHlwZTsKICNlbmRpZgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tDb250ZXh0LmNwcCBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dC5jcHAKaW5kZXggMDVhNGVmOTRjYTku
Ljc4MzM4ZWQ2NTc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9X
S0NvbnRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4
dC5jcHAKQEAgLTU5OSwxMiArNTk5LDEyIEBAIHZvaWQgV0tDb250ZXh0VGVybWluYXRlTmV0d29y
a1Byb2Nlc3MoV0tDb250ZXh0UmVmIGNvbnRleHQpCiAgICAgdG9JbXBsKGNvbnRleHQpLT50ZXJt
aW5hdGVOZXR3b3JrUHJvY2VzcygpOwogfQogCi1waWRfdCBXS0NvbnRleHRHZXROZXR3b3JrUHJv
Y2Vzc0lkZW50aWZpZXIoV0tDb250ZXh0UmVmIGNvbnRleHRSZWYpCitQcm9jZXNzSUQgV0tDb250
ZXh0R2V0TmV0d29ya1Byb2Nlc3NJZGVudGlmaWVyKFdLQ29udGV4dFJlZiBjb250ZXh0UmVmKQog
ewogICAgIHJldHVybiB0b0ltcGwoY29udGV4dFJlZiktPm5ldHdvcmtQcm9jZXNzSWRlbnRpZmll
cigpOwogfQogCi1waWRfdCBXS0NvbnRleHRHZXREYXRhYmFzZVByb2Nlc3NJZGVudGlmaWVyKFdL
Q29udGV4dFJlZiBjb250ZXh0UmVmKQorUHJvY2Vzc0lEIFdLQ29udGV4dEdldERhdGFiYXNlUHJv
Y2Vzc0lkZW50aWZpZXIoV0tDb250ZXh0UmVmIGNvbnRleHRSZWYpCiB7CiAgICAgcmV0dXJuIHRv
SW1wbChjb250ZXh0UmVmKS0+c3RvcmFnZVByb2Nlc3NJZGVudGlmaWVyKCk7CiB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHRQcml2YXRlLmggYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHRQcml2YXRlLmgKaW5kZXggZmU4
Nzg4ZDM0MmIuLjAyZjkwYjkxN2I0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9BUEkvQy9XS0NvbnRleHRQcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
QVBJL0MvV0tDb250ZXh0UHJpdmF0ZS5oCkBAIC0yOSw3ICsyOSwxMiBAQAogI2luY2x1ZGUgPFdl
YktpdC9XS0Jhc2UuaD4KICNpbmNsdWRlIDxXZWJLaXQvV0tDb250ZXh0Lmg+CiAKKyNpZiBkZWZp
bmVkKFdJTjMyKSB8fCBkZWZpbmVkKF9XSU4zMikKK3R5cGVkZWYgaW50IFdLUHJvY2Vzc0lEOwor
I2Vsc2UKICNpbmNsdWRlIDx1bmlzdGQuaD4KK3R5cGVkZWYgcGlkX3QgV0tQcm9jZXNzSUQ7Cisj
ZW5kaWYKIAogI2lmZGVmIF9fY3BsdXNwbHVzCiBleHRlcm4gIkMiIHsKQEAgLTEwMCw4ICsxMDUs
OCBAQCBXS19FWFBPUlQgdm9pZCBXS0NvbnRleHRTZXRNZW1vcnlDYWNoZURpc2FibGVkKFdLQ29u
dGV4dFJlZiwgYm9vbCBkaXNhYmxlZCk7CiAKIFdLX0VYUE9SVCB2b2lkIFdLQ29udGV4dFNldEZv
bnRXaGl0ZWxpc3QoV0tDb250ZXh0UmVmLCBXS0FycmF5UmVmKTsKIAotV0tfRVhQT1JUIHBpZF90
IFdLQ29udGV4dEdldE5ldHdvcmtQcm9jZXNzSWRlbnRpZmllcihXS0NvbnRleHRSZWYgY29udGV4
dCk7Ci1XS19FWFBPUlQgcGlkX3QgV0tDb250ZXh0R2V0RGF0YWJhc2VQcm9jZXNzSWRlbnRpZmll
cihXS0NvbnRleHRSZWYgY29udGV4dCk7CitXS19FWFBPUlQgV0tQcm9jZXNzSUQgV0tDb250ZXh0
R2V0TmV0d29ya1Byb2Nlc3NJZGVudGlmaWVyKFdLQ29udGV4dFJlZiBjb250ZXh0KTsKK1dLX0VY
UE9SVCBXS1Byb2Nlc3NJRCBXS0NvbnRleHRHZXREYXRhYmFzZVByb2Nlc3NJZGVudGlmaWVyKFdL
Q29udGV4dFJlZiBjb250ZXh0KTsKIAogI2lmZGVmIF9fY3BsdXNwbHVzCiB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2UuY3BwIGIvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvQVBJL0MvV0tQYWdlLmNwcAppbmRleCAwNjdjMGVjOTRjMC4uMDQxOGNlODA1
ZmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLUGFnZS5jcHAK
KysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQYWdlLmNwcApAQCAtMjc0MSw3
ICsyNzQxLDcgQEAgdm9pZCBXS1BhZ2VTZXRJZ25vcmVzVmlld3BvcnRTY2FsZUxpbWl0cyhXS1Bh
Z2VSZWYgcGFnZSwgYm9vbCBpZ25vcmVzVmlld3BvcnRTY2EKICNlbmRpZgogfQogCi1waWRfdCBX
S1BhZ2VHZXRQcm9jZXNzSWRlbnRpZmllcihXS1BhZ2VSZWYgcGFnZSkKK1Byb2Nlc3NJRCBXS1Bh
Z2VHZXRQcm9jZXNzSWRlbnRpZmllcihXS1BhZ2VSZWYgcGFnZSkKIHsKICAgICByZXR1cm4gdG9J
bXBsKHBhZ2UpLT5wcm9jZXNzSWRlbnRpZmllcigpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQYWdlUHJpdmF0ZS5oIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvQVBJL0MvV0tQYWdlUHJpdmF0ZS5oCmluZGV4IDg3MTc0Njg4NzYxLi4wZGY4MzY0ODk0
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQYWdlUHJpdmF0
ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLUGFnZVByaXZhdGUuaApA
QCAtMjksNyArMjksMTIgQEAKICNpbmNsdWRlIDxXZWJLaXQvV0tCYXNlLmg+CiAjaW5jbHVkZSA8
V2ViS2l0L1dLUGFnZS5oPgogCisjaWYgZGVmaW5lZChXSU4zMikgfHwgZGVmaW5lZChfV0lOMzIp
Cit0eXBlZGVmIGludCBXS1Byb2Nlc3NJRDsKKyNlbHNlCiAjaW5jbHVkZSA8dW5pc3RkLmg+Cit0
eXBlZGVmIHBpZF90IFdLUHJvY2Vzc0lEOworI2VuZGlmCiAKICNpZmRlZiBfX2NwbHVzcGx1cwog
ZXh0ZXJuICJDIiB7CkBAIC0xNzEsNyArMTc2LDcgQEAgV0tfRVhQT1JUIHZvaWQgV0tQYWdlUmVz
dG9yZUZyb21TZXNzaW9uU3RhdGVXaXRob3V0TmF2aWdhdGlvbihXS1BhZ2VSZWYgcGFnZSwgV0sK
IAogV0tfRVhQT1JUIHZvaWQgV0tQYWdlU2V0SWdub3Jlc1ZpZXdwb3J0U2NhbGVMaW1pdHMoV0tQ
YWdlUmVmIHBhZ2UsIGJvb2wgaWdub3Jlc1ZpZXdwb3J0U2NhbGVMaW1pdHMpOwogCi1XS19FWFBP
UlQgcGlkX3QgV0tQYWdlR2V0UHJvY2Vzc0lkZW50aWZpZXIoV0tQYWdlUmVmIHBhZ2UpOworV0tf
RVhQT1JUIFdLUHJvY2Vzc0lEIFdLUGFnZUdldFByb2Nlc3NJZGVudGlmaWVyKFdLUGFnZVJlZiBw
YWdlKTsKIAogI2lmZGVmIF9fY3BsdXNwbHVzCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9DaGlsZFByb2Nlc3NQcm94eS5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
Q2hpbGRQcm9jZXNzUHJveHkuaAppbmRleCBjNjNiOWJlMTQzYy4uN2IzMWM4ZTNjNGEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NoaWxkUHJvY2Vzc1Byb3h5LmgKKysrIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ2hpbGRQcm9jZXNzUHJveHkuaApAQCAtMjksNiArMjks
NyBAQAogI2luY2x1ZGUgIk1lc3NhZ2VSZWNlaXZlck1hcC5oIgogI2luY2x1ZGUgIlByb2Nlc3NM
YXVuY2hlci5oIgogCisjaW5jbHVkZSA8d3RmL1Byb2Nlc3NJRC5oPgogI2luY2x1ZGUgPHd0Zi9T
eXN0ZW1UcmFjaW5nLmg+CiAjaW5jbHVkZSA8d3RmL1RocmVhZFNhZmVSZWZDb3VudGVkLmg+CiAK
QEAgLTcyLDcgKzczLDcgQEAgcHVibGljOgogICAgIH07CiAgICAgU3RhdGUgc3RhdGUoKSBjb25z
dDsKIAotICAgIHBpZF90IHByb2Nlc3NJZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9wcm9j
ZXNzTGF1bmNoZXIgPyBtX3Byb2Nlc3NMYXVuY2hlci0+cHJvY2Vzc0lkZW50aWZpZXIoKSA6IDA7
IH0KKyAgICBQcm9jZXNzSUQgcHJvY2Vzc0lkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX3By
b2Nlc3NMYXVuY2hlciA/IG1fcHJvY2Vzc0xhdW5jaGVyLT5wcm9jZXNzSWRlbnRpZmllcigpIDog
MDsgfQogCiAgICAgYm9vbCBjYW5TZW5kTWVzc2FnZSgpIGNvbnN0IHsgcmV0dXJuIHN0YXRlKCkg
IT0gU3RhdGU6OlRlcm1pbmF0ZWQ7fQogICAgIGJvb2wgc2VuZE1lc3NhZ2Uoc3RkOjp1bmlxdWVf
cHRyPElQQzo6RW5jb2Rlcj4sIE9wdGlvblNldDxJUEM6OlNlbmRPcHRpb24+KTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0xhdW5jaGVyL1Byb2Nlc3NMYXVuY2hlci5jcHAg
Yi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9MYXVuY2hlci9Qcm9jZXNzTGF1bmNoZXIuY3BwCmlu
ZGV4IDA4OWMxN2MzMzNmLi5mMmY3MmFjYzNmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvTGF1bmNoZXIvUHJvY2Vzc0xhdW5jaGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9MYXVuY2hlci9Qcm9jZXNzTGF1bmNoZXIuY3BwCkBAIC00MSw3ICs0MSw3IEBA
IFByb2Nlc3NMYXVuY2hlcjo6UHJvY2Vzc0xhdW5jaGVyKENsaWVudCogY2xpZW50LCBjb25zdCBM
YXVuY2hPcHRpb25zJiBsYXVuY2hPcHRpCiAgICAgbGF1bmNoUHJvY2VzcygpOwogfQogCi12b2lk
IFByb2Nlc3NMYXVuY2hlcjo6ZGlkRmluaXNoTGF1bmNoaW5nUHJvY2VzcyhwaWRfdCBwcm9jZXNz
SWRlbnRpZmllciwgSVBDOjpDb25uZWN0aW9uOjpJZGVudGlmaWVyIGlkZW50aWZpZXIpCit2b2lk
IFByb2Nlc3NMYXVuY2hlcjo6ZGlkRmluaXNoTGF1bmNoaW5nUHJvY2VzcyhQcm9jZXNzSUQgcHJv
Y2Vzc0lkZW50aWZpZXIsIElQQzo6Q29ubmVjdGlvbjo6SWRlbnRpZmllciBpZGVudGlmaWVyKQog
ewogICAgIG1fcHJvY2Vzc0lkZW50aWZpZXIgPSBwcm9jZXNzSWRlbnRpZmllcjsKICAgICBtX2lz
TGF1bmNoaW5nID0gZmFsc2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9M
YXVuY2hlci9Qcm9jZXNzTGF1bmNoZXIuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0xhdW5j
aGVyL1Byb2Nlc3NMYXVuY2hlci5oCmluZGV4IDY3OThmYzlmOWQwLi4wMjJhYjZhNzc0MiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvTGF1bmNoZXIvUHJvY2Vzc0xhdW5jaGVy
LmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvTGF1bmNoZXIvUHJvY2Vzc0xhdW5jaGVy
LmgKQEAgLTI3LDYgKzI3LDcgQEAKIAogI2luY2x1ZGUgIkNvbm5lY3Rpb24uaCIKICNpbmNsdWRl
IDx3dGYvSGFzaE1hcC5oPgorI2luY2x1ZGUgPHd0Zi9Qcm9jZXNzSUQuaD4KICNpbmNsdWRlIDx3
dGYvUmVmUHRyLmg+CiAjaW5jbHVkZSA8d3RmL1RocmVhZGluZy5oPgogI2luY2x1ZGUgPHd0Zi9X
ZWFrUHRyLmg+CkBAIC02OSw3ICs3MCw3IEBAIHB1YmxpYzoKICAgICB9CiAKICAgICBib29sIGlz
TGF1bmNoaW5nKCkgY29uc3QgeyByZXR1cm4gbV9pc0xhdW5jaGluZzsgfQotICAgIHBpZF90IHBy
b2Nlc3NJZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9wcm9jZXNzSWRlbnRpZmllcjsgfQor
ICAgIFByb2Nlc3NJRCBwcm9jZXNzSWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1fcHJvY2Vz
c0lkZW50aWZpZXI7IH0KIAogICAgIHZvaWQgdGVybWluYXRlUHJvY2VzcygpOwogICAgIHZvaWQg
aW52YWxpZGF0ZSgpOwpAQCAtNzgsNyArNzksNyBAQCBwcml2YXRlOgogICAgIFByb2Nlc3NMYXVu
Y2hlcihDbGllbnQqLCBjb25zdCBMYXVuY2hPcHRpb25zJiBsYXVuY2hPcHRpb25zKTsKIAogICAg
IHZvaWQgbGF1bmNoUHJvY2VzcygpOwotICAgIHZvaWQgZGlkRmluaXNoTGF1bmNoaW5nUHJvY2Vz
cyhwaWRfdCwgSVBDOjpDb25uZWN0aW9uOjpJZGVudGlmaWVyKTsKKyAgICB2b2lkIGRpZEZpbmlz
aExhdW5jaGluZ1Byb2Nlc3MoUHJvY2Vzc0lELCBJUEM6OkNvbm5lY3Rpb246OklkZW50aWZpZXIp
OwogCiAgICAgdm9pZCBwbGF0Zm9ybUludmFsaWRhdGUoKTsKIApAQCAtOTEsNyArOTIsNyBAQCBw
cml2YXRlOgogICAgIFdlYWtQdHJGYWN0b3J5PFByb2Nlc3NMYXVuY2hlcj4gbV93ZWFrUHRyRmFj
dG9yeTsKICAgICBjb25zdCBMYXVuY2hPcHRpb25zIG1fbGF1bmNoT3B0aW9uczsKICAgICBib29s
IG1faXNMYXVuY2hpbmc7Ci0gICAgcGlkX3QgbV9wcm9jZXNzSWRlbnRpZmllcjsKKyAgICBQcm9j
ZXNzSUQgbV9wcm9jZXNzSWRlbnRpZmllcjsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc0Fzc2VydGlvbi5jcHAg
Yi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmNwcAppbmRleCBhNjZl
MTIyNGYzNC4uOTJlM2Q4YzA3NTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1Byb2Nlc3NBc3NlcnRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nl
c3NBc3NlcnRpb24uY3BwCkBAIC0zMCw3ICszMCw3IEBACiAKIG5hbWVzcGFjZSBXZWJLaXQgewog
Ci1Qcm9jZXNzQXNzZXJ0aW9uOjpQcm9jZXNzQXNzZXJ0aW9uKHBpZF90LCBBc3NlcnRpb25TdGF0
ZSBhc3NlcnRpb25TdGF0ZSwgRnVuY3Rpb248dm9pZCgpPiYmKQorUHJvY2Vzc0Fzc2VydGlvbjo6
UHJvY2Vzc0Fzc2VydGlvbihQcm9jZXNzSUQsIEFzc2VydGlvblN0YXRlIGFzc2VydGlvblN0YXRl
LCBGdW5jdGlvbjx2b2lkKCk+JiYpCiAgICAgOiBtX2Fzc2VydGlvblN0YXRlKGFzc2VydGlvblN0
YXRlKQogewogfQpAQCAtNDcsNyArNDcsNyBAQCB2b2lkIFByb2Nlc3NBc3NlcnRpb246OnNldFN0
YXRlKEFzc2VydGlvblN0YXRlIGFzc2VydGlvblN0YXRlKQogICAgIG1fYXNzZXJ0aW9uU3RhdGUg
PSBhc3NlcnRpb25TdGF0ZTsKIH0KIAotUHJvY2Vzc0FuZFVJQXNzZXJ0aW9uOjpQcm9jZXNzQW5k
VUlBc3NlcnRpb24ocGlkX3QgcGlkLCBBc3NlcnRpb25TdGF0ZSBhc3NlcnRpb25TdGF0ZSkKK1By
b2Nlc3NBbmRVSUFzc2VydGlvbjo6UHJvY2Vzc0FuZFVJQXNzZXJ0aW9uKFByb2Nlc3NJRCBwaWQs
IEFzc2VydGlvblN0YXRlIGFzc2VydGlvblN0YXRlKQogICAgIDogUHJvY2Vzc0Fzc2VydGlvbihw
aWQsIGFzc2VydGlvblN0YXRlKQogewogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvUHJvY2Vzc0Fzc2VydGlvbi5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vz
c0Fzc2VydGlvbi5oCmluZGV4IGU1ZTNhM2I2MTQ5Li4yMDMyMDAwNjU1NyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc0Fzc2VydGlvbi5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NBc3NlcnRpb24uaApAQCAtMjgsNiArMjgsNyBAQAogCiAj
aW5jbHVkZSA8dW5pc3RkLmg+CiAjaW5jbHVkZSA8d3RmL0Z1bmN0aW9uLmg+CisjaW5jbHVkZSA8
d3RmL1Byb2Nlc3NJRC5oPgogCiAjaWYgUExBVEZPUk0oSU9TKSAmJiAhUExBVEZPUk0oSU9TX1NJ
TVVMQVRPUikKICNpbmNsdWRlIDx3dGYvUmV0YWluUHRyLmg+CkBAIC01MSw3ICs1Miw3IEBAIHB1
YmxpYzoKIAogY2xhc3MgUHJvY2Vzc0Fzc2VydGlvbiB7CiBwdWJsaWM6Ci0gICAgUHJvY2Vzc0Fz
c2VydGlvbihwaWRfdCwgQXNzZXJ0aW9uU3RhdGUsIEZ1bmN0aW9uPHZvaWQoKT4mJiBpbnZhbGlk
YXRpb25DYWxsYmFjayA9IHsgfSk7CisgICAgUHJvY2Vzc0Fzc2VydGlvbihQcm9jZXNzSUQsIEFz
c2VydGlvblN0YXRlLCBGdW5jdGlvbjx2b2lkKCk+JiYgaW52YWxpZGF0aW9uQ2FsbGJhY2sgPSB7
IH0pOwogICAgIHZpcnR1YWwgflByb2Nlc3NBc3NlcnRpb24oKTsKIAogICAgIHZpcnR1YWwgdm9p
ZCBzZXRDbGllbnQoUHJvY2Vzc0Fzc2VydGlvbkNsaWVudCYgY2xpZW50KSB7IG1fY2xpZW50ID0g
JmNsaWVudDsgfQpAQCAtODIsNyArODMsNyBAQCBwcml2YXRlOgogICAgIAogY2xhc3MgUHJvY2Vz
c0FuZFVJQXNzZXJ0aW9uIGZpbmFsIDogcHVibGljIFByb2Nlc3NBc3NlcnRpb24gewogcHVibGlj
OgotICAgIFByb2Nlc3NBbmRVSUFzc2VydGlvbihwaWRfdCwgQXNzZXJ0aW9uU3RhdGUpOworICAg
IFByb2Nlc3NBbmRVSUFzc2VydGlvbihQcm9jZXNzSUQsIEFzc2VydGlvblN0YXRlKTsKICAgICB+
UHJvY2Vzc0FuZFVJQXNzZXJ0aW9uKCk7CiAKICAgICB2b2lkIHNldENsaWVudChQcm9jZXNzQXNz
ZXJ0aW9uQ2xpZW50JikgZmluYWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9Qcm9jZXNzVGhyb3R0bGVyLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NU
aHJvdHRsZXIuY3BwCmluZGV4IGVlZDNlNjAxYWZlLi44NmE4ZmFlZGEzNSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc1Rocm90dGxlci5jcHAKKysrIGIvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc1Rocm90dGxlci5jcHAKQEAgLTkxLDcgKzkxLDcgQEAg
dm9pZCBQcm9jZXNzVGhyb3R0bGVyOjp1cGRhdGVBc3NlcnRpb24oKQogICAgIHVwZGF0ZUFzc2Vy
dGlvbk5vdygpOwogfQogCi12b2lkIFByb2Nlc3NUaHJvdHRsZXI6OmRpZENvbm5lY3RUb1Byb2Nl
c3MocGlkX3QgcGlkKQordm9pZCBQcm9jZXNzVGhyb3R0bGVyOjpkaWRDb25uZWN0VG9Qcm9jZXNz
KFByb2Nlc3NJRCBwaWQpCiB7CiAgICAgUkVMRUFTRV9MT0coUHJvY2Vzc1N1c3BlbnNpb24sICIl
cCAtIFByb2Nlc3NUaHJvdHRsZXI6OmRpZENvbm5lY3RUb1Byb2Nlc3MoJWQpIiwgdGhpcywgcGlk
KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc1Rocm90dGxl
ci5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc1Rocm90dGxlci5oCmluZGV4IGNi
MWE0ZjI2ZWMzLi43ZDkwZGI2NjQzZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvUHJvY2Vzc1Rocm90dGxlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nl
c3NUaHJvdHRsZXIuaApAQCAtMjgsNiArMjgsNyBAQAogCiAjaW5jbHVkZSAiUHJvY2Vzc0Fzc2Vy
dGlvbi5oIgogCisjaW5jbHVkZSA8d3RmL1Byb2Nlc3NJRC5oPgogI2luY2x1ZGUgPHd0Zi9SZWZD
b3VudGVyLmg+CiAjaW5jbHVkZSA8d3RmL1J1bkxvb3AuaD4KICNpbmNsdWRlIDx3dGYvV2Vha1B0
ci5oPgpAQCAtNTYsNyArNTcsNyBAQCBwdWJsaWM6CiAgICAgaW5saW5lIEZvcmVncm91bmRBY3Rp
dml0eVRva2VuIGZvcmVncm91bmRBY3Rpdml0eVRva2VuKCkgY29uc3Q7CiAgICAgaW5saW5lIEJh
Y2tncm91bmRBY3Rpdml0eVRva2VuIGJhY2tncm91bmRBY3Rpdml0eVRva2VuKCkgY29uc3Q7CiAg
ICAgCi0gICAgdm9pZCBkaWRDb25uZWN0VG9Qcm9jZXNzKHBpZF90KTsKKyAgICB2b2lkIGRpZENv
bm5lY3RUb1Byb2Nlc3MoUHJvY2Vzc0lEKTsKICAgICB2b2lkIHByb2Nlc3NSZWFkeVRvU3VzcGVu
ZCgpOwogICAgIHZvaWQgZGlkQ2FuY2VsUHJvY2Vzc1N1c3BlbnNpb24oKTsKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcCBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKaW5kZXggOWNjNWVmYTYzNzIuLjcyZjA0NmQw
OGI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKQEAgLTQ0MSw3
ICs0NDEsNyBAQCBjb25zdCBBUEk6OlBhZ2VDb25maWd1cmF0aW9uJiBXZWJQYWdlUHJveHk6OmNv
bmZpZ3VyYXRpb24oKSBjb25zdAogICAgIHJldHVybiBtX2NvbmZpZ3VyYXRpb24uZ2V0KCk7CiB9
CiAKLXBpZF90IFdlYlBhZ2VQcm94eTo6cHJvY2Vzc0lkZW50aWZpZXIoKSBjb25zdAorUHJvY2Vz
c0lEIFdlYlBhZ2VQcm94eTo6cHJvY2Vzc0lkZW50aWZpZXIoKSBjb25zdAogewogICAgIGlmICht
X2lzQ2xvc2VkKQogICAgICAgICByZXR1cm4gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFn
ZVByb3h5LmgKaW5kZXggZTQzMzdiY2ZlZDEuLmQ4ZTgzMjVkOTg1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9XZWJQYWdlUHJveHkuaApAQCAtODQsNiArODQsNyBAQAogI2luY2x1ZGUgPHd0Zi9I
YXNoTWFwLmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KICNpbmNsdWRlIDx3dGYvTW9ub3Rv
bmljVGltZS5oPgorI2luY2x1ZGUgPHd0Zi9Qcm9jZXNzSUQuaD4KICNpbmNsdWRlIDx3dGYvUmVm
Lmg+CiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KQEAg
LTg3NSw3ICs4NzYsNyBAQCBwdWJsaWM6CiAjZW5kaWYKIAogICAgIFdlYlByb2Nlc3NQcm94eSYg
cHJvY2VzcygpIHsgcmV0dXJuIG1fcHJvY2VzczsgfQotICAgIHBpZF90IHByb2Nlc3NJZGVudGlm
aWVyKCkgY29uc3Q7CisgICAgUHJvY2Vzc0lEIHByb2Nlc3NJZGVudGlmaWVyKCkgY29uc3Q7CiAK
ICAgICBXZWJQcmVmZXJlbmNlcyYgcHJlZmVyZW5jZXMoKSB7IHJldHVybiBtX3ByZWZlcmVuY2Vz
OyB9CiAgICAgdm9pZCBzZXRQcmVmZXJlbmNlcyhXZWJQcmVmZXJlbmNlcyYpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwIGIvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCmluZGV4IDk4ZjY4YTdkNDc5Li43ZjM0
YWY4YzQzOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bv
b2wuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcApA
QCAtMTA4Myw3ICsxMDgzLDcgQEAgdm9pZCBXZWJQcm9jZXNzUG9vbDo6cmVmcmVzaFBsdWdpbnMo
KQogCiAjZW5kaWYgLy8gRU5BQkxFKE5FVFNDQVBFX1BMVUdJTl9BUEkpCiAKLXBpZF90IFdlYlBy
b2Nlc3NQb29sOjpuZXR3b3JrUHJvY2Vzc0lkZW50aWZpZXIoKQorUHJvY2Vzc0lEIFdlYlByb2Nl
c3NQb29sOjpuZXR3b3JrUHJvY2Vzc0lkZW50aWZpZXIoKQogewogICAgIGlmICghbV9uZXR3b3Jr
UHJvY2VzcykKICAgICAgICAgcmV0dXJuIDA7CkBAIC0xMDkxLDcgKzEwOTEsNyBAQCBwaWRfdCBX
ZWJQcm9jZXNzUG9vbDo6bmV0d29ya1Byb2Nlc3NJZGVudGlmaWVyKCkKICAgICByZXR1cm4gbV9u
ZXR3b3JrUHJvY2Vzcy0+cHJvY2Vzc0lkZW50aWZpZXIoKTsKIH0KIAotcGlkX3QgV2ViUHJvY2Vz
c1Bvb2w6OnN0b3JhZ2VQcm9jZXNzSWRlbnRpZmllcigpCitQcm9jZXNzSUQgV2ViUHJvY2Vzc1Bv
b2w6OnN0b3JhZ2VQcm9jZXNzSWRlbnRpZmllcigpCiB7CiAgICAgaWYgKCFtX3N0b3JhZ2VQcm9j
ZXNzKQogICAgICAgICByZXR1cm4gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1dlYlByb2Nlc3NQb29sLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNz
UG9vbC5oCmluZGV4IDI0ZWJhYTE4M2Q4Li5lMTlmNmRmMmFmOCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5oCkBAIC00OSw2ICs0OSw3IEBACiAjaW5jbHVkZSA8d3Rm
L0ZvcndhcmQuaD4KICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUgPHd0Zi9IYXNo
U2V0Lmg+CisjaW5jbHVkZSA8d3RmL1Byb2Nlc3NJRC5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3Vu
dGVyLmg+CiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmlu
Z0hhc2guaD4KQEAgLTE5OSw4ICsyMDAsOCBAQCBwdWJsaWM6CiAgICAgY29uc3QgSGFzaE1hcDxT
dHJpbmcsIEhhc2hNYXA8U3RyaW5nLCBIYXNoTWFwPFN0cmluZywgdWludDhfdD4+PiYgcGx1Z2lu
TG9hZENsaWVudFBvbGljaWVzKCkgY29uc3QgeyByZXR1cm4gbV9wbHVnaW5Mb2FkQ2xpZW50UG9s
aWNpZXM7IH0KICNlbmRpZgogCi0gICAgcGlkX3QgbmV0d29ya1Byb2Nlc3NJZGVudGlmaWVyKCk7
Ci0gICAgcGlkX3Qgc3RvcmFnZVByb2Nlc3NJZGVudGlmaWVyKCk7CisgICAgUHJvY2Vzc0lEIG5l
dHdvcmtQcm9jZXNzSWRlbnRpZmllcigpOworICAgIFByb2Nlc3NJRCBzdG9yYWdlUHJvY2Vzc0lk
ZW50aWZpZXIoKTsKIAogICAgIHZvaWQgc2V0QWx3YXlzVXNlc0NvbXBsZXhUZXh0Q29kZVBhdGgo
Ym9vbCk7CiAgICAgdm9pZCBzZXRTaG91bGRVc2VGb250U21vb3RoaW5nKGJvb2wpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>