<?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>223166</bug_id>
          
          <creation_ts>2021-03-14 15:01:46 -0700</creation_ts>
          <short_desc>[JSC] Implement Temporal</short_desc>
          <delta_ts>2026-03-17 15:56:30 -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>JavaScriptCore</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>REOPENED</bug_status>
          <resolution></resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=283825</see_also>
          <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>
          <dependson>275897</dependson>
    
    <dependson>305603</dependson>
    
    <dependson>227643</dependson>
    
    <dependson>228532</dependson>
    
    <dependson>228658</dependson>
    
    <dependson>229651</dependson>
    
    <dependson>229703</dependson>
    
    <dependson>229826</dependson>
    
    <dependson>229892</dependson>
    
    <dependson>230033</dependson>
    
    <dependson>298561</dependson>
    
    <dependson>298562</dependson>
    
    <dependson>298563</dependson>
    
    <dependson>298564</dependson>
    
    <dependson>298565</dependson>
    
    <dependson>300365</dependson>
    
    <dependson>300389</dependson>
    
    <dependson>300423</dependson>
    
    <dependson>300458</dependson>
    
    <dependson>300640</dependson>
    
    <dependson>302903</dependson>
    
    <dependson>302974</dependson>
    
    <dependson>303243</dependson>
    
    <dependson>303245</dependson>
    
    <dependson>303413</dependson>
    
    <dependson>303503</dependson>
    
    <dependson>303799</dependson>
    
    <dependson>303899</dependson>
    
    <dependson>303947</dependson>
    
    <dependson>304093</dependson>
    
    <dependson>304190</dependson>
    
    <dependson>305021</dependson>
    
    <dependson>305061</dependson>
    
    <dependson>305156</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Yusuke Suzuki">ysuzuki</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>annulen</cc>
    
    <cc>ap</cc>
    
    <cc>benoit.rouleau</cc>
    
    <cc>chi187</cc>
    
    <cc>dev</cc>
    
    <cc>dianeberlusconi</cc>
    
    <cc>eric</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>ikerins</cc>
    
    <cc>jarilittlenen</cc>
    
    <cc>keith_miller</cc>
    
    <cc>kyle.bavender</cc>
    
    <cc>mark.lam</cc>
    
    <cc>mehmetgelisin</cc>
    
    <cc>m.goleb+bugzilla</cc>
    
    <cc>moritz.mahringer</cc>
    
    <cc>Ms2ger</cc>
    
    <cc>msaboff</cc>
    
    <cc>philip.chimento</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>saam</cc>
    
    <cc>sergio</cc>
    
    <cc>tjc</cc>
    
    <cc>ttechno</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1739272</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-03-14 15:01:46 -0700</bug_when>
    <thetext>https://github.com/tc39/proposal-temporal</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1742183</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-03-22 04:36:35 -0700</bug_when>
    <thetext>&lt;rdar://problem/75685318&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1769686</commentid>
    <comment_count>2</comment_count>
      <attachid>431399</attachid>
    <who name="Philip Chimento">philip.chimento</who>
    <bug_when>2021-06-14 21:17:17 -0700</bug_when>
    <thetext>Created attachment 431399
Dependency graph

Hi! I am planning to start contributing to this soon. I understand some of us will be working on it in parallel so I&apos;ve planned out the dependencies between parts of Temporal in graphviz; see attachment.

Looks like there are four places to start: Temporal.Instant, Temporal.Duration, Temporal.PlainTime, and Temporal.PlainDate/Temporal.Calendar together.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1774544</commentid>
    <comment_count>3</comment_count>
      <attachid>432817</attachid>
    <who name="Philip Chimento">philip.chimento</who>
    <bug_when>2021-07-02 13:28:23 -0700</bug_when>
    <thetext>Created attachment 432817
Add empty Temporal and Temporal.now objects</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1774545</commentid>
    <comment_count>4</comment_count>
      <attachid>432817</attachid>
    <who name="Philip Chimento">philip.chimento</who>
    <bug_when>2021-07-02 13:29:25 -0700</bug_when>
    <thetext>Comment on attachment 432817
Add empty Temporal and Temporal.now objects

I&apos;ve added a boilerplate patch which should unblock the work in the dependency graph that I posted in comment 2. Let&apos;s discuss what to do next!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1774562</commentid>
    <comment_count>5</comment_count>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2021-07-02 14:10:28 -0700</bug_when>
    <thetext>Looks, like we need to bump JSC&apos;s Unified source file count! I can upload a patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1774589</commentid>
    <comment_count>6</comment_count>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2021-07-02 14:51:38 -0700</bug_when>
    <thetext>You should be able to retry your builds once https://bugs.webkit.org/show_bug.cgi?id=227643 lands.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1774623</commentid>
    <comment_count>7</comment_count>
      <attachid>432833</attachid>
    <who name="Philip Chimento">philip.chimento</who>
    <bug_when>2021-07-02 17:06:05 -0700</bug_when>
    <thetext>Created attachment 432833
Add empty Temporal and Temporal.now objects</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1774652</commentid>
    <comment_count>8</comment_count>
      <attachid>432833</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-07-03 00:08:14 -0700</bug_when>
    <thetext>Comment on attachment 432833
Add empty Temporal and Temporal.now objects

Can you add h an cpp files to xcodeproj?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1774871</commentid>
    <comment_count>9</comment_count>
      <attachid>432904</attachid>
    <who name="Philip Chimento">philip.chimento</who>
    <bug_when>2021-07-05 17:11:44 -0700</bug_when>
    <thetext>Created attachment 432904
Add empty Temporal and Temporal.now objects</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1774872</commentid>
    <comment_count>10</comment_count>
      <attachid>432904</attachid>
    <who name="Philip Chimento">philip.chimento</who>
    <bug_when>2021-07-05 17:12:26 -0700</bug_when>
    <thetext>Comment on attachment 432904
Add empty Temporal and Temporal.now objects

I&apos;m not very familiar with Xcode, but I hope this is correct.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1775007</commentid>
    <comment_count>11</comment_count>
      <attachid>432952</attachid>
    <who name="Philip Chimento">philip.chimento</who>
    <bug_when>2021-07-06 11:30:28 -0700</bug_when>
    <thetext>Created attachment 432952
Add empty Temporal and Temporal.now objects</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1775016</commentid>
    <comment_count>12</comment_count>
      <attachid>432955</attachid>
    <who name="Philip Chimento">philip.chimento</who>
    <bug_when>2021-07-06 11:51:35 -0700</bug_when>
    <thetext>Created attachment 432955
Add empty Temporal and Temporal.now objects</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1775154</commentid>
    <comment_count>13</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-07-06 17:48:58 -0700</bug_when>
    <thetext>Committed r279630 (239448@main): &lt;https://commits.webkit.org/239448@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 432955.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1775169</commentid>
    <comment_count>14</comment_count>
    <who name="Philip Chimento">philip.chimento</who>
    <bug_when>2021-07-06 19:14:07 -0700</bug_when>
    <thetext>Should be reopened, as this is just the beginning :-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1775191</commentid>
    <comment_count>15</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-07-06 20:49:37 -0700</bug_when>
    <thetext>Committed r279638 (239452@main): &lt;https://commits.webkit.org/239452@main&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1775399</commentid>
    <comment_count>16</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-07-07 12:43:04 -0700</bug_when>
    <thetext>Remain opening since attached patch is just a stub.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2109978</commentid>
    <comment_count>20</comment_count>
    <who name="Philip Chimento">philip.chimento</who>
    <bug_when>2025-04-09 11:39:24 -0700</bug_when>
    <thetext>Pull request: https://github.com/WebKit/WebKit/pull/43849</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2110217</commentid>
    <comment_count>21</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2025-04-10 08:43:45 -0700</bug_when>
    <thetext>Committed 293522@main (fec80ceedc41): &lt;https://commits.webkit.org/293522@main&gt;

Reviewed commits have been landed. Closing PR #43849 and removing active labels.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2110595</commentid>
    <comment_count>22</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2025-04-11 17:46:30 -0700</bug_when>
    <thetext>Committed 293612@main (9bf5fbaf1f2d): &lt;https://commits.webkit.org/293612@main&gt;

Reviewed commits have been landed. Closing PR #43911 and removing active labels.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2111047</commentid>
    <comment_count>23</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2025-04-15 07:17:46 -0700</bug_when>
    <thetext>Committed 293705@main (0c9c5585d939): &lt;https://commits.webkit.org/293705@main&gt;

Reviewed commits have been landed. Closing PR #43993 and removing active labels.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2111218</commentid>
    <comment_count>24</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2025-04-15 17:34:05 -0700</bug_when>
    <thetext>Committed 293742@main (09fe0b34ffb6): &lt;https://commits.webkit.org/293742@main&gt;

Reviewed commits have been landed. Closing PR #44103 and removing active labels.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2111704</commentid>
    <comment_count>25</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2025-04-17 16:49:01 -0700</bug_when>
    <thetext>Committed 293829@main (2a82bda90bd6): &lt;https://commits.webkit.org/293829@main&gt;

Reviewed commits have been landed. Closing PR #44129 and removing active labels.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2111875</commentid>
    <comment_count>26</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2025-04-18 12:20:47 -0700</bug_when>
    <thetext>Committed 293864@main (9dc6017a4421): &lt;https://commits.webkit.org/293864@main&gt;

Reviewed commits have been landed. Closing PR #44132 and removing active labels.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2117898</commentid>
    <comment_count>27</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2025-05-17 10:46:53 -0700</bug_when>
    <thetext>Committed 295056@main (ec92d4328cf1): &lt;https://commits.webkit.org/295056@main&gt;

