<?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>199640</bug_id>
          
          <creation_ts>2019-07-09 14:21:05 -0700</creation_ts>
          <short_desc>Move AutofillElements.{h,cpp} from editing/ios to editing/cocoa since they&apos;re used on macOS</short_desc>
          <delta_ts>2019-07-09 15:11:19 -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>New Bugs</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="Alex Christensen">achristensen</reporter>
          <assigned_to name="Alex Christensen">achristensen</assigned_to>
          <cc>cdumez</cc>
    
    <cc>ryanhaddad</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1551428</commentid>
    <comment_count>0</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2019-07-09 14:21:05 -0700</bug_when>
    <thetext>Move AutofillElements.{h,cpp} from editing/ios to editing/cocoa since they&apos;re used on macOS</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1551429</commentid>
    <comment_count>1</comment_count>
      <attachid>373765</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2019-07-09 14:21:46 -0700</bug_when>
    <thetext>Created attachment 373765
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1551434</commentid>
    <comment_count>2</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2019-07-09 14:30:17 -0700</bug_when>
    <thetext>http://trac.webkit.org/r247279</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1551435</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-07-09 14:33:40 -0700</bug_when>
    <thetext>&lt;rdar://problem/52853105&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1551448</commentid>
    <comment_count>4</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2019-07-09 14:56:15 -0700</bug_when>
    <thetext>This broke the build:
/Volumes/Data/slave/mojave-release/build/Source/WebKitLegacy/mac/DOM/DOMHTMLInputElement.mm:55:9: fatal error: &apos;WebCore/AutofillElements.h&apos; file not found
#import &lt;WebCore/AutofillElements.h&gt;
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
https://build.webkit.org/builders/Apple%20Mojave%20Release%20%28Build%29/builds/6818/steps/compile-webkit/logs/stdio</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1551461</commentid>
    <comment_count>5</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2019-07-09 15:11:19 -0700</bug_when>
    <thetext>http://trac.webkit.org/r247282</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>373765</attachid>
            <date>2019-07-09 14:21:46 -0700</date>
            <delta_ts>2019-07-09 14:25:45 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-199640-20190709142146.patch</filename>
            <type>text/plain</type>
            <size>24903</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI0NzI3OCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE3IEBACisyMDE5LTA3LTA5ICBBbGV4IENo
cmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgTW92ZSBBdXRv
ZmlsbEVsZW1lbnRzLntoLGNwcH0gZnJvbSBlZGl0aW5nL2lvcyB0byBlZGl0aW5nL2NvY29hIHNp
bmNlIHRoZXkncmUgdXNlZCBvbiBtYWNPUworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTk5NjQwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgKiBTb3VyY2VzQ29jb2EudHh0OgorICAgICAgICAqIFdlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBlZGl0aW5nL2NvY29hL0F1dG9m
aWxsRWxlbWVudHMuY3BwOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9lZGl0aW5nL2lvcy9B
dXRvZmlsbEVsZW1lbnRzLmNwcC4KKyAgICAgICAgKiBlZGl0aW5nL2NvY29hL0F1dG9maWxsRWxl
bWVudHMuaDogQ29waWVkIGZyb20gU291cmNlL1dlYkNvcmUvZWRpdGluZy9pb3MvQXV0b2ZpbGxF
bGVtZW50cy5oLgorICAgICAgICAqIGVkaXRpbmcvaW9zL0F1dG9maWxsRWxlbWVudHMuY3BwOiBS
ZW1vdmVkLgorICAgICAgICAqIGVkaXRpbmcvaW9zL0F1dG9maWxsRWxlbWVudHMuaDogUmVtb3Zl
ZC4KKwogMjAxOS0wNy0wOSAgRGV2aW4gUm91c3NvICA8ZHJvdXNzb0BhcHBsZS5jb20+CiAKICAg
ICAgICAgV2ViIEluc3BlY3RvcjogQ2FudmFzOiByZXBsYWNlIFdURjo6VmVjdG9yIHdpdGggc3Rk
Ojppbml0aWFsaXplcl9saXN0IGluIENhbGxUcmFjZXIgdG8gYXZvaWQgZHluYW1pYyBhbGxvY2F0
aW9ucwpJbmRleDogU291cmNlL1dlYkNvcmUvU291cmNlc0NvY29hLnR4dAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViQ29yZS9Tb3VyY2VzQ29jb2EudHh0CShyZXZpc2lvbiAyNDcyNjYpCisrKyBT
b3VyY2UvV2ViQ29yZS9Tb3VyY2VzQ29jb2EudHh0CSh3b3JraW5nIGNvcHkpCkBAIC03OCw2ICs3
OCw3IEBAIGRvbS9pb3MvVG91Y2hFdmVudHMuY3BwCiBlZGl0aW5nL1NlbGVjdGlvblJlY3RHYXRo
ZXJlci5jcHAKIGVkaXRpbmcvU21hcnRSZXBsYWNlQ0YuY3BwCiAKK2VkaXRpbmcvY29jb2EvQXV0
b2ZpbGxFbGVtZW50cy5jcHAKIGVkaXRpbmcvY29jb2EvRGF0YURldGVjdGlvbi5tbQogZWRpdGlu
Zy9jb2NvYS9EaWN0aW9uYXJ5TG9va3VwLm1tCiBlZGl0aW5nL2NvY29hL0VkaXRvckNvY29hLm1t
CkBAIC05OSw4ICsxMDAsNiBAQCBlZGl0aW5nL21hYy9GcmFtZVNlbGVjdGlvbk1hYy5tbQogZWRp
dGluZy9tYWMvVGV4dEFsdGVybmF0aXZlV2l0aFJhbmdlLm1tCiBlZGl0aW5nL21hYy9UZXh0VW5k
b0luc2VydGlvbk1hcmt1cE1hYy5tbQogCi1lZGl0aW5nL2lvcy9BdXRvZmlsbEVsZW1lbnRzLmNw
cAotCiBmaWxlYXBpL0ZpbGVDb2NvYS5tbQogCiBodG1sL3NoYWRvdy9JbWFnZUNvbnRyb2xzUm9v
dEVsZW1lbnQuY3BwCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2oKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAyNDcyNjYpCisrKyBTb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHdvcmtpbmcgY29weSkKQEAgLTE0NDUs
NyArMTQ0NSw2IEBACiAJCTUxNjEwM0FGMUNBREJBNzcwMDE2QjRDNyAvKiBJREJWYWx1ZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTE2MTAzQUUxQ0FE
QjlBMzAwMTZCNEM3IC8qIElEQlZhbHVlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKIAkJNTE2MkM3RjUxMUY3N0VGQjAwNjEyRUZFIC8qIFNjaGVtZVJl
Z2lzdHJ5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1
MTYyQzdGMzExRjc3RUZCMDA2MTJFRkUgLyogU2NoZW1lUmVnaXN0cnkuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk1MTY2RDNDRDFFOEVENDhGMDBB
RDYyRTMgLyogU3RvcmFnZVR5cGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDUxNjZEM0NDMUU4RUQ0MTEwMEFENjJFMyAvKiBTdG9yYWdlVHlwZS5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07Ci0JCTUxNjk5RUU0
MUY2MDhDRDUwMEQ1N0QwNiAvKiBBdXRvZmlsbEVsZW1lbnRzLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MTY5OUVFMjFGNjA4Q0Q1MDBENTdEMDYgLyog
QXV0b2ZpbGxFbGVtZW50cy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CiAJCTUxNkM2MjIwMTk1MEQ0ODcwMDMzN0U3NSAvKiBHYW1lcGFkRXZlbnQuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTE2QzYyMUQx
OTUwRDQ4NzAwMzM3RTc1IC8qIEdhbWVwYWRFdmVudC5jcHAgKi87IH07CiAJCTUxNkM2MjIxMTk1
MEQ0ODcwMDMzN0U3NSAvKiBHYW1lcGFkRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxNkM2MjFFMTk1MEQ0ODcwMDMzN0U3NSAvKiBHYW1lcGFk
RXZlbnQuaCAqLzsgfTsKIAkJNTE2RDdENzAxQkI1RjBCRDAwQUY3Qzc3IC8qIElEQkNvbm5lY3Rp
b25Ub1NlcnZlckRlbGVnYXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA1MTg1RkNCRDFCQjVDQjc3MDAxMjg5OEYgLyogSURCQ29ubmVjdGlvblRvU2Vy
dmVyRGVsZWdhdGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OwpAQCAtODExNyw4ICs4MTE2LDYgQEAKIAkJNTE2NDVCNTMxQjlGODg5QjAwRjc4OUNFIC8q
IElEQlZlcnNpb25DaGFuZ2VFdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBJREJWZXJzaW9uQ2hhbmdlRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
NTE2NDVCNTQxQjlGODhFODAwRjc4OUNFIC8qIElEQkN1cnNvci5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJREJDdXJzb3IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk1MTY2RDNDQzFFOEVENDExMDBBRDYyRTMgLyogU3RvcmFnZVR5cGUuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3RvcmFnZVR5cGUuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKLQkJNTE2OTlFRTExRjYwOENENTAwRDU3RDA2IC8qIEF1dG9maWxsRWxl
bWVudHMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQXV0b2ZpbGxFbGVtZW50cy5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTUxNjk5RUUyMUY2MDhDRDUwMEQ1N0QwNiAvKiBBdXRv
ZmlsbEVsZW1lbnRzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEF1dG9maWxsRWxlbWVudHMuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTE2QkI3OTIwQ0U5MUU2ODAwNTEyRjc5IC8qIEpTVHJl
ZVdhbGtlckN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBK
U1RyZWVXYWxrZXJDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1MTZD
NjIxRDE5NTBENDg3MDAzMzdFNzUgLyogR2FtZXBhZEV2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEdhbWVwYWRFdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTUxNkM2MjFFMTk1MEQ0ODcwMDMzN0U3NSAvKiBHYW1lcGFkRXZlbnQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gR2FtZXBhZEV2ZW50Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CkBAIC04OTIyLDYgKzg5MTksOCBAQAogCQk1Q0IzN0ZGRDFDNjJE
Mjc4MDBGMjAxODggLyogU2Nyb2xsQW5pbWF0b3JNb2NrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFNjcm9sbEFuaW1hdG9yTW9jay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk1Q0JDOERBQTFBQUEzMDIyMDBFMUM4MDMgLyogTWVkaWFBY2Nlc3NpYmlsaXR5U29m
dExpbmsuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWVkaWFBY2Nl
c3NpYmlsaXR5U29mdExpbmsuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0JD
OERBQjFBQUEzMDIyMDBFMUM4MDMgLyogTWVkaWFBY2Nlc3NpYmlsaXR5U29mdExpbmsuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWVkaWFBY2Nlc3NpYmlsaXR5U29mdExpbmsu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNUNDQzI3MDYyMkQ1M0I2ODAwOTY0RkEw
IC8qIEF1dG9maWxsRWxlbWVudHMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
QXV0b2ZpbGxFbGVtZW50cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1Q0NDMjcw
NzIyRDUzQjY5MDA5NjRGQTAgLyogQXV0b2ZpbGxFbGVtZW50cy5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBBdXRvZmlsbEVsZW1lbnRzLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJNUNERDgzMzkxRTQzMjRCQjAwNjIxRTgzIC8qIFJlYWx0aW1lSW5j
b21pbmdWaWRlb1NvdXJjZUNvY29hLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3Bw
OyBwYXRoID0gUmVhbHRpbWVJbmNvbWluZ1ZpZGVvU291cmNlQ29jb2EubW07IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTVDREQ4MzM5MUU0MzI0QkIwMDYyMUU5MiAvKiBSZWFsdGltZUlu
Y29taW5nVmlkZW9Tb3VyY2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gUmVhbHRpbWVJbmNvbWluZ1ZpZGVvU291cmNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJNUNERDgzM0ExRTQzMjRCQjAwNjIxRTgzIC8qIFJlYWx0aW1lSW5jb21pbmdWaWRl
b1NvdXJjZUNvY29hLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlYWx0aW1l
SW5jb21pbmdWaWRlb1NvdXJjZUNvY29hLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBA
IC0xNTYwNiw2ICsxNTYwNSw3IEBACiAJCQkJRkQyREJGMTMxMkIwNDhBMzAwRUQ5OEM2IC8qIEF1
ZGlvVG9vbGJveC5mcmFtZXdvcmsgaW4gRnJhbWV3b3JrcyAqLywKIAkJCQkxQUIzM0RBNTEyNTUx
RTMyMDAyNDQ1N0EgLyogSU9LaXQuZnJhbWV3b3JrIGluIEZyYW1ld29ya3MgKi8sCiAJCQkJOTNG
MTlCMTYwODI0NUU1OTAwMUU5QUJDIC8qIEphdmFTY3JpcHRDb3JlLmZyYW1ld29yayBpbiBGcmFt
ZXdvcmtzICovLAorCQkJCTFDMDIyRjAwMjJDRkVENjgwMDZERjAxQiAvKiBsaWJjb21wcmVzc2lv
bi50YmQgaW4gRnJhbWV3b3JrcyAqLywKIAkJCQk5M0YxOUIxNzA4MjQ1RTU5MDAxRTlBQkMgLyog
bGliaWN1Y29yZS5keWxpYiBpbiBGcmFtZXdvcmtzICovLAogCQkJCTFDRkFFMzIzMEE2RDZBM0Yw
MDMyNTkzRCAvKiBsaWJvYmpjLmR5bGliIGluIEZyYW1ld29ya3MgKi8sCiAJCQkJMUMwOUQwNTkx
RTMxQzZBOTAwNzI1RjE4IC8qIGxpYlBBTC5hIGluIEZyYW1ld29ya3MgKi8sCkBAIC0xNTYxMyw3
ICsxNTYxMyw2IEBACiAJCQkJMzc5OTE5QjIxMjAwREU1MDAwRUEwNDFDIC8qIGxpYnouZHlsaWIg
aW4gRnJhbWV3b3JrcyAqLywKIAkJCQlBODhBRDUyRjA5NTI0QjkyMDAxREQxOTYgLyogUXVhcnR6
Q29yZS5mcmFtZXdvcmsgaW4gRnJhbWV3b3JrcyAqLywKIAkJCQk1RkUxRDI5MjE3OEZEMUYzMDAx
QUEzQzMgLyogU2VjdXJpdHkuZnJhbWV3b3JrIGluIEZyYW1ld29ya3MgKi8sCi0JCQkJMUMwMjJG
MDAyMkNGRUQ2ODAwNkRGMDFCIC8qIGxpYmNvbXByZXNzaW9uLnRiZCBpbiBGcmFtZXdvcmtzICov
LAogCQkJKTsKIAkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOwogCQl9
OwpAQCAtMTgwNDMsOCArMTgwNDIsNiBAQAogCQk0NDMyOTJDMTBFQkE2RDczMDBFNjIwMTYgLyog
aW9zICovID0gewogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKLQkJCQk1MTY5
OUVFMTFGNjA4Q0Q1MDBENTdEMDYgLyogQXV0b2ZpbGxFbGVtZW50cy5jcHAgKi8sCi0JCQkJNTE2
OTlFRTIxRjYwOENENTAwRDU3RDA2IC8qIEF1dG9maWxsRWxlbWVudHMuaCAqLywKIAkJCQlEMEJE
NEY1QTE0MDg4NTBGMDA2ODM5QjYgLyogRGljdGF0aW9uQ29tbWFuZElPUy5jcHAgKi8sCiAJCQkJ
RDBCRDRGNUIxNDA4ODUwRjAwNjgzOUI2IC8qIERpY3RhdGlvbkNvbW1hbmRJT1MuaCAqLywKIAkJ
CQlGRUQxM0QzOTBDRUE5MzQ2MDBEODk0NjYgLyogRWRpdG9ySU9TLm1tICovLApAQCAtMjA3ODcs
NiArMjA3ODQsOCBAQAogCQk3QzNFNTEwNzE4REY4RjEyMDBDMTEyRjcgLyogY29jb2EgKi8gPSB7
CiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJCWNoaWxkcmVuID0gKAorCQkJCTVDQ0MyNzA3MjJENTNC
NjkwMDk2NEZBMCAvKiBBdXRvZmlsbEVsZW1lbnRzLmNwcCAqLywKKwkJCQk1Q0NDMjcwNjIyRDUz
QjY4MDA5NjRGQTAgLyogQXV0b2ZpbGxFbGVtZW50cy5oICovLAogCQkJCUM1MjI3REVGMUMzQzZE
RDcwMEY1RUQ1NCAvKiBEYXRhRGV0ZWN0aW9uLmggKi8sCiAJCQkJQzUyMjdERjAxQzNDNkRENzAw
RjVFRDU0IC8qIERhdGFEZXRlY3Rpb24ubW0gKi8sCiAJCQkJOTM3RkYzRDYxQTEwMTMxQjAwOEVC
QTMxIC8qIERpY3Rpb25hcnlMb29rdXAubW0gKi8sCkBAIC0yODQwMCw3ICsyODM5OSw2IEBACiAJ
CQkJQTVBN0FBNDMxMzJGMEVDQzAwRDNBM0MyIC8qIEF1dG9jYXBpdGFsaXplVHlwZXMuaCBpbiBI
ZWFkZXJzICovLAogCQkJCTdDMTg0M0ZFMUM4QjcyODMwMDJFQjk3MyAvKiBBdXRvZmlsbC5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJN0MxRTk3MjgxQTlGOTgzNDAwN0JGMEZCIC8qIEF1dG9GaWxsQnV0
dG9uRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJNTE2OTlFRTQxRjYwOENENTAwRDU3RDA2
IC8qIEF1dG9maWxsRWxlbWVudHMuaCBpbiBIZWFkZXJzICovLAogCQkJCUM5RDQ2NzA1MUU2MEM0
NjUwMDgxOTVGQiAvKiBBdXRvcGxheUV2ZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQk0NTgzMEQ0
RTE2NzlCNEY4MDBBQ0Y4QzMgLyogQXV0b3Njcm9sbENvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICov
LAogCQkJCUE4Q0ZGMDRFMEExNTRGMDkwMDBBNDIzNCAvKiBBdXRvVGFibGVMYXlvdXQuaCBpbiBI
ZWFkZXJzICovLApJbmRleDogU291cmNlL1dlYkNvcmUvZWRpdGluZy9jb2NvYS9BdXRvZmlsbEVs
ZW1lbnRzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9lZGl0aW5nL2NvY29hL0F1
dG9maWxsRWxlbWVudHMuY3BwCShyZXZpc2lvbiAyNDcyNjYpCShmcm9tIFNvdXJjZS9XZWJDb3Jl
L2VkaXRpbmcvaW9zL0F1dG9maWxsRWxlbWVudHMuY3BwOjI0NzI2NikKKysrIFNvdXJjZS9XZWJD
b3JlL2VkaXRpbmcvY29jb2EvQXV0b2ZpbGxFbGVtZW50cy5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTAsMCArMSwxMjggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTcgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUg
bWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVk
ZSAiQXV0b2ZpbGxFbGVtZW50cy5oIgorCisjaW5jbHVkZSAiRm9jdXNDb250cm9sbGVyLmgiCisj
aW5jbHVkZSAiUGFnZS5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3N0YXRpYyBpbmxpbmUg
Ym9vbCBpc0F1dG9maWxsYWJsZUVsZW1lbnQoRWxlbWVudCYgbm9kZSkKK3sKKyAgICBpZiAoIWlz
PEhUTUxJbnB1dEVsZW1lbnQ+KG5vZGUpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBh
dXRvIGlucHV0RWxlbWVudCA9ICZkb3duY2FzdDxIVE1MSW5wdXRFbGVtZW50Pihub2RlKTsKKyAg
ICByZXR1cm4gaW5wdXRFbGVtZW50LT5pc1RleHRGaWVsZCgpIHx8IGlucHV0RWxlbWVudC0+aXNF
bWFpbEZpZWxkKCk7Cit9CisKK3N0YXRpYyBpbmxpbmUgUmVmUHRyPEhUTUxJbnB1dEVsZW1lbnQ+
IG5leHRBdXRvZmlsbGFibGVFbGVtZW50KE5vZGUqIHN0YXJ0Tm9kZSwgRm9jdXNDb250cm9sbGVy
JiBmb2N1c0NvbnRyb2xsZXIpCit7CisgICAgaWYgKCFpczxFbGVtZW50PihzdGFydE5vZGUpKQor
ICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgIFJlZlB0cjxFbGVtZW50PiBuZXh0RWxlbWVu
dCA9IGRvd25jYXN0PEVsZW1lbnQ+KHN0YXJ0Tm9kZSk7CisgICAgZG8geworICAgICAgICBuZXh0
RWxlbWVudCA9IGZvY3VzQ29udHJvbGxlci5uZXh0Rm9jdXNhYmxlRWxlbWVudCgqbmV4dEVsZW1l
bnQuZ2V0KCkpOworICAgIH0gd2hpbGUgKG5leHRFbGVtZW50ICYmICFpc0F1dG9maWxsYWJsZUVs
ZW1lbnQoKm5leHRFbGVtZW50LmdldCgpKSk7CisKKyAgICBpZiAoIW5leHRFbGVtZW50KQorICAg
ICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgIHJldHVybiAmZG93bmNhc3Q8SFRNTElucHV0RWxl
bWVudD4oKm5leHRFbGVtZW50KTsKK30KKworc3RhdGljIGlubGluZSBSZWZQdHI8SFRNTElucHV0
RWxlbWVudD4gcHJldmlvdXNBdXRvZmlsbGFibGVFbGVtZW50KE5vZGUqIHN0YXJ0Tm9kZSwgRm9j
dXNDb250cm9sbGVyJiBmb2N1c0NvbnRyb2xsZXIpCit7CisgICAgaWYgKCFpczxFbGVtZW50Pihz
dGFydE5vZGUpKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgIFJlZlB0cjxFbGVtZW50
PiBwcmV2aW91c0VsZW1lbnQgPSBkb3duY2FzdDxFbGVtZW50PihzdGFydE5vZGUpOworICAgIGRv
IHsKKyAgICAgICAgcHJldmlvdXNFbGVtZW50ID0gZm9jdXNDb250cm9sbGVyLnByZXZpb3VzRm9j
dXNhYmxlRWxlbWVudCgqcHJldmlvdXNFbGVtZW50LmdldCgpKTsKKyAgICB9IHdoaWxlIChwcmV2
aW91c0VsZW1lbnQgJiYgIWlzQXV0b2ZpbGxhYmxlRWxlbWVudCgqcHJldmlvdXNFbGVtZW50Lmdl
dCgpKSk7CisKKyAgICBpZiAoIXByZXZpb3VzRWxlbWVudCkKKyAgICAgICAgcmV0dXJuIG51bGxw
dHI7CisgICAgCisgICAgcmV0dXJuICZkb3duY2FzdDxIVE1MSW5wdXRFbGVtZW50PigqcHJldmlv
dXNFbGVtZW50KTsKK30KKworQXV0b2ZpbGxFbGVtZW50czo6QXV0b2ZpbGxFbGVtZW50cyhSZWZQ
dHI8SFRNTElucHV0RWxlbWVudD4mJiB1c2VybmFtZSwgUmVmUHRyPEhUTUxJbnB1dEVsZW1lbnQ+
JiYgcGFzc3dvcmQpCisgICAgOiBtX3VzZXJuYW1lKHVzZXJuYW1lKQorICAgICwgbV9wYXNzd29y
ZChwYXNzd29yZCkKK3sKK30KKworT3B0aW9uYWw8QXV0b2ZpbGxFbGVtZW50cz4gQXV0b2ZpbGxF
bGVtZW50czo6Y29tcHV0ZUF1dG9maWxsRWxlbWVudHMoUmVmPEhUTUxJbnB1dEVsZW1lbnQ+IHN0
YXJ0KQoreworICAgIGlmICghc3RhcnQtPmRvY3VtZW50KCkucGFnZSgpKQorICAgICAgICByZXR1
cm4gV1RGOjpudWxsb3B0OworICAgIEZvY3VzQ29udHJvbGxlciYgZm9jdXNDb250cm9sbGVyID0g
c3RhcnQtPmRvY3VtZW50KCkucGFnZSgpLT5mb2N1c0NvbnRyb2xsZXIoKTsKKyAgICBpZiAoc3Rh
cnQtPmlzUGFzc3dvcmRGaWVsZCgpKSB7CisgICAgICAgIFJlZlB0cjxIVE1MSW5wdXRFbGVtZW50
PiBwcmV2aW91c0VsZW1lbnQgPSBwcmV2aW91c0F1dG9maWxsYWJsZUVsZW1lbnQoc3RhcnQucHRy
KCksIGZvY3VzQ29udHJvbGxlcik7CisgICAgICAgIFJlZlB0cjxIVE1MSW5wdXRFbGVtZW50PiBu
ZXh0RWxlbWVudCA9IG5leHRBdXRvZmlsbGFibGVFbGVtZW50KHN0YXJ0LnB0cigpLCBmb2N1c0Nv
bnRyb2xsZXIpOworICAgICAgICBib29sIGhhc0R1cGxpY2F0ZVBhc3N3b3JkRWxlbWVudHMgPSAo
bmV4dEVsZW1lbnQgJiYgbmV4dEVsZW1lbnQtPmlzUGFzc3dvcmRGaWVsZCgpKSB8fCAocHJldmlv
dXNFbGVtZW50ICYmIHByZXZpb3VzRWxlbWVudC0+aXNQYXNzd29yZEZpZWxkKCkpOworICAgICAg
ICBpZiAoaGFzRHVwbGljYXRlUGFzc3dvcmRFbGVtZW50cykKKyAgICAgICAgICAgIHJldHVybiBX
VEY6Om51bGxvcHQ7CisKKyAgICAgICAgaWYgKHByZXZpb3VzRWxlbWVudCAmJiBpczxIVE1MSW5w
dXRFbGVtZW50PigqcHJldmlvdXNFbGVtZW50KSkgeworICAgICAgICAgICAgaWYgKHByZXZpb3Vz
RWxlbWVudC0+aXNUZXh0RmllbGQoKSkKKyAgICAgICAgICAgICAgICByZXR1cm4gQXV0b2ZpbGxF
bGVtZW50cyhXVEZNb3ZlKHByZXZpb3VzRWxlbWVudCksIFdURk1vdmUoc3RhcnQpKTsKKyAgICAg
ICAgfQorICAgIH0gZWxzZSB7CisgICAgICAgIFJlZlB0cjxIVE1MSW5wdXRFbGVtZW50PiBuZXh0
RWxlbWVudCA9IG5leHRBdXRvZmlsbGFibGVFbGVtZW50KHN0YXJ0LnB0cigpLCBmb2N1c0NvbnRy
b2xsZXIpOworICAgICAgICBpZiAobmV4dEVsZW1lbnQgJiYgaXM8SFRNTElucHV0RWxlbWVudD4o
Km5leHRFbGVtZW50KSkgeworICAgICAgICAgICAgaWYgKG5leHRFbGVtZW50LT5pc1Bhc3N3b3Jk
RmllbGQoKSkgeworICAgICAgICAgICAgICAgIFJlZlB0cjxIVE1MSW5wdXRFbGVtZW50PiBlbGVt
ZW50QWZ0ZXJuZXh0RWxlbWVudCA9IG5leHRBdXRvZmlsbGFibGVFbGVtZW50KG5leHRFbGVtZW50
LmdldCgpLCBmb2N1c0NvbnRyb2xsZXIpOworICAgICAgICAgICAgICAgIGJvb2wgaGFzRHVwbGlj
YXRlUGFzc3dvcmRFbGVtZW50cyA9IGVsZW1lbnRBZnRlcm5leHRFbGVtZW50ICYmIGVsZW1lbnRB
ZnRlcm5leHRFbGVtZW50LT5pc1Bhc3N3b3JkRmllbGQoKTsKKyAgICAgICAgICAgICAgICBpZiAo
aGFzRHVwbGljYXRlUGFzc3dvcmRFbGVtZW50cykKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJu
IFdURjo6bnVsbG9wdDsKKworICAgICAgICAgICAgICAgIHJldHVybiBBdXRvZmlsbEVsZW1lbnRz
KFdURk1vdmUoc3RhcnQpLCBXVEZNb3ZlKG5leHRFbGVtZW50KSk7CisgICAgICAgICAgICB9Cisg
ICAgICAgIH0KKyAgICB9CisKKyAgICBpZiAoc3RhcnQtPmlzUGFzc3dvcmRGaWVsZCgpKSB7Cisg
ICAgICAgIFJlZlB0cjxIVE1MSW5wdXRFbGVtZW50PiBwcmV2aW91c0VsZW1lbnQgPSBwcmV2aW91
c0F1dG9maWxsYWJsZUVsZW1lbnQoc3RhcnQucHRyKCksIGZvY3VzQ29udHJvbGxlcik7CisgICAg
ICAgIFJlZlB0cjxIVE1MSW5wdXRFbGVtZW50PiBuZXh0RWxlbWVudCA9IG5leHRBdXRvZmlsbGFi
bGVFbGVtZW50KHN0YXJ0LnB0cigpLCBmb2N1c0NvbnRyb2xsZXIpOworICAgICAgICBpZiAoIXBy
ZXZpb3VzRWxlbWVudCAmJiAhbmV4dEVsZW1lbnQpCisgICAgICAgICAgICByZXR1cm4gQXV0b2Zp
bGxFbGVtZW50cyhudWxscHRyLCBzdGFydC5wdHIoKSk7CisgICAgfQorICAgIHJldHVybiBXVEY6
Om51bGxvcHQ7Cit9CisKK3ZvaWQgQXV0b2ZpbGxFbGVtZW50czo6YXV0b2ZpbGwoU3RyaW5nIHVz
ZXJuYW1lLCBTdHJpbmcgcGFzc3dvcmQpCit7CisgICAgaWYgKG1fdXNlcm5hbWUpCisgICAgICAg
IG1fdXNlcm5hbWUtPnNldFZhbHVlRm9yVXNlcih1c2VybmFtZSk7CisgICAgaWYgKG1fcGFzc3dv
cmQpCisgICAgICAgIG1fcGFzc3dvcmQtPnNldFZhbHVlRm9yVXNlcihwYXNzd29yZCk7Cit9CisK
K30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvY29j
b2EvQXV0b2ZpbGxFbGVtZW50cy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2VkaXRp
bmcvY29jb2EvQXV0b2ZpbGxFbGVtZW50cy5oCShyZXZpc2lvbiAyNDcyNjYpCShmcm9tIFNvdXJj
ZS9XZWJDb3JlL2VkaXRpbmcvaW9zL0F1dG9maWxsRWxlbWVudHMuaDoyNDcyNjYpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9lZGl0aW5nL2NvY29hL0F1dG9maWxsRWxlbWVudHMuaAkod29ya2luZyBjb3B5
KQpAQCAtMCwwICsxLDQyIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE3IEFwcGxlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICog
YXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBB
TkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgIkhUTUxJbnB1dEVsZW1l
bnQuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBBdXRvZmlsbEVsZW1lbnRzIHsK
KyAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKK3B1YmxpYzoKKyAgICBXRUJDT1JFX0VYUE9S
VCBzdGF0aWMgT3B0aW9uYWw8QXV0b2ZpbGxFbGVtZW50cz4gY29tcHV0ZUF1dG9maWxsRWxlbWVu
dHMoUmVmPEhUTUxJbnB1dEVsZW1lbnQ+KTsKKyAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGF1dG9m
aWxsKFN0cmluZywgU3RyaW5nKTsKKworICAgIGNvbnN0IEhUTUxJbnB1dEVsZW1lbnQqIHVzZXJu
YW1lKCkgY29uc3QgeyByZXR1cm4gbV91c2VybmFtZS5nZXQoKTsgfQorcHJpdmF0ZToKKyAgICBB
dXRvZmlsbEVsZW1lbnRzKFJlZlB0cjxIVE1MSW5wdXRFbGVtZW50PiYmLCBSZWZQdHI8SFRNTElu
cHV0RWxlbWVudD4mJik7CisgICAgUmVmUHRyPEhUTUxJbnB1dEVsZW1lbnQ+IG1fdXNlcm5hbWU7
CisgICAgUmVmUHRyPEhUTUxJbnB1dEVsZW1lbnQ+IG1fcGFzc3dvcmQ7Cit9OworfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQoKUHJvcGVydHkgY2hhbmdlcyBvbjogU291cmNlL1dlYkNvcmUvZWRpdGlu
Zy9jb2NvYS9BdXRvZmlsbEVsZW1lbnRzLmgKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOmVvbC1zdHls
ZQojIyAtMCwwICsxICMjCituYXRpdmUKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBwcm9wZXJ0eQpB
ZGRlZDogc3ZuOmtleXdvcmRzCiMjIC0wLDAgKzEgIyMKK0RhdGUgQXV0aG9yIElkIFJldmlzaW9u
IEhlYWRVUkwKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBwcm9wZXJ0eQpJbmRleDogU291cmNlL1dl
YkNvcmUvZWRpdGluZy9pb3MvQXV0b2ZpbGxFbGVtZW50cy5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvZWRpdGluZy9pb3MvQXV0b2ZpbGxFbGVtZW50cy5jcHAJKHJldmlzaW9uIDI0
NzI2NikKKysrIFNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvaW9zL0F1dG9maWxsRWxlbWVudHMuY3Bw
CShub25leGlzdGVudCkKQEAgLTEsMTI4ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIw
MTcgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBg
YEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJ
QlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotICogU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAi
Y29uZmlnLmgiCi0jaW5jbHVkZSAiQXV0b2ZpbGxFbGVtZW50cy5oIgotCi0jaW5jbHVkZSAiRm9j
dXNDb250cm9sbGVyLmgiCi0jaW5jbHVkZSAiUGFnZS5oIgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7
Ci0KLXN0YXRpYyBpbmxpbmUgYm9vbCBpc0F1dG9maWxsYWJsZUVsZW1lbnQoRWxlbWVudCYgbm9k
ZSkKLXsKLSAgICBpZiAoIWlzPEhUTUxJbnB1dEVsZW1lbnQ+KG5vZGUpKQotICAgICAgICByZXR1
cm4gZmFsc2U7Ci0KLSAgICBhdXRvIGlucHV0RWxlbWVudCA9ICZkb3duY2FzdDxIVE1MSW5wdXRF
bGVtZW50Pihub2RlKTsKLSAgICByZXR1cm4gaW5wdXRFbGVtZW50LT5pc1RleHRGaWVsZCgpIHx8
IGlucHV0RWxlbWVudC0+aXNFbWFpbEZpZWxkKCk7Ci19Ci0KLXN0YXRpYyBpbmxpbmUgUmVmUHRy
PEhUTUxJbnB1dEVsZW1lbnQ+IG5leHRBdXRvZmlsbGFibGVFbGVtZW50KE5vZGUqIHN0YXJ0Tm9k
ZSwgRm9jdXNDb250cm9sbGVyJiBmb2N1c0NvbnRyb2xsZXIpCi17Ci0gICAgaWYgKCFpczxFbGVt
ZW50PihzdGFydE5vZGUpKQotICAgICAgICByZXR1cm4gbnVsbHB0cjsKLQotICAgIFJlZlB0cjxF
bGVtZW50PiBuZXh0RWxlbWVudCA9IGRvd25jYXN0PEVsZW1lbnQ+KHN0YXJ0Tm9kZSk7Ci0gICAg
ZG8gewotICAgICAgICBuZXh0RWxlbWVudCA9IGZvY3VzQ29udHJvbGxlci5uZXh0Rm9jdXNhYmxl
RWxlbWVudCgqbmV4dEVsZW1lbnQuZ2V0KCkpOwotICAgIH0gd2hpbGUgKG5leHRFbGVtZW50ICYm
ICFpc0F1dG9maWxsYWJsZUVsZW1lbnQoKm5leHRFbGVtZW50LmdldCgpKSk7Ci0KLSAgICBpZiAo
IW5leHRFbGVtZW50KQotICAgICAgICByZXR1cm4gbnVsbHB0cjsKLQotICAgIHJldHVybiAmZG93
bmNhc3Q8SFRNTElucHV0RWxlbWVudD4oKm5leHRFbGVtZW50KTsKLX0KLQotc3RhdGljIGlubGlu
ZSBSZWZQdHI8SFRNTElucHV0RWxlbWVudD4gcHJldmlvdXNBdXRvZmlsbGFibGVFbGVtZW50KE5v
ZGUqIHN0YXJ0Tm9kZSwgRm9jdXNDb250cm9sbGVyJiBmb2N1c0NvbnRyb2xsZXIpCi17Ci0gICAg
aWYgKCFpczxFbGVtZW50PihzdGFydE5vZGUpKQotICAgICAgICByZXR1cm4gbnVsbHB0cjsKLQot
ICAgIFJlZlB0cjxFbGVtZW50PiBwcmV2aW91c0VsZW1lbnQgPSBkb3duY2FzdDxFbGVtZW50Pihz
dGFydE5vZGUpOwotICAgIGRvIHsKLSAgICAgICAgcHJldmlvdXNFbGVtZW50ID0gZm9jdXNDb250
cm9sbGVyLnByZXZpb3VzRm9jdXNhYmxlRWxlbWVudCgqcHJldmlvdXNFbGVtZW50LmdldCgpKTsK
LSAgICB9IHdoaWxlIChwcmV2aW91c0VsZW1lbnQgJiYgIWlzQXV0b2ZpbGxhYmxlRWxlbWVudCgq
cHJldmlvdXNFbGVtZW50LmdldCgpKSk7Ci0KLSAgICBpZiAoIXByZXZpb3VzRWxlbWVudCkKLSAg
ICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAgCi0gICAgcmV0dXJuICZkb3duY2FzdDxIVE1MSW5w
dXRFbGVtZW50PigqcHJldmlvdXNFbGVtZW50KTsKLX0KLQotQXV0b2ZpbGxFbGVtZW50czo6QXV0
b2ZpbGxFbGVtZW50cyhSZWZQdHI8SFRNTElucHV0RWxlbWVudD4mJiB1c2VybmFtZSwgUmVmUHRy
PEhUTUxJbnB1dEVsZW1lbnQ+JiYgcGFzc3dvcmQpCi0gICAgOiBtX3VzZXJuYW1lKHVzZXJuYW1l
KQotICAgICwgbV9wYXNzd29yZChwYXNzd29yZCkKLXsKLX0KLQotT3B0aW9uYWw8QXV0b2ZpbGxF
bGVtZW50cz4gQXV0b2ZpbGxFbGVtZW50czo6Y29tcHV0ZUF1dG9maWxsRWxlbWVudHMoUmVmPEhU
TUxJbnB1dEVsZW1lbnQ+IHN0YXJ0KQotewotICAgIGlmICghc3RhcnQtPmRvY3VtZW50KCkucGFn
ZSgpKQotICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OwotICAgIEZvY3VzQ29udHJvbGxlciYg
Zm9jdXNDb250cm9sbGVyID0gc3RhcnQtPmRvY3VtZW50KCkucGFnZSgpLT5mb2N1c0NvbnRyb2xs
ZXIoKTsKLSAgICBpZiAoc3RhcnQtPmlzUGFzc3dvcmRGaWVsZCgpKSB7Ci0gICAgICAgIFJlZlB0
cjxIVE1MSW5wdXRFbGVtZW50PiBwcmV2aW91c0VsZW1lbnQgPSBwcmV2aW91c0F1dG9maWxsYWJs
ZUVsZW1lbnQoc3RhcnQucHRyKCksIGZvY3VzQ29udHJvbGxlcik7Ci0gICAgICAgIFJlZlB0cjxI
VE1MSW5wdXRFbGVtZW50PiBuZXh0RWxlbWVudCA9IG5leHRBdXRvZmlsbGFibGVFbGVtZW50KHN0
YXJ0LnB0cigpLCBmb2N1c0NvbnRyb2xsZXIpOwotICAgICAgICBib29sIGhhc0R1cGxpY2F0ZVBh
c3N3b3JkRWxlbWVudHMgPSAobmV4dEVsZW1lbnQgJiYgbmV4dEVsZW1lbnQtPmlzUGFzc3dvcmRG
aWVsZCgpKSB8fCAocHJldmlvdXNFbGVtZW50ICYmIHByZXZpb3VzRWxlbWVudC0+aXNQYXNzd29y
ZEZpZWxkKCkpOwotICAgICAgICBpZiAoaGFzRHVwbGljYXRlUGFzc3dvcmRFbGVtZW50cykKLSAg
ICAgICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7Ci0KLSAgICAgICAgaWYgKHByZXZpb3VzRWxl
bWVudCAmJiBpczxIVE1MSW5wdXRFbGVtZW50PigqcHJldmlvdXNFbGVtZW50KSkgewotICAgICAg
ICAgICAgaWYgKHByZXZpb3VzRWxlbWVudC0+aXNUZXh0RmllbGQoKSkKLSAgICAgICAgICAgICAg
ICByZXR1cm4gQXV0b2ZpbGxFbGVtZW50cyhXVEZNb3ZlKHByZXZpb3VzRWxlbWVudCksIFdURk1v
dmUoc3RhcnQpKTsKLSAgICAgICAgfQotICAgIH0gZWxzZSB7Ci0gICAgICAgIFJlZlB0cjxIVE1M
SW5wdXRFbGVtZW50PiBuZXh0RWxlbWVudCA9IG5leHRBdXRvZmlsbGFibGVFbGVtZW50KHN0YXJ0
LnB0cigpLCBmb2N1c0NvbnRyb2xsZXIpOwotICAgICAgICBpZiAobmV4dEVsZW1lbnQgJiYgaXM8
SFRNTElucHV0RWxlbWVudD4oKm5leHRFbGVtZW50KSkgewotICAgICAgICAgICAgaWYgKG5leHRF
bGVtZW50LT5pc1Bhc3N3b3JkRmllbGQoKSkgewotICAgICAgICAgICAgICAgIFJlZlB0cjxIVE1M
SW5wdXRFbGVtZW50PiBlbGVtZW50QWZ0ZXJuZXh0RWxlbWVudCA9IG5leHRBdXRvZmlsbGFibGVF
bGVtZW50KG5leHRFbGVtZW50LmdldCgpLCBmb2N1c0NvbnRyb2xsZXIpOwotICAgICAgICAgICAg
ICAgIGJvb2wgaGFzRHVwbGljYXRlUGFzc3dvcmRFbGVtZW50cyA9IGVsZW1lbnRBZnRlcm5leHRF
bGVtZW50ICYmIGVsZW1lbnRBZnRlcm5leHRFbGVtZW50LT5pc1Bhc3N3b3JkRmllbGQoKTsKLSAg
ICAgICAgICAgICAgICBpZiAoaGFzRHVwbGljYXRlUGFzc3dvcmRFbGVtZW50cykKLSAgICAgICAg
ICAgICAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKLQotICAgICAgICAgICAgICAgIHJldHVy
biBBdXRvZmlsbEVsZW1lbnRzKFdURk1vdmUoc3RhcnQpLCBXVEZNb3ZlKG5leHRFbGVtZW50KSk7
Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICBpZiAoc3RhcnQtPmlzUGFz
c3dvcmRGaWVsZCgpKSB7Ci0gICAgICAgIFJlZlB0cjxIVE1MSW5wdXRFbGVtZW50PiBwcmV2aW91
c0VsZW1lbnQgPSBwcmV2aW91c0F1dG9maWxsYWJsZUVsZW1lbnQoc3RhcnQucHRyKCksIGZvY3Vz
Q29udHJvbGxlcik7Ci0gICAgICAgIFJlZlB0cjxIVE1MSW5wdXRFbGVtZW50PiBuZXh0RWxlbWVu
dCA9IG5leHRBdXRvZmlsbGFibGVFbGVtZW50KHN0YXJ0LnB0cigpLCBmb2N1c0NvbnRyb2xsZXIp
OwotICAgICAgICBpZiAoIXByZXZpb3VzRWxlbWVudCAmJiAhbmV4dEVsZW1lbnQpCi0gICAgICAg
ICAgICByZXR1cm4gQXV0b2ZpbGxFbGVtZW50cyhudWxscHRyLCBzdGFydC5wdHIoKSk7Ci0gICAg
fQotICAgIHJldHVybiBXVEY6Om51bGxvcHQ7Ci19Ci0KLXZvaWQgQXV0b2ZpbGxFbGVtZW50czo6
YXV0b2ZpbGwoU3RyaW5nIHVzZXJuYW1lLCBTdHJpbmcgcGFzc3dvcmQpCi17Ci0gICAgaWYgKG1f
dXNlcm5hbWUpCi0gICAgICAgIG1fdXNlcm5hbWUtPnNldFZhbHVlRm9yVXNlcih1c2VybmFtZSk7
Ci0gICAgaWYgKG1fcGFzc3dvcmQpCi0gICAgICAgIG1fcGFzc3dvcmQtPnNldFZhbHVlRm9yVXNl
cihwYXNzd29yZCk7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL2VkaXRpbmcvaW9zL0F1dG9maWxsRWxlbWVudHMuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViQ29yZS9lZGl0aW5nL2lvcy9BdXRvZmlsbEVsZW1lbnRzLmgJKHJldmlzaW9uIDI0NzI2
NikKKysrIFNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvaW9zL0F1dG9maWxsRWxlbWVudHMuaAkobm9u
ZXhpc3RlbnQpCkBAIC0xLDQyICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTcgQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElT
JycKLSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JT
Ci0gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotICogU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi0g
KiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKLSAq
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiSFRNTElu
cHV0RWxlbWVudC5oIgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIEF1dG9maWxsRWxl
bWVudHMgewotICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwotcHVibGljOgotICAgIFdFQkNP
UkVfRVhQT1JUIHN0YXRpYyBPcHRpb25hbDxBdXRvZmlsbEVsZW1lbnRzPiBjb21wdXRlQXV0b2Zp
bGxFbGVtZW50cyhSZWY8SFRNTElucHV0RWxlbWVudD4pOwotICAgIFdFQkNPUkVfRVhQT1JUIHZv
aWQgYXV0b2ZpbGwoU3RyaW5nLCBTdHJpbmcpOwotCi0gICAgY29uc3QgSFRNTElucHV0RWxlbWVu
dCogdXNlcm5hbWUoKSBjb25zdCB7IHJldHVybiBtX3VzZXJuYW1lLmdldCgpOyB9Ci1wcml2YXRl
OgotICAgIEF1dG9maWxsRWxlbWVudHMoUmVmUHRyPEhUTUxJbnB1dEVsZW1lbnQ+JiYsIFJlZlB0
cjxIVE1MSW5wdXRFbGVtZW50PiYmKTsKLSAgICBSZWZQdHI8SFRNTElucHV0RWxlbWVudD4gbV91
c2VybmFtZTsKLSAgICBSZWZQdHI8SFRNTElucHV0RWxlbWVudD4gbV9wYXNzd29yZDsKLX07Ci19
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBTb3VyY2UvV2ViQ29y
ZS9lZGl0aW5nL2lvcy9BdXRvZmlsbEVsZW1lbnRzLmgKX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpEZWxldGVkOiBzdm46
ZW9sLXN0eWxlCiMjIC0xICswLDAgIyMKLW5hdGl2ZQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIHBy
b3BlcnR5CkRlbGV0ZWQ6IHN2bjprZXl3b3JkcwojIyAtMSArMCwwICMjCi1EYXRlIEF1dGhvciBJ
ZCBSZXZpc2lvbiBIZWFkVVJMClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgcHJvcGVydHkK
</data>
<flag name="review"
          id="389557"
          type_id="1"
          status="+"
          setter="cdumez"
    />
          </attachment>
      

    </bug>

</bugzilla>