<?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>135853</bug_id>
          
          <creation_ts>2014-08-12 14:10:20 -0700</creation_ts>
          <short_desc>REGRESSION: WebContent process has a sandbox extension for the entirety of user&apos;s temp directory</short_desc>
          <delta_ts>2014-08-12 15:43:55 -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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alexey Proskuryakov">ap</reporter>
          <assigned_to name="Alexey Proskuryakov">ap</assigned_to>
          <cc>bunhere</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>sergio</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1028600</commentid>
    <comment_count>0</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2014-08-12 14:10:20 -0700</bug_when>
    <thetext>Some code that makes sense on iOS doesn&apos;t make sense on OS X.

&lt;rdar://problem/17986556&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1028602</commentid>
    <comment_count>1</comment_count>
      <attachid>236467</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2014-08-12 14:13:47 -0700</bug_when>
    <thetext>Created attachment 236467
proposed fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1028636</commentid>
    <comment_count>2</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2014-08-12 15:43:55 -0700</bug_when>
    <thetext>Committed &lt;http://trac.webkit.org/r172500&gt;.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>236467</attachid>
            <date>2014-08-12 14:13:47 -0700</date>
            <delta_ts>2014-08-12 14:18:22 -0700</delta_ts>
            <desc>proposed fix</desc>
            <filename>BadSandboxExtension.txt</filename>
            <type>text/plain</type>
            <size>19013</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDE3MjQ5MykKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQ2IEBACisyMDE0LTA4LTEyICBBbGV4ZXkg
