<?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>223894</bug_id>
          
          <creation_ts>2021-03-29 12:41:53 -0700</creation_ts>
          <short_desc>Add a way for internal clients to hit-test for selectable text in user agent shadow roots</short_desc>
          <delta_ts>2021-03-29 15:53:53 -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>WebKit2</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>bdakin</cc>
    
    <cc>hi</cc>
    
    <cc>kkinnunen</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>1744833</commentid>
    <comment_count>0</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-03-29 12:41:53 -0700</bug_when>
    <thetext>.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1744834</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-03-29 12:44:17 -0700</bug_when>
    <thetext>&lt;rdar://problem/75968068&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1744868</commentid>
    <comment_count>2</comment_count>
      <attachid>424569</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-03-29 13:22:48 -0700</bug_when>
    <thetext>Created attachment 424569
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1744970</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-03-29 15:53:51 -0700</bug_when>
    <thetext>Committed r275186: &lt;https://commits.webkit.org/r275186&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 424569.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>424569</attachid>
            <date>2021-03-29 13:22:48 -0700</date>
            <delta_ts>2021-03-29 15:53:52 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-223894-20210329132247.patch</filename>
            <type>text/plain</type>
            <size>30703</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc1MTI1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDkxNjAzODhmZjc0NjFkOTVm
