<?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>211520</bug_id>
          
          <creation_ts>2020-05-06 11:02:47 -0700</creation_ts>
          <short_desc>ResourceLoadStatistics data summary call should create a web process pool if one doesn&apos;t exist</short_desc>
          <delta_ts>2020-05-06 13:59:47 -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>WebKit Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Kate Cheney">katherine_cheney</reporter>
          <assigned_to name="Kate Cheney">katherine_cheney</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>cdumez</cc>
    
    <cc>wilander</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1649704</commentid>
    <comment_count>0</comment_count>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-05-06 11:02:47 -0700</bug_when>
    <thetext>This call should be available even if a web process pool doesn&apos;t already exist.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1649705</commentid>
    <comment_count>1</comment_count>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-05-06 11:03:01 -0700</bug_when>
    <thetext>&lt;rdar://problem/59869619&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1649708</commentid>
    <comment_count>2</comment_count>
      <attachid>398639</attachid>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-05-06 11:15:44 -0700</bug_when>
    <thetext>Created attachment 398639
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1649723</commentid>
    <comment_count>3</comment_count>
      <attachid>398639</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-05-06 11:42:13 -0700</bug_when>
    <thetext>Comment on attachment 398639
Patch

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

&gt; Source/WebKit/UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h:82
&gt; +- (void)_hasProcessPool:(void (^)(BOOL))completionHandler WK_API_AVAILABLE(macos(WK_MAC_TBA), ios(WK_IOS_TBA));

This does not need to be asynchronous or take a completion handler in.

