<?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>201129</bug_id>
          
          <creation_ts>2019-08-25 16:05:02 -0700</creation_ts>
          <short_desc>REGRESSION (iOS 13): Tests that simulate multiple back-to-back single taps fail or time out</short_desc>
          <delta_ts>2019-08-26 12:38:28 -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>Tools / Tests</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="Wenson Hsieh">wenson_hsieh</reporter>
          <assigned_to name="Wenson Hsieh">wenson_hsieh</assigned_to>
          <cc>ap</cc>
    
    <cc>bdakin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dino</cc>
    
    <cc>megan_gardner</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1564874</commentid>
    <comment_count>0</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2019-08-25 16:05:02 -0700</bug_when>
    <thetext>&lt;rdar://problem/51857277&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1564979</commentid>
    <comment_count>1</comment_count>
      <attachid>377250</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2019-08-26 10:02:55 -0700</bug_when>
    <thetext>Created attachment 377250
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1565007</commentid>
    <comment_count>2</comment_count>
      <attachid>377254</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2019-08-26 10:50:59 -0700</bug_when>
    <thetext>Created attachment 377254
Rebaseline some tests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1565047</commentid>
    <comment_count>3</comment_count>
      <attachid>377254</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-08-26 12:37:36 -0700</bug_when>
    <thetext>Comment on attachment 377254
Rebaseline some tests

Clearing flags on attachment: 377254

Committed r249112: &lt;https://trac.webkit.org/changeset/249112&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>377250</attachid>
            <date>2019-08-26 10:02:55 -0700</date>
            <delta_ts>2019-08-26 10:12:30 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-201129-20190826100255.patch</filename>
            <type>text/plain</type>
            <size>32228</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ5MDc3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGMxNTQ0Zjk4YzgxYjFlYTcw
