<?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>69422</bug_id>
          
          <creation_ts>2011-10-05 07:24:48 -0700</creation_ts>
          <short_desc>Web Inspector: provide a way for persisting worker inspector state</short_desc>
          <delta_ts>2011-10-05 09:32:08 -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>Web Inspector (Deprecated)</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>69434</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Yury Semikhatsky">yurys</reporter>
          <assigned_to name="Yury Semikhatsky">yurys</assigned_to>
          <cc>apavlov</cc>
    
    <cc>bweinstein</cc>
    
    <cc>fishd</cc>
    
    <cc>joepeck</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>ossy</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>rik</cc>
    
    <cc>timothy</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>478335</commentid>
    <comment_count>0</comment_count>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2011-10-05 07:24:48 -0700</bug_when>
    <thetext>Worker inspector may have a state(e.g. breakpoints) that should be restored when inspected worker restarts.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>478378</commentid>
    <comment_count>1</comment_count>
      <attachid>109800</attachid>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2011-10-05 08:32:09 -0700</bug_when>
    <thetext>Created attachment 109800
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>478382</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-10-05 08:35:52 -0700</bug_when>
    <thetext>Please wait for approval from fishd@chromium.org before submitting because this patch contains changes to the Chromium public API.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>478411</commentid>
    <comment_count>3</comment_count>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2011-10-05 09:10:25 -0700</bug_when>
    <thetext>Committed r96710: &lt;http://trac.webkit.org/changeset/96710&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>478426</commentid>
    <comment_count>4</comment_count>
      <attachid>109800</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2011-10-05 09:31:05 -0700</bug_when>
    <thetext>Comment on attachment 109800
Patch

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

&gt; Source/WebCore/inspector/WorkerInspectorController.cpp:197
&gt; +    ASSERT(!m_inspectorFrontend);

It broke debug builds: 
../../../Source/WebCore/inspector/WorkerInspectorController.cpp: In member function &apos;void WebCore::WorkerInspectorController::restoreInspectorStateFromCookie(const WTF::String&amp;)&apos;:
../../../Source/WebCore/inspector/WorkerInspectorController.cpp:197:5: error: &apos;m_inspectorFrontend&apos; was not declared in this scope</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>478427</commentid>
    <comment_count>5</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2011-10-05 09:32:08 -0700</bug_when>
    <thetext>Oh, fix landed in http://trac.webkit.org/changeset/96713</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>109800</attachid>
            <date>2011-10-05 08:32:09 -0700</date>
            <delta_ts>2011-10-05 09:31:05 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-69422-20111005193207.patch</filename>
            <type>text/plain</type>
            <size>27617</size>
            <attacher name="Yury Semikhatsky">yurys</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTY2ODIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAwMzQ2OWNkMzMwM2QyOWI3