&gt; Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp:1543
&gt; +    for (auto&amp; processPool : ensureProcessPools()) {

ensureProcessPools() does NOT create a persistent process pool. As soon as this loop is over, the process pool that was created should get destroyed (unless some other object is ref&apos;ing it).

As a result, I am perplexed by your new hasProcessPool getter and testing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1649734</commentid>
    <comment_count>4</comment_count>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-05-06 12:01:02 -0700</bug_when>
    <thetext>(In reply to Chris Dumez from comment #3)
&gt; Comment on attachment 398639 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=398639&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h:82
&gt; &gt; +- (void)_hasProcessPool:(void (^)(BOOL))completionHandler WK_API_AVAILABLE(macos(WK_MAC_TBA), ios(WK_IOS_TBA));
&gt; 
&gt; This does not need to be asynchronous or take a completion handler in.
&gt; 
&gt; &gt; Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp:1543
&gt; &gt; +    for (auto&amp; processPool : ensureProcessPools()) {
&gt; 
&gt; ensureProcessPools() does NOT create a persistent process pool. As soon as
&gt; this loop is over, the process pool that was created should get destroyed
&gt; (unless some other object is ref&apos;ing it).
&gt; 
&gt; As a result, I am perplexed by your new hasProcessPool getter and testing.

I am only using the getter to confirm that the test is setup correctly before calling the API. It should have no existing process pools to start with.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1649737</commentid>
    <comment_count>5</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-05-06 12:09:20 -0700</bug_when>
    <thetext>(In reply to katherine_cheney from comment #4)
&gt; (In reply to Chris Dumez from comment #3)
&gt; &gt; Comment on attachment 398639 [details]
&gt; &gt; Patch
&gt; &gt; 
&gt; &gt; View in context:
&gt; &gt; https://bugs.webkit.org/attachment.cgi?id=398639&amp;action=review
&gt; &gt; 
&gt; &gt; &gt; Source/WebKit/UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h:82
&gt; &gt; &gt; +- (void)_hasProcessPool:(void (^)(BOOL))completionHandler WK_API_AVAILABLE(macos(WK_MAC_TBA), ios(WK_IOS_TBA));
&gt; &gt; 
&gt; &gt; This does not need to be asynchronous or take a completion handler in.
&gt; &gt; 
&gt; &gt; &gt; Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp:1543
&gt; &gt; &gt; +    for (auto&amp; processPool : ensureProcessPools()) {
&gt; &gt; 
&gt; &gt; ensureProcessPools() does NOT create a persistent process pool. As soon as
&gt; &gt; this loop is over, the process pool that was created should get destroyed
&gt; &gt; (unless some other object is ref&apos;ing it).
&gt; &gt; 
&gt; &gt; As a result, I am perplexed by your new hasProcessPool getter and testing.
&gt; 
&gt; I am only using the getter to confirm that the test is setup correctly
&gt; before calling the API. It should have no existing process pools to start
&gt; with.

I see. Then I think it may be overkill to add a new SPI just to check that your API test did not create a process pool.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1649743</commentid>
    <comment_count>6</comment_count>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-05-06 12:24:27 -0700</bug_when>
    <thetext>(In reply to Chris Dumez from comment #5)
&gt; (In reply to katherine_cheney from comment #4)
&gt; &gt; (In reply to Chris Dumez from comment #3)
&gt; &gt; &gt; Comment on attachment 398639 [details]
&gt; &gt; &gt; Patch
&gt; &gt; &gt; 
&gt; &gt; &gt; View in context:
&gt; &gt; &gt; https://bugs.webkit.org/attachment.cgi?id=398639&amp;action=review
&gt; &gt; &gt; 
&gt; &gt; &gt; &gt; Source/WebKit/UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h:82
&gt; &gt; &gt; &gt; +- (void)_hasProcessPool:(void (^)(BOOL))completionHandler WK_API_AVAILABLE(macos(WK_MAC_TBA), ios(WK_IOS_TBA));
&gt; &gt; &gt; 
&gt; &gt; &gt; This does not need to be asynchronous or take a completion handler in.
&gt; &gt; &gt; 
&gt; &gt; &gt; &gt; Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp:1543
&gt; &gt; &gt; &gt; +    for (auto&amp; processPool : ensureProcessPools()) {
&gt; &gt; &gt; 
&gt; &gt; &gt; ensureProcessPools() does NOT create a persistent process pool. As soon as
&gt; &gt; &gt; this loop is over, the process pool that was created should get destroyed
&gt; &gt; &gt; (unless some other object is ref&apos;ing it).
&gt; &gt; &gt; 
&gt; &gt; &gt; As a result, I am perplexed by your new hasProcessPool getter and testing.
&gt; &gt; 
&gt; &gt; I am only using the getter to confirm that the test is setup correctly
&gt; &gt; before calling the API. It should have no existing process pools to start
&gt; &gt; with.
&gt; 
&gt; I see. Then I think it may be overkill to add a new SPI just to check that
&gt; your API test did not create a process pool.

Got it. I was just trying to be thorough :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1649744</commentid>
    <comment_count>7</comment_count>
      <attachid>398645</attachid>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-05-06 12:24:48 -0700</bug_when>
    <thetext>Created attachment 398645
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1649746</commentid>
    <comment_count>8</comment_count>
      <attachid>398645</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-05-06 12:27:38 -0700</bug_when>
    <thetext>Comment on attachment 398645
Patch

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

Ok if bots are happy.

&gt; Source/WebKit/UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h:-82
&gt; -

Unnecessary change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1649755</commentid>
    <comment_count>9</comment_count>
      <attachid>398647</attachid>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-05-06 12:52:49 -0700</bug_when>
    <thetext>Created attachment 398647
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1649757</commentid>
    <comment_count>10</comment_count>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-05-06 12:53:22 -0700</bug_when>
    <thetext>(In reply to Chris Dumez from comment #8)
&gt; Comment on attachment 398645 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=398645&amp;action=review
&gt; 
&gt; Ok if bots are happy.
&gt; 
&gt; &gt; Source/WebKit/UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h:-82
&gt; &gt; -
&gt; 
&gt; Unnecessary change.

Thanks! Waiting for bots before I cq+</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1649782</commentid>
    <comment_count>11</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-05-06 13:59:46 -0700</bug_when>
    <thetext>Committed r261250: &lt;https://trac.webkit.org/changeset/261250&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 398647.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>398639</attachid>
            <date>2020-05-06 11:15:44 -0700</date>
            <delta_ts>2020-05-06 12:24:47 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-211520-20200506111544.patch</filename>
            <type>text/plain</type>
            <size>19827</size>
            <attacher name="Kate Cheney">katherine_cheney</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYxMTc1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGI4NjlhMDJiMTFkMzhhMWUz
MjdmMzYyODdmZGVkN2I2NWE3M2ZhNzEuLmMwMTYyMDgxMzJkMTE2ZmRmNjY5MjhiOTFkZDdkMDJm
MDMwZGE0MzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMjAtMDUtMDYgIEthdGUgQ2hl
bmV5ICA8a2F0aGVyaW5lX2NoZW5leUBhcHBsZS5jb20+CisKKyAgICAgICAgUmVzb3VyY2VMb2Fk
U3RhdGlzdGljcyBkYXRhIHN1bW1hcnkgY2FsbCBzaG91bGQgY3JlYXRlIGEgd2ViIHByb2Nlc3Mg
cG9vbCBpZiBvbmUgZG9lc24ndCBleGlzdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjExNTIwCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81OTg2OTYx
OT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBFbnN1
cmVzIHRoYXQgYSBwcm9jZXNzIHBvb2wgYW5kIG5ldHdvcmsgcHJvY2VzcyBleGlzdCB3aGVuIHJl
cXVlc3RpbmcKKyAgICAgICAgcmVzb3VyY2UgbG9hZCBzdGF0aXN0aWNzIGRhdGEuIEFkZGVkIHRl
c3RpbmcgU1BJIHRvIGNvbmZpcm0gbm8KKyAgICAgICAgcHJvY2VzcyBwb29sIGV4aXN0cyBiZWZv
cmUgcmVxdWVzdGluZyB0aGUgZGF0YS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2Ev
V0tXZWJzaXRlRGF0YVN0b3JlLm1tOgorICAgICAgICAoLVtXS1dlYnNpdGVEYXRhU3RvcmUgX2hh
c1Byb2Nlc3NQb29sOl0pOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJzaXRl
RGF0YVN0b3JlUHJpdmF0ZS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJz
aXRlRGF0YVN0b3JlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6Z2V0
UmVzb3VyY2VMb2FkU3RhdGlzdGljc0RhdGFTdW1tYXJ5KToKKyAgICAgICAgKFdlYktpdDo6V2Vi
c2l0ZURhdGFTdG9yZTo6aGFzUHJvY2Vzc1Bvb2wpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJz
aXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmg6CisKIDIwMjAtMDUtMDUgIFlvdWVubiBGYWJsZXQg
IDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIFJlbW92ZSBMZWdhY3lTY2hlbWVSZWdpc3Ry
eTo6Y2FuU2VydmljZVdvcmtlcnNIYW5kbGVVUkxTY2hlbWUKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYnNpdGVEYXRhU3RvcmUubW0gYi9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJzaXRlRGF0YVN0b3JlLm1tCmluZGV4IDU5
MTQyOGY3ZjU3OWU3NmZmMDFiYzk0YjgzZjU5OTRhZjhlNDhlMDAuLjEyNzdjODg1YzMyMjRiZDhh
M2EwYjU2ZjczZGFlZmNjNmFiZDJjZmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL0FQSS9Db2NvYS9XS1dlYnNpdGVEYXRhU3RvcmUubW0KKysrIGIvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvQVBJL0NvY29hL1dLV2Vic2l0ZURhdGFTdG9yZS5tbQpAQCAtNTIyLDYgKzUyMiwx
NyBAQCAtICh2b2lkKV9jbGVhclJlc291cmNlTG9hZFN0YXRpc3RpY3M6KHZvaWQgKF4pKHZvaWQp
KWNvbXBsZXRpb25IYW5kbGVyCiAjZW5kaWYKIH0KIAorLSAodm9pZClfaGFzUHJvY2Vzc1Bvb2w6
KHZvaWQgKF4pKEJPT0wpKWNvbXBsZXRpb25IYW5kbGVyCit7CisjaWYgRU5BQkxFKFJFU09VUkNF
X0xPQURfU1RBVElTVElDUykKKyAgICBfd2Vic2l0ZURhdGFTdG9yZS0+aGFzUHJvY2Vzc1Bvb2wo
W2NvbXBsZXRpb25IYW5kbGVyID0gbWFrZUJsb2NrUHRyKGNvbXBsZXRpb25IYW5kbGVyKV0oQk9P
TCBoYXNQcm9jZXNzUG9vbCkgeworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihoYXNQcm9jZXNz
UG9vbCk7CisgICAgfSk7CisjZWxzZQorICAgIGNvbXBsZXRpb25IYW5kbGVyKGZhbHNlKTsKKyNl
bmRpZgorfQorCiAtICh2b2lkKV9nZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGF0YVN1bW1hcnk6
KHZvaWQgKF4pKE5TQXJyYXk8X1dLUmVzb3VyY2VMb2FkU3RhdGlzdGljc1RoaXJkUGFydHkgKj4g
KikpY29tcGxldGlvbkhhbmRsZXIKIHsKICNpZiBFTkFCTEUoUkVTT1VSQ0VfTE9BRF9TVEFUSVNU
SUNTKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2Vi
c2l0ZURhdGFTdG9yZVByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2Nv
YS9XS1dlYnNpdGVEYXRhU3RvcmVQcml2YXRlLmgKaW5kZXggMWVkZDcwMzFhODVmMzQ1MGUzNGFi
OWIzNzQzNTlhMDBhNWQwZjg0Zi4uMjhhMWY4YjNkM2NjODMxYjRlZTRlYzc5OWJiZTJjOThlOGVk
MzY3MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2Vi
c2l0ZURhdGFTdG9yZVByaXZhdGUuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkv
Q29jb2EvV0tXZWJzaXRlRGF0YVN0b3JlUHJpdmF0ZS5oCkBAIC03OSw3ICs3OSw3IEBAIHR5cGVk
ZWYgTlNfT1BUSU9OUyhOU1VJbnRlZ2VyLCBfV0tXZWJzaXRlRGF0YVN0b3JlRmV0Y2hPcHRpb25z
KSB7CiAtICh2b2lkKV9zdGF0aXN0aWNzRGF0YWJhc2VIYXNBbGxUYWJsZXM6KHZvaWQgKF4pKEJP
T0wpKWNvbXBsZXRpb25IYW5kbGVyIFdLX0FQSV9BVkFJTEFCTEUobWFjb3MoV0tfTUFDX1RCQSks
IGlvcyhXS19JT1NfVEJBKSk7CiAtICh2b2lkKV9wcm9jZXNzU3RhdGlzdGljc0FuZERhdGFSZWNv
cmRzOih2b2lkICheKSh2b2lkKSljb21wbGV0aW9uSGFuZGxlciBXS19BUElfQVZBSUxBQkxFKG1h
Y29zKDEwLjE1KSwgaW9zKDEzLjApKTsKIC0gKHZvaWQpX2FwcEJvdW5kRG9tYWluczoodm9pZCAo
XikoTlNBcnJheTxOU1N0cmluZyAqPiAqKSljb21wbGV0aW9uSGFuZGxlciBXS19BUElfQVZBSUxB
QkxFKG1hY29zKFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOwotCistICh2b2lkKV9oYXNQ
cm9jZXNzUG9vbDoodm9pZCAoXikoQk9PTCkpY29tcGxldGlvbkhhbmRsZXIgV0tfQVBJX0FWQUlM
QUJMRShtYWNvcyhXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKIC0gKHZvaWQpX3JlbmFt
ZU9yaWdpbjooTlNVUkwgKilvbGROYW1lIHRvOihOU1VSTCAqKW5ld05hbWUgZm9yRGF0YU9mVHlw
ZXM6KE5TU2V0PE5TU3RyaW5nICo+ICopZGF0YVR5cGVzIGNvbXBsZXRpb25IYW5kbGVyOih2b2lk
ICheKSh2b2lkKSljb21wbGV0aW9uSGFuZGxlcjsKIAogQHByb3BlcnR5IChudWxsYWJsZSwgbm9u
YXRvbWljLCB3ZWFrKSBpZCA8X1dLV2Vic2l0ZURhdGFTdG9yZURlbGVnYXRlPiBfZGVsZWdhdGUg
V0tfQVBJX0FWQUlMQUJMRShtYWNvcygxMC4xNSksIGlvcygxMy4wKSk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmNwcCBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuY3Bw
CmluZGV4IGUzNjM3NmM1ZWQyZjI5N2FkYTQ0MTUwYWNiNTAzOTcwZWExYzJkYzguLjllMWQ0NTZk
OTMzMGM0ZGZhZmIzNTM2YjAxOGU5ODM2NmNjNmYwZWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuY3BwCkBAIC0x
NTQwLDEyICsxNTQwLDEwIEBAIHZvaWQgV2Vic2l0ZURhdGFTdG9yZTo6Z2V0UmVzb3VyY2VMb2Fk
U3RhdGlzdGljc0RhdGFTdW1tYXJ5KENvbXBsZXRpb25IYW5kbGVyPHZvCiAKICAgICBSZWZQdHI8
Q2FsbGJhY2tBZ2dyZWdhdG9yPiBjYWxsYmFja0FnZ3JlZ2F0b3IgPSBhZG9wdFJlZihuZXcgQ2Fs
bGJhY2tBZ2dyZWdhdG9yKFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpKSk7CiAKLSAgICBmb3Ig
KGF1dG8mIHByb2Nlc3NQb29sIDogcHJvY2Vzc1Bvb2xzKCkpIHsKLSAgICAgICAgaWYgKGF1dG8q
IHByb2Nlc3MgPSBwcm9jZXNzUG9vbC0+bmV0d29ya1Byb2Nlc3MoKSkgewotICAgICAgICAgICAg
cHJvY2Vzcy0+Z2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc0RhdGFTdW1tYXJ5KG1fc2Vzc2lvbklE
LCBbY2FsbGJhY2tBZ2dyZWdhdG9yID0gY2FsbGJhY2tBZ2dyZWdhdG9yLmNvcHlSZWYoKV0oVmVj
dG9yPFdlYlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZTo6VGhpcmRQYXJ0eURhdGE+JiYgZGF0
YSkgewotICAgICAgICAgICAgICAgIGNhbGxiYWNrQWdncmVnYXRvci0+YWRkUmVzdWx0KFdURk1v
dmUoZGF0YSkpOwotICAgICAgICAgICAgfSk7Ci0gICAgICAgIH0KKyAgICBmb3IgKGF1dG8mIHBy
b2Nlc3NQb29sIDogZW5zdXJlUHJvY2Vzc1Bvb2xzKCkpIHsKKyAgICAgICAgcHJvY2Vzc1Bvb2wt
PmVuc3VyZU5ldHdvcmtQcm9jZXNzKHRoaXMpLmdldFJlc291cmNlTG9hZFN0YXRpc3RpY3NEYXRh
U3VtbWFyeShtX3Nlc3Npb25JRCwgW2NhbGxiYWNrQWdncmVnYXRvciA9IGNhbGxiYWNrQWdncmVn
YXRvci5jb3B5UmVmKCksIHByb2Nlc3NQb29sXShWZWN0b3I8V2ViUmVzb3VyY2VMb2FkU3RhdGlz
dGljc1N0b3JlOjpUaGlyZFBhcnR5RGF0YT4mJiBkYXRhKSB7CisgICAgICAgICAgICBjYWxsYmFj
a0FnZ3JlZ2F0b3ItPmFkZFJlc3VsdChXVEZNb3ZlKGRhdGEpKTsKKyAgICAgICAgfSk7CiAgICAg
fQogfQogCkBAIC0xOTc2LDYgKzE5NzQsMTEgQEAgSGFzaFNldDxSZWZQdHI8V2ViUHJvY2Vzc1Bv
b2w+PiBXZWJzaXRlRGF0YVN0b3JlOjplbnN1cmVQcm9jZXNzUG9vbHMoKSBjb25zdAogICAgIHJl
dHVybiBwcm9jZXNzUG9vbHM7CiB9CiAKK3ZvaWQgV2Vic2l0ZURhdGFTdG9yZTo6aGFzUHJvY2Vz
c1Bvb2woQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikK
K3sKKyAgICBjb21wbGV0aW9uSGFuZGxlcighdGhpcy0+cHJvY2Vzc1Bvb2xzKCkuaXNFbXB0eSgp
KTsKK30KKwogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQogVmVjdG9yPFBsdWdpbk1v
ZHVsZUluZm8+IFdlYnNpdGVEYXRhU3RvcmU6OnBsdWdpbnMoKSBjb25zdAogewpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5o
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5o
CmluZGV4IGNkNjdlYjU4MmZkYjk1YmE5ZjIxODA0ODI0NGFlZWNiM2MzOTAzZmEuLjYzMzMyZTI3
ODBmZDA5ODU1ODY4MDZhYTRiODJhZmIzMmEwNmVmMmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmgKQEAgLTI5Niw2
ICsyOTYsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBnZXRBcHBCb3VuZERvbWFpbnMoQ29tcGxldGlv
bkhhbmRsZXI8dm9pZChjb25zdCBIYXNoU2V0PFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluPiYp
PiYmKSBjb25zdDsKICAgICB2b2lkIGVuc3VyZUFwcEJvdW5kRG9tYWlucyhDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKGNvbnN0IEhhc2hTZXQ8V2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4+Jik+JiYp
IGNvbnN0OwogICAgIHZvaWQgcmVpbml0aWFsaXplQXBwQm91bmREb21haW5zKCk7CisgICAgdm9p
ZCBoYXNQcm9jZXNzUG9vbChDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKTsKIAogcHJp
dmF0ZToKICAgICBlbnVtIGNsYXNzIEZvcmNlUmVpbml0aWFsaXphdGlvbiA6IGJvb2wgeyBObywg
WWVzIH07CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5k
ZXggZjlmZmM4YWQwMDliZThjMjcyMDdhMWIzNDllMTAwZWEzM2VmMGJhMy4uMGE1ZWVjN2RkYTgy
OTgzNzEwZTFiZGUxOGI5YWJmM2E2N2U0NDMxNSAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9n
CisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDIwLTA1LTA2ICBLYXRl
IENoZW5leSAgPGthdGhlcmluZV9jaGVuZXlAYXBwbGUuY29tPgorCisgICAgICAgIFJlc291cmNl
TG9hZFN0YXRpc3RpY3MgZGF0YSBzdW1tYXJ5IGNhbGwgc2hvdWxkIGNyZWF0ZSBhIHdlYiBwcm9j
ZXNzIHBvb2wgaWYgb25lIGRvZXNuJ3QgZXhpc3QKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMTUyMAorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTk4
Njk2MTk+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
QWRkZWQgQVBJIHRlc3QgY292ZXJhZ2UuCisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RX
ZWJLaXRBUEkueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBUZXN0V2ViS2l0
QVBJL1Rlc3RzL1dlYktpdENvY29hL1Jlc291cmNlTG9hZFN0YXRpc3RpY3MubW06CisgICAgICAg
IFJlbW92ZWQgc3RyYXkgY29tbWVudCBmcm9tIHByZXZpb3VzIHRlc3QuCisKKyAgICAgICAgKFRF
U1QpOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvYmFzaWNJVFBEYXRhYmFzZS5kYjogQWRkZWQu
CisgICAgICAgICogVGVzdFdlYktpdEFQSS9iYXNpY0lUUERhdGFiYXNlLmRiLXNobTogQWRkZWQu
CisgICAgICAgICogVGVzdFdlYktpdEFQSS9iYXNpY0lUUERhdGFiYXNlLmRiLXdhbDogQWRkZWQu
CisgICAgICAgIE5ldyBkYXRhYmFzZSByZXNvdXJjZSB3aXRoIDIgZW50cmllczogYXBwbGUuY29t
IGFuZCB3ZWJraXQub3JnLCB3aXRoCisgICAgICAgIHdlYmtpdC5vcmcgcmVnaXN0ZXJlZCBhcyBh
IHN1YmZyYW1lIG9mIGFwcGxlLmNvbQorCiAyMDIwLTA1LTA1ICBBbGV4ZXkgU2h2YXlrYSAgPHNo
dmFpa2FsZXNoQGdtYWlsLmNvbT4KIAogICAgICAgICBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5n
IGlzIG5vdCBzcGVjLXBlcmZlY3QKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVz
dFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvVG9vbHMvVGVzdFdlYktpdEFQ
SS9UZXN0V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggYTRiNWM4MTI0
NDg2OTAwNzI0MTQxOTM0ZTkzOWJlODgyNzRmZjk5Zi4uNjk3Yjc2MDdiMTVhZjI5ZDZlODQ4ZmNj
ZTNhZDFkYmE0NDQyY2QzNCAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0V2Vi
S2l0QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQ
SS9UZXN0V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTI1OSw2ICsyNTks
OSBAQAogCQk0OTA5RUUzQTJEMDk0ODBDODg5ODJENTYgLyogTWFya2FibGUuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRUM3OUYxNjhCRTQ1NEU1NzlF
NDE3QjA1IC8qIE1hcmthYmxlLmNwcCAqLzsgfTsKIAkJNDk3MUIxMTgyNDUxRjI5QTAwOTY5OTRE
IC8qIGluY29ycmVjdENyZWF0ZVRhYmxlU2NoZW1hLmRiIGluIENvcHkgUmVzb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5NzFCMTE3MjQ1MUYyNzgwMDk2OTk0RCAv
KiBpbmNvcnJlY3RDcmVhdGVUYWJsZVNjaGVtYS5kYiAqLzsgfTsKIAkJNDk3MUIxMjAyNDUzQTg4
QzAwOTY5OTREIC8qIG1pc3NpbmdUb3BGcmFtZVVuaXF1ZVJlZGlyZWN0U2FtZVNpdGVTdHJpY3RU
YWJsZVNjaGVtYS5kYiBpbiBDb3B5IFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA0OTcxQjExRjI0NTNBODdGMDA5Njk5NEQgLyogbWlzc2luZ1RvcEZyYW1lVW5p
cXVlUmVkaXJlY3RTYW1lU2l0ZVN0cmljdFRhYmxlU2NoZW1hLmRiICovOyB9OworCQk0OTcxQjEy
RjI0NjIzQTNCMDA5Njk5NEQgLyogYmFzaWNJVFBEYXRhYmFzZS5kYi1zaG0gaW4gUmVzb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5NzFCMTJEMjQ2MjNBM0IwMDk2
OTk0RCAvKiBiYXNpY0lUUERhdGFiYXNlLmRiLXNobSAqLzsgfTsKKwkJNDk3MUIxMzAyNDYyM0Ez
QzAwOTY5OTREIC8qIGJhc2ljSVRQRGF0YWJhc2UuZGItd2FsIGluIFJlc291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OTcxQjEyRTI0NjIzQTNCMDA5Njk5NEQgLyog
YmFzaWNJVFBEYXRhYmFzZS5kYi13YWwgKi87IH07CisJCTQ5NzFCMTMxMjQ2MjNBNEYwMDk2OTk0
RCAvKiBiYXNpY0lUUERhdGFiYXNlLmRiIGluIENvcHkgUmVzb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5NzFCMTJDMjQ2MjM5RDMwMDk2OTk0RCAvKiBiYXNpY0lU
UERhdGFiYXNlLmRiICovOyB9OwogCQk0OTg5N0Q2QzI0MUZFOUU0MDBFQ0YxNTMgLyogaW4tYXBw
LWJyb3dzZXItcHJpdmFjeS1sb2NhbC1maWxlLmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDlEN0ZCQTcyNDFGREREQTAwQUI2N0ZBIC8q
IGluLWFwcC1icm93c2VyLXByaXZhY3ktbG9jYWwtZmlsZS5odG1sICovOyB9OwogCQk0OUFFRUY2
RDI0MDczNTlEMDBDODdFNEMgLyogSW5BcHBCcm93c2VyUHJpdmFjeS5tbSBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5QUVFRjZCMjQwNzM1ODYwMEM4N0U0
QyAvKiBJbkFwcEJyb3dzZXJQcml2YWN5Lm1tICovOyB9OwogCQk0QkZERkZBNzEzMTQ3NzZDMDA2
MUYyNEIgLyogSGl0VGVzdFJlc3VsdE5vZGVIYW5kbGVfQnVuZGxlLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDRCRkRGRkE2MTMxNDc3NkMwMDYxRjI0
QiAvKiBIaXRUZXN0UmVzdWx0Tm9kZUhhbmRsZV9CdW5kbGUuY3BwICovOyB9OwpAQCAtMTI1Niw2
ICsxMjU5LDcgQEAKIAkJCQkyRTE0QTUyOTFEM0ZFOTZCMDAxMEYzNUIgLyogYXV0b3BsYXlpbmct
dmlkZW8td2l0aC1hdWRpby5odG1sIGluIENvcHkgUmVzb3VyY2VzICovLAogCQkJCUY0MUFCOUEw
MUVGNDY5NkIwMDgzRkEwOCAvKiBiYWNrZ3JvdW5kLWltYWdlLWxpbmstYW5kLWlucHV0Lmh0bWwg
aW4gQ29weSBSZXNvdXJjZXMgKi8sCiAJCQkJNDY0Qzc2NEQyMzBERjg1QzAwQUZCMDIwIC8qIEJh
ZFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25zLTQuc3FsaXRlMyBpbiBDb3B5IFJlc291cmNlcyAq
LywKKwkJCQk0OTcxQjEzMTI0NjIzQTRGMDA5Njk5NEQgLyogYmFzaWNJVFBEYXRhYmFzZS5kYiBp
biBDb3B5IFJlc291cmNlcyAqLywKIAkJCQk0NkZBQ0Y3NDIzRTg4NDIzMDBBOUVCQzYgLyogYmVm
b3JldW5sb2FkLXNsb3cuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLywKIAkJCQk0NkMzQUVCMzIz
RDBFNTI5MDAxQjA2ODAgLyogYmVmb3JldW5sb2FkLmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8s
CiAJCQkJMkRFNzFCMDAxRDQ5QzNFRDAwOTA0MDk0IC8qIGJsaW5raW5nLWRpdi5odG1sIGluIENv
cHkgUmVzb3VyY2VzICovLApAQCAtMTg5MSw2ICsxODk1LDkgQEAKIAkJNDZGQUNGNzMyM0U4ODNF
RTAwQTlFQkM2IC8qIGJlZm9yZXVubG9hZC1zbG93Lmh0bWwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0Lmh0bWw7
IHBhdGggPSAiYmVmb3JldW5sb2FkLXNsb3cuaHRtbCI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTQ5NzFCMTE3MjQ1MUYyNzgwMDk2OTk0RCAvKiBpbmNvcnJlY3RDcmVhdGVUYWJsZVNj
aGVtYS5kYiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IGZpbGU7IHBhdGggPSBpbmNvcnJlY3RDcmVhdGVUYWJsZVNjaGVtYS5kYjsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJNDk3MUIxMUYyNDUzQTg3RjAwOTY5OTREIC8qIG1pc3NpbmdUb3BG
cmFtZVVuaXF1ZVJlZGlyZWN0U2FtZVNpdGVTdHJpY3RUYWJsZVNjaGVtYS5kYiAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGZpbGU7IG5hbWUgPSBtaXNz
aW5nVG9wRnJhbWVVbmlxdWVSZWRpcmVjdFNhbWVTaXRlU3RyaWN0VGFibGVTY2hlbWEuZGI7IHBh
dGggPSBUZXN0cy9XZWJLaXRDb2NvYS9taXNzaW5nVG9wRnJhbWVVbmlxdWVSZWRpcmVjdFNhbWVT
aXRlU3RyaWN0VGFibGVTY2hlbWEuZGI7IHNvdXJjZVRyZWUgPSBTT1VSQ0VfUk9PVDsgfTsKKwkJ
NDk3MUIxMkMyNDYyMzlEMzAwOTY5OTREIC8qIGJhc2ljSVRQRGF0YWJhc2UuZGIgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBmaWxlOyBwYXRoID0gYmFz
aWNJVFBEYXRhYmFzZS5kYjsgc291cmNlVHJlZSA9IFNPVVJDRV9ST09UOyB9OworCQk0OTcxQjEy
RDI0NjIzQTNCMDA5Njk5NEQgLyogYmFzaWNJVFBEYXRhYmFzZS5kYi1zaG0gKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBmaWxlOyBwYXRoID0gImJhc2lj
SVRQRGF0YWJhc2UuZGItc2htIjsgc291cmNlVHJlZSA9IFNPVVJDRV9ST09UOyB9OworCQk0OTcx
QjEyRTI0NjIzQTNCMDA5Njk5NEQgLyogYmFzaWNJVFBEYXRhYmFzZS5kYi13YWwgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBmaWxlOyBwYXRoID0gImJh
c2ljSVRQRGF0YWJhc2UuZGItd2FsIjsgc291cmNlVHJlZSA9IFNPVVJDRV9ST09UOyB9OwogCQk0
OUFFRUY2ODI0MDcyNzZGMDBDODdFNEMgLyogSW5mby5wbGlzdCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQucGxp
c3QueG1sOyBwYXRoID0gSW5mby5wbGlzdDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
NDlBRUVGNkIyNDA3MzU4NjAwQzg3RTRDIC8qIEluQXBwQnJvd3NlclByaXZhY3kubW0gKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBJbkFwcEJyb3dzZXJQcml2YWN5Lm1t
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0OUQ3RkJBNzI0MUZERERBMDBBQjY3RkEg
LyogaW4tYXBwLWJyb3dzZXItcHJpdmFjeS1sb2NhbC1maWxlLmh0bWwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0Lmh0bWw7IHBhdGggPSAiaW4t
YXBwLWJyb3dzZXItcHJpdmFjeS1sb2NhbC1maWxlLmh0bWwiOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwpAQCAtNDA1Nyw2ICs0MDY0LDkgQEAKIAkJCQlDOTU5ODRGMzFFMzZCQzU1MDAyQzBE
NDUgLyogYXV0b3BsYXktbm8tYXVkaW8tY2hlY2suaHRtbCAqLywKIAkJCQlDOTlCNjc1QTFFMzk3
MUZDMDBGQzZDODAgLyogYXV0b3BsYXktd2l0aC1jb250cm9scy5odG1sICovLAogCQkJCUM5OUJE
Rjg4MUU4MDk3RTMwMEM3MTcwRSAvKiBhdXRvcGxheS16ZXJvLXZvbHVtZS1jaGVjay5odG1sICov
LAorCQkJCTQ5NzFCMTJDMjQ2MjM5RDMwMDk2OTk0RCAvKiBiYXNpY0lUUERhdGFiYXNlLmRiICov
LAorCQkJCTQ5NzFCMTJEMjQ2MjNBM0IwMDk2OTk0RCAvKiBiYXNpY0lUUERhdGFiYXNlLmRiLXNo
bSAqLywKKwkJCQk0OTcxQjEyRTI0NjIzQTNCMDA5Njk5NEQgLyogYmFzaWNJVFBEYXRhYmFzZS5k
Yi13YWwgKi8sCiAJCQkJNDZGQUNGNzMyM0U4ODNFRTAwQTlFQkM2IC8qIGJlZm9yZXVubG9hZC1z
bG93Lmh0bWwgKi8sCiAJCQkJNDZDM0FFQjIyM0QwRTUwRjAwMUIwNjgwIC8qIGJlZm9yZXVubG9h
ZC5odG1sICovLAogCQkJCTdDNDg2QkEwMUFBMTI1NEIwMDNGNkY5QiAvKiBidW5kbGUtZmlsZS5o
dG1sICovLApAQCAtNDU4NCw2ICs0NTk0LDggQEAKIAkJCWlzYSA9IFBCWFJlc291cmNlc0J1aWxk
UGhhc2U7CiAJCQlidWlsZEFjdGlvbk1hc2sgPSAyMTQ3NDgzNjQ3OwogCQkJZmlsZXMgPSAoCisJ
CQkJNDk3MUIxMkYyNDYyM0EzQjAwOTY5OTREIC8qIGJhc2ljSVRQRGF0YWJhc2UuZGItc2htIGlu
IFJlc291cmNlcyAqLywKKwkJCQk0OTcxQjEzMDI0NjIzQTNDMDA5Njk5NEQgLyogYmFzaWNJVFBE
YXRhYmFzZS5kYi13YWwgaW4gUmVzb3VyY2VzICovLAogCQkJKTsKIAkJCXJ1bk9ubHlGb3JEZXBs
b3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOwogCQl9OwpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdl
YktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9SZXNvdXJjZUxvYWRTdGF0aXN0aWNzLm1tIGIvVG9v
bHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9SZXNvdXJjZUxvYWRTdGF0aXN0aWNz
Lm1tCmluZGV4IDNkYjgxODAyMjVmZmIxNGJkNmJjYzBiNWU2Y2Y2OGYwODdlNTM1NmQuLmUxMmMz
YmMwZTEyZDgzNWYxNGZlYWJlYWQwNjQ5YWNjODZhMjk3NzggMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rl
c3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvUmVzb3VyY2VMb2FkU3RhdGlzdGljcy5tbQor
KysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1Jlc291cmNlTG9hZFN0
YXRpc3RpY3MubW0KQEAgLTE0NzcsNyArMTQ3Nyw2IEBAIFRFU1QoUmVzb3VyY2VMb2FkU3RhdGlz
dGljcywgTWlncmF0ZURhdGFGcm9tSW5jb3JyZWN0Q3JlYXRlVGFibGVTY2hlbWEpCiAgICAgICAg
IEVYUEVDVF9FUShzdGF0aWNfY2FzdDxpbnQ+KFt0aGlyZFBhcnR5RGF0YSBjb3VudF0pLCAxKTsK
ICAgICAgICAgTlNFbnVtZXJhdG9yICp0aGlyZFBhcnR5RG9tYWlucyA9IFt0aGlyZFBhcnR5RGF0
YSBvYmplY3RFbnVtZXJhdG9yXTsKIAotICAgICAgICAvLyBldmlsMwogICAgICAgICBfV0tSZXNv
dXJjZUxvYWRTdGF0aXN0aWNzVGhpcmRQYXJ0eSAqdGhpcmRQYXJ0eSA9IFt0aGlyZFBhcnR5RG9t
YWlucyBuZXh0T2JqZWN0XTsKICAgICAgICAgRVhQRUNUX1dLX1NUUkVRKHRoaXJkUGFydHkudGhp
cmRQYXJ0eURvbWFpbiwgQCJ3ZWJraXQub3JnIik7CiAKQEAgLTE1NTAsNiArMTU0OSw1MyBAQCBU
RVNUKFJlc291cmNlTG9hZFN0YXRpc3RpY3MsIE1pZ3JhdGVEYXRhRnJvbU1pc3NpbmdUb3BGcmFt
ZVVuaXF1ZVJlZGlyZWN0U2FtZVNpdAogICAgIFRlc3RXZWJLaXRBUEk6OlV0aWw6OnJ1bigmZG9u
ZUZsYWcpOwogfQogCitURVNUKFJlc291cmNlTG9hZFN0YXRpc3RpY3MsIENhbkFjY2Vzc0RhdGFT
dW1tYXJ5V2l0aE5vUHJvY2Vzc1Bvb2wpCit7CisgICAgYXV0byBkZWZhdWx0RmlsZU1hbmFnZXIg
PSBbTlNGaWxlTWFuYWdlciBkZWZhdWx0TWFuYWdlcl07CisgICAgX1dLV2Vic2l0ZURhdGFTdG9y
ZUNvbmZpZ3VyYXRpb24gKmRhdGFTdG9yZUNvbmZpZ3VyYXRpb24gPSBbW19XS1dlYnNpdGVEYXRh
U3RvcmVDb25maWd1cmF0aW9uIG5ld10gYXV0b3JlbGVhc2VdOworICAgIGF1dG8gKmRhdGFTdG9y
ZSA9IFtbW1dLV2Vic2l0ZURhdGFTdG9yZSBhbGxvY10gX2luaXRXaXRoQ29uZmlndXJhdGlvbjpk
YXRhU3RvcmVDb25maWd1cmF0aW9uXSBhdXRvcmVsZWFzZV07CisgICAgTlNVUkwgKml0cFJvb3RV
UkwgPSBbW2RhdGFTdG9yZSBfY29uZmlndXJhdGlvbl0gX3Jlc291cmNlTG9hZFN0YXRpc3RpY3NE
aXJlY3RvcnldOworICAgIE5TVVJMICpmaWxlVVJMID0gW2l0cFJvb3RVUkwgVVJMQnlBcHBlbmRp
bmdQYXRoQ29tcG9uZW50OkAib2JzZXJ2YXRpb25zLmRiIl07CisgICAgW2RlZmF1bHRGaWxlTWFu
YWdlciByZW1vdmVJdGVtQXRQYXRoOml0cFJvb3RVUkwucGF0aCBlcnJvcjpuaWxdOworICAgIEVY
UEVDVF9GQUxTRShbZGVmYXVsdEZpbGVNYW5hZ2VyIGZpbGVFeGlzdHNBdFBhdGg6aXRwUm9vdFVS
TC5wYXRoXSk7CisKKyAgICAvLyBMb2FkIGEgYSBwcmUtc2VlZGVkIElUUCBkYXRhYmFzZS4KKyAg
ICBbZGVmYXVsdEZpbGVNYW5hZ2VyIGNyZWF0ZURpcmVjdG9yeUF0VVJMOml0cFJvb3RVUkwgd2l0
aEludGVybWVkaWF0ZURpcmVjdG9yaWVzOllFUyBhdHRyaWJ1dGVzOm5pbCBlcnJvcjpuaWxdOwor
ICAgIE5TVVJMICpuZXdGaWxlVVJMID0gW1tOU0J1bmRsZSBtYWluQnVuZGxlXSBVUkxGb3JSZXNv
dXJjZTpAImJhc2ljSVRQRGF0YWJhc2UiIHdpdGhFeHRlbnNpb246QCJkYiIgc3ViZGlyZWN0b3J5
OkAiVGVzdFdlYktpdEFQSS5yZXNvdXJjZXMiXTsKKyAgICBFWFBFQ1RfVFJVRShbZGVmYXVsdEZp
bGVNYW5hZ2VyIGZpbGVFeGlzdHNBdFBhdGg6bmV3RmlsZVVSTC5wYXRoXSk7CisgICAgW2RlZmF1
bHRGaWxlTWFuYWdlciBjb3B5SXRlbUF0UGF0aDpuZXdGaWxlVVJMLnBhdGggdG9QYXRoOmZpbGVV
UkwucGF0aCBlcnJvcjpuaWxdOworICAgIEVYUEVDVF9UUlVFKFtkZWZhdWx0RmlsZU1hbmFnZXIg
ZmlsZUV4aXN0c0F0UGF0aDpmaWxlVVJMLnBhdGhdKTsKKyAgICBbZGF0YVN0b3JlIF9zZXRSZXNv
dXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxlZDpZRVNdOworCisgICAgLy8gQ29uZmlybSB0aGVyZSBp
cyBubyBwcm9jZXNzIHBvb2wuCisgICAgc3RhdGljIGJvb2wgZG9uZUZsYWcgPSBmYWxzZTsKKyAg
ICBbZGF0YVN0b3JlIF9oYXNQcm9jZXNzUG9vbDpeKEJPT0wgaGFzUHJvY2Vzc1Bvb2wpIHsKKyAg
ICAgICAgRVhQRUNUX0ZBTFNFKGhhc1Byb2Nlc3NQb29sKTsKKyAgICAgICAgZG9uZUZsYWcgPSB0
cnVlOworICAgIH1dOworCisgICAgVGVzdFdlYktpdEFQSTo6VXRpbDo6cnVuKCZkb25lRmxhZyk7
CisKKyAgICBkb25lRmxhZyA9IGZhbHNlOworICAgIFtkYXRhU3RvcmUgX2dldFJlc291cmNlTG9h
ZFN0YXRpc3RpY3NEYXRhU3VtbWFyeTpedm9pZChOU0FycmF5PF9XS1Jlc291cmNlTG9hZFN0YXRp
c3RpY3NUaGlyZFBhcnR5ICo+ICp0aGlyZFBhcnR5RGF0YSkKKyAgICB7CisgICAgICAgIEVYUEVD
VF9FUShzdGF0aWNfY2FzdDxpbnQ+KFt0aGlyZFBhcnR5RGF0YSBjb3VudF0pLCAxKTsKKyAgICAg
ICAgTlNFbnVtZXJhdG9yICp0aGlyZFBhcnR5RG9tYWlucyA9IFt0aGlyZFBhcnR5RGF0YSBvYmpl
Y3RFbnVtZXJhdG9yXTsKKworICAgICAgICBfV0tSZXNvdXJjZUxvYWRTdGF0aXN0aWNzVGhpcmRQ
YXJ0eSAqdGhpcmRQYXJ0eSA9IFt0aGlyZFBhcnR5RG9tYWlucyBuZXh0T2JqZWN0XTsKKyAgICAg
ICAgRVhQRUNUX1dLX1NUUkVRKHRoaXJkUGFydHkudGhpcmRQYXJ0eURvbWFpbiwgQCJ3ZWJraXQu
b3JnIik7CisKKyAgICAgICAgTlNFbnVtZXJhdG9yICplbnVtZXJhdG9yID0gW3RoaXJkUGFydHku
dW5kZXJGaXJzdFBhcnRpZXMgb2JqZWN0RW51bWVyYXRvcl07CisgICAgICAgIF9XS1Jlc291cmNl
TG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5ICpmaXJzdFBhcnR5ID0gW2VudW1lcmF0b3IgbmV4dE9i
amVjdF07CisKKyAgICAgICAgRVhQRUNUX1dLX1NUUkVRKGZpcnN0UGFydHkuZmlyc3RQYXJ0eURv
bWFpbiwgQCJhcHBsZS5jb20iKTsKKworICAgICAgICBkb25lRmxhZyA9IHRydWU7CisgICAgfV07
CisKKyAgICBUZXN0V2ViS2l0QVBJOjpVdGlsOjpydW4oJmRvbmVGbGFnKTsKK30KKwogVEVTVChS
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzLCBTdG9yZVN1c3BlbnNpb24pCiB7CiAgICAgYXV0byAqc2hh
cmVkUHJvY2Vzc1Bvb2wgPSBbV0tQcm9jZXNzUG9vbCBfc2hhcmVkUHJvY2Vzc1Bvb2xdOwpkaWZm
IC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9iYXNpY0lUUERhdGFiYXNlLmRiIGIvVG9vbHMv
VGVzdFdlYktpdEFQSS9iYXNpY0lUUERhdGFiYXNlLmRiCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjc0ZmEyOGI3MDhm
ZGRmNGNkNzQ1NjgxMTQyNGQ3NTdjMmE0MmY1OGEKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDEw
NjQ5Ngp6Y21lSSoraXgzTDlsLUchPVZDalRJQEBtSj8hSSlFZVd9JEBnY2MtdEsqaEJ1aSZje313
IWBpTUJBVkVmKVdxPioKeiRDSStGdkpaOEdnbX5zfTtETnRAfDl9Vm4xRD1wVGheTX0rZ3d6Rzhv
RWg4a29TRUBWWUhlNnp6RSpESUlwQHN6CnplYUBNNG5OJkBFcmBtUSo/WkMyKzRNJSVWU3lOSWU8
QD1oWkNgdzl2ekFaalN1WFhYbXtQNXRHX151OXI5KF5Bawp6TzVhay15PkRwP1pzT2QoKyFKcFB6
RGEyfkttWSoqNUlfSXsxUTAqfjBSI3wwMEQoJnRjeCVicXkjTHB9Y3V4WW4KekZQOW4/ZyhIOWYw
dGdfMDAwSWFnZkIqc3JBYkB9KnU8OVBJTnBFcTAwMElhZ2ZCKnNyQWI8YkAycTFzfTB5OEdTCnp7
KHJfQWx5REcwMDA5SUxLbVkqKjVJX0l7MVEzVzJWRS1TMSFkbk8rZkIqc3JBYjxiQDJxMXN9MHRu
MlEwUT4oTAp6WWYhPkwwMDlJTEttWSoqNUlfSXsxUTArVkxWKjIkMVBYNTxmQipzckFiPGJAMnEx
c30wdGdeNVYqPjh9S2I4QkYKemxLWj4oIVYzV2U1SV9JezFRMCp+MFIjfDAwMDlMNCo5RzI2dHQj
KVI4OHRJX3tsZVRvWUNIRVZgfCNEUFRrNUtFCnpkd2p8YElxOGA5biU0MkZTNCQkUVJQSnZ8P3NN
Xmw3WGs8JWZCKnNyQWI8YkAycTFzfTB0ajRMZm9wVGBzTjwmcgp6c2c9M2crNENtPXtRTGhhK3BK
VV4wUiN8MDAwOUlMS21ZKio1SV9LZDNrJElTemMzWEU1a0xSfDFRMCp+MFIjfDAKejAwOUlMeFV2
SDV8RjNNKlFFPnppS21ZKio1SV9JezFRMCp+MFIlMkEhMmJXalIzdDxJMFIjfDAwMDlJTEttWSoq
Cno1SjJGezNiXn0hSFRPfnhBR3tEaTAwOUlMS21ZKio1SV9JezFRMC1BKSZ2JlJje1AoMmU9PFA0
KUBDZ0A7ejBsYgp6MVEwKn4wUiN8MDAwOUlMS21ZOzFmY3k5ViojRy1RXyEkOE41SV9JezFRMCp+
MFIjfDAwRDsqUFZFO2RSWkF3SDQKekFiPGJAMnExc30wdGdfMDAwSWFFMT0jLXdNTDAkUDBSI3ww
MDA5SUxLbVkqKjVJfHR8MWxhJTJVWWltVDB0Z18wCnowMElhZ2ZCKnNyQWI8YkBLPl95dktAcEEt
S21ZKio1SV9JezFRMCp+MFIjfTNKcHVPcnYpODZYZ2E4NXZBYjxiQAp6MnExc30wdGdfMEt2Mk5s
fEVzdyM2IUYwZTBSI3wwMDA5SUxLbVkqKjVJX0l7MVpHWlBWUDRIPFF+ZHNhPHtGbE8KejVJX0l7
MVEwKn4wUiN8MDAwOUlMMm5uJE41MFVUJjB0Z18wMDBJYWdmQipzckFiPGJAR2JnWmBkNyYoJnpO
X1RrCnpVSCQjYWdRWSlienJGYW8lcyZAKT1LZCgmZTNBWTdZejNUb3ZHOWw0aXMmbmc9SzFuY0l7
KXlZYG0wc1AqemNKMgp6KHx6MFFTKkxjPi0waWtaeUo0TWQrUXpZMnd2TFQ8eDBpNXdyQnVfNDRQ
OSMjQTU/V01BK2RJK0hAP2BRezdQQT8KelkmRz12Xl9zU3wtTyNwbnRKTXZ5V0F2UWVsYX1GX0Vs
bV8oXl9fQzArQ31FeCteKkBCX3FWaSVgYlNhTUR+S1hECnpeX3NwXygoQnN4ZSRUWEBuNXwqM2NV
b1QxbTJ5R2ItcU9sP1JUclVeaXVGPmx0WiEpa2ZgaiMjdyQjRyZiVCp5ZQp6LWQ0eyg4Pz1VRip+
WHorWSZPa2FGUzAkNzUtaUl0bDlYSUtrMiNfdE0zaHpZaVBAUmhSeFZSJWR1eXs9REspZ3MKelZu
c0JiSUlLNW5NYldDLSFPP2p9enVnJTVPS0ooSmojSVpwem1gZW9PQ3xOfXVHYlF5YChVQCp7YGww
YW5YUl5NCnpIbDV6NFo1X3YpVDlXaSo1XjhyRyEjKl5mYkR7OFVhM0MlZmJKfFpUbW8rVmMre09L
dXBTSHhwblpCNkwtQFU4Owp6eTZCKz4/emd+VU0jMmw2ak9lSjNZTHk9cllhaDlIYGk1cWtod1l3
WXlGPU9sTz41e01pVjxadnMlWDFnbTdRSFoKenFRa25RUDJEdVIhSisxeyhiXlRHTCM2QU93JFhJ
alJ5WDFmSWt0TEUmMXstb0N5PSgkSn5vM1Q5QDw4P2J6bkc7CnpPPFJtPztSYktfOUAqdi1xYSNY
LUpvX1dse3htTHk3JT5lfDhPdl88WVVaJmUjPGclVWo7TDJ9RnVhKHBWc0VvOwp6X25iJEQ/Ujs4
M0g1Km5TaDtWaS1LN1pYbSshUDtHIVVlUUBfMnklPGI9b21vbzBlVmRiUkx7S0NDZlQkbmBOKXwK
enFTezYkbCZ2NlUlWnhpP2VsTlk0LT9eKFFaODI0UygpK202Y0ZhQkYpVW13ZHkrRGBRYCkxJmM/
RE1aSnIxTVhvCnpzJUpsbXlUPTw9ejE/a15idWtPcCNSY2spLUVLTzFfck1aITxnc1grM0FjNHB3
elNsfXJ6fUx3cTI2Ml9HY1koLQp6JXRgO0tBKHU0bUp1WihMPEJMeVFVWkhRIXJ9TEdIZFpySmkj
UE9PVFZsMC1IOUhFaFZRNmk1fGQocVgyZV9SWjgKelIyZF47eGloVmJUKEd8bSkwUVpsPUxRcXJq
Jnc2cit1ZnRHSkJrP1ltP3VxbTV2TFg7O1pkaUtOR0srfXhQQlM0Cno9Sk4tZTA2eENOdj9gYjN7
M01tbT4kLVlvQ0c9LThmSzJTYDRRcFBLaiFTdmJvKlpMN2hEO0VAdkBTbGIhTCZfVAp6Yz1sdH1U
WVU3N01qaE9AUXRYTW8+T1kqNWNtcFRoJmcpT0AranZOZWttU1gwdSQteGJUVX5BX0U2UGh7RFZ6
Q0MKekk9YDQtX3xEdjRRbEY9O0Q9KUE4ZC1ibT98TTwlR216UkN2e2AhcWZ7QEtsa1lYMVhvKSkh
NlhaQ0k8OChLMV8mCnokOEVkaUVva2FaeU01eUhfSnBgXkx0ODJETVJlSk9HSHdxMCMmOFc7Kigm
UUZZNipFUmJYYHA+RGlnfWw/cjZhWAp6SG5mTmt3OEZFV1R+RnRHQ0FFSjtiX3RLP3FIZCFsIWsm
TTBKK0RlUSViVCRUO3E7UihBdz9Yez0wIVdJK2xKPF4Kem9DeHNlWi1+e0syPUhBZ3o9JjFCcDFk
SzczXkYzeWprcThxKCNLdUtBODE1WUgmQUg8NyEwPCp5QyVCJUg9ZTRgCnptKmIqTVQ2RkhvaSMl
Vm1qMmImb3h1Z1FHemxLcCNTKDdVbHFuQXt1a2Q8VEo1STR9TU9ObWJPKTEwX1Y/ZyNJWgp6a2l6
NztPQHc+bndQKz9eQVU2MTxASUpkSHkzTzNTK0pEZE1IcXdxUD5WZVc7WXh2Qnw5azZeOFZ4XnB6
YnVCOTEKeiM5V2d2PSpGRnhVQm99Q3ZEPmg2bTk7fHVXWXY0UmRHXjYqJlgxY01Nb2w/az8jSy1U
OTZhNGpOYkljPHE/c21TCno9QGQwXmhhVXZeSCkkZTdzbkJUYDREIU1AcThgJjBUPEhJRFd3NT98
SSRHWnp4RFN3e0kkUW04Zjh4MW81X1ZpbAp6WiskREZMYGNValplYE1sLTJONjJSP0B8JGdfMnZ+
JVdCc2B7fEMkSXtRZGp0Kj0/IUVoWCVBIV9ZSXZgbUViMlAKemAjKlR7QXBTP0stKEwzZW1HV090
O01waFo/dTRlRlBpUWUpPGZ4XitaXmF8Vmw8fXsrcS1SQTk+c0k3azdMeV8yCnpUSGFoMWxpaSlo
JEVRY2o2TTNvOVUleDVzYmZvJStlXm9jM00pRnZmUCkwdEhWYW5APEppX0huQ1hxdUJsZjMkLQp6
ZlhSd0phZXVKTGlKNFloNj4wYygqRSFNfmc1K1MqZ3RiMXdWYDdIbiVNQiRhbU1+ekRZVW5MPXE8
NkghZSpvVkUKQm1lPkZRCgpsaXRlcmFsIDAKSGNtVj9kMDAwMDEKCmRpZmYgLS1naXQgYS9Ub29s
cy9UZXN0V2ViS2l0QVBJL2Jhc2ljSVRQRGF0YWJhc2UuZGItc2htIGIvVG9vbHMvVGVzdFdlYktp
dEFQSS9iYXNpY0lUUERhdGFiYXNlLmRiLXNobQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mZTlhYzI4NDVlY2E2ZmU2
ZGE4YTYzY2QwOTZkOWNmOWUyNGVjZTEwCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAzMjc2OAp6
Y21lSXVBcjYycjM8WGVUU2F5UzYwPVo9Ty0wfGtQMiZmdUAhNkR1XnppRkNeN3c1NU1OKTloUVlW
M1drNzlhMlAKeiklOGczSDMwJHkyb05BWmZCKnBrMVBCbHlLITUtTjB0NSZVQVY3Y3MwUmpYRjVG
a0srMDA5Qzcyb05BWmZCKnBrCnoxUEJseUshNS1OMHQ1JlVBVjdjczBSalhGNUZrSyswMDlDNzJv
TkFaZkIqcGsxUEJseUshNS1OMHQ1JlVBVjdjcwp3MFJqWEY1RmtLKzAwOUM3Mm9OQVpmQipwazFQ
Qmx5SyE1LU4wdDUmVUFWN2NzMFJqWEY1Y3E/QDRkazVgUXZkKH0KCmxpdGVyYWwgMApIY21WP2Qw
MDAwMQoKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvYmFzaWNJVFBEYXRhYmFzZS5k
Yi13YWwgYi9Ub29scy9UZXN0V2ViS2l0QVBJL2Jhc2ljSVRQRGF0YWJhc2UuZGItd2FsCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmU2OWRlMjliYjJkMWQ2NDM0YjhiMjlhZTc3NWFkOGMyZTQ4YzUzOTEK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>398645</attachid>
            <date>2020-05-06 12:24:48 -0700</date>
            <delta_ts>2020-05-06 12:52:47 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-211520-20200506122447.patch</filename>
            <type>text/plain</type>
            <size>17022</size>
            <attacher name="Kate Cheney">katherine_cheney</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYxMTc1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGI4NjlhMDJiMTFkMzhhMWUz
MjdmMzYyODdmZGVkN2I2NWE3M2ZhNzEuLjk5NGU2ODA4ZWJmMjQ5ZGQ2YzEwMGU1MDg4N2QyNGJk
MjZmYzQ1ZWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMjAtMDUtMDYgIEthdGUgQ2hl
bmV5ICA8a2F0aGVyaW5lX2NoZW5leUBhcHBsZS5jb20+CisKKyAgICAgICAgUmVzb3VyY2VMb2Fk
U3RhdGlzdGljcyBkYXRhIHN1bW1hcnkgY2FsbCBzaG91bGQgY3JlYXRlIGEgd2ViIHByb2Nlc3Mg
cG9vbCBpZiBvbmUgZG9lc24ndCBleGlzdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjExNTIwCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81OTg2OTYx
OT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBFbnN1
cmVzIHRoYXQgYSBwcm9jZXNzIHBvb2wgYW5kIG5ldHdvcmsgcHJvY2VzcyBleGlzdCB3aGVuIHJl
cXVlc3RpbmcKKyAgICAgICAgcmVzb3VyY2UgbG9hZCBzdGF0aXN0aWNzIGRhdGEuCisKKyAgICAg
ICAgKiBVSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYnNpdGVEYXRhU3RvcmU6OmdldFJlc291cmNlTG9hZFN0YXRpc3RpY3NEYXRh
U3VtbWFyeSk6CisKIDIwMjAtMDUtMDUgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29t
PgogCiAgICAgICAgIFJlbW92ZSBMZWdhY3lTY2hlbWVSZWdpc3RyeTo6Y2FuU2VydmljZVdvcmtl
cnNIYW5kbGVVUkxTY2hlbWUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQ
SS9Db2NvYS9XS1dlYnNpdGVEYXRhU3RvcmVQcml2YXRlLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9BUEkvQ29jb2EvV0tXZWJzaXRlRGF0YVN0b3JlUHJpdmF0ZS5oCmluZGV4IDFlZGQ3MDMx
YTg1ZjM0NTBlMzRhYjliMzc0MzU5YTAwYTVkMGY4NGYuLjQwNzExMDg5YTAwZjc0MGQ0YzNkNDQ4
ZDcyOThiYTdhMzc3ZTVkYmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQ
SS9Db2NvYS9XS1dlYnNpdGVEYXRhU3RvcmVQcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvQVBJL0NvY29hL1dLV2Vic2l0ZURhdGFTdG9yZVByaXZhdGUuaApAQCAtNzksNyAr
NzksNiBAQCB0eXBlZGVmIE5TX09QVElPTlMoTlNVSW50ZWdlciwgX1dLV2Vic2l0ZURhdGFTdG9y
ZUZldGNoT3B0aW9ucykgewogLSAodm9pZClfc3RhdGlzdGljc0RhdGFiYXNlSGFzQWxsVGFibGVz
Oih2b2lkICheKShCT09MKSljb21wbGV0aW9uSGFuZGxlciBXS19BUElfQVZBSUxBQkxFKG1hY29z
KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOwogLSAodm9pZClfcHJvY2Vzc1N0YXRpc3Rp
Y3NBbmREYXRhUmVjb3Jkczoodm9pZCAoXikodm9pZCkpY29tcGxldGlvbkhhbmRsZXIgV0tfQVBJ
X0FWQUlMQUJMRShtYWNvcygxMC4xNSksIGlvcygxMy4wKSk7CiAtICh2b2lkKV9hcHBCb3VuZERv
bWFpbnM6KHZvaWQgKF4pKE5TQXJyYXk8TlNTdHJpbmcgKj4gKikpY29tcGxldGlvbkhhbmRsZXIg
V0tfQVBJX0FWQUlMQUJMRShtYWNvcyhXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKLQog
LSAodm9pZClfcmVuYW1lT3JpZ2luOihOU1VSTCAqKW9sZE5hbWUgdG86KE5TVVJMICopbmV3TmFt
ZSBmb3JEYXRhT2ZUeXBlczooTlNTZXQ8TlNTdHJpbmcgKj4gKilkYXRhVHlwZXMgY29tcGxldGlv
bkhhbmRsZXI6KHZvaWQgKF4pKHZvaWQpKWNvbXBsZXRpb25IYW5kbGVyOwogCiBAcHJvcGVydHkg
KG51bGxhYmxlLCBub25hdG9taWMsIHdlYWspIGlkIDxfV0tXZWJzaXRlRGF0YVN0b3JlRGVsZWdh
dGU+IF9kZWxlZ2F0ZSBXS19BUElfQVZBSUxBQkxFKG1hY29zKDEwLjE1KSwgaW9zKDEzLjApKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVE
YXRhU3RvcmUuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0
ZURhdGFTdG9yZS5jcHAKaW5kZXggZTM2Mzc2YzVlZDJmMjk3YWRhNDQxNTBhY2I1MDM5NzBlYTFj
MmRjOC4uZDgwYmEwM2JmY2JhMjAxN2Y0ZTY5YzE4YjYxYjg5N2FmMjYyNzc4MSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5j
cHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFT
dG9yZS5jcHAKQEAgLTE1NDAsMTIgKzE1NDAsMTAgQEAgdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjpn
ZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGF0YVN1bW1hcnkoQ29tcGxldGlvbkhhbmRsZXI8dm8K
IAogICAgIFJlZlB0cjxDYWxsYmFja0FnZ3JlZ2F0b3I+IGNhbGxiYWNrQWdncmVnYXRvciA9IGFk
b3B0UmVmKG5ldyBDYWxsYmFja0FnZ3JlZ2F0b3IoV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikp
KTsKIAotICAgIGZvciAoYXV0byYgcHJvY2Vzc1Bvb2wgOiBwcm9jZXNzUG9vbHMoKSkgewotICAg
ICAgICBpZiAoYXV0byogcHJvY2VzcyA9IHByb2Nlc3NQb29sLT5uZXR3b3JrUHJvY2VzcygpKSB7
Ci0gICAgICAgICAgICBwcm9jZXNzLT5nZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGF0YVN1bW1h
cnkobV9zZXNzaW9uSUQsIFtjYWxsYmFja0FnZ3JlZ2F0b3IgPSBjYWxsYmFja0FnZ3JlZ2F0b3Iu
Y29weVJlZigpXShWZWN0b3I8V2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlOjpUaGlyZFBh
cnR5RGF0YT4mJiBkYXRhKSB7Ci0gICAgICAgICAgICAgICAgY2FsbGJhY2tBZ2dyZWdhdG9yLT5h
ZGRSZXN1bHQoV1RGTW92ZShkYXRhKSk7Ci0gICAgICAgICAgICB9KTsKLSAgICAgICAgfQorICAg
IGZvciAoYXV0byYgcHJvY2Vzc1Bvb2wgOiBlbnN1cmVQcm9jZXNzUG9vbHMoKSkgeworICAgICAg
ICBwcm9jZXNzUG9vbC0+ZW5zdXJlTmV0d29ya1Byb2Nlc3ModGhpcykuZ2V0UmVzb3VyY2VMb2Fk
U3RhdGlzdGljc0RhdGFTdW1tYXJ5KG1fc2Vzc2lvbklELCBbY2FsbGJhY2tBZ2dyZWdhdG9yID0g
Y2FsbGJhY2tBZ2dyZWdhdG9yLmNvcHlSZWYoKSwgcHJvY2Vzc1Bvb2xdKFZlY3RvcjxXZWJSZXNv
dXJjZUxvYWRTdGF0aXN0aWNzU3RvcmU6OlRoaXJkUGFydHlEYXRhPiYmIGRhdGEpIHsKKyAgICAg
ICAgICAgIGNhbGxiYWNrQWdncmVnYXRvci0+YWRkUmVzdWx0KFdURk1vdmUoZGF0YSkpOworICAg
ICAgICB9KTsKICAgICB9CiB9CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xz
L0NoYW5nZUxvZwppbmRleCBmOWZmYzhhZDAwOWJlOGMyNzIwN2ExYjM0OWUxMDBlYTMzZWYwYmEz
Li4wYTVlZWM3ZGRhODI5ODM3MTBlMWJkZTE4YjlhYmYzYTY3ZTQ0MzE1IDEwMDY0NAotLS0gYS9U
b29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIw
MjAtMDUtMDYgIEthdGUgQ2hlbmV5ICA8a2F0aGVyaW5lX2NoZW5leUBhcHBsZS5jb20+CisKKyAg
ICAgICAgUmVzb3VyY2VMb2FkU3RhdGlzdGljcyBkYXRhIHN1bW1hcnkgY2FsbCBzaG91bGQgY3Jl
YXRlIGEgd2ViIHByb2Nlc3MgcG9vbCBpZiBvbmUgZG9lc24ndCBleGlzdAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjExNTIwCisgICAgICAgIDxyZGFy
Oi8vcHJvYmxlbS81OTg2OTYxOT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBBZGRlZCBBUEkgdGVzdCBjb3ZlcmFnZS4KKworICAgICAgICAqIFRlc3RX
ZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAg
ICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvUmVzb3VyY2VMb2FkU3RhdGlzdGlj
cy5tbToKKyAgICAgICAgUmVtb3ZlZCBzdHJheSBjb21tZW50IGZyb20gcHJldmlvdXMgdGVzdC4K
KworICAgICAgICAoVEVTVCk6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9iYXNpY0lUUERhdGFi
YXNlLmRiOiBBZGRlZC4KKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL2Jhc2ljSVRQRGF0YWJhc2Uu
ZGItc2htOiBBZGRlZC4KKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL2Jhc2ljSVRQRGF0YWJhc2Uu
ZGItd2FsOiBBZGRlZC4KKyAgICAgICAgTmV3IGRhdGFiYXNlIHJlc291cmNlIHdpdGggMiBlbnRy
aWVzOiBhcHBsZS5jb20gYW5kIHdlYmtpdC5vcmcsIHdpdGgKKyAgICAgICAgd2Via2l0Lm9yZyBy
ZWdpc3RlcmVkIGFzIGEgc3ViZnJhbWUgb2YgYXBwbGUuY29tCisKIDIwMjAtMDUtMDUgIEFsZXhl
eSBTaHZheWthICA8c2h2YWlrYWxlc2hAZ21haWwuY29tPgogCiAgICAgICAgIE9iamVjdC5wcm90
b3R5cGUudG9TdHJpbmcgaXMgbm90IHNwZWMtcGVyZmVjdApkaWZmIC0tZ2l0IGEvVG9vbHMvVGVz
dFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Ub29s
cy9UZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRBUEkueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpp
bmRleCBhNGI1YzgxMjQ0ODY5MDA3MjQxNDE5MzRlOTM5YmU4ODI3NGZmOTlmLi42OTdiNzYwN2Ix
NWFmMjlkNmU4NDhmY2NlM2FkMWRiYTQ0NDJjZDM0IDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RXZWJLaXRBUEkueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Ub29s
cy9UZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRBUEkueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpA
QCAtMjU5LDYgKzI1OSw5IEBACiAJCTQ5MDlFRTNBMkQwOTQ4MEM4ODk4MkQ1NiAvKiBNYXJrYWJs
ZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFQzc5
RjE2OEJFNDU0RTU3OUU0MTdCMDUgLyogTWFya2FibGUuY3BwICovOyB9OwogCQk0OTcxQjExODI0
NTFGMjlBMDA5Njk5NEQgLyogaW5jb3JyZWN0Q3JlYXRlVGFibGVTY2hlbWEuZGIgaW4gQ29weSBS
ZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDk3MUIxMTcyNDUx
RjI3ODAwOTY5OTREIC8qIGluY29ycmVjdENyZWF0ZVRhYmxlU2NoZW1hLmRiICovOyB9OwogCQk0
OTcxQjEyMDI0NTNBODhDMDA5Njk5NEQgLyogbWlzc2luZ1RvcEZyYW1lVW5pcXVlUmVkaXJlY3RT
YW1lU2l0ZVN0cmljdFRhYmxlU2NoZW1hLmRiIGluIENvcHkgUmVzb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5NzFCMTFGMjQ1M0E4N0YwMDk2OTk0RCAvKiBtaXNz
aW5nVG9wRnJhbWVVbmlxdWVSZWRpcmVjdFNhbWVTaXRlU3RyaWN0VGFibGVTY2hlbWEuZGIgKi87
IH07CisJCTQ5NzFCMTJGMjQ2MjNBM0IwMDk2OTk0RCAvKiBiYXNpY0lUUERhdGFiYXNlLmRiLXNo
bSBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDk3MUIx
MkQyNDYyM0EzQjAwOTY5OTREIC8qIGJhc2ljSVRQRGF0YWJhc2UuZGItc2htICovOyB9OworCQk0
OTcxQjEzMDI0NjIzQTNDMDA5Njk5NEQgLyogYmFzaWNJVFBEYXRhYmFzZS5kYi13YWwgaW4gUmVz
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5NzFCMTJFMjQ2MjNB
M0IwMDk2OTk0RCAvKiBiYXNpY0lUUERhdGFiYXNlLmRiLXdhbCAqLzsgfTsKKwkJNDk3MUIxMzEy
NDYyM0E0RjAwOTY5OTREIC8qIGJhc2ljSVRQRGF0YWJhc2UuZGIgaW4gQ29weSBSZXNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDk3MUIxMkMyNDYyMzlEMzAwOTY5
OTREIC8qIGJhc2ljSVRQRGF0YWJhc2UuZGIgKi87IH07CiAJCTQ5ODk3RDZDMjQxRkU5RTQwMEVD
RjE1MyAvKiBpbi1hcHAtYnJvd3Nlci1wcml2YWN5LWxvY2FsLWZpbGUuaHRtbCBpbiBDb3B5IFJl
c291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OUQ3RkJBNzI0MUZE
RERBMDBBQjY3RkEgLyogaW4tYXBwLWJyb3dzZXItcHJpdmFjeS1sb2NhbC1maWxlLmh0bWwgKi87
IH07CiAJCTQ5QUVFRjZEMjQwNzM1OUQwMEM4N0U0QyAvKiBJbkFwcEJyb3dzZXJQcml2YWN5Lm1t
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDlBRUVGNkIy
NDA3MzU4NjAwQzg3RTRDIC8qIEluQXBwQnJvd3NlclByaXZhY3kubW0gKi87IH07CiAJCTRCRkRG
RkE3MTMxNDc3NkMwMDYxRjI0QiAvKiBIaXRUZXN0UmVzdWx0Tm9kZUhhbmRsZV9CdW5kbGUuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNEJGREZGQTYx
MzE0Nzc2QzAwNjFGMjRCIC8qIEhpdFRlc3RSZXN1bHROb2RlSGFuZGxlX0J1bmRsZS5jcHAgKi87
IH07CkBAIC0xMjU2LDYgKzEyNTksNyBAQAogCQkJCTJFMTRBNTI5MUQzRkU5NkIwMDEwRjM1QiAv
KiBhdXRvcGxheWluZy12aWRlby13aXRoLWF1ZGlvLmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8s
CiAJCQkJRjQxQUI5QTAxRUY0Njk2QjAwODNGQTA4IC8qIGJhY2tncm91bmQtaW1hZ2UtbGluay1h
bmQtaW5wdXQuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLywKIAkJCQk0NjRDNzY0RDIzMERGODVD
MDBBRkIwMjAgLyogQmFkU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbnMtNC5zcWxpdGUzIGluIENv
cHkgUmVzb3VyY2VzICovLAorCQkJCTQ5NzFCMTMxMjQ2MjNBNEYwMDk2OTk0RCAvKiBiYXNpY0lU
UERhdGFiYXNlLmRiIGluIENvcHkgUmVzb3VyY2VzICovLAogCQkJCTQ2RkFDRjc0MjNFODg0MjMw
MEE5RUJDNiAvKiBiZWZvcmV1bmxvYWQtc2xvdy5odG1sIGluIENvcHkgUmVzb3VyY2VzICovLAog
CQkJCTQ2QzNBRUIzMjNEMEU1MjkwMDFCMDY4MCAvKiBiZWZvcmV1bmxvYWQuaHRtbCBpbiBDb3B5
IFJlc291cmNlcyAqLywKIAkJCQkyREU3MUIwMDFENDlDM0VEMDA5MDQwOTQgLyogYmxpbmtpbmct
ZGl2Lmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8sCkBAIC0xODkxLDYgKzE4OTUsOSBAQAogCQk0
NkZBQ0Y3MzIzRTg4M0VFMDBBOUVCQzYgLyogYmVmb3JldW5sb2FkLXNsb3cuaHRtbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQuaHRtbDsgcGF0aCA9ICJiZWZvcmV1bmxvYWQtc2xvdy5odG1sIjsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDk3MUIxMTcyNDUxRjI3ODAwOTY5OTREIC8qIGluY29ycmVj
dENyZWF0ZVRhYmxlU2NoZW1hLmRiICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gZmlsZTsgcGF0aCA9IGluY29ycmVjdENyZWF0ZVRhYmxlU2NoZW1hLmRi
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0OTcxQjExRjI0NTNBODdGMDA5Njk5NEQg
LyogbWlzc2luZ1RvcEZyYW1lVW5pcXVlUmVkaXJlY3RTYW1lU2l0ZVN0cmljdFRhYmxlU2NoZW1h
LmRiICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gZmls
ZTsgbmFtZSA9IG1pc3NpbmdUb3BGcmFtZVVuaXF1ZVJlZGlyZWN0U2FtZVNpdGVTdHJpY3RUYWJs
ZVNjaGVtYS5kYjsgcGF0aCA9IFRlc3RzL1dlYktpdENvY29hL21pc3NpbmdUb3BGcmFtZVVuaXF1
ZVJlZGlyZWN0U2FtZVNpdGVTdHJpY3RUYWJsZVNjaGVtYS5kYjsgc291cmNlVHJlZSA9IFNPVVJD
RV9ST09UOyB9OworCQk0OTcxQjEyQzI0NjIzOUQzMDA5Njk5NEQgLyogYmFzaWNJVFBEYXRhYmFz
ZS5kYiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGZp
bGU7IHBhdGggPSBiYXNpY0lUUERhdGFiYXNlLmRiOyBzb3VyY2VUcmVlID0gU09VUkNFX1JPT1Q7
IH07CisJCTQ5NzFCMTJEMjQ2MjNBM0IwMDk2OTk0RCAvKiBiYXNpY0lUUERhdGFiYXNlLmRiLXNo
bSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGZpbGU7
IHBhdGggPSAiYmFzaWNJVFBEYXRhYmFzZS5kYi1zaG0iOyBzb3VyY2VUcmVlID0gU09VUkNFX1JP
T1Q7IH07CisJCTQ5NzFCMTJFMjQ2MjNBM0IwMDk2OTk0RCAvKiBiYXNpY0lUUERhdGFiYXNlLmRi
LXdhbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGZp
bGU7IHBhdGggPSAiYmFzaWNJVFBEYXRhYmFzZS5kYi13YWwiOyBzb3VyY2VUcmVlID0gU09VUkNF
X1JPT1Q7IH07CiAJCTQ5QUVFRjY4MjQwNzI3NkYwMEM4N0U0QyAvKiBJbmZvLnBsaXN0ICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dC5wbGlzdC54bWw7IHBhdGggPSBJbmZvLnBsaXN0OyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk0OUFFRUY2QjI0MDczNTg2MDBDODdFNEMgLyogSW5BcHBCcm93c2VyUHJp
dmFjeS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEluQXBwQnJv
d3NlclByaXZhY3kubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ5RDdGQkE3MjQx
RkREREEwMEFCNjdGQSAvKiBpbi1hcHAtYnJvd3Nlci1wcml2YWN5LWxvY2FsLWZpbGUuaHRtbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQuaHRt
bDsgcGF0aCA9ICJpbi1hcHAtYnJvd3Nlci1wcml2YWN5LWxvY2FsLWZpbGUuaHRtbCI7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC00MDU3LDYgKzQwNjQsOSBAQAogCQkJCUM5NTk4NEYz
MUUzNkJDNTUwMDJDMEQ0NSAvKiBhdXRvcGxheS1uby1hdWRpby1jaGVjay5odG1sICovLAogCQkJ
CUM5OUI2NzVBMUUzOTcxRkMwMEZDNkM4MCAvKiBhdXRvcGxheS13aXRoLWNvbnRyb2xzLmh0bWwg
Ki8sCiAJCQkJQzk5QkRGODgxRTgwOTdFMzAwQzcxNzBFIC8qIGF1dG9wbGF5LXplcm8tdm9sdW1l
LWNoZWNrLmh0bWwgKi8sCisJCQkJNDk3MUIxMkMyNDYyMzlEMzAwOTY5OTREIC8qIGJhc2ljSVRQ
RGF0YWJhc2UuZGIgKi8sCisJCQkJNDk3MUIxMkQyNDYyM0EzQjAwOTY5OTREIC8qIGJhc2ljSVRQ
RGF0YWJhc2UuZGItc2htICovLAorCQkJCTQ5NzFCMTJFMjQ2MjNBM0IwMDk2OTk0RCAvKiBiYXNp
Y0lUUERhdGFiYXNlLmRiLXdhbCAqLywKIAkJCQk0NkZBQ0Y3MzIzRTg4M0VFMDBBOUVCQzYgLyog
YmVmb3JldW5sb2FkLXNsb3cuaHRtbCAqLywKIAkJCQk0NkMzQUVCMjIzRDBFNTBGMDAxQjA2ODAg
LyogYmVmb3JldW5sb2FkLmh0bWwgKi8sCiAJCQkJN0M0ODZCQTAxQUExMjU0QjAwM0Y2RjlCIC8q
IGJ1bmRsZS1maWxlLmh0bWwgKi8sCkBAIC00NTg0LDYgKzQ1OTQsOCBAQAogCQkJaXNhID0gUEJY
UmVzb3VyY2VzQnVpbGRQaGFzZTsKIAkJCWJ1aWxkQWN0aW9uTWFzayA9IDIxNDc0ODM2NDc7CiAJ
CQlmaWxlcyA9ICgKKwkJCQk0OTcxQjEyRjI0NjIzQTNCMDA5Njk5NEQgLyogYmFzaWNJVFBEYXRh
YmFzZS5kYi1zaG0gaW4gUmVzb3VyY2VzICovLAorCQkJCTQ5NzFCMTMwMjQ2MjNBM0MwMDk2OTk0
RCAvKiBiYXNpY0lUUERhdGFiYXNlLmRiLXdhbCBpbiBSZXNvdXJjZXMgKi8sCiAJCQkpOwogCQkJ
cnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CiAJCX07CmRpZmYgLS1naXQg
YS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1Jlc291cmNlTG9hZFN0YXRp
c3RpY3MubW0gYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1Jlc291cmNl
TG9hZFN0YXRpc3RpY3MubW0KaW5kZXggM2RiODE4MDIyNWZmYjE0YmQ2YmNjMGI1ZTZjZjY4ZjA4
N2U1MzU2ZC4uZWM5ZGI5ZDI3NmMwOWY2MjgwNzc1ZTcyZDZmYjgyNjcwOGIwZTE0MCAxMDA2NDQK
LS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9SZXNvdXJjZUxvYWRT
dGF0aXN0aWNzLm1tCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2Ev
UmVzb3VyY2VMb2FkU3RhdGlzdGljcy5tbQpAQCAtMTQ3Nyw3ICsxNDc3LDYgQEAgVEVTVChSZXNv
dXJjZUxvYWRTdGF0aXN0aWNzLCBNaWdyYXRlRGF0YUZyb21JbmNvcnJlY3RDcmVhdGVUYWJsZVNj
aGVtYSkKICAgICAgICAgRVhQRUNUX0VRKHN0YXRpY19jYXN0PGludD4oW3RoaXJkUGFydHlEYXRh
IGNvdW50XSksIDEpOwogICAgICAgICBOU0VudW1lcmF0b3IgKnRoaXJkUGFydHlEb21haW5zID0g
W3RoaXJkUGFydHlEYXRhIG9iamVjdEVudW1lcmF0b3JdOwogCi0gICAgICAgIC8vIGV2aWwzCiAg
ICAgICAgIF9XS1Jlc291cmNlTG9hZFN0YXRpc3RpY3NUaGlyZFBhcnR5ICp0aGlyZFBhcnR5ID0g
W3RoaXJkUGFydHlEb21haW5zIG5leHRPYmplY3RdOwogICAgICAgICBFWFBFQ1RfV0tfU1RSRVEo
dGhpcmRQYXJ0eS50aGlyZFBhcnR5RG9tYWluLCBAIndlYmtpdC5vcmciKTsKIApAQCAtMTU1MCw2
ICsxNTQ5LDQ0IEBAIFRFU1QoUmVzb3VyY2VMb2FkU3RhdGlzdGljcywgTWlncmF0ZURhdGFGcm9t
TWlzc2luZ1RvcEZyYW1lVW5pcXVlUmVkaXJlY3RTYW1lU2l0CiAgICAgVGVzdFdlYktpdEFQSTo6
VXRpbDo6cnVuKCZkb25lRmxhZyk7CiB9CiAKK1RFU1QoUmVzb3VyY2VMb2FkU3RhdGlzdGljcywg
Q2FuQWNjZXNzRGF0YVN1bW1hcnlXaXRoTm9Qcm9jZXNzUG9vbCkKK3sKKyAgICBhdXRvIGRlZmF1
bHRGaWxlTWFuYWdlciA9IFtOU0ZpbGVNYW5hZ2VyIGRlZmF1bHRNYW5hZ2VyXTsKKyAgICBfV0tX
ZWJzaXRlRGF0YVN0b3JlQ29uZmlndXJhdGlvbiAqZGF0YVN0b3JlQ29uZmlndXJhdGlvbiA9IFtb
X1dLV2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb24gbmV3XSBhdXRvcmVsZWFzZV07CisgICAg
YXV0byAqZGF0YVN0b3JlID0gW1tbV0tXZWJzaXRlRGF0YVN0b3JlIGFsbG9jXSBfaW5pdFdpdGhD
b25maWd1cmF0aW9uOmRhdGFTdG9yZUNvbmZpZ3VyYXRpb25dIGF1dG9yZWxlYXNlXTsKKyAgICBO
U1VSTCAqaXRwUm9vdFVSTCA9IFtbZGF0YVN0b3JlIF9jb25maWd1cmF0aW9uXSBfcmVzb3VyY2VM
b2FkU3RhdGlzdGljc0RpcmVjdG9yeV07CisgICAgTlNVUkwgKmZpbGVVUkwgPSBbaXRwUm9vdFVS
TCBVUkxCeUFwcGVuZGluZ1BhdGhDb21wb25lbnQ6QCJvYnNlcnZhdGlvbnMuZGIiXTsKKyAgICBb
ZGVmYXVsdEZpbGVNYW5hZ2VyIHJlbW92ZUl0ZW1BdFBhdGg6aXRwUm9vdFVSTC5wYXRoIGVycm9y
Om5pbF07CisgICAgRVhQRUNUX0ZBTFNFKFtkZWZhdWx0RmlsZU1hbmFnZXIgZmlsZUV4aXN0c0F0
UGF0aDppdHBSb290VVJMLnBhdGhdKTsKKworICAgIC8vIExvYWQgYSBhIHByZS1zZWVkZWQgSVRQ
IGRhdGFiYXNlLgorICAgIFtkZWZhdWx0RmlsZU1hbmFnZXIgY3JlYXRlRGlyZWN0b3J5QXRVUkw6
aXRwUm9vdFVSTCB3aXRoSW50ZXJtZWRpYXRlRGlyZWN0b3JpZXM6WUVTIGF0dHJpYnV0ZXM6bmls
IGVycm9yOm5pbF07CisgICAgTlNVUkwgKm5ld0ZpbGVVUkwgPSBbW05TQnVuZGxlIG1haW5CdW5k
bGVdIFVSTEZvclJlc291cmNlOkAiYmFzaWNJVFBEYXRhYmFzZSIgd2l0aEV4dGVuc2lvbjpAImRi
IiBzdWJkaXJlY3Rvcnk6QCJUZXN0V2ViS2l0QVBJLnJlc291cmNlcyJdOworICAgIEVYUEVDVF9U
UlVFKFtkZWZhdWx0RmlsZU1hbmFnZXIgZmlsZUV4aXN0c0F0UGF0aDpuZXdGaWxlVVJMLnBhdGhd
KTsKKyAgICBbZGVmYXVsdEZpbGVNYW5hZ2VyIGNvcHlJdGVtQXRQYXRoOm5ld0ZpbGVVUkwucGF0
aCB0b1BhdGg6ZmlsZVVSTC5wYXRoIGVycm9yOm5pbF07CisgICAgRVhQRUNUX1RSVUUoW2RlZmF1
bHRGaWxlTWFuYWdlciBmaWxlRXhpc3RzQXRQYXRoOmZpbGVVUkwucGF0aF0pOworICAgIFtkYXRh
U3RvcmUgX3NldFJlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVkOllFU107CisKKyAgICBkb25l
RmxhZyA9IGZhbHNlOworICAgIFtkYXRhU3RvcmUgX2dldFJlc291cmNlTG9hZFN0YXRpc3RpY3NE
YXRhU3VtbWFyeTpedm9pZChOU0FycmF5PF9XS1Jlc291cmNlTG9hZFN0YXRpc3RpY3NUaGlyZFBh
cnR5ICo+ICp0aGlyZFBhcnR5RGF0YSkKKyAgICB7CisgICAgICAgIEVYUEVDVF9FUShzdGF0aWNf
Y2FzdDxpbnQ+KFt0aGlyZFBhcnR5RGF0YSBjb3VudF0pLCAxKTsKKyAgICAgICAgTlNFbnVtZXJh
dG9yICp0aGlyZFBhcnR5RG9tYWlucyA9IFt0aGlyZFBhcnR5RGF0YSBvYmplY3RFbnVtZXJhdG9y
XTsKKworICAgICAgICBfV0tSZXNvdXJjZUxvYWRTdGF0aXN0aWNzVGhpcmRQYXJ0eSAqdGhpcmRQ
YXJ0eSA9IFt0aGlyZFBhcnR5RG9tYWlucyBuZXh0T2JqZWN0XTsKKyAgICAgICAgRVhQRUNUX1dL
X1NUUkVRKHRoaXJkUGFydHkudGhpcmRQYXJ0eURvbWFpbiwgQCJ3ZWJraXQub3JnIik7CisKKyAg
ICAgICAgTlNFbnVtZXJhdG9yICplbnVtZXJhdG9yID0gW3RoaXJkUGFydHkudW5kZXJGaXJzdFBh
cnRpZXMgb2JqZWN0RW51bWVyYXRvcl07CisgICAgICAgIF9XS1Jlc291cmNlTG9hZFN0YXRpc3Rp
Y3NGaXJzdFBhcnR5ICpmaXJzdFBhcnR5ID0gW2VudW1lcmF0b3IgbmV4dE9iamVjdF07CisKKyAg
ICAgICAgRVhQRUNUX1dLX1NUUkVRKGZpcnN0UGFydHkuZmlyc3RQYXJ0eURvbWFpbiwgQCJhcHBs
ZS5jb20iKTsKKworICAgICAgICBkb25lRmxhZyA9IHRydWU7CisgICAgfV07CisKKyAgICBUZXN0
V2ViS2l0QVBJOjpVdGlsOjpydW4oJmRvbmVGbGFnKTsKK30KKwogVEVTVChSZXNvdXJjZUxvYWRT
dGF0aXN0aWNzLCBTdG9yZVN1c3BlbnNpb24pCiB7CiAgICAgYXV0byAqc2hhcmVkUHJvY2Vzc1Bv
b2wgPSBbV0tQcm9jZXNzUG9vbCBfc2hhcmVkUHJvY2Vzc1Bvb2xdOwpkaWZmIC0tZ2l0IGEvVG9v
bHMvVGVzdFdlYktpdEFQSS9iYXNpY0lUUERhdGFiYXNlLmRiIGIvVG9vbHMvVGVzdFdlYktpdEFQ
SS9iYXNpY0lUUERhdGFiYXNlLmRiCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjc0ZmEyOGI3MDhmZGRmNGNkNzQ1Njgx
MTQyNGQ3NTdjMmE0MmY1OGEKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDEwNjQ5Ngp6Y21lSSor
aXgzTDlsLUchPVZDalRJQEBtSj8hSSlFZVd9JEBnY2MtdEsqaEJ1aSZje313IWBpTUJBVkVmKVdx
PioKeiRDSStGdkpaOEdnbX5zfTtETnRAfDl9Vm4xRD1wVGheTX0rZ3d6RzhvRWg4a29TRUBWWUhl
Nnp6RSpESUlwQHN6CnplYUBNNG5OJkBFcmBtUSo/WkMyKzRNJSVWU3lOSWU8QD1oWkNgdzl2ekFa
alN1WFhYbXtQNXRHX151OXI5KF5Bawp6TzVhay15PkRwP1pzT2QoKyFKcFB6RGEyfkttWSoqNUlf
SXsxUTAqfjBSI3wwMEQoJnRjeCVicXkjTHB9Y3V4WW4KekZQOW4/ZyhIOWYwdGdfMDAwSWFnZkIq
c3JBYkB9KnU8OVBJTnBFcTAwMElhZ2ZCKnNyQWI8YkAycTFzfTB5OEdTCnp7KHJfQWx5REcwMDA5
SUxLbVkqKjVJX0l7MVEzVzJWRS1TMSFkbk8rZkIqc3JBYjxiQDJxMXN9MHRuMlEwUT4oTAp6WWYh
PkwwMDlJTEttWSoqNUlfSXsxUTArVkxWKjIkMVBYNTxmQipzckFiPGJAMnExc30wdGdeNVYqPjh9
S2I4QkYKemxLWj4oIVYzV2U1SV9JezFRMCp+MFIjfDAwMDlMNCo5RzI2dHQjKVI4OHRJX3tsZVRv
WUNIRVZgfCNEUFRrNUtFCnpkd2p8YElxOGA5biU0MkZTNCQkUVJQSnZ8P3NNXmw3WGs8JWZCKnNy
QWI8YkAycTFzfTB0ajRMZm9wVGBzTjwmcgp6c2c9M2crNENtPXtRTGhhK3BKVV4wUiN8MDAwOUlM
S21ZKio1SV9LZDNrJElTemMzWEU1a0xSfDFRMCp+MFIjfDAKejAwOUlMeFV2SDV8RjNNKlFFPnpp
S21ZKio1SV9JezFRMCp+MFIlMkEhMmJXalIzdDxJMFIjfDAwMDlJTEttWSoqCno1SjJGezNiXn0h
SFRPfnhBR3tEaTAwOUlMS21ZKio1SV9JezFRMC1BKSZ2JlJje1AoMmU9PFA0KUBDZ0A7ejBsYgp6
MVEwKn4wUiN8MDAwOUlMS21ZOzFmY3k5ViojRy1RXyEkOE41SV9JezFRMCp+MFIjfDAwRDsqUFZF
O2RSWkF3SDQKekFiPGJAMnExc30wdGdfMDAwSWFFMT0jLXdNTDAkUDBSI3wwMDA5SUxLbVkqKjVJ
fHR8MWxhJTJVWWltVDB0Z18wCnowMElhZ2ZCKnNyQWI8YkBLPl95dktAcEEtS21ZKio1SV9JezFR
MCp+MFIjfTNKcHVPcnYpODZYZ2E4NXZBYjxiQAp6MnExc30wdGdfMEt2Mk5sfEVzdyM2IUYwZTBS
I3wwMDA5SUxLbVkqKjVJX0l7MVpHWlBWUDRIPFF+ZHNhPHtGbE8KejVJX0l7MVEwKn4wUiN8MDAw
OUlMMm5uJE41MFVUJjB0Z18wMDBJYWdmQipzckFiPGJAR2JnWmBkNyYoJnpOX1RrCnpVSCQjYWdR
WSlienJGYW8lcyZAKT1LZCgmZTNBWTdZejNUb3ZHOWw0aXMmbmc9SzFuY0l7KXlZYG0wc1AqemNK
Mgp6KHx6MFFTKkxjPi0waWtaeUo0TWQrUXpZMnd2TFQ8eDBpNXdyQnVfNDRQOSMjQTU/V01BK2RJ
K0hAP2BRezdQQT8KelkmRz12Xl9zU3wtTyNwbnRKTXZ5V0F2UWVsYX1GX0VsbV8oXl9fQzArQ31F
eCteKkBCX3FWaSVgYlNhTUR+S1hECnpeX3NwXygoQnN4ZSRUWEBuNXwqM2NVb1QxbTJ5R2ItcU9s
P1JUclVeaXVGPmx0WiEpa2ZgaiMjdyQjRyZiVCp5ZQp6LWQ0eyg4Pz1VRip+WHorWSZPa2FGUzAk
NzUtaUl0bDlYSUtrMiNfdE0zaHpZaVBAUmhSeFZSJWR1eXs9REspZ3MKelZuc0JiSUlLNW5NYldD
LSFPP2p9enVnJTVPS0ooSmojSVpwem1gZW9PQ3xOfXVHYlF5YChVQCp7YGwwYW5YUl5NCnpIbDV6
NFo1X3YpVDlXaSo1XjhyRyEjKl5mYkR7OFVhM0MlZmJKfFpUbW8rVmMre09LdXBTSHhwblpCNkwt
QFU4Owp6eTZCKz4/emd+VU0jMmw2ak9lSjNZTHk9cllhaDlIYGk1cWtod1l3WXlGPU9sTz41e01p
VjxadnMlWDFnbTdRSFoKenFRa25RUDJEdVIhSisxeyhiXlRHTCM2QU93JFhJalJ5WDFmSWt0TEUm
MXstb0N5PSgkSn5vM1Q5QDw4P2J6bkc7CnpPPFJtPztSYktfOUAqdi1xYSNYLUpvX1dse3htTHk3
JT5lfDhPdl88WVVaJmUjPGclVWo7TDJ9RnVhKHBWc0VvOwp6X25iJEQ/Ujs4M0g1Km5TaDtWaS1L
N1pYbSshUDtHIVVlUUBfMnklPGI9b21vbzBlVmRiUkx7S0NDZlQkbmBOKXwKenFTezYkbCZ2NlUl
WnhpP2VsTlk0LT9eKFFaODI0UygpK202Y0ZhQkYpVW13ZHkrRGBRYCkxJmM/RE1aSnIxTVhvCnpz
JUpsbXlUPTw9ejE/a15idWtPcCNSY2spLUVLTzFfck1aITxnc1grM0FjNHB3elNsfXJ6fUx3cTI2
Ml9HY1koLQp6JXRgO0tBKHU0bUp1WihMPEJMeVFVWkhRIXJ9TEdIZFpySmkjUE9PVFZsMC1IOUhF
aFZRNmk1fGQocVgyZV9SWjgKelIyZF47eGloVmJUKEd8bSkwUVpsPUxRcXJqJnc2cit1ZnRHSkJr
P1ltP3VxbTV2TFg7O1pkaUtOR0srfXhQQlM0Cno9Sk4tZTA2eENOdj9gYjN7M01tbT4kLVlvQ0c9
LThmSzJTYDRRcFBLaiFTdmJvKlpMN2hEO0VAdkBTbGIhTCZfVAp6Yz1sdH1UWVU3N01qaE9AUXRY
TW8+T1kqNWNtcFRoJmcpT0AranZOZWttU1gwdSQteGJUVX5BX0U2UGh7RFZ6Q0MKekk9YDQtX3xE
djRRbEY9O0Q9KUE4ZC1ibT98TTwlR216UkN2e2AhcWZ7QEtsa1lYMVhvKSkhNlhaQ0k8OChLMV8m
CnokOEVkaUVva2FaeU01eUhfSnBgXkx0ODJETVJlSk9HSHdxMCMmOFc7KigmUUZZNipFUmJYYHA+
RGlnfWw/cjZhWAp6SG5mTmt3OEZFV1R+RnRHQ0FFSjtiX3RLP3FIZCFsIWsmTTBKK0RlUSViVCRU
O3E7UihBdz9Yez0wIVdJK2xKPF4Kem9DeHNlWi1+e0syPUhBZ3o9JjFCcDFkSzczXkYzeWprcThx
KCNLdUtBODE1WUgmQUg8NyEwPCp5QyVCJUg9ZTRgCnptKmIqTVQ2RkhvaSMlVm1qMmImb3h1Z1FH
emxLcCNTKDdVbHFuQXt1a2Q8VEo1STR9TU9ObWJPKTEwX1Y/ZyNJWgp6a2l6NztPQHc+bndQKz9e
QVU2MTxASUpkSHkzTzNTK0pEZE1IcXdxUD5WZVc7WXh2Qnw5azZeOFZ4XnB6YnVCOTEKeiM5V2d2
PSpGRnhVQm99Q3ZEPmg2bTk7fHVXWXY0UmRHXjYqJlgxY01Nb2w/az8jSy1UOTZhNGpOYkljPHE/
c21TCno9QGQwXmhhVXZeSCkkZTdzbkJUYDREIU1AcThgJjBUPEhJRFd3NT98SSRHWnp4RFN3e0kk
UW04Zjh4MW81X1ZpbAp6WiskREZMYGNValplYE1sLTJONjJSP0B8JGdfMnZ+JVdCc2B7fEMkSXtR
ZGp0Kj0/IUVoWCVBIV9ZSXZgbUViMlAKemAjKlR7QXBTP0stKEwzZW1HV090O01waFo/dTRlRlBp
UWUpPGZ4XitaXmF8Vmw8fXsrcS1SQTk+c0k3azdMeV8yCnpUSGFoMWxpaSloJEVRY2o2TTNvOVUl
eDVzYmZvJStlXm9jM00pRnZmUCkwdEhWYW5APEppX0huQ1hxdUJsZjMkLQp6ZlhSd0phZXVKTGlK
NFloNj4wYygqRSFNfmc1K1MqZ3RiMXdWYDdIbiVNQiRhbU1+ekRZVW5MPXE8NkghZSpvVkUKQm1l
PkZRCgpsaXRlcmFsIDAKSGNtVj9kMDAwMDEKCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0
QVBJL2Jhc2ljSVRQRGF0YWJhc2UuZGItc2htIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9iYXNpY0lU
UERhdGFiYXNlLmRiLXNobQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mZTlhYzI4NDVlY2E2ZmU2ZGE4YTYzY2QwOTZk
OWNmOWUyNGVjZTEwCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAzMjc2OAp6Y21lSXVBcjYycjM8
WGVUU2F5UzYwPVo9Ty0wfGtQMiZmdUAhNkR1XnppRkNeN3c1NU1OKTloUVlWM1drNzlhMlAKeikl
OGczSDMwJHkyb05BWmZCKnBrMVBCbHlLITUtTjB0NSZVQVY3Y3MwUmpYRjVGa0srMDA5Qzcyb05B
WmZCKnBrCnoxUEJseUshNS1OMHQ1JlVBVjdjczBSalhGNUZrSyswMDlDNzJvTkFaZkIqcGsxUEJs
eUshNS1OMHQ1JlVBVjdjcwp3MFJqWEY1RmtLKzAwOUM3Mm9OQVpmQipwazFQQmx5SyE1LU4wdDUm
VUFWN2NzMFJqWEY1Y3E/QDRkazVgUXZkKH0KCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKZGlmZiAt
LWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvYmFzaWNJVFBEYXRhYmFzZS5kYi13YWwgYi9Ub29s
cy9UZXN0V2ViS2l0QVBJL2Jhc2ljSVRQRGF0YWJhc2UuZGItd2FsCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU2OWRl
MjliYjJkMWQ2NDM0YjhiMjlhZTc3NWFkOGMyZTQ4YzUzOTEK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>398647</attachid>
            <date>2020-05-06 12:52:49 -0700</date>
            <delta_ts>2020-05-06 13:59:47 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-211520-20200506125248.patch</filename>
            <type>text/plain</type>
            <size>15906</size>
            <attacher name="Kate Cheney">katherine_cheney</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYxMTc1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGI4NjlhMDJiMTFkMzhhMWUz
MjdmMzYyODdmZGVkN2I2NWE3M2ZhNzEuLjU3NWQ4YzJiOGQ1MDNkZWQyMzJkYjBhNDMyOTk2MmNj
MGFkMjA2MmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMjAtMDUtMDYgIEthdGUgQ2hl
bmV5ICA8a2F0aGVyaW5lX2NoZW5leUBhcHBsZS5jb20+CisKKyAgICAgICAgUmVzb3VyY2VMb2Fk
U3RhdGlzdGljcyBkYXRhIHN1bW1hcnkgY2FsbCBzaG91bGQgY3JlYXRlIGEgd2ViIHByb2Nlc3Mg
cG9vbCBpZiBvbmUgZG9lc24ndCBleGlzdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjExNTIwCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81OTg2OTYx
OT4KKworICAgICAgICBSZXZpZXdlZCBieSBDaHJpcyBEdW1lei4KKworICAgICAgICBFbnN1cmVz
IHRoYXQgYSBwcm9jZXNzIHBvb2wgYW5kIG5ldHdvcmsgcHJvY2VzcyBleGlzdCB3aGVuIHJlcXVl
c3RpbmcKKyAgICAgICAgcmVzb3VyY2UgbG9hZCBzdGF0aXN0aWNzIGRhdGEuCisKKyAgICAgICAg
KiBVSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5jcHA6CisgICAgICAgIChX
ZWJLaXQ6OldlYnNpdGVEYXRhU3RvcmU6OmdldFJlc291cmNlTG9hZFN0YXRpc3RpY3NEYXRhU3Vt
bWFyeSk6CisKIDIwMjAtMDUtMDUgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgog
CiAgICAgICAgIFJlbW92ZSBMZWdhY3lTY2hlbWVSZWdpc3RyeTo6Y2FuU2VydmljZVdvcmtlcnNI
YW5kbGVVUkxTY2hlbWUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNp
dGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
c2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5jcHAKaW5kZXggZTM2Mzc2YzVlZDJmMjk3YWRhNDQx
NTBhY2I1MDM5NzBlYTFjMmRjOC4uZDgwYmEwM2JmY2JhMjAxN2Y0ZTY5YzE4YjYxYjg5N2FmMjYy
Nzc4MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vi
c2l0ZURhdGFTdG9yZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURh
dGEvV2Vic2l0ZURhdGFTdG9yZS5jcHAKQEAgLTE1NDAsMTIgKzE1NDAsMTAgQEAgdm9pZCBXZWJz
aXRlRGF0YVN0b3JlOjpnZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGF0YVN1bW1hcnkoQ29tcGxl
dGlvbkhhbmRsZXI8dm8KIAogICAgIFJlZlB0cjxDYWxsYmFja0FnZ3JlZ2F0b3I+IGNhbGxiYWNr
QWdncmVnYXRvciA9IGFkb3B0UmVmKG5ldyBDYWxsYmFja0FnZ3JlZ2F0b3IoV1RGTW92ZShjb21w
bGV0aW9uSGFuZGxlcikpKTsKIAotICAgIGZvciAoYXV0byYgcHJvY2Vzc1Bvb2wgOiBwcm9jZXNz
UG9vbHMoKSkgewotICAgICAgICBpZiAoYXV0byogcHJvY2VzcyA9IHByb2Nlc3NQb29sLT5uZXR3
b3JrUHJvY2VzcygpKSB7Ci0gICAgICAgICAgICBwcm9jZXNzLT5nZXRSZXNvdXJjZUxvYWRTdGF0
aXN0aWNzRGF0YVN1bW1hcnkobV9zZXNzaW9uSUQsIFtjYWxsYmFja0FnZ3JlZ2F0b3IgPSBjYWxs
YmFja0FnZ3JlZ2F0b3IuY29weVJlZigpXShWZWN0b3I8V2ViUmVzb3VyY2VMb2FkU3RhdGlzdGlj
c1N0b3JlOjpUaGlyZFBhcnR5RGF0YT4mJiBkYXRhKSB7Ci0gICAgICAgICAgICAgICAgY2FsbGJh
Y2tBZ2dyZWdhdG9yLT5hZGRSZXN1bHQoV1RGTW92ZShkYXRhKSk7Ci0gICAgICAgICAgICB9KTsK
LSAgICAgICAgfQorICAgIGZvciAoYXV0byYgcHJvY2Vzc1Bvb2wgOiBlbnN1cmVQcm9jZXNzUG9v
bHMoKSkgeworICAgICAgICBwcm9jZXNzUG9vbC0+ZW5zdXJlTmV0d29ya1Byb2Nlc3ModGhpcyku
Z2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc0RhdGFTdW1tYXJ5KG1fc2Vzc2lvbklELCBbY2FsbGJh
Y2tBZ2dyZWdhdG9yID0gY2FsbGJhY2tBZ2dyZWdhdG9yLmNvcHlSZWYoKSwgcHJvY2Vzc1Bvb2xd
KFZlY3RvcjxXZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmU6OlRoaXJkUGFydHlEYXRhPiYm
IGRhdGEpIHsKKyAgICAgICAgICAgIGNhbGxiYWNrQWdncmVnYXRvci0+YWRkUmVzdWx0KFdURk1v
dmUoZGF0YSkpOworICAgICAgICB9KTsKICAgICB9CiB9CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL0No
YW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCBmOWZmYzhhZDAwOWJlOGMyNzIwN2ExYjM0
OWUxMDBlYTMzZWYwYmEzLi5lNjA0Njg1MGQ0ZThmMjMwODI2NjIyN2MxMmU3ZDcyNjEyMzdkNTdl
IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMjQgQEAKKzIwMjAtMDUtMDYgIEthdGUgQ2hlbmV5ICA8a2F0aGVyaW5lX2NoZW5leUBh
cHBsZS5jb20+CisKKyAgICAgICAgUmVzb3VyY2VMb2FkU3RhdGlzdGljcyBkYXRhIHN1bW1hcnkg
Y2FsbCBzaG91bGQgY3JlYXRlIGEgd2ViIHByb2Nlc3MgcG9vbCBpZiBvbmUgZG9lc24ndCBleGlz
dAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjExNTIw
CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81OTg2OTYxOT4KKworICAgICAgICBSZXZpZXdlZCBi
eSBDaHJpcyBEdW1lei4KKworICAgICAgICBBZGRlZCBBUEkgdGVzdCBjb3ZlcmFnZS4KKworICAg
ICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvUmVzb3VyY2VM
b2FkU3RhdGlzdGljcy5tbToKKyAgICAgICAgUmVtb3ZlZCBzdHJheSBjb21tZW50IGZyb20gcHJl
dmlvdXMgdGVzdC4KKworICAgICAgICAoVEVTVCk6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9i
YXNpY0lUUERhdGFiYXNlLmRiOiBBZGRlZC4KKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL2Jhc2lj
SVRQRGF0YWJhc2UuZGItc2htOiBBZGRlZC4KKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL2Jhc2lj
SVRQRGF0YWJhc2UuZGItd2FsOiBBZGRlZC4KKyAgICAgICAgTmV3IGRhdGFiYXNlIHJlc291cmNl
IHdpdGggMiBlbnRyaWVzOiBhcHBsZS5jb20gYW5kIHdlYmtpdC5vcmcsIHdpdGgKKyAgICAgICAg
d2Via2l0Lm9yZyByZWdpc3RlcmVkIGFzIGEgc3ViZnJhbWUgb2YgYXBwbGUuY29tCisKIDIwMjAt
MDUtMDUgIEFsZXhleSBTaHZheWthICA8c2h2YWlrYWxlc2hAZ21haWwuY29tPgogCiAgICAgICAg
IE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcgaXMgbm90IHNwZWMtcGVyZmVjdApkaWZmIC0tZ2l0
IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2ogYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRBUEkueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagppbmRleCBhNGI1YzgxMjQ0ODY5MDA3MjQxNDE5MzRlOTM5YmU4ODI3NGZmOTlm
Li42OTdiNzYwN2IxNWFmMjlkNmU4NDhmY2NlM2FkMWRiYTQ0NDJjZDM0IDEwMDY0NAotLS0gYS9U
b29scy9UZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRBUEkueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
agorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRBUEkueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagpAQCAtMjU5LDYgKzI1OSw5IEBACiAJCTQ5MDlFRTNBMkQwOTQ4MEM4ODk4MkQ1
NiAvKiBNYXJrYWJsZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBFQzc5RjE2OEJFNDU0RTU3OUU0MTdCMDUgLyogTWFya2FibGUuY3BwICovOyB9Owog
CQk0OTcxQjExODI0NTFGMjlBMDA5Njk5NEQgLyogaW5jb3JyZWN0Q3JlYXRlVGFibGVTY2hlbWEu
ZGIgaW4gQ29weSBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NDk3MUIxMTcyNDUxRjI3ODAwOTY5OTREIC8qIGluY29ycmVjdENyZWF0ZVRhYmxlU2NoZW1hLmRi
ICovOyB9OwogCQk0OTcxQjEyMDI0NTNBODhDMDA5Njk5NEQgLyogbWlzc2luZ1RvcEZyYW1lVW5p
cXVlUmVkaXJlY3RTYW1lU2l0ZVN0cmljdFRhYmxlU2NoZW1hLmRiIGluIENvcHkgUmVzb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5NzFCMTFGMjQ1M0E4N0YwMDk2
OTk0RCAvKiBtaXNzaW5nVG9wRnJhbWVVbmlxdWVSZWRpcmVjdFNhbWVTaXRlU3RyaWN0VGFibGVT
Y2hlbWEuZGIgKi87IH07CisJCTQ5NzFCMTJGMjQ2MjNBM0IwMDk2OTk0RCAvKiBiYXNpY0lUUERh
dGFiYXNlLmRiLXNobSBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNDk3MUIxMkQyNDYyM0EzQjAwOTY5OTREIC8qIGJhc2ljSVRQRGF0YWJhc2UuZGItc2ht
ICovOyB9OworCQk0OTcxQjEzMDI0NjIzQTNDMDA5Njk5NEQgLyogYmFzaWNJVFBEYXRhYmFzZS5k
Yi13YWwgaW4gUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ5
NzFCMTJFMjQ2MjNBM0IwMDk2OTk0RCAvKiBiYXNpY0lUUERhdGFiYXNlLmRiLXdhbCAqLzsgfTsK
KwkJNDk3MUIxMzEyNDYyM0E0RjAwOTY5OTREIC8qIGJhc2ljSVRQRGF0YWJhc2UuZGIgaW4gQ29w
eSBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDk3MUIxMkMy
NDYyMzlEMzAwOTY5OTREIC8qIGJhc2ljSVRQRGF0YWJhc2UuZGIgKi87IH07CiAJCTQ5ODk3RDZD
MjQxRkU5RTQwMEVDRjE1MyAvKiBpbi1hcHAtYnJvd3Nlci1wcml2YWN5LWxvY2FsLWZpbGUuaHRt
bCBpbiBDb3B5IFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0
OUQ3RkJBNzI0MUZERERBMDBBQjY3RkEgLyogaW4tYXBwLWJyb3dzZXItcHJpdmFjeS1sb2NhbC1m
aWxlLmh0bWwgKi87IH07CiAJCTQ5QUVFRjZEMjQwNzM1OUQwMEM4N0U0QyAvKiBJbkFwcEJyb3dz
ZXJQcml2YWN5Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNDlBRUVGNkIyNDA3MzU4NjAwQzg3RTRDIC8qIEluQXBwQnJvd3NlclByaXZhY3kubW0gKi87
IH07CiAJCTRCRkRGRkE3MTMxNDc3NkMwMDYxRjI0QiAvKiBIaXRUZXN0UmVzdWx0Tm9kZUhhbmRs
ZV9CdW5kbGUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNEJGREZGQTYxMzE0Nzc2QzAwNjFGMjRCIC8qIEhpdFRlc3RSZXN1bHROb2RlSGFuZGxlX0J1
bmRsZS5jcHAgKi87IH07CkBAIC0xMjU2LDYgKzEyNTksNyBAQAogCQkJCTJFMTRBNTI5MUQzRkU5
NkIwMDEwRjM1QiAvKiBhdXRvcGxheWluZy12aWRlby13aXRoLWF1ZGlvLmh0bWwgaW4gQ29weSBS
ZXNvdXJjZXMgKi8sCiAJCQkJRjQxQUI5QTAxRUY0Njk2QjAwODNGQTA4IC8qIGJhY2tncm91bmQt
aW1hZ2UtbGluay1hbmQtaW5wdXQuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLywKIAkJCQk0NjRD
NzY0RDIzMERGODVDMDBBRkIwMjAgLyogQmFkU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbnMtNC5z
cWxpdGUzIGluIENvcHkgUmVzb3VyY2VzICovLAorCQkJCTQ5NzFCMTMxMjQ2MjNBNEYwMDk2OTk0
RCAvKiBiYXNpY0lUUERhdGFiYXNlLmRiIGluIENvcHkgUmVzb3VyY2VzICovLAogCQkJCTQ2RkFD
Rjc0MjNFODg0MjMwMEE5RUJDNiAvKiBiZWZvcmV1bmxvYWQtc2xvdy5odG1sIGluIENvcHkgUmVz
b3VyY2VzICovLAogCQkJCTQ2QzNBRUIzMjNEMEU1MjkwMDFCMDY4MCAvKiBiZWZvcmV1bmxvYWQu
aHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLywKIAkJCQkyREU3MUIwMDFENDlDM0VEMDA5MDQwOTQg
LyogYmxpbmtpbmctZGl2Lmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8sCkBAIC0xODkxLDYgKzE4
OTUsOSBAQAogCQk0NkZBQ0Y3MzIzRTg4M0VFMDBBOUVCQzYgLyogYmVmb3JldW5sb2FkLXNsb3cu
aHRtbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHRleHQuaHRtbDsgcGF0aCA9ICJiZWZvcmV1bmxvYWQtc2xvdy5odG1s
Ijsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDk3MUIxMTcyNDUxRjI3ODAwOTY5OTRE
IC8qIGluY29ycmVjdENyZWF0ZVRhYmxlU2NoZW1hLmRiICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gZmlsZTsgcGF0aCA9IGluY29ycmVjdENyZWF0ZVRh
YmxlU2NoZW1hLmRiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0OTcxQjExRjI0NTNB
ODdGMDA5Njk5NEQgLyogbWlzc2luZ1RvcEZyYW1lVW5pcXVlUmVkaXJlY3RTYW1lU2l0ZVN0cmlj
dFRhYmxlU2NoZW1hLmRiICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gZmlsZTsgbmFtZSA9IG1pc3NpbmdUb3BGcmFtZVVuaXF1ZVJlZGlyZWN0U2FtZVNp
dGVTdHJpY3RUYWJsZVNjaGVtYS5kYjsgcGF0aCA9IFRlc3RzL1dlYktpdENvY29hL21pc3NpbmdU
b3BGcmFtZVVuaXF1ZVJlZGlyZWN0U2FtZVNpdGVTdHJpY3RUYWJsZVNjaGVtYS5kYjsgc291cmNl
VHJlZSA9IFNPVVJDRV9ST09UOyB9OworCQk0OTcxQjEyQzI0NjIzOUQzMDA5Njk5NEQgLyogYmFz
aWNJVFBEYXRhYmFzZS5kYiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IGZpbGU7IHBhdGggPSBiYXNpY0lUUERhdGFiYXNlLmRiOyBzb3VyY2VUcmVlID0g
U09VUkNFX1JPT1Q7IH07CisJCTQ5NzFCMTJEMjQ2MjNBM0IwMDk2OTk0RCAvKiBiYXNpY0lUUERh
dGFiYXNlLmRiLXNobSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IGZpbGU7IHBhdGggPSAiYmFzaWNJVFBEYXRhYmFzZS5kYi1zaG0iOyBzb3VyY2VUcmVl
ID0gU09VUkNFX1JPT1Q7IH07CisJCTQ5NzFCMTJFMjQ2MjNBM0IwMDk2OTk0RCAvKiBiYXNpY0lU
UERhdGFiYXNlLmRiLXdhbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IGZpbGU7IHBhdGggPSAiYmFzaWNJVFBEYXRhYmFzZS5kYi13YWwiOyBzb3VyY2VU
cmVlID0gU09VUkNFX1JPT1Q7IH07CiAJCTQ5QUVFRjY4MjQwNzI3NkYwMEM4N0U0QyAvKiBJbmZv
LnBsaXN0ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dC5wbGlzdC54bWw7IHBhdGggPSBJbmZvLnBsaXN0OyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0OUFFRUY2QjI0MDczNTg2MDBDODdFNEMgLyogSW5B
cHBCcm93c2VyUHJpdmFjeS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0
aCA9IEluQXBwQnJvd3NlclByaXZhY3kubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTQ5RDdGQkE3MjQxRkREREEwMEFCNjdGQSAvKiBpbi1hcHAtYnJvd3Nlci1wcml2YWN5LWxvY2Fs
LWZpbGUuaHRtbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQuaHRtbDsgcGF0aCA9ICJpbi1hcHAtYnJvd3Nlci1wcml2YWN5LWxvY2FsLWZpbGUu
aHRtbCI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC00MDU3LDYgKzQwNjQsOSBAQAog
CQkJCUM5NTk4NEYzMUUzNkJDNTUwMDJDMEQ0NSAvKiBhdXRvcGxheS1uby1hdWRpby1jaGVjay5o
dG1sICovLAogCQkJCUM5OUI2NzVBMUUzOTcxRkMwMEZDNkM4MCAvKiBhdXRvcGxheS13aXRoLWNv
bnRyb2xzLmh0bWwgKi8sCiAJCQkJQzk5QkRGODgxRTgwOTdFMzAwQzcxNzBFIC8qIGF1dG9wbGF5
LXplcm8tdm9sdW1lLWNoZWNrLmh0bWwgKi8sCisJCQkJNDk3MUIxMkMyNDYyMzlEMzAwOTY5OTRE
IC8qIGJhc2ljSVRQRGF0YWJhc2UuZGIgKi8sCisJCQkJNDk3MUIxMkQyNDYyM0EzQjAwOTY5OTRE
IC8qIGJhc2ljSVRQRGF0YWJhc2UuZGItc2htICovLAorCQkJCTQ5NzFCMTJFMjQ2MjNBM0IwMDk2
OTk0RCAvKiBiYXNpY0lUUERhdGFiYXNlLmRiLXdhbCAqLywKIAkJCQk0NkZBQ0Y3MzIzRTg4M0VF
MDBBOUVCQzYgLyogYmVmb3JldW5sb2FkLXNsb3cuaHRtbCAqLywKIAkJCQk0NkMzQUVCMjIzRDBF
NTBGMDAxQjA2ODAgLyogYmVmb3JldW5sb2FkLmh0bWwgKi8sCiAJCQkJN0M0ODZCQTAxQUExMjU0
QjAwM0Y2RjlCIC8qIGJ1bmRsZS1maWxlLmh0bWwgKi8sCkBAIC00NTg0LDYgKzQ1OTQsOCBAQAog
CQkJaXNhID0gUEJYUmVzb3VyY2VzQnVpbGRQaGFzZTsKIAkJCWJ1aWxkQWN0aW9uTWFzayA9IDIx
NDc0ODM2NDc7CiAJCQlmaWxlcyA9ICgKKwkJCQk0OTcxQjEyRjI0NjIzQTNCMDA5Njk5NEQgLyog
YmFzaWNJVFBEYXRhYmFzZS5kYi1zaG0gaW4gUmVzb3VyY2VzICovLAorCQkJCTQ5NzFCMTMwMjQ2
MjNBM0MwMDk2OTk0RCAvKiBiYXNpY0lUUERhdGFiYXNlLmRiLXdhbCBpbiBSZXNvdXJjZXMgKi8s
CiAJCQkpOwogCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CiAJCX07
CmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1Jlc291
cmNlTG9hZFN0YXRpc3RpY3MubW0gYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENv
Y29hL1Jlc291cmNlTG9hZFN0YXRpc3RpY3MubW0KaW5kZXggM2RiODE4MDIyNWZmYjE0YmQ2YmNj
MGI1ZTZjZjY4ZjA4N2U1MzU2ZC4uZDNhNjNhNzAzYjU4NzliZjViMzg1ZGI1MjNjZjI3NTQ4OTZk
MDJmNSAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9S
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzLm1tCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMv
V2ViS2l0Q29jb2EvUmVzb3VyY2VMb2FkU3RhdGlzdGljcy5tbQpAQCAtMTQ3Nyw3ICsxNDc3LDYg
QEAgVEVTVChSZXNvdXJjZUxvYWRTdGF0aXN0aWNzLCBNaWdyYXRlRGF0YUZyb21JbmNvcnJlY3RD
cmVhdGVUYWJsZVNjaGVtYSkKICAgICAgICAgRVhQRUNUX0VRKHN0YXRpY19jYXN0PGludD4oW3Ro
aXJkUGFydHlEYXRhIGNvdW50XSksIDEpOwogICAgICAgICBOU0VudW1lcmF0b3IgKnRoaXJkUGFy
dHlEb21haW5zID0gW3RoaXJkUGFydHlEYXRhIG9iamVjdEVudW1lcmF0b3JdOwogCi0gICAgICAg
IC8vIGV2aWwzCiAgICAgICAgIF9XS1Jlc291cmNlTG9hZFN0YXRpc3RpY3NUaGlyZFBhcnR5ICp0
aGlyZFBhcnR5ID0gW3RoaXJkUGFydHlEb21haW5zIG5leHRPYmplY3RdOwogICAgICAgICBFWFBF
Q1RfV0tfU1RSRVEodGhpcmRQYXJ0eS50aGlyZFBhcnR5RG9tYWluLCBAIndlYmtpdC5vcmciKTsK
IApAQCAtMTU1MCw2ICsxNTQ5LDQ0IEBAIFRFU1QoUmVzb3VyY2VMb2FkU3RhdGlzdGljcywgTWln
cmF0ZURhdGFGcm9tTWlzc2luZ1RvcEZyYW1lVW5pcXVlUmVkaXJlY3RTYW1lU2l0CiAgICAgVGVz
dFdlYktpdEFQSTo6VXRpbDo6cnVuKCZkb25lRmxhZyk7CiB9CiAKK1RFU1QoUmVzb3VyY2VMb2Fk
U3RhdGlzdGljcywgQ2FuQWNjZXNzRGF0YVN1bW1hcnlXaXRoTm9Qcm9jZXNzUG9vbCkKK3sKKyAg
ICBhdXRvIGRlZmF1bHRGaWxlTWFuYWdlciA9IFtOU0ZpbGVNYW5hZ2VyIGRlZmF1bHRNYW5hZ2Vy
XTsKKyAgICBfV0tXZWJzaXRlRGF0YVN0b3JlQ29uZmlndXJhdGlvbiAqZGF0YVN0b3JlQ29uZmln
dXJhdGlvbiA9IFtbX1dLV2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb24gbmV3XSBhdXRvcmVs
ZWFzZV07CisgICAgYXV0byAqZGF0YVN0b3JlID0gW1tbV0tXZWJzaXRlRGF0YVN0b3JlIGFsbG9j
XSBfaW5pdFdpdGhDb25maWd1cmF0aW9uOmRhdGFTdG9yZUNvbmZpZ3VyYXRpb25dIGF1dG9yZWxl
YXNlXTsKKyAgICBOU1VSTCAqaXRwUm9vdFVSTCA9IFtbZGF0YVN0b3JlIF9jb25maWd1cmF0aW9u
XSBfcmVzb3VyY2VMb2FkU3RhdGlzdGljc0RpcmVjdG9yeV07CisgICAgTlNVUkwgKmZpbGVVUkwg
PSBbaXRwUm9vdFVSTCBVUkxCeUFwcGVuZGluZ1BhdGhDb21wb25lbnQ6QCJvYnNlcnZhdGlvbnMu
ZGIiXTsKKyAgICBbZGVmYXVsdEZpbGVNYW5hZ2VyIHJlbW92ZUl0ZW1BdFBhdGg6aXRwUm9vdFVS
TC5wYXRoIGVycm9yOm5pbF07CisgICAgRVhQRUNUX0ZBTFNFKFtkZWZhdWx0RmlsZU1hbmFnZXIg
ZmlsZUV4aXN0c0F0UGF0aDppdHBSb290VVJMLnBhdGhdKTsKKworICAgIC8vIExvYWQgYSBhIHBy
ZS1zZWVkZWQgSVRQIGRhdGFiYXNlLgorICAgIFtkZWZhdWx0RmlsZU1hbmFnZXIgY3JlYXRlRGly
ZWN0b3J5QXRVUkw6aXRwUm9vdFVSTCB3aXRoSW50ZXJtZWRpYXRlRGlyZWN0b3JpZXM6WUVTIGF0
dHJpYnV0ZXM6bmlsIGVycm9yOm5pbF07CisgICAgTlNVUkwgKm5ld0ZpbGVVUkwgPSBbW05TQnVu
ZGxlIG1haW5CdW5kbGVdIFVSTEZvclJlc291cmNlOkAiYmFzaWNJVFBEYXRhYmFzZSIgd2l0aEV4
dGVuc2lvbjpAImRiIiBzdWJkaXJlY3Rvcnk6QCJUZXN0V2ViS2l0QVBJLnJlc291cmNlcyJdOwor
ICAgIEVYUEVDVF9UUlVFKFtkZWZhdWx0RmlsZU1hbmFnZXIgZmlsZUV4aXN0c0F0UGF0aDpuZXdG
aWxlVVJMLnBhdGhdKTsKKyAgICBbZGVmYXVsdEZpbGVNYW5hZ2VyIGNvcHlJdGVtQXRQYXRoOm5l
d0ZpbGVVUkwucGF0aCB0b1BhdGg6ZmlsZVVSTC5wYXRoIGVycm9yOm5pbF07CisgICAgRVhQRUNU
X1RSVUUoW2RlZmF1bHRGaWxlTWFuYWdlciBmaWxlRXhpc3RzQXRQYXRoOmZpbGVVUkwucGF0aF0p
OworICAgIFtkYXRhU3RvcmUgX3NldFJlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVkOllFU107
CisKKyAgICBzdGF0aWMgYm9vbCBkb25lRmxhZyA9IGZhbHNlOworICAgIFtkYXRhU3RvcmUgX2dl
dFJlc291cmNlTG9hZFN0YXRpc3RpY3NEYXRhU3VtbWFyeTpedm9pZChOU0FycmF5PF9XS1Jlc291
cmNlTG9hZFN0YXRpc3RpY3NUaGlyZFBhcnR5ICo+ICp0aGlyZFBhcnR5RGF0YSkKKyAgICB7Cisg
ICAgICAgIEVYUEVDVF9FUShzdGF0aWNfY2FzdDxpbnQ+KFt0aGlyZFBhcnR5RGF0YSBjb3VudF0p
LCAxKTsKKyAgICAgICAgTlNFbnVtZXJhdG9yICp0aGlyZFBhcnR5RG9tYWlucyA9IFt0aGlyZFBh
cnR5RGF0YSBvYmplY3RFbnVtZXJhdG9yXTsKKworICAgICAgICBfV0tSZXNvdXJjZUxvYWRTdGF0
aXN0aWNzVGhpcmRQYXJ0eSAqdGhpcmRQYXJ0eSA9IFt0aGlyZFBhcnR5RG9tYWlucyBuZXh0T2Jq
ZWN0XTsKKyAgICAgICAgRVhQRUNUX1dLX1NUUkVRKHRoaXJkUGFydHkudGhpcmRQYXJ0eURvbWFp
biwgQCJ3ZWJraXQub3JnIik7CisKKyAgICAgICAgTlNFbnVtZXJhdG9yICplbnVtZXJhdG9yID0g
W3RoaXJkUGFydHkudW5kZXJGaXJzdFBhcnRpZXMgb2JqZWN0RW51bWVyYXRvcl07CisgICAgICAg
IF9XS1Jlc291cmNlTG9hZFN0YXRpc3RpY3NGaXJzdFBhcnR5ICpmaXJzdFBhcnR5ID0gW2VudW1l
cmF0b3IgbmV4dE9iamVjdF07CisKKyAgICAgICAgRVhQRUNUX1dLX1NUUkVRKGZpcnN0UGFydHku
Zmlyc3RQYXJ0eURvbWFpbiwgQCJhcHBsZS5jb20iKTsKKworICAgICAgICBkb25lRmxhZyA9IHRy
dWU7CisgICAgfV07CisKKyAgICBUZXN0V2ViS2l0QVBJOjpVdGlsOjpydW4oJmRvbmVGbGFnKTsK
K30KKwogVEVTVChSZXNvdXJjZUxvYWRTdGF0aXN0aWNzLCBTdG9yZVN1c3BlbnNpb24pCiB7CiAg
ICAgYXV0byAqc2hhcmVkUHJvY2Vzc1Bvb2wgPSBbV0tQcm9jZXNzUG9vbCBfc2hhcmVkUHJvY2Vz
c1Bvb2xdOwpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9iYXNpY0lUUERhdGFiYXNl
LmRiIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9iYXNpY0lUUERhdGFiYXNlLmRiCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
Ljc0ZmEyOGI3MDhmZGRmNGNkNzQ1NjgxMTQyNGQ3NTdjMmE0MmY1OGEKR0lUIGJpbmFyeSBwYXRj
aApsaXRlcmFsIDEwNjQ5Ngp6Y21lSSoraXgzTDlsLUchPVZDalRJQEBtSj8hSSlFZVd9JEBnY2Mt
dEsqaEJ1aSZje313IWBpTUJBVkVmKVdxPioKeiRDSStGdkpaOEdnbX5zfTtETnRAfDl9Vm4xRD1w
VGheTX0rZ3d6RzhvRWg4a29TRUBWWUhlNnp6RSpESUlwQHN6CnplYUBNNG5OJkBFcmBtUSo/WkMy
KzRNJSVWU3lOSWU8QD1oWkNgdzl2ekFaalN1WFhYbXtQNXRHX151OXI5KF5Bawp6TzVhay15PkRw
P1pzT2QoKyFKcFB6RGEyfkttWSoqNUlfSXsxUTAqfjBSI3wwMEQoJnRjeCVicXkjTHB9Y3V4WW4K
ekZQOW4/ZyhIOWYwdGdfMDAwSWFnZkIqc3JBYkB9KnU8OVBJTnBFcTAwMElhZ2ZCKnNyQWI8YkAy
cTFzfTB5OEdTCnp7KHJfQWx5REcwMDA5SUxLbVkqKjVJX0l7MVEzVzJWRS1TMSFkbk8rZkIqc3JB
YjxiQDJxMXN9MHRuMlEwUT4oTAp6WWYhPkwwMDlJTEttWSoqNUlfSXsxUTArVkxWKjIkMVBYNTxm
QipzckFiPGJAMnExc30wdGdeNVYqPjh9S2I4QkYKemxLWj4oIVYzV2U1SV9JezFRMCp+MFIjfDAw
MDlMNCo5RzI2dHQjKVI4OHRJX3tsZVRvWUNIRVZgfCNEUFRrNUtFCnpkd2p8YElxOGA5biU0MkZT
NCQkUVJQSnZ8P3NNXmw3WGs8JWZCKnNyQWI8YkAycTFzfTB0ajRMZm9wVGBzTjwmcgp6c2c9M2cr
NENtPXtRTGhhK3BKVV4wUiN8MDAwOUlMS21ZKio1SV9LZDNrJElTemMzWEU1a0xSfDFRMCp+MFIj
fDAKejAwOUlMeFV2SDV8RjNNKlFFPnppS21ZKio1SV9JezFRMCp+MFIlMkEhMmJXalIzdDxJMFIj
fDAwMDlJTEttWSoqCno1SjJGezNiXn0hSFRPfnhBR3tEaTAwOUlMS21ZKio1SV9JezFRMC1BKSZ2
JlJje1AoMmU9PFA0KUBDZ0A7ejBsYgp6MVEwKn4wUiN8MDAwOUlMS21ZOzFmY3k5ViojRy1RXyEk
OE41SV9JezFRMCp+MFIjfDAwRDsqUFZFO2RSWkF3SDQKekFiPGJAMnExc30wdGdfMDAwSWFFMT0j
LXdNTDAkUDBSI3wwMDA5SUxLbVkqKjVJfHR8MWxhJTJVWWltVDB0Z18wCnowMElhZ2ZCKnNyQWI8
YkBLPl95dktAcEEtS21ZKio1SV9JezFRMCp+MFIjfTNKcHVPcnYpODZYZ2E4NXZBYjxiQAp6MnEx
c30wdGdfMEt2Mk5sfEVzdyM2IUYwZTBSI3wwMDA5SUxLbVkqKjVJX0l7MVpHWlBWUDRIPFF+ZHNh
PHtGbE8KejVJX0l7MVEwKn4wUiN8MDAwOUlMMm5uJE41MFVUJjB0Z18wMDBJYWdmQipzckFiPGJA
R2JnWmBkNyYoJnpOX1RrCnpVSCQjYWdRWSlienJGYW8lcyZAKT1LZCgmZTNBWTdZejNUb3ZHOWw0
aXMmbmc9SzFuY0l7KXlZYG0wc1AqemNKMgp6KHx6MFFTKkxjPi0waWtaeUo0TWQrUXpZMnd2TFQ8
eDBpNXdyQnVfNDRQOSMjQTU/V01BK2RJK0hAP2BRezdQQT8KelkmRz12Xl9zU3wtTyNwbnRKTXZ5
V0F2UWVsYX1GX0VsbV8oXl9fQzArQ31FeCteKkBCX3FWaSVgYlNhTUR+S1hECnpeX3NwXygoQnN4
ZSRUWEBuNXwqM2NVb1QxbTJ5R2ItcU9sP1JUclVeaXVGPmx0WiEpa2ZgaiMjdyQjRyZiVCp5ZQp6
LWQ0eyg4Pz1VRip+WHorWSZPa2FGUzAkNzUtaUl0bDlYSUtrMiNfdE0zaHpZaVBAUmhSeFZSJWR1
eXs9REspZ3MKelZuc0JiSUlLNW5NYldDLSFPP2p9enVnJTVPS0ooSmojSVpwem1gZW9PQ3xOfXVH
YlF5YChVQCp7YGwwYW5YUl5NCnpIbDV6NFo1X3YpVDlXaSo1XjhyRyEjKl5mYkR7OFVhM0MlZmJK
fFpUbW8rVmMre09LdXBTSHhwblpCNkwtQFU4Owp6eTZCKz4/emd+VU0jMmw2ak9lSjNZTHk9cllh
aDlIYGk1cWtod1l3WXlGPU9sTz41e01pVjxadnMlWDFnbTdRSFoKenFRa25RUDJEdVIhSisxeyhi
XlRHTCM2QU93JFhJalJ5WDFmSWt0TEUmMXstb0N5PSgkSn5vM1Q5QDw4P2J6bkc7CnpPPFJtPztS
YktfOUAqdi1xYSNYLUpvX1dse3htTHk3JT5lfDhPdl88WVVaJmUjPGclVWo7TDJ9RnVhKHBWc0Vv
Owp6X25iJEQ/Ujs4M0g1Km5TaDtWaS1LN1pYbSshUDtHIVVlUUBfMnklPGI9b21vbzBlVmRiUkx7
S0NDZlQkbmBOKXwKenFTezYkbCZ2NlUlWnhpP2VsTlk0LT9eKFFaODI0UygpK202Y0ZhQkYpVW13
ZHkrRGBRYCkxJmM/RE1aSnIxTVhvCnpzJUpsbXlUPTw9ejE/a15idWtPcCNSY2spLUVLTzFfck1a
ITxnc1grM0FjNHB3elNsfXJ6fUx3cTI2Ml9HY1koLQp6JXRgO0tBKHU0bUp1WihMPEJMeVFVWkhR
IXJ9TEdIZFpySmkjUE9PVFZsMC1IOUhFaFZRNmk1fGQocVgyZV9SWjgKelIyZF47eGloVmJUKEd8
bSkwUVpsPUxRcXJqJnc2cit1ZnRHSkJrP1ltP3VxbTV2TFg7O1pkaUtOR0srfXhQQlM0Cno9Sk4t
ZTA2eENOdj9gYjN7M01tbT4kLVlvQ0c9LThmSzJTYDRRcFBLaiFTdmJvKlpMN2hEO0VAdkBTbGIh
TCZfVAp6Yz1sdH1UWVU3N01qaE9AUXRYTW8+T1kqNWNtcFRoJmcpT0AranZOZWttU1gwdSQteGJU
VX5BX0U2UGh7RFZ6Q0MKekk9YDQtX3xEdjRRbEY9O0Q9KUE4ZC1ibT98TTwlR216UkN2e2AhcWZ7
QEtsa1lYMVhvKSkhNlhaQ0k8OChLMV8mCnokOEVkaUVva2FaeU01eUhfSnBgXkx0ODJETVJlSk9H
SHdxMCMmOFc7KigmUUZZNipFUmJYYHA+RGlnfWw/cjZhWAp6SG5mTmt3OEZFV1R+RnRHQ0FFSjti
X3RLP3FIZCFsIWsmTTBKK0RlUSViVCRUO3E7UihBdz9Yez0wIVdJK2xKPF4Kem9DeHNlWi1+e0sy
PUhBZ3o9JjFCcDFkSzczXkYzeWprcThxKCNLdUtBODE1WUgmQUg8NyEwPCp5QyVCJUg9ZTRgCnpt
KmIqTVQ2RkhvaSMlVm1qMmImb3h1Z1FHemxLcCNTKDdVbHFuQXt1a2Q8VEo1STR9TU9ObWJPKTEw
X1Y/ZyNJWgp6a2l6NztPQHc+bndQKz9eQVU2MTxASUpkSHkzTzNTK0pEZE1IcXdxUD5WZVc7WXh2
Qnw5azZeOFZ4XnB6YnVCOTEKeiM5V2d2PSpGRnhVQm99Q3ZEPmg2bTk7fHVXWXY0UmRHXjYqJlgx
Y01Nb2w/az8jSy1UOTZhNGpOYkljPHE/c21TCno9QGQwXmhhVXZeSCkkZTdzbkJUYDREIU1AcThg
JjBUPEhJRFd3NT98SSRHWnp4RFN3e0kkUW04Zjh4MW81X1ZpbAp6WiskREZMYGNValplYE1sLTJO
NjJSP0B8JGdfMnZ+JVdCc2B7fEMkSXtRZGp0Kj0/IUVoWCVBIV9ZSXZgbUViMlAKemAjKlR7QXBT
P0stKEwzZW1HV090O01waFo/dTRlRlBpUWUpPGZ4XitaXmF8Vmw8fXsrcS1SQTk+c0k3azdMeV8y
CnpUSGFoMWxpaSloJEVRY2o2TTNvOVUleDVzYmZvJStlXm9jM00pRnZmUCkwdEhWYW5APEppX0hu
Q1hxdUJsZjMkLQp6ZlhSd0phZXVKTGlKNFloNj4wYygqRSFNfmc1K1MqZ3RiMXdWYDdIbiVNQiRh
bU1+ekRZVW5MPXE8NkghZSpvVkUKQm1lPkZRCgpsaXRlcmFsIDAKSGNtVj9kMDAwMDEKCmRpZmYg
LS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL2Jhc2ljSVRQRGF0YWJhc2UuZGItc2htIGIvVG9v
bHMvVGVzdFdlYktpdEFQSS9iYXNpY0lUUERhdGFiYXNlLmRiLXNobQpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mZTlh
YzI4NDVlY2E2ZmU2ZGE4YTYzY2QwOTZkOWNmOWUyNGVjZTEwCkdJVCBiaW5hcnkgcGF0Y2gKbGl0
ZXJhbCAzMjc2OAp6Y21lSXVBcjYycjM8WGVUU2F5UzYwPVo9Ty0wfGtQMiZmdUAhNkR1XnppRkNe
N3c1NU1OKTloUVlWM1drNzlhMlAKeiklOGczSDMwJHkyb05BWmZCKnBrMVBCbHlLITUtTjB0NSZV
QVY3Y3MwUmpYRjVGa0srMDA5Qzcyb05BWmZCKnBrCnoxUEJseUshNS1OMHQ1JlVBVjdjczBSalhG
NUZrSyswMDlDNzJvTkFaZkIqcGsxUEJseUshNS1OMHQ1JlVBVjdjcwp3MFJqWEY1RmtLKzAwOUM3
Mm9OQVpmQipwazFQQmx5SyE1LU4wdDUmVUFWN2NzMFJqWEY1Y3E/QDRkazVgUXZkKH0KCmxpdGVy
YWwgMApIY21WP2QwMDAwMQoKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvYmFzaWNJ
VFBEYXRhYmFzZS5kYi13YWwgYi9Ub29scy9UZXN0V2ViS2l0QVBJL2Jhc2ljSVRQRGF0YWJhc2Uu
ZGItd2FsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmU2OWRlMjliYjJkMWQ2NDM0YjhiMjlhZTc3NWFkOGMyZTQ4YzUz
OTEK
</data>

          </attachment>
      

    </bug>

</bugzilla>