<?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>213909</bug_id>
          
          <creation_ts>2020-07-02 17:19:06 -0700</creation_ts>
          <short_desc>GameController.framework soft linking refactoring</short_desc>
          <delta_ts>2020-07-02 18:06:20 -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>WebCore Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Brady Eidson">beidson</reporter>
          <assigned_to name="Brady Eidson">beidson</assigned_to>
          <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1668423</commentid>
    <comment_count>0</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2020-07-02 17:19:06 -0700</bug_when>
    <thetext>GameController.framework soft linking refactoring

We&apos;ll soon need to use GC.framework in multiple places, so it&apos;s time to refactor it out into its own files.

(Also add a soon-to-be-needed SPI header while I&apos;m at it)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1668424</commentid>
    <comment_count>1</comment_count>
      <attachid>403420</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2020-07-02 17:20:55 -0700</bug_when>
    <thetext>Created attachment 403420
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1668425</commentid>
    <comment_count>2</comment_count>
      <attachid>403420</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2020-07-02 17:23:46 -0700</bug_when>
    <thetext>Comment on attachment 403420
Patch

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

&gt; Source/WebCore/platform/gamepad/cocoa/GameControllerSPI.h:33
&gt; +WTF_EXTERN_C_BEGIN

This should include a fixme with a radar where you ask for the headers to be fixed.

&gt; Source/WebCore/platform/gamepad/cocoa/GameControllerSoftLink.mm:33
&gt; +SOFT_LINK_FRAMEWORK_FOR_SOURCE(WebCore, GameController)