YWQ4OTZjZjEzMTMxMjc3ZTg3OWE5YmYuLjU1MjExNWM3OTFiMzAxYzA2Yzk5YTU0YmE4MDE2MTQ3
MzkyODQ2YzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzggQEAKKzIwMjEtMDMtMjkgIFdlbnNvbiBI
c2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIGEgd2F5IGZvciBp
bnRlcm5hbCBjbGllbnRzIHRvIGhpdC10ZXN0IGZvciBzZWxlY3RhYmxlIHRleHQgaW4gdXNlciBh
Z2VudCBzaGFkb3cgcm9vdHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIyMzg5NAorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNzU5NjgwNjg+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQXVnbWVudCBzb21l
IE9iamVjdGl2ZS1DIGluamVjdGVkIGJ1bmRsZSBTUEkgdG8gYWxsb3cgaW50ZXJuYWwgY2xpZW50
cyB0byBoaXQtdGVzdCBmb3Igc2VsZWN0YWJsZSB0ZXh0LAorICAgICAgICBpbmNsdWRpbmcgY29u
dGVudCBpbiBVQSBzaGFkb3cgcm9vdHMuIFJlZmVyIHRvIDxyZGFyOi8vcHJvYmxlbS83NTc1MzY2
Nj4gZm9yIG1vcmUgY29udGV4dC4KKworICAgICAgICBUZXN0czogIEluamVjdGVkQnVuZGxlSGl0
VGVzdC5UZXh0UGFyYWdyYXBoCisgICAgICAgICAgICAgICAgSW5qZWN0ZWRCdW5kbGVIaXRUZXN0
LkltYWdlT3ZlcmxheQorCisgICAgICAgICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkv
Q29jb2EvV0tXZWJQcm9jZXNzUGx1Z0luRnJhbWUuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL0lu
amVjdGVkQnVuZGxlL0FQSS9Db2NvYS9XS1dlYlByb2Nlc3NQbHVnSW5GcmFtZS5tbToKKyAgICAg
ICAgKC1bV0tXZWJQcm9jZXNzUGx1Z0luRnJhbWUgaGl0VGVzdDpvcHRpb25zOl0pOgorCisgICAg
ICAgIEFkZCBhIG5ldyB2ZXJzaW9uIG9mIGAtaGl0VGVzdDpgIHRoYXQgdGFrZXMgaGl0IHRlc3Rp
bmcgb3B0aW9ucyAoZm9yIG5vdywgdGhlIG9ubHkgb3B0aW9uIGlzIHdoZXRoZXIgb3Igbm90IHdl
CisgICAgICAgIHNob3VsZCBhbGxvdyBVQSBzaGFkb3cgcm9vdCBjb250ZW50IHdoZW4gaGl0LXRl
c3RpbmcpLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvQ29jb2Ev
V0tXZWJQcm9jZXNzUGx1Z0luTm9kZUhhbmRsZS5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvSW5q
ZWN0ZWRCdW5kbGUvQVBJL0NvY29hL1dLV2ViUHJvY2Vzc1BsdWdJbk5vZGVIYW5kbGUubW06Cisg
ICAgICAgICgtW1dLV2ViUHJvY2Vzc1BsdWdJbk5vZGVIYW5kbGUgaXNTZWxlY3RhYmxlVGV4dE5v
ZGVdKToKKworICAgICAgICBBZGQgYSByZWFkb25seSBnZXR0ZXIgdG8gcmV0dXJuIHdoZXRoZXIg
b3Igbm90IHRoZSBoaXQtdGVzdGVkIG5vZGUgaXMgYSBzZWxlY3RhYmxlIHRleHQgbm9kZS4KKwor
ICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvRE9NL0luamVjdGVkQnVuZGxlTm9k
ZUhhbmRsZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxlTm9kZUhhbmRsZTo6
aXNTZWxlY3RhYmxlVGV4dE5vZGUgY29uc3QpOgorICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0
ZWRCdW5kbGUvRE9NL0luamVjdGVkQnVuZGxlTm9kZUhhbmRsZS5oOgorICAgICAgICAqIFdlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJGcmFtZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lOjpo
aXRUZXN0IGNvbnN0KToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViRnJhbWUuaDoK
KyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWU6OmRlZmF1bHRIaXRUZXN0UmVxdWVzdFR5cGVzKToK
KwogMjAyMS0wMy0yNiAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KIAog
ICAgICAgICBVc2UgUFVJQ1F1aWNrYm9hcmRDb250cm9sbGVyIGZvciB0ZXh0IGlucHV0IHdoZW4g
SEFWRShRVUlDS0JPQVJEX0NPTlRST0xMRVIpIGlzIGRlZmluZWQKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvQ29jb2EvV0tXZWJQcm9jZXNz
UGx1Z0luRnJhbWUuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9B
UEkvQ29jb2EvV0tXZWJQcm9jZXNzUGx1Z0luRnJhbWUuaAppbmRleCA5NTJiYmQ1NjM4MzNjOWJi
N2Y3MzZmZWM1NTg1MDliZDUzMGFlNjM1Li4yM2EzZWE1NDBkZGQ1MDIyZGI1YWI5YjU4OTZlM2U2
MjBiM2VlMDAxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRC
dW5kbGUvQVBJL0NvY29hL1dLV2ViUHJvY2Vzc1BsdWdJbkZyYW1lLmgKKysrIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9Db2NvYS9XS1dlYlByb2Nlc3NQbHVn
SW5GcmFtZS5oCkBAIC0zNSw2ICszNSwxMCBAQAogQGNsYXNzIFdLV2ViUHJvY2Vzc1BsdWdJblJh
bmdlSGFuZGxlOwogQGNsYXNzIFdLV2ViUHJvY2Vzc1BsdWdJblNjcmlwdFdvcmxkOwogCit0eXBl
ZGVmIE5TX09QVElPTlMoTlNVSW50ZWdlciwgV0tIaXRUZXN0T3B0aW9ucykgeworICAgIFdLSGl0
VGVzdE9wdGlvbkFsbG93VXNlckFnZW50U2hhZG93Um9vdENvbnRlbnQgPSAxIDw8IDAsCit9IFdL
X0FQSV9BVkFJTEFCTEUobWFjb3MoV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7CisKIFdL
X0NMQVNTX0FWQUlMQUJMRShtYWNvcygxMC4xMCksIGlvcyg4LjApKQogQGludGVyZmFjZSBXS1dl
YlByb2Nlc3NQbHVnSW5GcmFtZSA6IE5TT2JqZWN0CiAKQEAgLTUyLDYgKzU2LDcgQEAgV0tfQ0xB
U1NfQVZBSUxBQkxFKG1hY29zKDEwLjEwKSwgaW9zKDguMCkpCiAKIC0gKEpTQ29udGV4dCAqKWpz
Q29udGV4dEZvcldvcmxkOihXS1dlYlByb2Nlc3NQbHVnSW5TY3JpcHRXb3JsZCAqKXdvcmxkOwog
LSAoV0tXZWJQcm9jZXNzUGx1Z0luSGl0VGVzdFJlc3VsdCAqKWhpdFRlc3Q6KENHUG9pbnQpcG9p
bnQ7CistIChXS1dlYlByb2Nlc3NQbHVnSW5IaXRUZXN0UmVzdWx0ICopaGl0VGVzdDooQ0dQb2lu
dClwb2ludCBvcHRpb25zOihXS0hpdFRlc3RPcHRpb25zKW9wdGlvbnMgV0tfQVBJX0FWQUlMQUJM
RShtYWNvcyhXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKIC0gKEpTVmFsdWUgKilqc05v
ZGVGb3JOb2RlSGFuZGxlOihXS1dlYlByb2Nlc3NQbHVnSW5Ob2RlSGFuZGxlICopbm9kZUhhbmRs
ZSBpbldvcmxkOihXS1dlYlByb2Nlc3NQbHVnSW5TY3JpcHRXb3JsZCAqKXdvcmxkOwogLSAoSlNW
YWx1ZSAqKWpzUmFuZ2VGb3JSYW5nZUhhbmRsZTooV0tXZWJQcm9jZXNzUGx1Z0luUmFuZ2VIYW5k
bGUgKilyYW5nZUhhbmRsZSBpbldvcmxkOihXS1dlYlByb2Nlc3NQbHVnSW5TY3JpcHRXb3JsZCAq
KXdvcmxkIFdLX0FQSV9BVkFJTEFCTEUobWFjb3MoMTAuMTIuMyksIGlvcygxMC4zKSk7CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvQ29j
b2EvV0tXZWJQcm9jZXNzUGx1Z0luRnJhbWUubW0gYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
SW5qZWN0ZWRCdW5kbGUvQVBJL0NvY29hL1dLV2ViUHJvY2Vzc1BsdWdJbkZyYW1lLm1tCmluZGV4
IGY1MzA3NGYxMmQwYzdkOTUxMjM0NDRlNzI4ODUyZTdjMTUzNWExMTguLmZiYTdkYjM3MjQ5NjM5
OTMxY2UwMjhiMGIyODVjM2NjMjNhMDc4MDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvQ29jb2EvV0tXZWJQcm9jZXNzUGx1Z0luRnJhbWUu
bW0KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9Db2Nv
YS9XS1dlYlByb2Nlc3NQbHVnSW5GcmFtZS5tbQpAQCAtNzYsNiArNzYsMTQgQEAgLSAoV0tXZWJQ
cm9jZXNzUGx1Z0luSGl0VGVzdFJlc3VsdCAqKWhpdFRlc3Q6KENHUG9pbnQpcG9pbnQKICAgICBy
ZXR1cm4gd3JhcHBlcihfZnJhbWUtPmhpdFRlc3QoV2ViQ29yZTo6SW50UG9pbnQocG9pbnQpKSk7
CiB9CiAKKy0gKFdLV2ViUHJvY2Vzc1BsdWdJbkhpdFRlc3RSZXN1bHQgKiloaXRUZXN0OihDR1Bv
aW50KXBvaW50IG9wdGlvbnM6KFdLSGl0VGVzdE9wdGlvbnMpb3B0aW9ucworeworICAgIGF1dG8g
dHlwZXMgPSBXZWJLaXQ6OldlYkZyYW1lOjpkZWZhdWx0SGl0VGVzdFJlcXVlc3RUeXBlcygpOwor
ICAgIGlmIChvcHRpb25zICYgV0tIaXRUZXN0T3B0aW9uQWxsb3dVc2VyQWdlbnRTaGFkb3dSb290
Q29udGVudCkKKyAgICAgICAgdHlwZXMucmVtb3ZlKFdlYkNvcmU6OkhpdFRlc3RSZXF1ZXN0OjpE
aXNhbGxvd1VzZXJBZ2VudFNoYWRvd0NvbnRlbnQpOworICAgIHJldHVybiB3cmFwcGVyKF9mcmFt
ZS0+aGl0VGVzdChXZWJDb3JlOjpJbnRQb2ludChwb2ludCksIHR5cGVzKSk7Cit9CisKIC0gKEpT
VmFsdWUgKilqc05vZGVGb3JOb2RlSGFuZGxlOihXS1dlYlByb2Nlc3NQbHVnSW5Ob2RlSGFuZGxl
ICopbm9kZUhhbmRsZSBpbldvcmxkOihXS1dlYlByb2Nlc3NQbHVnSW5TY3JpcHRXb3JsZCAqKXdv
cmxkCiB7CiAgICAgSlNWYWx1ZVJlZiB2YWx1ZVJlZiA9IF9mcmFtZS0+anNXcmFwcGVyRm9yV29y
bGQoJltub2RlSGFuZGxlIF9ub2RlSGFuZGxlXSwgJlt3b3JsZCBfc2NyaXB0V29ybGRdKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvQ29j
b2EvV0tXZWJQcm9jZXNzUGx1Z0luTm9kZUhhbmRsZS5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL0luamVjdGVkQnVuZGxlL0FQSS9Db2NvYS9XS1dlYlByb2Nlc3NQbHVnSW5Ob2RlSGFuZGxl
LmgKaW5kZXggMmE0YWY2YzgyOTk4MTYyN2Q0M2Q4Y2RiMTIwNzc4NzQxNDZkMmVhOC4uMjg4MmMz
ZmI1MmRmOWE2Y2Y4YzYyMTFiZmJkM2FlOWQ4MWRmMDc2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9Db2NvYS9XS1dlYlByb2Nlc3NQbHVn
SW5Ob2RlSGFuZGxlLmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVu
ZGxlL0FQSS9Db2NvYS9XS1dlYlByb2Nlc3NQbHVnSW5Ob2RlSGFuZGxlLmgKQEAgLTU3LDYgKzU3
LDcgQEAgV0tfQ0xBU1NfQVZBSUxBQkxFKG1hY29zKDEwLjEwKSwgaW9zKDguMCkpCiBAcHJvcGVy
dHkgKG5vbmF0b21pYywgcmVhZG9ubHkpIFdLV2ViUHJvY2Vzc1BsdWdJbk5vZGVIYW5kbGUgKkhU
TUxUYWJsZUNlbGxFbGVtZW50Q2VsbEFib3ZlOwogQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRv
bmx5KSBXS1dlYlByb2Nlc3NQbHVnSW5GcmFtZSAqZnJhbWU7CiBAcHJvcGVydHkgKG5vbmF0b21p
YywgcmVhZG9ubHkpIEJPT0wgaXNTZWxlY3RFbGVtZW50IFdLX0FQSV9BVkFJTEFCTEUobWFjb3Mo
MTAuMTQuNCksIGlvcygxMi4yKSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHkpIEJP
T0wgaXNTZWxlY3RhYmxlVGV4dE5vZGUgV0tfQVBJX0FWQUlMQUJMRShtYWNvcyhXS19NQUNfVEJB
KSwgaW9zKFdLX0lPU19UQkEpKTsKIAogLSAoQk9PTClpc1RleHRGaWVsZDsKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9Db2NvYS9XS1dl
YlByb2Nlc3NQbHVnSW5Ob2RlSGFuZGxlLm1tIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0lu
amVjdGVkQnVuZGxlL0FQSS9Db2NvYS9XS1dlYlByb2Nlc3NQbHVnSW5Ob2RlSGFuZGxlLm1tCmlu
ZGV4IDhjNTc3MDk2MjJlZDk1YjU2YzQ1MTc1ODFmNjcxNDM5OWU1ZDlmNGYuLjE0MWUzOGI5MmFj
NDYwMjEwYjVhMGUxMjE1MTQ1NTZiM2VhZmE0ZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvQ29jb2EvV0tXZWJQcm9jZXNzUGx1Z0luTm9k
ZUhhbmRsZS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUv
QVBJL0NvY29hL1dLV2ViUHJvY2Vzc1BsdWdJbk5vZGVIYW5kbGUubW0KQEAgLTE3Nyw2ICsxNzcs
MTEgQEAgLSAoQk9PTClpc1NlbGVjdEVsZW1lbnQKICAgICByZXR1cm4gX25vZGVIYW5kbGUtPmlz
U2VsZWN0RWxlbWVudCgpOwogfQogCistIChCT09MKWlzU2VsZWN0YWJsZVRleHROb2RlCit7Cisg
ICAgcmV0dXJuIF9ub2RlSGFuZGxlLT5pc1NlbGVjdGFibGVUZXh0Tm9kZSgpOworfQorCiAtIChC
T09MKWlzVGV4dEZpZWxkCiB7CiAgICAgcmV0dXJuIF9ub2RlSGFuZGxlLT5pc1RleHRGaWVsZCgp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0RP
TS9JbmplY3RlZEJ1bmRsZU5vZGVIYW5kbGUuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L0luamVjdGVkQnVuZGxlL0RPTS9JbmplY3RlZEJ1bmRsZU5vZGVIYW5kbGUuY3BwCmluZGV4IDAx
YzE1NGQ3NTdhMTAxMzYzYWZkZWM5NzU1MzAwMGMyMjQwOGRhODIuLjBlY2MyZGM4OGRkNjVmYTIx
ZGU2NmY3ZDU0ZGU3NmJjYzUzZDE5MmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9JbmplY3RlZEJ1bmRsZS9ET00vSW5qZWN0ZWRCdW5kbGVOb2RlSGFuZGxlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvRE9NL0luamVjdGVkQnVu
ZGxlTm9kZUhhbmRsZS5jcHAKQEAgLTUyLDYgKzUyLDcgQEAKICNpbmNsdWRlIDxXZWJDb3JlL1Jh
bmdlLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9SZW5kZXJPYmplY3QuaD4KICNpbmNsdWRlIDxXZWJD
b3JlL1NpbXBsZVJhbmdlLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9UZXh0Lmg+CiAjaW5jbHVkZSA8
V2ViQ29yZS9WaXNpYmxlUG9zaXRpb24uaD4KICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgogI2lu
Y2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtMzc1LDYgKzM3NiwxNSBAQCBib29sIElu
amVjdGVkQnVuZGxlTm9kZUhhbmRsZTo6aXNTZWxlY3RFbGVtZW50KCkgY29uc3QKICAgICByZXR1
cm4gaXM8SFRNTFNlbGVjdEVsZW1lbnQ+KG1fbm9kZSk7CiB9CiAKK2Jvb2wgSW5qZWN0ZWRCdW5k
bGVOb2RlSGFuZGxlOjppc1NlbGVjdGFibGVUZXh0Tm9kZSgpIGNvbnN0Cit7CisgICAgaWYgKCFp
czxUZXh0PihtX25vZGUpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBhdXRvIHJlbmRl
cmVyID0gbV9ub2RlLT5yZW5kZXJlcigpOworICAgIHJldHVybiByZW5kZXJlciAmJiByZW5kZXJl
ci0+c3R5bGUoKS51c2VyU2VsZWN0KCkgIT0gVXNlclNlbGVjdDo6Tm9uZTsKK30KKwogUmVmUHRy
PEluamVjdGVkQnVuZGxlTm9kZUhhbmRsZT4gSW5qZWN0ZWRCdW5kbGVOb2RlSGFuZGxlOjpodG1s
VGFibGVDZWxsRWxlbWVudENlbGxBYm92ZSgpCiB7CiAgICAgaWYgKCFpczxIVE1MVGFibGVDZWxs
RWxlbWVudD4obV9ub2RlKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9J
bmplY3RlZEJ1bmRsZS9ET00vSW5qZWN0ZWRCdW5kbGVOb2RlSGFuZGxlLmggYi9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvRE9NL0luamVjdGVkQnVuZGxlTm9kZUhhbmRs
ZS5oCmluZGV4IGZhZmExOWZiMzJkNDU5ZjMyOGYyNGJlNDIwN2IwOWVkMmQ3MGRiYmUuLmYzMzFi
ZTAzMjM0NmQ4YjQ1YWFiN2YyYmJkZDcwMTg2YzU4NTU5MzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9ET00vSW5qZWN0ZWRCdW5kbGVOb2RlSGFu
ZGxlLmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0RPTS9J
bmplY3RlZEJ1bmRsZU5vZGVIYW5kbGUuaApAQCAtODIsNiArODIsNyBAQCBwdWJsaWM6CiAgICAg
Ym9vbCBodG1sVGV4dEFyZWFFbGVtZW50TGFzdENoYW5nZVdhc1VzZXJFZGl0KCk7CiAgICAgYm9v
bCBpc1RleHRGaWVsZCgpIGNvbnN0OwogICAgIGJvb2wgaXNTZWxlY3RFbGVtZW50KCkgY29uc3Q7
CisgICAgYm9vbCBpc1NlbGVjdGFibGVUZXh0Tm9kZSgpIGNvbnN0OwogICAgIAogICAgIFJlZlB0
cjxJbmplY3RlZEJ1bmRsZU5vZGVIYW5kbGU+IGh0bWxUYWJsZUNlbGxFbGVtZW50Q2VsbEFib3Zl
KCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYkZy
YW1lLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYkZyYW1lLmNwcApp
bmRleCBmOWQ5MzJlMDBhNDljM2ZmYzM0MTdmYmEyYWNhMmM4Y2NkYjZhMWRiLi5kMTk5ZWU4OTFk
NWYwZmUzNGI4YjkwYTAyMjNiMzRmOGNiYTYyMmU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJGcmFtZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL1dlYlBhZ2UvV2ViRnJhbWUuY3BwCkBAIC02NDEsMTMgKzY0MSwxMiBAQCBib29sIFdl
YkZyYW1lOjpoYXNWZXJ0aWNhbFNjcm9sbGJhcigpIGNvbnN0CiAgICAgcmV0dXJuIHZpZXctPnZl
cnRpY2FsU2Nyb2xsYmFyKCk7CiB9CiAKLVJlZlB0cjxJbmplY3RlZEJ1bmRsZUhpdFRlc3RSZXN1
bHQ+IFdlYkZyYW1lOjpoaXRUZXN0KGNvbnN0IEludFBvaW50IHBvaW50KSBjb25zdAorUmVmUHRy
PEluamVjdGVkQnVuZGxlSGl0VGVzdFJlc3VsdD4gV2ViRnJhbWU6OmhpdFRlc3QoY29uc3QgSW50
UG9pbnQgcG9pbnQsIE9wdGlvblNldDxIaXRUZXN0UmVxdWVzdDo6UmVxdWVzdFR5cGU+IHR5cGVz
KSBjb25zdAogewogICAgIGlmICghbV9jb3JlRnJhbWUpCiAgICAgICAgIHJldHVybiBudWxscHRy
OwogCi0gICAgY29uc3RleHByIE9wdGlvblNldDxIaXRUZXN0UmVxdWVzdDo6UmVxdWVzdFR5cGU+
IGhpdFR5cGUgeyBIaXRUZXN0UmVxdWVzdDo6UmVhZE9ubHksIEhpdFRlc3RSZXF1ZXN0OjpBY3Rp
dmUsIEhpdFRlc3RSZXF1ZXN0OjpJZ25vcmVDbGlwcGluZywgIEhpdFRlc3RSZXF1ZXN0OjpEaXNh
bGxvd1VzZXJBZ2VudFNoYWRvd0NvbnRlbnQsIEhpdFRlc3RSZXF1ZXN0OjpBbGxvd0NoaWxkRnJh
bWVDb250ZW50IH07Ci0gICAgcmV0dXJuIEluamVjdGVkQnVuZGxlSGl0VGVzdFJlc3VsdDo6Y3Jl
YXRlKG1fY29yZUZyYW1lLT5ldmVudEhhbmRsZXIoKS5oaXRUZXN0UmVzdWx0QXRQb2ludChwb2lu
dCwgaGl0VHlwZSkpOworICAgIHJldHVybiBJbmplY3RlZEJ1bmRsZUhpdFRlc3RSZXN1bHQ6OmNy
ZWF0ZShtX2NvcmVGcmFtZS0+ZXZlbnRIYW5kbGVyKCkuaGl0VGVzdFJlc3VsdEF0UG9pbnQocG9p
bnQsIHR5cGVzKSk7CiB9CiAKIGJvb2wgV2ViRnJhbWU6OmdldERvY3VtZW50QmFja2dyb3VuZENv
bG9yKGRvdWJsZSogcmVkLCBkb3VibGUqIGdyZWVuLCBkb3VibGUqIGJsdWUsIGRvdWJsZSogYWxw
aGEpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJGcmFt
ZS5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViRnJhbWUuaAppbmRleCA5
NmJhYjBjNjJjZWQyNjhmYzhlNTUyYzVkMDIxMGFkNjNlODJmZjI1Li45ZWM2ZDkxNDhkMDM5OTYx
Mjc0NTllZWY4YmQ3M2NhNjhhMDZjZTAxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJGcmFtZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9X
ZWJQYWdlL1dlYkZyYW1lLmgKQEAgLTM2LDYgKzM2LDcgQEAKICNpbmNsdWRlIDxKYXZhU2NyaXB0
Q29yZS9KU0Jhc2UuaD4KICNpbmNsdWRlIDxXZWJDb3JlL0ZyYW1lTG9hZGVyQ2xpZW50Lmg+CiAj
aW5jbHVkZSA8V2ViQ29yZS9GcmFtZUxvYWRlclR5cGVzLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9I
aXRUZXN0UmVxdWVzdC5oPgogI2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+CiAjaW5jbHVkZSA8d3Rm
L0hhc2hNYXAuaD4KICNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CkBAIC0xMTksNyArMTIwLDIwIEBA
IHB1YmxpYzoKICAgICBXZWJDb3JlOjpJbnRTaXplIHNjcm9sbE9mZnNldCgpIGNvbnN0OwogICAg
IGJvb2wgaGFzSG9yaXpvbnRhbFNjcm9sbGJhcigpIGNvbnN0OwogICAgIGJvb2wgaGFzVmVydGlj
YWxTY3JvbGxiYXIoKSBjb25zdDsKLSAgICBSZWZQdHI8SW5qZWN0ZWRCdW5kbGVIaXRUZXN0UmVz
dWx0PiBoaXRUZXN0KGNvbnN0IFdlYkNvcmU6OkludFBvaW50KSBjb25zdDsKKworICAgIHN0YXRp
YyBjb25zdGV4cHIgT3B0aW9uU2V0PFdlYkNvcmU6OkhpdFRlc3RSZXF1ZXN0OjpSZXF1ZXN0VHlw
ZT4gZGVmYXVsdEhpdFRlc3RSZXF1ZXN0VHlwZXMoKQorICAgIHsKKyAgICAgICAgcmV0dXJuIHt7
CisgICAgICAgICAgICBXZWJDb3JlOjpIaXRUZXN0UmVxdWVzdDo6UmVhZE9ubHksCisgICAgICAg
ICAgICBXZWJDb3JlOjpIaXRUZXN0UmVxdWVzdDo6QWN0aXZlLAorICAgICAgICAgICAgV2ViQ29y
ZTo6SGl0VGVzdFJlcXVlc3Q6Oklnbm9yZUNsaXBwaW5nLAorICAgICAgICAgICAgV2ViQ29yZTo6
SGl0VGVzdFJlcXVlc3Q6OkFsbG93Q2hpbGRGcmFtZUNvbnRlbnQsCisgICAgICAgICAgICBXZWJD
b3JlOjpIaXRUZXN0UmVxdWVzdDo6RGlzYWxsb3dVc2VyQWdlbnRTaGFkb3dDb250ZW50LAorICAg
ICAgICB9fTsKKyAgICB9CisKKyAgICBSZWZQdHI8SW5qZWN0ZWRCdW5kbGVIaXRUZXN0UmVzdWx0
PiBoaXRUZXN0KGNvbnN0IFdlYkNvcmU6OkludFBvaW50LCBPcHRpb25TZXQ8V2ViQ29yZTo6SGl0
VGVzdFJlcXVlc3Q6OlJlcXVlc3RUeXBlPiA9IGRlZmF1bHRIaXRUZXN0UmVxdWVzdFR5cGVzKCkp
IGNvbnN0OworCiAgICAgYm9vbCBnZXREb2N1bWVudEJhY2tncm91bmRDb2xvcihkb3VibGUqIHJl
ZCwgZG91YmxlKiBncmVlbiwgZG91YmxlKiBibHVlLCBkb3VibGUqIGFscGhhKTsKICAgICBib29s
IGNvbnRhaW5zQW55Rm9ybUVsZW1lbnRzKCkgY29uc3Q7CiAgICAgYm9vbCBjb250YWluc0FueUZv
cm1Db250cm9scygpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMv
Q2hhbmdlTG9nCmluZGV4IDk1NmJmZDFhNTJkMTEyYTllODk3ZGU5YmU4YzBhYmUwN2Q4OGZkZmIu
LjdiMzNjY2RjMGIxMDgyNzgzNmM1M2ViNzYxOGY0NWY4NWNhN2YwYjEgMTAwNjQ0Ci0tLSBhL1Rv
b2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNyBAQAorMjAy
MS0wMy0yOSAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KKworICAgICAg
ICBBZGQgYSB3YXkgZm9yIGludGVybmFsIGNsaWVudHMgdG8gaGl0LXRlc3QgZm9yIHNlbGVjdGFi
bGUgdGV4dCBpbiB1c2VyIGFnZW50IHNoYWRvdyByb290cworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIzODk0CisgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS83NTk2ODA2OD4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBBZGQgYSBuZXcgQVBJIHRlc3QgdG8gZXhlcmNpc2UgYC1bV0tXZWJQcm9jZXNzUGx1Z0lu
RnJhbWUgaGl0VGVzdDpvcHRpb25zOl1gLgorCisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0
V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogVGVzdFdlYktp
dEFQSS9UZXN0cy9XZWJLaXQvSW5qZWN0ZWRCdW5kbGVIaXRUZXN0Lm1tOiBBZGRlZC4KKyAgICAg
ICAgKC1bV0tXZWJWaWV3V2l0aEhpdFRlc3RlciBoYXNTZWxlY3RhYmxlVGV4dEF0Ol0pOgorICAg
ICAgICAoVGVzdFdlYktpdEFQSTo6Y3JlYXRlV2ViVmlld1dpdGhIaXRUZXN0ZXIpOgorICAgICAg
ICAoVGVzdFdlYktpdEFQSTo6VEVTVCk6CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJLaXQvc2ltcGxlLXJlc3BvbnNpdmUtcGFnZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBUZXN0
V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0luamVjdGVkQnVuZGxlSGl0VGVzdFBsdWdJbi5t
bTogQWRkZWQuCisgICAgICAgICgtW0luamVjdGVkQnVuZGxlSGl0VGVzdFBsdWdJbiB3ZWJQcm9j
ZXNzUGx1Z0luOmRpZENyZWF0ZUJyb3dzZXJDb250ZXh0Q29udHJvbGxlcjpdKToKKyAgICAgICAg
KC1bSW5qZWN0ZWRCdW5kbGVIaXRUZXN0UGx1Z0luIHdlYlByb2Nlc3NQbHVnSW5Ccm93c2VyQ29u
dGV4dENvbnRyb2xsZXI6ZGlkQ2xlYXJXaW5kb3dPYmplY3RGb3JGcmFtZTppblNjcmlwdFdvcmxk
Ol0pOgorICAgICAgICAoLVtJbmplY3RlZEJ1bmRsZUhpdFRlc3RQbHVnSW4gd2ViUHJvY2Vzc1Bs
dWdJbkJyb3dzZXJDb250ZXh0Q29udHJvbGxlcjpkaWRGaW5pc2hMb2FkRm9yRnJhbWU6XSk6Cisg
ICAgICAgICgtW0luamVjdGVkQnVuZGxlSGl0VGVzdFBsdWdJbiBoYXNTZWxlY3RhYmxlVGV4dEF0
OmNvbXBsZXRpb25IYW5kbGVyOl0pOgorICAgICAgICAoLVtJbmplY3RlZEJ1bmRsZUhpdFRlc3RQ
bHVnSW4gZGVhbGxvY10pOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29j
b2EvSW5qZWN0ZWRCdW5kbGVIaXRUZXN0UHJvdG9jb2wuaDogQWRkZWQuCisKIDIwMjEtMDMtMjYg
IFR5bGVyIFdpbGNvY2sgIDx0d2lsY28ub0Bwcm90b25tYWlsLmNvbT4KIAogICAgICAgICBGaXgg
VHlwZUVycm9yOiBDYW4ndCBtaXggc3RyaW5ncyBhbmQgYnl0ZXMgaW4gcGF0aCBjb21wb25lbnRz
IGluIFRvb2xzL1NjcmlwdHMvZHVtcC1jbGFzcy1sYXlvdXQKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rl
c3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvVG9v
bHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oK
aW5kZXggMjZlNzA5M2I4ZjE1MGExODE4ZWYyZWJiMjNiNGI0YThlZWNiODE1NS4uYzNhYmU5OTM1
NzA1NjkzODI4ODQyNjU3MDllYThmNWRjNTZlZmJmZiAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdl
YktpdEFQSS9UZXN0V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvVG9v
bHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oK
QEAgLTExODUsNiArMTE4NSw5IEBACiAJCUY0NUQzODkxMjE1QTdCNEIwMDJBMjk3OSAvKiBUZXN0
SW5zcGVjdG9yQmFyLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gRjQ1RDM4OTAyMTVBN0I0QjAwMkEyOTc5IC8qIFRlc3RJbnNwZWN0b3JCYXIubW0gKi87
IH07CiAJCUY0NUUxNTczMjExMkNFMjkwMDMwN0U4MiAvKiBLZXlib2FyZElucHV0VGVzdHNJT1Mu
bW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGNDVFMTU3
MjIxMTJDRTI5MDAzMDdFODIgLyogS2V5Ym9hcmRJbnB1dFRlc3RzSU9TLm1tICovOyB9OwogCQlG
NDVFMTU3NjIxMTJDRTYyMDAzMDdFODIgLyogVGVzdElucHV0RGVsZWdhdGUubW0gaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGNDVFMTU3NTIxMTJDRTYyMDAz
MDdFODIgLyogVGVzdElucHV0RGVsZWdhdGUubW0gKi87IH07CisJCUY0NjBGNjU3MjYxMTE2RUEw
MDY0RjJCNiAvKiBJbmplY3RlZEJ1bmRsZUhpdFRlc3QubW0gaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGNDYwRjY1NjI2MTExNkVBMDA2NEYyQjYgLyogSW5q
ZWN0ZWRCdW5kbGVIaXRUZXN0Lm1tICovOyB9OworCQlGNDYwRjY1QjI2MTExOTU4MDA2NEYyQjYg
LyogSW5qZWN0ZWRCdW5kbGVIaXRUZXN0UGx1Z0luLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjQ2MEY2NTkyNjExMTdFNzAwNjRGMkI2IC8qIEluamVj
dGVkQnVuZGxlSGl0VGVzdFBsdWdJbi5tbSAqLzsgfTsKKwkJRjQ2MEY2NjkyNjEyNjMzNzAwNjRG
MkI2IC8qIHNpbXBsZS1yZXNwb25zaXZlLXBhZ2UuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGNDYwRjY2ODI2MTI2MkM3MDA2NEYyQjYg
Lyogc2ltcGxlLXJlc3BvbnNpdmUtcGFnZS5odG1sICovOyB9OwogCQlGNDYxMjhCNzIxMUM4RUQ1
MDBEOUZBREIgLyogRHJhZ0FuZERyb3BTaW11bGF0b3JNYWMubW0gaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGNDYxMjhCNjIxMUM4RUQ1MDBEOUZBREIgLyog
RHJhZ0FuZERyb3BTaW11bGF0b3JNYWMubW0gKi87IH07CiAJCUY0NjEyOENCMjExRDQ3NTEwMEQ5
RkFEQiAvKiBUZXN0RHJhZ2dpbmdJbmZvLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gRjQ2MTI4Q0EyMTFENDc1MTAwRDlGQURCIC8qIFRlc3REcmFnZ2lu
Z0luZm8ubW0gKi87IH07CiAJCUY0NjEyOEQ0MjExRTQwRkQwMEQ5RkFEQiAvKiBsaW5rLWluLWlm
cmFtZS1hbmQtaW5wdXQuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBGNDYxMjhEMTIxMUUyRDI1MDBEOUZBREIgLyogbGluay1pbi1pZnJh
bWUtYW5kLWlucHV0Lmh0bWwgKi87IH07CkBAIC0xNjU0LDYgKzE2NTcsNyBAQAogCQkJCUMwQURC
RTk2MTJGQ0E3OUIwMEQyQzEyOSAvKiBzaW1wbGUtZm9ybS5odG1sIGluIENvcHkgUmVzb3VyY2Vz
ICovLAogCQkJCTMzREM4OTEyMTQxOTU1RkUwMDc0N0VGNyAvKiBzaW1wbGUtaWZyYW1lLmh0bWwg
aW4gQ29weSBSZXNvdXJjZXMgKi8sCiAJCQkJRjRFQzgwOTQyNjBEMzA1NDAwMTAzMTFEIC8qIHNp
bXBsZS1pbWFnZS1vdmVybGF5Lmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8sCisJCQkJRjQ2MEY2
NjkyNjEyNjMzNzAwNjRGMkI2IC8qIHNpbXBsZS1yZXNwb25zaXZlLXBhZ2UuaHRtbCBpbiBDb3B5
IFJlc291cmNlcyAqLywKIAkJCQlCQ0FBNDg1NjE0QTA0NDRDMDA4OEZBQzQgLyogc2ltcGxlLXRh
bGwuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLywKIAkJCQlCQzkwOTc4NDEyNTU3MUNGMDAwODM3
NTYgLyogc2ltcGxlLmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8sCiAJCQkJNTFFNUM3MDIxOTE5
QzNCMjAwRDhCM0UxIC8qIHNpbXBsZTIuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLywKQEAgLTI5
ODksNiArMjk5MywxMCBAQAogCQlGNDVFMTU3MjIxMTJDRTI5MDAzMDdFODIgLyogS2V5Ym9hcmRJ
bnB1dFRlc3RzSU9TLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gS2V5Ym9hcmRJbnB1dFRlc3Rz
SU9TLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlGNDVFMTU3NDIxMTJDRTYyMDAz
MDdFODIgLyogVGVzdElucHV0RGVsZWdhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVGVzdElucHV0RGVs
ZWdhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRjQ1RTE1NzUyMTEyQ0U2MjAw
MzA3RTgyIC8qIFRlc3RJbnB1dERlbGVnYXRlLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gVGVz
dElucHV0RGVsZWdhdGUubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY0NjBGNjU2
MjYxMTE2RUEwMDY0RjJCNiAvKiBJbmplY3RlZEJ1bmRsZUhpdFRlc3QubW0gKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpj
cHA7IHBhdGggPSBJbmplY3RlZEJ1bmRsZUhpdFRlc3QubW07IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUY0NjBGNjU5MjYxMTE3RTcwMDY0RjJCNiAvKiBJbmplY3RlZEJ1bmRsZUhpdFRl
c3RQbHVnSW4ubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBJbmplY3RlZEJ1bmRsZUhpdFRlc3RQ
bHVnSW4ubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY0NjBGNjVBMjYxMTE4M0Yw
MDY0RjJCNiAvKiBJbmplY3RlZEJ1bmRsZUhpdFRlc3RQcm90b2NvbC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBJbmplY3RlZEJ1bmRsZUhpdFRlc3RQcm90b2NvbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlGNDYwRjY2ODI2MTI2MkM3MDA2NEYyQjYgLyogc2ltcGxlLXJlc3BvbnNpdmUtcGFn
ZS5odG1sICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dC5odG1sOyBwYXRoID0gInNpbXBsZS1yZXNwb25zaXZlLXBh
Z2UuaHRtbCI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUY0NjEyOEI0MjExQzg2MUEw
MEQ5RkFEQiAvKiBEcmFnQW5kRHJvcFNpbXVsYXRvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IG5hbWUgPSBEcmFnQW5kRHJvcFNpbXVsYXRvci5oOyBwYXRoID0gY29jb2EvRHJhZ0FuZERy
b3BTaW11bGF0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRjQ2MTI4QjYyMTFD
OEVENTAwRDlGQURCIC8qIERyYWdBbmREcm9wU2ltdWxhdG9yTWFjLm1tICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3Bw
OyBwYXRoID0gRHJhZ0FuZERyb3BTaW11bGF0b3JNYWMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUY0NjEyOEM5MjExRDQ3NTEwMEQ5RkFEQiAvKiBUZXN0RHJhZ2dpbmdJbmZvLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFRlc3REcmFnZ2luZ0luZm8uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKQEAgLTMyNTIsNiArMzI2MCw3IEBACiAJCQkJMUM4MTgwMjYyNUZCMDlFMjAwNjA4QjNF
IC8qIEZvbnRSZWdpc3RyeVNhbmRib3hDaGVjay5tbSAqLywKIAkJCQlFMzk0QUU2RTIzRjIzMDNF
MDA1QjQ5MzYgLyogR3JhbnRBY2Nlc3NUb01vYmlsZUFzc2V0cy5tbSAqLywKIAkJCQlFMzRBNkQx
ODI0MTJERTM5MDAxMkFCNkUgLyogR3JhbnRBY2Nlc3NUb1ByZWZlcmVuY2VzU2VydmljZS5tbSAq
LywKKwkJCQlGNDYwRjY1NjI2MTExNkVBMDA2NEYyQjYgLyogSW5qZWN0ZWRCdW5kbGVIaXRUZXN0
Lm1tICovLAogCQkJCUUzNUI5MDgxMjNGNjBERDAwMDAwMTFGRiAvKiBMb2NhbGl6ZWREZXZpY2VN
b2RlbC5tbSAqLywKIAkJCQkxQ0YwODdENzI1RUQ3RjczMDA0MTQ4Q0IgLyogTW9iaWxlQXNzZXRT
YW5kYm94Q2hlY2subW0gKi8sCiAJCQkJQzEwNEJDMUUyNTQ3MjM3MTAwQzA3OEM5IC8qIE92ZXJy
aWRlQXBwbGVMYW5ndWFnZXNQcmVmZXJlbmNlLm1tICovLApAQCAtMzQwMyw2ICszNDEyLDggQEAK
IAkJCQlDQTI4NzlEQTIyNkU2OTg2MDAxMDI2RjUgLyogSW5kZXhlZERCU3VzcGVuZEltbWluZW50
bHkubW0gKi8sCiAJCQkJQ0E1Qjk0RDYyMTkxMDA1QjAwNTlGRTM4IC8qIEluZGV4ZWREQlRlbXBG
aWxlU2l6ZS5tbSAqLywKIAkJCQlDQTk3QjM5MjIxOTM2NjNCMDA0NURGNkYgLyogSW5kZXhlZERC
VXNlckRlbGV0ZS5tbSAqLywKKwkJCQlGNDYwRjY1OTI2MTExN0U3MDA2NEYyQjYgLyogSW5qZWN0
ZWRCdW5kbGVIaXRUZXN0UGx1Z0luLm1tICovLAorCQkJCUY0NjBGNjVBMjYxMTE4M0YwMDY0RjJC
NiAvKiBJbmplY3RlZEJ1bmRsZUhpdFRlc3RQcm90b2NvbC5oICovLAogCQkJCTBFNDA0QThBMjE2
NkRERjgwMDgyNzFCQSAvKiBJbmplY3RlZEJ1bmRsZU5vZGVIYW5kbGVJc1NlbGVjdEVsZW1lbnQu
bW0gKi8sCiAJCQkJNzlDNUQ0MzAyMDlENzY4MzAwRjFFN0NBIC8qIEluamVjdGVkQnVuZGxlTm9k
ZUhhbmRsZUlzVGV4dEZpZWxkLm1tICovLAogCQkJCUNFRDczRDM1MjQ2RjIwNEMwMERBRTMyNyAv
KiBJbnNlcnRUZXh0QWx0ZXJuYXRpdmVzLm1tICovLApAQCAtNDUxOCw2ICs0NTI5LDcgQEAKIAkJ
CQlDMEFEQkU4NDEyRkNBNkI2MDBEMkMxMjkgLyogc2ltcGxlLWZvcm0uaHRtbCAqLywKIAkJCQkz
M0RDODkwRTE0MTk1MzkzMDA3NDdFRjcgLyogc2ltcGxlLWlmcmFtZS5odG1sICovLAogCQkJCUY0
RUM4MDkzMjYwRDJFNjIwMDEwMzExRCAvKiBzaW1wbGUtaW1hZ2Utb3ZlcmxheS5odG1sICovLAor
CQkJCUY0NjBGNjY4MjYxMjYyQzcwMDY0RjJCNiAvKiBzaW1wbGUtcmVzcG9uc2l2ZS1wYWdlLmh0
bWwgKi8sCiAJCQkJQkNBQTQ4NTUxNEEwMjE2NDAwODhGQUM0IC8qIHNpbXBsZS10YWxsLmh0bWwg
Ki8sCiAJCQkJQkM5MDk3NzgxMjU1NzFBQjAwMDgzNzU2IC8qIHNpbXBsZS5odG1sICovLAogCQkJ
CTUxRTc4MDM2MTkxOUFGRjgwMDE4MjlBMiAvKiBzaW1wbGUyLmh0bWwgKi8sCkBAIC01NDIwLDYg
KzU0MzIsNyBAQAogCQkJCTdDQ0U3RUZCMUE0MTFBRTYwMDQ0N0M0QyAvKiBJbmplY3RlZEJ1bmRs
ZUJhc2ljLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTgzMTQ4QjA2MjAyQUM2QTQwMEJBREU5OSAv
KiBJbmplY3RlZEJ1bmRsZURpc2FibGVPdmVycmlkZUJ1aWx0aW5zQmVoYXZpb3IuY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJN0NDRTdFRkMxQTQxMUFFNjAwNDQ3QzRDIC8qIEluamVjdGVkQnVuZGxl
RnJhbWVIaXRUZXN0LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUY0NjBGNjU3MjYxMTE2RUEwMDY0
RjJCNiAvKiBJbmplY3RlZEJ1bmRsZUhpdFRlc3QubW0gaW4gU291cmNlcyAqLywKIAkJCQk3Q0NF
N0VGRDFBNDExQUU2MDA0NDdDNEMgLyogSW5qZWN0ZWRCdW5kbGVJbml0aWFsaXphdGlvblVzZXJE
YXRhQ2FsbGJhY2tXaW5zLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTdDODNFMEI4MUQwQTY0QkQw
MEZFQkNGMyAvKiBJbmplY3RlZEJ1bmRsZU1ha2VBbGxTaGFkb3dSb290c09wZW4uY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJQ0VENzNEMzcyNDZGMjlGQTAwREFFMzI3IC8qIEluc2VydFRleHRBbHRl
cm5hdGl2ZXMubW0gaW4gU291cmNlcyAqLywKQEAgLTU4MzUsNiArNTg0OCw3IEBACiAJCQkJRjRC
MDE2ODQyNUFFMDhGODAwRTQ0NUM0IC8qIERpc2FibGVTcGVsbGNoZWNrUGx1Z0luLm1tIGluIFNv
dXJjZXMgKi8sCiAJCQkJNTE4RUU1MTkyMEE3OENFNTAwRTAyNEYzIC8qIERvdWJsZURlZmVyc0xv
YWRpbmdQbHVnaW4ubW0gaW4gU291cmNlcyAqLywKIAkJCQk1Q0I1QjNDMjFGRkM1NUNGMDBDMjdC
QjAgLyogRnJhbWVIYW5kbGVTZXJpYWxpemF0aW9uLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJRjQ2
MEY2NUIyNjExMTk1ODAwNjRGMkI2IC8qIEluamVjdGVkQnVuZGxlSGl0VGVzdFBsdWdJbi5tbSBp
biBTb3VyY2VzICovLAogCQkJCTBFNDA0QThDMjE2NkRFMEEwMDgyNzFCQSAvKiBJbmplY3RlZEJ1
bmRsZU5vZGVIYW5kbGVJc1NlbGVjdEVsZW1lbnQubW0gaW4gU291cmNlcyAqLywKIAkJCQk3OUM1
RDQzMTIwOUQ3NjgzMDBGMUU3Q0EgLyogSW5qZWN0ZWRCdW5kbGVOb2RlSGFuZGxlSXNUZXh0Rmll
bGQubW0gaW4gU291cmNlcyAqLywKIAkJCQkyRDNDQTNBODIyMURGNEI0MDA4OEU4MDMgLyogUGFn
ZU92ZXJsYXlQbHVnaW4ubW0gaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RX
ZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0luamVjdGVkQnVuZGxlSGl0VGVzdC5tbSBiL1Rvb2xzL1Rl
c3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0L0luamVjdGVkQnVuZGxlSGl0VGVzdC5tbQpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi42Y2JmYzg1N2ZjZWY0MzQ1ZjJlNWU3ZDg3NDZmMjU1Y2RhMmE1ZjE4Ci0tLSAvZGV2L251
bGwKKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQvSW5qZWN0ZWRCdW5kbGVI
aXRUZXN0Lm1tCkBAIC0wLDAgKzEsOTQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElT
JycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JT
CisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisg
KiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAq
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW1wb3J0ICJjb25maWcu
aCIKKworI2ltcG9ydCAiSW5qZWN0ZWRCdW5kbGVIaXRUZXN0UHJvdG9jb2wuaCIKKyNpbXBvcnQg
IlBsYXRmb3JtVXRpbGl0aWVzLmgiCisjaW1wb3J0ICJUZXN0V0tXZWJWaWV3LmgiCisjaW1wb3J0
ICJVdGlsaXRpZXMuaCIKKyNpbXBvcnQgIldLV2ViVmlld0NvbmZpZ3VyYXRpb25FeHRyYXMuaCIK
KyNpbXBvcnQgPFdlYktpdC9XS1dlYlZpZXdQcml2YXRlLmg+CisjaW1wb3J0IDxXZWJLaXQvX1dL
UmVtb3RlT2JqZWN0SW50ZXJmYWNlLmg+CisjaW1wb3J0IDxXZWJLaXQvX1dLUmVtb3RlT2JqZWN0
UmVnaXN0cnkuaD4KKyNpbXBvcnQgPHd0Zi9SZXRhaW5QdHIuaD4KKworQGludGVyZmFjZSBXS1dl
YlZpZXdXaXRoSGl0VGVzdGVyIDogVGVzdFdLV2ViVmlldworQHByb3BlcnR5IChub25hdG9taWMs
IHdlYWspIGlkIDxJbmplY3RlZEJ1bmRsZUhpdFRlc3RQcm90b2NvbD4gaGl0VGVzdGVyOworQGVu
ZAorCitAaW1wbGVtZW50YXRpb24gV0tXZWJWaWV3V2l0aEhpdFRlc3RlcgorCistIChCT09MKWhh
c1NlbGVjdGFibGVUZXh0QXQ6KENHUG9pbnQpcG9pbnQKK3sKKyAgICBfX2Jsb2NrIGJvb2wgZG9u
ZSA9IGZhbHNlOworICAgIF9fYmxvY2sgQk9PTCBoYXNTZWxlY3RhYmxlVGV4dCA9IE5POworICAg
IFtfaGl0VGVzdGVyIGhhc1NlbGVjdGFibGVUZXh0QXQ6W05TVmFsdWUgdmFsdWVXaXRoUG9pbnQ6
cG9pbnRdIGNvbXBsZXRpb25IYW5kbGVyOl4oQk9PTCByZXN1bHQpIHsKKyAgICAgICAgaGFzU2Vs
ZWN0YWJsZVRleHQgPSByZXN1bHQ7CisgICAgICAgIGRvbmUgPSB0cnVlOworICAgIH1dOworCisg
ICAgVGVzdFdlYktpdEFQSTo6VXRpbDo6cnVuKCZkb25lKTsKKyAgICByZXR1cm4gaGFzU2VsZWN0
YWJsZVRleHQ7Cit9CisKK0BlbmQKKworbmFtZXNwYWNlIFRlc3RXZWJLaXRBUEkgeworCitzdGF0
aWMgUmV0YWluUHRyPFdLV2ViVmlld1dpdGhIaXRUZXN0ZXI+IGNyZWF0ZVdlYlZpZXdXaXRoSGl0
VGVzdGVyKCkKK3sKKyAgICBhdXRvIGNvbmZpZ3VyYXRpb24gPSBbV0tXZWJWaWV3Q29uZmlndXJh
dGlvbiBfdGVzdF9jb25maWd1cmF0aW9uV2l0aFRlc3RQbHVnSW5DbGFzc05hbWU6QCJJbmplY3Rl
ZEJ1bmRsZUhpdFRlc3RQbHVnSW4iIGNvbmZpZ3VyZUpTQ0ZvclRlc3Rpbmc6WUVTXTsKKyAgICBh
dXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbV0tXZWJWaWV3V2l0aEhpdFRlc3RlciBhbGxvY10gaW5p
dFdpdGhGcmFtZTpDR1JlY3RNYWtlKDAsIDAsIDUwMCwgNTAwKSBjb25maWd1cmF0aW9uOmNvbmZp
Z3VyYXRpb25dKTsKKworICAgIGF1dG8gaW50ZXJmYWNlID0gW19XS1JlbW90ZU9iamVjdEludGVy
ZmFjZSByZW1vdGVPYmplY3RJbnRlcmZhY2VXaXRoUHJvdG9jb2w6QHByb3RvY29sKEluamVjdGVk
QnVuZGxlSGl0VGVzdFByb3RvY29sKV07CisgICAgW3dlYlZpZXcgc2V0SGl0VGVzdGVyOltbd2Vi
VmlldyBfcmVtb3RlT2JqZWN0UmVnaXN0cnldIHJlbW90ZU9iamVjdFByb3h5V2l0aEludGVyZmFj
ZTppbnRlcmZhY2VdXTsKKyAgICByZXR1cm4gd2ViVmlldzsKK30KKworVEVTVChJbmplY3RlZEJ1
bmRsZUhpdFRlc3QsIFRleHRQYXJhZ3JhcGgpCit7CisgICAgYXV0byB3ZWJWaWV3ID0gY3JlYXRl
V2ViVmlld1dpdGhIaXRUZXN0ZXIoKTsKKyAgICBbd2ViVmlldyBzeW5jaHJvbm91c2x5TG9hZFRl
c3RQYWdlTmFtZWQ6QCJzaW1wbGUtcmVzcG9uc2l2ZS1wYWdlIl07CisKKyAgICBFWFBFQ1RfVFJV
RShbd2ViVmlldyBoYXNTZWxlY3RhYmxlVGV4dEF0OkNHUG9pbnRNYWtlKDQwLCA0MCldKTsKKyAg
ICBFWFBFQ1RfRkFMU0UoW3dlYlZpZXcgaGFzU2VsZWN0YWJsZVRleHRBdDpDR1BvaW50TWFrZSgz
MDAsIDMwMCldKTsKK30KKworI2lmIEVOQUJMRShJTUFHRV9FWFRSQUNUSU9OKQorCitURVNUKElu
amVjdGVkQnVuZGxlSGl0VGVzdCwgSW1hZ2VPdmVybGF5KQoreworICAgIGF1dG8gd2ViVmlldyA9
IGNyZWF0ZVdlYlZpZXdXaXRoSGl0VGVzdGVyKCk7CisgICAgW3dlYlZpZXcgc3luY2hyb25vdXNs
eUxvYWRUZXN0UGFnZU5hbWVkOkAic2ltcGxlLWltYWdlLW92ZXJsYXkiXTsKKworICAgIEVYUEVD
VF9UUlVFKFt3ZWJWaWV3IGhhc1NlbGVjdGFibGVUZXh0QXQ6Q0dQb2ludE1ha2UoMTUwLCA0MCld
KTsKKyAgICBFWFBFQ1RfRkFMU0UoW3dlYlZpZXcgaGFzU2VsZWN0YWJsZVRleHRBdDpDR1BvaW50
TWFrZSgxNTAsIDIwMCldKTsKKyAgICBFWFBFQ1RfRkFMU0UoW3dlYlZpZXcgaGFzU2VsZWN0YWJs
ZVRleHRBdDpDR1BvaW50TWFrZSg0MDAsIDMwMCldKTsKK30KKworI2VuZGlmIC8vIEVOQUJMRShJ
TUFHRV9FWFRSQUNUSU9OKQorCit9IC8vIG5hbWVzcGFjZSBUZXN0V2ViS2l0QVBJCmRpZmYgLS1n
aXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9zaW1wbGUtcmVzcG9uc2l2ZS1w
YWdlLmh0bWwgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdC9zaW1wbGUtcmVzcG9u
c2l2ZS1wYWdlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzkxODhmYWRkNmYyZGMxYjcyZDE1NmZiZjI1NDJm
ZTkzMWQ1YzY0NAotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMv
V2ViS2l0L3NpbXBsZS1yZXNwb25zaXZlLXBhZ2UuaHRtbApAQCAtMCwwICsxLDkgQEAKKzwhRE9D
VFlQRSBodG1sPgorPGh0bWw+Cis8bWV0YSBuYW1lPSd2aWV3cG9ydCcgY29udGVudD0nd2lkdGg9
ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEnPgorPGJvZHk+Cis8cCBzdHlsZT0nZm9udC1z
aXplOiAzMnB4Oyc+CisgICAgTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVy
IGFkaXBpc2ljaW5nIGVsaXQsIHNlZCBkbyBlaXVzbW9kIHRlbXBvciBpbmNpZGlkdW50IHV0IGxh
Ym9yZSBldCBkb2xvcmUgbWFnbmEgYWxpcXVhLgorPC9wPgorPC9ib2R5PgorPC9odG1sPgpkaWZm
IC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9JbmplY3RlZEJ1
bmRsZUhpdFRlc3RQbHVnSW4ubW0gYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENv
Y29hL0luamVjdGVkQnVuZGxlSGl0VGVzdFBsdWdJbi5tbQpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wNTZmZmE1YmY5
ZmNjMzYyZTc3OGI4MmY5MDgwZDQwMWNiYzZmOTIzCi0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMv
VGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9JbmplY3RlZEJ1bmRsZUhpdFRlc3RQbHVn
SW4ubW0KQEAgLTAsMCArMSw4MiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwor
ICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAq
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbXBvcnQgImNvbmZpZy5oIgor
I2ltcG9ydCAiSW5qZWN0ZWRCdW5kbGVIaXRUZXN0UHJvdG9jb2wuaCIKKyNpbXBvcnQgIldlYkNv
cmVUZXN0U3VwcG9ydC5oIgorI2ltcG9ydCA8V2ViS2l0L1dLQnVuZGxlUGFnZS5oPgorI2ltcG9y
dCA8V2ViS2l0L1dLQnVuZGxlUGFnZVJlc291cmNlTG9hZENsaWVudC5oPgorI2ltcG9ydCA8V2Vi
S2l0L1dLV2ViUHJvY2Vzc1BsdWdJbi5oPgorI2ltcG9ydCA8V2ViS2l0L1dLV2ViUHJvY2Vzc1Bs
dWdJbkJyb3dzZXJDb250ZXh0Q29udHJvbGxlclByaXZhdGUuaD4KKyNpbXBvcnQgPFdlYktpdC9X
S1dlYlByb2Nlc3NQbHVnSW5GcmFtZS5oPgorI2ltcG9ydCA8V2ViS2l0L1dLV2ViUHJvY2Vzc1Bs
dWdJbkhpdFRlc3RSZXN1bHQuaD4KKyNpbXBvcnQgPFdlYktpdC9XS1dlYlByb2Nlc3NQbHVnSW5M
b2FkRGVsZWdhdGUuaD4KKyNpbXBvcnQgPFdlYktpdC9XS1dlYlByb2Nlc3NQbHVnSW5Ob2RlSGFu
ZGxlLmg+CisjaW1wb3J0IDxXZWJLaXQvX1dLUmVtb3RlT2JqZWN0SW50ZXJmYWNlLmg+CisjaW1w
b3J0IDxXZWJLaXQvX1dLUmVtb3RlT2JqZWN0UmVnaXN0cnkuaD4KKyNpbXBvcnQgPHd0Zi9SZXRh
aW5QdHIuaD4KKworQGludGVyZmFjZSBJbmplY3RlZEJ1bmRsZUhpdFRlc3RQbHVnSW4gOiBOU09i
amVjdDxXS1dlYlByb2Nlc3NQbHVnSW4sIFdLV2ViUHJvY2Vzc1BsdWdJbkxvYWREZWxlZ2F0ZSwg
SW5qZWN0ZWRCdW5kbGVIaXRUZXN0UHJvdG9jb2w+CitAZW5kCisKK0BpbXBsZW1lbnRhdGlvbiBJ
bmplY3RlZEJ1bmRsZUhpdFRlc3RQbHVnSW4geworICAgIFJldGFpblB0cjxXS1dlYlByb2Nlc3NQ
bHVnSW5Ccm93c2VyQ29udGV4dENvbnRyb2xsZXI+IF9icm93c2VyQ29udGV4dENvbnRyb2xsZXI7
CisgICAgUmV0YWluUHRyPF9XS1JlbW90ZU9iamVjdEludGVyZmFjZT4gX2ludGVyZmFjZTsKKyAg
ICBSZXRhaW5QdHI8V0tXZWJQcm9jZXNzUGx1Z0luRnJhbWU+IF9tYWluRnJhbWU7Cit9CisKKy0g
KHZvaWQpd2ViUHJvY2Vzc1BsdWdJbjooV0tXZWJQcm9jZXNzUGx1Z0luQ29udHJvbGxlciAqKXBs
dWdJbkNvbnRyb2xsZXIgZGlkQ3JlYXRlQnJvd3NlckNvbnRleHRDb250cm9sbGVyOihXS1dlYlBy
b2Nlc3NQbHVnSW5Ccm93c2VyQ29udGV4dENvbnRyb2xsZXIgKilicm93c2VyQ29udGV4dENvbnRy
b2xsZXIKK3sKKyAgICBfYnJvd3NlckNvbnRleHRDb250cm9sbGVyID0gYnJvd3NlckNvbnRleHRD
b250cm9sbGVyOworICAgIF9pbnRlcmZhY2UgPSBbX1dLUmVtb3RlT2JqZWN0SW50ZXJmYWNlIHJl
bW90ZU9iamVjdEludGVyZmFjZVdpdGhQcm90b2NvbDpAcHJvdG9jb2woSW5qZWN0ZWRCdW5kbGVI
aXRUZXN0UHJvdG9jb2wpXTsKKyAgICBbYnJvd3NlckNvbnRleHRDb250cm9sbGVyLl9yZW1vdGVP
YmplY3RSZWdpc3RyeSByZWdpc3RlckV4cG9ydGVkT2JqZWN0OnNlbGYgaW50ZXJmYWNlOl9pbnRl
cmZhY2UuZ2V0KCldOworICAgIGJyb3dzZXJDb250ZXh0Q29udHJvbGxlci5sb2FkRGVsZWdhdGUg
PSBzZWxmOworfQorCistICh2b2lkKXdlYlByb2Nlc3NQbHVnSW5Ccm93c2VyQ29udGV4dENvbnRy
b2xsZXI6KFdLV2ViUHJvY2Vzc1BsdWdJbkJyb3dzZXJDb250ZXh0Q29udHJvbGxlciAqKWNvbnRy
b2xsZXIgZGlkQ2xlYXJXaW5kb3dPYmplY3RGb3JGcmFtZTooV0tXZWJQcm9jZXNzUGx1Z0luRnJh
bWUgKilmcmFtZSBpblNjcmlwdFdvcmxkOihXS1dlYlByb2Nlc3NQbHVnSW5TY3JpcHRXb3JsZCAq
KXNjcmlwdFdvcmxkCit7CisgICAgV2ViQ29yZVRlc3RTdXBwb3J0OjppbmplY3RJbnRlcm5hbHNP
YmplY3QoW2ZyYW1lIGpzQ29udGV4dEZvcldvcmxkOnNjcmlwdFdvcmxkXS5KU0dsb2JhbENvbnRl
eHRSZWYpOworfQorCistICh2b2lkKXdlYlByb2Nlc3NQbHVnSW5Ccm93c2VyQ29udGV4dENvbnRy
b2xsZXI6KFdLV2ViUHJvY2Vzc1BsdWdJbkJyb3dzZXJDb250ZXh0Q29udHJvbGxlciopY29udHJv
bGxlciBkaWRGaW5pc2hMb2FkRm9yRnJhbWU6KFdLV2ViUHJvY2Vzc1BsdWdJbkZyYW1lICopZnJh
bWUKK3sKKyAgICBpZiAoZnJhbWUuaXNNYWluRnJhbWUpCisgICAgICAgIF9tYWluRnJhbWUgPSBm
cmFtZTsKK30KKworLSAodm9pZCloYXNTZWxlY3RhYmxlVGV4dEF0OihOU1ZhbHVlICopbG9jYXRp
b25WYWx1ZSBjb21wbGV0aW9uSGFuZGxlcjoodm9pZCheKShCT09MKSljb21wbGV0aW9uSGFuZGxl
cgoreworICAgIGF1dG8gcmVzdWx0ID0gW19tYWluRnJhbWUgaGl0VGVzdDpsb2NhdGlvblZhbHVl
LnBvaW50VmFsdWUgb3B0aW9uczpXS0hpdFRlc3RPcHRpb25BbGxvd1VzZXJBZ2VudFNoYWRvd1Jv
b3RDb250ZW50XTsKKyAgICBjb21wbGV0aW9uSGFuZGxlcihyZXN1bHQubm9kZUhhbmRsZS5pc1Nl
bGVjdGFibGVUZXh0Tm9kZSk7Cit9CisKKy0gKHZvaWQpZGVhbGxvYworeworICAgIFtbX2Jyb3dz
ZXJDb250ZXh0Q29udHJvbGxlciBfcmVtb3RlT2JqZWN0UmVnaXN0cnldIHVucmVnaXN0ZXJFeHBv
cnRlZE9iamVjdDpzZWxmIGludGVyZmFjZTpfaW50ZXJmYWNlLmdldCgpXTsKKyAgICBbc3VwZXIg
ZGVhbGxvY107Cit9CisKK0BlbmQKKwpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9U
ZXN0cy9XZWJLaXRDb2NvYS9JbmplY3RlZEJ1bmRsZUhpdFRlc3RQcm90b2NvbC5oIGIvVG9vbHMv
VGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9JbmplY3RlZEJ1bmRsZUhpdFRlc3RQcm90
b2NvbC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjI5ZmZlMTI0M2JkZTgzYmM0MjgzNjY3OTAyODZhMWMwOTBkMDcy
Y2IKLS0tIC9kZXYvbnVsbAorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENv
Y29hL0luamVjdGVkQnVuZGxlSGl0VGVzdFByb3RvY29sLmgKQEAgLTAsMCArMSwzMCBAQAorLyoK
KyAqIENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFO
RCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorICovCisKKyNpbXBvcnQgPFdlYktpdC9XS0ZvdW5kYXRpb24uaD4KKworQHByb3RvY29sIElu
amVjdGVkQnVuZGxlSGl0VGVzdFByb3RvY29sIDxOU09iamVjdD4KKy0gKHZvaWQpaGFzU2VsZWN0
YWJsZVRleHRBdDooTlNWYWx1ZSAqKWxvY2F0aW9uVmFsdWUgY29tcGxldGlvbkhhbmRsZXI6KHZv
aWQoXikoQk9PTCkpY29tcGxldGlvbkhhbmRsZXI7CitAZW5kCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>