UHJvc2t1cnlha292ICA8YXBAYXBwbGUuY29tPgorCisgICAgICAgIFJFR1JFU1NJT046IFdlYkNv
bnRlbnQgcHJvY2VzcyBoYXMgYSBzYW5kYm94IGV4dGVuc2lvbiBmb3IgdGhlIGVudGlyZXR5IG9m
IHVzZXIncyB0ZW1wIGRpcmVjdG9yeQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTM1ODUzCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8xNzk4NjU1Nj4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBNb3ZlIGV4
dGVuc2lvbnMgcmVjZW50bHkgYWRkZWQgZm9yIGlPUyBiZW5lZml0IHVuZGVyIFBMQVRGT1JNKElP
UykuIFJlbW92ZWQgc29tZQorICAgICAgICBkZWFkIGNvZGUgd2hpbGUgYXQgaXQgKGNoaWxkIHBy
b2Nlc3NlcyBkb24ndCBuZWVkIGFjdHVhbCBwYXRocywgdGhleSBvbmx5IG5lZWQKKyAgICAgICAg
c2FuZGJveCBleHRlbnNpb25zIGluIG1vc3QgY2FzZXMpLgorCisgICAgICAgICogTmV0d29ya1By
b2Nlc3MvY29jb2EvTmV0d29ya1Byb2Nlc3NDb2NvYS5tbToKKyAgICAgICAgKFdlYktpdDo6TmV0
d29ya1Byb2Nlc3M6OnBsYXRmb3JtSW5pdGlhbGl6ZU5ldHdvcmtQcm9jZXNzQ29jb2EpOgorICAg
ICAgICAqIFNoYXJlZC9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmNw
cDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM6OmVu
Y29kZSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJz
OjpkZWNvZGUpOgorICAgICAgICAqIFNoYXJlZC9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ3JlYXRp
b25QYXJhbWV0ZXJzLmg6CisgICAgICAgICogU2hhcmVkL1dlYlByb2Nlc3NDcmVhdGlvblBhcmFt
ZXRlcnMuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJz
OjplbmNvZGUpOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJz
OjpkZWNvZGUpOgorICAgICAgICAqIFNoYXJlZC9XZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJz
Lmg6CisgICAgICAgICogVUlQcm9jZXNzL1dlYkNvbnRleHQuY3BwOgorICAgICAgICAoV2ViS2l0
OjpXZWJDb250ZXh0OjplbnN1cmVOZXR3b3JrUHJvY2Vzcyk6CisgICAgICAgIChXZWJLaXQ6Oldl
YkNvbnRleHQ6OmNyZWF0ZU5ld1dlYlByb2Nlc3MpOgorICAgICAgICAoV2ViS2l0OjpXZWJDb250
ZXh0OjpvcGVuR0xDYWNoZURpcmVjdG9yeSk6IERlbGV0ZWQuCisgICAgICAgIChXZWJLaXQ6Oldl
YkNvbnRleHQ6Om5ldHdvcmtpbmdIU1RTRGF0YWJhc2VQYXRoKTogRGVsZXRlZC4KKyAgICAgICAg
KiBVSVByb2Nlc3MvV2ViQ29udGV4dC5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9lZmwvV2ViQ29u
dGV4dEVmbC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkNvbnRleHQ6OmNvbnRhaW5lclRlbXBv
cmFyeURpcmVjdG9yeSk6IERlbGV0ZWQuCisgICAgICAgIChXZWJLaXQ6OldlYkNvbnRleHQ6OnBs
YXRmb3JtRGVmYXVsdE5ldHdvcmtpbmdIU1RTRGF0YWJhc2VQYXRoKTogRGVsZXRlZC4KKyAgICAg
ICAgKiBVSVByb2Nlc3MvZ3RrL1dlYkNvbnRleHRHdGsuY3BwOgorICAgICAgICAoV2ViS2l0OjpX
ZWJDb250ZXh0Ojpjb250YWluZXJUZW1wb3JhcnlEaXJlY3RvcnkpOiBEZWxldGVkLgorICAgICAg
ICAoV2ViS2l0OjpXZWJDb250ZXh0OjpwbGF0Zm9ybURlZmF1bHROZXR3b3JraW5nSFNUU0RhdGFi
YXNlUGF0aCk6IERlbGV0ZWQuCisgICAgICAgICogVUlQcm9jZXNzL21hYy9XZWJDb250ZXh0TWFj
Lm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJDb250ZXh0OjpvcGVuR0xDYWNoZURpcmVjdG9yeSk6
CisgICAgICAgIChXZWJLaXQ6OldlYkNvbnRleHQ6OnBhcmVudEJ1bmRsZURpcmVjdG9yeSk6Cisg
ICAgICAgIChXZWJLaXQ6OldlYkNvbnRleHQ6Om5ldHdvcmtpbmdIU1RTRGF0YWJhc2VQYXRoKToK
KyAgICAgICAgKFdlYktpdDo6V2ViQ29udGV4dDo6cGxhdGZvcm1EZWZhdWx0T3BlbkdMQ2FjaGVE
aXJlY3RvcnkpOiBEZWxldGVkLgorICAgICAgICAoV2ViS2l0OjpXZWJDb250ZXh0OjpwbGF0Zm9y
bURlZmF1bHROZXR3b3JraW5nSFNUU0RhdGFiYXNlUGF0aCk6IERlbGV0ZWQuCisgICAgICAgICog
V2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2EubW06CisgICAgICAgIChXZWJLaXQ6Oldl
YlByb2Nlc3M6OnBsYXRmb3JtSW5pdGlhbGl6ZVdlYlByb2Nlc3MpOgorCiAyMDE0LTA4LTEyICBU
aW0gSG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgogCiAgICAgICAgIERvbid0IHNo
b3cgdGhlIGNvbWJpbmVkIG1lbnUgaWYgdGhlcmUgYXJlIG5vIHNlcnZpY2VzIGF2YWlsYWJsZQpJ
bmRleDogU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Byb2Nlc3ND
b2NvYS5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9jb2Nv
YS9OZXR3b3JrUHJvY2Vzc0NvY29hLm1tCShyZXZpc2lvbiAxNzI0ODcpCisrKyBTb3VyY2UvV2Vi
S2l0Mi9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrUHJvY2Vzc0NvY29hLm1tCSh3b3JraW5n
IGNvcHkpCkBAIC02MCw4ICs2MCw4IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3M6OnBsYXRmb3JtTG93
TWVtb3J5SGEKIAogdm9pZCBOZXR3b3JrUHJvY2Vzczo6cGxhdGZvcm1Jbml0aWFsaXplTmV0d29y
a1Byb2Nlc3NDb2NvYShjb25zdCBOZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycyYgcGFy
YW1ldGVycykKIHsKLSAgICBTYW5kYm94RXh0ZW5zaW9uOjpjb25zdW1lUGVybWFuZW50bHkocGFy
YW1ldGVycy5jb29raWVTdG9yYWdlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKTsKICNpZiBQTEFU
Rk9STShJT1MpCisgICAgU2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KHBhcmFt
ZXRlcnMuY29va2llU3RvcmFnZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSk7CiAgICAgU2FuZGJv
eEV4dGVuc2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KHBhcmFtZXRlcnMuaHN0c0RhdGFiYXNlUGF0
aEV4dGVuc2lvbkhhbmRsZSk7CiAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBlcm1hbmVu
dGx5KHBhcmFtZXRlcnMucGFyZW50QnVuZGxlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKTsKICNl
bmRpZgpJbmRleDogU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByb2Nlc3NDcmVhdGlvblBhcmFt
ZXRlcnMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcm9jZXNz
Q3JlYXRpb25QYXJhbWV0ZXJzLmNwcAkocmV2aXNpb24gMTcyNDg3KQorKysgU291cmNlL1dlYktp
dDIvU2hhcmVkL1dlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC02NywxMyArNjcsMTAgQEAgdm9pZCBXZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzOjpl
bmNvZAogICAgIGVuY29kZXIgPDwgZGlza0NhY2hlRGlyZWN0b3J5OwogICAgIGVuY29kZXIgPDwg
ZGlza0NhY2hlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlOwogICAgIGVuY29kZXIgPDwgY29va2ll
U3RvcmFnZURpcmVjdG9yeTsKKyNpZiBQTEFURk9STShJT1MpCiAgICAgZW5jb2RlciA8PCBjb29r
aWVTdG9yYWdlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlOwotICAgIGVuY29kZXIgPDwgb3BlbkdM
Q2FjaGVEaXJlY3Rvcnk7CiAgICAgZW5jb2RlciA8PCBvcGVuR0xDYWNoZURpcmVjdG9yeUV4dGVu
c2lvbkhhbmRsZTsKLSAgICBlbmNvZGVyIDw8IGNvbnRhaW5lclRlbXBvcmFyeURpcmVjdG9yeTsK
ICAgICBlbmNvZGVyIDw8IGNvbnRhaW5lclRlbXBvcmFyeURpcmVjdG9yeUV4dGVuc2lvbkhhbmRs
ZTsKLSNpZiBQTEFURk9STShJT1MpCi0gICAgZW5jb2RlciA8PCBoc3RzRGF0YWJhc2VQYXRoOwog
ICAgIGVuY29kZXIgPDwgaHN0c0RhdGFiYXNlUGF0aEV4dGVuc2lvbkhhbmRsZTsKICNlbmRpZgog
ICAgIGVuY29kZXIgPDwgc2hvdWxkVXNlVGVzdGluZ05ldHdvcmtTZXNzaW9uOwpAQCAtMTY3LDE5
ICsxNjQsMTMgQEAgYm9vbCBXZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzOjpkZWNvZAogICAg
ICAgICByZXR1cm4gZmFsc2U7CiAgICAgaWYgKCFkZWNvZGVyLmRlY29kZShwYXJhbWV0ZXJzLmNv
b2tpZVN0b3JhZ2VEaXJlY3RvcnkpKQogICAgICAgICByZXR1cm4gZmFsc2U7CisjaWYgUExBVEZP
Uk0oSU9TKQogICAgIGlmICghZGVjb2Rlci5kZWNvZGUocGFyYW1ldGVycy5jb29raWVTdG9yYWdl
RGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIGlm
ICghZGVjb2Rlci5kZWNvZGUocGFyYW1ldGVycy5vcGVuR0xDYWNoZURpcmVjdG9yeSkpCi0gICAg
ICAgIHJldHVybiBmYWxzZTsKICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHBhcmFtZXRlcnMub3Bl
bkdMQ2FjaGVEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGUpKQogICAgICAgICByZXR1cm4gZmFsc2U7
Ci0gICAgaWYgKCFkZWNvZGVyLmRlY29kZShwYXJhbWV0ZXJzLmNvbnRhaW5lclRlbXBvcmFyeURp
cmVjdG9yeSkpCi0gICAgICAgIHJldHVybiBmYWxzZTsKICAgICBpZiAoIWRlY29kZXIuZGVjb2Rl
KHBhcmFtZXRlcnMuY29udGFpbmVyVGVtcG9yYXJ5RGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKSkK
ICAgICAgICAgcmV0dXJuIGZhbHNlOwotI2lmIFBMQVRGT1JNKElPUykKLSAgICBpZiAoIWRlY29k
ZXIuZGVjb2RlKHBhcmFtZXRlcnMuaHN0c0RhdGFiYXNlUGF0aCkpCi0gICAgICAgIHJldHVybiBm
YWxzZTsKICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHBhcmFtZXRlcnMuaHN0c0RhdGFiYXNlUGF0
aEV4dGVuc2lvbkhhbmRsZSkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKICNlbmRpZgpJbmRleDog
U291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1l
dGVycy5oCShyZXZpc2lvbiAxNzI0ODcpCisrKyBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJv
Y2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oCSh3b3JraW5nIGNvcHkpCkBAIC03MSwxNSArNzEsMTEg
QEAgc3RydWN0IFdlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMgewogICAgIFN0cmluZyBkaXNr
Q2FjaGVEaXJlY3Rvcnk7CiAgICAgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlIGRpc2tDYWNoZURp
cmVjdG9yeUV4dGVuc2lvbkhhbmRsZTsKICAgICBTdHJpbmcgY29va2llU3RvcmFnZURpcmVjdG9y
eTsKKyNpZiBQTEFURk9STShJT1MpCiAgICAgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlIGNvb2tp
ZVN0b3JhZ2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGU7Ci0gICAgU3RyaW5nIG9wZW5HTENhY2hl
RGlyZWN0b3J5OwogICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBvcGVuR0xDYWNoZURpcmVj
dG9yeUV4dGVuc2lvbkhhbmRsZTsKLSAgICBTdHJpbmcgY29udGFpbmVyVGVtcG9yYXJ5RGlyZWN0
b3J5OwogICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBjb250YWluZXJUZW1wb3JhcnlEaXJl
Y3RvcnlFeHRlbnNpb25IYW5kbGU7Ci0KLSNpZiBQTEFURk9STShJT1MpCiAgICAgLy8gRklYTUU6
IFJlbW92ZSB0aGlzIG9uY2UgPHJkYXI6Ly9wcm9ibGVtLzE3NzI2NjYwPiBpcyBmaXhlZC4KLSAg
ICBTdHJpbmcgaHN0c0RhdGFiYXNlUGF0aDsKICAgICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUg
aHN0c0RhdGFiYXNlUGF0aEV4dGVuc2lvbkhhbmRsZTsKICNlbmRpZgogCkluZGV4OiBTb3VyY2Uv
V2ViS2l0Mi9TaGFyZWQvTmV0d29yay9OZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvU2hhcmVkL05ldHdvcmsvTmV0d29ya1By
b2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuY3BwCShyZXZpc2lvbiAxNzI0ODcpCisrKyBTb3VyY2Uv
V2ViS2l0Mi9TaGFyZWQvTmV0d29yay9OZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTQzLDExICs0Myw5IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3ND
cmVhdGlvblBhcmFtZXRlcnM6OmUKICAgICBlbmNvZGVyIDw8IGRpc2tDYWNoZURpcmVjdG9yeTsK
ICAgICBlbmNvZGVyIDw8IGRpc2tDYWNoZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZTsKICAgICBl
bmNvZGVyIDw8IGNvb2tpZVN0b3JhZ2VEaXJlY3Rvcnk7Ci0gICAgZW5jb2RlciA8PCBjb29raWVT
dG9yYWdlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlOwogI2lmIFBMQVRGT1JNKElPUykKLSAgICBl
bmNvZGVyIDw8IGhzdHNEYXRhYmFzZVBhdGg7CisgICAgZW5jb2RlciA8PCBjb29raWVTdG9yYWdl
RGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlOwogICAgIGVuY29kZXIgPDwgaHN0c0RhdGFiYXNlUGF0
aEV4dGVuc2lvbkhhbmRsZTsKLSAgICBlbmNvZGVyIDw8IHBhcmVudEJ1bmRsZURpcmVjdG9yeTsK
ICAgICBlbmNvZGVyIDw8IHBhcmVudEJ1bmRsZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZTsKICNl
bmRpZgogICAgIGVuY29kZXIgPDwgc2hvdWxkVXNlVGVzdGluZ05ldHdvcmtTZXNzaW9uOwpAQCAt
ODMsMTUgKzgxLDExIEBAIGJvb2wgTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM6OmQK
ICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIGlmICghZGVjb2Rlci5kZWNvZGUocmVzdWx0LmNv
b2tpZVN0b3JhZ2VEaXJlY3RvcnkpKQogICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgaWYgKCFk
ZWNvZGVyLmRlY29kZShyZXN1bHQuY29va2llU3RvcmFnZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRs
ZSkpCi0gICAgICAgIHJldHVybiBmYWxzZTsKICNpZiBQTEFURk9STShJT1MpCi0gICAgaWYgKCFk
ZWNvZGVyLmRlY29kZShyZXN1bHQuaHN0c0RhdGFiYXNlUGF0aCkpCisgICAgaWYgKCFkZWNvZGVy
LmRlY29kZShyZXN1bHQuY29va2llU3RvcmFnZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSkpCiAg
ICAgICAgIHJldHVybiBmYWxzZTsKICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHJlc3VsdC5oc3Rz
RGF0YWJhc2VQYXRoRXh0ZW5zaW9uSGFuZGxlKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAg
IGlmICghZGVjb2Rlci5kZWNvZGUocmVzdWx0LnBhcmVudEJ1bmRsZURpcmVjdG9yeSkpCi0gICAg
ICAgIHJldHVybiBmYWxzZTsKICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHJlc3VsdC5wYXJlbnRC
dW5kbGVEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGUpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAj
ZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9OZXR3b3JrL05ldHdvcmtQcm9jZXNz
Q3JlYXRpb25QYXJhbWV0ZXJzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvU2hhcmVk
L05ldHdvcmsvTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaAkocmV2aXNpb24gMTcy
NDg3KQorKysgU291cmNlL1dlYktpdDIvU2hhcmVkL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NDcmVh
dGlvblBhcmFtZXRlcnMuaAkod29ya2luZyBjb3B5KQpAQCAtNTcsMTQgKzU3LDEzIEBAIHN0cnVj
dCBOZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycyAKICAgICBTYW5kYm94RXh0ZW5zaW9u
OjpIYW5kbGUgZGlza0NhY2hlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlOwogCiAgICAgU3RyaW5n
IGNvb2tpZVN0b3JhZ2VEaXJlY3Rvcnk7Ci0gICAgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlIGNv
b2tpZVN0b3JhZ2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGU7CiAKICNpZiBQTEFURk9STShJT1Mp
CisgICAgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlIGNvb2tpZVN0b3JhZ2VEaXJlY3RvcnlFeHRl
bnNpb25IYW5kbGU7CisKICAgICAvLyBGSVhNRTogUmVtb3ZlIHRoaXMgb25jZSA8cmRhcjovL3By
b2JsZW0vMTc3MjY2NjA+IGlzIGZpeGVkLgotICAgIFN0cmluZyBoc3RzRGF0YWJhc2VQYXRoOwog
ICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBoc3RzRGF0YWJhc2VQYXRoRXh0ZW5zaW9uSGFu
ZGxlOwogCi0gICAgU3RyaW5nIHBhcmVudEJ1bmRsZURpcmVjdG9yeTsKICAgICBTYW5kYm94RXh0
ZW5zaW9uOjpIYW5kbGUgcGFyZW50QnVuZGxlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlOwogI2Vu
ZGlmCiAgICAgYm9vbCBzaG91bGRVc2VUZXN0aW5nTmV0d29ya1Nlc3Npb247CkluZGV4OiBTb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViQ29udGV4dC5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL1dlYkNvbnRleHQuY3BwCShyZXZpc2lvbiAxNzI0ODcpCisrKyBT
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViQ29udGV4dC5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTQyMSwxNyArNDIxLDE4IEBAIHZvaWQgV2ViQ29udGV4dDo6ZW5zdXJlTmV0d29ya1Byb2Nlc3Mo
KQogICAgICAgICBTYW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVIYW5kbGVGb3JSZWFkV3JpdGVEaXJl
Y3RvcnkocGFyYW1ldGVycy5kaXNrQ2FjaGVEaXJlY3RvcnksIHBhcmFtZXRlcnMuZGlza0NhY2hl
RGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKTsKIAogICAgIHBhcmFtZXRlcnMuY29va2llU3RvcmFn
ZURpcmVjdG9yeSA9IGNvb2tpZVN0b3JhZ2VEaXJlY3RvcnkoKTsKKworI2lmIFBMQVRGT1JNKElP
UykKICAgICBpZiAoIXBhcmFtZXRlcnMuY29va2llU3RvcmFnZURpcmVjdG9yeS5pc0VtcHR5KCkp
CiAgICAgICAgIFNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvclJlYWRXcml0ZURpcmVj
dG9yeShwYXJhbWV0ZXJzLmNvb2tpZVN0b3JhZ2VEaXJlY3RvcnksIHBhcmFtZXRlcnMuY29va2ll
U3RvcmFnZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSk7CiAKLSNpZiBQTEFURk9STShJT1MpCi0g
ICAgcGFyYW1ldGVycy5oc3RzRGF0YWJhc2VQYXRoID0gbmV0d29ya2luZ0hTVFNEYXRhYmFzZVBh
dGgoKTsKLSAgICBpZiAoIXBhcmFtZXRlcnMuaHN0c0RhdGFiYXNlUGF0aC5pc0VtcHR5KCkpCi0g
ICAgICAgIFNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZShwYXJhbWV0ZXJzLmhzdHNEYXRh
YmFzZVBhdGgsIFNhbmRib3hFeHRlbnNpb246OlJlYWRXcml0ZSwgcGFyYW1ldGVycy5oc3RzRGF0
YWJhc2VQYXRoRXh0ZW5zaW9uSGFuZGxlKTsKLQotICAgIHBhcmFtZXRlcnMucGFyZW50QnVuZGxl
RGlyZWN0b3J5ID0gcGFyZW50QnVuZGxlRGlyZWN0b3J5KCk7Ci0gICAgaWYgKCFwYXJhbWV0ZXJz
LnBhcmVudEJ1bmRsZURpcmVjdG9yeS5pc0VtcHR5KCkpCi0gICAgICAgIFNhbmRib3hFeHRlbnNp
b246OmNyZWF0ZUhhbmRsZShwYXJhbWV0ZXJzLnBhcmVudEJ1bmRsZURpcmVjdG9yeSwgU2FuZGJv
eEV4dGVuc2lvbjo6UmVhZE9ubHksIHBhcmFtZXRlcnMucGFyZW50QnVuZGxlRGlyZWN0b3J5RXh0
ZW5zaW9uSGFuZGxlKTsKKyAgICBTdHJpbmcgaHN0c0RhdGFiYXNlUGF0aCA9IG5ldHdvcmtpbmdI
U1RTRGF0YWJhc2VQYXRoKCk7CisgICAgaWYgKCFoc3RzRGF0YWJhc2VQYXRoLmlzRW1wdHkoKSkK
KyAgICAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlKGhzdHNEYXRhYmFzZVBhdGgs
IFNhbmRib3hFeHRlbnNpb246OlJlYWRXcml0ZSwgcGFyYW1ldGVycy5oc3RzRGF0YWJhc2VQYXRo
RXh0ZW5zaW9uSGFuZGxlKTsKKworICAgIFN0cmluZyBwYXJlbnRCdW5kbGVEaXJlY3RvcnkgPSBw
YXJlbnRCdW5kbGVEaXJlY3RvcnkoKTsKKyAgICBpZiAoIXBhcmVudEJ1bmRsZURpcmVjdG9yeS5p
c0VtcHR5KCkpCisgICAgICAgIFNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZShwYXJlbnRC
dW5kbGVEaXJlY3RvcnksIFNhbmRib3hFeHRlbnNpb246OlJlYWRPbmx5LCBwYXJhbWV0ZXJzLnBh
cmVudEJ1bmRsZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSk7CiAjZW5kaWYKIAogICAgIHBhcmFt
ZXRlcnMuc2hvdWxkVXNlVGVzdGluZ05ldHdvcmtTZXNzaW9uID0gbV9zaG91bGRVc2VUZXN0aW5n
TmV0d29ya1Nlc3Npb247CkBAIC02MTgsMjEgKzYxOSwyMiBAQCBXZWJQcm9jZXNzUHJveHkmIFdl
YkNvbnRleHQ6OmNyZWF0ZU5ld1dlCiAgICAgICAgIFNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhh
bmRsZUZvclJlYWRXcml0ZURpcmVjdG9yeShwYXJhbWV0ZXJzLmRpc2tDYWNoZURpcmVjdG9yeSwg
cGFyYW1ldGVycy5kaXNrQ2FjaGVEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGUpOwogCiAgICAgcGFy
YW1ldGVycy5jb29raWVTdG9yYWdlRGlyZWN0b3J5ID0gY29va2llU3RvcmFnZURpcmVjdG9yeSgp
OworCisjaWYgUExBVEZPUk0oSU9TKQogICAgIGlmICghcGFyYW1ldGVycy5jb29raWVTdG9yYWdl
RGlyZWN0b3J5LmlzRW1wdHkoKSkKICAgICAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFu
ZGxlRm9yUmVhZFdyaXRlRGlyZWN0b3J5KHBhcmFtZXRlcnMuY29va2llU3RvcmFnZURpcmVjdG9y
eSwgcGFyYW1ldGVycy5jb29raWVTdG9yYWdlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKTsKIAot
ICAgIHBhcmFtZXRlcnMub3BlbkdMQ2FjaGVEaXJlY3RvcnkgPSBvcGVuR0xDYWNoZURpcmVjdG9y
eSgpOwotICAgIGlmICghcGFyYW1ldGVycy5vcGVuR0xDYWNoZURpcmVjdG9yeS5pc0VtcHR5KCkp
Ci0gICAgICAgIFNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvclJlYWRXcml0ZURpcmVj
dG9yeShwYXJhbWV0ZXJzLm9wZW5HTENhY2hlRGlyZWN0b3J5LCBwYXJhbWV0ZXJzLm9wZW5HTENh
Y2hlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKTsKLQotICAgIHBhcmFtZXRlcnMuY29udGFpbmVy
VGVtcG9yYXJ5RGlyZWN0b3J5ID0gY29udGFpbmVyVGVtcG9yYXJ5RGlyZWN0b3J5KCk7Ci0gICAg
aWYgKCFwYXJhbWV0ZXJzLmNvbnRhaW5lclRlbXBvcmFyeURpcmVjdG9yeS5pc0VtcHR5KCkpCi0g
ICAgICAgIFNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvclJlYWRXcml0ZURpcmVjdG9y
eShwYXJhbWV0ZXJzLmNvbnRhaW5lclRlbXBvcmFyeURpcmVjdG9yeSwgcGFyYW1ldGVycy5jb250
YWluZXJUZW1wb3JhcnlEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGUpOwotCi0jaWYgUExBVEZPUk0o
SU9TKQotICAgIHBhcmFtZXRlcnMuaHN0c0RhdGFiYXNlUGF0aCA9IHdlYkNvbnRlbnRIU1RTRGF0
YWJhc2VQYXRoKCk7Ci0gICAgaWYgKCFwYXJhbWV0ZXJzLmhzdHNEYXRhYmFzZVBhdGguaXNFbXB0
eSgpKQotICAgICAgICBTYW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVIYW5kbGUocGFyYW1ldGVycy5o
c3RzRGF0YWJhc2VQYXRoLCBTYW5kYm94RXh0ZW5zaW9uOjpSZWFkV3JpdGUsIHBhcmFtZXRlcnMu
aHN0c0RhdGFiYXNlUGF0aEV4dGVuc2lvbkhhbmRsZSk7CisgICAgU3RyaW5nIG9wZW5HTENhY2hl
RGlyZWN0b3J5ID0gb3BlbkdMQ2FjaGVEaXJlY3RvcnkoKTsKKyAgICBpZiAoIW9wZW5HTENhY2hl
RGlyZWN0b3J5LmlzRW1wdHkoKSkKKyAgICAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFu
ZGxlRm9yUmVhZFdyaXRlRGlyZWN0b3J5KG9wZW5HTENhY2hlRGlyZWN0b3J5LCBwYXJhbWV0ZXJz
Lm9wZW5HTENhY2hlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKTsKKworICAgIFN0cmluZyBjb250
YWluZXJUZW1wb3JhcnlEaXJlY3RvcnkgPSBjb250YWluZXJUZW1wb3JhcnlEaXJlY3RvcnkoKTsK
KyAgICBpZiAoIWNvbnRhaW5lclRlbXBvcmFyeURpcmVjdG9yeS5pc0VtcHR5KCkpCisgICAgICAg
IFNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvclJlYWRXcml0ZURpcmVjdG9yeShjb250
YWluZXJUZW1wb3JhcnlEaXJlY3RvcnksIHBhcmFtZXRlcnMuY29udGFpbmVyVGVtcG9yYXJ5RGly
ZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKTsKKworICAgIFN0cmluZyBoc3RzRGF0YWJhc2VQYXRoID0g
d2ViQ29udGVudEhTVFNEYXRhYmFzZVBhdGgoKTsKKyAgICBpZiAoIWhzdHNEYXRhYmFzZVBhdGgu
aXNFbXB0eSgpKQorICAgICAgICBTYW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVIYW5kbGUoaHN0c0Rh
dGFiYXNlUGF0aCwgU2FuZGJveEV4dGVuc2lvbjo6UmVhZFdyaXRlLCBwYXJhbWV0ZXJzLmhzdHNE
YXRhYmFzZVBhdGhFeHRlbnNpb25IYW5kbGUpOwogI2VuZGlmCiAKICAgICBwYXJhbWV0ZXJzLnNo
b3VsZFVzZVRlc3RpbmdOZXR3b3JrU2Vzc2lvbiA9IG1fc2hvdWxkVXNlVGVzdGluZ05ldHdvcmtT
ZXNzaW9uOwpAQCAtMTIyMSwxOSArMTIyMyw2IEBAIFN0cmluZyBXZWJDb250ZXh0Ojpjb29raWVT
dG9yYWdlRGlyZWN0b3IKICAgICByZXR1cm4gcGxhdGZvcm1EZWZhdWx0Q29va2llU3RvcmFnZURp
cmVjdG9yeSgpOwogfQogCi1TdHJpbmcgV2ViQ29udGV4dDo6b3BlbkdMQ2FjaGVEaXJlY3Rvcnko
KSBjb25zdAotewotICAgIGlmICghbV9vdmVycmlkZU9wZW5HTENhY2hlRGlyZWN0b3J5LmlzRW1w
dHkoKSkKLSAgICAgICAgcmV0dXJuIG1fb3ZlcnJpZGVPcGVuR0xDYWNoZURpcmVjdG9yeTsKLQot
ICAgIHJldHVybiBwbGF0Zm9ybURlZmF1bHRPcGVuR0xDYWNoZURpcmVjdG9yeSgpOwotfQotCi1T
dHJpbmcgV2ViQ29udGV4dDo6bmV0d29ya2luZ0hTVFNEYXRhYmFzZVBhdGgoKSBjb25zdAotewot
ICAgIHJldHVybiBwbGF0Zm9ybURlZmF1bHROZXR3b3JraW5nSFNUU0RhdGFiYXNlUGF0aCgpOwot
fQotCiB2b2lkIFdlYkNvbnRleHQ6OnVzZVRlc3RpbmdOZXR3b3JrU2Vzc2lvbigpCiB7CiAgICAg
QVNTRVJUKG1fcHJvY2Vzc2VzLmlzRW1wdHkoKSk7CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvV2ViQ29udGV4dC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9XZWJDb250ZXh0LmgJKHJldmlzaW9uIDE3MjQ4NykKKysrIFNvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9XZWJDb250ZXh0LmgJKHdvcmtpbmcgY29weSkKQEAgLTQyMywxOCArNDIzLDEzIEBAIHBy
aXZhdGU6CiAgICAgU3RyaW5nIGNvb2tpZVN0b3JhZ2VEaXJlY3RvcnkoKSBjb25zdDsKICAgICBT
dHJpbmcgcGxhdGZvcm1EZWZhdWx0Q29va2llU3RvcmFnZURpcmVjdG9yeSgpIGNvbnN0OwogCi0g
ICAgU3RyaW5nIG9wZW5HTENhY2hlRGlyZWN0b3J5KCkgY29uc3Q7Ci0gICAgU3RyaW5nIHBsYXRm
b3JtRGVmYXVsdE9wZW5HTENhY2hlRGlyZWN0b3J5KCkgY29uc3Q7Ci0KLSAgICBTdHJpbmcgbmV0
d29ya2luZ0hTVFNEYXRhYmFzZVBhdGgoKSBjb25zdDsKLSAgICBTdHJpbmcgcGxhdGZvcm1EZWZh
dWx0TmV0d29ya2luZ0hTVFNEYXRhYmFzZVBhdGgoKSBjb25zdDsKLQogI2lmIFBMQVRGT1JNKElP
UykKKyAgICBTdHJpbmcgb3BlbkdMQ2FjaGVEaXJlY3RvcnkoKSBjb25zdDsKICAgICBTdHJpbmcg
cGFyZW50QnVuZGxlRGlyZWN0b3J5KCkgY29uc3Q7CisgICAgU3RyaW5nIG5ldHdvcmtpbmdIU1RT
RGF0YWJhc2VQYXRoKCkgY29uc3Q7CiAgICAgU3RyaW5nIHdlYkNvbnRlbnRIU1RTRGF0YWJhc2VQ
YXRoKCkgY29uc3Q7Ci0jZW5kaWYKLQogICAgIFN0cmluZyBjb250YWluZXJUZW1wb3JhcnlEaXJl
Y3RvcnkoKSBjb25zdDsKKyNlbmRpZgogCiAjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgdm9pZCBy
ZWdpc3Rlck5vdGlmaWNhdGlvbk9ic2VydmVycygpOwpAQCAtNTMxLDcgKzUyNiw2IEBAIHByaXZh
dGU6CiAgICAgU3RyaW5nIG1fb3ZlcnJpZGVJY29uRGF0YWJhc2VQYXRoOwogICAgIFN0cmluZyBt
X292ZXJyaWRlRGlza0NhY2hlRGlyZWN0b3J5OwogICAgIFN0cmluZyBtX292ZXJyaWRlQ29va2ll
U3RvcmFnZURpcmVjdG9yeTsKLSAgICBTdHJpbmcgbV9vdmVycmlkZU9wZW5HTENhY2hlRGlyZWN0
b3J5OwogCiAgICAgU3RyaW5nIG1fd2ViU1FMRGF0YWJhc2VEaXJlY3Rvcnk7CiAgICAgU3RyaW5n
IG1faW5kZXhlZERCRGF0YWJhc2VEaXJlY3Rvcnk7CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvZWZsL1dlYkNvbnRleHRFZmwuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9lZmwvV2ViQ29udGV4dEVmbC5jcHAJKHJldmlzaW9uIDE3MjQ4NykKKysrIFNv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvV2ViQ29udGV4dEVmbC5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTEzMiwyNCArMTMyLDYgQEAgU3RyaW5nIFdlYkNvbnRleHQ6OnBsYXRmb3JtRGVmYXVs
dENvb2tpZQogICAgIHJldHVybiBTdHJpbmcoKTsKIH0KIAotU3RyaW5nIFdlYkNvbnRleHQ6OnBs
YXRmb3JtRGVmYXVsdE9wZW5HTENhY2hlRGlyZWN0b3J5KCkgY29uc3QKLXsKLSAgICBub3RJbXBs
ZW1lbnRlZCgpOwotICAgIHJldHVybiBTdHJpbmcoKTsKLX0KLQotU3RyaW5nIFdlYkNvbnRleHQ6
OmNvbnRhaW5lclRlbXBvcmFyeURpcmVjdG9yeSgpIGNvbnN0Ci17Ci0gICAgbm90SW1wbGVtZW50
ZWQoKTsKLSAgICByZXR1cm4gU3RyaW5nKCk7Ci19Ci0KLVN0cmluZyBXZWJDb250ZXh0OjpwbGF0
Zm9ybURlZmF1bHROZXR3b3JraW5nSFNUU0RhdGFiYXNlUGF0aCgpIGNvbnN0Ci17Ci0gICAgbm90
SW1wbGVtZW50ZWQoKTsKLSAgICByZXR1cm4gU3RyaW5nKCk7Ci19Ci0KIHZvaWQgV2ViQ29udGV4
dDo6c2V0SWdub3JlVExTRXJyb3JzKGJvb2wgaWdub3JlVExTRXJyb3JzKQogewogICAgIG1faWdu
b3JlVExTRXJyb3JzID0gaWdub3JlVExTRXJyb3JzOwpJbmRleDogU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL2d0ay9XZWJDb250ZXh0R3RrLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvZ3RrL1dlYkNvbnRleHRHdGsuY3BwCShyZXZpc2lvbiAxNzI0ODcpCisrKyBT
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZ3RrL1dlYkNvbnRleHRHdGsuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0xNDgsMjQgKzE0OCw2IEBAIFN0cmluZyBXZWJDb250ZXh0OjpwbGF0Zm9ybURlZmF1
bHRDb29raWUKICAgICByZXR1cm4gU3RyaW5nKCk7CiB9CiAKLVN0cmluZyBXZWJDb250ZXh0Ojpw
bGF0Zm9ybURlZmF1bHRPcGVuR0xDYWNoZURpcmVjdG9yeSgpIGNvbnN0Ci17Ci0gICAgbm90SW1w
bGVtZW50ZWQoKTsKLSAgICByZXR1cm4gU3RyaW5nKCk7Ci19Ci0KLVN0cmluZyBXZWJDb250ZXh0
Ojpjb250YWluZXJUZW1wb3JhcnlEaXJlY3RvcnkoKSBjb25zdAotewotICAgIG5vdEltcGxlbWVu
dGVkKCk7Ci0gICAgcmV0dXJuIFN0cmluZygpOwotfQotCi1TdHJpbmcgV2ViQ29udGV4dDo6cGxh
dGZvcm1EZWZhdWx0TmV0d29ya2luZ0hTVFNEYXRhYmFzZVBhdGgoKSBjb25zdAotewotICAgIG5v
dEltcGxlbWVudGVkKCk7Ci0gICAgcmV0dXJuIFN0cmluZygpOwotfQotCiB2b2lkIFdlYkNvbnRl
eHQ6OnNldElnbm9yZVRMU0Vycm9ycyhib29sIGlnbm9yZVRMU0Vycm9ycykKIHsKICAgICBtX2ln
bm9yZVRMU0Vycm9ycyA9IGlnbm9yZVRMU0Vycm9yczsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9tYWMvV2ViQ29udGV4dE1hYy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvbWFjL1dlYkNvbnRleHRNYWMubW0JKHJldmlzaW9uIDE3MjQ4NykKKysrIFNv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvV2ViQ29udGV4dE1hYy5tbQkod29ya2luZyBjb3B5
KQpAQCAtMjg0LDI0ICsyODQsMjQgQEAgU3RyaW5nIFdlYkNvbnRleHQ6OnBsYXRmb3JtRGVmYXVs
dENvb2tpZQogI2VuZGlmCiB9CiAKLVN0cmluZyBXZWJDb250ZXh0OjpwbGF0Zm9ybURlZmF1bHRP
cGVuR0xDYWNoZURpcmVjdG9yeSgpIGNvbnN0Ci17CiAjaWYgUExBVEZPUk0oSU9TKQorU3RyaW5n
IFdlYkNvbnRleHQ6Om9wZW5HTENhY2hlRGlyZWN0b3J5KCkgY29uc3QKK3sKICAgICBTdHJpbmcg
cGF0aCA9IHBhdGhGb3JQcm9jZXNzQ29udGFpbmVyKCk7CiAgICAgaWYgKHBhdGguaXNFbXB0eSgp
KQogICAgICAgICBwYXRoID0gTlNIb21lRGlyZWN0b3J5KCk7CiAKICAgICBwYXRoID0gcGF0aCAr
ICIvTGlicmFyeS9DYWNoZXMvY29tLmFwcGxlLldlYktpdC5XZWJDb250ZW50L2NvbS5hcHBsZS5v
cGVuZ2wvIjsKICAgICByZXR1cm4gc3RyaW5nQnlSZXNvbHZpbmdTeW1saW5rc0luUGF0aChwYXRo
KTsKLSNlbHNlCi0gICAgbm90SW1wbGVtZW50ZWQoKTsKLSAgICByZXR1cm4gW0AiIiBzdHJpbmdC
eVN0YW5kYXJkaXppbmdQYXRoXTsKLSNlbmRpZgogfQogCi1TdHJpbmcgV2ViQ29udGV4dDo6cGxh
dGZvcm1EZWZhdWx0TmV0d29ya2luZ0hTVFNEYXRhYmFzZVBhdGgoKSBjb25zdAorU3RyaW5nIFdl
YkNvbnRleHQ6OnBhcmVudEJ1bmRsZURpcmVjdG9yeSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIFtb
W05TQnVuZGxlIG1haW5CdW5kbGVdIGJ1bmRsZVBhdGhdIHN0cmluZ0J5U3RhbmRhcmRpemluZ1Bh
dGhdOworfQorCitTdHJpbmcgV2ViQ29udGV4dDo6bmV0d29ya2luZ0hTVFNEYXRhYmFzZVBhdGgo
KSBjb25zdAogewotI2lmIFBMQVRGT1JNKElPUykKICAgICBTdHJpbmcgcGF0aCA9IHBhdGhGb3JQ
cm9jZXNzQ29udGFpbmVyKCk7CiAgICAgaWYgKHBhdGguaXNFbXB0eSgpKQogICAgICAgICBwYXRo
ID0gTlNIb21lRGlyZWN0b3J5KCk7CkBAIC0zMTcsMTYgKzMxNyw2IEBAIFN0cmluZyBXZWJDb250
ZXh0OjpwbGF0Zm9ybURlZmF1bHROZXR3b3IKICAgICB9CiAKICAgICByZXR1cm4gcGF0aCArICIv
SFNUUy5wbGlzdCI7Ci0jZWxzZQotICAgIG5vdEltcGxlbWVudGVkKCk7Ci0gICAgcmV0dXJuIFtA
IiIgc3RyaW5nQnlTdGFuZGFyZGl6aW5nUGF0aF07Ci0jZW5kaWYKLX0KLQotI2lmIFBMQVRGT1JN
KElPUykKLVN0cmluZyBXZWJDb250ZXh0OjpwYXJlbnRCdW5kbGVEaXJlY3RvcnkoKSBjb25zdAot
ewotICAgIHJldHVybiBbW1tOU0J1bmRsZSBtYWluQnVuZGxlXSBidW5kbGVQYXRoXSBzdHJpbmdC
eVN0YW5kYXJkaXppbmdQYXRoXTsKIH0KIAogU3RyaW5nIFdlYkNvbnRleHQ6OndlYkNvbnRlbnRI
U1RTRGF0YWJhc2VQYXRoKCkgY29uc3QKQEAgLTM0OCwxMyArMzM4LDEyIEBAIFN0cmluZyBXZWJD
b250ZXh0Ojp3ZWJDb250ZW50SFNUU0RhdGFiYXMKICAgICByZXR1cm4gcGF0aCArICIvSFNUUy5w
bGlzdCI7CiB9CiAKLSNlbmRpZgotCiBTdHJpbmcgV2ViQ29udGV4dDo6Y29udGFpbmVyVGVtcG9y
YXJ5RGlyZWN0b3J5KCkgY29uc3QKIHsKICAgICBTdHJpbmcgcGF0aCA9IE5TVGVtcG9yYXJ5RGly
ZWN0b3J5KCk7CiAgICAgcmV0dXJuIHN0cmluZ0J5UmVzb2x2aW5nU3ltbGlua3NJblBhdGgocGF0
aCk7CiB9CisjZW5kaWYKIAogU3RyaW5nIFdlYkNvbnRleHQ6OnBsYXRmb3JtRGVmYXVsdFdlYlNR
TERhdGFiYXNlRGlyZWN0b3J5KCkKIHsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
Y29jb2EvV2ViUHJvY2Vzc0NvY29hLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvY29jb2EvV2ViUHJvY2Vzc0NvY29hLm1tCShyZXZpc2lvbiAxNzI0ODcpCisrKyBT
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL2NvY29hL1dlYlByb2Nlc3NDb2NvYS5tbQkod29ya2lu
ZyBjb3B5KQpAQCAtMTY3LDEwICsxNjcsMTAgQEAgdm9pZCBXZWJQcm9jZXNzOjpwbGF0Zm9ybUlu
aXRpYWxpemVXZWJQcgogICAgIFNhbmRib3hFeHRlbnNpb246OmNvbnN1bWVQZXJtYW5lbnRseShw
YXJhbWV0ZXJzLndlYlNRTERhdGFiYXNlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKTsKICAgICBT
YW5kYm94RXh0ZW5zaW9uOjpjb25zdW1lUGVybWFuZW50bHkocGFyYW1ldGVycy5hcHBsaWNhdGlv
bkNhY2hlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKTsKICAgICBTYW5kYm94RXh0ZW5zaW9uOjpj
b25zdW1lUGVybWFuZW50bHkocGFyYW1ldGVycy5kaXNrQ2FjaGVEaXJlY3RvcnlFeHRlbnNpb25I
YW5kbGUpOworI2lmIFBMQVRGT1JNKElPUykKICAgICBTYW5kYm94RXh0ZW5zaW9uOjpjb25zdW1l
UGVybWFuZW50bHkocGFyYW1ldGVycy5jb29raWVTdG9yYWdlRGlyZWN0b3J5RXh0ZW5zaW9uSGFu
ZGxlKTsKICAgICBTYW5kYm94RXh0ZW5zaW9uOjpjb25zdW1lUGVybWFuZW50bHkocGFyYW1ldGVy
cy5vcGVuR0xDYWNoZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSk7CiAgICAgU2FuZGJveEV4dGVu
c2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KHBhcmFtZXRlcnMuY29udGFpbmVyVGVtcG9yYXJ5RGly
ZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKTsKLSNpZiBQTEFURk9STShJT1MpCiAgICAgU2FuZGJveEV4
dGVuc2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KHBhcmFtZXRlcnMuaHN0c0RhdGFiYXNlUGF0aEV4
dGVuc2lvbkhhbmRsZSk7CiAjZW5kaWYKICNlbmRpZgo=
</data>
<flag name="review"
          id="261091"
          type_id="1"
          status="+"
          setter="oliver"
    />
          </attachment>
      

    </bug>

</bugzilla>