<?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>189953</bug_id>
          
          <creation_ts>2018-09-25 10:29:03 -0700</creation_ts>
          <short_desc>[iOS] Fix the open source iOS 12 build after r236445</short_desc>
          <delta_ts>2018-09-25 11:59:48 -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>DoNotImportToRadar</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>achristensen</cc>
    
    <cc>bdakin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>mitz</cc>
    
    <cc>ryanhaddad</cc>
    
    <cc>thorton</cc>
    
    <cc>tsavell</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1463181</commentid>
    <comment_count>0</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2018-09-25 10:29:03 -0700</bug_when>
    <thetext>r236445 introduced duplicate WebCore::UIKitLibrary symbols in WebCore, due to multiple declarations of SOFT_LINK_FRAMEWORK_FOR_SOURCE(WebCore, UIKit).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1463198</commentid>
    <comment_count>1</comment_count>
      <attachid>350762</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2018-09-25 10:55:13 -0700</bug_when>
    <thetext>Created attachment 350762
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1463269</commentid>
    <comment_count>2</comment_count>
      <attachid>350762</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-09-25 11:59:46 -0700</bug_when>
    <thetext>Comment on attachment 350762
Patch

Clearing flags on attachment: 350762

Committed r236468: &lt;https://trac.webkit.org/changeset/236468&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1463270</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-09-25 11:59:48 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>350762</attachid>
            <date>2018-09-25 10:55:13 -0700</date>
            <delta_ts>2018-09-25 11:59:46 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-189953-20180925105512.patch</filename>
            <type>text/plain</type>
            <size>16441</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM2NDYwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDIwM2E3MTgzZmY2MTkw