M2JmZWYyYzI2ZDgyNzU0ZDI1NzYwODg1Li5lNTU3N2FkNzVjOTE2MDM0YjhiOTIyMTNhMWUyODY3
MGQ2YWM0YTFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzcgQEAKKzIwMTEtMTAtMDUgIFl1cnkg
U2VtaWtoYXRza3kgIDx5dXJ5c0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgV2ViIEluc3BlY3Rv
cjogcHJvdmlkZSBhIHdheSBmb3IgcGVyc2lzdGluZyB3b3JrZXIgaW5zcGVjdG9yIHN0YXRlCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02OTQyMgorCisg
ICAgICAgIFdvcmtlciBpbnNwZWN0b3IgY2FuIHBlcnNpc3QgYW5kIHJlc3RvcmUgaXRzIHN0YXRl
LiBJbnNwZWN0b3JTdGF0ZUNsaWVudCBpcworICAgICAgICBleGN0cmFjdGVkIGludG8gYSBzZXBh
cmF0ZSBpbnRlcmZhY2UgYW5kIGhhcyBhIGN1c3RvbSBpbXBsZW1lbnRhdGlvbiBpbiBjYXNlCisg
ICAgICAgIG9mIHdvcmtlciBpbnNwZWN0b3IuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgKiBHTlVtYWtlZmlsZS5saXN0LmFtOgorICAgICAgICAqIFdl
YkNvcmUuZ3lwaToKKyAgICAgICAgKiBXZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvajoKKyAg
ICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogaW5z
cGVjdG9yL0luc3BlY3RvckNsaWVudC5oOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JT
dGF0ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JTdGF0ZTo6SW5zcGVjdG9yU3Rh
dGUpOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JTdGF0ZS5oOgorICAgICAgICAqIGlu
c3BlY3Rvci9JbnNwZWN0b3JTdGF0ZUNsaWVudC5oOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ2xpZW50LmguCisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0
b3JTdGF0ZUNsaWVudDo6fkluc3BlY3RvclN0YXRlQ2xpZW50KToKKyAgICAgICAgKFdlYkNvcmU6
Okluc3BlY3RvclN0YXRlQ2xpZW50Ojp1cGRhdGVJbnNwZWN0b3JTdGF0ZUNvb2tpZSk6CisgICAg
ICAgICogaW5zcGVjdG9yL1dvcmtlckluc3BlY3RvckNvbnRyb2xsZXIuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6V29ya2VySW5zcGVjdG9yQ29udHJvbGxlcjo6V29ya2VySW5zcGVjdG9yQ29udHJv
bGxlcik6CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJJbnNwZWN0b3JDb250cm9sbGVyOjpyZXN0
b3JlSW5zcGVjdG9yU3RhdGVGcm9tQ29va2llKToKKyAgICAgICAgKiBpbnNwZWN0b3IvV29ya2Vy
SW5zcGVjdG9yQ29udHJvbGxlci5oOgorICAgICAgICAqIHdvcmtlcnMvRGVmYXVsdFNoYXJlZFdv
cmtlclJlcG9zaXRvcnkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2hhcmVkV29ya2VyUHJveHk6
OnBvc3RNZXNzYWdlVG9QYWdlSW5zcGVjdG9yKToKKyAgICAgICAgKFdlYkNvcmU6OlNoYXJlZFdv
cmtlclByb3h5Ojp1cGRhdGVJbnNwZWN0b3JTdGF0ZUNvb2tpZSk6CisgICAgICAgICogd29ya2Vy
cy9Xb3JrZXJNZXNzYWdpbmdQcm94eS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJNZXNz
YWdpbmdQcm94eTo6dXBkYXRlSW5zcGVjdG9yU3RhdGVDb29raWUpOgorICAgICAgICAqIHdvcmtl
cnMvV29ya2VyTWVzc2FnaW5nUHJveHkuaDoKKyAgICAgICAgKiB3b3JrZXJzL1dvcmtlclJlcG9y
dGluZ1Byb3h5Lmg6CisKIDIwMTEtMTAtMDQgIEtlbnQgVGFtdXJhICA8dGtlbnRAY2hyb21pdW0u
b3JnPgogCiAgICAgICAgIFJlbW92ZSBOb2RlOjp3aWxsQmx1cigpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtIGIvU291cmNlL1dlYkNvcmUvR05VbWFrZWZp
bGUubGlzdC5hbQppbmRleCA1NzJhZmZlMWEwOTRiNDc1ZTA3YjU4ZTM1NDY4NGU2ZTYxYzFiMzVk
Li4wOWU3MmVhMzNjNjFhODk0MWQ1MTFmYzEzOGI0NzQ0YmY1YjUxYzgyIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCisrKyBiL1NvdXJjZS9XZWJDb3JlL0dO
VW1ha2VmaWxlLmxpc3QuYW0KQEAgLTIwMzQsNiArMjAzNCw3IEBAIHdlYmNvcmVfc291cmNlcyAr
PSBcCiAJU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclJ1bnRpbWVBZ2VudC5oIFwK
IAlTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yU3RhdGUuY3BwIFwKIAlTb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yU3RhdGUuaCBcCisJU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luc3BlY3RvclN0YXRlQ2xpZW50LmggXAogCVNvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9JbnNwZWN0b3JTdHlsZVNoZWV0LmNwcCBcCiAJU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0lu
c3BlY3RvclN0eWxlU2hlZXQuaCBcCiAJU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rv
clN0eWxlVGV4dEVkaXRvci5jcHAgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS5neXBpIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpCmluZGV4IGU1ZjkxZTQ5OWRiMGQ2
YWMxZTRkMTNmZTI3NjJmNmYzOTY0NDBlNmYuLjVmMzlmZThmZTRlN2UyNTJhNTEzOWE0MDA3MDM0
ZjU3NTk0YjExODYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkKQEAgLTI3MTIsNiArMjcxMiw3IEBACiAgICAg
ICAgICAgICAnaW5zcGVjdG9yL0luc3BlY3RvclJ1bnRpbWVBZ2VudC5oJywKICAgICAgICAgICAg
ICdpbnNwZWN0b3IvSW5zcGVjdG9yU3RhdGUuY3BwJywKICAgICAgICAgICAgICdpbnNwZWN0b3Iv
SW5zcGVjdG9yU3RhdGUuaCcsCisgICAgICAgICAgICAnaW5zcGVjdG9yL0luc3BlY3RvclN0YXRl
Q2xpZW50LmgnLAogICAgICAgICAgICAgJ2luc3BlY3Rvci9JbnNwZWN0b3JTdHlsZVNoZWV0LmNw
cCcsCiAgICAgICAgICAgICAnaW5zcGVjdG9yL0luc3BlY3RvclN0eWxlU2hlZXQuaCcsCiAgICAg
ICAgICAgICAnaW5zcGVjdG9yL0luc3BlY3RvclN0eWxlVGV4dEVkaXRvci5jcHAnLApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2ogYi9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagppbmRleCA0NjVjMjNlNDkz
YjA2ZDU0MTE2ZThjMzNlN2U5ZjE4ODA5ODRhNjk5Li5hMmI0ODlmNWJlODM3MzIxN2QyM2E1YThi
MGMzOWMxMzgxMTNmOTFmIDEwMDc1NQotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjcHJv
ai9XZWJDb3JlLnZjcHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJD
b3JlLnZjcHJvagpAQCAtNjg5MTAsNiArNjg5MTAsMTAgQEAKIAkJCQk+CiAJCQk8L0ZpbGU+CiAJ
CQk8RmlsZQorCQkJCVJlbGF0aXZlUGF0aD0iLi5caW5zcGVjdG9yXEluc3BlY3RvclN0YXRlQ2xp
ZW50LmgiCisJCQkJPgorCQkJPC9GaWxlPgorCQkJPEZpbGUKIAkJCQlSZWxhdGl2ZVBhdGg9Ii4u
XGluc3BlY3RvclxJbnNwZWN0b3JTdHlsZVNoZWV0LmNwcCIKIAkJCQk+CiAJCQk8L0ZpbGU+CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5k
ZXggZGEwZWEyNDYyMDVkNGY1YzlkYjdmNmI3MWM4YzQ4Yzg4ZGFjYWIwOS4uMGUyNDkwMjIxNTky
OWYxYmY0MzgyM2NiYzhjOTJjOWQ3ZTNjYzdiNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dl
YkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtNTc0Nyw2ICs1NzQ3LDcgQEAKIAkJ
RjNENEM0NzkxMkUwNzY2MzAwM0RBMTUwIC8qIEluc3BlY3RvckRPTURlYnVnZ2VyQWdlbnQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEYzRDRDNDc3MTJF
MDc2NjMwMDNEQTE1MCAvKiBJbnNwZWN0b3JET01EZWJ1Z2dlckFnZW50LmggKi87IH07CiAJCUYz
RjVDRjExMTJFRDgxQTgwMDg0QzU2OSAvKiBJbnNwZWN0b3JDb25zb2xlSW5zdHJ1bWVudGF0aW9u
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGM0Y1Q0Yx
MDEyRUQ4MUE4MDA4NEM1NjkgLyogSW5zcGVjdG9yQ29uc29sZUluc3RydW1lbnRhdGlvbi5oICov
OyB9OwogCQlGM0Y1Q0YxMzEyRUQ4MUIzMDA4NEM1NjkgLyogSW5zcGVjdG9yRGF0YWJhc2VJbnN0
cnVtZW50YXRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEYzRjVDRjEyMTJFRDgxQjMwMDg0QzU2OSAvKiBJbnNwZWN0b3JEYXRhYmFzZUluc3RydW1l
bnRhdGlvbi5oICovOyB9OworCQlGM0Y2OERBNjE0M0NBQzVBMDBDMkY4ODcgLyogSW5zcGVjdG9y
U3RhdGVDbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEYzRjY4REE1MTQzQ0FDNUEwMEMyRjg4NyAvKiBJbnNwZWN0b3JTdGF0ZUNsaWVudC5oICov
OyB9OwogCQlGNEVBRjRBRTEwQzc0MkIxMDA5MTAwRDMgLyogT3BlblR5cGVTYW5pdGl6ZXIuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjRFQUY0QUMx
MEM3NDJCMTAwOTEwMEQzIC8qIE9wZW5UeXBlU2FuaXRpemVyLmNwcCAqLzsgfTsKIAkJRjRFQUY0
QUYxMEM3NDJCMTAwOTEwMEQzIC8qIE9wZW5UeXBlU2FuaXRpemVyLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGNEVBRjRBRDEwQzc0MkIxMDA5MTAwRDMg
LyogT3BlblR5cGVTYW5pdGl6ZXIuaCAqLzsgfTsKIAkJRjUxNDJDNjkxMjNGMTJCMDAwRjVCRDRD
IC8qIExvY2FsaXplZE51bWJlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRjUxNDJDNjgxMjNGMTJCMDAwRjVCRDRDIC8qIExvY2FsaXplZE51bWJlci5o
ICovOyB9OwpAQCAtMTI1NDksNiArMTI1NTAsNyBAQAogCQlGM0Q0QzQ3NzEyRTA3NjYzMDAzREEx
NTAgLyogSW5zcGVjdG9yRE9NRGVidWdnZXJBZ2VudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBJbnNwZWN0b3JET01EZWJ1Z2dlckFnZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCUYzRjVDRjEwMTJFRDgxQTgwMDg0QzU2OSAvKiBJbnNwZWN0b3JDb25zb2xl
SW5zdHJ1bWVudGF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEluc3Bl
Y3RvckNvbnNvbGVJbnN0cnVtZW50YXRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJRjNGNUNGMTIxMkVEODFCMzAwODRDNTY5IC8qIEluc3BlY3RvckRhdGFiYXNlSW5zdHJ1bWVu
dGF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEluc3BlY3RvckRhdGFi
YXNlSW5zdHJ1bWVudGF0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUYzRjY4
REE1MTQzQ0FDNUEwMEMyRjg4NyAvKiBJbnNwZWN0b3JTdGF0ZUNsaWVudC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBJbnNwZWN0b3JTdGF0ZUNsaWVudC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQlGNEVBRjRBQzEwQzc0MkIxMDA5MTAwRDMgLyogT3BlblR5cGVT
YW5pdGl6ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gT3BlblR5
cGVTYW5pdGl6ZXIuY3BwOyBwYXRoID0gb3BlbnR5cGUvT3BlblR5cGVTYW5pdGl6ZXIuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlGNEVBRjRBRDEwQzc0MkIxMDA5MTAwRDMgLyog
T3BlblR5cGVTYW5pdGl6ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gT3Bl
blR5cGVTYW5pdGl6ZXIuaDsgcGF0aCA9IG9wZW50eXBlL09wZW5UeXBlU2FuaXRpemVyLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUY1MTQyQzY4MTIzRjEyQjAwMEY1QkQ0QyAvKiBM
b2NhbGl6ZWROdW1iZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTG9jYWxp
emVkTnVtYmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xMzY4OSw2ICsxMzY5
MSw3IEBACiAJCQkJN0FGMTFBNTkxMkU3Mjc0OTAwNjFGMjNDIC8qIEluc3BlY3RvclJ1bnRpbWVB
Z2VudC5oICovLAogCQkJCTRGQTNCOTA4MTI1Q0QxMjEwMDMwMEJBRCAvKiBJbnNwZWN0b3JTdGF0
ZS5jcHAgKi8sCiAJCQkJNEZBM0I5MDkxMjVDRDEyMjAwMzAwQkFEIC8qIEluc3BlY3RvclN0YXRl
LmggKi8sCisJCQkJRjNGNjhEQTUxNDNDQUM1QTAwQzJGODg3IC8qIEluc3BlY3RvclN0YXRlQ2xp
ZW50LmggKi8sCiAJCQkJODJBQjE3NkYxMjVDODI2NzAwQzUwNjlEIC8qIEluc3BlY3RvclN0eWxl
U2hlZXQuY3BwICovLAogCQkJCTgyQUIxNzcwMTI1QzgyNjcwMEM1MDY5RCAvKiBJbnNwZWN0b3JT
dHlsZVNoZWV0LmggKi8sCiAJCQkJODI4ODlCNEExM0M2MjM5MjAwOUE2MTU2IC8qIEluc3BlY3Rv
clN0eWxlVGV4dEVkaXRvci5jcHAgKi8sCkBAIC0yMzU1NSw2ICsyMzU1OCw3IEBACiAJCQkJQkNF
QjE3OUMxNDMzNzlGNTAwNTJFQUU5IC8qIFJlbmRlckJveFJlZ2lvbkluZm8uaCBpbiBIZWFkZXJz
ICovLAogCQkJCTU5MTAyRkJDMTQzMjdEM0IwMDNDOUQwNCAvKiBDb250ZW50U2VhcmNoVXRpbHMu
aCBpbiBIZWFkZXJzICovLAogCQkJCTFBQTg0RjA1MTQzQkE3QkQwMDUxRDE1MyAvKiBTY3JvbGxF
bGFzdGljaXR5Q29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8sCisJCQkJRjNGNjhEQTYxNDNDQUM1
QTAwQzJGODg3IC8qIEluc3BlY3RvclN0YXRlQ2xpZW50LmggaW4gSGVhZGVycyAqLywKIAkJCSk7
CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDbGllbnQuaCBiL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDbGllbnQuaAppbmRleCA5M2I1YjEwZTI3ODVm
YTUzZTQ3Y2U1Zjk1OGFlMmE2NTQyZGIyNDgxLi41M2VmMmU5YTYwODlkMjA2MDYzZmNjMDhhZDA4
YjAxMThkZjRhOTA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVj
dG9yQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNsaWVu
dC5oCkBAIC0yOCw2ICsyOCw3IEBACiAjZGVmaW5lIEluc3BlY3RvckNsaWVudF9oCiAKICNpbmNs
dWRlICJJbnNwZWN0b3JGcm9udGVuZENoYW5uZWwuaCIKKyNpbmNsdWRlICJJbnNwZWN0b3JTdGF0
ZUNsaWVudC5oIgogI2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKQEAgLTM2LDcgKzM3LDcgQEAgY2xhc3MgSW5zcGVjdG9yQ29udHJvbGxlcjsKIGNsYXNzIE5v
ZGU7CiBjbGFzcyBQYWdlOwogCi1jbGFzcyBJbnNwZWN0b3JDbGllbnQgOiBwdWJsaWMgSW5zcGVj
dG9yRnJvbnRlbmRDaGFubmVsIHsKK2NsYXNzIEluc3BlY3RvckNsaWVudCA6IHB1YmxpYyBJbnNw
ZWN0b3JGcm9udGVuZENoYW5uZWwsIHB1YmxpYyBJbnNwZWN0b3JTdGF0ZUNsaWVudCB7CiBwdWJs
aWM6CiAgICAgdmlydHVhbCB+SW5zcGVjdG9yQ2xpZW50KCkgeyB9CiAKQEAgLTQ3LDExICs0OCw2
IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgaGlnaGxpZ2h0KCkgPSAwOwogICAgIHZpcnR1
YWwgdm9pZCBoaWRlSGlnaGxpZ2h0KCkgPSAwOwogCi0gICAgLy8gTmF2aWdhdGlvbiBjYW4gY2F1
c2Ugc29tZSBXZWJLaXQgaW1wbGVtZW50YXRpb25zIHRvIGNoYW5nZSB0aGUgdmlldyAvIHBhZ2Ug
LyBpbnNwZWN0b3IgY29udHJvbGxlciBpbnN0YW5jZS4KLSAgICAvLyBIb3dldmVyLCB0aGVyZSBh
cmUgc29tZSBpbnNwZWN0b3IgY29udHJvbGxlciBzdGF0ZXMgdGhhdCBzaG91bGQgc3Vydml2ZSBu
YXZpZ2F0aW9uIChzdWNoIGFzIHRyYWNraW5nIHJlc291cmNlcwotICAgIC8vIG9yIHJlY29yZGlu
ZyB0aW1lbGluZSkuIEZvbGxvd2luZyBjYWxsYmFja3MgYWxsb3cgZW1iZWRkZXJzIHRvIHRyYWNr
IHRoZXNlIHN0YXRlcy4KLSAgICB2aXJ0dWFsIHZvaWQgdXBkYXRlSW5zcGVjdG9yU3RhdGVDb29r
aWUoY29uc3QgU3RyaW5nJikgeyB9OwotCiAgICAgdmlydHVhbCB2b2lkIGNsZWFyQnJvd3NlckNh
Y2hlKCkgeyB9CiAgICAgdmlydHVhbCB2b2lkIGNsZWFyQnJvd3NlckNvb2tpZXMoKSB7IH0KIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclN0YXRlLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JTdGF0ZS5jcHAKaW5kZXggMDI2MTRh
MDM4YTNlNWY2ODgxNWQ0ZWVjYjUzOWE1YjkxMDljZWE1OC4uY2Q4MDE1MzM1Yjk4YjA2NzdhNGVm
MjI0MjE0NDNjZjMwN2YyMjliNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L0luc3BlY3RvclN0YXRlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVj
dG9yU3RhdGUuY3BwCkBAIC0zMSwxMSArMzEsMTEgQEAKIAogI2lmIEVOQUJMRShJTlNQRUNUT1Ip
CiAKLSNpbmNsdWRlICJJbnNwZWN0b3JDbGllbnQuaCIKKyNpbmNsdWRlICJJbnNwZWN0b3JTdGF0
ZUNsaWVudC5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLUluc3BlY3RvclN0YXRlOjpJbnNw
ZWN0b3JTdGF0ZShJbnNwZWN0b3JDbGllbnQqIGNsaWVudCkKK0luc3BlY3RvclN0YXRlOjpJbnNw
ZWN0b3JTdGF0ZShJbnNwZWN0b3JTdGF0ZUNsaWVudCogY2xpZW50KQogICAgIDogbV9jbGllbnQo
Y2xpZW50KQogICAgICwgbV9wcm9wZXJ0aWVzKEluc3BlY3Rvck9iamVjdDo6Y3JlYXRlKCkpCiAg
ICAgLCBtX2lzT25NdXRlKGZhbHNlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL0luc3BlY3RvclN0YXRlLmggYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9y
U3RhdGUuaAppbmRleCA0NDA3YzQwM2QxNGUzODM4NTM1ODNjMDQyOTQ2YjgyZmJlNWE5YzQ1Li5h
YjEyYWFlN2Y5ZmZhMDJkZThjNjJhODk1MGE5NDAzODU4YzRhNGNhIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yU3RhdGUuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5zcGVjdG9yU3RhdGUuaApAQCAtNDEsMTEgKzQxLDExIEBACiAKIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgSW5zcGVjdG9yQ2xpZW50OworY2xhc3MgSW5zcGVjdG9y
U3RhdGVDbGllbnQ7CiAKIGNsYXNzIEluc3BlY3RvclN0YXRlIHsKIHB1YmxpYzoKLSAgICBJbnNw
ZWN0b3JTdGF0ZShJbnNwZWN0b3JDbGllbnQqKTsKKyAgICBJbnNwZWN0b3JTdGF0ZShJbnNwZWN0
b3JTdGF0ZUNsaWVudCopOwogICAgIHZpcnR1YWwgfkluc3BlY3RvclN0YXRlKCkge30KIAogICAg
IHZvaWQgbG9hZEZyb21Db29raWUoY29uc3QgU3RyaW5nJiBpbnNwZWN0b3JTdGF0ZUNvb2tpZSk7
CkBAIC02Nyw3ICs2Nyw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCB1cGRhdGVDb29raWUoKTsKICAg
ICB2b2lkIHNldFZhbHVlKGNvbnN0IFN0cmluZyYgcHJvcGVydHlOYW1lLCBQYXNzUmVmUHRyPElu
c3BlY3RvclZhbHVlPik7CiAKLSAgICBJbnNwZWN0b3JDbGllbnQqIG1fY2xpZW50OworICAgIElu
c3BlY3RvclN0YXRlQ2xpZW50KiBtX2NsaWVudDsKICAgICBSZWZQdHI8SW5zcGVjdG9yT2JqZWN0
PiBtX3Byb3BlcnRpZXM7CiAgICAgYm9vbCBtX2lzT25NdXRlOwogfTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JTdGF0ZUNsaWVudC5oIGIvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclN0YXRlQ2xpZW50LmgKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjE0Yzcw
Nzg1YmM2MGMyNzExYzZjNzc3ODk1NTU3OTkyOGVkYmVkNAotLS0gL2Rldi9udWxsCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JTdGF0ZUNsaWVudC5oCkBAIC0wLDAgKzEs
NDUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6Cisg
KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBB
UFBMRSBDT01QVVRFUiwgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQ
UExFIENPTVBVVEVSLCBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1Ig
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAq
IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBJbnNwZWN0b3JTdGF0ZUNsaWVudF9oCisjZGVmaW5l
IEluc3BlY3RvclN0YXRlQ2xpZW50X2gKKworI2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+CisKK25h
bWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgSW5zcGVjdG9yU3RhdGVDbGllbnQgeworcHVibGlj
OgorICAgIHZpcnR1YWwgfkluc3BlY3RvclN0YXRlQ2xpZW50KCkgeyB9CisKKyAgICAvLyBOYXZp
Z2F0aW9uIGNhbiBjYXVzZSBzb21lIFdlYktpdCBpbXBsZW1lbnRhdGlvbnMgdG8gY2hhbmdlIHRo
ZSB2aWV3IC8gcGFnZSAvIGluc3BlY3RvciBjb250cm9sbGVyIGluc3RhbmNlLgorICAgIC8vIEhv
d2V2ZXIsIHRoZXJlIGFyZSBzb21lIGluc3BlY3RvciBjb250cm9sbGVyIHN0YXRlcyB0aGF0IHNo
b3VsZCBzdXJ2aXZlIG5hdmlnYXRpb24gKHN1Y2ggYXMgdHJhY2tpbmcgcmVzb3VyY2VzCisgICAg
Ly8gb3IgcmVjb3JkaW5nIHRpbWVsaW5lKSBhbmQgd29ya2VyIHJlc3RhcnQuIEZvbGxvd2luZyBj
YWxsYmFja3MgYWxsb3cgZW1iZWRkZXJzIHRvIHRyYWNrIHRoZXNlIHN0YXRlcy4KKyAgICB2aXJ0
dWFsIHZvaWQgdXBkYXRlSW5zcGVjdG9yU3RhdGVDb29raWUoY29uc3QgU3RyaW5nJikgeyB9Owor
fTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gIWRlZmluZWQoSW5zcGVj
dG9yU3RhdGVDbGllbnRfaCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9X
b3JrZXJJbnNwZWN0b3JDb250cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9X
b3JrZXJJbnNwZWN0b3JDb250cm9sbGVyLmNwcAppbmRleCA3NWVhOGQ0NDZjYjRiNmFmMDYyNjg4
MzkyMGM3Y2Y4YmRkNjgwN2U1Li5iZDE0MGNkMzA1MzRjODVmNGVmYmYwZTE4YjNiM2U5MmEyOTIw
MWJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvV29ya2VySW5zcGVjdG9y
Q29udHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL1dvcmtlckluc3Bl
Y3RvckNvbnRyb2xsZXIuY3BwCkBAIC00Miw2ICs0Miw3IEBACiAjaW5jbHVkZSAiSW5zcGVjdG9y
RnJvbnRlbmRDaGFubmVsLmgiCiAjaW5jbHVkZSAiSW5zcGVjdG9yUnVudGltZUFnZW50LmgiCiAj
aW5jbHVkZSAiSW5zcGVjdG9yU3RhdGUuaCIKKyNpbmNsdWRlICJJbnNwZWN0b3JTdGF0ZUNsaWVu
dC5oIgogI2luY2x1ZGUgIkluc3RydW1lbnRpbmdBZ2VudHMuaCIKICNpbmNsdWRlICJXb3JrZXJD
b250ZXh0LmgiCiAjaW5jbHVkZSAiV29ya2VyRGVidWdnZXJBZ2VudC5oIgpAQCAtODcsMTEgKzg4
LDI2IEBAIHByaXZhdGU6CiAgICAgV29ya2VyQ29udGV4dCogbV93b3JrZXJDb250ZXh0OwogfTsK
IAorY2xhc3MgV29ya2VyU3RhdGVDbGllbnQgOiBwdWJsaWMgSW5zcGVjdG9yU3RhdGVDbGllbnQg
eworcHVibGljOgorICAgIFdvcmtlclN0YXRlQ2xpZW50KFdvcmtlckNvbnRleHQqIGNvbnRleHQp
IDogbV93b3JrZXJDb250ZXh0KGNvbnRleHQpIHsgfQorICAgIHZpcnR1YWwgfldvcmtlclN0YXRl
Q2xpZW50KCkgeyB9CisKK3ByaXZhdGU6CisgICAgdmlydHVhbCB2b2lkIHVwZGF0ZUluc3BlY3Rv
clN0YXRlQ29va2llKGNvbnN0IFN0cmluZyYgY29va2llKQorICAgIHsKKyAgICAgICAgbV93b3Jr
ZXJDb250ZXh0LT50aHJlYWQoKS0+d29ya2VyUmVwb3J0aW5nUHJveHkoKS51cGRhdGVJbnNwZWN0
b3JTdGF0ZUNvb2tpZShjb29raWUpOworICAgIH0KKworICAgIFdvcmtlckNvbnRleHQqIG1fd29y
a2VyQ29udGV4dDsKK307CisKIH0KIAogV29ya2VySW5zcGVjdG9yQ29udHJvbGxlcjo6V29ya2Vy
SW5zcGVjdG9yQ29udHJvbGxlcihXb3JrZXJDb250ZXh0KiB3b3JrZXJDb250ZXh0KQogICAgIDog
bV93b3JrZXJDb250ZXh0KHdvcmtlckNvbnRleHQpCi0gICAgLCBtX3N0YXRlKGFkb3B0UHRyKG5l
dyBJbnNwZWN0b3JTdGF0ZSgwKSkpCisgICAgLCBtX3N0YXRlQ2xpZW50KGFkb3B0UHRyKG5ldyBX
b3JrZXJTdGF0ZUNsaWVudCh3b3JrZXJDb250ZXh0KSkpCisgICAgLCBtX3N0YXRlKGFkb3B0UHRy
KG5ldyBJbnNwZWN0b3JTdGF0ZShtX3N0YXRlQ2xpZW50LmdldCgpKSkpCiAgICAgLCBtX2luc3Ry
dW1lbnRpbmdBZ2VudHMoYWRvcHRQdHIobmV3IEluc3RydW1lbnRpbmdBZ2VudHMoKSkpCiAgICAg
LCBtX2luamVjdGVkU2NyaXB0TWFuYWdlcihJbmplY3RlZFNjcmlwdE1hbmFnZXI6OmNyZWF0ZUZv
cldvcmtlcigpKQogI2lmIEVOQUJMRShKQVZBU0NSSVBUX0RFQlVHR0VSKQpAQCAtMTc2LDYgKzE5
MiwxNyBAQCB2b2lkIFdvcmtlckluc3BlY3RvckNvbnRyb2xsZXI6OmRpc2Nvbm5lY3RGcm9udGVu
ZCgpCiAgICAgbV9mcm9udGVuZENoYW5uZWwuY2xlYXIoKTsKIH0KIAordm9pZCBXb3JrZXJJbnNw
ZWN0b3JDb250cm9sbGVyOjpyZXN0b3JlSW5zcGVjdG9yU3RhdGVGcm9tQ29va2llKGNvbnN0IFN0
cmluZyYgaW5zcGVjdG9yQ29va2llKQoreworICAgIEFTU0VSVCghbV9pbnNwZWN0b3JGcm9udGVu
ZCk7CisgICAgY29ubmVjdEZyb250ZW5kKCk7CisgICAgbV9zdGF0ZS0+bG9hZEZyb21Db29raWUo
aW5zcGVjdG9yQ29va2llKTsKKworI2lmIEVOQUJMRShKQVZBU0NSSVBUX0RFQlVHR0VSKQorICAg
IG1fZGVidWdnZXJBZ2VudC0+cmVzdG9yZSgpOworI2VuZGlmCit9CisKIHZvaWQgV29ya2VySW5z
cGVjdG9yQ29udHJvbGxlcjo6ZGlzcGF0Y2hNZXNzYWdlRnJvbUZyb250ZW5kKGNvbnN0IFN0cmlu
ZyYgbWVzc2FnZSkKIHsKICAgICBpZiAobV9iYWNrZW5kRGlzcGF0Y2hlcikKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9Xb3JrZXJJbnNwZWN0b3JDb250cm9sbGVyLmggYi9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvV29ya2VySW5zcGVjdG9yQ29udHJvbGxlci5oCmluZGV4
IDYxNjk3NDFhMTNmYjM3YTU0ZDFmMjM0MTY0ODk4YmI5ZjczZWEyNTYuLjM5OGQ5MjNhZTJjZTNk
NzE1ZjQ0YWE3YmYwNzhhZjgyNmI2ODFlZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9Xb3JrZXJJbnNwZWN0b3JDb250cm9sbGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL1dvcmtlckluc3BlY3RvckNvbnRyb2xsZXIuaApAQCAtNTEsNiArNTEsNyBAQCBj
bGFzcyBJbnNwZWN0b3JGcm9udGVuZENoYW5uZWw7CiBjbGFzcyBJbnNwZWN0b3JJbnN0cnVtZW50
YXRpb247CiBjbGFzcyBJbnNwZWN0b3JSdW50aW1lQWdlbnQ7CiBjbGFzcyBJbnNwZWN0b3JTdGF0
ZTsKK2NsYXNzIEluc3BlY3RvclN0YXRlQ2xpZW50OwogY2xhc3MgSW5zdHJ1bWVudGluZ0FnZW50
czsKIGNsYXNzIFdvcmtlckNvbnRleHQ7CiAKQEAgLTYzLDEyICs2NCwxNCBAQCBwdWJsaWM6CiAK
ICAgICB2b2lkIGNvbm5lY3RGcm9udGVuZCgpOwogICAgIHZvaWQgZGlzY29ubmVjdEZyb250ZW5k
KCk7CisgICAgdm9pZCByZXN0b3JlSW5zcGVjdG9yU3RhdGVGcm9tQ29va2llKGNvbnN0IFN0cmlu
ZyYgaW5zcGVjdG9yQ29va2llKTsKICAgICB2b2lkIGRpc3BhdGNoTWVzc2FnZUZyb21Gcm9udGVu
ZChjb25zdCBTdHJpbmcmKTsKIAogcHJpdmF0ZToKICAgICBmcmllbmQgSW5zdHJ1bWVudGluZ0Fn
ZW50cyogaW5zdHJ1bWVudGF0aW9uRm9yV29ya2VyQ29udGV4dChXb3JrZXJDb250ZXh0Kik7CiAK
ICAgICBXb3JrZXJDb250ZXh0KiBtX3dvcmtlckNvbnRleHQ7CisgICAgT3duUHRyPEluc3BlY3Rv
clN0YXRlQ2xpZW50PiBtX3N0YXRlQ2xpZW50OwogICAgIE93blB0cjxJbnNwZWN0b3JTdGF0ZT4g
bV9zdGF0ZTsKICAgICBPd25QdHI8SW5zdHJ1bWVudGluZ0FnZW50cz4gbV9pbnN0cnVtZW50aW5n
QWdlbnRzOwogICAgIE93blB0cjxJbmplY3RlZFNjcmlwdE1hbmFnZXI+IG1faW5qZWN0ZWRTY3Jp
cHRNYW5hZ2VyOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9EZWZhdWx0U2hh
cmVkV29ya2VyUmVwb3NpdG9yeS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL0RlZmF1bHRT
aGFyZWRXb3JrZXJSZXBvc2l0b3J5LmNwcAppbmRleCBlNWZkODU5N2YyN2M5ZmVkZjViMmI2NjIx
YzM3YzUxOGViZTEwNWMxLi5jZjI0ZjhmNGUwMWJlNzQxNTdhZWYxMzdlMGVhZTNjY2QzNWNiMzI5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL0RlZmF1bHRTaGFyZWRXb3JrZXJS
ZXBvc2l0b3J5LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL0RlZmF1bHRTaGFyZWRX
b3JrZXJSZXBvc2l0b3J5LmNwcApAQCAtODMsNiArODMsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVh
bCB2b2lkIHBvc3RDb25zb2xlTWVzc2FnZVRvV29ya2VyT2JqZWN0KE1lc3NhZ2VTb3VyY2UsIE1l
c3NhZ2VUeXBlLCBNZXNzYWdlTGV2ZWwsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgaW50IGxpbmVO
dW1iZXIsIGNvbnN0IFN0cmluZyYgc291cmNlVVJMKTsKICNpZiBFTkFCTEUoSU5TUEVDVE9SKQog
ICAgIHZpcnR1YWwgdm9pZCBwb3N0TWVzc2FnZVRvUGFnZUluc3BlY3Rvcihjb25zdCBTdHJpbmcm
KTsKKyAgICB2aXJ0dWFsIHZvaWQgdXBkYXRlSW5zcGVjdG9yU3RhdGVDb29raWUoY29uc3QgU3Ry
aW5nJik7CiAjZW5kaWYKICAgICB2aXJ0dWFsIHZvaWQgd29ya2VyQ29udGV4dENsb3NlZCgpOwog
ICAgIHZpcnR1YWwgdm9pZCB3b3JrZXJDb250ZXh0RGVzdHJveWVkKCk7CkBAIC0xODQsNiArMTg1
LDEyIEBAIHZvaWQgU2hhcmVkV29ya2VyUHJveHk6OnBvc3RDb25zb2xlTWVzc2FnZVRvV29ya2Vy
T2JqZWN0KE1lc3NhZ2VTb3VyY2Ugc291cmNlLCBNCiAjaWYgRU5BQkxFKElOU1BFQ1RPUikKIHZv
aWQgU2hhcmVkV29ya2VyUHJveHk6OnBvc3RNZXNzYWdlVG9QYWdlSW5zcGVjdG9yKGNvbnN0IFN0
cmluZyYpCiB7CisgICAgbm90SW1wbGVtZW50ZWQoKTsKK30KKwordm9pZCBTaGFyZWRXb3JrZXJQ
cm94eTo6dXBkYXRlSW5zcGVjdG9yU3RhdGVDb29raWUoY29uc3QgU3RyaW5nJikKK3sKKyAgICBu
b3RJbXBsZW1lbnRlZCgpOwogfQogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3dvcmtlcnMvV29ya2VyTWVzc2FnaW5nUHJveHkuY3BwIGIvU291cmNlL1dlYkNvcmUvd29ya2Vy
cy9Xb3JrZXJNZXNzYWdpbmdQcm94eS5jcHAKaW5kZXggZGRiMDYxOTY3NjlmMGVkNTE5ZGU3MjNk
NDMzNjI2NmE2ZGQ1YTIwOS4uZTk3ZTljM2IyMTBmMjI4OWIwMmM4Yjg3NzhkNDNmYWViZTU4ZDZh
MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJNZXNzYWdpbmdQcm94
eS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJNZXNzYWdpbmdQcm94eS5j
cHAKQEAgLTQwLDYgKzQwLDcgQEAKICNpbmNsdWRlICJFeGNlcHRpb25Db2RlLmgiCiAjaW5jbHVk
ZSAiSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmgiCiAjaW5jbHVkZSAiTWVzc2FnZUV2ZW50Lmgi
CisjaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQuaCIKICNpbmNsdWRlICJTY3JpcHRDYWxsU3RhY2su
aCIKICNpbmNsdWRlICJTY3JpcHRFeGVjdXRpb25Db250ZXh0LmgiCiAjaW5jbHVkZSAiV29ya2Vy
LmgiCkBAIC00MzgsNiArNDM5LDExIEBAIHZvaWQgV29ya2VyTWVzc2FnaW5nUHJveHk6OnBvc3RN
ZXNzYWdlVG9QYWdlSW5zcGVjdG9yKGNvbnN0IFN0cmluZyYgbWVzc2FnZSkKIHsKICAgICBtX3Nj
cmlwdEV4ZWN1dGlvbkNvbnRleHQtPnBvc3RUYXNrKFBvc3RNZXNzYWdlVG9QYWdlSW5zcGVjdG9y
VGFzazo6Y3JlYXRlKHRoaXMsIG1lc3NhZ2UpKTsKIH0KKwordm9pZCBXb3JrZXJNZXNzYWdpbmdQ
cm94eTo6dXBkYXRlSW5zcGVjdG9yU3RhdGVDb29raWUoY29uc3QgU3RyaW5nJikKK3sKKyAgICBu
b3RJbXBsZW1lbnRlZCgpOworfQogI2VuZGlmCiAKIHZvaWQgV29ya2VyTWVzc2FnaW5nUHJveHk6
OmNvbmZpcm1NZXNzYWdlRnJvbVdvcmtlck9iamVjdChib29sIGhhc1BlbmRpbmdBY3Rpdml0eSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyTWVzc2FnaW5nUHJveHku
aCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyTWVzc2FnaW5nUHJveHkuaAppbmRleCBj
ODNjNTc5YTlhNGMxODIyZTk2M2YyNDJlYzU2ZjEzYWVjNjYwZWViLi4zN2NkYjllMDY4YTczYTQ5
ZWVjZDcxY2Q2ZjYzNWZmN2E1YmNmYWQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3Jr
ZXJzL1dvcmtlck1lc3NhZ2luZ1Byb3h5LmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9X
b3JrZXJNZXNzYWdpbmdQcm94eS5oCkBAIC03MSw2ICs3MSw3IEBAIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKICAgICAgICAgdmlydHVhbCB2b2lkIHBvc3RDb25zb2xlTWVzc2FnZVRvV29ya2VyT2JqZWN0
KE1lc3NhZ2VTb3VyY2UsIE1lc3NhZ2VUeXBlLCBNZXNzYWdlTGV2ZWwsIGNvbnN0IFN0cmluZyYg
bWVzc2FnZSwgaW50IGxpbmVOdW1iZXIsIGNvbnN0IFN0cmluZyYgc291cmNlVVJMKTsKICNpZiBF
TkFCTEUoSU5TUEVDVE9SKQogICAgICAgICB2aXJ0dWFsIHZvaWQgcG9zdE1lc3NhZ2VUb1BhZ2VJ
bnNwZWN0b3IoY29uc3QgU3RyaW5nJik7CisgICAgICAgIHZpcnR1YWwgdm9pZCB1cGRhdGVJbnNw
ZWN0b3JTdGF0ZUNvb2tpZShjb25zdCBTdHJpbmcmKTsKICNlbmRpZgogICAgICAgICB2aXJ0dWFs
IHZvaWQgY29uZmlybU1lc3NhZ2VGcm9tV29ya2VyT2JqZWN0KGJvb2wgaGFzUGVuZGluZ0FjdGl2
aXR5KTsKICAgICAgICAgdmlydHVhbCB2b2lkIHJlcG9ydFBlbmRpbmdBY3Rpdml0eShib29sIGhh
c1BlbmRpbmdBY3Rpdml0eSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dv
cmtlclJlcG9ydGluZ1Byb3h5LmggYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlclJlcG9y
dGluZ1Byb3h5LmgKaW5kZXggZmE1MmYzMzI3YzQzY2E3YTk1ZjI4Yzc1NTUzYjNhMzYxZTUxOTZi
OC4uODA0YWYyMTY0MGVlZjczYzQ1MTI0NDZlMDE1Y2QyYjhhYjUyM2ZjYyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJSZXBvcnRpbmdQcm94eS5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyUmVwb3J0aW5nUHJveHkuaApAQCAtNDgsNiArNDgsNyBA
QCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHZpcnR1YWwgdm9pZCBwb3N0Q29uc29sZU1l
c3NhZ2VUb1dvcmtlck9iamVjdChNZXNzYWdlU291cmNlLCBNZXNzYWdlVHlwZSwgTWVzc2FnZUxl
dmVsLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIGludCBsaW5lTnVtYmVyLCBjb25zdCBTdHJpbmcm
IHNvdXJjZVVSTCkgPSAwOwogI2lmIEVOQUJMRShJTlNQRUNUT1IpCiAgICAgICAgIHZpcnR1YWwg
dm9pZCBwb3N0TWVzc2FnZVRvUGFnZUluc3BlY3Rvcihjb25zdCBTdHJpbmcmKSA9IDA7CisgICAg
ICAgIHZpcnR1YWwgdm9pZCB1cGRhdGVJbnNwZWN0b3JTdGF0ZUNvb2tpZShjb25zdCBTdHJpbmcm
KSA9IDA7CiAjZW5kaWYKICAgICAgICAgLy8gSW52b2tlZCB3aGVuIGNsb3NlKCkgaXMgaW52b2tl
ZCBvbiB0aGUgd29ya2VyIGNvbnRleHQuCiAgICAgICAgIHZpcnR1YWwgdm9pZCB3b3JrZXJDb250
ZXh0Q2xvc2VkKCkgPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFu
Z2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwppbmRleCAwMDc5MDJlZmJl
M2Y2YmI2MzhlYTA0NmYzZTI2YWJmZjBiZTMzMmNlLi5kMjEzYzBkNzE5NWJlMDgxYzZjNzZjZGZm
NzljZWU2NmQ4ZDM1Y2FmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5n
ZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4
IEBACisyMDExLTEwLTA1ICBZdXJ5IFNlbWlraGF0c2t5ICA8eXVyeXNAY2hyb21pdW0ub3JnPgor
CisgICAgICAgIFdlYiBJbnNwZWN0b3I6IHByb3ZpZGUgYSB3YXkgZm9yIHBlcnNpc3Rpbmcgd29y
a2VyIGluc3BlY3RvciBzdGF0ZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9Njk0MjIKKworICAgICAgICBQcm92aWRlZCBhbiBBUEkgZm9yIHNhdmluZy9y
ZXN0b3Jpbmcgd29ya2VyIGluc3BlY3RvciBzdGF0ZS4KKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHB1YmxpYy9XZWJDb21tb25Xb3JrZXJDbGllbnQu
aDoKKyAgICAgICAgKFdlYktpdDo6V2ViQ29tbW9uV29ya2VyQ2xpZW50OjpzYXZlRGV2VG9vbHNB
Z2VudFN0YXRlKToKKyAgICAgICAgKiBwdWJsaWMvV2ViU2hhcmVkV29ya2VyLmg6CisgICAgICAg
IChXZWJLaXQ6OldlYlNoYXJlZFdvcmtlcjo6cmVhdHRhY2hEZXZUb29scyk6CisgICAgICAgICog
c3JjL1dlYlNoYXJlZFdvcmtlckltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpyZWNvbm5lY3RU
b1dvcmtlckNvbnRleHRJbnNwZWN0b3JUYXNrKToKKyAgICAgICAgKFdlYktpdDo6V2ViU2hhcmVk
V29ya2VySW1wbDo6cmVhdHRhY2hEZXZUb29scyk6CisgICAgICAgICogc3JjL1dlYlNoYXJlZFdv
cmtlckltcGwuaDoKKyAgICAgICAgKiBzcmMvV2ViV29ya2VyQmFzZS5jcHA6CisgICAgICAgIChX
ZWJLaXQ6OldlYldvcmtlckJhc2U6OnVwZGF0ZUluc3BlY3RvclN0YXRlQ29va2llKToKKyAgICAg
ICAgKFdlYktpdDo6V2ViV29ya2VyQmFzZTo6dXBkYXRlSW5zcGVjdG9yU3RhdGVDb29raWVUYXNr
KToKKyAgICAgICAgKiBzcmMvV2ViV29ya2VyQmFzZS5oOgorICAgICAgICAqIHNyYy9XZWJXb3Jr
ZXJDbGllbnRJbXBsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViV29ya2VyQ2xpZW50SW1wbDo6
dXBkYXRlSW5zcGVjdG9yU3RhdGVDb29raWUpOgorICAgICAgICAqIHNyYy9XZWJXb3JrZXJDbGll
bnRJbXBsLmg6CisKIDIwMTEtMTAtMDQgIFl1cnkgU2VtaWtoYXRza3kgIDx5dXJ5c0BjaHJvbWl1
bS5vcmc+CiAKICAgICAgICAgW0Nocm9taXVtXSBXZWIgSW5zcGVjdG9yOiBzYXZlIGluc3BlY3Rv
ciBzdGF0ZSBpbnRvIHNpbmdsZSBzdHJpbmcgaW5zdGVhZCBvZiBzdHJpbmcgbWFwCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJDb21tb25Xb3JrZXJDbGllbnQu
aCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkNvbW1vbldvcmtlckNsaWVudC5o
CmluZGV4IDczMzE3M2E3MTA4NTM3NDk5OTQzZDRmMzRjZDJjNmZhOTJlZWJhZGQuLjRmYWFkOTJl
ZGY5YjgwNTgwMzc0MmQzN2JhOTY3NTc1ZWJjMTA4YjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vcHVibGljL1dlYkNvbW1vbldvcmtlckNsaWVudC5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkNvbW1vbldvcmtlckNsaWVudC5oCkBAIC0xMTEsNiAr
MTExLDcgQEAgcHVibGljOgogICAgIH0KIAogICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaERldlRv
b2xzTWVzc2FnZShjb25zdCBXZWJTdHJpbmcmKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgc2F2ZURl
dlRvb2xzQWdlbnRTdGF0ZShjb25zdCBXZWJTdHJpbmcmKSB7IH0KIAogcHJvdGVjdGVkOgogICAg
IH5XZWJDb21tb25Xb3JrZXJDbGllbnQoKSB7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vcHVibGljL1dlYlNoYXJlZFdvcmtlci5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1
bS9wdWJsaWMvV2ViU2hhcmVkV29ya2VyLmgKaW5kZXggZTA4ZWQ4NWM4YTk4NGE2NTVkZjk2YzMw
ZTNmMmY4ZmQyMjE4MzBmYi4uYTM0NzdiM2FjMzMwNjdkNTBkYzkzOTk3NzRmOWZkMmM0ZGVlMzYz
MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViU2hhcmVkV29y
a2VyLmgKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViU2hhcmVkV29ya2Vy
LmgKQEAgLTc5LDYgKzc5LDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBjbGllbnREZXN0
cm95ZWQoKSA9IDA7CiAKICAgICB2aXJ0dWFsIHZvaWQgYXR0YWNoRGV2VG9vbHMoKSB7IH0KKyAg
ICB2aXJ0dWFsIHZvaWQgcmVhdHRhY2hEZXZUb29scyhjb25zdCBXZWJTdHJpbmcmIHNhdmVkU3Rh
dGUpIHsgfQogICAgIHZpcnR1YWwgdm9pZCBkZXRhY2hEZXZUb29scygpIHsgfQogICAgIHZpcnR1
YWwgdm9pZCBkaXNwYXRjaERldlRvb2xzTWVzc2FnZShjb25zdCBXZWJTdHJpbmcmKSB7IH0KIH07
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJTaGFyZWRXb3JrZXJJ
bXBsLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNoYXJlZFdvcmtlckltcGwu
Y3BwCmluZGV4IDRhMzJmYjM0YTQ4ZjExMzBmMTE3NDViY2JhOWYzYzdmNzBhNDRkNGUuLjU5MWE2
ZGY2MWI2OTNlZDFjZTA3ZjViZDc0NmFiMWY2MGY3MjJlMWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNoYXJlZFdvcmtlckltcGwuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNoYXJlZFdvcmtlckltcGwuY3BwCkBAIC0xMjIsNiArMTIy
LDE4IEBAIHZvaWQgV2ViU2hhcmVkV29ya2VySW1wbDo6YXR0YWNoRGV2VG9vbHMoKQogICAgIHdv
cmtlclRocmVhZCgpLT5ydW5Mb29wKCkucG9zdFRhc2soY3JlYXRlQ2FsbGJhY2tUYXNrKGNvbm5l
Y3RUb1dvcmtlckNvbnRleHRJbnNwZWN0b3JUYXNrLCB0cnVlKSk7CiB9CiAKK3N0YXRpYyB2b2lk
IHJlY29ubmVjdFRvV29ya2VyQ29udGV4dEluc3BlY3RvclRhc2soU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCogY29udGV4dCwgY29uc3QgU3RyaW5nJiBzYXZlZFN0YXRlKQoreworICAgIEFTU0VSVChj
b250ZXh0LT5pc1dvcmtlckNvbnRleHQoKSk7CisgICAgV29ya2VySW5zcGVjdG9yQ29udHJvbGxl
ciogaWMgPSBzdGF0aWNfY2FzdDxXb3JrZXJDb250ZXh0Kj4oY29udGV4dCktPndvcmtlckluc3Bl
Y3RvckNvbnRyb2xsZXIoKTsKKyAgICBpYy0+cmVzdG9yZUluc3BlY3RvclN0YXRlRnJvbUNvb2tp
ZShzYXZlZFN0YXRlKTsKK30KKwordm9pZCBXZWJTaGFyZWRXb3JrZXJJbXBsOjpyZWF0dGFjaERl
dlRvb2xzKGNvbnN0IFdlYlN0cmluZyYgc2F2ZWRTdGF0ZSkKK3sKKyAgICB3b3JrZXJUaHJlYWQo
KS0+cnVuTG9vcCgpLnBvc3RUYXNrRm9yTW9kZShjcmVhdGVDYWxsYmFja1Rhc2socmVjb25uZWN0
VG9Xb3JrZXJDb250ZXh0SW5zcGVjdG9yVGFzaywgU3RyaW5nKHNhdmVkU3RhdGUpKSwgV29ya2Vy
RGVidWdnZXJBZ2VudDo6ZGVidWdnZXJUYXNrTW9kZSk7Cit9CisKIHN0YXRpYyB2b2lkIGRpc2Nv
bm5lY3RGcm9tV29ya2VyQ29udGV4dEluc3BlY3RvclRhc2soU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCogY29udGV4dCwgYm9vbCkKIHsKICAgICBBU1NFUlQoY29udGV4dC0+aXNXb3JrZXJDb250ZXh0
KCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2hhcmVkV29y
a2VySW1wbC5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2hhcmVkV29ya2VySW1w
bC5oCmluZGV4IDUwMzY0MjcyZDRiZDE5NDEyOTE3YWNhNGUwOWYzNjViZWQ1OTlkYWMuLjA5NTZk
OTY4NjkwNGU4YjMzODI0NDAyYzdmZDQ1ZTdiMDlkMDZkYzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNoYXJlZFdvcmtlckltcGwuaAorKysgYi9Tb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3NyYy9XZWJTaGFyZWRXb3JrZXJJbXBsLmgKQEAgLTU3LDYgKzU3LDcgQEAg
cHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBjbGllbnREZXN0cm95ZWQoKTsKIAogICAgIHZpcnR1
YWwgdm9pZCBhdHRhY2hEZXZUb29scygpOworICAgIHZpcnR1YWwgdm9pZCByZWF0dGFjaERldlRv
b2xzKGNvbnN0IFdlYlN0cmluZyYgc2F2ZWRTdGF0ZSk7CiAgICAgdmlydHVhbCB2b2lkIGRldGFj
aERldlRvb2xzKCk7CiAgICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoRGV2VG9vbHNNZXNzYWdlKGNv
bnN0IFdlYlN0cmluZyYpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Ny
Yy9XZWJXb3JrZXJCYXNlLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYldvcmtl
ckJhc2UuY3BwCmluZGV4IDU3Njc2YmNjZmYwZmExYjVkZjFiNzE2MzY2NDAzYzY3ZDg3ODg1YWMu
LjkxZTg2ZTM4YTBhYjcyOTFiYmM5ZDI4Y2ViMTk4YTZkNTFhODE3NGQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYldvcmtlckJhc2UuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vc3JjL1dlYldvcmtlckJhc2UuY3BwCkBAIC0yNDQsNiArMjQ0LDE4IEBA
IHZvaWQgV2ViV29ya2VyQmFzZTo6cG9zdE1lc3NhZ2VUb1BhZ2VJbnNwZWN0b3JUYXNrKFNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQqLCBXZWJXCiAgICAgdGhpc1B0ci0+Y29tbW9uQ2xpZW50KCktPmRp
c3BhdGNoRGV2VG9vbHNNZXNzYWdlKG1lc3NhZ2UpOwogfQogCit2b2lkIFdlYldvcmtlckJhc2U6
OnVwZGF0ZUluc3BlY3RvclN0YXRlQ29va2llKGNvbnN0IFdURjo6U3RyaW5nJiBjb29raWUpCit7
CisgICAgZGlzcGF0Y2hUYXNrVG9NYWluVGhyZWFkKGNyZWF0ZUNhbGxiYWNrVGFzaygmdXBkYXRl
SW5zcGVjdG9yU3RhdGVDb29raWVUYXNrLCBBbGxvd0Nyb3NzVGhyZWFkQWNjZXNzKHRoaXMpLCBj
b29raWUpKTsKK30KKwordm9pZCBXZWJXb3JrZXJCYXNlOjp1cGRhdGVJbnNwZWN0b3JTdGF0ZUNv
b2tpZVRhc2soU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIFdlYldvcmtlckJhc2UqIHRoaXNQdHIs
IGNvbnN0IFN0cmluZyYgY29va2llKQoreworICAgIGlmICghdGhpc1B0ci0+Y29tbW9uQ2xpZW50
KCkpCisgICAgICAgIHJldHVybjsKKyAgICB0aGlzUHRyLT5jb21tb25DbGllbnQoKS0+c2F2ZURl
dlRvb2xzQWdlbnRTdGF0ZShjb29raWUpOworfQorCiB2b2lkIFdlYldvcmtlckJhc2U6OmNvbmZp
cm1NZXNzYWdlRnJvbVdvcmtlck9iamVjdChib29sIGhhc1BlbmRpbmdBY3Rpdml0eSkKIHsKICAg
ICBkaXNwYXRjaFRhc2tUb01haW5UaHJlYWQoY3JlYXRlQ2FsbGJhY2tUYXNrKCZjb25maXJtTWVz
c2FnZVRhc2ssIEFsbG93Q3Jvc3NUaHJlYWRBY2Nlc3ModGhpcyksCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJXb3JrZXJCYXNlLmggYi9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL3NyYy9XZWJXb3JrZXJCYXNlLmgKaW5kZXggZjZjZDA5YTA2MjRkYTE2ODIxNGFiOTQw
NmVlNThkZTE5YjQ2NWYxMS4uOTM1OTlmNGZkZTJjNjM4NGNjZjE5YmI0MzczMGY0ZDJiYWJiYjc3
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViV29ya2VyQmFzZS5o
CisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYldvcmtlckJhc2UuaApAQCAtODcs
NiArODcsNyBAQCBwdWJsaWM6CiAgICAgICAgIFdlYkNvcmU6Ok1lc3NhZ2VTb3VyY2UsIFdlYkNv
cmU6Ok1lc3NhZ2VUeXBlLAogICAgICAgICBXZWJDb3JlOjpNZXNzYWdlTGV2ZWwsIGNvbnN0IFdU
Rjo6U3RyaW5nJiwgaW50LCBjb25zdCBXVEY6OlN0cmluZyYpOwogICAgIHZpcnR1YWwgdm9pZCBw
b3N0TWVzc2FnZVRvUGFnZUluc3BlY3Rvcihjb25zdCBXVEY6OlN0cmluZyYpOworICAgIHZpcnR1
YWwgdm9pZCB1cGRhdGVJbnNwZWN0b3JTdGF0ZUNvb2tpZShjb25zdCBXVEY6OlN0cmluZyYpOwog
ICAgIHZpcnR1YWwgdm9pZCBjb25maXJtTWVzc2FnZUZyb21Xb3JrZXJPYmplY3QoYm9vbCk7CiAg
ICAgdmlydHVhbCB2b2lkIHJlcG9ydFBlbmRpbmdBY3Rpdml0eShib29sKTsKICAgICB2aXJ0dWFs
IHZvaWQgd29ya2VyQ29udGV4dENsb3NlZCgpOwpAQCAtMTQ0LDYgKzE0NSw3IEBAIHByaXZhdGU6
CiAgICAgICAgIGludCBsaW5lTnVtYmVyLAogICAgICAgICBjb25zdCBXVEY6OlN0cmluZyYgc291
cmNlVVJMKTsKICAgICBzdGF0aWMgdm9pZCBwb3N0TWVzc2FnZVRvUGFnZUluc3BlY3RvclRhc2so
V2ViQ29yZTo6U2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIFdlYldvcmtlckJhc2UqLCBjb25zdCBX
VEY6OlN0cmluZyYpOworICAgIHN0YXRpYyB2b2lkIHVwZGF0ZUluc3BlY3RvclN0YXRlQ29va2ll
VGFzayhXZWJDb3JlOjpTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgV2ViV29ya2VyQmFzZSogdGhp
c1B0ciwgY29uc3QgV1RGOjpTdHJpbmcmIGNvb2tpZSk7CiAgICAgc3RhdGljIHZvaWQgY29uZmly
bU1lc3NhZ2VUYXNrKAogICAgICAgICBXZWJDb3JlOjpTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBj
b250ZXh0LAogICAgICAgICBXZWJXb3JrZXJCYXNlKiB0aGlzUHRyLApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViV29ya2VyQ2xpZW50SW1wbC5jcHAgYi9Tb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL3NyYy9XZWJXb3JrZXJDbGllbnRJbXBsLmNwcAppbmRleCBjODI0MGVi
Njk2YjMwNDc4MGJlZTA0ZjJkY2JhMDE2N2ZlZmMzNWE1Li5mZDBiMzY1MDBhYTliMTViODM1YzMz
YTkzZWY2NjhhNWMxODk2NzIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Ny
Yy9XZWJXb3JrZXJDbGllbnRJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Ny
Yy9XZWJXb3JrZXJDbGllbnRJbXBsLmNwcApAQCAtMTM3LDYgKzEzNywxMCBAQCB2b2lkIFdlYldv
cmtlckNsaWVudEltcGw6OnBvc3RNZXNzYWdlVG9QYWdlSW5zcGVjdG9yKGNvbnN0IFN0cmluZyYg
bWVzc2FnZSkKIHsKICAgICBtX3Byb3h5LT5wb3N0TWVzc2FnZVRvUGFnZUluc3BlY3RvcihtZXNz
YWdlKTsKIH0KKwordm9pZCBXZWJXb3JrZXJDbGllbnRJbXBsOjp1cGRhdGVJbnNwZWN0b3JTdGF0
ZUNvb2tpZShjb25zdCBTdHJpbmcmKQoreworfQogI2VuZGlmIC8vIEVOQUJMRShJTlNQRUNUT1Ip
CiAKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViV29ya2VyQ2xp
ZW50SW1wbC5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViV29ya2VyQ2xpZW50SW1w
bC5oCmluZGV4IDNkMjM0MTk5YzI1OTZjYjE5Njk5OTBlNDQ0ZjY1MzgzMjEwYzMyMmUuLjY4YTE5
MDQzZThiOTNkOTBjMjFhODEyYzQ2M2ZiOWY2ZWQ0NTdhMDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vc3JjL1dlYldvcmtlckNsaWVudEltcGwuaAorKysgYi9Tb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3NyYy9XZWJXb3JrZXJDbGllbnRJbXBsLmgKQEAgLTgyLDYgKzgyLDcgQEAg
cHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBkaXNjb25uZWN0RnJvbUluc3BlY3RvcigpOwogICAg
IHZpcnR1YWwgdm9pZCBzZW5kTWVzc2FnZVRvSW5zcGVjdG9yKGNvbnN0IFN0cmluZyYpOwogICAg
IHZpcnR1YWwgdm9pZCBwb3N0TWVzc2FnZVRvUGFnZUluc3BlY3Rvcihjb25zdCBTdHJpbmcmKTsK
KyAgICB2aXJ0dWFsIHZvaWQgdXBkYXRlSW5zcGVjdG9yU3RhdGVDb29raWUoY29uc3QgU3RyaW5n
Jik7CiAjZW5kaWYKICAgICAvLyBXZWJDb3JlOjpXb3JrZXJMb2FkZXJQcm94eSBtZXRob2RzOgog
ICAgIHZpcnR1YWwgdm9pZCBwb3N0VGFza1RvTG9hZGVyKFBhc3NPd25QdHI8V2ViQ29yZTo6U2Ny
aXB0RXhlY3V0aW9uQ29udGV4dDo6VGFzaz4pOwo=
</data>
<flag name="review"
          id="107115"
          type_id="1"
          status="+"
          setter="pfeldman"
    />
          </attachment>
      

    </bug>

</bugzilla>