N2FmNDZkYzM1OTJiYTkwOWU0Y2NiYWMuLjdlOWNiNWRiZGNmMjNlOTRiNmU0YmEwOTJlYmNmMmQz
YWFhNDNiMjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMTktMDgtMjYgIFdlbnNvbiBI
c2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAgICAgUkVHUkVTU0lPTiAoaU9T
IDEzKTogVGVzdHMgdGhhdCBzaW11bGF0ZSBtdWx0aXBsZSBiYWNrLXRvLWJhY2sgc2luZ2xlIHRh
cHMgZmFpbCBvciB0aW1lIG91dAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjAxMTI5CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81MTg1NzI3Nz4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGRzIGEgbmV3
IFNQSSBob29rIGluIFdlYktpdCB0byBsZXQgY2xpZW50cyBrbm93IHdoZW4gYSBzeW50aGV0aWMg
dGFwIGdlc3R1cmUgdGhhdCBoYXMgZW5kZWQgaGFzIGJlZW4gcmVzZXQuCisgICAgICAgIFNlZSBU
b29scy9DaGFuZ2VMb2cgYW5kIExheW91dFRlc3RzL0NoYW5nZUxvZyBmb3IgbW9yZSBkZXRhaWxz
LgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcubW06CisgICAgICAg
ICgtW1dLV2ViVmlldyBfZG9BZnRlclJlc2V0dGluZ1NpbmdsZVRhcEdlc3R1cmU6XSk6CisgICAg
ICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXdQcml2YXRlLmg6CisgICAgICAgICog
VUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24uaDoKKyAgICAgICAgKiBVSVBy
b2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbToKKyAgICAgICAgKC1bV0tDb250
ZW50VmlldyBfc2luZ2xlVGFwRGlkUmVzZXQ6XSk6CisgICAgICAgICgtW1dLQ29udGVudFZpZXcg
X2RvQWZ0ZXJSZXNldHRpbmdTaW5nbGVUYXBHZXN0dXJlOl0pOgorCiAyMDE5LTA4LTIzICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgogCiAgICAgICAgIFtpT1NdIFtXZWJL
aXQyXSBUYXBwaW5nIG9uIHRoZSDigJxJ4oCZbeKAnSB0ZXh0IHN1Z2dlc3Rpb24gYWZ0ZXIgdHlw
aW5nIOKAnGnigJnigJ0gZG9lcyBub3RoaW5nCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
QVBJL0NvY29hL1dLV2ViVmlldy5tbQppbmRleCBlMDc0NGFmOGI0YWRhYTg4ZGUxZGQxYTIwZjYz
ZWJmYzVlYmI1NjNlLi4xZDczMzBiZTNmNDRkNDg4ZWJkY2RkYjIxOWIzMTA0ODIwODQ1YTEzIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1t
CisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcubW0KQEAg
LTcwMDIsNiArNzAwMiwxMSBAQCAtIChOU0RpY3Rpb25hcnkgKilfcHJvcGVydGllc09mTGF5ZXJX
aXRoSUQ6KHVuc2lnbmVkIGxvbmcgbG9uZylsYXllcklECiAgICAgfTsKIH0KIAorLSAodm9pZClf
ZG9BZnRlclJlc2V0dGluZ1NpbmdsZVRhcEdlc3R1cmU6KGRpc3BhdGNoX2Jsb2NrX3QpYWN0aW9u
Cit7CisgICAgW19jb250ZW50VmlldyBfZG9BZnRlclJlc2V0dGluZ1NpbmdsZVRhcEdlc3R1cmU6
YWN0aW9uXTsKK30KKwogLSAodm9pZClfZG9BZnRlclJlY2VpdmluZ0VkaXREcmFnU25hcHNob3RG
b3JUZXN0aW5nOihkaXNwYXRjaF9ibG9ja190KWFjdGlvbgogewogICAgIFtfY29udGVudFZpZXcg
X2RvQWZ0ZXJSZWNlaXZpbmdFZGl0RHJhZ1NuYXBzaG90Rm9yVGVzdGluZzphY3Rpb25dOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld1ByaXZh
dGUuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXdQcml2YXRl
LmgKaW5kZXggNzM5YmNhZGMxNjYxNDA3MzU3OWJlYzQ5OGRkMDYwZTBjMjZhOGIzYS4uYmQ1ZWI3
ZmM1MjYzMDA3ZjIwMDYzZDY4MWIyMzgxOTNlYjAwYzNiNyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld1ByaXZhdGUuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3UHJpdmF0ZS5oCkBAIC00ODEsNiAr
NDgxLDcgQEAgdHlwZWRlZiBOU19PUFRJT05TKE5TVUludGVnZXIsIF9XS1JlY3RFZGdlKSB7CiAt
ICh2b2lkKV9kaWRTaG93Rm9yY2VQcmVzc1ByZXZpZXcgV0tfQVBJX0FWQUlMQUJMRShpb3MoMTAu
MykpOwogLSAodm9pZClfZGlkRGlzbWlzc0ZvcmNlUHJlc3NQcmV2aWV3IFdLX0FQSV9BVkFJTEFC
TEUoaW9zKDEwLjMpKTsKIC0gKHZvaWQpX2RvQWZ0ZXJOZXh0U3RhYmxlUHJlc2VudGF0aW9uVXBk
YXRlOihkaXNwYXRjaF9ibG9ja190KXVwZGF0ZUJsb2NrIFdLX0FQSV9BVkFJTEFCTEUoaW9zKDEw
LjMpKTsKKy0gKHZvaWQpX2RvQWZ0ZXJSZXNldHRpbmdTaW5nbGVUYXBHZXN0dXJlOihkaXNwYXRj
aF9ibG9ja190KWFjdGlvbiBXS19BUElfQVZBSUxBQkxFKGlvcyhXS19JT1NfVEJBKSk7CiAKIEBw
cm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSkgTlNBcnJheTxOU1ZhbHVlICo+ICpfdWlUZXh0
U2VsZWN0aW9uUmVjdHMgV0tfQVBJX0FWQUlMQUJMRShpb3MoMTAuMykpOwogQHByb3BlcnR5IChu
b25hdG9taWMsIHJlYWRvbmx5KSBDR1JlY3QgX3VpVGV4dENhcmV0UmVjdCBXS19BUElfQVZBSUxB
QkxFKGlvcygxMC4zKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3Mv
V0tDb250ZW50Vmlld0ludGVyYWN0aW9uLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3Mv
V0tDb250ZW50Vmlld0ludGVyYWN0aW9uLmgKaW5kZXggMzEyZmUxNGUyZTEzNDZmM2ZhNzRmZjYz
N2JjMzdmNjE2NGQzMTgxNC4uYmJjZDVlNGUxNjZjMjYxZmRkY2IxMzdjMjY5NGU0MjUzMTgwMmRh
YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJ
bnRlcmFjdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRW
aWV3SW50ZXJhY3Rpb24uaApAQCAtMzg0LDYgKzM4NCw4IEBAIHN0cnVjdCBXS0F1dG9Db3JyZWN0
aW9uRGF0YSB7CiAjaWYgRU5BQkxFKFBMQVRGT1JNX0RSSVZFTl9URVhUX0NIRUNLSU5HKQogICAg
IHN0ZDo6dW5pcXVlX3B0cjxXZWJLaXQ6OlRleHRDaGVja2luZ0NvbnRyb2xsZXI+IF90ZXh0Q2hl
Y2tpbmdDb250cm9sbGVyOwogI2VuZGlmCisKKyAgICBWZWN0b3I8QmxvY2tQdHI8dm9pZCgpPj4g
X2FjdGlvbnNUb1BlcmZvcm1BZnRlclJlc2V0dGluZ1NpbmdsZVRhcEdlc3R1cmVSZWNvZ25pemVy
OwogfQogCiBAZW5kCkBAIC01NTQsNiArNTU2LDcgQEAgRk9SX0VBQ0hfUFJJVkFURV9XS0NPTlRF
TlRWSUVXX0FDVElPTihERUNMQVJFX1dLQ09OVEVOVFZJRVdfQUNUSU9OX0ZPUl9XRUJfVklFVykK
IC0gKHZvaWQpc2VsZWN0Rm9ybUFjY2Vzc29yeVBpY2tlclJvdzooTlNJbnRlZ2VyKXJvd0luZGV4
OwogLSAodm9pZClzZXRUaW1lUGlja2VyVmFsdWVUb0hvdXI6KE5TSW50ZWdlcilob3VyIG1pbnV0
ZTooTlNJbnRlZ2VyKW1pbnV0ZTsKIC0gKE5TRGljdGlvbmFyeSAqKV9jb250ZW50c09mVXNlcklu
dGVyZmFjZUl0ZW06KE5TU3RyaW5nICopdXNlckludGVyZmFjZUl0ZW07CistICh2b2lkKV9kb0Fm
dGVyUmVzZXR0aW5nU2luZ2xlVGFwR2VzdHVyZTooZGlzcGF0Y2hfYmxvY2tfdClhY3Rpb247CiAt
ICh2b2lkKV9kb0FmdGVyUmVjZWl2aW5nRWRpdERyYWdTbmFwc2hvdEZvclRlc3Rpbmc6KGRpc3Bh
dGNoX2Jsb2NrX3QpYWN0aW9uOwogCiBAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHkpIE5T
U3RyaW5nICp0ZXh0Q29udGVudFR5cGVGb3JUZXN0aW5nOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbSBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0KaW5kZXggNWY4
ZGRiZDNmNWRjY2Q4YjA3YmVhY2M4YzRhYWZlMDE4MTc4YWMwMi4uZDBiYTI0ODAyNTU0OTIxNmMz
ZDlhOTgzOTBhNTgyMmQxYmQxNTg1ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCkBAIC0yNDUwLDYgKzI0NTAs
OSBAQCAtICh2b2lkKV9zaW5nbGVUYXBEaWRSZXNldDooVUlUYXBHZXN0dXJlUmVjb2duaXplciAq
KWdlc3R1cmVSZWNvZ25pemVyCiAgICAgICAgICAgICBfcGFnZS0+dG91Y2hXaXRoSWRlbnRpZmll
cldhc1JlbW92ZWQocG9pbnRlcklkKTsKICAgICB9CiAjZW5kaWYKKyAgICBhdXRvIGFjdGlvbnNU
b1BlcmZvcm0gPSBzdGQ6OmV4Y2hhbmdlKF9hY3Rpb25zVG9QZXJmb3JtQWZ0ZXJSZXNldHRpbmdT
aW5nbGVUYXBHZXN0dXJlUmVjb2duaXplciwgeyB9KTsKKyAgICBmb3IgKGF1dG8gYWN0aW9uIDog
YWN0aW9uc1RvUGVyZm9ybSkKKyAgICAgICAgYWN0aW9uKCk7CiB9CiAKIC0gKHZvaWQpX2RvdWJs
ZVRhcERpZEZhaWw6KFVJVGFwR2VzdHVyZVJlY29nbml6ZXIgKilnZXN0dXJlUmVjb2duaXplcgpA
QCAtNzU0MSw2ICs3NTQ0LDE1IEBAIEBlbmQKIAogQGltcGxlbWVudGF0aW9uIFdLQ29udGVudFZp
ZXcgKFdLVGVzdGluZykKIAorLSAodm9pZClfZG9BZnRlclJlc2V0dGluZ1NpbmdsZVRhcEdlc3R1
cmU6KGRpc3BhdGNoX2Jsb2NrX3QpYWN0aW9uCit7CisgICAgaWYgKFtfc2luZ2xlVGFwR2VzdHVy
ZVJlY29nbml6ZXIgc3RhdGVdICE9IFVJR2VzdHVyZVJlY29nbml6ZXJTdGF0ZUVuZGVkKSB7Cisg
ICAgICAgIGFjdGlvbigpOworICAgICAgICByZXR1cm47CisgICAgfQorICAgIF9hY3Rpb25zVG9Q
ZXJmb3JtQWZ0ZXJSZXNldHRpbmdTaW5nbGVUYXBHZXN0dXJlUmVjb2duaXplci5hcHBlbmQobWFr
ZUJsb2NrUHRyKGFjdGlvbikpOworfQorCiAtICh2b2lkKV9kb0FmdGVyUmVjZWl2aW5nRWRpdERy
YWdTbmFwc2hvdEZvclRlc3Rpbmc6KGRpc3BhdGNoX2Jsb2NrX3QpYWN0aW9uCiB7CiAjaWYgRU5B
QkxFKERSQUdfU1VQUE9SVCkKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0No
YW5nZUxvZwppbmRleCAxNzhkMTdiYzc3NGE4YjkzOGQ4NDRiNTg3NzdkNzJhMjgzYTkzY2Y2Li43
ZmRhMmEzYTRmMmYzYzJmMmVjMjM4YjQxNjVhN2IwY2I0MTk2MWIxIDEwMDY0NAotLS0gYS9Ub29s
cy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNzggQEAKKzIwMTkt
MDgtMjYgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAgICAg
UkVHUkVTU0lPTiAoaU9TIDEzKTogVGVzdHMgdGhhdCBzaW11bGF0ZSBtdWx0aXBsZSBiYWNrLXRv
LWJhY2sgc2luZ2xlIHRhcHMgZmFpbCBvciB0aW1lIG91dAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAxMTI5CisgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS81MTg1NzI3Nz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBUaGUgdGVzdHMgaW4gZWRpdGluZy9wYXN0ZWJvYXJkL2lvcyB3ZXJlIHRpbWluZyBvdXQg
b24gaU9TIDEzIGJlZm9yZSB0aGlzIGNoYW5nZS4gVGhpcyBpcyBiZWNhdXNlIHRoZXkgc2ltdWxh
dGUKKyAgICAgICAgYmFjay10by1iYWNrIHNpbmdsZSB0YXBzOyB3aGlsZSB0aGlzIGlzIHJlY29n
bml6ZWQgYXMgdHdvIHNpbmdsZSB0YXBzIG9uIGlPUyAxMiBhbmQgcHJpb3IsIG9ubHkgdGhlIGZp
cnN0IHNpbmdsZQorICAgICAgICB0YXAgaXMgcmVjb2duaXplZCBvbiBpT1MgMTMgKGFuZCB0aGUg
c2Vjb25kIGlzIHNpbXBseSBkcm9wcGVkIG9uIHRoZSBmbG9vcikuIFRoaXMgb2NjdXJzIGJlY2F1
c2UgdGhlIHN5bnRoZXRpYworICAgICAgICBzaW5nbGUgdGFwIGdlc3R1cmUgaXMgcmVzZXQgc2xp
Z2h0bHkgbGF0ZXIgb24gaU9TIDEzIGNvbXBhcmVkIHRvIGlPUyAxMiwgc28gd2hlbiB0aGUgc2Vj
b25kIHRhcCBpcyBkaXNwYXRjaGVkLAorICAgICAgICB0aGUgZ2VzdHVyZSByZWNvZ25pemVyIGlz
IHN0aWxsIGluICJlbmRlZCIgc3RhdGUgYWZ0ZXIgdGhlIGZpcnN0IHRhcCBvbiBpT1MgMTMsIHdo
aWNoIG1lYW5zIHRoZSBnZXN0dXJlIGlzbid0CisgICAgICAgIGNhcGFibGUgb2YgcmVjb2duaXpp
bmcgZnVydGhlciB0b3VjaGVzIHlldC4KKworICAgICAgICBJbiBVSUtpdCwgYSBnZXN0dXJlIHJl
Y29nbml6ZXIgaXMgb25seSByZXNldCBvbmNlIGl0cyBVSUdlc3R1cmVFbnZpcm9ubWVudCdzIGNv
bnRhaW5pbmcgZGVwZW5kZW5jeSBzdWJncmFwaCBubworICAgICAgICBsb25nZXIgY29udGFpbnMg
Z2VzdHVyZXMgdGhhdCBhcmUgYWN0aXZlLiBJbiBpT1MgMTIsIHRoZSBzeW50aGV0aWMgY2xpY2sg
Z2VzdHVyZSBpcyBhIHBhcnQgb2YgYSBkZXBlbmRlbmN5CisgICAgICAgIHN1YmdyYXBoIHRoYXQg
Y29udGFpbnMgb25seSBpdHNlbGYgYW5kIHRoZSBub3JtYWwgKGJsb2NraW5nKSBkb3VibGUgdGFw
IGdlc3R1cmUgd2hpY2ggcmVxdWlyZXMgdGhlIGNsaWNrIHRvIGZhaWwKKyAgICAgICAgYmVmb3Jl
IGl0IGNhbiBiZSByZWNvZ25pemVkOyBpbW1lZGlhdGVseSBhZnRlciBzaW11bGF0aW5nIHRoZSB0
YXAsIGJvdGggdGhlc2UgZ2VzdHVyZXMgYXJlIGluYWN0aXZlLCB3aGljaAorICAgICAgICBhbGxv
d3MgYm90aCBvZiB0aGVtIHRvIGJlIHJlc2V0LgorCisgICAgICAgIEhvd2V2ZXIsIGluIGlPUyAx
MywgdGhlIHN5bnRoZXRpYyBjbGljayBnZXN0dXJlIGlzIHBhcnQgb2YgYSBnZXN0dXJlIGRlcGVu
ZGVuY3kgZ3JhcGggdGhhdCBjb250YWlucyB0aGUgZG91YmxlCisgICAgICAgIHRhcCBmb3IgZG91
YmxlIGNsaWNrIGdlc3R1cmUsIGFzIHdlbGwgYXMgdGhlIG5vbi1ibG9ja2luZyBkb3VibGUgdGFw
IGdlc3R1cmUsIGJvdGggb2Ygd2hpY2ggYXJlIHN0aWxsIGFjdGl2ZQorICAgICAgICBpbW1lZGlh
dGVseSBhZnRlciBzZW5kaW5nIHRoZSBmaXJzdCB0YXAuIFRoaXMgY2hhbmdlIGluIGRlcGVuZGVu
Y2llcyBpcyBjYXVzZWQgYnkgdGhlIGludHJvZHVjdGlvbiBvZgorICAgICAgICBVSVVuZG9HZXN0
dXJlSW50ZXJhY3Rpb24ncyBzaW5nbGUgYW5kIGRvdWJsZSB0aHJlZS1maW5nZXIgdGFwIGdlc3R1
cmVzLCB3aGljaCAoaW4gLVtVSVVuZG9HZXN0dXJlSW50ZXJhY3Rpb24KKyAgICAgICAgZ2VzdHVy
ZVJlY29nbml6ZXI6c2hvdWxkQmVSZXF1aXJlZFRvRmFpbEJ5R2VzdHVyZVJlY29nbml6ZXI6XSkg
ZXhwbGljaXRseSBhZGQgYWxsIG90aGVyIHRhcHMgYXMgZmFpbHVyZQorICAgICAgICByZXF1aXJl
bWVudHMuIFRoaXMgZWZmZWN0aXZlbHkgbGlua3MgdGhlIHN5bnRoZXRpYyBzaW5nbGUgdGFwIGdl
c3R1cmUgdG8gbW9zdCBvZiB0aGUgb3RoZXIgZ2VzdHVyZXMgaW4KKyAgICAgICAgV0tDb250ZW50
VmlldydzIGRlcGVuZGVuY3kgZ3JhcGggYnkgd2F5IG9mIHRoZXNlIHRhcCBnZXN0dXJlcyBmb3Ig
dGhlIHVuZG8gaW50ZXJhY3Rpb24uCisKKyAgICAgICAgQWxsIHRoaXMgbWVhbnMgdGhhdCB0aGVy
ZSBpcyBub3cgYSBzaG9ydCAofjUwIG1zKSBkZWxheSBhZnRlciB0aGUgc3ludGhldGljIHNpbmds
ZSB0YXAgZ2VzdHVyZXMgaXMgcmVjb2duaXplZCwKKyAgICAgICAgYmVmb3JlIGl0IGNhbiBiZSBy
ZWNvZ25pemVkIGFnYWluLiBUbyBhY2NvdW50IGZvciB0aGlzIG5ldyBkZWxheSBpbiBvdXIgdGVz
dCBpbmZyYXN0cnVjdHVyZSwgc2ltcGx5IHdhaXQgZm9yCisgICAgICAgIHNpbmdsZSB0YXAgZ2Vz
dHVyZXMgdGhhdCBoYXZlIGVuZGVkIHRvIHJlc2V0IGJlZm9yZSBhdHRlbXB0aW5nIHRvIHNlbmQg
c3Vic2VxdWVudCBzaW5nbGUgdGFwcy4gV2UgZG8gdGhpcyBieQorICAgICAgICBpbnRyb2R1Y2lu
ZyBXZWJLaXQgdGVzdGluZyBTUEkgdG8gaW52b2tlIGEgY29tcGxldGlvbiBoYW5kbGVyIGFmdGVy
IHJlc2V0dGluZyB0aGUgc3ludGhldGljIGNsaWNrIGdlc3R1cmUgKG9ubHkKKyAgICAgICAgaWYg
bmVjZXNzYXJ5IC0gaS5lLiwgaWYgdGhlIGdlc3R1cmUgaXMgaW4gZW5kZWQgc3RhdGUgd2hlbiB3
ZSBhcmUgYWJvdXQgdG8gYmVnaW4gc2ltdWxhdGluZyB0aGUgdGFwKS4gVGhpcworICAgICAgICBh
bGxvd3MgY2FsbHMgdG8gYFVJU2NyaXB0Q29udHJvbGxlcjo6c2luZ2xlVGFwQXRQb2ludGAgdG8g
YmUgcmVsaWFibHkgcmVjb2duaXplZCBhcyBzaW5nbGUgdGFwcyB3aXRob3V0CisgICAgICAgIHJl
cXVpcmluZyBhcmJpdHJhcnkgMTIwIG1zICJodW1hbiBzcGVlZCIgZGVsYXlzLgorCisgICAgICAg
IFRoaXMgZml4ZXMgYSBudW1iZXIgb2YgZmxha3kgb3IgZmFpbGluZyBsYXlvdXQgdGVzdHMsIGlu
Y2x1ZGluZyB0aGUgdGVzdHMgaW4gZWRpdGluZy9wYXN0ZWJvYXJkL2lvcy4KKworICAgICAgICAq
IFRlc3RSdW5uZXJTaGFyZWQvVUlTY3JpcHRDb250ZXh0L0JpbmRpbmdzL1VJU2NyaXB0Q29udHJv
bGxlci5pZGw6CisgICAgICAgICogVGVzdFJ1bm5lclNoYXJlZC9VSVNjcmlwdENvbnRleHQvVUlT
Y3JpcHRDb250cm9sbGVyLmg6CisgICAgICAgIChXVFI6OlVJU2NyaXB0Q29udHJvbGxlcjo6ZG91
YmxlVGFwQXRQb2ludCk6CisKKyAgICAgICAgQWRkIGEgYGRlbGF5YCBwYXJhbWV0ZXIgdG8gYGRv
dWJsZVRhcEF0UG9pbnRgLiBBIG51bWJlciBvZiBsYXlvdXQgdGVzdHMgd2VyZSBhY3R1YWxseSBz
aW11bGF0aW5nIGRvdWJsZSBjbGljaworICAgICAgICBnZXN0dXJlcyBieSBzaW11bGF0aW5nIHR3
byBiYWNrLXRvLWJhY2sgc2luZ2xlIHRhcHM7IHRoaXMgaXMgZG9uZSBmb3IgdGhlIHB1cnBvc2Vz
IG9mIGJlaW5nIGFibGUgdG8gYWRkIGEgImh1bWFuCisgICAgICAgIHNwZWVkIiBkZWxheSBwcmlv
ciB0byB0aGUgc2Vjb25kIHNpbmdsZSB0YXAgZ2VzdHVyZS4gQWZ0ZXIgdGhlIGNoYW5nZSB0byB3
YWl0IGZvciB0aGUgc2luZ2xlIHRhcCBnZXN0dXJlIHRvCisgICAgICAgIHJlc2V0IGJlZm9yZSBh
dHRlbXB0aW5nIHRvIHNpbXVsYXRlIHRoZSBuZXh0IHRhcCwgdGhpcyBzdHJhdGVneSBubyBsb25n
ZXIgd29ya3MsIHNpbmNlIHRoZSBzZWNvbmQgZ2VzdHVyZSBpcworICAgICAgICByZWNvZ25pemVk
IG9ubHkgYXMgYSBzaW5nbGUgdGFwIGluc3RlYWQgb2YgYSBkb3VibGUgdGFwLgorCisgICAgICAg
IEluc3RlYWQsIHdlIGFkZCBhIGRlbGF5IHBhcmFtZXRlciB0byBgVUlTY3JpcHRDb250cm9sbGVy
Ojpkb3VibGVUYXBBdFBvaW50YCwgd2hpY2ggdGhlICJodW1hbiBzcGVlZCIgZG91YmxlIHRhcAor
ICAgICAgICBnZXN0dXJlcyB1c2UgaW5zdGVhZCB0byB3YWl0IGFmdGVyIHNpbXVsYXRpbmcgdGhl
IGZpcnN0IHRhcC4KKworICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvaW9zL0hJREV2ZW50R2Vu
ZXJhdG9yLmg6CisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9pb3MvSElERXZlbnRHZW5lcmF0
b3IubW06CisgICAgICAgICgtW0hJREV2ZW50R2VuZXJhdG9yIF93YWl0Rm9yOl0pOgorICAgICAg
ICAoLVtISURFdmVudEdlbmVyYXRvciBzZW5kVGFwczpsb2NhdGlvbjp3aXRoTnVtYmVyT2ZUb3Vj
aGVzOmRlbGF5OmNvbXBsZXRpb25CbG9jazpdKToKKworICAgICAgICBQbHVtYiB0aGUgdGFwIGdl
c3R1cmUgZGVsYXkgdGhyb3VnaCB0byB0aGlzIGhlbHBlciBtZXRob2QuCisKKyAgICAgICAgKC1b
SElERXZlbnRHZW5lcmF0b3IgdGFwOmNvbXBsZXRpb25CbG9jazpdKToKKyAgICAgICAgKC1bSElE
RXZlbnRHZW5lcmF0b3IgZG91YmxlVGFwOmRlbGF5OmNvbXBsZXRpb25CbG9jazpdKToKKyAgICAg
ICAgKC1bSElERXZlbnRHZW5lcmF0b3IgdHdvRmluZ2VyVGFwOmNvbXBsZXRpb25CbG9jazpdKToK
KyAgICAgICAgKC1bSElERXZlbnRHZW5lcmF0b3Igc2VuZFRhcHM6bG9jYXRpb246d2l0aE51bWJl
ck9mVG91Y2hlczpjb21wbGV0aW9uQmxvY2s6XSk6IERlbGV0ZWQuCisgICAgICAgICgtW0hJREV2
ZW50R2VuZXJhdG9yIGRvdWJsZVRhcDpjb21wbGV0aW9uQmxvY2s6XSk6IERlbGV0ZWQuCisgICAg
ICAgICogV2ViS2l0VGVzdFJ1bm5lci9pb3MvVUlTY3JpcHRDb250cm9sbGVySU9TLmg6CisgICAg
ICAgICogV2ViS2l0VGVzdFJ1bm5lci9pb3MvVUlTY3JpcHRDb250cm9sbGVySU9TLm1tOgorICAg
ICAgICAoV1RSOjpVSVNjcmlwdENvbnRyb2xsZXJJT1M6OndhaXRGb3JTaW5nbGVUYXBUb1Jlc2V0
IGNvbnN0KToKKworICAgICAgICBBZGQgYSBuZXcgaGVscGVyIHRvIHdhaXQgZm9yIHRoZSBjb250
ZW50IHZpZXcncyBzaW5nbGUgdGFwIGdlc3R1cmUgdG8gcmVzZXQgaWYgbmVlZGVkOyBjYWxsIHRo
aXMgYmVmb3JlCisgICAgICAgIGF0dGVtcHRpbmcgdG8gc2ltdWxhdGUgc2luZ2xlIHRhcHMgKGVp
dGhlciB1c2luZyBhIHN0eWx1cywgb3Igd2l0aCBhIHJlZ3VsYXIgdG91Y2gpLgorCisgICAgICAg
IChXVFI6OlVJU2NyaXB0Q29udHJvbGxlcklPUzo6c2luZ2xlVGFwQXRQb2ludFdpdGhNb2RpZmll
cnMpOgorICAgICAgICAoV1RSOjpVSVNjcmlwdENvbnRyb2xsZXJJT1M6OmRvdWJsZVRhcEF0UG9p
bnQpOgorICAgICAgICAoV1RSOjpVSVNjcmlwdENvbnRyb2xsZXJJT1M6OnN0eWx1c1RhcEF0UG9p
bnRXaXRoTW9kaWZpZXJzKToKKwogMjAxOS0wOC0yMyAgQWFrYXNoIEphaW4gIDxhYWthc2hfamFp
bkBhcHBsZS5jb20+CiAKICAgICAgICAgSW5jcmVhc2UgbG9nIGxldmVsIGZvciB3YXRjaGxpc3Qg
cmVzdWx0CmRpZmYgLS1naXQgYS9Ub29scy9UZXN0UnVubmVyU2hhcmVkL1VJU2NyaXB0Q29udGV4
dC9CaW5kaW5ncy9VSVNjcmlwdENvbnRyb2xsZXIuaWRsIGIvVG9vbHMvVGVzdFJ1bm5lclNoYXJl
ZC9VSVNjcmlwdENvbnRleHQvQmluZGluZ3MvVUlTY3JpcHRDb250cm9sbGVyLmlkbAppbmRleCA3
ZmZmYzc3YTI1ZjQxNTdlNjY1YzU1Yjk3YzhjMTZiMDEzZTM4OTU5Li42ZDk0OTg3N2VhZTc2YTc2
NGIyYmQ5ZGUzNGRmNmE0NGVlMTIwOTRhIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0UnVubmVyU2hh
cmVkL1VJU2NyaXB0Q29udGV4dC9CaW5kaW5ncy9VSVNjcmlwdENvbnRyb2xsZXIuaWRsCisrKyBi
L1Rvb2xzL1Rlc3RSdW5uZXJTaGFyZWQvVUlTY3JpcHRDb250ZXh0L0JpbmRpbmdzL1VJU2NyaXB0
Q29udHJvbGxlci5pZGwKQEAgLTU3LDcgKzU3LDcgQEAgaW50ZXJmYWNlIFVJU2NyaXB0Q29udHJv
bGxlciB7CiAgICAgdm9pZCBsaWZ0VXBBdFBvaW50KGxvbmcgeCwgbG9uZyB5LCBsb25nIHRvdWNo
Q291bnQsIG9iamVjdCBjYWxsYmFjayk7CiAgICAgdm9pZCBzaW5nbGVUYXBBdFBvaW50KGxvbmcg
eCwgbG9uZyB5LCBvYmplY3QgY2FsbGJhY2spOwogICAgIHZvaWQgc2luZ2xlVGFwQXRQb2ludFdp
dGhNb2RpZmllcnMobG9uZyB4LCBsb25nIHksIG9iamVjdCBtb2RpZmllckFycmF5LCBvYmplY3Qg
Y2FsbGJhY2spOwotICAgIHZvaWQgZG91YmxlVGFwQXRQb2ludChsb25nIHgsIGxvbmcgeSwgb2Jq
ZWN0IGNhbGxiYWNrKTsKKyAgICB2b2lkIGRvdWJsZVRhcEF0UG9pbnQobG9uZyB4LCBsb25nIHks
IGZsb2F0IGRlbGF5LCBvYmplY3QgY2FsbGJhY2spOwogICAgIHZvaWQgZHJhZ0Zyb21Qb2ludFRv
UG9pbnQobG9uZyBzdGFydFgsIGxvbmcgc3RhcnRZLCBsb25nIGVuZFgsIGxvbmcgZW5kWSwgZG91
YmxlIGR1cmF0aW9uU2Vjb25kcywgb2JqZWN0IGNhbGxiYWNrKTsKIAogICAgIHZvaWQgbG9uZ1By
ZXNzQXRQb2ludChsb25nIHgsIGxvbmcgeSwgb2JqZWN0IGNhbGxiYWNrKTsKZGlmZiAtLWdpdCBh
L1Rvb2xzL1Rlc3RSdW5uZXJTaGFyZWQvVUlTY3JpcHRDb250ZXh0L1VJU2NyaXB0Q29udHJvbGxl
ci5oIGIvVG9vbHMvVGVzdFJ1bm5lclNoYXJlZC9VSVNjcmlwdENvbnRleHQvVUlTY3JpcHRDb250
cm9sbGVyLmgKaW5kZXggZjgxMzMwMDk0MWE3MDUyMDRiY2U5MjBlN2ViNmQxMzM3YjBmN2M0NC4u
ZmZlNTA3ZjI3N2M1NmNhOGQ1ZmNjNDI3NTBkZWZlZGY4NjE4OGRiZiAxMDA2NDQKLS0tIGEvVG9v
bHMvVGVzdFJ1bm5lclNoYXJlZC9VSVNjcmlwdENvbnRleHQvVUlTY3JpcHRDb250cm9sbGVyLmgK
KysrIGIvVG9vbHMvVGVzdFJ1bm5lclNoYXJlZC9VSVNjcmlwdENvbnRleHQvVUlTY3JpcHRDb250
cm9sbGVyLmgKQEAgLTEzNSw3ICsxMzUsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIGxp
ZnRVcEF0UG9pbnQobG9uZyB4LCBsb25nIHksIGxvbmcgdG91Y2hDb3VudCwgSlNWYWx1ZVJlZiBj
YWxsYmFjaykgeyBub3RJbXBsZW1lbnRlZCgpOyB9CiAgICAgdmlydHVhbCB2b2lkIHNpbmdsZVRh
cEF0UG9pbnQobG9uZyB4LCBsb25nIHksIEpTVmFsdWVSZWYgY2FsbGJhY2spIHsgbm90SW1wbGVt
ZW50ZWQoKTsgfQogICAgIHZpcnR1YWwgdm9pZCBzaW5nbGVUYXBBdFBvaW50V2l0aE1vZGlmaWVy
cyhsb25nIHgsIGxvbmcgeSwgSlNWYWx1ZVJlZiBtb2RpZmllckFycmF5LCBKU1ZhbHVlUmVmIGNh
bGxiYWNrKSB7IG5vdEltcGxlbWVudGVkKCk7IH0KLSAgICB2aXJ0dWFsIHZvaWQgZG91YmxlVGFw
QXRQb2ludChsb25nIHgsIGxvbmcgeSwgSlNWYWx1ZVJlZiBjYWxsYmFjaykgeyBub3RJbXBsZW1l
bnRlZCgpOyB9CisgICAgdmlydHVhbCB2b2lkIGRvdWJsZVRhcEF0UG9pbnQobG9uZyB4LCBsb25n
IHksIGZsb2F0IGRlbGF5LCBKU1ZhbHVlUmVmIGNhbGxiYWNrKSB7IG5vdEltcGxlbWVudGVkKCk7
IH0KICAgICB2aXJ0dWFsIHZvaWQgZHJhZ0Zyb21Qb2ludFRvUG9pbnQobG9uZyBzdGFydFgsIGxv
bmcgc3RhcnRZLCBsb25nIGVuZFgsIGxvbmcgZW5kWSwgZG91YmxlIGR1cmF0aW9uU2Vjb25kcywg
SlNWYWx1ZVJlZiBjYWxsYmFjaykgeyBub3RJbXBsZW1lbnRlZCgpOyB9CiAgICAgdmlydHVhbCB2
b2lkIGxvbmdQcmVzc0F0UG9pbnQobG9uZyB4LCBsb25nIHksIEpTVmFsdWVSZWYgY2FsbGJhY2sp
IHsgbm90SW1wbGVtZW50ZWQoKTsgfQogCmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVu
bmVyL2lvcy9ISURFdmVudEdlbmVyYXRvci5oIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9pb3Mv
SElERXZlbnRHZW5lcmF0b3IuaAppbmRleCBhNTIzZTNiMThlMTg3NjAwNGY2YjFmNWQ2NzFjNzk3
ZTFmYjY5Y2YzLi4wOGZiNWM3ZmNlMWJjMzU1ZTQ0YzQ0YzY0NjlkMjUxODAwMzMxNmZlIDEwMDY0
NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL2lvcy9ISURFdmVudEdlbmVyYXRvci5oCisr
KyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvaW9zL0hJREV2ZW50R2VuZXJhdG9yLmgKQEAgLTg3
LDcgKzg3LDcgQEAgUmV0YWluUHRyPElPSElERXZlbnRSZWY+IGNyZWF0ZUhJREtleUV2ZW50KE5T
U3RyaW5nICosIHVpbnQ2NF90IHRpbWVzdGFtcCwgYm9vbAogCiAvLyBUYXBzCiAtICh2b2lkKXRh
cDooQ0dQb2ludClsb2NhdGlvbiBjb21wbGV0aW9uQmxvY2s6KHZvaWQgKF4pKHZvaWQpKWNvbXBs
ZXRpb25CbG9jazsKLS0gKHZvaWQpZG91YmxlVGFwOihDR1BvaW50KWxvY2F0aW9uIGNvbXBsZXRp
b25CbG9jazoodm9pZCAoXikodm9pZCkpY29tcGxldGlvbkJsb2NrOworLSAodm9pZClkb3VibGVU
YXA6KENHUG9pbnQpbG9jYXRpb24gZGVsYXk6KE5TVGltZUludGVydmFsKWRlbGF5IGNvbXBsZXRp
b25CbG9jazoodm9pZCAoXikodm9pZCkpY29tcGxldGlvbkJsb2NrOwogLSAodm9pZCl0d29GaW5n
ZXJUYXA6KENHUG9pbnQpbG9jYXRpb24gY29tcGxldGlvbkJsb2NrOih2b2lkICheKSh2b2lkKSlj
b21wbGV0aW9uQmxvY2s7CiAKIC8vIExvbmcgUHJlc3MKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktp
dFRlc3RSdW5uZXIvaW9zL0hJREV2ZW50R2VuZXJhdG9yLm1tIGIvVG9vbHMvV2ViS2l0VGVzdFJ1
bm5lci9pb3MvSElERXZlbnRHZW5lcmF0b3IubW0KaW5kZXggODk5OTFjMmE2M2I4NTgzYmFlYTVj
YzdiZmJhOTUwOTk4MzdiN2IwOC4uNzZjNWUxNjkwOTU3MjU3M2MyOGM2M2UwNmRkNjcxYjA4Zjdm
NmViYyAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9pb3MvSElERXZlbnRHZW5l
cmF0b3IubW0KKysrIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9pb3MvSElERXZlbnRHZW5lcmF0
b3IubW0KQEAgLTcxMiw3ICs3MTIsMjEgQEAgLSAodm9pZClzdHlsdXNUYXBBdFBvaW50OihDR1Bv
aW50KWxvY2F0aW9uIGF6aW11dGhBbmdsZTooQ0dGbG9hdClhemltdXRoQW5nbGUgYWwKICAgICBb
c2VsZiBzZW5kTWFya2VySElERXZlbnRXaXRoQ29tcGxldGlvbkJsb2NrOmNvbXBsZXRpb25CbG9j
a107CiB9CiAKLS0gKHZvaWQpc2VuZFRhcHM6KGludCl0YXBDb3VudCBsb2NhdGlvbjooQ0dQb2lu
dClsb2NhdGlvbiB3aXRoTnVtYmVyT2ZUb3VjaGVzOihpbnQpdG91Y2hDb3VudCBjb21wbGV0aW9u
QmxvY2s6KHZvaWQgKF4pKHZvaWQpKWNvbXBsZXRpb25CbG9jaworLSAodm9pZClfd2FpdEZvcjoo
TlNUaW1lSW50ZXJ2YWwpZGVsYXkKK3sKKyAgICBpZiAoZGVsYXkgPD0gMCkKKyAgICAgICAgcmV0
dXJuOworCisgICAgYm9vbCBkb25lV2FpdGluZ0ZvckRlbGF5ID0gZmFsc2U7CisgICAgZGlzcGF0
Y2hfYWZ0ZXIoZGlzcGF0Y2hfdGltZShESVNQQVRDSF9USU1FX05PVywgKGludDY0X3QpKGRlbGF5
ICogTlNFQ19QRVJfU0VDKSksIGRpc3BhdGNoX2dldF9tYWluX3F1ZXVlKCksIFsmZG9uZVdhaXRp
bmdGb3JEZWxheV0geworICAgICAgICBkb25lV2FpdGluZ0ZvckRlbGF5ID0gdHJ1ZTsKKyAgICB9
KTsKKworICAgIHdoaWxlICghZG9uZVdhaXRpbmdGb3JEZWxheSkKKyAgICAgICAgW05TUnVuTG9v
cC5jdXJyZW50UnVuTG9vcCBydW5Nb2RlOk5TRGVmYXVsdFJ1bkxvb3BNb2RlIGJlZm9yZURhdGU6
TlNEYXRlLmRpc3RhbnRGdXR1cmVdOworfQorCistICh2b2lkKXNlbmRUYXBzOihpbnQpdGFwQ291
bnQgbG9jYXRpb246KENHUG9pbnQpbG9jYXRpb24gd2l0aE51bWJlck9mVG91Y2hlczooaW50KXRv
dWNoQ291bnQgZGVsYXk6KE5TVGltZUludGVydmFsKWRlbGF5IGNvbXBsZXRpb25CbG9jazoodm9p
ZCAoXikodm9pZCkpY29tcGxldGlvbkJsb2NrCiB7CiAgICAgc3RydWN0IHRpbWVzcGVjIGRvdWJs
ZURlbGF5ID0geyAwLCBzdGF0aWNfY2FzdDxsb25nPihtdWx0aVRhcEludGVydmFsICogbmFub3Nl
Y29uZHNQZXJTZWNvbmQpIH07CiAgICAgc3RydWN0IHRpbWVzcGVjIHByZXNzRGVsYXkgPSB7IDAs
IHN0YXRpY19jYXN0PGxvbmc+KGZpbmdlckxpZnREZWxheSAqIG5hbm9zZWNvbmRzUGVyU2Vjb25k
KSB9OwpAQCAtNzIzLDYgKzczNyw4IEBAIC0gKHZvaWQpc2VuZFRhcHM6KGludCl0YXBDb3VudCBs
b2NhdGlvbjooQ0dQb2ludClsb2NhdGlvbiB3aXRoTnVtYmVyT2ZUb3VjaGVzOihpCiAgICAgICAg
IFtzZWxmIGxpZnRVcDpsb2NhdGlvbiB0b3VjaENvdW50OnRvdWNoQ291bnRdOwogICAgICAgICBp
ZiAoaSArIDEgIT0gdGFwQ291bnQpIAogICAgICAgICAgICAgbmFub3NsZWVwKCZkb3VibGVEZWxh
eSwgMCk7CisKKyAgICAgICAgW3NlbGYgX3dhaXRGb3I6ZGVsYXldOwogICAgIH0KICAgICAKICAg
ICBbc2VsZiBzZW5kTWFya2VySElERXZlbnRXaXRoQ29tcGxldGlvbkJsb2NrOmNvbXBsZXRpb25C
bG9ja107CkBAIC03MzAsMTcgKzc0NiwxNyBAQCAtICh2b2lkKXNlbmRUYXBzOihpbnQpdGFwQ291
bnQgbG9jYXRpb246KENHUG9pbnQpbG9jYXRpb24gd2l0aE51bWJlck9mVG91Y2hlczooaQogCiAt
ICh2b2lkKXRhcDooQ0dQb2ludClsb2NhdGlvbiBjb21wbGV0aW9uQmxvY2s6KHZvaWQgKF4pKHZv
aWQpKWNvbXBsZXRpb25CbG9jawogewotICAgIFtzZWxmIHNlbmRUYXBzOjEgbG9jYXRpb246bG9j
YXRpb24gd2l0aE51bWJlck9mVG91Y2hlczoxIGNvbXBsZXRpb25CbG9jazpjb21wbGV0aW9uQmxv
Y2tdOworICAgIFtzZWxmIHNlbmRUYXBzOjEgbG9jYXRpb246bG9jYXRpb24gd2l0aE51bWJlck9m
VG91Y2hlczoxIGRlbGF5OjAgY29tcGxldGlvbkJsb2NrOmNvbXBsZXRpb25CbG9ja107CiB9CiAK
LS0gKHZvaWQpZG91YmxlVGFwOihDR1BvaW50KWxvY2F0aW9uIGNvbXBsZXRpb25CbG9jazoodm9p
ZCAoXikodm9pZCkpY29tcGxldGlvbkJsb2NrCistICh2b2lkKWRvdWJsZVRhcDooQ0dQb2ludCls
b2NhdGlvbiBkZWxheTooTlNUaW1lSW50ZXJ2YWwpZGVsYXkgY29tcGxldGlvbkJsb2NrOih2b2lk
ICheKSh2b2lkKSljb21wbGV0aW9uQmxvY2sKIHsKLSAgICBbc2VsZiBzZW5kVGFwczoyIGxvY2F0
aW9uOmxvY2F0aW9uIHdpdGhOdW1iZXJPZlRvdWNoZXM6MSBjb21wbGV0aW9uQmxvY2s6Y29tcGxl
dGlvbkJsb2NrXTsKKyAgICBbc2VsZiBzZW5kVGFwczoyIGxvY2F0aW9uOmxvY2F0aW9uIHdpdGhO
dW1iZXJPZlRvdWNoZXM6MSBkZWxheTpkZWxheSBjb21wbGV0aW9uQmxvY2s6Y29tcGxldGlvbkJs
b2NrXTsKIH0KIAogLSAodm9pZCl0d29GaW5nZXJUYXA6KENHUG9pbnQpbG9jYXRpb24gY29tcGxl
dGlvbkJsb2NrOih2b2lkICheKSh2b2lkKSljb21wbGV0aW9uQmxvY2sKIHsKLSAgICBbc2VsZiBz
ZW5kVGFwczoxIGxvY2F0aW9uOmxvY2F0aW9uIHdpdGhOdW1iZXJPZlRvdWNoZXM6MiBjb21wbGV0
aW9uQmxvY2s6Y29tcGxldGlvbkJsb2NrXTsKKyAgICBbc2VsZiBzZW5kVGFwczoxIGxvY2F0aW9u
OmxvY2F0aW9uIHdpdGhOdW1iZXJPZlRvdWNoZXM6MiBkZWxheTowIGNvbXBsZXRpb25CbG9jazpj
b21wbGV0aW9uQmxvY2tdOwogfQogCiAtICh2b2lkKWxvbmdQcmVzczooQ0dQb2ludClsb2NhdGlv
biBjb21wbGV0aW9uQmxvY2s6KHZvaWQgKF4pKHZvaWQpKWNvbXBsZXRpb25CbG9jawpkaWZmIC0t
Z2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9pb3MvVUlTY3JpcHRDb250cm9sbGVySU9TLmgg
Yi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL2lvcy9VSVNjcmlwdENvbnRyb2xsZXJJT1MuaAppbmRl
eCBkOGQ0MzMxOTYxZWY1ODI4NzJhNTc1ZTg1ODc5YzY5ZDE0MTRhYTNhLi43N2RkNTVjZjQ1Yzhl
ZTdiNTg0MDYyMzY0NjRlNzM4NWI4ODNjOGFlIDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0
UnVubmVyL2lvcy9VSVNjcmlwdENvbnRyb2xsZXJJT1MuaAorKysgYi9Ub29scy9XZWJLaXRUZXN0
UnVubmVyL2lvcy9VSVNjcmlwdENvbnRyb2xsZXJJT1MuaApAQCAtNTIsNyArNTIsNyBAQCBwdWJs
aWM6CiAgICAgdm9pZCBsaWZ0VXBBdFBvaW50KGxvbmcgeCwgbG9uZyB5LCBsb25nIHRvdWNoQ291
bnQsIEpTVmFsdWVSZWYpIG92ZXJyaWRlOwogICAgIHZvaWQgc2luZ2xlVGFwQXRQb2ludChsb25n
IHgsIGxvbmcgeSwgSlNWYWx1ZVJlZikgb3ZlcnJpZGU7CiAgICAgdm9pZCBzaW5nbGVUYXBBdFBv
aW50V2l0aE1vZGlmaWVycyhsb25nIHgsIGxvbmcgeSwgSlNWYWx1ZVJlZiBtb2RpZmllckFycmF5
LCBKU1ZhbHVlUmVmKSBvdmVycmlkZTsKLSAgICB2b2lkIGRvdWJsZVRhcEF0UG9pbnQobG9uZyB4
LCBsb25nIHksIEpTVmFsdWVSZWYpIG92ZXJyaWRlOworICAgIHZvaWQgZG91YmxlVGFwQXRQb2lu
dChsb25nIHgsIGxvbmcgeSwgZmxvYXQgZGVsYXksIEpTVmFsdWVSZWYpIG92ZXJyaWRlOwogICAg
IHZvaWQgc3R5bHVzRG93bkF0UG9pbnQobG9uZyB4LCBsb25nIHksIGZsb2F0IGF6aW11dGhBbmds
ZSwgZmxvYXQgYWx0aXR1ZGVBbmdsZSwgZmxvYXQgcHJlc3N1cmUsIEpTVmFsdWVSZWYpIG92ZXJy
aWRlOwogICAgIHZvaWQgc3R5bHVzTW92ZVRvUG9pbnQobG9uZyB4LCBsb25nIHksIGZsb2F0IGF6
aW11dGhBbmdsZSwgZmxvYXQgYWx0aXR1ZGVBbmdsZSwgZmxvYXQgcHJlc3N1cmUsIEpTVmFsdWVS
ZWYpIG92ZXJyaWRlOwogICAgIHZvaWQgc3R5bHVzVXBBdFBvaW50KGxvbmcgeCwgbG9uZyB5LCBK
U1ZhbHVlUmVmKSBvdmVycmlkZTsKQEAgLTEzOSw2ICsxMzksOSBAQCBwdWJsaWM6CiAgICAgdm9p
ZCBzZXREaWREaXNtaXNzUG9wb3ZlckNhbGxiYWNrKEpTVmFsdWVSZWYpIG92ZXJyaWRlOwogICAg
IHZvaWQgc2V0RGlkRW5kU2Nyb2xsaW5nQ2FsbGJhY2soSlNWYWx1ZVJlZikgb3ZlcnJpZGU7CiAg
ICAgdm9pZCBjbGVhckFsbENhbGxiYWNrcygpIG92ZXJyaWRlOworCitwcml2YXRlOgorICAgIHZv
aWQgd2FpdEZvclNpbmdsZVRhcFRvUmVzZXQoKSBjb25zdDsKIH07CiAKIH0KZGlmZiAtLWdpdCBh
L1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvaW9zL1VJU2NyaXB0Q29udHJvbGxlcklPUy5tbSBiL1Rv
b2xzL1dlYktpdFRlc3RSdW5uZXIvaW9zL1VJU2NyaXB0Q29udHJvbGxlcklPUy5tbQppbmRleCAz
ZTBiZGVjOTA3M2YwODEyMjRjMjM3NmYzYjkzMjVmYzUzNWEwNjRkLi5lMTBkOWVjYTcxZmZlYTA3
ZGQ3MjU4YTFjNzJiMTQ1Yjg1YTlmYzA1IDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVu
bmVyL2lvcy9VSVNjcmlwdENvbnRyb2xsZXJJT1MubW0KKysrIGIvVG9vbHMvV2ViS2l0VGVzdFJ1
bm5lci9pb3MvVUlTY3JpcHRDb250cm9sbGVySU9TLm1tCkBAIC0yNjMsMTAgKzI2MywyMSBAQCB2
b2lkIFVJU2NyaXB0Q29udHJvbGxlcklPUzo6c2luZ2xlVGFwQXRQb2ludChsb25nIHgsIGxvbmcg
eSwgSlNWYWx1ZVJlZiBjYWxsYmFjawogICAgIHNpbmdsZVRhcEF0UG9pbnRXaXRoTW9kaWZpZXJz
KHgsIHksIG51bGxwdHIsIGNhbGxiYWNrKTsKIH0KIAordm9pZCBVSVNjcmlwdENvbnRyb2xsZXJJ
T1M6OndhaXRGb3JTaW5nbGVUYXBUb1Jlc2V0KCkgY29uc3QKK3sKKyAgICBib29sIGRvbmVXYWl0
aW5nRm9yU2luZ2xlVGFwVG9SZXNldCA9IGZhbHNlOworICAgIFt3ZWJWaWV3KCkgX2RvQWZ0ZXJS
ZXNldHRpbmdTaW5nbGVUYXBHZXN0dXJlOlsmZG9uZVdhaXRpbmdGb3JTaW5nbGVUYXBUb1Jlc2V0
XSB7CisgICAgICAgIGRvbmVXYWl0aW5nRm9yU2luZ2xlVGFwVG9SZXNldCA9IHRydWU7CisgICAg
fV07CisgICAgVGVzdENvbnRyb2xsZXI6OnNpbmdsZXRvbigpLnJ1blVudGlsKGRvbmVXYWl0aW5n
Rm9yU2luZ2xlVGFwVG9SZXNldCwgMC41X3MpOworfQorCiB2b2lkIFVJU2NyaXB0Q29udHJvbGxl
cklPUzo6c2luZ2xlVGFwQXRQb2ludFdpdGhNb2RpZmllcnMobG9uZyB4LCBsb25nIHksIEpTVmFs
dWVSZWYgbW9kaWZpZXJBcnJheSwgSlNWYWx1ZVJlZiBjYWxsYmFjaykKIHsKICAgICB1bnNpZ25l
ZCBjYWxsYmFja0lEID0gbV9jb250ZXh0LT5wcmVwYXJlRm9yQXN5bmNUYXNrKGNhbGxiYWNrLCBD
YWxsYmFja1R5cGVOb25QZXJzaXN0ZW50KTsKIAorICAgIHdhaXRGb3JTaW5nbGVUYXBUb1Jlc2V0
KCk7CisKICAgICBhdXRvIG1vZGlmaWVyRmxhZ3MgPSBwYXJzZU1vZGlmaWVyQXJyYXkobV9jb250
ZXh0LT5qc0NvbnRleHQoKSwgbW9kaWZpZXJBcnJheSk7CiAgICAgZm9yIChhdXRvJiBtb2RpZmll
ckZsYWcgOiBtb2RpZmllckZsYWdzKQogICAgICAgICBbW0hJREV2ZW50R2VuZXJhdG9yIHNoYXJl
ZEhJREV2ZW50R2VuZXJhdG9yXSBrZXlEb3duOm1vZGlmaWVyRmxhZ107CkBAIC0yODYsMTEgKzI5
NywxMSBAQCB2b2lkIFVJU2NyaXB0Q29udHJvbGxlcklPUzo6c2luZ2xlVGFwQXRQb2ludFdpdGhN
b2RpZmllcnMobG9uZyB4LCBsb25nIHksIEpTVmFsdQogICAgIH1dOwogfQogCi12b2lkIFVJU2Ny
aXB0Q29udHJvbGxlcklPUzo6ZG91YmxlVGFwQXRQb2ludChsb25nIHgsIGxvbmcgeSwgSlNWYWx1
ZVJlZiBjYWxsYmFjaykKK3ZvaWQgVUlTY3JpcHRDb250cm9sbGVySU9TOjpkb3VibGVUYXBBdFBv
aW50KGxvbmcgeCwgbG9uZyB5LCBmbG9hdCBkZWxheSwgSlNWYWx1ZVJlZiBjYWxsYmFjaykKIHsK
ICAgICB1bnNpZ25lZCBjYWxsYmFja0lEID0gbV9jb250ZXh0LT5wcmVwYXJlRm9yQXN5bmNUYXNr
KGNhbGxiYWNrLCBDYWxsYmFja1R5cGVOb25QZXJzaXN0ZW50KTsKIAotICAgIFtbSElERXZlbnRH
ZW5lcmF0b3Igc2hhcmVkSElERXZlbnRHZW5lcmF0b3JdIGRvdWJsZVRhcDpnbG9iYWxUb0NvbnRl
bnRDb29yZGluYXRlcyh3ZWJWaWV3KCksIHgsIHkpIGNvbXBsZXRpb25CbG9jazpeeworICAgIFtb
SElERXZlbnRHZW5lcmF0b3Igc2hhcmVkSElERXZlbnRHZW5lcmF0b3JdIGRvdWJsZVRhcDpnbG9i
YWxUb0NvbnRlbnRDb29yZGluYXRlcyh3ZWJWaWV3KCksIHgsIHkpIGRlbGF5OmRlbGF5IGNvbXBs
ZXRpb25CbG9jazpeewogICAgICAgICBpZiAoIW1fY29udGV4dCkKICAgICAgICAgICAgIHJldHVy
bjsKICAgICAgICAgbV9jb250ZXh0LT5hc3luY1Rhc2tDb21wbGV0ZShjYWxsYmFja0lEKTsKQEAg
LTM0Miw2ICszNTMsOCBAQCB2b2lkIFVJU2NyaXB0Q29udHJvbGxlcklPUzo6c3R5bHVzVGFwQXRQ
b2ludFdpdGhNb2RpZmllcnMobG9uZyB4LCBsb25nIHksIGZsb2F0CiB7CiAgICAgdW5zaWduZWQg
Y2FsbGJhY2tJRCA9IG1fY29udGV4dC0+cHJlcGFyZUZvckFzeW5jVGFzayhjYWxsYmFjaywgQ2Fs
bGJhY2tUeXBlTm9uUGVyc2lzdGVudCk7CiAKKyAgICB3YWl0Rm9yU2luZ2xlVGFwVG9SZXNldCgp
OworCiAgICAgYXV0byBtb2RpZmllckZsYWdzID0gcGFyc2VNb2RpZmllckFycmF5KG1fY29udGV4
dC0+anNDb250ZXh0KCksIG1vZGlmaWVyQXJyYXkpOwogICAgIGZvciAoYXV0byYgbW9kaWZpZXJG
bGFnIDogbW9kaWZpZXJGbGFncykKICAgICAgICAgW1tISURFdmVudEdlbmVyYXRvciBzaGFyZWRI
SURFdmVudEdlbmVyYXRvcl0ga2V5RG93bjptb2RpZmllckZsYWddOwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDNhMjYyNmZm
MzI5NGE1NTM4ZmMwMDFjN2EyMzA2OTM2NzQxMzk0ODAuLjVkMDc4ZmI5ODNiZjc3OGZiNDUyM2Jk
OTVhOWQ4ZmQ0OGE5MjI5OTIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysg
Yi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSw1MyBAQAorMjAxOS0wOC0yNiAgV2Vu
c29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KKworICAgICAgICBSRUdSRVNTSU9O
IChpT1MgMTMpOiBUZXN0cyB0aGF0IHNpbXVsYXRlIG11bHRpcGxlIGJhY2stdG8tYmFjayBzaW5n
bGUgdGFwcyBmYWlsIG9yIHRpbWUgb3V0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMDExMjkKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzUxODU3Mjc3
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkanVz
dHMgYSBmZXcgbGF5b3V0IHRlc3RzIGFmdGVyIGNoYW5nZXMgdG8gVUlTY3JpcHRDb250cm9sbGVy
Ojpkb3VibGVUYXBBdFBvaW50IGFuZAorICAgICAgICBVSVNjcmlwdENvbnRyb2xsZXI6OnNpbmds
ZVRhcEF0UG9pbnQuCisKKyAgICAgICAgKiBlZGl0aW5nL3NlbGVjdGlvbi9pb3MvY2hhbmdlLXNl
bGVjdGlvbi1ieS10YXBwaW5nLmh0bWw6CisKKyAgICAgICAgVHdlYWsgdGhpcyB0ZXN0IHRvIHRh
cCB0aGUgcGFnZSAxMiB0aW1lcyBpbnN0ZWFkIG9mIDIwICh3aGljaCBzZWVtcyB0byBjYXVzZSBv
Y2Nhc2lvbmFsIHRpbWVvdXRzIGxvY2FsbHksIHdoZW4KKyAgICAgICAgcnVubmluZyBhbGwgbGF5
b3V0IHRlc3RzIHdpdGggYSBkb3plbiBhY3RpdmUgc2ltdWxhdG9ycykuCisKKyAgICAgICAgKiBm
YXN0L2V2ZW50cy9pb3MvZG91YmxlLXRhcC16b29tLmh0bWw6CisgICAgICAgICogZmFzdC9ldmVu
dHMvaW9zL3ZpZXdwb3J0LWRldmljZS13aWR0aC1hbGxvd3MtZG91YmxlLXRhcC16b29tLW91dC5o
dG1sOgorICAgICAgICAqIGZhc3QvZXZlbnRzL2lvcy92aWV3cG9ydC1zaHJpbmstdG8tZml0LWFs
bG93cy1kb3VibGUtdGFwLmh0bWw6CisKKyAgICAgICAgQXVnbWVudCBhIGZldyBjYWxsIHNpdGVz
IG9mIGBkb3VibGVUYXBBdFBvaW50YCB3aXRoIGEgMCBkZWxheS4gSWRlYWxseSwgdGhlc2Ugc2hv
dWxkIGp1c3QgdXNlIHVpLWhlbHBlci5qcywgYnV0CisgICAgICAgIHdlIGNhbiByZWZhY3RvciB0
aGVzZSB0ZXN0cyBhcyBhIHBhcnQgb2YgZm9sZGluZyBiYXNpYy1nZXN0dXJlcy5qcyBpbnRvIHVp
LWhlbHBlci5qcy4KKworICAgICAgICAqIHBsYXRmb3JtL2lwYWQvVGVzdEV4cGVjdGF0aW9uczoK
KworICAgICAgICBVbnNraXAgdGhlc2UgdGVzdHMgb24gaVBhZCwgbm93IHRoYXQgdGhleSBzaG91
bGQgcGFzcy4KKworICAgICAgICAqIHBvaW50ZXJldmVudHMvdXRpbHMuanM6CisgICAgICAgIChj
b25zdC51aS5uZXcuVUlDb250cm9sbGVyLnByb3RvdHlwZS5kb3VibGVUYXBUb1pvb20pOgorICAg
ICAgICAqIHJlc291cmNlcy9iYXNpYy1nZXN0dXJlcy5qczoKKyAgICAgICAgKHJldHVybi5uZXcu
UHJvbWlzZS4pOgorICAgICAgICAocmV0dXJuLm5ldy5Qcm9taXNlKToKKworICAgICAgICBBZGp1
c3Qgc29tZSBtb3JlIGNhbGwgc2l0ZXMgb2YgYGRvdWJsZVRhcEF0UG9pbnRgLiBJZGVhbGx5LCB0
aGVzZSBzaG91bGQgdXNlIGp1c3QgYHVpLWhlbHBlci5qc2AgdG9vLgorCisgICAgICAgICogcmVz
b3VyY2VzL3VpLWhlbHBlci5qczoKKyAgICAgICAgKHdpbmRvdy5VSUhlbHBlci5kb3VibGVUYXBB
dC5yZXR1cm4ubmV3LlByb21pc2UpOgorICAgICAgICAod2luZG93LlVJSGVscGVyLmRvdWJsZVRh
cEF0KToKKyAgICAgICAgKHdpbmRvdy5VSUhlbHBlci5odW1hblNwZWVkRG91YmxlVGFwQXQpOgor
ICAgICAgICAod2luZG93LlVJSGVscGVyLmh1bWFuU3BlZWRab29tQnlEb3VibGVUYXBwaW5nQXQp
OgorCisgICAgICAgIEFkZCBhIGRlbGF5IHBhcmFtZXRlciB0byBgZG91YmxlVGFwQXRgIHRvIHNw
ZWNpZnkgYSBkZWxheSBhZnRlciBlYWNoIHNpbXVsYXRlZCB0YXAuIEJ5IGRlZmF1bHQsIHRoaXMg
aXMgMCwgYnV0CisgICAgICAgIHRoZSBgaHVtYW5TcGVlZCpgIGhlbHBlcnMgYWRkIGEgZGVsYXkg
b2YgMTIwIG1pbGxpc2Vjb25kcy4gQWRkaXRpb25hbGx5LCB0aGVzZSBoZWxwZXJzIHdlcmUgcHJl
dmlvdXNseSBjYWxsaW5nCisgICAgICAgIGBzaW5nbGVUYXBBdFBvaW50YCB0d2ljZSwgd2l0aCBh
IHRpbWVvdXQgaW4gYmV0d2VlbiB0byBhZGQgYSBkZWxheS4gSW5zdGVhZCwgY2FsbCBgZG91Ymxl
VGFwQXRQb2ludGAgd2l0aCBhCisgICAgICAgIG5vbnplcm8gZGVsYXk7IG90aGVyd2lzZSwgd2Un
bGwgZW5kIHVwIHdhaXRpbmcgaW4gYHNpbmdsZVRhcEF0UG9pbnRgIGZvciB0aGUgZ2VzdHVyZSBz
dWJncmFwaCBjb250YWluaW5nIGJvdGgKKyAgICAgICAgdGhlIGRvdWJsZSB0YXAgZ2VzdHVyZXMg
YW5kIHRoZSBzeW50aGV0aWMgc2luZ2xlIHRhcCBnZXN0dXJlIHRvIHJlc2V0LCB3aGljaCBjYXVz
ZXMgdGhlc2UgdHdvIHNpbmdsZSB0YXBzIHRvIG5vCisgICAgICAgIGxvbmdlciBiZSByZWNvZ25p
emVkIGFzIGEgZG91YmxlIHRhcCBnZXN0dXJlLgorCisgICAgICAgICh3aW5kb3cuVUlIZWxwZXIu
em9vbUJ5RG91YmxlVGFwcGluZ0F0KToKKwogMjAxOS0wOC0yMyAgV2Vuc29uIEhzaWVoICA8d2Vu
c29uX2hzaWVoQGFwcGxlLmNvbT4KIAogICAgICAgICBbaU9TXSBbV2ViS2l0Ml0gVGFwcGluZyBv
biB0aGUg4oCcSeKAmW3igJ0gdGV4dCBzdWdnZXN0aW9uIGFmdGVyIHR5cGluZyDigJxp4oCZ4oCd
IGRvZXMgbm90aGluZwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24v
aW9zL2NoYW5nZS1zZWxlY3Rpb24tYnktdGFwcGluZy5odG1sIGIvTGF5b3V0VGVzdHMvZWRpdGlu
Zy9zZWxlY3Rpb24vaW9zL2NoYW5nZS1zZWxlY3Rpb24tYnktdGFwcGluZy5odG1sCmluZGV4IGVk
ZDc1YzNjNWQ2NmNkNGNhMTIxNDJlNjQxYjI2NjBmY2YyNGQyODEuLmQ1N2NkZjY0ODVkODhiNzg5
YjM3MGI2MzRiNmM0NDFiZTUxZGUxZGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2VkaXRpbmcv
c2VsZWN0aW9uL2lvcy9jaGFuZ2Utc2VsZWN0aW9uLWJ5LXRhcHBpbmcuaHRtbAorKysgYi9MYXlv
dXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3MvY2hhbmdlLXNlbGVjdGlvbi1ieS10YXBwaW5n
Lmh0bWwKQEAgLTQwLDcgKzQwLDcgQEAgYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIGFzeW5jICgp
ID0+IHsKICAgICBkZXNjcmlwdGlvbigiVmVyaWZpZXMgdGhhdCByYXBpZGx5IHRhcHBpbmcgdG8g
Y2hhbmdlIHNlbGVjdGlvbiBkb2Vzbid0IGhhbmcgZHVlIHRvIElQQyBkZWFkbG9jay4gVG8gdmVy
aWZ5IG1hbnVhbGx5LCBmb2N1cyB0aGUgZWRpdGFibGUgdGV4dCBhbmQgdGFwIHJlcGVhdGVkbHkg
aW4gZGlmZmVyZW50IHBhcnRzIG9mIHRoZSBlZGl0YWJsZSBhcmVhIHRvIGNoYW5nZSBzZWxlY3Rp
b247IGNoZWNrIHRoYXQgdGhpcyBkb2VzIG5vdCByZXN1bHQgaW4gc3BvcmFkaWMgMS1zZWNvbmQg
SVBDIGhhbmdzLiIpOwogCiAgICAgYXdhaXQgVUlIZWxwZXIuYWN0aXZhdGVFbGVtZW50QW5kV2Fp
dEZvcklucHV0U2Vzc2lvbihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZWRpdG9yIikpOwotICAg
IGZvciAobGV0IGkgPSAwOyBpIDwgNTsgKytpKSB7CisgICAgZm9yIChsZXQgaSA9IDA7IGkgPCAz
OyArK2kpIHsKICAgICAgICAgZm9yIChjb25zdCBbeCwgeV0gb2YgW1s0MCwgNDBdLCBbMjIwLCA0
MF0sIFs0MCwgMjQwXSwgWzIyMCwgMjQwXV0pCiAgICAgICAgICAgICBhd2FpdCB0YXBBbmRXYWl0
Rm9yU2VsZWN0aW9uQ2hhbmdlKHgsIHkpOwogICAgIH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3QvZXZlbnRzL2lvcy9kb3VibGUtdGFwLXpvb20uaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qv
ZXZlbnRzL2lvcy9kb3VibGUtdGFwLXpvb20uaHRtbAppbmRleCAzNzIzZGU2M2M5Njg2ZDNmNmMz
YTZkNWZkYjRhNTc5MDNmMjM4OTc5Li5mZjdjZDE4NGYwZTE3MzY1YTkwMjI3ZTVlZWU4OWUxYjI1
NGVmN2RkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9pb3MvZG91YmxlLXRh
cC16b29tLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvaW9zL2RvdWJsZS10YXAt
em9vbS5odG1sCkBAIC05LDcgKzksNyBAQAogICAgICAgICAgICAgICAgIHVpQ29udHJvbGxlci51
aVNjcmlwdENvbXBsZXRlKCdab29tZWQgdG8gc2NhbGUgJyArIHVpQ29udHJvbGxlci56b29tU2Nh
bGUpOwogICAgICAgICAgICAgfTsKIAotICAgICAgICAgICAgdWlDb250cm9sbGVyLmRvdWJsZVRh
cEF0UG9pbnQoNTAsIDUwLCBmdW5jdGlvbigpIHt9KTsKKyAgICAgICAgICAgIHVpQ29udHJvbGxl
ci5kb3VibGVUYXBBdFBvaW50KDUwLCA1MCwgMCwgZnVuY3Rpb24oKSB7fSk7CiAgICAgICAgIH0p
KCk7CiAgICAgPC9zY3JpcHQ+CiAgICAgPHNjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3QvZXZlbnRzL2lvcy92aWV3cG9ydC1kZXZpY2Utd2lkdGgtYWxsb3dzLWRvdWJsZS10YXAt
em9vbS1vdXQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL2lvcy92aWV3cG9ydC1kZXZp
Y2Utd2lkdGgtYWxsb3dzLWRvdWJsZS10YXAtem9vbS1vdXQuaHRtbAppbmRleCBiMjI3MjM1Yjdl
NzVlYzkzNTAxYWEzNGRiOGU3NzEwNTRiOGRmMjFiLi4zMDM1MzJiMDc5Y2FmNzE0NzU5Yjk1YjVj
ZTliYzUzNmY1M2VjOTI4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9pb3Mv
dmlld3BvcnQtZGV2aWNlLXdpZHRoLWFsbG93cy1kb3VibGUtdGFwLXpvb20tb3V0Lmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvaW9zL3ZpZXdwb3J0LWRldmljZS13aWR0aC1hbGxv
d3MtZG91YmxlLXRhcC16b29tLW91dC5odG1sCkBAIC04LDcgKzgsNyBAQAogICAgICAgICAgICAg
dWlDb250cm9sbGVyLmRpZEVuZFpvb21pbmdDYWxsYmFjayA9IGZ1bmN0aW9uKCkgewogICAgICAg
ICAgICAgICAgIHVpQ29udHJvbGxlci51aVNjcmlwdENvbXBsZXRlKHVpQ29udHJvbGxlci56b29t
U2NhbGUpOwogICAgICAgICAgICAgfTsKLSAgICAgICAgICAgIHVpQ29udHJvbGxlci5kb3VibGVU
YXBBdFBvaW50KDE1LCAxNSwgZnVuY3Rpb24oKSB7fSk7CisgICAgICAgICAgICB1aUNvbnRyb2xs
ZXIuZG91YmxlVGFwQXRQb2ludCgxNSwgMTUsIDAsIGZ1bmN0aW9uKCkge30pOwogICAgICAgICB9
KSgpOwogICAgIDwvc2NyaXB0PgogICAgIDxzY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L2V2ZW50cy9pb3Mvdmlld3BvcnQtc2hyaW5rLXRvLWZpdC1hbGxvd3MtZG91YmxlLXRh
cC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvaW9zL3ZpZXdwb3J0LXNocmluay10by1m
aXQtYWxsb3dzLWRvdWJsZS10YXAuaHRtbAppbmRleCBmMzhhMWQ3OWFiY2VmZDg0ZTZlZDkyOGRm
YzM0ZmE5NWNlNTM4NGZkLi4wMTYwN2E2ZjYxODcxYjQ3NzIzMTk1YjMyODZiOGJjNGRmMGM2YTc1
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9pb3Mvdmlld3BvcnQtc2hyaW5r
LXRvLWZpdC1hbGxvd3MtZG91YmxlLXRhcC5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZXZl
bnRzL2lvcy92aWV3cG9ydC1zaHJpbmstdG8tZml0LWFsbG93cy1kb3VibGUtdGFwLmh0bWwKQEAg
LTE2LDcgKzE2LDcgQEAKICAgICAgICAgICAgICAgICAgICAgdWlDb250cm9sbGVyLmRpZEVuZFpv
b21pbmdDYWxsYmFjayA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICAgdWlD
b250cm9sbGVyLnVpU2NyaXB0Q29tcGxldGUodWlDb250cm9sbGVyLnpvb21TY2FsZSk7CiAgICAg
ICAgICAgICAgICAgICAgIH07Ci0gICAgICAgICAgICAgICAgICAgIHVpQ29udHJvbGxlci5kb3Vi
bGVUYXBBdFBvaW50KDE1LCA2MCwgZnVuY3Rpb24oKSB7fSk7CisgICAgICAgICAgICAgICAgICAg
IHVpQ29udHJvbGxlci5kb3VibGVUYXBBdFBvaW50KDE1LCA2MCwgMCwgZnVuY3Rpb24oKSB7fSk7
CiAgICAgICAgICAgICAgICAgfSkoKTtgOwogICAgICAgICB9CiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3BsYXRmb3JtL2lwYWQvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRm
b3JtL2lwYWQvVGVzdEV4cGVjdGF0aW9ucwppbmRleCAzODVkMGUwYmRkYzljYTQwODA4YWI1YmQ5
ZThiZDBkMzA2MzM5NWY0Li5mZGM2NDY4ZDEwNTMzZDUyZjNhZDBkYzNkNDAzOTAzZGUzMjM3MzEx
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pcGFkL1Rlc3RFeHBlY3RhdGlvbnMK
KysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaXBhZC9UZXN0RXhwZWN0YXRpb25zCkBAIC02Niwx
MiArNjYsNiBAQCBmYXN0L3RleHQtYXV0b3NpemluZy9pb3MvcGVyY2VudC1hZGp1c3QtcGVyY2Vu
dC1saW5lLWhlaWdodC5odG1sIFsgRmFpbHVyZSBdCiBmYXN0L3RleHQtYXV0b3NpemluZy9pb3Mv
YXV0b3NpemUtd2lkdGguaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQogZmFzdC90ZXh0LWF1dG9z
aXppbmcvaW9zL3RleHQtc2l6ZS1hZGp1c3QtaW5saW5lLXN0eWxlLmh0bWwgWyBJbWFnZU9ubHlG
YWlsdXJlIF0KIAotIyA8cmRhcjovL3Byb2JsZW0vNTE4NTcyNzc+IGlPUyAxMyBpUGFkOiBlZGl0
aW5nL3Bhc3RlYm9hcmQvaW9zL2RvbS1wYXN0ZS0qIGxheW91dCB0ZXN0cyB0aW1pbmcgb3V0Ci1l
ZGl0aW5nL3Bhc3RlYm9hcmQvaW9zL2RvbS1wYXN0ZS1jb25maXJtYXRpb24uaHRtbCBbIFNraXAg
XQotZWRpdGluZy9wYXN0ZWJvYXJkL2lvcy9kb20tcGFzdGUtY29uc2VjdXRpdmUtY29uZmlybWF0
aW9ucy5odG1sIFsgU2tpcCBdCi1lZGl0aW5nL3Bhc3RlYm9hcmQvaW9zL2RvbS1wYXN0ZS1yZWpl
Y3Rpb24uaHRtbCBbIFNraXAgXQotZWRpdGluZy9wYXN0ZWJvYXJkL2lvcy9kb20tcGFzdGUtcmVx
dWlyZXMtdXNlci1nZXN0dXJlLmh0bWwgWyBTa2lwIF0KLQogIyA8cmRhcjovL3Byb2JsZW0vNTE4
NjI2Mjk+IFJFR1JFU1NJT04gKHIyNDQyMzkpIFsgaVBhZCBTaW0gXSBMYXlvdXQgVGVzdCBmYXN0
L2NhbnZhcy9jYW52YXMtdG9vLWxhcmdlLXRvLWRyYXcuaHRtbCBpcyBmYWlsaW5nCiBmYXN0L2Nh
bnZhcy9jYW52YXMtdG9vLWxhcmdlLXRvLWRyYXcuaHRtbCBbIEZhaWx1cmUgXQogCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9wb2ludGVyZXZlbnRzL3V0aWxzLmpzIGIvTGF5b3V0VGVzdHMvcG9p
bnRlcmV2ZW50cy91dGlscy5qcwppbmRleCAyMDg3OGU4ZDdiNDhmNDI0NDRmMzRjZDAyYWZiZDhl
YmRmZWUxOTJkLi42Y2ZjM2E5YTFjN2M2YTdiM2Q4NzQyODQyOTM5YTMzYTYzOWExYjdjIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9wb2ludGVyZXZlbnRzL3V0aWxzLmpzCisrKyBiL0xheW91dFRl
c3RzL3BvaW50ZXJldmVudHMvdXRpbHMuanMKQEAgLTEyNiw3ICsxMjYsNyBAQCBjb25zdCB1aSA9
IG5ldyAoY2xhc3MgVUlDb250cm9sbGVyIHsKICAgICBkb3VibGVUYXBUb1pvb20ob3B0aW9ucykK
ICAgICB7CiAgICAgICAgIGNvbnN0IGR1cmF0aW9uSW5TZWNvbmRzID0gMC4zNTsKLSAgICAgICAg
cmV0dXJuIG5ldyBQcm9taXNlKHJlc29sdmUgPT4gdGhpcy5fcnVuKGB1aUNvbnRyb2xsZXIuZG91
YmxlVGFwQXRQb2ludCgke29wdGlvbnMueH0sICR7b3B0aW9ucy55fSlgKS50aGVuKCgpID0+Cisg
ICAgICAgIHJldHVybiBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHRoaXMuX3J1bihgdWlDb250cm9s
bGVyLmRvdWJsZVRhcEF0UG9pbnQoJHtvcHRpb25zLnh9LCAke29wdGlvbnMueX0sIDApYCkudGhl
bigoKSA9PgogICAgICAgICAgICAgc2V0VGltZW91dChyZXNvbHZlLCBkdXJhdGlvbkluU2Vjb25k
cyAqIDEwMDApCiAgICAgICAgICkpOwogICAgICAgICByZXR1cm4gdGhpcy5fcnVuKCk7CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9yZXNvdXJjZXMvYmFzaWMtZ2VzdHVyZXMuanMgYi9MYXlvdXRU
ZXN0cy9yZXNvdXJjZXMvYmFzaWMtZ2VzdHVyZXMuanMKaW5kZXggM2MxOWFkMjRmNmU2ODc2NTIy
OTZlOTA0NjRkNjEyZGZjYTlhZGZmZS4uZDNlNWEwY2QxOTdjZjI3YzQwNmViMTBjNDVlODU2ZmM4
OThiMmY4NCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcmVzb3VyY2VzL2Jhc2ljLWdlc3R1cmVz
LmpzCisrKyBiL0xheW91dFRlc3RzL3Jlc291cmNlcy9iYXNpYy1nZXN0dXJlcy5qcwpAQCAtMzIs
NyArMzIsNyBAQCBmdW5jdGlvbiBkb3VibGVUYXBBdFBvaW50KHgsIHkpCiAgICAgcmV0dXJuIG5l
dyBQcm9taXNlKHJlc29sdmUgPT4gewogICAgICAgICB0ZXN0UnVubmVyLnJ1blVJU2NyaXB0KGAK
ICAgICAgICAgICAgIChmdW5jdGlvbigpIHsKLSAgICAgICAgICAgICAgICB1aUNvbnRyb2xsZXIu
ZG91YmxlVGFwQXRQb2ludCgke3h9LCAke3l9LCBmdW5jdGlvbigpIHsKKyAgICAgICAgICAgICAg
ICB1aUNvbnRyb2xsZXIuZG91YmxlVGFwQXRQb2ludCgke3h9LCAke3l9LCAwLCBmdW5jdGlvbigp
IHsKICAgICAgICAgICAgICAgICAgICAgdWlDb250cm9sbGVyLnVpU2NyaXB0Q29tcGxldGUoKTsK
ICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgIH0pKCk7YCwgcmVzb2x2ZSk7CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9yZXNvdXJjZXMvdWktaGVscGVyLmpzIGIvTGF5b3V0VGVzdHMv
cmVzb3VyY2VzL3VpLWhlbHBlci5qcwppbmRleCAzYjU4ZGM2YjAxMjkxMDRmNTZkNjNiMmFjMDQ1
ODdmMzY1NmI4NzU4Li5lNzVjOGU4OGRlNzNjZGEyMWQxMTBjNTJjY2IzZGUwY2NhYjA3NmRmIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9yZXNvdXJjZXMvdWktaGVscGVyLmpzCisrKyBiL0xheW91
dFRlc3RzL3Jlc291cmNlcy91aS1oZWxwZXIuanMKQEAgLTUwLDcgKzUwLDcgQEAgd2luZG93LlVJ
SGVscGVyID0gY2xhc3MgVUlIZWxwZXIgewogICAgICAgICB9KTsKICAgICB9CiAKLSAgICBzdGF0
aWMgZG91YmxlVGFwQXQoeCwgeSkKKyAgICBzdGF0aWMgZG91YmxlVGFwQXQoeCwgeSwgZGVsYXkg
PSAwKQogICAgIHsKICAgICAgICAgY29uc29sZS5hc3NlcnQodGhpcy5pc0lPU0ZhbWlseSgpKTsK
IApAQCAtNjgsNyArNjgsNyBAQCB3aW5kb3cuVUlIZWxwZXIgPSBjbGFzcyBVSUhlbHBlciB7CiAK
ICAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7CiAgICAgICAgICAgICB0
ZXN0UnVubmVyLnJ1blVJU2NyaXB0KGAKLSAgICAgICAgICAgICAgICB1aUNvbnRyb2xsZXIuZG91
YmxlVGFwQXRQb2ludCgke3h9LCAke3l9LCBmdW5jdGlvbigpIHsKKyAgICAgICAgICAgICAgICB1
aUNvbnRyb2xsZXIuZG91YmxlVGFwQXRQb2ludCgke3h9LCAke3l9LCAke2RlbGF5fSwgZnVuY3Rp
b24oKSB7CiAgICAgICAgICAgICAgICAgICAgIHVpQ29udHJvbGxlci51aVNjcmlwdENvbXBsZXRl
KCk7CiAgICAgICAgICAgICAgICAgfSk7YCwgcmVzb2x2ZSk7CiAgICAgICAgIH0pOwpAQCAtOTEs
MTIgKzkxLDcgQEAgd2luZG93LlVJSGVscGVyID0gY2xhc3MgVUlIZWxwZXIgewogICAgICAgICAg
ICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpOwogICAgICAgICB9CiAKLSAgICAgICAgcmV0dXJu
IG5ldyBQcm9taXNlKGFzeW5jIChyZXNvbHZlKSA9PiB7Ci0gICAgICAgICAgICBhd2FpdCBVSUhl
bHBlci50YXBBdCh4LCB5KTsKLSAgICAgICAgICAgIGF3YWl0IG5ldyBQcm9taXNlKHJlc29sdmVB
ZnRlckRlbGF5ID0+IHNldFRpbWVvdXQocmVzb2x2ZUFmdGVyRGVsYXksIDEyMCkpOwotICAgICAg
ICAgICAgYXdhaXQgVUlIZWxwZXIudGFwQXQoeCwgeSk7Ci0gICAgICAgICAgICByZXNvbHZlKCk7
Ci0gICAgICAgIH0pOworICAgICAgICByZXR1cm4gVUlIZWxwZXIuZG91YmxlVGFwQXQoeCwgeSwg
MC4xMik7CiAgICAgfQogCiAgICAgc3RhdGljIGh1bWFuU3BlZWRab29tQnlEb3VibGVUYXBwaW5n
QXQoeCwgeSkKQEAgLTExNywxNyArMTEyLDEyIEBAIHdpbmRvdy5VSUhlbHBlciA9IGNsYXNzIFVJ
SGVscGVyIHsKICAgICAgICAgfQogCiAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZShhc3luYyAo
cmVzb2x2ZSkgPT4gewotICAgICAgICAgICAgYXdhaXQgVUlIZWxwZXIudGFwQXQoeCwgeSk7Ci0g
ICAgICAgICAgICBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZlQWZ0ZXJEZWxheSA9PiBzZXRUaW1l
b3V0KHJlc29sdmVBZnRlckRlbGF5LCAxMjApKTsKLSAgICAgICAgICAgIGF3YWl0IG5ldyBQcm9t
aXNlKChyZXNvbHZlQWZ0ZXJab29tKSA9PiB7Ci0gICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5y
dW5VSVNjcmlwdChgCi0gICAgICAgICAgICAgICAgICAgIHVpQ29udHJvbGxlci5kaWRFbmRab29t
aW5nQ2FsbGJhY2sgPSAoKSA9PiB7Ci0gICAgICAgICAgICAgICAgICAgICAgICB1aUNvbnRyb2xs
ZXIuZGlkRW5kWm9vbWluZ0NhbGxiYWNrID0gbnVsbDsKLSAgICAgICAgICAgICAgICAgICAgICAg
IHVpQ29udHJvbGxlci51aVNjcmlwdENvbXBsZXRlKHVpQ29udHJvbGxlci56b29tU2NhbGUpOwot
ICAgICAgICAgICAgICAgICAgICB9OwotICAgICAgICAgICAgICAgICAgICB1aUNvbnRyb2xsZXIu
c2luZ2xlVGFwQXRQb2ludCgke3h9LCAke3l9LCAoKSA9PiB7fSk7YCwgcmVzb2x2ZUFmdGVyWm9v
bSk7Ci0gICAgICAgICAgICB9KTsKLSAgICAgICAgICAgIHJlc29sdmUoKTsKKyAgICAgICAgICAg
IHRlc3RSdW5uZXIucnVuVUlTY3JpcHQoYAorICAgICAgICAgICAgICAgIHVpQ29udHJvbGxlci5k
aWRFbmRab29taW5nQ2FsbGJhY2sgPSAoKSA9PiB7CisgICAgICAgICAgICAgICAgICAgIHVpQ29u
dHJvbGxlci5kaWRFbmRab29taW5nQ2FsbGJhY2sgPSBudWxsOworICAgICAgICAgICAgICAgICAg
ICB1aUNvbnRyb2xsZXIudWlTY3JpcHRDb21wbGV0ZSh1aUNvbnRyb2xsZXIuem9vbVNjYWxlKTsK
KyAgICAgICAgICAgICAgICB9OworICAgICAgICAgICAgICAgIHVpQ29udHJvbGxlci5kb3VibGVU
YXBBdFBvaW50KCR7eH0sICR7eX0sIDAuMTIsICgpID0+IHsgfSk7YCwgcmVzb2x2ZSk7CiAgICAg
ICAgIH0pOwogICAgIH0KIApAQCAtMTUzLDcgKzE0Myw3IEBAIHdpbmRvdy5VSUhlbHBlciA9IGNs
YXNzIFVJSGVscGVyIHsKICAgICAgICAgICAgICAgICAgICAgdWlDb250cm9sbGVyLmRpZEVuZFpv
b21pbmdDYWxsYmFjayA9IG51bGw7CiAgICAgICAgICAgICAgICAgICAgIHVpQ29udHJvbGxlci51
aVNjcmlwdENvbXBsZXRlKHVpQ29udHJvbGxlci56b29tU2NhbGUpOwogICAgICAgICAgICAgICAg
IH07Ci0gICAgICAgICAgICAgICAgdWlDb250cm9sbGVyLmRvdWJsZVRhcEF0UG9pbnQoJHt4fSwg
JHt5fSwgKCkgPT4ge30pO2AsIHJlc29sdmUpOworICAgICAgICAgICAgICAgIHVpQ29udHJvbGxl
ci5kb3VibGVUYXBBdFBvaW50KCR7eH0sICR7eX0sIDAsICgpID0+IHsgfSk7YCwgcmVzb2x2ZSk7
CiAgICAgICAgIH0pOwogICAgIH0KIAo=
</data>
<flag name="review"
          id="393010"
          type_id="1"
          status="+"
          setter="thorton"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>377254</attachid>
            <date>2019-08-26 10:50:59 -0700</date>
            <delta_ts>2019-08-26 12:37:36 -0700</delta_ts>
            <desc>Rebaseline some tests</desc>
            <filename>bug-201129-20190826105058.patch</filename>
            <type>text/plain</type>
            <size>36307</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ5MTAxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGU2NDI1MTJhN2MwYzRkNTAx