ZTc1YWIzN2VjYzRhMmQ5YjU1ZmYxZTg0ZS4uYmJiODAyZGRkYzNiNDIzMDQ5OWRhNWNiNDlkNzIz
MGM4NjE3OTM1YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDE4LTA5LTI1ICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIFtpT1NdIEZpeCB0
aGUgb3BlbiBzb3VyY2UgaU9TIDEyIGJ1aWxkIGFmdGVyIHIyMzY0NDUKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4OTk1MworCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlbW92ZSBzb2Z0LWxpbmtpbmcgbWFj
cm9zIGZyb20gc2V2ZXJhbCBzb3VyY2VzIGluIFdlYkNvcmUsIGFuZCBpbnN0ZWFkIGltcG9ydCBV
SUtpdFNvZnRMaW5rIGZyb20gUEFMLiBUaGlzCisgICAgICAgIGFsbG93cyBkaWZmZXJlbnQgV2Vi
Q29yZSBzb3VyY2VzIHRvIHNvZnQtbGluayBVSUtpdCAoYW5kIGl0cyBjbGFzc2VzIGFuZCBzeW1i
b2xzKSB3aXRob3V0IHJlaW1wbGVtZW50aW5nCisgICAgICAgIFdlYkNvcmU6OlVJS2l0TGlicmFy
eS4KKworICAgICAgICAqIGVkaXRpbmcvY29jb2EvRm9udEF0dHJpYnV0ZXNDb2NvYS5tbToKKyAg
ICAgICAgKiBlZGl0aW5nL2NvY29hL0ZvbnRTaGFkb3dDb2NvYS5tbToKKyAgICAgICAgKFdlYkNv
cmU6OkZvbnRTaGFkb3c6OmNyZWF0ZVNoYWRvdyBjb25zdCk6CisgICAgICAgICogcGxhdGZvcm0v
Z3JhcGhpY3MvY29jb2EvQ29sb3JDb2NvYS5tbToKKyAgICAgICAgKFdlYkNvcmU6OnBsYXRmb3Jt
Q29sb3IpOgorICAgICAgICAqIHBsYXRmb3JtL2lvcy9QbGF0Zm9ybVNjcmVlbklPUy5tbToKKyAg
ICAgICAgKFdlYkNvcmU6OnNjcmVlbklzTW9ub2Nocm9tZSk6CisgICAgICAgIChXZWJDb3JlOjpz
Y3JlZW5IYXNJbnZlcnRlZENvbG9ycyk6CisgICAgICAgIChXZWJDb3JlOjpzY3JlZW5TaXplKToK
KyAgICAgICAgKFdlYkNvcmU6OmF2YWlsYWJsZVNjcmVlblNpemUpOgorICAgICAgICAoV2ViQ29y
ZTo6c2NyZWVuU2NhbGVGYWN0b3IpOgorCiAyMDE4LTA5LTI1ICBTaW1vbiBGcmFzZXIgIDxzaW1v
bi5mcmFzZXJAYXBwbGUuY29tPgogCiAgICAgICAgIENsZWFuIHVwIGNvZGUgYXJvdW5kIFJlbmRl
ckxheWVyJ3MgImhhcyBhY2NlbGVyYXRlZCBzY3JvbGxpbmciIGZ1bmN0aW9ucwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFu
Z2VMb2cKaW5kZXggNWE0NTU0NmZhNTdjYzYzYzQ1NTc0YzA3NWZkNWU3YjBlNWYwMDkxMC4uMzkx
ZmIwMTZkNjQ3YzNiYjg0MTQwYTMxYzVjZTZkMGMwM2YwZTc4NSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvUEFML0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMTYgQEAKKzIwMTgtMDktMjUgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2ll
aEBhcHBsZS5jb20+CisKKyAgICAgICAgW2lPU10gRml4IHRoZSBvcGVuIHNvdXJjZSBpT1MgMTIg
YnVpbGQgYWZ0ZXIgcjIzNjQ0NQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTg5OTUzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgSW50cm9kdWNlIGEgc2luZ2xlIFVJS2l0IHNvZnQtbGlua2luZyBoZWFkZXIg
aW4gUEFMLgorCisgICAgICAgICogUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAg
ICAgICogcGFsL2lvcy9VSUtpdFNvZnRMaW5rLmg6IENvcGllZCBmcm9tIFNvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0NvbG9yQ29jb2EubW0uCisgICAgICAgICogcGFsL2lv
cy9VSUtpdFNvZnRMaW5rLm1tOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9jb2NvYS9Db2xvckNvY29hLm1tLgorCiAyMDE4LTA5LTI0ICBXZW5zb24gSHNpZWgg
IDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgogCiAgICAgICAgIFJlZmFjdG9yIEVkaXRvcjo6Zm9u
dEF0dHJpYnV0ZXNGb3JTZWxlY3Rpb25TdGFydCB0byBiZSBwbGF0Zm9ybS1hZ25vc3RpYwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML1BBTC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
IGIvU291cmNlL1dlYkNvcmUvUEFML1BBTC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4
IGUwZWNiM2M5NTc3ZWYzNTgzYzM4OGRiZDFkMjY1ZGM5OTA0MjlmZWIuLmMzMjUzZGYwNjUxMDc1
ZTIzMTIxY2U5YjUwMGQ2MGQxM2MxMjQ0NTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BB
TC9QQUwueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwv
UEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTEwOCw2ICsxMDgsOCBAQAogCQkxQ0NF
RTRGNTIwRDg3MTkzMDA0N0IwOTcgLyogQ29yZVVJU1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQ0NFRTRGNDIwRDg3MTkzMDA0N0IwOTcgLyogQ29y
ZVVJU1BJLmggKi87IH07CiAJCTFDQ0VFNEY3MjBEODc0M0YwMDQ3QjA5NyAvKiBOU0FwcGVhcmFu
Y2VTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFD
Q0VFNEY2MjBEODc0M0YwMDQ3QjA5NyAvKiBOU0FwcGVhcmFuY2VTUEkuaCAqLzsgfTsKIAkJMkQw
MkU5M0MyMDU2RkFBNzAwQTEzNzk3IC8qIEF1ZGlvVG9vbGJveFNQSS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkQwMkU5M0IyMDU2RkFBNzAwQTEzNzk3
IC8qIEF1ZGlvVG9vbGJveFNQSS5oICovOyB9OworCQkyRTEzNDJDQzIxNUFBMTBBMDA3MTk5RDIg
LyogVUlLaXRTb2Z0TGluay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMkUxMzQyQ0EyMTVBQTEwQTAwNzE5OUQyIC8qIFVJS2l0U29mdExpbmsuaCAqLzsg
fTsKKwkJMkUxMzQyQ0QyMTVBQTEwQTAwNzE5OUQyIC8qIFVJS2l0U29mdExpbmsubW0gaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRTEzNDJDQjIxNUFBMTBB
MDA3MTk5RDIgLyogVUlLaXRTb2Z0TGluay5tbSAqLzsgfTsKIAkJMzEzMDhCMTQyMEEyMTcwNTAw
M0ZCOTI5IC8qIFN5c3RlbVByZXZpZXdTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDMxMzA4QjEzMjBBMjE3MDUwMDNGQjkyOSAvKiBTeXN0ZW1QcmV2
aWV3U1BJLmggKi87IH07CiAJCTU3MEFCOEYxMjBBRTJFOEQwMEI4QkU4NyAvKiBTZWNLZXlQcm94
eVNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTcw
QUI4RjAyMEFFMkU4RDAwQjhCRTg3IC8qIFNlY0tleVByb3h5U1BJLmggKi87IH07CiAJCTU3MEFC
OEY5MjBBRjZFM0QwMEI4QkU4NyAvKiBOU1hQQ0Nvbm5lY3Rpb25TUEkuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDU3MEFCOEY4MjBBRjZFM0QwMEI4QkU4
NyAvKiBOU1hQQ0Nvbm5lY3Rpb25TUEkuaCAqLzsgfTsKQEAgLTI2MCw2ICsyNjIsOCBAQAogCQkx
Q0NFRTRGNDIwRDg3MTkzMDA0N0IwOTcgLyogQ29yZVVJU1BJLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IENvcmVVSVNQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQkxQ0NFRTRGNjIwRDg3NDNGMDA0N0IwOTcgLyogTlNBcHBlYXJhbmNlU1BJLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5TQXBwZWFyYW5jZVNQSS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQkyRDAyRTkzQjIwNTZGQUE3MDBBMTM3OTcgLyogQXVkaW9Ub29sYm94
U1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEF1ZGlvVG9vbGJveFNQSS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyRTEzNDJDQTIxNUFBMTBBMDA3MTk5RDIg
LyogVUlLaXRTb2Z0TGluay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBVSUtp
dFNvZnRMaW5rLmg7IHBhdGggPSBpb3MvVUlLaXRTb2Z0TGluay5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkyRTEzNDJDQjIxNUFBMTBBMDA3MTk5RDIgLyogVUlLaXRTb2Z0TGluay5t
bSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgbmFtZSA9IFVJS2l0U29mdExpbmsu
bW07IHBhdGggPSBpb3MvVUlLaXRTb2Z0TGluay5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJMzEzMDhCMTMyMEEyMTcwNTAwM0ZCOTI5IC8qIFN5c3RlbVByZXZpZXdTUEkuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gU3lzdGVtUHJldmlld1NQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQkzNzExOUE3ODIwQ0NCNUZGMDAyQzZEQzkgLyogV2ViS2l0VGFyZ2V0Q29uZGl0aW9uYWxz
LnhjY29uZmlnICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dC54Y2NvbmZpZzsgcGF0aCA9IFdlYktpdFRhcmdldENvbmRpdGlvbmFscy54Y2NvbmZp
Zzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTcwQUI4RjAyMEFFMkU4RDAwQjhCRTg3
IC8qIFNlY0tleVByb3h5U1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNlY0tleVByb3h5U1BJLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC01MDQsNiArNTA4LDcgQEAKIAkJCQkwQ0Y5OUNB
NTFGNzM4NDFDMDA3RUU3OTMgLyogY2YgKi8sCiAJCQkJMUM0ODc2REUxRjhEODMxMzAwQ0NFRUJE
IC8qIGNvY29hICovLAogCQkJCTFDMDlEMDUxMUUzMUM0MTIwMDcyNUYxOCAvKiBjcnlwdG8gKi8s
CisJCQkJMkU4N0MwNkUyMTVBOTkzMTAwRDZDRDMyIC8qIGlvcyAqLywKIAkJCQkwQzJEQTA2NTFG
MzNDQTMzMDBEQkMzMTcgLyogc3BpICovLAogCQkJCUEzNzg4RTlGMUYwNUI3Q0UwMDY3OTQyNSAv
KiBzeXN0ZW0gKi8sCiAJCQkJQTMwRDQxMUQxRjBERDBBQzAwQjcxOTU0IC8qIHRleHQgKi8sCkBA
IC01NTksNiArNTY0LDE1IEBACiAJCQlwYXRoID0gY29jb2E7CiAJCQlzb3VyY2VUcmVlID0gIjxn
cm91cD4iOwogCQl9OworCQkyRTg3QzA2RTIxNUE5OTMxMDBENkNEMzIgLyogaW9zICovID0gewor
CQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQkyRTEzNDJDQTIxNUFBMTBB
MDA3MTk5RDIgLyogVUlLaXRTb2Z0TGluay5oICovLAorCQkJCTJFMTM0MkNCMjE1QUExMEEwMDcx
OTlEMiAvKiBVSUtpdFNvZnRMaW5rLm1tICovLAorCQkJKTsKKwkJCW5hbWUgPSBpb3M7CisJCQlz
b3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OwogCQlBMzBENDExRDFGMEREMEFDMDBCNzE5NTQg
LyogdGV4dCAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCkBAIC03
MzcsNiArNzUxLDcgQEAKIAkJCQlBM0FCNkU1ODFGM0QxRERCMDA5QzE0QjEgLyogU3lzdGVtU2xl
ZXBMaXN0ZW5lci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTNBQjZFNjQxRjNEMjE3RjAwOUMxNEIx
IC8qIFN5c3RlbVNsZWVwTGlzdGVuZXJNYWMuaCBpbiBIZWFkZXJzICovLAogCQkJCTBDNzc4NUEx
MUY0NTEzMEYwMEY0RUJCNiAvKiBUVUNhbGxTUEkuaCBpbiBIZWFkZXJzICovLAorCQkJCTJFMTM0
MkNDMjE1QUExMEEwMDcxOTlEMiAvKiBVSUtpdFNvZnRMaW5rLmggaW4gSGVhZGVycyAqLywKIAkJ
CQkwQzVBRjkyMjFGNDNBNEM3MDAyRUFDMDIgLyogVUlLaXRTUEkuaCBpbiBIZWFkZXJzICovLAog
CQkJCTBDMkRBMTQ3MUYzQkVCNDkwMERCQzMxNyAvKiBVUkxGb3JtYXR0aW5nU1BJLmggaW4gSGVh
ZGVycyAqLywKIAkJCQkwQzJEQTE1OTFGM0JFQjQ5MDBEQkMzMTcgLyogV2ViRmlsdGVyRXZhbHVh
dG9yU1BJLmggaW4gSGVhZGVycyAqLywKQEAgLTg0Nyw2ICs4NjIsNyBAQAogCQkJCUEzNzg4RTlF
MUYwNUI3OEUwMDY3OTQyNSAvKiBTb3VuZE1hYy5tbSBpbiBTb3VyY2VzICovLAogCQkJCUEzQUI2
RTU3MUYzRDFEREIwMDlDMTRCMSAvKiBTeXN0ZW1TbGVlcExpc3RlbmVyLmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCUEzQUI2RTY1MUYzRDIxN0YwMDlDMTRCMSAvKiBTeXN0ZW1TbGVlcExpc3RlbmVy
TWFjLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJMkUxMzQyQ0QyMTVBQTEwQTAwNzE5OUQyIC8qIFVJ
S2l0U29mdExpbmsubW0gaW4gU291cmNlcyAqLywKIAkJCQlBMTA4MjZGQTFGNTc2MjkyMDA0Nzcy
QUMgLyogV2ViUGFuZWwubW0gaW4gU291cmNlcyAqLywKIAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVw
bG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BB
TC9wYWwvaW9zL1VJS2l0U29mdExpbmsuaCBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvaW9zL1VJ
S2l0U29mdExpbmsuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45MTNkNzJlOGViZjhjZjk3YmI5NGEwZTBiNDM1NWIy
NWZmZTVjZTA1Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9pb3Mv
VUlLaXRTb2Z0TGluay5oCkBAIC0wLDAgKzEsNDIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIw
MTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBg
YEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJ
QlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9u
Y2UKKworI2lmIFBMQVRGT1JNKElPUykKKworI2ltcG9ydCA8cGFsL3NwaS9pb3MvVUlLaXRTUEku
aD4KKyNpbXBvcnQgPHd0Zi9Tb2Z0TGlua2luZy5oPgorCitTT0ZUX0xJTktfRlJBTUVXT1JLX0ZP
Ul9IRUFERVIoUEFMLCBVSUtpdCkKKworU09GVF9MSU5LX0NMQVNTX0ZPUl9IRUFERVIoUEFMLCBV
SUtpdCwgTlNTaGFkb3cpCitTT0ZUX0xJTktfQ0xBU1NfRk9SX0hFQURFUihQQUwsIFVJS2l0LCBV
SUFwcGxpY2F0aW9uKQorU09GVF9MSU5LX0NMQVNTX0ZPUl9IRUFERVIoUEFMLCBVSUtpdCwgVUlT
Y3JlZW4pCitTT0ZUX0xJTktfQ0xBU1NfRk9SX0hFQURFUihQQUwsIFVJS2l0LCBVSUNvbG9yKQor
U09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9IRUFERVIoUEFMLCBVSUtpdCwgVUlBY2Nlc3NpYmlsaXR5
SXNHcmF5c2NhbGVFbmFibGVkLCBCT09MLCAodm9pZCksICgpKQorU09GVF9MSU5LX0ZVTkNUSU9O
X0ZPUl9IRUFERVIoUEFMLCBVSUtpdCwgVUlBY2Nlc3NpYmlsaXR5SXNJbnZlcnRDb2xvcnNFbmFi
bGVkLCBCT09MLCAodm9pZCksICgpKQorCisjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL1BBTC9wYWwvaW9zL1VJS2l0U29mdExpbmsubW0gYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFs
L2lvcy9VSUtpdFNvZnRMaW5rLm1tCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmMwYjQ1Nzk5NGQ5NzMyODlkMGFhNzI2
ZjdlZTFiM2JlNWRiMTU5MjgKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwv
cGFsL2lvcy9VSUtpdFNvZnRMaW5rLm1tCkBAIC0wLDAgKzEsNDIgQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoK
KyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRS
SUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICog
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJ
VFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkg
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisj
aW5jbHVkZSAiY29uZmlnLmgiCisKKyNpZiBQTEFURk9STShJT1MpCisKKyNpbXBvcnQgPHBhbC9z
cGkvaW9zL1VJS2l0U1BJLmg+CisjaW1wb3J0IDx3dGYvU29mdExpbmtpbmcuaD4KKworU09GVF9M
SU5LX0ZSQU1FV09SS19GT1JfU09VUkNFKFBBTCwgVUlLaXQpCisKK1NPRlRfTElOS19DTEFTU19G
T1JfU09VUkNFKFBBTCwgVUlLaXQsIE5TU2hhZG93KQorU09GVF9MSU5LX0NMQVNTX0ZPUl9TT1VS
Q0UoUEFMLCBVSUtpdCwgVUlBcHBsaWNhdGlvbikKK1NPRlRfTElOS19DTEFTU19GT1JfU09VUkNF
KFBBTCwgVUlLaXQsIFVJU2NyZWVuKQorU09GVF9MSU5LX0NMQVNTX0ZPUl9TT1VSQ0UoUEFMLCBV
SUtpdCwgVUlDb2xvcikKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfU09VUkNFKFBBTCwgVUlLaXQs
IFVJQWNjZXNzaWJpbGl0eUlzR3JheXNjYWxlRW5hYmxlZCwgQk9PTCwgKHZvaWQpLCAoKSkKK1NP
RlRfTElOS19GVU5DVElPTl9GT1JfU09VUkNFKFBBTCwgVUlLaXQsIFVJQWNjZXNzaWJpbGl0eUlz
SW52ZXJ0Q29sb3JzRW5hYmxlZCwgQk9PTCwgKHZvaWQpLCAoKSkKKworI2VuZGlmCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL2NvY29hL0ZvbnRBdHRyaWJ1dGVzQ29jb2EubW0g
Yi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL2NvY29hL0ZvbnRBdHRyaWJ1dGVzQ29jb2EubW0KaW5k
ZXggNTEyMmFiYjgzNGIyOGM3MmZiNzI5MGQ5NzYwNGEyMTk0Y2Y2ODM0Ny4uNDcwZTI5MmQzNjQy
NGQxODE5NzhjNGI4YTNiNmMxMjBlOGQzMjA1YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
ZWRpdGluZy9jb2NvYS9Gb250QXR0cmlidXRlc0NvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2VkaXRpbmcvY29jb2EvRm9udEF0dHJpYnV0ZXNDb2NvYS5tbQpAQCAtMjcsNyArMjcsNiBAQAog
I2ltcG9ydCAiRm9udEF0dHJpYnV0ZXMuaCIKIAogI2ltcG9ydCAiQ29sb3JDb2NvYS5oIgotI2lt
cG9ydCA8d3RmL1NvZnRMaW5raW5nLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9jb2NvYS9Gb250U2hhZG93Q29jb2EubW0gYi9T
b3VyY2UvV2ViQ29yZS9lZGl0aW5nL2NvY29hL0ZvbnRTaGFkb3dDb2NvYS5tbQppbmRleCBiNTRh
ZmM5YjhhYWE2MTY2YTlmZTJiZGYzMDAxNWJmMWU2ODk2ZDMyLi4wNWUwYTQ2ZjhmNGZiMzlmYTQx
YzQ4NzU4YzJlYTAzOGZjODI1YTY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5n
L2NvY29hL0ZvbnRTaGFkb3dDb2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL2Nv
Y29hL0ZvbnRTaGFkb3dDb2NvYS5tbQpAQCAtMzAsOCArMzAsNyBAQAogI2ltcG9ydCAiQ29sb3JN
YWMuaCIKIAogI2lmIFBMQVRGT1JNKElPUykKLVNPRlRfTElOS19GUkFNRVdPUktfRk9SX1NPVVJD
RShXZWJDb3JlLCBVSUtpdCkKLVNPRlRfTElOS19DTEFTU19GT1JfU09VUkNFKFdlYkNvcmUsIFVJ
S2l0LCBOU1NoYWRvdykKKyNpbXBvcnQgPHBhbC9pb3MvVUlLaXRTb2Z0TGluay5oPgogI2VuZGlm
CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTQxLDcgKzQwLDcgQEAgUmV0YWluUHRyPE5TU2hh
ZG93PiBGb250U2hhZG93OjpjcmVhdGVTaGFkb3coKSBjb25zdAogI2lmIFVTRShBUFBLSVQpCiAg
ICAgYXV0byBzaGFkb3cgPSBhZG9wdE5TKFtOU1NoYWRvdyBuZXddKTsKICNlbGlmIFBMQVRGT1JN
KElPUykKLSAgICBhdXRvIHNoYWRvdyA9IGFkb3B0TlMoW2dldF9VSUtpdF9OU1NoYWRvd0NsYXNz
KCkgbmV3XSk7CisgICAgYXV0byBzaGFkb3cgPSBhZG9wdE5TKFtQQUw6OmdldF9VSUtpdF9OU1No
YWRvd0NsYXNzKCkgbmV3XSk7CiAjZW5kaWYKICAgICBbc2hhZG93IHNldFNoYWRvd0NvbG9yOnBs
YXRmb3JtQ29sb3IoY29sb3IpXTsKICAgICBbc2hhZG93IHNldFNoYWRvd09mZnNldDpvZmZzZXRd
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvQ29s
b3JDb2NvYS5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0NvbG9y
Q29jb2EubW0KaW5kZXggYWI2MTQ3OTFiZjllZjQ2MzBiZDA1NTUxZWYwNTE0ZDI2YWNiZWI1MC4u
MmY3MzliODBlODc0YzQ4ZGQ0NzhlYWRkNDM4OTgzYTAyY2UzMWUxNSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvQ29sb3JDb2NvYS5tbQorKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9Db2xvckNvY29hLm1tCkBAIC0y
NywxMyArMjcsMTAgQEAKICNpbXBvcnQgIkNvbG9yQ29jb2EuaCIKIAogI2ltcG9ydCAiQ29sb3JN
YWMuaCIKLSNpbXBvcnQgPHd0Zi9Tb2Z0TGlua2luZy5oPgogCiAjaWYgUExBVEZPUk0oSU9TKQor
I2ltcG9ydCA8cGFsL2lvcy9VSUtpdFNvZnRMaW5rLmg+CiAjaW1wb3J0IDxwYWwvc3BpL2lvcy9V
SUtpdFNQSS5oPgotCi1TT0ZUX0xJTktfRlJBTUVXT1JLX0ZPUl9TT1VSQ0UoV2ViQ29yZSwgVUlL
aXQpCi1TT0ZUX0xJTktfQ0xBU1NfRk9SX1NPVVJDRShXZWJDb3JlLCBVSUtpdCwgVUlDb2xvcikK
ICNlbmRpZgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC01MSw3ICs0OCw3IEBAIE5TQ29sb3Ig
KnBsYXRmb3JtQ29sb3IoY29uc3QgQ29sb3ImIGNvbG9yKQogCiBVSUNvbG9yICpwbGF0Zm9ybUNv
bG9yKGNvbnN0IENvbG9yJiBjb2xvcikKIHsKLSAgICByZXR1cm4gW2dldF9VSUtpdF9VSUNvbG9y
Q2xhc3MoKSBfZGlzYW1iaWd1YXRlZF9kdWVfdG9fQ0lJbWFnZV9jb2xvcldpdGhDR0NvbG9yOmNh
Y2hlZENHQ29sb3IoY29sb3IpXTsKKyAgICByZXR1cm4gW1BBTDo6Z2V0X1VJS2l0X1VJQ29sb3JD
bGFzcygpIF9kaXNhbWJpZ3VhdGVkX2R1ZV90b19DSUltYWdlX2NvbG9yV2l0aENHQ29sb3I6Y2Fj
aGVkQ0dDb2xvcihjb2xvcildOwogfQogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2lvcy9QbGF0Zm9ybVNjcmVlbklPUy5tbSBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2lvcy9QbGF0Zm9ybVNjcmVlbklPUy5tbQppbmRleCAwNWI2Y2UzNzE1Yzg1NjY5Mjkz
OTJmZWZkNTAwYjE4Zjk4MjI1MDEyLi5jNTI3MDdkNjY5NzNkNjFjZGUxYTI3YjFhNGExMjg3ZWQ1
MmFmMTUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvUGxhdGZvcm1T
Y3JlZW5JT1MubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1BsYXRmb3JtU2Ny
ZWVuSU9TLm1tCkBAIC0zOCwxNSArMzgsOSBAQAogI2ltcG9ydCAiSW50UmVjdC5oIgogI2ltcG9y
dCAiV0FLV2luZG93LmgiCiAjaW1wb3J0ICJXaWRnZXQuaCIKKyNpbXBvcnQgPHBhbC9pb3MvVUlL
aXRTb2Z0TGluay5oPgogI2ltcG9ydCA8cGFsL3NwaS9pb3MvTW9iaWxlR2VzdGFsdFNQSS5oPgog
I2ltcG9ydCA8cGFsL3NwaS9pb3MvVUlLaXRTUEkuaD4KLSNpbXBvcnQgPHd0Zi9Tb2Z0TGlua2lu
Zy5oPgotCi1TT0ZUX0xJTktfRlJBTUVXT1JLX0ZPUl9TT1VSQ0UoV2ViQ29yZSwgVUlLaXQpCi1T
T0ZUX0xJTktfQ0xBU1NfRk9SX1NPVVJDRShXZWJDb3JlLCBVSUtpdCwgVUlBcHBsaWNhdGlvbikK
LVNPRlRfTElOS19DTEFTU19GT1JfU09VUkNFKFdlYkNvcmUsIFVJS2l0LCBVSVNjcmVlbikKLVNP
RlRfTElOS19GVU5DVElPTl9GT1JfU09VUkNFKFdlYkNvcmUsIFVJS2l0LCBVSUFjY2Vzc2liaWxp
dHlJc0dyYXlzY2FsZUVuYWJsZWQsIEJPT0wsICh2b2lkKSwgKCkpCi1TT0ZUX0xJTktfRlVOQ1RJ
T05fRk9SX1NPVVJDRShXZWJDb3JlLCBVSUtpdCwgVUlBY2Nlc3NpYmlsaXR5SXNJbnZlcnRDb2xv
cnNFbmFibGVkLCBCT09MLCAodm9pZCksICgpKQogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAg
LTY0LDEyICs1OCwxMiBAQCBpbnQgc2NyZWVuRGVwdGhQZXJDb21wb25lbnQoV2lkZ2V0KikKIAog
Ym9vbCBzY3JlZW5Jc01vbm9jaHJvbWUoV2lkZ2V0KikKIHsKLSAgICByZXR1cm4gc29mdExpbmtV
SUtpdFVJQWNjZXNzaWJpbGl0eUlzR3JheXNjYWxlRW5hYmxlZCgpOworICAgIHJldHVybiBQQUw6
OnNvZnRMaW5rVUlLaXRVSUFjY2Vzc2liaWxpdHlJc0dyYXlzY2FsZUVuYWJsZWQoKTsKIH0KIAog
Ym9vbCBzY3JlZW5IYXNJbnZlcnRlZENvbG9ycygpCiB7Ci0gICAgcmV0dXJuIHNvZnRMaW5rVUlL
aXRVSUFjY2Vzc2liaWxpdHlJc0ludmVydENvbG9yc0VuYWJsZWQoKTsKKyAgICByZXR1cm4gUEFM
Ojpzb2Z0TGlua1VJS2l0VUlBY2Nlc3NpYmlsaXR5SXNJbnZlcnRDb2xvcnNFbmFibGVkKCk7CiB9
CiAKIGJvb2wgc2NyZWVuU3VwcG9ydHNFeHRlbmRlZENvbG9yKFdpZGdldCopCkBAIC0xMzUsMTYg
KzEyOSwxNiBAQCBmbG9hdCBzY3JlZW5QUElGYWN0b3IoKQogCiBGbG9hdFNpemUgc2NyZWVuU2l6
ZSgpCiB7Ci0gICAgaWYgKGRldmljZUhhc0lQYWRDYXBhYmlsaXR5KCkgJiYgW1tnZXRfVUlLaXRf
VUlBcHBsaWNhdGlvbkNsYXNzKCkgc2hhcmVkQXBwbGljYXRpb25dIF9pc0NsYXNzaWNdKQorICAg
IGlmIChkZXZpY2VIYXNJUGFkQ2FwYWJpbGl0eSgpICYmIFtbUEFMOjpnZXRfVUlLaXRfVUlBcHBs
aWNhdGlvbkNsYXNzKCkgc2hhcmVkQXBwbGljYXRpb25dIF9pc0NsYXNzaWNdKQogICAgICAgICBy
ZXR1cm4geyAzMjAsIDQ4MCB9OwotICAgIHJldHVybiBGbG9hdFNpemUoW1tnZXRfVUlLaXRfVUlT
Y3JlZW5DbGFzcygpIG1haW5TY3JlZW5dIF9yZWZlcmVuY2VCb3VuZHNdLnNpemUpOworICAgIHJl
dHVybiBGbG9hdFNpemUoW1tQQUw6OmdldF9VSUtpdF9VSVNjcmVlbkNsYXNzKCkgbWFpblNjcmVl
bl0gX3JlZmVyZW5jZUJvdW5kc10uc2l6ZSk7CiB9CiAKIEZsb2F0U2l6ZSBhdmFpbGFibGVTY3Jl
ZW5TaXplKCkKIHsKLSAgICBpZiAoZGV2aWNlSGFzSVBhZENhcGFiaWxpdHkoKSAmJiBbW2dldF9V
SUtpdF9VSUFwcGxpY2F0aW9uQ2xhc3MoKSBzaGFyZWRBcHBsaWNhdGlvbl0gX2lzQ2xhc3NpY10p
CisgICAgaWYgKGRldmljZUhhc0lQYWRDYXBhYmlsaXR5KCkgJiYgW1tQQUw6OmdldF9VSUtpdF9V
SUFwcGxpY2F0aW9uQ2xhc3MoKSBzaGFyZWRBcHBsaWNhdGlvbl0gX2lzQ2xhc3NpY10pCiAgICAg
ICAgIHJldHVybiB7IDMyMCwgNDgwIH07Ci0gICAgcmV0dXJuIEZsb2F0U2l6ZShbZ2V0X1VJS2l0
X1VJU2NyZWVuQ2xhc3MoKSBtYWluU2NyZWVuXS5ib3VuZHMuc2l6ZSk7CisgICAgcmV0dXJuIEZs
b2F0U2l6ZShbUEFMOjpnZXRfVUlLaXRfVUlTY3JlZW5DbGFzcygpIG1haW5TY3JlZW5dLmJvdW5k
cy5zaXplKTsKIH0KIAogI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspICYmIF9faGFzX2luY2x1
ZGUoPFdlYktpdEFkZGl0aW9ucy9QbGF0Zm9ybVNjcmVlbklPUy5tbT4pCkBAIC0xNTksNyArMTUz
LDcgQEAgRmxvYXRTaXplIG92ZXJyaWRlU2NyZWVuU2l6ZSgpCiBmbG9hdCBzY3JlZW5TY2FsZUZh
Y3RvcihVSVNjcmVlbiAqc2NyZWVuKQogewogICAgIGlmICghc2NyZWVuKQotICAgICAgICBzY3Jl
ZW4gPSBbZ2V0X1VJS2l0X1VJU2NyZWVuQ2xhc3MoKSBtYWluU2NyZWVuXTsKKyAgICAgICAgc2Ny
ZWVuID0gW1BBTDo6Z2V0X1VJS2l0X1VJU2NyZWVuQ2xhc3MoKSBtYWluU2NyZWVuXTsKIAogICAg
IHJldHVybiBzY3JlZW4uc2NhbGU7CiB9Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>