Reviewed commits have been landed. Closing PR #45348 and removing active labels.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2118125</commentid>
    <comment_count>28</comment_count>
    <who name="Tim Chevalier">tjc</who>
    <bug_when>2025-05-19 09:29:14 -0700</bug_when>
    <thetext>This should be reopened as there are many more changes that need to be done. (I don&apos;t think I have permissions to do so.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2118140</commentid>
    <comment_count>29</comment_count>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2025-05-19 10:01:17 -0700</bug_when>
    <thetext>Reopened.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2118172</commentid>
    <comment_count>30</comment_count>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2025-05-19 12:19:53 -0700</bug_when>
    <thetext>&lt;rdar://151626148&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2118179</commentid>
    <comment_count>31</comment_count>
    <who name="Tim Chevalier">tjc</who>
    <bug_when>2025-05-19 12:52:02 -0700</bug_when>
    <thetext>Pull request: https://github.com/WebKit/WebKit/pull/45603</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2138227</commentid>
    <comment_count>32</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2025-08-22 05:32:01 -0700</bug_when>
    <thetext>Committed 299050@main (4927ce289367): &lt;https://commits.webkit.org/299050@main&gt;

Reviewed commits have been landed. Closing PR #45603 and removing active labels.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2138562</commentid>
    <comment_count>33</comment_count>
    <who name="Ms2ger (he/him; ⌚ UTC+1/+2)">Ms2ger</who>
    <bug_when>2025-08-25 01:27:21 -0700</bug_when>
    <thetext>Still not done</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2140231</commentid>
    <comment_count>34</comment_count>
    <who name="Philip Chimento">philip.chimento</who>
    <bug_when>2025-09-02 08:12:13 -0700</bug_when>
    <thetext>Pull request: https://github.com/WebKit/WebKit/pull/49776</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2140266</commentid>
    <comment_count>35</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2025-09-02 09:19:37 -0700</bug_when>
    <thetext>Committed 299436@main (707926f7f338): &lt;https://commits.webkit.org/299436@main&gt;

Reviewed commits have been landed. Closing PR #49776 and removing active labels.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2140544</commentid>
    <comment_count>36</comment_count>
    <who name="Ms2ger (he/him; ⌚ UTC+1/+2)">Ms2ger</who>
    <bug_when>2025-09-03 01:06:47 -0700</bug_when>
    <thetext>Still not done</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2140607</commentid>
    <comment_count>37</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2025-09-03 08:55:35 -0700</bug_when>
    <thetext>Would it be possible to use subtasks? Landing many changes under one bugzilla bug is unconventional, and not supported by tooling, as you can see.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2141065</commentid>
    <comment_count>38</comment_count>
    <who name="Tim Chevalier">tjc</who>
    <bug_when>2025-09-04 16:14:22 -0700</bug_when>
    <thetext>(In reply to Alexey Proskuryakov from comment #37)
&gt; Would it be possible to use subtasks? Landing many changes under one
&gt; bugzilla bug is unconventional, and not supported by tooling, as you can see.

I don&apos;t know how to use subtasks -- is there a guide somewhere? 

I expect there to be at least 50-60 more PRs for Temporal, so I&apos;m open to doing whatever creates the least amount of overhead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2141219</commentid>
    <comment_count>39</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2025-09-05 09:37:12 -0700</bug_when>
    <thetext>A subtask would be just a separate bug that this one is marked as &quot;depends on&quot; (you can see that there are several of those already).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2141313</commentid>
    <comment_count>40</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2025-09-05 14:11:46 -0700</bug_when>
    <thetext>Committed 299641@main (d2c65282e9e3): &lt;https://commits.webkit.org/299641@main&gt;

Reviewed commits have been landed. Closing PR #50328 and removing active labels.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2141319</commentid>
    <comment_count>41</comment_count>
    <who name="Tim Chevalier">tjc</who>
    <bug_when>2025-09-05 14:28:17 -0700</bug_when>
    <thetext>(In reply to Alexey Proskuryakov from comment #39)
&gt; A subtask would be just a separate bug that this one is marked as &quot;depends
&gt; on&quot; (you can see that there are several of those already).

Ah, I see. I was avoiding that since I thought it might be too disruptive to create 50 separate bugs for each of the sub-PRs that will go into implementing Temporal. What do you think?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2141402</commentid>
    <comment_count>42</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2025-09-05 17:36:08 -0700</bug_when>
    <thetext>That is better than attaching them all to this bug. Perhaps it&apos;s possible to do with fewer than 50, as well?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2141735</commentid>
    <comment_count>43</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2025-09-08 16:06:57 -0700</bug_when>
    <thetext>Committed 299723@main (6fcf0414ac9c): &lt;https://commits.webkit.org/299723@main&gt;

Reviewed commits have been landed. Closing PR #50388 and removing active labels.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2141736</commentid>
    <comment_count>44</comment_count>
    <who name="Tim Chevalier">tjc</who>
    <bug_when>2025-09-08 16:07:13 -0700</bug_when>
    <thetext>I&apos;ve created the following bugs, but I don&apos;t have Bugzilla permissions to edit the &quot;depends on&quot; for this bug.

https://bugs.webkit.org/show_bug.cgi?id=298561
https://bugs.webkit.org/show_bug.cgi?id=298562
https://bugs.webkit.org/show_bug.cgi?id=298563
https://bugs.webkit.org/show_bug.cgi?id=298564
https://bugs.webkit.org/show_bug.cgi?id=298565

This is not comprehensive, but I&apos;ll create more as-needed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2141737</commentid>
    <comment_count>45</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2025-09-08 16:14:05 -0700</bug_when>
    <thetext>&gt; I&apos;ve created the following bugs, but I don&apos;t have Bugzilla permissions to edit the &quot;depends on&quot; for this bug.

You have the permissions now.

&gt; This is not comprehensive, but I&apos;ll create more as-needed.

For future ones, please don&apos;t clone, just create new clean bugs.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2141738</commentid>
    <comment_count>46</comment_count>
    <who name="Tim Chevalier">tjc</who>
    <bug_when>2025-09-08 16:17:13 -0700</bug_when>
    <thetext>Thanks!</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>431399</attachid>
            <date>2021-06-14 21:17:17 -0700</date>
            <delta_ts>2021-06-14 21:17:17 -0700</delta_ts>
            <desc>Dependency graph</desc>
            <filename>temporal.gv.pdf</filename>
            <type>application/pdf</type>
            <size>16058</size>
            <attacher name="Philip Chimento">philip.chimento</attacher>
            
              <data encoding="base64">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
ILI5XrIchhHBBtDnpvSCFB9qKLKCqhIAmhSSYStRIyTr4DfMVlIckj6HLXR4XQ2jr24dibmDzXI+
mKcaW1FLTCylAcsMaCrNzDUgj+JJv4f2abHgEEdqkVsurWIEIY6UDTBNLTIdpeTE0qFu6qGHMYkB
sYfDocLTUUlh/ZBtjDTBqNBauNRir7SN6kOD04Kq9larGjg1cOdlXA6HCv2C4505i7f1nheyONoR
7CJn3fIWpHwzQYE+SywLeV2klPL8gUCbbk4ql+1B4gIWlaxTnsqmzApaNEwoUjybqihTNug+p2FI
H7syF27qDTKvzMW2xHYjcxI8yZwSWWSelKdEF/uRynOzI2QUCpC/jJdUSTuap9QLeACGHm3ZBg/j
ioUJQgrwyp5+1W8D0ZyHWM+yKAqIrjSJW9KcDNK3lZ6Xf13+H1E5vO0KZW5kc3RyZWFtCmVuZG9i
ago1IDAgb2JqCiAgIDY2MzYKZW5kb2JqCjMgMCBvYmoKPDwKICAgL0V4dEdTdGF0ZSA8PAogICAg
ICAvYTAgPDwgL0NBIDEgL2NhIDEgPj4KICAgPj4KICAgL0ZvbnQgPDwKICAgICAgL2YtMC0wIDYg
MCBSCiAgID4+Cj4+CmVuZG9iagoyIDAgb2JqCjw8IC9UeXBlIC9QYWdlICUgMQogICAvUGFyZW50
IDEgMCBSCiAgIC9NZWRpYUJveCBbIDAgMCAyMDMxIDUxNyBdCiAgIC9Db250ZW50cyA0IDAgUgog
ICAvR3JvdXAgPDwKICAgICAgL1R5cGUgL0dyb3VwCiAgICAgIC9TIC9UcmFuc3BhcmVuY3kKICAg
ICAgL0kgdHJ1ZQogICAgICAvQ1MgL0RldmljZVJHQgogICA+PgogICAvUmVzb3VyY2VzIDMgMCBS
Cj4+CmVuZG9iago3IDAgb2JqCjw8IC9MZW5ndGggOCAwIFIKICAgL0ZpbHRlciAvRmxhdGVEZWNv
ZGUKICAgL0xlbmd0aDEgOTkwMAo+PgpzdHJlYW0KeJzlent8FUW2blWtrt792K/e2Tvvx955EMIr
mYQAAZQ28sZhAgQEFA0QInJUggwKBkx8QEBxQCEBI0JkIvISIzKYYEQdI4iB0TOAdzgwgwrI8U7E
jAdnnJBUzureCeKc8dz73/3d3+lO767urq6qtda31rdWA6GEEI1UECDBuffPLj3Xb1sfQmKXE8Jm
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
WffA9Pfw9+T4ehfWbb3jSM8RmJkdMltmsMjgmM0hm2cGjwyGWgOtZZ6y4NE/XhfPjzn9nKtwy7mM
VB3mOkuYojnJ57yvywpV/f4CtPrL9wplbmRzdHJlYW0KZW5kb2JqCjEwIDAgb2JqCiAgIDQwMwpl
bmRvYmoKMTEgMCBvYmoKPDwgL1R5cGUgL0ZvbnREZXNjcmlwdG9yCiAgIC9Gb250TmFtZSAvQUZW
UUFCK0RlamFWdVNhbnMKICAgL0ZvbnRGYW1pbHkgKERlamFWdSBTYW5zKQogICAvRmxhZ3MgMzIK
ICAgL0ZvbnRCQm94IFsgLTEwMjAgLTQ2MiAxNzkzIDEyMzIgXQogICAvSXRhbGljQW5nbGUgMAog
ICAvQXNjZW50IDkyOAogICAvRGVzY2VudCAtMjM1CiAgIC9DYXBIZWlnaHQgMTIzMgogICAvU3Rl
bVYgODAKICAgL1N0ZW1IIDgwCiAgIC9Gb250RmlsZTIgNyAwIFIKPj4KZW5kb2JqCjYgMCBvYmoK
PDwgL1R5cGUgL0ZvbnQKICAgL1N1YnR5cGUgL1RydWVUeXBlCiAgIC9CYXNlRm9udCAvQUZWUUFC
K0RlamFWdVNhbnMKICAgL0ZpcnN0Q2hhciAzMgogICAvTGFzdENoYXIgMTIyCiAgIC9Gb250RGVz
Y3JpcHRvciAxMSAwIFIKICAgL0VuY29kaW5nIC9XaW5BbnNpRW5jb2RpbmcKICAgL1dpZHRocyBb
IDMxNyAwIDAgMCAwIDAgMCAwIDAgMCAwIDgzNyAzMTcgMCAzMTcgMCAwIDAgMCAwIDAgMCAwIDAg
MCAwIDAgMCAwIDAgMCAwIDAgNjg0IDAgNjk4IDc3MCAwIDU3NSAwIDAgMjk0IDAgMCAwIDg2MiAw
IDc4NyA2MDMgMCAwIDYzNCA2MTAgNzMxIDAgMCAwIDYxMCA2ODUgMzkwIDAgMzkwIDAgMCAwIDYx
MiA2MzQgNTQ5IDYzNCA2MTUgMCAwIDYzMyAyNzcgMCAwIDI3NyA5NzQgNjMzIDYxMSA2MzQgMCA0
MTEgNTIwIDM5MiA2MzMgNTkxIDgxNyAwIDU5MSA1MjQgXQogICAgL1RvVW5pY29kZSA5IDAgUgo+
PgplbmRvYmoKMSAwIG9iago8PCAvVHlwZSAvUGFnZXMKICAgL0tpZHMgWyAyIDAgUiBdCiAgIC9D
b3VudCAxCj4+CmVuZG9iagoxMiAwIG9iago8PCAvUHJvZHVjZXIgKGNhaXJvIDEuMTcuNCAoaHR0
cHM6Ly9jYWlyb2dyYXBoaWNzLm9yZykpCiAgIC9DcmVhdGlvbkRhdGUgKEQ6MjAyMTA2MTQyMTEz
MjktMDcnMDApCj4+CmVuZG9iagoxMyAwIG9iago8PCAvVHlwZSAvQ2F0YWxvZwogICAvUGFnZXMg
MSAwIFIKPj4KZW5kb2JqCnhyZWYKMCAxNAowMDAwMDAwMDAwIDY1NTM1IGYgCjAwMDAwMTU0NTYg
MDAwMDAgbiAKMDAwMDAwNjg2MCAwMDAwMCBuIAowMDAwMDA2NzUxIDAwMDAwIG4gCjAwMDAwMDAw
MTUgMDAwMDAgbiAKMDAwMDAwNjcyOCAwMDAwMCBuIAowMDAwMDE0OTgzIDAwMDAwIG4gCjAwMDAw
MDcwNzkgMDAwMDAgbiAKMDAwMDAxNDE4NSAwMDAwMCBuIAowMDAwMDE0MjA4IDAwMDAwIG4gCjAw
MDAwMTQ2ODkgMDAwMDAgbiAKMDAwMDAxNDcxMiAwMDAwMCBuIAowMDAwMDE1NTIxIDAwMDAwIG4g
CjAwMDAwMTU2MzggMDAwMDAgbiAKdHJhaWxlcgo8PCAvU2l6ZSAxNAogICAvUm9vdCAxMyAwIFIK
ICAgL0luZm8gMTIgMCBSCj4+CnN0YXJ0eHJlZgoxNTY5MQolJUVPRgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>432817</attachid>
            <date>2021-07-02 13:28:23 -0700</date>
            <delta_ts>2021-07-02 17:06:02 -0700</delta_ts>
            <desc>Add empty Temporal and Temporal.now objects</desc>
            <filename>bug-223166-20210702132822.patch</filename>
            <type>text/plain</type>
            <size>14434</size>
            <attacher name="Philip Chimento">philip.chimento</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc5NTA5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBj
NDVlOTZhNWZlYjg0MzNmMjg4MDc5ODAyZmMxMWI0NTBhZDk2ZjVlLi44MTUyNzA3YjY3YzIwMzE2
NDhmZTEyYmQ0MTcxMDk4MjZlMDI1NjA3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzOSBAQAorMjAyMS0wNy0wMiAgUGhpbGlwIENoaW1lbnRvICA8cGNoaW1lbnRvQGlnYWxp
YS5jb20+CisKKyAgICAgICAgW0pTQ10gSW1wbGVtZW50IFRlbXBvcmFsCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjMxNjYKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbnRlbmRlZCB0byBiZSB0aGUgZmly
c3QgcGF0Y2ggaW4gYSBzdGFjay4gQWRkcyBib2lsZXJwbGF0ZSBmb3IKKyAgICAgICAgVGVtcG9y
YWwgaW4gb3JkZXIgdG8gdW5ibG9jayBmdXJ0aGVyIHBhcmFsbGVsaXphYmxlIHdvcmsgb24gdGhp
cyBidWcuCisKKyAgICAgICAgVGhpcyBwYXRjaCBhZGRzIGEgZmVhdHVyZSBmbGFnIGZvciBUZW1w
b3JhbCwgYW5kIGEgdG9wbGV2ZWwgVGVtcG9yYWwKKyAgICAgICAgZ2xvYmFsIGNvbnRhaW5pbmcg
b25seSBUZW1wb3JhbC5ub3csIHdoaWNoIGlzIGl0c2VsZiBhbiBlbXB0eSBvYmplY3QuCisgICAg
ICAgIFRoZXNlIG9iamVjdHMgd2lsbCBiZSBmdXJ0aGVyIHBvcHVsYXRlZCBpbiBsYXRlciBwYXRj
aGVzLgorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6IEFkZCBUZW1wb3JhbE9iamVjdCBhbmQg
VGVtcG9yYWxOb3cuIFByb3BlcnR5IGxvb2t1cAorICAgICAgICAgIHRhYmxlIGluIFRlbXBvcmFs
T2JqZWN0LgorICAgICAgICAqIFNvdXJjZXMudHh0OiBBZGQgVGVtcG9yYWxPYmplY3QgYW5kIFRl
bXBvcmFsTm93LgorICAgICAgICAqIHJ1bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaDogQWRkICdU
ZW1wb3JhbCcgcHJvcGVydHkga2V5LgorICAgICAgICAqIHJ1bnRpbWUvSlNHbG9iYWxPYmplY3Qu
Y3BwOgorICAgICAgICAoSlNDOjpKU0dsb2JhbE9iamVjdDo6aW5pdCk6IENyZWF0ZSB0aGUgVGVt
cG9yYWwgZ2xvYmFsIGlmIHRoZSBmZWF0dXJlCisgICAgICAgICAgZmxhZyBpcyBlbmFibGVkLgor
ICAgICAgICAqIHJ1bnRpbWUvT3B0aW9uc0xpc3QuaDogQWRkIHVzZVRlbXBvcmFsIGZlYXR1cmUg
ZmxhZy4KKyAgICAgICAgKiBydW50aW1lL1RlbXBvcmFsTm93LmNwcDogQWRkZWQuCisgICAgICAg
IChKU0M6OlRlbXBvcmFsTm93OjpUZW1wb3JhbE5vdyk6CisgICAgICAgIChKU0M6OlRlbXBvcmFs
Tm93OjpjcmVhdGUpOgorICAgICAgICAoSlNDOjpUZW1wb3JhbE5vdzo6Y3JlYXRlU3RydWN0dXJl
KToKKyAgICAgICAgKEpTQzo6VGVtcG9yYWxOb3c6OmZpbmlzaENyZWF0aW9uKToKKyAgICAgICAg
KiBydW50aW1lL1RlbXBvcmFsTm93Lmg6IEFkZGVkLgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9y
YWxPYmplY3QuY3BwOiBBZGRlZC4KKyAgICAgICAgKEpTQzo6Y3JlYXRlTm93T2JqZWN0KToKKyAg
ICAgICAgKEpTQzo6VGVtcG9yYWxPYmplY3Q6OlRlbXBvcmFsT2JqZWN0KToKKyAgICAgICAgKEpT
Qzo6VGVtcG9yYWxPYmplY3Q6OmNyZWF0ZSk6CisgICAgICAgIChKU0M6OlRlbXBvcmFsT2JqZWN0
OjpjcmVhdGVTdHJ1Y3R1cmUpOgorICAgICAgICAoSlNDOjpUZW1wb3JhbE9iamVjdDo6ZmluaXNo
Q3JlYXRpb24pOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxPYmplY3QuaDogQWRkZWQuCisK
IDIwMjEtMDctMDIgIFBoaWxpcHBlIE5vcm1hbmQgIDxwbm9ybWFuZEBpZ2FsaWEuY29tPgogCiAg
ICAgICAgIFtHVEtdIEFkZCBuZXcgcmV2aXNpb24gdmFyaWFibGUgaW4gcGtnY29uZmlnIGZpbGUK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCBhZDM5MWQyOWZiZjNkYzA1ZTIw
OTJiNDM2ZTJmYTQxMjE5OWMzYmVhLi5kMGM1NjgzOWI5NjcxYWMwZThmZmM1OWVkZmJlMzdiM2Q1
YTFjMzM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ01ha2VMaXN0cy50eHQK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC0xMDcsNiArMTA3
LDcgQEAgc2V0KEphdmFTY3JpcHRDb3JlX09CSkVDVF9MVVRfU09VUkNFUwogICAgIHJ1bnRpbWUv
U3RyaW5nUHJvdG90eXBlLmNwcAogICAgIHJ1bnRpbWUvU3ltYm9sQ29uc3RydWN0b3IuY3BwCiAg
ICAgcnVudGltZS9TeW1ib2xQcm90b3R5cGUuY3BwCisgICAgcnVudGltZS9UZW1wb3JhbE9iamVj
dC5jcHAKIAogICAgIHdhc20vanMvSlNXZWJBc3NlbWJseS5jcHAKICAgICB3YXNtL2pzL0pTVG9X
YXNtSUNDYWxsZWUuY3BwCkBAIC0xMDg2LDYgKzEwODcsOCBAQCBzZXQoSmF2YVNjcmlwdENvcmVf
UFJJVkFURV9GUkFNRVdPUktfSEVBREVSUwogICAgIHJ1bnRpbWUvU3ltYm9sVGFibGUuaAogICAg
IHJ1bnRpbWUvU3ltYm9sVGFibGVPclNjb3BlRGVwdGguaAogICAgIHJ1bnRpbWUvVGVtcGxhdGVP
YmplY3REZXNjcmlwdG9yLmgKKyAgICBydW50aW1lL1RlbXBvcmFsTm93LmgKKyAgICBydW50aW1l
L1RlbXBvcmFsT2JqZWN0LmgKICAgICBydW50aW1lL1Rlc3RSdW5uZXJVdGlscy5oCiAgICAgcnVu
dGltZS9UaHJvd1Njb3BlLmgKICAgICBydW50aW1lL1RvTmF0aXZlRnJvbVZhbHVlLmgKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9Tb3VyY2VzLnR4dCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9Tb3VyY2VzLnR4dAppbmRleCA0MDI3MjJjYTRkNzZhOWViZjMyYzhjYzQwNDU3MGYz
MzY4YTJmMzExLi41NWRjYTFmZjA1M2Y0Y2U5ODVkMjFmZDZkYmMzZGQzYjBkZTdjYjAwIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvU291cmNlcy50eHQKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL1NvdXJjZXMudHh0CkBAIC0xMDA5LDYgKzEwMDksOCBAQCBydW50aW1lL1N5
bWJvbE9iamVjdC5jcHAKIHJ1bnRpbWUvU3ltYm9sUHJvdG90eXBlLmNwcAogcnVudGltZS9TeW1i
b2xUYWJsZS5jcHAKIHJ1bnRpbWUvVGVtcGxhdGVPYmplY3REZXNjcmlwdG9yLmNwcAorcnVudGlt
ZS9UZW1wb3JhbE5vdy5jcHAKK3J1bnRpbWUvVGVtcG9yYWxPYmplY3QuY3BwCiBydW50aW1lL1Rl
c3RSdW5uZXJVdGlscy5jcHAKIHJ1bnRpbWUvVGhyb3dTY29wZS5jcHAKIHJ1bnRpbWUvVHlwZUxv
Y2F0aW9uQ2FjaGUuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9Db21tb25JZGVudGlmaWVycy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29t
bW9uSWRlbnRpZmllcnMuaAppbmRleCBjNDA0YTFjZGM4MmEyMjAyNjQxODFjODJjZTE3ZDYwZDBj
OWZlMDNjLi5kYzYwMTlmNDVmZDk4YjQzN2E1YmY2ZTI2NTg0YTBhMzQ2MzJmYWRjIDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db21tb25JZGVudGlmaWVycy5oCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vbklkZW50aWZpZXJzLmgKQEAg
LTYxLDYgKzYxLDcgQEAKICAgICBtYWNybyhTaGFyZWRBcnJheUJ1ZmZlcikgXAogICAgIG1hY3Jv
KFN0cmluZykgXAogICAgIG1hY3JvKFN5bWJvbCkgXAorICAgIG1hY3JvKFRlbXBvcmFsKSBcCiAg
ICAgbWFjcm8oV2Vha1JlZikgXAogICAgIG1hY3JvKF9fZGVmaW5lR2V0dGVyX18pIFwKICAgICBt
YWNybyhfX2RlZmluZVNldHRlcl9fKSBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU0dsb2JhbE9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU0dsb2JhbE9iamVjdC5jcHAKaW5kZXggNTY5YzAyNDQ2YzMzZmU3ZGQzMGZiZjVjZGM5
ZDZjNGYxYmQ2YzcwZS4uYjFiNDE2ZTIwNWY4YzNlNzg0NjFhMjMwYTAyY2QzYTQ2Yjk1ZDdjMiAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3Qu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0LmNw
cApAQCAtMjAxLDYgKzIwMSw3IEBACiAjaW5jbHVkZSAiU3ltYm9sQ29uc3RydWN0b3IuaCIKICNp
bmNsdWRlICJTeW1ib2xPYmplY3QuaCIKICNpbmNsdWRlICJTeW1ib2xQcm90b3R5cGUuaCIKKyNp
bmNsdWRlICJUZW1wb3JhbE9iamVjdC5oIgogI2luY2x1ZGUgIlZNVHJhcHNJbmxpbmVzLmgiCiAj
aW5jbHVkZSAiV2FzbUNhcGFiaWxpdGllcy5oIgogI2luY2x1ZGUgIldlYWtNYXBDb25zdHJ1Y3Rv
ci5oIgpAQCAtMTIxNyw2ICsxMjE4LDExIEBAIGNhcGl0YWxOYW1lICMjIENvbnN0cnVjdG9yKiBs
b3dlck5hbWUgIyMgQ29uc3RydWN0b3IgPSBmZWF0dXJlRmxhZyA/IGNhcGl0YWxOYW1lCiAgICAg
SW50bE9iamVjdCogaW50bCA9IEludGxPYmplY3Q6OmNyZWF0ZSh2bSwgdGhpcywgSW50bE9iamVj
dDo6Y3JlYXRlU3RydWN0dXJlKHZtLCB0aGlzLCBtX29iamVjdFByb3RvdHlwZS5nZXQoKSkpOwog
ICAgIHB1dERpcmVjdFdpdGhvdXRUcmFuc2l0aW9uKHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5JbnRs
LCBpbnRsLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oUHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVt
KSk7CiAKKyAgICBpZiAoT3B0aW9uczo6dXNlVGVtcG9yYWwoKSkgeworICAgICAgICBUZW1wb3Jh
bE9iamVjdCogdGVtcG9yYWwgPSBUZW1wb3JhbE9iamVjdDo6Y3JlYXRlKHZtLCBUZW1wb3JhbE9i
amVjdDo6Y3JlYXRlU3RydWN0dXJlKHZtLCB0aGlzKSk7CisgICAgICAgIHB1dERpcmVjdFdpdGhv
dXRUcmFuc2l0aW9uKHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5UZW1wb3JhbCwgdGVtcG9yYWwsIHN0
YXRpY19jYXN0PHVuc2lnbmVkPihQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pKTsKKyAgICB9
CisKICAgICBtX21vZHVsZUxvYWRlci5pbml0TGF0ZXIoCiAgICAgICAgIFtdIChjb25zdCBJbml0
aWFsaXplcjxKU01vZHVsZUxvYWRlcj4mIGluaXQpIHsKICAgICAgICAgICAgIGF1dG8gY2F0Y2hT
Y29wZSA9IERFQ0xBUkVfQ0FUQ0hfU0NPUEUoaW5pdC52bSk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9PcHRpb25zTGlzdC5oIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvT3B0aW9uc0xpc3QuaAppbmRleCAyMGQwNmMyMDM2MmY0ZjQ4ZjljN2NmYzhh
YWQ0ZTU5MjBkN2ZkZDI4Li5lMWRiZjU2NjE3NmI2MDMzNDBhMTQ5NmRkOTQ0Mjc2ZDhiMmU0NTI2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PcHRpb25zTGlzdC5o
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09wdGlvbnNMaXN0LmgKQEAgLTU1
MCw2ICs1NTAsNyBAQCBib29sIGNhblVzZVdlYkFzc2VtYmx5RmFzdE1lbW9yeSgpOwogICAgIHYo
Qm9vbCwgdXNlRGF0YUlDSW5PcHRpbWl6aW5nSklULCBmYWxzZSwgTm9ybWFsLCBudWxscHRyKSBc
CiAgICAgdihCb29sLCB1c2VEYXRhSUNTaGFyaW5nLCBmYWxzZSwgTm9ybWFsLCBudWxscHRyKSBc
CiAgICAgdihCb29sLCB1c2VCRkksIGZhbHNlLCBOb3JtYWwsICJBbGxvdyBBUk02NCBpbnN0cnVj
dGlvbiBzZWxlY3Rpb24gb2YgQkZJIikgXAorICAgIHYoQm9vbCwgdXNlVGVtcG9yYWwsIGZhbHNl
LCBOb3JtYWwsICJFeHBvc2UgdGhlIFRlbXBvcmFsIG9iamVjdC4iKSBcCiAKIAogZW51bSBPcHRp
b25FcXVpdmFsZW5jZSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9UZW1wb3JhbE5vdy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3Jh
bE5vdy5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNWZhNzVjMjEzOGJhNWQ4MDJiY2VkNWUxOGEzM2FjNGJiZjcw
NGQ1MAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Rl
bXBvcmFsTm93LmNwcApAQCAtMCwwICsxLDU2IEBACisvKgorICogIENvcHlyaWdodCAoQykgMjAy
MSBJZ2FsaWEgUy5MLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqICBUaGlzIGxpYnJhcnkg
aXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiAgbW9k
aWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYwor
ICogIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247
IGVpdGhlcgorICogIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9u
KSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiAgVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVk
IGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiAgYnV0IFdJVEhPVVQgQU5Z
IFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqICBNRVJD
SEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhl
IEdOVQorICogIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMu
CisgKgorICogIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNz
ZXIgR2VuZXJhbCBQdWJsaWMKKyAqICBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBp
ZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCisgKiAgRm91bmRhdGlvbiwgSW5jLiwg
NTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAgMDIxMTAtMTMwMSAg
VVNBCisgKgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJUZW1wb3JhbE5v
dy5oIgorCisjaW5jbHVkZSAiSlNHbG9iYWxPYmplY3QuaCIKKyNpbmNsdWRlICJPYmplY3RQcm90
b3R5cGUuaCIKKworbmFtZXNwYWNlIEpTQyB7CisKK1NUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZ
X0RFU1RSVUNUSUJMRShUZW1wb3JhbE5vdyk7CisKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbE5v
dzo6c19pbmZvID0geyAiVGVtcG9yYWwubm93IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbE5vdykgfTsKKworVGVtcG9yYWxOb3c6
OlRlbXBvcmFsTm93KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCisgICAgOiBCYXNlKHZt
LCBzdHJ1Y3R1cmUpCit7Cit9CisKK1RlbXBvcmFsTm93KiBUZW1wb3JhbE5vdzo6Y3JlYXRlKFZN
JiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCit7CisgICAgVGVtcG9yYWxOb3cqIG9iamVjdCA9
IG5ldyAoTm90TnVsbCwgYWxsb2NhdGVDZWxsPFRlbXBvcmFsTm93Pih2bS5oZWFwKSkgVGVtcG9y
YWxOb3codm0sIHN0cnVjdHVyZSk7CisgICAgb2JqZWN0LT5maW5pc2hDcmVhdGlvbih2bSk7Cisg
ICAgcmV0dXJuIG9iamVjdDsKK30KKworU3RydWN0dXJlKiBUZW1wb3JhbE5vdzo6Y3JlYXRlU3Ry
dWN0dXJlKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKK3sKKyAgICByZXR1
cm4gU3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5vYmpl
Y3RQcm90b3R5cGUoKSwgVHlwZUluZm8oT2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZv
KCkpOworfQorCit2b2lkIFRlbXBvcmFsTm93OjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCit7Cisg
ICAgQmFzZTo6ZmluaXNoQ3JlYXRpb24odm0pOworICAgIEFTU0VSVChpbmhlcml0cyh2bSwgaW5m
bygpKSk7CisgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7Cit9CisK
K30gLy8gbmFtZXNwYWNlIEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvVGVtcG9yYWxOb3cuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBv
cmFsTm93LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMTUxZjY2ODEyOTdiMzI4ZmEwZjk5YTgwM2IyMjVlYWYwOWI0
Mzk4NQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Rl
bXBvcmFsTm93LmgKQEAgLTAsMCArMSw0NyBAQAorLyoKKyAqICBDb3B5cmlnaHQgKEMpIDIwMjEg
SWdhbGlhLCBTLkwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogIFRoaXMgbGlicmFyeSBp
cyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAqICBtb2Rp
ZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCisg
KiAgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsg
ZWl0aGVyCisgKiAgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24p
IGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqICBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQg
aW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqICBidXQgV0lUSE9VVCBBTlkg
V0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogIE1FUkNI
QU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUg
R05VCisgKiAgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4K
KyAqCisgKiAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3Nl
ciBHZW5lcmFsIFB1YmxpYworICogIExpY2Vuc2UgYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IGlm
IG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKKyAqICBGb3VuZGF0aW9uLCBJbmMuLCA1
MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BICAwMjExMC0xMzAxICBV
U0EKKyAqCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlICJKU09iamVjdC5oIgorCitu
YW1lc3BhY2UgSlNDIHsKKworY2xhc3MgVGVtcG9yYWxOb3cgZmluYWwgOiBwdWJsaWMgSlNOb25G
aW5hbE9iamVjdCB7CitwdWJsaWM6CisgICAgdXNpbmcgQmFzZSA9IEpTTm9uRmluYWxPYmplY3Q7
CisKKyAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBDZWxsVHlwZSwgU3Vic3BhY2VBY2Nlc3M+CisgICAg
c3RhdGljIElzb1N1YnNwYWNlKiBzdWJzcGFjZUZvcihWTSYgdm0pCisgICAgeworICAgICAgICBT
VEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShUZW1wb3JhbE5vdywgQmFzZSk7Cisg
ICAgICAgIHJldHVybiAmdm0ucGxhaW5PYmplY3RTcGFjZTsKKyAgICB9CisKKyAgICBzdGF0aWMg
VGVtcG9yYWxOb3cqIGNyZWF0ZShWTSYsIFN0cnVjdHVyZSopOworICAgIHN0YXRpYyBTdHJ1Y3R1
cmUqIGNyZWF0ZVN0cnVjdHVyZShWTSYsIEpTR2xvYmFsT2JqZWN0Kik7CisKKyAgICBERUNMQVJF
X0lORk87CisKK3ByaXZhdGU6CisgICAgVGVtcG9yYWxOb3coVk0mLCBTdHJ1Y3R1cmUqKTsKKyAg
ICB2b2lkIGZpbmlzaENyZWF0aW9uKFZNJik7Cit9OworCit9IC8vIG5hbWVzcGFjZSBKU0MKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsT2JqZWN0LmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsT2JqZWN0LmNwcApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi4xYTZlNmRlZDExZjk2MTA4YWNlOTRjYWU1NmIzZTcwNzMzYzkyYjNlCi0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxPYmplY3Qu
Y3BwCkBAIC0wLDAgKzEsNzYgQEAKKy8qCisgKiAgQ29weXJpZ2h0IChDKSAyMDIxIElnYWxpYSBT
LkwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNv
ZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAqICBtb2RpZnkgaXQgdW5k
ZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCisgKiAgTGljZW5z
ZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisg
KiAgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRl
ciB2ZXJzaW9uLgorICoKKyAqICBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhv
cGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7
IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogIE1FUkNIQU5UQUJJTElU
WSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiAg
TGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiAg
WW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFs
IFB1YmxpYworICogIExpY2Vuc2UgYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IGlmIG5vdCwgd3Jp
dGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKKyAqICBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xp
biBTdHJlZXQsIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BICAwMjExMC0xMzAxICBVU0EKKyAqCisg
Ki8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIlRlbXBvcmFsT2JqZWN0LmgiCisK
KyNpbmNsdWRlICJKU0dsb2JhbE9iamVjdC5oIgorI2luY2x1ZGUgIk9iamVjdFByb3RvdHlwZS5o
IgorI2luY2x1ZGUgIlRlbXBvcmFsTm93LmgiCisKK25hbWVzcGFjZSBKU0MgeworCitTVEFUSUNf
QVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoVGVtcG9yYWxPYmplY3QpOworCitzdGF0
aWMgSlNWYWx1ZSBjcmVhdGVOb3dPYmplY3QoVk0mIHZtLCBKU09iamVjdCogb2JqZWN0KQorewor
ICAgIFRlbXBvcmFsT2JqZWN0KiB0ZW1wb3JhbE9iamVjdCA9IGpzQ2FzdDxUZW1wb3JhbE9iamVj
dCo+KG9iamVjdCk7CisgICAgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCA9IHRlbXBvcmFs
T2JqZWN0LT5nbG9iYWxPYmplY3Qodm0pOworICAgIHJldHVybiBUZW1wb3JhbE5vdzo6Y3JlYXRl
KHZtLCBUZW1wb3JhbE5vdzo6Y3JlYXRlU3RydWN0dXJlKHZtLCBnbG9iYWxPYmplY3QpKTsKK30K
KworfSAvLyBuYW1lc3BhY2UgSlNDCisKKyNpbmNsdWRlICJUZW1wb3JhbE9iamVjdC5sdXQuaCIK
KworbmFtZXNwYWNlIEpTQyB7CisKKy8qIFNvdXJjZSBmb3IgVGVtcG9yYWxPYmplY3QubHV0LmgK
K0BiZWdpbiB0ZW1wb3JhbE9iamVjdFRhYmxlCisgIG5vdyAgICAgICAgICAgIGNyZWF0ZU5vd09i
amVjdCAgICAgICAgICAgICAgICAgRG9udEVudW18UHJvcGVydHlDYWxsYmFjaworQGVuZAorKi8K
KworY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsT2JqZWN0OjpzX2luZm8gPSB7ICJUZW1wb3JhbCIs
ICZCYXNlOjpzX2luZm8sICZ0ZW1wb3JhbE9iamVjdFRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKFRlbXBvcmFsT2JqZWN0KSB9OworCitUZW1wb3JhbE9iamVjdDo6VGVtcG9yYWxP
YmplY3QoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKKyAgICA6IEJhc2Uodm0sIHN0cnVj
dHVyZSkKK3sKK30KKworVGVtcG9yYWxPYmplY3QqIFRlbXBvcmFsT2JqZWN0OjpjcmVhdGUoVk0m
IHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKK3sKKyAgICBUZW1wb3JhbE9iamVjdCogb2JqZWN0
ID0gbmV3IChOb3ROdWxsLCBhbGxvY2F0ZUNlbGw8VGVtcG9yYWxPYmplY3Q+KHZtLmhlYXApKSBU
ZW1wb3JhbE9iamVjdCh2bSwgc3RydWN0dXJlKTsKKyAgICBvYmplY3QtPmZpbmlzaENyZWF0aW9u
KHZtKTsKKyAgICByZXR1cm4gb2JqZWN0OworfQorCitTdHJ1Y3R1cmUqIFRlbXBvcmFsT2JqZWN0
OjpjcmVhdGVTdHJ1Y3R1cmUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQor
eworICAgIHJldHVybiBTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBnbG9iYWxP
YmplY3QtPm9iamVjdFByb3RvdHlwZSgpLCBUeXBlSW5mbyhPYmplY3RUeXBlLCBTdHJ1Y3R1cmVG
bGFncyksIGluZm8oKSk7Cit9CisKK3ZvaWQgVGVtcG9yYWxPYmplY3Q6OmZpbmlzaENyZWF0aW9u
KFZNJiB2bSkKK3sKKyAgICBCYXNlOjpmaW5pc2hDcmVhdGlvbih2bSk7CisgICAgQVNTRVJUKGlu
aGVyaXRzKHZtLCBpbmZvKCkpKTsKKyAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5T
SVRJT04oKTsKK30KKworfSAvLyBuYW1lc3BhY2UgSlNDCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbE9iamVjdC5oIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvVGVtcG9yYWxPYmplY3QuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xZWU5OTk0YzJiOGMwNWU0
NmQxNjEwNmE2NmYwMmI5NzU4YjhiMjgzCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxPYmplY3QuaApAQCAtMCwwICsxLDQ4IEBACisvKgor
ICogIENvcHlyaWdodCAoQykgMjAyMSBJZ2FsaWEsIFMuTC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
KyAqCisgKiAgVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmli
dXRlIGl0IGFuZC9vcgorICogIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBM
ZXNzZXIgR2VuZXJhbCBQdWJsaWMKKyAqICBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJl
ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAqICB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vu
c2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogIFRoaXMg
bGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVs
LAorICogIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVk
IHdhcnJhbnR5IG9mCisgKiAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAqICBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGlj
ZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQg
YSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCisgKiAgTGljZW5zZSBhbG9u
ZyB3aXRoIHRoaXMgbGlicmFyeTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQor
ICogIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsIEJv
c3RvbiwgTUEgIDAyMTEwLTEzMDEgIFVTQQorICoKKyAqLworCisjcHJhZ21hIG9uY2UKKworI2lu
Y2x1ZGUgIkpTT2JqZWN0LmgiCisKK25hbWVzcGFjZSBKU0MgeworCitjbGFzcyBUZW1wb3JhbE9i
amVjdCBmaW5hbCA6IHB1YmxpYyBKU05vbkZpbmFsT2JqZWN0IHsKK3B1YmxpYzoKKyAgICB1c2lu
ZyBCYXNlID0gSlNOb25GaW5hbE9iamVjdDsKKyAgICBzdGF0aWMgY29uc3RleHByIHVuc2lnbmVk
IFN0cnVjdHVyZUZsYWdzID0gQmFzZTo6U3RydWN0dXJlRmxhZ3MgfCBIYXNTdGF0aWNQcm9wZXJ0
eVRhYmxlOworCisgICAgdGVtcGxhdGU8dHlwZW5hbWUgQ2VsbFR5cGUsIFN1YnNwYWNlQWNjZXNz
PgorICAgIHN0YXRpYyBJc29TdWJzcGFjZSogc3Vic3BhY2VGb3IoVk0mIHZtKQorICAgIHsKKyAg
ICAgICAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoVGVtcG9yYWxPYmplY3Qs
IEJhc2UpOworICAgICAgICByZXR1cm4gJnZtLnBsYWluT2JqZWN0U3BhY2U7CisgICAgfQorCisg
ICAgc3RhdGljIFRlbXBvcmFsT2JqZWN0KiBjcmVhdGUoVk0mLCBTdHJ1Y3R1cmUqKTsKKyAgICBz
dGF0aWMgU3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoVk0mLCBKU0dsb2JhbE9iamVjdCopOwor
CisgICAgREVDTEFSRV9JTkZPOworCitwcml2YXRlOgorICAgIFRlbXBvcmFsT2JqZWN0KFZNJiwg
U3RydWN0dXJlKik7CisgICAgdm9pZCBmaW5pc2hDcmVhdGlvbihWTSYpOworfTsKKworfSAvLyBu
YW1lc3BhY2UgSlNDCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>432833</attachid>
            <date>2021-07-02 17:06:05 -0700</date>
            <delta_ts>2021-07-05 17:11:41 -0700</delta_ts>
            <desc>Add empty Temporal and Temporal.now objects</desc>
            <filename>bug-223166-20210702170604.patch</filename>
            <type>text/plain</type>
            <size>15102</size>
            <attacher name="Philip Chimento">philip.chimento</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc5NTA5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBj
NDVlOTZhNWZlYjg0MzNmMjg4MDc5ODAyZmMxMWI0NTBhZDk2ZjVlLi5mODA2MTZjZjYzNGE4ZmUw
ZTI5MTk4NmU4NTc4YjhmODYyZjMwOTMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0MCBAQAorMjAyMS0wNy0wMiAgUGhpbGlwIENoaW1lbnRvICA8cGNoaW1lbnRvQGlnYWxp
YS5jb20+CisKKyAgICAgICAgW0pTQ10gSW1wbGVtZW50IFRlbXBvcmFsCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjMxNjYKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbnRlbmRlZCB0byBiZSB0aGUgZmly
c3QgcGF0Y2ggaW4gYSBzdGFjay4gQWRkcyBib2lsZXJwbGF0ZSBmb3IKKyAgICAgICAgVGVtcG9y
YWwgaW4gb3JkZXIgdG8gdW5ibG9jayBmdXJ0aGVyIHBhcmFsbGVsaXphYmxlIHdvcmsgb24gdGhp
cyBidWcuCisKKyAgICAgICAgVGhpcyBwYXRjaCBhZGRzIGEgZmVhdHVyZSBmbGFnIGZvciBUZW1w
b3JhbCwgYW5kIGEgdG9wbGV2ZWwgVGVtcG9yYWwKKyAgICAgICAgZ2xvYmFsIGNvbnRhaW5pbmcg
b25seSBUZW1wb3JhbC5ub3csIHdoaWNoIGlzIGl0c2VsZiBhbiBlbXB0eSBvYmplY3QuCisgICAg
ICAgIFRoZXNlIG9iamVjdHMgd2lsbCBiZSBmdXJ0aGVyIHBvcHVsYXRlZCBpbiBsYXRlciBwYXRj
aGVzLgorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6IEFkZCBUZW1wb3JhbE9iamVjdCBhbmQg
VGVtcG9yYWxOb3cuIFByb3BlcnR5IGxvb2t1cAorICAgICAgICAgIHRhYmxlIGluIFRlbXBvcmFs
T2JqZWN0LgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6IEFkZCBUZW1wb3JhbE9iamVj
dCBwcm9wZXJ0eSBsb29rdXAgdGFibGUgaGVhZGVyLgorICAgICAgICAqIFNvdXJjZXMudHh0OiBB
ZGQgVGVtcG9yYWxPYmplY3QgYW5kIFRlbXBvcmFsTm93LgorICAgICAgICAqIHJ1bnRpbWUvQ29t
bW9uSWRlbnRpZmllcnMuaDogQWRkICdUZW1wb3JhbCcgcHJvcGVydHkga2V5LgorICAgICAgICAq
IHJ1bnRpbWUvSlNHbG9iYWxPYmplY3QuY3BwOgorICAgICAgICAoSlNDOjpKU0dsb2JhbE9iamVj
dDo6aW5pdCk6IENyZWF0ZSB0aGUgVGVtcG9yYWwgZ2xvYmFsIGlmIHRoZSBmZWF0dXJlCisgICAg
ICAgICAgZmxhZyBpcyBlbmFibGVkLgorICAgICAgICAqIHJ1bnRpbWUvT3B0aW9uc0xpc3QuaDog
QWRkIHVzZVRlbXBvcmFsIGZlYXR1cmUgZmxhZy4KKyAgICAgICAgKiBydW50aW1lL1RlbXBvcmFs
Tm93LmNwcDogQWRkZWQuCisgICAgICAgIChKU0M6OlRlbXBvcmFsTm93OjpUZW1wb3JhbE5vdyk6
CisgICAgICAgIChKU0M6OlRlbXBvcmFsTm93OjpjcmVhdGUpOgorICAgICAgICAoSlNDOjpUZW1w
b3JhbE5vdzo6Y3JlYXRlU3RydWN0dXJlKToKKyAgICAgICAgKEpTQzo6VGVtcG9yYWxOb3c6OmZp
bmlzaENyZWF0aW9uKToKKyAgICAgICAgKiBydW50aW1lL1RlbXBvcmFsTm93Lmg6IEFkZGVkLgor
ICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxPYmplY3QuY3BwOiBBZGRlZC4KKyAgICAgICAgKEpT
Qzo6Y3JlYXRlTm93T2JqZWN0KToKKyAgICAgICAgKEpTQzo6VGVtcG9yYWxPYmplY3Q6OlRlbXBv
cmFsT2JqZWN0KToKKyAgICAgICAgKEpTQzo6VGVtcG9yYWxPYmplY3Q6OmNyZWF0ZSk6CisgICAg
ICAgIChKU0M6OlRlbXBvcmFsT2JqZWN0OjpjcmVhdGVTdHJ1Y3R1cmUpOgorICAgICAgICAoSlND
OjpUZW1wb3JhbE9iamVjdDo6ZmluaXNoQ3JlYXRpb24pOgorICAgICAgICAqIHJ1bnRpbWUvVGVt
cG9yYWxPYmplY3QuaDogQWRkZWQuCisKIDIwMjEtMDctMDIgIFBoaWxpcHBlIE5vcm1hbmQgIDxw
bm9ybWFuZEBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHVEtdIEFkZCBuZXcgcmV2aXNpb24gdmFy
aWFibGUgaW4gcGtnY29uZmlnIGZpbGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DTWFrZUxpc3RzLnR4dApp
bmRleCBhZDM5MWQyOWZiZjNkYzA1ZTIwOTJiNDM2ZTJmYTQxMjE5OWMzYmVhLi5kMGM1NjgzOWI5
NjcxYWMwZThmZmM1OWVkZmJlMzdiM2Q1YTFjMzM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NNYWtl
TGlzdHMudHh0CkBAIC0xMDcsNiArMTA3LDcgQEAgc2V0KEphdmFTY3JpcHRDb3JlX09CSkVDVF9M
VVRfU09VUkNFUwogICAgIHJ1bnRpbWUvU3RyaW5nUHJvdG90eXBlLmNwcAogICAgIHJ1bnRpbWUv
U3ltYm9sQ29uc3RydWN0b3IuY3BwCiAgICAgcnVudGltZS9TeW1ib2xQcm90b3R5cGUuY3BwCisg
ICAgcnVudGltZS9UZW1wb3JhbE9iamVjdC5jcHAKIAogICAgIHdhc20vanMvSlNXZWJBc3NlbWJs
eS5jcHAKICAgICB3YXNtL2pzL0pTVG9XYXNtSUNDYWxsZWUuY3BwCkBAIC0xMDg2LDYgKzEwODcs
OCBAQCBzZXQoSmF2YVNjcmlwdENvcmVfUFJJVkFURV9GUkFNRVdPUktfSEVBREVSUwogICAgIHJ1
bnRpbWUvU3ltYm9sVGFibGUuaAogICAgIHJ1bnRpbWUvU3ltYm9sVGFibGVPclNjb3BlRGVwdGgu
aAogICAgIHJ1bnRpbWUvVGVtcGxhdGVPYmplY3REZXNjcmlwdG9yLmgKKyAgICBydW50aW1lL1Rl
bXBvcmFsTm93LmgKKyAgICBydW50aW1lL1RlbXBvcmFsT2JqZWN0LmgKICAgICBydW50aW1lL1Rl
c3RSdW5uZXJVdGlscy5oCiAgICAgcnVudGltZS9UaHJvd1Njb3BlLmgKICAgICBydW50aW1lL1Rv
TmF0aXZlRnJvbVZhbHVlLmgKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9EZXJp
dmVkU291cmNlcy5tYWtlIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0Rlcml2ZWRTb3VyY2VzLm1h
a2UKaW5kZXggOWRmOGIyNDRkNGM0NTY5MDFiZGRiNDEyMTg5OTYzZDA2NTEyNjMyNy4uNzU0MmM3
Zjc3NDY1ZTI2ZTE5ZDRhNjhhNWRiNzYwOTFmZGQ0NjUzOSAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKQEAgLTE5MSw2ICsxOTEsNyBAQCBPQkpFQ1RfTFVUX0hF
QURFUlMgPSBcCiAgICAgU3RyaW5nUHJvdG90eXBlLmx1dC5oIFwKICAgICBTeW1ib2xDb25zdHJ1
Y3Rvci5sdXQuaCBcCiAgICAgU3ltYm9sUHJvdG90eXBlLmx1dC5oIFwKKyAgICBUZW1wb3JhbE9i
amVjdC5sdXQuaCBcCiAgICAgV2ViQXNzZW1ibHlDb21waWxlRXJyb3JDb25zdHJ1Y3Rvci5sdXQu
aCBcCiAgICAgV2ViQXNzZW1ibHlDb21waWxlRXJyb3JQcm90b3R5cGUubHV0LmggXAogICAgIFdl
YkFzc2VtYmx5R2xvYmFsQ29uc3RydWN0b3IubHV0LmggXApkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL1NvdXJjZXMudHh0IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL1NvdXJjZXMu
dHh0CmluZGV4IDQwMjcyMmNhNGQ3NmE5ZWJmMzJjOGNjNDA0NTcwZjMzNjhhMmYzMTEuLjU1ZGNh
MWZmMDUzZjRjZTk4NWQyMWZkNmRiYzNkZDNiMGRlN2NiMDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9Tb3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvU291
cmNlcy50eHQKQEAgLTEwMDksNiArMTAwOSw4IEBAIHJ1bnRpbWUvU3ltYm9sT2JqZWN0LmNwcAog
cnVudGltZS9TeW1ib2xQcm90b3R5cGUuY3BwCiBydW50aW1lL1N5bWJvbFRhYmxlLmNwcAogcnVu
dGltZS9UZW1wbGF0ZU9iamVjdERlc2NyaXB0b3IuY3BwCitydW50aW1lL1RlbXBvcmFsTm93LmNw
cAorcnVudGltZS9UZW1wb3JhbE9iamVjdC5jcHAKIHJ1bnRpbWUvVGVzdFJ1bm5lclV0aWxzLmNw
cAogcnVudGltZS9UaHJvd1Njb3BlLmNwcAogcnVudGltZS9UeXBlTG9jYXRpb25DYWNoZS5jcHAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vbklkZW50aWZp
ZXJzLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db21tb25JZGVudGlmaWVycy5o
CmluZGV4IGM0MDRhMWNkYzgyYTIyMDI2NDE4MWM4MmNlMTdkNjBkMGM5ZmUwM2MuLmRjNjAxOWY0
NWZkOThiNDM3YTViZjZlMjY1ODRhMGEzNDYzMmZhZGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vbklkZW50aWZpZXJzLmgKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaApAQCAtNjEsNiArNjEsNyBAQAog
ICAgIG1hY3JvKFNoYXJlZEFycmF5QnVmZmVyKSBcCiAgICAgbWFjcm8oU3RyaW5nKSBcCiAgICAg
bWFjcm8oU3ltYm9sKSBcCisgICAgbWFjcm8oVGVtcG9yYWwpIFwKICAgICBtYWNybyhXZWFrUmVm
KSBcCiAgICAgbWFjcm8oX19kZWZpbmVHZXR0ZXJfXykgXAogICAgIG1hY3JvKF9fZGVmaW5lU2V0
dGVyX18pIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xv
YmFsT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsT2Jq
ZWN0LmNwcAppbmRleCA1NjljMDI0NDZjMzNmZTdkZDMwZmJmNWNkYzlkNmM0ZjFiZDZjNzBlLi5i
MWI0MTZlMjA1ZjhjM2U3ODQ2MWEyMzBhMDJjZDNhNDZiOTVkN2MyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dsb2JhbE9iamVjdC5jcHAKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3QuY3BwCkBAIC0yMDEsNiArMjAx
LDcgQEAKICNpbmNsdWRlICJTeW1ib2xDb25zdHJ1Y3Rvci5oIgogI2luY2x1ZGUgIlN5bWJvbE9i
amVjdC5oIgogI2luY2x1ZGUgIlN5bWJvbFByb3RvdHlwZS5oIgorI2luY2x1ZGUgIlRlbXBvcmFs
T2JqZWN0LmgiCiAjaW5jbHVkZSAiVk1UcmFwc0lubGluZXMuaCIKICNpbmNsdWRlICJXYXNtQ2Fw
YWJpbGl0aWVzLmgiCiAjaW5jbHVkZSAiV2Vha01hcENvbnN0cnVjdG9yLmgiCkBAIC0xMjE3LDYg
KzEyMTgsMTEgQEAgY2FwaXRhbE5hbWUgIyMgQ29uc3RydWN0b3IqIGxvd2VyTmFtZSAjIyBDb25z
dHJ1Y3RvciA9IGZlYXR1cmVGbGFnID8gY2FwaXRhbE5hbWUKICAgICBJbnRsT2JqZWN0KiBpbnRs
ID0gSW50bE9iamVjdDo6Y3JlYXRlKHZtLCB0aGlzLCBJbnRsT2JqZWN0OjpjcmVhdGVTdHJ1Y3R1
cmUodm0sIHRoaXMsIG1fb2JqZWN0UHJvdG90eXBlLmdldCgpKSk7CiAgICAgcHV0RGlyZWN0V2l0
aG91dFRyYW5zaXRpb24odm0sIHZtLnByb3BlcnR5TmFtZXMtPkludGwsIGludGwsIHN0YXRpY19j
YXN0PHVuc2lnbmVkPihQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pKTsKIAorICAgIGlmIChP
cHRpb25zOjp1c2VUZW1wb3JhbCgpKSB7CisgICAgICAgIFRlbXBvcmFsT2JqZWN0KiB0ZW1wb3Jh
bCA9IFRlbXBvcmFsT2JqZWN0OjpjcmVhdGUodm0sIFRlbXBvcmFsT2JqZWN0OjpjcmVhdGVTdHJ1
Y3R1cmUodm0sIHRoaXMpKTsKKyAgICAgICAgcHV0RGlyZWN0V2l0aG91dFRyYW5zaXRpb24odm0s
IHZtLnByb3BlcnR5TmFtZXMtPlRlbXBvcmFsLCB0ZW1wb3JhbCwgc3RhdGljX2Nhc3Q8dW5zaWdu
ZWQ+KFByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSkpOworICAgIH0KKwogICAgIG1fbW9kdWxl
TG9hZGVyLmluaXRMYXRlcigKICAgICAgICAgW10gKGNvbnN0IEluaXRpYWxpemVyPEpTTW9kdWxl
TG9hZGVyPiYgaW5pdCkgewogICAgICAgICAgICAgYXV0byBjYXRjaFNjb3BlID0gREVDTEFSRV9D
QVRDSF9TQ09QRShpbml0LnZtKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL09wdGlvbnNMaXN0LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PcHRp
b25zTGlzdC5oCmluZGV4IDIwZDA2YzIwMzYyZjRmNDhmOWM3Y2ZjOGFhZDRlNTkyMGQ3ZmRkMjgu
LmUxZGJmNTY2MTc2YjYwMzM0MGExNDk2ZGQ5NDQyNzZkOGIyZTQ1MjYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09wdGlvbnNMaXN0LmgKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvT3B0aW9uc0xpc3QuaApAQCAtNTUwLDYgKzU1MCw3IEBAIGJv
b2wgY2FuVXNlV2ViQXNzZW1ibHlGYXN0TWVtb3J5KCk7CiAgICAgdihCb29sLCB1c2VEYXRhSUNJ
bk9wdGltaXppbmdKSVQsIGZhbHNlLCBOb3JtYWwsIG51bGxwdHIpIFwKICAgICB2KEJvb2wsIHVz
ZURhdGFJQ1NoYXJpbmcsIGZhbHNlLCBOb3JtYWwsIG51bGxwdHIpIFwKICAgICB2KEJvb2wsIHVz
ZUJGSSwgZmFsc2UsIE5vcm1hbCwgIkFsbG93IEFSTTY0IGluc3RydWN0aW9uIHNlbGVjdGlvbiBv
ZiBCRkkiKSBcCisgICAgdihCb29sLCB1c2VUZW1wb3JhbCwgZmFsc2UsIE5vcm1hbCwgIkV4cG9z
ZSB0aGUgVGVtcG9yYWwgb2JqZWN0LiIpIFwKIAogCiBlbnVtIE9wdGlvbkVxdWl2YWxlbmNlIHsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsTm93LmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsTm93LmNwcApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi41ZmE3NWMyMTM4YmE1ZDgwMmJjZWQ1ZTE4YTMzYWM0YmJmNzA0ZDUwCi0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxOb3cuY3BwCkBA
IC0wLDAgKzEsNTYgQEAKKy8qCisgKiAgQ29weXJpZ2h0IChDKSAyMDIxIElnYWxpYSBTLkwuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJl
OyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAqICBtb2RpZnkgaXQgdW5kZXIgdGhl
IHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCisgKiAgTGljZW5zZSBhcyBw
dWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisgKiAgdmVy
c2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJz
aW9uLgorICoKKyAqICBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhh
dCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhv
dXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogIE1FUkNIQU5UQUJJTElUWSBvciBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiAgTGVzc2Vy
IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiAgWW91IHNo
b3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1Ymxp
YworICogIExpY2Vuc2UgYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IGlmIG5vdCwgd3JpdGUgdG8g
dGhlIEZyZWUgU29mdHdhcmUKKyAqICBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJl
ZXQsIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BICAwMjExMC0xMzAxICBVU0EKKyAqCisgKi8KKwor
I2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIlRlbXBvcmFsTm93LmgiCisKKyNpbmNsdWRl
ICJKU0dsb2JhbE9iamVjdC5oIgorI2luY2x1ZGUgIk9iamVjdFByb3RvdHlwZS5oIgorCituYW1l
c3BhY2UgSlNDIHsKKworU1RBVElDX0FTU0VSVF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKFRl
bXBvcmFsTm93KTsKKworY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsTm93OjpzX2luZm8gPSB7ICJU
ZW1wb3JhbC5ub3ciLCAmQmFzZTo6c19pbmZvLCBudWxscHRyLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKFRlbXBvcmFsTm93KSB9OworCitUZW1wb3JhbE5vdzo6VGVtcG9yYWxOb3coVk0m
IHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKKyAgICA6IEJhc2Uodm0sIHN0cnVjdHVyZSkKK3sK
K30KKworVGVtcG9yYWxOb3cqIFRlbXBvcmFsTm93OjpjcmVhdGUoVk0mIHZtLCBTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSkKK3sKKyAgICBUZW1wb3JhbE5vdyogb2JqZWN0ID0gbmV3IChOb3ROdWxsLCBh
bGxvY2F0ZUNlbGw8VGVtcG9yYWxOb3c+KHZtLmhlYXApKSBUZW1wb3JhbE5vdyh2bSwgc3RydWN0
dXJlKTsKKyAgICBvYmplY3QtPmZpbmlzaENyZWF0aW9uKHZtKTsKKyAgICByZXR1cm4gb2JqZWN0
OworfQorCitTdHJ1Y3R1cmUqIFRlbXBvcmFsTm93OjpjcmVhdGVTdHJ1Y3R1cmUoVk0mIHZtLCBK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQoreworICAgIHJldHVybiBTdHJ1Y3R1cmU6OmNy
ZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBnbG9iYWxPYmplY3QtPm9iamVjdFByb3RvdHlwZSgpLCBU
eXBlSW5mbyhPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSk7Cit9CisKK3ZvaWQg
VGVtcG9yYWxOb3c6OmZpbmlzaENyZWF0aW9uKFZNJiB2bSkKK3sKKyAgICBCYXNlOjpmaW5pc2hD
cmVhdGlvbih2bSk7CisgICAgQVNTRVJUKGluaGVyaXRzKHZtLCBpbmZvKCkpKTsKKyAgICBKU0Nf
VE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5TSVRJT04oKTsKK30KKworfSAvLyBuYW1lc3BhY2Ug
SlNDCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbE5v
dy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxOb3cuaApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi4xNTFmNjY4MTI5N2IzMjhmYTBmOTlhODAzYjIyNWVhZjA5YjQzOTg1Ci0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxOb3cuaApAQCAt
MCwwICsxLDQ3IEBACisvKgorICogIENvcHlyaWdodCAoQykgMjAyMSBJZ2FsaWEsIFMuTC4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiAgVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7
IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICogIG1vZGlmeSBpdCB1bmRlciB0aGUg
dGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKKyAqICBMaWNlbnNlIGFzIHB1
Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAqICB2ZXJz
aW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNp
b24uCisgKgorICogIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0
IGl0IHdpbGwgYmUgdXNlZnVsLAorICogIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91
dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAqICBMZXNzZXIg
R2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqICBZb3Ugc2hv
dWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGlj
CisgKiAgTGljZW5zZSBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgaWYgbm90LCB3cml0ZSB0byB0
aGUgRnJlZSBTb2Z0d2FyZQorICogIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVl
dCwgRmlmdGggRmxvb3IsIEJvc3RvbiwgTUEgIDAyMTEwLTEzMDEgIFVTQQorICoKKyAqLworCisj
cHJhZ21hIG9uY2UKKworI2luY2x1ZGUgIkpTT2JqZWN0LmgiCisKK25hbWVzcGFjZSBKU0Mgewor
CitjbGFzcyBUZW1wb3JhbE5vdyBmaW5hbCA6IHB1YmxpYyBKU05vbkZpbmFsT2JqZWN0IHsKK3B1
YmxpYzoKKyAgICB1c2luZyBCYXNlID0gSlNOb25GaW5hbE9iamVjdDsKKworICAgIHRlbXBsYXRl
PHR5cGVuYW1lIENlbGxUeXBlLCBTdWJzcGFjZUFjY2Vzcz4KKyAgICBzdGF0aWMgSXNvU3Vic3Bh
Y2UqIHN1YnNwYWNlRm9yKFZNJiB2bSkKKyAgICB7CisgICAgICAgIFNUQVRJQ19BU1NFUlRfSVNP
X1NVQlNQQUNFX1NIQVJBQkxFKFRlbXBvcmFsTm93LCBCYXNlKTsKKyAgICAgICAgcmV0dXJuICZ2
bS5wbGFpbk9iamVjdFNwYWNlOworICAgIH0KKworICAgIHN0YXRpYyBUZW1wb3JhbE5vdyogY3Jl
YXRlKFZNJiwgU3RydWN0dXJlKik7CisgICAgc3RhdGljIFN0cnVjdHVyZSogY3JlYXRlU3RydWN0
dXJlKFZNJiwgSlNHbG9iYWxPYmplY3QqKTsKKworICAgIERFQ0xBUkVfSU5GTzsKKworcHJpdmF0
ZToKKyAgICBUZW1wb3JhbE5vdyhWTSYsIFN0cnVjdHVyZSopOworICAgIHZvaWQgZmluaXNoQ3Jl
YXRpb24oVk0mKTsKK307CisKK30gLy8gbmFtZXNwYWNlIEpTQwpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxPYmplY3QuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxPYmplY3QuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFhNmU2ZGVk
MTFmOTYxMDhhY2U5NGNhZTU2YjNlNzA3MzNjOTJiM2UKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbE9iamVjdC5jcHAKQEAgLTAsMCArMSw3
NiBAQAorLyoKKyAqICBDb3B5cmlnaHQgKEMpIDIwMjEgSWdhbGlhIFMuTC4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKyAqCisgKiAgVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4g
cmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICogIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2Yg
dGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKKyAqICBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBi
eSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAqICB2ZXJzaW9uIDIgb2Yg
dGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgor
ICogIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwg
YmUgdXNlZnVsLAorICogIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRo
ZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAqICBMZXNzZXIgR2VuZXJhbCBQ
dWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqICBZb3Ugc2hvdWxkIGhhdmUg
cmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCisgKiAgTGlj
ZW5zZSBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBT
b2Z0d2FyZQorICogIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGgg
Rmxvb3IsIEJvc3RvbiwgTUEgIDAyMTEwLTEzMDEgIFVTQQorICoKKyAqLworCisjaW5jbHVkZSAi
Y29uZmlnLmgiCisjaW5jbHVkZSAiVGVtcG9yYWxPYmplY3QuaCIKKworI2luY2x1ZGUgIkpTR2xv
YmFsT2JqZWN0LmgiCisjaW5jbHVkZSAiT2JqZWN0UHJvdG90eXBlLmgiCisjaW5jbHVkZSAiVGVt
cG9yYWxOb3cuaCIKKworbmFtZXNwYWNlIEpTQyB7CisKK1NUQVRJQ19BU1NFUlRfSVNfVFJJVklB
TExZX0RFU1RSVUNUSUJMRShUZW1wb3JhbE9iamVjdCk7CisKK3N0YXRpYyBKU1ZhbHVlIGNyZWF0
ZU5vd09iamVjdChWTSYgdm0sIEpTT2JqZWN0KiBvYmplY3QpCit7CisgICAgVGVtcG9yYWxPYmpl
Y3QqIHRlbXBvcmFsT2JqZWN0ID0ganNDYXN0PFRlbXBvcmFsT2JqZWN0Kj4ob2JqZWN0KTsKKyAg
ICBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0ID0gdGVtcG9yYWxPYmplY3QtPmdsb2JhbE9i
amVjdCh2bSk7CisgICAgcmV0dXJuIFRlbXBvcmFsTm93OjpjcmVhdGUodm0sIFRlbXBvcmFsTm93
OjpjcmVhdGVTdHJ1Y3R1cmUodm0sIGdsb2JhbE9iamVjdCkpOworfQorCit9IC8vIG5hbWVzcGFj
ZSBKU0MKKworI2luY2x1ZGUgIlRlbXBvcmFsT2JqZWN0Lmx1dC5oIgorCituYW1lc3BhY2UgSlND
IHsKKworLyogU291cmNlIGZvciBUZW1wb3JhbE9iamVjdC5sdXQuaAorQGJlZ2luIHRlbXBvcmFs
T2JqZWN0VGFibGUKKyAgbm93ICAgICAgICAgICAgY3JlYXRlTm93T2JqZWN0ICAgICAgICAgICAg
ICAgICBEb250RW51bXxQcm9wZXJ0eUNhbGxiYWNrCitAZW5kCisqLworCitjb25zdCBDbGFzc0lu
Zm8gVGVtcG9yYWxPYmplY3Q6OnNfaW5mbyA9IHsgIlRlbXBvcmFsIiwgJkJhc2U6OnNfaW5mbywg
JnRlbXBvcmFsT2JqZWN0VGFibGUsIG51bGxwdHIsIENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9y
YWxPYmplY3QpIH07CisKK1RlbXBvcmFsT2JqZWN0OjpUZW1wb3JhbE9iamVjdChWTSYgdm0sIFN0
cnVjdHVyZSogc3RydWN0dXJlKQorICAgIDogQmFzZSh2bSwgc3RydWN0dXJlKQoreworfQorCitU
ZW1wb3JhbE9iamVjdCogVGVtcG9yYWxPYmplY3Q6OmNyZWF0ZShWTSYgdm0sIFN0cnVjdHVyZSog
c3RydWN0dXJlKQoreworICAgIFRlbXBvcmFsT2JqZWN0KiBvYmplY3QgPSBuZXcgKE5vdE51bGws
IGFsbG9jYXRlQ2VsbDxUZW1wb3JhbE9iamVjdD4odm0uaGVhcCkpIFRlbXBvcmFsT2JqZWN0KHZt
LCBzdHJ1Y3R1cmUpOworICAgIG9iamVjdC0+ZmluaXNoQ3JlYXRpb24odm0pOworICAgIHJldHVy
biBvYmplY3Q7Cit9CisKK1N0cnVjdHVyZSogVGVtcG9yYWxPYmplY3Q6OmNyZWF0ZVN0cnVjdHVy
ZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCit7CisgICAgcmV0dXJuIFN0
cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdC0+b2JqZWN0UHJv
dG90eXBlKCksIFR5cGVJbmZvKE9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpKTsK
K30KKwordm9pZCBUZW1wb3JhbE9iamVjdDo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQoreworICAg
IEJhc2U6OmZpbmlzaENyZWF0aW9uKHZtKTsKKyAgICBBU1NFUlQoaW5oZXJpdHModm0sIGluZm8o
KSkpOworICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOworfQorCit9
IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1RlbXBvcmFsT2JqZWN0LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1w
b3JhbE9iamVjdC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFlZTk5OTRjMmI4YzA1ZTQ2ZDE2MTA2YTY2ZjAyYjk3
NThiOGIyODMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9UZW1wb3JhbE9iamVjdC5oCkBAIC0wLDAgKzEsNDggQEAKKy8qCisgKiAgQ29weXJpZ2h0IChD
KSAyMDIxIElnYWxpYSwgUy5MLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqICBUaGlzIGxp
YnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisg
KiAgbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1
YmxpYworICogIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5k
YXRpb247IGVpdGhlcgorICogIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIg
b3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiAgVGhpcyBsaWJyYXJ5IGlzIGRpc3Ry
aWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiAgYnV0IFdJVEhP
VVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAq
ICBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBT
ZWUgdGhlIEdOVQorICogIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRl
dGFpbHMuCisgKgorICogIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdO
VSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKKyAqICBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJy
YXJ5OyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCisgKiAgRm91bmRhdGlvbiwg
SW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAgMDIxMTAt
MTMwMSAgVVNBCisgKgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSAiSlNPYmplY3Qu
aCIKKworbmFtZXNwYWNlIEpTQyB7CisKK2NsYXNzIFRlbXBvcmFsT2JqZWN0IGZpbmFsIDogcHVi
bGljIEpTTm9uRmluYWxPYmplY3QgeworcHVibGljOgorICAgIHVzaW5nIEJhc2UgPSBKU05vbkZp
bmFsT2JqZWN0OworICAgIHN0YXRpYyBjb25zdGV4cHIgdW5zaWduZWQgU3RydWN0dXJlRmxhZ3Mg
PSBCYXNlOjpTdHJ1Y3R1cmVGbGFncyB8IEhhc1N0YXRpY1Byb3BlcnR5VGFibGU7CisKKyAgICB0
ZW1wbGF0ZTx0eXBlbmFtZSBDZWxsVHlwZSwgU3Vic3BhY2VBY2Nlc3M+CisgICAgc3RhdGljIElz
b1N1YnNwYWNlKiBzdWJzcGFjZUZvcihWTSYgdm0pCisgICAgeworICAgICAgICBTVEFUSUNfQVNT
RVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShUZW1wb3JhbE9iamVjdCwgQmFzZSk7CisgICAgICAg
IHJldHVybiAmdm0ucGxhaW5PYmplY3RTcGFjZTsKKyAgICB9CisKKyAgICBzdGF0aWMgVGVtcG9y
YWxPYmplY3QqIGNyZWF0ZShWTSYsIFN0cnVjdHVyZSopOworICAgIHN0YXRpYyBTdHJ1Y3R1cmUq
IGNyZWF0ZVN0cnVjdHVyZShWTSYsIEpTR2xvYmFsT2JqZWN0Kik7CisKKyAgICBERUNMQVJFX0lO
Rk87CisKK3ByaXZhdGU6CisgICAgVGVtcG9yYWxPYmplY3QoVk0mLCBTdHJ1Y3R1cmUqKTsKKyAg
ICB2b2lkIGZpbmlzaENyZWF0aW9uKFZNJik7Cit9OworCit9IC8vIG5hbWVzcGFjZSBKU0MK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>432904</attachid>
            <date>2021-07-05 17:11:44 -0700</date>
            <delta_ts>2021-07-06 11:30:25 -0700</delta_ts>
            <desc>Add empty Temporal and Temporal.now objects</desc>
            <filename>bug-223166-20210705171143.patch</filename>
            <type>text/plain</type>
            <size>21896</size>
            <attacher name="Philip Chimento">philip.chimento</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc5NTcyCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBl
YjI4MzJhN2RhMzE2NDNmM2ZhM2FlYmQwZDgxZDJjZDUyMmE4Yjk2Li5jYmJiMjU1NDFmMmRiMTk0
Yjc4NjM2YWY0MjdiNzJkMjY5ODYxZDRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0MSBAQAorMjAyMS0wNy0wNSAgUGhpbGlwIENoaW1lbnRvICA8cGNoaW1lbnRvQGlnYWxp
YS5jb20+CisKKyAgICAgICAgW0pTQ10gSW1wbGVtZW50IFRlbXBvcmFsCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjMxNjYKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbnRlbmRlZCB0byBiZSB0aGUgZmly
c3QgcGF0Y2ggaW4gYSBzdGFjay4gQWRkcyBib2lsZXJwbGF0ZSBmb3IKKyAgICAgICAgVGVtcG9y
YWwgaW4gb3JkZXIgdG8gdW5ibG9jayBmdXJ0aGVyIHBhcmFsbGVsaXphYmxlIHdvcmsgb24gdGhp
cyBidWcuCisKKyAgICAgICAgVGhpcyBwYXRjaCBhZGRzIGEgZmVhdHVyZSBmbGFnIGZvciBUZW1w
b3JhbCwgYW5kIGEgdG9wbGV2ZWwgVGVtcG9yYWwKKyAgICAgICAgZ2xvYmFsIGNvbnRhaW5pbmcg
b25seSBUZW1wb3JhbC5ub3csIHdoaWNoIGlzIGl0c2VsZiBhbiBlbXB0eSBvYmplY3QuCisgICAg
ICAgIFRoZXNlIG9iamVjdHMgd2lsbCBiZSBmdXJ0aGVyIHBvcHVsYXRlZCBpbiBsYXRlciBwYXRj
aGVzLgorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6IEFkZCBUZW1wb3JhbE9iamVjdCBhbmQg
VGVtcG9yYWxOb3cuIFByb3BlcnR5IGxvb2t1cAorICAgICAgICAgIHRhYmxlIGluIFRlbXBvcmFs
T2JqZWN0LgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6IEFkZCBUZW1wb3JhbE9iamVj
dCBwcm9wZXJ0eSBsb29rdXAgdGFibGUgaGVhZGVyLgorICAgICAgICAqIEphdmFTY3JpcHRDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IEFkZCBuZXcgZmlsZXMuCisgICAgICAgICogU291
cmNlcy50eHQ6IEFkZCBUZW1wb3JhbE9iamVjdCBhbmQgVGVtcG9yYWxOb3cuCisgICAgICAgICog
cnVudGltZS9Db21tb25JZGVudGlmaWVycy5oOiBBZGQgJ1RlbXBvcmFsJyBwcm9wZXJ0eSBrZXku
CisgICAgICAgICogcnVudGltZS9KU0dsb2JhbE9iamVjdC5jcHA6CisgICAgICAgIChKU0M6OkpT
R2xvYmFsT2JqZWN0Ojppbml0KTogQ3JlYXRlIHRoZSBUZW1wb3JhbCBnbG9iYWwgaWYgdGhlIGZl
YXR1cmUKKyAgICAgICAgICBmbGFnIGlzIGVuYWJsZWQuCisgICAgICAgICogcnVudGltZS9PcHRp
b25zTGlzdC5oOiBBZGQgdXNlVGVtcG9yYWwgZmVhdHVyZSBmbGFnLgorICAgICAgICAqIHJ1bnRp
bWUvVGVtcG9yYWxOb3cuY3BwOiBBZGRlZC4KKyAgICAgICAgKEpTQzo6VGVtcG9yYWxOb3c6OlRl
bXBvcmFsTm93KToKKyAgICAgICAgKEpTQzo6VGVtcG9yYWxOb3c6OmNyZWF0ZSk6CisgICAgICAg
IChKU0M6OlRlbXBvcmFsTm93OjpjcmVhdGVTdHJ1Y3R1cmUpOgorICAgICAgICAoSlNDOjpUZW1w
b3JhbE5vdzo6ZmluaXNoQ3JlYXRpb24pOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxOb3cu
aDogQWRkZWQuCisgICAgICAgICogcnVudGltZS9UZW1wb3JhbE9iamVjdC5jcHA6IEFkZGVkLgor
ICAgICAgICAoSlNDOjpjcmVhdGVOb3dPYmplY3QpOgorICAgICAgICAoSlNDOjpUZW1wb3JhbE9i
amVjdDo6VGVtcG9yYWxPYmplY3QpOgorICAgICAgICAoSlNDOjpUZW1wb3JhbE9iamVjdDo6Y3Jl
YXRlKToKKyAgICAgICAgKEpTQzo6VGVtcG9yYWxPYmplY3Q6OmNyZWF0ZVN0cnVjdHVyZSk6Cisg
ICAgICAgIChKU0M6OlRlbXBvcmFsT2JqZWN0OjpmaW5pc2hDcmVhdGlvbik6CisgICAgICAgICog
cnVudGltZS9UZW1wb3JhbE9iamVjdC5oOiBBZGRlZC4KKwogMjAyMS0wNy0wNCAgUm9iaW4gTW9y
aXNzZXQgIDxybW9yaXNzZXRAYXBwbGUuY29tPgogCiAgICAgICAgIEFjdGl2ZVNjcmF0Y2hCdWZm
ZXJTY29wZSBzaG91bGQgdGFrZSB0aGUgYnVmZmVyIGFzIGFyZ3VtZW50CmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ01ha2VMaXN0cy50eHQKaW5kZXggYWQzOTFkMjlmYmYzZGMwNWUyMDkyYjQzNmUyZmE0MTIx
OTljM2JlYS4uZDBjNTY4MzliOTY3MWFjMGU4ZmZjNTllZGZiZTM3YjNkNWExYzMzOCAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMTA3LDYgKzEwNyw3IEBAIHNldChKYXZh
U2NyaXB0Q29yZV9PQkpFQ1RfTFVUX1NPVVJDRVMKICAgICBydW50aW1lL1N0cmluZ1Byb3RvdHlw
ZS5jcHAKICAgICBydW50aW1lL1N5bWJvbENvbnN0cnVjdG9yLmNwcAogICAgIHJ1bnRpbWUvU3lt
Ym9sUHJvdG90eXBlLmNwcAorICAgIHJ1bnRpbWUvVGVtcG9yYWxPYmplY3QuY3BwCiAKICAgICB3
YXNtL2pzL0pTV2ViQXNzZW1ibHkuY3BwCiAgICAgd2FzbS9qcy9KU1RvV2FzbUlDQ2FsbGVlLmNw
cApAQCAtMTA4Niw2ICsxMDg3LDggQEAgc2V0KEphdmFTY3JpcHRDb3JlX1BSSVZBVEVfRlJBTUVX
T1JLX0hFQURFUlMKICAgICBydW50aW1lL1N5bWJvbFRhYmxlLmgKICAgICBydW50aW1lL1N5bWJv
bFRhYmxlT3JTY29wZURlcHRoLmgKICAgICBydW50aW1lL1RlbXBsYXRlT2JqZWN0RGVzY3JpcHRv
ci5oCisgICAgcnVudGltZS9UZW1wb3JhbE5vdy5oCisgICAgcnVudGltZS9UZW1wb3JhbE9iamVj
dC5oCiAgICAgcnVudGltZS9UZXN0UnVubmVyVXRpbHMuaAogICAgIHJ1bnRpbWUvVGhyb3dTY29w
ZS5oCiAgICAgcnVudGltZS9Ub05hdGl2ZUZyb21WYWx1ZS5oCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvRGVyaXZlZFNvdXJjZXMubWFrZSBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9EZXJpdmVkU291cmNlcy5tYWtlCmluZGV4IDlkZjhiMjQ0ZDRjNDU2OTAxYmRkYjQxMjE4OTk2
M2QwNjUxMjYzMjcuLjc1NDJjN2Y3NzQ2NWUyNmUxOWQ0YTY4YTVkYjc2MDkxZmRkNDY1MzkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9EZXJpdmVkU291cmNlcy5tYWtlCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9EZXJpdmVkU291cmNlcy5tYWtlCkBAIC0xOTEsNiArMTkx
LDcgQEAgT0JKRUNUX0xVVF9IRUFERVJTID0gXAogICAgIFN0cmluZ1Byb3RvdHlwZS5sdXQuaCBc
CiAgICAgU3ltYm9sQ29uc3RydWN0b3IubHV0LmggXAogICAgIFN5bWJvbFByb3RvdHlwZS5sdXQu
aCBcCisgICAgVGVtcG9yYWxPYmplY3QubHV0LmggXAogICAgIFdlYkFzc2VtYmx5Q29tcGlsZUVy
cm9yQ29uc3RydWN0b3IubHV0LmggXAogICAgIFdlYkFzc2VtYmx5Q29tcGlsZUVycm9yUHJvdG90
eXBlLmx1dC5oIFwKICAgICBXZWJBc3NlbWJseUdsb2JhbENvbnN0cnVjdG9yLmx1dC5oIFwKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggOTE4NDQ3MGE4NDQ3MGQ2Y2ZkZjUyZjgzODBi
ZjUzNjdjMTliOTZmZC4uOTIyMTVkZWM2NzM3OWZhZDM0ZDY3YThjNDU0OGQ4YWE1ZTIwN2UyMiAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRD
b3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE5NDAsNiArMTk0MCwxMSBAQAogCQlF
M0ZGNzUzMzFEOUNFQTE4MDBDN0UxNkQgLyogRE9NSklUR2V0dGVyU2V0dGVyLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFM0ZGNzUyRjFEOUNFQTEyMDBD
N0UxNkQgLyogRE9NSklUR2V0dGVyU2V0dGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJRTQ5REMxNkMxMkVGMjk0RTAwMTg0QTFGIC8qIFNvdXJj
ZVByb3ZpZGVyQ2FjaGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEU0OURDMTUxMTJFRjI3MjIwMDE4NEExRiAvKiBTb3VyY2VQcm92aWRlckNhY2hlLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJRTQ5REMx
NkQxMkVGMjk1MzAwMTg0QTFGIC8qIFNvdXJjZVByb3ZpZGVyQ2FjaGVJdGVtLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNDlEQzE0OTEyRUYyNjFBMDAx
ODRBMUYgLyogU291cmNlUHJvdmlkZXJDYWNoZUl0ZW0uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlGNkYxNTAxQzI2OTNEMzNFMDA0Qjk4RUYgLyog
VGVtcG9yYWxOb3cuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEY2RjE1MDE4MjY5M0QzM0QwMDRCOThFRiAvKiBUZW1wb3JhbE5vdy5oICovOyB9OworCQlG
NkYxNTAxRDI2OTNEMzNFMDA0Qjk4RUYgLyogVGVtcG9yYWxPYmplY3QuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjZGMTUwMTkyNjkzRDMzRTAwNEI5
OEVGIC8qIFRlbXBvcmFsT2JqZWN0LmNwcCAqLzsgfTsKKwkJRjZGMTUwMUUyNjkzRDMzRTAwNEI5
OEVGIC8qIFRlbXBvcmFsT2JqZWN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBGNkYxNTAxQTI2OTNEMzNFMDA0Qjk4RUYgLyogVGVtcG9yYWxPYmplY3Qu
aCAqLzsgfTsKKwkJRjZGMTUwMUYyNjkzRDMzRTAwNEI5OEVGIC8qIFRlbXBvcmFsTm93LmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY2RjE1MDFCMjY5
M0QzM0UwMDRCOThFRiAvKiBUZW1wb3JhbE5vdy5jcHAgKi87IH07CisJCUY2RjE1MDIxMjY5M0Q0
NTAwMDRCOThFRiAvKiBUZW1wb3JhbE9iamVjdC5sdXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY2RjE1MDIwMjY5M0Q0NTAwMDRCOThFRiAvKiBUZW1w
b3JhbE9iamVjdC5sdXQuaCAqLzsgfTsKIAkJRkUwNDE1NTMyNTJFQzA3MzAwOTFFQjVEIC8qIFNs
b3RWaXNpdG9yTWFjcm9zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBGRTA0MTU1MjI1MkVDMDczMDA5MUVCNUQgLyogU2xvdFZpc2l0b3JNYWNyb3MuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlGRTA1RkFG
RDFGRTRDRURBMDAwOTMyMzAgLyogRGVwcmVjYXRlZEluc3BlY3RvclZhbHVlcy5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5OTJENkExMTFGQkQ0OTFE
MDAwMjQ1RjQgLyogRGVwcmVjYXRlZEluc3BlY3RvclZhbHVlcy5jcHAgKi87IH07CiAJCUZFMDg2
QkNBMjEyM0RFRkIwMDNGMjkyOSAvKiBFbnRyeUZyYW1lLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRTA4NkJDOTIxMjNERUZBMDAzRjI5MjkgLyogRW50
cnlGcmFtZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CkBAIC01Mjc4LDYgKzUyODMsMTEgQEAKIAkJRjY5MkE4N0QwMjU1NTk3RDAxRkY2MEY3IC8qIFJl
Z0V4cC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7
IGluZGVudFdpZHRoID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBSZWdFeHAuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB0YWJXaWR0aCA9IDg7
IH07CiAJCUY2OTJBODdFMDI1NTU5N0QwMUZGNjBGNyAvKiBSZWdFeHAuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgaW5kZW50V2lkdGggPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVnRXhwLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IHRhYldpZHRoID0gODsgfTsKIAkJRjY5MkE4ODcwMjU1NTk3RDAxRkY2
MEY3IC8qIEpTQ0pTVmFsdWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDMwOyBpbmRlbnRXaWR0aCA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gSlNDSlNWYWx1ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IHRhYldpZHRoID0gODsgfTsKKwkJRjZGMTUwMTgyNjkzRDMzRDAwNEI5OEVGIC8qIFRlbXBv
cmFsTm93LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRlbXBvcmFsTm93Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY2RjE1MDE5MjY5M0QzM0UwMDRCOThFRiAv
KiBUZW1wb3JhbE9iamVjdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBUZW1wb3JhbE9iamVjdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY2RjE1
MDFBMjY5M0QzM0UwMDRCOThFRiAvKiBUZW1wb3JhbE9iamVjdC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBUZW1wb3JhbE9iamVjdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlGNkYxNTAxQjI2OTNEMzNFMDA0Qjk4RUYgLyogVGVtcG9yYWxOb3cuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVGVtcG9yYWxOb3cuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlGNkYxNTAyMDI2OTNENDUwMDA0Qjk4RUYgLyogVGVtcG9y
YWxPYmplY3QubHV0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFRlbXBvcmFs
T2JqZWN0Lmx1dC5oOyBwYXRoID0gVGVtcG9yYWxPYmplY3QubHV0Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUY3MzkyNjkxOERDNjQzMzBBRkNERjBENyAvKiBKU1NvdXJjZUNvZGUu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTb3VyY2VDb2RlLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRkUwMDI2MjIyM0YzQUYzMzAwM0EzNThG
IC8qIFdlYkFzc2VtYmx5LmFzbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYXNtLmFzbTsgbmFtZSA9IFdlYkFzc2VtYmx5LmFzbTsg
cGF0aCA9IGxsaW50L1dlYkFzc2VtYmx5LmFzbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJRkUwNDE1NTIyNTJFQzA3MzAwOTFFQjVEIC8qIFNsb3RWaXNpdG9yTWFjcm9zLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNsb3RWaXNpdG9yTWFjcm9zLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CkBAIC03MDAxLDYgKzcwMTEsNyBAQAogCQkJCTk5NkI3MzExMUJE
OUZBMkMwMDMzMUI4NCAvKiBTdHJpbmdDb25zdHJ1Y3Rvci5sdXQuaCAqLywKIAkJCQk5OTZCNzMx
MzFCRDlGQTJDMDAzMzFCODQgLyogU3ltYm9sQ29uc3RydWN0b3IubHV0LmggKi8sCiAJCQkJOTk2
QjczMTQxQkQ5RkEyQzAwMzMxQjg0IC8qIFN5bWJvbFByb3RvdHlwZS5sdXQuaCAqLywKKwkJCQlG
NkYxNTAyMDI2OTNENDUwMDA0Qjk4RUYgLyogVGVtcG9yYWxPYmplY3QubHV0LmggKi8sCiAJCQkJ
NTMzQjE1REUxREM3RjQ2MzAwNEQ1MDBBIC8qIFdhc21PcHMuaCAqLywKIAkJCQlBRDJGQ0MwQTFE
QjU5QzU5MDBCM0U3MzYgLyogV2ViQXNzZW1ibHlDb21waWxlRXJyb3JDb25zdHJ1Y3Rvci5sdXQu
aCAqLywKIAkJCQlBRDJGQ0MwQjFEQjU5QzU5MDBCM0U3MzYgLyogV2ViQXNzZW1ibHlDb21waWxl
RXJyb3JQcm90b3R5cGUubHV0LmggKi8sCkBAIC03OTQzLDYgKzc5NTQsMTAgQEAKIAkJCQlFMzEx
NzlBOTIyODgzODVEMDA1MTRCMkMgLyogU3ltYm9sVGFibGVPclNjb3BlRGVwdGguaCAqLywKIAkJ
CQlCREI0QjVFMDk5Q0Q0QzFCQjNDMUNGMDUgLyogVGVtcGxhdGVPYmplY3REZXNjcmlwdG9yLmNw
cCAqLywKIAkJCQk3MEVDQTYwNDFBRkRCRUEyMDA0NDk3MzkgLyogVGVtcGxhdGVPYmplY3REZXNj
cmlwdG9yLmggKi8sCisJCQkJRjZGMTUwMUIyNjkzRDMzRTAwNEI5OEVGIC8qIFRlbXBvcmFsTm93
LmNwcCAqLywKKwkJCQlGNkYxNTAxODI2OTNEMzNEMDA0Qjk4RUYgLyogVGVtcG9yYWxOb3cuaCAq
LywKKwkJCQlGNkYxNTAxOTI2OTNEMzNFMDA0Qjk4RUYgLyogVGVtcG9yYWxPYmplY3QuY3BwICov
LAorCQkJCUY2RjE1MDFBMjY5M0QzM0UwMDRCOThFRiAvKiBUZW1wb3JhbE9iamVjdC5oICovLAog
CQkJCTBGQTJDMTc5MTdEN0NGODQwMDlEMDE1RiAvKiBUZXN0UnVubmVyVXRpbHMuY3BwICovLAog
CQkJCTBGQTJDMTdBMTdEN0NGODQwMDlEMDE1RiAvKiBUZXN0UnVubmVyVXRpbHMuaCAqLywKIAkJ
CQlGRTJFNkE3QTFENkVBNUZFMDA2MEY4OTYgLyogVGhyb3dTY29wZS5jcHAgKi8sCkBAIC0xMDYz
Nyw2ICsxMDY1Miw5IEBACiAJCQkJQTc4NEEyNjQxMUQxNjYyMjAwNTc3NkFDIC8qIFN5bnRheENo
ZWNrZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCURDNzk5NzgzMUNERTlGQTAwMDRENEEwOSAvKiBU
YWdSZWdpc3RlcnNNb2RlLmggaW4gSGVhZGVycyAqLywKIAkJCQk3MEVDQTYwOTFBRkRCRUEyMDA0
NDk3MzkgLyogVGVtcGxhdGVPYmplY3REZXNjcmlwdG9yLmggaW4gSGVhZGVycyAqLywKKwkJCQlG
NkYxNTAxQzI2OTNEMzNFMDA0Qjk4RUYgLyogVGVtcG9yYWxOb3cuaCBpbiBIZWFkZXJzICovLAor
CQkJCUY2RjE1MDFFMjY5M0QzM0UwMDRCOThFRiAvKiBUZW1wb3JhbE9iamVjdC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJRjZGMTUwMjEyNjkzRDQ1MDAwNEI5OEVGIC8qIFRlbXBvcmFsT2JqZWN0Lmx1
dC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEYyNEU1NEYxN0VFMjc0OTAwQUJCMjE3IC8qIFRlbXBS
ZWdpc3RlclNldC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEY0NEE3QjQyMEJGNjhEOTAwMjJCMTcx
IC8qIFRlcm1pbmF0ZWRDb2RlT3JpZ2luLmggaW4gSGVhZGVycyAqLywKIAkJCQkwRkEyQzE3QzE3
RDdDRjg0MDA5RDAxNUYgLyogVGVzdFJ1bm5lclV0aWxzLmggaW4gSGVhZGVycyAqLywKQEAgLTEx
NjQyLDYgKzExNjYwLDggQEAKIAkJCQlFMzhFODc5MDI1NEI5Nzg0MDBGNkY5RTQgLyogSlNEYXRl
TWF0aC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1MzZCMzE5RTFGNzM1RjE2MDAzN0ZDMzMgLyog
TG93TGV2ZWxJbnRlcnByZXRlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlERkJDMkNBNjI1RTZE
NUI5MDA4MUJERDEgLyogU3ltYm9sU3R1YnNGb3JTYWZhcmlDb21wYXRpYmlsaXR5Lm1tIGluIFNv
dXJjZXMgKi8sCisJCQkJRjZGMTUwMUYyNjkzRDMzRTAwNEI5OEVGIC8qIFRlbXBvcmFsTm93LmNw
cCBpbiBTb3VyY2VzICovLAorCQkJCUY2RjE1MDFEMjY5M0QzM0UwMDRCOThFRiAvKiBUZW1wb3Jh
bE9iamVjdC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkwRkY0Mjc0QTE1OEVCRTkxMDA0Q0I5RkYg
LyogdWRpczg2LmMgaW4gU291cmNlcyAqLywKIAkJCQkwRkY0Mjc0MDE1OEVCRThCMDA0Q0I5RkYg
LyogdWRpczg2X2RlY29kZS5jIGluIFNvdXJjZXMgKi8sCiAJCQkJMEZGNDI3NEQxNThFQkZFNjAw
NENCOUZGIC8qIHVkaXM4Nl9pdGFiX2hvbGRlci5jIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvU291cmNlcy50eHQgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvU291cmNlcy50eHQKaW5kZXggNDAyNzIyY2E0ZDc2YTllYmYzMmM4Y2M0MDQ1NzBmMzM2OGEy
ZjMxMS4uNTVkY2ExZmYwNTNmNGNlOTg1ZDIxZmQ2ZGJjM2RkM2IwZGU3Y2IwMCAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL1NvdXJjZXMudHh0CisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9Tb3VyY2VzLnR4dApAQCAtMTAwOSw2ICsxMDA5LDggQEAgcnVudGltZS9TeW1ib2xP
YmplY3QuY3BwCiBydW50aW1lL1N5bWJvbFByb3RvdHlwZS5jcHAKIHJ1bnRpbWUvU3ltYm9sVGFi
bGUuY3BwCiBydW50aW1lL1RlbXBsYXRlT2JqZWN0RGVzY3JpcHRvci5jcHAKK3J1bnRpbWUvVGVt
cG9yYWxOb3cuY3BwCitydW50aW1lL1RlbXBvcmFsT2JqZWN0LmNwcAogcnVudGltZS9UZXN0UnVu
bmVyVXRpbHMuY3BwCiBydW50aW1lL1Rocm93U2NvcGUuY3BwCiBydW50aW1lL1R5cGVMb2NhdGlv
bkNhY2hlLmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29t
bW9uSWRlbnRpZmllcnMuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vbklk
ZW50aWZpZXJzLmgKaW5kZXggYzQwNGExY2RjODJhMjIwMjY0MTgxYzgyY2UxN2Q2MGQwYzlmZTAz
Yy4uZGM2MDE5ZjQ1ZmQ5OGI0MzdhNWJmNmUyNjU4NGEwYTM0NjMyZmFkYyAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db21tb25JZGVudGlmaWVycy5oCkBAIC02MSw2
ICs2MSw3IEBACiAgICAgbWFjcm8oU2hhcmVkQXJyYXlCdWZmZXIpIFwKICAgICBtYWNybyhTdHJp
bmcpIFwKICAgICBtYWNybyhTeW1ib2wpIFwKKyAgICBtYWNybyhUZW1wb3JhbCkgXAogICAgIG1h
Y3JvKFdlYWtSZWYpIFwKICAgICBtYWNybyhfX2RlZmluZUdldHRlcl9fKSBcCiAgICAgbWFjcm8o
X19kZWZpbmVTZXR0ZXJfXykgXApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNHbG9iYWxPYmplY3QuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
SlNHbG9iYWxPYmplY3QuY3BwCmluZGV4IDU2OWMwMjQ0NmMzM2ZlN2RkMzBmYmY1Y2RjOWQ2YzRm
MWJkNmM3MGUuLmIxYjQxNmUyMDVmOGMzZTc4NDYxYTIzMGEwMmNkM2E0NmI5NWQ3YzIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0LmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dsb2JhbE9iamVjdC5jcHAKQEAg
LTIwMSw2ICsyMDEsNyBAQAogI2luY2x1ZGUgIlN5bWJvbENvbnN0cnVjdG9yLmgiCiAjaW5jbHVk
ZSAiU3ltYm9sT2JqZWN0LmgiCiAjaW5jbHVkZSAiU3ltYm9sUHJvdG90eXBlLmgiCisjaW5jbHVk
ZSAiVGVtcG9yYWxPYmplY3QuaCIKICNpbmNsdWRlICJWTVRyYXBzSW5saW5lcy5oIgogI2luY2x1
ZGUgIldhc21DYXBhYmlsaXRpZXMuaCIKICNpbmNsdWRlICJXZWFrTWFwQ29uc3RydWN0b3IuaCIK
QEAgLTEyMTcsNiArMTIxOCwxMSBAQCBjYXBpdGFsTmFtZSAjIyBDb25zdHJ1Y3RvciogbG93ZXJO
YW1lICMjIENvbnN0cnVjdG9yID0gZmVhdHVyZUZsYWcgPyBjYXBpdGFsTmFtZQogICAgIEludGxP
YmplY3QqIGludGwgPSBJbnRsT2JqZWN0OjpjcmVhdGUodm0sIHRoaXMsIEludGxPYmplY3Q6OmNy
ZWF0ZVN0cnVjdHVyZSh2bSwgdGhpcywgbV9vYmplY3RQcm90b3R5cGUuZ2V0KCkpKTsKICAgICBw
dXREaXJlY3RXaXRob3V0VHJhbnNpdGlvbih2bSwgdm0ucHJvcGVydHlOYW1lcy0+SW50bCwgaW50
bCwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KFByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSkpOwog
CisgICAgaWYgKE9wdGlvbnM6OnVzZVRlbXBvcmFsKCkpIHsKKyAgICAgICAgVGVtcG9yYWxPYmpl
Y3QqIHRlbXBvcmFsID0gVGVtcG9yYWxPYmplY3Q6OmNyZWF0ZSh2bSwgVGVtcG9yYWxPYmplY3Q6
OmNyZWF0ZVN0cnVjdHVyZSh2bSwgdGhpcykpOworICAgICAgICBwdXREaXJlY3RXaXRob3V0VHJh
bnNpdGlvbih2bSwgdm0ucHJvcGVydHlOYW1lcy0+VGVtcG9yYWwsIHRlbXBvcmFsLCBzdGF0aWNf
Y2FzdDx1bnNpZ25lZD4oUHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVtKSk7CisgICAgfQorCiAg
ICAgbV9tb2R1bGVMb2FkZXIuaW5pdExhdGVyKAogICAgICAgICBbXSAoY29uc3QgSW5pdGlhbGl6
ZXI8SlNNb2R1bGVMb2FkZXI+JiBpbml0KSB7CiAgICAgICAgICAgICBhdXRvIGNhdGNoU2NvcGUg
PSBERUNMQVJFX0NBVENIX1NDT1BFKGluaXQudm0pOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvT3B0aW9uc0xpc3QuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL09wdGlvbnNMaXN0LmgKaW5kZXggMjBkMDZjMjAzNjJmNGY0OGY5YzdjZmM4YWFkNGU1
OTIwZDdmZGQyOC4uZTFkYmY1NjYxNzZiNjAzMzQwYTE0OTZkZDk0NDI3NmQ4YjJlNDUyNiAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT3B0aW9uc0xpc3QuaAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PcHRpb25zTGlzdC5oCkBAIC01NTAsNiAr
NTUwLDcgQEAgYm9vbCBjYW5Vc2VXZWJBc3NlbWJseUZhc3RNZW1vcnkoKTsKICAgICB2KEJvb2ws
IHVzZURhdGFJQ0luT3B0aW1pemluZ0pJVCwgZmFsc2UsIE5vcm1hbCwgbnVsbHB0cikgXAogICAg
IHYoQm9vbCwgdXNlRGF0YUlDU2hhcmluZywgZmFsc2UsIE5vcm1hbCwgbnVsbHB0cikgXAogICAg
IHYoQm9vbCwgdXNlQkZJLCBmYWxzZSwgTm9ybWFsLCAiQWxsb3cgQVJNNjQgaW5zdHJ1Y3Rpb24g
c2VsZWN0aW9uIG9mIEJGSSIpIFwKKyAgICB2KEJvb2wsIHVzZVRlbXBvcmFsLCBmYWxzZSwgTm9y
bWFsLCAiRXhwb3NlIHRoZSBUZW1wb3JhbCBvYmplY3QuIikgXAogCiAKIGVudW0gT3B0aW9uRXF1
aXZhbGVuY2UgewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVt
cG9yYWxOb3cuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxOb3cu
Y3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjVmYTc1YzIxMzhiYTVkODAyYmNlZDVlMThhMzNhYzRiYmY3MDRkNTAK
LS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3Jh
bE5vdy5jcHAKQEAgLTAsMCArMSw1NiBAQAorLyoKKyAqICBDb3B5cmlnaHQgKEMpIDIwMjEgSWdh
bGlhIFMuTC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiAgVGhpcyBsaWJyYXJ5IGlzIGZy
ZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICogIG1vZGlmeSBp
dCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKKyAqICBM
aWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRo
ZXIKKyAqICB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55
IGxhdGVyIHZlcnNpb24uCisgKgorICogIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0
aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogIGJ1dCBXSVRIT1VUIEFOWSBXQVJS
QU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiAgTUVSQ0hBTlRB
QklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUK
KyAqICBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoK
KyAqICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdl
bmVyYWwgUHVibGljCisgKiAgTGljZW5zZSBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgaWYgbm90
LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQorICogIEZvdW5kYXRpb24sIEluYy4sIDUxIEZy
YW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsIEJvc3RvbiwgTUEgIDAyMTEwLTEzMDEgIFVTQQor
ICoKKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiVGVtcG9yYWxOb3cuaCIK
KworI2luY2x1ZGUgIkpTR2xvYmFsT2JqZWN0LmgiCisjaW5jbHVkZSAiT2JqZWN0UHJvdG90eXBl
LmgiCisKK25hbWVzcGFjZSBKU0MgeworCitTVEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNU
UlVDVElCTEUoVGVtcG9yYWxOb3cpOworCitjb25zdCBDbGFzc0luZm8gVGVtcG9yYWxOb3c6OnNf
aW5mbyA9IHsgIlRlbXBvcmFsLm5vdyIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxwdHIs
IENSRUFURV9NRVRIT0RfVEFCTEUoVGVtcG9yYWxOb3cpIH07CisKK1RlbXBvcmFsTm93OjpUZW1w
b3JhbE5vdyhWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlKQorICAgIDogQmFzZSh2bSwgc3Ry
dWN0dXJlKQoreworfQorCitUZW1wb3JhbE5vdyogVGVtcG9yYWxOb3c6OmNyZWF0ZShWTSYgdm0s
IFN0cnVjdHVyZSogc3RydWN0dXJlKQoreworICAgIFRlbXBvcmFsTm93KiBvYmplY3QgPSBuZXcg
KE5vdE51bGwsIGFsbG9jYXRlQ2VsbDxUZW1wb3JhbE5vdz4odm0uaGVhcCkpIFRlbXBvcmFsTm93
KHZtLCBzdHJ1Y3R1cmUpOworICAgIG9iamVjdC0+ZmluaXNoQ3JlYXRpb24odm0pOworICAgIHJl
dHVybiBvYmplY3Q7Cit9CisKK1N0cnVjdHVyZSogVGVtcG9yYWxOb3c6OmNyZWF0ZVN0cnVjdHVy
ZShWTSYgdm0sIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QpCit7CisgICAgcmV0dXJuIFN0
cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdC0+b2JqZWN0UHJv
dG90eXBlKCksIFR5cGVJbmZvKE9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpKTsK
K30KKwordm9pZCBUZW1wb3JhbE5vdzo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQoreworICAgIEJh
c2U6OmZpbmlzaENyZWF0aW9uKHZtKTsKKyAgICBBU1NFUlQoaW5oZXJpdHModm0sIGluZm8oKSkp
OworICAgIEpTQ19UT19TVFJJTkdfVEFHX1dJVEhPVVRfVFJBTlNJVElPTigpOworfQorCit9IC8v
IG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1RlbXBvcmFsTm93LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbE5v
dy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjE1MWY2NjgxMjk3YjMyOGZhMGY5OWE4MDNiMjI1ZWFmMDliNDM5ODUK
LS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3Jh
bE5vdy5oCkBAIC0wLDAgKzEsNDcgQEAKKy8qCisgKiAgQ29weXJpZ2h0IChDKSAyMDIxIElnYWxp
YSwgUy5MLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqICBUaGlzIGxpYnJhcnkgaXMgZnJl
ZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiAgbW9kaWZ5IGl0
IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYworICogIExp
Y2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhl
cgorICogIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkg
bGF0ZXIgdmVyc2lvbi4KKyAqCisgKiAgVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRo
ZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJB
TlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqICBNRVJDSEFOVEFC
SUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQor
ICogIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgor
ICogIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNzZXIgR2Vu
ZXJhbCBQdWJsaWMKKyAqICBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBpZiBub3Qs
IHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCisgKiAgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJh
bmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAgMDIxMTAtMTMwMSAgVVNBCisg
KgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSAiSlNPYmplY3QuaCIKKworbmFtZXNw
YWNlIEpTQyB7CisKK2NsYXNzIFRlbXBvcmFsTm93IGZpbmFsIDogcHVibGljIEpTTm9uRmluYWxP
YmplY3QgeworcHVibGljOgorICAgIHVzaW5nIEJhc2UgPSBKU05vbkZpbmFsT2JqZWN0OworCisg
ICAgdGVtcGxhdGU8dHlwZW5hbWUgQ2VsbFR5cGUsIFN1YnNwYWNlQWNjZXNzPgorICAgIHN0YXRp
YyBJc29TdWJzcGFjZSogc3Vic3BhY2VGb3IoVk0mIHZtKQorICAgIHsKKyAgICAgICAgU1RBVElD
X0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoVGVtcG9yYWxOb3csIEJhc2UpOworICAgICAg
ICByZXR1cm4gJnZtLnBsYWluT2JqZWN0U3BhY2U7CisgICAgfQorCisgICAgc3RhdGljIFRlbXBv
cmFsTm93KiBjcmVhdGUoVk0mLCBTdHJ1Y3R1cmUqKTsKKyAgICBzdGF0aWMgU3RydWN0dXJlKiBj
cmVhdGVTdHJ1Y3R1cmUoVk0mLCBKU0dsb2JhbE9iamVjdCopOworCisgICAgREVDTEFSRV9JTkZP
OworCitwcml2YXRlOgorICAgIFRlbXBvcmFsTm93KFZNJiwgU3RydWN0dXJlKik7CisgICAgdm9p
ZCBmaW5pc2hDcmVhdGlvbihWTSYpOworfTsKKworfSAvLyBuYW1lc3BhY2UgSlNDCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbE9iamVjdC5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbE9iamVjdC5jcHAKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uMWE2ZTZkZWQxMWY5NjEwOGFjZTk0Y2FlNTZiM2U3MDczM2M5MmIzZQotLS0gL2Rldi9udWxs
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsT2JqZWN0LmNwcApA
QCAtMCwwICsxLDc2IEBACisvKgorICogIENvcHlyaWdodCAoQykgMjAyMSBJZ2FsaWEgUy5MLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqICBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2Fy
ZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiAgbW9kaWZ5IGl0IHVuZGVyIHRo
ZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYworICogIExpY2Vuc2UgYXMg
cHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICogIHZl
cnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVy
c2lvbi4KKyAqCisgKiAgVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRo
YXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRo
b3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqICBNRVJDSEFOVEFCSUxJVFkgb3Ig
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICogIExlc3Nl
ciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogIFlvdSBz
aG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJs
aWMKKyAqICBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBpZiBub3QsIHdyaXRlIHRv
IHRoZSBGcmVlIFNvZnR3YXJlCisgKiAgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3Ry
ZWV0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAgMDIxMTAtMTMwMSAgVVNBCisgKgorICovCisK
KyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJUZW1wb3JhbE9iamVjdC5oIgorCisjaW5j
bHVkZSAiSlNHbG9iYWxPYmplY3QuaCIKKyNpbmNsdWRlICJPYmplY3RQcm90b3R5cGUuaCIKKyNp
bmNsdWRlICJUZW1wb3JhbE5vdy5oIgorCituYW1lc3BhY2UgSlNDIHsKKworU1RBVElDX0FTU0VS
VF9JU19UUklWSUFMTFlfREVTVFJVQ1RJQkxFKFRlbXBvcmFsT2JqZWN0KTsKKworc3RhdGljIEpT
VmFsdWUgY3JlYXRlTm93T2JqZWN0KFZNJiB2bSwgSlNPYmplY3QqIG9iamVjdCkKK3sKKyAgICBU
ZW1wb3JhbE9iamVjdCogdGVtcG9yYWxPYmplY3QgPSBqc0Nhc3Q8VGVtcG9yYWxPYmplY3QqPihv
YmplY3QpOworICAgIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QgPSB0ZW1wb3JhbE9iamVj
dC0+Z2xvYmFsT2JqZWN0KHZtKTsKKyAgICByZXR1cm4gVGVtcG9yYWxOb3c6OmNyZWF0ZSh2bSwg
VGVtcG9yYWxOb3c6OmNyZWF0ZVN0cnVjdHVyZSh2bSwgZ2xvYmFsT2JqZWN0KSk7Cit9CisKK30g
Ly8gbmFtZXNwYWNlIEpTQworCisjaW5jbHVkZSAiVGVtcG9yYWxPYmplY3QubHV0LmgiCisKK25h
bWVzcGFjZSBKU0MgeworCisvKiBTb3VyY2UgZm9yIFRlbXBvcmFsT2JqZWN0Lmx1dC5oCitAYmVn
aW4gdGVtcG9yYWxPYmplY3RUYWJsZQorICBub3cgICAgICAgICAgICBjcmVhdGVOb3dPYmplY3Qg
ICAgICAgICAgICAgICAgIERvbnRFbnVtfFByb3BlcnR5Q2FsbGJhY2sKK0BlbmQKKyovCisKK2Nv
bnN0IENsYXNzSW5mbyBUZW1wb3JhbE9iamVjdDo6c19pbmZvID0geyAiVGVtcG9yYWwiLCAmQmFz
ZTo6c19pbmZvLCAmdGVtcG9yYWxPYmplY3RUYWJsZSwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9U
QUJMRShUZW1wb3JhbE9iamVjdCkgfTsKKworVGVtcG9yYWxPYmplY3Q6OlRlbXBvcmFsT2JqZWN0
KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCisgICAgOiBCYXNlKHZtLCBzdHJ1Y3R1cmUp
Cit7Cit9CisKK1RlbXBvcmFsT2JqZWN0KiBUZW1wb3JhbE9iamVjdDo6Y3JlYXRlKFZNJiB2bSwg
U3RydWN0dXJlKiBzdHJ1Y3R1cmUpCit7CisgICAgVGVtcG9yYWxPYmplY3QqIG9iamVjdCA9IG5l
dyAoTm90TnVsbCwgYWxsb2NhdGVDZWxsPFRlbXBvcmFsT2JqZWN0Pih2bS5oZWFwKSkgVGVtcG9y
YWxPYmplY3Qodm0sIHN0cnVjdHVyZSk7CisgICAgb2JqZWN0LT5maW5pc2hDcmVhdGlvbih2bSk7
CisgICAgcmV0dXJuIG9iamVjdDsKK30KKworU3RydWN0dXJlKiBUZW1wb3JhbE9iamVjdDo6Y3Jl
YXRlU3RydWN0dXJlKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKK3sKKyAg
ICByZXR1cm4gU3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0
LT5vYmplY3RQcm90b3R5cGUoKSwgVHlwZUluZm8oT2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3Mp
LCBpbmZvKCkpOworfQorCit2b2lkIFRlbXBvcmFsT2JqZWN0OjpmaW5pc2hDcmVhdGlvbihWTSYg
dm0pCit7CisgICAgQmFzZTo6ZmluaXNoQ3JlYXRpb24odm0pOworICAgIEFTU0VSVChpbmhlcml0
cyh2bSwgaW5mbygpKSk7CisgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9O
KCk7Cit9CisKK30gLy8gbmFtZXNwYWNlIEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxPYmplY3QuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1RlbXBvcmFsT2JqZWN0LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWVlOTk5NGMyYjhjMDVlNDZkMTYx
MDZhNjZmMDJiOTc1OGI4YjI4MwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL1RlbXBvcmFsT2JqZWN0LmgKQEAgLTAsMCArMSw0OCBAQAorLyoKKyAqICBD
b3B5cmlnaHQgKEMpIDIwMjEgSWdhbGlhLCBTLkwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgor
ICogIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBp
dCBhbmQvb3IKKyAqICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2Vy
IEdlbmVyYWwgUHVibGljCisgKiAgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29m
dHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisgKiAgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBv
ciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqICBUaGlzIGxpYnJh
cnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAq
ICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJy
YW50eSBvZgorICogIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIg
UFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiAgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2Ug
Zm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29w
eSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYworICogIExpY2Vuc2UgYWxvbmcgd2l0
aCB0aGlzIGxpYnJhcnk7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKKyAqICBG
b3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLCBCb3N0b24s
IE1BICAwMjExMC0xMzAxICBVU0EKKyAqCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRl
ICJKU09iamVjdC5oIgorCituYW1lc3BhY2UgSlNDIHsKKworY2xhc3MgVGVtcG9yYWxPYmplY3Qg
ZmluYWwgOiBwdWJsaWMgSlNOb25GaW5hbE9iamVjdCB7CitwdWJsaWM6CisgICAgdXNpbmcgQmFz
ZSA9IEpTTm9uRmluYWxPYmplY3Q7CisgICAgc3RhdGljIGNvbnN0ZXhwciB1bnNpZ25lZCBTdHJ1
Y3R1cmVGbGFncyA9IEJhc2U6OlN0cnVjdHVyZUZsYWdzIHwgSGFzU3RhdGljUHJvcGVydHlUYWJs
ZTsKKworICAgIHRlbXBsYXRlPHR5cGVuYW1lIENlbGxUeXBlLCBTdWJzcGFjZUFjY2Vzcz4KKyAg
ICBzdGF0aWMgSXNvU3Vic3BhY2UqIHN1YnNwYWNlRm9yKFZNJiB2bSkKKyAgICB7CisgICAgICAg
IFNUQVRJQ19BU1NFUlRfSVNPX1NVQlNQQUNFX1NIQVJBQkxFKFRlbXBvcmFsT2JqZWN0LCBCYXNl
KTsKKyAgICAgICAgcmV0dXJuICZ2bS5wbGFpbk9iamVjdFNwYWNlOworICAgIH0KKworICAgIHN0
YXRpYyBUZW1wb3JhbE9iamVjdCogY3JlYXRlKFZNJiwgU3RydWN0dXJlKik7CisgICAgc3RhdGlj
IFN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKFZNJiwgSlNHbG9iYWxPYmplY3QqKTsKKworICAg
IERFQ0xBUkVfSU5GTzsKKworcHJpdmF0ZToKKyAgICBUZW1wb3JhbE9iamVjdChWTSYsIFN0cnVj
dHVyZSopOworICAgIHZvaWQgZmluaXNoQ3JlYXRpb24oVk0mKTsKK307CisKK30gLy8gbmFtZXNw
YWNlIEpTQwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>432952</attachid>
            <date>2021-07-06 11:30:28 -0700</date>
            <delta_ts>2021-07-06 11:51:32 -0700</delta_ts>
            <desc>Add empty Temporal and Temporal.now objects</desc>
            <filename>bug-223166-20210706113027.patch</filename>
            <type>text/plain</type>
            <size>20590</size>
            <attacher name="Philip Chimento">philip.chimento</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc5NTcyCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBl
YjI4MzJhN2RhMzE2NDNmM2ZhM2FlYmQwZDgxZDJjZDUyMmE4Yjk2Li5jYmJiMjU1NDFmMmRiMTk0
Yjc4NjM2YWY0MjdiNzJkMjY5ODYxZDRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0MSBAQAorMjAyMS0wNy0wNSAgUGhpbGlwIENoaW1lbnRvICA8cGNoaW1lbnRvQGlnYWxp
YS5jb20+CisKKyAgICAgICAgW0pTQ10gSW1wbGVtZW50IFRlbXBvcmFsCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjMxNjYKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbnRlbmRlZCB0byBiZSB0aGUgZmly
c3QgcGF0Y2ggaW4gYSBzdGFjay4gQWRkcyBib2lsZXJwbGF0ZSBmb3IKKyAgICAgICAgVGVtcG9y
YWwgaW4gb3JkZXIgdG8gdW5ibG9jayBmdXJ0aGVyIHBhcmFsbGVsaXphYmxlIHdvcmsgb24gdGhp
cyBidWcuCisKKyAgICAgICAgVGhpcyBwYXRjaCBhZGRzIGEgZmVhdHVyZSBmbGFnIGZvciBUZW1w
b3JhbCwgYW5kIGEgdG9wbGV2ZWwgVGVtcG9yYWwKKyAgICAgICAgZ2xvYmFsIGNvbnRhaW5pbmcg
b25seSBUZW1wb3JhbC5ub3csIHdoaWNoIGlzIGl0c2VsZiBhbiBlbXB0eSBvYmplY3QuCisgICAg
ICAgIFRoZXNlIG9iamVjdHMgd2lsbCBiZSBmdXJ0aGVyIHBvcHVsYXRlZCBpbiBsYXRlciBwYXRj
aGVzLgorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6IEFkZCBUZW1wb3JhbE9iamVjdCBhbmQg
VGVtcG9yYWxOb3cuIFByb3BlcnR5IGxvb2t1cAorICAgICAgICAgIHRhYmxlIGluIFRlbXBvcmFs
T2JqZWN0LgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6IEFkZCBUZW1wb3JhbE9iamVj
dCBwcm9wZXJ0eSBsb29rdXAgdGFibGUgaGVhZGVyLgorICAgICAgICAqIEphdmFTY3JpcHRDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IEFkZCBuZXcgZmlsZXMuCisgICAgICAgICogU291
cmNlcy50eHQ6IEFkZCBUZW1wb3JhbE9iamVjdCBhbmQgVGVtcG9yYWxOb3cuCisgICAgICAgICog
cnVudGltZS9Db21tb25JZGVudGlmaWVycy5oOiBBZGQgJ1RlbXBvcmFsJyBwcm9wZXJ0eSBrZXku
CisgICAgICAgICogcnVudGltZS9KU0dsb2JhbE9iamVjdC5jcHA6CisgICAgICAgIChKU0M6OkpT
R2xvYmFsT2JqZWN0Ojppbml0KTogQ3JlYXRlIHRoZSBUZW1wb3JhbCBnbG9iYWwgaWYgdGhlIGZl
YXR1cmUKKyAgICAgICAgICBmbGFnIGlzIGVuYWJsZWQuCisgICAgICAgICogcnVudGltZS9PcHRp
b25zTGlzdC5oOiBBZGQgdXNlVGVtcG9yYWwgZmVhdHVyZSBmbGFnLgorICAgICAgICAqIHJ1bnRp
bWUvVGVtcG9yYWxOb3cuY3BwOiBBZGRlZC4KKyAgICAgICAgKEpTQzo6VGVtcG9yYWxOb3c6OlRl
bXBvcmFsTm93KToKKyAgICAgICAgKEpTQzo6VGVtcG9yYWxOb3c6OmNyZWF0ZSk6CisgICAgICAg
IChKU0M6OlRlbXBvcmFsTm93OjpjcmVhdGVTdHJ1Y3R1cmUpOgorICAgICAgICAoSlNDOjpUZW1w
b3JhbE5vdzo6ZmluaXNoQ3JlYXRpb24pOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxOb3cu
aDogQWRkZWQuCisgICAgICAgICogcnVudGltZS9UZW1wb3JhbE9iamVjdC5jcHA6IEFkZGVkLgor
ICAgICAgICAoSlNDOjpjcmVhdGVOb3dPYmplY3QpOgorICAgICAgICAoSlNDOjpUZW1wb3JhbE9i
amVjdDo6VGVtcG9yYWxPYmplY3QpOgorICAgICAgICAoSlNDOjpUZW1wb3JhbE9iamVjdDo6Y3Jl
YXRlKToKKyAgICAgICAgKEpTQzo6VGVtcG9yYWxPYmplY3Q6OmNyZWF0ZVN0cnVjdHVyZSk6Cisg
ICAgICAgIChKU0M6OlRlbXBvcmFsT2JqZWN0OjpmaW5pc2hDcmVhdGlvbik6CisgICAgICAgICog
cnVudGltZS9UZW1wb3JhbE9iamVjdC5oOiBBZGRlZC4KKwogMjAyMS0wNy0wNCAgUm9iaW4gTW9y
aXNzZXQgIDxybW9yaXNzZXRAYXBwbGUuY29tPgogCiAgICAgICAgIEFjdGl2ZVNjcmF0Y2hCdWZm
ZXJTY29wZSBzaG91bGQgdGFrZSB0aGUgYnVmZmVyIGFzIGFyZ3VtZW50CmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ01ha2VMaXN0cy50eHQKaW5kZXggYWQzOTFkMjlmYmYzZGMwNWUyMDkyYjQzNmUyZmE0MTIx
OTljM2JlYS4uZDBjNTY4MzliOTY3MWFjMGU4ZmZjNTllZGZiZTM3YjNkNWExYzMzOCAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMTA3LDYgKzEwNyw3IEBAIHNldChKYXZh
U2NyaXB0Q29yZV9PQkpFQ1RfTFVUX1NPVVJDRVMKICAgICBydW50aW1lL1N0cmluZ1Byb3RvdHlw
ZS5jcHAKICAgICBydW50aW1lL1N5bWJvbENvbnN0cnVjdG9yLmNwcAogICAgIHJ1bnRpbWUvU3lt
Ym9sUHJvdG90eXBlLmNwcAorICAgIHJ1bnRpbWUvVGVtcG9yYWxPYmplY3QuY3BwCiAKICAgICB3
YXNtL2pzL0pTV2ViQXNzZW1ibHkuY3BwCiAgICAgd2FzbS9qcy9KU1RvV2FzbUlDQ2FsbGVlLmNw
cApAQCAtMTA4Niw2ICsxMDg3LDggQEAgc2V0KEphdmFTY3JpcHRDb3JlX1BSSVZBVEVfRlJBTUVX
T1JLX0hFQURFUlMKICAgICBydW50aW1lL1N5bWJvbFRhYmxlLmgKICAgICBydW50aW1lL1N5bWJv
bFRhYmxlT3JTY29wZURlcHRoLmgKICAgICBydW50aW1lL1RlbXBsYXRlT2JqZWN0RGVzY3JpcHRv
ci5oCisgICAgcnVudGltZS9UZW1wb3JhbE5vdy5oCisgICAgcnVudGltZS9UZW1wb3JhbE9iamVj
dC5oCiAgICAgcnVudGltZS9UZXN0UnVubmVyVXRpbHMuaAogICAgIHJ1bnRpbWUvVGhyb3dTY29w
ZS5oCiAgICAgcnVudGltZS9Ub05hdGl2ZUZyb21WYWx1ZS5oCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvRGVyaXZlZFNvdXJjZXMubWFrZSBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9EZXJpdmVkU291cmNlcy5tYWtlCmluZGV4IDlkZjhiMjQ0ZDRjNDU2OTAxYmRkYjQxMjE4OTk2
M2QwNjUxMjYzMjcuLjc1NDJjN2Y3NzQ2NWUyNmUxOWQ0YTY4YTVkYjc2MDkxZmRkNDY1MzkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9EZXJpdmVkU291cmNlcy5tYWtlCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9EZXJpdmVkU291cmNlcy5tYWtlCkBAIC0xOTEsNiArMTkx
LDcgQEAgT0JKRUNUX0xVVF9IRUFERVJTID0gXAogICAgIFN0cmluZ1Byb3RvdHlwZS5sdXQuaCBc
CiAgICAgU3ltYm9sQ29uc3RydWN0b3IubHV0LmggXAogICAgIFN5bWJvbFByb3RvdHlwZS5sdXQu
aCBcCisgICAgVGVtcG9yYWxPYmplY3QubHV0LmggXAogICAgIFdlYkFzc2VtYmx5Q29tcGlsZUVy
cm9yQ29uc3RydWN0b3IubHV0LmggXAogICAgIFdlYkFzc2VtYmx5Q29tcGlsZUVycm9yUHJvdG90
eXBlLmx1dC5oIFwKICAgICBXZWJBc3NlbWJseUdsb2JhbENvbnN0cnVjdG9yLmx1dC5oIFwKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggOTE4NDQ3MGE4NDQ3MGQ2Y2ZkZjUyZjgzODBi
ZjUzNjdjMTliOTZmZC4uMjBkNGQwMWNjYTk0ZjMyNzEzYWVhYTQ4NjFjZDAzMzEwYzhlNDlmMSAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRD
b3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE5NDAsNiArMTk0MCw3IEBACiAJCUUz
RkY3NTMzMUQ5Q0VBMTgwMEM3RTE2RCAvKiBET01KSVRHZXR0ZXJTZXR0ZXIuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzRkY3NTJGMUQ5Q0VBMTIwMEM3
RTE2RCAvKiBET01KSVRHZXR0ZXJTZXR0ZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OwogCQlFNDlEQzE2QzEyRUYyOTRFMDAxODRBMUYgLyogU291cmNl
UHJvdmlkZXJDYWNoZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gRTQ5REMxNTExMkVGMjcyMjAwMTg0QTFGIC8qIFNvdXJjZVByb3ZpZGVyQ2FjaGUuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlFNDlEQzE2
RDEyRUYyOTUzMDAxODRBMUYgLyogU291cmNlUHJvdmlkZXJDYWNoZUl0ZW0uaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEU0OURDMTQ5MTJFRjI2MUEwMDE4
NEExRiAvKiBTb3VyY2VQcm92aWRlckNhY2hlSXRlbS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUY2RjE1MDIxMjY5M0Q0NTAwMDRCOThFRiAvKiBU
ZW1wb3JhbE9iamVjdC5sdXQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEY2RjE1MDIwMjY5M0Q0NTAwMDRCOThFRiAvKiBUZW1wb3JhbE9iamVjdC5sdXQu
aCAqLzsgfTsKIAkJRkUwNDE1NTMyNTJFQzA3MzAwOTFFQjVEIC8qIFNsb3RWaXNpdG9yTWFjcm9z
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGRTA0MTU1
MjI1MkVDMDczMDA5MUVCNUQgLyogU2xvdFZpc2l0b3JNYWNyb3MuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlGRTA1RkFGRDFGRTRDRURBMDAwOTMy
MzAgLyogRGVwcmVjYXRlZEluc3BlY3RvclZhbHVlcy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5OTJENkExMTFGQkQ0OTFEMDAwMjQ1RjQgLyogRGVw
cmVjYXRlZEluc3BlY3RvclZhbHVlcy5jcHAgKi87IH07CiAJCUZFMDg2QkNBMjEyM0RFRkIwMDNG
MjkyOSAvKiBFbnRyeUZyYW1lLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBGRTA4NkJDOTIxMjNERUZBMDAzRjI5MjkgLyogRW50cnlGcmFtZS5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBAIC01Mjc4LDYgKzUy
NzksMTEgQEAKIAkJRjY5MkE4N0QwMjU1NTk3RDAxRkY2MEY3IC8qIFJlZ0V4cC5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGluZGVudFdpZHRoID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZWdFeHAu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB0YWJXaWR0aCA9IDg7IH07CiAJCUY2OTJBODdF
MDI1NTU5N0QwMUZGNjBGNyAvKiBSZWdFeHAuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSAzMDsgaW5kZW50V2lkdGggPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUmVnRXhwLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IHRhYldpZHRoID0gODsgfTsKIAkJRjY5MkE4ODcwMjU1NTk3RDAxRkY2MEY3IC8qIEpTQ0pTVmFs
dWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBp
bmRlbnRXaWR0aCA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSlNDSlNWYWx1ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IHRhYldpZHRoID0g
ODsgfTsKKwkJRjZGMTUwMTgyNjkzRDMzRDAwNEI5OEVGIC8qIFRlbXBvcmFsTm93LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRlbXBvcmFsTm93Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUY2RjE1MDE5MjY5M0QzM0UwMDRCOThFRiAvKiBUZW1wb3JhbE9iamVj
dC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBUZW1wb3JhbE9iamVj
dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY2RjE1MDFBMjY5M0QzM0UwMDRC
OThFRiAvKiBUZW1wb3JhbE9iamVjdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBUZW1wb3JhbE9iamVjdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGNkYxNTAx
QjI2OTNEMzNFMDA0Qjk4RUYgLyogVGVtcG9yYWxOb3cuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gVGVtcG9yYWxOb3cuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlGNkYxNTAyMDI2OTNENDUwMDA0Qjk4RUYgLyogVGVtcG9yYWxPYmplY3QubHV0Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRlbXBvcmFsT2JqZWN0Lmx1dC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlGNzM5MjY5MThEQzY0MzMwQUZDREYwRDcgLyog
SlNTb3VyY2VDb2RlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
U291cmNlQ29kZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUZFMDAyNjIyMjNG
M0FGMzMwMDNBMzU4RiAvKiBXZWJBc3NlbWJseS5hc20gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmFzbS5hc207IG5hbWUgPSBXZWJB
c3NlbWJseS5hc207IHBhdGggPSBsbGludC9XZWJBc3NlbWJseS5hc207IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUZFMDQxNTUyMjUyRUMwNzMwMDkxRUI1RCAvKiBTbG90VmlzaXRvck1h
Y3Jvcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTbG90VmlzaXRvck1hY3Jv
cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNzAwMSw2ICs3MDA3LDcgQEAKIAkJ
CQk5OTZCNzMxMTFCRDlGQTJDMDAzMzFCODQgLyogU3RyaW5nQ29uc3RydWN0b3IubHV0LmggKi8s
CiAJCQkJOTk2QjczMTMxQkQ5RkEyQzAwMzMxQjg0IC8qIFN5bWJvbENvbnN0cnVjdG9yLmx1dC5o
ICovLAogCQkJCTk5NkI3MzE0MUJEOUZBMkMwMDMzMUI4NCAvKiBTeW1ib2xQcm90b3R5cGUubHV0
LmggKi8sCisJCQkJRjZGMTUwMjAyNjkzRDQ1MDAwNEI5OEVGIC8qIFRlbXBvcmFsT2JqZWN0Lmx1
dC5oICovLAogCQkJCTUzM0IxNURFMURDN0Y0NjMwMDRENTAwQSAvKiBXYXNtT3BzLmggKi8sCiAJ
CQkJQUQyRkNDMEExREI1OUM1OTAwQjNFNzM2IC8qIFdlYkFzc2VtYmx5Q29tcGlsZUVycm9yQ29u
c3RydWN0b3IubHV0LmggKi8sCiAJCQkJQUQyRkNDMEIxREI1OUM1OTAwQjNFNzM2IC8qIFdlYkFz
c2VtYmx5Q29tcGlsZUVycm9yUHJvdG90eXBlLmx1dC5oICovLApAQCAtNzk0Myw2ICs3OTUwLDEw
IEBACiAJCQkJRTMxMTc5QTkyMjg4Mzg1RDAwNTE0QjJDIC8qIFN5bWJvbFRhYmxlT3JTY29wZURl
cHRoLmggKi8sCiAJCQkJQkRCNEI1RTA5OUNENEMxQkIzQzFDRjA1IC8qIFRlbXBsYXRlT2JqZWN0
RGVzY3JpcHRvci5jcHAgKi8sCiAJCQkJNzBFQ0E2MDQxQUZEQkVBMjAwNDQ5NzM5IC8qIFRlbXBs
YXRlT2JqZWN0RGVzY3JpcHRvci5oICovLAorCQkJCUY2RjE1MDFCMjY5M0QzM0UwMDRCOThFRiAv
KiBUZW1wb3JhbE5vdy5jcHAgKi8sCisJCQkJRjZGMTUwMTgyNjkzRDMzRDAwNEI5OEVGIC8qIFRl
bXBvcmFsTm93LmggKi8sCisJCQkJRjZGMTUwMTkyNjkzRDMzRTAwNEI5OEVGIC8qIFRlbXBvcmFs
T2JqZWN0LmNwcCAqLywKKwkJCQlGNkYxNTAxQTI2OTNEMzNFMDA0Qjk4RUYgLyogVGVtcG9yYWxP
YmplY3QuaCAqLywKIAkJCQkwRkEyQzE3OTE3RDdDRjg0MDA5RDAxNUYgLyogVGVzdFJ1bm5lclV0
aWxzLmNwcCAqLywKIAkJCQkwRkEyQzE3QTE3RDdDRjg0MDA5RDAxNUYgLyogVGVzdFJ1bm5lclV0
aWxzLmggKi8sCiAJCQkJRkUyRTZBN0ExRDZFQTVGRTAwNjBGODk2IC8qIFRocm93U2NvcGUuY3Bw
ICovLApAQCAtMTA2MzcsNiArMTA2NDgsNyBAQAogCQkJCUE3ODRBMjY0MTFEMTY2MjIwMDU3NzZB
QyAvKiBTeW50YXhDaGVja2VyLmggaW4gSGVhZGVycyAqLywKIAkJCQlEQzc5OTc4MzFDREU5RkEw
MDA0RDRBMDkgLyogVGFnUmVnaXN0ZXJzTW9kZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNzBFQ0E2
MDkxQUZEQkVBMjAwNDQ5NzM5IC8qIFRlbXBsYXRlT2JqZWN0RGVzY3JpcHRvci5oIGluIEhlYWRl
cnMgKi8sCisJCQkJRjZGMTUwMjEyNjkzRDQ1MDAwNEI5OEVGIC8qIFRlbXBvcmFsT2JqZWN0Lmx1
dC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEYyNEU1NEYxN0VFMjc0OTAwQUJCMjE3IC8qIFRlbXBS
ZWdpc3RlclNldC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEY0NEE3QjQyMEJGNjhEOTAwMjJCMTcx
IC8qIFRlcm1pbmF0ZWRDb2RlT3JpZ2luLmggaW4gSGVhZGVycyAqLywKIAkJCQkwRkEyQzE3QzE3
RDdDRjg0MDA5RDAxNUYgLyogVGVzdFJ1bm5lclV0aWxzLmggaW4gSGVhZGVycyAqLywKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9Tb3VyY2VzLnR4dCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9Tb3VyY2VzLnR4dAppbmRleCA0MDI3MjJjYTRkNzZhOWViZjMyYzhjYzQwNDU3MGYz
MzY4YTJmMzExLi41NWRjYTFmZjA1M2Y0Y2U5ODVkMjFmZDZkYmMzZGQzYjBkZTdjYjAwIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvU291cmNlcy50eHQKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL1NvdXJjZXMudHh0CkBAIC0xMDA5LDYgKzEwMDksOCBAQCBydW50aW1lL1N5
bWJvbE9iamVjdC5jcHAKIHJ1bnRpbWUvU3ltYm9sUHJvdG90eXBlLmNwcAogcnVudGltZS9TeW1i
b2xUYWJsZS5jcHAKIHJ1bnRpbWUvVGVtcGxhdGVPYmplY3REZXNjcmlwdG9yLmNwcAorcnVudGlt
ZS9UZW1wb3JhbE5vdy5jcHAKK3J1bnRpbWUvVGVtcG9yYWxPYmplY3QuY3BwCiBydW50aW1lL1Rl
c3RSdW5uZXJVdGlscy5jcHAKIHJ1bnRpbWUvVGhyb3dTY29wZS5jcHAKIHJ1bnRpbWUvVHlwZUxv
Y2F0aW9uQ2FjaGUuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9Db21tb25JZGVudGlmaWVycy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29t
bW9uSWRlbnRpZmllcnMuaAppbmRleCBjNDA0YTFjZGM4MmEyMjAyNjQxODFjODJjZTE3ZDYwZDBj
OWZlMDNjLi5kYzYwMTlmNDVmZDk4YjQzN2E1YmY2ZTI2NTg0YTBhMzQ2MzJmYWRjIDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db21tb25JZGVudGlmaWVycy5oCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vbklkZW50aWZpZXJzLmgKQEAg
LTYxLDYgKzYxLDcgQEAKICAgICBtYWNybyhTaGFyZWRBcnJheUJ1ZmZlcikgXAogICAgIG1hY3Jv
KFN0cmluZykgXAogICAgIG1hY3JvKFN5bWJvbCkgXAorICAgIG1hY3JvKFRlbXBvcmFsKSBcCiAg
ICAgbWFjcm8oV2Vha1JlZikgXAogICAgIG1hY3JvKF9fZGVmaW5lR2V0dGVyX18pIFwKICAgICBt
YWNybyhfX2RlZmluZVNldHRlcl9fKSBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU0dsb2JhbE9iamVjdC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU0dsb2JhbE9iamVjdC5jcHAKaW5kZXggNTY5YzAyNDQ2YzMzZmU3ZGQzMGZiZjVjZGM5
ZDZjNGYxYmQ2YzcwZS4uYjFiNDE2ZTIwNWY4YzNlNzg0NjFhMjMwYTAyY2QzYTQ2Yjk1ZDdjMiAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3Qu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0LmNw
cApAQCAtMjAxLDYgKzIwMSw3IEBACiAjaW5jbHVkZSAiU3ltYm9sQ29uc3RydWN0b3IuaCIKICNp
bmNsdWRlICJTeW1ib2xPYmplY3QuaCIKICNpbmNsdWRlICJTeW1ib2xQcm90b3R5cGUuaCIKKyNp
bmNsdWRlICJUZW1wb3JhbE9iamVjdC5oIgogI2luY2x1ZGUgIlZNVHJhcHNJbmxpbmVzLmgiCiAj
aW5jbHVkZSAiV2FzbUNhcGFiaWxpdGllcy5oIgogI2luY2x1ZGUgIldlYWtNYXBDb25zdHJ1Y3Rv
ci5oIgpAQCAtMTIxNyw2ICsxMjE4LDExIEBAIGNhcGl0YWxOYW1lICMjIENvbnN0cnVjdG9yKiBs
b3dlck5hbWUgIyMgQ29uc3RydWN0b3IgPSBmZWF0dXJlRmxhZyA/IGNhcGl0YWxOYW1lCiAgICAg
SW50bE9iamVjdCogaW50bCA9IEludGxPYmplY3Q6OmNyZWF0ZSh2bSwgdGhpcywgSW50bE9iamVj
dDo6Y3JlYXRlU3RydWN0dXJlKHZtLCB0aGlzLCBtX29iamVjdFByb3RvdHlwZS5nZXQoKSkpOwog
ICAgIHB1dERpcmVjdFdpdGhvdXRUcmFuc2l0aW9uKHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5JbnRs
LCBpbnRsLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oUHJvcGVydHlBdHRyaWJ1dGU6OkRvbnRFbnVt
KSk7CiAKKyAgICBpZiAoT3B0aW9uczo6dXNlVGVtcG9yYWwoKSkgeworICAgICAgICBUZW1wb3Jh
bE9iamVjdCogdGVtcG9yYWwgPSBUZW1wb3JhbE9iamVjdDo6Y3JlYXRlKHZtLCBUZW1wb3JhbE9i
amVjdDo6Y3JlYXRlU3RydWN0dXJlKHZtLCB0aGlzKSk7CisgICAgICAgIHB1dERpcmVjdFdpdGhv
dXRUcmFuc2l0aW9uKHZtLCB2bS5wcm9wZXJ0eU5hbWVzLT5UZW1wb3JhbCwgdGVtcG9yYWwsIHN0
YXRpY19jYXN0PHVuc2lnbmVkPihQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pKTsKKyAgICB9
CisKICAgICBtX21vZHVsZUxvYWRlci5pbml0TGF0ZXIoCiAgICAgICAgIFtdIChjb25zdCBJbml0
aWFsaXplcjxKU01vZHVsZUxvYWRlcj4mIGluaXQpIHsKICAgICAgICAgICAgIGF1dG8gY2F0Y2hT
Y29wZSA9IERFQ0xBUkVfQ0FUQ0hfU0NPUEUoaW5pdC52bSk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9PcHRpb25zTGlzdC5oIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvT3B0aW9uc0xpc3QuaAppbmRleCAyMGQwNmMyMDM2MmY0ZjQ4ZjljN2NmYzhh
YWQ0ZTU5MjBkN2ZkZDI4Li5lMWRiZjU2NjE3NmI2MDMzNDBhMTQ5NmRkOTQ0Mjc2ZDhiMmU0NTI2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PcHRpb25zTGlzdC5o
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09wdGlvbnNMaXN0LmgKQEAgLTU1
MCw2ICs1NTAsNyBAQCBib29sIGNhblVzZVdlYkFzc2VtYmx5RmFzdE1lbW9yeSgpOwogICAgIHYo
Qm9vbCwgdXNlRGF0YUlDSW5PcHRpbWl6aW5nSklULCBmYWxzZSwgTm9ybWFsLCBudWxscHRyKSBc
CiAgICAgdihCb29sLCB1c2VEYXRhSUNTaGFyaW5nLCBmYWxzZSwgTm9ybWFsLCBudWxscHRyKSBc
CiAgICAgdihCb29sLCB1c2VCRkksIGZhbHNlLCBOb3JtYWwsICJBbGxvdyBBUk02NCBpbnN0cnVj
dGlvbiBzZWxlY3Rpb24gb2YgQkZJIikgXAorICAgIHYoQm9vbCwgdXNlVGVtcG9yYWwsIGZhbHNl
LCBOb3JtYWwsICJFeHBvc2UgdGhlIFRlbXBvcmFsIG9iamVjdC4iKSBcCiAKIAogZW51bSBPcHRp
b25FcXVpdmFsZW5jZSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9UZW1wb3JhbE5vdy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3Jh
bE5vdy5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNWZhNzVjMjEzOGJhNWQ4MDJiY2VkNWUxOGEzM2FjNGJiZjcw
NGQ1MAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Rl
bXBvcmFsTm93LmNwcApAQCAtMCwwICsxLDU2IEBACisvKgorICogIENvcHlyaWdodCAoQykgMjAy
MSBJZ2FsaWEgUy5MLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqICBUaGlzIGxpYnJhcnkg
aXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiAgbW9k
aWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYwor
ICogIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247
IGVpdGhlcgorICogIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9u
KSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiAgVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVk
IGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiAgYnV0IFdJVEhPVVQgQU5Z
IFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqICBNRVJD
SEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhl
IEdOVQorICogIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMu
CisgKgorICogIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNz
ZXIgR2VuZXJhbCBQdWJsaWMKKyAqICBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBp
ZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCisgKiAgRm91bmRhdGlvbiwgSW5jLiwg
NTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAgMDIxMTAtMTMwMSAg
VVNBCisgKgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJUZW1wb3JhbE5v
dy5oIgorCisjaW5jbHVkZSAiSlNHbG9iYWxPYmplY3QuaCIKKyNpbmNsdWRlICJPYmplY3RQcm90
b3R5cGUuaCIKKworbmFtZXNwYWNlIEpTQyB7CisKK1NUQVRJQ19BU1NFUlRfSVNfVFJJVklBTExZ
X0RFU1RSVUNUSUJMRShUZW1wb3JhbE5vdyk7CisKK2NvbnN0IENsYXNzSW5mbyBUZW1wb3JhbE5v
dzo6c19pbmZvID0geyAiVGVtcG9yYWwubm93IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0ciwgbnVs
bHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbE5vdykgfTsKKworVGVtcG9yYWxOb3c6
OlRlbXBvcmFsTm93KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCisgICAgOiBCYXNlKHZt
LCBzdHJ1Y3R1cmUpCit7Cit9CisKK1RlbXBvcmFsTm93KiBUZW1wb3JhbE5vdzo6Y3JlYXRlKFZN
JiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCit7CisgICAgVGVtcG9yYWxOb3cqIG9iamVjdCA9
IG5ldyAoTm90TnVsbCwgYWxsb2NhdGVDZWxsPFRlbXBvcmFsTm93Pih2bS5oZWFwKSkgVGVtcG9y
YWxOb3codm0sIHN0cnVjdHVyZSk7CisgICAgb2JqZWN0LT5maW5pc2hDcmVhdGlvbih2bSk7Cisg
ICAgcmV0dXJuIG9iamVjdDsKK30KKworU3RydWN0dXJlKiBUZW1wb3JhbE5vdzo6Y3JlYXRlU3Ry
dWN0dXJlKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKK3sKKyAgICByZXR1
cm4gU3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5vYmpl
Y3RQcm90b3R5cGUoKSwgVHlwZUluZm8oT2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZv
KCkpOworfQorCit2b2lkIFRlbXBvcmFsTm93OjpmaW5pc2hDcmVhdGlvbihWTSYgdm0pCit7Cisg
ICAgQmFzZTo6ZmluaXNoQ3JlYXRpb24odm0pOworICAgIEFTU0VSVChpbmhlcml0cyh2bSwgaW5m
bygpKSk7CisgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7Cit9CisK
K30gLy8gbmFtZXNwYWNlIEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvVGVtcG9yYWxOb3cuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBv
cmFsTm93LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMTUxZjY2ODEyOTdiMzI4ZmEwZjk5YTgwM2IyMjVlYWYwOWI0
Mzk4NQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Rl
bXBvcmFsTm93LmgKQEAgLTAsMCArMSw0NyBAQAorLyoKKyAqICBDb3B5cmlnaHQgKEMpIDIwMjEg
SWdhbGlhLCBTLkwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogIFRoaXMgbGlicmFyeSBp
cyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAqICBtb2Rp
ZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCisg
KiAgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsg
ZWl0aGVyCisgKiAgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24p
IGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqICBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQg
aW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqICBidXQgV0lUSE9VVCBBTlkg
V0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogIE1FUkNI
QU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUg
R05VCisgKiAgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4K
KyAqCisgKiAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3Nl
ciBHZW5lcmFsIFB1YmxpYworICogIExpY2Vuc2UgYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IGlm
IG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKKyAqICBGb3VuZGF0aW9uLCBJbmMuLCA1
MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BICAwMjExMC0xMzAxICBV
U0EKKyAqCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlICJKU09iamVjdC5oIgorCitu
YW1lc3BhY2UgSlNDIHsKKworY2xhc3MgVGVtcG9yYWxOb3cgZmluYWwgOiBwdWJsaWMgSlNOb25G
aW5hbE9iamVjdCB7CitwdWJsaWM6CisgICAgdXNpbmcgQmFzZSA9IEpTTm9uRmluYWxPYmplY3Q7
CisKKyAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBDZWxsVHlwZSwgU3Vic3BhY2VBY2Nlc3M+CisgICAg
c3RhdGljIElzb1N1YnNwYWNlKiBzdWJzcGFjZUZvcihWTSYgdm0pCisgICAgeworICAgICAgICBT
VEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShUZW1wb3JhbE5vdywgQmFzZSk7Cisg
ICAgICAgIHJldHVybiAmdm0ucGxhaW5PYmplY3RTcGFjZTsKKyAgICB9CisKKyAgICBzdGF0aWMg
VGVtcG9yYWxOb3cqIGNyZWF0ZShWTSYsIFN0cnVjdHVyZSopOworICAgIHN0YXRpYyBTdHJ1Y3R1
cmUqIGNyZWF0ZVN0cnVjdHVyZShWTSYsIEpTR2xvYmFsT2JqZWN0Kik7CisKKyAgICBERUNMQVJF
X0lORk87CisKK3ByaXZhdGU6CisgICAgVGVtcG9yYWxOb3coVk0mLCBTdHJ1Y3R1cmUqKTsKKyAg
ICB2b2lkIGZpbmlzaENyZWF0aW9uKFZNJik7Cit9OworCit9IC8vIG5hbWVzcGFjZSBKU0MKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsT2JqZWN0LmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsT2JqZWN0LmNwcApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi4xYTZlNmRlZDExZjk2MTA4YWNlOTRjYWU1NmIzZTcwNzMzYzkyYjNlCi0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxPYmplY3Qu
Y3BwCkBAIC0wLDAgKzEsNzYgQEAKKy8qCisgKiAgQ29weXJpZ2h0IChDKSAyMDIxIElnYWxpYSBT
LkwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNv
ZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAqICBtb2RpZnkgaXQgdW5k
ZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCisgKiAgTGljZW5z
ZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisg
KiAgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRl
ciB2ZXJzaW9uLgorICoKKyAqICBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhv
cGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7
IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogIE1FUkNIQU5UQUJJTElU
WSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiAg
TGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiAg
WW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFs
IFB1YmxpYworICogIExpY2Vuc2UgYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IGlmIG5vdCwgd3Jp
dGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKKyAqICBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xp
biBTdHJlZXQsIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BICAwMjExMC0xMzAxICBVU0EKKyAqCisg
Ki8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIlRlbXBvcmFsT2JqZWN0LmgiCisK
KyNpbmNsdWRlICJKU0dsb2JhbE9iamVjdC5oIgorI2luY2x1ZGUgIk9iamVjdFByb3RvdHlwZS5o
IgorI2luY2x1ZGUgIlRlbXBvcmFsTm93LmgiCisKK25hbWVzcGFjZSBKU0MgeworCitTVEFUSUNf
QVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoVGVtcG9yYWxPYmplY3QpOworCitzdGF0
aWMgSlNWYWx1ZSBjcmVhdGVOb3dPYmplY3QoVk0mIHZtLCBKU09iamVjdCogb2JqZWN0KQorewor
ICAgIFRlbXBvcmFsT2JqZWN0KiB0ZW1wb3JhbE9iamVjdCA9IGpzQ2FzdDxUZW1wb3JhbE9iamVj
dCo+KG9iamVjdCk7CisgICAgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCA9IHRlbXBvcmFs
T2JqZWN0LT5nbG9iYWxPYmplY3Qodm0pOworICAgIHJldHVybiBUZW1wb3JhbE5vdzo6Y3JlYXRl
KHZtLCBUZW1wb3JhbE5vdzo6Y3JlYXRlU3RydWN0dXJlKHZtLCBnbG9iYWxPYmplY3QpKTsKK30K
KworfSAvLyBuYW1lc3BhY2UgSlNDCisKKyNpbmNsdWRlICJUZW1wb3JhbE9iamVjdC5sdXQuaCIK
KworbmFtZXNwYWNlIEpTQyB7CisKKy8qIFNvdXJjZSBmb3IgVGVtcG9yYWxPYmplY3QubHV0LmgK
K0BiZWdpbiB0ZW1wb3JhbE9iamVjdFRhYmxlCisgIG5vdyAgICAgICAgICAgIGNyZWF0ZU5vd09i
amVjdCAgICAgICAgICAgICAgICAgRG9udEVudW18UHJvcGVydHlDYWxsYmFjaworQGVuZAorKi8K
KworY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsT2JqZWN0OjpzX2luZm8gPSB7ICJUZW1wb3JhbCIs
ICZCYXNlOjpzX2luZm8sICZ0ZW1wb3JhbE9iamVjdFRhYmxlLCBudWxscHRyLCBDUkVBVEVfTUVU
SE9EX1RBQkxFKFRlbXBvcmFsT2JqZWN0KSB9OworCitUZW1wb3JhbE9iamVjdDo6VGVtcG9yYWxP
YmplY3QoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKKyAgICA6IEJhc2Uodm0sIHN0cnVj
dHVyZSkKK3sKK30KKworVGVtcG9yYWxPYmplY3QqIFRlbXBvcmFsT2JqZWN0OjpjcmVhdGUoVk0m
IHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKK3sKKyAgICBUZW1wb3JhbE9iamVjdCogb2JqZWN0
ID0gbmV3IChOb3ROdWxsLCBhbGxvY2F0ZUNlbGw8VGVtcG9yYWxPYmplY3Q+KHZtLmhlYXApKSBU
ZW1wb3JhbE9iamVjdCh2bSwgc3RydWN0dXJlKTsKKyAgICBvYmplY3QtPmZpbmlzaENyZWF0aW9u
KHZtKTsKKyAgICByZXR1cm4gb2JqZWN0OworfQorCitTdHJ1Y3R1cmUqIFRlbXBvcmFsT2JqZWN0
OjpjcmVhdGVTdHJ1Y3R1cmUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQor
eworICAgIHJldHVybiBTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBnbG9iYWxP
YmplY3QtPm9iamVjdFByb3RvdHlwZSgpLCBUeXBlSW5mbyhPYmplY3RUeXBlLCBTdHJ1Y3R1cmVG
bGFncyksIGluZm8oKSk7Cit9CisKK3ZvaWQgVGVtcG9yYWxPYmplY3Q6OmZpbmlzaENyZWF0aW9u
KFZNJiB2bSkKK3sKKyAgICBCYXNlOjpmaW5pc2hDcmVhdGlvbih2bSk7CisgICAgQVNTRVJUKGlu
aGVyaXRzKHZtLCBpbmZvKCkpKTsKKyAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VUX1RSQU5T
SVRJT04oKTsKK30KKworfSAvLyBuYW1lc3BhY2UgSlNDCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbE9iamVjdC5oIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvVGVtcG9yYWxPYmplY3QuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xZWU5OTk0YzJiOGMwNWU0
NmQxNjEwNmE2NmYwMmI5NzU4YjhiMjgzCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxPYmplY3QuaApAQCAtMCwwICsxLDQ4IEBACisvKgor
ICogIENvcHlyaWdodCAoQykgMjAyMSBJZ2FsaWEsIFMuTC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
KyAqCisgKiAgVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmli
dXRlIGl0IGFuZC9vcgorICogIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBM
ZXNzZXIgR2VuZXJhbCBQdWJsaWMKKyAqICBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJl
ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAqICB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vu
c2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogIFRoaXMg
bGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVs
LAorICogIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVk
IHdhcnJhbnR5IG9mCisgKiAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAqICBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGlj
ZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQg
YSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCisgKiAgTGljZW5zZSBhbG9u
ZyB3aXRoIHRoaXMgbGlicmFyeTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQor
ICogIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsIEJv
c3RvbiwgTUEgIDAyMTEwLTEzMDEgIFVTQQorICoKKyAqLworCisjcHJhZ21hIG9uY2UKKworI2lu
Y2x1ZGUgIkpTT2JqZWN0LmgiCisKK25hbWVzcGFjZSBKU0MgeworCitjbGFzcyBUZW1wb3JhbE9i
amVjdCBmaW5hbCA6IHB1YmxpYyBKU05vbkZpbmFsT2JqZWN0IHsKK3B1YmxpYzoKKyAgICB1c2lu
ZyBCYXNlID0gSlNOb25GaW5hbE9iamVjdDsKKyAgICBzdGF0aWMgY29uc3RleHByIHVuc2lnbmVk
IFN0cnVjdHVyZUZsYWdzID0gQmFzZTo6U3RydWN0dXJlRmxhZ3MgfCBIYXNTdGF0aWNQcm9wZXJ0
eVRhYmxlOworCisgICAgdGVtcGxhdGU8dHlwZW5hbWUgQ2VsbFR5cGUsIFN1YnNwYWNlQWNjZXNz
PgorICAgIHN0YXRpYyBJc29TdWJzcGFjZSogc3Vic3BhY2VGb3IoVk0mIHZtKQorICAgIHsKKyAg
ICAgICAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoVGVtcG9yYWxPYmplY3Qs
IEJhc2UpOworICAgICAgICByZXR1cm4gJnZtLnBsYWluT2JqZWN0U3BhY2U7CisgICAgfQorCisg
ICAgc3RhdGljIFRlbXBvcmFsT2JqZWN0KiBjcmVhdGUoVk0mLCBTdHJ1Y3R1cmUqKTsKKyAgICBz
dGF0aWMgU3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoVk0mLCBKU0dsb2JhbE9iamVjdCopOwor
CisgICAgREVDTEFSRV9JTkZPOworCitwcml2YXRlOgorICAgIFRlbXBvcmFsT2JqZWN0KFZNJiwg
U3RydWN0dXJlKik7CisgICAgdm9pZCBmaW5pc2hDcmVhdGlvbihWTSYpOworfTsKKworfSAvLyBu
YW1lc3BhY2UgSlNDCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>432955</attachid>
            <date>2021-07-06 11:51:35 -0700</date>
            <delta_ts>2021-07-06 17:49:00 -0700</delta_ts>
            <desc>Add empty Temporal and Temporal.now objects</desc>
            <filename>bug-223166-20210706115134.patch</filename>
            <type>text/plain</type>
            <size>20596</size>
            <attacher name="Philip Chimento">philip.chimento</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc5NTk5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAz
ZDU4OTE1NmU0YTMxYTg1MzgxYjUxYTE1OGFjNGU4ZWRmODdhNWRlLi5lN2FiMDk5N2U2MTcxODQz
MGEwMzFjZWVlZTBjZDdmMWJhZGI3OTVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0MSBAQAorMjAyMS0wNy0wNSAgUGhpbGlwIENoaW1lbnRvICA8cGNoaW1lbnRvQGlnYWxp
YS5jb20+CisKKyAgICAgICAgW0pTQ10gSW1wbGVtZW50IFRlbXBvcmFsCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjMxNjYKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbnRlbmRlZCB0byBiZSB0aGUgZmly
c3QgcGF0Y2ggaW4gYSBzdGFjay4gQWRkcyBib2lsZXJwbGF0ZSBmb3IKKyAgICAgICAgVGVtcG9y
YWwgaW4gb3JkZXIgdG8gdW5ibG9jayBmdXJ0aGVyIHBhcmFsbGVsaXphYmxlIHdvcmsgb24gdGhp
cyBidWcuCisKKyAgICAgICAgVGhpcyBwYXRjaCBhZGRzIGEgZmVhdHVyZSBmbGFnIGZvciBUZW1w
b3JhbCwgYW5kIGEgdG9wbGV2ZWwgVGVtcG9yYWwKKyAgICAgICAgZ2xvYmFsIGNvbnRhaW5pbmcg
b25seSBUZW1wb3JhbC5ub3csIHdoaWNoIGlzIGl0c2VsZiBhbiBlbXB0eSBvYmplY3QuCisgICAg
ICAgIFRoZXNlIG9iamVjdHMgd2lsbCBiZSBmdXJ0aGVyIHBvcHVsYXRlZCBpbiBsYXRlciBwYXRj
aGVzLgorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6IEFkZCBUZW1wb3JhbE9iamVjdCBhbmQg
VGVtcG9yYWxOb3cuIFByb3BlcnR5IGxvb2t1cAorICAgICAgICAgIHRhYmxlIGluIFRlbXBvcmFs
T2JqZWN0LgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6IEFkZCBUZW1wb3JhbE9iamVj
dCBwcm9wZXJ0eSBsb29rdXAgdGFibGUgaGVhZGVyLgorICAgICAgICAqIEphdmFTY3JpcHRDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IEFkZCBuZXcgZmlsZXMuCisgICAgICAgICogU291
cmNlcy50eHQ6IEFkZCBUZW1wb3JhbE9iamVjdCBhbmQgVGVtcG9yYWxOb3cuCisgICAgICAgICog
cnVudGltZS9Db21tb25JZGVudGlmaWVycy5oOiBBZGQgJ1RlbXBvcmFsJyBwcm9wZXJ0eSBrZXku
CisgICAgICAgICogcnVudGltZS9KU0dsb2JhbE9iamVjdC5jcHA6CisgICAgICAgIChKU0M6OkpT
R2xvYmFsT2JqZWN0Ojppbml0KTogQ3JlYXRlIHRoZSBUZW1wb3JhbCBnbG9iYWwgaWYgdGhlIGZl
YXR1cmUKKyAgICAgICAgICBmbGFnIGlzIGVuYWJsZWQuCisgICAgICAgICogcnVudGltZS9PcHRp
b25zTGlzdC5oOiBBZGQgdXNlVGVtcG9yYWwgZmVhdHVyZSBmbGFnLgorICAgICAgICAqIHJ1bnRp
bWUvVGVtcG9yYWxOb3cuY3BwOiBBZGRlZC4KKyAgICAgICAgKEpTQzo6VGVtcG9yYWxOb3c6OlRl
bXBvcmFsTm93KToKKyAgICAgICAgKEpTQzo6VGVtcG9yYWxOb3c6OmNyZWF0ZSk6CisgICAgICAg
IChKU0M6OlRlbXBvcmFsTm93OjpjcmVhdGVTdHJ1Y3R1cmUpOgorICAgICAgICAoSlNDOjpUZW1w
b3JhbE5vdzo6ZmluaXNoQ3JlYXRpb24pOgorICAgICAgICAqIHJ1bnRpbWUvVGVtcG9yYWxOb3cu
aDogQWRkZWQuCisgICAgICAgICogcnVudGltZS9UZW1wb3JhbE9iamVjdC5jcHA6IEFkZGVkLgor
ICAgICAgICAoSlNDOjpjcmVhdGVOb3dPYmplY3QpOgorICAgICAgICAoSlNDOjpUZW1wb3JhbE9i
amVjdDo6VGVtcG9yYWxPYmplY3QpOgorICAgICAgICAoSlNDOjpUZW1wb3JhbE9iamVjdDo6Y3Jl
YXRlKToKKyAgICAgICAgKEpTQzo6VGVtcG9yYWxPYmplY3Q6OmNyZWF0ZVN0cnVjdHVyZSk6Cisg
ICAgICAgIChKU0M6OlRlbXBvcmFsT2JqZWN0OjpmaW5pc2hDcmVhdGlvbik6CisgICAgICAgICog
cnVudGltZS9UZW1wb3JhbE9iamVjdC5oOiBBZGRlZC4KKwogMjAyMS0wNy0wNiAgWWlqaWEgSHVh
bmcgIDx5aWppYV9odWFuZ0BhcHBsZS5jb20+CiAKICAgICAgICAgRml4IGluc3RydWN0aW9uIGNo
ZWNrIGZhaWx1cmUgb2YgVUJGWCBhbmQgU0JGSVogaW4gdGVzdGIzIGR1ZSB0byB0aGUgc3BlY3Vs
YXRpdmUgZml4IGluIGJ1ZyAyMjc1NTQKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DTWFrZUxpc3RzLnR4dApp
bmRleCBhZDM5MWQyOWZiZjNkYzA1ZTIwOTJiNDM2ZTJmYTQxMjE5OWMzYmVhLi5kMGM1NjgzOWI5
NjcxYWMwZThmZmM1OWVkZmJlMzdiM2Q1YTFjMzM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NNYWtl
TGlzdHMudHh0CkBAIC0xMDcsNiArMTA3LDcgQEAgc2V0KEphdmFTY3JpcHRDb3JlX09CSkVDVF9M
VVRfU09VUkNFUwogICAgIHJ1bnRpbWUvU3RyaW5nUHJvdG90eXBlLmNwcAogICAgIHJ1bnRpbWUv
U3ltYm9sQ29uc3RydWN0b3IuY3BwCiAgICAgcnVudGltZS9TeW1ib2xQcm90b3R5cGUuY3BwCisg
ICAgcnVudGltZS9UZW1wb3JhbE9iamVjdC5jcHAKIAogICAgIHdhc20vanMvSlNXZWJBc3NlbWJs
eS5jcHAKICAgICB3YXNtL2pzL0pTVG9XYXNtSUNDYWxsZWUuY3BwCkBAIC0xMDg2LDYgKzEwODcs
OCBAQCBzZXQoSmF2YVNjcmlwdENvcmVfUFJJVkFURV9GUkFNRVdPUktfSEVBREVSUwogICAgIHJ1
bnRpbWUvU3ltYm9sVGFibGUuaAogICAgIHJ1bnRpbWUvU3ltYm9sVGFibGVPclNjb3BlRGVwdGgu
aAogICAgIHJ1bnRpbWUvVGVtcGxhdGVPYmplY3REZXNjcmlwdG9yLmgKKyAgICBydW50aW1lL1Rl
bXBvcmFsTm93LmgKKyAgICBydW50aW1lL1RlbXBvcmFsT2JqZWN0LmgKICAgICBydW50aW1lL1Rl
c3RSdW5uZXJVdGlscy5oCiAgICAgcnVudGltZS9UaHJvd1Njb3BlLmgKICAgICBydW50aW1lL1Rv
TmF0aXZlRnJvbVZhbHVlLmgKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9EZXJp
dmVkU291cmNlcy5tYWtlIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0Rlcml2ZWRTb3VyY2VzLm1h
a2UKaW5kZXggOWRmOGIyNDRkNGM0NTY5MDFiZGRiNDEyMTg5OTYzZDA2NTEyNjMyNy4uNzU0MmM3
Zjc3NDY1ZTI2ZTE5ZDRhNjhhNWRiNzYwOTFmZGQ0NjUzOSAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKQEAgLTE5MSw2ICsxOTEsNyBAQCBPQkpFQ1RfTFVUX0hF
QURFUlMgPSBcCiAgICAgU3RyaW5nUHJvdG90eXBlLmx1dC5oIFwKICAgICBTeW1ib2xDb25zdHJ1
Y3Rvci5sdXQuaCBcCiAgICAgU3ltYm9sUHJvdG90eXBlLmx1dC5oIFwKKyAgICBUZW1wb3JhbE9i
amVjdC5sdXQuaCBcCiAgICAgV2ViQXNzZW1ibHlDb21waWxlRXJyb3JDb25zdHJ1Y3Rvci5sdXQu
aCBcCiAgICAgV2ViQXNzZW1ibHlDb21waWxlRXJyb3JQcm90b3R5cGUubHV0LmggXAogICAgIFdl
YkFzc2VtYmx5R2xvYmFsQ29uc3RydWN0b3IubHV0LmggXApkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagppbmRleCA5MTg0NDcwYTg0NDcwZDZjZmRmNTJmODM4MGJmNTM2N2MxOWI5NmZkLi4yMGQ0
ZDAxY2NhOTRmMzI3MTNhZWFhNDg2MWNkMDMzMTBjOGU0OWYxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagpAQCAtMTk0MCw2ICsxOTQwLDcgQEAKIAkJRTNGRjc1MzMxRDlDRUExODAwQzdF
MTZEIC8qIERPTUpJVEdldHRlclNldHRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gRTNGRjc1MkYxRDlDRUExMjAwQzdFMTZEIC8qIERPTUpJVEdldHRl
clNldHRlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CiAJCUU0OURDMTZDMTJFRjI5NEUwMDE4NEExRiAvKiBTb3VyY2VQcm92aWRlckNhY2hlLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNDlEQzE1MTEyRUYy
NzIyMDAxODRBMUYgLyogU291cmNlUHJvdmlkZXJDYWNoZS5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUU0OURDMTZEMTJFRjI5NTMwMDE4NEExRiAv
KiBTb3VyY2VQcm92aWRlckNhY2hlSXRlbS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gRTQ5REMxNDkxMkVGMjYxQTAwMTg0QTFGIC8qIFNvdXJjZVByb3Zp
ZGVyQ2FjaGVJdGVtLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKKwkJRjZGMTUwMjEyNjkzRDQ1MDAwNEI5OEVGIC8qIFRlbXBvcmFsT2JqZWN0Lmx1dC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjZGMTUwMjAy
NjkzRDQ1MDAwNEI5OEVGIC8qIFRlbXBvcmFsT2JqZWN0Lmx1dC5oICovOyB9OwogCQlGRTA0MTU1
MzI1MkVDMDczMDA5MUVCNUQgLyogU2xvdFZpc2l0b3JNYWNyb3MuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZFMDQxNTUyMjUyRUMwNzMwMDkxRUI1RCAv
KiBTbG90VmlzaXRvck1hY3Jvcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CiAJCUZFMDVGQUZEMUZFNENFREEwMDA5MzIzMCAvKiBEZXByZWNhdGVkSW5z
cGVjdG9yVmFsdWVzLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDk5MkQ2QTExMUZCRDQ5MUQwMDAyNDVGNCAvKiBEZXByZWNhdGVkSW5zcGVjdG9yVmFs
dWVzLmNwcCAqLzsgfTsKIAkJRkUwODZCQ0EyMTIzREVGQjAwM0YyOTI5IC8qIEVudHJ5RnJhbWUu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEZFMDg2QkM5
MjEyM0RFRkEwMDNGMjkyOSAvKiBFbnRyeUZyYW1lLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTUyNzgsNiArNTI3OSwxMSBAQAogCQlGNjkyQTg3
RDAyNTU1OTdEMDFGRjYwRjcgLyogUmVnRXhwLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgaW5kZW50V2lkdGggPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlZ0V4cC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IHRhYldpZHRoID0gODsgfTsKIAkJRjY5MkE4N0UwMjU1NTk3RDAxRkY2MEY3IC8q
IFJlZ0V4cC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBpbmRlbnRXaWR0aCA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBSZWdFeHAuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgdGFiV2lkdGggPSA4OyB9Owog
CQlGNjkyQTg4NzAyNTU1OTdEMDFGRjYwRjcgLyogSlNDSlNWYWx1ZS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGluZGVudFdpZHRoID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0NKU1ZhbHVlLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgdGFiV2lkdGggPSA4OyB9OworCQlGNkYxNTAxODI2
OTNEMzNEMDA0Qjk4RUYgLyogVGVtcG9yYWxOb3cuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gVGVtcG9yYWxOb3cuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjZG
MTUwMTkyNjkzRDMzRTAwNEI5OEVGIC8qIFRlbXBvcmFsT2JqZWN0LmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFRlbXBvcmFsT2JqZWN0LmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJRjZGMTUwMUEyNjkzRDMzRTAwNEI5OEVGIC8qIFRlbXBvcmFsT2Jq
ZWN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRlbXBvcmFsT2JqZWN0Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY2RjE1MDFCMjY5M0QzM0UwMDRCOThFRiAv
KiBUZW1wb3JhbE5vdy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBU
ZW1wb3JhbE5vdy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY2RjE1MDIwMjY5
M0Q0NTAwMDRCOThFRiAvKiBUZW1wb3JhbE9iamVjdC5sdXQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gVGVtcG9yYWxPYmplY3QubHV0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUY3MzkyNjkxOERDNjQzMzBBRkNERjBENyAvKiBKU1NvdXJjZUNvZGUuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNTb3VyY2VDb2RlLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRkUwMDI2MjIyM0YzQUYzMzAwM0EzNThGIC8qIFdl
YkFzc2VtYmx5LmFzbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYXNtLmFzbTsgbmFtZSA9IFdlYkFzc2VtYmx5LmFzbTsgcGF0aCA9
IGxsaW50L1dlYkFzc2VtYmx5LmFzbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRkUw
NDE1NTIyNTJFQzA3MzAwOTFFQjVEIC8qIFNsb3RWaXNpdG9yTWFjcm9zLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNsb3RWaXNpdG9yTWFjcm9zLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CkBAIC03MDAxLDYgKzcwMDcsNyBAQAogCQkJCTk5NkI3MzExMUJEOUZBMkMw
MDMzMUI4NCAvKiBTdHJpbmdDb25zdHJ1Y3Rvci5sdXQuaCAqLywKIAkJCQk5OTZCNzMxMzFCRDlG
QTJDMDAzMzFCODQgLyogU3ltYm9sQ29uc3RydWN0b3IubHV0LmggKi8sCiAJCQkJOTk2QjczMTQx
QkQ5RkEyQzAwMzMxQjg0IC8qIFN5bWJvbFByb3RvdHlwZS5sdXQuaCAqLywKKwkJCQlGNkYxNTAy
MDI2OTNENDUwMDA0Qjk4RUYgLyogVGVtcG9yYWxPYmplY3QubHV0LmggKi8sCiAJCQkJNTMzQjE1
REUxREM3RjQ2MzAwNEQ1MDBBIC8qIFdhc21PcHMuaCAqLywKIAkJCQlBRDJGQ0MwQTFEQjU5QzU5
MDBCM0U3MzYgLyogV2ViQXNzZW1ibHlDb21waWxlRXJyb3JDb25zdHJ1Y3Rvci5sdXQuaCAqLywK
IAkJCQlBRDJGQ0MwQjFEQjU5QzU5MDBCM0U3MzYgLyogV2ViQXNzZW1ibHlDb21waWxlRXJyb3JQ
cm90b3R5cGUubHV0LmggKi8sCkBAIC03OTQzLDYgKzc5NTAsMTAgQEAKIAkJCQlFMzExNzlBOTIy
ODgzODVEMDA1MTRCMkMgLyogU3ltYm9sVGFibGVPclNjb3BlRGVwdGguaCAqLywKIAkJCQlCREI0
QjVFMDk5Q0Q0QzFCQjNDMUNGMDUgLyogVGVtcGxhdGVPYmplY3REZXNjcmlwdG9yLmNwcCAqLywK
IAkJCQk3MEVDQTYwNDFBRkRCRUEyMDA0NDk3MzkgLyogVGVtcGxhdGVPYmplY3REZXNjcmlwdG9y
LmggKi8sCisJCQkJRjZGMTUwMUIyNjkzRDMzRTAwNEI5OEVGIC8qIFRlbXBvcmFsTm93LmNwcCAq
LywKKwkJCQlGNkYxNTAxODI2OTNEMzNEMDA0Qjk4RUYgLyogVGVtcG9yYWxOb3cuaCAqLywKKwkJ
CQlGNkYxNTAxOTI2OTNEMzNFMDA0Qjk4RUYgLyogVGVtcG9yYWxPYmplY3QuY3BwICovLAorCQkJ
CUY2RjE1MDFBMjY5M0QzM0UwMDRCOThFRiAvKiBUZW1wb3JhbE9iamVjdC5oICovLAogCQkJCTBG
QTJDMTc5MTdEN0NGODQwMDlEMDE1RiAvKiBUZXN0UnVubmVyVXRpbHMuY3BwICovLAogCQkJCTBG
QTJDMTdBMTdEN0NGODQwMDlEMDE1RiAvKiBUZXN0UnVubmVyVXRpbHMuaCAqLywKIAkJCQlGRTJF
NkE3QTFENkVBNUZFMDA2MEY4OTYgLyogVGhyb3dTY29wZS5jcHAgKi8sCkBAIC0xMDYzNyw2ICsx
MDY0OCw3IEBACiAJCQkJQTc4NEEyNjQxMUQxNjYyMjAwNTc3NkFDIC8qIFN5bnRheENoZWNrZXIu
aCBpbiBIZWFkZXJzICovLAogCQkJCURDNzk5NzgzMUNERTlGQTAwMDRENEEwOSAvKiBUYWdSZWdp
c3RlcnNNb2RlLmggaW4gSGVhZGVycyAqLywKIAkJCQk3MEVDQTYwOTFBRkRCRUEyMDA0NDk3Mzkg
LyogVGVtcGxhdGVPYmplY3REZXNjcmlwdG9yLmggaW4gSGVhZGVycyAqLywKKwkJCQlGNkYxNTAy
MTI2OTNENDUwMDA0Qjk4RUYgLyogVGVtcG9yYWxPYmplY3QubHV0LmggaW4gSGVhZGVycyAqLywK
IAkJCQkwRjI0RTU0RjE3RUUyNzQ5MDBBQkIyMTcgLyogVGVtcFJlZ2lzdGVyU2V0LmggaW4gSGVh
ZGVycyAqLywKIAkJCQkwRjQ0QTdCNDIwQkY2OEQ5MDAyMkIxNzEgLyogVGVybWluYXRlZENvZGVP
cmlnaW4uaCBpbiBIZWFkZXJzICovLAogCQkJCTBGQTJDMTdDMTdEN0NGODQwMDlEMDE1RiAvKiBU
ZXN0UnVubmVyVXRpbHMuaCBpbiBIZWFkZXJzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL1NvdXJjZXMudHh0IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL1NvdXJjZXMudHh0
CmluZGV4IDQwMjcyMmNhNGQ3NmE5ZWJmMzJjOGNjNDA0NTcwZjMzNjhhMmYzMTEuLjU1ZGNhMWZm
MDUzZjRjZTk4NWQyMWZkNmRiYzNkZDNiMGRlN2NiMDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9Tb3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvU291cmNl
cy50eHQKQEAgLTEwMDksNiArMTAwOSw4IEBAIHJ1bnRpbWUvU3ltYm9sT2JqZWN0LmNwcAogcnVu
dGltZS9TeW1ib2xQcm90b3R5cGUuY3BwCiBydW50aW1lL1N5bWJvbFRhYmxlLmNwcAogcnVudGlt
ZS9UZW1wbGF0ZU9iamVjdERlc2NyaXB0b3IuY3BwCitydW50aW1lL1RlbXBvcmFsTm93LmNwcAor
cnVudGltZS9UZW1wb3JhbE9iamVjdC5jcHAKIHJ1bnRpbWUvVGVzdFJ1bm5lclV0aWxzLmNwcAog
cnVudGltZS9UaHJvd1Njb3BlLmNwcAogcnVudGltZS9UeXBlTG9jYXRpb25DYWNoZS5jcHAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbW1vbklkZW50aWZpZXJz
LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db21tb25JZGVudGlmaWVycy5oCmlu
ZGV4IGM0MDRhMWNkYzgyYTIyMDI2NDE4MWM4MmNlMTdkNjBkMGM5ZmUwM2MuLmRjNjAxOWY0NWZk
OThiNDM3YTViZjZlMjY1ODRhMGEzNDYzMmZhZGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0NvbW1vbklkZW50aWZpZXJzLmgKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaApAQCAtNjEsNiArNjEsNyBAQAogICAg
IG1hY3JvKFNoYXJlZEFycmF5QnVmZmVyKSBcCiAgICAgbWFjcm8oU3RyaW5nKSBcCiAgICAgbWFj
cm8oU3ltYm9sKSBcCisgICAgbWFjcm8oVGVtcG9yYWwpIFwKICAgICBtYWNybyhXZWFrUmVmKSBc
CiAgICAgbWFjcm8oX19kZWZpbmVHZXR0ZXJfXykgXAogICAgIG1hY3JvKF9fZGVmaW5lU2V0dGVy
X18pIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFs
T2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0
LmNwcAppbmRleCA1NjljMDI0NDZjMzNmZTdkZDMwZmJmNWNkYzlkNmM0ZjFiZDZjNzBlLi5iMWI0
MTZlMjA1ZjhjM2U3ODQ2MWEyMzBhMDJjZDNhNDZiOTVkN2MyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dsb2JhbE9iamVjdC5jcHAKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3QuY3BwCkBAIC0yMDEsNiArMjAxLDcg
QEAKICNpbmNsdWRlICJTeW1ib2xDb25zdHJ1Y3Rvci5oIgogI2luY2x1ZGUgIlN5bWJvbE9iamVj
dC5oIgogI2luY2x1ZGUgIlN5bWJvbFByb3RvdHlwZS5oIgorI2luY2x1ZGUgIlRlbXBvcmFsT2Jq
ZWN0LmgiCiAjaW5jbHVkZSAiVk1UcmFwc0lubGluZXMuaCIKICNpbmNsdWRlICJXYXNtQ2FwYWJp
bGl0aWVzLmgiCiAjaW5jbHVkZSAiV2Vha01hcENvbnN0cnVjdG9yLmgiCkBAIC0xMjE3LDYgKzEy
MTgsMTEgQEAgY2FwaXRhbE5hbWUgIyMgQ29uc3RydWN0b3IqIGxvd2VyTmFtZSAjIyBDb25zdHJ1
Y3RvciA9IGZlYXR1cmVGbGFnID8gY2FwaXRhbE5hbWUKICAgICBJbnRsT2JqZWN0KiBpbnRsID0g
SW50bE9iamVjdDo6Y3JlYXRlKHZtLCB0aGlzLCBJbnRsT2JqZWN0OjpjcmVhdGVTdHJ1Y3R1cmUo
dm0sIHRoaXMsIG1fb2JqZWN0UHJvdG90eXBlLmdldCgpKSk7CiAgICAgcHV0RGlyZWN0V2l0aG91
dFRyYW5zaXRpb24odm0sIHZtLnByb3BlcnR5TmFtZXMtPkludGwsIGludGwsIHN0YXRpY19jYXN0
PHVuc2lnbmVkPihQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVudW0pKTsKIAorICAgIGlmIChPcHRp
b25zOjp1c2VUZW1wb3JhbCgpKSB7CisgICAgICAgIFRlbXBvcmFsT2JqZWN0KiB0ZW1wb3JhbCA9
IFRlbXBvcmFsT2JqZWN0OjpjcmVhdGUodm0sIFRlbXBvcmFsT2JqZWN0OjpjcmVhdGVTdHJ1Y3R1
cmUodm0sIHRoaXMpKTsKKyAgICAgICAgcHV0RGlyZWN0V2l0aG91dFRyYW5zaXRpb24odm0sIHZt
LnByb3BlcnR5TmFtZXMtPlRlbXBvcmFsLCB0ZW1wb3JhbCwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+
KFByb3BlcnR5QXR0cmlidXRlOjpEb250RW51bSkpOworICAgIH0KKwogICAgIG1fbW9kdWxlTG9h
ZGVyLmluaXRMYXRlcigKICAgICAgICAgW10gKGNvbnN0IEluaXRpYWxpemVyPEpTTW9kdWxlTG9h
ZGVyPiYgaW5pdCkgewogICAgICAgICAgICAgYXV0byBjYXRjaFNjb3BlID0gREVDTEFSRV9DQVRD
SF9TQ09QRShpbml0LnZtKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL09wdGlvbnNMaXN0LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PcHRpb25z
TGlzdC5oCmluZGV4IDBkZWE0YzUzZWExNzA1MGNkNDhjNGM3MTI0MDVjNjg3ZDRhNTg4ZmMuLmJi
NGYyNTEzODIyNDg4OGI5ZTI3MTk0MDNlZTI2NTQ3OThmOTk3NTMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL09wdGlvbnNMaXN0LmgKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvT3B0aW9uc0xpc3QuaApAQCAtNTQ5LDYgKzU0OSw3IEBAIGJvb2wg
Y2FuVXNlV2ViQXNzZW1ibHlGYXN0TWVtb3J5KCk7CiAgICAgdihCb29sLCB1c2VEYXRhSUMsIGZh
bHNlLCBOb3JtYWwsIG51bGxwdHIpIFwKICAgICB2KEJvb2wsIHVzZURhdGFJQ0luT3B0aW1pemlu
Z0pJVCwgZmFsc2UsIE5vcm1hbCwgbnVsbHB0cikgXAogICAgIHYoQm9vbCwgdXNlRGF0YUlDU2hh
cmluZywgZmFsc2UsIE5vcm1hbCwgbnVsbHB0cikgXAorICAgIHYoQm9vbCwgdXNlVGVtcG9yYWws
IGZhbHNlLCBOb3JtYWwsICJFeHBvc2UgdGhlIFRlbXBvcmFsIG9iamVjdC4iKSBcCiAKIAogZW51
bSBPcHRpb25FcXVpdmFsZW5jZSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9UZW1wb3JhbE5vdy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9U
ZW1wb3JhbE5vdy5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNWZhNzVjMjEzOGJhNWQ4MDJiY2VkNWUxOGEzM2Fj
NGJiZjcwNGQ1MAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1RlbXBvcmFsTm93LmNwcApAQCAtMCwwICsxLDU2IEBACisvKgorICogIENvcHlyaWdodCAo
QykgMjAyMSBJZ2FsaWEgUy5MLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqICBUaGlzIGxp
YnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisg
KiAgbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1
YmxpYworICogIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5k
YXRpb247IGVpdGhlcgorICogIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIg
b3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiAgVGhpcyBsaWJyYXJ5IGlzIGRpc3Ry
aWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiAgYnV0IFdJVEhP
VVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAq
ICBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBT
ZWUgdGhlIEdOVQorICogIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRl
dGFpbHMuCisgKgorICogIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdO
VSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKKyAqICBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJy
YXJ5OyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCisgKiAgRm91bmRhdGlvbiwg
SW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAgMDIxMTAt
MTMwMSAgVVNBCisgKgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJUZW1w
b3JhbE5vdy5oIgorCisjaW5jbHVkZSAiSlNHbG9iYWxPYmplY3QuaCIKKyNpbmNsdWRlICJPYmpl
Y3RQcm90b3R5cGUuaCIKKworbmFtZXNwYWNlIEpTQyB7CisKK1NUQVRJQ19BU1NFUlRfSVNfVFJJ
VklBTExZX0RFU1RSVUNUSUJMRShUZW1wb3JhbE5vdyk7CisKK2NvbnN0IENsYXNzSW5mbyBUZW1w
b3JhbE5vdzo6c19pbmZvID0geyAiVGVtcG9yYWwubm93IiwgJkJhc2U6OnNfaW5mbywgbnVsbHB0
ciwgbnVsbHB0ciwgQ1JFQVRFX01FVEhPRF9UQUJMRShUZW1wb3JhbE5vdykgfTsKKworVGVtcG9y
YWxOb3c6OlRlbXBvcmFsTm93KFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCisgICAgOiBC
YXNlKHZtLCBzdHJ1Y3R1cmUpCit7Cit9CisKK1RlbXBvcmFsTm93KiBUZW1wb3JhbE5vdzo6Y3Jl
YXRlKFZNJiB2bSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCit7CisgICAgVGVtcG9yYWxOb3cqIG9i
amVjdCA9IG5ldyAoTm90TnVsbCwgYWxsb2NhdGVDZWxsPFRlbXBvcmFsTm93Pih2bS5oZWFwKSkg
VGVtcG9yYWxOb3codm0sIHN0cnVjdHVyZSk7CisgICAgb2JqZWN0LT5maW5pc2hDcmVhdGlvbih2
bSk7CisgICAgcmV0dXJuIG9iamVjdDsKK30KKworU3RydWN0dXJlKiBUZW1wb3JhbE5vdzo6Y3Jl
YXRlU3RydWN0dXJlKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKK3sKKyAg
ICByZXR1cm4gU3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgZ2xvYmFsT2JqZWN0
LT5vYmplY3RQcm90b3R5cGUoKSwgVHlwZUluZm8oT2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3Mp
LCBpbmZvKCkpOworfQorCit2b2lkIFRlbXBvcmFsTm93OjpmaW5pc2hDcmVhdGlvbihWTSYgdm0p
Cit7CisgICAgQmFzZTo6ZmluaXNoQ3JlYXRpb24odm0pOworICAgIEFTU0VSVChpbmhlcml0cyh2
bSwgaW5mbygpKSk7CisgICAgSlNDX1RPX1NUUklOR19UQUdfV0lUSE9VVF9UUkFOU0lUSU9OKCk7
Cit9CisKK30gLy8gbmFtZXNwYWNlIEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvVGVtcG9yYWxOb3cuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1RlbXBvcmFsTm93LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTUxZjY2ODEyOTdiMzI4ZmEwZjk5YTgwM2IyMjVl
YWYwOWI0Mzk4NQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1RlbXBvcmFsTm93LmgKQEAgLTAsMCArMSw0NyBAQAorLyoKKyAqICBDb3B5cmlnaHQgKEMp
IDIwMjEgSWdhbGlhLCBTLkwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogIFRoaXMgbGli
cmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAq
ICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVi
bGljCisgKiAgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRh
dGlvbjsgZWl0aGVyCisgKiAgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBv
cHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqICBUaGlzIGxpYnJhcnkgaXMgZGlzdHJp
YnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqICBidXQgV0lUSE9V
VCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICog
IE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNl
ZSB0aGUgR05VCisgKiAgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0
YWlscy4KKyAqCisgKiAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05V
IExlc3NlciBHZW5lcmFsIFB1YmxpYworICogIExpY2Vuc2UgYWxvbmcgd2l0aCB0aGlzIGxpYnJh
cnk7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKKyAqICBGb3VuZGF0aW9uLCBJ
bmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BICAwMjExMC0x
MzAxICBVU0EKKyAqCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlICJKU09iamVjdC5o
IgorCituYW1lc3BhY2UgSlNDIHsKKworY2xhc3MgVGVtcG9yYWxOb3cgZmluYWwgOiBwdWJsaWMg
SlNOb25GaW5hbE9iamVjdCB7CitwdWJsaWM6CisgICAgdXNpbmcgQmFzZSA9IEpTTm9uRmluYWxP
YmplY3Q7CisKKyAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBDZWxsVHlwZSwgU3Vic3BhY2VBY2Nlc3M+
CisgICAgc3RhdGljIElzb1N1YnNwYWNlKiBzdWJzcGFjZUZvcihWTSYgdm0pCisgICAgeworICAg
ICAgICBTVEFUSUNfQVNTRVJUX0lTT19TVUJTUEFDRV9TSEFSQUJMRShUZW1wb3JhbE5vdywgQmFz
ZSk7CisgICAgICAgIHJldHVybiAmdm0ucGxhaW5PYmplY3RTcGFjZTsKKyAgICB9CisKKyAgICBz
dGF0aWMgVGVtcG9yYWxOb3cqIGNyZWF0ZShWTSYsIFN0cnVjdHVyZSopOworICAgIHN0YXRpYyBT
dHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShWTSYsIEpTR2xvYmFsT2JqZWN0Kik7CisKKyAgICBE
RUNMQVJFX0lORk87CisKK3ByaXZhdGU6CisgICAgVGVtcG9yYWxOb3coVk0mLCBTdHJ1Y3R1cmUq
KTsKKyAgICB2b2lkIGZpbmlzaENyZWF0aW9uKFZNJik7Cit9OworCit9IC8vIG5hbWVzcGFjZSBK
U0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsT2Jq
ZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1RlbXBvcmFsT2JqZWN0LmNw
cApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi4xYTZlNmRlZDExZjk2MTA4YWNlOTRjYWU1NmIzZTcwNzMzYzkyYjNlCi0t
LSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxP
YmplY3QuY3BwCkBAIC0wLDAgKzEsNzYgQEAKKy8qCisgKiAgQ29weXJpZ2h0IChDKSAyMDIxIEln
YWxpYSBTLkwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogIFRoaXMgbGlicmFyeSBpcyBm
cmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAqICBtb2RpZnkg
aXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCisgKiAg
TGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0
aGVyCisgKiAgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFu
eSBsYXRlciB2ZXJzaW9uLgorICoKKyAqICBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4g
dGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqICBidXQgV0lUSE9VVCBBTlkgV0FS
UkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogIE1FUkNIQU5U
QUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05V
CisgKiAgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAq
CisgKiAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBH
ZW5lcmFsIFB1YmxpYworICogIExpY2Vuc2UgYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IGlmIG5v
dCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKKyAqICBGb3VuZGF0aW9uLCBJbmMuLCA1MSBG
cmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BICAwMjExMC0xMzAxICBVU0EK
KyAqCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIlRlbXBvcmFsT2JqZWN0
LmgiCisKKyNpbmNsdWRlICJKU0dsb2JhbE9iamVjdC5oIgorI2luY2x1ZGUgIk9iamVjdFByb3Rv
dHlwZS5oIgorI2luY2x1ZGUgIlRlbXBvcmFsTm93LmgiCisKK25hbWVzcGFjZSBKU0MgeworCitT
VEFUSUNfQVNTRVJUX0lTX1RSSVZJQUxMWV9ERVNUUlVDVElCTEUoVGVtcG9yYWxPYmplY3QpOwor
CitzdGF0aWMgSlNWYWx1ZSBjcmVhdGVOb3dPYmplY3QoVk0mIHZtLCBKU09iamVjdCogb2JqZWN0
KQoreworICAgIFRlbXBvcmFsT2JqZWN0KiB0ZW1wb3JhbE9iamVjdCA9IGpzQ2FzdDxUZW1wb3Jh
bE9iamVjdCo+KG9iamVjdCk7CisgICAgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCA9IHRl
bXBvcmFsT2JqZWN0LT5nbG9iYWxPYmplY3Qodm0pOworICAgIHJldHVybiBUZW1wb3JhbE5vdzo6
Y3JlYXRlKHZtLCBUZW1wb3JhbE5vdzo6Y3JlYXRlU3RydWN0dXJlKHZtLCBnbG9iYWxPYmplY3Qp
KTsKK30KKworfSAvLyBuYW1lc3BhY2UgSlNDCisKKyNpbmNsdWRlICJUZW1wb3JhbE9iamVjdC5s
dXQuaCIKKworbmFtZXNwYWNlIEpTQyB7CisKKy8qIFNvdXJjZSBmb3IgVGVtcG9yYWxPYmplY3Qu
bHV0LmgKK0BiZWdpbiB0ZW1wb3JhbE9iamVjdFRhYmxlCisgIG5vdyAgICAgICAgICAgIGNyZWF0
ZU5vd09iamVjdCAgICAgICAgICAgICAgICAgRG9udEVudW18UHJvcGVydHlDYWxsYmFjaworQGVu
ZAorKi8KKworY29uc3QgQ2xhc3NJbmZvIFRlbXBvcmFsT2JqZWN0OjpzX2luZm8gPSB7ICJUZW1w
b3JhbCIsICZCYXNlOjpzX2luZm8sICZ0ZW1wb3JhbE9iamVjdFRhYmxlLCBudWxscHRyLCBDUkVB
VEVfTUVUSE9EX1RBQkxFKFRlbXBvcmFsT2JqZWN0KSB9OworCitUZW1wb3JhbE9iamVjdDo6VGVt
cG9yYWxPYmplY3QoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKKyAgICA6IEJhc2Uodm0s
IHN0cnVjdHVyZSkKK3sKK30KKworVGVtcG9yYWxPYmplY3QqIFRlbXBvcmFsT2JqZWN0OjpjcmVh
dGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSkKK3sKKyAgICBUZW1wb3JhbE9iamVjdCog
b2JqZWN0ID0gbmV3IChOb3ROdWxsLCBhbGxvY2F0ZUNlbGw8VGVtcG9yYWxPYmplY3Q+KHZtLmhl
YXApKSBUZW1wb3JhbE9iamVjdCh2bSwgc3RydWN0dXJlKTsKKyAgICBvYmplY3QtPmZpbmlzaENy
ZWF0aW9uKHZtKTsKKyAgICByZXR1cm4gb2JqZWN0OworfQorCitTdHJ1Y3R1cmUqIFRlbXBvcmFs
T2JqZWN0OjpjcmVhdGVTdHJ1Y3R1cmUoVk0mIHZtLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2Jq
ZWN0KQoreworICAgIHJldHVybiBTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBn
bG9iYWxPYmplY3QtPm9iamVjdFByb3RvdHlwZSgpLCBUeXBlSW5mbyhPYmplY3RUeXBlLCBTdHJ1
Y3R1cmVGbGFncyksIGluZm8oKSk7Cit9CisKK3ZvaWQgVGVtcG9yYWxPYmplY3Q6OmZpbmlzaENy
ZWF0aW9uKFZNJiB2bSkKK3sKKyAgICBCYXNlOjpmaW5pc2hDcmVhdGlvbih2bSk7CisgICAgQVNT
RVJUKGluaGVyaXRzKHZtLCBpbmZvKCkpKTsKKyAgICBKU0NfVE9fU1RSSU5HX1RBR19XSVRIT1VU
X1RSQU5TSVRJT04oKTsKK30KKworfSAvLyBuYW1lc3BhY2UgSlNDCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9UZW1wb3JhbE9iamVjdC5oIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxPYmplY3QuaApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xZWU5OTk0YzJi
OGMwNWU0NmQxNjEwNmE2NmYwMmI5NzU4YjhiMjgzCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVGVtcG9yYWxPYmplY3QuaApAQCAtMCwwICsxLDQ4IEBA
CisvKgorICogIENvcHlyaWdodCAoQykgMjAyMSBJZ2FsaWEsIFMuTC4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiAgVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVk
aXN0cmlidXRlIGl0IGFuZC9vcgorICogIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhl
IEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKKyAqICBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0
aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAqICB2ZXJzaW9uIDIgb2YgdGhl
IExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICog
IFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUg
dXNlZnVsLAorICogIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBp
bXBsaWVkIHdhcnJhbnR5IG9mCisgKiAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAqICBMZXNzZXIgR2VuZXJhbCBQdWJs
aWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqICBZb3Ugc2hvdWxkIGhhdmUgcmVj
ZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCisgKiAgTGljZW5z
ZSBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0
d2FyZQorICogIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxv
b3IsIEJvc3RvbiwgTUEgIDAyMTEwLTEzMDEgIFVTQQorICoKKyAqLworCisjcHJhZ21hIG9uY2UK
KworI2luY2x1ZGUgIkpTT2JqZWN0LmgiCisKK25hbWVzcGFjZSBKU0MgeworCitjbGFzcyBUZW1w
b3JhbE9iamVjdCBmaW5hbCA6IHB1YmxpYyBKU05vbkZpbmFsT2JqZWN0IHsKK3B1YmxpYzoKKyAg
ICB1c2luZyBCYXNlID0gSlNOb25GaW5hbE9iamVjdDsKKyAgICBzdGF0aWMgY29uc3RleHByIHVu
c2lnbmVkIFN0cnVjdHVyZUZsYWdzID0gQmFzZTo6U3RydWN0dXJlRmxhZ3MgfCBIYXNTdGF0aWNQ
cm9wZXJ0eVRhYmxlOworCisgICAgdGVtcGxhdGU8dHlwZW5hbWUgQ2VsbFR5cGUsIFN1YnNwYWNl
QWNjZXNzPgorICAgIHN0YXRpYyBJc29TdWJzcGFjZSogc3Vic3BhY2VGb3IoVk0mIHZtKQorICAg
IHsKKyAgICAgICAgU1RBVElDX0FTU0VSVF9JU09fU1VCU1BBQ0VfU0hBUkFCTEUoVGVtcG9yYWxP
YmplY3QsIEJhc2UpOworICAgICAgICByZXR1cm4gJnZtLnBsYWluT2JqZWN0U3BhY2U7CisgICAg
fQorCisgICAgc3RhdGljIFRlbXBvcmFsT2JqZWN0KiBjcmVhdGUoVk0mLCBTdHJ1Y3R1cmUqKTsK
KyAgICBzdGF0aWMgU3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoVk0mLCBKU0dsb2JhbE9iamVj
dCopOworCisgICAgREVDTEFSRV9JTkZPOworCitwcml2YXRlOgorICAgIFRlbXBvcmFsT2JqZWN0
KFZNJiwgU3RydWN0dXJlKik7CisgICAgdm9pZCBmaW5pc2hDcmVhdGlvbihWTSYpOworfTsKKwor
fSAvLyBuYW1lc3BhY2UgSlNDCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>