<?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>131310</bug_id>
          
          <creation_ts>2014-04-07 12:33:09 -0700</creation_ts>
          <short_desc>Introduce API::InjectedBundle::PageUIClient</short_desc>
          <delta_ts>2014-04-07 14:29:16 -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>WebKit2</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>mitz</reporter>
          <assigned_to>mitz</assigned_to>
          <cc>benjamin</cc>
    
    <cc>clopez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>joepeck</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>998204</commentid>
    <comment_count>0</comment_count>
    <who name="">mitz</who>
    <bug_when>2014-04-07 12:33:09 -0700</bug_when>
    <thetext>Introduce API::InjectedBundle::PageUIClient</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>998212</commentid>
    <comment_count>1</comment_count>
      <attachid>228752</attachid>
    <who name="">mitz</who>
    <bug_when>2014-04-07 12:40:25 -0700</bug_when>
    <thetext>Created attachment 228752
Add and deploy new client interface class</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>998215</commentid>
    <comment_count>2</comment_count>
    <who name="">mitz</who>
    <bug_when>2014-04-07 12:44:50 -0700</bug_when>
    <thetext>Committed &lt;http://trac.webkit.org/r166879&gt;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>998219</commentid>
    <comment_count>3</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2014-04-07 13:10:25 -0700</bug_when>
    <thetext>Looks like this broke all the mac bots (compile-webkit). Missing an include maybe?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>998220</commentid>
    <comment_count>4</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2014-04-07 13:11:00 -0700</bug_when>
    <thetext>&lt;http://build.webkit.org/builders/Apple%20Mavericks%20Release%20%28Build%29/builds/5312&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>998222</commentid>
    <comment_count>5</comment_count>
    <who name="">mitz</who>
    <bug_when>2014-04-07 13:21:29 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; Looks like this broke all the mac bots (compile-webkit). Missing an include maybe?

I tried to fix it in &lt;http://trac.webkit.org/r166882&gt;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>998241</commentid>
    <comment_count>6</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2014-04-07 14:29:16 -0700</bug_when>
    <thetext>This broke also the WebKitGTK+ build:

http://build.webkit.org/builders/GTK%20Linux%2064-bit%20Release/builds/46219</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>228752</attachid>
            <date>2014-04-07 12:40:25 -0700</date>
            <delta_ts>2014-04-07 12:42:04 -0700</delta_ts>
            <desc>Add and deploy new client interface class</desc>
            <filename>bug-131310-20140407124004.patch</filename>
            <type>text/plain</type>
            <size>30350</size>
            <attacher>mitz</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDE2Njg3NykKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDY4IEBACisyMDE0LTA0LTA3ICBEYW4gQmVy
