<?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>141975</bug_id>
          
          <creation_ts>2015-02-24 10:22:49 -0800</creation_ts>
          <short_desc>Implement more of the data fetching API</short_desc>
          <delta_ts>2015-02-25 07:03:04 -0800</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>528+ (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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>142009</dependson>
    
    <dependson>142014</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Anders Carlsson">andersca</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>japhet</cc>
    
    <cc>kling</cc>
    
    <cc>ossy</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1071705</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-02-24 10:22:49 -0800</bug_when>
    <thetext>Implement more of the data fetching API</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1071710</commentid>
    <comment_count>1</comment_count>
      <attachid>247243</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-02-24 10:29:43 -0800</bug_when>
    <thetext>Created attachment 247243
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1071711</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-02-24 10:33:15 -0800</bug_when>
    <thetext>Attachment 247243 did not pass style-queue:


ERROR: Source/WebKit2/UIProcess/WebProcessProxy.h:125:  Extra space before ( in function call  [whitespace/parens] [4]
ERROR: Source/WebKit2/UIProcess/WebProcessProxy.h:230:  Extra space before ( in function call  [whitespace/parens] [4]
ERROR: Source/WebKit2/UIProcess/WebProcessProxy.cpp:653:  Extra space before ( in function call  [whitespace/parens] [4]
ERROR: Source/WebKit2/UIProcess/WebsiteData/WebsiteDataStore.cpp:113:  Extra space before ( in function call  [whitespace/parens] [4]
ERROR: Source/WebKit2/UIProcess/WebsiteData/WebsiteDataStore.cpp:116:  Extra space before ( in function call  [whitespace/parens] [4]
ERROR: Source/WebKit2/UIProcess/WebsiteData/WebsiteDataStore.cpp:153:  Extra space before ( in function call  [whitespace/parens] [4]
Total errors found: 6 in 15 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1071713</commentid>
    <comment_count>3</comment_count>
      <attachid>247243</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2015-02-24 10:35:00 -0800</bug_when>
    <thetext>Comment on attachment 247243
Patch

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

r=me

&gt; Source/WebCore/loader/cache/MemoryCache.h:151
&gt; +    WEBCORE_EXPORT HashSet&lt;RefPtr&lt;SecurityOrigin&gt;&gt; originsWithCache(SessionID);

Seems like this could be const.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1071722</commentid>
    <comment_count>4</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-02-24 10:55:25 -0800</bug_when>
    <thetext>Committed r180575: &lt;http://trac.webkit.org/changeset/180575&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1071738</commentid>
    <comment_count>5</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2015-02-24 11:46:24 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; Committed r180575: &lt;http://trac.webkit.org/changeset/180575&gt;

new file added to cmake - http://trac.webkit.org/changeset/180577</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1071740</commentid>
    <comment_count>6</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2015-02-24 11:50:36 -0800</bug_when>
    <thetext>One more fix was needed because of the following warning:

../../Source/WebKit2/UIProcess/WebProcessProxy.cpp: In member function ‘virtual void WebKit::WebProcessProxy::connectionDidClose(IPC::Connection&amp;)’:
../../Source/WebKit2/UIProcess/WebProcessProxy.cpp:152:21: error: missing initializer for member ‘WebKit::WebsiteData::entries’ [-Werror=missing-field-initializers]
         callback({ });
                     ^

fix landed in http://trac.webkit.org/changeset/180579

Let me know if you know better fix to initialize entries member of WebsiteData.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>247243</attachid>
            <date>2015-02-24 10:29:43 -0800</date>
            <delta_ts>2015-02-24 10:35:00 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-141975-20150224102931.patch</filename>
            <type>text/plain</type>
            <size>30358</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgwNTY4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGJhYTcyYTk2NDlhNDcw
ODdmMWI0MDEyZWNjMjBkOWNkNTk4MWY2NS4uMWZlYTFmM2NmODlmYTM0OWRjNjhhODAzOTEwMWM4
NzBlZTA1NzBlMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDE1LTAyLTI0ICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IG1v
cmUgb2YgdGhlIGRhdGEgZmV0Y2hpbmcgQVBJCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xNDE5NzUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBBZGQgQVBJIGZvciBnZXR0aW5nIG9yaWdpbnMgaW4gYSBnaXZl
biBzZXNzaW9uIHRoYXQgaGFzIGNhY2hlZCBkYXRhLgorCisgICAgICAgICogbG9hZGVyL2NhY2hl
L01lbW9yeUNhY2hlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lbW9yeUNhY2hlOjpvcmlnaW5z
V2l0aENhY2hlKToKKwogMjAxNS0wMi0yNCAgTWFudWVsIFJlZ28gQ2FzYXNub3ZhcyAgPHJlZ29A
aWdhbGlhLmNvbT4KIAogICAgICAgICBbQ1NTIEdyaWQgTGF5b3V0XSBTdXBwb3J0ICJzcGFyc2Ui
IGluIGF1dG8tcGxhY2VkIGl0ZW1zIGxvY2tlZCB0byBhIHJvdy9jb2x1bW4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRl
eCBhNmRjMGZkMjk1MDIzMGIyNzMxYTZmY2Y5NTE0YWU2YzNmMzRmMGIzLi4zZWU1MDUzYmRmYTkz
YTg5YjU5NGJmOTY3OWIzZjdkMTg4ZmRhMzQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsNzIgQEAK
IDIwMTUtMDItMjQgIEFuZGVycyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KIAorICAg
ICAgICBJbXBsZW1lbnQgbW9yZSBvZiB0aGUgZGF0YSBmZXRjaGluZyBBUEkKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0MTk3NQorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU2hhcmVkL1dlYnNpdGVEYXRh
L1dlYnNpdGVEYXRhLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJLaXQ6OldlYnNpdGVEYXRhOjpF
bnRyeTo6ZW5jb2RlKToKKyAgICAgICAgKFdlYktpdDo6V2Vic2l0ZURhdGE6OkVudHJ5OjpkZWNv
ZGUpOgorICAgICAgICAoV2ViS2l0OjpXZWJzaXRlRGF0YTo6ZW5jb2RlKToKKyAgICAgICAgKFdl
YktpdDo6V2Vic2l0ZURhdGE6OmRlY29kZSk6CisgICAgICAgICogU2hhcmVkL1dlYnNpdGVEYXRh
L1dlYnNpdGVEYXRhLmg6IEFkZGVkLgorICAgICAgICBBZGQgYSBuZXcgV2Vic2l0ZURhdGEgY2xh
c3MgdGhhdCB3aWxsIHN0b3JlIHdlYnNpdGUgZGF0YS4gQ3VycmVudGx5IGl0IG9ubHkgc3RvcmVz
CisgICAgICAgIG9yaWdpbiArIHdlYnNpdGUgZGF0YSB0eXBlLCBidXQgaW4gdGhlIGZ1dHVyZSBp
dCBpcyBnb2luZyB0byBzdG9yZSBtb3JlIHRoaW5ncywgbGlrZSAKKyAgICAgICAgaG9zdCBuYW1l
cyB0aGF0IGhhdmUgY29va2llcyBhc3NvY2lhdGVkLgorCisgICAgICAgICogVUlQcm9jZXNzL1dl
YlByb2Nlc3NQcm94eS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NQcm94eTo6fldl
YlByb2Nlc3NQcm94eSk6CisgICAgICAgIEFzc2VydCB0aGF0IHdlIGRvbid0IGhhdmUgYW55IHBl
bmRpbmcgZmV0Y2ggZGF0YSBjYWxsYmFja3MuCisKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vz
c1Byb3h5Ojpjb25uZWN0aW9uRGlkQ2xvc2UpOgorICAgICAgICBJbnZva2UgYW55IHBlbmRpbmcg
ZmV0Y2ggd2Vic2l0ZSBkYXRhIGNhbGxiYWNrcy4KKworICAgICAgICAoV2ViS2l0OjpXZWJQcm9j
ZXNzUHJveHk6OmRpZEZldGNoV2Vic2l0ZURhdGEpOgorICAgICAgICBHcmFiIHRoZSBjYWxsYmFj
ayBhbmQgaW52b2tlIGl0LgorCisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NQcm94eTo6ZmV0
Y2hXZWJzaXRlRGF0YSk6CisgICAgICAgIFNldCB1cCBhIHBlbmRpbmcgY2FsbGJhY2sgYW5kIHNl
bmQgYSBGZXRjaFdlYnNpdGVEYXRhIG1lc3NhZ2UgdG8gdGhlIHdlYiBwcm9jZXNzLgorCisgICAg
ICAgICogVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5oOgorICAgICAgICBBZGQgbmV3IG1lbWJl
ci4KKworICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkubWVzc2FnZXMuaW46Cisg
ICAgICAgIEFkZCBhIERpZEZldGNoV2Vic2l0ZURhdGEgbWVzc2FnZS4KKworICAgICAgICAqIFVJ
UHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmNwcDoKKyAgICAgICAgKFdlYktp
dDo6Y29tcHV0ZVdlYlByb2Nlc3NBY2Nlc3NUeXBlRm9yRGF0YUZldGNoKToKKyAgICAgICAgUmV0
dXJuIHRoZSB3ZWIgcHJvY2VzcyBhY2Nlc3MgdHlwZSBmb3IgdGhlIGdpdmVuIHNldCBvZiBkYXRh
IHR5cGVzLgorCisgICAgICAgIChXZWJLaXQ6OldlYnNpdGVEYXRhU3RvcmU6OmZldGNoRGF0YSk6
CisgICAgICAgIFNldCB1cCBhIGNhbGxiYWNrIGFnZ3JlZ2F0b3IgdGhhdCB3aWxsIGFzc2VtYmxl
IHRoZSBuZWVkZWQgd2Vic2l0ZSBkYXRhIGludG8gYSB2ZWN0b3Igb2Ygd2Vic2l0ZSBkYXRhIHJl
Y29yZHMuCisKKyAgICAgICAgKFdlYktpdDo6Y29tcHV0ZU5ldHdvcmtQcm9jZXNzQWNjZXNzVHlw
ZUZvckRhdGFSZW1vdmFsKToKKyAgICAgICAgKFdlYktpdDo6Y29tcHV0ZVdlYlByb2Nlc3NBY2Nl
c3NUeXBlRm9yRGF0YVJlbW92YWwpOgorICAgICAgICBSZW5hbWUgdGhlc2UgZnVuY3Rpb25zIHRv
IGluZGljYXRlIHRoYXQgdGhleSBhcmUgYWJvdXQgZGF0YSByZW1vdmFsLgorCisgICAgICAgIChX
ZWJLaXQ6OldlYnNpdGVEYXRhU3RvcmU6OnJlbW92ZURhdGEpOgorICAgICAgICBBcHBlbmQgIkZv
ckRhdGFSZW1vdmFsIiB0byBmdW5jdGlvbiBjYWxscy4KKworICAgICAgICAqIFdlYktpdDIueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgQWRkIG5ldyBmaWxlcy4KKworICAgICAg
ICAqIFdlYlByb2Nlc3MvU3RvcmFnZS9TdG9yYWdlQXJlYU1hcC5jcHA6CisgICAgICAgIChXZWJL
aXQ6OlN0b3JhZ2VBcmVhTWFwOjpTdG9yYWdlQXJlYU1hcCk6CisgICAgICAgIFRpZ2h0ZW4gdHlw
ZXMuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwOgorICAgICAgICAoV2Vi
S2l0OjpXZWJQcm9jZXNzOjpmZXRjaFdlYnNpdGVEYXRhKToKKyAgICAgICAgRm9yIG5vdywganVz
dCBmZXRjaCBtZW1vcnkgY2FjaGUgZGF0YS4KKworICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUHJv
Y2Vzcy5oOgorICAgICAgICBBZGQgbmV3IG1lbWJlcnMuCisKKyAgICAgICAgKiBXZWJQcm9jZXNz
L1dlYlByb2Nlc3MubWVzc2FnZXMuaW46CisgICAgICAgIEFkZCBGZXRjaFdlYnNpdGVEYXRhIG1l
c3NhZ2UuCisKKzIwMTUtMDItMjQgIEFuZGVycyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNv
bT4KKwogICAgICAgICBUaWdodGVuIHVwIHNvbWUgU2VjdXJpdHlPcmlnaW4gcmVsYXRlZCBjb2Rl
LCB1c2UgcmVmZXJlbmNlcyB3aGVyZSBwb3NzaWJsZQogICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQxOTcxCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9jYWNoZS9NZW1vcnlDYWNoZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
Y2FjaGUvTWVtb3J5Q2FjaGUuY3BwCmluZGV4IDQxMGYyZjdhODcxM2RjY2Q4NTBiNjg0MDgzYmY5
Mjk0OWExMDA3YmQuLjYxY2IzMWI3ZTI3NTUwNTBiODNlMjM5OGIzZWVkOTAzNTA4ZGRhY2YgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9NZW1vcnlDYWNoZS5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL01lbW9yeUNhY2hlLmNwcApAQCAtNTYyLDYg
KzU2MiwyOCBAQCB2b2lkIE1lbW9yeUNhY2hlOjpnZXRPcmlnaW5zV2l0aENhY2hlKFNlY3VyaXR5
T3JpZ2luU2V0JiBvcmlnaW5zKQogICAgIH0KIH0KIAorSGFzaFNldDxSZWZQdHI8U2VjdXJpdHlP
cmlnaW4+PiBNZW1vcnlDYWNoZTo6b3JpZ2luc1dpdGhDYWNoZShTZXNzaW9uSUQgc2Vzc2lvbklE
KQoreworICAgIEhhc2hTZXQ8UmVmUHRyPFNlY3VyaXR5T3JpZ2luPj4gb3JpZ2luczsKKworICAg
IGF1dG8gaXQgPSBtX3Nlc3Npb25SZXNvdXJjZXMuZmluZChzZXNzaW9uSUQpOworICAgIGlmIChp
dCAhPSBtX3Nlc3Npb25SZXNvdXJjZXMuZW5kKCkpIHsKKworICAgICAgICBmb3IgKGF1dG8mIGtl
eVZhbHVlIDogKml0LT52YWx1ZSkgeworICAgICAgICAgICAgYXV0byYgcmVzb3VyY2UgPSAqa2V5
VmFsdWUudmFsdWU7CisjaWYgRU5BQkxFKENBQ0hFX1BBUlRJVElPTklORykKKyAgICAgICAgICAg
IGF1dG8mIHBhcnRpdGlvbk5hbWUgPSBrZXlWYWx1ZS5rZXkuc2Vjb25kOworICAgICAgICAgICAg
aWYgKCFwYXJ0aXRpb25OYW1lLmlzRW1wdHkoKSkKKyAgICAgICAgICAgICAgICBvcmlnaW5zLmFk
ZChTZWN1cml0eU9yaWdpbjo6Y3JlYXRlKCJodHRwIiwgcGFydGl0aW9uTmFtZSwgMCkpOworICAg
ICAgICAgICAgZWxzZQorI2VuZGlmCisgICAgICAgICAgICBvcmlnaW5zLmFkZChTZWN1cml0eU9y
aWdpbjo6Y3JlYXRlKHJlc291cmNlLnVybCgpKSk7CisgICAgICAgIH0KKyAgICB9CisKKyAgICBy
ZXR1cm4gb3JpZ2luczsKK30KKwogdm9pZCBNZW1vcnlDYWNoZTo6cmVtb3ZlRnJvbUxpdmVEZWNv
ZGVkUmVzb3VyY2VzTGlzdChDYWNoZWRSZXNvdXJjZSYgcmVzb3VyY2UpCiB7CiAgICAgbV9saXZl
RGVjb2RlZFJlc291cmNlcy5yZW1vdmUoJnJlc291cmNlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9jYWNoZS9NZW1vcnlDYWNoZS5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2NhY2hlL01lbW9yeUNhY2hlLmgKaW5kZXggYWViZmQ0NTY2MDUxNGQ2ZGY3YzFiODQ4Yzk3YzZk
MTMwYTFhYzY3Mi4uMjNjZDg1YWZmZGUwZGVlYjVkYWI5YzJjYTI2NWU4MzJmY2I2ZGI2NyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL01lbW9yeUNhY2hlLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL01lbW9yeUNhY2hlLmgKQEAgLTE0OCw2ICsxNDgs
NyBAQCBwdWJsaWM6CiAgICAgdHlwZWRlZiBIYXNoU2V0PFJlZlB0cjxTZWN1cml0eU9yaWdpbj4+
IFNlY3VyaXR5T3JpZ2luU2V0OwogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgcmVtb3ZlUmVzb3Vy
Y2VzV2l0aE9yaWdpbihTZWN1cml0eU9yaWdpbiYpOwogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQg
Z2V0T3JpZ2luc1dpdGhDYWNoZShTZWN1cml0eU9yaWdpblNldCYgb3JpZ2lucyk7CisgICAgV0VC
Q09SRV9FWFBPUlQgSGFzaFNldDxSZWZQdHI8U2VjdXJpdHlPcmlnaW4+PiBvcmlnaW5zV2l0aENh
Y2hlKFNlc3Npb25JRCk7CiAKICNpZiBVU0UoQ0cpCiAgICAgLy8gRklYTUU6IFJlbW92ZSB0aGUg
VVNFKENHKSBvbmNlIHdlIGVpdGhlciBtYWtlIE5hdGl2ZUltYWdlUHRyIGEgc21hcnQgcG9pbnRl
ciBvbiBhbGwgcGxhdGZvcm1zIG9yCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
V2Vic2l0ZURhdGEvV2Vic2l0ZURhdGEuY3BwIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYnNp
dGVEYXRhL1dlYnNpdGVEYXRhLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45N2FhMzk0MWE4MzU2MzcwNGE1YzBm
MWIwN2VlYjkyM2I2Y2QxYjIyCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdDIvU2hh
cmVkL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhLmNwcApAQCAtMCwwICsxLDY2IEBACisvKgorICog
Q29weXJpZ2h0IChDKSAyMDE1IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElU
UyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElO
Qy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YK
KyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
CisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisg
Ki8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIldlYnNpdGVEYXRhLmgiCisKKyNp
bmNsdWRlICJBcmd1bWVudENvZGVycy5oIgorI2luY2x1ZGUgIlNlY3VyaXR5T3JpZ2luRGF0YS5o
IgorCituYW1lc3BhY2UgV2ViS2l0IHsKKwordm9pZCBXZWJzaXRlRGF0YTo6RW50cnk6OmVuY29k
ZShJUEM6OkFyZ3VtZW50RW5jb2RlciYgZW5jb2RlcikgY29uc3QKK3sKKyAgICBlbmNvZGVyIDw8
IFNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbVNlY3VyaXR5T3JpZ2luKCpvcmlnaW4pOworICAgIGVu
Y29kZXIuZW5jb2RlRW51bSh0eXBlKTsKK30KKworYm9vbCBXZWJzaXRlRGF0YTo6RW50cnk6OmRl
Y29kZShJUEM6OkFyZ3VtZW50RGVjb2RlciYgZGVjb2RlciwgV2Vic2l0ZURhdGE6OkVudHJ5JiBy
ZXN1bHQpCit7CisgICAgU2VjdXJpdHlPcmlnaW5EYXRhIHNlY3VyaXR5T3JpZ2luRGF0YTsKKyAg
ICBpZiAoIWRlY29kZXIuZGVjb2RlKHNlY3VyaXR5T3JpZ2luRGF0YSkpCisgICAgICAgIHJldHVy
biBmYWxzZTsKKworICAgIGlmICghZGVjb2Rlci5kZWNvZGVFbnVtKHJlc3VsdC50eXBlKSkKKyAg
ICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgcmVzdWx0Lm9yaWdpbiA9IHNlY3VyaXR5T3JpZ2lu
RGF0YS5zZWN1cml0eU9yaWdpbigpOworICAgIHJldHVybiB0cnVlOworfQorCit2b2lkIFdlYnNp
dGVEYXRhOjplbmNvZGUoSVBDOjpBcmd1bWVudEVuY29kZXImIGVuY29kZXIpIGNvbnN0Cit7Cisg
ICAgZW5jb2RlciA8PCBlbnRyaWVzOworfQorCitib29sIFdlYnNpdGVEYXRhOjpkZWNvZGUoSVBD
OjpBcmd1bWVudERlY29kZXImIGRlY29kZXIsIFdlYnNpdGVEYXRhJiByZXN1bHQpCit7CisgICAg
aWYgKCFkZWNvZGVyLmRlY29kZShyZXN1bHQuZW50cmllcykpCisgICAgICAgIHJldHVybiBmYWxz
ZTsKKworICAgIHJldHVybiB0cnVlOworfQorCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9TaGFyZWQvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGEuaCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJl
ZC9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjA4YTIzZGZlYTdlMzQxOTU1
ODJhN2JkMzM3MmZmZGQ0ZGNhMzU1YjgKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0
Mi9TaGFyZWQvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGEuaApAQCAtMCwwICsxLDU3IEBACisvKgor
ICogQ29weXJpZ2h0IChDKSAyMDE1IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
CisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5E
IElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExF
IElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CisgKi8KKworI2lmbmRlZiBXZWJzaXRlRGF0YV9oCisjZGVmaW5lIFdlYnNpdGVEYXRhX2gKKwor
I2luY2x1ZGUgIldlYnNpdGVEYXRhVHlwZXMuaCIKKyNpbmNsdWRlIDxXZWJDb3JlL1NlY3VyaXR5
T3JpZ2luLmg+CisjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgorCituYW1lc3BhY2UgSVBDIHsKK2Ns
YXNzIEFyZ3VtZW50RGVjb2RlcjsKK2NsYXNzIEFyZ3VtZW50RW5jb2RlcjsKK30KKworbmFtZXNw
YWNlIFdlYktpdCB7CisKK3N0cnVjdCBXZWJzaXRlRGF0YSB7CisgICAgc3RydWN0IEVudHJ5IHsK
KyAgICAgICAgUmVmUHRyPFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luPiBvcmlnaW47CisgICAgICAg
IFdlYnNpdGVEYXRhVHlwZXMgdHlwZTsKKworICAgICAgICB2b2lkIGVuY29kZShJUEM6OkFyZ3Vt
ZW50RW5jb2RlciYpIGNvbnN0OworICAgICAgICBzdGF0aWMgYm9vbCBkZWNvZGUoSVBDOjpBcmd1
bWVudERlY29kZXImLCBXZWJzaXRlRGF0YTo6RW50cnkmKTsKKyAgICB9OworCisgICAgVmVjdG9y
PEVudHJ5PiBlbnRyaWVzOworCisgICAgdm9pZCBlbmNvZGUoSVBDOjpBcmd1bWVudEVuY29kZXIm
KSBjb25zdDsKKyAgICBzdGF0aWMgYm9vbCBkZWNvZGUoSVBDOjpBcmd1bWVudERlY29kZXImLCBX
ZWJzaXRlRGF0YSYpOworfTsKKworfQorCisjZW5kaWYgLy8gV2Vic2l0ZURhdGFfaApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmNwcAppbmRleCAyYWU3NWNjNTUz
NTZjNWIxZjllNjk4ODc5NzY1MjYyZDcwMTYzOTFiLi45OTFiMjNlMmEyNWIyNzFiMzkwY2MwNGNl
MTZiNzBkNmJiMjI1ODFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2Vi
UHJvY2Vzc1Byb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUHJvY2Vz
c1Byb3h5LmNwcApAQCAtNDksNiArNDksNyBAQAogI2luY2x1ZGUgIldlYlByb2Nlc3NQb29sLmgi
CiAjaW5jbHVkZSAiV2ViUHJvY2Vzc1Byb3h5TWVzc2FnZXMuaCIKICNpbmNsdWRlICJXZWJVc2Vy
Q29udGVudENvbnRyb2xsZXJQcm94eS5oIgorI2luY2x1ZGUgIldlYnNpdGVEYXRhLmgiCiAjaW5j
bHVkZSA8V2ViQ29yZS9TdWRkZW5UZXJtaW5hdGlvbi5oPgogI2luY2x1ZGUgPFdlYkNvcmUvVVJM
Lmg+CiAjaW5jbHVkZSA8c3RkaW8uaD4KQEAgLTExMyw2ICsxMTQsNyBAQCBXZWJQcm9jZXNzUHJv
eHk6OldlYlByb2Nlc3NQcm94eShXZWJQcm9jZXNzUG9vbCYgcHJvY2Vzc1Bvb2wpCiAKIFdlYlBy
b2Nlc3NQcm94eTo6fldlYlByb2Nlc3NQcm94eSgpCiB7CisgICAgQVNTRVJUKG1fcGVuZGluZ0Zl
dGNoV2Vic2l0ZURhdGFDYWxsYmFja3MuaXNFbXB0eSgpKTsKICAgICBBU1NFUlQobV9wZW5kaW5n
RGVsZXRlV2Vic2l0ZURhdGFDYWxsYmFja3MuaXNFbXB0eSgpKTsKIAogICAgIGlmIChtX3dlYkNv
bm5lY3Rpb24pCkBAIC0xNDYsNiArMTQ4LDEwIEBAIHZvaWQgV2ViUHJvY2Vzc1Byb3h5Ojpjb25u
ZWN0aW9uRGlkQ2xvc2UoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uKQogewogICAgIEFTU0VS
VCh0aGlzLT5jb25uZWN0aW9uKCkgPT0gJmNvbm5lY3Rpb24pOwogCisgICAgZm9yIChjb25zdCBh
dXRvJiBjYWxsYmFjayA6IG1fcGVuZGluZ0ZldGNoV2Vic2l0ZURhdGFDYWxsYmFja3MudmFsdWVz
KCkpCisgICAgICAgIGNhbGxiYWNrKHsgfSk7CisgICAgbV9wZW5kaW5nRmV0Y2hXZWJzaXRlRGF0
YUNhbGxiYWNrcy5jbGVhcigpOworCiAgICAgZm9yIChjb25zdCBhdXRvJiBjYWxsYmFjayA6IG1f
cGVuZGluZ0RlbGV0ZVdlYnNpdGVEYXRhQ2FsbGJhY2tzLnZhbHVlcygpKQogICAgICAgICBjYWxs
YmFjaygpOwogICAgIG1fcGVuZGluZ0RlbGV0ZVdlYnNpdGVEYXRhQ2FsbGJhY2tzLmNsZWFyKCk7
CkBAIC01OTcsNiArNjAzLDEyIEBAIHZvaWQgV2ViUHJvY2Vzc1Byb3h5OjpzaG91bGRUZXJtaW5h
dGUoYm9vbCYgc2hvdWxkVGVybWluYXRlKQogICAgIH0KIH0KIAordm9pZCBXZWJQcm9jZXNzUHJv
eHk6OmRpZEZldGNoV2Vic2l0ZURhdGEodWludDY0X3QgY2FsbGJhY2tJRCwgY29uc3QgV2Vic2l0
ZURhdGEmIHdlYnNpdGVEYXRhKQoreworICAgIGF1dG8gY2FsbGJhY2sgPSBtX3BlbmRpbmdGZXRj
aFdlYnNpdGVEYXRhQ2FsbGJhY2tzLnRha2UoY2FsbGJhY2tJRCk7CisgICAgY2FsbGJhY2sod2Vi
c2l0ZURhdGEpOworfQorCiB2b2lkIFdlYlByb2Nlc3NQcm94eTo6ZGlkRGVsZXRlV2Vic2l0ZURh
dGEodWludDY0X3QgY2FsbGJhY2tJRCkKIHsKICAgICBhdXRvIGNhbGxiYWNrID0gbV9wZW5kaW5n
RGVsZXRlV2Vic2l0ZURhdGFDYWxsYmFja3MudGFrZShjYWxsYmFja0lEKTsKQEAgLTYzOCw2ICs2
NTAsMTYgQEAgdm9pZCBXZWJQcm9jZXNzUHJveHk6OndpbmRvd1NlcnZlckNvbm5lY3Rpb25TdGF0
ZUNoYW5nZWQoKQogICAgICAgICBwYWdlLT52aWV3U3RhdGVEaWRDaGFuZ2UoVmlld1N0YXRlOjpJ
c1Zpc3VhbGx5SWRsZSk7CiB9CiAKK3ZvaWQgV2ViUHJvY2Vzc1Byb3h5OjpmZXRjaFdlYnNpdGVE
YXRhKFNlc3Npb25JRCBzZXNzaW9uSUQsIFdlYnNpdGVEYXRhVHlwZXMgZGF0YVR5cGVzLCBzdGQ6
OmZ1bmN0aW9uPHZvaWQgKFdlYnNpdGVEYXRhKT4gY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAg
QVNTRVJUKGNhblNlbmRNZXNzYWdlKCkpOworCisgICAgdWludDY0X3QgY2FsbGJhY2tJRCA9IGdl
bmVyYXRlQ2FsbGJhY2tJRCgpOworICAgIG1fcGVuZGluZ0ZldGNoV2Vic2l0ZURhdGFDYWxsYmFj
a3MuYWRkKGNhbGxiYWNrSUQsIFdURjo6bW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworCisgICAg
c2VuZChNZXNzYWdlczo6V2ViUHJvY2Vzczo6RmV0Y2hXZWJzaXRlRGF0YShzZXNzaW9uSUQsIGRh
dGFUeXBlcywgY2FsbGJhY2tJRCksIDApOworfQorCiB2b2lkIFdlYlByb2Nlc3NQcm94eTo6ZGVs
ZXRlV2Vic2l0ZURhdGEoU2Vzc2lvbklEIHNlc3Npb25JRCwgV2Vic2l0ZURhdGFUeXBlcyBkYXRh
VHlwZXMsIHN0ZDo6Y2hyb25vOjpzeXN0ZW1fY2xvY2s6OnRpbWVfcG9pbnQgbW9kaWZpZWRTaW5j
ZSwgc3RkOjpmdW5jdGlvbjx2b2lkICgpPiBjb21wbGV0aW9uSGFuZGxlcikKIHsKICAgICBBU1NF
UlQoY2FuU2VuZE1lc3NhZ2UoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvV2ViUHJvY2Vzc1Byb3h5LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUHJvY2Vz
c1Byb3h5LmgKaW5kZXggYTEwNDE0M2Y0YTE4MjRlNDY1ODJmOGQzODIyYWY1ZWViMTZlMDg5OS4u
NGU5ODA0ZTE0YTFhYTM2NjFlZjllYzY5ZTk4NGMxMDY2ZDhmNWZmZCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkuaApAQCAtMTIyLDYgKzEyMiw3IEBAIHB1Ymxp
YzoKICAgICB2b2lkIGRpZFNhdmVUb1BhZ2VDYWNoZSgpOwogICAgIHZvaWQgcmVsZWFzZVBhZ2VD
YWNoZSgpOwogCisgICAgdm9pZCBmZXRjaFdlYnNpdGVEYXRhKFdlYkNvcmU6OlNlc3Npb25JRCwg
V2Vic2l0ZURhdGFUeXBlcywgc3RkOjpmdW5jdGlvbjx2b2lkIChXZWJzaXRlRGF0YSk+IGNvbXBs
ZXRpb25IYW5kbGVyKTsKICAgICB2b2lkIGRlbGV0ZVdlYnNpdGVEYXRhKFdlYkNvcmU6OlNlc3Np
b25JRCwgV2Vic2l0ZURhdGFUeXBlcywgc3RkOjpjaHJvbm86OnN5c3RlbV9jbG9jazo6dGltZV9w
b2ludCBtb2RpZmllZFNpbmNlLCBzdGQ6OmZ1bmN0aW9uPHZvaWQgKCk+IGNvbXBsZXRpb25IYW5k
bGVyKTsKIAogICAgIHZvaWQgZW5hYmxlU3VkZGVuVGVybWluYXRpb24oKTsKQEAgLTE2OCw2ICsx
NjksNyBAQCBwcml2YXRlOgogICAgIAogICAgIHZvaWQgc2hvdWxkVGVybWluYXRlKGJvb2wmIHNo
b3VsZFRlcm1pbmF0ZSk7CiAKKyAgICB2b2lkIGRpZEZldGNoV2Vic2l0ZURhdGEodWludDY0X3Qg
Y2FsbGJhY2tJRCwgY29uc3QgV2Vic2l0ZURhdGEmKTsKICAgICB2b2lkIGRpZERlbGV0ZVdlYnNp
dGVEYXRhKHVpbnQ2NF90IGNhbGxiYWNrSUQpOwogCiAgICAgLy8gUGx1Z2lucwpAQCAtMjI1LDYg
KzIyNyw3IEBAIHByaXZhdGU6CiAgICAgc3RkOjp1bmlxdWVfcHRyPERvd25sb2FkUHJveHlNYXA+
IG1fZG93bmxvYWRQcm94eU1hcDsKICAgICBDdXN0b21Qcm90b2NvbE1hbmFnZXJQcm94eSBtX2N1
c3RvbVByb3RvY29sTWFuYWdlclByb3h5OwogCisgICAgSGFzaE1hcDx1aW50NjRfdCwgc3RkOjpm
dW5jdGlvbjx2b2lkIChXZWJzaXRlRGF0YSk+PiBtX3BlbmRpbmdGZXRjaFdlYnNpdGVEYXRhQ2Fs
bGJhY2tzOwogICAgIEhhc2hNYXA8dWludDY0X3QsIHN0ZDo6ZnVuY3Rpb248dm9pZCAoKT4+IG1f
cGVuZGluZ0RlbGV0ZVdlYnNpdGVEYXRhQ2FsbGJhY2tzOwogCiAgICAgaW50IG1fbnVtYmVyT2ZU
aW1lc1N1ZGRlblRlcm1pbmF0aW9uV2FzRGlzYWJsZWQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5Lm1lc3NhZ2VzLmluIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5tZXNzYWdlcy5pbgppbmRleCAxNjExY2E0OWQy
NTBmMjE2OGNmYmY2MzEwYjQyNmRlYTViOTc2NDJiLi41ZjNmODg3NGQwNjI5ZmE0OGMxOWY1YzEz
NGFhOWFhNjM1YTY2NmY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2Vi
UHJvY2Vzc1Byb3h5Lm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9X
ZWJQcm9jZXNzUHJveHkubWVzc2FnZXMuaW4KQEAgLTI5LDYgKzI5LDcgQEAgbWVzc2FnZXMgLT4g
V2ViUHJvY2Vzc1Byb3h5IExlZ2FjeVJlY2VpdmVyIHsKICAgICBFbmFibGVTdWRkZW5UZXJtaW5h
dGlvbigpCiAgICAgRGlzYWJsZVN1ZGRlblRlcm1pbmF0aW9uKCkKIAorICAgIERpZEZldGNoV2Vi
c2l0ZURhdGEodWludDY0X3QgY2FsbGJhY2tJRCwgc3RydWN0IFdlYktpdDo6V2Vic2l0ZURhdGEg
d2Vic2l0ZURhdGEpCiAgICAgRGlkRGVsZXRlV2Vic2l0ZURhdGEodWludDY0X3QgY2FsbGJhY2tJ
RCkKIAogICAgICMgUGx1Z2luIG1lc3NhZ2VzLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuY3BwIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuY3BwCmluZGV4IGI3MTgz
ODE5MzcwZDc5ZWQ2YTc3ODAxNTQxZTk4Y2ZkYTkxNWM4ZjYuLmRlZWIwMGNhYmUzZWFhMTlhOTlh
MjA3ZTMwMWRkY2Q2ZjkyMGI2YWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5jcHAKQEAgLTI5LDYgKzI5LDcg
QEAKICNpbmNsdWRlICJBUElXZWJzaXRlRGF0YVJlY29yZC5oIgogI2luY2x1ZGUgIlN0b3JhZ2VN
YW5hZ2VyLmgiCiAjaW5jbHVkZSAiV2ViUHJvY2Vzc1Bvb2wuaCIKKyNpbmNsdWRlICJXZWJzaXRl
RGF0YS5oIgogI2luY2x1ZGUgPHd0Zi9SdW5Mb29wLmg+CiAKIG5hbWVzcGFjZSBXZWJLaXQgewpA
QCAtOTksNyArMTAwLDkwIEBAIGVudW0gY2xhc3MgUHJvY2Vzc0FjY2Vzc1R5cGUgewogICAgIExh
dW5jaCwKIH07CiAKLXN0YXRpYyBQcm9jZXNzQWNjZXNzVHlwZSBjb21wdXRlTmV0d29ya1Byb2Nl
c3NBY2Nlc3NUeXBlKFdlYnNpdGVEYXRhVHlwZXMgZGF0YVR5cGVzLCBib29sIGlzTm9uUGVyc2lz
dGVudFN0b3JlKQorc3RhdGljIFByb2Nlc3NBY2Nlc3NUeXBlIGNvbXB1dGVXZWJQcm9jZXNzQWNj
ZXNzVHlwZUZvckRhdGFGZXRjaChXZWJzaXRlRGF0YVR5cGVzIGRhdGFUeXBlcywgYm9vbCBpc05v
blBlcnNpc3RlbnRTdG9yZSkKK3sKKyAgICBQcm9jZXNzQWNjZXNzVHlwZSBwcm9jZXNzQWNjZXNz
VHlwZSA9IFByb2Nlc3NBY2Nlc3NUeXBlOjpOb25lOworCisgICAgaWYgKGRhdGFUeXBlcyAmIFdl
YnNpdGVEYXRhVHlwZU1lbW9yeUNhY2hlKQorICAgICAgICByZXR1cm4gUHJvY2Vzc0FjY2Vzc1R5
cGU6Ok9ubHlJZkxhdW5jaGVkOworCisgICAgcmV0dXJuIHByb2Nlc3NBY2Nlc3NUeXBlOworfQor
Cit2b2lkIFdlYnNpdGVEYXRhU3RvcmU6OmZldGNoRGF0YShXZWJzaXRlRGF0YVR5cGVzIGRhdGFU
eXBlcywgc3RkOjpmdW5jdGlvbjx2b2lkIChWZWN0b3I8V2Vic2l0ZURhdGFSZWNvcmQ+KT4gY29t
cGxldGlvbkhhbmRsZXIpCit7CisgICAgc3RydWN0IENhbGxiYWNrQWdncmVnYXRvciBmaW5hbCA6
IHB1YmxpYyBSZWZDb3VudGVkPENhbGxiYWNrQWdncmVnYXRvcj4geworICAgICAgICBleHBsaWNp
dCBDYWxsYmFja0FnZ3JlZ2F0b3Ioc3RkOjpmdW5jdGlvbjx2b2lkIChWZWN0b3I8V2Vic2l0ZURh
dGFSZWNvcmQ+KT4gY29tcGxldGlvbkhhbmRsZXIpCisgICAgICAgICAgICA6IGNvbXBsZXRpb25I
YW5kbGVyKFdURjo6bW92ZShjb21wbGV0aW9uSGFuZGxlcikpCisgICAgICAgIHsKKyAgICAgICAg
fQorCisgICAgICAgIH5DYWxsYmFja0FnZ3JlZ2F0b3IoKQorICAgICAgICB7CisgICAgICAgICAg
ICBBU1NFUlQoIXBlbmRpbmdDYWxsYmFja3MpOworICAgICAgICB9CisKKyAgICAgICAgdm9pZCBh
ZGRQZW5kaW5nQ2FsbGJhY2soKQorICAgICAgICB7CisgICAgICAgICAgICBwZW5kaW5nQ2FsbGJh
Y2tzKys7CisgICAgICAgIH0KKworICAgICAgICB2b2lkIHJlbW92ZVBlbmRpbmdDYWxsYmFjayhX
ZWJzaXRlRGF0YSB3ZWJzaXRlRGF0YSkKKyAgICAgICAgeworICAgICAgICAgICAgQVNTRVJUKHBl
bmRpbmdDYWxsYmFja3MpOworICAgICAgICAgICAgLS1wZW5kaW5nQ2FsbGJhY2tzOworCisgICAg
ICAgICAgICAvLyBGSVhNRTogRG8gc29tZXRoaW5nIHdpdGggdGhlIHdlYnNpdGUgZGF0YS4KKyAg
ICAgICAgICAgIGNhbGxJZk5lZWRlZCgpOworICAgICAgICB9CisKKyAgICAgICAgdm9pZCBjYWxs
SWZOZWVkZWQoKQorICAgICAgICB7CisgICAgICAgICAgICBpZiAocGVuZGluZ0NhbGxiYWNrcykK
KyAgICAgICAgICAgICAgICByZXR1cm47CisKKyAgICAgICAgICAgIFJlZlB0cjxDYWxsYmFja0Fn
Z3JlZ2F0b3I+IGNhbGxiYWNrQWdncmVnYXRvcih0aGlzKTsKKyAgICAgICAgICAgIFJ1bkxvb3A6
Om1haW4oKS5kaXNwYXRjaChbY2FsbGJhY2tBZ2dyZWdhdG9yXSB7CisgICAgICAgICAgICAgICAg
Ly8gRklYTUU6IFBhc3MgZGF0YSByZWNvcmRzIHRvIHRoZSBjb21wbGV0aW9uIGhhbmRsZXIuCisg
ICAgICAgICAgICAgICAgY2FsbGJhY2tBZ2dyZWdhdG9yLT5jb21wbGV0aW9uSGFuZGxlcih7IH0p
OworICAgICAgICAgICAgfSk7CisgICAgICAgIH0KKworICAgICAgICB1bnNpZ25lZCBwZW5kaW5n
Q2FsbGJhY2tzID0gMDsKKyAgICAgICAgc3RkOjpmdW5jdGlvbjx2b2lkIChWZWN0b3I8V2Vic2l0
ZURhdGFSZWNvcmQ+KT4gY29tcGxldGlvbkhhbmRsZXI7CisgICAgfTsKKworICAgIFJlZlB0cjxD
YWxsYmFja0FnZ3JlZ2F0b3I+IGNhbGxiYWNrQWdncmVnYXRvciA9IGFkb3B0UmVmKG5ldyBDYWxs
YmFja0FnZ3JlZ2F0b3IoV1RGOjptb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSkpOworCisgICAgYXV0
byB3ZWJQcm9jZXNzQWNjZXNzVHlwZSA9IGNvbXB1dGVXZWJQcm9jZXNzQWNjZXNzVHlwZUZvckRh
dGFGZXRjaChkYXRhVHlwZXMsIGlzTm9uUGVyc2lzdGVudCgpKTsKKyAgICBpZiAod2ViUHJvY2Vz
c0FjY2Vzc1R5cGUgIT0gUHJvY2Vzc0FjY2Vzc1R5cGU6Ok5vbmUpIHsKKyAgICAgICAgZm9yIChh
dXRvJiBwcm9jZXNzIDogcHJvY2Vzc2VzKCkpIHsKKyAgICAgICAgICAgIHN3aXRjaCAod2ViUHJv
Y2Vzc0FjY2Vzc1R5cGUpIHsKKyAgICAgICAgICAgIGNhc2UgUHJvY2Vzc0FjY2Vzc1R5cGU6Ok9u
bHlJZkxhdW5jaGVkOgorICAgICAgICAgICAgICAgIGlmICghcHJvY2Vzcy0+Y2FuU2VuZE1lc3Nh
Z2UoKSkKKyAgICAgICAgICAgICAgICAgICAgY29udGludWU7CisgICAgICAgICAgICAgICAgYnJl
YWs7CisKKyAgICAgICAgICAgIGNhc2UgUHJvY2Vzc0FjY2Vzc1R5cGU6OkxhdW5jaDoKKyAgICAg
ICAgICAgICAgICAvLyBGSVhNRTogSGFuZGxlIHRoaXMuCisgICAgICAgICAgICAgICAgQVNTRVJU
X05PVF9SRUFDSEVEKCk7CisgICAgICAgICAgICAgICAgYnJlYWs7CisKKyAgICAgICAgICAgIGNh
c2UgUHJvY2Vzc0FjY2Vzc1R5cGU6Ok5vbmU6CisgICAgICAgICAgICAgICAgQVNTRVJUX05PVF9S
RUFDSEVEKCk7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGNhbGxiYWNrQWdncmVnYXRv
ci0+YWRkUGVuZGluZ0NhbGxiYWNrKCk7CisgICAgICAgICAgICBwcm9jZXNzLT5mZXRjaFdlYnNp
dGVEYXRhKG1fc2Vzc2lvbklELCBkYXRhVHlwZXMsIFtjYWxsYmFja0FnZ3JlZ2F0b3JdKFdlYnNp
dGVEYXRhIHdlYnNpdGVEYXRhKSB7CisgICAgICAgICAgICAgICAgY2FsbGJhY2tBZ2dyZWdhdG9y
LT5yZW1vdmVQZW5kaW5nQ2FsbGJhY2soV1RGOjptb3ZlKHdlYnNpdGVEYXRhKSk7CisgICAgICAg
ICAgICB9KTsKKyAgICAgICAgfQorICAgIH0KKworICAgIGNhbGxiYWNrQWdncmVnYXRvci0+Y2Fs
bElmTmVlZGVkKCk7Cit9CisKK3N0YXRpYyBQcm9jZXNzQWNjZXNzVHlwZSBjb21wdXRlTmV0d29y
a1Byb2Nlc3NBY2Nlc3NUeXBlRm9yRGF0YVJlbW92YWwoV2Vic2l0ZURhdGFUeXBlcyBkYXRhVHlw
ZXMsIGJvb2wgaXNOb25QZXJzaXN0ZW50U3RvcmUpCiB7CiAgICAgUHJvY2Vzc0FjY2Vzc1R5cGUg
cHJvY2Vzc0FjY2Vzc1R5cGUgPSBQcm9jZXNzQWNjZXNzVHlwZTo6Tm9uZTsKIApAQCAtMTE2LDcg
KzIwMCw3IEBAIHN0YXRpYyBQcm9jZXNzQWNjZXNzVHlwZSBjb21wdXRlTmV0d29ya1Byb2Nlc3NB
Y2Nlc3NUeXBlKFdlYnNpdGVEYXRhVHlwZXMgZGF0YVR5CiAgICAgcmV0dXJuIHByb2Nlc3NBY2Nl
c3NUeXBlOwogfQogCi1zdGF0aWMgUHJvY2Vzc0FjY2Vzc1R5cGUgY29tcHV0ZVdlYlByb2Nlc3NB
Y2Nlc3NUeXBlKFdlYnNpdGVEYXRhVHlwZXMgZGF0YVR5cGVzLCBib29sIGlzTm9uUGVyc2lzdGVu
dFN0b3JlKQorc3RhdGljIFByb2Nlc3NBY2Nlc3NUeXBlIGNvbXB1dGVXZWJQcm9jZXNzQWNjZXNz
VHlwZUZvckRhdGFSZW1vdmFsKFdlYnNpdGVEYXRhVHlwZXMgZGF0YVR5cGVzLCBib29sIGlzTm9u
UGVyc2lzdGVudFN0b3JlKQogewogICAgIFVOVVNFRF9QQVJBTShpc05vblBlcnNpc3RlbnRTdG9y
ZSk7CiAKQEAgLTEyOCwxMyArMjEyLDYgQEAgc3RhdGljIFByb2Nlc3NBY2Nlc3NUeXBlIGNvbXB1
dGVXZWJQcm9jZXNzQWNjZXNzVHlwZShXZWJzaXRlRGF0YVR5cGVzIGRhdGFUeXBlcywKICAgICBy
ZXR1cm4gcHJvY2Vzc0FjY2Vzc1R5cGU7CiB9CiAKLXZvaWQgV2Vic2l0ZURhdGFTdG9yZTo6ZmV0
Y2hEYXRhKFdlYnNpdGVEYXRhVHlwZXMsIHN0ZDo6ZnVuY3Rpb248dm9pZCAoVmVjdG9yPFdlYnNp
dGVEYXRhUmVjb3JkPik+IGNvbXBsZXRpb25IYW5kbGVyKQotewotICAgIC8vIEZJWE1FOiBBY3R1
YWxseSBmZXRjaCBkYXRhLgotICAgIFJ1bkxvb3A6Om1haW4oKS5kaXNwYXRjaChbY29tcGxldGlv
bkhhbmRsZXJdIHsKLSAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoeyB9KTsKLSAgICB9KTsKLX0K
IAogdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjpyZW1vdmVEYXRhKFdlYnNpdGVEYXRhVHlwZXMgZGF0
YVR5cGVzLCBzdGQ6OmNocm9ubzo6c3lzdGVtX2Nsb2NrOjp0aW1lX3BvaW50IG1vZGlmaWVkU2lu
Y2UsIHN0ZDo6ZnVuY3Rpb248dm9pZCAoKT4gY29tcGxldGlvbkhhbmRsZXIpCiB7CkBAIC0xNjks
NyArMjQ2LDcgQEAgdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjpyZW1vdmVEYXRhKFdlYnNpdGVEYXRh
VHlwZXMgZGF0YVR5cGVzLCBzdGQ6OmNocm9ubzo6c3lzdGUKIAogICAgIFJlZlB0cjxDYWxsYmFj
a0FnZ3JlZ2F0b3I+IGNhbGxiYWNrQWdncmVnYXRvciA9IGFkb3B0UmVmKG5ldyBDYWxsYmFja0Fn
Z3JlZ2F0b3IoV1RGOjptb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSkpOwogCi0gICAgYXV0byBuZXR3
b3JrUHJvY2Vzc0FjY2Vzc1R5cGUgPSBjb21wdXRlTmV0d29ya1Byb2Nlc3NBY2Nlc3NUeXBlKGRh
dGFUeXBlcywgaXNOb25QZXJzaXN0ZW50KCkpOworICAgIGF1dG8gbmV0d29ya1Byb2Nlc3NBY2Nl
c3NUeXBlID0gY29tcHV0ZU5ldHdvcmtQcm9jZXNzQWNjZXNzVHlwZUZvckRhdGFSZW1vdmFsKGRh
dGFUeXBlcywgaXNOb25QZXJzaXN0ZW50KCkpOwogICAgIGlmIChuZXR3b3JrUHJvY2Vzc0FjY2Vz
c1R5cGUgIT0gUHJvY2Vzc0FjY2Vzc1R5cGU6Ok5vbmUpIHsKICAgICAgICAgSGFzaFNldDxXZWJQ
cm9jZXNzUG9vbCo+IHByb2Nlc3NQb29sczsKICAgICAgICAgZm9yIChhdXRvJiBwcm9jZXNzIDog
cHJvY2Vzc2VzKCkpCkBAIC0xOTcsNyArMjc0LDcgQEAgdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjpy
ZW1vdmVEYXRhKFdlYnNpdGVEYXRhVHlwZXMgZGF0YVR5cGVzLCBzdGQ6OmNocm9ubzo6c3lzdGUK
ICAgICAgICAgfQogICAgIH0KIAotICAgIGF1dG8gd2ViUHJvY2Vzc0FjY2Vzc1R5cGUgPSBjb21w
dXRlV2ViUHJvY2Vzc0FjY2Vzc1R5cGUoZGF0YVR5cGVzLCBpc05vblBlcnNpc3RlbnQoKSk7Cisg
ICAgYXV0byB3ZWJQcm9jZXNzQWNjZXNzVHlwZSA9IGNvbXB1dGVXZWJQcm9jZXNzQWNjZXNzVHlw
ZUZvckRhdGFSZW1vdmFsKGRhdGFUeXBlcywgaXNOb25QZXJzaXN0ZW50KCkpOwogICAgIGlmICh3
ZWJQcm9jZXNzQWNjZXNzVHlwZSAhPSBQcm9jZXNzQWNjZXNzVHlwZTo6Tm9uZSkgewogICAgICAg
ICBmb3IgKGF1dG8mIHByb2Nlc3MgOiBwcm9jZXNzZXMoKSkgewogICAgICAgICAgICAgc3dpdGNo
ICh3ZWJQcm9jZXNzQWNjZXNzVHlwZSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2Vi
S2l0Mi54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYktpdDIvV2ViS2l0Mi54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IGU1OWI1Y2M3MzVmZjBhZTFlN2JkNzlkNTEx
YmY1MGQxMGM5NjUzYjcuLjUyOGMxNTBhZTEzYzMzNDc2YWNkMjhiYzgzMWViMzEwYzA1MWU4Mzkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYktpdDIueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJLaXQyLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2oKQEAgLTI1NCw2ICsyNTQsOCBAQAogCQkxQTQ4MzJDQzFBOUJDNDY1MDA4QjRERkUgLyogX1dL
V2Vic2l0ZURhdGFSZWNvcmQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDFBNDgzMkNBMUE5QkM0NjUwMDhCNERGRSAvKiBfV0tXZWJzaXRlRGF0YVJlY29y
ZC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTFB
NDgzMkNFMUE5QkM0ODQwMDhCNERGRSAvKiBfV0tXZWJzaXRlRGF0YVJlY29yZEludGVybmFsLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTQ4MzJDRDFB
OUJDNDg0MDA4QjRERkUgLyogX1dLV2Vic2l0ZURhdGFSZWNvcmRJbnRlcm5hbC5oICovOyB9Owog
CQkxQTQ4MzJEMTFBOUJEQzJGMDA4QjRERkUgLyogV2Vic2l0ZURhdGFSZWNvcmQuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBNDgzMkNGMUE5QkQ4MjEw
MDhCNERGRSAvKiBXZWJzaXRlRGF0YVJlY29yZC5oICovOyB9OworCQkxQTQ4MzJENjFBOUNERjk2
MDA4QjRERkUgLyogV2Vic2l0ZURhdGEuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMUE0ODMyRDQxQTlDREY5NjAwOEI0REZFIC8qIFdlYnNpdGVEYXRh
LmNwcCAqLzsgfTsKKwkJMUE0ODMyRDcxQTlDREY5NjAwOEI0REZFIC8qIFdlYnNpdGVEYXRhLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTQ4MzJENTFB
OUNERjk2MDA4QjRERkUgLyogV2Vic2l0ZURhdGEuaCAqLzsgfTsKIAkJMUE0QTlDNTUxMkI4MTZD
RjAwOEZFOTg0IC8qIE5ldHNjYXBlUGx1Z2luTW9kdWxlLmNwcCBpbiBTb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBNEE5QzUzMTJCODE2Q0YwMDhGRTk4NCAvKiBO
ZXRzY2FwZVBsdWdpbk1vZHVsZS5jcHAgKi87IH07CiAJCTFBNEE5QzU2MTJCODE2Q0YwMDhGRTk4
NCAvKiBOZXRzY2FwZVBsdWdpbk1vZHVsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMUE0QTlDNTQxMkI4MTZDRjAwOEZFOTg0IC8qIE5ldHNjYXBlUGx1
Z2luTW9kdWxlLmggKi87IH07CiAJCTFBNEE5QzlBMTJCODIxQ0QwMDhGRTk4NCAvKiBOZXRzY2Fw
ZVBsdWdpbk1vZHVsZU1hYy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDFBNEE5Qzk5MTJCODIxQ0QwMDhGRTk4NCAvKiBOZXRzY2FwZVBsdWdpbk1vZHVs
ZU1hYy5tbSAqLzsgfTsKQEAgLTIzMzIsNiArMjMzNCw4IEBACiAJCTFBNDgzMkNBMUE5QkM0NjUw
MDhCNERGRSAvKiBfV0tXZWJzaXRlRGF0YVJlY29yZC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBfV0tXZWJzaXRlRGF0YVJlY29yZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQkxQTQ4MzJDRDFBOUJDNDg0MDA4QjRERkUgLyogX1dLV2Vic2l0ZURhdGFSZWNvcmRJ
bnRlcm5hbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBfV0tXZWJzaXRlRGF0
YVJlY29yZEludGVybmFsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFBNDgzMkNG
MUE5QkQ4MjEwMDhCNERGRSAvKiBXZWJzaXRlRGF0YVJlY29yZC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBXZWJzaXRlRGF0YVJlY29yZC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkxQTQ4MzJENDFBOUNERjk2MDA4QjRERkUgLyogV2Vic2l0ZURhdGEuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gV2Vic2l0ZURhdGEuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTQ4MzJENTFBOUNERjk2MDA4QjRERkUgLyogV2Vi
c2l0ZURhdGEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2Vic2l0ZURhdGEu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUE0QTlDNTMxMkI4MTZDRjAwOEZFOTg0
IC8qIE5ldHNjYXBlUGx1Z2luTW9kdWxlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IE5ldHNjYXBlUGx1Z2luTW9kdWxlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJMUE0QTlDNTQxMkI4MTZDRjAwOEZFOTg0IC8qIE5ldHNjYXBlUGx1Z2luTW9kdWxl
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5ldHNjYXBlUGx1Z2luTW9kdWxl
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFBNEE5Qzk5MTJCODIxQ0QwMDhGRTk4
NCAvKiBOZXRzY2FwZVBsdWdpbk1vZHVsZU1hYy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
Lm9iamNwcDsgcGF0aCA9IE5ldHNjYXBlUGx1Z2luTW9kdWxlTWFjLm1tOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwpAQCAtNDg3Nyw2ICs0ODgxLDggQEAKIAkJCWlzYSA9IFBCWEdyb3VwOwog
CQkJY2hpbGRyZW4gPSAoCiAJCQkJMUFCRjQzNzkxQTM2ODA1MDAwM0ZCMEU2IC8qIFdlYnNpdGVE
YXRhVHlwZXMuaCAqLywKKwkJCQkxQTQ4MzJENDFBOUNERjk2MDA4QjRERkUgLyogV2Vic2l0ZURh
dGEuY3BwICovLAorCQkJCTFBNDgzMkQ1MUE5Q0RGOTYwMDhCNERGRSAvKiBXZWJzaXRlRGF0YS5o
ICovLAogCQkJKTsKIAkJCXBhdGggPSBXZWJzaXRlRGF0YTsKIAkJCXNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7CkBAIC03NDU4LDYgKzc0NjQsNyBAQAogCQkJZmlsZXMgPSAoCiAJCQkJMkQ3RjEzMTAx
QTcwMkZCQTAwOUE2RkJEIC8qIFByb2Nlc3NUeXBlLmggaW4gSGVhZGVycyAqLywKIAkJCQkzN0E1
RTAxNDE4QkJGOTNGMDAwQTA4MUUgLyogX1dLQWN0aXZhdGVkRWxlbWVudEluZm8uaCBpbiBIZWFk
ZXJzICovLAorCQkJCTFBNDgzMkQ3MUE5Q0RGOTYwMDhCNERGRSAvKiBXZWJzaXRlRGF0YS5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJMzc5QTg3MzYxOEJCRkE0MzAwNTg4QUYyIC8qIF9XS0FjdGl2YXRl
ZEVsZW1lbnRJbmZvSW50ZXJuYWwuaCBpbiBIZWFkZXJzICovLAogCQkJCUExQTRGRTVBMThEQ0U5
RkEwMEI1RUE4QSAvKiBfV0tEb3dubG9hZC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTFBNEZFNjEx
OERENTRBNDAwQjVFQThBIC8qIF9XS0Rvd25sb2FkRGVsZWdhdGUuaCBpbiBIZWFkZXJzICovLApA
QCAtOTQ4Niw2ICs5NDkzLDcgQEAKIAkJCQkzMUE2N0UwQzE2NUIyQTk5MDA2Q0JBNjYgLyogUGx1
Z0luQXV0b1N0YXJ0UHJvdmlkZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMUE4RUY0Q0MxMjUy
NDAzNzAwRjcwNjdGIC8qIFBsdWdpbkNvbnRyb2xsZXJQcm94eS5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQkxQTJEOTFBNjEyODFENzM5MDAxRUI5NjIgLyogUGx1Z2luQ29udHJvbGxlclByb3h5TWFj
Lm1tIGluIFNvdXJjZXMgKi8sCisJCQkJMUE0ODMyRDYxQTlDREY5NjAwOEI0REZFIC8qIFdlYnNp
dGVEYXRhLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFBOEVGOTZFMTI1MkFGNkIwMEY3MDY3RiAv
KiBQbHVnaW5Db250cm9sbGVyUHJveHlNZXNzYWdlUmVjZWl2ZXIuY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJMUExNzk3N0YxMzdFRTgyQzAwRjk3RDQ1IC8qIFBsdWdpbkNyZWF0aW9uUGFyYW1ldGVy
cy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk3QzNGOEM5MDE3M0FGNTJEMDA3QjdGMzkgLyogUGx1
Z2luSW5mb3JtYXRpb24uY3BwIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1N0b3JhZ2UvU3RvcmFnZUFyZWFNYXAuY3BwIGIvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9TdG9yYWdlL1N0b3JhZ2VBcmVhTWFwLmNwcAppbmRleCA3ZGFlNmVhYzk5
NjAxNjhiNjA2MDgwOWIwNGEzZmM1ZDUzYTE5NDBjLi43MmNkYzEzODE5Y2QxNGM5NWIxZjgxOTNm
NTRiNjg5ZDlmZjJlMzIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1N0
b3JhZ2UvU3RvcmFnZUFyZWFNYXAuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
U3RvcmFnZS9TdG9yYWdlQXJlYU1hcC5jcHAKQEAgLTcxLDE0ICs3MSwxNCBAQCBTdG9yYWdlQXJl
YU1hcDo6U3RvcmFnZUFyZWFNYXAoU3RvcmFnZU5hbWVzcGFjZUltcGwqIHN0b3JhZ2VOYW1lc3Bh
Y2UsIFJlZjxXZWJDbwogICAgIHN3aXRjaCAobV9zdG9yYWdlVHlwZSkgewogICAgIGNhc2UgV2Vi
Q29yZTo6TG9jYWxTdG9yYWdlOgogICAgICAgICBpZiAoU2VjdXJpdHlPcmlnaW4qIHRvcExldmVs
T3JpZ2luID0gc3RvcmFnZU5hbWVzcGFjZS0+dG9wTGV2ZWxPcmlnaW4oKSkKLSAgICAgICAgICAg
IFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmQo
TWVzc2FnZXM6OlN0b3JhZ2VNYW5hZ2VyOjpDcmVhdGVUcmFuc2llbnRMb2NhbFN0b3JhZ2VNYXAo
bV9zdG9yYWdlTWFwSUQsIHN0b3JhZ2VOYW1lc3BhY2UtPnN0b3JhZ2VOYW1lc3BhY2VJRCgpLCBT
ZWN1cml0eU9yaWdpbkRhdGE6OmZyb21TZWN1cml0eU9yaWdpbigqdG9wTGV2ZWxPcmlnaW4pLCBT
ZWN1cml0eU9yaWdpbkRhdGE6OmZyb21TZWN1cml0eU9yaWdpbihtX3NlY3VyaXR5T3JpZ2luLmdl
dCgpKSksIDApOworICAgICAgICAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJv
Y2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6U3RvcmFnZU1hbmFnZXI6OkNyZWF0ZVRy
YW5zaWVudExvY2FsU3RvcmFnZU1hcChtX3N0b3JhZ2VNYXBJRCwgc3RvcmFnZU5hbWVzcGFjZS0+
c3RvcmFnZU5hbWVzcGFjZUlEKCksIFNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbVNlY3VyaXR5T3Jp
Z2luKCp0b3BMZXZlbE9yaWdpbiksIFNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbVNlY3VyaXR5T3Jp
Z2luKG1fc2VjdXJpdHlPcmlnaW4pKSwgMCk7CiAgICAgICAgIGVsc2UKLSAgICAgICAgICAgIFdl
YlByb2Nlc3M6OnNpbmdsZXRvbigpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmQoTWVz
c2FnZXM6OlN0b3JhZ2VNYW5hZ2VyOjpDcmVhdGVMb2NhbFN0b3JhZ2VNYXAobV9zdG9yYWdlTWFw
SUQsIHN0b3JhZ2VOYW1lc3BhY2UtPnN0b3JhZ2VOYW1lc3BhY2VJRCgpLCBTZWN1cml0eU9yaWdp
bkRhdGE6OmZyb21TZWN1cml0eU9yaWdpbihtX3NlY3VyaXR5T3JpZ2luLmdldCgpKSksIDApOwor
ICAgICAgICAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rp
b24oKS0+c2VuZChNZXNzYWdlczo6U3RvcmFnZU1hbmFnZXI6OkNyZWF0ZUxvY2FsU3RvcmFnZU1h
cChtX3N0b3JhZ2VNYXBJRCwgc3RvcmFnZU5hbWVzcGFjZS0+c3RvcmFnZU5hbWVzcGFjZUlEKCks
IFNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbVNlY3VyaXR5T3JpZ2luKG1fc2VjdXJpdHlPcmlnaW4p
KSwgMCk7CiAKICAgICAgICAgYnJlYWs7CiAKICAgICBjYXNlIFdlYkNvcmU6OlNlc3Npb25TdG9y
YWdlOgotICAgICAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQcm9jZXNzQ29ubmVj
dGlvbigpLT5zZW5kKE1lc3NhZ2VzOjpTdG9yYWdlTWFuYWdlcjo6Q3JlYXRlU2Vzc2lvblN0b3Jh
Z2VNYXAobV9zdG9yYWdlTWFwSUQsIHN0b3JhZ2VOYW1lc3BhY2UtPnN0b3JhZ2VOYW1lc3BhY2VJ
RCgpLCBTZWN1cml0eU9yaWdpbkRhdGE6OmZyb21TZWN1cml0eU9yaWdpbihtX3NlY3VyaXR5T3Jp
Z2luLmdldCgpKSksIDApOworICAgICAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5wYXJlbnRQ
cm9jZXNzQ29ubmVjdGlvbigpLT5zZW5kKE1lc3NhZ2VzOjpTdG9yYWdlTWFuYWdlcjo6Q3JlYXRl
U2Vzc2lvblN0b3JhZ2VNYXAobV9zdG9yYWdlTWFwSUQsIHN0b3JhZ2VOYW1lc3BhY2UtPnN0b3Jh
Z2VOYW1lc3BhY2VJRCgpLCBTZWN1cml0eU9yaWdpbkRhdGE6OmZyb21TZWN1cml0eU9yaWdpbiht
X3NlY3VyaXR5T3JpZ2luKSksIDApOwogICAgICAgICBicmVhazsKICAgICB9CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAgYi9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwCmluZGV4IGZkMzgzMTE2YzJjMjRkZjBkZGM3
NWE3NzhjMzQ1N2ZkNzE0NjllNzAuLjZkNGE5OGRkNzkwMjliZjY1NDkzZDE2NGU3NGY4MWYzYjQ2
NmMwMzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5j
cHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcApAQCAtNjEs
NiArNjEsNyBAQAogI2luY2x1ZGUgIldlYlByb2Nlc3NQb29sTWVzc2FnZXMuaCIKICNpbmNsdWRl
ICJXZWJQcm9jZXNzUHJveHlNZXNzYWdlcy5oIgogI2luY2x1ZGUgIldlYlJlc291cmNlQ2FjaGVN
YW5hZ2VyLmgiCisjaW5jbHVkZSAiV2Vic2l0ZURhdGEuaCIKICNpbmNsdWRlICJXZWJzaXRlRGF0
YVR5cGVzLmgiCiAjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSlNMb2NrLmg+CiAjaW5jbHVkZSA8
SmF2YVNjcmlwdENvcmUvTWVtb3J5U3RhdGlzdGljcy5oPgpAQCAtMTEzMyw2ICsxMTM0LDE4IEBA
IHZvaWQgV2ViUHJvY2Vzczo6cmVsZWFzZVBhZ2VDYWNoZSgpCiAgICAgUGFnZUNhY2hlOjpzaW5n
bGV0b24oKS5wcnVuZVRvU2l6ZU5vdygwLCBQcnVuaW5nUmVhc29uOjpNZW1vcnlQcmVzc3VyZSk7
CiB9CiAKK3ZvaWQgV2ViUHJvY2Vzczo6ZmV0Y2hXZWJzaXRlRGF0YShXZWJDb3JlOjpTZXNzaW9u
SUQgc2Vzc2lvbklELCB1aW50NjRfdCB3ZWJzaXRlRGF0YVR5cGVzLCB1aW50NjRfdCBjYWxsYmFj
a0lEKQoreworICAgIFdlYnNpdGVEYXRhIHdlYnNpdGVEYXRhOworCisgICAgaWYgKHdlYnNpdGVE
YXRhVHlwZXMgJiBXZWJzaXRlRGF0YVR5cGVNZW1vcnlDYWNoZSkgeworICAgICAgICBmb3IgKGF1
dG8mIG9yaWdpbiA6IE1lbW9yeUNhY2hlOjpzaW5nbGV0b24oKS5vcmlnaW5zV2l0aENhY2hlKHNl
c3Npb25JRCkpCisgICAgICAgICAgICB3ZWJzaXRlRGF0YS5lbnRyaWVzLmFwcGVuZChXZWJzaXRl
RGF0YTo6RW50cnkgeyBvcmlnaW4sIFdlYnNpdGVEYXRhVHlwZU1lbW9yeUNhY2hlIH0pOworICAg
IH0KKworICAgIHBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmQoTWVzc2FnZXM6OldlYlBy
b2Nlc3NQcm94eTo6RGlkRmV0Y2hXZWJzaXRlRGF0YShjYWxsYmFja0lELCB3ZWJzaXRlRGF0YSks
IDApOworfQorCiB2b2lkIFdlYlByb2Nlc3M6OmRlbGV0ZVdlYnNpdGVEYXRhKFNlc3Npb25JRCBz
ZXNzaW9uSUQsIHVpbnQ2NF90IHdlYnNpdGVEYXRhVHlwZXMsIHN0ZDo6Y2hyb25vOjpzeXN0ZW1f
Y2xvY2s6OnRpbWVfcG9pbnQgbW9kaWZpZWRTaW5jZSwgdWludDY0X3QgY2FsbGJhY2tJRCkKIHsK
ICAgICBVTlVTRURfUEFSQU0obW9kaWZpZWRTaW5jZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
V2ViUHJvY2Vzcy5oCmluZGV4IDc5YmI1MWM1MTk4MGUzMGYyN2Q5Nzk2NjJjZDYyYTI4ZTJkOGM5
NmUuLmJjNzVhMTMyOTZmMTA1ZjZjODBlNGFiOTJmYmExNWI0NDI5NzdhOTQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5oCisrKyBiL1NvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5oCkBAIC0yNTksNiArMjU5LDcgQEAgcHJpdmF0ZToK
IAogICAgIHZvaWQgcmVsZWFzZVBhZ2VDYWNoZSgpOwogCisgICAgdm9pZCBmZXRjaFdlYnNpdGVE
YXRhKFdlYkNvcmU6OlNlc3Npb25JRCwgdWludDY0X3Qgd2Vic2l0ZURhdGFUeXBlcywgdWludDY0
X3QgY2FsbGJhY2tJRCk7CiAgICAgdm9pZCBkZWxldGVXZWJzaXRlRGF0YShXZWJDb3JlOjpTZXNz
aW9uSUQsIHVpbnQ2NF90IHdlYnNpdGVEYXRhVHlwZXMsIHN0ZDo6Y2hyb25vOjpzeXN0ZW1fY2xv
Y2s6OnRpbWVfcG9pbnQgbW9kaWZpZWRTaW5jZSwgdWludDY0X3QgY2FsbGJhY2tJRCk7CiAKICNp
ZiBVU0UoU09VUCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJv
Y2Vzcy5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5t
ZXNzYWdlcy5pbgppbmRleCA2ZGIxNTRkZGVhMzIxYWZmZjBlOWY0NzUyNTg0NjE1Mzk2Mzg2Nzdm
Li40ZTg3OGEyODBkZGE0MDYzZmFiZGIyM2YxYjgxMTEyNWM5MTYxMzgxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MubWVzc2FnZXMuaW4KKysrIGIvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLm1lc3NhZ2VzLmluCkBAIC03OSw2ICs3
OSw3IEBAIG1lc3NhZ2VzIC0+IFdlYlByb2Nlc3MgTGVnYWN5UmVjZWl2ZXIgewogCiAgICAgUmVs
ZWFzZVBhZ2VDYWNoZSgpCiAKKyAgICBGZXRjaFdlYnNpdGVEYXRhKFdlYkNvcmU6OlNlc3Npb25J
RCBzZXNzaW9uSUQsIHVpbnQ2NF90IHdlYnNpdGVEYXRhVHlwZXMsIHVpbnQ2NF90IGNhbGxiYWNr
SUQpCiAgICAgRGVsZXRlV2Vic2l0ZURhdGEoV2ViQ29yZTo6U2Vzc2lvbklEIHNlc3Npb25JRCwg
dWludDY0X3Qgd2Vic2l0ZURhdGFUeXBlcywgc3RkOjpjaHJvbm86OnN5c3RlbV9jbG9jazo6dGlt
ZV9wb2ludCBtb2RpZmllZFNpbmNlLCB1aW50NjRfdCBjYWxsYmFja0lEKQogCiAgICAgU2V0UHJv
Y2Vzc1N1cHByZXNzaW9uRW5hYmxlZChib29sIGZsYWcpCg==
</data>
<flag name="review"
          id="272184"
          type_id="1"
          status="+"
          setter="kling"
    />
          </attachment>
      

    </bug>

</bugzilla>