I think you lost the optionality here?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1668426</commentid>
    <comment_count>3</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2020-07-02 17:25:36 -0700</bug_when>
    <thetext>(In reply to Tim Horton from comment #2)
&gt; Comment on attachment 403420 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=403420&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/platform/gamepad/cocoa/GameControllerSPI.h:33
&gt; &gt; +WTF_EXTERN_C_BEGIN
&gt; 
&gt; This should include a fixme with a radar where you ask for the headers to be
&gt; fixed.

Sure.

&gt; 
&gt; &gt; Source/WebCore/platform/gamepad/cocoa/GameControllerSoftLink.mm:33
&gt; &gt; +SOFT_LINK_FRAMEWORK_FOR_SOURCE(WebCore, GameController)
&gt; 
&gt; I think you lost the optionality here?

Actually not - Using the Header/Source softlink for a Framework always has optionality.

(You&apos;ll see that used in the next patch!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1668428</commentid>
    <comment_count>4</comment_count>
      <attachid>403422</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2020-07-02 17:28:02 -0700</bug_when>
    <thetext>Created attachment 403422
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1668443</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-07-02 18:05:40 -0700</bug_when>
    <thetext>Committed r263878: &lt;https://trac.webkit.org/changeset/263878&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 403422.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1668444</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-07-02 18:06:20 -0700</bug_when>
    <thetext>&lt;rdar://problem/65058543&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>403420</attachid>
            <date>2020-07-02 17:20:55 -0700</date>
            <delta_ts>2020-07-02 17:28:12 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>14006</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBhNjE2ZTY1NGQ2ZC4uODkyZjhjZTVlMzggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxOSBAQAorMjAyMC0wNy0wMiAgQnJhZHkgRWlkc29uICA8YmVpZHNvbkBhcHBsZS5jb20+
CisKKyAgICAgICAgR2FtZUNvbnRyb2xsZXIuZnJhbWV3b3JrIHNvZnQgbGlua2luZyByZWZhY3Rv
cmluZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEz
OTA5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTm8g
bmV3IHRlc3RzIChObyBiZWhhdmlvciBjaGFuZ2VzKQorCisgICAgICAgICogV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIHBsYXRmb3JtL2dhbWVwYWQvY29jb2Ev
R2FtZUNvbnRyb2xsZXJHYW1lcGFkUHJvdmlkZXIubW06CisgICAgICAgIChXZWJDb3JlOjpHYW1l
Q29udHJvbGxlckdhbWVwYWRQcm92aWRlcjo6c3RhcnRNb25pdG9yaW5nR2FtZXBhZHMpOgorICAg
ICAgICAqIHBsYXRmb3JtL2dhbWVwYWQvY29jb2EvR2FtZUNvbnRyb2xsZXJTUEkuaDogQWRkZWQu
CisgICAgICAgICogcGxhdGZvcm0vZ2FtZXBhZC9jb2NvYS9HYW1lQ29udHJvbGxlclNvZnRMaW5r
Lmg6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL2dhbWVwYWQvY29jb2EvR2FtZUNvbnRyb2xs
ZXJTb2Z0TGluay5tbTogQWRkZWQuCisKIDIwMjAtMDYtMzAgIEZ1amlpIEhpcm9ub3JpICA8SGly
b25vcmkuRnVqaWlAc29ueS5jb20+CiAKICAgICAgICAgW1dpbkNhaXJvXSBVbnJldmlld2VkIGJ1
aWxkIGZpeCBhZnRlciByMjYzNzc2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggNzVhNTEyMGE4MzQuLmI2MTQwMzU0OGMyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oK
KysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBA
IC0xNDA4LDYgKzE0MDgsNyBAQAogCQk1MTJERDhGODBEOTFFNkFGMDAwRjg5RUUgLyogQXJjaGl2
ZVJlc291cmNlQ29sbGVjdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNTEyREQ4RUUwRDkxRTZBRjAwMEY4OUVFIC8qIEFyY2hpdmVSZXNvdXJjZUNv
bGxlY3Rpb24uaCAqLzsgfTsKIAkJNTEyREQ4RkMwRDkxRTZBRjAwMEY4OUVFIC8qIEFyY2hpdmVS
ZXNvdXJjZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NTEyREQ4RjIwRDkxRTZBRjAwMEY4OUVFIC8qIEFyY2hpdmVSZXNvdXJjZS5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTUxMkREOEZEMEQ5MUU2QUYw
MDBGODlFRSAvKiBBcmNoaXZlRmFjdG9yeS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gNTEyREQ4RjMwRDkxRTZBRjAwMEY4OUVFIC8qIEFyY2hpdmVGYWN0
b3J5LmggKi87IH07CisJCTUxMzBGMkY2MjRBRUE2MEEwMEUxRDBBMCAvKiBHYW1lQ29udHJvbGxl
clNvZnRMaW5rLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNTEzMEYyRjQyNEFFQTYwMzAwRTFEMEEwIC8qIEdhbWVDb250cm9sbGVyU29mdExpbmsubW0g
Ki87IH07CiAJCTUxMzI3RDYwMTFBMzNBMkIwMDRGOUQ2NSAvKiBTaW5rRG9jdW1lbnQuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxMzI3RDVFMTFBMzNB
MkIwMDRGOUQ2NSAvKiBTaW5rRG9jdW1lbnQuaCAqLzsgfTsKIAkJNTEzRjE0NTQwQUI2MzRDNDAw
MDk0RERGIC8qIEljb25Mb2FkZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUxM0YxNDUyMEFCNjM0QzQwMDA5NERERiAvKiBJY29uTG9hZGVyLmggKi87
IH07CiAJCTUxNDA1Qzg5MTkwQjAxNDQwMDc1NEY5NCAvKiBTZWxlY3Rpb25SZWN0R2F0aGVyZXIu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxNDA1Qzg3
MTkwQjAxNDQwMDc1NEY5NCAvKiBTZWxlY3Rpb25SZWN0R2F0aGVyZXIuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpAQCAtODIyMiw2ICs4MjIzLDkgQEAK
IAkJNTEyREQ4RjIwRDkxRTZBRjAwMEY4OUVFIC8qIEFyY2hpdmVSZXNvdXJjZS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBcmNoaXZlUmVzb3VyY2UuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJNTEyREQ4RjMwRDkxRTZBRjAwMEY4OUVFIC8qIEFyY2hpdmVGYWN0
b3J5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFyY2hpdmVGYWN0b3J5Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUxMkYxQTc3MUMwN0VBMEQwMDkwODIzOSAv
KiBJREJHZXRSZXN1bHQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
SURCR2V0UmVzdWx0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTEzMEYyRjIy
NEFFQTYwMjAwRTFEMEEwIC8qIEdhbWVDb250cm9sbGVyU29mdExpbmsuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gR2FtZUNvbnRyb2xsZXJTb2Z0TGluay5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk1MTMwRjJGNDI0QUVBNjAzMDBFMUQwQTAgLyogR2FtZUNvbnRy
b2xsZXJTb2Z0TGluay5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9
IEdhbWVDb250cm9sbGVyU29mdExpbmsubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTUxMzBGMkY1MjRBRUE2MDMwMEUxRDBBMCAvKiBHYW1lQ29udHJvbGxlclNQSS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBHYW1lQ29udHJvbGxlclNQSS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk1MTMyN0Q1RTExQTMzQTJCMDA0RjlENjUgLyogU2lua0RvY3Vt
ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNpbmtEb2N1bWVudC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1MTMyN0Q1RjExQTMzQTJCMDA0RjlENjUgLyog
U2lua0RvY3VtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNp
bmtEb2N1bWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUxM0YxNDUxMEFC
NjM0QzQwMDA5NERERiAvKiBJY29uTG9hZGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBJY29uTG9hZGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
QEAgLTE5NzA4LDYgKzE5NzEyLDkgQEAKIAkJCQk1MUUzOThGRDFENkU0NzRCMDA5Qzg4MzEgLyog
R2FtZUNvbnRyb2xsZXJHYW1lcGFkLm1tICovLAogCQkJCTUxRTM5OEZFMUQ2RTQ3NEIwMDlDODgz
MSAvKiBHYW1lQ29udHJvbGxlckdhbWVwYWRQcm92aWRlci5oICovLAogCQkJCTUxRTM5OEZGMUQ2
RTQ3NEIwMDlDODgzMSAvKiBHYW1lQ29udHJvbGxlckdhbWVwYWRQcm92aWRlci5tbSAqLywKKwkJ
CQk1MTMwRjJGMjI0QUVBNjAyMDBFMUQwQTAgLyogR2FtZUNvbnRyb2xsZXJTb2Z0TGluay5oICov
LAorCQkJCTUxMzBGMkY0MjRBRUE2MDMwMEUxRDBBMCAvKiBHYW1lQ29udHJvbGxlclNvZnRMaW5r
Lm1tICovLAorCQkJCTUxMzBGMkY1MjRBRUE2MDMwMEUxRDBBMCAvKiBHYW1lQ29udHJvbGxlclNQ
SS5oICovLAogCQkJKTsKIAkJCXBhdGggPSBjb2NvYTsKIAkJCXNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7CkBAIC0zNDkwOSw2ICszNDkxNiw3IEBACiAJCQkJREU1Rjg0MzIxRkExODZFOTAwNkRCNjNB
IC8qIFVuaWZpZWRTb3VyY2UzMjkuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJREU1Rjg0MzMxRkEx
ODZFOTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMzAuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
REU1Rjg0MzQxRkExODZFOTAwNkRCNjNBIC8qIFVuaWZpZWRTb3VyY2UzMzEuY3BwIGluIFNvdXJj
ZXMgKi8sCisJCQkJNTEzMEYyRjYyNEFFQTYwQTAwRTFEMEEwIC8qIEdhbWVDb250cm9sbGVyU29m
dExpbmsubW0gaW4gU291cmNlcyAqLywKIAkJCQlERTVGODQzNTFGQTE4NkU5MDA2REI2M0EgLyog
VW5pZmllZFNvdXJjZTMzMi5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlERTVGODQzNjFGQTE4NkU5
MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMzMy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlERTVG
ODQzNzFGQTE4NkU5MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMzNC5jcHAgaW4gU291cmNlcyAq
LywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dhbWVwYWQvY29jb2EvR2Ft
ZUNvbnRyb2xsZXJHYW1lcGFkUHJvdmlkZXIubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
YW1lcGFkL2NvY29hL0dhbWVDb250cm9sbGVyR2FtZXBhZFByb3ZpZGVyLm1tCmluZGV4IDVhNmVi
NDA0MzllLi5kMTdkMjQ5MjhmYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z2FtZXBhZC9jb2NvYS9HYW1lQ29udHJvbGxlckdhbWVwYWRQcm92aWRlci5tbQorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9nYW1lcGFkL2NvY29hL0dhbWVDb250cm9sbGVyR2FtZXBhZFBy
b3ZpZGVyLm1tCkBAIC0yOSwxNiArMjksMTEgQEAKICNpZiBFTkFCTEUoR0FNRVBBRCkKIAogI2lt
cG9ydCAiR2FtZUNvbnRyb2xsZXJHYW1lcGFkLmgiCisjaW1wb3J0ICJHYW1lQ29udHJvbGxlclNv
ZnRMaW5rLmgiCiAjaW1wb3J0ICJHYW1lcGFkUHJvdmlkZXJDbGllbnQuaCIKICNpbXBvcnQgIkxv
Z2dpbmcuaCIKICNpbXBvcnQgPEdhbWVDb250cm9sbGVyL0dhbWVDb250cm9sbGVyLmg+CiAjaW1w
b3J0IDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KLSNpbXBvcnQgPHd0Zi9Tb2Z0TGlua2luZy5oPgot
Ci1TT0ZUX0xJTktfRlJBTUVXT1JLX09QVElPTkFMKEdhbWVDb250cm9sbGVyKQotU09GVF9MSU5L
X0NMQVNTX09QVElPTkFMKEdhbWVDb250cm9sbGVyLCBHQ0NvbnRyb2xsZXIpOwotU09GVF9MSU5L
X0NPTlNUQU5UX01BWV9GQUlMKEdhbWVDb250cm9sbGVyLCBHQ0NvbnRyb2xsZXJEaWRDb25uZWN0
Tm90aWZpY2F0aW9uLCBOU1N0cmluZyAqKQotU09GVF9MSU5LX0NPTlNUQU5UX01BWV9GQUlMKEdh
bWVDb250cm9sbGVyLCBHQ0NvbnRyb2xsZXJEaWREaXNjb25uZWN0Tm90aWZpY2F0aW9uLCBOU1N0
cmluZyAqKQogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTEwNiwxNCArMTAxLDE0IEBAIHZv
aWQgR2FtZUNvbnRyb2xsZXJHYW1lcGFkUHJvdmlkZXI6OnN0YXJ0TW9uaXRvcmluZ0dhbWVwYWRz
KEdhbWVwYWRQcm92aWRlckNsaWVuCiAgICAgaWYgKG1fY29ubmVjdE9ic2VydmVyKQogICAgICAg
ICByZXR1cm47CiAKLSAgICBpZiAoY2FuTG9hZEdDQ29udHJvbGxlckRpZENvbm5lY3ROb3RpZmlj
YXRpb24oKSkgewotICAgICAgICBtX2Nvbm5lY3RPYnNlcnZlciA9IFtbTlNOb3RpZmljYXRpb25D
ZW50ZXIgZGVmYXVsdENlbnRlcl0gYWRkT2JzZXJ2ZXJGb3JOYW1lOmdldEdDQ29udHJvbGxlckRp
ZENvbm5lY3ROb3RpZmljYXRpb24oKSBvYmplY3Q6bmlsIHF1ZXVlOm5pbCB1c2luZ0Jsb2NrOl4o
TlNOb3RpZmljYXRpb24gKm5vdGlmaWNhdGlvbikgeworICAgIGlmIChjYW5Mb2FkX0dhbWVDb250
cm9sbGVyX0dDQ29udHJvbGxlckRpZENvbm5lY3ROb3RpZmljYXRpb24oKSkgeworICAgICAgICBt
X2Nvbm5lY3RPYnNlcnZlciA9IFtbTlNOb3RpZmljYXRpb25DZW50ZXIgZGVmYXVsdENlbnRlcl0g
YWRkT2JzZXJ2ZXJGb3JOYW1lOmdldF9HYW1lQ29udHJvbGxlcl9HQ0NvbnRyb2xsZXJEaWRDb25u
ZWN0Tm90aWZpY2F0aW9uKCkgb2JqZWN0Om5pbCBxdWV1ZTpuaWwgdXNpbmdCbG9jazpeKE5TTm90
aWZpY2F0aW9uICpub3RpZmljYXRpb24pIHsKICAgICAgICAgICAgIEdhbWVDb250cm9sbGVyR2Ft
ZXBhZFByb3ZpZGVyOjpzaW5nbGV0b24oKS5jb250cm9sbGVyRGlkQ29ubmVjdChub3RpZmljYXRp
b24ub2JqZWN0LCBDb25uZWN0aW9uVmlzaWJpbGl0eTo6VmlzaWJsZSk7CiAgICAgICAgIH1dOwog
ICAgIH0KIAotICAgIGlmIChjYW5Mb2FkR0NDb250cm9sbGVyRGlkRGlzY29ubmVjdE5vdGlmaWNh
dGlvbigpKSB7Ci0gICAgICAgIG1fZGlzY29ubmVjdE9ic2VydmVyID0gW1tOU05vdGlmaWNhdGlv
bkNlbnRlciBkZWZhdWx0Q2VudGVyXSBhZGRPYnNlcnZlckZvck5hbWU6Z2V0R0NDb250cm9sbGVy
RGlkRGlzY29ubmVjdE5vdGlmaWNhdGlvbigpIG9iamVjdDpuaWwgcXVldWU6bmlsIHVzaW5nQmxv
Y2s6XihOU05vdGlmaWNhdGlvbiAqbm90aWZpY2F0aW9uKSB7CisgICAgaWYgKGNhbkxvYWRfR2Ft
ZUNvbnRyb2xsZXJfR0NDb250cm9sbGVyRGlkRGlzY29ubmVjdE5vdGlmaWNhdGlvbigpKSB7Cisg
ICAgICAgIG1fZGlzY29ubmVjdE9ic2VydmVyID0gW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZh
dWx0Q2VudGVyXSBhZGRPYnNlcnZlckZvck5hbWU6Z2V0X0dhbWVDb250cm9sbGVyX0dDQ29udHJv
bGxlckRpZERpc2Nvbm5lY3ROb3RpZmljYXRpb24oKSBvYmplY3Q6bmlsIHF1ZXVlOm5pbCB1c2lu
Z0Jsb2NrOl4oTlNOb3RpZmljYXRpb24gKm5vdGlmaWNhdGlvbikgewogICAgICAgICAgICAgR2Ft
ZUNvbnRyb2xsZXJHYW1lcGFkUHJvdmlkZXI6OnNpbmdsZXRvbigpLmNvbnRyb2xsZXJEaWREaXNj
b25uZWN0KG5vdGlmaWNhdGlvbi5vYmplY3QpOwogICAgICAgICB9XTsKICAgICB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9nYW1lcGFkL2NvY29hL0dhbWVDb250cm9sbGVy
U1BJLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9nYW1lcGFkL2NvY29hL0dhbWVDb250cm9s
bGVyU1BJLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjdhM2MyM2I0
YTRkCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ2FtZXBhZC9j
b2NvYS9HYW1lQ29udHJvbGxlclNQSS5oCkBAIC0wLDAgKzEsNDUgQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoK
KyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRS
SUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICog
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJ
VFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkg
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisj
aWYgRU5BQkxFKEdBTUVQQUQpICYmIFBMQVRGT1JNKENPQ09BKQorCisjaW1wb3J0IDxHYW1lQ29u
dHJvbGxlci9HYW1lQ29udHJvbGxlci5oPgorI2ltcG9ydCA8SU9LaXQvaGlkL0lPSElEU2Vydmlj
ZUNsaWVudC5oPgorCisjaWYgVVNFKEFQUExFX0lOVEVSTkFMX1NESykKKworV1RGX0VYVEVSTl9D
X0JFR0lOCisjaW1wb3J0IDxHYW1lQ29udHJvbGxlci9HQ1V0aWxpdHkuaD4KK1dURl9FWFRFUk5f
Q19FTkQKKworI2Vsc2UKKworV1RGX0VYVEVSTl9DX0JFR0lOCitDbGFzcyBDb250cm9sbGVyQ2xh
c3NGb3JTZXJ2aWNlKElPSElEU2VydmljZUNsaWVudFJlZiBzZXJ2aWNlKTsKK1dURl9FWFRFUk5f
Q19FTkQKKworI2VuZGlmIC8vIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCisKKyNlbmRpZiAvLyBF
TkFCTEUoR0FNRVBBRCkgJiYgUExBVEZPUk0oQ09DT0EpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9nYW1lcGFkL2NvY29hL0dhbWVDb250cm9sbGVyU29mdExpbmsuaCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dhbWVwYWQvY29jb2EvR2FtZUNvbnRyb2xsZXJTb2Z0TGlu
ay5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi4xMDE4M2JmYzE3NQot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dhbWVwYWQvY29jb2Ev
R2FtZUNvbnRyb2xsZXJTb2Z0TGluay5oCkBAIC0wLDAgKzEsMzkgQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoK
KyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRS
SUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICog
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJ
VFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkg
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisj
cHJhZ21hIG9uY2UKKworI2lmIEVOQUJMRShHQU1FUEFEKSAmJiBQTEFURk9STShDT0NPQSkKKwor
I2ltcG9ydCAiR2FtZUNvbnRyb2xsZXJTUEkuaCIKKyNpbXBvcnQgPHd0Zi9Tb2Z0TGlua2luZy5o
PgorCitTT0ZUX0xJTktfRlJBTUVXT1JLX0ZPUl9IRUFERVIoV2ViQ29yZSwgR2FtZUNvbnRyb2xs
ZXIpCitTT0ZUX0xJTktfQ0xBU1NfRk9SX0hFQURFUihXZWJDb3JlLCBHQ0NvbnRyb2xsZXIpCisK
K1NPRlRfTElOS19DT05TVEFOVF9NQVlfRkFJTF9GT1JfSEVBREVSKFdlYkNvcmUsIEdhbWVDb250
cm9sbGVyLCBHQ0NvbnRyb2xsZXJEaWRDb25uZWN0Tm90aWZpY2F0aW9uLCBOU1N0cmluZyAqKQor
U09GVF9MSU5LX0NPTlNUQU5UX01BWV9GQUlMX0ZPUl9IRUFERVIoV2ViQ29yZSwgR2FtZUNvbnRy
b2xsZXIsIEdDQ29udHJvbGxlckRpZERpc2Nvbm5lY3ROb3RpZmljYXRpb24sIE5TU3RyaW5nICop
CisKKyNlbmRpZiAvLyBFTkFCTEUoR0FNRVBBRCkgJiYgUExBVEZPUk0oQ09DT0EpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9nYW1lcGFkL2NvY29hL0dhbWVDb250cm9sbGVy
U29mdExpbmsubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9nYW1lcGFkL2NvY29hL0dhbWVD
b250cm9sbGVyU29mdExpbmsubW0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAuLmMxMDcwYzQxOTZiCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ2FtZXBhZC9jb2NvYS9HYW1lQ29udHJvbGxlclNvZnRMaW5rLm1tCkBAIC0wLDAgKzEsMzkg
QEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4g
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAg
ICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUg
SU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICog
VEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KKyAqLworCisjaW1wb3J0ICJjb25maWcuaCIKKworI2lmIEVOQUJMRShHQU1FUEFE
KSAmJiBQTEFURk9STShDT0NPQSkKKworI2ltcG9ydCAiR2FtZUNvbnRyb2xsZXJTUEkuaCIKKyNp
bXBvcnQgPHd0Zi9Tb2Z0TGlua2luZy5oPgorCitTT0ZUX0xJTktfRlJBTUVXT1JLX0ZPUl9TT1VS
Q0UoV2ViQ29yZSwgR2FtZUNvbnRyb2xsZXIpCitTT0ZUX0xJTktfQ0xBU1NfRk9SX1NPVVJDRV9P
UFRJT05BTChXZWJDb3JlLCBHYW1lQ29udHJvbGxlciwgR0NDb250cm9sbGVyKQorCitTT0ZUX0xJ
TktfQ09OU1RBTlRfTUFZX0ZBSUxfRk9SX1NPVVJDRShXZWJDb3JlLCBHYW1lQ29udHJvbGxlciwg
R0NDb250cm9sbGVyRGlkQ29ubmVjdE5vdGlmaWNhdGlvbiwgTlNTdHJpbmcgKikKK1NPRlRfTElO
S19DT05TVEFOVF9NQVlfRkFJTF9GT1JfU09VUkNFKFdlYkNvcmUsIEdhbWVDb250cm9sbGVyLCBH
Q0NvbnRyb2xsZXJEaWREaXNjb25uZWN0Tm90aWZpY2F0aW9uLCBOU1N0cmluZyAqKQorCisjZW5k
aWYgLy8gRU5BQkxFKEdBTUVQQUQpICYmIFBMQVRGT1JNKENPQ09BKQo=
</data>
<flag name="review"
          id="418784"
          type_id="1"
          status="+"
          setter="thorton"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>403422</attachid>
            <date>2020-07-02 17:28:02 -0700</date>
            <delta_ts>2020-07-02 18:05:41 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>13718</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBhNjE2ZTY1NGQ2ZC4uM2NiODQxZTU4MDcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxOSBAQAorMjAyMC0wNy0wMiAgQnJhZHkgRWlkc29uICA8YmVpZHNvbkBhcHBsZS5jb20+
CisKKyAgICAgICAgR2FtZUNvbnRyb2xsZXIuZnJhbWV3b3JrIHNvZnQgbGlua2luZyByZWZhY3Rv
cmluZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEz
OTA5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgVGltIEhvcnRvbi4KKworICAgICAgICBObyBuZXcg
dGVzdHMgKE5vIGJlaGF2aW9yIGNoYW5nZXMpCisKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogcGxhdGZvcm0vZ2FtZXBhZC9jb2NvYS9HYW1l
Q29udHJvbGxlckdhbWVwYWRQcm92aWRlci5tbToKKyAgICAgICAgKFdlYkNvcmU6OkdhbWVDb250
cm9sbGVyR2FtZXBhZFByb3ZpZGVyOjpzdGFydE1vbml0b3JpbmdHYW1lcGFkcyk6CisgICAgICAg
ICogcGxhdGZvcm0vZ2FtZXBhZC9jb2NvYS9HYW1lQ29udHJvbGxlclNQSS5oOiBBZGRlZC4KKyAg
ICAgICAgKiBwbGF0Zm9ybS9nYW1lcGFkL2NvY29hL0dhbWVDb250cm9sbGVyU29mdExpbmsuaDog
QWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vZ2FtZXBhZC9jb2NvYS9HYW1lQ29udHJvbGxlclNv
ZnRMaW5rLm1tOiBBZGRlZC4KKwogMjAyMC0wNi0zMCAgRnVqaWkgSGlyb25vcmkgIDxIaXJvbm9y
aS5GdWppaUBzb255LmNvbT4KIAogICAgICAgICBbV2luQ2Fpcm9dIFVucmV2aWV3ZWQgYnVpbGQg
Zml4IGFmdGVyIHIyNjM3NzYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagppbmRleCA3NWE1MTIwYTgzNC4uYjYxNDAzNTQ4YzIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE0
MDgsNiArMTQwOCw3IEBACiAJCTUxMkREOEY4MEQ5MUU2QUYwMDBGODlFRSAvKiBBcmNoaXZlUmVz
b3VyY2VDb2xsZWN0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA1MTJERDhFRTBEOTFFNkFGMDAwRjg5RUUgLyogQXJjaGl2ZVJlc291cmNlQ29sbGVj
dGlvbi5oICovOyB9OwogCQk1MTJERDhGQzBEOTFFNkFGMDAwRjg5RUUgLyogQXJjaGl2ZVJlc291
cmNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MTJE
RDhGMjBEOTFFNkFGMDAwRjg5RUUgLyogQXJjaGl2ZVJlc291cmNlLmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJNTEyREQ4RkQwRDkxRTZBRjAwMEY4
OUVFIC8qIEFyY2hpdmVGYWN0b3J5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA1MTJERDhGMzBEOTFFNkFGMDAwRjg5RUUgLyogQXJjaGl2ZUZhY3Rvcnku
aCAqLzsgfTsKKwkJNTEzMEYyRjYyNEFFQTYwQTAwRTFEMEEwIC8qIEdhbWVDb250cm9sbGVyU29m
dExpbmsubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1
MTMwRjJGNDI0QUVBNjAzMDBFMUQwQTAgLyogR2FtZUNvbnRyb2xsZXJTb2Z0TGluay5tbSAqLzsg
fTsKIAkJNTEzMjdENjAxMUEzM0EyQjAwNEY5RDY1IC8qIFNpbmtEb2N1bWVudC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTEzMjdENUUxMUEzM0EyQjAw
NEY5RDY1IC8qIFNpbmtEb2N1bWVudC5oICovOyB9OwogCQk1MTNGMTQ1NDBBQjYzNEM0MDAwOTRE
REYgLyogSWNvbkxvYWRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNTEzRjE0NTIwQUI2MzRDNDAwMDk0RERGIC8qIEljb25Mb2FkZXIuaCAqLzsgfTsK
IAkJNTE0MDVDODkxOTBCMDE0NDAwNzU0Rjk0IC8qIFNlbGVjdGlvblJlY3RHYXRoZXJlci5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTE0MDVDODcxOTBC
MDE0NDAwNzU0Rjk0IC8qIFNlbGVjdGlvblJlY3RHYXRoZXJlci5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBAIC04MjIyLDYgKzgyMjMsOSBAQAogCQk1
MTJERDhGMjBEOTFFNkFGMDAwRjg5RUUgLyogQXJjaGl2ZVJlc291cmNlLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFyY2hpdmVSZXNvdXJjZS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk1MTJERDhGMzBEOTFFNkFGMDAwRjg5RUUgLyogQXJjaGl2ZUZhY3Rvcnku
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXJjaGl2ZUZhY3RvcnkuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTEyRjFBNzcxQzA3RUEwRDAwOTA4MjM5IC8qIElE
QkdldFJlc3VsdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJREJH
ZXRSZXN1bHQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1MTMwRjJGMjI0QUVB
NjAyMDBFMUQwQTAgLyogR2FtZUNvbnRyb2xsZXJTb2Z0TGluay5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBHYW1lQ29udHJvbGxlclNvZnRMaW5rLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTUxMzBGMkY0MjRBRUE2MDMwMEUxRDBBMCAvKiBHYW1lQ29udHJvbGxl
clNvZnRMaW5rLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gR2Ft
ZUNvbnRyb2xsZXJTb2Z0TGluay5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTEz
MEYyRjUyNEFFQTYwMzAwRTFEMEEwIC8qIEdhbWVDb250cm9sbGVyU1BJLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEdhbWVDb250cm9sbGVyU1BJLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTUxMzI3RDVFMTFBMzNBMkIwMDRGOUQ2NSAvKiBTaW5rRG9jdW1lbnQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2lua0RvY3VtZW50Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTUxMzI3RDVGMTFBMzNBMkIwMDRGOUQ2NSAvKiBTaW5r
RG9jdW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU2lua0Rv
Y3VtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTEzRjE0NTEwQUI2MzRD
NDAwMDk0RERGIC8qIEljb25Mb2FkZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEljb25Mb2FkZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAt
MTk3MDgsNiArMTk3MTIsOSBAQAogCQkJCTUxRTM5OEZEMUQ2RTQ3NEIwMDlDODgzMSAvKiBHYW1l
Q29udHJvbGxlckdhbWVwYWQubW0gKi8sCiAJCQkJNTFFMzk4RkUxRDZFNDc0QjAwOUM4ODMxIC8q
IEdhbWVDb250cm9sbGVyR2FtZXBhZFByb3ZpZGVyLmggKi8sCiAJCQkJNTFFMzk4RkYxRDZFNDc0
QjAwOUM4ODMxIC8qIEdhbWVDb250cm9sbGVyR2FtZXBhZFByb3ZpZGVyLm1tICovLAorCQkJCTUx
MzBGMkYyMjRBRUE2MDIwMEUxRDBBMCAvKiBHYW1lQ29udHJvbGxlclNvZnRMaW5rLmggKi8sCisJ
CQkJNTEzMEYyRjQyNEFFQTYwMzAwRTFEMEEwIC8qIEdhbWVDb250cm9sbGVyU29mdExpbmsubW0g
Ki8sCisJCQkJNTEzMEYyRjUyNEFFQTYwMzAwRTFEMEEwIC8qIEdhbWVDb250cm9sbGVyU1BJLmgg
Ki8sCiAJCQkpOwogCQkJcGF0aCA9IGNvY29hOwogCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsK
QEAgLTM0OTA5LDYgKzM0OTE2LDcgQEAKIAkJCQlERTVGODQzMjFGQTE4NkU5MDA2REI2M0EgLyog
VW5pZmllZFNvdXJjZTMyOS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlERTVGODQzMzFGQTE4NkU5
MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMzMC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlERTVG
ODQzNDFGQTE4NkU5MDA2REI2M0EgLyogVW5pZmllZFNvdXJjZTMzMS5jcHAgaW4gU291cmNlcyAq
LywKKwkJCQk1MTMwRjJGNjI0QUVBNjBBMDBFMUQwQTAgLyogR2FtZUNvbnRyb2xsZXJTb2Z0TGlu
ay5tbSBpbiBTb3VyY2VzICovLAogCQkJCURFNUY4NDM1MUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlm
aWVkU291cmNlMzMyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCURFNUY4NDM2MUZBMTg2RTkwMDZE
QjYzQSAvKiBVbmlmaWVkU291cmNlMzMzLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCURFNUY4NDM3
MUZBMTg2RTkwMDZEQjYzQSAvKiBVbmlmaWVkU291cmNlMzM0LmNwcCBpbiBTb3VyY2VzICovLApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ2FtZXBhZC9jb2NvYS9HYW1lQ29u
dHJvbGxlckdhbWVwYWRQcm92aWRlci5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dhbWVw
YWQvY29jb2EvR2FtZUNvbnRyb2xsZXJHYW1lcGFkUHJvdmlkZXIubW0KaW5kZXggNWE2ZWI0MDQz
OWUuLmQxN2QyNDkyOGZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9nYW1l
cGFkL2NvY29hL0dhbWVDb250cm9sbGVyR2FtZXBhZFByb3ZpZGVyLm1tCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dhbWVwYWQvY29jb2EvR2FtZUNvbnRyb2xsZXJHYW1lcGFkUHJvdmlk
ZXIubW0KQEAgLTI5LDE2ICsyOSwxMSBAQAogI2lmIEVOQUJMRShHQU1FUEFEKQogCiAjaW1wb3J0
ICJHYW1lQ29udHJvbGxlckdhbWVwYWQuaCIKKyNpbXBvcnQgIkdhbWVDb250cm9sbGVyU29mdExp
bmsuaCIKICNpbXBvcnQgIkdhbWVwYWRQcm92aWRlckNsaWVudC5oIgogI2ltcG9ydCAiTG9nZ2lu
Zy5oIgogI2ltcG9ydCA8R2FtZUNvbnRyb2xsZXIvR2FtZUNvbnRyb2xsZXIuaD4KICNpbXBvcnQg
PHd0Zi9OZXZlckRlc3Ryb3llZC5oPgotI2ltcG9ydCA8d3RmL1NvZnRMaW5raW5nLmg+Ci0KLVNP
RlRfTElOS19GUkFNRVdPUktfT1BUSU9OQUwoR2FtZUNvbnRyb2xsZXIpCi1TT0ZUX0xJTktfQ0xB
U1NfT1BUSU9OQUwoR2FtZUNvbnRyb2xsZXIsIEdDQ29udHJvbGxlcik7Ci1TT0ZUX0xJTktfQ09O
U1RBTlRfTUFZX0ZBSUwoR2FtZUNvbnRyb2xsZXIsIEdDQ29udHJvbGxlckRpZENvbm5lY3ROb3Rp
ZmljYXRpb24sIE5TU3RyaW5nICopCi1TT0ZUX0xJTktfQ09OU1RBTlRfTUFZX0ZBSUwoR2FtZUNv
bnRyb2xsZXIsIEdDQ29udHJvbGxlckRpZERpc2Nvbm5lY3ROb3RpZmljYXRpb24sIE5TU3RyaW5n
ICopCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtMTA2LDE0ICsxMDEsMTQgQEAgdm9pZCBH
YW1lQ29udHJvbGxlckdhbWVwYWRQcm92aWRlcjo6c3RhcnRNb25pdG9yaW5nR2FtZXBhZHMoR2Ft
ZXBhZFByb3ZpZGVyQ2xpZW4KICAgICBpZiAobV9jb25uZWN0T2JzZXJ2ZXIpCiAgICAgICAgIHJl
dHVybjsKIAotICAgIGlmIChjYW5Mb2FkR0NDb250cm9sbGVyRGlkQ29ubmVjdE5vdGlmaWNhdGlv
bigpKSB7Ci0gICAgICAgIG1fY29ubmVjdE9ic2VydmVyID0gW1tOU05vdGlmaWNhdGlvbkNlbnRl
ciBkZWZhdWx0Q2VudGVyXSBhZGRPYnNlcnZlckZvck5hbWU6Z2V0R0NDb250cm9sbGVyRGlkQ29u
bmVjdE5vdGlmaWNhdGlvbigpIG9iamVjdDpuaWwgcXVldWU6bmlsIHVzaW5nQmxvY2s6XihOU05v
dGlmaWNhdGlvbiAqbm90aWZpY2F0aW9uKSB7CisgICAgaWYgKGNhbkxvYWRfR2FtZUNvbnRyb2xs
ZXJfR0NDb250cm9sbGVyRGlkQ29ubmVjdE5vdGlmaWNhdGlvbigpKSB7CisgICAgICAgIG1fY29u
bmVjdE9ic2VydmVyID0gW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVyXSBhZGRP
YnNlcnZlckZvck5hbWU6Z2V0X0dhbWVDb250cm9sbGVyX0dDQ29udHJvbGxlckRpZENvbm5lY3RO
b3RpZmljYXRpb24oKSBvYmplY3Q6bmlsIHF1ZXVlOm5pbCB1c2luZ0Jsb2NrOl4oTlNOb3RpZmlj
YXRpb24gKm5vdGlmaWNhdGlvbikgewogICAgICAgICAgICAgR2FtZUNvbnRyb2xsZXJHYW1lcGFk
UHJvdmlkZXI6OnNpbmdsZXRvbigpLmNvbnRyb2xsZXJEaWRDb25uZWN0KG5vdGlmaWNhdGlvbi5v
YmplY3QsIENvbm5lY3Rpb25WaXNpYmlsaXR5OjpWaXNpYmxlKTsKICAgICAgICAgfV07CiAgICAg
fQogCi0gICAgaWYgKGNhbkxvYWRHQ0NvbnRyb2xsZXJEaWREaXNjb25uZWN0Tm90aWZpY2F0aW9u
KCkpIHsKLSAgICAgICAgbV9kaXNjb25uZWN0T2JzZXJ2ZXIgPSBbW05TTm90aWZpY2F0aW9uQ2Vu
dGVyIGRlZmF1bHRDZW50ZXJdIGFkZE9ic2VydmVyRm9yTmFtZTpnZXRHQ0NvbnRyb2xsZXJEaWRE
aXNjb25uZWN0Tm90aWZpY2F0aW9uKCkgb2JqZWN0Om5pbCBxdWV1ZTpuaWwgdXNpbmdCbG9jazpe
KE5TTm90aWZpY2F0aW9uICpub3RpZmljYXRpb24pIHsKKyAgICBpZiAoY2FuTG9hZF9HYW1lQ29u
dHJvbGxlcl9HQ0NvbnRyb2xsZXJEaWREaXNjb25uZWN0Tm90aWZpY2F0aW9uKCkpIHsKKyAgICAg
ICAgbV9kaXNjb25uZWN0T2JzZXJ2ZXIgPSBbW05TTm90aWZpY2F0aW9uQ2VudGVyIGRlZmF1bHRD
ZW50ZXJdIGFkZE9ic2VydmVyRm9yTmFtZTpnZXRfR2FtZUNvbnRyb2xsZXJfR0NDb250cm9sbGVy
RGlkRGlzY29ubmVjdE5vdGlmaWNhdGlvbigpIG9iamVjdDpuaWwgcXVldWU6bmlsIHVzaW5nQmxv
Y2s6XihOU05vdGlmaWNhdGlvbiAqbm90aWZpY2F0aW9uKSB7CiAgICAgICAgICAgICBHYW1lQ29u
dHJvbGxlckdhbWVwYWRQcm92aWRlcjo6c2luZ2xldG9uKCkuY29udHJvbGxlckRpZERpc2Nvbm5l
Y3Qobm90aWZpY2F0aW9uLm9iamVjdCk7CiAgICAgICAgIH1dOwogICAgIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dhbWVwYWQvY29jb2EvR2FtZUNvbnRyb2xsZXJTUEku
aCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dhbWVwYWQvY29jb2EvR2FtZUNvbnRyb2xsZXJT
UEkuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uMDE4ZDM4MDYzOGIK
LS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9nYW1lcGFkL2NvY29h
L0dhbWVDb250cm9sbGVyU1BJLmgKQEAgLTAsMCArMSwzMCBAQAorLyoKKyAqIENvcHlyaWdodCAo
QykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICog
Mi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVU
T1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBD
T05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1Ig
QlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpZiBF
TkFCTEUoR0FNRVBBRCkgJiYgUExBVEZPUk0oQ09DT0EpCisKKy8vIEZJWE1FOiBSZWZhY3RvciBt
b3JlIEdDIGZyYW1ld29yayBzdHVmZiBpbnRvIHRoaXMgaGVhZGVyCisKKyNlbmRpZiAvLyBFTkFC
TEUoR0FNRVBBRCkgJiYgUExBVEZPUk0oQ09DT0EpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9nYW1lcGFkL2NvY29hL0dhbWVDb250cm9sbGVyU29mdExpbmsuaCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dhbWVwYWQvY29jb2EvR2FtZUNvbnRyb2xsZXJTb2Z0TGluay5o
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi4xMDE4M2JmYzE3NQotLS0g
L2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dhbWVwYWQvY29jb2EvR2Ft
ZUNvbnRyb2xsZXJTb2Z0TGluay5oCkBAIC0wLDAgKzEsMzkgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJV
VE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMg
Q09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJh
Z21hIG9uY2UKKworI2lmIEVOQUJMRShHQU1FUEFEKSAmJiBQTEFURk9STShDT0NPQSkKKworI2lt
cG9ydCAiR2FtZUNvbnRyb2xsZXJTUEkuaCIKKyNpbXBvcnQgPHd0Zi9Tb2Z0TGlua2luZy5oPgor
CitTT0ZUX0xJTktfRlJBTUVXT1JLX0ZPUl9IRUFERVIoV2ViQ29yZSwgR2FtZUNvbnRyb2xsZXIp
CitTT0ZUX0xJTktfQ0xBU1NfRk9SX0hFQURFUihXZWJDb3JlLCBHQ0NvbnRyb2xsZXIpCisKK1NP
RlRfTElOS19DT05TVEFOVF9NQVlfRkFJTF9GT1JfSEVBREVSKFdlYkNvcmUsIEdhbWVDb250cm9s
bGVyLCBHQ0NvbnRyb2xsZXJEaWRDb25uZWN0Tm90aWZpY2F0aW9uLCBOU1N0cmluZyAqKQorU09G
VF9MSU5LX0NPTlNUQU5UX01BWV9GQUlMX0ZPUl9IRUFERVIoV2ViQ29yZSwgR2FtZUNvbnRyb2xs
ZXIsIEdDQ29udHJvbGxlckRpZERpc2Nvbm5lY3ROb3RpZmljYXRpb24sIE5TU3RyaW5nICopCisK
KyNlbmRpZiAvLyBFTkFCTEUoR0FNRVBBRCkgJiYgUExBVEZPUk0oQ09DT0EpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9nYW1lcGFkL2NvY29hL0dhbWVDb250cm9sbGVyU29m
dExpbmsubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9nYW1lcGFkL2NvY29hL0dhbWVDb250
cm9sbGVyU29mdExpbmsubW0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAu
LmMxMDcwYzQxOTZiCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z2FtZXBhZC9jb2NvYS9HYW1lQ29udHJvbGxlclNvZnRMaW5rLm1tCkBAIC0wLDAgKzEsMzkgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5D
LiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhF
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
QVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJF
TUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KKyAqLworCisjaW1wb3J0ICJjb25maWcuaCIKKworI2lmIEVOQUJMRShHQU1FUEFEKSAm
JiBQTEFURk9STShDT0NPQSkKKworI2ltcG9ydCAiR2FtZUNvbnRyb2xsZXJTUEkuaCIKKyNpbXBv
cnQgPHd0Zi9Tb2Z0TGlua2luZy5oPgorCitTT0ZUX0xJTktfRlJBTUVXT1JLX0ZPUl9TT1VSQ0Uo
V2ViQ29yZSwgR2FtZUNvbnRyb2xsZXIpCitTT0ZUX0xJTktfQ0xBU1NfRk9SX1NPVVJDRV9PUFRJ
T05BTChXZWJDb3JlLCBHYW1lQ29udHJvbGxlciwgR0NDb250cm9sbGVyKQorCitTT0ZUX0xJTktf
Q09OU1RBTlRfTUFZX0ZBSUxfRk9SX1NPVVJDRShXZWJDb3JlLCBHYW1lQ29udHJvbGxlciwgR0ND
b250cm9sbGVyRGlkQ29ubmVjdE5vdGlmaWNhdGlvbiwgTlNTdHJpbmcgKikKK1NPRlRfTElOS19D
T05TVEFOVF9NQVlfRkFJTF9GT1JfU09VUkNFKFdlYkNvcmUsIEdhbWVDb250cm9sbGVyLCBHQ0Nv
bnRyb2xsZXJEaWREaXNjb25uZWN0Tm90aWZpY2F0aW9uLCBOU1N0cmluZyAqKQorCisjZW5kaWYg
Ly8gRU5BQkxFKEdBTUVQQUQpICYmIFBMQVRGT1JNKENPQ09BKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>