bnN0ZWluICA8bWl0ekBhcHBsZS5jb20+CisKKyAgICAgICAgSW50cm9kdWNlIEFQSTo6SW5qZWN0
ZWRCdW5kbGU6OlBhZ2VVSUNsaWVudAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTMxMzEwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgKiBXZWJLaXQyLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IEFkZGVk
IHJlZmVyZW5jZXMgdG8gbmV3IGZpbGVzLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9HZW9sb2Nh
dGlvbi9HZW9sb2NhdGlvblBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlci5jcHA6IEFkZGVkICNpbmNs
dWRlIHRoYXQKKyAgICAgICAgYmVjYW1lIG5lY2Vzc2FyeS4KKworICAgICAgICAqIFdlYlByb2Nl
c3MvSW5qZWN0ZWRCdW5kbGUvQVBJL0FQSUluamVjdGVkQnVuZGxlUGFnZVVJQ2xpZW50Lmg6IEFk
ZGVkLgorICAgICAgICAoQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50Ojp+UGFnZVVJ
Q2xpZW50KToKKyAgICAgICAgKEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlBhZ2VVSUNsaWVudDo6d2ls
bEFkZE1lc3NhZ2VUb0NvbnNvbGUpOgorICAgICAgICAoQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFn
ZVVJQ2xpZW50Ojp3aWxsU2V0U3RhdHVzYmFyVGV4dCk6CisgICAgICAgIChBUEk6OkluamVjdGVk
QnVuZGxlOjpQYWdlVUlDbGllbnQ6OndpbGxSdW5KYXZhU2NyaXB0QWxlcnQpOgorICAgICAgICAo
QVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50Ojp3aWxsUnVuSmF2YVNjcmlwdENvbmZp
cm0pOgorICAgICAgICAoQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50Ojp3aWxsUnVu
SmF2YVNjcmlwdFByb21wdCk6CisgICAgICAgIChBUEk6OkluamVjdGVkQnVuZGxlOjpQYWdlVUlD
bGllbnQ6Om1vdXNlRGlkTW92ZU92ZXJFbGVtZW50KToKKyAgICAgICAgKEFQSTo6SW5qZWN0ZWRC
dW5kbGU6OlBhZ2VVSUNsaWVudDo6cGFnZURpZFNjcm9sbCk6CisgICAgICAgIChBUEk6OkluamVj
dGVkQnVuZGxlOjpQYWdlVUlDbGllbnQ6OnNob3VsZEdlbmVyYXRlRmlsZUZvclVwbG9hZCk6Cisg
ICAgICAgIChBUEk6OkluamVjdGVkQnVuZGxlOjpQYWdlVUlDbGllbnQ6OmdlbmVyYXRlRmlsZUZv
clVwbG9hZCk6CisgICAgICAgIChBUEk6OkluamVjdGVkQnVuZGxlOjpQYWdlVUlDbGllbnQ6OnN0
YXR1c0JhcklzVmlzaWJsZSk6CisgICAgICAgIChBUEk6OkluamVjdGVkQnVuZGxlOjpQYWdlVUlD
bGllbnQ6Om1lbnVCYXJJc1Zpc2libGUpOgorICAgICAgICAoQVBJOjpJbmplY3RlZEJ1bmRsZTo6
UGFnZVVJQ2xpZW50Ojp0b29sYmFyc0FyZVZpc2libGUpOgorICAgICAgICAoQVBJOjpJbmplY3Rl
ZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpkaWRSZWFjaEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90
YSk6CisgICAgICAgIChBUEk6OkluamVjdGVkQnVuZGxlOjpQYWdlVUlDbGllbnQ6OmRpZEV4Y2Vl
ZERhdGFiYXNlUXVvdGEpOgorICAgICAgICAoQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xp
ZW50OjpwbHVnSW5TdGFydExhYmVsVGl0bGUpOgorICAgICAgICAoQVBJOjpJbmplY3RlZEJ1bmRs
ZTo6UGFnZVVJQ2xpZW50OjpwbHVnSW5TdGFydExhYmVsU3VidGl0bGUpOgorICAgICAgICAoQVBJ
OjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpwbHVnSW5FeHRyYVN0eWxlU2hlZXQpOgor
ICAgICAgICAoQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpwbHVnSW5FeHRyYVNj
cmlwdCk6CisKKyAgICAgICAgKiBXZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVu
ZGxlUGFnZS5jcHA6CisgICAgICAgIChXS0J1bmRsZVBhZ2VTZXRVSUNsaWVudCk6IENoYW5nZWQg
dG8gY3JlYXRlIGFuIEluamVjdGVkQnVuZGxlUGFnZVVJQ2xpZW50IGFuZCBzZXQgaXQgb24KKyAg
ICAgICAgdGhlIFdlYlBhZ2UuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL0luamVjdGVkQnVuZGxl
L0luamVjdGVkQnVuZGxlUGFnZVVJQ2xpZW50LmNwcDoKKyAgICAgICAgKFdlYktpdDo6SW5qZWN0
ZWRCdW5kbGVQYWdlVUlDbGllbnQ6OkluamVjdGVkQnVuZGxlUGFnZVVJQ2xpZW50KTogQWRkZWQg
Y29uc3RydWN0b3IgZnJvbQorICAgICAgICBXS0J1bmRsZVBhZ2VVSUNsaWVudC4KKyAgICAgICAg
KFdlYktpdDo6dG9VSUVsZW1lbnRWaXNpYmlsaXR5KTogQWRkZWQgaGVscGVyIHRvIGNvbnZlcnQg
ZnJvbSBDIFNQSSBlbnVtIHRvIGludGVybmFsIGVudW0uCisgICAgICAgIChXZWJLaXQ6OkluamVj
dGVkQnVuZGxlUGFnZVVJQ2xpZW50OjpzdGF0dXNCYXJJc1Zpc2libGUpOiBDaGFuZ2VkIHRvIHVz
ZSB0aGUgYWJvdmUuCisgICAgICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxlUGFnZVVJQ2xpZW50
OjptZW51QmFySXNWaXNpYmxlKTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OkluamVjdGVkQnVu
ZGxlUGFnZVVJQ2xpZW50Ojp0b29sYmFyc0FyZVZpc2libGUpOiBEaXR0by4KKyAgICAgICAgKiBX
ZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlUGFnZVVJQ2xpZW50Lmg6IEFk
ZGVkIGluaGVyaXRhbmNlIGZyb20KKyAgICAgICAgQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJ
Q2xpZW50LCBtYXJrZWQgb3ZlcnJpZGVzIGFzIHN1Y2guCisKKyAgICAgICAgKiBXZWJQcm9jZXNz
L1N0b3JhZ2UvU3RvcmFnZUFyZWFNYXAuY3BwOiBBZGRlZCAjaW5jbHVkZSB0aGF0IGJlY2FtZSBu
ZWNlc3NhcnkuCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVD
bGllbnQuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJDaHJvbWVDbGllbnQ6OnRvb2xiYXJzVmlz
aWJsZSk6IFVwZGF0ZWQgdG8gdXNlIG5ldyBpbnRlcm5hbCBlbnVtLgorICAgICAgICAoV2ViS2l0
OjpXZWJDaHJvbWVDbGllbnQ6OnN0YXR1c2JhclZpc2libGUpOiBEaXR0by4KKyAgICAgICAgKFdl
YktpdDo6V2ViQ2hyb21lQ2xpZW50OjptZW51YmFyVmlzaWJsZSk6IERpdHRvLgorCisgICAgICAg
ICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQ
YWdlOjpXZWJQYWdlKTogSW5pdGlhbGl6ZWQgbV91aUNsaWVudCBtZW1iZXIuCisgICAgICAgIChX
ZWJLaXQ6OldlYlBhZ2U6OnNldEluamVjdGVkQnVuZGxlVUlDbGllbnQpOiBBZGRlZC4gVXBkYXRl
cyBtX3VpQ2xpZW50LgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpjbG9zZSk6IFVwZGF0ZWQg
Zm9yIGNoYW5nZSBpbiBtX3VpQ2xpZW50LgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpwYWdl
RGlkU2Nyb2xsKTogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OmluaXRpYWxpemVJ
bmplY3RlZEJ1bmRsZVVJQ2xpZW50KTogRGVsZXRlZC4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViUGFnZS5oOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjppbmplY3RlZEJ1bmRs
ZVVJQ2xpZW50KTogVXBkYXRlZCByZXR1cm4gdHlwZS4KKworICAgICAgICAqIFdlYlByb2Nlc3Mv
V2ViUGFnZS9tYWMvV0tBY2Nlc3NpYmlsaXR5V2ViUGFnZU9iamVjdEJhc2UubW06IEFkZGVkICNp
bmNsdWRlIHRoYXQgYmVjYW1lCisgICAgICAgIG5lY2Vzc2FyeS4KKwogMjAxNC0wNC0wNiAgRGFu
IEJlcm5zdGVpbiAgPG1pdHpAYXBwbGUuY29tPgogCiAgICAgICAgIENsZWFuIHVwIFdLR2VzdHVy
ZVR5cGVzLmgKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1dlYktpdDIueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvago9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJLaXQyLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2oJKHJldmlzaW9uIDE2Njg3NSkKKysrIFNvdXJjZS9XZWJLaXQyL1dlYktp
dDIueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5KQpAQCAtNjYyLDYgKzY2
Miw3IEBACiAJCTM3NjZGOUVGMTg5QTEyNDQwMDNDRjE5QiAvKiBRdWFydHpDb3JlLmZyYW1ld29y
ayBpbiBGcmFtZXdvcmtzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBQTFD
QzVDMTAwRkExQTEwMDc4REVCQyAvKiBRdWFydHpDb3JlLmZyYW1ld29yayAqLzsgfTsKIAkJMzc2
NkY5RjAxODlBMTI0ODAwM0NGMTlCIC8qIFdlYkNvcmUuZnJhbWV3b3JrIGluIEZyYW1ld29ya3Mg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBMUM3OUExMDBFN0ZDNTAwNzhE
RUJDIC8qIFdlYkNvcmUuZnJhbWV3b3JrICovOyB9OwogCQkzNzY2RjlGMTE4OUExMjU0MDAzQ0Yx
OUIgLyogbGliaWN1Y29yZS5keWxpYiBpbiBGcmFtZXdvcmtzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEJDODdERkE5MTAxODEwMTQwMDU2NDIxNiAvKiBsaWJpY3Vjb3JlLmR5
bGliICovOyB9OworCQkzNzY5MDc5QTE4RjMxQ0IyMDAxREZGMDQgLyogQVBJSW5qZWN0ZWRCdW5k
bGVQYWdlVUlDbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDM3NjkwNzk4MThGMzFDQjIwMDFERkYwNCAvKiBBUElJbmplY3RlZEJ1bmRsZVBhZ2VV
SUNsaWVudC5oICovOyB9OwogCQkzNzY5NDUyNTE4NEZDNkI2MDBDREUyMUYgLyogU2VjdXJpdHku
ZnJhbWV3b3JrIGluIEZyYW1ld29ya3MgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQkNGNTA2ODQxMjQzMTg2MTAwNTk1NUFFIC8qIFNlY3VyaXR5LmZyYW1ld29yayAqLzsgfTsK
IAkJMzc3RUFENDUxN0UyQzUxQTAwMkQxOTNEIC8qIFdLRGVjbGFyYXRpb25TcGVjaWZpZXJzLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzNzdFQUQ0NDE3
RTJDNTFBMDAyRDE5M0QgLyogV0tEZWNsYXJhdGlvblNwZWNpZmllcnMuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQdWJsaWMsICk7IH07IH07CiAJCTM3N0VBRDQ4MTdFMkM3N0IwMDJE
MTkzRCAvKiBXS1VzZXJDb250ZW50SW5qZWN0ZWRGcmFtZXMuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDM3N0VBRDQ2MTdFMkM3N0IwMDJEMTkzRCAvKiBX
S1VzZXJDb250ZW50SW5qZWN0ZWRGcmFtZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OwpAQCAtMjQ3OCw2ICsyNDc5LDcgQEAKIAkJMzc2MDg4MUQxNTA0
MTNFOTAwRkM4MkM3IC8qIFdlYlJlbmRlck9iamVjdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBXZWJSZW5kZXJPYmplY3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJMzc2MDg4MjAxNTA0MTRGNzAwRkM4MkM3IC8qIFdLUmVuZGVyT2JqZWN0LmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdLUmVuZGVyT2JqZWN0LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzc2MDg4MjExNTA0MTRGNzAwRkM4MkM3IC8qIFdLUmVu
ZGVyT2JqZWN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdLUmVuZGVyT2Jq
ZWN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTM3NjkwNzk4MThGMzFDQjIwMDFE
RkYwNCAvKiBBUElJbmplY3RlZEJ1bmRsZVBhZ2VVSUNsaWVudC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IG5hbWUgPSBBUElJbmplY3RlZEJ1bmRsZVBhZ2VVSUNsaWVudC5oOyBwYXRoID0g
QVBJL0FQSUluamVjdGVkQnVuZGxlUGFnZVVJQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTM3N0VBRDQ0MTdFMkM1MUEwMDJEMTkzRCAvKiBXS0RlY2xhcmF0aW9uU3BlY2lm
aWVycy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXS0RlY2xhcmF0aW9uU3Bl
Y2lmaWVycy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzNzdFQUQ0NjE3RTJDNzdC
MDAyRDE5M0QgLyogV0tVc2VyQ29udGVudEluamVjdGVkRnJhbWVzLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFdLVXNlckNvbnRlbnRJbmplY3RlZEZyYW1lcy5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQkzNzdFQUQ0NzE3RTJDNzdCMDAyRDE5M0QgLyogV0tVc2Vy
U2NyaXB0SW5qZWN0aW9uVGltZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBX
S1VzZXJTY3JpcHRJbmplY3Rpb25UaW1lLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBA
IC01NzU0LDYgKzU3NTYsNyBAQAogCQkJCUJDMjA0RUU3MTFDODNFQUQwMDhGMzM3NSAvKiBBUEkg
Ki8sCiAJCQkJQkM0QkVFOTYxMjBBMDkxNzAwRkJBMEM3IC8qIERPTSAqLywKIAkJCQlCQzIwNEVF
NDExQzgzRTlDMDA4RjMzNzUgLyogbWFjICovLAorCQkJCTM3NjkwNzk4MThGMzFDQjIwMDFERkYw
NCAvKiBBUElJbmplY3RlZEJ1bmRsZVBhZ2VVSUNsaWVudC5oICovLAogCQkJCUJDMjA0RUUwMTFD
ODNFOTgwMDhGMzM3NSAvKiBJbmplY3RlZEJ1bmRsZS5jcHAgKi8sCiAJCQkJQkMyMDRFRTExMUM4
M0U5ODAwOEYzMzc1IC8qIEluamVjdGVkQnVuZGxlLmggKi8sCiAJCQkJOTM1RUVCOEYxMjc3NjE1
RDAwMzMyMkI4IC8qIEluamVjdGVkQnVuZGxlQmFja0ZvcndhcmRMaXN0LmNwcCAqLywKQEAgLTcy
NzQsNiArNzI3Nyw3IEBACiAJCQkJQzA5QUU1RTkxMjUyNTdDMjAwMjU4MjVEIC8qIFdLTmF0aXZl
RXZlbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDRjY5RkE5MTE3NkQxQ0IwMDQ3MUE1MiAvKiBX
S05hdmlnYXRpb25EYXRhUmVmLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMThCRTE3OTE0NzQzRTZG
MDBBOEZCQjIgLyogV0tOb3RpZmljYXRpb24uaCBpbiBIZWFkZXJzICovLAorCQkJCTM3NjkwNzlB
MThGMzFDQjIwMDFERkYwNCAvKiBBUElJbmplY3RlZEJ1bmRsZVBhZ2VVSUNsaWVudC5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJMzE4QkUxNzExNDc0M0RCMTAwQThGQkIyIC8qIFdLTm90aWZpY2F0aW9u
TWFuYWdlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzFBMkVDNzQxNDhENTlDQTAwODEwRDcxIC8q
IFdLTm90aWZpY2F0aW9uUGVybWlzc2lvblJlcXVlc3QuaCBpbiBIZWFkZXJzICovLAogCQkJCTMx
MkMwQzRBMTQ2RERDOEEwMDE2QzkxMSAvKiBXS05vdGlmaWNhdGlvblByb3ZpZGVyLmggaW4gSGVh
ZGVycyAqLywKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvR2VvbG9jYXRpb24vR2Vv
bG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXIuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvR2VvbG9jYXRpb24vR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVx
dWVzdE1hbmFnZXIuY3BwCShyZXZpc2lvbiAxNjY4NzUpCisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL0dlb2xvY2F0aW9uL0dlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMzIsNiArMzIsNyBAQAogI2luY2x1ZGUgIldlYkZyYW1lLmgi
CiAjaW5jbHVkZSAiV2ViUGFnZS5oIgogI2luY2x1ZGUgIldlYlBhZ2VQcm94eU1lc3NhZ2VzLmgi
CisjaW5jbHVkZSA8V2ViQ29yZS9Eb2N1bWVudC5oPgogI2luY2x1ZGUgPFdlYkNvcmUvRnJhbWUu
aD4KICNpbmNsdWRlIDxXZWJDb3JlL0ZyYW1lTG9hZGVyLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9H
ZW9sb2NhdGlvbi5oPgpJbmRleDogU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1
bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VVSUNsaWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VVSUNs
aWVudC5jcHAJKHJldmlzaW9uIDE2Njg3NSkKKysrIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
SW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdlVUlDbGllbnQuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0zNiw2ICszNiwxMSBAQCB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAogbmFtZXNw
YWNlIFdlYktpdCB7CiAKK0luamVjdGVkQnVuZGxlUGFnZVVJQ2xpZW50OjpJbmplY3RlZEJ1bmRs
ZVBhZ2VVSUNsaWVudChjb25zdCBXS0J1bmRsZVBhZ2VVSUNsaWVudEJhc2UqIGNsaWVudCkKK3sK
KyAgICBpbml0aWFsaXplKGNsaWVudCk7Cit9CisKIHZvaWQgSW5qZWN0ZWRCdW5kbGVQYWdlVUlD
bGllbnQ6OndpbGxBZGRNZXNzYWdlVG9Db25zb2xlKFdlYlBhZ2UqIHBhZ2UsIGNvbnN0IFN0cmlu
ZyYgbWVzc2FnZSwgaW50MzJfdCBsaW5lTnVtYmVyKQogewogICAgIGlmIChtX2NsaWVudC53aWxs
QWRkTWVzc2FnZVRvQ29uc29sZSkKQEAgLTEwMiwyOCArMTA3LDQzIEBAIFN0cmluZyBJbmplY3Rl
ZEJ1bmRsZVBhZ2VVSUNsaWVudDo6Z2VuZXIKICAgICByZXR1cm4gZ2VuZXJhdGVkRmlsZVBhdGgg
PyBnZW5lcmF0ZWRGaWxlUGF0aC0+c3RyaW5nKCkgOiBTdHJpbmcoKTsKIH0KIAotV0tCdW5kbGVQ
YWdlVUlFbGVtZW50VmlzaWJpbGl0eSBJbmplY3RlZEJ1bmRsZVBhZ2VVSUNsaWVudDo6c3RhdHVz
QmFySXNWaXNpYmxlKFdlYlBhZ2UqIHBhZ2UpCitzdGF0aWMgQVBJOjpJbmplY3RlZEJ1bmRsZTo6
UGFnZVVJQ2xpZW50OjpVSUVsZW1lbnRWaXNpYmlsaXR5IHRvVUlFbGVtZW50VmlzaWJpbGl0eShX
S0J1bmRsZVBhZ2VVSUVsZW1lbnRWaXNpYmlsaXR5IHZpc2liaWxpdHkpCit7CisgICAgc3dpdGNo
ICh2aXNpYmlsaXR5KSB7CisgICAgY2FzZSBXS0J1bmRsZVBhZ2VVSUVsZW1lbnRWaXNpYmlsaXR5
VW5rbm93bjoKKyAgICAgICAgcmV0dXJuIEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlBhZ2VVSUNsaWVu
dDo6VUlFbGVtZW50VmlzaWJpbGl0eTo6VW5rbm93bjsKKyAgICBjYXNlIFdLQnVuZGxlUGFnZVVJ
RWxlbWVudFZpc2libGU6CisgICAgICAgIHJldHVybiBBUEk6OkluamVjdGVkQnVuZGxlOjpQYWdl
VUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHk6OlZpc2libGU7CisgICAgY2FzZSBXS0J1bmRs
ZVBhZ2VVSUVsZW1lbnRIaWRkZW46CisgICAgICAgIHJldHVybiBBUEk6OkluamVjdGVkQnVuZGxl
OjpQYWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHk6OkhpZGRlbjsKKyAgICB9CisKKyAg
ICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4gQVBJOjpJbmplY3RlZEJ1bmRsZTo6
UGFnZVVJQ2xpZW50OjpVSUVsZW1lbnRWaXNpYmlsaXR5OjpVbmtub3duOworfQorCitBUEk6Oklu
amVjdGVkQnVuZGxlOjpQYWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHkgSW5qZWN0ZWRC
dW5kbGVQYWdlVUlDbGllbnQ6OnN0YXR1c0JhcklzVmlzaWJsZShXZWJQYWdlKiBwYWdlKQogewog
ICAgIGlmICghbV9jbGllbnQuc3RhdHVzQmFySXNWaXNpYmxlKQotICAgICAgICByZXR1cm4gV0tC
dW5kbGVQYWdlVUlFbGVtZW50VmlzaWJpbGl0eVVua25vd247CisgICAgICAgIHJldHVybiBBUEk6
OkluamVjdGVkQnVuZGxlOjpQYWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHk6OlVua25v
d247CiAgICAgCi0gICAgcmV0dXJuIG1fY2xpZW50LnN0YXR1c0JhcklzVmlzaWJsZSh0b0FQSShw
YWdlKSwgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKTsKKyAgICByZXR1cm4gdG9VSUVsZW1lbnRW
aXNpYmlsaXR5KG1fY2xpZW50LnN0YXR1c0JhcklzVmlzaWJsZSh0b0FQSShwYWdlKSwgbV9jbGll
bnQuYmFzZS5jbGllbnRJbmZvKSk7CiB9CiAKLVdLQnVuZGxlUGFnZVVJRWxlbWVudFZpc2liaWxp
dHkgSW5qZWN0ZWRCdW5kbGVQYWdlVUlDbGllbnQ6Om1lbnVCYXJJc1Zpc2libGUoV2ViUGFnZSog
cGFnZSkKK0FQSTo6SW5qZWN0ZWRCdW5kbGU6OlBhZ2VVSUNsaWVudDo6VUlFbGVtZW50VmlzaWJp
bGl0eSBJbmplY3RlZEJ1bmRsZVBhZ2VVSUNsaWVudDo6bWVudUJhcklzVmlzaWJsZShXZWJQYWdl
KiBwYWdlKQogewogICAgIGlmICghbV9jbGllbnQubWVudUJhcklzVmlzaWJsZSkKLSAgICAgICAg
cmV0dXJuIFdLQnVuZGxlUGFnZVVJRWxlbWVudFZpc2liaWxpdHlVbmtub3duOworICAgICAgICBy
ZXR1cm4gQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVsZW1lbnRWaXNpYmls
aXR5OjpVbmtub3duOwogICAgIAotICAgIHJldHVybiBtX2NsaWVudC5tZW51QmFySXNWaXNpYmxl
KHRvQVBJKHBhZ2UpLCBtX2NsaWVudC5iYXNlLmNsaWVudEluZm8pOworICAgIHJldHVybiB0b1VJ
RWxlbWVudFZpc2liaWxpdHkobV9jbGllbnQubWVudUJhcklzVmlzaWJsZSh0b0FQSShwYWdlKSwg
bV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKSk7CiB9CiAKLVdLQnVuZGxlUGFnZVVJRWxlbWVudFZp
c2liaWxpdHkgSW5qZWN0ZWRCdW5kbGVQYWdlVUlDbGllbnQ6OnRvb2xiYXJzQXJlVmlzaWJsZShX
ZWJQYWdlKiBwYWdlKQorQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVsZW1l
bnRWaXNpYmlsaXR5IEluamVjdGVkQnVuZGxlUGFnZVVJQ2xpZW50Ojp0b29sYmFyc0FyZVZpc2li
bGUoV2ViUGFnZSogcGFnZSkKIHsKICAgICBpZiAoIW1fY2xpZW50LnRvb2xiYXJzQXJlVmlzaWJs
ZSkKLSAgICAgICAgcmV0dXJuIFdLQnVuZGxlUGFnZVVJRWxlbWVudFZpc2liaWxpdHlVbmtub3du
OworICAgICAgICByZXR1cm4gQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVs
ZW1lbnRWaXNpYmlsaXR5OjpVbmtub3duOwogICAgIAotICAgIHJldHVybiBtX2NsaWVudC50b29s
YmFyc0FyZVZpc2libGUodG9BUEkocGFnZSksIG1fY2xpZW50LmJhc2UuY2xpZW50SW5mbyk7Cisg
ICAgcmV0dXJuIHRvVUlFbGVtZW50VmlzaWJpbGl0eShtX2NsaWVudC50b29sYmFyc0FyZVZpc2li
bGUodG9BUEkocGFnZSksIG1fY2xpZW50LmJhc2UuY2xpZW50SW5mbykpOwogfQogCiB2b2lkIElu
amVjdGVkQnVuZGxlUGFnZVVJQ2xpZW50OjpkaWRSZWFjaEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5R
dW90YShXZWJQYWdlKiBwYWdlLCBXZWJTZWN1cml0eU9yaWdpbiogb3JpZ2luLCBpbnQ2NF90IHRv
dGFsQnl0ZXNOZWVkZWQpCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVk
QnVuZGxlL0luamVjdGVkQnVuZGxlUGFnZVVJQ2xpZW50LmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VVSUNs
aWVudC5oCShyZXZpc2lvbiAxNjY4NzUpCisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0lu
amVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlUGFnZVVJQ2xpZW50LmgJKHdvcmtpbmcgY29weSkK
QEAgLTI3LDYgKzI3LDcgQEAKICNkZWZpbmUgSW5qZWN0ZWRCdW5kbGVQYWdlVUlDbGllbnRfaAog
CiAjaW5jbHVkZSAiQVBJQ2xpZW50LmgiCisjaW5jbHVkZSAiQVBJSW5qZWN0ZWRCdW5kbGVQYWdl
VUlDbGllbnQuaCIKICNpbmNsdWRlICJXS0J1bmRsZVBhZ2UuaCIKICNpbmNsdWRlICJXZWJFdmVu
dC5oIgogI2luY2x1ZGUgPFdlYkNvcmUvUmVuZGVyU25hcHNob3R0ZWRQbHVnSW4uaD4KQEAgLTUy
LDMxICs1MywzMiBAQCBjbGFzcyBXZWJGcmFtZTsKIGNsYXNzIFdlYlBhZ2U7CiBjbGFzcyBXZWJT
ZWN1cml0eU9yaWdpbjsKIAotY2xhc3MgSW5qZWN0ZWRCdW5kbGVQYWdlVUlDbGllbnQgOiBwdWJs
aWMgQVBJOjpDbGllbnQ8V0tCdW5kbGVQYWdlVUlDbGllbnRCYXNlPiB7CitjbGFzcyBJbmplY3Rl
ZEJ1bmRsZVBhZ2VVSUNsaWVudCA6IHB1YmxpYyBBUEk6OkNsaWVudDxXS0J1bmRsZVBhZ2VVSUNs
aWVudEJhc2U+LCBwdWJsaWMgQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50IHsKIHB1
YmxpYzoKLSAgICB2b2lkIHdpbGxBZGRNZXNzYWdlVG9Db25zb2xlKFdlYlBhZ2UqLCBjb25zdCBT
dHJpbmcmIG1lc3NhZ2UsIGludDMyX3QgbGluZU51bWJlcik7Ci0gICAgdm9pZCB3aWxsU2V0U3Rh
dHVzYmFyVGV4dChXZWJQYWdlKiwgY29uc3QgU3RyaW5nJik7Ci0gICAgdm9pZCB3aWxsUnVuSmF2
YVNjcmlwdEFsZXJ0KFdlYlBhZ2UqLCBjb25zdCBTdHJpbmcmLCBXZWJGcmFtZSopOwotICAgIHZv
aWQgd2lsbFJ1bkphdmFTY3JpcHRDb25maXJtKFdlYlBhZ2UqLCBjb25zdCBTdHJpbmcmLCBXZWJG
cmFtZSopOwotICAgIHZvaWQgd2lsbFJ1bkphdmFTY3JpcHRQcm9tcHQoV2ViUGFnZSosIGNvbnN0
IFN0cmluZyYsIGNvbnN0IFN0cmluZyYsIFdlYkZyYW1lKik7Ci0gICAgdm9pZCBtb3VzZURpZE1v
dmVPdmVyRWxlbWVudChXZWJQYWdlKiwgY29uc3QgV2ViQ29yZTo6SGl0VGVzdFJlc3VsdCYsIFdl
YkV2ZW50OjpNb2RpZmllcnMsIFJlZlB0cjxBUEk6Ok9iamVjdD4mIHVzZXJEYXRhKTsKLSAgICB2
b2lkIHBhZ2VEaWRTY3JvbGwoV2ViUGFnZSopOworICAgIGV4cGxpY2l0IEluamVjdGVkQnVuZGxl
UGFnZVVJQ2xpZW50KGNvbnN0IFdLQnVuZGxlUGFnZVVJQ2xpZW50QmFzZSopOwogCi0gICAgU3Ry
aW5nIHNob3VsZEdlbmVyYXRlRmlsZUZvclVwbG9hZChXZWJQYWdlKiwgY29uc3QgU3RyaW5nJiBv
cmlnaW5hbEZpbGVQYXRoKTsKLSAgICBTdHJpbmcgZ2VuZXJhdGVGaWxlRm9yVXBsb2FkKFdlYlBh
Z2UqLCBjb25zdCBTdHJpbmcmIG9yaWdpbmFsRmlsZVBhdGgpOwotICAgIAotICAgIFdLQnVuZGxl
UGFnZVVJRWxlbWVudFZpc2liaWxpdHkgc3RhdHVzQmFySXNWaXNpYmxlKFdlYlBhZ2UqKTsKLSAg
ICBXS0J1bmRsZVBhZ2VVSUVsZW1lbnRWaXNpYmlsaXR5IG1lbnVCYXJJc1Zpc2libGUoV2ViUGFn
ZSopOwotICAgIFdLQnVuZGxlUGFnZVVJRWxlbWVudFZpc2liaWxpdHkgdG9vbGJhcnNBcmVWaXNp
YmxlKFdlYlBhZ2UqKTsKLQotICAgIHZvaWQgZGlkUmVhY2hBcHBsaWNhdGlvbkNhY2hlT3JpZ2lu
UXVvdGEoV2ViUGFnZSosIFdlYlNlY3VyaXR5T3JpZ2luKiwgaW50NjRfdCB0b3RhbEJ5dGVzTmVl
ZGVkKTsKLSAgICB1aW50NjRfdCBkaWRFeGNlZWREYXRhYmFzZVF1b3RhKFdlYlBhZ2UqLCBXZWJT
ZWN1cml0eU9yaWdpbiosIGNvbnN0IFN0cmluZyYgZGF0YWJhc2VOYW1lLCBjb25zdCBTdHJpbmcm
IGRhdGFiYXNlRGlzcGxheU5hbWUsIHVpbnQ2NF90IGN1cnJlbnRRdW90YUJ5dGVzLCB1aW50NjRf
dCBjdXJyZW50T3JpZ2luVXNhZ2VCeXRlcywgdWludDY0X3QgY3VycmVudERhdGFiYXNlVXNhZ2VC
eXRlcywgdWludDY0X3QgZXhwZWN0ZWRVc2FnZUJ5dGVzKTsKLQotICAgIFN0cmluZyBwbHVnSW5T
dGFydExhYmVsVGl0bGUoY29uc3QgU3RyaW5nJiBtaW1lVHlwZSkgY29uc3Q7Ci0gICAgU3RyaW5n
IHBsdWdJblN0YXJ0TGFiZWxTdWJ0aXRsZShjb25zdCBTdHJpbmcmIG1pbWVUeXBlKSBjb25zdDsK
LSAgICBTdHJpbmcgcGx1Z0luRXh0cmFTdHlsZVNoZWV0KCkgY29uc3Q7Ci0gICAgU3RyaW5nIHBs
dWdJbkV4dHJhU2NyaXB0KCkgY29uc3Q7CisgICAgdm9pZCB3aWxsQWRkTWVzc2FnZVRvQ29uc29s
ZShXZWJQYWdlKiwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBpbnQzMl90IGxpbmVOdW1iZXIpIG92
ZXJyaWRlOworICAgIHZvaWQgd2lsbFNldFN0YXR1c2JhclRleHQoV2ViUGFnZSosIGNvbnN0IFN0
cmluZyYpIG92ZXJyaWRlOworICAgIHZvaWQgd2lsbFJ1bkphdmFTY3JpcHRBbGVydChXZWJQYWdl
KiwgY29uc3QgU3RyaW5nJiwgV2ViRnJhbWUqKSBvdmVycmlkZTsKKyAgICB2b2lkIHdpbGxSdW5K
YXZhU2NyaXB0Q29uZmlybShXZWJQYWdlKiwgY29uc3QgU3RyaW5nJiwgV2ViRnJhbWUqKSBvdmVy
cmlkZTsKKyAgICB2b2lkIHdpbGxSdW5KYXZhU2NyaXB0UHJvbXB0KFdlYlBhZ2UqLCBjb25zdCBT
dHJpbmcmLCBjb25zdCBTdHJpbmcmLCBXZWJGcmFtZSopIG92ZXJyaWRlOworICAgIHZvaWQgbW91
c2VEaWRNb3ZlT3ZlckVsZW1lbnQoV2ViUGFnZSosIGNvbnN0IFdlYkNvcmU6OkhpdFRlc3RSZXN1
bHQmLCBXZWJFdmVudDo6TW9kaWZpZXJzLCBSZWZQdHI8QVBJOjpPYmplY3Q+JiB1c2VyRGF0YSkg
b3ZlcnJpZGU7CisgICAgdm9pZCBwYWdlRGlkU2Nyb2xsKFdlYlBhZ2UqKSBvdmVycmlkZTsKIAor
ICAgIFN0cmluZyBzaG91bGRHZW5lcmF0ZUZpbGVGb3JVcGxvYWQoV2ViUGFnZSosIGNvbnN0IFN0
cmluZyYgb3JpZ2luYWxGaWxlUGF0aCkgb3ZlcnJpZGU7CisgICAgU3RyaW5nIGdlbmVyYXRlRmls
ZUZvclVwbG9hZChXZWJQYWdlKiwgY29uc3QgU3RyaW5nJiBvcmlnaW5hbEZpbGVQYXRoKSBvdmVy
cmlkZTsKKyAgICAKKyAgICBVSUVsZW1lbnRWaXNpYmlsaXR5IHN0YXR1c0JhcklzVmlzaWJsZShX
ZWJQYWdlKikgb3ZlcnJpZGU7CisgICAgVUlFbGVtZW50VmlzaWJpbGl0eSBtZW51QmFySXNWaXNp
YmxlKFdlYlBhZ2UqKSBvdmVycmlkZTsKKyAgICBVSUVsZW1lbnRWaXNpYmlsaXR5IHRvb2xiYXJz
QXJlVmlzaWJsZShXZWJQYWdlKikgb3ZlcnJpZGU7CisKKyAgICB2b2lkIGRpZFJlYWNoQXBwbGlj
YXRpb25DYWNoZU9yaWdpblF1b3RhKFdlYlBhZ2UqLCBXZWJTZWN1cml0eU9yaWdpbiosIGludDY0
X3QgdG90YWxCeXRlc05lZWRlZCkgb3ZlcnJpZGU7CisgICAgdWludDY0X3QgZGlkRXhjZWVkRGF0
YWJhc2VRdW90YShXZWJQYWdlKiwgV2ViU2VjdXJpdHlPcmlnaW4qLCBjb25zdCBTdHJpbmcmIGRh
dGFiYXNlTmFtZSwgY29uc3QgU3RyaW5nJiBkYXRhYmFzZURpc3BsYXlOYW1lLCB1aW50NjRfdCBj
dXJyZW50UXVvdGFCeXRlcywgdWludDY0X3QgY3VycmVudE9yaWdpblVzYWdlQnl0ZXMsIHVpbnQ2
NF90IGN1cnJlbnREYXRhYmFzZVVzYWdlQnl0ZXMsIHVpbnQ2NF90IGV4cGVjdGVkVXNhZ2VCeXRl
cykgb3ZlcnJpZGU7CisKKyAgICBTdHJpbmcgcGx1Z0luU3RhcnRMYWJlbFRpdGxlKGNvbnN0IFN0
cmluZyYgbWltZVR5cGUpIGNvbnN0IG92ZXJyaWRlOworICAgIFN0cmluZyBwbHVnSW5TdGFydExh
YmVsU3VidGl0bGUoY29uc3QgU3RyaW5nJiBtaW1lVHlwZSkgY29uc3Qgb3ZlcnJpZGU7CisgICAg
U3RyaW5nIHBsdWdJbkV4dHJhU3R5bGVTaGVldCgpIGNvbnN0IG92ZXJyaWRlOworICAgIFN0cmlu
ZyBwbHVnSW5FeHRyYVNjcmlwdCgpIGNvbnN0IG92ZXJyaWRlOwogfTsKIAogfSAvLyBuYW1lc3Bh
Y2UgV2ViS2l0CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxl
L0FQSS9BUElJbmplY3RlZEJ1bmRsZVBhZ2VVSUNsaWVudC5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL0FQSUluamVjdGVkQnVuZGxl
UGFnZVVJQ2xpZW50LmgJKHJldmlzaW9uIDApCisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L0luamVjdGVkQnVuZGxlL0FQSS9BUElJbmplY3RlZEJ1bmRsZVBhZ2VVSUNsaWVudC5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0wLDAgKzEsOTQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElT
JycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JT
CisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisg
KiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAq
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIEFQSUluamVj
dGVkQnVuZGxlUGFnZVVJQ2xpZW50X2gKKyNkZWZpbmUgQVBJSW5qZWN0ZWRCdW5kbGVQYWdlVUlD
bGllbnRfaAorCisjaW5jbHVkZSAiV2ViRXZlbnQuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgewor
Y2xhc3MgSGl0VGVzdFJlc3VsdDsKK30KKworbmFtZXNwYWNlIFdlYktpdCB7CitjbGFzcyBXZWJG
cmFtZTsKK2NsYXNzIFdlYlBhZ2U7CitjbGFzcyBXZWJTZWN1cml0eU9yaWdpbjsKK30KKworbmFt
ZXNwYWNlIEFQSSB7CisKK2NsYXNzIE9iamVjdDsKKworbmFtZXNwYWNlIEluamVjdGVkQnVuZGxl
IHsKKworY2xhc3MgUGFnZVVJQ2xpZW50IHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIH5QYWdlVUlD
bGllbnQoKSB7IH0KKworICAgIHZpcnR1YWwgdm9pZCB3aWxsQWRkTWVzc2FnZVRvQ29uc29sZShX
ZWJLaXQ6OldlYlBhZ2UqLCBjb25zdCBXVEY6OlN0cmluZyYgbWVzc2FnZSwgaW50MzJfdCBsaW5l
TnVtYmVyKSB7IFVOVVNFRF9QQVJBTShtZXNzYWdlKTsgVU5VU0VEX1BBUkFNKGxpbmVOdW1iZXIp
OyB9CisgICAgdmlydHVhbCB2b2lkIHdpbGxTZXRTdGF0dXNiYXJUZXh0KFdlYktpdDo6V2ViUGFn
ZSosIGNvbnN0IFdURjo6U3RyaW5nJikgeyB9CisgICAgdmlydHVhbCB2b2lkIHdpbGxSdW5KYXZh
U2NyaXB0QWxlcnQoV2ViS2l0OjpXZWJQYWdlKiwgY29uc3QgV1RGOjpTdHJpbmcmLCBXZWJLaXQ6
OldlYkZyYW1lKikgeyB9CisgICAgdmlydHVhbCB2b2lkIHdpbGxSdW5KYXZhU2NyaXB0Q29uZmly
bShXZWJLaXQ6OldlYlBhZ2UqLCBjb25zdCBXVEY6OlN0cmluZyYsIFdlYktpdDo6V2ViRnJhbWUq
KSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgd2lsbFJ1bkphdmFTY3JpcHRQcm9tcHQoV2ViS2l0OjpX
ZWJQYWdlKiwgY29uc3QgV1RGOjpTdHJpbmcmLCBjb25zdCBXVEY6OlN0cmluZyYsIFdlYktpdDo6
V2ViRnJhbWUqKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgbW91c2VEaWRNb3ZlT3ZlckVsZW1lbnQo
V2ViS2l0OjpXZWJQYWdlKiwgY29uc3QgV2ViQ29yZTo6SGl0VGVzdFJlc3VsdCYsIFdlYktpdDo6
V2ViRXZlbnQ6Ok1vZGlmaWVycywgUmVmUHRyPEFQSTo6T2JqZWN0PiYgdXNlckRhdGEpIHsgVU5V
U0VEX1BBUkFNKHVzZXJEYXRhKTsgfQorICAgIHZpcnR1YWwgdm9pZCBwYWdlRGlkU2Nyb2xsKFdl
YktpdDo6V2ViUGFnZSopIHsgfQorCisgICAgdmlydHVhbCBXVEY6OlN0cmluZyBzaG91bGRHZW5l
cmF0ZUZpbGVGb3JVcGxvYWQoV2ViS2l0OjpXZWJQYWdlKiwgY29uc3QgV1RGOjpTdHJpbmcmIG9y
aWdpbmFsRmlsZVBhdGgpIHsgVU5VU0VEX1BBUkFNKG9yaWdpbmFsRmlsZVBhdGgpOyByZXR1cm4g
ZW1wdHlTdHJpbmcoKTsgfQorICAgIHZpcnR1YWwgV1RGOjpTdHJpbmcgZ2VuZXJhdGVGaWxlRm9y
VXBsb2FkKFdlYktpdDo6V2ViUGFnZSosIGNvbnN0IFdURjo6U3RyaW5nJiBvcmlnaW5hbEZpbGVQ
YXRoKSB7IFVOVVNFRF9QQVJBTShvcmlnaW5hbEZpbGVQYXRoKTsgcmV0dXJuIGVtcHR5U3RyaW5n
KCk7IH0KKworICAgIGVudW0gY2xhc3MgVUlFbGVtZW50VmlzaWJpbGl0eSB7CisgICAgICAgIFVu
a25vd24sCisgICAgICAgIFZpc2libGUsCisgICAgICAgIEhpZGRlbiwKKyAgICB9OworCisgICAg
dmlydHVhbCBVSUVsZW1lbnRWaXNpYmlsaXR5IHN0YXR1c0JhcklzVmlzaWJsZShXZWJLaXQ6Oldl
YlBhZ2UqKSB7IHJldHVybiBVSUVsZW1lbnRWaXNpYmlsaXR5OjpVbmtub3duOyB9CisgICAgdmly
dHVhbCBVSUVsZW1lbnRWaXNpYmlsaXR5IG1lbnVCYXJJc1Zpc2libGUoV2ViS2l0OjpXZWJQYWdl
KikgeyByZXR1cm4gVUlFbGVtZW50VmlzaWJpbGl0eTo6VW5rbm93bjsgfQorICAgIHZpcnR1YWwg
VUlFbGVtZW50VmlzaWJpbGl0eSB0b29sYmFyc0FyZVZpc2libGUoV2ViS2l0OjpXZWJQYWdlKikg
eyByZXR1cm4gVUlFbGVtZW50VmlzaWJpbGl0eTo6VW5rbm93bjsgfQorCisgICAgdmlydHVhbCB2
b2lkIGRpZFJlYWNoQXBwbGljYXRpb25DYWNoZU9yaWdpblF1b3RhKFdlYktpdDo6V2ViUGFnZSos
IFdlYktpdDo6V2ViU2VjdXJpdHlPcmlnaW4qLCBpbnQ2NF90IHRvdGFsQnl0ZXNOZWVkZWQpIHsg
VU5VU0VEX1BBUkFNKHRvdGFsQnl0ZXNOZWVkZWQpOyB9CisgICAgdmlydHVhbCB1aW50NjRfdCBk
aWRFeGNlZWREYXRhYmFzZVF1b3RhKFdlYktpdDo6V2ViUGFnZSosIFdlYktpdDo6V2ViU2VjdXJp
dHlPcmlnaW4qLCBjb25zdCBXVEY6OlN0cmluZyYgZGF0YWJhc2VOYW1lLCBjb25zdCBXVEY6OlN0
cmluZyYgZGF0YWJhc2VEaXNwbGF5TmFtZSwgdWludDY0X3QgY3VycmVudFF1b3RhQnl0ZXMsIHVp
bnQ2NF90IGN1cnJlbnRPcmlnaW5Vc2FnZUJ5dGVzLCB1aW50NjRfdCBjdXJyZW50RGF0YWJhc2VV
c2FnZUJ5dGVzLCB1aW50NjRfdCBleHBlY3RlZFVzYWdlQnl0ZXMpCisgICAgeworICAgICAgICBV
TlVTRURfUEFSQU0oZGF0YWJhc2VOYW1lKTsKKyAgICAgICAgVU5VU0VEX1BBUkFNKGRhdGFiYXNl
RGlzcGxheU5hbWUpOworICAgICAgICBVTlVTRURfUEFSQU0oY3VycmVudFF1b3RhQnl0ZXMpOwor
ICAgICAgICBVTlVTRURfUEFSQU0oY3VycmVudE9yaWdpblVzYWdlQnl0ZXMpOworICAgICAgICBV
TlVTRURfUEFSQU0oY3VycmVudERhdGFiYXNlVXNhZ2VCeXRlcyk7CisgICAgICAgIFVOVVNFRF9Q
QVJBTShleHBlY3RlZFVzYWdlQnl0ZXMpOworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAg
ICB2aXJ0dWFsIFdURjo6U3RyaW5nIHBsdWdJblN0YXJ0TGFiZWxUaXRsZShjb25zdCBXVEY6OlN0
cmluZyYgbWltZVR5cGUpIGNvbnN0IHsgVU5VU0VEX1BBUkFNKG1pbWVUeXBlKTsgcmV0dXJuIGVt
cHR5U3RyaW5nKCk7IH0KKyAgICB2aXJ0dWFsIFdURjo6U3RyaW5nIHBsdWdJblN0YXJ0TGFiZWxT
dWJ0aXRsZShjb25zdCBXVEY6OlN0cmluZyYgbWltZVR5cGUpIGNvbnN0IHsgVU5VU0VEX1BBUkFN
KG1pbWVUeXBlKTsgcmV0dXJuIGVtcHR5U3RyaW5nKCk7IH0KKyAgICB2aXJ0dWFsIFdURjo6U3Ry
aW5nIHBsdWdJbkV4dHJhU3R5bGVTaGVldCgpIGNvbnN0IHsgcmV0dXJuIGVtcHR5U3RyaW5nKCk7
IH0KKyAgICB2aXJ0dWFsIFdURjo6U3RyaW5nIHBsdWdJbkV4dHJhU2NyaXB0KCkgY29uc3QgeyBy
ZXR1cm4gZW1wdHlTdHJpbmcoKTsgfQorfTsKKworfSAvLyBuYW1lc3BhY2UgSW5qZWN0ZWRCdW5k
bGUKKworfSAvLyBuYW1lc3BhY2UgQVBJCisKKyNlbmRpZiAvLyBBUElJbmplY3RlZEJ1bmRsZVBh
Z2VVSUNsaWVudF9oCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVu
ZGxlL0FQSS9jL1dLQnVuZGxlUGFnZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZVBhZ2UuY3BwCShyZXZpc2lv
biAxNjY4NzUpCisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQ
SS9jL1dLQnVuZGxlUGFnZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTMzLDYgKzMzLDcgQEAKICNp
bmNsdWRlICJBUElVUkxSZXF1ZXN0LmgiCiAjaW5jbHVkZSAiSW5qZWN0ZWRCdW5kbGVCYWNrRm9y
d2FyZExpc3QuaCIKICNpbmNsdWRlICJJbmplY3RlZEJ1bmRsZU5vZGVIYW5kbGUuaCIKKyNpbmNs
dWRlICJJbmplY3RlZEJ1bmRsZVBhZ2VVSUNsaWVudC5oIgogI2luY2x1ZGUgIlBhZ2VCYW5uZXIu
aCIKICNpbmNsdWRlICJXS0FQSUNhc3QuaCIKICNpbmNsdWRlICJXS0FycmF5LmgiCkBAIC05OCw3
ICs5OSw3IEBAIHZvaWQgV0tCdW5kbGVQYWdlU2V0UG9saWN5Q2xpZW50KFdLQnVuZGwKIAogdm9p
ZCBXS0J1bmRsZVBhZ2VTZXRVSUNsaWVudChXS0J1bmRsZVBhZ2VSZWYgcGFnZVJlZiwgV0tCdW5k
bGVQYWdlVUlDbGllbnRCYXNlKiB3a0NsaWVudCkKIHsKLSAgICB0b0ltcGwocGFnZVJlZiktPmlu
aXRpYWxpemVJbmplY3RlZEJ1bmRsZVVJQ2xpZW50KHdrQ2xpZW50KTsKKyAgICB0b0ltcGwocGFn
ZVJlZiktPnNldEluamVjdGVkQnVuZGxlVUlDbGllbnQoc3RkOjptYWtlX3VuaXF1ZTxJbmplY3Rl
ZEJ1bmRsZVBhZ2VVSUNsaWVudD4od2tDbGllbnQpKTsKIH0KIAogdm9pZCBXS0J1bmRsZVBhZ2VT
ZXRGdWxsU2NyZWVuQ2xpZW50KFdLQnVuZGxlUGFnZVJlZiBwYWdlUmVmLCBXS0J1bmRsZVBhZ2VG
dWxsU2NyZWVuQ2xpZW50QmFzZSogd2tDbGllbnQpCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1N0b3JhZ2UvU3RvcmFnZUFyZWFNYXAuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvU3RvcmFnZS9TdG9yYWdlQXJlYU1hcC5jcHAJKHJldmlzaW9uIDE2
Njg3NSkKKysrIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvU3RvcmFnZS9TdG9yYWdlQXJlYU1h
cC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM1LDYgKzM1LDcgQEAKICNpbmNsdWRlICJXZWJQYWdl
R3JvdXBQcm94eS5oIgogI2luY2x1ZGUgIldlYlByb2Nlc3MuaCIKICNpbmNsdWRlIDxXZWJDb3Jl
L0RPTVdpbmRvdy5oPgorI2luY2x1ZGUgPFdlYkNvcmUvRG9jdW1lbnQuaD4KICNpbmNsdWRlIDxX
ZWJDb3JlL01haW5GcmFtZS5oPgogI2luY2x1ZGUgPFdlYkNvcmUvUGFnZS5oPgogI2luY2x1ZGUg
PFdlYkNvcmUvUGFnZUdyb3VwLmg+CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwCShyZXZp
c2lvbiAxNjY4NzUpCisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0
L1dlYkNocm9tZUNsaWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0MSw5ICsyNDEsOSBAQCB2
b2lkIFdlYkNocm9tZUNsaWVudDo6c2V0VG9vbGJhcnNWaXNpYmxlCiAKIGJvb2wgV2ViQ2hyb21l
Q2xpZW50Ojp0b29sYmFyc1Zpc2libGUoKQogewotICAgIFdLQnVuZGxlUGFnZVVJRWxlbWVudFZp
c2liaWxpdHkgdG9vbGJhcnNWaXNpYmlsaXR5ID0gbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xp
ZW50KCkudG9vbGJhcnNBcmVWaXNpYmxlKG1fcGFnZSk7Ci0gICAgaWYgKHRvb2xiYXJzVmlzaWJp
bGl0eSAhPSBXS0J1bmRsZVBhZ2VVSUVsZW1lbnRWaXNpYmlsaXR5VW5rbm93bikKLSAgICAgICAg
cmV0dXJuIHRvb2xiYXJzVmlzaWJpbGl0eSA9PSBXS0J1bmRsZVBhZ2VVSUVsZW1lbnRWaXNpYmxl
OworICAgIEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlBhZ2VVSUNsaWVudDo6VUlFbGVtZW50VmlzaWJp
bGl0eSB0b29sYmFyc1Zpc2liaWxpdHkgPSBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQo
KS50b29sYmFyc0FyZVZpc2libGUobV9wYWdlKTsKKyAgICBpZiAodG9vbGJhcnNWaXNpYmlsaXR5
ICE9IEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlBhZ2VVSUNsaWVudDo6VUlFbGVtZW50VmlzaWJpbGl0
eTo6VW5rbm93bikKKyAgICAgICAgcmV0dXJuIHRvb2xiYXJzVmlzaWJpbGl0eSA9PSBBUEk6Oklu
amVjdGVkQnVuZGxlOjpQYWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHk6OlZpc2libGU7
CiAgICAgCiAgICAgYm9vbCB0b29sYmFyc0FyZVZpc2libGUgPSB0cnVlOwogICAgIGlmICghV2Vi
UHJvY2Vzczo6c2hhcmVkKCkucGFyZW50UHJvY2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZFN5bmMoTWVz
c2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0VG9vbGJhcnNBcmVWaXNpYmxlKCksIE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OkdldFRvb2xiYXJzQXJlVmlzaWJsZTo6UmVwbHkodG9vbGJhcnNBcmVWaXNp
YmxlKSwgbV9wYWdlLT5wYWdlSUQoKSkpCkBAIC0yNTksOSArMjU5LDkgQEAgdm9pZCBXZWJDaHJv
bWVDbGllbnQ6OnNldFN0YXR1c2JhclZpc2libAogCiBib29sIFdlYkNocm9tZUNsaWVudDo6c3Rh
dHVzYmFyVmlzaWJsZSgpCiB7Ci0gICAgV0tCdW5kbGVQYWdlVUlFbGVtZW50VmlzaWJpbGl0eSBz
dGF0dXNiYXJWaXNpYmlsaXR5ID0gbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkuc3Rh
dHVzQmFySXNWaXNpYmxlKG1fcGFnZSk7Ci0gICAgaWYgKHN0YXR1c2JhclZpc2liaWxpdHkgIT0g
V0tCdW5kbGVQYWdlVUlFbGVtZW50VmlzaWJpbGl0eVVua25vd24pCi0gICAgICAgIHJldHVybiBz
dGF0dXNiYXJWaXNpYmlsaXR5ID09IFdLQnVuZGxlUGFnZVVJRWxlbWVudFZpc2libGU7CisgICAg
QVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50OjpVSUVsZW1lbnRWaXNpYmlsaXR5IHN0
YXR1c2JhclZpc2liaWxpdHkgPSBtX3BhZ2UtPmluamVjdGVkQnVuZGxlVUlDbGllbnQoKS5zdGF0
dXNCYXJJc1Zpc2libGUobV9wYWdlKTsKKyAgICBpZiAoc3RhdHVzYmFyVmlzaWJpbGl0eSAhPSBB
UEk6OkluamVjdGVkQnVuZGxlOjpQYWdlVUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHk6OlVu
a25vd24pCisgICAgICAgIHJldHVybiBzdGF0dXNiYXJWaXNpYmlsaXR5ID09IEFQSTo6SW5qZWN0
ZWRCdW5kbGU6OlBhZ2VVSUNsaWVudDo6VUlFbGVtZW50VmlzaWJpbGl0eTo6VmlzaWJsZTsKIAog
ICAgIGJvb2wgc3RhdHVzQmFySXNWaXNpYmxlID0gdHJ1ZTsKICAgICBpZiAoIVdlYlByb2Nlc3M6
OnNoYXJlZCgpLnBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6OkdldFN0YXR1c0JhcklzVmlzaWJsZSgpLCBNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjpHZXRTdGF0dXNCYXJJc1Zpc2libGU6OlJlcGx5KHN0YXR1c0JhcklzVmlzaWJsZSksIG1f
cGFnZS0+cGFnZUlEKCkpKQpAQCAtMjg4LDkgKzI4OCw5IEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50
OjpzZXRNZW51YmFyVmlzaWJsZSgKIAogYm9vbCBXZWJDaHJvbWVDbGllbnQ6Om1lbnViYXJWaXNp
YmxlKCkKIHsKLSAgICBXS0J1bmRsZVBhZ2VVSUVsZW1lbnRWaXNpYmlsaXR5IG1lbnViYXJWaXNp
YmlsaXR5ID0gbV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkubWVudUJhcklzVmlzaWJs
ZShtX3BhZ2UpOwotICAgIGlmIChtZW51YmFyVmlzaWJpbGl0eSAhPSBXS0J1bmRsZVBhZ2VVSUVs
ZW1lbnRWaXNpYmlsaXR5VW5rbm93bikKLSAgICAgICAgcmV0dXJuIG1lbnViYXJWaXNpYmlsaXR5
ID09IFdLQnVuZGxlUGFnZVVJRWxlbWVudFZpc2libGU7CisgICAgQVBJOjpJbmplY3RlZEJ1bmRs
ZTo6UGFnZVVJQ2xpZW50OjpVSUVsZW1lbnRWaXNpYmlsaXR5IG1lbnViYXJWaXNpYmlsaXR5ID0g
bV9wYWdlLT5pbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkubWVudUJhcklzVmlzaWJsZShtX3BhZ2Up
OworICAgIGlmIChtZW51YmFyVmlzaWJpbGl0eSAhPSBBUEk6OkluamVjdGVkQnVuZGxlOjpQYWdl
VUlDbGllbnQ6OlVJRWxlbWVudFZpc2liaWxpdHk6OlVua25vd24pCisgICAgICAgIHJldHVybiBt
ZW51YmFyVmlzaWJpbGl0eSA9PSBBUEk6OkluamVjdGVkQnVuZGxlOjpQYWdlVUlDbGllbnQ6OlVJ
RWxlbWVudFZpc2liaWxpdHk6OlZpc2libGU7CiAgICAgCiAgICAgYm9vbCBtZW51QmFySXNWaXNp
YmxlID0gdHJ1ZTsKICAgICBpZiAoIVdlYlByb2Nlc3M6OnNoYXJlZCgpLnBhcmVudFByb2Nlc3ND
b25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkdldE1lbnVCYXJJ
c1Zpc2libGUoKSwgTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6R2V0TWVudUJhcklzVmlzaWJsZTo6
UmVwbHkobWVudUJhcklzVmlzaWJsZSksIG1fcGFnZS0+cGFnZUlEKCkpKQpJbmRleDogU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAkocmV2aXNpb24gMTY2
ODc1KQorKysgU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0yNjMsNiArMjYzLDcgQEAgV2ViUGFnZTo6V2ViUGFnZSh1aW50NjRf
dCBwYWdlSUQsIGNvbnN0IAogI2VuZGlmCiAgICAgLCBtX3NldENhblN0YXJ0TWVkaWFUaW1lcihS
dW5Mb29wOjptYWluKCksIHRoaXMsICZXZWJQYWdlOjpzZXRDYW5TdGFydE1lZGlhVGltZXJGaXJl
ZCkKICAgICAsIG1fc2VuZERpZFVwZGF0ZVZpZXdTdGF0ZVRpbWVyKFJ1bkxvb3A6Om1haW4oKSwg
dGhpcywgJldlYlBhZ2U6OmRpZFVwZGF0ZVZpZXdTdGF0ZVRpbWVyRmlyZWQpCisgICAgLCBtX3Vp
Q2xpZW50KHN0ZDo6bWFrZV91bmlxdWU8QVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50
PigpKQogICAgICwgbV9maW5kQ29udHJvbGxlcih0aGlzKQogI2lmIEVOQUJMRShJTlBVVF9UWVBF
X0NPTE9SKQogICAgICwgbV9hY3RpdmVDb2xvckNob29zZXIoMCkKQEAgLTU2Miw5ICs1NjMsMTQg
QEAgdm9pZCBXZWJQYWdlOjppbml0aWFsaXplSW5qZWN0ZWRCdW5kbGVSZQogICAgIG1fcmVzb3Vy
Y2VMb2FkQ2xpZW50LmluaXRpYWxpemUoY2xpZW50KTsKIH0KIAotdm9pZCBXZWJQYWdlOjppbml0
aWFsaXplSW5qZWN0ZWRCdW5kbGVVSUNsaWVudChXS0J1bmRsZVBhZ2VVSUNsaWVudEJhc2UqIGNs
aWVudCkKK3ZvaWQgV2ViUGFnZTo6c2V0SW5qZWN0ZWRCdW5kbGVVSUNsaWVudChzdGQ6OnVuaXF1
ZV9wdHI8QVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50PiB1aUNsaWVudCkKIHsKLSAg
ICBtX3VpQ2xpZW50LmluaXRpYWxpemUoY2xpZW50KTsKKyAgICBpZiAoIXVpQ2xpZW50KSB7Cisg
ICAgICAgIG1fdWlDbGllbnQgPSBzdGQ6Om1ha2VfdW5pcXVlPEFQSTo6SW5qZWN0ZWRCdW5kbGU6
OlBhZ2VVSUNsaWVudD4oKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIG1fdWlDbGll
bnQgPSBzdGQ6Om1vdmUodWlDbGllbnQpOwogfQogCiAjaWYgRU5BQkxFKEZVTExTQ1JFRU5fQVBJ
KQpAQCAtODc3LDcgKzg4Myw3IEBAIHZvaWQgV2ViUGFnZTo6Y2xvc2UoKQogICAgIG1fbG9hZGVy
Q2xpZW50LmluaXRpYWxpemUoMCk7CiAgICAgbV9wb2xpY3lDbGllbnQuaW5pdGlhbGl6ZSgwKTsK
ICAgICBtX3Jlc291cmNlTG9hZENsaWVudC5pbml0aWFsaXplKDApOwotICAgIG1fdWlDbGllbnQu
aW5pdGlhbGl6ZSgwKTsKKyAgICBtX3VpQ2xpZW50ID0gc3RkOjptYWtlX3VuaXF1ZTxBUEk6Oklu
amVjdGVkQnVuZGxlOjpQYWdlVUlDbGllbnQ+KCk7CiAjaWYgRU5BQkxFKEZVTExTQ1JFRU5fQVBJ
KQogICAgIG1fZnVsbFNjcmVlbkNsaWVudC5pbml0aWFsaXplKDApOwogI2VuZGlmCkBAIC0xNjA4
LDcgKzE2MTQsNyBAQCBQYXNzUmVmUHRyPFdlYkltYWdlPiBXZWJQYWdlOjpzbmFwc2hvdEF0CiAK
IHZvaWQgV2ViUGFnZTo6cGFnZURpZFNjcm9sbCgpCiB7Ci0gICAgbV91aUNsaWVudC5wYWdlRGlk
U2Nyb2xsKHRoaXMpOworICAgIG1fdWlDbGllbnQtPnBhZ2VEaWRTY3JvbGwodGhpcyk7CiAKICAg
ICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlBhZ2VEaWRTY3JvbGwoKSk7CiB9CkluZGV4
OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgJKHJldmlzaW9u
IDE2Njg3NSkKKysrIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTI2LDYgKzI2LDcgQEAKICNpZm5kZWYgV2ViUGFnZV9oCiAjZGVm
aW5lIFdlYlBhZ2VfaAogCisjaW5jbHVkZSAiQVBJSW5qZWN0ZWRCdW5kbGVQYWdlVUlDbGllbnQu
aCIKICNpbmNsdWRlICJBUElPYmplY3QuaCIKICNpbmNsdWRlICJEcmF3aW5nQXJlYS5oIgogI2lu
Y2x1ZGUgIkZpbmRDb250cm9sbGVyLmgiCkBAIC0zOCw3ICszOSw2IEBACiAjaW5jbHVkZSAiSW5q
ZWN0ZWRCdW5kbGVQYWdlTG9hZGVyQ2xpZW50LmgiCiAjaW5jbHVkZSAiSW5qZWN0ZWRCdW5kbGVQ
YWdlUG9saWN5Q2xpZW50LmgiCiAjaW5jbHVkZSAiSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VM
b2FkQ2xpZW50LmgiCi0jaW5jbHVkZSAiSW5qZWN0ZWRCdW5kbGVQYWdlVUlDbGllbnQuaCIKICNp
bmNsdWRlICJNZXNzYWdlUmVjZWl2ZXIuaCIKICNpbmNsdWRlICJNZXNzYWdlU2VuZGVyLmgiCiAj
aW5jbHVkZSAiVGFwSGlnaGxpZ2h0Q29udHJvbGxlci5oIgpAQCAtMTE1LDYgKzExNSw3IEBAIG5h
bWVzcGFjZSBJUEMgewogfQogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CisgICAgY2xhc3MgRG9jdW1l
bnRMb2FkZXI7CiAgICAgY2xhc3MgR3JhcGhpY3NDb250ZXh0OwogICAgIGNsYXNzIEZyYW1lOwog
ICAgIGNsYXNzIEZyYW1lVmlldzsKQEAgLTI4Myw3ICsyODQsNyBAQCBwdWJsaWM6CiAgICAgdm9p
ZCBpbml0aWFsaXplSW5qZWN0ZWRCdW5kbGVMb2FkZXJDbGllbnQoV0tCdW5kbGVQYWdlTG9hZGVy
Q2xpZW50QmFzZSopOwogICAgIHZvaWQgaW5pdGlhbGl6ZUluamVjdGVkQnVuZGxlUG9saWN5Q2xp
ZW50KFdLQnVuZGxlUGFnZVBvbGljeUNsaWVudEJhc2UqKTsKICAgICB2b2lkIGluaXRpYWxpemVJ
bmplY3RlZEJ1bmRsZVJlc291cmNlTG9hZENsaWVudChXS0J1bmRsZVBhZ2VSZXNvdXJjZUxvYWRD
bGllbnRCYXNlKik7Ci0gICAgdm9pZCBpbml0aWFsaXplSW5qZWN0ZWRCdW5kbGVVSUNsaWVudChX
S0J1bmRsZVBhZ2VVSUNsaWVudEJhc2UqKTsKKyAgICB2b2lkIHNldEluamVjdGVkQnVuZGxlVUlD
bGllbnQoc3RkOjp1bmlxdWVfcHRyPEFQSTo6SW5qZWN0ZWRCdW5kbGU6OlBhZ2VVSUNsaWVudD4p
OwogI2lmIEVOQUJMRShGVUxMU0NSRUVOX0FQSSkKICAgICB2b2lkIGluaXRpYWxpemVJbmplY3Rl
ZEJ1bmRsZUZ1bGxTY3JlZW5DbGllbnQoV0tCdW5kbGVQYWdlRnVsbFNjcmVlbkNsaWVudEJhc2Uq
KTsKICNlbmRpZgpAQCAtMjk3LDcgKzI5OCw3IEBAIHB1YmxpYzoKICAgICBJbmplY3RlZEJ1bmRs
ZVBhZ2VMb2FkZXJDbGllbnQmIGluamVjdGVkQnVuZGxlTG9hZGVyQ2xpZW50KCkgeyByZXR1cm4g
bV9sb2FkZXJDbGllbnQ7IH0KICAgICBJbmplY3RlZEJ1bmRsZVBhZ2VQb2xpY3lDbGllbnQmIGlu
amVjdGVkQnVuZGxlUG9saWN5Q2xpZW50KCkgeyByZXR1cm4gbV9wb2xpY3lDbGllbnQ7IH0KICAg
ICBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQmIGluamVjdGVkQnVuZGxlUmVz
b3VyY2VMb2FkQ2xpZW50KCkgeyByZXR1cm4gbV9yZXNvdXJjZUxvYWRDbGllbnQ7IH0KLSAgICBJ
bmplY3RlZEJ1bmRsZVBhZ2VVSUNsaWVudCYgaW5qZWN0ZWRCdW5kbGVVSUNsaWVudCgpIHsgcmV0
dXJuIG1fdWlDbGllbnQ7IH0KKyAgICBBUEk6OkluamVjdGVkQnVuZGxlOjpQYWdlVUlDbGllbnQm
IGluamVjdGVkQnVuZGxlVUlDbGllbnQoKSB7IHJldHVybiAqbV91aUNsaWVudC5nZXQoKTsgfQog
ICAgIEluamVjdGVkQnVuZGxlUGFnZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50JiBpbmplY3RlZEJ1
bmRsZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50KCkgeyByZXR1cm4gbV9sb2dEaWFnbm9zdGljTWVz
c2FnZUNsaWVudDsgfQogI2lmIEVOQUJMRShGVUxMU0NSRUVOX0FQSSkKICAgICBJbmplY3RlZEJ1
bmRsZVBhZ2VGdWxsU2NyZWVuQ2xpZW50JiBpbmplY3RlZEJ1bmRsZUZ1bGxTY3JlZW5DbGllbnQo
KSB7IHJldHVybiBtX2Z1bGxTY3JlZW5DbGllbnQ7IH0KQEAgLTEwNzYsNyArMTA3Nyw3IEBAIHBy
aXZhdGU6CiAgICAgSW5qZWN0ZWRCdW5kbGVQYWdlTG9hZGVyQ2xpZW50IG1fbG9hZGVyQ2xpZW50
OwogICAgIEluamVjdGVkQnVuZGxlUGFnZVBvbGljeUNsaWVudCBtX3BvbGljeUNsaWVudDsKICAg
ICBJbmplY3RlZEJ1bmRsZVBhZ2VSZXNvdXJjZUxvYWRDbGllbnQgbV9yZXNvdXJjZUxvYWRDbGll
bnQ7Ci0gICAgSW5qZWN0ZWRCdW5kbGVQYWdlVUlDbGllbnQgbV91aUNsaWVudDsKKyAgICBzdGQ6
OnVuaXF1ZV9wdHI8QVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xpZW50PiBtX3VpQ2xpZW50
OwogI2lmIEVOQUJMRShGVUxMU0NSRUVOX0FQSSkKICAgICBJbmplY3RlZEJ1bmRsZVBhZ2VGdWxs
U2NyZWVuQ2xpZW50IG1fZnVsbFNjcmVlbkNsaWVudDsKICNlbmRpZgpJbmRleDogU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9XS0FjY2Vzc2liaWxpdHlXZWJQYWdlT2JqZWN0
QmFzZS5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2Uv
bWFjL1dLQWNjZXNzaWJpbGl0eVdlYlBhZ2VPYmplY3RCYXNlLm1tCShyZXZpc2lvbiAxNjY4NzUp
CisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1dLQWNjZXNzaWJpbGl0
eVdlYlBhZ2VPYmplY3RCYXNlLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0zNSw2ICszNSw3IEBACiAj
aW1wb3J0ICJXS1N0cmluZy5oIgogI2ltcG9ydCAiV0tTdHJpbmdDRi5oIgogI2ltcG9ydCA8V2Vi
Q29yZS9BWE9iamVjdENhY2hlLmg+CisjaW1wb3J0IDxXZWJDb3JlL0RvY3VtZW50Lmg+CiAjaW1w
b3J0IDxXZWJDb3JlL0ZyYW1lVmlldy5oPgogI2ltcG9ydCA8V2ViQ29yZS9NYWluRnJhbWUuaD4K
ICNpbXBvcnQgPFdlYkNvcmUvUGFnZS5oPgo=
</data>
<flag name="review"
          id="253079"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>