ZGVlYmUwYTA4Yjg2NjZiYWE4Nzg1NzQuLjVkNGRiODJiNzRlNDc4YjU5NmIxMjEwM2MzOWM2MDg1
NmQ2MzZiNDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMTktMDgtMjYgIFdlbnNvbiBI
c2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAgICAgUkVHUkVTU0lPTiAoaU9T
IDEzKTogVGVzdHMgdGhhdCBzaW11bGF0ZSBtdWx0aXBsZSBiYWNrLXRvLWJhY2sgc2luZ2xlIHRh
cHMgZmFpbCBvciB0aW1lIG91dAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjAxMTI5CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81MTg1NzI3Nz4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBUaW0gSG9ydG9uLgorCisgICAgICAgIEFkZHMgYSBuZXcgU1BJ
IGhvb2sgaW4gV2ViS2l0IHRvIGxldCBjbGllbnRzIGtub3cgd2hlbiBhIHN5bnRoZXRpYyB0YXAg
Z2VzdHVyZSB0aGF0IGhhcyBlbmRlZCBoYXMgYmVlbiByZXNldC4KKyAgICAgICAgU2VlIFRvb2xz
L0NoYW5nZUxvZyBhbmQgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGZvciBtb3JlIGRldGFpbHMuCisK
KyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbToKKyAgICAgICAgKC1b
V0tXZWJWaWV3IF9kb0FmdGVyUmVzZXR0aW5nU2luZ2xlVGFwR2VzdHVyZTpdKToKKyAgICAgICAg
KiBVSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld1ByaXZhdGUuaDoKKyAgICAgICAgKiBVSVBy
b2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5oOgorICAgICAgICAqIFVJUHJvY2Vz
cy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tOgorICAgICAgICAoLVtXS0NvbnRlbnRW
aWV3IF9zaW5nbGVUYXBEaWRSZXNldDpdKToKKyAgICAgICAgKC1bV0tDb250ZW50VmlldyBfZG9B
ZnRlclJlc2V0dGluZ1NpbmdsZVRhcEdlc3R1cmU6XSk6CisKIDIwMTktMDgtMjYgIFJ1c3NlbGwg
RXBzdGVpbiAgPHJlcHN0ZWluQGFwcGxlLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLCByb2xs
aW5nIG91dCByMjQ4OTYxLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJ
L0NvY29hL1dLV2ViVmlldy5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9X
S1dlYlZpZXcubW0KaW5kZXggOGM0MDFkOWMwYjEzZDA2YmU3MTllZDA0OTk5NzlkYTgwZDAxY2Mz
ZC4uNGI0Mjk3ZjMwZGJhM2U4YTZiMzFhYTE0NzQ5MWI5NTA3MWQzZjJhZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbQorKysgYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tCkBAIC03MDAyLDYgKzcw
MDIsMTEgQEAgLSAoTlNEaWN0aW9uYXJ5ICopX3Byb3BlcnRpZXNPZkxheWVyV2l0aElEOih1bnNp
Z25lZCBsb25nIGxvbmcpbGF5ZXJJRAogICAgIH07CiB9CiAKKy0gKHZvaWQpX2RvQWZ0ZXJSZXNl
dHRpbmdTaW5nbGVUYXBHZXN0dXJlOihkaXNwYXRjaF9ibG9ja190KWFjdGlvbgoreworICAgIFtf
Y29udGVudFZpZXcgX2RvQWZ0ZXJSZXNldHRpbmdTaW5nbGVUYXBHZXN0dXJlOmFjdGlvbl07Cit9
CisKIC0gKHZvaWQpX2RvQWZ0ZXJSZWNlaXZpbmdFZGl0RHJhZ1NuYXBzaG90Rm9yVGVzdGluZzoo
ZGlzcGF0Y2hfYmxvY2tfdClhY3Rpb24KIHsKICAgICBbX2NvbnRlbnRWaWV3IF9kb0FmdGVyUmVj
ZWl2aW5nRWRpdERyYWdTbmFwc2hvdEZvclRlc3Rpbmc6YWN0aW9uXTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXdQcml2YXRlLmggYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3UHJpdmF0ZS5oCmluZGV4IDcz
OWJjYWRjMTY2MTQwNzM1NzliZWM0OThkZDA2MGUwYzI2YThiM2EuLmJkNWViN2ZjNTI2MzAwN2Yy
MDA2M2Q2ODFiMjM4MTkzZWIwMGMzYjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXdQcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld1ByaXZhdGUuaApAQCAtNDgxLDYgKzQ4MSw3IEBAIHR5
cGVkZWYgTlNfT1BUSU9OUyhOU1VJbnRlZ2VyLCBfV0tSZWN0RWRnZSkgewogLSAodm9pZClfZGlk
U2hvd0ZvcmNlUHJlc3NQcmV2aWV3IFdLX0FQSV9BVkFJTEFCTEUoaW9zKDEwLjMpKTsKIC0gKHZv
aWQpX2RpZERpc21pc3NGb3JjZVByZXNzUHJldmlldyBXS19BUElfQVZBSUxBQkxFKGlvcygxMC4z
KSk7CiAtICh2b2lkKV9kb0FmdGVyTmV4dFN0YWJsZVByZXNlbnRhdGlvblVwZGF0ZTooZGlzcGF0
Y2hfYmxvY2tfdCl1cGRhdGVCbG9jayBXS19BUElfQVZBSUxBQkxFKGlvcygxMC4zKSk7CistICh2
b2lkKV9kb0FmdGVyUmVzZXR0aW5nU2luZ2xlVGFwR2VzdHVyZTooZGlzcGF0Y2hfYmxvY2tfdClh
Y3Rpb24gV0tfQVBJX0FWQUlMQUJMRShpb3MoV0tfSU9TX1RCQSkpOwogCiBAcHJvcGVydHkgKG5v
bmF0b21pYywgcmVhZG9ubHkpIE5TQXJyYXk8TlNWYWx1ZSAqPiAqX3VpVGV4dFNlbGVjdGlvblJl
Y3RzIFdLX0FQSV9BVkFJTEFCTEUoaW9zKDEwLjMpKTsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCBy
ZWFkb25seSkgQ0dSZWN0IF91aVRleHRDYXJldFJlY3QgV0tfQVBJX0FWQUlMQUJMRShpb3MoMTAu
MykpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZp
ZXdJbnRlcmFjdGlvbi5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZp
ZXdJbnRlcmFjdGlvbi5oCmluZGV4IDYwY2JjYzEyODNkYTk2ODVjZjE3YjAzYjIyYzU2OGFjZjA0
MWQyNzUuLmRhOGJiZmQ4YTc0ZmRkMTZjMGZlNWEwZDg2NThhZWIzMDE5MjgzZDMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24u
aAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0
aW9uLmgKQEAgLTM4NSw2ICszODUsOCBAQCBzdHJ1Y3QgV0tBdXRvQ29ycmVjdGlvbkRhdGEgewog
I2lmIEVOQUJMRShQTEFURk9STV9EUklWRU5fVEVYVF9DSEVDS0lORykKICAgICBzdGQ6OnVuaXF1
ZV9wdHI8V2ViS2l0OjpUZXh0Q2hlY2tpbmdDb250cm9sbGVyPiBfdGV4dENoZWNraW5nQ29udHJv
bGxlcjsKICNlbmRpZgorCisgICAgVmVjdG9yPEJsb2NrUHRyPHZvaWQoKT4+IF9hY3Rpb25zVG9Q
ZXJmb3JtQWZ0ZXJSZXNldHRpbmdTaW5nbGVUYXBHZXN0dXJlUmVjb2duaXplcjsKIH0KIAogQGVu
ZApAQCAtNTU1LDYgKzU1Nyw3IEBAIEZPUl9FQUNIX1BSSVZBVEVfV0tDT05URU5UVklFV19BQ1RJ
T04oREVDTEFSRV9XS0NPTlRFTlRWSUVXX0FDVElPTl9GT1JfV0VCX1ZJRVcpCiAtICh2b2lkKXNl
bGVjdEZvcm1BY2Nlc3NvcnlQaWNrZXJSb3c6KE5TSW50ZWdlcilyb3dJbmRleDsKIC0gKHZvaWQp
c2V0VGltZVBpY2tlclZhbHVlVG9Ib3VyOihOU0ludGVnZXIpaG91ciBtaW51dGU6KE5TSW50ZWdl
ciltaW51dGU7CiAtIChOU0RpY3Rpb25hcnkgKilfY29udGVudHNPZlVzZXJJbnRlcmZhY2VJdGVt
OihOU1N0cmluZyAqKXVzZXJJbnRlcmZhY2VJdGVtOworLSAodm9pZClfZG9BZnRlclJlc2V0dGlu
Z1NpbmdsZVRhcEdlc3R1cmU6KGRpc3BhdGNoX2Jsb2NrX3QpYWN0aW9uOwogLSAodm9pZClfZG9B
ZnRlclJlY2VpdmluZ0VkaXREcmFnU25hcHNob3RGb3JUZXN0aW5nOihkaXNwYXRjaF9ibG9ja190
KWFjdGlvbjsKIAogQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5KSBOU1N0cmluZyAqdGV4
dENvbnRlbnRUeXBlRm9yVGVzdGluZzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCmluZGV4IGZkNGI1MDliZjIzYTI2
NDM5ZDU5MzMzYmQ0NmQ4ZGU2MWJjYTA4ZjUuLjE3NmJiZTNjYjNkZmExNmY4MzBhOTRjMDQ1ZGEz
MjQ0NjRkYTdjNDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0Nv
bnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9z
L1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbQpAQCAtMjQ1MCw2ICsyNDUwLDkgQEAgLSAodm9p
ZClfc2luZ2xlVGFwRGlkUmVzZXQ6KFVJVGFwR2VzdHVyZVJlY29nbml6ZXIgKilnZXN0dXJlUmVj
b2duaXplcgogICAgICAgICAgICAgX3BhZ2UtPnRvdWNoV2l0aElkZW50aWZpZXJXYXNSZW1vdmVk
KHBvaW50ZXJJZCk7CiAgICAgfQogI2VuZGlmCisgICAgYXV0byBhY3Rpb25zVG9QZXJmb3JtID0g
c3RkOjpleGNoYW5nZShfYWN0aW9uc1RvUGVyZm9ybUFmdGVyUmVzZXR0aW5nU2luZ2xlVGFwR2Vz
dHVyZVJlY29nbml6ZXIsIHsgfSk7CisgICAgZm9yIChhdXRvIGFjdGlvbiA6IGFjdGlvbnNUb1Bl
cmZvcm0pCisgICAgICAgIGFjdGlvbigpOwogfQogCiAtICh2b2lkKV9kb3VibGVUYXBEaWRGYWls
OihVSVRhcEdlc3R1cmVSZWNvZ25pemVyICopZ2VzdHVyZVJlY29nbml6ZXIKQEAgLTc1NDEsNiAr
NzU0NCwxNSBAQCBAZW5kCiAKIEBpbXBsZW1lbnRhdGlvbiBXS0NvbnRlbnRWaWV3IChXS1Rlc3Rp
bmcpCiAKKy0gKHZvaWQpX2RvQWZ0ZXJSZXNldHRpbmdTaW5nbGVUYXBHZXN0dXJlOihkaXNwYXRj
aF9ibG9ja190KWFjdGlvbgoreworICAgIGlmIChbX3NpbmdsZVRhcEdlc3R1cmVSZWNvZ25pemVy
IHN0YXRlXSAhPSBVSUdlc3R1cmVSZWNvZ25pemVyU3RhdGVFbmRlZCkgeworICAgICAgICBhY3Rp
b24oKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICBfYWN0aW9uc1RvUGVyZm9ybUFmdGVy
UmVzZXR0aW5nU2luZ2xlVGFwR2VzdHVyZVJlY29nbml6ZXIuYXBwZW5kKG1ha2VCbG9ja1B0cihh
Y3Rpb24pKTsKK30KKwogLSAodm9pZClfZG9BZnRlclJlY2VpdmluZ0VkaXREcmFnU25hcHNob3RG
b3JUZXN0aW5nOihkaXNwYXRjaF9ibG9ja190KWFjdGlvbgogewogI2lmIEVOQUJMRShEUkFHX1NV
UFBPUlQpCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5k
ZXggMWE4Yzc2NWQ1ODM1YzhiNTM4YjczY2ZhOTZiMzhlYWFhMGM1ZmM3Mi4uYzI1ODU4ZGVjNDYy
ZTdlNDIwZjYzNDA5NzkzZmQ4MTA1N2I1ODZjMiAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9n
CisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDc4IEBACisyMDE5LTA4LTI2ICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIFJFR1JFU1NJT04g
KGlPUyAxMyk6IFRlc3RzIHRoYXQgc2ltdWxhdGUgbXVsdGlwbGUgYmFjay10by1iYWNrIHNpbmds
ZSB0YXBzIGZhaWwgb3IgdGltZSBvdXQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIwMTEyOQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTE4NTcyNzc+
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgVGltIEhvcnRvbi4KKworICAgICAgICBUaGUgdGVzdHMg
aW4gZWRpdGluZy9wYXN0ZWJvYXJkL2lvcyB3ZXJlIHRpbWluZyBvdXQgb24gaU9TIDEzIGJlZm9y
ZSB0aGlzIGNoYW5nZS4gVGhpcyBpcyBiZWNhdXNlIHRoZXkgc2ltdWxhdGUKKyAgICAgICAgYmFj
ay10by1iYWNrIHNpbmdsZSB0YXBzOyB3aGlsZSB0aGlzIGlzIHJlY29nbml6ZWQgYXMgdHdvIHNp
bmdsZSB0YXBzIG9uIGlPUyAxMiBhbmQgcHJpb3IsIG9ubHkgdGhlIGZpcnN0IHNpbmdsZQorICAg
ICAgICB0YXAgaXMgcmVjb2duaXplZCBvbiBpT1MgMTMgKGFuZCB0aGUgc2Vjb25kIGlzIHNpbXBs
eSBkcm9wcGVkIG9uIHRoZSBmbG9vcikuIFRoaXMgb2NjdXJzIGJlY2F1c2UgdGhlIHN5bnRoZXRp
YworICAgICAgICBzaW5nbGUgdGFwIGdlc3R1cmUgaXMgcmVzZXQgc2xpZ2h0bHkgbGF0ZXIgb24g
aU9TIDEzIGNvbXBhcmVkIHRvIGlPUyAxMiwgc28gd2hlbiB0aGUgc2Vjb25kIHRhcCBpcyBkaXNw
YXRjaGVkLAorICAgICAgICB0aGUgZ2VzdHVyZSByZWNvZ25pemVyIGlzIHN0aWxsIGluICJlbmRl
ZCIgc3RhdGUgYWZ0ZXIgdGhlIGZpcnN0IHRhcCBvbiBpT1MgMTMsIHdoaWNoIG1lYW5zIHRoZSBn
ZXN0dXJlIGlzbid0CisgICAgICAgIGNhcGFibGUgb2YgcmVjb2duaXppbmcgZnVydGhlciB0b3Vj
aGVzIHlldC4KKworICAgICAgICBJbiBVSUtpdCwgYSBnZXN0dXJlIHJlY29nbml6ZXIgaXMgb25s
eSByZXNldCBvbmNlIGl0cyBVSUdlc3R1cmVFbnZpcm9ubWVudCdzIGNvbnRhaW5pbmcgZGVwZW5k
ZW5jeSBzdWJncmFwaCBubworICAgICAgICBsb25nZXIgY29udGFpbnMgZ2VzdHVyZXMgdGhhdCBh
cmUgYWN0aXZlLiBJbiBpT1MgMTIsIHRoZSBzeW50aGV0aWMgY2xpY2sgZ2VzdHVyZSBpcyBhIHBh
cnQgb2YgYSBkZXBlbmRlbmN5CisgICAgICAgIHN1YmdyYXBoIHRoYXQgY29udGFpbnMgb25seSBp
dHNlbGYgYW5kIHRoZSBub3JtYWwgKGJsb2NraW5nKSBkb3VibGUgdGFwIGdlc3R1cmUgd2hpY2gg
cmVxdWlyZXMgdGhlIGNsaWNrIHRvIGZhaWwKKyAgICAgICAgYmVmb3JlIGl0IGNhbiBiZSByZWNv
Z25pemVkOyBpbW1lZGlhdGVseSBhZnRlciBzaW11bGF0aW5nIHRoZSB0YXAsIGJvdGggdGhlc2Ug
Z2VzdHVyZXMgYXJlIGluYWN0aXZlLCB3aGljaAorICAgICAgICBhbGxvd3MgYm90aCBvZiB0aGVt
IHRvIGJlIHJlc2V0LgorCisgICAgICAgIEhvd2V2ZXIsIGluIGlPUyAxMywgdGhlIHN5bnRoZXRp
YyBjbGljayBnZXN0dXJlIGlzIHBhcnQgb2YgYSBnZXN0dXJlIGRlcGVuZGVuY3kgZ3JhcGggdGhh
dCBjb250YWlucyB0aGUgZG91YmxlCisgICAgICAgIHRhcCBmb3IgZG91YmxlIGNsaWNrIGdlc3R1
cmUsIGFzIHdlbGwgYXMgdGhlIG5vbi1ibG9ja2luZyBkb3VibGUgdGFwIGdlc3R1cmUsIGJvdGgg
b2Ygd2hpY2ggYXJlIHN0aWxsIGFjdGl2ZQorICAgICAgICBpbW1lZGlhdGVseSBhZnRlciBzZW5k
aW5nIHRoZSBmaXJzdCB0YXAuIFRoaXMgY2hhbmdlIGluIGRlcGVuZGVuY2llcyBpcyBjYXVzZWQg
YnkgdGhlIGludHJvZHVjdGlvbiBvZgorICAgICAgICBVSVVuZG9HZXN0dXJlSW50ZXJhY3Rpb24n
cyBzaW5nbGUgYW5kIGRvdWJsZSB0aHJlZS1maW5nZXIgdGFwIGdlc3R1cmVzLCB3aGljaCAoaW4g
LVtVSVVuZG9HZXN0dXJlSW50ZXJhY3Rpb24KKyAgICAgICAgZ2VzdHVyZVJlY29nbml6ZXI6c2hv
dWxkQmVSZXF1aXJlZFRvRmFpbEJ5R2VzdHVyZVJlY29nbml6ZXI6XSkgZXhwbGljaXRseSBhZGQg
YWxsIG90aGVyIHRhcHMgYXMgZmFpbHVyZQorICAgICAgICByZXF1aXJlbWVudHMuIFRoaXMgZWZm
ZWN0aXZlbHkgbGlua3MgdGhlIHN5bnRoZXRpYyBzaW5nbGUgdGFwIGdlc3R1cmUgdG8gbW9zdCBv
ZiB0aGUgb3RoZXIgZ2VzdHVyZXMgaW4KKyAgICAgICAgV0tDb250ZW50VmlldydzIGRlcGVuZGVu
Y3kgZ3JhcGggYnkgd2F5IG9mIHRoZXNlIHRhcCBnZXN0dXJlcyBmb3IgdGhlIHVuZG8gaW50ZXJh
Y3Rpb24uCisKKyAgICAgICAgQWxsIHRoaXMgbWVhbnMgdGhhdCB0aGVyZSBpcyBub3cgYSBzaG9y
dCAofjUwIG1zKSBkZWxheSBhZnRlciB0aGUgc3ludGhldGljIHNpbmdsZSB0YXAgZ2VzdHVyZXMg
aXMgcmVjb2duaXplZCwKKyAgICAgICAgYmVmb3JlIGl0IGNhbiBiZSByZWNvZ25pemVkIGFnYWlu
LiBUbyBhY2NvdW50IGZvciB0aGlzIG5ldyBkZWxheSBpbiBvdXIgdGVzdCBpbmZyYXN0cnVjdHVy
ZSwgc2ltcGx5IHdhaXQgZm9yCisgICAgICAgIHNpbmdsZSB0YXAgZ2VzdHVyZXMgdGhhdCBoYXZl
IGVuZGVkIHRvIHJlc2V0IGJlZm9yZSBhdHRlbXB0aW5nIHRvIHNlbmQgc3Vic2VxdWVudCBzaW5n
bGUgdGFwcy4gV2UgZG8gdGhpcyBieQorICAgICAgICBpbnRyb2R1Y2luZyBXZWJLaXQgdGVzdGlu
ZyBTUEkgdG8gaW52b2tlIGEgY29tcGxldGlvbiBoYW5kbGVyIGFmdGVyIHJlc2V0dGluZyB0aGUg
c3ludGhldGljIGNsaWNrIGdlc3R1cmUgKG9ubHkKKyAgICAgICAgaWYgbmVjZXNzYXJ5IC0gaS5l
LiwgaWYgdGhlIGdlc3R1cmUgaXMgaW4gZW5kZWQgc3RhdGUgd2hlbiB3ZSBhcmUgYWJvdXQgdG8g
YmVnaW4gc2ltdWxhdGluZyB0aGUgdGFwKS4gVGhpcworICAgICAgICBhbGxvd3MgY2FsbHMgdG8g
YFVJU2NyaXB0Q29udHJvbGxlcjo6c2luZ2xlVGFwQXRQb2ludGAgdG8gYmUgcmVsaWFibHkgcmVj
b2duaXplZCBhcyBzaW5nbGUgdGFwcyB3aXRob3V0CisgICAgICAgIHJlcXVpcmluZyBhcmJpdHJh
cnkgMTIwIG1zICJodW1hbiBzcGVlZCIgZGVsYXlzLgorCisgICAgICAgIFRoaXMgZml4ZXMgYSBu
dW1iZXIgb2YgZmxha3kgb3IgZmFpbGluZyBsYXlvdXQgdGVzdHMsIGluY2x1ZGluZyB0aGUgdGVz
dHMgaW4gZWRpdGluZy9wYXN0ZWJvYXJkL2lvcy4KKworICAgICAgICAqIFRlc3RSdW5uZXJTaGFy
ZWQvVUlTY3JpcHRDb250ZXh0L0JpbmRpbmdzL1VJU2NyaXB0Q29udHJvbGxlci5pZGw6CisgICAg
ICAgICogVGVzdFJ1bm5lclNoYXJlZC9VSVNjcmlwdENvbnRleHQvVUlTY3JpcHRDb250cm9sbGVy
Lmg6CisgICAgICAgIChXVFI6OlVJU2NyaXB0Q29udHJvbGxlcjo6ZG91YmxlVGFwQXRQb2ludCk6
CisKKyAgICAgICAgQWRkIGEgYGRlbGF5YCBwYXJhbWV0ZXIgdG8gYGRvdWJsZVRhcEF0UG9pbnRg
LiBBIG51bWJlciBvZiBsYXlvdXQgdGVzdHMgd2VyZSBhY3R1YWxseSBzaW11bGF0aW5nIGRvdWJs
ZSBjbGljaworICAgICAgICBnZXN0dXJlcyBieSBzaW11bGF0aW5nIHR3byBiYWNrLXRvLWJhY2sg
c2luZ2xlIHRhcHM7IHRoaXMgaXMgZG9uZSBmb3IgdGhlIHB1cnBvc2VzIG9mIGJlaW5nIGFibGUg
dG8gYWRkIGEgImh1bWFuCisgICAgICAgIHNwZWVkIiBkZWxheSBwcmlvciB0byB0aGUgc2Vjb25k
IHNpbmdsZSB0YXAgZ2VzdHVyZS4gQWZ0ZXIgdGhlIGNoYW5nZSB0byB3YWl0IGZvciB0aGUgc2lu
Z2xlIHRhcCBnZXN0dXJlIHRvCisgICAgICAgIHJlc2V0IGJlZm9yZSBhdHRlbXB0aW5nIHRvIHNp
bXVsYXRlIHRoZSBuZXh0IHRhcCwgdGhpcyBzdHJhdGVneSBubyBsb25nZXIgd29ya3MsIHNpbmNl
IHRoZSBzZWNvbmQgZ2VzdHVyZSBpcworICAgICAgICByZWNvZ25pemVkIG9ubHkgYXMgYSBzaW5n
bGUgdGFwIGluc3RlYWQgb2YgYSBkb3VibGUgdGFwLgorCisgICAgICAgIEluc3RlYWQsIHdlIGFk
ZCBhIGRlbGF5IHBhcmFtZXRlciB0byBgVUlTY3JpcHRDb250cm9sbGVyOjpkb3VibGVUYXBBdFBv
aW50YCwgd2hpY2ggdGhlICJodW1hbiBzcGVlZCIgZG91YmxlIHRhcAorICAgICAgICBnZXN0dXJl
cyB1c2UgaW5zdGVhZCB0byB3YWl0IGFmdGVyIHNpbXVsYXRpbmcgdGhlIGZpcnN0IHRhcC4KKwor
ICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvaW9zL0hJREV2ZW50R2VuZXJhdG9yLmg6CisgICAg
ICAgICogV2ViS2l0VGVzdFJ1bm5lci9pb3MvSElERXZlbnRHZW5lcmF0b3IubW06CisgICAgICAg
ICgtW0hJREV2ZW50R2VuZXJhdG9yIF93YWl0Rm9yOl0pOgorICAgICAgICAoLVtISURFdmVudEdl
bmVyYXRvciBzZW5kVGFwczpsb2NhdGlvbjp3aXRoTnVtYmVyT2ZUb3VjaGVzOmRlbGF5OmNvbXBs
ZXRpb25CbG9jazpdKToKKworICAgICAgICBQbHVtYiB0aGUgdGFwIGdlc3R1cmUgZGVsYXkgdGhy
b3VnaCB0byB0aGlzIGhlbHBlciBtZXRob2QuCisKKyAgICAgICAgKC1bSElERXZlbnRHZW5lcmF0
b3IgdGFwOmNvbXBsZXRpb25CbG9jazpdKToKKyAgICAgICAgKC1bSElERXZlbnRHZW5lcmF0b3Ig
ZG91YmxlVGFwOmRlbGF5OmNvbXBsZXRpb25CbG9jazpdKToKKyAgICAgICAgKC1bSElERXZlbnRH
ZW5lcmF0b3IgdHdvRmluZ2VyVGFwOmNvbXBsZXRpb25CbG9jazpdKToKKyAgICAgICAgKC1bSElE
RXZlbnRHZW5lcmF0b3Igc2VuZFRhcHM6bG9jYXRpb246d2l0aE51bWJlck9mVG91Y2hlczpjb21w
bGV0aW9uQmxvY2s6XSk6IERlbGV0ZWQuCisgICAgICAgICgtW0hJREV2ZW50R2VuZXJhdG9yIGRv
dWJsZVRhcDpjb21wbGV0aW9uQmxvY2s6XSk6IERlbGV0ZWQuCisgICAgICAgICogV2ViS2l0VGVz
dFJ1bm5lci9pb3MvVUlTY3JpcHRDb250cm9sbGVySU9TLmg6CisgICAgICAgICogV2ViS2l0VGVz
dFJ1bm5lci9pb3MvVUlTY3JpcHRDb250cm9sbGVySU9TLm1tOgorICAgICAgICAoV1RSOjpVSVNj
cmlwdENvbnRyb2xsZXJJT1M6OndhaXRGb3JTaW5nbGVUYXBUb1Jlc2V0IGNvbnN0KToKKworICAg
ICAgICBBZGQgYSBuZXcgaGVscGVyIHRvIHdhaXQgZm9yIHRoZSBjb250ZW50IHZpZXcncyBzaW5n
bGUgdGFwIGdlc3R1cmUgdG8gcmVzZXQgaWYgbmVlZGVkOyBjYWxsIHRoaXMgYmVmb3JlCisgICAg
ICAgIGF0dGVtcHRpbmcgdG8gc2ltdWxhdGUgc2luZ2xlIHRhcHMgKGVpdGhlciB1c2luZyBhIHN0
eWx1cywgb3Igd2l0aCBhIHJlZ3VsYXIgdG91Y2gpLgorCisgICAgICAgIChXVFI6OlVJU2NyaXB0
Q29udHJvbGxlcklPUzo6c2luZ2xlVGFwQXRQb2ludFdpdGhNb2RpZmllcnMpOgorICAgICAgICAo
V1RSOjpVSVNjcmlwdENvbnRyb2xsZXJJT1M6OmRvdWJsZVRhcEF0UG9pbnQpOgorICAgICAgICAo
V1RSOjpVSVNjcmlwdENvbnRyb2xsZXJJT1M6OnN0eWx1c1RhcEF0UG9pbnRXaXRoTW9kaWZpZXJz
KToKKwogMjAxOS0wOC0yNiAgQWFrYXNoIEphaW4gIDxhYWthc2hfamFpbkBhcHBsZS5jb20+CiAK
ICAgICAgICAgW2V3c10gQWRkIEVXUyBxdWV1ZSBmb3IgYXBwbHlpbmcgd2F0Y2hsaXN0CmRpZmYg
LS1naXQgYS9Ub29scy9UZXN0UnVubmVyU2hhcmVkL1VJU2NyaXB0Q29udGV4dC9CaW5kaW5ncy9V
SVNjcmlwdENvbnRyb2xsZXIuaWRsIGIvVG9vbHMvVGVzdFJ1bm5lclNoYXJlZC9VSVNjcmlwdENv
bnRleHQvQmluZGluZ3MvVUlTY3JpcHRDb250cm9sbGVyLmlkbAppbmRleCA3ZmZmYzc3YTI1ZjQx
NTdlNjY1YzU1Yjk3YzhjMTZiMDEzZTM4OTU5Li42ZDk0OTg3N2VhZTc2YTc2NGIyYmQ5ZGUzNGRm
NmE0NGVlMTIwOTRhIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0UnVubmVyU2hhcmVkL1VJU2NyaXB0
Q29udGV4dC9CaW5kaW5ncy9VSVNjcmlwdENvbnRyb2xsZXIuaWRsCisrKyBiL1Rvb2xzL1Rlc3RS
dW5uZXJTaGFyZWQvVUlTY3JpcHRDb250ZXh0L0JpbmRpbmdzL1VJU2NyaXB0Q29udHJvbGxlci5p
ZGwKQEAgLTU3LDcgKzU3LDcgQEAgaW50ZXJmYWNlIFVJU2NyaXB0Q29udHJvbGxlciB7CiAgICAg
dm9pZCBsaWZ0VXBBdFBvaW50KGxvbmcgeCwgbG9uZyB5LCBsb25nIHRvdWNoQ291bnQsIG9iamVj
dCBjYWxsYmFjayk7CiAgICAgdm9pZCBzaW5nbGVUYXBBdFBvaW50KGxvbmcgeCwgbG9uZyB5LCBv
YmplY3QgY2FsbGJhY2spOwogICAgIHZvaWQgc2luZ2xlVGFwQXRQb2ludFdpdGhNb2RpZmllcnMo
bG9uZyB4LCBsb25nIHksIG9iamVjdCBtb2RpZmllckFycmF5LCBvYmplY3QgY2FsbGJhY2spOwot
ICAgIHZvaWQgZG91YmxlVGFwQXRQb2ludChsb25nIHgsIGxvbmcgeSwgb2JqZWN0IGNhbGxiYWNr
KTsKKyAgICB2b2lkIGRvdWJsZVRhcEF0UG9pbnQobG9uZyB4LCBsb25nIHksIGZsb2F0IGRlbGF5
LCBvYmplY3QgY2FsbGJhY2spOwogICAgIHZvaWQgZHJhZ0Zyb21Qb2ludFRvUG9pbnQobG9uZyBz
dGFydFgsIGxvbmcgc3RhcnRZLCBsb25nIGVuZFgsIGxvbmcgZW5kWSwgZG91YmxlIGR1cmF0aW9u
U2Vjb25kcywgb2JqZWN0IGNhbGxiYWNrKTsKIAogICAgIHZvaWQgbG9uZ1ByZXNzQXRQb2ludChs
b25nIHgsIGxvbmcgeSwgb2JqZWN0IGNhbGxiYWNrKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RS
dW5uZXJTaGFyZWQvVUlTY3JpcHRDb250ZXh0L1VJU2NyaXB0Q29udHJvbGxlci5oIGIvVG9vbHMv
VGVzdFJ1bm5lclNoYXJlZC9VSVNjcmlwdENvbnRleHQvVUlTY3JpcHRDb250cm9sbGVyLmgKaW5k
ZXggZjgxMzMwMDk0MWE3MDUyMDRiY2U5MjBlN2ViNmQxMzM3YjBmN2M0NC4uZmZlNTA3ZjI3N2M1
NmNhOGQ1ZmNjNDI3NTBkZWZlZGY4NjE4OGRiZiAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFJ1bm5l
clNoYXJlZC9VSVNjcmlwdENvbnRleHQvVUlTY3JpcHRDb250cm9sbGVyLmgKKysrIGIvVG9vbHMv
VGVzdFJ1bm5lclNoYXJlZC9VSVNjcmlwdENvbnRleHQvVUlTY3JpcHRDb250cm9sbGVyLmgKQEAg
LTEzNSw3ICsxMzUsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIGxpZnRVcEF0UG9pbnQo
bG9uZyB4LCBsb25nIHksIGxvbmcgdG91Y2hDb3VudCwgSlNWYWx1ZVJlZiBjYWxsYmFjaykgeyBu
b3RJbXBsZW1lbnRlZCgpOyB9CiAgICAgdmlydHVhbCB2b2lkIHNpbmdsZVRhcEF0UG9pbnQobG9u
ZyB4LCBsb25nIHksIEpTVmFsdWVSZWYgY2FsbGJhY2spIHsgbm90SW1wbGVtZW50ZWQoKTsgfQog
ICAgIHZpcnR1YWwgdm9pZCBzaW5nbGVUYXBBdFBvaW50V2l0aE1vZGlmaWVycyhsb25nIHgsIGxv
bmcgeSwgSlNWYWx1ZVJlZiBtb2RpZmllckFycmF5LCBKU1ZhbHVlUmVmIGNhbGxiYWNrKSB7IG5v
dEltcGxlbWVudGVkKCk7IH0KLSAgICB2aXJ0dWFsIHZvaWQgZG91YmxlVGFwQXRQb2ludChsb25n
IHgsIGxvbmcgeSwgSlNWYWx1ZVJlZiBjYWxsYmFjaykgeyBub3RJbXBsZW1lbnRlZCgpOyB9Cisg
ICAgdmlydHVhbCB2b2lkIGRvdWJsZVRhcEF0UG9pbnQobG9uZyB4LCBsb25nIHksIGZsb2F0IGRl
bGF5LCBKU1ZhbHVlUmVmIGNhbGxiYWNrKSB7IG5vdEltcGxlbWVudGVkKCk7IH0KICAgICB2aXJ0
dWFsIHZvaWQgZHJhZ0Zyb21Qb2ludFRvUG9pbnQobG9uZyBzdGFydFgsIGxvbmcgc3RhcnRZLCBs
b25nIGVuZFgsIGxvbmcgZW5kWSwgZG91YmxlIGR1cmF0aW9uU2Vjb25kcywgSlNWYWx1ZVJlZiBj
YWxsYmFjaykgeyBub3RJbXBsZW1lbnRlZCgpOyB9CiAgICAgdmlydHVhbCB2b2lkIGxvbmdQcmVz
c0F0UG9pbnQobG9uZyB4LCBsb25nIHksIEpTVmFsdWVSZWYgY2FsbGJhY2spIHsgbm90SW1wbGVt
ZW50ZWQoKTsgfQogCmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL2lvcy9ISURF
dmVudEdlbmVyYXRvci5oIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9pb3MvSElERXZlbnRHZW5l
cmF0b3IuaAppbmRleCBhNTIzZTNiMThlMTg3NjAwNGY2YjFmNWQ2NzFjNzk3ZTFmYjY5Y2YzLi4w
OGZiNWM3ZmNlMWJjMzU1ZTQ0YzQ0YzY0NjlkMjUxODAwMzMxNmZlIDEwMDY0NAotLS0gYS9Ub29s
cy9XZWJLaXRUZXN0UnVubmVyL2lvcy9ISURFdmVudEdlbmVyYXRvci5oCisrKyBiL1Rvb2xzL1dl
YktpdFRlc3RSdW5uZXIvaW9zL0hJREV2ZW50R2VuZXJhdG9yLmgKQEAgLTg3LDcgKzg3LDcgQEAg
UmV0YWluUHRyPElPSElERXZlbnRSZWY+IGNyZWF0ZUhJREtleUV2ZW50KE5TU3RyaW5nICosIHVp
bnQ2NF90IHRpbWVzdGFtcCwgYm9vbAogCiAvLyBUYXBzCiAtICh2b2lkKXRhcDooQ0dQb2ludCls
b2NhdGlvbiBjb21wbGV0aW9uQmxvY2s6KHZvaWQgKF4pKHZvaWQpKWNvbXBsZXRpb25CbG9jazsK
LS0gKHZvaWQpZG91YmxlVGFwOihDR1BvaW50KWxvY2F0aW9uIGNvbXBsZXRpb25CbG9jazoodm9p
ZCAoXikodm9pZCkpY29tcGxldGlvbkJsb2NrOworLSAodm9pZClkb3VibGVUYXA6KENHUG9pbnQp
bG9jYXRpb24gZGVsYXk6KE5TVGltZUludGVydmFsKWRlbGF5IGNvbXBsZXRpb25CbG9jazoodm9p
ZCAoXikodm9pZCkpY29tcGxldGlvbkJsb2NrOwogLSAodm9pZCl0d29GaW5nZXJUYXA6KENHUG9p
bnQpbG9jYXRpb24gY29tcGxldGlvbkJsb2NrOih2b2lkICheKSh2b2lkKSljb21wbGV0aW9uQmxv
Y2s7CiAKIC8vIExvbmcgUHJlc3MKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIv
aW9zL0hJREV2ZW50R2VuZXJhdG9yLm1tIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9pb3MvSElE
RXZlbnRHZW5lcmF0b3IubW0KaW5kZXggODk5OTFjMmE2M2I4NTgzYmFlYTVjYzdiZmJhOTUwOTk4
MzdiN2IwOC4uNzZjNWUxNjkwOTU3MjU3M2MyOGM2M2UwNmRkNjcxYjA4ZjdmNmViYyAxMDA2NDQK
LS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9pb3MvSElERXZlbnRHZW5lcmF0b3IubW0KKysr
IGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9pb3MvSElERXZlbnRHZW5lcmF0b3IubW0KQEAgLTcx
Miw3ICs3MTIsMjEgQEAgLSAodm9pZClzdHlsdXNUYXBBdFBvaW50OihDR1BvaW50KWxvY2F0aW9u
IGF6aW11dGhBbmdsZTooQ0dGbG9hdClhemltdXRoQW5nbGUgYWwKICAgICBbc2VsZiBzZW5kTWFy
a2VySElERXZlbnRXaXRoQ29tcGxldGlvbkJsb2NrOmNvbXBsZXRpb25CbG9ja107CiB9CiAKLS0g
KHZvaWQpc2VuZFRhcHM6KGludCl0YXBDb3VudCBsb2NhdGlvbjooQ0dQb2ludClsb2NhdGlvbiB3
aXRoTnVtYmVyT2ZUb3VjaGVzOihpbnQpdG91Y2hDb3VudCBjb21wbGV0aW9uQmxvY2s6KHZvaWQg
KF4pKHZvaWQpKWNvbXBsZXRpb25CbG9jaworLSAodm9pZClfd2FpdEZvcjooTlNUaW1lSW50ZXJ2
YWwpZGVsYXkKK3sKKyAgICBpZiAoZGVsYXkgPD0gMCkKKyAgICAgICAgcmV0dXJuOworCisgICAg
Ym9vbCBkb25lV2FpdGluZ0ZvckRlbGF5ID0gZmFsc2U7CisgICAgZGlzcGF0Y2hfYWZ0ZXIoZGlz
cGF0Y2hfdGltZShESVNQQVRDSF9USU1FX05PVywgKGludDY0X3QpKGRlbGF5ICogTlNFQ19QRVJf
U0VDKSksIGRpc3BhdGNoX2dldF9tYWluX3F1ZXVlKCksIFsmZG9uZVdhaXRpbmdGb3JEZWxheV0g
eworICAgICAgICBkb25lV2FpdGluZ0ZvckRlbGF5ID0gdHJ1ZTsKKyAgICB9KTsKKworICAgIHdo
aWxlICghZG9uZVdhaXRpbmdGb3JEZWxheSkKKyAgICAgICAgW05TUnVuTG9vcC5jdXJyZW50UnVu
TG9vcCBydW5Nb2RlOk5TRGVmYXVsdFJ1bkxvb3BNb2RlIGJlZm9yZURhdGU6TlNEYXRlLmRpc3Rh
bnRGdXR1cmVdOworfQorCistICh2b2lkKXNlbmRUYXBzOihpbnQpdGFwQ291bnQgbG9jYXRpb246
KENHUG9pbnQpbG9jYXRpb24gd2l0aE51bWJlck9mVG91Y2hlczooaW50KXRvdWNoQ291bnQgZGVs
YXk6KE5TVGltZUludGVydmFsKWRlbGF5IGNvbXBsZXRpb25CbG9jazoodm9pZCAoXikodm9pZCkp
Y29tcGxldGlvbkJsb2NrCiB7CiAgICAgc3RydWN0IHRpbWVzcGVjIGRvdWJsZURlbGF5ID0geyAw
LCBzdGF0aWNfY2FzdDxsb25nPihtdWx0aVRhcEludGVydmFsICogbmFub3NlY29uZHNQZXJTZWNv
bmQpIH07CiAgICAgc3RydWN0IHRpbWVzcGVjIHByZXNzRGVsYXkgPSB7IDAsIHN0YXRpY19jYXN0
PGxvbmc+KGZpbmdlckxpZnREZWxheSAqIG5hbm9zZWNvbmRzUGVyU2Vjb25kKSB9OwpAQCAtNzIz
LDYgKzczNyw4IEBAIC0gKHZvaWQpc2VuZFRhcHM6KGludCl0YXBDb3VudCBsb2NhdGlvbjooQ0dQ
b2ludClsb2NhdGlvbiB3aXRoTnVtYmVyT2ZUb3VjaGVzOihpCiAgICAgICAgIFtzZWxmIGxpZnRV
cDpsb2NhdGlvbiB0b3VjaENvdW50OnRvdWNoQ291bnRdOwogICAgICAgICBpZiAoaSArIDEgIT0g
dGFwQ291bnQpIAogICAgICAgICAgICAgbmFub3NsZWVwKCZkb3VibGVEZWxheSwgMCk7CisKKyAg
ICAgICAgW3NlbGYgX3dhaXRGb3I6ZGVsYXldOwogICAgIH0KICAgICAKICAgICBbc2VsZiBzZW5k
TWFya2VySElERXZlbnRXaXRoQ29tcGxldGlvbkJsb2NrOmNvbXBsZXRpb25CbG9ja107CkBAIC03
MzAsMTcgKzc0NiwxNyBAQCAtICh2b2lkKXNlbmRUYXBzOihpbnQpdGFwQ291bnQgbG9jYXRpb246
KENHUG9pbnQpbG9jYXRpb24gd2l0aE51bWJlck9mVG91Y2hlczooaQogCiAtICh2b2lkKXRhcDoo
Q0dQb2ludClsb2NhdGlvbiBjb21wbGV0aW9uQmxvY2s6KHZvaWQgKF4pKHZvaWQpKWNvbXBsZXRp
b25CbG9jawogewotICAgIFtzZWxmIHNlbmRUYXBzOjEgbG9jYXRpb246bG9jYXRpb24gd2l0aE51
bWJlck9mVG91Y2hlczoxIGNvbXBsZXRpb25CbG9jazpjb21wbGV0aW9uQmxvY2tdOworICAgIFtz
ZWxmIHNlbmRUYXBzOjEgbG9jYXRpb246bG9jYXRpb24gd2l0aE51bWJlck9mVG91Y2hlczoxIGRl
bGF5OjAgY29tcGxldGlvbkJsb2NrOmNvbXBsZXRpb25CbG9ja107CiB9CiAKLS0gKHZvaWQpZG91
YmxlVGFwOihDR1BvaW50KWxvY2F0aW9uIGNvbXBsZXRpb25CbG9jazoodm9pZCAoXikodm9pZCkp
Y29tcGxldGlvbkJsb2NrCistICh2b2lkKWRvdWJsZVRhcDooQ0dQb2ludClsb2NhdGlvbiBkZWxh
eTooTlNUaW1lSW50ZXJ2YWwpZGVsYXkgY29tcGxldGlvbkJsb2NrOih2b2lkICheKSh2b2lkKSlj
b21wbGV0aW9uQmxvY2sKIHsKLSAgICBbc2VsZiBzZW5kVGFwczoyIGxvY2F0aW9uOmxvY2F0aW9u
IHdpdGhOdW1iZXJPZlRvdWNoZXM6MSBjb21wbGV0aW9uQmxvY2s6Y29tcGxldGlvbkJsb2NrXTsK
KyAgICBbc2VsZiBzZW5kVGFwczoyIGxvY2F0aW9uOmxvY2F0aW9uIHdpdGhOdW1iZXJPZlRvdWNo
ZXM6MSBkZWxheTpkZWxheSBjb21wbGV0aW9uQmxvY2s6Y29tcGxldGlvbkJsb2NrXTsKIH0KIAog
LSAodm9pZCl0d29GaW5nZXJUYXA6KENHUG9pbnQpbG9jYXRpb24gY29tcGxldGlvbkJsb2NrOih2
b2lkICheKSh2b2lkKSljb21wbGV0aW9uQmxvY2sKIHsKLSAgICBbc2VsZiBzZW5kVGFwczoxIGxv
Y2F0aW9uOmxvY2F0aW9uIHdpdGhOdW1iZXJPZlRvdWNoZXM6MiBjb21wbGV0aW9uQmxvY2s6Y29t
cGxldGlvbkJsb2NrXTsKKyAgICBbc2VsZiBzZW5kVGFwczoxIGxvY2F0aW9uOmxvY2F0aW9uIHdp
dGhOdW1iZXJPZlRvdWNoZXM6MiBkZWxheTowIGNvbXBsZXRpb25CbG9jazpjb21wbGV0aW9uQmxv
Y2tdOwogfQogCiAtICh2b2lkKWxvbmdQcmVzczooQ0dQb2ludClsb2NhdGlvbiBjb21wbGV0aW9u
QmxvY2s6KHZvaWQgKF4pKHZvaWQpKWNvbXBsZXRpb25CbG9jawpkaWZmIC0tZ2l0IGEvVG9vbHMv
V2ViS2l0VGVzdFJ1bm5lci9pb3MvVUlTY3JpcHRDb250cm9sbGVySU9TLmggYi9Ub29scy9XZWJL
aXRUZXN0UnVubmVyL2lvcy9VSVNjcmlwdENvbnRyb2xsZXJJT1MuaAppbmRleCBkOGQ0MzMxOTYx
ZWY1ODI4NzJhNTc1ZTg1ODc5YzY5ZDE0MTRhYTNhLi43N2RkNTVjZjQ1YzhlZTdiNTg0MDYyMzY0
NjRlNzM4NWI4ODNjOGFlIDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL2lvcy9V
SVNjcmlwdENvbnRyb2xsZXJJT1MuaAorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL2lvcy9V
SVNjcmlwdENvbnRyb2xsZXJJT1MuaApAQCAtNTIsNyArNTIsNyBAQCBwdWJsaWM6CiAgICAgdm9p
ZCBsaWZ0VXBBdFBvaW50KGxvbmcgeCwgbG9uZyB5LCBsb25nIHRvdWNoQ291bnQsIEpTVmFsdWVS
ZWYpIG92ZXJyaWRlOwogICAgIHZvaWQgc2luZ2xlVGFwQXRQb2ludChsb25nIHgsIGxvbmcgeSwg
SlNWYWx1ZVJlZikgb3ZlcnJpZGU7CiAgICAgdm9pZCBzaW5nbGVUYXBBdFBvaW50V2l0aE1vZGlm
aWVycyhsb25nIHgsIGxvbmcgeSwgSlNWYWx1ZVJlZiBtb2RpZmllckFycmF5LCBKU1ZhbHVlUmVm
KSBvdmVycmlkZTsKLSAgICB2b2lkIGRvdWJsZVRhcEF0UG9pbnQobG9uZyB4LCBsb25nIHksIEpT
VmFsdWVSZWYpIG92ZXJyaWRlOworICAgIHZvaWQgZG91YmxlVGFwQXRQb2ludChsb25nIHgsIGxv
bmcgeSwgZmxvYXQgZGVsYXksIEpTVmFsdWVSZWYpIG92ZXJyaWRlOwogICAgIHZvaWQgc3R5bHVz
RG93bkF0UG9pbnQobG9uZyB4LCBsb25nIHksIGZsb2F0IGF6aW11dGhBbmdsZSwgZmxvYXQgYWx0
aXR1ZGVBbmdsZSwgZmxvYXQgcHJlc3N1cmUsIEpTVmFsdWVSZWYpIG92ZXJyaWRlOwogICAgIHZv
aWQgc3R5bHVzTW92ZVRvUG9pbnQobG9uZyB4LCBsb25nIHksIGZsb2F0IGF6aW11dGhBbmdsZSwg
ZmxvYXQgYWx0aXR1ZGVBbmdsZSwgZmxvYXQgcHJlc3N1cmUsIEpTVmFsdWVSZWYpIG92ZXJyaWRl
OwogICAgIHZvaWQgc3R5bHVzVXBBdFBvaW50KGxvbmcgeCwgbG9uZyB5LCBKU1ZhbHVlUmVmKSBv
dmVycmlkZTsKQEAgLTEzOSw2ICsxMzksOSBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXREaWREaXNt
aXNzUG9wb3ZlckNhbGxiYWNrKEpTVmFsdWVSZWYpIG92ZXJyaWRlOwogICAgIHZvaWQgc2V0RGlk
RW5kU2Nyb2xsaW5nQ2FsbGJhY2soSlNWYWx1ZVJlZikgb3ZlcnJpZGU7CiAgICAgdm9pZCBjbGVh
ckFsbENhbGxiYWNrcygpIG92ZXJyaWRlOworCitwcml2YXRlOgorICAgIHZvaWQgd2FpdEZvclNp
bmdsZVRhcFRvUmVzZXQoKSBjb25zdDsKIH07CiAKIH0KZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktp
dFRlc3RSdW5uZXIvaW9zL1VJU2NyaXB0Q29udHJvbGxlcklPUy5tbSBiL1Rvb2xzL1dlYktpdFRl
c3RSdW5uZXIvaW9zL1VJU2NyaXB0Q29udHJvbGxlcklPUy5tbQppbmRleCAzZTBiZGVjOTA3M2Yw
ODEyMjRjMjM3NmYzYjkzMjVmYzUzNWEwNjRkLi5lMTBkOWVjYTcxZmZlYTA3ZGQ3MjU4YTFjNzJi
MTQ1Yjg1YTlmYzA1IDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL2lvcy9VSVNj
cmlwdENvbnRyb2xsZXJJT1MubW0KKysrIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9pb3MvVUlT
Y3JpcHRDb250cm9sbGVySU9TLm1tCkBAIC0yNjMsMTAgKzI2MywyMSBAQCB2b2lkIFVJU2NyaXB0
Q29udHJvbGxlcklPUzo6c2luZ2xlVGFwQXRQb2ludChsb25nIHgsIGxvbmcgeSwgSlNWYWx1ZVJl
ZiBjYWxsYmFjawogICAgIHNpbmdsZVRhcEF0UG9pbnRXaXRoTW9kaWZpZXJzKHgsIHksIG51bGxw
dHIsIGNhbGxiYWNrKTsKIH0KIAordm9pZCBVSVNjcmlwdENvbnRyb2xsZXJJT1M6OndhaXRGb3JT
aW5nbGVUYXBUb1Jlc2V0KCkgY29uc3QKK3sKKyAgICBib29sIGRvbmVXYWl0aW5nRm9yU2luZ2xl
VGFwVG9SZXNldCA9IGZhbHNlOworICAgIFt3ZWJWaWV3KCkgX2RvQWZ0ZXJSZXNldHRpbmdTaW5n
bGVUYXBHZXN0dXJlOlsmZG9uZVdhaXRpbmdGb3JTaW5nbGVUYXBUb1Jlc2V0XSB7CisgICAgICAg
IGRvbmVXYWl0aW5nRm9yU2luZ2xlVGFwVG9SZXNldCA9IHRydWU7CisgICAgfV07CisgICAgVGVz
dENvbnRyb2xsZXI6OnNpbmdsZXRvbigpLnJ1blVudGlsKGRvbmVXYWl0aW5nRm9yU2luZ2xlVGFw
VG9SZXNldCwgMC41X3MpOworfQorCiB2b2lkIFVJU2NyaXB0Q29udHJvbGxlcklPUzo6c2luZ2xl
VGFwQXRQb2ludFdpdGhNb2RpZmllcnMobG9uZyB4LCBsb25nIHksIEpTVmFsdWVSZWYgbW9kaWZp
ZXJBcnJheSwgSlNWYWx1ZVJlZiBjYWxsYmFjaykKIHsKICAgICB1bnNpZ25lZCBjYWxsYmFja0lE
ID0gbV9jb250ZXh0LT5wcmVwYXJlRm9yQXN5bmNUYXNrKGNhbGxiYWNrLCBDYWxsYmFja1R5cGVO
b25QZXJzaXN0ZW50KTsKIAorICAgIHdhaXRGb3JTaW5nbGVUYXBUb1Jlc2V0KCk7CisKICAgICBh
dXRvIG1vZGlmaWVyRmxhZ3MgPSBwYXJzZU1vZGlmaWVyQXJyYXkobV9jb250ZXh0LT5qc0NvbnRl
eHQoKSwgbW9kaWZpZXJBcnJheSk7CiAgICAgZm9yIChhdXRvJiBtb2RpZmllckZsYWcgOiBtb2Rp
ZmllckZsYWdzKQogICAgICAgICBbW0hJREV2ZW50R2VuZXJhdG9yIHNoYXJlZEhJREV2ZW50R2Vu
ZXJhdG9yXSBrZXlEb3duOm1vZGlmaWVyRmxhZ107CkBAIC0yODYsMTEgKzI5NywxMSBAQCB2b2lk
IFVJU2NyaXB0Q29udHJvbGxlcklPUzo6c2luZ2xlVGFwQXRQb2ludFdpdGhNb2RpZmllcnMobG9u
ZyB4LCBsb25nIHksIEpTVmFsdQogICAgIH1dOwogfQogCi12b2lkIFVJU2NyaXB0Q29udHJvbGxl
cklPUzo6ZG91YmxlVGFwQXRQb2ludChsb25nIHgsIGxvbmcgeSwgSlNWYWx1ZVJlZiBjYWxsYmFj
aykKK3ZvaWQgVUlTY3JpcHRDb250cm9sbGVySU9TOjpkb3VibGVUYXBBdFBvaW50KGxvbmcgeCwg
bG9uZyB5LCBmbG9hdCBkZWxheSwgSlNWYWx1ZVJlZiBjYWxsYmFjaykKIHsKICAgICB1bnNpZ25l
ZCBjYWxsYmFja0lEID0gbV9jb250ZXh0LT5wcmVwYXJlRm9yQXN5bmNUYXNrKGNhbGxiYWNrLCBD
YWxsYmFja1R5cGVOb25QZXJzaXN0ZW50KTsKIAotICAgIFtbSElERXZlbnRHZW5lcmF0b3Igc2hh
cmVkSElERXZlbnRHZW5lcmF0b3JdIGRvdWJsZVRhcDpnbG9iYWxUb0NvbnRlbnRDb29yZGluYXRl
cyh3ZWJWaWV3KCksIHgsIHkpIGNvbXBsZXRpb25CbG9jazpeeworICAgIFtbSElERXZlbnRHZW5l
cmF0b3Igc2hhcmVkSElERXZlbnRHZW5lcmF0b3JdIGRvdWJsZVRhcDpnbG9iYWxUb0NvbnRlbnRD
b29yZGluYXRlcyh3ZWJWaWV3KCksIHgsIHkpIGRlbGF5OmRlbGF5IGNvbXBsZXRpb25CbG9jazpe
ewogICAgICAgICBpZiAoIW1fY29udGV4dCkKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAg
bV9jb250ZXh0LT5hc3luY1Rhc2tDb21wbGV0ZShjYWxsYmFja0lEKTsKQEAgLTM0Miw2ICszNTMs
OCBAQCB2b2lkIFVJU2NyaXB0Q29udHJvbGxlcklPUzo6c3R5bHVzVGFwQXRQb2ludFdpdGhNb2Rp
ZmllcnMobG9uZyB4LCBsb25nIHksIGZsb2F0CiB7CiAgICAgdW5zaWduZWQgY2FsbGJhY2tJRCA9
IG1fY29udGV4dC0+cHJlcGFyZUZvckFzeW5jVGFzayhjYWxsYmFjaywgQ2FsbGJhY2tUeXBlTm9u
UGVyc2lzdGVudCk7CiAKKyAgICB3YWl0Rm9yU2luZ2xlVGFwVG9SZXNldCgpOworCiAgICAgYXV0
byBtb2RpZmllckZsYWdzID0gcGFyc2VNb2RpZmllckFycmF5KG1fY29udGV4dC0+anNDb250ZXh0
KCksIG1vZGlmaWVyQXJyYXkpOwogICAgIGZvciAoYXV0byYgbW9kaWZpZXJGbGFnIDogbW9kaWZp
ZXJGbGFncykKICAgICAgICAgW1tISURFdmVudEdlbmVyYXRvciBzaGFyZWRISURFdmVudEdlbmVy
YXRvcl0ga2V5RG93bjptb2RpZmllckZsYWddOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGViMjJlMWVhNGVlZmRiODQyYWEz
MzFkYWM3ZTk0OGYxZjI0ZTQzOGQuLjcyYzcxMTdiMWM3YjkwNGRkNGU1MDc4Y2ZjZTMzMTdmODQ5
Y2EzNmYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSw1OCBAQAorMjAxOS0wOC0yNiAgV2Vuc29uIEhzaWVoICA8
d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KKworICAgICAgICBSRUdSRVNTSU9OIChpT1MgMTMpOiBU
ZXN0cyB0aGF0IHNpbXVsYXRlIG11bHRpcGxlIGJhY2stdG8tYmFjayBzaW5nbGUgdGFwcyBmYWls
IG9yIHRpbWUgb3V0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMDExMjkKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzUxODU3Mjc3PgorCisgICAgICAg
IFJldmlld2VkIGJ5IFRpbSBIb3J0b24uCisKKyAgICAgICAgQWRqdXN0cyBhIGZldyBsYXlvdXQg
dGVzdHMgYWZ0ZXIgY2hhbmdlcyB0byBVSVNjcmlwdENvbnRyb2xsZXI6OmRvdWJsZVRhcEF0UG9p
bnQgYW5kCisgICAgICAgIFVJU2NyaXB0Q29udHJvbGxlcjo6c2luZ2xlVGFwQXRQb2ludC4KKwor
ICAgICAgICAqIGVkaXRpbmcvc2VsZWN0aW9uL2lvcy9jaGFuZ2Utc2VsZWN0aW9uLWJ5LXRhcHBp
bmcuaHRtbDoKKworICAgICAgICBUd2VhayB0aGlzIHRlc3QgdG8gdGFwIHRoZSBwYWdlIDEyIHRp
bWVzIGluc3RlYWQgb2YgMjAgKHdoaWNoIHNlZW1zIHRvIGNhdXNlIG9jY2FzaW9uYWwgdGltZW91
dHMgbG9jYWxseSwgd2hlbgorICAgICAgICBydW5uaW5nIGFsbCBsYXlvdXQgdGVzdHMgd2l0aCBh
IGRvemVuIGFjdGl2ZSBzaW11bGF0b3JzKS4KKworICAgICAgICAqIGZhc3QvZXZlbnRzL2lvcy9k
b3VibGUtdGFwLXpvb20uaHRtbDoKKyAgICAgICAgKiBmYXN0L2V2ZW50cy9pb3Mvdmlld3BvcnQt
ZGV2aWNlLXdpZHRoLWFsbG93cy1kb3VibGUtdGFwLXpvb20tb3V0Lmh0bWw6CisgICAgICAgICog
ZmFzdC9ldmVudHMvaW9zL3ZpZXdwb3J0LXNocmluay10by1maXQtYWxsb3dzLWRvdWJsZS10YXAu
aHRtbDoKKworICAgICAgICBBdWdtZW50IGEgZmV3IGNhbGwgc2l0ZXMgb2YgYGRvdWJsZVRhcEF0
UG9pbnRgIHdpdGggYSAwIGRlbGF5LiBJZGVhbGx5LCB0aGVzZSBzaG91bGQganVzdCB1c2UgdWkt
aGVscGVyLmpzLCBidXQKKyAgICAgICAgd2UgY2FuIHJlZmFjdG9yIHRoZXNlIHRlc3RzIGFzIGEg
cGFydCBvZiBmb2xkaW5nIGJhc2ljLWdlc3R1cmVzLmpzIGludG8gdWktaGVscGVyLmpzLgorCisg
ICAgICAgICogaHR0cC90ZXN0cy9hZENsaWNrQXR0cmlidXRpb24vYW5jaG9yLXRhZy1hdHRyaWJ1
dGVzLXZhbGlkYXRpb24tZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJp
dHkvYW5jaG9yLWRvd25sb2FkLWJsb2NrLWNyb3Nzb3JpZ2luLWV4cGVjdGVkLnR4dDoKKworICAg
ICAgICBSZWJhc2VsaW5lIHRoZXNlIGxheW91dCB0ZXN0cywgZHVlIHRvIGNoYW5nZSBpbiBsaW5l
IG51bWJlcnMuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9pcGFkL1Rlc3RFeHBlY3RhdGlvbnM6CisK
KyAgICAgICAgVW5za2lwIHRoZXNlIHRlc3RzIG9uIGlQYWQsIG5vdyB0aGF0IHRoZXkgc2hvdWxk
IHBhc3MuCisKKyAgICAgICAgKiBwb2ludGVyZXZlbnRzL3V0aWxzLmpzOgorICAgICAgICAoY29u
c3QudWkubmV3LlVJQ29udHJvbGxlci5wcm90b3R5cGUuZG91YmxlVGFwVG9ab29tKToKKyAgICAg
ICAgKiByZXNvdXJjZXMvYmFzaWMtZ2VzdHVyZXMuanM6CisgICAgICAgIChyZXR1cm4ubmV3LlBy
b21pc2UuKToKKyAgICAgICAgKHJldHVybi5uZXcuUHJvbWlzZSk6CisKKyAgICAgICAgQWRqdXN0
IHNvbWUgbW9yZSBjYWxsIHNpdGVzIG9mIGBkb3VibGVUYXBBdFBvaW50YC4gSWRlYWxseSwgdGhl
c2Ugc2hvdWxkIHVzZSBqdXN0IGB1aS1oZWxwZXIuanNgIHRvby4KKworICAgICAgICAqIHJlc291
cmNlcy91aS1oZWxwZXIuanM6CisgICAgICAgICh3aW5kb3cuVUlIZWxwZXIuZG91YmxlVGFwQXQu
cmV0dXJuLm5ldy5Qcm9taXNlKToKKyAgICAgICAgKHdpbmRvdy5VSUhlbHBlci5kb3VibGVUYXBB
dCk6CisgICAgICAgICh3aW5kb3cuVUlIZWxwZXIuaHVtYW5TcGVlZERvdWJsZVRhcEF0KToKKyAg
ICAgICAgKHdpbmRvdy5VSUhlbHBlci5odW1hblNwZWVkWm9vbUJ5RG91YmxlVGFwcGluZ0F0KToK
KworICAgICAgICBBZGQgYSBkZWxheSBwYXJhbWV0ZXIgdG8gYGRvdWJsZVRhcEF0YCB0byBzcGVj
aWZ5IGEgZGVsYXkgYWZ0ZXIgZWFjaCBzaW11bGF0ZWQgdGFwLiBCeSBkZWZhdWx0LCB0aGlzIGlz
IDAsIGJ1dAorICAgICAgICB0aGUgYGh1bWFuU3BlZWQqYCBoZWxwZXJzIGFkZCBhIGRlbGF5IG9m
IDEyMCBtaWxsaXNlY29uZHMuIEFkZGl0aW9uYWxseSwgdGhlc2UgaGVscGVycyB3ZXJlIHByZXZp
b3VzbHkgY2FsbGluZworICAgICAgICBgc2luZ2xlVGFwQXRQb2ludGAgdHdpY2UsIHdpdGggYSB0
aW1lb3V0IGluIGJldHdlZW4gdG8gYWRkIGEgZGVsYXkuIEluc3RlYWQsIGNhbGwgYGRvdWJsZVRh
cEF0UG9pbnRgIHdpdGggYQorICAgICAgICBub256ZXJvIGRlbGF5OyBvdGhlcndpc2UsIHdlJ2xs
IGVuZCB1cCB3YWl0aW5nIGluIGBzaW5nbGVUYXBBdFBvaW50YCBmb3IgdGhlIGdlc3R1cmUgc3Vi
Z3JhcGggY29udGFpbmluZyBib3RoCisgICAgICAgIHRoZSBkb3VibGUgdGFwIGdlc3R1cmVzIGFu
ZCB0aGUgc3ludGhldGljIHNpbmdsZSB0YXAgZ2VzdHVyZSB0byByZXNldCwgd2hpY2ggY2F1c2Vz
IHRoZXNlIHR3byBzaW5nbGUgdGFwcyB0byBubworICAgICAgICBsb25nZXIgYmUgcmVjb2duaXpl
ZCBhcyBhIGRvdWJsZSB0YXAgZ2VzdHVyZS4KKworICAgICAgICAod2luZG93LlVJSGVscGVyLnpv
b21CeURvdWJsZVRhcHBpbmdBdCk6CisKIDIwMTktMDgtMjYgIFJ1c3NlbGwgRXBzdGVpbiAgPHJl
cHN0ZWluQGFwcGxlLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByMjQ4
OTYxLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vaW9zL2NoYW5n
ZS1zZWxlY3Rpb24tYnktdGFwcGluZy5odG1sIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rp
b24vaW9zL2NoYW5nZS1zZWxlY3Rpb24tYnktdGFwcGluZy5odG1sCmluZGV4IGVkZDc1YzNjNWQ2
NmNkNGNhMTIxNDJlNjQxYjI2NjBmY2YyNGQyODEuLmQ1N2NkZjY0ODVkODhiNzg5YjM3MGI2MzRi
NmM0NDFiZTUxZGUxZGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9u
L2lvcy9jaGFuZ2Utc2VsZWN0aW9uLWJ5LXRhcHBpbmcuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9l
ZGl0aW5nL3NlbGVjdGlvbi9pb3MvY2hhbmdlLXNlbGVjdGlvbi1ieS10YXBwaW5nLmh0bWwKQEAg
LTQwLDcgKzQwLDcgQEAgYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIGFzeW5jICgpID0+IHsKICAg
ICBkZXNjcmlwdGlvbigiVmVyaWZpZXMgdGhhdCByYXBpZGx5IHRhcHBpbmcgdG8gY2hhbmdlIHNl
bGVjdGlvbiBkb2Vzbid0IGhhbmcgZHVlIHRvIElQQyBkZWFkbG9jay4gVG8gdmVyaWZ5IG1hbnVh
bGx5LCBmb2N1cyB0aGUgZWRpdGFibGUgdGV4dCBhbmQgdGFwIHJlcGVhdGVkbHkgaW4gZGlmZmVy
ZW50IHBhcnRzIG9mIHRoZSBlZGl0YWJsZSBhcmVhIHRvIGNoYW5nZSBzZWxlY3Rpb247IGNoZWNr
IHRoYXQgdGhpcyBkb2VzIG5vdCByZXN1bHQgaW4gc3BvcmFkaWMgMS1zZWNvbmQgSVBDIGhhbmdz
LiIpOwogCiAgICAgYXdhaXQgVUlIZWxwZXIuYWN0aXZhdGVFbGVtZW50QW5kV2FpdEZvcklucHV0
U2Vzc2lvbihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZWRpdG9yIikpOwotICAgIGZvciAobGV0
IGkgPSAwOyBpIDwgNTsgKytpKSB7CisgICAgZm9yIChsZXQgaSA9IDA7IGkgPCAzOyArK2kpIHsK
ICAgICAgICAgZm9yIChjb25zdCBbeCwgeV0gb2YgW1s0MCwgNDBdLCBbMjIwLCA0MF0sIFs0MCwg
MjQwXSwgWzIyMCwgMjQwXV0pCiAgICAgICAgICAgICBhd2FpdCB0YXBBbmRXYWl0Rm9yU2VsZWN0
aW9uQ2hhbmdlKHgsIHkpOwogICAgIH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZXZl
bnRzL2lvcy9kb3VibGUtdGFwLXpvb20uaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL2lv
cy9kb3VibGUtdGFwLXpvb20uaHRtbAppbmRleCAzNzIzZGU2M2M5Njg2ZDNmNmMzYTZkNWZkYjRh
NTc5MDNmMjM4OTc5Li5mZjdjZDE4NGYwZTE3MzY1YTkwMjI3ZTVlZWU4OWUxYjI1NGVmN2RkIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9pb3MvZG91YmxlLXRhcC16b29tLmh0
bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvaW9zL2RvdWJsZS10YXAtem9vbS5odG1s
CkBAIC05LDcgKzksNyBAQAogICAgICAgICAgICAgICAgIHVpQ29udHJvbGxlci51aVNjcmlwdENv
bXBsZXRlKCdab29tZWQgdG8gc2NhbGUgJyArIHVpQ29udHJvbGxlci56b29tU2NhbGUpOwogICAg
ICAgICAgICAgfTsKIAotICAgICAgICAgICAgdWlDb250cm9sbGVyLmRvdWJsZVRhcEF0UG9pbnQo
NTAsIDUwLCBmdW5jdGlvbigpIHt9KTsKKyAgICAgICAgICAgIHVpQ29udHJvbGxlci5kb3VibGVU
YXBBdFBvaW50KDUwLCA1MCwgMCwgZnVuY3Rpb24oKSB7fSk7CiAgICAgICAgIH0pKCk7CiAgICAg
PC9zY3JpcHQ+CiAgICAgPHNjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZXZl
bnRzL2lvcy92aWV3cG9ydC1kZXZpY2Utd2lkdGgtYWxsb3dzLWRvdWJsZS10YXAtem9vbS1vdXQu
aHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL2lvcy92aWV3cG9ydC1kZXZpY2Utd2lkdGgt
YWxsb3dzLWRvdWJsZS10YXAtem9vbS1vdXQuaHRtbAppbmRleCBiMjI3MjM1YjdlNzVlYzkzNTAx
YWEzNGRiOGU3NzEwNTRiOGRmMjFiLi4zMDM1MzJiMDc5Y2FmNzE0NzU5Yjk1YjVjZTliYzUzNmY1
M2VjOTI4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9pb3Mvdmlld3BvcnQt
ZGV2aWNlLXdpZHRoLWFsbG93cy1kb3VibGUtdGFwLXpvb20tb3V0Lmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvZmFzdC9ldmVudHMvaW9zL3ZpZXdwb3J0LWRldmljZS13aWR0aC1hbGxvd3MtZG91Ymxl
LXRhcC16b29tLW91dC5odG1sCkBAIC04LDcgKzgsNyBAQAogICAgICAgICAgICAgdWlDb250cm9s
bGVyLmRpZEVuZFpvb21pbmdDYWxsYmFjayA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAg
IHVpQ29udHJvbGxlci51aVNjcmlwdENvbXBsZXRlKHVpQ29udHJvbGxlci56b29tU2NhbGUpOwog
ICAgICAgICAgICAgfTsKLSAgICAgICAgICAgIHVpQ29udHJvbGxlci5kb3VibGVUYXBBdFBvaW50
KDE1LCAxNSwgZnVuY3Rpb24oKSB7fSk7CisgICAgICAgICAgICB1aUNvbnRyb2xsZXIuZG91Ymxl
VGFwQXRQb2ludCgxNSwgMTUsIDAsIGZ1bmN0aW9uKCkge30pOwogICAgICAgICB9KSgpOwogICAg
IDwvc2NyaXB0PgogICAgIDxzY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2V2
ZW50cy9pb3Mvdmlld3BvcnQtc2hyaW5rLXRvLWZpdC1hbGxvd3MtZG91YmxlLXRhcC5odG1sIGIv
TGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvaW9zL3ZpZXdwb3J0LXNocmluay10by1maXQtYWxsb3dz
LWRvdWJsZS10YXAuaHRtbAppbmRleCBmMzhhMWQ3OWFiY2VmZDg0ZTZlZDkyOGRmYzM0ZmE5NWNl
NTM4NGZkLi4wMTYwN2E2ZjYxODcxYjQ3NzIzMTk1YjMyODZiOGJjNGRmMGM2YTc1IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9pb3Mvdmlld3BvcnQtc2hyaW5rLXRvLWZpdC1h
bGxvd3MtZG91YmxlLXRhcC5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL2lvcy92
aWV3cG9ydC1zaHJpbmstdG8tZml0LWFsbG93cy1kb3VibGUtdGFwLmh0bWwKQEAgLTE2LDcgKzE2
LDcgQEAKICAgICAgICAgICAgICAgICAgICAgdWlDb250cm9sbGVyLmRpZEVuZFpvb21pbmdDYWxs
YmFjayA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICAgdWlDb250cm9sbGVy
LnVpU2NyaXB0Q29tcGxldGUodWlDb250cm9sbGVyLnpvb21TY2FsZSk7CiAgICAgICAgICAgICAg
ICAgICAgIH07Ci0gICAgICAgICAgICAgICAgICAgIHVpQ29udHJvbGxlci5kb3VibGVUYXBBdFBv
aW50KDE1LCA2MCwgZnVuY3Rpb24oKSB7fSk7CisgICAgICAgICAgICAgICAgICAgIHVpQ29udHJv
bGxlci5kb3VibGVUYXBBdFBvaW50KDE1LCA2MCwgMCwgZnVuY3Rpb24oKSB7fSk7CiAgICAgICAg
ICAgICAgICAgfSkoKTtgOwogICAgICAgICB9CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0
dHAvdGVzdHMvYWRDbGlja0F0dHJpYnV0aW9uL2FuY2hvci10YWctYXR0cmlidXRlcy12YWxpZGF0
aW9uLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvYWRDbGlja0F0dHJpYnV0
aW9uL2FuY2hvci10YWctYXR0cmlidXRlcy12YWxpZGF0aW9uLWV4cGVjdGVkLnR4dAppbmRleCA3
YWU0MWU1M2UzYWRkMjY0ZmY1MjA2YWFkMmQyNjhmMDViZWQwODk1Li5iZjgwN2U4NWZkNzBlZDU5
YjU4OTE2NDNjZDdjYTZhMzlkYjQ1YWMxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL2FkQ2xpY2tBdHRyaWJ1dGlvbi9hbmNob3ItdGFnLWF0dHJpYnV0ZXMtdmFsaWRhdGlvbi1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9hZENsaWNrQXR0cmlidXRp
b24vYW5jaG9yLXRhZy1hdHRyaWJ1dGVzLXZhbGlkYXRpb24tZXhwZWN0ZWQudHh0CkBAIC0xLDE0
ICsxLDE0IEBACi1DT05TT0xFIE1FU1NBR0U6IGxpbmUgMTkyOiBhZGNhbXBhaWduaWQgbXVzdCBo
YXZlIGEgbm9uLW5lZ2F0aXZlIHZhbHVlIGxlc3MgdGhhbiBvciBlcXVhbCB0byA2MyBmb3IgQWQg
Q2xpY2sgQXR0cmlidXRpb24uCi1DT05TT0xFIE1FU1NBR0U6IGxpbmUgMTkyOiBhZGNhbXBhaWdu
aWQgbXVzdCBoYXZlIGEgbm9uLW5lZ2F0aXZlIHZhbHVlIGxlc3MgdGhhbiBvciBlcXVhbCB0byA2
MyBmb3IgQWQgQ2xpY2sgQXR0cmlidXRpb24uCi1DT05TT0xFIE1FU1NBR0U6IGxpbmUgMTkyOiBh
ZGNhbXBhaWduaWQgY2FuIG5vdCBiZSBjb252ZXJ0ZWQgdG8gYSBub24tbmVnYXRpdmUgaW50ZWdl
ciB3aGljaCBpcyByZXF1aXJlZCBmb3IgQWQgQ2xpY2sgQXR0cmlidXRpb24uCi1DT05TT0xFIE1F
U1NBR0U6IGxpbmUgMTkyOiBhZGNhbXBhaWduaWQgY2FuIG5vdCBiZSBjb252ZXJ0ZWQgdG8gYSBu
b24tbmVnYXRpdmUgaW50ZWdlciB3aGljaCBpcyByZXF1aXJlZCBmb3IgQWQgQ2xpY2sgQXR0cmli
dXRpb24uCi1DT05TT0xFIE1FU1NBR0U6IGxpbmUgMTkyOiBhZGNhbXBhaWduaWQgY2FuIG5vdCBi
ZSBjb252ZXJ0ZWQgdG8gYSBub24tbmVnYXRpdmUgaW50ZWdlciB3aGljaCBpcyByZXF1aXJlZCBm
b3IgQWQgQ2xpY2sgQXR0cmlidXRpb24uCi1DT05TT0xFIE1FU1NBR0U6IGxpbmUgMTkyOiBhZGRl
c3RpbmF0aW9uIGNvdWxkIG5vdCBiZSBjb252ZXJ0ZWQgdG8gYSB2YWxpZCBIVFRQLWZhbWlseSBV
UkwuCi1DT05TT0xFIE1FU1NBR0U6IGxpbmUgMTkyOiBhZGRlc3RpbmF0aW9uIGNvdWxkIG5vdCBi
ZSBjb252ZXJ0ZWQgdG8gYSB2YWxpZCBIVFRQLWZhbWlseSBVUkwuCi1DT05TT0xFIE1FU1NBR0U6
IGxpbmUgMTkyOiBhZGRlc3RpbmF0aW9uIGNvdWxkIG5vdCBiZSBjb252ZXJ0ZWQgdG8gYSB2YWxp
ZCBIVFRQLWZhbWlseSBVUkwuCi1DT05TT0xFIE1FU1NBR0U6IGxpbmUgMTkyOiBCb3RoIGFkY2Ft
cGFpZ25pZCBhbmQgYWRkZXN0aW5hdGlvbiBuZWVkIHRvIGJlIHNldCBmb3IgQWQgQ2xpY2sgQXR0
cmlidXRpb24gdG8gd29yay4KLUNPTlNPTEUgTUVTU0FHRTogbGluZSAxOTI6IEJvdGggYWRjYW1w
YWlnbmlkIGFuZCBhZGRlc3RpbmF0aW9uIG5lZWQgdG8gYmUgc2V0IGZvciBBZCBDbGljayBBdHRy
aWJ1dGlvbiB0byB3b3JrLgotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE5MjogYWRkZXN0aW5hdGlv
biBjYW4gbm90IGJlIHRoZSBzYW1lIHNpdGUgYXMgdGhlIGN1cnJlbnQgd2Vic2l0ZS4KK0NPTlNP
TEUgTUVTU0FHRTogbGluZSAxODI6IGFkY2FtcGFpZ25pZCBtdXN0IGhhdmUgYSBub24tbmVnYXRp
dmUgdmFsdWUgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIDYzIGZvciBBZCBDbGljayBBdHRyaWJ1dGlv
bi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxODI6IGFkY2FtcGFpZ25pZCBtdXN0IGhhdmUgYSBu
b24tbmVnYXRpdmUgdmFsdWUgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIDYzIGZvciBBZCBDbGljayBB
dHRyaWJ1dGlvbi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxODI6IGFkY2FtcGFpZ25pZCBjYW4g
bm90IGJlIGNvbnZlcnRlZCB0byBhIG5vbi1uZWdhdGl2ZSBpbnRlZ2VyIHdoaWNoIGlzIHJlcXVp
cmVkIGZvciBBZCBDbGljayBBdHRyaWJ1dGlvbi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxODI6
IGFkY2FtcGFpZ25pZCBjYW4gbm90IGJlIGNvbnZlcnRlZCB0byBhIG5vbi1uZWdhdGl2ZSBpbnRl
Z2VyIHdoaWNoIGlzIHJlcXVpcmVkIGZvciBBZCBDbGljayBBdHRyaWJ1dGlvbi4KK0NPTlNPTEUg
TUVTU0FHRTogbGluZSAxODI6IGFkY2FtcGFpZ25pZCBjYW4gbm90IGJlIGNvbnZlcnRlZCB0byBh
IG5vbi1uZWdhdGl2ZSBpbnRlZ2VyIHdoaWNoIGlzIHJlcXVpcmVkIGZvciBBZCBDbGljayBBdHRy
aWJ1dGlvbi4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxODI6IGFkZGVzdGluYXRpb24gY291bGQg
bm90IGJlIGNvbnZlcnRlZCB0byBhIHZhbGlkIEhUVFAtZmFtaWx5IFVSTC4KK0NPTlNPTEUgTUVT
U0FHRTogbGluZSAxODI6IGFkZGVzdGluYXRpb24gY291bGQgbm90IGJlIGNvbnZlcnRlZCB0byBh
IHZhbGlkIEhUVFAtZmFtaWx5IFVSTC4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxODI6IGFkZGVz
dGluYXRpb24gY291bGQgbm90IGJlIGNvbnZlcnRlZCB0byBhIHZhbGlkIEhUVFAtZmFtaWx5IFVS
TC4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAxODI6IEJvdGggYWRjYW1wYWlnbmlkIGFuZCBhZGRl
c3RpbmF0aW9uIG5lZWQgdG8gYmUgc2V0IGZvciBBZCBDbGljayBBdHRyaWJ1dGlvbiB0byB3b3Jr
LgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE4MjogQm90aCBhZGNhbXBhaWduaWQgYW5kIGFkZGVz
dGluYXRpb24gbmVlZCB0byBiZSBzZXQgZm9yIEFkIENsaWNrIEF0dHJpYnV0aW9uIHRvIHdvcmsu
CitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMTgyOiBhZGRlc3RpbmF0aW9uIGNhbiBub3QgYmUgdGhl
IHNhbWUgc2l0ZSBhcyB0aGUgY3VycmVudCB3ZWJzaXRlLgogVGVzdCBmb3IgdmFsaWRpdHkgb2Yg
YWQgY2xpY2sgYXR0cmlidXRpb24gYXR0cmlidXRlcyBvbiBhbmNob3IgdGFncy4KIAogT24gc3Vj
Y2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQg
YnkgIlRFU1QgQ09NUExFVEUiLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9z
ZWN1cml0eS9hbmNob3ItZG93bmxvYWQtYmxvY2stY3Jvc3NvcmlnaW4tZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9hbmNob3ItZG93bmxvYWQtYmxvY2stY3Jv
c3NvcmlnaW4tZXhwZWN0ZWQudHh0CmluZGV4IDc1OWQ1NjhhZTM0NDJkNDljMjJmMTcwMjUwMzJj
OTBiMTkzYWQwZjQuLjM0NWUwN2U0MGQwN2MzOTQ5NmNhZDQwMDdjMzlkMWE3MThjZGU3OTQgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvYW5jaG9yLWRvd25sb2Fk
LWJsb2NrLWNyb3Nzb3JpZ2luLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3NlY3VyaXR5L2FuY2hvci1kb3dubG9hZC1ibG9jay1jcm9zc29yaWdpbi1leHBlY3RlZC50
eHQKQEAgLTEsNCArMSw0IEBACi1DT05TT0xFIE1FU1NBR0U6IGxpbmUgMTY1OiBUaGUgZG93bmxv
YWQgYXR0cmlidXRlIG9uIGFuY2hvciB3YXMgaWdub3JlZCBiZWNhdXNlIGl0cyBocmVmIFVSTCBo
YXMgYSBkaWZmZXJlbnQgc2VjdXJpdHkgb3JpZ2luLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE1
NTogVGhlIGRvd25sb2FkIGF0dHJpYnV0ZSBvbiBhbmNob3Igd2FzIGlnbm9yZWQgYmVjYXVzZSBp
dHMgaHJlZiBVUkwgaGFzIGEgZGlmZmVyZW50IHNlY3VyaXR5IG9yaWdpbi4KIFRlc3RzIHRoYXQg
dGhlIGRvd25sb2FkIGF0dHJpYnV0ZSBpcyBpZ25vcmVkIGlmIHRoZSBsaW5rIGlzIGNyb3NzIG9y
aWdpbi4KIAogSXQgc2hvdWxkIG5hdmlnYXRlIHRoZSBzdWJmcmFtZSBpbnN0ZWFkIG9mIGRvd25s
b2FkaW5nIHRoZSBmaWxlLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaXBhZC9U
ZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaXBhZC9UZXN0RXhwZWN0YXRp
b25zCmluZGV4IDJlODE4ODQxM2JjMmJiYjFmMWNiMTNiYmZiYTdhMTY3OGNhMTJkNDguLjc3Yzk1
YWE2NWU2MjU0Njk1NGRkZjk4MzE0ZDQ3N2ZjZmU5NGYzMDQgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL3BsYXRmb3JtL2lwYWQvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9pcGFkL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTU1LDEyICs1NSw2IEBAIGh0dHAvdGVzdHMv
cGF5bWVudHJlcXVlc3QvcGF5bWVudC1yZXNwb25zZS1yZXRyeS1tZXRob2QuaHR0cHMuaHRtbCBb
IFNraXAgXQogaHR0cC90ZXN0cy9wYXltZW50cmVxdWVzdC9yZWplY3RzX2lmX25vdF9hY3RpdmUu
aHR0cHMuaHRtbCBbIFNraXAgXQogaHR0cC90ZXN0cy9wYXltZW50cmVxdWVzdC91cGRhdGVXaXRo
LW1ldGhvZC1wbWktaGFuZGxpbmcuaHR0cHMuaHRtbCBbIFNraXAgXQogCi0jIDxyZGFyOi8vcHJv
YmxlbS81MTg1NzI3Nz4gaU9TIDEzIGlQYWQ6IGVkaXRpbmcvcGFzdGVib2FyZC9pb3MvZG9tLXBh
c3RlLSogbGF5b3V0IHRlc3RzIHRpbWluZyBvdXQKLWVkaXRpbmcvcGFzdGVib2FyZC9pb3MvZG9t
LXBhc3RlLWNvbmZpcm1hdGlvbi5odG1sIFsgU2tpcCBdCi1lZGl0aW5nL3Bhc3RlYm9hcmQvaW9z
L2RvbS1wYXN0ZS1jb25zZWN1dGl2ZS1jb25maXJtYXRpb25zLmh0bWwgWyBTa2lwIF0KLWVkaXRp
bmcvcGFzdGVib2FyZC9pb3MvZG9tLXBhc3RlLXJlamVjdGlvbi5odG1sIFsgU2tpcCBdCi1lZGl0
aW5nL3Bhc3RlYm9hcmQvaW9zL2RvbS1wYXN0ZS1yZXF1aXJlcy11c2VyLWdlc3R1cmUuaHRtbCBb
IFNraXAgXQotCiAjIDxyZGFyOi8vcHJvYmxlbS81MTg2MjYyOT4gUkVHUkVTU0lPTiAocjI0NDIz
OSkgWyBpUGFkIFNpbSBdIExheW91dCBUZXN0IGZhc3QvY2FudmFzL2NhbnZhcy10b28tbGFyZ2Ut
dG8tZHJhdy5odG1sIGlzIGZhaWxpbmcKIGZhc3QvY2FudmFzL2NhbnZhcy10b28tbGFyZ2UtdG8t
ZHJhdy5odG1sIFsgRmFpbHVyZSBdCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BvaW50ZXJl
dmVudHMvdXRpbHMuanMgYi9MYXlvdXRUZXN0cy9wb2ludGVyZXZlbnRzL3V0aWxzLmpzCmluZGV4
IDIwODc4ZThkN2I0OGY0MjQ0NGYzNGNkMDJhZmJkOGViZGZlZTE5MmQuLjZjZmMzYTlhMWM3YzZh
N2IzZDg3NDI4NDI5MzlhMzNhNjM5YTFiN2MgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BvaW50
ZXJldmVudHMvdXRpbHMuanMKKysrIGIvTGF5b3V0VGVzdHMvcG9pbnRlcmV2ZW50cy91dGlscy5q
cwpAQCAtMTI2LDcgKzEyNiw3IEBAIGNvbnN0IHVpID0gbmV3IChjbGFzcyBVSUNvbnRyb2xsZXIg
ewogICAgIGRvdWJsZVRhcFRvWm9vbShvcHRpb25zKQogICAgIHsKICAgICAgICAgY29uc3QgZHVy
YXRpb25JblNlY29uZHMgPSAwLjM1OwotICAgICAgICByZXR1cm4gbmV3IFByb21pc2UocmVzb2x2
ZSA9PiB0aGlzLl9ydW4oYHVpQ29udHJvbGxlci5kb3VibGVUYXBBdFBvaW50KCR7b3B0aW9ucy54
fSwgJHtvcHRpb25zLnl9KWApLnRoZW4oKCkgPT4KKyAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNl
KHJlc29sdmUgPT4gdGhpcy5fcnVuKGB1aUNvbnRyb2xsZXIuZG91YmxlVGFwQXRQb2ludCgke29w
dGlvbnMueH0sICR7b3B0aW9ucy55fSwgMClgKS50aGVuKCgpID0+CiAgICAgICAgICAgICBzZXRU
aW1lb3V0KHJlc29sdmUsIGR1cmF0aW9uSW5TZWNvbmRzICogMTAwMCkKICAgICAgICAgKSk7CiAg
ICAgICAgIHJldHVybiB0aGlzLl9ydW4oKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Jlc291
cmNlcy9iYXNpYy1nZXN0dXJlcy5qcyBiL0xheW91dFRlc3RzL3Jlc291cmNlcy9iYXNpYy1nZXN0
dXJlcy5qcwppbmRleCAzYzE5YWQyNGY2ZTY4NzY1MjI5NmU5MDQ2NGQ2MTJkZmNhOWFkZmZlLi5k
M2U1YTBjZDE5N2NmMjdjNDA2ZWIxMGM0NWU4NTZmYzg5OGIyZjg0IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9yZXNvdXJjZXMvYmFzaWMtZ2VzdHVyZXMuanMKKysrIGIvTGF5b3V0VGVzdHMvcmVz
b3VyY2VzL2Jhc2ljLWdlc3R1cmVzLmpzCkBAIC0zMiw3ICszMiw3IEBAIGZ1bmN0aW9uIGRvdWJs
ZVRhcEF0UG9pbnQoeCwgeSkKICAgICByZXR1cm4gbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7CiAg
ICAgICAgIHRlc3RSdW5uZXIucnVuVUlTY3JpcHQoYAogICAgICAgICAgICAgKGZ1bmN0aW9uKCkg
ewotICAgICAgICAgICAgICAgIHVpQ29udHJvbGxlci5kb3VibGVUYXBBdFBvaW50KCR7eH0sICR7
eX0sIGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgICAgIHVpQ29udHJvbGxlci5kb3VibGVUYXBB
dFBvaW50KCR7eH0sICR7eX0sIDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICB1
aUNvbnRyb2xsZXIudWlTY3JpcHRDb21wbGV0ZSgpOwogICAgICAgICAgICAgICAgIH0pOwogICAg
ICAgICAgICAgfSkoKTtgLCByZXNvbHZlKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Jlc291
cmNlcy91aS1oZWxwZXIuanMgYi9MYXlvdXRUZXN0cy9yZXNvdXJjZXMvdWktaGVscGVyLmpzCmlu
ZGV4IDNiNThkYzZiMDEyOTEwNGY1NmQ2M2IyYWMwNDU4N2YzNjU2Yjg3NTguLmU3NWM4ZTg4ZGU3
M2NkYTIxZDExMGM1MmNjYjNkZTBjY2FiMDc2ZGYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3Jl
c291cmNlcy91aS1oZWxwZXIuanMKKysrIGIvTGF5b3V0VGVzdHMvcmVzb3VyY2VzL3VpLWhlbHBl
ci5qcwpAQCAtNTAsNyArNTAsNyBAQCB3aW5kb3cuVUlIZWxwZXIgPSBjbGFzcyBVSUhlbHBlciB7
CiAgICAgICAgIH0pOwogICAgIH0KIAotICAgIHN0YXRpYyBkb3VibGVUYXBBdCh4LCB5KQorICAg
IHN0YXRpYyBkb3VibGVUYXBBdCh4LCB5LCBkZWxheSA9IDApCiAgICAgewogICAgICAgICBjb25z
b2xlLmFzc2VydCh0aGlzLmlzSU9TRmFtaWx5KCkpOwogCkBAIC02OCw3ICs2OCw3IEBAIHdpbmRv
dy5VSUhlbHBlciA9IGNsYXNzIFVJSGVscGVyIHsKIAogICAgICAgICByZXR1cm4gbmV3IFByb21p
c2UoKHJlc29sdmUpID0+IHsKICAgICAgICAgICAgIHRlc3RSdW5uZXIucnVuVUlTY3JpcHQoYAot
ICAgICAgICAgICAgICAgIHVpQ29udHJvbGxlci5kb3VibGVUYXBBdFBvaW50KCR7eH0sICR7eX0s
IGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgICAgIHVpQ29udHJvbGxlci5kb3VibGVUYXBBdFBv
aW50KCR7eH0sICR7eX0sICR7ZGVsYXl9LCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAg
ICAgdWlDb250cm9sbGVyLnVpU2NyaXB0Q29tcGxldGUoKTsKICAgICAgICAgICAgICAgICB9KTtg
LCByZXNvbHZlKTsKICAgICAgICAgfSk7CkBAIC05MSwxMiArOTEsNyBAQCB3aW5kb3cuVUlIZWxw
ZXIgPSBjbGFzcyBVSUhlbHBlciB7CiAgICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZl
KCk7CiAgICAgICAgIH0KIAotICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoYXN5bmMgKHJlc29s
dmUpID0+IHsKLSAgICAgICAgICAgIGF3YWl0IFVJSGVscGVyLnRhcEF0KHgsIHkpOwotICAgICAg
ICAgICAgYXdhaXQgbmV3IFByb21pc2UocmVzb2x2ZUFmdGVyRGVsYXkgPT4gc2V0VGltZW91dChy
ZXNvbHZlQWZ0ZXJEZWxheSwgMTIwKSk7Ci0gICAgICAgICAgICBhd2FpdCBVSUhlbHBlci50YXBB
dCh4LCB5KTsKLSAgICAgICAgICAgIHJlc29sdmUoKTsKLSAgICAgICAgfSk7CisgICAgICAgIHJl
dHVybiBVSUhlbHBlci5kb3VibGVUYXBBdCh4LCB5LCAwLjEyKTsKICAgICB9CiAKICAgICBzdGF0
aWMgaHVtYW5TcGVlZFpvb21CeURvdWJsZVRhcHBpbmdBdCh4LCB5KQpAQCAtMTE3LDE3ICsxMTIs
MTIgQEAgd2luZG93LlVJSGVscGVyID0gY2xhc3MgVUlIZWxwZXIgewogICAgICAgICB9CiAKICAg
ICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKGFzeW5jIChyZXNvbHZlKSA9PiB7Ci0gICAgICAgICAg
ICBhd2FpdCBVSUhlbHBlci50YXBBdCh4LCB5KTsKLSAgICAgICAgICAgIGF3YWl0IG5ldyBQcm9t
aXNlKHJlc29sdmVBZnRlckRlbGF5ID0+IHNldFRpbWVvdXQocmVzb2x2ZUFmdGVyRGVsYXksIDEy
MCkpOwotICAgICAgICAgICAgYXdhaXQgbmV3IFByb21pc2UoKHJlc29sdmVBZnRlclpvb20pID0+
IHsKLSAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLnJ1blVJU2NyaXB0KGAKLSAgICAgICAgICAg
ICAgICAgICAgdWlDb250cm9sbGVyLmRpZEVuZFpvb21pbmdDYWxsYmFjayA9ICgpID0+IHsKLSAg
ICAgICAgICAgICAgICAgICAgICAgIHVpQ29udHJvbGxlci5kaWRFbmRab29taW5nQ2FsbGJhY2sg
PSBudWxsOwotICAgICAgICAgICAgICAgICAgICAgICAgdWlDb250cm9sbGVyLnVpU2NyaXB0Q29t
cGxldGUodWlDb250cm9sbGVyLnpvb21TY2FsZSk7Ci0gICAgICAgICAgICAgICAgICAgIH07Ci0g
ICAgICAgICAgICAgICAgICAgIHVpQ29udHJvbGxlci5zaW5nbGVUYXBBdFBvaW50KCR7eH0sICR7
eX0sICgpID0+IHt9KTtgLCByZXNvbHZlQWZ0ZXJab29tKTsKLSAgICAgICAgICAgIH0pOwotICAg
ICAgICAgICAgcmVzb2x2ZSgpOworICAgICAgICAgICAgdGVzdFJ1bm5lci5ydW5VSVNjcmlwdChg
CisgICAgICAgICAgICAgICAgdWlDb250cm9sbGVyLmRpZEVuZFpvb21pbmdDYWxsYmFjayA9ICgp
ID0+IHsKKyAgICAgICAgICAgICAgICAgICAgdWlDb250cm9sbGVyLmRpZEVuZFpvb21pbmdDYWxs
YmFjayA9IG51bGw7CisgICAgICAgICAgICAgICAgICAgIHVpQ29udHJvbGxlci51aVNjcmlwdENv
bXBsZXRlKHVpQ29udHJvbGxlci56b29tU2NhbGUpOworICAgICAgICAgICAgICAgIH07CisgICAg
ICAgICAgICAgICAgdWlDb250cm9sbGVyLmRvdWJsZVRhcEF0UG9pbnQoJHt4fSwgJHt5fSwgMC4x
MiwgKCkgPT4geyB9KTtgLCByZXNvbHZlKTsKICAgICAgICAgfSk7CiAgICAgfQogCkBAIC0xNTMs
NyArMTQzLDcgQEAgd2luZG93LlVJSGVscGVyID0gY2xhc3MgVUlIZWxwZXIgewogICAgICAgICAg
ICAgICAgICAgICB1aUNvbnRyb2xsZXIuZGlkRW5kWm9vbWluZ0NhbGxiYWNrID0gbnVsbDsKICAg
ICAgICAgICAgICAgICAgICAgdWlDb250cm9sbGVyLnVpU2NyaXB0Q29tcGxldGUodWlDb250cm9s
bGVyLnpvb21TY2FsZSk7CiAgICAgICAgICAgICAgICAgfTsKLSAgICAgICAgICAgICAgICB1aUNv
bnRyb2xsZXIuZG91YmxlVGFwQXRQb2ludCgke3h9LCAke3l9LCAoKSA9PiB7fSk7YCwgcmVzb2x2
ZSk7CisgICAgICAgICAgICAgICAgdWlDb250cm9sbGVyLmRvdWJsZVRhcEF0UG9pbnQoJHt4fSwg
JHt5fSwgMCwgKCkgPT4geyB9KTtgLCByZXNvbHZlKTsKICAgICAgICAgfSk7CiAgICAgfQogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>